diff --git a/dist/cody-agent.js b/dist/cody-agent.js index 9d3635ae..93e1c082 100644 --- a/dist/cody-agent.js +++ b/dist/cody-agent.js @@ -1,1491 +1,233885 @@ -"use strict";var _xe=Object.create;var uAA=Object.defineProperty;var wxe=Object.getOwnPropertyDescriptor;var vxe=Object.getOwnPropertyNames;var yxe=Object.getPrototypeOf,Cxe=Object.prototype.hasOwnProperty;var GA=(A,r)=>()=>(r||A((r={exports:{}}).exports,r),r.exports),Ixe=(A,r)=>{for(var t in r)uAA(A,t,{get:r[t],enumerable:!0})},lAA=(A,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of vxe(r))!Cxe.call(A,o)&&o!==t&&uAA(A,o,{get:()=>r[o],enumerable:!(i=wxe(r,o))||i.enumerable});return A},ZD=(A,r,t)=>(lAA(A,r,"default"),t&&lAA(t,r,"default")),Yn=(A,r,t)=>(t=A!=null?_xe(yxe(A)):{},lAA(r||!A||!A.__esModule?uAA(t,"default",{value:A,enumerable:!0}):t,A));var RO=GA(dAA=>{var hH=class extends Error{constructor(r,t,i){super(i),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=t,this.exitCode=r,this.nestedError=void 0}},gAA=class extends hH{constructor(r){super(1,"commander.invalidArgument",r),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}};dAA.CommanderError=hH;dAA.InvalidArgumentError=gAA});var QH=GA(EAA=>{var{InvalidArgumentError:bxe}=RO(),pAA=class{constructor(r,t){switch(this.description=t||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,r[0]){case"<":this.required=!0,this._name=r.slice(1,-1);break;case"[":this.required=!1,this._name=r.slice(1,-1);break;default:this.required=!0,this._name=r;break}this._name.length>3&&this._name.slice(-3)==="..."&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_concatValue(r,t){return t===this.defaultValue||!Array.isArray(t)?[r]:t.concat(r)}default(r,t){return this.defaultValue=r,this.defaultValueDescription=t,this}argParser(r){return this.parseArg=r,this}choices(r){return this.argChoices=r.slice(),this.parseArg=(t,i)=>{if(!this.argChoices.includes(t))throw new bxe(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(t,i):t},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}};function Oxe(A){let r=A.name()+(A.variadic===!0?"...":"");return A.required?"<"+r+">":"["+r+"]"}EAA.Argument=pAA;EAA.humanReadableArgName=Oxe});var BAA=GA(h4A=>{var{humanReadableArgName:Mxe}=QH(),fAA=class{constructor(){this.helpWidth=void 0,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}visibleCommands(r){let t=r.commands.filter(i=>!i._hidden);if(r._hasImplicitHelpCommand()){let[,i,o]=r._helpCommandnameAndArgs.match(/([^ ]+) *(.*)/),s=r.createCommand(i).helpOption(!1);s.description(r._helpCommandDescription),o&&s.arguments(o),t.push(s)}return this.sortSubcommands&&t.sort((i,o)=>i.name().localeCompare(o.name())),t}compareOptions(r,t){let i=o=>o.short?o.short.replace(/^-/,""):o.long.replace(/^--/,"");return i(r).localeCompare(i(t))}visibleOptions(r){let t=r.options.filter(s=>!s.hidden),i=r._hasHelpOption&&r._helpShortFlag&&!r._findOption(r._helpShortFlag),o=r._hasHelpOption&&!r._findOption(r._helpLongFlag);if(i||o){let s;i?o?s=r.createOption(r._helpFlags,r._helpDescription):s=r.createOption(r._helpShortFlag,r._helpDescription):s=r.createOption(r._helpLongFlag,r._helpDescription),t.push(s)}return this.sortOptions&&t.sort(this.compareOptions),t}visibleGlobalOptions(r){if(!this.showGlobalOptions)return[];let t=[];for(let i=r.parent;i;i=i.parent){let o=i.options.filter(s=>!s.hidden);t.push(...o)}return this.sortOptions&&t.sort(this.compareOptions),t}visibleArguments(r){return r._argsDescription&&r.registeredArguments.forEach(t=>{t.description=t.description||r._argsDescription[t.name()]||""}),r.registeredArguments.find(t=>t.description)?r.registeredArguments:[]}subcommandTerm(r){let t=r.registeredArguments.map(i=>Mxe(i)).join(" ");return r._name+(r._aliases[0]?"|"+r._aliases[0]:"")+(r.options.length?" [options]":"")+(t?" "+t:"")}optionTerm(r){return r.flags}argumentTerm(r){return r.name()}longestSubcommandTermLength(r,t){return t.visibleCommands(r).reduce((i,o)=>Math.max(i,t.subcommandTerm(o).length),0)}longestOptionTermLength(r,t){return t.visibleOptions(r).reduce((i,o)=>Math.max(i,t.optionTerm(o).length),0)}longestGlobalOptionTermLength(r,t){return t.visibleGlobalOptions(r).reduce((i,o)=>Math.max(i,t.optionTerm(o).length),0)}longestArgumentTermLength(r,t){return t.visibleArguments(r).reduce((i,o)=>Math.max(i,t.argumentTerm(o).length),0)}commandUsage(r){let t=r._name;r._aliases[0]&&(t=t+"|"+r._aliases[0]);let i="";for(let o=r.parent;o;o=o.parent)i=o.name()+" "+i;return i+t+" "+r.usage()}commandDescription(r){return r.description()}subcommandDescription(r){return r.summary()||r.description()}optionDescription(r){let t=[];return r.argChoices&&t.push(`choices: ${r.argChoices.map(i=>JSON.stringify(i)).join(", ")}`),r.defaultValue!==void 0&&(r.required||r.optional||r.isBoolean()&&typeof r.defaultValue=="boolean")&&t.push(`default: ${r.defaultValueDescription||JSON.stringify(r.defaultValue)}`),r.presetArg!==void 0&&r.optional&&t.push(`preset: ${JSON.stringify(r.presetArg)}`),r.envVar!==void 0&&t.push(`env: ${r.envVar}`),t.length>0?`${r.description} (${t.join(", ")})`:r.description}argumentDescription(r){let t=[];if(r.argChoices&&t.push(`choices: ${r.argChoices.map(i=>JSON.stringify(i)).join(", ")}`),r.defaultValue!==void 0&&t.push(`default: ${r.defaultValueDescription||JSON.stringify(r.defaultValue)}`),t.length>0){let i=`(${t.join(", ")})`;return r.description?`${r.description} ${i}`:i}return r.description}formatHelp(r,t){let i=t.padWidth(r,t),o=t.helpWidth||80,s=2,g=2;function E(k,P){if(P){let H=`${k.padEnd(i+g)}${P}`;return t.wrap(H,o-s,i+g)}return k}function p(k){return k.join(` -`).replace(/^/gm," ".repeat(s))}let B=[`Usage: ${t.commandUsage(r)}`,""],m=t.commandDescription(r);m.length>0&&(B=B.concat([t.wrap(m,o,0),""]));let _=t.visibleArguments(r).map(k=>E(t.argumentTerm(k),t.argumentDescription(k)));_.length>0&&(B=B.concat(["Arguments:",p(_),""]));let x=t.visibleOptions(r).map(k=>E(t.optionTerm(k),t.optionDescription(k)));if(x.length>0&&(B=B.concat(["Options:",p(x),""])),this.showGlobalOptions){let k=t.visibleGlobalOptions(r).map(P=>E(t.optionTerm(P),t.optionDescription(P)));k.length>0&&(B=B.concat(["Global Options:",p(k),""]))}let O=t.visibleCommands(r).map(k=>E(t.subcommandTerm(k),t.subcommandDescription(k)));return O.length>0&&(B=B.concat(["Commands:",p(O),""])),B.join(` -`)}padWidth(r,t){return Math.max(t.longestOptionTermLength(r,t),t.longestGlobalOptionTermLength(r,t),t.longestSubcommandTermLength(r,t),t.longestArgumentTermLength(r,t))}wrap(r,t,i,o=40){let s=" \\f\\t\\v\xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF",g=new RegExp(`[\\n][${s}]+`);if(r.match(g))return r;let E=t-i;if(EP===` -`?"":(H>0?m:"")+P.trimEnd()).join(` -`)}};h4A.Help=fAA});var mAA=GA(mH=>{var{InvalidArgumentError:kxe}=RO(),hAA=class{constructor(r,t){this.flags=r,this.description=t||"",this.required=r.includes("<"),this.optional=r.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(r),this.mandatory=!1;let i=Q4A(r);this.short=i.shortFlag,this.long=i.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}default(r,t){return this.defaultValue=r,this.defaultValueDescription=t,this}preset(r){return this.presetArg=r,this}conflicts(r){return this.conflictsWith=this.conflictsWith.concat(r),this}implies(r){let t=r;return typeof r=="string"&&(t={[r]:!0}),this.implied=Object.assign(this.implied||{},t),this}env(r){return this.envVar=r,this}argParser(r){return this.parseArg=r,this}makeOptionMandatory(r=!0){return this.mandatory=!!r,this}hideHelp(r=!0){return this.hidden=!!r,this}_concatValue(r,t){return t===this.defaultValue||!Array.isArray(t)?[r]:t.concat(r)}choices(r){return this.argChoices=r.slice(),this.parseArg=(t,i)=>{if(!this.argChoices.includes(t))throw new kxe(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(t,i):t},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return xxe(this.name().replace(/^no-/,""))}is(r){return this.short===r||this.long===r}isBoolean(){return!this.required&&!this.optional&&!this.negate}},QAA=class{constructor(r){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,r.forEach(t=>{t.negate?this.negativeOptions.set(t.attributeName(),t):this.positiveOptions.set(t.attributeName(),t)}),this.negativeOptions.forEach((t,i)=>{this.positiveOptions.has(i)&&this.dualOptions.add(i)})}valueFromOption(r,t){let i=t.attributeName();if(!this.dualOptions.has(i))return!0;let o=this.negativeOptions.get(i).presetArg,s=o!==void 0?o:!1;return t.negate===(s===r)}};function xxe(A){return A.split("-").reduce((r,t)=>r+t[0].toUpperCase()+t.slice(1))}function Q4A(A){let r,t,i=A.split(/[ |,]+/);return i.length>1&&!/^[[<]/.test(i[1])&&(r=i.shift()),t=i.shift(),!r&&/^-[^-]$/.test(t)&&(r=t,t=void 0),{shortFlag:r,longFlag:t}}mH.Option=hAA;mH.splitOptionFlags=Q4A;mH.DualOptions=QAA});var D4A=GA(m4A=>{function Hxe(A,r){if(Math.abs(A.length-r.length)>3)return Math.max(A.length,r.length);let t=[];for(let i=0;i<=A.length;i++)t[i]=[i];for(let i=0;i<=r.length;i++)t[0][i]=i;for(let i=1;i<=r.length;i++)for(let o=1;o<=A.length;o++){let s=1;A[o-1]===r[i-1]?s=0:s=1,t[o][i]=Math.min(t[o-1][i]+1,t[o][i-1]+1,t[o-1][i-1]+s),o>1&&i>1&&A[o-1]===r[i-2]&&A[o-2]===r[i-1]&&(t[o][i]=Math.min(t[o][i],t[o-2][i-2]+1))}return t[A.length][r.length]}function Sxe(A,r){if(!r||r.length===0)return"";r=Array.from(new Set(r));let t=A.startsWith("--");t&&(A=A.slice(2),r=r.map(g=>g.slice(2)));let i=[],o=3,s=.4;return r.forEach(g=>{if(g.length<=1)return;let E=Hxe(A,g),p=Math.max(A.length,g.length);(p-E)/p>s&&(Eg.localeCompare(E)),t&&(i=i.map(g=>`--${g}`)),i.length>1?` -(Did you mean one of ${i.join(", ")}?)`:i.length===1?` -(Did you mean ${i[0]}?)`:""}m4A.suggestSimilar=Sxe});var I4A=GA(C4A=>{var Fxe=require("events").EventEmitter,DAA=require("child_process"),s4=require("path"),_AA=require("fs"),ig=require("process"),{Argument:Rxe,humanReadableArgName:Txe}=QH(),{CommanderError:wAA}=RO(),{Help:Nxe}=BAA(),{Option:_4A,splitOptionFlags:Pxe,DualOptions:Gxe}=mAA(),{suggestSimilar:w4A}=D4A(),vAA=class A extends Fxe{constructor(r){super(),this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!0,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=r||"",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._outputConfiguration={writeOut:t=>ig.stdout.write(t),writeErr:t=>ig.stderr.write(t),getOutHelpWidth:()=>ig.stdout.isTTY?ig.stdout.columns:void 0,getErrHelpWidth:()=>ig.stderr.isTTY?ig.stderr.columns:void 0,outputError:(t,i)=>i(t)},this._hidden=!1,this._hasHelpOption=!0,this._helpFlags="-h, --help",this._helpDescription="display help for command",this._helpShortFlag="-h",this._helpLongFlag="--help",this._addImplicitHelpCommand=void 0,this._helpCommandName="help",this._helpCommandnameAndArgs="help [command]",this._helpCommandDescription="display help for command",this._helpConfiguration={}}copyInheritedSettings(r){return this._outputConfiguration=r._outputConfiguration,this._hasHelpOption=r._hasHelpOption,this._helpFlags=r._helpFlags,this._helpDescription=r._helpDescription,this._helpShortFlag=r._helpShortFlag,this._helpLongFlag=r._helpLongFlag,this._helpCommandName=r._helpCommandName,this._helpCommandnameAndArgs=r._helpCommandnameAndArgs,this._helpCommandDescription=r._helpCommandDescription,this._helpConfiguration=r._helpConfiguration,this._exitCallback=r._exitCallback,this._storeOptionsAsProperties=r._storeOptionsAsProperties,this._combineFlagAndOptionalValue=r._combineFlagAndOptionalValue,this._allowExcessArguments=r._allowExcessArguments,this._enablePositionalOptions=r._enablePositionalOptions,this._showHelpAfterError=r._showHelpAfterError,this._showSuggestionAfterError=r._showSuggestionAfterError,this}_getCommandAndAncestors(){let r=[];for(let t=this;t;t=t.parent)r.push(t);return r}command(r,t,i){let o=t,s=i;typeof o=="object"&&o!==null&&(s=o,o=null),s=s||{};let[,g,E]=r.match(/([^ ]+) *(.*)/),p=this.createCommand(g);return o&&(p.description(o),p._executableHandler=!0),s.isDefault&&(this._defaultCommandName=p._name),p._hidden=!!(s.noHelp||s.hidden),p._executableFile=s.executableFile||null,E&&p.arguments(E),this.commands.push(p),p.parent=this,p.copyInheritedSettings(this),o?this:p}createCommand(r){return new A(r)}createHelp(){return Object.assign(new Nxe,this.configureHelp())}configureHelp(r){return r===void 0?this._helpConfiguration:(this._helpConfiguration=r,this)}configureOutput(r){return r===void 0?this._outputConfiguration:(Object.assign(this._outputConfiguration,r),this)}showHelpAfterError(r=!0){return typeof r!="string"&&(r=!!r),this._showHelpAfterError=r,this}showSuggestionAfterError(r=!0){return this._showSuggestionAfterError=!!r,this}addCommand(r,t){if(!r._name)throw new Error(`Command passed to .addCommand() must have a name -- specify the name in Command constructor or using .name()`);return t=t||{},t.isDefault&&(this._defaultCommandName=r._name),(t.noHelp||t.hidden)&&(r._hidden=!0),this.commands.push(r),r.parent=this,this}createArgument(r,t){return new Rxe(r,t)}argument(r,t,i,o){let s=this.createArgument(r,t);return typeof i=="function"?s.default(o).argParser(i):s.default(i),this.addArgument(s),this}arguments(r){return r.trim().split(/ +/).forEach(t=>{this.argument(t)}),this}addArgument(r){let t=this.registeredArguments.slice(-1)[0];if(t&&t.variadic)throw new Error(`only the last argument can be variadic '${t.name()}'`);if(r.required&&r.defaultValue!==void 0&&r.parseArg===void 0)throw new Error(`a default value for a required argument is never used: '${r.name()}'`);return this.registeredArguments.push(r),this}addHelpCommand(r,t){return r===!1?this._addImplicitHelpCommand=!1:(this._addImplicitHelpCommand=!0,typeof r=="string"&&(this._helpCommandName=r.split(" ")[0],this._helpCommandnameAndArgs=r),this._helpCommandDescription=t||this._helpCommandDescription),this}_hasImplicitHelpCommand(){return this._addImplicitHelpCommand===void 0?this.commands.length&&!this._actionHandler&&!this._findCommand("help"):this._addImplicitHelpCommand}hook(r,t){let i=["preSubcommand","preAction","postAction"];if(!i.includes(r))throw new Error(`Unexpected value for event passed to hook : '${r}'. -Expecting one of '${i.join("', '")}'`);return this._lifeCycleHooks[r]?this._lifeCycleHooks[r].push(t):this._lifeCycleHooks[r]=[t],this}exitOverride(r){return r?this._exitCallback=r:this._exitCallback=t=>{if(t.code!=="commander.executeSubCommandAsync")throw t},this}_exit(r,t,i){this._exitCallback&&this._exitCallback(new wAA(r,t,i)),ig.exit(r)}action(r){let t=i=>{let o=this.registeredArguments.length,s=i.slice(0,o);return this._storeOptionsAsProperties?s[o]=this:s[o]=this.opts(),s.push(this),r.apply(this,s)};return this._actionHandler=t,this}createOption(r,t){return new _4A(r,t)}_callParseArg(r,t,i,o){try{return r.parseArg(t,i)}catch(s){if(s.code==="commander.invalidArgument"){let g=`${o} ${s.message}`;this.error(g,{exitCode:s.exitCode,code:s.code})}throw s}}addOption(r){let t=r.name(),i=r.attributeName();if(r.negate){let s=r.long.replace(/^--no-/,"--");this._findOption(s)||this.setOptionValueWithSource(i,r.defaultValue===void 0?!0:r.defaultValue,"default")}else r.defaultValue!==void 0&&this.setOptionValueWithSource(i,r.defaultValue,"default");this.options.push(r);let o=(s,g,E)=>{s==null&&r.presetArg!==void 0&&(s=r.presetArg);let p=this.getOptionValue(i);s!==null&&r.parseArg?s=this._callParseArg(r,s,p,g):s!==null&&r.variadic&&(s=r._concatValue(s,p)),s==null&&(r.negate?s=!1:r.isBoolean()||r.optional?s=!0:s=""),this.setOptionValueWithSource(i,s,E)};return this.on("option:"+t,s=>{let g=`error: option '${r.flags}' argument '${s}' is invalid.`;o(s,g,"cli")}),r.envVar&&this.on("optionEnv:"+t,s=>{let g=`error: option '${r.flags}' value '${s}' from env '${r.envVar}' is invalid.`;o(s,g,"env")}),this}_optionEx(r,t,i,o,s){if(typeof t=="object"&&t instanceof _4A)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");let g=this.createOption(t,i);if(g.makeOptionMandatory(!!r.mandatory),typeof o=="function")g.default(s).argParser(o);else if(o instanceof RegExp){let E=o;o=(p,B)=>{let m=E.exec(p);return m?m[0]:B},g.default(s).argParser(o)}else g.default(o);return this.addOption(g)}option(r,t,i,o){return this._optionEx({},r,t,i,o)}requiredOption(r,t,i,o){return this._optionEx({mandatory:!0},r,t,i,o)}combineFlagAndOptionalValue(r=!0){return this._combineFlagAndOptionalValue=!!r,this}allowUnknownOption(r=!0){return this._allowUnknownOption=!!r,this}allowExcessArguments(r=!0){return this._allowExcessArguments=!!r,this}enablePositionalOptions(r=!0){return this._enablePositionalOptions=!!r,this}passThroughOptions(r=!0){if(this._passThroughOptions=!!r,this.parent&&r&&!this.parent._enablePositionalOptions)throw new Error("passThroughOptions can not be used without turning on enablePositionalOptions for parent command(s)");return this}storeOptionsAsProperties(r=!0){if(this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");return this._storeOptionsAsProperties=!!r,this}getOptionValue(r){return this._storeOptionsAsProperties?this[r]:this._optionValues[r]}setOptionValue(r,t){return this.setOptionValueWithSource(r,t,void 0)}setOptionValueWithSource(r,t,i){return this._storeOptionsAsProperties?this[r]=t:this._optionValues[r]=t,this._optionValueSources[r]=i,this}getOptionValueSource(r){return this._optionValueSources[r]}getOptionValueSourceWithGlobals(r){let t;return this._getCommandAndAncestors().forEach(i=>{i.getOptionValueSource(r)!==void 0&&(t=i.getOptionValueSource(r))}),t}_prepareUserArgs(r,t){if(r!==void 0&&!Array.isArray(r))throw new Error("first parameter to parse must be array or undefined");t=t||{},r===void 0&&(r=ig.argv,ig.versions&&ig.versions.electron&&(t.from="electron")),this.rawArgs=r.slice();let i;switch(t.from){case void 0:case"node":this._scriptPath=r[1],i=r.slice(2);break;case"electron":ig.defaultApp?(this._scriptPath=r[1],i=r.slice(2)):i=r.slice(1);break;case"user":i=r.slice(0);break;default:throw new Error(`unexpected parse option { from: '${t.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",i}parse(r,t){let i=this._prepareUserArgs(r,t);return this._parseCommand([],i),this}async parseAsync(r,t){let i=this._prepareUserArgs(r,t);return await this._parseCommand([],i),this}_executeSubCommand(r,t){t=t.slice();let i=!1,o=[".js",".ts",".tsx",".mjs",".cjs"];function s(m,_){let x=s4.resolve(m,_);if(_AA.existsSync(x))return x;if(o.includes(s4.extname(_)))return;let O=o.find(k=>_AA.existsSync(`${x}${k}`));if(O)return`${x}${O}`}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let g=r._executableFile||`${this._name}-${r._name}`,E=this._executableDir||"";if(this._scriptPath){let m;try{m=_AA.realpathSync(this._scriptPath)}catch{m=this._scriptPath}E=s4.resolve(s4.dirname(m),E)}if(E){let m=s(E,g);if(!m&&!r._executableFile&&this._scriptPath){let _=s4.basename(this._scriptPath,s4.extname(this._scriptPath));_!==this._name&&(m=s(E,`${_}-${r._name}`))}g=m||g}i=o.includes(s4.extname(g));let p;ig.platform!=="win32"?i?(t.unshift(g),t=y4A(ig.execArgv).concat(t),p=DAA.spawn(ig.argv[0],t,{stdio:"inherit"})):p=DAA.spawn(g,t,{stdio:"inherit"}):(t.unshift(g),t=y4A(ig.execArgv).concat(t),p=DAA.spawn(ig.execPath,t,{stdio:"inherit"})),p.killed||["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach(_=>{ig.on(_,()=>{p.killed===!1&&p.exitCode===null&&p.kill(_)})});let B=this._exitCallback;B?p.on("close",()=>{B(new wAA(ig.exitCode||0,"commander.executeSubCommandAsync","(close)"))}):p.on("close",ig.exit.bind(ig)),p.on("error",m=>{if(m.code==="ENOENT"){let _=E?`searched for local subcommand relative to directory '${E}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",x=`'${g}' does not exist - - if '${r._name}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead - - if the default executable name is not suitable, use the executableFile option to supply a custom name or path - - ${_}`;throw new Error(x)}else if(m.code==="EACCES")throw new Error(`'${g}' not executable`);if(!B)ig.exit(1);else{let _=new wAA(1,"commander.executeSubCommandAsync","(error)");_.nestedError=m,B(_)}}),this.runningCommand=p}_dispatchSubcommand(r,t,i){let o=this._findCommand(r);o||this.help({error:!0});let s;return s=this._chainOrCallSubCommandHook(s,o,"preSubcommand"),s=this._chainOrCall(s,()=>{if(o._executableHandler)this._executeSubCommand(o,t.concat(i));else return o._parseCommand(t,i)}),s}_dispatchHelpCommand(r){r||this.help();let t=this._findCommand(r);return t&&!t._executableHandler&&t.help(),this._dispatchSubcommand(r,[],[this._helpLongFlag||this._helpShortFlag])}_checkNumberOfArguments(){this.registeredArguments.forEach((r,t)=>{r.required&&this.args[t]==null&&this.missingArgument(r.name())}),!(this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)&&this.args.length>this.registeredArguments.length&&this._excessArguments(this.args)}_processArguments(){let r=(i,o,s)=>{let g=o;if(o!==null&&i.parseArg){let E=`error: command-argument value '${o}' is invalid for argument '${i.name()}'.`;g=this._callParseArg(i,o,s,E)}return g};this._checkNumberOfArguments();let t=[];this.registeredArguments.forEach((i,o)=>{let s=i.defaultValue;i.variadic?or(i,E,g),i.defaultValue))):s===void 0&&(s=[]):ot()):t()}_chainOrCallHooks(r,t){let i=r,o=[];return this._getCommandAndAncestors().reverse().filter(s=>s._lifeCycleHooks[t]!==void 0).forEach(s=>{s._lifeCycleHooks[t].forEach(g=>{o.push({hookedCommand:s,callback:g})})}),t==="postAction"&&o.reverse(),o.forEach(s=>{i=this._chainOrCall(i,()=>s.callback(s.hookedCommand,this))}),i}_chainOrCallSubCommandHook(r,t,i){let o=r;return this._lifeCycleHooks[i]!==void 0&&this._lifeCycleHooks[i].forEach(s=>{o=this._chainOrCall(o,()=>s(this,t))}),o}_parseCommand(r,t){let i=this.parseOptions(t);if(this._parseOptionsEnv(),this._parseOptionsImplied(),r=r.concat(i.operands),t=i.unknown,this.args=r.concat(t),r&&this._findCommand(r[0]))return this._dispatchSubcommand(r[0],r.slice(1),t);if(this._hasImplicitHelpCommand()&&r[0]===this._helpCommandName)return this._dispatchHelpCommand(r[1]);if(this._defaultCommandName)return v4A(this,t),this._dispatchSubcommand(this._defaultCommandName,r,t);this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName&&this.help({error:!0}),v4A(this,i.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let o=()=>{i.unknown.length>0&&this.unknownOption(i.unknown[0])},s=`command:${this.name()}`;if(this._actionHandler){o(),this._processArguments();let g;return g=this._chainOrCallHooks(g,"preAction"),g=this._chainOrCall(g,()=>this._actionHandler(this.processedArgs)),this.parent&&(g=this._chainOrCall(g,()=>{this.parent.emit(s,r,t)})),g=this._chainOrCallHooks(g,"postAction"),g}if(this.parent&&this.parent.listenerCount(s))o(),this._processArguments(),this.parent.emit(s,r,t);else if(r.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",r,t);this.listenerCount("command:*")?this.emit("command:*",r,t):this.commands.length?this.unknownCommand():(o(),this._processArguments())}else this.commands.length?(o(),this.help({error:!0})):(o(),this._processArguments())}_findCommand(r){if(r)return this.commands.find(t=>t._name===r||t._aliases.includes(r))}_findOption(r){return this.options.find(t=>t.is(r))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(r=>{r.options.forEach(t=>{t.mandatory&&r.getOptionValue(t.attributeName())===void 0&&r.missingMandatoryOptionValue(t)})})}_checkForConflictingLocalOptions(){let r=this.options.filter(i=>{let o=i.attributeName();return this.getOptionValue(o)===void 0?!1:this.getOptionValueSource(o)!=="default"});r.filter(i=>i.conflictsWith.length>0).forEach(i=>{let o=r.find(s=>i.conflictsWith.includes(s.attributeName()));o&&this._conflictingOption(i,o)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(r=>{r._checkForConflictingLocalOptions()})}parseOptions(r){let t=[],i=[],o=t,s=r.slice();function g(p){return p.length>1&&p[0]==="-"}let E=null;for(;s.length;){let p=s.shift();if(p==="--"){o===i&&o.push(p),o.push(...s);break}if(E&&!g(p)){this.emit(`option:${E.name()}`,p);continue}if(E=null,g(p)){let B=this._findOption(p);if(B){if(B.required){let m=s.shift();m===void 0&&this.optionMissingArgument(B),this.emit(`option:${B.name()}`,m)}else if(B.optional){let m=null;s.length>0&&!g(s[0])&&(m=s.shift()),this.emit(`option:${B.name()}`,m)}else this.emit(`option:${B.name()}`);E=B.variadic?B:null;continue}}if(p.length>2&&p[0]==="-"&&p[1]!=="-"){let B=this._findOption(`-${p[1]}`);if(B){B.required||B.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${B.name()}`,p.slice(2)):(this.emit(`option:${B.name()}`),s.unshift(`-${p.slice(2)}`));continue}}if(/^--[^=]+=/.test(p)){let B=p.indexOf("="),m=this._findOption(p.slice(0,B));if(m&&(m.required||m.optional)){this.emit(`option:${m.name()}`,p.slice(B+1));continue}}if(g(p)&&(o=i),(this._enablePositionalOptions||this._passThroughOptions)&&t.length===0&&i.length===0){if(this._findCommand(p)){t.push(p),s.length>0&&i.push(...s);break}else if(p===this._helpCommandName&&this._hasImplicitHelpCommand()){t.push(p),s.length>0&&t.push(...s);break}else if(this._defaultCommandName){i.push(p),s.length>0&&i.push(...s);break}}if(this._passThroughOptions){o.push(p),s.length>0&&o.push(...s);break}o.push(p)}return{operands:t,unknown:i}}opts(){if(this._storeOptionsAsProperties){let r={},t=this.options.length;for(let i=0;iObject.assign(r,t.opts()),{})}error(r,t){this._outputConfiguration.outputError(`${r} -`,this._outputConfiguration.writeErr),typeof this._showHelpAfterError=="string"?this._outputConfiguration.writeErr(`${this._showHelpAfterError} -`):this._showHelpAfterError&&(this._outputConfiguration.writeErr(` -`),this.outputHelp({error:!0}));let i=t||{},o=i.exitCode||1,s=i.code||"commander.error";this._exit(o,s,r)}_parseOptionsEnv(){this.options.forEach(r=>{if(r.envVar&&r.envVar in ig.env){let t=r.attributeName();(this.getOptionValue(t)===void 0||["default","config","env"].includes(this.getOptionValueSource(t)))&&(r.required||r.optional?this.emit(`optionEnv:${r.name()}`,ig.env[r.envVar]):this.emit(`optionEnv:${r.name()}`))}})}_parseOptionsImplied(){let r=new Gxe(this.options),t=i=>this.getOptionValue(i)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(i));this.options.filter(i=>i.implied!==void 0&&t(i.attributeName())&&r.valueFromOption(this.getOptionValue(i.attributeName()),i)).forEach(i=>{Object.keys(i.implied).filter(o=>!t(o)).forEach(o=>{this.setOptionValueWithSource(o,i.implied[o],"implied")})})}missingArgument(r){let t=`error: missing required argument '${r}'`;this.error(t,{code:"commander.missingArgument"})}optionMissingArgument(r){let t=`error: option '${r.flags}' argument missing`;this.error(t,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(r){let t=`error: required option '${r.flags}' not specified`;this.error(t,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(r,t){let i=g=>{let E=g.attributeName(),p=this.getOptionValue(E),B=this.options.find(_=>_.negate&&E===_.attributeName()),m=this.options.find(_=>!_.negate&&E===_.attributeName());return B&&(B.presetArg===void 0&&p===!1||B.presetArg!==void 0&&p===B.presetArg)?B:m||g},o=g=>{let E=i(g),p=E.attributeName();return this.getOptionValueSource(p)==="env"?`environment variable '${E.envVar}'`:`option '${E.flags}'`},s=`error: ${o(r)} cannot be used with ${o(t)}`;this.error(s,{code:"commander.conflictingOption"})}unknownOption(r){if(this._allowUnknownOption)return;let t="";if(r.startsWith("--")&&this._showSuggestionAfterError){let o=[],s=this;do{let g=s.createHelp().visibleOptions(s).filter(E=>E.long).map(E=>E.long);o=o.concat(g),s=s.parent}while(s&&!s._enablePositionalOptions);t=w4A(r,o)}let i=`error: unknown option '${r}'${t}`;this.error(i,{code:"commander.unknownOption"})}_excessArguments(r){if(this._allowExcessArguments)return;let t=this.registeredArguments.length,i=t===1?"":"s",s=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${t} argument${i} but got ${r.length}.`;this.error(s,{code:"commander.excessArguments"})}unknownCommand(){let r=this.args[0],t="";if(this._showSuggestionAfterError){let o=[];this.createHelp().visibleCommands(this).forEach(s=>{o.push(s.name()),s.alias()&&o.push(s.alias())}),t=w4A(r,o)}let i=`error: unknown command '${r}'${t}`;this.error(i,{code:"commander.unknownCommand"})}version(r,t,i){if(r===void 0)return this._version;this._version=r,t=t||"-V, --version",i=i||"output the version number";let o=this.createOption(t,i);return this._versionOptionName=o.attributeName(),this.options.push(o),this.on("option:"+o.name(),()=>{this._outputConfiguration.writeOut(`${r} -`),this._exit(0,"commander.version",r)}),this}description(r,t){return r===void 0&&t===void 0?this._description:(this._description=r,t&&(this._argsDescription=t),this)}summary(r){return r===void 0?this._summary:(this._summary=r,this)}alias(r){if(r===void 0)return this._aliases[0];let t=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(t=this.commands[this.commands.length-1]),r===t._name)throw new Error("Command alias can't be the same as its name");return t._aliases.push(r),this}aliases(r){return r===void 0?this._aliases:(r.forEach(t=>this.alias(t)),this)}usage(r){if(r===void 0){if(this._usage)return this._usage;let t=this.registeredArguments.map(i=>Txe(i));return[].concat(this.options.length||this._hasHelpOption?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?t:[]).join(" ")}return this._usage=r,this}name(r){return r===void 0?this._name:(this._name=r,this)}nameFromFilename(r){return this._name=s4.basename(r,s4.extname(r)),this}executableDir(r){return r===void 0?this._executableDir:(this._executableDir=r,this)}helpInformation(r){let t=this.createHelp();return t.helpWidth===void 0&&(t.helpWidth=r&&r.error?this._outputConfiguration.getErrHelpWidth():this._outputConfiguration.getOutHelpWidth()),t.formatHelp(this,t)}_getHelpContext(r){r=r||{};let t={error:!!r.error},i;return t.error?i=o=>this._outputConfiguration.writeErr(o):i=o=>this._outputConfiguration.writeOut(o),t.write=r.write||i,t.command=this,t}outputHelp(r){let t;typeof r=="function"&&(t=r,r=void 0);let i=this._getHelpContext(r);this._getCommandAndAncestors().reverse().forEach(s=>s.emit("beforeAllHelp",i)),this.emit("beforeHelp",i);let o=this.helpInformation(i);if(t&&(o=t(o),typeof o!="string"&&!Buffer.isBuffer(o)))throw new Error("outputHelp callback must return a string or a Buffer");i.write(o),this._helpLongFlag&&this.emit(this._helpLongFlag),this.emit("afterHelp",i),this._getCommandAndAncestors().forEach(s=>s.emit("afterAllHelp",i))}helpOption(r,t){if(typeof r=="boolean")return this._hasHelpOption=r,this;this._helpFlags=r||this._helpFlags,this._helpDescription=t||this._helpDescription;let i=Pxe(this._helpFlags);return this._helpShortFlag=i.shortFlag,this._helpLongFlag=i.longFlag,this}help(r){this.outputHelp(r);let t=ig.exitCode||0;t===0&&r&&typeof r!="function"&&r.error&&(t=1),this._exit(t,"commander.help","(outputHelp)")}addHelpText(r,t){let i=["beforeAll","before","after","afterAll"];if(!i.includes(r))throw new Error(`Unexpected value for position to addHelpText. -Expecting one of '${i.join("', '")}'`);let o=`${r}Help`;return this.on(o,s=>{let g;typeof t=="function"?g=t({error:s.error,command:s.command}):g=t,g&&s.write(`${g} -`)}),this}};function v4A(A,r){A._hasHelpOption&&r.find(i=>i===A._helpLongFlag||i===A._helpShortFlag)&&(A.outputHelp(),A._exit(0,"commander.helpDisplayed","(outputHelp)"))}function y4A(A){return A.map(r=>{if(!r.startsWith("--inspect"))return r;let t,i="127.0.0.1",o="9229",s;return(s=r.match(/^(--inspect(-brk)?)$/))!==null?t=s[1]:(s=r.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(t=s[1],/^\d+$/.test(s[3])?o=s[3]:i=s[3]):(s=r.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(t=s[1],i=s[3],o=s[4]),t&&o!=="0"?`${t}=${i}:${parseInt(o)+1}`:r})}C4A.Command=vAA});var k4A=GA((Q0,M4A)=>{var{Argument:Yxe}=QH(),{Command:b4A}=I4A(),{CommanderError:Uxe,InvalidArgumentError:O4A}=RO(),{Help:Lxe}=BAA(),{Option:jxe}=mAA();Q0=M4A.exports=new b4A;Q0.program=Q0;Q0.Command=b4A;Q0.Option=jxe;Q0.Argument=Yxe;Q0.Help=Lxe;Q0.CommanderError=Uxe;Q0.InvalidArgumentError=O4A;Q0.InvalidOptionArgumentError=O4A});var F4A=GA(fQ=>{"use strict";Object.defineProperty(fQ,"__esModule",{value:!0});fQ.applyPatch=fQ.calcPatch=fQ.lcs=fQ.diff=fQ.diff_core=void 0;function Jxe(A,r){let{b:t,eq:i,stack_base:o}=A,{i:s,N:g,j:E,M:p,Z:B,stack_top:m}=A;for(;;)switch(r){case 0:{A:for(;g>0&&p>0;){t.fill(0,0,2*B);let _=g-p,x=g+p,O=x&1,k=s+g-1,P=E+p-1,H=(x+O)/2,T;e:for(let v=0;v<=H;v++){let F=2*Math.max(0,v-p)-v,y=v-2*Math.max(0,v-g);for(let S=F;S<=y;S+=2){let U=t[S-1-B*Math.floor((S-1)/B)],V=t[S+1-B*Math.floor((S+1)/B)],wA=S===-v||S!==v&&U=1-v&&T=g)if(v>1||pA!==wA){o[m++]=s+pA,o[m++]=g-pA,o[m++]=E+oA,o[m++]=p-oA,g=wA,p=IA,B=2*(Math.min(g,p)+1);continue A}else break e}for(let S=F;S<=y;S+=2){let U=t[B+S-1-B*Math.floor((S-1)/B)],V=t[B+S+1-B*Math.floor((S+1)/B)],wA=S===-v||S!==v&&U=-v&&T<=v&&pA+t[T-B*Math.floor(T/B)]>=g)if(v>0||pA!==wA){o[m++]=s+g-wA,o[m++]=wA,o[m++]=E+p-IA,o[m++]=IA,g=g-pA,p=p-oA,B=2*(Math.min(g,p)+1);continue A}else break e}}if(g!==p){p>g?(s+=g,E+=g,p-=g,g=0):(s+=p,E+=p,g-=p,p=0);break}}if(g+p!==0)if(A.pxe===s||A.pye===E)A.pxe=s+g,A.pye=E+p;else{let _=A.pxs;if(A.oxs=A.pxs,A.oxe=A.pxe,A.oys=A.pys,A.oye=A.pye,A.pxs=s,A.pxe=s+g,A.pys=E,A.pye=E+p,_>=0)return A.i=s,A.N=g,A.j=E,A.M=p,A.Z=B,A.stack_top=m,1}}case 1:{if(m===0)return 2;p=o[--m],E=o[--m],g=o[--m],s=o[--m],B=2*(Math.min(g,p)+1),r=0}}}var yAA=class{constructor(r){this.state=r,this.c=0,this.result={value:null,done:!1}}[Symbol.iterator](){return this}next(){let{state:r,result:t}=this;if(this.c>1)return t.done=!0,t.value=void 0,t;let i=Jxe(r,this.c);return this.c=i,i===1?(t.value=[r.oxs,r.oxe,r.oys,r.oye],t):r.pxs>=0?(t.value=[r.pxs,r.pxe,r.pys,r.pye],t):(t.done=!0,t.value=void 0,t)}};function S4A(A,r,t,i,o){let s=(Math.min(r,i)+1)*2,g=r+i,E=new(g<256?Uint8Array:g<65536?Uint16Array:Uint32Array)(2*s);return new yAA({i:A,N:r,j:t,M:i,Z:s,b:E,eq:o,pxs:-1,pxe:-1,pys:-1,pye:-1,oxs:-1,oxe:-1,oys:-1,oye:-1,stack_top:0,stack_base:[]})}fQ.diff_core=S4A;function IAA(A,r,t){let[i,o,s]=[0,A.length,r.length];if(typeof t=="function"){for(;ii&&s>i;);}else{for(;ii&&s>i;);t=(g,E)=>A[g]===r[E]}return S4A(i,o+1-i,i,s+1-i,t)}fQ.diff=IAA;var CAA=class{constructor(r,t){this.diff=r,this.N=t,this.i=0,this.j=0}[Symbol.iterator](){return this}next(){let r=this.diff.next();if(r.done){let{i:p,j:B,N:m}=this;return p0&&(yield g),t=s;t{"use strict";P4A.exports=T4A;function T4A(A,r,t){A instanceof RegExp&&(A=R4A(A,t)),r instanceof RegExp&&(r=R4A(r,t));var i=N4A(A,r,t);return i&&{start:i[0],end:i[1],pre:t.slice(0,i[0]),body:t.slice(i[0]+A.length,i[1]),post:t.slice(i[1]+r.length)}}function R4A(A,r){var t=r.match(A);return t?t[0]:null}T4A.range=N4A;function N4A(A,r,t){var i,o,s,g,E,p=t.indexOf(A),B=t.indexOf(r,p+1),m=p;if(p>=0&&B>0){for(i=[],s=t.length;m>=0&&!E;)m==p?(i.push(m),p=t.indexOf(A,m+1)):i.length==1?E=[i.pop(),B]:(o=i.pop(),o=0?p:B;i.length&&(E=[s,g])}return E}});var q4A=GA((UFt,J4A)=>{var G4A=bAA();J4A.exports=Zxe;var Y4A="\0SLASH"+Math.random()+"\0",U4A="\0OPEN"+Math.random()+"\0",MAA="\0CLOSE"+Math.random()+"\0",L4A="\0COMMA"+Math.random()+"\0",j4A="\0PERIOD"+Math.random()+"\0";function OAA(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function Kxe(A){return A.split("\\\\").join(Y4A).split("\\{").join(U4A).split("\\}").join(MAA).split("\\,").join(L4A).split("\\.").join(j4A)}function Xxe(A){return A.split(Y4A).join("\\").split(U4A).join("{").split(MAA).join("}").split(L4A).join(",").split(j4A).join(".")}function W4A(A){if(!A)return[""];var r=[],t=G4A("{","}",A);if(!t)return A.split(",");var i=t.pre,o=t.body,s=t.post,g=i.split(",");g[g.length-1]+="{"+o+"}";var E=W4A(s);return s.length&&(g[g.length-1]+=E.shift(),g.push.apply(g,E)),r.push.apply(r,g),r}function Zxe(A){return A?(A.substr(0,2)==="{}"&&(A="\\{\\}"+A.substr(2)),TO(Kxe(A),!0).map(Xxe)):[]}function $xe(A){return"{"+A+"}"}function A9e(A){return/^-?0\d/.test(A)}function e9e(A,r){return A<=r}function r9e(A,r){return A>=r}function TO(A,r){var t=[],i=G4A("{","}",A);if(!i)return[A];var o=i.pre,s=i.post.length?TO(i.post,!1):[""];if(/\$$/.test(i.pre))for(var g=0;g=0;if(!m&&!_)return i.post.match(/,.*\}/)?(A=i.pre+"{"+i.body+MAA+i.post,TO(A)):[A];var x;if(m)x=i.body.split(/\.\./);else if(x=W4A(i.body),x.length===1&&(x=TO(x[0],!1).map($xe),x.length===1))return s.map(function(pA){return i.pre+x[0]+pA});var O;if(m){var k=OAA(x[0]),P=OAA(x[1]),H=Math.max(x[0].length,x[1].length),T=x.length==3?Math.abs(OAA(x[2])):1,v=e9e,F=P0){var wA=new Array(V+1).join("0");S<0?U="-"+wA+U.slice(1):U=wA+U}}O.push(U)}}else{O=[];for(var IA=0;IA{(function(A,r){if(typeof t6=="object"&&typeof aeA=="object")aeA.exports=r();else if(typeof define=="function"&&define.amd)define([],r);else{var t=r();for(var i in t)(typeof t6=="object"?t6:A)[i]=t[i]}})(t6,()=>(()=>{"use strict";var A={470:o=>{function s(p){if(typeof p!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(p))}function g(p,B){for(var m,_="",x=0,O=-1,k=0,P=0;P<=p.length;++P){if(P2){var H=_.lastIndexOf("/");if(H!==_.length-1){H===-1?(_="",x=0):x=(_=_.slice(0,H)).length-1-_.lastIndexOf("/"),O=P,k=0;continue}}else if(_.length===2||_.length===1){_="",x=0,O=P,k=0;continue}}B&&(_.length>0?_+="/..":_="..",x=2)}else _.length>0?_+="/"+p.slice(O+1,P):_=p.slice(O+1,P),x=P-O-1;O=P,k=0}else m===46&&k!==-1?++k:k=-1}return _}var E={resolve:function(){for(var p,B="",m=!1,_=arguments.length-1;_>=-1&&!m;_--){var x;_>=0?x=arguments[_]:(p===void 0&&(p=process.cwd()),x=p),s(x),x.length!==0&&(B=x+"/"+B,m=x.charCodeAt(0)===47)}return B=g(B,!m),m?B.length>0?"/"+B:"/":B.length>0?B:"."},normalize:function(p){if(s(p),p.length===0)return".";var B=p.charCodeAt(0)===47,m=p.charCodeAt(p.length-1)===47;return(p=g(p,!B)).length!==0||B||(p="."),p.length>0&&m&&(p+="/"),B?"/"+p:p},isAbsolute:function(p){return s(p),p.length>0&&p.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var p,B=0;B0&&(p===void 0?p=m:p+="/"+m)}return p===void 0?".":E.normalize(p)},relative:function(p,B){if(s(p),s(B),p===B||(p=E.resolve(p))===(B=E.resolve(B)))return"";for(var m=1;mP){if(B.charCodeAt(O+T)===47)return B.slice(O+T+1);if(T===0)return B.slice(O+T)}else x>P&&(p.charCodeAt(m+T)===47?H=T:T===0&&(H=0));break}var v=p.charCodeAt(m+T);if(v!==B.charCodeAt(O+T))break;v===47&&(H=T)}var F="";for(T=m+H+1;T<=_;++T)T!==_&&p.charCodeAt(T)!==47||(F.length===0?F+="..":F+="/..");return F.length>0?F+B.slice(O+H):(O+=H,B.charCodeAt(O)===47&&++O,B.slice(O))},_makeLong:function(p){return p},dirname:function(p){if(s(p),p.length===0)return".";for(var B=p.charCodeAt(0),m=B===47,_=-1,x=!0,O=p.length-1;O>=1;--O)if((B=p.charCodeAt(O))===47){if(!x){_=O;break}}else x=!1;return _===-1?m?"/":".":m&&_===1?"//":p.slice(0,_)},basename:function(p,B){if(B!==void 0&&typeof B!="string")throw new TypeError('"ext" argument must be a string');s(p);var m,_=0,x=-1,O=!0;if(B!==void 0&&B.length>0&&B.length<=p.length){if(B.length===p.length&&B===p)return"";var k=B.length-1,P=-1;for(m=p.length-1;m>=0;--m){var H=p.charCodeAt(m);if(H===47){if(!O){_=m+1;break}}else P===-1&&(O=!1,P=m+1),k>=0&&(H===B.charCodeAt(k)?--k==-1&&(x=m):(k=-1,x=P))}return _===x?x=P:x===-1&&(x=p.length),p.slice(_,x)}for(m=p.length-1;m>=0;--m)if(p.charCodeAt(m)===47){if(!O){_=m+1;break}}else x===-1&&(O=!1,x=m+1);return x===-1?"":p.slice(_,x)},extname:function(p){s(p);for(var B=-1,m=0,_=-1,x=!0,O=0,k=p.length-1;k>=0;--k){var P=p.charCodeAt(k);if(P!==47)_===-1&&(x=!1,_=k+1),P===46?B===-1?B=k:O!==1&&(O=1):B!==-1&&(O=-1);else if(!x){m=k+1;break}}return B===-1||_===-1||O===0||O===1&&B===_-1&&B===m+1?"":p.slice(B,_)},format:function(p){if(p===null||typeof p!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof p);return function(B,m){var _=m.dir||m.root,x=m.base||(m.name||"")+(m.ext||"");return _?_===m.root?_+x:_+"/"+x:x}(0,p)},parse:function(p){s(p);var B={root:"",dir:"",base:"",ext:"",name:""};if(p.length===0)return B;var m,_=p.charCodeAt(0),x=_===47;x?(B.root="/",m=1):m=0;for(var O=-1,k=0,P=-1,H=!0,T=p.length-1,v=0;T>=m;--T)if((_=p.charCodeAt(T))!==47)P===-1&&(H=!1,P=T+1),_===46?O===-1?O=T:v!==1&&(v=1):O!==-1&&(v=-1);else if(!H){k=T+1;break}return O===-1||P===-1||v===0||v===1&&O===P-1&&O===k+1?P!==-1&&(B.base=B.name=k===0&&x?p.slice(1,P):p.slice(k,P)):(k===0&&x?(B.name=p.slice(1,O),B.base=p.slice(1,P)):(B.name=p.slice(k,O),B.base=p.slice(k,P)),B.ext=p.slice(O,P)),k>0?B.dir=p.slice(0,k-1):x&&(B.dir="/"),B},sep:"/",delimiter:":",win32:null,posix:null};E.posix=E,o.exports=E},674:(o,s)=>{if(Object.defineProperty(s,"__esModule",{value:!0}),s.isWindows=void 0,typeof process=="object")s.isWindows=process.platform==="win32";else if(typeof navigator=="object"){var g=navigator.userAgent;s.isWindows=g.indexOf("Windows")>=0}},796:function(o,s,g){var E,p,B=this&&this.__extends||(E=function(eA,Y){return E=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(q,X){q.__proto__=X}||function(q,X){for(var Z in X)Object.prototype.hasOwnProperty.call(X,Z)&&(q[Z]=X[Z])},E(eA,Y)},function(eA,Y){if(typeof Y!="function"&&Y!==null)throw new TypeError("Class extends value "+String(Y)+" is not a constructor or null");function q(){this.constructor=eA}E(eA,Y),eA.prototype=Y===null?Object.create(Y):(q.prototype=Y.prototype,new q)});Object.defineProperty(s,"__esModule",{value:!0}),s.uriToFsPath=s.URI=void 0;var m=g(674),_=/^\w[\w\d+.-]*$/,x=/^\//,O=/^\/\//;function k(eA,Y){if(!eA.scheme&&Y)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'.concat(eA.authority,'", path: "').concat(eA.path,'", query: "').concat(eA.query,'", fragment: "').concat(eA.fragment,'"}'));if(eA.scheme&&!_.test(eA.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(eA.path){if(eA.authority){if(!x.test(eA.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(O.test(eA.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}var P="",H="/",T=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,v=function(){function eA(Y,q,X,Z,K,J){J===void 0&&(J=!1),typeof Y=="object"?(this.scheme=Y.scheme||P,this.authority=Y.authority||P,this.path=Y.path||P,this.query=Y.query||P,this.fragment=Y.fragment||P):(this.scheme=function(sA,uA){return sA||uA?sA:"file"}(Y,J),this.authority=q||P,this.path=function(sA,uA){switch(sA){case"https":case"http":case"file":uA?uA[0]!==H&&(uA=H+uA):uA=H}return uA}(this.scheme,X||P),this.query=Z||P,this.fragment=K||P,k(this,J))}return eA.isUri=function(Y){return Y instanceof eA||!!Y&&typeof Y.authority=="string"&&typeof Y.fragment=="string"&&typeof Y.path=="string"&&typeof Y.query=="string"&&typeof Y.scheme=="string"&&typeof Y.fsPath=="string"&&typeof Y.with=="function"&&typeof Y.toString=="function"},Object.defineProperty(eA.prototype,"fsPath",{get:function(){return wA(this,!1)},enumerable:!1,configurable:!0}),eA.prototype.with=function(Y){if(!Y)return this;var q=Y.scheme,X=Y.authority,Z=Y.path,K=Y.query,J=Y.fragment;return q===void 0?q=this.scheme:q===null&&(q=P),X===void 0?X=this.authority:X===null&&(X=P),Z===void 0?Z=this.path:Z===null&&(Z=P),K===void 0?K=this.query:K===null&&(K=P),J===void 0?J=this.fragment:J===null&&(J=P),q===this.scheme&&X===this.authority&&Z===this.path&&K===this.query&&J===this.fragment?this:new y(q,X,Z,K,J)},eA.parse=function(Y,q){q===void 0&&(q=!1);var X=T.exec(Y);return X?new y(X[2]||P,cA(X[4]||P),cA(X[5]||P),cA(X[7]||P),cA(X[9]||P),q):new y(P,P,P,P,P)},eA.file=function(Y){var q=P;if(m.isWindows&&(Y=Y.replace(/\\/g,H)),Y[0]===H&&Y[1]===H){var X=Y.indexOf(H,2);X===-1?(q=Y.substring(2),Y=H):(q=Y.substring(2,X),Y=Y.substring(X)||H)}return new y("file",q,Y,P,P)},eA.from=function(Y){var q=new y(Y.scheme,Y.authority,Y.path,Y.query,Y.fragment);return k(q,!0),q},eA.prototype.toString=function(Y){return Y===void 0&&(Y=!1),IA(this,Y)},eA.prototype.toJSON=function(){return this},eA.revive=function(Y){if(Y){if(Y instanceof eA)return Y;var q=new y(Y);return q._formatted=Y.external,q._fsPath=Y._sep===F?Y.fsPath:null,q}return Y},eA}();s.URI=v;var F=m.isWindows?1:void 0,y=function(eA){function Y(){var q=eA!==null&&eA.apply(this,arguments)||this;return q._formatted=null,q._fsPath=null,q}return B(Y,eA),Object.defineProperty(Y.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=wA(this,!1)),this._fsPath},enumerable:!1,configurable:!0}),Y.prototype.toString=function(q){return q===void 0&&(q=!1),q?IA(this,!0):(this._formatted||(this._formatted=IA(this,!1)),this._formatted)},Y.prototype.toJSON=function(){var q={$mid:1};return this._fsPath&&(q.fsPath=this._fsPath,q._sep=F),this._formatted&&(q.external=this._formatted),this.path&&(q.path=this.path),this.scheme&&(q.scheme=this.scheme),this.authority&&(q.authority=this.authority),this.query&&(q.query=this.query),this.fragment&&(q.fragment=this.fragment),q},Y}(v),S=((p={})[58]="%3A",p[47]="%2F",p[63]="%3F",p[35]="%23",p[91]="%5B",p[93]="%5D",p[64]="%40",p[33]="%21",p[36]="%24",p[38]="%26",p[39]="%27",p[40]="%28",p[41]="%29",p[42]="%2A",p[43]="%2B",p[44]="%2C",p[59]="%3B",p[61]="%3D",p[32]="%20",p);function U(eA,Y,q){for(var X=void 0,Z=-1,K=0;K=97&&J<=122||J>=65&&J<=90||J>=48&&J<=57||J===45||J===46||J===95||J===126||Y&&J===47||q&&J===91||q&&J===93||q&&J===58)Z!==-1&&(X+=encodeURIComponent(eA.substring(Z,K)),Z=-1),X!==void 0&&(X+=eA.charAt(K));else{X===void 0&&(X=eA.substr(0,K));var sA=S[J];sA!==void 0?(Z!==-1&&(X+=encodeURIComponent(eA.substring(Z,K)),Z=-1),X+=sA):Z===-1&&(Z=K)}}return Z!==-1&&(X+=encodeURIComponent(eA.substring(Z))),X!==void 0?X:eA}function V(eA){for(var Y=void 0,q=0;q1&&eA.scheme==="file"?"//".concat(eA.authority).concat(eA.path):eA.path.charCodeAt(0)===47&&(eA.path.charCodeAt(1)>=65&&eA.path.charCodeAt(1)<=90||eA.path.charCodeAt(1)>=97&&eA.path.charCodeAt(1)<=122)&&eA.path.charCodeAt(2)===58?Y?eA.path.substr(1):eA.path[1].toLowerCase()+eA.path.substr(2):eA.path,m.isWindows&&(q=q.replace(/\//g,"\\")),q}function IA(eA,Y){var q=Y?V:U,X="",Z=eA.scheme,K=eA.authority,J=eA.path,sA=eA.query,uA=eA.fragment;if(Z&&(X+=Z,X+=":"),(K||Z==="file")&&(X+=H,X+=H),K){var BA=K.indexOf("@");if(BA!==-1){var CA=K.substr(0,BA);K=K.substr(BA+1),(BA=CA.lastIndexOf(":"))===-1?X+=q(CA,!1,!1):(X+=q(CA.substr(0,BA),!1,!1),X+=":",X+=q(CA.substr(BA+1),!1,!0)),X+="@"}(BA=(K=K.toLowerCase()).lastIndexOf(":"))===-1?X+=q(K,!1,!0):(X+=q(K.substr(0,BA),!1,!0),X+=K.substr(BA))}if(J){if(J.length>=3&&J.charCodeAt(0)===47&&J.charCodeAt(2)===58)(z=J.charCodeAt(1))>=65&&z<=90&&(J="/".concat(String.fromCharCode(z+32),":").concat(J.substr(3)));else if(J.length>=2&&J.charCodeAt(1)===58){var z;(z=J.charCodeAt(0))>=65&&z<=90&&(J="".concat(String.fromCharCode(z+32),":").concat(J.substr(2)))}X+=q(J,!0,!1)}return sA&&(X+="?",X+=q(sA,!1,!1)),uA&&(X+="#",X+=Y?uA:U(uA,!1,!1)),X}function pA(eA){try{return decodeURIComponent(eA)}catch{return eA.length>3?eA.substr(0,3)+pA(eA.substr(3)):eA}}s.uriToFsPath=wA;var oA=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function cA(eA){return eA.match(oA)?eA.replace(oA,function(Y){return pA(Y)}):eA}},679:function(o,s,g){var E=this&&this.__spreadArray||function(x,O,k){if(k||arguments.length===2)for(var P,H=0,T=O.length;H{var o=i;Object.defineProperty(o,"__esModule",{value:!0}),o.Utils=o.URI=void 0;var s=t(796);Object.defineProperty(o,"URI",{enumerable:!0,get:function(){return s.URI}});var g=t(679);Object.defineProperty(o,"Utils",{enumerable:!0,get:function(){return g.Utils}})})(),i})())});var m_A=GA((exports,module)=>{var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.findInternal=function(A,r,t){A instanceof String&&(A=String(A));for(var i=A.length,o=0;o=o}},"es6","es3");$jscomp.polyfill("Array.prototype.find",function(A){return A||function(r,t){return $jscomp.findInternal(this,r,t).v}},"es6","es3");$jscomp.polyfill("String.prototype.startsWith",function(A){return A||function(r,t){var i=$jscomp.checkStringArgs(this,r,"startsWith");r+="";var o=i.length,s=r.length;t=Math.max(0,Math.min(t|0,i.length));for(var g=0;g=s}},"es6","es3");$jscomp.polyfill("String.prototype.repeat",function(A){return A||function(r){var t=$jscomp.checkStringArgs(this,null,"repeat");if(0>r||1342177279>>=1)&&(t+=t);return i}},"es6","es3");var COMPILED=!0,goog=goog||{};goog.global=exports||self;goog.exportPath_=function(A,r,t){A=A.split("."),t=t||goog.global,A[0]in t||typeof t.execScript>"u"||t.execScript("var "+A[0]);for(var i;A.length&&(i=A.shift());)A.length||r===void 0?t=t[i]&&t[i]!==Object.prototype[i]?t[i]:t[i]={}:t[i]=r};goog.define=function(A,r){if(!COMPILED){var t=goog.global.CLOSURE_UNCOMPILED_DEFINES,i=goog.global.CLOSURE_DEFINES;t&&t.nodeType===void 0&&Object.prototype.hasOwnProperty.call(t,A)?r=t[A]:i&&i.nodeType===void 0&&Object.prototype.hasOwnProperty.call(i,A)&&(r=i[A])}return r};goog.FEATURESET_YEAR=2012;goog.DEBUG=!0;goog.LOCALE="en";goog.TRUSTED_SITE=!0;goog.STRICT_MODE_COMPATIBLE=!1;goog.DISALLOW_TEST_ONLY_CODE=COMPILED&&!goog.DEBUG;goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING=!1;goog.provide=function(A){if(goog.isInModuleLoader_())throw Error("goog.provide cannot be used within a module.");if(!COMPILED&&goog.isProvided_(A))throw Error('Namespace "'+A+'" already declared.');goog.constructNamespace_(A)};goog.constructNamespace_=function(A,r){if(!COMPILED){delete goog.implicitNamespaces_[A];for(var t=A;(t=t.substring(0,t.lastIndexOf(".")))&&!goog.getObjectByName(t);)goog.implicitNamespaces_[t]=!0}goog.exportPath_(A,r)};goog.getScriptNonce=function(A){return A&&A!=goog.global?goog.getScriptNonce_(A.document):(goog.cspNonce_===null&&(goog.cspNonce_=goog.getScriptNonce_(goog.global.document)),goog.cspNonce_)};goog.NONCE_PATTERN_=/^[\w+/_-]+[=]{0,2}$/;goog.cspNonce_=null;goog.getScriptNonce_=function(A){return(A=A.querySelector&&A.querySelector("script[nonce]"))&&(A=A.nonce||A.getAttribute("nonce"))&&goog.NONCE_PATTERN_.test(A)?A:""};goog.VALID_MODULE_RE_=/^[a-zA-Z_$][a-zA-Z0-9._$]*$/;goog.module=function(A){if(typeof A!="string"||!A||A.search(goog.VALID_MODULE_RE_)==-1)throw Error("Invalid module identifier");if(!goog.isInGoogModuleLoader_())throw Error("Module "+A+" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.");if(goog.moduleLoaderState_.moduleName)throw Error("goog.module may only be called once per module.");if(goog.moduleLoaderState_.moduleName=A,!COMPILED){if(goog.isProvided_(A))throw Error('Namespace "'+A+'" already declared.');delete goog.implicitNamespaces_[A]}};goog.module.get=function(A){return goog.module.getInternal_(A)};goog.module.getInternal_=function(A){if(!COMPILED){if(A in goog.loadedModules_)return goog.loadedModules_[A].exports;if(!goog.implicitNamespaces_[A])return A=goog.getObjectByName(A),A??null}return null};goog.ModuleType={ES6:"es6",GOOG:"goog"};goog.moduleLoaderState_=null;goog.isInModuleLoader_=function(){return goog.isInGoogModuleLoader_()||goog.isInEs6ModuleLoader_()};goog.isInGoogModuleLoader_=function(){return!!goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.GOOG};goog.isInEs6ModuleLoader_=function(){if(goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.ES6)return!0;var A=goog.global.$jscomp;return A?typeof A.getCurrentModulePath!="function"?!1:!!A.getCurrentModulePath():!1};goog.module.declareLegacyNamespace=function(){if(!COMPILED&&!goog.isInGoogModuleLoader_())throw Error("goog.module.declareLegacyNamespace must be called from within a goog.module");if(!COMPILED&&!goog.moduleLoaderState_.moduleName)throw Error("goog.module must be called prior to goog.module.declareLegacyNamespace.");goog.moduleLoaderState_.declareLegacyNamespace=!0};goog.declareModuleId=function(A){if(!COMPILED){if(!goog.isInEs6ModuleLoader_())throw Error("goog.declareModuleId may only be called from within an ES6 module");if(goog.moduleLoaderState_&&goog.moduleLoaderState_.moduleName)throw Error("goog.declareModuleId may only be called once per module.");if(A in goog.loadedModules_)throw Error('Module with namespace "'+A+'" already exists.')}if(goog.moduleLoaderState_)goog.moduleLoaderState_.moduleName=A;else{var r=goog.global.$jscomp;if(!r||typeof r.getCurrentModulePath!="function")throw Error('Module with namespace "'+A+'" has been loaded incorrectly.');r=r.require(r.getCurrentModulePath()),goog.loadedModules_[A]={exports:r,type:goog.ModuleType.ES6,moduleId:A}}};goog.setTestOnly=function(A){if(goog.DISALLOW_TEST_ONLY_CODE)throw A=A||"",Error("Importing test-only code into non-debug environment"+(A?": "+A:"."))};goog.forwardDeclare=function(A){};COMPILED||(goog.isProvided_=function(A){return A in goog.loadedModules_||!goog.implicitNamespaces_[A]&&goog.getObjectByName(A)!=null},goog.implicitNamespaces_={"goog.module":!0});goog.getObjectByName=function(A,r){A=A.split("."),r=r||goog.global;for(var t=0;t"u")return"object";return r};goog.isArray=function(A){return goog.typeOf(A)=="array"};goog.isArrayLike=function(A){var r=goog.typeOf(A);return r=="array"||r=="object"&&typeof A.length=="number"};goog.isDateLike=function(A){return goog.isObject(A)&&typeof A.getFullYear=="function"};goog.isFunction=function(A){return goog.typeOf(A)=="function"};goog.isObject=function(A){var r=typeof A;return r=="object"&&A!=null||r=="function"};goog.getUid=function(A){return Object.prototype.hasOwnProperty.call(A,goog.UID_PROPERTY_)&&A[goog.UID_PROPERTY_]||(A[goog.UID_PROPERTY_]=++goog.uidCounter_)};goog.hasUid=function(A){return!!A[goog.UID_PROPERTY_]};goog.removeUid=function(A){A!==null&&"removeAttribute"in A&&A.removeAttribute(goog.UID_PROPERTY_);try{delete A[goog.UID_PROPERTY_]}catch{}};goog.UID_PROPERTY_="closure_uid_"+(1e9*Math.random()>>>0);goog.uidCounter_=0;goog.getHashCode=goog.getUid;goog.removeHashCode=goog.removeUid;goog.cloneObject=function(A){var r=goog.typeOf(A);if(r=="object"||r=="array"){if(typeof A.clone=="function")return A.clone();r=r=="array"?[]:{};for(var t in A)r[t]=goog.cloneObject(A[t]);return r}return A};goog.bindNative_=function(A,r,t){return A.call.apply(A.bind,arguments)};goog.bindJs_=function(A,r,t){if(!A)throw Error();if(2{"use strict";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()')}),a("es7",function(){return b("2 ** 2 == 4")}),a("es8",function(){return b("async () => 1, true")}),a("es9",function(){return b("({...rest} = {}), true")}),a("es_next",function(){return!1}),{target:c,map:d}},goog.Transpiler.prototype.needsTranspile=function(A,r){if(goog.TRANSPILE=="always")return!0;if(goog.TRANSPILE=="never")return!1;if(!this.requiresTranspilation_){var t=this.createRequiresTranspilation_();this.requiresTranspilation_=t.map,this.transpilationTarget_=this.transpilationTarget_||t.target}if(A in this.requiresTranspilation_)return this.requiresTranspilation_[A]?!0:!(!goog.inHtmlDocument_()||r!="es6"||"noModule"in goog.global.document.createElement("script"));throw Error("Unknown language mode: "+A)},goog.Transpiler.prototype.transpile=function(A,r){return goog.transpile_(A,r,this.transpilationTarget_)},goog.transpiler_=new goog.Transpiler,goog.protectScriptTag_=function(A){return A.replace(/<\/(SCRIPT)/ig,"\\x3c/$1")},goog.DebugLoader_=function(){this.dependencies_={},this.idToPath_={},this.written_={},this.loadingDeps_=[],this.depsToLoad_=[],this.paused_=!1,this.factory_=new goog.DependencyFactory(goog.transpiler_),this.deferredCallbacks_={},this.deferredQueue_=[]},goog.DebugLoader_.prototype.bootstrap=function(A,r){function t(){i&&(goog.global.setTimeout(i,0),i=null)}var i=r;if(A.length){r=[];for(var o=0;o",r.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(i):i)}else{var o=r.createElement("script");o.defer=goog.Dependency.defer_,o.async=!1,o.type="text/javascript",(i=goog.getScriptNonce())&&o.setAttribute("nonce",i),goog.DebugLoader_.IS_OLD_IE_?(A.pause(),o.onreadystatechange=function(){(o.readyState=="loaded"||o.readyState=="complete")&&(A.loaded(),A.resume())}):o.onload=function(){o.onload=null,A.loaded()},o.src=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path):this.path,r.head.appendChild(o)}}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),this.relativePath=="deps.js"?(goog.logToConsole_("Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true."),A.loaded()):A.pause()},goog.Es6ModuleDependency=function(A,r,t,i,o){goog.Dependency.call(this,A,r,t,i,o)},goog.inherits(goog.Es6ModuleDependency,goog.Dependency),goog.Es6ModuleDependency.prototype.load=function(A){function r(B,m){B=m?'":'',i.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(B):B)}function t(B,m){var _=i.createElement("script");_.defer=!0,_.async=!1,_.type="module",_.setAttribute("crossorigin",!0);var x=goog.getScriptNonce();x&&_.setAttribute("nonce",x),m?_.textContent=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScript(m):m:_.src=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScriptURL(B):B,i.head.appendChild(_)}if(goog.global.CLOSURE_IMPORT_SCRIPT)goog.global.CLOSURE_IMPORT_SCRIPT(this.path)?A.loaded():A.pause();else if(goog.inHtmlDocument_()){var i=goog.global.document,o=this;if(goog.isDocumentLoading_()){var s=r;goog.Dependency.defer_=!0}else s=t;var g=goog.Dependency.registerCallback_(function(){goog.Dependency.unregisterCallback_(g),A.setModuleState(goog.ModuleType.ES6)});s(void 0,'goog.Dependency.callback_("'+g+'")'),s(this.path,void 0);var E=goog.Dependency.registerCallback_(function(B){goog.Dependency.unregisterCallback_(E),A.registerEs6ModuleExports(o.path,B,goog.moduleLoaderState_.moduleName)});s(void 0,'import * as m from "'+this.path+'"; goog.Dependency.callback_("'+E+'", m)');var p=goog.Dependency.registerCallback_(function(){goog.Dependency.unregisterCallback_(p),A.clearModuleState(),A.loaded()});s(void 0,'goog.Dependency.callback_("'+p+'")')}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),A.pause()},goog.TransformedDependency=function(A,r,t,i,o){goog.Dependency.call(this,A,r,t,i,o),this.contents_=null,this.lazyFetch_=!goog.inHtmlDocument_()||!("noModule"in goog.global.document.createElement("script"))},goog.inherits(goog.TransformedDependency,goog.Dependency),goog.TransformedDependency.prototype.load=function(A){function r(){o.contents_=goog.loadFileSync_(o.path),o.contents_&&(o.contents_=o.transform(o.contents_),o.contents_&&(o.contents_+=` -//# sourceURL=`+o.path))}function t(){if(o.lazyFetch_&&r(),o.contents_){s&&A.setModuleState(goog.ModuleType.ES6);try{var m=o.contents_;if(o.contents_=null,goog.globalEval(m),s)var _=goog.moduleLoaderState_.moduleName}finally{s&&A.clearModuleState()}s&&goog.global.$jscomp.require.ensure([o.getPathName()],function(){A.registerEs6ModuleExports(o.path,goog.global.$jscomp.require(o.getPathName()),_)}),A.loaded()}}function i(){var m=goog.global.document,_=goog.Dependency.registerCallback_(function(){goog.Dependency.unregisterCallback_(_),t()}),x='";m.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(x):x)}var o=this;if(goog.global.CLOSURE_IMPORT_SCRIPT)r(),this.contents_&&goog.global.CLOSURE_IMPORT_SCRIPT("",this.contents_)?(this.contents_=null,A.loaded()):A.pause();else{var s=this.loadFlags.module==goog.ModuleType.ES6;this.lazyFetch_||r();var g=1t?Math.max(0,A.length+t):t,typeof A=="string")return typeof r!="string"||r.length!=1?-1:A.indexOf(r,t);for(;tt&&(t=Math.max(0,A.length+t)),typeof A=="string")return typeof r!="string"||r.length!=1?-1:A.lastIndexOf(r,t);for(;0<=t;t--)if(t in A&&A[t]===r)return t;return-1};goog.array.forEach=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.forEach)?function(A,r,t){goog.asserts.assert(A.length!=null),Array.prototype.forEach.call(A,r,t)}:function(A,r,t){for(var i=A.length,o=typeof A=="string"?A.split(""):A,s=0;sr?null:typeof A=="string"?A.charAt(r):A[r]};goog.array.findIndex=function(A,r,t){for(var i=A.length,o=typeof A=="string"?A.split(""):A,s=0;sr?null:typeof A=="string"?A.charAt(r):A[r]};goog.array.findIndexRight=function(A,r,t){var i=A.length,o=typeof A=="string"?A.split(""):A;for(--i;0<=i;i--)if(i in o&&r.call(t,o[i],i,A))return i;return-1};goog.array.contains=function(A,r){return 0<=goog.array.indexOf(A,r)};goog.array.isEmpty=function(A){return A.length==0};goog.array.clear=function(A){if(!Array.isArray(A))for(var r=A.length-1;0<=r;r--)delete A[r];A.length=0};goog.array.insert=function(A,r){goog.array.contains(A,r)||A.push(r)};goog.array.insertAt=function(A,r,t){goog.array.splice(A,t,0,r)};goog.array.insertArrayAt=function(A,r,t){goog.partial(goog.array.splice,A,t,0).apply(null,r)};goog.array.insertBefore=function(A,r,t){var i;arguments.length==2||0>(i=goog.array.indexOf(A,t))?A.push(r):goog.array.insertAt(A,r,i)};goog.array.remove=function(A,r){r=goog.array.indexOf(A,r);var t;return(t=0<=r)&&goog.array.removeAt(A,r),t};goog.array.removeLast=function(A,r){return r=goog.array.lastIndexOf(A,r),0<=r?(goog.array.removeAt(A,r),!0):!1};goog.array.removeAt=function(A,r){return goog.asserts.assert(A.length!=null),Array.prototype.splice.call(A,r,1).length==1};goog.array.removeIf=function(A,r,t){return r=goog.array.findIndex(A,r,t),0<=r?(goog.array.removeAt(A,r),!0):!1};goog.array.removeAllIf=function(A,r,t){var i=0;return goog.array.forEachRight(A,function(o,s){r.call(t,o,s,A)&&goog.array.removeAt(A,s)&&i++}),i};goog.array.concat=function(A){return Array.prototype.concat.apply([],arguments)};goog.array.join=function(A){return Array.prototype.concat.apply([],arguments)};goog.array.toArray=function(A){var r=A.length;if(0=arguments.length?Array.prototype.slice.call(A,r):Array.prototype.slice.call(A,r,t)};goog.array.removeDuplicates=function(A,r,t){r=r||A;var i=function(p){return goog.isObject(p)?"o"+goog.getUid(p):(typeof p).charAt(0)+p};t=t||i,i={};for(var o=0,s=0;s>>1),B=t?r.call(o,A[p],p,A):r(i,A[p]);0r?1:At?(goog.array.insertAt(A,r,-(t+1)),!0):!1};goog.array.binaryRemove=function(A,r,t){return r=goog.array.binarySearch(A,r,t),0<=r?goog.array.removeAt(A,r):!1};goog.array.bucket=function(A,r,t){for(var i={},o=0;ot*(s-o))return[];if(0s;A+=t)i.push(A);return i};goog.array.repeat=function(A,r){for(var t=[],i=0;ir&&Array.prototype.push.apply(A,A.splice(0,-r))),A};goog.array.moveItem=function(A,r,t){goog.asserts.assert(0<=r&&r>=8),r[t++]=o}return r};goog.crypt.byteArrayToString=function(A){if(8192>=A.length)return String.fromCharCode.apply(null,A);for(var r="",t=0;to?r[t++]=o:(2048>o?r[t++]=o>>6|192:((o&64512)==55296&&i+1>18|240,r[t++]=o>>12&63|128):r[t++]=o>>12|224,r[t++]=o>>6&63|128),r[t++]=o&63|128)}return r};goog.crypt.utf8ByteArrayToString=function(A){for(var r=[],t=0,i=0;to)r[i++]=String.fromCharCode(o);else if(191o){var s=A[t++];r[i++]=String.fromCharCode((o&31)<<6|s&63)}else if(239o){s=A[t++];var g=A[t++],E=A[t++];o=((o&7)<<18|(s&63)<<12|(g&63)<<6|E&63)-65536,r[i++]=String.fromCharCode(55296+(o>>10)),r[i++]=String.fromCharCode(56320+(o&1023))}else s=A[t++],g=A[t++],r[i++]=String.fromCharCode((o&15)<<12|(s&63)<<6|g&63)}return r.join("")};goog.crypt.xorByteArray=function(A,r){goog.asserts.assert(A.length==r.length,"XOR array lengths must match");for(var t=[],i=0;i"}else return A===void 0?"undefined":A===null?"null":typeof A};goog.dom.asserts.getWindow_=function(A){try{var r=A&&A.ownerDocument,t=r&&(r.defaultView||r.parentWindow);if(t=t||goog.global,t.Element&&t.Location)return t}catch{}return null};goog.functions={};goog.functions.constant=function(A){return function(){return A}};goog.functions.FALSE=function(){return!1};goog.functions.TRUE=function(){return!0};goog.functions.NULL=function(){return null};goog.functions.identity=function(A,r){return A};goog.functions.error=function(A){return function(){throw Error(A)}};goog.functions.fail=function(A){return function(){throw A}};goog.functions.lock=function(A,r){return r=r||0,function(){return A.apply(this,Array.prototype.slice.call(arguments,0,r))}};goog.functions.nth=function(A){return function(){return arguments[A]}};goog.functions.partialRight=function(A,r){var t=Array.prototype.slice.call(arguments,1);return function(){var i=Array.prototype.slice.call(arguments);return i.push.apply(i,t),A.apply(this,i)}};goog.functions.withReturnValue=function(A,r){return goog.functions.sequence(A,goog.functions.constant(r))};goog.functions.equalTo=function(A,r){return function(t){return r?A==t:A===t}};goog.functions.compose=function(A,r){var t=arguments,i=t.length;return function(){var o;i&&(o=t[i-1].apply(this,arguments));for(var s=i-2;0<=s;s--)o=t[s].call(this,o);return o}};goog.functions.sequence=function(A){var r=arguments,t=r.length;return function(){for(var i,o=0;oA?goog.i18n.bidi.Dir.RTL:r?null:goog.i18n.bidi.Dir.NEUTRAL:A==null?null:A?goog.i18n.bidi.Dir.RTL:goog.i18n.bidi.Dir.LTR};goog.i18n.bidi.ltrChars_="A-Za-z\xC0-\xD6\xD8-\xF6\xF8-\u02B8\u0300-\u0590\u0900-\u1FFF\u200E\u2C00-\uD801\uD804-\uD839\uD83C-\uDBFF\uF900-\uFB1C\uFE00-\uFE6F\uFEFD-\uFFFF";goog.i18n.bidi.rtlChars_="\u0591-\u06EF\u06FA-\u08FF\u200F\uD802-\uD803\uD83A-\uD83B\uFB1D-\uFDFF\uFE70-\uFEFC";goog.i18n.bidi.htmlSkipReg_=/<[^>]*>|&[^;]+;/g;goog.i18n.bidi.stripHtmlIfNeeded_=function(A,r){return r?A.replace(goog.i18n.bidi.htmlSkipReg_,""):A};goog.i18n.bidi.rtlCharReg_=new RegExp("["+goog.i18n.bidi.rtlChars_+"]");goog.i18n.bidi.ltrCharReg_=new RegExp("["+goog.i18n.bidi.ltrChars_+"]");goog.i18n.bidi.hasAnyRtl=function(A,r){return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(A,r))};goog.i18n.bidi.hasRtlChar=goog.i18n.bidi.hasAnyRtl;goog.i18n.bidi.hasAnyLtr=function(A,r){return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(A,r))};goog.i18n.bidi.ltrRe_=new RegExp("^["+goog.i18n.bidi.ltrChars_+"]");goog.i18n.bidi.rtlRe_=new RegExp("^["+goog.i18n.bidi.rtlChars_+"]");goog.i18n.bidi.isRtlChar=function(A){return goog.i18n.bidi.rtlRe_.test(A)};goog.i18n.bidi.isLtrChar=function(A){return goog.i18n.bidi.ltrRe_.test(A)};goog.i18n.bidi.isNeutralChar=function(A){return!goog.i18n.bidi.isLtrChar(A)&&!goog.i18n.bidi.isRtlChar(A)};goog.i18n.bidi.ltrDirCheckRe_=new RegExp("^[^"+goog.i18n.bidi.rtlChars_+"]*["+goog.i18n.bidi.ltrChars_+"]");goog.i18n.bidi.rtlDirCheckRe_=new RegExp("^[^"+goog.i18n.bidi.ltrChars_+"]*["+goog.i18n.bidi.rtlChars_+"]");goog.i18n.bidi.startsWithRtl=function(A,r){return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(A,r))};goog.i18n.bidi.isRtlText=goog.i18n.bidi.startsWithRtl;goog.i18n.bidi.startsWithLtr=function(A,r){return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(A,r))};goog.i18n.bidi.isLtrText=goog.i18n.bidi.startsWithLtr;goog.i18n.bidi.isRequiredLtrRe_=/^http:\/\/.*/;goog.i18n.bidi.isNeutralText=function(A,r){return A=goog.i18n.bidi.stripHtmlIfNeeded_(A,r),goog.i18n.bidi.isRequiredLtrRe_.test(A)||!goog.i18n.bidi.hasAnyLtr(A)&&!goog.i18n.bidi.hasAnyRtl(A)};goog.i18n.bidi.ltrExitDirCheckRe_=new RegExp("["+goog.i18n.bidi.ltrChars_+"][^"+goog.i18n.bidi.rtlChars_+"]*$");goog.i18n.bidi.rtlExitDirCheckRe_=new RegExp("["+goog.i18n.bidi.rtlChars_+"][^"+goog.i18n.bidi.ltrChars_+"]*$");goog.i18n.bidi.endsWithLtr=function(A,r){return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(A,r))};goog.i18n.bidi.isLtrExitText=goog.i18n.bidi.endsWithLtr;goog.i18n.bidi.endsWithRtl=function(A,r){return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(A,r))};goog.i18n.bidi.isRtlExitText=goog.i18n.bidi.endsWithRtl;goog.i18n.bidi.rtlLocalesRe_=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;goog.i18n.bidi.isRtlLanguage=function(A){return goog.i18n.bidi.rtlLocalesRe_.test(A)};goog.i18n.bidi.bracketGuardTextRe_=/(\(.*?\)+)|(\[.*?\]+)|(\{.*?\}+)|(<.*?>+)/g;goog.i18n.bidi.guardBracketInText=function(A,r){return r=(r===void 0?goog.i18n.bidi.hasAnyRtl(A):r)?goog.i18n.bidi.Format.RLM:goog.i18n.bidi.Format.LRM,A.replace(goog.i18n.bidi.bracketGuardTextRe_,r+"$&"+r)};goog.i18n.bidi.enforceRtlInHtml=function(A){return A.charAt(0)=="<"?A.replace(/<\w+/,"$& dir=rtl"):` -`+A+""};goog.i18n.bidi.enforceRtlInText=function(A){return goog.i18n.bidi.Format.RLE+A+goog.i18n.bidi.Format.PDF};goog.i18n.bidi.enforceLtrInHtml=function(A){return A.charAt(0)=="<"?A.replace(/<\w+/,"$& dir=ltr"):` -`+A+""};goog.i18n.bidi.enforceLtrInText=function(A){return goog.i18n.bidi.Format.LRE+A+goog.i18n.bidi.Format.PDF};goog.i18n.bidi.dimensionsRe_=/:\s*([.\d][.\w]*)\s+([.\d][.\w]*)\s+([.\d][.\w]*)\s+([.\d][.\w]*)/g;goog.i18n.bidi.leftRe_=/left/gi;goog.i18n.bidi.rightRe_=/right/gi;goog.i18n.bidi.tempRe_=/%%%%/g;goog.i18n.bidi.mirrorCSS=function(A){return A.replace(goog.i18n.bidi.dimensionsRe_,":$1 $4 $3 $2").replace(goog.i18n.bidi.leftRe_,"%%%%").replace(goog.i18n.bidi.rightRe_,goog.i18n.bidi.LEFT).replace(goog.i18n.bidi.tempRe_,goog.i18n.bidi.RIGHT)};goog.i18n.bidi.doubleQuoteSubstituteRe_=/([\u0591-\u05f2])"/g;goog.i18n.bidi.singleQuoteSubstituteRe_=/([\u0591-\u05f2])'/g;goog.i18n.bidi.normalizeHebrewQuote=function(A){return A.replace(goog.i18n.bidi.doubleQuoteSubstituteRe_,"$1\u05F4").replace(goog.i18n.bidi.singleQuoteSubstituteRe_,"$1\u05F3")};goog.i18n.bidi.wordSeparatorRe_=/\s+/;goog.i18n.bidi.hasNumeralsRe_=/[\d\u06f0-\u06f9]/;goog.i18n.bidi.rtlDetectionThreshold_=.4;goog.i18n.bidi.estimateDirection=function(A,r){var t=0,i=0,o=!1;for(A=goog.i18n.bidi.stripHtmlIfNeeded_(A,r).split(goog.i18n.bidi.wordSeparatorRe_),r=0;rgoog.i18n.bidi.rtlDetectionThreshold_?goog.i18n.bidi.Dir.RTL:goog.i18n.bidi.Dir.LTR};goog.i18n.bidi.detectRtlDirectionality=function(A,r){return goog.i18n.bidi.estimateDirection(A,r)==goog.i18n.bidi.Dir.RTL};goog.i18n.bidi.setElementDirAndAlign=function(A,r){A&&(r=goog.i18n.bidi.toDir(r))&&(A.style.textAlign=r==goog.i18n.bidi.Dir.RTL?goog.i18n.bidi.RIGHT:goog.i18n.bidi.LEFT,A.dir=r==goog.i18n.bidi.Dir.RTL?"rtl":"ltr")};goog.i18n.bidi.setElementDirByTextDirectionality=function(A,r){switch(goog.i18n.bidi.estimateDirection(r)){case goog.i18n.bidi.Dir.LTR:A.dir="ltr";break;case goog.i18n.bidi.Dir.RTL:A.dir="rtl";break;default:A.removeAttribute("dir")}};goog.i18n.bidi.DirectionalString=function(){};goog.html.TrustedResourceUrl=function(A,r){this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_=A===goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_&&r||"",this.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_};goog.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString=!0;goog.html.TrustedResourceUrl.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString()};goog.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString=!0;goog.html.TrustedResourceUrl.prototype.getDirection=function(){return goog.i18n.bidi.Dir.LTR};goog.html.TrustedResourceUrl.prototype.cloneWithParams=function(A,r){var t=goog.html.TrustedResourceUrl.unwrap(this);t=goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(t);var i=t[3]||"";return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(t[1]+goog.html.TrustedResourceUrl.stringifyParams_("?",t[2]||"",A)+goog.html.TrustedResourceUrl.stringifyParams_("#",i,r))};goog.DEBUG&&(goog.html.TrustedResourceUrl.prototype.toString=function(){return"TrustedResourceUrl{"+this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_+"}"});goog.html.TrustedResourceUrl.unwrap=function(A){return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(A).toString()};goog.html.TrustedResourceUrl.unwrapTrustedScriptURL=function(A){return A instanceof goog.html.TrustedResourceUrl&&A.constructor===goog.html.TrustedResourceUrl&&A.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_?A.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_:(goog.asserts.fail("expected object of type TrustedResourceUrl, got '"+A+"' of type "+goog.typeOf(A)),"type_error:TrustedResourceUrl")};goog.html.TrustedResourceUrl.format=function(A,r){var t=goog.string.Const.unwrap(A);if(!goog.html.TrustedResourceUrl.BASE_URL_.test(t))throw Error("Invalid TrustedResourceUrl format: "+t);return A=t.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_,function(i,o){if(!Object.prototype.hasOwnProperty.call(r,o))throw Error('Found marker, "'+o+'", in format string, "'+t+'", but no valid label mapping found in args: '+JSON.stringify(r));return i=r[o],i instanceof goog.string.Const?goog.string.Const.unwrap(i):encodeURIComponent(String(i))}),goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(A)};goog.html.TrustedResourceUrl.FORMAT_MARKER_=/%{(\w+)}/g;goog.html.TrustedResourceUrl.BASE_URL_=/^((https:)?\/\/[0-9a-z.:[\]-]+\/|\/[^/\\]|[^:/\\%]+\/|[^:/\\%]*[?#]|about:blank#)/i;goog.html.TrustedResourceUrl.URL_PARAM_PARSER_=/^([^?#]*)(\?[^#]*)?(#[\s\S]*)?/;goog.html.TrustedResourceUrl.formatWithParams=function(A,r,t,i){return goog.html.TrustedResourceUrl.format(A,r).cloneWithParams(t,i)};goog.html.TrustedResourceUrl.fromConstant=function(A){return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(A))};goog.html.TrustedResourceUrl.fromConstants=function(A){for(var r="",t=0;tA.length?"&":"")+encodeURIComponent(i)+"="+encodeURIComponent(String(g)))}}return r};goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_={};goog.string.internal={};goog.string.internal.startsWith=function(A,r){return A.lastIndexOf(r,0)==0};goog.string.internal.endsWith=function(A,r){var t=A.length-r.length;return 0<=t&&A.indexOf(r,t)==t};goog.string.internal.caseInsensitiveStartsWith=function(A,r){return goog.string.internal.caseInsensitiveCompare(r,A.substr(0,r.length))==0};goog.string.internal.caseInsensitiveEndsWith=function(A,r){return goog.string.internal.caseInsensitiveCompare(r,A.substr(A.length-r.length,r.length))==0};goog.string.internal.caseInsensitiveEquals=function(A,r){return A.toLowerCase()==r.toLowerCase()};goog.string.internal.isEmptyOrWhitespace=function(A){return/^[\s\xa0]*$/.test(A)};goog.string.internal.trim=goog.TRUSTED_SITE&&String.prototype.trim?function(A){return A.trim()}:function(A){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(A)[1]};goog.string.internal.caseInsensitiveCompare=function(A,r){return A=String(A).toLowerCase(),r=String(r).toLowerCase(),A":"
")};goog.string.internal.htmlEscape=function(A,r){if(r)A=A.replace(goog.string.internal.AMP_RE_,"&").replace(goog.string.internal.LT_RE_,"<").replace(goog.string.internal.GT_RE_,">").replace(goog.string.internal.QUOT_RE_,""").replace(goog.string.internal.SINGLE_QUOTE_RE_,"'").replace(goog.string.internal.NULL_RE_,"�");else{if(!goog.string.internal.ALL_RE_.test(A))return A;A.indexOf("&")!=-1&&(A=A.replace(goog.string.internal.AMP_RE_,"&")),A.indexOf("<")!=-1&&(A=A.replace(goog.string.internal.LT_RE_,"<")),A.indexOf(">")!=-1&&(A=A.replace(goog.string.internal.GT_RE_,">")),A.indexOf('"')!=-1&&(A=A.replace(goog.string.internal.QUOT_RE_,""")),A.indexOf("'")!=-1&&(A=A.replace(goog.string.internal.SINGLE_QUOTE_RE_,"'")),A.indexOf("\0")!=-1&&(A=A.replace(goog.string.internal.NULL_RE_,"�"))}return A};goog.string.internal.AMP_RE_=/&/g;goog.string.internal.LT_RE_=//g;goog.string.internal.QUOT_RE_=/"/g;goog.string.internal.SINGLE_QUOTE_RE_=/'/g;goog.string.internal.NULL_RE_=/\x00/g;goog.string.internal.ALL_RE_=/[\x00&<>"']/;goog.string.internal.whitespaceEscape=function(A,r){return goog.string.internal.newLineToBr(A.replace(/ /g,"  "),r)};goog.string.internal.contains=function(A,r){return A.indexOf(r)!=-1};goog.string.internal.caseInsensitiveContains=function(A,r){return goog.string.internal.contains(A.toLowerCase(),r.toLowerCase())};goog.string.internal.compareVersions=function(A,r){var t=0;A=goog.string.internal.trim(String(A)).split("."),r=goog.string.internal.trim(String(r)).split(".");for(var i=Math.max(A.length,r.length),o=0;t==0&&or?1:0};goog.html.SafeUrl=function(A,r){this.privateDoNotAccessOrElseSafeUrlWrappedValue_=A===goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_&&r||"",this.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_};goog.html.SafeUrl.INNOCUOUS_STRING="about:invalid#zClosurez";goog.html.SafeUrl.prototype.implementsGoogStringTypedString=!0;goog.html.SafeUrl.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString()};goog.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString=!0;goog.html.SafeUrl.prototype.getDirection=function(){return goog.i18n.bidi.Dir.LTR};goog.DEBUG&&(goog.html.SafeUrl.prototype.toString=function(){return"SafeUrl{"+this.privateDoNotAccessOrElseSafeUrlWrappedValue_+"}"});goog.html.SafeUrl.unwrap=function(A){return A instanceof goog.html.SafeUrl&&A.constructor===goog.html.SafeUrl&&A.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_?A.privateDoNotAccessOrElseSafeUrlWrappedValue_:(goog.asserts.fail("expected object of type SafeUrl, got '"+A+"' of type "+goog.typeOf(A)),"type_error:SafeUrl")};goog.html.SafeUrl.fromConstant=function(A){return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(A))};goog.html.SAFE_MIME_TYPE_PATTERN_=/^(?:audio\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-matroska|x-wav|wav|webm)|image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\/csv|video\/(?:mpeg|mp4|ogg|webm|quicktime|x-matroska))(?:;\w+=(?:\w+|"[\w;,= ]+"))*$/i;goog.html.SafeUrl.isSafeMimeType=function(A){return goog.html.SAFE_MIME_TYPE_PATTERN_.test(A)};goog.html.SafeUrl.fromBlob=function(A){return A=goog.html.SafeUrl.isSafeMimeType(A.type)?goog.fs.url.createObjectUrl(A):goog.html.SafeUrl.INNOCUOUS_STRING,goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(A)};goog.html.SafeUrl.fromMediaSource=function(A){return goog.asserts.assert("MediaSource"in goog.global,"No support for MediaSource"),A=A instanceof MediaSource?goog.fs.url.createObjectUrl(A):goog.html.SafeUrl.INNOCUOUS_STRING,goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(A)};goog.html.DATA_URL_PATTERN_=/^data:(.*);base64,[a-z0-9+\/]+=*$/i;goog.html.SafeUrl.fromDataUrl=function(A){A=A.replace(/(%0A|%0D)/g,"");var r=A.match(goog.html.DATA_URL_PATTERN_);return r=r&&goog.html.SafeUrl.isSafeMimeType(r[1]),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(r?A:goog.html.SafeUrl.INNOCUOUS_STRING)};goog.html.SafeUrl.fromTelUrl=function(A){return goog.string.internal.caseInsensitiveStartsWith(A,"tel:")||(A=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(A)};goog.html.SIP_URL_PATTERN_=/^sip[s]?:[+a-z0-9_.!$%&'*\/=^`{|}~-]+@([a-z0-9-]+\.)+[a-z0-9]{2,63}$/i;goog.html.SafeUrl.fromSipUrl=function(A){return goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(A))||(A=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(A)};goog.html.SafeUrl.fromFacebookMessengerUrl=function(A){return goog.string.internal.caseInsensitiveStartsWith(A,"fb-messenger://share")||(A=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(A)};goog.html.SafeUrl.fromWhatsAppUrl=function(A){return goog.string.internal.caseInsensitiveStartsWith(A,"whatsapp://send")||(A=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(A)};goog.html.SafeUrl.fromSmsUrl=function(A){return goog.string.internal.caseInsensitiveStartsWith(A,"sms:")&&goog.html.SafeUrl.isSmsUrlBodyValid_(A)||(A=goog.html.SafeUrl.INNOCUOUS_STRING),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(A)};goog.html.SafeUrl.isSmsUrlBodyValid_=function(A){var r=A.indexOf("#");if(0+~[\]()=^$|]+$/.test(t))throw Error("Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|] and strings, got: "+A);if(!goog.html.SafeStyleSheet.hasBalancedBrackets_(t))throw Error("() and [] in selector must be balanced, got: "+A);return r instanceof goog.html.SafeStyle||(r=goog.html.SafeStyle.create(r)),A=A+"{"+goog.html.SafeStyle.unwrap(r).replace(/",null)};goog.html.SafeHtml.VALID_NAMES_IN_TAG_=/^[a-zA-Z0-9-]+$/;goog.html.SafeHtml.URL_ATTRIBUTES_={action:!0,cite:!0,data:!0,formaction:!0,href:!0,manifest:!0,poster:!0,src:!0};goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_={APPLET:!0,BASE:!0,EMBED:!0,IFRAME:!0,LINK:!0,MATH:!0,META:!0,OBJECT:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0};goog.html.SafeHtml.create=function(A,r,t){return goog.html.SafeHtml.verifyTagName(String(A)),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(String(A),r,t)};goog.html.SafeHtml.verifyTagName=function(A){if(!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(A))throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?"Invalid tag name <"+A+">.":"");if(A.toUpperCase()in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_)throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?"Tag name <"+A+"> is not allowed for SafeHtml.":"")};goog.html.SafeHtml.createIframe=function(A,r,t,i){A&&goog.html.TrustedResourceUrl.unwrap(A);var o={};return o.src=A||null,o.srcdoc=r&&goog.html.SafeHtml.unwrap(r),A=goog.html.SafeHtml.combineAttributes(o,{sandbox:""},t),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",A,i)};goog.html.SafeHtml.createSandboxIframe=function(A,r,t,i){if(!goog.html.SafeHtml.canUseSandboxIframe())throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?"The browser does not support sandboxed iframes.":"");var o={};return o.src=A?goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(A)):null,o.srcdoc=r||null,o.sandbox="",A=goog.html.SafeHtml.combineAttributes(o,{},t),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",A,i)};goog.html.SafeHtml.canUseSandboxIframe=function(){return goog.global.HTMLIFrameElement&&"sandbox"in goog.global.HTMLIFrameElement.prototype};goog.html.SafeHtml.createScriptSrc=function(A,r){return goog.html.TrustedResourceUrl.unwrap(A),A=goog.html.SafeHtml.combineAttributes({src:A},{},r),goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("script",A)};goog.html.SafeHtml.createScript=function(A,r){for(var t in r){var i=t.toLowerCase();if(i=="language"||i=="src"||i=="text"||i=="type")throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Cannot set "'+i+'" attribute':"")}for(t="",A=goog.array.concat(A),i=0;i does not allow content."),o+=">"):(i=goog.html.SafeHtml.concat(t),o+=">"+goog.html.SafeHtml.unwrap(i)+"",i=i.getDirection()),(A=r&&r.dir)&&(i=/^(ltr|rtl|auto)$/i.test(A)?goog.i18n.bidi.Dir.NEUTRAL:null),goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(o,i)};goog.html.SafeHtml.stringifyAttributes=function(A,r){var t="";if(r)for(var i in r){if(!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(i))throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Invalid attribute name "'+i+'".':"");var o=r[i];o!=null&&(t+=" "+goog.html.SafeHtml.getAttrNameAndValue_(A,i,o))}return t};goog.html.SafeHtml.combineAttributes=function(A,r,t){var i={},o;for(o in A)goog.asserts.assert(o.toLowerCase()==o,"Must be lower case"),i[o]=A[o];for(o in r)goog.asserts.assert(o.toLowerCase()==o,"Must be lower case"),i[o]=r[o];if(t)for(o in t){var s=o.toLowerCase();if(s in A)throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Cannot override "'+s+'" attribute, got "'+o+'" with value "'+t[o]+'"':"");s in r&&delete i[s],i[o]=t[o]}return i};goog.html.SafeHtml.DOCTYPE_HTML=goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("",goog.i18n.bidi.Dir.NEUTRAL);goog.html.SafeHtml.EMPTY=goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("",goog.i18n.bidi.Dir.NEUTRAL);goog.html.SafeHtml.BR=goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("
",goog.i18n.bidi.Dir.NEUTRAL);goog.html.uncheckedconversions={};goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract=function(A,r,t){return goog.asserts.assertString(goog.string.Const.unwrap(A),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(A)),"must provide non-empty justification"),goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(r,t||null)};goog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract=function(A,r){return goog.asserts.assertString(goog.string.Const.unwrap(A),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(A)),"must provide non-empty justification"),goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(r)};goog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract=function(A,r){return goog.asserts.assertString(goog.string.Const.unwrap(A),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(A)),"must provide non-empty justification"),goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(r)};goog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract=function(A,r){return goog.asserts.assertString(goog.string.Const.unwrap(A),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(A)),"must provide non-empty justification"),goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(r)};goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract=function(A,r){return goog.asserts.assertString(goog.string.Const.unwrap(A),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(A)),"must provide non-empty justification"),goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(r)};goog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract=function(A,r){return goog.asserts.assertString(goog.string.Const.unwrap(A),"must provide justification"),goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(A)),"must provide non-empty justification"),goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(r)};goog.dom.safe={};goog.dom.safe.InsertAdjacentHtmlPosition={AFTERBEGIN:"afterbegin",AFTEREND:"afterend",BEFOREBEGIN:"beforebegin",BEFOREEND:"beforeend"};goog.dom.safe.insertAdjacentHtml=function(A,r,t){A.insertAdjacentHTML(r,goog.html.SafeHtml.unwrapTrustedHTML(t))};goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_={MATH:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0};goog.dom.safe.isInnerHtmlCleanupRecursive_=goog.functions.cacheReturnValue(function(){if(goog.DEBUG&&typeof document>"u")return!1;var A=document.createElement("div"),r=document.createElement("div");return r.appendChild(document.createElement("div")),A.appendChild(r),goog.DEBUG&&!A.firstChild?!1:(r=A.firstChild.firstChild,A.innerHTML=goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY),!r.parentElement)});goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse=function(A,r){if(goog.dom.safe.isInnerHtmlCleanupRecursive_())for(;A.lastChild;)A.removeChild(A.lastChild);A.innerHTML=goog.html.SafeHtml.unwrapTrustedHTML(r)};goog.dom.safe.setInnerHtml=function(A,r){if(goog.asserts.ENABLE_ASSERTS){var t=A.tagName.toUpperCase();if(goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[t])throw Error("goog.dom.safe.setInnerHtml cannot be used to set content of "+A.tagName+".")}goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(A,r)};goog.dom.safe.setOuterHtml=function(A,r){A.outerHTML=goog.html.SafeHtml.unwrapTrustedHTML(r)};goog.dom.safe.setFormElementAction=function(A,r){r=r instanceof goog.html.SafeUrl?r:goog.html.SafeUrl.sanitizeAssertUnchanged(r),goog.dom.asserts.assertIsHTMLFormElement(A).action=goog.html.SafeUrl.unwrap(r)};goog.dom.safe.setButtonFormAction=function(A,r){r=r instanceof goog.html.SafeUrl?r:goog.html.SafeUrl.sanitizeAssertUnchanged(r),goog.dom.asserts.assertIsHTMLButtonElement(A).formAction=goog.html.SafeUrl.unwrap(r)};goog.dom.safe.setInputFormAction=function(A,r){r=r instanceof goog.html.SafeUrl?r:goog.html.SafeUrl.sanitizeAssertUnchanged(r),goog.dom.asserts.assertIsHTMLInputElement(A).formAction=goog.html.SafeUrl.unwrap(r)};goog.dom.safe.setStyle=function(A,r){A.style.cssText=goog.html.SafeStyle.unwrap(r)};goog.dom.safe.documentWrite=function(A,r){A.write(goog.html.SafeHtml.unwrapTrustedHTML(r))};goog.dom.safe.setAnchorHref=function(A,r){goog.dom.asserts.assertIsHTMLAnchorElement(A),r=r instanceof goog.html.SafeUrl?r:goog.html.SafeUrl.sanitizeAssertUnchanged(r),A.href=goog.html.SafeUrl.unwrap(r)};goog.dom.safe.setImageSrc=function(A,r){if(goog.dom.asserts.assertIsHTMLImageElement(A),!(r instanceof goog.html.SafeUrl)){var t=/^data:image\//i.test(r);r=goog.html.SafeUrl.sanitizeAssertUnchanged(r,t)}A.src=goog.html.SafeUrl.unwrap(r)};goog.dom.safe.setAudioSrc=function(A,r){if(goog.dom.asserts.assertIsHTMLAudioElement(A),!(r instanceof goog.html.SafeUrl)){var t=/^data:audio\//i.test(r);r=goog.html.SafeUrl.sanitizeAssertUnchanged(r,t)}A.src=goog.html.SafeUrl.unwrap(r)};goog.dom.safe.setVideoSrc=function(A,r){if(goog.dom.asserts.assertIsHTMLVideoElement(A),!(r instanceof goog.html.SafeUrl)){var t=/^data:video\//i.test(r);r=goog.html.SafeUrl.sanitizeAssertUnchanged(r,t)}A.src=goog.html.SafeUrl.unwrap(r)};goog.dom.safe.setEmbedSrc=function(A,r){goog.dom.asserts.assertIsHTMLEmbedElement(A),A.src=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(r)};goog.dom.safe.setFrameSrc=function(A,r){goog.dom.asserts.assertIsHTMLFrameElement(A),A.src=goog.html.TrustedResourceUrl.unwrap(r)};goog.dom.safe.setIframeSrc=function(A,r){goog.dom.asserts.assertIsHTMLIFrameElement(A),A.src=goog.html.TrustedResourceUrl.unwrap(r)};goog.dom.safe.setIframeSrcdoc=function(A,r){goog.dom.asserts.assertIsHTMLIFrameElement(A),A.srcdoc=goog.html.SafeHtml.unwrapTrustedHTML(r)};goog.dom.safe.setLinkHrefAndRel=function(A,r,t){goog.dom.asserts.assertIsHTMLLinkElement(A),A.rel=t,goog.string.internal.caseInsensitiveContains(t,"stylesheet")?(goog.asserts.assert(r instanceof goog.html.TrustedResourceUrl,'URL must be TrustedResourceUrl because "rel" contains "stylesheet"'),A.href=goog.html.TrustedResourceUrl.unwrap(r)):A.href=r instanceof goog.html.TrustedResourceUrl?goog.html.TrustedResourceUrl.unwrap(r):r instanceof goog.html.SafeUrl?goog.html.SafeUrl.unwrap(r):goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitizeAssertUnchanged(r))};goog.dom.safe.setObjectData=function(A,r){goog.dom.asserts.assertIsHTMLObjectElement(A),A.data=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(r)};goog.dom.safe.setScriptSrc=function(A,r){goog.dom.asserts.assertIsHTMLScriptElement(A),A.src=goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(r),(r=goog.getScriptNonce())&&A.setAttribute("nonce",r)};goog.dom.safe.setScriptContent=function(A,r){goog.dom.asserts.assertIsHTMLScriptElement(A),A.text=goog.html.SafeScript.unwrapTrustedScript(r),(r=goog.getScriptNonce())&&A.setAttribute("nonce",r)};goog.dom.safe.setLocationHref=function(A,r){goog.dom.asserts.assertIsLocation(A),r=r instanceof goog.html.SafeUrl?r:goog.html.SafeUrl.sanitizeAssertUnchanged(r),A.href=goog.html.SafeUrl.unwrap(r)};goog.dom.safe.assignLocation=function(A,r){goog.dom.asserts.assertIsLocation(A),r=r instanceof goog.html.SafeUrl?r:goog.html.SafeUrl.sanitizeAssertUnchanged(r),A.assign(goog.html.SafeUrl.unwrap(r))};goog.dom.safe.replaceLocation=function(A,r){r=r instanceof goog.html.SafeUrl?r:goog.html.SafeUrl.sanitizeAssertUnchanged(r),A.replace(goog.html.SafeUrl.unwrap(r))};goog.dom.safe.openInWindow=function(A,r,t,i,o){return A=A instanceof goog.html.SafeUrl?A:goog.html.SafeUrl.sanitizeAssertUnchanged(A),r=r||goog.global,t=t instanceof goog.string.Const?goog.string.Const.unwrap(t):t||"",r.open(goog.html.SafeUrl.unwrap(A),t,i,o)};goog.dom.safe.parseFromStringHtml=function(A,r){return goog.dom.safe.parseFromString(A,r,"text/html")};goog.dom.safe.parseFromString=function(A,r,t){return A.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(r),t)};goog.dom.safe.createImageFromBlob=function(A){if(!/^image\/.*/g.test(A.type))throw Error("goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.");var r=goog.global.URL.createObjectURL(A);return A=new goog.global.Image,A.onload=function(){goog.global.URL.revokeObjectURL(r)},goog.dom.safe.setImageSrc(A,goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from("Image blob URL."),r)),A};goog.string.DETECT_DOUBLE_ESCAPING=!1;goog.string.FORCE_NON_DOM_HTML_UNESCAPING=!1;goog.string.Unicode={NBSP:"\xA0"};goog.string.startsWith=goog.string.internal.startsWith;goog.string.endsWith=goog.string.internal.endsWith;goog.string.caseInsensitiveStartsWith=goog.string.internal.caseInsensitiveStartsWith;goog.string.caseInsensitiveEndsWith=goog.string.internal.caseInsensitiveEndsWith;goog.string.caseInsensitiveEquals=goog.string.internal.caseInsensitiveEquals;goog.string.subs=function(A,r){for(var t=A.split("%s"),i="",o=Array.prototype.slice.call(arguments,1);o.length&&1=A||"\x80"<=A&&"\uFFFD">=A};goog.string.stripNewlines=function(A){return A.replace(/(\r\n|\r|\n)+/g," ")};goog.string.canonicalizeNewlines=function(A){return A.replace(/(\r\n|\r|\n)/g,` -`)};goog.string.normalizeWhitespace=function(A){return A.replace(/\xa0|\s/g," ")};goog.string.normalizeSpaces=function(A){return A.replace(/\xa0|[ \t]+/g," ")};goog.string.collapseBreakingSpaces=function(A){return A.replace(/[\t\r\n ]+/g," ").replace(/^[\t\r\n ]+|[\t\r\n ]+$/g,"")};goog.string.trim=goog.string.internal.trim;goog.string.trimLeft=function(A){return A.replace(/^[\s\xa0]+/,"")};goog.string.trimRight=function(A){return A.replace(/[\s\xa0]+$/,"")};goog.string.caseInsensitiveCompare=goog.string.internal.caseInsensitiveCompare;goog.string.numberAwareCompare_=function(A,r,t){if(A==r)return 0;if(!A)return-1;if(!r)return 1;for(var i=A.toLowerCase().match(t),o=r.toLowerCase().match(t),s=Math.min(i.length,o.length),g=0;g",""":'"'},i=r?r.createElement("div"):goog.global.document.createElement("div");return A.replace(goog.string.HTML_ENTITY_PATTERN_,function(o,s){var g=t[o];return g||(s.charAt(0)=="#"&&(s=+("0"+s.substr(1)),isNaN(s)||(g=String.fromCharCode(s))),g||(goog.dom.safe.setInnerHtml(i,goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from("Single HTML entity."),o+" ")),g=i.firstChild.nodeValue.slice(0,-1)),t[o]=g)})};goog.string.unescapePureXmlEntities_=function(A){return A.replace(/&([^;]+);/g,function(r,t){switch(t){case"amp":return"&";case"lt":return"<";case"gt":return">";case"quot":return'"';default:return t.charAt(0)!="#"||(t=+("0"+t.substr(1)),isNaN(t))?r:String.fromCharCode(t)}})};goog.string.HTML_ENTITY_PATTERN_=/&([^;\s<&]+);?/g;goog.string.whitespaceEscape=function(A,r){return goog.string.newLineToBr(A.replace(/ /g,"  "),r)};goog.string.preserveSpaces=function(A){return A.replace(/(^|[\n ]) /g,"$1"+goog.string.Unicode.NBSP)};goog.string.stripQuotes=function(A,r){for(var t=r.length,i=0;ir&&(A=A.substring(0,r-3)+"..."),t&&(A=goog.string.htmlEscape(A)),A};goog.string.truncateMiddle=function(A,r,t,i){if(t&&(A=goog.string.unescapeEntities(A)),i&&A.length>r){i>r&&(i=r);var o=A.length-i;A=A.substring(0,r-i)+"..."+A.substring(o)}else A.length>r&&(i=Math.floor(r/2),o=A.length-i,A=A.substring(0,i+r%2)+"..."+A.substring(o));return t&&(A=goog.string.htmlEscape(A)),A};goog.string.specialEscapeChars_={"\0":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\x0B",'"':'\\"',"\\":"\\\\","<":"\\u003C"};goog.string.jsEscapeCache_={"'":"\\'"};goog.string.quote=function(A){A=String(A);for(var r=['"'],t=0;to?i:goog.string.escapeChar(i))}return r.push('"'),r.join("")};goog.string.escapeString=function(A){for(var r=[],t=0;tr)var t=A;else 256>r?(t="\\x",(16>r||256r&&(t+="0")),t+=r.toString(16).toUpperCase();return goog.string.jsEscapeCache_[A]=t};goog.string.contains=goog.string.internal.contains;goog.string.caseInsensitiveContains=goog.string.internal.caseInsensitiveContains;goog.string.countOf=function(A,r){return A&&r?A.split(r).length-1:0};goog.string.removeAt=function(A,r,t){var i=A;return 0<=r&&r>>0;return r};goog.string.uniqueStringCounter_=2147483648*Math.random()|0;goog.string.createUniqueString=function(){return"goog_"+goog.string.uniqueStringCounter_++};goog.string.toNumber=function(A){var r=Number(A);return r==0&&goog.string.isEmptyOrWhitespace(A)?NaN:r};goog.string.isLowerCamelCase=function(A){return/^[a-z]+([A-Z][a-z]*)*$/.test(A)};goog.string.isUpperCamelCase=function(A){return/^([A-Z][a-z]*)+$/.test(A)};goog.string.toCamelCase=function(A){return String(A).replace(/\-([a-z])/g,function(r,t){return t.toUpperCase()})};goog.string.toSelectorCase=function(A){return String(A).replace(/([A-Z])/g,"-$1").toLowerCase()};goog.string.toTitleCase=function(A,r){return r=typeof r=="string"?goog.string.regExpEscape(r):"\\s",A.replace(new RegExp("(^"+(r?"|["+r+"]+":"")+")([a-z])","g"),function(t,i,o){return i+o.toUpperCase()})};goog.string.capitalize=function(A){return String(A.charAt(0)).toUpperCase()+String(A.substr(1)).toLowerCase()};goog.string.parseInt=function(A){return isFinite(A)&&(A=String(A)),typeof A=="string"?/^\s*-?0x/i.test(A)?parseInt(A,16):parseInt(A,10):NaN};goog.string.splitLimit=function(A,r,t){A=A.split(r);for(var i=[];0t&&(t=o)}return t==-1?A:A.slice(t+1)};goog.string.editDistance=function(A,r){var t=[],i=[];if(A==r)return 0;if(!A.length||!r.length)return Math.max(A.length,r.length);for(var o=0;oparseFloat(A))?String(r):A};goog.userAgent.getVersionRegexResult_=function(){var A=goog.userAgent.getUserAgentString();if(goog.userAgent.GECKO)return/rv:([^\);]+)(\)|;)/.exec(A);if(goog.userAgent.EDGE)return/Edge\/([\d\.]+)/.exec(A);if(goog.userAgent.IE)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(A);if(goog.userAgent.WEBKIT)return/WebKit\/(\S+)/.exec(A);if(goog.userAgent.OPERA)return/(?:Version)[ \/]?(\S+)/.exec(A)};goog.userAgent.getDocumentMode_=function(){var A=goog.global.document;return A?A.documentMode:void 0};goog.userAgent.VERSION=goog.userAgent.determineVersion_();goog.userAgent.compare=function(A,r){return goog.string.compareVersions(A,r)};goog.userAgent.isVersionOrHigherCache_={};goog.userAgent.isVersionOrHigher=function(A){return goog.userAgent.ASSUME_ANY_VERSION||goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_,A,function(){return 0<=goog.string.compareVersions(goog.userAgent.VERSION,A)})};goog.userAgent.isVersion=goog.userAgent.isVersionOrHigher;goog.userAgent.isDocumentModeOrHigher=function(A){return Number(goog.userAgent.DOCUMENT_MODE)>=A};goog.userAgent.isDocumentMode=goog.userAgent.isDocumentModeOrHigher;goog.userAgent.DOCUMENT_MODE=function(){if(goog.global.document&&goog.userAgent.IE){var A=goog.userAgent.getDocumentMode_();return A||parseInt(goog.userAgent.VERSION,10)||void 0}}();goog.userAgent.product={};goog.userAgent.product.ASSUME_FIREFOX=!1;goog.userAgent.product.ASSUME_IPHONE=!1;goog.userAgent.product.ASSUME_IPAD=!1;goog.userAgent.product.ASSUME_ANDROID=!1;goog.userAgent.product.ASSUME_CHROME=!1;goog.userAgent.product.ASSUME_SAFARI=!1;goog.userAgent.product.PRODUCT_KNOWN_=goog.userAgent.ASSUME_IE||goog.userAgent.ASSUME_EDGE||goog.userAgent.ASSUME_OPERA||goog.userAgent.product.ASSUME_FIREFOX||goog.userAgent.product.ASSUME_IPHONE||goog.userAgent.product.ASSUME_IPAD||goog.userAgent.product.ASSUME_ANDROID||goog.userAgent.product.ASSUME_CHROME||goog.userAgent.product.ASSUME_SAFARI;goog.userAgent.product.OPERA=goog.userAgent.OPERA;goog.userAgent.product.IE=goog.userAgent.IE;goog.userAgent.product.EDGE=goog.userAgent.EDGE;goog.userAgent.product.FIREFOX=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_FIREFOX:goog.labs.userAgent.browser.isFirefox();goog.userAgent.product.isIphoneOrIpod_=function(){return goog.labs.userAgent.platform.isIphone()||goog.labs.userAgent.platform.isIpod()};goog.userAgent.product.IPHONE=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_IPHONE:goog.userAgent.product.isIphoneOrIpod_();goog.userAgent.product.IPAD=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_IPAD:goog.labs.userAgent.platform.isIpad();goog.userAgent.product.ANDROID=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_ANDROID:goog.labs.userAgent.browser.isAndroidBrowser();goog.userAgent.product.CHROME=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_CHROME:goog.labs.userAgent.browser.isChrome();goog.userAgent.product.isSafariDesktop_=function(){return goog.labs.userAgent.browser.isSafari()&&!goog.labs.userAgent.platform.isIos()};goog.userAgent.product.SAFARI=goog.userAgent.product.PRODUCT_KNOWN_?goog.userAgent.product.ASSUME_SAFARI:goog.userAgent.product.isSafariDesktop_();goog.crypt.base64={};goog.crypt.base64.DEFAULT_ALPHABET_COMMON_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";goog.crypt.base64.ENCODED_VALS=goog.crypt.base64.DEFAULT_ALPHABET_COMMON_+"+/=";goog.crypt.base64.ENCODED_VALS_WEBSAFE=goog.crypt.base64.DEFAULT_ALPHABET_COMMON_+"-_.";goog.crypt.base64.Alphabet={DEFAULT:0,NO_PADDING:1,WEBSAFE:2,WEBSAFE_DOT_PADDING:3,WEBSAFE_NO_PADDING:4};goog.crypt.base64.paddingChars_="=.";goog.crypt.base64.isPadding_=function(A){return goog.string.contains(goog.crypt.base64.paddingChars_,A)};goog.crypt.base64.byteToCharMaps_={};goog.crypt.base64.charToByteMap_=null;goog.crypt.base64.ASSUME_NATIVE_SUPPORT_=goog.userAgent.GECKO||goog.userAgent.WEBKIT&&!goog.userAgent.product.SAFARI||goog.userAgent.OPERA;goog.crypt.base64.HAS_NATIVE_ENCODE_=goog.crypt.base64.ASSUME_NATIVE_SUPPORT_||typeof goog.global.btoa=="function";goog.crypt.base64.HAS_NATIVE_DECODE_=goog.crypt.base64.ASSUME_NATIVE_SUPPORT_||!goog.userAgent.product.SAFARI&&!goog.userAgent.IE&&typeof goog.global.atob=="function";goog.crypt.base64.encodeByteArray=function(A,r){goog.asserts.assert(goog.isArrayLike(A),"encodeByteArray takes an array as a parameter"),r===void 0&&(r=goog.crypt.base64.Alphabet.DEFAULT),goog.crypt.base64.init_(),r=goog.crypt.base64.byteToCharMaps_[r];for(var t=[],i=0;i>2;o=(o&3)<<4|g>>4,g=(g&15)<<2|p>>6,p&=63,E||(p=64,s||(g=64)),t.push(r[B],r[o],r[g]||"",r[p]||"")}return t.join("")};goog.crypt.base64.encodeString=function(A,r){return goog.crypt.base64.HAS_NATIVE_ENCODE_&&!r?goog.global.btoa(A):goog.crypt.base64.encodeByteArray(goog.crypt.stringToByteArray(A),r)};goog.crypt.base64.decodeString=function(A,r){if(goog.crypt.base64.HAS_NATIVE_DECODE_&&!r)return goog.global.atob(A);var t="";return goog.crypt.base64.decodeStringInternal_(A,function(i){t+=String.fromCharCode(i)}),t};goog.crypt.base64.decodeStringToByteArray=function(A,r){var t=[];return goog.crypt.base64.decodeStringInternal_(A,function(i){t.push(i)}),t};goog.crypt.base64.decodeStringToUint8Array=function(A){goog.asserts.assert(!goog.userAgent.IE||goog.userAgent.isVersionOrHigher("10"),"Browser does not support typed arrays");var r=A.length,t=3*r/4;t%3?t=Math.floor(t):goog.crypt.base64.isPadding_(A[r-1])&&(t=goog.crypt.base64.isPadding_(A[r-2])?t-2:t-1);var i=new Uint8Array(t),o=0;return goog.crypt.base64.decodeStringInternal_(A,function(s){i[o++]=s}),i.subarray(0,o)};goog.crypt.base64.decodeStringInternal_=function(A,r){function t(p){for(;i>4),g!=64&&(r(s<<4&240|g>>2),E!=64&&r(g<<6&192|E))}};goog.crypt.base64.init_=function(){if(!goog.crypt.base64.charToByteMap_){goog.crypt.base64.charToByteMap_={};for(var A=goog.crypt.base64.DEFAULT_ALPHABET_COMMON_.split(""),r=["+/=","+/","-_=","-_.","-_"],t=0;5>t;t++){var i=A.concat(r[t].split(""));goog.crypt.base64.byteToCharMaps_[t]=i;for(var o=0;o>>0;A=Math.floor((A-r)/jspb.BinaryConstants.TWO_TO_32)>>>0,jspb.utils.split64Low=r,jspb.utils.split64High=A};jspb.utils.splitInt64=function(A){var r=0>A;A=Math.abs(A);var t=A>>>0;A=Math.floor((A-t)/jspb.BinaryConstants.TWO_TO_32),A>>>=0,r&&(A=~A>>>0,t=(~t>>>0)+1,4294967295A;A=2*Math.abs(A),jspb.utils.splitUint64(A),A=jspb.utils.split64Low;var t=jspb.utils.split64High;r&&(A==0?t==0?t=A=4294967295:(t--,A=4294967295):A--),jspb.utils.split64Low=A,jspb.utils.split64High=t};jspb.utils.splitFloat32=function(A){var r=0>A?1:0;if(A=r?-A:A,A===0)0<1/A?(jspb.utils.split64High=0,jspb.utils.split64Low=0):(jspb.utils.split64High=0,jspb.utils.split64Low=2147483648);else if(isNaN(A))jspb.utils.split64High=0,jspb.utils.split64Low=2147483647;else if(A>jspb.BinaryConstants.FLOAT32_MAX)jspb.utils.split64High=0,jspb.utils.split64Low=(r<<31|2139095040)>>>0;else if(A>>0;else{var t=Math.floor(Math.log(A)/Math.LN2);A*=Math.pow(2,-t),A=Math.round(A*jspb.BinaryConstants.TWO_TO_23),16777216<=A&&++t,jspb.utils.split64High=0,jspb.utils.split64Low=(r<<31|t+127<<23|A&8388607)>>>0}};jspb.utils.splitFloat64=function(A){var r=0>A?1:0;if(A=r?-A:A,A===0)jspb.utils.split64High=0<1/A?0:2147483648,jspb.utils.split64Low=0;else if(isNaN(A))jspb.utils.split64High=2147483647,jspb.utils.split64Low=4294967295;else if(A>jspb.BinaryConstants.FLOAT64_MAX)jspb.utils.split64High=(r<<31|2146435072)>>>0,jspb.utils.split64Low=0;else if(A>>0,jspb.utils.split64Low=t>>>0}else{t=A;var i=0;if(2<=t)for(;2<=t&&1023>i;)i++,t/=2;else for(;1>t&&-1022>>0,jspb.utils.split64High=(r<<31|i+1023<<20|A)>>>0,jspb.utils.split64Low=t}};jspb.utils.splitHash64=function(A){var r=A.charCodeAt(0),t=A.charCodeAt(1),i=A.charCodeAt(2),o=A.charCodeAt(3),s=A.charCodeAt(4),g=A.charCodeAt(5),E=A.charCodeAt(6);A=A.charCodeAt(7),jspb.utils.split64Low=r+(t<<8)+(i<<16)+(o<<24)>>>0,jspb.utils.split64High=s+(g<<8)+(E<<16)+(A<<24)>>>0};jspb.utils.joinUint64=function(A,r){return r*jspb.BinaryConstants.TWO_TO_32+(A>>>0)};jspb.utils.joinInt64=function(A,r){var t=r&2147483648;return t&&(A=~A+1>>>0,r=~r>>>0,A==0&&(r=r+1>>>0)),A=jspb.utils.joinUint64(A,r),t?-A:A};jspb.utils.toZigzag64=function(A,r,t){var i=r>>31;return t(A<<1^i,(r<<1|A>>>31)^i)};jspb.utils.joinZigzag64=function(A,r){return jspb.utils.fromZigzag64(A,r,jspb.utils.joinInt64)};jspb.utils.fromZigzag64=function(A,r,t){var i=-(A&1);return t((A>>>1|r<<31)^i,r>>>1^i)};jspb.utils.joinFloat32=function(A,r){r=2*(A>>31)+1;var t=A>>>23&255;return A&=8388607,t==255?A?NaN:1/0*r:t==0?r*Math.pow(2,-149)*A:r*Math.pow(2,t-150)*(A+Math.pow(2,23))};jspb.utils.joinFloat64=function(A,r){var t=2*(r>>31)+1,i=r>>>20&2047;return A=jspb.BinaryConstants.TWO_TO_32*(r&1048575)+A,i==2047?A?NaN:1/0*t:i==0?t*Math.pow(2,-1074)*A:t*Math.pow(2,i-1075)*(A+jspb.BinaryConstants.TWO_TO_52)};jspb.utils.joinHash64=function(A,r){return String.fromCharCode(A>>>0&255,A>>>8&255,A>>>16&255,A>>>24&255,r>>>0&255,r>>>8&255,r>>>16&255,r>>>24&255)};jspb.utils.DIGITS="0123456789abcdef".split("");jspb.utils.ZERO_CHAR_CODE_=48;jspb.utils.A_CHAR_CODE_=97;jspb.utils.joinUnsignedDecimalString=function(A,r){function t(o,s){return o=o?String(o):"",s?"0000000".slice(o.length)+o:o}if(2097151>=r)return""+jspb.utils.joinUint64(A,r);var i=(A>>>24|r<<8)>>>0&16777215;return r=r>>16&65535,A=(A&16777215)+6777216*i+6710656*r,i+=8147497*r,r*=2,1e7<=A&&(i+=Math.floor(A/1e7),A%=1e7),1e7<=i&&(r+=Math.floor(i/1e7),i%=1e7),t(r,0)+t(i,r)+t(A,1)};jspb.utils.joinSignedDecimalString=function(A,r){var t=r&2147483648;return t&&(A=~A+1>>>0,r=~r+(A==0?1:0)>>>0),A=jspb.utils.joinUnsignedDecimalString(A,r),t?"-"+A:A};jspb.utils.hash64ToDecimalString=function(A,r){jspb.utils.splitHash64(A),A=jspb.utils.split64Low;var t=jspb.utils.split64High;return r?jspb.utils.joinSignedDecimalString(A,t):jspb.utils.joinUnsignedDecimalString(A,t)};jspb.utils.hash64ArrayToDecimalStrings=function(A,r){for(var t=Array(A.length),i=0;ip&&(g!==1||0>>=8}function t(){for(var g=0;8>g;g++)o[g]=~o[g]&255}jspb.asserts.assert(0A?jspb.utils.ZERO_CHAR_CODE_+A:jspb.utils.A_CHAR_CODE_-10+A)};jspb.utils.fromHexCharCode_=function(A){return A>=jspb.utils.A_CHAR_CODE_?A-jspb.utils.A_CHAR_CODE_+10:A-jspb.utils.ZERO_CHAR_CODE_};jspb.utils.hash64ToHexString=function(A){var r=Array(18);r[0]="0",r[1]="x";for(var t=0;8>t;t++){var i=A.charCodeAt(7-t);r[2*t+2]=jspb.utils.toHexDigit_(i>>4),r[2*t+3]=jspb.utils.toHexDigit_(i&15)}return r.join("")};jspb.utils.hexStringToHash64=function(A){A=A.toLowerCase(),jspb.asserts.assert(A.length==18),jspb.asserts.assert(A[0]=="0"),jspb.asserts.assert(A[1]=="x");for(var r="",t=0;8>t;t++){var i=jspb.utils.fromHexCharCode_(A.charCodeAt(2*t+2)),o=jspb.utils.fromHexCharCode_(A.charCodeAt(2*t+3));r=String.fromCharCode(16*i+o)+r}return r};jspb.utils.hash64ToNumber=function(A,r){jspb.utils.splitHash64(A),A=jspb.utils.split64Low;var t=jspb.utils.split64High;return r?jspb.utils.joinInt64(A,t):jspb.utils.joinUint64(A,t)};jspb.utils.numberToHash64=function(A){return jspb.utils.splitInt64(A),jspb.utils.joinHash64(jspb.utils.split64Low,jspb.utils.split64High)};jspb.utils.countVarints=function(A,r,t){for(var i=0,o=r;o>7;return t-r-i};jspb.utils.countVarintFields=function(A,r,t,i){var o=0;if(i=8*i+jspb.BinaryConstants.WireType.VARINT,128>i)for(;r>=7}if(A[r++]!=s)break;for(o++;s=A[r++],(s&128)!=0;);}return o};jspb.utils.countFixedFields_=function(A,r,t,i,o){var s=0;if(128>i)for(;r>=7}if(A[r++]!=g)break;s++,r+=o}return s};jspb.utils.countFixed32Fields=function(A,r,t,i){return jspb.utils.countFixedFields_(A,r,t,8*i+jspb.BinaryConstants.WireType.FIXED32,4)};jspb.utils.countFixed64Fields=function(A,r,t,i){return jspb.utils.countFixedFields_(A,r,t,8*i+jspb.BinaryConstants.WireType.FIXED64,8)};jspb.utils.countDelimitedFields=function(A,r,t,i){var o=0;for(i=8*i+jspb.BinaryConstants.WireType.DELIMITED;r>=7}if(A[r++]!=s)break;o++;for(var g=0,E=1;s=A[r++],g+=(s&127)*E,E*=128,(s&128)!=0;);r+=g}return o};jspb.utils.debugBytesToTextFormat=function(A){var r='"';if(A){A=jspb.utils.byteSourceToUint8Array(A);for(var t=0;tA[t]&&(r+="0"),r+=A[t].toString(16)}return r+'"'};jspb.utils.debugScalarToTextFormat=function(A){return typeof A=="string"?goog.string.quote(A):A.toString()};jspb.utils.stringToByteArray=function(A){for(var r=new Uint8Array(A.length),t=0;tjspb.BinaryDecoder.instanceCache_.length&&jspb.BinaryDecoder.instanceCache_.push(this)};jspb.BinaryDecoder.prototype.clone=function(){return jspb.BinaryDecoder.alloc(this.bytes_,this.start_,this.end_-this.start_)};jspb.BinaryDecoder.prototype.clear=function(){this.bytes_=null,this.cursor_=this.end_=this.start_=0,this.error_=!1};jspb.BinaryDecoder.prototype.getBuffer=function(){return this.bytes_};jspb.BinaryDecoder.prototype.setBlock=function(A,r,t){this.bytes_=jspb.utils.byteSourceToUint8Array(A),this.start_=r!==void 0?r:0,this.end_=t!==void 0?this.start_+t:this.bytes_.length,this.cursor_=this.start_};jspb.BinaryDecoder.prototype.getEnd=function(){return this.end_};jspb.BinaryDecoder.prototype.setEnd=function(A){this.end_=A};jspb.BinaryDecoder.prototype.reset=function(){this.cursor_=this.start_};jspb.BinaryDecoder.prototype.getCursor=function(){return this.cursor_};jspb.BinaryDecoder.prototype.setCursor=function(A){this.cursor_=A};jspb.BinaryDecoder.prototype.advance=function(A){this.cursor_+=A,jspb.asserts.assert(this.cursor_<=this.end_)};jspb.BinaryDecoder.prototype.atEnd=function(){return this.cursor_==this.end_};jspb.BinaryDecoder.prototype.pastEnd=function(){return this.cursor_>this.end_};jspb.BinaryDecoder.prototype.getError=function(){return this.error_||0>this.cursor_||this.cursor_>this.end_};jspb.BinaryDecoder.prototype.readSplitVarint64=function(A){for(var r=128,t=0,i=0,o=0;4>o&&128<=r;o++)r=this.bytes_[this.cursor_++],t|=(r&127)<<7*o;if(128<=r&&(r=this.bytes_[this.cursor_++],t|=(r&127)<<28,i|=(r&127)>>4),128<=r)for(o=0;5>o&&128<=r;o++)r=this.bytes_[this.cursor_++],i|=(r&127)<<7*o+3;if(128>r)return A(t>>>0,i>>>0);jspb.asserts.fail("Failed to read varint, encoding is invalid."),this.error_=!0};jspb.BinaryDecoder.prototype.readSplitZigzagVarint64=function(A){return this.readSplitVarint64(function(r,t){return jspb.utils.fromZigzag64(r,t,A)})};jspb.BinaryDecoder.prototype.readSplitFixed64=function(A){var r=this.bytes_,t=this.cursor_;this.cursor_+=8;for(var i=0,o=0,s=t+7;s>=t;s--)i=i<<8|r[s],o=o<<8|r[s+4];return A(i,o)};jspb.BinaryDecoder.prototype.skipVarint=function(){for(;this.bytes_[this.cursor_]&128;)this.cursor_++;this.cursor_++};jspb.BinaryDecoder.prototype.unskipVarint=function(A){for(;128>>=7;this.cursor_--};jspb.BinaryDecoder.prototype.readUnsignedVarint32=function(){var A=this.bytes_,r=A[this.cursor_+0],t=r&127;return 128>r?(this.cursor_+=1,jspb.asserts.assert(this.cursor_<=this.end_),t):(r=A[this.cursor_+1],t|=(r&127)<<7,128>r?(this.cursor_+=2,jspb.asserts.assert(this.cursor_<=this.end_),t):(r=A[this.cursor_+2],t|=(r&127)<<14,128>r?(this.cursor_+=3,jspb.asserts.assert(this.cursor_<=this.end_),t):(r=A[this.cursor_+3],t|=(r&127)<<21,128>r?(this.cursor_+=4,jspb.asserts.assert(this.cursor_<=this.end_),t):(r=A[this.cursor_+4],t|=(r&15)<<28,128>r?(this.cursor_+=5,jspb.asserts.assert(this.cursor_<=this.end_),t>>>0):(this.cursor_+=5,128<=A[this.cursor_++]&&128<=A[this.cursor_++]&&128<=A[this.cursor_++]&&128<=A[this.cursor_++]&&128<=A[this.cursor_++]&&jspb.asserts.assert(!1),jspb.asserts.assert(this.cursor_<=this.end_),t)))))};jspb.BinaryDecoder.prototype.readSignedVarint32=function(){return~~this.readUnsignedVarint32()};jspb.BinaryDecoder.prototype.readUnsignedVarint32String=function(){return this.readUnsignedVarint32().toString()};jspb.BinaryDecoder.prototype.readSignedVarint32String=function(){return this.readSignedVarint32().toString()};jspb.BinaryDecoder.prototype.readZigzagVarint32=function(){var A=this.readUnsignedVarint32();return A>>>1^-(A&1)};jspb.BinaryDecoder.prototype.readUnsignedVarint64=function(){return this.readSplitVarint64(jspb.utils.joinUint64)};jspb.BinaryDecoder.prototype.readUnsignedVarint64String=function(){return this.readSplitVarint64(jspb.utils.joinUnsignedDecimalString)};jspb.BinaryDecoder.prototype.readSignedVarint64=function(){return this.readSplitVarint64(jspb.utils.joinInt64)};jspb.BinaryDecoder.prototype.readSignedVarint64String=function(){return this.readSplitVarint64(jspb.utils.joinSignedDecimalString)};jspb.BinaryDecoder.prototype.readZigzagVarint64=function(){return this.readSplitVarint64(jspb.utils.joinZigzag64)};jspb.BinaryDecoder.prototype.readZigzagVarintHash64=function(){return this.readSplitZigzagVarint64(jspb.utils.joinHash64)};jspb.BinaryDecoder.prototype.readZigzagVarint64String=function(){return this.readSplitZigzagVarint64(jspb.utils.joinSignedDecimalString)};jspb.BinaryDecoder.prototype.readUint8=function(){var A=this.bytes_[this.cursor_+0];return this.cursor_+=1,jspb.asserts.assert(this.cursor_<=this.end_),A};jspb.BinaryDecoder.prototype.readUint16=function(){var A=this.bytes_[this.cursor_+0],r=this.bytes_[this.cursor_+1];return this.cursor_+=2,jspb.asserts.assert(this.cursor_<=this.end_),A<<0|r<<8};jspb.BinaryDecoder.prototype.readUint32=function(){var A=this.bytes_[this.cursor_+0],r=this.bytes_[this.cursor_+1],t=this.bytes_[this.cursor_+2],i=this.bytes_[this.cursor_+3];return this.cursor_+=4,jspb.asserts.assert(this.cursor_<=this.end_),(A<<0|r<<8|t<<16|i<<24)>>>0};jspb.BinaryDecoder.prototype.readUint64=function(){var A=this.readUint32(),r=this.readUint32();return jspb.utils.joinUint64(A,r)};jspb.BinaryDecoder.prototype.readUint64String=function(){var A=this.readUint32(),r=this.readUint32();return jspb.utils.joinUnsignedDecimalString(A,r)};jspb.BinaryDecoder.prototype.readInt8=function(){var A=this.bytes_[this.cursor_+0];return this.cursor_+=1,jspb.asserts.assert(this.cursor_<=this.end_),A<<24>>24};jspb.BinaryDecoder.prototype.readInt16=function(){var A=this.bytes_[this.cursor_+0],r=this.bytes_[this.cursor_+1];return this.cursor_+=2,jspb.asserts.assert(this.cursor_<=this.end_),(A<<0|r<<8)<<16>>16};jspb.BinaryDecoder.prototype.readInt32=function(){var A=this.bytes_[this.cursor_+0],r=this.bytes_[this.cursor_+1],t=this.bytes_[this.cursor_+2],i=this.bytes_[this.cursor_+3];return this.cursor_+=4,jspb.asserts.assert(this.cursor_<=this.end_),A<<0|r<<8|t<<16|i<<24};jspb.BinaryDecoder.prototype.readInt64=function(){var A=this.readUint32(),r=this.readUint32();return jspb.utils.joinInt64(A,r)};jspb.BinaryDecoder.prototype.readInt64String=function(){var A=this.readUint32(),r=this.readUint32();return jspb.utils.joinSignedDecimalString(A,r)};jspb.BinaryDecoder.prototype.readFloat=function(){var A=this.readUint32();return jspb.utils.joinFloat32(A,0)};jspb.BinaryDecoder.prototype.readDouble=function(){var A=this.readUint32(),r=this.readUint32();return jspb.utils.joinFloat64(A,r)};jspb.BinaryDecoder.prototype.readBool=function(){return!!this.bytes_[this.cursor_++]};jspb.BinaryDecoder.prototype.readEnum=function(){return this.readSignedVarint32()};jspb.BinaryDecoder.prototype.readString=function(A){var r=this.bytes_,t=this.cursor_;A=t+A;for(var i=[],o="";ts)i.push(s);else{if(192>s)continue;if(224>s){var g=r[t++];i.push((s&31)<<6|g&63)}else if(240>s){g=r[t++];var E=r[t++];i.push((s&15)<<12|(g&63)<<6|E&63)}else if(248>s){g=r[t++],E=r[t++];var p=r[t++];s=(s&7)<<18|(g&63)<<12|(E&63)<<6|p&63,s-=65536,i.push((s>>10&1023)+55296,(s&1023)+56320)}}8192<=i.length&&(o+=String.fromCharCode.apply(null,i),i.length=0)}return o+=goog.crypt.byteArrayToString(i),this.cursor_=t,o};jspb.BinaryDecoder.prototype.readStringWithLength=function(){var A=this.readUnsignedVarint32();return this.readString(A)};jspb.BinaryDecoder.prototype.readBytes=function(A){if(0>A||this.cursor_+A>this.bytes_.length)return this.error_=!0,jspb.asserts.fail("Invalid byte length!"),new Uint8Array(0);var r=this.bytes_.subarray(this.cursor_,this.cursor_+A);return this.cursor_+=A,jspb.asserts.assert(this.cursor_<=this.end_),r};jspb.BinaryDecoder.prototype.readVarintHash64=function(){return this.readSplitVarint64(jspb.utils.joinHash64)};jspb.BinaryDecoder.prototype.readFixedHash64=function(){var A=this.bytes_,r=this.cursor_,t=A[r+0],i=A[r+1],o=A[r+2],s=A[r+3],g=A[r+4],E=A[r+5],p=A[r+6];return A=A[r+7],this.cursor_+=8,String.fromCharCode(t,i,o,s,g,E,p,A)};jspb.BinaryReader=function(A,r,t){this.decoder_=jspb.BinaryDecoder.alloc(A,r,t),this.fieldCursor_=this.decoder_.getCursor(),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID,this.error_=!1,this.readCallbacks_=null};jspb.BinaryReader.instanceCache_=[];jspb.BinaryReader.alloc=function(A,r,t){if(jspb.BinaryReader.instanceCache_.length){var i=jspb.BinaryReader.instanceCache_.pop();return A&&i.decoder_.setBlock(A,r,t),i}return new jspb.BinaryReader(A,r,t)};jspb.BinaryReader.prototype.alloc=jspb.BinaryReader.alloc;jspb.BinaryReader.prototype.free=function(){this.decoder_.clear(),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID,this.error_=!1,this.readCallbacks_=null,100>jspb.BinaryReader.instanceCache_.length&&jspb.BinaryReader.instanceCache_.push(this)};jspb.BinaryReader.prototype.getFieldCursor=function(){return this.fieldCursor_};jspb.BinaryReader.prototype.getCursor=function(){return this.decoder_.getCursor()};jspb.BinaryReader.prototype.getBuffer=function(){return this.decoder_.getBuffer()};jspb.BinaryReader.prototype.getFieldNumber=function(){return this.nextField_};goog.exportProperty(jspb.BinaryReader.prototype,"getFieldNumber",jspb.BinaryReader.prototype.getFieldNumber);jspb.BinaryReader.prototype.getWireType=function(){return this.nextWireType_};jspb.BinaryReader.prototype.isDelimited=function(){return this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED};goog.exportProperty(jspb.BinaryReader.prototype,"isDelimited",jspb.BinaryReader.prototype.isDelimited);jspb.BinaryReader.prototype.isEndGroup=function(){return this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP};goog.exportProperty(jspb.BinaryReader.prototype,"isEndGroup",jspb.BinaryReader.prototype.isEndGroup);jspb.BinaryReader.prototype.getError=function(){return this.error_||this.decoder_.getError()};jspb.BinaryReader.prototype.setBlock=function(A,r,t){this.decoder_.setBlock(A,r,t),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID};jspb.BinaryReader.prototype.reset=function(){this.decoder_.reset(),this.nextField_=jspb.BinaryConstants.INVALID_FIELD_NUMBER,this.nextWireType_=jspb.BinaryConstants.WireType.INVALID};jspb.BinaryReader.prototype.advance=function(A){this.decoder_.advance(A)};jspb.BinaryReader.prototype.nextField=function(){if(this.decoder_.atEnd())return!1;if(this.getError())return jspb.asserts.fail("Decoder hit an error"),!1;this.fieldCursor_=this.decoder_.getCursor();var A=this.decoder_.readUnsignedVarint32(),r=A>>>3;return A&=7,A!=jspb.BinaryConstants.WireType.VARINT&&A!=jspb.BinaryConstants.WireType.FIXED32&&A!=jspb.BinaryConstants.WireType.FIXED64&&A!=jspb.BinaryConstants.WireType.DELIMITED&&A!=jspb.BinaryConstants.WireType.START_GROUP&&A!=jspb.BinaryConstants.WireType.END_GROUP?(jspb.asserts.fail("Invalid wire type: %s (at position %s)",A,this.fieldCursor_),this.error_=!0,!1):(this.nextField_=r,this.nextWireType_=A,!0)};goog.exportProperty(jspb.BinaryReader.prototype,"nextField",jspb.BinaryReader.prototype.nextField);jspb.BinaryReader.prototype.unskipHeader=function(){this.decoder_.unskipVarint(this.nextField_<<3|this.nextWireType_)};jspb.BinaryReader.prototype.skipMatchingFields=function(){var A=this.nextField_;for(this.unskipHeader();this.nextField()&&this.getFieldNumber()==A;)this.skipField();this.decoder_.atEnd()||this.unskipHeader()};jspb.BinaryReader.prototype.skipVarintField=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.VARINT?(jspb.asserts.fail("Invalid wire type for skipVarintField"),this.skipField()):this.decoder_.skipVarint()};jspb.BinaryReader.prototype.skipDelimitedField=function(){if(this.nextWireType_!=jspb.BinaryConstants.WireType.DELIMITED)jspb.asserts.fail("Invalid wire type for skipDelimitedField"),this.skipField();else{var A=this.decoder_.readUnsignedVarint32();this.decoder_.advance(A)}};jspb.BinaryReader.prototype.skipFixed32Field=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.FIXED32?(jspb.asserts.fail("Invalid wire type for skipFixed32Field"),this.skipField()):this.decoder_.advance(4)};jspb.BinaryReader.prototype.skipFixed64Field=function(){this.nextWireType_!=jspb.BinaryConstants.WireType.FIXED64?(jspb.asserts.fail("Invalid wire type for skipFixed64Field"),this.skipField()):this.decoder_.advance(8)};jspb.BinaryReader.prototype.skipGroup=function(){var A=this.nextField_;do{if(!this.nextField()){jspb.asserts.fail("Unmatched start-group tag: stream EOF"),this.error_=!0;break}if(this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP){this.nextField_!=A&&(jspb.asserts.fail("Unmatched end-group tag"),this.error_=!0);break}this.skipField()}while(1)};jspb.BinaryReader.prototype.skipField=function(){switch(this.nextWireType_){case jspb.BinaryConstants.WireType.VARINT:this.skipVarintField();break;case jspb.BinaryConstants.WireType.FIXED64:this.skipFixed64Field();break;case jspb.BinaryConstants.WireType.DELIMITED:this.skipDelimitedField();break;case jspb.BinaryConstants.WireType.FIXED32:this.skipFixed32Field();break;case jspb.BinaryConstants.WireType.START_GROUP:this.skipGroup();break;default:jspb.asserts.fail("Invalid wire encoding for field.")}};jspb.BinaryReader.prototype.registerReadCallback=function(A,r){this.readCallbacks_===null&&(this.readCallbacks_={}),jspb.asserts.assert(!this.readCallbacks_[A]),this.readCallbacks_[A]=r};jspb.BinaryReader.prototype.runReadCallback=function(A){return jspb.asserts.assert(this.readCallbacks_!==null),A=this.readCallbacks_[A],jspb.asserts.assert(A),A(this)};jspb.BinaryReader.prototype.readAny=function(A){this.nextWireType_=jspb.BinaryConstants.FieldTypeToWireType(A);var r=jspb.BinaryConstants.FieldType;switch(A){case r.DOUBLE:return this.readDouble();case r.FLOAT:return this.readFloat();case r.INT64:return this.readInt64();case r.UINT64:return this.readUint64();case r.INT32:return this.readInt32();case r.FIXED64:return this.readFixed64();case r.FIXED32:return this.readFixed32();case r.BOOL:return this.readBool();case r.STRING:return this.readString();case r.GROUP:jspb.asserts.fail("Group field type not supported in readAny()");case r.MESSAGE:jspb.asserts.fail("Message field type not supported in readAny()");case r.BYTES:return this.readBytes();case r.UINT32:return this.readUint32();case r.ENUM:return this.readEnum();case r.SFIXED32:return this.readSfixed32();case r.SFIXED64:return this.readSfixed64();case r.SINT32:return this.readSint32();case r.SINT64:return this.readSint64();case r.FHASH64:return this.readFixedHash64();case r.VHASH64:return this.readVarintHash64();default:jspb.asserts.fail("Invalid field type in readAny()")}return 0};jspb.BinaryReader.prototype.readMessage=function(A,r){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var t=this.decoder_.getEnd(),i=this.decoder_.readUnsignedVarint32();i=this.decoder_.getCursor()+i,this.decoder_.setEnd(i),r(A,this),this.decoder_.setCursor(i),this.decoder_.setEnd(t)};goog.exportProperty(jspb.BinaryReader.prototype,"readMessage",jspb.BinaryReader.prototype.readMessage);jspb.BinaryReader.prototype.readGroup=function(A,r,t){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.START_GROUP),jspb.asserts.assert(this.nextField_==A),t(r,this),this.error_||this.nextWireType_==jspb.BinaryConstants.WireType.END_GROUP||(jspb.asserts.fail("Group submessage did not end with an END_GROUP tag"),this.error_=!0)};goog.exportProperty(jspb.BinaryReader.prototype,"readGroup",jspb.BinaryReader.prototype.readGroup);jspb.BinaryReader.prototype.getFieldDecoder=function(){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var A=this.decoder_.readUnsignedVarint32(),r=this.decoder_.getCursor(),t=r+A;return A=jspb.BinaryDecoder.alloc(this.decoder_.getBuffer(),r,A),this.decoder_.setCursor(t),A};jspb.BinaryReader.prototype.readInt32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint32()};goog.exportProperty(jspb.BinaryReader.prototype,"readInt32",jspb.BinaryReader.prototype.readInt32);jspb.BinaryReader.prototype.readInt32String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint32String()};jspb.BinaryReader.prototype.readInt64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64()};goog.exportProperty(jspb.BinaryReader.prototype,"readInt64",jspb.BinaryReader.prototype.readInt64);jspb.BinaryReader.prototype.readInt64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64String()};jspb.BinaryReader.prototype.readUint32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint32()};goog.exportProperty(jspb.BinaryReader.prototype,"readUint32",jspb.BinaryReader.prototype.readUint32);jspb.BinaryReader.prototype.readUint32String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint32String()};jspb.BinaryReader.prototype.readUint64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint64()};goog.exportProperty(jspb.BinaryReader.prototype,"readUint64",jspb.BinaryReader.prototype.readUint64);jspb.BinaryReader.prototype.readUint64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readUnsignedVarint64String()};jspb.BinaryReader.prototype.readSint32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint32()};goog.exportProperty(jspb.BinaryReader.prototype,"readSint32",jspb.BinaryReader.prototype.readSint32);jspb.BinaryReader.prototype.readSint64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint64()};goog.exportProperty(jspb.BinaryReader.prototype,"readSint64",jspb.BinaryReader.prototype.readSint64);jspb.BinaryReader.prototype.readSint64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarint64String()};jspb.BinaryReader.prototype.readFixed32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readUint32()};goog.exportProperty(jspb.BinaryReader.prototype,"readFixed32",jspb.BinaryReader.prototype.readFixed32);jspb.BinaryReader.prototype.readFixed64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readUint64()};goog.exportProperty(jspb.BinaryReader.prototype,"readFixed64",jspb.BinaryReader.prototype.readFixed64);jspb.BinaryReader.prototype.readFixed64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readUint64String()};jspb.BinaryReader.prototype.readSfixed32=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readInt32()};goog.exportProperty(jspb.BinaryReader.prototype,"readSfixed32",jspb.BinaryReader.prototype.readSfixed32);jspb.BinaryReader.prototype.readSfixed32String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readInt32().toString()};jspb.BinaryReader.prototype.readSfixed64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readInt64()};goog.exportProperty(jspb.BinaryReader.prototype,"readSfixed64",jspb.BinaryReader.prototype.readSfixed64);jspb.BinaryReader.prototype.readSfixed64String=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readInt64String()};jspb.BinaryReader.prototype.readFloat=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED32),this.decoder_.readFloat()};goog.exportProperty(jspb.BinaryReader.prototype,"readFloat",jspb.BinaryReader.prototype.readFloat);jspb.BinaryReader.prototype.readDouble=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readDouble()};goog.exportProperty(jspb.BinaryReader.prototype,"readDouble",jspb.BinaryReader.prototype.readDouble);jspb.BinaryReader.prototype.readBool=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),!!this.decoder_.readUnsignedVarint32()};goog.exportProperty(jspb.BinaryReader.prototype,"readBool",jspb.BinaryReader.prototype.readBool);jspb.BinaryReader.prototype.readEnum=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSignedVarint64()};goog.exportProperty(jspb.BinaryReader.prototype,"readEnum",jspb.BinaryReader.prototype.readEnum);jspb.BinaryReader.prototype.readString=function(){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var A=this.decoder_.readUnsignedVarint32();return this.decoder_.readString(A)};goog.exportProperty(jspb.BinaryReader.prototype,"readString",jspb.BinaryReader.prototype.readString);jspb.BinaryReader.prototype.readBytes=function(){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var A=this.decoder_.readUnsignedVarint32();return this.decoder_.readBytes(A)};goog.exportProperty(jspb.BinaryReader.prototype,"readBytes",jspb.BinaryReader.prototype.readBytes);jspb.BinaryReader.prototype.readVarintHash64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readVarintHash64()};jspb.BinaryReader.prototype.readSintHash64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readZigzagVarintHash64()};jspb.BinaryReader.prototype.readSplitVarint64=function(A){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSplitVarint64(A)};jspb.BinaryReader.prototype.readSplitZigzagVarint64=function(A){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.VARINT),this.decoder_.readSplitVarint64(function(r,t){return jspb.utils.fromZigzag64(r,t,A)})};jspb.BinaryReader.prototype.readFixedHash64=function(){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readFixedHash64()};jspb.BinaryReader.prototype.readSplitFixed64=function(A){return jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.FIXED64),this.decoder_.readSplitFixed64(A)};jspb.BinaryReader.prototype.readPackedField_=function(A){jspb.asserts.assert(this.nextWireType_==jspb.BinaryConstants.WireType.DELIMITED);var r=this.decoder_.readUnsignedVarint32();r=this.decoder_.getCursor()+r;for(var t=[];this.decoder_.getCursor()>>7|r<<25)>>>0,r>>>=7;this.buffer_.push(A)};jspb.BinaryEncoder.prototype.writeSplitFixed64=function(A,r){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(r==Math.floor(r)),jspb.asserts.assert(0<=A&&A>>=7;this.buffer_.push(A)};jspb.BinaryEncoder.prototype.writeSignedVarint32=function(A){if(jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(A>=-jspb.BinaryConstants.TWO_TO_31&&Ar;r++)this.buffer_.push(A&127|128),A>>=7;this.buffer_.push(1)}};jspb.BinaryEncoder.prototype.writeUnsignedVarint64=function(A){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(0<=A&&A=-jspb.BinaryConstants.TWO_TO_63&&A=-jspb.BinaryConstants.TWO_TO_31&&A>31)>>>0)};jspb.BinaryEncoder.prototype.writeZigzagVarint64=function(A){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(A>=-jspb.BinaryConstants.TWO_TO_63&&A>>0,i>>>0)})};jspb.BinaryEncoder.prototype.writeUint8=function(A){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(0<=A&&256>A),this.buffer_.push(A>>>0&255)};jspb.BinaryEncoder.prototype.writeUint16=function(A){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(0<=A&&65536>A),this.buffer_.push(A>>>0&255),this.buffer_.push(A>>>8&255)};jspb.BinaryEncoder.prototype.writeUint32=function(A){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(0<=A&&A>>0&255),this.buffer_.push(A>>>8&255),this.buffer_.push(A>>>16&255),this.buffer_.push(A>>>24&255)};jspb.BinaryEncoder.prototype.writeUint64=function(A){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(0<=A&&AA),this.buffer_.push(A>>>0&255)};jspb.BinaryEncoder.prototype.writeInt16=function(A){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(-32768<=A&&32768>A),this.buffer_.push(A>>>0&255),this.buffer_.push(A>>>8&255)};jspb.BinaryEncoder.prototype.writeInt32=function(A){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(A>=-jspb.BinaryConstants.TWO_TO_31&&A>>0&255),this.buffer_.push(A>>>8&255),this.buffer_.push(A>>>16&255),this.buffer_.push(A>>>24&255)};jspb.BinaryEncoder.prototype.writeInt64=function(A){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(A>=-jspb.BinaryConstants.TWO_TO_63&&A=-jspb.BinaryConstants.TWO_TO_63&&+A=-jspb.BinaryConstants.FLOAT32_MAX&&A<=jspb.BinaryConstants.FLOAT32_MAX),jspb.utils.splitFloat32(A),this.writeUint32(jspb.utils.split64Low)};jspb.BinaryEncoder.prototype.writeDouble=function(A){jspb.asserts.assert(A===1/0||A===-1/0||isNaN(A)||A>=-jspb.BinaryConstants.FLOAT64_MAX&&A<=jspb.BinaryConstants.FLOAT64_MAX),jspb.utils.splitFloat64(A),this.writeUint32(jspb.utils.split64Low),this.writeUint32(jspb.utils.split64High)};jspb.BinaryEncoder.prototype.writeBool=function(A){jspb.asserts.assert(typeof A=="boolean"||typeof A=="number"),this.buffer_.push(A?1:0)};jspb.BinaryEncoder.prototype.writeEnum=function(A){jspb.asserts.assert(A==Math.floor(A)),jspb.asserts.assert(A>=-jspb.BinaryConstants.TWO_TO_31&&Ai)this.buffer_.push(i);else if(2048>i)this.buffer_.push(i>>6|192),this.buffer_.push(i&63|128);else if(65536>i)if(55296<=i&&56319>=i&&t+1=o&&(i=1024*(i-55296)+o-56320+65536,this.buffer_.push(i>>18|240),this.buffer_.push(i>>12&63|128),this.buffer_.push(i>>6&63|128),this.buffer_.push(i&63|128),t++)}else this.buffer_.push(i>>12|224),this.buffer_.push(i>>6&63|128),this.buffer_.push(i&63|128)}return this.buffer_.length-r};jspb.arith={};jspb.arith.UInt64=function(A,r){this.lo=A,this.hi=r};jspb.arith.UInt64.prototype.cmp=function(A){return this.hi>>1|(this.hi&1)<<31)>>>0,this.hi>>>1>>>0)};jspb.arith.UInt64.prototype.leftShift=function(){return new jspb.arith.UInt64(this.lo<<1>>>0,(this.hi<<1|this.lo>>>31)>>>0)};jspb.arith.UInt64.prototype.msb=function(){return!!(this.hi&2147483648)};jspb.arith.UInt64.prototype.lsb=function(){return!!(this.lo&1)};jspb.arith.UInt64.prototype.zero=function(){return this.lo==0&&this.hi==0};jspb.arith.UInt64.prototype.add=function(A){return new jspb.arith.UInt64((this.lo+A.lo&4294967295)>>>0>>>0,((this.hi+A.hi&4294967295)>>>0)+(4294967296<=this.lo+A.lo?1:0)>>>0)};jspb.arith.UInt64.prototype.sub=function(A){return new jspb.arith.UInt64((this.lo-A.lo&4294967295)>>>0>>>0,((this.hi-A.hi&4294967295)>>>0)-(0>this.lo-A.lo?1:0)>>>0)};jspb.arith.UInt64.mul32x32=function(A,r){var t=A&65535;A>>>=16;var i=r&65535,o=r>>>16;for(r=t*i+65536*(t*o&65535)+65536*(A*i&65535),t=A*o+(t*o>>>16)+(A*i>>>16);4294967296<=r;)r-=4294967296,t+=1;return new jspb.arith.UInt64(r>>>0,t>>>0)};jspb.arith.UInt64.prototype.mul=function(A){var r=jspb.arith.UInt64.mul32x32(this.lo,A);return A=jspb.arith.UInt64.mul32x32(this.hi,A),A.hi=A.lo,A.lo=0,r.add(A)};jspb.arith.UInt64.prototype.div=function(A){if(A==0)return[];var r=new jspb.arith.UInt64(0,0),t=new jspb.arith.UInt64(this.lo,this.hi);A=new jspb.arith.UInt64(A,0);for(var i=new jspb.arith.UInt64(1,0);!A.msb();)A=A.leftShift(),i=i.leftShift();for(;!i.zero();)0>=A.cmp(t)&&(r=r.add(i),t=t.sub(A)),A=A.rightShift(),i=i.rightShift();return[r,t]};jspb.arith.UInt64.prototype.toString=function(){for(var A="",r=this;!r.zero();){r=r.div(10);var t=r[0];A=r[1].lo+A,r=t}return A==""&&(A="0"),A};jspb.arith.UInt64.fromString=function(A){for(var r=new jspb.arith.UInt64(0,0),t=new jspb.arith.UInt64(0,0),i=0;iA[i]||"9">>0>>>0,((this.hi+A.hi&4294967295)>>>0)+(4294967296<=this.lo+A.lo?1:0)>>>0)};jspb.arith.Int64.prototype.sub=function(A){return new jspb.arith.Int64((this.lo-A.lo&4294967295)>>>0>>>0,((this.hi-A.hi&4294967295)>>>0)-(0>this.lo-A.lo?1:0)>>>0)};jspb.arith.Int64.prototype.clone=function(){return new jspb.arith.Int64(this.lo,this.hi)};jspb.arith.Int64.prototype.toString=function(){var A=(this.hi&2147483648)!=0,r=new jspb.arith.UInt64(this.lo,this.hi);return A&&(r=new jspb.arith.UInt64(0,0).sub(r)),(A?"-":"")+r.toString()};jspb.arith.Int64.fromString=function(A){var r=0>>=7,this.totalLength_++;A.push(r),this.totalLength_++};jspb.BinaryWriter.prototype.writeSerializedMessage=function(A,r,t){this.appendUint8Array_(A.subarray(r,t))};jspb.BinaryWriter.prototype.maybeWriteSerializedMessage=function(A,r,t){A!=null&&r!=null&&t!=null&&this.writeSerializedMessage(A,r,t)};jspb.BinaryWriter.prototype.reset=function(){this.blocks_=[],this.encoder_.end(),this.totalLength_=0,this.bookmarks_=[]};jspb.BinaryWriter.prototype.getResultBuffer=function(){jspb.asserts.assert(this.bookmarks_.length==0);for(var A=new Uint8Array(this.totalLength_+this.encoder_.length()),r=this.blocks_,t=r.length,i=0,o=0;o=-jspb.BinaryConstants.TWO_TO_31&&r=-jspb.BinaryConstants.TWO_TO_31&&r=-jspb.BinaryConstants.TWO_TO_63&&r=-jspb.BinaryConstants.TWO_TO_31&&r=-jspb.BinaryConstants.TWO_TO_63&&r=-jspb.BinaryConstants.TWO_TO_31&&r=-jspb.BinaryConstants.TWO_TO_63&&r=-jspb.BinaryConstants.TWO_TO_31&&r>>0,s>>>0)})};jspb.BinaryWriter.prototype.writeRepeatedInt32=function(A,r){if(r!=null)for(var t=0;t>>0,E>>>0)});this.endDelimited_(A)}};jspb.BinaryWriter.prototype.writePackedInt64String=function(A,r){if(r!=null&&r.length){A=this.beginDelimited_(A);for(var t=0;tr.length?t.length:r.length;for(A.getJsPbMessageId()&&(i[0]=A.getJsPbMessageId(),o=1);o{(function(){var A,r="4.17.21",t=200,i="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",o="Expected a function",s="Invalid `variable` option passed into `_.template`",g="__lodash_hash_undefined__",E=500,p="__lodash_placeholder__",B=1,m=2,_=4,x=1,O=2,k=1,P=2,H=4,T=8,v=16,F=32,y=64,S=128,U=256,V=512,wA=30,IA="...",pA=800,oA=16,cA=1,eA=2,Y=3,q=1/0,X=9007199254740991,Z=17976931348623157e292,K=0/0,J=4294967295,sA=J-1,uA=J>>>1,BA=[["ary",S],["bind",k],["bindKey",P],["curry",T],["curryRight",v],["flip",V],["partial",F],["partialRight",y],["rearg",U]],CA="[object Arguments]",z="[object Array]",AA="[object AsyncFunction]",iA="[object Boolean]",_A="[object Date]",fA="[object DOMException]",M="[object Error]",aA="[object Function]",gA="[object GeneratorFunction]",QA="[object Map]",mA="[object Number]",FA="[object Null]",SA="[object Object]",ce="[object Promise]",re="[object Proxy]",KA="[object RegExp]",$A="[object Set]",jA="[object String]",ue="[object Symbol]",MA="[object Undefined]",RA="[object WeakMap]",lA="[object WeakSet]",tA="[object ArrayBuffer]",N="[object DataView]",nA="[object Float32Array]",kA="[object Float64Array]",bA="[object Int8Array]",TA="[object Int16Array]",VA="[object Int32Array]",De="[object Uint8Array]",_e="[object Uint8ClampedArray]",Ae="[object Uint16Array]",Q="[object Uint32Array]",Ze=/\b__p \+= '';/g,Cr=/\b(__p \+=) '' \+/g,be=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Me=/&(?:amp|lt|gt|quot|#39);/g,Le=/[&<>"']/g,ir=RegExp(Me.source),Ye=RegExp(Le.source),mr=/<%-([\s\S]+?)%>/g,$e=/<%([\s\S]+?)%>/g,xr=/<%=([\s\S]+?)%>/g,PA=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,we=/^\w*$/,LA=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ae=/[\\^$.*+?()[\]{}|]/g,We=RegExp(ae.source),YA=/^\s+/,Ce=/\s/,Ke=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,er=/\{\n\/\* \[wrapped with (.+)\] \*/,ur=/,? & /,hr=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Fr=/[()=,{}\[\]\/\s]/,qA=/\\(\\)?/g,oe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Ge=/\w*$/,nr=/^[-+]0x[0-9a-f]+$/i,Or=/^0b[01]+$/i,tr=/^\[object .+?Constructor\]$/,Ur=/^0o[0-7]+$/i,nt=/^(?:0|[1-9]\d*)$/,ke=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Je=/($^)/,Ar=/['\n\r\u2028\u2029\\]/g,fr="\\ud800-\\udfff",te="\\u0300-\\u036f",Te="\\ufe20-\\ufe2f",UA="\\u20d0-\\u20ff",Ee=te+Te+UA,de="\\u2700-\\u27bf",HA="a-z\\xdf-\\xf6\\xf8-\\xff",pe="\\xac\\xb1\\xd7\\xf7",ee="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Pe="\\u2000-\\u206f",He=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Xe="A-Z\\xc0-\\xd6\\xd8-\\xde",or="\\ufe0e\\ufe0f",Mr=pe+ee+Pe+He,ar="['\u2019]",lt="["+fr+"]",Lr="["+Mr+"]",gt="["+Ee+"]",Pr="\\d+",Et="["+de+"]",Zt="["+HA+"]",Ot="[^"+fr+Mr+Pr+de+HA+Xe+"]",_i="\\ud83c[\\udffb-\\udfff]",ei="(?:"+gt+"|"+_i+")",Yt="[^"+fr+"]",Xr="(?:\\ud83c[\\udde6-\\uddff]){2}",JA="[\\ud800-\\udbff][\\udc00-\\udfff]",Ve="["+Xe+"]",XA="\\u200d",Gr="(?:"+Zt+"|"+Ot+")",ot="(?:"+Ve+"|"+Ot+")",Sr="(?:"+ar+"(?:d|ll|m|re|s|t|ve))?",Dr="(?:"+ar+"(?:D|LL|M|RE|S|T|VE))?",Jr=ei+"?",Yr="["+or+"]?",rt="(?:"+XA+"(?:"+[Yt,Xr,JA].join("|")+")"+Yr+Jr+")*",Bt="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",le="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Ir=Yr+Jr+rt,ut="(?:"+[Et,Xr,JA].join("|")+")"+Ir,Ii="(?:"+[Yt+gt+"?",gt,Xr,JA,lt].join("|")+")",Zi=RegExp(ar,"g"),yi=RegExp(gt,"g"),zt=RegExp(_i+"(?="+_i+")|"+Ii+Ir,"g"),cn=RegExp([Ve+"?"+Zt+"+"+Sr+"(?="+[Lr,Ve,"$"].join("|")+")",ot+"+"+Dr+"(?="+[Lr,Ve+Gr,"$"].join("|")+")",Ve+"?"+Gr+"+"+Sr,Ve+"+"+Dr,le,Bt,Pr,ut].join("|"),"g"),Ui=RegExp("["+XA+fr+Ee+or+"]"),Mi=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,yt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Ya=-1,Wn={};Wn[nA]=Wn[kA]=Wn[bA]=Wn[TA]=Wn[VA]=Wn[De]=Wn[_e]=Wn[Ae]=Wn[Q]=!0,Wn[CA]=Wn[z]=Wn[tA]=Wn[iA]=Wn[N]=Wn[_A]=Wn[M]=Wn[aA]=Wn[QA]=Wn[mA]=Wn[SA]=Wn[KA]=Wn[$A]=Wn[jA]=Wn[RA]=!1;var jn={};jn[CA]=jn[z]=jn[tA]=jn[N]=jn[iA]=jn[_A]=jn[nA]=jn[kA]=jn[bA]=jn[TA]=jn[VA]=jn[QA]=jn[mA]=jn[SA]=jn[KA]=jn[$A]=jn[jA]=jn[ue]=jn[De]=jn[_e]=jn[Ae]=jn[Q]=!0,jn[M]=jn[aA]=jn[RA]=!1;var Ho={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},_a={"&":"&","<":"<",">":">",'"':""","'":"'"},yo={"&":"&","<":"<",">":">",""":'"',"'":"'"},va={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},wi=parseFloat,bi=parseInt,ao=typeof global=="object"&&global&&global.Object===Object&&global,Bo=typeof self=="object"&&self&&self.Object===Object&&self,Uo=ao||Bo||Function("return this")(),oo=typeof hI=="object"&&hI&&!hI.nodeType&&hI,Xo=oo&&typeof l6=="object"&&l6&&!l6.nodeType&&l6,Bs=Xo&&Xo.exports===oo,hs=Bs&&ao.process,Va=function(){try{var Nt=Xo&&Xo.require&&Xo.require("util").types;return Nt||hs&&hs.binding&&hs.binding("util")}catch{}}(),xe=Va&&Va.isArrayBuffer,ze=Va&&Va.isDate,Lt=Va&&Va.isMap,en=Va&&Va.isRegExp,hn=Va&&Va.isSet,Ia=Va&&Va.isTypedArray;function ne(Nt,Li,mi){switch(mi.length){case 0:return Nt.call(Li);case 1:return Nt.call(Li,mi[0]);case 2:return Nt.call(Li,mi[0],mi[1]);case 3:return Nt.call(Li,mi[0],mi[1],mi[2])}return Nt.apply(Li,mi)}function _r(Nt,Li,mi,Ea){for(var Mo=-1,es=Nt==null?0:Nt.length;++Mo-1}function rr(Nt,Li,mi){for(var Ea=-1,Mo=Nt==null?0:Nt.length;++Ea-1;);return mi}function je(Nt,Li){for(var mi=Nt.length;mi--&&Qs(Li,Nt[mi],0)>-1;);return mi}function br(Nt,Li){for(var mi=Nt.length,Ea=0;mi--;)Nt[mi]===Li&&++Ea;return Ea}var mt=zc(Ho),ai=zc(_a);function Pi(Nt){return"\\"+va[Nt]}function Bi(Nt,Li){return Nt==null?A:Nt[Li]}function ji(Nt){return Ui.test(Nt)}function Fn(Nt){return Mi.test(Nt)}function vn(Nt){for(var Li,mi=[];!(Li=Nt.next()).done;)mi.push(Li.value);return mi}function aa(Nt){var Li=-1,mi=Array(Nt.size);return Nt.forEach(function(Ea,Mo){mi[++Li]=[Mo,Ea]}),mi}function se(Nt,Li){return function(mi){return Nt(Li(mi))}}function jr(Nt,Li){for(var mi=-1,Ea=Nt.length,Mo=0,es=[];++mi-1}function Hl(j,dA){var zA=this.__data__,Fe=Ad(zA,j);return Fe<0?(++this.size,zA.push([j,dA])):zA[Fe][1]=dA,this}Qd.prototype.clear=wl,Qd.prototype.delete=AQ,Qd.prototype.get=cl,Qd.prototype.has=Gd,Qd.prototype.set=Hl;function md(j){var dA=-1,zA=j==null?0:j.length;for(this.clear();++dA=dA?j:dA)),j}function $l(j,dA,zA,Fe,wr,Br){var vt,Pt=dA&B,ci=dA&m,yn=dA&_;if(zA&&(vt=wr?zA(j,Fe,wr,Br):zA(j)),vt!==A)return vt;if(!Jo(j))return j;var In=vs(j);if(In){if(vt=rQ(j),!Pt)return Nu(j,vt)}else{var Gn=tc(j),Ta=Gn==aA||Gn==gA;if(vA(j))return Tu(j,Pt);if(Gn==SA||Gn==CA||Ta&&!wr){if(vt=ci||Ta?{}:qQ(j),!Pt)return ci?WQ(j,vp(vt,j)):IB(j,bg(vt,j))}else{if(!jn[Gn])return wr?j:{};vt=H1(j,Gn,Pt)}}Br||(Br=new Cg);var Do=Br.get(j);if(Do)return Do;Br.set(j,vt),_h(j)?j.forEach(function(zo){vt.add($l(zo,dA,zA,zo,j,Br))}):qs(j)&&j.forEach(function(zo,oc){vt.set(oc,$l(zo,dA,zA,oc,j,Br))});var Zo=yn?ci?Pu:Xd:ci?Al:Ug,Ps=In?A:Zo(j);return qr(Ps||j,function(zo,oc){Ps&&(oc=zo,zo=j[oc]),wp(vt,oc,$l(zo,dA,zA,oc,j,Br))}),vt}function ed(j){var dA=Ug(j);return function(zA){return ug(zA,j,dA)}}function ug(j,dA,zA){var Fe=zA.length;if(j==null)return!Fe;for(j=_s(j);Fe--;){var wr=zA[Fe],Br=dA[wr],vt=j[wr];if(vt===A&&!(wr in j)||!Br(vt))return!1}return!0}function gg(j,dA,zA){if(typeof j!="function")throw new Zr(o);return tu(function(){j.apply(A,zA)},dA)}function yu(j,dA,zA,Fe){var wr=-1,Br=Re,vt=!0,Pt=j.length,ci=[],yn=dA.length;if(!Pt)return ci;zA&&(dA=zr(dA,bs(zA))),Fe?(Br=rr,vt=!1):dA.length>=t&&(Br=xs,vt=!1,dA=new Su(dA));A:for(;++wrwr?0:wr+zA),Fe=Fe===A||Fe>wr?wr:mo(Fe),Fe<0&&(Fe+=wr),Fe=zA>Fe?0:vv(Fe);zA0&&zA(Pt)?dA>1?Ic(Pt,dA-1,zA,Fe,wr):Ft(wr,Pt):Fe||(wr[wr.length]=Pt)}return wr}var Tf=Cd(),nf=Cd(!0);function Fu(j,dA){return j&&Tf(j,dA,Ug)}function Ud(j,dA){return j&&nf(j,dA,Ug)}function af(j,dA){return ye(dA,function(zA){return Un(j[zA])})}function ds(j,dA){dA=Vo(dA,j);for(var zA=0,Fe=dA.length;j!=null&&zAdA}function Pc(j,dA){return j!=null&&Yi.call(j,dA)}function _B(j,dA){return j!=null&&dA in _s(j)}function Rl(j,dA,zA){return j>=Cc(dA,zA)&&j=120&&In.length>=120)?new Su(vt&&In):A}In=j[0];var Gn=-1,Ta=Pt[0];A:for(;++Gn-1;)Pt!==j&&Ue.call(Pt,ci,1),Ue.call(j,ci,1);return j}function yl(j,dA){for(var zA=j?dA.length:0,Fe=zA-1;zA--;){var wr=dA[zA];if(zA==Fe||wr!==Br){var Br=wr;Hg(wr)?Ue.call(j,wr,1):Gl(j,wr)}}return j}function lc(j,dA){return j+Ma(Pd()*(dA-j+1))}function bp(j,dA,zA,Fe){for(var wr=-1,Br=jo(Co((dA-j)/(zA||1)),0),vt=mi(Br);Br--;)vt[Fe?Br:++wr]=j,j+=zA;return vt}function dE(j,dA){var zA="";if(!j||dA<1||dA>X)return zA;do dA%2&&(zA+=j),dA=Ma(dA/2),dA&&(j+=j);while(dA);return zA}function Pn(j,dA){return Ll(Eo(j,dA,Ef),j+"")}function hi(j){return ef(bD(j))}function Pl(j,dA){var zA=bD(j);return Xu(zA,Fl(dA,0,zA.length))}function Pf(j,dA,zA,Fe){if(!Jo(j))return j;dA=Vo(dA,j);for(var wr=-1,Br=dA.length,vt=Br-1,Pt=j;Pt!=null&&++wrwr?0:wr+dA),zA=zA>wr?wr:zA,zA<0&&(zA+=wr),wr=dA>zA?0:zA-dA>>>0,dA>>>=0;for(var Br=mi(wr);++Fe>>1,vt=j[Br];vt!==null&&!rp(vt)&&(zA?vt<=dA:vt=t){var yn=dA?null:_n(j);if(yn)return qe(yn);vt=!1,wr=xs,ci=new Su}else ci=dA?[]:Pt;A:for(;++Fe=Fe?j:Eu(j,dA,zA)}var Cu=ta||function(j){return Uo.clearTimeout(j)};function Tu(j,dA){if(dA)return j.slice();var zA=j.length,Fe=Ys?Ys(zA):new j.constructor(zA);return j.copy(Fe),Fe}function EE(j){var dA=new j.constructor(j.byteLength);return new qo(dA).set(new qo(j)),dA}function CB(j,dA){var zA=dA?EE(j.buffer):j.buffer;return new j.constructor(zA,j.byteOffset,j.byteLength)}function fE(j){var dA=new j.constructor(j.source,Ge.exec(j));return dA.lastIndex=j.lastIndex,dA}function Vd(j){return yg?_s(yg.call(j)):{}}function Ku(j,dA){var zA=dA?EE(j.buffer):j.buffer;return new j.constructor(zA,j.byteOffset,j.length)}function fh(j,dA){if(j!==dA){var zA=j!==A,Fe=j===null,wr=j===j,Br=rp(j),vt=dA!==A,Pt=dA===null,ci=dA===dA,yn=rp(dA);if(!Pt&&!yn&&!Br&&j>dA||Br&&vt&&ci&&!Pt&&!yn||Fe&&vt&&ci||!zA&&ci||!wr)return 1;if(!Fe&&!Br&&!yn&&j=Pt)return ci;var yn=zA[Fe];return ci*(yn=="desc"?-1:1)}}return j.index-dA.index}function kg(j,dA,zA,Fe){for(var wr=-1,Br=j.length,vt=zA.length,Pt=-1,ci=dA.length,yn=jo(Br-vt,0),In=mi(ci+yn),Gn=!Fe;++Pt1?zA[wr-1]:A,vt=wr>2?zA[2]:A;for(Br=j.length>3&&typeof Br=="function"?(wr--,Br):A,vt&&Gu(zA[0],zA[1],vt)&&(Br=wr<3?A:Br,wr=1),dA=_s(dA);++Fe-1?wr[Br?dA[vt]:vt]:A}}function cf(j){return Xc(function(dA){var zA=dA.length,Fe=zA,wr=qi.prototype.thru;for(j&&dA.reverse();Fe--;){var Br=dA[Fe];if(typeof Br!="function")throw new Zr(o);if(wr&&!vt&&uf(Br)=="wrapper")var vt=new qi([],!0)}for(Fe=vt?Fe:zA;++Fe1&&pc.reverse(),In&&ciPt))return!1;var yn=Br.get(j),In=Br.get(dA);if(yn&&In)return yn==dA&&In==j;var Gn=-1,Ta=!0,Do=zA&O?new Su:A;for(Br.set(j,dA),Br.set(dA,j);++Gn1?"& ":"")+dA[Fe],dA=dA.join(zA>2?", ":" "),j.replace(Ke,`{ -/* [wrapped with `+dA+`] */ -`)}function kB(j){return vs(j)||bd(j)||!!(et&&j&&j[et])}function Hg(j,dA){var zA=typeof j;return dA=dA??X,!!dA&&(zA=="number"||zA!="symbol"&&nt.test(j))&&j>-1&&j%1==0&&j0){if(++dA>=pA)return arguments[0]}else dA=0;return j.apply(A,arguments)}}function Xu(j,dA){var zA=-1,Fe=j.length,wr=Fe-1;for(dA=dA===A?Fe:dA;++zA1?j[dA-1]:A;return zA=typeof zA=="function"?(j.pop(),zA):A,ZQ(j,zA)});function iu(j){var dA=Tr(j);return dA.__chain__=!0,dA}function N1(j,dA){return dA(j),j}function mD(j,dA){return dA(j)}var o7=Xc(function(j){var dA=j.length,zA=dA?j[0]:0,Fe=this.__wrapped__,wr=function(Br){return uE(Br,j)};return dA>1||this.__actions__.length||!(Fe instanceof Ro)||!Hg(zA)?this.thru(wr):(Fe=Fe.slice(zA,+zA+(dA?1:0)),Fe.__actions__.push({func:mD,args:[wr],thisArg:A}),new qi(Fe,this.__chain__).thru(function(Br){return dA&&!Br.length&&Br.push(A),Br}))});function $d(){return iu(this)}function um(){return new qi(this.value(),this.__chain__)}function gv(){this.__values__===A&&(this.__values__=Ng(this.value()));var j=this.__index__>=this.__values__.length,dA=j?A:this.__values__[this.__index__++];return{done:j,value:dA}}function s7(){return this}function c7(j){for(var dA,zA=this;zA instanceof Tn;){var Fe=NA(zA);Fe.__index__=0,Fe.__values__=A,dA?wr.__wrapped__=Fe:dA=Fe;var wr=Fe;zA=zA.__wrapped__}return wr.__wrapped__=j,dA}function P1(){var j=this.__wrapped__;if(j instanceof Ro){var dA=j;return this.__actions__.length&&(dA=new Ro(this)),dA=dA.reverse(),dA.__actions__.push({func:mD,args:[Qh],thisArg:A}),new qi(dA,this.__chain__)}return this.thru(Qh)}function l7(){return xp(this.__wrapped__,this.__actions__)}var DD=Nn(function(j,dA,zA){Yi.call(j,zA)?++j[zA]:Og(j,zA,1)});function K2(j,dA,zA){var Fe=vs(j)?ie:mB;return zA&&Gu(j,dA,zA)&&(dA=A),Fe(j,za(dA,3))}function dv(j,dA){var zA=vs(j)?ye:Lo;return zA(j,za(dA,3))}var X2=ul(zQ),u7=ul(Uf);function g7(j,dA){return Ic(G1(j,dA),1)}function Z2(j,dA){return Ic(G1(j,dA),q)}function $2(j,dA,zA){return zA=zA===A?1:mo(zA),Ic(G1(j,dA),zA)}function _D(j,dA){var zA=vs(j)?qr:vl;return zA(j,za(dA,3))}function HB(j,dA){var zA=vs(j)?$r:ph;return zA(j,za(dA,3))}var pv=Nn(function(j,dA,zA){Yi.call(j,zA)?j[zA].push(dA):Og(j,zA,[dA])});function AC(j,dA,zA,Fe){j=Ap(j)?j:bD(j),zA=zA&&!Fe?mo(zA):0;var wr=j.length;return zA<0&&(zA=jo(wr+zA,0)),L1(j)?zA<=wr&&j.indexOf(dA,zA)>-1:!!wr&&Qs(j,dA,zA)>-1}var d7=Pn(function(j,dA,zA){var Fe=-1,wr=typeof dA=="function",Br=Ap(j)?mi(j.length):[];return vl(j,function(vt){Br[++Fe]=wr?ne(dA,vt,zA):Tl(vt,dA,zA)}),Br}),Ev=Nn(function(j,dA,zA){Og(j,zA,dA)});function G1(j,dA){var zA=vs(j)?zr:_c;return zA(j,za(dA,3))}function gm(j,dA,zA,Fe){return j==null?[]:(vs(dA)||(dA=dA==null?[]:[dA]),zA=Fe?A:zA,vs(zA)||(zA=zA==null?[]:[zA]),Nf(j,dA,zA))}var eC=Nn(function(j,dA,zA){j[zA?0:1].push(dA)},function(){return[[],[]]});function p7(j,dA,zA){var Fe=vs(j)?Gt:Rc,wr=arguments.length<3;return Fe(j,za(dA,4),zA,wr,vl)}function Y1(j,dA,zA){var Fe=vs(j)?Tt:Rc,wr=arguments.length<3;return Fe(j,za(dA,4),zA,wr,ph)}function fv(j,dA){var zA=vs(j)?ye:Lo;return zA(j,co(za(dA,3)))}function U1(j){var dA=vs(j)?ef:hi;return dA(j)}function E7(j,dA,zA){(zA?Gu(j,dA,zA):dA===A)?dA=1:dA=mo(dA);var Fe=vs(j)?lE:Pl;return Fe(j,dA)}function f7(j){var dA=vs(j)?rf:vd;return dA(j)}function Eg(j){if(j==null)return 0;if(Ap(j))return L1(j)?Ds(j):j.length;var dA=tc(j);return dA==QA||dA==$A?j.size:Cp(j).length}function Rg(j,dA,zA){var Fe=vs(j)?gn:dg;return zA&&Gu(j,dA,zA)&&(dA=A),Fe(j,za(dA,3))}var yE=Pn(function(j,dA){if(j==null)return[];var zA=dA.length;return zA>1&&Gu(j,dA[0],dA[1])?dA=[]:zA>2&&Gu(dA[0],dA[1],dA[2])&&(dA=[dA[0]]),Nf(j,Ic(dA,1),[])}),Tg=qa||function(){return Uo.Date.now()};function rC(j,dA){if(typeof dA!="function")throw new Zr(o);return j=mo(j),function(){if(--j<1)return dA.apply(this,arguments)}}function $Q(j,dA,zA){return dA=zA?A:dA,dA=j&&dA==null?j.length:dA,wa(j,S,A,A,A,A,dA)}function SB(j,dA){var zA;if(typeof dA!="function")throw new Zr(o);return j=mo(j),function(){return--j>0&&(zA=dA.apply(this,arguments)),j<=1&&(dA=A),zA}}var fg=Pn(function(j,dA,zA){var Fe=k;if(zA.length){var wr=jr(zA,Rp(fg));Fe|=F}return wa(j,Fe,dA,zA,wr)}),Bv=Pn(function(j,dA,zA){var Fe=k|P;if(zA.length){var wr=jr(zA,Rp(Bv));Fe|=F}return wa(dA,Fe,j,zA,wr)});function wD(j,dA,zA){dA=zA?A:dA;var Fe=wa(j,T,A,A,A,A,A,dA);return Fe.placeholder=wD.placeholder,Fe}function tC(j,dA,zA){dA=zA?A:dA;var Fe=wa(j,v,A,A,A,A,A,dA);return Fe.placeholder=tC.placeholder,Fe}function nu(j,dA,zA){var Fe,wr,Br,vt,Pt,ci,yn=0,In=!1,Gn=!1,Ta=!0;if(typeof j!="function")throw new Zr(o);dA=Gg(dA)||0,Jo(zA)&&(In=!!zA.leading,Gn="maxWait"in zA,Br=Gn?jo(Gg(zA.maxWait)||0,dA):Br,Ta="trailing"in zA?!!zA.trailing:Ta);function Do(Qg){var RB=Fe,Ch=wr;return Fe=wr=A,yn=Qg,vt=j.apply(Ch,RB),vt}function Zo(Qg){return yn=Qg,Pt=tu(oc,dA),In?Do(Qg):vt}function Ps(Qg){var RB=Qg-ci,Ch=Qg-yn,qx=dA-RB;return Gn?Cc(qx,Br-Ch):qx}function zo(Qg){var RB=Qg-ci,Ch=Qg-yn;return ci===A||RB>=dA||RB<0||Gn&&Ch>=Br}function oc(){var Qg=Tg();if(zo(Qg))return pc(Qg);Pt=tu(oc,Ps(Qg))}function pc(Qg){return Pt=A,Ta&&Fe?Do(Qg):(Fe=wr=A,vt)}function xa(){Pt!==A&&Cu(Pt),yn=0,Fe=ci=wr=Pt=A}function Pp(){return Pt===A?vt:pc(Tg())}function ip(){var Qg=Tg(),RB=zo(Qg);if(Fe=arguments,wr=this,ci=Qg,RB){if(Pt===A)return Zo(ci);if(Gn)return Cu(Pt),Pt=tu(oc,dA),Do(ci)}return Pt===A&&(Pt=tu(oc,dA)),vt}return ip.cancel=xa,ip.flush=Pp,ip}var Bg=Pn(function(j,dA){return gg(j,1,dA)}),CE=Pn(function(j,dA,zA){return gg(j,Gg(dA)||0,zA)});function Wf(j){return wa(j,V)}function Dh(j,dA){if(typeof j!="function"||dA!=null&&typeof dA!="function")throw new Zr(o);var zA=function(){var Fe=arguments,wr=dA?dA.apply(this,Fe):Fe[0],Br=zA.cache;if(Br.has(wr))return Br.get(wr);var vt=j.apply(this,Fe);return zA.cache=Br.set(wr,vt)||Br,vt};return zA.cache=new(Dh.Cache||md),zA}Dh.Cache=md;function co(j){if(typeof j!="function")throw new Zr(o);return function(){var dA=arguments;switch(dA.length){case 0:return!j.call(this);case 1:return!j.call(this,dA[0]);case 2:return!j.call(this,dA[0],dA[1]);case 3:return!j.call(this,dA[0],dA[1],dA[2])}return!j.apply(this,dA)}}function iC(j){return SB(2,j)}var B7=Eh(function(j,dA){dA=dA.length==1&&vs(dA[0])?zr(dA[0],bs(za())):zr(Ic(dA,1),bs(za()));var zA=dA.length;return Pn(function(Fe){for(var wr=-1,Br=Cc(Fe.length,zA);++wr=dA}),bd=cs(function(){return arguments}())?cs:function(j){return mn(j)&&Yi.call(j,"callee")&&!ve.call(j,"callee")},vs=mi.isArray,oC=xe?bs(xe):Nl;function Ap(j){return j!=null&&ps(j.length)&&!Un(j)}function Uu(j){return mn(j)&&Ap(j)}function I(j){return j===!0||j===!1||mn(j)&&ss(j)==iA}var vA=gs||P7,Ie=ze?bs(ze):du;function gr(j){return mn(j)&&j.nodeType===1&&!Lu(j)}function pt(j){if(j==null)return!0;if(Ap(j)&&(vs(j)||typeof j=="string"||typeof j.splice=="function"||vA(j)||df(j)||bd(j)))return!j.length;var dA=tc(j);if(dA==QA||dA==$A)return!j.size;if(Mt(j))return!Cp(j).length;for(var zA in j)if(Yi.call(j,zA))return!1;return!0}function Ci(j,dA){return yp(j,dA)}function Ti(j,dA,zA){zA=typeof zA=="function"?zA:A;var Fe=zA?zA(j,dA):A;return Fe===A?yp(j,dA,A,zA):!!Fe}function Wi(j){if(!mn(j))return!1;var dA=ss(j);return dA==M||dA==fA||typeof j.message=="string"&&typeof j.name=="string"&&!Lu(j)}function pa(j){return typeof j=="number"&&ts(j)}function Un(j){if(!Jo(j))return!1;var dA=ss(j);return dA==aA||dA==gA||dA==AA||dA==re}function To(j){return typeof j=="number"&&j==mo(j)}function ps(j){return typeof j=="number"&&j>-1&&j%1==0&&j<=X}function Jo(j){var dA=typeof j;return j!=null&&(dA=="object"||dA=="function")}function mn(j){return j!=null&&typeof j=="object"}var qs=Lt?bs(Lt):_d;function ia(j,dA){return j===dA||Ld(j,dA,OB(dA))}function Ls(j,dA,zA){return zA=typeof zA=="function"?zA:A,Ld(j,dA,OB(dA),zA)}function Od(j){return hg(j)&&j!=+j}function ep(j){if(ct(j))throw new Mo(i);return of(j)}function A0(j){return j===null}function Vs(j){return j==null}function hg(j){return typeof j=="number"||mn(j)&&ss(j)==mA}function Lu(j){if(!mn(j)||ss(j)!=SA)return!1;var dA=rs(j);if(dA===null)return!0;var zA=Yi.call(dA,"constructor")&&dA.constructor;return typeof zA=="function"&&zA instanceof zA&&di.call(zA)==ja}var pm=en?bs(en):rd;function Em(j){return To(j)&&j>=-X&&j<=X}var _h=hn?bs(hn):hc;function L1(j){return typeof j=="string"||!vs(j)&&mn(j)&&ss(j)==jA}function rp(j){return typeof j=="symbol"||mn(j)&&ss(j)==ue}var df=Ia?bs(Ia):wd;function vD(j){return j===A}function wh(j){return mn(j)&&tc(j)==RA}function wv(j){return mn(j)&&ss(j)==lA}var yD=ft(wB),j1=ft(function(j,dA){return j<=dA});function Ng(j){if(!j)return[];if(Ap(j))return L1(j)?Ac(j):Nu(j);if(jt&&j[jt])return vn(j[jt]());var dA=tc(j),zA=dA==QA?aa:dA==$A?qe:bD;return zA(j)}function Pg(j){if(!j)return j===0?j:0;if(j=Gg(j),j===q||j===-q){var dA=j<0?-1:1;return dA*Z}return j===j?j:0}function mo(j){var dA=Pg(j),zA=dA%1;return dA===dA?zA?dA-zA:dA:0}function vv(j){return j?Fl(mo(j),0,J):0}function Gg(j){if(typeof j=="number")return j;if(rp(j))return K;if(Jo(j)){var dA=typeof j.valueOf=="function"?j.valueOf():j;j=Jo(dA)?dA+"":dA}if(typeof j!="string")return j===0?j:+j;j=kl(j);var zA=Or.test(j);return zA||Ur.test(j)?bi(j.slice(2),zA?2:8):nr.test(j)?K:+j}function sC(j){return Gc(j,Al(j))}function eX(j){return j?Fl(mo(j),-X,X):j===0?j:0}function Oc(j){return j==null?"":zu(j)}var vh=ll(function(j,dA){if(Mt(dA)||Ap(dA)){Gc(dA,Ug(dA),j);return}for(var zA in dA)Yi.call(dA,zA)&&wp(j,zA,dA[zA])}),_7=ll(function(j,dA){Gc(dA,Al(dA),j)}),pf=ll(function(j,dA,zA,Fe){Gc(dA,Al(dA),j,Fe)}),Yg=ll(function(j,dA,zA,Fe){Gc(dA,Ug(dA),j,Fe)}),rX=Xc(uE);function Qx(j,dA){var zA=hd(j);return dA==null?zA:bg(zA,dA)}var No=Pn(function(j,dA){j=_s(j);var zA=-1,Fe=dA.length,wr=Fe>2?dA[2]:A;for(wr&&Gu(dA[0],dA[1],wr)&&(Fe=1);++zA1),Br}),Gc(j,Pu(j),zA),Fe&&(zA=$l(zA,B|m|_,Ul));for(var wr=dA.length;wr--;)Gl(zA,dA[wr]);return zA});function J1(j,dA){return eg(j,co(za(dA)))}var vx=Xc(function(j,dA){return j==null?{}:qd(j,dA)});function eg(j,dA){if(j==null)return{};var zA=zr(Pu(j),function(Fe){return[Fe]});return dA=za(dA),Mg(j,zA,function(Fe,wr){return dA(Fe,wr[0])})}function Bm(j,dA,zA){dA=Vo(dA,j);var Fe=-1,wr=dA.length;for(wr||(wr=1,j=A);++FedA){var Fe=j;j=dA,dA=Fe}if(zA||j%1||dA%1){var wr=Pd();return Cc(j+wr*(dA-j+wi("1e-"+((wr+"").length-1))),dA)}return lc(j,dA)}var q1=fu(function(j,dA,zA){return dA=dA.toLowerCase(),j+(zA?yv(dA):dA)});function yv(j){return hC(Oc(j).toLowerCase())}function bx(j){return j=Oc(j),j&&j.replace(ke,mt).replace(yi,"")}function O7(j,dA,zA){j=Oc(j),dA=zu(dA);var Fe=j.length;zA=zA===A?Fe:Fl(mo(zA),0,Fe);var wr=zA;return zA-=dA.length,zA>=0&&j.slice(zA,wr)==dA}function M7(j){return j=Oc(j),j&&Ye.test(j)?j.replace(Le,ai):j}function Ox(j){return j=Oc(j),j&&We.test(j)?j.replace(ae,"\\$&"):j}var Mx=fu(function(j,dA,zA){return j+(zA?"-":"")+dA.toLowerCase()}),sX=fu(function(j,dA,zA){return j+(zA?" ":"")+dA.toLowerCase()}),EC=xg("toLowerCase");function yh(j,dA,zA){j=Oc(j),dA=mo(dA);var Fe=dA?Ds(j):0;if(!dA||Fe>=dA)return j;var wr=(dA-Fe)/2;return rA(Ma(wr),zA)+j+rA(Co(wr),zA)}function kx(j,dA,zA){j=Oc(j),dA=mo(dA);var Fe=dA?Ds(j):0;return dA&&Fe>>0,zA?(j=Oc(j),j&&(typeof dA=="string"||dA!=null&&!pm(dA))&&(dA=zu(dA),!dA&&ji(j))?pg(Ac(j),0,zA):j.split(dA,zA)):[]}var Sx=fu(function(j,dA,zA){return j+(zA?" ":"")+hC(dA)});function BC(j,dA,zA){return j=Oc(j),zA=zA==null?0:Fl(mo(zA),0,j.length),dA=zu(dA),j.slice(zA,zA+dA.length)==dA}function OD(j,dA,zA){var Fe=Tr.templateSettings;zA&&Gu(j,dA,zA)&&(dA=A),j=Oc(j),dA=pf({},dA,Fe,Wo);var wr=pf({},dA.imports,Fe.imports,Wo),Br=Ug(wr),vt=Tc(wr,Br),Pt,ci,yn=0,In=dA.interpolate||Je,Gn="__p += '",Ta=cr((dA.escape||Je).source+"|"+In.source+"|"+(In===xr?oe:Je).source+"|"+(dA.evaluate||Je).source+"|$","g"),Do="//# sourceURL="+(Yi.call(dA,"sourceURL")?(dA.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Ya+"]")+` -`;j.replace(Ta,function(zo,oc,pc,xa,Pp,ip){return pc||(pc=xa),Gn+=j.slice(yn,ip).replace(Ar,Pi),oc&&(Pt=!0,Gn+=`' + -__e(`+oc+`) + -'`),Pp&&(ci=!0,Gn+=`'; -`+Pp+`; -__p += '`),pc&&(Gn+=`' + -((__t = (`+pc+`)) == null ? '' : __t) + -'`),yn=ip+zo.length,zo}),Gn+=`'; -`;var Zo=Yi.call(dA,"variable")&&dA.variable;if(!Zo)Gn=`with (obj) { -`+Gn+` -} -`;else if(Fr.test(Zo))throw new Mo(s);Gn=(ci?Gn.replace(Ze,""):Gn).replace(Cr,"$1").replace(be,"$1;"),Gn="function("+(Zo||"obj")+`) { -`+(Zo?"":`obj || (obj = {}); -`)+"var __t, __p = ''"+(Pt?", __e = _.escape":"")+(ci?`, __j = Array.prototype.join; -function print() { __p += __j.call(arguments, '') } -`:`; -`)+Gn+`return __p -}`;var Ps=x7(function(){return es(Br,Do+"return "+Gn).apply(A,vt)});if(Ps.source=Gn,Wi(Ps))throw Ps;return Ps}function pl(j){return Oc(j).toLowerCase()}function lX(j){return Oc(j).toUpperCase()}function uX(j,dA,zA){if(j=Oc(j),j&&(zA||dA===A))return kl(j);if(!j||!(dA=zu(dA)))return j;var Fe=Ac(j),wr=Ac(dA),Br=yA(Fe,wr),vt=je(Fe,wr)+1;return pg(Fe,Br,vt).join("")}function Fx(j,dA,zA){if(j=Oc(j),j&&(zA||dA===A))return j.slice(0,gc(j)+1);if(!j||!(dA=zu(dA)))return j;var Fe=Ac(j),wr=je(Fe,Ac(dA))+1;return pg(Fe,0,wr).join("")}function Rx(j,dA,zA){if(j=Oc(j),j&&(zA||dA===A))return j.replace(YA,"");if(!j||!(dA=zu(dA)))return j;var Fe=Ac(j),wr=yA(Fe,Ac(dA));return pg(Fe,wr).join("")}function Tx(j,dA){var zA=wA,Fe=IA;if(Jo(dA)){var wr="separator"in dA?dA.separator:wr;zA="length"in dA?mo(dA.length):zA,Fe="omission"in dA?zu(dA.omission):Fe}j=Oc(j);var Br=j.length;if(ji(j)){var vt=Ac(j);Br=vt.length}if(zA>=Br)return j;var Pt=zA-Ds(Fe);if(Pt<1)return Fe;var ci=vt?pg(vt,0,Pt).join(""):j.slice(0,Pt);if(wr===A)return ci+Fe;if(vt&&(Pt+=ci.length-Pt),pm(wr)){if(j.slice(Pt).search(wr)){var yn,In=ci;for(wr.global||(wr=cr(wr.source,Oc(Ge.exec(wr))+"g")),wr.lastIndex=0;yn=wr.exec(In);)var Gn=yn.index;ci=ci.slice(0,Gn===A?Pt:Gn)}}else if(j.indexOf(zu(wr),Pt)!=Pt){var Ta=ci.lastIndexOf(wr);Ta>-1&&(ci=ci.slice(0,Ta))}return ci+Fe}function Nx(j){return j=Oc(j),j&&ir.test(j)?j.replace(Me,Xl):j}var gX=fu(function(j,dA,zA){return j+(zA?" ":"")+dA.toUpperCase()}),hC=xg("toUpperCase");function MD(j,dA,zA){return j=Oc(j),dA=zA?A:dA,dA===A?Fn(j)?Zl(j):Vn(j):j.match(dA)||[]}var x7=Pn(function(j,dA){try{return ne(j,A,dA)}catch(zA){return Wi(zA)?zA:new Mo(zA)}}),H7=Xc(function(j,dA){return qr(dA,function(zA){zA=Fs(zA),Og(j,zA,fg(j[zA],j))}),j});function dX(j){var dA=j==null?0:j.length,zA=za();return j=dA?zr(j,function(Fe){if(typeof Fe[1]!="function")throw new Zr(o);return[zA(Fe[0]),Fe[1]]}):[],Pn(function(Fe){for(var wr=-1;++wrX)return[];var zA=J,Fe=Cc(j,J);dA=za(dA),j-=J;for(var wr=sl(Fe,dA);++zA0||dA<0)?new Ro(zA):(j<0?zA=zA.takeRight(-j):j&&(zA=zA.drop(j)),dA!==A&&(dA=mo(dA),zA=dA<0?zA.dropRight(-dA):zA.take(dA-j)),zA)},Ro.prototype.takeRightWhile=function(j){return this.reverse().takeWhile(j).reverse()},Ro.prototype.toArray=function(){return this.take(J)},Fu(Ro.prototype,function(j,dA){var zA=/^(?:filter|find|map|reject)|While$/.test(dA),Fe=/^(?:head|last)$/.test(dA),wr=Tr[Fe?"take"+(dA=="last"?"Right":""):dA],Br=Fe||/^find/.test(dA);wr&&(Tr.prototype[dA]=function(){var vt=this.__wrapped__,Pt=Fe?[1]:arguments,ci=vt instanceof Ro,yn=Pt[0],In=ci||vs(vt),Gn=function(oc){var pc=wr.apply(Tr,Ft([oc],Pt));return Fe&&Ta?pc[0]:pc};In&&zA&&typeof yn=="function"&&yn.length!=1&&(ci=In=!1);var Ta=this.__chain__,Do=!!this.__actions__.length,Zo=Br&&!Ta,Ps=ci&&!Do;if(!Br&&In){vt=Ps?vt:new Ro(this);var zo=j.apply(vt,Pt);return zo.__actions__.push({func:mD,args:[Gn],thisArg:A}),new qi(zo,Ta)}return Zo&&Ps?j.apply(this,Pt):(zo=this.thru(Gn),Zo?Fe?zo.value()[0]:zo.value():zo)})}),qr(["pop","push","shift","sort","splice","unshift"],function(j){var dA=xt[j],zA=/^(?:push|sort|unshift)$/.test(j)?"tap":"thru",Fe=/^(?:pop|shift)$/.test(j);Tr.prototype[j]=function(){var wr=arguments;if(Fe&&!this.__chain__){var Br=this.value();return dA.apply(vs(Br)?Br:[],wr)}return this[zA](function(vt){return dA.apply(vs(vt)?vt:[],wr)})}}),Fu(Ro.prototype,function(j,dA){var zA=Tr[dA];if(zA){var Fe=zA.name+"";Yi.call(Za,Fe)||(Za[Fe]=[]),Za[Fe].push({name:dA,func:zA})}}),Za[Kd(A,P).name]=[{name:"wrapper",func:A}],Ro.prototype.clone=gu,Ro.prototype.reverse=fB,Ro.prototype.value=sE,Tr.prototype.at=o7,Tr.prototype.chain=$d,Tr.prototype.commit=um,Tr.prototype.next=gv,Tr.prototype.plant=c7,Tr.prototype.reverse=P1,Tr.prototype.toJSON=Tr.prototype.valueOf=Tr.prototype.value=l7,Tr.prototype.first=Tr.prototype.head,jt&&(Tr.prototype[jt]=s7),Tr},ec=ho();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(Uo._=ec,define(function(){return ec})):Xo?((Xo.exports=ec)._=ec,oo._=ec):Uo._=ec}).call(hI)});var tS=GA((XTt,weA)=>{"use strict";function MSe(A){var r=void 0;typeof A=="string"?r=[A]:r=A.raw;for(var t="",i=0;i{var Module=Module!==void 0?Module:{},TreeSitter=function(){var initPromise,document=typeof window=="object"?{currentScript:window.document.currentScript}:null;class Parser{constructor(){this.initialize()}initialize(){throw new Error("cannot construct a Parser before calling `init()`")}static init(moduleOptions){return initPromise||(Module=Object.assign({},Module,moduleOptions),initPromise=new Promise(resolveInitPromise=>{var moduleOverrides=Object.assign({},Module),arguments_=[],thisProgram="./this.program",quit_=(A,r)=>{throw r},ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof importScripts=="function",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",scriptDirectory="",read_,readAsync,readBinary,setWindowTitle;function locateFile(A){return Module.locateFile?Module.locateFile(A,scriptDirectory):scriptDirectory+A}function logExceptionOnExit(A){A instanceof ExitStatus||err("exiting due to exception: "+A)}if(ENVIRONMENT_IS_NODE){var fs=require("fs"),nodePath=require("path");scriptDirectory=ENVIRONMENT_IS_WORKER?nodePath.dirname(scriptDirectory)+"/":__dirname+"/",read_=(A,r)=>(A=isFileURI(A)?new URL(A):nodePath.normalize(A),fs.readFileSync(A,r?void 0:"utf8")),readBinary=A=>{var r=read_(A,!0);return r.buffer||(r=new Uint8Array(r)),r},readAsync=(A,r,t)=>{A=isFileURI(A)?new URL(A):nodePath.normalize(A),fs.readFile(A,function(i,o){i?t(i):r(o.buffer)})},process.argv.length>1&&(thisProgram=process.argv[1].replace(/\\/g,"/")),arguments_=process.argv.slice(2),typeof module<"u"&&(module.exports=Module),quit_=(A,r)=>{if(keepRuntimeAlive())throw process.exitCode=A,r;logExceptionOnExit(r),process.exit(A)},Module.inspect=function(){return"[Emscripten Module object]"}}else(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&(ENVIRONMENT_IS_WORKER?scriptDirectory=self.location.href:document!==void 0&&document.currentScript&&(scriptDirectory=document.currentScript.src),scriptDirectory=scriptDirectory.indexOf("blob:")!==0?scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1):"",read_=A=>{var r=new XMLHttpRequest;return r.open("GET",A,!1),r.send(null),r.responseText},ENVIRONMENT_IS_WORKER&&(readBinary=A=>{var r=new XMLHttpRequest;return r.open("GET",A,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),readAsync=(A,r,t)=>{var i=new XMLHttpRequest;i.open("GET",A,!0),i.responseType="arraybuffer",i.onload=()=>{i.status==200||i.status==0&&i.response?r(i.response):t()},i.onerror=t,i.send(null)},setWindowTitle=A=>document.title=A);var out=Module.print||console.log.bind(console),err=Module.printErr||console.warn.bind(console);Object.assign(Module,moduleOverrides),moduleOverrides=null,Module.arguments&&(arguments_=Module.arguments),Module.thisProgram&&(thisProgram=Module.thisProgram),Module.quit&&(quit_=Module.quit);var STACK_ALIGN=16,dynamicLibraries=Module.dynamicLibraries||[],wasmBinary;Module.wasmBinary&&(wasmBinary=Module.wasmBinary);var noExitRuntime=Module.noExitRuntime||!0,wasmMemory;typeof WebAssembly!="object"&&abort("no native wasm support detected");var ABORT=!1,EXITSTATUS,UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function UTF8ArrayToString(A,r,t){for(var i=r+t,o=r;A[o]&&!(o>=i);)++o;if(o-r>16&&A.buffer&&UTF8Decoder)return UTF8Decoder.decode(A.subarray(r,o));for(var s="";r>10,56320|1023&B)}}else s+=String.fromCharCode((31&g)<<6|E)}else s+=String.fromCharCode(g)}return s}function UTF8ToString(A,r){return A?UTF8ArrayToString(HEAPU8,A,r):""}function stringToUTF8Array(A,r,t,i){if(!(i>0))return 0;for(var o=t,s=t+i-1,g=0;g=55296&&E<=57343&&(E=65536+((1023&E)<<10)|1023&A.charCodeAt(++g)),E<=127){if(t>=s)break;r[t++]=E}else if(E<=2047){if(t+1>=s)break;r[t++]=192|E>>6,r[t++]=128|63&E}else if(E<=65535){if(t+2>=s)break;r[t++]=224|E>>12,r[t++]=128|E>>6&63,r[t++]=128|63&E}else{if(t+3>=s)break;r[t++]=240|E>>18,r[t++]=128|E>>12&63,r[t++]=128|E>>6&63,r[t++]=128|63&E}}return r[t]=0,t-o}function stringToUTF8(A,r,t){return stringToUTF8Array(A,HEAPU8,r,t)}function lengthBytesUTF8(A){for(var r=0,t=0;t=55296&&i<=57343?(r+=4,++t):r+=3}return r}function updateGlobalBufferAndViews(A){buffer=A,Module.HEAP8=HEAP8=new Int8Array(A),Module.HEAP16=HEAP16=new Int16Array(A),Module.HEAP32=HEAP32=new Int32Array(A),Module.HEAPU8=HEAPU8=new Uint8Array(A),Module.HEAPU16=HEAPU16=new Uint16Array(A),Module.HEAPU32=HEAPU32=new Uint32Array(A),Module.HEAPF32=HEAPF32=new Float32Array(A),Module.HEAPF64=HEAPF64=new Float64Array(A)}var INITIAL_MEMORY=Module.INITIAL_MEMORY||33554432;wasmMemory=Module.wasmMemory?Module.wasmMemory:new WebAssembly.Memory({initial:INITIAL_MEMORY/65536,maximum:32768}),wasmMemory&&(buffer=wasmMemory.buffer),INITIAL_MEMORY=buffer.byteLength,updateGlobalBufferAndViews(buffer);var wasmTable=new WebAssembly.Table({initial:20,element:"anyfunc"}),__ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATPOSTRUN__=[],__RELOC_FUNCS__=[],runtimeInitialized=!1;function keepRuntimeAlive(){return noExitRuntime}function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=!0,callRuntimeCallbacks(__RELOC_FUNCS__),callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(A){__ATPRERUN__.unshift(A)}function addOnInit(A){__ATINIT__.unshift(A)}function addOnPostRun(A){__ATPOSTRUN__.unshift(A)}var runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function addRunDependency(A){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(A){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var r=dependenciesFulfilled;dependenciesFulfilled=null,r()}}function abort(A){throw Module.onAbort&&Module.onAbort(A),err(A="Aborted("+A+")"),ABORT=!0,EXITSTATUS=1,A+=". Build with -sASSERTIONS for more info.",new WebAssembly.RuntimeError(A)}var dataURIPrefix="data:application/octet-stream;base64,",wasmBinaryFile,tempDouble,tempI64;function isDataURI(A){return A.startsWith(dataURIPrefix)}function isFileURI(A){return A.startsWith("file://")}function getBinary(A){try{if(A==wasmBinaryFile&&wasmBinary)return new Uint8Array(wasmBinary);if(readBinary)return readBinary(A);throw"both async and sync fetching of the wasm failed"}catch(r){abort(r)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"&&!isFileURI(wasmBinaryFile))return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(A){if(!A.ok)throw"failed to load wasm binary file at '"+wasmBinaryFile+"'";return A.arrayBuffer()}).catch(function(){return getBinary(wasmBinaryFile)});if(readAsync)return new Promise(function(A,r){readAsync(wasmBinaryFile,function(t){A(new Uint8Array(t))},r)})}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var A={env:asmLibraryArg,wasi_snapshot_preview1:asmLibraryArg,"GOT.mem":new Proxy(asmLibraryArg,GOTHandler),"GOT.func":new Proxy(asmLibraryArg,GOTHandler)};function r(o,s){var g=o.exports;g=relocateExports(g,1024);var E=getDylinkMetadata(s);E.neededDynlibs&&(dynamicLibraries=E.neededDynlibs.concat(dynamicLibraries)),mergeLibSymbols(g,"main"),Module.asm=g,addOnInit(Module.asm.__wasm_call_ctors),__RELOC_FUNCS__.push(Module.asm.__wasm_apply_data_relocs),removeRunDependency("wasm-instantiate")}function t(o){r(o.instance,o.module)}function i(o){return getBinaryPromise().then(function(s){return WebAssembly.instantiate(s,A)}).then(function(s){return s}).then(o,function(s){err("failed to asynchronously prepare wasm: "+s),abort(s)})}if(addRunDependency("wasm-instantiate"),Module.instantiateWasm)try{return Module.instantiateWasm(A,r)}catch(o){return err("Module.instantiateWasm callback failed with error: "+o),!1}return wasmBinary||typeof WebAssembly.instantiateStreaming!="function"||isDataURI(wasmBinaryFile)||isFileURI(wasmBinaryFile)||ENVIRONMENT_IS_NODE||typeof fetch!="function"?i(t):fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(o){return WebAssembly.instantiateStreaming(o,A).then(t,function(s){return err("wasm streaming compile failed: "+s),err("falling back to ArrayBuffer instantiation"),i(t)})}),{}}wasmBinaryFile="tree-sitter.wasm",isDataURI(wasmBinaryFile)||(wasmBinaryFile=locateFile(wasmBinaryFile));var ASM_CONSTS={};function ExitStatus(A){this.name="ExitStatus",this.message="Program terminated with exit("+A+")",this.status=A}var GOT={},CurrentModuleWeakSymbols=new Set([]),GOTHandler={get:function(A,r){var t=GOT[r];return t||(t=GOT[r]=new WebAssembly.Global({value:"i32",mutable:!0})),CurrentModuleWeakSymbols.has(r)||(t.required=!0),t}};function callRuntimeCallbacks(A){for(;A.length>0;)A.shift()(Module)}function getDylinkMetadata(A){var r=0,t=0;function i(){for(var T=0,v=1;;){var F=A[r++];if(T+=(127&F)*v,v*=128,!(128&F))break}return T}function o(){var T=i();return UTF8ArrayToString(A,(r+=T)-T,T)}function s(T,v){if(T)throw new Error(v)}var g="dylink.0";if(A instanceof WebAssembly.Module){var E=WebAssembly.Module.customSections(A,g);E.length===0&&(g="dylink",E=WebAssembly.Module.customSections(A,g)),s(E.length===0,"need dylink section"),t=(A=new Uint8Array(E[0])).length}else{s(new Uint32Array(new Uint8Array(A.subarray(0,24)).buffer)[0]!=1836278016,"need to see wasm magic number"),s(A[8]!==0,"need the dylink section to be first"),r=9;var p=i();t=r+p,g=o()}var B={neededDynlibs:[],tlsExports:new Set,weakImports:new Set};if(g=="dylink"){B.memorySize=i(),B.memoryAlign=i(),B.tableSize=i(),B.tableAlign=i();for(var m=i(),_=0;_>0];case"i16":return HEAP16[A>>1];case"i32":case"i64":return HEAP32[A>>2];case"float":return HEAPF32[A>>2];case"double":return HEAPF64[A>>3];case"*":return HEAPU32[A>>2];default:abort("invalid type for getValue: "+r)}return null}function asmjsMangle(A){return A.indexOf("dynCall_")==0||["stackAlloc","stackSave","stackRestore","getTempRet0","setTempRet0"].includes(A)?A:"_"+A}function mergeLibSymbols(A,r){for(var t in A)if(A.hasOwnProperty(t)){asmLibraryArg.hasOwnProperty(t)||(asmLibraryArg[t]=A[t]);var i=asmjsMangle(t);Module.hasOwnProperty(i)||(Module[i]=A[t]),t=="__main_argc_argv"&&(Module._main=A[t])}}var LDSO={loadedLibsByName:{},loadedLibsByHandle:{}};function dynCallLegacy(A,r,t){var i=Module["dynCall_"+A];return t&&t.length?i.apply(null,[r].concat(t)):i.call(null,r)}var wasmTableMirror=[];function getWasmTableEntry(A){var r=wasmTableMirror[A];return r||(A>=wasmTableMirror.length&&(wasmTableMirror.length=A+1),wasmTableMirror[A]=r=wasmTable.get(A)),r}function dynCall(A,r,t){return A.includes("j")?dynCallLegacy(A,r,t):getWasmTableEntry(r).apply(null,t)}function createInvokeFunction(A){return function(){var r=stackSave();try{return dynCall(A,arguments[0],Array.prototype.slice.call(arguments,1))}catch(t){if(stackRestore(r),t!==t+0)throw t;_setThrew(1,0)}}}var ___heap_base=78144;function zeroMemory(A,r){return HEAPU8.fill(0,A,A+r),A}function getMemory(A){if(runtimeInitialized)return zeroMemory(_malloc(A),A);var r=___heap_base,t=r+A+15&-16;return ___heap_base=t,GOT.__heap_base.value=t,r}function isInternalSym(A){return["__cpp_exception","__c_longjmp","__wasm_apply_data_relocs","__dso_handle","__tls_size","__tls_align","__set_stack_limits","_emscripten_tls_init","__wasm_init_tls","__wasm_call_ctors","__start_em_asm","__stop_em_asm"].includes(A)}function uleb128Encode(A,r){A<128?r.push(A):r.push(A%128|128,A>>7)}function sigToWasmTypes(A){for(var r={i:"i32",j:"i32",f:"f32",d:"f64",p:"i32"},t={parameters:[],results:A[0]=="v"?[]:[r[A[0]]]},i=1;i>0];if(firstLoad){var memAlign=Math.pow(2,metadata.memoryAlign);memAlign=Math.max(memAlign,STACK_ALIGN);var memoryBase=metadata.memorySize?alignMemory(getMemory(metadata.memorySize+memAlign),memAlign):0,tableBase=metadata.tableSize?wasmTable.length:0;handle&&(HEAP8[handle+12>>0]=1,HEAPU32[handle+16>>2]=memoryBase,HEAP32[handle+20>>2]=metadata.memorySize,HEAPU32[handle+24>>2]=tableBase,HEAP32[handle+28>>2]=metadata.tableSize)}else memoryBase=HEAPU32[handle+16>>2],tableBase=HEAPU32[handle+24>>2];var tableGrowthNeeded=tableBase+metadata.tableSize-wasmTable.length,moduleExports;function resolveSymbol(A){var r=resolveGlobalSymbol(A,!1);return r||(r=moduleExports[A]),r}tableGrowthNeeded>0&&wasmTable.grow(tableGrowthNeeded);var proxyHandler={get:function(A,r){switch(r){case"__memory_base":return memoryBase;case"__table_base":return tableBase}if(r in asmLibraryArg)return asmLibraryArg[r];var t;return r in A||(A[r]=function(){return t||(t=resolveSymbol(r)),t.apply(null,arguments)}),A[r]}},proxy=new Proxy({},proxyHandler),info={"GOT.mem":new Proxy({},GOTHandler),"GOT.func":new Proxy({},GOTHandler),env:proxy,wasi_snapshot_preview1:proxy};function postInstantiation(instance){function addEmAsm(addr,body){for(var args=[],arity=0;arity<16&&body.indexOf("$"+arity)!=-1;arity++)args.push("$"+arity);args=args.join(",");var func="("+args+" ) => { "+body+"};";ASM_CONSTS[start]=eval(func)}if(updateTableMap(tableBase,metadata.tableSize),moduleExports=relocateExports(instance.exports,memoryBase),flags.allowUndefined||reportUndefinedSymbols(),"__start_em_asm"in moduleExports)for(var start=moduleExports.__start_em_asm,stop=moduleExports.__stop_em_asm;startB(new Uint8Array(_)),m)});if(!readBinary)throw new Error(E+": file not found, and synchronous loading of external files is not available");return readBinary(E)}function s(){if(typeof preloadedWasm<"u"&&preloadedWasm[A]){var E=preloadedWasm[A];return r.loadAsync?Promise.resolve(E):E}return r.loadAsync?o(A).then(function(p){return loadWebAssemblyModule(p,r,t)}):loadWebAssemblyModule(o(A),r,t)}function g(E){i.global&&mergeLibSymbols(E,A),i.module=E}return i={refcount:r.nodelete?1/0:1,name:A,module:"loading",global:r.global},LDSO.loadedLibsByName[A]=i,t&&(LDSO.loadedLibsByHandle[t]=i),r.loadAsync?s().then(function(E){return g(E),!0}):(g(s()),!0)}function reportUndefinedSymbols(){for(var A in GOT)if(GOT[A].value==0){var r=resolveGlobalSymbol(A,!0);if(!r&&!GOT[A].required)continue;if(typeof r=="function")GOT[A].value=addFunction(r,r.sig);else{if(typeof r!="number")throw new Error("bad export type for `"+A+"`: "+typeof r);GOT[A].value=r}}}function preloadDylibs(){dynamicLibraries.length?(addRunDependency("preloadDylibs"),dynamicLibraries.reduce(function(A,r){return A.then(function(){return loadDynamicLibrary(r,{loadAsync:!0,global:!0,nodelete:!0,allowUndefined:!0})})},Promise.resolve()).then(function(){reportUndefinedSymbols(),removeRunDependency("preloadDylibs")})):reportUndefinedSymbols()}function setValue(A,r,t="i8"){switch(t.endsWith("*")&&(t="*"),t){case"i1":case"i8":HEAP8[A>>0]=r;break;case"i16":HEAP16[A>>1]=r;break;case"i32":HEAP32[A>>2]=r;break;case"i64":tempI64=[r>>>0,(tempDouble=r,+Math.abs(tempDouble)>=1?tempDouble>0?(0|Math.min(+Math.floor(tempDouble/4294967296),4294967295))>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[A>>2]=tempI64[0],HEAP32[A+4>>2]=tempI64[1];break;case"float":HEAPF32[A>>2]=r;break;case"double":HEAPF64[A>>3]=r;break;case"*":HEAPU32[A>>2]=r;break;default:abort("invalid type for setValue: "+t)}}var ___memory_base=new WebAssembly.Global({value:"i32",mutable:!1},1024),___stack_pointer=new WebAssembly.Global({value:"i32",mutable:!0},78144),___table_base=new WebAssembly.Global({value:"i32",mutable:!1},1),nowIsMonotonic=!0,_emscripten_get_now;function __emscripten_get_now_is_monotonic(){return nowIsMonotonic}function _abort(){abort("")}function _emscripten_date_now(){return Date.now()}function _emscripten_memcpy_big(A,r,t){HEAPU8.copyWithin(A,r,r+t)}function getHeapMax(){return 2147483648}function emscripten_realloc_buffer(A){try{return wasmMemory.grow(A-buffer.byteLength+65535>>>16),updateGlobalBufferAndViews(wasmMemory.buffer),1}catch{}}function _emscripten_resize_heap(A){var r=HEAPU8.length;A>>>=0;var t=getHeapMax();if(A>t)return!1;for(var i=1;i<=4;i*=2){var o=r*(1+.2/i);if(o=Math.min(o,A+100663296),emscripten_realloc_buffer(Math.min(t,(s=Math.max(A,o))+((g=65536)-s%g)%g)))return!0}var s,g;return!1}__emscripten_get_now_is_monotonic.sig="i",Module._abort=_abort,_abort.sig="v",_emscripten_date_now.sig="d",_emscripten_get_now=ENVIRONMENT_IS_NODE?()=>{var A=process.hrtime();return 1e3*A[0]+A[1]/1e6}:()=>performance.now(),_emscripten_get_now.sig="d",_emscripten_memcpy_big.sig="vppp",_emscripten_resize_heap.sig="ip";var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt:function(A,r,t){if(PATH.isAbs(r))return r;var i;if(A===-100?i=FS.cwd():i=SYSCALLS.getStreamFromFD(A).path,r.length==0){if(!t)throw new FS.ErrnoError(44);return i}return PATH.join2(i,r)},doStat:function(A,r,t){try{var i=A(r)}catch(E){if(E&&E.node&&PATH.normalize(r)!==PATH.normalize(FS.getPath(E.node)))return-54;throw E}HEAP32[t>>2]=i.dev,HEAP32[t+8>>2]=i.ino,HEAP32[t+12>>2]=i.mode,HEAPU32[t+16>>2]=i.nlink,HEAP32[t+20>>2]=i.uid,HEAP32[t+24>>2]=i.gid,HEAP32[t+28>>2]=i.rdev,tempI64=[i.size>>>0,(tempDouble=i.size,+Math.abs(tempDouble)>=1?tempDouble>0?(0|Math.min(+Math.floor(tempDouble/4294967296),4294967295))>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+40>>2]=tempI64[0],HEAP32[t+44>>2]=tempI64[1],HEAP32[t+48>>2]=4096,HEAP32[t+52>>2]=i.blocks;var o=i.atime.getTime(),s=i.mtime.getTime(),g=i.ctime.getTime();return tempI64=[Math.floor(o/1e3)>>>0,(tempDouble=Math.floor(o/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?(0|Math.min(+Math.floor(tempDouble/4294967296),4294967295))>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+56>>2]=tempI64[0],HEAP32[t+60>>2]=tempI64[1],HEAPU32[t+64>>2]=o%1e3*1e3,tempI64=[Math.floor(s/1e3)>>>0,(tempDouble=Math.floor(s/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?(0|Math.min(+Math.floor(tempDouble/4294967296),4294967295))>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+72>>2]=tempI64[0],HEAP32[t+76>>2]=tempI64[1],HEAPU32[t+80>>2]=s%1e3*1e3,tempI64=[Math.floor(g/1e3)>>>0,(tempDouble=Math.floor(g/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?(0|Math.min(+Math.floor(tempDouble/4294967296),4294967295))>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+88>>2]=tempI64[0],HEAP32[t+92>>2]=tempI64[1],HEAPU32[t+96>>2]=g%1e3*1e3,tempI64=[i.ino>>>0,(tempDouble=i.ino,+Math.abs(tempDouble)>=1?tempDouble>0?(0|Math.min(+Math.floor(tempDouble/4294967296),4294967295))>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+104>>2]=tempI64[0],HEAP32[t+108>>2]=tempI64[1],0},doMsync:function(A,r,t,i,o){if(!FS.isFile(r.node.mode))throw new FS.ErrnoError(43);if(2&i)return 0;var s=HEAPU8.slice(A,A+t);FS.msync(r,s,o,t,i)},varargs:void 0,get:function(){return SYSCALLS.varargs+=4,HEAP32[SYSCALLS.varargs-4>>2]},getStr:function(A){return UTF8ToString(A)},getStreamFromFD:function(A){var r=FS.getStream(A);if(!r)throw new FS.ErrnoError(8);return r}};function _proc_exit(A){EXITSTATUS=A,keepRuntimeAlive()||(Module.onExit&&Module.onExit(A),ABORT=!0),quit_(A,new ExitStatus(A))}function exitJS(A,r){EXITSTATUS=A,_proc_exit(A)}_proc_exit.sig="vi";var _exit=exitJS;function _fd_close(A){try{var r=SYSCALLS.getStreamFromFD(A);return FS.close(r),0}catch(t){if(typeof FS>"u"||!(t instanceof FS.ErrnoError))throw t;return t.errno}}function convertI32PairToI53Checked(A,r){return r+2097152>>>0<4194305-!!A?(A>>>0)+4294967296*r:NaN}function _fd_seek(A,r,t,i,o){try{var s=convertI32PairToI53Checked(r,t);if(isNaN(s))return 61;var g=SYSCALLS.getStreamFromFD(A);return FS.llseek(g,s,i),tempI64=[g.position>>>0,(tempDouble=g.position,+Math.abs(tempDouble)>=1?tempDouble>0?(0|Math.min(+Math.floor(tempDouble/4294967296),4294967295))>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[o>>2]=tempI64[0],HEAP32[o+4>>2]=tempI64[1],g.getdents&&s===0&&i===0&&(g.getdents=null),0}catch(E){if(typeof FS>"u"||!(E instanceof FS.ErrnoError))throw E;return E.errno}}function doWritev(A,r,t,i){for(var o=0,s=0;s>2],E=HEAPU32[r+4>>2];r+=8;var p=FS.write(A,HEAP8,g,E,i);if(p<0)return-1;o+=p,i!==void 0&&(i+=p)}return o}function _fd_write(A,r,t,i){try{var o=doWritev(SYSCALLS.getStreamFromFD(A),r,t);return HEAPU32[i>>2]=o,0}catch(s){if(typeof FS>"u"||!(s instanceof FS.ErrnoError))throw s;return s.errno}}function _tree_sitter_log_callback(A,r){if(currentLogCallback){let t=UTF8ToString(r);currentLogCallback(t,A!==0)}}function _tree_sitter_parse_callback(A,r,t,i,o){var s=currentParseCallback(r,{row:t,column:i});typeof s=="string"?(setValue(o,s.length,"i32"),stringToUTF16(s,A,10240)):setValue(o,0,"i32")}function handleException(A){if(A instanceof ExitStatus||A=="unwind")return EXITSTATUS;quit_(1,A)}function allocateUTF8OnStack(A){var r=lengthBytesUTF8(A)+1,t=stackAlloc(r);return stringToUTF8Array(A,HEAP8,t,r),t}function stringToUTF16(A,r,t){if(t===void 0&&(t=2147483647),t<2)return 0;for(var i=r,o=(t-=2)<2*A.length?t/2:A.length,s=0;s>1]=g,r+=2}return HEAP16[r>>1]=0,r-i}function AsciiToString(A){for(var r="";;){var t=HEAPU8[A++>>0];if(!t)return r;r+=String.fromCharCode(t)}}_exit.sig="vi",_fd_close.sig="ii",_fd_seek.sig="iijip",_fd_write.sig="iippp";var asmLibraryArg={__heap_base:___heap_base,__indirect_function_table:wasmTable,__memory_base:___memory_base,__stack_pointer:___stack_pointer,__table_base:___table_base,_emscripten_get_now_is_monotonic:__emscripten_get_now_is_monotonic,abort:_abort,emscripten_get_now:_emscripten_get_now,emscripten_memcpy_big:_emscripten_memcpy_big,emscripten_resize_heap:_emscripten_resize_heap,exit:_exit,fd_close:_fd_close,fd_seek:_fd_seek,fd_write:_fd_write,memory:wasmMemory,tree_sitter_log_callback:_tree_sitter_log_callback,tree_sitter_parse_callback:_tree_sitter_parse_callback},asm=createWasm(),___wasm_call_ctors=Module.___wasm_call_ctors=function(){return(___wasm_call_ctors=Module.___wasm_call_ctors=Module.asm.__wasm_call_ctors).apply(null,arguments)},___wasm_apply_data_relocs=Module.___wasm_apply_data_relocs=function(){return(___wasm_apply_data_relocs=Module.___wasm_apply_data_relocs=Module.asm.__wasm_apply_data_relocs).apply(null,arguments)},_malloc=Module._malloc=function(){return(_malloc=Module._malloc=Module.asm.malloc).apply(null,arguments)},_calloc=Module._calloc=function(){return(_calloc=Module._calloc=Module.asm.calloc).apply(null,arguments)},_realloc=Module._realloc=function(){return(_realloc=Module._realloc=Module.asm.realloc).apply(null,arguments)},_free=Module._free=function(){return(_free=Module._free=Module.asm.free).apply(null,arguments)},_ts_language_symbol_count=Module._ts_language_symbol_count=function(){return(_ts_language_symbol_count=Module._ts_language_symbol_count=Module.asm.ts_language_symbol_count).apply(null,arguments)},_ts_language_version=Module._ts_language_version=function(){return(_ts_language_version=Module._ts_language_version=Module.asm.ts_language_version).apply(null,arguments)},_ts_language_field_count=Module._ts_language_field_count=function(){return(_ts_language_field_count=Module._ts_language_field_count=Module.asm.ts_language_field_count).apply(null,arguments)},_ts_language_symbol_name=Module._ts_language_symbol_name=function(){return(_ts_language_symbol_name=Module._ts_language_symbol_name=Module.asm.ts_language_symbol_name).apply(null,arguments)},_ts_language_symbol_for_name=Module._ts_language_symbol_for_name=function(){return(_ts_language_symbol_for_name=Module._ts_language_symbol_for_name=Module.asm.ts_language_symbol_for_name).apply(null,arguments)},_ts_language_symbol_type=Module._ts_language_symbol_type=function(){return(_ts_language_symbol_type=Module._ts_language_symbol_type=Module.asm.ts_language_symbol_type).apply(null,arguments)},_ts_language_field_name_for_id=Module._ts_language_field_name_for_id=function(){return(_ts_language_field_name_for_id=Module._ts_language_field_name_for_id=Module.asm.ts_language_field_name_for_id).apply(null,arguments)},_memset=Module._memset=function(){return(_memset=Module._memset=Module.asm.memset).apply(null,arguments)},_memcpy=Module._memcpy=function(){return(_memcpy=Module._memcpy=Module.asm.memcpy).apply(null,arguments)},_ts_parser_delete=Module._ts_parser_delete=function(){return(_ts_parser_delete=Module._ts_parser_delete=Module.asm.ts_parser_delete).apply(null,arguments)},_ts_parser_reset=Module._ts_parser_reset=function(){return(_ts_parser_reset=Module._ts_parser_reset=Module.asm.ts_parser_reset).apply(null,arguments)},_ts_parser_set_language=Module._ts_parser_set_language=function(){return(_ts_parser_set_language=Module._ts_parser_set_language=Module.asm.ts_parser_set_language).apply(null,arguments)},_ts_parser_timeout_micros=Module._ts_parser_timeout_micros=function(){return(_ts_parser_timeout_micros=Module._ts_parser_timeout_micros=Module.asm.ts_parser_timeout_micros).apply(null,arguments)},_ts_parser_set_timeout_micros=Module._ts_parser_set_timeout_micros=function(){return(_ts_parser_set_timeout_micros=Module._ts_parser_set_timeout_micros=Module.asm.ts_parser_set_timeout_micros).apply(null,arguments)},_memmove=Module._memmove=function(){return(_memmove=Module._memmove=Module.asm.memmove).apply(null,arguments)},_memcmp=Module._memcmp=function(){return(_memcmp=Module._memcmp=Module.asm.memcmp).apply(null,arguments)},_ts_query_new=Module._ts_query_new=function(){return(_ts_query_new=Module._ts_query_new=Module.asm.ts_query_new).apply(null,arguments)},_ts_query_delete=Module._ts_query_delete=function(){return(_ts_query_delete=Module._ts_query_delete=Module.asm.ts_query_delete).apply(null,arguments)},_iswspace=Module._iswspace=function(){return(_iswspace=Module._iswspace=Module.asm.iswspace).apply(null,arguments)},_iswalnum=Module._iswalnum=function(){return(_iswalnum=Module._iswalnum=Module.asm.iswalnum).apply(null,arguments)},_ts_query_pattern_count=Module._ts_query_pattern_count=function(){return(_ts_query_pattern_count=Module._ts_query_pattern_count=Module.asm.ts_query_pattern_count).apply(null,arguments)},_ts_query_capture_count=Module._ts_query_capture_count=function(){return(_ts_query_capture_count=Module._ts_query_capture_count=Module.asm.ts_query_capture_count).apply(null,arguments)},_ts_query_string_count=Module._ts_query_string_count=function(){return(_ts_query_string_count=Module._ts_query_string_count=Module.asm.ts_query_string_count).apply(null,arguments)},_ts_query_capture_name_for_id=Module._ts_query_capture_name_for_id=function(){return(_ts_query_capture_name_for_id=Module._ts_query_capture_name_for_id=Module.asm.ts_query_capture_name_for_id).apply(null,arguments)},_ts_query_string_value_for_id=Module._ts_query_string_value_for_id=function(){return(_ts_query_string_value_for_id=Module._ts_query_string_value_for_id=Module.asm.ts_query_string_value_for_id).apply(null,arguments)},_ts_query_predicates_for_pattern=Module._ts_query_predicates_for_pattern=function(){return(_ts_query_predicates_for_pattern=Module._ts_query_predicates_for_pattern=Module.asm.ts_query_predicates_for_pattern).apply(null,arguments)},_ts_tree_copy=Module._ts_tree_copy=function(){return(_ts_tree_copy=Module._ts_tree_copy=Module.asm.ts_tree_copy).apply(null,arguments)},_ts_tree_delete=Module._ts_tree_delete=function(){return(_ts_tree_delete=Module._ts_tree_delete=Module.asm.ts_tree_delete).apply(null,arguments)},_ts_init=Module._ts_init=function(){return(_ts_init=Module._ts_init=Module.asm.ts_init).apply(null,arguments)},_ts_parser_new_wasm=Module._ts_parser_new_wasm=function(){return(_ts_parser_new_wasm=Module._ts_parser_new_wasm=Module.asm.ts_parser_new_wasm).apply(null,arguments)},_ts_parser_enable_logger_wasm=Module._ts_parser_enable_logger_wasm=function(){return(_ts_parser_enable_logger_wasm=Module._ts_parser_enable_logger_wasm=Module.asm.ts_parser_enable_logger_wasm).apply(null,arguments)},_ts_parser_parse_wasm=Module._ts_parser_parse_wasm=function(){return(_ts_parser_parse_wasm=Module._ts_parser_parse_wasm=Module.asm.ts_parser_parse_wasm).apply(null,arguments)},_ts_language_type_is_named_wasm=Module._ts_language_type_is_named_wasm=function(){return(_ts_language_type_is_named_wasm=Module._ts_language_type_is_named_wasm=Module.asm.ts_language_type_is_named_wasm).apply(null,arguments)},_ts_language_type_is_visible_wasm=Module._ts_language_type_is_visible_wasm=function(){return(_ts_language_type_is_visible_wasm=Module._ts_language_type_is_visible_wasm=Module.asm.ts_language_type_is_visible_wasm).apply(null,arguments)},_ts_tree_root_node_wasm=Module._ts_tree_root_node_wasm=function(){return(_ts_tree_root_node_wasm=Module._ts_tree_root_node_wasm=Module.asm.ts_tree_root_node_wasm).apply(null,arguments)},_ts_tree_edit_wasm=Module._ts_tree_edit_wasm=function(){return(_ts_tree_edit_wasm=Module._ts_tree_edit_wasm=Module.asm.ts_tree_edit_wasm).apply(null,arguments)},_ts_tree_get_changed_ranges_wasm=Module._ts_tree_get_changed_ranges_wasm=function(){return(_ts_tree_get_changed_ranges_wasm=Module._ts_tree_get_changed_ranges_wasm=Module.asm.ts_tree_get_changed_ranges_wasm).apply(null,arguments)},_ts_tree_cursor_new_wasm=Module._ts_tree_cursor_new_wasm=function(){return(_ts_tree_cursor_new_wasm=Module._ts_tree_cursor_new_wasm=Module.asm.ts_tree_cursor_new_wasm).apply(null,arguments)},_ts_tree_cursor_delete_wasm=Module._ts_tree_cursor_delete_wasm=function(){return(_ts_tree_cursor_delete_wasm=Module._ts_tree_cursor_delete_wasm=Module.asm.ts_tree_cursor_delete_wasm).apply(null,arguments)},_ts_tree_cursor_reset_wasm=Module._ts_tree_cursor_reset_wasm=function(){return(_ts_tree_cursor_reset_wasm=Module._ts_tree_cursor_reset_wasm=Module.asm.ts_tree_cursor_reset_wasm).apply(null,arguments)},_ts_tree_cursor_goto_first_child_wasm=Module._ts_tree_cursor_goto_first_child_wasm=function(){return(_ts_tree_cursor_goto_first_child_wasm=Module._ts_tree_cursor_goto_first_child_wasm=Module.asm.ts_tree_cursor_goto_first_child_wasm).apply(null,arguments)},_ts_tree_cursor_goto_next_sibling_wasm=Module._ts_tree_cursor_goto_next_sibling_wasm=function(){return(_ts_tree_cursor_goto_next_sibling_wasm=Module._ts_tree_cursor_goto_next_sibling_wasm=Module.asm.ts_tree_cursor_goto_next_sibling_wasm).apply(null,arguments)},_ts_tree_cursor_goto_parent_wasm=Module._ts_tree_cursor_goto_parent_wasm=function(){return(_ts_tree_cursor_goto_parent_wasm=Module._ts_tree_cursor_goto_parent_wasm=Module.asm.ts_tree_cursor_goto_parent_wasm).apply(null,arguments)},_ts_tree_cursor_current_node_type_id_wasm=Module._ts_tree_cursor_current_node_type_id_wasm=function(){return(_ts_tree_cursor_current_node_type_id_wasm=Module._ts_tree_cursor_current_node_type_id_wasm=Module.asm.ts_tree_cursor_current_node_type_id_wasm).apply(null,arguments)},_ts_tree_cursor_current_node_is_named_wasm=Module._ts_tree_cursor_current_node_is_named_wasm=function(){return(_ts_tree_cursor_current_node_is_named_wasm=Module._ts_tree_cursor_current_node_is_named_wasm=Module.asm.ts_tree_cursor_current_node_is_named_wasm).apply(null,arguments)},_ts_tree_cursor_current_node_is_missing_wasm=Module._ts_tree_cursor_current_node_is_missing_wasm=function(){return(_ts_tree_cursor_current_node_is_missing_wasm=Module._ts_tree_cursor_current_node_is_missing_wasm=Module.asm.ts_tree_cursor_current_node_is_missing_wasm).apply(null,arguments)},_ts_tree_cursor_current_node_id_wasm=Module._ts_tree_cursor_current_node_id_wasm=function(){return(_ts_tree_cursor_current_node_id_wasm=Module._ts_tree_cursor_current_node_id_wasm=Module.asm.ts_tree_cursor_current_node_id_wasm).apply(null,arguments)},_ts_tree_cursor_start_position_wasm=Module._ts_tree_cursor_start_position_wasm=function(){return(_ts_tree_cursor_start_position_wasm=Module._ts_tree_cursor_start_position_wasm=Module.asm.ts_tree_cursor_start_position_wasm).apply(null,arguments)},_ts_tree_cursor_end_position_wasm=Module._ts_tree_cursor_end_position_wasm=function(){return(_ts_tree_cursor_end_position_wasm=Module._ts_tree_cursor_end_position_wasm=Module.asm.ts_tree_cursor_end_position_wasm).apply(null,arguments)},_ts_tree_cursor_start_index_wasm=Module._ts_tree_cursor_start_index_wasm=function(){return(_ts_tree_cursor_start_index_wasm=Module._ts_tree_cursor_start_index_wasm=Module.asm.ts_tree_cursor_start_index_wasm).apply(null,arguments)},_ts_tree_cursor_end_index_wasm=Module._ts_tree_cursor_end_index_wasm=function(){return(_ts_tree_cursor_end_index_wasm=Module._ts_tree_cursor_end_index_wasm=Module.asm.ts_tree_cursor_end_index_wasm).apply(null,arguments)},_ts_tree_cursor_current_field_id_wasm=Module._ts_tree_cursor_current_field_id_wasm=function(){return(_ts_tree_cursor_current_field_id_wasm=Module._ts_tree_cursor_current_field_id_wasm=Module.asm.ts_tree_cursor_current_field_id_wasm).apply(null,arguments)},_ts_tree_cursor_current_node_wasm=Module._ts_tree_cursor_current_node_wasm=function(){return(_ts_tree_cursor_current_node_wasm=Module._ts_tree_cursor_current_node_wasm=Module.asm.ts_tree_cursor_current_node_wasm).apply(null,arguments)},_ts_node_symbol_wasm=Module._ts_node_symbol_wasm=function(){return(_ts_node_symbol_wasm=Module._ts_node_symbol_wasm=Module.asm.ts_node_symbol_wasm).apply(null,arguments)},_ts_node_child_count_wasm=Module._ts_node_child_count_wasm=function(){return(_ts_node_child_count_wasm=Module._ts_node_child_count_wasm=Module.asm.ts_node_child_count_wasm).apply(null,arguments)},_ts_node_named_child_count_wasm=Module._ts_node_named_child_count_wasm=function(){return(_ts_node_named_child_count_wasm=Module._ts_node_named_child_count_wasm=Module.asm.ts_node_named_child_count_wasm).apply(null,arguments)},_ts_node_child_wasm=Module._ts_node_child_wasm=function(){return(_ts_node_child_wasm=Module._ts_node_child_wasm=Module.asm.ts_node_child_wasm).apply(null,arguments)},_ts_node_named_child_wasm=Module._ts_node_named_child_wasm=function(){return(_ts_node_named_child_wasm=Module._ts_node_named_child_wasm=Module.asm.ts_node_named_child_wasm).apply(null,arguments)},_ts_node_child_by_field_id_wasm=Module._ts_node_child_by_field_id_wasm=function(){return(_ts_node_child_by_field_id_wasm=Module._ts_node_child_by_field_id_wasm=Module.asm.ts_node_child_by_field_id_wasm).apply(null,arguments)},_ts_node_next_sibling_wasm=Module._ts_node_next_sibling_wasm=function(){return(_ts_node_next_sibling_wasm=Module._ts_node_next_sibling_wasm=Module.asm.ts_node_next_sibling_wasm).apply(null,arguments)},_ts_node_prev_sibling_wasm=Module._ts_node_prev_sibling_wasm=function(){return(_ts_node_prev_sibling_wasm=Module._ts_node_prev_sibling_wasm=Module.asm.ts_node_prev_sibling_wasm).apply(null,arguments)},_ts_node_next_named_sibling_wasm=Module._ts_node_next_named_sibling_wasm=function(){return(_ts_node_next_named_sibling_wasm=Module._ts_node_next_named_sibling_wasm=Module.asm.ts_node_next_named_sibling_wasm).apply(null,arguments)},_ts_node_prev_named_sibling_wasm=Module._ts_node_prev_named_sibling_wasm=function(){return(_ts_node_prev_named_sibling_wasm=Module._ts_node_prev_named_sibling_wasm=Module.asm.ts_node_prev_named_sibling_wasm).apply(null,arguments)},_ts_node_parent_wasm=Module._ts_node_parent_wasm=function(){return(_ts_node_parent_wasm=Module._ts_node_parent_wasm=Module.asm.ts_node_parent_wasm).apply(null,arguments)},_ts_node_descendant_for_index_wasm=Module._ts_node_descendant_for_index_wasm=function(){return(_ts_node_descendant_for_index_wasm=Module._ts_node_descendant_for_index_wasm=Module.asm.ts_node_descendant_for_index_wasm).apply(null,arguments)},_ts_node_named_descendant_for_index_wasm=Module._ts_node_named_descendant_for_index_wasm=function(){return(_ts_node_named_descendant_for_index_wasm=Module._ts_node_named_descendant_for_index_wasm=Module.asm.ts_node_named_descendant_for_index_wasm).apply(null,arguments)},_ts_node_descendant_for_position_wasm=Module._ts_node_descendant_for_position_wasm=function(){return(_ts_node_descendant_for_position_wasm=Module._ts_node_descendant_for_position_wasm=Module.asm.ts_node_descendant_for_position_wasm).apply(null,arguments)},_ts_node_named_descendant_for_position_wasm=Module._ts_node_named_descendant_for_position_wasm=function(){return(_ts_node_named_descendant_for_position_wasm=Module._ts_node_named_descendant_for_position_wasm=Module.asm.ts_node_named_descendant_for_position_wasm).apply(null,arguments)},_ts_node_start_point_wasm=Module._ts_node_start_point_wasm=function(){return(_ts_node_start_point_wasm=Module._ts_node_start_point_wasm=Module.asm.ts_node_start_point_wasm).apply(null,arguments)},_ts_node_end_point_wasm=Module._ts_node_end_point_wasm=function(){return(_ts_node_end_point_wasm=Module._ts_node_end_point_wasm=Module.asm.ts_node_end_point_wasm).apply(null,arguments)},_ts_node_start_index_wasm=Module._ts_node_start_index_wasm=function(){return(_ts_node_start_index_wasm=Module._ts_node_start_index_wasm=Module.asm.ts_node_start_index_wasm).apply(null,arguments)},_ts_node_end_index_wasm=Module._ts_node_end_index_wasm=function(){return(_ts_node_end_index_wasm=Module._ts_node_end_index_wasm=Module.asm.ts_node_end_index_wasm).apply(null,arguments)},_ts_node_to_string_wasm=Module._ts_node_to_string_wasm=function(){return(_ts_node_to_string_wasm=Module._ts_node_to_string_wasm=Module.asm.ts_node_to_string_wasm).apply(null,arguments)},_ts_node_children_wasm=Module._ts_node_children_wasm=function(){return(_ts_node_children_wasm=Module._ts_node_children_wasm=Module.asm.ts_node_children_wasm).apply(null,arguments)},_ts_node_named_children_wasm=Module._ts_node_named_children_wasm=function(){return(_ts_node_named_children_wasm=Module._ts_node_named_children_wasm=Module.asm.ts_node_named_children_wasm).apply(null,arguments)},_ts_node_descendants_of_type_wasm=Module._ts_node_descendants_of_type_wasm=function(){return(_ts_node_descendants_of_type_wasm=Module._ts_node_descendants_of_type_wasm=Module.asm.ts_node_descendants_of_type_wasm).apply(null,arguments)},_ts_node_is_named_wasm=Module._ts_node_is_named_wasm=function(){return(_ts_node_is_named_wasm=Module._ts_node_is_named_wasm=Module.asm.ts_node_is_named_wasm).apply(null,arguments)},_ts_node_has_changes_wasm=Module._ts_node_has_changes_wasm=function(){return(_ts_node_has_changes_wasm=Module._ts_node_has_changes_wasm=Module.asm.ts_node_has_changes_wasm).apply(null,arguments)},_ts_node_has_error_wasm=Module._ts_node_has_error_wasm=function(){return(_ts_node_has_error_wasm=Module._ts_node_has_error_wasm=Module.asm.ts_node_has_error_wasm).apply(null,arguments)},_ts_node_is_missing_wasm=Module._ts_node_is_missing_wasm=function(){return(_ts_node_is_missing_wasm=Module._ts_node_is_missing_wasm=Module.asm.ts_node_is_missing_wasm).apply(null,arguments)},_ts_query_matches_wasm=Module._ts_query_matches_wasm=function(){return(_ts_query_matches_wasm=Module._ts_query_matches_wasm=Module.asm.ts_query_matches_wasm).apply(null,arguments)},_ts_query_captures_wasm=Module._ts_query_captures_wasm=function(){return(_ts_query_captures_wasm=Module._ts_query_captures_wasm=Module.asm.ts_query_captures_wasm).apply(null,arguments)},___cxa_atexit=Module.___cxa_atexit=function(){return(___cxa_atexit=Module.___cxa_atexit=Module.asm.__cxa_atexit).apply(null,arguments)},_iswdigit=Module._iswdigit=function(){return(_iswdigit=Module._iswdigit=Module.asm.iswdigit).apply(null,arguments)},_iswalpha=Module._iswalpha=function(){return(_iswalpha=Module._iswalpha=Module.asm.iswalpha).apply(null,arguments)},_iswlower=Module._iswlower=function(){return(_iswlower=Module._iswlower=Module.asm.iswlower).apply(null,arguments)},_memchr=Module._memchr=function(){return(_memchr=Module._memchr=Module.asm.memchr).apply(null,arguments)},_strlen=Module._strlen=function(){return(_strlen=Module._strlen=Module.asm.strlen).apply(null,arguments)},_towupper=Module._towupper=function(){return(_towupper=Module._towupper=Module.asm.towupper).apply(null,arguments)},_setThrew=Module._setThrew=function(){return(_setThrew=Module._setThrew=Module.asm.setThrew).apply(null,arguments)},stackSave=Module.stackSave=function(){return(stackSave=Module.stackSave=Module.asm.stackSave).apply(null,arguments)},stackRestore=Module.stackRestore=function(){return(stackRestore=Module.stackRestore=Module.asm.stackRestore).apply(null,arguments)},stackAlloc=Module.stackAlloc=function(){return(stackAlloc=Module.stackAlloc=Module.asm.stackAlloc).apply(null,arguments)},__Znwm=Module.__Znwm=function(){return(__Znwm=Module.__Znwm=Module.asm._Znwm).apply(null,arguments)},__ZdlPv=Module.__ZdlPv=function(){return(__ZdlPv=Module.__ZdlPv=Module.asm._ZdlPv).apply(null,arguments)},__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev=Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev=function(){return(__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev=Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev).apply(null,arguments)},__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm=Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm=function(){return(__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm=Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm).apply(null,arguments)},__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm=Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm=function(){return(__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm=Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm).apply(null,arguments)},__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm=Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm=function(){return(__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm=Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm).apply(null,arguments)},__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm=Module.__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm=function(){return(__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm=Module.__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm=Module.asm._ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm).apply(null,arguments)},__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc=Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc=function(){return(__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc=Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc).apply(null,arguments)},__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev=Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev=function(){return(__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev=Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev=Module.asm._ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev).apply(null,arguments)},__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw=Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw=function(){return(__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw=Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw=Module.asm._ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw).apply(null,arguments)},__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6resizeEmw=Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6resizeEmw=function(){return(__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6resizeEmw=Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6resizeEmw=Module.asm._ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6resizeEmw).apply(null,arguments)},dynCall_jiji=Module.dynCall_jiji=function(){return(dynCall_jiji=Module.dynCall_jiji=Module.asm.dynCall_jiji).apply(null,arguments)},_orig$ts_parser_timeout_micros=Module._orig$ts_parser_timeout_micros=function(){return(_orig$ts_parser_timeout_micros=Module._orig$ts_parser_timeout_micros=Module.asm.orig$ts_parser_timeout_micros).apply(null,arguments)},_orig$ts_parser_set_timeout_micros=Module._orig$ts_parser_set_timeout_micros=function(){return(_orig$ts_parser_set_timeout_micros=Module._orig$ts_parser_set_timeout_micros=Module.asm.orig$ts_parser_set_timeout_micros).apply(null,arguments)},calledRun;function callMain(A){var r=Module._main;if(r){(A=A||[]).unshift(thisProgram);var t=A.length,i=stackAlloc(4*(t+1)),o=i>>2;A.forEach(g=>{HEAP32[o++]=allocateUTF8OnStack(g)}),HEAP32[o]=0;try{var s=r(t,i);return exitJS(s,!0),s}catch(g){return handleException(g)}}}Module.AsciiToString=AsciiToString,Module.stringToUTF16=stringToUTF16,dependenciesFulfilled=function A(){calledRun||run(),calledRun||(dependenciesFulfilled=A)};var dylibsLoaded=!1;function run(A){function r(){calledRun||(calledRun=!0,Module.calledRun=!0,ABORT||(initRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),shouldRunNow&&callMain(A),postRun()))}A=A||arguments_,runDependencies>0||!dylibsLoaded&&(preloadDylibs(),dylibsLoaded=!0,runDependencies>0)||(preRun(),runDependencies>0||(Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),r()},1)):r()))}if(Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run();let C=Module,INTERNAL={},SIZE_OF_INT=4,SIZE_OF_NODE=5*SIZE_OF_INT,SIZE_OF_POINT=2*SIZE_OF_INT,SIZE_OF_RANGE=2*SIZE_OF_INT+2*SIZE_OF_POINT,ZERO_POINT={row:0,column:0},QUERY_WORD_REGEX=/[\w-.]*/g,PREDICATE_STEP_TYPE_CAPTURE=1,PREDICATE_STEP_TYPE_STRING=2,LANGUAGE_FUNCTION_REGEX=/^_?tree_sitter_\w+/;var VERSION,MIN_COMPATIBLE_VERSION,TRANSFER_BUFFER,currentParseCallback,currentLogCallback;class ParserImpl{static init(){TRANSFER_BUFFER=C._ts_init(),VERSION=getValue(TRANSFER_BUFFER,"i32"),MIN_COMPATIBLE_VERSION=getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32")}initialize(){C._ts_parser_new_wasm(),this[0]=getValue(TRANSFER_BUFFER,"i32"),this[1]=getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32")}delete(){C._ts_parser_delete(this[0]),C._free(this[1]),this[0]=0,this[1]=0}setLanguage(r){let t;if(r){if(r.constructor!==Language)throw new Error("Argument must be a Language");{t=r[0];let i=C._ts_language_version(t);if(ir.slice(p,m);else{if(typeof r!="function")throw new Error("Argument must be a string or a function");currentParseCallback=r}this.logCallback?(currentLogCallback=this.logCallback,C._ts_parser_enable_logger_wasm(this[0],1)):(currentLogCallback=null,C._ts_parser_enable_logger_wasm(this[0],0));let o=0,s=0;if(i&&i.includedRanges){o=i.includedRanges.length,s=C._calloc(o,SIZE_OF_RANGE);let p=s;for(let B=0;B0){let s=i;for(let g=0;g0){let i=t;for(let o=0;o0){let i=t;for(let o=0;o0){let m=p;for(let _=0;_0){if(v[0].type!=="string")throw new Error("Predicates must begin with a literal value");let V=v[0].value,wA=!0;switch(V){case"not-eq?":wA=!1;case"eq?":if(v.length!==3)throw new Error("Wrong number of arguments to `#eq?` predicate. Expected 2, got "+(v.length-1));if(v[1].type!=="capture")throw new Error(`First argument of \`#eq?\` predicate must be a capture. Got "${v[1].value}"`);if(v[2].type==="capture"){let cA=v[1].name,eA=v[2].name;k[P].push(function(Y){let q,X;for(let Z of Y)Z.name===cA&&(q=Z.node),Z.name===eA&&(X=Z.node);return q===void 0||X===void 0||q.text===X.text===wA})}else{let cA=v[1].name,eA=v[2].value;k[P].push(function(Y){for(let q of Y)if(q.name===cA)return q.node.text===eA===wA;return!0})}break;case"not-match?":wA=!1;case"match?":if(v.length!==3)throw new Error(`Wrong number of arguments to \`#match?\` predicate. Expected 2, got ${v.length-1}.`);if(v[1].type!=="capture")throw new Error(`First argument of \`#match?\` predicate must be a capture. Got "${v[1].value}".`);if(v[2].type!=="string")throw new Error(`Second argument of \`#match?\` predicate must be a string. Got @${v[2].value}.`);let IA=v[1].name,pA=new RegExp(v[2].value);k[P].push(function(cA){for(let eA of cA)if(eA.name===IA)return pA.test(eA.node.text)===wA;return!0});break;case"set!":if(v.length<2||v.length>3)throw new Error(`Wrong number of arguments to \`#set!\` predicate. Expected 1 or 2. Got ${v.length-1}.`);if(v.some(cA=>cA.type!=="string"))throw new Error('Arguments to `#set!` predicate must be a strings.".');m[P]||(m[P]={}),m[P][v[1].value]=v[2]?v[2].value:null;break;case"is?":case"is-not?":if(v.length<2||v.length>3)throw new Error(`Wrong number of arguments to \`#${V}\` predicate. Expected 1 or 2. Got ${v.length-1}.`);if(v.some(cA=>cA.type!=="string"))throw new Error(`Arguments to \`#${V}\` predicate must be a strings.".`);let oA=V==="is?"?_:x;oA[P]||(oA[P]={}),oA[P][v[1].value]=v[2]?v[2].value:null;break;default:O[P].push({operator:V,operands:v.slice(1)})}v.length=0}}Object.freeze(m[P]),Object.freeze(_[P]),Object.freeze(x[P])}return C._free(i),new Query(INTERNAL,o,p,k,O,Object.freeze(m),Object.freeze(_),Object.freeze(x))}static load(r){let t;if(r instanceof Uint8Array)t=Promise.resolve(r);else{let o=r;if(typeof process<"u"&&process.versions&&process.versions.node){let s=require("fs");t=Promise.resolve(s.readFileSync(o))}else t=fetch(o).then(s=>s.arrayBuffer().then(g=>{if(s.ok)return new Uint8Array(g);{let E=new TextDecoder("utf-8").decode(g);throw new Error(`Language.load failed with status ${s.status}. - -${E}`)}}))}let i=typeof loadSideModule=="function"?loadSideModule:loadWebAssemblyModule;return t.then(o=>i(o,{loadAsync:!0})).then(o=>{let s=Object.keys(o),g=s.find(p=>LANGUAGE_FUNCTION_REGEX.test(p)&&!p.includes("external_scanner_"));g||console.log(`Couldn't find language function in WASM file. Symbols: -${JSON.stringify(s,null,2)}`);let E=o[g]();return new Language(INTERNAL,E)})}}class Query{constructor(r,t,i,o,s,g,E,p){assertInternal(r),this[0]=t,this.captureNames=i,this.textPredicates=o,this.predicates=s,this.setProperties=g,this.assertedProperties=E,this.refutedProperties=p,this.exceededMatchLimit=!1}delete(){C._ts_query_delete(this[0]),this[0]=0}matches(r,t,i,o){t||(t=ZERO_POINT),i||(i=ZERO_POINT),o||(o={});let s=o.matchLimit;if(s===void 0)s=0;else if(typeof s!="number")throw new Error("Arguments must be numbers");marshalNode(r),C._ts_query_matches_wasm(this[0],r.tree[0],t.row,t.column,i.row,i.column,s);let g=getValue(TRANSFER_BUFFER,"i32"),E=getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),p=getValue(TRANSFER_BUFFER+2*SIZE_OF_INT,"i32"),B=new Array(g);this.exceededMatchLimit=!!p;let m=0,_=E;for(let x=0;xH(P))){B[m++]={pattern:O,captures:P};let H=this.setProperties[O];H&&(B[x].setProperties=H);let T=this.assertedProperties[O];T&&(B[x].assertedProperties=T);let v=this.refutedProperties[O];v&&(B[x].refutedProperties=v)}}return B.length=m,C._free(E),B}captures(r,t,i,o){t||(t=ZERO_POINT),i||(i=ZERO_POINT),o||(o={});let s=o.matchLimit;if(s===void 0)s=0;else if(typeof s!="number")throw new Error("Arguments must be numbers");marshalNode(r),C._ts_query_captures_wasm(this[0],r.tree[0],t.row,t.column,i.row,i.column,s);let g=getValue(TRANSFER_BUFFER,"i32"),E=getValue(TRANSFER_BUFFER+SIZE_OF_INT,"i32"),p=getValue(TRANSFER_BUFFER+2*SIZE_OF_INT,"i32"),B=[];this.exceededMatchLimit=!!p;let m=[],_=E;for(let x=0;xH(m))){let H=m[P],T=this.setProperties[O];T&&(H.setProperties=T);let v=this.assertedProperties[O];v&&(H.assertedProperties=v);let F=this.refutedProperties[O];F&&(H.refutedProperties=F),B.push(H)}}return C._free(E),B}predicatesForPattern(r){return this.predicates[r]}didExceedMatchLimit(){return this.exceededMatchLimit}}function getText(A,r,t){let i=t-r,o=A.textCallback(r,null,t);for(r+=o.length;r0))break;r+=s.length,o+=s}return r>t&&(o=o.slice(0,i)),o}function unmarshalCaptures(A,r,t,i){for(let o=0,s=i.length;o{ParserImpl.init(),resolveInitPromise()}}))}}return Parser}();typeof exports=="object"&&(module.exports=TreeSitter)});var X_A=GA(u_=>{"use strict";Object.defineProperty(u_,"__esModule",{value:!0});u_.getMessages=u_.getLines=u_.getBytes=void 0;async function BFe(A,r){let t=A.getReader(),i;for(;!(i=await t.read()).done;)r(i.value)}u_.getBytes=BFe;function hFe(A){let r,t,i,o=!1;return function(g){r===void 0?(r=g,t=0,i=-1):r=mFe(r,g);let E=r.length,p=0;for(;t0){let p=o.decode(g.subarray(0,E)),B=E+(g[E+1]===32?2:1),m=o.decode(g.subarray(B));switch(p){case"data":i.data=i.data?i.data+` -`+m:m;break;case"event":i.event=m;break;case"id":A(i.id=m);break;case"retry":let _=parseInt(m,10);isNaN(_)||r(i.retry=_);break}}}}u_.getMessages=QFe;function mFe(A,r){let t=new Uint8Array(A.length+r.length);return t.set(A),t.set(r,A.length),t}function K_A(){return{data:"",event:"",id:"",retry:void 0}}});var $_A=GA(C0=>{"use strict";var DFe=C0&&C0.__rest||function(A,r){var t={};for(var i in A)Object.prototype.hasOwnProperty.call(A,i)&&r.indexOf(i)<0&&(t[i]=A[i]);if(A!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,i=Object.getOwnPropertySymbols(A);o{let O=Object.assign({},i);O.accept||(O.accept=C0.EventStreamContentType);let k;function P(){k.abort(),document.hidden||S()}p||document.addEventListener("visibilitychange",P);let H=_Fe,T=0;function v(){document.removeEventListener("visibilitychange",P),window.clearTimeout(T),k.abort()}t?.addEventListener("abort",()=>{v(),_()});let F=B??window.fetch,y=o??vFe;async function S(){var U;k=new AbortController;try{let V=await F(A,Object.assign(Object.assign({},m),{headers:O,signal:k.signal}));await y(V),await SeA.getBytes(V.body,SeA.getLines(SeA.getMessages(wA=>{wA?O[Z_A]=wA:delete O[Z_A]},wA=>{H=wA},s))),g?.(),v(),_()}catch(V){if(!k.signal.aborted)try{let wA=(U=E?.(V))!==null&&U!==void 0?U:H;window.clearTimeout(T),T=window.setTimeout(S,wA)}catch(wA){v(),x(wA)}}}S()})}C0.fetchEventSource=wFe;function vFe(A){let r=A.headers.get("content-type");if(!r?.startsWith(C0.EventStreamContentType))throw new Error(`Expected content-type to be ${C0.EventStreamContentType}, Actual: ${r}`)}});var ewA=GA(_I=>{"use strict";Object.defineProperty(_I,"__esModule",{value:!0});_I.EventStreamContentType=_I.fetchEventSource=void 0;var AwA=$_A();Object.defineProperty(_I,"fetchEventSource",{enumerable:!0,get:function(){return AwA.fetchEventSource}});Object.defineProperty(_I,"EventStreamContentType",{enumerable:!0,get:function(){return AwA.EventStreamContentType}})});var iwA=GA((WNt,twA)=>{"use strict";var Jg={};twA.exports=Jg;function rwA(A){return A<0?-1:1}function yFe(A){return A%1===.5&&!(A&1)?Math.floor(A):Math.round(A)}function g_(A,r){r.unsigned||--A;let t=r.unsigned?0:-Math.pow(2,A),i=Math.pow(2,A)-1,o=r.moduloBitLength?Math.pow(2,r.moduloBitLength):Math.pow(2,A),s=r.moduloBitLength?Math.pow(2,r.moduloBitLength-1):Math.pow(2,A-1);return function(g,E){E||(E={});let p=+g;if(E.enforceRange){if(!Number.isFinite(p))throw new TypeError("Argument is not a finite number");if(p=rwA(p)*Math.floor(Math.abs(p)),pi)throw new TypeError("Argument is not in byte range");return p}if(!isNaN(p)&&E.clamp)return p=yFe(p),pi&&(p=i),p;if(!Number.isFinite(p)||p===0)return 0;if(p=rwA(p)*Math.floor(Math.abs(p)),p=p%o,!r.unsigned&&p>=s)return p-o;if(r.unsigned){if(p<0)p+=o;else if(p===-0)return 0}return p}}Jg.void=function(){};Jg.boolean=function(A){return!!A};Jg.byte=g_(8,{unsigned:!1});Jg.octet=g_(8,{unsigned:!0});Jg.short=g_(16,{unsigned:!1});Jg["unsigned short"]=g_(16,{unsigned:!0});Jg.long=g_(32,{unsigned:!1});Jg["unsigned long"]=g_(32,{unsigned:!0});Jg["long long"]=g_(32,{unsigned:!1,moduloBitLength:64});Jg["unsigned long long"]=g_(32,{unsigned:!0,moduloBitLength:64});Jg.double=function(A){let r=+A;if(!Number.isFinite(r))throw new TypeError("Argument is not a finite floating-point value");return r};Jg["unrestricted double"]=function(A){let r=+A;if(isNaN(r))throw new TypeError("Argument is NaN");return r};Jg.float=Jg.double;Jg["unrestricted float"]=Jg["unrestricted double"];Jg.DOMString=function(A,r){return r||(r={}),r.treatNullAsEmptyString&&A===null?"":String(A)};Jg.ByteString=function(A,r){let t=String(A),i;for(let o=0;(i=t.codePointAt(o))!==void 0;++o)if(i>255)throw new TypeError("Argument is not a valid bytestring");return t};Jg.USVString=function(A){let r=String(A),t=r.length,i=[];for(let o=0;o57343)i.push(String.fromCodePoint(s));else if(56320<=s&&s<=57343)i.push(String.fromCodePoint(65533));else if(o===t-1)i.push(String.fromCodePoint(65533));else{let g=r.charCodeAt(o+1);if(56320<=g&&g<=57343){let E=s&1023,p=g&1023;i.push(String.fromCodePoint(65536+1024*E+p)),++o}else i.push(String.fromCodePoint(65533))}}return i.join("")};Jg.Date=function(A,r){if(!(A instanceof Date))throw new TypeError("Argument is not a Date object");if(!isNaN(A))return A};Jg.RegExp=function(A,r){return A instanceof RegExp||(A=new RegExp(A)),A}});var nwA=GA((JNt,d_)=>{"use strict";d_.exports.mixin=function(r,t){let i=Object.getOwnPropertyNames(t);for(let o=0;o{CFe.exports=[[[0,44],"disallowed_STD3_valid"],[[45,46],"valid"],[[47,47],"disallowed_STD3_valid"],[[48,57],"valid"],[[58,64],"disallowed_STD3_valid"],[[65,65],"mapped",[97]],[[66,66],"mapped",[98]],[[67,67],"mapped",[99]],[[68,68],"mapped",[100]],[[69,69],"mapped",[101]],[[70,70],"mapped",[102]],[[71,71],"mapped",[103]],[[72,72],"mapped",[104]],[[73,73],"mapped",[105]],[[74,74],"mapped",[106]],[[75,75],"mapped",[107]],[[76,76],"mapped",[108]],[[77,77],"mapped",[109]],[[78,78],"mapped",[110]],[[79,79],"mapped",[111]],[[80,80],"mapped",[112]],[[81,81],"mapped",[113]],[[82,82],"mapped",[114]],[[83,83],"mapped",[115]],[[84,84],"mapped",[116]],[[85,85],"mapped",[117]],[[86,86],"mapped",[118]],[[87,87],"mapped",[119]],[[88,88],"mapped",[120]],[[89,89],"mapped",[121]],[[90,90],"mapped",[122]],[[91,96],"disallowed_STD3_valid"],[[97,122],"valid"],[[123,127],"disallowed_STD3_valid"],[[128,159],"disallowed"],[[160,160],"disallowed_STD3_mapped",[32]],[[161,167],"valid",[],"NV8"],[[168,168],"disallowed_STD3_mapped",[32,776]],[[169,169],"valid",[],"NV8"],[[170,170],"mapped",[97]],[[171,172],"valid",[],"NV8"],[[173,173],"ignored"],[[174,174],"valid",[],"NV8"],[[175,175],"disallowed_STD3_mapped",[32,772]],[[176,177],"valid",[],"NV8"],[[178,178],"mapped",[50]],[[179,179],"mapped",[51]],[[180,180],"disallowed_STD3_mapped",[32,769]],[[181,181],"mapped",[956]],[[182,182],"valid",[],"NV8"],[[183,183],"valid"],[[184,184],"disallowed_STD3_mapped",[32,807]],[[185,185],"mapped",[49]],[[186,186],"mapped",[111]],[[187,187],"valid",[],"NV8"],[[188,188],"mapped",[49,8260,52]],[[189,189],"mapped",[49,8260,50]],[[190,190],"mapped",[51,8260,52]],[[191,191],"valid",[],"NV8"],[[192,192],"mapped",[224]],[[193,193],"mapped",[225]],[[194,194],"mapped",[226]],[[195,195],"mapped",[227]],[[196,196],"mapped",[228]],[[197,197],"mapped",[229]],[[198,198],"mapped",[230]],[[199,199],"mapped",[231]],[[200,200],"mapped",[232]],[[201,201],"mapped",[233]],[[202,202],"mapped",[234]],[[203,203],"mapped",[235]],[[204,204],"mapped",[236]],[[205,205],"mapped",[237]],[[206,206],"mapped",[238]],[[207,207],"mapped",[239]],[[208,208],"mapped",[240]],[[209,209],"mapped",[241]],[[210,210],"mapped",[242]],[[211,211],"mapped",[243]],[[212,212],"mapped",[244]],[[213,213],"mapped",[245]],[[214,214],"mapped",[246]],[[215,215],"valid",[],"NV8"],[[216,216],"mapped",[248]],[[217,217],"mapped",[249]],[[218,218],"mapped",[250]],[[219,219],"mapped",[251]],[[220,220],"mapped",[252]],[[221,221],"mapped",[253]],[[222,222],"mapped",[254]],[[223,223],"deviation",[115,115]],[[224,246],"valid"],[[247,247],"valid",[],"NV8"],[[248,255],"valid"],[[256,256],"mapped",[257]],[[257,257],"valid"],[[258,258],"mapped",[259]],[[259,259],"valid"],[[260,260],"mapped",[261]],[[261,261],"valid"],[[262,262],"mapped",[263]],[[263,263],"valid"],[[264,264],"mapped",[265]],[[265,265],"valid"],[[266,266],"mapped",[267]],[[267,267],"valid"],[[268,268],"mapped",[269]],[[269,269],"valid"],[[270,270],"mapped",[271]],[[271,271],"valid"],[[272,272],"mapped",[273]],[[273,273],"valid"],[[274,274],"mapped",[275]],[[275,275],"valid"],[[276,276],"mapped",[277]],[[277,277],"valid"],[[278,278],"mapped",[279]],[[279,279],"valid"],[[280,280],"mapped",[281]],[[281,281],"valid"],[[282,282],"mapped",[283]],[[283,283],"valid"],[[284,284],"mapped",[285]],[[285,285],"valid"],[[286,286],"mapped",[287]],[[287,287],"valid"],[[288,288],"mapped",[289]],[[289,289],"valid"],[[290,290],"mapped",[291]],[[291,291],"valid"],[[292,292],"mapped",[293]],[[293,293],"valid"],[[294,294],"mapped",[295]],[[295,295],"valid"],[[296,296],"mapped",[297]],[[297,297],"valid"],[[298,298],"mapped",[299]],[[299,299],"valid"],[[300,300],"mapped",[301]],[[301,301],"valid"],[[302,302],"mapped",[303]],[[303,303],"valid"],[[304,304],"mapped",[105,775]],[[305,305],"valid"],[[306,307],"mapped",[105,106]],[[308,308],"mapped",[309]],[[309,309],"valid"],[[310,310],"mapped",[311]],[[311,312],"valid"],[[313,313],"mapped",[314]],[[314,314],"valid"],[[315,315],"mapped",[316]],[[316,316],"valid"],[[317,317],"mapped",[318]],[[318,318],"valid"],[[319,320],"mapped",[108,183]],[[321,321],"mapped",[322]],[[322,322],"valid"],[[323,323],"mapped",[324]],[[324,324],"valid"],[[325,325],"mapped",[326]],[[326,326],"valid"],[[327,327],"mapped",[328]],[[328,328],"valid"],[[329,329],"mapped",[700,110]],[[330,330],"mapped",[331]],[[331,331],"valid"],[[332,332],"mapped",[333]],[[333,333],"valid"],[[334,334],"mapped",[335]],[[335,335],"valid"],[[336,336],"mapped",[337]],[[337,337],"valid"],[[338,338],"mapped",[339]],[[339,339],"valid"],[[340,340],"mapped",[341]],[[341,341],"valid"],[[342,342],"mapped",[343]],[[343,343],"valid"],[[344,344],"mapped",[345]],[[345,345],"valid"],[[346,346],"mapped",[347]],[[347,347],"valid"],[[348,348],"mapped",[349]],[[349,349],"valid"],[[350,350],"mapped",[351]],[[351,351],"valid"],[[352,352],"mapped",[353]],[[353,353],"valid"],[[354,354],"mapped",[355]],[[355,355],"valid"],[[356,356],"mapped",[357]],[[357,357],"valid"],[[358,358],"mapped",[359]],[[359,359],"valid"],[[360,360],"mapped",[361]],[[361,361],"valid"],[[362,362],"mapped",[363]],[[363,363],"valid"],[[364,364],"mapped",[365]],[[365,365],"valid"],[[366,366],"mapped",[367]],[[367,367],"valid"],[[368,368],"mapped",[369]],[[369,369],"valid"],[[370,370],"mapped",[371]],[[371,371],"valid"],[[372,372],"mapped",[373]],[[373,373],"valid"],[[374,374],"mapped",[375]],[[375,375],"valid"],[[376,376],"mapped",[255]],[[377,377],"mapped",[378]],[[378,378],"valid"],[[379,379],"mapped",[380]],[[380,380],"valid"],[[381,381],"mapped",[382]],[[382,382],"valid"],[[383,383],"mapped",[115]],[[384,384],"valid"],[[385,385],"mapped",[595]],[[386,386],"mapped",[387]],[[387,387],"valid"],[[388,388],"mapped",[389]],[[389,389],"valid"],[[390,390],"mapped",[596]],[[391,391],"mapped",[392]],[[392,392],"valid"],[[393,393],"mapped",[598]],[[394,394],"mapped",[599]],[[395,395],"mapped",[396]],[[396,397],"valid"],[[398,398],"mapped",[477]],[[399,399],"mapped",[601]],[[400,400],"mapped",[603]],[[401,401],"mapped",[402]],[[402,402],"valid"],[[403,403],"mapped",[608]],[[404,404],"mapped",[611]],[[405,405],"valid"],[[406,406],"mapped",[617]],[[407,407],"mapped",[616]],[[408,408],"mapped",[409]],[[409,411],"valid"],[[412,412],"mapped",[623]],[[413,413],"mapped",[626]],[[414,414],"valid"],[[415,415],"mapped",[629]],[[416,416],"mapped",[417]],[[417,417],"valid"],[[418,418],"mapped",[419]],[[419,419],"valid"],[[420,420],"mapped",[421]],[[421,421],"valid"],[[422,422],"mapped",[640]],[[423,423],"mapped",[424]],[[424,424],"valid"],[[425,425],"mapped",[643]],[[426,427],"valid"],[[428,428],"mapped",[429]],[[429,429],"valid"],[[430,430],"mapped",[648]],[[431,431],"mapped",[432]],[[432,432],"valid"],[[433,433],"mapped",[650]],[[434,434],"mapped",[651]],[[435,435],"mapped",[436]],[[436,436],"valid"],[[437,437],"mapped",[438]],[[438,438],"valid"],[[439,439],"mapped",[658]],[[440,440],"mapped",[441]],[[441,443],"valid"],[[444,444],"mapped",[445]],[[445,451],"valid"],[[452,454],"mapped",[100,382]],[[455,457],"mapped",[108,106]],[[458,460],"mapped",[110,106]],[[461,461],"mapped",[462]],[[462,462],"valid"],[[463,463],"mapped",[464]],[[464,464],"valid"],[[465,465],"mapped",[466]],[[466,466],"valid"],[[467,467],"mapped",[468]],[[468,468],"valid"],[[469,469],"mapped",[470]],[[470,470],"valid"],[[471,471],"mapped",[472]],[[472,472],"valid"],[[473,473],"mapped",[474]],[[474,474],"valid"],[[475,475],"mapped",[476]],[[476,477],"valid"],[[478,478],"mapped",[479]],[[479,479],"valid"],[[480,480],"mapped",[481]],[[481,481],"valid"],[[482,482],"mapped",[483]],[[483,483],"valid"],[[484,484],"mapped",[485]],[[485,485],"valid"],[[486,486],"mapped",[487]],[[487,487],"valid"],[[488,488],"mapped",[489]],[[489,489],"valid"],[[490,490],"mapped",[491]],[[491,491],"valid"],[[492,492],"mapped",[493]],[[493,493],"valid"],[[494,494],"mapped",[495]],[[495,496],"valid"],[[497,499],"mapped",[100,122]],[[500,500],"mapped",[501]],[[501,501],"valid"],[[502,502],"mapped",[405]],[[503,503],"mapped",[447]],[[504,504],"mapped",[505]],[[505,505],"valid"],[[506,506],"mapped",[507]],[[507,507],"valid"],[[508,508],"mapped",[509]],[[509,509],"valid"],[[510,510],"mapped",[511]],[[511,511],"valid"],[[512,512],"mapped",[513]],[[513,513],"valid"],[[514,514],"mapped",[515]],[[515,515],"valid"],[[516,516],"mapped",[517]],[[517,517],"valid"],[[518,518],"mapped",[519]],[[519,519],"valid"],[[520,520],"mapped",[521]],[[521,521],"valid"],[[522,522],"mapped",[523]],[[523,523],"valid"],[[524,524],"mapped",[525]],[[525,525],"valid"],[[526,526],"mapped",[527]],[[527,527],"valid"],[[528,528],"mapped",[529]],[[529,529],"valid"],[[530,530],"mapped",[531]],[[531,531],"valid"],[[532,532],"mapped",[533]],[[533,533],"valid"],[[534,534],"mapped",[535]],[[535,535],"valid"],[[536,536],"mapped",[537]],[[537,537],"valid"],[[538,538],"mapped",[539]],[[539,539],"valid"],[[540,540],"mapped",[541]],[[541,541],"valid"],[[542,542],"mapped",[543]],[[543,543],"valid"],[[544,544],"mapped",[414]],[[545,545],"valid"],[[546,546],"mapped",[547]],[[547,547],"valid"],[[548,548],"mapped",[549]],[[549,549],"valid"],[[550,550],"mapped",[551]],[[551,551],"valid"],[[552,552],"mapped",[553]],[[553,553],"valid"],[[554,554],"mapped",[555]],[[555,555],"valid"],[[556,556],"mapped",[557]],[[557,557],"valid"],[[558,558],"mapped",[559]],[[559,559],"valid"],[[560,560],"mapped",[561]],[[561,561],"valid"],[[562,562],"mapped",[563]],[[563,563],"valid"],[[564,566],"valid"],[[567,569],"valid"],[[570,570],"mapped",[11365]],[[571,571],"mapped",[572]],[[572,572],"valid"],[[573,573],"mapped",[410]],[[574,574],"mapped",[11366]],[[575,576],"valid"],[[577,577],"mapped",[578]],[[578,578],"valid"],[[579,579],"mapped",[384]],[[580,580],"mapped",[649]],[[581,581],"mapped",[652]],[[582,582],"mapped",[583]],[[583,583],"valid"],[[584,584],"mapped",[585]],[[585,585],"valid"],[[586,586],"mapped",[587]],[[587,587],"valid"],[[588,588],"mapped",[589]],[[589,589],"valid"],[[590,590],"mapped",[591]],[[591,591],"valid"],[[592,680],"valid"],[[681,685],"valid"],[[686,687],"valid"],[[688,688],"mapped",[104]],[[689,689],"mapped",[614]],[[690,690],"mapped",[106]],[[691,691],"mapped",[114]],[[692,692],"mapped",[633]],[[693,693],"mapped",[635]],[[694,694],"mapped",[641]],[[695,695],"mapped",[119]],[[696,696],"mapped",[121]],[[697,705],"valid"],[[706,709],"valid",[],"NV8"],[[710,721],"valid"],[[722,727],"valid",[],"NV8"],[[728,728],"disallowed_STD3_mapped",[32,774]],[[729,729],"disallowed_STD3_mapped",[32,775]],[[730,730],"disallowed_STD3_mapped",[32,778]],[[731,731],"disallowed_STD3_mapped",[32,808]],[[732,732],"disallowed_STD3_mapped",[32,771]],[[733,733],"disallowed_STD3_mapped",[32,779]],[[734,734],"valid",[],"NV8"],[[735,735],"valid",[],"NV8"],[[736,736],"mapped",[611]],[[737,737],"mapped",[108]],[[738,738],"mapped",[115]],[[739,739],"mapped",[120]],[[740,740],"mapped",[661]],[[741,745],"valid",[],"NV8"],[[746,747],"valid",[],"NV8"],[[748,748],"valid"],[[749,749],"valid",[],"NV8"],[[750,750],"valid"],[[751,767],"valid",[],"NV8"],[[768,831],"valid"],[[832,832],"mapped",[768]],[[833,833],"mapped",[769]],[[834,834],"valid"],[[835,835],"mapped",[787]],[[836,836],"mapped",[776,769]],[[837,837],"mapped",[953]],[[838,846],"valid"],[[847,847],"ignored"],[[848,855],"valid"],[[856,860],"valid"],[[861,863],"valid"],[[864,865],"valid"],[[866,866],"valid"],[[867,879],"valid"],[[880,880],"mapped",[881]],[[881,881],"valid"],[[882,882],"mapped",[883]],[[883,883],"valid"],[[884,884],"mapped",[697]],[[885,885],"valid"],[[886,886],"mapped",[887]],[[887,887],"valid"],[[888,889],"disallowed"],[[890,890],"disallowed_STD3_mapped",[32,953]],[[891,893],"valid"],[[894,894],"disallowed_STD3_mapped",[59]],[[895,895],"mapped",[1011]],[[896,899],"disallowed"],[[900,900],"disallowed_STD3_mapped",[32,769]],[[901,901],"disallowed_STD3_mapped",[32,776,769]],[[902,902],"mapped",[940]],[[903,903],"mapped",[183]],[[904,904],"mapped",[941]],[[905,905],"mapped",[942]],[[906,906],"mapped",[943]],[[907,907],"disallowed"],[[908,908],"mapped",[972]],[[909,909],"disallowed"],[[910,910],"mapped",[973]],[[911,911],"mapped",[974]],[[912,912],"valid"],[[913,913],"mapped",[945]],[[914,914],"mapped",[946]],[[915,915],"mapped",[947]],[[916,916],"mapped",[948]],[[917,917],"mapped",[949]],[[918,918],"mapped",[950]],[[919,919],"mapped",[951]],[[920,920],"mapped",[952]],[[921,921],"mapped",[953]],[[922,922],"mapped",[954]],[[923,923],"mapped",[955]],[[924,924],"mapped",[956]],[[925,925],"mapped",[957]],[[926,926],"mapped",[958]],[[927,927],"mapped",[959]],[[928,928],"mapped",[960]],[[929,929],"mapped",[961]],[[930,930],"disallowed"],[[931,931],"mapped",[963]],[[932,932],"mapped",[964]],[[933,933],"mapped",[965]],[[934,934],"mapped",[966]],[[935,935],"mapped",[967]],[[936,936],"mapped",[968]],[[937,937],"mapped",[969]],[[938,938],"mapped",[970]],[[939,939],"mapped",[971]],[[940,961],"valid"],[[962,962],"deviation",[963]],[[963,974],"valid"],[[975,975],"mapped",[983]],[[976,976],"mapped",[946]],[[977,977],"mapped",[952]],[[978,978],"mapped",[965]],[[979,979],"mapped",[973]],[[980,980],"mapped",[971]],[[981,981],"mapped",[966]],[[982,982],"mapped",[960]],[[983,983],"valid"],[[984,984],"mapped",[985]],[[985,985],"valid"],[[986,986],"mapped",[987]],[[987,987],"valid"],[[988,988],"mapped",[989]],[[989,989],"valid"],[[990,990],"mapped",[991]],[[991,991],"valid"],[[992,992],"mapped",[993]],[[993,993],"valid"],[[994,994],"mapped",[995]],[[995,995],"valid"],[[996,996],"mapped",[997]],[[997,997],"valid"],[[998,998],"mapped",[999]],[[999,999],"valid"],[[1e3,1e3],"mapped",[1001]],[[1001,1001],"valid"],[[1002,1002],"mapped",[1003]],[[1003,1003],"valid"],[[1004,1004],"mapped",[1005]],[[1005,1005],"valid"],[[1006,1006],"mapped",[1007]],[[1007,1007],"valid"],[[1008,1008],"mapped",[954]],[[1009,1009],"mapped",[961]],[[1010,1010],"mapped",[963]],[[1011,1011],"valid"],[[1012,1012],"mapped",[952]],[[1013,1013],"mapped",[949]],[[1014,1014],"valid",[],"NV8"],[[1015,1015],"mapped",[1016]],[[1016,1016],"valid"],[[1017,1017],"mapped",[963]],[[1018,1018],"mapped",[1019]],[[1019,1019],"valid"],[[1020,1020],"valid"],[[1021,1021],"mapped",[891]],[[1022,1022],"mapped",[892]],[[1023,1023],"mapped",[893]],[[1024,1024],"mapped",[1104]],[[1025,1025],"mapped",[1105]],[[1026,1026],"mapped",[1106]],[[1027,1027],"mapped",[1107]],[[1028,1028],"mapped",[1108]],[[1029,1029],"mapped",[1109]],[[1030,1030],"mapped",[1110]],[[1031,1031],"mapped",[1111]],[[1032,1032],"mapped",[1112]],[[1033,1033],"mapped",[1113]],[[1034,1034],"mapped",[1114]],[[1035,1035],"mapped",[1115]],[[1036,1036],"mapped",[1116]],[[1037,1037],"mapped",[1117]],[[1038,1038],"mapped",[1118]],[[1039,1039],"mapped",[1119]],[[1040,1040],"mapped",[1072]],[[1041,1041],"mapped",[1073]],[[1042,1042],"mapped",[1074]],[[1043,1043],"mapped",[1075]],[[1044,1044],"mapped",[1076]],[[1045,1045],"mapped",[1077]],[[1046,1046],"mapped",[1078]],[[1047,1047],"mapped",[1079]],[[1048,1048],"mapped",[1080]],[[1049,1049],"mapped",[1081]],[[1050,1050],"mapped",[1082]],[[1051,1051],"mapped",[1083]],[[1052,1052],"mapped",[1084]],[[1053,1053],"mapped",[1085]],[[1054,1054],"mapped",[1086]],[[1055,1055],"mapped",[1087]],[[1056,1056],"mapped",[1088]],[[1057,1057],"mapped",[1089]],[[1058,1058],"mapped",[1090]],[[1059,1059],"mapped",[1091]],[[1060,1060],"mapped",[1092]],[[1061,1061],"mapped",[1093]],[[1062,1062],"mapped",[1094]],[[1063,1063],"mapped",[1095]],[[1064,1064],"mapped",[1096]],[[1065,1065],"mapped",[1097]],[[1066,1066],"mapped",[1098]],[[1067,1067],"mapped",[1099]],[[1068,1068],"mapped",[1100]],[[1069,1069],"mapped",[1101]],[[1070,1070],"mapped",[1102]],[[1071,1071],"mapped",[1103]],[[1072,1103],"valid"],[[1104,1104],"valid"],[[1105,1116],"valid"],[[1117,1117],"valid"],[[1118,1119],"valid"],[[1120,1120],"mapped",[1121]],[[1121,1121],"valid"],[[1122,1122],"mapped",[1123]],[[1123,1123],"valid"],[[1124,1124],"mapped",[1125]],[[1125,1125],"valid"],[[1126,1126],"mapped",[1127]],[[1127,1127],"valid"],[[1128,1128],"mapped",[1129]],[[1129,1129],"valid"],[[1130,1130],"mapped",[1131]],[[1131,1131],"valid"],[[1132,1132],"mapped",[1133]],[[1133,1133],"valid"],[[1134,1134],"mapped",[1135]],[[1135,1135],"valid"],[[1136,1136],"mapped",[1137]],[[1137,1137],"valid"],[[1138,1138],"mapped",[1139]],[[1139,1139],"valid"],[[1140,1140],"mapped",[1141]],[[1141,1141],"valid"],[[1142,1142],"mapped",[1143]],[[1143,1143],"valid"],[[1144,1144],"mapped",[1145]],[[1145,1145],"valid"],[[1146,1146],"mapped",[1147]],[[1147,1147],"valid"],[[1148,1148],"mapped",[1149]],[[1149,1149],"valid"],[[1150,1150],"mapped",[1151]],[[1151,1151],"valid"],[[1152,1152],"mapped",[1153]],[[1153,1153],"valid"],[[1154,1154],"valid",[],"NV8"],[[1155,1158],"valid"],[[1159,1159],"valid"],[[1160,1161],"valid",[],"NV8"],[[1162,1162],"mapped",[1163]],[[1163,1163],"valid"],[[1164,1164],"mapped",[1165]],[[1165,1165],"valid"],[[1166,1166],"mapped",[1167]],[[1167,1167],"valid"],[[1168,1168],"mapped",[1169]],[[1169,1169],"valid"],[[1170,1170],"mapped",[1171]],[[1171,1171],"valid"],[[1172,1172],"mapped",[1173]],[[1173,1173],"valid"],[[1174,1174],"mapped",[1175]],[[1175,1175],"valid"],[[1176,1176],"mapped",[1177]],[[1177,1177],"valid"],[[1178,1178],"mapped",[1179]],[[1179,1179],"valid"],[[1180,1180],"mapped",[1181]],[[1181,1181],"valid"],[[1182,1182],"mapped",[1183]],[[1183,1183],"valid"],[[1184,1184],"mapped",[1185]],[[1185,1185],"valid"],[[1186,1186],"mapped",[1187]],[[1187,1187],"valid"],[[1188,1188],"mapped",[1189]],[[1189,1189],"valid"],[[1190,1190],"mapped",[1191]],[[1191,1191],"valid"],[[1192,1192],"mapped",[1193]],[[1193,1193],"valid"],[[1194,1194],"mapped",[1195]],[[1195,1195],"valid"],[[1196,1196],"mapped",[1197]],[[1197,1197],"valid"],[[1198,1198],"mapped",[1199]],[[1199,1199],"valid"],[[1200,1200],"mapped",[1201]],[[1201,1201],"valid"],[[1202,1202],"mapped",[1203]],[[1203,1203],"valid"],[[1204,1204],"mapped",[1205]],[[1205,1205],"valid"],[[1206,1206],"mapped",[1207]],[[1207,1207],"valid"],[[1208,1208],"mapped",[1209]],[[1209,1209],"valid"],[[1210,1210],"mapped",[1211]],[[1211,1211],"valid"],[[1212,1212],"mapped",[1213]],[[1213,1213],"valid"],[[1214,1214],"mapped",[1215]],[[1215,1215],"valid"],[[1216,1216],"disallowed"],[[1217,1217],"mapped",[1218]],[[1218,1218],"valid"],[[1219,1219],"mapped",[1220]],[[1220,1220],"valid"],[[1221,1221],"mapped",[1222]],[[1222,1222],"valid"],[[1223,1223],"mapped",[1224]],[[1224,1224],"valid"],[[1225,1225],"mapped",[1226]],[[1226,1226],"valid"],[[1227,1227],"mapped",[1228]],[[1228,1228],"valid"],[[1229,1229],"mapped",[1230]],[[1230,1230],"valid"],[[1231,1231],"valid"],[[1232,1232],"mapped",[1233]],[[1233,1233],"valid"],[[1234,1234],"mapped",[1235]],[[1235,1235],"valid"],[[1236,1236],"mapped",[1237]],[[1237,1237],"valid"],[[1238,1238],"mapped",[1239]],[[1239,1239],"valid"],[[1240,1240],"mapped",[1241]],[[1241,1241],"valid"],[[1242,1242],"mapped",[1243]],[[1243,1243],"valid"],[[1244,1244],"mapped",[1245]],[[1245,1245],"valid"],[[1246,1246],"mapped",[1247]],[[1247,1247],"valid"],[[1248,1248],"mapped",[1249]],[[1249,1249],"valid"],[[1250,1250],"mapped",[1251]],[[1251,1251],"valid"],[[1252,1252],"mapped",[1253]],[[1253,1253],"valid"],[[1254,1254],"mapped",[1255]],[[1255,1255],"valid"],[[1256,1256],"mapped",[1257]],[[1257,1257],"valid"],[[1258,1258],"mapped",[1259]],[[1259,1259],"valid"],[[1260,1260],"mapped",[1261]],[[1261,1261],"valid"],[[1262,1262],"mapped",[1263]],[[1263,1263],"valid"],[[1264,1264],"mapped",[1265]],[[1265,1265],"valid"],[[1266,1266],"mapped",[1267]],[[1267,1267],"valid"],[[1268,1268],"mapped",[1269]],[[1269,1269],"valid"],[[1270,1270],"mapped",[1271]],[[1271,1271],"valid"],[[1272,1272],"mapped",[1273]],[[1273,1273],"valid"],[[1274,1274],"mapped",[1275]],[[1275,1275],"valid"],[[1276,1276],"mapped",[1277]],[[1277,1277],"valid"],[[1278,1278],"mapped",[1279]],[[1279,1279],"valid"],[[1280,1280],"mapped",[1281]],[[1281,1281],"valid"],[[1282,1282],"mapped",[1283]],[[1283,1283],"valid"],[[1284,1284],"mapped",[1285]],[[1285,1285],"valid"],[[1286,1286],"mapped",[1287]],[[1287,1287],"valid"],[[1288,1288],"mapped",[1289]],[[1289,1289],"valid"],[[1290,1290],"mapped",[1291]],[[1291,1291],"valid"],[[1292,1292],"mapped",[1293]],[[1293,1293],"valid"],[[1294,1294],"mapped",[1295]],[[1295,1295],"valid"],[[1296,1296],"mapped",[1297]],[[1297,1297],"valid"],[[1298,1298],"mapped",[1299]],[[1299,1299],"valid"],[[1300,1300],"mapped",[1301]],[[1301,1301],"valid"],[[1302,1302],"mapped",[1303]],[[1303,1303],"valid"],[[1304,1304],"mapped",[1305]],[[1305,1305],"valid"],[[1306,1306],"mapped",[1307]],[[1307,1307],"valid"],[[1308,1308],"mapped",[1309]],[[1309,1309],"valid"],[[1310,1310],"mapped",[1311]],[[1311,1311],"valid"],[[1312,1312],"mapped",[1313]],[[1313,1313],"valid"],[[1314,1314],"mapped",[1315]],[[1315,1315],"valid"],[[1316,1316],"mapped",[1317]],[[1317,1317],"valid"],[[1318,1318],"mapped",[1319]],[[1319,1319],"valid"],[[1320,1320],"mapped",[1321]],[[1321,1321],"valid"],[[1322,1322],"mapped",[1323]],[[1323,1323],"valid"],[[1324,1324],"mapped",[1325]],[[1325,1325],"valid"],[[1326,1326],"mapped",[1327]],[[1327,1327],"valid"],[[1328,1328],"disallowed"],[[1329,1329],"mapped",[1377]],[[1330,1330],"mapped",[1378]],[[1331,1331],"mapped",[1379]],[[1332,1332],"mapped",[1380]],[[1333,1333],"mapped",[1381]],[[1334,1334],"mapped",[1382]],[[1335,1335],"mapped",[1383]],[[1336,1336],"mapped",[1384]],[[1337,1337],"mapped",[1385]],[[1338,1338],"mapped",[1386]],[[1339,1339],"mapped",[1387]],[[1340,1340],"mapped",[1388]],[[1341,1341],"mapped",[1389]],[[1342,1342],"mapped",[1390]],[[1343,1343],"mapped",[1391]],[[1344,1344],"mapped",[1392]],[[1345,1345],"mapped",[1393]],[[1346,1346],"mapped",[1394]],[[1347,1347],"mapped",[1395]],[[1348,1348],"mapped",[1396]],[[1349,1349],"mapped",[1397]],[[1350,1350],"mapped",[1398]],[[1351,1351],"mapped",[1399]],[[1352,1352],"mapped",[1400]],[[1353,1353],"mapped",[1401]],[[1354,1354],"mapped",[1402]],[[1355,1355],"mapped",[1403]],[[1356,1356],"mapped",[1404]],[[1357,1357],"mapped",[1405]],[[1358,1358],"mapped",[1406]],[[1359,1359],"mapped",[1407]],[[1360,1360],"mapped",[1408]],[[1361,1361],"mapped",[1409]],[[1362,1362],"mapped",[1410]],[[1363,1363],"mapped",[1411]],[[1364,1364],"mapped",[1412]],[[1365,1365],"mapped",[1413]],[[1366,1366],"mapped",[1414]],[[1367,1368],"disallowed"],[[1369,1369],"valid"],[[1370,1375],"valid",[],"NV8"],[[1376,1376],"disallowed"],[[1377,1414],"valid"],[[1415,1415],"mapped",[1381,1410]],[[1416,1416],"disallowed"],[[1417,1417],"valid",[],"NV8"],[[1418,1418],"valid",[],"NV8"],[[1419,1420],"disallowed"],[[1421,1422],"valid",[],"NV8"],[[1423,1423],"valid",[],"NV8"],[[1424,1424],"disallowed"],[[1425,1441],"valid"],[[1442,1442],"valid"],[[1443,1455],"valid"],[[1456,1465],"valid"],[[1466,1466],"valid"],[[1467,1469],"valid"],[[1470,1470],"valid",[],"NV8"],[[1471,1471],"valid"],[[1472,1472],"valid",[],"NV8"],[[1473,1474],"valid"],[[1475,1475],"valid",[],"NV8"],[[1476,1476],"valid"],[[1477,1477],"valid"],[[1478,1478],"valid",[],"NV8"],[[1479,1479],"valid"],[[1480,1487],"disallowed"],[[1488,1514],"valid"],[[1515,1519],"disallowed"],[[1520,1524],"valid"],[[1525,1535],"disallowed"],[[1536,1539],"disallowed"],[[1540,1540],"disallowed"],[[1541,1541],"disallowed"],[[1542,1546],"valid",[],"NV8"],[[1547,1547],"valid",[],"NV8"],[[1548,1548],"valid",[],"NV8"],[[1549,1551],"valid",[],"NV8"],[[1552,1557],"valid"],[[1558,1562],"valid"],[[1563,1563],"valid",[],"NV8"],[[1564,1564],"disallowed"],[[1565,1565],"disallowed"],[[1566,1566],"valid",[],"NV8"],[[1567,1567],"valid",[],"NV8"],[[1568,1568],"valid"],[[1569,1594],"valid"],[[1595,1599],"valid"],[[1600,1600],"valid",[],"NV8"],[[1601,1618],"valid"],[[1619,1621],"valid"],[[1622,1624],"valid"],[[1625,1630],"valid"],[[1631,1631],"valid"],[[1632,1641],"valid"],[[1642,1645],"valid",[],"NV8"],[[1646,1647],"valid"],[[1648,1652],"valid"],[[1653,1653],"mapped",[1575,1652]],[[1654,1654],"mapped",[1608,1652]],[[1655,1655],"mapped",[1735,1652]],[[1656,1656],"mapped",[1610,1652]],[[1657,1719],"valid"],[[1720,1721],"valid"],[[1722,1726],"valid"],[[1727,1727],"valid"],[[1728,1742],"valid"],[[1743,1743],"valid"],[[1744,1747],"valid"],[[1748,1748],"valid",[],"NV8"],[[1749,1756],"valid"],[[1757,1757],"disallowed"],[[1758,1758],"valid",[],"NV8"],[[1759,1768],"valid"],[[1769,1769],"valid",[],"NV8"],[[1770,1773],"valid"],[[1774,1775],"valid"],[[1776,1785],"valid"],[[1786,1790],"valid"],[[1791,1791],"valid"],[[1792,1805],"valid",[],"NV8"],[[1806,1806],"disallowed"],[[1807,1807],"disallowed"],[[1808,1836],"valid"],[[1837,1839],"valid"],[[1840,1866],"valid"],[[1867,1868],"disallowed"],[[1869,1871],"valid"],[[1872,1901],"valid"],[[1902,1919],"valid"],[[1920,1968],"valid"],[[1969,1969],"valid"],[[1970,1983],"disallowed"],[[1984,2037],"valid"],[[2038,2042],"valid",[],"NV8"],[[2043,2047],"disallowed"],[[2048,2093],"valid"],[[2094,2095],"disallowed"],[[2096,2110],"valid",[],"NV8"],[[2111,2111],"disallowed"],[[2112,2139],"valid"],[[2140,2141],"disallowed"],[[2142,2142],"valid",[],"NV8"],[[2143,2207],"disallowed"],[[2208,2208],"valid"],[[2209,2209],"valid"],[[2210,2220],"valid"],[[2221,2226],"valid"],[[2227,2228],"valid"],[[2229,2274],"disallowed"],[[2275,2275],"valid"],[[2276,2302],"valid"],[[2303,2303],"valid"],[[2304,2304],"valid"],[[2305,2307],"valid"],[[2308,2308],"valid"],[[2309,2361],"valid"],[[2362,2363],"valid"],[[2364,2381],"valid"],[[2382,2382],"valid"],[[2383,2383],"valid"],[[2384,2388],"valid"],[[2389,2389],"valid"],[[2390,2391],"valid"],[[2392,2392],"mapped",[2325,2364]],[[2393,2393],"mapped",[2326,2364]],[[2394,2394],"mapped",[2327,2364]],[[2395,2395],"mapped",[2332,2364]],[[2396,2396],"mapped",[2337,2364]],[[2397,2397],"mapped",[2338,2364]],[[2398,2398],"mapped",[2347,2364]],[[2399,2399],"mapped",[2351,2364]],[[2400,2403],"valid"],[[2404,2405],"valid",[],"NV8"],[[2406,2415],"valid"],[[2416,2416],"valid",[],"NV8"],[[2417,2418],"valid"],[[2419,2423],"valid"],[[2424,2424],"valid"],[[2425,2426],"valid"],[[2427,2428],"valid"],[[2429,2429],"valid"],[[2430,2431],"valid"],[[2432,2432],"valid"],[[2433,2435],"valid"],[[2436,2436],"disallowed"],[[2437,2444],"valid"],[[2445,2446],"disallowed"],[[2447,2448],"valid"],[[2449,2450],"disallowed"],[[2451,2472],"valid"],[[2473,2473],"disallowed"],[[2474,2480],"valid"],[[2481,2481],"disallowed"],[[2482,2482],"valid"],[[2483,2485],"disallowed"],[[2486,2489],"valid"],[[2490,2491],"disallowed"],[[2492,2492],"valid"],[[2493,2493],"valid"],[[2494,2500],"valid"],[[2501,2502],"disallowed"],[[2503,2504],"valid"],[[2505,2506],"disallowed"],[[2507,2509],"valid"],[[2510,2510],"valid"],[[2511,2518],"disallowed"],[[2519,2519],"valid"],[[2520,2523],"disallowed"],[[2524,2524],"mapped",[2465,2492]],[[2525,2525],"mapped",[2466,2492]],[[2526,2526],"disallowed"],[[2527,2527],"mapped",[2479,2492]],[[2528,2531],"valid"],[[2532,2533],"disallowed"],[[2534,2545],"valid"],[[2546,2554],"valid",[],"NV8"],[[2555,2555],"valid",[],"NV8"],[[2556,2560],"disallowed"],[[2561,2561],"valid"],[[2562,2562],"valid"],[[2563,2563],"valid"],[[2564,2564],"disallowed"],[[2565,2570],"valid"],[[2571,2574],"disallowed"],[[2575,2576],"valid"],[[2577,2578],"disallowed"],[[2579,2600],"valid"],[[2601,2601],"disallowed"],[[2602,2608],"valid"],[[2609,2609],"disallowed"],[[2610,2610],"valid"],[[2611,2611],"mapped",[2610,2620]],[[2612,2612],"disallowed"],[[2613,2613],"valid"],[[2614,2614],"mapped",[2616,2620]],[[2615,2615],"disallowed"],[[2616,2617],"valid"],[[2618,2619],"disallowed"],[[2620,2620],"valid"],[[2621,2621],"disallowed"],[[2622,2626],"valid"],[[2627,2630],"disallowed"],[[2631,2632],"valid"],[[2633,2634],"disallowed"],[[2635,2637],"valid"],[[2638,2640],"disallowed"],[[2641,2641],"valid"],[[2642,2648],"disallowed"],[[2649,2649],"mapped",[2582,2620]],[[2650,2650],"mapped",[2583,2620]],[[2651,2651],"mapped",[2588,2620]],[[2652,2652],"valid"],[[2653,2653],"disallowed"],[[2654,2654],"mapped",[2603,2620]],[[2655,2661],"disallowed"],[[2662,2676],"valid"],[[2677,2677],"valid"],[[2678,2688],"disallowed"],[[2689,2691],"valid"],[[2692,2692],"disallowed"],[[2693,2699],"valid"],[[2700,2700],"valid"],[[2701,2701],"valid"],[[2702,2702],"disallowed"],[[2703,2705],"valid"],[[2706,2706],"disallowed"],[[2707,2728],"valid"],[[2729,2729],"disallowed"],[[2730,2736],"valid"],[[2737,2737],"disallowed"],[[2738,2739],"valid"],[[2740,2740],"disallowed"],[[2741,2745],"valid"],[[2746,2747],"disallowed"],[[2748,2757],"valid"],[[2758,2758],"disallowed"],[[2759,2761],"valid"],[[2762,2762],"disallowed"],[[2763,2765],"valid"],[[2766,2767],"disallowed"],[[2768,2768],"valid"],[[2769,2783],"disallowed"],[[2784,2784],"valid"],[[2785,2787],"valid"],[[2788,2789],"disallowed"],[[2790,2799],"valid"],[[2800,2800],"valid",[],"NV8"],[[2801,2801],"valid",[],"NV8"],[[2802,2808],"disallowed"],[[2809,2809],"valid"],[[2810,2816],"disallowed"],[[2817,2819],"valid"],[[2820,2820],"disallowed"],[[2821,2828],"valid"],[[2829,2830],"disallowed"],[[2831,2832],"valid"],[[2833,2834],"disallowed"],[[2835,2856],"valid"],[[2857,2857],"disallowed"],[[2858,2864],"valid"],[[2865,2865],"disallowed"],[[2866,2867],"valid"],[[2868,2868],"disallowed"],[[2869,2869],"valid"],[[2870,2873],"valid"],[[2874,2875],"disallowed"],[[2876,2883],"valid"],[[2884,2884],"valid"],[[2885,2886],"disallowed"],[[2887,2888],"valid"],[[2889,2890],"disallowed"],[[2891,2893],"valid"],[[2894,2901],"disallowed"],[[2902,2903],"valid"],[[2904,2907],"disallowed"],[[2908,2908],"mapped",[2849,2876]],[[2909,2909],"mapped",[2850,2876]],[[2910,2910],"disallowed"],[[2911,2913],"valid"],[[2914,2915],"valid"],[[2916,2917],"disallowed"],[[2918,2927],"valid"],[[2928,2928],"valid",[],"NV8"],[[2929,2929],"valid"],[[2930,2935],"valid",[],"NV8"],[[2936,2945],"disallowed"],[[2946,2947],"valid"],[[2948,2948],"disallowed"],[[2949,2954],"valid"],[[2955,2957],"disallowed"],[[2958,2960],"valid"],[[2961,2961],"disallowed"],[[2962,2965],"valid"],[[2966,2968],"disallowed"],[[2969,2970],"valid"],[[2971,2971],"disallowed"],[[2972,2972],"valid"],[[2973,2973],"disallowed"],[[2974,2975],"valid"],[[2976,2978],"disallowed"],[[2979,2980],"valid"],[[2981,2983],"disallowed"],[[2984,2986],"valid"],[[2987,2989],"disallowed"],[[2990,2997],"valid"],[[2998,2998],"valid"],[[2999,3001],"valid"],[[3002,3005],"disallowed"],[[3006,3010],"valid"],[[3011,3013],"disallowed"],[[3014,3016],"valid"],[[3017,3017],"disallowed"],[[3018,3021],"valid"],[[3022,3023],"disallowed"],[[3024,3024],"valid"],[[3025,3030],"disallowed"],[[3031,3031],"valid"],[[3032,3045],"disallowed"],[[3046,3046],"valid"],[[3047,3055],"valid"],[[3056,3058],"valid",[],"NV8"],[[3059,3066],"valid",[],"NV8"],[[3067,3071],"disallowed"],[[3072,3072],"valid"],[[3073,3075],"valid"],[[3076,3076],"disallowed"],[[3077,3084],"valid"],[[3085,3085],"disallowed"],[[3086,3088],"valid"],[[3089,3089],"disallowed"],[[3090,3112],"valid"],[[3113,3113],"disallowed"],[[3114,3123],"valid"],[[3124,3124],"valid"],[[3125,3129],"valid"],[[3130,3132],"disallowed"],[[3133,3133],"valid"],[[3134,3140],"valid"],[[3141,3141],"disallowed"],[[3142,3144],"valid"],[[3145,3145],"disallowed"],[[3146,3149],"valid"],[[3150,3156],"disallowed"],[[3157,3158],"valid"],[[3159,3159],"disallowed"],[[3160,3161],"valid"],[[3162,3162],"valid"],[[3163,3167],"disallowed"],[[3168,3169],"valid"],[[3170,3171],"valid"],[[3172,3173],"disallowed"],[[3174,3183],"valid"],[[3184,3191],"disallowed"],[[3192,3199],"valid",[],"NV8"],[[3200,3200],"disallowed"],[[3201,3201],"valid"],[[3202,3203],"valid"],[[3204,3204],"disallowed"],[[3205,3212],"valid"],[[3213,3213],"disallowed"],[[3214,3216],"valid"],[[3217,3217],"disallowed"],[[3218,3240],"valid"],[[3241,3241],"disallowed"],[[3242,3251],"valid"],[[3252,3252],"disallowed"],[[3253,3257],"valid"],[[3258,3259],"disallowed"],[[3260,3261],"valid"],[[3262,3268],"valid"],[[3269,3269],"disallowed"],[[3270,3272],"valid"],[[3273,3273],"disallowed"],[[3274,3277],"valid"],[[3278,3284],"disallowed"],[[3285,3286],"valid"],[[3287,3293],"disallowed"],[[3294,3294],"valid"],[[3295,3295],"disallowed"],[[3296,3297],"valid"],[[3298,3299],"valid"],[[3300,3301],"disallowed"],[[3302,3311],"valid"],[[3312,3312],"disallowed"],[[3313,3314],"valid"],[[3315,3328],"disallowed"],[[3329,3329],"valid"],[[3330,3331],"valid"],[[3332,3332],"disallowed"],[[3333,3340],"valid"],[[3341,3341],"disallowed"],[[3342,3344],"valid"],[[3345,3345],"disallowed"],[[3346,3368],"valid"],[[3369,3369],"valid"],[[3370,3385],"valid"],[[3386,3386],"valid"],[[3387,3388],"disallowed"],[[3389,3389],"valid"],[[3390,3395],"valid"],[[3396,3396],"valid"],[[3397,3397],"disallowed"],[[3398,3400],"valid"],[[3401,3401],"disallowed"],[[3402,3405],"valid"],[[3406,3406],"valid"],[[3407,3414],"disallowed"],[[3415,3415],"valid"],[[3416,3422],"disallowed"],[[3423,3423],"valid"],[[3424,3425],"valid"],[[3426,3427],"valid"],[[3428,3429],"disallowed"],[[3430,3439],"valid"],[[3440,3445],"valid",[],"NV8"],[[3446,3448],"disallowed"],[[3449,3449],"valid",[],"NV8"],[[3450,3455],"valid"],[[3456,3457],"disallowed"],[[3458,3459],"valid"],[[3460,3460],"disallowed"],[[3461,3478],"valid"],[[3479,3481],"disallowed"],[[3482,3505],"valid"],[[3506,3506],"disallowed"],[[3507,3515],"valid"],[[3516,3516],"disallowed"],[[3517,3517],"valid"],[[3518,3519],"disallowed"],[[3520,3526],"valid"],[[3527,3529],"disallowed"],[[3530,3530],"valid"],[[3531,3534],"disallowed"],[[3535,3540],"valid"],[[3541,3541],"disallowed"],[[3542,3542],"valid"],[[3543,3543],"disallowed"],[[3544,3551],"valid"],[[3552,3557],"disallowed"],[[3558,3567],"valid"],[[3568,3569],"disallowed"],[[3570,3571],"valid"],[[3572,3572],"valid",[],"NV8"],[[3573,3584],"disallowed"],[[3585,3634],"valid"],[[3635,3635],"mapped",[3661,3634]],[[3636,3642],"valid"],[[3643,3646],"disallowed"],[[3647,3647],"valid",[],"NV8"],[[3648,3662],"valid"],[[3663,3663],"valid",[],"NV8"],[[3664,3673],"valid"],[[3674,3675],"valid",[],"NV8"],[[3676,3712],"disallowed"],[[3713,3714],"valid"],[[3715,3715],"disallowed"],[[3716,3716],"valid"],[[3717,3718],"disallowed"],[[3719,3720],"valid"],[[3721,3721],"disallowed"],[[3722,3722],"valid"],[[3723,3724],"disallowed"],[[3725,3725],"valid"],[[3726,3731],"disallowed"],[[3732,3735],"valid"],[[3736,3736],"disallowed"],[[3737,3743],"valid"],[[3744,3744],"disallowed"],[[3745,3747],"valid"],[[3748,3748],"disallowed"],[[3749,3749],"valid"],[[3750,3750],"disallowed"],[[3751,3751],"valid"],[[3752,3753],"disallowed"],[[3754,3755],"valid"],[[3756,3756],"disallowed"],[[3757,3762],"valid"],[[3763,3763],"mapped",[3789,3762]],[[3764,3769],"valid"],[[3770,3770],"disallowed"],[[3771,3773],"valid"],[[3774,3775],"disallowed"],[[3776,3780],"valid"],[[3781,3781],"disallowed"],[[3782,3782],"valid"],[[3783,3783],"disallowed"],[[3784,3789],"valid"],[[3790,3791],"disallowed"],[[3792,3801],"valid"],[[3802,3803],"disallowed"],[[3804,3804],"mapped",[3755,3737]],[[3805,3805],"mapped",[3755,3745]],[[3806,3807],"valid"],[[3808,3839],"disallowed"],[[3840,3840],"valid"],[[3841,3850],"valid",[],"NV8"],[[3851,3851],"valid"],[[3852,3852],"mapped",[3851]],[[3853,3863],"valid",[],"NV8"],[[3864,3865],"valid"],[[3866,3871],"valid",[],"NV8"],[[3872,3881],"valid"],[[3882,3892],"valid",[],"NV8"],[[3893,3893],"valid"],[[3894,3894],"valid",[],"NV8"],[[3895,3895],"valid"],[[3896,3896],"valid",[],"NV8"],[[3897,3897],"valid"],[[3898,3901],"valid",[],"NV8"],[[3902,3906],"valid"],[[3907,3907],"mapped",[3906,4023]],[[3908,3911],"valid"],[[3912,3912],"disallowed"],[[3913,3916],"valid"],[[3917,3917],"mapped",[3916,4023]],[[3918,3921],"valid"],[[3922,3922],"mapped",[3921,4023]],[[3923,3926],"valid"],[[3927,3927],"mapped",[3926,4023]],[[3928,3931],"valid"],[[3932,3932],"mapped",[3931,4023]],[[3933,3944],"valid"],[[3945,3945],"mapped",[3904,4021]],[[3946,3946],"valid"],[[3947,3948],"valid"],[[3949,3952],"disallowed"],[[3953,3954],"valid"],[[3955,3955],"mapped",[3953,3954]],[[3956,3956],"valid"],[[3957,3957],"mapped",[3953,3956]],[[3958,3958],"mapped",[4018,3968]],[[3959,3959],"mapped",[4018,3953,3968]],[[3960,3960],"mapped",[4019,3968]],[[3961,3961],"mapped",[4019,3953,3968]],[[3962,3968],"valid"],[[3969,3969],"mapped",[3953,3968]],[[3970,3972],"valid"],[[3973,3973],"valid",[],"NV8"],[[3974,3979],"valid"],[[3980,3983],"valid"],[[3984,3986],"valid"],[[3987,3987],"mapped",[3986,4023]],[[3988,3989],"valid"],[[3990,3990],"valid"],[[3991,3991],"valid"],[[3992,3992],"disallowed"],[[3993,3996],"valid"],[[3997,3997],"mapped",[3996,4023]],[[3998,4001],"valid"],[[4002,4002],"mapped",[4001,4023]],[[4003,4006],"valid"],[[4007,4007],"mapped",[4006,4023]],[[4008,4011],"valid"],[[4012,4012],"mapped",[4011,4023]],[[4013,4013],"valid"],[[4014,4016],"valid"],[[4017,4023],"valid"],[[4024,4024],"valid"],[[4025,4025],"mapped",[3984,4021]],[[4026,4028],"valid"],[[4029,4029],"disallowed"],[[4030,4037],"valid",[],"NV8"],[[4038,4038],"valid"],[[4039,4044],"valid",[],"NV8"],[[4045,4045],"disallowed"],[[4046,4046],"valid",[],"NV8"],[[4047,4047],"valid",[],"NV8"],[[4048,4049],"valid",[],"NV8"],[[4050,4052],"valid",[],"NV8"],[[4053,4056],"valid",[],"NV8"],[[4057,4058],"valid",[],"NV8"],[[4059,4095],"disallowed"],[[4096,4129],"valid"],[[4130,4130],"valid"],[[4131,4135],"valid"],[[4136,4136],"valid"],[[4137,4138],"valid"],[[4139,4139],"valid"],[[4140,4146],"valid"],[[4147,4149],"valid"],[[4150,4153],"valid"],[[4154,4159],"valid"],[[4160,4169],"valid"],[[4170,4175],"valid",[],"NV8"],[[4176,4185],"valid"],[[4186,4249],"valid"],[[4250,4253],"valid"],[[4254,4255],"valid",[],"NV8"],[[4256,4293],"disallowed"],[[4294,4294],"disallowed"],[[4295,4295],"mapped",[11559]],[[4296,4300],"disallowed"],[[4301,4301],"mapped",[11565]],[[4302,4303],"disallowed"],[[4304,4342],"valid"],[[4343,4344],"valid"],[[4345,4346],"valid"],[[4347,4347],"valid",[],"NV8"],[[4348,4348],"mapped",[4316]],[[4349,4351],"valid"],[[4352,4441],"valid",[],"NV8"],[[4442,4446],"valid",[],"NV8"],[[4447,4448],"disallowed"],[[4449,4514],"valid",[],"NV8"],[[4515,4519],"valid",[],"NV8"],[[4520,4601],"valid",[],"NV8"],[[4602,4607],"valid",[],"NV8"],[[4608,4614],"valid"],[[4615,4615],"valid"],[[4616,4678],"valid"],[[4679,4679],"valid"],[[4680,4680],"valid"],[[4681,4681],"disallowed"],[[4682,4685],"valid"],[[4686,4687],"disallowed"],[[4688,4694],"valid"],[[4695,4695],"disallowed"],[[4696,4696],"valid"],[[4697,4697],"disallowed"],[[4698,4701],"valid"],[[4702,4703],"disallowed"],[[4704,4742],"valid"],[[4743,4743],"valid"],[[4744,4744],"valid"],[[4745,4745],"disallowed"],[[4746,4749],"valid"],[[4750,4751],"disallowed"],[[4752,4782],"valid"],[[4783,4783],"valid"],[[4784,4784],"valid"],[[4785,4785],"disallowed"],[[4786,4789],"valid"],[[4790,4791],"disallowed"],[[4792,4798],"valid"],[[4799,4799],"disallowed"],[[4800,4800],"valid"],[[4801,4801],"disallowed"],[[4802,4805],"valid"],[[4806,4807],"disallowed"],[[4808,4814],"valid"],[[4815,4815],"valid"],[[4816,4822],"valid"],[[4823,4823],"disallowed"],[[4824,4846],"valid"],[[4847,4847],"valid"],[[4848,4878],"valid"],[[4879,4879],"valid"],[[4880,4880],"valid"],[[4881,4881],"disallowed"],[[4882,4885],"valid"],[[4886,4887],"disallowed"],[[4888,4894],"valid"],[[4895,4895],"valid"],[[4896,4934],"valid"],[[4935,4935],"valid"],[[4936,4954],"valid"],[[4955,4956],"disallowed"],[[4957,4958],"valid"],[[4959,4959],"valid"],[[4960,4960],"valid",[],"NV8"],[[4961,4988],"valid",[],"NV8"],[[4989,4991],"disallowed"],[[4992,5007],"valid"],[[5008,5017],"valid",[],"NV8"],[[5018,5023],"disallowed"],[[5024,5108],"valid"],[[5109,5109],"valid"],[[5110,5111],"disallowed"],[[5112,5112],"mapped",[5104]],[[5113,5113],"mapped",[5105]],[[5114,5114],"mapped",[5106]],[[5115,5115],"mapped",[5107]],[[5116,5116],"mapped",[5108]],[[5117,5117],"mapped",[5109]],[[5118,5119],"disallowed"],[[5120,5120],"valid",[],"NV8"],[[5121,5740],"valid"],[[5741,5742],"valid",[],"NV8"],[[5743,5750],"valid"],[[5751,5759],"valid"],[[5760,5760],"disallowed"],[[5761,5786],"valid"],[[5787,5788],"valid",[],"NV8"],[[5789,5791],"disallowed"],[[5792,5866],"valid"],[[5867,5872],"valid",[],"NV8"],[[5873,5880],"valid"],[[5881,5887],"disallowed"],[[5888,5900],"valid"],[[5901,5901],"disallowed"],[[5902,5908],"valid"],[[5909,5919],"disallowed"],[[5920,5940],"valid"],[[5941,5942],"valid",[],"NV8"],[[5943,5951],"disallowed"],[[5952,5971],"valid"],[[5972,5983],"disallowed"],[[5984,5996],"valid"],[[5997,5997],"disallowed"],[[5998,6e3],"valid"],[[6001,6001],"disallowed"],[[6002,6003],"valid"],[[6004,6015],"disallowed"],[[6016,6067],"valid"],[[6068,6069],"disallowed"],[[6070,6099],"valid"],[[6100,6102],"valid",[],"NV8"],[[6103,6103],"valid"],[[6104,6107],"valid",[],"NV8"],[[6108,6108],"valid"],[[6109,6109],"valid"],[[6110,6111],"disallowed"],[[6112,6121],"valid"],[[6122,6127],"disallowed"],[[6128,6137],"valid",[],"NV8"],[[6138,6143],"disallowed"],[[6144,6149],"valid",[],"NV8"],[[6150,6150],"disallowed"],[[6151,6154],"valid",[],"NV8"],[[6155,6157],"ignored"],[[6158,6158],"disallowed"],[[6159,6159],"disallowed"],[[6160,6169],"valid"],[[6170,6175],"disallowed"],[[6176,6263],"valid"],[[6264,6271],"disallowed"],[[6272,6313],"valid"],[[6314,6314],"valid"],[[6315,6319],"disallowed"],[[6320,6389],"valid"],[[6390,6399],"disallowed"],[[6400,6428],"valid"],[[6429,6430],"valid"],[[6431,6431],"disallowed"],[[6432,6443],"valid"],[[6444,6447],"disallowed"],[[6448,6459],"valid"],[[6460,6463],"disallowed"],[[6464,6464],"valid",[],"NV8"],[[6465,6467],"disallowed"],[[6468,6469],"valid",[],"NV8"],[[6470,6509],"valid"],[[6510,6511],"disallowed"],[[6512,6516],"valid"],[[6517,6527],"disallowed"],[[6528,6569],"valid"],[[6570,6571],"valid"],[[6572,6575],"disallowed"],[[6576,6601],"valid"],[[6602,6607],"disallowed"],[[6608,6617],"valid"],[[6618,6618],"valid",[],"XV8"],[[6619,6621],"disallowed"],[[6622,6623],"valid",[],"NV8"],[[6624,6655],"valid",[],"NV8"],[[6656,6683],"valid"],[[6684,6685],"disallowed"],[[6686,6687],"valid",[],"NV8"],[[6688,6750],"valid"],[[6751,6751],"disallowed"],[[6752,6780],"valid"],[[6781,6782],"disallowed"],[[6783,6793],"valid"],[[6794,6799],"disallowed"],[[6800,6809],"valid"],[[6810,6815],"disallowed"],[[6816,6822],"valid",[],"NV8"],[[6823,6823],"valid"],[[6824,6829],"valid",[],"NV8"],[[6830,6831],"disallowed"],[[6832,6845],"valid"],[[6846,6846],"valid",[],"NV8"],[[6847,6911],"disallowed"],[[6912,6987],"valid"],[[6988,6991],"disallowed"],[[6992,7001],"valid"],[[7002,7018],"valid",[],"NV8"],[[7019,7027],"valid"],[[7028,7036],"valid",[],"NV8"],[[7037,7039],"disallowed"],[[7040,7082],"valid"],[[7083,7085],"valid"],[[7086,7097],"valid"],[[7098,7103],"valid"],[[7104,7155],"valid"],[[7156,7163],"disallowed"],[[7164,7167],"valid",[],"NV8"],[[7168,7223],"valid"],[[7224,7226],"disallowed"],[[7227,7231],"valid",[],"NV8"],[[7232,7241],"valid"],[[7242,7244],"disallowed"],[[7245,7293],"valid"],[[7294,7295],"valid",[],"NV8"],[[7296,7359],"disallowed"],[[7360,7367],"valid",[],"NV8"],[[7368,7375],"disallowed"],[[7376,7378],"valid"],[[7379,7379],"valid",[],"NV8"],[[7380,7410],"valid"],[[7411,7414],"valid"],[[7415,7415],"disallowed"],[[7416,7417],"valid"],[[7418,7423],"disallowed"],[[7424,7467],"valid"],[[7468,7468],"mapped",[97]],[[7469,7469],"mapped",[230]],[[7470,7470],"mapped",[98]],[[7471,7471],"valid"],[[7472,7472],"mapped",[100]],[[7473,7473],"mapped",[101]],[[7474,7474],"mapped",[477]],[[7475,7475],"mapped",[103]],[[7476,7476],"mapped",[104]],[[7477,7477],"mapped",[105]],[[7478,7478],"mapped",[106]],[[7479,7479],"mapped",[107]],[[7480,7480],"mapped",[108]],[[7481,7481],"mapped",[109]],[[7482,7482],"mapped",[110]],[[7483,7483],"valid"],[[7484,7484],"mapped",[111]],[[7485,7485],"mapped",[547]],[[7486,7486],"mapped",[112]],[[7487,7487],"mapped",[114]],[[7488,7488],"mapped",[116]],[[7489,7489],"mapped",[117]],[[7490,7490],"mapped",[119]],[[7491,7491],"mapped",[97]],[[7492,7492],"mapped",[592]],[[7493,7493],"mapped",[593]],[[7494,7494],"mapped",[7426]],[[7495,7495],"mapped",[98]],[[7496,7496],"mapped",[100]],[[7497,7497],"mapped",[101]],[[7498,7498],"mapped",[601]],[[7499,7499],"mapped",[603]],[[7500,7500],"mapped",[604]],[[7501,7501],"mapped",[103]],[[7502,7502],"valid"],[[7503,7503],"mapped",[107]],[[7504,7504],"mapped",[109]],[[7505,7505],"mapped",[331]],[[7506,7506],"mapped",[111]],[[7507,7507],"mapped",[596]],[[7508,7508],"mapped",[7446]],[[7509,7509],"mapped",[7447]],[[7510,7510],"mapped",[112]],[[7511,7511],"mapped",[116]],[[7512,7512],"mapped",[117]],[[7513,7513],"mapped",[7453]],[[7514,7514],"mapped",[623]],[[7515,7515],"mapped",[118]],[[7516,7516],"mapped",[7461]],[[7517,7517],"mapped",[946]],[[7518,7518],"mapped",[947]],[[7519,7519],"mapped",[948]],[[7520,7520],"mapped",[966]],[[7521,7521],"mapped",[967]],[[7522,7522],"mapped",[105]],[[7523,7523],"mapped",[114]],[[7524,7524],"mapped",[117]],[[7525,7525],"mapped",[118]],[[7526,7526],"mapped",[946]],[[7527,7527],"mapped",[947]],[[7528,7528],"mapped",[961]],[[7529,7529],"mapped",[966]],[[7530,7530],"mapped",[967]],[[7531,7531],"valid"],[[7532,7543],"valid"],[[7544,7544],"mapped",[1085]],[[7545,7578],"valid"],[[7579,7579],"mapped",[594]],[[7580,7580],"mapped",[99]],[[7581,7581],"mapped",[597]],[[7582,7582],"mapped",[240]],[[7583,7583],"mapped",[604]],[[7584,7584],"mapped",[102]],[[7585,7585],"mapped",[607]],[[7586,7586],"mapped",[609]],[[7587,7587],"mapped",[613]],[[7588,7588],"mapped",[616]],[[7589,7589],"mapped",[617]],[[7590,7590],"mapped",[618]],[[7591,7591],"mapped",[7547]],[[7592,7592],"mapped",[669]],[[7593,7593],"mapped",[621]],[[7594,7594],"mapped",[7557]],[[7595,7595],"mapped",[671]],[[7596,7596],"mapped",[625]],[[7597,7597],"mapped",[624]],[[7598,7598],"mapped",[626]],[[7599,7599],"mapped",[627]],[[7600,7600],"mapped",[628]],[[7601,7601],"mapped",[629]],[[7602,7602],"mapped",[632]],[[7603,7603],"mapped",[642]],[[7604,7604],"mapped",[643]],[[7605,7605],"mapped",[427]],[[7606,7606],"mapped",[649]],[[7607,7607],"mapped",[650]],[[7608,7608],"mapped",[7452]],[[7609,7609],"mapped",[651]],[[7610,7610],"mapped",[652]],[[7611,7611],"mapped",[122]],[[7612,7612],"mapped",[656]],[[7613,7613],"mapped",[657]],[[7614,7614],"mapped",[658]],[[7615,7615],"mapped",[952]],[[7616,7619],"valid"],[[7620,7626],"valid"],[[7627,7654],"valid"],[[7655,7669],"valid"],[[7670,7675],"disallowed"],[[7676,7676],"valid"],[[7677,7677],"valid"],[[7678,7679],"valid"],[[7680,7680],"mapped",[7681]],[[7681,7681],"valid"],[[7682,7682],"mapped",[7683]],[[7683,7683],"valid"],[[7684,7684],"mapped",[7685]],[[7685,7685],"valid"],[[7686,7686],"mapped",[7687]],[[7687,7687],"valid"],[[7688,7688],"mapped",[7689]],[[7689,7689],"valid"],[[7690,7690],"mapped",[7691]],[[7691,7691],"valid"],[[7692,7692],"mapped",[7693]],[[7693,7693],"valid"],[[7694,7694],"mapped",[7695]],[[7695,7695],"valid"],[[7696,7696],"mapped",[7697]],[[7697,7697],"valid"],[[7698,7698],"mapped",[7699]],[[7699,7699],"valid"],[[7700,7700],"mapped",[7701]],[[7701,7701],"valid"],[[7702,7702],"mapped",[7703]],[[7703,7703],"valid"],[[7704,7704],"mapped",[7705]],[[7705,7705],"valid"],[[7706,7706],"mapped",[7707]],[[7707,7707],"valid"],[[7708,7708],"mapped",[7709]],[[7709,7709],"valid"],[[7710,7710],"mapped",[7711]],[[7711,7711],"valid"],[[7712,7712],"mapped",[7713]],[[7713,7713],"valid"],[[7714,7714],"mapped",[7715]],[[7715,7715],"valid"],[[7716,7716],"mapped",[7717]],[[7717,7717],"valid"],[[7718,7718],"mapped",[7719]],[[7719,7719],"valid"],[[7720,7720],"mapped",[7721]],[[7721,7721],"valid"],[[7722,7722],"mapped",[7723]],[[7723,7723],"valid"],[[7724,7724],"mapped",[7725]],[[7725,7725],"valid"],[[7726,7726],"mapped",[7727]],[[7727,7727],"valid"],[[7728,7728],"mapped",[7729]],[[7729,7729],"valid"],[[7730,7730],"mapped",[7731]],[[7731,7731],"valid"],[[7732,7732],"mapped",[7733]],[[7733,7733],"valid"],[[7734,7734],"mapped",[7735]],[[7735,7735],"valid"],[[7736,7736],"mapped",[7737]],[[7737,7737],"valid"],[[7738,7738],"mapped",[7739]],[[7739,7739],"valid"],[[7740,7740],"mapped",[7741]],[[7741,7741],"valid"],[[7742,7742],"mapped",[7743]],[[7743,7743],"valid"],[[7744,7744],"mapped",[7745]],[[7745,7745],"valid"],[[7746,7746],"mapped",[7747]],[[7747,7747],"valid"],[[7748,7748],"mapped",[7749]],[[7749,7749],"valid"],[[7750,7750],"mapped",[7751]],[[7751,7751],"valid"],[[7752,7752],"mapped",[7753]],[[7753,7753],"valid"],[[7754,7754],"mapped",[7755]],[[7755,7755],"valid"],[[7756,7756],"mapped",[7757]],[[7757,7757],"valid"],[[7758,7758],"mapped",[7759]],[[7759,7759],"valid"],[[7760,7760],"mapped",[7761]],[[7761,7761],"valid"],[[7762,7762],"mapped",[7763]],[[7763,7763],"valid"],[[7764,7764],"mapped",[7765]],[[7765,7765],"valid"],[[7766,7766],"mapped",[7767]],[[7767,7767],"valid"],[[7768,7768],"mapped",[7769]],[[7769,7769],"valid"],[[7770,7770],"mapped",[7771]],[[7771,7771],"valid"],[[7772,7772],"mapped",[7773]],[[7773,7773],"valid"],[[7774,7774],"mapped",[7775]],[[7775,7775],"valid"],[[7776,7776],"mapped",[7777]],[[7777,7777],"valid"],[[7778,7778],"mapped",[7779]],[[7779,7779],"valid"],[[7780,7780],"mapped",[7781]],[[7781,7781],"valid"],[[7782,7782],"mapped",[7783]],[[7783,7783],"valid"],[[7784,7784],"mapped",[7785]],[[7785,7785],"valid"],[[7786,7786],"mapped",[7787]],[[7787,7787],"valid"],[[7788,7788],"mapped",[7789]],[[7789,7789],"valid"],[[7790,7790],"mapped",[7791]],[[7791,7791],"valid"],[[7792,7792],"mapped",[7793]],[[7793,7793],"valid"],[[7794,7794],"mapped",[7795]],[[7795,7795],"valid"],[[7796,7796],"mapped",[7797]],[[7797,7797],"valid"],[[7798,7798],"mapped",[7799]],[[7799,7799],"valid"],[[7800,7800],"mapped",[7801]],[[7801,7801],"valid"],[[7802,7802],"mapped",[7803]],[[7803,7803],"valid"],[[7804,7804],"mapped",[7805]],[[7805,7805],"valid"],[[7806,7806],"mapped",[7807]],[[7807,7807],"valid"],[[7808,7808],"mapped",[7809]],[[7809,7809],"valid"],[[7810,7810],"mapped",[7811]],[[7811,7811],"valid"],[[7812,7812],"mapped",[7813]],[[7813,7813],"valid"],[[7814,7814],"mapped",[7815]],[[7815,7815],"valid"],[[7816,7816],"mapped",[7817]],[[7817,7817],"valid"],[[7818,7818],"mapped",[7819]],[[7819,7819],"valid"],[[7820,7820],"mapped",[7821]],[[7821,7821],"valid"],[[7822,7822],"mapped",[7823]],[[7823,7823],"valid"],[[7824,7824],"mapped",[7825]],[[7825,7825],"valid"],[[7826,7826],"mapped",[7827]],[[7827,7827],"valid"],[[7828,7828],"mapped",[7829]],[[7829,7833],"valid"],[[7834,7834],"mapped",[97,702]],[[7835,7835],"mapped",[7777]],[[7836,7837],"valid"],[[7838,7838],"mapped",[115,115]],[[7839,7839],"valid"],[[7840,7840],"mapped",[7841]],[[7841,7841],"valid"],[[7842,7842],"mapped",[7843]],[[7843,7843],"valid"],[[7844,7844],"mapped",[7845]],[[7845,7845],"valid"],[[7846,7846],"mapped",[7847]],[[7847,7847],"valid"],[[7848,7848],"mapped",[7849]],[[7849,7849],"valid"],[[7850,7850],"mapped",[7851]],[[7851,7851],"valid"],[[7852,7852],"mapped",[7853]],[[7853,7853],"valid"],[[7854,7854],"mapped",[7855]],[[7855,7855],"valid"],[[7856,7856],"mapped",[7857]],[[7857,7857],"valid"],[[7858,7858],"mapped",[7859]],[[7859,7859],"valid"],[[7860,7860],"mapped",[7861]],[[7861,7861],"valid"],[[7862,7862],"mapped",[7863]],[[7863,7863],"valid"],[[7864,7864],"mapped",[7865]],[[7865,7865],"valid"],[[7866,7866],"mapped",[7867]],[[7867,7867],"valid"],[[7868,7868],"mapped",[7869]],[[7869,7869],"valid"],[[7870,7870],"mapped",[7871]],[[7871,7871],"valid"],[[7872,7872],"mapped",[7873]],[[7873,7873],"valid"],[[7874,7874],"mapped",[7875]],[[7875,7875],"valid"],[[7876,7876],"mapped",[7877]],[[7877,7877],"valid"],[[7878,7878],"mapped",[7879]],[[7879,7879],"valid"],[[7880,7880],"mapped",[7881]],[[7881,7881],"valid"],[[7882,7882],"mapped",[7883]],[[7883,7883],"valid"],[[7884,7884],"mapped",[7885]],[[7885,7885],"valid"],[[7886,7886],"mapped",[7887]],[[7887,7887],"valid"],[[7888,7888],"mapped",[7889]],[[7889,7889],"valid"],[[7890,7890],"mapped",[7891]],[[7891,7891],"valid"],[[7892,7892],"mapped",[7893]],[[7893,7893],"valid"],[[7894,7894],"mapped",[7895]],[[7895,7895],"valid"],[[7896,7896],"mapped",[7897]],[[7897,7897],"valid"],[[7898,7898],"mapped",[7899]],[[7899,7899],"valid"],[[7900,7900],"mapped",[7901]],[[7901,7901],"valid"],[[7902,7902],"mapped",[7903]],[[7903,7903],"valid"],[[7904,7904],"mapped",[7905]],[[7905,7905],"valid"],[[7906,7906],"mapped",[7907]],[[7907,7907],"valid"],[[7908,7908],"mapped",[7909]],[[7909,7909],"valid"],[[7910,7910],"mapped",[7911]],[[7911,7911],"valid"],[[7912,7912],"mapped",[7913]],[[7913,7913],"valid"],[[7914,7914],"mapped",[7915]],[[7915,7915],"valid"],[[7916,7916],"mapped",[7917]],[[7917,7917],"valid"],[[7918,7918],"mapped",[7919]],[[7919,7919],"valid"],[[7920,7920],"mapped",[7921]],[[7921,7921],"valid"],[[7922,7922],"mapped",[7923]],[[7923,7923],"valid"],[[7924,7924],"mapped",[7925]],[[7925,7925],"valid"],[[7926,7926],"mapped",[7927]],[[7927,7927],"valid"],[[7928,7928],"mapped",[7929]],[[7929,7929],"valid"],[[7930,7930],"mapped",[7931]],[[7931,7931],"valid"],[[7932,7932],"mapped",[7933]],[[7933,7933],"valid"],[[7934,7934],"mapped",[7935]],[[7935,7935],"valid"],[[7936,7943],"valid"],[[7944,7944],"mapped",[7936]],[[7945,7945],"mapped",[7937]],[[7946,7946],"mapped",[7938]],[[7947,7947],"mapped",[7939]],[[7948,7948],"mapped",[7940]],[[7949,7949],"mapped",[7941]],[[7950,7950],"mapped",[7942]],[[7951,7951],"mapped",[7943]],[[7952,7957],"valid"],[[7958,7959],"disallowed"],[[7960,7960],"mapped",[7952]],[[7961,7961],"mapped",[7953]],[[7962,7962],"mapped",[7954]],[[7963,7963],"mapped",[7955]],[[7964,7964],"mapped",[7956]],[[7965,7965],"mapped",[7957]],[[7966,7967],"disallowed"],[[7968,7975],"valid"],[[7976,7976],"mapped",[7968]],[[7977,7977],"mapped",[7969]],[[7978,7978],"mapped",[7970]],[[7979,7979],"mapped",[7971]],[[7980,7980],"mapped",[7972]],[[7981,7981],"mapped",[7973]],[[7982,7982],"mapped",[7974]],[[7983,7983],"mapped",[7975]],[[7984,7991],"valid"],[[7992,7992],"mapped",[7984]],[[7993,7993],"mapped",[7985]],[[7994,7994],"mapped",[7986]],[[7995,7995],"mapped",[7987]],[[7996,7996],"mapped",[7988]],[[7997,7997],"mapped",[7989]],[[7998,7998],"mapped",[7990]],[[7999,7999],"mapped",[7991]],[[8e3,8005],"valid"],[[8006,8007],"disallowed"],[[8008,8008],"mapped",[8e3]],[[8009,8009],"mapped",[8001]],[[8010,8010],"mapped",[8002]],[[8011,8011],"mapped",[8003]],[[8012,8012],"mapped",[8004]],[[8013,8013],"mapped",[8005]],[[8014,8015],"disallowed"],[[8016,8023],"valid"],[[8024,8024],"disallowed"],[[8025,8025],"mapped",[8017]],[[8026,8026],"disallowed"],[[8027,8027],"mapped",[8019]],[[8028,8028],"disallowed"],[[8029,8029],"mapped",[8021]],[[8030,8030],"disallowed"],[[8031,8031],"mapped",[8023]],[[8032,8039],"valid"],[[8040,8040],"mapped",[8032]],[[8041,8041],"mapped",[8033]],[[8042,8042],"mapped",[8034]],[[8043,8043],"mapped",[8035]],[[8044,8044],"mapped",[8036]],[[8045,8045],"mapped",[8037]],[[8046,8046],"mapped",[8038]],[[8047,8047],"mapped",[8039]],[[8048,8048],"valid"],[[8049,8049],"mapped",[940]],[[8050,8050],"valid"],[[8051,8051],"mapped",[941]],[[8052,8052],"valid"],[[8053,8053],"mapped",[942]],[[8054,8054],"valid"],[[8055,8055],"mapped",[943]],[[8056,8056],"valid"],[[8057,8057],"mapped",[972]],[[8058,8058],"valid"],[[8059,8059],"mapped",[973]],[[8060,8060],"valid"],[[8061,8061],"mapped",[974]],[[8062,8063],"disallowed"],[[8064,8064],"mapped",[7936,953]],[[8065,8065],"mapped",[7937,953]],[[8066,8066],"mapped",[7938,953]],[[8067,8067],"mapped",[7939,953]],[[8068,8068],"mapped",[7940,953]],[[8069,8069],"mapped",[7941,953]],[[8070,8070],"mapped",[7942,953]],[[8071,8071],"mapped",[7943,953]],[[8072,8072],"mapped",[7936,953]],[[8073,8073],"mapped",[7937,953]],[[8074,8074],"mapped",[7938,953]],[[8075,8075],"mapped",[7939,953]],[[8076,8076],"mapped",[7940,953]],[[8077,8077],"mapped",[7941,953]],[[8078,8078],"mapped",[7942,953]],[[8079,8079],"mapped",[7943,953]],[[8080,8080],"mapped",[7968,953]],[[8081,8081],"mapped",[7969,953]],[[8082,8082],"mapped",[7970,953]],[[8083,8083],"mapped",[7971,953]],[[8084,8084],"mapped",[7972,953]],[[8085,8085],"mapped",[7973,953]],[[8086,8086],"mapped",[7974,953]],[[8087,8087],"mapped",[7975,953]],[[8088,8088],"mapped",[7968,953]],[[8089,8089],"mapped",[7969,953]],[[8090,8090],"mapped",[7970,953]],[[8091,8091],"mapped",[7971,953]],[[8092,8092],"mapped",[7972,953]],[[8093,8093],"mapped",[7973,953]],[[8094,8094],"mapped",[7974,953]],[[8095,8095],"mapped",[7975,953]],[[8096,8096],"mapped",[8032,953]],[[8097,8097],"mapped",[8033,953]],[[8098,8098],"mapped",[8034,953]],[[8099,8099],"mapped",[8035,953]],[[8100,8100],"mapped",[8036,953]],[[8101,8101],"mapped",[8037,953]],[[8102,8102],"mapped",[8038,953]],[[8103,8103],"mapped",[8039,953]],[[8104,8104],"mapped",[8032,953]],[[8105,8105],"mapped",[8033,953]],[[8106,8106],"mapped",[8034,953]],[[8107,8107],"mapped",[8035,953]],[[8108,8108],"mapped",[8036,953]],[[8109,8109],"mapped",[8037,953]],[[8110,8110],"mapped",[8038,953]],[[8111,8111],"mapped",[8039,953]],[[8112,8113],"valid"],[[8114,8114],"mapped",[8048,953]],[[8115,8115],"mapped",[945,953]],[[8116,8116],"mapped",[940,953]],[[8117,8117],"disallowed"],[[8118,8118],"valid"],[[8119,8119],"mapped",[8118,953]],[[8120,8120],"mapped",[8112]],[[8121,8121],"mapped",[8113]],[[8122,8122],"mapped",[8048]],[[8123,8123],"mapped",[940]],[[8124,8124],"mapped",[945,953]],[[8125,8125],"disallowed_STD3_mapped",[32,787]],[[8126,8126],"mapped",[953]],[[8127,8127],"disallowed_STD3_mapped",[32,787]],[[8128,8128],"disallowed_STD3_mapped",[32,834]],[[8129,8129],"disallowed_STD3_mapped",[32,776,834]],[[8130,8130],"mapped",[8052,953]],[[8131,8131],"mapped",[951,953]],[[8132,8132],"mapped",[942,953]],[[8133,8133],"disallowed"],[[8134,8134],"valid"],[[8135,8135],"mapped",[8134,953]],[[8136,8136],"mapped",[8050]],[[8137,8137],"mapped",[941]],[[8138,8138],"mapped",[8052]],[[8139,8139],"mapped",[942]],[[8140,8140],"mapped",[951,953]],[[8141,8141],"disallowed_STD3_mapped",[32,787,768]],[[8142,8142],"disallowed_STD3_mapped",[32,787,769]],[[8143,8143],"disallowed_STD3_mapped",[32,787,834]],[[8144,8146],"valid"],[[8147,8147],"mapped",[912]],[[8148,8149],"disallowed"],[[8150,8151],"valid"],[[8152,8152],"mapped",[8144]],[[8153,8153],"mapped",[8145]],[[8154,8154],"mapped",[8054]],[[8155,8155],"mapped",[943]],[[8156,8156],"disallowed"],[[8157,8157],"disallowed_STD3_mapped",[32,788,768]],[[8158,8158],"disallowed_STD3_mapped",[32,788,769]],[[8159,8159],"disallowed_STD3_mapped",[32,788,834]],[[8160,8162],"valid"],[[8163,8163],"mapped",[944]],[[8164,8167],"valid"],[[8168,8168],"mapped",[8160]],[[8169,8169],"mapped",[8161]],[[8170,8170],"mapped",[8058]],[[8171,8171],"mapped",[973]],[[8172,8172],"mapped",[8165]],[[8173,8173],"disallowed_STD3_mapped",[32,776,768]],[[8174,8174],"disallowed_STD3_mapped",[32,776,769]],[[8175,8175],"disallowed_STD3_mapped",[96]],[[8176,8177],"disallowed"],[[8178,8178],"mapped",[8060,953]],[[8179,8179],"mapped",[969,953]],[[8180,8180],"mapped",[974,953]],[[8181,8181],"disallowed"],[[8182,8182],"valid"],[[8183,8183],"mapped",[8182,953]],[[8184,8184],"mapped",[8056]],[[8185,8185],"mapped",[972]],[[8186,8186],"mapped",[8060]],[[8187,8187],"mapped",[974]],[[8188,8188],"mapped",[969,953]],[[8189,8189],"disallowed_STD3_mapped",[32,769]],[[8190,8190],"disallowed_STD3_mapped",[32,788]],[[8191,8191],"disallowed"],[[8192,8202],"disallowed_STD3_mapped",[32]],[[8203,8203],"ignored"],[[8204,8205],"deviation",[]],[[8206,8207],"disallowed"],[[8208,8208],"valid",[],"NV8"],[[8209,8209],"mapped",[8208]],[[8210,8214],"valid",[],"NV8"],[[8215,8215],"disallowed_STD3_mapped",[32,819]],[[8216,8227],"valid",[],"NV8"],[[8228,8230],"disallowed"],[[8231,8231],"valid",[],"NV8"],[[8232,8238],"disallowed"],[[8239,8239],"disallowed_STD3_mapped",[32]],[[8240,8242],"valid",[],"NV8"],[[8243,8243],"mapped",[8242,8242]],[[8244,8244],"mapped",[8242,8242,8242]],[[8245,8245],"valid",[],"NV8"],[[8246,8246],"mapped",[8245,8245]],[[8247,8247],"mapped",[8245,8245,8245]],[[8248,8251],"valid",[],"NV8"],[[8252,8252],"disallowed_STD3_mapped",[33,33]],[[8253,8253],"valid",[],"NV8"],[[8254,8254],"disallowed_STD3_mapped",[32,773]],[[8255,8262],"valid",[],"NV8"],[[8263,8263],"disallowed_STD3_mapped",[63,63]],[[8264,8264],"disallowed_STD3_mapped",[63,33]],[[8265,8265],"disallowed_STD3_mapped",[33,63]],[[8266,8269],"valid",[],"NV8"],[[8270,8274],"valid",[],"NV8"],[[8275,8276],"valid",[],"NV8"],[[8277,8278],"valid",[],"NV8"],[[8279,8279],"mapped",[8242,8242,8242,8242]],[[8280,8286],"valid",[],"NV8"],[[8287,8287],"disallowed_STD3_mapped",[32]],[[8288,8288],"ignored"],[[8289,8291],"disallowed"],[[8292,8292],"ignored"],[[8293,8293],"disallowed"],[[8294,8297],"disallowed"],[[8298,8303],"disallowed"],[[8304,8304],"mapped",[48]],[[8305,8305],"mapped",[105]],[[8306,8307],"disallowed"],[[8308,8308],"mapped",[52]],[[8309,8309],"mapped",[53]],[[8310,8310],"mapped",[54]],[[8311,8311],"mapped",[55]],[[8312,8312],"mapped",[56]],[[8313,8313],"mapped",[57]],[[8314,8314],"disallowed_STD3_mapped",[43]],[[8315,8315],"mapped",[8722]],[[8316,8316],"disallowed_STD3_mapped",[61]],[[8317,8317],"disallowed_STD3_mapped",[40]],[[8318,8318],"disallowed_STD3_mapped",[41]],[[8319,8319],"mapped",[110]],[[8320,8320],"mapped",[48]],[[8321,8321],"mapped",[49]],[[8322,8322],"mapped",[50]],[[8323,8323],"mapped",[51]],[[8324,8324],"mapped",[52]],[[8325,8325],"mapped",[53]],[[8326,8326],"mapped",[54]],[[8327,8327],"mapped",[55]],[[8328,8328],"mapped",[56]],[[8329,8329],"mapped",[57]],[[8330,8330],"disallowed_STD3_mapped",[43]],[[8331,8331],"mapped",[8722]],[[8332,8332],"disallowed_STD3_mapped",[61]],[[8333,8333],"disallowed_STD3_mapped",[40]],[[8334,8334],"disallowed_STD3_mapped",[41]],[[8335,8335],"disallowed"],[[8336,8336],"mapped",[97]],[[8337,8337],"mapped",[101]],[[8338,8338],"mapped",[111]],[[8339,8339],"mapped",[120]],[[8340,8340],"mapped",[601]],[[8341,8341],"mapped",[104]],[[8342,8342],"mapped",[107]],[[8343,8343],"mapped",[108]],[[8344,8344],"mapped",[109]],[[8345,8345],"mapped",[110]],[[8346,8346],"mapped",[112]],[[8347,8347],"mapped",[115]],[[8348,8348],"mapped",[116]],[[8349,8351],"disallowed"],[[8352,8359],"valid",[],"NV8"],[[8360,8360],"mapped",[114,115]],[[8361,8362],"valid",[],"NV8"],[[8363,8363],"valid",[],"NV8"],[[8364,8364],"valid",[],"NV8"],[[8365,8367],"valid",[],"NV8"],[[8368,8369],"valid",[],"NV8"],[[8370,8373],"valid",[],"NV8"],[[8374,8376],"valid",[],"NV8"],[[8377,8377],"valid",[],"NV8"],[[8378,8378],"valid",[],"NV8"],[[8379,8381],"valid",[],"NV8"],[[8382,8382],"valid",[],"NV8"],[[8383,8399],"disallowed"],[[8400,8417],"valid",[],"NV8"],[[8418,8419],"valid",[],"NV8"],[[8420,8426],"valid",[],"NV8"],[[8427,8427],"valid",[],"NV8"],[[8428,8431],"valid",[],"NV8"],[[8432,8432],"valid",[],"NV8"],[[8433,8447],"disallowed"],[[8448,8448],"disallowed_STD3_mapped",[97,47,99]],[[8449,8449],"disallowed_STD3_mapped",[97,47,115]],[[8450,8450],"mapped",[99]],[[8451,8451],"mapped",[176,99]],[[8452,8452],"valid",[],"NV8"],[[8453,8453],"disallowed_STD3_mapped",[99,47,111]],[[8454,8454],"disallowed_STD3_mapped",[99,47,117]],[[8455,8455],"mapped",[603]],[[8456,8456],"valid",[],"NV8"],[[8457,8457],"mapped",[176,102]],[[8458,8458],"mapped",[103]],[[8459,8462],"mapped",[104]],[[8463,8463],"mapped",[295]],[[8464,8465],"mapped",[105]],[[8466,8467],"mapped",[108]],[[8468,8468],"valid",[],"NV8"],[[8469,8469],"mapped",[110]],[[8470,8470],"mapped",[110,111]],[[8471,8472],"valid",[],"NV8"],[[8473,8473],"mapped",[112]],[[8474,8474],"mapped",[113]],[[8475,8477],"mapped",[114]],[[8478,8479],"valid",[],"NV8"],[[8480,8480],"mapped",[115,109]],[[8481,8481],"mapped",[116,101,108]],[[8482,8482],"mapped",[116,109]],[[8483,8483],"valid",[],"NV8"],[[8484,8484],"mapped",[122]],[[8485,8485],"valid",[],"NV8"],[[8486,8486],"mapped",[969]],[[8487,8487],"valid",[],"NV8"],[[8488,8488],"mapped",[122]],[[8489,8489],"valid",[],"NV8"],[[8490,8490],"mapped",[107]],[[8491,8491],"mapped",[229]],[[8492,8492],"mapped",[98]],[[8493,8493],"mapped",[99]],[[8494,8494],"valid",[],"NV8"],[[8495,8496],"mapped",[101]],[[8497,8497],"mapped",[102]],[[8498,8498],"disallowed"],[[8499,8499],"mapped",[109]],[[8500,8500],"mapped",[111]],[[8501,8501],"mapped",[1488]],[[8502,8502],"mapped",[1489]],[[8503,8503],"mapped",[1490]],[[8504,8504],"mapped",[1491]],[[8505,8505],"mapped",[105]],[[8506,8506],"valid",[],"NV8"],[[8507,8507],"mapped",[102,97,120]],[[8508,8508],"mapped",[960]],[[8509,8510],"mapped",[947]],[[8511,8511],"mapped",[960]],[[8512,8512],"mapped",[8721]],[[8513,8516],"valid",[],"NV8"],[[8517,8518],"mapped",[100]],[[8519,8519],"mapped",[101]],[[8520,8520],"mapped",[105]],[[8521,8521],"mapped",[106]],[[8522,8523],"valid",[],"NV8"],[[8524,8524],"valid",[],"NV8"],[[8525,8525],"valid",[],"NV8"],[[8526,8526],"valid"],[[8527,8527],"valid",[],"NV8"],[[8528,8528],"mapped",[49,8260,55]],[[8529,8529],"mapped",[49,8260,57]],[[8530,8530],"mapped",[49,8260,49,48]],[[8531,8531],"mapped",[49,8260,51]],[[8532,8532],"mapped",[50,8260,51]],[[8533,8533],"mapped",[49,8260,53]],[[8534,8534],"mapped",[50,8260,53]],[[8535,8535],"mapped",[51,8260,53]],[[8536,8536],"mapped",[52,8260,53]],[[8537,8537],"mapped",[49,8260,54]],[[8538,8538],"mapped",[53,8260,54]],[[8539,8539],"mapped",[49,8260,56]],[[8540,8540],"mapped",[51,8260,56]],[[8541,8541],"mapped",[53,8260,56]],[[8542,8542],"mapped",[55,8260,56]],[[8543,8543],"mapped",[49,8260]],[[8544,8544],"mapped",[105]],[[8545,8545],"mapped",[105,105]],[[8546,8546],"mapped",[105,105,105]],[[8547,8547],"mapped",[105,118]],[[8548,8548],"mapped",[118]],[[8549,8549],"mapped",[118,105]],[[8550,8550],"mapped",[118,105,105]],[[8551,8551],"mapped",[118,105,105,105]],[[8552,8552],"mapped",[105,120]],[[8553,8553],"mapped",[120]],[[8554,8554],"mapped",[120,105]],[[8555,8555],"mapped",[120,105,105]],[[8556,8556],"mapped",[108]],[[8557,8557],"mapped",[99]],[[8558,8558],"mapped",[100]],[[8559,8559],"mapped",[109]],[[8560,8560],"mapped",[105]],[[8561,8561],"mapped",[105,105]],[[8562,8562],"mapped",[105,105,105]],[[8563,8563],"mapped",[105,118]],[[8564,8564],"mapped",[118]],[[8565,8565],"mapped",[118,105]],[[8566,8566],"mapped",[118,105,105]],[[8567,8567],"mapped",[118,105,105,105]],[[8568,8568],"mapped",[105,120]],[[8569,8569],"mapped",[120]],[[8570,8570],"mapped",[120,105]],[[8571,8571],"mapped",[120,105,105]],[[8572,8572],"mapped",[108]],[[8573,8573],"mapped",[99]],[[8574,8574],"mapped",[100]],[[8575,8575],"mapped",[109]],[[8576,8578],"valid",[],"NV8"],[[8579,8579],"disallowed"],[[8580,8580],"valid"],[[8581,8584],"valid",[],"NV8"],[[8585,8585],"mapped",[48,8260,51]],[[8586,8587],"valid",[],"NV8"],[[8588,8591],"disallowed"],[[8592,8682],"valid",[],"NV8"],[[8683,8691],"valid",[],"NV8"],[[8692,8703],"valid",[],"NV8"],[[8704,8747],"valid",[],"NV8"],[[8748,8748],"mapped",[8747,8747]],[[8749,8749],"mapped",[8747,8747,8747]],[[8750,8750],"valid",[],"NV8"],[[8751,8751],"mapped",[8750,8750]],[[8752,8752],"mapped",[8750,8750,8750]],[[8753,8799],"valid",[],"NV8"],[[8800,8800],"disallowed_STD3_valid"],[[8801,8813],"valid",[],"NV8"],[[8814,8815],"disallowed_STD3_valid"],[[8816,8945],"valid",[],"NV8"],[[8946,8959],"valid",[],"NV8"],[[8960,8960],"valid",[],"NV8"],[[8961,8961],"valid",[],"NV8"],[[8962,9e3],"valid",[],"NV8"],[[9001,9001],"mapped",[12296]],[[9002,9002],"mapped",[12297]],[[9003,9082],"valid",[],"NV8"],[[9083,9083],"valid",[],"NV8"],[[9084,9084],"valid",[],"NV8"],[[9085,9114],"valid",[],"NV8"],[[9115,9166],"valid",[],"NV8"],[[9167,9168],"valid",[],"NV8"],[[9169,9179],"valid",[],"NV8"],[[9180,9191],"valid",[],"NV8"],[[9192,9192],"valid",[],"NV8"],[[9193,9203],"valid",[],"NV8"],[[9204,9210],"valid",[],"NV8"],[[9211,9215],"disallowed"],[[9216,9252],"valid",[],"NV8"],[[9253,9254],"valid",[],"NV8"],[[9255,9279],"disallowed"],[[9280,9290],"valid",[],"NV8"],[[9291,9311],"disallowed"],[[9312,9312],"mapped",[49]],[[9313,9313],"mapped",[50]],[[9314,9314],"mapped",[51]],[[9315,9315],"mapped",[52]],[[9316,9316],"mapped",[53]],[[9317,9317],"mapped",[54]],[[9318,9318],"mapped",[55]],[[9319,9319],"mapped",[56]],[[9320,9320],"mapped",[57]],[[9321,9321],"mapped",[49,48]],[[9322,9322],"mapped",[49,49]],[[9323,9323],"mapped",[49,50]],[[9324,9324],"mapped",[49,51]],[[9325,9325],"mapped",[49,52]],[[9326,9326],"mapped",[49,53]],[[9327,9327],"mapped",[49,54]],[[9328,9328],"mapped",[49,55]],[[9329,9329],"mapped",[49,56]],[[9330,9330],"mapped",[49,57]],[[9331,9331],"mapped",[50,48]],[[9332,9332],"disallowed_STD3_mapped",[40,49,41]],[[9333,9333],"disallowed_STD3_mapped",[40,50,41]],[[9334,9334],"disallowed_STD3_mapped",[40,51,41]],[[9335,9335],"disallowed_STD3_mapped",[40,52,41]],[[9336,9336],"disallowed_STD3_mapped",[40,53,41]],[[9337,9337],"disallowed_STD3_mapped",[40,54,41]],[[9338,9338],"disallowed_STD3_mapped",[40,55,41]],[[9339,9339],"disallowed_STD3_mapped",[40,56,41]],[[9340,9340],"disallowed_STD3_mapped",[40,57,41]],[[9341,9341],"disallowed_STD3_mapped",[40,49,48,41]],[[9342,9342],"disallowed_STD3_mapped",[40,49,49,41]],[[9343,9343],"disallowed_STD3_mapped",[40,49,50,41]],[[9344,9344],"disallowed_STD3_mapped",[40,49,51,41]],[[9345,9345],"disallowed_STD3_mapped",[40,49,52,41]],[[9346,9346],"disallowed_STD3_mapped",[40,49,53,41]],[[9347,9347],"disallowed_STD3_mapped",[40,49,54,41]],[[9348,9348],"disallowed_STD3_mapped",[40,49,55,41]],[[9349,9349],"disallowed_STD3_mapped",[40,49,56,41]],[[9350,9350],"disallowed_STD3_mapped",[40,49,57,41]],[[9351,9351],"disallowed_STD3_mapped",[40,50,48,41]],[[9352,9371],"disallowed"],[[9372,9372],"disallowed_STD3_mapped",[40,97,41]],[[9373,9373],"disallowed_STD3_mapped",[40,98,41]],[[9374,9374],"disallowed_STD3_mapped",[40,99,41]],[[9375,9375],"disallowed_STD3_mapped",[40,100,41]],[[9376,9376],"disallowed_STD3_mapped",[40,101,41]],[[9377,9377],"disallowed_STD3_mapped",[40,102,41]],[[9378,9378],"disallowed_STD3_mapped",[40,103,41]],[[9379,9379],"disallowed_STD3_mapped",[40,104,41]],[[9380,9380],"disallowed_STD3_mapped",[40,105,41]],[[9381,9381],"disallowed_STD3_mapped",[40,106,41]],[[9382,9382],"disallowed_STD3_mapped",[40,107,41]],[[9383,9383],"disallowed_STD3_mapped",[40,108,41]],[[9384,9384],"disallowed_STD3_mapped",[40,109,41]],[[9385,9385],"disallowed_STD3_mapped",[40,110,41]],[[9386,9386],"disallowed_STD3_mapped",[40,111,41]],[[9387,9387],"disallowed_STD3_mapped",[40,112,41]],[[9388,9388],"disallowed_STD3_mapped",[40,113,41]],[[9389,9389],"disallowed_STD3_mapped",[40,114,41]],[[9390,9390],"disallowed_STD3_mapped",[40,115,41]],[[9391,9391],"disallowed_STD3_mapped",[40,116,41]],[[9392,9392],"disallowed_STD3_mapped",[40,117,41]],[[9393,9393],"disallowed_STD3_mapped",[40,118,41]],[[9394,9394],"disallowed_STD3_mapped",[40,119,41]],[[9395,9395],"disallowed_STD3_mapped",[40,120,41]],[[9396,9396],"disallowed_STD3_mapped",[40,121,41]],[[9397,9397],"disallowed_STD3_mapped",[40,122,41]],[[9398,9398],"mapped",[97]],[[9399,9399],"mapped",[98]],[[9400,9400],"mapped",[99]],[[9401,9401],"mapped",[100]],[[9402,9402],"mapped",[101]],[[9403,9403],"mapped",[102]],[[9404,9404],"mapped",[103]],[[9405,9405],"mapped",[104]],[[9406,9406],"mapped",[105]],[[9407,9407],"mapped",[106]],[[9408,9408],"mapped",[107]],[[9409,9409],"mapped",[108]],[[9410,9410],"mapped",[109]],[[9411,9411],"mapped",[110]],[[9412,9412],"mapped",[111]],[[9413,9413],"mapped",[112]],[[9414,9414],"mapped",[113]],[[9415,9415],"mapped",[114]],[[9416,9416],"mapped",[115]],[[9417,9417],"mapped",[116]],[[9418,9418],"mapped",[117]],[[9419,9419],"mapped",[118]],[[9420,9420],"mapped",[119]],[[9421,9421],"mapped",[120]],[[9422,9422],"mapped",[121]],[[9423,9423],"mapped",[122]],[[9424,9424],"mapped",[97]],[[9425,9425],"mapped",[98]],[[9426,9426],"mapped",[99]],[[9427,9427],"mapped",[100]],[[9428,9428],"mapped",[101]],[[9429,9429],"mapped",[102]],[[9430,9430],"mapped",[103]],[[9431,9431],"mapped",[104]],[[9432,9432],"mapped",[105]],[[9433,9433],"mapped",[106]],[[9434,9434],"mapped",[107]],[[9435,9435],"mapped",[108]],[[9436,9436],"mapped",[109]],[[9437,9437],"mapped",[110]],[[9438,9438],"mapped",[111]],[[9439,9439],"mapped",[112]],[[9440,9440],"mapped",[113]],[[9441,9441],"mapped",[114]],[[9442,9442],"mapped",[115]],[[9443,9443],"mapped",[116]],[[9444,9444],"mapped",[117]],[[9445,9445],"mapped",[118]],[[9446,9446],"mapped",[119]],[[9447,9447],"mapped",[120]],[[9448,9448],"mapped",[121]],[[9449,9449],"mapped",[122]],[[9450,9450],"mapped",[48]],[[9451,9470],"valid",[],"NV8"],[[9471,9471],"valid",[],"NV8"],[[9472,9621],"valid",[],"NV8"],[[9622,9631],"valid",[],"NV8"],[[9632,9711],"valid",[],"NV8"],[[9712,9719],"valid",[],"NV8"],[[9720,9727],"valid",[],"NV8"],[[9728,9747],"valid",[],"NV8"],[[9748,9749],"valid",[],"NV8"],[[9750,9751],"valid",[],"NV8"],[[9752,9752],"valid",[],"NV8"],[[9753,9753],"valid",[],"NV8"],[[9754,9839],"valid",[],"NV8"],[[9840,9841],"valid",[],"NV8"],[[9842,9853],"valid",[],"NV8"],[[9854,9855],"valid",[],"NV8"],[[9856,9865],"valid",[],"NV8"],[[9866,9873],"valid",[],"NV8"],[[9874,9884],"valid",[],"NV8"],[[9885,9885],"valid",[],"NV8"],[[9886,9887],"valid",[],"NV8"],[[9888,9889],"valid",[],"NV8"],[[9890,9905],"valid",[],"NV8"],[[9906,9906],"valid",[],"NV8"],[[9907,9916],"valid",[],"NV8"],[[9917,9919],"valid",[],"NV8"],[[9920,9923],"valid",[],"NV8"],[[9924,9933],"valid",[],"NV8"],[[9934,9934],"valid",[],"NV8"],[[9935,9953],"valid",[],"NV8"],[[9954,9954],"valid",[],"NV8"],[[9955,9955],"valid",[],"NV8"],[[9956,9959],"valid",[],"NV8"],[[9960,9983],"valid",[],"NV8"],[[9984,9984],"valid",[],"NV8"],[[9985,9988],"valid",[],"NV8"],[[9989,9989],"valid",[],"NV8"],[[9990,9993],"valid",[],"NV8"],[[9994,9995],"valid",[],"NV8"],[[9996,10023],"valid",[],"NV8"],[[10024,10024],"valid",[],"NV8"],[[10025,10059],"valid",[],"NV8"],[[10060,10060],"valid",[],"NV8"],[[10061,10061],"valid",[],"NV8"],[[10062,10062],"valid",[],"NV8"],[[10063,10066],"valid",[],"NV8"],[[10067,10069],"valid",[],"NV8"],[[10070,10070],"valid",[],"NV8"],[[10071,10071],"valid",[],"NV8"],[[10072,10078],"valid",[],"NV8"],[[10079,10080],"valid",[],"NV8"],[[10081,10087],"valid",[],"NV8"],[[10088,10101],"valid",[],"NV8"],[[10102,10132],"valid",[],"NV8"],[[10133,10135],"valid",[],"NV8"],[[10136,10159],"valid",[],"NV8"],[[10160,10160],"valid",[],"NV8"],[[10161,10174],"valid",[],"NV8"],[[10175,10175],"valid",[],"NV8"],[[10176,10182],"valid",[],"NV8"],[[10183,10186],"valid",[],"NV8"],[[10187,10187],"valid",[],"NV8"],[[10188,10188],"valid",[],"NV8"],[[10189,10189],"valid",[],"NV8"],[[10190,10191],"valid",[],"NV8"],[[10192,10219],"valid",[],"NV8"],[[10220,10223],"valid",[],"NV8"],[[10224,10239],"valid",[],"NV8"],[[10240,10495],"valid",[],"NV8"],[[10496,10763],"valid",[],"NV8"],[[10764,10764],"mapped",[8747,8747,8747,8747]],[[10765,10867],"valid",[],"NV8"],[[10868,10868],"disallowed_STD3_mapped",[58,58,61]],[[10869,10869],"disallowed_STD3_mapped",[61,61]],[[10870,10870],"disallowed_STD3_mapped",[61,61,61]],[[10871,10971],"valid",[],"NV8"],[[10972,10972],"mapped",[10973,824]],[[10973,11007],"valid",[],"NV8"],[[11008,11021],"valid",[],"NV8"],[[11022,11027],"valid",[],"NV8"],[[11028,11034],"valid",[],"NV8"],[[11035,11039],"valid",[],"NV8"],[[11040,11043],"valid",[],"NV8"],[[11044,11084],"valid",[],"NV8"],[[11085,11087],"valid",[],"NV8"],[[11088,11092],"valid",[],"NV8"],[[11093,11097],"valid",[],"NV8"],[[11098,11123],"valid",[],"NV8"],[[11124,11125],"disallowed"],[[11126,11157],"valid",[],"NV8"],[[11158,11159],"disallowed"],[[11160,11193],"valid",[],"NV8"],[[11194,11196],"disallowed"],[[11197,11208],"valid",[],"NV8"],[[11209,11209],"disallowed"],[[11210,11217],"valid",[],"NV8"],[[11218,11243],"disallowed"],[[11244,11247],"valid",[],"NV8"],[[11248,11263],"disallowed"],[[11264,11264],"mapped",[11312]],[[11265,11265],"mapped",[11313]],[[11266,11266],"mapped",[11314]],[[11267,11267],"mapped",[11315]],[[11268,11268],"mapped",[11316]],[[11269,11269],"mapped",[11317]],[[11270,11270],"mapped",[11318]],[[11271,11271],"mapped",[11319]],[[11272,11272],"mapped",[11320]],[[11273,11273],"mapped",[11321]],[[11274,11274],"mapped",[11322]],[[11275,11275],"mapped",[11323]],[[11276,11276],"mapped",[11324]],[[11277,11277],"mapped",[11325]],[[11278,11278],"mapped",[11326]],[[11279,11279],"mapped",[11327]],[[11280,11280],"mapped",[11328]],[[11281,11281],"mapped",[11329]],[[11282,11282],"mapped",[11330]],[[11283,11283],"mapped",[11331]],[[11284,11284],"mapped",[11332]],[[11285,11285],"mapped",[11333]],[[11286,11286],"mapped",[11334]],[[11287,11287],"mapped",[11335]],[[11288,11288],"mapped",[11336]],[[11289,11289],"mapped",[11337]],[[11290,11290],"mapped",[11338]],[[11291,11291],"mapped",[11339]],[[11292,11292],"mapped",[11340]],[[11293,11293],"mapped",[11341]],[[11294,11294],"mapped",[11342]],[[11295,11295],"mapped",[11343]],[[11296,11296],"mapped",[11344]],[[11297,11297],"mapped",[11345]],[[11298,11298],"mapped",[11346]],[[11299,11299],"mapped",[11347]],[[11300,11300],"mapped",[11348]],[[11301,11301],"mapped",[11349]],[[11302,11302],"mapped",[11350]],[[11303,11303],"mapped",[11351]],[[11304,11304],"mapped",[11352]],[[11305,11305],"mapped",[11353]],[[11306,11306],"mapped",[11354]],[[11307,11307],"mapped",[11355]],[[11308,11308],"mapped",[11356]],[[11309,11309],"mapped",[11357]],[[11310,11310],"mapped",[11358]],[[11311,11311],"disallowed"],[[11312,11358],"valid"],[[11359,11359],"disallowed"],[[11360,11360],"mapped",[11361]],[[11361,11361],"valid"],[[11362,11362],"mapped",[619]],[[11363,11363],"mapped",[7549]],[[11364,11364],"mapped",[637]],[[11365,11366],"valid"],[[11367,11367],"mapped",[11368]],[[11368,11368],"valid"],[[11369,11369],"mapped",[11370]],[[11370,11370],"valid"],[[11371,11371],"mapped",[11372]],[[11372,11372],"valid"],[[11373,11373],"mapped",[593]],[[11374,11374],"mapped",[625]],[[11375,11375],"mapped",[592]],[[11376,11376],"mapped",[594]],[[11377,11377],"valid"],[[11378,11378],"mapped",[11379]],[[11379,11379],"valid"],[[11380,11380],"valid"],[[11381,11381],"mapped",[11382]],[[11382,11383],"valid"],[[11384,11387],"valid"],[[11388,11388],"mapped",[106]],[[11389,11389],"mapped",[118]],[[11390,11390],"mapped",[575]],[[11391,11391],"mapped",[576]],[[11392,11392],"mapped",[11393]],[[11393,11393],"valid"],[[11394,11394],"mapped",[11395]],[[11395,11395],"valid"],[[11396,11396],"mapped",[11397]],[[11397,11397],"valid"],[[11398,11398],"mapped",[11399]],[[11399,11399],"valid"],[[11400,11400],"mapped",[11401]],[[11401,11401],"valid"],[[11402,11402],"mapped",[11403]],[[11403,11403],"valid"],[[11404,11404],"mapped",[11405]],[[11405,11405],"valid"],[[11406,11406],"mapped",[11407]],[[11407,11407],"valid"],[[11408,11408],"mapped",[11409]],[[11409,11409],"valid"],[[11410,11410],"mapped",[11411]],[[11411,11411],"valid"],[[11412,11412],"mapped",[11413]],[[11413,11413],"valid"],[[11414,11414],"mapped",[11415]],[[11415,11415],"valid"],[[11416,11416],"mapped",[11417]],[[11417,11417],"valid"],[[11418,11418],"mapped",[11419]],[[11419,11419],"valid"],[[11420,11420],"mapped",[11421]],[[11421,11421],"valid"],[[11422,11422],"mapped",[11423]],[[11423,11423],"valid"],[[11424,11424],"mapped",[11425]],[[11425,11425],"valid"],[[11426,11426],"mapped",[11427]],[[11427,11427],"valid"],[[11428,11428],"mapped",[11429]],[[11429,11429],"valid"],[[11430,11430],"mapped",[11431]],[[11431,11431],"valid"],[[11432,11432],"mapped",[11433]],[[11433,11433],"valid"],[[11434,11434],"mapped",[11435]],[[11435,11435],"valid"],[[11436,11436],"mapped",[11437]],[[11437,11437],"valid"],[[11438,11438],"mapped",[11439]],[[11439,11439],"valid"],[[11440,11440],"mapped",[11441]],[[11441,11441],"valid"],[[11442,11442],"mapped",[11443]],[[11443,11443],"valid"],[[11444,11444],"mapped",[11445]],[[11445,11445],"valid"],[[11446,11446],"mapped",[11447]],[[11447,11447],"valid"],[[11448,11448],"mapped",[11449]],[[11449,11449],"valid"],[[11450,11450],"mapped",[11451]],[[11451,11451],"valid"],[[11452,11452],"mapped",[11453]],[[11453,11453],"valid"],[[11454,11454],"mapped",[11455]],[[11455,11455],"valid"],[[11456,11456],"mapped",[11457]],[[11457,11457],"valid"],[[11458,11458],"mapped",[11459]],[[11459,11459],"valid"],[[11460,11460],"mapped",[11461]],[[11461,11461],"valid"],[[11462,11462],"mapped",[11463]],[[11463,11463],"valid"],[[11464,11464],"mapped",[11465]],[[11465,11465],"valid"],[[11466,11466],"mapped",[11467]],[[11467,11467],"valid"],[[11468,11468],"mapped",[11469]],[[11469,11469],"valid"],[[11470,11470],"mapped",[11471]],[[11471,11471],"valid"],[[11472,11472],"mapped",[11473]],[[11473,11473],"valid"],[[11474,11474],"mapped",[11475]],[[11475,11475],"valid"],[[11476,11476],"mapped",[11477]],[[11477,11477],"valid"],[[11478,11478],"mapped",[11479]],[[11479,11479],"valid"],[[11480,11480],"mapped",[11481]],[[11481,11481],"valid"],[[11482,11482],"mapped",[11483]],[[11483,11483],"valid"],[[11484,11484],"mapped",[11485]],[[11485,11485],"valid"],[[11486,11486],"mapped",[11487]],[[11487,11487],"valid"],[[11488,11488],"mapped",[11489]],[[11489,11489],"valid"],[[11490,11490],"mapped",[11491]],[[11491,11492],"valid"],[[11493,11498],"valid",[],"NV8"],[[11499,11499],"mapped",[11500]],[[11500,11500],"valid"],[[11501,11501],"mapped",[11502]],[[11502,11505],"valid"],[[11506,11506],"mapped",[11507]],[[11507,11507],"valid"],[[11508,11512],"disallowed"],[[11513,11519],"valid",[],"NV8"],[[11520,11557],"valid"],[[11558,11558],"disallowed"],[[11559,11559],"valid"],[[11560,11564],"disallowed"],[[11565,11565],"valid"],[[11566,11567],"disallowed"],[[11568,11621],"valid"],[[11622,11623],"valid"],[[11624,11630],"disallowed"],[[11631,11631],"mapped",[11617]],[[11632,11632],"valid",[],"NV8"],[[11633,11646],"disallowed"],[[11647,11647],"valid"],[[11648,11670],"valid"],[[11671,11679],"disallowed"],[[11680,11686],"valid"],[[11687,11687],"disallowed"],[[11688,11694],"valid"],[[11695,11695],"disallowed"],[[11696,11702],"valid"],[[11703,11703],"disallowed"],[[11704,11710],"valid"],[[11711,11711],"disallowed"],[[11712,11718],"valid"],[[11719,11719],"disallowed"],[[11720,11726],"valid"],[[11727,11727],"disallowed"],[[11728,11734],"valid"],[[11735,11735],"disallowed"],[[11736,11742],"valid"],[[11743,11743],"disallowed"],[[11744,11775],"valid"],[[11776,11799],"valid",[],"NV8"],[[11800,11803],"valid",[],"NV8"],[[11804,11805],"valid",[],"NV8"],[[11806,11822],"valid",[],"NV8"],[[11823,11823],"valid"],[[11824,11824],"valid",[],"NV8"],[[11825,11825],"valid",[],"NV8"],[[11826,11835],"valid",[],"NV8"],[[11836,11842],"valid",[],"NV8"],[[11843,11903],"disallowed"],[[11904,11929],"valid",[],"NV8"],[[11930,11930],"disallowed"],[[11931,11934],"valid",[],"NV8"],[[11935,11935],"mapped",[27597]],[[11936,12018],"valid",[],"NV8"],[[12019,12019],"mapped",[40863]],[[12020,12031],"disallowed"],[[12032,12032],"mapped",[19968]],[[12033,12033],"mapped",[20008]],[[12034,12034],"mapped",[20022]],[[12035,12035],"mapped",[20031]],[[12036,12036],"mapped",[20057]],[[12037,12037],"mapped",[20101]],[[12038,12038],"mapped",[20108]],[[12039,12039],"mapped",[20128]],[[12040,12040],"mapped",[20154]],[[12041,12041],"mapped",[20799]],[[12042,12042],"mapped",[20837]],[[12043,12043],"mapped",[20843]],[[12044,12044],"mapped",[20866]],[[12045,12045],"mapped",[20886]],[[12046,12046],"mapped",[20907]],[[12047,12047],"mapped",[20960]],[[12048,12048],"mapped",[20981]],[[12049,12049],"mapped",[20992]],[[12050,12050],"mapped",[21147]],[[12051,12051],"mapped",[21241]],[[12052,12052],"mapped",[21269]],[[12053,12053],"mapped",[21274]],[[12054,12054],"mapped",[21304]],[[12055,12055],"mapped",[21313]],[[12056,12056],"mapped",[21340]],[[12057,12057],"mapped",[21353]],[[12058,12058],"mapped",[21378]],[[12059,12059],"mapped",[21430]],[[12060,12060],"mapped",[21448]],[[12061,12061],"mapped",[21475]],[[12062,12062],"mapped",[22231]],[[12063,12063],"mapped",[22303]],[[12064,12064],"mapped",[22763]],[[12065,12065],"mapped",[22786]],[[12066,12066],"mapped",[22794]],[[12067,12067],"mapped",[22805]],[[12068,12068],"mapped",[22823]],[[12069,12069],"mapped",[22899]],[[12070,12070],"mapped",[23376]],[[12071,12071],"mapped",[23424]],[[12072,12072],"mapped",[23544]],[[12073,12073],"mapped",[23567]],[[12074,12074],"mapped",[23586]],[[12075,12075],"mapped",[23608]],[[12076,12076],"mapped",[23662]],[[12077,12077],"mapped",[23665]],[[12078,12078],"mapped",[24027]],[[12079,12079],"mapped",[24037]],[[12080,12080],"mapped",[24049]],[[12081,12081],"mapped",[24062]],[[12082,12082],"mapped",[24178]],[[12083,12083],"mapped",[24186]],[[12084,12084],"mapped",[24191]],[[12085,12085],"mapped",[24308]],[[12086,12086],"mapped",[24318]],[[12087,12087],"mapped",[24331]],[[12088,12088],"mapped",[24339]],[[12089,12089],"mapped",[24400]],[[12090,12090],"mapped",[24417]],[[12091,12091],"mapped",[24435]],[[12092,12092],"mapped",[24515]],[[12093,12093],"mapped",[25096]],[[12094,12094],"mapped",[25142]],[[12095,12095],"mapped",[25163]],[[12096,12096],"mapped",[25903]],[[12097,12097],"mapped",[25908]],[[12098,12098],"mapped",[25991]],[[12099,12099],"mapped",[26007]],[[12100,12100],"mapped",[26020]],[[12101,12101],"mapped",[26041]],[[12102,12102],"mapped",[26080]],[[12103,12103],"mapped",[26085]],[[12104,12104],"mapped",[26352]],[[12105,12105],"mapped",[26376]],[[12106,12106],"mapped",[26408]],[[12107,12107],"mapped",[27424]],[[12108,12108],"mapped",[27490]],[[12109,12109],"mapped",[27513]],[[12110,12110],"mapped",[27571]],[[12111,12111],"mapped",[27595]],[[12112,12112],"mapped",[27604]],[[12113,12113],"mapped",[27611]],[[12114,12114],"mapped",[27663]],[[12115,12115],"mapped",[27668]],[[12116,12116],"mapped",[27700]],[[12117,12117],"mapped",[28779]],[[12118,12118],"mapped",[29226]],[[12119,12119],"mapped",[29238]],[[12120,12120],"mapped",[29243]],[[12121,12121],"mapped",[29247]],[[12122,12122],"mapped",[29255]],[[12123,12123],"mapped",[29273]],[[12124,12124],"mapped",[29275]],[[12125,12125],"mapped",[29356]],[[12126,12126],"mapped",[29572]],[[12127,12127],"mapped",[29577]],[[12128,12128],"mapped",[29916]],[[12129,12129],"mapped",[29926]],[[12130,12130],"mapped",[29976]],[[12131,12131],"mapped",[29983]],[[12132,12132],"mapped",[29992]],[[12133,12133],"mapped",[3e4]],[[12134,12134],"mapped",[30091]],[[12135,12135],"mapped",[30098]],[[12136,12136],"mapped",[30326]],[[12137,12137],"mapped",[30333]],[[12138,12138],"mapped",[30382]],[[12139,12139],"mapped",[30399]],[[12140,12140],"mapped",[30446]],[[12141,12141],"mapped",[30683]],[[12142,12142],"mapped",[30690]],[[12143,12143],"mapped",[30707]],[[12144,12144],"mapped",[31034]],[[12145,12145],"mapped",[31160]],[[12146,12146],"mapped",[31166]],[[12147,12147],"mapped",[31348]],[[12148,12148],"mapped",[31435]],[[12149,12149],"mapped",[31481]],[[12150,12150],"mapped",[31859]],[[12151,12151],"mapped",[31992]],[[12152,12152],"mapped",[32566]],[[12153,12153],"mapped",[32593]],[[12154,12154],"mapped",[32650]],[[12155,12155],"mapped",[32701]],[[12156,12156],"mapped",[32769]],[[12157,12157],"mapped",[32780]],[[12158,12158],"mapped",[32786]],[[12159,12159],"mapped",[32819]],[[12160,12160],"mapped",[32895]],[[12161,12161],"mapped",[32905]],[[12162,12162],"mapped",[33251]],[[12163,12163],"mapped",[33258]],[[12164,12164],"mapped",[33267]],[[12165,12165],"mapped",[33276]],[[12166,12166],"mapped",[33292]],[[12167,12167],"mapped",[33307]],[[12168,12168],"mapped",[33311]],[[12169,12169],"mapped",[33390]],[[12170,12170],"mapped",[33394]],[[12171,12171],"mapped",[33400]],[[12172,12172],"mapped",[34381]],[[12173,12173],"mapped",[34411]],[[12174,12174],"mapped",[34880]],[[12175,12175],"mapped",[34892]],[[12176,12176],"mapped",[34915]],[[12177,12177],"mapped",[35198]],[[12178,12178],"mapped",[35211]],[[12179,12179],"mapped",[35282]],[[12180,12180],"mapped",[35328]],[[12181,12181],"mapped",[35895]],[[12182,12182],"mapped",[35910]],[[12183,12183],"mapped",[35925]],[[12184,12184],"mapped",[35960]],[[12185,12185],"mapped",[35997]],[[12186,12186],"mapped",[36196]],[[12187,12187],"mapped",[36208]],[[12188,12188],"mapped",[36275]],[[12189,12189],"mapped",[36523]],[[12190,12190],"mapped",[36554]],[[12191,12191],"mapped",[36763]],[[12192,12192],"mapped",[36784]],[[12193,12193],"mapped",[36789]],[[12194,12194],"mapped",[37009]],[[12195,12195],"mapped",[37193]],[[12196,12196],"mapped",[37318]],[[12197,12197],"mapped",[37324]],[[12198,12198],"mapped",[37329]],[[12199,12199],"mapped",[38263]],[[12200,12200],"mapped",[38272]],[[12201,12201],"mapped",[38428]],[[12202,12202],"mapped",[38582]],[[12203,12203],"mapped",[38585]],[[12204,12204],"mapped",[38632]],[[12205,12205],"mapped",[38737]],[[12206,12206],"mapped",[38750]],[[12207,12207],"mapped",[38754]],[[12208,12208],"mapped",[38761]],[[12209,12209],"mapped",[38859]],[[12210,12210],"mapped",[38893]],[[12211,12211],"mapped",[38899]],[[12212,12212],"mapped",[38913]],[[12213,12213],"mapped",[39080]],[[12214,12214],"mapped",[39131]],[[12215,12215],"mapped",[39135]],[[12216,12216],"mapped",[39318]],[[12217,12217],"mapped",[39321]],[[12218,12218],"mapped",[39340]],[[12219,12219],"mapped",[39592]],[[12220,12220],"mapped",[39640]],[[12221,12221],"mapped",[39647]],[[12222,12222],"mapped",[39717]],[[12223,12223],"mapped",[39727]],[[12224,12224],"mapped",[39730]],[[12225,12225],"mapped",[39740]],[[12226,12226],"mapped",[39770]],[[12227,12227],"mapped",[40165]],[[12228,12228],"mapped",[40565]],[[12229,12229],"mapped",[40575]],[[12230,12230],"mapped",[40613]],[[12231,12231],"mapped",[40635]],[[12232,12232],"mapped",[40643]],[[12233,12233],"mapped",[40653]],[[12234,12234],"mapped",[40657]],[[12235,12235],"mapped",[40697]],[[12236,12236],"mapped",[40701]],[[12237,12237],"mapped",[40718]],[[12238,12238],"mapped",[40723]],[[12239,12239],"mapped",[40736]],[[12240,12240],"mapped",[40763]],[[12241,12241],"mapped",[40778]],[[12242,12242],"mapped",[40786]],[[12243,12243],"mapped",[40845]],[[12244,12244],"mapped",[40860]],[[12245,12245],"mapped",[40864]],[[12246,12271],"disallowed"],[[12272,12283],"disallowed"],[[12284,12287],"disallowed"],[[12288,12288],"disallowed_STD3_mapped",[32]],[[12289,12289],"valid",[],"NV8"],[[12290,12290],"mapped",[46]],[[12291,12292],"valid",[],"NV8"],[[12293,12295],"valid"],[[12296,12329],"valid",[],"NV8"],[[12330,12333],"valid"],[[12334,12341],"valid",[],"NV8"],[[12342,12342],"mapped",[12306]],[[12343,12343],"valid",[],"NV8"],[[12344,12344],"mapped",[21313]],[[12345,12345],"mapped",[21316]],[[12346,12346],"mapped",[21317]],[[12347,12347],"valid",[],"NV8"],[[12348,12348],"valid"],[[12349,12349],"valid",[],"NV8"],[[12350,12350],"valid",[],"NV8"],[[12351,12351],"valid",[],"NV8"],[[12352,12352],"disallowed"],[[12353,12436],"valid"],[[12437,12438],"valid"],[[12439,12440],"disallowed"],[[12441,12442],"valid"],[[12443,12443],"disallowed_STD3_mapped",[32,12441]],[[12444,12444],"disallowed_STD3_mapped",[32,12442]],[[12445,12446],"valid"],[[12447,12447],"mapped",[12424,12426]],[[12448,12448],"valid",[],"NV8"],[[12449,12542],"valid"],[[12543,12543],"mapped",[12467,12488]],[[12544,12548],"disallowed"],[[12549,12588],"valid"],[[12589,12589],"valid"],[[12590,12592],"disallowed"],[[12593,12593],"mapped",[4352]],[[12594,12594],"mapped",[4353]],[[12595,12595],"mapped",[4522]],[[12596,12596],"mapped",[4354]],[[12597,12597],"mapped",[4524]],[[12598,12598],"mapped",[4525]],[[12599,12599],"mapped",[4355]],[[12600,12600],"mapped",[4356]],[[12601,12601],"mapped",[4357]],[[12602,12602],"mapped",[4528]],[[12603,12603],"mapped",[4529]],[[12604,12604],"mapped",[4530]],[[12605,12605],"mapped",[4531]],[[12606,12606],"mapped",[4532]],[[12607,12607],"mapped",[4533]],[[12608,12608],"mapped",[4378]],[[12609,12609],"mapped",[4358]],[[12610,12610],"mapped",[4359]],[[12611,12611],"mapped",[4360]],[[12612,12612],"mapped",[4385]],[[12613,12613],"mapped",[4361]],[[12614,12614],"mapped",[4362]],[[12615,12615],"mapped",[4363]],[[12616,12616],"mapped",[4364]],[[12617,12617],"mapped",[4365]],[[12618,12618],"mapped",[4366]],[[12619,12619],"mapped",[4367]],[[12620,12620],"mapped",[4368]],[[12621,12621],"mapped",[4369]],[[12622,12622],"mapped",[4370]],[[12623,12623],"mapped",[4449]],[[12624,12624],"mapped",[4450]],[[12625,12625],"mapped",[4451]],[[12626,12626],"mapped",[4452]],[[12627,12627],"mapped",[4453]],[[12628,12628],"mapped",[4454]],[[12629,12629],"mapped",[4455]],[[12630,12630],"mapped",[4456]],[[12631,12631],"mapped",[4457]],[[12632,12632],"mapped",[4458]],[[12633,12633],"mapped",[4459]],[[12634,12634],"mapped",[4460]],[[12635,12635],"mapped",[4461]],[[12636,12636],"mapped",[4462]],[[12637,12637],"mapped",[4463]],[[12638,12638],"mapped",[4464]],[[12639,12639],"mapped",[4465]],[[12640,12640],"mapped",[4466]],[[12641,12641],"mapped",[4467]],[[12642,12642],"mapped",[4468]],[[12643,12643],"mapped",[4469]],[[12644,12644],"disallowed"],[[12645,12645],"mapped",[4372]],[[12646,12646],"mapped",[4373]],[[12647,12647],"mapped",[4551]],[[12648,12648],"mapped",[4552]],[[12649,12649],"mapped",[4556]],[[12650,12650],"mapped",[4558]],[[12651,12651],"mapped",[4563]],[[12652,12652],"mapped",[4567]],[[12653,12653],"mapped",[4569]],[[12654,12654],"mapped",[4380]],[[12655,12655],"mapped",[4573]],[[12656,12656],"mapped",[4575]],[[12657,12657],"mapped",[4381]],[[12658,12658],"mapped",[4382]],[[12659,12659],"mapped",[4384]],[[12660,12660],"mapped",[4386]],[[12661,12661],"mapped",[4387]],[[12662,12662],"mapped",[4391]],[[12663,12663],"mapped",[4393]],[[12664,12664],"mapped",[4395]],[[12665,12665],"mapped",[4396]],[[12666,12666],"mapped",[4397]],[[12667,12667],"mapped",[4398]],[[12668,12668],"mapped",[4399]],[[12669,12669],"mapped",[4402]],[[12670,12670],"mapped",[4406]],[[12671,12671],"mapped",[4416]],[[12672,12672],"mapped",[4423]],[[12673,12673],"mapped",[4428]],[[12674,12674],"mapped",[4593]],[[12675,12675],"mapped",[4594]],[[12676,12676],"mapped",[4439]],[[12677,12677],"mapped",[4440]],[[12678,12678],"mapped",[4441]],[[12679,12679],"mapped",[4484]],[[12680,12680],"mapped",[4485]],[[12681,12681],"mapped",[4488]],[[12682,12682],"mapped",[4497]],[[12683,12683],"mapped",[4498]],[[12684,12684],"mapped",[4500]],[[12685,12685],"mapped",[4510]],[[12686,12686],"mapped",[4513]],[[12687,12687],"disallowed"],[[12688,12689],"valid",[],"NV8"],[[12690,12690],"mapped",[19968]],[[12691,12691],"mapped",[20108]],[[12692,12692],"mapped",[19977]],[[12693,12693],"mapped",[22235]],[[12694,12694],"mapped",[19978]],[[12695,12695],"mapped",[20013]],[[12696,12696],"mapped",[19979]],[[12697,12697],"mapped",[30002]],[[12698,12698],"mapped",[20057]],[[12699,12699],"mapped",[19993]],[[12700,12700],"mapped",[19969]],[[12701,12701],"mapped",[22825]],[[12702,12702],"mapped",[22320]],[[12703,12703],"mapped",[20154]],[[12704,12727],"valid"],[[12728,12730],"valid"],[[12731,12735],"disallowed"],[[12736,12751],"valid",[],"NV8"],[[12752,12771],"valid",[],"NV8"],[[12772,12783],"disallowed"],[[12784,12799],"valid"],[[12800,12800],"disallowed_STD3_mapped",[40,4352,41]],[[12801,12801],"disallowed_STD3_mapped",[40,4354,41]],[[12802,12802],"disallowed_STD3_mapped",[40,4355,41]],[[12803,12803],"disallowed_STD3_mapped",[40,4357,41]],[[12804,12804],"disallowed_STD3_mapped",[40,4358,41]],[[12805,12805],"disallowed_STD3_mapped",[40,4359,41]],[[12806,12806],"disallowed_STD3_mapped",[40,4361,41]],[[12807,12807],"disallowed_STD3_mapped",[40,4363,41]],[[12808,12808],"disallowed_STD3_mapped",[40,4364,41]],[[12809,12809],"disallowed_STD3_mapped",[40,4366,41]],[[12810,12810],"disallowed_STD3_mapped",[40,4367,41]],[[12811,12811],"disallowed_STD3_mapped",[40,4368,41]],[[12812,12812],"disallowed_STD3_mapped",[40,4369,41]],[[12813,12813],"disallowed_STD3_mapped",[40,4370,41]],[[12814,12814],"disallowed_STD3_mapped",[40,44032,41]],[[12815,12815],"disallowed_STD3_mapped",[40,45208,41]],[[12816,12816],"disallowed_STD3_mapped",[40,45796,41]],[[12817,12817],"disallowed_STD3_mapped",[40,46972,41]],[[12818,12818],"disallowed_STD3_mapped",[40,47560,41]],[[12819,12819],"disallowed_STD3_mapped",[40,48148,41]],[[12820,12820],"disallowed_STD3_mapped",[40,49324,41]],[[12821,12821],"disallowed_STD3_mapped",[40,50500,41]],[[12822,12822],"disallowed_STD3_mapped",[40,51088,41]],[[12823,12823],"disallowed_STD3_mapped",[40,52264,41]],[[12824,12824],"disallowed_STD3_mapped",[40,52852,41]],[[12825,12825],"disallowed_STD3_mapped",[40,53440,41]],[[12826,12826],"disallowed_STD3_mapped",[40,54028,41]],[[12827,12827],"disallowed_STD3_mapped",[40,54616,41]],[[12828,12828],"disallowed_STD3_mapped",[40,51452,41]],[[12829,12829],"disallowed_STD3_mapped",[40,50724,51204,41]],[[12830,12830],"disallowed_STD3_mapped",[40,50724,54980,41]],[[12831,12831],"disallowed"],[[12832,12832],"disallowed_STD3_mapped",[40,19968,41]],[[12833,12833],"disallowed_STD3_mapped",[40,20108,41]],[[12834,12834],"disallowed_STD3_mapped",[40,19977,41]],[[12835,12835],"disallowed_STD3_mapped",[40,22235,41]],[[12836,12836],"disallowed_STD3_mapped",[40,20116,41]],[[12837,12837],"disallowed_STD3_mapped",[40,20845,41]],[[12838,12838],"disallowed_STD3_mapped",[40,19971,41]],[[12839,12839],"disallowed_STD3_mapped",[40,20843,41]],[[12840,12840],"disallowed_STD3_mapped",[40,20061,41]],[[12841,12841],"disallowed_STD3_mapped",[40,21313,41]],[[12842,12842],"disallowed_STD3_mapped",[40,26376,41]],[[12843,12843],"disallowed_STD3_mapped",[40,28779,41]],[[12844,12844],"disallowed_STD3_mapped",[40,27700,41]],[[12845,12845],"disallowed_STD3_mapped",[40,26408,41]],[[12846,12846],"disallowed_STD3_mapped",[40,37329,41]],[[12847,12847],"disallowed_STD3_mapped",[40,22303,41]],[[12848,12848],"disallowed_STD3_mapped",[40,26085,41]],[[12849,12849],"disallowed_STD3_mapped",[40,26666,41]],[[12850,12850],"disallowed_STD3_mapped",[40,26377,41]],[[12851,12851],"disallowed_STD3_mapped",[40,31038,41]],[[12852,12852],"disallowed_STD3_mapped",[40,21517,41]],[[12853,12853],"disallowed_STD3_mapped",[40,29305,41]],[[12854,12854],"disallowed_STD3_mapped",[40,36001,41]],[[12855,12855],"disallowed_STD3_mapped",[40,31069,41]],[[12856,12856],"disallowed_STD3_mapped",[40,21172,41]],[[12857,12857],"disallowed_STD3_mapped",[40,20195,41]],[[12858,12858],"disallowed_STD3_mapped",[40,21628,41]],[[12859,12859],"disallowed_STD3_mapped",[40,23398,41]],[[12860,12860],"disallowed_STD3_mapped",[40,30435,41]],[[12861,12861],"disallowed_STD3_mapped",[40,20225,41]],[[12862,12862],"disallowed_STD3_mapped",[40,36039,41]],[[12863,12863],"disallowed_STD3_mapped",[40,21332,41]],[[12864,12864],"disallowed_STD3_mapped",[40,31085,41]],[[12865,12865],"disallowed_STD3_mapped",[40,20241,41]],[[12866,12866],"disallowed_STD3_mapped",[40,33258,41]],[[12867,12867],"disallowed_STD3_mapped",[40,33267,41]],[[12868,12868],"mapped",[21839]],[[12869,12869],"mapped",[24188]],[[12870,12870],"mapped",[25991]],[[12871,12871],"mapped",[31631]],[[12872,12879],"valid",[],"NV8"],[[12880,12880],"mapped",[112,116,101]],[[12881,12881],"mapped",[50,49]],[[12882,12882],"mapped",[50,50]],[[12883,12883],"mapped",[50,51]],[[12884,12884],"mapped",[50,52]],[[12885,12885],"mapped",[50,53]],[[12886,12886],"mapped",[50,54]],[[12887,12887],"mapped",[50,55]],[[12888,12888],"mapped",[50,56]],[[12889,12889],"mapped",[50,57]],[[12890,12890],"mapped",[51,48]],[[12891,12891],"mapped",[51,49]],[[12892,12892],"mapped",[51,50]],[[12893,12893],"mapped",[51,51]],[[12894,12894],"mapped",[51,52]],[[12895,12895],"mapped",[51,53]],[[12896,12896],"mapped",[4352]],[[12897,12897],"mapped",[4354]],[[12898,12898],"mapped",[4355]],[[12899,12899],"mapped",[4357]],[[12900,12900],"mapped",[4358]],[[12901,12901],"mapped",[4359]],[[12902,12902],"mapped",[4361]],[[12903,12903],"mapped",[4363]],[[12904,12904],"mapped",[4364]],[[12905,12905],"mapped",[4366]],[[12906,12906],"mapped",[4367]],[[12907,12907],"mapped",[4368]],[[12908,12908],"mapped",[4369]],[[12909,12909],"mapped",[4370]],[[12910,12910],"mapped",[44032]],[[12911,12911],"mapped",[45208]],[[12912,12912],"mapped",[45796]],[[12913,12913],"mapped",[46972]],[[12914,12914],"mapped",[47560]],[[12915,12915],"mapped",[48148]],[[12916,12916],"mapped",[49324]],[[12917,12917],"mapped",[50500]],[[12918,12918],"mapped",[51088]],[[12919,12919],"mapped",[52264]],[[12920,12920],"mapped",[52852]],[[12921,12921],"mapped",[53440]],[[12922,12922],"mapped",[54028]],[[12923,12923],"mapped",[54616]],[[12924,12924],"mapped",[52280,44256]],[[12925,12925],"mapped",[51452,51032]],[[12926,12926],"mapped",[50864]],[[12927,12927],"valid",[],"NV8"],[[12928,12928],"mapped",[19968]],[[12929,12929],"mapped",[20108]],[[12930,12930],"mapped",[19977]],[[12931,12931],"mapped",[22235]],[[12932,12932],"mapped",[20116]],[[12933,12933],"mapped",[20845]],[[12934,12934],"mapped",[19971]],[[12935,12935],"mapped",[20843]],[[12936,12936],"mapped",[20061]],[[12937,12937],"mapped",[21313]],[[12938,12938],"mapped",[26376]],[[12939,12939],"mapped",[28779]],[[12940,12940],"mapped",[27700]],[[12941,12941],"mapped",[26408]],[[12942,12942],"mapped",[37329]],[[12943,12943],"mapped",[22303]],[[12944,12944],"mapped",[26085]],[[12945,12945],"mapped",[26666]],[[12946,12946],"mapped",[26377]],[[12947,12947],"mapped",[31038]],[[12948,12948],"mapped",[21517]],[[12949,12949],"mapped",[29305]],[[12950,12950],"mapped",[36001]],[[12951,12951],"mapped",[31069]],[[12952,12952],"mapped",[21172]],[[12953,12953],"mapped",[31192]],[[12954,12954],"mapped",[30007]],[[12955,12955],"mapped",[22899]],[[12956,12956],"mapped",[36969]],[[12957,12957],"mapped",[20778]],[[12958,12958],"mapped",[21360]],[[12959,12959],"mapped",[27880]],[[12960,12960],"mapped",[38917]],[[12961,12961],"mapped",[20241]],[[12962,12962],"mapped",[20889]],[[12963,12963],"mapped",[27491]],[[12964,12964],"mapped",[19978]],[[12965,12965],"mapped",[20013]],[[12966,12966],"mapped",[19979]],[[12967,12967],"mapped",[24038]],[[12968,12968],"mapped",[21491]],[[12969,12969],"mapped",[21307]],[[12970,12970],"mapped",[23447]],[[12971,12971],"mapped",[23398]],[[12972,12972],"mapped",[30435]],[[12973,12973],"mapped",[20225]],[[12974,12974],"mapped",[36039]],[[12975,12975],"mapped",[21332]],[[12976,12976],"mapped",[22812]],[[12977,12977],"mapped",[51,54]],[[12978,12978],"mapped",[51,55]],[[12979,12979],"mapped",[51,56]],[[12980,12980],"mapped",[51,57]],[[12981,12981],"mapped",[52,48]],[[12982,12982],"mapped",[52,49]],[[12983,12983],"mapped",[52,50]],[[12984,12984],"mapped",[52,51]],[[12985,12985],"mapped",[52,52]],[[12986,12986],"mapped",[52,53]],[[12987,12987],"mapped",[52,54]],[[12988,12988],"mapped",[52,55]],[[12989,12989],"mapped",[52,56]],[[12990,12990],"mapped",[52,57]],[[12991,12991],"mapped",[53,48]],[[12992,12992],"mapped",[49,26376]],[[12993,12993],"mapped",[50,26376]],[[12994,12994],"mapped",[51,26376]],[[12995,12995],"mapped",[52,26376]],[[12996,12996],"mapped",[53,26376]],[[12997,12997],"mapped",[54,26376]],[[12998,12998],"mapped",[55,26376]],[[12999,12999],"mapped",[56,26376]],[[13e3,13e3],"mapped",[57,26376]],[[13001,13001],"mapped",[49,48,26376]],[[13002,13002],"mapped",[49,49,26376]],[[13003,13003],"mapped",[49,50,26376]],[[13004,13004],"mapped",[104,103]],[[13005,13005],"mapped",[101,114,103]],[[13006,13006],"mapped",[101,118]],[[13007,13007],"mapped",[108,116,100]],[[13008,13008],"mapped",[12450]],[[13009,13009],"mapped",[12452]],[[13010,13010],"mapped",[12454]],[[13011,13011],"mapped",[12456]],[[13012,13012],"mapped",[12458]],[[13013,13013],"mapped",[12459]],[[13014,13014],"mapped",[12461]],[[13015,13015],"mapped",[12463]],[[13016,13016],"mapped",[12465]],[[13017,13017],"mapped",[12467]],[[13018,13018],"mapped",[12469]],[[13019,13019],"mapped",[12471]],[[13020,13020],"mapped",[12473]],[[13021,13021],"mapped",[12475]],[[13022,13022],"mapped",[12477]],[[13023,13023],"mapped",[12479]],[[13024,13024],"mapped",[12481]],[[13025,13025],"mapped",[12484]],[[13026,13026],"mapped",[12486]],[[13027,13027],"mapped",[12488]],[[13028,13028],"mapped",[12490]],[[13029,13029],"mapped",[12491]],[[13030,13030],"mapped",[12492]],[[13031,13031],"mapped",[12493]],[[13032,13032],"mapped",[12494]],[[13033,13033],"mapped",[12495]],[[13034,13034],"mapped",[12498]],[[13035,13035],"mapped",[12501]],[[13036,13036],"mapped",[12504]],[[13037,13037],"mapped",[12507]],[[13038,13038],"mapped",[12510]],[[13039,13039],"mapped",[12511]],[[13040,13040],"mapped",[12512]],[[13041,13041],"mapped",[12513]],[[13042,13042],"mapped",[12514]],[[13043,13043],"mapped",[12516]],[[13044,13044],"mapped",[12518]],[[13045,13045],"mapped",[12520]],[[13046,13046],"mapped",[12521]],[[13047,13047],"mapped",[12522]],[[13048,13048],"mapped",[12523]],[[13049,13049],"mapped",[12524]],[[13050,13050],"mapped",[12525]],[[13051,13051],"mapped",[12527]],[[13052,13052],"mapped",[12528]],[[13053,13053],"mapped",[12529]],[[13054,13054],"mapped",[12530]],[[13055,13055],"disallowed"],[[13056,13056],"mapped",[12450,12497,12540,12488]],[[13057,13057],"mapped",[12450,12523,12501,12449]],[[13058,13058],"mapped",[12450,12531,12506,12450]],[[13059,13059],"mapped",[12450,12540,12523]],[[13060,13060],"mapped",[12452,12491,12531,12464]],[[13061,13061],"mapped",[12452,12531,12481]],[[13062,13062],"mapped",[12454,12457,12531]],[[13063,13063],"mapped",[12456,12473,12463,12540,12489]],[[13064,13064],"mapped",[12456,12540,12459,12540]],[[13065,13065],"mapped",[12458,12531,12473]],[[13066,13066],"mapped",[12458,12540,12512]],[[13067,13067],"mapped",[12459,12452,12522]],[[13068,13068],"mapped",[12459,12521,12483,12488]],[[13069,13069],"mapped",[12459,12525,12522,12540]],[[13070,13070],"mapped",[12460,12525,12531]],[[13071,13071],"mapped",[12460,12531,12510]],[[13072,13072],"mapped",[12462,12460]],[[13073,13073],"mapped",[12462,12491,12540]],[[13074,13074],"mapped",[12461,12517,12522,12540]],[[13075,13075],"mapped",[12462,12523,12480,12540]],[[13076,13076],"mapped",[12461,12525]],[[13077,13077],"mapped",[12461,12525,12464,12521,12512]],[[13078,13078],"mapped",[12461,12525,12513,12540,12488,12523]],[[13079,13079],"mapped",[12461,12525,12527,12483,12488]],[[13080,13080],"mapped",[12464,12521,12512]],[[13081,13081],"mapped",[12464,12521,12512,12488,12531]],[[13082,13082],"mapped",[12463,12523,12476,12452,12525]],[[13083,13083],"mapped",[12463,12525,12540,12493]],[[13084,13084],"mapped",[12465,12540,12473]],[[13085,13085],"mapped",[12467,12523,12490]],[[13086,13086],"mapped",[12467,12540,12509]],[[13087,13087],"mapped",[12469,12452,12463,12523]],[[13088,13088],"mapped",[12469,12531,12481,12540,12512]],[[13089,13089],"mapped",[12471,12522,12531,12464]],[[13090,13090],"mapped",[12475,12531,12481]],[[13091,13091],"mapped",[12475,12531,12488]],[[13092,13092],"mapped",[12480,12540,12473]],[[13093,13093],"mapped",[12487,12471]],[[13094,13094],"mapped",[12489,12523]],[[13095,13095],"mapped",[12488,12531]],[[13096,13096],"mapped",[12490,12494]],[[13097,13097],"mapped",[12494,12483,12488]],[[13098,13098],"mapped",[12495,12452,12484]],[[13099,13099],"mapped",[12497,12540,12475,12531,12488]],[[13100,13100],"mapped",[12497,12540,12484]],[[13101,13101],"mapped",[12496,12540,12524,12523]],[[13102,13102],"mapped",[12500,12450,12473,12488,12523]],[[13103,13103],"mapped",[12500,12463,12523]],[[13104,13104],"mapped",[12500,12467]],[[13105,13105],"mapped",[12499,12523]],[[13106,13106],"mapped",[12501,12449,12521,12483,12489]],[[13107,13107],"mapped",[12501,12451,12540,12488]],[[13108,13108],"mapped",[12502,12483,12471,12455,12523]],[[13109,13109],"mapped",[12501,12521,12531]],[[13110,13110],"mapped",[12504,12463,12479,12540,12523]],[[13111,13111],"mapped",[12506,12477]],[[13112,13112],"mapped",[12506,12491,12498]],[[13113,13113],"mapped",[12504,12523,12484]],[[13114,13114],"mapped",[12506,12531,12473]],[[13115,13115],"mapped",[12506,12540,12472]],[[13116,13116],"mapped",[12505,12540,12479]],[[13117,13117],"mapped",[12509,12452,12531,12488]],[[13118,13118],"mapped",[12508,12523,12488]],[[13119,13119],"mapped",[12507,12531]],[[13120,13120],"mapped",[12509,12531,12489]],[[13121,13121],"mapped",[12507,12540,12523]],[[13122,13122],"mapped",[12507,12540,12531]],[[13123,13123],"mapped",[12510,12452,12463,12525]],[[13124,13124],"mapped",[12510,12452,12523]],[[13125,13125],"mapped",[12510,12483,12495]],[[13126,13126],"mapped",[12510,12523,12463]],[[13127,13127],"mapped",[12510,12531,12471,12519,12531]],[[13128,13128],"mapped",[12511,12463,12525,12531]],[[13129,13129],"mapped",[12511,12522]],[[13130,13130],"mapped",[12511,12522,12496,12540,12523]],[[13131,13131],"mapped",[12513,12460]],[[13132,13132],"mapped",[12513,12460,12488,12531]],[[13133,13133],"mapped",[12513,12540,12488,12523]],[[13134,13134],"mapped",[12516,12540,12489]],[[13135,13135],"mapped",[12516,12540,12523]],[[13136,13136],"mapped",[12518,12450,12531]],[[13137,13137],"mapped",[12522,12483,12488,12523]],[[13138,13138],"mapped",[12522,12521]],[[13139,13139],"mapped",[12523,12500,12540]],[[13140,13140],"mapped",[12523,12540,12502,12523]],[[13141,13141],"mapped",[12524,12512]],[[13142,13142],"mapped",[12524,12531,12488,12466,12531]],[[13143,13143],"mapped",[12527,12483,12488]],[[13144,13144],"mapped",[48,28857]],[[13145,13145],"mapped",[49,28857]],[[13146,13146],"mapped",[50,28857]],[[13147,13147],"mapped",[51,28857]],[[13148,13148],"mapped",[52,28857]],[[13149,13149],"mapped",[53,28857]],[[13150,13150],"mapped",[54,28857]],[[13151,13151],"mapped",[55,28857]],[[13152,13152],"mapped",[56,28857]],[[13153,13153],"mapped",[57,28857]],[[13154,13154],"mapped",[49,48,28857]],[[13155,13155],"mapped",[49,49,28857]],[[13156,13156],"mapped",[49,50,28857]],[[13157,13157],"mapped",[49,51,28857]],[[13158,13158],"mapped",[49,52,28857]],[[13159,13159],"mapped",[49,53,28857]],[[13160,13160],"mapped",[49,54,28857]],[[13161,13161],"mapped",[49,55,28857]],[[13162,13162],"mapped",[49,56,28857]],[[13163,13163],"mapped",[49,57,28857]],[[13164,13164],"mapped",[50,48,28857]],[[13165,13165],"mapped",[50,49,28857]],[[13166,13166],"mapped",[50,50,28857]],[[13167,13167],"mapped",[50,51,28857]],[[13168,13168],"mapped",[50,52,28857]],[[13169,13169],"mapped",[104,112,97]],[[13170,13170],"mapped",[100,97]],[[13171,13171],"mapped",[97,117]],[[13172,13172],"mapped",[98,97,114]],[[13173,13173],"mapped",[111,118]],[[13174,13174],"mapped",[112,99]],[[13175,13175],"mapped",[100,109]],[[13176,13176],"mapped",[100,109,50]],[[13177,13177],"mapped",[100,109,51]],[[13178,13178],"mapped",[105,117]],[[13179,13179],"mapped",[24179,25104]],[[13180,13180],"mapped",[26157,21644]],[[13181,13181],"mapped",[22823,27491]],[[13182,13182],"mapped",[26126,27835]],[[13183,13183],"mapped",[26666,24335,20250,31038]],[[13184,13184],"mapped",[112,97]],[[13185,13185],"mapped",[110,97]],[[13186,13186],"mapped",[956,97]],[[13187,13187],"mapped",[109,97]],[[13188,13188],"mapped",[107,97]],[[13189,13189],"mapped",[107,98]],[[13190,13190],"mapped",[109,98]],[[13191,13191],"mapped",[103,98]],[[13192,13192],"mapped",[99,97,108]],[[13193,13193],"mapped",[107,99,97,108]],[[13194,13194],"mapped",[112,102]],[[13195,13195],"mapped",[110,102]],[[13196,13196],"mapped",[956,102]],[[13197,13197],"mapped",[956,103]],[[13198,13198],"mapped",[109,103]],[[13199,13199],"mapped",[107,103]],[[13200,13200],"mapped",[104,122]],[[13201,13201],"mapped",[107,104,122]],[[13202,13202],"mapped",[109,104,122]],[[13203,13203],"mapped",[103,104,122]],[[13204,13204],"mapped",[116,104,122]],[[13205,13205],"mapped",[956,108]],[[13206,13206],"mapped",[109,108]],[[13207,13207],"mapped",[100,108]],[[13208,13208],"mapped",[107,108]],[[13209,13209],"mapped",[102,109]],[[13210,13210],"mapped",[110,109]],[[13211,13211],"mapped",[956,109]],[[13212,13212],"mapped",[109,109]],[[13213,13213],"mapped",[99,109]],[[13214,13214],"mapped",[107,109]],[[13215,13215],"mapped",[109,109,50]],[[13216,13216],"mapped",[99,109,50]],[[13217,13217],"mapped",[109,50]],[[13218,13218],"mapped",[107,109,50]],[[13219,13219],"mapped",[109,109,51]],[[13220,13220],"mapped",[99,109,51]],[[13221,13221],"mapped",[109,51]],[[13222,13222],"mapped",[107,109,51]],[[13223,13223],"mapped",[109,8725,115]],[[13224,13224],"mapped",[109,8725,115,50]],[[13225,13225],"mapped",[112,97]],[[13226,13226],"mapped",[107,112,97]],[[13227,13227],"mapped",[109,112,97]],[[13228,13228],"mapped",[103,112,97]],[[13229,13229],"mapped",[114,97,100]],[[13230,13230],"mapped",[114,97,100,8725,115]],[[13231,13231],"mapped",[114,97,100,8725,115,50]],[[13232,13232],"mapped",[112,115]],[[13233,13233],"mapped",[110,115]],[[13234,13234],"mapped",[956,115]],[[13235,13235],"mapped",[109,115]],[[13236,13236],"mapped",[112,118]],[[13237,13237],"mapped",[110,118]],[[13238,13238],"mapped",[956,118]],[[13239,13239],"mapped",[109,118]],[[13240,13240],"mapped",[107,118]],[[13241,13241],"mapped",[109,118]],[[13242,13242],"mapped",[112,119]],[[13243,13243],"mapped",[110,119]],[[13244,13244],"mapped",[956,119]],[[13245,13245],"mapped",[109,119]],[[13246,13246],"mapped",[107,119]],[[13247,13247],"mapped",[109,119]],[[13248,13248],"mapped",[107,969]],[[13249,13249],"mapped",[109,969]],[[13250,13250],"disallowed"],[[13251,13251],"mapped",[98,113]],[[13252,13252],"mapped",[99,99]],[[13253,13253],"mapped",[99,100]],[[13254,13254],"mapped",[99,8725,107,103]],[[13255,13255],"disallowed"],[[13256,13256],"mapped",[100,98]],[[13257,13257],"mapped",[103,121]],[[13258,13258],"mapped",[104,97]],[[13259,13259],"mapped",[104,112]],[[13260,13260],"mapped",[105,110]],[[13261,13261],"mapped",[107,107]],[[13262,13262],"mapped",[107,109]],[[13263,13263],"mapped",[107,116]],[[13264,13264],"mapped",[108,109]],[[13265,13265],"mapped",[108,110]],[[13266,13266],"mapped",[108,111,103]],[[13267,13267],"mapped",[108,120]],[[13268,13268],"mapped",[109,98]],[[13269,13269],"mapped",[109,105,108]],[[13270,13270],"mapped",[109,111,108]],[[13271,13271],"mapped",[112,104]],[[13272,13272],"disallowed"],[[13273,13273],"mapped",[112,112,109]],[[13274,13274],"mapped",[112,114]],[[13275,13275],"mapped",[115,114]],[[13276,13276],"mapped",[115,118]],[[13277,13277],"mapped",[119,98]],[[13278,13278],"mapped",[118,8725,109]],[[13279,13279],"mapped",[97,8725,109]],[[13280,13280],"mapped",[49,26085]],[[13281,13281],"mapped",[50,26085]],[[13282,13282],"mapped",[51,26085]],[[13283,13283],"mapped",[52,26085]],[[13284,13284],"mapped",[53,26085]],[[13285,13285],"mapped",[54,26085]],[[13286,13286],"mapped",[55,26085]],[[13287,13287],"mapped",[56,26085]],[[13288,13288],"mapped",[57,26085]],[[13289,13289],"mapped",[49,48,26085]],[[13290,13290],"mapped",[49,49,26085]],[[13291,13291],"mapped",[49,50,26085]],[[13292,13292],"mapped",[49,51,26085]],[[13293,13293],"mapped",[49,52,26085]],[[13294,13294],"mapped",[49,53,26085]],[[13295,13295],"mapped",[49,54,26085]],[[13296,13296],"mapped",[49,55,26085]],[[13297,13297],"mapped",[49,56,26085]],[[13298,13298],"mapped",[49,57,26085]],[[13299,13299],"mapped",[50,48,26085]],[[13300,13300],"mapped",[50,49,26085]],[[13301,13301],"mapped",[50,50,26085]],[[13302,13302],"mapped",[50,51,26085]],[[13303,13303],"mapped",[50,52,26085]],[[13304,13304],"mapped",[50,53,26085]],[[13305,13305],"mapped",[50,54,26085]],[[13306,13306],"mapped",[50,55,26085]],[[13307,13307],"mapped",[50,56,26085]],[[13308,13308],"mapped",[50,57,26085]],[[13309,13309],"mapped",[51,48,26085]],[[13310,13310],"mapped",[51,49,26085]],[[13311,13311],"mapped",[103,97,108]],[[13312,19893],"valid"],[[19894,19903],"disallowed"],[[19904,19967],"valid",[],"NV8"],[[19968,40869],"valid"],[[40870,40891],"valid"],[[40892,40899],"valid"],[[40900,40907],"valid"],[[40908,40908],"valid"],[[40909,40917],"valid"],[[40918,40959],"disallowed"],[[40960,42124],"valid"],[[42125,42127],"disallowed"],[[42128,42145],"valid",[],"NV8"],[[42146,42147],"valid",[],"NV8"],[[42148,42163],"valid",[],"NV8"],[[42164,42164],"valid",[],"NV8"],[[42165,42176],"valid",[],"NV8"],[[42177,42177],"valid",[],"NV8"],[[42178,42180],"valid",[],"NV8"],[[42181,42181],"valid",[],"NV8"],[[42182,42182],"valid",[],"NV8"],[[42183,42191],"disallowed"],[[42192,42237],"valid"],[[42238,42239],"valid",[],"NV8"],[[42240,42508],"valid"],[[42509,42511],"valid",[],"NV8"],[[42512,42539],"valid"],[[42540,42559],"disallowed"],[[42560,42560],"mapped",[42561]],[[42561,42561],"valid"],[[42562,42562],"mapped",[42563]],[[42563,42563],"valid"],[[42564,42564],"mapped",[42565]],[[42565,42565],"valid"],[[42566,42566],"mapped",[42567]],[[42567,42567],"valid"],[[42568,42568],"mapped",[42569]],[[42569,42569],"valid"],[[42570,42570],"mapped",[42571]],[[42571,42571],"valid"],[[42572,42572],"mapped",[42573]],[[42573,42573],"valid"],[[42574,42574],"mapped",[42575]],[[42575,42575],"valid"],[[42576,42576],"mapped",[42577]],[[42577,42577],"valid"],[[42578,42578],"mapped",[42579]],[[42579,42579],"valid"],[[42580,42580],"mapped",[42581]],[[42581,42581],"valid"],[[42582,42582],"mapped",[42583]],[[42583,42583],"valid"],[[42584,42584],"mapped",[42585]],[[42585,42585],"valid"],[[42586,42586],"mapped",[42587]],[[42587,42587],"valid"],[[42588,42588],"mapped",[42589]],[[42589,42589],"valid"],[[42590,42590],"mapped",[42591]],[[42591,42591],"valid"],[[42592,42592],"mapped",[42593]],[[42593,42593],"valid"],[[42594,42594],"mapped",[42595]],[[42595,42595],"valid"],[[42596,42596],"mapped",[42597]],[[42597,42597],"valid"],[[42598,42598],"mapped",[42599]],[[42599,42599],"valid"],[[42600,42600],"mapped",[42601]],[[42601,42601],"valid"],[[42602,42602],"mapped",[42603]],[[42603,42603],"valid"],[[42604,42604],"mapped",[42605]],[[42605,42607],"valid"],[[42608,42611],"valid",[],"NV8"],[[42612,42619],"valid"],[[42620,42621],"valid"],[[42622,42622],"valid",[],"NV8"],[[42623,42623],"valid"],[[42624,42624],"mapped",[42625]],[[42625,42625],"valid"],[[42626,42626],"mapped",[42627]],[[42627,42627],"valid"],[[42628,42628],"mapped",[42629]],[[42629,42629],"valid"],[[42630,42630],"mapped",[42631]],[[42631,42631],"valid"],[[42632,42632],"mapped",[42633]],[[42633,42633],"valid"],[[42634,42634],"mapped",[42635]],[[42635,42635],"valid"],[[42636,42636],"mapped",[42637]],[[42637,42637],"valid"],[[42638,42638],"mapped",[42639]],[[42639,42639],"valid"],[[42640,42640],"mapped",[42641]],[[42641,42641],"valid"],[[42642,42642],"mapped",[42643]],[[42643,42643],"valid"],[[42644,42644],"mapped",[42645]],[[42645,42645],"valid"],[[42646,42646],"mapped",[42647]],[[42647,42647],"valid"],[[42648,42648],"mapped",[42649]],[[42649,42649],"valid"],[[42650,42650],"mapped",[42651]],[[42651,42651],"valid"],[[42652,42652],"mapped",[1098]],[[42653,42653],"mapped",[1100]],[[42654,42654],"valid"],[[42655,42655],"valid"],[[42656,42725],"valid"],[[42726,42735],"valid",[],"NV8"],[[42736,42737],"valid"],[[42738,42743],"valid",[],"NV8"],[[42744,42751],"disallowed"],[[42752,42774],"valid",[],"NV8"],[[42775,42778],"valid"],[[42779,42783],"valid"],[[42784,42785],"valid",[],"NV8"],[[42786,42786],"mapped",[42787]],[[42787,42787],"valid"],[[42788,42788],"mapped",[42789]],[[42789,42789],"valid"],[[42790,42790],"mapped",[42791]],[[42791,42791],"valid"],[[42792,42792],"mapped",[42793]],[[42793,42793],"valid"],[[42794,42794],"mapped",[42795]],[[42795,42795],"valid"],[[42796,42796],"mapped",[42797]],[[42797,42797],"valid"],[[42798,42798],"mapped",[42799]],[[42799,42801],"valid"],[[42802,42802],"mapped",[42803]],[[42803,42803],"valid"],[[42804,42804],"mapped",[42805]],[[42805,42805],"valid"],[[42806,42806],"mapped",[42807]],[[42807,42807],"valid"],[[42808,42808],"mapped",[42809]],[[42809,42809],"valid"],[[42810,42810],"mapped",[42811]],[[42811,42811],"valid"],[[42812,42812],"mapped",[42813]],[[42813,42813],"valid"],[[42814,42814],"mapped",[42815]],[[42815,42815],"valid"],[[42816,42816],"mapped",[42817]],[[42817,42817],"valid"],[[42818,42818],"mapped",[42819]],[[42819,42819],"valid"],[[42820,42820],"mapped",[42821]],[[42821,42821],"valid"],[[42822,42822],"mapped",[42823]],[[42823,42823],"valid"],[[42824,42824],"mapped",[42825]],[[42825,42825],"valid"],[[42826,42826],"mapped",[42827]],[[42827,42827],"valid"],[[42828,42828],"mapped",[42829]],[[42829,42829],"valid"],[[42830,42830],"mapped",[42831]],[[42831,42831],"valid"],[[42832,42832],"mapped",[42833]],[[42833,42833],"valid"],[[42834,42834],"mapped",[42835]],[[42835,42835],"valid"],[[42836,42836],"mapped",[42837]],[[42837,42837],"valid"],[[42838,42838],"mapped",[42839]],[[42839,42839],"valid"],[[42840,42840],"mapped",[42841]],[[42841,42841],"valid"],[[42842,42842],"mapped",[42843]],[[42843,42843],"valid"],[[42844,42844],"mapped",[42845]],[[42845,42845],"valid"],[[42846,42846],"mapped",[42847]],[[42847,42847],"valid"],[[42848,42848],"mapped",[42849]],[[42849,42849],"valid"],[[42850,42850],"mapped",[42851]],[[42851,42851],"valid"],[[42852,42852],"mapped",[42853]],[[42853,42853],"valid"],[[42854,42854],"mapped",[42855]],[[42855,42855],"valid"],[[42856,42856],"mapped",[42857]],[[42857,42857],"valid"],[[42858,42858],"mapped",[42859]],[[42859,42859],"valid"],[[42860,42860],"mapped",[42861]],[[42861,42861],"valid"],[[42862,42862],"mapped",[42863]],[[42863,42863],"valid"],[[42864,42864],"mapped",[42863]],[[42865,42872],"valid"],[[42873,42873],"mapped",[42874]],[[42874,42874],"valid"],[[42875,42875],"mapped",[42876]],[[42876,42876],"valid"],[[42877,42877],"mapped",[7545]],[[42878,42878],"mapped",[42879]],[[42879,42879],"valid"],[[42880,42880],"mapped",[42881]],[[42881,42881],"valid"],[[42882,42882],"mapped",[42883]],[[42883,42883],"valid"],[[42884,42884],"mapped",[42885]],[[42885,42885],"valid"],[[42886,42886],"mapped",[42887]],[[42887,42888],"valid"],[[42889,42890],"valid",[],"NV8"],[[42891,42891],"mapped",[42892]],[[42892,42892],"valid"],[[42893,42893],"mapped",[613]],[[42894,42894],"valid"],[[42895,42895],"valid"],[[42896,42896],"mapped",[42897]],[[42897,42897],"valid"],[[42898,42898],"mapped",[42899]],[[42899,42899],"valid"],[[42900,42901],"valid"],[[42902,42902],"mapped",[42903]],[[42903,42903],"valid"],[[42904,42904],"mapped",[42905]],[[42905,42905],"valid"],[[42906,42906],"mapped",[42907]],[[42907,42907],"valid"],[[42908,42908],"mapped",[42909]],[[42909,42909],"valid"],[[42910,42910],"mapped",[42911]],[[42911,42911],"valid"],[[42912,42912],"mapped",[42913]],[[42913,42913],"valid"],[[42914,42914],"mapped",[42915]],[[42915,42915],"valid"],[[42916,42916],"mapped",[42917]],[[42917,42917],"valid"],[[42918,42918],"mapped",[42919]],[[42919,42919],"valid"],[[42920,42920],"mapped",[42921]],[[42921,42921],"valid"],[[42922,42922],"mapped",[614]],[[42923,42923],"mapped",[604]],[[42924,42924],"mapped",[609]],[[42925,42925],"mapped",[620]],[[42926,42927],"disallowed"],[[42928,42928],"mapped",[670]],[[42929,42929],"mapped",[647]],[[42930,42930],"mapped",[669]],[[42931,42931],"mapped",[43859]],[[42932,42932],"mapped",[42933]],[[42933,42933],"valid"],[[42934,42934],"mapped",[42935]],[[42935,42935],"valid"],[[42936,42998],"disallowed"],[[42999,42999],"valid"],[[43e3,43e3],"mapped",[295]],[[43001,43001],"mapped",[339]],[[43002,43002],"valid"],[[43003,43007],"valid"],[[43008,43047],"valid"],[[43048,43051],"valid",[],"NV8"],[[43052,43055],"disallowed"],[[43056,43065],"valid",[],"NV8"],[[43066,43071],"disallowed"],[[43072,43123],"valid"],[[43124,43127],"valid",[],"NV8"],[[43128,43135],"disallowed"],[[43136,43204],"valid"],[[43205,43213],"disallowed"],[[43214,43215],"valid",[],"NV8"],[[43216,43225],"valid"],[[43226,43231],"disallowed"],[[43232,43255],"valid"],[[43256,43258],"valid",[],"NV8"],[[43259,43259],"valid"],[[43260,43260],"valid",[],"NV8"],[[43261,43261],"valid"],[[43262,43263],"disallowed"],[[43264,43309],"valid"],[[43310,43311],"valid",[],"NV8"],[[43312,43347],"valid"],[[43348,43358],"disallowed"],[[43359,43359],"valid",[],"NV8"],[[43360,43388],"valid",[],"NV8"],[[43389,43391],"disallowed"],[[43392,43456],"valid"],[[43457,43469],"valid",[],"NV8"],[[43470,43470],"disallowed"],[[43471,43481],"valid"],[[43482,43485],"disallowed"],[[43486,43487],"valid",[],"NV8"],[[43488,43518],"valid"],[[43519,43519],"disallowed"],[[43520,43574],"valid"],[[43575,43583],"disallowed"],[[43584,43597],"valid"],[[43598,43599],"disallowed"],[[43600,43609],"valid"],[[43610,43611],"disallowed"],[[43612,43615],"valid",[],"NV8"],[[43616,43638],"valid"],[[43639,43641],"valid",[],"NV8"],[[43642,43643],"valid"],[[43644,43647],"valid"],[[43648,43714],"valid"],[[43715,43738],"disallowed"],[[43739,43741],"valid"],[[43742,43743],"valid",[],"NV8"],[[43744,43759],"valid"],[[43760,43761],"valid",[],"NV8"],[[43762,43766],"valid"],[[43767,43776],"disallowed"],[[43777,43782],"valid"],[[43783,43784],"disallowed"],[[43785,43790],"valid"],[[43791,43792],"disallowed"],[[43793,43798],"valid"],[[43799,43807],"disallowed"],[[43808,43814],"valid"],[[43815,43815],"disallowed"],[[43816,43822],"valid"],[[43823,43823],"disallowed"],[[43824,43866],"valid"],[[43867,43867],"valid",[],"NV8"],[[43868,43868],"mapped",[42791]],[[43869,43869],"mapped",[43831]],[[43870,43870],"mapped",[619]],[[43871,43871],"mapped",[43858]],[[43872,43875],"valid"],[[43876,43877],"valid"],[[43878,43887],"disallowed"],[[43888,43888],"mapped",[5024]],[[43889,43889],"mapped",[5025]],[[43890,43890],"mapped",[5026]],[[43891,43891],"mapped",[5027]],[[43892,43892],"mapped",[5028]],[[43893,43893],"mapped",[5029]],[[43894,43894],"mapped",[5030]],[[43895,43895],"mapped",[5031]],[[43896,43896],"mapped",[5032]],[[43897,43897],"mapped",[5033]],[[43898,43898],"mapped",[5034]],[[43899,43899],"mapped",[5035]],[[43900,43900],"mapped",[5036]],[[43901,43901],"mapped",[5037]],[[43902,43902],"mapped",[5038]],[[43903,43903],"mapped",[5039]],[[43904,43904],"mapped",[5040]],[[43905,43905],"mapped",[5041]],[[43906,43906],"mapped",[5042]],[[43907,43907],"mapped",[5043]],[[43908,43908],"mapped",[5044]],[[43909,43909],"mapped",[5045]],[[43910,43910],"mapped",[5046]],[[43911,43911],"mapped",[5047]],[[43912,43912],"mapped",[5048]],[[43913,43913],"mapped",[5049]],[[43914,43914],"mapped",[5050]],[[43915,43915],"mapped",[5051]],[[43916,43916],"mapped",[5052]],[[43917,43917],"mapped",[5053]],[[43918,43918],"mapped",[5054]],[[43919,43919],"mapped",[5055]],[[43920,43920],"mapped",[5056]],[[43921,43921],"mapped",[5057]],[[43922,43922],"mapped",[5058]],[[43923,43923],"mapped",[5059]],[[43924,43924],"mapped",[5060]],[[43925,43925],"mapped",[5061]],[[43926,43926],"mapped",[5062]],[[43927,43927],"mapped",[5063]],[[43928,43928],"mapped",[5064]],[[43929,43929],"mapped",[5065]],[[43930,43930],"mapped",[5066]],[[43931,43931],"mapped",[5067]],[[43932,43932],"mapped",[5068]],[[43933,43933],"mapped",[5069]],[[43934,43934],"mapped",[5070]],[[43935,43935],"mapped",[5071]],[[43936,43936],"mapped",[5072]],[[43937,43937],"mapped",[5073]],[[43938,43938],"mapped",[5074]],[[43939,43939],"mapped",[5075]],[[43940,43940],"mapped",[5076]],[[43941,43941],"mapped",[5077]],[[43942,43942],"mapped",[5078]],[[43943,43943],"mapped",[5079]],[[43944,43944],"mapped",[5080]],[[43945,43945],"mapped",[5081]],[[43946,43946],"mapped",[5082]],[[43947,43947],"mapped",[5083]],[[43948,43948],"mapped",[5084]],[[43949,43949],"mapped",[5085]],[[43950,43950],"mapped",[5086]],[[43951,43951],"mapped",[5087]],[[43952,43952],"mapped",[5088]],[[43953,43953],"mapped",[5089]],[[43954,43954],"mapped",[5090]],[[43955,43955],"mapped",[5091]],[[43956,43956],"mapped",[5092]],[[43957,43957],"mapped",[5093]],[[43958,43958],"mapped",[5094]],[[43959,43959],"mapped",[5095]],[[43960,43960],"mapped",[5096]],[[43961,43961],"mapped",[5097]],[[43962,43962],"mapped",[5098]],[[43963,43963],"mapped",[5099]],[[43964,43964],"mapped",[5100]],[[43965,43965],"mapped",[5101]],[[43966,43966],"mapped",[5102]],[[43967,43967],"mapped",[5103]],[[43968,44010],"valid"],[[44011,44011],"valid",[],"NV8"],[[44012,44013],"valid"],[[44014,44015],"disallowed"],[[44016,44025],"valid"],[[44026,44031],"disallowed"],[[44032,55203],"valid"],[[55204,55215],"disallowed"],[[55216,55238],"valid",[],"NV8"],[[55239,55242],"disallowed"],[[55243,55291],"valid",[],"NV8"],[[55292,55295],"disallowed"],[[55296,57343],"disallowed"],[[57344,63743],"disallowed"],[[63744,63744],"mapped",[35912]],[[63745,63745],"mapped",[26356]],[[63746,63746],"mapped",[36554]],[[63747,63747],"mapped",[36040]],[[63748,63748],"mapped",[28369]],[[63749,63749],"mapped",[20018]],[[63750,63750],"mapped",[21477]],[[63751,63752],"mapped",[40860]],[[63753,63753],"mapped",[22865]],[[63754,63754],"mapped",[37329]],[[63755,63755],"mapped",[21895]],[[63756,63756],"mapped",[22856]],[[63757,63757],"mapped",[25078]],[[63758,63758],"mapped",[30313]],[[63759,63759],"mapped",[32645]],[[63760,63760],"mapped",[34367]],[[63761,63761],"mapped",[34746]],[[63762,63762],"mapped",[35064]],[[63763,63763],"mapped",[37007]],[[63764,63764],"mapped",[27138]],[[63765,63765],"mapped",[27931]],[[63766,63766],"mapped",[28889]],[[63767,63767],"mapped",[29662]],[[63768,63768],"mapped",[33853]],[[63769,63769],"mapped",[37226]],[[63770,63770],"mapped",[39409]],[[63771,63771],"mapped",[20098]],[[63772,63772],"mapped",[21365]],[[63773,63773],"mapped",[27396]],[[63774,63774],"mapped",[29211]],[[63775,63775],"mapped",[34349]],[[63776,63776],"mapped",[40478]],[[63777,63777],"mapped",[23888]],[[63778,63778],"mapped",[28651]],[[63779,63779],"mapped",[34253]],[[63780,63780],"mapped",[35172]],[[63781,63781],"mapped",[25289]],[[63782,63782],"mapped",[33240]],[[63783,63783],"mapped",[34847]],[[63784,63784],"mapped",[24266]],[[63785,63785],"mapped",[26391]],[[63786,63786],"mapped",[28010]],[[63787,63787],"mapped",[29436]],[[63788,63788],"mapped",[37070]],[[63789,63789],"mapped",[20358]],[[63790,63790],"mapped",[20919]],[[63791,63791],"mapped",[21214]],[[63792,63792],"mapped",[25796]],[[63793,63793],"mapped",[27347]],[[63794,63794],"mapped",[29200]],[[63795,63795],"mapped",[30439]],[[63796,63796],"mapped",[32769]],[[63797,63797],"mapped",[34310]],[[63798,63798],"mapped",[34396]],[[63799,63799],"mapped",[36335]],[[63800,63800],"mapped",[38706]],[[63801,63801],"mapped",[39791]],[[63802,63802],"mapped",[40442]],[[63803,63803],"mapped",[30860]],[[63804,63804],"mapped",[31103]],[[63805,63805],"mapped",[32160]],[[63806,63806],"mapped",[33737]],[[63807,63807],"mapped",[37636]],[[63808,63808],"mapped",[40575]],[[63809,63809],"mapped",[35542]],[[63810,63810],"mapped",[22751]],[[63811,63811],"mapped",[24324]],[[63812,63812],"mapped",[31840]],[[63813,63813],"mapped",[32894]],[[63814,63814],"mapped",[29282]],[[63815,63815],"mapped",[30922]],[[63816,63816],"mapped",[36034]],[[63817,63817],"mapped",[38647]],[[63818,63818],"mapped",[22744]],[[63819,63819],"mapped",[23650]],[[63820,63820],"mapped",[27155]],[[63821,63821],"mapped",[28122]],[[63822,63822],"mapped",[28431]],[[63823,63823],"mapped",[32047]],[[63824,63824],"mapped",[32311]],[[63825,63825],"mapped",[38475]],[[63826,63826],"mapped",[21202]],[[63827,63827],"mapped",[32907]],[[63828,63828],"mapped",[20956]],[[63829,63829],"mapped",[20940]],[[63830,63830],"mapped",[31260]],[[63831,63831],"mapped",[32190]],[[63832,63832],"mapped",[33777]],[[63833,63833],"mapped",[38517]],[[63834,63834],"mapped",[35712]],[[63835,63835],"mapped",[25295]],[[63836,63836],"mapped",[27138]],[[63837,63837],"mapped",[35582]],[[63838,63838],"mapped",[20025]],[[63839,63839],"mapped",[23527]],[[63840,63840],"mapped",[24594]],[[63841,63841],"mapped",[29575]],[[63842,63842],"mapped",[30064]],[[63843,63843],"mapped",[21271]],[[63844,63844],"mapped",[30971]],[[63845,63845],"mapped",[20415]],[[63846,63846],"mapped",[24489]],[[63847,63847],"mapped",[19981]],[[63848,63848],"mapped",[27852]],[[63849,63849],"mapped",[25976]],[[63850,63850],"mapped",[32034]],[[63851,63851],"mapped",[21443]],[[63852,63852],"mapped",[22622]],[[63853,63853],"mapped",[30465]],[[63854,63854],"mapped",[33865]],[[63855,63855],"mapped",[35498]],[[63856,63856],"mapped",[27578]],[[63857,63857],"mapped",[36784]],[[63858,63858],"mapped",[27784]],[[63859,63859],"mapped",[25342]],[[63860,63860],"mapped",[33509]],[[63861,63861],"mapped",[25504]],[[63862,63862],"mapped",[30053]],[[63863,63863],"mapped",[20142]],[[63864,63864],"mapped",[20841]],[[63865,63865],"mapped",[20937]],[[63866,63866],"mapped",[26753]],[[63867,63867],"mapped",[31975]],[[63868,63868],"mapped",[33391]],[[63869,63869],"mapped",[35538]],[[63870,63870],"mapped",[37327]],[[63871,63871],"mapped",[21237]],[[63872,63872],"mapped",[21570]],[[63873,63873],"mapped",[22899]],[[63874,63874],"mapped",[24300]],[[63875,63875],"mapped",[26053]],[[63876,63876],"mapped",[28670]],[[63877,63877],"mapped",[31018]],[[63878,63878],"mapped",[38317]],[[63879,63879],"mapped",[39530]],[[63880,63880],"mapped",[40599]],[[63881,63881],"mapped",[40654]],[[63882,63882],"mapped",[21147]],[[63883,63883],"mapped",[26310]],[[63884,63884],"mapped",[27511]],[[63885,63885],"mapped",[36706]],[[63886,63886],"mapped",[24180]],[[63887,63887],"mapped",[24976]],[[63888,63888],"mapped",[25088]],[[63889,63889],"mapped",[25754]],[[63890,63890],"mapped",[28451]],[[63891,63891],"mapped",[29001]],[[63892,63892],"mapped",[29833]],[[63893,63893],"mapped",[31178]],[[63894,63894],"mapped",[32244]],[[63895,63895],"mapped",[32879]],[[63896,63896],"mapped",[36646]],[[63897,63897],"mapped",[34030]],[[63898,63898],"mapped",[36899]],[[63899,63899],"mapped",[37706]],[[63900,63900],"mapped",[21015]],[[63901,63901],"mapped",[21155]],[[63902,63902],"mapped",[21693]],[[63903,63903],"mapped",[28872]],[[63904,63904],"mapped",[35010]],[[63905,63905],"mapped",[35498]],[[63906,63906],"mapped",[24265]],[[63907,63907],"mapped",[24565]],[[63908,63908],"mapped",[25467]],[[63909,63909],"mapped",[27566]],[[63910,63910],"mapped",[31806]],[[63911,63911],"mapped",[29557]],[[63912,63912],"mapped",[20196]],[[63913,63913],"mapped",[22265]],[[63914,63914],"mapped",[23527]],[[63915,63915],"mapped",[23994]],[[63916,63916],"mapped",[24604]],[[63917,63917],"mapped",[29618]],[[63918,63918],"mapped",[29801]],[[63919,63919],"mapped",[32666]],[[63920,63920],"mapped",[32838]],[[63921,63921],"mapped",[37428]],[[63922,63922],"mapped",[38646]],[[63923,63923],"mapped",[38728]],[[63924,63924],"mapped",[38936]],[[63925,63925],"mapped",[20363]],[[63926,63926],"mapped",[31150]],[[63927,63927],"mapped",[37300]],[[63928,63928],"mapped",[38584]],[[63929,63929],"mapped",[24801]],[[63930,63930],"mapped",[20102]],[[63931,63931],"mapped",[20698]],[[63932,63932],"mapped",[23534]],[[63933,63933],"mapped",[23615]],[[63934,63934],"mapped",[26009]],[[63935,63935],"mapped",[27138]],[[63936,63936],"mapped",[29134]],[[63937,63937],"mapped",[30274]],[[63938,63938],"mapped",[34044]],[[63939,63939],"mapped",[36988]],[[63940,63940],"mapped",[40845]],[[63941,63941],"mapped",[26248]],[[63942,63942],"mapped",[38446]],[[63943,63943],"mapped",[21129]],[[63944,63944],"mapped",[26491]],[[63945,63945],"mapped",[26611]],[[63946,63946],"mapped",[27969]],[[63947,63947],"mapped",[28316]],[[63948,63948],"mapped",[29705]],[[63949,63949],"mapped",[30041]],[[63950,63950],"mapped",[30827]],[[63951,63951],"mapped",[32016]],[[63952,63952],"mapped",[39006]],[[63953,63953],"mapped",[20845]],[[63954,63954],"mapped",[25134]],[[63955,63955],"mapped",[38520]],[[63956,63956],"mapped",[20523]],[[63957,63957],"mapped",[23833]],[[63958,63958],"mapped",[28138]],[[63959,63959],"mapped",[36650]],[[63960,63960],"mapped",[24459]],[[63961,63961],"mapped",[24900]],[[63962,63962],"mapped",[26647]],[[63963,63963],"mapped",[29575]],[[63964,63964],"mapped",[38534]],[[63965,63965],"mapped",[21033]],[[63966,63966],"mapped",[21519]],[[63967,63967],"mapped",[23653]],[[63968,63968],"mapped",[26131]],[[63969,63969],"mapped",[26446]],[[63970,63970],"mapped",[26792]],[[63971,63971],"mapped",[27877]],[[63972,63972],"mapped",[29702]],[[63973,63973],"mapped",[30178]],[[63974,63974],"mapped",[32633]],[[63975,63975],"mapped",[35023]],[[63976,63976],"mapped",[35041]],[[63977,63977],"mapped",[37324]],[[63978,63978],"mapped",[38626]],[[63979,63979],"mapped",[21311]],[[63980,63980],"mapped",[28346]],[[63981,63981],"mapped",[21533]],[[63982,63982],"mapped",[29136]],[[63983,63983],"mapped",[29848]],[[63984,63984],"mapped",[34298]],[[63985,63985],"mapped",[38563]],[[63986,63986],"mapped",[40023]],[[63987,63987],"mapped",[40607]],[[63988,63988],"mapped",[26519]],[[63989,63989],"mapped",[28107]],[[63990,63990],"mapped",[33256]],[[63991,63991],"mapped",[31435]],[[63992,63992],"mapped",[31520]],[[63993,63993],"mapped",[31890]],[[63994,63994],"mapped",[29376]],[[63995,63995],"mapped",[28825]],[[63996,63996],"mapped",[35672]],[[63997,63997],"mapped",[20160]],[[63998,63998],"mapped",[33590]],[[63999,63999],"mapped",[21050]],[[64e3,64e3],"mapped",[20999]],[[64001,64001],"mapped",[24230]],[[64002,64002],"mapped",[25299]],[[64003,64003],"mapped",[31958]],[[64004,64004],"mapped",[23429]],[[64005,64005],"mapped",[27934]],[[64006,64006],"mapped",[26292]],[[64007,64007],"mapped",[36667]],[[64008,64008],"mapped",[34892]],[[64009,64009],"mapped",[38477]],[[64010,64010],"mapped",[35211]],[[64011,64011],"mapped",[24275]],[[64012,64012],"mapped",[20800]],[[64013,64013],"mapped",[21952]],[[64014,64015],"valid"],[[64016,64016],"mapped",[22618]],[[64017,64017],"valid"],[[64018,64018],"mapped",[26228]],[[64019,64020],"valid"],[[64021,64021],"mapped",[20958]],[[64022,64022],"mapped",[29482]],[[64023,64023],"mapped",[30410]],[[64024,64024],"mapped",[31036]],[[64025,64025],"mapped",[31070]],[[64026,64026],"mapped",[31077]],[[64027,64027],"mapped",[31119]],[[64028,64028],"mapped",[38742]],[[64029,64029],"mapped",[31934]],[[64030,64030],"mapped",[32701]],[[64031,64031],"valid"],[[64032,64032],"mapped",[34322]],[[64033,64033],"valid"],[[64034,64034],"mapped",[35576]],[[64035,64036],"valid"],[[64037,64037],"mapped",[36920]],[[64038,64038],"mapped",[37117]],[[64039,64041],"valid"],[[64042,64042],"mapped",[39151]],[[64043,64043],"mapped",[39164]],[[64044,64044],"mapped",[39208]],[[64045,64045],"mapped",[40372]],[[64046,64046],"mapped",[37086]],[[64047,64047],"mapped",[38583]],[[64048,64048],"mapped",[20398]],[[64049,64049],"mapped",[20711]],[[64050,64050],"mapped",[20813]],[[64051,64051],"mapped",[21193]],[[64052,64052],"mapped",[21220]],[[64053,64053],"mapped",[21329]],[[64054,64054],"mapped",[21917]],[[64055,64055],"mapped",[22022]],[[64056,64056],"mapped",[22120]],[[64057,64057],"mapped",[22592]],[[64058,64058],"mapped",[22696]],[[64059,64059],"mapped",[23652]],[[64060,64060],"mapped",[23662]],[[64061,64061],"mapped",[24724]],[[64062,64062],"mapped",[24936]],[[64063,64063],"mapped",[24974]],[[64064,64064],"mapped",[25074]],[[64065,64065],"mapped",[25935]],[[64066,64066],"mapped",[26082]],[[64067,64067],"mapped",[26257]],[[64068,64068],"mapped",[26757]],[[64069,64069],"mapped",[28023]],[[64070,64070],"mapped",[28186]],[[64071,64071],"mapped",[28450]],[[64072,64072],"mapped",[29038]],[[64073,64073],"mapped",[29227]],[[64074,64074],"mapped",[29730]],[[64075,64075],"mapped",[30865]],[[64076,64076],"mapped",[31038]],[[64077,64077],"mapped",[31049]],[[64078,64078],"mapped",[31048]],[[64079,64079],"mapped",[31056]],[[64080,64080],"mapped",[31062]],[[64081,64081],"mapped",[31069]],[[64082,64082],"mapped",[31117]],[[64083,64083],"mapped",[31118]],[[64084,64084],"mapped",[31296]],[[64085,64085],"mapped",[31361]],[[64086,64086],"mapped",[31680]],[[64087,64087],"mapped",[32244]],[[64088,64088],"mapped",[32265]],[[64089,64089],"mapped",[32321]],[[64090,64090],"mapped",[32626]],[[64091,64091],"mapped",[32773]],[[64092,64092],"mapped",[33261]],[[64093,64094],"mapped",[33401]],[[64095,64095],"mapped",[33879]],[[64096,64096],"mapped",[35088]],[[64097,64097],"mapped",[35222]],[[64098,64098],"mapped",[35585]],[[64099,64099],"mapped",[35641]],[[64100,64100],"mapped",[36051]],[[64101,64101],"mapped",[36104]],[[64102,64102],"mapped",[36790]],[[64103,64103],"mapped",[36920]],[[64104,64104],"mapped",[38627]],[[64105,64105],"mapped",[38911]],[[64106,64106],"mapped",[38971]],[[64107,64107],"mapped",[24693]],[[64108,64108],"mapped",[148206]],[[64109,64109],"mapped",[33304]],[[64110,64111],"disallowed"],[[64112,64112],"mapped",[20006]],[[64113,64113],"mapped",[20917]],[[64114,64114],"mapped",[20840]],[[64115,64115],"mapped",[20352]],[[64116,64116],"mapped",[20805]],[[64117,64117],"mapped",[20864]],[[64118,64118],"mapped",[21191]],[[64119,64119],"mapped",[21242]],[[64120,64120],"mapped",[21917]],[[64121,64121],"mapped",[21845]],[[64122,64122],"mapped",[21913]],[[64123,64123],"mapped",[21986]],[[64124,64124],"mapped",[22618]],[[64125,64125],"mapped",[22707]],[[64126,64126],"mapped",[22852]],[[64127,64127],"mapped",[22868]],[[64128,64128],"mapped",[23138]],[[64129,64129],"mapped",[23336]],[[64130,64130],"mapped",[24274]],[[64131,64131],"mapped",[24281]],[[64132,64132],"mapped",[24425]],[[64133,64133],"mapped",[24493]],[[64134,64134],"mapped",[24792]],[[64135,64135],"mapped",[24910]],[[64136,64136],"mapped",[24840]],[[64137,64137],"mapped",[24974]],[[64138,64138],"mapped",[24928]],[[64139,64139],"mapped",[25074]],[[64140,64140],"mapped",[25140]],[[64141,64141],"mapped",[25540]],[[64142,64142],"mapped",[25628]],[[64143,64143],"mapped",[25682]],[[64144,64144],"mapped",[25942]],[[64145,64145],"mapped",[26228]],[[64146,64146],"mapped",[26391]],[[64147,64147],"mapped",[26395]],[[64148,64148],"mapped",[26454]],[[64149,64149],"mapped",[27513]],[[64150,64150],"mapped",[27578]],[[64151,64151],"mapped",[27969]],[[64152,64152],"mapped",[28379]],[[64153,64153],"mapped",[28363]],[[64154,64154],"mapped",[28450]],[[64155,64155],"mapped",[28702]],[[64156,64156],"mapped",[29038]],[[64157,64157],"mapped",[30631]],[[64158,64158],"mapped",[29237]],[[64159,64159],"mapped",[29359]],[[64160,64160],"mapped",[29482]],[[64161,64161],"mapped",[29809]],[[64162,64162],"mapped",[29958]],[[64163,64163],"mapped",[30011]],[[64164,64164],"mapped",[30237]],[[64165,64165],"mapped",[30239]],[[64166,64166],"mapped",[30410]],[[64167,64167],"mapped",[30427]],[[64168,64168],"mapped",[30452]],[[64169,64169],"mapped",[30538]],[[64170,64170],"mapped",[30528]],[[64171,64171],"mapped",[30924]],[[64172,64172],"mapped",[31409]],[[64173,64173],"mapped",[31680]],[[64174,64174],"mapped",[31867]],[[64175,64175],"mapped",[32091]],[[64176,64176],"mapped",[32244]],[[64177,64177],"mapped",[32574]],[[64178,64178],"mapped",[32773]],[[64179,64179],"mapped",[33618]],[[64180,64180],"mapped",[33775]],[[64181,64181],"mapped",[34681]],[[64182,64182],"mapped",[35137]],[[64183,64183],"mapped",[35206]],[[64184,64184],"mapped",[35222]],[[64185,64185],"mapped",[35519]],[[64186,64186],"mapped",[35576]],[[64187,64187],"mapped",[35531]],[[64188,64188],"mapped",[35585]],[[64189,64189],"mapped",[35582]],[[64190,64190],"mapped",[35565]],[[64191,64191],"mapped",[35641]],[[64192,64192],"mapped",[35722]],[[64193,64193],"mapped",[36104]],[[64194,64194],"mapped",[36664]],[[64195,64195],"mapped",[36978]],[[64196,64196],"mapped",[37273]],[[64197,64197],"mapped",[37494]],[[64198,64198],"mapped",[38524]],[[64199,64199],"mapped",[38627]],[[64200,64200],"mapped",[38742]],[[64201,64201],"mapped",[38875]],[[64202,64202],"mapped",[38911]],[[64203,64203],"mapped",[38923]],[[64204,64204],"mapped",[38971]],[[64205,64205],"mapped",[39698]],[[64206,64206],"mapped",[40860]],[[64207,64207],"mapped",[141386]],[[64208,64208],"mapped",[141380]],[[64209,64209],"mapped",[144341]],[[64210,64210],"mapped",[15261]],[[64211,64211],"mapped",[16408]],[[64212,64212],"mapped",[16441]],[[64213,64213],"mapped",[152137]],[[64214,64214],"mapped",[154832]],[[64215,64215],"mapped",[163539]],[[64216,64216],"mapped",[40771]],[[64217,64217],"mapped",[40846]],[[64218,64255],"disallowed"],[[64256,64256],"mapped",[102,102]],[[64257,64257],"mapped",[102,105]],[[64258,64258],"mapped",[102,108]],[[64259,64259],"mapped",[102,102,105]],[[64260,64260],"mapped",[102,102,108]],[[64261,64262],"mapped",[115,116]],[[64263,64274],"disallowed"],[[64275,64275],"mapped",[1396,1398]],[[64276,64276],"mapped",[1396,1381]],[[64277,64277],"mapped",[1396,1387]],[[64278,64278],"mapped",[1406,1398]],[[64279,64279],"mapped",[1396,1389]],[[64280,64284],"disallowed"],[[64285,64285],"mapped",[1497,1460]],[[64286,64286],"valid"],[[64287,64287],"mapped",[1522,1463]],[[64288,64288],"mapped",[1506]],[[64289,64289],"mapped",[1488]],[[64290,64290],"mapped",[1491]],[[64291,64291],"mapped",[1492]],[[64292,64292],"mapped",[1499]],[[64293,64293],"mapped",[1500]],[[64294,64294],"mapped",[1501]],[[64295,64295],"mapped",[1512]],[[64296,64296],"mapped",[1514]],[[64297,64297],"disallowed_STD3_mapped",[43]],[[64298,64298],"mapped",[1513,1473]],[[64299,64299],"mapped",[1513,1474]],[[64300,64300],"mapped",[1513,1468,1473]],[[64301,64301],"mapped",[1513,1468,1474]],[[64302,64302],"mapped",[1488,1463]],[[64303,64303],"mapped",[1488,1464]],[[64304,64304],"mapped",[1488,1468]],[[64305,64305],"mapped",[1489,1468]],[[64306,64306],"mapped",[1490,1468]],[[64307,64307],"mapped",[1491,1468]],[[64308,64308],"mapped",[1492,1468]],[[64309,64309],"mapped",[1493,1468]],[[64310,64310],"mapped",[1494,1468]],[[64311,64311],"disallowed"],[[64312,64312],"mapped",[1496,1468]],[[64313,64313],"mapped",[1497,1468]],[[64314,64314],"mapped",[1498,1468]],[[64315,64315],"mapped",[1499,1468]],[[64316,64316],"mapped",[1500,1468]],[[64317,64317],"disallowed"],[[64318,64318],"mapped",[1502,1468]],[[64319,64319],"disallowed"],[[64320,64320],"mapped",[1504,1468]],[[64321,64321],"mapped",[1505,1468]],[[64322,64322],"disallowed"],[[64323,64323],"mapped",[1507,1468]],[[64324,64324],"mapped",[1508,1468]],[[64325,64325],"disallowed"],[[64326,64326],"mapped",[1510,1468]],[[64327,64327],"mapped",[1511,1468]],[[64328,64328],"mapped",[1512,1468]],[[64329,64329],"mapped",[1513,1468]],[[64330,64330],"mapped",[1514,1468]],[[64331,64331],"mapped",[1493,1465]],[[64332,64332],"mapped",[1489,1471]],[[64333,64333],"mapped",[1499,1471]],[[64334,64334],"mapped",[1508,1471]],[[64335,64335],"mapped",[1488,1500]],[[64336,64337],"mapped",[1649]],[[64338,64341],"mapped",[1659]],[[64342,64345],"mapped",[1662]],[[64346,64349],"mapped",[1664]],[[64350,64353],"mapped",[1658]],[[64354,64357],"mapped",[1663]],[[64358,64361],"mapped",[1657]],[[64362,64365],"mapped",[1700]],[[64366,64369],"mapped",[1702]],[[64370,64373],"mapped",[1668]],[[64374,64377],"mapped",[1667]],[[64378,64381],"mapped",[1670]],[[64382,64385],"mapped",[1671]],[[64386,64387],"mapped",[1677]],[[64388,64389],"mapped",[1676]],[[64390,64391],"mapped",[1678]],[[64392,64393],"mapped",[1672]],[[64394,64395],"mapped",[1688]],[[64396,64397],"mapped",[1681]],[[64398,64401],"mapped",[1705]],[[64402,64405],"mapped",[1711]],[[64406,64409],"mapped",[1715]],[[64410,64413],"mapped",[1713]],[[64414,64415],"mapped",[1722]],[[64416,64419],"mapped",[1723]],[[64420,64421],"mapped",[1728]],[[64422,64425],"mapped",[1729]],[[64426,64429],"mapped",[1726]],[[64430,64431],"mapped",[1746]],[[64432,64433],"mapped",[1747]],[[64434,64449],"valid",[],"NV8"],[[64450,64466],"disallowed"],[[64467,64470],"mapped",[1709]],[[64471,64472],"mapped",[1735]],[[64473,64474],"mapped",[1734]],[[64475,64476],"mapped",[1736]],[[64477,64477],"mapped",[1735,1652]],[[64478,64479],"mapped",[1739]],[[64480,64481],"mapped",[1733]],[[64482,64483],"mapped",[1737]],[[64484,64487],"mapped",[1744]],[[64488,64489],"mapped",[1609]],[[64490,64491],"mapped",[1574,1575]],[[64492,64493],"mapped",[1574,1749]],[[64494,64495],"mapped",[1574,1608]],[[64496,64497],"mapped",[1574,1735]],[[64498,64499],"mapped",[1574,1734]],[[64500,64501],"mapped",[1574,1736]],[[64502,64504],"mapped",[1574,1744]],[[64505,64507],"mapped",[1574,1609]],[[64508,64511],"mapped",[1740]],[[64512,64512],"mapped",[1574,1580]],[[64513,64513],"mapped",[1574,1581]],[[64514,64514],"mapped",[1574,1605]],[[64515,64515],"mapped",[1574,1609]],[[64516,64516],"mapped",[1574,1610]],[[64517,64517],"mapped",[1576,1580]],[[64518,64518],"mapped",[1576,1581]],[[64519,64519],"mapped",[1576,1582]],[[64520,64520],"mapped",[1576,1605]],[[64521,64521],"mapped",[1576,1609]],[[64522,64522],"mapped",[1576,1610]],[[64523,64523],"mapped",[1578,1580]],[[64524,64524],"mapped",[1578,1581]],[[64525,64525],"mapped",[1578,1582]],[[64526,64526],"mapped",[1578,1605]],[[64527,64527],"mapped",[1578,1609]],[[64528,64528],"mapped",[1578,1610]],[[64529,64529],"mapped",[1579,1580]],[[64530,64530],"mapped",[1579,1605]],[[64531,64531],"mapped",[1579,1609]],[[64532,64532],"mapped",[1579,1610]],[[64533,64533],"mapped",[1580,1581]],[[64534,64534],"mapped",[1580,1605]],[[64535,64535],"mapped",[1581,1580]],[[64536,64536],"mapped",[1581,1605]],[[64537,64537],"mapped",[1582,1580]],[[64538,64538],"mapped",[1582,1581]],[[64539,64539],"mapped",[1582,1605]],[[64540,64540],"mapped",[1587,1580]],[[64541,64541],"mapped",[1587,1581]],[[64542,64542],"mapped",[1587,1582]],[[64543,64543],"mapped",[1587,1605]],[[64544,64544],"mapped",[1589,1581]],[[64545,64545],"mapped",[1589,1605]],[[64546,64546],"mapped",[1590,1580]],[[64547,64547],"mapped",[1590,1581]],[[64548,64548],"mapped",[1590,1582]],[[64549,64549],"mapped",[1590,1605]],[[64550,64550],"mapped",[1591,1581]],[[64551,64551],"mapped",[1591,1605]],[[64552,64552],"mapped",[1592,1605]],[[64553,64553],"mapped",[1593,1580]],[[64554,64554],"mapped",[1593,1605]],[[64555,64555],"mapped",[1594,1580]],[[64556,64556],"mapped",[1594,1605]],[[64557,64557],"mapped",[1601,1580]],[[64558,64558],"mapped",[1601,1581]],[[64559,64559],"mapped",[1601,1582]],[[64560,64560],"mapped",[1601,1605]],[[64561,64561],"mapped",[1601,1609]],[[64562,64562],"mapped",[1601,1610]],[[64563,64563],"mapped",[1602,1581]],[[64564,64564],"mapped",[1602,1605]],[[64565,64565],"mapped",[1602,1609]],[[64566,64566],"mapped",[1602,1610]],[[64567,64567],"mapped",[1603,1575]],[[64568,64568],"mapped",[1603,1580]],[[64569,64569],"mapped",[1603,1581]],[[64570,64570],"mapped",[1603,1582]],[[64571,64571],"mapped",[1603,1604]],[[64572,64572],"mapped",[1603,1605]],[[64573,64573],"mapped",[1603,1609]],[[64574,64574],"mapped",[1603,1610]],[[64575,64575],"mapped",[1604,1580]],[[64576,64576],"mapped",[1604,1581]],[[64577,64577],"mapped",[1604,1582]],[[64578,64578],"mapped",[1604,1605]],[[64579,64579],"mapped",[1604,1609]],[[64580,64580],"mapped",[1604,1610]],[[64581,64581],"mapped",[1605,1580]],[[64582,64582],"mapped",[1605,1581]],[[64583,64583],"mapped",[1605,1582]],[[64584,64584],"mapped",[1605,1605]],[[64585,64585],"mapped",[1605,1609]],[[64586,64586],"mapped",[1605,1610]],[[64587,64587],"mapped",[1606,1580]],[[64588,64588],"mapped",[1606,1581]],[[64589,64589],"mapped",[1606,1582]],[[64590,64590],"mapped",[1606,1605]],[[64591,64591],"mapped",[1606,1609]],[[64592,64592],"mapped",[1606,1610]],[[64593,64593],"mapped",[1607,1580]],[[64594,64594],"mapped",[1607,1605]],[[64595,64595],"mapped",[1607,1609]],[[64596,64596],"mapped",[1607,1610]],[[64597,64597],"mapped",[1610,1580]],[[64598,64598],"mapped",[1610,1581]],[[64599,64599],"mapped",[1610,1582]],[[64600,64600],"mapped",[1610,1605]],[[64601,64601],"mapped",[1610,1609]],[[64602,64602],"mapped",[1610,1610]],[[64603,64603],"mapped",[1584,1648]],[[64604,64604],"mapped",[1585,1648]],[[64605,64605],"mapped",[1609,1648]],[[64606,64606],"disallowed_STD3_mapped",[32,1612,1617]],[[64607,64607],"disallowed_STD3_mapped",[32,1613,1617]],[[64608,64608],"disallowed_STD3_mapped",[32,1614,1617]],[[64609,64609],"disallowed_STD3_mapped",[32,1615,1617]],[[64610,64610],"disallowed_STD3_mapped",[32,1616,1617]],[[64611,64611],"disallowed_STD3_mapped",[32,1617,1648]],[[64612,64612],"mapped",[1574,1585]],[[64613,64613],"mapped",[1574,1586]],[[64614,64614],"mapped",[1574,1605]],[[64615,64615],"mapped",[1574,1606]],[[64616,64616],"mapped",[1574,1609]],[[64617,64617],"mapped",[1574,1610]],[[64618,64618],"mapped",[1576,1585]],[[64619,64619],"mapped",[1576,1586]],[[64620,64620],"mapped",[1576,1605]],[[64621,64621],"mapped",[1576,1606]],[[64622,64622],"mapped",[1576,1609]],[[64623,64623],"mapped",[1576,1610]],[[64624,64624],"mapped",[1578,1585]],[[64625,64625],"mapped",[1578,1586]],[[64626,64626],"mapped",[1578,1605]],[[64627,64627],"mapped",[1578,1606]],[[64628,64628],"mapped",[1578,1609]],[[64629,64629],"mapped",[1578,1610]],[[64630,64630],"mapped",[1579,1585]],[[64631,64631],"mapped",[1579,1586]],[[64632,64632],"mapped",[1579,1605]],[[64633,64633],"mapped",[1579,1606]],[[64634,64634],"mapped",[1579,1609]],[[64635,64635],"mapped",[1579,1610]],[[64636,64636],"mapped",[1601,1609]],[[64637,64637],"mapped",[1601,1610]],[[64638,64638],"mapped",[1602,1609]],[[64639,64639],"mapped",[1602,1610]],[[64640,64640],"mapped",[1603,1575]],[[64641,64641],"mapped",[1603,1604]],[[64642,64642],"mapped",[1603,1605]],[[64643,64643],"mapped",[1603,1609]],[[64644,64644],"mapped",[1603,1610]],[[64645,64645],"mapped",[1604,1605]],[[64646,64646],"mapped",[1604,1609]],[[64647,64647],"mapped",[1604,1610]],[[64648,64648],"mapped",[1605,1575]],[[64649,64649],"mapped",[1605,1605]],[[64650,64650],"mapped",[1606,1585]],[[64651,64651],"mapped",[1606,1586]],[[64652,64652],"mapped",[1606,1605]],[[64653,64653],"mapped",[1606,1606]],[[64654,64654],"mapped",[1606,1609]],[[64655,64655],"mapped",[1606,1610]],[[64656,64656],"mapped",[1609,1648]],[[64657,64657],"mapped",[1610,1585]],[[64658,64658],"mapped",[1610,1586]],[[64659,64659],"mapped",[1610,1605]],[[64660,64660],"mapped",[1610,1606]],[[64661,64661],"mapped",[1610,1609]],[[64662,64662],"mapped",[1610,1610]],[[64663,64663],"mapped",[1574,1580]],[[64664,64664],"mapped",[1574,1581]],[[64665,64665],"mapped",[1574,1582]],[[64666,64666],"mapped",[1574,1605]],[[64667,64667],"mapped",[1574,1607]],[[64668,64668],"mapped",[1576,1580]],[[64669,64669],"mapped",[1576,1581]],[[64670,64670],"mapped",[1576,1582]],[[64671,64671],"mapped",[1576,1605]],[[64672,64672],"mapped",[1576,1607]],[[64673,64673],"mapped",[1578,1580]],[[64674,64674],"mapped",[1578,1581]],[[64675,64675],"mapped",[1578,1582]],[[64676,64676],"mapped",[1578,1605]],[[64677,64677],"mapped",[1578,1607]],[[64678,64678],"mapped",[1579,1605]],[[64679,64679],"mapped",[1580,1581]],[[64680,64680],"mapped",[1580,1605]],[[64681,64681],"mapped",[1581,1580]],[[64682,64682],"mapped",[1581,1605]],[[64683,64683],"mapped",[1582,1580]],[[64684,64684],"mapped",[1582,1605]],[[64685,64685],"mapped",[1587,1580]],[[64686,64686],"mapped",[1587,1581]],[[64687,64687],"mapped",[1587,1582]],[[64688,64688],"mapped",[1587,1605]],[[64689,64689],"mapped",[1589,1581]],[[64690,64690],"mapped",[1589,1582]],[[64691,64691],"mapped",[1589,1605]],[[64692,64692],"mapped",[1590,1580]],[[64693,64693],"mapped",[1590,1581]],[[64694,64694],"mapped",[1590,1582]],[[64695,64695],"mapped",[1590,1605]],[[64696,64696],"mapped",[1591,1581]],[[64697,64697],"mapped",[1592,1605]],[[64698,64698],"mapped",[1593,1580]],[[64699,64699],"mapped",[1593,1605]],[[64700,64700],"mapped",[1594,1580]],[[64701,64701],"mapped",[1594,1605]],[[64702,64702],"mapped",[1601,1580]],[[64703,64703],"mapped",[1601,1581]],[[64704,64704],"mapped",[1601,1582]],[[64705,64705],"mapped",[1601,1605]],[[64706,64706],"mapped",[1602,1581]],[[64707,64707],"mapped",[1602,1605]],[[64708,64708],"mapped",[1603,1580]],[[64709,64709],"mapped",[1603,1581]],[[64710,64710],"mapped",[1603,1582]],[[64711,64711],"mapped",[1603,1604]],[[64712,64712],"mapped",[1603,1605]],[[64713,64713],"mapped",[1604,1580]],[[64714,64714],"mapped",[1604,1581]],[[64715,64715],"mapped",[1604,1582]],[[64716,64716],"mapped",[1604,1605]],[[64717,64717],"mapped",[1604,1607]],[[64718,64718],"mapped",[1605,1580]],[[64719,64719],"mapped",[1605,1581]],[[64720,64720],"mapped",[1605,1582]],[[64721,64721],"mapped",[1605,1605]],[[64722,64722],"mapped",[1606,1580]],[[64723,64723],"mapped",[1606,1581]],[[64724,64724],"mapped",[1606,1582]],[[64725,64725],"mapped",[1606,1605]],[[64726,64726],"mapped",[1606,1607]],[[64727,64727],"mapped",[1607,1580]],[[64728,64728],"mapped",[1607,1605]],[[64729,64729],"mapped",[1607,1648]],[[64730,64730],"mapped",[1610,1580]],[[64731,64731],"mapped",[1610,1581]],[[64732,64732],"mapped",[1610,1582]],[[64733,64733],"mapped",[1610,1605]],[[64734,64734],"mapped",[1610,1607]],[[64735,64735],"mapped",[1574,1605]],[[64736,64736],"mapped",[1574,1607]],[[64737,64737],"mapped",[1576,1605]],[[64738,64738],"mapped",[1576,1607]],[[64739,64739],"mapped",[1578,1605]],[[64740,64740],"mapped",[1578,1607]],[[64741,64741],"mapped",[1579,1605]],[[64742,64742],"mapped",[1579,1607]],[[64743,64743],"mapped",[1587,1605]],[[64744,64744],"mapped",[1587,1607]],[[64745,64745],"mapped",[1588,1605]],[[64746,64746],"mapped",[1588,1607]],[[64747,64747],"mapped",[1603,1604]],[[64748,64748],"mapped",[1603,1605]],[[64749,64749],"mapped",[1604,1605]],[[64750,64750],"mapped",[1606,1605]],[[64751,64751],"mapped",[1606,1607]],[[64752,64752],"mapped",[1610,1605]],[[64753,64753],"mapped",[1610,1607]],[[64754,64754],"mapped",[1600,1614,1617]],[[64755,64755],"mapped",[1600,1615,1617]],[[64756,64756],"mapped",[1600,1616,1617]],[[64757,64757],"mapped",[1591,1609]],[[64758,64758],"mapped",[1591,1610]],[[64759,64759],"mapped",[1593,1609]],[[64760,64760],"mapped",[1593,1610]],[[64761,64761],"mapped",[1594,1609]],[[64762,64762],"mapped",[1594,1610]],[[64763,64763],"mapped",[1587,1609]],[[64764,64764],"mapped",[1587,1610]],[[64765,64765],"mapped",[1588,1609]],[[64766,64766],"mapped",[1588,1610]],[[64767,64767],"mapped",[1581,1609]],[[64768,64768],"mapped",[1581,1610]],[[64769,64769],"mapped",[1580,1609]],[[64770,64770],"mapped",[1580,1610]],[[64771,64771],"mapped",[1582,1609]],[[64772,64772],"mapped",[1582,1610]],[[64773,64773],"mapped",[1589,1609]],[[64774,64774],"mapped",[1589,1610]],[[64775,64775],"mapped",[1590,1609]],[[64776,64776],"mapped",[1590,1610]],[[64777,64777],"mapped",[1588,1580]],[[64778,64778],"mapped",[1588,1581]],[[64779,64779],"mapped",[1588,1582]],[[64780,64780],"mapped",[1588,1605]],[[64781,64781],"mapped",[1588,1585]],[[64782,64782],"mapped",[1587,1585]],[[64783,64783],"mapped",[1589,1585]],[[64784,64784],"mapped",[1590,1585]],[[64785,64785],"mapped",[1591,1609]],[[64786,64786],"mapped",[1591,1610]],[[64787,64787],"mapped",[1593,1609]],[[64788,64788],"mapped",[1593,1610]],[[64789,64789],"mapped",[1594,1609]],[[64790,64790],"mapped",[1594,1610]],[[64791,64791],"mapped",[1587,1609]],[[64792,64792],"mapped",[1587,1610]],[[64793,64793],"mapped",[1588,1609]],[[64794,64794],"mapped",[1588,1610]],[[64795,64795],"mapped",[1581,1609]],[[64796,64796],"mapped",[1581,1610]],[[64797,64797],"mapped",[1580,1609]],[[64798,64798],"mapped",[1580,1610]],[[64799,64799],"mapped",[1582,1609]],[[64800,64800],"mapped",[1582,1610]],[[64801,64801],"mapped",[1589,1609]],[[64802,64802],"mapped",[1589,1610]],[[64803,64803],"mapped",[1590,1609]],[[64804,64804],"mapped",[1590,1610]],[[64805,64805],"mapped",[1588,1580]],[[64806,64806],"mapped",[1588,1581]],[[64807,64807],"mapped",[1588,1582]],[[64808,64808],"mapped",[1588,1605]],[[64809,64809],"mapped",[1588,1585]],[[64810,64810],"mapped",[1587,1585]],[[64811,64811],"mapped",[1589,1585]],[[64812,64812],"mapped",[1590,1585]],[[64813,64813],"mapped",[1588,1580]],[[64814,64814],"mapped",[1588,1581]],[[64815,64815],"mapped",[1588,1582]],[[64816,64816],"mapped",[1588,1605]],[[64817,64817],"mapped",[1587,1607]],[[64818,64818],"mapped",[1588,1607]],[[64819,64819],"mapped",[1591,1605]],[[64820,64820],"mapped",[1587,1580]],[[64821,64821],"mapped",[1587,1581]],[[64822,64822],"mapped",[1587,1582]],[[64823,64823],"mapped",[1588,1580]],[[64824,64824],"mapped",[1588,1581]],[[64825,64825],"mapped",[1588,1582]],[[64826,64826],"mapped",[1591,1605]],[[64827,64827],"mapped",[1592,1605]],[[64828,64829],"mapped",[1575,1611]],[[64830,64831],"valid",[],"NV8"],[[64832,64847],"disallowed"],[[64848,64848],"mapped",[1578,1580,1605]],[[64849,64850],"mapped",[1578,1581,1580]],[[64851,64851],"mapped",[1578,1581,1605]],[[64852,64852],"mapped",[1578,1582,1605]],[[64853,64853],"mapped",[1578,1605,1580]],[[64854,64854],"mapped",[1578,1605,1581]],[[64855,64855],"mapped",[1578,1605,1582]],[[64856,64857],"mapped",[1580,1605,1581]],[[64858,64858],"mapped",[1581,1605,1610]],[[64859,64859],"mapped",[1581,1605,1609]],[[64860,64860],"mapped",[1587,1581,1580]],[[64861,64861],"mapped",[1587,1580,1581]],[[64862,64862],"mapped",[1587,1580,1609]],[[64863,64864],"mapped",[1587,1605,1581]],[[64865,64865],"mapped",[1587,1605,1580]],[[64866,64867],"mapped",[1587,1605,1605]],[[64868,64869],"mapped",[1589,1581,1581]],[[64870,64870],"mapped",[1589,1605,1605]],[[64871,64872],"mapped",[1588,1581,1605]],[[64873,64873],"mapped",[1588,1580,1610]],[[64874,64875],"mapped",[1588,1605,1582]],[[64876,64877],"mapped",[1588,1605,1605]],[[64878,64878],"mapped",[1590,1581,1609]],[[64879,64880],"mapped",[1590,1582,1605]],[[64881,64882],"mapped",[1591,1605,1581]],[[64883,64883],"mapped",[1591,1605,1605]],[[64884,64884],"mapped",[1591,1605,1610]],[[64885,64885],"mapped",[1593,1580,1605]],[[64886,64887],"mapped",[1593,1605,1605]],[[64888,64888],"mapped",[1593,1605,1609]],[[64889,64889],"mapped",[1594,1605,1605]],[[64890,64890],"mapped",[1594,1605,1610]],[[64891,64891],"mapped",[1594,1605,1609]],[[64892,64893],"mapped",[1601,1582,1605]],[[64894,64894],"mapped",[1602,1605,1581]],[[64895,64895],"mapped",[1602,1605,1605]],[[64896,64896],"mapped",[1604,1581,1605]],[[64897,64897],"mapped",[1604,1581,1610]],[[64898,64898],"mapped",[1604,1581,1609]],[[64899,64900],"mapped",[1604,1580,1580]],[[64901,64902],"mapped",[1604,1582,1605]],[[64903,64904],"mapped",[1604,1605,1581]],[[64905,64905],"mapped",[1605,1581,1580]],[[64906,64906],"mapped",[1605,1581,1605]],[[64907,64907],"mapped",[1605,1581,1610]],[[64908,64908],"mapped",[1605,1580,1581]],[[64909,64909],"mapped",[1605,1580,1605]],[[64910,64910],"mapped",[1605,1582,1580]],[[64911,64911],"mapped",[1605,1582,1605]],[[64912,64913],"disallowed"],[[64914,64914],"mapped",[1605,1580,1582]],[[64915,64915],"mapped",[1607,1605,1580]],[[64916,64916],"mapped",[1607,1605,1605]],[[64917,64917],"mapped",[1606,1581,1605]],[[64918,64918],"mapped",[1606,1581,1609]],[[64919,64920],"mapped",[1606,1580,1605]],[[64921,64921],"mapped",[1606,1580,1609]],[[64922,64922],"mapped",[1606,1605,1610]],[[64923,64923],"mapped",[1606,1605,1609]],[[64924,64925],"mapped",[1610,1605,1605]],[[64926,64926],"mapped",[1576,1582,1610]],[[64927,64927],"mapped",[1578,1580,1610]],[[64928,64928],"mapped",[1578,1580,1609]],[[64929,64929],"mapped",[1578,1582,1610]],[[64930,64930],"mapped",[1578,1582,1609]],[[64931,64931],"mapped",[1578,1605,1610]],[[64932,64932],"mapped",[1578,1605,1609]],[[64933,64933],"mapped",[1580,1605,1610]],[[64934,64934],"mapped",[1580,1581,1609]],[[64935,64935],"mapped",[1580,1605,1609]],[[64936,64936],"mapped",[1587,1582,1609]],[[64937,64937],"mapped",[1589,1581,1610]],[[64938,64938],"mapped",[1588,1581,1610]],[[64939,64939],"mapped",[1590,1581,1610]],[[64940,64940],"mapped",[1604,1580,1610]],[[64941,64941],"mapped",[1604,1605,1610]],[[64942,64942],"mapped",[1610,1581,1610]],[[64943,64943],"mapped",[1610,1580,1610]],[[64944,64944],"mapped",[1610,1605,1610]],[[64945,64945],"mapped",[1605,1605,1610]],[[64946,64946],"mapped",[1602,1605,1610]],[[64947,64947],"mapped",[1606,1581,1610]],[[64948,64948],"mapped",[1602,1605,1581]],[[64949,64949],"mapped",[1604,1581,1605]],[[64950,64950],"mapped",[1593,1605,1610]],[[64951,64951],"mapped",[1603,1605,1610]],[[64952,64952],"mapped",[1606,1580,1581]],[[64953,64953],"mapped",[1605,1582,1610]],[[64954,64954],"mapped",[1604,1580,1605]],[[64955,64955],"mapped",[1603,1605,1605]],[[64956,64956],"mapped",[1604,1580,1605]],[[64957,64957],"mapped",[1606,1580,1581]],[[64958,64958],"mapped",[1580,1581,1610]],[[64959,64959],"mapped",[1581,1580,1610]],[[64960,64960],"mapped",[1605,1580,1610]],[[64961,64961],"mapped",[1601,1605,1610]],[[64962,64962],"mapped",[1576,1581,1610]],[[64963,64963],"mapped",[1603,1605,1605]],[[64964,64964],"mapped",[1593,1580,1605]],[[64965,64965],"mapped",[1589,1605,1605]],[[64966,64966],"mapped",[1587,1582,1610]],[[64967,64967],"mapped",[1606,1580,1610]],[[64968,64975],"disallowed"],[[64976,65007],"disallowed"],[[65008,65008],"mapped",[1589,1604,1746]],[[65009,65009],"mapped",[1602,1604,1746]],[[65010,65010],"mapped",[1575,1604,1604,1607]],[[65011,65011],"mapped",[1575,1603,1576,1585]],[[65012,65012],"mapped",[1605,1581,1605,1583]],[[65013,65013],"mapped",[1589,1604,1593,1605]],[[65014,65014],"mapped",[1585,1587,1608,1604]],[[65015,65015],"mapped",[1593,1604,1610,1607]],[[65016,65016],"mapped",[1608,1587,1604,1605]],[[65017,65017],"mapped",[1589,1604,1609]],[[65018,65018],"disallowed_STD3_mapped",[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605]],[[65019,65019],"disallowed_STD3_mapped",[1580,1604,32,1580,1604,1575,1604,1607]],[[65020,65020],"mapped",[1585,1740,1575,1604]],[[65021,65021],"valid",[],"NV8"],[[65022,65023],"disallowed"],[[65024,65039],"ignored"],[[65040,65040],"disallowed_STD3_mapped",[44]],[[65041,65041],"mapped",[12289]],[[65042,65042],"disallowed"],[[65043,65043],"disallowed_STD3_mapped",[58]],[[65044,65044],"disallowed_STD3_mapped",[59]],[[65045,65045],"disallowed_STD3_mapped",[33]],[[65046,65046],"disallowed_STD3_mapped",[63]],[[65047,65047],"mapped",[12310]],[[65048,65048],"mapped",[12311]],[[65049,65049],"disallowed"],[[65050,65055],"disallowed"],[[65056,65059],"valid"],[[65060,65062],"valid"],[[65063,65069],"valid"],[[65070,65071],"valid"],[[65072,65072],"disallowed"],[[65073,65073],"mapped",[8212]],[[65074,65074],"mapped",[8211]],[[65075,65076],"disallowed_STD3_mapped",[95]],[[65077,65077],"disallowed_STD3_mapped",[40]],[[65078,65078],"disallowed_STD3_mapped",[41]],[[65079,65079],"disallowed_STD3_mapped",[123]],[[65080,65080],"disallowed_STD3_mapped",[125]],[[65081,65081],"mapped",[12308]],[[65082,65082],"mapped",[12309]],[[65083,65083],"mapped",[12304]],[[65084,65084],"mapped",[12305]],[[65085,65085],"mapped",[12298]],[[65086,65086],"mapped",[12299]],[[65087,65087],"mapped",[12296]],[[65088,65088],"mapped",[12297]],[[65089,65089],"mapped",[12300]],[[65090,65090],"mapped",[12301]],[[65091,65091],"mapped",[12302]],[[65092,65092],"mapped",[12303]],[[65093,65094],"valid",[],"NV8"],[[65095,65095],"disallowed_STD3_mapped",[91]],[[65096,65096],"disallowed_STD3_mapped",[93]],[[65097,65100],"disallowed_STD3_mapped",[32,773]],[[65101,65103],"disallowed_STD3_mapped",[95]],[[65104,65104],"disallowed_STD3_mapped",[44]],[[65105,65105],"mapped",[12289]],[[65106,65106],"disallowed"],[[65107,65107],"disallowed"],[[65108,65108],"disallowed_STD3_mapped",[59]],[[65109,65109],"disallowed_STD3_mapped",[58]],[[65110,65110],"disallowed_STD3_mapped",[63]],[[65111,65111],"disallowed_STD3_mapped",[33]],[[65112,65112],"mapped",[8212]],[[65113,65113],"disallowed_STD3_mapped",[40]],[[65114,65114],"disallowed_STD3_mapped",[41]],[[65115,65115],"disallowed_STD3_mapped",[123]],[[65116,65116],"disallowed_STD3_mapped",[125]],[[65117,65117],"mapped",[12308]],[[65118,65118],"mapped",[12309]],[[65119,65119],"disallowed_STD3_mapped",[35]],[[65120,65120],"disallowed_STD3_mapped",[38]],[[65121,65121],"disallowed_STD3_mapped",[42]],[[65122,65122],"disallowed_STD3_mapped",[43]],[[65123,65123],"mapped",[45]],[[65124,65124],"disallowed_STD3_mapped",[60]],[[65125,65125],"disallowed_STD3_mapped",[62]],[[65126,65126],"disallowed_STD3_mapped",[61]],[[65127,65127],"disallowed"],[[65128,65128],"disallowed_STD3_mapped",[92]],[[65129,65129],"disallowed_STD3_mapped",[36]],[[65130,65130],"disallowed_STD3_mapped",[37]],[[65131,65131],"disallowed_STD3_mapped",[64]],[[65132,65135],"disallowed"],[[65136,65136],"disallowed_STD3_mapped",[32,1611]],[[65137,65137],"mapped",[1600,1611]],[[65138,65138],"disallowed_STD3_mapped",[32,1612]],[[65139,65139],"valid"],[[65140,65140],"disallowed_STD3_mapped",[32,1613]],[[65141,65141],"disallowed"],[[65142,65142],"disallowed_STD3_mapped",[32,1614]],[[65143,65143],"mapped",[1600,1614]],[[65144,65144],"disallowed_STD3_mapped",[32,1615]],[[65145,65145],"mapped",[1600,1615]],[[65146,65146],"disallowed_STD3_mapped",[32,1616]],[[65147,65147],"mapped",[1600,1616]],[[65148,65148],"disallowed_STD3_mapped",[32,1617]],[[65149,65149],"mapped",[1600,1617]],[[65150,65150],"disallowed_STD3_mapped",[32,1618]],[[65151,65151],"mapped",[1600,1618]],[[65152,65152],"mapped",[1569]],[[65153,65154],"mapped",[1570]],[[65155,65156],"mapped",[1571]],[[65157,65158],"mapped",[1572]],[[65159,65160],"mapped",[1573]],[[65161,65164],"mapped",[1574]],[[65165,65166],"mapped",[1575]],[[65167,65170],"mapped",[1576]],[[65171,65172],"mapped",[1577]],[[65173,65176],"mapped",[1578]],[[65177,65180],"mapped",[1579]],[[65181,65184],"mapped",[1580]],[[65185,65188],"mapped",[1581]],[[65189,65192],"mapped",[1582]],[[65193,65194],"mapped",[1583]],[[65195,65196],"mapped",[1584]],[[65197,65198],"mapped",[1585]],[[65199,65200],"mapped",[1586]],[[65201,65204],"mapped",[1587]],[[65205,65208],"mapped",[1588]],[[65209,65212],"mapped",[1589]],[[65213,65216],"mapped",[1590]],[[65217,65220],"mapped",[1591]],[[65221,65224],"mapped",[1592]],[[65225,65228],"mapped",[1593]],[[65229,65232],"mapped",[1594]],[[65233,65236],"mapped",[1601]],[[65237,65240],"mapped",[1602]],[[65241,65244],"mapped",[1603]],[[65245,65248],"mapped",[1604]],[[65249,65252],"mapped",[1605]],[[65253,65256],"mapped",[1606]],[[65257,65260],"mapped",[1607]],[[65261,65262],"mapped",[1608]],[[65263,65264],"mapped",[1609]],[[65265,65268],"mapped",[1610]],[[65269,65270],"mapped",[1604,1570]],[[65271,65272],"mapped",[1604,1571]],[[65273,65274],"mapped",[1604,1573]],[[65275,65276],"mapped",[1604,1575]],[[65277,65278],"disallowed"],[[65279,65279],"ignored"],[[65280,65280],"disallowed"],[[65281,65281],"disallowed_STD3_mapped",[33]],[[65282,65282],"disallowed_STD3_mapped",[34]],[[65283,65283],"disallowed_STD3_mapped",[35]],[[65284,65284],"disallowed_STD3_mapped",[36]],[[65285,65285],"disallowed_STD3_mapped",[37]],[[65286,65286],"disallowed_STD3_mapped",[38]],[[65287,65287],"disallowed_STD3_mapped",[39]],[[65288,65288],"disallowed_STD3_mapped",[40]],[[65289,65289],"disallowed_STD3_mapped",[41]],[[65290,65290],"disallowed_STD3_mapped",[42]],[[65291,65291],"disallowed_STD3_mapped",[43]],[[65292,65292],"disallowed_STD3_mapped",[44]],[[65293,65293],"mapped",[45]],[[65294,65294],"mapped",[46]],[[65295,65295],"disallowed_STD3_mapped",[47]],[[65296,65296],"mapped",[48]],[[65297,65297],"mapped",[49]],[[65298,65298],"mapped",[50]],[[65299,65299],"mapped",[51]],[[65300,65300],"mapped",[52]],[[65301,65301],"mapped",[53]],[[65302,65302],"mapped",[54]],[[65303,65303],"mapped",[55]],[[65304,65304],"mapped",[56]],[[65305,65305],"mapped",[57]],[[65306,65306],"disallowed_STD3_mapped",[58]],[[65307,65307],"disallowed_STD3_mapped",[59]],[[65308,65308],"disallowed_STD3_mapped",[60]],[[65309,65309],"disallowed_STD3_mapped",[61]],[[65310,65310],"disallowed_STD3_mapped",[62]],[[65311,65311],"disallowed_STD3_mapped",[63]],[[65312,65312],"disallowed_STD3_mapped",[64]],[[65313,65313],"mapped",[97]],[[65314,65314],"mapped",[98]],[[65315,65315],"mapped",[99]],[[65316,65316],"mapped",[100]],[[65317,65317],"mapped",[101]],[[65318,65318],"mapped",[102]],[[65319,65319],"mapped",[103]],[[65320,65320],"mapped",[104]],[[65321,65321],"mapped",[105]],[[65322,65322],"mapped",[106]],[[65323,65323],"mapped",[107]],[[65324,65324],"mapped",[108]],[[65325,65325],"mapped",[109]],[[65326,65326],"mapped",[110]],[[65327,65327],"mapped",[111]],[[65328,65328],"mapped",[112]],[[65329,65329],"mapped",[113]],[[65330,65330],"mapped",[114]],[[65331,65331],"mapped",[115]],[[65332,65332],"mapped",[116]],[[65333,65333],"mapped",[117]],[[65334,65334],"mapped",[118]],[[65335,65335],"mapped",[119]],[[65336,65336],"mapped",[120]],[[65337,65337],"mapped",[121]],[[65338,65338],"mapped",[122]],[[65339,65339],"disallowed_STD3_mapped",[91]],[[65340,65340],"disallowed_STD3_mapped",[92]],[[65341,65341],"disallowed_STD3_mapped",[93]],[[65342,65342],"disallowed_STD3_mapped",[94]],[[65343,65343],"disallowed_STD3_mapped",[95]],[[65344,65344],"disallowed_STD3_mapped",[96]],[[65345,65345],"mapped",[97]],[[65346,65346],"mapped",[98]],[[65347,65347],"mapped",[99]],[[65348,65348],"mapped",[100]],[[65349,65349],"mapped",[101]],[[65350,65350],"mapped",[102]],[[65351,65351],"mapped",[103]],[[65352,65352],"mapped",[104]],[[65353,65353],"mapped",[105]],[[65354,65354],"mapped",[106]],[[65355,65355],"mapped",[107]],[[65356,65356],"mapped",[108]],[[65357,65357],"mapped",[109]],[[65358,65358],"mapped",[110]],[[65359,65359],"mapped",[111]],[[65360,65360],"mapped",[112]],[[65361,65361],"mapped",[113]],[[65362,65362],"mapped",[114]],[[65363,65363],"mapped",[115]],[[65364,65364],"mapped",[116]],[[65365,65365],"mapped",[117]],[[65366,65366],"mapped",[118]],[[65367,65367],"mapped",[119]],[[65368,65368],"mapped",[120]],[[65369,65369],"mapped",[121]],[[65370,65370],"mapped",[122]],[[65371,65371],"disallowed_STD3_mapped",[123]],[[65372,65372],"disallowed_STD3_mapped",[124]],[[65373,65373],"disallowed_STD3_mapped",[125]],[[65374,65374],"disallowed_STD3_mapped",[126]],[[65375,65375],"mapped",[10629]],[[65376,65376],"mapped",[10630]],[[65377,65377],"mapped",[46]],[[65378,65378],"mapped",[12300]],[[65379,65379],"mapped",[12301]],[[65380,65380],"mapped",[12289]],[[65381,65381],"mapped",[12539]],[[65382,65382],"mapped",[12530]],[[65383,65383],"mapped",[12449]],[[65384,65384],"mapped",[12451]],[[65385,65385],"mapped",[12453]],[[65386,65386],"mapped",[12455]],[[65387,65387],"mapped",[12457]],[[65388,65388],"mapped",[12515]],[[65389,65389],"mapped",[12517]],[[65390,65390],"mapped",[12519]],[[65391,65391],"mapped",[12483]],[[65392,65392],"mapped",[12540]],[[65393,65393],"mapped",[12450]],[[65394,65394],"mapped",[12452]],[[65395,65395],"mapped",[12454]],[[65396,65396],"mapped",[12456]],[[65397,65397],"mapped",[12458]],[[65398,65398],"mapped",[12459]],[[65399,65399],"mapped",[12461]],[[65400,65400],"mapped",[12463]],[[65401,65401],"mapped",[12465]],[[65402,65402],"mapped",[12467]],[[65403,65403],"mapped",[12469]],[[65404,65404],"mapped",[12471]],[[65405,65405],"mapped",[12473]],[[65406,65406],"mapped",[12475]],[[65407,65407],"mapped",[12477]],[[65408,65408],"mapped",[12479]],[[65409,65409],"mapped",[12481]],[[65410,65410],"mapped",[12484]],[[65411,65411],"mapped",[12486]],[[65412,65412],"mapped",[12488]],[[65413,65413],"mapped",[12490]],[[65414,65414],"mapped",[12491]],[[65415,65415],"mapped",[12492]],[[65416,65416],"mapped",[12493]],[[65417,65417],"mapped",[12494]],[[65418,65418],"mapped",[12495]],[[65419,65419],"mapped",[12498]],[[65420,65420],"mapped",[12501]],[[65421,65421],"mapped",[12504]],[[65422,65422],"mapped",[12507]],[[65423,65423],"mapped",[12510]],[[65424,65424],"mapped",[12511]],[[65425,65425],"mapped",[12512]],[[65426,65426],"mapped",[12513]],[[65427,65427],"mapped",[12514]],[[65428,65428],"mapped",[12516]],[[65429,65429],"mapped",[12518]],[[65430,65430],"mapped",[12520]],[[65431,65431],"mapped",[12521]],[[65432,65432],"mapped",[12522]],[[65433,65433],"mapped",[12523]],[[65434,65434],"mapped",[12524]],[[65435,65435],"mapped",[12525]],[[65436,65436],"mapped",[12527]],[[65437,65437],"mapped",[12531]],[[65438,65438],"mapped",[12441]],[[65439,65439],"mapped",[12442]],[[65440,65440],"disallowed"],[[65441,65441],"mapped",[4352]],[[65442,65442],"mapped",[4353]],[[65443,65443],"mapped",[4522]],[[65444,65444],"mapped",[4354]],[[65445,65445],"mapped",[4524]],[[65446,65446],"mapped",[4525]],[[65447,65447],"mapped",[4355]],[[65448,65448],"mapped",[4356]],[[65449,65449],"mapped",[4357]],[[65450,65450],"mapped",[4528]],[[65451,65451],"mapped",[4529]],[[65452,65452],"mapped",[4530]],[[65453,65453],"mapped",[4531]],[[65454,65454],"mapped",[4532]],[[65455,65455],"mapped",[4533]],[[65456,65456],"mapped",[4378]],[[65457,65457],"mapped",[4358]],[[65458,65458],"mapped",[4359]],[[65459,65459],"mapped",[4360]],[[65460,65460],"mapped",[4385]],[[65461,65461],"mapped",[4361]],[[65462,65462],"mapped",[4362]],[[65463,65463],"mapped",[4363]],[[65464,65464],"mapped",[4364]],[[65465,65465],"mapped",[4365]],[[65466,65466],"mapped",[4366]],[[65467,65467],"mapped",[4367]],[[65468,65468],"mapped",[4368]],[[65469,65469],"mapped",[4369]],[[65470,65470],"mapped",[4370]],[[65471,65473],"disallowed"],[[65474,65474],"mapped",[4449]],[[65475,65475],"mapped",[4450]],[[65476,65476],"mapped",[4451]],[[65477,65477],"mapped",[4452]],[[65478,65478],"mapped",[4453]],[[65479,65479],"mapped",[4454]],[[65480,65481],"disallowed"],[[65482,65482],"mapped",[4455]],[[65483,65483],"mapped",[4456]],[[65484,65484],"mapped",[4457]],[[65485,65485],"mapped",[4458]],[[65486,65486],"mapped",[4459]],[[65487,65487],"mapped",[4460]],[[65488,65489],"disallowed"],[[65490,65490],"mapped",[4461]],[[65491,65491],"mapped",[4462]],[[65492,65492],"mapped",[4463]],[[65493,65493],"mapped",[4464]],[[65494,65494],"mapped",[4465]],[[65495,65495],"mapped",[4466]],[[65496,65497],"disallowed"],[[65498,65498],"mapped",[4467]],[[65499,65499],"mapped",[4468]],[[65500,65500],"mapped",[4469]],[[65501,65503],"disallowed"],[[65504,65504],"mapped",[162]],[[65505,65505],"mapped",[163]],[[65506,65506],"mapped",[172]],[[65507,65507],"disallowed_STD3_mapped",[32,772]],[[65508,65508],"mapped",[166]],[[65509,65509],"mapped",[165]],[[65510,65510],"mapped",[8361]],[[65511,65511],"disallowed"],[[65512,65512],"mapped",[9474]],[[65513,65513],"mapped",[8592]],[[65514,65514],"mapped",[8593]],[[65515,65515],"mapped",[8594]],[[65516,65516],"mapped",[8595]],[[65517,65517],"mapped",[9632]],[[65518,65518],"mapped",[9675]],[[65519,65528],"disallowed"],[[65529,65531],"disallowed"],[[65532,65532],"disallowed"],[[65533,65533],"disallowed"],[[65534,65535],"disallowed"],[[65536,65547],"valid"],[[65548,65548],"disallowed"],[[65549,65574],"valid"],[[65575,65575],"disallowed"],[[65576,65594],"valid"],[[65595,65595],"disallowed"],[[65596,65597],"valid"],[[65598,65598],"disallowed"],[[65599,65613],"valid"],[[65614,65615],"disallowed"],[[65616,65629],"valid"],[[65630,65663],"disallowed"],[[65664,65786],"valid"],[[65787,65791],"disallowed"],[[65792,65794],"valid",[],"NV8"],[[65795,65798],"disallowed"],[[65799,65843],"valid",[],"NV8"],[[65844,65846],"disallowed"],[[65847,65855],"valid",[],"NV8"],[[65856,65930],"valid",[],"NV8"],[[65931,65932],"valid",[],"NV8"],[[65933,65935],"disallowed"],[[65936,65947],"valid",[],"NV8"],[[65948,65951],"disallowed"],[[65952,65952],"valid",[],"NV8"],[[65953,65999],"disallowed"],[[66e3,66044],"valid",[],"NV8"],[[66045,66045],"valid"],[[66046,66175],"disallowed"],[[66176,66204],"valid"],[[66205,66207],"disallowed"],[[66208,66256],"valid"],[[66257,66271],"disallowed"],[[66272,66272],"valid"],[[66273,66299],"valid",[],"NV8"],[[66300,66303],"disallowed"],[[66304,66334],"valid"],[[66335,66335],"valid"],[[66336,66339],"valid",[],"NV8"],[[66340,66351],"disallowed"],[[66352,66368],"valid"],[[66369,66369],"valid",[],"NV8"],[[66370,66377],"valid"],[[66378,66378],"valid",[],"NV8"],[[66379,66383],"disallowed"],[[66384,66426],"valid"],[[66427,66431],"disallowed"],[[66432,66461],"valid"],[[66462,66462],"disallowed"],[[66463,66463],"valid",[],"NV8"],[[66464,66499],"valid"],[[66500,66503],"disallowed"],[[66504,66511],"valid"],[[66512,66517],"valid",[],"NV8"],[[66518,66559],"disallowed"],[[66560,66560],"mapped",[66600]],[[66561,66561],"mapped",[66601]],[[66562,66562],"mapped",[66602]],[[66563,66563],"mapped",[66603]],[[66564,66564],"mapped",[66604]],[[66565,66565],"mapped",[66605]],[[66566,66566],"mapped",[66606]],[[66567,66567],"mapped",[66607]],[[66568,66568],"mapped",[66608]],[[66569,66569],"mapped",[66609]],[[66570,66570],"mapped",[66610]],[[66571,66571],"mapped",[66611]],[[66572,66572],"mapped",[66612]],[[66573,66573],"mapped",[66613]],[[66574,66574],"mapped",[66614]],[[66575,66575],"mapped",[66615]],[[66576,66576],"mapped",[66616]],[[66577,66577],"mapped",[66617]],[[66578,66578],"mapped",[66618]],[[66579,66579],"mapped",[66619]],[[66580,66580],"mapped",[66620]],[[66581,66581],"mapped",[66621]],[[66582,66582],"mapped",[66622]],[[66583,66583],"mapped",[66623]],[[66584,66584],"mapped",[66624]],[[66585,66585],"mapped",[66625]],[[66586,66586],"mapped",[66626]],[[66587,66587],"mapped",[66627]],[[66588,66588],"mapped",[66628]],[[66589,66589],"mapped",[66629]],[[66590,66590],"mapped",[66630]],[[66591,66591],"mapped",[66631]],[[66592,66592],"mapped",[66632]],[[66593,66593],"mapped",[66633]],[[66594,66594],"mapped",[66634]],[[66595,66595],"mapped",[66635]],[[66596,66596],"mapped",[66636]],[[66597,66597],"mapped",[66637]],[[66598,66598],"mapped",[66638]],[[66599,66599],"mapped",[66639]],[[66600,66637],"valid"],[[66638,66717],"valid"],[[66718,66719],"disallowed"],[[66720,66729],"valid"],[[66730,66815],"disallowed"],[[66816,66855],"valid"],[[66856,66863],"disallowed"],[[66864,66915],"valid"],[[66916,66926],"disallowed"],[[66927,66927],"valid",[],"NV8"],[[66928,67071],"disallowed"],[[67072,67382],"valid"],[[67383,67391],"disallowed"],[[67392,67413],"valid"],[[67414,67423],"disallowed"],[[67424,67431],"valid"],[[67432,67583],"disallowed"],[[67584,67589],"valid"],[[67590,67591],"disallowed"],[[67592,67592],"valid"],[[67593,67593],"disallowed"],[[67594,67637],"valid"],[[67638,67638],"disallowed"],[[67639,67640],"valid"],[[67641,67643],"disallowed"],[[67644,67644],"valid"],[[67645,67646],"disallowed"],[[67647,67647],"valid"],[[67648,67669],"valid"],[[67670,67670],"disallowed"],[[67671,67679],"valid",[],"NV8"],[[67680,67702],"valid"],[[67703,67711],"valid",[],"NV8"],[[67712,67742],"valid"],[[67743,67750],"disallowed"],[[67751,67759],"valid",[],"NV8"],[[67760,67807],"disallowed"],[[67808,67826],"valid"],[[67827,67827],"disallowed"],[[67828,67829],"valid"],[[67830,67834],"disallowed"],[[67835,67839],"valid",[],"NV8"],[[67840,67861],"valid"],[[67862,67865],"valid",[],"NV8"],[[67866,67867],"valid",[],"NV8"],[[67868,67870],"disallowed"],[[67871,67871],"valid",[],"NV8"],[[67872,67897],"valid"],[[67898,67902],"disallowed"],[[67903,67903],"valid",[],"NV8"],[[67904,67967],"disallowed"],[[67968,68023],"valid"],[[68024,68027],"disallowed"],[[68028,68029],"valid",[],"NV8"],[[68030,68031],"valid"],[[68032,68047],"valid",[],"NV8"],[[68048,68049],"disallowed"],[[68050,68095],"valid",[],"NV8"],[[68096,68099],"valid"],[[68100,68100],"disallowed"],[[68101,68102],"valid"],[[68103,68107],"disallowed"],[[68108,68115],"valid"],[[68116,68116],"disallowed"],[[68117,68119],"valid"],[[68120,68120],"disallowed"],[[68121,68147],"valid"],[[68148,68151],"disallowed"],[[68152,68154],"valid"],[[68155,68158],"disallowed"],[[68159,68159],"valid"],[[68160,68167],"valid",[],"NV8"],[[68168,68175],"disallowed"],[[68176,68184],"valid",[],"NV8"],[[68185,68191],"disallowed"],[[68192,68220],"valid"],[[68221,68223],"valid",[],"NV8"],[[68224,68252],"valid"],[[68253,68255],"valid",[],"NV8"],[[68256,68287],"disallowed"],[[68288,68295],"valid"],[[68296,68296],"valid",[],"NV8"],[[68297,68326],"valid"],[[68327,68330],"disallowed"],[[68331,68342],"valid",[],"NV8"],[[68343,68351],"disallowed"],[[68352,68405],"valid"],[[68406,68408],"disallowed"],[[68409,68415],"valid",[],"NV8"],[[68416,68437],"valid"],[[68438,68439],"disallowed"],[[68440,68447],"valid",[],"NV8"],[[68448,68466],"valid"],[[68467,68471],"disallowed"],[[68472,68479],"valid",[],"NV8"],[[68480,68497],"valid"],[[68498,68504],"disallowed"],[[68505,68508],"valid",[],"NV8"],[[68509,68520],"disallowed"],[[68521,68527],"valid",[],"NV8"],[[68528,68607],"disallowed"],[[68608,68680],"valid"],[[68681,68735],"disallowed"],[[68736,68736],"mapped",[68800]],[[68737,68737],"mapped",[68801]],[[68738,68738],"mapped",[68802]],[[68739,68739],"mapped",[68803]],[[68740,68740],"mapped",[68804]],[[68741,68741],"mapped",[68805]],[[68742,68742],"mapped",[68806]],[[68743,68743],"mapped",[68807]],[[68744,68744],"mapped",[68808]],[[68745,68745],"mapped",[68809]],[[68746,68746],"mapped",[68810]],[[68747,68747],"mapped",[68811]],[[68748,68748],"mapped",[68812]],[[68749,68749],"mapped",[68813]],[[68750,68750],"mapped",[68814]],[[68751,68751],"mapped",[68815]],[[68752,68752],"mapped",[68816]],[[68753,68753],"mapped",[68817]],[[68754,68754],"mapped",[68818]],[[68755,68755],"mapped",[68819]],[[68756,68756],"mapped",[68820]],[[68757,68757],"mapped",[68821]],[[68758,68758],"mapped",[68822]],[[68759,68759],"mapped",[68823]],[[68760,68760],"mapped",[68824]],[[68761,68761],"mapped",[68825]],[[68762,68762],"mapped",[68826]],[[68763,68763],"mapped",[68827]],[[68764,68764],"mapped",[68828]],[[68765,68765],"mapped",[68829]],[[68766,68766],"mapped",[68830]],[[68767,68767],"mapped",[68831]],[[68768,68768],"mapped",[68832]],[[68769,68769],"mapped",[68833]],[[68770,68770],"mapped",[68834]],[[68771,68771],"mapped",[68835]],[[68772,68772],"mapped",[68836]],[[68773,68773],"mapped",[68837]],[[68774,68774],"mapped",[68838]],[[68775,68775],"mapped",[68839]],[[68776,68776],"mapped",[68840]],[[68777,68777],"mapped",[68841]],[[68778,68778],"mapped",[68842]],[[68779,68779],"mapped",[68843]],[[68780,68780],"mapped",[68844]],[[68781,68781],"mapped",[68845]],[[68782,68782],"mapped",[68846]],[[68783,68783],"mapped",[68847]],[[68784,68784],"mapped",[68848]],[[68785,68785],"mapped",[68849]],[[68786,68786],"mapped",[68850]],[[68787,68799],"disallowed"],[[68800,68850],"valid"],[[68851,68857],"disallowed"],[[68858,68863],"valid",[],"NV8"],[[68864,69215],"disallowed"],[[69216,69246],"valid",[],"NV8"],[[69247,69631],"disallowed"],[[69632,69702],"valid"],[[69703,69709],"valid",[],"NV8"],[[69710,69713],"disallowed"],[[69714,69733],"valid",[],"NV8"],[[69734,69743],"valid"],[[69744,69758],"disallowed"],[[69759,69759],"valid"],[[69760,69818],"valid"],[[69819,69820],"valid",[],"NV8"],[[69821,69821],"disallowed"],[[69822,69825],"valid",[],"NV8"],[[69826,69839],"disallowed"],[[69840,69864],"valid"],[[69865,69871],"disallowed"],[[69872,69881],"valid"],[[69882,69887],"disallowed"],[[69888,69940],"valid"],[[69941,69941],"disallowed"],[[69942,69951],"valid"],[[69952,69955],"valid",[],"NV8"],[[69956,69967],"disallowed"],[[69968,70003],"valid"],[[70004,70005],"valid",[],"NV8"],[[70006,70006],"valid"],[[70007,70015],"disallowed"],[[70016,70084],"valid"],[[70085,70088],"valid",[],"NV8"],[[70089,70089],"valid",[],"NV8"],[[70090,70092],"valid"],[[70093,70093],"valid",[],"NV8"],[[70094,70095],"disallowed"],[[70096,70105],"valid"],[[70106,70106],"valid"],[[70107,70107],"valid",[],"NV8"],[[70108,70108],"valid"],[[70109,70111],"valid",[],"NV8"],[[70112,70112],"disallowed"],[[70113,70132],"valid",[],"NV8"],[[70133,70143],"disallowed"],[[70144,70161],"valid"],[[70162,70162],"disallowed"],[[70163,70199],"valid"],[[70200,70205],"valid",[],"NV8"],[[70206,70271],"disallowed"],[[70272,70278],"valid"],[[70279,70279],"disallowed"],[[70280,70280],"valid"],[[70281,70281],"disallowed"],[[70282,70285],"valid"],[[70286,70286],"disallowed"],[[70287,70301],"valid"],[[70302,70302],"disallowed"],[[70303,70312],"valid"],[[70313,70313],"valid",[],"NV8"],[[70314,70319],"disallowed"],[[70320,70378],"valid"],[[70379,70383],"disallowed"],[[70384,70393],"valid"],[[70394,70399],"disallowed"],[[70400,70400],"valid"],[[70401,70403],"valid"],[[70404,70404],"disallowed"],[[70405,70412],"valid"],[[70413,70414],"disallowed"],[[70415,70416],"valid"],[[70417,70418],"disallowed"],[[70419,70440],"valid"],[[70441,70441],"disallowed"],[[70442,70448],"valid"],[[70449,70449],"disallowed"],[[70450,70451],"valid"],[[70452,70452],"disallowed"],[[70453,70457],"valid"],[[70458,70459],"disallowed"],[[70460,70468],"valid"],[[70469,70470],"disallowed"],[[70471,70472],"valid"],[[70473,70474],"disallowed"],[[70475,70477],"valid"],[[70478,70479],"disallowed"],[[70480,70480],"valid"],[[70481,70486],"disallowed"],[[70487,70487],"valid"],[[70488,70492],"disallowed"],[[70493,70499],"valid"],[[70500,70501],"disallowed"],[[70502,70508],"valid"],[[70509,70511],"disallowed"],[[70512,70516],"valid"],[[70517,70783],"disallowed"],[[70784,70853],"valid"],[[70854,70854],"valid",[],"NV8"],[[70855,70855],"valid"],[[70856,70863],"disallowed"],[[70864,70873],"valid"],[[70874,71039],"disallowed"],[[71040,71093],"valid"],[[71094,71095],"disallowed"],[[71096,71104],"valid"],[[71105,71113],"valid",[],"NV8"],[[71114,71127],"valid",[],"NV8"],[[71128,71133],"valid"],[[71134,71167],"disallowed"],[[71168,71232],"valid"],[[71233,71235],"valid",[],"NV8"],[[71236,71236],"valid"],[[71237,71247],"disallowed"],[[71248,71257],"valid"],[[71258,71295],"disallowed"],[[71296,71351],"valid"],[[71352,71359],"disallowed"],[[71360,71369],"valid"],[[71370,71423],"disallowed"],[[71424,71449],"valid"],[[71450,71452],"disallowed"],[[71453,71467],"valid"],[[71468,71471],"disallowed"],[[71472,71481],"valid"],[[71482,71487],"valid",[],"NV8"],[[71488,71839],"disallowed"],[[71840,71840],"mapped",[71872]],[[71841,71841],"mapped",[71873]],[[71842,71842],"mapped",[71874]],[[71843,71843],"mapped",[71875]],[[71844,71844],"mapped",[71876]],[[71845,71845],"mapped",[71877]],[[71846,71846],"mapped",[71878]],[[71847,71847],"mapped",[71879]],[[71848,71848],"mapped",[71880]],[[71849,71849],"mapped",[71881]],[[71850,71850],"mapped",[71882]],[[71851,71851],"mapped",[71883]],[[71852,71852],"mapped",[71884]],[[71853,71853],"mapped",[71885]],[[71854,71854],"mapped",[71886]],[[71855,71855],"mapped",[71887]],[[71856,71856],"mapped",[71888]],[[71857,71857],"mapped",[71889]],[[71858,71858],"mapped",[71890]],[[71859,71859],"mapped",[71891]],[[71860,71860],"mapped",[71892]],[[71861,71861],"mapped",[71893]],[[71862,71862],"mapped",[71894]],[[71863,71863],"mapped",[71895]],[[71864,71864],"mapped",[71896]],[[71865,71865],"mapped",[71897]],[[71866,71866],"mapped",[71898]],[[71867,71867],"mapped",[71899]],[[71868,71868],"mapped",[71900]],[[71869,71869],"mapped",[71901]],[[71870,71870],"mapped",[71902]],[[71871,71871],"mapped",[71903]],[[71872,71913],"valid"],[[71914,71922],"valid",[],"NV8"],[[71923,71934],"disallowed"],[[71935,71935],"valid"],[[71936,72383],"disallowed"],[[72384,72440],"valid"],[[72441,73727],"disallowed"],[[73728,74606],"valid"],[[74607,74648],"valid"],[[74649,74649],"valid"],[[74650,74751],"disallowed"],[[74752,74850],"valid",[],"NV8"],[[74851,74862],"valid",[],"NV8"],[[74863,74863],"disallowed"],[[74864,74867],"valid",[],"NV8"],[[74868,74868],"valid",[],"NV8"],[[74869,74879],"disallowed"],[[74880,75075],"valid"],[[75076,77823],"disallowed"],[[77824,78894],"valid"],[[78895,82943],"disallowed"],[[82944,83526],"valid"],[[83527,92159],"disallowed"],[[92160,92728],"valid"],[[92729,92735],"disallowed"],[[92736,92766],"valid"],[[92767,92767],"disallowed"],[[92768,92777],"valid"],[[92778,92781],"disallowed"],[[92782,92783],"valid",[],"NV8"],[[92784,92879],"disallowed"],[[92880,92909],"valid"],[[92910,92911],"disallowed"],[[92912,92916],"valid"],[[92917,92917],"valid",[],"NV8"],[[92918,92927],"disallowed"],[[92928,92982],"valid"],[[92983,92991],"valid",[],"NV8"],[[92992,92995],"valid"],[[92996,92997],"valid",[],"NV8"],[[92998,93007],"disallowed"],[[93008,93017],"valid"],[[93018,93018],"disallowed"],[[93019,93025],"valid",[],"NV8"],[[93026,93026],"disallowed"],[[93027,93047],"valid"],[[93048,93052],"disallowed"],[[93053,93071],"valid"],[[93072,93951],"disallowed"],[[93952,94020],"valid"],[[94021,94031],"disallowed"],[[94032,94078],"valid"],[[94079,94094],"disallowed"],[[94095,94111],"valid"],[[94112,110591],"disallowed"],[[110592,110593],"valid"],[[110594,113663],"disallowed"],[[113664,113770],"valid"],[[113771,113775],"disallowed"],[[113776,113788],"valid"],[[113789,113791],"disallowed"],[[113792,113800],"valid"],[[113801,113807],"disallowed"],[[113808,113817],"valid"],[[113818,113819],"disallowed"],[[113820,113820],"valid",[],"NV8"],[[113821,113822],"valid"],[[113823,113823],"valid",[],"NV8"],[[113824,113827],"ignored"],[[113828,118783],"disallowed"],[[118784,119029],"valid",[],"NV8"],[[119030,119039],"disallowed"],[[119040,119078],"valid",[],"NV8"],[[119079,119080],"disallowed"],[[119081,119081],"valid",[],"NV8"],[[119082,119133],"valid",[],"NV8"],[[119134,119134],"mapped",[119127,119141]],[[119135,119135],"mapped",[119128,119141]],[[119136,119136],"mapped",[119128,119141,119150]],[[119137,119137],"mapped",[119128,119141,119151]],[[119138,119138],"mapped",[119128,119141,119152]],[[119139,119139],"mapped",[119128,119141,119153]],[[119140,119140],"mapped",[119128,119141,119154]],[[119141,119154],"valid",[],"NV8"],[[119155,119162],"disallowed"],[[119163,119226],"valid",[],"NV8"],[[119227,119227],"mapped",[119225,119141]],[[119228,119228],"mapped",[119226,119141]],[[119229,119229],"mapped",[119225,119141,119150]],[[119230,119230],"mapped",[119226,119141,119150]],[[119231,119231],"mapped",[119225,119141,119151]],[[119232,119232],"mapped",[119226,119141,119151]],[[119233,119261],"valid",[],"NV8"],[[119262,119272],"valid",[],"NV8"],[[119273,119295],"disallowed"],[[119296,119365],"valid",[],"NV8"],[[119366,119551],"disallowed"],[[119552,119638],"valid",[],"NV8"],[[119639,119647],"disallowed"],[[119648,119665],"valid",[],"NV8"],[[119666,119807],"disallowed"],[[119808,119808],"mapped",[97]],[[119809,119809],"mapped",[98]],[[119810,119810],"mapped",[99]],[[119811,119811],"mapped",[100]],[[119812,119812],"mapped",[101]],[[119813,119813],"mapped",[102]],[[119814,119814],"mapped",[103]],[[119815,119815],"mapped",[104]],[[119816,119816],"mapped",[105]],[[119817,119817],"mapped",[106]],[[119818,119818],"mapped",[107]],[[119819,119819],"mapped",[108]],[[119820,119820],"mapped",[109]],[[119821,119821],"mapped",[110]],[[119822,119822],"mapped",[111]],[[119823,119823],"mapped",[112]],[[119824,119824],"mapped",[113]],[[119825,119825],"mapped",[114]],[[119826,119826],"mapped",[115]],[[119827,119827],"mapped",[116]],[[119828,119828],"mapped",[117]],[[119829,119829],"mapped",[118]],[[119830,119830],"mapped",[119]],[[119831,119831],"mapped",[120]],[[119832,119832],"mapped",[121]],[[119833,119833],"mapped",[122]],[[119834,119834],"mapped",[97]],[[119835,119835],"mapped",[98]],[[119836,119836],"mapped",[99]],[[119837,119837],"mapped",[100]],[[119838,119838],"mapped",[101]],[[119839,119839],"mapped",[102]],[[119840,119840],"mapped",[103]],[[119841,119841],"mapped",[104]],[[119842,119842],"mapped",[105]],[[119843,119843],"mapped",[106]],[[119844,119844],"mapped",[107]],[[119845,119845],"mapped",[108]],[[119846,119846],"mapped",[109]],[[119847,119847],"mapped",[110]],[[119848,119848],"mapped",[111]],[[119849,119849],"mapped",[112]],[[119850,119850],"mapped",[113]],[[119851,119851],"mapped",[114]],[[119852,119852],"mapped",[115]],[[119853,119853],"mapped",[116]],[[119854,119854],"mapped",[117]],[[119855,119855],"mapped",[118]],[[119856,119856],"mapped",[119]],[[119857,119857],"mapped",[120]],[[119858,119858],"mapped",[121]],[[119859,119859],"mapped",[122]],[[119860,119860],"mapped",[97]],[[119861,119861],"mapped",[98]],[[119862,119862],"mapped",[99]],[[119863,119863],"mapped",[100]],[[119864,119864],"mapped",[101]],[[119865,119865],"mapped",[102]],[[119866,119866],"mapped",[103]],[[119867,119867],"mapped",[104]],[[119868,119868],"mapped",[105]],[[119869,119869],"mapped",[106]],[[119870,119870],"mapped",[107]],[[119871,119871],"mapped",[108]],[[119872,119872],"mapped",[109]],[[119873,119873],"mapped",[110]],[[119874,119874],"mapped",[111]],[[119875,119875],"mapped",[112]],[[119876,119876],"mapped",[113]],[[119877,119877],"mapped",[114]],[[119878,119878],"mapped",[115]],[[119879,119879],"mapped",[116]],[[119880,119880],"mapped",[117]],[[119881,119881],"mapped",[118]],[[119882,119882],"mapped",[119]],[[119883,119883],"mapped",[120]],[[119884,119884],"mapped",[121]],[[119885,119885],"mapped",[122]],[[119886,119886],"mapped",[97]],[[119887,119887],"mapped",[98]],[[119888,119888],"mapped",[99]],[[119889,119889],"mapped",[100]],[[119890,119890],"mapped",[101]],[[119891,119891],"mapped",[102]],[[119892,119892],"mapped",[103]],[[119893,119893],"disallowed"],[[119894,119894],"mapped",[105]],[[119895,119895],"mapped",[106]],[[119896,119896],"mapped",[107]],[[119897,119897],"mapped",[108]],[[119898,119898],"mapped",[109]],[[119899,119899],"mapped",[110]],[[119900,119900],"mapped",[111]],[[119901,119901],"mapped",[112]],[[119902,119902],"mapped",[113]],[[119903,119903],"mapped",[114]],[[119904,119904],"mapped",[115]],[[119905,119905],"mapped",[116]],[[119906,119906],"mapped",[117]],[[119907,119907],"mapped",[118]],[[119908,119908],"mapped",[119]],[[119909,119909],"mapped",[120]],[[119910,119910],"mapped",[121]],[[119911,119911],"mapped",[122]],[[119912,119912],"mapped",[97]],[[119913,119913],"mapped",[98]],[[119914,119914],"mapped",[99]],[[119915,119915],"mapped",[100]],[[119916,119916],"mapped",[101]],[[119917,119917],"mapped",[102]],[[119918,119918],"mapped",[103]],[[119919,119919],"mapped",[104]],[[119920,119920],"mapped",[105]],[[119921,119921],"mapped",[106]],[[119922,119922],"mapped",[107]],[[119923,119923],"mapped",[108]],[[119924,119924],"mapped",[109]],[[119925,119925],"mapped",[110]],[[119926,119926],"mapped",[111]],[[119927,119927],"mapped",[112]],[[119928,119928],"mapped",[113]],[[119929,119929],"mapped",[114]],[[119930,119930],"mapped",[115]],[[119931,119931],"mapped",[116]],[[119932,119932],"mapped",[117]],[[119933,119933],"mapped",[118]],[[119934,119934],"mapped",[119]],[[119935,119935],"mapped",[120]],[[119936,119936],"mapped",[121]],[[119937,119937],"mapped",[122]],[[119938,119938],"mapped",[97]],[[119939,119939],"mapped",[98]],[[119940,119940],"mapped",[99]],[[119941,119941],"mapped",[100]],[[119942,119942],"mapped",[101]],[[119943,119943],"mapped",[102]],[[119944,119944],"mapped",[103]],[[119945,119945],"mapped",[104]],[[119946,119946],"mapped",[105]],[[119947,119947],"mapped",[106]],[[119948,119948],"mapped",[107]],[[119949,119949],"mapped",[108]],[[119950,119950],"mapped",[109]],[[119951,119951],"mapped",[110]],[[119952,119952],"mapped",[111]],[[119953,119953],"mapped",[112]],[[119954,119954],"mapped",[113]],[[119955,119955],"mapped",[114]],[[119956,119956],"mapped",[115]],[[119957,119957],"mapped",[116]],[[119958,119958],"mapped",[117]],[[119959,119959],"mapped",[118]],[[119960,119960],"mapped",[119]],[[119961,119961],"mapped",[120]],[[119962,119962],"mapped",[121]],[[119963,119963],"mapped",[122]],[[119964,119964],"mapped",[97]],[[119965,119965],"disallowed"],[[119966,119966],"mapped",[99]],[[119967,119967],"mapped",[100]],[[119968,119969],"disallowed"],[[119970,119970],"mapped",[103]],[[119971,119972],"disallowed"],[[119973,119973],"mapped",[106]],[[119974,119974],"mapped",[107]],[[119975,119976],"disallowed"],[[119977,119977],"mapped",[110]],[[119978,119978],"mapped",[111]],[[119979,119979],"mapped",[112]],[[119980,119980],"mapped",[113]],[[119981,119981],"disallowed"],[[119982,119982],"mapped",[115]],[[119983,119983],"mapped",[116]],[[119984,119984],"mapped",[117]],[[119985,119985],"mapped",[118]],[[119986,119986],"mapped",[119]],[[119987,119987],"mapped",[120]],[[119988,119988],"mapped",[121]],[[119989,119989],"mapped",[122]],[[119990,119990],"mapped",[97]],[[119991,119991],"mapped",[98]],[[119992,119992],"mapped",[99]],[[119993,119993],"mapped",[100]],[[119994,119994],"disallowed"],[[119995,119995],"mapped",[102]],[[119996,119996],"disallowed"],[[119997,119997],"mapped",[104]],[[119998,119998],"mapped",[105]],[[119999,119999],"mapped",[106]],[[12e4,12e4],"mapped",[107]],[[120001,120001],"mapped",[108]],[[120002,120002],"mapped",[109]],[[120003,120003],"mapped",[110]],[[120004,120004],"disallowed"],[[120005,120005],"mapped",[112]],[[120006,120006],"mapped",[113]],[[120007,120007],"mapped",[114]],[[120008,120008],"mapped",[115]],[[120009,120009],"mapped",[116]],[[120010,120010],"mapped",[117]],[[120011,120011],"mapped",[118]],[[120012,120012],"mapped",[119]],[[120013,120013],"mapped",[120]],[[120014,120014],"mapped",[121]],[[120015,120015],"mapped",[122]],[[120016,120016],"mapped",[97]],[[120017,120017],"mapped",[98]],[[120018,120018],"mapped",[99]],[[120019,120019],"mapped",[100]],[[120020,120020],"mapped",[101]],[[120021,120021],"mapped",[102]],[[120022,120022],"mapped",[103]],[[120023,120023],"mapped",[104]],[[120024,120024],"mapped",[105]],[[120025,120025],"mapped",[106]],[[120026,120026],"mapped",[107]],[[120027,120027],"mapped",[108]],[[120028,120028],"mapped",[109]],[[120029,120029],"mapped",[110]],[[120030,120030],"mapped",[111]],[[120031,120031],"mapped",[112]],[[120032,120032],"mapped",[113]],[[120033,120033],"mapped",[114]],[[120034,120034],"mapped",[115]],[[120035,120035],"mapped",[116]],[[120036,120036],"mapped",[117]],[[120037,120037],"mapped",[118]],[[120038,120038],"mapped",[119]],[[120039,120039],"mapped",[120]],[[120040,120040],"mapped",[121]],[[120041,120041],"mapped",[122]],[[120042,120042],"mapped",[97]],[[120043,120043],"mapped",[98]],[[120044,120044],"mapped",[99]],[[120045,120045],"mapped",[100]],[[120046,120046],"mapped",[101]],[[120047,120047],"mapped",[102]],[[120048,120048],"mapped",[103]],[[120049,120049],"mapped",[104]],[[120050,120050],"mapped",[105]],[[120051,120051],"mapped",[106]],[[120052,120052],"mapped",[107]],[[120053,120053],"mapped",[108]],[[120054,120054],"mapped",[109]],[[120055,120055],"mapped",[110]],[[120056,120056],"mapped",[111]],[[120057,120057],"mapped",[112]],[[120058,120058],"mapped",[113]],[[120059,120059],"mapped",[114]],[[120060,120060],"mapped",[115]],[[120061,120061],"mapped",[116]],[[120062,120062],"mapped",[117]],[[120063,120063],"mapped",[118]],[[120064,120064],"mapped",[119]],[[120065,120065],"mapped",[120]],[[120066,120066],"mapped",[121]],[[120067,120067],"mapped",[122]],[[120068,120068],"mapped",[97]],[[120069,120069],"mapped",[98]],[[120070,120070],"disallowed"],[[120071,120071],"mapped",[100]],[[120072,120072],"mapped",[101]],[[120073,120073],"mapped",[102]],[[120074,120074],"mapped",[103]],[[120075,120076],"disallowed"],[[120077,120077],"mapped",[106]],[[120078,120078],"mapped",[107]],[[120079,120079],"mapped",[108]],[[120080,120080],"mapped",[109]],[[120081,120081],"mapped",[110]],[[120082,120082],"mapped",[111]],[[120083,120083],"mapped",[112]],[[120084,120084],"mapped",[113]],[[120085,120085],"disallowed"],[[120086,120086],"mapped",[115]],[[120087,120087],"mapped",[116]],[[120088,120088],"mapped",[117]],[[120089,120089],"mapped",[118]],[[120090,120090],"mapped",[119]],[[120091,120091],"mapped",[120]],[[120092,120092],"mapped",[121]],[[120093,120093],"disallowed"],[[120094,120094],"mapped",[97]],[[120095,120095],"mapped",[98]],[[120096,120096],"mapped",[99]],[[120097,120097],"mapped",[100]],[[120098,120098],"mapped",[101]],[[120099,120099],"mapped",[102]],[[120100,120100],"mapped",[103]],[[120101,120101],"mapped",[104]],[[120102,120102],"mapped",[105]],[[120103,120103],"mapped",[106]],[[120104,120104],"mapped",[107]],[[120105,120105],"mapped",[108]],[[120106,120106],"mapped",[109]],[[120107,120107],"mapped",[110]],[[120108,120108],"mapped",[111]],[[120109,120109],"mapped",[112]],[[120110,120110],"mapped",[113]],[[120111,120111],"mapped",[114]],[[120112,120112],"mapped",[115]],[[120113,120113],"mapped",[116]],[[120114,120114],"mapped",[117]],[[120115,120115],"mapped",[118]],[[120116,120116],"mapped",[119]],[[120117,120117],"mapped",[120]],[[120118,120118],"mapped",[121]],[[120119,120119],"mapped",[122]],[[120120,120120],"mapped",[97]],[[120121,120121],"mapped",[98]],[[120122,120122],"disallowed"],[[120123,120123],"mapped",[100]],[[120124,120124],"mapped",[101]],[[120125,120125],"mapped",[102]],[[120126,120126],"mapped",[103]],[[120127,120127],"disallowed"],[[120128,120128],"mapped",[105]],[[120129,120129],"mapped",[106]],[[120130,120130],"mapped",[107]],[[120131,120131],"mapped",[108]],[[120132,120132],"mapped",[109]],[[120133,120133],"disallowed"],[[120134,120134],"mapped",[111]],[[120135,120137],"disallowed"],[[120138,120138],"mapped",[115]],[[120139,120139],"mapped",[116]],[[120140,120140],"mapped",[117]],[[120141,120141],"mapped",[118]],[[120142,120142],"mapped",[119]],[[120143,120143],"mapped",[120]],[[120144,120144],"mapped",[121]],[[120145,120145],"disallowed"],[[120146,120146],"mapped",[97]],[[120147,120147],"mapped",[98]],[[120148,120148],"mapped",[99]],[[120149,120149],"mapped",[100]],[[120150,120150],"mapped",[101]],[[120151,120151],"mapped",[102]],[[120152,120152],"mapped",[103]],[[120153,120153],"mapped",[104]],[[120154,120154],"mapped",[105]],[[120155,120155],"mapped",[106]],[[120156,120156],"mapped",[107]],[[120157,120157],"mapped",[108]],[[120158,120158],"mapped",[109]],[[120159,120159],"mapped",[110]],[[120160,120160],"mapped",[111]],[[120161,120161],"mapped",[112]],[[120162,120162],"mapped",[113]],[[120163,120163],"mapped",[114]],[[120164,120164],"mapped",[115]],[[120165,120165],"mapped",[116]],[[120166,120166],"mapped",[117]],[[120167,120167],"mapped",[118]],[[120168,120168],"mapped",[119]],[[120169,120169],"mapped",[120]],[[120170,120170],"mapped",[121]],[[120171,120171],"mapped",[122]],[[120172,120172],"mapped",[97]],[[120173,120173],"mapped",[98]],[[120174,120174],"mapped",[99]],[[120175,120175],"mapped",[100]],[[120176,120176],"mapped",[101]],[[120177,120177],"mapped",[102]],[[120178,120178],"mapped",[103]],[[120179,120179],"mapped",[104]],[[120180,120180],"mapped",[105]],[[120181,120181],"mapped",[106]],[[120182,120182],"mapped",[107]],[[120183,120183],"mapped",[108]],[[120184,120184],"mapped",[109]],[[120185,120185],"mapped",[110]],[[120186,120186],"mapped",[111]],[[120187,120187],"mapped",[112]],[[120188,120188],"mapped",[113]],[[120189,120189],"mapped",[114]],[[120190,120190],"mapped",[115]],[[120191,120191],"mapped",[116]],[[120192,120192],"mapped",[117]],[[120193,120193],"mapped",[118]],[[120194,120194],"mapped",[119]],[[120195,120195],"mapped",[120]],[[120196,120196],"mapped",[121]],[[120197,120197],"mapped",[122]],[[120198,120198],"mapped",[97]],[[120199,120199],"mapped",[98]],[[120200,120200],"mapped",[99]],[[120201,120201],"mapped",[100]],[[120202,120202],"mapped",[101]],[[120203,120203],"mapped",[102]],[[120204,120204],"mapped",[103]],[[120205,120205],"mapped",[104]],[[120206,120206],"mapped",[105]],[[120207,120207],"mapped",[106]],[[120208,120208],"mapped",[107]],[[120209,120209],"mapped",[108]],[[120210,120210],"mapped",[109]],[[120211,120211],"mapped",[110]],[[120212,120212],"mapped",[111]],[[120213,120213],"mapped",[112]],[[120214,120214],"mapped",[113]],[[120215,120215],"mapped",[114]],[[120216,120216],"mapped",[115]],[[120217,120217],"mapped",[116]],[[120218,120218],"mapped",[117]],[[120219,120219],"mapped",[118]],[[120220,120220],"mapped",[119]],[[120221,120221],"mapped",[120]],[[120222,120222],"mapped",[121]],[[120223,120223],"mapped",[122]],[[120224,120224],"mapped",[97]],[[120225,120225],"mapped",[98]],[[120226,120226],"mapped",[99]],[[120227,120227],"mapped",[100]],[[120228,120228],"mapped",[101]],[[120229,120229],"mapped",[102]],[[120230,120230],"mapped",[103]],[[120231,120231],"mapped",[104]],[[120232,120232],"mapped",[105]],[[120233,120233],"mapped",[106]],[[120234,120234],"mapped",[107]],[[120235,120235],"mapped",[108]],[[120236,120236],"mapped",[109]],[[120237,120237],"mapped",[110]],[[120238,120238],"mapped",[111]],[[120239,120239],"mapped",[112]],[[120240,120240],"mapped",[113]],[[120241,120241],"mapped",[114]],[[120242,120242],"mapped",[115]],[[120243,120243],"mapped",[116]],[[120244,120244],"mapped",[117]],[[120245,120245],"mapped",[118]],[[120246,120246],"mapped",[119]],[[120247,120247],"mapped",[120]],[[120248,120248],"mapped",[121]],[[120249,120249],"mapped",[122]],[[120250,120250],"mapped",[97]],[[120251,120251],"mapped",[98]],[[120252,120252],"mapped",[99]],[[120253,120253],"mapped",[100]],[[120254,120254],"mapped",[101]],[[120255,120255],"mapped",[102]],[[120256,120256],"mapped",[103]],[[120257,120257],"mapped",[104]],[[120258,120258],"mapped",[105]],[[120259,120259],"mapped",[106]],[[120260,120260],"mapped",[107]],[[120261,120261],"mapped",[108]],[[120262,120262],"mapped",[109]],[[120263,120263],"mapped",[110]],[[120264,120264],"mapped",[111]],[[120265,120265],"mapped",[112]],[[120266,120266],"mapped",[113]],[[120267,120267],"mapped",[114]],[[120268,120268],"mapped",[115]],[[120269,120269],"mapped",[116]],[[120270,120270],"mapped",[117]],[[120271,120271],"mapped",[118]],[[120272,120272],"mapped",[119]],[[120273,120273],"mapped",[120]],[[120274,120274],"mapped",[121]],[[120275,120275],"mapped",[122]],[[120276,120276],"mapped",[97]],[[120277,120277],"mapped",[98]],[[120278,120278],"mapped",[99]],[[120279,120279],"mapped",[100]],[[120280,120280],"mapped",[101]],[[120281,120281],"mapped",[102]],[[120282,120282],"mapped",[103]],[[120283,120283],"mapped",[104]],[[120284,120284],"mapped",[105]],[[120285,120285],"mapped",[106]],[[120286,120286],"mapped",[107]],[[120287,120287],"mapped",[108]],[[120288,120288],"mapped",[109]],[[120289,120289],"mapped",[110]],[[120290,120290],"mapped",[111]],[[120291,120291],"mapped",[112]],[[120292,120292],"mapped",[113]],[[120293,120293],"mapped",[114]],[[120294,120294],"mapped",[115]],[[120295,120295],"mapped",[116]],[[120296,120296],"mapped",[117]],[[120297,120297],"mapped",[118]],[[120298,120298],"mapped",[119]],[[120299,120299],"mapped",[120]],[[120300,120300],"mapped",[121]],[[120301,120301],"mapped",[122]],[[120302,120302],"mapped",[97]],[[120303,120303],"mapped",[98]],[[120304,120304],"mapped",[99]],[[120305,120305],"mapped",[100]],[[120306,120306],"mapped",[101]],[[120307,120307],"mapped",[102]],[[120308,120308],"mapped",[103]],[[120309,120309],"mapped",[104]],[[120310,120310],"mapped",[105]],[[120311,120311],"mapped",[106]],[[120312,120312],"mapped",[107]],[[120313,120313],"mapped",[108]],[[120314,120314],"mapped",[109]],[[120315,120315],"mapped",[110]],[[120316,120316],"mapped",[111]],[[120317,120317],"mapped",[112]],[[120318,120318],"mapped",[113]],[[120319,120319],"mapped",[114]],[[120320,120320],"mapped",[115]],[[120321,120321],"mapped",[116]],[[120322,120322],"mapped",[117]],[[120323,120323],"mapped",[118]],[[120324,120324],"mapped",[119]],[[120325,120325],"mapped",[120]],[[120326,120326],"mapped",[121]],[[120327,120327],"mapped",[122]],[[120328,120328],"mapped",[97]],[[120329,120329],"mapped",[98]],[[120330,120330],"mapped",[99]],[[120331,120331],"mapped",[100]],[[120332,120332],"mapped",[101]],[[120333,120333],"mapped",[102]],[[120334,120334],"mapped",[103]],[[120335,120335],"mapped",[104]],[[120336,120336],"mapped",[105]],[[120337,120337],"mapped",[106]],[[120338,120338],"mapped",[107]],[[120339,120339],"mapped",[108]],[[120340,120340],"mapped",[109]],[[120341,120341],"mapped",[110]],[[120342,120342],"mapped",[111]],[[120343,120343],"mapped",[112]],[[120344,120344],"mapped",[113]],[[120345,120345],"mapped",[114]],[[120346,120346],"mapped",[115]],[[120347,120347],"mapped",[116]],[[120348,120348],"mapped",[117]],[[120349,120349],"mapped",[118]],[[120350,120350],"mapped",[119]],[[120351,120351],"mapped",[120]],[[120352,120352],"mapped",[121]],[[120353,120353],"mapped",[122]],[[120354,120354],"mapped",[97]],[[120355,120355],"mapped",[98]],[[120356,120356],"mapped",[99]],[[120357,120357],"mapped",[100]],[[120358,120358],"mapped",[101]],[[120359,120359],"mapped",[102]],[[120360,120360],"mapped",[103]],[[120361,120361],"mapped",[104]],[[120362,120362],"mapped",[105]],[[120363,120363],"mapped",[106]],[[120364,120364],"mapped",[107]],[[120365,120365],"mapped",[108]],[[120366,120366],"mapped",[109]],[[120367,120367],"mapped",[110]],[[120368,120368],"mapped",[111]],[[120369,120369],"mapped",[112]],[[120370,120370],"mapped",[113]],[[120371,120371],"mapped",[114]],[[120372,120372],"mapped",[115]],[[120373,120373],"mapped",[116]],[[120374,120374],"mapped",[117]],[[120375,120375],"mapped",[118]],[[120376,120376],"mapped",[119]],[[120377,120377],"mapped",[120]],[[120378,120378],"mapped",[121]],[[120379,120379],"mapped",[122]],[[120380,120380],"mapped",[97]],[[120381,120381],"mapped",[98]],[[120382,120382],"mapped",[99]],[[120383,120383],"mapped",[100]],[[120384,120384],"mapped",[101]],[[120385,120385],"mapped",[102]],[[120386,120386],"mapped",[103]],[[120387,120387],"mapped",[104]],[[120388,120388],"mapped",[105]],[[120389,120389],"mapped",[106]],[[120390,120390],"mapped",[107]],[[120391,120391],"mapped",[108]],[[120392,120392],"mapped",[109]],[[120393,120393],"mapped",[110]],[[120394,120394],"mapped",[111]],[[120395,120395],"mapped",[112]],[[120396,120396],"mapped",[113]],[[120397,120397],"mapped",[114]],[[120398,120398],"mapped",[115]],[[120399,120399],"mapped",[116]],[[120400,120400],"mapped",[117]],[[120401,120401],"mapped",[118]],[[120402,120402],"mapped",[119]],[[120403,120403],"mapped",[120]],[[120404,120404],"mapped",[121]],[[120405,120405],"mapped",[122]],[[120406,120406],"mapped",[97]],[[120407,120407],"mapped",[98]],[[120408,120408],"mapped",[99]],[[120409,120409],"mapped",[100]],[[120410,120410],"mapped",[101]],[[120411,120411],"mapped",[102]],[[120412,120412],"mapped",[103]],[[120413,120413],"mapped",[104]],[[120414,120414],"mapped",[105]],[[120415,120415],"mapped",[106]],[[120416,120416],"mapped",[107]],[[120417,120417],"mapped",[108]],[[120418,120418],"mapped",[109]],[[120419,120419],"mapped",[110]],[[120420,120420],"mapped",[111]],[[120421,120421],"mapped",[112]],[[120422,120422],"mapped",[113]],[[120423,120423],"mapped",[114]],[[120424,120424],"mapped",[115]],[[120425,120425],"mapped",[116]],[[120426,120426],"mapped",[117]],[[120427,120427],"mapped",[118]],[[120428,120428],"mapped",[119]],[[120429,120429],"mapped",[120]],[[120430,120430],"mapped",[121]],[[120431,120431],"mapped",[122]],[[120432,120432],"mapped",[97]],[[120433,120433],"mapped",[98]],[[120434,120434],"mapped",[99]],[[120435,120435],"mapped",[100]],[[120436,120436],"mapped",[101]],[[120437,120437],"mapped",[102]],[[120438,120438],"mapped",[103]],[[120439,120439],"mapped",[104]],[[120440,120440],"mapped",[105]],[[120441,120441],"mapped",[106]],[[120442,120442],"mapped",[107]],[[120443,120443],"mapped",[108]],[[120444,120444],"mapped",[109]],[[120445,120445],"mapped",[110]],[[120446,120446],"mapped",[111]],[[120447,120447],"mapped",[112]],[[120448,120448],"mapped",[113]],[[120449,120449],"mapped",[114]],[[120450,120450],"mapped",[115]],[[120451,120451],"mapped",[116]],[[120452,120452],"mapped",[117]],[[120453,120453],"mapped",[118]],[[120454,120454],"mapped",[119]],[[120455,120455],"mapped",[120]],[[120456,120456],"mapped",[121]],[[120457,120457],"mapped",[122]],[[120458,120458],"mapped",[97]],[[120459,120459],"mapped",[98]],[[120460,120460],"mapped",[99]],[[120461,120461],"mapped",[100]],[[120462,120462],"mapped",[101]],[[120463,120463],"mapped",[102]],[[120464,120464],"mapped",[103]],[[120465,120465],"mapped",[104]],[[120466,120466],"mapped",[105]],[[120467,120467],"mapped",[106]],[[120468,120468],"mapped",[107]],[[120469,120469],"mapped",[108]],[[120470,120470],"mapped",[109]],[[120471,120471],"mapped",[110]],[[120472,120472],"mapped",[111]],[[120473,120473],"mapped",[112]],[[120474,120474],"mapped",[113]],[[120475,120475],"mapped",[114]],[[120476,120476],"mapped",[115]],[[120477,120477],"mapped",[116]],[[120478,120478],"mapped",[117]],[[120479,120479],"mapped",[118]],[[120480,120480],"mapped",[119]],[[120481,120481],"mapped",[120]],[[120482,120482],"mapped",[121]],[[120483,120483],"mapped",[122]],[[120484,120484],"mapped",[305]],[[120485,120485],"mapped",[567]],[[120486,120487],"disallowed"],[[120488,120488],"mapped",[945]],[[120489,120489],"mapped",[946]],[[120490,120490],"mapped",[947]],[[120491,120491],"mapped",[948]],[[120492,120492],"mapped",[949]],[[120493,120493],"mapped",[950]],[[120494,120494],"mapped",[951]],[[120495,120495],"mapped",[952]],[[120496,120496],"mapped",[953]],[[120497,120497],"mapped",[954]],[[120498,120498],"mapped",[955]],[[120499,120499],"mapped",[956]],[[120500,120500],"mapped",[957]],[[120501,120501],"mapped",[958]],[[120502,120502],"mapped",[959]],[[120503,120503],"mapped",[960]],[[120504,120504],"mapped",[961]],[[120505,120505],"mapped",[952]],[[120506,120506],"mapped",[963]],[[120507,120507],"mapped",[964]],[[120508,120508],"mapped",[965]],[[120509,120509],"mapped",[966]],[[120510,120510],"mapped",[967]],[[120511,120511],"mapped",[968]],[[120512,120512],"mapped",[969]],[[120513,120513],"mapped",[8711]],[[120514,120514],"mapped",[945]],[[120515,120515],"mapped",[946]],[[120516,120516],"mapped",[947]],[[120517,120517],"mapped",[948]],[[120518,120518],"mapped",[949]],[[120519,120519],"mapped",[950]],[[120520,120520],"mapped",[951]],[[120521,120521],"mapped",[952]],[[120522,120522],"mapped",[953]],[[120523,120523],"mapped",[954]],[[120524,120524],"mapped",[955]],[[120525,120525],"mapped",[956]],[[120526,120526],"mapped",[957]],[[120527,120527],"mapped",[958]],[[120528,120528],"mapped",[959]],[[120529,120529],"mapped",[960]],[[120530,120530],"mapped",[961]],[[120531,120532],"mapped",[963]],[[120533,120533],"mapped",[964]],[[120534,120534],"mapped",[965]],[[120535,120535],"mapped",[966]],[[120536,120536],"mapped",[967]],[[120537,120537],"mapped",[968]],[[120538,120538],"mapped",[969]],[[120539,120539],"mapped",[8706]],[[120540,120540],"mapped",[949]],[[120541,120541],"mapped",[952]],[[120542,120542],"mapped",[954]],[[120543,120543],"mapped",[966]],[[120544,120544],"mapped",[961]],[[120545,120545],"mapped",[960]],[[120546,120546],"mapped",[945]],[[120547,120547],"mapped",[946]],[[120548,120548],"mapped",[947]],[[120549,120549],"mapped",[948]],[[120550,120550],"mapped",[949]],[[120551,120551],"mapped",[950]],[[120552,120552],"mapped",[951]],[[120553,120553],"mapped",[952]],[[120554,120554],"mapped",[953]],[[120555,120555],"mapped",[954]],[[120556,120556],"mapped",[955]],[[120557,120557],"mapped",[956]],[[120558,120558],"mapped",[957]],[[120559,120559],"mapped",[958]],[[120560,120560],"mapped",[959]],[[120561,120561],"mapped",[960]],[[120562,120562],"mapped",[961]],[[120563,120563],"mapped",[952]],[[120564,120564],"mapped",[963]],[[120565,120565],"mapped",[964]],[[120566,120566],"mapped",[965]],[[120567,120567],"mapped",[966]],[[120568,120568],"mapped",[967]],[[120569,120569],"mapped",[968]],[[120570,120570],"mapped",[969]],[[120571,120571],"mapped",[8711]],[[120572,120572],"mapped",[945]],[[120573,120573],"mapped",[946]],[[120574,120574],"mapped",[947]],[[120575,120575],"mapped",[948]],[[120576,120576],"mapped",[949]],[[120577,120577],"mapped",[950]],[[120578,120578],"mapped",[951]],[[120579,120579],"mapped",[952]],[[120580,120580],"mapped",[953]],[[120581,120581],"mapped",[954]],[[120582,120582],"mapped",[955]],[[120583,120583],"mapped",[956]],[[120584,120584],"mapped",[957]],[[120585,120585],"mapped",[958]],[[120586,120586],"mapped",[959]],[[120587,120587],"mapped",[960]],[[120588,120588],"mapped",[961]],[[120589,120590],"mapped",[963]],[[120591,120591],"mapped",[964]],[[120592,120592],"mapped",[965]],[[120593,120593],"mapped",[966]],[[120594,120594],"mapped",[967]],[[120595,120595],"mapped",[968]],[[120596,120596],"mapped",[969]],[[120597,120597],"mapped",[8706]],[[120598,120598],"mapped",[949]],[[120599,120599],"mapped",[952]],[[120600,120600],"mapped",[954]],[[120601,120601],"mapped",[966]],[[120602,120602],"mapped",[961]],[[120603,120603],"mapped",[960]],[[120604,120604],"mapped",[945]],[[120605,120605],"mapped",[946]],[[120606,120606],"mapped",[947]],[[120607,120607],"mapped",[948]],[[120608,120608],"mapped",[949]],[[120609,120609],"mapped",[950]],[[120610,120610],"mapped",[951]],[[120611,120611],"mapped",[952]],[[120612,120612],"mapped",[953]],[[120613,120613],"mapped",[954]],[[120614,120614],"mapped",[955]],[[120615,120615],"mapped",[956]],[[120616,120616],"mapped",[957]],[[120617,120617],"mapped",[958]],[[120618,120618],"mapped",[959]],[[120619,120619],"mapped",[960]],[[120620,120620],"mapped",[961]],[[120621,120621],"mapped",[952]],[[120622,120622],"mapped",[963]],[[120623,120623],"mapped",[964]],[[120624,120624],"mapped",[965]],[[120625,120625],"mapped",[966]],[[120626,120626],"mapped",[967]],[[120627,120627],"mapped",[968]],[[120628,120628],"mapped",[969]],[[120629,120629],"mapped",[8711]],[[120630,120630],"mapped",[945]],[[120631,120631],"mapped",[946]],[[120632,120632],"mapped",[947]],[[120633,120633],"mapped",[948]],[[120634,120634],"mapped",[949]],[[120635,120635],"mapped",[950]],[[120636,120636],"mapped",[951]],[[120637,120637],"mapped",[952]],[[120638,120638],"mapped",[953]],[[120639,120639],"mapped",[954]],[[120640,120640],"mapped",[955]],[[120641,120641],"mapped",[956]],[[120642,120642],"mapped",[957]],[[120643,120643],"mapped",[958]],[[120644,120644],"mapped",[959]],[[120645,120645],"mapped",[960]],[[120646,120646],"mapped",[961]],[[120647,120648],"mapped",[963]],[[120649,120649],"mapped",[964]],[[120650,120650],"mapped",[965]],[[120651,120651],"mapped",[966]],[[120652,120652],"mapped",[967]],[[120653,120653],"mapped",[968]],[[120654,120654],"mapped",[969]],[[120655,120655],"mapped",[8706]],[[120656,120656],"mapped",[949]],[[120657,120657],"mapped",[952]],[[120658,120658],"mapped",[954]],[[120659,120659],"mapped",[966]],[[120660,120660],"mapped",[961]],[[120661,120661],"mapped",[960]],[[120662,120662],"mapped",[945]],[[120663,120663],"mapped",[946]],[[120664,120664],"mapped",[947]],[[120665,120665],"mapped",[948]],[[120666,120666],"mapped",[949]],[[120667,120667],"mapped",[950]],[[120668,120668],"mapped",[951]],[[120669,120669],"mapped",[952]],[[120670,120670],"mapped",[953]],[[120671,120671],"mapped",[954]],[[120672,120672],"mapped",[955]],[[120673,120673],"mapped",[956]],[[120674,120674],"mapped",[957]],[[120675,120675],"mapped",[958]],[[120676,120676],"mapped",[959]],[[120677,120677],"mapped",[960]],[[120678,120678],"mapped",[961]],[[120679,120679],"mapped",[952]],[[120680,120680],"mapped",[963]],[[120681,120681],"mapped",[964]],[[120682,120682],"mapped",[965]],[[120683,120683],"mapped",[966]],[[120684,120684],"mapped",[967]],[[120685,120685],"mapped",[968]],[[120686,120686],"mapped",[969]],[[120687,120687],"mapped",[8711]],[[120688,120688],"mapped",[945]],[[120689,120689],"mapped",[946]],[[120690,120690],"mapped",[947]],[[120691,120691],"mapped",[948]],[[120692,120692],"mapped",[949]],[[120693,120693],"mapped",[950]],[[120694,120694],"mapped",[951]],[[120695,120695],"mapped",[952]],[[120696,120696],"mapped",[953]],[[120697,120697],"mapped",[954]],[[120698,120698],"mapped",[955]],[[120699,120699],"mapped",[956]],[[120700,120700],"mapped",[957]],[[120701,120701],"mapped",[958]],[[120702,120702],"mapped",[959]],[[120703,120703],"mapped",[960]],[[120704,120704],"mapped",[961]],[[120705,120706],"mapped",[963]],[[120707,120707],"mapped",[964]],[[120708,120708],"mapped",[965]],[[120709,120709],"mapped",[966]],[[120710,120710],"mapped",[967]],[[120711,120711],"mapped",[968]],[[120712,120712],"mapped",[969]],[[120713,120713],"mapped",[8706]],[[120714,120714],"mapped",[949]],[[120715,120715],"mapped",[952]],[[120716,120716],"mapped",[954]],[[120717,120717],"mapped",[966]],[[120718,120718],"mapped",[961]],[[120719,120719],"mapped",[960]],[[120720,120720],"mapped",[945]],[[120721,120721],"mapped",[946]],[[120722,120722],"mapped",[947]],[[120723,120723],"mapped",[948]],[[120724,120724],"mapped",[949]],[[120725,120725],"mapped",[950]],[[120726,120726],"mapped",[951]],[[120727,120727],"mapped",[952]],[[120728,120728],"mapped",[953]],[[120729,120729],"mapped",[954]],[[120730,120730],"mapped",[955]],[[120731,120731],"mapped",[956]],[[120732,120732],"mapped",[957]],[[120733,120733],"mapped",[958]],[[120734,120734],"mapped",[959]],[[120735,120735],"mapped",[960]],[[120736,120736],"mapped",[961]],[[120737,120737],"mapped",[952]],[[120738,120738],"mapped",[963]],[[120739,120739],"mapped",[964]],[[120740,120740],"mapped",[965]],[[120741,120741],"mapped",[966]],[[120742,120742],"mapped",[967]],[[120743,120743],"mapped",[968]],[[120744,120744],"mapped",[969]],[[120745,120745],"mapped",[8711]],[[120746,120746],"mapped",[945]],[[120747,120747],"mapped",[946]],[[120748,120748],"mapped",[947]],[[120749,120749],"mapped",[948]],[[120750,120750],"mapped",[949]],[[120751,120751],"mapped",[950]],[[120752,120752],"mapped",[951]],[[120753,120753],"mapped",[952]],[[120754,120754],"mapped",[953]],[[120755,120755],"mapped",[954]],[[120756,120756],"mapped",[955]],[[120757,120757],"mapped",[956]],[[120758,120758],"mapped",[957]],[[120759,120759],"mapped",[958]],[[120760,120760],"mapped",[959]],[[120761,120761],"mapped",[960]],[[120762,120762],"mapped",[961]],[[120763,120764],"mapped",[963]],[[120765,120765],"mapped",[964]],[[120766,120766],"mapped",[965]],[[120767,120767],"mapped",[966]],[[120768,120768],"mapped",[967]],[[120769,120769],"mapped",[968]],[[120770,120770],"mapped",[969]],[[120771,120771],"mapped",[8706]],[[120772,120772],"mapped",[949]],[[120773,120773],"mapped",[952]],[[120774,120774],"mapped",[954]],[[120775,120775],"mapped",[966]],[[120776,120776],"mapped",[961]],[[120777,120777],"mapped",[960]],[[120778,120779],"mapped",[989]],[[120780,120781],"disallowed"],[[120782,120782],"mapped",[48]],[[120783,120783],"mapped",[49]],[[120784,120784],"mapped",[50]],[[120785,120785],"mapped",[51]],[[120786,120786],"mapped",[52]],[[120787,120787],"mapped",[53]],[[120788,120788],"mapped",[54]],[[120789,120789],"mapped",[55]],[[120790,120790],"mapped",[56]],[[120791,120791],"mapped",[57]],[[120792,120792],"mapped",[48]],[[120793,120793],"mapped",[49]],[[120794,120794],"mapped",[50]],[[120795,120795],"mapped",[51]],[[120796,120796],"mapped",[52]],[[120797,120797],"mapped",[53]],[[120798,120798],"mapped",[54]],[[120799,120799],"mapped",[55]],[[120800,120800],"mapped",[56]],[[120801,120801],"mapped",[57]],[[120802,120802],"mapped",[48]],[[120803,120803],"mapped",[49]],[[120804,120804],"mapped",[50]],[[120805,120805],"mapped",[51]],[[120806,120806],"mapped",[52]],[[120807,120807],"mapped",[53]],[[120808,120808],"mapped",[54]],[[120809,120809],"mapped",[55]],[[120810,120810],"mapped",[56]],[[120811,120811],"mapped",[57]],[[120812,120812],"mapped",[48]],[[120813,120813],"mapped",[49]],[[120814,120814],"mapped",[50]],[[120815,120815],"mapped",[51]],[[120816,120816],"mapped",[52]],[[120817,120817],"mapped",[53]],[[120818,120818],"mapped",[54]],[[120819,120819],"mapped",[55]],[[120820,120820],"mapped",[56]],[[120821,120821],"mapped",[57]],[[120822,120822],"mapped",[48]],[[120823,120823],"mapped",[49]],[[120824,120824],"mapped",[50]],[[120825,120825],"mapped",[51]],[[120826,120826],"mapped",[52]],[[120827,120827],"mapped",[53]],[[120828,120828],"mapped",[54]],[[120829,120829],"mapped",[55]],[[120830,120830],"mapped",[56]],[[120831,120831],"mapped",[57]],[[120832,121343],"valid",[],"NV8"],[[121344,121398],"valid"],[[121399,121402],"valid",[],"NV8"],[[121403,121452],"valid"],[[121453,121460],"valid",[],"NV8"],[[121461,121461],"valid"],[[121462,121475],"valid",[],"NV8"],[[121476,121476],"valid"],[[121477,121483],"valid",[],"NV8"],[[121484,121498],"disallowed"],[[121499,121503],"valid"],[[121504,121504],"disallowed"],[[121505,121519],"valid"],[[121520,124927],"disallowed"],[[124928,125124],"valid"],[[125125,125126],"disallowed"],[[125127,125135],"valid",[],"NV8"],[[125136,125142],"valid"],[[125143,126463],"disallowed"],[[126464,126464],"mapped",[1575]],[[126465,126465],"mapped",[1576]],[[126466,126466],"mapped",[1580]],[[126467,126467],"mapped",[1583]],[[126468,126468],"disallowed"],[[126469,126469],"mapped",[1608]],[[126470,126470],"mapped",[1586]],[[126471,126471],"mapped",[1581]],[[126472,126472],"mapped",[1591]],[[126473,126473],"mapped",[1610]],[[126474,126474],"mapped",[1603]],[[126475,126475],"mapped",[1604]],[[126476,126476],"mapped",[1605]],[[126477,126477],"mapped",[1606]],[[126478,126478],"mapped",[1587]],[[126479,126479],"mapped",[1593]],[[126480,126480],"mapped",[1601]],[[126481,126481],"mapped",[1589]],[[126482,126482],"mapped",[1602]],[[126483,126483],"mapped",[1585]],[[126484,126484],"mapped",[1588]],[[126485,126485],"mapped",[1578]],[[126486,126486],"mapped",[1579]],[[126487,126487],"mapped",[1582]],[[126488,126488],"mapped",[1584]],[[126489,126489],"mapped",[1590]],[[126490,126490],"mapped",[1592]],[[126491,126491],"mapped",[1594]],[[126492,126492],"mapped",[1646]],[[126493,126493],"mapped",[1722]],[[126494,126494],"mapped",[1697]],[[126495,126495],"mapped",[1647]],[[126496,126496],"disallowed"],[[126497,126497],"mapped",[1576]],[[126498,126498],"mapped",[1580]],[[126499,126499],"disallowed"],[[126500,126500],"mapped",[1607]],[[126501,126502],"disallowed"],[[126503,126503],"mapped",[1581]],[[126504,126504],"disallowed"],[[126505,126505],"mapped",[1610]],[[126506,126506],"mapped",[1603]],[[126507,126507],"mapped",[1604]],[[126508,126508],"mapped",[1605]],[[126509,126509],"mapped",[1606]],[[126510,126510],"mapped",[1587]],[[126511,126511],"mapped",[1593]],[[126512,126512],"mapped",[1601]],[[126513,126513],"mapped",[1589]],[[126514,126514],"mapped",[1602]],[[126515,126515],"disallowed"],[[126516,126516],"mapped",[1588]],[[126517,126517],"mapped",[1578]],[[126518,126518],"mapped",[1579]],[[126519,126519],"mapped",[1582]],[[126520,126520],"disallowed"],[[126521,126521],"mapped",[1590]],[[126522,126522],"disallowed"],[[126523,126523],"mapped",[1594]],[[126524,126529],"disallowed"],[[126530,126530],"mapped",[1580]],[[126531,126534],"disallowed"],[[126535,126535],"mapped",[1581]],[[126536,126536],"disallowed"],[[126537,126537],"mapped",[1610]],[[126538,126538],"disallowed"],[[126539,126539],"mapped",[1604]],[[126540,126540],"disallowed"],[[126541,126541],"mapped",[1606]],[[126542,126542],"mapped",[1587]],[[126543,126543],"mapped",[1593]],[[126544,126544],"disallowed"],[[126545,126545],"mapped",[1589]],[[126546,126546],"mapped",[1602]],[[126547,126547],"disallowed"],[[126548,126548],"mapped",[1588]],[[126549,126550],"disallowed"],[[126551,126551],"mapped",[1582]],[[126552,126552],"disallowed"],[[126553,126553],"mapped",[1590]],[[126554,126554],"disallowed"],[[126555,126555],"mapped",[1594]],[[126556,126556],"disallowed"],[[126557,126557],"mapped",[1722]],[[126558,126558],"disallowed"],[[126559,126559],"mapped",[1647]],[[126560,126560],"disallowed"],[[126561,126561],"mapped",[1576]],[[126562,126562],"mapped",[1580]],[[126563,126563],"disallowed"],[[126564,126564],"mapped",[1607]],[[126565,126566],"disallowed"],[[126567,126567],"mapped",[1581]],[[126568,126568],"mapped",[1591]],[[126569,126569],"mapped",[1610]],[[126570,126570],"mapped",[1603]],[[126571,126571],"disallowed"],[[126572,126572],"mapped",[1605]],[[126573,126573],"mapped",[1606]],[[126574,126574],"mapped",[1587]],[[126575,126575],"mapped",[1593]],[[126576,126576],"mapped",[1601]],[[126577,126577],"mapped",[1589]],[[126578,126578],"mapped",[1602]],[[126579,126579],"disallowed"],[[126580,126580],"mapped",[1588]],[[126581,126581],"mapped",[1578]],[[126582,126582],"mapped",[1579]],[[126583,126583],"mapped",[1582]],[[126584,126584],"disallowed"],[[126585,126585],"mapped",[1590]],[[126586,126586],"mapped",[1592]],[[126587,126587],"mapped",[1594]],[[126588,126588],"mapped",[1646]],[[126589,126589],"disallowed"],[[126590,126590],"mapped",[1697]],[[126591,126591],"disallowed"],[[126592,126592],"mapped",[1575]],[[126593,126593],"mapped",[1576]],[[126594,126594],"mapped",[1580]],[[126595,126595],"mapped",[1583]],[[126596,126596],"mapped",[1607]],[[126597,126597],"mapped",[1608]],[[126598,126598],"mapped",[1586]],[[126599,126599],"mapped",[1581]],[[126600,126600],"mapped",[1591]],[[126601,126601],"mapped",[1610]],[[126602,126602],"disallowed"],[[126603,126603],"mapped",[1604]],[[126604,126604],"mapped",[1605]],[[126605,126605],"mapped",[1606]],[[126606,126606],"mapped",[1587]],[[126607,126607],"mapped",[1593]],[[126608,126608],"mapped",[1601]],[[126609,126609],"mapped",[1589]],[[126610,126610],"mapped",[1602]],[[126611,126611],"mapped",[1585]],[[126612,126612],"mapped",[1588]],[[126613,126613],"mapped",[1578]],[[126614,126614],"mapped",[1579]],[[126615,126615],"mapped",[1582]],[[126616,126616],"mapped",[1584]],[[126617,126617],"mapped",[1590]],[[126618,126618],"mapped",[1592]],[[126619,126619],"mapped",[1594]],[[126620,126624],"disallowed"],[[126625,126625],"mapped",[1576]],[[126626,126626],"mapped",[1580]],[[126627,126627],"mapped",[1583]],[[126628,126628],"disallowed"],[[126629,126629],"mapped",[1608]],[[126630,126630],"mapped",[1586]],[[126631,126631],"mapped",[1581]],[[126632,126632],"mapped",[1591]],[[126633,126633],"mapped",[1610]],[[126634,126634],"disallowed"],[[126635,126635],"mapped",[1604]],[[126636,126636],"mapped",[1605]],[[126637,126637],"mapped",[1606]],[[126638,126638],"mapped",[1587]],[[126639,126639],"mapped",[1593]],[[126640,126640],"mapped",[1601]],[[126641,126641],"mapped",[1589]],[[126642,126642],"mapped",[1602]],[[126643,126643],"mapped",[1585]],[[126644,126644],"mapped",[1588]],[[126645,126645],"mapped",[1578]],[[126646,126646],"mapped",[1579]],[[126647,126647],"mapped",[1582]],[[126648,126648],"mapped",[1584]],[[126649,126649],"mapped",[1590]],[[126650,126650],"mapped",[1592]],[[126651,126651],"mapped",[1594]],[[126652,126703],"disallowed"],[[126704,126705],"valid",[],"NV8"],[[126706,126975],"disallowed"],[[126976,127019],"valid",[],"NV8"],[[127020,127023],"disallowed"],[[127024,127123],"valid",[],"NV8"],[[127124,127135],"disallowed"],[[127136,127150],"valid",[],"NV8"],[[127151,127152],"disallowed"],[[127153,127166],"valid",[],"NV8"],[[127167,127167],"valid",[],"NV8"],[[127168,127168],"disallowed"],[[127169,127183],"valid",[],"NV8"],[[127184,127184],"disallowed"],[[127185,127199],"valid",[],"NV8"],[[127200,127221],"valid",[],"NV8"],[[127222,127231],"disallowed"],[[127232,127232],"disallowed"],[[127233,127233],"disallowed_STD3_mapped",[48,44]],[[127234,127234],"disallowed_STD3_mapped",[49,44]],[[127235,127235],"disallowed_STD3_mapped",[50,44]],[[127236,127236],"disallowed_STD3_mapped",[51,44]],[[127237,127237],"disallowed_STD3_mapped",[52,44]],[[127238,127238],"disallowed_STD3_mapped",[53,44]],[[127239,127239],"disallowed_STD3_mapped",[54,44]],[[127240,127240],"disallowed_STD3_mapped",[55,44]],[[127241,127241],"disallowed_STD3_mapped",[56,44]],[[127242,127242],"disallowed_STD3_mapped",[57,44]],[[127243,127244],"valid",[],"NV8"],[[127245,127247],"disallowed"],[[127248,127248],"disallowed_STD3_mapped",[40,97,41]],[[127249,127249],"disallowed_STD3_mapped",[40,98,41]],[[127250,127250],"disallowed_STD3_mapped",[40,99,41]],[[127251,127251],"disallowed_STD3_mapped",[40,100,41]],[[127252,127252],"disallowed_STD3_mapped",[40,101,41]],[[127253,127253],"disallowed_STD3_mapped",[40,102,41]],[[127254,127254],"disallowed_STD3_mapped",[40,103,41]],[[127255,127255],"disallowed_STD3_mapped",[40,104,41]],[[127256,127256],"disallowed_STD3_mapped",[40,105,41]],[[127257,127257],"disallowed_STD3_mapped",[40,106,41]],[[127258,127258],"disallowed_STD3_mapped",[40,107,41]],[[127259,127259],"disallowed_STD3_mapped",[40,108,41]],[[127260,127260],"disallowed_STD3_mapped",[40,109,41]],[[127261,127261],"disallowed_STD3_mapped",[40,110,41]],[[127262,127262],"disallowed_STD3_mapped",[40,111,41]],[[127263,127263],"disallowed_STD3_mapped",[40,112,41]],[[127264,127264],"disallowed_STD3_mapped",[40,113,41]],[[127265,127265],"disallowed_STD3_mapped",[40,114,41]],[[127266,127266],"disallowed_STD3_mapped",[40,115,41]],[[127267,127267],"disallowed_STD3_mapped",[40,116,41]],[[127268,127268],"disallowed_STD3_mapped",[40,117,41]],[[127269,127269],"disallowed_STD3_mapped",[40,118,41]],[[127270,127270],"disallowed_STD3_mapped",[40,119,41]],[[127271,127271],"disallowed_STD3_mapped",[40,120,41]],[[127272,127272],"disallowed_STD3_mapped",[40,121,41]],[[127273,127273],"disallowed_STD3_mapped",[40,122,41]],[[127274,127274],"mapped",[12308,115,12309]],[[127275,127275],"mapped",[99]],[[127276,127276],"mapped",[114]],[[127277,127277],"mapped",[99,100]],[[127278,127278],"mapped",[119,122]],[[127279,127279],"disallowed"],[[127280,127280],"mapped",[97]],[[127281,127281],"mapped",[98]],[[127282,127282],"mapped",[99]],[[127283,127283],"mapped",[100]],[[127284,127284],"mapped",[101]],[[127285,127285],"mapped",[102]],[[127286,127286],"mapped",[103]],[[127287,127287],"mapped",[104]],[[127288,127288],"mapped",[105]],[[127289,127289],"mapped",[106]],[[127290,127290],"mapped",[107]],[[127291,127291],"mapped",[108]],[[127292,127292],"mapped",[109]],[[127293,127293],"mapped",[110]],[[127294,127294],"mapped",[111]],[[127295,127295],"mapped",[112]],[[127296,127296],"mapped",[113]],[[127297,127297],"mapped",[114]],[[127298,127298],"mapped",[115]],[[127299,127299],"mapped",[116]],[[127300,127300],"mapped",[117]],[[127301,127301],"mapped",[118]],[[127302,127302],"mapped",[119]],[[127303,127303],"mapped",[120]],[[127304,127304],"mapped",[121]],[[127305,127305],"mapped",[122]],[[127306,127306],"mapped",[104,118]],[[127307,127307],"mapped",[109,118]],[[127308,127308],"mapped",[115,100]],[[127309,127309],"mapped",[115,115]],[[127310,127310],"mapped",[112,112,118]],[[127311,127311],"mapped",[119,99]],[[127312,127318],"valid",[],"NV8"],[[127319,127319],"valid",[],"NV8"],[[127320,127326],"valid",[],"NV8"],[[127327,127327],"valid",[],"NV8"],[[127328,127337],"valid",[],"NV8"],[[127338,127338],"mapped",[109,99]],[[127339,127339],"mapped",[109,100]],[[127340,127343],"disallowed"],[[127344,127352],"valid",[],"NV8"],[[127353,127353],"valid",[],"NV8"],[[127354,127354],"valid",[],"NV8"],[[127355,127356],"valid",[],"NV8"],[[127357,127358],"valid",[],"NV8"],[[127359,127359],"valid",[],"NV8"],[[127360,127369],"valid",[],"NV8"],[[127370,127373],"valid",[],"NV8"],[[127374,127375],"valid",[],"NV8"],[[127376,127376],"mapped",[100,106]],[[127377,127386],"valid",[],"NV8"],[[127387,127461],"disallowed"],[[127462,127487],"valid",[],"NV8"],[[127488,127488],"mapped",[12411,12363]],[[127489,127489],"mapped",[12467,12467]],[[127490,127490],"mapped",[12469]],[[127491,127503],"disallowed"],[[127504,127504],"mapped",[25163]],[[127505,127505],"mapped",[23383]],[[127506,127506],"mapped",[21452]],[[127507,127507],"mapped",[12487]],[[127508,127508],"mapped",[20108]],[[127509,127509],"mapped",[22810]],[[127510,127510],"mapped",[35299]],[[127511,127511],"mapped",[22825]],[[127512,127512],"mapped",[20132]],[[127513,127513],"mapped",[26144]],[[127514,127514],"mapped",[28961]],[[127515,127515],"mapped",[26009]],[[127516,127516],"mapped",[21069]],[[127517,127517],"mapped",[24460]],[[127518,127518],"mapped",[20877]],[[127519,127519],"mapped",[26032]],[[127520,127520],"mapped",[21021]],[[127521,127521],"mapped",[32066]],[[127522,127522],"mapped",[29983]],[[127523,127523],"mapped",[36009]],[[127524,127524],"mapped",[22768]],[[127525,127525],"mapped",[21561]],[[127526,127526],"mapped",[28436]],[[127527,127527],"mapped",[25237]],[[127528,127528],"mapped",[25429]],[[127529,127529],"mapped",[19968]],[[127530,127530],"mapped",[19977]],[[127531,127531],"mapped",[36938]],[[127532,127532],"mapped",[24038]],[[127533,127533],"mapped",[20013]],[[127534,127534],"mapped",[21491]],[[127535,127535],"mapped",[25351]],[[127536,127536],"mapped",[36208]],[[127537,127537],"mapped",[25171]],[[127538,127538],"mapped",[31105]],[[127539,127539],"mapped",[31354]],[[127540,127540],"mapped",[21512]],[[127541,127541],"mapped",[28288]],[[127542,127542],"mapped",[26377]],[[127543,127543],"mapped",[26376]],[[127544,127544],"mapped",[30003]],[[127545,127545],"mapped",[21106]],[[127546,127546],"mapped",[21942]],[[127547,127551],"disallowed"],[[127552,127552],"mapped",[12308,26412,12309]],[[127553,127553],"mapped",[12308,19977,12309]],[[127554,127554],"mapped",[12308,20108,12309]],[[127555,127555],"mapped",[12308,23433,12309]],[[127556,127556],"mapped",[12308,28857,12309]],[[127557,127557],"mapped",[12308,25171,12309]],[[127558,127558],"mapped",[12308,30423,12309]],[[127559,127559],"mapped",[12308,21213,12309]],[[127560,127560],"mapped",[12308,25943,12309]],[[127561,127567],"disallowed"],[[127568,127568],"mapped",[24471]],[[127569,127569],"mapped",[21487]],[[127570,127743],"disallowed"],[[127744,127776],"valid",[],"NV8"],[[127777,127788],"valid",[],"NV8"],[[127789,127791],"valid",[],"NV8"],[[127792,127797],"valid",[],"NV8"],[[127798,127798],"valid",[],"NV8"],[[127799,127868],"valid",[],"NV8"],[[127869,127869],"valid",[],"NV8"],[[127870,127871],"valid",[],"NV8"],[[127872,127891],"valid",[],"NV8"],[[127892,127903],"valid",[],"NV8"],[[127904,127940],"valid",[],"NV8"],[[127941,127941],"valid",[],"NV8"],[[127942,127946],"valid",[],"NV8"],[[127947,127950],"valid",[],"NV8"],[[127951,127955],"valid",[],"NV8"],[[127956,127967],"valid",[],"NV8"],[[127968,127984],"valid",[],"NV8"],[[127985,127991],"valid",[],"NV8"],[[127992,127999],"valid",[],"NV8"],[[128e3,128062],"valid",[],"NV8"],[[128063,128063],"valid",[],"NV8"],[[128064,128064],"valid",[],"NV8"],[[128065,128065],"valid",[],"NV8"],[[128066,128247],"valid",[],"NV8"],[[128248,128248],"valid",[],"NV8"],[[128249,128252],"valid",[],"NV8"],[[128253,128254],"valid",[],"NV8"],[[128255,128255],"valid",[],"NV8"],[[128256,128317],"valid",[],"NV8"],[[128318,128319],"valid",[],"NV8"],[[128320,128323],"valid",[],"NV8"],[[128324,128330],"valid",[],"NV8"],[[128331,128335],"valid",[],"NV8"],[[128336,128359],"valid",[],"NV8"],[[128360,128377],"valid",[],"NV8"],[[128378,128378],"disallowed"],[[128379,128419],"valid",[],"NV8"],[[128420,128420],"disallowed"],[[128421,128506],"valid",[],"NV8"],[[128507,128511],"valid",[],"NV8"],[[128512,128512],"valid",[],"NV8"],[[128513,128528],"valid",[],"NV8"],[[128529,128529],"valid",[],"NV8"],[[128530,128532],"valid",[],"NV8"],[[128533,128533],"valid",[],"NV8"],[[128534,128534],"valid",[],"NV8"],[[128535,128535],"valid",[],"NV8"],[[128536,128536],"valid",[],"NV8"],[[128537,128537],"valid",[],"NV8"],[[128538,128538],"valid",[],"NV8"],[[128539,128539],"valid",[],"NV8"],[[128540,128542],"valid",[],"NV8"],[[128543,128543],"valid",[],"NV8"],[[128544,128549],"valid",[],"NV8"],[[128550,128551],"valid",[],"NV8"],[[128552,128555],"valid",[],"NV8"],[[128556,128556],"valid",[],"NV8"],[[128557,128557],"valid",[],"NV8"],[[128558,128559],"valid",[],"NV8"],[[128560,128563],"valid",[],"NV8"],[[128564,128564],"valid",[],"NV8"],[[128565,128576],"valid",[],"NV8"],[[128577,128578],"valid",[],"NV8"],[[128579,128580],"valid",[],"NV8"],[[128581,128591],"valid",[],"NV8"],[[128592,128639],"valid",[],"NV8"],[[128640,128709],"valid",[],"NV8"],[[128710,128719],"valid",[],"NV8"],[[128720,128720],"valid",[],"NV8"],[[128721,128735],"disallowed"],[[128736,128748],"valid",[],"NV8"],[[128749,128751],"disallowed"],[[128752,128755],"valid",[],"NV8"],[[128756,128767],"disallowed"],[[128768,128883],"valid",[],"NV8"],[[128884,128895],"disallowed"],[[128896,128980],"valid",[],"NV8"],[[128981,129023],"disallowed"],[[129024,129035],"valid",[],"NV8"],[[129036,129039],"disallowed"],[[129040,129095],"valid",[],"NV8"],[[129096,129103],"disallowed"],[[129104,129113],"valid",[],"NV8"],[[129114,129119],"disallowed"],[[129120,129159],"valid",[],"NV8"],[[129160,129167],"disallowed"],[[129168,129197],"valid",[],"NV8"],[[129198,129295],"disallowed"],[[129296,129304],"valid",[],"NV8"],[[129305,129407],"disallowed"],[[129408,129412],"valid",[],"NV8"],[[129413,129471],"disallowed"],[[129472,129472],"valid",[],"NV8"],[[129473,131069],"disallowed"],[[131070,131071],"disallowed"],[[131072,173782],"valid"],[[173783,173823],"disallowed"],[[173824,177972],"valid"],[[177973,177983],"disallowed"],[[177984,178205],"valid"],[[178206,178207],"disallowed"],[[178208,183969],"valid"],[[183970,194559],"disallowed"],[[194560,194560],"mapped",[20029]],[[194561,194561],"mapped",[20024]],[[194562,194562],"mapped",[20033]],[[194563,194563],"mapped",[131362]],[[194564,194564],"mapped",[20320]],[[194565,194565],"mapped",[20398]],[[194566,194566],"mapped",[20411]],[[194567,194567],"mapped",[20482]],[[194568,194568],"mapped",[20602]],[[194569,194569],"mapped",[20633]],[[194570,194570],"mapped",[20711]],[[194571,194571],"mapped",[20687]],[[194572,194572],"mapped",[13470]],[[194573,194573],"mapped",[132666]],[[194574,194574],"mapped",[20813]],[[194575,194575],"mapped",[20820]],[[194576,194576],"mapped",[20836]],[[194577,194577],"mapped",[20855]],[[194578,194578],"mapped",[132380]],[[194579,194579],"mapped",[13497]],[[194580,194580],"mapped",[20839]],[[194581,194581],"mapped",[20877]],[[194582,194582],"mapped",[132427]],[[194583,194583],"mapped",[20887]],[[194584,194584],"mapped",[20900]],[[194585,194585],"mapped",[20172]],[[194586,194586],"mapped",[20908]],[[194587,194587],"mapped",[20917]],[[194588,194588],"mapped",[168415]],[[194589,194589],"mapped",[20981]],[[194590,194590],"mapped",[20995]],[[194591,194591],"mapped",[13535]],[[194592,194592],"mapped",[21051]],[[194593,194593],"mapped",[21062]],[[194594,194594],"mapped",[21106]],[[194595,194595],"mapped",[21111]],[[194596,194596],"mapped",[13589]],[[194597,194597],"mapped",[21191]],[[194598,194598],"mapped",[21193]],[[194599,194599],"mapped",[21220]],[[194600,194600],"mapped",[21242]],[[194601,194601],"mapped",[21253]],[[194602,194602],"mapped",[21254]],[[194603,194603],"mapped",[21271]],[[194604,194604],"mapped",[21321]],[[194605,194605],"mapped",[21329]],[[194606,194606],"mapped",[21338]],[[194607,194607],"mapped",[21363]],[[194608,194608],"mapped",[21373]],[[194609,194611],"mapped",[21375]],[[194612,194612],"mapped",[133676]],[[194613,194613],"mapped",[28784]],[[194614,194614],"mapped",[21450]],[[194615,194615],"mapped",[21471]],[[194616,194616],"mapped",[133987]],[[194617,194617],"mapped",[21483]],[[194618,194618],"mapped",[21489]],[[194619,194619],"mapped",[21510]],[[194620,194620],"mapped",[21662]],[[194621,194621],"mapped",[21560]],[[194622,194622],"mapped",[21576]],[[194623,194623],"mapped",[21608]],[[194624,194624],"mapped",[21666]],[[194625,194625],"mapped",[21750]],[[194626,194626],"mapped",[21776]],[[194627,194627],"mapped",[21843]],[[194628,194628],"mapped",[21859]],[[194629,194630],"mapped",[21892]],[[194631,194631],"mapped",[21913]],[[194632,194632],"mapped",[21931]],[[194633,194633],"mapped",[21939]],[[194634,194634],"mapped",[21954]],[[194635,194635],"mapped",[22294]],[[194636,194636],"mapped",[22022]],[[194637,194637],"mapped",[22295]],[[194638,194638],"mapped",[22097]],[[194639,194639],"mapped",[22132]],[[194640,194640],"mapped",[20999]],[[194641,194641],"mapped",[22766]],[[194642,194642],"mapped",[22478]],[[194643,194643],"mapped",[22516]],[[194644,194644],"mapped",[22541]],[[194645,194645],"mapped",[22411]],[[194646,194646],"mapped",[22578]],[[194647,194647],"mapped",[22577]],[[194648,194648],"mapped",[22700]],[[194649,194649],"mapped",[136420]],[[194650,194650],"mapped",[22770]],[[194651,194651],"mapped",[22775]],[[194652,194652],"mapped",[22790]],[[194653,194653],"mapped",[22810]],[[194654,194654],"mapped",[22818]],[[194655,194655],"mapped",[22882]],[[194656,194656],"mapped",[136872]],[[194657,194657],"mapped",[136938]],[[194658,194658],"mapped",[23020]],[[194659,194659],"mapped",[23067]],[[194660,194660],"mapped",[23079]],[[194661,194661],"mapped",[23e3]],[[194662,194662],"mapped",[23142]],[[194663,194663],"mapped",[14062]],[[194664,194664],"disallowed"],[[194665,194665],"mapped",[23304]],[[194666,194667],"mapped",[23358]],[[194668,194668],"mapped",[137672]],[[194669,194669],"mapped",[23491]],[[194670,194670],"mapped",[23512]],[[194671,194671],"mapped",[23527]],[[194672,194672],"mapped",[23539]],[[194673,194673],"mapped",[138008]],[[194674,194674],"mapped",[23551]],[[194675,194675],"mapped",[23558]],[[194676,194676],"disallowed"],[[194677,194677],"mapped",[23586]],[[194678,194678],"mapped",[14209]],[[194679,194679],"mapped",[23648]],[[194680,194680],"mapped",[23662]],[[194681,194681],"mapped",[23744]],[[194682,194682],"mapped",[23693]],[[194683,194683],"mapped",[138724]],[[194684,194684],"mapped",[23875]],[[194685,194685],"mapped",[138726]],[[194686,194686],"mapped",[23918]],[[194687,194687],"mapped",[23915]],[[194688,194688],"mapped",[23932]],[[194689,194689],"mapped",[24033]],[[194690,194690],"mapped",[24034]],[[194691,194691],"mapped",[14383]],[[194692,194692],"mapped",[24061]],[[194693,194693],"mapped",[24104]],[[194694,194694],"mapped",[24125]],[[194695,194695],"mapped",[24169]],[[194696,194696],"mapped",[14434]],[[194697,194697],"mapped",[139651]],[[194698,194698],"mapped",[14460]],[[194699,194699],"mapped",[24240]],[[194700,194700],"mapped",[24243]],[[194701,194701],"mapped",[24246]],[[194702,194702],"mapped",[24266]],[[194703,194703],"mapped",[172946]],[[194704,194704],"mapped",[24318]],[[194705,194706],"mapped",[140081]],[[194707,194707],"mapped",[33281]],[[194708,194709],"mapped",[24354]],[[194710,194710],"mapped",[14535]],[[194711,194711],"mapped",[144056]],[[194712,194712],"mapped",[156122]],[[194713,194713],"mapped",[24418]],[[194714,194714],"mapped",[24427]],[[194715,194715],"mapped",[14563]],[[194716,194716],"mapped",[24474]],[[194717,194717],"mapped",[24525]],[[194718,194718],"mapped",[24535]],[[194719,194719],"mapped",[24569]],[[194720,194720],"mapped",[24705]],[[194721,194721],"mapped",[14650]],[[194722,194722],"mapped",[14620]],[[194723,194723],"mapped",[24724]],[[194724,194724],"mapped",[141012]],[[194725,194725],"mapped",[24775]],[[194726,194726],"mapped",[24904]],[[194727,194727],"mapped",[24908]],[[194728,194728],"mapped",[24910]],[[194729,194729],"mapped",[24908]],[[194730,194730],"mapped",[24954]],[[194731,194731],"mapped",[24974]],[[194732,194732],"mapped",[25010]],[[194733,194733],"mapped",[24996]],[[194734,194734],"mapped",[25007]],[[194735,194735],"mapped",[25054]],[[194736,194736],"mapped",[25074]],[[194737,194737],"mapped",[25078]],[[194738,194738],"mapped",[25104]],[[194739,194739],"mapped",[25115]],[[194740,194740],"mapped",[25181]],[[194741,194741],"mapped",[25265]],[[194742,194742],"mapped",[25300]],[[194743,194743],"mapped",[25424]],[[194744,194744],"mapped",[142092]],[[194745,194745],"mapped",[25405]],[[194746,194746],"mapped",[25340]],[[194747,194747],"mapped",[25448]],[[194748,194748],"mapped",[25475]],[[194749,194749],"mapped",[25572]],[[194750,194750],"mapped",[142321]],[[194751,194751],"mapped",[25634]],[[194752,194752],"mapped",[25541]],[[194753,194753],"mapped",[25513]],[[194754,194754],"mapped",[14894]],[[194755,194755],"mapped",[25705]],[[194756,194756],"mapped",[25726]],[[194757,194757],"mapped",[25757]],[[194758,194758],"mapped",[25719]],[[194759,194759],"mapped",[14956]],[[194760,194760],"mapped",[25935]],[[194761,194761],"mapped",[25964]],[[194762,194762],"mapped",[143370]],[[194763,194763],"mapped",[26083]],[[194764,194764],"mapped",[26360]],[[194765,194765],"mapped",[26185]],[[194766,194766],"mapped",[15129]],[[194767,194767],"mapped",[26257]],[[194768,194768],"mapped",[15112]],[[194769,194769],"mapped",[15076]],[[194770,194770],"mapped",[20882]],[[194771,194771],"mapped",[20885]],[[194772,194772],"mapped",[26368]],[[194773,194773],"mapped",[26268]],[[194774,194774],"mapped",[32941]],[[194775,194775],"mapped",[17369]],[[194776,194776],"mapped",[26391]],[[194777,194777],"mapped",[26395]],[[194778,194778],"mapped",[26401]],[[194779,194779],"mapped",[26462]],[[194780,194780],"mapped",[26451]],[[194781,194781],"mapped",[144323]],[[194782,194782],"mapped",[15177]],[[194783,194783],"mapped",[26618]],[[194784,194784],"mapped",[26501]],[[194785,194785],"mapped",[26706]],[[194786,194786],"mapped",[26757]],[[194787,194787],"mapped",[144493]],[[194788,194788],"mapped",[26766]],[[194789,194789],"mapped",[26655]],[[194790,194790],"mapped",[26900]],[[194791,194791],"mapped",[15261]],[[194792,194792],"mapped",[26946]],[[194793,194793],"mapped",[27043]],[[194794,194794],"mapped",[27114]],[[194795,194795],"mapped",[27304]],[[194796,194796],"mapped",[145059]],[[194797,194797],"mapped",[27355]],[[194798,194798],"mapped",[15384]],[[194799,194799],"mapped",[27425]],[[194800,194800],"mapped",[145575]],[[194801,194801],"mapped",[27476]],[[194802,194802],"mapped",[15438]],[[194803,194803],"mapped",[27506]],[[194804,194804],"mapped",[27551]],[[194805,194805],"mapped",[27578]],[[194806,194806],"mapped",[27579]],[[194807,194807],"mapped",[146061]],[[194808,194808],"mapped",[138507]],[[194809,194809],"mapped",[146170]],[[194810,194810],"mapped",[27726]],[[194811,194811],"mapped",[146620]],[[194812,194812],"mapped",[27839]],[[194813,194813],"mapped",[27853]],[[194814,194814],"mapped",[27751]],[[194815,194815],"mapped",[27926]],[[194816,194816],"mapped",[27966]],[[194817,194817],"mapped",[28023]],[[194818,194818],"mapped",[27969]],[[194819,194819],"mapped",[28009]],[[194820,194820],"mapped",[28024]],[[194821,194821],"mapped",[28037]],[[194822,194822],"mapped",[146718]],[[194823,194823],"mapped",[27956]],[[194824,194824],"mapped",[28207]],[[194825,194825],"mapped",[28270]],[[194826,194826],"mapped",[15667]],[[194827,194827],"mapped",[28363]],[[194828,194828],"mapped",[28359]],[[194829,194829],"mapped",[147153]],[[194830,194830],"mapped",[28153]],[[194831,194831],"mapped",[28526]],[[194832,194832],"mapped",[147294]],[[194833,194833],"mapped",[147342]],[[194834,194834],"mapped",[28614]],[[194835,194835],"mapped",[28729]],[[194836,194836],"mapped",[28702]],[[194837,194837],"mapped",[28699]],[[194838,194838],"mapped",[15766]],[[194839,194839],"mapped",[28746]],[[194840,194840],"mapped",[28797]],[[194841,194841],"mapped",[28791]],[[194842,194842],"mapped",[28845]],[[194843,194843],"mapped",[132389]],[[194844,194844],"mapped",[28997]],[[194845,194845],"mapped",[148067]],[[194846,194846],"mapped",[29084]],[[194847,194847],"disallowed"],[[194848,194848],"mapped",[29224]],[[194849,194849],"mapped",[29237]],[[194850,194850],"mapped",[29264]],[[194851,194851],"mapped",[149e3]],[[194852,194852],"mapped",[29312]],[[194853,194853],"mapped",[29333]],[[194854,194854],"mapped",[149301]],[[194855,194855],"mapped",[149524]],[[194856,194856],"mapped",[29562]],[[194857,194857],"mapped",[29579]],[[194858,194858],"mapped",[16044]],[[194859,194859],"mapped",[29605]],[[194860,194861],"mapped",[16056]],[[194862,194862],"mapped",[29767]],[[194863,194863],"mapped",[29788]],[[194864,194864],"mapped",[29809]],[[194865,194865],"mapped",[29829]],[[194866,194866],"mapped",[29898]],[[194867,194867],"mapped",[16155]],[[194868,194868],"mapped",[29988]],[[194869,194869],"mapped",[150582]],[[194870,194870],"mapped",[30014]],[[194871,194871],"mapped",[150674]],[[194872,194872],"mapped",[30064]],[[194873,194873],"mapped",[139679]],[[194874,194874],"mapped",[30224]],[[194875,194875],"mapped",[151457]],[[194876,194876],"mapped",[151480]],[[194877,194877],"mapped",[151620]],[[194878,194878],"mapped",[16380]],[[194879,194879],"mapped",[16392]],[[194880,194880],"mapped",[30452]],[[194881,194881],"mapped",[151795]],[[194882,194882],"mapped",[151794]],[[194883,194883],"mapped",[151833]],[[194884,194884],"mapped",[151859]],[[194885,194885],"mapped",[30494]],[[194886,194887],"mapped",[30495]],[[194888,194888],"mapped",[30538]],[[194889,194889],"mapped",[16441]],[[194890,194890],"mapped",[30603]],[[194891,194891],"mapped",[16454]],[[194892,194892],"mapped",[16534]],[[194893,194893],"mapped",[152605]],[[194894,194894],"mapped",[30798]],[[194895,194895],"mapped",[30860]],[[194896,194896],"mapped",[30924]],[[194897,194897],"mapped",[16611]],[[194898,194898],"mapped",[153126]],[[194899,194899],"mapped",[31062]],[[194900,194900],"mapped",[153242]],[[194901,194901],"mapped",[153285]],[[194902,194902],"mapped",[31119]],[[194903,194903],"mapped",[31211]],[[194904,194904],"mapped",[16687]],[[194905,194905],"mapped",[31296]],[[194906,194906],"mapped",[31306]],[[194907,194907],"mapped",[31311]],[[194908,194908],"mapped",[153980]],[[194909,194910],"mapped",[154279]],[[194911,194911],"disallowed"],[[194912,194912],"mapped",[16898]],[[194913,194913],"mapped",[154539]],[[194914,194914],"mapped",[31686]],[[194915,194915],"mapped",[31689]],[[194916,194916],"mapped",[16935]],[[194917,194917],"mapped",[154752]],[[194918,194918],"mapped",[31954]],[[194919,194919],"mapped",[17056]],[[194920,194920],"mapped",[31976]],[[194921,194921],"mapped",[31971]],[[194922,194922],"mapped",[32e3]],[[194923,194923],"mapped",[155526]],[[194924,194924],"mapped",[32099]],[[194925,194925],"mapped",[17153]],[[194926,194926],"mapped",[32199]],[[194927,194927],"mapped",[32258]],[[194928,194928],"mapped",[32325]],[[194929,194929],"mapped",[17204]],[[194930,194930],"mapped",[156200]],[[194931,194931],"mapped",[156231]],[[194932,194932],"mapped",[17241]],[[194933,194933],"mapped",[156377]],[[194934,194934],"mapped",[32634]],[[194935,194935],"mapped",[156478]],[[194936,194936],"mapped",[32661]],[[194937,194937],"mapped",[32762]],[[194938,194938],"mapped",[32773]],[[194939,194939],"mapped",[156890]],[[194940,194940],"mapped",[156963]],[[194941,194941],"mapped",[32864]],[[194942,194942],"mapped",[157096]],[[194943,194943],"mapped",[32880]],[[194944,194944],"mapped",[144223]],[[194945,194945],"mapped",[17365]],[[194946,194946],"mapped",[32946]],[[194947,194947],"mapped",[33027]],[[194948,194948],"mapped",[17419]],[[194949,194949],"mapped",[33086]],[[194950,194950],"mapped",[23221]],[[194951,194951],"mapped",[157607]],[[194952,194952],"mapped",[157621]],[[194953,194953],"mapped",[144275]],[[194954,194954],"mapped",[144284]],[[194955,194955],"mapped",[33281]],[[194956,194956],"mapped",[33284]],[[194957,194957],"mapped",[36766]],[[194958,194958],"mapped",[17515]],[[194959,194959],"mapped",[33425]],[[194960,194960],"mapped",[33419]],[[194961,194961],"mapped",[33437]],[[194962,194962],"mapped",[21171]],[[194963,194963],"mapped",[33457]],[[194964,194964],"mapped",[33459]],[[194965,194965],"mapped",[33469]],[[194966,194966],"mapped",[33510]],[[194967,194967],"mapped",[158524]],[[194968,194968],"mapped",[33509]],[[194969,194969],"mapped",[33565]],[[194970,194970],"mapped",[33635]],[[194971,194971],"mapped",[33709]],[[194972,194972],"mapped",[33571]],[[194973,194973],"mapped",[33725]],[[194974,194974],"mapped",[33767]],[[194975,194975],"mapped",[33879]],[[194976,194976],"mapped",[33619]],[[194977,194977],"mapped",[33738]],[[194978,194978],"mapped",[33740]],[[194979,194979],"mapped",[33756]],[[194980,194980],"mapped",[158774]],[[194981,194981],"mapped",[159083]],[[194982,194982],"mapped",[158933]],[[194983,194983],"mapped",[17707]],[[194984,194984],"mapped",[34033]],[[194985,194985],"mapped",[34035]],[[194986,194986],"mapped",[34070]],[[194987,194987],"mapped",[160714]],[[194988,194988],"mapped",[34148]],[[194989,194989],"mapped",[159532]],[[194990,194990],"mapped",[17757]],[[194991,194991],"mapped",[17761]],[[194992,194992],"mapped",[159665]],[[194993,194993],"mapped",[159954]],[[194994,194994],"mapped",[17771]],[[194995,194995],"mapped",[34384]],[[194996,194996],"mapped",[34396]],[[194997,194997],"mapped",[34407]],[[194998,194998],"mapped",[34409]],[[194999,194999],"mapped",[34473]],[[195e3,195e3],"mapped",[34440]],[[195001,195001],"mapped",[34574]],[[195002,195002],"mapped",[34530]],[[195003,195003],"mapped",[34681]],[[195004,195004],"mapped",[34600]],[[195005,195005],"mapped",[34667]],[[195006,195006],"mapped",[34694]],[[195007,195007],"disallowed"],[[195008,195008],"mapped",[34785]],[[195009,195009],"mapped",[34817]],[[195010,195010],"mapped",[17913]],[[195011,195011],"mapped",[34912]],[[195012,195012],"mapped",[34915]],[[195013,195013],"mapped",[161383]],[[195014,195014],"mapped",[35031]],[[195015,195015],"mapped",[35038]],[[195016,195016],"mapped",[17973]],[[195017,195017],"mapped",[35066]],[[195018,195018],"mapped",[13499]],[[195019,195019],"mapped",[161966]],[[195020,195020],"mapped",[162150]],[[195021,195021],"mapped",[18110]],[[195022,195022],"mapped",[18119]],[[195023,195023],"mapped",[35488]],[[195024,195024],"mapped",[35565]],[[195025,195025],"mapped",[35722]],[[195026,195026],"mapped",[35925]],[[195027,195027],"mapped",[162984]],[[195028,195028],"mapped",[36011]],[[195029,195029],"mapped",[36033]],[[195030,195030],"mapped",[36123]],[[195031,195031],"mapped",[36215]],[[195032,195032],"mapped",[163631]],[[195033,195033],"mapped",[133124]],[[195034,195034],"mapped",[36299]],[[195035,195035],"mapped",[36284]],[[195036,195036],"mapped",[36336]],[[195037,195037],"mapped",[133342]],[[195038,195038],"mapped",[36564]],[[195039,195039],"mapped",[36664]],[[195040,195040],"mapped",[165330]],[[195041,195041],"mapped",[165357]],[[195042,195042],"mapped",[37012]],[[195043,195043],"mapped",[37105]],[[195044,195044],"mapped",[37137]],[[195045,195045],"mapped",[165678]],[[195046,195046],"mapped",[37147]],[[195047,195047],"mapped",[37432]],[[195048,195048],"mapped",[37591]],[[195049,195049],"mapped",[37592]],[[195050,195050],"mapped",[37500]],[[195051,195051],"mapped",[37881]],[[195052,195052],"mapped",[37909]],[[195053,195053],"mapped",[166906]],[[195054,195054],"mapped",[38283]],[[195055,195055],"mapped",[18837]],[[195056,195056],"mapped",[38327]],[[195057,195057],"mapped",[167287]],[[195058,195058],"mapped",[18918]],[[195059,195059],"mapped",[38595]],[[195060,195060],"mapped",[23986]],[[195061,195061],"mapped",[38691]],[[195062,195062],"mapped",[168261]],[[195063,195063],"mapped",[168474]],[[195064,195064],"mapped",[19054]],[[195065,195065],"mapped",[19062]],[[195066,195066],"mapped",[38880]],[[195067,195067],"mapped",[168970]],[[195068,195068],"mapped",[19122]],[[195069,195069],"mapped",[169110]],[[195070,195071],"mapped",[38923]],[[195072,195072],"mapped",[38953]],[[195073,195073],"mapped",[169398]],[[195074,195074],"mapped",[39138]],[[195075,195075],"mapped",[19251]],[[195076,195076],"mapped",[39209]],[[195077,195077],"mapped",[39335]],[[195078,195078],"mapped",[39362]],[[195079,195079],"mapped",[39422]],[[195080,195080],"mapped",[19406]],[[195081,195081],"mapped",[170800]],[[195082,195082],"mapped",[39698]],[[195083,195083],"mapped",[4e4]],[[195084,195084],"mapped",[40189]],[[195085,195085],"mapped",[19662]],[[195086,195086],"mapped",[19693]],[[195087,195087],"mapped",[40295]],[[195088,195088],"mapped",[172238]],[[195089,195089],"mapped",[19704]],[[195090,195090],"mapped",[172293]],[[195091,195091],"mapped",[172558]],[[195092,195092],"mapped",[172689]],[[195093,195093],"mapped",[40635]],[[195094,195094],"mapped",[19798]],[[195095,195095],"mapped",[40697]],[[195096,195096],"mapped",[40702]],[[195097,195097],"mapped",[40709]],[[195098,195098],"mapped",[40719]],[[195099,195099],"mapped",[40726]],[[195100,195100],"mapped",[40763]],[[195101,195101],"mapped",[173568]],[[195102,196605],"disallowed"],[[196606,196607],"disallowed"],[[196608,262141],"disallowed"],[[262142,262143],"disallowed"],[[262144,327677],"disallowed"],[[327678,327679],"disallowed"],[[327680,393213],"disallowed"],[[393214,393215],"disallowed"],[[393216,458749],"disallowed"],[[458750,458751],"disallowed"],[[458752,524285],"disallowed"],[[524286,524287],"disallowed"],[[524288,589821],"disallowed"],[[589822,589823],"disallowed"],[[589824,655357],"disallowed"],[[655358,655359],"disallowed"],[[655360,720893],"disallowed"],[[720894,720895],"disallowed"],[[720896,786429],"disallowed"],[[786430,786431],"disallowed"],[[786432,851965],"disallowed"],[[851966,851967],"disallowed"],[[851968,917501],"disallowed"],[[917502,917503],"disallowed"],[[917504,917504],"disallowed"],[[917505,917505],"disallowed"],[[917506,917535],"disallowed"],[[917536,917631],"disallowed"],[[917632,917759],"disallowed"],[[917760,917999],"ignored"],[[918e3,983037],"disallowed"],[[983038,983039],"disallowed"],[[983040,1048573],"disallowed"],[[1048574,1048575],"disallowed"],[[1048576,1114109],"disallowed"],[[1114110,1114111],"disallowed"]]});var gwA=GA((VNt,gS)=>{"use strict";var swA=require("punycode"),owA=awA(),wI={TRANSITIONAL:0,NONTRANSITIONAL:1};function cwA(A){return A.split("\0").map(function(r){return r.normalize("NFC")}).join("\0")}function lwA(A){for(var r=0,t=owA.length-1;r<=t;){var i=Math.floor((r+t)/2),o=owA[i];if(o[0][0]<=A&&o[0][1]>=A)return o;o[0][0]>A?t=i-1:r=i+1}return null}var IFe=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;function uwA(A){return A.replace(IFe,"_").length}function bFe(A,r,t){for(var i=!1,o="",s=uwA(A),g=0;g253||g.length===0)&&(o.error=!0);for(var E=0;E63||s.length===0){o.error=!0;break}}return o.error?null:s.join(".")};gS.exports.toUnicode=function(A,r){var t=uS(A,r,wI.NONTRANSITIONAL);return{domain:t.string,error:t.error}};gS.exports.PROCESSING_OPTIONS=wI});var Tm=GA((zNt,Fh)=>{"use strict";var vI=require("punycode"),dwA=gwA(),BwA={ftp:21,file:null,gopher:70,http:80,https:443,ws:80,wss:443},fc=Symbol("failure");function pwA(A){return vI.ucs2.decode(A).length}function EwA(A,r){let t=A[r];return isNaN(t)?void 0:String.fromCodePoint(t)}function d6(A){return A>=48&&A<=57}function p6(A){return A>=65&&A<=90||A>=97&&A<=122}function kFe(A){return p6(A)||d6(A)}function I0(A){return d6(A)||A>=65&&A<=70||A>=97&&A<=102}function fwA(A){return A==="."||A.toLowerCase()==="%2e"}function xFe(A){return A=A.toLowerCase(),A===".."||A==="%2e."||A===".%2e"||A==="%2e%2e"}function HFe(A,r){return p6(A)&&(r===58||r===124)}function hwA(A){return A.length===2&&p6(A.codePointAt(0))&&(A[1]===":"||A[1]==="|")}function SFe(A){return A.length===2&&p6(A.codePointAt(0))&&A[1]===":"}function FFe(A){return A.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/)!==-1}function RFe(A){return A.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/)!==-1}function FeA(A){return BwA[A]!==void 0}function lp(A){return FeA(A.scheme)}function TFe(A){return BwA[A]}function QwA(A){let r=A.toString(16).toUpperCase();return r.length===1&&(r="0"+r),"%"+r}function NFe(A){let r=new Buffer(A),t="";for(let i=0;i126}var GFe=new Set([32,34,35,60,62,63,96,123,125]);function mwA(A){return dS(A)||GFe.has(A)}var YFe=new Set([47,58,59,61,64,91,92,93,94,124]);function TeA(A){return mwA(A)||YFe.has(A)}function ry(A,r){let t=String.fromCodePoint(A);return r(A)?NFe(t):t}function UFe(A){let r=10;return A.length>=2&&A.charAt(0)==="0"&&A.charAt(1).toLowerCase()==="x"?(A=A.substring(2),r=16):A.length>=2&&A.charAt(0)==="0"&&(A=A.substring(1),r=8),A===""?0:(r===10?/[^0-9]/:r===16?/[^0-9A-Fa-f]/:/[^0-7]/).test(A)?fc:parseInt(A,r)}function LFe(A){let r=A.split(".");if(r[r.length-1]===""&&r.length>1&&r.pop(),r.length>4)return A;let t=[];for(let s of r){if(s==="")return A;let g=UFe(s);if(g===fc)return A;t.push(g)}for(let s=0;s255)return fc;if(t[t.length-1]>=Math.pow(256,5-t.length))return fc;let i=t.pop(),o=0;for(let s of t)i+=s*Math.pow(256,3-o),++o;return i}function jFe(A){let r="",t=A;for(let i=1;i<=4;++i)r=String(t%256)+r,i!==4&&(r="."+r),t=Math.floor(t/256);return r}function WFe(A){let r=[0,0,0,0,0,0,0,0],t=0,i=null,o=0;if(A=vI.ucs2.decode(A),A[o]===58){if(A[o+1]!==58)return fc;o+=2,++t,i=t}for(;o6))return fc;let E=0;for(;A[o]!==void 0;){let p=null;if(E>0)if(A[o]===46&&E<4)++o;else return fc;if(!d6(A[o]))return fc;for(;d6(A[o]);){let B=parseInt(EwA(A,o));if(p===null)p=B;else{if(p===0)return fc;p=p*10+B}if(p>255)return fc;++o}r[t]=r[t]*256+p,++E,(E===2||E===4)&&++t}if(E!==4)return fc;break}else if(A[o]===58){if(++o,A[o]===void 0)return fc}else if(A[o]!==void 0)return fc;r[t]=s,++t}if(i!==null){let s=t-i;for(t=7;t!==0&&s>0;){let g=r[i+s-1];r[i+s-1]=r[t],r[t]=g,--t,--s}}else if(i===null&&t!==8)return fc;return r}function JFe(A){let r="",i=VFe(A).idx,o=!1;for(let s=0;s<=7;++s)if(!(o&&A[s]===0)){if(o&&(o=!1),i===s){r+=s===0?"::":":",o=!0;continue}r+=A[s].toString(16),s!==7&&(r+=":")}return r}function ReA(A,r){if(A[0]==="[")return A[A.length-1]!=="]"?fc:WFe(A.substring(1,A.length-1));if(!r)return qFe(A);let t=PFe(A),i=dwA.toASCII(t,!1,dwA.PROCESSING_OPTIONS.NONTRANSITIONAL,!1);if(i===null||FFe(i))return fc;let o=LFe(i);return typeof o=="number"||o===fc?o:i}function qFe(A){if(RFe(A))return fc;let r="",t=vI.ucs2.decode(A);for(let i=0;it&&(r=i,t=o),i=null,o=0):(i===null&&(i=s),++o);return o>t&&(r=i,t=o),{idx:r,len:t}}function NeA(A){return typeof A=="number"?jFe(A):A instanceof Array?"["+JFe(A)+"]":A}function zFe(A){return A.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g,"")}function KFe(A){return A.replace(/\u0009|\u000A|\u000D/g,"")}function DwA(A){let r=A.path;r.length!==0&&(A.scheme==="file"&&r.length===1&&ZFe(r[0])||r.pop())}function _wA(A){return A.username!==""||A.password!==""}function XFe(A){return A.host===null||A.host===""||A.cannotBeABaseURL||A.scheme==="file"}function ZFe(A){return/^[A-Za-z]:$/.test(A)}function qg(A,r,t,i,o){if(this.pointer=0,this.input=A,this.base=r||null,this.encodingOverride=t||"utf-8",this.stateOverride=o,this.url=i,this.failure=!1,this.parseError=!1,!this.url){this.url={scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,cannotBeABaseURL:!1};let g=zFe(this.input);g!==this.input&&(this.parseError=!0),this.input=g}let s=KFe(this.input);for(s!==this.input&&(this.parseError=!0),this.input=s,this.state=o||"scheme start",this.buffer="",this.atFlag=!1,this.arrFlag=!1,this.passwordTokenSeenFlag=!1,this.input=vI.ucs2.decode(this.input);this.pointer<=this.input.length;++this.pointer){let g=this.input[this.pointer],E=isNaN(g)?void 0:String.fromCodePoint(g),p=this["parse "+this.state](g,E);if(p){if(p===fc){this.failure=!0;break}}else break}}qg.prototype["parse scheme start"]=function(r,t){if(p6(r))this.buffer+=t.toLowerCase(),this.state="scheme";else if(!this.stateOverride)this.state="no scheme",--this.pointer;else return this.parseError=!0,fc;return!0};qg.prototype["parse scheme"]=function(r,t){if(kFe(r)||r===43||r===45||r===46)this.buffer+=t.toLowerCase();else if(r===58){if(this.stateOverride&&(lp(this.url)&&!FeA(this.buffer)||!lp(this.url)&&FeA(this.buffer)||(_wA(this.url)||this.url.port!==null)&&this.buffer==="file"||this.url.scheme==="file"&&(this.url.host===""||this.url.host===null))||(this.url.scheme=this.buffer,this.buffer="",this.stateOverride))return!1;this.url.scheme==="file"?((this.input[this.pointer+1]!==47||this.input[this.pointer+2]!==47)&&(this.parseError=!0),this.state="file"):lp(this.url)&&this.base!==null&&this.base.scheme===this.url.scheme?this.state="special relative or authority":lp(this.url)?this.state="special authority slashes":this.input[this.pointer+1]===47?(this.state="path or authority",++this.pointer):(this.url.cannotBeABaseURL=!0,this.url.path.push(""),this.state="cannot-be-a-base-URL path")}else if(!this.stateOverride)this.buffer="",this.state="no scheme",this.pointer=-1;else return this.parseError=!0,fc;return!0};qg.prototype["parse no scheme"]=function(r){return this.base===null||this.base.cannotBeABaseURL&&r!==35?fc:(this.base.cannotBeABaseURL&&r===35?(this.url.scheme=this.base.scheme,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.url.cannotBeABaseURL=!0,this.state="fragment"):this.base.scheme==="file"?(this.state="file",--this.pointer):(this.state="relative",--this.pointer),!0)};qg.prototype["parse special relative or authority"]=function(r){return r===47&&this.input[this.pointer+1]===47?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="relative",--this.pointer),!0};qg.prototype["parse path or authority"]=function(r){return r===47?this.state="authority":(this.state="path",--this.pointer),!0};qg.prototype["parse relative"]=function(r){return this.url.scheme=this.base.scheme,isNaN(r)?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query):r===47?this.state="relative slash":r===63?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):r===35?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):lp(this.url)&&r===92?(this.parseError=!0,this.state="relative slash"):(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(0,this.base.path.length-1),this.state="path",--this.pointer),!0};qg.prototype["parse relative slash"]=function(r){return lp(this.url)&&(r===47||r===92)?(r===92&&(this.parseError=!0),this.state="special authority ignore slashes"):r===47?this.state="authority":(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.state="path",--this.pointer),!0};qg.prototype["parse special authority slashes"]=function(r){return r===47&&this.input[this.pointer+1]===47?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="special authority ignore slashes",--this.pointer),!0};qg.prototype["parse special authority ignore slashes"]=function(r){return r!==47&&r!==92?(this.state="authority",--this.pointer):this.parseError=!0,!0};qg.prototype["parse authority"]=function(r,t){if(r===64){this.parseError=!0,this.atFlag&&(this.buffer="%40"+this.buffer),this.atFlag=!0;let i=pwA(this.buffer);for(let o=0;oMath.pow(2,16)-1)return this.parseError=!0,fc;this.url.port=i===TFe(this.url.scheme)?null:i,this.buffer=""}if(this.stateOverride)return!1;this.state="path start",--this.pointer}else return this.parseError=!0,fc;return!0};var $Fe=new Set([47,92,63,35]);qg.prototype["parse file"]=function(r){return this.url.scheme="file",r===47||r===92?(r===92&&(this.parseError=!0),this.state="file slash"):this.base!==null&&this.base.scheme==="file"?isNaN(r)?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query):r===63?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):r===35?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):(this.input.length-this.pointer-1===0||!HFe(r,this.input[this.pointer+1])||this.input.length-this.pointer-1>=2&&!$Fe.has(this.input[this.pointer+2])?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),DwA(this.url)):this.parseError=!0,this.state="path",--this.pointer):(this.state="path",--this.pointer),!0};qg.prototype["parse file slash"]=function(r){return r===47||r===92?(r===92&&(this.parseError=!0),this.state="file host"):(this.base!==null&&this.base.scheme==="file"&&(SFe(this.base.path[0])?this.url.path.push(this.base.path[0]):this.url.host=this.base.host),this.state="path",--this.pointer),!0};qg.prototype["parse file host"]=function(r,t){if(isNaN(r)||r===47||r===92||r===63||r===35)if(--this.pointer,!this.stateOverride&&hwA(this.buffer))this.parseError=!0,this.state="path";else if(this.buffer===""){if(this.url.host="",this.stateOverride)return!1;this.state="path start"}else{let i=ReA(this.buffer,lp(this.url));if(i===fc)return fc;if(i==="localhost"&&(i=""),this.url.host=i,this.stateOverride)return!1;this.buffer="",this.state="path start"}else this.buffer+=t;return!0};qg.prototype["parse path start"]=function(r){return lp(this.url)?(r===92&&(this.parseError=!0),this.state="path",r!==47&&r!==92&&--this.pointer):!this.stateOverride&&r===63?(this.url.query="",this.state="query"):!this.stateOverride&&r===35?(this.url.fragment="",this.state="fragment"):r!==void 0&&(this.state="path",r!==47&&--this.pointer),!0};qg.prototype["parse path"]=function(r){if(isNaN(r)||r===47||lp(this.url)&&r===92||!this.stateOverride&&(r===63||r===35)){if(lp(this.url)&&r===92&&(this.parseError=!0),xFe(this.buffer)?(DwA(this.url),r!==47&&!(lp(this.url)&&r===92)&&this.url.path.push("")):fwA(this.buffer)&&r!==47&&!(lp(this.url)&&r===92)?this.url.path.push(""):fwA(this.buffer)||(this.url.scheme==="file"&&this.url.path.length===0&&hwA(this.buffer)&&(this.url.host!==""&&this.url.host!==null&&(this.parseError=!0,this.url.host=""),this.buffer=this.buffer[0]+":"),this.url.path.push(this.buffer)),this.buffer="",this.url.scheme==="file"&&(r===void 0||r===63||r===35))for(;this.url.path.length>1&&this.url.path[0]==="";)this.parseError=!0,this.url.path.shift();r===63&&(this.url.query="",this.state="query"),r===35&&(this.url.fragment="",this.state="fragment")}else r===37&&(!I0(this.input[this.pointer+1])||!I0(this.input[this.pointer+2]))&&(this.parseError=!0),this.buffer+=ry(r,mwA);return!0};qg.prototype["parse cannot-be-a-base-URL path"]=function(r){return r===63?(this.url.query="",this.state="query"):r===35?(this.url.fragment="",this.state="fragment"):(!isNaN(r)&&r!==37&&(this.parseError=!0),r===37&&(!I0(this.input[this.pointer+1])||!I0(this.input[this.pointer+2]))&&(this.parseError=!0),isNaN(r)||(this.url.path[0]=this.url.path[0]+ry(r,dS))),!0};qg.prototype["parse query"]=function(r,t){if(isNaN(r)||!this.stateOverride&&r===35){(!lp(this.url)||this.url.scheme==="ws"||this.url.scheme==="wss")&&(this.encodingOverride="utf-8");let i=new Buffer(this.buffer);for(let o=0;o126||i[o]===34||i[o]===35||i[o]===60||i[o]===62?this.url.query+=QwA(i[o]):this.url.query+=String.fromCodePoint(i[o]);this.buffer="",r===35&&(this.url.fragment="",this.state="fragment")}else r===37&&(!I0(this.input[this.pointer+1])||!I0(this.input[this.pointer+2]))&&(this.parseError=!0),this.buffer+=t;return!0};qg.prototype["parse fragment"]=function(r){return isNaN(r)||(r===0?this.parseError=!0:(r===37&&(!I0(this.input[this.pointer+1])||!I0(this.input[this.pointer+2]))&&(this.parseError=!0),this.url.fragment+=ry(r,dS))),!0};function ARe(A,r){let t=A.scheme+":";if(A.host!==null?(t+="//",(A.username!==""||A.password!=="")&&(t+=A.username,A.password!==""&&(t+=":"+A.password),t+="@"),t+=NeA(A.host),A.port!==null&&(t+=":"+A.port)):A.host===null&&A.scheme==="file"&&(t+="//"),A.cannotBeABaseURL)t+=A.path[0];else for(let i of A.path)t+="/"+i;return A.query!==null&&(t+="?"+A.query),!r&&A.fragment!==null&&(t+="#"+A.fragment),t}function eRe(A){let r=A.scheme+"://";return r+=NeA(A.host),A.port!==null&&(r+=":"+A.port),r}Fh.exports.serializeURL=ARe;Fh.exports.serializeURLOrigin=function(A){switch(A.scheme){case"blob":try{return Fh.exports.serializeURLOrigin(Fh.exports.parseURL(A.path[0]))}catch{return"null"}case"ftp":case"gopher":case"http":case"https":case"ws":case"wss":return eRe({scheme:A.scheme,host:A.host,port:A.port});case"file":return"file://";default:return"null"}};Fh.exports.basicURLParse=function(A,r){r===void 0&&(r={});let t=new qg(A,r.baseURL,r.encodingOverride,r.url,r.stateOverride);return t.failure?"failure":t.url};Fh.exports.setTheUsername=function(A,r){A.username="";let t=vI.ucs2.decode(r);for(let i=0;i{"use strict";var Vg=Tm();wwA.implementation=class{constructor(r){let t=r[0],i=r[1],o=null;if(i!==void 0&&(o=Vg.basicURLParse(i),o==="failure"))throw new TypeError("Invalid base URL");let s=Vg.basicURLParse(t,{baseURL:o});if(s==="failure")throw new TypeError("Invalid URL");this._url=s}get href(){return Vg.serializeURL(this._url)}set href(r){let t=Vg.basicURLParse(r);if(t==="failure")throw new TypeError("Invalid URL");this._url=t}get origin(){return Vg.serializeURLOrigin(this._url)}get protocol(){return this._url.scheme+":"}set protocol(r){Vg.basicURLParse(r+":",{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(r){Vg.cannotHaveAUsernamePasswordPort(this._url)||Vg.setTheUsername(this._url,r)}get password(){return this._url.password}set password(r){Vg.cannotHaveAUsernamePasswordPort(this._url)||Vg.setThePassword(this._url,r)}get host(){let r=this._url;return r.host===null?"":r.port===null?Vg.serializeHost(r.host):Vg.serializeHost(r.host)+":"+Vg.serializeInteger(r.port)}set host(r){this._url.cannotBeABaseURL||Vg.basicURLParse(r,{url:this._url,stateOverride:"host"})}get hostname(){return this._url.host===null?"":Vg.serializeHost(this._url.host)}set hostname(r){this._url.cannotBeABaseURL||Vg.basicURLParse(r,{url:this._url,stateOverride:"hostname"})}get port(){return this._url.port===null?"":Vg.serializeInteger(this._url.port)}set port(r){Vg.cannotHaveAUsernamePasswordPort(this._url)||(r===""?this._url.port=null:Vg.basicURLParse(r,{url:this._url,stateOverride:"port"}))}get pathname(){return this._url.cannotBeABaseURL?this._url.path[0]:this._url.path.length===0?"":"/"+this._url.path.join("/")}set pathname(r){this._url.cannotBeABaseURL||(this._url.path=[],Vg.basicURLParse(r,{url:this._url,stateOverride:"path start"}))}get search(){return this._url.query===null||this._url.query===""?"":"?"+this._url.query}set search(r){let t=this._url;if(r===""){t.query=null;return}let i=r[0]==="?"?r.substring(1):r;t.query="",Vg.basicURLParse(i,{url:t,stateOverride:"query"})}get hash(){return this._url.fragment===null||this._url.fragment===""?"":"#"+this._url.fragment}set hash(r){if(r===""){this._url.fragment=null;return}let t=r[0]==="#"?r.substring(1):r;this._url.fragment="",Vg.basicURLParse(t,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}}});var IwA=GA((ZNt,E6)=>{"use strict";var wQ=iwA(),CwA=nwA(),ywA=vwA(),hu=CwA.implSymbol;function Vp(A){if(!this||this[hu]||!(this instanceof Vp))throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");if(arguments.length<1)throw new TypeError("Failed to construct 'URL': 1 argument required, but only "+arguments.length+" present.");let r=[];for(let t=0;t{"use strict";Nm.URL=IwA().interface;Nm.serializeURL=Tm().serializeURL;Nm.serializeURLOrigin=Tm().serializeURLOrigin;Nm.basicURLParse=Tm().basicURLParse;Nm.setTheUsername=Tm().setTheUsername;Nm.setThePassword=Tm().setThePassword;Nm.serializeHost=Tm().serializeHost;Nm.serializeInteger=Tm().serializeInteger;Nm.parseURL=Tm().parseURL});var VeA=GA((Pm,PwA)=>{"use strict";Object.defineProperty(Pm,"__esModule",{value:!0});function II(A){return A&&typeof A=="object"&&"default"in A?A.default:A}var b0=II(require("stream")),xwA=II(require("http")),ES=II(require("url")),HwA=II(bwA()),rRe=II(require("https")),ty=II(require("zlib")),tRe=b0.Readable,Q4=Symbol("buffer"),PeA=Symbol("type"),B6=class A{constructor(){this[PeA]="";let r=arguments[0],t=arguments[1],i=[],o=0;if(r){let g=r,E=Number(g.length);for(let p=0;p1&&arguments[1]!==void 0?arguments[1]:{},i=t.size;let o=i===void 0?0:i;var s=t.timeout;let g=s===void 0?0:s;A==null?A=null:SwA(A)?A=Buffer.from(A.toString()):m6(A)||Buffer.isBuffer(A)||(Object.prototype.toString.call(A)==="[object ArrayBuffer]"?A=Buffer.from(A):ArrayBuffer.isView(A)?A=Buffer.from(A.buffer,A.byteOffset,A.byteLength):A instanceof b0||(A=Buffer.from(String(A)))),this[D4]={body:A,disturbed:!1,error:null},this.size=o,this.timeout=g,A instanceof b0&&A.on("error",function(E){let p=E.name==="AbortError"?E:new PE(`Invalid response body while trying to fetch ${r.url}: ${E.message}`,"system",E);r[D4].error=p})}zp.prototype={get body(){return this[D4].body},get bodyUsed(){return this[D4].disturbed},arrayBuffer(){return yI.call(this).then(function(A){return A.buffer.slice(A.byteOffset,A.byteOffset+A.byteLength)})},blob(){let A=this.headers&&this.headers.get("content-type")||"";return yI.call(this).then(function(r){return Object.assign(new B6([],{type:A.toLowerCase()}),{[Q4]:r})})},json(){var A=this;return yI.call(this).then(function(r){try{return JSON.parse(r.toString())}catch(t){return zp.Promise.reject(new PE(`invalid json response body at ${A.url} reason: ${t.message}`,"invalid-json"))}})},text(){return yI.call(this).then(function(A){return A.toString()})},buffer(){return yI.call(this)},textConverted(){var A=this;return yI.call(this).then(function(r){return iRe(r,A.headers)})}};Object.defineProperties(zp.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});zp.mixIn=function(A){for(let r of Object.getOwnPropertyNames(zp.prototype))if(!(r in A)){let t=Object.getOwnPropertyDescriptor(zp.prototype,r);Object.defineProperty(A,r,t)}};function yI(){var A=this;if(this[D4].disturbed)return zp.Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[D4].disturbed=!0,this[D4].error)return zp.Promise.reject(this[D4].error);let r=this.body;if(r===null)return zp.Promise.resolve(Buffer.alloc(0));if(m6(r)&&(r=r.stream()),Buffer.isBuffer(r))return zp.Promise.resolve(r);if(!(r instanceof b0))return zp.Promise.resolve(Buffer.alloc(0));let t=[],i=0,o=!1;return new zp.Promise(function(s,g){let E;A.timeout&&(E=setTimeout(function(){o=!0,g(new PE(`Response timeout while trying to fetch ${A.url} (over ${A.timeout}ms)`,"body-timeout"))},A.timeout)),r.on("error",function(p){p.name==="AbortError"?(o=!0,g(p)):g(new PE(`Invalid response body while trying to fetch ${A.url}: ${p.message}`,"system",p))}),r.on("data",function(p){if(!(o||p===null)){if(A.size&&i+p.length>A.size){o=!0,g(new PE(`content size at ${A.url} over limit: ${A.size}`,"max-size"));return}i+=p.length,t.push(p)}}),r.on("end",function(){if(!o){clearTimeout(E);try{s(Buffer.concat(t,i))}catch(p){g(new PE(`Could not create Buffer from response body for ${A.url}: ${p.message}`,"system",p))}}})})}function iRe(A,r){if(typeof LeA!="function")throw new Error("The package `encoding` must be installed to use the textConverted() function");let t=r.get("content-type"),i="utf-8",o,s;return t&&(o=/charset=([^;]*)/i.exec(t)),s=A.slice(0,1024).toString(),!o&&s&&(o=/0&&arguments[0]!==void 0?arguments[0]:void 0;if(this[sd]=Object.create(null),r instanceof A){let t=r.raw(),i=Object.keys(t);for(let o of i)for(let s of t[o])this.append(o,s);return}if(r!=null)if(typeof r=="object"){let t=r[Symbol.iterator];if(t!=null){if(typeof t!="function")throw new TypeError("Header pairs must be iterable");let i=[];for(let o of r){if(typeof o!="object"||typeof o[Symbol.iterator]!="function")throw new TypeError("Each header pair must be iterable");i.push(Array.from(o))}for(let o of i){if(o.length!==2)throw new TypeError("Each header pair must be a name/value tuple");this.append(o[0],o[1])}}else for(let i of Object.keys(r)){let o=r[i];this.append(i,o)}}else throw new TypeError("Provided initializer must be an object")}get(r){r=`${r}`,f6(r);let t=CI(this[sd],r);return t===void 0?null:this[sd][t].join(", ")}forEach(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:void 0,i=WeA(this),o=0;for(;o1&&arguments[1]!==void 0?arguments[1]:"key+value";return Object.keys(A[sd]).sort().map(r==="key"?function(i){return i.toLowerCase()}:r==="value"?function(i){return A[sd][i].join(", ")}:function(i){return[i.toLowerCase(),A[sd][i].join(", ")]})}var JeA=Symbol("internal");function GeA(A,r){let t=Object.create(qeA);return t[JeA]={target:A,kind:r,index:0},t}var qeA=Object.setPrototypeOf({next(){if(!this||Object.getPrototypeOf(this)!==qeA)throw new TypeError("Value of `this` is not a HeadersIterator");var A=this[JeA];let r=A.target,t=A.kind,i=A.index,o=WeA(r,t),s=o.length;return i>=s?{value:void 0,done:!0}:(this[JeA].index=i+1,{value:o[i],done:!1})}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));Object.defineProperty(qeA,Symbol.toStringTag,{value:"HeadersIterator",writable:!1,enumerable:!1,configurable:!0});function aRe(A){let r=Object.assign({__proto__:null},A[sd]),t=CI(A[sd],"Host");return t!==void 0&&(r[t]=r[t][0]),r}function oRe(A){let r=new yQ;for(let t of Object.keys(A))if(!NwA.test(t))if(Array.isArray(A[t]))for(let i of A[t])jeA.test(i)||(r[sd][t]===void 0?r[sd][t]=[i]:r[sd][t].push(i));else jeA.test(A[t])||(r[sd][t]=[A[t]]);return r}var p_=Symbol("Response internals"),sRe=xwA.STATUS_CODES,vQ=class A{constructor(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};zp.call(this,r,t);let i=t.status||200,o=new yQ(t.headers);if(r!=null&&!o.has("Content-Type")){let s=RwA(r);s&&o.append("Content-Type",s)}this[p_]={url:t.url,status:i,statusText:t.statusText||sRe[i],headers:o,counter:t.counter}}get url(){return this[p_].url||""}get status(){return this[p_].status}get ok(){return this[p_].status>=200&&this[p_].status<300}get redirected(){return this[p_].counter>0}get statusText(){return this[p_].statusText}get headers(){return this[p_].headers}clone(){return new A(FwA(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected})}};zp.mixIn(vQ.prototype);Object.defineProperties(vQ.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}});Object.defineProperty(vQ.prototype,Symbol.toStringTag,{value:"Response",writable:!1,enumerable:!1,configurable:!0});var m4=Symbol("Request internals"),cRe=ES.URL||HwA.URL,lRe=ES.parse,uRe=ES.format;function YeA(A){return/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(A)&&(A=new cRe(A).toString()),lRe(A)}var gRe="destroy"in b0.Readable.prototype;function pS(A){return typeof A=="object"&&typeof A[m4]=="object"}function dRe(A){let r=A&&typeof A=="object"&&Object.getPrototypeOf(A);return!!(r&&r.constructor.name==="AbortSignal")}var f_=class A{constructor(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i;pS(r)?i=YeA(r.url):(r&&r.href?i=YeA(r.href):i=YeA(`${r}`),r={});let o=t.method||r.method||"GET";if(o=o.toUpperCase(),(t.body!=null||pS(r)&&r.body!==null)&&(o==="GET"||o==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let s=t.body!=null?t.body:pS(r)&&r.body!==null?FwA(r):null;zp.call(this,s,{timeout:t.timeout||r.timeout||0,size:t.size||r.size||0});let g=new yQ(t.headers||r.headers||{});if(s!=null&&!g.has("Content-Type")){let p=RwA(s);p&&g.append("Content-Type",p)}let E=pS(r)?r.signal:null;if("signal"in t&&(E=t.signal),E!=null&&!dRe(E))throw new TypeError("Expected signal to be an instanceof AbortSignal");this[m4]={method:o,redirect:t.redirect||r.redirect||"follow",headers:g,parsedURL:i,signal:E},this.follow=t.follow!==void 0?t.follow:r.follow!==void 0?r.follow:20,this.compress=t.compress!==void 0?t.compress:r.compress!==void 0?r.compress:!0,this.counter=t.counter||r.counter||0,this.agent=t.agent||r.agent}get method(){return this[m4].method}get url(){return uRe(this[m4].parsedURL)}get headers(){return this[m4].headers}get redirect(){return this[m4].redirect}get signal(){return this[m4].signal}clone(){return new A(this)}};zp.mixIn(f_.prototype);Object.defineProperty(f_.prototype,Symbol.toStringTag,{value:"Request",writable:!1,enumerable:!1,configurable:!0});Object.defineProperties(f_.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}});function pRe(A){let r=A[m4].parsedURL,t=new yQ(A[m4].headers);if(t.has("Accept")||t.set("Accept","*/*"),!r.protocol||!r.hostname)throw new TypeError("Only absolute URLs are supported");if(!/^https?:$/.test(r.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(A.signal&&A.body instanceof b0.Readable&&!gRe)throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");let i=null;if(A.body==null&&/^(POST|PUT)$/i.test(A.method)&&(i="0"),A.body!=null){let s=TwA(A);typeof s=="number"&&(i=String(s))}i&&t.set("Content-Length",i),t.has("User-Agent")||t.set("User-Agent","node-fetch/1.0 (+https://github.com/bitinn/node-fetch)"),A.compress&&!t.has("Accept-Encoding")&&t.set("Accept-Encoding","gzip,deflate");let o=A.agent;return typeof o=="function"&&(o=o(r)),!t.has("Connection")&&!o&&t.set("Connection","close"),Object.assign({},r,{method:A.method,headers:aRe(t),agent:o})}function h6(A){Error.call(this,A),this.type="aborted",this.message=A,Error.captureStackTrace(this,this.constructor)}h6.prototype=Object.create(Error.prototype);h6.prototype.constructor=h6;h6.prototype.name="AbortError";var Q6=ES.URL||HwA.URL,kwA=b0.PassThrough,ERe=function(r,t){let i=new Q6(t).hostname,o=new Q6(r).hostname;return i===o||i[i.length-o.length-1]==="."&&i.endsWith(o)},fRe=function(r,t){let i=new Q6(t).protocol,o=new Q6(r).protocol;return i===o};function E_(A,r){if(!E_.Promise)throw new Error("native promise missing, set fetch.Promise to your favorite alternative");return zp.Promise=E_.Promise,new E_.Promise(function(t,i){let o=new f_(A,r),s=pRe(o),g=(s.protocol==="https:"?rRe:xwA).request,E=o.signal,p=null,B=function(){let P=new h6("The user aborted a request.");i(P),o.body&&o.body instanceof b0.Readable&&UeA(o.body,P),!(!p||!p.body)&&p.body.emit("error",P)};if(E&&E.aborted){B();return}let m=function(){B(),O()},_=g(s),x;E&&E.addEventListener("abort",m);function O(){_.abort(),E&&E.removeEventListener("abort",m),clearTimeout(x)}o.timeout&&_.once("socket",function(k){x=setTimeout(function(){i(new PE(`network timeout at: ${o.url}`,"request-timeout")),O()},o.timeout)}),_.on("error",function(k){i(new PE(`request to ${o.url} failed, reason: ${k.message}`,"system",k)),p&&p.body&&UeA(p.body,k),O()}),BRe(_,function(k){E&&E.aborted||p&&p.body&&UeA(p.body,k)}),parseInt(process.version.substring(1))<14&&_.on("socket",function(k){k.addListener("close",function(P){let H=k.listenerCount("data")>0;if(p&&H&&!P&&!(E&&E.aborted)){let T=new Error("Premature close");T.code="ERR_STREAM_PREMATURE_CLOSE",p.body.emit("error",T)}})}),_.on("response",function(k){clearTimeout(x);let P=oRe(k.headers);if(E_.isRedirect(k.statusCode)){let y=P.get("Location"),S=null;try{S=y===null?null:new Q6(y,o.url).toString()}catch{if(o.redirect!=="manual"){i(new PE(`uri requested responds with an invalid redirect URL: ${y}`,"invalid-redirect")),O();return}}switch(o.redirect){case"error":i(new PE(`uri requested responds with a redirect, redirect mode is set to error: ${o.url}`,"no-redirect")),O();return;case"manual":if(S!==null)try{P.set("Location",S)}catch(V){i(V)}break;case"follow":if(S===null)break;if(o.counter>=o.follow){i(new PE(`maximum redirect reached at: ${o.url}`,"max-redirect")),O();return}let U={headers:new yQ(o.headers),follow:o.follow,counter:o.counter+1,agent:o.agent,compress:o.compress,method:o.method,body:o.body,signal:o.signal,timeout:o.timeout,size:o.size};if(!ERe(o.url,S)||!fRe(o.url,S))for(let V of["authorization","www-authenticate","cookie","cookie2"])U.headers.delete(V);if(k.statusCode!==303&&o.body&&TwA(o)===null){i(new PE("Cannot follow redirect with body being a readable stream","unsupported-redirect")),O();return}(k.statusCode===303||(k.statusCode===301||k.statusCode===302)&&o.method==="POST")&&(U.method="GET",U.body=void 0,U.headers.delete("content-length")),t(E_(new f_(S,U))),O();return}}k.once("end",function(){E&&E.removeEventListener("abort",m)});let H=k.pipe(new kwA),T={url:o.url,status:k.statusCode,statusText:k.statusMessage,headers:P,size:o.size,timeout:o.timeout,counter:o.counter},v=P.get("Content-Encoding");if(!o.compress||o.method==="HEAD"||v===null||k.statusCode===204||k.statusCode===304){p=new vQ(H,T),t(p);return}let F={flush:ty.Z_SYNC_FLUSH,finishFlush:ty.Z_SYNC_FLUSH};if(v=="gzip"||v=="x-gzip"){H=H.pipe(ty.createGunzip(F)),p=new vQ(H,T),t(p);return}if(v=="deflate"||v=="x-deflate"){let y=k.pipe(new kwA);y.once("data",function(S){(S[0]&15)===8?H=H.pipe(ty.createInflate()):H=H.pipe(ty.createInflateRaw()),p=new vQ(H,T),t(p)}),y.on("end",function(){p||(p=new vQ(H,T),t(p))});return}if(v=="br"&&typeof ty.createBrotliDecompress=="function"){H=H.pipe(ty.createBrotliDecompress()),p=new vQ(H,T),t(p);return}p=new vQ(H,T),t(p)}),nRe(_,o)})}function BRe(A,r){let t;A.on("socket",function(i){t=i}),A.on("response",function(i){let o=i.headers;o["transfer-encoding"]==="chunked"&&!o["content-length"]&&i.once("close",function(s){if(t.listenerCount("data")>0&&!s){let E=new Error("Premature close");E.code="ERR_STREAM_PREMATURE_CLOSE",r(E)}})})}function UeA(A,r){A.destroy?A.destroy(r):(A.emit("error",r),A.end())}E_.isRedirect=function(A){return A===301||A===302||A===303||A===307||A===308};E_.Promise=global.Promise;PwA.exports=Pm=E_;Object.defineProperty(Pm,"__esModule",{value:!0});Pm.default=Pm;Pm.Headers=yQ;Pm.Request=f_;Pm.Response=vQ;Pm.FetchError=PE});var KeA=GA((APt,zeA)=>{"use strict";var fS=VeA();zeA.exports=function(A,r){return/^\/\//.test(A)&&(A="https:"+A),fS.call(this,A,r)};global.fetch||(global.fetch=zeA.exports,global.Response=fS.Response,global.Headers=fS.Headers,global.Request=fS.Request)});var Vl=GA(wS=>{"use strict";Object.defineProperty(wS,"__esModule",{value:!0});wS.isFunction=void 0;function GRe(A){return typeof A=="function"}wS.isFunction=GRe});var y_=GA(vS=>{"use strict";Object.defineProperty(vS,"__esModule",{value:!0});vS.createErrorClass=void 0;function YRe(A){var r=function(i){Error.call(i),i.stack=new Error().stack},t=A(r);return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}vS.createErrorClass=YRe});var crA=GA(yS=>{"use strict";Object.defineProperty(yS,"__esModule",{value:!0});yS.UnsubscriptionError=void 0;var URe=y_();yS.UnsubscriptionError=URe.createErrorClass(function(A){return function(t){A(this),this.message=t?t.length+` errors occurred during unsubscription: -`+t.map(function(i,o){return o+1+") "+i.toString()}).join(` - `):"",this.name="UnsubscriptionError",this.errors=t}})});var w4=GA(CS=>{"use strict";Object.defineProperty(CS,"__esModule",{value:!0});CS.arrRemove=void 0;function LRe(A,r){if(A){var t=A.indexOf(r);0<=t&&A.splice(t,1)}}CS.arrRemove=LRe});var Nh=GA(KB=>{"use strict";var OvA=KB&&KB.__values||function(A){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&A[r],i=0;if(t)return t.call(A);if(A&&typeof A.length=="number")return{next:function(){return A&&i>=A.length&&(A=void 0),{value:A&&A[i++],done:!A}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")},MvA=KB&&KB.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},kvA=KB&&KB.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(IS,"__esModule",{value:!0});IS.config=void 0;IS.config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var grA=GA(Um=>{"use strict";var SvA=Um&&Um.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},FvA=Um&&Um.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(bS,"__esModule",{value:!0});bS.reportUnhandledError=void 0;var WRe=SI(),JRe=grA();function qRe(A){JRe.timeoutProvider.setTimeout(function(){var r=WRe.config.onUnhandledError;if(r)r(A);else throw A})}bS.reportUnhandledError=qRe});var GE=GA(OS=>{"use strict";Object.defineProperty(OS,"__esModule",{value:!0});OS.noop=void 0;function VRe(){}OS.noop=VRe});var RvA=GA(Lm=>{"use strict";Object.defineProperty(Lm,"__esModule",{value:!0});Lm.createNotification=Lm.nextNotification=Lm.errorNotification=Lm.COMPLETE_NOTIFICATION=void 0;Lm.COMPLETE_NOTIFICATION=function(){return MS("C",void 0,void 0)}();function zRe(A){return MS("E",void 0,A)}Lm.errorNotification=zRe;function KRe(A){return MS("N",A,void 0)}Lm.nextNotification=KRe;function MS(A,r,t){return{kind:A,value:r,error:t}}Lm.createNotification=MS});var kS=GA(FI=>{"use strict";Object.defineProperty(FI,"__esModule",{value:!0});FI.captureError=FI.errorContext=void 0;var TvA=SI(),sy=null;function XRe(A){if(TvA.config.useDeprecatedSynchronousErrorHandling){var r=!sy;if(r&&(sy={errorThrown:!1,error:null}),A(),r){var t=sy,i=t.errorThrown,o=t.error;if(sy=null,i)throw o}}else A()}FI.errorContext=XRe;function ZRe(A){TvA.config.useDeprecatedSynchronousErrorHandling&&sy&&(sy.errorThrown=!0,sy.error=A)}FI.captureError=ZRe});var RI=GA(k0=>{"use strict";var GvA=k0&&k0.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(k0,"__esModule",{value:!0});k0.EMPTY_OBSERVER=k0.SafeSubscriber=k0.Subscriber=void 0;var $Re=Vl(),NvA=Nh(),BrA=SI(),ATe=drA(),PvA=GE(),prA=RvA(),eTe=grA(),rTe=kS(),YvA=function(A){GvA(r,A);function r(t){var i=A.call(this)||this;return i.isStopped=!1,t?(i.destination=t,NvA.isSubscription(t)&&t.add(i)):i.destination=k0.EMPTY_OBSERVER,i}return r.create=function(t,i,o){return new UvA(t,i,o)},r.prototype.next=function(t){this.isStopped?frA(prA.nextNotification(t),this):this._next(t)},r.prototype.error=function(t){this.isStopped?frA(prA.errorNotification(t),this):(this.isStopped=!0,this._error(t))},r.prototype.complete=function(){this.isStopped?frA(prA.COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())},r.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,A.prototype.unsubscribe.call(this),this.destination=null)},r.prototype._next=function(t){this.destination.next(t)},r.prototype._error=function(t){try{this.destination.error(t)}finally{this.unsubscribe()}},r.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},r}(NvA.Subscription);k0.Subscriber=YvA;var tTe=Function.prototype.bind;function ErA(A,r){return tTe.call(A,r)}var iTe=function(){function A(r){this.partialObserver=r}return A.prototype.next=function(r){var t=this.partialObserver;if(t.next)try{t.next(r)}catch(i){xS(i)}},A.prototype.error=function(r){var t=this.partialObserver;if(t.error)try{t.error(r)}catch(i){xS(i)}else xS(r)},A.prototype.complete=function(){var r=this.partialObserver;if(r.complete)try{r.complete()}catch(t){xS(t)}},A}(),UvA=function(A){GvA(r,A);function r(t,i,o){var s=A.call(this)||this,g;if($Re.isFunction(t)||!t)g={next:t??void 0,error:i??void 0,complete:o??void 0};else{var E;s&&BrA.config.useDeprecatedNextContext?(E=Object.create(t),E.unsubscribe=function(){return s.unsubscribe()},g={next:t.next&&ErA(t.next,E),error:t.error&&ErA(t.error,E),complete:t.complete&&ErA(t.complete,E)}):g=t}return s.destination=new iTe(g),s}return r}(YvA);k0.SafeSubscriber=UvA;function xS(A){BrA.config.useDeprecatedSynchronousErrorHandling?rTe.captureError(A):ATe.reportUnhandledError(A)}function nTe(A){throw A}function frA(A,r){var t=BrA.config.onStoppedNotification;t&&eTe.timeoutProvider.setTimeout(function(){return t(A,r)})}k0.EMPTY_OBSERVER={closed:!0,next:PvA.noop,error:nTe,complete:PvA.noop}});var y6=GA(HS=>{"use strict";Object.defineProperty(HS,"__esModule",{value:!0});HS.observable=void 0;HS.observable=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}()});var YE=GA(SS=>{"use strict";Object.defineProperty(SS,"__esModule",{value:!0});SS.identity=void 0;function aTe(A){return A}SS.identity=aTe});var C6=GA(TI=>{"use strict";Object.defineProperty(TI,"__esModule",{value:!0});TI.pipeFromArray=TI.pipe=void 0;var oTe=YE();function sTe(){for(var A=[],r=0;r{"use strict";Object.defineProperty(RS,"__esModule",{value:!0});RS.Observable=void 0;var QrA=RI(),cTe=Nh(),lTe=y6(),uTe=C6(),gTe=SI(),hrA=Vl(),dTe=kS(),pTe=function(){function A(r){r&&(this._subscribe=r)}return A.prototype.lift=function(r){var t=new A;return t.source=this,t.operator=r,t},A.prototype.subscribe=function(r,t,i){var o=this,s=fTe(r)?r:new QrA.SafeSubscriber(r,t,i);return dTe.errorContext(function(){var g=o,E=g.operator,p=g.source;s.add(E?E.call(s,p):p?o._subscribe(s):o._trySubscribe(s))}),s},A.prototype._trySubscribe=function(r){try{return this._subscribe(r)}catch(t){r.error(t)}},A.prototype.forEach=function(r,t){var i=this;return t=jvA(t),new t(function(o,s){var g=new QrA.SafeSubscriber({next:function(E){try{r(E)}catch(p){s(p),g.unsubscribe()}},error:s,complete:o});i.subscribe(g)})},A.prototype._subscribe=function(r){var t;return(t=this.source)===null||t===void 0?void 0:t.subscribe(r)},A.prototype[lTe.observable]=function(){return this},A.prototype.pipe=function(){for(var r=[],t=0;t{"use strict";Object.defineProperty(NI,"__esModule",{value:!0});NI.operate=NI.hasLift=void 0;var BTe=Vl();function WvA(A){return BTe.isFunction(A?.lift)}NI.hasLift=WvA;function hTe(A){return function(r){if(WvA(r))return r.lift(function(t){try{return A(t,this)}catch(i){this.error(i)}});throw new TypeError("Unable to lift unknown Observable type")}}NI.operate=hTe});var xo=GA(C_=>{"use strict";var QTe=C_&&C_.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(C_,"__esModule",{value:!0});C_.OperatorSubscriber=C_.createOperatorSubscriber=void 0;var mTe=RI();function DTe(A,r,t,i,o){return new JvA(A,r,t,i,o)}C_.createOperatorSubscriber=DTe;var JvA=function(A){QTe(r,A);function r(t,i,o,s,g,E){var p=A.call(this,t)||this;return p.onFinalize=g,p.shouldUnsubscribe=E,p._next=i?function(B){try{i(B)}catch(m){t.error(m)}}:A.prototype._next,p._error=s?function(B){try{s(B)}catch(m){t.error(m)}finally{this.unsubscribe()}}:A.prototype._error,p._complete=o?function(){try{o()}catch(B){t.error(B)}finally{this.unsubscribe()}}:A.prototype._complete,p}return r.prototype.unsubscribe=function(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var i=this.closed;A.prototype.unsubscribe.call(this),!i&&((t=this.onFinalize)===null||t===void 0||t.call(this))}},r}(mTe.Subscriber);C_.OperatorSubscriber=JvA});var NS=GA(TS=>{"use strict";Object.defineProperty(TS,"__esModule",{value:!0});TS.refCount=void 0;var _Te=Ja(),wTe=xo();function vTe(){return _Te.operate(function(A,r){var t=null;A._refCount++;var i=wTe.createOperatorSubscriber(r,void 0,void 0,void 0,function(){if(!A||A._refCount<=0||0<--A._refCount){t=null;return}var o=A._connection,s=t;t=null,o&&(!s||o===s)&&o.unsubscribe(),r.unsubscribe()});A.subscribe(i),i.closed||(t=A.connect())})}TS.refCount=vTe});var I6=GA(PI=>{"use strict";var yTe=PI&&PI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(PI,"__esModule",{value:!0});PI.ConnectableObservable=void 0;var CTe=lu(),qvA=Nh(),ITe=NS(),bTe=xo(),OTe=Ja(),MTe=function(A){yTe(r,A);function r(t,i){var o=A.call(this)||this;return o.source=t,o.subjectFactory=i,o._subject=null,o._refCount=0,o._connection=null,OTe.hasLift(t)&&(o.lift=t.lift),o}return r.prototype._subscribe=function(t){return this.getSubject().subscribe(t)},r.prototype.getSubject=function(){var t=this._subject;return(!t||t.isStopped)&&(this._subject=this.subjectFactory()),this._subject},r.prototype._teardown=function(){this._refCount=0;var t=this._connection;this._subject=this._connection=null,t?.unsubscribe()},r.prototype.connect=function(){var t=this,i=this._connection;if(!i){i=this._connection=new qvA.Subscription;var o=this.getSubject();i.add(this.source.subscribe(bTe.createOperatorSubscriber(o,void 0,function(){t._teardown(),o.complete()},function(s){t._teardown(),o.error(s)},function(){return t._teardown()}))),i.closed&&(this._connection=null,i=qvA.Subscription.EMPTY)}return i},r.prototype.refCount=function(){return ITe.refCount()(this)},r}(CTe.Observable);PI.ConnectableObservable=MTe});var VvA=GA(b6=>{"use strict";Object.defineProperty(b6,"__esModule",{value:!0});b6.performanceTimestampProvider=void 0;b6.performanceTimestampProvider={now:function(){return(b6.performanceTimestampProvider.delegate||performance).now()},delegate:void 0}});var mrA=GA(x0=>{"use strict";var zvA=x0&&x0.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},KvA=x0&&x0.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(PS,"__esModule",{value:!0});PS.animationFrames=void 0;var xTe=lu(),HTe=VvA(),XvA=mrA();function STe(A){return A?ZvA(A):FTe}PS.animationFrames=STe;function ZvA(A){return new xTe.Observable(function(r){var t=A||HTe.performanceTimestampProvider,i=t.now(),o=0,s=function(){r.closed||(o=XvA.animationFrameProvider.requestAnimationFrame(function(g){o=0;var E=t.now();r.next({timestamp:A?E:g,elapsed:E-i}),s()}))};return s(),function(){o&&XvA.animationFrameProvider.cancelAnimationFrame(o)}})}var FTe=ZvA()});var DrA=GA(GS=>{"use strict";Object.defineProperty(GS,"__esModule",{value:!0});GS.ObjectUnsubscribedError=void 0;var RTe=y_();GS.ObjectUnsubscribedError=RTe.createErrorClass(function(A){return function(){A(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})});var UE=GA(jm=>{"use strict";var eyA=jm&&jm.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}(),TTe=jm&&jm.__values||function(A){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&A[r],i=0;if(t)return t.call(A);if(A&&typeof A.length=="number")return{next:function(){return A&&i>=A.length&&(A=void 0),{value:A&&A[i++],done:!A}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(jm,"__esModule",{value:!0});jm.AnonymousSubject=jm.Subject=void 0;var AyA=lu(),wrA=Nh(),NTe=DrA(),PTe=w4(),_rA=kS(),ryA=function(A){eyA(r,A);function r(){var t=A.call(this)||this;return t.closed=!1,t.currentObservers=null,t.observers=[],t.isStopped=!1,t.hasError=!1,t.thrownError=null,t}return r.prototype.lift=function(t){var i=new vrA(this,this);return i.operator=t,i},r.prototype._throwIfClosed=function(){if(this.closed)throw new NTe.ObjectUnsubscribedError},r.prototype.next=function(t){var i=this;_rA.errorContext(function(){var o,s;if(i._throwIfClosed(),!i.isStopped){i.currentObservers||(i.currentObservers=Array.from(i.observers));try{for(var g=TTe(i.currentObservers),E=g.next();!E.done;E=g.next()){var p=E.value;p.next(t)}}catch(B){o={error:B}}finally{try{E&&!E.done&&(s=g.return)&&s.call(g)}finally{if(o)throw o.error}}}})},r.prototype.error=function(t){var i=this;_rA.errorContext(function(){if(i._throwIfClosed(),!i.isStopped){i.hasError=i.isStopped=!0,i.thrownError=t;for(var o=i.observers;o.length;)o.shift().error(t)}})},r.prototype.complete=function(){var t=this;_rA.errorContext(function(){if(t._throwIfClosed(),!t.isStopped){t.isStopped=!0;for(var i=t.observers;i.length;)i.shift().complete()}})},r.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(r.prototype,"observed",{get:function(){var t;return((t=this.observers)===null||t===void 0?void 0:t.length)>0},enumerable:!1,configurable:!0}),r.prototype._trySubscribe=function(t){return this._throwIfClosed(),A.prototype._trySubscribe.call(this,t)},r.prototype._subscribe=function(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)},r.prototype._innerSubscribe=function(t){var i=this,o=this,s=o.hasError,g=o.isStopped,E=o.observers;return s||g?wrA.EMPTY_SUBSCRIPTION:(this.currentObservers=null,E.push(t),new wrA.Subscription(function(){i.currentObservers=null,PTe.arrRemove(E,t)}))},r.prototype._checkFinalizedStatuses=function(t){var i=this,o=i.hasError,s=i.thrownError,g=i.isStopped;o?t.error(s):g&&t.complete()},r.prototype.asObservable=function(){var t=new AyA.Observable;return t.source=this,t},r.create=function(t,i){return new vrA(t,i)},r}(AyA.Observable);jm.Subject=ryA;var vrA=function(A){eyA(r,A);function r(t,i){var o=A.call(this)||this;return o.destination=t,o.source=i,o}return r.prototype.next=function(t){var i,o;(o=(i=this.destination)===null||i===void 0?void 0:i.next)===null||o===void 0||o.call(i,t)},r.prototype.error=function(t){var i,o;(o=(i=this.destination)===null||i===void 0?void 0:i.error)===null||o===void 0||o.call(i,t)},r.prototype.complete=function(){var t,i;(i=(t=this.destination)===null||t===void 0?void 0:t.complete)===null||i===void 0||i.call(t)},r.prototype._subscribe=function(t){var i,o;return(o=(i=this.source)===null||i===void 0?void 0:i.subscribe(t))!==null&&o!==void 0?o:wrA.EMPTY_SUBSCRIPTION},r}(ryA);jm.AnonymousSubject=vrA});var yrA=GA(GI=>{"use strict";var GTe=GI&&GI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(GI,"__esModule",{value:!0});GI.BehaviorSubject=void 0;var YTe=UE(),UTe=function(A){GTe(r,A);function r(t){var i=A.call(this)||this;return i._value=t,i}return Object.defineProperty(r.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),r.prototype._subscribe=function(t){var i=A.prototype._subscribe.call(this,t);return!i.closed&&t.next(this._value),i},r.prototype.getValue=function(){var t=this,i=t.hasError,o=t.thrownError,s=t._value;if(i)throw o;return this._throwIfClosed(),s},r.prototype.next=function(t){A.prototype.next.call(this,this._value=t)},r}(YTe.Subject);GI.BehaviorSubject=UTe});var YS=GA(O6=>{"use strict";Object.defineProperty(O6,"__esModule",{value:!0});O6.dateTimestampProvider=void 0;O6.dateTimestampProvider={now:function(){return(O6.dateTimestampProvider.delegate||Date).now()},delegate:void 0}});var US=GA(YI=>{"use strict";var LTe=YI&&YI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(YI,"__esModule",{value:!0});YI.ReplaySubject=void 0;var jTe=UE(),WTe=YS(),JTe=function(A){LTe(r,A);function r(t,i,o){t===void 0&&(t=1/0),i===void 0&&(i=1/0),o===void 0&&(o=WTe.dateTimestampProvider);var s=A.call(this)||this;return s._bufferSize=t,s._windowTime=i,s._timestampProvider=o,s._buffer=[],s._infiniteTimeWindow=!0,s._infiniteTimeWindow=i===1/0,s._bufferSize=Math.max(1,t),s._windowTime=Math.max(1,i),s}return r.prototype.next=function(t){var i=this,o=i.isStopped,s=i._buffer,g=i._infiniteTimeWindow,E=i._timestampProvider,p=i._windowTime;o||(s.push(t),!g&&s.push(E.now()+p)),this._trimBuffer(),A.prototype.next.call(this,t)},r.prototype._subscribe=function(t){this._throwIfClosed(),this._trimBuffer();for(var i=this._innerSubscribe(t),o=this,s=o._infiniteTimeWindow,g=o._buffer,E=g.slice(),p=0;p{"use strict";var qTe=UI&&UI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(UI,"__esModule",{value:!0});UI.AsyncSubject=void 0;var VTe=UE(),zTe=function(A){qTe(r,A);function r(){var t=A!==null&&A.apply(this,arguments)||this;return t._value=null,t._hasValue=!1,t._isComplete=!1,t}return r.prototype._checkFinalizedStatuses=function(t){var i=this,o=i.hasError,s=i._hasValue,g=i._value,E=i.thrownError,p=i.isStopped,B=i._isComplete;o?t.error(E):(p||B)&&(s&&t.next(g),t.complete())},r.prototype.next=function(t){this.isStopped||(this._value=t,this._hasValue=!0)},r.prototype.complete=function(){var t=this,i=t._hasValue,o=t._value,s=t._isComplete;s||(this._isComplete=!0,i&&A.prototype.next.call(this,o),A.prototype.complete.call(this))},r}(VTe.Subject);UI.AsyncSubject=zTe});var tyA=GA(LI=>{"use strict";var KTe=LI&&LI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(LI,"__esModule",{value:!0});LI.Action=void 0;var XTe=Nh(),ZTe=function(A){KTe(r,A);function r(t,i){return A.call(this)||this}return r.prototype.schedule=function(t,i){return i===void 0&&(i=0),this},r}(XTe.Subscription);LI.Action=ZTe});var ayA=GA(Wm=>{"use strict";var iyA=Wm&&Wm.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},nyA=Wm&&Wm.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";var $Te=jI&&jI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(jI,"__esModule",{value:!0});jI.AsyncAction=void 0;var ANe=tyA(),oyA=ayA(),eNe=w4(),rNe=function(A){$Te(r,A);function r(t,i){var o=A.call(this,t,i)||this;return o.scheduler=t,o.work=i,o.pending=!1,o}return r.prototype.schedule=function(t,i){var o;if(i===void 0&&(i=0),this.closed)return this;this.state=t;var s=this.id,g=this.scheduler;return s!=null&&(this.id=this.recycleAsyncId(g,s,i)),this.pending=!0,this.delay=i,this.id=(o=this.id)!==null&&o!==void 0?o:this.requestAsyncId(g,this.id,i),this},r.prototype.requestAsyncId=function(t,i,o){return o===void 0&&(o=0),oyA.intervalProvider.setInterval(t.flush.bind(t,this),o)},r.prototype.recycleAsyncId=function(t,i,o){if(o===void 0&&(o=0),o!=null&&this.delay===o&&this.pending===!1)return i;i!=null&&oyA.intervalProvider.clearInterval(i)},r.prototype.execute=function(t,i){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var o=this._execute(t,i);if(o)return o;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},r.prototype._execute=function(t,i){var o=!1,s;try{this.work(t)}catch(g){o=!0,s=g||new Error("Scheduled action threw falsy error")}if(o)return this.unsubscribe(),s},r.prototype.unsubscribe=function(){if(!this.closed){var t=this,i=t.id,o=t.scheduler,s=o.actions;this.work=this.state=this.scheduler=null,this.pending=!1,eNe.arrRemove(s,this),i!=null&&(this.id=this.recycleAsyncId(o,i,null)),this.delay=null,A.prototype.unsubscribe.call(this)}},r}(ANe.Action);jI.AsyncAction=rNe});var cyA=GA(JI=>{"use strict";Object.defineProperty(JI,"__esModule",{value:!0});JI.TestTools=JI.Immediate=void 0;var tNe=1,CrA,jS={};function syA(A){return A in jS?(delete jS[A],!0):!1}JI.Immediate={setImmediate:function(A){var r=tNe++;return jS[r]=!0,CrA||(CrA=Promise.resolve()),CrA.then(function(){return syA(r)&&A()}),r},clearImmediate:function(A){syA(A)}};JI.TestTools={pending:function(){return Object.keys(jS).length}}});var uyA=GA(Jm=>{"use strict";var iNe=Jm&&Jm.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},nNe=Jm&&Jm.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";var sNe=qI&&qI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(qI,"__esModule",{value:!0});qI.AsapAction=void 0;var cNe=WI(),gyA=uyA(),lNe=function(A){sNe(r,A);function r(t,i){var o=A.call(this,t,i)||this;return o.scheduler=t,o.work=i,o}return r.prototype.requestAsyncId=function(t,i,o){return o===void 0&&(o=0),o!==null&&o>0?A.prototype.requestAsyncId.call(this,t,i,o):(t.actions.push(this),t._scheduled||(t._scheduled=gyA.immediateProvider.setImmediate(t.flush.bind(t,void 0))))},r.prototype.recycleAsyncId=function(t,i,o){var s;if(o===void 0&&(o=0),o!=null?o>0:this.delay>0)return A.prototype.recycleAsyncId.call(this,t,i,o);var g=t.actions;i!=null&&((s=g[g.length-1])===null||s===void 0?void 0:s.id)!==i&&(gyA.immediateProvider.clearImmediate(i),t._scheduled===i&&(t._scheduled=void 0))},r}(cNe.AsyncAction);qI.AsapAction=lNe});var IrA=GA(WS=>{"use strict";Object.defineProperty(WS,"__esModule",{value:!0});WS.Scheduler=void 0;var uNe=YS(),gNe=function(){function A(r,t){t===void 0&&(t=A.now),this.schedulerActionCtor=r,this.now=t}return A.prototype.schedule=function(r,t,i){return t===void 0&&(t=0),new this.schedulerActionCtor(this,r).schedule(i,t)},A.now=uNe.dateTimestampProvider.now,A}();WS.Scheduler=gNe});var zI=GA(VI=>{"use strict";var dNe=VI&&VI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(VI,"__esModule",{value:!0});VI.AsyncScheduler=void 0;var pyA=IrA(),pNe=function(A){dNe(r,A);function r(t,i){i===void 0&&(i=pyA.Scheduler.now);var o=A.call(this,t,i)||this;return o.actions=[],o._active=!1,o}return r.prototype.flush=function(t){var i=this.actions;if(this._active){i.push(t);return}var o;this._active=!0;do if(o=t.execute(t.state,t.delay))break;while(t=i.shift());if(this._active=!1,o){for(;t=i.shift();)t.unsubscribe();throw o}},r}(pyA.Scheduler);VI.AsyncScheduler=pNe});var EyA=GA(KI=>{"use strict";var ENe=KI&&KI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(KI,"__esModule",{value:!0});KI.AsapScheduler=void 0;var fNe=zI(),BNe=function(A){ENe(r,A);function r(){return A!==null&&A.apply(this,arguments)||this}return r.prototype.flush=function(t){this._active=!0;var i=this._scheduled;this._scheduled=void 0;var o=this.actions,s;t=t||o.shift();do if(s=t.execute(t.state,t.delay))break;while((t=o[0])&&t.id===i&&o.shift());if(this._active=!1,s){for(;(t=o[0])&&t.id===i&&o.shift();)t.unsubscribe();throw s}},r}(fNe.AsyncScheduler);KI.AsapScheduler=BNe});var fyA=GA(cy=>{"use strict";Object.defineProperty(cy,"__esModule",{value:!0});cy.asap=cy.asapScheduler=void 0;var hNe=dyA(),QNe=EyA();cy.asapScheduler=new QNe.AsapScheduler(hNe.AsapAction);cy.asap=cy.asapScheduler});var XB=GA(ly=>{"use strict";Object.defineProperty(ly,"__esModule",{value:!0});ly.async=ly.asyncScheduler=void 0;var mNe=WI(),DNe=zI();ly.asyncScheduler=new DNe.AsyncScheduler(mNe.AsyncAction);ly.async=ly.asyncScheduler});var ByA=GA(XI=>{"use strict";var _Ne=XI&&XI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(XI,"__esModule",{value:!0});XI.QueueAction=void 0;var wNe=WI(),vNe=function(A){_Ne(r,A);function r(t,i){var o=A.call(this,t,i)||this;return o.scheduler=t,o.work=i,o}return r.prototype.schedule=function(t,i){return i===void 0&&(i=0),i>0?A.prototype.schedule.call(this,t,i):(this.delay=i,this.state=t,this.scheduler.flush(this),this)},r.prototype.execute=function(t,i){return i>0||this.closed?A.prototype.execute.call(this,t,i):this._execute(t,i)},r.prototype.requestAsyncId=function(t,i,o){return o===void 0&&(o=0),o!=null&&o>0||o==null&&this.delay>0?A.prototype.requestAsyncId.call(this,t,i,o):(t.flush(this),0)},r}(wNe.AsyncAction);XI.QueueAction=vNe});var hyA=GA(ZI=>{"use strict";var yNe=ZI&&ZI.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(ZI,"__esModule",{value:!0});ZI.QueueScheduler=void 0;var CNe=zI(),INe=function(A){yNe(r,A);function r(){return A!==null&&A.apply(this,arguments)||this}return r}(CNe.AsyncScheduler);ZI.QueueScheduler=INe});var QyA=GA(uy=>{"use strict";Object.defineProperty(uy,"__esModule",{value:!0});uy.queue=uy.queueScheduler=void 0;var bNe=ByA(),ONe=hyA();uy.queueScheduler=new ONe.QueueScheduler(bNe.QueueAction);uy.queue=uy.queueScheduler});var DyA=GA($I=>{"use strict";var MNe=$I&&$I.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty($I,"__esModule",{value:!0});$I.AnimationFrameAction=void 0;var kNe=WI(),myA=mrA(),xNe=function(A){MNe(r,A);function r(t,i){var o=A.call(this,t,i)||this;return o.scheduler=t,o.work=i,o}return r.prototype.requestAsyncId=function(t,i,o){return o===void 0&&(o=0),o!==null&&o>0?A.prototype.requestAsyncId.call(this,t,i,o):(t.actions.push(this),t._scheduled||(t._scheduled=myA.animationFrameProvider.requestAnimationFrame(function(){return t.flush(void 0)})))},r.prototype.recycleAsyncId=function(t,i,o){var s;if(o===void 0&&(o=0),o!=null?o>0:this.delay>0)return A.prototype.recycleAsyncId.call(this,t,i,o);var g=t.actions;i!=null&&((s=g[g.length-1])===null||s===void 0?void 0:s.id)!==i&&(myA.animationFrameProvider.cancelAnimationFrame(i),t._scheduled=void 0)},r}(kNe.AsyncAction);$I.AnimationFrameAction=xNe});var _yA=GA(Ab=>{"use strict";var HNe=Ab&&Ab.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(Ab,"__esModule",{value:!0});Ab.AnimationFrameScheduler=void 0;var SNe=zI(),FNe=function(A){HNe(r,A);function r(){return A!==null&&A.apply(this,arguments)||this}return r.prototype.flush=function(t){this._active=!0;var i=this._scheduled;this._scheduled=void 0;var o=this.actions,s;t=t||o.shift();do if(s=t.execute(t.state,t.delay))break;while((t=o[0])&&t.id===i&&o.shift());if(this._active=!1,s){for(;(t=o[0])&&t.id===i&&o.shift();)t.unsubscribe();throw s}},r}(SNe.AsyncScheduler);Ab.AnimationFrameScheduler=FNe});var wyA=GA(gy=>{"use strict";Object.defineProperty(gy,"__esModule",{value:!0});gy.animationFrame=gy.animationFrameScheduler=void 0;var RNe=DyA(),TNe=_yA();gy.animationFrameScheduler=new TNe.AnimationFrameScheduler(RNe.AnimationFrameAction);gy.animationFrame=gy.animationFrameScheduler});var CyA=GA(I_=>{"use strict";var vyA=I_&&I_.__extends||function(){var A=function(r,t){return A=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,o){i.__proto__=o}||function(i,o){for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])},A(r,t)};return function(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");A(r,t);function i(){this.constructor=r}r.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(I_,"__esModule",{value:!0});I_.VirtualAction=I_.VirtualTimeScheduler=void 0;var NNe=WI(),PNe=Nh(),GNe=zI(),YNe=function(A){vyA(r,A);function r(t,i){t===void 0&&(t=yyA),i===void 0&&(i=1/0);var o=A.call(this,t,function(){return o.frame})||this;return o.maxFrames=i,o.frame=0,o.index=-1,o}return r.prototype.flush=function(){for(var t=this,i=t.actions,o=t.maxFrames,s,g;(g=i[0])&&g.delay<=o&&(i.shift(),this.frame=g.delay,!(s=g.execute(g.state,g.delay))););if(s){for(;g=i.shift();)g.unsubscribe();throw s}},r.frameTimeFactor=10,r}(GNe.AsyncScheduler);I_.VirtualTimeScheduler=YNe;var yyA=function(A){vyA(r,A);function r(t,i,o){o===void 0&&(o=t.index+=1);var s=A.call(this,t,i)||this;return s.scheduler=t,s.work=i,s.index=o,s.active=!0,s.index=t.index=o,s}return r.prototype.schedule=function(t,i){if(i===void 0&&(i=0),Number.isFinite(i)){if(!this.id)return A.prototype.schedule.call(this,t,i);this.active=!1;var o=new r(this.scheduler,this.work);return this.add(o),o.schedule(t,i)}else return PNe.Subscription.EMPTY},r.prototype.requestAsyncId=function(t,i,o){o===void 0&&(o=0),this.delay=t.frame+o;var s=t.actions;return s.push(this),s.sort(r.sortActions),1},r.prototype.recycleAsyncId=function(t,i,o){o===void 0&&(o=0)},r.prototype._execute=function(t,i){if(this.active===!0)return A.prototype._execute.call(this,t,i)},r.sortActions=function(t,i){return t.delay===i.delay?t.index===i.index?0:t.index>i.index?1:-1:t.delay>i.delay?1:-1},r}(NNe.AsyncAction);I_.VirtualAction=yyA});var H0=GA(dy=>{"use strict";Object.defineProperty(dy,"__esModule",{value:!0});dy.empty=dy.EMPTY=void 0;var IyA=lu();dy.EMPTY=new IyA.Observable(function(A){return A.complete()});function UNe(A){return A?LNe(A):dy.EMPTY}dy.empty=UNe;function LNe(A){return new IyA.Observable(function(r){return A.schedule(function(){return r.complete()})})}});var M6=GA(JS=>{"use strict";Object.defineProperty(JS,"__esModule",{value:!0});JS.isScheduler=void 0;var jNe=Vl();function WNe(A){return A&&jNe.isFunction(A.schedule)}JS.isScheduler=WNe});var ZB=GA(b_=>{"use strict";Object.defineProperty(b_,"__esModule",{value:!0});b_.popNumber=b_.popScheduler=b_.popResultSelector=void 0;var JNe=Vl(),qNe=M6();function brA(A){return A[A.length-1]}function VNe(A){return JNe.isFunction(brA(A))?A.pop():void 0}b_.popResultSelector=VNe;function zNe(A){return qNe.isScheduler(brA(A))?A.pop():void 0}b_.popScheduler=zNe;function KNe(A,r){return typeof brA(A)=="number"?A.pop():r}b_.popNumber=KNe});var VS=GA(qS=>{"use strict";Object.defineProperty(qS,"__esModule",{value:!0});qS.isArrayLike=void 0;qS.isArrayLike=function(A){return A&&typeof A.length=="number"&&typeof A!="function"}});var OrA=GA(zS=>{"use strict";Object.defineProperty(zS,"__esModule",{value:!0});zS.isPromise=void 0;var XNe=Vl();function ZNe(A){return XNe.isFunction(A?.then)}zS.isPromise=ZNe});var MrA=GA(KS=>{"use strict";Object.defineProperty(KS,"__esModule",{value:!0});KS.isInteropObservable=void 0;var $Ne=y6(),APe=Vl();function ePe(A){return APe.isFunction(A[$Ne.observable])}KS.isInteropObservable=ePe});var krA=GA(XS=>{"use strict";Object.defineProperty(XS,"__esModule",{value:!0});XS.isAsyncIterable=void 0;var rPe=Vl();function tPe(A){return Symbol.asyncIterator&&rPe.isFunction(A?.[Symbol.asyncIterator])}XS.isAsyncIterable=tPe});var xrA=GA(ZS=>{"use strict";Object.defineProperty(ZS,"__esModule",{value:!0});ZS.createInvalidObservableTypeError=void 0;function iPe(A){return new TypeError("You provided "+(A!==null&&typeof A=="object"?"an invalid object":"'"+A+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}ZS.createInvalidObservableTypeError=iPe});var HrA=GA(eb=>{"use strict";Object.defineProperty(eb,"__esModule",{value:!0});eb.iterator=eb.getSymbolIterator=void 0;function byA(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}eb.getSymbolIterator=byA;eb.iterator=byA()});var SrA=GA($S=>{"use strict";Object.defineProperty($S,"__esModule",{value:!0});$S.isIterable=void 0;var nPe=HrA(),aPe=Vl();function oPe(A){return aPe.isFunction(A?.[nPe.iterator])}$S.isIterable=oPe});var AF=GA(IQ=>{"use strict";var sPe=IQ&&IQ.__generator||function(A,r){var t={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},i,o,s,g;return g={next:E(0),throw:E(1),return:E(2)},typeof Symbol=="function"&&(g[Symbol.iterator]=function(){return this}),g;function E(B){return function(m){return p([B,m])}}function p(B){if(i)throw new TypeError("Generator is already executing.");for(;t;)try{if(i=1,o&&(s=B[0]&2?o.return:B[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,B[1])).done)return s;switch(o=0,s&&(B=[B[0]&2,s.value]),B[0]){case 0:case 1:s=B;break;case 4:return t.label++,{value:B[1],done:!1};case 5:t.label++,o=B[1],B=[0];continue;case 7:B=t.ops.pop(),t.trys.pop();continue;default:if(s=t.trys,!(s=s.length>0&&s[s.length-1])&&(B[0]===6||B[0]===2)){t=0;continue}if(B[0]===3&&(!s||B[1]>s[0]&&B[1]1||E(x,O)})})}function E(x,O){try{p(i[x](O))}catch(k){_(s[0][3],k)}}function p(x){x.value instanceof rb?Promise.resolve(x.value.v).then(B,m):_(s[0][2],x)}function B(x){E("next",x)}function m(x){E("throw",x)}function _(x,O){x(O),s.shift(),s.length&&E(s[0][0],s[0][1])}};Object.defineProperty(IQ,"__esModule",{value:!0});IQ.isReadableStreamLike=IQ.readableStreamLikeToAsyncGenerator=void 0;var lPe=Vl();function uPe(A){return cPe(this,arguments,function(){var t,i,o,s;return sPe(this,function(g){switch(g.label){case 0:t=A.getReader(),g.label=1;case 1:g.trys.push([1,,9,10]),g.label=2;case 2:return[4,rb(t.read())];case 3:return i=g.sent(),o=i.value,s=i.done,s?[4,rb(void 0)]:[3,5];case 4:return[2,g.sent()];case 5:return[4,rb(o)];case 6:return[4,g.sent()];case 7:return g.sent(),[3,2];case 8:return[3,10];case 9:return t.releaseLock(),[7];case 10:return[2]}})})}IQ.readableStreamLikeToAsyncGenerator=uPe;function gPe(A){return lPe.isFunction(A?.getReader)}IQ.isReadableStreamLike=gPe});var Ws=GA(og=>{"use strict";var dPe=og&&og.__awaiter||function(A,r,t,i){function o(s){return s instanceof t?s:new t(function(g){g(s)})}return new(t||(t=Promise))(function(s,g){function E(m){try{B(i.next(m))}catch(_){g(_)}}function p(m){try{B(i.throw(m))}catch(_){g(_)}}function B(m){m.done?s(m.value):o(m.value).then(E,p)}B((i=i.apply(A,r||[])).next())})},pPe=og&&og.__generator||function(A,r){var t={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},i,o,s,g;return g={next:E(0),throw:E(1),return:E(2)},typeof Symbol=="function"&&(g[Symbol.iterator]=function(){return this}),g;function E(B){return function(m){return p([B,m])}}function p(B){if(i)throw new TypeError("Generator is already executing.");for(;t;)try{if(i=1,o&&(s=B[0]&2?o.return:B[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,B[1])).done)return s;switch(o=0,s&&(B=[B[0]&2,s.value]),B[0]){case 0:case 1:s=B;break;case 4:return t.label++,{value:B[1],done:!1};case 5:t.label++,o=B[1],B=[0];continue;case 7:B=t.ops.pop(),t.trys.pop();continue;default:if(s=t.trys,!(s=s.length>0&&s[s.length-1])&&(B[0]===6||B[0]===2)){t=0;continue}if(B[0]===3&&(!s||B[1]>s[0]&&B[1]=A.length&&(A=void 0),{value:A&&A[i++],done:!A}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(og,"__esModule",{value:!0});og.fromReadableStreamLike=og.fromAsyncIterable=og.fromIterable=og.fromPromise=og.fromArrayLike=og.fromInteropObservable=og.innerFrom=void 0;var fPe=VS(),BPe=OrA(),tb=lu(),hPe=MrA(),QPe=krA(),mPe=xrA(),DPe=SrA(),OyA=AF(),_Pe=Vl(),wPe=drA(),vPe=y6();function yPe(A){if(A instanceof tb.Observable)return A;if(A!=null){if(hPe.isInteropObservable(A))return MyA(A);if(fPe.isArrayLike(A))return kyA(A);if(BPe.isPromise(A))return xyA(A);if(QPe.isAsyncIterable(A))return RrA(A);if(DPe.isIterable(A))return HyA(A);if(OyA.isReadableStreamLike(A))return SyA(A)}throw mPe.createInvalidObservableTypeError(A)}og.innerFrom=yPe;function MyA(A){return new tb.Observable(function(r){var t=A[vPe.observable]();if(_Pe.isFunction(t.subscribe))return t.subscribe(r);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}og.fromInteropObservable=MyA;function kyA(A){return new tb.Observable(function(r){for(var t=0;t{"use strict";Object.defineProperty(eF,"__esModule",{value:!0});eF.executeSchedule=void 0;function IPe(A,r,t,i,o){i===void 0&&(i=0),o===void 0&&(o=!1);var s=r.schedule(function(){t(),o?A.add(this.schedule(null,i)):this.unsubscribe()},i);if(A.add(s),!o)return s}eF.executeSchedule=IPe});var ib=GA(rF=>{"use strict";Object.defineProperty(rF,"__esModule",{value:!0});rF.observeOn=void 0;var TrA=v4(),bPe=Ja(),OPe=xo();function MPe(A,r){return r===void 0&&(r=0),bPe.operate(function(t,i){t.subscribe(OPe.createOperatorSubscriber(i,function(o){return TrA.executeSchedule(i,A,function(){return i.next(o)},r)},function(){return TrA.executeSchedule(i,A,function(){return i.complete()},r)},function(o){return TrA.executeSchedule(i,A,function(){return i.error(o)},r)}))})}rF.observeOn=MPe});var nb=GA(tF=>{"use strict";Object.defineProperty(tF,"__esModule",{value:!0});tF.subscribeOn=void 0;var kPe=Ja();function xPe(A,r){return r===void 0&&(r=0),kPe.operate(function(t,i){i.add(A.schedule(function(){return t.subscribe(i)},r))})}tF.subscribeOn=xPe});var FyA=GA(iF=>{"use strict";Object.defineProperty(iF,"__esModule",{value:!0});iF.scheduleObservable=void 0;var HPe=Ws(),SPe=ib(),FPe=nb();function RPe(A,r){return HPe.innerFrom(A).pipe(FPe.subscribeOn(r),SPe.observeOn(r))}iF.scheduleObservable=RPe});var RyA=GA(nF=>{"use strict";Object.defineProperty(nF,"__esModule",{value:!0});nF.schedulePromise=void 0;var TPe=Ws(),NPe=ib(),PPe=nb();function GPe(A,r){return TPe.innerFrom(A).pipe(PPe.subscribeOn(r),NPe.observeOn(r))}nF.schedulePromise=GPe});var TyA=GA(aF=>{"use strict";Object.defineProperty(aF,"__esModule",{value:!0});aF.scheduleArray=void 0;var YPe=lu();function UPe(A,r){return new YPe.Observable(function(t){var i=0;return r.schedule(function(){i===A.length?t.complete():(t.next(A[i++]),t.closed||this.schedule())})})}aF.scheduleArray=UPe});var NrA=GA(oF=>{"use strict";Object.defineProperty(oF,"__esModule",{value:!0});oF.scheduleIterable=void 0;var LPe=lu(),jPe=HrA(),WPe=Vl(),NyA=v4();function JPe(A,r){return new LPe.Observable(function(t){var i;return NyA.executeSchedule(t,r,function(){i=A[jPe.iterator](),NyA.executeSchedule(t,r,function(){var o,s,g;try{o=i.next(),s=o.value,g=o.done}catch(E){t.error(E);return}g?t.complete():t.next(s)},0,!0)}),function(){return WPe.isFunction(i?.return)&&i.return()}})}oF.scheduleIterable=JPe});var PrA=GA(sF=>{"use strict";Object.defineProperty(sF,"__esModule",{value:!0});sF.scheduleAsyncIterable=void 0;var qPe=lu(),PyA=v4();function VPe(A,r){if(!A)throw new Error("Iterable cannot be null");return new qPe.Observable(function(t){PyA.executeSchedule(t,r,function(){var i=A[Symbol.asyncIterator]();PyA.executeSchedule(t,r,function(){i.next().then(function(o){o.done?t.complete():t.next(o.value)})},0,!0)})})}sF.scheduleAsyncIterable=VPe});var GyA=GA(cF=>{"use strict";Object.defineProperty(cF,"__esModule",{value:!0});cF.scheduleReadableStreamLike=void 0;var zPe=PrA(),KPe=AF();function XPe(A,r){return zPe.scheduleAsyncIterable(KPe.readableStreamLikeToAsyncGenerator(A),r)}cF.scheduleReadableStreamLike=XPe});var GrA=GA(lF=>{"use strict";Object.defineProperty(lF,"__esModule",{value:!0});lF.scheduled=void 0;var ZPe=FyA(),$Pe=RyA(),AGe=TyA(),eGe=NrA(),rGe=PrA(),tGe=MrA(),iGe=OrA(),nGe=VS(),aGe=SrA(),oGe=krA(),sGe=xrA(),cGe=AF(),lGe=GyA();function uGe(A,r){if(A!=null){if(tGe.isInteropObservable(A))return ZPe.scheduleObservable(A,r);if(nGe.isArrayLike(A))return AGe.scheduleArray(A,r);if(iGe.isPromise(A))return $Pe.schedulePromise(A,r);if(oGe.isAsyncIterable(A))return rGe.scheduleAsyncIterable(A,r);if(aGe.isIterable(A))return eGe.scheduleIterable(A,r);if(cGe.isReadableStreamLike(A))return lGe.scheduleReadableStreamLike(A,r)}throw sGe.createInvalidObservableTypeError(A)}lF.scheduled=uGe});var y4=GA(uF=>{"use strict";Object.defineProperty(uF,"__esModule",{value:!0});uF.from=void 0;var gGe=GrA(),dGe=Ws();function pGe(A,r){return r?gGe.scheduled(A,r):dGe.innerFrom(A)}uF.from=pGe});var dF=GA(gF=>{"use strict";Object.defineProperty(gF,"__esModule",{value:!0});gF.of=void 0;var EGe=ZB(),fGe=y4();function BGe(){for(var A=[],r=0;r{"use strict";Object.defineProperty(pF,"__esModule",{value:!0});pF.throwError=void 0;var hGe=lu(),QGe=Vl();function mGe(A,r){var t=QGe.isFunction(A)?A:function(){return A},i=function(o){return o.error(t())};return new hGe.Observable(r?function(o){return r.schedule(i,0,o)}:i)}pF.throwError=mGe});var EF=GA(C4=>{"use strict";Object.defineProperty(C4,"__esModule",{value:!0});C4.observeNotification=C4.Notification=C4.NotificationKind=void 0;var DGe=H0(),_Ge=dF(),wGe=YrA(),vGe=Vl(),yGe;(function(A){A.NEXT="N",A.ERROR="E",A.COMPLETE="C"})(yGe=C4.NotificationKind||(C4.NotificationKind={}));var CGe=function(){function A(r,t,i){this.kind=r,this.value=t,this.error=i,this.hasValue=r==="N"}return A.prototype.observe=function(r){return YyA(this,r)},A.prototype.do=function(r,t,i){var o=this,s=o.kind,g=o.value,E=o.error;return s==="N"?r?.(g):s==="E"?t?.(E):i?.()},A.prototype.accept=function(r,t,i){var o;return vGe.isFunction((o=r)===null||o===void 0?void 0:o.next)?this.observe(r):this.do(r,t,i)},A.prototype.toObservable=function(){var r=this,t=r.kind,i=r.value,o=r.error,s=t==="N"?_Ge.of(i):t==="E"?wGe.throwError(function(){return o}):t==="C"?DGe.EMPTY:0;if(!s)throw new TypeError("Unexpected notification kind "+t);return s},A.createNext=function(r){return new A("N",r)},A.createError=function(r){return new A("E",void 0,r)},A.createComplete=function(){return A.completeNotification},A.completeNotification=new A("C"),A}();C4.Notification=CGe;function YyA(A,r){var t,i,o,s=A,g=s.kind,E=s.value,p=s.error;if(typeof g!="string")throw new TypeError('Invalid notification, missing "kind"');g==="N"?(t=r.next)===null||t===void 0||t.call(r,E):g==="E"?(i=r.error)===null||i===void 0||i.call(r,p):(o=r.complete)===null||o===void 0||o.call(r)}C4.observeNotification=YyA});var LyA=GA(fF=>{"use strict";Object.defineProperty(fF,"__esModule",{value:!0});fF.isObservable=void 0;var IGe=lu(),UyA=Vl();function bGe(A){return!!A&&(A instanceof IGe.Observable||UyA.isFunction(A.lift)&&UyA.isFunction(A.subscribe))}fF.isObservable=bGe});var O_=GA(BF=>{"use strict";Object.defineProperty(BF,"__esModule",{value:!0});BF.EmptyError=void 0;var OGe=y_();BF.EmptyError=OGe.createErrorClass(function(A){return function(){A(this),this.name="EmptyError",this.message="no elements in sequence"}})});var jyA=GA(hF=>{"use strict";Object.defineProperty(hF,"__esModule",{value:!0});hF.lastValueFrom=void 0;var MGe=O_();function kGe(A,r){var t=typeof r=="object";return new Promise(function(i,o){var s=!1,g;A.subscribe({next:function(E){g=E,s=!0},error:o,complete:function(){s?i(g):t?i(r.defaultValue):o(new MGe.EmptyError)}})})}hF.lastValueFrom=kGe});var WyA=GA(QF=>{"use strict";Object.defineProperty(QF,"__esModule",{value:!0});QF.firstValueFrom=void 0;var xGe=O_(),HGe=RI();function SGe(A,r){var t=typeof r=="object";return new Promise(function(i,o){var s=new HGe.SafeSubscriber({next:function(g){i(g),s.unsubscribe()},error:o,complete:function(){t?i(r.defaultValue):o(new xGe.EmptyError)}});A.subscribe(s)})}QF.firstValueFrom=SGe});var UrA=GA(mF=>{"use strict";Object.defineProperty(mF,"__esModule",{value:!0});mF.ArgumentOutOfRangeError=void 0;var FGe=y_();mF.ArgumentOutOfRangeError=FGe.createErrorClass(function(A){return function(){A(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"}})});var LrA=GA(DF=>{"use strict";Object.defineProperty(DF,"__esModule",{value:!0});DF.NotFoundError=void 0;var RGe=y_();DF.NotFoundError=RGe.createErrorClass(function(A){return function(t){A(this),this.name="NotFoundError",this.message=t}})});var jrA=GA(_F=>{"use strict";Object.defineProperty(_F,"__esModule",{value:!0});_F.SequenceError=void 0;var TGe=y_();_F.SequenceError=TGe.createErrorClass(function(A){return function(t){A(this),this.name="SequenceError",this.message=t}})});var vF=GA(wF=>{"use strict";Object.defineProperty(wF,"__esModule",{value:!0});wF.isValidDate=void 0;function NGe(A){return A instanceof Date&&!isNaN(A)}wF.isValidDate=NGe});var k6=GA(py=>{"use strict";Object.defineProperty(py,"__esModule",{value:!0});py.timeout=py.TimeoutError=void 0;var PGe=XB(),GGe=vF(),YGe=Ja(),UGe=Ws(),LGe=y_(),jGe=xo(),WGe=v4();py.TimeoutError=LGe.createErrorClass(function(A){return function(t){t===void 0&&(t=null),A(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=t}});function JGe(A,r){var t=GGe.isValidDate(A)?{first:A}:typeof A=="number"?{each:A}:A,i=t.first,o=t.each,s=t.with,g=s===void 0?qGe:s,E=t.scheduler,p=E===void 0?r??PGe.asyncScheduler:E,B=t.meta,m=B===void 0?null:B;if(i==null&&o==null)throw new TypeError("No timeout provided.");return YGe.operate(function(_,x){var O,k,P=null,H=0,T=function(v){k=WGe.executeSchedule(x,p,function(){try{O.unsubscribe(),UGe.innerFrom(g({meta:m,lastValue:P,seen:H})).subscribe(x)}catch(F){x.error(F)}},v)};O=_.subscribe(jGe.createOperatorSubscriber(x,function(v){k?.unsubscribe(),H++,x.next(P=v),o>0&&T(o)},void 0,void 0,function(){k?.closed||k?.unsubscribe(),P=null})),!H&&T(i!=null?typeof i=="number"?i:+i-p.now():o)})}py.timeout=JGe;function qGe(A){throw new py.TimeoutError(A)}});var I4=GA(yF=>{"use strict";Object.defineProperty(yF,"__esModule",{value:!0});yF.map=void 0;var VGe=Ja(),zGe=xo();function KGe(A,r){return VGe.operate(function(t,i){var o=0;t.subscribe(zGe.createOperatorSubscriber(i,function(s){i.next(A.call(r,s,o++))}))})}yF.map=KGe});var k_=GA(M_=>{"use strict";var XGe=M_&&M_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},ZGe=M_&&M_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";var tYe=x_&&x_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},JyA=x_&&x_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(CF,"__esModule",{value:!0});CF.bindCallback=void 0;var lYe=JrA();function uYe(A,r,t){return lYe.bindCallbackInternals(!1,A,r,t)}CF.bindCallback=uYe});var VyA=GA(IF=>{"use strict";Object.defineProperty(IF,"__esModule",{value:!0});IF.bindNodeCallback=void 0;var gYe=JrA();function dYe(A,r,t){return gYe.bindCallbackInternals(!0,A,r,t)}IF.bindNodeCallback=dYe});var qrA=GA(bF=>{"use strict";Object.defineProperty(bF,"__esModule",{value:!0});bF.argsArgArrayOrObject=void 0;var pYe=Array.isArray,EYe=Object.getPrototypeOf,fYe=Object.prototype,BYe=Object.keys;function hYe(A){if(A.length===1){var r=A[0];if(pYe(r))return{args:r,keys:null};if(QYe(r)){var t=BYe(r);return{args:t.map(function(i){return r[i]}),keys:t}}}return{args:A,keys:null}}bF.argsArgArrayOrObject=hYe;function QYe(A){return A&&typeof A=="object"&&EYe(A)===fYe}});var VrA=GA(OF=>{"use strict";Object.defineProperty(OF,"__esModule",{value:!0});OF.createObject=void 0;function mYe(A,r){return A.reduce(function(t,i,o){return t[i]=r[o],t},{})}OF.createObject=mYe});var MF=GA(ab=>{"use strict";Object.defineProperty(ab,"__esModule",{value:!0});ab.combineLatestInit=ab.combineLatest=void 0;var DYe=lu(),_Ye=qrA(),XyA=y4(),ZyA=YE(),wYe=k_(),zyA=ZB(),vYe=VrA(),yYe=xo(),CYe=v4();function IYe(){for(var A=[],r=0;r{"use strict";Object.defineProperty(kF,"__esModule",{value:!0});kF.mergeInternals=void 0;var bYe=Ws(),OYe=v4(),A2A=xo();function MYe(A,r,t,i,o,s,g,E){var p=[],B=0,m=0,_=!1,x=function(){_&&!p.length&&!B&&r.complete()},O=function(P){return B{"use strict";Object.defineProperty(HF,"__esModule",{value:!0});HF.mergeMap=void 0;var kYe=I4(),xYe=Ws(),HYe=Ja(),SYe=xF(),FYe=Vl();function e2A(A,r,t){return t===void 0&&(t=1/0),FYe.isFunction(r)?e2A(function(i,o){return kYe.map(function(s,g){return r(i,s,o,g)})(xYe.innerFrom(A(i,o)))},t):(typeof r=="number"&&(t=r),HYe.operate(function(i,o){return SYe.mergeInternals(i,o,A,t)}))}HF.mergeMap=e2A});var ob=GA(SF=>{"use strict";Object.defineProperty(SF,"__esModule",{value:!0});SF.mergeAll=void 0;var RYe=qm(),TYe=YE();function NYe(A){return A===void 0&&(A=1/0),RYe.mergeMap(TYe.identity,A)}SF.mergeAll=NYe});var x6=GA(FF=>{"use strict";Object.defineProperty(FF,"__esModule",{value:!0});FF.concatAll=void 0;var PYe=ob();function GYe(){return PYe.mergeAll(1)}FF.concatAll=GYe});var H6=GA(RF=>{"use strict";Object.defineProperty(RF,"__esModule",{value:!0});RF.concat=void 0;var YYe=x6(),UYe=ZB(),LYe=y4();function jYe(){for(var A=[],r=0;r{"use strict";Object.defineProperty(TF,"__esModule",{value:!0});TF.defer=void 0;var WYe=lu(),JYe=Ws();function qYe(A){return new WYe.Observable(function(r){JYe.innerFrom(A()).subscribe(r)})}TF.defer=qYe});var r2A=GA(NF=>{"use strict";Object.defineProperty(NF,"__esModule",{value:!0});NF.connectable=void 0;var VYe=UE(),zYe=lu(),KYe=S6(),XYe={connector:function(){return new VYe.Subject},resetOnDisconnect:!0};function ZYe(A,r){r===void 0&&(r=XYe);var t=null,i=r.connector,o=r.resetOnDisconnect,s=o===void 0?!0:o,g=i(),E=new zYe.Observable(function(p){return g.subscribe(p)});return E.connect=function(){return(!t||t.closed)&&(t=KYe.defer(function(){return A}).subscribe(g),s&&t.add(function(){return g=i()})),t},E}NF.connectable=ZYe});var t2A=GA(PF=>{"use strict";Object.defineProperty(PF,"__esModule",{value:!0});PF.forkJoin=void 0;var $Ye=lu(),AUe=qrA(),eUe=Ws(),rUe=ZB(),tUe=xo(),iUe=k_(),nUe=VrA();function aUe(){for(var A=[],r=0;r{"use strict";var oUe=sb&&sb.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s};Object.defineProperty(sb,"__esModule",{value:!0});sb.fromEvent=void 0;var sUe=Ws(),cUe=lu(),lUe=qm(),uUe=VS(),Ey=Vl(),gUe=k_(),dUe=["addListener","removeListener"],pUe=["addEventListener","removeEventListener"],EUe=["on","off"];function zrA(A,r,t,i){if(Ey.isFunction(t)&&(i=t,t=void 0),i)return zrA(A,r,t).pipe(gUe.mapOneOrManyArgs(i));var o=oUe(hUe(A)?pUe.map(function(E){return function(p){return A[E](r,p,t)}}):fUe(A)?dUe.map(i2A(A,r)):BUe(A)?EUe.map(i2A(A,r)):[],2),s=o[0],g=o[1];if(!s&&uUe.isArrayLike(A))return lUe.mergeMap(function(E){return zrA(E,r,t)})(sUe.innerFrom(A));if(!s)throw new TypeError("Invalid event target");return new cUe.Observable(function(E){var p=function(){for(var B=[],m=0;m{"use strict";Object.defineProperty(GF,"__esModule",{value:!0});GF.fromEventPattern=void 0;var QUe=lu(),mUe=Vl(),DUe=k_();function a2A(A,r,t){return t?a2A(A,r).pipe(DUe.mapOneOrManyArgs(t)):new QUe.Observable(function(i){var o=function(){for(var g=[],E=0;E{"use strict";var _Ue=cb&&cb.__generator||function(A,r){var t={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},i,o,s,g;return g={next:E(0),throw:E(1),return:E(2)},typeof Symbol=="function"&&(g[Symbol.iterator]=function(){return this}),g;function E(B){return function(m){return p([B,m])}}function p(B){if(i)throw new TypeError("Generator is already executing.");for(;t;)try{if(i=1,o&&(s=B[0]&2?o.return:B[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,B[1])).done)return s;switch(o=0,s&&(B=[B[0]&2,s.value]),B[0]){case 0:case 1:s=B;break;case 4:return t.label++,{value:B[1],done:!1};case 5:t.label++,o=B[1],B=[0];continue;case 7:B=t.ops.pop(),t.trys.pop();continue;default:if(s=t.trys,!(s=s.length>0&&s[s.length-1])&&(B[0]===6||B[0]===2)){t=0;continue}if(B[0]===3&&(!s||B[1]>s[0]&&B[1]{"use strict";Object.defineProperty(YF,"__esModule",{value:!0});YF.iif=void 0;var IUe=S6();function bUe(A,r,t){return IUe.defer(function(){return A()?r:t})}YF.iif=bUe});var H_=GA(UF=>{"use strict";Object.defineProperty(UF,"__esModule",{value:!0});UF.timer=void 0;var OUe=lu(),MUe=XB(),kUe=M6(),xUe=vF();function HUe(A,r,t){A===void 0&&(A=0),t===void 0&&(t=MUe.async);var i=-1;return r!=null&&(kUe.isScheduler(r)?t=r:i=r),new OUe.Observable(function(o){var s=xUe.isValidDate(A)?+A-t.now():A;s<0&&(s=0);var g=0;return t.schedule(function(){o.closed||(o.next(g++),0<=i?this.schedule(void 0,i):o.complete())},s)})}UF.timer=HUe});var KrA=GA(LF=>{"use strict";Object.defineProperty(LF,"__esModule",{value:!0});LF.interval=void 0;var SUe=XB(),FUe=H_();function RUe(A,r){return A===void 0&&(A=0),r===void 0&&(r=SUe.asyncScheduler),A<0&&(A=0),FUe.timer(A,A,r)}LF.interval=RUe});var g2A=GA(jF=>{"use strict";Object.defineProperty(jF,"__esModule",{value:!0});jF.merge=void 0;var TUe=ob(),NUe=Ws(),PUe=H0(),u2A=ZB(),GUe=y4();function YUe(){for(var A=[],r=0;r{"use strict";Object.defineProperty(fy,"__esModule",{value:!0});fy.never=fy.NEVER=void 0;var UUe=lu(),LUe=GE();fy.NEVER=new UUe.Observable(LUe.noop);function jUe(){return fy.NEVER}fy.never=jUe});var S_=GA(WF=>{"use strict";Object.defineProperty(WF,"__esModule",{value:!0});WF.argsOrArgArray=void 0;var WUe=Array.isArray;function JUe(A){return A.length===1&&WUe(A[0])?A[0]:A}WF.argsOrArgArray=JUe});var ZrA=GA(JF=>{"use strict";Object.defineProperty(JF,"__esModule",{value:!0});JF.onErrorResumeNext=void 0;var qUe=lu(),VUe=S_(),zUe=xo(),d2A=GE(),KUe=Ws();function XUe(){for(var A=[],r=0;r{"use strict";Object.defineProperty(qF,"__esModule",{value:!0});qF.pairs=void 0;var ZUe=y4();function $Ue(A,r){return ZUe.from(Object.entries(A),r)}qF.pairs=$Ue});var $rA=GA(VF=>{"use strict";Object.defineProperty(VF,"__esModule",{value:!0});VF.not=void 0;function ALe(A,r){return function(t,i){return!A.call(r,t,i)}}VF.not=ALe});var b4=GA(zF=>{"use strict";Object.defineProperty(zF,"__esModule",{value:!0});zF.filter=void 0;var eLe=Ja(),rLe=xo();function tLe(A,r){return eLe.operate(function(t,i){var o=0;t.subscribe(rLe.createOperatorSubscriber(i,function(s){return A.call(r,s,o++)&&i.next(s)}))})}zF.filter=tLe});var B2A=GA(KF=>{"use strict";Object.defineProperty(KF,"__esModule",{value:!0});KF.partition=void 0;var iLe=$rA(),E2A=b4(),f2A=Ws();function nLe(A,r,t){return[E2A.filter(r,t)(f2A.innerFrom(A)),E2A.filter(iLe.not(r,t))(f2A.innerFrom(A))]}KF.partition=nLe});var AtA=GA(lb=>{"use strict";Object.defineProperty(lb,"__esModule",{value:!0});lb.raceInit=lb.race=void 0;var aLe=lu(),h2A=Ws(),oLe=S_(),sLe=xo();function cLe(){for(var A=[],r=0;r{"use strict";Object.defineProperty(XF,"__esModule",{value:!0});XF.range=void 0;var lLe=lu(),uLe=H0();function gLe(A,r,t){if(r==null&&(r=A,A=0),r<=0)return uLe.EMPTY;var i=r+A;return new lLe.Observable(t?function(o){var s=A;return t.schedule(function(){s{"use strict";Object.defineProperty(ZF,"__esModule",{value:!0});ZF.using=void 0;var dLe=lu(),pLe=Ws(),ELe=H0();function fLe(A,r){return new dLe.Observable(function(t){var i=A(),o=r(i),s=o?pLe.innerFrom(o):ELe.EMPTY;return s.subscribe(t),function(){i&&i.unsubscribe()}})}ZF.using=fLe});var $F=GA(F_=>{"use strict";var BLe=F_&&F_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},hLe=F_&&F_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(_2A,"__esModule",{value:!0})});var eR=GA(AR=>{"use strict";Object.defineProperty(AR,"__esModule",{value:!0});AR.audit=void 0;var CLe=Ja(),ILe=Ws(),v2A=xo();function bLe(A){return CLe.operate(function(r,t){var i=!1,o=null,s=null,g=!1,E=function(){if(s?.unsubscribe(),s=null,i){i=!1;var B=o;o=null,t.next(B)}g&&t.complete()},p=function(){s=null,g&&t.complete()};r.subscribe(v2A.createOperatorSubscriber(t,function(B){i=!0,o=B,s||ILe.innerFrom(A(B)).subscribe(s=v2A.createOperatorSubscriber(t,E,p))},function(){g=!0,(!i||!s||s.closed)&&t.complete()}))})}AR.audit=bLe});var etA=GA(rR=>{"use strict";Object.defineProperty(rR,"__esModule",{value:!0});rR.auditTime=void 0;var OLe=XB(),MLe=eR(),kLe=H_();function xLe(A,r){return r===void 0&&(r=OLe.asyncScheduler),MLe.audit(function(){return kLe.timer(A,r)})}rR.auditTime=xLe});var rtA=GA(tR=>{"use strict";Object.defineProperty(tR,"__esModule",{value:!0});tR.buffer=void 0;var HLe=Ja(),SLe=GE(),y2A=xo(),FLe=Ws();function RLe(A){return HLe.operate(function(r,t){var i=[];return r.subscribe(y2A.createOperatorSubscriber(t,function(o){return i.push(o)},function(){t.next(i),t.complete()})),FLe.innerFrom(A).subscribe(y2A.createOperatorSubscriber(t,function(){var o=i;i=[],t.next(o)},SLe.noop)),function(){i=null}})}tR.buffer=RLe});var itA=GA(ub=>{"use strict";var ttA=ub&&ub.__values||function(A){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&A[r],i=0;if(t)return t.call(A);if(A&&typeof A.length=="number")return{next:function(){return A&&i>=A.length&&(A=void 0),{value:A&&A[i++],done:!A}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(ub,"__esModule",{value:!0});ub.bufferCount=void 0;var TLe=Ja(),NLe=xo(),PLe=w4();function GLe(A,r){return r===void 0&&(r=null),r=r??A,TLe.operate(function(t,i){var o=[],s=0;t.subscribe(NLe.createOperatorSubscriber(i,function(g){var E,p,B,m,_=null;s++%r===0&&o.push([]);try{for(var x=ttA(o),O=x.next();!O.done;O=x.next()){var k=O.value;k.push(g),A<=k.length&&(_=_??[],_.push(k))}}catch(T){E={error:T}}finally{try{O&&!O.done&&(p=x.return)&&p.call(x)}finally{if(E)throw E.error}}if(_)try{for(var P=ttA(_),H=P.next();!H.done;H=P.next()){var k=H.value;PLe.arrRemove(o,k),i.next(k)}}catch(T){B={error:T}}finally{try{H&&!H.done&&(m=P.return)&&m.call(P)}finally{if(B)throw B.error}}},function(){var g,E;try{for(var p=ttA(o),B=p.next();!B.done;B=p.next()){var m=B.value;i.next(m)}}catch(_){g={error:_}}finally{try{B&&!B.done&&(E=p.return)&&E.call(p)}finally{if(g)throw g.error}}i.complete()},void 0,function(){o=null}))})}ub.bufferCount=GLe});var ntA=GA(gb=>{"use strict";var YLe=gb&&gb.__values||function(A){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&A[r],i=0;if(t)return t.call(A);if(A&&typeof A.length=="number")return{next:function(){return A&&i>=A.length&&(A=void 0),{value:A&&A[i++],done:!A}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(gb,"__esModule",{value:!0});gb.bufferTime=void 0;var ULe=Nh(),LLe=Ja(),jLe=xo(),WLe=w4(),JLe=XB(),qLe=ZB(),C2A=v4();function VLe(A){for(var r,t,i=[],o=1;o=0?C2A.executeSchedule(B,s,O,g,!0):_=!0,O();var k=jLe.createOperatorSubscriber(B,function(P){var H,T,v=m.slice();try{for(var F=YLe(v),y=F.next();!y.done;y=F.next()){var S=y.value,U=S.buffer;U.push(P),E<=U.length&&x(S)}}catch(V){H={error:V}}finally{try{y&&!y.done&&(T=F.return)&&T.call(F)}finally{if(H)throw H.error}}},function(){for(;m?.length;)B.next(m.shift().buffer);k?.unsubscribe(),B.complete(),B.unsubscribe()},void 0,function(){return m=null});p.subscribe(k)})}gb.bufferTime=VLe});var otA=GA(db=>{"use strict";var zLe=db&&db.__values||function(A){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&A[r],i=0;if(t)return t.call(A);if(A&&typeof A.length=="number")return{next:function(){return A&&i>=A.length&&(A=void 0),{value:A&&A[i++],done:!A}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(db,"__esModule",{value:!0});db.bufferToggle=void 0;var KLe=Nh(),XLe=Ja(),I2A=Ws(),atA=xo(),b2A=GE(),ZLe=w4();function $Le(A,r){return XLe.operate(function(t,i){var o=[];I2A.innerFrom(A).subscribe(atA.createOperatorSubscriber(i,function(s){var g=[];o.push(g);var E=new KLe.Subscription,p=function(){ZLe.arrRemove(o,g),i.next(g),E.unsubscribe()};E.add(I2A.innerFrom(r(s)).subscribe(atA.createOperatorSubscriber(i,p,b2A.noop)))},b2A.noop)),t.subscribe(atA.createOperatorSubscriber(i,function(s){var g,E;try{for(var p=zLe(o),B=p.next();!B.done;B=p.next()){var m=B.value;m.push(s)}}catch(_){g={error:_}}finally{try{B&&!B.done&&(E=p.return)&&E.call(p)}finally{if(g)throw g.error}}},function(){for(;o.length>0;)i.next(o.shift());i.complete()}))})}db.bufferToggle=$Le});var stA=GA(iR=>{"use strict";Object.defineProperty(iR,"__esModule",{value:!0});iR.bufferWhen=void 0;var Aje=Ja(),eje=GE(),O2A=xo(),rje=Ws();function tje(A){return Aje.operate(function(r,t){var i=null,o=null,s=function(){o?.unsubscribe();var g=i;i=[],g&&t.next(g),rje.innerFrom(A()).subscribe(o=O2A.createOperatorSubscriber(t,s,eje.noop))};s(),r.subscribe(O2A.createOperatorSubscriber(t,function(g){return i?.push(g)},function(){i&&t.next(i),t.complete()},void 0,function(){return i=o=null}))})}iR.bufferWhen=tje});var ctA=GA(nR=>{"use strict";Object.defineProperty(nR,"__esModule",{value:!0});nR.catchError=void 0;var ije=Ws(),nje=xo(),aje=Ja();function M2A(A){return aje.operate(function(r,t){var i=null,o=!1,s;i=r.subscribe(nje.createOperatorSubscriber(t,void 0,void 0,function(g){s=ije.innerFrom(A(g,M2A(A)(r))),i?(i.unsubscribe(),i=null,s.subscribe(t)):o=!0})),o&&(i.unsubscribe(),i=null,s.subscribe(t))})}nR.catchError=M2A});var ltA=GA(aR=>{"use strict";Object.defineProperty(aR,"__esModule",{value:!0});aR.scanInternals=void 0;var oje=xo();function sje(A,r,t,i,o){return function(s,g){var E=t,p=r,B=0;s.subscribe(oje.createOperatorSubscriber(g,function(m){var _=B++;p=E?A(p,m,_):(E=!0,m),i&&g.next(p)},o&&function(){E&&g.next(p),g.complete()}))}}aR.scanInternals=sje});var By=GA(oR=>{"use strict";Object.defineProperty(oR,"__esModule",{value:!0});oR.reduce=void 0;var cje=ltA(),lje=Ja();function uje(A,r){return lje.operate(cje.scanInternals(A,r,arguments.length>=2,!1,!0))}oR.reduce=uje});var cR=GA(sR=>{"use strict";Object.defineProperty(sR,"__esModule",{value:!0});sR.toArray=void 0;var gje=By(),dje=Ja(),pje=function(A,r){return A.push(r),A};function Eje(){return dje.operate(function(A,r){gje.reduce(pje,[])(A).subscribe(r)})}sR.toArray=Eje});var utA=GA(lR=>{"use strict";Object.defineProperty(lR,"__esModule",{value:!0});lR.joinAllInternals=void 0;var fje=YE(),Bje=k_(),hje=C6(),Qje=qm(),mje=cR();function Dje(A,r){return hje.pipe(mje.toArray(),Qje.mergeMap(function(t){return A(t)}),r?Bje.mapOneOrManyArgs(r):fje.identity)}lR.joinAllInternals=Dje});var gR=GA(uR=>{"use strict";Object.defineProperty(uR,"__esModule",{value:!0});uR.combineLatestAll=void 0;var _je=MF(),wje=utA();function vje(A){return wje.joinAllInternals(_je.combineLatest,A)}uR.combineLatestAll=vje});var gtA=GA(dR=>{"use strict";Object.defineProperty(dR,"__esModule",{value:!0});dR.combineAll=void 0;var yje=gR();dR.combineAll=yje.combineLatestAll});var dtA=GA(R_=>{"use strict";var k2A=R_&&R_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},x2A=R_&&R_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";var xje=T_&&T_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},Hje=T_&&T_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(pR,"__esModule",{value:!0});pR.concatMap=void 0;var S2A=qm(),Rje=Vl();function Tje(A,r){return Rje.isFunction(r)?S2A.mergeMap(A,r,1):S2A.mergeMap(A,1)}pR.concatMap=Tje});var EtA=GA(fR=>{"use strict";Object.defineProperty(fR,"__esModule",{value:!0});fR.concatMapTo=void 0;var F2A=ER(),Nje=Vl();function Pje(A,r){return Nje.isFunction(r)?F2A.concatMap(function(){return A},r):F2A.concatMap(function(){return A})}fR.concatMapTo=Pje});var ftA=GA(N_=>{"use strict";var Gje=N_&&N_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},Yje=N_&&N_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";var qje=P_&&P_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},Vje=P_&&P_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(BR,"__esModule",{value:!0});BR.fromSubscribable=void 0;var Xje=lu();function Zje(A){return new Xje.Observable(function(r){return A.subscribe(r)})}BR.fromSubscribable=Zje});var F6=GA(hR=>{"use strict";Object.defineProperty(hR,"__esModule",{value:!0});hR.connect=void 0;var $je=UE(),AWe=Ws(),eWe=Ja(),rWe=R2A(),tWe={connector:function(){return new $je.Subject}};function iWe(A,r){r===void 0&&(r=tWe);var t=r.connector;return eWe.operate(function(i,o){var s=t();AWe.innerFrom(A(rWe.fromSubscribable(s))).subscribe(o),o.add(i.subscribe(s))})}hR.connect=iWe});var htA=GA(QR=>{"use strict";Object.defineProperty(QR,"__esModule",{value:!0});QR.count=void 0;var nWe=By();function aWe(A){return nWe.reduce(function(r,t,i){return!A||A(t,i)?r+1:r},0)}QR.count=aWe});var QtA=GA(mR=>{"use strict";Object.defineProperty(mR,"__esModule",{value:!0});mR.debounce=void 0;var oWe=Ja(),sWe=GE(),T2A=xo(),cWe=Ws();function lWe(A){return oWe.operate(function(r,t){var i=!1,o=null,s=null,g=function(){if(s?.unsubscribe(),s=null,i){i=!1;var E=o;o=null,t.next(E)}};r.subscribe(T2A.createOperatorSubscriber(t,function(E){s?.unsubscribe(),i=!0,o=E,s=T2A.createOperatorSubscriber(t,g,sWe.noop),cWe.innerFrom(A(E)).subscribe(s)},function(){g(),t.complete()},void 0,function(){o=s=null}))})}mR.debounce=lWe});var mtA=GA(DR=>{"use strict";Object.defineProperty(DR,"__esModule",{value:!0});DR.debounceTime=void 0;var uWe=XB(),gWe=Ja(),dWe=xo();function pWe(A,r){return r===void 0&&(r=uWe.asyncScheduler),gWe.operate(function(t,i){var o=null,s=null,g=null,E=function(){if(o){o.unsubscribe(),o=null;var B=s;s=null,i.next(B)}};function p(){var B=g+A,m=r.now();if(m{"use strict";Object.defineProperty(_R,"__esModule",{value:!0});_R.defaultIfEmpty=void 0;var EWe=Ja(),fWe=xo();function BWe(A){return EWe.operate(function(r,t){var i=!1;r.subscribe(fWe.createOperatorSubscriber(t,function(o){i=!0,t.next(o)},function(){i||t.next(A),t.complete()}))})}_R.defaultIfEmpty=BWe});var Eb=GA(wR=>{"use strict";Object.defineProperty(wR,"__esModule",{value:!0});wR.take=void 0;var hWe=H0(),QWe=Ja(),mWe=xo();function DWe(A){return A<=0?function(){return hWe.EMPTY}:QWe.operate(function(r,t){var i=0;r.subscribe(mWe.createOperatorSubscriber(t,function(o){++i<=A&&(t.next(o),A<=i&&t.complete())}))})}wR.take=DWe});var yR=GA(vR=>{"use strict";Object.defineProperty(vR,"__esModule",{value:!0});vR.ignoreElements=void 0;var _We=Ja(),wWe=xo(),vWe=GE();function yWe(){return _We.operate(function(A,r){A.subscribe(wWe.createOperatorSubscriber(r,vWe.noop))})}vR.ignoreElements=yWe});var IR=GA(CR=>{"use strict";Object.defineProperty(CR,"__esModule",{value:!0});CR.mapTo=void 0;var CWe=I4();function IWe(A){return CWe.map(function(){return A})}CR.mapTo=IWe});var OR=GA(bR=>{"use strict";Object.defineProperty(bR,"__esModule",{value:!0});bR.delayWhen=void 0;var bWe=H6(),N2A=Eb(),OWe=yR(),MWe=IR(),kWe=qm(),xWe=Ws();function P2A(A,r){return r?function(t){return bWe.concat(r.pipe(N2A.take(1),OWe.ignoreElements()),t.pipe(P2A(A)))}:kWe.mergeMap(function(t,i){return xWe.innerFrom(A(t,i)).pipe(N2A.take(1),MWe.mapTo(t))})}bR.delayWhen=P2A});var DtA=GA(MR=>{"use strict";Object.defineProperty(MR,"__esModule",{value:!0});MR.delay=void 0;var HWe=XB(),SWe=OR(),FWe=H_();function RWe(A,r){r===void 0&&(r=HWe.asyncScheduler);var t=FWe.timer(A,r);return SWe.delayWhen(function(){return t})}MR.delay=RWe});var _tA=GA(kR=>{"use strict";Object.defineProperty(kR,"__esModule",{value:!0});kR.dematerialize=void 0;var TWe=EF(),NWe=Ja(),PWe=xo();function GWe(){return NWe.operate(function(A,r){A.subscribe(PWe.createOperatorSubscriber(r,function(t){return TWe.observeNotification(t,r)}))})}kR.dematerialize=GWe});var wtA=GA(xR=>{"use strict";Object.defineProperty(xR,"__esModule",{value:!0});xR.distinct=void 0;var YWe=Ja(),G2A=xo(),UWe=GE(),LWe=Ws();function jWe(A,r){return YWe.operate(function(t,i){var o=new Set;t.subscribe(G2A.createOperatorSubscriber(i,function(s){var g=A?A(s):s;o.has(g)||(o.add(g),i.next(s))})),r&&LWe.innerFrom(r).subscribe(G2A.createOperatorSubscriber(i,function(){return o.clear()},UWe.noop))})}xR.distinct=jWe});var SR=GA(HR=>{"use strict";Object.defineProperty(HR,"__esModule",{value:!0});HR.distinctUntilChanged=void 0;var WWe=YE(),JWe=Ja(),qWe=xo();function VWe(A,r){return r===void 0&&(r=WWe.identity),A=A??zWe,JWe.operate(function(t,i){var o,s=!0;t.subscribe(qWe.createOperatorSubscriber(i,function(g){var E=r(g);(s||!A(o,E))&&(s=!1,o=E,i.next(g))}))})}HR.distinctUntilChanged=VWe;function zWe(A,r){return A===r}});var vtA=GA(FR=>{"use strict";Object.defineProperty(FR,"__esModule",{value:!0});FR.distinctUntilKeyChanged=void 0;var KWe=SR();function XWe(A,r){return KWe.distinctUntilChanged(function(t,i){return r?r(t[A],i[A]):t[A]===i[A]})}FR.distinctUntilKeyChanged=XWe});var fb=GA(RR=>{"use strict";Object.defineProperty(RR,"__esModule",{value:!0});RR.throwIfEmpty=void 0;var ZWe=O_(),$We=Ja(),AJe=xo();function eJe(A){return A===void 0&&(A=rJe),$We.operate(function(r,t){var i=!1;r.subscribe(AJe.createOperatorSubscriber(t,function(o){i=!0,t.next(o)},function(){return i?t.complete():t.error(A())}))})}RR.throwIfEmpty=eJe;function rJe(){return new ZWe.EmptyError}});var ytA=GA(TR=>{"use strict";Object.defineProperty(TR,"__esModule",{value:!0});TR.elementAt=void 0;var Y2A=UrA(),tJe=b4(),iJe=fb(),nJe=pb(),aJe=Eb();function oJe(A,r){if(A<0)throw new Y2A.ArgumentOutOfRangeError;var t=arguments.length>=2;return function(i){return i.pipe(tJe.filter(function(o,s){return s===A}),aJe.take(1),t?nJe.defaultIfEmpty(r):iJe.throwIfEmpty(function(){return new Y2A.ArgumentOutOfRangeError}))}}TR.elementAt=oJe});var CtA=GA(G_=>{"use strict";var sJe=G_&&G_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},cJe=G_&&G_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(NR,"__esModule",{value:!0});NR.every=void 0;var dJe=Ja(),pJe=xo();function EJe(A,r){return dJe.operate(function(t,i){var o=0;t.subscribe(pJe.createOperatorSubscriber(i,function(s){A.call(r,s,o++,t)||(i.next(!1),i.complete())},function(){i.next(!0),i.complete()}))})}NR.every=EJe});var GR=GA(PR=>{"use strict";Object.defineProperty(PR,"__esModule",{value:!0});PR.exhaustMap=void 0;var fJe=I4(),U2A=Ws(),BJe=Ja(),L2A=xo();function j2A(A,r){return r?function(t){return t.pipe(j2A(function(i,o){return U2A.innerFrom(A(i,o)).pipe(fJe.map(function(s,g){return r(i,s,o,g)}))}))}:BJe.operate(function(t,i){var o=0,s=null,g=!1;t.subscribe(L2A.createOperatorSubscriber(i,function(E){s||(s=L2A.createOperatorSubscriber(i,void 0,function(){s=null,g&&i.complete()}),U2A.innerFrom(A(E,o++)).subscribe(s))},function(){g=!0,!s&&i.complete()}))})}PR.exhaustMap=j2A});var UR=GA(YR=>{"use strict";Object.defineProperty(YR,"__esModule",{value:!0});YR.exhaustAll=void 0;var hJe=GR(),QJe=YE();function mJe(){return hJe.exhaustMap(QJe.identity)}YR.exhaustAll=mJe});var btA=GA(LR=>{"use strict";Object.defineProperty(LR,"__esModule",{value:!0});LR.exhaust=void 0;var DJe=UR();LR.exhaust=DJe.exhaustAll});var OtA=GA(jR=>{"use strict";Object.defineProperty(jR,"__esModule",{value:!0});jR.expand=void 0;var _Je=Ja(),wJe=xF();function vJe(A,r,t){return r===void 0&&(r=1/0),r=(r||0)<1?1/0:r,_Je.operate(function(i,o){return wJe.mergeInternals(i,o,A,r,void 0,!0,t)})}jR.expand=vJe});var MtA=GA(WR=>{"use strict";Object.defineProperty(WR,"__esModule",{value:!0});WR.finalize=void 0;var yJe=Ja();function CJe(A){return yJe.operate(function(r,t){try{r.subscribe(t)}finally{t.add(A)}})}WR.finalize=CJe});var JR=GA(Bb=>{"use strict";Object.defineProperty(Bb,"__esModule",{value:!0});Bb.createFind=Bb.find=void 0;var IJe=Ja(),bJe=xo();function OJe(A,r){return IJe.operate(W2A(A,r,"value"))}Bb.find=OJe;function W2A(A,r,t){var i=t==="index";return function(o,s){var g=0;o.subscribe(bJe.createOperatorSubscriber(s,function(E){var p=g++;A.call(r,E,p,o)&&(s.next(i?p:E),s.complete())},function(){s.next(i?-1:void 0),s.complete()}))}}Bb.createFind=W2A});var ktA=GA(qR=>{"use strict";Object.defineProperty(qR,"__esModule",{value:!0});qR.findIndex=void 0;var MJe=Ja(),kJe=JR();function xJe(A,r){return MJe.operate(kJe.createFind(A,r,"index"))}qR.findIndex=xJe});var xtA=GA(VR=>{"use strict";Object.defineProperty(VR,"__esModule",{value:!0});VR.first=void 0;var HJe=O_(),SJe=b4(),FJe=Eb(),RJe=pb(),TJe=fb(),NJe=YE();function PJe(A,r){var t=arguments.length>=2;return function(i){return i.pipe(A?SJe.filter(function(o,s){return A(o,s,i)}):NJe.identity,FJe.take(1),t?RJe.defaultIfEmpty(r):TJe.throwIfEmpty(function(){return new HJe.EmptyError}))}}VR.first=PJe});var HtA=GA(zR=>{"use strict";Object.defineProperty(zR,"__esModule",{value:!0});zR.groupBy=void 0;var GJe=lu(),YJe=Ws(),UJe=UE(),LJe=Ja(),J2A=xo();function jJe(A,r,t,i){return LJe.operate(function(o,s){var g;!r||typeof r=="function"?g=r:(t=r.duration,g=r.element,i=r.connector);var E=new Map,p=function(k){E.forEach(k),k(s)},B=function(k){return p(function(P){return P.error(k)})},m=0,_=!1,x=new J2A.OperatorSubscriber(s,function(k){try{var P=A(k),H=E.get(P);if(!H){E.set(P,H=i?i():new UJe.Subject);var T=O(P,H);if(s.next(T),t){var v=J2A.createOperatorSubscriber(H,function(){H.complete(),v?.unsubscribe()},void 0,void 0,function(){return E.delete(P)});x.add(YJe.innerFrom(t(T)).subscribe(v))}}H.next(g?g(k):k)}catch(F){B(F)}},function(){return p(function(k){return k.complete()})},B,function(){return E.clear()},function(){return _=!0,m===0});o.subscribe(x);function O(k,P){var H=new GJe.Observable(function(T){m++;var v=P.subscribe(T);return function(){v.unsubscribe(),--m===0&&_&&x.unsubscribe()}});return H.key=k,H}})}zR.groupBy=jJe});var StA=GA(KR=>{"use strict";Object.defineProperty(KR,"__esModule",{value:!0});KR.isEmpty=void 0;var WJe=Ja(),JJe=xo();function qJe(){return WJe.operate(function(A,r){A.subscribe(JJe.createOperatorSubscriber(r,function(){r.next(!1),r.complete()},function(){r.next(!0),r.complete()}))})}KR.isEmpty=qJe});var XR=GA(hb=>{"use strict";var VJe=hb&&hb.__values||function(A){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&A[r],i=0;if(t)return t.call(A);if(A&&typeof A.length=="number")return{next:function(){return A&&i>=A.length&&(A=void 0),{value:A&&A[i++],done:!A}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(hb,"__esModule",{value:!0});hb.takeLast=void 0;var zJe=H0(),KJe=Ja(),XJe=xo();function ZJe(A){return A<=0?function(){return zJe.EMPTY}:KJe.operate(function(r,t){var i=[];r.subscribe(XJe.createOperatorSubscriber(t,function(o){i.push(o),A{"use strict";Object.defineProperty(ZR,"__esModule",{value:!0});ZR.last=void 0;var $Je=O_(),Aqe=b4(),eqe=XR(),rqe=fb(),tqe=pb(),iqe=YE();function nqe(A,r){var t=arguments.length>=2;return function(i){return i.pipe(A?Aqe.filter(function(o,s){return A(o,s,i)}):iqe.identity,eqe.takeLast(1),t?tqe.defaultIfEmpty(r):rqe.throwIfEmpty(function(){return new $Je.EmptyError}))}}ZR.last=nqe});var TtA=GA($R=>{"use strict";Object.defineProperty($R,"__esModule",{value:!0});$R.materialize=void 0;var RtA=EF(),aqe=Ja(),oqe=xo();function sqe(){return aqe.operate(function(A,r){A.subscribe(oqe.createOperatorSubscriber(r,function(t){r.next(RtA.Notification.createNext(t))},function(){r.next(RtA.Notification.createComplete()),r.complete()},function(t){r.next(RtA.Notification.createError(t)),r.complete()}))})}$R.materialize=sqe});var NtA=GA(AT=>{"use strict";Object.defineProperty(AT,"__esModule",{value:!0});AT.max=void 0;var cqe=By(),lqe=Vl();function uqe(A){return cqe.reduce(lqe.isFunction(A)?function(r,t){return A(r,t)>0?r:t}:function(r,t){return r>t?r:t})}AT.max=uqe});var PtA=GA(eT=>{"use strict";Object.defineProperty(eT,"__esModule",{value:!0});eT.flatMap=void 0;var gqe=qm();eT.flatMap=gqe.mergeMap});var GtA=GA(rT=>{"use strict";Object.defineProperty(rT,"__esModule",{value:!0});rT.mergeMapTo=void 0;var q2A=qm(),dqe=Vl();function pqe(A,r,t){return t===void 0&&(t=1/0),dqe.isFunction(r)?q2A.mergeMap(function(){return A},r,t):(typeof r=="number"&&(t=r),q2A.mergeMap(function(){return A},t))}rT.mergeMapTo=pqe});var YtA=GA(tT=>{"use strict";Object.defineProperty(tT,"__esModule",{value:!0});tT.mergeScan=void 0;var Eqe=Ja(),fqe=xF();function Bqe(A,r,t){return t===void 0&&(t=1/0),Eqe.operate(function(i,o){var s=r;return fqe.mergeInternals(i,o,function(g,E){return A(s,g,E)},t,function(g){s=g},!1,void 0,function(){return s=null})})}tT.mergeScan=Bqe});var UtA=GA(Y_=>{"use strict";var hqe=Y_&&Y_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},Qqe=Y_&&Y_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";var yqe=U_&&U_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},Cqe=U_&&U_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(iT,"__esModule",{value:!0});iT.min=void 0;var Oqe=By(),Mqe=Vl();function kqe(A){return Oqe.reduce(Mqe.isFunction(A)?function(r,t){return A(r,t)<0?r:t}:function(r,t){return r{"use strict";Object.defineProperty(nT,"__esModule",{value:!0});nT.multicast=void 0;var xqe=I6(),z2A=Vl(),Hqe=F6();function Sqe(A,r){var t=z2A.isFunction(A)?A:function(){return A};return z2A.isFunction(r)?Hqe.connect(r,{connector:t}):function(i){return new xqe.ConnectableObservable(i,t)}}nT.multicast=Sqe});var WtA=GA(Vm=>{"use strict";var Fqe=Vm&&Vm.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},Rqe=Vm&&Vm.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(aT,"__esModule",{value:!0});aT.pairwise=void 0;var Pqe=Ja(),Gqe=xo();function Yqe(){return Pqe.operate(function(A,r){var t,i=!1;A.subscribe(Gqe.createOperatorSubscriber(r,function(o){var s=t;t=o,i&&r.next([s,o]),i=!0}))})}aT.pairwise=Yqe});var qtA=GA(oT=>{"use strict";Object.defineProperty(oT,"__esModule",{value:!0});oT.pluck=void 0;var Uqe=I4();function Lqe(){for(var A=[],r=0;r{"use strict";Object.defineProperty(sT,"__esModule",{value:!0});sT.publish=void 0;var jqe=UE(),Wqe=R6(),Jqe=F6();function qqe(A){return A?function(r){return Jqe.connect(A)(r)}:function(r){return Wqe.multicast(new jqe.Subject)(r)}}sT.publish=qqe});var ztA=GA(cT=>{"use strict";Object.defineProperty(cT,"__esModule",{value:!0});cT.publishBehavior=void 0;var Vqe=yrA(),zqe=I6();function Kqe(A){return function(r){var t=new Vqe.BehaviorSubject(A);return new zqe.ConnectableObservable(r,function(){return t})}}cT.publishBehavior=Kqe});var KtA=GA(lT=>{"use strict";Object.defineProperty(lT,"__esModule",{value:!0});lT.publishLast=void 0;var Xqe=LS(),Zqe=I6();function $qe(){return function(A){var r=new Xqe.AsyncSubject;return new Zqe.ConnectableObservable(A,function(){return r})}}lT.publishLast=$qe});var XtA=GA(uT=>{"use strict";Object.defineProperty(uT,"__esModule",{value:!0});uT.publishReplay=void 0;var AVe=US(),eVe=R6(),X2A=Vl();function rVe(A,r,t,i){t&&!X2A.isFunction(t)&&(i=t);var o=X2A.isFunction(t)?t:void 0;return function(s){return eVe.multicast(new AVe.ReplaySubject(A,r,i),o)(s)}}uT.publishReplay=rVe});var gT=GA(L_=>{"use strict";var tVe=L_&&L_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},iVe=L_&&L_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(dT,"__esModule",{value:!0});dT.repeat=void 0;var cVe=H0(),lVe=Ja(),Z2A=xo(),uVe=Ws(),gVe=H_();function dVe(A){var r,t=1/0,i;return A!=null&&(typeof A=="object"?(r=A.count,t=r===void 0?1/0:r,i=A.delay):t=A),t<=0?function(){return cVe.EMPTY}:lVe.operate(function(o,s){var g=0,E,p=function(){if(E?.unsubscribe(),E=null,i!=null){var m=typeof i=="number"?gVe.timer(i):uVe.innerFrom(i(g)),_=Z2A.createOperatorSubscriber(s,function(){_.unsubscribe(),B()});m.subscribe(_)}else B()},B=function(){var m=!1;E=o.subscribe(Z2A.createOperatorSubscriber(s,void 0,function(){++g{"use strict";Object.defineProperty(pT,"__esModule",{value:!0});pT.repeatWhen=void 0;var pVe=Ws(),EVe=UE(),fVe=Ja(),$2A=xo();function BVe(A){return fVe.operate(function(r,t){var i,o=!1,s,g=!1,E=!1,p=function(){return E&&g&&(t.complete(),!0)},B=function(){return s||(s=new EVe.Subject,pVe.innerFrom(A(s)).subscribe($2A.createOperatorSubscriber(t,function(){i?m():o=!0},function(){g=!0,p()}))),s},m=function(){E=!1,i=r.subscribe($2A.createOperatorSubscriber(t,void 0,function(){E=!0,!p()&&B().next()})),o&&(i.unsubscribe(),i=null,o=!1,m())};m()})}pT.repeatWhen=BVe});var AiA=GA(ET=>{"use strict";Object.defineProperty(ET,"__esModule",{value:!0});ET.retry=void 0;var hVe=Ja(),ACA=xo(),QVe=YE(),mVe=H_(),DVe=Ws();function _Ve(A){A===void 0&&(A=1/0);var r;A&&typeof A=="object"?r=A:r={count:A};var t=r.count,i=t===void 0?1/0:t,o=r.delay,s=r.resetOnSuccess,g=s===void 0?!1:s;return i<=0?QVe.identity:hVe.operate(function(E,p){var B=0,m,_=function(){var x=!1;m=E.subscribe(ACA.createOperatorSubscriber(p,function(O){g&&(B=0),p.next(O)},void 0,function(O){if(B++{"use strict";Object.defineProperty(fT,"__esModule",{value:!0});fT.retryWhen=void 0;var wVe=Ws(),vVe=UE(),yVe=Ja(),eCA=xo();function CVe(A){return yVe.operate(function(r,t){var i,o=!1,s,g=function(){i=r.subscribe(eCA.createOperatorSubscriber(t,void 0,void 0,function(E){s||(s=new vVe.Subject,wVe.innerFrom(A(s)).subscribe(eCA.createOperatorSubscriber(t,function(){return i?g():o=!0}))),s&&s.next(E)})),o&&(i.unsubscribe(),i=null,o=!1,g())};g()})}fT.retryWhen=CVe});var hT=GA(BT=>{"use strict";Object.defineProperty(BT,"__esModule",{value:!0});BT.sample=void 0;var IVe=Ws(),bVe=Ja(),OVe=GE(),rCA=xo();function MVe(A){return bVe.operate(function(r,t){var i=!1,o=null;r.subscribe(rCA.createOperatorSubscriber(t,function(s){i=!0,o=s})),IVe.innerFrom(A).subscribe(rCA.createOperatorSubscriber(t,function(){if(i){i=!1;var s=o;o=null,t.next(s)}},OVe.noop))})}BT.sample=MVe});var riA=GA(QT=>{"use strict";Object.defineProperty(QT,"__esModule",{value:!0});QT.sampleTime=void 0;var kVe=XB(),xVe=hT(),HVe=KrA();function SVe(A,r){return r===void 0&&(r=kVe.asyncScheduler),xVe.sample(HVe.interval(A,r))}QT.sampleTime=SVe});var tiA=GA(mT=>{"use strict";Object.defineProperty(mT,"__esModule",{value:!0});mT.scan=void 0;var FVe=Ja(),RVe=ltA();function TVe(A,r){return FVe.operate(RVe.scanInternals(A,r,arguments.length>=2,!0))}mT.scan=TVe});var iiA=GA(DT=>{"use strict";Object.defineProperty(DT,"__esModule",{value:!0});DT.sequenceEqual=void 0;var NVe=Ja(),PVe=xo(),GVe=Ws();function YVe(A,r){return r===void 0&&(r=function(t,i){return t===i}),NVe.operate(function(t,i){var o=tCA(),s=tCA(),g=function(p){i.next(p),i.complete()},E=function(p,B){var m=PVe.createOperatorSubscriber(i,function(_){var x=B.buffer,O=B.complete;x.length===0?O?g(!1):p.buffer.push(_):!r(_,x.shift())&&g(!1)},function(){p.complete=!0;var _=B.complete,x=B.buffer;_&&g(x.length===0),m?.unsubscribe()});return m};t.subscribe(E(o,s)),GVe.innerFrom(A).subscribe(E(s,o))})}DT.sequenceEqual=YVe;function tCA(){return{buffer:[],complete:!1}}});var _T=GA(j_=>{"use strict";var UVe=j_&&j_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},LVe=j_&&j_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t0&&(m=new nCA.SafeSubscriber({next:function(U){return S.next(U)},error:function(U){P=!0,H(),_=niA(T,o,U),S.error(U)},complete:function(){k=!0,H(),_=niA(T,g),S.complete()}}),iCA.innerFrom(F).subscribe(m))})(B)}}j_.share=JVe;function niA(A,r){for(var t=[],i=2;i{"use strict";Object.defineProperty(wT,"__esModule",{value:!0});wT.shareReplay=void 0;var qVe=US(),VVe=_T();function zVe(A,r,t){var i,o,s,g,E=!1;return A&&typeof A=="object"?(i=A.bufferSize,g=i===void 0?1/0:i,o=A.windowTime,r=o===void 0?1/0:o,s=A.refCount,E=s===void 0?!1:s,t=A.scheduler):g=A??1/0,VVe.share({connector:function(){return new qVe.ReplaySubject(g,r,t)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:E})}wT.shareReplay=zVe});var oiA=GA(vT=>{"use strict";Object.defineProperty(vT,"__esModule",{value:!0});vT.single=void 0;var KVe=O_(),XVe=jrA(),ZVe=LrA(),$Ve=Ja(),Aze=xo();function eze(A){return $Ve.operate(function(r,t){var i=!1,o,s=!1,g=0;r.subscribe(Aze.createOperatorSubscriber(t,function(E){s=!0,(!A||A(E,g++,r))&&(i&&t.error(new XVe.SequenceError("Too many matching values")),i=!0,o=E)},function(){i?(t.next(o),t.complete()):t.error(s?new ZVe.NotFoundError("No matching values"):new KVe.EmptyError)}))})}vT.single=eze});var siA=GA(yT=>{"use strict";Object.defineProperty(yT,"__esModule",{value:!0});yT.skip=void 0;var rze=b4();function tze(A){return rze.filter(function(r,t){return A<=t})}yT.skip=tze});var ciA=GA(CT=>{"use strict";Object.defineProperty(CT,"__esModule",{value:!0});CT.skipLast=void 0;var ize=YE(),nze=Ja(),aze=xo();function oze(A){return A<=0?ize.identity:nze.operate(function(r,t){var i=new Array(A),o=0;return r.subscribe(aze.createOperatorSubscriber(t,function(s){var g=o++;if(g{"use strict";Object.defineProperty(IT,"__esModule",{value:!0});IT.skipUntil=void 0;var sze=Ja(),aCA=xo(),cze=Ws(),lze=GE();function uze(A){return sze.operate(function(r,t){var i=!1,o=aCA.createOperatorSubscriber(t,function(){o?.unsubscribe(),i=!0},lze.noop);cze.innerFrom(A).subscribe(o),r.subscribe(aCA.createOperatorSubscriber(t,function(s){return i&&t.next(s)}))})}IT.skipUntil=uze});var uiA=GA(bT=>{"use strict";Object.defineProperty(bT,"__esModule",{value:!0});bT.skipWhile=void 0;var gze=Ja(),dze=xo();function pze(A){return gze.operate(function(r,t){var i=!1,o=0;r.subscribe(dze.createOperatorSubscriber(t,function(s){return(i||(i=!A(s,o++)))&&t.next(s)}))})}bT.skipWhile=pze});var giA=GA(OT=>{"use strict";Object.defineProperty(OT,"__esModule",{value:!0});OT.startWith=void 0;var oCA=H6(),Eze=ZB(),fze=Ja();function Bze(){for(var A=[],r=0;r{"use strict";Object.defineProperty(MT,"__esModule",{value:!0});MT.switchMap=void 0;var hze=Ws(),Qze=Ja(),sCA=xo();function mze(A,r){return Qze.operate(function(t,i){var o=null,s=0,g=!1,E=function(){return g&&!o&&i.complete()};t.subscribe(sCA.createOperatorSubscriber(i,function(p){o?.unsubscribe();var B=0,m=s++;hze.innerFrom(A(p,m)).subscribe(o=sCA.createOperatorSubscriber(i,function(_){return i.next(r?r(p,_,m,B++):_)},function(){o=null,E()}))},function(){g=!0,E()}))})}MT.switchMap=mze});var diA=GA(kT=>{"use strict";Object.defineProperty(kT,"__esModule",{value:!0});kT.switchAll=void 0;var Dze=Qb(),_ze=YE();function wze(){return Dze.switchMap(_ze.identity)}kT.switchAll=wze});var piA=GA(xT=>{"use strict";Object.defineProperty(xT,"__esModule",{value:!0});xT.switchMapTo=void 0;var cCA=Qb(),vze=Vl();function yze(A,r){return vze.isFunction(r)?cCA.switchMap(function(){return A},r):cCA.switchMap(function(){return A})}xT.switchMapTo=yze});var EiA=GA(HT=>{"use strict";Object.defineProperty(HT,"__esModule",{value:!0});HT.switchScan=void 0;var Cze=Qb(),Ize=Ja();function bze(A,r){return Ize.operate(function(t,i){var o=r;return Cze.switchMap(function(s,g){return A(o,s,g)},function(s,g){return o=g,g})(t).subscribe(i),function(){o=null}})}HT.switchScan=bze});var fiA=GA(ST=>{"use strict";Object.defineProperty(ST,"__esModule",{value:!0});ST.takeUntil=void 0;var Oze=Ja(),Mze=xo(),kze=Ws(),xze=GE();function Hze(A){return Oze.operate(function(r,t){kze.innerFrom(A).subscribe(Mze.createOperatorSubscriber(t,function(){return t.complete()},xze.noop)),!t.closed&&r.subscribe(t)})}ST.takeUntil=Hze});var BiA=GA(FT=>{"use strict";Object.defineProperty(FT,"__esModule",{value:!0});FT.takeWhile=void 0;var Sze=Ja(),Fze=xo();function Rze(A,r){return r===void 0&&(r=!1),Sze.operate(function(t,i){var o=0;t.subscribe(Fze.createOperatorSubscriber(i,function(s){var g=A(s,o++);(g||r)&&i.next(s),!g&&i.complete()}))})}FT.takeWhile=Rze});var hiA=GA(RT=>{"use strict";Object.defineProperty(RT,"__esModule",{value:!0});RT.tap=void 0;var Tze=Vl(),Nze=Ja(),Pze=xo(),Gze=YE();function Yze(A,r,t){var i=Tze.isFunction(A)||r||t?{next:A,error:r,complete:t}:A;return i?Nze.operate(function(o,s){var g;(g=i.subscribe)===null||g===void 0||g.call(i);var E=!0;o.subscribe(Pze.createOperatorSubscriber(s,function(p){var B;(B=i.next)===null||B===void 0||B.call(i,p),s.next(p)},function(){var p;E=!1,(p=i.complete)===null||p===void 0||p.call(i),s.complete()},function(p){var B;E=!1,(B=i.error)===null||B===void 0||B.call(i,p),s.error(p)},function(){var p,B;E&&((p=i.unsubscribe)===null||p===void 0||p.call(i)),(B=i.finalize)===null||B===void 0||B.call(i)}))}):Gze.identity}RT.tap=Yze});var NT=GA(TT=>{"use strict";Object.defineProperty(TT,"__esModule",{value:!0});TT.throttle=void 0;var Uze=Ja(),lCA=xo(),Lze=Ws();function jze(A,r){return Uze.operate(function(t,i){var o=r??{},s=o.leading,g=s===void 0?!0:s,E=o.trailing,p=E===void 0?!1:E,B=!1,m=null,_=null,x=!1,O=function(){_?.unsubscribe(),_=null,p&&(H(),x&&i.complete())},k=function(){_=null,x&&i.complete()},P=function(T){return _=Lze.innerFrom(A(T)).subscribe(lCA.createOperatorSubscriber(i,O,k))},H=function(){if(B){B=!1;var T=m;m=null,i.next(T),!x&&P(T)}};t.subscribe(lCA.createOperatorSubscriber(i,function(T){B=!0,m=T,!(_&&!_.closed)&&(g?H():P(T))},function(){x=!0,!(p&&B&&_&&!_.closed)&&i.complete()}))})}TT.throttle=jze});var QiA=GA(PT=>{"use strict";Object.defineProperty(PT,"__esModule",{value:!0});PT.throttleTime=void 0;var Wze=XB(),Jze=NT(),qze=H_();function Vze(A,r,t){r===void 0&&(r=Wze.asyncScheduler);var i=qze.timer(A,r);return Jze.throttle(function(){return i},t)}PT.throttleTime=Vze});var miA=GA(mb=>{"use strict";Object.defineProperty(mb,"__esModule",{value:!0});mb.TimeInterval=mb.timeInterval=void 0;var zze=XB(),Kze=Ja(),Xze=xo();function Zze(A){return A===void 0&&(A=zze.asyncScheduler),Kze.operate(function(r,t){var i=A.now();r.subscribe(Xze.createOperatorSubscriber(t,function(o){var s=A.now(),g=s-i;i=s,t.next(new uCA(o,g))}))})}mb.timeInterval=Zze;var uCA=function(){function A(r,t){this.value=r,this.interval=t}return A}();mb.TimeInterval=uCA});var DiA=GA(GT=>{"use strict";Object.defineProperty(GT,"__esModule",{value:!0});GT.timeoutWith=void 0;var $ze=XB(),AKe=vF(),eKe=k6();function rKe(A,r,t){var i,o,s;if(t=t??$ze.async,AKe.isValidDate(A)?i=A:typeof A=="number"&&(o=A),r)s=function(){return r};else throw new TypeError("No observable provided to switch to");if(i==null&&o==null)throw new TypeError("No timeout provided.");return eKe.timeout({first:i,each:o,scheduler:t,with:s})}GT.timeoutWith=rKe});var _iA=GA(YT=>{"use strict";Object.defineProperty(YT,"__esModule",{value:!0});YT.timestamp=void 0;var tKe=YS(),iKe=I4();function nKe(A){return A===void 0&&(A=tKe.dateTimestampProvider),iKe.map(function(r){return{value:r,timestamp:A.now()}})}YT.timestamp=nKe});var wiA=GA(UT=>{"use strict";Object.defineProperty(UT,"__esModule",{value:!0});UT.window=void 0;var gCA=UE(),aKe=Ja(),dCA=xo(),oKe=GE(),sKe=Ws();function cKe(A){return aKe.operate(function(r,t){var i=new gCA.Subject;t.next(i.asObservable());var o=function(s){i.error(s),t.error(s)};return r.subscribe(dCA.createOperatorSubscriber(t,function(s){return i?.next(s)},function(){i.complete(),t.complete()},o)),sKe.innerFrom(A).subscribe(dCA.createOperatorSubscriber(t,function(){i.complete(),t.next(i=new gCA.Subject)},oKe.noop,o)),function(){i?.unsubscribe(),i=null}})}UT.window=cKe});var viA=GA(Db=>{"use strict";var lKe=Db&&Db.__values||function(A){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&A[r],i=0;if(t)return t.call(A);if(A&&typeof A.length=="number")return{next:function(){return A&&i>=A.length&&(A=void 0),{value:A&&A[i++],done:!A}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Db,"__esModule",{value:!0});Db.windowCount=void 0;var pCA=UE(),uKe=Ja(),gKe=xo();function dKe(A,r){r===void 0&&(r=0);var t=r>0?r:A;return uKe.operate(function(i,o){var s=[new pCA.Subject],g=[],E=0;o.next(s[0].asObservable()),i.subscribe(gKe.createOperatorSubscriber(o,function(p){var B,m;try{for(var _=lKe(s),x=_.next();!x.done;x=_.next()){var O=x.value;O.next(p)}}catch(H){B={error:H}}finally{try{x&&!x.done&&(m=_.return)&&m.call(_)}finally{if(B)throw B.error}}var k=E-A+1;if(k>=0&&k%t===0&&s.shift().complete(),++E%t===0){var P=new pCA.Subject;s.push(P),o.next(P.asObservable())}},function(){for(;s.length>0;)s.shift().complete();o.complete()},function(p){for(;s.length>0;)s.shift().error(p);o.error(p)},function(){g=null,s=null}))})}Db.windowCount=dKe});var yiA=GA(LT=>{"use strict";Object.defineProperty(LT,"__esModule",{value:!0});LT.windowTime=void 0;var pKe=UE(),EKe=XB(),fKe=Nh(),BKe=Ja(),hKe=xo(),QKe=w4(),mKe=ZB(),ECA=v4();function DKe(A){for(var r,t,i=[],o=1;o=0?ECA.executeSchedule(B,s,O,g,!0):_=!0,O();var k=function(H){return m.slice().forEach(H)},P=function(H){k(function(T){var v=T.window;return H(v)}),H(B),B.unsubscribe()};return p.subscribe(hKe.createOperatorSubscriber(B,function(H){k(function(T){T.window.next(H),E<=++T.seen&&x(T)})},function(){return P(function(H){return H.complete()})},function(H){return P(function(T){return T.error(H)})})),function(){m=null}})}LT.windowTime=DKe});var IiA=GA(_b=>{"use strict";var _Ke=_b&&_b.__values||function(A){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&A[r],i=0;if(t)return t.call(A);if(A&&typeof A.length=="number")return{next:function(){return A&&i>=A.length&&(A=void 0),{value:A&&A[i++],done:!A}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(_b,"__esModule",{value:!0});_b.windowToggle=void 0;var wKe=UE(),vKe=Nh(),yKe=Ja(),fCA=Ws(),CiA=xo(),BCA=GE(),CKe=w4();function IKe(A,r){return yKe.operate(function(t,i){var o=[],s=function(g){for(;0{"use strict";Object.defineProperty(jT,"__esModule",{value:!0});jT.windowWhen=void 0;var bKe=UE(),OKe=Ja(),hCA=xo(),MKe=Ws();function kKe(A){return OKe.operate(function(r,t){var i,o,s=function(E){i.error(E),t.error(E)},g=function(){o?.unsubscribe(),i?.complete(),i=new bKe.Subject,t.next(i.asObservable());var E;try{E=MKe.innerFrom(A())}catch(p){s(p);return}E.subscribe(o=hCA.createOperatorSubscriber(t,g,g,s))};g(),r.subscribe(hCA.createOperatorSubscriber(t,function(E){return i.next(E)},function(){i.complete(),t.complete()},s,function(){o?.unsubscribe(),i=null}))})}jT.windowWhen=kKe});var OiA=GA(W_=>{"use strict";var QCA=W_&&W_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},mCA=W_&&W_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(WT,"__esModule",{value:!0});WT.zipAll=void 0;var NKe=$F(),PKe=utA();function GKe(A){return PKe.joinAllInternals(NKe.zip,A)}WT.zipAll=GKe});var kiA=GA(J_=>{"use strict";var YKe=J_&&J_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},UKe=J_&&J_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";var JKe=q_&&q_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},qKe=q_&&q_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";var KKe=Nr&&Nr.__createBinding||(Object.create?function(A,r,t,i){i===void 0&&(i=t),Object.defineProperty(A,i,{enumerable:!0,get:function(){return r[t]}})}:function(A,r,t,i){i===void 0&&(i=t),A[i]=r[t]}),XKe=Nr&&Nr.__exportStar||function(A,r){for(var t in A)t!=="default"&&!Object.prototype.hasOwnProperty.call(r,t)&&KKe(r,A,t)};Object.defineProperty(Nr,"__esModule",{value:!0});Nr.interval=Nr.iif=Nr.generate=Nr.fromEventPattern=Nr.fromEvent=Nr.from=Nr.forkJoin=Nr.empty=Nr.defer=Nr.connectable=Nr.concat=Nr.combineLatest=Nr.bindNodeCallback=Nr.bindCallback=Nr.UnsubscriptionError=Nr.TimeoutError=Nr.SequenceError=Nr.ObjectUnsubscribedError=Nr.NotFoundError=Nr.EmptyError=Nr.ArgumentOutOfRangeError=Nr.firstValueFrom=Nr.lastValueFrom=Nr.isObservable=Nr.identity=Nr.noop=Nr.pipe=Nr.NotificationKind=Nr.Notification=Nr.Subscriber=Nr.Subscription=Nr.Scheduler=Nr.VirtualAction=Nr.VirtualTimeScheduler=Nr.animationFrameScheduler=Nr.animationFrame=Nr.queueScheduler=Nr.queue=Nr.asyncScheduler=Nr.async=Nr.asapScheduler=Nr.asap=Nr.AsyncSubject=Nr.ReplaySubject=Nr.BehaviorSubject=Nr.Subject=Nr.animationFrames=Nr.observable=Nr.ConnectableObservable=Nr.Observable=void 0;Nr.filter=Nr.expand=Nr.exhaustMap=Nr.exhaustAll=Nr.exhaust=Nr.every=Nr.endWith=Nr.elementAt=Nr.distinctUntilKeyChanged=Nr.distinctUntilChanged=Nr.distinct=Nr.dematerialize=Nr.delayWhen=Nr.delay=Nr.defaultIfEmpty=Nr.debounceTime=Nr.debounce=Nr.count=Nr.connect=Nr.concatWith=Nr.concatMapTo=Nr.concatMap=Nr.concatAll=Nr.combineLatestWith=Nr.combineLatestAll=Nr.combineAll=Nr.catchError=Nr.bufferWhen=Nr.bufferToggle=Nr.bufferTime=Nr.bufferCount=Nr.buffer=Nr.auditTime=Nr.audit=Nr.config=Nr.NEVER=Nr.EMPTY=Nr.scheduled=Nr.zip=Nr.using=Nr.timer=Nr.throwError=Nr.range=Nr.race=Nr.partition=Nr.pairs=Nr.onErrorResumeNext=Nr.of=Nr.never=Nr.merge=void 0;Nr.switchMap=Nr.switchAll=Nr.subscribeOn=Nr.startWith=Nr.skipWhile=Nr.skipUntil=Nr.skipLast=Nr.skip=Nr.single=Nr.shareReplay=Nr.share=Nr.sequenceEqual=Nr.scan=Nr.sampleTime=Nr.sample=Nr.refCount=Nr.retryWhen=Nr.retry=Nr.repeatWhen=Nr.repeat=Nr.reduce=Nr.raceWith=Nr.publishReplay=Nr.publishLast=Nr.publishBehavior=Nr.publish=Nr.pluck=Nr.pairwise=Nr.onErrorResumeNextWith=Nr.observeOn=Nr.multicast=Nr.min=Nr.mergeWith=Nr.mergeScan=Nr.mergeMapTo=Nr.mergeMap=Nr.flatMap=Nr.mergeAll=Nr.max=Nr.materialize=Nr.mapTo=Nr.map=Nr.last=Nr.isEmpty=Nr.ignoreElements=Nr.groupBy=Nr.first=Nr.findIndex=Nr.find=Nr.finalize=void 0;Nr.zipWith=Nr.zipAll=Nr.withLatestFrom=Nr.windowWhen=Nr.windowToggle=Nr.windowTime=Nr.windowCount=Nr.window=Nr.toArray=Nr.timestamp=Nr.timeoutWith=Nr.timeout=Nr.timeInterval=Nr.throwIfEmpty=Nr.throttleTime=Nr.throttle=Nr.tap=Nr.takeWhile=Nr.takeUntil=Nr.takeLast=Nr.take=Nr.switchScan=Nr.switchMapTo=void 0;var ZKe=lu();Object.defineProperty(Nr,"Observable",{enumerable:!0,get:function(){return ZKe.Observable}});var $Ke=I6();Object.defineProperty(Nr,"ConnectableObservable",{enumerable:!0,get:function(){return $Ke.ConnectableObservable}});var AXe=y6();Object.defineProperty(Nr,"observable",{enumerable:!0,get:function(){return AXe.observable}});var eXe=$vA();Object.defineProperty(Nr,"animationFrames",{enumerable:!0,get:function(){return eXe.animationFrames}});var rXe=UE();Object.defineProperty(Nr,"Subject",{enumerable:!0,get:function(){return rXe.Subject}});var tXe=yrA();Object.defineProperty(Nr,"BehaviorSubject",{enumerable:!0,get:function(){return tXe.BehaviorSubject}});var iXe=US();Object.defineProperty(Nr,"ReplaySubject",{enumerable:!0,get:function(){return iXe.ReplaySubject}});var nXe=LS();Object.defineProperty(Nr,"AsyncSubject",{enumerable:!0,get:function(){return nXe.AsyncSubject}});var _CA=fyA();Object.defineProperty(Nr,"asap",{enumerable:!0,get:function(){return _CA.asap}});Object.defineProperty(Nr,"asapScheduler",{enumerable:!0,get:function(){return _CA.asapScheduler}});var wCA=XB();Object.defineProperty(Nr,"async",{enumerable:!0,get:function(){return wCA.async}});Object.defineProperty(Nr,"asyncScheduler",{enumerable:!0,get:function(){return wCA.asyncScheduler}});var vCA=QyA();Object.defineProperty(Nr,"queue",{enumerable:!0,get:function(){return vCA.queue}});Object.defineProperty(Nr,"queueScheduler",{enumerable:!0,get:function(){return vCA.queueScheduler}});var yCA=wyA();Object.defineProperty(Nr,"animationFrame",{enumerable:!0,get:function(){return yCA.animationFrame}});Object.defineProperty(Nr,"animationFrameScheduler",{enumerable:!0,get:function(){return yCA.animationFrameScheduler}});var CCA=CyA();Object.defineProperty(Nr,"VirtualTimeScheduler",{enumerable:!0,get:function(){return CCA.VirtualTimeScheduler}});Object.defineProperty(Nr,"VirtualAction",{enumerable:!0,get:function(){return CCA.VirtualAction}});var aXe=IrA();Object.defineProperty(Nr,"Scheduler",{enumerable:!0,get:function(){return aXe.Scheduler}});var oXe=Nh();Object.defineProperty(Nr,"Subscription",{enumerable:!0,get:function(){return oXe.Subscription}});var sXe=RI();Object.defineProperty(Nr,"Subscriber",{enumerable:!0,get:function(){return sXe.Subscriber}});var ICA=EF();Object.defineProperty(Nr,"Notification",{enumerable:!0,get:function(){return ICA.Notification}});Object.defineProperty(Nr,"NotificationKind",{enumerable:!0,get:function(){return ICA.NotificationKind}});var cXe=C6();Object.defineProperty(Nr,"pipe",{enumerable:!0,get:function(){return cXe.pipe}});var lXe=GE();Object.defineProperty(Nr,"noop",{enumerable:!0,get:function(){return lXe.noop}});var uXe=YE();Object.defineProperty(Nr,"identity",{enumerable:!0,get:function(){return uXe.identity}});var gXe=LyA();Object.defineProperty(Nr,"isObservable",{enumerable:!0,get:function(){return gXe.isObservable}});var dXe=jyA();Object.defineProperty(Nr,"lastValueFrom",{enumerable:!0,get:function(){return dXe.lastValueFrom}});var pXe=WyA();Object.defineProperty(Nr,"firstValueFrom",{enumerable:!0,get:function(){return pXe.firstValueFrom}});var EXe=UrA();Object.defineProperty(Nr,"ArgumentOutOfRangeError",{enumerable:!0,get:function(){return EXe.ArgumentOutOfRangeError}});var fXe=O_();Object.defineProperty(Nr,"EmptyError",{enumerable:!0,get:function(){return fXe.EmptyError}});var BXe=LrA();Object.defineProperty(Nr,"NotFoundError",{enumerable:!0,get:function(){return BXe.NotFoundError}});var hXe=DrA();Object.defineProperty(Nr,"ObjectUnsubscribedError",{enumerable:!0,get:function(){return hXe.ObjectUnsubscribedError}});var QXe=jrA();Object.defineProperty(Nr,"SequenceError",{enumerable:!0,get:function(){return QXe.SequenceError}});var mXe=k6();Object.defineProperty(Nr,"TimeoutError",{enumerable:!0,get:function(){return mXe.TimeoutError}});var DXe=crA();Object.defineProperty(Nr,"UnsubscriptionError",{enumerable:!0,get:function(){return DXe.UnsubscriptionError}});var _Xe=qyA();Object.defineProperty(Nr,"bindCallback",{enumerable:!0,get:function(){return _Xe.bindCallback}});var wXe=VyA();Object.defineProperty(Nr,"bindNodeCallback",{enumerable:!0,get:function(){return wXe.bindNodeCallback}});var vXe=MF();Object.defineProperty(Nr,"combineLatest",{enumerable:!0,get:function(){return vXe.combineLatest}});var yXe=H6();Object.defineProperty(Nr,"concat",{enumerable:!0,get:function(){return yXe.concat}});var CXe=r2A();Object.defineProperty(Nr,"connectable",{enumerable:!0,get:function(){return CXe.connectable}});var IXe=S6();Object.defineProperty(Nr,"defer",{enumerable:!0,get:function(){return IXe.defer}});var bXe=H0();Object.defineProperty(Nr,"empty",{enumerable:!0,get:function(){return bXe.empty}});var OXe=t2A();Object.defineProperty(Nr,"forkJoin",{enumerable:!0,get:function(){return OXe.forkJoin}});var MXe=y4();Object.defineProperty(Nr,"from",{enumerable:!0,get:function(){return MXe.from}});var kXe=n2A();Object.defineProperty(Nr,"fromEvent",{enumerable:!0,get:function(){return kXe.fromEvent}});var xXe=o2A();Object.defineProperty(Nr,"fromEventPattern",{enumerable:!0,get:function(){return xXe.fromEventPattern}});var HXe=c2A();Object.defineProperty(Nr,"generate",{enumerable:!0,get:function(){return HXe.generate}});var SXe=l2A();Object.defineProperty(Nr,"iif",{enumerable:!0,get:function(){return SXe.iif}});var FXe=KrA();Object.defineProperty(Nr,"interval",{enumerable:!0,get:function(){return FXe.interval}});var RXe=g2A();Object.defineProperty(Nr,"merge",{enumerable:!0,get:function(){return RXe.merge}});var TXe=XrA();Object.defineProperty(Nr,"never",{enumerable:!0,get:function(){return TXe.never}});var NXe=dF();Object.defineProperty(Nr,"of",{enumerable:!0,get:function(){return NXe.of}});var PXe=ZrA();Object.defineProperty(Nr,"onErrorResumeNext",{enumerable:!0,get:function(){return PXe.onErrorResumeNext}});var GXe=p2A();Object.defineProperty(Nr,"pairs",{enumerable:!0,get:function(){return GXe.pairs}});var YXe=B2A();Object.defineProperty(Nr,"partition",{enumerable:!0,get:function(){return YXe.partition}});var UXe=AtA();Object.defineProperty(Nr,"race",{enumerable:!0,get:function(){return UXe.race}});var LXe=m2A();Object.defineProperty(Nr,"range",{enumerable:!0,get:function(){return LXe.range}});var jXe=YrA();Object.defineProperty(Nr,"throwError",{enumerable:!0,get:function(){return jXe.throwError}});var WXe=H_();Object.defineProperty(Nr,"timer",{enumerable:!0,get:function(){return WXe.timer}});var JXe=D2A();Object.defineProperty(Nr,"using",{enumerable:!0,get:function(){return JXe.using}});var qXe=$F();Object.defineProperty(Nr,"zip",{enumerable:!0,get:function(){return qXe.zip}});var VXe=GrA();Object.defineProperty(Nr,"scheduled",{enumerable:!0,get:function(){return VXe.scheduled}});var zXe=H0();Object.defineProperty(Nr,"EMPTY",{enumerable:!0,get:function(){return zXe.EMPTY}});var KXe=XrA();Object.defineProperty(Nr,"NEVER",{enumerable:!0,get:function(){return KXe.NEVER}});XKe(w2A(),Nr);var XXe=SI();Object.defineProperty(Nr,"config",{enumerable:!0,get:function(){return XXe.config}});var ZXe=eR();Object.defineProperty(Nr,"audit",{enumerable:!0,get:function(){return ZXe.audit}});var $Xe=etA();Object.defineProperty(Nr,"auditTime",{enumerable:!0,get:function(){return $Xe.auditTime}});var AZe=rtA();Object.defineProperty(Nr,"buffer",{enumerable:!0,get:function(){return AZe.buffer}});var eZe=itA();Object.defineProperty(Nr,"bufferCount",{enumerable:!0,get:function(){return eZe.bufferCount}});var rZe=ntA();Object.defineProperty(Nr,"bufferTime",{enumerable:!0,get:function(){return rZe.bufferTime}});var tZe=otA();Object.defineProperty(Nr,"bufferToggle",{enumerable:!0,get:function(){return tZe.bufferToggle}});var iZe=stA();Object.defineProperty(Nr,"bufferWhen",{enumerable:!0,get:function(){return iZe.bufferWhen}});var nZe=ctA();Object.defineProperty(Nr,"catchError",{enumerable:!0,get:function(){return nZe.catchError}});var aZe=gtA();Object.defineProperty(Nr,"combineAll",{enumerable:!0,get:function(){return aZe.combineAll}});var oZe=gR();Object.defineProperty(Nr,"combineLatestAll",{enumerable:!0,get:function(){return oZe.combineLatestAll}});var sZe=ptA();Object.defineProperty(Nr,"combineLatestWith",{enumerable:!0,get:function(){return sZe.combineLatestWith}});var cZe=x6();Object.defineProperty(Nr,"concatAll",{enumerable:!0,get:function(){return cZe.concatAll}});var lZe=ER();Object.defineProperty(Nr,"concatMap",{enumerable:!0,get:function(){return lZe.concatMap}});var uZe=EtA();Object.defineProperty(Nr,"concatMapTo",{enumerable:!0,get:function(){return uZe.concatMapTo}});var gZe=BtA();Object.defineProperty(Nr,"concatWith",{enumerable:!0,get:function(){return gZe.concatWith}});var dZe=F6();Object.defineProperty(Nr,"connect",{enumerable:!0,get:function(){return dZe.connect}});var pZe=htA();Object.defineProperty(Nr,"count",{enumerable:!0,get:function(){return pZe.count}});var EZe=QtA();Object.defineProperty(Nr,"debounce",{enumerable:!0,get:function(){return EZe.debounce}});var fZe=mtA();Object.defineProperty(Nr,"debounceTime",{enumerable:!0,get:function(){return fZe.debounceTime}});var BZe=pb();Object.defineProperty(Nr,"defaultIfEmpty",{enumerable:!0,get:function(){return BZe.defaultIfEmpty}});var hZe=DtA();Object.defineProperty(Nr,"delay",{enumerable:!0,get:function(){return hZe.delay}});var QZe=OR();Object.defineProperty(Nr,"delayWhen",{enumerable:!0,get:function(){return QZe.delayWhen}});var mZe=_tA();Object.defineProperty(Nr,"dematerialize",{enumerable:!0,get:function(){return mZe.dematerialize}});var DZe=wtA();Object.defineProperty(Nr,"distinct",{enumerable:!0,get:function(){return DZe.distinct}});var _Ze=SR();Object.defineProperty(Nr,"distinctUntilChanged",{enumerable:!0,get:function(){return _Ze.distinctUntilChanged}});var wZe=vtA();Object.defineProperty(Nr,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return wZe.distinctUntilKeyChanged}});var vZe=ytA();Object.defineProperty(Nr,"elementAt",{enumerable:!0,get:function(){return vZe.elementAt}});var yZe=CtA();Object.defineProperty(Nr,"endWith",{enumerable:!0,get:function(){return yZe.endWith}});var CZe=ItA();Object.defineProperty(Nr,"every",{enumerable:!0,get:function(){return CZe.every}});var IZe=btA();Object.defineProperty(Nr,"exhaust",{enumerable:!0,get:function(){return IZe.exhaust}});var bZe=UR();Object.defineProperty(Nr,"exhaustAll",{enumerable:!0,get:function(){return bZe.exhaustAll}});var OZe=GR();Object.defineProperty(Nr,"exhaustMap",{enumerable:!0,get:function(){return OZe.exhaustMap}});var MZe=OtA();Object.defineProperty(Nr,"expand",{enumerable:!0,get:function(){return MZe.expand}});var kZe=b4();Object.defineProperty(Nr,"filter",{enumerable:!0,get:function(){return kZe.filter}});var xZe=MtA();Object.defineProperty(Nr,"finalize",{enumerable:!0,get:function(){return xZe.finalize}});var HZe=JR();Object.defineProperty(Nr,"find",{enumerable:!0,get:function(){return HZe.find}});var SZe=ktA();Object.defineProperty(Nr,"findIndex",{enumerable:!0,get:function(){return SZe.findIndex}});var FZe=xtA();Object.defineProperty(Nr,"first",{enumerable:!0,get:function(){return FZe.first}});var RZe=HtA();Object.defineProperty(Nr,"groupBy",{enumerable:!0,get:function(){return RZe.groupBy}});var TZe=yR();Object.defineProperty(Nr,"ignoreElements",{enumerable:!0,get:function(){return TZe.ignoreElements}});var NZe=StA();Object.defineProperty(Nr,"isEmpty",{enumerable:!0,get:function(){return NZe.isEmpty}});var PZe=FtA();Object.defineProperty(Nr,"last",{enumerable:!0,get:function(){return PZe.last}});var GZe=I4();Object.defineProperty(Nr,"map",{enumerable:!0,get:function(){return GZe.map}});var YZe=IR();Object.defineProperty(Nr,"mapTo",{enumerable:!0,get:function(){return YZe.mapTo}});var UZe=TtA();Object.defineProperty(Nr,"materialize",{enumerable:!0,get:function(){return UZe.materialize}});var LZe=NtA();Object.defineProperty(Nr,"max",{enumerable:!0,get:function(){return LZe.max}});var jZe=ob();Object.defineProperty(Nr,"mergeAll",{enumerable:!0,get:function(){return jZe.mergeAll}});var WZe=PtA();Object.defineProperty(Nr,"flatMap",{enumerable:!0,get:function(){return WZe.flatMap}});var JZe=qm();Object.defineProperty(Nr,"mergeMap",{enumerable:!0,get:function(){return JZe.mergeMap}});var qZe=GtA();Object.defineProperty(Nr,"mergeMapTo",{enumerable:!0,get:function(){return qZe.mergeMapTo}});var VZe=YtA();Object.defineProperty(Nr,"mergeScan",{enumerable:!0,get:function(){return VZe.mergeScan}});var zZe=LtA();Object.defineProperty(Nr,"mergeWith",{enumerable:!0,get:function(){return zZe.mergeWith}});var KZe=jtA();Object.defineProperty(Nr,"min",{enumerable:!0,get:function(){return KZe.min}});var XZe=R6();Object.defineProperty(Nr,"multicast",{enumerable:!0,get:function(){return XZe.multicast}});var ZZe=ib();Object.defineProperty(Nr,"observeOn",{enumerable:!0,get:function(){return ZZe.observeOn}});var $Ze=WtA();Object.defineProperty(Nr,"onErrorResumeNextWith",{enumerable:!0,get:function(){return $Ze.onErrorResumeNextWith}});var A$e=JtA();Object.defineProperty(Nr,"pairwise",{enumerable:!0,get:function(){return A$e.pairwise}});var e$e=qtA();Object.defineProperty(Nr,"pluck",{enumerable:!0,get:function(){return e$e.pluck}});var r$e=VtA();Object.defineProperty(Nr,"publish",{enumerable:!0,get:function(){return r$e.publish}});var t$e=ztA();Object.defineProperty(Nr,"publishBehavior",{enumerable:!0,get:function(){return t$e.publishBehavior}});var i$e=KtA();Object.defineProperty(Nr,"publishLast",{enumerable:!0,get:function(){return i$e.publishLast}});var n$e=XtA();Object.defineProperty(Nr,"publishReplay",{enumerable:!0,get:function(){return n$e.publishReplay}});var a$e=gT();Object.defineProperty(Nr,"raceWith",{enumerable:!0,get:function(){return a$e.raceWith}});var o$e=By();Object.defineProperty(Nr,"reduce",{enumerable:!0,get:function(){return o$e.reduce}});var s$e=ZtA();Object.defineProperty(Nr,"repeat",{enumerable:!0,get:function(){return s$e.repeat}});var c$e=$tA();Object.defineProperty(Nr,"repeatWhen",{enumerable:!0,get:function(){return c$e.repeatWhen}});var l$e=AiA();Object.defineProperty(Nr,"retry",{enumerable:!0,get:function(){return l$e.retry}});var u$e=eiA();Object.defineProperty(Nr,"retryWhen",{enumerable:!0,get:function(){return u$e.retryWhen}});var g$e=NS();Object.defineProperty(Nr,"refCount",{enumerable:!0,get:function(){return g$e.refCount}});var d$e=hT();Object.defineProperty(Nr,"sample",{enumerable:!0,get:function(){return d$e.sample}});var p$e=riA();Object.defineProperty(Nr,"sampleTime",{enumerable:!0,get:function(){return p$e.sampleTime}});var E$e=tiA();Object.defineProperty(Nr,"scan",{enumerable:!0,get:function(){return E$e.scan}});var f$e=iiA();Object.defineProperty(Nr,"sequenceEqual",{enumerable:!0,get:function(){return f$e.sequenceEqual}});var B$e=_T();Object.defineProperty(Nr,"share",{enumerable:!0,get:function(){return B$e.share}});var h$e=aiA();Object.defineProperty(Nr,"shareReplay",{enumerable:!0,get:function(){return h$e.shareReplay}});var Q$e=oiA();Object.defineProperty(Nr,"single",{enumerable:!0,get:function(){return Q$e.single}});var m$e=siA();Object.defineProperty(Nr,"skip",{enumerable:!0,get:function(){return m$e.skip}});var D$e=ciA();Object.defineProperty(Nr,"skipLast",{enumerable:!0,get:function(){return D$e.skipLast}});var _$e=liA();Object.defineProperty(Nr,"skipUntil",{enumerable:!0,get:function(){return _$e.skipUntil}});var w$e=uiA();Object.defineProperty(Nr,"skipWhile",{enumerable:!0,get:function(){return w$e.skipWhile}});var v$e=giA();Object.defineProperty(Nr,"startWith",{enumerable:!0,get:function(){return v$e.startWith}});var y$e=nb();Object.defineProperty(Nr,"subscribeOn",{enumerable:!0,get:function(){return y$e.subscribeOn}});var C$e=diA();Object.defineProperty(Nr,"switchAll",{enumerable:!0,get:function(){return C$e.switchAll}});var I$e=Qb();Object.defineProperty(Nr,"switchMap",{enumerable:!0,get:function(){return I$e.switchMap}});var b$e=piA();Object.defineProperty(Nr,"switchMapTo",{enumerable:!0,get:function(){return b$e.switchMapTo}});var O$e=EiA();Object.defineProperty(Nr,"switchScan",{enumerable:!0,get:function(){return O$e.switchScan}});var M$e=Eb();Object.defineProperty(Nr,"take",{enumerable:!0,get:function(){return M$e.take}});var k$e=XR();Object.defineProperty(Nr,"takeLast",{enumerable:!0,get:function(){return k$e.takeLast}});var x$e=fiA();Object.defineProperty(Nr,"takeUntil",{enumerable:!0,get:function(){return x$e.takeUntil}});var H$e=BiA();Object.defineProperty(Nr,"takeWhile",{enumerable:!0,get:function(){return H$e.takeWhile}});var S$e=hiA();Object.defineProperty(Nr,"tap",{enumerable:!0,get:function(){return S$e.tap}});var F$e=NT();Object.defineProperty(Nr,"throttle",{enumerable:!0,get:function(){return F$e.throttle}});var R$e=QiA();Object.defineProperty(Nr,"throttleTime",{enumerable:!0,get:function(){return R$e.throttleTime}});var T$e=fb();Object.defineProperty(Nr,"throwIfEmpty",{enumerable:!0,get:function(){return T$e.throwIfEmpty}});var N$e=miA();Object.defineProperty(Nr,"timeInterval",{enumerable:!0,get:function(){return N$e.timeInterval}});var P$e=k6();Object.defineProperty(Nr,"timeout",{enumerable:!0,get:function(){return P$e.timeout}});var G$e=DiA();Object.defineProperty(Nr,"timeoutWith",{enumerable:!0,get:function(){return G$e.timeoutWith}});var Y$e=_iA();Object.defineProperty(Nr,"timestamp",{enumerable:!0,get:function(){return Y$e.timestamp}});var U$e=cR();Object.defineProperty(Nr,"toArray",{enumerable:!0,get:function(){return U$e.toArray}});var L$e=wiA();Object.defineProperty(Nr,"window",{enumerable:!0,get:function(){return L$e.window}});var j$e=viA();Object.defineProperty(Nr,"windowCount",{enumerable:!0,get:function(){return j$e.windowCount}});var W$e=yiA();Object.defineProperty(Nr,"windowTime",{enumerable:!0,get:function(){return W$e.windowTime}});var J$e=IiA();Object.defineProperty(Nr,"windowToggle",{enumerable:!0,get:function(){return J$e.windowToggle}});var q$e=biA();Object.defineProperty(Nr,"windowWhen",{enumerable:!0,get:function(){return q$e.windowWhen}});var V$e=OiA();Object.defineProperty(Nr,"withLatestFrom",{enumerable:!0,get:function(){return V$e.withLatestFrom}});var z$e=MiA();Object.defineProperty(Nr,"zipAll",{enumerable:!0,get:function(){return z$e.zipAll}});var K$e=xiA();Object.defineProperty(Nr,"zipWith",{enumerable:!0,get:function(){return K$e.zipWith}})});var MCA=GA(JT=>{"use strict";Object.defineProperty(JT,"__esModule",{value:!0});JT.partition=void 0;var X$e=$rA(),OCA=b4();function Z$e(A,r){return function(t){return[OCA.filter(A,r)(t),OCA.filter(X$e.not(A,r))(t)]}}JT.partition=Z$e});var kCA=GA(V_=>{"use strict";var $$e=V_&&V_.__read||function(A,r){var t=typeof Symbol=="function"&&A[Symbol.iterator];if(!t)return A;var i=t.call(A),o,s=[],g;try{for(;(r===void 0||r-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(E){g={error:E}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(g)throw g.error}}return s},AAr=V_&&V_.__spreadArray||function(A,r){for(var t=0,i=r.length,o=A.length;t{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.mergeAll=kt.merge=kt.max=kt.materialize=kt.mapTo=kt.map=kt.last=kt.isEmpty=kt.ignoreElements=kt.groupBy=kt.first=kt.findIndex=kt.find=kt.finalize=kt.filter=kt.expand=kt.exhaustMap=kt.exhaustAll=kt.exhaust=kt.every=kt.endWith=kt.elementAt=kt.distinctUntilKeyChanged=kt.distinctUntilChanged=kt.distinct=kt.dematerialize=kt.delayWhen=kt.delay=kt.defaultIfEmpty=kt.debounceTime=kt.debounce=kt.count=kt.connect=kt.concatWith=kt.concatMapTo=kt.concatMap=kt.concatAll=kt.concat=kt.combineLatestWith=kt.combineLatest=kt.combineLatestAll=kt.combineAll=kt.catchError=kt.bufferWhen=kt.bufferToggle=kt.bufferTime=kt.bufferCount=kt.buffer=kt.auditTime=kt.audit=void 0;kt.timeInterval=kt.throwIfEmpty=kt.throttleTime=kt.throttle=kt.tap=kt.takeWhile=kt.takeUntil=kt.takeLast=kt.take=kt.switchScan=kt.switchMapTo=kt.switchMap=kt.switchAll=kt.subscribeOn=kt.startWith=kt.skipWhile=kt.skipUntil=kt.skipLast=kt.skip=kt.single=kt.shareReplay=kt.share=kt.sequenceEqual=kt.scan=kt.sampleTime=kt.sample=kt.refCount=kt.retryWhen=kt.retry=kt.repeatWhen=kt.repeat=kt.reduce=kt.raceWith=kt.race=kt.publishReplay=kt.publishLast=kt.publishBehavior=kt.publish=kt.pluck=kt.partition=kt.pairwise=kt.onErrorResumeNext=kt.observeOn=kt.multicast=kt.min=kt.mergeWith=kt.mergeScan=kt.mergeMapTo=kt.mergeMap=kt.flatMap=void 0;kt.zipWith=kt.zipAll=kt.zip=kt.withLatestFrom=kt.windowWhen=kt.windowToggle=kt.windowTime=kt.windowCount=kt.window=kt.toArray=kt.timestamp=kt.timeoutWith=kt.timeout=void 0;var iAr=eR();Object.defineProperty(kt,"audit",{enumerable:!0,get:function(){return iAr.audit}});var nAr=etA();Object.defineProperty(kt,"auditTime",{enumerable:!0,get:function(){return nAr.auditTime}});var aAr=rtA();Object.defineProperty(kt,"buffer",{enumerable:!0,get:function(){return aAr.buffer}});var oAr=itA();Object.defineProperty(kt,"bufferCount",{enumerable:!0,get:function(){return oAr.bufferCount}});var sAr=ntA();Object.defineProperty(kt,"bufferTime",{enumerable:!0,get:function(){return sAr.bufferTime}});var cAr=otA();Object.defineProperty(kt,"bufferToggle",{enumerable:!0,get:function(){return cAr.bufferToggle}});var lAr=stA();Object.defineProperty(kt,"bufferWhen",{enumerable:!0,get:function(){return lAr.bufferWhen}});var uAr=ctA();Object.defineProperty(kt,"catchError",{enumerable:!0,get:function(){return uAr.catchError}});var gAr=gtA();Object.defineProperty(kt,"combineAll",{enumerable:!0,get:function(){return gAr.combineAll}});var dAr=gR();Object.defineProperty(kt,"combineLatestAll",{enumerable:!0,get:function(){return dAr.combineLatestAll}});var pAr=dtA();Object.defineProperty(kt,"combineLatest",{enumerable:!0,get:function(){return pAr.combineLatest}});var EAr=ptA();Object.defineProperty(kt,"combineLatestWith",{enumerable:!0,get:function(){return EAr.combineLatestWith}});var fAr=ftA();Object.defineProperty(kt,"concat",{enumerable:!0,get:function(){return fAr.concat}});var BAr=x6();Object.defineProperty(kt,"concatAll",{enumerable:!0,get:function(){return BAr.concatAll}});var hAr=ER();Object.defineProperty(kt,"concatMap",{enumerable:!0,get:function(){return hAr.concatMap}});var QAr=EtA();Object.defineProperty(kt,"concatMapTo",{enumerable:!0,get:function(){return QAr.concatMapTo}});var mAr=BtA();Object.defineProperty(kt,"concatWith",{enumerable:!0,get:function(){return mAr.concatWith}});var DAr=F6();Object.defineProperty(kt,"connect",{enumerable:!0,get:function(){return DAr.connect}});var _Ar=htA();Object.defineProperty(kt,"count",{enumerable:!0,get:function(){return _Ar.count}});var wAr=QtA();Object.defineProperty(kt,"debounce",{enumerable:!0,get:function(){return wAr.debounce}});var vAr=mtA();Object.defineProperty(kt,"debounceTime",{enumerable:!0,get:function(){return vAr.debounceTime}});var yAr=pb();Object.defineProperty(kt,"defaultIfEmpty",{enumerable:!0,get:function(){return yAr.defaultIfEmpty}});var CAr=DtA();Object.defineProperty(kt,"delay",{enumerable:!0,get:function(){return CAr.delay}});var IAr=OR();Object.defineProperty(kt,"delayWhen",{enumerable:!0,get:function(){return IAr.delayWhen}});var bAr=_tA();Object.defineProperty(kt,"dematerialize",{enumerable:!0,get:function(){return bAr.dematerialize}});var OAr=wtA();Object.defineProperty(kt,"distinct",{enumerable:!0,get:function(){return OAr.distinct}});var MAr=SR();Object.defineProperty(kt,"distinctUntilChanged",{enumerable:!0,get:function(){return MAr.distinctUntilChanged}});var kAr=vtA();Object.defineProperty(kt,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return kAr.distinctUntilKeyChanged}});var xAr=ytA();Object.defineProperty(kt,"elementAt",{enumerable:!0,get:function(){return xAr.elementAt}});var HAr=CtA();Object.defineProperty(kt,"endWith",{enumerable:!0,get:function(){return HAr.endWith}});var SAr=ItA();Object.defineProperty(kt,"every",{enumerable:!0,get:function(){return SAr.every}});var FAr=btA();Object.defineProperty(kt,"exhaust",{enumerable:!0,get:function(){return FAr.exhaust}});var RAr=UR();Object.defineProperty(kt,"exhaustAll",{enumerable:!0,get:function(){return RAr.exhaustAll}});var TAr=GR();Object.defineProperty(kt,"exhaustMap",{enumerable:!0,get:function(){return TAr.exhaustMap}});var NAr=OtA();Object.defineProperty(kt,"expand",{enumerable:!0,get:function(){return NAr.expand}});var PAr=b4();Object.defineProperty(kt,"filter",{enumerable:!0,get:function(){return PAr.filter}});var GAr=MtA();Object.defineProperty(kt,"finalize",{enumerable:!0,get:function(){return GAr.finalize}});var YAr=JR();Object.defineProperty(kt,"find",{enumerable:!0,get:function(){return YAr.find}});var UAr=ktA();Object.defineProperty(kt,"findIndex",{enumerable:!0,get:function(){return UAr.findIndex}});var LAr=xtA();Object.defineProperty(kt,"first",{enumerable:!0,get:function(){return LAr.first}});var jAr=HtA();Object.defineProperty(kt,"groupBy",{enumerable:!0,get:function(){return jAr.groupBy}});var WAr=yR();Object.defineProperty(kt,"ignoreElements",{enumerable:!0,get:function(){return WAr.ignoreElements}});var JAr=StA();Object.defineProperty(kt,"isEmpty",{enumerable:!0,get:function(){return JAr.isEmpty}});var qAr=FtA();Object.defineProperty(kt,"last",{enumerable:!0,get:function(){return qAr.last}});var VAr=I4();Object.defineProperty(kt,"map",{enumerable:!0,get:function(){return VAr.map}});var zAr=IR();Object.defineProperty(kt,"mapTo",{enumerable:!0,get:function(){return zAr.mapTo}});var KAr=TtA();Object.defineProperty(kt,"materialize",{enumerable:!0,get:function(){return KAr.materialize}});var XAr=NtA();Object.defineProperty(kt,"max",{enumerable:!0,get:function(){return XAr.max}});var ZAr=UtA();Object.defineProperty(kt,"merge",{enumerable:!0,get:function(){return ZAr.merge}});var $Ar=ob();Object.defineProperty(kt,"mergeAll",{enumerable:!0,get:function(){return $Ar.mergeAll}});var Aer=PtA();Object.defineProperty(kt,"flatMap",{enumerable:!0,get:function(){return Aer.flatMap}});var eer=qm();Object.defineProperty(kt,"mergeMap",{enumerable:!0,get:function(){return eer.mergeMap}});var rer=GtA();Object.defineProperty(kt,"mergeMapTo",{enumerable:!0,get:function(){return rer.mergeMapTo}});var ter=YtA();Object.defineProperty(kt,"mergeScan",{enumerable:!0,get:function(){return ter.mergeScan}});var ier=LtA();Object.defineProperty(kt,"mergeWith",{enumerable:!0,get:function(){return ier.mergeWith}});var ner=jtA();Object.defineProperty(kt,"min",{enumerable:!0,get:function(){return ner.min}});var aer=R6();Object.defineProperty(kt,"multicast",{enumerable:!0,get:function(){return aer.multicast}});var oer=ib();Object.defineProperty(kt,"observeOn",{enumerable:!0,get:function(){return oer.observeOn}});var ser=WtA();Object.defineProperty(kt,"onErrorResumeNext",{enumerable:!0,get:function(){return ser.onErrorResumeNext}});var cer=JtA();Object.defineProperty(kt,"pairwise",{enumerable:!0,get:function(){return cer.pairwise}});var ler=MCA();Object.defineProperty(kt,"partition",{enumerable:!0,get:function(){return ler.partition}});var uer=qtA();Object.defineProperty(kt,"pluck",{enumerable:!0,get:function(){return uer.pluck}});var ger=VtA();Object.defineProperty(kt,"publish",{enumerable:!0,get:function(){return ger.publish}});var der=ztA();Object.defineProperty(kt,"publishBehavior",{enumerable:!0,get:function(){return der.publishBehavior}});var per=KtA();Object.defineProperty(kt,"publishLast",{enumerable:!0,get:function(){return per.publishLast}});var Eer=XtA();Object.defineProperty(kt,"publishReplay",{enumerable:!0,get:function(){return Eer.publishReplay}});var fer=kCA();Object.defineProperty(kt,"race",{enumerable:!0,get:function(){return fer.race}});var Ber=gT();Object.defineProperty(kt,"raceWith",{enumerable:!0,get:function(){return Ber.raceWith}});var her=By();Object.defineProperty(kt,"reduce",{enumerable:!0,get:function(){return her.reduce}});var Qer=ZtA();Object.defineProperty(kt,"repeat",{enumerable:!0,get:function(){return Qer.repeat}});var mer=$tA();Object.defineProperty(kt,"repeatWhen",{enumerable:!0,get:function(){return mer.repeatWhen}});var Der=AiA();Object.defineProperty(kt,"retry",{enumerable:!0,get:function(){return Der.retry}});var _er=eiA();Object.defineProperty(kt,"retryWhen",{enumerable:!0,get:function(){return _er.retryWhen}});var wer=NS();Object.defineProperty(kt,"refCount",{enumerable:!0,get:function(){return wer.refCount}});var ver=hT();Object.defineProperty(kt,"sample",{enumerable:!0,get:function(){return ver.sample}});var yer=riA();Object.defineProperty(kt,"sampleTime",{enumerable:!0,get:function(){return yer.sampleTime}});var Cer=tiA();Object.defineProperty(kt,"scan",{enumerable:!0,get:function(){return Cer.scan}});var Ier=iiA();Object.defineProperty(kt,"sequenceEqual",{enumerable:!0,get:function(){return Ier.sequenceEqual}});var ber=_T();Object.defineProperty(kt,"share",{enumerable:!0,get:function(){return ber.share}});var Oer=aiA();Object.defineProperty(kt,"shareReplay",{enumerable:!0,get:function(){return Oer.shareReplay}});var Mer=oiA();Object.defineProperty(kt,"single",{enumerable:!0,get:function(){return Mer.single}});var ker=siA();Object.defineProperty(kt,"skip",{enumerable:!0,get:function(){return ker.skip}});var xer=ciA();Object.defineProperty(kt,"skipLast",{enumerable:!0,get:function(){return xer.skipLast}});var Her=liA();Object.defineProperty(kt,"skipUntil",{enumerable:!0,get:function(){return Her.skipUntil}});var Ser=uiA();Object.defineProperty(kt,"skipWhile",{enumerable:!0,get:function(){return Ser.skipWhile}});var Fer=giA();Object.defineProperty(kt,"startWith",{enumerable:!0,get:function(){return Fer.startWith}});var Rer=nb();Object.defineProperty(kt,"subscribeOn",{enumerable:!0,get:function(){return Rer.subscribeOn}});var Ter=diA();Object.defineProperty(kt,"switchAll",{enumerable:!0,get:function(){return Ter.switchAll}});var Ner=Qb();Object.defineProperty(kt,"switchMap",{enumerable:!0,get:function(){return Ner.switchMap}});var Per=piA();Object.defineProperty(kt,"switchMapTo",{enumerable:!0,get:function(){return Per.switchMapTo}});var Ger=EiA();Object.defineProperty(kt,"switchScan",{enumerable:!0,get:function(){return Ger.switchScan}});var Yer=Eb();Object.defineProperty(kt,"take",{enumerable:!0,get:function(){return Yer.take}});var Uer=XR();Object.defineProperty(kt,"takeLast",{enumerable:!0,get:function(){return Uer.takeLast}});var Ler=fiA();Object.defineProperty(kt,"takeUntil",{enumerable:!0,get:function(){return Ler.takeUntil}});var jer=BiA();Object.defineProperty(kt,"takeWhile",{enumerable:!0,get:function(){return jer.takeWhile}});var Wer=hiA();Object.defineProperty(kt,"tap",{enumerable:!0,get:function(){return Wer.tap}});var Jer=NT();Object.defineProperty(kt,"throttle",{enumerable:!0,get:function(){return Jer.throttle}});var qer=QiA();Object.defineProperty(kt,"throttleTime",{enumerable:!0,get:function(){return qer.throttleTime}});var Ver=fb();Object.defineProperty(kt,"throwIfEmpty",{enumerable:!0,get:function(){return Ver.throwIfEmpty}});var zer=miA();Object.defineProperty(kt,"timeInterval",{enumerable:!0,get:function(){return zer.timeInterval}});var Ker=k6();Object.defineProperty(kt,"timeout",{enumerable:!0,get:function(){return Ker.timeout}});var Xer=DiA();Object.defineProperty(kt,"timeoutWith",{enumerable:!0,get:function(){return Xer.timeoutWith}});var Zer=_iA();Object.defineProperty(kt,"timestamp",{enumerable:!0,get:function(){return Zer.timestamp}});var $er=cR();Object.defineProperty(kt,"toArray",{enumerable:!0,get:function(){return $er.toArray}});var Arr=wiA();Object.defineProperty(kt,"window",{enumerable:!0,get:function(){return Arr.window}});var rrr=viA();Object.defineProperty(kt,"windowCount",{enumerable:!0,get:function(){return rrr.windowCount}});var trr=yiA();Object.defineProperty(kt,"windowTime",{enumerable:!0,get:function(){return trr.windowTime}});var irr=IiA();Object.defineProperty(kt,"windowToggle",{enumerable:!0,get:function(){return irr.windowToggle}});var nrr=biA();Object.defineProperty(kt,"windowWhen",{enumerable:!0,get:function(){return nrr.windowWhen}});var arr=OiA();Object.defineProperty(kt,"withLatestFrom",{enumerable:!0,get:function(){return arr.withLatestFrom}});var orr=kiA();Object.defineProperty(kt,"zip",{enumerable:!0,get:function(){return orr.zip}});var srr=MiA();Object.defineProperty(kt,"zipAll",{enumerable:!0,get:function(){return srr.zipAll}});var crr=xiA();Object.defineProperty(kt,"zipWith",{enumerable:!0,get:function(){return crr.zipWith}})});var HCA=GA(qT=>{"use strict";Object.defineProperty(qT,"__esModule",{value:!0});qT.ConsoleTelemetryExporter=void 0;var HiA=class{exportEvents(r){return r.forEach(t=>{console.log("export event",{e:t})}),Promise.resolve()}};qT.ConsoleTelemetryExporter=HiA});var SCA=GA(VT=>{"use strict";Object.defineProperty(VT,"__esModule",{value:!0});VT.TestTelemetryExporter=void 0;var SiA=class{constructor(){this.events=[]}exportEvents(r){return this.events.push(...r),Promise.resolve()}getExported(){return this.events}};VT.TestTelemetryExporter=SiA});var RCA=GA(zm=>{"use strict";var lrr=zm&&zm.__createBinding||(Object.create?function(A,r,t,i){i===void 0&&(i=t),Object.defineProperty(A,i,{enumerable:!0,get:function(){return r[t]}})}:function(A,r,t,i){i===void 0&&(i=t),A[i]=r[t]}),FCA=zm&&zm.__exportStar||function(A,r){for(var t in A)t!=="default"&&!Object.prototype.hasOwnProperty.call(r,t)&&lrr(r,A,t)};Object.defineProperty(zm,"__esModule",{value:!0});zm.NoOpTelemetryExporter=void 0;FCA(HCA(),zm);FCA(SCA(),zm);var FiA=class{exportEvents(r){return Promise.resolve()}};zm.NoOpTelemetryExporter=FiA});var TCA=GA(zT=>{"use strict";Object.defineProperty(zT,"__esModule",{value:!0});zT.BillingMetadataTelemetryProcessor=void 0;var RiA=class{constructor(r){this.billingMetadata=r}processEvent(r){r.parameters.billingMetadata||(r.parameters.billingMetadata=this.billingMetadata)}};zT.BillingMetadataTelemetryProcessor=RiA});var NCA=GA(KT=>{"use strict";Object.defineProperty(KT,"__esModule",{value:!0});KT.CallbackTelemetryProcessor=void 0;var TiA=class{constructor(r){this.callback=r}processEvent(r){this.callback(Object.assign({},r))}};KT.CallbackTelemetryProcessor=TiA});var PCA=GA(XT=>{"use strict";Object.defineProperty(XT,"__esModule",{value:!0});XT.MarketingTrackingTelemetryProcessor=void 0;var NiA=class{constructor(r){this.provider=r}processEvent(r){r.marketingTracking=this.provider.getMarketingTrackingMetadata()||void 0}};XT.MarketingTrackingTelemetryProcessor=NiA});var GCA=GA(O4=>{"use strict";var urr=O4&&O4.__createBinding||(Object.create?function(A,r,t,i){i===void 0&&(i=t),Object.defineProperty(A,i,{enumerable:!0,get:function(){return r[t]}})}:function(A,r,t,i){i===void 0&&(i=t),A[i]=r[t]}),PiA=O4&&O4.__exportStar||function(A,r){for(var t in A)t!=="default"&&!Object.prototype.hasOwnProperty.call(r,t)&&urr(r,A,t)};Object.defineProperty(O4,"__esModule",{value:!0});PiA(TCA(),O4);PiA(NCA(),O4);PiA(PCA(),O4)});var UCA=GA(YCA=>{"use strict";Object.defineProperty(YCA,"__esModule",{value:!0})});var $T=GA($B=>{"use strict";var grr=$B&&$B.__createBinding||(Object.create?function(A,r,t,i){i===void 0&&(i=t),Object.defineProperty(A,i,{enumerable:!0,get:function(){return r[t]}})}:function(A,r,t,i){i===void 0&&(i=t),A[i]=r[t]}),WiA=$B&&$B.__exportStar||function(A,r){for(var t in A)t!=="default"&&!Object.prototype.hasOwnProperty.call(r,t)&&grr(r,A,t)};Object.defineProperty($B,"__esModule",{value:!0});$B.TelemetryRecorderProvider=$B.defaultEventRecordingOptions=void 0;var GiA=bCA(),ZT=xCA();WiA(RCA(),$B);WiA(GCA(),$B);WiA(UCA(),$B);$B.defaultEventRecordingOptions={bufferTimeMs:0,bufferMaxSize:10,errorHandler:A=>{console.error("@sourcegraph/telemetry:",A)}};var YiA=class{constructor(r,t,i=[],o=$B.defaultEventRecordingOptions){this.source=r,this.processors=i,this.submitter=o.bufferTimeMs==0||o.bufferMaxSize==0?new UiA(t,o):new LiA(t,o)}getRecorder(r){return new jiA(this.source,this.submitter,r?this.processors.concat(r):this.processors)}unsubscribe(){this.submitter.unsubscribe()}};$B.TelemetryRecorderProvider=YiA;var UiA=class{constructor(r,t){this.exporter=r,this.options=t}submit(r){this.exporter.exportEvents([r]).catch(t=>this.options.errorHandler(t)).then(()=>{})}unsubscribe(){}},LiA=class{constructor(r,t){this.exporter=r,this.options=t,this.events=new GiA.Subject,this.completeEvents=new GiA.Subject,this.events.pipe((0,ZT.takeUntil)(this.completeEvents),(0,ZT.bufferTime)(t.bufferTimeMs,null,t.bufferMaxSize),(0,ZT.concatMap)(i=>i.length>0?r.exportEvents(i):GiA.EMPTY),(0,ZT.catchError)(i=>(t.errorHandler(i),[]))).subscribe()}submit(r){this.events.closed?this.exporter.exportEvents([r]).catch(t=>this.options.errorHandler(t)).then(()=>this.options.errorHandler("submitted event after complete")):this.events.next(r)}unsubscribe(){this.completeEvents.next(),this.events.complete(),this.events.unsubscribe()}},jiA=class{constructor(r,t,i=[]){this.source=r,this.submitter=t,this.processors=i}recordEvent(r,t,i){let o={feature:r,action:t,source:this.source,parameters:i?{version:i.version||0,metadata:i.metadata?Object.entries(i.metadata).map(([s,g])=>({key:s,value:g||0})):void 0,privateMetadata:i.privateMetadata,billingMetadata:i.billingMetadata}:{version:0}};for(let s of this.processors)s.processEvent(o);this.submitter.submit(o)}}});var zIA=GA((oVt,VIA)=>{var qIA=require("stream").Stream,Ntr=require("util");VIA.exports=R0;function R0(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}Ntr.inherits(R0,qIA);R0.create=function(A,r){var t=new this;r=r||{};for(var i in r)t[i]=r[i];t.source=A;var o=A.emit;return A.emit=function(){return t._handleEmit(arguments),o.apply(A,arguments)},A.on("error",function(){}),t.pauseStream&&A.pause(),t};Object.defineProperty(R0.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});R0.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};R0.prototype.resume=function(){this._released||this.release(),this.source.resume()};R0.prototype.pause=function(){this.source.pause()};R0.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(A){this.emit.apply(this,A)}.bind(this)),this._bufferedEvents=[]};R0.prototype.pipe=function(){var A=qIA.prototype.pipe.apply(this,arguments);return this.resume(),A};R0.prototype._handleEmit=function(A){if(this._released){this.emit.apply(this,A);return}A[0]==="data"&&(this.dataSize+=A[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(A)};R0.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var A="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(A))}}});var $IA=GA((sVt,ZIA)=>{var Ptr=require("util"),XIA=require("stream").Stream,KIA=zIA();ZIA.exports=zg;function zg(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2*1024*1024,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}Ptr.inherits(zg,XIA);zg.create=function(A){var r=new this;A=A||{};for(var t in A)r[t]=A[t];return r};zg.isStreamLike=function(A){return typeof A!="function"&&typeof A!="string"&&typeof A!="boolean"&&typeof A!="number"&&!Buffer.isBuffer(A)};zg.prototype.append=function(A){var r=zg.isStreamLike(A);if(r){if(!(A instanceof KIA)){var t=KIA.create(A,{maxDataSize:1/0,pauseStream:this.pauseStreams});A.on("data",this._checkDataSize.bind(this)),A=t}this._handleErrors(A),this.pauseStreams&&A.pause()}return this._streams.push(A),this};zg.prototype.pipe=function(A,r){return XIA.prototype.pipe.call(this,A,r),this.resume(),A};zg.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}};zg.prototype._realGetNext=function(){var A=this._streams.shift();if(typeof A>"u"){this.end();return}if(typeof A!="function"){this._pipeNext(A);return}var r=A;r(function(t){var i=zg.isStreamLike(t);i&&(t.on("data",this._checkDataSize.bind(this)),this._handleErrors(t)),this._pipeNext(t)}.bind(this))};zg.prototype._pipeNext=function(A){this._currentStream=A;var r=zg.isStreamLike(A);if(r){A.on("end",this._getNext.bind(this)),A.pipe(this,{end:!1});return}var t=A;this.write(t),this._getNext()};zg.prototype._handleErrors=function(A){var r=this;A.on("error",function(t){r._emitError(t)})};zg.prototype.write=function(A){this.emit("data",A)};zg.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};zg.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&typeof this._currentStream.resume=="function"&&this._currentStream.resume(),this.emit("resume")};zg.prototype.end=function(){this._reset(),this.emit("end")};zg.prototype.destroy=function(){this._reset(),this.emit("close")};zg.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};zg.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var A="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(A))}};zg.prototype._updateDataSize=function(){this.dataSize=0;var A=this;this._streams.forEach(function(r){r.dataSize&&(A.dataSize+=r.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};zg.prototype._emitError=function(A){this._reset(),this.emit("error",A)}});var AbA=GA((cVt,Gtr)=>{Gtr.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var rbA=GA((lVt,ebA)=>{ebA.exports=AbA()});var nbA=GA(Ah=>{"use strict";var bN=rbA(),Ytr=require("path").extname,tbA=/^\s*([^;\s]*)(?:;|\s|$)/,Utr=/^text\//i;Ah.charset=ibA;Ah.charsets={lookup:ibA};Ah.contentType=Ltr;Ah.extension=jtr;Ah.extensions=Object.create(null);Ah.lookup=Wtr;Ah.types=Object.create(null);Jtr(Ah.extensions,Ah.types);function ibA(A){if(!A||typeof A!="string")return!1;var r=tbA.exec(A),t=r&&bN[r[1].toLowerCase()];return t&&t.charset?t.charset:r&&Utr.test(r[1])?"UTF-8":!1}function Ltr(A){if(!A||typeof A!="string")return!1;var r=A.indexOf("/")===-1?Ah.lookup(A):A;if(!r)return!1;if(r.indexOf("charset")===-1){var t=Ah.charset(r);t&&(r+="; charset="+t.toLowerCase())}return r}function jtr(A){if(!A||typeof A!="string")return!1;var r=tbA.exec(A),t=r&&Ah.extensions[r[1].toLowerCase()];return!t||!t.length?!1:t[0]}function Wtr(A){if(!A||typeof A!="string")return!1;var r=Ytr("x."+A).toLowerCase().substr(1);return r&&Ah.types[r]||!1}function Jtr(A,r){var t=["nginx","apache",void 0,"iana"];Object.keys(bN).forEach(function(o){var s=bN[o],g=s.extensions;if(!(!g||!g.length)){A[o]=g;for(var E=0;Em||B===m&&r[p].substr(0,12)==="application/"))continue}r[p]=o}}})}});var obA=GA((gVt,abA)=>{abA.exports=qtr;function qtr(A){var r=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;r?r(A):setTimeout(A,0)}});var dnA=GA((dVt,cbA)=>{var sbA=obA();cbA.exports=Vtr;function Vtr(A){var r=!1;return sbA(function(){r=!0}),function(i,o){r?A(i,o):sbA(function(){A(i,o)})}}});var pnA=GA((pVt,lbA)=>{lbA.exports=ztr;function ztr(A){Object.keys(A.jobs).forEach(Ktr.bind(A)),A.jobs={}}function Ktr(A){typeof this.jobs[A]=="function"&&this.jobs[A]()}});var EnA=GA((EVt,gbA)=>{var ubA=dnA(),Xtr=pnA();gbA.exports=Ztr;function Ztr(A,r,t,i){var o=t.keyedList?t.keyedList[t.index]:t.index;t.jobs[o]=$tr(r,o,A[o],function(s,g){o in t.jobs&&(delete t.jobs[o],s?Xtr(t):t.results[o]=g,i(s,t.results))})}function $tr(A,r,t,i){var o;return A.length==2?o=A(t,ubA(i)):o=A(t,r,ubA(i)),o}});var fnA=GA((fVt,dbA)=>{dbA.exports=Air;function Air(A,r){var t=!Array.isArray(A),i={index:0,keyedList:t||r?Object.keys(A):null,jobs:{},results:t?{}:[],size:t?Object.keys(A).length:A.length};return r&&i.keyedList.sort(t?r:function(o,s){return r(A[o],A[s])}),i}});var BnA=GA((BVt,pbA)=>{var eir=pnA(),rir=dnA();pbA.exports=tir;function tir(A){Object.keys(this.jobs).length&&(this.index=this.size,eir(this),rir(A)(null,this.results))}});var fbA=GA((hVt,EbA)=>{var iir=EnA(),nir=fnA(),air=BnA();EbA.exports=oir;function oir(A,r,t){for(var i=nir(A);i.index<(i.keyedList||A).length;)iir(A,r,i,function(o,s){if(o){t(o,s);return}if(Object.keys(i.jobs).length===0){t(null,i.results);return}}),i.index++;return air.bind(i,t)}});var hnA=GA((QVt,ON)=>{var BbA=EnA(),sir=fnA(),cir=BnA();ON.exports=lir;ON.exports.ascending=hbA;ON.exports.descending=uir;function lir(A,r,t,i){var o=sir(A,t);return BbA(A,r,o,function s(g,E){if(g){i(g,E);return}if(o.index++,o.index<(o.keyedList||A).length){BbA(A,r,o,s);return}i(null,o.results)}),cir.bind(o,i)}function hbA(A,r){return Ar?1:0}function uir(A,r){return-1*hbA(A,r)}});var mbA=GA((mVt,QbA)=>{var gir=hnA();QbA.exports=dir;function dir(A,r,t){return gir(A,r,null,t)}});var _bA=GA((DVt,DbA)=>{DbA.exports={parallel:fbA(),serial:mbA(),serialOrdered:hnA()}});var vbA=GA((_Vt,wbA)=>{wbA.exports=function(A,r){return Object.keys(r).forEach(function(t){A[t]=A[t]||r[t]}),A}});var IbA=GA((wVt,CbA)=>{var _nA=$IA(),ybA=require("util"),QnA=require("path"),pir=require("http"),Eir=require("https"),fir=require("url").parse,Bir=require("fs"),hir=require("stream").Stream,mnA=nbA(),Qir=_bA(),DnA=vbA();CbA.exports=Uc;ybA.inherits(Uc,_nA);function Uc(A){if(!(this instanceof Uc))return new Uc(A);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],_nA.call(this),A=A||{};for(var r in A)this[r]=A[r]}Uc.LINE_BREAK=`\r -`;Uc.DEFAULT_CONTENT_TYPE="application/octet-stream";Uc.prototype.append=function(A,r,t){t=t||{},typeof t=="string"&&(t={filename:t});var i=_nA.prototype.append.bind(this);if(typeof r=="number"&&(r=""+r),ybA.isArray(r)){this._error(new Error("Arrays are not supported."));return}var o=this._multiPartHeader(A,r,t),s=this._multiPartFooter();i(o),i(r),i(s),this._trackLength(o,r,t)};Uc.prototype._trackLength=function(A,r,t){var i=0;t.knownLength!=null?i+=+t.knownLength:Buffer.isBuffer(r)?i=r.length:typeof r=="string"&&(i=Buffer.byteLength(r)),this._valueLength+=i,this._overheadLength+=Buffer.byteLength(A)+Uc.LINE_BREAK.length,!(!r||!r.path&&!(r.readable&&r.hasOwnProperty("httpVersion"))&&!(r instanceof hir))&&(t.knownLength||this._valuesToMeasure.push(r))};Uc.prototype._lengthRetriever=function(A,r){A.hasOwnProperty("fd")?A.end!=null&&A.end!=1/0&&A.start!=null?r(null,A.end+1-(A.start?A.start:0)):Bir.stat(A.path,function(t,i){var o;if(t){r(t);return}o=i.size-(A.start?A.start:0),r(null,o)}):A.hasOwnProperty("httpVersion")?r(null,+A.headers["content-length"]):A.hasOwnProperty("httpModule")?(A.on("response",function(t){A.pause(),r(null,+t.headers["content-length"])}),A.resume()):r("Unknown stream")};Uc.prototype._multiPartHeader=function(A,r,t){if(typeof t.header=="string")return t.header;var i=this._getContentDisposition(r,t),o=this._getContentType(r,t),s="",g={"Content-Disposition":["form-data",'name="'+A+'"'].concat(i||[]),"Content-Type":[].concat(o||[])};typeof t.header=="object"&&DnA(g,t.header);var E;for(var p in g)g.hasOwnProperty(p)&&(E=g[p],E!=null&&(Array.isArray(E)||(E=[E]),E.length&&(s+=p+": "+E.join("; ")+Uc.LINE_BREAK)));return"--"+this.getBoundary()+Uc.LINE_BREAK+s+Uc.LINE_BREAK};Uc.prototype._getContentDisposition=function(A,r){var t,i;return typeof r.filepath=="string"?t=QnA.normalize(r.filepath).replace(/\\/g,"/"):r.filename||A.name||A.path?t=QnA.basename(r.filename||A.name||A.path):A.readable&&A.hasOwnProperty("httpVersion")&&(t=QnA.basename(A.client._httpMessage.path||"")),t&&(i='filename="'+t+'"'),i};Uc.prototype._getContentType=function(A,r){var t=r.contentType;return!t&&A.name&&(t=mnA.lookup(A.name)),!t&&A.path&&(t=mnA.lookup(A.path)),!t&&A.readable&&A.hasOwnProperty("httpVersion")&&(t=A.headers["content-type"]),!t&&(r.filepath||r.filename)&&(t=mnA.lookup(r.filepath||r.filename)),!t&&typeof A=="object"&&(t=Uc.DEFAULT_CONTENT_TYPE),t};Uc.prototype._multiPartFooter=function(){return function(A){var r=Uc.LINE_BREAK,t=this._streams.length===0;t&&(r+=this._lastBoundary()),A(r)}.bind(this)};Uc.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+Uc.LINE_BREAK};Uc.prototype.getHeaders=function(A){var r,t={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(r in A)A.hasOwnProperty(r)&&(t[r.toLowerCase()]=A[r]);return t};Uc.prototype.setBoundary=function(A){this._boundary=A};Uc.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};Uc.prototype.getBuffer=function(){for(var A=new Buffer.alloc(0),r=this.getBoundary(),t=0,i=this._streams.length;t{"use strict";var Sir=require("url").parse,Fir={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},Rir=String.prototype.endsWith||function(A){return A.length<=this.length&&this.indexOf(A,this.length-A.length)!==-1};function Tir(A){var r=typeof A=="string"?Sir(A):A||{},t=r.protocol,i=r.host,o=r.port;if(typeof i!="string"||!i||typeof t!="string"||(t=t.split(":",1)[0],i=i.replace(/:\d*$/,""),o=parseInt(o)||Fir[t]||0,!Nir(i,o)))return"";var s=kb("npm_config_"+t+"_proxy")||kb(t+"_proxy")||kb("npm_config_proxy")||kb("all_proxy");return s&&s.indexOf("://")===-1&&(s=t+"://"+s),s}function Nir(A,r){var t=(kb("npm_config_no_proxy")||kb("no_proxy")).toLowerCase();return t?t==="*"?!1:t.split(/[,\s]/).every(function(i){if(!i)return!0;var o=i.match(/^(.+):(\d+)$/),s=o?o[1]:i,g=o?parseInt(o[2]):0;return g&&g!==r?!0:/^[.*]/.test(s)?(s.charAt(0)==="*"&&(s=s.slice(1)),!Rir.call(A,s)):A!==s}):!0}function kb(A){return process.env[A.toLowerCase()]||process.env[A.toUpperCase()]||""}GbA.getProxyForUrl=Tir});var LbA=GA((vzt,UbA)=>{var W6;UbA.exports=function(){if(!W6){try{W6=require("debug")("follow-redirects")}catch{}typeof W6!="function"&&(W6=function(){})}W6.apply(null,arguments)}});var KbA=GA((yzt,SnA)=>{var vy=require("url"),MnA=vy.URL,Pir=require("http"),Gir=require("https"),JbA=require("stream").Writable,Yir=require("assert"),qbA=LbA(),xnA=["abort","aborted","connect","error","socket","timeout"],HnA=Object.create(null);xnA.forEach(function(A){HnA[A]=function(r,t,i){this._redirectable.emit(A,r,t,i)}});var jbA=SN("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),Uir=SN("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded"),Lir=SN("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),jir=SN("ERR_STREAM_WRITE_AFTER_END","write after end");function Gh(A,r){JbA.call(this),this._sanitizeOptions(A),this._options=A,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],r&&this.on("response",r);var t=this;this._onNativeResponse=function(i){t._processResponse(i)},this._performRequest()}Gh.prototype=Object.create(JbA.prototype);Gh.prototype.abort=function(){zbA(this._currentRequest),this.emit("abort")};Gh.prototype.write=function(A,r,t){if(this._ending)throw new jir;if(!(typeof A=="string"||typeof A=="object"&&"length"in A))throw new TypeError("data should be a string, Buffer or Uint8Array");if(typeof r=="function"&&(t=r,r=null),A.length===0){t&&t();return}this._requestBodyLength+A.length<=this._options.maxBodyLength?(this._requestBodyLength+=A.length,this._requestBodyBuffers.push({data:A,encoding:r}),this._currentRequest.write(A,r,t)):(this.emit("error",new Lir),this.abort())};Gh.prototype.end=function(A,r,t){if(typeof A=="function"?(t=A,A=r=null):typeof r=="function"&&(t=r,r=null),!A)this._ended=this._ending=!0,this._currentRequest.end(null,null,t);else{var i=this,o=this._currentRequest;this.write(A,r,function(){i._ended=!0,o.end(null,null,t)}),this._ending=!0}};Gh.prototype.setHeader=function(A,r){this._options.headers[A]=r,this._currentRequest.setHeader(A,r)};Gh.prototype.removeHeader=function(A){delete this._options.headers[A],this._currentRequest.removeHeader(A)};Gh.prototype.setTimeout=function(A,r){var t=this;function i(g){g.setTimeout(A),g.removeListener("timeout",g.destroy),g.addListener("timeout",g.destroy)}function o(g){t._timeout&&clearTimeout(t._timeout),t._timeout=setTimeout(function(){t.emit("timeout"),s()},A),i(g)}function s(){t._timeout&&(clearTimeout(t._timeout),t._timeout=null),t.removeListener("abort",s),t.removeListener("error",s),t.removeListener("response",s),r&&t.removeListener("timeout",r),t.socket||t._currentRequest.removeListener("socket",o)}return r&&this.on("timeout",r),this.socket?o(this.socket):this._currentRequest.once("socket",o),this.on("socket",i),this.on("abort",s),this.on("error",s),this.on("response",s),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(A){Gh.prototype[A]=function(r,t){return this._currentRequest[A](r,t)}});["aborted","connection","socket"].forEach(function(A){Object.defineProperty(Gh.prototype,A,{get:function(){return this._currentRequest[A]}})});Gh.prototype._sanitizeOptions=function(A){if(A.headers||(A.headers={}),A.host&&(A.hostname||(A.hostname=A.host),delete A.host),!A.pathname&&A.path){var r=A.path.indexOf("?");r<0?A.pathname=A.path:(A.pathname=A.path.substring(0,r),A.search=A.path.substring(r))}};Gh.prototype._performRequest=function(){var A=this._options.protocol,r=this._options.nativeProtocols[A];if(!r){this.emit("error",new TypeError("Unsupported protocol "+A));return}if(this._options.agents){var t=A.slice(0,-1);this._options.agent=this._options.agents[t]}var i=this._currentRequest=r.request(this._options,this._onNativeResponse);i._redirectable=this;for(var o of xnA)i.on(o,HnA[o]);if(this._currentUrl=/^\//.test(this._options.path)?vy.format(this._options):this._currentUrl=this._options.path,this._isRedirect){var s=0,g=this,E=this._requestBodyBuffers;(function p(B){if(i===g._currentRequest)if(B)g.emit("error",B);else if(s=400){A.responseUrl=this._currentUrl,A.redirects=this._redirects,this.emit("response",A),this._requestBodyBuffers=[];return}if(zbA(this._currentRequest),A.destroy(),++this._redirectCount>this._options.maxRedirects){this.emit("error",new Uir);return}var i,o=this._options.beforeRedirect;o&&(i=Object.assign({Host:A.req.getHeader("host")},this._options.headers));var s=this._options.method;((r===301||r===302)&&this._options.method==="POST"||r===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],knA(/^content-/i,this._options.headers));var g=knA(/^host$/i,this._options.headers),E=vy.parse(this._currentUrl),p=g||E.host,B=/^\w+:/.test(t)?this._currentUrl:vy.format(Object.assign(E,{host:p})),m;try{m=vy.resolve(B,t)}catch(k){this.emit("error",new jbA(k));return}qbA("redirecting to",m),this._isRedirect=!0;var _=vy.parse(m);if(Object.assign(this._options,_),(_.protocol!==E.protocol&&_.protocol!=="https:"||_.host!==p&&!Jir(_.host,p))&&knA(/^(?:authorization|cookie)$/i,this._options.headers),typeof o=="function"){var x={headers:A.headers,statusCode:r},O={url:B,method:s,headers:i};try{o(this._options,x,O)}catch(k){this.emit("error",k);return}this._sanitizeOptions(this._options)}try{this._performRequest()}catch(k){this.emit("error",new jbA(k))}};function VbA(A){var r={maxRedirects:21,maxBodyLength:10485760},t={};return Object.keys(A).forEach(function(i){var o=i+":",s=t[o]=A[i],g=r[i]=Object.create(s);function E(B,m,_){if(typeof B=="string"){var x=B;try{B=WbA(new MnA(x))}catch{B=vy.parse(x)}}else MnA&&B instanceof MnA?B=WbA(B):(_=m,m=B,B={protocol:o});return typeof m=="function"&&(_=m,m=null),m=Object.assign({maxRedirects:r.maxRedirects,maxBodyLength:r.maxBodyLength},B,m),m.nativeProtocols=t,Yir.equal(m.protocol,o,"protocol mismatch"),qbA("options",m),new Gh(m,_)}function p(B,m,_){var x=g.request(B,m,_);return x.end(),x}Object.defineProperties(g,{request:{value:E,configurable:!0,enumerable:!0,writable:!0},get:{value:p,configurable:!0,enumerable:!0,writable:!0}})}),r}function Wir(){}function WbA(A){var r={protocol:A.protocol,hostname:A.hostname.startsWith("[")?A.hostname.slice(1,-1):A.hostname,hash:A.hash,search:A.search,pathname:A.pathname,path:A.pathname+A.search,href:A.href};return A.port!==""&&(r.port=Number(A.port)),r}function knA(A,r){var t;for(var i in r)A.test(i)&&(t=r[i],delete r[i]);return t===null||typeof t>"u"?void 0:String(t).trim()}function SN(A,r){function t(i){Error.captureStackTrace(this,this.constructor),i?(this.message=r+": "+i.message,this.cause=i):this.message=r}return t.prototype=new Error,t.prototype.constructor=t,t.prototype.name="Error ["+A+"]",t.prototype.code=A,t}function zbA(A){for(var r of xnA)A.removeListener(r,HnA[r]);A.on("error",Wir),A.abort()}function Jir(A,r){let t=A.length-r.length-1;return t>0&&A[t]==="."&&A.endsWith(r)}SnA.exports=VbA({http:Pir,https:Gir});SnA.exports.wrap=VbA});var I5A=GA((NXt,C5A)=>{"use strict";var JnA=require("events").listenerCount;JnA=JnA||function(A,r){var t=A&&A._events&&A._events[r];return Array.isArray(t)?t.length:typeof t=="function"?1:0};C5A.exports=JnA});var O5A=GA((PXt,b5A)=>{b5A.exports=function(r){var t=process&&process.version?process.version:"v5.0.0",i=t.split(".")[0].replace("v","");return i<6?new Buffer(r):Buffer.from(r)}});var k5A=GA(()=>{"use strict";var z6=O5A();Buffer.prototype.indexOf||(Buffer.prototype.indexOf=function(A,r){r=r||0,typeof A=="string"||A instanceof String?A=z6(A):(typeof A=="number"||A instanceof Number)&&(A=z6([A]));for(var t=A.length,i=r;i<=this.length-t;i++){for(var o=!1,s=0;s=0;i--){for(var o=!1,s=0;s{(function(A,r){"use strict";if(A.setImmediate)return;var t=1,i={},o=!1,s=A.document,g;function E(v){typeof v!="function"&&(v=new Function(""+v));for(var F=new Array(arguments.length-1),y=0;y"u"?typeof global>"u"?x5A:global:self)});var T5A=GA((LXt,R5A)=>{R5A.exports=Cf;function Cf(A){if(!(this instanceof Cf))return new Cf(A);this.value=A}Cf.prototype.get=function(A){for(var r=this.value,t=0;t{var lnr=T5A(),unr=require("events").EventEmitter;N5A.exports=Sb;function Sb(A){var r=Sb.saw(A,{}),t=A.call(r.handlers,r);return t!==void 0&&(r.handlers=t),r.record(),r.chain()}Sb.light=function(r){var t=Sb.saw(r,{}),i=r.call(t.handlers,t);return i!==void 0&&(t.handlers=i),t.chain()};Sb.saw=function(A,r){var t=new unr;return t.handlers=r,t.actions=[],t.chain=function(){var i=lnr(t.handlers).map(function(o){if(this.isRoot)return o;var s=this.path;typeof o=="function"&&this.update(function(){return t.actions.push({path:s,args:[].slice.call(arguments)}),i})});return process.nextTick(function(){t.emit("begin"),t.next()}),i},t.pop=function(){return t.actions.shift()},t.next=function(){var i=t.pop();if(!i)t.emit("end");else if(!i.trap){var o=t.handlers;i.path.forEach(function(s){o=o[s]}),o.apply(t.handlers,i.args)}},t.nest=function(i){var o=[].slice.call(arguments,1),s=!0;if(typeof i=="boolean"){var s=i;i=o.shift()}var g=Sb.saw(A,{}),E=A.call(g.handlers,g);E!==void 0&&(g.handlers=E),typeof t.step<"u"&&g.record(),i.apply(g.chain(),o),s!==!1&&g.on("end",t.next)},t.record=function(){gnr(t)},["trap","down","jump"].forEach(function(i){t[i]=function(){throw new Error("To use the trap, down and jump features, please call record() first to start recording actions.")}}),t};function gnr(A){A.step=0,A.pop=function(){return A.actions[A.step++]},A.trap=function(r,t){var i=Array.isArray(r)?r:[r];A.actions.push({path:i,step:A.step,cb:t,trap:!0})},A.down=function(r){var t=(Array.isArray(r)?r:[r]).join("/"),i=A.actions.slice(A.step).map(function(s){return s.trap&&s.step<=A.step?!1:s.path.join("/")==t}).indexOf(!0);i>=0?A.step+=i:A.step=A.actions.length;var o=A.actions[A.step-1];o&&o.trap?(A.step=o.step,o.cb()):A.next()},A.jump=function(r){A.step=r,A.next()}}});var Y5A=GA((WXt,G5A)=>{G5A.exports=cB;function cB(A){if(!(this instanceof cB))return new cB(A);this.buffers=A||[],this.length=this.buffers.reduce(function(r,t){return r+t.length},0)}cB.prototype.push=function(){for(var A=0;A=0?A:this.length-A,o=[].slice.call(arguments,2);r===void 0?r=this.length-i:r>this.length-i&&(r=this.length-i);for(var A=0;A0){var B=i-E;if(B+r0){var O=o.slice();O.unshift(_),O.push(x),t.splice.apply(t,[p,1].concat(O)),p+=O.length,o=[]}else t.splice(p,1,_,x),p+=2}else s.push(t[p].slice(B)),t[p]=t[p].slice(0,B),p++}for(o.length>0&&(t.splice.apply(t,[p,0].concat(o)),p+=o.length);s.lengththis.length&&(r=this.length);for(var i=0,o=0;o=r-A?Math.min(B+(r-A)-g,p):p;t[E].copy(s,g,B,m),g+=m-B}return s};cB.prototype.pos=function(A){if(A<0||A>=this.length)throw new Error("oob");for(var r=A,t=0,i=null;;){if(i=this.buffers[t],r=this.buffers[t].length;)if(i=0,t++,t>=this.buffers.length)return-1;var p=this.buffers[t][i];if(p==A[o]){if(o==0&&(s={i:t,j:i,pos:g}),o++,o==A.length)return s.pos}else o!=0&&(t=s.i,i=s.j,g=s.pos,o=0);i++,g++}};cB.prototype.toBuffer=function(){return this.slice()};cB.prototype.toString=function(A,r,t){return this.slice(r,t).toString(A)}});var L5A=GA((JXt,U5A)=>{U5A.exports=function(A){function r(i,o){var s=t.store,g=i.split(".");g.slice(0,-1).forEach(function(p){s[p]===void 0&&(s[p]={}),s=s[p]});var E=g[g.length-1];return arguments.length==1?s[E]:s[E]=o}var t={get:function(i){return r(i)},set:function(i,o){return r(i,o)},store:A||{}};return t}});var K6=GA((Iy,V5A)=>{var dnr=P5A(),j5A=require("events").EventEmitter,pnr=Y5A(),YN=L5A(),Enr=require("stream").Stream;Iy=V5A.exports=function(A,r){if(Buffer.isBuffer(A))return Iy.parse(A);var t=Iy.stream();return A&&A.pipe?A.pipe(t):A&&(A.on(r||"data",function(i){t.write(i)}),A.on("end",function(){t.end()})),t};Iy.stream=function(A){if(A)return Iy.apply(null,arguments);var r=null;function t(_,x,O){r={bytes:_,skip:O,cb:function(k){r=null,x(k)}},o()}var i=null;function o(){if(!r){m&&(B=!0);return}if(typeof r=="function")r();else{var _=i+r.bytes;if(E.length>=_){var x;i==null?(x=E.splice(0,_),r.skip||(x=x.slice())):(r.skip||(x=E.slice(i,_)),i=_),r.skip?r.cb():r.cb(x)}}}function s(_){function x(){B||_.next()}var O=q5A(function(k,P){return function(H){t(k,function(T){p.set(H,P(T)),x()})}});return O.tap=function(k){_.nest(k,p.store)},O.into=function(k,P){p.get(k)||p.set(k,{});var H=p;p=YN(H.get(k)),_.nest(function(){P.apply(this,arguments),this.tap(function(){p=H})},p.store)},O.flush=function(){p.store={},x()},O.loop=function(k){var P=!1;_.nest(!1,function H(){this.vars=p.store,k.call(this,function(){P=!0,x()},p.store),this.tap(function(){P?_.next():H.call(this)}.bind(this))},p.store)},O.buffer=function(k,P){typeof P=="string"&&(P=p.get(P)),t(P,function(H){p.set(k,H),x()})},O.skip=function(k){typeof k=="string"&&(k=p.get(k)),t(k,function(){x()})},O.scan=function(P,H){if(typeof H=="string")H=new Buffer(H);else if(!Buffer.isBuffer(H))throw new Error("search must be a Buffer or a string");var T=0;r=function(){var v=E.indexOf(H,i+T),F=v-i-T;v!==-1?(r=null,i!=null?(p.set(P,E.slice(i,i+T+F)),i+=T+F+H.length):(p.set(P,E.slice(0,T+F)),E.splice(0,T+F+H.length)),x(),o()):F=Math.max(E.length-H.length-i-T,0),T+=F},o()},O.peek=function(k){i=0,_.nest(function(){k.call(this,p.store),this.tap(function(){i=null})})},O}var g=dnr.light(s);g.writable=!0;var E=pnr();g.write=function(_){E.push(_),o()};var p=YN(),B=!1,m=!1;return g.end=function(){m=!0},g.pipe=Enr.prototype.pipe,Object.getOwnPropertyNames(j5A.prototype).forEach(function(_){g[_]=j5A.prototype[_]}),g};Iy.parse=function(r){var t=q5A(function(s,g){return function(E){if(i+s<=r.length){var p=r.slice(i,i+s);i+=s,o.set(E,g(p))}else o.set(E,null);return t}}),i=0,o=YN();return t.vars=o.store,t.tap=function(s){return s.call(t,o.store),t},t.into=function(s,g){o.get(s)||o.set(s,{});var E=o;return o=YN(E.get(s)),g.call(t,o.store),o=E,t},t.loop=function(s){for(var g=!1,E=function(){g=!0};g===!1;)s.call(t,E,o.store);return t},t.buffer=function(s,g){typeof g=="string"&&(g=o.get(g));var E=r.slice(i,Math.min(r.length,i+g));return i+=g,o.set(s,E),t},t.skip=function(s){return typeof s=="string"&&(s=o.get(s)),i+=s,t},t.scan=function(s,g){if(typeof g=="string")g=new Buffer(g);else if(!Buffer.isBuffer(g))throw new Error("search must be a Buffer or a string");o.set(s,null);for(var E=0;E+i<=r.length-g.length+1;E++){for(var p=0;p=r.length},t};function W5A(A){for(var r=0,t=0;t{var qnA=function(){"use strict";return this===void 0}();qnA?znA.exports={freeze:Object.freeze,defineProperty:Object.defineProperty,getDescriptor:Object.getOwnPropertyDescriptor,keys:Object.keys,names:Object.getOwnPropertyNames,getPrototypeOf:Object.getPrototypeOf,isArray:Array.isArray,isES5:qnA,propertyIsWritable:function(A,r){var t=Object.getOwnPropertyDescriptor(A,r);return!!(!t||t.writable||t.set)}}:(z5A={}.hasOwnProperty,K5A={}.toString,X5A={}.constructor.prototype,VnA=function(A){var r=[];for(var t in A)z5A.call(A,t)&&r.push(t);return r},Z5A=function(A,r){return{value:A[r]}},$5A=function(A,r,t){return A[r]=t.value,A},A3A=function(A){return A},e3A=function(A){try{return Object(A).constructor.prototype}catch{return X5A}},r3A=function(A){try{return K5A.call(A)==="[object Array]"}catch{return!1}},znA.exports={isArray:r3A,keys:VnA,names:VnA,defineProperty:$5A,getDescriptor:Z5A,freeze:A3A,getPrototypeOf:e3A,isES5:qnA,propertyIsWritable:function(){return!0}});var z5A,K5A,X5A,VnA,Z5A,$5A,A3A,e3A,r3A});var Qu=GA((exports,module)=>{"use strict";var es5=by(),canEvaluate=typeof navigator>"u",errorObj={e:{}},tryCatchTarget,globalObject=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:exports!==void 0?exports:null;function tryCatcher(){try{var A=tryCatchTarget;return tryCatchTarget=null,A.apply(this,arguments)}catch(r){return errorObj.e=r,errorObj}}function tryCatch(A){return tryCatchTarget=A,tryCatcher}var inherits=function(A,r){var t={}.hasOwnProperty;function i(){this.constructor=A,this.constructor$=r;for(var o in r.prototype)t.call(r.prototype,o)&&o.charAt(o.length-1)!=="$"&&(this[o+"$"]=r.prototype[o])}return i.prototype=r.prototype,A.prototype=new i,A.prototype};function isPrimitive(A){return A==null||A===!0||A===!1||typeof A=="string"||typeof A=="number"}function isObject(A){return typeof A=="function"||typeof A=="object"&&A!==null}function maybeWrapAsError(A){return isPrimitive(A)?new Error(safeToString(A)):A}function withAppended(A,r){var t=A.length,i=new Array(t+1),o;for(o=0;o1,i=r.length>0&&!(r.length===1&&r[0]==="constructor"),o=thisAssignmentPattern.test(A+"")&&es5.names(A).length>0;if(t||i||o)return!0}return!1}catch{return!1}}function toFastProperties(obj){function FakeConstructor(){}FakeConstructor.prototype=obj;for(var l=8;l--;)new FakeConstructor;return obj}var rident=/^[a-z$_][a-z$_0-9]*$/i;function isIdentifier(A){return rident.test(A)}function filledRange(A,r,t){for(var i=new Array(A),o=0;o10||A[0]>0}();ret.isNode&&ret.toFastProperties(process);try{throw new Error}catch(A){ret.lastLineError=A}module.exports=ret});var o3A=GA((VXt,a3A)=>{"use strict";var XnA=Qu(),Oy,hnr=function(){throw new Error(`No async scheduler available - - See http://goo.gl/MqrFmX -`)},KnA=XnA.getNativePromise();XnA.isNode&&typeof MutationObserver>"u"?(t3A=global.setImmediate,i3A=process.nextTick,Oy=XnA.isRecentNode?function(A){t3A.call(global,A)}:function(A){i3A.call(process,A)}):typeof KnA=="function"&&typeof KnA.resolve=="function"?(n3A=KnA.resolve(),Oy=function(A){n3A.then(A)}):typeof MutationObserver<"u"&&!(typeof window<"u"&&window.navigator&&(window.navigator.standalone||window.cordova))?Oy=function(){var A=document.createElement("div"),r={attributes:!0},t=!1,i=document.createElement("div"),o=new MutationObserver(function(){A.classList.toggle("foo"),t=!1});o.observe(i,r);var s=function(){t||(t=!0,i.classList.toggle("foo"))};return function(E){var p=new MutationObserver(function(){p.disconnect(),E()});p.observe(A,r),s()}}():typeof setImmediate<"u"?Oy=function(A){setImmediate(A)}:typeof setTimeout<"u"?Oy=function(A){setTimeout(A,0)}:Oy=hnr;var t3A,i3A,n3A;a3A.exports=Oy});var c3A=GA((zXt,s3A)=>{"use strict";function Qnr(A,r,t,i,o){for(var s=0;s{"use strict";var p3A;try{throw new Error}catch(A){p3A=A}var mnr=o3A(),l3A=c3A(),E3A=Qu();function Kp(){this._customScheduler=!1,this._isTickUsed=!1,this._lateQueue=new l3A(16),this._normalQueue=new l3A(16),this._haveDrainedQueues=!1,this._trampolineEnabled=!0;var A=this;this.drainQueues=function(){A._drainQueues()},this._schedule=mnr}Kp.prototype.setScheduler=function(A){var r=this._schedule;return this._schedule=A,this._customScheduler=!0,r};Kp.prototype.hasCustomScheduler=function(){return this._customScheduler};Kp.prototype.enableTrampoline=function(){this._trampolineEnabled=!0};Kp.prototype.disableTrampolineIfNecessary=function(){E3A.hasDevTools&&(this._trampolineEnabled=!1)};Kp.prototype.haveItemsQueued=function(){return this._isTickUsed||this._haveDrainedQueues};Kp.prototype.fatalError=function(A,r){r?(process.stderr.write("Fatal "+(A instanceof Error?A.stack:A)+` -`),process.exit(2)):this.throwLater(A)};Kp.prototype.throwLater=function(A,r){if(arguments.length===1&&(r=A,A=function(){throw r}),typeof setTimeout<"u")setTimeout(function(){A(r)},0);else try{this._schedule(function(){A(r)})}catch{throw new Error(`No async scheduler available - - See http://goo.gl/MqrFmX -`)}};function u3A(A,r,t){this._lateQueue.push(A,r,t),this._queueTick()}function g3A(A,r,t){this._normalQueue.push(A,r,t),this._queueTick()}function d3A(A){this._normalQueue._pushOne(A),this._queueTick()}E3A.hasDevTools?(Kp.prototype.invokeLater=function(A,r,t){this._trampolineEnabled?u3A.call(this,A,r,t):this._schedule(function(){setTimeout(function(){A.call(r,t)},100)})},Kp.prototype.invoke=function(A,r,t){this._trampolineEnabled?g3A.call(this,A,r,t):this._schedule(function(){A.call(r,t)})},Kp.prototype.settlePromises=function(A){this._trampolineEnabled?d3A.call(this,A):this._schedule(function(){A._settlePromises()})}):(Kp.prototype.invokeLater=u3A,Kp.prototype.invoke=g3A,Kp.prototype.settlePromises=d3A);Kp.prototype._drainQueue=function(A){for(;A.length()>0;){var r=A.shift();if(typeof r!="function"){r._settlePromises();continue}var t=A.shift(),i=A.shift();r.call(t,i)}};Kp.prototype._drainQueues=function(){this._drainQueue(this._normalQueue),this._reset(),this._haveDrainedQueues=!0,this._drainQueue(this._lateQueue)};Kp.prototype._queueTick=function(){this._isTickUsed||(this._isTickUsed=!0,this._schedule(this.drainQueues))};Kp.prototype._reset=function(){this._isTickUsed=!1};ZnA.exports=Kp;ZnA.exports.firstLineError=p3A});var R4=GA((XXt,Q3A)=>{"use strict";var eaA=by(),Dnr=eaA.freeze,B3A=Qu(),h3A=B3A.inherits,Rb=B3A.notEnumerableProp;function Tb(A,r){function t(i){if(!(this instanceof t))return new t(i);Rb(this,"message",typeof i=="string"?i:r),Rb(this,"name",A),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):Error.call(this)}return h3A(t,Error),t}var $nA,AaA,_nr=Tb("Warning","warning"),wnr=Tb("CancellationError","cancellation error"),vnr=Tb("TimeoutError","timeout error"),Z6=Tb("AggregateError","aggregate error");try{$nA=TypeError,AaA=RangeError}catch{$nA=Tb("TypeError","type error"),AaA=Tb("RangeError","range error")}var UN="join pop push shift unshift slice filter forEach some every map indexOf lastIndexOf reduce reduceRight sort reverse".split(" ");for(Fb=0;Fb{"use strict";m3A.exports=function(A,r){var t=Qu(),i=t.errorObj,o=t.isObject;function s(_,x){if(o(_)){if(_ instanceof A)return _;var O=E(_);if(O===i){x&&x._pushContext();var k=A.reject(O.e);return x&&x._popContext(),k}else if(typeof O=="function"){if(B(_)){var k=new A(r);return _._then(k._fulfill,k._reject,void 0,k,null),k}return m(_,O,x)}}return _}function g(_){return _.then}function E(_){try{return g(_)}catch(x){return i.e=x,i}}var p={}.hasOwnProperty;function B(_){try{return p.call(_,"_promise0")}catch{return!1}}function m(_,x,O){var k=new A(r),P=k;O&&O._pushContext(),k._captureStackTrace(),O&&O._popContext();var H=!0,T=t.tryCatch(x).call(_,v,F);H=!1,k&&T===i&&(k._rejectCallback(T.e,!0,!0),k=null);function v(y){k&&(k._resolveCallback(y),k=null)}function F(y){k&&(k._rejectCallback(y,H,!0),k=null)}return P}return s}});var w3A=GA(($Xt,_3A)=>{"use strict";_3A.exports=function(A,r,t,i,o){var s=Qu(),g=s.isArray;function E(B){switch(B){case-2:return[];case-3:return{}}}function p(B){var m=this._promise=new A(r);B instanceof A&&m._propagateFrom(B,3),m._setOnCancel(this),this._values=B,this._length=0,this._totalResolved=0,this._init(void 0,-2)}return s.inherits(p,o),p.prototype.length=function(){return this._length},p.prototype.promise=function(){return this._promise},p.prototype._init=function B(m,_){var x=t(this._values,this._promise);if(x instanceof A){x=x._target();var O=x._bitField;if(this._values=x,O&50397184)if(O&33554432)x=x._value();else return O&16777216?this._reject(x._reason()):this._cancel();else return this._promise._setAsyncGuaranteed(),x._then(B,this._reject,void 0,this,_)}if(x=s.asArray(x),x===null){var k=i("expecting an array or an iterable object but got "+s.classString(x)).reason();this._promise._rejectCallback(k,!1);return}if(x.length===0){_===-5?this._resolveEmptyArray():this._resolve(E(_));return}this._iterate(x)},p.prototype._iterate=function(B){var m=this.getActualLength(B.length);this._length=m,this._values=this.shouldCopyValues()?new Array(m):this._values;for(var _=this._promise,x=!1,O=null,k=0;k=this._length?(this._resolve(this._values),!0):!1},p.prototype._promiseCancelled=function(){return this._cancel(),!0},p.prototype._promiseRejected=function(B){return this._totalResolved++,this._reject(B),!0},p.prototype._resultCancelled=function(){if(!this._isResolved()){var B=this._values;if(this._cancel(),B instanceof A)B.cancel();else for(var m=0;m{"use strict";v3A.exports=function(A){var r=!1,t=[];A.prototype._promiseCreated=function(){},A.prototype._pushContext=function(){},A.prototype._popContext=function(){return null},A._peekContext=A.prototype._peekContext=function(){};function i(){this._trace=new i.CapturedTrace(s())}i.prototype._pushContext=function(){this._trace!==void 0&&(this._trace._promiseCreated=null,t.push(this._trace))},i.prototype._popContext=function(){if(this._trace!==void 0){var g=t.pop(),E=g._promiseCreated;return g._promiseCreated=null,E}return null};function o(){if(r)return new i}function s(){var g=t.length-1;if(g>=0)return t[g]}return i.CapturedTrace=null,i.create=o,i.deactivateLongStackTraces=function(){},i.activateLongStackTraces=function(){var g=A.prototype._pushContext,E=A.prototype._popContext,p=A._peekContext,B=A.prototype._peekContext,m=A.prototype._promiseCreated;i.deactivateLongStackTraces=function(){A.prototype._pushContext=g,A.prototype._popContext=E,A._peekContext=p,A.prototype._peekContext=B,A.prototype._promiseCreated=m,r=!1},r=!0,A.prototype._pushContext=i.prototype._pushContext,A.prototype._popContext=i.prototype._popContext,A._peekContext=A.prototype._peekContext=s,A.prototype._promiseCreated=function(){var _=this._peekContext();_&&_._promiseCreated==null&&(_._promiseCreated=this)}},i}});var I3A=GA((eZt,C3A)=>{"use strict";C3A.exports=function(A,r){var t=A._getDomain,i=A._async,o=R4().Warning,s=Qu(),g=s.canAttachTrace,E,p,B=/[\\\/]bluebird[\\\/]js[\\\/](release|debug|instrumented)/,m=/\((?:timers\.js):\d+:\d+\)/,_=/[\/<\(](.+?):(\d+):(\d+)\)?\s*$/,x=null,O=null,k=!1,P,H=!!(s.env("BLUEBIRD_DEBUG")!=0&&(s.env("BLUEBIRD_DEBUG")||s.env("NODE_ENV")==="development")),T=!!(s.env("BLUEBIRD_WARNINGS")!=0&&(H||s.env("BLUEBIRD_WARNINGS"))),v=!!(s.env("BLUEBIRD_LONG_STACK_TRACES")!=0&&(H||s.env("BLUEBIRD_LONG_STACK_TRACES"))),F=s.env("BLUEBIRD_W_FORGOTTEN_RETURN")!=0&&(T||!!s.env("BLUEBIRD_W_FORGOTTEN_RETURN"));A.prototype.suppressUnhandledRejections=function(){var RA=this._target();RA._bitField=RA._bitField&-1048577|524288},A.prototype._ensurePossibleRejectionHandled=function(){this._bitField&524288||(this._setRejectionIsUnhandled(),i.invokeLater(this._notifyUnhandledRejection,this,void 0))},A.prototype._notifyUnhandledRejectionIsHandled=function(){QA("rejectionHandled",E,void 0,this)},A.prototype._setReturnedNonUndefined=function(){this._bitField=this._bitField|268435456},A.prototype._returnedNonUndefined=function(){return(this._bitField&268435456)!==0},A.prototype._notifyUnhandledRejection=function(){if(this._isRejectionUnhandled()){var RA=this._settledValue();this._setUnhandledRejectionIsNotified(),QA("unhandledRejection",p,RA,this)}},A.prototype._setUnhandledRejectionIsNotified=function(){this._bitField=this._bitField|262144},A.prototype._unsetUnhandledRejectionIsNotified=function(){this._bitField=this._bitField&-262145},A.prototype._isUnhandledRejectionNotified=function(){return(this._bitField&262144)>0},A.prototype._setRejectionIsUnhandled=function(){this._bitField=this._bitField|1048576},A.prototype._unsetRejectionIsUnhandled=function(){this._bitField=this._bitField&-1048577,this._isUnhandledRejectionNotified()&&(this._unsetUnhandledRejectionIsNotified(),this._notifyUnhandledRejectionIsHandled())},A.prototype._isRejectionUnhandled=function(){return(this._bitField&1048576)>0},A.prototype._warn=function(RA,lA,tA){return z(RA,lA,tA||this)},A.onPossiblyUnhandledRejection=function(RA){var lA=t();p=typeof RA=="function"?lA===null?RA:s.domainBind(lA,RA):void 0},A.onUnhandledRejectionHandled=function(RA){var lA=t();E=typeof RA=="function"?lA===null?RA:s.domainBind(lA,RA):void 0};var y=function(){};A.longStackTraces=function(){if(i.haveItemsQueued()&&!MA.longStackTraces)throw new Error(`cannot enable long stack traces after promises have been created - - See http://goo.gl/MqrFmX -`);if(!MA.longStackTraces&&SA()){var RA=A.prototype._captureStackTrace,lA=A.prototype._attachExtraTrace;MA.longStackTraces=!0,y=function(){if(i.haveItemsQueued()&&!MA.longStackTraces)throw new Error(`cannot enable long stack traces after promises have been created - - See http://goo.gl/MqrFmX -`);A.prototype._captureStackTrace=RA,A.prototype._attachExtraTrace=lA,r.deactivateLongStackTraces(),i.enableTrampoline(),MA.longStackTraces=!1},A.prototype._captureStackTrace=sA,A.prototype._attachExtraTrace=uA,r.activateLongStackTraces(),i.disableTrampolineIfNecessary()}},A.hasLongStackTraces=function(){return MA.longStackTraces&&SA()};var S=function(){try{if(typeof CustomEvent=="function"){var RA=new CustomEvent("CustomEvent");return s.global.dispatchEvent(RA),function(lA,tA){var N=new CustomEvent(lA.toLowerCase(),{detail:tA,cancelable:!0});return!s.global.dispatchEvent(N)}}else if(typeof Event=="function"){var RA=new Event("CustomEvent");return s.global.dispatchEvent(RA),function(tA,N){var nA=new Event(tA.toLowerCase(),{cancelable:!0});return nA.detail=N,!s.global.dispatchEvent(nA)}}else{var RA=document.createEvent("CustomEvent");return RA.initCustomEvent("testingtheevent",!1,!0,{}),s.global.dispatchEvent(RA),function(tA,N){var nA=document.createEvent("CustomEvent");return nA.initCustomEvent(tA.toLowerCase(),!1,!0,N),!s.global.dispatchEvent(nA)}}}catch{}return function(){return!1}}(),U=function(){return s.isNode?function(){return process.emit.apply(process,arguments)}:s.global?function(RA){var lA="on"+RA.toLowerCase(),tA=s.global[lA];return tA?(tA.apply(s.global,[].slice.call(arguments,1)),!0):!1}:function(){return!1}}();function V(RA,lA){return{promise:lA}}var wA={promiseCreated:V,promiseFulfilled:V,promiseRejected:V,promiseResolved:V,promiseCancelled:V,promiseChained:function(RA,lA,tA){return{promise:lA,child:tA}},warning:function(RA,lA){return{warning:lA}},unhandledRejection:function(RA,lA,tA){return{reason:lA,promise:tA}},rejectionHandled:V},IA=function(RA){var lA=!1;try{lA=U.apply(null,arguments)}catch(N){i.throwLater(N),lA=!0}var tA=!1;try{tA=S(RA,wA[RA].apply(null,arguments))}catch(N){i.throwLater(N),tA=!0}return tA||lA};A.config=function(RA){if(RA=Object(RA),"longStackTraces"in RA&&(RA.longStackTraces?A.longStackTraces():!RA.longStackTraces&&A.hasLongStackTraces()&&y()),"warnings"in RA){var lA=RA.warnings;MA.warnings=!!lA,F=MA.warnings,s.isObject(lA)&&"wForgottenReturn"in lA&&(F=!!lA.wForgottenReturn)}if("cancellation"in RA&&RA.cancellation&&!MA.cancellation){if(i.haveItemsQueued())throw new Error("cannot enable cancellation after promises are in use");A.prototype._clearCancellationData=q,A.prototype._propagateFrom=X,A.prototype._onCancel=eA,A.prototype._setOnCancel=Y,A.prototype._attachCancellationCallback=cA,A.prototype._execute=oA,K=X,MA.cancellation=!0}return"monitoring"in RA&&(RA.monitoring&&!MA.monitoring?(MA.monitoring=!0,A.prototype._fireEvent=IA):!RA.monitoring&&MA.monitoring&&(MA.monitoring=!1,A.prototype._fireEvent=pA)),A};function pA(){return!1}A.prototype._fireEvent=pA,A.prototype._execute=function(RA,lA,tA){try{RA(lA,tA)}catch(N){return N}},A.prototype._onCancel=function(){},A.prototype._setOnCancel=function(RA){},A.prototype._attachCancellationCallback=function(RA){},A.prototype._captureStackTrace=function(){},A.prototype._attachExtraTrace=function(){},A.prototype._clearCancellationData=function(){},A.prototype._propagateFrom=function(RA,lA){};function oA(RA,lA,tA){var N=this;try{RA(lA,tA,function(nA){if(typeof nA!="function")throw new TypeError("onCancel must be a function, got: "+s.toString(nA));N._attachCancellationCallback(nA)})}catch(nA){return nA}}function cA(RA){if(!this._isCancellable())return this;var lA=this._onCancel();lA!==void 0?s.isArray(lA)?lA.push(RA):this._setOnCancel([lA,RA]):this._setOnCancel(RA)}function eA(){return this._onCancelField}function Y(RA){this._onCancelField=RA}function q(){this._cancellationParent=void 0,this._onCancelField=void 0}function X(RA,lA){if(lA&1){this._cancellationParent=RA;var tA=RA._branchesRemainingToCancel;tA===void 0&&(tA=0),RA._branchesRemainingToCancel=tA+1}lA&2&&RA._isBound()&&this._setBoundTo(RA._boundTo)}function Z(RA,lA){lA&2&&RA._isBound()&&this._setBoundTo(RA._boundTo)}var K=Z;function J(){var RA=this._boundTo;return RA!==void 0&&RA instanceof A?RA.isFulfilled()?RA.value():void 0:RA}function sA(){this._trace=new jA(this._peekContext())}function uA(RA,lA){if(g(RA)){var tA=this._trace;if(tA!==void 0&&lA&&(tA=tA._parent),tA!==void 0)tA.attachExtraTrace(RA);else if(!RA.__stackCleaned__){var N=aA(RA);s.notEnumerableProp(RA,"stack",N.message+` -`+N.stack.join(` -`)),s.notEnumerableProp(RA,"__stackCleaned__",!0)}}}function BA(RA,lA,tA,N,nA){if(RA===void 0&&lA!==null&&F){if(nA!==void 0&&nA._returnedNonUndefined()||!(N._bitField&65535))return;tA&&(tA=tA+" ");var kA="",bA="";if(lA._trace){for(var TA=lA._trace.stack.split(` -`),VA=fA(TA),De=VA.length-1;De>=0;--De){var _e=VA[De];if(!m.test(_e)){var Ae=_e.match(_);Ae&&(kA="at "+Ae[1]+":"+Ae[2]+":"+Ae[3]+" ");break}}if(VA.length>0){for(var Q=VA[0],De=0;De0&&(bA=` -`+TA[De-1]);break}}}var Ze="a promise was created in a "+tA+"handler "+kA+"but was not returned from it, see http://goo.gl/rRqMUw"+bA;N._warn(Ze,!0,lA)}}function CA(RA,lA){var tA=RA+" is deprecated and will be removed in a future version.";return lA&&(tA+=" Use "+lA+" instead."),z(tA)}function z(RA,lA,tA){if(MA.warnings){var N=new o(RA),nA;if(lA)tA._attachExtraTrace(N);else if(MA.longStackTraces&&(nA=A._peekContext()))nA.attachExtraTrace(N);else{var kA=aA(N);N.stack=kA.message+` -`+kA.stack.join(` -`)}IA("warning",N)||gA(N,"",!0)}}function AA(RA,lA){for(var tA=0;tA=0;--TA)if(N[TA]===kA){bA=TA;break}for(var TA=bA;TA>=0;--TA){var VA=N[TA];if(lA[nA]===VA)lA.pop(),nA--;else break}lA=N}}function fA(RA){for(var lA=[],tA=0;tA0&&RA.name!="SyntaxError"&&(lA=lA.slice(tA)),lA}function aA(RA){var lA=RA.stack,tA=RA.toString();return lA=typeof lA=="string"&&lA.length>0?M(RA):[" (No stack trace)"],{message:tA,stack:RA.name=="SyntaxError"?lA:fA(lA)}}function gA(RA,lA,tA){if(typeof console<"u"){var N;if(s.isObject(RA)){var nA=RA.stack;N=lA+O(nA,RA)}else N=lA+String(RA);typeof P=="function"?P(N,tA):(typeof console.log=="function"||typeof console.log=="object")&&console.log(N)}}function QA(RA,lA,tA,N){var nA=!1;try{typeof lA=="function"&&(nA=!0,RA==="rejectionHandled"?lA(N):lA(tA,N))}catch(kA){i.throwLater(kA)}RA==="unhandledRejection"?!IA(RA,tA,N)&&!nA&&gA(tA,"Unhandled rejection "):IA(RA,N)}function mA(RA){var lA;if(typeof RA=="function")lA="[function "+(RA.name||"anonymous")+"]";else{lA=RA&&typeof RA.toString=="function"?RA.toString():s.toString(RA);var tA=/\[object [a-zA-Z0-9$_]+\]/;if(tA.test(lA))try{var N=JSON.stringify(RA);lA=N}catch{}lA.length===0&&(lA="(empty array)")}return"(<"+FA(lA)+">, no stack trace)"}function FA(RA){var lA=41;return RA.length=kA||(ce=function(_e){if(B.test(_e))return!0;var Ae=KA(_e);return!!(Ae&&Ae.fileName===bA&&nA<=Ae.line&&Ae.line<=kA)})}}function jA(RA){this._parent=RA,this._promisesCreated=0;var lA=this._length=1+(RA===void 0?0:RA._length);ue(this,jA),lA>32&&this.uncycle()}s.inherits(jA,Error),r.CapturedTrace=jA,jA.prototype.uncycle=function(){var RA=this._length;if(!(RA<2)){for(var lA=[],tA={},N=0,nA=this;nA!==void 0;++N)lA.push(nA),nA=nA._parent;RA=this._length=N;for(var N=RA-1;N>=0;--N){var kA=lA[N].stack;tA[kA]===void 0&&(tA[kA]=N)}for(var N=0;N0&&(lA[TA-1]._parent=void 0,lA[TA-1]._length=1),lA[N]._parent=void 0,lA[N]._length=1;var VA=N>0?lA[N-1]:this;TA=0;--_e)lA[_e]._length=De,De++;return}}}},jA.prototype.attachExtraTrace=function(RA){if(!RA.__stackCleaned__){this.uncycle();for(var lA=aA(RA),tA=lA.message,N=[lA.stack],nA=this;nA!==void 0;)N.push(fA(nA.stack.split(` -`))),nA=nA._parent;_A(N),iA(N),s.notEnumerableProp(RA,"stack",AA(tA,N)),s.notEnumerableProp(RA,"__stackCleaned__",!0)}};var ue=function(){var lA=/^\s*at\s*/,tA=function(bA,TA){return typeof bA=="string"?bA:TA.name!==void 0&&TA.message!==void 0?TA.toString():mA(TA)};if(typeof Error.stackTraceLimit=="number"&&typeof Error.captureStackTrace=="function"){Error.stackTraceLimit+=6,x=lA,O=tA;var N=Error.captureStackTrace;return ce=function(bA){return B.test(bA)},function(bA,TA){Error.stackTraceLimit+=6,N(bA,TA),Error.stackTraceLimit-=6}}var nA=new Error;if(typeof nA.stack=="string"&&nA.stack.split(` -`)[0].indexOf("stackDetection@")>=0)return x=/@/,O=tA,k=!0,function(TA){TA.stack=new Error().stack};var kA;try{throw new Error}catch(bA){kA="stack"in bA}return!("stack"in nA)&&kA&&typeof Error.stackTraceLimit=="number"?(x=lA,O=tA,function(TA){Error.stackTraceLimit+=6;try{throw new Error}catch(VA){TA.stack=VA.stack}Error.stackTraceLimit-=6}):(O=function(bA,TA){return typeof bA=="string"?bA:(typeof TA=="object"||typeof TA=="function")&&TA.name!==void 0&&TA.message!==void 0?TA.toString():mA(TA)},null)}([]);typeof console<"u"&&typeof console.warn<"u"&&(P=function(RA){console.warn(RA)},s.isNode&&process.stderr.isTTY?P=function(RA,lA){var tA=lA?"\x1B[33m":"\x1B[31m";console.warn(tA+RA+`\x1B[0m -`)}:!s.isNode&&typeof new Error().stack=="string"&&(P=function(RA,lA){console.warn("%c"+RA,lA?"color: darkorange":"color: red")}));var MA={warnings:T,longStackTraces:!1,cancellation:!1,monitoring:!1};return v&&A.longStackTraces(),{longStackTraces:function(){return MA.longStackTraces},warnings:function(){return MA.warnings},cancellation:function(){return MA.cancellation},monitoring:function(){return MA.monitoring},propagateFromFunction:function(){return K},boundValueFunction:function(){return J},checkForgottenReturns:BA,setBounds:$A,warn:z,deprecated:CA,CapturedTrace:jA,fireDomEvent:S,fireGlobalEvent:U}}});var O3A=GA((rZt,b3A)=>{"use strict";b3A.exports=function(A,r){var t=Qu(),i=A.CancellationError,o=t.errorObj;function s(_,x,O){this.promise=_,this.type=x,this.handler=O,this.called=!1,this.cancelPromise=null}s.prototype.isFinallyHandler=function(){return this.type===0};function g(_){this.finallyHandler=_}g.prototype._resultCancelled=function(){E(this.finallyHandler)};function E(_,x){return _.cancelPromise!=null?(arguments.length>1?_.cancelPromise._reject(x):_.cancelPromise._cancel(),_.cancelPromise=null,!0):!1}function p(){return m.call(this,this.promise._target()._settledValue())}function B(_){if(!E(this,_))return o.e=_,o}function m(_){var x=this.promise,O=this.handler;if(!this.called){this.called=!0;var k=this.isFinallyHandler()?O.call(x._boundValue()):O.call(x._boundValue(),_);if(k!==void 0){x._setReturnedNonUndefined();var P=r(k,x);if(P instanceof A){if(this.cancelPromise!=null)if(P._isCancelled()){var H=new i("late cancellation observer");return x._attachExtraTrace(H),o.e=H,o}else P.isPending()&&P._attachCancellationCallback(new g(this));return P._then(p,B,void 0,this,void 0)}}}return x.isRejected()?(E(this),o.e=_,o):(E(this),_)}return A.prototype._passThrough=function(_,x,O,k){return typeof _!="function"?this.then():this._then(O,k,void 0,new s(this,x,_),void 0)},A.prototype.lastly=A.prototype.finally=function(_){return this._passThrough(_,0,m,m)},A.prototype.tap=function(_){return this._passThrough(_,1,m)},s}});var k3A=GA((tZt,M3A)=>{"use strict";M3A.exports=function(A){var r=Qu(),t=by().keys,i=r.tryCatch,o=r.errorObj;function s(g,E,p){return function(B){var m=p._boundValue();A:for(var _=0;_{"use strict";var x3A=Qu(),ynr=x3A.maybeWrapAsError,Cnr=R4(),Inr=Cnr.OperationalError,H3A=by();function bnr(A){return A instanceof Error&&H3A.getPrototypeOf(A)===Error.prototype}var Onr=/^(?:name|message|stack|cause)$/;function Mnr(A){var r;if(bnr(A)){r=new Inr(A),r.name=A.name,r.message=A.message,r.stack=A.stack;for(var t=H3A.keys(A),i=0;i{"use strict";F3A.exports=function(A,r,t,i,o){var s=Qu(),g=s.tryCatch;A.method=function(E){if(typeof E!="function")throw new A.TypeError("expecting a function but got "+s.classString(E));return function(){var p=new A(r);p._captureStackTrace(),p._pushContext();var B=g(E).apply(this,arguments),m=p._popContext();return o.checkForgottenReturns(B,m,"Promise.method",p),p._resolveFromSyncValue(B),p}},A.attempt=A.try=function(E){if(typeof E!="function")return i("expecting a function but got "+s.classString(E));var p=new A(r);p._captureStackTrace(),p._pushContext();var B;if(arguments.length>1){o.deprecated("calling Promise.try with more than 1 argument");var m=arguments[1],_=arguments[2];B=s.isArray(m)?g(E).apply(_,m):g(E).call(_,m)}else B=g(E)();var x=p._popContext();return o.checkForgottenReturns(B,x,"Promise.try",p),p._resolveFromSyncValue(B),p},A.prototype._resolveFromSyncValue=function(E){E===s.errorObj?this._rejectCallback(E.e,!1):this._resolveCallback(E,!0)}}});var N3A=GA((aZt,T3A)=>{"use strict";T3A.exports=function(A,r,t,i){var o=!1,s=function(B,m){this._reject(m)},g=function(B,m){m.promiseRejectionQueued=!0,m.bindingPromise._then(s,s,null,this,B)},E=function(B,m){this._bitField&50397184||this._resolveCallback(m.target)},p=function(B,m){m.promiseRejectionQueued||this._reject(B)};A.prototype.bind=function(B){o||(o=!0,A.prototype._propagateFrom=i.propagateFromFunction(),A.prototype._boundValue=i.boundValueFunction());var m=t(B),_=new A(r);_._propagateFrom(this,1);var x=this._target();if(_._setBoundTo(m),m instanceof A){var O={promiseRejectionQueued:!1,promise:_,target:x,bindingPromise:m};x._then(r,g,void 0,_,O),m._then(E,p,void 0,_,O),_._setOnCancel(m)}else _._resolveCallback(x);return _},A.prototype._setBoundTo=function(B){B!==void 0?(this._bitField=this._bitField|2097152,this._boundTo=B):this._bitField=this._bitField&-2097153},A.prototype._isBound=function(){return(this._bitField&2097152)===2097152},A.bind=function(B,m){return A.resolve(m).bind(B)}}});var G3A=GA((oZt,P3A)=>{"use strict";P3A.exports=function(A,r,t,i){var o=Qu(),s=o.tryCatch,g=o.errorObj,E=A._async;A.prototype.break=A.prototype.cancel=function(){if(!i.cancellation())return this._warn("cancellation is disabled");for(var p=this,B=p;p._isCancellable();){if(!p._cancelBy(B)){B._isFollowing()?B._followee().cancel():B._cancelBranched();break}var m=p._cancellationParent;if(m==null||!m._isCancellable()){p._isFollowing()?p._followee().cancel():p._cancelBranched();break}else p._isFollowing()&&p._followee().cancel(),p._setWillBeCancelled(),B=p,p=m}},A.prototype._branchHasCancelled=function(){this._branchesRemainingToCancel--},A.prototype._enoughBranchesHaveCancelled=function(){return this._branchesRemainingToCancel===void 0||this._branchesRemainingToCancel<=0},A.prototype._cancelBy=function(p){return p===this?(this._branchesRemainingToCancel=0,this._invokeOnCancel(),!0):(this._branchHasCancelled(),this._enoughBranchesHaveCancelled()?(this._invokeOnCancel(),!0):!1)},A.prototype._cancelBranched=function(){this._enoughBranchesHaveCancelled()&&this._cancel()},A.prototype._cancel=function(){this._isCancellable()&&(this._setCancelled(),E.invoke(this._cancelPromises,this,void 0))},A.prototype._cancelPromises=function(){this._length()>0&&this._settlePromises()},A.prototype._unsetOnCancel=function(){this._onCancelField=void 0},A.prototype._isCancellable=function(){return this.isPending()&&!this._isCancelled()},A.prototype.isCancellable=function(){return this.isPending()&&!this.isCancelled()},A.prototype._doInvokeOnCancel=function(p,B){if(o.isArray(p))for(var m=0;m{"use strict";Y3A.exports=function(A){function r(){return this.value}function t(){throw this.reason}A.prototype.return=A.prototype.thenReturn=function(i){return i instanceof A&&i.suppressUnhandledRejections(),this._then(r,void 0,void 0,{value:i},void 0)},A.prototype.throw=A.prototype.thenThrow=function(i){return this._then(t,void 0,void 0,{reason:i},void 0)},A.prototype.catchThrow=function(i){if(arguments.length<=1)return this._then(void 0,t,void 0,{reason:i},void 0);var o=arguments[1],s=function(){throw o};return this.caught(i,s)},A.prototype.catchReturn=function(i){if(arguments.length<=1)return i instanceof A&&i.suppressUnhandledRejections(),this._then(void 0,r,void 0,{value:i},void 0);var o=arguments[1];o instanceof A&&o.suppressUnhandledRejections();var s=function(){return o};return this.caught(i,s)}}});var j3A=GA((cZt,L3A)=>{"use strict";L3A.exports=function(A){function r(p){p!==void 0?(p=p._target(),this._bitField=p._bitField,this._settledValueField=p._isFateSealed()?p._settledValue():void 0):(this._bitField=0,this._settledValueField=void 0)}r.prototype._settledValue=function(){return this._settledValueField};var t=r.prototype.value=function(){if(!this.isFulfilled())throw new TypeError(`cannot get fulfillment value of a non-fulfilled promise - - See http://goo.gl/MqrFmX -`);return this._settledValue()},i=r.prototype.error=r.prototype.reason=function(){if(!this.isRejected())throw new TypeError(`cannot get rejection reason of a non-rejected promise - - See http://goo.gl/MqrFmX -`);return this._settledValue()},o=r.prototype.isFulfilled=function(){return(this._bitField&33554432)!==0},s=r.prototype.isRejected=function(){return(this._bitField&16777216)!==0},g=r.prototype.isPending=function(){return(this._bitField&50397184)===0},E=r.prototype.isResolved=function(){return(this._bitField&50331648)!==0};r.prototype.isCancelled=function(){return(this._bitField&8454144)!==0},A.prototype.__isCancelled=function(){return(this._bitField&65536)===65536},A.prototype._isCancelled=function(){return this._target().__isCancelled()},A.prototype.isCancelled=function(){return(this._target()._bitField&8454144)!==0},A.prototype.isPending=function(){return g.call(this._target())},A.prototype.isRejected=function(){return s.call(this._target())},A.prototype.isFulfilled=function(){return o.call(this._target())},A.prototype.isResolved=function(){return E.call(this._target())},A.prototype.value=function(){return t.call(this._target())},A.prototype.reason=function(){var p=this._target();return p._unsetRejectionIsUnhandled(),i.call(p)},A.prototype._value=function(){return this._settledValue()},A.prototype._reason=function(){return this._unsetRejectionIsUnhandled(),this._settledValue()},A.PromiseInspection=r}});var J3A=GA((lZt,W3A)=>{"use strict";W3A.exports=function(A,r,t,i,o,s){var g=Qu(),E=g.canEvaluate,p=g.tryCatch,B=g.errorObj,m;if(E){for(var _=function(v){return new Function("value","holder",` - 'use strict'; - holder.pIndex = value; - holder.checkFulfillment(this); - `.replace(/Index/g,v))},x=function(v){return new Function("promise","holder",` - 'use strict'; - holder.pIndex = promise; - `.replace(/Index/g,v))},O=function(v){for(var F=new Array(v),y=0;y0&&typeof arguments[v]=="function"&&(F=arguments[v],v<=8&&E)){var Y=new A(i);Y._captureStackTrace();for(var y=k[v-1],S=new y(F),U=P,V=0;V{"use strict";q3A.exports=function(A,r,t,i,o,s){var g=A._getDomain,E=Qu(),p=E.tryCatch,B=E.errorObj,m=A._async;function _(O,k,P,H){this.constructor$(O),this._promise._captureStackTrace();var T=g();this._callback=T===null?k:E.domainBind(T,k),this._preservedValues=H===o?new Array(this.length()):null,this._limit=P,this._inFlight=0,this._queue=[],m.invoke(this._asyncInit,this,void 0)}E.inherits(_,r),_.prototype._asyncInit=function(){this._init$(void 0,-2)},_.prototype._init=function(){},_.prototype._promiseFulfilled=function(O,k){var P=this._values,H=this.length(),T=this._preservedValues,v=this._limit;if(k<0){if(k=k*-1-1,P[k]=O,v>=1&&(this._inFlight--,this._drainQueue(),this._isResolved()))return!0}else{if(v>=1&&this._inFlight>=v)return P[k]=O,this._queue.push(k),!1;T!==null&&(T[k]=O);var F=this._promise,y=this._callback,S=F._boundValue();F._pushContext();var U=p(y).call(S,O,k,H),V=F._popContext();if(s.checkForgottenReturns(U,V,T!==null?"Promise.filter":"Promise.map",F),U===B)return this._reject(U.e),!0;var wA=i(U,this._promise);if(wA instanceof A){wA=wA._target();var IA=wA._bitField;if(IA&50397184)if(IA&33554432)U=wA._value();else return IA&16777216?(this._reject(wA._reason()),!0):(this._cancel(),!0);else return v>=1&&this._inFlight++,P[k]=wA,wA._proxy(this,(k+1)*-1),!1}P[k]=U}var pA=++this._totalResolved;return pA>=H?(T!==null?this._filter(P,T):this._resolve(P),!0):!1},_.prototype._drainQueue=function(){for(var O=this._queue,k=this._limit,P=this._values;O.length>0&&this._inFlight=1?T:0,new _(O,k,T,H).promise()}A.prototype.map=function(O,k){return x(this,O,k,null)},A.map=function(O,k,P,H){return x(O,k,P,H)}}});var K3A=GA((gZt,z3A)=>{"use strict";var taA=Object.create;taA&&(iaA=taA(null),naA=taA(null),iaA[" size"]=naA[" size"]=0);var iaA,naA;z3A.exports=function(A){var r=Qu(),t=r.canEvaluate,i=r.isIdentifier,o,s,g=function(O){return new Function("ensureMethod",` - return function(obj) { - 'use strict' - var len = this.length; - ensureMethod(obj, 'methodName'); - switch(len) { - case 1: return obj.methodName(this[0]); - case 2: return obj.methodName(this[0], this[1]); - case 3: return obj.methodName(this[0], this[1], this[2]); - case 0: return obj.methodName(); - default: - return obj.methodName.apply(obj, this); - } - }; - `.replace(/methodName/g,O))(B)},E=function(O){return new Function("obj",` - 'use strict'; - return obj.propertyName; - `.replace("propertyName",O))},p=function(O,k,P){var H=P[O];if(typeof H!="function"){if(!i(O))return null;if(H=k(O),P[O]=H,P[" size"]++,P[" size"]>512){for(var T=Object.keys(P),v=0;v<256;++v)delete P[T[v]];P[" size"]=T.length-256}}return H};o=function(O){return p(O,g,iaA)},s=function(O){return p(O,E,naA)};function B(O,k){var P;if(O!=null&&(P=O[k]),typeof P!="function"){var H="Object "+r.classString(O)+" has no method '"+r.toString(k)+"'";throw new A.TypeError(H)}return P}function m(O){var k=this.pop(),P=B(O,k);return P.apply(O,this)}A.prototype.call=function(O){for(var k=arguments.length,P=new Array(Math.max(k-1,0)),H=1;H{"use strict";X3A.exports=function(A,r,t,i,o,s){var g=Qu(),E=R4().TypeError,p=Qu().inherits,B=g.errorObj,m=g.tryCatch,_={};function x(F){setTimeout(function(){throw F},0)}function O(F){var y=t(F);return y!==F&&typeof F._isDisposable=="function"&&typeof F._getDisposer=="function"&&F._isDisposable()&&y._setDisposable(F._getDisposer()),y}function k(F,y){var S=0,U=F.length,V=new A(o);function wA(){if(S>=U)return V._fulfill();var IA=O(F[S++]);if(IA instanceof A&&IA._isDisposable()){try{IA=t(IA._getDisposer().tryDispose(y),F.promise)}catch(pA){return x(pA)}if(IA instanceof A)return IA._then(wA,x,null,null,null)}wA()}return wA(),V}function P(F,y,S){this._data=F,this._promise=y,this._context=S}P.prototype.data=function(){return this._data},P.prototype.promise=function(){return this._promise},P.prototype.resource=function(){return this.promise().isFulfilled()?this.promise().value():_},P.prototype.tryDispose=function(F){var y=this.resource(),S=this._context;S!==void 0&&S._pushContext();var U=y!==_?this.doDispose(y,F):null;return S!==void 0&&S._popContext(),this._promise._unsetDisposable(),this._data=null,U},P.isDisposer=function(F){return F!=null&&typeof F.resource=="function"&&typeof F.tryDispose=="function"};function H(F,y,S){this.constructor$(F,y,S)}p(H,P),H.prototype.doDispose=function(F,y){var S=this.data();return S.call(F,F,y)};function T(F){return P.isDisposer(F)?(this.resources[this.index]._setDisposable(F),F.promise()):F}function v(F){this.length=F,this.promise=null,this[F-1]=null}v.prototype._resultCancelled=function(){for(var F=this.length,y=0;y0},A.prototype._getDisposer=function(){return this._disposer},A.prototype._unsetDisposable=function(){this._bitField=this._bitField&-131073,this._disposer=void 0},A.prototype.disposer=function(F){if(typeof F=="function")return new H(F,this,i());throw new E}}});var A7A=GA((pZt,$3A)=>{"use strict";$3A.exports=function(A,r,t){var i=Qu(),o=A.TimeoutError;function s(_){this.handle=_}s.prototype._resultCancelled=function(){clearTimeout(this.handle)};var g=function(_){return E(+this).thenReturn(_)},E=A.delay=function(_,x){var O,k;return x!==void 0?(O=A.resolve(x)._then(g,null,null,_,void 0),t.cancellation()&&x instanceof A&&O._setOnCancel(x)):(O=new A(r),k=setTimeout(function(){O._fulfill()},+_),t.cancellation()&&O._setOnCancel(new s(k)),O._captureStackTrace()),O._setAsyncGuaranteed(),O};A.prototype.delay=function(_){return E(_,this)};var p=function(_,x,O){var k;typeof x!="string"?x instanceof Error?k=x:k=new o("operation timed out"):k=new o(x),i.markAsOriginatingFromRejection(k),_._attachExtraTrace(k),_._reject(k),O?.cancel()};function B(_){return clearTimeout(this.handle),_}function m(_){throw clearTimeout(this.handle),_}A.prototype.timeout=function(_,x){_=+_;var O,k,P=new s(setTimeout(function(){O.isPending()&&p(O,x,k)},_));return t.cancellation()?(k=this.then(),O=k._then(B,m,void 0,P,void 0),O._setOnCancel(P)):O=this._then(B,m,void 0,P,void 0),O}}});var r7A=GA((EZt,e7A)=>{"use strict";e7A.exports=function(A,r,t,i,o,s){var g=R4(),E=g.TypeError,p=Qu(),B=p.errorObj,m=p.tryCatch,_=[];function x(k,P,H){for(var T=0;T{"use strict";t7A.exports=function(A){var r=Qu(),t=A._async,i=r.tryCatch,o=r.errorObj;function s(p,B){var m=this;if(!r.isArray(p))return g.call(m,p,B);var _=i(B).apply(m._boundValue(),[null].concat(p));_===o&&t.throwLater(_.e)}function g(p,B){var m=this,_=m._boundValue(),x=p===void 0?i(B).call(_,null):i(B).call(_,null,p);x===o&&t.throwLater(x.e)}function E(p,B){var m=this;if(!p){var _=new Error(p+"");_.cause=p,p=_}var x=i(B).call(m._boundValue(),p);x===o&&t.throwLater(x.e)}A.prototype.asCallback=A.prototype.nodeify=function(p,B){if(typeof p=="function"){var m=g;B!==void 0&&Object(B).spread&&(m=s),this._then(m,E,void 0,this,p)}return this}}});var a7A=GA((BZt,n7A)=>{"use strict";n7A.exports=function(A,r){var t={},i=Qu(),o=raA(),s=i.withAppended,g=i.maybeWrapAsError,E=i.canEvaluate,p=R4().TypeError,B="Async",m={__isPromisified__:!0},_=["arity","length","name","arguments","caller","callee","prototype","__isPromisified__"],x=new RegExp("^(?:"+_.join("|")+")$"),O=function(eA){return i.isIdentifier(eA)&&eA.charAt(0)!=="_"&&eA!=="constructor"};function k(eA){return!x.test(eA)}function P(eA){try{return eA.__isPromisified__===!0}catch{return!1}}function H(eA,Y,q){var X=i.getDataPropertyOrDefault(eA,Y+q,m);return X?P(X):!1}function T(eA,Y,q){for(var X=0;X=q;--X)Y.push(X);for(var X=eA+1;X<=3;++X)Y.push(X);return Y},U=function(eA){return i.filledRange(eA,"_arg","")},V=function(eA){return i.filledRange(Math.max(eA,3),"_arg","")},wA=function(eA){return typeof eA.length=="number"?Math.max(Math.min(eA.length,1024),0):0};y=function(eA,Y,q,X,Z,K){var J=Math.max(0,wA(X)-1),sA=S(J),uA=typeof eA=="string"||Y===t;function BA(iA){var _A=U(iA).join(", "),fA=iA>0?", ":"",M;return uA?M=`ret = callback.call(this, {{args}}, nodeback); break; -`:M=Y===void 0?`ret = callback({{args}}, nodeback); break; -`:`ret = callback.call(receiver, {{args}}, nodeback); break; -`,M.replace("{{args}}",_A).replace(", ",fA)}function CA(){for(var iA="",_A=0;_A{"use strict";o7A.exports=function(A,r,t,i){var o=Qu(),s=o.isObject,g=by(),E;typeof Map=="function"&&(E=Map);var p=function(){var x=0,O=0;function k(P,H){this[x]=P,this[x+O]=H,x++}return function(H){O=H.size,x=0;var T=new Array(H.size*2);return H.forEach(k,T),T}}(),B=function(x){for(var O=new E,k=x.length/2|0,P=0;P=this._length){var P;if(this._isMap)P=B(this._values);else{P={};for(var H=this.length(),T=0,v=this.length();T>1};function _(x){var O,k=t(x);if(s(k))k instanceof A?O=k._then(A.props,void 0,void 0,void 0,void 0):O=new m(k).promise();else return i(`cannot await properties of a non-object - - See http://goo.gl/MqrFmX -`);return k instanceof A&&O._propagateFrom(k,2),O}A.prototype.props=function(){return _(this)},A.props=function(x){return _(x)}}});var l7A=GA((QZt,c7A)=>{"use strict";c7A.exports=function(A,r,t,i){var o=Qu(),s=function(E){return E.then(function(p){return g(p,E)})};function g(E,p){var B=t(E);if(B instanceof A)return s(B);if(E=o.asArray(E),E===null)return i("expecting an array or an iterable object but got "+o.classString(E));var m=new A(r);p!==void 0&&m._propagateFrom(p,3);for(var _=m._fulfill,x=m._reject,O=0,k=E.length;O{"use strict";u7A.exports=function(A,r,t,i,o,s){var g=A._getDomain,E=Qu(),p=E.tryCatch;function B(k,P,H,T){this.constructor$(k);var v=g();this._fn=v===null?P:E.domainBind(v,P),H!==void 0&&(H=A.resolve(H),H._attachCancellationCallback(this)),this._initialValue=H,this._currentCancellable=null,T===o?this._eachValues=Array(this._length):T===0?this._eachValues=null:this._eachValues=void 0,this._promise._captureStackTrace(),this._init$(void 0,-5)}E.inherits(B,r),B.prototype._gotAccum=function(k){this._eachValues!==void 0&&this._eachValues!==null&&k!==o&&this._eachValues.push(k)},B.prototype._eachComplete=function(k){return this._eachValues!==null&&this._eachValues.push(k),this._eachValues},B.prototype._init=function(){},B.prototype._resolveEmptyArray=function(){this._resolve(this._eachValues!==void 0?this._eachValues:this._initialValue)},B.prototype.shouldCopyValues=function(){return!1},B.prototype._resolve=function(k){this._promise._resolveCallback(k),this._values=null},B.prototype._resultCancelled=function(k){if(k===this._initialValue)return this._cancel();this._isResolved()||(this._resultCancelled$(),this._currentCancellable instanceof A&&this._currentCancellable.cancel(),this._initialValue instanceof A&&this._initialValue.cancel())},B.prototype._iterate=function(k){this._values=k;var P,H,T=k.length;if(this._initialValue!==void 0?(P=this._initialValue,H=0):(P=A.resolve(k[0]),H=1),this._currentCancellable=P,!P.isRejected())for(;H{"use strict";d7A.exports=function(A,r,t){var i=A.PromiseInspection,o=Qu();function s(g){this.constructor$(g)}o.inherits(s,r),s.prototype._promiseResolved=function(g,E){this._values[g]=E;var p=++this._totalResolved;return p>=this._length?(this._resolve(this._values),!0):!1},s.prototype._promiseFulfilled=function(g,E){var p=new i;return p._bitField=33554432,p._settledValueField=g,this._promiseResolved(E,p)},s.prototype._promiseRejected=function(g,E){var p=new i;return p._bitField=16777216,p._settledValueField=g,this._promiseResolved(E,p)},A.settle=function(g){return t.deprecated(".settle()",".reflect()"),new s(g).promise()},A.prototype.settle=function(){return A.settle(this)}}});var f7A=GA((_Zt,E7A)=>{"use strict";E7A.exports=function(A,r,t){var i=Qu(),o=R4().RangeError,s=R4().AggregateError,g=i.isArray,E={};function p(m){this.constructor$(m),this._howMany=0,this._unwrap=!1,this._initialized=!1}i.inherits(p,r),p.prototype._init=function(){if(this._initialized){if(this._howMany===0){this._resolve([]);return}this._init$(void 0,-5);var m=g(this._values);!this._isResolved()&&m&&this._howMany>this._canPossiblyFulfill()&&this._reject(this._getRangeError(this.length()))}},p.prototype.init=function(){this._initialized=!0,this._init()},p.prototype.setUnwrap=function(){this._unwrap=!0},p.prototype.howMany=function(){return this._howMany},p.prototype.setHowMany=function(m){this._howMany=m},p.prototype._promiseFulfilled=function(m){return this._addFulfilled(m),this._fulfilled()===this.howMany()?(this._values.length=this.howMany(),this.howMany()===1&&this._unwrap?this._resolve(this._values[0]):this._resolve(this._values),!0):!1},p.prototype._promiseRejected=function(m){return this._addRejected(m),this._checkOutcome()},p.prototype._promiseCancelled=function(){return this._values instanceof A||this._values==null?this._cancel():(this._addRejected(E),this._checkOutcome())},p.prototype._checkOutcome=function(){if(this.howMany()>this._canPossiblyFulfill()){for(var m=new s,_=this.length();_0?this._reject(m):this._cancel(),!0}return!1},p.prototype._fulfilled=function(){return this._totalResolved},p.prototype._rejected=function(){return this._values.length-this.length()},p.prototype._addRejected=function(m){this._values.push(m)},p.prototype._addFulfilled=function(m){this._values[this._totalResolved++]=m},p.prototype._canPossiblyFulfill=function(){return this.length()-this._rejected()},p.prototype._getRangeError=function(m){var _="Input array must contain at least "+this._howMany+" items but contains only "+m+" items";return new o(_)},p.prototype._resolveEmptyArray=function(){this._reject(this._getRangeError(0))};function B(m,_){if((_|0)!==_||_<0)return t(`expecting a positive integer - - See http://goo.gl/MqrFmX -`);var x=new p(m),O=x.promise();return x.setHowMany(_),x.init(),O}A.some=function(m,_){return B(m,_)},A.prototype.some=function(m){return B(this,m)},A._SomePromiseArray=p}});var h7A=GA((wZt,B7A)=>{"use strict";B7A.exports=function(A,r){var t=A.map;A.prototype.filter=function(i,o){return t(this,i,o,r)},A.filter=function(i,o,s){return t(i,o,s,r)}}});var m7A=GA((vZt,Q7A)=>{"use strict";Q7A.exports=function(A,r){var t=A.reduce,i=A.all;function o(){return i(this)}function s(g,E){return t(g,E,r,r)}A.prototype.each=function(g){return t(this,g,r,0)._then(o,void 0,void 0,this,void 0)},A.prototype.mapSeries=function(g){return t(this,g,r,r)},A.each=function(g,E){return t(g,E,r,0)._then(o,void 0,void 0,g,void 0)},A.mapSeries=s}});var _7A=GA((yZt,D7A)=>{"use strict";D7A.exports=function(A){var r=A._SomePromiseArray;function t(i){var o=new r(i),s=o.promise();return o.setHowMany(1),o.setUnwrap(),o.init(),s}A.any=function(i){return t(i)},A.prototype.any=function(){return t(this)}}});var w7A=GA((CZt,aaA)=>{"use strict";aaA.exports=function(){var A=function(){return new _(`circular promise resolution chain - - See http://goo.gl/MqrFmX -`)},r=function(){return new cA.PromiseInspection(this._target())},t=function(X){return cA.reject(new _(X))};function i(){}var o={},s=Qu(),g;s.isNode?g=function(){var X=process.domain;return X===void 0&&(X=null),X}:g=function(){return null},s.notEnumerableProp(cA,"_getDomain",g);var E=by(),p=f3A(),B=new p;E.defineProperty(cA,"_async",{value:B});var m=R4(),_=cA.TypeError=m.TypeError;cA.RangeError=m.RangeError;var x=cA.CancellationError=m.CancellationError;cA.TimeoutError=m.TimeoutError,cA.OperationalError=m.OperationalError,cA.RejectionError=m.OperationalError,cA.AggregateError=m.AggregateError;var O=function(){},k={},P={},H=D3A()(cA,O),T=w3A()(cA,O,H,t,i),v=y3A()(cA),F=v.create,y=I3A()(cA,v),S=y.CapturedTrace,U=O3A()(cA,H),V=k3A()(P),wA=raA(),IA=s.errorObj,pA=s.tryCatch;function oA(X,Z){if(typeof Z!="function")throw new _("expecting a function but got "+s.classString(Z));if(X.constructor!==cA)throw new _(`the promise constructor cannot be invoked directly - - See http://goo.gl/MqrFmX -`)}function cA(X){this._bitField=0,this._fulfillmentHandler0=void 0,this._rejectionHandler0=void 0,this._promise0=void 0,this._receiver0=void 0,X!==O&&(oA(this,X),this._resolveFromExecutor(X)),this._promiseCreated(),this._fireEvent("promiseCreated",this)}cA.prototype.toString=function(){return"[object Promise]"},cA.prototype.caught=cA.prototype.catch=function(X){var Z=arguments.length;if(Z>1){var K=new Array(Z-1),J=0,sA;for(sA=0;sA0&&typeof X!="function"&&typeof Z!="function"){var K=".then() only accepts functions but was passed: "+s.classString(X);arguments.length>1&&(K+=", "+s.classString(Z)),this._warn(K)}return this._then(X,Z,void 0,void 0,void 0)},cA.prototype.done=function(X,Z){var K=this._then(X,Z,void 0,void 0,void 0);K._setIsFinal()},cA.prototype.spread=function(X){return typeof X!="function"?t("expecting a function but got "+s.classString(X)):this.all()._then(X,void 0,void 0,k,void 0)},cA.prototype.toJSON=function(){var X={isFulfilled:!1,isRejected:!1,fulfillmentValue:void 0,rejectionReason:void 0};return this.isFulfilled()?(X.fulfillmentValue=this.value(),X.isFulfilled=!0):this.isRejected()&&(X.rejectionReason=this.reason(),X.isRejected=!0),X},cA.prototype.all=function(){return arguments.length>0&&this._warn(".all() was passed arguments but it does not take any"),new T(this).promise()},cA.prototype.error=function(X){return this.caught(s.originatesFromRejection,X)},cA.getNewLibraryCopy=aaA.exports,cA.is=function(X){return X instanceof cA},cA.fromNode=cA.fromCallback=function(X){var Z=new cA(O);Z._captureStackTrace();var K=arguments.length>1?!!Object(arguments[1]).multiArgs:!1,J=pA(X)(wA(Z,K));return J===IA&&Z._rejectCallback(J.e,!0),Z._isFateSealed()||Z._setAsyncGuaranteed(),Z},cA.all=function(X){return new T(X).promise()},cA.cast=function(X){var Z=H(X);return Z instanceof cA||(Z=new cA(O),Z._captureStackTrace(),Z._setFulfilled(),Z._rejectionHandler0=X),Z},cA.resolve=cA.fulfilled=cA.cast,cA.reject=cA.rejected=function(X){var Z=new cA(O);return Z._captureStackTrace(),Z._rejectCallback(X,!0),Z},cA.setScheduler=function(X){if(typeof X!="function")throw new _("expecting a function but got "+s.classString(X));return B.setScheduler(X)},cA.prototype._then=function(X,Z,K,J,sA){var uA=sA!==void 0,BA=uA?sA:new cA(O),CA=this._target(),z=CA._bitField;uA||(BA._propagateFrom(this,3),BA._captureStackTrace(),J===void 0&&this._bitField&2097152&&(z&50397184?J=this._boundValue():J=CA===this?void 0:this._boundTo),this._fireEvent("promiseChained",this,BA));var AA=g();if(z&50397184){var iA,_A,fA=CA._settlePromiseCtx;z&33554432?(_A=CA._rejectionHandler0,iA=X):z&16777216?(_A=CA._fulfillmentHandler0,iA=Z,CA._unsetRejectionIsUnhandled()):(fA=CA._settlePromiseLateCancellationObserver,_A=new x("late cancellation observer"),CA._attachExtraTrace(_A),iA=Z),B.invoke(fA,CA,{handler:AA===null?iA:typeof iA=="function"&&s.domainBind(AA,iA),promise:BA,receiver:J,value:_A})}else CA._addCallbacks(X,Z,BA,J,AA);return BA},cA.prototype._length=function(){return this._bitField&65535},cA.prototype._isFateSealed=function(){return(this._bitField&117506048)!==0},cA.prototype._isFollowing=function(){return(this._bitField&67108864)===67108864},cA.prototype._setLength=function(X){this._bitField=this._bitField&-65536|X&65535},cA.prototype._setFulfilled=function(){this._bitField=this._bitField|33554432,this._fireEvent("promiseFulfilled",this)},cA.prototype._setRejected=function(){this._bitField=this._bitField|16777216,this._fireEvent("promiseRejected",this)},cA.prototype._setFollowing=function(){this._bitField=this._bitField|67108864,this._fireEvent("promiseResolved",this)},cA.prototype._setIsFinal=function(){this._bitField=this._bitField|4194304},cA.prototype._isFinal=function(){return(this._bitField&4194304)>0},cA.prototype._unsetCancelled=function(){this._bitField=this._bitField&-65537},cA.prototype._setCancelled=function(){this._bitField=this._bitField|65536,this._fireEvent("promiseCancelled",this)},cA.prototype._setWillBeCancelled=function(){this._bitField=this._bitField|8388608},cA.prototype._setAsyncGuaranteed=function(){B.hasCustomScheduler()||(this._bitField=this._bitField|134217728)},cA.prototype._receiverAt=function(X){var Z=X===0?this._receiver0:this[X*4-4+3];if(Z!==o)return Z===void 0&&this._isBound()?this._boundValue():Z},cA.prototype._promiseAt=function(X){return this[X*4-4+2]},cA.prototype._fulfillmentHandlerAt=function(X){return this[X*4-4+0]},cA.prototype._rejectionHandlerAt=function(X){return this[X*4-4+1]},cA.prototype._boundValue=function(){},cA.prototype._migrateCallback0=function(X){var Z=X._bitField,K=X._fulfillmentHandler0,J=X._rejectionHandler0,sA=X._promise0,uA=X._receiverAt(0);uA===void 0&&(uA=o),this._addCallbacks(K,J,sA,uA,null)},cA.prototype._migrateCallbackAt=function(X,Z){var K=X._fulfillmentHandlerAt(Z),J=X._rejectionHandlerAt(Z),sA=X._promiseAt(Z),uA=X._receiverAt(Z);uA===void 0&&(uA=o),this._addCallbacks(K,J,sA,uA,null)},cA.prototype._addCallbacks=function(X,Z,K,J,sA){var uA=this._length();if(uA>=65535-4&&(uA=0,this._setLength(0)),uA===0)this._promise0=K,this._receiver0=J,typeof X=="function"&&(this._fulfillmentHandler0=sA===null?X:s.domainBind(sA,X)),typeof Z=="function"&&(this._rejectionHandler0=sA===null?Z:s.domainBind(sA,Z));else{var BA=uA*4-4;this[BA+2]=K,this[BA+3]=J,typeof X=="function"&&(this[BA+0]=sA===null?X:s.domainBind(sA,X)),typeof Z=="function"&&(this[BA+1]=sA===null?Z:s.domainBind(sA,Z))}return this._setLength(uA+1),uA},cA.prototype._proxy=function(X,Z){this._addCallbacks(void 0,void 0,Z,X,null)},cA.prototype._resolveCallback=function(X,Z){if(!(this._bitField&117506048)){if(X===this)return this._rejectCallback(A(),!1);var K=H(X,this);if(!(K instanceof cA))return this._fulfill(X);Z&&this._propagateFrom(K,2);var J=K._target();if(J===this){this._reject(A());return}var sA=J._bitField;if(sA&50397184)if(sA&33554432)this._fulfill(J._value());else if(sA&16777216)this._reject(J._reason());else{var CA=new x("late cancellation observer");J._attachExtraTrace(CA),this._reject(CA)}else{var uA=this._length();uA>0&&J._migrateCallback0(this);for(var BA=1;BA>>16)){if(X===this){var K=A();return this._attachExtraTrace(K),this._reject(K)}this._setFulfilled(),this._rejectionHandler0=X,(Z&65535)>0&&(Z&134217728?this._settlePromises():B.settlePromises(this))}},cA.prototype._reject=function(X){var Z=this._bitField;if(!((Z&117506048)>>>16)){if(this._setRejected(),this._fulfillmentHandler0=X,this._isFinal())return B.fatalError(X,s.isNode);(Z&65535)>0?B.settlePromises(this):this._ensurePossibleRejectionHandled()}},cA.prototype._fulfillPromises=function(X,Z){for(var K=1;K0){if(X&16842752){var K=this._fulfillmentHandler0;this._settlePromise0(this._rejectionHandler0,K,X),this._rejectPromises(Z,K)}else{var J=this._rejectionHandler0;this._settlePromise0(this._fulfillmentHandler0,J,X),this._fulfillPromises(Z,J)}this._setLength(0)}this._clearCancellationData()},cA.prototype._settledValue=function(){var X=this._bitField;if(X&33554432)return this._rejectionHandler0;if(X&16777216)return this._fulfillmentHandler0};function eA(X){this.promise._resolveCallback(X)}function Y(X){this.promise._rejectCallback(X,!1)}cA.defer=cA.pending=function(){y.deprecated("Promise.defer","new Promise");var X=new cA(O);return{promise:X,resolve:eA,reject:Y}},s.notEnumerableProp(cA,"_makeSelfResolutionError",A),R3A()(cA,O,H,t,y),N3A()(cA,O,H,y),G3A()(cA,T,t,y),U3A()(cA),j3A()(cA),J3A()(cA,T,H,O,B,g),cA.Promise=cA,cA.version="3.4.7",V3A()(cA,T,t,H,O,y),K3A()(cA),Z3A()(cA,t,H,F,O,y),A7A()(cA,O,y),r7A()(cA,t,O,H,i,y),i7A()(cA),a7A()(cA,O),s7A()(cA,T,H,t),l7A()(cA,O,H,t),g7A()(cA,T,t,H,O,y),p7A()(cA,T,y),f7A()(cA,T,t),h7A()(cA,O),m7A()(cA,O),_7A()(cA),s.toFastProperties(cA),s.toFastProperties(cA.prototype);function q(X){var Z=new cA(O);Z._fulfillmentHandler0=X,Z._rejectionHandler0=X,Z._promise0=X,Z._receiver0=X}return q({a:1}),q({b:2}),q({c:3}),q(1),q(function(){}),q(void 0),q(!1),q(new cA(O)),y.setBounds(p.firstLineError,s.lastLineError),cA}});var rw=GA((IZt,y7A)=>{"use strict";var v7A;typeof Promise<"u"&&(v7A=Promise);function xnr(){try{Promise===jN&&(Promise=v7A)}catch{}return jN}var jN=w7A()();jN.noConflict=xnr;y7A.exports=jN});var Pb=GA((bZt,C7A)=>{var Nb=require("buffer").Buffer;Nb.from===void 0&&(Nb.from=function(A,r,t){return new Nb(A,r,t)},Nb.alloc=Nb.from);C7A.exports=Nb});var $6=GA((OZt,oaA)=>{"use strict";typeof process>"u"||!process.version||process.version.indexOf("v0.")===0||process.version.indexOf("v1.")===0&&process.version.indexOf("v1.8.")!==0?oaA.exports={nextTick:Hnr}:oaA.exports=process;function Hnr(A,r,t,i){if(typeof A!="function")throw new TypeError('"callback" argument must be a function');var o=arguments.length,s,g;switch(o){case 0:case 1:return process.nextTick(A);case 2:return process.nextTick(function(){A.call(null,r)});case 3:return process.nextTick(function(){A.call(null,r,t)});case 4:return process.nextTick(function(){A.call(null,r,t,i)});default:for(s=new Array(o-1),g=0;g{var Snr={}.toString;I7A.exports=Array.isArray||function(A){return Snr.call(A)=="[object Array]"}});var saA=GA((kZt,O7A)=>{O7A.exports=require("stream")});var A8=GA((caA,k7A)=>{var WN=require("buffer"),T4=WN.Buffer;function M7A(A,r){for(var t in A)r[t]=A[t]}T4.from&&T4.alloc&&T4.allocUnsafe&&T4.allocUnsafeSlow?k7A.exports=WN:(M7A(WN,caA),caA.Buffer=Gb);function Gb(A,r,t){return T4(A,r,t)}M7A(T4,Gb);Gb.from=function(A,r,t){if(typeof A=="number")throw new TypeError("Argument must not be a number");return T4(A,r,t)};Gb.alloc=function(A,r,t){if(typeof A!="number")throw new TypeError("Argument must be a number");var i=T4(A);return r!==void 0?typeof t=="string"?i.fill(r,t):i.fill(r):i.fill(0),i};Gb.allocUnsafe=function(A){if(typeof A!="number")throw new TypeError("Argument must be a number");return T4(A)};Gb.allocUnsafeSlow=function(A){if(typeof A!="number")throw new TypeError("Argument must be a number");return WN.SlowBuffer(A)}});var Yb=GA(If=>{function Fnr(A){return Array.isArray?Array.isArray(A):JN(A)==="[object Array]"}If.isArray=Fnr;function Rnr(A){return typeof A=="boolean"}If.isBoolean=Rnr;function Tnr(A){return A===null}If.isNull=Tnr;function Nnr(A){return A==null}If.isNullOrUndefined=Nnr;function Pnr(A){return typeof A=="number"}If.isNumber=Pnr;function Gnr(A){return typeof A=="string"}If.isString=Gnr;function Ynr(A){return typeof A=="symbol"}If.isSymbol=Ynr;function Unr(A){return A===void 0}If.isUndefined=Unr;function Lnr(A){return JN(A)==="[object RegExp]"}If.isRegExp=Lnr;function jnr(A){return typeof A=="object"&&A!==null}If.isObject=jnr;function Wnr(A){return JN(A)==="[object Date]"}If.isDate=Wnr;function Jnr(A){return JN(A)==="[object Error]"||A instanceof Error}If.isError=Jnr;function qnr(A){return typeof A=="function"}If.isFunction=qnr;function Vnr(A){return A===null||typeof A=="boolean"||typeof A=="number"||typeof A=="string"||typeof A=="symbol"||typeof A>"u"}If.isPrimitive=Vnr;If.isBuffer=require("buffer").Buffer.isBuffer;function JN(A){return Object.prototype.toString.call(A)}});var x7A=GA((HZt,laA)=>{typeof Object.create=="function"?laA.exports=function(r,t){t&&(r.super_=t,r.prototype=Object.create(t.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}))}:laA.exports=function(r,t){if(t){r.super_=t;var i=function(){};i.prototype=t.prototype,r.prototype=new i,r.prototype.constructor=r}}});var dp=GA((SZt,gaA)=>{try{if(uaA=require("util"),typeof uaA.inherits!="function")throw"";gaA.exports=uaA.inherits}catch{gaA.exports=x7A()}var uaA});var S7A=GA((FZt,daA)=>{"use strict";function znr(A,r){if(!(A instanceof r))throw new TypeError("Cannot call a class as a function")}var H7A=A8().Buffer,e8=require("util");function Knr(A,r,t){A.copy(r,t)}daA.exports=function(){function A(){znr(this,A),this.head=null,this.tail=null,this.length=0}return A.prototype.push=function(t){var i={data:t,next:null};this.length>0?this.tail.next=i:this.head=i,this.tail=i,++this.length},A.prototype.unshift=function(t){var i={data:t,next:this.head};this.length===0&&(this.tail=i),this.head=i,++this.length},A.prototype.shift=function(){if(this.length!==0){var t=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,t}},A.prototype.clear=function(){this.head=this.tail=null,this.length=0},A.prototype.join=function(t){if(this.length===0)return"";for(var i=this.head,o=""+i.data;i=i.next;)o+=t+i.data;return o},A.prototype.concat=function(t){if(this.length===0)return H7A.alloc(0);for(var i=H7A.allocUnsafe(t>>>0),o=this.head,s=0;o;)Knr(o.data,i,s),s+=o.data.length,o=o.next;return i},A}();e8&&e8.inspect&&e8.inspect.custom&&(daA.exports.prototype[e8.inspect.custom]=function(){var A=e8.inspect({length:this.length});return this.constructor.name+" "+A})});var paA=GA((RZt,F7A)=>{"use strict";var qN=$6();function Xnr(A,r){var t=this,i=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return i||o?(r?r(A):A&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,qN.nextTick(VN,this,A)):qN.nextTick(VN,this,A)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(A||null,function(s){!r&&s?t._writableState?t._writableState.errorEmitted||(t._writableState.errorEmitted=!0,qN.nextTick(VN,t,s)):qN.nextTick(VN,t,s):r&&r(s)}),this)}function Znr(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function VN(A,r){A.emit("error",r)}F7A.exports={destroy:Xnr,undestroy:Znr}});var T7A=GA((TZt,R7A)=>{R7A.exports=require("util").deprecate});var faA=GA((NZt,W7A)=>{"use strict";var ky=$6();W7A.exports=Rd;function P7A(A){var r=this;this.next=null,this.entry=null,this.finish=function(){far(r,A)}}var $nr=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:ky.nextTick,Ub;Rd.WritableState=t8;var G7A=Object.create(Yb());G7A.inherits=dp();var Aar={deprecate:T7A()},Y7A=saA(),KN=A8().Buffer,ear=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function rar(A){return KN.from(A)}function tar(A){return KN.isBuffer(A)||A instanceof ear}var U7A=paA();G7A.inherits(Rd,Y7A);function iar(){}function t8(A,r){Ub=Ub||xy(),A=A||{};var t=r instanceof Ub;this.objectMode=!!A.objectMode,t&&(this.objectMode=this.objectMode||!!A.writableObjectMode);var i=A.highWaterMark,o=A.writableHighWaterMark,s=this.objectMode?16:16*1024;i||i===0?this.highWaterMark=i:t&&(o||o===0)?this.highWaterMark=o:this.highWaterMark=s,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var g=A.decodeStrings===!1;this.decodeStrings=!g,this.defaultEncoding=A.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(E){uar(r,E)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new P7A(this)}t8.prototype.getBuffer=function(){for(var r=this.bufferedRequest,t=[];r;)t.push(r),r=r.next;return t};(function(){try{Object.defineProperty(t8.prototype,"buffer",{get:Aar.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}})();var zN;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(zN=Function.prototype[Symbol.hasInstance],Object.defineProperty(Rd,Symbol.hasInstance,{value:function(A){return zN.call(this,A)?!0:this!==Rd?!1:A&&A._writableState instanceof t8}})):zN=function(A){return A instanceof this};function Rd(A){if(Ub=Ub||xy(),!zN.call(Rd,this)&&!(this instanceof Ub))return new Rd(A);this._writableState=new t8(A,this),this.writable=!0,A&&(typeof A.write=="function"&&(this._write=A.write),typeof A.writev=="function"&&(this._writev=A.writev),typeof A.destroy=="function"&&(this._destroy=A.destroy),typeof A.final=="function"&&(this._final=A.final)),Y7A.call(this)}Rd.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))};function nar(A,r){var t=new Error("write after end");A.emit("error",t),ky.nextTick(r,t)}function aar(A,r,t,i){var o=!0,s=!1;return t===null?s=new TypeError("May not write null values to stream"):typeof t!="string"&&t!==void 0&&!r.objectMode&&(s=new TypeError("Invalid non-string/buffer chunk")),s&&(A.emit("error",s),ky.nextTick(i,s),o=!1),o}Rd.prototype.write=function(A,r,t){var i=this._writableState,o=!1,s=!i.objectMode&&tar(A);return s&&!KN.isBuffer(A)&&(A=rar(A)),typeof r=="function"&&(t=r,r=null),s?r="buffer":r||(r=i.defaultEncoding),typeof t!="function"&&(t=iar),i.ended?nar(this,t):(s||aar(this,i,A,t))&&(i.pendingcb++,o=sar(this,i,s,A,r,t)),o};Rd.prototype.cork=function(){var A=this._writableState;A.corked++};Rd.prototype.uncork=function(){var A=this._writableState;A.corked&&(A.corked--,!A.writing&&!A.corked&&!A.bufferProcessing&&A.bufferedRequest&&L7A(this,A))};Rd.prototype.setDefaultEncoding=function(r){if(typeof r=="string"&&(r=r.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((r+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+r);return this._writableState.defaultEncoding=r,this};function oar(A,r,t){return!A.objectMode&&A.decodeStrings!==!1&&typeof r=="string"&&(r=KN.from(r,t)),r}Object.defineProperty(Rd.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function sar(A,r,t,i,o,s){if(!t){var g=oar(r,i,o);i!==g&&(t=!0,o="buffer",i=g)}var E=r.objectMode?1:i.length;r.length+=E;var p=r.length{"use strict";var J7A=$6(),Bar=Object.keys||function(A){var r=[];for(var t in A)r.push(t);return r};z7A.exports=N4;var q7A=Object.create(Yb());q7A.inherits=dp();var V7A=QaA(),haA=faA();q7A.inherits(N4,V7A);for(BaA=Bar(haA.prototype),XN=0;XN{"use strict";var DaA=A8().Buffer,K7A=DaA.isEncoding||function(A){switch(A=""+A,A&&A.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function mar(A){if(!A)return"utf8";for(var r;;)switch(A){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return A;default:if(r)return;A=(""+A).toLowerCase(),r=!0}}function Dar(A){var r=mar(A);if(typeof r!="string"&&(DaA.isEncoding===K7A||!K7A(A)))throw new Error("Unknown encoding: "+A);return r||A}X7A.StringDecoder=i8;function i8(A){this.encoding=Dar(A);var r;switch(this.encoding){case"utf16le":this.text=bar,this.end=Oar,r=4;break;case"utf8":this.fillLast=yar,r=4;break;case"base64":this.text=Mar,this.end=kar,r=3;break;default:this.write=xar,this.end=Har;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=DaA.allocUnsafe(r)}i8.prototype.write=function(A){if(A.length===0)return"";var r,t;if(this.lastNeed){if(r=this.fillLast(A),r===void 0)return"";t=this.lastNeed,this.lastNeed=0}else t=0;return t>5===6?2:A>>4===14?3:A>>3===30?4:A>>6===2?-1:-2}function _ar(A,r,t){var i=r.length-1;if(i=0?(o>0&&(A.lastNeed=o-1),o):--i=0?(o>0&&(A.lastNeed=o-2),o):--i=0?(o>0&&(o===2?o=0:A.lastNeed=o-3),o):0))}function war(A,r,t){if((r[0]&192)!==128)return A.lastNeed=0,"\uFFFD";if(A.lastNeed>1&&r.length>1){if((r[1]&192)!==128)return A.lastNeed=1,"\uFFFD";if(A.lastNeed>2&&r.length>2&&(r[2]&192)!==128)return A.lastNeed=2,"\uFFFD"}}function yar(A){var r=this.lastTotal-this.lastNeed,t=war(this,A,r);if(t!==void 0)return t;if(this.lastNeed<=A.length)return A.copy(this.lastChar,r,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);A.copy(this.lastChar,r,0,A.length),this.lastNeed-=A.length}function Car(A,r){var t=_ar(this,A,r);if(!this.lastNeed)return A.toString("utf8",r);this.lastTotal=t;var i=A.length-(t-this.lastNeed);return A.copy(this.lastChar,0,i),A.toString("utf8",r,i)}function Iar(A){var r=A&&A.length?this.write(A):"";return this.lastNeed?r+"\uFFFD":r}function bar(A,r){if((A.length-r)%2===0){var t=A.toString("utf16le",r);if(t){var i=t.charCodeAt(t.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=A[A.length-2],this.lastChar[1]=A[A.length-1],t.slice(0,-1)}return t}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=A[A.length-1],A.toString("utf16le",r,A.length-1)}function Oar(A){var r=A&&A.length?this.write(A):"";if(this.lastNeed){var t=this.lastTotal-this.lastNeed;return r+this.lastChar.toString("utf16le",0,t)}return r}function Mar(A,r){var t=(A.length-r)%3;return t===0?A.toString("base64",r):(this.lastNeed=3-t,this.lastTotal=3,t===1?this.lastChar[0]=A[A.length-1]:(this.lastChar[0]=A[A.length-2],this.lastChar[1]=A[A.length-1]),A.toString("base64",r,A.length-t))}function kar(A){var r=A&&A.length?this.write(A):"";return this.lastNeed?r+this.lastChar.toString("base64",0,3-this.lastNeed):r}function xar(A){return A.toString(this.encoding)}function Har(A){return A&&A.length?this.write(A):""}});var QaA=GA((UZt,cOA)=>{"use strict";var jb=$6();cOA.exports=qu;var Sar=b7A(),n8;qu.ReadableState=iOA;var YZt=require("events").EventEmitter,eOA=function(A,r){return A.listeners(r).length},IaA=saA(),a8=A8().Buffer,Far=(typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){};function Rar(A){return a8.from(A)}function Tar(A){return a8.isBuffer(A)||A instanceof Far}var rOA=Object.create(Yb());rOA.inherits=dp();var waA=require("util"),ml=void 0;waA&&waA.debuglog?ml=waA.debuglog("stream"):ml=function(){};var Nar=S7A(),tOA=paA(),Lb;rOA.inherits(qu,IaA);var vaA=["error","close","destroy","pause","resume"];function Par(A,r,t){if(typeof A.prependListener=="function")return A.prependListener(r,t);!A._events||!A._events[r]?A.on(r,t):Sar(A._events[r])?A._events[r].unshift(t):A._events[r]=[t,A._events[r]]}function iOA(A,r){n8=n8||xy(),A=A||{};var t=r instanceof n8;this.objectMode=!!A.objectMode,t&&(this.objectMode=this.objectMode||!!A.readableObjectMode);var i=A.highWaterMark,o=A.readableHighWaterMark,s=this.objectMode?16:16*1024;i||i===0?this.highWaterMark=i:t&&(o||o===0)?this.highWaterMark=o:this.highWaterMark=s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new Nar,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=A.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,A.encoding&&(Lb||(Lb=_aA().StringDecoder),this.decoder=new Lb(A.encoding),this.encoding=A.encoding)}function qu(A){if(n8=n8||xy(),!(this instanceof qu))return new qu(A);this._readableState=new iOA(A,this),this.readable=!0,A&&(typeof A.read=="function"&&(this._read=A.read),typeof A.destroy=="function"&&(this._destroy=A.destroy)),IaA.call(this)}Object.defineProperty(qu.prototype,"destroyed",{get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(A){this._readableState&&(this._readableState.destroyed=A)}});qu.prototype.destroy=tOA.destroy;qu.prototype._undestroy=tOA.undestroy;qu.prototype._destroy=function(A,r){this.push(null),r(A)};qu.prototype.push=function(A,r){var t=this._readableState,i;return t.objectMode?i=!0:typeof A=="string"&&(r=r||t.defaultEncoding,r!==t.encoding&&(A=a8.from(A,r),r=""),i=!0),nOA(this,A,r,!1,i)};qu.prototype.unshift=function(A){return nOA(this,A,null,!0,!1)};function nOA(A,r,t,i,o){var s=A._readableState;if(r===null)s.reading=!1,Lar(A,s);else{var g;o||(g=Gar(s,r)),g?A.emit("error",g):s.objectMode||r&&r.length>0?(typeof r!="string"&&!s.objectMode&&Object.getPrototypeOf(r)!==a8.prototype&&(r=Rar(r)),i?s.endEmitted?A.emit("error",new Error("stream.unshift() after end event")):yaA(A,s,r,!0):s.ended?A.emit("error",new Error("stream.push() after EOF")):(s.reading=!1,s.decoder&&!t?(r=s.decoder.write(r),s.objectMode||r.length!==0?yaA(A,s,r,!1):aOA(A,s)):yaA(A,s,r,!1))):i||(s.reading=!1)}return Yar(s)}function yaA(A,r,t,i){r.flowing&&r.length===0&&!r.sync?(A.emit("data",t),A.read(0)):(r.length+=r.objectMode?1:t.length,i?r.buffer.unshift(t):r.buffer.push(t),r.needReadable&&$N(A)),aOA(A,r)}function Gar(A,r){var t;return!Tar(r)&&typeof r!="string"&&r!==void 0&&!A.objectMode&&(t=new TypeError("Invalid non-string/buffer chunk")),t}function Yar(A){return!A.ended&&(A.needReadable||A.length=Z7A?A=Z7A:(A--,A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A++),A}function $7A(A,r){return A<=0||r.length===0&&r.ended?0:r.objectMode?1:A!==A?r.flowing&&r.length?r.buffer.head.data.length:r.length:(A>r.highWaterMark&&(r.highWaterMark=Uar(A)),A<=r.length?A:r.ended?r.length:(r.needReadable=!0,0))}qu.prototype.read=function(A){ml("read",A),A=parseInt(A,10);var r=this._readableState,t=A;if(A!==0&&(r.emittedReadable=!1),A===0&&r.needReadable&&(r.length>=r.highWaterMark||r.ended))return ml("read: emitReadable",r.length,r.ended),r.length===0&&r.ended?CaA(this):$N(this),null;if(A=$7A(A,r),A===0&&r.ended)return r.length===0&&CaA(this),null;var i=r.needReadable;ml("need readable",i),(r.length===0||r.length-A0?o=oOA(A,r):o=null,o===null?(r.needReadable=!0,A=0):r.length-=A,r.length===0&&(r.ended||(r.needReadable=!0),t!==A&&r.ended&&CaA(this)),o!==null&&this.emit("data",o),o};function Lar(A,r){if(!r.ended){if(r.decoder){var t=r.decoder.end();t&&t.length&&(r.buffer.push(t),r.length+=r.objectMode?1:t.length)}r.ended=!0,$N(A)}}function $N(A){var r=A._readableState;r.needReadable=!1,r.emittedReadable||(ml("emitReadable",r.flowing),r.emittedReadable=!0,r.sync?jb.nextTick(AOA,A):AOA(A))}function AOA(A){ml("emit readable"),A.emit("readable"),baA(A)}function aOA(A,r){r.readingMore||(r.readingMore=!0,jb.nextTick(jar,A,r))}function jar(A,r){for(var t=r.length;!r.reading&&!r.flowing&&!r.ended&&r.length1&&sOA(i.pipes,A)!==-1)&&!B&&(ml("false write response, pause",i.awaitDrain),i.awaitDrain++,_=!0),t.pause())}function O(T){ml("onerror",T),H(),A.removeListener("error",O),eOA(A,"error")===0&&A.emit("error",T)}Par(A,"error",O);function k(){A.removeListener("finish",P),H()}A.once("close",k);function P(){ml("onfinish"),A.removeListener("close",k),H()}A.once("finish",P);function H(){ml("unpipe"),t.unpipe(A)}return A.emit("pipe",t),i.flowing||(ml("pipe resume"),t.resume()),A};function War(A){return function(){var r=A._readableState;ml("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&eOA(A,"data")&&(r.flowing=!0,baA(A))}}qu.prototype.unpipe=function(A){var r=this._readableState,t={hasUnpiped:!1};if(r.pipesCount===0)return this;if(r.pipesCount===1)return A&&A!==r.pipes?this:(A||(A=r.pipes),r.pipes=null,r.pipesCount=0,r.flowing=!1,A&&A.emit("unpipe",this,t),this);if(!A){var i=r.pipes,o=r.pipesCount;r.pipes=null,r.pipesCount=0,r.flowing=!1;for(var s=0;s=r.length?(r.decoder?t=r.buffer.join(""):r.buffer.length===1?t=r.buffer.head.data:t=r.buffer.concat(r.length),r.buffer.clear()):t=zar(A,r.buffer,r.decoder),t}function zar(A,r,t){var i;return As.length?s.length:A;if(g===s.length?o+=s:o+=s.slice(0,A),A-=g,A===0){g===s.length?(++i,t.next?r.head=t.next:r.head=r.tail=null):(r.head=t,t.data=s.slice(g));break}++i}return r.length-=i,o}function Xar(A,r){var t=a8.allocUnsafe(A),i=r.head,o=1;for(i.data.copy(t),A-=i.data.length;i=i.next;){var s=i.data,g=A>s.length?s.length:A;if(s.copy(t,t.length-A,0,g),A-=g,A===0){g===s.length?(++o,i.next?r.head=i.next:r.head=r.tail=null):(r.head=i,i.data=s.slice(g));break}++o}return r.length-=o,t}function CaA(A){var r=A._readableState;if(r.length>0)throw new Error('"endReadable()" called on non-empty stream');r.endEmitted||(r.ended=!0,jb.nextTick(Zar,r,A))}function Zar(A,r){!A.endEmitted&&A.length===0&&(A.endEmitted=!0,r.readable=!1,r.emit("end"))}function sOA(A,r){for(var t=0,i=A.length;t{"use strict";gOA.exports=P4;var AP=xy(),uOA=Object.create(Yb());uOA.inherits=dp();uOA.inherits(P4,AP);function $ar(A,r){var t=this._transformState;t.transforming=!1;var i=t.writecb;if(!i)return this.emit("error",new Error("write callback called multiple times"));t.writechunk=null,t.writecb=null,r!=null&&this.push(r),i(A);var o=this._readableState;o.reading=!1,(o.needReadable||o.length{"use strict";EOA.exports=o8;var dOA=OaA(),pOA=Object.create(Yb());pOA.inherits=dp();pOA.inherits(o8,dOA);function o8(A){if(!(this instanceof o8))return new o8(A);dOA.call(this,A)}o8.prototype._transform=function(A,r,t){t(null,A)}});var e1=GA((jE,eP)=>{var A1=require("stream");process.env.READABLE_STREAM==="disable"&&A1?(eP.exports=A1,jE=eP.exports=A1.Readable,jE.Readable=A1.Readable,jE.Writable=A1.Writable,jE.Duplex=A1.Duplex,jE.Transform=A1.Transform,jE.PassThrough=A1.PassThrough,jE.Stream=A1):(jE=eP.exports=QaA(),jE.Stream=A1||jE,jE.Readable=jE,jE.Writable=faA(),jE.Duplex=xy(),jE.Transform=OaA(),jE.PassThrough=fOA())});var tP=GA((WZt,BOA)=>{var Hy=require("stream"),MaA=rw(),eor=require("util"),rP=Pb(),ror="function";(!Hy.Writable||!Hy.Writable.prototype.destroy)&&(Hy=e1());function tw(){if(!(this instanceof tw))return new tw;Hy.Duplex.call(this,{decodeStrings:!1,objectMode:!0}),this.buffer=rP.from("");var A=this;A.on("finish",function(){A.finished=!0,A.emit("chunk",!1)})}eor.inherits(tw,Hy.Duplex);tw.prototype._write=function(A,r,t){this.buffer=rP.concat([this.buffer,A]),this.cb=t,this.emit("chunk")};tw.prototype.stream=function(A,r){var t=Hy.PassThrough(),i,o=this;function s(){if(typeof o.cb===ror){var E=o.cb;return o.cb=void 0,E()}}function g(){var E;if(o.buffer&&o.buffer.length){if(typeof A=="number")E=o.buffer.slice(0,A),o.buffer=o.buffer.slice(A),A-=E.length,i=!A;else{var p=o.buffer.indexOf(A);if(p!==-1)o.match=p,r&&(p=p+A.length),E=o.buffer.slice(0,p),o.buffer=o.buffer.slice(p),i=!0;else{var B=o.buffer.length-A.length;B<=0?s():(E=o.buffer.slice(0,B),o.buffer=o.buffer.slice(B))}}E&&t.write(E,function(){(o.buffer.length===0||A.length&&o.buffer.length<=A.length)&&s()})}if(i)o.removeListener("chunk",g),t.end();else if(o.finished){o.removeListener("chunk",g),o.emit("error",new Error("FILE_ENDED"));return}}return o.on("chunk",g),g(),t};tw.prototype.pull=function(A,r){if(A===0)return MaA.resolve("");if(!isNaN(A)&&this.buffer.length>A){var t=this.buffer.slice(0,A);return this.buffer=this.buffer.slice(A),MaA.resolve(t)}var i=rP.from(""),o=this,s=Hy.Transform();s._transform=function(p,B,m){i=rP.concat([i,p]),m()};var g,E;return new MaA(function(p,B){if(g=B,E=function(m){o.__emittedError=m,B(m)},o.finished)return B(new Error("FILE_ENDED"));o.once("error",E),o.stream(A,r).on("error",B).pipe(s).on("finish",function(){p(i)}).on("error",B)}).finally(function(){o.removeListener("error",g),o.removeListener("error",E)})};tw.prototype._read=function(){};BOA.exports=tw});var QOA=GA((JZt,hOA)=>{var s8=require("stream"),tor=require("util");(!s8.Writable||!s8.Writable.prototype.destroy)&&(s8=e1());function c8(){if(!(this instanceof c8))return new c8;s8.Transform.call(this)}tor.inherits(c8,s8.Transform);c8.prototype._transform=function(A,r,t){t()};hOA.exports=c8});var nP=GA((qZt,mOA)=>{var ior=rw(),iP=require("stream"),nor=Pb();(!iP.Writable||!iP.Writable.prototype.destroy)&&(iP=e1());mOA.exports=function(A){return new ior(function(r,t){var i=[],o=iP.Transform().on("finish",function(){r(nor.concat(i))}).on("error",t);o._transform=function(s,g,E){i.push(s),E()},A.on("error",t).pipe(o)})}});var aP=GA((VZt,DOA)=>{var aor=K6();DOA.exports=function(A,r){for(var t;!t&&A&&A.length;){var i=aor.parse(A).word16lu("signature").word16lu("partsize").word64lu("uncompressedSize").word64lu("compressedSize").word64lu("offset").word64lu("disknum").vars;i.signature===1?t=i:A=A.slice(i.partsize+4)}return t=t||{},r.compressedSize===4294967295&&(r.compressedSize=t.compressedSize),r.uncompressedSize===4294967295&&(r.uncompressedSize=t.uncompressedSize),r.offsetToLocalFileHeader===4294967295&&(r.offsetToLocalFileHeader=t.offset),t}});var oP=GA((zZt,_OA)=>{_OA.exports=function(r,t){let i=r&31,o=r>>5&15,s=(r>>9&127)+1980,g=t?(t&31)*2:0,E=t?t>>5&63:0,p=t?t>>11:0;return new Date(Date.UTC(s,o-1,i,p,E,g))}});var sP=GA((KZt,COA)=>{var oor=require("util"),sor=require("zlib"),l8=require("stream"),u8=K6(),kaA=rw(),wOA=tP(),cor=QOA(),lor=nP(),uor=aP(),vOA=Pb(),gor=oP();(!l8.Writable||!l8.Writable.prototype.destroy)&&(l8=e1());var yOA=vOA.alloc(4);yOA.writeUInt32LE(101010256,0);function N0(A){if(!(this instanceof N0))return new N0(A);var r=this;r._opts=A||{verbose:!1},wOA.call(r,r._opts),r.on("finish",function(){r.emit("end"),r.emit("close")}),r._readRecord().catch(function(t){(!r.__emittedError||r.__emittedError!==t)&&r.emit("error",t)})}oor.inherits(N0,wOA);N0.prototype._readRecord=function(){var A=this;return A.pull(4).then(function(r){if(r.length!==0){var t=r.readUInt32LE(0);if(t===875721283)return A._readCrxHeader();if(t===67324752)return A._readFile();if(t===33639248)return A.reachedCD=!0,A._readCentralDirectoryFileHeader();if(t===101010256)return A._readEndOfCentralDirectoryRecord();if(A.reachedCD){var i=!0;return A.pull(yOA,i).then(function(){return A._readEndOfCentralDirectoryRecord()})}else A.emit("error",new Error("invalid signature: 0x"+t.toString(16)))}})};N0.prototype._readCrxHeader=function(){var A=this;return A.pull(12).then(function(r){return A.crxHeader=u8.parse(r).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars,A.pull(A.crxHeader.pubKeyLength+A.crxHeader.signatureLength)}).then(function(r){return A.crxHeader.publicKey=r.slice(0,A.crxHeader.pubKeyLength),A.crxHeader.signature=r.slice(A.crxHeader.pubKeyLength),A.emit("crx-header",A.crxHeader),A._readRecord()})};N0.prototype._readFile=function(){var A=this;return A.pull(26).then(function(r){var t=u8.parse(r).word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars;return t.lastModifiedDateTime=gor(t.lastModifiedDate,t.lastModifiedTime),A.crxHeader&&(t.crxHeader=A.crxHeader),A.pull(t.fileNameLength).then(function(i){var o=i.toString("utf8"),s=l8.PassThrough(),g=!1;return s.autodrain=function(){g=!0;var E=s.pipe(cor());return E.promise=function(){return new kaA(function(p,B){E.on("finish",p),E.on("error",B)})},E},s.buffer=function(){return lor(s)},s.path=o,s.props={},s.props.path=o,s.props.pathBuffer=i,s.props.flags={isUnicode:(t.flags&2048)!=0},s.type=t.uncompressedSize===0&&/[\/\\]$/.test(o)?"Directory":"File",A._opts.verbose&&(s.type==="Directory"?console.log(" creating:",o):s.type==="File"&&(t.compressionMethod===0?console.log(" extracting:",o):console.log(" inflating:",o))),A.pull(t.extraFieldLength).then(function(E){var p=uor(E,t);s.vars=t,s.extra=p,A._opts.forceStream?A.push(s):(A.emit("entry",s),(A._readableState.pipesCount||A._readableState.pipes&&A._readableState.pipes.length)&&A.push(s)),A._opts.verbose&&console.log({filename:o,vars:t,extra:p});var B=!(t.flags&8)||t.compressedSize>0,m;s.__autodraining=g;var _=t.compressionMethod&&!g?sor.createInflateRaw():l8.PassThrough();return B?(s.size=t.uncompressedSize,m=t.compressedSize):(m=vOA.alloc(4),m.writeUInt32LE(134695760,0)),new kaA(function(x,O){A.stream(m).pipe(_).on("error",function(k){A.emit("error",k)}).pipe(s).on("finish",function(){return B?A._readRecord().then(x).catch(O):A._processDataDescriptor(s).then(x).catch(O)})})})})})};N0.prototype._processDataDescriptor=function(A){var r=this;return r.pull(16).then(function(t){var i=u8.parse(t).word32lu("dataDescriptorSignature").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").vars;return A.size=i.uncompressedSize,r._readRecord()})};N0.prototype._readCentralDirectoryFileHeader=function(){var A=this;return A.pull(42).then(function(r){var t=u8.parse(r).word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars;return A.pull(t.fileNameLength).then(function(i){return t.fileName=i.toString("utf8"),A.pull(t.extraFieldLength)}).then(function(i){return A.pull(t.fileCommentLength)}).then(function(i){return A._readRecord()})})};N0.prototype._readEndOfCentralDirectoryRecord=function(){var A=this;return A.pull(18).then(function(r){var t=u8.parse(r).word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars;return A.pull(t.commentLength).then(function(i){i=i.toString("utf8"),A.end(),A.push(null)})})};N0.prototype.promise=function(){var A=this;return new kaA(function(r,t){A.on("finish",r),A.on("error",t)})};COA.exports=N0});var SaA=GA((XZt,HaA)=>{"use strict";var xaA=e1();function Wb(A,r,t){typeof t>"u"&&(t=r,r=A,A=null),xaA.Duplex.call(this,A),typeof t.read!="function"&&(t=new xaA.Readable(A).wrap(t)),this._writable=r,this._readable=t,this._waiting=!1;var i=this;r.once("finish",function(){i.end()}),this.once("finish",function(){r.end()}),t.on("readable",function(){i._waiting&&(i._waiting=!1,i._read())}),t.once("end",function(){i.push(null)}),(!A||typeof A.bubbleErrors>"u"||A.bubbleErrors)&&(r.on("error",function(o){i.emit("error",o)}),t.on("error",function(o){i.emit("error",o)}))}Wb.prototype=Object.create(xaA.Duplex.prototype,{constructor:{value:Wb}});Wb.prototype._write=function(r,t,i){this._writable.write(r,t,i)};Wb.prototype._read=function(){for(var r,t=0;(r=this._readable.read())!==null;)this.push(r),t++;t===0&&(this._waiting=!0)};HaA.exports=function(r,t,i){return new Wb(r,t,i)};HaA.exports.DuplexWrapper=Wb});var bOA=GA((ZZt,IOA)=>{var Jb=require("stream"),dor=sP(),por=SaA(),Eor=nP();(!Jb.Writable||!Jb.Writable.prototype.destroy)&&(Jb=e1());function Bor(A,r){var t=Jb.PassThrough({objectMode:!0}),i=Jb.PassThrough(),o=Jb.Transform({objectMode:!0}),s=A instanceof RegExp?A:A&&new RegExp(A),g;o._transform=function(p,B,m){if(g||s&&!s.exec(p.path))return p.autodrain(),m();g=!0,E.emit("entry",p),p.on("error",function(_){i.emit("error",_)}),p.pipe(i).on("error",function(_){m(_)}).on("finish",function(_){m(null,_)})},t.pipe(dor(r)).on("error",function(p){i.emit("error",p)}).pipe(o).on("error",Object).on("finish",function(){g?i.end():i.emit("error",new Error("PATTERN_NOT_FOUND"))});var E=por(t,i);return E.buffer=function(){return Eor(i)},E}IOA.exports=Bor});var cP=GA(($Zt,MOA)=>{MOA.exports=iw;var FaA=require("stream").Stream,hor=dp();function iw(){FaA.call(this)}hor(iw,FaA);iw.prototype.on=function(A,r){return A==="ready"&&this.ready?process.nextTick(r.bind(this)):FaA.prototype.on.call(this,A,r),this};iw.prototype.abort=function(){this._aborted=!0,this.emit("abort")};iw.prototype.destroy=function(){};iw.prototype.warn=function(A,r){var t=this,i=OOA(A,r,t);t.listeners("warn")?t.emit("warn",i):console.error(`%s %s -path = %s -syscall = %s -fstream_type = %s -fstream_path = %s -fstream_unc_path = %s -fstream_class = %s -fstream_stack = -%s -`,r||"UNKNOWN",i.stack,i.path,i.syscall,i.fstream_type,i.fstream_path,i.fstream_unc_path,i.fstream_class,i.fstream_stack.join(` -`))};iw.prototype.info=function(A,r){this.emit("info",A,r)};iw.prototype.error=function(A,r,t){var i=OOA(A,r,this);if(t)throw i;this.emit("error",i)};function OOA(A,r,t){return A instanceof Error||(A=new Error(A)),A.code=A.code||r,A.path=A.path||t.path,A.fstream_type=A.fstream_type||t.type,A.fstream_path=A.fstream_path||t.path,t._path!==t.path&&(A.fstream_unc_path=A.fstream_unc_path||t._path),t.linkpath&&(A.fstream_linkpath=A.fstream_linkpath||t.linkpath),A.fstream_class=A.fstream_class||t.constructor.name,A.fstream_stack=A.fstream_stack||new Error().stack.split(/\n/).slice(3).map(function(i){return i.replace(/^ {4}at /,"")}),A}});var xOA=GA((A$t,kOA)=>{var nw=require("constants"),Qor=process.cwd,lP=null,mor=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return lP||(lP=Qor.call(process)),lP};try{process.cwd()}catch{}typeof process.chdir=="function"&&(RaA=process.chdir,process.chdir=function(A){lP=null,RaA.call(process,A)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,RaA));var RaA;kOA.exports=Dor;function Dor(A){nw.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&r(A),A.lutimes||t(A),A.chown=s(A.chown),A.fchown=s(A.fchown),A.lchown=s(A.lchown),A.chmod=i(A.chmod),A.fchmod=i(A.fchmod),A.lchmod=i(A.lchmod),A.chownSync=g(A.chownSync),A.fchownSync=g(A.fchownSync),A.lchownSync=g(A.lchownSync),A.chmodSync=o(A.chmodSync),A.fchmodSync=o(A.fchmodSync),A.lchmodSync=o(A.lchmodSync),A.stat=E(A.stat),A.fstat=E(A.fstat),A.lstat=E(A.lstat),A.statSync=p(A.statSync),A.fstatSync=p(A.fstatSync),A.lstatSync=p(A.lstatSync),A.chmod&&!A.lchmod&&(A.lchmod=function(m,_,x){x&&process.nextTick(x)},A.lchmodSync=function(){}),A.chown&&!A.lchown&&(A.lchown=function(m,_,x,O){O&&process.nextTick(O)},A.lchownSync=function(){}),mor==="win32"&&(A.rename=typeof A.rename!="function"?A.rename:function(m){function _(x,O,k){var P=Date.now(),H=0;m(x,O,function T(v){if(v&&(v.code==="EACCES"||v.code==="EPERM"||v.code==="EBUSY")&&Date.now()-P<6e4){setTimeout(function(){A.stat(O,function(F,y){F&&F.code==="ENOENT"?m(x,O,T):k(v)})},H),H<100&&(H+=10);return}k&&k(v)})}return Object.setPrototypeOf&&Object.setPrototypeOf(_,m),_}(A.rename)),A.read=typeof A.read!="function"?A.read:function(m){function _(x,O,k,P,H,T){var v;if(T&&typeof T=="function"){var F=0;v=function(y,S,U){if(y&&y.code==="EAGAIN"&&F<10)return F++,m.call(A,x,O,k,P,H,v);T.apply(this,arguments)}}return m.call(A,x,O,k,P,H,v)}return Object.setPrototypeOf&&Object.setPrototypeOf(_,m),_}(A.read),A.readSync=typeof A.readSync!="function"?A.readSync:function(m){return function(_,x,O,k,P){for(var H=0;;)try{return m.call(A,_,x,O,k,P)}catch(T){if(T.code==="EAGAIN"&&H<10){H++;continue}throw T}}}(A.readSync);function r(m){m.lchmod=function(_,x,O){m.open(_,nw.O_WRONLY|nw.O_SYMLINK,x,function(k,P){if(k){O&&O(k);return}m.fchmod(P,x,function(H){m.close(P,function(T){O&&O(H||T)})})})},m.lchmodSync=function(_,x){var O=m.openSync(_,nw.O_WRONLY|nw.O_SYMLINK,x),k=!0,P;try{P=m.fchmodSync(O,x),k=!1}finally{if(k)try{m.closeSync(O)}catch{}else m.closeSync(O)}return P}}function t(m){nw.hasOwnProperty("O_SYMLINK")&&m.futimes?(m.lutimes=function(_,x,O,k){m.open(_,nw.O_SYMLINK,function(P,H){if(P){k&&k(P);return}m.futimes(H,x,O,function(T){m.close(H,function(v){k&&k(T||v)})})})},m.lutimesSync=function(_,x,O){var k=m.openSync(_,nw.O_SYMLINK),P,H=!0;try{P=m.futimesSync(k,x,O),H=!1}finally{if(H)try{m.closeSync(k)}catch{}else m.closeSync(k)}return P}):m.futimes&&(m.lutimes=function(_,x,O,k){k&&process.nextTick(k)},m.lutimesSync=function(){})}function i(m){return m&&function(_,x,O){return m.call(A,_,x,function(k){B(k)&&(k=null),O&&O.apply(this,arguments)})}}function o(m){return m&&function(_,x){try{return m.call(A,_,x)}catch(O){if(!B(O))throw O}}}function s(m){return m&&function(_,x,O,k){return m.call(A,_,x,O,function(P){B(P)&&(P=null),k&&k.apply(this,arguments)})}}function g(m){return m&&function(_,x,O){try{return m.call(A,_,x,O)}catch(k){if(!B(k))throw k}}}function E(m){return m&&function(_,x,O){typeof x=="function"&&(O=x,x=null);function k(P,H){H&&(H.uid<0&&(H.uid+=4294967296),H.gid<0&&(H.gid+=4294967296)),O&&O.apply(this,arguments)}return x?m.call(A,_,x,k):m.call(A,_,k)}}function p(m){return m&&function(_,x){var O=x?m.call(A,_,x):m.call(A,_);return O&&(O.uid<0&&(O.uid+=4294967296),O.gid<0&&(O.gid+=4294967296)),O}}function B(m){if(!m||m.code==="ENOSYS")return!0;var _=!process.getuid||process.getuid()!==0;return!!(_&&(m.code==="EINVAL"||m.code==="EPERM"))}}});var FOA=GA((e$t,SOA)=>{var HOA=require("stream").Stream;SOA.exports=_or;function _or(A){return{ReadStream:r,WriteStream:t};function r(i,o){if(!(this instanceof r))return new r(i,o);HOA.call(this);var s=this;this.path=i,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,o=o||{};for(var g=Object.keys(o),E=0,p=g.length;Ethis.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){s._read()});return}A.open(this.path,this.flags,this.mode,function(m,_){if(m){s.emit("error",m),s.readable=!1;return}s.fd=_,s.emit("open",_),s._read()})}function t(i,o){if(!(this instanceof t))return new t(i,o);HOA.call(this),this.path=i,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,o=o||{};for(var s=Object.keys(o),g=0,E=s.length;g= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=A.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var TOA=GA((r$t,ROA)=>{"use strict";ROA.exports=vor;var wor=Object.getPrototypeOf||function(A){return A.__proto__};function vor(A){if(A===null||typeof A!="object")return A;if(A instanceof Object)var r={__proto__:wor(A)};else var r=Object.create(null);return Object.getOwnPropertyNames(A).forEach(function(t){Object.defineProperty(r,t,Object.getOwnPropertyDescriptor(A,t))}),r}});var r1=GA((t$t,PaA)=>{var Dg=require("fs"),yor=xOA(),Cor=FOA(),Ior=TOA(),uP=require("util"),WE,dP;typeof Symbol=="function"&&typeof Symbol.for=="function"?(WE=Symbol.for("graceful-fs.queue"),dP=Symbol.for("graceful-fs.previous")):(WE="___graceful-fs.queue",dP="___graceful-fs.previous");function bor(){}function GOA(A,r){Object.defineProperty(A,WE,{get:function(){return r}})}var Sy=bor;uP.debuglog?Sy=uP.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(Sy=function(){var A=uP.format.apply(uP,arguments);A="GFS4: "+A.split(/\n/).join(` -GFS4: `),console.error(A)});Dg[WE]||(NOA=global[WE]||[],GOA(Dg,NOA),Dg.close=function(A){function r(t,i){return A.call(Dg,t,function(o){o||POA(),typeof i=="function"&&i.apply(this,arguments)})}return Object.defineProperty(r,dP,{value:A}),r}(Dg.close),Dg.closeSync=function(A){function r(t){A.apply(Dg,arguments),POA()}return Object.defineProperty(r,dP,{value:A}),r}(Dg.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){Sy(Dg[WE]),require("assert").equal(Dg[WE].length,0)}));var NOA;global[WE]||GOA(global,Dg[WE]);PaA.exports=TaA(Ior(Dg));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!Dg.__patched&&(PaA.exports=TaA(Dg),Dg.__patched=!0);function TaA(A){yor(A),A.gracefulify=TaA,A.createReadStream=S,A.createWriteStream=U;var r=A.readFile;A.readFile=t;function t(IA,pA,oA){return typeof pA=="function"&&(oA=pA,pA=null),cA(IA,pA,oA);function cA(eA,Y,q,X){return r(eA,Y,function(Z){Z&&(Z.code==="EMFILE"||Z.code==="ENFILE")?qb([cA,[eA,Y,q],Z,X||Date.now(),Date.now()]):typeof q=="function"&&q.apply(this,arguments)})}}var i=A.writeFile;A.writeFile=o;function o(IA,pA,oA,cA){return typeof oA=="function"&&(cA=oA,oA=null),eA(IA,pA,oA,cA);function eA(Y,q,X,Z,K){return i(Y,q,X,function(J){J&&(J.code==="EMFILE"||J.code==="ENFILE")?qb([eA,[Y,q,X,Z],J,K||Date.now(),Date.now()]):typeof Z=="function"&&Z.apply(this,arguments)})}}var s=A.appendFile;s&&(A.appendFile=g);function g(IA,pA,oA,cA){return typeof oA=="function"&&(cA=oA,oA=null),eA(IA,pA,oA,cA);function eA(Y,q,X,Z,K){return s(Y,q,X,function(J){J&&(J.code==="EMFILE"||J.code==="ENFILE")?qb([eA,[Y,q,X,Z],J,K||Date.now(),Date.now()]):typeof Z=="function"&&Z.apply(this,arguments)})}}var E=A.copyFile;E&&(A.copyFile=p);function p(IA,pA,oA,cA){return typeof oA=="function"&&(cA=oA,oA=0),eA(IA,pA,oA,cA);function eA(Y,q,X,Z,K){return E(Y,q,X,function(J){J&&(J.code==="EMFILE"||J.code==="ENFILE")?qb([eA,[Y,q,X,Z],J,K||Date.now(),Date.now()]):typeof Z=="function"&&Z.apply(this,arguments)})}}var B=A.readdir;A.readdir=_;var m=/^v[0-5]\./;function _(IA,pA,oA){typeof pA=="function"&&(oA=pA,pA=null);var cA=m.test(process.version)?function(q,X,Z,K){return B(q,eA(q,X,Z,K))}:function(q,X,Z,K){return B(q,X,eA(q,X,Z,K))};return cA(IA,pA,oA);function eA(Y,q,X,Z){return function(K,J){K&&(K.code==="EMFILE"||K.code==="ENFILE")?qb([cA,[Y,q,X],K,Z||Date.now(),Date.now()]):(J&&J.sort&&J.sort(),typeof X=="function"&&X.call(this,K,J))}}}if(process.version.substr(0,4)==="v0.8"){var x=Cor(A);T=x.ReadStream,F=x.WriteStream}var O=A.ReadStream;O&&(T.prototype=Object.create(O.prototype),T.prototype.open=v);var k=A.WriteStream;k&&(F.prototype=Object.create(k.prototype),F.prototype.open=y),Object.defineProperty(A,"ReadStream",{get:function(){return T},set:function(IA){T=IA},enumerable:!0,configurable:!0}),Object.defineProperty(A,"WriteStream",{get:function(){return F},set:function(IA){F=IA},enumerable:!0,configurable:!0});var P=T;Object.defineProperty(A,"FileReadStream",{get:function(){return P},set:function(IA){P=IA},enumerable:!0,configurable:!0});var H=F;Object.defineProperty(A,"FileWriteStream",{get:function(){return H},set:function(IA){H=IA},enumerable:!0,configurable:!0});function T(IA,pA){return this instanceof T?(O.apply(this,arguments),this):T.apply(Object.create(T.prototype),arguments)}function v(){var IA=this;wA(IA.path,IA.flags,IA.mode,function(pA,oA){pA?(IA.autoClose&&IA.destroy(),IA.emit("error",pA)):(IA.fd=oA,IA.emit("open",oA),IA.read())})}function F(IA,pA){return this instanceof F?(k.apply(this,arguments),this):F.apply(Object.create(F.prototype),arguments)}function y(){var IA=this;wA(IA.path,IA.flags,IA.mode,function(pA,oA){pA?(IA.destroy(),IA.emit("error",pA)):(IA.fd=oA,IA.emit("open",oA))})}function S(IA,pA){return new A.ReadStream(IA,pA)}function U(IA,pA){return new A.WriteStream(IA,pA)}var V=A.open;A.open=wA;function wA(IA,pA,oA,cA){return typeof oA=="function"&&(cA=oA,oA=null),eA(IA,pA,oA,cA);function eA(Y,q,X,Z,K){return V(Y,q,X,function(J,sA){J&&(J.code==="EMFILE"||J.code==="ENFILE")?qb([eA,[Y,q,X,Z],J,K||Date.now(),Date.now()]):typeof Z=="function"&&Z.apply(this,arguments)})}}return A}function qb(A){Sy("ENQUEUE",A[0].name,A[1]),Dg[WE].push(A),NaA()}var gP;function POA(){for(var A=Date.now(),r=0;r2&&(Dg[WE][r][3]=A,Dg[WE][r][4]=A);NaA()}function NaA(){if(clearTimeout(gP),gP=void 0,Dg[WE].length!==0){var A=Dg[WE].shift(),r=A[0],t=A[1],i=A[2],o=A[3],s=A[4];if(o===void 0)Sy("RETRY",r.name,t),r.apply(null,t);else if(Date.now()-o>=6e4){Sy("TIMEOUT",r.name,t);var g=t.pop();typeof g=="function"&&g.call(null,i)}else{var E=Date.now()-s,p=Math.max(s-o,1),B=Math.min(p*1.2,100);E>=B?(Sy("RETRY",r.name,t),r.apply(null,t.concat([o]))):Dg[WE].push(A)}gP===void 0&&(gP=setTimeout(NaA,0))}}});var g8=GA((i$t,YOA)=>{YOA.exports=Oor;function Oor(A){var r=["Directory","File","SymbolicLink","Link","BlockDevice","CharacterDevice","FIFO","Socket"],t;if(A.type&&r.indexOf(A.type)!==-1)return A[A.type]=!0,A.type;for(var i=0,o=r.length;i{UOA.exports=d8;var Mor=r1(),kor=dp(),GaA=Fy();kor(d8,GaA);function d8(A){var r=this;if(!(r instanceof d8))throw new Error("LinkReader must be called as constructor.");if(!(A.type==="Link"&&A.Link||A.type==="SymbolicLink"&&A.SymbolicLink))throw new Error("Non-link type "+A.type);GaA.call(r,A)}d8.prototype._stat=function(A){var r=this;Mor.readlink(r._path,function(t,i){if(t)return r.error(t);r.linkpath=r.props.linkpath=i,r.emit("linkpath",i),GaA.prototype._stat.call(r,A)})};d8.prototype._read=function(){var A=this;A._paused||A._ended||(A.emit("end"),A.emit("close"),A._ended=!0)}});var LaA=GA((a$t,WOA)=>{WOA.exports=t1;var jOA=r1(),xor=dp(),p8=require("path"),UaA=Fy(),LOA=require("assert").ok;xor(t1,UaA);function t1(A){var r=this;if(!(r instanceof t1))throw new Error("DirReader must be called as constructor.");if(A.type!=="Directory"||!A.Directory)throw new Error("Non-directory type "+A.type);r.entries=null,r._index=-1,r._paused=!1,r._length=-1,A.sort&&(this.sort=A.sort),UaA.call(this,A)}t1.prototype._getEntries=function(){var A=this;A._gotEntries||(A._gotEntries=!0,jOA.readdir(A._path,function(r,t){if(r)return A.error(r);A.entries=t,A.emit("entries",t),A._paused?A.once("resume",i):i();function i(){A._length=A.entries.length,typeof A.sort=="function"&&(A.entries=A.entries.sort(A.sort.bind(A))),A._read()}}))};t1.prototype._read=function(){var A=this;if(!A.entries)return A._getEntries();if(!(A._paused||A._currentEntry||A._aborted)){if(A._index++,A._index>=A.entries.length){A._ended||(A._ended=!0,A.emit("end"),A.emit("close"));return}var r=p8.resolve(A._path,A.entries[A._index]);LOA(r!==A._path),LOA(A.entries[A._index]),A._currentEntry=r,jOA[A.props.follow?"stat":"lstat"](r,function(t,i){if(t)return A.error(t);var o=A._proxy||A;i.path=r,i.basename=p8.basename(r),i.dirname=p8.dirname(r);var s=A.getChildProps.call(o,i);s.path=r,s.basename=p8.basename(r),s.dirname=p8.dirname(r);var g=UaA(s,i);A._currentEntry=g,g.on("pause",function(B){!A._paused&&!g._disowned&&A.pause(B)}),g.on("resume",function(B){A._paused&&!g._disowned&&A.resume(B)}),g.on("stat",function(B){A.emit("_entryStat",g,B),!g._aborted&&(g._paused?g.once("resume",function(){A.emit("entryStat",g,B)}):A.emit("entryStat",g,B))}),g.on("ready",function B(){if(A._paused)return g.pause(A),A.once("resume",B);g.type==="Socket"?A.emit("socket",g):A.emitEntry(g)});var E=!1;g.on("close",p),g.on("disown",p);function p(){E||(E=!0,A.emit("childEnd",g),A.emit("entryEnd",g),A._currentEntry=null,A._paused||A._read())}g.on("error",function(B){g._swallowErrors?(A.warn(B),g.emit("end"),g.emit("close")):A.emit("error",B)}),["child","childEnd","warn"].forEach(function(B){g.on(B,A.emit.bind(A,B))})})}};t1.prototype.disown=function(A){A.emit("beforeDisown"),A._disowned=!0,A.parent=A.root=null,A===this._currentEntry&&(this._currentEntry=null),A.emit("disown")};t1.prototype.getChildProps=function(){return{depth:this.depth+1,root:this.root||this,parent:this,follow:this.follow,filter:this.filter,sort:this.props.sort,hardlinks:this.props.hardlinks}};t1.prototype.pause=function(A){var r=this;r._paused||(A=A||r,r._paused=!0,r._currentEntry&&r._currentEntry.pause&&r._currentEntry.pause(A),r.emit("pause",A))};t1.prototype.resume=function(A){var r=this;r._paused&&(A=A||r,r._paused=!1,r.emit("resume",A),!r._paused&&(r._currentEntry?r._currentEntry.resume&&r._currentEntry.resume(A):r._read()))};t1.prototype.emitEntry=function(A){this.emit("entry",A),this.emit("child",A)}});var jaA=GA((o$t,zOA)=>{zOA.exports=Ry;var Hor=r1(),Sor=dp(),JOA=Fy(),qOA={EOF:!0},VOA={CLOSE:!0};Sor(Ry,JOA);function Ry(A){var r=this;if(!(r instanceof Ry))throw new Error("FileReader must be called as constructor.");if(!(A.type==="Link"&&A.Link||A.type==="File"&&A.File))throw new Error("Non-file type "+A.type);r._buffer=[],r._bytesEmitted=0,JOA.call(r,A)}Ry.prototype._getStream=function(){var A=this,r=A._stream=Hor.createReadStream(A._path,A.props);A.props.blksize&&(r.bufferSize=A.props.blksize),r.on("open",A.emit.bind(A,"open")),r.on("data",function(t){if(A._bytesEmitted+=t.length,t.length)A._paused||A._buffer.length?(A._buffer.push(t),A._read()):A.emit("data",t);else return}),r.on("end",function(){A._paused||A._buffer.length?(A._buffer.push(qOA),A._read()):A.emit("end"),A._bytesEmitted!==A.props.size&&A.error(`Didn't get expected byte count -expect: `+A.props.size+` -actual: `+A._bytesEmitted)}),r.on("close",function(){A._paused||A._buffer.length?(A._buffer.push(VOA),A._read()):A.emit("close")}),r.on("error",function(t){A.emit("error",t)}),A._read()};Ry.prototype._read=function(){var A=this;if(!A._paused){if(!A._stream)return A._getStream();if(A._buffer.length){for(var r=A._buffer,t=0,i=r.length;t{XOA.exports=pP;var For=dp(),KOA=Fy();For(pP,KOA);function pP(A){var r=this;if(!(r instanceof pP))throw new Error("SocketReader must be called as constructor.");if(!(A.type==="Socket"&&A.Socket))throw new Error("Non-socket type "+A.type);KOA.call(r,A)}pP.prototype._read=function(){var A=this;A._paused||A._ended||(A.emit("end"),A.emit("close"),A._ended=!0)}});var JaA=GA((c$t,$OA)=>{$OA.exports=Ty;var WaA=Fy(),Ror=g8(),Tor=dp(),Nor=r1();Tor(Ty,WaA);function Ty(A){var r=this;if(!(r instanceof Ty))throw new Error("ProxyReader must be called as constructor.");r.props=A,r._buffer=[],r.ready=!1,WaA.call(r,A)}Ty.prototype._stat=function(){var A=this,r=A.props,t=r.follow?"stat":"lstat";Nor[t](r.path,function(i,o){var s;i||!o?s="File":s=Ror(o),r[s]=!0,r.type=A.type=s,A._old=o,A._addProxy(WaA(r,o))})};Ty.prototype._addProxy=function(A){var r=this;if(r._proxyTarget)return r.error("proxy already set");r._proxyTarget=A,A._proxy=r,["error","data","end","close","linkpath","entry","entryEnd","child","childEnd","warn","stat"].forEach(function(i){A.on(i,r.emit.bind(r,i))}),r.emit("proxy",A),A.on("ready",function(){r.ready=!0,r.emit("ready")});var t=r._buffer;r._buffer.length=0,t.forEach(function(i){A[i[0]].apply(A,i[1])})};Ty.prototype.pause=function(){return this._proxyTarget?this._proxyTarget.pause():!1};Ty.prototype.resume=function(){return this._proxyTarget?this._proxyTarget.resume():!1}});var Fy=GA((l$t,r6A)=>{r6A.exports=P0;var Por=r1(),Gor=require("stream").Stream,Yor=dp(),qaA=require("path"),VaA=g8(),EP=P0.hardLinks={},A6A=cP();Yor(P0,A6A);var e6A=YaA();function P0(A,r){var t=this;if(!(t instanceof P0))return new P0(A,r);typeof A=="string"&&(A={path:A});var i,o;switch(A.type&&typeof A.type=="function"?(i=A.type,o=i):(i=VaA(A),o=P0),r&&!i&&(i=VaA(r),A[i]=!0,A.type=i),i){case"Directory":o=LaA();break;case"Link":case"File":o=jaA();break;case"SymbolicLink":o=e6A;break;case"Socket":o=ZOA();break;case null:o=JaA();break}if(!(t instanceof o))return new o(A);A6A.call(t),A.path||t.error("Must provide a path",null,!0),t.readable=!0,t.writable=!1,t.type=i,t.props=A,t.depth=A.depth=A.depth||0,t.parent=A.parent||null,t.root=A.root||A.parent&&A.parent.root||t,t._path=t.path=qaA.resolve(A.path),process.platform==="win32"&&(t.path=t._path=t.path.replace(/\?/g,"_"),t._path.length>=260&&(t._swallowErrors=!0,t._path="\\\\?\\"+t.path.replace(/\//g,"\\"))),t.basename=A.basename=qaA.basename(t.path),t.dirname=A.dirname=qaA.dirname(t.path),A.parent=A.root=null,t.size=A.size,t.filter=typeof A.filter=="function"?A.filter:null,A.sort==="alpha"&&(A.sort=Uor),t._stat(r)}function Uor(A,r){return A===r?0:A.toLowerCase()>r.toLowerCase()?1:A.toLowerCase()r?1:-1}P0.prototype._stat=function(A){var r=this,t=r.props,i=t.follow?"stat":"lstat";A?process.nextTick(o.bind(null,null,A)):Por[i](r._path,o);function o(s,g){if(s)return r.error(s);if(Object.keys(g).forEach(function(O){t[O]=g[O]}),r.size!==void 0&&t.size!==r.size)return r.error("incorrect size");r.size=t.size;var E=VaA(t),p=t.hardlinks!==!1;if(p&&E!=="Directory"&&t.nlink&&t.nlink>1){var B=t.dev+":"+t.ino;EP[B]===r._path||!EP[B]?EP[B]=r._path:(E=r.type=r.props.type="Link",r.Link=r.props.Link=!0,r.linkpath=r.props.linkpath=EP[B],r._stat=r._read=e6A.prototype._read)}if(r.type&&r.type!==E&&r.error("Unexpected type: "+E),r.filter){var m=r._proxy||r;if(!r.filter.call(m,m,t)){r._disowned||(r.abort(),r.emit("end"),r.emit("close"));return}}var _=["_stat","stat","ready"],x=0;(function O(){if(r._aborted){r.emit("end"),r.emit("close");return}if(r._paused&&r.type!=="Directory"){r.once("resume",O);return}var k=_[x++];if(!k)return r._read();r.emit(k,t),O()})()}};P0.prototype.pipe=function(A){var r=this;return typeof A.add=="function"&&r.on("entry",function(t){var i=A.add(t);i===!1&&r.pause()}),Gor.prototype.pipe.apply(this,arguments)};P0.prototype.pause=function(A){this._paused=!0,A=A||this,this.emit("pause",A),this._stream&&this._stream.pause(A)};P0.prototype.resume=function(A){this._paused=!1,A=A||this,this.emit("resume",A),this._stream&&this._stream.resume(A),this._read()};P0.prototype._read=function(){this.error("Cannot read unknown type: "+this.type)}});var t6A=GA(zaA=>{var Ny=require("path"),ow=process.platform==="win32",aw=require("fs"),Lor=process.env.NODE_DEBUG&&/fs/.test(process.env.NODE_DEBUG);function jor(){var A;if(Lor){var r=new Error;A=t}else A=i;return A;function t(o){o&&(r.message=o.message,o=r,i(o))}function i(o){if(o){if(process.throwDeprecation)throw o;if(!process.noDeprecation){var s="fs: missing callback "+(o.stack||o.message);process.traceDeprecation?console.trace(s):console.error(s)}}}}function Wor(A){return typeof A=="function"?A:jor()}var u$t=Ny.normalize;ow?G4=/(.*?)(?:[\/\\]+|$)/g:G4=/(.*?)(?:[\/]+|$)/g;var G4;ow?E8=/^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/:E8=/^[\/]*/;var E8;zaA.realpathSync=function(r,t){if(r=Ny.resolve(r),t&&Object.prototype.hasOwnProperty.call(t,r))return t[r];var i=r,o={},s={},g,E,p,B;m();function m(){var H=E8.exec(r);g=H[0].length,E=H[0],p=H[0],B="",ow&&!s[p]&&(aw.lstatSync(p),s[p]=!0)}for(;g=r.length)return t&&(t[o]=r),i(null,r);G4.lastIndex=E;var H=G4.exec(r);return m=p,p+=H[0],B=m+H[1],E=G4.lastIndex,g[B]||t&&t[B]===B?process.nextTick(x):t&&Object.prototype.hasOwnProperty.call(t,B)?P(t[B]):aw.lstat(B,O)}function O(H,T){if(H)return i(H);if(!T.isSymbolicLink())return g[B]=!0,t&&(t[B]=B),process.nextTick(x);if(!ow){var v=T.dev.toString(32)+":"+T.ino.toString(32);if(s.hasOwnProperty(v))return k(null,s[v],B)}aw.stat(B,function(F){if(F)return i(F);aw.readlink(B,function(y,S){ow||(s[v]=S),k(y,S)})})}function k(H,T,v){if(H)return i(H);var F=Ny.resolve(m,T);t&&(t[v]=F),P(F)}function P(H){r=Ny.resolve(H,r.slice(E)),_()}}});var $aA=GA((d$t,o6A)=>{o6A.exports=sw;sw.realpath=sw;sw.sync=ZaA;sw.realpathSync=ZaA;sw.monkeypatch=qor;sw.unmonkeypatch=Vor;var Vb=require("fs"),KaA=Vb.realpath,XaA=Vb.realpathSync,Jor=process.version,i6A=/^v[0-5]\./.test(Jor),n6A=t6A();function a6A(A){return A&&A.syscall==="realpath"&&(A.code==="ELOOP"||A.code==="ENOMEM"||A.code==="ENAMETOOLONG")}function sw(A,r,t){if(i6A)return KaA(A,r,t);typeof r=="function"&&(t=r,r=null),KaA(A,r,function(i,o){a6A(i)?n6A.realpath(A,r,t):t(i,o)})}function ZaA(A,r){if(i6A)return XaA(A,r);try{return XaA(A,r)}catch(t){if(a6A(t))return n6A.realpathSync(A,r);throw t}}function qor(){Vb.realpath=sw,Vb.realpathSync=ZaA}function Vor(){Vb.realpath=KaA,Vb.realpathSync=XaA}});var c6A=GA((p$t,s6A)=>{s6A.exports=function(A,r){for(var t=[],i=0;i{var Kor=c6A(),l6A=bAA();f6A.exports=$or;var u6A="\0SLASH"+Math.random()+"\0",g6A="\0OPEN"+Math.random()+"\0",eoA="\0CLOSE"+Math.random()+"\0",d6A="\0COMMA"+Math.random()+"\0",p6A="\0PERIOD"+Math.random()+"\0";function AoA(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function Xor(A){return A.split("\\\\").join(u6A).split("\\{").join(g6A).split("\\}").join(eoA).split("\\,").join(d6A).split("\\.").join(p6A)}function Zor(A){return A.split(u6A).join("\\").split(g6A).join("{").split(eoA).join("}").split(d6A).join(",").split(p6A).join(".")}function E6A(A){if(!A)return[""];var r=[],t=l6A("{","}",A);if(!t)return A.split(",");var i=t.pre,o=t.body,s=t.post,g=i.split(",");g[g.length-1]+="{"+o+"}";var E=E6A(s);return s.length&&(g[g.length-1]+=E.shift(),g.push.apply(g,E)),r.push.apply(r,g),r}function $or(A){return A?(A.substr(0,2)==="{}"&&(A="\\{\\}"+A.substr(2)),zb(Xor(A),!0).map(Zor)):[]}function Asr(A){return"{"+A+"}"}function esr(A){return/^-?0\d/.test(A)}function rsr(A,r){return A<=r}function tsr(A,r){return A>=r}function zb(A,r){var t=[],i=l6A("{","}",A);if(!i||/\$$/.test(i.pre))return[A];var o=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(i.body),s=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(i.body),g=o||s,E=i.body.indexOf(",")>=0;if(!g&&!E)return i.post.match(/,.*\}/)?(A=i.pre+"{"+i.body+eoA+i.post,zb(A)):[A];var p;if(g)p=i.body.split(/\.\./);else if(p=E6A(i.body),p.length===1&&(p=zb(p[0],!1).map(Asr),p.length===1)){var m=i.post.length?zb(i.post,!1):[""];return m.map(function(oA){return i.pre+p[0]+oA})}var B=i.pre,m=i.post.length?zb(i.post,!1):[""],_;if(g){var x=AoA(p[0]),O=AoA(p[1]),k=Math.max(p[0].length,p[1].length),P=p.length==3?Math.abs(AoA(p[2])):1,H=rsr,T=O0){var U=new Array(S+1).join("0");F<0?y="-"+U+y.slice(1):y=U+y}}_.push(y)}}else _=Kor(p,function(pA){return zb(pA,!1)});for(var V=0;V<_.length;V++)for(var wA=0;wA{_6A.exports=Yh;Yh.Minimatch=JE;var f8=function(){try{return require("path")}catch{}}()||{sep:"/"};Yh.sep=f8.sep;var ioA=Yh.GLOBSTAR=JE.GLOBSTAR={},isr=B6A(),h6A={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},roA="[^/]",toA=roA+"*?",nsr="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",asr="(?:(?!(?:\\/|^)\\.).)*?",Q6A=osr("().*{}+?[]^$\\!");function osr(A){return A.split("").reduce(function(r,t){return r[t]=!0,r},{})}var m6A=/\/+/;Yh.filter=ssr;function ssr(A,r){return r=r||{},function(t,i,o){return Yh(t,A,r)}}function cw(A,r){r=r||{};var t={};return Object.keys(A).forEach(function(i){t[i]=A[i]}),Object.keys(r).forEach(function(i){t[i]=r[i]}),t}Yh.defaults=function(A){if(!A||typeof A!="object"||!Object.keys(A).length)return Yh;var r=Yh,t=function(o,s,g){return r(o,s,cw(A,g))};return t.Minimatch=function(o,s){return new r.Minimatch(o,cw(A,s))},t.Minimatch.defaults=function(o){return r.defaults(cw(A,o)).Minimatch},t.filter=function(o,s){return r.filter(o,cw(A,s))},t.defaults=function(o){return r.defaults(cw(A,o))},t.makeRe=function(o,s){return r.makeRe(o,cw(A,s))},t.braceExpand=function(o,s){return r.braceExpand(o,cw(A,s))},t.match=function(i,o,s){return r.match(i,o,cw(A,s))},t};JE.defaults=function(A){return Yh.defaults(A).Minimatch};function Yh(A,r,t){return BP(r),t||(t={}),!t.nocomment&&r.charAt(0)==="#"?!1:new JE(r,t).match(A)}function JE(A,r){if(!(this instanceof JE))return new JE(A,r);BP(A),r||(r={}),A=A.trim(),!r.allowWindowsEscape&&f8.sep!=="/"&&(A=A.split(f8.sep).join("/")),this.options=r,this.set=[],this.pattern=A,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.make()}JE.prototype.debug=function(){};JE.prototype.make=csr;function csr(){var A=this.pattern,r=this.options;if(!r.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}this.parseNegate();var t=this.globSet=this.braceExpand();r.debug&&(this.debug=function(){console.error.apply(console,arguments)}),this.debug(this.pattern,t),t=this.globParts=t.map(function(i){return i.split(m6A)}),this.debug(this.pattern,t),t=t.map(function(i,o,s){return i.map(this.parse,this)},this),this.debug(this.pattern,t),t=t.filter(function(i){return i.indexOf(!1)===-1}),this.debug(this.pattern,t),this.set=t}JE.prototype.parseNegate=lsr;function lsr(){var A=this.pattern,r=!1,t=this.options,i=0;if(!t.nonegate){for(var o=0,s=A.length;o"u"?this.pattern:A,BP(A),r.nobrace||!/\{(?:(?!\{).)*\}/.test(A)?[A]:isr(A)}var usr=1024*64,BP=function(A){if(typeof A!="string")throw new TypeError("invalid pattern");if(A.length>usr)throw new TypeError("pattern is too long")};JE.prototype.parse=gsr;var fP={};function gsr(A,r){BP(A);var t=this.options;if(A==="**")if(t.noglobstar)A="*";else return ioA;if(A==="")return"";var i="",o=!!t.nocase,s=!1,g=[],E=[],p,B=!1,m=-1,_=-1,x=A.charAt(0)==="."?"":t.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",O=this;function k(){if(p){switch(p){case"*":i+=toA,o=!0;break;case"?":i+=roA,o=!0;break;default:i+="\\"+p;break}O.debug("clearStateChar %j %j",p,i),p=!1}}for(var P=0,H=A.length,T;P-1;wA--){var IA=E[wA],pA=i.slice(0,IA.reStart),oA=i.slice(IA.reStart,IA.reEnd-8),cA=i.slice(IA.reEnd-8,IA.reEnd),eA=i.slice(IA.reEnd);cA+=eA;var Y=pA.split("(").length-1,q=eA;for(P=0;P"u"&&(t=this.partial),this.debug("match",r,this.pattern),this.comment)return!1;if(this.empty)return r==="";if(r==="/"&&t)return!0;var i=this.options;f8.sep!=="/"&&(r=r.split(f8.sep).join("/")),r=r.split(m6A),this.debug(this.pattern,"split",r);var o=this.set;this.debug(this.pattern,"set",o);var s,g;for(g=r.length-1;g>=0&&(s=r[g],!s);g--);for(g=0;g>> no match, partial?`,A,m,r,_),m===g))}var O;if(typeof p=="string"?(O=B===p,this.debug("string match",p,B,O)):(O=B.match(p),this.debug("pattern match",p,B,O)),!O)return!1}if(o===g&&s===E)return!0;if(o===g)return t;if(s===E)return o===g-1&&A[o]==="";throw new Error("wtf?")};function psr(A){return A.replace(/\\(.)/g,"$1")}function Esr(A){return A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}});var mP=GA((B$t,QP)=>{"use strict";function w6A(A){return A.charAt(0)==="/"}function v6A(A){var r=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/,t=r.exec(A),i=t[1]||"",o=!!(i&&i.charAt(1)!==":");return!!(t[2]||o)}QP.exports=process.platform==="win32"?v6A:w6A;QP.exports.posix=w6A;QP.exports.win32=v6A});var aoA=GA(lw=>{lw.setopts=Dsr;lw.ownProp=y6A;lw.makeAbs=B8;lw.finish=_sr;lw.mark=wsr;lw.isIgnored=I6A;lw.childrenIgnored=vsr;function y6A(A,r){return Object.prototype.hasOwnProperty.call(A,r)}var fsr=require("fs"),Kb=require("path"),Bsr=hP(),C6A=mP(),noA=Bsr.Minimatch;function hsr(A,r){return A.localeCompare(r,"en")}function Qsr(A,r){A.ignore=r.ignore||[],Array.isArray(A.ignore)||(A.ignore=[A.ignore]),A.ignore.length&&(A.ignore=A.ignore.map(msr))}function msr(A){var r=null;if(A.slice(-3)==="/**"){var t=A.replace(/(\/\*\*)+$/,"");r=new noA(t,{dot:!0})}return{matcher:new noA(A,{dot:!0}),gmatcher:r}}function Dsr(A,r,t){if(t||(t={}),t.matchBase&&r.indexOf("/")===-1){if(t.noglobstar)throw new Error("base matching requires globstar");r="**/"+r}A.silent=!!t.silent,A.pattern=r,A.strict=t.strict!==!1,A.realpath=!!t.realpath,A.realpathCache=t.realpathCache||Object.create(null),A.follow=!!t.follow,A.dot=!!t.dot,A.mark=!!t.mark,A.nodir=!!t.nodir,A.nodir&&(A.mark=!0),A.sync=!!t.sync,A.nounique=!!t.nounique,A.nonull=!!t.nonull,A.nosort=!!t.nosort,A.nocase=!!t.nocase,A.stat=!!t.stat,A.noprocess=!!t.noprocess,A.absolute=!!t.absolute,A.fs=t.fs||fsr,A.maxLength=t.maxLength||1/0,A.cache=t.cache||Object.create(null),A.statCache=t.statCache||Object.create(null),A.symlinks=t.symlinks||Object.create(null),Qsr(A,t),A.changedCwd=!1;var i=process.cwd();y6A(t,"cwd")?(A.cwd=Kb.resolve(t.cwd),A.changedCwd=A.cwd!==i):A.cwd=i,A.root=t.root||Kb.resolve(A.cwd,"/"),A.root=Kb.resolve(A.root),process.platform==="win32"&&(A.root=A.root.replace(/\\/g,"/")),A.cwdAbs=C6A(A.cwd)?A.cwd:B8(A,A.cwd),process.platform==="win32"&&(A.cwdAbs=A.cwdAbs.replace(/\\/g,"/")),A.nomount=!!t.nomount,t.nonegate=!0,t.nocomment=!0,t.allowWindowsEscape=!1,A.minimatch=new noA(r,t),A.options=A.minimatch.options}function _sr(A){for(var r=A.nounique,t=r?[]:Object.create(null),i=0,o=A.matches.length;i{k6A.exports=M6A;M6A.GlobSync=pp;var ysr=$aA(),b6A=hP(),Q$t=b6A.Minimatch,m$t=coA().Glob,D$t=require("util"),ooA=require("path"),O6A=require("assert"),DP=mP(),Py=aoA(),Csr=Py.setopts,soA=Py.ownProp,Isr=Py.childrenIgnored,bsr=Py.isIgnored;function M6A(A,r){if(typeof r=="function"||arguments.length===3)throw new TypeError(`callback provided to sync glob -See: https://github.com/isaacs/node-glob/issues/167`);return new pp(A,r).found}function pp(A,r){if(!A)throw new Error("must provide pattern");if(typeof r=="function"||arguments.length===3)throw new TypeError(`callback provided to sync glob -See: https://github.com/isaacs/node-glob/issues/167`);if(!(this instanceof pp))return new pp(A,r);if(Csr(this,A,r),this.noprocess)return this;var t=this.minimatch.set.length;this.matches=new Array(t);for(var i=0;ithis.maxLength)return!1;if(!this.stat&&soA(this.cache,r)){var g=this.cache[r];if(Array.isArray(g)&&(g="DIR"),!t||g==="DIR")return g;if(t&&g==="FILE")return!1}var i,o=this.statCache[r];if(!o){var s;try{s=this.fs.lstatSync(r)}catch(E){if(E&&(E.code==="ENOENT"||E.code==="ENOTDIR"))return this.statCache[r]=!1,!1}if(s&&s.isSymbolicLink())try{o=this.fs.statSync(r)}catch{o=s}else o=s}this.statCache[r]=o;var g=!0;return o&&(g=o.isDirectory()?"DIR":"FILE"),this.cache[r]=this.cache[r]||g,t&&g==="FILE"?!1:g};pp.prototype._mark=function(A){return Py.mark(this,A)};pp.prototype._makeAbs=function(A){return Py.makeAbs(this,A)}});var loA=GA((w$t,S6A)=>{S6A.exports=H6A;function H6A(A,r){if(A&&r)return H6A(A)(r);if(typeof A!="function")throw new TypeError("need wrapper function");return Object.keys(A).forEach(function(i){t[i]=A[i]}),t;function t(){for(var i=new Array(arguments.length),o=0;o{var F6A=loA();uoA.exports=F6A(_P);uoA.exports.strict=F6A(R6A);_P.proto=_P(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return _P(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return R6A(this)},configurable:!0})});function _P(A){var r=function(){return r.called?r.value:(r.called=!0,r.value=A.apply(this,arguments))};return r.called=!1,r}function R6A(A){var r=function(){if(r.called)throw new Error(r.onceError);return r.called=!0,r.value=A.apply(this,arguments)},t=A.name||"Function wrapped with `once`";return r.onceError=t+" shouldn't be called more than once",r.called=!1,r}});var N6A=GA((y$t,T6A)=>{var Osr=loA(),h8=Object.create(null),Msr=goA();T6A.exports=Osr(ksr);function ksr(A,r){return h8[A]?(h8[A].push(r),null):(h8[A]=[r],xsr(A))}function xsr(A){return Msr(function r(){var t=h8[A],i=t.length,o=Hsr(arguments);try{for(var s=0;si?(t.splice(0,i),process.nextTick(function(){r.apply(null,o)})):delete h8[A]}})}function Hsr(A){for(var r=A.length,t=[],i=0;i{G6A.exports=Gy;var Ssr=$aA(),P6A=hP(),C$t=P6A.Minimatch,Fsr=dp(),Rsr=require("events").EventEmitter,doA=require("path"),poA=require("assert"),Q8=mP(),foA=x6A(),Yy=aoA(),Tsr=Yy.setopts,EoA=Yy.ownProp,BoA=N6A(),I$t=require("util"),Nsr=Yy.childrenIgnored,Psr=Yy.isIgnored,Gsr=goA();function Gy(A,r,t){if(typeof r=="function"&&(t=r,r={}),r||(r={}),r.sync){if(t)throw new TypeError("callback provided to sync glob");return foA(A,r)}return new Il(A,r,t)}Gy.sync=foA;var Ysr=Gy.GlobSync=foA.GlobSync;Gy.glob=Gy;function Usr(A,r){if(r===null||typeof r!="object")return A;for(var t=Object.keys(r),i=t.length;i--;)A[t[i]]=r[t[i]];return A}Gy.hasMagic=function(A,r){var t=Usr({},r);t.noprocess=!0;var i=new Il(A,t),o=i.minimatch.set;if(!A)return!1;if(o.length>1)return!0;for(var s=0;sthis.maxLength)return r();if(!this.stat&&EoA(this.cache,t)){var o=this.cache[t];if(Array.isArray(o)&&(o="DIR"),!i||o==="DIR")return r(null,o);if(i&&o==="FILE")return r()}var s,g=this.statCache[t];if(g!==void 0){if(g===!1)return r(null,g);var E=g.isDirectory()?"DIR":"FILE";return i&&E==="FILE"?r():r(null,E,g)}var p=this,B=BoA("stat\0"+t,m);B&&p.fs.lstat(t,B);function m(_,x){if(x&&x.isSymbolicLink())return p.fs.stat(t,function(O,k){O?p._stat2(A,t,null,x,r):p._stat2(A,t,O,k,r)});p._stat2(A,t,_,x,r)}};Il.prototype._stat2=function(A,r,t,i,o){if(t&&(t.code==="ENOENT"||t.code==="ENOTDIR"))return this.statCache[r]=!1,o();var s=A.slice(-1)==="/";if(this.statCache[r]=i,r.slice(-1)==="/"&&i&&!i.isDirectory())return o(null,!1,i);var g=!0;return i&&(g=i.isDirectory()?"DIR":"FILE"),this.cache[r]=this.cache[r]||g,s&&g==="FILE"?o():o(null,g,i)}});var DoA=GA((O$t,V6A)=>{V6A.exports=moA;moA.sync=q6A;var Dl=require("assert"),j6A=require("path"),Y6A=require("fs"),Xb=void 0;try{Xb=coA()}catch{}var W6A=parseInt("666",8),jsr={nosort:!0,silent:!0},hoA=0,m8=process.platform==="win32";function J6A(A){var r=["unlink","chmod","stat","lstat","rmdir","readdir"];if(r.forEach(function(t){A[t]=A[t]||Y6A[t],t=t+"Sync",A[t]=A[t]||Y6A[t]}),A.maxBusyTries=A.maxBusyTries||3,A.emfileWait=A.emfileWait||1e3,A.glob===!1&&(A.disableGlob=!0),A.disableGlob!==!0&&Xb===void 0)throw Error("glob dependency not found, set `options.disableGlob = true` if intentional");A.disableGlob=A.disableGlob||!1,A.glob=A.glob||jsr}function moA(A,r,t){typeof r=="function"&&(t=r,r={}),Dl(A,"rimraf: missing path"),Dl.equal(typeof A,"string","rimraf: path should be a string"),Dl.equal(typeof t,"function","rimraf: callback function required"),Dl(r,"rimraf: invalid options argument provided"),Dl.equal(typeof r,"object","rimraf: options should be object"),J6A(r);var i=0,o=null,s=0;if(r.disableGlob||!Xb.hasMagic(A))return E(null,[A]);r.lstat(A,function(p,B){if(!p)return E(null,[A]);Xb(A,r.glob,E)});function g(p){o=o||p,--s===0&&t(o)}function E(p,B){if(p)return t(p);if(s=B.length,s===0)return t();B.forEach(function(m){QoA(m,r,function _(x){if(x){if((x.code==="EBUSY"||x.code==="ENOTEMPTY"||x.code==="EPERM")&&i{var D8=require("path"),z6A=require("fs"),K6A=parseInt("0777",8);X6A.exports=Zb.mkdirp=Zb.mkdirP=Zb;function Zb(A,r,t,i){typeof r=="function"?(t=r,r={}):(!r||typeof r!="object")&&(r={mode:r});var o=r.mode,s=r.fs||z6A;o===void 0&&(o=K6A),i||(i=null);var g=t||function(){};A=D8.resolve(A),s.mkdir(A,o,function(E){if(!E)return i=i||A,g(null,i);switch(E.code){case"ENOENT":if(D8.dirname(A)===A)return g(E);Zb(D8.dirname(A),r,function(p,B){p?g(p,B):Zb(A,r,g,B)});break;default:s.stat(A,function(p,B){p||!B.isDirectory()?g(E,i):g(null,i)});break}})}Zb.sync=function A(r,t,i){(!t||typeof t!="object")&&(t={mode:t});var o=t.mode,s=t.fs||z6A;o===void 0&&(o=K6A),i||(i=null),r=D8.resolve(r);try{s.mkdirSync(r,o),i=i||r}catch(E){switch(E.code){case"ENOENT":i=A(D8.dirname(r),t,i),A(r,t,i);break;default:var g;try{g=s.statSync(r)}catch{throw E}if(!g.isDirectory())throw E;break}}return i}});var yP=GA((k$t,Z6A)=>{Z6A.exports=woA;function woA(A){if(A._collected)return;if(A._paused)return A.on("resume",woA.bind(null,A));A._collected=!0,A.pause(),A.on("data",t),A.on("end",t);var r=[];function t(g){typeof g=="string"&&(g=new Buffer(g)),!(Buffer.isBuffer(g)&&!g.length)&&r.push(g)}A.on("entry",o);var i=[];function o(g){woA(g),i.push(g)}A.on("proxy",s);function s(g){g.pause()}A.pipe=function(g){return function(E){var p=0;(function m(){var _=i[p++];if(!_)return B();_.on("end",m),E?E.add(_):A.emit("entry",_)})();function B(){A.removeListener("entry",o),A.removeListener("data",t),A.removeListener("end",t),A.pipe=g,E&&A.pipe(E),r.forEach(function(m){m?A.emit("data",m):A.emit("end")}),A.resume()}return E}}(A.pipe)}});var voA=GA((x$t,A8A)=>{A8A.exports=uw;var CP=$b(),qsr=dp(),Vsr=_oA(),$6A=require("path"),zsr=yP();qsr(uw,CP);function uw(A){var r=this;r instanceof uw||r.error("DirWriter must be called as constructor.",null,!0),(A.type!=="Directory"||!A.Directory)&&r.error("Non-directory type "+A.type+" "+JSON.stringify(A),null,!0),CP.call(this,A)}uw.prototype._create=function(){var A=this;Vsr(A._path,CP.dirmode,function(r){if(r)return A.error(r);A.ready=!0,A.emit("ready"),A._process()})};uw.prototype.write=function(){return!0};uw.prototype.end=function(){this._ended=!0,this._process()};uw.prototype.add=function(A){var r=this;return zsr(A),!r.ready||r._currentEntry?(r._buffer.push(A),!1):r._ended?r.error("add after end"):(r._buffer.push(A),r._process(),this._buffer.length===0)};uw.prototype._process=function(){var A=this;if(A._processing)return;var r=A._buffer.shift();if(!r){A.emit("drain"),A._ended&&A._finish();return}A._processing=!0,A.emit("entry",r);var t=r,i;do{if(i=t._path||t.path,i===A.root._path||i===A._path||i&&i.indexOf(A._path)===0)return A._processing=!1,r._collected&&r.pipe(),A._process();t=t.parent}while(t);var o={parent:A,root:A.root||A,type:r.type,depth:A.depth+1};i=r._path||r.path||r.props.path,r.parent&&(i=i.substr(r.parent._path.length+1)),o.path=$6A.join(A.path,$6A.join("/",i)),o.filter=A.filter,Object.keys(r.props).forEach(function(p){o.hasOwnProperty(p)||(o[p]=r.props[p])});var s=A._currentChild=new CP(o);s.on("ready",function(){r.pipe(s),r.resume()}),s.on("error",function(p){s._swallowErrors?(A.warn(p),s.emit("end"),s.emit("close")):A.emit("error",p)}),s.on("close",E);var g=!1;function E(){g||(g=!0,A._currentChild=null,A._processing=!1,A._process())}}});var yoA=GA((H$t,n8A)=>{n8A.exports=_8;var r8A=r1(),t8A=$b(),Ksr=dp(),Xsr=require("path"),Zsr=DoA();Ksr(_8,t8A);function _8(A){var r=this;if(!(r instanceof _8))throw new Error("LinkWriter must be called as constructor.");if(!(A.type==="Link"&&A.Link||A.type==="SymbolicLink"&&A.SymbolicLink))throw new Error("Non-link type "+A.type);A.linkpath===""&&(A.linkpath="."),A.linkpath||r.error("Need linkpath property to create "+A.type),t8A.call(this,A)}_8.prototype._create=function(){var A=this,r=A.type==="Link"||process.platform==="win32",t=r?"link":"symlink",i=r?Xsr.resolve(A.dirname,A.linkpath):A.linkpath;if(r)return e8A(A,i,t);r8A.readlink(A._path,function(o,s){if(s&&s===i)return i8A(A);e8A(A,i,t)})};function e8A(A,r,t){Zsr(A._path,function(i){if(i)return A.error(i);$sr(A,r,t)})}function $sr(A,r,t){r8A[t](r,A._path,function(i){if(i)if((i.code==="ENOENT"||i.code==="EACCES"||i.code==="EPERM")&&process.platform==="win32")A.ready=!0,A.emit("ready"),A.emit("end"),A.emit("close"),A.end=A._finish=function(){};else return A.error(i);i8A(A)})}function i8A(A){A.ready=!0,A.emit("ready"),A._ended&&!A._finished&&A._finish()}_8.prototype.end=function(){this._ended=!0,this.ready&&(this._finished=!0,this._finish())}});var CoA=GA((S$t,o8A)=>{o8A.exports=Uy;var Acr=r1(),IP=$b(),ecr=dp(),a8A={};ecr(Uy,IP);function Uy(A){var r=this;if(!(r instanceof Uy))throw new Error("FileWriter must be called as constructor.");if(A.type!=="File"||!A.File)throw new Error("Non-file type "+A.type);r._buffer=[],r._bytesWritten=0,IP.call(this,A)}Uy.prototype._create=function(){var A=this;if(!A._stream){var r={};A.props.flags&&(r.flags=A.props.flags),r.mode=IP.filemode,A._old&&A._old.blksize&&(r.bufferSize=A._old.blksize),A._stream=Acr.createWriteStream(A._path,r),A._stream.on("open",function(){A.ready=!0,A._buffer.forEach(function(t){t===a8A?A._stream.end():A._stream.write(t)}),A.emit("ready"),A.emit("drain")}),A._stream.on("error",function(t){A.emit("error",t)}),A._stream.on("drain",function(){A.emit("drain")}),A._stream.on("close",function(){A._finish()})}};Uy.prototype.write=function(A){var r=this;if(r._bytesWritten+=A.length,!r.ready){if(!Buffer.isBuffer(A)&&typeof A!="string")throw new Error("invalid write data");return r._buffer.push(A),!1}var t=r._stream.write(A);return t===!1&&r._stream._queue?r._stream._queue.length<=2:t};Uy.prototype.end=function(A){var r=this;return A&&r.write(A),r.ready?r._stream.end():(r._buffer.push(a8A),!1)};Uy.prototype._finish=function(){var A=this;typeof A.size=="number"&&A._bytesWritten!==A.size&&A.error(`Did not get expected byte count. -expect: `+A.size+` -actual: `+A._bytesWritten),IP.prototype._finish.call(A)}});var boA=GA((F$t,s8A)=>{s8A.exports=gw;var IoA=$b(),rcr=g8(),tcr=dp(),icr=yP(),ncr=require("fs");tcr(gw,IoA);function gw(A){var r=this;if(!(r instanceof gw))throw new Error("ProxyWriter must be called as constructor.");r.props=A,r._needDrain=!1,IoA.call(r,A)}gw.prototype._stat=function(){var A=this,r=A.props,t=r.follow?"stat":"lstat";ncr[t](r.path,function(i,o){var s;i||!o?s="File":s=rcr(o),r[s]=!0,r.type=A.type=s,A._old=o,A._addProxy(IoA(r,o))})};gw.prototype._addProxy=function(A){var r=this;if(r._proxy)return r.error("proxy already set");r._proxy=A,["ready","error","close","pipe","drain","warn"].forEach(function(i){A.on(i,r.emit.bind(r,i))}),r.emit("proxy",A);var t=r._buffer;t.forEach(function(i){A[i[0]].apply(A,i[1])}),r._buffer.length=0,r._needsDrain&&r.emit("drain")};gw.prototype.add=function(A){return icr(A),this._proxy?this._proxy.add(A):(this._buffer.push(["add",[A]]),this._needDrain=!0,!1)};gw.prototype.write=function(A){return this._proxy?this._proxy.write(A):(this._buffer.push(["write",[A]]),this._needDrain=!0,!1)};gw.prototype.end=function(A){return this._proxy?this._proxy.end(A):(this._buffer.push(["end",[A]]),!1)}});var $b=GA((R$t,B8A)=>{B8A.exports=OQ;var bQ=r1(),acr=dp(),ocr=DoA(),scr=_oA(),w8=require("path"),l8A=process.platform==="win32"?0:process.umask(),u8A=g8(),g8A=cP();acr(OQ,g8A);OQ.dirmode=parseInt("0777",8)&~l8A;OQ.filemode=parseInt("0666",8)&~l8A;var ccr=voA(),lcr=yoA(),ucr=CoA(),gcr=boA();function OQ(A,r){var t=this;typeof A=="string"&&(A={path:A});var i=u8A(A),o=OQ;switch(i){case"Directory":o=ccr;break;case"File":o=ucr;break;case"Link":case"SymbolicLink":o=lcr;break;case null:default:o=gcr;break}if(!(t instanceof o))return new o(A);g8A.call(t),A.path||t.error("Must provide a path",null,!0),t.type=A.type,t.props=A,t.depth=A.depth||0,t.clobber=A.clobber===!1?A.clobber:!0,t.parent=A.parent||null,t.root=A.root||A.parent&&A.parent.root||t,t._path=t.path=w8.resolve(A.path),process.platform==="win32"&&(t.path=t._path=t.path.replace(/\?/g,"_"),t._path.length>=260&&(t._swallowErrors=!0,t._path="\\\\?\\"+t.path.replace(/\//g,"\\"))),t.basename=w8.basename(A.path),t.dirname=w8.dirname(A.path),t.linkpath=A.linkpath||null,A.parent=A.root=null,t.size=A.size,typeof A.mode=="string"&&(A.mode=parseInt(A.mode,8)),t.readable=!1,t.writable=!0,t._buffer=[],t.ready=!1,t.filter=typeof A.filter=="function"?A.filter:null,t._stat(r)}OQ.prototype._create=function(){var A=this;bQ[A.props.follow?"stat":"lstat"](A._path,function(r){if(r)return A.warn("Cannot create "+A._path+` -Unsupported type: `+A.type,"ENOTSUP");A._finish()})};OQ.prototype._stat=function(A){var r=this,t=r.props,i=t.follow?"stat":"lstat",o=r._proxy||r;A?s(null,A):bQ[i](r._path,s);function s(g,E){if(r.filter&&!r.filter.call(o,o,E)){r._aborted=!0,r.emit("end"),r.emit("close");return}if(g||!E)return OoA(r);r._old=E;var p=u8A(E);if(p!==r.type||r.type==="File"&&E.nlink>1)return ocr(r._path,function(B){if(B)return r.error(B);r._old=null,OoA(r)});OoA(r)}};function OoA(A){scr(w8.dirname(A._path),OQ.dirmode,function(r,t){return r?A.error(r):(A._madeDir=t,A._create())})}function d8A(A,r,t,i,o){var s=r.mode,g=r.follow||A.type!=="SymbolicLink"?"chmod":"lchmod";if(!bQ[g]||typeof s!="number")return o();var E=t.mode&parseInt("0777",8);if(s=s&parseInt("0777",8),s===E)return o();bQ[g](i,s,o)}function p8A(A,r,t,i,o){if(process.platform==="win32"||!process.getuid||process.getuid()!==0||typeof r.uid!="number"&&typeof r.gid!="number"||t.uid===r.uid&&t.gid===r.gid)return o();var s=A.props.follow||A.type!=="SymbolicLink"?"chown":"lchown";if(!bQ[s])return o();typeof r.uid!="number"&&(r.uid=t.uid),typeof r.gid!="number"&&(r.gid=t.gid),bQ[s](i,r.uid,r.gid,o)}function E8A(A,r,t,i,o){if(!bQ.utimes||process.platform==="win32")return o();var s=r.follow||A.type!=="SymbolicLink"?"utimes":"lutimes";if(s==="lutimes"&&!bQ[s]&&(s="utimes"),!bQ[s])return o();var g=t.atime,E=t.mtime,p=r.atime,B=r.mtime;if(p===void 0&&(p=g),B===void 0&&(B=E),c8A(p)||(p=new Date(p)),c8A(B)||(p=new Date(B)),p.getTime()===g.getTime()&&B.getTime()===E.getTime())return o();bQ[s](i,p,B,o)}OQ.prototype._finish=function(){var A=this;if(A._finishing)return;A._finishing=!0;var r=0,t=null,i=!1;if(A._old)A._old.atime=new Date(0),A._old.mtime=new Date(0),s(A._old);else{var o=A.props.follow?"stat":"lstat";bQ[o](A._path,function(E,p){if(E)if(E.code==="ENOENT"&&(A.type==="Link"||A.type==="SymbolicLink")&&process.platform==="win32"){A.ready=!0,A.emit("ready"),A.emit("end"),A.emit("close"),A.end=A._finish=function(){};return}else return A.error(E);s(A._old=p)})}return;function s(E){r+=3,d8A(A,A.props,E,A._path,g("chmod")),p8A(A,A.props,E,A._path,g("chown")),E8A(A,A.props,E,A._path,g("utimes"))}function g(E){return function(p){if(t)return;if(p)return p.fstream_finish_call=E,A.error(t=p);if(--r>0||i)return;if(i=!0,A._madeDir)f8A(A,A._path,B);else return B();function B(m){if(m)return m.fstream_finish_call="setupMadeDir",A.error(m);A.emit("end"),A.emit("close")}}}};function f8A(A,r,t){var i=A._madeDir,o=w8.dirname(r);dcr(A,o,function(s){if(s)return t(s);if(o===i)return t();f8A(A,o,t)})}function dcr(A,r,t){var i={};Object.keys(A.props).forEach(function(E){i[E]=A.props[E],E==="mode"&&A.type!=="Directory"&&(i[E]=i[E]|parseInt("0111",8))});var o=3,s=null;bQ.stat(r,function(E,p){if(E)return t(s=E);d8A(A,i,p,r,g),p8A(A,i,p,r,g),E8A(A,i,p,r,g)});function g(E){if(!s){if(E)return t(s=E);if(--o===0)return t()}}}OQ.prototype.pipe=function(){this.error("Can't pipe from writable stream")};OQ.prototype.add=function(){this.error("Can't add to non-Directory type")};OQ.prototype.write=function(){return!0};function pcr(A){return Object.prototype.toString.call(A)}function c8A(A){return typeof A=="object"&&pcr(A)==="[object Date]"}});var MoA=GA(Lc=>{Lc.Abstract=cP();Lc.Reader=Fy();Lc.Writer=$b();Lc.File={Reader:jaA(),Writer:CoA()};Lc.Dir={Reader:LaA(),Writer:voA()};Lc.Link={Reader:YaA(),Writer:yoA()};Lc.Proxy={Reader:JaA(),Writer:boA()};Lc.Reader.Dir=Lc.DirReader=Lc.Dir.Reader;Lc.Reader.File=Lc.FileReader=Lc.File.Reader;Lc.Reader.Link=Lc.LinkReader=Lc.Link.Reader;Lc.Reader.Proxy=Lc.ProxyReader=Lc.Proxy.Reader;Lc.Writer.Dir=Lc.DirWriter=Lc.Dir.Writer;Lc.Writer.File=Lc.FileWriter=Lc.File.Writer;Lc.Writer.Link=Lc.LinkWriter=Lc.Link.Writer;Lc.Writer.Proxy=Lc.ProxyWriter=Lc.Proxy.Writer;Lc.collect=yP()});var Q8A=GA((N$t,h8A)=>{h8A.exports=mcr;var Ecr=sP(),fcr=MoA().Writer,koA=require("path"),Bcr=require("stream"),hcr=SaA(),Qcr=rw();function mcr(A){A.path=koA.resolve(koA.normalize(A.path));var r=new Ecr(A),t=new Bcr.Writable({objectMode:!0});t._write=function(o,s,g){if(o.type=="Directory")return g();var E=koA.join(A.path,o.path);if(E.indexOf(A.path)!=0)return g();let p=A.getWriter?A.getWriter({path:E}):fcr({path:E});o.pipe(p).on("error",g).on("close",g)};var i=hcr(r,t);return r.once("crx-header",function(o){i.crxHeader=o}),r.pipe(t).on("finish",function(){i.emit("close")}),i.promise=function(){return new Qcr(function(o,s){i.on("close",o),i.on("error",s)})},i}});var m8A=GA((P$t,bP)=>{var Ep=function(A){"use strict";var r=1e7,t=7,i=9007199254740992,o=x(i),s="0123456789abcdefghijklmnopqrstuvwxyz",g=typeof BigInt=="function";function E(lA,tA,N,nA){return typeof lA>"u"?E[0]:typeof tA<"u"?+tA==10&&!N?MA(lA):SA(lA,tA,N,nA):MA(lA)}function p(lA,tA){this.value=lA,this.sign=tA,this.isSmall=!1}p.prototype=Object.create(E.prototype);function B(lA){this.value=lA,this.sign=lA<0,this.isSmall=!0}B.prototype=Object.create(E.prototype);function m(lA){this.value=lA}m.prototype=Object.create(E.prototype);function _(lA){return-i0?Math.floor(lA):Math.ceil(lA)}function T(lA,tA){var N=lA.length,nA=tA.length,kA=new Array(N),bA=0,TA=r,VA,De;for(De=0;De=TA?1:0,kA[De]=VA-bA*TA;for(;De0&&kA.push(bA),kA}function v(lA,tA){return lA.length>=tA.length?T(lA,tA):T(tA,lA)}function F(lA,tA){var N=lA.length,nA=new Array(N),kA=r,bA,TA;for(TA=0;TA0;)nA[TA++]=tA%kA,tA=Math.floor(tA/kA);return nA}p.prototype.add=function(lA){var tA=MA(lA);if(this.sign!==tA.sign)return this.subtract(tA.negate());var N=this.value,nA=tA.value;return tA.isSmall?new p(F(N,Math.abs(nA)),this.sign):new p(v(N,nA),this.sign)},p.prototype.plus=p.prototype.add,B.prototype.add=function(lA){var tA=MA(lA),N=this.value;if(N<0!==tA.sign)return this.subtract(tA.negate());var nA=tA.value;if(tA.isSmall){if(_(N+nA))return new B(N+nA);nA=x(Math.abs(nA))}return new p(F(nA,Math.abs(N)),N<0)},B.prototype.plus=B.prototype.add,m.prototype.add=function(lA){return new m(this.value+MA(lA).value)},m.prototype.plus=m.prototype.add;function y(lA,tA){var N=lA.length,nA=tA.length,kA=new Array(N),bA=0,TA=r,VA,De;for(VA=0;VA=0?nA=y(lA,tA):(nA=y(tA,lA),N=!N),nA=O(nA),typeof nA=="number"?(N&&(nA=-nA),new B(nA)):new p(nA,N)}function U(lA,tA,N){var nA=lA.length,kA=new Array(nA),bA=-tA,TA=r,VA,De;for(VA=0;VA=0)},B.prototype.minus=B.prototype.subtract,m.prototype.subtract=function(lA){return new m(this.value-MA(lA).value)},m.prototype.minus=m.prototype.subtract,p.prototype.negate=function(){return new p(this.value,!this.sign)},B.prototype.negate=function(){var lA=this.sign,tA=new B(-this.value);return tA.sign=!lA,tA},m.prototype.negate=function(){return new m(-this.value)},p.prototype.abs=function(){return new p(this.value,!1)},B.prototype.abs=function(){return new B(Math.abs(this.value))},m.prototype.abs=function(){return new m(this.value>=0?this.value:-this.value)};function V(lA,tA){var N=lA.length,nA=tA.length,kA=N+nA,bA=P(kA),TA=r,VA,De,_e,Ae,Q;for(_e=0;_e0;)nA[VA++]=bA%kA,bA=Math.floor(bA/kA);return nA}function IA(lA,tA){for(var N=[];tA-- >0;)N.push(0);return N.concat(lA)}function pA(lA,tA){var N=Math.max(lA.length,tA.length);if(N<=30)return V(lA,tA);N=Math.ceil(N/2);var nA=lA.slice(N),kA=lA.slice(0,N),bA=tA.slice(N),TA=tA.slice(0,N),VA=pA(kA,TA),De=pA(nA,bA),_e=pA(v(kA,nA),v(TA,bA)),Ae=v(v(VA,IA(y(y(_e,VA),De),N)),IA(De,2*N));return k(Ae),Ae}function oA(lA,tA){return-.012*lA-.012*tA+15e-6*lA*tA>0}p.prototype.multiply=function(lA){var tA=MA(lA),N=this.value,nA=tA.value,kA=this.sign!==tA.sign,bA;if(tA.isSmall){if(nA===0)return E[0];if(nA===1)return this;if(nA===-1)return this.negate();if(bA=Math.abs(nA),bA=0;Q--){for(Ae=kA-1,De[Q+nA]!==TA&&(Ae=Math.floor((De[Q+nA]*kA+De[Q+nA-1])/TA)),Ze=0,Cr=0,Me=_e.length,be=0;benA&&(_e=(_e+1)*TA),VA=Math.ceil(_e/Ae);do{if(Q=wA(tA,VA),K(Q,bA)<=0)break;VA--}while(VA);kA.push(VA),bA=y(bA,Q)}return kA.reverse(),[O(kA),O(bA)]}function X(lA,tA){var N=lA.length,nA=P(N),kA=r,bA,TA,VA,De;for(VA=0,bA=N-1;bA>=0;--bA)De=VA*kA+lA[bA],TA=H(De/tA),VA=De-TA*tA,nA[bA]=TA|0;return[nA,VA|0]}function Z(lA,tA){var N,nA=MA(tA);if(g)return[new m(lA.value/nA.value),new m(lA.value%nA.value)];var kA=lA.value,bA=nA.value,TA;if(bA===0)throw new Error("Cannot divide by zero");if(lA.isSmall)return nA.isSmall?[new B(H(kA/bA)),new B(kA%bA)]:[E[0],lA];if(nA.isSmall){if(bA===1)return[lA,E[0]];if(bA==-1)return[lA.negate(),E[0]];var VA=Math.abs(bA);if(VAtA.length?1:-1;for(var N=lA.length-1;N>=0;N--)if(lA[N]!==tA[N])return lA[N]>tA[N]?1:-1;return 0}p.prototype.compareAbs=function(lA){var tA=MA(lA),N=this.value,nA=tA.value;return tA.isSmall?1:K(N,nA)},B.prototype.compareAbs=function(lA){var tA=MA(lA),N=Math.abs(this.value),nA=tA.value;return tA.isSmall?(nA=Math.abs(nA),N===nA?0:N>nA?1:-1):-1},m.prototype.compareAbs=function(lA){var tA=this.value,N=MA(lA).value;return tA=tA>=0?tA:-tA,N=N>=0?N:-N,tA===N?0:tA>N?1:-1},p.prototype.compare=function(lA){if(lA===1/0)return-1;if(lA===-1/0)return 1;var tA=MA(lA),N=this.value,nA=tA.value;return this.sign!==tA.sign?tA.sign?1:-1:tA.isSmall?this.sign?-1:1:K(N,nA)*(this.sign?-1:1)},p.prototype.compareTo=p.prototype.compare,B.prototype.compare=function(lA){if(lA===1/0)return-1;if(lA===-1/0)return 1;var tA=MA(lA),N=this.value,nA=tA.value;return tA.isSmall?N==nA?0:N>nA?1:-1:N<0!==tA.sign?N<0?-1:1:N<0?1:-1},B.prototype.compareTo=B.prototype.compare,m.prototype.compare=function(lA){if(lA===1/0)return-1;if(lA===-1/0)return 1;var tA=this.value,N=MA(lA).value;return tA===N?0:tA>N?1:-1},m.prototype.compareTo=m.prototype.compare,p.prototype.equals=function(lA){return this.compare(lA)===0},m.prototype.eq=m.prototype.equals=B.prototype.eq=B.prototype.equals=p.prototype.eq=p.prototype.equals,p.prototype.notEquals=function(lA){return this.compare(lA)!==0},m.prototype.neq=m.prototype.notEquals=B.prototype.neq=B.prototype.notEquals=p.prototype.neq=p.prototype.notEquals,p.prototype.greater=function(lA){return this.compare(lA)>0},m.prototype.gt=m.prototype.greater=B.prototype.gt=B.prototype.greater=p.prototype.gt=p.prototype.greater,p.prototype.lesser=function(lA){return this.compare(lA)<0},m.prototype.lt=m.prototype.lesser=B.prototype.lt=B.prototype.lesser=p.prototype.lt=p.prototype.lesser,p.prototype.greaterOrEquals=function(lA){return this.compare(lA)>=0},m.prototype.geq=m.prototype.greaterOrEquals=B.prototype.geq=B.prototype.greaterOrEquals=p.prototype.geq=p.prototype.greaterOrEquals,p.prototype.lesserOrEquals=function(lA){return this.compare(lA)<=0},m.prototype.leq=m.prototype.lesserOrEquals=B.prototype.leq=B.prototype.lesserOrEquals=p.prototype.leq=p.prototype.lesserOrEquals,p.prototype.isEven=function(){return(this.value[0]&1)===0},B.prototype.isEven=function(){return(this.value&1)===0},m.prototype.isEven=function(){return(this.value&BigInt(1))===BigInt(0)},p.prototype.isOdd=function(){return(this.value[0]&1)===1},B.prototype.isOdd=function(){return(this.value&1)===1},m.prototype.isOdd=function(){return(this.value&BigInt(1))===BigInt(1)},p.prototype.isPositive=function(){return!this.sign},B.prototype.isPositive=function(){return this.value>0},m.prototype.isPositive=B.prototype.isPositive,p.prototype.isNegative=function(){return this.sign},B.prototype.isNegative=function(){return this.value<0},m.prototype.isNegative=B.prototype.isNegative,p.prototype.isUnit=function(){return!1},B.prototype.isUnit=function(){return Math.abs(this.value)===1},m.prototype.isUnit=function(){return this.abs().value===BigInt(1)},p.prototype.isZero=function(){return!1},B.prototype.isZero=function(){return this.value===0},m.prototype.isZero=function(){return this.value===BigInt(0)},p.prototype.isDivisibleBy=function(lA){var tA=MA(lA);return tA.isZero()?!1:tA.isUnit()?!0:tA.compareAbs(2)===0?this.isEven():this.mod(tA).isZero()},m.prototype.isDivisibleBy=B.prototype.isDivisibleBy=p.prototype.isDivisibleBy;function J(lA){var tA=lA.abs();if(tA.isUnit())return!1;if(tA.equals(2)||tA.equals(3)||tA.equals(5))return!0;if(tA.isEven()||tA.isDivisibleBy(3)||tA.isDivisibleBy(5))return!1;if(tA.lesser(49))return!0}function sA(lA,tA){for(var N=lA.prev(),nA=N,kA=0,bA,TA,VA,De;nA.isEven();)nA=nA.divide(2),kA++;A:for(VA=0;VA-i?new B(lA-1):new p(o,!0)},m.prototype.prev=function(){return new m(this.value-BigInt(1))};for(var uA=[1];2*uA[uA.length-1]<=r;)uA.push(2*uA[uA.length-1]);var BA=uA.length,CA=uA[BA-1];function z(lA){return Math.abs(lA)<=r}p.prototype.shiftLeft=function(lA){var tA=MA(lA).toJSNumber();if(!z(tA))throw new Error(String(tA)+" is too large for shifting.");if(tA<0)return this.shiftRight(-tA);var N=this;if(N.isZero())return N;for(;tA>=BA;)N=N.multiply(CA),tA-=BA-1;return N.multiply(uA[tA])},m.prototype.shiftLeft=B.prototype.shiftLeft=p.prototype.shiftLeft,p.prototype.shiftRight=function(lA){var tA,N=MA(lA).toJSNumber();if(!z(N))throw new Error(String(N)+" is too large for shifting.");if(N<0)return this.shiftLeft(-N);for(var nA=this;N>=BA;){if(nA.isZero()||nA.isNegative()&&nA.isUnit())return nA;tA=Z(nA,CA),nA=tA[1].isNegative()?tA[0].prev():tA[0],N-=BA-1}return tA=Z(nA,uA[N]),tA[1].isNegative()?tA[0].prev():tA[0]},m.prototype.shiftRight=B.prototype.shiftRight=p.prototype.shiftRight;function AA(lA,tA,N){tA=MA(tA);for(var nA=lA.isNegative(),kA=tA.isNegative(),bA=nA?lA.not():lA,TA=kA?tA.not():tA,VA=0,De=0,_e=null,Ae=null,Q=[];!bA.isZero()||!TA.isZero();)_e=Z(bA,CA),VA=_e[1].toJSNumber(),nA&&(VA=CA-1-VA),Ae=Z(TA,CA),De=Ae[1].toJSNumber(),kA&&(De=CA-1-De),bA=_e[0],TA=Ae[0],Q.push(N(VA,De));for(var Ze=N(nA?1:0,kA?1:0)!==0?Ep(-1):Ep(0),Cr=Q.length-1;Cr>=0;Cr-=1)Ze=Ze.multiply(CA).add(Ep(Q[Cr]));return Ze}p.prototype.not=function(){return this.negate().prev()},m.prototype.not=B.prototype.not=p.prototype.not,p.prototype.and=function(lA){return AA(this,lA,function(tA,N){return tA&N})},m.prototype.and=B.prototype.and=p.prototype.and,p.prototype.or=function(lA){return AA(this,lA,function(tA,N){return tA|N})},m.prototype.or=B.prototype.or=p.prototype.or,p.prototype.xor=function(lA){return AA(this,lA,function(tA,N){return tA^N})},m.prototype.xor=B.prototype.xor=p.prototype.xor;var iA=1<<30,_A=(r&-r)*(r&-r)|iA;function fA(lA){var tA=lA.value,N=typeof tA=="number"?tA|iA:typeof tA=="bigint"?tA|BigInt(iA):tA[0]+tA[1]*r|_A;return N&-N}function M(lA,tA){if(tA.compareTo(lA)<=0){var N=M(lA,tA.square(tA)),nA=N.p,kA=N.e,bA=nA.multiply(tA);return bA.compareTo(lA)<=0?{p:bA,e:kA*2+1}:{p:nA,e:kA*2}}return{p:Ep(1),e:0}}p.prototype.bitLength=function(){var lA=this;return lA.compareTo(Ep(0))<0&&(lA=lA.negate().subtract(Ep(1))),lA.compareTo(Ep(0))===0?Ep(0):Ep(M(lA,Ep(2)).e).add(Ep(1))},m.prototype.bitLength=B.prototype.bitLength=p.prototype.bitLength;function aA(lA,tA){return lA=MA(lA),tA=MA(tA),lA.greater(tA)?lA:tA}function gA(lA,tA){return lA=MA(lA),tA=MA(tA),lA.lesser(tA)?lA:tA}function QA(lA,tA){if(lA=MA(lA).abs(),tA=MA(tA).abs(),lA.equals(tA))return lA;if(lA.isZero())return tA;if(tA.isZero())return lA;for(var N=E[1],nA,kA;lA.isEven()&&tA.isEven();)nA=gA(fA(lA),fA(tA)),lA=lA.divide(nA),tA=tA.divide(nA),N=N.multiply(nA);for(;lA.isEven();)lA=lA.divide(fA(lA));do{for(;tA.isEven();)tA=tA.divide(fA(tA));lA.greater(tA)&&(kA=tA,tA=lA,lA=kA),tA=tA.subtract(lA)}while(!tA.isZero());return N.isUnit()?lA:lA.multiply(N)}function mA(lA,tA){return lA=MA(lA).abs(),tA=MA(tA).abs(),lA.divide(QA(lA,tA)).multiply(tA)}function FA(lA,tA,N){lA=MA(lA),tA=MA(tA);var nA=N||Math.random,kA=gA(lA,tA),bA=aA(lA,tA),TA=bA.subtract(kA).add(1);if(TA.isSmall)return kA.add(Math.floor(nA()*TA));for(var VA=KA(TA,r).value,De=[],_e=!0,Ae=0;Ae=TA){if(De==="1"&&TA===1)continue;throw new Error(De+" is not a valid digit in base "+tA+".")}}tA=MA(tA);var _e=[],Ae=lA[0]==="-";for(bA=Ae?1:0;bA"&&bA=0;bA--)nA=nA.add(lA[bA].times(kA)),kA=kA.times(tA);return N?nA.negate():nA}function re(lA,tA){return tA=tA||s,lA"}function KA(lA,tA){if(tA=Ep(tA),tA.isZero()){if(lA.isZero())return{value:[0],isNegative:!1};throw new Error("Cannot convert nonzero numbers to base 0.")}if(tA.equals(-1)){if(lA.isZero())return{value:[0],isNegative:!1};if(lA.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-lA.toJSNumber())).map(Array.prototype.valueOf,[1,0])),isNegative:!1};var N=Array.apply(null,Array(lA.toJSNumber()-1)).map(Array.prototype.valueOf,[0,1]);return N.unshift([1]),{value:[].concat.apply([],N),isNegative:!1}}var nA=!1;if(lA.isNegative()&&tA.isPositive()&&(nA=!0,lA=lA.abs()),tA.isUnit())return lA.isZero()?{value:[0],isNegative:!1}:{value:Array.apply(null,Array(lA.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:nA};for(var kA=[],bA=lA,TA;bA.isNegative()||bA.compareAbs(tA)>=0;){TA=bA.divmod(tA),bA=TA.quotient;var VA=TA.remainder;VA.isNegative()&&(VA=tA.minus(VA).abs(),bA=bA.next()),kA.push(VA.toJSNumber())}return kA.push(bA.toJSNumber()),{value:kA.reverse(),isNegative:nA}}function $A(lA,tA,N){var nA=KA(lA,tA);return(nA.isNegative?"-":"")+nA.value.map(function(kA){return re(kA,N)}).join("")}p.prototype.toArray=function(lA){return KA(this,lA)},B.prototype.toArray=function(lA){return KA(this,lA)},m.prototype.toArray=function(lA){return KA(this,lA)},p.prototype.toString=function(lA,tA){if(lA===A&&(lA=10),lA!==10)return $A(this,lA,tA);for(var N=this.value,nA=N.length,kA=String(N[--nA]),bA="0000000",TA;--nA>=0;)TA=String(N[nA]),kA+=bA.slice(TA.length)+TA;var VA=this.sign?"-":"";return VA+kA},B.prototype.toString=function(lA,tA){return lA===A&&(lA=10),lA!=10?$A(this,lA,tA):String(this.value)},m.prototype.toString=B.prototype.toString,m.prototype.toJSON=p.prototype.toJSON=B.prototype.toJSON=function(){return this.toString()},p.prototype.valueOf=function(){return parseInt(this.toString(),10)},p.prototype.toJSNumber=p.prototype.valueOf,B.prototype.valueOf=function(){return this.value},B.prototype.toJSNumber=B.prototype.valueOf,m.prototype.valueOf=m.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};function jA(lA){if(_(+lA)){var tA=+lA;if(tA===H(tA))return g?new m(BigInt(tA)):new B(tA);throw new Error("Invalid integer: "+lA)}var N=lA[0]==="-";N&&(lA=lA.slice(1));var nA=lA.split(/e/i);if(nA.length>2)throw new Error("Invalid integer: "+nA.join("e"));if(nA.length===2){var kA=nA[1];if(kA[0]==="+"&&(kA=kA.slice(1)),kA=+kA,kA!==H(kA)||!_(kA))throw new Error("Invalid integer: "+kA+" is not a valid exponent.");var bA=nA[0],TA=bA.indexOf(".");if(TA>=0&&(kA-=bA.length-TA-1,bA=bA.slice(0,TA)+bA.slice(TA+1)),kA<0)throw new Error("Cannot include negative exponent part for integers");bA+=new Array(kA+1).join("0"),lA=bA}var VA=/^([0-9][0-9]*)$/.test(lA);if(!VA)throw new Error("Invalid integer: "+lA);if(g)return new m(BigInt(N?"-"+lA:lA));for(var De=[],_e=lA.length,Ae=t,Q=_e-Ae;_e>0;)De.push(+lA.slice(Q,_e)),Q-=Ae,Q<0&&(Q=0),_e-=Ae;return k(De),new p(De,N)}function ue(lA){if(g)return new m(BigInt(lA));if(_(lA)){if(lA!==H(lA))throw new Error(lA+" is not an integer.");return new B(lA)}return jA(lA.toString())}function MA(lA){return typeof lA=="number"?ue(lA):typeof lA=="string"?jA(lA):typeof lA=="bigint"?new m(lA):lA}for(var RA=0;RA<1e3;RA++)E[RA]=MA(RA),RA>0&&(E[-RA]=MA(-RA));return E.one=E[1],E.zero=E[0],E.minusOne=E[-1],E.max=aA,E.min=gA,E.gcd=QA,E.lcm=mA,E.isInstance=function(lA){return lA instanceof p||lA instanceof B||lA instanceof m},E.randBetween=FA,E.fromArray=function(lA,tA,N){return ce(lA.map(MA),MA(tA||10),N)},E}();typeof bP<"u"&&bP.hasOwnProperty("exports")&&(bP.exports=Ep);typeof define=="function"&&define.amd&&define(function(){return Ep})});var w8A=GA((G$t,_8A)=>{var dw=m8A(),OP=require("stream");(!OP.Writable||!OP.Writable.prototype.destroy)&&(OP=e1());var MP;function Dcr(){var A=3988292384,r,t,i;for(MP=[],t=0;t<256;t++){for(r=t,i=0;i<8;i++)r=r&1?A^r>>>1:r=r>>>1;MP[t]=r>>>0}}function D8A(A,r){return MP||Dcr(),A.charCodeAt&&(A=A.charCodeAt(0)),dw(r).shiftRight(8).and(16777215).xor(MP[dw(r).xor(A).and(255)]).value}function A5(){if(!(this instanceof A5))return new A5;this.key0=305419896,this.key1=591751049,this.key2=878082192}A5.prototype.update=function(A){this.key0=D8A(A,this.key0),this.key1=dw(this.key0).and(255).and(4294967295).add(this.key1),this.key1=dw(this.key1).multiply(134775813).add(1).and(4294967295).value,this.key2=D8A(dw(this.key1).shiftRight(24).and(255),this.key2)};A5.prototype.decryptByte=function(A){var r=dw(this.key2).or(2);return A=A^dw(r).multiply(dw(r^1)).shiftRight(8).and(255),this.update(A),A};A5.prototype.stream=function(){var A=OP.Transform(),r=this;return A._transform=function(t,i,o){for(var s=0;s{var _cr=rw(),wcr=w8A(),vcr=tP(),v8=require("stream"),ycr=K6(),Ccr=require("zlib"),Icr=aP(),bcr=Pb(),Ocr=oP();(!v8.Writable||!v8.Writable.prototype.destroy)&&(v8=e1());v8A.exports=function(r,t,i,o){var s=vcr(),g=v8.PassThrough(),E=r.stream(t);return E.pipe(s).on("error",function(p){g.emit("error",p)}),g.vars=s.pull(30).then(function(p){var B=ycr.parse(p).word32lu("signature").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars;return B.lastModifiedDateTime=Ocr(B.lastModifiedDate,B.lastModifiedTime),s.pull(B.fileNameLength).then(function(m){return B.fileName=m.toString("utf8"),s.pull(B.extraFieldLength)}).then(function(m){var _;return B.extra=Icr(m,B),o&&o.compressedSize&&(B=o),B.flags&1&&(_=s.pull(12).then(function(x){if(!i)throw new Error("MISSING_PASSWORD");var O=wcr();String(i).split("").forEach(function(H){O.update(H)});for(var k=0;k>8&255:B.crc32>>24&255;if(x[11]!==P)throw new Error("BAD_PASSWORD");return B})),_cr.resolve(_).then(function(){return g.emit("vars",B),B})})}),g.vars.then(function(p){var B=!(p.flags&8)||p.compressedSize>0,m,_=p.compressionMethod?Ccr.createInflateRaw():v8.PassThrough();B?(g.size=p.uncompressedSize,m=p.compressedSize):(m=bcr.alloc(4),m.writeUInt32LE(134695760,0));var x=s.stream(m);p.decrypt&&(x=x.pipe(p.decrypt.stream())),x.pipe(_).on("error",function(O){g.emit("error",O)}).pipe(g).on("finish",function(){E.destroy?E.destroy():E.abort?E.abort():E.close?E.close():E.push?E.push():console.log("warning - unable to close stream")})}).catch(function(p){g.emit("error",p)}),g}});var b8A=GA((U$t,I8A)=>{var I8=K6(),C8=tP(),Mcr=y8A(),y8=rw(),kcr=nP(),xcr=aP(),Hcr=Pb(),xoA=require("path"),Scr=MoA().Writer,Fcr=oP(),C8A=Hcr.alloc(4);C8A.writeUInt32LE(101010256,0);function Rcr(A){var r=A.stream(0).pipe(C8());return r.pull(4).then(function(t){var i=t.readUInt32LE(0);if(i===875721283){var o;return r.pull(12).then(function(s){o=I8.parse(s).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars}).then(function(){return r.pull(o.pubKeyLength+o.signatureLength)}).then(function(s){return o.publicKey=s.slice(0,o.pubKeyLength),o.signature=s.slice(o.pubKeyLength),o.size=16+o.pubKeyLength+o.signatureLength,o})}})}function Tcr(A,r){var t=I8.parse(r).word32lu("signature").word32lu("diskNumber").word64lu("offsetToStartOfCentralDirectory").word32lu("numberOfDisks").vars;if(t.signature!=117853008)throw new Error("invalid zip64 end of central dir locator signature (0x07064b50): 0x"+t.signature.toString(16));var i=C8();return A.stream(t.offsetToStartOfCentralDirectory).pipe(i),i.pull(56)}function Ncr(A){var r=I8.parse(A).word32lu("signature").word64lu("sizeOfCentralDirectory").word16lu("version").word16lu("versionsNeededToExtract").word32lu("diskNumber").word32lu("diskStart").word64lu("numberOfRecordsOnDisk").word64lu("numberOfRecords").word64lu("sizeOfCentralDirectory").word64lu("offsetToStartOfCentralDirectory").vars;if(r.signature!=101075792)throw new Error("invalid zip64 end of central dir locator signature (0x06064b50): 0x0"+r.signature.toString(16));return r}I8A.exports=function(r,t){var i=C8(),o=C8(),s=t&&t.tailSize||80,g,E,p,B;return t&&t.crx&&(E=Rcr(r)),r.size().then(function(m){return g=m,r.stream(Math.max(0,m-s)).on("error",function(_){i.emit("error",_)}).pipe(i),i.pull(C8A)}).then(function(){return y8.props({directory:i.pull(22),crxHeader:E})}).then(function(m){var _=m.directory;if(p=m.crxHeader&&m.crxHeader.size||0,B=I8.parse(_).word32lu("signature").word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars,B.numberOfRecords==65535||B.numberOfRecords==65535||B.offsetToStartOfCentralDirectory==4294967295){let O=g-(s-i.match+20),k=C8();return r.stream(O).pipe(k),k.pull(20).then(function(P){return Tcr(r,P)}).then(function(P){B=Ncr(P)})}else B.offsetToStartOfCentralDirectory+=p}).then(function(){if(B.commentLength)return i.pull(B.commentLength).then(function(m){B.comment=m.toString("utf8")})}).then(function(){return r.stream(B.offsetToStartOfCentralDirectory).pipe(o),B.extract=function(m){if(!m||!m.path)throw new Error("PATH_MISSING");return m.path=xoA.resolve(xoA.normalize(m.path)),B.files.then(function(_){return y8.map(_,function(x){if(x.type!="Directory"){var O=xoA.join(m.path,x.path);if(O.indexOf(m.path)==0){var k=m.getWriter?m.getWriter({path:O}):Scr({path:O});return new y8(function(P,H){x.stream(m.password).on("error",H).pipe(k).on("close",P).on("error",H)})}}},{concurrency:m.concurrency>1?m.concurrency:1})})},B.files=y8.mapSeries(Array(B.numberOfRecords),function(){return o.pull(46).then(function(m){var _=I8.parse(m).word32lu("signature").word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars;return _.offsetToLocalFileHeader+=p,_.lastModifiedDateTime=Fcr(_.lastModifiedDate,_.lastModifiedTime),o.pull(_.fileNameLength).then(function(x){return _.pathBuffer=x,_.path=x.toString("utf8"),_.isUnicode=(_.flags&2048)!=0,o.pull(_.extraFieldLength)}).then(function(x){return _.extra=xcr(x,_),o.pull(_.fileCommentLength)}).then(function(x){return _.comment=x,_.type=_.uncompressedSize===0&&/[\/\\]$/.test(_.path)?"Directory":"File",_.stream=function(O){return Mcr(r,_.offsetToLocalFileHeader,O,_)},_.buffer=function(O){return kcr(_.stream(O))},_})})}),y8.props(B)})}});var k8A=GA((L$t,M8A)=>{var O8A=r1(),kP=rw(),b8=b8A(),xP=require("stream");(!xP.Writable||!xP.Writable.prototype.destroy)&&(xP=e1());M8A.exports={buffer:function(A,r){var t={stream:function(i,o){var s=xP.PassThrough();return s.end(A.slice(i,o)),s},size:function(){return kP.resolve(A.length)}};return b8(t,r)},file:function(A,r){var t={stream:function(i,o){return O8A.createReadStream(A,{start:i,end:o&&i+o})},size:function(){return new kP(function(i,o){O8A.stat(A,function(s,g){s?o(s):i(g.size)})})}};return b8(t,r)},url:function(A,r,t){if(typeof r=="string"&&(r={url:r}),!r.url)throw"URL missing";r.headers=r.headers||{};var i={stream:function(o,s){var g=Object.create(r);return g.headers=Object.create(r.headers),g.headers.range="bytes="+o+"-"+(s||""),A(g)},size:function(){return new kP(function(o,s){var g=A(r);g.on("response",function(E){g.abort(),E.headers["content-length"]?o(E.headers["content-length"]):s(new Error("Missing content length header"))}).on("error",s)})}};return b8(i,t)},s3:function(A,r,t){var i={size:function(){return new kP(function(o,s){A.headObject(r,function(g,E){g?s(g):o(E.ContentLength)})})},stream:function(o,s){var g={};for(var E in r)g[E]=r[E];return g.Range="bytes="+o+"-"+(s||""),A.getObject(g).createReadStream()}};return b8(i,t)},custom:function(A,r){return b8(A,r)}}});var HoA=GA(O8=>{"use strict";I5A();k5A();H5A();O8.Parse=sP();O8.ParseOne=bOA();O8.Extract=Q8A();O8.Open=k8A()});var G0=GA(bf=>{Object.defineProperty(bf,"__esModule",{value:!0});var F8A=Object.prototype.toString;function Pcr(A){switch(F8A.call(A)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return HP(A,Error)}}function t5(A,r){return F8A.call(A)===`[object ${r}]`}function Gcr(A){return t5(A,"ErrorEvent")}function Ycr(A){return t5(A,"DOMError")}function Ucr(A){return t5(A,"DOMException")}function Lcr(A){return t5(A,"String")}function jcr(A){return A===null||typeof A!="object"&&typeof A!="function"}function R8A(A){return t5(A,"Object")}function Wcr(A){return typeof Event<"u"&&HP(A,Event)}function Jcr(A){return typeof Element<"u"&&HP(A,Element)}function qcr(A){return t5(A,"RegExp")}function Vcr(A){return!!(A&&A.then&&typeof A.then=="function")}function zcr(A){return R8A(A)&&"nativeEvent"in A&&"preventDefault"in A&&"stopPropagation"in A}function Kcr(A){return typeof A=="number"&&A!==A}function HP(A,r){try{return A instanceof r}catch{return!1}}bf.isDOMError=Ycr;bf.isDOMException=Ucr;bf.isElement=Jcr;bf.isError=Pcr;bf.isErrorEvent=Gcr;bf.isEvent=Wcr;bf.isInstanceOf=HP;bf.isNaN=Kcr;bf.isPlainObject=R8A;bf.isPrimitive=jcr;bf.isRegExp=qcr;bf.isString=Lcr;bf.isSyntheticEvent=zcr;bf.isThenable=Vcr});var k8=GA(jy=>{Object.defineProperty(jy,"__esModule",{value:!0});var SoA=G0();function Xcr(A,r=0){return typeof A!="string"||r===0||A.length<=r?A:`${A.slice(0,r)}...`}function Zcr(A,r){let t=A,i=t.length;if(i<=150)return t;r>i&&(r=i);let o=Math.max(r-60,0);o<5&&(o=0);let s=Math.min(o+140,i);return s>i-5&&(s=i),s===i&&(o=Math.max(s-140,0)),t=t.slice(o,s),o>0&&(t=`'{snip} ${t}`),sT8A(A,i,t))}jy.isMatchingPattern=T8A;jy.safeJoin=$cr;jy.snipLine=Zcr;jy.stringMatchesSomePattern=Alr;jy.truncate=Xcr});var G8A=GA(ToA=>{Object.defineProperty(ToA,"__esModule",{value:!0});var FoA=G0(),elr=k8();function rlr(A,r,t=250,i,o,s,g){if(!s.exception||!s.exception.values||!g||!FoA.isInstanceOf(g.originalException,Error))return;let E=s.exception.values.length>0?s.exception.values[s.exception.values.length-1]:void 0;E&&(s.exception.values=tlr(RoA(A,r,o,g.originalException,i,s.exception.values,E,0),t))}function RoA(A,r,t,i,o,s,g,E){if(s.length>=t+1)return s;let p=[...s];if(FoA.isInstanceOf(i[o],Error)){N8A(g,E);let B=A(r,i[o]),m=p.length;P8A(B,o,m,E),p=RoA(A,r,t,i[o],o,[B,...p],B,m)}return Array.isArray(i.errors)&&i.errors.forEach((B,m)=>{if(FoA.isInstanceOf(B,Error)){N8A(g,E);let _=A(r,B),x=p.length;P8A(_,`errors[${m}]`,x,E),p=RoA(A,r,t,B,o,[_,...p],_,x)}}),p}function N8A(A,r){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,is_exception_group:!0,exception_id:r}}function P8A(A,r,t,i){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,type:"chained",source:r,exception_id:t,parent_id:i}}function tlr(A,r){return A.map(t=>(t.value&&(t.value=elr.truncate(t.value,r)),t))}ToA.applyAggregateErrorsToEvent=rlr});var Y4=GA(x8=>{Object.defineProperty(x8,"__esModule",{value:!0});function SP(A){return A&&A.Math==Math?A:void 0}var NoA=typeof globalThis=="object"&&SP(globalThis)||typeof window=="object"&&SP(window)||typeof self=="object"&&SP(self)||typeof global=="object"&&SP(global)||function(){return this}()||{};function ilr(){return NoA}function nlr(A,r,t){let i=t||NoA,o=i.__SENTRY__=i.__SENTRY__||{};return o[A]||(o[A]=r())}x8.GLOBAL_OBJ=NoA;x8.getGlobalObject=ilr;x8.getGlobalSingleton=nlr});var PoA=GA(H8=>{Object.defineProperty(H8,"__esModule",{value:!0});var alr=G0(),olr=Y4(),FP=olr.getGlobalObject(),slr=80;function clr(A,r={}){try{let t=A,i=5,o=[],s=0,g=0,E=" > ",p=E.length,B,m=Array.isArray(r)?r:r.keyAttrs,_=!Array.isArray(r)&&r.maxStringLength||slr;for(;t&&s++1&&g+o.length*p+B.length>=_));)o.push(B),g+=B.length,t=t.parentNode;return o.reverse().join(E)}catch{return""}}function llr(A,r){let t=A,i=[],o,s,g,E,p;if(!t||!t.tagName)return"";i.push(t.tagName.toLowerCase());let B=r&&r.length?r.filter(_=>t.getAttribute(_)).map(_=>[_,t.getAttribute(_)]):null;if(B&&B.length)B.forEach(_=>{i.push(`[${_[0]}="${_[1]}"]`)});else if(t.id&&i.push(`#${t.id}`),o=t.className,o&&alr.isString(o))for(s=o.split(/\s+/),p=0;p{Object.defineProperty(Wy,"__esModule",{value:!0});var RP=Y4(),dlr="Sentry Logger ",TP=["debug","info","warn","error","log","assert","trace"];function U8A(A){if(!("console"in RP.GLOBAL_OBJ))return A();let r=RP.GLOBAL_OBJ.console,t={};TP.forEach(i=>{let o=r[i]&&r[i].__sentry_original__;i in r&&o&&(t[i]=r[i],r[i]=o)});try{return A()}finally{Object.keys(t).forEach(i=>{r[i]=t[i]})}}function Y8A(){let A=!1,r={enable:()=>{A=!0},disable:()=>{A=!1}};return typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?TP.forEach(t=>{r[t]=(...i)=>{A&&U8A(()=>{RP.GLOBAL_OBJ.console[t](`${dlr}[${t}]:`,...i)})}}):TP.forEach(t=>{r[t]=()=>{}}),r}Wy.logger=void 0;typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?Wy.logger=RP.getGlobalSingleton("logger",Y8A):Wy.logger=Y8A();Wy.CONSOLE_LEVELS=TP;Wy.consoleSandbox=U8A});var GoA=GA(S8=>{Object.defineProperty(S8,"__esModule",{value:!0});var NP=i5(),plr=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function Elr(A){return A==="http"||A==="https"}function flr(A,r=!1){let{host:t,path:i,pass:o,port:s,projectId:g,protocol:E,publicKey:p}=A;return`${E}://${p}${r&&o?`:${o}`:""}@${t}${s?`:${s}`:""}/${i&&`${i}/`}${g}`}function L8A(A){let r=plr.exec(A);if(!r){console.error(`Invalid Sentry Dsn: ${A}`);return}let[t,i,o="",s,g="",E]=r.slice(1),p="",B=E,m=B.split("/");if(m.length>1&&(p=m.slice(0,-1).join("/"),B=m.pop()),B){let _=B.match(/^\d+/);_&&(B=_[0])}return j8A({host:s,pass:o,path:p,projectId:B,port:g,protocol:t,publicKey:i})}function j8A(A){return{protocol:A.protocol,publicKey:A.publicKey||"",pass:A.pass||"",host:A.host,port:A.port||"",path:A.path||"",projectId:A.projectId}}function Blr(A){if(!(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__))return!0;let{port:r,projectId:t,protocol:i}=A;return["protocol","publicKey","host","projectId"].find(g=>A[g]?!1:(NP.logger.error(`Invalid Sentry Dsn: ${g} missing`),!0))?!1:t.match(/^\d+$/)?Elr(i)?r&&isNaN(parseInt(r,10))?(NP.logger.error(`Invalid Sentry Dsn: Invalid port ${r}`),!1):!0:(NP.logger.error(`Invalid Sentry Dsn: Invalid protocol ${i}`),!1):(NP.logger.error(`Invalid Sentry Dsn: Invalid projectId ${t}`),!1)}function hlr(A){let r=typeof A=="string"?L8A(A):j8A(A);if(!(!r||!Blr(r)))return r}S8.dsnFromString=L8A;S8.dsnToString=flr;S8.makeDsn=hlr});var LoA=GA(UoA=>{Object.defineProperty(UoA,"__esModule",{value:!0});var YoA=class extends Error{constructor(r,t="warn"){super(r),this.message=r,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=t}};UoA.SentryError=YoA});var a5=GA(Y0=>{Object.defineProperty(Y0,"__esModule",{value:!0});var Qlr=PoA(),n5=G0(),W8A=k8();function mlr(A,r,t){if(!(r in A))return;let i=A[r],o=t(i);if(typeof o=="function")try{z8A(o,i)}catch{}A[r]=o}function V8A(A,r,t){Object.defineProperty(A,r,{value:t,writable:!0,configurable:!0})}function z8A(A,r){let t=r.prototype||{};A.prototype=r.prototype=t,V8A(A,"__sentry_original__",r)}function Dlr(A){return A.__sentry_original__}function _lr(A){return Object.keys(A).map(r=>`${encodeURIComponent(r)}=${encodeURIComponent(A[r])}`).join("&")}function K8A(A){if(n5.isError(A))return{message:A.message,name:A.name,stack:A.stack,...q8A(A)};if(n5.isEvent(A)){let r={type:A.type,target:J8A(A.target),currentTarget:J8A(A.currentTarget),...q8A(A)};return typeof CustomEvent<"u"&&n5.isInstanceOf(A,CustomEvent)&&(r.detail=A.detail),r}else return A}function J8A(A){try{return n5.isElement(A)?Qlr.htmlTreeAsString(A):Object.prototype.toString.call(A)}catch{return""}}function q8A(A){if(typeof A=="object"&&A!==null){let r={};for(let t in A)Object.prototype.hasOwnProperty.call(A,t)&&(r[t]=A[t]);return r}else return{}}function wlr(A,r=40){let t=Object.keys(K8A(A));if(t.sort(),!t.length)return"[object has no keys]";if(t[0].length>=r)return W8A.truncate(t[0],r);for(let i=t.length;i>0;i--){let o=t.slice(0,i).join(", ");if(!(o.length>r))return i===t.length?o:W8A.truncate(o,r)}return""}function vlr(A){return joA(A,new Map)}function joA(A,r){if(n5.isPlainObject(A)){let t=r.get(A);if(t!==void 0)return t;let i={};r.set(A,i);for(let o of Object.keys(A))typeof A[o]<"u"&&(i[o]=joA(A[o],r));return i}if(Array.isArray(A)){let t=r.get(A);if(t!==void 0)return t;let i=[];return r.set(A,i),A.forEach(o=>{i.push(joA(o,r))}),i}return A}function ylr(A){let r;switch(!0){case A==null:r=new String(A);break;case(typeof A=="symbol"||typeof A=="bigint"):r=Object(A);break;case n5.isPrimitive(A):r=new A.constructor(A);break;default:r=A;break}return r}Y0.addNonEnumerableProperty=V8A;Y0.convertToPlainObject=K8A;Y0.dropUndefinedKeys=vlr;Y0.extractExceptionKeysForMessage=wlr;Y0.fill=mlr;Y0.getOriginalFunction=Dlr;Y0.markFunctionWrapped=z8A;Y0.objectify=ylr;Y0.urlEncode=_lr});var X8A=GA(WoA=>{Object.defineProperty(WoA,"__esModule",{value:!0});function Clr(A){let r=/^\s*[-]{4,}$/,t=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;return i=>{let o=i.match(t);if(o){let s,g,E,p,B;if(o[1]){E=o[1];let k=E.lastIndexOf(".");if(E[k-1]==="."&&k--,k>0){s=E.slice(0,k),g=E.slice(k+1);let P=s.indexOf(".Module");P>0&&(E=E.slice(P+1),s=s.slice(0,P))}p=void 0}g&&(p=s,B=g),g===""&&(B=void 0,E=void 0),E===void 0&&(B=B||"",E=p?`${p}.${B}`:B);let m=o[2]&&o[2].startsWith("file://")?o[2].slice(7):o[2],_=o[5]==="native";!m&&o[5]&&!_&&(m=o[5]);let O=!(_||m&&!m.startsWith("/")&&!m.includes(":\\")&&!m.startsWith(".")&&!m.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&m!==void 0&&!m.includes("node_modules/");return{filename:m,module:A?A(m):void 0,function:E,lineno:parseInt(o[3],10)||void 0,colno:parseInt(o[4],10)||void 0,in_app:O}}if(i.match(r))return{filename:i}}}WoA.node=Clr});var PP=GA(Jy=>{Object.defineProperty(Jy,"__esModule",{value:!0});var Ilr=X8A(),AMA=50,Z8A=/\(error: (.*)\)/,$8A=/captureMessage|captureException/;function eMA(...A){let r=A.sort((t,i)=>t[0]-i[0]).map(t=>t[1]);return(t,i=0)=>{let o=[],s=t.split(` -`);for(let g=i;g1024)continue;let p=Z8A.test(E)?E.replace(Z8A,"$1"):E;if(!p.match(/\S*Error: /)){for(let B of r){let m=B(p);if(m){o.push(m);break}}if(o.length>=AMA)break}}return rMA(o)}}function blr(A){return Array.isArray(A)?eMA(...A):A}function rMA(A){if(!A.length)return[];let r=Array.from(A);return/sentryWrapped/.test(r[r.length-1].function||"")&&r.pop(),r.reverse(),$8A.test(r[r.length-1].function||"")&&(r.pop(),$8A.test(r[r.length-1].function||"")&&r.pop()),r.slice(0,AMA).map(t=>({...t,filename:t.filename||r[r.length-1].filename,function:t.function||"?"}))}var JoA="";function Olr(A){try{return!A||typeof A!="function"?JoA:A.name||JoA}catch{return JoA}}function Mlr(A){return[90,Ilr.node(A)]}Jy.createStackParser=eMA;Jy.getFunctionName=Olr;Jy.nodeStackLineParser=Mlr;Jy.stackParserFromStackParserOptions=blr;Jy.stripSentryFramesAndReverse=rMA});var zoA=GA(i1=>{Object.defineProperty(i1,"__esModule",{value:!0});var klr=i5(),xlr=Y4(),GP=xlr.getGlobalObject();function Hlr(){try{return new ErrorEvent(""),!0}catch{return!1}}function Slr(){try{return new DOMError(""),!0}catch{return!1}}function Flr(){try{return new DOMException(""),!0}catch{return!1}}function VoA(){if(!("fetch"in GP))return!1;try{return new Headers,new Request("http://www.example.com"),new Response,!0}catch{return!1}}function qoA(A){return A&&/^function fetch\(\)\s+\{\s+\[native code\]\s+\}$/.test(A.toString())}function Rlr(){if(!VoA())return!1;if(qoA(GP.fetch))return!0;let A=!1,r=GP.document;if(r&&typeof r.createElement=="function")try{let t=r.createElement("iframe");t.hidden=!0,r.head.appendChild(t),t.contentWindow&&t.contentWindow.fetch&&(A=qoA(t.contentWindow.fetch)),r.head.removeChild(t)}catch(t){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&klr.logger.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",t)}return A}function Tlr(){return"ReportingObserver"in GP}function Nlr(){if(!VoA())return!1;try{return new Request("_",{referrerPolicy:"origin"}),!0}catch{return!1}}i1.isNativeFetch=qoA;i1.supportsDOMError=Slr;i1.supportsDOMException=Flr;i1.supportsErrorEvent=Hlr;i1.supportsFetch=VoA;i1.supportsNativeFetch=Rlr;i1.supportsReferrerPolicy=Nlr;i1.supportsReportingObserver=Tlr});var XoA=GA(KoA=>{Object.defineProperty(KoA,"__esModule",{value:!0});var Plr=Y4(),YP=Plr.getGlobalObject();function Glr(){let A=YP.chrome,r=A&&A.app&&A.app.runtime,t="history"in YP&&!!YP.history.pushState&&!!YP.history.replaceState;return!r&&t}KoA.supportsHistory=Glr});var sMA=GA(o5=>{Object.defineProperty(o5,"__esModule",{value:!0});var tMA=G0(),AsA=i5(),n1=a5(),Ylr=PP(),Ulr=zoA(),qy=Y4(),Llr=XoA(),Xp=qy.getGlobalObject(),F8="__sentry_xhr_v2__",R8={},iMA={};function jlr(A){if(!iMA[A])switch(iMA[A]=!0,A){case"console":Jlr();break;case"dom":$lr();break;case"xhr":Vlr();break;case"fetch":qlr();break;case"history":zlr();break;case"error":Aur();break;case"unhandledrejection":eur();break;default:(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&AsA.logger.warn("unknown instrumentation type:",A);return}}function Wlr(A,r){R8[A]=R8[A]||[],R8[A].push(r),jlr(A)}function U0(A,r){if(!(!A||!R8[A]))for(let t of R8[A]||[])try{t(r)}catch(i){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&AsA.logger.error(`Error while triggering instrumentation handler. -Type: ${A} -Name: ${Ylr.getFunctionName(t)} -Error:`,i)}}var ZoA={};function Jlr(){"console"in qy.GLOBAL_OBJ&&AsA.CONSOLE_LEVELS.forEach(function(A){A in qy.GLOBAL_OBJ.console&&n1.fill(qy.GLOBAL_OBJ.console,A,function(r){return ZoA[A]=r,function(...t){U0("console",{args:t,level:A});let i=ZoA[A];i&&i.apply(qy.GLOBAL_OBJ.console,t)}})})}function qlr(){Ulr.supportsNativeFetch()&&n1.fill(qy.GLOBAL_OBJ,"fetch",function(A){return function(...r){let{method:t,url:i}=oMA(r),o={args:r,fetchData:{method:t,url:i},startTimestamp:Date.now()};return U0("fetch",{...o}),A.apply(qy.GLOBAL_OBJ,r).then(s=>(U0("fetch",{...o,endTimestamp:Date.now(),response:s}),s),s=>{throw U0("fetch",{...o,endTimestamp:Date.now(),error:s}),s})}})}function $oA(A,r){return!!A&&typeof A=="object"&&!!A[r]}function nMA(A){return typeof A=="string"?A:A?$oA(A,"url")?A.url:A.toString?A.toString():"":""}function oMA(A){if(A.length===0)return{method:"GET",url:""};if(A.length===2){let[t,i]=A;return{url:nMA(t),method:$oA(i,"method")?String(i.method).toUpperCase():"GET"}}let r=A[0];return{url:nMA(r),method:$oA(r,"method")?String(r.method).toUpperCase():"GET"}}function Vlr(){if(!("XMLHttpRequest"in Xp))return;let A=XMLHttpRequest.prototype;n1.fill(A,"open",function(r){return function(...t){let i=t[1],o=this[F8]={method:tMA.isString(t[0])?t[0].toUpperCase():t[0],url:t[1],request_headers:{}};tMA.isString(i)&&o.method==="POST"&&i.match(/sentry_key/)&&(this.__sentry_own_request__=!0);let s=()=>{let g=this[F8];if(g&&this.readyState===4){try{g.status_code=this.status}catch{}U0("xhr",{args:t,endTimestamp:Date.now(),startTimestamp:Date.now(),xhr:this})}};return"onreadystatechange"in this&&typeof this.onreadystatechange=="function"?n1.fill(this,"onreadystatechange",function(g){return function(...E){return s(),g.apply(this,E)}}):this.addEventListener("readystatechange",s),n1.fill(this,"setRequestHeader",function(g){return function(...E){let[p,B]=E,m=this[F8];return m&&(m.request_headers[p.toLowerCase()]=B),g.apply(this,E)}}),r.apply(this,t)}}),n1.fill(A,"send",function(r){return function(...t){let i=this[F8];return i&&t[0]!==void 0&&(i.body=t[0]),U0("xhr",{args:t,startTimestamp:Date.now(),xhr:this}),r.apply(this,t)}})}var UP;function zlr(){if(!Llr.supportsHistory())return;let A=Xp.onpopstate;Xp.onpopstate=function(...t){let i=Xp.location.href,o=UP;if(UP=i,U0("history",{from:o,to:i}),A)try{return A.apply(this,t)}catch{}};function r(t){return function(...i){let o=i.length>2?i[2]:void 0;if(o){let s=UP,g=String(o);UP=g,U0("history",{from:s,to:g})}return t.apply(this,i)}}n1.fill(Xp.history,"pushState",r),n1.fill(Xp.history,"replaceState",r)}var Klr=1e3,LP,jP;function Xlr(A,r){if(!A||A.type!==r.type)return!0;try{if(A.target!==r.target)return!0}catch{}return!1}function Zlr(A){if(A.type!=="keypress")return!1;try{let r=A.target;if(!r||!r.tagName)return!0;if(r.tagName==="INPUT"||r.tagName==="TEXTAREA"||r.isContentEditable)return!1}catch{}return!0}function aMA(A,r=!1){return t=>{if(!t||jP===t||Zlr(t))return;let i=t.type==="keypress"?"input":t.type;LP===void 0?(A({event:t,name:i,global:r}),jP=t):Xlr(jP,t)&&(A({event:t,name:i,global:r}),jP=t),clearTimeout(LP),LP=Xp.setTimeout(()=>{LP=void 0},Klr)}}function $lr(){if(!("document"in Xp))return;let A=U0.bind(null,"dom"),r=aMA(A,!0);Xp.document.addEventListener("click",r,!1),Xp.document.addEventListener("keypress",r,!1),["EventTarget","Node"].forEach(t=>{let i=Xp[t]&&Xp[t].prototype;!i||!i.hasOwnProperty||!i.hasOwnProperty("addEventListener")||(n1.fill(i,"addEventListener",function(o){return function(s,g,E){if(s==="click"||s=="keypress")try{let p=this,B=p.__sentry_instrumentation_handlers__=p.__sentry_instrumentation_handlers__||{},m=B[s]=B[s]||{refCount:0};if(!m.handler){let _=aMA(A);m.handler=_,o.call(this,s,_,E)}m.refCount++}catch{}return o.call(this,s,g,E)}}),n1.fill(i,"removeEventListener",function(o){return function(s,g,E){if(s==="click"||s=="keypress")try{let p=this,B=p.__sentry_instrumentation_handlers__||{},m=B[s];m&&(m.refCount--,m.refCount<=0&&(o.call(this,s,m.handler,E),m.handler=void 0,delete B[s]),Object.keys(B).length===0&&delete p.__sentry_instrumentation_handlers__)}catch{}return o.call(this,s,g,E)}}))})}var WP=null;function Aur(){WP=Xp.onerror,Xp.onerror=function(A,r,t,i,o){return U0("error",{column:i,error:o,line:t,msg:A,url:r}),WP&&!WP.__SENTRY_LOADER__?WP.apply(this,arguments):!1},Xp.onerror.__SENTRY_INSTRUMENTED__=!0}var JP=null;function eur(){JP=Xp.onunhandledrejection,Xp.onunhandledrejection=function(A){return U0("unhandledrejection",A),JP&&!JP.__SENTRY_LOADER__?JP.apply(this,arguments):!0},Xp.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}o5.SENTRY_XHR_DATA_KEY=F8;o5.addInstrumentationHandler=Wlr;o5.originalConsoleMethods=ZoA;o5.parseFetchArgs=oMA});var rsA=GA(esA=>{Object.defineProperty(esA,"__esModule",{value:!0});function rur(){let A=typeof WeakSet=="function",r=A?new WeakSet:[];function t(o){if(A)return r.has(o)?!0:(r.add(o),!1);for(let s=0;s{Object.defineProperty(a1,"__esModule",{value:!0});var tur=a5(),tsA=k8(),iur=Y4();function nur(){let A=iur.GLOBAL_OBJ,r=A.crypto||A.msCrypto;if(r&&r.randomUUID)return r.randomUUID().replace(/-/g,"");let t=r&&r.getRandomValues?()=>r.getRandomValues(new Uint8Array(1))[0]:()=>Math.random()*16;return([1e7]+1e3+4e3+8e3+1e11).replace(/[018]/g,i=>(i^(t()&15)>>i/4).toString(16))}function cMA(A){return A.exception&&A.exception.values?A.exception.values[0]:void 0}function aur(A){let{message:r,event_id:t}=A;if(r)return r;let i=cMA(A);return i?i.type&&i.value?`${i.type}: ${i.value}`:i.type||i.value||t||"":t||""}function our(A,r,t){let i=A.exception=A.exception||{},o=i.values=i.values||[],s=o[0]=o[0]||{};s.value||(s.value=r||""),s.type||(s.type=t||"Error")}function sur(A,r){let t=cMA(A);if(!t)return;let i={type:"generic",handled:!0},o=t.mechanism;if(t.mechanism={...i,...o,...r},r&&"data"in r){let s={...o&&o.data,...r.data};t.mechanism.data=s}}var cur=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function lur(A){let r=A.match(cur)||[],t=parseInt(r[1],10),i=parseInt(r[2],10),o=parseInt(r[3],10);return{buildmetadata:r[5],major:isNaN(t)?void 0:t,minor:isNaN(i)?void 0:i,patch:isNaN(o)?void 0:o,prerelease:r[4]}}function uur(A,r,t=5){if(r.lineno===void 0)return;let i=A.length,o=Math.max(Math.min(i-1,r.lineno-1),0);r.pre_context=A.slice(Math.max(0,o-t),o).map(s=>tsA.snipLine(s,0)),r.context_line=tsA.snipLine(A[Math.min(i-1,o)],r.colno||0),r.post_context=A.slice(Math.min(o+1,i),o+1+t).map(s=>tsA.snipLine(s,0))}function gur(A){if(A&&A.__sentry_captured__)return!0;try{tur.addNonEnumerableProperty(A,"__sentry_captured__",!0)}catch{}return!1}function dur(A){return Array.isArray(A)?A:[A]}a1.addContextToFrame=uur;a1.addExceptionMechanism=sur;a1.addExceptionTypeValue=our;a1.arrayify=dur;a1.checkOrSetAlreadyCaught=gur;a1.getEventDescription=aur;a1.parseSemver=lur;a1.uuid4=nur});var nsA=GA(qP=>{Object.defineProperty(qP,"__esModule",{value:!0});function pur(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}function Eur(){return"npm"}qP.getSDKSource=Eur;qP.isBrowserBundle=pur});var asA=GA((T8,zP)=>{Object.defineProperty(T8,"__esModule",{value:!0});var fur=nsA();function Bur(){return!fur.isBrowserBundle()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}function VP(A,r){return A.require(r)}function hur(A){let r;try{r=VP(zP,A)}catch{}try{let{cwd:t}=VP(zP,"process");r=VP(zP,`${t()}/node_modules/${A}`)}catch{}return r}T8.dynamicRequire=VP;T8.isNodeEnv=Bur;T8.loadModule=hur});var XP=GA(N8=>{Object.defineProperty(N8,"__esModule",{value:!0});var lMA=G0(),Qur=rsA(),mur=a5(),Dur=PP();function uMA(A,r=100,t=1/0){try{return KP("",A,r,t)}catch(i){return{ERROR:`**non-serializable** (${i})`}}}function gMA(A,r=3,t=100*1024){let i=uMA(A,r);return yur(i)>t?gMA(A,r-1,t):i}function KP(A,r,t=1/0,i=1/0,o=Qur.memoBuilder()){let[s,g]=o;if(r==null||["number","boolean","string"].includes(typeof r)&&!lMA.isNaN(r))return r;let E=_ur(A,r);if(!E.startsWith("[object "))return E;if(r.__sentry_skip_normalization__)return r;let p=typeof r.__sentry_override_normalization_depth__=="number"?r.__sentry_override_normalization_depth__:t;if(p===0)return E.replace("object ","");if(s(r))return"[Circular ~]";let B=r;if(B&&typeof B.toJSON=="function")try{let O=B.toJSON();return KP("",O,p-1,i,o)}catch{}let m=Array.isArray(r)?[]:{},_=0,x=mur.convertToPlainObject(r);for(let O in x){if(!Object.prototype.hasOwnProperty.call(x,O))continue;if(_>=i){m[O]="[MaxProperties ~]";break}let k=x[O];m[O]=KP(O,k,p-1,i,o),_++}return g(r),m}function _ur(A,r){try{if(A==="domain"&&r&&typeof r=="object"&&r._events)return"[Domain]";if(A==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&r===global)return"[Global]";if(typeof window<"u"&&r===window)return"[Window]";if(typeof document<"u"&&r===document)return"[Document]";if(lMA.isSyntheticEvent(r))return"[SyntheticEvent]";if(typeof r=="number"&&r!==r)return"[NaN]";if(typeof r=="function")return`[Function: ${Dur.getFunctionName(r)}]`;if(typeof r=="symbol")return`[${String(r)}]`;if(typeof r=="bigint")return`[BigInt: ${String(r)}]`;let t=wur(r);return/^HTML(\w*)Element$/.test(t)?`[HTMLElement: ${t}]`:`[object ${t}]`}catch(t){return`**non-serializable** (${t})`}}function wur(A){let r=Object.getPrototypeOf(A);return r?r.constructor.name:"null prototype"}function vur(A){return~-encodeURI(A).split(/%..|./).length}function yur(A){return vur(JSON.stringify(A))}N8.normalize=uMA;N8.normalizeToSize=gMA;N8.walk=KP});var hMA=GA(U4=>{Object.defineProperty(U4,"__esModule",{value:!0});function pMA(A,r){let t=0;for(let i=A.length-1;i>=0;i--){let o=A[i];o==="."?A.splice(i,1):o===".."?(A.splice(i,1),t++):t&&(A.splice(i,1),t--)}if(r)for(;t--;t)A.unshift("..");return A}var Cur=/^(\S+:\\|\/?)([\s\S]*?)((?:\.{1,2}|[^/\\]+?|)(\.[^./\\]*|))(?:[/\\]*)$/;function EMA(A){let r=A.length>1024?`${A.slice(-1024)}`:A,t=Cur.exec(r);return t?t.slice(1):[]}function osA(...A){let r="",t=!1;for(let i=A.length-1;i>=-1&&!t;i--){let o=i>=0?A[i]:"/";o&&(r=`${o}/${r}`,t=o.charAt(0)==="/")}return r=pMA(r.split("/").filter(i=>!!i),!t).join("/"),(t?"/":"")+r||"."}function dMA(A){let r=0;for(;r=0&&A[t]==="";t--);return r>t?[]:A.slice(r,t-r+1)}function Iur(A,r){A=osA(A).slice(1),r=osA(r).slice(1);let t=dMA(A.split("/")),i=dMA(r.split("/")),o=Math.min(t.length,i.length),s=o;for(let E=0;E!!o),!r).join("/");return!i&&!r&&(i="."),i&&t&&(i+="/"),(r?"/":"")+i}function BMA(A){return A.charAt(0)==="/"}function bur(...A){return fMA(A.join("/"))}function Our(A){let r=EMA(A),t=r[0],i=r[1];return!t&&!i?".":(i&&(i=i.slice(0,i.length-1)),t+i)}function Mur(A,r){let t=EMA(A)[2];return r&&t.slice(r.length*-1)===r&&(t=t.slice(0,t.length-r.length)),t}U4.basename=Mur;U4.dirname=Our;U4.isAbsolute=BMA;U4.join=bur;U4.normalizePath=fMA;U4.relative=Iur;U4.resolve=osA});var ssA=GA(G8=>{Object.defineProperty(G8,"__esModule",{value:!0});var kur=G0(),L4;(function(A){A[A.PENDING=0]="PENDING";let t=1;A[A.RESOLVED=t]="RESOLVED";let i=2;A[A.REJECTED=i]="REJECTED"})(L4||(L4={}));function xur(A){return new P8(r=>{r(A)})}function Hur(A){return new P8((r,t)=>{t(A)})}var P8=class A{constructor(r){A.prototype.__init.call(this),A.prototype.__init2.call(this),A.prototype.__init3.call(this),A.prototype.__init4.call(this),this._state=L4.PENDING,this._handlers=[];try{r(this._resolve,this._reject)}catch(t){this._reject(t)}}then(r,t){return new A((i,o)=>{this._handlers.push([!1,s=>{if(!r)i(s);else try{i(r(s))}catch(g){o(g)}},s=>{if(!t)o(s);else try{i(t(s))}catch(g){o(g)}}]),this._executeHandlers()})}catch(r){return this.then(t=>t,r)}finally(r){return new A((t,i)=>{let o,s;return this.then(g=>{s=!1,o=g,r&&r()},g=>{s=!0,o=g,r&&r()}).then(()=>{if(s){i(o);return}t(o)})})}__init(){this._resolve=r=>{this._setResult(L4.RESOLVED,r)}}__init2(){this._reject=r=>{this._setResult(L4.REJECTED,r)}}__init3(){this._setResult=(r,t)=>{if(this._state===L4.PENDING){if(kur.isThenable(t)){t.then(this._resolve,this._reject);return}this._state=r,this._value=t,this._executeHandlers()}}}__init4(){this._executeHandlers=()=>{if(this._state===L4.PENDING)return;let r=this._handlers.slice();this._handlers=[],r.forEach(t=>{t[0]||(this._state===L4.RESOLVED&&t[1](this._value),this._state===L4.REJECTED&&t[2](this._value),t[0]=!0)})}}};G8.SyncPromise=P8;G8.rejectedSyncPromise=Hur;G8.resolvedSyncPromise=xur});var QMA=GA(lsA=>{Object.defineProperty(lsA,"__esModule",{value:!0});var Sur=LoA(),csA=ssA();function Fur(A){let r=[];function t(){return A===void 0||r.lengthi(E)).then(null,()=>i(E).then(null,()=>{})),E}function s(g){return new csA.SyncPromise((E,p)=>{let B=r.length;if(!B)return E(!0);let m=setTimeout(()=>{g&&g>0&&E(!1)},g);r.forEach(_=>{csA.resolvedSyncPromise(_).then(()=>{--B||(clearTimeout(m),E(!0))},p)})})}return{$:r,add:o,drain:s}}lsA.makePromiseBuffer=Fur});var usA=GA(s5=>{Object.defineProperty(s5,"__esModule",{value:!0});function Rur(A){if(!A)return{};let r=A.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!r)return{};let t=r[6]||"",i=r[8]||"";return{host:r[4],path:r[5],protocol:r[2],search:t,hash:i,relative:r[5]+t+i}}function Tur(A){return A.split(/[\?#]/,1)[0]}function Nur(A){return A.split(/\\?\//).filter(r=>r.length>0&&r!==",").length}function Pur(A){let{protocol:r,host:t,path:i}=A,o=t&&t.replace(/^.*@/,"[filtered]:[filtered]@").replace(":80","").replace(":443","")||"";return`${r?`${r}://`:""}${o}${i}`}s5.getNumberOfUrlSegments=Nur;s5.getSanitizedUrlString=Pur;s5.parseUrl=Rur;s5.stripUrlQueryAndFragment=Tur});var _MA=GA(c5=>{Object.defineProperty(c5,"__esModule",{value:!0});var mMA=G0(),Gur=XP(),Yur=usA(),Uur={ip:!1,request:!0,transaction:!0,user:!0},Lur=["cookies","data","headers","method","query_string","url"],jur=["id","username","email"];function Wur(A,r,t){A&&((!A.metadata.source||A.metadata.source==="url")&&A.setName(...ZP(r,{path:!0,method:!0})),A.setData("url",r.originalUrl||r.url),r.baseUrl&&A.setData("baseUrl",r.baseUrl),A.setData("query",DMA(r,t)))}function ZP(A,r={}){let t=A.method&&A.method.toUpperCase(),i="",o="url";r.customRoute||A.route?(i=r.customRoute||`${A.baseUrl||""}${A.route&&A.route.path}`,o="route"):(A.originalUrl||A.url)&&(i=Yur.stripUrlQueryAndFragment(A.originalUrl||A.url||""));let s="";return r.method&&t&&(s+=t),r.method&&r.path&&(s+=" "),r.path&&i&&(s+=i),[s,o]}function Jur(A,r){switch(r){case"path":return ZP(A,{path:!0})[0];case"handler":return A.route&&A.route.stack&&A.route.stack[0]&&A.route.stack[0].name||"";case"methodPath":default:return ZP(A,{path:!0,method:!0})[0]}}function qur(A,r){let t={};return(Array.isArray(r)?r:jur).forEach(o=>{A&&o in A&&(t[o]=A[o])}),t}function gsA(A,r){let{include:t=Lur,deps:i}=r||{},o={},s=A.headers||{},g=A.method,E=A.hostname||A.host||s.host||"",p=A.protocol==="https"||A.socket&&A.socket.encrypted?"https":"http",B=A.originalUrl||A.url||"",m=`${p}://${E}${B}`;return t.forEach(_=>{switch(_){case"headers":{o.headers=s;break}case"method":{o.method=g;break}case"url":{o.url=m;break}case"cookies":{o.cookies=A.cookies||s.cookie&&i&&i.cookie&&i.cookie.parse(s.cookie)||{};break}case"query_string":{o.query_string=DMA(A,i);break}case"data":{if(g==="GET"||g==="HEAD")break;A.body!==void 0&&(o.data=mMA.isString(A.body)?A.body:JSON.stringify(Gur.normalize(A.body)));break}default:({}).hasOwnProperty.call(A,_)&&(o[_]=A[_])}}),o}function Vur(A,r,t){let i={...Uur,...t&&t.include};if(i.request){let o=Array.isArray(i.request)?gsA(r,{include:i.request,deps:t&&t.deps}):gsA(r,{deps:t&&t.deps});A.request={...A.request,...o}}if(i.user){let o=r.user&&mMA.isPlainObject(r.user)?qur(r.user,i.user):{};Object.keys(o).length&&(A.user={...A.user,...o})}if(i.ip){let o=r.ip||r.socket&&r.socket.remoteAddress;o&&(A.user={...A.user,ip_address:o})}return i.transaction&&!A.transaction&&(A.transaction=Jur(r,i.transaction)),A}function DMA(A,r){let t=A.originalUrl||A.url||"";if(t)return t.startsWith("/")&&(t=`http://dogs.are.great${t}`),A.query||typeof URL!==void 0&&new URL(t).search.replace("?","")||r&&r.url&&r.url.parse(t).query||void 0}c5.addRequestDataToEvent=Vur;c5.addRequestDataToTransaction=Wur;c5.extractPathForTransaction=ZP;c5.extractRequestData=gsA});var yMA=GA(Y8=>{Object.defineProperty(Y8,"__esModule",{value:!0});var wMA=["fatal","error","warning","log","info","debug"];function zur(A){return vMA(A)}function vMA(A){return A==="warn"?"warning":wMA.includes(A)?A:"log"}Y8.severityFromString=zur;Y8.severityLevelFromString=vMA;Y8.validSeverityLevels=wMA});var psA=GA((MQ,MMA)=>{Object.defineProperty(MQ,"__esModule",{value:!0});var IMA=asA(),Kur=Y4(),bMA=Kur.getGlobalObject(),dsA={nowSeconds:()=>Date.now()/1e3};function Xur(){let{performance:A}=bMA;if(!A||!A.now)return;let r=Date.now()-A.now();return{now:()=>A.now(),timeOrigin:r}}function Zur(){try{return IMA.dynamicRequire(MMA,"perf_hooks").performance}catch{return}}var $P=IMA.isNodeEnv()?Zur():Xur(),CMA=$P===void 0?dsA:{nowSeconds:()=>($P.timeOrigin+$P.now())/1e3},$ur=dsA.nowSeconds.bind(dsA),OMA=CMA.nowSeconds.bind(CMA),Agr=OMA,egr=$P!==void 0;MQ._browserPerformanceTimeOriginMode=void 0;var rgr=(()=>{let{performance:A}=bMA;if(!A||!A.now){MQ._browserPerformanceTimeOriginMode="none";return}let r=3600*1e3,t=A.now(),i=Date.now(),o=A.timeOrigin?Math.abs(A.timeOrigin+t-i):r,s=o{Object.defineProperty(fw,"__esModule",{value:!0});var tgr=G0(),igr=i5(),ngr="baggage",EsA="sentry-",xMA=/^sentry-/,HMA=8192;function agr(A){if(!tgr.isString(A)&&!Array.isArray(A))return;let r={};if(Array.isArray(A))r=A.reduce((i,o)=>{let s=kMA(o);return{...i,...s}},{});else{if(!A)return;r=kMA(A)}let t=Object.entries(r).reduce((i,[o,s])=>{if(o.match(xMA)){let g=o.slice(EsA.length);i[g]=s}return i},{});if(Object.keys(t).length>0)return t}function ogr(A){if(!A)return;let r=Object.entries(A).reduce((t,[i,o])=>(o&&(t[`${EsA}${i}`]=o),t),{});return sgr(r)}function kMA(A){return A.split(",").map(r=>r.split("=").map(t=>decodeURIComponent(t.trim()))).reduce((r,[t,i])=>(r[t]=i,r),{})}function sgr(A){if(Object.keys(A).length!==0)return Object.entries(A).reduce((r,[t,i],o)=>{let s=`${encodeURIComponent(t)}=${encodeURIComponent(i)}`,g=o===0?s:`${r},${s}`;return g.length>HMA?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&igr.logger.warn(`Not adding key: ${t} with val: ${i} to baggage header due to exceeding baggage size limits.`),r):g},"")}fw.BAGGAGE_HEADER_NAME=ngr;fw.MAX_BAGGAGE_STRING_LENGTH=HMA;fw.SENTRY_BAGGAGE_KEY_PREFIX=EsA;fw.SENTRY_BAGGAGE_KEY_PREFIX_REGEX=xMA;fw.baggageHeaderToDynamicSamplingContext=agr;fw.dynamicSamplingContextToSentryBaggageHeader=ogr});var RMA=GA(l5=>{Object.defineProperty(l5,"__esModule",{value:!0});var cgr=fsA(),AG=isA(),SMA=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function FMA(A){if(!A)return;let r=A.match(SMA);if(!r)return;let t;return r[3]==="1"?t=!0:r[3]==="0"&&(t=!1),{traceId:r[1],parentSampled:t,parentSpanId:r[2]}}function lgr(A,r){let t=FMA(A),i=cgr.baggageHeaderToDynamicSamplingContext(r),{traceId:o,parentSpanId:s,parentSampled:g}=t||{},E={traceId:o||AG.uuid4(),spanId:AG.uuid4().substring(16),sampled:g};return s&&(E.parentSpanId=s),i&&(E.dsc=i),{traceparentData:t,dynamicSamplingContext:i,propagationContext:E}}function ugr(A=AG.uuid4(),r=AG.uuid4().substring(16),t){let i="";return t!==void 0&&(i=t?"-1":"-0"),`${A}-${r}${i}`}l5.TRACEPARENT_REGEXP=SMA;l5.extractTraceparentData=FMA;l5.generateSentryTraceHeader=ugr;l5.tracingContextFromHeaders=lgr});var hsA=GA(kQ=>{Object.defineProperty(kQ,"__esModule",{value:!0});var ggr=GoA(),dgr=XP(),TMA=a5();function pgr(A,r=[]){return[A,r]}function Egr(A,r){let[t,i]=A;return[t,[...i,r]]}function NMA(A,r){let t=A[1];for(let i of t){let o=i[0].type;if(r(i,o))return!0}return!1}function fgr(A,r){return NMA(A,(t,i)=>r.includes(i))}function BsA(A,r){return(r||new TextEncoder).encode(A)}function Bgr(A,r){let[t,i]=A,o=JSON.stringify(t);function s(g){typeof o=="string"?o=typeof g=="string"?o+g:[BsA(o,r),g]:o.push(typeof g=="string"?BsA(g,r):g)}for(let g of i){let[E,p]=g;if(s(` -${JSON.stringify(E)} -`),typeof p=="string"||p instanceof Uint8Array)s(p);else{let B;try{B=JSON.stringify(p)}catch{B=JSON.stringify(dgr.normalize(p))}s(B)}}return typeof o=="string"?o:hgr(o)}function hgr(A){let r=A.reduce((o,s)=>o+s.length,0),t=new Uint8Array(r),i=0;for(let o of A)t.set(o,i),i+=o.length;return t}function Qgr(A,r,t){let i=typeof A=="string"?r.encode(A):A;function o(p){let B=i.subarray(0,p);return i=i.subarray(p+1),B}function s(){let p=i.indexOf(10);return p<0&&(p=i.length),JSON.parse(t.decode(o(p)))}let g=s(),E=[];for(;i.length;){let p=s(),B=typeof p.length=="number"?p.length:void 0;E.push([p,B?o(B):s()])}return[g,E]}function mgr(A,r){let t=typeof A.data=="string"?BsA(A.data,r):A.data;return[TMA.dropUndefinedKeys({type:"attachment",length:t.length,filename:A.filename,content_type:A.contentType,attachment_type:A.attachmentType}),t]}var Dgr={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor"};function _gr(A){return Dgr[A]}function wgr(A){if(!A||!A.sdk)return;let{name:r,version:t}=A.sdk;return{name:r,version:t}}function vgr(A,r,t,i){let o=A.sdkProcessingMetadata&&A.sdkProcessingMetadata.dynamicSamplingContext;return{event_id:A.event_id,sent_at:new Date().toISOString(),...r&&{sdk:r},...!!t&&{dsn:ggr.dsnToString(i)},...o&&{trace:TMA.dropUndefinedKeys({...o})}}}kQ.addItemToEnvelope=Egr;kQ.createAttachmentEnvelopeItem=mgr;kQ.createEnvelope=pgr;kQ.createEventEnvelopeHeaders=vgr;kQ.envelopeContainsItemType=fgr;kQ.envelopeItemTypeToDataCategory=_gr;kQ.forEachEnvelopeItem=NMA;kQ.getSdkMetadataForEnvelopeHeader=wgr;kQ.parseEnvelope=Qgr;kQ.serializeEnvelope=Bgr});var PMA=GA(QsA=>{Object.defineProperty(QsA,"__esModule",{value:!0});var ygr=hsA(),Cgr=psA();function Igr(A,r,t){let i=[{type:"client_report"},{timestamp:t||Cgr.dateTimestampInSeconds(),discarded_events:A}];return ygr.createEnvelope(r?{dsn:r}:{},[i])}QsA.createClientReportEnvelope=Igr});var LMA=GA(Vy=>{Object.defineProperty(Vy,"__esModule",{value:!0});var GMA=60*1e3;function YMA(A,r=Date.now()){let t=parseInt(`${A}`,10);if(!isNaN(t))return t*1e3;let i=Date.parse(`${A}`);return isNaN(i)?GMA:i-r}function UMA(A,r){return A[r]||A.all||0}function bgr(A,r,t=Date.now()){return UMA(A,r)>t}function Ogr(A,{statusCode:r,headers:t},i=Date.now()){let o={...A},s=t&&t["x-sentry-rate-limits"],g=t&&t["retry-after"];if(s)for(let E of s.trim().split(",")){let[p,B]=E.split(":",2),m=parseInt(p,10),_=(isNaN(m)?60:m)*1e3;if(!B)o.all=i+_;else for(let x of B.split(";"))o[x]=i+_}else g?o.all=i+YMA(g,i):r===429&&(o.all=i+60*1e3);return o}Vy.DEFAULT_RETRY_AFTER=GMA;Vy.disabledUntil=UMA;Vy.isRateLimited=bgr;Vy.parseRetryAfterHeader=YMA;Vy.updateRateLimits=Ogr});var JMA=GA(msA=>{Object.defineProperty(msA,"__esModule",{value:!0});function jMA(A,r,t){let i=r.match(/([a-z_]+)\.(.*)/i);if(i===null)A[r]=t;else{let o=A[i[1]];jMA(o,i[2],t)}}function Mgr(A,r,t={}){return Array.isArray(r)?WMA(A,r,t):kgr(A,r,t)}function WMA(A,r,t){let i=r.find(o=>o.name===A.name);if(i){for(let[o,s]of Object.entries(t))jMA(i,o,s);return r}return[...r,A]}function kgr(A,r,t){return o=>{let s=r(o);return A.allowExclusionByUser&&!s.find(E=>E.name===A.name)?s:WMA(A,s,t)}}msA.addOrUpdateIntegration=Mgr});var qMA=GA(DsA=>{Object.defineProperty(DsA,"__esModule",{value:!0});function xgr(A){let r=[],t={};return{add(i,o){for(;r.length>=A;){let s=r.shift();s!==void 0&&delete t[s]}t[i]&&this.delete(i),r.push(i),t[i]=o},clear(){t={},r=[]},get(i){return t[i]},size(){return r.length},delete(i){if(!t[i])return!1;delete t[i];for(let o=0;o{Object.defineProperty(_sA,"__esModule",{value:!0});function Hgr(A){return A.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}_sA.escapeStringForRegex=Hgr});var wo=GA(Xi=>{Object.defineProperty(Xi,"__esModule",{value:!0});var Sgr=G8A(),wsA=PoA(),vsA=GoA(),Fgr=LoA(),ysA=Y4(),eG=sMA(),eh=G0(),CsA=i5(),Rgr=rsA(),Bw=isA(),IsA=asA(),bsA=XP(),j4=a5(),zy=hMA(),Tgr=QMA(),rG=_MA(),OsA=yMA(),U8=PP(),L8=k8(),hw=zoA(),MsA=ssA(),u5=psA(),tG=RMA(),zMA=nsA(),o1=hsA(),Ngr=PMA(),j8=LMA(),g5=fsA(),iG=usA(),Pgr=JMA(),Ggr=qMA(),Ygr=VMA(),Ugr=XoA();Xi.applyAggregateErrorsToEvent=Sgr.applyAggregateErrorsToEvent;Xi.getDomElement=wsA.getDomElement;Xi.getLocationHref=wsA.getLocationHref;Xi.htmlTreeAsString=wsA.htmlTreeAsString;Xi.dsnFromString=vsA.dsnFromString;Xi.dsnToString=vsA.dsnToString;Xi.makeDsn=vsA.makeDsn;Xi.SentryError=Fgr.SentryError;Xi.GLOBAL_OBJ=ysA.GLOBAL_OBJ;Xi.getGlobalObject=ysA.getGlobalObject;Xi.getGlobalSingleton=ysA.getGlobalSingleton;Xi.SENTRY_XHR_DATA_KEY=eG.SENTRY_XHR_DATA_KEY;Xi.addInstrumentationHandler=eG.addInstrumentationHandler;Xi.originalConsoleMethods=eG.originalConsoleMethods;Xi.parseFetchArgs=eG.parseFetchArgs;Xi.isDOMError=eh.isDOMError;Xi.isDOMException=eh.isDOMException;Xi.isElement=eh.isElement;Xi.isError=eh.isError;Xi.isErrorEvent=eh.isErrorEvent;Xi.isEvent=eh.isEvent;Xi.isInstanceOf=eh.isInstanceOf;Xi.isNaN=eh.isNaN;Xi.isPlainObject=eh.isPlainObject;Xi.isPrimitive=eh.isPrimitive;Xi.isRegExp=eh.isRegExp;Xi.isString=eh.isString;Xi.isSyntheticEvent=eh.isSyntheticEvent;Xi.isThenable=eh.isThenable;Xi.CONSOLE_LEVELS=CsA.CONSOLE_LEVELS;Xi.consoleSandbox=CsA.consoleSandbox;Object.defineProperty(Xi,"logger",{enumerable:!0,get:()=>CsA.logger});Xi.memoBuilder=Rgr.memoBuilder;Xi.addContextToFrame=Bw.addContextToFrame;Xi.addExceptionMechanism=Bw.addExceptionMechanism;Xi.addExceptionTypeValue=Bw.addExceptionTypeValue;Xi.arrayify=Bw.arrayify;Xi.checkOrSetAlreadyCaught=Bw.checkOrSetAlreadyCaught;Xi.getEventDescription=Bw.getEventDescription;Xi.parseSemver=Bw.parseSemver;Xi.uuid4=Bw.uuid4;Xi.dynamicRequire=IsA.dynamicRequire;Xi.isNodeEnv=IsA.isNodeEnv;Xi.loadModule=IsA.loadModule;Xi.normalize=bsA.normalize;Xi.normalizeToSize=bsA.normalizeToSize;Xi.walk=bsA.walk;Xi.addNonEnumerableProperty=j4.addNonEnumerableProperty;Xi.convertToPlainObject=j4.convertToPlainObject;Xi.dropUndefinedKeys=j4.dropUndefinedKeys;Xi.extractExceptionKeysForMessage=j4.extractExceptionKeysForMessage;Xi.fill=j4.fill;Xi.getOriginalFunction=j4.getOriginalFunction;Xi.markFunctionWrapped=j4.markFunctionWrapped;Xi.objectify=j4.objectify;Xi.urlEncode=j4.urlEncode;Xi.basename=zy.basename;Xi.dirname=zy.dirname;Xi.isAbsolute=zy.isAbsolute;Xi.join=zy.join;Xi.normalizePath=zy.normalizePath;Xi.relative=zy.relative;Xi.resolve=zy.resolve;Xi.makePromiseBuffer=Tgr.makePromiseBuffer;Xi.addRequestDataToEvent=rG.addRequestDataToEvent;Xi.addRequestDataToTransaction=rG.addRequestDataToTransaction;Xi.extractPathForTransaction=rG.extractPathForTransaction;Xi.extractRequestData=rG.extractRequestData;Xi.severityFromString=OsA.severityFromString;Xi.severityLevelFromString=OsA.severityLevelFromString;Xi.validSeverityLevels=OsA.validSeverityLevels;Xi.createStackParser=U8.createStackParser;Xi.getFunctionName=U8.getFunctionName;Xi.nodeStackLineParser=U8.nodeStackLineParser;Xi.stackParserFromStackParserOptions=U8.stackParserFromStackParserOptions;Xi.stripSentryFramesAndReverse=U8.stripSentryFramesAndReverse;Xi.isMatchingPattern=L8.isMatchingPattern;Xi.safeJoin=L8.safeJoin;Xi.snipLine=L8.snipLine;Xi.stringMatchesSomePattern=L8.stringMatchesSomePattern;Xi.truncate=L8.truncate;Xi.isNativeFetch=hw.isNativeFetch;Xi.supportsDOMError=hw.supportsDOMError;Xi.supportsDOMException=hw.supportsDOMException;Xi.supportsErrorEvent=hw.supportsErrorEvent;Xi.supportsFetch=hw.supportsFetch;Xi.supportsNativeFetch=hw.supportsNativeFetch;Xi.supportsReferrerPolicy=hw.supportsReferrerPolicy;Xi.supportsReportingObserver=hw.supportsReportingObserver;Xi.SyncPromise=MsA.SyncPromise;Xi.rejectedSyncPromise=MsA.rejectedSyncPromise;Xi.resolvedSyncPromise=MsA.resolvedSyncPromise;Object.defineProperty(Xi,"_browserPerformanceTimeOriginMode",{enumerable:!0,get:()=>u5._browserPerformanceTimeOriginMode});Xi.browserPerformanceTimeOrigin=u5.browserPerformanceTimeOrigin;Xi.dateTimestampInSeconds=u5.dateTimestampInSeconds;Xi.timestampInSeconds=u5.timestampInSeconds;Xi.timestampWithMs=u5.timestampWithMs;Xi.usingPerformanceAPI=u5.usingPerformanceAPI;Xi.TRACEPARENT_REGEXP=tG.TRACEPARENT_REGEXP;Xi.extractTraceparentData=tG.extractTraceparentData;Xi.generateSentryTraceHeader=tG.generateSentryTraceHeader;Xi.tracingContextFromHeaders=tG.tracingContextFromHeaders;Xi.getSDKSource=zMA.getSDKSource;Xi.isBrowserBundle=zMA.isBrowserBundle;Xi.addItemToEnvelope=o1.addItemToEnvelope;Xi.createAttachmentEnvelopeItem=o1.createAttachmentEnvelopeItem;Xi.createEnvelope=o1.createEnvelope;Xi.createEventEnvelopeHeaders=o1.createEventEnvelopeHeaders;Xi.envelopeContainsItemType=o1.envelopeContainsItemType;Xi.envelopeItemTypeToDataCategory=o1.envelopeItemTypeToDataCategory;Xi.forEachEnvelopeItem=o1.forEachEnvelopeItem;Xi.getSdkMetadataForEnvelopeHeader=o1.getSdkMetadataForEnvelopeHeader;Xi.parseEnvelope=o1.parseEnvelope;Xi.serializeEnvelope=o1.serializeEnvelope;Xi.createClientReportEnvelope=Ngr.createClientReportEnvelope;Xi.DEFAULT_RETRY_AFTER=j8.DEFAULT_RETRY_AFTER;Xi.disabledUntil=j8.disabledUntil;Xi.isRateLimited=j8.isRateLimited;Xi.parseRetryAfterHeader=j8.parseRetryAfterHeader;Xi.updateRateLimits=j8.updateRateLimits;Xi.BAGGAGE_HEADER_NAME=g5.BAGGAGE_HEADER_NAME;Xi.MAX_BAGGAGE_STRING_LENGTH=g5.MAX_BAGGAGE_STRING_LENGTH;Xi.SENTRY_BAGGAGE_KEY_PREFIX=g5.SENTRY_BAGGAGE_KEY_PREFIX;Xi.SENTRY_BAGGAGE_KEY_PREFIX_REGEX=g5.SENTRY_BAGGAGE_KEY_PREFIX_REGEX;Xi.baggageHeaderToDynamicSamplingContext=g5.baggageHeaderToDynamicSamplingContext;Xi.dynamicSamplingContextToSentryBaggageHeader=g5.dynamicSamplingContextToSentryBaggageHeader;Xi.getNumberOfUrlSegments=iG.getNumberOfUrlSegments;Xi.getSanitizedUrlString=iG.getSanitizedUrlString;Xi.parseUrl=iG.parseUrl;Xi.stripUrlQueryAndFragment=iG.stripUrlQueryAndFragment;Xi.addOrUpdateIntegration=Pgr.addOrUpdateIntegration;Xi.makeFifoCache=Ggr.makeFifoCache;Xi.escapeStringForRegex=Ygr.escapeStringForRegex;Xi.supportsHistory=Ugr.supportsHistory});var W8=GA(ksA=>{Object.defineProperty(ksA,"__esModule",{value:!0});var Lgr="production";ksA.DEFAULT_ENVIRONMENT=Lgr});var V8=GA(q8=>{Object.defineProperty(q8,"__esModule",{value:!0});var J8=wo();function jgr(A){let r=J8.timestampInSeconds(),t={sid:J8.uuid4(),init:!0,timestamp:r,started:r,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>Jgr(t)};return A&&xsA(t,A),t}function xsA(A,r={}){if(r.user&&(!A.ipAddress&&r.user.ip_address&&(A.ipAddress=r.user.ip_address),!A.did&&!r.did&&(A.did=r.user.id||r.user.email||r.user.username)),A.timestamp=r.timestamp||J8.timestampInSeconds(),r.ignoreDuration&&(A.ignoreDuration=r.ignoreDuration),r.sid&&(A.sid=r.sid.length===32?r.sid:J8.uuid4()),r.init!==void 0&&(A.init=r.init),!A.did&&r.did&&(A.did=`${r.did}`),typeof r.started=="number"&&(A.started=r.started),A.ignoreDuration)A.duration=void 0;else if(typeof r.duration=="number")A.duration=r.duration;else{let t=A.timestamp-A.started;A.duration=t>=0?t:0}r.release&&(A.release=r.release),r.environment&&(A.environment=r.environment),!A.ipAddress&&r.ipAddress&&(A.ipAddress=r.ipAddress),!A.userAgent&&r.userAgent&&(A.userAgent=r.userAgent),typeof r.errors=="number"&&(A.errors=r.errors),r.status&&(A.status=r.status)}function Wgr(A,r){let t={};r?t={status:r}:A.status==="ok"&&(t={status:"exited"}),xsA(A,t)}function Jgr(A){return J8.dropUndefinedKeys({sid:`${A.sid}`,init:A.init,started:new Date(A.started*1e3).toISOString(),timestamp:new Date(A.timestamp*1e3).toISOString(),status:A.status,errors:A.errors,did:typeof A.did=="number"||typeof A.did=="string"?`${A.did}`:void 0,duration:A.duration,attrs:{release:A.release,environment:A.environment,ip_address:A.ipAddress,user_agent:A.userAgent}})}q8.closeSession=Wgr;q8.makeSession=jgr;q8.updateSession=xsA});var z8=GA(nG=>{Object.defineProperty(nG,"__esModule",{value:!0});var W4=wo(),qgr=V8(),Vgr=100,HsA=class A{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext=KMA()}static clone(r){let t=new A;return r&&(t._breadcrumbs=[...r._breadcrumbs],t._tags={...r._tags},t._extra={...r._extra},t._contexts={...r._contexts},t._user=r._user,t._level=r._level,t._span=r._span,t._session=r._session,t._transactionName=r._transactionName,t._fingerprint=r._fingerprint,t._eventProcessors=[...r._eventProcessors],t._requestSession=r._requestSession,t._attachments=[...r._attachments],t._sdkProcessingMetadata={...r._sdkProcessingMetadata},t._propagationContext={...r._propagationContext}),t}addScopeListener(r){this._scopeListeners.push(r)}addEventProcessor(r){return this._eventProcessors.push(r),this}setUser(r){return this._user=r||{},this._session&&qgr.updateSession(this._session,{user:r}),this._notifyScopeListeners(),this}getUser(){return this._user}getRequestSession(){return this._requestSession}setRequestSession(r){return this._requestSession=r,this}setTags(r){return this._tags={...this._tags,...r},this._notifyScopeListeners(),this}setTag(r,t){return this._tags={...this._tags,[r]:t},this._notifyScopeListeners(),this}setExtras(r){return this._extra={...this._extra,...r},this._notifyScopeListeners(),this}setExtra(r,t){return this._extra={...this._extra,[r]:t},this._notifyScopeListeners(),this}setFingerprint(r){return this._fingerprint=r,this._notifyScopeListeners(),this}setLevel(r){return this._level=r,this._notifyScopeListeners(),this}setTransactionName(r){return this._transactionName=r,this._notifyScopeListeners(),this}setContext(r,t){return t===null?delete this._contexts[r]:this._contexts[r]=t,this._notifyScopeListeners(),this}setSpan(r){return this._span=r,this._notifyScopeListeners(),this}getSpan(){return this._span}getTransaction(){let r=this.getSpan();return r&&r.transaction}setSession(r){return r?this._session=r:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(r){if(!r)return this;if(typeof r=="function"){let t=r(this);return t instanceof A?t:this}return r instanceof A?(this._tags={...this._tags,...r._tags},this._extra={...this._extra,...r._extra},this._contexts={...this._contexts,...r._contexts},r._user&&Object.keys(r._user).length&&(this._user=r._user),r._level&&(this._level=r._level),r._fingerprint&&(this._fingerprint=r._fingerprint),r._requestSession&&(this._requestSession=r._requestSession),r._propagationContext&&(this._propagationContext=r._propagationContext)):W4.isPlainObject(r)&&(r=r,this._tags={...this._tags,...r.tags},this._extra={...this._extra,...r.extra},this._contexts={...this._contexts,...r.contexts},r.user&&(this._user=r.user),r.level&&(this._level=r.level),r.fingerprint&&(this._fingerprint=r.fingerprint),r.requestSession&&(this._requestSession=r.requestSession),r.propagationContext&&(this._propagationContext=r.propagationContext)),this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._requestSession=void 0,this._span=void 0,this._session=void 0,this._notifyScopeListeners(),this._attachments=[],this._propagationContext=KMA(),this}addBreadcrumb(r,t){let i=typeof t=="number"?t:Vgr;if(i<=0)return this;let o={timestamp:W4.dateTimestampInSeconds(),...r};return this._breadcrumbs=[...this._breadcrumbs,o].slice(-i),this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(r){return this._attachments.push(r),this}getAttachments(){return this._attachments}clearAttachments(){return this._attachments=[],this}applyToEvent(r,t={}){if(this._extra&&Object.keys(this._extra).length&&(r.extra={...this._extra,...r.extra}),this._tags&&Object.keys(this._tags).length&&(r.tags={...this._tags,...r.tags}),this._user&&Object.keys(this._user).length&&(r.user={...this._user,...r.user}),this._contexts&&Object.keys(this._contexts).length&&(r.contexts={...this._contexts,...r.contexts}),this._level&&(r.level=this._level),this._transactionName&&(r.transaction=this._transactionName),this._span){r.contexts={trace:this._span.getTraceContext(),...r.contexts};let i=this._span.transaction;if(i){r.sdkProcessingMetadata={dynamicSamplingContext:i.getDynamicSamplingContext(),...r.sdkProcessingMetadata};let o=i.name;o&&(r.tags={transaction:o,...r.tags})}}return this._applyFingerprint(r),r.breadcrumbs=[...r.breadcrumbs||[],...this._breadcrumbs],r.breadcrumbs=r.breadcrumbs.length>0?r.breadcrumbs:void 0,r.sdkProcessingMetadata={...r.sdkProcessingMetadata,...this._sdkProcessingMetadata,propagationContext:this._propagationContext},this._notifyEventProcessors([...XMA(),...this._eventProcessors],r,t)}setSDKProcessingMetadata(r){return this._sdkProcessingMetadata={...this._sdkProcessingMetadata,...r},this}setPropagationContext(r){return this._propagationContext=r,this}getPropagationContext(){return this._propagationContext}_notifyEventProcessors(r,t,i,o=0){return new W4.SyncPromise((s,g)=>{let E=r[o];if(t===null||typeof E!="function")s(t);else{let p=E({...t},i);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&E.id&&p===null&&W4.logger.log(`Event processor "${E.id}" dropped event`),W4.isThenable(p)?p.then(B=>this._notifyEventProcessors(r,B,i,o+1).then(s)).then(null,g):this._notifyEventProcessors(r,p,i,o+1).then(s).then(null,g)}})}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach(r=>{r(this)}),this._notifyingListeners=!1)}_applyFingerprint(r){r.fingerprint=r.fingerprint?W4.arrayify(r.fingerprint):[],this._fingerprint&&(r.fingerprint=r.fingerprint.concat(this._fingerprint)),r.fingerprint&&!r.fingerprint.length&&delete r.fingerprint}};function XMA(){return W4.getGlobalSingleton("globalEventProcessors",()=>[])}function zgr(A){XMA().push(A)}function KMA(){return{traceId:W4.uuid4(),spanId:W4.uuid4().substring(16)}}nG.Scope=HsA;nG.addGlobalEventProcessor=zgr});var L0=GA(HQ=>{Object.defineProperty(HQ,"__esModule",{value:!0});var xQ=wo(),Kgr=W8(),FsA=z8(),SsA=V8(),aG=4,Xgr=100,d5=class{constructor(r,t=new FsA.Scope,i=aG){this._version=i,this._stack=[{scope:t}],r&&this.bindClient(r)}isOlderThan(r){return this._version{s.captureException(r,{originalException:r,syntheticException:o,...t,event_id:i},g)}),i}captureMessage(r,t,i){let o=this._lastEventId=i&&i.event_id?i.event_id:xQ.uuid4(),s=new Error(r);return this._withClient((g,E)=>{g.captureMessage(r,t,{originalException:r,syntheticException:s,...i,event_id:o},E)}),o}captureEvent(r,t){let i=t&&t.event_id?t.event_id:xQ.uuid4();return r.type||(this._lastEventId=i),this._withClient((o,s)=>{o.captureEvent(r,{...t,event_id:i},s)}),i}lastEventId(){return this._lastEventId}addBreadcrumb(r,t){let{scope:i,client:o}=this.getStackTop();if(!o)return;let{beforeBreadcrumb:s=null,maxBreadcrumbs:g=Xgr}=o.getOptions&&o.getOptions()||{};if(g<=0)return;let p={timestamp:xQ.dateTimestampInSeconds(),...r},B=s?xQ.consoleSandbox(()=>s(p,t)):p;B!==null&&(o.emit&&o.emit("beforeAddBreadcrumb",B,t),i.addBreadcrumb(B,g))}setUser(r){this.getScope().setUser(r)}setTags(r){this.getScope().setTags(r)}setExtras(r){this.getScope().setExtras(r)}setTag(r,t){this.getScope().setTag(r,t)}setExtra(r,t){this.getScope().setExtra(r,t)}setContext(r,t){this.getScope().setContext(r,t)}configureScope(r){let{scope:t,client:i}=this.getStackTop();i&&r(t)}run(r){let t=RsA(this);try{r(this)}finally{RsA(t)}}getIntegration(r){let t=this.getClient();if(!t)return null;try{return t.getIntegration(r)}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&xQ.logger.warn(`Cannot retrieve integration ${r.id} from the current Hub`),null}}startTransaction(r,t){let i=this._callExtensionMethod("startTransaction",r,t);if((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&!i){let o=this.getClient();console.warn(o?`Tracing extension 'startTransaction' has not been added. Call 'addTracingExtensions' before calling 'init': -Sentry.addTracingExtensions(); -Sentry.init({...}); -`:"Tracing extension 'startTransaction' is missing. You should 'init' the SDK before calling 'startTransaction'")}return i}traceHeaders(){return this._callExtensionMethod("traceHeaders")}captureSession(r=!1){if(r)return this.endSession();this._sendSessionUpdate()}endSession(){let t=this.getStackTop().scope,i=t.getSession();i&&SsA.closeSession(i),this._sendSessionUpdate(),t.setSession()}startSession(r){let{scope:t,client:i}=this.getStackTop(),{release:o,environment:s=Kgr.DEFAULT_ENVIRONMENT}=i&&i.getOptions()||{},{userAgent:g}=xQ.GLOBAL_OBJ.navigator||{},E=SsA.makeSession({release:o,environment:s,user:t.getUser(),...g&&{userAgent:g},...r}),p=t.getSession&&t.getSession();return p&&p.status==="ok"&&SsA.updateSession(p,{status:"exited"}),this.endSession(),t.setSession(E),E}shouldSendDefaultPii(){let r=this.getClient(),t=r&&r.getOptions();return!!(t&&t.sendDefaultPii)}_sendSessionUpdate(){let{scope:r,client:t}=this.getStackTop(),i=r.getSession();i&&t&&t.captureSession&&t.captureSession(i)}_withClient(r){let{scope:t,client:i}=this.getStackTop();i&&r(i,t)}_callExtensionMethod(r,...t){let o=Ky().__SENTRY__;if(o&&o.extensions&&typeof o.extensions[r]=="function")return o.extensions[r].apply(this,t);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&xQ.logger.warn(`Extension method ${r} couldn't be found, doing nothing.`)}};function Ky(){return xQ.GLOBAL_OBJ.__SENTRY__=xQ.GLOBAL_OBJ.__SENTRY__||{extensions:{},hub:void 0},xQ.GLOBAL_OBJ}function RsA(A){let r=Ky(),t=K8(r);return oG(r,A),t}function Zgr(){let A=Ky();if(A.__SENTRY__&&A.__SENTRY__.acs){let r=A.__SENTRY__.acs.getCurrentHub();if(r)return r}return ZMA(A)}function ZMA(A=Ky()){return(!$MA(A)||K8(A).isOlderThan(aG))&&oG(A,new d5),K8(A)}function $gr(A,r=ZMA()){if(!$MA(A)||K8(A).isOlderThan(aG)){let t=r.getStackTop();oG(A,new d5(t.client,FsA.Scope.clone(t.scope)))}}function Adr(A){let r=Ky();r.__SENTRY__=r.__SENTRY__||{},r.__SENTRY__.acs=A}function edr(A,r={}){let t=Ky();return t.__SENTRY__&&t.__SENTRY__.acs?t.__SENTRY__.acs.runWithAsyncContext(A,r):A()}function $MA(A){return!!(A&&A.__SENTRY__&&A.__SENTRY__.hub)}function K8(A){return xQ.getGlobalSingleton("hub",()=>new d5,A)}function oG(A,r){if(!A)return!1;let t=A.__SENTRY__=A.__SENTRY__||{};return t.hub=r,!0}HQ.API_VERSION=aG;HQ.Hub=d5;HQ.ensureHubOnCarrier=$gr;HQ.getCurrentHub=Zgr;HQ.getHubFromCarrier=K8;HQ.getMainCarrier=Ky;HQ.makeMain=RsA;HQ.runWithAsyncContext=edr;HQ.setAsyncContextStrategy=Adr;HQ.setHubOnCarrier=oG});var sG=GA(TsA=>{Object.defineProperty(TsA,"__esModule",{value:!0});var rdr=L0();function tdr(A){if(typeof __SENTRY_TRACING__=="boolean"&&!__SENTRY_TRACING__)return!1;let r=rdr.getCurrentHub().getClient(),t=A||r&&r.getOptions();return!!t&&(t.enableTracing||"tracesSampleRate"in t||"tracesSampler"in t)}TsA.hasTracingEnabled=tdr});var cG=GA(p5=>{Object.defineProperty(p5,"__esModule",{value:!0});var idr=L0(),NsA=wo();function ndr(A){return(A||idr.getCurrentHub()).getScope().getTransaction()}p5.TRACEPARENT_REGEXP=NsA.TRACEPARENT_REGEXP;p5.extractTraceparentData=NsA.extractTraceparentData;p5.stripUrlQueryAndFragment=NsA.stripUrlQueryAndFragment;p5.getActiveTransaction=ndr});var ekA=GA(YsA=>{Object.defineProperty(YsA,"__esModule",{value:!0});var PsA=wo(),adr=cG(),AkA=!1;function odr(){AkA||(AkA=!0,PsA.addInstrumentationHandler("error",GsA),PsA.addInstrumentationHandler("unhandledrejection",GsA))}function GsA(){let A=adr.getActiveTransaction();if(A){let r="internal_error";(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&PsA.logger.log(`[Tracing] Transaction: ${r} -> Global error occured`),A.setStatus(r)}}GsA.tag="sentry_tracingErrorCallback";YsA.registerErrorInstrumentation=odr});var lG=GA(X8=>{Object.defineProperty(X8,"__esModule",{value:!0});var s1=wo(),UsA=class{constructor(r=1e3){this._maxlen=r,this.spans=[]}add(r){this.spans.length>this._maxlen?r.spanRecorder=void 0:this.spans.push(r)}},LsA=class A{constructor(r={}){this.traceId=r.traceId||s1.uuid4(),this.spanId=r.spanId||s1.uuid4().substring(16),this.startTimestamp=r.startTimestamp||s1.timestampInSeconds(),this.tags=r.tags||{},this.data=r.data||{},this.instrumenter=r.instrumenter||"sentry",this.origin=r.origin||"manual",r.parentSpanId&&(this.parentSpanId=r.parentSpanId),"sampled"in r&&(this.sampled=r.sampled),r.op&&(this.op=r.op),r.description&&(this.description=r.description),r.name&&(this.description=r.name),r.status&&(this.status=r.status),r.endTimestamp&&(this.endTimestamp=r.endTimestamp)}startChild(r){let t=new A({...r,parentSpanId:this.spanId,sampled:this.sampled,traceId:this.traceId});if(t.spanRecorder=this.spanRecorder,t.spanRecorder&&t.spanRecorder.add(t),t.transaction=this.transaction,(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&t.transaction){let i=r&&r.op||"< unknown op >",o=t.transaction.name||"< unknown name >",s=t.transaction.spanId,g=`[Tracing] Starting '${i}' span on transaction '${o}' (${s}).`;t.transaction.metadata.spanMetadata[t.spanId]={logMessage:g},s1.logger.log(g)}return t}setTag(r,t){return this.tags={...this.tags,[r]:t},this}setData(r,t){return this.data={...this.data,[r]:t},this}setStatus(r){return this.status=r,this}setHttpStatus(r){this.setTag("http.status_code",String(r)),this.setData("http.response.status_code",r);let t=rkA(r);return t!=="unknown_error"&&this.setStatus(t),this}setName(r){this.description=r}isSuccess(){return this.status==="ok"}finish(r){if((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&this.transaction&&this.transaction.spanId!==this.spanId){let{logMessage:t}=this.transaction.metadata.spanMetadata[this.spanId];t&&s1.logger.log(t.replace("Starting","Finishing"))}this.endTimestamp=typeof r=="number"?r:s1.timestampInSeconds()}toTraceparent(){return s1.generateSentryTraceHeader(this.traceId,this.spanId,this.sampled)}toContext(){return s1.dropUndefinedKeys({data:this.data,description:this.description,endTimestamp:this.endTimestamp,op:this.op,parentSpanId:this.parentSpanId,sampled:this.sampled,spanId:this.spanId,startTimestamp:this.startTimestamp,status:this.status,tags:this.tags,traceId:this.traceId})}updateWithContext(r){return this.data=r.data||{},this.description=r.description,this.endTimestamp=r.endTimestamp,this.op=r.op,this.parentSpanId=r.parentSpanId,this.sampled=r.sampled,this.spanId=r.spanId||this.spanId,this.startTimestamp=r.startTimestamp||this.startTimestamp,this.status=r.status,this.tags=r.tags||{},this.traceId=r.traceId||this.traceId,this}getTraceContext(){return s1.dropUndefinedKeys({data:Object.keys(this.data).length>0?this.data:void 0,description:this.description,op:this.op,parent_span_id:this.parentSpanId,span_id:this.spanId,status:this.status,tags:Object.keys(this.tags).length>0?this.tags:void 0,trace_id:this.traceId})}toJSON(){return s1.dropUndefinedKeys({data:Object.keys(this.data).length>0?this.data:void 0,description:this.description,op:this.op,parent_span_id:this.parentSpanId,span_id:this.spanId,start_timestamp:this.startTimestamp,status:this.status,tags:Object.keys(this.tags).length>0?this.tags:void 0,timestamp:this.endTimestamp,trace_id:this.traceId,origin:this.origin})}};function rkA(A){if(A<400&&A>=100)return"ok";if(A>=400&&A<500)switch(A){case 401:return"unauthenticated";case 403:return"permission_denied";case 404:return"not_found";case 409:return"already_exists";case 413:return"failed_precondition";case 429:return"resource_exhausted";default:return"invalid_argument"}if(A>=500&&A<600)switch(A){case 501:return"unimplemented";case 503:return"unavailable";case 504:return"deadline_exceeded";default:return"internal_error"}return"unknown_error"}X8.Span=LsA;X8.SpanRecorder=UsA;X8.spanStatusfromHttpCode=rkA});var uG=GA(jsA=>{Object.defineProperty(jsA,"__esModule",{value:!0});var sdr=wo(),cdr=W8();function ldr(A,r,t){let i=r.getOptions(),{publicKey:o}=r.getDsn()||{},{segment:s}=t&&t.getUser()||{},g=sdr.dropUndefinedKeys({environment:i.environment||cdr.DEFAULT_ENVIRONMENT,release:i.release,user_segment:s,public_key:o,trace_id:A});return r.emit&&r.emit("createDsc",g),g}jsA.getDynamicSamplingContextFromClient=ldr});var gG=GA(JsA=>{Object.defineProperty(JsA,"__esModule",{value:!0});var Z8=wo(),tkA=L0(),udr=uG(),ikA=lG(),WsA=class extends ikA.Span{constructor(r,t){super(r),delete this.description,this._measurements={},this._contexts={},this._hub=t||tkA.getCurrentHub(),this._name=r.name||"",this.metadata={source:"custom",...r.metadata,spanMetadata:{}},this._trimEnd=r.trimEnd,this.transaction=this;let i=this.metadata.dynamicSamplingContext;i&&(this._frozenDynamicSamplingContext={...i})}get name(){return this._name}set name(r){this.setName(r)}setName(r,t="custom"){this._name=r,this.metadata.source=t}initSpanRecorder(r=1e3){this.spanRecorder||(this.spanRecorder=new ikA.SpanRecorder(r)),this.spanRecorder.add(this)}setContext(r,t){t===null?delete this._contexts[r]:this._contexts[r]=t}setMeasurement(r,t,i=""){this._measurements[r]={value:t,unit:i}}setMetadata(r){this.metadata={...this.metadata,...r}}finish(r){if(this.endTimestamp!==void 0)return;this.name||((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Z8.logger.warn("Transaction has no name, falling back to ``."),this.name=""),super.finish(r);let t=this._hub.getClient();if(t&&t.emit&&t.emit("finishTransaction",this),this.sampled!==!0){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Z8.logger.log("[Tracing] Discarding transaction because its trace was not chosen to be sampled."),t&&t.recordDroppedEvent("sample_rate","transaction");return}let i=this.spanRecorder?this.spanRecorder.spans.filter(E=>E!==this&&E.endTimestamp):[];this._trimEnd&&i.length>0&&(this.endTimestamp=i.reduce((E,p)=>E.endTimestamp&&p.endTimestamp?E.endTimestamp>p.endTimestamp?E:p:E).endTimestamp);let o=this.metadata,s={contexts:{...this._contexts,trace:this.getTraceContext()},spans:i,start_timestamp:this.startTimestamp,tags:this.tags,timestamp:this.endTimestamp,transaction:this.name,type:"transaction",sdkProcessingMetadata:{...o,dynamicSamplingContext:this.getDynamicSamplingContext()},...o.source&&{transaction_info:{source:o.source}}};return Object.keys(this._measurements).length>0&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Z8.logger.log("[Measurements] Adding measurements to transaction",JSON.stringify(this._measurements,void 0,2)),s.measurements=this._measurements),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Z8.logger.log(`[Tracing] Finishing ${this.op} transaction: ${this.name}.`),this._hub.captureEvent(s)}toContext(){let r=super.toContext();return Z8.dropUndefinedKeys({...r,name:this.name,trimEnd:this._trimEnd})}updateWithContext(r){return super.updateWithContext(r),this.name=r.name||"",this._trimEnd=r.trimEnd,this}getDynamicSamplingContext(){if(this._frozenDynamicSamplingContext)return this._frozenDynamicSamplingContext;let r=this._hub||tkA.getCurrentHub(),t=r.getClient();if(!t)return{};let i=r.getScope(),o=udr.getDynamicSamplingContextFromClient(this.traceId,t,i),s=this.metadata.sampleRate;s!==void 0&&(o.sample_rate=`${s}`);let g=this.metadata.source;return g&&g!=="url"&&(o.transaction=this.name),this.sampled!==void 0&&(o.sampled=String(this.sampled)),o}setHub(r){this._hub=r}};JsA.Transaction=WsA});var VsA=GA($8=>{Object.defineProperty($8,"__esModule",{value:!0});var qE=wo(),gdr=lG(),ddr=gG(),dG={idleTimeout:1e3,finalTimeout:3e4,heartbeatInterval:5e3},pdr="finishReason",E5=["heartbeatFailed","idleTimeout","documentHidden","finalTimeout","externalFinish","cancelled"],pG=class extends gdr.SpanRecorder{constructor(r,t,i,o){super(o),this._pushActivity=r,this._popActivity=t,this.transactionSpanId=i}add(r){r.spanId!==this.transactionSpanId&&(r.finish=t=>{r.endTimestamp=typeof t=="number"?t:qE.timestampInSeconds(),this._popActivity(r.spanId)},r.endTimestamp===void 0&&this._pushActivity(r.spanId)),super.add(r)}},qsA=class extends ddr.Transaction{constructor(r,t,i=dG.idleTimeout,o=dG.finalTimeout,s=dG.heartbeatInterval,g=!1){super(r,t),this._idleHub=t,this._idleTimeout=i,this._finalTimeout=o,this._heartbeatInterval=s,this._onScope=g,this.activities={},this._heartbeatCounter=0,this._finished=!1,this._idleTimeoutCanceledPermanently=!1,this._beforeFinishCallbacks=[],this._finishReason=E5[4],g&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log(`Setting idle transaction on scope. Span ID: ${this.spanId}`),t.configureScope(E=>E.setSpan(this))),this._restartIdleTimeout(),setTimeout(()=>{this._finished||(this.setStatus("deadline_exceeded"),this._finishReason=E5[3],this.finish())},this._finalTimeout)}finish(r=qE.timestampInSeconds()){if(this._finished=!0,this.activities={},this.op==="ui.action.click"&&this.setTag(pdr,this._finishReason),this.spanRecorder){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log("[Tracing] finishing IdleTransaction",new Date(r*1e3).toISOString(),this.op);for(let t of this._beforeFinishCallbacks)t(this,r);this.spanRecorder.spans=this.spanRecorder.spans.filter(t=>{if(t.spanId===this.spanId)return!0;t.endTimestamp||(t.endTimestamp=r,t.setStatus("cancelled"),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log("[Tracing] cancelling span since transaction ended early",JSON.stringify(t,void 0,2)));let i=t.startTimestamp"u"||__SENTRY_DEBUG__){let g=JSON.stringify(t,void 0,2);i?s||qE.logger.log("[Tracing] discarding Span since it finished after Transaction final timeout",g):qE.logger.log("[Tracing] discarding Span since it happened after Transaction was finished",g)}return i&&s}),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log("[Tracing] flushing IdleTransaction")}else(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log("[Tracing] No active IdleTransaction");if(this._onScope){let t=this._idleHub.getScope();t.getTransaction()===this&&t.setSpan(void 0)}return super.finish(r)}registerBeforeFinishCallback(r){this._beforeFinishCallbacks.push(r)}initSpanRecorder(r){if(!this.spanRecorder){let t=o=>{this._finished||this._pushActivity(o)},i=o=>{this._finished||this._popActivity(o)};this.spanRecorder=new pG(t,i,this.spanId,r),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log("Starting heartbeat"),this._pingHeartbeat()}this.spanRecorder.add(this)}cancelIdleTimeout(r,{restartOnChildSpanChange:t}={restartOnChildSpanChange:!0}){this._idleTimeoutCanceledPermanently=t===!1,this._idleTimeoutID&&(clearTimeout(this._idleTimeoutID),this._idleTimeoutID=void 0,Object.keys(this.activities).length===0&&this._idleTimeoutCanceledPermanently&&(this._finishReason=E5[5],this.finish(r)))}setFinishReason(r){this._finishReason=r}_restartIdleTimeout(r){this.cancelIdleTimeout(),this._idleTimeoutID=setTimeout(()=>{!this._finished&&Object.keys(this.activities).length===0&&(this._finishReason=E5[1],this.finish(r))},this._idleTimeout)}_pushActivity(r){this.cancelIdleTimeout(void 0,{restartOnChildSpanChange:!this._idleTimeoutCanceledPermanently}),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log(`[Tracing] pushActivity: ${r}`),this.activities[r]=!0,(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log("[Tracing] new activities count",Object.keys(this.activities).length)}_popActivity(r){if(this.activities[r]&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log(`[Tracing] popActivity ${r}`),delete this.activities[r],(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log("[Tracing] new activities count",Object.keys(this.activities).length)),Object.keys(this.activities).length===0){let t=qE.timestampInSeconds();this._idleTimeoutCanceledPermanently?(this._finishReason=E5[5],this.finish(t)):this._restartIdleTimeout(t+this._idleTimeout/1e3)}}_beat(){if(this._finished)return;let r=Object.keys(this.activities).join("");r===this._prevHeartbeatString?this._heartbeatCounter++:this._heartbeatCounter=1,this._prevHeartbeatString=r,this._heartbeatCounter>=3?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log("[Tracing] Transaction finished because of no change for 3 heart beats"),this.setStatus("deadline_exceeded"),this._finishReason=E5[0],this.finish()):this._pingHeartbeat()}_pingHeartbeat(){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qE.logger.log(`pinging Heartbeat -> current counter: ${this._heartbeatCounter}`),setTimeout(()=>{this._beat()},this._heartbeatInterval)}};$8.IdleTransaction=qsA;$8.IdleTransactionSpanRecorder=pG;$8.TRACING_DEFAULTS=dG});var akA=GA(EG=>{Object.defineProperty(EG,"__esModule",{value:!0});var Qw=wo(),Edr=L0(),fdr=sG(),Bdr=ekA(),hdr=VsA(),Qdr=gG();function mdr(){let r=this.getScope().getSpan();return r?{"sentry-trace":r.toTraceparent()}:{}}function nkA(A,r,t){if(!fdr.hasTracingEnabled(r))return A.sampled=!1,A;if(A.sampled!==void 0)return A.setMetadata({sampleRate:Number(A.sampled)}),A;let i;return typeof r.tracesSampler=="function"?(i=r.tracesSampler(t),A.setMetadata({sampleRate:Number(i)})):t.parentSampled!==void 0?i=t.parentSampled:typeof r.tracesSampleRate<"u"?(i=r.tracesSampleRate,A.setMetadata({sampleRate:Number(i)})):(i=1,A.setMetadata({sampleRate:i})),Ddr(i)?i?(A.sampled=Math.random()"u"||__SENTRY_DEBUG__)&&Qw.logger.log(`[Tracing] starting ${A.op} transaction - ${A.name}`),A):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qw.logger.log(`[Tracing] Discarding transaction because it's not included in the random sample (sampling rate = ${Number(i)})`),A)):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qw.logger.log(`[Tracing] Discarding transaction because ${typeof r.tracesSampler=="function"?"tracesSampler returned 0 or false":"a negative sampling decision was inherited or tracesSampleRate is set to 0"}`),A.sampled=!1,A):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qw.logger.warn("[Tracing] Discarding transaction because of invalid sample rate."),A.sampled=!1,A)}function Ddr(A){return Qw.isNaN(A)||!(typeof A=="number"||typeof A=="boolean")?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qw.logger.warn(`[Tracing] Given sample rate is invalid. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(A)} of type ${JSON.stringify(typeof A)}.`),!1):A<0||A>1?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qw.logger.warn(`[Tracing] Given sample rate is invalid. Sample rate must be between 0 and 1. Got ${A}.`),!1):!0}function _dr(A,r){let t=this.getClient(),i=t&&t.getOptions()||{},o=i.instrumenter||"sentry",s=A.instrumenter||"sentry";o!==s&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qw.logger.error(`A transaction was started with instrumenter=\`${s}\`, but the SDK is configured with the \`${o}\` instrumenter. -The transaction will not be sampled. Please use the ${o} instrumentation to start transactions.`),A.sampled=!1);let g=new Qdr.Transaction(A,this);return g=nkA(g,i,{parentSampled:A.parentSampled,transactionContext:A,...r}),g.sampled&&g.initSpanRecorder(i._experiments&&i._experiments.maxSpans),t&&t.emit&&t.emit("startTransaction",g),g}function wdr(A,r,t,i,o,s,g){let E=A.getClient(),p=E&&E.getOptions()||{},B=new hdr.IdleTransaction(r,A,t,i,g,o);return B=nkA(B,p,{parentSampled:r.parentSampled,transactionContext:r,...s}),B.sampled&&B.initSpanRecorder(p._experiments&&p._experiments.maxSpans),E&&E.emit&&E.emit("startTransaction",B),B}function vdr(){let A=Edr.getMainCarrier();A.__SENTRY__&&(A.__SENTRY__.extensions=A.__SENTRY__.extensions||{},A.__SENTRY__.extensions.startTransaction||(A.__SENTRY__.extensions.startTransaction=_dr),A.__SENTRY__.extensions.traceHeaders||(A.__SENTRY__.extensions.traceHeaders=mdr),Bdr.registerErrorInstrumentation())}EG.addTracingExtensions=vdr;EG.startIdleTransaction=wdr});var okA=GA(AM=>{Object.defineProperty(AM,"__esModule",{value:!0});AM.SpanStatus=void 0;(function(A){let r="ok";A.Ok=r;let t="deadline_exceeded";A.DeadlineExceeded=t;let i="unauthenticated";A.Unauthenticated=i;let o="permission_denied";A.PermissionDenied=o;let s="not_found";A.NotFound=s;let g="resource_exhausted";A.ResourceExhausted=g;let E="invalid_argument";A.InvalidArgument=E;let p="unimplemented";A.Unimplemented=p;let B="unavailable";A.Unavailable=B;let m="internal_error";A.InternalError=m;let _="unknown_error";A.UnknownError=_;let x="cancelled";A.Cancelled=x;let O="already_exists";A.AlreadyExists=O;let k="failed_precondition";A.FailedPrecondition=k;let P="aborted";A.Aborted=P;let H="out_of_range";A.OutOfRange=H;let T="data_loss";A.DataLoss=T})(AM.SpanStatus||(AM.SpanStatus={}))});var lkA=GA(f5=>{Object.defineProperty(f5,"__esModule",{value:!0});var skA=wo(),fG=L0(),zsA=sG();function ydr(A,r,t=()=>{}){let i={...A};i.name!==void 0&&i.description===void 0&&(i.description=i.name);let o=fG.getCurrentHub(),s=o.getScope(),g=s.getSpan();function E(){if(zsA.hasTracingEnabled())return g?g.startChild(i):o.startTransaction(i)}let p=E();s.setSpan(p);function B(){p&&p.finish(),o.getScope().setSpan(g)}let m;try{m=r(p)}catch(_){throw p&&p.setStatus("internal_error"),t(_),B(),_}return skA.isThenable(m)?Promise.resolve(m).then(()=>{B()},_=>{p&&p.setStatus("internal_error"),t(_),B()}):B(),m}function Cdr(A,r){let t={...A};t.name!==void 0&&t.description===void 0&&(t.description=t.name);let i=fG.getCurrentHub(),o=i.getScope(),s=o.getSpan();function g(){if(zsA.hasTracingEnabled())return s?s.startChild(t):i.startTransaction(t)}let E=g();o.setSpan(E);function p(){E&&E.finish(),i.getScope().setSpan(s)}let B;try{B=r(E)}catch(m){throw E&&E.setStatus("internal_error"),p(),m}return skA.isThenable(B)?Promise.resolve(B).then(()=>{p()},()=>{E&&E.setStatus("internal_error"),p()}):p(),B}function Idr(A){if(!zsA.hasTracingEnabled())return;let r={...A};r.name!==void 0&&r.description===void 0&&(r.description=r.name);let t=fG.getCurrentHub(),i=ckA();return i?i.startChild(r):t.startTransaction(r)}function ckA(){return fG.getCurrentHub().getScope().getSpan()}f5.getActiveSpan=ckA;f5.startActiveSpan=Cdr;f5.startSpan=Idr;f5.trace=ydr});var ukA=GA(KsA=>{Object.defineProperty(KsA,"__esModule",{value:!0});var bdr=cG();function Odr(A,r,t){let i=bdr.getActiveTransaction();i&&i.setMeasurement(A,r,t)}KsA.setMeasurement=Odr});var gkA=GA(fp=>{Object.defineProperty(fp,"__esModule",{value:!0});var eM=wo(),VE=L0();function Mdr(A,r){return VE.getCurrentHub().captureException(A,{captureContext:r})}function kdr(A,r){let t=typeof r=="string"?r:void 0,i=typeof r!="string"?{captureContext:r}:void 0;return VE.getCurrentHub().captureMessage(A,t,i)}function xdr(A,r){return VE.getCurrentHub().captureEvent(A,r)}function Hdr(A){VE.getCurrentHub().configureScope(A)}function Sdr(A){VE.getCurrentHub().addBreadcrumb(A)}function Fdr(A,r){VE.getCurrentHub().setContext(A,r)}function Rdr(A){VE.getCurrentHub().setExtras(A)}function Tdr(A,r){VE.getCurrentHub().setExtra(A,r)}function Ndr(A){VE.getCurrentHub().setTags(A)}function Pdr(A,r){VE.getCurrentHub().setTag(A,r)}function Gdr(A){VE.getCurrentHub().setUser(A)}function Ydr(A){VE.getCurrentHub().withScope(A)}function Udr(A,r){return VE.getCurrentHub().startTransaction({...A},r)}function Ldr(A,r){let t=VE.getCurrentHub(),i=t.getScope(),o=t.getClient();if(!o)(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&eM.logger.warn("Cannot capture check-in. No client defined.");else if(!o.captureCheckIn)(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&eM.logger.warn("Cannot capture check-in. Client does not support sending check-ins.");else return o.captureCheckIn(A,r,i);return eM.uuid4()}async function jdr(A){let r=VE.getCurrentHub().getClient();return r?r.flush(A):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&eM.logger.warn("Cannot flush events. No client defined."),Promise.resolve(!1))}async function Wdr(A){let r=VE.getCurrentHub().getClient();return r?r.close(A):((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&eM.logger.warn("Cannot flush events and disable SDK. No client defined."),Promise.resolve(!1))}function Jdr(){return VE.getCurrentHub().lastEventId()}fp.addBreadcrumb=Sdr;fp.captureCheckIn=Ldr;fp.captureEvent=xdr;fp.captureException=Mdr;fp.captureMessage=kdr;fp.close=Wdr;fp.configureScope=Hdr;fp.flush=jdr;fp.lastEventId=Jdr;fp.setContext=Fdr;fp.setExtra=Tdr;fp.setExtras=Rdr;fp.setTag=Pdr;fp.setTags=Ndr;fp.setUser=Gdr;fp.startTransaction=Udr;fp.withScope=Ydr});var dkA=GA(ZsA=>{Object.defineProperty(ZsA,"__esModule",{value:!0});var qdr=wo(),Vdr=L0(),XsA=class{constructor(r,t){this._client=r,this.flushTimeout=60,this._pendingAggregates={},this._isEnabled=!0,this._intervalId=setInterval(()=>this.flush(),this.flushTimeout*1e3),this._sessionAttrs=t}flush(){let r=this.getSessionAggregates();r.aggregates.length!==0&&(this._pendingAggregates={},this._client.sendSession(r))}getSessionAggregates(){let r=Object.keys(this._pendingAggregates).map(i=>this._pendingAggregates[parseInt(i)]),t={attrs:this._sessionAttrs,aggregates:r};return qdr.dropUndefinedKeys(t)}close(){clearInterval(this._intervalId),this._isEnabled=!1,this.flush()}incrementSessionStatusCount(){if(!this._isEnabled)return;let r=Vdr.getCurrentHub().getScope(),t=r.getRequestSession();t&&t.status&&(this._incrementSessionStatusCount(t.status,new Date),r.setRequestSession(void 0))}_incrementSessionStatusCount(r,t){let i=new Date(t).setSeconds(0,0);this._pendingAggregates[i]=this._pendingAggregates[i]||{};let o=this._pendingAggregates[i];switch(o.started||(o.started=new Date(i).toISOString()),r){case"errored":return o.errored=(o.errored||0)+1,o.errored;case"ok":return o.exited=(o.exited||0)+1,o.exited;default:return o.crashed=(o.crashed||0)+1,o.crashed}}};ZsA.SessionFlusher=XsA});var hG=GA(BG=>{Object.defineProperty(BG,"__esModule",{value:!0});var $sA=wo(),zdr="7";function pkA(A){let r=A.protocol?`${A.protocol}:`:"",t=A.port?`:${A.port}`:"";return`${r}//${A.host}${t}${A.path?`/${A.path}`:""}/api/`}function Kdr(A){return`${pkA(A)}${A.projectId}/envelope/`}function Xdr(A,r){return $sA.urlEncode({sentry_key:A.publicKey,sentry_version:zdr,...r&&{sentry_client:`${r.name}/${r.version}`}})}function Zdr(A,r={}){let t=typeof r=="string"?r:r.tunnel,i=typeof r=="string"||!r._metadata?void 0:r._metadata.sdk;return t||`${Kdr(A)}?${Xdr(A,i)}`}function $dr(A,r){let t=$sA.makeDsn(A);if(!t)return"";let i=`${pkA(t)}embed/error-page/`,o=`dsn=${$sA.dsnToString(t)}`;for(let s in r)if(s!=="dsn")if(s==="user"){let g=r.user;if(!g)continue;g.name&&(o+=`&name=${encodeURIComponent(g.name)}`),g.email&&(o+=`&email=${encodeURIComponent(g.email)}`)}else o+=`&${encodeURIComponent(s)}=${encodeURIComponent(r[s])}`;return`${i}?${o}`}BG.getEnvelopeEndpointWithUrlEncodedAuth=Zdr;BG.getReportDialogEndpoint=$dr});var EkA=GA(QG=>{Object.defineProperty(QG,"__esModule",{value:!0});var B5=wo();function Apr(A,r){return r&&(A.sdk=A.sdk||{},A.sdk.name=A.sdk.name||r.name,A.sdk.version=A.sdk.version||r.version,A.sdk.integrations=[...A.sdk.integrations||[],...r.integrations||[]],A.sdk.packages=[...A.sdk.packages||[],...r.packages||[]]),A}function epr(A,r,t,i){let o=B5.getSdkMetadataForEnvelopeHeader(t),s={sent_at:new Date().toISOString(),...o&&{sdk:o},...!!i&&{dsn:B5.dsnToString(r)}},g="aggregates"in A?[{type:"sessions"},A]:[{type:"session"},A.toJSON()];return B5.createEnvelope(s,[g])}function rpr(A,r,t,i){let o=B5.getSdkMetadataForEnvelopeHeader(t),s=A.type&&A.type!=="replay_event"?A.type:"event";Apr(A,t&&t.sdk);let g=B5.createEventEnvelopeHeaders(A,o,i,r);delete A.sdkProcessingMetadata;let E=[{type:s},A];return B5.createEnvelope(g,[E])}QG.createEventEnvelope=rpr;QG.createSessionEnvelope=epr});var ecA=GA(h5=>{Object.defineProperty(h5,"__esModule",{value:!0});var fkA=wo(),tpr=L0(),ipr=z8(),AcA=[];function npr(A){let r={};return A.forEach(t=>{let{name:i}=t,o=r[i];o&&!o.isDefaultInstance&&t.isDefaultInstance||(r[i]=t)}),Object.keys(r).map(t=>r[t])}function apr(A){let r=A.defaultIntegrations||[],t=A.integrations;r.forEach(g=>{g.isDefaultInstance=!0});let i;Array.isArray(t)?i=[...r,...t]:typeof t=="function"?i=fkA.arrayify(t(r)):i=r;let o=npr(i),s=spr(o,g=>g.name==="Debug");if(s!==-1){let[g]=o.splice(s,1);o.push(g)}return o}function opr(A){let r={};return A.forEach(t=>{t&&BkA(t,r)}),r}function BkA(A,r){r[A.name]=A,AcA.indexOf(A.name)===-1&&(A.setupOnce(ipr.addGlobalEventProcessor,tpr.getCurrentHub),AcA.push(A.name),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&fkA.logger.log(`Integration installed: ${A.name}`))}function spr(A,r){for(let t=0;t{Object.defineProperty(rM,"__esModule",{value:!0});var Uh=wo(),cpr=W8(),lpr=z8();function upr(A,r,t,i){let{normalizeDepth:o=3,normalizeMaxBreadth:s=1e3}=A,g={...r,event_id:r.event_id||t.event_id||Uh.uuid4(),timestamp:r.timestamp||Uh.dateTimestampInSeconds()},E=t.integrations||A.integrations.map(m=>m.name);gpr(g,A),dpr(g,E),r.type===void 0&&QkA(g,A.stackParser);let p=i;t.captureContext&&(p=lpr.Scope.clone(p).update(t.captureContext));let B=Uh.resolvedSyncPromise(g);if(p){if(p.getAttachments){let m=[...t.attachments||[],...p.getAttachments()];m.length&&(t.attachments=m)}B=p.applyToEvent(g,t)}return B.then(m=>(m&&mkA(m),typeof o=="number"&&o>0?ppr(m,o,s):m))}function gpr(A,r){let{environment:t,release:i,dist:o,maxValueLength:s=250}=r;"environment"in A||(A.environment="environment"in r?t:cpr.DEFAULT_ENVIRONMENT),A.release===void 0&&i!==void 0&&(A.release=i),A.dist===void 0&&o!==void 0&&(A.dist=o),A.message&&(A.message=Uh.truncate(A.message,s));let g=A.exception&&A.exception.values&&A.exception.values[0];g&&g.value&&(g.value=Uh.truncate(g.value,s));let E=A.request;E&&E.url&&(E.url=Uh.truncate(E.url,s))}var hkA=new WeakMap;function QkA(A,r){let t=Uh.GLOBAL_OBJ._sentryDebugIds;if(!t)return;let i,o=hkA.get(r);o?i=o:(i=new Map,hkA.set(r,i));let s=Object.keys(t).reduce((g,E)=>{let p,B=i.get(E);B?p=B:(p=r(E),i.set(E,p));for(let m=p.length-1;m>=0;m--){let _=p[m];if(_.filename){g[_.filename]=t[E];break}}return g},{});try{A.exception.values.forEach(g=>{g.stacktrace.frames.forEach(E=>{E.filename&&(E.debug_id=s[E.filename])})})}catch{}}function mkA(A){let r={};try{A.exception.values.forEach(i=>{i.stacktrace.frames.forEach(o=>{o.debug_id&&(o.abs_path?r[o.abs_path]=o.debug_id:o.filename&&(r[o.filename]=o.debug_id),delete o.debug_id)})})}catch{}if(Object.keys(r).length===0)return;A.debug_meta=A.debug_meta||{},A.debug_meta.images=A.debug_meta.images||[];let t=A.debug_meta.images;Object.keys(r).forEach(i=>{t.push({type:"sourcemap",code_file:i,debug_id:r[i]})})}function dpr(A,r){r.length>0&&(A.sdk=A.sdk||{},A.sdk.integrations=[...A.sdk.integrations||[],...r])}function ppr(A,r,t){if(!A)return null;let i={...A,...A.breadcrumbs&&{breadcrumbs:A.breadcrumbs.map(o=>({...o,...o.data&&{data:Uh.normalize(o.data,r,t)}}))},...A.user&&{user:Uh.normalize(A.user,r,t)},...A.contexts&&{contexts:Uh.normalize(A.contexts,r,t)},...A.extra&&{extra:Uh.normalize(A.extra,r,t)}};return A.contexts&&A.contexts.trace&&i.contexts&&(i.contexts.trace=A.contexts.trace,A.contexts.trace.data&&(i.contexts.trace.data=Uh.normalize(A.contexts.trace.data,r,t))),A.spans&&(i.spans=A.spans.map(o=>(o.data&&(o.data=Uh.normalize(o.data,r,t)),o))),i}rM.applyDebugIds=QkA;rM.applyDebugMeta=mkA;rM.prepareEvent=upr});var IkA=GA(icA=>{Object.defineProperty(icA,"__esModule",{value:!0});var jc=wo(),Epr=hG(),DkA=EkA(),_kA=ecA(),wkA=V8(),fpr=uG(),Bpr=rcA(),vkA="Not capturing exception because it's already been captured.",tcA=class{constructor(r){if(this._options=r,this._integrations={},this._integrationsInitialized=!1,this._numProcessing=0,this._outcomes={},this._hooks={},r.dsn?this._dsn=jc.makeDsn(r.dsn):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&jc.logger.warn("No DSN provided, client will not do anything."),this._dsn){let t=Epr.getEnvelopeEndpointWithUrlEncodedAuth(this._dsn,r);this._transport=r.transport({recordDroppedEvent:this.recordDroppedEvent.bind(this),...r.transportOptions,url:t})}}captureException(r,t,i){if(jc.checkOrSetAlreadyCaught(r)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&jc.logger.log(vkA);return}let o=t&&t.event_id;return this._process(this.eventFromException(r,t).then(s=>this._captureEvent(s,t,i)).then(s=>{o=s})),o}captureMessage(r,t,i,o){let s=i&&i.event_id,g=jc.isPrimitive(r)?this.eventFromMessage(String(r),t,i):this.eventFromException(r,i);return this._process(g.then(E=>this._captureEvent(E,i,o)).then(E=>{s=E})),s}captureEvent(r,t,i){if(t&&t.originalException&&jc.checkOrSetAlreadyCaught(t.originalException)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&jc.logger.log(vkA);return}let o=t&&t.event_id;return this._process(this._captureEvent(r,t,i).then(s=>{o=s})),o}captureSession(r){if(!this._isEnabled()){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&jc.logger.warn("SDK not enabled, will not capture session.");return}typeof r.release!="string"?(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&jc.logger.warn("Discarded session because of missing or non-string release"):(this.sendSession(r),wkA.updateSession(r,{init:!1}))}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(r){let t=this._transport;return t?this._isClientDoneProcessing(r).then(i=>t.flush(r).then(o=>i&&o)):jc.resolvedSyncPromise(!0)}close(r){return this.flush(r).then(t=>(this.getOptions().enabled=!1,t))}setupIntegrations(){this._isEnabled()&&!this._integrationsInitialized&&(this._integrations=_kA.setupIntegrations(this._options.integrations),this._integrationsInitialized=!0)}getIntegrationById(r){return this._integrations[r]}getIntegration(r){try{return this._integrations[r.id]||null}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&jc.logger.warn(`Cannot retrieve integration ${r.id} from the current Client`),null}}addIntegration(r){_kA.setupIntegration(r,this._integrations)}sendEvent(r,t={}){if(this.emit("beforeSendEvent",r,t),this._dsn){let i=DkA.createEventEnvelope(r,this._dsn,this._options._metadata,this._options.tunnel);for(let s of t.attachments||[])i=jc.addItemToEnvelope(i,jc.createAttachmentEnvelopeItem(s,this._options.transportOptions&&this._options.transportOptions.textEncoder));let o=this._sendEnvelope(i);o&&o.then(s=>this.emit("afterSendEvent",r,s),null)}}sendSession(r){if(this._dsn){let t=DkA.createSessionEnvelope(r,this._dsn,this._options._metadata,this._options.tunnel);this._sendEnvelope(t)}}recordDroppedEvent(r,t,i){if(this._options.sendClientReports){let o=`${r}:${t}`;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&jc.logger.log(`Adding outcome: "${o}"`),this._outcomes[o]=this._outcomes[o]+1||1}}on(r,t){this._hooks[r]||(this._hooks[r]=[]),this._hooks[r].push(t)}emit(r,...t){this._hooks[r]&&this._hooks[r].forEach(i=>i(...t))}_updateSessionFromEvent(r,t){let i=!1,o=!1,s=t.exception&&t.exception.values;if(s){o=!0;for(let p of s){let B=p.mechanism;if(B&&B.handled===!1){i=!0;break}}}let g=r.status==="ok";(g&&r.errors===0||g&&i)&&(wkA.updateSession(r,{...i&&{status:"crashed"},errors:r.errors||Number(o||i)}),this.captureSession(r))}_isClientDoneProcessing(r){return new jc.SyncPromise(t=>{let i=0,o=1,s=setInterval(()=>{this._numProcessing==0?(clearInterval(s),t(!0)):(i+=o,r&&i>=r&&(clearInterval(s),t(!1)))},o)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._dsn!==void 0}_prepareEvent(r,t,i){let o=this.getOptions(),s=Object.keys(this._integrations);return!t.integrations&&s.length>0&&(t.integrations=s),Bpr.prepareEvent(o,r,t,i).then(g=>{if(g===null)return g;let{propagationContext:E}=g.sdkProcessingMetadata||{};if(!(g.contexts&&g.contexts.trace)&&E){let{traceId:B,spanId:m,parentSpanId:_,dsc:x}=E;g.contexts={trace:{trace_id:B,span_id:m,parent_span_id:_},...g.contexts};let O=x||fpr.getDynamicSamplingContextFromClient(B,this,i);g.sdkProcessingMetadata={dynamicSamplingContext:O,...g.sdkProcessingMetadata}}return g})}_captureEvent(r,t={},i){return this._processEvent(r,t,i).then(o=>o.event_id,o=>{if(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__){let s=o;s.logLevel==="log"?jc.logger.log(s.message):jc.logger.warn(s)}})}_processEvent(r,t,i){let o=this.getOptions(),{sampleRate:s}=o;if(!this._isEnabled())return jc.rejectedSyncPromise(new jc.SentryError("SDK not enabled, will not capture event.","log"));let g=CkA(r),E=ykA(r),p=r.type||"error",B=`before send for type \`${p}\``;if(E&&typeof s=="number"&&Math.random()>s)return this.recordDroppedEvent("sample_rate","error",r),jc.rejectedSyncPromise(new jc.SentryError(`Discarding event because it's not included in the random sample (sampling rate = ${s})`,"log"));let m=p==="replay_event"?"replay":p;return this._prepareEvent(r,t,i).then(_=>{if(_===null)throw this.recordDroppedEvent("event_processor",m,r),new jc.SentryError("An event processor returned `null`, will not send event.","log");if(t.data&&t.data.__sentry__===!0)return _;let O=Qpr(o,_,t);return hpr(O,B)}).then(_=>{if(_===null)throw this.recordDroppedEvent("before_send",m,r),new jc.SentryError(`${B} returned \`null\`, will not send event.`,"log");let x=i&&i.getSession();!g&&x&&this._updateSessionFromEvent(x,_);let O=_.transaction_info;if(g&&O&&_.transaction!==r.transaction){let k="custom";_.transaction_info={...O,source:k}}return this.sendEvent(_,t),_}).then(null,_=>{throw _ instanceof jc.SentryError?_:(this.captureException(_,{data:{__sentry__:!0},originalException:_}),new jc.SentryError(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. -Reason: ${_}`))})}_process(r){this._numProcessing++,r.then(t=>(this._numProcessing--,t),t=>(this._numProcessing--,t))}_sendEnvelope(r){if(this._transport&&this._dsn)return this.emit("beforeEnvelope",r),this._transport.send(r).then(null,t=>{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&jc.logger.error("Error while sending event:",t)});(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&jc.logger.error("Transport disabled")}_clearOutcomes(){let r=this._outcomes;return this._outcomes={},Object.keys(r).map(t=>{let[i,o]=t.split(":");return{reason:i,category:o,quantity:r[t]}})}};function hpr(A,r){let t=`${r} must return \`null\` or a valid event.`;if(jc.isThenable(A))return A.then(i=>{if(!jc.isPlainObject(i)&&i!==null)throw new jc.SentryError(t);return i},i=>{throw new jc.SentryError(`${r} rejected with ${i}`)});if(!jc.isPlainObject(A)&&A!==null)throw new jc.SentryError(t);return A}function Qpr(A,r,t){let{beforeSend:i,beforeSendTransaction:o}=A;return ykA(r)&&i?i(r,t):CkA(r)&&o?o(r,t):r}function ykA(A){return A.type===void 0}function CkA(A){return A.type==="transaction"}icA.BaseClient=tcA});var bkA=GA(ncA=>{Object.defineProperty(ncA,"__esModule",{value:!0});var mpr=wo(),Dpr=L0();function _pr(A,r){r.debug===!0&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?mpr.logger.enable():console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle."));let t=Dpr.getCurrentHub();t.getScope().update(r.initialScope);let o=new A(r);t.bindClient(o)}ncA.initAndBind=_pr});var kkA=GA(mG=>{Object.defineProperty(mG,"__esModule",{value:!0});var rh=wo(),MkA=30;function wpr(A,r,t=rh.makePromiseBuffer(A.bufferSize||MkA)){let i={},o=g=>t.drain(g);function s(g){let E=[];if(rh.forEachEnvelopeItem(g,(_,x)=>{let O=rh.envelopeItemTypeToDataCategory(x);if(rh.isRateLimited(i,O)){let k=OkA(_,x);A.recordDroppedEvent("ratelimit_backoff",O,k)}else E.push(_)}),E.length===0)return rh.resolvedSyncPromise();let p=rh.createEnvelope(g[0],E),B=_=>{rh.forEachEnvelopeItem(p,(x,O)=>{let k=OkA(x,O);A.recordDroppedEvent(_,rh.envelopeItemTypeToDataCategory(O),k)})},m=()=>r({body:rh.serializeEnvelope(p,A.textEncoder)}).then(_=>(_.statusCode!==void 0&&(_.statusCode<200||_.statusCode>=300)&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&rh.logger.warn(`Sentry responded with status code ${_.statusCode} to sent event.`),i=rh.updateRateLimits(i,_),_),_=>{throw B("network_error"),_});return t.add(m).then(_=>_,_=>{if(_ instanceof rh.SentryError)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&rh.logger.error("Skipped sending event because buffer is full."),B("queue_overflow"),rh.resolvedSyncPromise();throw _})}return s.__sentry__baseTransport__=!0,{send:s,flush:o}}function OkA(A,r){if(!(r!=="event"&&r!=="transaction"))return Array.isArray(A)?A[1]:void 0}mG.DEFAULT_TRANSPORT_BUFFER_SIZE=MkA;mG.createTransport=wpr});var HkA=GA(tM=>{Object.defineProperty(tM,"__esModule",{value:!0});var ocA=wo(),xkA=100,scA=5e3,vpr=36e5;function acA(A,r){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&ocA.logger.info(`[Offline]: ${A}`,r)}function ypr(A){return r=>{let t=A(r),i=r.createStore?r.createStore(r):void 0,o=scA,s;function g(m,_,x){return ocA.envelopeContainsItemType(m,["replay_event","replay_recording","client_report"])?!1:r.shouldStore?r.shouldStore(m,_,x):!0}function E(m){i&&(s&&clearTimeout(s),s=setTimeout(async()=>{s=void 0;let _=await i.pop();_&&(acA("Attempting to send previously queued event"),B(_).catch(x=>{acA("Failed to retry sending",x)}))},m),typeof s!="number"&&s.unref&&s.unref())}function p(){s||(E(o),o=Math.min(o*2,vpr))}async function B(m){try{let _=await t.send(m),x=xkA;if(_){if(_.headers&&_.headers["retry-after"])x=ocA.parseRetryAfterHeader(_.headers["retry-after"]);else if((_.statusCode||0)>=400)return _}return E(x),o=scA,_}catch(_){if(i&&await g(m,_,o))return await i.insert(m),p(),acA("Error sending. Event queued",_),{};throw _}}return r.flushAtStartup&&p(),{send:B,flush:m=>t.flush(m)}}}tM.MIN_DELAY=xkA;tM.START_DELAY=scA;tM.makeOfflineTransport=ypr});var FkA=GA(DG=>{Object.defineProperty(DG,"__esModule",{value:!0});var SkA=wo(),Cpr=hG();function ccA(A,r){let t;return SkA.forEachEnvelopeItem(A,(i,o)=>(r.includes(o)&&(t=Array.isArray(i)?i[1]:void 0),!!t)),t}function Ipr(A,r){return t=>{let i=A(t);return{send:async o=>{let s=ccA(o,["event","transaction","profile","replay_event"]);return s&&(s.release=r),i.send(o)},flush:o=>i.flush(o)}}}function bpr(A,r){return t=>{let i=A(t),o={};function s(p,B){let m=B?`${p}:${B}`:p;if(!o[m]){let _=SkA.dsnFromString(p);if(!_)return;let x=Cpr.getEnvelopeEndpointWithUrlEncodedAuth(_);o[m]=B?Ipr(A,B)({...t,url:x}):A({...t,url:x})}return o[m]}async function g(p){function B(x){let O=x&&x.length?x:["event"];return ccA(p,O)}let m=r({envelope:p,getEvent:B}).map(x=>typeof x=="string"?s(x,void 0):s(x.dsn,x.release)).filter(x=>!!x);return m.length===0&&m.push(i),(await Promise.all(m.map(x=>x.send(p))))[0]}async function E(p){let B=[...Object.keys(o).map(_=>o[_]),i];return(await Promise.all(B.map(_=>_.flush(p)))).every(_=>_)}return{send:g,flush:E}}}DG.eventFromEnvelope=ccA;DG.makeMultiplexedTransport=bpr});var RkA=GA(lcA=>{Object.defineProperty(lcA,"__esModule",{value:!0});var Opr="7.66.0";lcA.SDK_VERSION=Opr});var gcA=GA(ucA=>{Object.defineProperty(ucA,"__esModule",{value:!0});var Mpr=wo(),TkA,_G=class A{static __initStatic(){this.id="FunctionToString"}constructor(){this.name=A.id}setupOnce(){TkA=Function.prototype.toString;try{Function.prototype.toString=function(...r){let t=Mpr.getOriginalFunction(this)||this;return TkA.apply(t,r)}}catch{}}};_G.__initStatic();ucA.FunctionToString=_G});var dcA=GA(iM=>{Object.defineProperty(iM,"__esModule",{value:!0});var Zp=wo(),kpr=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/],xpr=[/^.*healthcheck.*$/,/^.*healthy.*$/,/^.*live.*$/,/^.*ready.*$/,/^.*heartbeat.*$/,/^.*\/health$/,/^.*\/healthz$/],wG=class A{static __initStatic(){this.id="InboundFilters"}constructor(r={}){this.name=A.id,this._options=r}setupOnce(r,t){let i=o=>{let s=t();if(s){let g=s.getIntegration(A);if(g){let E=s.getClient(),p=E?E.getOptions():{},B=NkA(g._options,p);return PkA(o,B)?null:o}}return o};i.id=this.name,r(i)}};wG.__initStatic();function NkA(A={},r={}){return{allowUrls:[...A.allowUrls||[],...r.allowUrls||[]],denyUrls:[...A.denyUrls||[],...r.denyUrls||[]],ignoreErrors:[...A.ignoreErrors||[],...r.ignoreErrors||[],...A.disableErrorDefaults?[]:kpr],ignoreTransactions:[...A.ignoreTransactions||[],...r.ignoreTransactions||[],...A.disableTransactionDefaults?[]:xpr],ignoreInternal:A.ignoreInternal!==void 0?A.ignoreInternal:!0}}function PkA(A,r){return r.ignoreInternal&&Npr(A)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Zp.logger.warn(`Event dropped due to being internal Sentry Error. -Event: ${Zp.getEventDescription(A)}`),!0):Hpr(A,r.ignoreErrors)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Zp.logger.warn(`Event dropped due to being matched by \`ignoreErrors\` option. -Event: ${Zp.getEventDescription(A)}`),!0):Spr(A,r.ignoreTransactions)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Zp.logger.warn(`Event dropped due to being matched by \`ignoreTransactions\` option. -Event: ${Zp.getEventDescription(A)}`),!0):Fpr(A,r.denyUrls)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Zp.logger.warn(`Event dropped due to being matched by \`denyUrls\` option. -Event: ${Zp.getEventDescription(A)}. -Url: ${vG(A)}`),!0):Rpr(A,r.allowUrls)?!1:((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Zp.logger.warn(`Event dropped due to not being matched by \`allowUrls\` option. -Event: ${Zp.getEventDescription(A)}. -Url: ${vG(A)}`),!0)}function Hpr(A,r){return A.type||!r||!r.length?!1:Tpr(A).some(t=>Zp.stringMatchesSomePattern(t,r))}function Spr(A,r){if(A.type!=="transaction"||!r||!r.length)return!1;let t=A.transaction;return t?Zp.stringMatchesSomePattern(t,r):!1}function Fpr(A,r){if(!r||!r.length)return!1;let t=vG(A);return t?Zp.stringMatchesSomePattern(t,r):!1}function Rpr(A,r){if(!r||!r.length)return!0;let t=vG(A);return t?Zp.stringMatchesSomePattern(t,r):!0}function Tpr(A){if(A.message)return[A.message];if(A.exception){let{values:r}=A.exception;try{let{type:t="",value:i=""}=r&&r[r.length-1]||{};return[`${i}`,`${t}: ${i}`]}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Zp.logger.error(`Cannot extract message for event ${Zp.getEventDescription(A)}`),[]}}return[]}function Npr(A){try{return A.exception.values[0].type==="SentryError"}catch{}return!1}function Ppr(A=[]){for(let r=A.length-1;r>=0;r--){let t=A[r];if(t&&t.filename!==""&&t.filename!=="[native code]")return t.filename||null}return null}function vG(A){try{let r;try{r=A.exception.values[0].stacktrace.frames}catch{}return r?Ppr(r):null}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Zp.logger.error(`Cannot extract url for event ${Zp.getEventDescription(A)}`),null}}iM.InboundFilters=wG;iM._mergeOptions=NkA;iM._shouldDropEvent=PkA});var GkA=GA(yG=>{Object.defineProperty(yG,"__esModule",{value:!0});var Gpr=gcA(),Ypr=dcA();yG.FunctionToString=Gpr.FunctionToString;yG.InboundFilters=Ypr.InboundFilters});var YkA=GA(EcA=>{Object.defineProperty(EcA,"__esModule",{value:!0});var pcA=wo();function Upr(A,r,t,i,o){let s={sent_at:new Date().toISOString()};t&&t.sdk&&(s.sdk={name:t.sdk.name,version:t.sdk.version}),i&&o&&(s.dsn=pcA.dsnToString(o)),r&&(s.trace=pcA.dropUndefinedKeys(r));let g=Lpr(A);return pcA.createEnvelope(s,[g])}function Lpr(A){return[{type:"check_in"},A]}EcA.createCheckInEnvelope=Upr});var WkA=GA(nM=>{Object.defineProperty(nM,"__esModule",{value:!0});var fcA=wo(),LkA=new Map,UkA=new Set;function jpr(A){if(fcA.GLOBAL_OBJ._sentryModuleMetadata)for(let r of Object.keys(fcA.GLOBAL_OBJ._sentryModuleMetadata)){let t=fcA.GLOBAL_OBJ._sentryModuleMetadata[r];if(UkA.has(r))continue;UkA.add(r);let i=A(r);for(let o of i.reverse())if(o.filename){LkA.set(o.filename,t);break}}}function jkA(A,r){return jpr(A),LkA.get(r)}function Wpr(A,r){try{r.exception.values.forEach(t=>{if(t.stacktrace)for(let i of t.stacktrace.frames||[]){if(!i.filename)continue;let o=jkA(A,i.filename);o&&(i.module_metadata=o)}})}catch{}}function Jpr(A){try{A.exception.values.forEach(r=>{if(r.stacktrace)for(let t of r.stacktrace.frames||[])delete t.module_metadata})}catch{}}nM.addMetadataToStackFrames=Wpr;nM.getMetadataForUrl=jkA;nM.stripMetadataFromStackFrames=Jpr});var qkA=GA(BcA=>{Object.defineProperty(BcA,"__esModule",{value:!0});var qpr=wo(),JkA=WkA(),CG=class A{static __initStatic(){this.id="ModuleMetadata"}constructor(){this.name=A.id}setupOnce(r,t){let i=t().getClient();if(!i||typeof i.on!="function")return;i.on("beforeEnvelope",s=>{qpr.forEachEnvelopeItem(s,(g,E)=>{if(E==="event"){let p=Array.isArray(g)?g[1]:void 0;p&&(JkA.stripMetadataFromStackFrames(p),g[1]=p)}})});let o=i.getOptions().stackParser;r(s=>(JkA.addMetadataToStackFrames(o,s),s))}};CG.__initStatic();BcA.ModuleMetadata=CG});var sg=GA(eo=>{Object.defineProperty(eo,"__esModule",{value:!0});var VkA=akA(),zkA=VsA(),KkA=lG(),Vpr=gG(),zpr=cG(),Kpr=okA(),IG=lkA(),Xpr=uG(),Zpr=ukA(),zE=gkA(),J4=L0(),hcA=V8(),$pr=dkA(),XkA=z8(),ZkA=hG(),AEr=IkA(),eEr=bkA(),rEr=kkA(),tEr=HkA(),iEr=FkA(),nEr=RkA(),aEr=ecA(),oEr=GkA(),sEr=rcA(),cEr=YkA(),lEr=sG(),uEr=W8(),gEr=qkA(),dEr=gcA(),pEr=dcA(),EEr=wo();eo.addTracingExtensions=VkA.addTracingExtensions;eo.startIdleTransaction=VkA.startIdleTransaction;eo.IdleTransaction=zkA.IdleTransaction;eo.TRACING_DEFAULTS=zkA.TRACING_DEFAULTS;eo.Span=KkA.Span;eo.spanStatusfromHttpCode=KkA.spanStatusfromHttpCode;eo.Transaction=Vpr.Transaction;eo.getActiveTransaction=zpr.getActiveTransaction;Object.defineProperty(eo,"SpanStatus",{enumerable:!0,get:()=>Kpr.SpanStatus});eo.getActiveSpan=IG.getActiveSpan;eo.startActiveSpan=IG.startActiveSpan;eo.startSpan=IG.startSpan;eo.trace=IG.trace;eo.getDynamicSamplingContextFromClient=Xpr.getDynamicSamplingContextFromClient;eo.setMeasurement=Zpr.setMeasurement;eo.addBreadcrumb=zE.addBreadcrumb;eo.captureCheckIn=zE.captureCheckIn;eo.captureEvent=zE.captureEvent;eo.captureException=zE.captureException;eo.captureMessage=zE.captureMessage;eo.close=zE.close;eo.configureScope=zE.configureScope;eo.flush=zE.flush;eo.lastEventId=zE.lastEventId;eo.setContext=zE.setContext;eo.setExtra=zE.setExtra;eo.setExtras=zE.setExtras;eo.setTag=zE.setTag;eo.setTags=zE.setTags;eo.setUser=zE.setUser;eo.startTransaction=zE.startTransaction;eo.withScope=zE.withScope;eo.Hub=J4.Hub;eo.ensureHubOnCarrier=J4.ensureHubOnCarrier;eo.getCurrentHub=J4.getCurrentHub;eo.getHubFromCarrier=J4.getHubFromCarrier;eo.getMainCarrier=J4.getMainCarrier;eo.makeMain=J4.makeMain;eo.runWithAsyncContext=J4.runWithAsyncContext;eo.setAsyncContextStrategy=J4.setAsyncContextStrategy;eo.setHubOnCarrier=J4.setHubOnCarrier;eo.closeSession=hcA.closeSession;eo.makeSession=hcA.makeSession;eo.updateSession=hcA.updateSession;eo.SessionFlusher=$pr.SessionFlusher;eo.Scope=XkA.Scope;eo.addGlobalEventProcessor=XkA.addGlobalEventProcessor;eo.getEnvelopeEndpointWithUrlEncodedAuth=ZkA.getEnvelopeEndpointWithUrlEncodedAuth;eo.getReportDialogEndpoint=ZkA.getReportDialogEndpoint;eo.BaseClient=AEr.BaseClient;eo.initAndBind=eEr.initAndBind;eo.createTransport=rEr.createTransport;eo.makeOfflineTransport=tEr.makeOfflineTransport;eo.makeMultiplexedTransport=iEr.makeMultiplexedTransport;eo.SDK_VERSION=nEr.SDK_VERSION;eo.getIntegrationsToSetup=aEr.getIntegrationsToSetup;eo.Integrations=oEr;eo.prepareEvent=sEr.prepareEvent;eo.createCheckInEnvelope=cEr.createCheckInEnvelope;eo.hasTracingEnabled=lEr.hasTracingEnabled;eo.DEFAULT_ENVIRONMENT=uEr.DEFAULT_ENVIRONMENT;eo.ModuleMetadata=gEr.ModuleMetadata;eo.FunctionToString=dEr.FunctionToString;eo.InboundFilters=pEr.InboundFilters;eo.extractTraceparentData=EEr.extractTraceparentData});var sM=GA(m5=>{"use strict";function vEr(A,r,t){if(t===void 0&&(t=Array.prototype),A&&typeof t.find=="function")return t.find.call(A,r);for(var i=0;i{var DxA=sM(),g1=DxA.find,cM=DxA.NAMESPACE;function CEr(A){return A!==""}function IEr(A){return A?A.split(/[\t\n\f\r ]+/).filter(CEr):[]}function bEr(A,r){return A.hasOwnProperty(r)||(A[r]=!0),A}function pxA(A){if(!A)return[];var r=IEr(A);return Object.keys(r.reduce(bEr,{}))}function OEr(A){return function(r){return A&&A.indexOf(r)!==-1}}function uM(A,r){for(var t in A)Object.prototype.hasOwnProperty.call(A,t)&&(r[t]=A[t])}function ih(A,r){var t=A.prototype;if(!(t instanceof r)){let o=function(){};var i=o;o.prototype=r.prototype,o=new o,uM(t,o),A.prototype=t=o}t.constructor!=A&&(typeof A!="function"&&console.error("unknown Class:"+A),t.constructor=A)}var nh={},j0=nh.ELEMENT_NODE=1,_5=nh.ATTRIBUTE_NODE=2,HG=nh.TEXT_NODE=3,_xA=nh.CDATA_SECTION_NODE=4,wxA=nh.ENTITY_REFERENCE_NODE=5,MEr=nh.ENTITY_NODE=6,vxA=nh.PROCESSING_INSTRUCTION_NODE=7,yxA=nh.COMMENT_NODE=8,CxA=nh.DOCUMENT_NODE=9,IxA=nh.DOCUMENT_TYPE_NODE=10,V4=nh.DOCUMENT_FRAGMENT_NODE=11,kEr=nh.NOTATION_NODE=12,Of={},$p={},Gei=Of.INDEX_SIZE_ERR=($p[1]="Index size error",1),Yei=Of.DOMSTRING_SIZE_ERR=($p[2]="DOMString size error",2),th=Of.HIERARCHY_REQUEST_ERR=($p[3]="Hierarchy request error",3),Uei=Of.WRONG_DOCUMENT_ERR=($p[4]="Wrong document",4),Lei=Of.INVALID_CHARACTER_ERR=($p[5]="Invalid character",5),jei=Of.NO_DATA_ALLOWED_ERR=($p[6]="No data allowed",6),Wei=Of.NO_MODIFICATION_ALLOWED_ERR=($p[7]="No modification allowed",7),bxA=Of.NOT_FOUND_ERR=($p[8]="Not found",8),Jei=Of.NOT_SUPPORTED_ERR=($p[9]="Not supported",9),ExA=Of.INUSE_ATTRIBUTE_ERR=($p[10]="Attribute in use",10),qei=Of.INVALID_STATE_ERR=($p[11]="Invalid state",11),Vei=Of.SYNTAX_ERR=($p[12]="Syntax error",12),zei=Of.INVALID_MODIFICATION_ERR=($p[13]="Invalid modification",13),Kei=Of.NAMESPACE_ERR=($p[14]="Invalid namespace",14),Xei=Of.INVALID_ACCESS_ERR=($p[15]="Invalid access",15);function ld(A,r){if(r instanceof Error)var t=r;else t=this,Error.call(this,$p[A]),this.message=$p[A],Error.captureStackTrace&&Error.captureStackTrace(this,ld);return t.code=A,r&&(this.message=this.message+": "+r),t}ld.prototype=Error.prototype;uM(Of,ld);function q4(){}q4.prototype={length:0,item:function(A){return A>=0&&A=0){for(var o=r.length-1;i0},lookupPrefix:function(A){for(var r=this;r;){var t=r._nsMap;if(t){for(var i in t)if(Object.prototype.hasOwnProperty.call(t,i)&&t[i]===A)return i}r=r.nodeType==_5?r.ownerDocument:r.parentNode}return null},lookupNamespaceURI:function(A){for(var r=this;r;){var t=r._nsMap;if(t&&Object.prototype.hasOwnProperty.call(t,A))return t[A];r=r.nodeType==_5?r.ownerDocument:r.parentNode}return null},isDefaultNamespace:function(A){var r=this.lookupPrefix(A);return r==null}};function kxA(A){return A=="<"&&"<"||A==">"&&">"||A=="&"&&"&"||A=='"'&&"""||"&#"+A.charCodeAt()+";"}uM(nh,zl);uM(nh,zl.prototype);function lM(A,r){if(r(A))return!0;if(A=A.firstChild)do if(lM(A,r))return!0;while(A=A.nextSibling)}function gM(){this.ownerDocument=this}function xEr(A,r,t){A&&A._inc++;var i=t.namespaceURI;i===cM.XMLNS&&(r._nsMap[t.prefix?t.localName:""]=t.value)}function xxA(A,r,t,i){A&&A._inc++;var o=t.namespaceURI;o===cM.XMLNS&&delete r._nsMap[t.prefix?t.localName:""]}function xcA(A,r,t){if(A&&A._inc){A._inc++;var i=r.childNodes;if(t)i[i.length++]=t;else{for(var o=r.firstChild,s=0;o;)i[s++]=o,o=o.nextSibling;i.length=s,delete i[i.length]}}}function HxA(A,r){var t=r.previousSibling,i=r.nextSibling;return t?t.nextSibling=i:A.firstChild=i,i?i.previousSibling=t:A.lastChild=t,r.parentNode=null,r.previousSibling=null,r.nextSibling=null,xcA(A.ownerDocument,A),r}function HEr(A){return A&&(A.nodeType===zl.DOCUMENT_NODE||A.nodeType===zl.DOCUMENT_FRAGMENT_NODE||A.nodeType===zl.ELEMENT_NODE)}function SEr(A){return A&&(d1(A)||HcA(A)||z4(A)||A.nodeType===zl.DOCUMENT_FRAGMENT_NODE||A.nodeType===zl.COMMENT_NODE||A.nodeType===zl.PROCESSING_INSTRUCTION_NODE)}function z4(A){return A&&A.nodeType===zl.DOCUMENT_TYPE_NODE}function d1(A){return A&&A.nodeType===zl.ELEMENT_NODE}function HcA(A){return A&&A.nodeType===zl.TEXT_NODE}function hxA(A,r){var t=A.childNodes||[];if(g1(t,d1)||z4(r))return!1;var i=g1(t,z4);return!(r&&i&&t.indexOf(i)>t.indexOf(r))}function QxA(A,r){var t=A.childNodes||[];function i(s){return d1(s)&&s!==r}if(g1(t,i))return!1;var o=g1(t,z4);return!(r&&o&&t.indexOf(o)>t.indexOf(r))}function FEr(A,r,t){if(!HEr(A))throw new ld(th,"Unexpected parent node type "+A.nodeType);if(t&&t.parentNode!==A)throw new ld(bxA,"child not in parent");if(!SEr(r)||z4(r)&&A.nodeType!==zl.DOCUMENT_NODE)throw new ld(th,"Unexpected node type "+r.nodeType+" for parent node type "+A.nodeType)}function REr(A,r,t){var i=A.childNodes||[],o=r.childNodes||[];if(r.nodeType===zl.DOCUMENT_FRAGMENT_NODE){var s=o.filter(d1);if(s.length>1||g1(o,HcA))throw new ld(th,"More than one element or text in fragment");if(s.length===1&&!hxA(A,t))throw new ld(th,"Element in fragment can not be inserted before doctype")}if(d1(r)&&!hxA(A,t))throw new ld(th,"Only one element can be added and only after doctype");if(z4(r)){if(g1(i,z4))throw new ld(th,"Only one doctype is allowed");var g=g1(i,d1);if(t&&i.indexOf(g)1||g1(o,HcA))throw new ld(th,"More than one element or text in fragment");if(s.length===1&&!QxA(A,t))throw new ld(th,"Element in fragment can not be inserted before doctype")}if(d1(r)&&!QxA(A,t))throw new ld(th,"Only one element can be added and only after doctype");if(z4(r)){let p=function(B){return z4(B)&&B!==t};var E=p;if(g1(i,p))throw new ld(th,"Only one doctype is allowed");var g=g1(i,d1);if(t&&i.indexOf(g)0&&lM(t.documentElement,function(o){if(o!==t&&o.nodeType===j0){var s=o.getAttribute("class");if(s){var g=A===s;if(!g){var E=pxA(s);g=r.every(OEr(E))}g&&i.push(o)}}}),i})},createElement:function(A){var r=new A2;r.ownerDocument=this,r.nodeName=A,r.tagName=A,r.localName=A,r.childNodes=new q4;var t=r.attributes=new SG;return t._ownerElement=r,r},createDocumentFragment:function(){var A=new NG;return A.ownerDocument=this,A.childNodes=new q4,A},createTextNode:function(A){var r=new ScA;return r.ownerDocument=this,r.appendData(A),r},createComment:function(A){var r=new FcA;return r.ownerDocument=this,r.appendData(A),r},createCDATASection:function(A){var r=new RcA;return r.ownerDocument=this,r.appendData(A),r},createProcessingInstruction:function(A,r){var t=new NcA;return t.ownerDocument=this,t.tagName=t.nodeName=t.target=A,t.nodeValue=t.data=r,t},createAttribute:function(A){var r=new RG;return r.ownerDocument=this,r.name=A,r.nodeName=A,r.localName=A,r.specified=!0,r},createEntityReference:function(A){var r=new TcA;return r.ownerDocument=this,r.nodeName=A,r},createElementNS:function(A,r){var t=new A2,i=r.split(":"),o=t.attributes=new SG;return t.childNodes=new q4,t.ownerDocument=this,t.nodeName=r,t.tagName=r,t.namespaceURI=A,i.length==2?(t.prefix=i[0],t.localName=i[1]):t.localName=r,o._ownerElement=t,t},createAttributeNS:function(A,r){var t=new RG,i=r.split(":");return t.ownerDocument=this,t.nodeName=r,t.name=r,t.namespaceURI=A,t.specified=!0,i.length==2?(t.prefix=i[0],t.localName=i[1]):t.localName=r,t}};ih(gM,zl);function A2(){this._nsMap={}}A2.prototype={nodeType:j0,hasAttribute:function(A){return this.getAttributeNode(A)!=null},getAttribute:function(A){var r=this.getAttributeNode(A);return r&&r.value||""},getAttributeNode:function(A){return this.attributes.getNamedItem(A)},setAttribute:function(A,r){var t=this.ownerDocument.createAttribute(A);t.value=t.nodeValue=""+r,this.setAttributeNode(t)},removeAttribute:function(A){var r=this.getAttributeNode(A);r&&this.removeAttributeNode(r)},appendChild:function(A){return A.nodeType===V4?this.insertBefore(A,null):TEr(this,A)},setAttributeNode:function(A){return this.attributes.setNamedItem(A)},setAttributeNodeNS:function(A){return this.attributes.setNamedItemNS(A)},removeAttributeNode:function(A){return this.attributes.removeNamedItem(A.nodeName)},removeAttributeNS:function(A,r){var t=this.getAttributeNodeNS(A,r);t&&this.removeAttributeNode(t)},hasAttributeNS:function(A,r){return this.getAttributeNodeNS(A,r)!=null},getAttributeNS:function(A,r){var t=this.getAttributeNodeNS(A,r);return t&&t.value||""},setAttributeNS:function(A,r,t){var i=this.ownerDocument.createAttributeNS(A,r);i.value=i.nodeValue=""+t,this.setAttributeNode(i)},getAttributeNodeNS:function(A,r){return this.attributes.getNamedItemNS(A,r)},getElementsByTagName:function(A){return new w5(this,function(r){var t=[];return lM(r,function(i){i!==r&&i.nodeType==j0&&(A==="*"||i.tagName==A)&&t.push(i)}),t})},getElementsByTagNameNS:function(A,r){return new w5(this,function(t){var i=[];return lM(t,function(o){o!==t&&o.nodeType===j0&&(A==="*"||o.namespaceURI===A)&&(r==="*"||o.localName==r)&&i.push(o)}),i})}};gM.prototype.getElementsByTagName=A2.prototype.getElementsByTagName;gM.prototype.getElementsByTagNameNS=A2.prototype.getElementsByTagNameNS;ih(A2,zl);function RG(){}RG.prototype.nodeType=_5;ih(RG,zl);function dM(){}dM.prototype={data:"",substringData:function(A,r){return this.data.substring(A,A+r)},appendData:function(A){A=this.data+A,this.nodeValue=this.data=A,this.length=A.length},insertData:function(A,r){this.replaceData(A,0,r)},appendChild:function(A){throw new Error($p[th])},deleteData:function(A,r){this.replaceData(A,r,"")},replaceData:function(A,r,t){var i=this.data.substring(0,A),o=this.data.substring(A+r);t=i+t+o,this.nodeValue=this.data=t,this.length=t.length}};ih(dM,zl);function ScA(){}ScA.prototype={nodeName:"#text",nodeType:HG,splitText:function(A){var r=this.data,t=r.substring(A);r=r.substring(0,A),this.data=this.nodeValue=r,this.length=r.length;var i=this.ownerDocument.createTextNode(t);return this.parentNode&&this.parentNode.insertBefore(i,this.nextSibling),i}};ih(ScA,dM);function FcA(){}FcA.prototype={nodeName:"#comment",nodeType:yxA};ih(FcA,dM);function RcA(){}RcA.prototype={nodeName:"#cdata-section",nodeType:_xA};ih(RcA,dM);function TG(){}TG.prototype.nodeType=IxA;ih(TG,zl);function FxA(){}FxA.prototype.nodeType=kEr;ih(FxA,zl);function RxA(){}RxA.prototype.nodeType=MEr;ih(RxA,zl);function TcA(){}TcA.prototype.nodeType=wxA;ih(TcA,zl);function NG(){}NG.prototype.nodeName="#document-fragment";NG.prototype.nodeType=V4;ih(NG,zl);function NcA(){}NcA.prototype.nodeType=vxA;ih(NcA,zl);function TxA(){}TxA.prototype.serializeToString=function(A,r,t){return NxA.call(A,r,t)};zl.prototype.toString=NxA;function NxA(A,r){var t=[],i=this.nodeType==9&&this.documentElement||this,o=i.prefix,s=i.namespaceURI;if(s&&o==null){var o=i.lookupPrefix(s);if(o==null)var g=[{namespace:s,prefix:null}]}return D5(this,t,A,r,g),t.join("")}function mxA(A,r,t){var i=A.prefix||"",o=A.namespaceURI;if(!o||i==="xml"&&o===cM.XML||o===cM.XMLNS)return!1;for(var s=t.length;s--;){var g=t[s];if(g.prefix===i)return g.namespace!==o}return!0}function OcA(A,r,t){A.push(" ",r,'="',t.replace(/[<>&"\t\n\r]/g,kxA),'"')}function D5(A,r,t,i,o){if(o||(o=[]),i)if(A=i(A),A){if(typeof A=="string"){r.push(A);return}}else return;switch(A.nodeType){case j0:var s=A.attributes,g=s.length,T=A.firstChild,E=A.tagName;t=cM.isHTML(A.namespaceURI)||t;var p=E;if(!t&&!A.prefix&&A.namespaceURI){for(var B,m=0;m=0;_--){var x=o[_];if(x.prefix===""&&x.namespace===A.namespaceURI){B=x.namespace;break}}if(B!==A.namespaceURI)for(var _=o.length-1;_>=0;_--){var x=o[_];if(x.namespace===A.namespaceURI){x.prefix&&(p=x.prefix+":"+E);break}}}r.push("<",p);for(var O=0;O"),t&&/^script$/i.test(E))for(;T;)T.data?r.push(T.data):D5(T,r,t,i,o.slice()),T=T.nextSibling;else for(;T;)D5(T,r,t,i,o.slice()),T=T.nextSibling;r.push("")}else r.push("/>");return;case CxA:case V4:for(var T=A.firstChild;T;)D5(T,r,t,i,o.slice()),T=T.nextSibling;return;case _5:return OcA(r,A.name,A.value);case HG:return r.push(A.data.replace(/[<&>]/g,kxA));case _xA:return r.push("");case yxA:return r.push("");case IxA:var v=A.publicId,F=A.systemId;if(r.push("");else if(F&&F!=".")r.push(" SYSTEM ",F,">");else{var y=A.internalSubset;y&&r.push(" [",y,"]"),r.push(">")}return;case vxA:return r.push("");case wxA:return r.push("&",A.nodeName,";");default:r.push("??",A.nodeName)}}function PxA(A,r,t){var i;switch(r.nodeType){case j0:i=r.cloneNode(!1),i.ownerDocument=A;case V4:break;case _5:t=!0;break}if(i||(i=r.cloneNode(!1)),i.ownerDocument=A,i.parentNode=null,t)for(var o=r.firstChild;o;)i.appendChild(PxA(A,o,t)),o=o.nextSibling;return i}function McA(A,r,t){var i=new r.constructor;for(var o in r)if(Object.prototype.hasOwnProperty.call(r,o)){var s=r[o];typeof s!="object"&&s!=i[o]&&(i[o]=s)}switch(r.childNodes&&(i.childNodes=new q4),i.ownerDocument=A,i.nodeType){case j0:var g=r.attributes,E=i.attributes=new SG,p=g.length;E._ownerElement=i;for(var B=0;B{"use strict";var YxA=sM().freeze;pM.XML_ENTITIES=YxA({amp:"&",apos:"'",gt:">",lt:"<",quot:'"'});pM.HTML_ENTITIES=YxA({Aacute:"\xC1",aacute:"\xE1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223E",acd:"\u223F",acE:"\u223E\u0333",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",Acy:"\u0410",acy:"\u0430",AElig:"\xC6",aelig:"\xE6",af:"\u2061",Afr:"\u{1D504}",afr:"\u{1D51E}",Agrave:"\xC0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03B1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2A3F",AMP:"&",amp:"&",And:"\u2A53",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",Aogon:"\u0104",aogon:"\u0105",Aopf:"\u{1D538}",aopf:"\u{1D552}",ap:"\u2248",apacir:"\u2A6F",apE:"\u2A70",ape:"\u224A",apid:"\u224B",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224A",Aring:"\xC5",aring:"\xE5",Ascr:"\u{1D49C}",ascr:"\u{1D4B6}",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224D",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",Backslash:"\u2216",Barv:"\u2AE7",barvee:"\u22BD",Barwed:"\u2306",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",Because:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",Bernoullis:"\u212C",Beta:"\u0392",beta:"\u03B2",beth:"\u2136",between:"\u226C",Bfr:"\u{1D505}",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bNot:"\u2AED",bnot:"\u2310",Bopf:"\u{1D539}",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxbox:"\u29C9",boxDL:"\u2557",boxDl:"\u2556",boxdL:"\u2555",boxdl:"\u2510",boxDR:"\u2554",boxDr:"\u2553",boxdR:"\u2552",boxdr:"\u250C",boxH:"\u2550",boxh:"\u2500",boxHD:"\u2566",boxHd:"\u2564",boxhD:"\u2565",boxhd:"\u252C",boxHU:"\u2569",boxHu:"\u2567",boxhU:"\u2568",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxUL:"\u255D",boxUl:"\u255C",boxuL:"\u255B",boxul:"\u2518",boxUR:"\u255A",boxUr:"\u2559",boxuR:"\u2558",boxur:"\u2514",boxV:"\u2551",boxv:"\u2502",boxVH:"\u256C",boxVh:"\u256B",boxvH:"\u256A",boxvh:"\u253C",boxVL:"\u2563",boxVl:"\u2562",boxvL:"\u2561",boxvl:"\u2524",boxVR:"\u2560",boxVr:"\u255F",boxvR:"\u255E",boxvr:"\u251C",bprime:"\u2035",Breve:"\u02D8",breve:"\u02D8",brvbar:"\xA6",Bscr:"\u212C",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",Bumpeq:"\u224E",bumpeq:"\u224F",Cacute:"\u0106",cacute:"\u0107",Cap:"\u22D2",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",CapitalDifferentialD:"\u2145",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",Cayleys:"\u212D",ccaps:"\u2A4D",Ccaron:"\u010C",ccaron:"\u010D",Ccedil:"\xC7",ccedil:"\xE7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2A4C",ccupssm:"\u2A50",Cdot:"\u010A",cdot:"\u010B",cedil:"\xB8",Cedilla:"\xB8",cemptyv:"\u29B2",cent:"\xA2",CenterDot:"\xB7",centerdot:"\xB7",Cfr:"\u212D",cfr:"\u{1D520}",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03A7",chi:"\u03C7",cir:"\u25CB",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",CircleDot:"\u2299",circledR:"\xAE",circledS:"\u24C8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cirE:"\u29C3",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",Colon:"\u2237",colon:":",Colone:"\u2A74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",Congruent:"\u2261",Conint:"\u222F",conint:"\u222E",ContourIntegral:"\u222E",Copf:"\u2102",copf:"\u{1D554}",coprod:"\u2210",Coproduct:"\u2210",COPY:"\xA9",copy:"\xA9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21B5",Cross:"\u2A2F",cross:"\u2717",Cscr:"\u{1D49E}",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",Cup:"\u22D3",cup:"\u222A",cupbrcap:"\u2A48",CupCap:"\u224D",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",Dagger:"\u2021",dagger:"\u2020",daleth:"\u2138",Darr:"\u21A1",dArr:"\u21D3",darr:"\u2193",dash:"\u2010",Dashv:"\u2AE4",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",Dcaron:"\u010E",dcaron:"\u010F",Dcy:"\u0414",dcy:"\u0434",DD:"\u2145",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",DDotrahd:"\u2911",ddotseq:"\u2A77",deg:"\xB0",Del:"\u2207",Delta:"\u0394",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",Dfr:"\u{1D507}",dfr:"\u{1D521}",dHar:"\u2965",dharl:"\u21C3",dharr:"\u21C2",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",diam:"\u22C4",Diamond:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",DifferentialD:"\u2146",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",Dopf:"\u{1D53B}",dopf:"\u{1D555}",Dot:"\xA8",dot:"\u02D9",DotDot:"\u20DC",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",Downarrow:"\u21D3",downarrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",Dscr:"\u{1D49F}",dscr:"\u{1D4B9}",DScy:"\u0405",dscy:"\u0455",dsol:"\u29F6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",DZcy:"\u040F",dzcy:"\u045F",dzigrarr:"\u27FF",Eacute:"\xC9",eacute:"\xE9",easter:"\u2A6E",Ecaron:"\u011A",ecaron:"\u011B",ecir:"\u2256",Ecirc:"\xCA",ecirc:"\xEA",ecolon:"\u2255",Ecy:"\u042D",ecy:"\u044D",eDDot:"\u2A77",Edot:"\u0116",eDot:"\u2251",edot:"\u0117",ee:"\u2147",efDot:"\u2252",Efr:"\u{1D508}",efr:"\u{1D522}",eg:"\u2A9A",Egrave:"\xC8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",Element:"\u2208",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25FB",emptyv:"\u2205",EmptyVerySmallSquare:"\u25AB",emsp:"\u2003",emsp13:"\u2004",emsp14:"\u2005",ENG:"\u014A",eng:"\u014B",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\u{1D53C}",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",Equal:"\u2A75",equals:"=",EqualTilde:"\u2242",equest:"\u225F",Equilibrium:"\u21CC",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erarr:"\u2971",erDot:"\u2253",Escr:"\u2130",escr:"\u212F",esdot:"\u2250",Esim:"\u2A73",esim:"\u2242",Eta:"\u0397",eta:"\u03B7",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",ExponentialE:"\u2147",exponentiale:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",Ffr:"\u{1D509}",ffr:"\u{1D523}",filig:"\uFB01",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",Fopf:"\u{1D53D}",fopf:"\u{1D557}",ForAll:"\u2200",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",Fouriertrf:"\u2131",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",Fscr:"\u2131",fscr:"\u{1D4BB}",gacute:"\u01F5",Gamma:"\u0393",gamma:"\u03B3",Gammad:"\u03DC",gammad:"\u03DD",gap:"\u2A86",Gbreve:"\u011E",gbreve:"\u011F",Gcedil:"\u0122",Gcirc:"\u011C",gcirc:"\u011D",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",gE:"\u2267",ge:"\u2265",gEl:"\u2A8C",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",Gfr:"\u{1D50A}",gfr:"\u{1D524}",Gg:"\u22D9",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gl:"\u2277",gla:"\u2AA5",glE:"\u2A92",glj:"\u2AA4",gnap:"\u2A8A",gnapprox:"\u2A8A",gnE:"\u2269",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",Gopf:"\u{1D53E}",gopf:"\u{1D558}",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",Gt:"\u226B",GT:">",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",Hacek:"\u02C7",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",HARDcy:"\u042A",hardcy:"\u044A",hArr:"\u21D4",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",Hat:"^",hbar:"\u210F",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",Hfr:"\u210C",hfr:"\u{1D525}",HilbertSpace:"\u210B",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",Hopf:"\u210D",hopf:"\u{1D559}",horbar:"\u2015",HorizontalLine:"\u2500",Hscr:"\u210B",hscr:"\u{1D4BD}",hslash:"\u210F",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224E",HumpEqual:"\u224F",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xCD",iacute:"\xED",ic:"\u2063",Icirc:"\xCE",icirc:"\xEE",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",Ifr:"\u2111",ifr:"\u{1D526}",Igrave:"\xCC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Im:"\u2111",Imacr:"\u012A",imacr:"\u012B",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",Implies:"\u21D2",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",Int:"\u222C",int:"\u222B",intcal:"\u22BA",integers:"\u2124",Integral:"\u222B",intercal:"\u22BA",Intersection:"\u22C2",intlarhk:"\u2A17",intprod:"\u2A3C",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012E",iogon:"\u012F",Iopf:"\u{1D540}",iopf:"\u{1D55A}",Iota:"\u0399",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",Iscr:"\u2110",iscr:"\u{1D4BE}",isin:"\u2208",isindot:"\u22F5",isinE:"\u22F9",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xCF",iuml:"\xEF",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\u{1D50D}",jfr:"\u{1D527}",jmath:"\u0237",Jopf:"\u{1D541}",jopf:"\u{1D55B}",Jscr:"\u{1D4A5}",jscr:"\u{1D4BF}",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041A",kcy:"\u043A",Kfr:"\u{1D50E}",kfr:"\u{1D528}",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040C",kjcy:"\u045C",Kopf:"\u{1D542}",kopf:"\u{1D55C}",Kscr:"\u{1D4A6}",kscr:"\u{1D4C0}",lAarr:"\u21DA",Lacute:"\u0139",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",Lambda:"\u039B",lambda:"\u03BB",Lang:"\u27EA",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",Laplacetrf:"\u2112",laquo:"\xAB",Larr:"\u219E",lArr:"\u21D0",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",lAtail:"\u291B",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lBarr:"\u290E",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",Lcaron:"\u013D",lcaron:"\u013E",Lcedil:"\u013B",lcedil:"\u013C",lceil:"\u2308",lcub:"{",Lcy:"\u041B",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",lE:"\u2266",le:"\u2264",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",Leftarrow:"\u21D0",leftarrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",leftarrowtail:"\u21A2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",LeftRightArrow:"\u2194",Leftrightarrow:"\u21D4",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",leftthreetimes:"\u22CB",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",lEg:"\u2A8B",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2AA1",lesssim:"\u2272",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",lfisht:"\u297C",lfloor:"\u230A",Lfr:"\u{1D50F}",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lHar:"\u2962",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",Ll:"\u22D8",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",Lleftarrow:"\u21DA",llhard:"\u296B",lltri:"\u25FA",Lmidot:"\u013F",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnap:"\u2A89",lnapprox:"\u2A89",lnE:"\u2268",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",LongLeftArrow:"\u27F5",Longleftarrow:"\u27F8",longleftarrow:"\u27F5",LongLeftRightArrow:"\u27F7",Longleftrightarrow:"\u27FA",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",LongRightArrow:"\u27F6",Longrightarrow:"\u27F9",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",Lopf:"\u{1D543}",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",Lscr:"\u2112",lscr:"\u{1D4C1}",Lsh:"\u21B0",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",Lstrok:"\u0141",lstrok:"\u0142",Lt:"\u226A",LT:"<",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",ltrPar:"\u2996",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",Mcy:"\u041C",mcy:"\u043C",mdash:"\u2014",mDDot:"\u223A",measuredangle:"\u2221",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",MinusPlus:"\u2213",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",Mopf:"\u{1D544}",mopf:"\u{1D55E}",mp:"\u2213",Mscr:"\u2133",mscr:"\u{1D4C2}",mstpos:"\u223E",Mu:"\u039C",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",Ncy:"\u041D",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",nearhk:"\u2924",neArr:"\u21D7",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` -`,nexist:"\u2204",nexists:"\u2204",Nfr:"\u{1D511}",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",nGg:"\u22D9\u0338",ngsim:"\u2275",nGt:"\u226B\u20D2",ngt:"\u226F",ngtr:"\u226F",nGtv:"\u226B\u0338",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",NJcy:"\u040A",njcy:"\u045A",nlArr:"\u21CD",nlarr:"\u219A",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nLeftarrow:"\u21CD",nleftarrow:"\u219A",nLeftrightarrow:"\u21CE",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nLl:"\u22D8\u0338",nlsim:"\u2274",nLt:"\u226A\u20D2",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nLtv:"\u226A\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",nopf:"\u{1D55F}",Not:"\u2AEC",not:"\xAC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",notin:"\u2209",notindot:"\u22F5\u0338",notinE:"\u22F9\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nRightarrow:"\u21CF",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",Nscr:"\u{1D4A9}",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",Ntilde:"\xD1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",Nu:"\u039D",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224D\u20D2",nVDash:"\u22AF",nVdash:"\u22AE",nvDash:"\u22AD",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvHarr:"\u2904",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwarhk:"\u2923",nwArr:"\u21D6",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xD3",oacute:"\xF3",oast:"\u229B",ocir:"\u229A",Ocirc:"\xD4",ocirc:"\xF4",Ocy:"\u041E",ocy:"\u043E",odash:"\u229D",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29BF",Ofr:"\u{1D512}",ofr:"\u{1D52C}",ogon:"\u02DB",Ograve:"\xD2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",Omacr:"\u014C",omacr:"\u014D",Omega:"\u03A9",omega:"\u03C9",Omicron:"\u039F",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",Oopf:"\u{1D546}",oopf:"\u{1D560}",opar:"\u29B7",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",operp:"\u29B9",oplus:"\u2295",Or:"\u2A54",or:"\u2228",orarr:"\u21BB",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oS:"\u24C8",Oscr:"\u{1D4AA}",oscr:"\u2134",Oslash:"\xD8",oslash:"\xF8",osol:"\u2298",Otilde:"\xD5",otilde:"\xF5",Otimes:"\u2A37",otimes:"\u2297",otimesas:"\u2A36",Ouml:"\xD6",ouml:"\xF6",ovbar:"\u233D",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",par:"\u2225",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",PartialD:"\u2202",Pcy:"\u041F",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",Pfr:"\u{1D513}",pfr:"\u{1D52D}",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",Pi:"\u03A0",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",PlusMinus:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",Poincareplane:"\u210C",pointint:"\u2A15",Popf:"\u2119",popf:"\u{1D561}",pound:"\xA3",Pr:"\u2ABB",pr:"\u227A",prap:"\u2AB7",prcue:"\u227C",prE:"\u2AB3",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",Prime:"\u2033",prime:"\u2032",primes:"\u2119",prnap:"\u2AB9",prnE:"\u2AB5",prnsim:"\u22E8",prod:"\u220F",Product:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",Proportion:"\u2237",Proportional:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",Pscr:"\u{1D4AB}",pscr:"\u{1D4C5}",Psi:"\u03A8",psi:"\u03C8",puncsp:"\u2008",Qfr:"\u{1D514}",qfr:"\u{1D52E}",qint:"\u2A0C",Qopf:"\u211A",qopf:"\u{1D562}",qprime:"\u2057",Qscr:"\u{1D4AC}",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",QUOT:'"',quot:'"',rAarr:"\u21DB",race:"\u223D\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",Rang:"\u27EB",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",Rarr:"\u21A0",rArr:"\u21D2",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21A3",rarrw:"\u219D",rAtail:"\u291C",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",RBarr:"\u2910",rBarr:"\u290F",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",Re:"\u211C",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",REG:"\xAE",reg:"\xAE",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",rfisht:"\u297D",rfloor:"\u230B",Rfr:"\u211C",rfr:"\u{1D52F}",rHar:"\u2964",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",Rightarrow:"\u21D2",rightarrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",rightarrowtail:"\u21A3",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",rightthreetimes:"\u22CC",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",Ropf:"\u211D",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",Rrightarrow:"\u21DB",rsaquo:"\u203A",Rscr:"\u211B",rscr:"\u{1D4C7}",Rsh:"\u21B1",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",RuleDelayed:"\u29F4",ruluhar:"\u2968",rx:"\u211E",Sacute:"\u015A",sacute:"\u015B",sbquo:"\u201A",Sc:"\u2ABC",sc:"\u227B",scap:"\u2AB8",Scaron:"\u0160",scaron:"\u0161",sccue:"\u227D",scE:"\u2AB4",sce:"\u2AB0",Scedil:"\u015E",scedil:"\u015F",Scirc:"\u015C",scirc:"\u015D",scnap:"\u2ABA",scnE:"\u2AB6",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",Scy:"\u0421",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",searhk:"\u2925",seArr:"\u21D8",searr:"\u2198",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\u{1D516}",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xAD",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",SOFTcy:"\u042C",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",Sopf:"\u{1D54A}",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",Sqrt:"\u221A",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",Square:"\u25A1",square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",Sscr:"\u{1D4AE}",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",Star:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",Sub:"\u22D0",sub:"\u2282",subdot:"\u2ABD",subE:"\u2AC5",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",Subset:"\u22D0",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",SubsetEqual:"\u2286",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",SuchThat:"\u220B",Sum:"\u2211",sum:"\u2211",sung:"\u266A",Sup:"\u22D1",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supdot:"\u2ABE",supdsub:"\u2AD8",supE:"\u2AC6",supe:"\u2287",supedot:"\u2AC4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",Supset:"\u22D1",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swarhk:"\u2926",swArr:"\u21D9",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",Tab:" ",target:"\u2316",Tau:"\u03A4",tau:"\u03C4",tbrk:"\u23B4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",Tfr:"\u{1D517}",tfr:"\u{1D531}",there4:"\u2234",Therefore:"\u2234",therefore:"\u2234",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",ThickSpace:"\u205F\u200A",thinsp:"\u2009",ThinSpace:"\u2009",thkap:"\u2248",thksim:"\u223C",THORN:"\xDE",thorn:"\xFE",Tilde:"\u223C",tilde:"\u02DC",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",Topf:"\u{1D54B}",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",TRADE:"\u2122",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",TripleDot:"\u20DB",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",Tscr:"\u{1D4AF}",tscr:"\u{1D4C9}",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040B",tshcy:"\u045B",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Uacute:"\xDA",uacute:"\xFA",Uarr:"\u219F",uArr:"\u21D1",uarr:"\u2191",Uarrocir:"\u2949",Ubrcy:"\u040E",ubrcy:"\u045E",Ubreve:"\u016C",ubreve:"\u016D",Ucirc:"\xDB",ucirc:"\xFB",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21C5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",Ufr:"\u{1D518}",ufr:"\u{1D532}",Ugrave:"\xD9",ugrave:"\xF9",uHar:"\u2963",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",Umacr:"\u016A",umacr:"\u016B",uml:"\xA8",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",uogon:"\u0173",Uopf:"\u{1D54C}",uopf:"\u{1D566}",UpArrow:"\u2191",Uparrow:"\u21D1",uparrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",Updownarrow:"\u21D5",updownarrow:"\u2195",UpEquilibrium:"\u296E",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",upsi:"\u03C5",upsih:"\u03D2",Upsilon:"\u03A5",upsilon:"\u03C5",UpTee:"\u22A5",UpTeeArrow:"\u21A5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",Uring:"\u016E",uring:"\u016F",urtri:"\u25F9",Uscr:"\u{1D4B0}",uscr:"\u{1D4CA}",utdot:"\u22F0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",Uuml:"\xDC",uuml:"\xFC",uwangle:"\u29A7",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",vArr:"\u21D5",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",Vbar:"\u2AEB",vBar:"\u2AE8",vBarv:"\u2AE9",Vcy:"\u0412",vcy:"\u0432",VDash:"\u22AB",Vdash:"\u22A9",vDash:"\u22A8",vdash:"\u22A2",Vdashl:"\u2AE6",Vee:"\u22C1",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",Verbar:"\u2016",verbar:"|",Vert:"\u2016",vert:"|",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",Vopf:"\u{1D54D}",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",Vscr:"\u{1D4B1}",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",Vvdash:"\u22AA",vzigzag:"\u299A",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2A5F",Wedge:"\u22C0",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\u{1D51A}",wfr:"\u{1D534}",Wopf:"\u{1D54E}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\u{1D4B2}",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",Xfr:"\u{1D51B}",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",Xi:"\u039E",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",Xopf:"\u{1D54F}",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",Xscr:"\u{1D4B3}",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",Yacute:"\xDD",yacute:"\xFD",YAcy:"\u042F",yacy:"\u044F",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042B",ycy:"\u044B",yen:"\xA5",Yfr:"\u{1D51C}",yfr:"\u{1D536}",YIcy:"\u0407",yicy:"\u0457",Yopf:"\u{1D550}",yopf:"\u{1D56A}",Yscr:"\u{1D4B4}",yscr:"\u{1D4CE}",YUcy:"\u042E",yucy:"\u044E",Yuml:"\u0178",yuml:"\xFF",Zacute:"\u0179",zacute:"\u017A",Zcaron:"\u017D",zcaron:"\u017E",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017B",zdot:"\u017C",zeetrf:"\u2128",ZeroWidthSpace:"\u200B",Zeta:"\u0396",zeta:"\u03B6",Zfr:"\u2128",zfr:"\u{1D537}",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21DD",Zopf:"\u2124",zopf:"\u{1D56B}",Zscr:"\u{1D4B5}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"});pM.entityMap=pM.HTML_ENTITIES});var KxA=GA(YcA=>{var hM=sM().NAMESPACE,GcA=/[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,LxA=new RegExp("[\\-\\.0-9"+GcA.source.slice(1,-1)+"\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"),jxA=new RegExp("^"+GcA.source+LxA.source+"*(?::"+GcA.source+LxA.source+"*)?$"),EM=0,_w=1,v5=2,fM=3,y5=4,C5=5,BM=6,PG=7;function I5(A,r){this.message=A,this.locator=r,Error.captureStackTrace&&Error.captureStackTrace(this,I5)}I5.prototype=new Error;I5.prototype.name=I5.name;function qxA(){}qxA.prototype={parse:function(A,r,t){var i=this.domBuilder;i.startDocument(),VxA(r,r={}),PEr(A,r,t,i,this.errorHandler),i.endDocument()}};function PEr(A,r,t,i,o){function s(X){if(X>65535){X-=65536;var Z=55296+(X>>10),K=56320+(X&1023);return String.fromCharCode(Z,K)}else return String.fromCharCode(X)}function g(X){var Z=X.slice(1,-1);return Object.hasOwnProperty.call(t,Z)?t[Z]:Z.charAt(0)==="#"?s(parseInt(Z.substr(1).replace("x","0x"))):(o.error("entity not found:"+X),X)}function E(X){if(X>P){var Z=A.substring(P,X).replace(/&#?\w+;/g,g);x&&p(P),i.characters(Z,0,X-P),P=X}}function p(X,Z){for(;X>=m&&(Z=_.exec(A));)B=Z.index,m=B+Z[0].length,x.lineNumber++;x.columnNumber=X-B+1}for(var B=0,m=0,_=/.*(?:\r\n?|\n)|.*$/g,x=i.locator,O=[{currentNSMap:r}],k={},P=0;;){try{var H=A.indexOf("<",P);if(H<0){if(!A.substr(P).match(/^\s*$/)){var T=i.doc,v=T.createTextNode(A.substr(P));T.appendChild(v),i.currentElement=v}return}switch(H>P&&E(H),A.charAt(H+1)){case"/":var oA=A.indexOf(">",H+3),F=A.substring(H+2,oA).replace(/[ \t\n\r]+$/g,""),y=O.pop();oA<0?(F=A.substring(H+2).replace(/[\s<].*/,""),o.error("end tag name: "+F+" is not complete:"+y.tagName),oA=H+1+F.length):F.match(/\sP?P=oA:E(Math.max(H,P)+1)}}function WxA(A,r){return r.lineNumber=A.lineNumber,r.columnNumber=A.columnNumber,r}function GEr(A,r,t,i,o,s){function g(O,k,P){t.attributeNames.hasOwnProperty(O)&&s.fatalError("Attribute "+O+" redefined"),t.addValue(O,k.replace(/[\t\n\r]/g," ").replace(/&#?\w+;/g,o),P)}for(var E,p,B=++r,m=EM;;){var _=A.charAt(B);switch(_){case"=":if(m===_w)E=A.slice(r,B),m=fM;else if(m===v5)m=fM;else throw new Error("attribute equal must after attrName");break;case"'":case'"':if(m===fM||m===_w)if(m===_w&&(s.warning('attribute value must after "="'),E=A.slice(r,B)),r=B+1,B=A.indexOf(_,r),B>0)p=A.slice(r,B),g(E,p,r-1),m=C5;else throw new Error("attribute value no end '"+_+"' match");else if(m==y5)p=A.slice(r,B),g(E,p,r),s.warning('attribute "'+E+'" missed start quot('+_+")!!"),r=B+1,m=C5;else throw new Error('attribute value must after "="');break;case"/":switch(m){case EM:t.setTagName(A.slice(r,B));case C5:case BM:case PG:m=PG,t.closed=!0;case y5:case _w:break;case v5:t.closed=!0;break;default:throw new Error("attribute invalid close char('/')")}break;case"":return s.error("unexpected end of input"),m==EM&&t.setTagName(A.slice(r,B)),B;case">":switch(m){case EM:t.setTagName(A.slice(r,B));case C5:case BM:case PG:break;case y5:case _w:p=A.slice(r,B),p.slice(-1)==="/"&&(t.closed=!0,p=p.slice(0,-1));case v5:m===v5&&(p=E),m==y5?(s.warning('attribute "'+p+'" missed quot(")!'),g(E,p,r)):((!hM.isHTML(i[""])||!p.match(/^(?:disabled|checked|selected)$/i))&&s.warning('attribute "'+p+'" missed value!! "'+p+'" instead!!'),g(p,p,r));break;case fM:throw new Error("attribute value missed!!")}return B;case"\x80":_=" ";default:if(_<=" ")switch(m){case EM:t.setTagName(A.slice(r,B)),m=BM;break;case _w:E=A.slice(r,B),m=v5;break;case y5:var p=A.slice(r,B);s.warning('attribute "'+p+'" missed quot(")!!'),g(E,p,r);case C5:m=BM;break}else switch(m){case v5:var x=t.tagName;(!hM.isHTML(i[""])||!E.match(/^(?:disabled|checked|selected)$/i))&&s.warning('attribute "'+E+'" missed value!! "'+E+'" instead2!!'),g(E,E,r),r=B,m=_w;break;case C5:s.warning('attribute space is required"'+E+'"!!');case BM:m=_w,r=B;break;case fM:m=y5,r=B;break;case PG:throw new Error("elements closed character '/' and '>' must be connected to")}}B++}}function JxA(A,r,t){for(var i=A.tagName,o=null,_=A.length;_--;){var s=A[_],g=s.qName,E=s.value,x=g.indexOf(":");if(x>0)var p=s.prefix=g.slice(0,x),B=g.slice(x+1),m=p==="xmlns"&&B;else B=g,p=null,m=g==="xmlns"&&"";s.localName=B,m!==!1&&(o==null&&(o={},VxA(t,t={})),t[m]=o[m]=E,s.uri=hM.XMLNS,r.startPrefixMapping(m,E))}for(var _=A.length;_--;){s=A[_];var p=s.prefix;p&&(p==="xml"&&(s.uri=hM.XML),p!=="xmlns"&&(s.uri=t[p||""]))}var x=i.indexOf(":");x>0?(p=A.prefix=i.slice(0,x),B=A.localName=i.slice(x+1)):(p=null,B=A.localName=i);var O=A.uri=t[p||""];if(r.startElement(O,B,i,A),A.closed){if(r.endElement(O,B,i),o)for(p in o)Object.prototype.hasOwnProperty.call(o,p)&&r.endPrefixMapping(p)}else return A.currentNSMap=t,A.localNSMap=o,!0}function YEr(A,r,t,i,o){if(/^(?:script|textarea)$/i.test(t)){var s=A.indexOf("",r),g=A.substring(r+1,s);if(/[&<]/.test(g))return/^script$/i.test(t)?(o.characters(g,0,g.length),s):(g=g.replace(/&#?\w+;/g,i),o.characters(g,0,g.length),s)}return r+1}function UEr(A,r,t,i){var o=i[t];return o==null&&(o=A.lastIndexOf(""),o",r+4);return s>r?(t.comment(A,r+4,s-r-4),s+3):(i.error("Unclosed comment"),-1)}else return-1;default:if(A.substr(r+3,6)=="CDATA["){var s=A.indexOf("]]>",r+9);return t.startCDATA(),t.characters(A,r+9,s-r-9),t.endCDATA(),s+3}var g=WEr(A,r),E=g.length;if(E>1&&/!doctype/i.test(g[0][0])){var p=g[1][0],B=!1,m=!1;E>3&&(/^public$/i.test(g[2][0])?(B=g[3][0],m=E>4&&g[4][0]):/^system$/i.test(g[2][0])&&(m=g[3][0]));var _=g[E-1];return t.startDTD(p,B,m),t.endDTD(),_.index+_[0].length}}return-1}function jEr(A,r,t){var i=A.indexOf("?>",r);if(i){var o=A.substring(r,i).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);if(o){var s=o[0].length;return t.processingInstruction(o[1],o[2]),i+2}else return-1}return-1}function zxA(){this.attributeNames={}}zxA.prototype={setTagName:function(A){if(!jxA.test(A))throw new Error("invalid tagName:"+A);this.tagName=A},addValue:function(A,r,t){if(!jxA.test(A))throw new Error("invalid attribute:"+A);this.attributeNames[A]=this.length,this[this.length++]={qName:A,value:r,offset:t}},length:0,getLocalName:function(A){return this[A].localName},getLocator:function(A){return this[A].locator},getQName:function(A){return this[A].qName},getURI:function(A){return this[A].uri},getValue:function(A){return this[A].value}};function WEr(A,r){var t,i=[],o=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;for(o.lastIndex=r,o.exec(A);t=o.exec(A);)if(i.push(t),t[1])return i}YcA.XMLReader=qxA;YcA.ParseError=I5});var t9A=GA(YG=>{var JEr=sM(),qEr=PcA(),XxA=UxA(),A9A=KxA(),VEr=qEr.DOMImplementation,ZxA=JEr.NAMESPACE,zEr=A9A.ParseError,KEr=A9A.XMLReader;function e9A(A){return A.replace(/\r[\n\u0085]/g,` -`).replace(/[\r\u0085\u2028]/g,` -`)}function r9A(A){this.options=A||{locator:{}}}r9A.prototype.parseFromString=function(A,r){var t=this.options,i=new KEr,o=t.domBuilder||new QM,s=t.errorHandler,g=t.locator,E=t.xmlns||{},p=/\/x?html?$/.test(r),B=p?XxA.HTML_ENTITIES:XxA.XML_ENTITIES;g&&o.setDocumentLocator(g),i.errorHandler=XEr(s,o,g),i.domBuilder=t.domBuilder||o,p&&(E[""]=ZxA.HTML),E.xml=E.xml||ZxA.XML;var m=t.normalizeLineEndings||e9A;return A&&typeof A=="string"?i.parse(m(A),E,B):i.errorHandler.error("invalid doc source"),o.doc};function XEr(A,r,t){if(!A){if(r instanceof QM)return r;A=r}var i={},o=A instanceof Function;t=t||{};function s(g){var E=A[g];!E&&o&&(E=A.length==2?function(p){A(g,p)}:A),i[g]=E&&function(p){E("[xmldom "+g+"] "+p+UcA(t))}||function(){}}return s("warning"),s("error"),s("fatalError"),i}function QM(){this.cdata=!1}function b5(A,r){r.lineNumber=A.lineNumber,r.columnNumber=A.columnNumber}QM.prototype={startDocument:function(){this.doc=new VEr().createDocument(null,null,null),this.locator&&(this.doc.documentURI=this.locator.systemId)},startElement:function(A,r,t,i){var o=this.doc,s=o.createElementNS(A,t||r),g=i.length;GG(this,s),this.currentElement=s,this.locator&&b5(this.locator,s);for(var E=0;E=r+t||r?new java.lang.String(A,r,t)+"":A}"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g,function(A){QM.prototype[A]=function(){return null}});function GG(A,r){A.currentElement?A.currentElement.appendChild(r):A.doc.appendChild(r)}YG.__DOMHandler=QM;YG.normalizeLineEndings=e9A;YG.DOMParser=r9A});var n9A=GA(UG=>{var i9A=PcA();UG.DOMImplementation=i9A.DOMImplementation;UG.XMLSerializer=i9A.XMLSerializer;UG.DOMParser=t9A().DOMParser});var o9A=GA((a9A,LG)=>{(function(A,r){"use strict";typeof define=="function"&&define.amd?define([],r):typeof LG=="object"&&LG.exports?LG.exports=r(n9A().DOMParser):A.X2JS=r()})(a9A,function(A){"use strict";return function(t){var i="3.4.4";t=t||{};function o(){t.arrayAccessForm=t.arrayAccessForm||"none",t.emptyNodeForm=t.emptyNodeForm||"text",t.jsAttributeFilter=t.jsAttributeFilter,t.jsAttributeConverter=t.jsAttributeConverter,t.attributeConverters=t.attributeConverters||[],t.datetimeAccessFormPaths=t.datetimeAccessFormPaths||[],t.arrayAccessFormPaths=t.arrayAccessFormPaths||[],t.xmldomOptions=t.xmldomOptions||{},t.enableToStringFunc===void 0&&(t.enableToStringFunc=!0),t.skipEmptyTextNodesForObj===void 0&&(t.skipEmptyTextNodesForObj=!0),t.stripWhitespaces===void 0&&(t.stripWhitespaces=!0),t.useDoubleQuotes===void 0&&(t.useDoubleQuotes=!0),t.ignoreRoot===void 0&&(t.ignoreRoot=!1),t.escapeMode===void 0&&(t.escapeMode=!0),t.attributePrefix===void 0&&(t.attributePrefix="_"),t.selfClosingElements===void 0&&(t.selfClosingElements=!0),t.keepCData===void 0&&(t.keepCData=!1),t.keepText===void 0&&(t.keepText=!1),t.jsDateUTC===void 0&&(t.jsDateUTC=!1)}function s(){function eA(Y){var q=String(Y);return q.length===1&&(q="0"+q),q}typeof String.prototype.trim!="function"&&(String.prototype.trim=function(){return this.replace(/^\s+|^\n+|(\s|\n)+$/g,"")}),typeof Date.prototype.toISOString!="function"&&(Date.prototype.toISOString=function(){var q=1e3;return this.getUTCFullYear()+"-"+eA(this.getUTCMonth()+1)+"-"+eA(this.getUTCDate())+"T"+eA(this.getUTCHours())+":"+eA(this.getUTCMinutes())+":"+eA(this.getUTCSeconds())+"."+String((this.getUTCMilliseconds()/q).toFixed(3)).slice(2,5)+"Z"})}o(),s();var g={ELEMENT_NODE:1,TEXT_NODE:3,CDATA_SECTION_NODE:4,COMMENT_NODE:8,DOCUMENT_NODE:9};function E(eA){var Y=eA.localName;return Y==null&&(Y=eA.baseName),(Y==null||Y==="")&&(Y=eA.nodeName),Y}function p(eA){return eA.prefix}function B(eA){return typeof eA=="string"?eA.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"):eA}function m(eA){return eA.replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/&/g,"&")}function _(eA,Y,q){switch(t.arrayAccessForm){case"property":eA[Y]instanceof Array?eA[Y+"_asArray"]=eA[Y]:eA[Y+"_asArray"]=[eA[Y]];break}if(!(eA[Y]instanceof Array)&&t.arrayAccessFormPaths.length>0){for(var X=!1,Z=0;Z1&&X.setMilliseconds(Z[1]),q[6]&&q[7]){var K=q[6]*Y+Number(q[7]),J=/\d\d-\d\d:\d\d$/.test(eA)?"-":"+";K=0+(J==="-"?-1*K:K),X.setMinutes(X.getMinutes()-K-X.getTimezoneOffset())}else eA.indexOf("Z",eA.length-1)!==-1&&(X=new Date(Date.UTC(X.getFullYear(),X.getMonth(),X.getDate(),X.getHours(),X.getMinutes(),X.getSeconds(),X.getMilliseconds())));return X}function O(eA,Y,q){if(t.datetimeAccessFormPaths.length>0)for(var X=q.split(".#")[0],Z=0;Z1&&q.__text!==void 0&&t.skipEmptyTextNodesForObj&&(t.stripWhitespaces&&q.__text===""||q.__text.trim()==="")&&delete q.__text,delete q.__cnt,!t.keepCData&&!q.hasOwnProperty("__text")&&q.hasOwnProperty("__cdata")&&Object.keys(q).length===1?q.__cdata?q.__cdata:"":(t.enableToStringFunc&&(q.__text||q.__cdata)&&(q.toString=function(){return(this.__text?this.__text:"")+(this.__cdata?this.__cdata:"")}),q)}function H(eA,Y){return eA.nodeType===g.DOCUMENT_NODE?k(eA):eA.nodeType===g.ELEMENT_NODE?P(eA,Y):eA.nodeType===g.TEXT_NODE||eA.nodeType===g.CDATA_SECTION_NODE?eA.nodeValue:null}function T(eA,Y,q,X){var Z="<"+(eA&&eA.__prefix?eA.__prefix+":":"")+Y;if(q)for(var K=0;K"}function F(eA,Y){return eA.indexOf(Y,eA.length-Y.length)!==-1}function y(eA,Y){return!!(t.arrayAccessForm==="property"&&F(Y.toString(),"_asArray")||Y.toString().indexOf(t.attributePrefix)===0||Y.toString().indexOf("__")===0||eA[Y]instanceof Function)}function S(eA){var Y=0;if(eA instanceof Object)for(var q in eA)y(eA,q)||Y++;return Y}function U(eA){var Y=[];if(eA instanceof Object)for(var q in eA)q.toString().indexOf("__")===-1&&q.toString().indexOf(t.attributePrefix)===0&&Y.push(q);return Y}function V(eA){var Y="";return eA.__cdata&&(Y+=""),(eA.__text||typeof eA.__text=="number"||typeof eA.__text=="boolean")&&(t.escapeMode?Y+=B(eA.__text):Y+=eA.__text),Y}function wA(eA){var Y="";return eA instanceof Object?Y+=V(eA):eA!==null&&(t.escapeMode?Y+=B(eA):Y+=eA),Y}function IA(eA,Y,q){var X="";if(eA.length===0)X+=T(eA,Y,q,!0);else for(var Z=0;Z0||typeof eA.__text=="number"||typeof eA.__text=="boolean"||eA.__text||eA.__cdata?(X+=T(eA,Y,q,!1),X+=oA(eA),X+=v(eA,Y)):t.selfClosingElements?X+=T(eA,Y,q,!0):(X+=T(eA,Y,q,!1),X+=v(eA,Y))}else X+=T(eA,Y,q,!1),X+=wA(eA),X+=v(eA,Y);return X}function oA(eA){var Y="",q=S(eA);if(q>0){for(var X in eA)if(!y(eA,X)){var Z=eA[X],K=U(Z);Y+=pA(Z,X,K)}}return Y+=wA(eA),Y}function cA(eA){if(eA===void 0||typeof eA!="string")return null;var Y=null,q=null;if(A)Y=new A(t.xmldomOptions),q=Y.parseFromString(eA,"text/xml");else if(window&&window.DOMParser){Y=new window.DOMParser;var X=null,Z=window.ActiveXObject||"ActiveXObject"in window;if(!Z&&document.all&&!document.addEventListener)try{X=Y.parseFromString("INVALID","text/xml").childNodes[0].namespaceURI}catch{X=null}try{q=Y.parseFromString(eA,"text/xml"),X!==null&&q.getElementsByTagNameNS(X,"parsererror").length>0&&(q=null)}catch{q=null}}else eA.indexOf("")+2)),q=new ActiveXObject("Microsoft.XMLDOM"),q.async="false",q.loadXML(eA);return q}this.asArray=function(Y){return Y==null?[]:Y instanceof Array?Y:[Y]},this.toXmlDateTime=function(Y){return Y instanceof Date?Y.toISOString():typeof Y=="number"?new Date(Y).toISOString():null},this.asDateTime=function(Y){return typeof Y=="string"?x(Y):Y},this.xml2dom=function(Y){return cA(Y)},this.dom2js=function(Y){return H(Y,null)},this.js2dom=function(Y){var q=this.js2xml(Y);return cA(q)},this.xml2js=function(Y){var q=cA(Y);return q!=null?this.dom2js(q):null},this.js2xml=function(Y){return oA(Y)},this.getVersion=function(){return i}}})});var U9A=GA((oti,Y9A)=>{"use strict";var{entries:T9A,setPrototypeOf:M9A,isFrozen:vfr,getPrototypeOf:yfr,getOwnPropertyDescriptor:Cfr}=Object,{freeze:lB,seal:V0,create:Ifr}=Object,{apply:alA,construct:olA}=typeof Reflect<"u"&&Reflect;alA||(alA=function(r,t,i){return r.apply(t,i)});lB||(lB=function(r){return r});V0||(V0=function(r){return r});olA||(olA=function(r,t){return new r(...t)});var bfr=SQ(Array.prototype.forEach),k9A=SQ(Array.prototype.pop),CM=SQ(Array.prototype.push),mY=SQ(String.prototype.toLowerCase),elA=SQ(String.prototype.toString),Ofr=SQ(String.prototype.match),q0=SQ(String.prototype.replace),Mfr=SQ(String.prototype.indexOf),kfr=SQ(String.prototype.trim),Lh=SQ(RegExp.prototype.test),IM=xfr(TypeError);function SQ(A){return function(r){for(var t=arguments.length,i=new Array(t>1?t-1:0),o=1;o/gm),Tfr=V0(/\${[\w\W]*}/gm),Nfr=V0(/^data-[\-\w.\u00B7-\uFFFF]/),Pfr=V0(/^aria-[\-\w]+$/),N9A=V0(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Gfr=V0(/^(?:\w+script|data):/i),Yfr=V0(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),P9A=V0(/^html$/i),R9A=Object.freeze({__proto__:null,MUSTACHE_EXPR:Ffr,ERB_EXPR:Rfr,TMPLIT_EXPR:Tfr,DATA_ATTR:Nfr,ARIA_ATTR:Pfr,IS_ALLOWED_URI:N9A,IS_SCRIPT_OR_DATA:Gfr,ATTR_WHITESPACE:Yfr,DOCTYPE_NAME:P9A}),Ufr=()=>typeof window>"u"?null:window,Lfr=function(r,t){if(typeof r!="object"||typeof r.createPolicy!="function")return null;let i=null,o="data-tt-policy-suffix";t&&t.hasAttribute(o)&&(i=t.getAttribute(o));let s="dompurify"+(i?"#"+i:"");try{return r.createPolicy(s,{createHTML(g){return g},createScriptURL(g){return g}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}};function G9A(){let A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Ufr(),r=Or=>G9A(Or);if(r.version="3.0.4",r.removed=[],!A||!A.document||A.document.nodeType!==9)return r.isSupported=!1,r;let t=A.document,i=t.currentScript,{document:o}=A,{DocumentFragment:s,HTMLTemplateElement:g,Node:E,Element:p,NodeFilter:B,NamedNodeMap:m=A.NamedNodeMap||A.MozNamedAttrMap,HTMLFormElement:_,DOMParser:x,trustedTypes:O}=A,k=p.prototype,P=hY(k,"cloneNode"),H=hY(k,"nextSibling"),T=hY(k,"childNodes"),v=hY(k,"parentNode");if(typeof g=="function"){let Or=o.createElement("template");Or.content&&Or.content.ownerDocument&&(o=Or.content.ownerDocument)}let F,y="",{implementation:S,createNodeIterator:U,createDocumentFragment:V,getElementsByTagName:wA}=o,{importNode:IA}=t,pA={};r.isSupported=typeof T9A=="function"&&typeof v=="function"&&S&&S.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:oA,ERB_EXPR:cA,TMPLIT_EXPR:eA,DATA_ATTR:Y,ARIA_ATTR:q,IS_SCRIPT_OR_DATA:X,ATTR_WHITESPACE:Z}=R9A,{IS_ALLOWED_URI:K}=R9A,J=null,sA=nc({},[...x9A,...rlA,...tlA,...ilA,...H9A]),uA=null,BA=nc({},[...S9A,...nlA,...F9A,...QY]),CA=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),z=null,AA=null,iA=!0,_A=!0,fA=!1,M=!0,aA=!1,gA=!1,QA=!1,mA=!1,FA=!1,SA=!1,ce=!1,re=!0,KA=!1,$A="user-content-",jA=!0,ue=!1,MA={},RA=null,lA=nc({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),tA=null,N=nc({},["audio","video","img","source","image","track"]),nA=null,kA=nc({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),bA="http://www.w3.org/1998/Math/MathML",TA="http://www.w3.org/2000/svg",VA="http://www.w3.org/1999/xhtml",De=VA,_e=!1,Ae=null,Q=nc({},[bA,TA,VA],elA),Ze,Cr=["application/xhtml+xml","text/html"],be="text/html",Me,Le=null,ir=o.createElement("form"),Ye=function(tr){return tr instanceof RegExp||tr instanceof Function},mr=function(tr){if(!(Le&&Le===tr)){if((!tr||typeof tr!="object")&&(tr={}),tr=H5(tr),Ze=Cr.indexOf(tr.PARSER_MEDIA_TYPE)===-1?Ze=be:Ze=tr.PARSER_MEDIA_TYPE,Me=Ze==="application/xhtml+xml"?elA:mY,J="ALLOWED_TAGS"in tr?nc({},tr.ALLOWED_TAGS,Me):sA,uA="ALLOWED_ATTR"in tr?nc({},tr.ALLOWED_ATTR,Me):BA,Ae="ALLOWED_NAMESPACES"in tr?nc({},tr.ALLOWED_NAMESPACES,elA):Q,nA="ADD_URI_SAFE_ATTR"in tr?nc(H5(kA),tr.ADD_URI_SAFE_ATTR,Me):kA,tA="ADD_DATA_URI_TAGS"in tr?nc(H5(N),tr.ADD_DATA_URI_TAGS,Me):N,RA="FORBID_CONTENTS"in tr?nc({},tr.FORBID_CONTENTS,Me):lA,z="FORBID_TAGS"in tr?nc({},tr.FORBID_TAGS,Me):{},AA="FORBID_ATTR"in tr?nc({},tr.FORBID_ATTR,Me):{},MA="USE_PROFILES"in tr?tr.USE_PROFILES:!1,iA=tr.ALLOW_ARIA_ATTR!==!1,_A=tr.ALLOW_DATA_ATTR!==!1,fA=tr.ALLOW_UNKNOWN_PROTOCOLS||!1,M=tr.ALLOW_SELF_CLOSE_IN_ATTR!==!1,aA=tr.SAFE_FOR_TEMPLATES||!1,gA=tr.WHOLE_DOCUMENT||!1,FA=tr.RETURN_DOM||!1,SA=tr.RETURN_DOM_FRAGMENT||!1,ce=tr.RETURN_TRUSTED_TYPE||!1,mA=tr.FORCE_BODY||!1,re=tr.SANITIZE_DOM!==!1,KA=tr.SANITIZE_NAMED_PROPS||!1,jA=tr.KEEP_CONTENT!==!1,ue=tr.IN_PLACE||!1,K=tr.ALLOWED_URI_REGEXP||N9A,De=tr.NAMESPACE||VA,CA=tr.CUSTOM_ELEMENT_HANDLING||{},tr.CUSTOM_ELEMENT_HANDLING&&Ye(tr.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(CA.tagNameCheck=tr.CUSTOM_ELEMENT_HANDLING.tagNameCheck),tr.CUSTOM_ELEMENT_HANDLING&&Ye(tr.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(CA.attributeNameCheck=tr.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),tr.CUSTOM_ELEMENT_HANDLING&&typeof tr.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(CA.allowCustomizedBuiltInElements=tr.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),aA&&(_A=!1),SA&&(FA=!0),MA&&(J=nc({},[...H9A]),uA=[],MA.html===!0&&(nc(J,x9A),nc(uA,S9A)),MA.svg===!0&&(nc(J,rlA),nc(uA,nlA),nc(uA,QY)),MA.svgFilters===!0&&(nc(J,tlA),nc(uA,nlA),nc(uA,QY)),MA.mathMl===!0&&(nc(J,ilA),nc(uA,F9A),nc(uA,QY))),tr.ADD_TAGS&&(J===sA&&(J=H5(J)),nc(J,tr.ADD_TAGS,Me)),tr.ADD_ATTR&&(uA===BA&&(uA=H5(uA)),nc(uA,tr.ADD_ATTR,Me)),tr.ADD_URI_SAFE_ATTR&&nc(nA,tr.ADD_URI_SAFE_ATTR,Me),tr.FORBID_CONTENTS&&(RA===lA&&(RA=H5(RA)),nc(RA,tr.FORBID_CONTENTS,Me)),jA&&(J["#text"]=!0),gA&&nc(J,["html","head","body"]),J.table&&(nc(J,["tbody"]),delete z.tbody),tr.TRUSTED_TYPES_POLICY){if(typeof tr.TRUSTED_TYPES_POLICY.createHTML!="function")throw IM('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof tr.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw IM('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');F=tr.TRUSTED_TYPES_POLICY,y=F.createHTML("")}else F===void 0&&(F=Lfr(O,i)),F!==null&&typeof y=="string"&&(y=F.createHTML(""));lB&&lB(tr),Le=tr}},$e=nc({},["mi","mo","mn","ms","mtext"]),xr=nc({},["foreignobject","desc","title","annotation-xml"]),PA=nc({},["title","style","font","a","script"]),we=nc({},rlA);nc(we,tlA),nc(we,Hfr);let LA=nc({},ilA);nc(LA,Sfr);let ae=function(tr){let Ur=v(tr);(!Ur||!Ur.tagName)&&(Ur={namespaceURI:De,tagName:"template"});let nt=mY(tr.tagName),ke=mY(Ur.tagName);return Ae[tr.namespaceURI]?tr.namespaceURI===TA?Ur.namespaceURI===VA?nt==="svg":Ur.namespaceURI===bA?nt==="svg"&&(ke==="annotation-xml"||$e[ke]):!!we[nt]:tr.namespaceURI===bA?Ur.namespaceURI===VA?nt==="math":Ur.namespaceURI===TA?nt==="math"&&xr[ke]:!!LA[nt]:tr.namespaceURI===VA?Ur.namespaceURI===TA&&!xr[ke]||Ur.namespaceURI===bA&&!$e[ke]?!1:!LA[nt]&&(PA[nt]||!we[nt]):!!(Ze==="application/xhtml+xml"&&Ae[tr.namespaceURI]):!1},We=function(tr){CM(r.removed,{element:tr});try{tr.parentNode.removeChild(tr)}catch{tr.remove()}},YA=function(tr,Ur){try{CM(r.removed,{attribute:Ur.getAttributeNode(tr),from:Ur})}catch{CM(r.removed,{attribute:null,from:Ur})}if(Ur.removeAttribute(tr),tr==="is"&&!uA[tr])if(FA||SA)try{We(Ur)}catch{}else try{Ur.setAttribute(tr,"")}catch{}},Ce=function(tr){let Ur,nt;if(mA)tr=""+tr;else{let Ar=Ofr(tr,/^[\r\n\t ]+/);nt=Ar&&Ar[0]}Ze==="application/xhtml+xml"&&De===VA&&(tr=''+tr+"");let ke=F?F.createHTML(tr):tr;if(De===VA)try{Ur=new x().parseFromString(ke,Ze)}catch{}if(!Ur||!Ur.documentElement){Ur=S.createDocument(De,"template",null);try{Ur.documentElement.innerHTML=_e?y:ke}catch{}}let Je=Ur.body||Ur.documentElement;return tr&&nt&&Je.insertBefore(o.createTextNode(nt),Je.childNodes[0]||null),De===VA?wA.call(Ur,gA?"html":"body")[0]:gA?Ur.documentElement:Je},Ke=function(tr){return U.call(tr.ownerDocument||tr,tr,B.SHOW_ELEMENT|B.SHOW_COMMENT|B.SHOW_TEXT,null,!1)},er=function(tr){return tr instanceof _&&(typeof tr.nodeName!="string"||typeof tr.textContent!="string"||typeof tr.removeChild!="function"||!(tr.attributes instanceof m)||typeof tr.removeAttribute!="function"||typeof tr.setAttribute!="function"||typeof tr.namespaceURI!="string"||typeof tr.insertBefore!="function"||typeof tr.hasChildNodes!="function")},ur=function(tr){return typeof E=="object"?tr instanceof E:tr&&typeof tr=="object"&&typeof tr.nodeType=="number"&&typeof tr.nodeName=="string"},hr=function(tr,Ur,nt){pA[tr]&&bfr(pA[tr],ke=>{ke.call(r,Ur,nt,Le)})},Fr=function(tr){let Ur;if(hr("beforeSanitizeElements",tr,null),er(tr))return We(tr),!0;let nt=Me(tr.nodeName);if(hr("uponSanitizeElement",tr,{tagName:nt,allowedTags:J}),tr.hasChildNodes()&&!ur(tr.firstElementChild)&&(!ur(tr.content)||!ur(tr.content.firstElementChild))&&Lh(/<[/\w]/g,tr.innerHTML)&&Lh(/<[/\w]/g,tr.textContent))return We(tr),!0;if(!J[nt]||z[nt]){if(!z[nt]&&oe(nt)&&(CA.tagNameCheck instanceof RegExp&&Lh(CA.tagNameCheck,nt)||CA.tagNameCheck instanceof Function&&CA.tagNameCheck(nt)))return!1;if(jA&&!RA[nt]){let ke=v(tr)||tr.parentNode,Je=T(tr)||tr.childNodes;if(Je&&ke){let Ar=Je.length;for(let fr=Ar-1;fr>=0;--fr)ke.insertBefore(P(Je[fr],!0),H(tr))}}return We(tr),!0}return tr instanceof p&&!ae(tr)||(nt==="noscript"||nt==="noembed"||nt==="noframes")&&Lh(/<\/no(script|embed|frames)/i,tr.innerHTML)?(We(tr),!0):(aA&&tr.nodeType===3&&(Ur=tr.textContent,Ur=q0(Ur,oA," "),Ur=q0(Ur,cA," "),Ur=q0(Ur,eA," "),tr.textContent!==Ur&&(CM(r.removed,{element:tr.cloneNode()}),tr.textContent=Ur)),hr("afterSanitizeElements",tr,null),!1)},qA=function(tr,Ur,nt){if(re&&(Ur==="id"||Ur==="name")&&(nt in o||nt in ir))return!1;if(!(_A&&!AA[Ur]&&Lh(Y,Ur))){if(!(iA&&Lh(q,Ur))){if(!uA[Ur]||AA[Ur]){if(!(oe(tr)&&(CA.tagNameCheck instanceof RegExp&&Lh(CA.tagNameCheck,tr)||CA.tagNameCheck instanceof Function&&CA.tagNameCheck(tr))&&(CA.attributeNameCheck instanceof RegExp&&Lh(CA.attributeNameCheck,Ur)||CA.attributeNameCheck instanceof Function&&CA.attributeNameCheck(Ur))||Ur==="is"&&CA.allowCustomizedBuiltInElements&&(CA.tagNameCheck instanceof RegExp&&Lh(CA.tagNameCheck,nt)||CA.tagNameCheck instanceof Function&&CA.tagNameCheck(nt))))return!1}else if(!nA[Ur]){if(!Lh(K,q0(nt,Z,""))){if(!((Ur==="src"||Ur==="xlink:href"||Ur==="href")&&tr!=="script"&&Mfr(nt,"data:")===0&&tA[tr])){if(!(fA&&!Lh(X,q0(nt,Z,"")))){if(nt)return!1}}}}}}return!0},oe=function(tr){return tr.indexOf("-")>0},Ge=function(tr){let Ur,nt,ke,Je;hr("beforeSanitizeAttributes",tr,null);let{attributes:Ar}=tr;if(!Ar)return;let fr={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:uA};for(Je=Ar.length;Je--;){Ur=Ar[Je];let{name:te,namespaceURI:Te}=Ur;if(nt=te==="value"?Ur.value:kfr(Ur.value),ke=Me(te),fr.attrName=ke,fr.attrValue=nt,fr.keepAttr=!0,fr.forceKeepAttr=void 0,hr("uponSanitizeAttribute",tr,fr),nt=fr.attrValue,fr.forceKeepAttr||(YA(te,tr),!fr.keepAttr))continue;if(!M&&Lh(/\/>/i,nt)){YA(te,tr);continue}aA&&(nt=q0(nt,oA," "),nt=q0(nt,cA," "),nt=q0(nt,eA," "));let UA=Me(tr.nodeName);if(qA(UA,ke,nt)){if(KA&&(ke==="id"||ke==="name")&&(YA(te,tr),nt=$A+nt),F&&typeof O=="object"&&typeof O.getAttributeType=="function"&&!Te)switch(O.getAttributeType(UA,ke)){case"TrustedHTML":{nt=F.createHTML(nt);break}case"TrustedScriptURL":{nt=F.createScriptURL(nt);break}}try{Te?tr.setAttributeNS(Te,te,nt):tr.setAttribute(te,nt),k9A(r.removed)}catch{}}}hr("afterSanitizeAttributes",tr,null)},nr=function Or(tr){let Ur,nt=Ke(tr);for(hr("beforeSanitizeShadowDOM",tr,null);Ur=nt.nextNode();)hr("uponSanitizeShadowNode",Ur,null),!Fr(Ur)&&(Ur.content instanceof s&&Or(Ur.content),Ge(Ur));hr("afterSanitizeShadowDOM",tr,null)};return r.sanitize=function(Or){let tr=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Ur,nt,ke,Je;if(_e=!Or,_e&&(Or=""),typeof Or!="string"&&!ur(Or))if(typeof Or.toString=="function"){if(Or=Or.toString(),typeof Or!="string")throw IM("dirty is not a string, aborting")}else throw IM("toString is not a function");if(!r.isSupported)return Or;if(QA||mr(tr),r.removed=[],typeof Or=="string"&&(ue=!1),ue){if(Or.nodeName){let te=Me(Or.nodeName);if(!J[te]||z[te])throw IM("root node is forbidden and cannot be sanitized in-place")}}else if(Or instanceof E)Ur=Ce(""),nt=Ur.ownerDocument.importNode(Or,!0),nt.nodeType===1&&nt.nodeName==="BODY"||nt.nodeName==="HTML"?Ur=nt:Ur.appendChild(nt);else{if(!FA&&!aA&&!gA&&Or.indexOf("<")===-1)return F&&ce?F.createHTML(Or):Or;if(Ur=Ce(Or),!Ur)return FA?null:ce?y:""}Ur&&mA&&We(Ur.firstChild);let Ar=Ke(ue?Or:Ur);for(;ke=Ar.nextNode();)Fr(ke)||(ke.content instanceof s&&nr(ke.content),Ge(ke));if(ue)return Or;if(FA){if(SA)for(Je=V.call(Ur.ownerDocument);Ur.firstChild;)Je.appendChild(Ur.firstChild);else Je=Ur;return(uA.shadowroot||uA.shadowrootmode)&&(Je=IA.call(t,Je,!0)),Je}let fr=gA?Ur.outerHTML:Ur.innerHTML;return gA&&J["!doctype"]&&Ur.ownerDocument&&Ur.ownerDocument.doctype&&Ur.ownerDocument.doctype.name&&Lh(P9A,Ur.ownerDocument.doctype.name)&&(fr=" -`+fr),aA&&(fr=q0(fr,oA," "),fr=q0(fr,cA," "),fr=q0(fr,eA," ")),F&&ce?F.createHTML(fr):fr},r.setConfig=function(Or){mr(Or),QA=!0},r.clearConfig=function(){Le=null,QA=!1},r.isValidAttribute=function(Or,tr,Ur){Le||mr({});let nt=Me(Or),ke=Me(tr);return qA(nt,ke,Ur)},r.addHook=function(Or,tr){typeof tr=="function"&&(pA[Or]=pA[Or]||[],CM(pA[Or],tr))},r.removeHook=function(Or){if(pA[Or])return k9A(pA[Or])},r.removeHooks=function(Or){pA[Or]&&(pA[Or]=[])},r.removeAllHooks=function(){pA={}},r}var jfr=G9A();Y9A.exports=jfr});var tHA=GA((sti,rHA)=>{function plA(A){return A instanceof Map?A.clear=A.delete=A.set=function(){throw new Error("map is read-only")}:A instanceof Set&&(A.add=A.clear=A.delete=function(){throw new Error("set is read-only")}),Object.freeze(A),Object.getOwnPropertyNames(A).forEach(function(r){var t=A[r];typeof t=="object"&&!Object.isFrozen(t)&&plA(t)}),A}var z9A=plA,Wfr=plA;z9A.default=Wfr;var _Y=class{constructor(r){r.data===void 0&&(r.data={}),this.data=r.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function S5(A){return A.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function Cw(A,...r){let t=Object.create(null);for(let i in A)t[i]=A[i];return r.forEach(function(i){for(let o in i)t[o]=i[o]}),t}var Jfr="",L9A=A=>!!A.kind,llA=class{constructor(r,t){this.buffer="",this.classPrefix=t.classPrefix,r.walk(this)}addText(r){this.buffer+=S5(r)}openNode(r){if(!L9A(r))return;let t=r.kind;r.sublanguage||(t=`${this.classPrefix}${t}`),this.span(t)}closeNode(r){L9A(r)&&(this.buffer+=Jfr)}value(){return this.buffer}span(r){this.buffer+=``}},ulA=class A{constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(r){this.top.children.push(r)}openNode(r){let t={kind:r,children:[]};this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(r){return this.constructor._walk(r,this.rootNode)}static _walk(r,t){return typeof t=="string"?r.addText(t):t.children&&(r.openNode(t),t.children.forEach(i=>this._walk(r,i)),r.closeNode(t)),r}static _collapse(r){typeof r!="string"&&r.children&&(r.children.every(t=>typeof t=="string")?r.children=[r.children.join("")]:r.children.forEach(t=>{A._collapse(t)}))}},glA=class extends ulA{constructor(r){super(),this.options=r}addKeyword(r,t){r!==""&&(this.openNode(t),this.addText(r),this.closeNode())}addText(r){r!==""&&this.add(r)}addSublanguage(r,t){let i=r.root;i.kind=t,i.sublanguage=!0,this.add(i)}toHTML(){return new llA(this,this.options).value()}finalize(){return!0}};function qfr(A){return new RegExp(A.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")}function bM(A){return A?typeof A=="string"?A:A.source:null}function Vfr(...A){return A.map(t=>bM(t)).join("")}function zfr(...A){return"("+A.map(t=>bM(t)).join("|")+")"}function Kfr(A){return new RegExp(A.toString()+"|").exec("").length-1}function Xfr(A,r){let t=A&&A.exec(r);return t&&t.index===0}var Zfr=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function $fr(A,r="|"){let t=0;return A.map(i=>{t+=1;let o=t,s=bM(i),g="";for(;s.length>0;){let E=Zfr.exec(s);if(!E){g+=s;break}g+=s.substring(0,E.index),s=s.substring(E.index+E[0].length),E[0][0]==="\\"&&E[1]?g+="\\"+String(Number(E[1])+o):(g+=E[0],E[0]==="("&&t++)}return g}).map(i=>`(${i})`).join(r)}var ABr=/\b\B/,K9A="[a-zA-Z]\\w*",ElA="[a-zA-Z_]\\w*",flA="\\b\\d+(\\.\\d+)?",X9A="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Z9A="\\b(0b[01]+)",eBr="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",rBr=(A={})=>{let r=/^#![ ]*\//;return A.binary&&(A.begin=Vfr(r,/.*\b/,A.binary,/\b.*/)),Cw({className:"meta",begin:r,end:/$/,relevance:0,"on:begin":(t,i)=>{t.index!==0&&i.ignoreMatch()}},A)},OM={begin:"\\\\[\\s\\S]",relevance:0},tBr={className:"string",begin:"'",end:"'",illegal:"\\n",contains:[OM]},iBr={className:"string",begin:'"',end:'"',illegal:"\\n",contains:[OM]},$9A={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},wY=function(A,r,t={}){let i=Cw({className:"comment",begin:A,end:r,contains:[]},t);return i.contains.push($9A),i.contains.push({className:"doctag",begin:"(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",relevance:0}),i},nBr=wY("//","$"),aBr=wY("/\\*","\\*/"),oBr=wY("#","$"),sBr={className:"number",begin:flA,relevance:0},cBr={className:"number",begin:X9A,relevance:0},lBr={className:"number",begin:Z9A,relevance:0},uBr={className:"number",begin:flA+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},gBr={begin:/(?=\/[^/\n]*\/)/,contains:[{className:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[OM,{begin:/\[/,end:/\]/,relevance:0,contains:[OM]}]}]},dBr={className:"title",begin:K9A,relevance:0},pBr={className:"title",begin:ElA,relevance:0},EBr={begin:"\\.\\s*"+ElA,relevance:0},fBr=function(A){return Object.assign(A,{"on:begin":(r,t)=>{t.data._beginMatch=r[1]},"on:end":(r,t)=>{t.data._beginMatch!==r[1]&&t.ignoreMatch()}})},DY=Object.freeze({__proto__:null,MATCH_NOTHING_RE:ABr,IDENT_RE:K9A,UNDERSCORE_IDENT_RE:ElA,NUMBER_RE:flA,C_NUMBER_RE:X9A,BINARY_NUMBER_RE:Z9A,RE_STARTERS_RE:eBr,SHEBANG:rBr,BACKSLASH_ESCAPE:OM,APOS_STRING_MODE:tBr,QUOTE_STRING_MODE:iBr,PHRASAL_WORDS_MODE:$9A,COMMENT:wY,C_LINE_COMMENT_MODE:nBr,C_BLOCK_COMMENT_MODE:aBr,HASH_COMMENT_MODE:oBr,NUMBER_MODE:sBr,C_NUMBER_MODE:cBr,BINARY_NUMBER_MODE:lBr,CSS_NUMBER_MODE:uBr,REGEXP_MODE:gBr,TITLE_MODE:dBr,UNDERSCORE_TITLE_MODE:pBr,METHOD_GUARD:EBr,END_SAME_AS_BEGIN:fBr});function BBr(A,r){A.input[A.index-1]==="."&&r.ignoreMatch()}function hBr(A,r){r&&A.beginKeywords&&(A.begin="\\b("+A.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",A.__beforeBegin=BBr,A.keywords=A.keywords||A.beginKeywords,delete A.beginKeywords,A.relevance===void 0&&(A.relevance=0))}function QBr(A,r){Array.isArray(A.illegal)&&(A.illegal=zfr(...A.illegal))}function mBr(A,r){if(A.match){if(A.begin||A.end)throw new Error("begin & end are not supported with match");A.begin=A.match,delete A.match}}function DBr(A,r){A.relevance===void 0&&(A.relevance=1)}var _Br=["of","and","for","in","not","or","if","then","parent","list","value"],wBr="keyword";function AHA(A,r,t=wBr){let i={};return typeof A=="string"?o(t,A.split(" ")):Array.isArray(A)?o(t,A):Object.keys(A).forEach(function(s){Object.assign(i,AHA(A[s],r,s))}),i;function o(s,g){r&&(g=g.map(E=>E.toLowerCase())),g.forEach(function(E){let p=E.split("|");i[p[0]]=[s,vBr(p[0],p[1])]})}}function vBr(A,r){return r?Number(r):yBr(A)?0:1}function yBr(A){return _Br.includes(A.toLowerCase())}function CBr(A,{plugins:r}){function t(E,p){return new RegExp(bM(E),"m"+(A.case_insensitive?"i":"")+(p?"g":""))}class i{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(p,B){B.position=this.position++,this.matchIndexes[this.matchAt]=B,this.regexes.push([B,p]),this.matchAt+=Kfr(p)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);let p=this.regexes.map(B=>B[1]);this.matcherRe=t($fr(p),!0),this.lastIndex=0}exec(p){this.matcherRe.lastIndex=this.lastIndex;let B=this.matcherRe.exec(p);if(!B)return null;let m=B.findIndex((x,O)=>O>0&&x!==void 0),_=this.matchIndexes[m];return B.splice(0,m),Object.assign(B,_)}}class o{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(p){if(this.multiRegexes[p])return this.multiRegexes[p];let B=new i;return this.rules.slice(p).forEach(([m,_])=>B.addRule(m,_)),B.compile(),this.multiRegexes[p]=B,B}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(p,B){this.rules.push([p,B]),B.type==="begin"&&this.count++}exec(p){let B=this.getMatcher(this.regexIndex);B.lastIndex=this.lastIndex;let m=B.exec(p);if(this.resumingScanAtSamePosition()&&!(m&&m.index===this.lastIndex)){let _=this.getMatcher(0);_.lastIndex=this.lastIndex+1,m=_.exec(p)}return m&&(this.regexIndex+=m.position+1,this.regexIndex===this.count&&this.considerAll()),m}}function s(E){let p=new o;return E.contains.forEach(B=>p.addRule(B.begin,{rule:B,type:"begin"})),E.terminatorEnd&&p.addRule(E.terminatorEnd,{type:"end"}),E.illegal&&p.addRule(E.illegal,{type:"illegal"}),p}function g(E,p){let B=E;if(E.isCompiled)return B;[mBr].forEach(_=>_(E,p)),A.compilerExtensions.forEach(_=>_(E,p)),E.__beforeBegin=null,[hBr,QBr,DBr].forEach(_=>_(E,p)),E.isCompiled=!0;let m=null;if(typeof E.keywords=="object"&&(m=E.keywords.$pattern,delete E.keywords.$pattern),E.keywords&&(E.keywords=AHA(E.keywords,A.case_insensitive)),E.lexemes&&m)throw new Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) ");return m=m||E.lexemes||/\w+/,B.keywordPatternRe=t(m,!0),p&&(E.begin||(E.begin=/\B|\b/),B.beginRe=t(E.begin),E.endSameAsBegin&&(E.end=E.begin),!E.end&&!E.endsWithParent&&(E.end=/\B|\b/),E.end&&(B.endRe=t(E.end)),B.terminatorEnd=bM(E.end)||"",E.endsWithParent&&p.terminatorEnd&&(B.terminatorEnd+=(E.end?"|":"")+p.terminatorEnd)),E.illegal&&(B.illegalRe=t(E.illegal)),E.contains||(E.contains=[]),E.contains=[].concat(...E.contains.map(function(_){return IBr(_==="self"?E:_)})),E.contains.forEach(function(_){g(_,B)}),E.starts&&g(E.starts,p),B.matcher=s(B),B}if(A.compilerExtensions||(A.compilerExtensions=[]),A.contains&&A.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return A.classNameAliases=Cw(A.classNameAliases||{}),g(A)}function eHA(A){return A?A.endsWithParent||eHA(A.starts):!1}function IBr(A){return A.variants&&!A.cachedVariants&&(A.cachedVariants=A.variants.map(function(r){return Cw(A,{variants:null},r)})),A.cachedVariants?A.cachedVariants:eHA(A)?Cw(A,{starts:A.starts?Cw(A.starts):null}):Object.isFrozen(A)?Cw(A):A}var bBr="10.7.3";function OBr(A){return!!(A||A==="")}function MBr(A){let r={props:["language","code","autodetect"],data:function(){return{detectedLanguage:"",unknownLanguage:!1}},computed:{className(){return this.unknownLanguage?"":"hljs "+this.detectedLanguage},highlighted(){if(!this.autoDetect&&!A.getLanguage(this.language))return console.warn(`The language "${this.language}" you specified could not be found.`),this.unknownLanguage=!0,S5(this.code);let i={};return this.autoDetect?(i=A.highlightAuto(this.code),this.detectedLanguage=i.language):(i=A.highlight(this.language,this.code,this.ignoreIllegals),this.detectedLanguage=this.language),i.value},autoDetect(){return!this.language||OBr(this.autodetect)},ignoreIllegals(){return!0}},render(i){return i("pre",{},[i("code",{class:this.className,domProps:{innerHTML:this.highlighted}})])}};return{Component:r,VuePlugin:{install(i){i.component("highlightjs",r)}}}}var kBr={"after:highlightElement":({el:A,result:r,text:t})=>{let i=j9A(A);if(!i.length)return;let o=document.createElement("div");o.innerHTML=r.value,r.value=xBr(i,j9A(o),t)}};function dlA(A){return A.nodeName.toLowerCase()}function j9A(A){let r=[];return function t(i,o){for(let s=i.firstChild;s;s=s.nextSibling)s.nodeType===3?o+=s.nodeValue.length:s.nodeType===1&&(r.push({event:"start",offset:o,node:s}),o=t(s,o),dlA(s).match(/br|hr|img|input/)||r.push({event:"stop",offset:o,node:s}));return o}(A,0),r}function xBr(A,r,t){let i=0,o="",s=[];function g(){return!A.length||!r.length?A.length?A:r:A[0].offset!==r[0].offset?A[0].offset"}function p(m){o+=""}function B(m){(m.event==="start"?E:p)(m.node)}for(;A.length||r.length;){let m=g();if(o+=S5(t.substring(i,m[0].offset)),i=m[0].offset,m===A){s.reverse().forEach(p);do B(m.splice(0,1)[0]),m=g();while(m===A&&m.length&&m[0].offset===i);s.reverse().forEach(E)}else m[0].event==="start"?s.push(m[0].node):s.pop(),B(m.splice(0,1)[0])}return o+S5(t.substr(i))}var W9A={},slA=A=>{console.error(A)},J9A=(A,...r)=>{console.log(`WARN: ${A}`,...r)},FQ=(A,r)=>{W9A[`${A}/${r}`]||(console.log(`Deprecated as of ${A}. ${r}`),W9A[`${A}/${r}`]=!0)},clA=S5,q9A=Cw,V9A=Symbol("nomatch"),HBr=function(A){let r=Object.create(null),t=Object.create(null),i=[],o=!0,s=/(^(<[^>]+>|\t|)+|\n)/gm,g="Could not find the language '{}', did you forget to load/include a language module?",E={disableAutodetect:!0,name:"Plain text",contains:[]},p={noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:null,__emitter:glA};function B(CA){return p.noHighlightRe.test(CA)}function m(CA){let z=CA.className+" ";z+=CA.parentNode?CA.parentNode.className:"";let AA=p.languageDetectRe.exec(z);if(AA){let iA=q(AA[1]);return iA||(J9A(g.replace("{}",AA[1])),J9A("Falling back to no-highlight mode for this block.",CA)),iA?AA[1]:"no-highlight"}return z.split(/\s+/).find(iA=>B(iA)||q(iA))}function _(CA,z,AA,iA){let _A="",fA="";typeof z=="object"?(_A=CA,AA=z.ignoreIllegals,fA=z.language,iA=void 0):(FQ("10.7.0","highlight(lang, code, ...args) has been deprecated."),FQ("10.7.0",`Please use highlight(code, options) instead. -https://github.com/highlightjs/highlight.js/issues/2277`),fA=CA,_A=z);let M={code:_A,language:fA};sA("before:highlight",M);let aA=M.result?M.result:x(M.language,M.code,AA,iA);return aA.code=M.code,sA("after:highlight",aA),aA}function x(CA,z,AA,iA){function _A(TA,VA){let De=$A.case_insensitive?VA[0].toLowerCase():VA[0];return Object.prototype.hasOwnProperty.call(TA.keywords,De)&&TA.keywords[De]}function fA(){if(!MA.keywords){lA.addText(tA);return}let TA=0;MA.keywordPatternRe.lastIndex=0;let VA=MA.keywordPatternRe.exec(tA),De="";for(;VA;){De+=tA.substring(TA,VA.index);let _e=_A(MA,VA);if(_e){let[Ae,Q]=_e;if(lA.addText(De),De="",N+=Q,Ae.startsWith("_"))De+=VA[0];else{let Ze=$A.classNameAliases[Ae]||Ae;lA.addKeyword(VA[0],Ze)}}else De+=VA[0];TA=MA.keywordPatternRe.lastIndex,VA=MA.keywordPatternRe.exec(tA)}De+=tA.substr(TA),lA.addText(De)}function M(){if(tA==="")return;let TA=null;if(typeof MA.subLanguage=="string"){if(!r[MA.subLanguage]){lA.addText(tA);return}TA=x(MA.subLanguage,tA,!0,RA[MA.subLanguage]),RA[MA.subLanguage]=TA.top}else TA=k(tA,MA.subLanguage.length?MA.subLanguage:null);MA.relevance>0&&(N+=TA.relevance),lA.addSublanguage(TA.emitter,TA.language)}function aA(){MA.subLanguage!=null?M():fA(),tA=""}function gA(TA){return TA.className&&lA.openNode($A.classNameAliases[TA.className]||TA.className),MA=Object.create(TA,{parent:{value:MA}}),MA}function QA(TA,VA,De){let _e=Xfr(TA.endRe,De);if(_e){if(TA["on:end"]){let Ae=new _Y(TA);TA["on:end"](VA,Ae),Ae.isMatchIgnored&&(_e=!1)}if(_e){for(;TA.endsParent&&TA.parent;)TA=TA.parent;return TA}}if(TA.endsWithParent)return QA(TA.parent,VA,De)}function mA(TA){return MA.matcher.regexIndex===0?(tA+=TA[0],1):(bA=!0,0)}function FA(TA){let VA=TA[0],De=TA.rule,_e=new _Y(De),Ae=[De.__beforeBegin,De["on:begin"]];for(let Q of Ae)if(Q&&(Q(TA,_e),_e.isMatchIgnored))return mA(VA);return De&&De.endSameAsBegin&&(De.endRe=qfr(VA)),De.skip?tA+=VA:(De.excludeBegin&&(tA+=VA),aA(),!De.returnBegin&&!De.excludeBegin&&(tA=VA)),gA(De),De.returnBegin?0:VA.length}function SA(TA){let VA=TA[0],De=z.substr(TA.index),_e=QA(MA,TA,De);if(!_e)return V9A;let Ae=MA;Ae.skip?tA+=VA:(Ae.returnEnd||Ae.excludeEnd||(tA+=VA),aA(),Ae.excludeEnd&&(tA=VA));do MA.className&&lA.closeNode(),!MA.skip&&!MA.subLanguage&&(N+=MA.relevance),MA=MA.parent;while(MA!==_e.parent);return _e.starts&&(_e.endSameAsBegin&&(_e.starts.endRe=_e.endRe),gA(_e.starts)),Ae.returnEnd?0:VA.length}function ce(){let TA=[];for(let VA=MA;VA!==$A;VA=VA.parent)VA.className&&TA.unshift(VA.className);TA.forEach(VA=>lA.openNode(VA))}let re={};function KA(TA,VA){let De=VA&&VA[0];if(tA+=TA,De==null)return aA(),0;if(re.type==="begin"&&VA.type==="end"&&re.index===VA.index&&De===""){if(tA+=z.slice(VA.index,VA.index+1),!o){let _e=new Error("0 width match regex");throw _e.languageName=CA,_e.badRule=re.rule,_e}return 1}if(re=VA,VA.type==="begin")return FA(VA);if(VA.type==="illegal"&&!AA){let _e=new Error('Illegal lexeme "'+De+'" for mode "'+(MA.className||"")+'"');throw _e.mode=MA,_e}else if(VA.type==="end"){let _e=SA(VA);if(_e!==V9A)return _e}if(VA.type==="illegal"&&De==="")return 1;if(kA>1e5&&kA>VA.index*3)throw new Error("potential infinite loop, way more iterations than matches");return tA+=De,De.length}let $A=q(CA);if(!$A)throw slA(g.replace("{}",CA)),new Error('Unknown language: "'+CA+'"');let jA=CBr($A,{plugins:i}),ue="",MA=iA||jA,RA={},lA=new p.__emitter(p);ce();let tA="",N=0,nA=0,kA=0,bA=!1;try{for(MA.matcher.considerAll();;){kA++,bA?bA=!1:MA.matcher.considerAll(),MA.matcher.lastIndex=nA;let TA=MA.matcher.exec(z);if(!TA)break;let VA=z.substring(nA,TA.index),De=KA(VA,TA);nA=TA.index+De}return KA(z.substr(nA)),lA.closeAllNodes(),lA.finalize(),ue=lA.toHTML(),{relevance:Math.floor(N),value:ue,language:CA,illegal:!1,emitter:lA,top:MA}}catch(TA){if(TA.message&&TA.message.includes("Illegal"))return{illegal:!0,illegalBy:{msg:TA.message,context:z.slice(nA-100,nA+100),mode:TA.mode},sofar:ue,relevance:0,value:clA(z),emitter:lA};if(o)return{illegal:!1,relevance:0,value:clA(z),emitter:lA,language:CA,top:MA,errorRaised:TA};throw TA}}function O(CA){let z={relevance:0,emitter:new p.__emitter(p),value:clA(CA),illegal:!1,top:E};return z.emitter.addText(CA),z}function k(CA,z){z=z||p.languages||Object.keys(r);let AA=O(CA),iA=z.filter(q).filter(Z).map(gA=>x(gA,CA,!1));iA.unshift(AA);let _A=iA.sort((gA,QA)=>{if(gA.relevance!==QA.relevance)return QA.relevance-gA.relevance;if(gA.language&&QA.language){if(q(gA.language).supersetOf===QA.language)return 1;if(q(QA.language).supersetOf===gA.language)return-1}return 0}),[fA,M]=_A,aA=fA;return aA.second_best=M,aA}function P(CA){return p.tabReplace||p.useBR?CA.replace(s,z=>z===` -`?p.useBR?"
":z:p.tabReplace?z.replace(/\t/g,p.tabReplace):z):CA}function H(CA,z,AA){let iA=z?t[z]:AA;CA.classList.add("hljs"),iA&&CA.classList.add(iA)}let T={"before:highlightElement":({el:CA})=>{p.useBR&&(CA.innerHTML=CA.innerHTML.replace(/\n/g,"").replace(//g,` -`))},"after:highlightElement":({result:CA})=>{p.useBR&&(CA.value=CA.value.replace(/\n/g,"
"))}},v=/^(<[^>]+>|\t)+/gm,F={"after:highlightElement":({result:CA})=>{p.tabReplace&&(CA.value=CA.value.replace(v,z=>z.replace(/\t/g,p.tabReplace)))}};function y(CA){let z=null,AA=m(CA);if(B(AA))return;sA("before:highlightElement",{el:CA,language:AA}),z=CA;let iA=z.textContent,_A=AA?_(iA,{language:AA,ignoreIllegals:!0}):k(iA);sA("after:highlightElement",{el:CA,result:_A,text:iA}),CA.innerHTML=_A.value,H(CA,AA,_A.language),CA.result={language:_A.language,re:_A.relevance,relavance:_A.relevance},_A.second_best&&(CA.second_best={language:_A.second_best.language,re:_A.second_best.relevance,relavance:_A.second_best.relevance})}function S(CA){CA.useBR&&(FQ("10.3.0","'useBR' will be removed entirely in v11.0"),FQ("10.3.0","Please see https://github.com/highlightjs/highlight.js/issues/2559")),p=q9A(p,CA)}let U=()=>{if(U.called)return;U.called=!0,FQ("10.6.0","initHighlighting() is deprecated. Use highlightAll() instead."),document.querySelectorAll("pre code").forEach(y)};function V(){FQ("10.6.0","initHighlightingOnLoad() is deprecated. Use highlightAll() instead."),wA=!0}let wA=!1;function IA(){if(document.readyState==="loading"){wA=!0;return}document.querySelectorAll("pre code").forEach(y)}function pA(){wA&&IA()}typeof window<"u"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",pA,!1);function oA(CA,z){let AA=null;try{AA=z(A)}catch(iA){if(slA("Language definition for '{}' could not be registered.".replace("{}",CA)),o)slA(iA);else throw iA;AA=E}AA.name||(AA.name=CA),r[CA]=AA,AA.rawDefinition=z.bind(null,A),AA.aliases&&X(AA.aliases,{languageName:CA})}function cA(CA){delete r[CA];for(let z of Object.keys(t))t[z]===CA&&delete t[z]}function eA(){return Object.keys(r)}function Y(CA){FQ("10.4.0","requireLanguage will be removed entirely in v11."),FQ("10.4.0","Please see https://github.com/highlightjs/highlight.js/pull/2844");let z=q(CA);if(z)return z;throw new Error("The '{}' language is required, but not loaded.".replace("{}",CA))}function q(CA){return CA=(CA||"").toLowerCase(),r[CA]||r[t[CA]]}function X(CA,{languageName:z}){typeof CA=="string"&&(CA=[CA]),CA.forEach(AA=>{t[AA.toLowerCase()]=z})}function Z(CA){let z=q(CA);return z&&!z.disableAutodetect}function K(CA){CA["before:highlightBlock"]&&!CA["before:highlightElement"]&&(CA["before:highlightElement"]=z=>{CA["before:highlightBlock"](Object.assign({block:z.el},z))}),CA["after:highlightBlock"]&&!CA["after:highlightElement"]&&(CA["after:highlightElement"]=z=>{CA["after:highlightBlock"](Object.assign({block:z.el},z))})}function J(CA){K(CA),i.push(CA)}function sA(CA,z){let AA=CA;i.forEach(function(iA){iA[AA]&&iA[AA](z)})}function uA(CA){return FQ("10.2.0","fixMarkup will be removed entirely in v11.0"),FQ("10.2.0","Please see https://github.com/highlightjs/highlight.js/issues/2534"),P(CA)}function BA(CA){return FQ("10.7.0","highlightBlock will be removed entirely in v12.0"),FQ("10.7.0","Please use highlightElement now."),y(CA)}Object.assign(A,{highlight:_,highlightAuto:k,highlightAll:IA,fixMarkup:uA,highlightElement:y,highlightBlock:BA,configure:S,initHighlighting:U,initHighlightingOnLoad:V,registerLanguage:oA,unregisterLanguage:cA,listLanguages:eA,getLanguage:q,registerAliases:X,requireLanguage:Y,autoDetection:Z,inherit:q9A,addPlugin:J,vuePlugin:MBr(A).VuePlugin}),A.debugMode=function(){o=!1},A.safeMode=function(){o=!0},A.versionString=bBr;for(let CA in DY)typeof DY[CA]=="object"&&z9A(DY[CA]);return Object.assign(A,DY),A.addPlugin(T),A.addPlugin(kBr),A.addPlugin(F),A},SBr=HBr({});rHA.exports=SBr});var at=GA((Nni,xM)=>{function uhr(A){return A&&A.__esModule?A:{default:A}}xM.exports=uhr,xM.exports.__esModule=!0,xM.exports.default=xM.exports});var Wh=GA((Pni,K4)=>{function ClA(A){"@babel/helpers - typeof";return K4.exports=ClA=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},K4.exports.__esModule=!0,K4.exports.default=K4.exports,ClA(A)}K4.exports=ClA,K4.exports.__esModule=!0,K4.exports.default=K4.exports});var vo=GA((YY,MHA)=>{"use strict";Object.defineProperty(YY,"__esModule",{value:!0});YY.default=ghr;function ghr(A){if(A===null||A===!0||A===!1)return NaN;var r=Number(A);return isNaN(r)?r:r<0?Math.ceil(r):Math.floor(r)}MHA.exports=YY.default});var Ct=GA((UY,kHA)=>{"use strict";Object.defineProperty(UY,"__esModule",{value:!0});UY.default=dhr;function dhr(A,r){if(r.length1?"s":"")+" required, but only "+r.length+" present")}kHA.exports=UY.default});var An=GA((LY,HHA)=>{"use strict";var xHA=at().default;Object.defineProperty(LY,"__esModule",{value:!0});LY.default=fhr;var phr=xHA(Wh()),Ehr=xHA(Ct());function fhr(A){(0,Ehr.default)(1,arguments);var r=Object.prototype.toString.call(A);return A instanceof Date||(0,phr.default)(A)==="object"&&r==="[object Date]"?new Date(A.getTime()):typeof A=="number"||r==="[object Number]"?new Date(A):((typeof A=="string"||r==="[object String]")&&typeof console<"u"&&(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"),console.warn(new Error().stack)),new Date(NaN))}HHA.exports=LY.default});var f1=GA((jY,SHA)=>{"use strict";var IlA=at().default;Object.defineProperty(jY,"__esModule",{value:!0});jY.default=mhr;var Bhr=IlA(vo()),hhr=IlA(An()),Qhr=IlA(Ct());function mhr(A,r){(0,Qhr.default)(2,arguments);var t=(0,hhr.default)(A),i=(0,Bhr.default)(r);return isNaN(i)?new Date(NaN):(i&&t.setDate(t.getDate()+i),t)}SHA.exports=jY.default});var F5=GA((WY,FHA)=>{"use strict";var blA=at().default;Object.defineProperty(WY,"__esModule",{value:!0});WY.default=vhr;var Dhr=blA(vo()),_hr=blA(An()),whr=blA(Ct());function vhr(A,r){(0,whr.default)(2,arguments);var t=(0,_hr.default)(A),i=(0,Dhr.default)(r);if(isNaN(i))return new Date(NaN);if(!i)return t;var o=t.getDate(),s=new Date(t.getTime());s.setMonth(t.getMonth()+i+1,0);var g=s.getDate();return o>=g?s:(t.setFullYear(s.getFullYear(),s.getMonth(),o),t)}FHA.exports=WY.default});var OlA=GA((JY,RHA)=>{"use strict";var R5=at().default;Object.defineProperty(JY,"__esModule",{value:!0});JY.default=Mhr;var yhr=R5(Wh()),Chr=R5(f1()),Ihr=R5(F5()),bhr=R5(An()),Ohr=R5(Ct()),r2=R5(vo());function Mhr(A,r){if((0,Ohr.default)(2,arguments),!r||(0,yhr.default)(r)!=="object")return new Date(NaN);var t=r.years?(0,r2.default)(r.years):0,i=r.months?(0,r2.default)(r.months):0,o=r.weeks?(0,r2.default)(r.weeks):0,s=r.days?(0,r2.default)(r.days):0,g=r.hours?(0,r2.default)(r.hours):0,E=r.minutes?(0,r2.default)(r.minutes):0,p=r.seconds?(0,r2.default)(r.seconds):0,B=(0,bhr.default)(A),m=i||t?(0,Ihr.default)(B,i+t*12):B,_=s||o?(0,Chr.default)(m,s+o*7):m,x=E+g*60,O=p+x*60,k=O*1e3,P=new Date(_.getTime()+k);return P}RHA.exports=JY.default});var HM=GA((qY,NHA)=>{"use strict";var THA=at().default;Object.defineProperty(qY,"__esModule",{value:!0});qY.default=Hhr;var khr=THA(An()),xhr=THA(Ct());function Hhr(A){(0,xhr.default)(1,arguments);var r=(0,khr.default)(A),t=r.getDay();return t===0||t===6}NHA.exports=qY.default});var zY=GA((VY,GHA)=>{"use strict";var PHA=at().default;Object.defineProperty(VY,"__esModule",{value:!0});VY.default=Rhr;var Shr=PHA(An()),Fhr=PHA(Ct());function Rhr(A){return(0,Fhr.default)(1,arguments),(0,Shr.default)(A).getDay()===0}GHA.exports=VY.default});var MlA=GA((KY,UHA)=>{"use strict";var YHA=at().default;Object.defineProperty(KY,"__esModule",{value:!0});KY.default=Phr;var Thr=YHA(An()),Nhr=YHA(Ct());function Phr(A){return(0,Nhr.default)(1,arguments),(0,Thr.default)(A).getDay()===6}UHA.exports=KY.default});var xlA=GA((XY,jHA)=>{"use strict";var T5=at().default;Object.defineProperty(XY,"__esModule",{value:!0});XY.default=jhr;var klA=T5(HM()),Ghr=T5(An()),LHA=T5(vo()),Yhr=T5(Ct()),Uhr=T5(zY()),Lhr=T5(MlA());function jhr(A,r){(0,Yhr.default)(2,arguments);var t=(0,Ghr.default)(A),i=(0,klA.default)(t),o=(0,LHA.default)(r);if(isNaN(o))return new Date(NaN);var s=t.getHours(),g=o<0?-1:1,E=(0,LHA.default)(o/5);t.setDate(t.getDate()+E*7);for(var p=Math.abs(o%5);p>0;)t.setDate(t.getDate()+g),(0,klA.default)(t)||(p-=1);return i&&(0,klA.default)(t)&&o!==0&&((0,Lhr.default)(t)&&t.setDate(t.getDate()+(g<0?2:-1)),(0,Uhr.default)(t)&&t.setDate(t.getDate()+(g<0?1:-2))),t.setHours(s),t}jHA.exports=XY.default});var N5=GA((ZY,WHA)=>{"use strict";var HlA=at().default;Object.defineProperty(ZY,"__esModule",{value:!0});ZY.default=Vhr;var Whr=HlA(vo()),Jhr=HlA(An()),qhr=HlA(Ct());function Vhr(A,r){(0,qhr.default)(2,arguments);var t=(0,Jhr.default)(A).getTime(),i=(0,Whr.default)(r);return new Date(t+i)}WHA.exports=ZY.default});var AU=GA(($Y,JHA)=>{"use strict";var SlA=at().default;Object.defineProperty($Y,"__esModule",{value:!0});$Y.default=$hr;var zhr=SlA(vo()),Khr=SlA(N5()),Xhr=SlA(Ct()),Zhr=36e5;function $hr(A,r){(0,Xhr.default)(2,arguments);var t=(0,zhr.default)(r);return(0,Khr.default)(A,t*Zhr)}JHA.exports=$Y.default});var ud=GA(eU=>{"use strict";Object.defineProperty(eU,"__esModule",{value:!0});eU.getDefaultOptions=AQr;eU.setDefaultOptions=eQr;var qHA={};function AQr(){return qHA}function eQr(A){qHA=A}});var X4=GA((rU,VHA)=>{"use strict";var FlA=at().default;Object.defineProperty(rU,"__esModule",{value:!0});rU.default=aQr;var rQr=FlA(An()),tQr=FlA(vo()),iQr=FlA(Ct()),nQr=ud();function aQr(A,r){var t,i,o,s,g,E,p,B;(0,iQr.default)(1,arguments);var m=(0,nQr.getDefaultOptions)(),_=(0,tQr.default)((t=(i=(o=(s=r?.weekStartsOn)!==null&&s!==void 0?s:r==null||(g=r.locale)===null||g===void 0||(E=g.options)===null||E===void 0?void 0:E.weekStartsOn)!==null&&o!==void 0?o:m.weekStartsOn)!==null&&i!==void 0?i:(p=m.locale)===null||p===void 0||(B=p.options)===null||B===void 0?void 0:B.weekStartsOn)!==null&&t!==void 0?t:0);if(!(_>=0&&_<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var x=(0,rQr.default)(A),O=x.getDay(),k=(O<_?7:0)+O-_;return x.setDate(x.getDate()-k),x.setHours(0,0,0,0),x}VHA.exports=rU.default});var Iw=GA((tU,KHA)=>{"use strict";var zHA=at().default;Object.defineProperty(tU,"__esModule",{value:!0});tU.default=cQr;var oQr=zHA(X4()),sQr=zHA(Ct());function cQr(A){return(0,sQr.default)(1,arguments),(0,oQr.default)(A,{weekStartsOn:1})}KHA.exports=tU.default});var t2=GA((iU,ZHA)=>{"use strict";var RlA=at().default;Object.defineProperty(iU,"__esModule",{value:!0});iU.default=gQr;var lQr=RlA(An()),XHA=RlA(Iw()),uQr=RlA(Ct());function gQr(A){(0,uQr.default)(1,arguments);var r=(0,lQr.default)(A),t=r.getFullYear(),i=new Date(0);i.setFullYear(t+1,0,4),i.setHours(0,0,0,0);var o=(0,XHA.default)(i),s=new Date(0);s.setFullYear(t,0,4),s.setHours(0,0,0,0);var g=(0,XHA.default)(s);return r.getTime()>=o.getTime()?t+1:r.getTime()>=g.getTime()?t:t-1}ZHA.exports=iU.default});var P5=GA((nU,$HA)=>{"use strict";var TlA=at().default;Object.defineProperty(nU,"__esModule",{value:!0});nU.default=fQr;var dQr=TlA(t2()),pQr=TlA(Iw()),EQr=TlA(Ct());function fQr(A){(0,EQr.default)(1,arguments);var r=(0,dQr.default)(A),t=new Date(0);t.setFullYear(r,0,4),t.setHours(0,0,0,0);var i=(0,pQr.default)(t);return i}$HA.exports=nU.default});var B1=GA((aU,ASA)=>{"use strict";Object.defineProperty(aU,"__esModule",{value:!0});aU.default=BQr;function BQr(A){var r=new Date(Date.UTC(A.getFullYear(),A.getMonth(),A.getDate(),A.getHours(),A.getMinutes(),A.getSeconds(),A.getMilliseconds()));return r.setUTCFullYear(A.getFullYear()),A.getTime()-r.getTime()}ASA.exports=aU.default});var SM=GA((oU,rSA)=>{"use strict";var eSA=at().default;Object.defineProperty(oU,"__esModule",{value:!0});oU.default=mQr;var hQr=eSA(An()),QQr=eSA(Ct());function mQr(A){(0,QQr.default)(1,arguments);var r=(0,hQr.default)(A);return r.setHours(0,0,0,0),r}rSA.exports=oU.default});var Z4=GA((sU,nSA)=>{"use strict";var NlA=at().default;Object.defineProperty(sU,"__esModule",{value:!0});sU.default=wQr;var tSA=NlA(B1()),iSA=NlA(SM()),DQr=NlA(Ct()),_Qr=864e5;function wQr(A,r){(0,DQr.default)(2,arguments);var t=(0,iSA.default)(A),i=(0,iSA.default)(r),o=t.getTime()-(0,tSA.default)(t),s=i.getTime()-(0,tSA.default)(i);return Math.round((o-s)/_Qr)}nSA.exports=sU.default});var PlA=GA((cU,oSA)=>{"use strict";var FM=at().default;Object.defineProperty(cU,"__esModule",{value:!0});cU.default=bQr;var vQr=FM(vo()),yQr=FM(An()),aSA=FM(P5()),CQr=FM(Z4()),IQr=FM(Ct());function bQr(A,r){(0,IQr.default)(2,arguments);var t=(0,yQr.default)(A),i=(0,vQr.default)(r),o=(0,CQr.default)(t,(0,aSA.default)(t)),s=new Date(0);return s.setFullYear(i,0,4),s.setHours(0,0,0,0),t=(0,aSA.default)(s),t.setDate(t.getDate()+o),t}oSA.exports=cU.default});var GlA=GA((uU,sSA)=>{"use strict";var lU=at().default;Object.defineProperty(uU,"__esModule",{value:!0});uU.default=HQr;var OQr=lU(vo()),MQr=lU(t2()),kQr=lU(PlA()),xQr=lU(Ct());function HQr(A,r){(0,xQr.default)(2,arguments);var t=(0,OQr.default)(r);return(0,kQr.default)(A,(0,MQr.default)(A)+t)}sSA.exports=uU.default});var dU=GA((gU,cSA)=>{"use strict";var YlA=at().default;Object.defineProperty(gU,"__esModule",{value:!0});gU.default=NQr;var SQr=YlA(vo()),FQr=YlA(N5()),RQr=YlA(Ct()),TQr=6e4;function NQr(A,r){(0,RQr.default)(2,arguments);var t=(0,SQr.default)(r);return(0,FQr.default)(A,t*TQr)}cSA.exports=gU.default});var EU=GA((pU,lSA)=>{"use strict";var UlA=at().default;Object.defineProperty(pU,"__esModule",{value:!0});pU.default=UQr;var PQr=UlA(vo()),GQr=UlA(F5()),YQr=UlA(Ct());function UQr(A,r){(0,YQr.default)(2,arguments);var t=(0,PQr.default)(r),i=t*3;return(0,GQr.default)(A,i)}lSA.exports=pU.default});var jlA=GA((fU,uSA)=>{"use strict";var LlA=at().default;Object.defineProperty(fU,"__esModule",{value:!0});fU.default=JQr;var LQr=LlA(vo()),jQr=LlA(N5()),WQr=LlA(Ct());function JQr(A,r){(0,WQr.default)(2,arguments);var t=(0,LQr.default)(r);return(0,jQr.default)(A,t*1e3)}uSA.exports=fU.default});var RM=GA((BU,gSA)=>{"use strict";var WlA=at().default;Object.defineProperty(BU,"__esModule",{value:!0});BU.default=KQr;var qQr=WlA(vo()),VQr=WlA(f1()),zQr=WlA(Ct());function KQr(A,r){(0,zQr.default)(2,arguments);var t=(0,qQr.default)(r),i=t*7;return(0,VQr.default)(A,i)}gSA.exports=BU.default});var qlA=GA((hU,dSA)=>{"use strict";var JlA=at().default;Object.defineProperty(hU,"__esModule",{value:!0});hU.default=A0r;var XQr=JlA(vo()),ZQr=JlA(F5()),$Qr=JlA(Ct());function A0r(A,r){(0,$Qr.default)(2,arguments);var t=(0,XQr.default)(r);return(0,ZQr.default)(A,t*12)}dSA.exports=hU.default});var fSA=GA((mU,ESA)=>{"use strict";var pSA=at().default;Object.defineProperty(mU,"__esModule",{value:!0});mU.default=r0r;var QU=pSA(An()),e0r=pSA(Ct());function r0r(A,r,t){(0,e0r.default)(2,arguments);var i=(0,QU.default)(A?.start).getTime(),o=(0,QU.default)(A?.end).getTime(),s=(0,QU.default)(r?.start).getTime(),g=(0,QU.default)(r?.end).getTime();if(!(i<=o&&s<=g))throw new RangeError("Invalid interval");return t!=null&&t.inclusive?i<=g&&s<=o:i{"use strict";var VlA=at().default;Object.defineProperty(DU,"__esModule",{value:!0});DU.default=a0r;var t0r=VlA(Wh()),i0r=VlA(An()),n0r=VlA(Ct());function a0r(A){(0,n0r.default)(1,arguments);var r;if(A&&typeof A.forEach=="function")r=A;else if((0,t0r.default)(A)==="object"&&A!==null)r=Array.prototype.slice.call(A);else return new Date(NaN);var t;return r.forEach(function(i){var o=(0,i0r.default)(i);(t===void 0||t{"use strict";var KlA=at().default;Object.defineProperty(_U,"__esModule",{value:!0});_U.default=l0r;var o0r=KlA(Wh()),s0r=KlA(An()),c0r=KlA(Ct());function l0r(A){(0,c0r.default)(1,arguments);var r;if(A&&typeof A.forEach=="function")r=A;else if((0,o0r.default)(A)==="object"&&A!==null)r=Array.prototype.slice.call(A);else return new Date(NaN);var t;return r.forEach(function(i){var o=(0,s0r.default)(i);(t===void 0||t>o||isNaN(o.getDate()))&&(t=o)}),t||new Date(NaN)}hSA.exports=_U.default});var mSA=GA((wU,QSA)=>{"use strict";var ZlA=at().default;Object.defineProperty(wU,"__esModule",{value:!0});wU.default=p0r;var u0r=ZlA(zlA()),g0r=ZlA(XlA()),d0r=ZlA(Ct());function p0r(A,r){var t=r.start,i=r.end;return(0,d0r.default)(2,arguments),(0,g0r.default)([(0,u0r.default)([A,t]),i])}QSA.exports=wU.default});var vSA=GA((vU,wSA)=>{"use strict";var _SA=at().default;Object.defineProperty(vU,"__esModule",{value:!0});vU.default=f0r;var DSA=_SA(An()),E0r=_SA(Ct());function f0r(A,r){(0,E0r.default)(2,arguments);var t=(0,DSA.default)(A);if(isNaN(Number(t)))return NaN;var i=t.getTime(),o;r==null?o=[]:typeof r.forEach=="function"?o=r:o=Array.prototype.slice.call(r);var s,g;return o.forEach(function(E,p){var B=(0,DSA.default)(E);if(isNaN(Number(B))){s=NaN,g=NaN;return}var m=Math.abs(i-B.getTime());(s==null||m{"use strict";var CSA=at().default;Object.defineProperty(yU,"__esModule",{value:!0});yU.default=h0r;var ySA=CSA(An()),B0r=CSA(Ct());function h0r(A,r){(0,B0r.default)(2,arguments);var t=(0,ySA.default)(A);if(isNaN(Number(t)))return new Date(NaN);var i=t.getTime(),o;r==null?o=[]:typeof r.forEach=="function"?o=r:o=Array.prototype.slice.call(r);var s,g;return o.forEach(function(E){var p=(0,ySA.default)(E);if(isNaN(Number(p))){s=new Date(NaN),g=NaN;return}var B=Math.abs(i-p.getTime());(s==null||B{"use strict";var MSA=at().default;Object.defineProperty(CU,"__esModule",{value:!0});CU.default=m0r;var OSA=MSA(An()),Q0r=MSA(Ct());function m0r(A,r){(0,Q0r.default)(2,arguments);var t=(0,OSA.default)(A),i=(0,OSA.default)(r),o=t.getTime()-i.getTime();return o<0?-1:o>0?1:o}kSA.exports=CU.default});var FSA=GA((IU,SSA)=>{"use strict";var HSA=at().default;Object.defineProperty(IU,"__esModule",{value:!0});IU.default=_0r;var xSA=HSA(An()),D0r=HSA(Ct());function _0r(A,r){(0,D0r.default)(2,arguments);var t=(0,xSA.default)(A),i=(0,xSA.default)(r),o=t.getTime()-i.getTime();return o>0?-1:o<0?1:o}SSA.exports=IU.default});var _u=GA(uc=>{"use strict";Object.defineProperty(uc,"__esModule",{value:!0});uc.secondsInYear=uc.secondsInWeek=uc.secondsInQuarter=uc.secondsInMonth=uc.secondsInMinute=uc.secondsInHour=uc.secondsInDay=uc.quartersInYear=uc.monthsInYear=uc.monthsInQuarter=uc.minutesInHour=uc.minTime=uc.millisecondsInSecond=uc.millisecondsInMinute=uc.millisecondsInHour=uc.maxTime=uc.daysInYear=uc.daysInWeek=void 0;var w0r=7;uc.daysInWeek=w0r;var RSA=365.2425;uc.daysInYear=RSA;var TSA=Math.pow(10,8)*24*60*60*1e3;uc.maxTime=TSA;var v0r=6e4;uc.millisecondsInMinute=v0r;var y0r=36e5;uc.millisecondsInHour=y0r;var C0r=1e3;uc.millisecondsInSecond=C0r;var I0r=-TSA;uc.minTime=I0r;var b0r=60;uc.minutesInHour=b0r;var O0r=3;uc.monthsInQuarter=O0r;var M0r=12;uc.monthsInYear=M0r;var k0r=4;uc.quartersInYear=k0r;var NSA=3600;uc.secondsInHour=NSA;var x0r=60;uc.secondsInMinute=x0r;var $lA=NSA*24;uc.secondsInDay=$lA;var H0r=$lA*7;uc.secondsInWeek=H0r;var PSA=$lA*RSA;uc.secondsInYear=PSA;var GSA=PSA/12;uc.secondsInMonth=GSA;var S0r=GSA*3;uc.secondsInQuarter=S0r});var USA=GA((bU,YSA)=>{"use strict";var F0r=at().default;Object.defineProperty(bU,"__esModule",{value:!0});bU.default=N0r;var R0r=F0r(Ct()),T0r=_u();function N0r(A){(0,R0r.default)(1,arguments);var r=A/T0r.daysInWeek;return Math.floor(r)}YSA.exports=bU.default});var G5=GA((OU,WSA)=>{"use strict";var jSA=at().default;Object.defineProperty(OU,"__esModule",{value:!0});OU.default=G0r;var LSA=jSA(SM()),P0r=jSA(Ct());function G0r(A,r){(0,P0r.default)(2,arguments);var t=(0,LSA.default)(A),i=(0,LSA.default)(r);return t.getTime()===i.getTime()}WSA.exports=OU.default});var AuA=GA((MU,qSA)=>{"use strict";var JSA=at().default;Object.defineProperty(MU,"__esModule",{value:!0});MU.default=L0r;var Y0r=JSA(Wh()),U0r=JSA(Ct());function L0r(A){return(0,U0r.default)(1,arguments),A instanceof Date||(0,Y0r.default)(A)==="object"&&Object.prototype.toString.call(A)==="[object Date]"}qSA.exports=MU.default});var $4=GA((kU,VSA)=>{"use strict";var euA=at().default;Object.defineProperty(kU,"__esModule",{value:!0});kU.default=q0r;var j0r=euA(AuA()),W0r=euA(An()),J0r=euA(Ct());function q0r(A){if((0,J0r.default)(1,arguments),!(0,j0r.default)(A)&&typeof A!="number")return!1;var r=(0,W0r.default)(A);return!isNaN(Number(r))}VSA.exports=kU.default});var $SA=GA((xU,ZSA)=>{"use strict";var Ow=at().default;Object.defineProperty(xU,"__esModule",{value:!0});xU.default=$0r;var zSA=Ow(f1()),V0r=Ow(Z4()),z0r=Ow(G5()),KSA=Ow($4()),K0r=Ow(HM()),XSA=Ow(An()),X0r=Ow(Ct()),Z0r=Ow(vo());function $0r(A,r){(0,X0r.default)(2,arguments);var t=(0,XSA.default)(A),i=(0,XSA.default)(r);if(!(0,KSA.default)(t)||!(0,KSA.default)(i))return NaN;var o=(0,V0r.default)(t,i),s=o<0?-1:1,g=(0,Z0r.default)(o/7),E=g*5;for(i=(0,zSA.default)(i,g*7);!(0,z0r.default)(t,i);)E+=(0,K0r.default)(i)?0:s,i=(0,zSA.default)(i,s);return E===0?0:E}ZSA.exports=xU.default});var ruA=GA((HU,rFA)=>{"use strict";var eFA=at().default;Object.defineProperty(HU,"__esModule",{value:!0});HU.default=emr;var AFA=eFA(t2()),Amr=eFA(Ct());function emr(A,r){return(0,Amr.default)(2,arguments),(0,AFA.default)(A)-(0,AFA.default)(r)}rFA.exports=HU.default});var aFA=GA((SU,nFA)=>{"use strict";var tuA=at().default;Object.defineProperty(SU,"__esModule",{value:!0});SU.default=imr;var tFA=tuA(B1()),iFA=tuA(Iw()),rmr=tuA(Ct()),tmr=6048e5;function imr(A,r){(0,rmr.default)(2,arguments);var t=(0,iFA.default)(A),i=(0,iFA.default)(r),o=t.getTime()-(0,tFA.default)(t),s=i.getTime()-(0,tFA.default)(i);return Math.round((o-s)/tmr)}nFA.exports=SU.default});var RU=GA((FU,cFA)=>{"use strict";var sFA=at().default;Object.defineProperty(FU,"__esModule",{value:!0});FU.default=amr;var oFA=sFA(An()),nmr=sFA(Ct());function amr(A,r){(0,nmr.default)(2,arguments);var t=(0,oFA.default)(A),i=(0,oFA.default)(r),o=t.getFullYear()-i.getFullYear(),s=t.getMonth()-i.getMonth();return o*12+s}cFA.exports=FU.default});var iuA=GA((TU,uFA)=>{"use strict";var lFA=at().default;Object.defineProperty(TU,"__esModule",{value:!0});TU.default=cmr;var omr=lFA(An()),smr=lFA(Ct());function cmr(A){(0,smr.default)(1,arguments);var r=(0,omr.default)(A),t=Math.floor(r.getMonth()/3)+1;return t}uFA.exports=TU.default});var auA=GA((NU,pFA)=>{"use strict";var nuA=at().default;Object.defineProperty(NU,"__esModule",{value:!0});NU.default=umr;var gFA=nuA(iuA()),dFA=nuA(An()),lmr=nuA(Ct());function umr(A,r){(0,lmr.default)(2,arguments);var t=(0,dFA.default)(A),i=(0,dFA.default)(r),o=t.getFullYear()-i.getFullYear(),s=(0,gFA.default)(t)-(0,gFA.default)(i);return o*4+s}pFA.exports=NU.default});var GU=GA((PU,BFA)=>{"use strict";var ouA=at().default;Object.defineProperty(PU,"__esModule",{value:!0});PU.default=pmr;var EFA=ouA(X4()),fFA=ouA(B1()),gmr=ouA(Ct()),dmr=6048e5;function pmr(A,r,t){(0,gmr.default)(2,arguments);var i=(0,EFA.default)(A,t),o=(0,EFA.default)(r,t),s=i.getTime()-(0,fFA.default)(i),g=o.getTime()-(0,fFA.default)(o);return Math.round((s-g)/dmr)}BFA.exports=PU.default});var UU=GA((YU,mFA)=>{"use strict";var QFA=at().default;Object.defineProperty(YU,"__esModule",{value:!0});YU.default=fmr;var hFA=QFA(An()),Emr=QFA(Ct());function fmr(A,r){(0,Emr.default)(2,arguments);var t=(0,hFA.default)(A),i=(0,hFA.default)(r);return t.getFullYear()-i.getFullYear()}mFA.exports=YU.default});var jU=GA((LU,wFA)=>{"use strict";var suA=at().default;Object.defineProperty(LU,"__esModule",{value:!0});LU.default=Qmr;var DFA=suA(An()),Bmr=suA(Z4()),hmr=suA(Ct());function _FA(A,r){var t=A.getFullYear()-r.getFullYear()||A.getMonth()-r.getMonth()||A.getDate()-r.getDate()||A.getHours()-r.getHours()||A.getMinutes()-r.getMinutes()||A.getSeconds()-r.getSeconds()||A.getMilliseconds()-r.getMilliseconds();return t<0?-1:t>0?1:t}function Qmr(A,r){(0,hmr.default)(2,arguments);var t=(0,DFA.default)(A),i=(0,DFA.default)(r),o=_FA(t,i),s=Math.abs((0,Bmr.default)(t,i));t.setDate(t.getDate()-o*s);var g=+(_FA(t,i)===-o),E=o*(s-g);return E===0?0:E}wFA.exports=LU.default});var TM=GA((WU,CFA)=>{"use strict";var yFA=at().default;Object.defineProperty(WU,"__esModule",{value:!0});WU.default=Dmr;var vFA=yFA(An()),mmr=yFA(Ct());function Dmr(A,r){return(0,mmr.default)(2,arguments),(0,vFA.default)(A).getTime()-(0,vFA.default)(r).getTime()}CFA.exports=WU.default});var i2=GA(cuA=>{"use strict";Object.defineProperty(cuA,"__esModule",{value:!0});cuA.getRoundingMethod=wmr;var IFA={ceil:Math.ceil,round:Math.round,floor:Math.floor,trunc:function(r){return r<0?Math.ceil(r):Math.floor(r)}},_mr="trunc";function wmr(A){return A?IFA[A]:IFA[_mr]}});var qU=GA((JU,OFA)=>{"use strict";var bFA=at().default;Object.defineProperty(JU,"__esModule",{value:!0});JU.default=bmr;var vmr=_u(),ymr=bFA(TM()),Cmr=bFA(Ct()),Imr=i2();function bmr(A,r,t){(0,Cmr.default)(2,arguments);var i=(0,ymr.default)(A,r)/vmr.millisecondsInHour;return(0,Imr.getRoundingMethod)(t?.roundingMethod)(i)}OFA.exports=JU.default});var uuA=GA((VU,MFA)=>{"use strict";var luA=at().default;Object.defineProperty(VU,"__esModule",{value:!0});VU.default=xmr;var Omr=luA(GlA()),Mmr=luA(Ct()),kmr=luA(vo());function xmr(A,r){(0,Mmr.default)(2,arguments);var t=(0,kmr.default)(r);return(0,Omr.default)(A,-t)}MFA.exports=VU.default});var SFA=GA((zU,HFA)=>{"use strict";var NM=at().default;Object.defineProperty(zU,"__esModule",{value:!0});zU.default=Rmr;var kFA=NM(An()),Hmr=NM(ruA()),xFA=NM(bw()),Smr=NM(uuA()),Fmr=NM(Ct());function Rmr(A,r){(0,Fmr.default)(2,arguments);var t=(0,kFA.default)(A),i=(0,kFA.default)(r),o=(0,xFA.default)(t,i),s=Math.abs((0,Hmr.default)(t,i));t=(0,Smr.default)(t,o*s);var g=+((0,xFA.default)(t,i)===-o),E=o*(s-g);return E===0?0:E}HFA.exports=zU.default});var XU=GA((KU,RFA)=>{"use strict";var FFA=at().default;Object.defineProperty(KU,"__esModule",{value:!0});KU.default=Ymr;var Tmr=_u(),Nmr=FFA(TM()),Pmr=FFA(Ct()),Gmr=i2();function Ymr(A,r,t){(0,Pmr.default)(2,arguments);var i=(0,Nmr.default)(A,r)/Tmr.millisecondsInMinute;return(0,Gmr.getRoundingMethod)(t?.roundingMethod)(i)}RFA.exports=KU.default});var $U=GA((ZU,NFA)=>{"use strict";var TFA=at().default;Object.defineProperty(ZU,"__esModule",{value:!0});ZU.default=jmr;var Umr=TFA(An()),Lmr=TFA(Ct());function jmr(A){(0,Lmr.default)(1,arguments);var r=(0,Umr.default)(A);return r.setHours(23,59,59,999),r}NFA.exports=ZU.default});var eL=GA((AL,GFA)=>{"use strict";var PFA=at().default;Object.defineProperty(AL,"__esModule",{value:!0});AL.default=qmr;var Wmr=PFA(An()),Jmr=PFA(Ct());function qmr(A){(0,Jmr.default)(1,arguments);var r=(0,Wmr.default)(A),t=r.getMonth();return r.setFullYear(r.getFullYear(),t+1,0),r.setHours(23,59,59,999),r}GFA.exports=AL.default});var guA=GA((tL,YFA)=>{"use strict";var rL=at().default;Object.defineProperty(tL,"__esModule",{value:!0});tL.default=Zmr;var Vmr=rL(An()),zmr=rL($U()),Kmr=rL(eL()),Xmr=rL(Ct());function Zmr(A){(0,Xmr.default)(1,arguments);var r=(0,Vmr.default)(A);return(0,zmr.default)(r).getTime()===(0,Kmr.default)(r).getTime()}YFA.exports=tL.default});var GM=GA((iL,UFA)=>{"use strict";var PM=at().default;Object.defineProperty(iL,"__esModule",{value:!0});iL.default=r1r;var duA=PM(An()),$mr=PM(RU()),puA=PM(bw()),A1r=PM(Ct()),e1r=PM(guA());function r1r(A,r){(0,A1r.default)(2,arguments);var t=(0,duA.default)(A),i=(0,duA.default)(r),o=(0,puA.default)(t,i),s=Math.abs((0,$mr.default)(t,i)),g;if(s<1)g=0;else{t.getMonth()===1&&t.getDate()>27&&t.setDate(30),t.setMonth(t.getMonth()-o*s);var E=(0,puA.default)(t,i)===-o;(0,e1r.default)((0,duA.default)(A))&&s===1&&(0,puA.default)(A,i)===1&&(E=!1),g=o*(s-Number(E))}return g===0?0:g}UFA.exports=iL.default});var WFA=GA((nL,jFA)=>{"use strict";var LFA=at().default;Object.defineProperty(nL,"__esModule",{value:!0});nL.default=a1r;var t1r=LFA(GM()),i1r=LFA(Ct()),n1r=i2();function a1r(A,r,t){(0,i1r.default)(2,arguments);var i=(0,t1r.default)(A,r)/3;return(0,n1r.getRoundingMethod)(t?.roundingMethod)(i)}jFA.exports=nL.default});var YM=GA((aL,qFA)=>{"use strict";var JFA=at().default;Object.defineProperty(aL,"__esModule",{value:!0});aL.default=l1r;var o1r=JFA(TM()),s1r=JFA(Ct()),c1r=i2();function l1r(A,r,t){(0,s1r.default)(2,arguments);var i=(0,o1r.default)(A,r)/1e3;return(0,c1r.getRoundingMethod)(t?.roundingMethod)(i)}qFA.exports=aL.default});var KFA=GA((oL,zFA)=>{"use strict";var VFA=at().default;Object.defineProperty(oL,"__esModule",{value:!0});oL.default=p1r;var u1r=VFA(jU()),g1r=VFA(Ct()),d1r=i2();function p1r(A,r,t){(0,g1r.default)(2,arguments);var i=(0,u1r.default)(A,r)/7;return(0,d1r.getRoundingMethod)(t?.roundingMethod)(i)}zFA.exports=oL.default});var EuA=GA((cL,$FA)=>{"use strict";var sL=at().default;Object.defineProperty(cL,"__esModule",{value:!0});cL.default=B1r;var XFA=sL(An()),E1r=sL(UU()),ZFA=sL(bw()),f1r=sL(Ct());function B1r(A,r){(0,f1r.default)(2,arguments);var t=(0,XFA.default)(A),i=(0,XFA.default)(r),o=(0,ZFA.default)(t,i),s=Math.abs((0,E1r.default)(t,i));t.setFullYear(1584),i.setFullYear(1584);var g=(0,ZFA.default)(t,i)===-o,E=o*(s-Number(g));return E===0?0:E}$FA.exports=cL.default});var BuA=GA((lL,eRA)=>{"use strict";var ARA=at().default;Object.defineProperty(lL,"__esModule",{value:!0});lL.default=Q1r;var fuA=ARA(An()),h1r=ARA(Ct());function Q1r(A,r){var t;(0,h1r.default)(1,arguments);var i=A||{},o=(0,fuA.default)(i.start),s=(0,fuA.default)(i.end),g=s.getTime();if(!(o.getTime()<=g))throw new RangeError("Invalid interval");var E=[],p=o;p.setHours(0,0,0,0);var B=Number((t=r?.step)!==null&&t!==void 0?t:1);if(B<1||isNaN(B))throw new RangeError("`options.step` must be a number greater than 1");for(;p.getTime()<=g;)E.push((0,fuA.default)(p)),p.setDate(p.getDate()+B),p.setHours(0,0,0,0);return E}eRA.exports=lL.default});var tRA=GA((uL,rRA)=>{"use strict";var QuA=at().default;Object.defineProperty(uL,"__esModule",{value:!0});uL.default=_1r;var m1r=QuA(AU()),huA=QuA(An()),D1r=QuA(Ct());function _1r(A,r){var t;(0,D1r.default)(1,arguments);var i=A||{},o=(0,huA.default)(i.start),s=(0,huA.default)(i.end),g=o.getTime(),E=s.getTime();if(!(g<=E))throw new RangeError("Invalid interval");var p=[],B=o;B.setMinutes(0,0,0);var m=Number((t=r?.step)!==null&&t!==void 0?t:1);if(m<1||isNaN(m))throw new RangeError("`options.step` must be a number greater than 1");for(;B.getTime()<=E;)p.push((0,huA.default)(B)),B=(0,m1r.default)(B,m);return p}rRA.exports=uL.default});var dL=GA((gL,nRA)=>{"use strict";var iRA=at().default;Object.defineProperty(gL,"__esModule",{value:!0});gL.default=y1r;var w1r=iRA(An()),v1r=iRA(Ct());function y1r(A){(0,v1r.default)(1,arguments);var r=(0,w1r.default)(A);return r.setSeconds(0,0),r}nRA.exports=gL.default});var oRA=GA((EL,aRA)=>{"use strict";var pL=at().default;Object.defineProperty(EL,"__esModule",{value:!0});EL.default=O1r;var C1r=pL(dU()),muA=pL(An()),I1r=pL(dL()),b1r=pL(Ct());function O1r(A,r){var t;(0,b1r.default)(1,arguments);var i=(0,I1r.default)((0,muA.default)(A.start)),o=(0,muA.default)(A.end),s=i.getTime(),g=o.getTime();if(s>=g)throw new RangeError("Invalid interval");var E=[],p=i,B=Number((t=r?.step)!==null&&t!==void 0?t:1);if(B<1||isNaN(B))throw new RangeError("`options.step` must be a number equal to or greater than 1");for(;p.getTime()<=g;)E.push((0,muA.default)(p)),p=(0,C1r.default)(p,B);return E}aRA.exports=EL.default});var lRA=GA((fL,cRA)=>{"use strict";var sRA=at().default;Object.defineProperty(fL,"__esModule",{value:!0});fL.default=k1r;var DuA=sRA(An()),M1r=sRA(Ct());function k1r(A){(0,M1r.default)(1,arguments);var r=A||{},t=(0,DuA.default)(r.start),i=(0,DuA.default)(r.end),o=i.getTime(),s=[];if(!(t.getTime()<=o))throw new RangeError("Invalid interval");var g=t;for(g.setHours(0,0,0,0),g.setDate(1);g.getTime()<=o;)s.push((0,DuA.default)(g)),g.setMonth(g.getMonth()+1);return s}cRA.exports=fL.default});var hL=GA((BL,gRA)=>{"use strict";var uRA=at().default;Object.defineProperty(BL,"__esModule",{value:!0});BL.default=S1r;var x1r=uRA(An()),H1r=uRA(Ct());function S1r(A){(0,H1r.default)(1,arguments);var r=(0,x1r.default)(A),t=r.getMonth(),i=t-t%3;return r.setMonth(i,1),r.setHours(0,0,0,0),r}gRA.exports=BL.default});var ERA=GA((mL,pRA)=>{"use strict";var QL=at().default;Object.defineProperty(mL,"__esModule",{value:!0});mL.default=T1r;var F1r=QL(EU()),dRA=QL(hL()),_uA=QL(An()),R1r=QL(Ct());function T1r(A){(0,R1r.default)(1,arguments);var r=A||{},t=(0,_uA.default)(r.start),i=(0,_uA.default)(r.end),o=i.getTime();if(!(t.getTime()<=o))throw new RangeError("Invalid interval");var s=(0,dRA.default)(t),g=(0,dRA.default)(i);o=g.getTime();for(var E=[],p=s;p.getTime()<=o;)E.push((0,_uA.default)(p)),p=(0,F1r.default)(p,1);return E}pRA.exports=mL.default});var hRA=GA((_L,BRA)=>{"use strict";var DL=at().default;Object.defineProperty(_L,"__esModule",{value:!0});_L.default=G1r;var N1r=DL(RM()),fRA=DL(X4()),wuA=DL(An()),P1r=DL(Ct());function G1r(A,r){(0,P1r.default)(1,arguments);var t=A||{},i=(0,wuA.default)(t.start),o=(0,wuA.default)(t.end),s=o.getTime();if(!(i.getTime()<=s))throw new RangeError("Invalid interval");var g=(0,fRA.default)(i,r),E=(0,fRA.default)(o,r);g.setHours(15),E.setHours(15),s=E.getTime();for(var p=[],B=g;B.getTime()<=s;)B.setHours(0),p.push((0,wuA.default)(B)),B=(0,N1r.default)(B,1),B.setHours(15);return p}BRA.exports=_L.default});var yL=GA((vL,QRA)=>{"use strict";var wL=at().default;Object.defineProperty(vL,"__esModule",{value:!0});vL.default=W1r;var Y1r=wL(BuA()),U1r=wL(zY()),L1r=wL(HM()),j1r=wL(Ct());function W1r(A){(0,j1r.default)(1,arguments);for(var r=(0,Y1r.default)(A),t=[],i=0;i{"use strict";var mRA=at().default;Object.defineProperty(CL,"__esModule",{value:!0});CL.default=V1r;var J1r=mRA(An()),q1r=mRA(Ct());function V1r(A){(0,q1r.default)(1,arguments);var r=(0,J1r.default)(A);return r.setDate(1),r.setHours(0,0,0,0),r}DRA.exports=CL.default});var wRA=GA((bL,_RA)=>{"use strict";var IL=at().default;Object.defineProperty(bL,"__esModule",{value:!0});bL.default=$1r;var z1r=IL(yL()),K1r=IL(UM()),X1r=IL(eL()),Z1r=IL(Ct());function $1r(A){(0,Z1r.default)(1,arguments);var r=(0,K1r.default)(A);if(isNaN(r.getTime()))throw new RangeError("The passed date is invalid");var t=(0,X1r.default)(A);return(0,z1r.default)({start:r,end:t})}_RA.exports=bL.default});var vuA=GA((OL,yRA)=>{"use strict";var vRA=at().default;Object.defineProperty(OL,"__esModule",{value:!0});OL.default=r4r;var A4r=vRA(An()),e4r=vRA(Ct());function r4r(A){(0,e4r.default)(1,arguments);var r=(0,A4r.default)(A),t=r.getFullYear();return r.setFullYear(t+1,0,0),r.setHours(23,59,59,999),r}yRA.exports=OL.default});var kL=GA((ML,IRA)=>{"use strict";var CRA=at().default;Object.defineProperty(ML,"__esModule",{value:!0});ML.default=n4r;var t4r=CRA(An()),i4r=CRA(Ct());function n4r(A){(0,i4r.default)(1,arguments);var r=(0,t4r.default)(A),t=new Date(0);return t.setFullYear(r.getFullYear(),0,1),t.setHours(0,0,0,0),t}IRA.exports=ML.default});var ORA=GA((HL,bRA)=>{"use strict";var xL=at().default;Object.defineProperty(HL,"__esModule",{value:!0});HL.default=l4r;var a4r=xL(yL()),o4r=xL(vuA()),s4r=xL(kL()),c4r=xL(Ct());function l4r(A){(0,c4r.default)(1,arguments);var r=(0,s4r.default)(A),t=(0,o4r.default)(A);return(0,a4r.default)({start:r,end:t})}bRA.exports=HL.default});var xRA=GA((SL,kRA)=>{"use strict";var MRA=at().default;Object.defineProperty(SL,"__esModule",{value:!0});SL.default=g4r;var yuA=MRA(An()),u4r=MRA(Ct());function g4r(A){(0,u4r.default)(1,arguments);var r=A||{},t=(0,yuA.default)(r.start),i=(0,yuA.default)(r.end),o=i.getTime();if(!(t.getTime()<=o))throw new RangeError("Invalid interval");var s=[],g=t;for(g.setHours(0,0,0,0),g.setMonth(0,1);g.getTime()<=o;)s.push((0,yuA.default)(g)),g.setFullYear(g.getFullYear()+1);return s}kRA.exports=SL.default});var FRA=GA((FL,SRA)=>{"use strict";var HRA=at().default;Object.defineProperty(FL,"__esModule",{value:!0});FL.default=E4r;var d4r=HRA(An()),p4r=HRA(Ct());function E4r(A){(0,p4r.default)(1,arguments);var r=(0,d4r.default)(A),t=r.getFullYear(),i=9+Math.floor(t/10)*10;return r.setFullYear(i,11,31),r.setHours(23,59,59,999),r}SRA.exports=FL.default});var NRA=GA((RL,TRA)=>{"use strict";var RRA=at().default;Object.defineProperty(RL,"__esModule",{value:!0});RL.default=h4r;var f4r=RRA(An()),B4r=RRA(Ct());function h4r(A){(0,B4r.default)(1,arguments);var r=(0,f4r.default)(A);return r.setMinutes(59,59,999),r}TRA.exports=RL.default});var IuA=GA((TL,PRA)=>{"use strict";var CuA=at().default;Object.defineProperty(TL,"__esModule",{value:!0});TL.default=w4r;var Q4r=ud(),m4r=CuA(An()),D4r=CuA(vo()),_4r=CuA(Ct());function w4r(A,r){var t,i,o,s,g,E,p,B;(0,_4r.default)(1,arguments);var m=(0,Q4r.getDefaultOptions)(),_=(0,D4r.default)((t=(i=(o=(s=r?.weekStartsOn)!==null&&s!==void 0?s:r==null||(g=r.locale)===null||g===void 0||(E=g.options)===null||E===void 0?void 0:E.weekStartsOn)!==null&&o!==void 0?o:m.weekStartsOn)!==null&&i!==void 0?i:(p=m.locale)===null||p===void 0||(B=p.options)===null||B===void 0?void 0:B.weekStartsOn)!==null&&t!==void 0?t:0);if(!(_>=0&&_<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var x=(0,m4r.default)(A),O=x.getDay(),k=(O<_?-7:0)+6-(O-_);return x.setDate(x.getDate()+k),x.setHours(23,59,59,999),x}PRA.exports=TL.default});var URA=GA((NL,YRA)=>{"use strict";var GRA=at().default;Object.defineProperty(NL,"__esModule",{value:!0});NL.default=C4r;var v4r=GRA(IuA()),y4r=GRA(Ct());function C4r(A){return(0,y4r.default)(1,arguments),(0,v4r.default)(A,{weekStartsOn:1})}YRA.exports=NL.default});var jRA=GA((PL,LRA)=>{"use strict";var buA=at().default;Object.defineProperty(PL,"__esModule",{value:!0});PL.default=M4r;var I4r=buA(t2()),b4r=buA(Iw()),O4r=buA(Ct());function M4r(A){(0,O4r.default)(1,arguments);var r=(0,I4r.default)(A),t=new Date(0);t.setFullYear(r+1,0,4),t.setHours(0,0,0,0);var i=(0,b4r.default)(t);return i.setMilliseconds(i.getMilliseconds()-1),i}LRA.exports=PL.default});var qRA=GA((GL,JRA)=>{"use strict";var WRA=at().default;Object.defineProperty(GL,"__esModule",{value:!0});GL.default=H4r;var k4r=WRA(An()),x4r=WRA(Ct());function H4r(A){(0,x4r.default)(1,arguments);var r=(0,k4r.default)(A);return r.setSeconds(59,999),r}JRA.exports=GL.default});var KRA=GA((YL,zRA)=>{"use strict";var VRA=at().default;Object.defineProperty(YL,"__esModule",{value:!0});YL.default=R4r;var S4r=VRA(An()),F4r=VRA(Ct());function R4r(A){(0,F4r.default)(1,arguments);var r=(0,S4r.default)(A),t=r.getMonth(),i=t-t%3+3;return r.setMonth(i,0),r.setHours(23,59,59,999),r}zRA.exports=YL.default});var $RA=GA((UL,ZRA)=>{"use strict";var XRA=at().default;Object.defineProperty(UL,"__esModule",{value:!0});UL.default=P4r;var T4r=XRA(An()),N4r=XRA(Ct());function P4r(A){(0,N4r.default)(1,arguments);var r=(0,T4r.default)(A);return r.setMilliseconds(999),r}ZRA.exports=UL.default});var eTA=GA((LL,ATA)=>{"use strict";var G4r=at().default;Object.defineProperty(LL,"__esModule",{value:!0});LL.default=U4r;var Y4r=G4r($U());function U4r(){return(0,Y4r.default)(Date.now())}ATA.exports=LL.default});var tTA=GA((jL,rTA)=>{"use strict";Object.defineProperty(jL,"__esModule",{value:!0});jL.default=L4r;function L4r(){var A=new Date,r=A.getFullYear(),t=A.getMonth(),i=A.getDate(),o=new Date(0);return o.setFullYear(r,t,i+1),o.setHours(23,59,59,999),o}rTA.exports=jL.default});var nTA=GA((WL,iTA)=>{"use strict";Object.defineProperty(WL,"__esModule",{value:!0});WL.default=j4r;function j4r(){var A=new Date,r=A.getFullYear(),t=A.getMonth(),i=A.getDate(),o=new Date(0);return o.setFullYear(r,t,i-1),o.setHours(23,59,59,999),o}iTA.exports=WL.default});var Y5=GA((JL,aTA)=>{"use strict";var OuA=at().default;Object.defineProperty(JL,"__esModule",{value:!0});JL.default=V4r;var W4r=OuA(N5()),J4r=OuA(Ct()),q4r=OuA(vo());function V4r(A,r){(0,J4r.default)(2,arguments);var t=(0,q4r.default)(r);return(0,W4r.default)(A,-t)}aTA.exports=JL.default});var cTA=GA((qL,sTA)=>{"use strict";var oTA=at().default;Object.defineProperty(qL,"__esModule",{value:!0});qL.default=Z4r;var z4r=oTA(An()),K4r=oTA(Ct()),X4r=864e5;function Z4r(A){(0,K4r.default)(1,arguments);var r=(0,z4r.default)(A),t=r.getTime();r.setUTCMonth(0,1),r.setUTCHours(0,0,0,0);var i=r.getTime(),o=t-i;return Math.floor(o/X4r)+1}sTA.exports=qL.default});var U5=GA((VL,uTA)=>{"use strict";var lTA=at().default;Object.defineProperty(VL,"__esModule",{value:!0});VL.default=eDr;var $4r=lTA(An()),ADr=lTA(Ct());function eDr(A){(0,ADr.default)(1,arguments);var r=1,t=(0,$4r.default)(A),i=t.getUTCDay(),o=(i{"use strict";var MuA=at().default;Object.defineProperty(zL,"__esModule",{value:!0});zL.default=iDr;var rDr=MuA(An()),tDr=MuA(Ct()),gTA=MuA(U5());function iDr(A){(0,tDr.default)(1,arguments);var r=(0,rDr.default)(A),t=r.getUTCFullYear(),i=new Date(0);i.setUTCFullYear(t+1,0,4),i.setUTCHours(0,0,0,0);var o=(0,gTA.default)(i),s=new Date(0);s.setUTCFullYear(t,0,4),s.setUTCHours(0,0,0,0);var g=(0,gTA.default)(s);return r.getTime()>=o.getTime()?t+1:r.getTime()>=g.getTime()?t:t-1}dTA.exports=zL.default});var ETA=GA((KL,pTA)=>{"use strict";var xuA=at().default;Object.defineProperty(KL,"__esModule",{value:!0});KL.default=sDr;var nDr=xuA(kuA()),aDr=xuA(U5()),oDr=xuA(Ct());function sDr(A){(0,oDr.default)(1,arguments);var r=(0,nDr.default)(A),t=new Date(0);t.setUTCFullYear(r,0,4),t.setUTCHours(0,0,0,0);var i=(0,aDr.default)(t);return i}pTA.exports=KL.default});var HuA=GA((ZL,fTA)=>{"use strict";var XL=at().default;Object.defineProperty(ZL,"__esModule",{value:!0});ZL.default=pDr;var cDr=XL(An()),lDr=XL(U5()),uDr=XL(ETA()),gDr=XL(Ct()),dDr=6048e5;function pDr(A){(0,gDr.default)(1,arguments);var r=(0,cDr.default)(A),t=(0,lDr.default)(r).getTime()-(0,uDr.default)(r).getTime();return Math.round(t/dDr)+1}fTA.exports=ZL.default});var L5=GA(($L,BTA)=>{"use strict";var SuA=at().default;Object.defineProperty($L,"__esModule",{value:!0});$L.default=QDr;var EDr=SuA(An()),fDr=SuA(Ct()),BDr=SuA(vo()),hDr=ud();function QDr(A,r){var t,i,o,s,g,E,p,B;(0,fDr.default)(1,arguments);var m=(0,hDr.getDefaultOptions)(),_=(0,BDr.default)((t=(i=(o=(s=r?.weekStartsOn)!==null&&s!==void 0?s:r==null||(g=r.locale)===null||g===void 0||(E=g.options)===null||E===void 0?void 0:E.weekStartsOn)!==null&&o!==void 0?o:m.weekStartsOn)!==null&&i!==void 0?i:(p=m.locale)===null||p===void 0||(B=p.options)===null||B===void 0?void 0:B.weekStartsOn)!==null&&t!==void 0?t:0);if(!(_>=0&&_<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var x=(0,EDr.default)(A),O=x.getUTCDay(),k=(O<_?7:0)+O-_;return x.setUTCDate(x.getUTCDate()-k),x.setUTCHours(0,0,0,0),x}BTA.exports=$L.default});var rj=GA((ej,QTA)=>{"use strict";var Aj=at().default;Object.defineProperty(ej,"__esModule",{value:!0});ej.default=vDr;var mDr=Aj(An()),DDr=Aj(Ct()),hTA=Aj(L5()),_Dr=Aj(vo()),wDr=ud();function vDr(A,r){var t,i,o,s,g,E,p,B;(0,DDr.default)(1,arguments);var m=(0,mDr.default)(A),_=m.getUTCFullYear(),x=(0,wDr.getDefaultOptions)(),O=(0,_Dr.default)((t=(i=(o=(s=r?.firstWeekContainsDate)!==null&&s!==void 0?s:r==null||(g=r.locale)===null||g===void 0||(E=g.options)===null||E===void 0?void 0:E.firstWeekContainsDate)!==null&&o!==void 0?o:x.firstWeekContainsDate)!==null&&i!==void 0?i:(p=x.locale)===null||p===void 0||(B=p.options)===null||B===void 0?void 0:B.firstWeekContainsDate)!==null&&t!==void 0?t:1);if(!(O>=1&&O<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var k=new Date(0);k.setUTCFullYear(_+1,0,O),k.setUTCHours(0,0,0,0);var P=(0,hTA.default)(k,r),H=new Date(0);H.setUTCFullYear(_,0,O),H.setUTCHours(0,0,0,0);var T=(0,hTA.default)(H,r);return m.getTime()>=P.getTime()?_+1:m.getTime()>=T.getTime()?_:_-1}QTA.exports=ej.default});var DTA=GA((ij,mTA)=>{"use strict";var tj=at().default;Object.defineProperty(ij,"__esModule",{value:!0});ij.default=MDr;var yDr=tj(rj()),CDr=tj(Ct()),IDr=tj(L5()),bDr=tj(vo()),ODr=ud();function MDr(A,r){var t,i,o,s,g,E,p,B;(0,CDr.default)(1,arguments);var m=(0,ODr.getDefaultOptions)(),_=(0,bDr.default)((t=(i=(o=(s=r?.firstWeekContainsDate)!==null&&s!==void 0?s:r==null||(g=r.locale)===null||g===void 0||(E=g.options)===null||E===void 0?void 0:E.firstWeekContainsDate)!==null&&o!==void 0?o:m.firstWeekContainsDate)!==null&&i!==void 0?i:(p=m.locale)===null||p===void 0||(B=p.options)===null||B===void 0?void 0:B.firstWeekContainsDate)!==null&&t!==void 0?t:1),x=(0,yDr.default)(A,r),O=new Date(0);O.setUTCFullYear(x,0,_),O.setUTCHours(0,0,0,0);var k=(0,IDr.default)(O,r);return k}mTA.exports=ij.default});var FuA=GA((aj,_TA)=>{"use strict";var nj=at().default;Object.defineProperty(aj,"__esModule",{value:!0});aj.default=RDr;var kDr=nj(An()),xDr=nj(L5()),HDr=nj(DTA()),SDr=nj(Ct()),FDr=6048e5;function RDr(A,r){(0,SDr.default)(1,arguments);var t=(0,kDr.default)(A),i=(0,xDr.default)(t,r).getTime()-(0,HDr.default)(t,r).getTime();return Math.round(i/FDr)+1}_TA.exports=aj.default});var n2=GA((oj,wTA)=>{"use strict";Object.defineProperty(oj,"__esModule",{value:!0});oj.default=TDr;function TDr(A,r){for(var t=A<0?"-":"",i=Math.abs(A).toString();i.length{"use strict";var NDr=at().default;Object.defineProperty(LM,"__esModule",{value:!0});LM.default=void 0;var Mw=NDr(n2()),PDr={y:function(r,t){var i=r.getUTCFullYear(),o=i>0?i:1-i;return(0,Mw.default)(t==="yy"?o%100:o,t.length)},M:function(r,t){var i=r.getUTCMonth();return t==="M"?String(i+1):(0,Mw.default)(i+1,2)},d:function(r,t){return(0,Mw.default)(r.getUTCDate(),t.length)},a:function(r,t){var i=r.getUTCHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return i.toUpperCase();case"aaa":return i;case"aaaaa":return i[0];case"aaaa":default:return i==="am"?"a.m.":"p.m."}},h:function(r,t){return(0,Mw.default)(r.getUTCHours()%12||12,t.length)},H:function(r,t){return(0,Mw.default)(r.getUTCHours(),t.length)},m:function(r,t){return(0,Mw.default)(r.getUTCMinutes(),t.length)},s:function(r,t){return(0,Mw.default)(r.getUTCSeconds(),t.length)},S:function(r,t){var i=t.length,o=r.getUTCMilliseconds(),s=Math.floor(o*Math.pow(10,i-3));return(0,Mw.default)(s,t.length)}},GDr=PDr;LM.default=GDr;vTA.exports=LM.default});var bTA=GA((jM,ITA)=>{"use strict";var o2=at().default;Object.defineProperty(jM,"__esModule",{value:!0});jM.default=void 0;var YDr=o2(cTA()),UDr=o2(HuA()),LDr=o2(kuA()),jDr=o2(FuA()),WDr=o2(rj()),gd=o2(n2()),kw=o2(RuA()),j5={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},JDr={G:function(r,t,i){var o=r.getUTCFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return i.era(o,{width:"abbreviated"});case"GGGGG":return i.era(o,{width:"narrow"});case"GGGG":default:return i.era(o,{width:"wide"})}},y:function(r,t,i){if(t==="yo"){var o=r.getUTCFullYear(),s=o>0?o:1-o;return i.ordinalNumber(s,{unit:"year"})}return kw.default.y(r,t)},Y:function(r,t,i,o){var s=(0,WDr.default)(r,o),g=s>0?s:1-s;if(t==="YY"){var E=g%100;return(0,gd.default)(E,2)}return t==="Yo"?i.ordinalNumber(g,{unit:"year"}):(0,gd.default)(g,t.length)},R:function(r,t){var i=(0,LDr.default)(r);return(0,gd.default)(i,t.length)},u:function(r,t){var i=r.getUTCFullYear();return(0,gd.default)(i,t.length)},Q:function(r,t,i){var o=Math.ceil((r.getUTCMonth()+1)/3);switch(t){case"Q":return String(o);case"QQ":return(0,gd.default)(o,2);case"Qo":return i.ordinalNumber(o,{unit:"quarter"});case"QQQ":return i.quarter(o,{width:"abbreviated",context:"formatting"});case"QQQQQ":return i.quarter(o,{width:"narrow",context:"formatting"});case"QQQQ":default:return i.quarter(o,{width:"wide",context:"formatting"})}},q:function(r,t,i){var o=Math.ceil((r.getUTCMonth()+1)/3);switch(t){case"q":return String(o);case"qq":return(0,gd.default)(o,2);case"qo":return i.ordinalNumber(o,{unit:"quarter"});case"qqq":return i.quarter(o,{width:"abbreviated",context:"standalone"});case"qqqqq":return i.quarter(o,{width:"narrow",context:"standalone"});case"qqqq":default:return i.quarter(o,{width:"wide",context:"standalone"})}},M:function(r,t,i){var o=r.getUTCMonth();switch(t){case"M":case"MM":return kw.default.M(r,t);case"Mo":return i.ordinalNumber(o+1,{unit:"month"});case"MMM":return i.month(o,{width:"abbreviated",context:"formatting"});case"MMMMM":return i.month(o,{width:"narrow",context:"formatting"});case"MMMM":default:return i.month(o,{width:"wide",context:"formatting"})}},L:function(r,t,i){var o=r.getUTCMonth();switch(t){case"L":return String(o+1);case"LL":return(0,gd.default)(o+1,2);case"Lo":return i.ordinalNumber(o+1,{unit:"month"});case"LLL":return i.month(o,{width:"abbreviated",context:"standalone"});case"LLLLL":return i.month(o,{width:"narrow",context:"standalone"});case"LLLL":default:return i.month(o,{width:"wide",context:"standalone"})}},w:function(r,t,i,o){var s=(0,jDr.default)(r,o);return t==="wo"?i.ordinalNumber(s,{unit:"week"}):(0,gd.default)(s,t.length)},I:function(r,t,i){var o=(0,UDr.default)(r);return t==="Io"?i.ordinalNumber(o,{unit:"week"}):(0,gd.default)(o,t.length)},d:function(r,t,i){return t==="do"?i.ordinalNumber(r.getUTCDate(),{unit:"date"}):kw.default.d(r,t)},D:function(r,t,i){var o=(0,YDr.default)(r);return t==="Do"?i.ordinalNumber(o,{unit:"dayOfYear"}):(0,gd.default)(o,t.length)},E:function(r,t,i){var o=r.getUTCDay();switch(t){case"E":case"EE":case"EEE":return i.day(o,{width:"abbreviated",context:"formatting"});case"EEEEE":return i.day(o,{width:"narrow",context:"formatting"});case"EEEEEE":return i.day(o,{width:"short",context:"formatting"});case"EEEE":default:return i.day(o,{width:"wide",context:"formatting"})}},e:function(r,t,i,o){var s=r.getUTCDay(),g=(s-o.weekStartsOn+8)%7||7;switch(t){case"e":return String(g);case"ee":return(0,gd.default)(g,2);case"eo":return i.ordinalNumber(g,{unit:"day"});case"eee":return i.day(s,{width:"abbreviated",context:"formatting"});case"eeeee":return i.day(s,{width:"narrow",context:"formatting"});case"eeeeee":return i.day(s,{width:"short",context:"formatting"});case"eeee":default:return i.day(s,{width:"wide",context:"formatting"})}},c:function(r,t,i,o){var s=r.getUTCDay(),g=(s-o.weekStartsOn+8)%7||7;switch(t){case"c":return String(g);case"cc":return(0,gd.default)(g,t.length);case"co":return i.ordinalNumber(g,{unit:"day"});case"ccc":return i.day(s,{width:"abbreviated",context:"standalone"});case"ccccc":return i.day(s,{width:"narrow",context:"standalone"});case"cccccc":return i.day(s,{width:"short",context:"standalone"});case"cccc":default:return i.day(s,{width:"wide",context:"standalone"})}},i:function(r,t,i){var o=r.getUTCDay(),s=o===0?7:o;switch(t){case"i":return String(s);case"ii":return(0,gd.default)(s,t.length);case"io":return i.ordinalNumber(s,{unit:"day"});case"iii":return i.day(o,{width:"abbreviated",context:"formatting"});case"iiiii":return i.day(o,{width:"narrow",context:"formatting"});case"iiiiii":return i.day(o,{width:"short",context:"formatting"});case"iiii":default:return i.day(o,{width:"wide",context:"formatting"})}},a:function(r,t,i){var o=r.getUTCHours(),s=o/12>=1?"pm":"am";switch(t){case"a":case"aa":return i.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"aaa":return i.dayPeriod(s,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return i.dayPeriod(s,{width:"narrow",context:"formatting"});case"aaaa":default:return i.dayPeriod(s,{width:"wide",context:"formatting"})}},b:function(r,t,i){var o=r.getUTCHours(),s;switch(o===12?s=j5.noon:o===0?s=j5.midnight:s=o/12>=1?"pm":"am",t){case"b":case"bb":return i.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"bbb":return i.dayPeriod(s,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return i.dayPeriod(s,{width:"narrow",context:"formatting"});case"bbbb":default:return i.dayPeriod(s,{width:"wide",context:"formatting"})}},B:function(r,t,i){var o=r.getUTCHours(),s;switch(o>=17?s=j5.evening:o>=12?s=j5.afternoon:o>=4?s=j5.morning:s=j5.night,t){case"B":case"BB":case"BBB":return i.dayPeriod(s,{width:"abbreviated",context:"formatting"});case"BBBBB":return i.dayPeriod(s,{width:"narrow",context:"formatting"});case"BBBB":default:return i.dayPeriod(s,{width:"wide",context:"formatting"})}},h:function(r,t,i){if(t==="ho"){var o=r.getUTCHours()%12;return o===0&&(o=12),i.ordinalNumber(o,{unit:"hour"})}return kw.default.h(r,t)},H:function(r,t,i){return t==="Ho"?i.ordinalNumber(r.getUTCHours(),{unit:"hour"}):kw.default.H(r,t)},K:function(r,t,i){var o=r.getUTCHours()%12;return t==="Ko"?i.ordinalNumber(o,{unit:"hour"}):(0,gd.default)(o,t.length)},k:function(r,t,i){var o=r.getUTCHours();return o===0&&(o=24),t==="ko"?i.ordinalNumber(o,{unit:"hour"}):(0,gd.default)(o,t.length)},m:function(r,t,i){return t==="mo"?i.ordinalNumber(r.getUTCMinutes(),{unit:"minute"}):kw.default.m(r,t)},s:function(r,t,i){return t==="so"?i.ordinalNumber(r.getUTCSeconds(),{unit:"second"}):kw.default.s(r,t)},S:function(r,t){return kw.default.S(r,t)},X:function(r,t,i,o){var s=o._originalDate||r,g=s.getTimezoneOffset();if(g===0)return"Z";switch(t){case"X":return CTA(g);case"XXXX":case"XX":return a2(g);case"XXXXX":case"XXX":default:return a2(g,":")}},x:function(r,t,i,o){var s=o._originalDate||r,g=s.getTimezoneOffset();switch(t){case"x":return CTA(g);case"xxxx":case"xx":return a2(g);case"xxxxx":case"xxx":default:return a2(g,":")}},O:function(r,t,i,o){var s=o._originalDate||r,g=s.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+yTA(g,":");case"OOOO":default:return"GMT"+a2(g,":")}},z:function(r,t,i,o){var s=o._originalDate||r,g=s.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+yTA(g,":");case"zzzz":default:return"GMT"+a2(g,":")}},t:function(r,t,i,o){var s=o._originalDate||r,g=Math.floor(s.getTime()/1e3);return(0,gd.default)(g,t.length)},T:function(r,t,i,o){var s=o._originalDate||r,g=s.getTime();return(0,gd.default)(g,t.length)}};function yTA(A,r){var t=A>0?"-":"+",i=Math.abs(A),o=Math.floor(i/60),s=i%60;if(s===0)return t+String(o);var g=r||"";return t+String(o)+g+(0,gd.default)(s,2)}function CTA(A,r){if(A%60===0){var t=A>0?"-":"+";return t+(0,gd.default)(Math.abs(A)/60,2)}return a2(A,r)}function a2(A,r){var t=r||"",i=A>0?"-":"+",o=Math.abs(A),s=(0,gd.default)(Math.floor(o/60),2),g=(0,gd.default)(o%60,2);return i+s+t+g}var qDr=JDr;jM.default=qDr;ITA.exports=jM.default});var TuA=GA((WM,kTA)=>{"use strict";Object.defineProperty(WM,"__esModule",{value:!0});WM.default=void 0;var OTA=function(r,t){switch(r){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},MTA=function(r,t){switch(r){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},VDr=function(r,t){var i=r.match(/(P+)(p+)?/)||[],o=i[1],s=i[2];if(!s)return OTA(r,t);var g;switch(o){case"P":g=t.dateTime({width:"short"});break;case"PP":g=t.dateTime({width:"medium"});break;case"PPP":g=t.dateTime({width:"long"});break;case"PPPP":default:g=t.dateTime({width:"full"});break}return g.replace("{{date}}",OTA(o,t)).replace("{{time}}",MTA(s,t))},zDr={p:MTA,P:VDr},KDr=zDr;WM.default=KDr;kTA.exports=WM.default});var NuA=GA(JM=>{"use strict";Object.defineProperty(JM,"__esModule",{value:!0});JM.isProtectedDayOfYearToken=$Dr;JM.isProtectedWeekYearToken=A_r;JM.throwProtectedError=e_r;var XDr=["D","DD"],ZDr=["YY","YYYY"];function $Dr(A){return XDr.indexOf(A)!==-1}function A_r(A){return ZDr.indexOf(A)!==-1}function e_r(A,r,t){if(A==="YYYY")throw new RangeError("Use `yyyy` instead of `YYYY` (in `".concat(r,"`) for formatting years to the input `").concat(t,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if(A==="YY")throw new RangeError("Use `yy` instead of `YY` (in `".concat(r,"`) for formatting years to the input `").concat(t,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if(A==="D")throw new RangeError("Use `d` instead of `D` (in `".concat(r,"`) for formatting days of the month to the input `").concat(t,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if(A==="DD")throw new RangeError("Use `dd` instead of `DD` (in `".concat(r,"`) for formatting days of the month to the input `").concat(t,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"))}});var HTA=GA((qM,xTA)=>{"use strict";Object.defineProperty(qM,"__esModule",{value:!0});qM.default=void 0;var r_r={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},t_r=function(r,t,i){var o,s=r_r[r];return typeof s=="string"?o=s:t===1?o=s.one:o=s.other.replace("{{count}}",t.toString()),i!=null&&i.addSuffix?i.comparison&&i.comparison>0?"in "+o:o+" ago":o},i_r=t_r;qM.default=i_r;xTA.exports=qM.default});var FTA=GA((sj,STA)=>{"use strict";Object.defineProperty(sj,"__esModule",{value:!0});sj.default=n_r;function n_r(A){return function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=r.width?String(r.width):A.defaultWidth,i=A.formats[t]||A.formats[A.defaultWidth];return i}}STA.exports=sj.default});var TTA=GA((VM,RTA)=>{"use strict";var a_r=at().default;Object.defineProperty(VM,"__esModule",{value:!0});VM.default=void 0;var PuA=a_r(FTA()),o_r={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},s_r={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},c_r={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},l_r={date:(0,PuA.default)({formats:o_r,defaultWidth:"full"}),time:(0,PuA.default)({formats:s_r,defaultWidth:"full"}),dateTime:(0,PuA.default)({formats:c_r,defaultWidth:"full"})},u_r=l_r;VM.default=u_r;RTA.exports=VM.default});var PTA=GA((zM,NTA)=>{"use strict";Object.defineProperty(zM,"__esModule",{value:!0});zM.default=void 0;var g_r={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},d_r=function(r,t,i,o){return g_r[r]},p_r=d_r;zM.default=p_r;NTA.exports=zM.default});var YTA=GA((cj,GTA)=>{"use strict";Object.defineProperty(cj,"__esModule",{value:!0});cj.default=E_r;function E_r(A){return function(r,t){var i=t!=null&&t.context?String(t.context):"standalone",o;if(i==="formatting"&&A.formattingValues){var s=A.defaultFormattingWidth||A.defaultWidth,g=t!=null&&t.width?String(t.width):s;o=A.formattingValues[g]||A.formattingValues[s]}else{var E=A.defaultWidth,p=t!=null&&t.width?String(t.width):A.defaultWidth;o=A.values[p]||A.values[E]}var B=A.argumentCallback?A.argumentCallback(r):r;return o[B]}}GTA.exports=cj.default});var LTA=GA((XM,UTA)=>{"use strict";var f_r=at().default;Object.defineProperty(XM,"__esModule",{value:!0});XM.default=void 0;var KM=f_r(YTA()),B_r={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},h_r={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Q_r={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},m_r={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},D_r={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},__r={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},w_r=function(r,t){var i=Number(r),o=i%100;if(o>20||o<10)switch(o%10){case 1:return i+"st";case 2:return i+"nd";case 3:return i+"rd"}return i+"th"},v_r={ordinalNumber:w_r,era:(0,KM.default)({values:B_r,defaultWidth:"wide"}),quarter:(0,KM.default)({values:h_r,defaultWidth:"wide",argumentCallback:function(r){return r-1}}),month:(0,KM.default)({values:Q_r,defaultWidth:"wide"}),day:(0,KM.default)({values:m_r,defaultWidth:"wide"}),dayPeriod:(0,KM.default)({values:D_r,defaultWidth:"wide",formattingValues:__r,defaultFormattingWidth:"wide"})},y_r=v_r;XM.default=y_r;UTA.exports=XM.default});var WTA=GA((lj,jTA)=>{"use strict";Object.defineProperty(lj,"__esModule",{value:!0});lj.default=C_r;function C_r(A){return function(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=t.width,o=i&&A.matchPatterns[i]||A.matchPatterns[A.defaultMatchWidth],s=r.match(o);if(!s)return null;var g=s[0],E=i&&A.parsePatterns[i]||A.parsePatterns[A.defaultParseWidth],p=Array.isArray(E)?b_r(E,function(_){return _.test(g)}):I_r(E,function(_){return _.test(g)}),B;B=A.valueCallback?A.valueCallback(p):p,B=t.valueCallback?t.valueCallback(B):B;var m=r.slice(g.length);return{value:B,rest:m}}}function I_r(A,r){for(var t in A)if(A.hasOwnProperty(t)&&r(A[t]))return t}function b_r(A,r){for(var t=0;t{"use strict";Object.defineProperty(uj,"__esModule",{value:!0});uj.default=O_r;function O_r(A){return function(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=r.match(A.matchPattern);if(!i)return null;var o=i[0],s=r.match(A.parsePattern);if(!s)return null;var g=A.valueCallback?A.valueCallback(s[0]):s[0];g=t.valueCallback?t.valueCallback(g):g;var E=r.slice(o.length);return{value:g,rest:E}}}JTA.exports=uj.default});var KTA=GA(($M,zTA)=>{"use strict";var VTA=at().default;Object.defineProperty($M,"__esModule",{value:!0});$M.default=void 0;var ZM=VTA(WTA()),M_r=VTA(qTA()),k_r=/^(\d+)(th|st|nd|rd)?/i,x_r=/\d+/i,H_r={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},S_r={any:[/^b/i,/^(a|c)/i]},F_r={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},R_r={any:[/1/i,/2/i,/3/i,/4/i]},T_r={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},N_r={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},P_r={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},G_r={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},Y_r={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},U_r={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},L_r={ordinalNumber:(0,M_r.default)({matchPattern:k_r,parsePattern:x_r,valueCallback:function(r){return parseInt(r,10)}}),era:(0,ZM.default)({matchPatterns:H_r,defaultMatchWidth:"wide",parsePatterns:S_r,defaultParseWidth:"any"}),quarter:(0,ZM.default)({matchPatterns:F_r,defaultMatchWidth:"wide",parsePatterns:R_r,defaultParseWidth:"any",valueCallback:function(r){return r+1}}),month:(0,ZM.default)({matchPatterns:T_r,defaultMatchWidth:"wide",parsePatterns:N_r,defaultParseWidth:"any"}),day:(0,ZM.default)({matchPatterns:P_r,defaultMatchWidth:"wide",parsePatterns:G_r,defaultParseWidth:"any"}),dayPeriod:(0,ZM.default)({matchPatterns:Y_r,defaultMatchWidth:"any",parsePatterns:U_r,defaultParseWidth:"any"})},j_r=L_r;$M.default=j_r;zTA.exports=$M.default});var ZTA=GA((ek,XTA)=>{"use strict";var Ak=at().default;Object.defineProperty(ek,"__esModule",{value:!0});ek.default=void 0;var W_r=Ak(HTA()),J_r=Ak(TTA()),q_r=Ak(PTA()),V_r=Ak(LTA()),z_r=Ak(KTA()),K_r={code:"en-US",formatDistance:W_r.default,formatLong:J_r.default,formatRelative:q_r.default,localize:V_r.default,match:z_r.default,options:{weekStartsOn:0,firstWeekContainsDate:1}},X_r=K_r;ek.default=X_r;XTA.exports=ek.default});var s2=GA((rk,$TA)=>{"use strict";var Z_r=at().default;Object.defineProperty(rk,"__esModule",{value:!0});rk.default=void 0;var $_r=Z_r(ZTA()),Awr=$_r.default;rk.default=Awr;$TA.exports=rk.default});var GuA=GA((dj,eNA)=>{"use strict";var AD=at().default;Object.defineProperty(dj,"__esModule",{value:!0});dj.default=Ewr;var ewr=AD($4()),rwr=AD(Y5()),twr=AD(An()),iwr=AD(bTA()),nwr=AD(TuA()),awr=AD(B1()),gj=NuA(),ANA=AD(vo()),owr=AD(Ct()),swr=ud(),cwr=AD(s2()),lwr=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,uwr=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,gwr=/^'([^]*?)'?$/,dwr=/''/g,pwr=/[a-zA-Z]/;function Ewr(A,r,t){var i,o,s,g,E,p,B,m,_,x,O,k,P,H,T,v,F,y;(0,owr.default)(2,arguments);var S=String(r),U=(0,swr.getDefaultOptions)(),V=(i=(o=t?.locale)!==null&&o!==void 0?o:U.locale)!==null&&i!==void 0?i:cwr.default,wA=(0,ANA.default)((s=(g=(E=(p=t?.firstWeekContainsDate)!==null&&p!==void 0?p:t==null||(B=t.locale)===null||B===void 0||(m=B.options)===null||m===void 0?void 0:m.firstWeekContainsDate)!==null&&E!==void 0?E:U.firstWeekContainsDate)!==null&&g!==void 0?g:(_=U.locale)===null||_===void 0||(x=_.options)===null||x===void 0?void 0:x.firstWeekContainsDate)!==null&&s!==void 0?s:1);if(!(wA>=1&&wA<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var IA=(0,ANA.default)((O=(k=(P=(H=t?.weekStartsOn)!==null&&H!==void 0?H:t==null||(T=t.locale)===null||T===void 0||(v=T.options)===null||v===void 0?void 0:v.weekStartsOn)!==null&&P!==void 0?P:U.weekStartsOn)!==null&&k!==void 0?k:(F=U.locale)===null||F===void 0||(y=F.options)===null||y===void 0?void 0:y.weekStartsOn)!==null&&O!==void 0?O:0);if(!(IA>=0&&IA<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!V.localize)throw new RangeError("locale must contain localize property");if(!V.formatLong)throw new RangeError("locale must contain formatLong property");var pA=(0,twr.default)(A);if(!(0,ewr.default)(pA))throw new RangeError("Invalid time value");var oA=(0,awr.default)(pA),cA=(0,rwr.default)(pA,oA),eA={firstWeekContainsDate:wA,weekStartsOn:IA,locale:V,_originalDate:pA},Y=S.match(uwr).map(function(q){var X=q[0];if(X==="p"||X==="P"){var Z=nwr.default[X];return Z(q,V.formatLong)}return q}).join("").match(lwr).map(function(q){if(q==="''")return"'";var X=q[0];if(X==="'")return fwr(q);var Z=iwr.default[X];if(Z)return!(t!=null&&t.useAdditionalWeekYearTokens)&&(0,gj.isProtectedWeekYearToken)(q)&&(0,gj.throwProtectedError)(q,r,String(A)),!(t!=null&&t.useAdditionalDayOfYearTokens)&&(0,gj.isProtectedDayOfYearToken)(q)&&(0,gj.throwProtectedError)(q,r,String(A)),Z(cA,q,V.localize,eA);if(X.match(pwr))throw new RangeError("Format string contains an unescaped latin alphabet character `"+X+"`");return q}).join("");return Y}function fwr(A){var r=A.match(gwr);return r?r[1].replace(dwr,"'"):A}eNA.exports=dj.default});var W5=GA((pj,rNA)=>{"use strict";Object.defineProperty(pj,"__esModule",{value:!0});pj.default=Bwr;function Bwr(A,r){if(A==null)throw new TypeError("assign requires that input parameter not be null or undefined");for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(A[t]=r[t]);return A}rNA.exports=pj.default});var YuA=GA((Ej,tNA)=>{"use strict";var hwr=at().default;Object.defineProperty(Ej,"__esModule",{value:!0});Ej.default=mwr;var Qwr=hwr(W5());function mwr(A){return(0,Qwr.default)({},A)}tNA.exports=Ej.default});var LuA=GA((Bj,aNA)=>{"use strict";var eD=at().default;Object.defineProperty(Bj,"__esModule",{value:!0});Bj.default=kwr;var Dwr=ud(),_wr=eD(bw()),wwr=eD(GM()),vwr=eD(YM()),ywr=eD(s2()),fj=eD(An()),Cwr=eD(YuA()),Iwr=eD(W5()),iNA=eD(B1()),bwr=eD(Ct()),nNA=1440,Owr=2520,UuA=43200,Mwr=86400;function kwr(A,r,t){var i,o;(0,bwr.default)(2,arguments);var s=(0,Dwr.getDefaultOptions)(),g=(i=(o=t?.locale)!==null&&o!==void 0?o:s.locale)!==null&&i!==void 0?i:ywr.default;if(!g.formatDistance)throw new RangeError("locale must contain formatDistance property");var E=(0,_wr.default)(A,r);if(isNaN(E))throw new RangeError("Invalid time value");var p=(0,Iwr.default)((0,Cwr.default)(t),{addSuffix:!!t?.addSuffix,comparison:E}),B,m;E>0?(B=(0,fj.default)(r),m=(0,fj.default)(A)):(B=(0,fj.default)(A),m=(0,fj.default)(r));var _=(0,vwr.default)(m,B),x=((0,iNA.default)(m)-(0,iNA.default)(B))/1e3,O=Math.round((_-x)/60),k;if(O<2)return t!=null&&t.includeSeconds?_<5?g.formatDistance("lessThanXSeconds",5,p):_<10?g.formatDistance("lessThanXSeconds",10,p):_<20?g.formatDistance("lessThanXSeconds",20,p):_<40?g.formatDistance("halfAMinute",0,p):_<60?g.formatDistance("lessThanXMinutes",1,p):g.formatDistance("xMinutes",1,p):O===0?g.formatDistance("lessThanXMinutes",1,p):g.formatDistance("xMinutes",O,p);if(O<45)return g.formatDistance("xMinutes",O,p);if(O<90)return g.formatDistance("aboutXHours",1,p);if(O{"use strict";var c2=at().default;Object.defineProperty(mj,"__esModule",{value:!0});mj.default=Nwr;var xwr=ud(),oNA=c2(B1()),Hwr=c2(bw()),hj=c2(An()),Swr=c2(YuA()),Fwr=c2(W5()),Rwr=c2(s2()),Twr=c2(Ct()),sNA=1e3*60,Qj=60*24,cNA=Qj*30,lNA=Qj*365;function Nwr(A,r,t){var i,o,s;(0,Twr.default)(2,arguments);var g=(0,xwr.getDefaultOptions)(),E=(i=(o=t?.locale)!==null&&o!==void 0?o:g.locale)!==null&&i!==void 0?i:Rwr.default;if(!E.formatDistance)throw new RangeError("locale must contain localize.formatDistance property");var p=(0,Hwr.default)(A,r);if(isNaN(p))throw new RangeError("Invalid time value");var B=(0,Fwr.default)((0,Swr.default)(t),{addSuffix:!!t?.addSuffix,comparison:p}),m,_;p>0?(m=(0,hj.default)(r),_=(0,hj.default)(A)):(m=(0,hj.default)(A),_=(0,hj.default)(r));var x=String((s=t?.roundingMethod)!==null&&s!==void 0?s:"round"),O;if(x==="floor")O=Math.floor;else if(x==="ceil")O=Math.ceil;else if(x==="round")O=Math.round;else throw new RangeError("roundingMethod must be 'floor', 'ceil' or 'round'");var k=_.getTime()-m.getTime(),P=k/sNA,H=(0,oNA.default)(_)-(0,oNA.default)(m),T=(k-H)/sNA,v=t?.unit,F;if(v?F=String(v):P<1?F="second":P<60?F="minute":P{"use strict";var gNA=at().default;Object.defineProperty(Dj,"__esModule",{value:!0});Dj.default=Ywr;var Pwr=gNA(LuA()),Gwr=gNA(Ct());function Ywr(A,r){return(0,Gwr.default)(1,arguments),(0,Pwr.default)(A,Date.now(),r)}dNA.exports=Dj.default});var BNA=GA((_j,fNA)=>{"use strict";var ENA=at().default;Object.defineProperty(_j,"__esModule",{value:!0});_j.default=jwr;var Uwr=ENA(juA()),Lwr=ENA(Ct());function jwr(A,r){return(0,Lwr.default)(1,arguments),(0,Uwr.default)(A,Date.now(),r)}fNA.exports=_j.default});var QNA=GA((wj,hNA)=>{"use strict";var Wwr=at().default;Object.defineProperty(wj,"__esModule",{value:!0});wj.default=zwr;var Jwr=ud(),qwr=Wwr(s2()),Vwr=["years","months","weeks","days","hours","minutes","seconds"];function zwr(A,r){var t,i,o,s,g;if(arguments.length<1)throw new TypeError("1 argument required, but only ".concat(arguments.length," present"));var E=(0,Jwr.getDefaultOptions)(),p=(t=(i=r?.locale)!==null&&i!==void 0?i:E.locale)!==null&&t!==void 0?t:qwr.default,B=(o=r?.format)!==null&&o!==void 0?o:Vwr,m=(s=r?.zero)!==null&&s!==void 0?s:!1,_=(g=r?.delimiter)!==null&&g!==void 0?g:" ";if(!p.formatDistance)return"";var x=B.reduce(function(O,k){var P="x".concat(k.replace(/(^.)/,function(T){return T.toUpperCase()})),H=A[k];return typeof H=="number"&&(m||A[k])?O.concat(p.formatDistance(P,H)):O},[]).join(_);return x}hNA.exports=wj.default});var DNA=GA((vj,mNA)=>{"use strict";var WuA=at().default;Object.defineProperty(vj,"__esModule",{value:!0});vj.default=Zwr;var Kwr=WuA(An()),xw=WuA(n2()),Xwr=WuA(Ct());function Zwr(A,r){var t,i;(0,Xwr.default)(1,arguments);var o=(0,Kwr.default)(A);if(isNaN(o.getTime()))throw new RangeError("Invalid time value");var s=String((t=r?.format)!==null&&t!==void 0?t:"extended"),g=String((i=r?.representation)!==null&&i!==void 0?i:"complete");if(s!=="extended"&&s!=="basic")throw new RangeError("format must be 'extended' or 'basic'");if(g!=="date"&&g!=="time"&&g!=="complete")throw new RangeError("representation must be 'date', 'time', or 'complete'");var E="",p="",B=s==="extended"?"-":"",m=s==="extended"?":":"";if(g!=="time"){var _=(0,xw.default)(o.getDate(),2),x=(0,xw.default)(o.getMonth()+1,2),O=(0,xw.default)(o.getFullYear(),4);E="".concat(O).concat(B).concat(x).concat(B).concat(_)}if(g!=="date"){var k=o.getTimezoneOffset();if(k!==0){var P=Math.abs(k),H=(0,xw.default)(Math.floor(P/60),2),T=(0,xw.default)(P%60,2),v=k<0?"+":"-";p="".concat(v).concat(H,":").concat(T)}else p="Z";var F=(0,xw.default)(o.getHours(),2),y=(0,xw.default)(o.getMinutes(),2),S=(0,xw.default)(o.getSeconds(),2),U=E===""?"":"T",V=[F,y,S].join(m);E="".concat(E).concat(U).concat(V).concat(p)}return E}mNA.exports=vj.default});var wNA=GA((yj,_NA)=>{"use strict";var JuA=at().default;Object.defineProperty(yj,"__esModule",{value:!0});yj.default=evr;var $wr=JuA(An()),Avr=JuA($4()),J5=JuA(n2());function evr(A,r){var t,i;if(arguments.length<1)throw new TypeError("1 argument required, but only ".concat(arguments.length," present"));var o=(0,$wr.default)(A);if(!(0,Avr.default)(o))throw new RangeError("Invalid time value");var s=String((t=r?.format)!==null&&t!==void 0?t:"extended"),g=String((i=r?.representation)!==null&&i!==void 0?i:"complete");if(s!=="extended"&&s!=="basic")throw new RangeError("format must be 'extended' or 'basic'");if(g!=="date"&&g!=="time"&&g!=="complete")throw new RangeError("representation must be 'date', 'time', or 'complete'");var E="",p=s==="extended"?"-":"",B=s==="extended"?":":"";if(g!=="time"){var m=(0,J5.default)(o.getDate(),2),_=(0,J5.default)(o.getMonth()+1,2),x=(0,J5.default)(o.getFullYear(),4);E="".concat(x).concat(p).concat(_).concat(p).concat(m)}if(g!=="date"){var O=(0,J5.default)(o.getHours(),2),k=(0,J5.default)(o.getMinutes(),2),P=(0,J5.default)(o.getSeconds(),2),H=E===""?"":" ";E="".concat(E).concat(H).concat(O).concat(B).concat(k).concat(B).concat(P)}return E}_NA.exports=yj.default});var CNA=GA((Cj,yNA)=>{"use strict";var vNA=at().default;Object.defineProperty(Cj,"__esModule",{value:!0});Cj.default=ivr;var rvr=vNA(Wh()),tvr=vNA(Ct());function ivr(A){if((0,tvr.default)(1,arguments),(0,rvr.default)(A)!=="object")throw new Error("Duration must be an object");var r=A.years,t=r===void 0?0:r,i=A.months,o=i===void 0?0:i,s=A.days,g=s===void 0?0:s,E=A.hours,p=E===void 0?0:E,B=A.minutes,m=B===void 0?0:B,_=A.seconds,x=_===void 0?0:_;return"P".concat(t,"Y").concat(o,"M").concat(g,"DT").concat(p,"H").concat(m,"M").concat(x,"S")}yNA.exports=Cj.default});var bNA=GA((bj,INA)=>{"use strict";var Ij=at().default;Object.defineProperty(bj,"__esModule",{value:!0});bj.default=svr;var nvr=Ij(An()),avr=Ij($4()),Hw=Ij(n2()),ovr=Ij(vo());function svr(A,r){var t;if(arguments.length<1)throw new TypeError("1 arguments required, but only ".concat(arguments.length," present"));var i=(0,nvr.default)(A);if(!(0,avr.default)(i))throw new RangeError("Invalid time value");var o=Number((t=r?.fractionDigits)!==null&&t!==void 0?t:0);if(!(o>=0&&o<=3))throw new RangeError("fractionDigits must be between 0 and 3 inclusively");var s=(0,Hw.default)(i.getDate(),2),g=(0,Hw.default)(i.getMonth()+1,2),E=i.getFullYear(),p=(0,Hw.default)(i.getHours(),2),B=(0,Hw.default)(i.getMinutes(),2),m=(0,Hw.default)(i.getSeconds(),2),_="";if(o>0){var x=i.getMilliseconds(),O=Math.floor(x*Math.pow(10,o-3));_="."+(0,Hw.default)(O,o)}var k="",P=i.getTimezoneOffset();if(P!==0){var H=Math.abs(P),T=(0,Hw.default)((0,ovr.default)(H/60),2),v=(0,Hw.default)(H%60,2),F=P<0?"+":"-";k="".concat(F).concat(T,":").concat(v)}else k="Z";return"".concat(E,"-").concat(g,"-").concat(s,"T").concat(p,":").concat(B,":").concat(m).concat(_).concat(k)}INA.exports=bj.default});var MNA=GA((Mj,ONA)=>{"use strict";var quA=at().default;Object.defineProperty(Mj,"__esModule",{value:!0});Mj.default=dvr;var cvr=quA(An()),lvr=quA($4()),Oj=quA(n2()),uvr=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],gvr=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function dvr(A){if(arguments.length<1)throw new TypeError("1 arguments required, but only ".concat(arguments.length," present"));var r=(0,cvr.default)(A);if(!(0,lvr.default)(r))throw new RangeError("Invalid time value");var t=uvr[r.getUTCDay()],i=(0,Oj.default)(r.getUTCDate(),2),o=gvr[r.getUTCMonth()],s=r.getUTCFullYear(),g=(0,Oj.default)(r.getUTCHours(),2),E=(0,Oj.default)(r.getUTCMinutes(),2),p=(0,Oj.default)(r.getUTCSeconds(),2);return"".concat(t,", ").concat(i," ").concat(o," ").concat(s," ").concat(g,":").concat(E,":").concat(p," GMT")}ONA.exports=Mj.default});var FNA=GA((kj,SNA)=>{"use strict";var Sw=at().default;Object.defineProperty(kj,"__esModule",{value:!0});kj.default=mvr;var pvr=ud(),Evr=Sw(Z4()),fvr=Sw(GuA()),Bvr=Sw(s2()),kNA=Sw(Y5()),xNA=Sw(An()),HNA=Sw(B1()),hvr=Sw(Ct()),Qvr=Sw(vo());function mvr(A,r,t){var i,o,s,g,E,p,B,m,_,x;(0,hvr.default)(2,arguments);var O=(0,xNA.default)(A),k=(0,xNA.default)(r),P=(0,pvr.getDefaultOptions)(),H=(i=(o=t?.locale)!==null&&o!==void 0?o:P.locale)!==null&&i!==void 0?i:Bvr.default,T=(0,Qvr.default)((s=(g=(E=(p=t?.weekStartsOn)!==null&&p!==void 0?p:t==null||(B=t.locale)===null||B===void 0||(m=B.options)===null||m===void 0?void 0:m.weekStartsOn)!==null&&E!==void 0?E:P.weekStartsOn)!==null&&g!==void 0?g:(_=P.locale)===null||_===void 0||(x=_.options)===null||x===void 0?void 0:x.weekStartsOn)!==null&&s!==void 0?s:0);if(!H.localize)throw new RangeError("locale must contain localize property");if(!H.formatLong)throw new RangeError("locale must contain formatLong property");if(!H.formatRelative)throw new RangeError("locale must contain formatRelative property");var v=(0,Evr.default)(O,k);if(isNaN(v))throw new RangeError("Invalid time value");var F;v<-6?F="other":v<-1?F="lastWeek":v<0?F="yesterday":v<1?F="today":v<2?F="tomorrow":v<7?F="nextWeek":F="other";var y=(0,kNA.default)(O,(0,HNA.default)(O)),S=(0,kNA.default)(k,(0,HNA.default)(k)),U=H.formatRelative(F,y,S,{locale:H,weekStartsOn:T});return(0,fvr.default)(O,U,{locale:H,weekStartsOn:T})}SNA.exports=kj.default});var TNA=GA((xj,RNA)=>{"use strict";var VuA=at().default;Object.defineProperty(xj,"__esModule",{value:!0});xj.default=vvr;var Dvr=VuA(An()),_vr=VuA(vo()),wvr=VuA(Ct());function vvr(A){(0,wvr.default)(1,arguments);var r=(0,_vr.default)(A);return(0,Dvr.default)(r*1e3)}RNA.exports=xj.default});var zuA=GA((Hj,PNA)=>{"use strict";var NNA=at().default;Object.defineProperty(Hj,"__esModule",{value:!0});Hj.default=Ivr;var yvr=NNA(An()),Cvr=NNA(Ct());function Ivr(A){(0,Cvr.default)(1,arguments);var r=(0,yvr.default)(A),t=r.getDate();return t}PNA.exports=Hj.default});var tk=GA((Sj,YNA)=>{"use strict";var GNA=at().default;Object.defineProperty(Sj,"__esModule",{value:!0});Sj.default=Mvr;var bvr=GNA(An()),Ovr=GNA(Ct());function Mvr(A){(0,Ovr.default)(1,arguments);var r=(0,bvr.default)(A),t=r.getDay();return t}YNA.exports=Sj.default});var LNA=GA((Rj,UNA)=>{"use strict";var Fj=at().default;Object.defineProperty(Rj,"__esModule",{value:!0});Rj.default=Fvr;var kvr=Fj(An()),xvr=Fj(kL()),Hvr=Fj(Z4()),Svr=Fj(Ct());function Fvr(A){(0,Svr.default)(1,arguments);var r=(0,kvr.default)(A),t=(0,Hvr.default)(r,(0,xvr.default)(r)),i=t+1;return i}UNA.exports=Rj.default});var KuA=GA((Tj,WNA)=>{"use strict";var jNA=at().default;Object.defineProperty(Tj,"__esModule",{value:!0});Tj.default=Nvr;var Rvr=jNA(An()),Tvr=jNA(Ct());function Nvr(A){(0,Tvr.default)(1,arguments);var r=(0,Rvr.default)(A),t=r.getFullYear(),i=r.getMonth(),o=new Date(0);return o.setFullYear(t,i+1,0),o.setHours(0,0,0,0),o.getDate()}WNA.exports=Tj.default});var XuA=GA((Nj,qNA)=>{"use strict";var JNA=at().default;Object.defineProperty(Nj,"__esModule",{value:!0});Nj.default=Yvr;var Pvr=JNA(An()),Gvr=JNA(Ct());function Yvr(A){(0,Gvr.default)(1,arguments);var r=(0,Pvr.default)(A),t=r.getFullYear();return t%400===0||t%4===0&&t%100!==0}qNA.exports=Nj.default});var zNA=GA((Pj,VNA)=>{"use strict";var ZuA=at().default;Object.defineProperty(Pj,"__esModule",{value:!0});Pj.default=Wvr;var Uvr=ZuA(An()),Lvr=ZuA(XuA()),jvr=ZuA(Ct());function Wvr(A){(0,jvr.default)(1,arguments);var r=(0,Uvr.default)(A);return String(new Date(r))==="Invalid Date"?NaN:(0,Lvr.default)(r)?366:365}VNA.exports=Pj.default});var ZNA=GA((Gj,XNA)=>{"use strict";var KNA=at().default;Object.defineProperty(Gj,"__esModule",{value:!0});Gj.default=Vvr;var Jvr=KNA(An()),qvr=KNA(Ct());function Vvr(A){(0,qvr.default)(1,arguments);var r=(0,Jvr.default)(A),t=r.getFullYear(),i=Math.floor(t/10)*10;return i}XNA.exports=Gj.default});var APA=GA((Yj,$NA)=>{"use strict";var zvr=at().default;Object.defineProperty(Yj,"__esModule",{value:!0});Yj.default=Zvr;var Kvr=ud(),Xvr=zvr(W5());function Zvr(){return(0,Xvr.default)({},(0,Kvr.getDefaultOptions)())}$NA.exports=Yj.default});var tPA=GA((Uj,rPA)=>{"use strict";var ePA=at().default;Object.defineProperty(Uj,"__esModule",{value:!0});Uj.default=eyr;var $vr=ePA(An()),Ayr=ePA(Ct());function eyr(A){(0,Ayr.default)(1,arguments);var r=(0,$vr.default)(A),t=r.getHours();return t}rPA.exports=Uj.default});var $uA=GA((Lj,nPA)=>{"use strict";var iPA=at().default;Object.defineProperty(Lj,"__esModule",{value:!0});Lj.default=iyr;var ryr=iPA(An()),tyr=iPA(Ct());function iyr(A){(0,tyr.default)(1,arguments);var r=(0,ryr.default)(A),t=r.getDay();return t===0&&(t=7),t}nPA.exports=Lj.default});var AgA=GA((Wj,aPA)=>{"use strict";var jj=at().default;Object.defineProperty(Wj,"__esModule",{value:!0});Wj.default=lyr;var nyr=jj(An()),ayr=jj(Iw()),oyr=jj(P5()),syr=jj(Ct()),cyr=6048e5;function lyr(A){(0,syr.default)(1,arguments);var r=(0,nyr.default)(A),t=(0,ayr.default)(r).getTime()-(0,oyr.default)(r).getTime();return Math.round(t/cyr)+1}aPA.exports=Wj.default});var cPA=GA((Jj,sPA)=>{"use strict";var egA=at().default;Object.defineProperty(Jj,"__esModule",{value:!0});Jj.default=pyr;var oPA=egA(P5()),uyr=egA(RM()),gyr=egA(Ct()),dyr=6048e5;function pyr(A){(0,gyr.default)(1,arguments);var r=(0,oPA.default)(A),t=(0,oPA.default)((0,uyr.default)(r,60)),i=t.valueOf()-r.valueOf();return Math.round(i/dyr)}sPA.exports=Jj.default});var gPA=GA((qj,uPA)=>{"use strict";var lPA=at().default;Object.defineProperty(qj,"__esModule",{value:!0});qj.default=Byr;var Eyr=lPA(An()),fyr=lPA(Ct());function Byr(A){(0,fyr.default)(1,arguments);var r=(0,Eyr.default)(A),t=r.getMilliseconds();return t}uPA.exports=qj.default});var EPA=GA((Vj,pPA)=>{"use strict";var dPA=at().default;Object.defineProperty(Vj,"__esModule",{value:!0});Vj.default=myr;var hyr=dPA(An()),Qyr=dPA(Ct());function myr(A){(0,Qyr.default)(1,arguments);var r=(0,hyr.default)(A),t=r.getMinutes();return t}pPA.exports=Vj.default});var hPA=GA((zj,BPA)=>{"use strict";var fPA=at().default;Object.defineProperty(zj,"__esModule",{value:!0});zj.default=wyr;var Dyr=fPA(An()),_yr=fPA(Ct());function wyr(A){(0,_yr.default)(1,arguments);var r=(0,Dyr.default)(A),t=r.getMonth();return t}BPA.exports=zj.default});var DPA=GA((Xj,mPA)=>{"use strict";var QPA=at().default;Object.defineProperty(Xj,"__esModule",{value:!0});Xj.default=Cyr;var Kj=QPA(An()),vyr=QPA(Ct()),yyr=24*60*60*1e3;function Cyr(A,r){(0,vyr.default)(2,arguments);var t=A||{},i=r||{},o=(0,Kj.default)(t.start).getTime(),s=(0,Kj.default)(t.end).getTime(),g=(0,Kj.default)(i.start).getTime(),E=(0,Kj.default)(i.end).getTime();if(!(o<=s&&g<=E))throw new RangeError("Invalid interval");var p=os?s:E,_=m-B;return Math.ceil(_/yyr)}mPA.exports=Xj.default});var vPA=GA((Zj,wPA)=>{"use strict";var _PA=at().default;Object.defineProperty(Zj,"__esModule",{value:!0});Zj.default=Oyr;var Iyr=_PA(An()),byr=_PA(Ct());function Oyr(A){(0,byr.default)(1,arguments);var r=(0,Iyr.default)(A),t=r.getSeconds();return t}wPA.exports=Zj.default});var rgA=GA(($j,CPA)=>{"use strict";var yPA=at().default;Object.defineProperty($j,"__esModule",{value:!0});$j.default=xyr;var Myr=yPA(An()),kyr=yPA(Ct());function xyr(A){(0,kyr.default)(1,arguments);var r=(0,Myr.default)(A),t=r.getTime();return t}CPA.exports=$j.default});var OPA=GA((AW,bPA)=>{"use strict";var IPA=at().default;Object.defineProperty(AW,"__esModule",{value:!0});AW.default=Fyr;var Hyr=IPA(rgA()),Syr=IPA(Ct());function Fyr(A){return(0,Syr.default)(1,arguments),Math.floor((0,Hyr.default)(A)/1e3)}bPA.exports=AW.default});var tgA=GA((rW,kPA)=>{"use strict";var eW=at().default;Object.defineProperty(rW,"__esModule",{value:!0});rW.default=Gyr;var MPA=eW(X4()),Ryr=eW(An()),Tyr=eW(vo()),Nyr=eW(Ct()),Pyr=ud();function Gyr(A,r){var t,i,o,s,g,E,p,B;(0,Nyr.default)(1,arguments);var m=(0,Ryr.default)(A),_=m.getFullYear(),x=(0,Pyr.getDefaultOptions)(),O=(0,Tyr.default)((t=(i=(o=(s=r?.firstWeekContainsDate)!==null&&s!==void 0?s:r==null||(g=r.locale)===null||g===void 0||(E=g.options)===null||E===void 0?void 0:E.firstWeekContainsDate)!==null&&o!==void 0?o:x.firstWeekContainsDate)!==null&&i!==void 0?i:(p=x.locale)===null||p===void 0||(B=p.options)===null||B===void 0?void 0:B.firstWeekContainsDate)!==null&&t!==void 0?t:1);if(!(O>=1&&O<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var k=new Date(0);k.setFullYear(_+1,0,O),k.setHours(0,0,0,0);var P=(0,MPA.default)(k,r),H=new Date(0);H.setFullYear(_,0,O),H.setHours(0,0,0,0);var T=(0,MPA.default)(H,r);return m.getTime()>=P.getTime()?_+1:m.getTime()>=T.getTime()?_:_-1}kPA.exports=rW.default});var nW=GA((iW,xPA)=>{"use strict";var tW=at().default;Object.defineProperty(iW,"__esModule",{value:!0});iW.default=Jyr;var Yyr=tW(tgA()),Uyr=tW(X4()),Lyr=tW(vo()),jyr=tW(Ct()),Wyr=ud();function Jyr(A,r){var t,i,o,s,g,E,p,B;(0,jyr.default)(1,arguments);var m=(0,Wyr.getDefaultOptions)(),_=(0,Lyr.default)((t=(i=(o=(s=r?.firstWeekContainsDate)!==null&&s!==void 0?s:r==null||(g=r.locale)===null||g===void 0||(E=g.options)===null||E===void 0?void 0:E.firstWeekContainsDate)!==null&&o!==void 0?o:m.firstWeekContainsDate)!==null&&i!==void 0?i:(p=m.locale)===null||p===void 0||(B=p.options)===null||B===void 0?void 0:B.firstWeekContainsDate)!==null&&t!==void 0?t:1),x=(0,Yyr.default)(A,r),O=new Date(0);O.setFullYear(x,0,_),O.setHours(0,0,0,0);var k=(0,Uyr.default)(O,r);return k}xPA.exports=iW.default});var igA=GA((oW,HPA)=>{"use strict";var aW=at().default;Object.defineProperty(oW,"__esModule",{value:!0});oW.default=Zyr;var qyr=aW(X4()),Vyr=aW(nW()),zyr=aW(An()),Kyr=aW(Ct()),Xyr=6048e5;function Zyr(A,r){(0,Kyr.default)(1,arguments);var t=(0,zyr.default)(A),i=(0,qyr.default)(t,r).getTime()-(0,Vyr.default)(t,r).getTime();return Math.round(i/Xyr)+1}HPA.exports=oW.default});var FPA=GA((sW,SPA)=>{"use strict";var ik=at().default;Object.defineProperty(sW,"__esModule",{value:!0});sW.default=n2r;var $yr=ud(),A2r=ik(zuA()),e2r=ik(tk()),r2r=ik(UM()),t2r=ik(Ct()),i2r=ik(vo());function n2r(A,r){var t,i,o,s,g,E,p,B;(0,t2r.default)(1,arguments);var m=(0,$yr.getDefaultOptions)(),_=(0,i2r.default)((t=(i=(o=(s=r?.weekStartsOn)!==null&&s!==void 0?s:r==null||(g=r.locale)===null||g===void 0||(E=g.options)===null||E===void 0?void 0:E.weekStartsOn)!==null&&o!==void 0?o:m.weekStartsOn)!==null&&i!==void 0?i:(p=m.locale)===null||p===void 0||(B=p.options)===null||B===void 0?void 0:B.weekStartsOn)!==null&&t!==void 0?t:0);if(!(_>=0&&_<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var x=(0,A2r.default)(A);if(isNaN(x))return NaN;var O=(0,e2r.default)((0,r2r.default)(A)),k=_-O;k<=0&&(k+=7);var P=x-k;return Math.ceil(P/7)+1}SPA.exports=sW.default});var ngA=GA((cW,TPA)=>{"use strict";var RPA=at().default;Object.defineProperty(cW,"__esModule",{value:!0});cW.default=s2r;var a2r=RPA(An()),o2r=RPA(Ct());function s2r(A){(0,o2r.default)(1,arguments);var r=(0,a2r.default)(A),t=r.getMonth();return r.setFullYear(r.getFullYear(),t+1,0),r.setHours(0,0,0,0),r}TPA.exports=cW.default});var PPA=GA((uW,NPA)=>{"use strict";var lW=at().default;Object.defineProperty(uW,"__esModule",{value:!0});uW.default=d2r;var c2r=lW(GU()),l2r=lW(ngA()),u2r=lW(UM()),g2r=lW(Ct());function d2r(A,r){return(0,g2r.default)(1,arguments),(0,c2r.default)((0,l2r.default)(A),(0,u2r.default)(A),r)+1}NPA.exports=uW.default});var UPA=GA((gW,YPA)=>{"use strict";var GPA=at().default;Object.defineProperty(gW,"__esModule",{value:!0});gW.default=f2r;var p2r=GPA(An()),E2r=GPA(Ct());function f2r(A){return(0,E2r.default)(1,arguments),(0,p2r.default)(A).getFullYear()}YPA.exports=gW.default});var jPA=GA((dW,LPA)=>{"use strict";var B2r=at().default;Object.defineProperty(dW,"__esModule",{value:!0});dW.default=m2r;var h2r=B2r(Ct()),Q2r=_u();function m2r(A){return(0,h2r.default)(1,arguments),Math.floor(A*Q2r.millisecondsInHour)}LPA.exports=dW.default});var JPA=GA((pW,WPA)=>{"use strict";var D2r=at().default;Object.defineProperty(pW,"__esModule",{value:!0});pW.default=v2r;var _2r=D2r(Ct()),w2r=_u();function v2r(A){return(0,_2r.default)(1,arguments),Math.floor(A*w2r.minutesInHour)}WPA.exports=pW.default});var VPA=GA((EW,qPA)=>{"use strict";var y2r=at().default;Object.defineProperty(EW,"__esModule",{value:!0});EW.default=b2r;var C2r=y2r(Ct()),I2r=_u();function b2r(A){return(0,C2r.default)(1,arguments),Math.floor(A*I2r.secondsInHour)}qPA.exports=EW.default});var XPA=GA((fW,KPA)=>{"use strict";var h1=at().default;Object.defineProperty(fW,"__esModule",{value:!0});fW.default=T2r;var O2r=h1(bw()),nk=h1(OlA()),M2r=h1(jU()),k2r=h1(qU()),x2r=h1(XU()),H2r=h1(GM()),S2r=h1(YM()),F2r=h1(EuA()),zPA=h1(An()),R2r=h1(Ct());function T2r(A){(0,R2r.default)(1,arguments);var r=(0,zPA.default)(A.start),t=(0,zPA.default)(A.end);if(isNaN(r.getTime()))throw new RangeError("Start Date is invalid");if(isNaN(t.getTime()))throw new RangeError("End Date is invalid");var i={};i.years=Math.abs((0,F2r.default)(t,r));var o=(0,O2r.default)(t,r),s=(0,nk.default)(r,{years:o*i.years});i.months=Math.abs((0,H2r.default)(t,s));var g=(0,nk.default)(s,{months:o*i.months});i.days=Math.abs((0,M2r.default)(t,g));var E=(0,nk.default)(g,{days:o*i.days});i.hours=Math.abs((0,k2r.default)(t,E));var p=(0,nk.default)(E,{hours:o*i.hours});i.minutes=Math.abs((0,x2r.default)(t,p));var B=(0,nk.default)(p,{minutes:o*i.minutes});return i.seconds=Math.abs((0,S2r.default)(t,B)),i}KPA.exports=fW.default});var $PA=GA((BW,ZPA)=>{"use strict";var N2r=at().default;Object.defineProperty(BW,"__esModule",{value:!0});BW.default=G2r;var P2r=N2r(Ct());function G2r(A,r,t){var i;(0,P2r.default)(1,arguments);var o;return Y2r(r)?o=r:t=r,new Intl.DateTimeFormat((i=t)===null||i===void 0?void 0:i.locale,o).format(A)}function Y2r(A){return A!==void 0&&!("locale"in A)}ZPA.exports=BW.default});var aGA=GA((hW,nGA)=>{"use strict";var Q1=at().default;Object.defineProperty(hW,"__esModule",{value:!0});hW.default=L2r;var l2=_u(),agA=Q1(Z4()),AGA=Q1(RU()),ogA=Q1(auA()),eGA=Q1(GU()),sgA=Q1(UU()),rGA=Q1(qU()),tGA=Q1(XU()),cgA=Q1(YM()),iGA=Q1(An()),U2r=Q1(Ct());function L2r(A,r,t){(0,U2r.default)(2,arguments);var i=0,o,s=(0,iGA.default)(A),g=(0,iGA.default)(r);if(t!=null&&t.unit)o=t?.unit,o==="second"?i=(0,cgA.default)(s,g):o==="minute"?i=(0,tGA.default)(s,g):o==="hour"?i=(0,rGA.default)(s,g):o==="day"?i=(0,agA.default)(s,g):o==="week"?i=(0,eGA.default)(s,g):o==="month"?i=(0,AGA.default)(s,g):o==="quarter"?i=(0,ogA.default)(s,g):o==="year"&&(i=(0,sgA.default)(s,g));else{var E=(0,cgA.default)(s,g);Math.abs(E){"use strict";var sGA=at().default;Object.defineProperty(QW,"__esModule",{value:!0});QW.default=W2r;var oGA=sGA(An()),j2r=sGA(Ct());function W2r(A,r){(0,j2r.default)(2,arguments);var t=(0,oGA.default)(A),i=(0,oGA.default)(r);return t.getTime()>i.getTime()}cGA.exports=QW.default});var pGA=GA((mW,dGA)=>{"use strict";var gGA=at().default;Object.defineProperty(mW,"__esModule",{value:!0});mW.default=q2r;var uGA=gGA(An()),J2r=gGA(Ct());function q2r(A,r){(0,J2r.default)(2,arguments);var t=(0,uGA.default)(A),i=(0,uGA.default)(r);return t.getTime(){"use strict";var fGA=at().default;Object.defineProperty(DW,"__esModule",{value:!0});DW.default=z2r;var EGA=fGA(An()),V2r=fGA(Ct());function z2r(A,r){(0,V2r.default)(2,arguments);var t=(0,EGA.default)(A),i=(0,EGA.default)(r);return t.getTime()===i.getTime()}BGA.exports=DW.default});var mGA=GA((_W,QGA)=>{"use strict";Object.defineProperty(_W,"__esModule",{value:!0});_W.default=K2r;function K2r(A,r,t){if(arguments.length<3)throw new TypeError("3 argument required, but only "+arguments.length+" present");var i=new Date(A,r,t);return i.getFullYear()===A&&i.getMonth()===r&&i.getDate()===t}QGA.exports=_W.default});var wGA=GA((wW,_GA)=>{"use strict";var DGA=at().default;Object.defineProperty(wW,"__esModule",{value:!0});wW.default=$2r;var X2r=DGA(An()),Z2r=DGA(Ct());function $2r(A){return(0,Z2r.default)(1,arguments),(0,X2r.default)(A).getDate()===1}_GA.exports=wW.default});var CGA=GA((vW,yGA)=>{"use strict";var vGA=at().default;Object.defineProperty(vW,"__esModule",{value:!0});vW.default=rCr;var ACr=vGA(An()),eCr=vGA(Ct());function rCr(A){return(0,eCr.default)(1,arguments),(0,ACr.default)(A).getDay()===5}yGA.exports=vW.default});var OGA=GA((yW,bGA)=>{"use strict";var IGA=at().default;Object.defineProperty(yW,"__esModule",{value:!0});yW.default=nCr;var tCr=IGA(An()),iCr=IGA(Ct());function nCr(A){return(0,iCr.default)(1,arguments),(0,tCr.default)(A).getTime()>Date.now()}bGA.exports=yW.default});var MGA=GA((jni,ak)=>{function aCr(A,r){(r==null||r>A.length)&&(r=A.length);for(var t=0,i=new Array(r);t{var kGA=MGA();function oCr(A,r){if(A){if(typeof A=="string")return kGA(A,r);var t=Object.prototype.toString.call(A).slice(8,-1);if(t==="Object"&&A.constructor&&(t=A.constructor.name),t==="Map"||t==="Set")return Array.from(A);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return kGA(A,r)}}ok.exports=oCr,ok.exports.__esModule=!0,ok.exports.default=ok.exports});var HGA=GA((Jni,sk)=>{var sCr=xGA();function cCr(A,r){var t=typeof Symbol<"u"&&A[Symbol.iterator]||A["@@iterator"];if(!t){if(Array.isArray(A)||(t=sCr(A))||r&&A&&typeof A.length=="number"){t&&(A=t);var i=0,o=function(){};return{s:o,n:function(){return i>=A.length?{done:!0}:{done:!1,value:A[i++]}},e:function(B){throw B},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var s=!0,g=!1,E;return{s:function(){t=t.call(A)},n:function(){var B=t.next();return s=B.done,B},e:function(B){g=!0,E=B},f:function(){try{!s&&t.return!=null&&t.return()}finally{if(g)throw E}}}}sk.exports=cCr,sk.exports.__esModule=!0,sk.exports.default=sk.exports});var xc=GA((qni,ck)=>{function lCr(A){if(A===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return A}ck.exports=lCr,ck.exports.__esModule=!0,ck.exports.default=ck.exports});var SGA=GA((Vni,rD)=>{function lgA(A,r){return rD.exports=lgA=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,o){return i.__proto__=o,i},rD.exports.__esModule=!0,rD.exports.default=rD.exports,lgA(A,r)}rD.exports=lgA,rD.exports.__esModule=!0,rD.exports.default=rD.exports});var Wc=GA((zni,lk)=>{var uCr=SGA();function gCr(A,r){if(typeof r!="function"&&r!==null)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(r&&r.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),Object.defineProperty(A,"prototype",{writable:!1}),r&&uCr(A,r)}lk.exports=gCr,lk.exports.__esModule=!0,lk.exports.default=lk.exports});var FGA=GA((Kni,tD)=>{function ugA(A){return tD.exports=ugA=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},tD.exports.__esModule=!0,tD.exports.default=tD.exports,ugA(A)}tD.exports=ugA,tD.exports.__esModule=!0,tD.exports.default=tD.exports});var RGA=GA((Xni,uk)=>{function dCr(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}uk.exports=dCr,uk.exports.__esModule=!0,uk.exports.default=uk.exports});var TGA=GA((Zni,gk)=>{var pCr=Wh().default,ECr=xc();function fCr(A,r){if(r&&(pCr(r)==="object"||typeof r=="function"))return r;if(r!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return ECr(A)}gk.exports=fCr,gk.exports.__esModule=!0,gk.exports.default=gk.exports});var Jc=GA(($ni,dk)=>{var NGA=FGA(),BCr=RGA(),hCr=TGA();function QCr(A){var r=BCr();return function(){var i=NGA(A),o;if(r){var s=NGA(this).constructor;o=Reflect.construct(i,arguments,s)}else o=i.apply(this,arguments);return hCr(this,o)}}dk.exports=QCr,dk.exports.__esModule=!0,dk.exports.default=dk.exports});var Hc=GA((Aai,pk)=>{function mCr(A,r){if(!(A instanceof r))throw new TypeError("Cannot call a class as a function")}pk.exports=mCr,pk.exports.__esModule=!0,pk.exports.default=pk.exports});var GGA=GA((eai,Ek)=>{var PGA=Wh().default;function DCr(A,r){if(PGA(A)!=="object"||A===null)return A;var t=A[Symbol.toPrimitive];if(t!==void 0){var i=t.call(A,r||"default");if(PGA(i)!=="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(A)}Ek.exports=DCr,Ek.exports.__esModule=!0,Ek.exports.default=Ek.exports});var ggA=GA((rai,fk)=>{var _Cr=Wh().default,wCr=GGA();function vCr(A){var r=wCr(A,"string");return _Cr(r)==="symbol"?r:String(r)}fk.exports=vCr,fk.exports.__esModule=!0,fk.exports.default=fk.exports});var Sc=GA((tai,Bk)=>{var yCr=ggA();function YGA(A,r){for(var t=0;t{var ICr=ggA();function bCr(A,r,t){return r=ICr(r),r in A?Object.defineProperty(A,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):A[r]=t,A}hk.exports=bCr,hk.exports.__esModule=!0,hk.exports.default=hk.exports});var fgA=GA(Fw=>{"use strict";var q5=at().default;Object.defineProperty(Fw,"__esModule",{value:!0});Fw.ValueSetter=Fw.Setter=Fw.DateToSystemTimezoneSetter=void 0;var UGA=q5(xc()),LGA=q5(Wc()),jGA=q5(Jc()),dgA=q5(Hc()),pgA=q5(Sc()),CW=q5(Fc()),OCr=10,EgA=function(){function A(){(0,dgA.default)(this,A),(0,CW.default)(this,"priority",void 0),(0,CW.default)(this,"subPriority",0)}return(0,pgA.default)(A,[{key:"validate",value:function(t,i){return!0}}]),A}();Fw.Setter=EgA;var MCr=function(A){(0,LGA.default)(t,A);var r=(0,jGA.default)(t);function t(i,o,s,g,E){var p;return(0,dgA.default)(this,t),p=r.call(this),p.value=i,p.validateValue=o,p.setValue=s,p.priority=g,E&&(p.subPriority=E),p}return(0,pgA.default)(t,[{key:"validate",value:function(o,s){return this.validateValue(o,this.value,s)}},{key:"set",value:function(o,s,g){return this.setValue(o,s,this.value,g)}}]),t}(EgA);Fw.ValueSetter=MCr;var kCr=function(A){(0,LGA.default)(t,A);var r=(0,jGA.default)(t);function t(){var i;(0,dgA.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";var hgA=at().default;Object.defineProperty(IW,"__esModule",{value:!0});IW.Parser=void 0;var xCr=hgA(Hc()),HCr=hgA(Sc()),BgA=hgA(Fc()),SCr=fgA(),FCr=function(){function A(){(0,xCr.default)(this,A),(0,BgA.default)(this,"incompatibleTokens",void 0),(0,BgA.default)(this,"priority",void 0),(0,BgA.default)(this,"subPriority",void 0)}return(0,HCr.default)(A,[{key:"run",value:function(t,i,o,s){var g=this.parse(t,i,o,s);return g?{setter:new SCr.ValueSetter(g.value,this.validate,this.set,this.priority,this.subPriority),rest:g.rest}:null}},{key:"validate",value:function(t,i,o){return!0}}]),A}();IW.Parser=FCr});var qGA=GA(bW=>{"use strict";var V5=at().default;Object.defineProperty(bW,"__esModule",{value:!0});bW.EraParser=void 0;var RCr=V5(Hc()),TCr=V5(Sc()),WGA=V5(xc()),NCr=V5(Wc()),PCr=V5(Jc()),JGA=V5(Fc()),GCr=al(),YCr=function(A){(0,NCr.default)(t,A);var r=(0,PCr.default)(t);function t(){var i;(0,RCr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";Object.defineProperty(z5,"__esModule",{value:!0});z5.timezonePatterns=z5.numericPatterns=void 0;var UCr={month:/^(1[0-2]|0?\d)/,date:/^(3[0-1]|[0-2]?\d)/,dayOfYear:/^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,week:/^(5[0-3]|[0-4]?\d)/,hour23h:/^(2[0-3]|[0-1]?\d)/,hour24h:/^(2[0-4]|[0-1]?\d)/,hour11h:/^(1[0-1]|0?\d)/,hour12h:/^(1[0-2]|0?\d)/,minute:/^[0-5]?\d/,second:/^[0-5]?\d/,singleDigit:/^\d/,twoDigits:/^\d{1,2}/,threeDigits:/^\d{1,3}/,fourDigits:/^\d{1,4}/,anyDigitsSigned:/^-?\d+/,singleDigitSigned:/^-?\d/,twoDigitsSigned:/^-?\d{1,2}/,threeDigitsSigned:/^-?\d{1,3}/,fourDigitsSigned:/^-?\d{1,4}/};z5.numericPatterns=UCr;var LCr={basicOptionalMinutes:/^([+-])(\d{2})(\d{2})?|Z/,basic:/^([+-])(\d{2})(\d{2})|Z/,basicOptionalSeconds:/^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,extended:/^([+-])(\d{2}):(\d{2})|Z/,extendedOptionalSeconds:/^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/};z5.timezonePatterns=LCr});var bl=GA(z0=>{"use strict";Object.defineProperty(z0,"__esModule",{value:!0});z0.dayPeriodEnumToHours=zCr;z0.isLeapYearIndex=XCr;z0.mapValue=jCr;z0.normalizeTwoDigitYear=KCr;z0.parseAnyDigitsSigned=JCr;z0.parseNDigits=qCr;z0.parseNDigitsSigned=VCr;z0.parseNumericPattern=TQ;z0.parseTimezonePattern=WCr;var QgA=_u(),iD=Mf();function jCr(A,r){return A&&{value:r(A.value),rest:A.rest}}function TQ(A,r){var t=r.match(A);return t?{value:parseInt(t[0],10),rest:r.slice(t[0].length)}:null}function WCr(A,r){var t=r.match(A);if(!t)return null;if(t[0]==="Z")return{value:0,rest:r.slice(1)};var i=t[1]==="+"?1:-1,o=t[2]?parseInt(t[2],10):0,s=t[3]?parseInt(t[3],10):0,g=t[5]?parseInt(t[5],10):0;return{value:i*(o*QgA.millisecondsInHour+s*QgA.millisecondsInMinute+g*QgA.millisecondsInSecond),rest:r.slice(t[0].length)}}function JCr(A){return TQ(iD.numericPatterns.anyDigitsSigned,A)}function qCr(A,r){switch(A){case 1:return TQ(iD.numericPatterns.singleDigit,r);case 2:return TQ(iD.numericPatterns.twoDigits,r);case 3:return TQ(iD.numericPatterns.threeDigits,r);case 4:return TQ(iD.numericPatterns.fourDigits,r);default:return TQ(new RegExp("^\\d{1,"+A+"}"),r)}}function VCr(A,r){switch(A){case 1:return TQ(iD.numericPatterns.singleDigitSigned,r);case 2:return TQ(iD.numericPatterns.twoDigitsSigned,r);case 3:return TQ(iD.numericPatterns.threeDigitsSigned,r);case 4:return TQ(iD.numericPatterns.fourDigitsSigned,r);default:return TQ(new RegExp("^-?\\d{1,"+A+"}"),r)}}function zCr(A){switch(A){case"morning":return 4;case"evening":return 17;case"pm":case"noon":case"afternoon":return 12;case"am":case"midnight":case"night":default:return 0}}function KCr(A,r){var t=r>0,i=t?r:1-r,o;if(i<=50)o=A||100;else{var s=i+50,g=Math.floor(s/100)*100,E=A>=s%100;o=A+g-(E?100:0)}return t?o:1-o}function XCr(A){return A%400===0||A%4===0&&A%100!==0}});var KGA=GA(OW=>{"use strict";var X5=at().default;Object.defineProperty(OW,"__esModule",{value:!0});OW.YearParser=void 0;var ZCr=X5(Hc()),$Cr=X5(Sc()),VGA=X5(xc()),AIr=X5(Wc()),eIr=X5(Jc()),zGA=X5(Fc()),rIr=al(),K5=bl(),tIr=function(A){(0,AIr.default)(t,A);var r=(0,eIr.default)(t);function t(){var i;(0,ZCr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g0}},{key:"set",value:function(o,s,g){var E=o.getUTCFullYear();if(g.isTwoDigitYear){var p=(0,K5.normalizeTwoDigitYear)(g.year,E);return o.setUTCFullYear(p,0,1),o.setUTCHours(0,0,0,0),o}var B=!("era"in s)||s.era===1?g.year:1-g.year;return o.setUTCFullYear(B,0,1),o.setUTCHours(0,0,0,0),o}}]),t}(rIr.Parser);OW.YearParser=tIr});var AYA=GA(MW=>{"use strict";var Rw=at().default;Object.defineProperty(MW,"__esModule",{value:!0});MW.LocalWeekYearParser=void 0;var iIr=Rw(Hc()),nIr=Rw(Sc()),XGA=Rw(xc()),aIr=Rw(Wc()),oIr=Rw(Jc()),ZGA=Rw(Fc()),sIr=al(),Z5=bl(),cIr=Rw(rj()),$GA=Rw(L5()),lIr=function(A){(0,aIr.default)(t,A);var r=(0,oIr.default)(t);function t(){var i;(0,iIr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g0}},{key:"set",value:function(o,s,g,E){var p=(0,cIr.default)(o,E);if(g.isTwoDigitYear){var B=(0,Z5.normalizeTwoDigitYear)(g.year,p);return o.setUTCFullYear(B,0,E.firstWeekContainsDate),o.setUTCHours(0,0,0,0),(0,$GA.default)(o,E)}var m=!("era"in s)||s.era===1?g.year:1-g.year;return o.setUTCFullYear(m,0,E.firstWeekContainsDate),o.setUTCHours(0,0,0,0),(0,$GA.default)(o,E)}}]),t}(sIr.Parser);MW.LocalWeekYearParser=lIr});var iYA=GA(kW=>{"use strict";var u2=at().default;Object.defineProperty(kW,"__esModule",{value:!0});kW.ISOWeekYearParser=void 0;var uIr=u2(Hc()),gIr=u2(Sc()),eYA=u2(xc()),dIr=u2(Wc()),pIr=u2(Jc()),rYA=u2(Fc()),EIr=al(),tYA=bl(),fIr=u2(U5()),BIr=function(A){(0,dIr.default)(t,A);var r=(0,pIr.default)(t);function t(){var i;(0,uIr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";var $5=at().default;Object.defineProperty(xW,"__esModule",{value:!0});xW.ExtendedYearParser=void 0;var hIr=$5(Hc()),QIr=$5(Sc()),nYA=$5(xc()),mIr=$5(Wc()),DIr=$5(Jc()),aYA=$5(Fc()),_Ir=al(),oYA=bl(),wIr=function(A){(0,mIr.default)(t,A);var r=(0,DIr.default)(t);function t(){var i;(0,hIr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";var A3=at().default;Object.defineProperty(HW,"__esModule",{value:!0});HW.QuarterParser=void 0;var vIr=A3(Hc()),yIr=A3(Sc()),cYA=A3(xc()),CIr=A3(Wc()),IIr=A3(Jc()),lYA=A3(Fc()),bIr=al(),OIr=bl(),MIr=function(A){(0,CIr.default)(t,A);var r=(0,IIr.default)(t);function t(){var i;(0,vIr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=1&&s<=4}},{key:"set",value:function(o,s,g){return o.setUTCMonth((g-1)*3,1),o.setUTCHours(0,0,0,0),o}}]),t}(bIr.Parser);HW.QuarterParser=MIr});var pYA=GA(SW=>{"use strict";var e3=at().default;Object.defineProperty(SW,"__esModule",{value:!0});SW.StandAloneQuarterParser=void 0;var kIr=e3(Hc()),xIr=e3(Sc()),gYA=e3(xc()),HIr=e3(Wc()),SIr=e3(Jc()),dYA=e3(Fc()),FIr=al(),RIr=bl(),TIr=function(A){(0,HIr.default)(t,A);var r=(0,SIr.default)(t);function t(){var i;(0,kIr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=1&&s<=4}},{key:"set",value:function(o,s,g){return o.setUTCMonth((g-1)*3,1),o.setUTCHours(0,0,0,0),o}}]),t}(FIr.Parser);SW.StandAloneQuarterParser=TIr});var BYA=GA(FW=>{"use strict";var r3=at().default;Object.defineProperty(FW,"__esModule",{value:!0});FW.MonthParser=void 0;var NIr=r3(Hc()),PIr=r3(Sc()),EYA=r3(xc()),GIr=r3(Wc()),YIr=r3(Jc()),fYA=r3(Fc()),Qk=bl(),UIr=al(),LIr=Mf(),jIr=function(A){(0,GIr.default)(t,A);var r=(0,YIr.default)(t);function t(){var i;(0,NIr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=0&&s<=11}},{key:"set",value:function(o,s,g){return o.setUTCMonth(g,1),o.setUTCHours(0,0,0,0),o}}]),t}(UIr.Parser);FW.MonthParser=jIr});var mYA=GA(RW=>{"use strict";var t3=at().default;Object.defineProperty(RW,"__esModule",{value:!0});RW.StandAloneMonthParser=void 0;var WIr=t3(Hc()),JIr=t3(Sc()),hYA=t3(xc()),qIr=t3(Wc()),VIr=t3(Jc()),QYA=t3(Fc()),zIr=al(),KIr=Mf(),mk=bl(),XIr=function(A){(0,qIr.default)(t,A);var r=(0,VIr.default)(t);function t(){var i;(0,WIr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=0&&s<=11}},{key:"set",value:function(o,s,g){return o.setUTCMonth(g,1),o.setUTCHours(0,0,0,0),o}}]),t}(zIr.Parser);RW.StandAloneMonthParser=XIr});var _YA=GA((NW,DYA)=>{"use strict";var TW=at().default;Object.defineProperty(NW,"__esModule",{value:!0});NW.default=rbr;var ZIr=TW(vo()),$Ir=TW(An()),Abr=TW(FuA()),ebr=TW(Ct());function rbr(A,r,t){(0,ebr.default)(2,arguments);var i=(0,$Ir.default)(A),o=(0,ZIr.default)(r),s=(0,Abr.default)(i,t)-o;return i.setUTCDate(i.getUTCDate()-s*7),i}DYA.exports=NW.default});var CYA=GA(PW=>{"use strict";var Tw=at().default;Object.defineProperty(PW,"__esModule",{value:!0});PW.LocalWeekParser=void 0;var tbr=Tw(Hc()),ibr=Tw(Sc()),wYA=Tw(xc()),nbr=Tw(Wc()),abr=Tw(Jc()),vYA=Tw(Fc()),obr=al(),sbr=Mf(),yYA=bl(),cbr=Tw(_YA()),lbr=Tw(L5()),ubr=function(A){(0,nbr.default)(t,A);var r=(0,abr.default)(t);function t(){var i;(0,tbr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=1&&s<=53}},{key:"set",value:function(o,s,g,E){return(0,lbr.default)((0,cbr.default)(o,g,E),E)}}]),t}(obr.Parser);PW.LocalWeekParser=ubr});var bYA=GA((YW,IYA)=>{"use strict";var GW=at().default;Object.defineProperty(YW,"__esModule",{value:!0});YW.default=fbr;var gbr=GW(vo()),dbr=GW(An()),pbr=GW(HuA()),Ebr=GW(Ct());function fbr(A,r){(0,Ebr.default)(2,arguments);var t=(0,dbr.default)(A),i=(0,gbr.default)(r),o=(0,pbr.default)(t)-i;return t.setUTCDate(t.getUTCDate()-o*7),t}IYA.exports=YW.default});var xYA=GA(UW=>{"use strict";var Nw=at().default;Object.defineProperty(UW,"__esModule",{value:!0});UW.ISOWeekParser=void 0;var Bbr=Nw(Hc()),hbr=Nw(Sc()),OYA=Nw(xc()),Qbr=Nw(Wc()),mbr=Nw(Jc()),MYA=Nw(Fc()),Dbr=al(),_br=Mf(),kYA=bl(),wbr=Nw(bYA()),vbr=Nw(U5()),ybr=function(A){(0,Qbr.default)(t,A);var r=(0,mbr.default)(t);function t(){var i;(0,Bbr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=1&&s<=53}},{key:"set",value:function(o,s,g){return(0,vbr.default)((0,wbr.default)(o,g))}}]),t}(Dbr.Parser);UW.ISOWeekParser=ybr});var HYA=GA(LW=>{"use strict";var i3=at().default;Object.defineProperty(LW,"__esModule",{value:!0});LW.DateParser=void 0;var Cbr=i3(Hc()),Ibr=i3(Sc()),mgA=i3(xc()),bbr=i3(Wc()),Obr=i3(Jc()),DgA=i3(Fc()),_gA=bl(),Mbr=al(),kbr=Mf(),xbr=[31,28,31,30,31,30,31,31,30,31,30,31],Hbr=[31,29,31,30,31,30,31,31,30,31,30,31],Sbr=function(A){(0,bbr.default)(t,A);var r=(0,Obr.default)(t);function t(){var i;(0,Cbr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=1&&s<=Hbr[p]:s>=1&&s<=xbr[p]}},{key:"set",value:function(o,s,g){return o.setUTCDate(g),o.setUTCHours(0,0,0,0),o}}]),t}(Mbr.Parser);LW.DateParser=Sbr});var SYA=GA(jW=>{"use strict";var n3=at().default;Object.defineProperty(jW,"__esModule",{value:!0});jW.DayOfYearParser=void 0;var Fbr=n3(Hc()),Rbr=n3(Sc()),wgA=n3(xc()),Tbr=n3(Wc()),Nbr=n3(Jc()),vgA=n3(Fc()),Pbr=al(),Gbr=Mf(),ygA=bl(),Ybr=function(A){(0,Tbr.default)(t,A);var r=(0,Nbr.default)(t);function t(){var i;(0,Fbr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=1&&s<=366:s>=1&&s<=365}},{key:"set",value:function(o,s,g){return o.setUTCMonth(0,g),o.setUTCHours(0,0,0,0),o}}]),t}(Pbr.Parser);jW.DayOfYearParser=Ybr});var JW=GA((WW,RYA)=>{"use strict";var CgA=at().default;Object.defineProperty(WW,"__esModule",{value:!0});WW.default=Wbr;var Ubr=CgA(An()),Lbr=CgA(Ct()),FYA=CgA(vo()),jbr=ud();function Wbr(A,r,t){var i,o,s,g,E,p,B,m;(0,Lbr.default)(2,arguments);var _=(0,jbr.getDefaultOptions)(),x=(0,FYA.default)((i=(o=(s=(g=t?.weekStartsOn)!==null&&g!==void 0?g:t==null||(E=t.locale)===null||E===void 0||(p=E.options)===null||p===void 0?void 0:p.weekStartsOn)!==null&&s!==void 0?s:_.weekStartsOn)!==null&&o!==void 0?o:(B=_.locale)===null||B===void 0||(m=B.options)===null||m===void 0?void 0:m.weekStartsOn)!==null&&i!==void 0?i:0);if(!(x>=0&&x<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var O=(0,Ubr.default)(A),k=(0,FYA.default)(r),P=O.getUTCDay(),H=k%7,T=(H+7)%7,v=(T{"use strict";var g2=at().default;Object.defineProperty(qW,"__esModule",{value:!0});qW.DayParser=void 0;var Jbr=g2(Hc()),qbr=g2(Sc()),TYA=g2(xc()),Vbr=g2(Wc()),zbr=g2(Jc()),NYA=g2(Fc()),Kbr=al(),Xbr=g2(JW()),Zbr=function(A){(0,Vbr.default)(t,A);var r=(0,zbr.default)(t);function t(){var i;(0,Jbr.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=0&&s<=6}},{key:"set",value:function(o,s,g,E){return o=(0,Xbr.default)(o,g,E),o.setUTCHours(0,0,0,0),o}}]),t}(Kbr.Parser);qW.DayParser=Zbr});var UYA=GA(VW=>{"use strict";var d2=at().default;Object.defineProperty(VW,"__esModule",{value:!0});VW.LocalDayParser=void 0;var $br=d2(Hc()),A5r=d2(Sc()),GYA=d2(xc()),e5r=d2(Wc()),r5r=d2(Jc()),YYA=d2(Fc()),t5r=al(),IgA=bl(),i5r=d2(JW()),n5r=function(A){(0,e5r.default)(t,A);var r=(0,r5r.default)(t);function t(){var i;(0,$br.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=0&&s<=6}},{key:"set",value:function(o,s,g,E){return o=(0,i5r.default)(o,g,E),o.setUTCHours(0,0,0,0),o}}]),t}(t5r.Parser);VW.LocalDayParser=n5r});var WYA=GA(zW=>{"use strict";var p2=at().default;Object.defineProperty(zW,"__esModule",{value:!0});zW.StandAloneLocalDayParser=void 0;var a5r=p2(Hc()),o5r=p2(Sc()),LYA=p2(xc()),s5r=p2(Wc()),c5r=p2(Jc()),jYA=p2(Fc()),l5r=al(),bgA=bl(),u5r=p2(JW()),g5r=function(A){(0,s5r.default)(t,A);var r=(0,c5r.default)(t);function t(){var i;(0,a5r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=0&&s<=6}},{key:"set",value:function(o,s,g,E){return o=(0,u5r.default)(o,g,E),o.setUTCHours(0,0,0,0),o}}]),t}(l5r.Parser);zW.StandAloneLocalDayParser=g5r});var qYA=GA((KW,JYA)=>{"use strict";var OgA=at().default;Object.defineProperty(KW,"__esModule",{value:!0});KW.default=f5r;var d5r=OgA(An()),p5r=OgA(Ct()),E5r=OgA(vo());function f5r(A,r){(0,p5r.default)(2,arguments);var t=(0,E5r.default)(r);t%7===0&&(t=t-7);var i=1,o=(0,d5r.default)(A),s=o.getUTCDay(),g=t%7,E=(g+7)%7,p=(E{"use strict";var E2=at().default;Object.defineProperty(XW,"__esModule",{value:!0});XW.ISODayParser=void 0;var B5r=E2(Hc()),h5r=E2(Sc()),VYA=E2(xc()),Q5r=E2(Wc()),m5r=E2(Jc()),zYA=E2(Fc()),D5r=al(),Dk=bl(),_5r=E2(qYA()),w5r=function(A){(0,Q5r.default)(t,A);var r=(0,m5r.default)(t);function t(){var i;(0,B5r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=1&&s<=7}},{key:"set",value:function(o,s,g){return o=(0,_5r.default)(o,g),o.setUTCHours(0,0,0,0),o}}]),t}(D5r.Parser);XW.ISODayParser=w5r});var $YA=GA(ZW=>{"use strict";var a3=at().default;Object.defineProperty(ZW,"__esModule",{value:!0});ZW.AMPMParser=void 0;var v5r=a3(Hc()),y5r=a3(Sc()),XYA=a3(xc()),C5r=a3(Wc()),I5r=a3(Jc()),ZYA=a3(Fc()),b5r=al(),O5r=bl(),M5r=function(A){(0,C5r.default)(t,A);var r=(0,I5r.default)(t);function t(){var i;(0,v5r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";var o3=at().default;Object.defineProperty($W,"__esModule",{value:!0});$W.AMPMMidnightParser=void 0;var k5r=o3(Hc()),x5r=o3(Sc()),AUA=o3(xc()),H5r=o3(Wc()),S5r=o3(Jc()),eUA=o3(Fc()),F5r=al(),R5r=bl(),T5r=function(A){(0,H5r.default)(t,A);var r=(0,S5r.default)(t);function t(){var i;(0,k5r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";var s3=at().default;Object.defineProperty(AJ,"__esModule",{value:!0});AJ.DayPeriodParser=void 0;var N5r=s3(Hc()),P5r=s3(Sc()),tUA=s3(xc()),G5r=s3(Wc()),Y5r=s3(Jc()),iUA=s3(Fc()),U5r=al(),L5r=bl(),j5r=function(A){(0,G5r.default)(t,A);var r=(0,Y5r.default)(t);function t(){var i;(0,N5r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";var c3=at().default;Object.defineProperty(eJ,"__esModule",{value:!0});eJ.Hour1to12Parser=void 0;var W5r=c3(Hc()),J5r=c3(Sc()),aUA=c3(xc()),q5r=c3(Wc()),V5r=c3(Jc()),oUA=c3(Fc()),z5r=al(),K5r=Mf(),sUA=bl(),X5r=function(A){(0,q5r.default)(t,A);var r=(0,V5r.default)(t);function t(){var i;(0,W5r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=1&&s<=12}},{key:"set",value:function(o,s,g){var E=o.getUTCHours()>=12;return E&&g<12?o.setUTCHours(g+12,0,0,0):!E&&g===12?o.setUTCHours(0,0,0,0):o.setUTCHours(g,0,0,0),o}}]),t}(z5r.Parser);eJ.Hour1to12Parser=X5r});var dUA=GA(rJ=>{"use strict";var l3=at().default;Object.defineProperty(rJ,"__esModule",{value:!0});rJ.Hour0to23Parser=void 0;var Z5r=l3(Hc()),$5r=l3(Sc()),lUA=l3(xc()),A3r=l3(Wc()),e3r=l3(Jc()),uUA=l3(Fc()),r3r=al(),t3r=Mf(),gUA=bl(),i3r=function(A){(0,A3r.default)(t,A);var r=(0,e3r.default)(t);function t(){var i;(0,Z5r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=0&&s<=23}},{key:"set",value:function(o,s,g){return o.setUTCHours(g,0,0,0),o}}]),t}(r3r.Parser);rJ.Hour0to23Parser=i3r});var BUA=GA(tJ=>{"use strict";var u3=at().default;Object.defineProperty(tJ,"__esModule",{value:!0});tJ.Hour0To11Parser=void 0;var n3r=u3(Hc()),a3r=u3(Sc()),pUA=u3(xc()),o3r=u3(Wc()),s3r=u3(Jc()),EUA=u3(Fc()),c3r=al(),l3r=Mf(),fUA=bl(),u3r=function(A){(0,o3r.default)(t,A);var r=(0,s3r.default)(t);function t(){var i;(0,n3r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=0&&s<=11}},{key:"set",value:function(o,s,g){var E=o.getUTCHours()>=12;return E&&g<12?o.setUTCHours(g+12,0,0,0):o.setUTCHours(g,0,0,0),o}}]),t}(c3r.Parser);tJ.Hour0To11Parser=u3r});var DUA=GA(iJ=>{"use strict";var g3=at().default;Object.defineProperty(iJ,"__esModule",{value:!0});iJ.Hour1To24Parser=void 0;var g3r=g3(Hc()),d3r=g3(Sc()),hUA=g3(xc()),p3r=g3(Wc()),E3r=g3(Jc()),QUA=g3(Fc()),f3r=al(),B3r=Mf(),mUA=bl(),h3r=function(A){(0,p3r.default)(t,A);var r=(0,E3r.default)(t);function t(){var i;(0,g3r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=1&&s<=24}},{key:"set",value:function(o,s,g){var E=g<=24?g%24:g;return o.setUTCHours(E,0,0,0),o}}]),t}(f3r.Parser);iJ.Hour1To24Parser=h3r});var yUA=GA(nJ=>{"use strict";var d3=at().default;Object.defineProperty(nJ,"__esModule",{value:!0});nJ.MinuteParser=void 0;var Q3r=d3(Hc()),m3r=d3(Sc()),_UA=d3(xc()),D3r=d3(Wc()),_3r=d3(Jc()),wUA=d3(Fc()),w3r=al(),v3r=Mf(),vUA=bl(),y3r=function(A){(0,D3r.default)(t,A);var r=(0,_3r.default)(t);function t(){var i;(0,Q3r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=0&&s<=59}},{key:"set",value:function(o,s,g){return o.setUTCMinutes(g,0,0),o}}]),t}(w3r.Parser);nJ.MinuteParser=y3r});var OUA=GA(aJ=>{"use strict";var p3=at().default;Object.defineProperty(aJ,"__esModule",{value:!0});aJ.SecondParser=void 0;var C3r=p3(Hc()),I3r=p3(Sc()),CUA=p3(xc()),b3r=p3(Wc()),O3r=p3(Jc()),IUA=p3(Fc()),M3r=al(),k3r=Mf(),bUA=bl(),x3r=function(A){(0,b3r.default)(t,A);var r=(0,O3r.default)(t);function t(){var i;(0,C3r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g=0&&s<=59}},{key:"set",value:function(o,s,g){return o.setUTCSeconds(g,0),o}}]),t}(M3r.Parser);aJ.SecondParser=x3r});var HUA=GA(oJ=>{"use strict";var E3=at().default;Object.defineProperty(oJ,"__esModule",{value:!0});oJ.FractionOfSecondParser=void 0;var H3r=E3(Hc()),S3r=E3(Sc()),MUA=E3(xc()),F3r=E3(Wc()),R3r=E3(Jc()),kUA=E3(Fc()),T3r=al(),xUA=bl(),N3r=function(A){(0,F3r.default)(t,A);var r=(0,R3r.default)(t);function t(){var i;(0,H3r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";var f3=at().default;Object.defineProperty(sJ,"__esModule",{value:!0});sJ.ISOTimezoneWithZParser=void 0;var P3r=f3(Hc()),G3r=f3(Sc()),SUA=f3(xc()),Y3r=f3(Wc()),U3r=f3(Jc()),FUA=f3(Fc()),L3r=al(),_k=Mf(),wk=bl(),j3r=function(A){(0,Y3r.default)(t,A);var r=(0,U3r.default)(t);function t(){var i;(0,P3r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";var B3=at().default;Object.defineProperty(cJ,"__esModule",{value:!0});cJ.ISOTimezoneParser=void 0;var W3r=B3(Hc()),J3r=B3(Sc()),TUA=B3(xc()),q3r=B3(Wc()),V3r=B3(Jc()),NUA=B3(Fc()),z3r=al(),vk=Mf(),yk=bl(),K3r=function(A){(0,q3r.default)(t,A);var r=(0,V3r.default)(t);function t(){var i;(0,W3r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";var h3=at().default;Object.defineProperty(lJ,"__esModule",{value:!0});lJ.TimestampSecondsParser=void 0;var X3r=h3(Hc()),Z3r=h3(Sc()),GUA=h3(xc()),$3r=h3(Wc()),A7r=h3(Jc()),YUA=h3(Fc()),e7r=al(),r7r=bl(),t7r=function(A){(0,$3r.default)(t,A);var r=(0,A7r.default)(t);function t(){var i;(0,X3r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";var Q3=at().default;Object.defineProperty(uJ,"__esModule",{value:!0});uJ.TimestampMillisecondsParser=void 0;var i7r=Q3(Hc()),n7r=Q3(Sc()),LUA=Q3(xc()),a7r=Q3(Wc()),o7r=Q3(Jc()),jUA=Q3(Fc()),s7r=al(),c7r=bl(),l7r=function(A){(0,a7r.default)(t,A);var r=(0,o7r.default)(t);function t(){var i;(0,i7r.default)(this,t);for(var o=arguments.length,s=new Array(o),g=0;g{"use strict";Object.defineProperty(gJ,"__esModule",{value:!0});gJ.parsers=void 0;var u7r=qGA(),g7r=KGA(),d7r=AYA(),p7r=iYA(),E7r=sYA(),f7r=uYA(),B7r=pYA(),h7r=BYA(),Q7r=mYA(),m7r=CYA(),D7r=xYA(),_7r=HYA(),w7r=SYA(),v7r=PYA(),y7r=UYA(),C7r=WYA(),I7r=KYA(),b7r=$YA(),O7r=rUA(),M7r=nUA(),k7r=cUA(),x7r=dUA(),H7r=BUA(),S7r=DUA(),F7r=yUA(),R7r=OUA(),T7r=HUA(),N7r=RUA(),P7r=PUA(),G7r=UUA(),Y7r=WUA(),U7r={G:new u7r.EraParser,y:new g7r.YearParser,Y:new d7r.LocalWeekYearParser,R:new p7r.ISOWeekYearParser,u:new E7r.ExtendedYearParser,Q:new f7r.QuarterParser,q:new B7r.StandAloneQuarterParser,M:new h7r.MonthParser,L:new Q7r.StandAloneMonthParser,w:new m7r.LocalWeekParser,I:new D7r.ISOWeekParser,d:new _7r.DateParser,D:new w7r.DayOfYearParser,E:new v7r.DayParser,e:new y7r.LocalDayParser,c:new C7r.StandAloneLocalDayParser,i:new I7r.ISODayParser,a:new b7r.AMPMParser,b:new O7r.AMPMMidnightParser,B:new M7r.DayPeriodParser,h:new k7r.Hour1to12Parser,H:new x7r.Hour0to23Parser,K:new H7r.Hour0To11Parser,k:new S7r.Hour1To24Parser,m:new F7r.MinuteParser,s:new R7r.SecondParser,S:new T7r.FractionOfSecondParser,X:new N7r.ISOTimezoneWithZParser,x:new P7r.ISOTimezoneParser,t:new G7r.TimestampSecondsParser,T:new Y7r.TimestampMillisecondsParser};gJ.parsers=U7r});var MgA=GA((pJ,XUA)=>{"use strict";var m1=at().default;Object.defineProperty(pJ,"__esModule",{value:!0});pJ.default=iOr;var L7r=m1(Wh()),qUA=m1(HGA()),j7r=m1(s2()),W7r=m1(Y5()),VUA=m1(An()),J7r=m1(W5()),zUA=m1(TuA()),q7r=m1(B1()),dJ=NuA(),KUA=m1(vo()),V7r=m1(Ct()),z7r=fgA(),K7r=JUA(),X7r=ud(),Z7r=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,$7r=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,AOr=/^'([^]*?)'?$/,eOr=/''/g,rOr=/\S/,tOr=/[a-zA-Z]/;function iOr(A,r,t,i){var o,s,g,E,p,B,m,_,x,O,k,P,H,T,v,F,y,S;(0,V7r.default)(3,arguments);var U=String(A),V=String(r),wA=(0,X7r.getDefaultOptions)(),IA=(o=(s=i?.locale)!==null&&s!==void 0?s:wA.locale)!==null&&o!==void 0?o:j7r.default;if(!IA.match)throw new RangeError("locale must contain match property");var pA=(0,KUA.default)((g=(E=(p=(B=i?.firstWeekContainsDate)!==null&&B!==void 0?B:i==null||(m=i.locale)===null||m===void 0||(_=m.options)===null||_===void 0?void 0:_.firstWeekContainsDate)!==null&&p!==void 0?p:wA.firstWeekContainsDate)!==null&&E!==void 0?E:(x=wA.locale)===null||x===void 0||(O=x.options)===null||O===void 0?void 0:O.firstWeekContainsDate)!==null&&g!==void 0?g:1);if(!(pA>=1&&pA<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var oA=(0,KUA.default)((k=(P=(H=(T=i?.weekStartsOn)!==null&&T!==void 0?T:i==null||(v=i.locale)===null||v===void 0||(F=v.options)===null||F===void 0?void 0:F.weekStartsOn)!==null&&H!==void 0?H:wA.weekStartsOn)!==null&&P!==void 0?P:(y=wA.locale)===null||y===void 0||(S=y.options)===null||S===void 0?void 0:S.weekStartsOn)!==null&&k!==void 0?k:0);if(!(oA>=0&&oA<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(V==="")return U===""?(0,VUA.default)(t):new Date(NaN);var cA={firstWeekContainsDate:pA,weekStartsOn:oA,locale:IA},eA=[new z7r.DateToSystemTimezoneSetter],Y=V.match($7r).map(function(fA){var M=fA[0];if(M in zUA.default){var aA=zUA.default[M];return aA(fA,IA.formatLong)}return fA}).join("").match(Z7r),q=[],X=(0,qUA.default)(Y),Z;try{var K=function(){var M=Z.value;!(i!=null&&i.useAdditionalWeekYearTokens)&&(0,dJ.isProtectedWeekYearToken)(M)&&(0,dJ.throwProtectedError)(M,V,A),!(i!=null&&i.useAdditionalDayOfYearTokens)&&(0,dJ.isProtectedDayOfYearToken)(M)&&(0,dJ.throwProtectedError)(M,V,A);var aA=M[0],gA=K7r.parsers[aA];if(gA){var QA=gA.incompatibleTokens;if(Array.isArray(QA)){var mA=q.find(function(SA){return QA.includes(SA.token)||SA.token===aA});if(mA)throw new RangeError("The format string mustn't contain `".concat(mA.fullToken,"` and `").concat(M,"` at the same time"))}else if(gA.incompatibleTokens==="*"&&q.length>0)throw new RangeError("The format string mustn't contain `".concat(M,"` and any other token at the same time"));q.push({token:aA,fullToken:M});var FA=gA.run(U,M,IA.match,cA);if(!FA)return{v:new Date(NaN)};eA.push(FA.setter),U=FA.rest}else{if(aA.match(tOr))throw new RangeError("Format string contains an unescaped latin alphabet character `"+aA+"`");if(M==="''"?M="'":aA==="'"&&(M=nOr(M)),U.indexOf(M)===0)U=U.slice(M.length);else return{v:new Date(NaN)}}};for(X.s();!(Z=X.n()).done;){var J=K();if((0,L7r.default)(J)==="object")return J.v}}catch(fA){X.e(fA)}finally{X.f()}if(U.length>0&&rOr.test(U))return new Date(NaN);var sA=eA.map(function(fA){return fA.priority}).sort(function(fA,M){return M-fA}).filter(function(fA,M,aA){return aA.indexOf(fA)===M}).map(function(fA){return eA.filter(function(M){return M.priority===fA}).sort(function(M,aA){return aA.subPriority-M.subPriority})}).map(function(fA){return fA[0]}),uA=(0,VUA.default)(t);if(isNaN(uA.getTime()))return new Date(NaN);var BA=(0,W7r.default)(uA,(0,q7r.default)(uA)),CA={},z=(0,qUA.default)(sA),AA;try{for(z.s();!(AA=z.n()).done;){var iA=AA.value;if(!iA.validate(BA,cA))return new Date(NaN);var _A=iA.set(BA,CA,cA);Array.isArray(_A)?(BA=_A[0],(0,J7r.default)(CA,_A[1])):BA=_A}}catch(fA){z.e(fA)}finally{z.f()}return BA}function nOr(A){return A.match(AOr)[1].replace(eOr,"'")}XUA.exports=pJ.default});var $UA=GA((EJ,ZUA)=>{"use strict";var kgA=at().default;Object.defineProperty(EJ,"__esModule",{value:!0});EJ.default=cOr;var aOr=kgA(MgA()),oOr=kgA($4()),sOr=kgA(Ct());function cOr(A,r,t){return(0,sOr.default)(2,arguments),(0,oOr.default)((0,aOr.default)(A,r,new Date,t))}ZUA.exports=EJ.default});var rLA=GA((fJ,eLA)=>{"use strict";var ALA=at().default;Object.defineProperty(fJ,"__esModule",{value:!0});fJ.default=gOr;var lOr=ALA(An()),uOr=ALA(Ct());function gOr(A){return(0,uOr.default)(1,arguments),(0,lOr.default)(A).getDay()===1}eLA.exports=fJ.default});var nLA=GA((BJ,iLA)=>{"use strict";var tLA=at().default;Object.defineProperty(BJ,"__esModule",{value:!0});BJ.default=EOr;var dOr=tLA(An()),pOr=tLA(Ct());function EOr(A){return(0,pOr.default)(1,arguments),(0,dOr.default)(A).getTime(){"use strict";var aLA=at().default;Object.defineProperty(hJ,"__esModule",{value:!0});hJ.default=hOr;var fOr=aLA(An()),BOr=aLA(Ct());function hOr(A){(0,BOr.default)(1,arguments);var r=(0,fOr.default)(A);return r.setMinutes(0,0,0),r}oLA.exports=hJ.default});var HgA=GA((QJ,lLA)=>{"use strict";var cLA=at().default;Object.defineProperty(QJ,"__esModule",{value:!0});QJ.default=mOr;var sLA=cLA(xgA()),QOr=cLA(Ct());function mOr(A,r){(0,QOr.default)(2,arguments);var t=(0,sLA.default)(A),i=(0,sLA.default)(r);return t.getTime()===i.getTime()}lLA.exports=QJ.default});var DJ=GA((mJ,dLA)=>{"use strict";var gLA=at().default;Object.defineProperty(mJ,"__esModule",{value:!0});mJ.default=_Or;var uLA=gLA(X4()),DOr=gLA(Ct());function _Or(A,r,t){(0,DOr.default)(2,arguments);var i=(0,uLA.default)(A,t),o=(0,uLA.default)(r,t);return i.getTime()===o.getTime()}dLA.exports=mJ.default});var SgA=GA((_J,ELA)=>{"use strict";var pLA=at().default;Object.defineProperty(_J,"__esModule",{value:!0});_J.default=yOr;var wOr=pLA(DJ()),vOr=pLA(Ct());function yOr(A,r){return(0,vOr.default)(2,arguments),(0,wOr.default)(A,r,{weekStartsOn:1})}ELA.exports=_J.default});var QLA=GA((wJ,hLA)=>{"use strict";var BLA=at().default;Object.defineProperty(wJ,"__esModule",{value:!0});wJ.default=IOr;var fLA=BLA(P5()),COr=BLA(Ct());function IOr(A,r){(0,COr.default)(2,arguments);var t=(0,fLA.default)(A),i=(0,fLA.default)(r);return t.getTime()===i.getTime()}hLA.exports=wJ.default});var FgA=GA((vJ,_LA)=>{"use strict";var DLA=at().default;Object.defineProperty(vJ,"__esModule",{value:!0});vJ.default=OOr;var mLA=DLA(dL()),bOr=DLA(Ct());function OOr(A,r){(0,bOr.default)(2,arguments);var t=(0,mLA.default)(A),i=(0,mLA.default)(r);return t.getTime()===i.getTime()}_LA.exports=vJ.default});var RgA=GA((yJ,yLA)=>{"use strict";var vLA=at().default;Object.defineProperty(yJ,"__esModule",{value:!0});yJ.default=kOr;var wLA=vLA(An()),MOr=vLA(Ct());function kOr(A,r){(0,MOr.default)(2,arguments);var t=(0,wLA.default)(A),i=(0,wLA.default)(r);return t.getFullYear()===i.getFullYear()&&t.getMonth()===i.getMonth()}yLA.exports=yJ.default});var TgA=GA((CJ,bLA)=>{"use strict";var ILA=at().default;Object.defineProperty(CJ,"__esModule",{value:!0});CJ.default=HOr;var CLA=ILA(hL()),xOr=ILA(Ct());function HOr(A,r){(0,xOr.default)(2,arguments);var t=(0,CLA.default)(A),i=(0,CLA.default)(r);return t.getTime()===i.getTime()}bLA.exports=CJ.default});var NgA=GA((IJ,MLA)=>{"use strict";var OLA=at().default;Object.defineProperty(IJ,"__esModule",{value:!0});IJ.default=ROr;var SOr=OLA(An()),FOr=OLA(Ct());function ROr(A){(0,FOr.default)(1,arguments);var r=(0,SOr.default)(A);return r.setMilliseconds(0),r}MLA.exports=IJ.default});var PgA=GA((bJ,HLA)=>{"use strict";var xLA=at().default;Object.defineProperty(bJ,"__esModule",{value:!0});bJ.default=NOr;var kLA=xLA(NgA()),TOr=xLA(Ct());function NOr(A,r){(0,TOr.default)(2,arguments);var t=(0,kLA.default)(A),i=(0,kLA.default)(r);return t.getTime()===i.getTime()}HLA.exports=bJ.default});var GgA=GA((OJ,RLA)=>{"use strict";var FLA=at().default;Object.defineProperty(OJ,"__esModule",{value:!0});OJ.default=GOr;var SLA=FLA(An()),POr=FLA(Ct());function GOr(A,r){(0,POr.default)(2,arguments);var t=(0,SLA.default)(A),i=(0,SLA.default)(r);return t.getFullYear()===i.getFullYear()}RLA.exports=OJ.default});var PLA=GA((MJ,NLA)=>{"use strict";var TLA=at().default;Object.defineProperty(MJ,"__esModule",{value:!0});MJ.default=LOr;var YOr=TLA(HgA()),UOr=TLA(Ct());function LOr(A){return(0,UOr.default)(1,arguments),(0,YOr.default)(Date.now(),A)}NLA.exports=MJ.default});var ULA=GA((kJ,YLA)=>{"use strict";var GLA=at().default;Object.defineProperty(kJ,"__esModule",{value:!0});kJ.default=JOr;var jOr=GLA(SgA()),WOr=GLA(Ct());function JOr(A){return(0,WOr.default)(1,arguments),(0,jOr.default)(A,Date.now())}YLA.exports=kJ.default});var WLA=GA((xJ,jLA)=>{"use strict";var LLA=at().default;Object.defineProperty(xJ,"__esModule",{value:!0});xJ.default=zOr;var qOr=LLA(FgA()),VOr=LLA(Ct());function zOr(A){return(0,VOr.default)(1,arguments),(0,qOr.default)(Date.now(),A)}jLA.exports=xJ.default});var VLA=GA((HJ,qLA)=>{"use strict";var JLA=at().default;Object.defineProperty(HJ,"__esModule",{value:!0});HJ.default=ZOr;var KOr=JLA(RgA()),XOr=JLA(Ct());function ZOr(A){return(0,XOr.default)(1,arguments),(0,KOr.default)(Date.now(),A)}qLA.exports=HJ.default});var XLA=GA((SJ,KLA)=>{"use strict";var zLA=at().default;Object.defineProperty(SJ,"__esModule",{value:!0});SJ.default=e6r;var $Or=zLA(TgA()),A6r=zLA(Ct());function e6r(A){return(0,A6r.default)(1,arguments),(0,$Or.default)(Date.now(),A)}KLA.exports=SJ.default});var AjA=GA((FJ,$LA)=>{"use strict";var ZLA=at().default;Object.defineProperty(FJ,"__esModule",{value:!0});FJ.default=i6r;var r6r=ZLA(PgA()),t6r=ZLA(Ct());function i6r(A){return(0,t6r.default)(1,arguments),(0,r6r.default)(Date.now(),A)}$LA.exports=FJ.default});var tjA=GA((RJ,rjA)=>{"use strict";var ejA=at().default;Object.defineProperty(RJ,"__esModule",{value:!0});RJ.default=o6r;var n6r=ejA(DJ()),a6r=ejA(Ct());function o6r(A,r){return(0,a6r.default)(1,arguments),(0,n6r.default)(A,Date.now(),r)}rjA.exports=RJ.default});var ajA=GA((TJ,njA)=>{"use strict";var ijA=at().default;Object.defineProperty(TJ,"__esModule",{value:!0});TJ.default=l6r;var s6r=ijA(GgA()),c6r=ijA(Ct());function l6r(A){return(0,c6r.default)(1,arguments),(0,s6r.default)(A,Date.now())}njA.exports=TJ.default});var cjA=GA((NJ,sjA)=>{"use strict";var ojA=at().default;Object.defineProperty(NJ,"__esModule",{value:!0});NJ.default=d6r;var u6r=ojA(An()),g6r=ojA(Ct());function d6r(A){return(0,g6r.default)(1,arguments),(0,u6r.default)(A).getDay()===4}sjA.exports=NJ.default});var gjA=GA((PJ,ujA)=>{"use strict";var ljA=at().default;Object.defineProperty(PJ,"__esModule",{value:!0});PJ.default=f6r;var p6r=ljA(G5()),E6r=ljA(Ct());function f6r(A){return(0,E6r.default)(1,arguments),(0,p6r.default)(A,Date.now())}ujA.exports=PJ.default});var pjA=GA((GJ,djA)=>{"use strict";var YgA=at().default;Object.defineProperty(GJ,"__esModule",{value:!0});GJ.default=m6r;var B6r=YgA(f1()),h6r=YgA(G5()),Q6r=YgA(Ct());function m6r(A){return(0,Q6r.default)(1,arguments),(0,h6r.default)(A,(0,B6r.default)(Date.now(),1))}djA.exports=GJ.default});var BjA=GA((YJ,fjA)=>{"use strict";var EjA=at().default;Object.defineProperty(YJ,"__esModule",{value:!0});YJ.default=w6r;var D6r=EjA(An()),_6r=EjA(Ct());function w6r(A){return(0,_6r.default)(1,arguments),(0,D6r.default)(A).getDay()===2}fjA.exports=YJ.default});var mjA=GA((UJ,QjA)=>{"use strict";var hjA=at().default;Object.defineProperty(UJ,"__esModule",{value:!0});UJ.default=C6r;var v6r=hjA(An()),y6r=hjA(Ct());function C6r(A){return(0,y6r.default)(1,arguments),(0,v6r.default)(A).getDay()===3}QjA.exports=UJ.default});var wjA=GA((LJ,_jA)=>{"use strict";var DjA=at().default;Object.defineProperty(LJ,"__esModule",{value:!0});LJ.default=b6r;var UgA=DjA(An()),I6r=DjA(Ct());function b6r(A,r){(0,I6r.default)(2,arguments);var t=(0,UgA.default)(A).getTime(),i=(0,UgA.default)(r.start).getTime(),o=(0,UgA.default)(r.end).getTime();if(!(i<=o))throw new RangeError("Invalid interval");return t>=i&&t<=o}_jA.exports=LJ.default});var Ck=GA((jJ,vjA)=>{"use strict";var LgA=at().default;Object.defineProperty(jJ,"__esModule",{value:!0});jJ.default=x6r;var O6r=LgA(f1()),M6r=LgA(Ct()),k6r=LgA(vo());function x6r(A,r){(0,M6r.default)(2,arguments);var t=(0,k6r.default)(r);return(0,O6r.default)(A,-t)}vjA.exports=jJ.default});var CjA=GA((WJ,yjA)=>{"use strict";var jgA=at().default;Object.defineProperty(WJ,"__esModule",{value:!0});WJ.default=R6r;var H6r=jgA(G5()),S6r=jgA(Ck()),F6r=jgA(Ct());function R6r(A){return(0,F6r.default)(1,arguments),(0,H6r.default)(A,(0,S6r.default)(Date.now(),1))}yjA.exports=WJ.default});var OjA=GA((JJ,bjA)=>{"use strict";var IjA=at().default;Object.defineProperty(JJ,"__esModule",{value:!0});JJ.default=P6r;var T6r=IjA(An()),N6r=IjA(Ct());function P6r(A){(0,N6r.default)(1,arguments);var r=(0,T6r.default)(A),t=r.getFullYear(),i=9+Math.floor(t/10)*10;return r.setFullYear(i+1,0,0),r.setHours(0,0,0,0),r}bjA.exports=JJ.default});var JgA=GA((qJ,MjA)=>{"use strict";var WgA=at().default;Object.defineProperty(qJ,"__esModule",{value:!0});qJ.default=j6r;var G6r=WgA(An()),Y6r=WgA(vo()),U6r=WgA(Ct()),L6r=ud();function j6r(A,r){var t,i,o,s,g,E,p,B;(0,U6r.default)(1,arguments);var m=(0,L6r.getDefaultOptions)(),_=(0,Y6r.default)((t=(i=(o=(s=r?.weekStartsOn)!==null&&s!==void 0?s:r==null||(g=r.locale)===null||g===void 0||(E=g.options)===null||E===void 0?void 0:E.weekStartsOn)!==null&&o!==void 0?o:m.weekStartsOn)!==null&&i!==void 0?i:(p=m.locale)===null||p===void 0||(B=p.options)===null||B===void 0?void 0:B.weekStartsOn)!==null&&t!==void 0?t:0);if(!(_>=0&&_<=6))throw new RangeError("weekStartsOn must be between 0 and 6");var x=(0,G6r.default)(A),O=x.getDay(),k=(O<_?-7:0)+6-(O-_);return x.setHours(0,0,0,0),x.setDate(x.getDate()+k),x}MjA.exports=qJ.default});var HjA=GA((VJ,xjA)=>{"use strict";var kjA=at().default;Object.defineProperty(VJ,"__esModule",{value:!0});VJ.default=q6r;var W6r=kjA(JgA()),J6r=kjA(Ct());function q6r(A){return(0,J6r.default)(1,arguments),(0,W6r.default)(A,{weekStartsOn:1})}xjA.exports=VJ.default});var FjA=GA((zJ,SjA)=>{"use strict";var qgA=at().default;Object.defineProperty(zJ,"__esModule",{value:!0});zJ.default=X6r;var V6r=qgA(t2()),z6r=qgA(Iw()),K6r=qgA(Ct());function X6r(A){(0,K6r.default)(1,arguments);var r=(0,V6r.default)(A),t=new Date(0);t.setFullYear(r+1,0,4),t.setHours(0,0,0,0);var i=(0,z6r.default)(t);return i.setDate(i.getDate()-1),i}SjA.exports=zJ.default});var NjA=GA((KJ,TjA)=>{"use strict";var RjA=at().default;Object.defineProperty(KJ,"__esModule",{value:!0});KJ.default=A8r;var Z6r=RjA(An()),$6r=RjA(Ct());function A8r(A){(0,$6r.default)(1,arguments);var r=(0,Z6r.default)(A),t=r.getMonth(),i=t-t%3+3;return r.setMonth(i,0),r.setHours(0,0,0,0),r}TjA.exports=KJ.default});var YjA=GA((XJ,GjA)=>{"use strict";var PjA=at().default;Object.defineProperty(XJ,"__esModule",{value:!0});XJ.default=t8r;var e8r=PjA(An()),r8r=PjA(Ct());function t8r(A){(0,r8r.default)(1,arguments);var r=(0,e8r.default)(A),t=r.getFullYear();return r.setFullYear(t+1,0,0),r.setHours(0,0,0,0),r}GjA.exports=XJ.default});var LjA=GA((ZJ,UjA)=>{"use strict";var m3=at().default;Object.defineProperty(ZJ,"__esModule",{value:!0});ZJ.default=p8r;var i8r=m3(An()),n8r=m3(RuA()),a8r=m3(B1()),o8r=m3($4()),s8r=m3(Y5()),c8r=m3(Ct()),l8r=/(\w)\1*|''|'(''|[^'])+('|$)|./g,u8r=/^'([^]*?)'?$/,g8r=/''/g,d8r=/[a-zA-Z]/;function p8r(A,r){(0,c8r.default)(2,arguments);var t=(0,i8r.default)(A);if(!(0,o8r.default)(t))throw new RangeError("Invalid time value");var i=(0,a8r.default)(t),o=(0,s8r.default)(t,i),s=r.match(l8r);if(!s)return"";var g=s.map(function(E){if(E==="''")return"'";var p=E[0];if(p==="'")return E8r(E);var B=n8r.default[p];if(B)return B(o,E);if(p.match(d8r))throw new RangeError("Format string contains an unescaped latin alphabet character `"+p+"`");return E}).join("");return g}function E8r(A){var r=A.match(u8r);return r?r[1].replace(g8r,"'"):A}UjA.exports=ZJ.default});var JjA=GA(($J,WjA)=>{"use strict";var f8r=at().default;Object.defineProperty($J,"__esModule",{value:!0});$J.default=h8r;var B8r=f8r(Ct()),jjA=365.2425;function h8r(A){var r=A.years,t=A.months,i=A.weeks,o=A.days,s=A.hours,g=A.minutes,E=A.seconds;(0,B8r.default)(1,arguments);var p=0;r&&(p+=r*jjA),t&&(p+=t*(jjA/12)),i&&(p+=i*7),o&&(p+=o);var B=p*24*60*60;return s&&(B+=s*60*60),g&&(B+=g*60),E&&(B+=E),Math.round(B*1e3)}WjA.exports=$J.default});var VjA=GA((Aq,qjA)=>{"use strict";var Q8r=at().default;Object.defineProperty(Aq,"__esModule",{value:!0});Aq.default=_8r;var m8r=Q8r(Ct()),D8r=_u();function _8r(A){(0,m8r.default)(1,arguments);var r=A/D8r.millisecondsInHour;return Math.floor(r)}qjA.exports=Aq.default});var KjA=GA((eq,zjA)=>{"use strict";var w8r=at().default;Object.defineProperty(eq,"__esModule",{value:!0});eq.default=C8r;var v8r=w8r(Ct()),y8r=_u();function C8r(A){(0,v8r.default)(1,arguments);var r=A/y8r.millisecondsInMinute;return Math.floor(r)}zjA.exports=eq.default});var ZjA=GA((rq,XjA)=>{"use strict";var I8r=at().default;Object.defineProperty(rq,"__esModule",{value:!0});rq.default=M8r;var b8r=I8r(Ct()),O8r=_u();function M8r(A){(0,b8r.default)(1,arguments);var r=A/O8r.millisecondsInSecond;return Math.floor(r)}XjA.exports=rq.default});var AWA=GA((tq,$jA)=>{"use strict";var k8r=at().default;Object.defineProperty(tq,"__esModule",{value:!0});tq.default=S8r;var x8r=k8r(Ct()),H8r=_u();function S8r(A){(0,x8r.default)(1,arguments);var r=A/H8r.minutesInHour;return Math.floor(r)}$jA.exports=tq.default});var rWA=GA((iq,eWA)=>{"use strict";var F8r=at().default;Object.defineProperty(iq,"__esModule",{value:!0});iq.default=N8r;var R8r=F8r(Ct()),T8r=_u();function N8r(A){return(0,R8r.default)(1,arguments),Math.floor(A*T8r.millisecondsInMinute)}eWA.exports=iq.default});var iWA=GA((nq,tWA)=>{"use strict";var P8r=at().default;Object.defineProperty(nq,"__esModule",{value:!0});nq.default=U8r;var G8r=P8r(Ct()),Y8r=_u();function U8r(A){return(0,G8r.default)(1,arguments),Math.floor(A*Y8r.secondsInMinute)}tWA.exports=nq.default});var aWA=GA((aq,nWA)=>{"use strict";var L8r=at().default;Object.defineProperty(aq,"__esModule",{value:!0});aq.default=J8r;var j8r=L8r(Ct()),W8r=_u();function J8r(A){(0,j8r.default)(1,arguments);var r=A/W8r.monthsInQuarter;return Math.floor(r)}nWA.exports=aq.default});var sWA=GA((oq,oWA)=>{"use strict";var q8r=at().default;Object.defineProperty(oq,"__esModule",{value:!0});oq.default=K8r;var V8r=q8r(Ct()),z8r=_u();function K8r(A){(0,V8r.default)(1,arguments);var r=A/z8r.monthsInYear;return Math.floor(r)}oWA.exports=oq.default});var nD=GA((sq,cWA)=>{"use strict";var VgA=at().default;Object.defineProperty(sq,"__esModule",{value:!0});sq.default=AMr;var X8r=VgA(f1()),Z8r=VgA(tk()),$8r=VgA(Ct());function AMr(A,r){(0,$8r.default)(2,arguments);var t=r-(0,Z8r.default)(A);return t<=0&&(t+=7),(0,X8r.default)(A,t)}cWA.exports=sq.default});var gWA=GA((cq,uWA)=>{"use strict";var lWA=at().default;Object.defineProperty(cq,"__esModule",{value:!0});cq.default=tMr;var eMr=lWA(nD()),rMr=lWA(Ct());function tMr(A){return(0,rMr.default)(1,arguments),(0,eMr.default)(A,5)}uWA.exports=cq.default});var EWA=GA((lq,pWA)=>{"use strict";var dWA=at().default;Object.defineProperty(lq,"__esModule",{value:!0});lq.default=aMr;var iMr=dWA(nD()),nMr=dWA(Ct());function aMr(A){return(0,nMr.default)(1,arguments),(0,iMr.default)(A,1)}pWA.exports=lq.default});var hWA=GA((uq,BWA)=>{"use strict";var fWA=at().default;Object.defineProperty(uq,"__esModule",{value:!0});uq.default=cMr;var oMr=fWA(nD()),sMr=fWA(Ct());function cMr(A){return(0,sMr.default)(1,arguments),(0,oMr.default)(A,6)}BWA.exports=uq.default});var DWA=GA((gq,mWA)=>{"use strict";var QWA=at().default;Object.defineProperty(gq,"__esModule",{value:!0});gq.default=gMr;var lMr=QWA(nD()),uMr=QWA(Ct());function gMr(A){return(0,uMr.default)(1,arguments),(0,lMr.default)(A,0)}mWA.exports=gq.default});var vWA=GA((dq,wWA)=>{"use strict";var _WA=at().default;Object.defineProperty(dq,"__esModule",{value:!0});dq.default=EMr;var dMr=_WA(nD()),pMr=_WA(Ct());function EMr(A){return(0,pMr.default)(1,arguments),(0,dMr.default)(A,4)}wWA.exports=dq.default});var IWA=GA((pq,CWA)=>{"use strict";var yWA=at().default;Object.defineProperty(pq,"__esModule",{value:!0});pq.default=hMr;var fMr=yWA(nD()),BMr=yWA(Ct());function hMr(A){return(0,BMr.default)(1,arguments),(0,fMr.default)(A,2)}CWA.exports=pq.default});var MWA=GA((Eq,OWA)=>{"use strict";var bWA=at().default;Object.defineProperty(Eq,"__esModule",{value:!0});Eq.default=DMr;var QMr=bWA(nD()),mMr=bWA(Ct());function DMr(A){return(0,mMr.default)(1,arguments),(0,QMr.default)(A,3)}OWA.exports=Eq.default});var SWA=GA((hq,HWA)=>{"use strict";var kWA=at().default;Object.defineProperty(hq,"__esModule",{value:!0});hq.default=vMr;var Bq=_u(),_Mr=kWA(Ct()),wMr=kWA(vo());function vMr(A,r){var t;(0,_Mr.default)(1,arguments);var i=(0,wMr.default)((t=r?.additionalDigits)!==null&&t!==void 0?t:2);if(i!==2&&i!==1&&i!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(!(typeof A=="string"||Object.prototype.toString.call(A)==="[object String]"))return new Date(NaN);var o=bMr(A),s;if(o.date){var g=OMr(o.date,i);s=MMr(g.restDateString,g.year)}if(!s||isNaN(s.getTime()))return new Date(NaN);var E=s.getTime(),p=0,B;if(o.time&&(p=kMr(o.time),isNaN(p)))return new Date(NaN);if(o.timezone){if(B=xMr(o.timezone),isNaN(B))return new Date(NaN)}else{var m=new Date(E+p),_=new Date(0);return _.setFullYear(m.getUTCFullYear(),m.getUTCMonth(),m.getUTCDate()),_.setHours(m.getUTCHours(),m.getUTCMinutes(),m.getUTCSeconds(),m.getUTCMilliseconds()),_}return new Date(E+p+B)}var fq={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},yMr=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,CMr=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,IMr=/^([+-])(\d{2})(?::?(\d{2}))?$/;function bMr(A){var r={},t=A.split(fq.dateTimeDelimiter),i;if(t.length>2)return r;if(/:/.test(t[0])?i=t[0]:(r.date=t[0],i=t[1],fq.timeZoneDelimiter.test(r.date)&&(r.date=A.split(fq.timeZoneDelimiter)[0],i=A.substr(r.date.length,A.length))),i){var o=fq.timezone.exec(i);o?(r.time=i.replace(o[1],""),r.timezone=o[1]):r.time=i}return r}function OMr(A,r){var t=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+r)+"})|(\\d{2}|[+-]\\d{"+(2+r)+"})$)"),i=A.match(t);if(!i)return{year:NaN,restDateString:""};var o=i[1]?parseInt(i[1]):null,s=i[2]?parseInt(i[2]):null;return{year:s===null?o:s*100,restDateString:A.slice((i[1]||i[2]).length)}}function MMr(A,r){if(r===null)return new Date(NaN);var t=A.match(yMr);if(!t)return new Date(NaN);var i=!!t[4],o=Ik(t[1]),s=Ik(t[2])-1,g=Ik(t[3]),E=Ik(t[4]),p=Ik(t[5])-1;if(i)return TMr(r,E,p)?HMr(r,E,p):new Date(NaN);var B=new Date(0);return!FMr(r,s,g)||!RMr(r,o)?new Date(NaN):(B.setUTCFullYear(r,s,Math.max(o,g)),B)}function Ik(A){return A?parseInt(A):1}function kMr(A){var r=A.match(CMr);if(!r)return NaN;var t=zgA(r[1]),i=zgA(r[2]),o=zgA(r[3]);return NMr(t,i,o)?t*Bq.millisecondsInHour+i*Bq.millisecondsInMinute+o*1e3:NaN}function zgA(A){return A&&parseFloat(A.replace(",","."))||0}function xMr(A){if(A==="Z")return 0;var r=A.match(IMr);if(!r)return 0;var t=r[1]==="+"?-1:1,i=parseInt(r[2]),o=r[3]&&parseInt(r[3])||0;return PMr(i,o)?t*(i*Bq.millisecondsInHour+o*Bq.millisecondsInMinute):NaN}function HMr(A,r,t){var i=new Date(0);i.setUTCFullYear(A,0,4);var o=i.getUTCDay()||7,s=(r-1)*7+t+1-o;return i.setUTCDate(i.getUTCDate()+s),i}var SMr=[31,null,31,30,31,30,31,31,30,31,30,31];function xWA(A){return A%400===0||A%4===0&&A%100!==0}function FMr(A,r,t){return r>=0&&r<=11&&t>=1&&t<=(SMr[r]||(xWA(A)?29:28))}function RMr(A,r){return r>=1&&r<=(xWA(A)?366:365)}function TMr(A,r,t){return r>=1&&r<=53&&t>=0&&t<=6}function NMr(A,r,t){return A===24?r===0&&t===0:t>=0&&t<60&&r>=0&&r<60&&A>=0&&A<25}function PMr(A,r){return r>=0&&r<=59}HWA.exports=hq.default});var TWA=GA((Qq,RWA)=>{"use strict";var FWA=at().default;Object.defineProperty(Qq,"__esModule",{value:!0});Qq.default=UMr;var GMr=FWA(An()),YMr=FWA(Ct());function UMr(A){if((0,YMr.default)(1,arguments),typeof A=="string"){var r=A.match(/(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2}):(\d{2})(?:\.(\d{0,7}))?(?:Z|(.)(\d{2}):?(\d{2})?)?/);return r?new Date(Date.UTC(+r[1],+r[2]-1,+r[3],+r[4]-(+r[9]||0)*(r[8]=="-"?-1:1),+r[5]-(+r[10]||0)*(r[8]=="-"?-1:1),+r[6],+((r[7]||"0")+"00").substring(0,3))):new Date(NaN)}return(0,GMr.default)(A)}RWA.exports=Qq.default});var aD=GA((mq,NWA)=>{"use strict";var KgA=at().default;Object.defineProperty(mq,"__esModule",{value:!0});mq.default=JMr;var LMr=KgA(Ct()),jMr=KgA(tk()),WMr=KgA(Ck());function JMr(A,r){(0,LMr.default)(2,arguments);var t=(0,jMr.default)(A)-r;return t<=0&&(t+=7),(0,WMr.default)(A,t)}NWA.exports=mq.default});var YWA=GA((Dq,GWA)=>{"use strict";var PWA=at().default;Object.defineProperty(Dq,"__esModule",{value:!0});Dq.default=zMr;var qMr=PWA(Ct()),VMr=PWA(aD());function zMr(A){return(0,qMr.default)(1,arguments),(0,VMr.default)(A,5)}GWA.exports=Dq.default});var jWA=GA((_q,LWA)=>{"use strict";var UWA=at().default;Object.defineProperty(_q,"__esModule",{value:!0});_q.default=ZMr;var KMr=UWA(Ct()),XMr=UWA(aD());function ZMr(A){return(0,KMr.default)(1,arguments),(0,XMr.default)(A,1)}LWA.exports=_q.default});var qWA=GA((wq,JWA)=>{"use strict";var WWA=at().default;Object.defineProperty(wq,"__esModule",{value:!0});wq.default=ekr;var $Mr=WWA(Ct()),Akr=WWA(aD());function ekr(A){return(0,$Mr.default)(1,arguments),(0,Akr.default)(A,6)}JWA.exports=wq.default});var KWA=GA((vq,zWA)=>{"use strict";var VWA=at().default;Object.defineProperty(vq,"__esModule",{value:!0});vq.default=ikr;var rkr=VWA(Ct()),tkr=VWA(aD());function ikr(A){return(0,rkr.default)(1,arguments),(0,tkr.default)(A,0)}zWA.exports=vq.default});var $WA=GA((yq,ZWA)=>{"use strict";var XWA=at().default;Object.defineProperty(yq,"__esModule",{value:!0});yq.default=okr;var nkr=XWA(Ct()),akr=XWA(aD());function okr(A){return(0,nkr.default)(1,arguments),(0,akr.default)(A,4)}ZWA.exports=yq.default});var rJA=GA((Cq,eJA)=>{"use strict";var AJA=at().default;Object.defineProperty(Cq,"__esModule",{value:!0});Cq.default=lkr;var skr=AJA(Ct()),ckr=AJA(aD());function lkr(A){return(0,skr.default)(1,arguments),(0,ckr.default)(A,2)}eJA.exports=Cq.default});var nJA=GA((Iq,iJA)=>{"use strict";var tJA=at().default;Object.defineProperty(Iq,"__esModule",{value:!0});Iq.default=dkr;var ukr=tJA(Ct()),gkr=tJA(aD());function dkr(A){return(0,ukr.default)(1,arguments),(0,gkr.default)(A,3)}iJA.exports=Iq.default});var oJA=GA((bq,aJA)=>{"use strict";var pkr=at().default;Object.defineProperty(bq,"__esModule",{value:!0});bq.default=Bkr;var Ekr=pkr(Ct()),fkr=_u();function Bkr(A){return(0,Ekr.default)(1,arguments),Math.floor(A*fkr.monthsInQuarter)}aJA.exports=bq.default});var cJA=GA((Oq,sJA)=>{"use strict";var hkr=at().default;Object.defineProperty(Oq,"__esModule",{value:!0});Oq.default=Dkr;var Qkr=hkr(Ct()),mkr=_u();function Dkr(A){(0,Qkr.default)(1,arguments);var r=A/mkr.quartersInYear;return Math.floor(r)}sJA.exports=Oq.default});var gJA=GA((Mq,uJA)=>{"use strict";var lJA=at().default;Object.defineProperty(Mq,"__esModule",{value:!0});Mq.default=ykr;var _kr=lJA(An()),wkr=i2(),vkr=lJA(vo());function ykr(A,r){var t;if(arguments.length<1)throw new TypeError("1 argument required, but only none provided present");var i=(0,vkr.default)((t=r?.nearestTo)!==null&&t!==void 0?t:1);if(i<1||i>30)throw new RangeError("`options.nearestTo` must be between 1 and 30");var o=(0,_kr.default)(A),s=o.getSeconds(),g=o.getMinutes()+s/60,E=(0,wkr.getRoundingMethod)(r?.roundingMethod),p=E(g/i)*i,B=g%i,m=Math.round(B/i)*i;return new Date(o.getFullYear(),o.getMonth(),o.getDate(),o.getHours(),p+m)}uJA.exports=Mq.default});var pJA=GA((kq,dJA)=>{"use strict";var Ckr=at().default;Object.defineProperty(kq,"__esModule",{value:!0});kq.default=Okr;var Ikr=Ckr(Ct()),bkr=_u();function Okr(A){(0,Ikr.default)(1,arguments);var r=A/bkr.secondsInHour;return Math.floor(r)}dJA.exports=kq.default});var fJA=GA((xq,EJA)=>{"use strict";var Mkr=at().default;Object.defineProperty(xq,"__esModule",{value:!0});xq.default=Hkr;var kkr=Mkr(Ct()),xkr=_u();function Hkr(A){return(0,kkr.default)(1,arguments),A*xkr.millisecondsInSecond}EJA.exports=xq.default});var hJA=GA((Hq,BJA)=>{"use strict";var Skr=at().default;Object.defineProperty(Hq,"__esModule",{value:!0});Hq.default=Tkr;var Fkr=Skr(Ct()),Rkr=_u();function Tkr(A){(0,Fkr.default)(1,arguments);var r=A/Rkr.secondsInMinute;return Math.floor(r)}BJA.exports=Hq.default});var Rq=GA((Fq,QJA)=>{"use strict";var Sq=at().default;Object.defineProperty(Fq,"__esModule",{value:!0});Fq.default=Ukr;var Nkr=Sq(vo()),Pkr=Sq(An()),Gkr=Sq(KuA()),Ykr=Sq(Ct());function Ukr(A,r){(0,Ykr.default)(2,arguments);var t=(0,Pkr.default)(A),i=(0,Nkr.default)(r),o=t.getFullYear(),s=t.getDate(),g=new Date(0);g.setFullYear(o,i,15),g.setHours(0,0,0,0);var E=(0,Gkr.default)(g);return t.setMonth(i,Math.min(s,E)),t}QJA.exports=Fq.default});var DJA=GA((Tq,mJA)=>{"use strict";var Ok=at().default;Object.defineProperty(Tq,"__esModule",{value:!0});Tq.default=qkr;var Lkr=Ok(Wh()),jkr=Ok(An()),Wkr=Ok(Rq()),bk=Ok(vo()),Jkr=Ok(Ct());function qkr(A,r){if((0,Jkr.default)(2,arguments),(0,Lkr.default)(r)!=="object"||r===null)throw new RangeError("values parameter must be an object");var t=(0,jkr.default)(A);return isNaN(t.getTime())?new Date(NaN):(r.year!=null&&t.setFullYear(r.year),r.month!=null&&(t=(0,Wkr.default)(t,r.month)),r.date!=null&&t.setDate((0,bk.default)(r.date)),r.hours!=null&&t.setHours((0,bk.default)(r.hours)),r.minutes!=null&&t.setMinutes((0,bk.default)(r.minutes)),r.seconds!=null&&t.setSeconds((0,bk.default)(r.seconds)),r.milliseconds!=null&&t.setMilliseconds((0,bk.default)(r.milliseconds)),t)}mJA.exports=Tq.default});var wJA=GA((Nq,_JA)=>{"use strict";var XgA=at().default;Object.defineProperty(Nq,"__esModule",{value:!0});Nq.default=Xkr;var Vkr=XgA(vo()),zkr=XgA(An()),Kkr=XgA(Ct());function Xkr(A,r){(0,Kkr.default)(2,arguments);var t=(0,zkr.default)(A),i=(0,Vkr.default)(r);return t.setDate(i),t}_JA.exports=Nq.default});var CJA=GA((Gq,yJA)=>{"use strict";var Pq=at().default;Object.defineProperty(Gq,"__esModule",{value:!0});Gq.default=rxr;var Zkr=Pq(f1()),$kr=Pq(An()),vJA=Pq(vo()),Axr=Pq(Ct()),exr=ud();function rxr(A,r,t){var i,o,s,g,E,p,B,m;(0,Axr.default)(2,arguments);var _=(0,exr.getDefaultOptions)(),x=(0,vJA.default)((i=(o=(s=(g=t?.weekStartsOn)!==null&&g!==void 0?g:t==null||(E=t.locale)===null||E===void 0||(p=E.options)===null||p===void 0?void 0:p.weekStartsOn)!==null&&s!==void 0?s:_.weekStartsOn)!==null&&o!==void 0?o:(B=_.locale)===null||B===void 0||(m=B.options)===null||m===void 0?void 0:m.weekStartsOn)!==null&&i!==void 0?i:0);if(!(x>=0&&x<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var O=(0,$kr.default)(A),k=(0,vJA.default)(r),P=O.getDay(),H=k%7,T=(H+7)%7,v=7-x,F=k<0||k>6?k-(P+v)%7:(T+v)%7-(P+v)%7;return(0,Zkr.default)(O,F)}yJA.exports=Gq.default});var bJA=GA((Yq,IJA)=>{"use strict";var ZgA=at().default;Object.defineProperty(Yq,"__esModule",{value:!0});Yq.default=axr;var txr=ZgA(vo()),ixr=ZgA(An()),nxr=ZgA(Ct());function axr(A,r){(0,nxr.default)(2,arguments);var t=(0,ixr.default)(A),i=(0,txr.default)(r);return t.setMonth(0),t.setDate(i),t}IJA.exports=Yq.default});var kJA=GA((Uq,MJA)=>{"use strict";var oxr=at().default;Object.defineProperty(Uq,"__esModule",{value:!0});Uq.default=cxr;var OJA=ud(),sxr=oxr(Ct());function cxr(A){(0,sxr.default)(1,arguments);var r={},t=(0,OJA.getDefaultOptions)();for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r[i]=t[i]);for(var o in A)Object.prototype.hasOwnProperty.call(A,o)&&(A[o]===void 0?delete r[o]:r[o]=A[o]);(0,OJA.setDefaultOptions)(r)}MJA.exports=Uq.default});var HJA=GA((Lq,xJA)=>{"use strict";var $gA=at().default;Object.defineProperty(Lq,"__esModule",{value:!0});Lq.default=dxr;var lxr=$gA(vo()),uxr=$gA(An()),gxr=$gA(Ct());function dxr(A,r){(0,gxr.default)(2,arguments);var t=(0,uxr.default)(A),i=(0,lxr.default)(r);return t.setHours(i),t}xJA.exports=Lq.default});var FJA=GA((jq,SJA)=>{"use strict";var Mk=at().default;Object.defineProperty(jq,"__esModule",{value:!0});jq.default=Qxr;var pxr=Mk(vo()),Exr=Mk(An()),fxr=Mk(f1()),Bxr=Mk($uA()),hxr=Mk(Ct());function Qxr(A,r){(0,hxr.default)(2,arguments);var t=(0,Exr.default)(A),i=(0,pxr.default)(r),o=(0,Bxr.default)(t),s=i-o;return(0,fxr.default)(t,s)}SJA.exports=jq.default});var TJA=GA((Jq,RJA)=>{"use strict";var Wq=at().default;Object.defineProperty(Jq,"__esModule",{value:!0});Jq.default=vxr;var mxr=Wq(vo()),Dxr=Wq(An()),_xr=Wq(AgA()),wxr=Wq(Ct());function vxr(A,r){(0,wxr.default)(2,arguments);var t=(0,Dxr.default)(A),i=(0,mxr.default)(r),o=(0,_xr.default)(t)-i;return t.setDate(t.getDate()-o*7),t}RJA.exports=Jq.default});var PJA=GA((qq,NJA)=>{"use strict";var AdA=at().default;Object.defineProperty(qq,"__esModule",{value:!0});qq.default=bxr;var yxr=AdA(vo()),Cxr=AdA(An()),Ixr=AdA(Ct());function bxr(A,r){(0,Ixr.default)(2,arguments);var t=(0,Cxr.default)(A),i=(0,yxr.default)(r);return t.setMilliseconds(i),t}NJA.exports=qq.default});var YJA=GA((Vq,GJA)=>{"use strict";var edA=at().default;Object.defineProperty(Vq,"__esModule",{value:!0});Vq.default=xxr;var Oxr=edA(vo()),Mxr=edA(An()),kxr=edA(Ct());function xxr(A,r){(0,kxr.default)(2,arguments);var t=(0,Mxr.default)(A),i=(0,Oxr.default)(r);return t.setMinutes(i),t}GJA.exports=Vq.default});var LJA=GA((Kq,UJA)=>{"use strict";var zq=at().default;Object.defineProperty(Kq,"__esModule",{value:!0});Kq.default=Txr;var Hxr=zq(vo()),Sxr=zq(An()),Fxr=zq(Rq()),Rxr=zq(Ct());function Txr(A,r){(0,Rxr.default)(2,arguments);var t=(0,Sxr.default)(A),i=(0,Hxr.default)(r),o=Math.floor(t.getMonth()/3)+1,s=i-o;return(0,Fxr.default)(t,t.getMonth()+s*3)}UJA.exports=Kq.default});var WJA=GA((Xq,jJA)=>{"use strict";var rdA=at().default;Object.defineProperty(Xq,"__esModule",{value:!0});Xq.default=Yxr;var Nxr=rdA(vo()),Pxr=rdA(An()),Gxr=rdA(Ct());function Yxr(A,r){(0,Gxr.default)(2,arguments);var t=(0,Pxr.default)(A),i=(0,Nxr.default)(r);return t.setSeconds(i),t}jJA.exports=Xq.default});var qJA=GA(($q,JJA)=>{"use strict";var Zq=at().default;Object.defineProperty($q,"__esModule",{value:!0});$q.default=Jxr;var Uxr=Zq(igA()),Lxr=Zq(An()),jxr=Zq(Ct()),Wxr=Zq(vo());function Jxr(A,r,t){(0,jxr.default)(2,arguments);var i=(0,Lxr.default)(A),o=(0,Wxr.default)(r),s=(0,Uxr.default)(i,t)-o;return i.setDate(i.getDate()-s*7),i}JJA.exports=$q.default});var XJA=GA((AV,KJA)=>{"use strict";var kk=at().default;Object.defineProperty(AV,"__esModule",{value:!0});AV.default=Xxr;var qxr=kk(Z4()),VJA=kk(nW()),Vxr=kk(An()),zJA=kk(vo()),zxr=kk(Ct()),Kxr=ud();function Xxr(A,r,t){var i,o,s,g,E,p,B,m;(0,zxr.default)(2,arguments);var _=(0,Kxr.getDefaultOptions)(),x=(0,zJA.default)((i=(o=(s=(g=t?.firstWeekContainsDate)!==null&&g!==void 0?g:t==null||(E=t.locale)===null||E===void 0||(p=E.options)===null||p===void 0?void 0:p.firstWeekContainsDate)!==null&&s!==void 0?s:_.firstWeekContainsDate)!==null&&o!==void 0?o:(B=_.locale)===null||B===void 0||(m=B.options)===null||m===void 0?void 0:m.firstWeekContainsDate)!==null&&i!==void 0?i:1),O=(0,Vxr.default)(A),k=(0,zJA.default)(r),P=(0,qxr.default)(O,(0,VJA.default)(O,t)),H=new Date(0);return H.setFullYear(k,0,x),H.setHours(0,0,0,0),O=(0,VJA.default)(H,t),O.setDate(O.getDate()+P),O}KJA.exports=AV.default});var $JA=GA((eV,ZJA)=>{"use strict";var tdA=at().default;Object.defineProperty(eV,"__esModule",{value:!0});eV.default=e9r;var Zxr=tdA(vo()),$xr=tdA(An()),A9r=tdA(Ct());function e9r(A,r){(0,A9r.default)(2,arguments);var t=(0,$xr.default)(A),i=(0,Zxr.default)(r);return isNaN(t.getTime())?new Date(NaN):(t.setFullYear(i),t)}ZJA.exports=eV.default});var rqA=GA((rV,eqA)=>{"use strict";var AqA=at().default;Object.defineProperty(rV,"__esModule",{value:!0});rV.default=i9r;var r9r=AqA(An()),t9r=AqA(Ct());function i9r(A){(0,t9r.default)(1,arguments);var r=(0,r9r.default)(A),t=r.getFullYear(),i=Math.floor(t/10)*10;return r.setFullYear(i,0,1),r.setHours(0,0,0,0),r}eqA.exports=rV.default});var iqA=GA((tV,tqA)=>{"use strict";var n9r=at().default;Object.defineProperty(tV,"__esModule",{value:!0});tV.default=o9r;var a9r=n9r(SM());function o9r(){return(0,a9r.default)(Date.now())}tqA.exports=tV.default});var aqA=GA((iV,nqA)=>{"use strict";Object.defineProperty(iV,"__esModule",{value:!0});iV.default=s9r;function s9r(){var A=new Date,r=A.getFullYear(),t=A.getMonth(),i=A.getDate(),o=new Date(0);return o.setFullYear(r,t,i+1),o.setHours(0,0,0,0),o}nqA.exports=iV.default});var sqA=GA((nV,oqA)=>{"use strict";Object.defineProperty(nV,"__esModule",{value:!0});nV.default=c9r;function c9r(){var A=new Date,r=A.getFullYear(),t=A.getMonth(),i=A.getDate(),o=new Date(0);return o.setFullYear(r,t,i-1),o.setHours(0,0,0,0),o}oqA.exports=nV.default});var ndA=GA((aV,cqA)=>{"use strict";var idA=at().default;Object.defineProperty(aV,"__esModule",{value:!0});aV.default=d9r;var l9r=idA(vo()),u9r=idA(F5()),g9r=idA(Ct());function d9r(A,r){(0,g9r.default)(2,arguments);var t=(0,l9r.default)(r);return(0,u9r.default)(A,-t)}cqA.exports=aV.default});var uqA=GA((oV,lqA)=>{"use strict";var xk=at().default;Object.defineProperty(oV,"__esModule",{value:!0});oV.default=h9r;var p9r=xk(Wh()),E9r=xk(Ck()),f9r=xk(ndA()),B9r=xk(Ct()),f2=xk(vo());function h9r(A,r){if((0,B9r.default)(2,arguments),!r||(0,p9r.default)(r)!=="object")return new Date(NaN);var t=r.years?(0,f2.default)(r.years):0,i=r.months?(0,f2.default)(r.months):0,o=r.weeks?(0,f2.default)(r.weeks):0,s=r.days?(0,f2.default)(r.days):0,g=r.hours?(0,f2.default)(r.hours):0,E=r.minutes?(0,f2.default)(r.minutes):0,p=r.seconds?(0,f2.default)(r.seconds):0,B=(0,f9r.default)(A,i+t*12),m=(0,E9r.default)(B,s+o*7),_=E+g*60,x=p+_*60,O=x*1e3,k=new Date(m.getTime()-O);return k}lqA.exports=oV.default});var dqA=GA((sV,gqA)=>{"use strict";var adA=at().default;Object.defineProperty(sV,"__esModule",{value:!0});sV.default=_9r;var Q9r=adA(xlA()),m9r=adA(Ct()),D9r=adA(vo());function _9r(A,r){(0,m9r.default)(2,arguments);var t=(0,D9r.default)(r);return(0,Q9r.default)(A,-t)}gqA.exports=sV.default});var EqA=GA((cV,pqA)=>{"use strict";var odA=at().default;Object.defineProperty(cV,"__esModule",{value:!0});cV.default=C9r;var w9r=odA(AU()),v9r=odA(Ct()),y9r=odA(vo());function C9r(A,r){(0,v9r.default)(2,arguments);var t=(0,y9r.default)(r);return(0,w9r.default)(A,-t)}pqA.exports=cV.default});var BqA=GA((lV,fqA)=>{"use strict";var sdA=at().default;Object.defineProperty(lV,"__esModule",{value:!0});lV.default=M9r;var I9r=sdA(dU()),b9r=sdA(Ct()),O9r=sdA(vo());function M9r(A,r){(0,b9r.default)(2,arguments);var t=(0,O9r.default)(r);return(0,I9r.default)(A,-t)}fqA.exports=lV.default});var QqA=GA((uV,hqA)=>{"use strict";var cdA=at().default;Object.defineProperty(uV,"__esModule",{value:!0});uV.default=S9r;var k9r=cdA(vo()),x9r=cdA(EU()),H9r=cdA(Ct());function S9r(A,r){(0,H9r.default)(2,arguments);var t=(0,k9r.default)(r);return(0,x9r.default)(A,-t)}hqA.exports=uV.default});var DqA=GA((gV,mqA)=>{"use strict";var ldA=at().default;Object.defineProperty(gV,"__esModule",{value:!0});gV.default=N9r;var F9r=ldA(vo()),R9r=ldA(jlA()),T9r=ldA(Ct());function N9r(A,r){(0,T9r.default)(2,arguments);var t=(0,F9r.default)(r);return(0,R9r.default)(A,-t)}mqA.exports=gV.default});var wqA=GA((dV,_qA)=>{"use strict";var udA=at().default;Object.defineProperty(dV,"__esModule",{value:!0});dV.default=U9r;var P9r=udA(vo()),G9r=udA(RM()),Y9r=udA(Ct());function U9r(A,r){(0,Y9r.default)(2,arguments);var t=(0,P9r.default)(r);return(0,G9r.default)(A,-t)}_qA.exports=dV.default});var yqA=GA((pV,vqA)=>{"use strict";var gdA=at().default;Object.defineProperty(pV,"__esModule",{value:!0});pV.default=J9r;var L9r=gdA(vo()),j9r=gdA(qlA()),W9r=gdA(Ct());function J9r(A,r){(0,W9r.default)(2,arguments);var t=(0,L9r.default)(r);return(0,j9r.default)(A,-t)}vqA.exports=pV.default});var IqA=GA((EV,CqA)=>{"use strict";var q9r=at().default;Object.defineProperty(EV,"__esModule",{value:!0});EV.default=K9r;var V9r=q9r(Ct()),z9r=_u();function K9r(A){return(0,V9r.default)(1,arguments),Math.floor(A*z9r.daysInWeek)}CqA.exports=EV.default});var OqA=GA((fV,bqA)=>{"use strict";var X9r=at().default;Object.defineProperty(fV,"__esModule",{value:!0});fV.default=AHr;var Z9r=X9r(Ct()),$9r=_u();function AHr(A){return(0,Z9r.default)(1,arguments),Math.floor(A*$9r.monthsInYear)}bqA.exports=fV.default});var kqA=GA((BV,MqA)=>{"use strict";var eHr=at().default;Object.defineProperty(BV,"__esModule",{value:!0});BV.default=iHr;var rHr=eHr(Ct()),tHr=_u();function iHr(A){return(0,rHr.default)(1,arguments),Math.floor(A*tHr.quartersInYear)}MqA.exports=BV.default});var xqA=GA(wt=>{"use strict";var It=at().default;Object.defineProperty(wt,"__esModule",{value:!0});var nHr={add:!0,addBusinessDays:!0,addDays:!0,addHours:!0,addISOWeekYears:!0,addMilliseconds:!0,addMinutes:!0,addMonths:!0,addQuarters:!0,addSeconds:!0,addWeeks:!0,addYears:!0,areIntervalsOverlapping:!0,clamp:!0,closestIndexTo:!0,closestTo:!0,compareAsc:!0,compareDesc:!0,daysToWeeks:!0,differenceInBusinessDays:!0,differenceInCalendarDays:!0,differenceInCalendarISOWeekYears:!0,differenceInCalendarISOWeeks:!0,differenceInCalendarMonths:!0,differenceInCalendarQuarters:!0,differenceInCalendarWeeks:!0,differenceInCalendarYears:!0,differenceInDays:!0,differenceInHours:!0,differenceInISOWeekYears:!0,differenceInMilliseconds:!0,differenceInMinutes:!0,differenceInMonths:!0,differenceInQuarters:!0,differenceInSeconds:!0,differenceInWeeks:!0,differenceInYears:!0,eachDayOfInterval:!0,eachHourOfInterval:!0,eachMinuteOfInterval:!0,eachMonthOfInterval:!0,eachQuarterOfInterval:!0,eachWeekOfInterval:!0,eachWeekendOfInterval:!0,eachWeekendOfMonth:!0,eachWeekendOfYear:!0,eachYearOfInterval:!0,endOfDay:!0,endOfDecade:!0,endOfHour:!0,endOfISOWeek:!0,endOfISOWeekYear:!0,endOfMinute:!0,endOfMonth:!0,endOfQuarter:!0,endOfSecond:!0,endOfToday:!0,endOfTomorrow:!0,endOfWeek:!0,endOfYear:!0,endOfYesterday:!0,format:!0,formatDistance:!0,formatDistanceStrict:!0,formatDistanceToNow:!0,formatDistanceToNowStrict:!0,formatDuration:!0,formatISO:!0,formatISO9075:!0,formatISODuration:!0,formatRFC3339:!0,formatRFC7231:!0,formatRelative:!0,fromUnixTime:!0,getDate:!0,getDay:!0,getDayOfYear:!0,getDaysInMonth:!0,getDaysInYear:!0,getDecade:!0,getDefaultOptions:!0,getHours:!0,getISODay:!0,getISOWeek:!0,getISOWeekYear:!0,getISOWeeksInYear:!0,getMilliseconds:!0,getMinutes:!0,getMonth:!0,getOverlappingDaysInIntervals:!0,getQuarter:!0,getSeconds:!0,getTime:!0,getUnixTime:!0,getWeek:!0,getWeekOfMonth:!0,getWeekYear:!0,getWeeksInMonth:!0,getYear:!0,hoursToMilliseconds:!0,hoursToMinutes:!0,hoursToSeconds:!0,intervalToDuration:!0,intlFormat:!0,intlFormatDistance:!0,isAfter:!0,isBefore:!0,isDate:!0,isEqual:!0,isExists:!0,isFirstDayOfMonth:!0,isFriday:!0,isFuture:!0,isLastDayOfMonth:!0,isLeapYear:!0,isMatch:!0,isMonday:!0,isPast:!0,isSameDay:!0,isSameHour:!0,isSameISOWeek:!0,isSameISOWeekYear:!0,isSameMinute:!0,isSameMonth:!0,isSameQuarter:!0,isSameSecond:!0,isSameWeek:!0,isSameYear:!0,isSaturday:!0,isSunday:!0,isThisHour:!0,isThisISOWeek:!0,isThisMinute:!0,isThisMonth:!0,isThisQuarter:!0,isThisSecond:!0,isThisWeek:!0,isThisYear:!0,isThursday:!0,isToday:!0,isTomorrow:!0,isTuesday:!0,isValid:!0,isWednesday:!0,isWeekend:!0,isWithinInterval:!0,isYesterday:!0,lastDayOfDecade:!0,lastDayOfISOWeek:!0,lastDayOfISOWeekYear:!0,lastDayOfMonth:!0,lastDayOfQuarter:!0,lastDayOfWeek:!0,lastDayOfYear:!0,lightFormat:!0,max:!0,milliseconds:!0,millisecondsToHours:!0,millisecondsToMinutes:!0,millisecondsToSeconds:!0,min:!0,minutesToHours:!0,minutesToMilliseconds:!0,minutesToSeconds:!0,monthsToQuarters:!0,monthsToYears:!0,nextDay:!0,nextFriday:!0,nextMonday:!0,nextSaturday:!0,nextSunday:!0,nextThursday:!0,nextTuesday:!0,nextWednesday:!0,parse:!0,parseISO:!0,parseJSON:!0,previousDay:!0,previousFriday:!0,previousMonday:!0,previousSaturday:!0,previousSunday:!0,previousThursday:!0,previousTuesday:!0,previousWednesday:!0,quartersToMonths:!0,quartersToYears:!0,roundToNearestMinutes:!0,secondsToHours:!0,secondsToMilliseconds:!0,secondsToMinutes:!0,set:!0,setDate:!0,setDay:!0,setDayOfYear:!0,setDefaultOptions:!0,setHours:!0,setISODay:!0,setISOWeek:!0,setISOWeekYear:!0,setMilliseconds:!0,setMinutes:!0,setMonth:!0,setQuarter:!0,setSeconds:!0,setWeek:!0,setWeekYear:!0,setYear:!0,startOfDay:!0,startOfDecade:!0,startOfHour:!0,startOfISOWeek:!0,startOfISOWeekYear:!0,startOfMinute:!0,startOfMonth:!0,startOfQuarter:!0,startOfSecond:!0,startOfToday:!0,startOfTomorrow:!0,startOfWeek:!0,startOfWeekYear:!0,startOfYear:!0,startOfYesterday:!0,sub:!0,subBusinessDays:!0,subDays:!0,subHours:!0,subISOWeekYears:!0,subMilliseconds:!0,subMinutes:!0,subMonths:!0,subQuarters:!0,subSeconds:!0,subWeeks:!0,subYears:!0,toDate:!0,weeksToDays:!0,yearsToMonths:!0,yearsToQuarters:!0};Object.defineProperty(wt,"add",{enumerable:!0,get:function(){return aHr.default}});Object.defineProperty(wt,"addBusinessDays",{enumerable:!0,get:function(){return oHr.default}});Object.defineProperty(wt,"addDays",{enumerable:!0,get:function(){return sHr.default}});Object.defineProperty(wt,"addHours",{enumerable:!0,get:function(){return cHr.default}});Object.defineProperty(wt,"addISOWeekYears",{enumerable:!0,get:function(){return lHr.default}});Object.defineProperty(wt,"addMilliseconds",{enumerable:!0,get:function(){return uHr.default}});Object.defineProperty(wt,"addMinutes",{enumerable:!0,get:function(){return gHr.default}});Object.defineProperty(wt,"addMonths",{enumerable:!0,get:function(){return dHr.default}});Object.defineProperty(wt,"addQuarters",{enumerable:!0,get:function(){return pHr.default}});Object.defineProperty(wt,"addSeconds",{enumerable:!0,get:function(){return EHr.default}});Object.defineProperty(wt,"addWeeks",{enumerable:!0,get:function(){return fHr.default}});Object.defineProperty(wt,"addYears",{enumerable:!0,get:function(){return BHr.default}});Object.defineProperty(wt,"areIntervalsOverlapping",{enumerable:!0,get:function(){return hHr.default}});Object.defineProperty(wt,"clamp",{enumerable:!0,get:function(){return QHr.default}});Object.defineProperty(wt,"closestIndexTo",{enumerable:!0,get:function(){return mHr.default}});Object.defineProperty(wt,"closestTo",{enumerable:!0,get:function(){return DHr.default}});Object.defineProperty(wt,"compareAsc",{enumerable:!0,get:function(){return _Hr.default}});Object.defineProperty(wt,"compareDesc",{enumerable:!0,get:function(){return wHr.default}});Object.defineProperty(wt,"daysToWeeks",{enumerable:!0,get:function(){return vHr.default}});Object.defineProperty(wt,"differenceInBusinessDays",{enumerable:!0,get:function(){return yHr.default}});Object.defineProperty(wt,"differenceInCalendarDays",{enumerable:!0,get:function(){return CHr.default}});Object.defineProperty(wt,"differenceInCalendarISOWeekYears",{enumerable:!0,get:function(){return IHr.default}});Object.defineProperty(wt,"differenceInCalendarISOWeeks",{enumerable:!0,get:function(){return bHr.default}});Object.defineProperty(wt,"differenceInCalendarMonths",{enumerable:!0,get:function(){return OHr.default}});Object.defineProperty(wt,"differenceInCalendarQuarters",{enumerable:!0,get:function(){return MHr.default}});Object.defineProperty(wt,"differenceInCalendarWeeks",{enumerable:!0,get:function(){return kHr.default}});Object.defineProperty(wt,"differenceInCalendarYears",{enumerable:!0,get:function(){return xHr.default}});Object.defineProperty(wt,"differenceInDays",{enumerable:!0,get:function(){return HHr.default}});Object.defineProperty(wt,"differenceInHours",{enumerable:!0,get:function(){return SHr.default}});Object.defineProperty(wt,"differenceInISOWeekYears",{enumerable:!0,get:function(){return FHr.default}});Object.defineProperty(wt,"differenceInMilliseconds",{enumerable:!0,get:function(){return RHr.default}});Object.defineProperty(wt,"differenceInMinutes",{enumerable:!0,get:function(){return THr.default}});Object.defineProperty(wt,"differenceInMonths",{enumerable:!0,get:function(){return NHr.default}});Object.defineProperty(wt,"differenceInQuarters",{enumerable:!0,get:function(){return PHr.default}});Object.defineProperty(wt,"differenceInSeconds",{enumerable:!0,get:function(){return GHr.default}});Object.defineProperty(wt,"differenceInWeeks",{enumerable:!0,get:function(){return YHr.default}});Object.defineProperty(wt,"differenceInYears",{enumerable:!0,get:function(){return UHr.default}});Object.defineProperty(wt,"eachDayOfInterval",{enumerable:!0,get:function(){return LHr.default}});Object.defineProperty(wt,"eachHourOfInterval",{enumerable:!0,get:function(){return jHr.default}});Object.defineProperty(wt,"eachMinuteOfInterval",{enumerable:!0,get:function(){return WHr.default}});Object.defineProperty(wt,"eachMonthOfInterval",{enumerable:!0,get:function(){return JHr.default}});Object.defineProperty(wt,"eachQuarterOfInterval",{enumerable:!0,get:function(){return qHr.default}});Object.defineProperty(wt,"eachWeekOfInterval",{enumerable:!0,get:function(){return VHr.default}});Object.defineProperty(wt,"eachWeekendOfInterval",{enumerable:!0,get:function(){return zHr.default}});Object.defineProperty(wt,"eachWeekendOfMonth",{enumerable:!0,get:function(){return KHr.default}});Object.defineProperty(wt,"eachWeekendOfYear",{enumerable:!0,get:function(){return XHr.default}});Object.defineProperty(wt,"eachYearOfInterval",{enumerable:!0,get:function(){return ZHr.default}});Object.defineProperty(wt,"endOfDay",{enumerable:!0,get:function(){return $Hr.default}});Object.defineProperty(wt,"endOfDecade",{enumerable:!0,get:function(){return ASr.default}});Object.defineProperty(wt,"endOfHour",{enumerable:!0,get:function(){return eSr.default}});Object.defineProperty(wt,"endOfISOWeek",{enumerable:!0,get:function(){return rSr.default}});Object.defineProperty(wt,"endOfISOWeekYear",{enumerable:!0,get:function(){return tSr.default}});Object.defineProperty(wt,"endOfMinute",{enumerable:!0,get:function(){return iSr.default}});Object.defineProperty(wt,"endOfMonth",{enumerable:!0,get:function(){return nSr.default}});Object.defineProperty(wt,"endOfQuarter",{enumerable:!0,get:function(){return aSr.default}});Object.defineProperty(wt,"endOfSecond",{enumerable:!0,get:function(){return oSr.default}});Object.defineProperty(wt,"endOfToday",{enumerable:!0,get:function(){return sSr.default}});Object.defineProperty(wt,"endOfTomorrow",{enumerable:!0,get:function(){return cSr.default}});Object.defineProperty(wt,"endOfWeek",{enumerable:!0,get:function(){return lSr.default}});Object.defineProperty(wt,"endOfYear",{enumerable:!0,get:function(){return uSr.default}});Object.defineProperty(wt,"endOfYesterday",{enumerable:!0,get:function(){return gSr.default}});Object.defineProperty(wt,"format",{enumerable:!0,get:function(){return dSr.default}});Object.defineProperty(wt,"formatDistance",{enumerable:!0,get:function(){return pSr.default}});Object.defineProperty(wt,"formatDistanceStrict",{enumerable:!0,get:function(){return ESr.default}});Object.defineProperty(wt,"formatDistanceToNow",{enumerable:!0,get:function(){return fSr.default}});Object.defineProperty(wt,"formatDistanceToNowStrict",{enumerable:!0,get:function(){return BSr.default}});Object.defineProperty(wt,"formatDuration",{enumerable:!0,get:function(){return hSr.default}});Object.defineProperty(wt,"formatISO",{enumerable:!0,get:function(){return QSr.default}});Object.defineProperty(wt,"formatISO9075",{enumerable:!0,get:function(){return mSr.default}});Object.defineProperty(wt,"formatISODuration",{enumerable:!0,get:function(){return DSr.default}});Object.defineProperty(wt,"formatRFC3339",{enumerable:!0,get:function(){return _Sr.default}});Object.defineProperty(wt,"formatRFC7231",{enumerable:!0,get:function(){return wSr.default}});Object.defineProperty(wt,"formatRelative",{enumerable:!0,get:function(){return vSr.default}});Object.defineProperty(wt,"fromUnixTime",{enumerable:!0,get:function(){return ySr.default}});Object.defineProperty(wt,"getDate",{enumerable:!0,get:function(){return CSr.default}});Object.defineProperty(wt,"getDay",{enumerable:!0,get:function(){return ISr.default}});Object.defineProperty(wt,"getDayOfYear",{enumerable:!0,get:function(){return bSr.default}});Object.defineProperty(wt,"getDaysInMonth",{enumerable:!0,get:function(){return OSr.default}});Object.defineProperty(wt,"getDaysInYear",{enumerable:!0,get:function(){return MSr.default}});Object.defineProperty(wt,"getDecade",{enumerable:!0,get:function(){return kSr.default}});Object.defineProperty(wt,"getDefaultOptions",{enumerable:!0,get:function(){return xSr.default}});Object.defineProperty(wt,"getHours",{enumerable:!0,get:function(){return HSr.default}});Object.defineProperty(wt,"getISODay",{enumerable:!0,get:function(){return SSr.default}});Object.defineProperty(wt,"getISOWeek",{enumerable:!0,get:function(){return FSr.default}});Object.defineProperty(wt,"getISOWeekYear",{enumerable:!0,get:function(){return RSr.default}});Object.defineProperty(wt,"getISOWeeksInYear",{enumerable:!0,get:function(){return TSr.default}});Object.defineProperty(wt,"getMilliseconds",{enumerable:!0,get:function(){return NSr.default}});Object.defineProperty(wt,"getMinutes",{enumerable:!0,get:function(){return PSr.default}});Object.defineProperty(wt,"getMonth",{enumerable:!0,get:function(){return GSr.default}});Object.defineProperty(wt,"getOverlappingDaysInIntervals",{enumerable:!0,get:function(){return YSr.default}});Object.defineProperty(wt,"getQuarter",{enumerable:!0,get:function(){return USr.default}});Object.defineProperty(wt,"getSeconds",{enumerable:!0,get:function(){return LSr.default}});Object.defineProperty(wt,"getTime",{enumerable:!0,get:function(){return jSr.default}});Object.defineProperty(wt,"getUnixTime",{enumerable:!0,get:function(){return WSr.default}});Object.defineProperty(wt,"getWeek",{enumerable:!0,get:function(){return JSr.default}});Object.defineProperty(wt,"getWeekOfMonth",{enumerable:!0,get:function(){return qSr.default}});Object.defineProperty(wt,"getWeekYear",{enumerable:!0,get:function(){return VSr.default}});Object.defineProperty(wt,"getWeeksInMonth",{enumerable:!0,get:function(){return zSr.default}});Object.defineProperty(wt,"getYear",{enumerable:!0,get:function(){return KSr.default}});Object.defineProperty(wt,"hoursToMilliseconds",{enumerable:!0,get:function(){return XSr.default}});Object.defineProperty(wt,"hoursToMinutes",{enumerable:!0,get:function(){return ZSr.default}});Object.defineProperty(wt,"hoursToSeconds",{enumerable:!0,get:function(){return $Sr.default}});Object.defineProperty(wt,"intervalToDuration",{enumerable:!0,get:function(){return AFr.default}});Object.defineProperty(wt,"intlFormat",{enumerable:!0,get:function(){return eFr.default}});Object.defineProperty(wt,"intlFormatDistance",{enumerable:!0,get:function(){return rFr.default}});Object.defineProperty(wt,"isAfter",{enumerable:!0,get:function(){return tFr.default}});Object.defineProperty(wt,"isBefore",{enumerable:!0,get:function(){return iFr.default}});Object.defineProperty(wt,"isDate",{enumerable:!0,get:function(){return nFr.default}});Object.defineProperty(wt,"isEqual",{enumerable:!0,get:function(){return aFr.default}});Object.defineProperty(wt,"isExists",{enumerable:!0,get:function(){return oFr.default}});Object.defineProperty(wt,"isFirstDayOfMonth",{enumerable:!0,get:function(){return sFr.default}});Object.defineProperty(wt,"isFriday",{enumerable:!0,get:function(){return cFr.default}});Object.defineProperty(wt,"isFuture",{enumerable:!0,get:function(){return lFr.default}});Object.defineProperty(wt,"isLastDayOfMonth",{enumerable:!0,get:function(){return uFr.default}});Object.defineProperty(wt,"isLeapYear",{enumerable:!0,get:function(){return gFr.default}});Object.defineProperty(wt,"isMatch",{enumerable:!0,get:function(){return dFr.default}});Object.defineProperty(wt,"isMonday",{enumerable:!0,get:function(){return pFr.default}});Object.defineProperty(wt,"isPast",{enumerable:!0,get:function(){return EFr.default}});Object.defineProperty(wt,"isSameDay",{enumerable:!0,get:function(){return fFr.default}});Object.defineProperty(wt,"isSameHour",{enumerable:!0,get:function(){return BFr.default}});Object.defineProperty(wt,"isSameISOWeek",{enumerable:!0,get:function(){return hFr.default}});Object.defineProperty(wt,"isSameISOWeekYear",{enumerable:!0,get:function(){return QFr.default}});Object.defineProperty(wt,"isSameMinute",{enumerable:!0,get:function(){return mFr.default}});Object.defineProperty(wt,"isSameMonth",{enumerable:!0,get:function(){return DFr.default}});Object.defineProperty(wt,"isSameQuarter",{enumerable:!0,get:function(){return _Fr.default}});Object.defineProperty(wt,"isSameSecond",{enumerable:!0,get:function(){return wFr.default}});Object.defineProperty(wt,"isSameWeek",{enumerable:!0,get:function(){return vFr.default}});Object.defineProperty(wt,"isSameYear",{enumerable:!0,get:function(){return yFr.default}});Object.defineProperty(wt,"isSaturday",{enumerable:!0,get:function(){return CFr.default}});Object.defineProperty(wt,"isSunday",{enumerable:!0,get:function(){return IFr.default}});Object.defineProperty(wt,"isThisHour",{enumerable:!0,get:function(){return bFr.default}});Object.defineProperty(wt,"isThisISOWeek",{enumerable:!0,get:function(){return OFr.default}});Object.defineProperty(wt,"isThisMinute",{enumerable:!0,get:function(){return MFr.default}});Object.defineProperty(wt,"isThisMonth",{enumerable:!0,get:function(){return kFr.default}});Object.defineProperty(wt,"isThisQuarter",{enumerable:!0,get:function(){return xFr.default}});Object.defineProperty(wt,"isThisSecond",{enumerable:!0,get:function(){return HFr.default}});Object.defineProperty(wt,"isThisWeek",{enumerable:!0,get:function(){return SFr.default}});Object.defineProperty(wt,"isThisYear",{enumerable:!0,get:function(){return FFr.default}});Object.defineProperty(wt,"isThursday",{enumerable:!0,get:function(){return RFr.default}});Object.defineProperty(wt,"isToday",{enumerable:!0,get:function(){return TFr.default}});Object.defineProperty(wt,"isTomorrow",{enumerable:!0,get:function(){return NFr.default}});Object.defineProperty(wt,"isTuesday",{enumerable:!0,get:function(){return PFr.default}});Object.defineProperty(wt,"isValid",{enumerable:!0,get:function(){return GFr.default}});Object.defineProperty(wt,"isWednesday",{enumerable:!0,get:function(){return YFr.default}});Object.defineProperty(wt,"isWeekend",{enumerable:!0,get:function(){return UFr.default}});Object.defineProperty(wt,"isWithinInterval",{enumerable:!0,get:function(){return LFr.default}});Object.defineProperty(wt,"isYesterday",{enumerable:!0,get:function(){return jFr.default}});Object.defineProperty(wt,"lastDayOfDecade",{enumerable:!0,get:function(){return WFr.default}});Object.defineProperty(wt,"lastDayOfISOWeek",{enumerable:!0,get:function(){return JFr.default}});Object.defineProperty(wt,"lastDayOfISOWeekYear",{enumerable:!0,get:function(){return qFr.default}});Object.defineProperty(wt,"lastDayOfMonth",{enumerable:!0,get:function(){return VFr.default}});Object.defineProperty(wt,"lastDayOfQuarter",{enumerable:!0,get:function(){return zFr.default}});Object.defineProperty(wt,"lastDayOfWeek",{enumerable:!0,get:function(){return KFr.default}});Object.defineProperty(wt,"lastDayOfYear",{enumerable:!0,get:function(){return XFr.default}});Object.defineProperty(wt,"lightFormat",{enumerable:!0,get:function(){return ZFr.default}});Object.defineProperty(wt,"max",{enumerable:!0,get:function(){return $Fr.default}});Object.defineProperty(wt,"milliseconds",{enumerable:!0,get:function(){return ARr.default}});Object.defineProperty(wt,"millisecondsToHours",{enumerable:!0,get:function(){return eRr.default}});Object.defineProperty(wt,"millisecondsToMinutes",{enumerable:!0,get:function(){return rRr.default}});Object.defineProperty(wt,"millisecondsToSeconds",{enumerable:!0,get:function(){return tRr.default}});Object.defineProperty(wt,"min",{enumerable:!0,get:function(){return iRr.default}});Object.defineProperty(wt,"minutesToHours",{enumerable:!0,get:function(){return nRr.default}});Object.defineProperty(wt,"minutesToMilliseconds",{enumerable:!0,get:function(){return aRr.default}});Object.defineProperty(wt,"minutesToSeconds",{enumerable:!0,get:function(){return oRr.default}});Object.defineProperty(wt,"monthsToQuarters",{enumerable:!0,get:function(){return sRr.default}});Object.defineProperty(wt,"monthsToYears",{enumerable:!0,get:function(){return cRr.default}});Object.defineProperty(wt,"nextDay",{enumerable:!0,get:function(){return lRr.default}});Object.defineProperty(wt,"nextFriday",{enumerable:!0,get:function(){return uRr.default}});Object.defineProperty(wt,"nextMonday",{enumerable:!0,get:function(){return gRr.default}});Object.defineProperty(wt,"nextSaturday",{enumerable:!0,get:function(){return dRr.default}});Object.defineProperty(wt,"nextSunday",{enumerable:!0,get:function(){return pRr.default}});Object.defineProperty(wt,"nextThursday",{enumerable:!0,get:function(){return ERr.default}});Object.defineProperty(wt,"nextTuesday",{enumerable:!0,get:function(){return fRr.default}});Object.defineProperty(wt,"nextWednesday",{enumerable:!0,get:function(){return BRr.default}});Object.defineProperty(wt,"parse",{enumerable:!0,get:function(){return hRr.default}});Object.defineProperty(wt,"parseISO",{enumerable:!0,get:function(){return QRr.default}});Object.defineProperty(wt,"parseJSON",{enumerable:!0,get:function(){return mRr.default}});Object.defineProperty(wt,"previousDay",{enumerable:!0,get:function(){return DRr.default}});Object.defineProperty(wt,"previousFriday",{enumerable:!0,get:function(){return _Rr.default}});Object.defineProperty(wt,"previousMonday",{enumerable:!0,get:function(){return wRr.default}});Object.defineProperty(wt,"previousSaturday",{enumerable:!0,get:function(){return vRr.default}});Object.defineProperty(wt,"previousSunday",{enumerable:!0,get:function(){return yRr.default}});Object.defineProperty(wt,"previousThursday",{enumerable:!0,get:function(){return CRr.default}});Object.defineProperty(wt,"previousTuesday",{enumerable:!0,get:function(){return IRr.default}});Object.defineProperty(wt,"previousWednesday",{enumerable:!0,get:function(){return bRr.default}});Object.defineProperty(wt,"quartersToMonths",{enumerable:!0,get:function(){return ORr.default}});Object.defineProperty(wt,"quartersToYears",{enumerable:!0,get:function(){return MRr.default}});Object.defineProperty(wt,"roundToNearestMinutes",{enumerable:!0,get:function(){return kRr.default}});Object.defineProperty(wt,"secondsToHours",{enumerable:!0,get:function(){return xRr.default}});Object.defineProperty(wt,"secondsToMilliseconds",{enumerable:!0,get:function(){return HRr.default}});Object.defineProperty(wt,"secondsToMinutes",{enumerable:!0,get:function(){return SRr.default}});Object.defineProperty(wt,"set",{enumerable:!0,get:function(){return FRr.default}});Object.defineProperty(wt,"setDate",{enumerable:!0,get:function(){return RRr.default}});Object.defineProperty(wt,"setDay",{enumerable:!0,get:function(){return TRr.default}});Object.defineProperty(wt,"setDayOfYear",{enumerable:!0,get:function(){return NRr.default}});Object.defineProperty(wt,"setDefaultOptions",{enumerable:!0,get:function(){return PRr.default}});Object.defineProperty(wt,"setHours",{enumerable:!0,get:function(){return GRr.default}});Object.defineProperty(wt,"setISODay",{enumerable:!0,get:function(){return YRr.default}});Object.defineProperty(wt,"setISOWeek",{enumerable:!0,get:function(){return URr.default}});Object.defineProperty(wt,"setISOWeekYear",{enumerable:!0,get:function(){return LRr.default}});Object.defineProperty(wt,"setMilliseconds",{enumerable:!0,get:function(){return jRr.default}});Object.defineProperty(wt,"setMinutes",{enumerable:!0,get:function(){return WRr.default}});Object.defineProperty(wt,"setMonth",{enumerable:!0,get:function(){return JRr.default}});Object.defineProperty(wt,"setQuarter",{enumerable:!0,get:function(){return qRr.default}});Object.defineProperty(wt,"setSeconds",{enumerable:!0,get:function(){return VRr.default}});Object.defineProperty(wt,"setWeek",{enumerable:!0,get:function(){return zRr.default}});Object.defineProperty(wt,"setWeekYear",{enumerable:!0,get:function(){return KRr.default}});Object.defineProperty(wt,"setYear",{enumerable:!0,get:function(){return XRr.default}});Object.defineProperty(wt,"startOfDay",{enumerable:!0,get:function(){return ZRr.default}});Object.defineProperty(wt,"startOfDecade",{enumerable:!0,get:function(){return $Rr.default}});Object.defineProperty(wt,"startOfHour",{enumerable:!0,get:function(){return ATr.default}});Object.defineProperty(wt,"startOfISOWeek",{enumerable:!0,get:function(){return eTr.default}});Object.defineProperty(wt,"startOfISOWeekYear",{enumerable:!0,get:function(){return rTr.default}});Object.defineProperty(wt,"startOfMinute",{enumerable:!0,get:function(){return tTr.default}});Object.defineProperty(wt,"startOfMonth",{enumerable:!0,get:function(){return iTr.default}});Object.defineProperty(wt,"startOfQuarter",{enumerable:!0,get:function(){return nTr.default}});Object.defineProperty(wt,"startOfSecond",{enumerable:!0,get:function(){return aTr.default}});Object.defineProperty(wt,"startOfToday",{enumerable:!0,get:function(){return oTr.default}});Object.defineProperty(wt,"startOfTomorrow",{enumerable:!0,get:function(){return sTr.default}});Object.defineProperty(wt,"startOfWeek",{enumerable:!0,get:function(){return cTr.default}});Object.defineProperty(wt,"startOfWeekYear",{enumerable:!0,get:function(){return lTr.default}});Object.defineProperty(wt,"startOfYear",{enumerable:!0,get:function(){return uTr.default}});Object.defineProperty(wt,"startOfYesterday",{enumerable:!0,get:function(){return gTr.default}});Object.defineProperty(wt,"sub",{enumerable:!0,get:function(){return dTr.default}});Object.defineProperty(wt,"subBusinessDays",{enumerable:!0,get:function(){return pTr.default}});Object.defineProperty(wt,"subDays",{enumerable:!0,get:function(){return ETr.default}});Object.defineProperty(wt,"subHours",{enumerable:!0,get:function(){return fTr.default}});Object.defineProperty(wt,"subISOWeekYears",{enumerable:!0,get:function(){return BTr.default}});Object.defineProperty(wt,"subMilliseconds",{enumerable:!0,get:function(){return hTr.default}});Object.defineProperty(wt,"subMinutes",{enumerable:!0,get:function(){return QTr.default}});Object.defineProperty(wt,"subMonths",{enumerable:!0,get:function(){return mTr.default}});Object.defineProperty(wt,"subQuarters",{enumerable:!0,get:function(){return DTr.default}});Object.defineProperty(wt,"subSeconds",{enumerable:!0,get:function(){return _Tr.default}});Object.defineProperty(wt,"subWeeks",{enumerable:!0,get:function(){return wTr.default}});Object.defineProperty(wt,"subYears",{enumerable:!0,get:function(){return vTr.default}});Object.defineProperty(wt,"toDate",{enumerable:!0,get:function(){return yTr.default}});Object.defineProperty(wt,"weeksToDays",{enumerable:!0,get:function(){return CTr.default}});Object.defineProperty(wt,"yearsToMonths",{enumerable:!0,get:function(){return ITr.default}});Object.defineProperty(wt,"yearsToQuarters",{enumerable:!0,get:function(){return bTr.default}});var aHr=It(OlA()),oHr=It(xlA()),sHr=It(f1()),cHr=It(AU()),lHr=It(GlA()),uHr=It(N5()),gHr=It(dU()),dHr=It(F5()),pHr=It(EU()),EHr=It(jlA()),fHr=It(RM()),BHr=It(qlA()),hHr=It(fSA()),QHr=It(mSA()),mHr=It(vSA()),DHr=It(bSA()),_Hr=It(bw()),wHr=It(FSA()),vHr=It(USA()),yHr=It($SA()),CHr=It(Z4()),IHr=It(ruA()),bHr=It(aFA()),OHr=It(RU()),MHr=It(auA()),kHr=It(GU()),xHr=It(UU()),HHr=It(jU()),SHr=It(qU()),FHr=It(SFA()),RHr=It(TM()),THr=It(XU()),NHr=It(GM()),PHr=It(WFA()),GHr=It(YM()),YHr=It(KFA()),UHr=It(EuA()),LHr=It(BuA()),jHr=It(tRA()),WHr=It(oRA()),JHr=It(lRA()),qHr=It(ERA()),VHr=It(hRA()),zHr=It(yL()),KHr=It(wRA()),XHr=It(ORA()),ZHr=It(xRA()),$Hr=It($U()),ASr=It(FRA()),eSr=It(NRA()),rSr=It(URA()),tSr=It(jRA()),iSr=It(qRA()),nSr=It(eL()),aSr=It(KRA()),oSr=It($RA()),sSr=It(eTA()),cSr=It(tTA()),lSr=It(IuA()),uSr=It(vuA()),gSr=It(nTA()),dSr=It(GuA()),pSr=It(LuA()),ESr=It(juA()),fSr=It(pNA()),BSr=It(BNA()),hSr=It(QNA()),QSr=It(DNA()),mSr=It(wNA()),DSr=It(CNA()),_Sr=It(bNA()),wSr=It(MNA()),vSr=It(FNA()),ySr=It(TNA()),CSr=It(zuA()),ISr=It(tk()),bSr=It(LNA()),OSr=It(KuA()),MSr=It(zNA()),kSr=It(ZNA()),xSr=It(APA()),HSr=It(tPA()),SSr=It($uA()),FSr=It(AgA()),RSr=It(t2()),TSr=It(cPA()),NSr=It(gPA()),PSr=It(EPA()),GSr=It(hPA()),YSr=It(DPA()),USr=It(iuA()),LSr=It(vPA()),jSr=It(rgA()),WSr=It(OPA()),JSr=It(igA()),qSr=It(FPA()),VSr=It(tgA()),zSr=It(PPA()),KSr=It(UPA()),XSr=It(jPA()),ZSr=It(JPA()),$Sr=It(VPA()),AFr=It(XPA()),eFr=It($PA()),rFr=It(aGA()),tFr=It(lGA()),iFr=It(pGA()),nFr=It(AuA()),aFr=It(hGA()),oFr=It(mGA()),sFr=It(wGA()),cFr=It(CGA()),lFr=It(OGA()),uFr=It(guA()),gFr=It(XuA()),dFr=It($UA()),pFr=It(rLA()),EFr=It(nLA()),fFr=It(G5()),BFr=It(HgA()),hFr=It(SgA()),QFr=It(QLA()),mFr=It(FgA()),DFr=It(RgA()),_Fr=It(TgA()),wFr=It(PgA()),vFr=It(DJ()),yFr=It(GgA()),CFr=It(MlA()),IFr=It(zY()),bFr=It(PLA()),OFr=It(ULA()),MFr=It(WLA()),kFr=It(VLA()),xFr=It(XLA()),HFr=It(AjA()),SFr=It(tjA()),FFr=It(ajA()),RFr=It(cjA()),TFr=It(gjA()),NFr=It(pjA()),PFr=It(BjA()),GFr=It($4()),YFr=It(mjA()),UFr=It(HM()),LFr=It(wjA()),jFr=It(CjA()),WFr=It(OjA()),JFr=It(HjA()),qFr=It(FjA()),VFr=It(ngA()),zFr=It(NjA()),KFr=It(JgA()),XFr=It(YjA()),ZFr=It(LjA()),$Fr=It(zlA()),ARr=It(JjA()),eRr=It(VjA()),rRr=It(KjA()),tRr=It(ZjA()),iRr=It(XlA()),nRr=It(AWA()),aRr=It(rWA()),oRr=It(iWA()),sRr=It(aWA()),cRr=It(sWA()),lRr=It(nD()),uRr=It(gWA()),gRr=It(EWA()),dRr=It(hWA()),pRr=It(DWA()),ERr=It(vWA()),fRr=It(IWA()),BRr=It(MWA()),hRr=It(MgA()),QRr=It(SWA()),mRr=It(TWA()),DRr=It(aD()),_Rr=It(YWA()),wRr=It(jWA()),vRr=It(qWA()),yRr=It(KWA()),CRr=It($WA()),IRr=It(rJA()),bRr=It(nJA()),ORr=It(oJA()),MRr=It(cJA()),kRr=It(gJA()),xRr=It(pJA()),HRr=It(fJA()),SRr=It(hJA()),FRr=It(DJA()),RRr=It(wJA()),TRr=It(CJA()),NRr=It(bJA()),PRr=It(kJA()),GRr=It(HJA()),YRr=It(FJA()),URr=It(TJA()),LRr=It(PlA()),jRr=It(PJA()),WRr=It(YJA()),JRr=It(Rq()),qRr=It(LJA()),VRr=It(WJA()),zRr=It(qJA()),KRr=It(XJA()),XRr=It($JA()),ZRr=It(SM()),$Rr=It(rqA()),ATr=It(xgA()),eTr=It(Iw()),rTr=It(P5()),tTr=It(dL()),iTr=It(UM()),nTr=It(hL()),aTr=It(NgA()),oTr=It(iqA()),sTr=It(aqA()),cTr=It(X4()),lTr=It(nW()),uTr=It(kL()),gTr=It(sqA()),dTr=It(uqA()),pTr=It(dqA()),ETr=It(Ck()),fTr=It(EqA()),BTr=It(uuA()),hTr=It(Y5()),QTr=It(BqA()),mTr=It(ndA()),DTr=It(QqA()),_Tr=It(DqA()),wTr=It(wqA()),vTr=It(yqA()),yTr=It(An()),CTr=It(IqA()),ITr=It(OqA()),bTr=It(kqA()),ddA=_u();Object.keys(ddA).forEach(function(A){A==="default"||A==="__esModule"||Object.prototype.hasOwnProperty.call(nHr,A)||A in wt&&wt[A]===ddA[A]||Object.defineProperty(wt,A,{enumerable:!0,get:function(){return ddA[A]}})})});var QdA=GA((Jai,LqA)=>{var kTr=/(bb|dd|ff|gg|mm|nn|pp|rr|tt)$/,SqA=/(.+)(sses)$/,FqA=/(.{2,})(ied|ies)$/,RqA=/(.{1})(ied|ies)$/,xTr=/(.+)(us|ss)$/,TqA=/(.+)(s)$/,fdA=/(.*)(eedly|eed)$/,NqA=/([aeiouy].*)(ed|edly|ingly|ing)$/,HTr=/(at|bl|iz)$/,STr=/(.+[^aeiouy])([y3])$/,FTr=/(ization|ational|fulness|ousness|iveness|tional|biliti|lessli|entli|ation|alism|aliti|ousli|iviti|fulli|enci|anci|abli|izer|ator|alli|bli|ogi|li)$/,BdA=[{rgx:/ational$/,replacement:"ate"},{rgx:/ization$/,replacement:"ize"},{rgx:/fulness$/,replacement:"ful"},{rgx:/ousness$/,replacement:"ous"},{rgx:/iveness$/,replacement:"ive"},{rgx:/tional$/,replacement:"tion"},{rgx:/biliti$/,replacement:"ble"},{rgx:/lessli$/,replacement:"less"},{rgx:/iviti$/,replacement:"ive"},{rgx:/ousli$/,replacement:"ous"},{rgx:/ation$/,replacement:"ate"},{rgx:/entli$/,replacement:"ent"},{rgx:/(.*)(alism|aliti)$/,replacement:"$1al"},{rgx:/fulli$/,replacement:"ful"},{rgx:/alli$/,replacement:"al"},{rgx:/ator$/,replacement:"ate"},{rgx:/izer$/,replacement:"ize"},{rgx:/enci$/,replacement:"ence"},{rgx:/anci$/,replacement:"ance"},{rgx:/abli$/,replacement:"able"},{rgx:/bli$/,replacement:"ble"},{rgx:/(.*)(l)(ogi)$/,replacement:"$1$2og"},{rgx:/(.*)([cdeghkmnrt])(li)$/,replacement:"$1$2"}],RTr=/(ational|tional|alize|icate|iciti|ative|ical|ness|ful)$/,hdA=[{rgx:/ational$/,replacement:"ate"},{rgx:/tional$/,replacement:"tion"},{rgx:/alize$/,replacement:"al"},{rgx:/(.*)(icate|iciti|ical)$/,replacement:"$1ic"},{rgx:/(ness|ful)$/,replacement:""}],PqA=/(ement|ance|ence|able|ible|ment|ant|ent|ism|ate|iti|ous|ive|ize|al|er|ic)$/,GqA=/(ement|ance|ence|able|ible|ment|ant|ent|ism|ate|iti|ous|ive|ize|ion|al|er|ic)$/,YqA=/(.*)(s|t)(ion)$/,Bp=Object.create(null);Bp.skis="ski";Bp.skies="sky";Bp.dying="die";Bp.lying="lie";Bp.tying="tie";Bp.idly="idl";Bp.gently="gentl";Bp.ugly="ugli";Bp.early="earli";Bp.only="onli";Bp.singly="singl";Bp.sky="sky";Bp.news="news";Bp.atlas="atlas";Bp.cosmos="cosmos";Bp.bias="bias";Bp.andes="andes";var TTr=/^(inning|outing|canning|herring|proceed|exceed|succeed|earring)$/,NTr=function(A){return A.replace(/^y/,"3").replace(/([aeiou])y/,"$13").replace(/\’s$|\'s$/,"").replace(/s\’$|s\'$/,"").replace(/[\’\']$/,"")},UqA=function(A){return/[^aeiouy][aeiouy][^aeiouywx3]$/.test(A)||/^[aeiouy][^aeiouy]{0,1}$/.test(A)},B2=function(A){var r,t,i=/[aeiouy]+([^aeiouy]{1}.+)/;return r=i.exec(A),r?(r=r[1].slice(1),r=/^(gener|commun|arsen)/.test(A)?A.replace(/^(gener|commun|arsen)(.*)/,"$2"):r,t=i.exec(r),t?(t=t[1].slice(1),{r1:r,r2:t}):{r1:r,r2:""}):{r1:"",r2:""}},PTr=function(A){var r;return SqA.test(A)?A.replace(SqA,"$1ss"):FqA.test(A)?A.replace(FqA,"$1i"):RqA.test(A)?A.replace(RqA,"$1ie"):xTr.test(A)?A:(r=A.replace(TqA,"$1"),/[aeiuouy](.+)$/.test(r)?A.replace(TqA,"$1"):A)},GTr=function(A){var r=B2(A),t;return fdA.test(A)?fdA.test(r.r1)?A.replace(fdA,"$1ee"):A:NqA.test(A)?(t=A.replace(NqA,"$1"),r=B2(t),HTr.test(t)?t+"e":kTr.test(t)?t.replace(/.$/,""):UqA(t)&&r.r1===""?t+"e":t):A},YTr=function(A){return A.replace(STr,"$1i")},UTr=function(A){var r,t,i=B2(A),o,s=A.match(FTr);if(s=s===null?"$$$$$":s[1],i.r1.indexOf(s)!==-1){for(r=0,t=BdA.length;r{var qTr=function(A,r){var t=A,i=r||[];i.forEach(function(g){t=t.map(g)}),t=new Set(t);var o=function(g){return!t.has(g)},s=function(){return t};return{set:s,exclude:o}};jqA.exports=qTr});var JqA=GA((Vai,WqA)=>{var VTr=function(){var A=Object.create(null),r=Object.create(null),t=function(o,s){return A[o]=A[o]||[],A[o].push(s),!0},i=function(){return A};return r.build=t,r.result=i,r};WqA.exports=VTr});var DdA=GA((zai,qqA)=>{var zTr=function(A,r){var t,i=A&&typeof A=="string"?A:'"',o=i.length,s=null,g="",E=r&&typeof r=="string"?r:i,p=E.length;for(t=0;t{var KTr=function(A){return A.toLowerCase()};VqA.exports=KTr});var XqA=GA((Xai,KqA)=>{var XTr=function(A){return A.toUpperCase()};KqA.exports=XTr});var _dA=GA((Zai,ZqA)=>{var ZTr=function(A){return A.trim()};ZqA.exports=ZTr});var Jh=GA(($ai,$qA)=>{var Ol=Object.create(null);Ol.punctuations=/[\’\'\‘\’\`\“\”\"\[\]\(\)\{\}\…\,\.\!\;\?\/\-\:]/ig;Ol.eosPunctuations=/([\.\?\!])\s*(?=[a-z]|\s+\d)/gi;Ol.splChars=/[\*\+\%\#\@\^\=\~\|\\]/ig;Ol.elisionsSpl=/(\b)(it|let|that|who|what|here|there|when|where|why|how)(\'s)\b/gi;Ol.elisions1=/([a-z])(\'d|\'m)\b/gi;Ol.elisions2=/([a-z])(\'ll|\'ve|\'re|n\'t)\b/gi;Ol.notElision=/([a-z])(n\'t)\b/gi;Ol.cannot=/\b(can)(not)\b/gi;Ol.spaces=/\s+/ig;Ol.notSpace=/\S/g;Ol.alphaSpace=/[a-z\s]/ig;Ol.alphaNumericSpace=/[a-z0-9\s]/ig;Ol.notAlpha=/[^a-z]/ig;Ol.notAlphaNumeric=/[^a-z0-9]/ig;Ol.nonWords=/\W+/ig;Ol.negations=/^(never|none|not|no)$/i;Ol.rocWords=/(?:\b[A-Z][A-Za-z]*\s*){2,}/g;Ol.number=/[0-9]*\.[0-9]+e[\+\-]{1}[0-9]+|[0-9]*\.[0-9]+|[0-9]+/ig;Ol.timeIn12HrAMPM=/(?:[0-9]|0[0-9]|1[0-2])((:?:[0-5][0-9])){0,1}\s?(?:[aApP][mM])/ig;Ol.htmlTags=/(?:<[^>]*>)/g;Ol.htmlEscSeq1=/(?:&[a-z]{2,6};)/gi;Ol.htmlEscSeq2=/(?:&#[0-9]{2,4};)/gi;Ol.mobileIndian=/^(0|\+91)?[789]\d{9}$/;Ol.email=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;Ol.separateNumAndText=/([0-9]*\.[0-9]+e[\+\-]{1}[0-9]+|[0-9]*\.[0-9]+|[0-9]+)[\s]*(.*)/i;Ol.date=/(\d+)/ig;Ol.nonNumPunctuations=/[\.\,\-](?=\D)/gi;Ol.otherPunctuations=/[\’\'\‘\’\`\“\”\"\[\]\(\)\{\}\…\!\;\?\/\:]/ig;Ol.currency=/[\$\£\¥\€]/ig;$qA.exports=Ol});var eVA=GA((Aoi,AVA)=>{var $Tr=Jh(),ANr=function(A){return A.trim().replace($Tr.spaces," ")};AVA.exports=ANr});var iVA=GA((eoi,tVA)=>{var rVA=Jh(),eNr=function(A){return A.replace(rVA.notAlphaNumeric," ").replace(rVA.spaces," ").trim()};tVA.exports=eNr});var aVA=GA((roi,nVA)=>{var rNr=[/\bm\.?\s*a\b/i,/\bb\.?\s*a\b/i,/\bb\.?\s*tech\b/i,/\bm\.?\s*tech\b/i,/\bb\.?\s*des\b/i,/\bm\.?\s*des\b/i,/\bm\.?\s*b\.?\s*a\b/i,/\bm\.?\s*c\.?\s*a\b/i,/\bb\.?\s*c\.?\s*a\b/i,/\bl\.?\s*l\.?\s*b\b/i,/\bl\.?\s*l\.?\s*m\b/i,/\bm\.?\s*b\.?\s*b\.?\s*s\b/i,/\bm\.?\s*d\b/i,/\bd\.?\s*m\b/i,/\bm\.?\s*s\b/i,/\bd\.?\s*n\.?\s*b\b/i,/\bd\.?\s*g\.?\s*o\b/i,/\bd\.?\s*l\.?\s*o\b/i,/\bb\.?\s*d\.?\s*s\b/i,/\bb\.?\s*h\.?\s*m\.?\s*s\b/i,/\bb\.?\s*a\.?\s*m\.?\s*s\b/i,/\bf\.?\s*i\.?\s*c\.?\s*s\b/i,/\bm\.?\s*n\.?\s*a\.?\s*m\.?\s*s\b/i,/\bb\.?\s*e\.?\s*m\.?\s*s\b/i,/\bd\.?\s*c\.?\s*h\b/i,/\bm\.?\s*c\.?\s*h\b/i,/\bf\.?\s*r\.?\s*c\.?\s*s\b/i,/\bm\.?\s*r\.?\s*c\.?\s*p\b/i,/\bf\.?\s*i\.?\s*a\.?\s*c\.?\s*m\b/i,/\bf\.?\s*i\.?\s*m\.?\s*s\.?\s*a\b/i,/\bp\.?\s*h\.?\s*d\b/i],tNr=["mr","mrs","miss","ms","master","er","dr","shri","shrimati","sir"],iNr=new RegExp("^(?:"+tNr.join("|")+")$","i");nVA.exports={degrees:rNr,titles:iNr}});var lVA=GA((toi,cVA)=>{var oVA=Jh(),sVA=aVA(),nNr=function(A){for(var r=sVA.degrees.map(function(o){var s=o.exec(A);return s?s.index:999999}),t=Math.min.apply(null,r),i=A.slice(0,t).replace(oVA.notAlpha," ").replace(oVA.spaces," ").trim().split(" ");i.length&&sVA.titles.test(i[0]);)i.shift();return i.join(" ")};cVA.exports=nNr});var gVA=GA((ioi,uVA)=>{var aNr=Jh(),oNr=_dA(),sNr=function(A){var r=A.match(aNr.rocWords);return r&&r.map(oNr)};uVA.exports=sNr});var pVA=GA((noi,dVA)=>{var cNr=Jh(),lNr=function(A){return A.replace(cNr.punctuations," ")};dVA.exports=lNr});var fVA=GA((aoi,EVA)=>{var uNr=Jh(),gNr=function(A){return A.replace(uNr.splChars," ")};EVA.exports=gNr});var hVA=GA((ooi,BVA)=>{var wdA=Jh(),dNr=function(A){return A.replace(wdA.htmlTags," ").replace(wdA.htmlEscSeq1," ").replace(wdA.htmlEscSeq2," ")};BVA.exports=dNr});var ydA=GA((soi,QVA)=>{var vdA=Jh(),pNr=function(A){return A.replace(vdA.elisionsSpl,"$2").replace(vdA.elisions1,"$1").replace(vdA.elisions2,"$1")};QVA.exports=pNr});var DVA=GA((coi,mVA)=>{var CdA=Jh(),ENr=function(A){return A.replace(CdA.elisionsSpl,"$2 $3").replace(CdA.elisions1,"$1 $2").replace(CdA.elisions2,"$1 $2")};mVA.exports=ENr});var IdA=GA((loi,_VA)=>{var fNr=Jh(),BNr=function(A){return A.replace(fNr.notElision,"$1 not")};_VA.exports=BNr});var vVA=GA((uoi,wVA)=>{var hNr=function(A){for(var r=Object.create(null),t=0,i=A.length;t{var QNr=function(A,r,t){var i=new Set(A);return typeof r=="function"&&r(A[0],t),i};yVA.exports=QNr});var IVA=GA((doi,CVA)=>{var mNr=function(A,r){for(var t=r||2,i=[],o,s=0,g=A.length;s{var DNr=function(A,r,t,i,o,s){for(var g=i||2,E,p=[],B=Math.min(t||8,A.length)+1,m=r||2,_=m;_{var _Nr=function(A,r,t,i){for(var o=r||2,s=Object.create(null),g,E=0,p=A.length;E{var wNr=function(A,r,t,i){for(var o=r||2,s=new Set,g,E=0,p=A.length;E{var qh=Object.create(null);qh.UNK=0;qh.bits4PrecedingSpace=16;qh.bits4lemma=20;qh.posMask=66060288;qh.psMask=65535;qh.xnMask=1073676288;qh.lemmaMask=1048575;qh.tkSize=4;qh.xpSize=4;qh.xcMask=31;qh.bits4xpPointer=14;qh.negationFlag=Math.pow(2,31);xVA.exports=qh});var kdA=GA((hoi,HVA)=>{var DV=oD(),vNr=DV.bits4PrecedingSpace,yNr=DV.xpSize,CNr=DV.bits4lemma,INr=DV.UNK,bNr=function(A){var r=A.cache,t=A.tokens,i=Object.create(null),o=function(p,B,m){return t.push(r.add(p,B),m,0,0),!0},s=function(p,B){var m=r.lookup(p),_,x,O;if(m===null)return INr;if(m.length===1)t.push(m[0],B,0,0);else for(let k=0;k{var ONr=function(A,r){for(var t=0,i=r.length-1,o,s,g,E=-1,p=.5;t<=i;)if(o=(t+i)/2|0,s=r[o][0],g=r[o][1],A>g)t=o+1,E=o+p;else if(A{var FVA=_V(),MNr=function(A,r,t){var i=FVA(r,A),o=FVA(t,A),s=A.length-1,g=[],E,p,B;if(i<0&&o<0||i>s&&o>s||(E=i<0?0:Math.ceil(i),i===o&&E!==i))return g;for(p=Math.floor(o),B=E;B<=p;B+=1)g.push(B);return g};RVA.exports=MNr});var xdA=GA((Doi,NVA)=>{var kNr=function(A,r){for(var t=0,i=r.length-1,o,s,g;t<=i;)if(o=(t+i)/2|0,s=r[o][0],g=r[o][1],A>g)t=o+1;else if(A{var xNr=xdA(),HNr=function(A,r,t){var i=xNr(A,r);if(i!==null)return t(i)};PVA.exports=HNr});var UVA=GA((woi,YVA)=>{var SNr=function(A,r,t,i){var o=A+r;return ot?void 0:i(o)};YVA.exports=SNr});var jVA=GA((voi,LVA)=>{var FNr=function(A,r,t){return A<0||A>=r.length?void 0:t(r[A])};LVA.exports=FNr});var JVA=GA((yoi,WVA)=>{var RNr=function(A,r,t,i){for(let o=r;o<=t;o+=1)A(i(o),o-r)};WVA.exports=RNr});var VVA=GA((Coi,qVA)=>{var TNr=function(A,r,t){for(let i=0;i{var NNr=function(A,r,t,i,o){var s=[];for(let g=r;g<=t;g+=1)A(i(g),g-r)&&s.push(g);return o(s)};zVA.exports=NNr});var ZVA=GA((boi,XVA)=>{var PNr=function(A,r,t,i){var o=[];for(let s=0;s{$VA.exports=(A,r)=>r[1]>A[1]?1:r[1]r[0]?1:-1});var X0=GA((Moi,ezA)=>{var AzA=HdA(),_3=oD(),GNr=["other","lowerCase","upperCase","titleCase"],_g=_3.tkSize,YNr=_3.bits4lemma,UNr=_3.posMask,LNr=_3.psMask,jNr=_3.lemmaMask,qc=Object.create(null);qc.case=function(A,r,t){return GNr[t.property(r[A*_g],"lutCase")]};qc.uniqueId=function(A,r){return r[A*_g]};qc.negationFlag=function(A,r){return r[A*_g+3]>=_3.negationFlag};qc.normal=function(A,r,t){return r[A*_g+1]>65535?t.value(t.nox(r[A*_g+1])):t.value(t.normal(r[A*_g]))};qc.contractionFlag=function(A,r){return r[A*_g+1]>65535};qc.pos=function(A,r,t){return t.valueOf("pos",(r[A*_g+2]&UNr)>>>YNr)};qc.precedingSpaces=function(A,r){var t=r[A*_g+1],i=t&LNr;return"".padEnd(i)};qc.prefix=function(A,r,t){return t.property(r[A*_g],"prefix")};qc.shape=function(A,r,t){return t.property(r[A*_g],"shape")};qc.stopWordFlag=function(A,r,t){var i=r[A*_g+1]>65535?t.nox(r[A*_g+1]):t.normal(r[A*_g]);return t.property(i,"isStopWord")===1};qc.abbrevFlag=function(A,r,t){return t.property(r[A*_g],"isAbbrev")===1};qc.suffix=function(A,r,t){return t.property(r[A*_g],"suffix")};qc.type=function(A,r,t){return t.property(r[A*_g],"tokenType")};qc.value=function(A,r,t){return t.value(r[A*_g])};qc.stem=function(A,r,t,i){return i.stem(t.value(r[A*_g]))};qc.lemma=function(A,r,t,i){if(r[A*_g+1]>65535)return t.value(r[A*_g+2]&jNr);let o=t.mappedSpelling(r[A*_g]);if(t.property(o,"isSLemma")===1)return t.value(t.property(o,"lemma"));let s=qc.pos(A,r,t),g=t.value(t.normal(r[A*_g]));return i.lemmatize(g,s,t)};qc.vector=function(){return new Array(100).fill(0)};qc.detail=function(){return!0};qc.markedUpText=function(A,r,t){return qc.value(A,r,t)};qc.span=function(A){return A.slice(0,2)};qc.sentiment=function(A){return A[3]};qc.readabilityStats=function(A,r){return r.readabilityStats(A,qc)};qc.terms=function(A,r,t){return t};qc.docTermMatrix=function(A,r,t){let i=new Array(A.length);for(let o=0;o{var rzA=_V(),WNr=function(A,r,t){if(A===void 0||r===void 0||t===void 0)return null;var i=rzA(r,A),o=rzA(t,A),s=A.length-1,g,E;if(i<0&&o<0||i>s&&o>s||(g=i<0?0:Math.ceil(i),i===o&&g!==i)||(E=Math.floor(o),A[g][0]t&&(E-=1),g>E))return null;var p=Object.create(null);return p.left=g,p.right=E,p};tzA.exports=WNr});var _1=GA((xoi,nzA)=>{var JNr=HdA(),qNr=izA(),D1=Object.create(null);D1.array=function(A){return A};D1.set=function(A){return new Set(A)};D1.bow=function(A){var r=Object.create(null),t;for(let i=0;i":r[g][2],m=r[g][3]===void 0?"":r[g][3];A[E]=B+A[E],A[p]+=m}return A.join("").trim()};nzA.exports=D1});var sD=GA((Hoi,azA)=>{var Dc=X0(),Td=_1(),ah=Object.create(null);ah.its4token=new Set([Dc.case,Dc.uniqueId,Dc.negationFlag,Dc.normal,Dc.contractionFlag,Dc.pos,Dc.precedingSpaces,Dc.prefix,Dc.shape,Dc.stopWordFlag,Dc.abbrevFlag,Dc.suffix,Dc.type,Dc.value,Dc.stem,Dc.lemma]);ah.its4tokens=ah.its4token;ah.its4selTokens=ah.its4token;ah.as4tokens=new Set([Td.array,Td.set,Td.text,Td.bow,Td.freqTable,Td.bigrams,Td.unique,Td.markedUpText]);ah.as4selTokens=new Set([Td.array,Td.set,Td.text,Td.bow,Td.freqTable,Td.bigrams,Td.unique]);ah.its4entity=new Set([Dc.value,Dc.normal,Dc.type,Dc.detail,Dc.span]);ah.as4entities=new Set([Td.array,Td.set,Td.bow,Td.freqTable,Td.unique]);ah.as4selEntities=ah.as4entities;ah.its4sentence=new Set([Dc.value,Dc.normal,Dc.span,Dc.markedUpText,Dc.negationFlag,Dc.sentiment,Dc.stem]);ah.its4document=new Set([Dc.value,Dc.normal,Dc.span,Dc.markedUpText,Dc.negationFlag,Dc.sentiment,Dc.stem,Dc.readabilityStats]);azA.exports=ah});var szA=GA((Soi,ozA)=>{var SdA=X0(),VNr=sD(),zNr=function(A,r,t,i){if(t===SdA.vector)return SdA.vector(A,r,i);var o=VNr.its4token.has(t)?t:SdA.value;return o(A,r.tokens,r.cache,i)};ozA.exports=zNr});var Hk=GA((Foi,uzA)=>{var FdA=X0(),RdA=_1(),czA=sD(),lzA=oD(),KNr=lzA.tkSize,XNr=lzA.psMask,ZNr=function(A,r,t,i,o,s){if(i===FdA.vector)return FdA.vector(A,r,t.tokens,s);var g=[],E=i&&czA.its4tokens.has(i)?i:FdA.value,p=o&&czA.as4tokens.has(o)?o:RdA.array;if(p===RdA.text||p===RdA.markedUpText)for(let B=A;B<=r;B+=1)g.push("".padEnd(t.tokens[B*KNr+1]&XNr),i(B,t.tokens,t.cache,s));else for(let B=A;B<=r;B+=1)g.push(E(B,t.tokens,t.cache,s));return p(g,t.markings,A,r)};uzA.exports=ZNr});var fzA=GA((Roi,EzA)=>{var TdA=X0(),gzA=_1(),dzA=sD(),pzA=oD(),$Nr=pzA.tkSize,APr=pzA.psMask,ePr=function(A,r,t,i,o){if(t===TdA.vector)return TdA.vector(A,r.tokens,o);var s=[],g=t&&dzA.its4selTokens.has(t)?t:TdA.value,E=i&&dzA.as4selTokens.has(i)?i:gzA.array;if(E===gzA.text)for(let p=0;p{var w3=X0(),BzA=_1(),rPr=sD(),hzA=Hk(),tPr=function(A,r,t,i){var o=r[A],s=i&&rPr.its4entity.has(i)?i:w3.value,g;return s===w3.detail?(g=Object.create(null),g.value=hzA(o[0],o[1],t,w3.value,BzA.text),g.type=o[2],g):s===w3.type?o[2]:s===w3.span?w3.span(o):hzA(o[0],o[1],t,s,BzA.text)};QzA.exports=tPr});var _zA=GA((Noi,DzA)=>{var mzA=X0(),iPr=_1(),nPr=sD(),aPr=wV(),oPr=function(A,r,t,i){var o=[];for(let g=0;g{var wzA=X0(),sPr=_1(),cPr=sD(),lPr=wV(),uPr=function(A,r,t,i,o){var s=[];for(let E=0;E{var h2=X0(),CzA=_1(),gPr=sD(),dPr=Hk(),pPr=function(A,r,t,i){var o=r.sentences[A];if(t===h2.vector)return h2.vector(o,r,i);var s=t&&gPr.its4sentence.has(t)?t:h2.value;if(s===h2.span||s===h2.sentiment)return s(o);if(s===h2.negationFlag)return o[2]===1;var g=s===h2.markedUpText?CzA.markedUpText:CzA.text;return dPr(o[0],o[1],r,s,g,i)};IzA.exports=pPr});var OzA=GA((Yoi,bzA)=>{var EPr=NdA(),fPr=function(A,r,t){var i=[];for(let o=0;o{var Pw=X0(),MzA=_1(),BPr=sD(),hPr=Hk(),QPr=function(A,r,t){var i=A.document;if(r===Pw.vector)return Pw.vector(i,A,t);var o=r&&BPr.its4document.has(r)?r:Pw.value;if(o===Pw.span||o===Pw.sentiment)return o(i);if(o===Pw.negationFlag)return i[2]===1;if(o===Pw.readabilityStats)return o(A,t);var s=o===Pw.markedUpText?MzA.markedUpText:MzA.text;return hPr(i[0],i[1],A,o,s,t)};kzA.exports=QPr});var TzA=GA((Loi,RzA)=>{var vV=oD(),HzA=vV.tkSize,mPr=vV.psMask,SzA=vV.bits4lemma,FzA=vV.posMask,DPr=function(A,r){var t=A.length,i,o,s,g,E=" ",p,B=["prefix","suffix","shape","lutCase","nerHint","tokenType"];for(console.log(` - -token p-spaces prefix suffix shape case nerHint type normal/pos`),console.log("\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014"),i=0;i65535?(p+=" "+r.value(r.nox(A[i+1])),p+=" / "+r.valueOf("pos",(A[i+2]&FzA)>>>SzA)):(p+=" "+JSON.stringify(r.value(r.normal(s))).replace(/"/g,""),p+=" / "+r.property(s,"pos")),console.log(p),p+=" / "+r.valueOf("pos",(A[i+2]&FzA)>>>SzA)}console.log(` - -total number of tokens: %d`,A.length/HzA)};RzA.exports=DPr});var LzA=GA((joi,UzA)=>{var NzA=TVA(),Sk=GVA(),yV=UVA(),PdA=jVA(),CV=JVA(),GdA=VVA(),YdA=KVA(),UdA=ZVA(),_Pr=szA(),wPr=Hk(),vPr=fzA(),PzA=wV(),GzA=_zA(),YzA=yzA(),yPr=NdA(),CPr=OzA(),IPr=xzA(),bPr=TzA(),OPr=function(A,r){var t=A.cache,i=A.tokens,o=A.entities,s=A.customEntities,g=A.sentences,E=A.markings,p,B,m,_,x,O,k,P,H,T,v,F=t.lookup,y=Object.create(null);return P=function(S){var U=Object.create(null);return U.parentDocument=()=>y,U.parentEntity=()=>Sk(S,o,H),U.parentCustomEntity=()=>Sk(S,s,T),U.markup=(V,wA)=>E.push([S,S,V,wA]),U.out=V=>_Pr(S,A,V,r),U.parentSentence=()=>Sk(S,g,v),U.index=()=>S,U},k=function(S){var U=Object.create(null);return U.each=V=>GdA(V,S,P),U.filter=V=>UdA(V,S,P,k),U.itemAt=V=>PdA(V,S,P),U.length=()=>S.length,U.out=(V,wA)=>vPr(S,A,V,wA,r),U},m=function(S,U){return function(){var V=Object.create(null);return V.each=wA=>CV(wA,S,U,P),V.filter=wA=>YdA(wA,S,U,P,k),V.itemAt=wA=>yV(wA,S,U,P),V.length=()=>U-S+1,V.out=(wA,IA)=>wPr(S,U,A,wA,IA,r),V}},H=function(S){var U=Object.create(null);return U.parentDocument=()=>y,U.markup=(V,wA)=>E.push([o[S][0],o[S][1],V,wA]),U.out=V=>PzA(S,o,A,V),U.parentSentence=()=>Sk(o[S][0],g,v),U.tokens=m(o[S][0],o[S][1]),U.index=()=>S,U},x=function(S){var U=Object.create(null);return U.each=V=>GdA(V,S,H),U.filter=V=>UdA(V,S,H,x),U.itemAt=V=>PdA(V,S,H),U.length=()=>S.length,U.out=(V,wA)=>YzA(S,o,A,V,wA),U},p=function(){var S=Object.create(null);return S.each=U=>CV(U,0,o.length-1,H),S.filter=U=>YdA(U,0,o.length-1,H,x),S.itemAt=U=>yV(U,0,o.length-1,H),S.length=()=>o.length,S.out=(U,V)=>GzA(o,A,U,V),S},T=function(S){var U=Object.create(null);return U.parentDocument=()=>y,U.markup=(V,wA)=>E.push([s[S][0],s[S][1],V,wA]),U.out=V=>PzA(S,s,A,V),U.parentSentence=()=>Sk(s[S][0],g,v),U.tokens=m(s[S][0],s[S][1]),U.index=()=>S,U},O=function(S){var U=Object.create(null);return U.each=V=>GdA(V,S,T),U.filter=V=>UdA(V,S,T,O),U.itemAt=V=>PdA(V,S,T),U.length=()=>S.length,U.out=(V,wA)=>YzA(S,s,A,V,wA),U},B=function(){var S=Object.create(null);return S.each=U=>CV(U,0,s.length-1,T),S.filter=U=>YdA(U,0,s.length-1,T,O),S.itemAt=U=>yV(U,0,s.length-1,T),S.length=()=>s.length,S.out=(U,V)=>GzA(s,A,U,V),S},v=function(S){var U=Object.create(null);return U.parentDocument=()=>y,U.markup=(V,wA)=>E.push([g[S][0],g[S][1],V,wA]),U.out=V=>yPr(S,A,V,r),U.entities=()=>x(NzA(o,g[S][0],g[S][1])),U.customEntities=()=>O(NzA(s,g[S][0],g[S][1])),U.tokens=m(g[S][0],g[S][1]),U.index=()=>S,U},_=function(){var S=Object.create(null);return S.each=U=>CV(U,0,g.length-1,v),S.itemAt=U=>yV(U,0,g.length-1,v),S.length=()=>g.length,S.out=U=>CPr(A,U,r),S},y.entities=p,y.customEntities=B,y.isLexeme=F,y.isOOV=t.isOOV,y.out=S=>IPr(A,S,r),y.sentences=_,y.tokens=m(0,A.numOfTokens-1),y.printTokens=()=>bPr(i,t),y.pipeConfig=()=>JSON.parse(JSON.stringify(A.currPipe)),y};UzA.exports=OPr});var JzA=GA((Woi,WzA)=>{var IV=oD(),MPr=IV.xnMask,kPr=IV.bits4PrecedingSpace,xPr=IV.xcMask,jzA=IV.bits4xpPointer,HPr=function(A,r){let t="tokenType";var i=Object.create(null),o=A.features.lexeme.hash,s=A.features.lexeme,g=A.features.lexeme.intrinsicSize,E=A.packing.layout,p=A.packing.size,B=A.packing.efSize,m=A.packing.efList,_=m.length,x=A.lexicon,O=A.xpansions,k=A.features.posClusters.list,P=[],H=2,T=2+B,v=new Uint32Array(B),F=r(A.packing.config),y=Object.create(null);y.tokenType=!0,m.forEach(sA=>y[sA]=!0);var S=function(sA,uA){var BA=A.features[sA],CA=BA.hash,z=BA.list,AA=0,iA=CA[uA];return iA===void 0&&(iA=CA[uA]=BA.index,BA.index=z.push(uA),AA=1),[AA,iA]},U=function(sA,uA){var BA=sA.toLowerCase(),CA=S("lexeme",sA),z=BA===sA?CA:S("lexeme",BA),AA,iA,_A,fA,M;if(CA[0]){for(v.fill(0),M=0;M<_;M+=1)iA=m[M],AA=E[iA],_A=F[iA](sA,uA,i),fA=AA[3]?_A:S(iA,_A)[1],v[AA[0]]|=fA<>>uA[2],M)for(z=(x[BA[0]+CA*p]&BA[1])>>>BA[2],iA=z&16383,AA=(z&xPr<>jzA,_A=0;_A>>uA[2],z=(x[BA[0]+sA*p]&BA[1])>>>BA[2],z?iA=(x[CA[0]+sA*p]&CA[1])>>>CA[2]:iA+=sA):(AA=sA-g,iA=P[AA*T],iA>>BA[2],z&&(iA=(x[CA[0]+iA*p]&CA[1])>>>CA[2]))),iA},pA=function(sA){var uA=E.isSpellingMapped,BA=E.lemma,CA,z=sA;return sA>>uA[2],CA&&(z=(x[BA[0]+sA*p]&BA[1])>>>BA[2])),z},oA=function(sA){return O[(sA&MPr)>>>kPr]},cA=function(sA,uA){var BA,CA,z;if(sA>>z[2],(z[3]===0||z[5]===1)&&(BA=A.features[uA].list[BA])}else{if(!y[uA])return 0;CA=sA-g,z=E[uA],BA=(P[CA*T+H+z[0]]&z[1])>>>z[2],(z[3]===0||z[5]===1)&&(BA=A.features[uA].list[BA])}return BA},eA=function(sA,uA){return k[cA(sA,"lexemeCID")].has(+uA)},Y=function(sA){var uA,BA,CA;return sA>>CA[2]):(BA=sA-g,CA=E.pos,uA=(P[BA*T+H+CA[0]]&CA[1])>>>CA[2]),uA},q=function(sA,uA){return A.features[sA].list[uA]},X=function(){return s.list.length-1},Z=function(){return g},K=function(sA,uA){var BA=V(sA);return!BA||BA.length>1||BA[0]>=g||cA(BA,"isBaseForm")===0?!1:eA(BA[0],A.pos.hash[uA])},J=function(sA){var uA=V(sA);return uA?uA.length>1?!1:uA[0]>=g:!0};return i.add=U,i.lookup=V,i.value=wA,i.property=cA,i.normal=IA,i.nox=oA,i.posOf=Y,i.valueOf=q,i.currentSize=X,i.intrinsicSize=Z,i.isOOV=J,i.isMemberPOS=eA,i.hasSamePOS=K,i.mappedSpelling=pA,i};WzA.exports=HPr});var XzA=GA((Joi,KzA)=>{var SPr=/^(?:(?:[A-Z])(?:\.))+$/i,qzA=/^(?:(?:[A-Z])(?:\.))+[a-z]?$/i,VzA=/[\-\–\—]/gi,zzA=/[\.]/gi,FPr=/[0-9]/,RPr=function(A,r){var t,i,o,s=0,g=function(_,x){var O,k,P,H,T;if(o(_)||FPr.test(_)){x.push([_,A.word]);return}if(k=_.match(VzA),k===null){x.push([_,A.word]);return}if(O=_.split(VzA),T=O.length-1,r.prefix[O[0]]||r.suffix[O[T]]){x.push([_,A.word]);return}for(H=0,P=0;P2||T===""?T=v:(g(T,x),T=O[P],v=""),H2?T=v:(g(T,x),x.push([k[H],A.punctuation]),T="",v="")),H+=1;T!==""&&g(T,x)},p=function(_,x){var O=_.match(x[0]),k=_.split(x[0]),P=[],H=x[1],T,v,F,y;for(O=O||[],F=0,T=0,v=k.length;T{var TPr=XzA(),NPr=function(A,r,t){var i=65535,o=[],s=A.ltc,g=TPr(r,t),E=A.helpers.anyWithRP,p=A.helpers.anyWithLP,B=A.helpers.LPanyRP,m=A.helpers.splitter,_=function(H){var T;for(T=0;T2?(F._addToken(H.slice(0,-1),r.word,v),F._addToken(H.slice(-1),r.punctuation,0)):y===2&&H[y-1]==="."?F._addToken(H,r.word,v):(F._addToken(H.slice(0,-1),r.word,v),F._addToken(H.slice(-1),r.punctuation,0))},k=function(H,T,v,F){F._addToken(H,T,v)},P=function(H,T){var v=[],F=0,y,S,U;for(v=T.split(m),y=0;yi&&(F=i)):(S=H._addTokenIfInCache(U,F),S===r.unk&&(S=_(U),o[S](U,S,F,H)),F=0))};return o[r.unk]=x,o[r.wordRP]=O,o[r.emoji]=k,o[r.word]=k,o[r.shortForm]=k,o[r.number]=k,o[r.url]=k,o[r.email]=k,o[r.mention]=k,o[r.hashtag]=k,o[r.emoticon]=k,o[r.time]=k,o[r.ordinal]=k,o[r.currency]=k,o[r.punctuation]=k,o[r.symbol]=k,o[r.tabCRLF]=k,o[r.apos]=k,o[r.alpha]=k,o[r.decade]=k,P};ZzA.exports=NPr});var rKA=GA((Voi,eKA)=>{var AKA=function(A){var r=[],t=A.length,i;for(i=0;i{var LdA=oD(),Fk=LdA.tkSize,GPr=LdA.bits4lemma,YPr=LdA.posMask,bV=Object.create(null),UPr=function(A){var r=A.tokens,t=A.cache,i=new Array(A.numOfTokens),o,s;for(o=0;o65535?t.nox(r[s]):t.normal(r[o]);return i},LPr=function(A){var r=A.tokens,t=A.cache,i=new Array(A.numOfTokens),o;for(o=0;o>>GPr;return i};bV.mapRawTokens2UIdOfNormal=UPr;bV.mapRawTokens2UIdOfValue=LPr;bV.mapRawTokens2UIdOfDefaultPOS=jPr;tKA.exports=bV});var nKA=GA((Koi,iKA)=>{var WPr=/\[.*?\]/g,JPr=function(A){var r=[],t=A.match(WPr);if(!t||t.length===0)return null;for(var i=0,o=t.length;iE*p.length,1);return g>r&&gt&&console.error(`winkNLP: very complex pattern detected, please review and simplify. - === It may slow down further execution! === - -`),VPr(o).forEach(function(E){s.push(E.join(" ").trim().split(/\s+/))}),s};iKA.exports=zPr});var oKA=GA((Xoi,aKA)=>{var KPr=function(A,r){let t=r-1,[i,o]=A;return i<0&&(i+=r),i=Math.max(i,0),i>t&&(i=0),o<0&&(o+=r),o=Math.min(o,t),o{var XPr=nKA(),ZPr=oKA(),$Pr=207e4,AGr="$%^EoS^%$",eGr=2070003,rGr=" otherwise",tGr=function(A,r){var t=Object.create(null),i=Object.create(null);let o=0;var s=0,g=Object.create(null),E=Object.create(null),p=Object.create(null),B,m;let _=r===void 0?` -`:r,x=A==null?_:A.lookup(_)[0],O=A==null?AGr:$Pr,k=A===void 0?rGr:eGr;var P=function(pA,oA,cA){return pA===oA&&cA?cA:(s+=1,s)},H=function(pA,oA,cA,eA){let Y=oA.length,q=Y-1,X=void 0,Z=o,K=o,J,sA;for(let uA=0;uAY.pattern.length-eA.pattern.length);for(let eA=0;eAoA[0]>cA[0]),pA.forEach(oA=>B[oA[0]]=[oA[1],oA[2]])},S=function(pA,oA,cA){let eA=pA.length;var Y=typeof oA=="function"?oA:null,q=[],X=0,Z=o,K=o,J=null,sA,uA,BA,CA=1;for(let z=0;z<=eA;z+=1)for(let AA=z;AA<=eA;AA+=CA)BA=AA===eA?O:pA[AA],BA!==x&&(B&&B[AA]?(BA=B[AA][1],CA=B[AA][0]-AA+1):CA=1,Y&&AA{var iGr=kdA(),nGr=WdA(),uKA=jdA(),aGr=uKA.mapRawTokens2UIdOfValue,oGr=uKA.mapRawTokens2UIdOfNormal,JdA=nGr(),cKA=/^\[((?:[^| ]+\|)+?|(?:\|[^| ]+)+?|(?:[^| ]+\|[^| ]+)+?|(?:[^| ]+))\]$/,lKA=/\|/g,gKA=function(A,r){let[t,...i]=A;return t===void 0?r:[t,...gKA(r,i)]},sGr=function(A,r,t,i){var o=Object.create(null),s;JdA.importJSON(A),JdA.setOnPatternDetectionFn((O,k)=>O.push(k));var g=function(O){return O.findIndex(k=>cKA.test(k))!==-1},E=function(O){return"["+O+"]"},p=function(O){var k=Object.create(null);k.cache=r,k.tokens=[];var P=iGr(k);t(P,O);let H=[],T=aGr(k).map(F=>r.value(F)),v=oGr(k).map(F=>r.value(F));for(let F=0;Fv.value)),T=Object.create(null);H.forEach(v=>T[v[0]]=[v[1],v[2],v[3]]);for(let v=0;v1)throw Error(`wink-nlp: incorrect token "${y.join("")}" encountered in examples of learnCustomEntities() API.`);v[F]=y[0]}k.push(E(gKA(v,T).join("")))}else B(O[P]).forEach(H=>k.push(E(H)));return k.join(" ")},_=function(O){let k=O.trim().split(/\s+/);return g(k)?m(k):B(O)},x=function(O){let k=[];s=Object.create(null);for(let P=0;P{var Q2=Object.create(null);Q2.isObject=function(A){return Object.prototype.toString.call(A)==="[object Object]"};Q2.isArray=function(A){return Object.prototype.toString.call(A)==="[object Array]"};Q2.isFiniteInteger=function(A){return typeof A=="number"&&!isNaN(A)&&isFinite(A)&&A===Math.round(A)};Q2.isIntegerArray=function(A){if(!Q2.isArray(A)||A.length===0)return!1;for(let r=0;r{var cGr=kdA(),lGr=LzA(),uGr=JzA(),gGr=$zA(),dGr=rKA(),hKA=jdA(),pGr=X0(),EGr=_1(),fGr=hKA.mapRawTokens2UIdOfNormal,BGr=hKA.mapRawTokens2UIdOfDefaultPOS,hGr=pKA(),Rk=oD(),v3=WdA(),QGr=xdA(),mGr=_V(),m2=fKA(),BKA=Rk.tkSize,DGr=function(A,r){var t=Object.create(null),i,o,s,g,E,p,B,m,_,x,O,k,P,H,T,v,F,y,S,U=0,V,wA,IA,pA,oA=Object.create(null),cA=Object.create(null),eA=!0,Y=function(){o=A.core(),s=uGr(o,A.featureFn),i=dGr(o.trex),g=gGr(i,o.tcat.hash,o.preserve);var K=A.sbd();B=new Array(K.machines.length),m=new Array(K.machines.length);for(let z=0;z0&&(wA.rdd=J,wA.preserve=V,wA.constants=Rk,wA.useEntity&&y.setPatternSwap(J.entities),BA=y.recognize(uA,S,wA)),J.customEntities=BA||[]):J.customEntities=[];var CA=lGr(J,A.addons);return sA.clean(),CA},X=function(K,J){if(m2.isArray(K))K.forEach(uA=>{if(m2.isObject(uA)){if(typeof uA.name!="string"||uA.name==="")throw Error(`wink-nlp: name should be a string, instead found "${uA.name}": - -${JSON.stringify(uA,null,2)}`);if(m2.isArray(uA.patterns))for(let BA=0;BA function __require() { + return mod2 || (0, cb[__getOwnPropNames(cb)[0]])((mod2 = { exports: {} }).exports, mod2), mod2.exports; +}; +var __export = (target, all3) => { + for (var name in all3) + __defProp(target, name, { get: all3[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __reExport = (target, mod2, secondTarget) => (__copyProps(target, mod2, "default"), secondTarget && __copyProps(secondTarget, mod2, "default")); +var __toESM = (mod2, isNodeMode, target) => (target = mod2 != null ? __create(__getProtoOf(mod2)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod2 || !mod2.__esModule ? __defProp(target, "default", { value: mod2, enumerable: true }) : target, + mod2 +)); -${JSON.stringify(uA,null,2)}`)}else throw Error(`wink-nlp: patterns should be an array, instead found "${typeof uA.patterns}": +// ../node_modules/.pnpm/commander@11.1.0/node_modules/commander/lib/error.js +var require_error = __commonJS({ + "../node_modules/.pnpm/commander@11.1.0/node_modules/commander/lib/error.js"(exports2) { + var CommanderError2 = class extends Error { + /** + * Constructs the CommanderError class + * @param {number} exitCode suggested exit code which could be used with process.exit + * @param {string} code an id string representing the error + * @param {string} message human-readable description of the error + * @constructor + */ + constructor(exitCode, code, message) { + super(message); + Error.captureStackTrace(this, this.constructor); + this.name = this.constructor.name; + this.code = code; + this.exitCode = exitCode; + this.nestedError = void 0; + } + }; + var InvalidArgumentError2 = class extends CommanderError2 { + /** + * Constructs the InvalidArgumentError class + * @param {string} [message] explanation of why argument is invalid + * @constructor + */ + constructor(message) { + super(1, "commander.invalidArgument", message); + Error.captureStackTrace(this, this.constructor); + this.name = this.constructor.name; + } + }; + exports2.CommanderError = CommanderError2; + exports2.InvalidArgumentError = InvalidArgumentError2; + } +}); -${JSON.stringify(uA,null,2)}`);if(uA.mark!==void 0&&(!m2.isIntegerArray(uA.mark)||uA.mark.length!==2||uA.mark.length===2&&uA.mark[0]>uA.mark[1]))throw Error(`wink-nlp: mark should be an array containing start & end indexes, instead found: - -${JSON.stringify(uA.mark,null,2)}`)}else throw Error(`wink-nlp: each example should be an object, instead found a "${typeof uA}": - -${JSON.stringify(uA,null,2)}`)});else throw Error(`wink-nlp: examples should be an array, instead found "${typeof K}".`);if(wA=J==null?Object.create(null):JSON.parse(JSON.stringify(J)),!m2.isObject(wA))throw Error(`wink-nlp: config should be an object, instead found "${typeof wA}".`);wA.matchValue=!!wA.matchValue,wA.usePOS=wA.usePOS===void 0?!0:!!wA.usePOS,wA.useEntity=wA.useEntity===void 0?!0:!!wA.useEntity,IA=hGr(pA,s,g,wA.matchValue),y=null,U=0,y=v3();let sA=IA.run(K);return V=sA.preserve,U=y.learn(sA.examples),U};if(m2.isObject(A)){if(typeof A.core!="function")throw Error("wink-nlp: invalid model used.")}else throw Error("wink-nlp: invalid model used.");oA.sbd=typeof A.sbd=="function",oA.negation=typeof A.negation=="function",oA.sentiment=typeof A.sa=="function",oA.pos=typeof A.pos=="function",oA.ner=typeof A.ner=="function",oA.cer=typeof A.metaCER=="function";let Z=r===void 0?Object.keys(oA):r;if(m2.isArray(Z))Z.forEach(K=>{if(!oA[K])throw Error(`wink-nlp: invalid pipe annotation "${K}" found.`);cA[K]=!0,eA=!1});else throw Error(`wink-nlp: invalid pipe, it must be an array instead found a "${typeof r}".`);return Y(),t.readDoc=q,t.learnCustomEntities=X,t.its=pGr,t.as=EGr,t};QKA.exports=DGr});var mKA=GA((rsi,_Gr)=>{_Gr.exports={header:{"0":0,"1":8,"2":690,"3":1400176,"4":1048640,"5":431,"6":320,"7":5950,"8":29280,"9":1762,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0},packing:{size:4,efSize:3,layout:{prefix:[0,8191,0,0,1,0],suffix:[0,-8192,13,0,1,0],lutCase:[1,3,0,1,1,0],shape:[1,65532,2,0,1,0],isAbbrev:[1,65536,16,1,1,0],lexemeCID:[1,66977792,17,1,0,0],pos:[1,-67108864,26,1,1,1],tokenType:[2,31,0,1,0,1],nerHint:[2,8160,5,1,0,0],sbdHint:[2,2088960,13,1,0,0],posHint:[2,534773760,21,1,0,0],lemma:[3,1048575,0,1,0,0],normal:[3,15728640,20,1,0,0],isSPoS:[3,16777216,24,1,0,0],isBaseForm:[3,33554432,25,1,0,0],isSLemma:[3,67108864,26,1,0,0],isContraction:[3,134217728,27,1,0,0],isStopWord:[3,268435456,28,1,0,0],isNonEOS:[3,536870912,29,1,0,0],isSpellingMapped:[3,1073741824,30,1,0,0]},config:{suffix:3,prefix:2}},lexicon:"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AQAAAMS6AAcyYm8A4QEiBAEAAADFugAGMkIrAOEBDCABAAAAw7oABTIiKQDhASIgYQQAAMe6AAYyoiQA4QEcDAEAAADIugAHMmIbAOEBDCABAAAAyboABzICGgDhAQwgYQQAAMe6AAcyYkYA4QEMIAEAAADLugAHMoI8AOEBDCABAAAAy7oABTJicwDhAQwgAQAAAM26AAcyAo0A4QEMIAEAAADOugAHMqLvAOEBDCABAAAAzroABTJCKwDhAQwgAQAAANG6AAUyIhwA4QEMIAEAAADRugAHMiIaAOEBIgABAAAA0roABjLiawDhAQwgAQAAANO6AAcyImwA2QEMIAEAAADUugAFMoIuAOEBDCABAAAA1roABTKiPADhAQwgAQAAANa6AAUyIn0A4QEMIAEAAADXugAHMgJYAOEBDCABAAAA17oABTJiHADhARYEAQAAANm6AAcyoioA4QEcDAEAAADaugAHMuI6AOEBDCABAAAA27oABzKCSQDhAQwgAQAAANy6AAcyYjoA4QEeIAEAAADdugAGMmIfAOEBIEABAAAA3boAAjICIQDhAR4AAQAAAN26AAQygucA4QEMIAEAAADUugAHMsIuAOEBDCABAAAA4boABzKiIwDhAQwgAQAAAOK6AAcywlYA4QEWBAEAAADlugAFMsJKAOEBFgQBAAAA5boABTKilwDhARYEAQAAAOW6AAcyogEB4QEeQAEAAADmugAGMmIfAOEBIEABAAAA5roAAjIiVwDhARYEAQAAAOi6AAcyoh8A4QEaQAEAAADmugAFMiJOAOEBDCABAAAA6roABzKiigDhARYEAQAAAOu6AAcywhoA4QEcDAEAAADsugAHMmIbAOEBDCABAAAA7boABzJiGwDhARYEAQAAAO66AAcywlcA4QEWBAEAAADvugAHMmIbAOEBGkABAAAA8LoABzLiIADhAQwgAQAAAPG6AAcyoicA4QEaQAEAAADyugAHMkIrAOEBGkABAAAA8roABTLiXwDhARpAAQAAAPS6AAcywhgA4QEMIAEAAAD1ugAHMiIeAOEBDCABAAAA9roABzLCGgDhARpAAQAAAPe6AAcyQmQA4QEMIAEAAAD4ugAHMiI8AOEBFgQBAAAA+boABzKCHADhARYEAQAAAPq6AAcyYiAA4QEMIAEAAAD7ugAHMmJkAOEBDCABAAAA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",features:{prefix:{list:["$%^oov^%$",` -`,` - -`,` -\r`,"!",'"',"$","%","&","'","'2","'3","'4","'5","'6","'7","'8","'9","'A","'a","'D","'d","'L","'l","'M","'m","'R","'r","'S","'s","'V","'v","'Y","'y","(","(-","(:",")",")-","):",",","-","--",".","..","/","0","1","1,","10","11","12","13","14","15","16","17","18","19","1s","2","20","21","22","23","24","25","26","27","28","29","2n","3","30","31","3r","4","40","4t","5","50","5t","6","60","6t","7","70","7t","8","80","8t","9","90","9t",":",":'",":(",":)",":*",":-",":/",":[",":\\",":]",":D",":P",":p",":S",":{",":|",":}",";",";(",";)",";-","<3","?","[","]","`","A","a","A$","a$","A-","a-","a.","A.","AA","aa","ab","Ab","ac","Ac","ad","ae","af","Af","ag","Ag","ah","AI","Ai","ai","aj","ak","al","AL","Al","AM","Am","am","An","an","ao","ap","AP","Ap","aq","ar","Ar","AR","As","as","AS","At","at","au","AU","Au","av","AV","Av","Aw","aw","ax","ay","az","b.","B.","b/","b4","ba","Ba","bb","bc","BC","bd","be","Be","bh","Bh","bi","Bi","bj","BJ","bl","bm","bn","bo","Bo","bp","br","Br","BR","bs","BS","bt","BT","bu","Bu","bv","bw","By","by","C$","c$","c.","CA","Ca","ca","cb","cc","cd","CD","ce","Ce","cf","cg","ch","Ch","CI","ci","cj","cl","cm","cn","co","Co","CO","cp","cr","Cr","cs","CT","Ct","ct","cu","Cu","cv","cw","cy","Cy","cz","Cz","D-","d-","d.","D.","da","DA","Da","db","dc","dd","de","DE","De","df","dh","di","DI","Di","dj","Dj","dk","dl","dm","dn","DO","Do","do","dp","DR","Dr","dr","ds","dt","du","Du","dv","dw","dy","dz","E-","e-","E.","e.","Ea","ea","eb","Eb","ec","Ec","ed","ee","ef","EG","eg","Eg","eh","ei","Ei","ej","ek","El","el","em","EM","Em","en","eo","ep","eq","er","Er","es","ES","Es","et","Et","eu","ev","Ev","ew","ex","Ex","ey","ez","fa","Fa","FB","fb","fc","fd","fe","FE","Fe","fh","fi","Fi","fj","FL","Fl","fl","fm","fn","fo","Fo","fp","fr","Fr","FR","fs","ft","FT","Ft","fu","fw","g.","GA","Ga","ga","gb","gc","gd","ge","GE","Ge","Gh","gh","gi","gl","gm","gn","GO","Go","go","gp","gr","Gr","gs","gu","Gu","gy","ha","HA","Ha","hc","hd","HE","He","he","hf","hh","hi","Hi","hm","hn","ho","HO","Ho","hr","hs","ht","hu","Hu","hy","I","i","I'","i'","I.","i.","ia","IA","Ia","ib","ic","IC","id","ID","Id","ie","IE","If","if","ig","II","ii","ij","ik","il","IL","Il","im","In","in","IN","io","ip","ir","Ir","IR","IS","Is","is","IT","It","it","iu","iv","IV","Iv","ix","iy","iz","I\u2019","i\u2019","ja","Ja","JA","jd","je","jf","jh","ji","jn","jo","Jo","JO","JR","Jr","jr","ju","JU","Ju","jy","k","ka","KA","Ka","kb","ke","Ke","kg","kh","ki","Ki","kk","kl","km","KN","Kn","kn","ko","Ko","kp","kr","ku","kv","kw","KY","Ky","ky","LA","La","la","lb","LB","Lb","lc","ld","le","Le","LE","lg","li","Li","LL","ll","Ll","lm","lo","lp","ls","LT","Lt","lt","lu","Lu","lw","ly","ma","Ma","MA","mb","mc","MC","MD","Md","md","me","Me","ME","mf","mg","MG","Mg","mh","MI","Mi","mi","mk","ml","mm","mn","mo","MO","Mo","mp","MR","Mr","mr","MS","Ms","ms","MT","Mt","mt","mu","MU","Mu","mv","My","my","N'","n'","N.","n.","n0","Na","na","NA","NB","nb","nc","NC","nd","ND","ne","Ne","NE","NF","nf","ng","NH","nh","ni","Ni","nj","nl","nm","nn","No","no","NO","np","nr","ns","NS","NT","nt","nu","Nu","nw","ny","NZ","nz","N\u2019","n\u2019","O'","o'","o.","oa","ob","oc","OC","Oc","od","oe","Of","of","og","Oh","oh","oi","oj","ok","OK","Ok","ol","Om","om","On","on","oo","op","Or","or","OR","os","OS","ot","Ot","ou","OU","Ou","ov","Ov","ow","ox","oy","OZ","Oz","oz","O\u2019","o\u2019","P.","p.","PA","Pa","pa","pb","pc","PC","Pc","pd","pe","Pe","pf","PG","pg","ph","Ph","pi","pk","pl","Pl","pm","pn","po","Po","PO","PP","pp","pr","PR","Pr","ps","pt","PT","Pt","pu","pv","pw","py","pz","qa","Qa","qc","qe","qi","qo","QT","Qt","qt","qu","r.","R.","ra","RA","Ra","rb","rc","RD","Rd","rd","RE","Re","re","rf","rh","ri","Ri","rn","ro","Ro","rp","RS","Rs","rs","rt","ru","Ru","rv","Rw","rw","ry","S.","s.","SA","sa","Sa","sb","sc","Sc","se","SE","Se","sf","sg","SG","Sg","SH","Sh","sh","si","Si","sj","sk","sl","Sl","sm","SM","Sm","sn","SO","So","so","sp","sq","SR","Sr","sr","ss","ST","St","st","su","Su","SU","sv","sw","Sw","sy","Sy","sz","S\xE3","s\xE3","ta","Ta","tb","TB","Tb","tc","td","te","TE","Te","th","Th","TH","ti","Ti","tk","tl","tm","tn","To","to","TO","tp","tr","Tr","ts","TS","Ts","tu","TU","Tu","tv","tw","Tw","ty","tz","u","UA","ua","ub","ud","uf","Ug","ug","uh","ui","UK","uk","Uk","ul","um","UN","un","Un","up","UP","ur","Ur","US","us","ut","uu","uv","ux","uy","uz","Uz","VA","Va","va","vc","vd","VE","ve","Ve","vf","vh","vi","Vi","VI","vl","vo","Vo","vr","VS","Vs","vs","VT","Vt","vt","vu","vy","W.","w.","wa","Wa","WA","wb","WE","We","we","wh","WH","Wh","wi","Wi","WI","wl","wm","wn","WO","Wo","wo","wp","wr","Wr","ws","wt","wu","ww","wy","WY","Wy","X-","x-","xa","xe","xi","xm","xo","xy","Y","y","Y'","y'","ya","YA","Ya","yb","yc","YD","Yd","yd","ye","Ye","yg","yh","yi","yl","yo","Yo","YO","yp","yr","yt","yu","Y\u2019","y\u2019","za","Za","zb","zd","ze","Ze","zi","Zi","zl","zo","zu","zw","zy","{","}","\xA3","\xA5","\xA9","\xAE","\u2013","\u2014","\u2018","\u2019","\u2019A","\u2019a","\u2019D","\u2019d","\u2019L","\u2019l","\u2019M","\u2019m","\u2019R","\u2019r","\u2019S","\u2019s","\u2019V","\u2019v","\u2019Y","\u2019y","\u201C","\u201D","\u2026","\u20A8","\u20A9","\u20B9","\u20BD","\u20BF","\u25B6","\u2600","\u2601","\u2605","\u2606","\u2611","\u2614","\u2615","\u261D","\u262F","\u2637","\u263A","\u2661","\u2665","\u2666","\u266A","\u266B","\u26A0","\u26A1","\u26BD","\u26C4","\u26D4","\u2708","\u270A","\u270B","\u270C","\u2713","\u2714","\u2716","\u2728","\u273F","\u2744","\u2757","\u2764","\u279C","\u27A1","\u2B50","\u{1F1EA}","\u{1F1F8}","\u{1F1FA}","\u{1F300}","\u{1F308}","\u{1F30A}","\u{1F30D}","\u{1F31A}","\u{1F31E}","\u{1F31F}","\u{1F334}","\u{1F337}","\u{1F338}","\u{1F339}","\u{1F33A}","\u{1F33B}","\u{1F33C}","\u{1F33F}","\u{1F340}","\u{1F341}","\u{1F342}","\u{1F343}","\u{1F346}","\u{1F349}","\u{1F34C}","\u{1F353}","\u{1F354}","\u{1F355}","\u{1F35F}","\u{1F366}","\u{1F369}","\u{1F36B}","\u{1F370}","\u{1F374}","\u{1F377}","\u{1F378}","\u{1F379}","\u{1F37A}","\u{1F37B}","\u{1F380}","\u{1F381}","\u{1F382}","\u{1F383}","\u{1F384}","\u{1F385}","\u{1F388}","\u{1F389}","\u{1F38A}","\u{1F393}","\u{1F3A4}","\u{1F3A5}","\u{1F3A7}","\u{1F3AD}","\u{1F3AE}","\u{1F3B5}","\u{1F3B6}","\u{1F3B8}","\u{1F3C0}","\u{1F3C3}","\u{1F3C6}","\u{1F3C8}","\u{1F3CA}","\u{1F412}","\u{1F413}","\u{1F423}","\u{1F425}","\u{1F427}","\u{1F42F}","\u{1F431}","\u{1F436}","\u{1F437}","\u{1F438}","\u{1F43C}","\u{1F43E}","\u{1F440}","\u{1F444}","\u{1F445}","\u{1F446}","\u{1F447}","\u{1F448}","\u{1F449}","\u{1F44A}","\u{1F44B}","\u{1F44C}","\u{1F44D}","\u{1F44E}","\u{1F44F}","\u{1F450}","\u{1F451}","\u{1F46B}","\u{1F46C}","\u{1F46D}","\u{1F46F}","\u{1F476}","\u{1F478}","\u{1F47B}","\u{1F47C}","\u{1F47D}","\u{1F47E}","\u{1F47F}","\u{1F480}","\u{1F481}","\u{1F483}","\u{1F484}","\u{1F485}","\u{1F486}","\u{1F489}","\u{1F48B}","\u{1F48D}","\u{1F48E}","\u{1F48F}","\u{1F490}","\u{1F491}","\u{1F493}","\u{1F494}","\u{1F495}","\u{1F496}","\u{1F497}","\u{1F498}","\u{1F499}","\u{1F49A}","\u{1F49B}","\u{1F49C}","\u{1F49D}","\u{1F49E}","\u{1F49F}","\u{1F4A3}","\u{1F4A4}","\u{1F4A5}","\u{1F4A6}","\u{1F4A8}","\u{1F4A9}","\u{1F4AA}","\u{1F4AB}","\u{1F4AD}","\u{1F4AF}","\u{1F4B0}","\u{1F4B8}","\u{1F4D2}","\u{1F4D6}","\u{1F4DA}","\u{1F4DD}","\u{1F4F7}","\u{1F51D}","\u{1F525}","\u{1F52A}","\u{1F52B}","\u{1F52E}","\u{1F600}","\u{1F601}","\u{1F602}","\u{1F603}","\u{1F604}","\u{1F605}","\u{1F606}","\u{1F607}","\u{1F608}","\u{1F609}","\u{1F60A}","\u{1F60B}","\u{1F60C}","\u{1F60D}","\u{1F60E}","\u{1F60F}","\u{1F610}","\u{1F611}","\u{1F612}","\u{1F613}","\u{1F614}","\u{1F615}","\u{1F616}","\u{1F618}","\u{1F619}","\u{1F61A}","\u{1F61B}","\u{1F61C}","\u{1F61D}","\u{1F61E}","\u{1F61F}","\u{1F620}","\u{1F621}","\u{1F622}","\u{1F623}","\u{1F624}","\u{1F625}","\u{1F627}","\u{1F628}","\u{1F629}","\u{1F62A}","\u{1F62B}","\u{1F62C}","\u{1F62D}","\u{1F62E}","\u{1F62F}","\u{1F630}","\u{1F631}","\u{1F632}","\u{1F633}","\u{1F634}","\u{1F635}","\u{1F636}","\u{1F637}","\u{1F638}","\u{1F639}","\u{1F63B}","\u{1F63D}","\u{1F63F}","\u{1F640}","\u{1F645}","\u{1F646}","\u{1F647}","\u{1F648}","\u{1F649}","\u{1F64A}","\u{1F64B}","\u{1F64C}","\u{1F64F}","\u{1F697}","\u{1F6AB}","\u{1F6AC}","\u{1F6B6}"]},suffix:{list:["$%^oov^%$",` -`,` - -`,` - - -`,` -\r`,"!",'"',"$","%","&","'","20s","30s","40s","50s","60s","70s","80s","90s","'A","'a","ALL","all","'AM","'am","'D","'d","'LL","'ll","'M","'m","'RE","'Re","'re","'S","'s","'VE","'ve","'Y","'y","(","(-:","(:",")",")-:","):",",","-","--",".","...","/","0","1","000","10","100","0th","11","1th","12","2th","13","3th","14","4th","15","5th","16","6th","17","7th","18","8th","19","9th","1st","2","20","00s","10s","21","22","2nd","23","3rd","24","25","26","27","28","29","3","30","31","4","40","5","50","6","60","7","70","8","80","9","90",":",":'(","'-(",":(",":((",":)",":))",")))",":*",":-(","-((","(((",":-)","-))",":-*",":-/",":->",":-?",":-[",":-]",":-D",":-P",":-p",":-S",":-|",":-}",":/",":[",":\\",":]",":D",":P",":p",":S",":{",":|",":}",";",";(",";)",";))",";-(",";-)",";-D","<3","<33","333","?","[","]","`","A","a","A$","a$","ody","men","a.",".D.",".d.",".M.",".m.","AA","aa","aaa","AAS","aas","aah","ing","lii","aar","ark","olf","ves","hus","arp","ave","ab","aba","aca","aci","ate","ack","nal","cus","aft","one","amp","ere","don","ned","ent","ons","ion","ase","ash","hed","sia","sic","ble","ted","tes","tic","tis","tor","oir","ial","lly","aya","abb","acy","bbe","ess","bey","bot","abc","omb","ias","sis","sty","ous","cal","uce","ens","uct","cts","eam","ian","ius","bed","ele","lia","osk","aki","nce","ncy","ant","bet","mia","tal","ter","rad","nry","hor","red","rer","ors","ide","des","ila","ies","ity","ist","phy","ect","tly","ure","res","has","haz","zia","ive","aut","aze","ism","ria","oom","bls","ary","bly","abm","mal","lcy","ard","ode","ohm","eau","aux","ish","hes","sal","sum","bor","ral","ine","ort","ely","rts","tus","lic","und","ded","nds","out","ove","bra","hia","ade","der","act","ast","dge","ged","ger","ges","ach","oad","ome","upt","sed","ise","ssa","sae","ond","eil","ler","ces","tee","ees","dly","nth","the","ute","lve","ved","ver","ory","orb","ber","ers","rbs","ain","ner","ins","sly","use","urd","abt","ser","ses","but","uzz","olt","att","aby","bye","yla","ysm","yss","nia","ac","cia","eme","mic","hip","ics","emy","tha","thi","dae","lan","yte","oid","oma","nic","dia","ari","rid","bia","rus","ote","xia","xis","dal","acc","ede","ndo","nts","ual","ept","pts","ize","zed","zes","cho","ura","aim","med","gly","ied","any","ice","ord","rds","ost","eur","unt","tre","dit","its","ete","rue","ued","ues","rse","rst","tom","ace","lol","lar","ric","aly","erb","bic","ola","ose","lus","ula","lum","yde","dol","hen","lid","ify","tin","din","tum","tyl","ene","ean","nid","che","eve","lea","nes","ira","ite","cin","chy","cid","dic","try","hil","ile","ids","nar","ini","nus","kee","cme","cne","orm","era","old","rea","orn","sma","int","sce","ced","ire","uit","gas","cre","age","did","ony","bat","ont","gen","ein","nym","yms","lis","pic","oss","cth","iae","ium","hic","non","pod","apy","zoa","oan","ear","sts","sin","eus","vir","cyl","rol","ad","ada","yly","gio","pin","apt","add","dax","end","nda","dum","ict","dle","led","ead","see","aph","dds","cer","gid","ata","omy","thy","min","adh","dhd","ieu","eux","ios","val","oin","urn","rns","nct","ust","man","ass","via","lty","mit","mix","her","exa","xal","oun","ado","obe","obo","opt","ore","adp","lin","gic","hin","ple","ift","oit","ads","ipt","adt","ult","ery","ood","lts","tia","ert","zer","vil","sor","son","yta","adz","dze","aec","gir","gis","mos","gus","eon","nis","rie","gia","oil","ram","mme","mes","ams","ogy","ane","sol","far","air","irs","vit","irm","mer","fix","xed","xes","est","ray","ght","han","ani","tan","dos","eld","isr","afl","ame","are","xin","xen","ker","oat","oot","aid","oul","afp","esh","ica","can","ans","frl","avo","spc","rth","eck","low","ife","ath","oon","ece","ock","ste","rld","nst","gal","ama","mid","ape","gar","ong","das","nti","nto","nin","gro","oup","gha","rop","let","ail","ina","ago","gog","gon","ora","rae","uti","pha","ree","eed","gua","gue","ah","hem","msa","crc","maa","AI","Ai","ai","iai","IDS","ret","tte","ido","ron","ils","ims","N'T","n't","INT","N\u2019T","n\u2019t","oli","rne","ake","ush","bus","rew","ped","rce","gun","ier","ily","fts","ike","ick","rip","irt","way","iry","sle","les","jar","ken","kha","ten","mbo","kin","kka","kko","aku","al","ala","LA.","la.","lae","arm","rms","rum","las","ska","kan","rim","alb","edo","eit","ino","org","uca","nea","bum","ums","lde","ton","zar","hol","fly","nly","met","ale","lee","oof","lep","eph","ppo","xic","lfa","sco","lga","gae","lla","oba","aic","gin","uin","thm","hms","cen","ibi","dad","ien","nee","nor","hts","ign","uot","ots","lir","yah","rin","ali","net","ran","lky","kyd","kyl","yne","All","oic","ois","lay","yed","yer","ege","tto","rph","nde","rgy","ley","eys","ays","ows","eae","uth","amy","eic","nol","aur","lot","ope","opy","wed","loy","ude","lyl","nac","cks","acs","hty","lms","loe","oft","oha","cic","oud","alp","lam","ady","lso","alt","tar","ars","aea","hea","ugh","imo","lto","uli","ati","num","mna","nae","mni","AM","Am","am","vat","mah","gam","lle","hly","urs","ulu","dor","ell","ris","bit","pia","yna","cra","amd","eba","bae","ban","eer","eal","oea","ind","yst","mex","ips","igo","mir","iss","mmo","iac","nio","MNT","mnt","mok","mon","gst","mor","tti","our","xil","moy","and","ole","oly","rpa","idy","oxi","xus","yle","ena","uma","ply","ule","pul","uck","mun","usd","myl","An","an","hon","yph","oge","cta","mma","log","ogs","yse","yze","rox","sid","rna","rca","pid","mat","phe","ema","ovy","usa","con","And","nte","eny","yny","inx","hyl","new","ang","gel","lim","que","els","erm","gle","sea","cum","gry","rom","ibo","nga","nil","ima","als","ime","mus","kle","kus","nna","nam","ese","tos","dan","nex","exe","noy","oys","lry","nul","nwn","ano","noa","ops","ryx","mie","on.","rak","ova","npu","wer","nta","tae","iya","kya","pex","ird","ixa","tem","ior","rly","lix","ill","rax","agy","eid","ebt","rug","aud","oes","gan","rty","ook","fic","tax","war","yon","max","eze","uan","ero","sar","uon","lel","cle","sto","nel","oal","ank","agi","ype","ymy","tra","tsy","erp","ety","Any","how","rta","ana","par","art","apc","per","rcu","tif","pes","hit","kia","kic","hid","his","pse","hal","yme","gee","une","egm","exy","asy","app","pal","lls","hik","rel","dix","uds","pro","ox.","apr","PR.","pr.","cot","ril","pos","PT.","pt.","qua","uae","ung","fer","ar","rab","ida","hoe","iba","ava","arb","eta","arc","cos","rch","hop","san","uke","ked","rco","rcs","sec","iid","rda","deb","ARE","Are","eas","eca","nas","ENT","gil","nne","osy","got","uer","ufy","yll","rod","ara","tta","oso","sen","hth","sta","rat","ats","pak","IZ.","iz.","ona","RK.","rk.","sas","llo","ful","ury","pit","rmy","rng","uet","nge","ras","rci","row","ith","oyo","tel","oke","tio","akh","tsd","ork","rui","yan","As","as","dha","sap","cca","sat","sci","cii","iad","ibe","bes","Ash","bin","hir","azi","zim","eth","shy","ask","kew","sks","asl","eep","asp","pen","lli","del","pis","ASQ","asq","gai","say","ais","set","ets","gns","OC.","oc.","ume","isk","ern","hma","lbe","tir","abe","sur","At","at","pan","axy","atf","har","eum","nai","dyd","ilt","van","atm","oll","oms","top","atp","apa","mpt","dee","lio","ney","au","rge","auc","dio","aug","UG.","ug.","gur","auk","uld","aum","tie","nty","rar","rei","chs","sie","rky","uto","ahn","cue","iro","phs","yro","psy","oph","ypy","umn","VE.","ve.","nue","rix","vid","una","cet","uch","vow","wal","lse","Aw","aw","ait","kes","awe","igh","eel","awl","awn","wny","wol","wry","Aww","aww","ax","axe","iom","xle","otl","xon","lah","yin","tam","azo","azt","gos","b.",".C.",".c.","b/c","b4","ba","baa","ssu","itt","bel","bka","boo","abu","hka","sit","alk","hii","ccy","lor","eat","nch","hat","oth","oor","own","saw","lap","tay","tch","kup","ods","tat","bad","die","eda","fle","bag","sse","ggy","ipe","ags","hai","mas","asa","aht","iff","iki","irn","isa","iza","ika","ald","ldr","ldy","een","lks","lad","lup","hoo","oed","rag","alm","lmy","lsa","sam","chi","Bam","bam","zle","box","dth","ndy","leg","rry","gla","shi","ngs","njo","tcy","nks","nns","hee","hie","eng","ntu","zai","bab","bap","bar","uki","rbu","uda","rde","arf","rks","arn","uta","ndi","ren","rio","rye","nji","sil","eis","ket","ssi","sso","rdy","uco","owl","hos","ths","tub","yal","tik","dei","tle","eax","tue","tty","ulk","bee","awd","dry","wdy","bay","yat","col","kal","you","oka","bbl","bc","CCI","cci","bce","coz","be","eak","nie","cat","nik","uty","bop","mel","kon","amn","aub","bug","dew","dim","zen","den","eds","raw","ech","nut","eef","alo","fed","efy","bub","eps","wax","eet","len","fit","fog","ool","beg","get","ild","egs","gum","alf","lds","ige","rut","wel","lau","lch","dam","fry","lie","ief","efs","boy","ull","elt","uga","ben","ryl","day","opa","nni","umb","zol","zyl","eft","mot","eri","rit","erk","roe","eem","som","sot","pot","tow","hel","ink","ixt","vel","vvy","evy","zel","ita","kti","bi","bib","hec","cae","vex","bid","ddy","det","fid","big","eye","wig","jou","oux","lbo","lby","lge","lgy","mbi","ilk","owy","lyo","yoh","mli","ngo","nse","aty","ota","pon","zan","irl","rle","irr","yas","pry","kek","sau","tro","map","tok","uac","kly","biz","rre","bja","BJP","bjp","bjs","lab","bby","abs","cap","iar","anc","oel","isc","off","lat","zon","leb","nny","asm","leu","lew","imp","ntz","tze","iny","lip","itz","ieg","lob","loc","cky","eaf","hot","job","wsy","ube","wup","wzy","blt","lub","lue","fin","uff","ffs","uss","lur","urb","urt","mdo","bmi","bmr","bns","boa","oar","bob","xer","cce","cie","bod","tva","ega","ehm","oer","euf","ffo","bog","gey","gie","hme","bok","kos","aal","nci","eti","var","olo","vik","lti","bie","mbs","nza","rte","bon","duc","ito","onk","sai","xie","oob","obs","oby","kie","oks","elf","rap","oty","oze","ozy","gmi","dom","ghs","sch","cht","rsh","hch","sht","zoi","osc","osh","sky","ssy","sun","rgo","tox","nan","ffe","lon","uts","bow","not","wls","wse","car","oxy","ott","tts","ozo","bph","bpi","bpm","bps","br","cio","aky","nap","zil","kax","wns","aks","ezy","gma","eiz","vet","pub","ews","iln","rig","IG.","ig.","jal","erg","onc","nco","nze","nzy","och","ham","aha","gem","mmy","nei","unn","hup","usk","BSE","bse","bst","btu","BTW","btw","jet","ubo","sti","roo","eya","cko","bud","eia","gah","fet","ufo","ugs","uhl","dup","ulb","bil","lbs","bul","hur","dog","rog","umf","ump","mph","mps","mpy","bun","mbe","unk","nko","kum","uoy","bur","urg","rgh","goo","rka","rke","url","rma","rnt","nup","urp","rps","rqa","urr","rro","rsa","sby","tit","usy","But","utt","cup","fat","tut","xom","mly","buy","uyi","uys","bvd","bwr","By","by","law","yre","sus","C$","c$","c.","CA","Ca","ca","cab","bal","abg","cao","tua","het","hou","kel","dyl","cti","cad","dre","cei","afe","fes","aff","fre","CAI","Cai","cai","ami","oya","uya","dar","bre","ico","IF.","if.","iph","dra","pac","lpe","mny","alx","lyx","pox","meo","amo","pus","CAN","Can","aan","cel","ela","uft","bis","oni","NOT","noe","ANT","upe","vas","ouc","zie","piz","apo","fig","aps","put","bao","cul","cha","rai","nyl","xyl","mom","mum","zem","bou","los","uba","rny","rob","ols","tid","sel","pel","pet","rpi","izo","rot","rve","ven","bah","hew","nos","iri","ato","lpa","ufa","rrh","chu","rem","aul","gut","hay","nip","sup","dex","vum","avy","caw","cay","cbc","cbr","cc","cd","CDC","cdc","dna","cds","cdt","ce","edi","idh","rex","xib","lom","tas","imi","uge","ceo","eos","dus","vix","ewa","cf","cfc","cfo","ftr","cgs","cma","had","ffy","aga","gga","hta","aja","aza","zae","utz","gne","kah","oyu","tey","aos","hap","iot","arr","gra","haw","nim","eap","eek","eks","eky","esy","tah","hef","kov","lpo","rub","bim","vre","ewy","uro","smi","pea","fon","tai","goe","ili","zee","gpo","tzy","ppy","irk","irp","rpy","rup","nau","lev","hiv","ivy","chk","mys","cil","yma","fos","hoc","key","oky","omp","sey","hub","hug","hum","nky","zpa","pah","CIA","iao","bei","beo","cim","lex","rri","vic","cjd","gor","aro","vus","aws","yey","lef","egg","lem","epe","isy","vis","cli","imb","ilm","lit","oak","lod","lop","eup","udy","ubs","msy","pei","cm","cmb","mbr","cmv","sos","npz","cns","co","-op","CO.","Co.","co.","oax","cob","bol","web","cyx","iel","too","yfy","pur","oco","coa","yam","cod","oda","uri","fee","cog","oho","oif","OL.","ol.","uia","quy","LO.","lo.","ugo","mns","lza","mae","edy","rey","mfy","iat","lth","ros","xly","rti","rto","hae","oct","dat","cur","emn","oga","fab","rva","vae","lux","gii","gou","iva","ror","onn","NN.","nn.","cut","sul","ext","xts","nua","nuo","uum","rsy","vey","yor","voy","coo","oop","cop","pra","tep","roy","rgi","rib","mut","rnu","orp","RP.","rp.","tef","tex","tez","vee","ymb","aei","yza","mea","rni","ULD","DNT","dnt","\u2019VE","\u2019ve","DVE","dve","spy","olk","cow","erd","pie","cox","oxa","xae","coy","yol","ypu","cpa","cpi","cpr","cps","cpu","fty","wly","azy","re8","ups","hak","epy","wet","ibs","isp","sms","cro","upy","owd","wds","crp","crt","rud","uel","mby","rux","cry","ypt","nad","cse","cst","CT.","Ct.","ct.","ctc","cub","beb","koo","cud","ulm","pae","uat","ppa","sow","few","osa","rls","rvy","usp","cuz","cva","cwm","cwt","sex","dea","mru","mry","ulf","pre","tol","tza","vak","DAY","Day","d.",".a.","da","dab","dil","fla","dag","dah","ahl","hna","mey","mio","dak","asi","mar","nit","zig","dap","raf","RES","SNT","snt","von","DAS","Das","daw","wah","db","dba","bms","ccp","dci","ddc","ddi","ddt","de","cto","fen","bts","dec","EC.","ec.","caf","dua","eco","cor","ems","cit","EL.","el.","lft","eli","lta","uxe","sne","god","ohn","emo","mob","mur","rii","pth","rby","mis","erv","esk","flp","awa","oti","dem","iam","agm","pir","iaz","pam","dib","buk","kim","cey","DID","Did","iet","dig","git","igs","ldo","wit","ghy","ngy","iol","dip","ych","ndl","dis","scs","vor","may","sfy","ich","til","amb","cee","vot","wan","zzy","dj","dkg","dkl","dkm","dl","dmd","dmz","DO","Do","do","doc","dod","dgy","odo","doe","oei","OES","ggo","doh","doi","in'","doj","ojc","lce","bas","ske","jon","ONT","fus","nob","pey","ski","dot","ubt","rah","yen","OZ.","oz.","dph","prk","DR.","Dr.","dr.","chm","lug","wee","amt","reg","zly","hky","yad","dsl","dts","uad","dub","bya","yuh","dud","due","fel","dug","dui","uly","dun","duo","omo","dii","zzo","rra","nbe","mop","tup","dvd","rfs","eeb","dye","yes","yke",".G.",".g.","gre","arl","ebb","bbs","tda","ebn","ebv","ecc","ccm","ecf","ecg","ecm","soc","cru","edd","ddo","edp","nax","edt","dta","eec","eeg","eff","igy","EG.","eg.","nog","ggs","ego","gtk","ehf","eib","tvo","fod","dau","ekg","El","el","egy","emi","xir","elk","lul","elm","eln","em","ryo","yos","mda","emf","emg","yee","pty","emu","tea","dow","lut","lfs","joy","enl","nui","sue","lpy","tsi","nom","voi","nvy","vys","epa","pee","hah","ori","epi","iod","eq","uid","nox","uip","er","err","rrs","atz","udo","esm","sop","esp","SPN","spn","esq","SQ.","sq.","mau","esr","etc","tc.","etd","etf","lac","tui","pti","hre","hmy","ipi","ev","uee","enk","ew","nki","ex","xam","rpt","xec","ecs","pla","xit","pat","xpo","yra","rir","yry","ezo","fa","faa","iau","fad","fae","fag","kir","lal","pio","fan","fao","faq","qir","uir","lek","aso","hom","tso","twa","aun","uil","fav","fax","fay","FBI","fbi","fcc","fcs","fda","fdr","feb","EB.","eb.","joa","eud","fey","fez","fha","lmc","fib","ifo","fth","gs.","iji","pun","tip","hio","fir","gig","izz","lag","gyl","lak","vin","lax","ecy","xor","lnc","nt.","flu","uky","mox","uor","wat","mri","nma","fo","oam","fob","oci","foe","ehn","ksy","ndu","pad","fop","For","for","now","paw","run","uns","mol","nix","taz","yml","vea","fox","fpd","fps","fr","cas","ppe","rau","uen","yja","eyr","frg","fri","RI.","ri.","jol","vol","uzy","fsb","fsh","ft","FT.","Ft.","ft.","ftc","fto","ftp","ftw","uci","fud","fug","ugu","fil","fun","ngi","nka","qra","fur","rze","uze","fws",".i.","GA.","Ga.","ga.","aap","gab","bro","gad","afi","gag","aia","AL.","al.","mba","nef","esa","sha","nja","nof","gao","aol","gap","nzo","sps","gat","awk","wky","awp","gay","ebo","gbp","gca","gdp","EN.","en.","rme","enf","nii","ipa","pap","nre","enu","nuk","gaw","ghb","ghq","hrf","ghz","gi","gib","rtz","kry","nep","gko","ymi","kgo","gip","smo","zeh","zmo","ebe","lib","ogg","uey","tei","gm","gmt","nat","naw","gnp","gnu","GO","Go","go","gob","ogh","wog","rha","nif","dby","oey","ofs","ofy","gol","gop","cea","rki","kiy","sip","ipy","OV.","ov.","goy","yim","gp","gpa","gps","gr8","iti","dma","dpa","gri","imy","ael","rok","osz","szy","hog","wth","nyy","gru","gsa","gsr","gu","enz","aco","uar","eza","faw","gui","uib","mpe","ulp","lps","uru","guy","yot","ybe","gym","gyp","yri","ywn","ha","HA.","Ha.","ha.","cuc","cek","HAD","Had","adj","jes","dji","aem","hag","ifa","aik","iku","rdo","haj","aji","ajj","jji","euz","aka","eru","jah","loo","lma","toe","api","ewn","hao","jan","rpo","HAS","Has","uls","AVE","voc","aii","wks","yns","mow","yti","hcg","hdl","dtv","HE","He","he","E'D","e'd","E'S","e's","mad","yli","HED","Hed","jaz","ehe","llr","eir","elp","emp","dys","hep","tad","Her","ERE","eby","eof","eto","\u2019RE","\u2019re","E\u2019S","e\u2019s","mai","ann","HES","Hes","dox","EVE","hex","xad","Hey","hey","E\u2019D","e\u2019d","\u2019LL","\u2019ll","hfc","hhs","hi","jab","him","doo","gth","mpi","His","hm","hmo","hnd","ho","zin","hob","hoy","hod","odr","dur","loa","ON.","poe","poo","gow","peh","thr","tot","HOW","How","W'D","w'd","W'S","w's","WLL","wll","WRE","wre","OWS","W\u2019D","w\u2019d","W\u2019S","w\u2019s","hr","hrs","hrt","tml","ttp","hua","pai","hud","hue","uji","hun","ayn","hut","gea","cly","eik","ymn","ypo","I","i","I'D","I'd","i'd","M'A","m'a",".E.",".e.","iaa","IAF","iaf","IAM","Iam","nfu","bex","brd","cbm","icc","CMR","cmr","csh","icu","icy","id","ddm","idf","ocy","idp","ie","IE.","ie.","EEE","eee","If","if","ifc","iga","gbo","igd","igg","glu","igm","IIT","iit","LL.","ll.","ilx","lxx","xxx","mam","bue","tur","ptu","ugn","imu","In","in","IN.","In.","in.","INC","inc","NC.","nc.","nso","ubi","ND.","nd.","dri","rct","rno","mab","nfo","fra","jun","nla","inn","inr","gli","mwe","com","zzi","gna","iew","iou","cac","ipo","raq","aqi","CTC","ysh","IS","Is","is","zid","hmi","IT","It","it","T'D","t'd","T'S","t's","ITD","Itd","itd","TLL","tll","LVE","Its","T\u2019D","t\u2019d","T\u2019S","t\u2019s","iud","IVE","Ive","yar","\u2019AM","\u2019am","I\u2019D","I\u2019d","i\u2019d","M\u2019A","m\u2019a","iru","oos","jag","weh","jak","eno","jam","AN.","an.","jaw","azz","vah","jem","jew","jfk","hvh","jib","dda","jig","adi","qui","tsu","jnd","jnr","jo","jog","OS.","os.","jot","pop","JR.","Jr.","jr.","jra","rez","jug","lav","ija","uju","jul","UL.","ul.","UN.","un.","jus","jut","k","koy","yeh","uwa","lif","lka","muc","eez","naf","NS.","ns.","nsu","nzu","aon","pok","uka","kul","kat","yak","ayo","zoo","kb","kbo","kea","keb","tab","keg","dya","nya","kg","kgb","afy","fah","kiv","khi","hiz","hoi","oum","ufu","khz","aat","kib","kid","uhr","iev","iwi","ilo","ono","kip","giz","hke","kit","tul","kkk","tho","km","KN.","Kn.","kn.","fia","o'd","kob","avn","ohl","abi","hoz","oln","kri","oye","pek","yka","pje","kor","zko","oto","dou","vna","vno","kph","tao","toa","kau","kow","nen","nur","udu","dzu","lun","aam","asz","wai","KY.","Ky.","ky.","La.","bda","edh","nsa","seh","lao","ynx","sek","sik","six","tke","atu","abo","yby","yup","zio","lb","LB.","Lb.","lb.","lbj","lcd","lcm","ldl","hwe","oek","lei","poa","tiv","rys","pta","vos","LET","Let","eva","evi","ewd","lgb","lgv","uva","iii","eni","urf","imn","mpa","tim","itu","liv","LL","ll","llb","lld","llm","LP.","lp.","lud","mao","oaf","ogo","rdi","gyi","ofa","lox","zal","lpn","lsd","LT.","Lt.","lt.","TD.","td.","ltm","TTE","uau","ffa","uik","uny","urk","wei","lye","ma","mac","cau","zor","osm","hla","sah","tri","afa","osi","mag","ilp","zag","tma","ahi","koa","jor","mak","iak","ako","awi","leo","lik","mee","ioc","oca","anx","aoi","AR.","ar.","sca","vsa","kaa","roc","uis","tyr","yrs","umi","upa","jid","qat","SS.","ss.","sif","sib","zah","tzo","zoh","uve","maw","axi","MAY","May","YNT","ynt","YVE","yve","mbd","mcg","MCX","mcx","MD.","Md.","md.","mdi","div","mdt","me","vac","meg","mei","mek","mem","hib","eev","nsh","rua","eow","meq","rcy","erl","gge","neh","RS.","rs.","roi","oia","rsi","eor","mew","ewl","uza","mfa","mg","MT.","mt.","mho","mhz","MI.","Mi.","mi.","aou","aow","mib","CH.","ch.","idi","rif","dst","GHT","TNT","tnt","TVE","tve","maq","mil","nah","sub","lsy","sdo","iso","ppi","hra","erz","mko","ml","mm","mo","MO.","Mo.","mo.","moa","mod","hul","gul","ojo","ksa","usc","omi","NT.","moo","cco","igu","hav","vim","tet","ifs","oue","jik","vie","mp","peg","MR.","Mr.","mr.","mrd","MS.","Ms.","ms.","msb","msc","msg","msh","mst","Mt.","mud","hif","sli","fti","mug","taa","lct","lwi","unj","juk","jac","goi","nud","UST","agh","sth","muu","mv","mvp","My","my","myg","mym","yth","AK.","ak.",".H.",".h.",".J.",".j.","EX.","ex.",".Y.",".y.","00b","Na","na","nab","dir","fta","nag","aif","ajd","eko","aru","syn","apu","leh","DAQ","daq","aho","ajo","wab","pns","nay","\xEFve","et\xE9","NBA","nba","nbw","DEX","nd","NDA","ne","neb","iim","BR.","br.","nec","EED","neo","ett","pil","EV.","ev.","New","ewt","NFL","nfl","ng","ngb","ngf","ngu","NHL","nhl","nib","nih","nij","sag","ipr","qab","isi","iue","nlp","lrb","nm","nmr","nnw","No","no","NO.","No.","no.","oaa","noc","nod","odi","asc","toc","Not","nov","Now","ooz","ruz","npa","npc","nra","nrc","nrl","nro","nsc","NSE","nsf","nsw","swc","NT","nt","nub","nun","uwc","wbn","wbw","hau","pho","ypa","NZ","nz","OCK",".k.","oas","eah","obi","boe","opi","odd","kar","Of","of","fal","Oh","oh","oig","ok","kay","keh","oki","kra","bos","olm","mbu","On","on","One","nyx","ooh","pcw","pec","opv","Or","or","RE.","re.","reo","olu","uzd","rzo","os","SHA","nli","otc","Our","tdo","tgo","uzo","pay","sew","owe","wes","wlt","ox","Oz.","PA.","Pa.","pa.","bir","ouk","PAF","paf","lpi","pas","yet","nsy","pua","uay","esi","rga","iah","rvo","seo","htu","tun","sim","tka","pax","xto","aye","pb","pbs","pc","pcp","pcs","pct","pda","pdl","pdt","eag","eke","koe","hle","pep","phi","eso","eul","pew","alz","pfc","nig","PGA","pga","ph","phd","gmy","oem","ysa","pi","zza","pib","pig","pij","laf","pip","nha","ogi","hki","cam","pix","xel","ixy","zas","zaz","pkd","pku","plf","plo","oce","pls","umy","plz","pm","vax","pob","oet","poi","ilu","tou","pol","kas","lyp","ypi","pom","elo","fex","jay","orc","oro","TUS","ouf","ufs","pow","wow","PP.","pp.","ppk","ppp","pr","blm","PRC","prc","cis","rep","vue","prn","rof","OF.","of.","pyl","zac","prs","uno","psa","psf","psi","pst","yop","pt","Pt.","pto","TY.","ty.","cka","pud","pug","uku","pup","pva","pvc","pwr","pya","hny","pyx","qcd","qed","piq","QT.","Qt.","qt.","uag","eue","unc","ipu","uiz",".I.","bbi","RAF","tag","aiu","raj","egh","RAM","Ram","rbc","rbi","cmp","RD.","Rd.","rd.","RE","Re","re","reb","dux","ref","evo","EP.","ep.","epp","PS.","ps.","rev","rfd","rhd","rho","rac","it.","deo","ofl","tfl","rpm","Rs.","rt","tlt","uby","udd","ruf","gby","rv","rya","SA","sa","sac","wea","sad","dhu","dhe","qis","lai","lmi","lvo","ekh","naa","dhi","Sao","sao","fem","AT.","at.","ucy","udi","awm","sba","sbe","sbw","sc","cag","wag","mpo","aup","scd","eol","rzi","ltz","lzy","pps","orr","noz","orl","ckl","ikl","uln","hwa","rhi","clk","cnt","sox","cpo","csi","lpt","rfy","se","seb","gni","gno","aig","lva","usi","sep","erf","gml","GT.","gt.","Sha","LNT","lnt","llu","shd","SHE","She","she","etz","ikh","lfy","lvy","shf","kse","oji","iek","uha","si","byl","geh","loi","sir","irc","soo","xth","xty","kag","kaw","kep","lje","kua","sko","mog","sgt","afu","snp","nug","SO","So","so","oap","sob","sod","oku","soh","oja","ldi","ggi","por","gho","sou","nir","soy","spa","pag","spf","pik","iky","piv","pue","uab","uaw","kss","SR.","Sr.","sr.","Sri","sri","spe","ssw","ST.","St.","st.","cte","std","TE.","te.","tew","stm","oae","tob","oep","stp","tud","tye","aed","dsy","ufi","ugi","myd","lci","dac","umo","suv","lte","svr","wad","wap","wbs","wim","wiz","wob","wop","wot","lph","ync","hro","ncs","ygy","S\xE3o","s\xE3o","hac","ahe","alc","lcs","win","rao","bac","rik","tap","ufe","tau","tog","taw","axa","cef","tb","SP.","sp.","tce","tcp","tdt","te","tec","hno","teg","egu","eju","kki","lco","jin","nno","rec","xan","xas","th","weg","muz","HAT","ATD","atd","TRE","ATS","thb","thc","thd","THE","The","RED","ELL","ESE","HEY","Y'D","y'd","YLL","YRE","Y\u2019D","y\u2019d","HIS","S'S","s's","ISS","S\u2019S","s\u2019s","hnx","OSE","hru","thu","HU.","hu.","thx","thz","tib","tac","Tim","ucu","mou","isu","tko","tlc","tm","tmv","tnf","tnx","To","to","tod","ofu","toi","kio","bak","om\xE9","paz","rsk","rso","HER","toy","tpn","rek","trf","trh","trm","tsa","tse","tsh","tsk","tss","UE.","ue.","tug","guz","cou","alu","tux","tv","tvs","Two","two","iyn","yrr","u","UAE","uh","-uh","uhf","UK","uk","lna","ici","UN","un","unq","zip","up","UPA","UPS","ygi","US","us","US$","us$","USA","SAF","saf","bek","scb","sda","KUB","kub","SMC","smc","USN","usn","SPS","SSR","ssr","SSS","sss","utc","utn","uub","uuh","uup","uuq","uut","VA.","Va.","va.","cua","vag","vcr","crs","vdu","VE","ve","veg","ldt","rtu","vfw","vhf","vii","lno","oxx","vip","sla","vlf","dka","vox","VS.","Vs.","vs.","VT.","Vt.","vt.","wa","pum","ahr","mth","WAS","Was","was","SH.","sh.","waw","wbc","WE","We","we","ED.","ed.","eka","lsh","wen","HEN","N'S","n's","ENS","N\u2019S","n\u2019s","ICH","H'S","h's","CHS","H\u2019S","h\u2019s","WHO","Who","who","O'D","O'S","o's","HOM","HOS","OVE","O\u2019D","o\u2019d","O\u2019S","o\u2019s","WHY","Why","why","Y'S","y's","HYD","hyd","HYS","hys","Y\u2019S","y\u2019s","iup","ifi","wam","ILL","SC.","sc.","wmd","wmo","wnw","WO","Wo","wo","woe","wok","won","woo","ooo","oow","www","woz","wpm","wsw","wtc","wtf","tff","fff","wto","wtv","wye","YO.","yo.","wyg","xo","oxo","xyy","Y","y","ya","afo","hve","veh","ltu","yap","lke","byo","yaw","yay","YD.","Yd.","yd.","ye","yea","yep","Yes","ahs","Yet","yew","hwh","yib","yid","yip","yob","bbo","odh","YOU","You","U'D","u'd","OUD","ULL","URE","UVE","U\u2019D","u\u2019d","yr","yum","tig","zap","zdv","ebu","zep","zey","zib","bwe","zit","ruk","{","}","\xA3","\xA5","\xA9","\xAE","\u2013","\u2014","\u2018","\u2019","\u2019A","\u2019a","\u2019Am","\u2019D","\u2019d","\u2019M","\u2019m","\u2019Re","\u2019S","\u2019s","\u2019Y","\u2019y","\u201C","\u201D","\u2026","\u20A8","\u20A9","\u20B9","\u20BD","\u20BF","\u25B6","\u2600","\u2601","\u2605","\u2606","\u2611","\u2614","\u2615","\u261D","\u262F","\u2637","\u263A","\u2661","\u2665","\u2666","\u266A","\u266B","\u26A0","\u26A1","\u26BD","\u26C4","\u26D4","\u2708","\u270A","\u270B","\u270C","\u2713","\u2714","\u2716","\u2728","\u273F","\u2744","\u2757","\u2764","\u279C","\u27A1","\u2B50","\u{1F1EA}","\u{1F1F8}","\u{1F1FA}","\u{1F300}","\u{1F308}","\u{1F30A}","\u{1F30D}","\u{1F31A}","\u{1F31E}","\u{1F31F}","\u{1F334}","\u{1F337}","\u{1F338}","\u{1F339}","\u{1F33A}","\u{1F33B}","\u{1F33C}","\u{1F33F}","\u{1F340}","\u{1F341}","\u{1F342}","\u{1F343}","\u{1F346}","\u{1F349}","\u{1F34C}","\u{1F353}","\u{1F354}","\u{1F355}","\u{1F35F}","\u{1F366}","\u{1F369}","\u{1F36B}","\u{1F370}","\u{1F374}","\u{1F377}","\u{1F378}","\u{1F379}","\u{1F37A}","\u{1F37B}","\u{1F380}","\u{1F381}","\u{1F382}","\u{1F383}","\u{1F384}","\u{1F385}","\u{1F388}","\u{1F389}","\u{1F38A}","\u{1F393}","\u{1F3A4}","\u{1F3A5}","\u{1F3A7}","\u{1F3AD}","\u{1F3AE}","\u{1F3B5}","\u{1F3B6}","\u{1F3B8}","\u{1F3C0}","\u{1F3C3}","\u{1F3C6}","\u{1F3C8}","\u{1F3CA}","\u{1F412}","\u{1F413}","\u{1F423}","\u{1F425}","\u{1F427}","\u{1F42F}","\u{1F431}","\u{1F436}","\u{1F437}","\u{1F438}","\u{1F43C}","\u{1F43E}","\u{1F440}","\u{1F444}","\u{1F445}","\u{1F446}","\u{1F447}","\u{1F448}","\u{1F449}","\u{1F44A}","\u{1F44B}","\u{1F44C}","\u{1F44D}","\u{1F44E}","\u{1F44F}","\u{1F450}","\u{1F451}","\u{1F46B}","\u{1F46C}","\u{1F46D}","\u{1F46F}","\u{1F476}","\u{1F478}","\u{1F47B}","\u{1F47C}","\u{1F47D}","\u{1F47E}","\u{1F47F}","\u{1F480}","\u{1F481}","\u{1F483}","\u{1F484}","\u{1F485}","\u{1F486}","\u{1F489}","\u{1F48B}","\u{1F48D}","\u{1F48E}","\u{1F48F}","\u{1F490}","\u{1F491}","\u{1F493}","\u{1F494}","\u{1F495}","\u{1F496}","\u{1F497}","\u{1F498}","\u{1F499}","\u{1F49A}","\u{1F49B}","\u{1F49C}","\u{1F49D}","\u{1F49E}","\u{1F49F}","\u{1F4A3}","\u{1F4A4}","\u{1F4A5}","\u{1F4A6}","\u{1F4A8}","\u{1F4A9}","\u{1F4AA}","\u{1F4AB}","\u{1F4AD}","\u{1F4AF}","\u{1F4B0}","\u{1F4B8}","\u{1F4D2}","\u{1F4D6}","\u{1F4DA}","\u{1F4DD}","\u{1F4F7}","\u{1F51D}","\u{1F525}","\u{1F52A}","\u{1F52B}","\u{1F52E}","\u{1F600}","\u{1F601}","\u{1F602}","\u{1F603}","\u{1F604}","\u{1F605}","\u{1F606}","\u{1F607}","\u{1F608}","\u{1F609}","\u{1F60A}","\u{1F60B}","\u{1F60C}","\u{1F60D}","\u{1F60E}","\u{1F60F}","\u{1F610}","\u{1F611}","\u{1F612}","\u{1F613}","\u{1F614}","\u{1F615}","\u{1F616}","\u{1F618}","\u{1F619}","\u{1F61A}","\u{1F61B}","\u{1F61C}","\u{1F61D}","\u{1F61E}","\u{1F61F}","\u{1F620}","\u{1F621}","\u{1F622}","\u{1F623}","\u{1F624}","\u{1F625}","\u{1F627}","\u{1F628}","\u{1F629}","\u{1F62A}","\u{1F62B}","\u{1F62C}","\u{1F62D}","\u{1F62E}","\u{1F62F}","\u{1F630}","\u{1F631}","\u{1F632}","\u{1F633}","\u{1F634}","\u{1F635}","\u{1F636}","\u{1F637}","\u{1F638}","\u{1F639}","\u{1F63B}","\u{1F63D}","\u{1F63F}","\u{1F640}","\u{1F645}","\u{1F646}","\u{1F647}","\u{1F648}","\u{1F649}","\u{1F64A}","\u{1F64B}","\u{1F64C}","\u{1F64F}","\u{1F697}","\u{1F6AB}","\u{1F6AC}","\u{1F6B6}"]},shape:{list:["$%^oov^%$",` -`,` - -`,` +// ../node_modules/.pnpm/commander@11.1.0/node_modules/commander/lib/argument.js +var require_argument = __commonJS({ + "../node_modules/.pnpm/commander@11.1.0/node_modules/commander/lib/argument.js"(exports2) { + var { InvalidArgumentError: InvalidArgumentError2 } = require_error(); + var Argument2 = class { + /** + * Initialize a new command argument with the given name and description. + * The default is that the argument is required, and you can explicitly + * indicate this with <> around the name. Put [] around the name for an optional argument. + * + * @param {string} name + * @param {string} [description] + */ + constructor(name, description) { + this.description = description || ""; + this.variadic = false; + this.parseArg = void 0; + this.defaultValue = void 0; + this.defaultValueDescription = void 0; + this.argChoices = void 0; + switch (name[0]) { + case "<": + this.required = true; + this._name = name.slice(1, -1); + break; + case "[": + this.required = false; + this._name = name.slice(1, -1); + break; + default: + this.required = true; + this._name = name; + break; + } + if (this._name.length > 3 && this._name.slice(-3) === "...") { + this.variadic = true; + this._name = this._name.slice(0, -3); + } + } + /** + * Return argument name. + * + * @return {string} + */ + name() { + return this._name; + } + /** + * @api private + */ + _concatValue(value, previous) { + if (previous === this.defaultValue || !Array.isArray(previous)) { + return [value]; + } + return previous.concat(value); + } + /** + * Set the default value, and optionally supply the description to be displayed in the help. + * + * @param {*} value + * @param {string} [description] + * @return {Argument} + */ + default(value, description) { + this.defaultValue = value; + this.defaultValueDescription = description; + return this; + } + /** + * Set the custom handler for processing CLI command arguments into argument values. + * + * @param {Function} [fn] + * @return {Argument} + */ + argParser(fn) { + this.parseArg = fn; + return this; + } + /** + * Only allow argument value to be one of choices. + * + * @param {string[]} values + * @return {Argument} + */ + choices(values) { + this.argChoices = values.slice(); + this.parseArg = (arg, previous) => { + if (!this.argChoices.includes(arg)) { + throw new InvalidArgumentError2(`Allowed choices are ${this.argChoices.join(", ")}.`); + } + if (this.variadic) { + return this._concatValue(arg, previous); + } + return arg; + }; + return this; + } + /** + * Make argument required. + */ + argRequired() { + this.required = true; + return this; + } + /** + * Make argument optional. + */ + argOptional() { + this.required = false; + return this; + } + }; + function humanReadableArgName(arg) { + const nameOutput = arg.name() + (arg.variadic === true ? "..." : ""); + return arg.required ? "<" + nameOutput + ">" : "[" + nameOutput + "]"; + } + exports2.Argument = Argument2; + exports2.humanReadableArgName = humanReadableArgName; + } +}); +// ../node_modules/.pnpm/commander@11.1.0/node_modules/commander/lib/help.js +var require_help = __commonJS({ + "../node_modules/.pnpm/commander@11.1.0/node_modules/commander/lib/help.js"(exports2) { + var { humanReadableArgName } = require_argument(); + var Help2 = class { + constructor() { + this.helpWidth = void 0; + this.sortSubcommands = false; + this.sortOptions = false; + this.showGlobalOptions = false; + } + /** + * Get an array of the visible subcommands. Includes a placeholder for the implicit help command, if there is one. + * + * @param {Command} cmd + * @returns {Command[]} + */ + visibleCommands(cmd) { + const visibleCommands = cmd.commands.filter((cmd2) => !cmd2._hidden); + if (cmd._hasImplicitHelpCommand()) { + const [, helpName, helpArgs] = cmd._helpCommandnameAndArgs.match(/([^ ]+) *(.*)/); + const helpCommand = cmd.createCommand(helpName).helpOption(false); + helpCommand.description(cmd._helpCommandDescription); + if (helpArgs) + helpCommand.arguments(helpArgs); + visibleCommands.push(helpCommand); + } + if (this.sortSubcommands) { + visibleCommands.sort((a, b) => { + return a.name().localeCompare(b.name()); + }); + } + return visibleCommands; + } + /** + * Compare options for sort. + * + * @param {Option} a + * @param {Option} b + * @returns number + */ + compareOptions(a, b) { + const getSortKey = (option) => { + return option.short ? option.short.replace(/^-/, "") : option.long.replace(/^--/, ""); + }; + return getSortKey(a).localeCompare(getSortKey(b)); + } + /** + * Get an array of the visible options. Includes a placeholder for the implicit help option, if there is one. + * + * @param {Command} cmd + * @returns {Option[]} + */ + visibleOptions(cmd) { + const visibleOptions = cmd.options.filter((option) => !option.hidden); + const showShortHelpFlag = cmd._hasHelpOption && cmd._helpShortFlag && !cmd._findOption(cmd._helpShortFlag); + const showLongHelpFlag = cmd._hasHelpOption && !cmd._findOption(cmd._helpLongFlag); + if (showShortHelpFlag || showLongHelpFlag) { + let helpOption; + if (!showShortHelpFlag) { + helpOption = cmd.createOption(cmd._helpLongFlag, cmd._helpDescription); + } else if (!showLongHelpFlag) { + helpOption = cmd.createOption(cmd._helpShortFlag, cmd._helpDescription); + } else { + helpOption = cmd.createOption(cmd._helpFlags, cmd._helpDescription); + } + visibleOptions.push(helpOption); + } + if (this.sortOptions) { + visibleOptions.sort(this.compareOptions); + } + return visibleOptions; + } + /** + * Get an array of the visible global options. (Not including help.) + * + * @param {Command} cmd + * @returns {Option[]} + */ + visibleGlobalOptions(cmd) { + if (!this.showGlobalOptions) + return []; + const globalOptions = []; + for (let ancestorCmd = cmd.parent; ancestorCmd; ancestorCmd = ancestorCmd.parent) { + const visibleOptions = ancestorCmd.options.filter((option) => !option.hidden); + globalOptions.push(...visibleOptions); + } + if (this.sortOptions) { + globalOptions.sort(this.compareOptions); + } + return globalOptions; + } + /** + * Get an array of the arguments if any have a description. + * + * @param {Command} cmd + * @returns {Argument[]} + */ + visibleArguments(cmd) { + if (cmd._argsDescription) { + cmd.registeredArguments.forEach((argument) => { + argument.description = argument.description || cmd._argsDescription[argument.name()] || ""; + }); + } + if (cmd.registeredArguments.find((argument) => argument.description)) { + return cmd.registeredArguments; + } + return []; + } + /** + * Get the command term to show in the list of subcommands. + * + * @param {Command} cmd + * @returns {string} + */ + subcommandTerm(cmd) { + const args3 = cmd.registeredArguments.map((arg) => humanReadableArgName(arg)).join(" "); + return cmd._name + (cmd._aliases[0] ? "|" + cmd._aliases[0] : "") + (cmd.options.length ? " [options]" : "") + // simplistic check for non-help option + (args3 ? " " + args3 : ""); + } + /** + * Get the option term to show in the list of options. + * + * @param {Option} option + * @returns {string} + */ + optionTerm(option) { + return option.flags; + } + /** + * Get the argument term to show in the list of arguments. + * + * @param {Argument} argument + * @returns {string} + */ + argumentTerm(argument) { + return argument.name(); + } + /** + * Get the longest command term length. + * + * @param {Command} cmd + * @param {Help} helper + * @returns {number} + */ + longestSubcommandTermLength(cmd, helper) { + return helper.visibleCommands(cmd).reduce((max, command) => { + return Math.max(max, helper.subcommandTerm(command).length); + }, 0); + } + /** + * Get the longest option term length. + * + * @param {Command} cmd + * @param {Help} helper + * @returns {number} + */ + longestOptionTermLength(cmd, helper) { + return helper.visibleOptions(cmd).reduce((max, option) => { + return Math.max(max, helper.optionTerm(option).length); + }, 0); + } + /** + * Get the longest global option term length. + * + * @param {Command} cmd + * @param {Help} helper + * @returns {number} + */ + longestGlobalOptionTermLength(cmd, helper) { + return helper.visibleGlobalOptions(cmd).reduce((max, option) => { + return Math.max(max, helper.optionTerm(option).length); + }, 0); + } + /** + * Get the longest argument term length. + * + * @param {Command} cmd + * @param {Help} helper + * @returns {number} + */ + longestArgumentTermLength(cmd, helper) { + return helper.visibleArguments(cmd).reduce((max, argument) => { + return Math.max(max, helper.argumentTerm(argument).length); + }, 0); + } + /** + * Get the command usage to be displayed at the top of the built-in help. + * + * @param {Command} cmd + * @returns {string} + */ + commandUsage(cmd) { + let cmdName = cmd._name; + if (cmd._aliases[0]) { + cmdName = cmdName + "|" + cmd._aliases[0]; + } + let ancestorCmdNames = ""; + for (let ancestorCmd = cmd.parent; ancestorCmd; ancestorCmd = ancestorCmd.parent) { + ancestorCmdNames = ancestorCmd.name() + " " + ancestorCmdNames; + } + return ancestorCmdNames + cmdName + " " + cmd.usage(); + } + /** + * Get the description for the command. + * + * @param {Command} cmd + * @returns {string} + */ + commandDescription(cmd) { + return cmd.description(); + } + /** + * Get the subcommand summary to show in the list of subcommands. + * (Fallback to description for backwards compatibility.) + * + * @param {Command} cmd + * @returns {string} + */ + subcommandDescription(cmd) { + return cmd.summary() || cmd.description(); + } + /** + * Get the option description to show in the list of options. + * + * @param {Option} option + * @return {string} + */ + optionDescription(option) { + const extraInfo = []; + if (option.argChoices) { + extraInfo.push( + // use stringify to match the display of the default value + `choices: ${option.argChoices.map((choice) => JSON.stringify(choice)).join(", ")}` + ); + } + if (option.defaultValue !== void 0) { + const showDefault = option.required || option.optional || option.isBoolean() && typeof option.defaultValue === "boolean"; + if (showDefault) { + extraInfo.push(`default: ${option.defaultValueDescription || JSON.stringify(option.defaultValue)}`); + } + } + if (option.presetArg !== void 0 && option.optional) { + extraInfo.push(`preset: ${JSON.stringify(option.presetArg)}`); + } + if (option.envVar !== void 0) { + extraInfo.push(`env: ${option.envVar}`); + } + if (extraInfo.length > 0) { + return `${option.description} (${extraInfo.join(", ")})`; + } + return option.description; + } + /** + * Get the argument description to show in the list of arguments. + * + * @param {Argument} argument + * @return {string} + */ + argumentDescription(argument) { + const extraInfo = []; + if (argument.argChoices) { + extraInfo.push( + // use stringify to match the display of the default value + `choices: ${argument.argChoices.map((choice) => JSON.stringify(choice)).join(", ")}` + ); + } + if (argument.defaultValue !== void 0) { + extraInfo.push(`default: ${argument.defaultValueDescription || JSON.stringify(argument.defaultValue)}`); + } + if (extraInfo.length > 0) { + const extraDescripton = `(${extraInfo.join(", ")})`; + if (argument.description) { + return `${argument.description} ${extraDescripton}`; + } + return extraDescripton; + } + return argument.description; + } + /** + * Generate the built-in help text. + * + * @param {Command} cmd + * @param {Help} helper + * @returns {string} + */ + formatHelp(cmd, helper) { + const termWidth = helper.padWidth(cmd, helper); + const helpWidth = helper.helpWidth || 80; + const itemIndentWidth = 2; + const itemSeparatorWidth = 2; + function formatItem(term, description) { + if (description) { + const fullText = `${term.padEnd(termWidth + itemSeparatorWidth)}${description}`; + return helper.wrap(fullText, helpWidth - itemIndentWidth, termWidth + itemSeparatorWidth); + } + return term; + } + function formatList(textArray) { + return textArray.join("\n").replace(/^/gm, " ".repeat(itemIndentWidth)); + } + let output = [`Usage: ${helper.commandUsage(cmd)}`, ""]; + const commandDescription = helper.commandDescription(cmd); + if (commandDescription.length > 0) { + output = output.concat([helper.wrap(commandDescription, helpWidth, 0), ""]); + } + const argumentList = helper.visibleArguments(cmd).map((argument) => { + return formatItem(helper.argumentTerm(argument), helper.argumentDescription(argument)); + }); + if (argumentList.length > 0) { + output = output.concat(["Arguments:", formatList(argumentList), ""]); + } + const optionList = helper.visibleOptions(cmd).map((option) => { + return formatItem(helper.optionTerm(option), helper.optionDescription(option)); + }); + if (optionList.length > 0) { + output = output.concat(["Options:", formatList(optionList), ""]); + } + if (this.showGlobalOptions) { + const globalOptionList = helper.visibleGlobalOptions(cmd).map((option) => { + return formatItem(helper.optionTerm(option), helper.optionDescription(option)); + }); + if (globalOptionList.length > 0) { + output = output.concat(["Global Options:", formatList(globalOptionList), ""]); + } + } + const commandList = helper.visibleCommands(cmd).map((cmd2) => { + return formatItem(helper.subcommandTerm(cmd2), helper.subcommandDescription(cmd2)); + }); + if (commandList.length > 0) { + output = output.concat(["Commands:", formatList(commandList), ""]); + } + return output.join("\n"); + } + /** + * Calculate the pad width from the maximum term length. + * + * @param {Command} cmd + * @param {Help} helper + * @returns {number} + */ + padWidth(cmd, helper) { + return Math.max( + helper.longestOptionTermLength(cmd, helper), + helper.longestGlobalOptionTermLength(cmd, helper), + helper.longestSubcommandTermLength(cmd, helper), + helper.longestArgumentTermLength(cmd, helper) + ); + } + /** + * Wrap the given string to width characters per line, with lines after the first indented. + * Do not wrap if insufficient room for wrapping (minColumnWidth), or string is manually formatted. + * + * @param {string} str + * @param {number} width + * @param {number} indent + * @param {number} [minColumnWidth=40] + * @return {string} + * + */ + wrap(str, width, indent, minColumnWidth = 40) { + const indents = " \\f\\t\\v\xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF"; + const manualIndent = new RegExp(`[\\n][${indents}]+`); + if (str.match(manualIndent)) + return str; + const columnWidth = width - indent; + if (columnWidth < minColumnWidth) + return str; + const leadingStr = str.slice(0, indent); + const columnText = str.slice(indent).replace("\r\n", "\n"); + const indentString = " ".repeat(indent); + const zeroWidthSpace = "\u200B"; + const breaks = `\\s${zeroWidthSpace}`; + const regex = new RegExp(` +|.{1,${columnWidth - 1}}([${breaks}]|$)|[^${breaks}]+?([${breaks}]|$)`, "g"); + const lines2 = columnText.match(regex) || []; + return leadingStr + lines2.map((line, i) => { + if (line === "\n") + return ""; + return (i > 0 ? indentString : "") + line.trimEnd(); + }).join("\n"); + } + }; + exports2.Help = Help2; + } +}); -`,` -\r`,"!",'"',"$","%","&","'","'ddx","'X","'x","'XXX","'xxx","'XX","'xx","'Xx","(","(-:","(:",")",")-:","):",",","-","--",".","...","/","d","d,ddd","dd","dd,ddd","ddd","dddd","ddxx","ddddx","dxx","ddx",":",":'(",":'-(",":(",":((",":)",":))",":)))",":))))",":)))))",":))))))",":)))))))",":))))))))",":)))))))))",":))))))))))",":*",":-(",":-((",":-(((",":-((((",":-)",":-))",":-)))",":-))))",":-)))))",":-))))))",":-)))))))",":-))))))))",":-)))))))))",":-*",":-/",":->",":-?",":-[",":-]",":-X",":-x",":-|",":-}",":/",":[",":\\",":]",":X",":x",":{",":|",":}",";",";(",";)",";))",";)))",";-(",";-)",";-X","\]]$/.test(flags2); + this.mandatory = false; + const optionFlags = splitOptionFlags(flags2); + this.short = optionFlags.shortFlag; + this.long = optionFlags.longFlag; + this.negate = false; + if (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 = false; + this.argChoices = void 0; + this.conflictsWith = []; + this.implied = void 0; + } + /** + * Set the default value, and optionally supply the description to be displayed in the help. + * + * @param {*} value + * @param {string} [description] + * @return {Option} + */ + default(value, description) { + this.defaultValue = value; + this.defaultValueDescription = description; + return this; + } + /** + * Preset to use when option used without option-argument, especially optional but also boolean and negated. + * The custom processing (parseArg) is called. + * + * @example + * new Option('--color').default('GREYSCALE').preset('RGB'); + * new Option('--donate [amount]').preset('20').argParser(parseFloat); + * + * @param {*} arg + * @return {Option} + */ + preset(arg) { + this.presetArg = arg; + return this; + } + /** + * Add option name(s) that conflict with this option. + * An error will be displayed if conflicting options are found during parsing. + * + * @example + * new Option('--rgb').conflicts('cmyk'); + * new Option('--js').conflicts(['ts', 'jsx']); + * + * @param {string | string[]} names + * @return {Option} + */ + conflicts(names) { + this.conflictsWith = this.conflictsWith.concat(names); + return this; + } + /** + * Specify implied option values for when this option is set and the implied options are not. + * + * The custom processing (parseArg) is not called on the implied values. + * + * @example + * program + * .addOption(new Option('--log', 'write logging information to file')) + * .addOption(new Option('--trace', 'log extra details').implies({ log: 'trace.txt' })); + * + * @param {Object} impliedOptionValues + * @return {Option} + */ + implies(impliedOptionValues) { + let newImplied = impliedOptionValues; + if (typeof impliedOptionValues === "string") { + newImplied = { [impliedOptionValues]: true }; + } + this.implied = Object.assign(this.implied || {}, newImplied); + return this; + } + /** + * Set environment variable to check for option value. + * + * An environment variable is only used if when processed the current option value is + * undefined, or the source of the current value is 'default' or 'config' or 'env'. + * + * @param {string} name + * @return {Option} + */ + env(name) { + this.envVar = name; + return this; + } + /** + * Set the custom handler for processing CLI option arguments into option values. + * + * @param {Function} [fn] + * @return {Option} + */ + argParser(fn) { + this.parseArg = fn; + return this; + } + /** + * Whether the option is mandatory and must have a value after parsing. + * + * @param {boolean} [mandatory=true] + * @return {Option} + */ + makeOptionMandatory(mandatory = true) { + this.mandatory = !!mandatory; + return this; + } + /** + * Hide option in help. + * + * @param {boolean} [hide=true] + * @return {Option} + */ + hideHelp(hide = true) { + this.hidden = !!hide; + return this; + } + /** + * @api private + */ + _concatValue(value, previous) { + if (previous === this.defaultValue || !Array.isArray(previous)) { + return [value]; + } + return previous.concat(value); + } + /** + * Only allow option value to be one of choices. + * + * @param {string[]} values + * @return {Option} + */ + choices(values) { + this.argChoices = values.slice(); + this.parseArg = (arg, previous) => { + if (!this.argChoices.includes(arg)) { + throw new InvalidArgumentError2(`Allowed choices are ${this.argChoices.join(", ")}.`); + } + if (this.variadic) { + return this._concatValue(arg, previous); + } + return arg; + }; + return this; + } + /** + * Return option name. + * + * @return {string} + */ + name() { + if (this.long) { + return this.long.replace(/^--/, ""); + } + return this.short.replace(/^-/, ""); + } + /** + * Return option name, in a camelcase format that can be used + * as a object attribute key. + * + * @return {string} + * @api private + */ + attributeName() { + return camelcase(this.name().replace(/^no-/, "")); + } + /** + * Check if `arg` matches the short or long flag. + * + * @param {string} arg + * @return {boolean} + * @api private + */ + is(arg) { + return this.short === arg || this.long === arg; + } + /** + * Return whether a boolean option. + * + * Options are one of boolean, negated, required argument, or optional argument. + * + * @return {boolean} + * @api private + */ + isBoolean() { + return !this.required && !this.optional && !this.negate; + } + }; + var DualOptions = class { + /** + * @param {Option[]} options + */ + constructor(options2) { + this.positiveOptions = /* @__PURE__ */ new Map(); + this.negativeOptions = /* @__PURE__ */ new Map(); + this.dualOptions = /* @__PURE__ */ new Set(); + options2.forEach((option) => { + if (option.negate) { + this.negativeOptions.set(option.attributeName(), option); + } else { + this.positiveOptions.set(option.attributeName(), option); + } + }); + this.negativeOptions.forEach((value, key) => { + if (this.positiveOptions.has(key)) { + this.dualOptions.add(key); + } + }); + } + /** + * Did the value come from the option, and not from possible matching dual option? + * + * @param {*} value + * @param {Option} option + * @returns {boolean} + */ + valueFromOption(value, option) { + const optionKey = option.attributeName(); + if (!this.dualOptions.has(optionKey)) + return true; + const preset = this.negativeOptions.get(optionKey).presetArg; + const negativeValue = preset !== void 0 ? preset : false; + return option.negate === (negativeValue === value); + } + }; + function camelcase(str) { + return str.split("-").reduce((str2, word) => { + return str2 + word[0].toUpperCase() + word.slice(1); + }); + } + function splitOptionFlags(flags2) { + let shortFlag; + let longFlag; + const flagParts = flags2.split(/[ |,]+/); + if (flagParts.length > 1 && !/^[[<]/.test(flagParts[1])) + shortFlag = flagParts.shift(); + longFlag = flagParts.shift(); + if (!shortFlag && /^-[^-]$/.test(longFlag)) { + shortFlag = longFlag; + longFlag = void 0; + } + return { shortFlag, longFlag }; + } + exports2.Option = Option2; + exports2.splitOptionFlags = splitOptionFlags; + exports2.DualOptions = DualOptions; + } +}); -`,` +// ../node_modules/.pnpm/commander@11.1.0/node_modules/commander/lib/suggestSimilar.js +var require_suggestSimilar = __commonJS({ + "../node_modules/.pnpm/commander@11.1.0/node_modules/commander/lib/suggestSimilar.js"(exports2) { + var maxDistance = 3; + function editDistance(a, b) { + if (Math.abs(a.length - b.length) > maxDistance) + return Math.max(a.length, b.length); + const d = []; + for (let i = 0; i <= a.length; i++) { + d[i] = [i]; + } + for (let j = 0; j <= b.length; j++) { + d[0][j] = j; + } + for (let j = 1; j <= b.length; j++) { + for (let i = 1; i <= a.length; i++) { + let cost = 1; + if (a[i - 1] === b[j - 1]) { + cost = 0; + } else { + cost = 1; + } + d[i][j] = Math.min( + d[i - 1][j] + 1, + // deletion + d[i][j - 1] + 1, + // insertion + d[i - 1][j - 1] + cost + // substitution + ); + if (i > 1 && j > 1 && a[i - 1] === b[j - 2] && a[i - 2] === b[j - 1]) { + d[i][j] = Math.min(d[i][j], d[i - 2][j - 2] + 1); + } + } + } + return d[a.length][b.length]; + } + function suggestSimilar(word, candidates) { + if (!candidates || candidates.length === 0) + return ""; + candidates = Array.from(new Set(candidates)); + const searchingOptions = word.startsWith("--"); + if (searchingOptions) { + word = word.slice(2); + candidates = candidates.map((candidate) => candidate.slice(2)); + } + let similar = []; + let bestDistance = maxDistance; + const minSimilarity = 0.4; + candidates.forEach((candidate) => { + if (candidate.length <= 1) + return; + const distance = editDistance(word, candidate); + const length = Math.max(word.length, candidate.length); + const similarity = (length - distance) / length; + if (similarity > minSimilarity) { + if (distance < bestDistance) { + bestDistance = distance; + similar = [candidate]; + } else if (distance === bestDistance) { + similar.push(candidate); + } + } + }); + similar.sort((a, b) => a.localeCompare(b)); + if (searchingOptions) { + similar = similar.map((candidate) => `--${candidate}`); + } + if (similar.length > 1) { + return ` +(Did you mean one of ${similar.join(", ")}?)`; + } + if (similar.length === 1) { + return ` +(Did you mean ${similar[0]}?)`; + } + return ""; + } + exports2.suggestSimilar = suggestSimilar; + } +}); +// ../node_modules/.pnpm/commander@11.1.0/node_modules/commander/lib/command.js +var require_command = __commonJS({ + "../node_modules/.pnpm/commander@11.1.0/node_modules/commander/lib/command.js"(exports2) { + var EventEmitter4 = require("events").EventEmitter; + var childProcess = require("child_process"); + var path30 = require("path"); + var fs6 = require("fs"); + var process3 = require("process"); + var { Argument: Argument2, humanReadableArgName } = require_argument(); + var { CommanderError: CommanderError2 } = require_error(); + var { Help: Help2 } = require_help(); + var { Option: Option2, splitOptionFlags, DualOptions } = require_option(); + var { suggestSimilar } = require_suggestSimilar(); + var Command2 = class _Command extends EventEmitter4 { + /** + * Initialize a new `Command`. + * + * @param {string} [name] + */ + constructor(name) { + super(); + this.commands = []; + this.options = []; + this.parent = null; + this._allowUnknownOption = false; + this._allowExcessArguments = true; + this.registeredArguments = []; + this._args = this.registeredArguments; + this.args = []; + this.rawArgs = []; + this.processedArgs = []; + this._scriptPath = null; + this._name = name || ""; + this._optionValues = {}; + this._optionValueSources = {}; + this._storeOptionsAsProperties = false; + this._actionHandler = null; + this._executableHandler = false; + this._executableFile = null; + this._executableDir = null; + this._defaultCommandName = null; + this._exitCallback = null; + this._aliases = []; + this._combineFlagAndOptionalValue = true; + this._description = ""; + this._summary = ""; + this._argsDescription = void 0; + this._enablePositionalOptions = false; + this._passThroughOptions = false; + this._lifeCycleHooks = {}; + this._showHelpAfterError = false; + this._showSuggestionAfterError = true; + this._outputConfiguration = { + writeOut: (str) => process3.stdout.write(str), + writeErr: (str) => process3.stderr.write(str), + getOutHelpWidth: () => process3.stdout.isTTY ? process3.stdout.columns : void 0, + getErrHelpWidth: () => process3.stderr.isTTY ? process3.stderr.columns : void 0, + outputError: (str, write) => write(str) + }; + this._hidden = false; + this._hasHelpOption = true; + this._helpFlags = "-h, --help"; + this._helpDescription = "display help for command"; + this._helpShortFlag = "-h"; + this._helpLongFlag = "--help"; + this._addImplicitHelpCommand = void 0; + this._helpCommandName = "help"; + this._helpCommandnameAndArgs = "help [command]"; + this._helpCommandDescription = "display help for command"; + this._helpConfiguration = {}; + } + /** + * Copy settings that are useful to have in common across root command and subcommands. + * + * (Used internally when adding a command using `.command()` so subcommands inherit parent settings.) + * + * @param {Command} sourceCommand + * @return {Command} `this` command for chaining + */ + copyInheritedSettings(sourceCommand) { + this._outputConfiguration = sourceCommand._outputConfiguration; + this._hasHelpOption = sourceCommand._hasHelpOption; + this._helpFlags = sourceCommand._helpFlags; + this._helpDescription = sourceCommand._helpDescription; + this._helpShortFlag = sourceCommand._helpShortFlag; + this._helpLongFlag = sourceCommand._helpLongFlag; + this._helpCommandName = sourceCommand._helpCommandName; + this._helpCommandnameAndArgs = sourceCommand._helpCommandnameAndArgs; + this._helpCommandDescription = sourceCommand._helpCommandDescription; + this._helpConfiguration = sourceCommand._helpConfiguration; + this._exitCallback = sourceCommand._exitCallback; + this._storeOptionsAsProperties = sourceCommand._storeOptionsAsProperties; + this._combineFlagAndOptionalValue = sourceCommand._combineFlagAndOptionalValue; + this._allowExcessArguments = sourceCommand._allowExcessArguments; + this._enablePositionalOptions = sourceCommand._enablePositionalOptions; + this._showHelpAfterError = sourceCommand._showHelpAfterError; + this._showSuggestionAfterError = sourceCommand._showSuggestionAfterError; + return this; + } + /** + * @returns {Command[]} + * @api private + */ + _getCommandAndAncestors() { + const result = []; + for (let command = this; command; command = command.parent) { + result.push(command); + } + return result; + } + /** + * Define a command. + * + * There are two styles of command: pay attention to where to put the description. + * + * @example + * // Command implemented using action handler (description is supplied separately to `.command`) + * program + * .command('clone [destination]') + * .description('clone a repository into a newly created directory') + * .action((source, destination) => { + * console.log('clone command called'); + * }); + * + * // Command implemented using separate executable file (description is second parameter to `.command`) + * program + * .command('start ', 'start named service') + * .command('stop [service]', 'stop named service, or all if no name supplied'); + * + * @param {string} nameAndArgs - command name and arguments, args are `` or `[optional]` and last may also be `variadic...` + * @param {Object|string} [actionOptsOrExecDesc] - configuration options (for action), or description (for executable) + * @param {Object} [execOpts] - configuration options (for executable) + * @return {Command} returns new command for action handler, or `this` for executable command + */ + command(nameAndArgs, actionOptsOrExecDesc, execOpts) { + let desc = actionOptsOrExecDesc; + let opts = execOpts; + if (typeof desc === "object" && desc !== null) { + opts = desc; + desc = null; + } + opts = opts || {}; + const [, name, args3] = nameAndArgs.match(/([^ ]+) *(.*)/); + const cmd = this.createCommand(name); + if (desc) { + cmd.description(desc); + cmd._executableHandler = true; + } + if (opts.isDefault) + this._defaultCommandName = cmd._name; + cmd._hidden = !!(opts.noHelp || opts.hidden); + cmd._executableFile = opts.executableFile || null; + if (args3) + cmd.arguments(args3); + this.commands.push(cmd); + cmd.parent = this; + cmd.copyInheritedSettings(this); + if (desc) + return this; + return cmd; + } + /** + * Factory routine to create a new unattached command. + * + * See .command() for creating an attached subcommand, which uses this routine to + * create the command. You can override createCommand to customise subcommands. + * + * @param {string} [name] + * @return {Command} new command + */ + createCommand(name) { + return new _Command(name); + } + /** + * You can customise the help with a subclass of Help by overriding createHelp, + * or by overriding Help properties using configureHelp(). + * + * @return {Help} + */ + createHelp() { + return Object.assign(new Help2(), this.configureHelp()); + } + /** + * You can customise the help by overriding Help properties using configureHelp(), + * or with a subclass of Help by overriding createHelp(). + * + * @param {Object} [configuration] - configuration options + * @return {Command|Object} `this` command for chaining, or stored configuration + */ + configureHelp(configuration2) { + if (configuration2 === void 0) + return this._helpConfiguration; + this._helpConfiguration = configuration2; + return this; + } + /** + * The default output goes to stdout and stderr. You can customise this for special + * applications. You can also customise the display of errors by overriding outputError. + * + * The configuration properties are all functions: + * + * // functions to change where being written, stdout and stderr + * writeOut(str) + * writeErr(str) + * // matching functions to specify width for wrapping help + * getOutHelpWidth() + * getErrHelpWidth() + * // functions based on what is being written out + * outputError(str, write) // used for displaying errors, and not used for displaying help + * + * @param {Object} [configuration] - configuration options + * @return {Command|Object} `this` command for chaining, or stored configuration + */ + configureOutput(configuration2) { + if (configuration2 === void 0) + return this._outputConfiguration; + Object.assign(this._outputConfiguration, configuration2); + return this; + } + /** + * Display the help or a custom message after an error occurs. + * + * @param {boolean|string} [displayHelp] + * @return {Command} `this` command for chaining + */ + showHelpAfterError(displayHelp = true) { + if (typeof displayHelp !== "string") + displayHelp = !!displayHelp; + this._showHelpAfterError = displayHelp; + return this; + } + /** + * Display suggestion of similar commands for unknown commands, or options for unknown options. + * + * @param {boolean} [displaySuggestion] + * @return {Command} `this` command for chaining + */ + showSuggestionAfterError(displaySuggestion = true) { + this._showSuggestionAfterError = !!displaySuggestion; + return this; + } + /** + * Add a prepared subcommand. + * + * See .command() for creating an attached subcommand which inherits settings from its parent. + * + * @param {Command} cmd - new subcommand + * @param {Object} [opts] - configuration options + * @return {Command} `this` command for chaining + */ + addCommand(cmd, opts) { + if (!cmd._name) { + throw new Error(`Command passed to .addCommand() must have a name +- specify the name in Command constructor or using .name()`); + } + opts = opts || {}; + if (opts.isDefault) + this._defaultCommandName = cmd._name; + if (opts.noHelp || opts.hidden) + cmd._hidden = true; + this.commands.push(cmd); + cmd.parent = this; + return this; + } + /** + * Factory routine to create a new unattached argument. + * + * See .argument() for creating an attached argument, which uses this routine to + * create the argument. You can override createArgument to return a custom argument. + * + * @param {string} name + * @param {string} [description] + * @return {Argument} new argument + */ + createArgument(name, description) { + return new Argument2(name, description); + } + /** + * Define argument syntax for command. + * + * The default is that the argument is required, and you can explicitly + * indicate this with <> around the name. Put [] around the name for an optional argument. + * + * @example + * program.argument(''); + * program.argument('[output-file]'); + * + * @param {string} name + * @param {string} [description] + * @param {Function|*} [fn] - custom argument processing function + * @param {*} [defaultValue] + * @return {Command} `this` command for chaining + */ + argument(name, description, fn, defaultValue) { + const argument = this.createArgument(name, description); + if (typeof fn === "function") { + argument.default(defaultValue).argParser(fn); + } else { + argument.default(fn); + } + this.addArgument(argument); + return this; + } + /** + * Define argument syntax for command, adding multiple at once (without descriptions). + * + * See also .argument(). + * + * @example + * program.arguments(' [env]'); + * + * @param {string} names + * @return {Command} `this` command for chaining + */ + arguments(names) { + names.trim().split(/ +/).forEach((detail) => { + this.argument(detail); + }); + return this; + } + /** + * Define argument syntax for command, adding a prepared argument. + * + * @param {Argument} argument + * @return {Command} `this` command for chaining + */ + addArgument(argument) { + const previousArgument = this.registeredArguments.slice(-1)[0]; + if (previousArgument && previousArgument.variadic) { + throw new Error(`only the last argument can be variadic '${previousArgument.name()}'`); + } + if (argument.required && argument.defaultValue !== void 0 && argument.parseArg === void 0) { + throw new Error(`a default value for a required argument is never used: '${argument.name()}'`); + } + this.registeredArguments.push(argument); + return this; + } + /** + * Override default decision whether to add implicit help command. + * + * addHelpCommand() // force on + * addHelpCommand(false); // force off + * addHelpCommand('help [cmd]', 'display help for [cmd]'); // force on with custom details + * + * @return {Command} `this` command for chaining + */ + addHelpCommand(enableOrNameAndArgs, description) { + if (enableOrNameAndArgs === false) { + this._addImplicitHelpCommand = false; + } else { + this._addImplicitHelpCommand = true; + if (typeof enableOrNameAndArgs === "string") { + this._helpCommandName = enableOrNameAndArgs.split(" ")[0]; + this._helpCommandnameAndArgs = enableOrNameAndArgs; + } + this._helpCommandDescription = description || this._helpCommandDescription; + } + return this; + } + /** + * @return {boolean} + * @api private + */ + _hasImplicitHelpCommand() { + if (this._addImplicitHelpCommand === void 0) { + return this.commands.length && !this._actionHandler && !this._findCommand("help"); + } + return this._addImplicitHelpCommand; + } + /** + * Add hook for life cycle event. + * + * @param {string} event + * @param {Function} listener + * @return {Command} `this` command for chaining + */ + hook(event, listener) { + const allowedValues = ["preSubcommand", "preAction", "postAction"]; + if (!allowedValues.includes(event)) { + throw new Error(`Unexpected value for event passed to hook : '${event}'. +Expecting one of '${allowedValues.join("', '")}'`); + } + if (this._lifeCycleHooks[event]) { + this._lifeCycleHooks[event].push(listener); + } else { + this._lifeCycleHooks[event] = [listener]; + } + return this; + } + /** + * Register callback to use as replacement for calling process.exit. + * + * @param {Function} [fn] optional callback which will be passed a CommanderError, defaults to throwing + * @return {Command} `this` command for chaining + */ + exitOverride(fn) { + if (fn) { + this._exitCallback = fn; + } else { + this._exitCallback = (err2) => { + if (err2.code !== "commander.executeSubCommandAsync") { + throw err2; + } else { + } + }; + } + return this; + } + /** + * Call process.exit, and _exitCallback if defined. + * + * @param {number} exitCode exit code for using with process.exit + * @param {string} code an id string representing the error + * @param {string} message human-readable description of the error + * @return never + * @api private + */ + _exit(exitCode, code, message) { + if (this._exitCallback) { + this._exitCallback(new CommanderError2(exitCode, code, message)); + } + process3.exit(exitCode); + } + /** + * Register callback `fn` for the command. + * + * @example + * program + * .command('serve') + * .description('start service') + * .action(function() { + * // do work here + * }); + * + * @param {Function} fn + * @return {Command} `this` command for chaining + */ + action(fn) { + const listener = (args3) => { + const expectedArgsCount = this.registeredArguments.length; + const actionArgs = args3.slice(0, expectedArgsCount); + if (this._storeOptionsAsProperties) { + actionArgs[expectedArgsCount] = this; + } else { + actionArgs[expectedArgsCount] = this.opts(); + } + actionArgs.push(this); + return fn.apply(this, actionArgs); + }; + this._actionHandler = listener; + return this; + } + /** + * Factory routine to create a new unattached option. + * + * See .option() for creating an attached option, which uses this routine to + * create the option. You can override createOption to return a custom option. + * + * @param {string} flags + * @param {string} [description] + * @return {Option} new option + */ + createOption(flags2, description) { + return new Option2(flags2, description); + } + /** + * Wrap parseArgs to catch 'commander.invalidArgument'. + * + * @param {Option | Argument} target + * @param {string} value + * @param {*} previous + * @param {string} invalidArgumentMessage + * @api private + */ + _callParseArg(target, value, previous, invalidArgumentMessage) { + try { + return target.parseArg(value, previous); + } catch (err2) { + if (err2.code === "commander.invalidArgument") { + const message = `${invalidArgumentMessage} ${err2.message}`; + this.error(message, { exitCode: err2.exitCode, code: err2.code }); + } + throw err2; + } + } + /** + * Add an option. + * + * @param {Option} option + * @return {Command} `this` command for chaining + */ + addOption(option) { + const oname = option.name(); + const name = option.attributeName(); + if (option.negate) { + const positiveLongFlag = option.long.replace(/^--no-/, "--"); + if (!this._findOption(positiveLongFlag)) { + this.setOptionValueWithSource(name, option.defaultValue === void 0 ? true : option.defaultValue, "default"); + } + } else if (option.defaultValue !== void 0) { + this.setOptionValueWithSource(name, option.defaultValue, "default"); + } + this.options.push(option); + const handleOptionValue = (val, invalidValueMessage, valueSource) => { + if (val == null && option.presetArg !== void 0) { + val = option.presetArg; + } + const oldValue = this.getOptionValue(name); + if (val !== null && option.parseArg) { + val = this._callParseArg(option, val, oldValue, invalidValueMessage); + } else if (val !== null && option.variadic) { + val = option._concatValue(val, oldValue); + } + if (val == null) { + if (option.negate) { + val = false; + } else if (option.isBoolean() || option.optional) { + val = true; + } else { + val = ""; + } + } + this.setOptionValueWithSource(name, val, valueSource); + }; + this.on("option:" + oname, (val) => { + const invalidValueMessage = `error: option '${option.flags}' argument '${val}' is invalid.`; + handleOptionValue(val, invalidValueMessage, "cli"); + }); + if (option.envVar) { + this.on("optionEnv:" + oname, (val) => { + const invalidValueMessage = `error: option '${option.flags}' value '${val}' from env '${option.envVar}' is invalid.`; + handleOptionValue(val, invalidValueMessage, "env"); + }); + } + return this; + } + /** + * Internal implementation shared by .option() and .requiredOption() + * + * @api private + */ + _optionEx(config, flags2, description, fn, defaultValue) { + if (typeof flags2 === "object" && flags2 instanceof Option2) { + throw new Error("To add an Option object use addOption() instead of option() or requiredOption()"); + } + const option = this.createOption(flags2, description); + option.makeOptionMandatory(!!config.mandatory); + if (typeof fn === "function") { + option.default(defaultValue).argParser(fn); + } else if (fn instanceof RegExp) { + const regex = fn; + fn = (val, def) => { + const m = regex.exec(val); + return m ? m[0] : def; + }; + option.default(defaultValue).argParser(fn); + } else { + option.default(fn); + } + return this.addOption(option); + } + /** + * Define option with `flags`, `description`, and optional argument parsing function or `defaultValue` or both. + * + * The `flags` string contains the short and/or long flags, separated by comma, a pipe or space. A required + * option-argument is indicated by `<>` and an optional option-argument by `[]`. + * + * See the README for more details, and see also addOption() and requiredOption(). + * + * @example + * program + * .option('-p, --pepper', 'add pepper') + * .option('-p, --pizza-type ', 'type of pizza') // required option-argument + * .option('-c, --cheese [CHEESE]', 'add extra cheese', 'mozzarella') // optional option-argument with default + * .option('-t, --tip ', 'add tip to purchase cost', parseFloat) // custom parse function + * + * @param {string} flags + * @param {string} [description] + * @param {Function|*} [parseArg] - custom option processing function or default value + * @param {*} [defaultValue] + * @return {Command} `this` command for chaining + */ + option(flags2, description, parseArg, defaultValue) { + return this._optionEx({}, flags2, description, parseArg, defaultValue); + } + /** + * Add a required option which must have a value after parsing. This usually means + * the option must be specified on the command line. (Otherwise the same as .option().) + * + * The `flags` string contains the short and/or long flags, separated by comma, a pipe or space. + * + * @param {string} flags + * @param {string} [description] + * @param {Function|*} [parseArg] - custom option processing function or default value + * @param {*} [defaultValue] + * @return {Command} `this` command for chaining + */ + requiredOption(flags2, description, parseArg, defaultValue) { + return this._optionEx({ mandatory: true }, flags2, description, parseArg, defaultValue); + } + /** + * Alter parsing of short flags with optional values. + * + * @example + * // for `.option('-f,--flag [value]'): + * program.combineFlagAndOptionalValue(true); // `-f80` is treated like `--flag=80`, this is the default behaviour + * program.combineFlagAndOptionalValue(false) // `-fb` is treated like `-f -b` + * + * @param {Boolean} [combine=true] - if `true` or omitted, an optional value can be specified directly after the flag. + */ + combineFlagAndOptionalValue(combine = true) { + this._combineFlagAndOptionalValue = !!combine; + return this; + } + /** + * Allow unknown options on the command line. + * + * @param {Boolean} [allowUnknown=true] - if `true` or omitted, no error will be thrown + * for unknown options. + */ + allowUnknownOption(allowUnknown = true) { + this._allowUnknownOption = !!allowUnknown; + return this; + } + /** + * Allow excess command-arguments on the command line. Pass false to make excess arguments an error. + * + * @param {Boolean} [allowExcess=true] - if `true` or omitted, no error will be thrown + * for excess arguments. + */ + allowExcessArguments(allowExcess = true) { + this._allowExcessArguments = !!allowExcess; + return this; + } + /** + * Enable positional options. Positional means global options are specified before subcommands which lets + * subcommands reuse the same option names, and also enables subcommands to turn on passThroughOptions. + * The default behaviour is non-positional and global options may appear anywhere on the command line. + * + * @param {Boolean} [positional=true] + */ + enablePositionalOptions(positional = true) { + this._enablePositionalOptions = !!positional; + return this; + } + /** + * Pass through options that come after command-arguments rather than treat them as command-options, + * so actual command-options come before command-arguments. Turning this on for a subcommand requires + * positional options to have been enabled on the program (parent commands). + * The default behaviour is non-positional and options may appear before or after command-arguments. + * + * @param {Boolean} [passThrough=true] + * for unknown options. + */ + passThroughOptions(passThrough = true) { + this._passThroughOptions = !!passThrough; + if (!!this.parent && passThrough && !this.parent._enablePositionalOptions) { + throw new Error("passThroughOptions can not be used without turning on enablePositionalOptions for parent command(s)"); + } + return this; + } + /** + * Whether to store option values as properties on command object, + * or store separately (specify false). In both cases the option values can be accessed using .opts(). + * + * @param {boolean} [storeAsProperties=true] + * @return {Command} `this` command for chaining + */ + storeOptionsAsProperties(storeAsProperties = true) { + if (this.options.length) { + throw new Error("call .storeOptionsAsProperties() before adding options"); + } + this._storeOptionsAsProperties = !!storeAsProperties; + return this; + } + /** + * Retrieve option value. + * + * @param {string} key + * @return {Object} value + */ + getOptionValue(key) { + if (this._storeOptionsAsProperties) { + return this[key]; + } + return this._optionValues[key]; + } + /** + * Store option value. + * + * @param {string} key + * @param {Object} value + * @return {Command} `this` command for chaining + */ + setOptionValue(key, value) { + return this.setOptionValueWithSource(key, value, void 0); + } + /** + * Store option value and where the value came from. + * + * @param {string} key + * @param {Object} value + * @param {string} source - expected values are default/config/env/cli/implied + * @return {Command} `this` command for chaining + */ + setOptionValueWithSource(key, value, source2) { + if (this._storeOptionsAsProperties) { + this[key] = value; + } else { + this._optionValues[key] = value; + } + this._optionValueSources[key] = source2; + return this; + } + /** + * Get source of option value. + * Expected values are default | config | env | cli | implied + * + * @param {string} key + * @return {string} + */ + getOptionValueSource(key) { + return this._optionValueSources[key]; + } + /** + * Get source of option value. See also .optsWithGlobals(). + * Expected values are default | config | env | cli | implied + * + * @param {string} key + * @return {string} + */ + getOptionValueSourceWithGlobals(key) { + let source2; + this._getCommandAndAncestors().forEach((cmd) => { + if (cmd.getOptionValueSource(key) !== void 0) { + source2 = cmd.getOptionValueSource(key); + } + }); + return source2; + } + /** + * Get user arguments from implied or explicit arguments. + * Side-effects: set _scriptPath if args included script. Used for default program name, and subcommand searches. + * + * @api private + */ + _prepareUserArgs(argv, parseOptions) { + if (argv !== void 0 && !Array.isArray(argv)) { + throw new Error("first parameter to parse must be array or undefined"); + } + parseOptions = parseOptions || {}; + if (argv === void 0) { + argv = process3.argv; + if (process3.versions && process3.versions.electron) { + parseOptions.from = "electron"; + } + } + this.rawArgs = argv.slice(); + let userArgs; + switch (parseOptions.from) { + case void 0: + case "node": + this._scriptPath = argv[1]; + userArgs = argv.slice(2); + break; + case "electron": + if (process3.defaultApp) { + this._scriptPath = argv[1]; + userArgs = argv.slice(2); + } else { + userArgs = argv.slice(1); + } + break; + case "user": + userArgs = argv.slice(0); + break; + default: + throw new Error(`unexpected parse option { from: '${parseOptions.from}' }`); + } + if (!this._name && this._scriptPath) + this.nameFromFilename(this._scriptPath); + this._name = this._name || "program"; + return userArgs; + } + /** + * Parse `argv`, setting options and invoking commands when defined. + * + * The default expectation is that the arguments are from node and have the application as argv[0] + * and the script being run in argv[1], with user parameters after that. + * + * @example + * program.parse(process.argv); + * program.parse(); // implicitly use process.argv and auto-detect node vs electron conventions + * program.parse(my-args, { from: 'user' }); // just user supplied arguments, nothing special about argv[0] + * + * @param {string[]} [argv] - optional, defaults to process.argv + * @param {Object} [parseOptions] - optionally specify style of options with from: node/user/electron + * @param {string} [parseOptions.from] - where the args are from: 'node', 'user', 'electron' + * @return {Command} `this` command for chaining + */ + parse(argv, parseOptions) { + const userArgs = this._prepareUserArgs(argv, parseOptions); + this._parseCommand([], userArgs); + return this; + } + /** + * Parse `argv`, setting options and invoking commands when defined. + * + * Use parseAsync instead of parse if any of your action handlers are async. Returns a Promise. + * + * The default expectation is that the arguments are from node and have the application as argv[0] + * and the script being run in argv[1], with user parameters after that. + * + * @example + * await program.parseAsync(process.argv); + * await program.parseAsync(); // implicitly use process.argv and auto-detect node vs electron conventions + * await program.parseAsync(my-args, { from: 'user' }); // just user supplied arguments, nothing special about argv[0] + * + * @param {string[]} [argv] + * @param {Object} [parseOptions] + * @param {string} parseOptions.from - where the args are from: 'node', 'user', 'electron' + * @return {Promise} + */ + async parseAsync(argv, parseOptions) { + const userArgs = this._prepareUserArgs(argv, parseOptions); + await this._parseCommand([], userArgs); + return this; + } + /** + * Execute a sub-command executable. + * + * @api private + */ + _executeSubCommand(subcommand, args3) { + args3 = args3.slice(); + let launchWithNode = false; + const sourceExt = [".js", ".ts", ".tsx", ".mjs", ".cjs"]; + function findFile(baseDir, baseName) { + const localBin = path30.resolve(baseDir, baseName); + if (fs6.existsSync(localBin)) + return localBin; + if (sourceExt.includes(path30.extname(baseName))) + return void 0; + const foundExt = sourceExt.find((ext2) => fs6.existsSync(`${localBin}${ext2}`)); + if (foundExt) + return `${localBin}${foundExt}`; + return void 0; + } + this._checkForMissingMandatoryOptions(); + this._checkForConflictingOptions(); + let executableFile = subcommand._executableFile || `${this._name}-${subcommand._name}`; + let executableDir = this._executableDir || ""; + if (this._scriptPath) { + let resolvedScriptPath; + try { + resolvedScriptPath = fs6.realpathSync(this._scriptPath); + } catch (err2) { + resolvedScriptPath = this._scriptPath; + } + executableDir = path30.resolve(path30.dirname(resolvedScriptPath), executableDir); + } + if (executableDir) { + let localFile = findFile(executableDir, executableFile); + if (!localFile && !subcommand._executableFile && this._scriptPath) { + const legacyName = path30.basename(this._scriptPath, path30.extname(this._scriptPath)); + if (legacyName !== this._name) { + localFile = findFile(executableDir, `${legacyName}-${subcommand._name}`); + } + } + executableFile = localFile || executableFile; + } + launchWithNode = sourceExt.includes(path30.extname(executableFile)); + let proc2; + if (process3.platform !== "win32") { + if (launchWithNode) { + args3.unshift(executableFile); + args3 = incrementNodeInspectorPort(process3.execArgv).concat(args3); + proc2 = childProcess.spawn(process3.argv[0], args3, { stdio: "inherit" }); + } else { + proc2 = childProcess.spawn(executableFile, args3, { stdio: "inherit" }); + } + } else { + args3.unshift(executableFile); + args3 = incrementNodeInspectorPort(process3.execArgv).concat(args3); + proc2 = childProcess.spawn(process3.execPath, args3, { stdio: "inherit" }); + } + if (!proc2.killed) { + const signals = ["SIGUSR1", "SIGUSR2", "SIGTERM", "SIGINT", "SIGHUP"]; + signals.forEach((signal) => { + process3.on(signal, () => { + if (proc2.killed === false && proc2.exitCode === null) { + proc2.kill(signal); + } + }); + }); + } + const exitCallback = this._exitCallback; + if (!exitCallback) { + proc2.on("close", process3.exit.bind(process3)); + } else { + proc2.on("close", () => { + exitCallback(new CommanderError2(process3.exitCode || 0, "commander.executeSubCommandAsync", "(close)")); + }); + } + proc2.on("error", (err2) => { + if (err2.code === "ENOENT") { + const executableDirMessage = executableDir ? `searched for local subcommand relative to directory '${executableDir}'` : "no directory for search for local subcommand, use .executableDir() to supply a custom directory"; + const executableMissing = `'${executableFile}' does not exist + - if '${subcommand._name}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead + - if the default executable name is not suitable, use the executableFile option to supply a custom name or path + - ${executableDirMessage}`; + throw new Error(executableMissing); + } else if (err2.code === "EACCES") { + throw new Error(`'${executableFile}' not executable`); + } + if (!exitCallback) { + process3.exit(1); + } else { + const wrappedError = new CommanderError2(1, "commander.executeSubCommandAsync", "(error)"); + wrappedError.nestedError = err2; + exitCallback(wrappedError); + } + }); + this.runningCommand = proc2; + } + /** + * @api private + */ + _dispatchSubcommand(commandName, operands2, unknown) { + const subCommand = this._findCommand(commandName); + if (!subCommand) + this.help({ error: true }); + let promiseChain; + promiseChain = this._chainOrCallSubCommandHook(promiseChain, subCommand, "preSubcommand"); + promiseChain = this._chainOrCall(promiseChain, () => { + if (subCommand._executableHandler) { + this._executeSubCommand(subCommand, operands2.concat(unknown)); + } else { + return subCommand._parseCommand(operands2, unknown); + } + }); + return promiseChain; + } + /** + * Invoke help directly if possible, or dispatch if necessary. + * e.g. help foo + * + * @api private + */ + _dispatchHelpCommand(subcommandName) { + if (!subcommandName) { + this.help(); + } + const subCommand = this._findCommand(subcommandName); + if (subCommand && !subCommand._executableHandler) { + subCommand.help(); + } + return this._dispatchSubcommand(subcommandName, [], [ + this._helpLongFlag || this._helpShortFlag + ]); + } + /** + * Check this.args against expected this.registeredArguments. + * + * @api private + */ + _checkNumberOfArguments() { + this.registeredArguments.forEach((arg, i) => { + if (arg.required && this.args[i] == null) { + this.missingArgument(arg.name()); + } + }); + if (this.registeredArguments.length > 0 && this.registeredArguments[this.registeredArguments.length - 1].variadic) { + return; + } + if (this.args.length > this.registeredArguments.length) { + this._excessArguments(this.args); + } + } + /** + * Process this.args using this.registeredArguments and save as this.processedArgs! + * + * @api private + */ + _processArguments() { + const myParseArg = (argument, value, previous) => { + let parsedValue = value; + if (value !== null && argument.parseArg) { + const invalidValueMessage = `error: command-argument value '${value}' is invalid for argument '${argument.name()}'.`; + parsedValue = this._callParseArg(argument, value, previous, invalidValueMessage); + } + return parsedValue; + }; + this._checkNumberOfArguments(); + const processedArgs = []; + this.registeredArguments.forEach((declaredArg, index) => { + let value = declaredArg.defaultValue; + if (declaredArg.variadic) { + if (index < this.args.length) { + value = this.args.slice(index); + if (declaredArg.parseArg) { + value = value.reduce((processed, v) => { + return myParseArg(declaredArg, v, processed); + }, declaredArg.defaultValue); + } + } else if (value === void 0) { + value = []; + } + } else if (index < this.args.length) { + value = this.args[index]; + if (declaredArg.parseArg) { + value = myParseArg(declaredArg, value, declaredArg.defaultValue); + } + } + processedArgs[index] = value; + }); + this.processedArgs = processedArgs; + } + /** + * Once we have a promise we chain, but call synchronously until then. + * + * @param {Promise|undefined} promise + * @param {Function} fn + * @return {Promise|undefined} + * @api private + */ + _chainOrCall(promise, fn) { + if (promise && promise.then && typeof promise.then === "function") { + return promise.then(() => fn()); + } + return fn(); + } + /** + * + * @param {Promise|undefined} promise + * @param {string} event + * @return {Promise|undefined} + * @api private + */ + _chainOrCallHooks(promise, event) { + let result = promise; + const hooks = []; + this._getCommandAndAncestors().reverse().filter((cmd) => cmd._lifeCycleHooks[event] !== void 0).forEach((hookedCommand) => { + hookedCommand._lifeCycleHooks[event].forEach((callback) => { + hooks.push({ hookedCommand, callback }); + }); + }); + if (event === "postAction") { + hooks.reverse(); + } + hooks.forEach((hookDetail) => { + result = this._chainOrCall(result, () => { + return hookDetail.callback(hookDetail.hookedCommand, this); + }); + }); + return result; + } + /** + * + * @param {Promise|undefined} promise + * @param {Command} subCommand + * @param {string} event + * @return {Promise|undefined} + * @api private + */ + _chainOrCallSubCommandHook(promise, subCommand, event) { + let result = promise; + if (this._lifeCycleHooks[event] !== void 0) { + this._lifeCycleHooks[event].forEach((hook) => { + result = this._chainOrCall(result, () => { + return hook(this, subCommand); + }); + }); + } + return result; + } + /** + * Process arguments in context of this command. + * Returns action result, in case it is a promise. + * + * @api private + */ + _parseCommand(operands2, unknown) { + const parsed = this.parseOptions(unknown); + this._parseOptionsEnv(); + this._parseOptionsImplied(); + operands2 = operands2.concat(parsed.operands); + unknown = parsed.unknown; + this.args = operands2.concat(unknown); + if (operands2 && this._findCommand(operands2[0])) { + return this._dispatchSubcommand(operands2[0], operands2.slice(1), unknown); + } + if (this._hasImplicitHelpCommand() && operands2[0] === this._helpCommandName) { + return this._dispatchHelpCommand(operands2[1]); + } + if (this._defaultCommandName) { + outputHelpIfRequested(this, unknown); + return this._dispatchSubcommand(this._defaultCommandName, operands2, unknown); + } + if (this.commands.length && this.args.length === 0 && !this._actionHandler && !this._defaultCommandName) { + this.help({ error: true }); + } + outputHelpIfRequested(this, parsed.unknown); + this._checkForMissingMandatoryOptions(); + this._checkForConflictingOptions(); + const checkForUnknownOptions = () => { + if (parsed.unknown.length > 0) { + this.unknownOption(parsed.unknown[0]); + } + }; + const commandEvent = `command:${this.name()}`; + if (this._actionHandler) { + checkForUnknownOptions(); + this._processArguments(); + let promiseChain; + promiseChain = this._chainOrCallHooks(promiseChain, "preAction"); + promiseChain = this._chainOrCall(promiseChain, () => this._actionHandler(this.processedArgs)); + if (this.parent) { + promiseChain = this._chainOrCall(promiseChain, () => { + this.parent.emit(commandEvent, operands2, unknown); + }); + } + promiseChain = this._chainOrCallHooks(promiseChain, "postAction"); + return promiseChain; + } + if (this.parent && this.parent.listenerCount(commandEvent)) { + checkForUnknownOptions(); + this._processArguments(); + this.parent.emit(commandEvent, operands2, unknown); + } else if (operands2.length) { + if (this._findCommand("*")) { + return this._dispatchSubcommand("*", operands2, unknown); + } + if (this.listenerCount("command:*")) { + this.emit("command:*", operands2, unknown); + } else if (this.commands.length) { + this.unknownCommand(); + } else { + checkForUnknownOptions(); + this._processArguments(); + } + } else if (this.commands.length) { + checkForUnknownOptions(); + this.help({ error: true }); + } else { + checkForUnknownOptions(); + this._processArguments(); + } + } + /** + * Find matching command. + * + * @api private + */ + _findCommand(name) { + if (!name) + return void 0; + return this.commands.find((cmd) => cmd._name === name || cmd._aliases.includes(name)); + } + /** + * Return an option matching `arg` if any. + * + * @param {string} arg + * @return {Option} + * @api private + */ + _findOption(arg) { + return this.options.find((option) => option.is(arg)); + } + /** + * Display an error message if a mandatory option does not have a value. + * Called after checking for help flags in leaf subcommand. + * + * @api private + */ + _checkForMissingMandatoryOptions() { + this._getCommandAndAncestors().forEach((cmd) => { + cmd.options.forEach((anOption) => { + if (anOption.mandatory && cmd.getOptionValue(anOption.attributeName()) === void 0) { + cmd.missingMandatoryOptionValue(anOption); + } + }); + }); + } + /** + * Display an error message if conflicting options are used together in this. + * + * @api private + */ + _checkForConflictingLocalOptions() { + const definedNonDefaultOptions = this.options.filter( + (option) => { + const optionKey = option.attributeName(); + if (this.getOptionValue(optionKey) === void 0) { + return false; + } + return this.getOptionValueSource(optionKey) !== "default"; + } + ); + const optionsWithConflicting = definedNonDefaultOptions.filter( + (option) => option.conflictsWith.length > 0 + ); + optionsWithConflicting.forEach((option) => { + const conflictingAndDefined = definedNonDefaultOptions.find( + (defined) => option.conflictsWith.includes(defined.attributeName()) + ); + if (conflictingAndDefined) { + this._conflictingOption(option, conflictingAndDefined); + } + }); + } + /** + * Display an error message if conflicting options are used together. + * Called after checking for help flags in leaf subcommand. + * + * @api private + */ + _checkForConflictingOptions() { + this._getCommandAndAncestors().forEach((cmd) => { + cmd._checkForConflictingLocalOptions(); + }); + } + /** + * Parse options from `argv` removing known options, + * and return argv split into operands and unknown arguments. + * + * Examples: + * + * argv => operands, unknown + * --known kkk op => [op], [] + * op --known kkk => [op], [] + * sub --unknown uuu op => [sub], [--unknown uuu op] + * sub -- --unknown uuu op => [sub --unknown uuu op], [] + * + * @param {String[]} argv + * @return {{operands: String[], unknown: String[]}} + */ + parseOptions(argv) { + const operands2 = []; + const unknown = []; + let dest = operands2; + const args3 = argv.slice(); + function maybeOption(arg) { + return arg.length > 1 && arg[0] === "-"; + } + let activeVariadicOption = null; + while (args3.length) { + const arg = args3.shift(); + if (arg === "--") { + if (dest === unknown) + dest.push(arg); + dest.push(...args3); + break; + } + if (activeVariadicOption && !maybeOption(arg)) { + this.emit(`option:${activeVariadicOption.name()}`, arg); + continue; + } + activeVariadicOption = null; + if (maybeOption(arg)) { + const option = this._findOption(arg); + if (option) { + if (option.required) { + const value = args3.shift(); + if (value === void 0) + this.optionMissingArgument(option); + this.emit(`option:${option.name()}`, value); + } else if (option.optional) { + let value = null; + if (args3.length > 0 && !maybeOption(args3[0])) { + value = args3.shift(); + } + this.emit(`option:${option.name()}`, value); + } else { + this.emit(`option:${option.name()}`); + } + activeVariadicOption = option.variadic ? option : null; + continue; + } + } + if (arg.length > 2 && arg[0] === "-" && arg[1] !== "-") { + const option = this._findOption(`-${arg[1]}`); + if (option) { + if (option.required || option.optional && this._combineFlagAndOptionalValue) { + this.emit(`option:${option.name()}`, arg.slice(2)); + } else { + this.emit(`option:${option.name()}`); + args3.unshift(`-${arg.slice(2)}`); + } + continue; + } + } + if (/^--[^=]+=/.test(arg)) { + const index = arg.indexOf("="); + const option = this._findOption(arg.slice(0, index)); + if (option && (option.required || option.optional)) { + this.emit(`option:${option.name()}`, arg.slice(index + 1)); + continue; + } + } + if (maybeOption(arg)) { + dest = unknown; + } + if ((this._enablePositionalOptions || this._passThroughOptions) && operands2.length === 0 && unknown.length === 0) { + if (this._findCommand(arg)) { + operands2.push(arg); + if (args3.length > 0) + unknown.push(...args3); + break; + } else if (arg === this._helpCommandName && this._hasImplicitHelpCommand()) { + operands2.push(arg); + if (args3.length > 0) + operands2.push(...args3); + break; + } else if (this._defaultCommandName) { + unknown.push(arg); + if (args3.length > 0) + unknown.push(...args3); + break; + } + } + if (this._passThroughOptions) { + dest.push(arg); + if (args3.length > 0) + dest.push(...args3); + break; + } + dest.push(arg); + } + return { operands: operands2, unknown }; + } + /** + * Return an object containing local option values as key-value pairs. + * + * @return {Object} + */ + opts() { + if (this._storeOptionsAsProperties) { + const result = {}; + const len = this.options.length; + for (let i = 0; i < len; i++) { + const key = this.options[i].attributeName(); + result[key] = key === this._versionOptionName ? this._version : this[key]; + } + return result; + } + return this._optionValues; + } + /** + * Return an object containing merged local and global option values as key-value pairs. + * + * @return {Object} + */ + optsWithGlobals() { + return this._getCommandAndAncestors().reduce( + (combinedOptions, cmd) => Object.assign(combinedOptions, cmd.opts()), + {} + ); + } + /** + * Display error message and exit (or call exitOverride). + * + * @param {string} message + * @param {Object} [errorOptions] + * @param {string} [errorOptions.code] - an id string representing the error + * @param {number} [errorOptions.exitCode] - used with process.exit + */ + error(message, errorOptions) { + this._outputConfiguration.outputError(`${message} +`, this._outputConfiguration.writeErr); + if (typeof this._showHelpAfterError === "string") { + this._outputConfiguration.writeErr(`${this._showHelpAfterError} +`); + } else if (this._showHelpAfterError) { + this._outputConfiguration.writeErr("\n"); + this.outputHelp({ error: true }); + } + const config = errorOptions || {}; + const exitCode = config.exitCode || 1; + const code = config.code || "commander.error"; + this._exit(exitCode, code, message); + } + /** + * Apply any option related environment variables, if option does + * not have a value from cli or client code. + * + * @api private + */ + _parseOptionsEnv() { + this.options.forEach((option) => { + if (option.envVar && option.envVar in process3.env) { + const optionKey = option.attributeName(); + if (this.getOptionValue(optionKey) === void 0 || ["default", "config", "env"].includes(this.getOptionValueSource(optionKey))) { + if (option.required || option.optional) { + this.emit(`optionEnv:${option.name()}`, process3.env[option.envVar]); + } else { + this.emit(`optionEnv:${option.name()}`); + } + } + } + }); + } + /** + * Apply any implied option values, if option is undefined or default value. + * + * @api private + */ + _parseOptionsImplied() { + const dualHelper = new DualOptions(this.options); + const hasCustomOptionValue = (optionKey) => { + return this.getOptionValue(optionKey) !== void 0 && !["default", "implied"].includes(this.getOptionValueSource(optionKey)); + }; + this.options.filter((option) => option.implied !== void 0 && hasCustomOptionValue(option.attributeName()) && dualHelper.valueFromOption(this.getOptionValue(option.attributeName()), option)).forEach((option) => { + Object.keys(option.implied).filter((impliedKey) => !hasCustomOptionValue(impliedKey)).forEach((impliedKey) => { + this.setOptionValueWithSource(impliedKey, option.implied[impliedKey], "implied"); + }); + }); + } + /** + * Argument `name` is missing. + * + * @param {string} name + * @api private + */ + missingArgument(name) { + const message = `error: missing required argument '${name}'`; + this.error(message, { code: "commander.missingArgument" }); + } + /** + * `Option` is missing an argument. + * + * @param {Option} option + * @api private + */ + optionMissingArgument(option) { + const message = `error: option '${option.flags}' argument missing`; + this.error(message, { code: "commander.optionMissingArgument" }); + } + /** + * `Option` does not have a value, and is a mandatory option. + * + * @param {Option} option + * @api private + */ + missingMandatoryOptionValue(option) { + const message = `error: required option '${option.flags}' not specified`; + this.error(message, { code: "commander.missingMandatoryOptionValue" }); + } + /** + * `Option` conflicts with another option. + * + * @param {Option} option + * @param {Option} conflictingOption + * @api private + */ + _conflictingOption(option, conflictingOption) { + const findBestOptionFromValue = (option2) => { + const optionKey = option2.attributeName(); + const optionValue = this.getOptionValue(optionKey); + const negativeOption = this.options.find((target) => target.negate && optionKey === target.attributeName()); + const positiveOption = this.options.find((target) => !target.negate && optionKey === target.attributeName()); + if (negativeOption && (negativeOption.presetArg === void 0 && optionValue === false || negativeOption.presetArg !== void 0 && optionValue === negativeOption.presetArg)) { + return negativeOption; + } + return positiveOption || option2; + }; + const getErrorMessage = (option2) => { + const bestOption = findBestOptionFromValue(option2); + const optionKey = bestOption.attributeName(); + const source2 = this.getOptionValueSource(optionKey); + if (source2 === "env") { + return `environment variable '${bestOption.envVar}'`; + } + return `option '${bestOption.flags}'`; + }; + const message = `error: ${getErrorMessage(option)} cannot be used with ${getErrorMessage(conflictingOption)}`; + this.error(message, { code: "commander.conflictingOption" }); + } + /** + * Unknown option `flag`. + * + * @param {string} flag + * @api private + */ + unknownOption(flag) { + if (this._allowUnknownOption) + return; + let suggestion = ""; + if (flag.startsWith("--") && this._showSuggestionAfterError) { + let candidateFlags = []; + let command = this; + do { + const moreFlags = command.createHelp().visibleOptions(command).filter((option) => option.long).map((option) => option.long); + candidateFlags = candidateFlags.concat(moreFlags); + command = command.parent; + } while (command && !command._enablePositionalOptions); + suggestion = suggestSimilar(flag, candidateFlags); + } + const message = `error: unknown option '${flag}'${suggestion}`; + this.error(message, { code: "commander.unknownOption" }); + } + /** + * Excess arguments, more than expected. + * + * @param {string[]} receivedArgs + * @api private + */ + _excessArguments(receivedArgs) { + if (this._allowExcessArguments) + return; + const expected = this.registeredArguments.length; + const s = expected === 1 ? "" : "s"; + const forSubcommand = this.parent ? ` for '${this.name()}'` : ""; + const message = `error: too many arguments${forSubcommand}. Expected ${expected} argument${s} but got ${receivedArgs.length}.`; + this.error(message, { code: "commander.excessArguments" }); + } + /** + * Unknown command. + * + * @api private + */ + unknownCommand() { + const unknownName = this.args[0]; + let suggestion = ""; + if (this._showSuggestionAfterError) { + const candidateNames = []; + this.createHelp().visibleCommands(this).forEach((command) => { + candidateNames.push(command.name()); + if (command.alias()) + candidateNames.push(command.alias()); + }); + suggestion = suggestSimilar(unknownName, candidateNames); + } + const message = `error: unknown command '${unknownName}'${suggestion}`; + this.error(message, { code: "commander.unknownCommand" }); + } + /** + * Get or set the program version. + * + * This method auto-registers the "-V, --version" option which will print the version number. + * + * You can optionally supply the flags and description to override the defaults. + * + * @param {string} [str] + * @param {string} [flags] + * @param {string} [description] + * @return {this | string | undefined} `this` command for chaining, or version string if no arguments + */ + version(str, flags2, description) { + if (str === void 0) + return this._version; + this._version = str; + flags2 = flags2 || "-V, --version"; + description = description || "output the version number"; + const versionOption = this.createOption(flags2, description); + this._versionOptionName = versionOption.attributeName(); + this.options.push(versionOption); + this.on("option:" + versionOption.name(), () => { + this._outputConfiguration.writeOut(`${str} +`); + this._exit(0, "commander.version", str); + }); + return this; + } + /** + * Set the description. + * + * @param {string} [str] + * @param {Object} [argsDescription] + * @return {string|Command} + */ + description(str, argsDescription) { + if (str === void 0 && argsDescription === void 0) + return this._description; + this._description = str; + if (argsDescription) { + this._argsDescription = argsDescription; + } + return this; + } + /** + * Set the summary. Used when listed as subcommand of parent. + * + * @param {string} [str] + * @return {string|Command} + */ + summary(str) { + if (str === void 0) + return this._summary; + this._summary = str; + return this; + } + /** + * Set an alias for the command. + * + * You may call more than once to add multiple aliases. Only the first alias is shown in the auto-generated help. + * + * @param {string} [alias] + * @return {string|Command} + */ + alias(alias) { + if (alias === void 0) + return this._aliases[0]; + let command = this; + if (this.commands.length !== 0 && this.commands[this.commands.length - 1]._executableHandler) { + command = this.commands[this.commands.length - 1]; + } + if (alias === command._name) + throw new Error("Command alias can't be the same as its name"); + command._aliases.push(alias); + return this; + } + /** + * Set aliases for the command. + * + * Only the first alias is shown in the auto-generated help. + * + * @param {string[]} [aliases] + * @return {string[]|Command} + */ + aliases(aliases) { + if (aliases === void 0) + return this._aliases; + aliases.forEach((alias) => this.alias(alias)); + return this; + } + /** + * Set / get the command usage `str`. + * + * @param {string} [str] + * @return {String|Command} + */ + usage(str) { + if (str === void 0) { + if (this._usage) + return this._usage; + const args3 = this.registeredArguments.map((arg) => { + return humanReadableArgName(arg); + }); + return [].concat( + this.options.length || this._hasHelpOption ? "[options]" : [], + this.commands.length ? "[command]" : [], + this.registeredArguments.length ? args3 : [] + ).join(" "); + } + this._usage = str; + return this; + } + /** + * Get or set the name of the command. + * + * @param {string} [str] + * @return {string|Command} + */ + name(str) { + if (str === void 0) + return this._name; + this._name = str; + return this; + } + /** + * Set the name of the command from script filename, such as process.argv[1], + * or require.main.filename, or __filename. + * + * (Used internally and public although not documented in README.) + * + * @example + * program.nameFromFilename(require.main.filename); + * + * @param {string} filename + * @return {Command} + */ + nameFromFilename(filename) { + this._name = path30.basename(filename, path30.extname(filename)); + return this; + } + /** + * Get or set the directory for searching for executable subcommands of this command. + * + * @example + * program.executableDir(__dirname); + * // or + * program.executableDir('subcommands'); + * + * @param {string} [path] + * @return {string|null|Command} + */ + executableDir(path31) { + if (path31 === void 0) + return this._executableDir; + this._executableDir = path31; + return this; + } + /** + * Return program help documentation. + * + * @param {{ error: boolean }} [contextOptions] - pass {error:true} to wrap for stderr instead of stdout + * @return {string} + */ + helpInformation(contextOptions) { + const helper = this.createHelp(); + if (helper.helpWidth === void 0) { + helper.helpWidth = contextOptions && contextOptions.error ? this._outputConfiguration.getErrHelpWidth() : this._outputConfiguration.getOutHelpWidth(); + } + return helper.formatHelp(this, helper); + } + /** + * @api private + */ + _getHelpContext(contextOptions) { + contextOptions = contextOptions || {}; + const context2 = { error: !!contextOptions.error }; + let write; + if (context2.error) { + write = (arg) => this._outputConfiguration.writeErr(arg); + } else { + write = (arg) => this._outputConfiguration.writeOut(arg); + } + context2.write = contextOptions.write || write; + context2.command = this; + return context2; + } + /** + * Output help information for this command. + * + * Outputs built-in help, and custom text added using `.addHelpText()`. + * + * @param {{ error: boolean } | Function} [contextOptions] - pass {error:true} to write to stderr instead of stdout + */ + outputHelp(contextOptions) { + let deprecatedCallback; + if (typeof contextOptions === "function") { + deprecatedCallback = contextOptions; + contextOptions = void 0; + } + const context2 = this._getHelpContext(contextOptions); + this._getCommandAndAncestors().reverse().forEach((command) => command.emit("beforeAllHelp", context2)); + this.emit("beforeHelp", context2); + let helpInformation = this.helpInformation(context2); + if (deprecatedCallback) { + helpInformation = deprecatedCallback(helpInformation); + if (typeof helpInformation !== "string" && !Buffer.isBuffer(helpInformation)) { + throw new Error("outputHelp callback must return a string or a Buffer"); + } + } + context2.write(helpInformation); + if (this._helpLongFlag) { + this.emit(this._helpLongFlag); + } + this.emit("afterHelp", context2); + this._getCommandAndAncestors().forEach((command) => command.emit("afterAllHelp", context2)); + } + /** + * You can pass in flags and a description to override the help + * flags and help description for your command. Pass in false to + * disable the built-in help option. + * + * @param {string | boolean} [flags] + * @param {string} [description] + * @return {Command} `this` command for chaining + */ + helpOption(flags2, description) { + if (typeof flags2 === "boolean") { + this._hasHelpOption = flags2; + return this; + } + this._helpFlags = flags2 || this._helpFlags; + this._helpDescription = description || this._helpDescription; + const helpFlags = splitOptionFlags(this._helpFlags); + this._helpShortFlag = helpFlags.shortFlag; + this._helpLongFlag = helpFlags.longFlag; + return this; + } + /** + * Output help information and exit. + * + * Outputs built-in help, and custom text added using `.addHelpText()`. + * + * @param {{ error: boolean }} [contextOptions] - pass {error:true} to write to stderr instead of stdout + */ + help(contextOptions) { + this.outputHelp(contextOptions); + let exitCode = process3.exitCode || 0; + if (exitCode === 0 && contextOptions && typeof contextOptions !== "function" && contextOptions.error) { + exitCode = 1; + } + this._exit(exitCode, "commander.help", "(outputHelp)"); + } + /** + * Add additional text to be displayed with the built-in help. + * + * Position is 'before' or 'after' to affect just this command, + * and 'beforeAll' or 'afterAll' to affect this command and all its subcommands. + * + * @param {string} position - before or after built-in help + * @param {string | Function} text - string to add, or a function returning a string + * @return {Command} `this` command for chaining + */ + addHelpText(position, text) { + const allowedValues = ["beforeAll", "before", "after", "afterAll"]; + if (!allowedValues.includes(position)) { + throw new Error(`Unexpected value for position to addHelpText. +Expecting one of '${allowedValues.join("', '")}'`); + } + const helpEvent = `${position}Help`; + this.on(helpEvent, (context2) => { + let helpStr; + if (typeof text === "function") { + helpStr = text({ error: context2.error, command: context2.command }); + } else { + helpStr = text; + } + if (helpStr) { + context2.write(`${helpStr} +`); + } + }); + return this; + } + }; + function outputHelpIfRequested(cmd, args3) { + const helpOption = cmd._hasHelpOption && args3.find((arg) => arg === cmd._helpLongFlag || arg === cmd._helpShortFlag); + if (helpOption) { + cmd.outputHelp(); + cmd._exit(0, "commander.helpDisplayed", "(outputHelp)"); + } + } + function incrementNodeInspectorPort(args3) { + return args3.map((arg) => { + if (!arg.startsWith("--inspect")) { + return arg; + } + let debugOption; + let debugHost = "127.0.0.1"; + let debugPort = "9229"; + let match2; + if ((match2 = arg.match(/^(--inspect(-brk)?)$/)) !== null) { + debugOption = match2[1]; + } else if ((match2 = arg.match(/^(--inspect(-brk|-port)?)=([^:]+)$/)) !== null) { + debugOption = match2[1]; + if (/^\d+$/.test(match2[3])) { + debugPort = match2[3]; + } else { + debugHost = match2[3]; + } + } else if ((match2 = arg.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/)) !== null) { + debugOption = match2[1]; + debugHost = match2[3]; + debugPort = match2[4]; + } + if (debugOption && debugPort !== "0") { + return `${debugOption}=${debugHost}:${parseInt(debugPort) + 1}`; + } + return arg; + }); + } + exports2.Command = Command2; + } +}); -`,` -\r`,"!",'"',"$","%","&","'","'20s","'30s","'40s","'50s","'60s","'70s","'80s","'90s","'A","'a","'ALL","'all","'AM","'am","'D","'d","'LL","'ll","'M","'m","'RE","'Re","'re","'S","'s","'VE","'ve","'Y","'y","(","(-:","(:",")",")-:","):",",","-","--",".","...","/","0","1","1,000","10","10,000","100","1000","10000","10th","11","11th","12","12th","13","13th","14","14th","15","15th","16","16th","17","17th","18","18th","19","1920s","1930s","1940s","1950s","1960s","1970s","1980s","1990s","19th","1st","2","20","2000s","2010s","2020s","20s","20th","21","21st","22","22nd","23","23rd","24","24th","25","25th","26","26th","27","27th","28","28th","29","29th","2nd","3","30","30s","30th","31","31st","3rd","4","40","40s","4th","5","50","50s","5th","6","60","60s","6th","7","70","70s","7th","8","80","80s","8th","9","90","90s","9th",":",":'(",":'-(",":(",":((",":)",":))",":)))",":))))",":)))))",":))))))",":)))))))",":))))))))",":)))))))))",":))))))))))",":*",":-(",":-((",":-(((",":-((((",":-)",":-))",":-)))",":-))))",":-)))))",":-))))))",":-)))))))",":-))))))))",":-)))))))))",":-*",":-/",":->",":-?",":-[",":-]",":-D",":-P",":-p",":-S",":-|",":-}",":/",":[",":\\",":]",":D",":P",":p",":S",":{",":|",":}",";",";(",";)",";))",";)))",";-(",";-)",";-D","<3","<33","<333","<3333","<33333","<333333","<3333333","<33333333","<333333333","?","[","]","`","A","a","A$","a$","A-body","a-body","A-men","a-men","a.","A.D.","a.d.","A.M.","a.m.","AA","aa","aaa","AAAS","aaas","aah","aahing","aalii","aar","aardvark","aardwolf","aardwolves","aarhus","aarp","aave","ab","aba","abaca","abaci","abacinate","aback","abactinal","abacus","abaft","abalone","abamp","abampere","abandon","abandoned","abandoning","abandonment","abandons","abarticulation","abase","abasement","abash","abashed","abashment","abasia","abasic","abatable","abate","abated","abatement","abates","abatic","abating","abatis","abator","abattis","abattoir","abaxial","abaxially","abaya","abb","abbacy","abbatial","abbe","abbess","abbey","abbot","abbreviate","abbreviated","abbreviates","abbreviating","abbreviation","abbreviations","abbreviator","abc","abcoulomb","abdias","abdicable","abdicate","abdicates","abdicating","abdication","abdicator","abdomen","abdominal","abdominocentesis","abdominoplasty","abdominous","abdominousness","abdominovesical","abduce","abducens","abducent","abduct","abducted","abducting","abduction","abductions","abductor","abducts","abeam","abecedarian","abecedarius","abed","abele","abelia","abelmosk","abenaki","aberdonian","aberrance","aberrancy","aberrant","aberrate","aberration","abet","abetalipoproteinemia","abetment","abettal","abetted","abetter","abetting","abettor","abeyance","abeyant","abfarad","abhenry","abhor","abhorred","abhorrence","abhorrent","abhorrer","abhorring","abhors","abidance","abide","abides","abiding","abience","abient","abila","abilities","ability","abiogenesis","abiogenetic","abiogenist","abiotrophy","abject","abjection","abjectly","abjuration","abjure","abjured","abjurer","abjures","abjuring","abkhas","abkhasian","abkhaz","abkhazia","abkhazian","ablactate","ablactation","ablate","ablated","ablates","ablating","ablation","ablative","ablaut","ablaze","able","ableism","ablepharia","ablism","abloom","abls","ablution","ablutionary","ably","abm","abnaki","abnegate","abnegation","abnegator","abnormal","abnormalcy","abnormalities","abnormality","abnormally","aboard","abocclusion","abode","abohm","aboideau","aboideaux","aboiteau","aboiteaux","abolish","abolishable","abolished","abolishes","abolishing","abolishment","abolition","abolitionary","abolitionism","abolitionist","abomasal","abomasum","abominable","abominably","abominate","abomination","abominator","abor","aborad","aboral","aboriginal","aborigine","abort","aborted","aborticide","abortifacient","aborting","abortion","abortionist","abortions","abortive","abortively","aborts","abortus","aboulia","aboulic","abound","abounded","abounding","abounds","About","about","Above","above","aboveboard","aboveground","abracadabra","abrachia","abradant","abrade","abrader","abrades","abrading","abranchial","abranchiate","abranchious","abrase","abrasion","abrasive","abrasiveness","abreact","abreaction","abreast","abridge","abridged","abridgement","abridger","abridges","abridging","abridgment","abroach","abroad","abrocome","abrogate","abrogating","abrogation","abrogator","abrupt","abruption","abruptly","abruptness","abscess","abscessed","abscise","abscissa","abscissae","abscission","abscond","absconder","absconding","abscondment","absconds","abseil","abseiler","absence","absences","absent","absentee","absenteeism","absentees","absently","absentminded","absentmindedly","absentmindedness","absinth","absinthe","absolute","absolutely","absoluteness","absolution","absolutism","absolutist","absolutistic","absolve","absolved","absolver","absolves","absolving","absolvitory","absorb","absorbable","absorbance","absorbate","absorbed","absorbefacient","absorbency","absorbent","absorber","absorbers","absorbing","absorbs","absorptance","absorption","absorptive","absorptivity","absquatulate","abstain","abstained","abstainer","abstaining","abstains","abstemious","abstemiously","abstemiousness","abstention","abstentious","abstinence","abstinent","abstract","abstracted","abstractedly","abstractedness","abstracter","abstracting","abstraction","abstractionism","abstractionist","abstractive","abstractly","abstractness","abstractor","abstracts","abstruse","abstrusely","abstruseness","abstrusity","absurd","absurdity","absurdly","absurdness","abt","abulia","abulic","abundance","abundant","abundantly","abuse","abused","abuser","abusers","abuses","abusing","abusive","abusively","abut","abutment","abutted","abutter","abutting","abuzz","abvolt","abwatt","aby","abye","abyla","abysm","abysmal","abysmally","abyss","abyssal","abyssinia","ac","acacia","academe","academia","academic","academically","academician","academicianship","academicism","academics","academism","academy","acantha","acanthi","acanthion","acanthisittidae","acanthocephalan","acanthocyte","acanthocytosis","acanthoid","acantholysis","acanthoma","acanthopterygian","acanthosis","acanthotic","acanthous","acanthus","acapnia","acapnial","acapnic","acapnotic","acaracide","acardia","acari","acariasis","acaricide","acarid","acaridiasis","acarine","acariosis","acarophobia","acarpellous","acarpelous","acarpous","acarus","acaryote","acatalectic","acataphasia","acathexia","acathexis","acaudal","acaudate","acaulescent","acc","accede","acceded","accedes","acceding","accelerando","accelerate","accelerated","accelerates","accelerating","acceleration","accelerative","accelerator","acceleratory","accelerometer","accent","accented","accenting","accentor","accents","accentual","accentuate","accentuates","accentuating","accentuation","accept","acceptability","acceptable","acceptableness","acceptably","acceptance","acceptant","acceptation","accepted","accepting","acceptive","acceptor","accepts","access","accessary","accesses","accessibility","accessible","accessing","accession","accessional","accessorial","accessories","accessorise","accessorised","accessorises","accessorising","accessorize","accessorized","accessorizes","accessorizing","accessory","accho","acciaccatura","acciaccature","accidence","accident","accidental","accidentally","accidents","accipitrine","acclaim","acclaimed","acclamation","acclimate","acclimating","acclimation","acclimatisation","acclimatise","acclimatised","acclimatises","acclimatising","acclimatization","acclimatize","acclimatized","acclimatizes","acclimatizing","acclivitous","acclivity","accolade","accommodate","accommodated","accommodates","accommodating","accommodatingly","accommodation","accommodational","accommodations","accommodative","accommodator","accompanied","accompanies","accompaniment","accompanist","accompany","accompanying","accompanyist","accomplice","accomplish","accomplishable","accomplished","accomplishes","accomplishing","accomplishment","accomplishments","accord","accordance","accordant","accorded","According","according","accordingly","accordion","accordionist","accords","accost","accosting","accouchement","accoucheur","accoucheuse","account","accountability","accountable","accountancy","accountant","accountants","accountantship","accounted","accounting","accounts","accouter","accoutered","accouterment","accouterments","accoutre","accoutred","accoutrement","accoutrements","accredit","accreditation","accredited","accrediting","accredits","accrete","accreted","accreting","accretion","accretionary","accretive","accroides","accrual","accrue","accrued","accruement","accrues","accruing","acculturate","acculturating","acculturation","acculturational","acculturative","accumbent","accumulate","accumulated","accumulates","accumulating","accumulation","accumulative","accumulator","accuracy","accurate","accurately","accurse","accursed","accurst","accusal","accusation","accusations","accusative","accusatorial","accusatory","accuse","accused","accuser","accuses","accusing","accusingly","accusive","accustom","accustomed","ace","acebutolol","acedia","acellular","acentric","acephalia","acephalism","acephalous","acephaly","acerate","acerb","acerbate","acerbic","acerbity","acerola","acerose","acervate","acervulus","aces","acetabula","acetabular","acetabulum","acetal","acetaldehyde","acetaldol","acetamide","acetaminophen","acetanilid","acetanilide","acetate","acetic","acetified","acetify","acetin","acetone","acetonemia","acetonic","acetonuria","acetophenetidin","acetose","acetous","acetphenetidin","acetum","acetyl","acetylate","acetylation","acetylcholine","acetylene","acetylenic","acetylic","acetylise","acetylize","achaean","achaemenid","achaemenidae","achaemenides","achaian","ache","achene","achenial","acheronian","acherontic","aches","achievability","achievable","achieve","achieved","achievement","achievements","achiever","achieves","achieving","achillea","achimenes","aching","achira","achlamydeous","achlorhydria","achlorhydric","acholia","achondrite","achondritic","achondroplasia","achondroplastic","achondroplasty","achromasia","achromatic","achromaticity","achromatin","achromatinic","achromatise","achromatism","achromatize","achromatous","achromia","achromic","achromous","achromycin","achy","achylia","acicula","acicular","aciculate","aciculum","acid","acidemia","acidic","acidification","acidified","acidifies","acidify","acidimetric","acidimetry","acidity","acidophil","acidophile","acidophilic","acidophilous","acidophilus","acidosis","acidotic","acids","acidulate","acidulent","acidulous","acidulousness","aciduric","acinar","acing","acini","acinic","acinose","acinous","acinus","ackee","acknowledge","acknowledgeable","acknowledged","acknowledgement","acknowledges","acknowledging","acknowledgment","aclant","acme","acne","acned","acneiform","acokanthera","acold","acolyte","aconite","acorea","acores","acorn","acousma","acoustic","acoustical","acoustically","acoustician","acousticophobia","acoustics","acquaint","acquaintance","acquaintances","acquaintanceship","acquainted","acquainting","acquaints","acquiesce","acquiesced","acquiescence","acquiescent","acquiescing","acquirable","acquire","acquired","acquirement","acquirer","acquires","acquiring","acquisition","acquisitions","acquisitive","acquisitiveness","acquit","acquits","acquittal","acquittance","acquitted","acquitting","acragas","acre","acreage","acres","acrid","acridid","acridity","acridness","acrilan","acrimonious","acrimony","acritical","acroanaesthesia","acroanesthesia","acrobat","acrobatic","acrobatics","acrocarp","acrocarpous","acrocentric","acrocephaly","acrocyanosis","acrodont","acrogen","acrogenic","acrogenous","acrolein","acromegalia","acromegalic","acromegaly","acromia","acromicria","acromikria","acromion","acromphalus","acromyotonia","acronym","acronymic","acronymous","acronyms","acropetal","acrophobia","acrophobic","acrophony","acropolis","acroscopic","acrosome","Across","across","acrostic","acrylamide","acrylate","acrylic","acrylonitrile","act","actable","acted","acth","actin","actinal","actinaria","acting","actinia","actiniae","actinian","actiniarian","actinic","actinide","actinism","actinium","actinoid","actinolite","actinometer","actinometric","actinometrical","actinometry","actinomorphic","actinomorphous","actinomyces","actinomycetal","actinomycete","actinomycetous","actinomycin","actinomycosis","actinomycotic","actinomyxidian","actinon","actinopod","actinotherapy","actinozoa","actinozoan","action","actionable","actions","activase","activate","activated","activates","activating","activation","activator","activators","active","actively","activeness","activewear","activism","activist","activistic","activists","activities","activity","actomyosin","actor","actors","actress","actresses","acts","actual","actualisation","actualise","actuality","actualization","actualize","Actually","actually","actuarial","actuary","actuate","actuated","actuating","actuation","actuator","acuate","acuity","acular","aculea","aculeate","aculeated","aculeus","acumen","acuminate","acupressure","acupuncture","acute","acutely","acuteness","acyclic","acyclovir","acyl","acylation","acylglycerol","ad","ada","adactylia","adactylism","adactylous","adactyly","adage","adagio","adamance","adamant","adamantine","adamantly","adapin","adapt","adaptability","adaptable","adaptation","adaptational","adaptations","adaptative","adapted","adapter","adapting","adaption","adaptive","adaptor","adapts","adaxial","adaxially","add","addable","addax","added","addend","addenda","addendum","adder","addible","addict","addicted","addicting","addiction","addictive","addicts","adding","addition","additional","additionally","additions","additive","addle","addlebrained","addled","addlehead","addlepated","address","addressable","addressed","addressee","addresses","addressing","addressograph","adds","adduce","adducent","adducer","adducing","adduct","adducting","adduction","adductive","adductor","ade","adelgid","adenine","adenitis","adenocarcinoma","adenocarcinomata","adenocarcinomatous","adenohypophysis","adenoid","adenoidal","adenoidectomy","adenoma","adenomata","adenomegaly","adenomyosarcoma","adenomyosis","adenopathy","adenosine","adenosis","adenovirus","adept","adeptness","adequacy","adequate","adequately","adequateness","adermin","adesite","adh","adhd","adhere","adhered","adherence","adherent","adherents","adheres","adhering","adhesion","adhesive","adhesiveness","adhocracy","adiabatic","adience","adient","adieu","adieux","adios","adipose","adiposeness","adiposis","adiposity","adit","adjacency","adjacent","adjectival","adjectivally","adjective","adjectively","adjectives","adjoin","adjourn","adjourned","adjourning","adjournment","adjourns","adjudge","adjudicate","adjudicating","adjudication","adjudicative","adjudicator","adjudicatory","adjunct","adjunction","adjunctive","adjuration","adjuratory","adjure","adjust","adjustable","adjusted","adjuster","adjusting","adjustive","adjustment","adjustments","adjustor","adjusts","adjutant","adjuvant","adman","admass","admeasure","administer","administered","administering","administers","administrable","administrate","administrating","administration","administrations","administrative","administratively","administrator","administrators","administrivia","admirability","admirable","admirableness","admirably","admiral","admiralty","admiration","admire","admired","admirer","admirers","admires","admiring","admiringly","admissibility","admissible","admission","admissions","admissive","admit","admits","admittable","admittance","admitted","admittedly","admittible","admitting","admix","admixture","admonish","admonished","admonisher","admonishing","admonishment","admonition","admonitory","adnate","adnexa","adnexal","adnoun","ado","adobe","adobo","adolesce","adolescence","adolescent","adolescents","adonic","adopt","adoptable","adopted","adoptee","adopter","adopting","adoption","adoptive","adopts","adorability","adorable","adorableness","adorably","adoration","adore","adored","adorer","adores","adoring","adoringly","adorn","adorned","adorning","adornment","adorns","adoxography","adp","adpressed","adrenal","adrenalectomy","adrenalin","adrenaline","adrenarche","adrenergic","adrenocortical","adrenocorticotrophic","adrenocorticotrophin","adrenocorticotropic","adrenocorticotropin","adrenosterone","adrianople","adrianopolis","adrift","adroit","adroitly","adroitness","ads","adscititious","adscript","adscripted","adsorb","adsorbable","adsorbate","adsorbent","adsorption","adsorptive","adt","adulate","adulation","adulator","adulatory","adult","adulterant","adulterate","adulterated","adulterating","adulteration","adulterator","adulterer","adulteress","adulterine","adulterous","adulterously","adultery","adulthood","adults","adumbrate","adumbration","adumbrative","adust","advance","advanced","advancement","advancer","advances","advancing","advantage","advantageous","advantageously","advantageousness","advantages","advect","advection","advective","advent","adventitia","adventitial","adventitious","adventive","adventure","adventurer","adventures","adventuresome","adventuress","adventuring","adventurism","adventuristic","adventurous","adventurousness","adverb","adverbial","adverbially","adversaries","adversary","adversative","adverse","adversely","adversity","advert","advertence","advertency","advertent","advertently","adverting","advertise","advertised","advertisement","advertisements","advertiser","advertisers","advertises","advertising","advertize","advertizement","advertizer","advertizes","advertizing","advertorial","advice","advil","advisability","advisable","advise","advised","advisedly","advisee","advisement","adviser","advisers","advises","advising","advisor","advisors","advisory","advocacy","advocate","advocated","advocates","advocating","advocator","advowson","adynamia","adynamic","adyta","adytum","adz","adze","adzharia","aec","aecia","aecial","aecidia","aecidium","aeciospore","aecium","aegates","aegean","aegir","aegis","aegospotamos","aengus","aeolia","aeolian","aeolotropic","aeon","aeonian","aeons","aepyornis","aerate","aerated","aeration","aerator","aerial","aerialist","aerially","aerides","aerie","aeriferous","aerified","aeriform","aerify","aerobatics","aerobe","aerobia","aerobic","aerobics","aerobiosis","aerobiotic","aerobium","aerodontalgia","aerodrome","aerodynamic","aerodynamics","aeroembolism","aerofoil","aerogenerator","aerogram","aerogramme","aerogrammes","aerograms","aerolite","aerolitic","aerological","aerology","aeromechanic","aeromechanics","aeromedical","aeromedicine","aeronaut","aeronautic","aeronautical","aeronautics","aerophagia","aerophilatelic","aerophilately","aerophile","aerophilic","aerophilous","aerophyte","aeroplane","aeroplanes","aerosol","aerosolise","aerosolised","aerosolize","aerosolized","aerospace","aery","aeschylean","aeschynanthus","aesculapian","aesthesia","aesthesis","aesthete","aesthetes","aesthetic","aesthetical","aesthetically","aesthetician","aesthetics","aestival","aestivate","aestivation","aetiologic","aetiological","aetiologist","aetiology","afar","afeard","afeared","afebrile","affability","affable","affableness","affably","affair","affaire","affairs","affect","affectation","affected","affectedly","affectedness","affecting","affectingly","affection","affectional","affectionate","affectionately","affectionateness","affective","affects","affenpinscher","afferent","afferents","affiance","affiant","affidavit","affiliate","affiliated","affiliates","affiliating","affiliation","affinal","affine","affined","affinities","affinity","affirm","affirmable","affirmation","affirmative","affirmatively","affirmativeness","affirmatory","affirmed","affirmer","affirming","affix","affixal","affixation","affixed","affixes","affixial","affixing","afflatus","afflict","afflicted","afflicting","affliction","afflictive","afflicts","affluence","affluent","afford","affordable","afforded","affording","afforest","afforestation","affranchise","affray","affricate","affrication","affricative","affright","affront","affronted","affusion","afghan","afghani","Afghanistan","afghanistan","afghanistani","afibrinogenemia","aficionado","aficionados","afield","afire","afisr","afl","aflame","aflare","aflatoxin","aflaxen","aflicker","afloat","aflutter","afoot","aforementioned","aforesaid","aforethought","afoul","afp","afraid","afrasian","afresh","Africa","africa","African","african","afrikaans","afrikander","afrikaner","afrl","afropavo","afspc","aft","After","after","afterbirth","afterburner","aftercare","afterdamp","afterdeck","aftereffect","afterglow","afterimage","afterlife","aftermath","aftermost","afternoon","afternoons","afterpains","afterpiece","afters","aftersensation","aftershaft","aftershafted","aftershock","aftertaste","afterthought","afterward","afterwards","afterworld","again","Against","against","agal","agalactia","agalactosis","agama","agamete","agamic","agamid","agammaglobulinemia","agamogenesis","agamogenetic","agamous","agapanthus","agape","agar","agaric","agate","agateware","agave","agaze","age","aged","agedness","ageing","ageism","ageless","agelessness","agelong","agencies","agency","agenda","agendas","agendum","agene","agenesia","agenesis","agenise","agenize","agent","agential","agents","agerasia","ageratum","ages","aggeus","aggiornamenti","aggiornamento","agglomerate","agglomerated","agglomeration","agglomerative","agglomerator","agglutinate","agglutination","agglutinative","agglutinin","agglutinogen","aggrade","aggrandise","aggrandisement","aggrandize","aggrandizement","aggrandizing","aggravate","aggravated","aggravates","aggravating","aggravatingly","aggravation","aggravator","aggregate","aggregated","aggregates","aggregating","aggregation","aggregative","aggregator","aggress","aggression","aggressions","aggressive","aggressively","aggressiveness","aggressor","aggrieve","aggro","aggroup","agha","aghast","agile","agilely","agility","aging","agio","agiotage","agism","agitate","agitated","agitates","agitating","agitation","agitative","agitator","agitprop","agleam","aglet","aglitter","aglow","agnail","agnate","agnathan","agnatic","agnation","agnise","agnize","agnomen","agnomina","agnosia","agnostic","agnostical","agnosticism","ago","agog","agon","agonadal","agonal","agone","agones","agonise","agonised","agonises","agonising","agonisingly","agonist","agonistic","agonistical","agonists","agonize","agonized","agonizes","agonizing","agonizingly","agony","agora","agorae","agoraphobia","agoraphobic","agouti","agouties","agranulocytic","agranulocytosis","agranulosis","agrapha","agraphia","agraphic","agrarian","agree","agreeability","agreeable","agreeableness","agreeably","agreed","agreeing","Agreement","agreement","agreements","agrees","agrestic","agribusiness","agricultural","agriculturalist","agriculture","agriculturist","agrimonia","agrimony","agrobiologic","agrobiological","agrobiology","agrologic","agrological","agrology","agromania","agronomic","agronomical","agronomist","agronomy","aground","agrypnia","agrypnotic","agua","aguacate","ague","agueweed","aguish","ah","ahead","ahem","ahimsa","ahistorical","ahorse","ahorseback","ahpcrc","ahvenanmaa","AI","Ai","ai","aiai","aid","aide","aided","aides","aiding","aidoneus","AIDS","aids","aigina","aiglet","aigret","aigrette","aiguilette","aikido","ail","ailanthus","aileron","ailing","ailment","ailments","ails","ailurophobia","aim","aimed","aiming","aimless","aimlessly","aimlessness","aims","ain","AIN'T","Ain't","ain't","AINT","Aint","aint","AIN\u2019T","Ain\u2019t","ain\u2019t","aioli","air","airborne","airbrake","airbrush","airbrushing","airburst","airbus","aircraft","aircraftman","aircraftsman","aircrew","aircrewman","airdock","airdrome","airdrop","airdropped","airdropping","aired","airfare","airfield","airflow","airfoil","airforce","airframe","airfreight","airgun","airhead","airheaded","airier","airiest","airily","airiness","airing","airless","airlift","airlifted","airlifting","airlifts","airlike","airline","airliner","airliners","airlines","airlock","airmail","airmailer","airman","airmanship","airplane","airplanes","airport","airports","airpost","airs","airscrew","airship","airsick","airsickness","airspace","airspeed","airstream","airstrip","airt","airtight","airwave","airwaves","airway","airwoman","airworthiness","airworthy","airy","aisle","aisles","aitchbone","ajar","akaba","akaryocyte","akaryote","akee","aken","akha","akhenaten","akimbo","akin","akinesia","akinesis","akka","akko","akmola","aku","akvavit","al","ala","ALA.","Ala.","ala.","alabama","alabamian","alabaster","alabastrine","alacritous","alacrity","alae","alalia","alanine","alar","alarm","alarmed","alarming","alarmingly","alarmism","alarmist","alarmists","alarms","alarum","alary","Alas","alas","Alaska","alaska","alaskan","alastrim","alate","alated","alb","albacore","albanian","albanians","albatross","albedo","albeit","albescent","albigensian","albinal","albinic","albinism","albinistic","albino","albinotic","albite","albitic","albizia","albizzia","alborg","albuca","albuginea","album","albumen","albumin","albuminoid","albuminous","albuminuria","albuminuric","albums","albuterol","alcahest","alcalde","alcalescent","alcapton","alcaptonuria","alcazar","alchemic","alchemical","alchemise","alchemist","alchemistic","alchemistical","alchemize","alchemy","alcides","alcohol","alcoholic","alcoholise","alcoholism","alcoholize","alcove","aldactone","aldehyde","aldehydic","alder","alderfly","alderman","aldermanic","aldermanly","aldohexose","aldol","aldomet","aldose","aldosterone","aldosteronism","ale","aleatory","alecost","alee","alehoof","alehouse","alembic","alendronate","alep","aleph","aleppo","alert","alerted","alerting","alertly","alertness","alerts","aleurone","aleuronic","aleutian","aleve","alewife","alewives","alexandrian","alexandrite","alexia","alexic","alfalfa","alfilaria","alfileria","alfresco","alga","algae","algal","algarobilla","algarroba","algarrobilla","algebra","algebraic","algebraical","algebraically","algebraist","Algeria","algeria","algerian","algerie","algid","algidity","algin","algoid","algolagnia","algolagnic","algology","algometer","algometric","algometrical","algometry","algonkian","algonkin","algonquian","algonquin","algophilia","algophobia","algophobic","algorism","algorithm","algorithmic","algorithms","alhacen","alias","alibi","alidad","alidade","alien","alienable","alienage","alienate","alienated","alienates","alienating","alienation","alienator","alienee","alienism","alienist","alienor","aliens","aliform","alight","alighting","alights","align","aligned","aligning","alignment","alignments","alike","alikeness","aliment","alimental","alimentary","alimentation","alimentative","alimony","aline","alinement","aliphatic","aliquant","aliquot","aliquots","alir","alismales","aliterate","alive","aliveness","aliyah","alizarin","alizarine","alkahest","alkahestic","alkalemia","alkalescent","alkali","alkalic","alkalies","alkalified","alkalify","alkalimetry","alkaline","alkalinise","alkalinity","alkalinize","alkalinuria","alkalise","alkaliser","alkalize","alkalizer","alkaloid","alkaloidal","alkalosis","alkalotic","alkaluria","alkane","alkanet","alkapton","alkaptonuria","alkene","alkeran","alky","alkyd","alkyl","alkylbenzene","alkylbenzenesulfonate","alkylic","alkyne","All","all","allamanda","allantoic","allantoid","allantois","allargando","allay","allayed","allayer","allaying","allegation","allegations","allege","alleged","allegedly","allegement","alleges","allegiance","allegiant","alleging","allegoric","allegorical","allegorically","allegorise","allegoriser","allegorize","allegorizer","allegorizing","allegory","allegretto","allegro","allele","alleles","allelic","allelomorph","allelomorphic","allemande","allergen","allergenic","allergic","allergies","allergist","allergology","allergy","alleviant","alleviate","alleviated","alleviates","alleviating","alleviation","alleviative","alleviator","alleviatory","alley","alleys","alleyway","alleyways","allgood","allhallows","alliaceous","alliance","alliances","allice","allied","allies","alligator","alligatored","alligatorfish","allioniaceae","allis","alliterate","alliterating","alliteration","alliterative","alliteratively","alliterator","allmouth","alloantibody","allocable","allocatable","allocate","allocated","allocates","allocating","allocation","allocations","allocator","allochronic","allochthonous","allocution","allodia","allodium","allogamous","allogamy","allogeneic","allograft","allograph","allographic","allomerism","allomerous","allometric","allometry","allomorph","allomorphic","allopathic","allopathy","allopatric","allopatry","allophone","allophonic","allopurinol","allosaur","allosaurus","allot","allotment","allotrope","allotropic","allotropical","allotropism","allotropy","allots","allotted","allotting","allover","allow","allowable","allowably","allowance","allowances","allowed","allowing","allows","alloy","alloyed","allspice","allude","alluded","alludes","alluding","allure","allurement","alluring","allusion","allusions","allusive","allusiveness","alluvia","alluvial","alluviation","alluvion","alluvium","ally","allying","allyl","allylic","almanac","almanack","almanacks","almanacs","almandine","almandite","almighty","almond","almoner","almost","alms","almsgiver","almsgiving","alocasia","alodia","alodium","aloe","aloft","aloha","alone","aloneness","Along","along","Alongside","alongside","aloof","aloofness","alopecia","alopecic","aloud","alp","alpaca","alpenstock","alpestrine","alpha","alphabet","alphabetic","alphabetical","alphabetically","alphabetisation","alphabetise","alphabetised","alphabetiser","alphabetization","alphabetize","alphabetized","alphabetizer","alphabetizing","alphameric","alphamerical","alphanumeric","alphanumerical","alphanumerics","alphavirus","alpine","alpinist","alprazolam","already","alright","alsatia","alsatian","Also","also","alstroemeria","alt","altace","altaic","altar","altarpiece","altars","altazimuth","alter","alterability","alterable","alteration","alterations","alterative","altercate","altercation","altered","altering","alternate","alternately","alternates","alternating","alternation","alternative","alternatively","alternatives","alternator","alters","althaea","althea","Although","although","altimeter","altissimo","altitude","altitudinal","altitudinous","alto","altocumuli","altocumulus","altogether","altoist","altostrati","altostratus","altricial","altruism","altruist","altruistic","altruistically","alula","alulae","alular","alum","alumbloom","alumina","aluminate","aluminiferous","aluminise","aluminium","aluminize","aluminous","aluminum","alumna","alumnae","alumni","alumnus","alumroot","alundum","alupent","alveolar","alveolate","alveoli","alveolitis","alveolus","alvine","always","alzheimers","AM","Am","am","amadavat","amah","amain","amalgam","amalgamate","amalgamated","amalgamation","amalgamative","amalgamator","amanuenses","amanuensis","amaranth","amaranthine","amarelle","amaretto","amaryllis","amass","amassed","amasses","amassing","amastia","amateur","amateurish","amateurishly","amateurishness","amateurism","amateurs","amative","amativeness","amatory","amatungulu","amaurosis","amaurotic","amaze","amazed","amazement","amazes","amazing","amazingly","ambage","ambagious","ambassador","ambassadorial","ambassadorship","ambassadress","amber","amberbell","amberfish","ambergris","amberjack","ambiance","ambidexterity","ambidextrous","ambidextrousness","ambience","ambient","ambiguities","ambiguity","ambiguous","ambiguously","ambit","ambition","ambitionless","ambitions","ambitious","ambitiously","ambitiousness","ambivalence","ambivalency","ambivalent","ambiversion","ambiversive","amble","ambler","ambling","amblygonite","amblyopia","amblyopic","ambo","amboyna","ambrosia","ambrosial","ambrosian","ambulacra","ambulacral","ambulacrum","ambulance","ambulant","ambulate","ambulation","ambulatory","ambuscade","ambush","ambushed","ambusher","ambushing","ambystomid","amd","ameba","amebae","ameban","amebiasis","amebic","amebiosis","ameboid","amebous","ameer","amelia","ameliorate","ameliorating","amelioration","ameliorative","amelioratory","ameloblast","amelogenesis","Amen","amen","amenability","amenable","amenableness","amend","amendable","amendatory","amended","amending","amendment","amendments","amends","amenia","amenities","amenity","amenorrhea","amenorrheal","amenorrheic","amenorrhoea","amenorrhoeal","amenorrhoeic","ament","amentaceous","amentia","amentiferous","amerce","amercement","amerciable","America","america","american","americanisation","americanise","americanize","americanized","americium","amerind","amerindic","ametabolic","ametabolous","amethopterin","amethyst","amethystine","ametria","ametropia","ametropic","amex","amharic","amiability","amiable","amiableness","amiably","amicability","amicable","amicableness","amicably","Amid","amid","amide","amidopyrine","amidship","amidships","amigo","amine","aminic","amino","aminoaciduria","aminoalkane","aminobenzine","aminomethane","aminopherase","aminophylline","aminoplast","aminopyrine","aminotransferase","amiodarone","amir","amiss","amitosis","amitotic","amitriptyline","amity","ammeter","ammine","ammino","ammo","ammobium","ammonia","ammoniac","ammoniacal","ammoniate","ammoniated","ammonification","ammonified","ammonify","ammonite","ammonitic","ammonium","ammoniuria","ammonoid","ammunition","AMN'T","Amn't","amn't","amnesia","amnesiac","amnesic","amnestic","amnestied","amnesty","amnia","amnic","amnio","amniocenteses","amniocentesis","amnion","amnionic","amniote","amniotic","AMNT","Amnt","amnt","AMN\u2019T","Amn\u2019t","amn\u2019t","amobarbital","amoeba","amoebae","amoeban","amoebiases","amoebiasis","amoebic","amoebina","amoebiosis","amoeboid","amoebous","amok","amon","Among","among","amongst","amor","amora","amoraim","amoralism","amoralist","amorality","amorally","amoretti","amoretto","amorini","amorino","amorist","amoristic","amorous","amorously","amorousness","amorpha","amorphophallus","amorphous","amort","amortisable","amortisation","amortisations","amortise","amortised","amortises","amortising","amortizable","amortization","amortizations","amortize","amortized","amortizes","amortizing","amount","amounted","amounting","amounts","amour","amoxicillin","amoxil","amoy","amp","amperage","ampere","ampersand","amphetamine","amphiarthroses","amphiarthrosis","amphibia","amphibian","amphibiotic","amphibious","amphibole","amphibolite","amphibology","amphiboly","amphibrach","amphicarpa","amphicia","amphictyony","amphidiploid","amphidiploidy","amphigory","amphimixes","amphimixis","amphioxi","amphioxus","amphipod","amphiprostylar","amphiprostyle","amphiprotic","amphisbaena","amphisbaenae","amphisbaenia","amphistylar","amphitheater","amphitheaters","amphitheatre","amphitheatres","amphitheatric","amphitheatrical","amphithecium","amphitropous","amphiuma","amphora","amphorae","amphoric","amphoteric","amphotericin","ampicillin","ample","ampleness","amplification","amplifications","amplified","amplifier","amplifies","amplify","amplifying","amplitude","amplitudes","amply","ampoule","ampul","ampule","ampulla","ampullae","ampullar","ampullary","amputate","amputates","amputating","amputation","amputator","amputee","amrinone","amuck","amulet","amun","amusd","amuse","amused","amusement","amusements","amuses","amusing","amusingly","amusive","amygdala","amygdalae","amygdaliform","amygdalin","amygdaline","amygdaloid","amygdaloidal","amygdalotomy","amyl","amylaceous","amylase","amyloid","amyloidal","amyloidosis","amylolysis","amylolytic","amylum","amyotonia","amyotrophia","amyotrophy","amytal","amyxia","An","an","anabases","anabasis","anabatic","anabiosis","anabiotic","anabolic","anabolism","anachronic","anachronism","anachronistic","anachronistically","anachronous","anaclinal","anaclisis","anaclitic","anacolutha","anacoluthia","anacoluthic","anacoluthon","anaconda","anacruses","anacrusis","anadiplosis","anadromous","anaemia","anaemic","anaerobe","anaerobia","anaerobic","anaerobiotic","anaerobium","anaesthesia","anaesthetic","anaesthetics","anaesthetise","anaesthetised","anaesthetises","anaesthetising","anaesthetist","anaesthetists","anaesthetize","anaesthetized","anaesthetizes","anaesthetizing","anaglyph","anaglyphic","anaglyphical","anaglyphy","anaglyptic","anaglyptical","anagnorises","anagnorisis","anagnost","anagoge","anagogic","anagogical","anagram","anagrammatic","anagrammatical","anagrammatise","anagrammatize","anal","analbuminemia","analecta","analects","analemma","analemmata","analeptic","analgesia","analgesic","analgesics","analgetic","analog","analogical","analogies","analogise","analogist","analogize","analogous","analogously","analogs","analogue","analogues","analogy","analphabet","analphabetic","analphabetism","analysand","analyse","analysed","analyser","analyses","analysing","analysis","Analyst","analyst","Analysts","analysts","analytic","analytical","analytically","analyticity","analyzable","analyze","analyzed","analyzer","analyzes","analyzing","anamneses","anamnesis","anamnestic","anamorphic","anamorphism","anamorphoses","anamorphosis","anapaest","anapaestic","anapest","anapestic","anaphase","anaphasic","anaphor","anaphora","anaphoric","anaphrodisia","anaphrodisiac","anaphylactic","anaphylaxis","anaplasia","anaplasmosis","anaplastic","anaplasty","anaprox","anapsid","anaptyxis","anapurna","anarchic","anarchical","anarchically","anarchism","anarchist","anarchistic","anarchy","anarthria","anasarca","anasarcous","anaspid","anastalsis","anastigmat","anastigmatic","anastomose","anastomoses","anastomosis","anastomotic","anastrophe","anastylosis","anathema","anathematisation","anathematise","anathematization","anathematize","anathematizing","anathemise","anathemize","anatolia","anatomic","anatomical","anatomically","anatomise","anatomist","anatomize","anatomy","anatotitan","anatoxin","anatropous","anatto","anatyxes","ancestor","ancestors","ancestral","ancestress","ancestry","anchor","anchorage","anchored","anchoring","anchorite","anchoritic","anchorman","anchorperson","anchors","anchovy","anchusa","anchylosis","ancient","anciently","ancientness","ancillary","ancistrodon","ancon","ancones","ancylose","And","and","andalucia","andalusian","andante","andantino","andean","andelmin","andesite","andiron","andorran","andradite","andrena","andrenid","androclinia","androclinium","androecia","androecium","androgen","androgenesis","androgenetic","androgenic","androgenous","androgens","androgeny","androglossia","androgyne","androgynous","androgyny","android","androphobia","androsphinges","androsphinx","androsterone","andryala","andtheridia","ane","anecdotal","anecdote","anecdotes","anecdotic","anecdotical","anecdotist","anechoic","anele","anemia","anemic","anemographic","anemography","anemometer","anemometric","anemometrical","anemometry","anemone","anemophilous","anencephalia","anencephalic","anencephalous","anencephaly","anergy","aneroid","anesthesia","anesthesiologist","anesthesiology","anesthetic","anesthetics","anesthetise","anesthetist","anesthetists","anesthetize","anesthetized","anesthetizes","anesthetizing","anesthyl","anestric","anestrous","anestrum","anestrus","aneuploid","aneuploidy","aneurin","aneurism","aneurismal","aneurismatic","aneurysm","aneurysmal","aneurysmatic","anew","anfractuous","ang","angel","angelfish","angelfishes","angelic","angelica","angelical","angelically","angelim","angelique","angelology","angels","anger","angered","angering","angers","angevine","angiitis","angina","anginal","anginose","anginous","angiocardiogram","angiocarp","angiocarpic","angiocarpous","angioedema","angiogenesis","angiogram","angiography","angiohemophilia","angiologist","angiology","angioma","angiomata","angiomatous","angiopathy","angioplasty","angiopteris","angiosarcoma","angioscope","angiosperm","angiospermous","angiotelectasia","angiotensin","angiotonin","angle","angled","angledozer","angler","anglerfish","angles","anglesea","anglewing","angleworm","anglican","anglicisation","anglicise","anglicised","anglicises","anglicising","anglicize","anglicized","anglicizes","anglicizing","anglified","anglify","angling","anglophil","anglophile","anglophilic","anglophobe","anglophobic","Angola","angola","angolan","angora","angostura","angraecum","angrecum","angrier","angriest","angrily","angriness","angry","angst","angstrom","anguillan","anguine","anguish","anguished","anguishes","anguishing","angular","angularity","angulate","angulation","angus","angwantibo","anhedonia","anhidrosis","anhinga","anhydride","anhydrosis","anhydrous","ani","anicteric","anil","anile","aniline","anima","animadversion","animadvert","animal","animalcula","animalcule","animalculum","animalisation","animalise","animalism","animalistic","animality","animalization","animalize","animals","animate","animated","animatedly","animateness","animates","animating","animation","animatism","animatistic","animator","animatronics","anime","animise","animism","animist","animistic","animize","animosity","animus","anion","anionic","anise","aniseed","aniseikonia","aniseikonic","anisette","anisogamete","anisogametic","anisogamic","anisogamous","anisogamy","anisometric","anisometropia","anisometropic","anisotropic","anisotropically","anisotropy","ankle","anklebone","ankles","anklet","ankus","ankyloglossia","ankylosaur","ankylosaurus","ankylose","ankylosing","ankylosis","ankylotic","anlage","anlagen","anna","annalist","annalistic","annals","annam","annamese","annamite","annattos","anneal","annealing","annelid","annelidan","annex","annexa","annexal","annexation","annexational","annexe","annexing","annihilate","annihilated","annihilates","annihilating","annihilation","annihilative","annihilator","anniversary","annon","annotate","annotates","annotating","annotation","annotations","annotator","announce","announced","announcement","announcements","announcer","announces","announcing","annoy","annoyance","annoyed","annoyer","annoying","annoyingly","annoys","annual","annualised","annualized","annually","annualry","annuitant","annuity","annul","annular","annulate","annulated","annulet","annuli","annulled","annulling","annulment","annulus","annum","annunciate","annunciator","annunciatory","annwn","ano","anoa","anodal","anode","anodic","anodise","anodises","anodize","anodizes","anodyne","anoestrous","anoestrum","anoestrus","anoint","anointer","anointing","anointment","anoints","anole","anomalies","anomalist","anomalops","anomalopteryx","anomalous","anomalously","anomalousness","anomaly","anomic","anomie","anomy","anon","anon.","anonym","anonymity","anonymous","anonymously","anoperineal","anopheline","anopia","anorak","anorchia","anorchidism","anorchism","anorectal","anorectic","anorexia","anorexic","anorexigenic","anorgasmia","anorthic","anorthite","anorthitic","anorthography","anorthopia","anosmatic","anosmia","anosmic","Another","another","anova","anovulant","anovulation","anoxemia","anoxemic","anoxia","anoxic","anpu","ansaid","anserine","answer","answerability","answerable","answerableness","answered","answerer","answering","answers","ant","anta","antabuse","antacid","antae","antagonise","antagonised","antagonises","antagonising","antagonism","antagonist","antagonistic","antagonistically","antagonists","antagonize","antagonized","antagonizes","antagonizing","antakiya","antakya","antalkali","antalkalies","antapex","antarctic","antbird","ante","anteater","antebellum","antecede","antecedence","antecedency","antecedent","antecedently","antechamber","antecubital","antedate","antedating","antediluvial","antediluvian","antefix","antefixa","anteing","antelope","antemeridian","antemortem","antenatal","antenna","antennae","antennal","antennary","antenuptial","antepartum","antependia","antependium","antepenult","antepenultima","antepenultimate","anterior","anteriority","anteriorly","anterograde","anteroom","anthelia","anthelices","anthelion","anthelix","anthelminthic","anthelmintic","anthem","anthemia","anthemion","anther","antheral","antheridia","antheridial","antheridiophore","antheridium","antherozoid","anthesis","anthill","anthodia","anthodium","anthologise","anthologist","anthologize","anthologizing","anthology","anthony","anthophagous","anthophilous","anthophyllite","anthophyta","anthozoa","anthozoan","anthraces","anthracite","anthracitic","anthracosis","anthrax","anthropic","anthropical","anthropocentric","anthropocentricity","anthropocentrism","anthropogenesis","anthropogenetic","anthropogenic","anthropogeny","anthropoid","anthropoidal","anthropolatry","anthropological","anthropologist","anthropologists","anthropology","anthropometric","anthropometrical","anthropometry","anthropomorphic","anthropomorphise","anthropomorphism","anthropomorphize","anthropomorphizing","anthropomorphous","anthropophagite","anthropophagous","anthropophagus","anthropophagy","anthroposophy","anthurium","anti","Anti-abortion","anti-abortion","anti-abortionist","anti-abortionists","anti-airline","anti-airline-takeover","anti-anemia","anti-apartheid","anti-ballistic-missile","anti-bike","anti-cancer","anti-cholesterol","anti-communist","anti-competitive","anti-crime","anti-debt","anti-depressant","anti-development","anti-diarrheal","anti-discrimination","anti-drug","anti-dumping","anti-flag-burning","anti-foreigner","anti-fraud","anti-government","anti-heroes","anti-hooligan","anti-infectives","anti-intellectual","anti-intellectualism","anti-lock","anti-miscarriage","anti-missile","anti-monopoly","anti-morning-sickness","Anti-nuclear","anti-nuclear","anti-outsider","anti-party","anti-pocketbook","anti-program","anti-programmers","anti-prostitution","anti-racketeering","anti-recession","anti-science","anti-scientific","anti-smoking","anti-social","anti-takeover","anti-tax","anti-tax-shelter","anti-toxic","anti-ulcer","Anti-union","anti-union","anti-war","anti-white","antiacid","antiadrenergic","antiaircraft","antialiasing","antiapartheid","antiarrhythmic","antiauthoritarian","antibacterial","antibaryon","antibiosis","antibiotic","antibiotics","antiblack","antibodies","antibody","antic","anticancer","anticatalyst","anticholinergic","anticholinesterase","anticipant","anticipate","anticipated","anticipates","anticipating","anticipation","anticipative","anticipator","anticipatory","anticlimactic","anticlimactical","anticlimax","anticlinal","anticlinoria","anticlinorium","anticlockwise","anticoagulant","anticoagulation","anticoagulative","anticonvulsant","antics","anticyclone","anticyclonic","antidepressant","antidiabetic","antidiarrheal","antidiuretic","antidotal","antidote","antidromic","antielectron","antiemetic","antiepileptic","antiestablishmentarianism","antiestablishmentism","antifeminism","antifeminist","antiferromagnetic","antiferromagnetism","antifertility","antiflatulent","antifreeze","antifungal","antigen","antigenic","antigens","antigram","Antigua","antigua","antiguan","antihelices","antihelix","antiheretical","antihero","antiheroes","antihistamine","antihypertensive","antiknock","antiknocking","antilepton","antilog","antilogarithm","antimacassar","antimagnetic","antimalarial","antimatter","antimeson","antimetabolite","antimicrobial","antimicrobic","antimonial","antimonic","antimonious","antimonopoly","antimony","antimuon","antimycin","antimycotic","antineoplastic","antineutrino","antineutron","antinode","antinomasia","antinomian","antinomianism","antinomy","antioxidant","antioxidants","antiparallel","antiparticle","antipasto","antipathetic","antipathetical","antipathy","antipersonnel","antiperspirant","antiphlogistic","antiphon","antiphonal","antiphonary","antiphony","antiphrasis","antipodal","antipode","antipodean","antipollution","antipope","antiproton","antiprotozoal","antipruritic","antipsychotic","antipyresis","antipyretic","antiquarian","antiquark","antiquary","antiquate","antiquated","antique","antiques","antiquing","antiquity","antiredeposition","antisatellite","antisemitic","antisemitism","antisepsis","antiseptic","antisepticize","antisera","antiserum","antisocial","antispasmodic","antistrophe","antistrophic","antisubmarine","antisyphilitic","antitank","antitauon","antitheses","antithesis","antithetic","antithetical","antithetically","antithyroid","antitoxic","antitoxin","antitrade","antitragi","antitragus","antitrust","antitumor","antitumour","antitussive","antitype","antitypic","antitypical","antivenene","antivenin","antivert","antiviral","antler","antlered","antlion","antonius","antonym","antonymous","antonymy","antra","antrorse","antrum","ants","antsy","antwerp","anura","anuran","anuresis","anuretic","anuria","anuric","anurous","anus","anvers","anvil","anxieties","anxiety","anxiolytic","anxious","anxiously","anxiousness","Any","any","anybody","anyhow","anymore","Anyone","anyone","anyplace","anything","Anyway","anyway","anyways","anywhere","aorist","aoristic","aorta","aortae","aortal","aortic","aortitis","aoudad","apace","apadana","apanage","apar","apart","apartheid","apartment","apartments","apathetic","apathetically","apathy","apatite","apatosaur","apatosaurus","apc","ape","apelike","aper","apercu","aperea","aperient","aperiodic","aperitif","aperture","apery","apes","apeshit","apetalous","apex","aphaeresis","aphaeretic","aphagia","aphakia","aphakic","aphanite","aphanitic","aphasia","aphasic","aphelia","aphelion","apheresis","apheretic","aphesis","aphetic","aphid","aphides","aphis","aphonia","aphonic","aphorise","aphorism","aphorist","aphoristic","aphorize","aphotic","aphrodisia","aphrodisiac","aphrodisiacal","aphyllous","apiaceae","apian","apiarian","apiarist","apiary","apical","apices","apiculate","apicultural","apiculture","apiculturist","apiece","aping","apish","apishamore","apivorous","aplacental","aplacophora","aplacophoran","aplanatic","aplasia","aplite","aplitic","aplomb","apnea","apneic","apnoeic","apoapsis","apocalypse","apocalyptic","apocalyptical","apocarpous","apochromatic","apocope","apocrine","apocryphal","apocynaceous","apodal","apodeictic","apodeme","apodictic","apodoses","apodosis","apodous","apoenzyme","apogametic","apogamic","apogamous","apogamy","apogean","apogee","apojove","apolemia","apolitical","apologetic","apologetically","apologetics","apologia","apologies","apologise","apologised","apologises","apologising","apologist","apologize","apologized","apologizes","apologizing","apologue","apology","apolune","apomict","apomictic","apomictical","apomixes","apomixis","apomorphine","aponeuroses","aponeurosis","aponeurotic","apopemptic","apophasis","apophatic","apophatism","apophthegm","apophyseal","apophyses","apophysis","apoplectic","apoplectiform","apoplectoid","apoplexy","apoptosis","aposelene","aposiopeses","aposiopesis","aposiopetic","apostasy","apostate","apostatise","apostatize","apostleship","apostolic","apostolical","apostrophe","apostrophic","apostrophise","apostrophize","apothecary","apothecia","apothecial","apothecium","apothegm","apothegmatic","apothegmatical","apotheose","apotheoses","apotheosis","apotheosise","apotheosize","apotropaic","app","appal","appalachian","appaling","appall","appalled","appalling","appallingly","appalls","appals","appanage","apparatchik","apparatus","apparatuses","apparel","appareled","apparency","apparent","apparently","apparentness","apparition","apparitional","appeal","appealable","appealed","appealing","appealingly","appealingness","appeals","appear","appearance","appearances","appeared","appearing","appears","appeasable","appease","appeased","appeasement","appeaser","appeases","appeasing","appellant","appellate","appellation","appellative","append","appendage","appendaged","appendant","appendectomy","appended","appendicectomy","appendices","appendicitis","appendicle","appendicular","appendicularia","appending","appendix","appends","apperceive","apperception","apperceptive","appertain","appetence","appetency","appetent","appetiser","appetisers","appetising","appetisingly","appetisingness","appetite","appetites","appetitive","appetizer","appetizers","appetizing","appetizingly","appetizingness","applaud","applaudable","applauded","applauder","applauding","applauds","applause","apple","applecart","applejack","applemint","apples","applesauce","applet","applewood","appliance","appliances","applicability","applicable","applicant","applicants","application","applications","applicative","applicator","applicatory","applied","applier","applies","applique","apply","applying","appoggiatura","appoggiature","appoint","appointed","appointee","appointees","appointing","appointive","appointment","appointments","appoints","apportion","apportionable","apportioned","apportioning","apportionment","apposable","appose","apposes","apposing","apposite","appositeness","apposition","appositional","appositive","appositively","appraisal","appraise","appraised","appraiser","appraises","appraising","appreciable","appreciably","appreciate","appreciated","appreciates","appreciating","appreciation","appreciative","appreciatively","appreciativeness","appreciator","apprehend","apprehended","apprehender","apprehending","apprehends","apprehensible","apprehension","apprehensive","apprehensively","apprehensiveness","apprentice","apprenticed","apprenticeship","apprenticing","appressed","apprisal","apprise","apprised","apprize","appro","approach","approachability","approachable","approached","approaches","approaching","approbate","approbation","approbative","approbatory","appropriable","appropriate","appropriated","appropriately","appropriateness","appropriating","appropriation","appropriations","appropriative","appropriator","approval","approvals","approve","approved","approver","approves","approving","approvingly","approx","approx.","approximate","approximately","approximates","approximating","approximation","approximative","appurtenance","appurtenant","apr","APR.","Apr.","apr.","apractic","apraxia","apraxic","apresoline","apricot","april","apron","apropos","apse","apsidal","apsides","apsis","apt","APT.","Apt.","apt.","apteral","apterous","apteryx","aptitude","aptitudinal","aptly","aptness","apulia","aqaba","aqua","aquacultural","aquaculture","aquae","aqualung","aquamarine","aquanaut","aquaphobia","aquaphobic","aquaplane","aquaplaning","aquaria","aquarium","aquatic","aquatint","aquavit","aqueduct","aqueous","aquicultural","aquiculture","aquifer","aquiferous","aquilege","aquilegia","aquiline","aquitania","ar","Arab","arab","arabesque","Arabia","arabia","arabian","arabic","arability","arable","araceous","arachnid","arachnidian","arachnoid","arachnophobia","araglis","aragonite","araguaya","arak","aralia","aramaean","aramaic","arame","aramean","araneida","araneidal","araneidan","araneus","arapahoe","arariba","araroba","araucaria","arava","arawakan","araxes","arb","arbalest","arbalist","arbiter","arbitrable","arbitrage","arbitrager","arbitrageur","arbitraging","arbitral","arbitrament","arbitrarily","arbitrariness","arbitrary","arbitrate","arbitrating","arbitration","arbitrational","arbitrative","arbitrator","arbitrement","arbor","arboraceous","arborary","arboreal","arboreous","arborescent","arboresque","arboreta","arboretum","arborical","arboriculture","arboriculturist","arboriform","arborise","arborist","arborize","arborolatry","arborous","arbors","arborvirus","arborvitae","arbour","arbours","arbovirus","arbutus","arc","arcade","arcades","arcadian","arcana","arcane","arcanum","arccos","arccosecant","arccosine","arccotangent","arcdegree","arced","arcella","arch","archaean","archaebacteria","archaebacterium","archaeobacteria","archaeologic","archaeological","archaeologically","archaeologist","archaeologists","archaeology","archaeopteryx","archaeornis","archaeozoic","archaic","archaicism","archaise","archaism","archaist","archaistic","archaize","archangel","archangelic","archangelical","archbishop","archbishopric","archdeacon","archdeaconry","archdiocesan","archdiocese","archducal","archduchess","archduchy","archduke","archean","arched","archegonia","archegonial","archegoniate","archegonium","archenteron","archeobacteria","archeologic","archeological","archeologically","archeologist","archeologists","archeology","archeopteryx","archeozoic","archepiscopal","archer","archerfish","archerfishes","archery","arches","archespore","archesporia","archesporial","archesporium","archetypal","archetype","archetypical","archiannelid","archidiaconal","archidiaconate","archiepiscopal","archil","archimandrite","archine","arching","archipallium","archipelagic","archipelago","archipelagoes","architect","architectonic","architectonics","architects","architectural","architecturally","architecture","architectures","architeuthis","architrave","archival","archive","archives","archiving","archivist","archly","archness","archosaur","archosaurian","archpriest","archway","arciform","arcing","arcked","arcking","arcminute","arco","arcs","arcsec","arcsecant","arcsecond","arcsin","arcsine","arctan","arctangent","arctic","arctiid","arcuate","arcus","arda","ardeb","ardent","ardently","ardor","ardour","ards","arduous","arduously","arduousness","ARE","Are","are","area","areal","areas","areaway","areca","arecaceae","areflexia","AREN'T","Aren't","aren't","arena","arenaceous","arenas","arenavirus","arenicolous","ARENT","Arent","arent","AREN\u2019T","Aren\u2019t","aren\u2019t","areola","areolae","areolar","areolate","arere","arete","arethusa","argal","argali","argasid","argemone","argent","argentic","argentiferous","Argentina","argentina","argentine","argentinian","argentinosaur","argentite","argentous","argil","argillaceous","argillite","arginine","argive","argon","argonaut","argonne","argonon","argosy","argot","arguable","arguably","argue","argued","arguer","argues","argufied","argufy","arguing","argument","argumenta","argumentation","argumentative","argumentatively","arguments","argumentum","argyle","argyll","argyrodite","argyrol","arhant","aria","arianist","arianrod","aricara","arid","aridity","aridness","arietta","ariette","aright","aril","ariled","arillate","ariose","arioso","arise","arisen","arises","arishth","arising","arista","aristae","aristocort","aristocracy","aristocrat","aristocratic","aristocratical","aristocratically","aristocrats","aristopak","aristotelean","aristotelian","aristotelic","arithmancy","arithmetic","arithmetical","arithmetically","arithmetician","arity","ARIZ.","Ariz.","ariz.","arizona","arizonian","ark","ARK.","Ark.","ark.","arkansas","arkansawyer","arles","arm","armada","armadillo","armageddon","armament","armamentaria","armamentarium","armature","armband","armchair","armed","armenian","armet","armful","armguard","armhole","armies","armiger","armilla","armillary","armin","arming","arminian","armistice","armless","armlet","armlike","armoire","armor","armored","armorer","armorers","armorial","armories","armory","armour","armoured","armourer","armourers","armouries","armoury","armpit","armrest","arms","army","armyworm","arng","arnica","aroid","aroma","aromatherapy","aromatic","aromatise","aromatize","arose","arouet","Around","around","arousal","arouse","aroused","arouser","arouses","arousing","arpeggio","arpent","arquebus","arrack","arraign","arraignment","arrange","arranged","arrangement","arrangements","arranger","arranges","arranging","arrant","arras","array","arrayed","arraying","arrays","arrears","arrest","arrested","arrester","arresting","arrests","arrhythmia","arrhythmic","arrhythmical","arrival","arrivals","arrive","arrived","arrivederci","arriver","arrives","arriving","arriviste","arroba","arrogance","arrogant","arrogantly","arrogate","arrogation","arrogator","arrow","arrowhead","arrowheads","arrowroot","arrows","arrowsmith","arrowworm","arroyo","ars","arse","arsehole","arsenal","arsenate","arsenic","arsenical","arsenide","arsenious","arsenopyrite","arses","arsine","arsis","arson","arsonist","art","artal","artaxerxes","artefact","artefacts","artefactual","artel","artemisia","arteria","arterial","arterialise","arterialize","arteriectasia","arteriectasis","arteries","arteriogram","arteriography","arteriola","arteriolar","arteriole","arteriolosclerosis","arterioscleroses","arteriosclerosis","arteriosclerotic","arteriovenous","arteritis","artery","artesian","artful","artfully","artfulness","arthralgia","arthralgic","arthritic","arthritis","arthrocentesis","arthrodesis","arthrogram","arthrography","arthromere","arthromeric","arthropathy","arthroplasty","arthropod","arthropodal","arthropodan","arthropodous","arthroscope","arthroscopy","arthrospore","arthrosporic","arthrosporous","arthurian","artichoke","article","articled","articles","articular","articulary","articulate","articulated","articulately","articulateness","articulates","articulating","articulatio","articulation","articulative","articulator","articulatory","artier","artiest","artifact","artifacts","artifactual","artifice","artificer","artificial","artificiality","artificially","artillery","artilleryman","artiodactyl","artiodactylous","artisan","artisans","artist","artiste","artistic","artistically","artistry","artists","artless","artlessly","artlessness","arts","Artsakh","artsakh","artsd","artwork","arty","arugula","arui","arum","arundinaceous","aruspex","aruspices","aryan","arytaenoid","arytenoid","As","as","asadha","asafetida","asafoetida","asala","asamiya","asana","asap","asarabacca","asat","asbestos","asbestosis","ascariasis","ascend","ascendable","ascendance","ascendancy","ascendant","ascendence","ascendency","ascendent","ascender","ascendible","ascending","ascends","ascensional","ascensive","ascent","ascertain","ascertainable","ascertained","ascertaining","ascertains","asceses","ascesis","ascetic","ascetical","ascetically","asceticism","aschelminthes","asci","ascidia","ascidian","ascidium","ascii","ascites","ascitic","asclepiad","asclepiadaceous","asclepius","ascocarp","ascocarpous","ascogonia","ascogonium","ascolichen","ascoma","ascomycete","ascomycetous","ascomycotina","ascospore","ascosporic","ascosporous","ascot","ascribable","ascribe","ascribed","ascribes","ascribing","ascription","ascus","asdic","asea","asean","asepsis","aseptic","asexual","asexuality","asexually","Ash","ash","ashame","ashamed","ashamedly","ashbin","ashcake","ashcan","ashen","ashes","ashier","ashiest","ashing","ashir","ashkenazi","ashkenazim","ashlar","ashore","ashram","ashtoreth","ashtray","ashy","asian","asiatic","aside","asinine","asininity","ask","askance","askant","asked","asker","askew","asking","asklepios","asks","asl","aslant","asleep","aslope","asmera","asocial","asp","aspadana","asparaginase","asparagine","asparagus","aspartame","aspect","aspects","aspectual","aspen","asper","aspergill","aspergilla","aspergillales","aspergilli","aspergilloses","aspergillosis","aspergillum","aspergillus","asperity","asperse","aspersion","aspersoria","aspersorium","asphalt","asphaltic","aspheric","aspherical","asphodel","asphyxia","asphyxiate","asphyxiated","asphyxiating","asphyxiation","asphyxiator","aspic","aspidistra","aspinwall","aspirant","aspirate","aspiration","aspirations","aspirator","aspire","aspired","aspirer","aspires","aspirin","aspiring","aspis","ASQ","asq","asquint","ass","assagai","assail","assailability","assailable","assailant","assailed","assailing","assamese","assassin","assassinate","assassinated","assassinates","assassinating","assassination","assassinations","assassinator","assault","assaulter","assaulting","assaultive","assaults","assay","assayer","assaying","assays","assegai","assegais","assemblage","assemble","assembled","assembler","assembles","assemblies","assembling","assembly","assemblyman","assemblywoman","assent","assenter","assentient","assenting","assents","assert","assertable","asserted","asserter","asserting","assertion","assertions","assertive","assertively","assertiveness","asserts","asses","assess","assessable","assessed","assessee","assesses","assessing","assessment","assessments","assessor","asset","assets","asseverate","asseverating","asseveration","asseverator","assfuck","assfucking","asshole","assibilate","assibilation","assiduity","assiduous","assiduously","assiduousness","assign","assignable","assignation","assigned","assignee","assigning","assignment","assignments","assignor","assigns","assimilable","assimilate","assimilates","assimilating","assimilation","assimilative","assimilator","assimilatory","assist","assistance","assistant","assistants","assisted","assisting","assistive","assists","assize","ASSOC.","Assoc.","assoc.","associability","associable","associableness","associate","associated","associates","associateship","associating","association","associational","associationism","associations","associative","associatory","assoil","assonance","assonant","assonate","assort","assorted","assortment","assouan","assuage","assuagement","assuaging","assuan","assuasive","assume","assumed","assumes","assuming","assumption","assumptions","assumptive","assurance","assurances","assurbanipal","assure","assured","assuredly","assuredness","assures","assurgent","assuring","ast","astacura","astasia","astatic","astatine","aster","asteraceae","astereognosis","asteriated","asterion","asterisk","asterisked","asterism","asterismal","astern","asternal","asteroid","asteroidal","asterope","asthenia","asthenic","asthenopia","asthenosphere","astheny","asthma","asthmatic","astigmatic","astigmatism","astigmia","astilbe","astir","astomatal","astomatous","astonied","astonish","astonished","astonishing","astonishingly","astonishment","astound","astounded","astounding","astoundingly","astounds","astraddle","astragal","astragalar","astragali","astragalus","astral","astrantia","astraphobia","astray","astride","astringe","astringence","astringency","astringent","astrobiology","astrocyte","astrocytic","astrodome","astrodynamics","astrogate","astrogator","astroglia","astrolabe","astrolatry","astrologer","astrological","astrologist","astrology","astrometry","astronaut","astronautic","astronautical","astronautics","astronavigation","astronomer","astronomers","astronomic","astronomical","astronomically","astronomy","astrophysical","astrophysicist","astrophysics","astute","astutely","astuteness","astylar","asunder","asur","asurbanipal","asvina","asylum","asymmetric","asymmetrical","asymmetrically","asymmetry","asymptomatic","asymptote","asymptotic","asymptotically","asynchronism","asynchronous","asynchrony","asynclitism","asyndeta","asyndetic","asyndeton","asynergia","asynergic","asynergy","asystole","At","at","atabrine","atactic","atakapan","atar","ataractic","atarax","ataraxia","ataraxic","ataraxis","atavism","atavist","atavistic","ataxia","ataxic","ataxy","atayalic","ate","atelectasis","ateleiosis","ateleiotic","atelier","ateliosis","atenolol","atf","athabascan","athabaskan","athanor","athapascan","athar","atheism","atheist","atheistic","atheistical","atheists","athenaeum","atheneum","athenian","atherodyde","atherogenesis","atheroma","atheromata","atheromatic","atheromatous","atheroscleroses","atherosclerosis","atherosclerotic","athetosis","athinai","athirst","athlete","athletes","athletic","athleticism","athletics","athodyd","athwart","athyriaceae","atilt","ativan","atlantic","atlantides","atm","atmolyses","atmolysis","atmometer","atmosphere","atmospheric","atmospherical","atmospherics","atole","atoll","atom","atomic","atomisation","atomise","atomiser","atomism","atomistic","atomistical","atomization","atomize","atomizer","atoms","aton","atonal","atonalism","atonalistic","atonality","atonally","atone","atonement","atonia","atonic","atonicity","atoning","atony","Atop","atop","atopognosia","atopognosis","atopy","atorvastatin","atoxic","atp","atrabilious","atrazine","atresia","atria","atrial","atrioventricular","atrip","atrium","atrocious","atrociously","atrociousness","atrocities","atrocity","atrophedema","atrophic","atrophied","atrophy","atrophying","atropine","atrovent","attacapa","attacapan","attach","attachable","attache","attached","attaches","attaching","attachment","attachments","attack","attacked","attacker","attacking","attacks","attain","attainability","attainable","attainableness","attainder","attained","attaining","attainment","attains","attaint","attar","attemper","attempt","attempted","attempter","attempting","attempts","attend","attendance","attendant","attendants","attended","attendee","attendees","attender","attending","attends","attention","attentional","attentive","attentively","attentiveness","attenuate","attenuated","attenuates","attenuating","attenuation","attenuator","attest","attestant","attestation","attestator","attested","attester","attesting","attestor","attests","attic","attilio","attire","attired","attitude","attitudes","attitudinal","attitudinise","attitudinize","attitudinizing","attorn","attorney","attorneys","attorneyship","attosecond","attract","attractable","attracted","attracter","attracting","attraction","attractions","attractive","attractively","attractiveness","attractor","attracts","attributable","attribute","attributed","attributes","attributing","attribution","attributive","attributively","attrited","attrition","attritional","attune","atypic","atypical","atypicality","atypically","au","auberge","aubergine","auburn","auc","auction","auctioned","auctioneer","auctioning","auctions","auctorial","aud","audacious","audaciously","audaciousness","audacity","audad","audenesque","audibility","audible","audibleness","audibly","audience","audiences","audile","audio","audiocassette","audiogram","audiology","audiometer","audiometric","audiometry","audiotape","audiovisual","audit","audited","auditing","audition","auditioning","auditive","auditor","auditoria","auditorium","auditors","auditory","audits","aug","AUG.","Aug.","aug.","augean","augend","auger","aught","augite","augitic","augment","augmentation","augmentative","augmented","augmentin","augmenting","augur","auguring","augury","August","august","augustan","auk","auklet","auld","aum","aunt","auntie","aunts","aunty","aura","aurae","aural","aurally","aurar","aureate","aurei","aurelius","aureole","aureomycin","aureus","auric","auricle","auricula","auriculae","auricular","auriculare","auriculate","auriculated","auriculoventricular","auriferous","auriform","aurify","auriscope","aurochs","aurora","aurorae","auroral","aurorean","auroscope","aurous","auscultate","auscultation","auscultatory","auspex","auspicate","auspice","auspicious","auspiciously","auspiciousness","aussie","austenite","austenitic","austere","austerely","austereness","austerity","austral","australasian","Australia","australia","australian","australopithecine","australopithecus","Austria","austria","austrian","austronesian","autacoid","autacoidal","autarchic","autarchical","autarchy","autarkic","autarkical","autarky","auteur","authentic","authentically","authenticate","authenticated","authentication","authenticator","authenticity","author","authored","authoress","authorial","authoring","authorisation","authorise","authorised","authoriser","authorises","authorising","authoritarian","authoritarianism","authoritative","authoritatively","authorities","authority","authorization","authorize","authorized","authorizer","authorizes","authorizing","authors","authorship","autism","autistic","auto","autoantibodies","autoantibody","autobahn","autobiographer","autobiographic","autobiographical","autobiography","autobus","autocatalyses","autocatalysis","autocatalytic","autochthon","autochthonal","autochthones","autochthonic","autochthonous","autochthony","autoclave","autoclaving","autocoid","autocracy","autocrat","autocratic","autocratically","autocue","autodidact","autodidactic","autoecious","autoerotic","autoeroticism","autoerotism","autofluorescence","autofluorescent","autofocus","autogamic","autogamous","autogamy","autogenesis","autogenetic","autogenic","autogenics","autogenous","autogeny","autogiro","autograft","autograph","autographed","autographic","autographing","autographs","autogyro","autoicous","autoimmune","autoimmunity","autoinjector","autolatry","autoloader","autoloading","autologous","autolysis","autolytic","automaker","automakers","automat","automata","automate","automated","automates","automatic","automatically","automating","automation","automatise","automatism","automatize","automaton","automatonlike","automobile","automobiles","automobilist","automotive","automysophobia","autonomic","autonomous","autonomy","autophyte","autophytic","autopilot","autoplastic","autoplasty","autopsy","autoradiograph","autoradiographic","autoradiography","autoregulation","autosemantic","autosexing","autosomal","autosome","autostrada","autosuggestion","autotelic","autotelism","autotomic","autotomise","autotomize","autotomy","autotroph","autotrophic","autotype","autotypic","autotypy","autumn","autumnal","auxesis","auxetic","auxiliary","auxin","auxinic","avadavat","avail","availability","available","availableness","availing","avalanche","avalanches","avalanching","avalokiteshvara","avaram","avarice","avaricious","avariciously","avariciousness","avaritia","avascular","avatar","AVE.","Ave.","ave.","avellan","avellane","avenge","avenged","avenger","avengers","avenges","avenging","avens","aventail","aventurine","avenue","avenues","aver","average","averaged","averageness","averages","averaging","averment","averred","averring","averse","aversion","aversive","avert","avertable","averted","avertible","averting","averts","avestan","avian","avianise","avianize","aviary","aviate","aviation","aviator","aviatress","aviatrix","avid","avidity","avidly","avidness","avifauna","avifaunal","avifaunistic","avionic","avionics","avirulent","avitaminoses","avitaminosis","avitaminotic","avo","avocado","avocation","avocational","avocet","avoid","avoidable","avoidance","avoided","avoiding","avoids","avoirdupois","avouch","avouchment","avow","avowal","avowed","avowedly","avower","avowing","avulse","avulsion","avuncular","Aw","aw","await","awaited","awaiting","awaits","awake","awaken","awakened","awakening","awakes","awaking","award","awarded","awarding","awards","aware","awareness","awash","away","awayness","awe","aweary","awed","aweigh","aweless","awesome","awestricken","awestruck","awful","awfully","awfulness","awheel","awhile","awing","awkward","awkwardly","awkwardness","awl","awless","awlwort","awn","awned","awning","awninged","awnless","awny","awoke","awol","awry","Aww","aww","ax","axe","axed","axenic","axerophthol","axes","axial","axially","axil","axile","axilla","axillae","axillary","axing","axiological","axiology","axiom","axiomatic","axiomatical","axiomatically","axioms","axis","axle","axletree","axolemma","axolotl","axon","axonal","axone","axons","axseed","ayah","ayapana","ayatollah","ayin","azactam","azadirachtin","azalea","azaleastrum","azathioprine","azedarach","azederach","azerbaijani","azerbajdzhan","azide","azido","azimuth","azimuthal","azithromycin","azo","azoic","azoimide","azonal","azonic","azotaemia","azote","azotemia","azotemic","azotic","azoturia","azt","aztreonam","azure","azurite","azygos","azygous","azymia","b.","B.C.","b.c.","b/c","b4","ba","baa","baba","babassu","babbitt","babbitting","babble","babbler","babbling","babe","babel","babelike","babied","babies","babiroussa","babirusa","babirussa","babka","baboo","baboon","baboonish","babu","babushka","baby","babyhood","babyish","babylonian","babyminder","babysit","babysitter","babysitting","babytalk","bacca","baccalaureate","baccarat","baccate","bacchanal","bacchanalia","bacchanalian","bacchant","bacchante","bacchantes","bacchantic","bacchic","bacchii","bacchius","bacciferous","baccivorous","baccy","bach","bachelor","bachelorette","bachelorhood","bacillar","bacillary","bacilli","bacilliform","bacillus","bacitracin","back","backache","backband","backbeat","backbench","backbencher","backbend","backbite","backbiter","backblast","backboard","backbone","backbreaking","backchat","backcloth","backcross","backcrossing","backdate","backdated","backdating","backdoor","backdown","backdrop","backed","backer","backers","backfield","backfire","backfired","backfires","backfiring","backflow","backflowing","backgammon","background","backgrounder","backgrounding","backgrounds","backhand","backhanded","backhander","backhoe","backing","backlash","backless","backlighting","backlog","backmost","backpack","backpacker","backpacking","backpedal","backpedaled","backpedaling","backpedalled","backpedalling","backplate","backrest","backroom","backs","backsaw","backscatter","backscratcher","backseat","backsheesh","backside","backslap","backslapper","backslide","backslider","backsliding","backspace","backspacer","backspin","backstage","backstair","backstairs","backstay","backstitch","backstop","backstroke","backstroker","backswept","backswimmer","backsword","backtalk","backtrack","backtracking","backtracks","backup","backward","backwardness","backwards","backwash","backwater","backwoods","backwoodsman","backyard","bacon","bacteremia","bacteremic","bacteria","bacteriacide","bacteriaemia","bacterial","bacterially","bactericidal","bactericide","bacteriemia","bacteriochlorophyll","bacterioid","bacterioidal","bacteriologic","bacteriological","bacteriologist","bacteriology","bacteriolysis","bacteriolytic","bacteriophage","bacteriophagic","bacteriophagous","bacteriostases","bacteriostasis","bacteriostat","bacteriostatic","bacterise","bacterium","bacterize","bacteroid","bacteroidal","bacula","baculiform","baculum","bad","badass","baddeleyite","baddie","badge","badger","badgerer","badgering","badging","badinage","badlands","badly","badminton","badmouth","badmouthing","badness","baeda","baffle","baffled","bafflement","baffling","bag","bagascosis","bagasse","bagassosis","bagatelle","bagdad","bagel","bagels","bagful","baggage","baggageman","bagged","bagger","baggier","baggiest","bagging","baggy","bagman","bagnio","bagpipe","bagpiper","bags","baguet","baguette","bahai","Bahamas","bahamas","bahamian","bahasa","Bahrain","bahrain","bahraini","bahrein","bahreini","baht","baic","bail","bailable","bailed","bailee","bailiff","bailiffship","bailing","bailiwick","bailment","bailor","bailout","bairiki","bairn","baisa","bait","baiting","baiza","baize","bake","bakeapple","baked","bakehouse","baker","bakery","bakeshop","baking","baklava","baksheesh","bakshis","bakshish","balaclava","balagan","balalaika","balance","balanced","balancer","balances","balancing","balanitis","balanoposthitis","balas","balata","balbriggan","balconied","balconies","balcony","bald","baldachin","balderdash","baldhead","balding","baldly","baldness","baldpate","baldr","baldric","baldrick","baldy","bale","baleen","balefire","baleful","balefully","balefulness","balibago","baling","balk","balkanise","balkanize","balkanizing","balked","balker","balkier","balkiest","balkiness","balking","balkline","balks","balky","ball","ballad","ballade","balladeer","ballads","ballast","ballcock","balldress","ballerina","ballet","balletic","balletomane","balletomania","ballgame","balling","ballista","ballistae","ballistic","ballistics","ballistite","ballistocardiogram","ballistocardiograph","ballock","balloon","ballooned","balloonfish","ballooning","balloonist","balloons","ballot","balloting","ballots","ballottement","ballpark","ballpen","ballplayer","ballpoint","ballroom","balls","ballup","bally","ballyhoo","ballyhooed","ballyrag","ballyragged","ballyragging","balm","balmier","balmiest","balmily","balminess","balmy","baloney","balsa","balsam","balsamic","balsamroot","balsamy","balthasar","baltic","baluchi","baluster","balustrade","balzacian","Bam","bam","bambini","bambino","bamboo","bamboozle","bamboozled","bamboozles","ban","banal","banality","banana","bananas","banausic","band","bandage","bandaged","bandages","bandaging","bandana","bandanna","bandbox","bandeau","bandeaux","banded","bandelet","bandelette","banderilla","banderillero","bandicoot","bandied","bandier","bandiest","banding","bandit","banditry","banditti","bandleader","bandlet","bandmaster","bandoleer","bandolier","bandoneon","bands","bandsaw","bandsman","bandstand","bandtail","bandwagon","bandwidth","bandy","bandyleg","bane","baneberry","baneful","banefully","bang","banger","banging","bangla","Bangladesh","bangladesh","bangladeshi","bangle","bangs","bangtail","bani","banian","banish","banished","banishes","banishing","banishment","banister","banisters","banjo","banjoes","bank","bankable","bankbook","banker","bankers","banking","banknote","bankroll","bankrolling","bankrupt","bankruptcy","bankrupting","banks","banksia","bankster","banned","banner","banneret","bannerlike","banners","banning","bannister","bannisters","bannock","banns","banquet","banqueting","banquette","bans","banshee","banshie","bantam","bantamweight","banteng","banter","bantering","banteringly","bantoid","bantu","banyan","banzai","baobab","bap","baptise","baptised","baptises","baptising","baptism","baptismal","baptistery","baptistic","baptistry","baptize","baptized","baptizes","baptizing","bar","baranduki","barb","barbacan","barbadian","Barbados","barbados","barbarian","barbaric","barbarisation","barbarise","barbarism","barbarity","barbarization","barbarize","barbarossa","barbarous","barbarously","barbarousness","barbasco","barbate","barbecue","barbecued","barbecueing","barbecuing","barbed","barbel","barbell","barbellate","barbeque","barber","barberry","barbershop","barbet","barbette","barbican","barbital","barbitone","barbiturate","barbu","Barbuda","barbuda","barbwire","barcarole","barcarolle","bard","barde","bardic","bardolatry","bare","bareback","barebacked","bareboat","bareboating","bared","barefaced","barefacedly","barefoot","barefooted","barehanded","bareheaded","barelegged","barely","bareness","barf","barfing","bargain","bargained","bargainer","bargaining","bargains","barge","bargee","bargello","bargeman","barges","barging","baric","barilla","baring","barish","barite","baritone","barium","bark","barkeep","barkeeper","barker","barking","barklice","barklouse","barks","barky","barley","barleycorn","barm","barmaid","barman","barmbrack","barmier","barmiest","barmy","barn","barnacle","barnburner","barndoor","barnful","barnstorm","barnstormer","barnstorming","barnstorms","barnyard","barograph","barographic","barometer","barometric","barometrical","baron","baronage","baronduki","baroness","baronet","baronetage","baronetcy","baronetise","baronetize","barong","baronial","barony","baroque","baroqueness","baroreceptor","barosaur","barosaurus","barouche","barque","barrack","barracking","barracks","barracouta","barracuda","barrage","barraging","barramundi","barramundies","barrater","barrator","barratry","barred","barrel","barreled","barrelfish","barrelful","barrelhouse","barreling","barrelled","barrelling","barrels","barren","barrenness","barrenwort","barrette","barretter","barricade","barricaded","barricading","barricado","barrier","barriers","barring","barrio","barrister","barroom","barrow","barrowful","bars","bart","bartender","barter","bartered","barterer","bartonia","barunduki","barycenter","barye","baryon","baryta","barytes","barytic","barytone","basal","basalt","basaltic","bascule","base","baseball","baseboard","baseborn","based","baseless","baseline","basely","basement","basements","baseness","basenji","bases","bash","bashes","bashful","bashfully","bashfulness","bashing","basia","basic","basically","basics","basidia","basidial","basidiocarp","basidiolichen","basidiomycete","basidiomycetous","basidiomycotina","basidiospore","basidiosporous","basidium","basified","basifixed","basify","basil","basilar","basilary","basileis","basileus","basilica","basilican","basilisk","basin","basinal","basined","basinet","basinful","basing","basipetal","basis","basiscopic","bask","basket","basketball","basketeer","basketful","basketmaker","basketry","baskets","basketweaver","basking","basks","basle","basophil","basophile","basophilia","basophilic","bass","bassarisk","basset","bassi","bassine","bassinet","bassist","basso","bassoon","bassoonist","basswood","bastard","bastardisation","bastardise","bastardised","bastardises","bastardising","bastardization","bastardize","bastardized","bastardizes","bastardizing","bastardly","bastards","bastardy","baste","baster","bastille","bastinado","bastinadoes","basting","bastion","bastioned","bastnaesite","bastnasite","basuco","basuto","basutoland","bat","batch","batches","batching","bate","bateau","bateaux","bated","batfish","batfishes","batfowl","bath","bathe","bathed","bather","bathes","bathetic","bathhouse","bathing","batholite","batholith","batholithic","batholitic","bathometer","bathos","bathrobe","bathroom","bathrooms","baths","bathtub","bathyal","bathymeter","bathymetric","bathymetrical","bathymetry","bathyscape","bathyscaph","bathyscaphe","bathysphere","batik","bating","batiste","batman","batoidei","baton","batrachia","batrachian","batrachomyomachia","bats","batsman","batswana","battalion","batted","batten","battening","batter","battercake","battered","batteries","battering","batters","battery","battier","battiest","batting","battle","battleax","battleaxe","battled","battledore","battlefield","battlefront","battleful","battleground","battlement","battlemented","battler","battles","battleship","battlesight","battlewagon","battling","battue","batty","batwing","bauble","baud","baulk","baulked","baulker","baulkier","baulkiest","baulking","baulks","baulky","bauxite","bauxitic","bavarian","bawbee","bawd","bawdier","bawdiest","bawdily","bawdiness","bawdry","bawdy","bawdyhouse","bawl","bawler","bawling","bay","baya","bayat","bayberry","baycol","bayer","bayesian","baying","baykal","bayonet","bayonetted","bayonetting","bayou","bays","bazaar","bazar","bazillion","bazooka","bbl","bc","BCCI","bcci","bce","bcoz","bdellium","be","beach","beachball","beachcomber","beaches","beachfront","beachhead","beaching","beachwear","beacon","bead","beaded","beadier","beadiest","beading","beadle","beadlike","beads","beadsman","beadsmen","beadwork","beady","beagle","beagling","beak","beaked","beaker","beakless","beaklike","beam","beamed","beaming","beamish","beams","beamy","bean","beanbag","beanball","beaner","beanfeast","beanie","beano","beans","beanstalk","beantown","beany","bear","bearable","bearberry","bearcat","beard","bearded","beardless","beardown","bearer","bearing","bearings","bearish","bearnaise","bears","bearskin","bearwood","beast","beastlier","beastliest","beastliness","beastly","beasts","beat","beatable","beaten","beater","beatific","beatification","beatified","beatify","beating","beatnik","beats","beau","beaugregory","beaut","beauteous","beauteousness","beautician","beauties","beautification","beautified","beautifies","beautiful","beautifully","beautify","beautifying","beauty","beaux","beaver","bebop","becalm","becalmed","became","Because","because","bechamel","bechance","becharm","bechuana","beck","beckon","beckoning","beckons","becloud","become","becomes","becoming","becomingly","becomingness","bed","beda","bedamn","bedaub","bedaubed","bedaze","bedazzle","bedbug","bedchamber","bedclothes","bedcover","bedded","bedder","bedding","bedeck","bedecking","bedesman","bedevil","bedeviled","bedeviling","bedevilled","bedevilling","bedevilment","bedevils","bedew","bedewed","bedewing","bedfast","bedfellow","bedframe","bedground","bedhop","bedight","bedim","bedimmed","bedimming","bedizen","bedlamite","bedless","bedpan","bedpost","bedraggle","bedraggled","bedrest","bedrid","bedridden","bedrock","bedroll","bedroom","bedrooms","beds","bedside","bedsit","bedsitter","bedsore","bedspread","bedspring","bedstead","bedstraw","bedtime","beduin","bedwetter","bee","beebalm","beebread","beech","beechen","beechnut","beechwood","beef","beefalo","beefburger","beefcake","beefeater","beefed","beefier","beefiest","beefing","beefsteak","beefwood","beefy","beehive","beekeeper","beekeeping","beeline","beelzebub","been","beep","beeper","beeping","beeps","beer","beerier","beeriest","beers","beery","bees","beeswax","beet","beethovenian","beetle","beetles","beetleweed","beetling","beetroot","beets","beeves","befall","befallen","befalling","befell","befit","befitted","befitting","befittingly","befog","befogged","befogging","befool","befooling","Before","before","beforehand","befoul","befouled","befouling","befoulment","befriend","befriended","befriending","befriends","befuddle","befuddled","befuddlement","befuddling","beg","began","beget","begets","begetter","begetting","beggar","beggarly","beggarman","beggarweed","beggarwoman","beggary","begged","begging","begild","begin","beginner","beginning","beginnings","begins","begonia","begot","begotten","begrime","begrimed","begrudge","begs","beguile","beguiled","beguilement","beguiler","beguiling","begum","begun","behalf","behave","behaved","behaves","behaving","behavior","behavioral","behaviorism","behaviorist","behavioristic","behaviorists","behaviors","behaviour","behavioural","behaviourism","behaviourist","behaviouristic","behaviourists","behaviours","behead","beheaded","beheading","behemoth","behest","Behind","behind","behindhand","behmen","behmenism","behold","beholden","beholder","beholding","beholds","behoof","behoove","behooved","behooves","behove","behoved","behoves","behring","beige","beigel","beignet","Being","being","beingness","beings","beirut","bejewel","bejeweled","bejewelled","bejewelling","belabor","belabored","belaboring","belabors","belabour","belaboured","belabouring","belabours","belarusian","belated","belatedly","belau","belay","belaying","belch","belches","belching","beldam","beldame","beleaguer","beleaguered","beleaguering","belemnite","belemnitic","belfry","belgian","belgique","belie","belied","belief","beliefs","believability","believable","believably","believe","believed","believer","believers","believes","believing","believingly","belike","belittle","belittled","belittles","belittling","bell","belladonna","bellarmino","bellbird","bellbottom","bellboy","belle","belletristic","bellflower","bellhop","bellicose","bellicoseness","bellicosity","bellied","belligerence","belligerency","belligerent","belligerently","belling","bellman","bellow","bellower","bellowing","bellpull","bells","bellwether","bellwort","belly","bellyache","bellyacher","bellyaching","bellyband","bellybutton","bellyful","bellying","bellylaugh","bellyless","belmont","belong","belonged","belonging","belongings","belongs","belorussia","belorussian","beloved","below","belowground","belt","belted","belting","beltless","beltlike","belts","beltway","beluga","belvedere","belying","bema","bemire","bemoan","bemoaning","bemoans","bemock","bemuse","bemused","bemusement","bemusing","ben","benadryl","bench","benches","benchmark","bend","bendability","bendable","benday","bended","bender","bendier","bendiest","bending","bendopa","bends","bendy","beneath","benedick","benedictine","benediction","benedictive","benedictory","benefact","benefaction","benefactor","benefactors","benefactress","benefic","benefice","beneficed","beneficence","beneficent","beneficial","beneficially","beneficiaries","beneficiary","beneficiate","beneficiation","benefit","benefited","benefiting","benefits","benefitted","benefitting","benevolence","benevolent","benevolently","benficiate","bengali","benight","benighted","benign","benignancy","benignant","benignantly","benignity","benignly","Benin","benin","beninese","benison","benne","bennet","benni","bennie","benniseed","bent","benthal","benthic","benthonic","benthos","bentonite","bentonitic","bentwood","benumb","benumbed","benweed","benzene","benzenoid","benzine","benzoate","benzocaine","benzodiazepine","benzofuran","benzoic","benzol","benzoquinone","benzyl","benzylic","benzylpenicillin","beograd","beplaster","bequeath","bequeathed","bequeathing","bequeaths","bequest","berate","berated","berates","berating","berceuse","bereave","bereaved","bereavement","bereaves","bereaving","bereft","beret","bergall","bergamot","bergenia","beriberi","berit","berk","berkelium","berm","bermudan","bermudian","berne","beroe","berretta","berried","berries","berry","berrylike","bersagliere","bersaglieri","berserk","berserker","berth","berthing","beryl","beryllium","beseech","beseeching","beseechingly","beseem","beset","besetting","beshrew","beside","besides","besiege","besieged","besieger","besieging","besmear","besmirch","besmirching","besom","besot","besotted","bespangle","bespatter","bespeak","bespeaking","bespeckle","bespectacled","bespoke","bespoken","bespot","besprent","besprinkle","best","bested","bestial","bestialise","bestiality","bestialize","bestially","bestiary","besting","bestir","bestirred","bestirring","bestow","bestowal","bestowed","bestower","bestowing","bestowment","bestows","bestrew","bestride","bestriding","bestseller","bestubbled","bet","beta","betaine","betatron","betel","beth","bethel","bethink","betide","betimes","betise","betoken","betokening","betray","betrayal","betrayed","betrayer","betraying","betrays","betroth","betrothal","betrothed","bets","betted","better","bettering","betterment","betting","bettong","bettor","betulaceous","between","betweenbrain","betwixt","bevatron","bevel","beveled","beveling","bevelled","bevelling","beverage","beverages","bevies","bevvies","bevvy","bevy","bewail","bewailing","beware","bewhisker","bewhiskered","bewilder","bewildered","bewilderedly","bewildering","bewilderingly","bewilderment","bewitch","bewitched","bewitchery","bewitching","bewitchingly","bewitchment","bewray","bextra","bey","beyond","bezant","bezel","bezique","bezzant","bhadrapada","bhagavadgita","bhakti","bhang","bharat","bheesty","bhishties","Bhutan","bhutan","bhutanese","bhutani","bi","bi-polar","bialy","bialystoker","biannual","biannually","bias","biased","biases","biasing","biassed","biassing","biaural","biauricular","biaxal","biaxate","biaxial","bib","bibbed","bibless","biblical","bibliographer","bibliographic","bibliographical","bibliography","bibliolatrous","bibliolatry","bibliomania","bibliomaniacal","bibliophile","bibliophilic","bibliopole","bibliopolic","bibliopolist","bibliothec","bibliotheca","bibliothecae","bibliothecal","bibliothecarial","bibliotic","bibliotics","bibliotist","bibulous","bicameral","bicapsular","bicarbonate","bicennaries","bicentenary","bicentennial","bicentric","bicephalous","biceps","bichloride","bichromate","bichromated","bichrome","bicipital","bicker","bickered","bickering","bicolor","bicolored","bicolour","bicoloured","biconcave","biconvex","bicorn","bicornate","bicorne","bicorned","bicornuate","bicornuous","bicuspid","bicuspidate","bicycle","bicycler","bicycles","bicyclic","bicycling","bicyclist","bicylindrical","bid","bida","biddable","bidder","bidders","bidding","biddy","bide","bidentate","bidet","biding","bidirectional","bids","biedermeier","biennial","biennially","bier","biface","bifacial","biff","bifid","bifilar","biflagellate","bifocal","bifocals","bifoliate","biform","bifurcate","bifurcated","bifurcates","bifurcating","bifurcation","big","bigamist","bigamous","bigamy","bigarade","bigeminal","bigeneric","bigeye","bigger","biggest","biggin","biggish","bighead","bigheaded","bighearted","bigheartedness","bight","bigmouthed","bigness","bignoniaceous","bignoniad","bigos","bigot","bigoted","bigotry","bigram","bigwig","bijou","bijoux","bike","biker","bikes","bilabial","bilabiate","bilateral","bilateralism","bilaterality","bilaterally","bilberry","bilbo","bilboes","bilby","bile","bilestone","bilge","bilgewater","bilgy","bilharzia","bilharziasis","biliary","bilimbi","bilinear","bilingual","bilingualism","bilingualist","bilingually","bilious","biliousness","bilirubin","bilk","bilking","Bill","bill","billabong","billboard","billboards","billed","billet","billfish","billfishes","billfold","billhook","billiard","billiards","billing","billingsgate","billion","billionaire","billions","billionth","billow","billowing","billows","billowy","bills","billy","billyo","billyoh","billystick","bilobate","bilobated","bilobed","bilocation","bilocular","biloculate","bilsted","biltong","bimanual","bimbo","bimboes","bimester","bimestrial","bimetal","bimetallic","bimetallism","bimetallist","bimetallistic","bimillenary","bimillenial","bimillennium","bimli","bimodal","bimolecular","bimonthly","bimorphemic","bimotored","bin","binary","binate","binaural","binaurally","bind","bindable","binder","bindery","binding","binds","bindweed","bine","binful","bing","binge","bingeing","binger","binging","bingle","bingo","binnacle","binned","binning","binocular","binoculars","binomial","binominal","bins","binturong","binuclear","binucleate","binucleated","bio-analytical","bio-research","bioarm","bioassay","bioattack","biocatalyst","biocatalytic","biochemical","biochemically","biochemist","biochemistry","biochip","bioclimatic","bioclimatology","biodefence","biodefense","biodegradable","biodegrade","biodegrading","biodiversity","bioelectricity","bioengineering","bioethics","biofeedback","bioflavinoid","biogenesis","biogenetic","biogenic","biogenous","biogeny","biogeographic","biogeographical","biogeography","biographer","biographic","biographical","biographies","biography","biohazard","biologic","biological","biologically","biologism","biologist","biologistic","biologists","biology","bioluminescence","bioluminescent","biomass","biome","biomedical","biomedicine","biometrics","biometry","bionic","bionics","bionomic","bionomical","bionomics","biont","biophysicist","biophysics","biopiracy","biopsies","biopsy","bioremediation","biosafety","bioscience","bioscope","biosphere","biostatistics","biosynthesis","biosynthetic","biosystematic","biosystematics","biosystematy","biota","biotech","biotechnology","bioterrorism","biotic","biotin","biotite","biotitic","biotype","biotypic","biovular","bioweapon","biparous","bipartisan","bipartite","bipartizan","biped","bipedal","bipedalism","bipinnate","bipinnatifid","biplane","bipolar","biprism","biquadrate","biquadratic","biracial","biradial","biradially","biramous","birch","birchbark","birchen","bird","birdbath","birdbrain","birdcage","birdcall","birder","birdfeeder","birdhouse","birdie","birdieing","birdies","birding","birdlime","birdnest","birdnesting","birds","birdseed","birdsong","birdwatch","birdwatching","birefringence","birefringent","biretta","biriani","birken","birl","birle","birling","biro","birr","birretta","birth","birthday","birthdays","birthing","birthmark","birthplace","birthrate","birthright","birthroot","births","birthwort","biryani","bisayan","bisayas","biscuit","biscuits","bise","bisect","bisecting","bisection","bisectional","bisectrices","bisectrix","bisects","biserrate","bisexual","bisexuality","bishop","bishopric","bishopry","bishops","biskek","bismarckian","bismark","bismuth","bismuthal","bismuthic","bison","bisontine","bisque","Bissau","bissau","bister","bistered","bistre","bistred","bistro","bistroic","bisulcate","bit","bitartrate","bitch","bitchery","bitches","bitchier","bitchiest","bitchiness","bitching","bitchy","bite","biteplate","biter","bites","bitewing","biting","bitingly","bitmap","bitok","bits","bitstock","bitt","bitten","bitter","bittercress","bitterest","bitterish","bitterly","bittern","bitterness","bitternut","bitterroot","bittersweet","bitterweed","bitterwood","bitthead","bittie","bittier","bittiest","bitty","bitumastic","bitumen","bitumenoid","bituminise","bituminize","bituminoid","bituminous","bivalent","bivalve","bivalved","bivariate","bivouac","bivouacked","bivouacking","biweekly","biyearly","biz","bizarre","bizarreness","bize","bizonal","bja","BJP","bjp","bjs","blab","blabbed","blabber","blabbermouth","blabbermouthed","blabbing","blabby","blabs","black","blackball","blackballing","blackbeard","blackbeetle","blackberried","blackberry","blackbird","blackboard","blackbody","blackbuck","blackcap","blackcock","blackdamp","blacked","blacken","blackened","blackening","blackens","blackest","blackface","blackfeet","blackfish","blackfishes","blackfly","blackfoot","blackfriar","blackguard","blackguardly","blackhead","blackheart","blacking","blackish","blackjack","blacklead","blackleg","blacklegged","blacklegging","blacklist","blackmail","blackmailed","blackmailer","blackmailing","blackmails","blackness","blackout","blackpoll","blacks","blackseed","blacksmith","blacksnake","blacktail","blackthorn","blacktop","blacktopping","blackwash","blackwashes","blackwashing","blackwater","blackwood","bladder","bladderlike","bladdernose","bladderpod","bladderwort","bladderwrack","bladdery","blade","bladed","bladelike","blades","blae","blaeberry","blah","blain","blamable","blame","blameable","blamed","blameful","blameless","blamelessly","blamelessness","blames","blameworthiness","blameworthy","blaming","blanc","blanch","blanched","blanching","blancmange","bland","blandish","blandishment","blandly","blandness","blank","blanket","blanketed","blanketing","blankets","blanking","blankly","blankness","blanquillo","blare","blared","blares","blaring","blarney","blase","blaspheme","blasphemer","blaspheming","blasphemous","blasphemously","blasphemy","blast","blasted","blastema","blastemal","blastemata","blastematic","blastemic","blaster","blasting","blastocele","blastocoel","blastocoele","blastocoelic","blastocyst","blastocyte","blastocytoma","blastoderm","blastodermatic","blastodermic","blastodisc","blastoff","blastogenesis","blastogenetic","blastoma","blastomere","blastomeric","blastomycete","blastomycosis","blastomycotic","blastoporal","blastopore","blastoporic","blastosphere","blastospheric","blasts","blastula","blastulae","blastular","blat","blatancy","blatant","blatantly","blate","blather","blathering","blatherskite","blattaria","blatted","blatting","blaxploitation","blaze","blazer","blazes","blazing","blazon","blazonry","bleach","bleached","bleacher","bleaches","bleaching","bleak","bleakly","bleakness","blear","blearier","bleariest","bleary","bleat","bleating","bleb","blebbed","blebby","bled","bleed","bleeder","bleeding","bleeds","bleep","bleeping","blemish","blemished","blemishes","blench","blend","blende","blended","blender","blending","blends","blennioid","blenny","blepharism","blepharitis","blepharospasm","bless","blessed","blessedly","blessedness","blesses","blessing","blessings","blest","blether","bletia","bleu","blew","blewits","blight","blighted","blighter","blimp","blimpish","blind","blinded","blinder","blindfish","blindfishes","blindfold","blindfolded","blindfolds","blinding","blindly","blindness","blindside","blindsiding","blindworm","bling","blini","blink","blinked","blinker","blinking","blinks","blintz","blintze","bliny","blip","blipped","blipping","bliss","blissful","blissfully","blissfulness","blister","blistering","blistery","blithe","blithely","blitheness","blither","blithering","blithesome","blitt","blitz","blitzing","blitzkrieg","blixen","blizzard","bloat","bloated","bloater","bloating","bloats","blob","blobbed","blobbing","blobing","bloc","blocadren","block","blockade","blockaded","blockading","blockage","blockbuster","blockbusters","blocked","blocker","blockers","blockhead","blockheaded","blockhouse","blocking","blockish","blocks","blocky","blog","blogger","bloke","blokes","blolly","blond","blonde","blondes","blondness","blood","bloodbath","bloodberry","bloodcurdling","blooded","bloodguilt","bloodguilty","bloodhound","bloodied","bloodier","bloodiest","bloodily","bloodiness","bloodleaf","bloodless","bloodlessly","bloodletting","bloodline","bloodlust","bloodmobile","bloodroot","bloodshed","bloodshot","bloodstain","bloodstained","bloodstock","bloodstone","bloodstream","bloodsucker","bloodsucking","bloodthirstier","bloodthirstiest","bloodthirstiness","bloodthirsty","bloodworm","bloodwort","bloody","bloodying","bloom","bloomer","blooming","blooms","blooper","blossom","blossomed","blossoming","blossoms","blot","blotch","blotched","blotchy","blots","blotted","blotter","blotting","blotto","blouse","blouses","bloviate","bloviating","blow","blowback","blowball","blower","blowfish","blowfishes","blowfly","blowgun","blowhard","blowhole","blowier","blowiest","blowing","blowjob","blowlamp","blown","blowout","blowpipe","blows","blowsier","blowsiest","blowsy","blowtorch","blowtube","blowup","blowy","blowzier","blowziest","blowzy","blt","blub","blubbed","blubber","blubberer","blubbering","blubbery","blubbing","bludgeon","bludgeoned","bludgeoner","bludgeoning","blue","bluebell","blueberry","bluebill","bluebird","bluebonnet","bluebottle","bluecoat","bluefin","bluefish","bluefishes","bluegill","bluegrass","bluehead","blueing","blueish","bluejacket","blueness","bluenose","bluepoint","blueprint","bluer","blues","bluest","bluestem","bluestocking","bluestone","bluethroat","bluetick","bluetongue","blueweed","bluewing","bluff","bluffer","bluffing","bluffly","bluffness","bluffs","bluing","bluish","blunder","blunderbuss","blundered","blunderer","blundering","blunt","blunted","blunting","bluntly","bluntness","blur","blurb","blurred","blurriness","blurring","blurry","blurs","blurt","blurting","blush","blusher","blushes","blushful","blushing","bluster","blusterer","blustering","blusterous","blustery","bmdo","bmi","bmr","bmus","bns","boa","boar","board","boarder","boarding","boardinghouse","boardroom","boards","boardwalk","boarfish","boarfishes","boarhound","boast","boasted","boaster","boastful","boastfully","boastfulness","boasting","boasts","boat","boatbill","boatbuilder","boater","boathouse","boating","boatload","boatman","boatmanship","boats","boatswain","boatyard","bob","bobbed","bobber","bobbin","bobbing","bobble","bobby","bobbysock","bobbysoxer","bobcat","bobfloat","bobolink","bobsled","bobsledding","bobsleigh","bobtail","bobtailed","bobwhite","bocce","bocci","boccie","bocconia","boche","bock","bod","bodacious","boddhisatva","bode","bodega","bodensee","bodes","bodge","bodice","bodied","bodies","bodiless","bodily","boding","bodkin","body","bodybuilder","bodybuilding","bodyguard","bodyless","bodypaint","bodywork","boehm","boeotian","boer","boeuf","boffin","boffo","bog","bogartian","bogbean","bogey","bogeying","bogeyman","boggle","boggling","boggy","bogie","bogmat","bogus","bogy","bohemian","bohemianism","bohme","bohrium","boil","boiled","boiler","boilerplate","boilers","boilersuit","boiling","boils","boisterous","boisterously","boisterousness","bok","bokkos","bokmaal","bola","bolanci","bold","bolder","boldest","boldface","boldly","boldness","bolero","bolete","boleti","boletus","bolide","bolingbroke","bolivar","bolivares","Bolivia","bolivia","bolivian","boliviano","boll","bollard","bollix","bollock","bollocks","bollworm","bolo","bologram","bolograph","bolographic","bolometer","bolometric","boloney","bolshevik","bolsheviki","bolshevise","bolshevist","bolshevistic","bolshevize","bolshie","bolshy","bolster","bolstered","bolstering","bolsters","bolt","bolted","bolti","bolting","bolts","bolus","bomb","bombard","bombarded","bombardier","bombarding","bombardment","bombardon","bombast","bombastic","bombastically","bombay","bombazine","bombed","bomber","bombers","bombie","bombilate","bombilation","bombinate","bombination","bombing","bombings","bomblet","bombproof","bombs","bombshell","bombsight","bombycid","bonanza","bonaparte","bonavist","bonbon","bonce","bond","bondable","bondage","bonded","bonderise","bonderize","bondholder","bonding","bondmaid","bondman","bonds","bondsman","bondswoman","bonduc","bondwoman","bone","boned","bonefish","bonefishes","bonehead","boneheaded","boneless","bonelet","bonelike","bonemeal","boner","bones","boneset","bonesetter","boneshaker","boney","bonfire","bong","bongo","bongoes","bonheur","bonhomie","bonier","boniest","boniness","boning","bonito","bonitoes","bonk","bonkers","bonking","bonnet","bonnethead","bonnie","bonnier","bonniest","bonnily","Bonny","bonny","bonobo","bonsai","bonus","bonuses","bonxie","bony","bonyness","bonzer","boo","boob","booboisie","boobs","booby","boodle","booed","booger","boogerman","boogeyman","boogie","boogieing","booing","book","bookable","bookbinder","bookbindery","bookbinding","bookcase","bookclub","bookdealer","booked","bookend","booker","bookfair","bookie","booking","bookish","bookishness","bookkeeper","bookkeeping","booklet","booklice","booklouse","booklover","bookmaker","bookman","bookmark","bookmarker","bookmobile","bookplate","books","bookseller","bookshelf","bookshelves","bookshop","bookstall","bookstore","bookstores","bookworm","boolean","boom","boomed","boomer","boomerang","boomers","booming","boon","boondocks","boondoggle","boor","boorish","boorishly","boorishness","boost","boosted","booster","boosting","boosts","boot","bootblack","bootboys","booted","bootee","booth","boothose","booths","bootie","booting","bootjack","bootlace","bootleg","bootlegged","bootlegger","bootlegging","bootlegs","bootless","bootlick","bootlicker","bootlicking","bootmaker","boots","bootstrap","booty","booyong","booze","boozer","boozes","boozier","booziest","boozing","boozy","bop","bopeep","bopped","bopping","boraces","boracic","borage","borate","borated","borax","borborygmi","borborygmus","bordelaise","bordello","border","bordereau","bordereaux","bordered","borderer","bordering","borderland","borderline","borders","bore","boreal","borecole","bored","boredom","borer","borgia","boric","boring","boringly","boringness","born","borne","bornite","boron","boronic","borosilicate","borough","boroughs","borrelia","borrow","borrowed","borrower","borrowing","borrows","borsch","borscht","borsh","borshch","borsht","borstal","bortsch","borzoi","bosc","boschbok","bosh","bosie","bosk","boskier","boskiest","boskopoid","bosky","Bosnia","bosnia","bosnian","bosom","bosomed","bosomy","boson","boss","bosses","bossier","bossiest","bossing","bossism","bossy","bosun","bot","bota","botanic","botanical","botanise","botanist","botanize","botany","botargo","botargoes","botch","botched","botcher","botchier","botchiest","botching","botchy","botfly","Both","both","bother","botheration","bothered","bothering","bothers","bothersome","botonee","botonnee","botox","botryoid","botryoidal","Botswana","botswana","botswanan","bottle","bottlebrush","bottlecap","bottled","bottlefeed","bottleful","bottleneck","bottlenose","bottler","bottles","bottling","bottom","bottomed","bottoming","bottomland","bottomless","bottomlessness","bottommost","bottoms","botuliform","botulin","botulinal","botulinum","botulinus","botulism","botulismotoxin","bouchee","boucle","boudoir","bouffant","bouffe","bougainvillaea","bougainvillaeas","bougainvillea","bougainvilleas","bough","boughed","boughless","bought","boughten","bouillabaisse","bouillon","bouldered","bouldery","boule","boulevard","boulevardier","boulle","bounce","bounced","bouncer","bounces","bouncier","bounciest","bounciness","bouncing","bouncy","bound","boundaries","boundary","bounded","boundedness","bounden","bounder","bounderish","bounding","boundless","boundlessly","boundlessness","bounds","bounteous","bounteously","bounteousness","bountied","bountiful","bountifully","bountifulness","bounty","bouquet","bourbon","bourdon","bourgeois","bourgeoisie","bourgeon","bourgeoning","bourguignon","bourn","bourne","bourtree","bouse","boustrophedon","boustrophedonic","bout","boutique","boutiques","boutonniere","bouts","bovid","bovine","bovril","bow","bowdlerisation","bowdlerise","bowdlerised","bowdleriser","bowdlerises","bowdlerising","bowdlerization","bowdlerize","bowdlerized","bowdlerizer","bowdlerizes","bowdlerizing","bowed","bowel","bowelless","bower","bowerbird","bowery","bowfin","bowfront","bowhead","bowing","bowknot","bowl","bowlder","bowleg","bowlegged","bowler","bowlful","bowline","bowling","bowls","bowman","bows","bowse","bowsprit","bowstring","bowtie","box","boxberry","boxcar","boxed","boxer","boxers","boxershorts","boxes","boxfish","boxfishes","boxful","boxing","boxlike","boxthorn","boxwood","boxy","boy","boycott","boycotted","boycotting","boycotts","boyfriend","boyfriends","boyhood","boyish","boyishly","boyishness","boylike","boys","boysenberry","boytrose","bozo","bph","bpi","bpm","bps","br","bra","brabble","brace","braced","bracelet","bracelets","bracer","bracero","braces","brachia","brachial","brachiate","brachiation","brachiopod","brachiopodous","brachium","brachycephalic","brachycephalism","brachycephaly","brachycranial","brachycranic","brachydactylia","brachydactylic","brachydactylous","brachydactyly","brachypterous","brachyuran","brachyurous","bracing","bracken","bracket","bracketing","brackets","brackish","brackishness","bract","bracteal","bracteate","bracted","bracteolate","bracteole","bractlet","brad","bradawl","bradycardia","brae","brag","brage","braggadocio","braggart","bragged","bragger","bragging","braggy","brags","brahmin","brahminic","brahminical","brahminism","braid","braided","braiding","brail","braille","brain","braincase","brainchild","brainchildren","brainiac","brainier","brainiest","braining","brainish","brainless","brainpan","brainpower","brains","brainsick","brainstem","brainstorm","brainstorming","brainstorms","brainwash","brainwashed","brainwashes","brainwashing","brainwave","brainworker","brainy","braise","braised","braising","brake","brakeman","brakes","braking","braky","braless","bramble","brambling","brambly","bran","branch","branched","branches","branchia","branchiae","branchial","branchiate","branching","branchiopod","branchiopodan","branchiopodous","branchiostomidae","branchless","branchlet","branchy","brand","branded","branding","brandish","brandished","brandishing","brandmark","brands","brandy","brandyball","brandysnap","brant","brants","bras","brash","brashier","brashiest","brashly","brashness","brashy","brasier","brasil","brass","brassard","brassavola","brassbound","brasserie","brassicaceae","brassie","brassier","brassiere","brassiest","brasslike","brassy","brat","brattice","brattish","brattle","bratty","bratwurst","bravado","bravadoes","brave","braved","bravely","braveness","bravery","bravest","braving","bravo","bravoes","bravura","braw","brawl","brawler","brawling","brawn","brawnier","brawniest","brawniness","brawny","bray","braying","braze","brazen","brazenly","brazenness","brazier","Brazil","brazil","brazilian","brazilwood","breach","breached","breaches","breaching","bread","breadbasket","breadboard","breadbox","breadcrumb","breaded","breadfruit","breading","breadline","breadroot","breadstick","breadstuff","breadth","breadthways","breadthwise","breadwinner","break","breakability","breakable","breakableness","breakage","breakaway","breakax","breakaxe","breakdown","breakdowns","breaker","breakfast","breakfasting","breaking","breakneck","breakout","breaks","breakstone","breakthrough","breakthroughs","breakup","breakwater","bream","breast","breastbone","breasted","breastfeed","breastfeeding","breastfeeds","breastless","breastpin","breastplate","breasts","breaststroke","breaststroker","breastwork","breath","breathalyse","breathalysed","breathalyser","breathalysers","breathalyses","breathalysing","breathalyze","breathalyzed","breathalyzer","breathalyzers","breathalyzes","breathalyzing","breathe","breathed","breather","breathes","breathier","breathiest","breathing","breathless","breathlessly","breathlessness","breathtaking","breathy","breccia","brecciate","bred","breech","breechblock","breechcloth","breechclout","breeched","breechloader","breed","breeder","breeders","breeding","breeds","breeze","breezes","breezier","breeziest","breezily","breeziness","breezing","breezy","bregma","bregmata","bregmatic","breiz","brent","breslau","brethren","breughel","breve","brevet","brevetted","brevetting","breviary","brevibloc","brevicipitidae","brevity","brew","brewage","brewed","brewer","brewery","brewing","brewpub","brews","briar","briard","briarroot","briarwood","briary","bribable","bribe","bribed","briber","bribery","bribes","bribing","brick","brickbat","brickfield","brickkiln","bricklayer","bricklaying","brickle","brickly","bricks","brickwork","brickyard","bricolage","bricole","bridal","bride","bridecake","bridegroom","bridesmaid","bridge","bridgeable","bridgehead","bridges","bridgework","bridging","bridle","bridoon","brief","briefcase","briefed","briefing","briefings","briefless","briefly","briefness","briefs","brier","brierpatch","brierwood","briery","brig","BRIG.","Brig.","brig.","brigade","brigadier","brigand","brigandine","brigantine","bright","brighten","brightened","brightening","brightens","brighter","brightest","brightly","brightness","brigid","brill","brilliance","brilliances","brilliancy","brilliant","brilliantine","brilliantly","brim","brimful","brimfull","brimless","brimmed","brimming","brimstone","brinded","brindle","brindled","brine","bring","bringing","brings","brinier","briniest","brininess","brining","brinjal","brink","brinkmanship","briny","brio","brioche","briony","briquet","briquette","bris","brisance","brisant","brisk","brisken","brisker","brisket","briskly","briskness","brisling","bristle","bristled","bristlegrass","bristlelike","bristles","bristletail","bristliness","bristling","bristly","brit","britain","britannic","britches","brith","briticism","british","britishism","briton","britt","brittanic","brittany","brittle","brittlebush","brittleness","broach","broached","broaching","broad","broadax","broadaxe","broadband","broadbill","broadcast","broadcaster","broadcasters","broadcasting","broadcasts","broadcloth","broaden","broadened","broadening","broadens","broader","broadest","broadleaf","broadleaves","broadloom","broadly","broadness","broadnosed","broadsheet","broadside","broadsword","broadtail","broadwise","brobdingnagian","brocade","brocaded","brocadopa","broccoli","brochette","brochure","brochures","brocket","brodiaea","brogan","brogue","broider","broil","broiled","broiler","broiling","broke","broken","brokenhearted","brokenheartedness","broker","brokerage","brokered","brokering","brokers","brolly","bromate","bromberg","brome","bromegrass","bromeosin","bromic","bromide","bromidic","brominate","bromine","bromoform","bronc","bronchi","bronchial","bronchiolar","bronchiole","bronchiolitis","bronchitic","bronchitis","broncho","bronchodilator","bronchopneumonia","bronchoscope","bronchoscopic","bronchospasm","bronchus","bronco","broncobuster","broncos","brontosaur","brontosaurus","bronze","bronzed","bronzing","bronzy","brooch","brood","brooder","broodier","broodiest","brooding","broodmare","broods","broody","brook","brooklet","brooklime","brookweed","broom","broomcorn","broomstick","broomweed","broth","brothel","brother","brotherhood","brotherlike","brotherly","brothers","brotula","brougham","brought","brouhaha","brow","browallia","browbeat","browbeating","Brown","brown","browned","brownie","browning","brownish","brownness","brownout","brownstone","browntail","browse","browser","browsers","browses","browsing","brucellosis","brucine","bruegel","bruin","bruise","bruised","bruiser","bruises","bruising","bruit","brumal","brummagem","brummy","brumous","brunch","Brunei","brunei","bruneian","brunet","brunette","brunn","brunnhilde","brunswick","brunt","brusa","brush","brushed","brushes","brushing","brushlike","brushup","brushwood","brushwork","brushy","brusk","brusque","brusquely","brusqueness","brussels","brut","brutal","brutalisation","brutalise","brutalised","brutalises","brutalising","brutality","brutalization","brutalize","brutalized","brutalizes","brutalizing","brutally","brute","brutified","brutify","brutish","brutishly","bruxism","bryanthus","brynhild","bryony","bryophyte","bryophytic","bryozoa","bryozoan","bsarch","BSE","bse","bst","btu","BTW","btw","bubaline","bubble","bubblejet","bubbler","bubbles","bubblier","bubbliest","bubbliness","bubbling","bubbly","bubo","buboes","bubonic","buccal","buccaneer","buccaneering","buccula","bucharesti","buck","buckaroo","buckbean","buckboard","bucked","buckeroo","bucket","bucketful","buckets","buckeye","bucking","buckle","buckler","buckles","buckleya","buckling","buckminsterfullerene","bucko","buckoes","buckram","bucks","bucksaw","buckshee","buckshot","buckskin","buckteeth","buckthorn","bucktooth","buckwheat","buckyball","bucolic","bucuresti","bud","budded","buddhist","buddhistic","buddies","budding","buddleia","buddy","budge","budged","budgereegah","budgerigar","budgerygah","budges","budget","budgetary","budgeted","budgets","budgie","budging","buds","buff","buffalo","buffaloes","buffalofish","buffer","bufferin","buffering","buffers","buffet","buffeted","buffeting","buffing","bufflehead","buffoon","buffoonery","buffoonish","buffs","bufo","bug","bugaboo","bugbane","bugbear","bugged","bugger","buggering","buggery","buggier","buggiest","bugginess","bugging","buggy","bugle","bugler","bugleweed","bugloss","bugologist","bugology","bugs","buhl","build","builder","builders","building","buildings","builds","buildup","built","buirdly","bulb","bulbaceous","bulbar","bulbed","bulbil","bulblet","bulblike","bulbous","bulbs","bulbul","Bulgaria","bulgaria","bulgarian","bulge","bulges","bulghur","bulginess","bulging","bulgur","bulgy","bulimarexia","bulimia","bulimic","bulk","bulkhead","bulkier","bulkiest","bulkiness","bulking","bulky","bull","bulla","bullace","bullae","bullate","bullbat","bullbrier","bulldog","bulldogging","bulldoze","bulldozed","bulldozer","bulldozes","bulldozing","bullet","bullethead","bulletin","bulletproof","bullets","bullfight","bullfighter","bullfighting","bullfrog","bullhead","bullheaded","bullheadedness","bullhorn","bullied","bullies","bullion","bullish","bullnecked","bullnose","bullock","bullocky","bullpen","bullring","bullrush","bulls","bullshit","bullshitted","bullshitting","bullshot","bullterrier","bullwhip","bullwhipped","bullwhipping","bully","bullyboy","bullying","bullyrag","bullyragged","bullyragging","bulrush","bulwark","bum","bumble","bumblebee","bumbler","bumbling","bumboat","bumf","bummed","bummer","bumming","bump","bumped","bumper","bumph","bumpier","bumpiest","bumpiness","bumping","bumpkin","bumpkinly","bumps","bumptious","bumptiously","bumptiousness","bumpy","bun","buna","bunce","bunch","bunchberry","bunchgrass","bunchier","bunchiest","bunching","bunchy","bunco","buncombe","bund","bunde","bundle","bundled","bundles","bundling","bunfight","bung","bungaloid","bungalow","bungee","bunghole","bungle","bungled","bungler","bungles","bunglesome","bungling","bunion","bunk","bunker","bunking","bunkmate","bunko","bunks","bunkum","bunnies","bunny","bunt","buntal","bunter","bunting","bunyavirus","buoy","buoyancy","buoyant","buoyantly","buoyed","buoys","bur","burble","burbles","burbling","burbly","burbot","burden","burdened","burdening","burdenless","burdens","burdensome","burdensomeness","burdock","bureau","bureaucracy","bureaucrat","bureaucratic","bureaucratically","bureaucratism","bureaucrats","bureaux","buret","burette","burg","burgeon","burgeoning","burgeons","burger","burgers","burgess","burgh","burgher","burglar","burglarious","burglarise","burglarize","burglarproof","burglary","burgle","burgles","burgling","burgomaster","burgoo","burgrass","burgrave","burial","buried","buries","burin","burka","burke","burked","Burkina","burkina","burl","burlap","burled","burlesque","burlier","burliest","burly","burma","burmese","burn","burnability","burnable","burned","burner","burning","burnish","burnished","burnoose","burnous","burnouse","burns","burnt","burnup","burp","burping","burps","burqa","burr","burrawong","burred","burrfish","burrier","burriest","burring","burrito","burrlike","burro","burrow","burrowing","burrows","burry","bursa","bursae","bursal","bursar","bursary","bursiform","bursitis","burst","burster","bursting","bursts","burthen","Burundi","burundi","burundian","burunduki","bury","burying","bus","busbar","busboy","busby","buses","bush","bushbaby","bushbok","bushboks","bushbuck","bushed","bushel","bushelled","bushelling","bushes","bushier","bushiest","bushing","bushman","bushtit","bushwhack","bushwhacker","bushwhacking","bushy","busied","busier","busiest","busily","business","businesses","businesslike","businessman","businessmen","businesspeople","businessperson","businesswoman","busing","busk","busker","buskin","busking","busload","busman","buspar","buspirone","buss","busses","bussing","bust","bustard","busted","buster","bustier","bustiest","busting","bustle","bustling","busty","busy","busybodied","busybody","busying","busyness","busywork","But","but","butacaine","butadiene","butane","butanol","butanone","butat","butazolidin","butch","butcher","butcherbird","butchering","butcherly","butchers","butchery","butene","buteonine","butler","butt","butter","butterball","butterbean","butterbur","buttercrunch","buttercup","butterfat","butterfingered","butterfingers","butterfish","butterfishes","butterflies","butterflower","butterfly","butterflyfish","buttering","buttermilk","butternut","butterscotch","butterweed","butterwort","buttery","butting","buttinsky","buttock","button","buttoned","buttonhole","buttonhook","buttoning","buttonlike","buttons","buttonwood","buttony","buttress","buttressed","buttresses","buttressing","butts","buttweld","butty","butut","butyl","butylate","butylene","butyraceous","butyric","butyrin","buxom","buxomly","buxomness","buy","buyback","buyer","buyers","buyi","buying","buyout","buys","buzz","buzzard","buzzer","buzzes","buzzing","buzzword","bvd","bwr","By","by","bycatch","bye","byelarus","byelorussia","bygone","bylaw","byname","bypass","bypasses","bypassing","bypast","bypath","byplay","byproduct","byre","byrnie","byroad","byssi","byssus","bystander","byte","byway","byword","byzant","byzantine","byzantinism","C$","c$","c.","CA","Ca","ca","caaba","cab","cabal","cabala","cabalism","cabalistic","caballed","caballing","cabana","cabaret","cabasset","cabassous","cabbage","cabbageworm","cabbala","cabbalah","cabby","cabdriver","caber","cabg","cabin","cabinet","cabinetmaker","cabinetmaking","cabinetry","cabinets","cabinetwork","cabining","cabins","cable","cablegram","cables","cabling","cabman","cabochon","caboodle","caboose","cabotage","cabriolet","cabstand","cacao","cacatua","cachalot","cache","cachectic","caches","cachet","cachexia","cachexy","caching","cachinnate","cachinnation","cachou","cacique","cackel","cackle","cackler","cackles","cackling","cackly","cacodaemon","cacodaemonic","cacodemon","cacodemonic","cacodyl","cacodylic","cacoethes","cacogenesis","cacogenic","cacogenics","cacography","cacomistle","cacomixle","cacophonic","cacophonous","cacophony","cacti","cactus","cacuminal","cad","cadaster","cadastral","cadastre","cadaver","cadaveric","cadaverine","cadaverous","caddie","caddied","caddish","caddisworm","caddoan","caddy","caddying","cadence","cadenced","cadency","cadent","cadenza","cadet","cadetship","cadge","cadger","cadging","cadmium","cadre","caducean","caducei","caduceus","caducous","caeca","caecal","caeciliadae","caecilian","caecum","caenogenesis","caesarean","caesareans","caesarian","caesarism","caesaropapism","caesium","caespitose","caestus","caesura","caesurae","caesural","cafe","cafes","cafeteria","caff","caffein","caffeine","caffeinic","caffeinism","caffer","caffre","caftan","cage","cager","cages","cagey","cagier","cagiest","cagily","caging","cagoule","cagy","cahoot","CAI","Cai","cai","caiman","caimitillo","caimito","CAIN'T","Cain't","cain't","cainogenesis","CAINT","Caint","caint","CAIN\u2019T","Cain\u2019t","cain\u2019t","cairn","cairned","cairngorm","caisson","caitiff","caitra","cajole","cajolery","cajoles","cajoling","cajolingly","cake","caked","cakehole","cakes","cakewalk","caking","calaba","calabash","calabazilla","calabura","caladenia","caladium","calamari","calamary","calami","calamine","calamint","calamitous","calamity","calamus","calan","calando","calanthe","calapooya","calapuya","calash","calathi","calathus","calcaneal","calcanei","calcaneum","calcaneus","calcareous","calced","calcedony","calceiform","calceolaria","calceolate","calces","calceus","calcic","calcicolous","calciferol","calciferous","calcific","calcification","calcified","calcifugous","calcify","calcimine","calcination","calcine","calcite","calcitic","calcitonin","calcium","calculable","calculate","calculated","calculates","calculating","calculatingly","calculation","calculations","calculative","calculator","calculi","calculous","calculus","calcutta","calcuttan","caldaria","caldarium","caldera","caldron","calean","caleche","calefacient","calefaction","calefactive","calefactory","calendar","calender","calendered","calendric","calendrical","calendula","calf","calfskin","caliber","calibers","calibrate","calibrated","calibrates","calibrating","calibration","calibre","calibres","calices","caliche","calico","calicoes","calicular","caliculus","CALIF.","Calif.","calif.","california","californian","californium","caliginous","caliper","calipering","calipers","caliph","calisaya","calisthenic","calisthenics","calix","calk","calkin","call","calla","callable","callathump","callback","called","caller","callers","calli","calliandra","calligraph","calligrapher","calligraphic","calligraphical","calligraphist","calligraphy","calling","calliopsis","calliper","callipers","callipygian","callipygous","callisthenics","callithump","callithumpian","callophis","callosectomy","callosity","callosotomy","callous","calloused","callously","callousness","callow","callowness","calls","callus","calm","calmed","calmer","calming","calmly","calmness","calms","calomel","caloric","calorie","calories","calorifacient","calorific","calorimeter","calorimetric","calorimetry","calosoma","calpac","calpack","calpe","calque","caltrop","calumet","calumniate","calumniation","calumniatory","calumnious","calumniously","calumny","calvaria","calve","calves","calving","calvinist","calvinistic","calvinistical","calx","calyceal","calyces","calycinal","calycine","calycle","calycled","calycular","calyculate","calyculus","calypter","calyptra","calyptrate","calyx","camachile","camail","camaraderie","camarilla","camas","camash","camber","cambia","cambial","cambium","Cambodia","cambodia","cambodian","cambria","cambrian","cambric","camcorder","came","camel","camelhair","camelia","camellia","camelopard","camelpox","camels","cameo","camera","camerae","cameraman","cameras","Cameroon","cameroon","cameroonian","cameroun","camion","camise","camisole","camlet","camo","camomile","camosh","camouflage","camouflaged","camouflages","camp","campaign","campaigned","campaigner","campaigning","campaigns","campana","campanile","campanula","campanular","campanulate","campanulated","campeachy","camped","camper","campers","campestral","campfire","campground","camphor","camphoraceous","camphorate","camphorated","camphoric","camphorweed","camping","campion","campmate","campong","camps","campsite","campstool","campus","campuses","campy","campylotropous","camshaft","camwood","CAN","Can","can","CAN'T","Can't","can't","canaan","Canada","canada","canadian","canafistola","canafistula","canal","canalicular","canaliculate","canaliculi","canaliculus","canalisation","canalise","canalised","canalises","canalising","canalization","canalize","canalized","canalizes","canalizing","canalled","canalling","canals","canangium","canape","canara","canard","canarese","canary","canasta","canavanine","cancan","cancel","cancelation","cancelations","canceled","canceling","cancellate","cancellated","cancellation","cancellations","cancelled","cancelling","cancellous","cancels","cancer","cancerous","cancers","cancerweed","cancroid","candela","candelabra","candelabrum","candelilla","candent","candescent","candid","candida","candidacy","candidate","candidates","candidature","candidiasis","candidly","candidness","candied","candle","candleberry","candlefish","candlefishes","candlelight","candlemaker","candlenut","candlepin","candlepower","candles","candlesnuffer","candlestick","candlewick","candlewood","candling","candor","candour","candy","candyfloss","candymaker","candytuft","candyweed","cane","canebrake","canecutter","canella","canescent","canfield","canful","cangue","canicula","canicular","canicule","canid","canine","caning","canistel","canister","canker","cankerous","cankerweed","cankerworm","canna","cannabin","cannabis","canned","cannelloni","cannery","cannibal","cannibalic","cannibalise","cannibalised","cannibalises","cannibalising","cannibalism","cannibalistic","cannibalize","cannibalized","cannibalizes","cannibalizing","cannier","canniest","cannikin","cannily","canning","cannister","cannon","cannonade","cannonball","cannoneer","cannons","CANNOT","Cannot","cannot","cannula","cannular","cannulate","cannulation","cannulisation","cannulise","cannulization","cannulize","canny","canoe","canoeing","canoeist","canoes","canola","canon","canonic","canonical","canonically","canonisation","canonise","canonised","canonises","canonising","canonist","canonization","canonize","canonized","canonizes","canonizing","canoodle","canopied","canopy","canorous","cans","CANT","Cant","cant","cantabile","cantala","cantaloup","cantaloupe","cantankerous","cantankerously","cantata","canted","canteen","canter","cantering","canthi","canthus","canticle","cantier","cantiest","cantilever","cantilevering","cantillate","cantillating","cantillation","cantle","canto","canton","cantonal","cantonese","cantonment","cantor","canty","canula","canulae","canulate","canulation","canulisation","canulization","canvas","canvasback","canvases","canvass","canvassed","canvasser","canvassing","canyon","canyonside","canzone","canzoni","CAN\u2019T","Can\u2019t","can\u2019t","caoutchouc","cap","capabilities","capability","capable","capableness","capably","capacious","capaciousness","capacitance","capacitate","capacities","capacitive","capacitor","capacity","caparison","caparisoned","Cape","cape","capelan","capelin","caper","capercaillie","capercailzie","capering","capetian","capeweed","capful","capibara","capillarity","capillary","capita","capital","capitalisation","capitalise","capitalised","capitalises","capitalising","capitalism","capitalist","capitalistic","capitalists","capitalization","capitalize","capitalized","capitalizes","capitalizing","capitals","capitate","capitation","capitula","capitular","capitulary","capitulate","capitulated","capitulates","capitulating","capitulation","capitulum","capiz","caplin","capo","capon","caponise","caponize","capote","capoten","cappadocian","capped","cappelletti","capping","cappuccino","capricci","capriccio","caprice","capricious","capriciously","capriciousness","caprifig","caprimulgid","caprine","capriole","caps","capsaicin","capsicum","capsid","capsidae","capsize","capsizing","capstan","capstone","capsular","capsulate","capsulated","capsule","capsulise","capsulize","capsulizing","CAPT.","Capt.","capt.","captain","captaincy","captaining","captainship","caption","captioned","captioning","captions","captious","captiously","captivate","captivated","captivates","captivating","captivatingly","captivation","captive","captivity","captopril","captor","capture","captured","capturer","captures","capturing","capuchin","capulin","caput","capybara","car","carabao","carabineer","carabiner","carabinier","carabiniere","carabinieri","caracal","caracara","carack","caracole","caracolito","caracul","carafate","carafe","caragana","carageen","carambola","caramel","caramelise","caramelised","caramelises","caramelising","caramelize","caramelized","caramelizes","caramelizing","carancha","caranda","caranday","carangid","carapace","carat","caravan","caravanning","caravansary","caravanserai","caraway","carbamate","carbamide","carbide","carbine","carbineer","carbocyclic","carbohydrate","carbohydrates","carbolated","carbomycin","carbon","carbonaceous","carbonado","carbonadoes","carbonara","carbonate","carbonated","carbonating","carbonation","carbonic","carboniferous","carbonisation","carbonise","carbonised","carbonises","carbonising","carbonization","carbonize","carbonized","carbonizes","carbonizing","carbonous","carbons","carbonyl","carbonylic","carborundum","carboxyl","carboxylate","carboxylic","carboy","carbuncle","carbuncled","carbuncular","carburet","carburetor","carburetted","carburetting","carburettor","carburise","carburize","carcajou","carcase","carcass","carcinogen","carcinogenic","carcinoid","carcinoma","carcinomas","carcinomata","carcinomatous","carcinosarcoma","card","cardamom","cardamon","cardamum","cardboard","cardcase","cardcastle","cardholder","cardhouse","cardia","cardiac","cardinal","cardinalate","cardinalfish","cardinality","cardinalship","carding","cardiogram","cardiograph","cardiographic","cardiography","cardioid","cardiologic","cardiologist","cardiology","cardiomegaly","cardiomyopathy","cardiopathy","cardiopulmonary","cardiorespiratory","cardiospasm","cardiovascular","carditis","cardizem","cardoon","cardroom","cards","cardsharp","cardsharper","cardura","care","cared","careen","careened","careening","career","careering","careerism","careerist","careers","carefree","carefreeness","careful","carefully","carefulness","caregiver","caregivers","careless","carelessly","carelessness","carelian","cares","caress","caresses","caressing","caret","caretaker","careworn","carfare","carful","cargo","cargoes","carhop","caribe","caribees","caribou","caricature","caricaturing","caricaturist","carides","caries","carillon","carillonned","carillonneur","carillonning","carina","carinae","carinal","carinate","carinated","caring","carious","carissa","carjack","carjacking","cark","carload","carlos","carlovingian","carmaker","carmelite","carminative","carmine","carnage","carnal","carnalise","carnality","carnalize","carnallite","carnally","carnassial","carnation","carnauba","carnelian","carnied","carnified","carnify","carnival","carnivore","carnivorous","carnosaur","carnotite","carny","carob","caroche","carol","carolean","caroled","caroler","caroli","caroline","caroling","carolingian","carolled","caroller","carolling","carols","carolus","carom","carotene","carotenemia","carotenoid","carotid","carotin","carousal","carouse","carousel","carouser","carousing","carp","carpal","carpel","carpellary","carpellate","carpentaria","carpenter","carpenteria","carpentry","carper","carpet","carpetbag","carpetbagger","carpetbagging","carpeted","carpeting","carpets","carpetweed","carpi","carping","carpogonia","carpogonium","carpophagous","carpophore","carport","carpospore","carposporic","carposporous","carpus","carrack","carrageen","carrageenan","carrageenin","carragheen","carrefour","carrell","carriage","carriageway","carried","carrier","carriers","carries","carrion","carrizo","carrot","carrots","carrottop","carroty","carrousel","carry","carryall","carrycot","carrying","cars","carsick","cart","cartage","carte","carted","cartel","carter","cartesian","carthaginian","carthorse","carthusian","cartilage","cartilaginification","cartilaginous","carting","cartload","cartographer","cartographic","cartographical","cartography","carton","cartonful","cartons","cartoon","cartooning","cartoonist","cartoons","cartouch","cartouche","cartridge","cartridges","cartroad","carts","cartwheel","cartwheeling","cartwright","caruncle","caruncula","caruncular","carunculate","carunculated","carunculous","carve","carved","carvedilol","carven","carver","carves","carving","carvings","caryatid","caryophyllaceous","caryopses","caryopsides","caryopsis","casaba","casava","casbah","cascabel","cascade","cascaded","cascades","cascading","cascara","cascarilla","case","caseate","casebook","cased","casefied","caseful","casefy","casein","casement","caseous","casern","cases","casework","caseworker","caseworm","cash","cashable","cashbox","cashcard","cashed","cashes","cashew","cashier","cashing","cashmere","casing","casino","casinos","cask","casket","caskful","caspase","casque","casquet","casquetel","cassareep","cassava","casserole","cassette","cassettes","cassia","cassie","cassino","cassiri","cassite","cassiterite","cassock","cassocked","cassowary","cast","castanets","castaway","caste","casteless","castellated","caster","castigate","castigated","castigates","castigating","castigation","castilla","castilleia","casting","castle","castled","castles","castling","castrate","castrated","castrati","castrating","castration","castrato","casts","casual","casually","casualness","casualties","casualty","casuarina","casuist","casuistic","casuistical","casuistry","cat","catabases","catabasis","catabatic","catabiosis","catabolic","catabolise","catabolism","catabolize","catachresis","catachrestic","catachrestical","cataclases","cataclasis","cataclinal","cataclysm","cataclysmal","cataclysmic","catacomb","catacorner","catadromous","catafalque","cataflam","catalan","catalase","catalatic","catalectic","catalepsy","cataleptic","catalexis","catalo","cataloes","catalog","cataloged","cataloger","cataloging","catalogs","catalogue","catalogued","cataloguer","catalogues","cataloguing","catalpa","catalufa","catalyse","catalysed","catalyses","catalysing","catalysis","catalyst","catalytic","catalytically","catalyze","catalyzed","catalyzes","catalyzing","catamaran","catamenia","catamenial","catamite","catamount","catamountain","catananche","cataphasia","cataphatic","cataphatism","cataphoresis","cataphoretic","cataphract","cataphyll","cataplasia","cataplasm","cataplastic","catapres","catapult","catapultian","catapultic","cataract","catarrh","catarrhal","catarrhine","catarrhinian","catastrophe","catastrophes","catastrophic","catastrophically","catatonia","catatonic","catbird","catboat","catbrier","catcall","catch","catchall","catcher","catches","catchfly","catchier","catchiest","catching","catchment","catchpenny","catchphrase","catchweed","catchword","catchy","catclaw","catechesis","catechetic","catechetical","catechin","catechise","catechism","catechismal","catechist","catechistic","catechize","catecholamine","catechu","catechumen","categorem","categorematic","categoreme","categorial","categoric","categorical","categorically","categories","categorisation","categorise","categorised","categorises","categorising","categorization","categorize","categorized","categorizes","categorizing","category","catena","catenae","catenary","catenate","catenating","catenulate","cater","catercorner","catered","caterer","catering","caters","caterwaul","caterwauling","catfish","catfishes","catgut","cathar","cathari","catharism","cathars","catharsis","cathartic","cathartid","cathay","cathect","cathectic","cathedra","cathedral","catherine","catheter","catheterisation","catheterise","catheterization","catheterize","cathexes","cathexis","cathode","cathodic","catholic","catholicise","catholicity","catholicize","catholicon","cathouse","cation","cationic","catkin","catkinate","catling","catmint","catnap","catnapped","catnapping","catnip","catoptric","catoptrical","catoptrics","catostomid","cats","catsup","cattail","cattalo","cattaloes","catted","cattie","cattier","cattiest","cattiness","catting","cattish","cattle","cattleman","cattleship","cattleya","catty","catwalk","caucasian","caucasic","caucasoid","caucus","caucuses","caucusing","cauda","caudal","caudally","caudata","caudate","caudated","caudex","caudices","caught","caul","cauldron","caules","caulescent","cauliflower","cauline","caulis","caulk","caulked","caulking","causa","causal","causalgia","causality","causally","causation","causative","cause","caused","causeless","causerie","causes","causeway","causing","caustic","caustically","cauterant","cauterisation","cauterise","cauterised","cauterises","cauterising","cauterization","cauterize","cauterized","cauterizes","cauterizing","cautery","caution","cautionary","cautioned","cautioning","cautions","cautious","cautiously","cautiousness","cavalcade","cavalier","cavalierly","cavalla","cavalry","cavalryman","cavatina","cavatine","cave","caveat","caveats","caved","cavefish","cavefishes","caveman","cavern","cavernous","caves","cavetti","cavetto","caviar","caviare","cavil","caviled","caviler","caviling","cavilled","caviller","cavilling","caving","cavitied","cavity","cavort","cavorting","cavum","cavy","caw","cawing","cay","cayenne","cayman","cayuse","cazique","cbc","cbr","cc","ccrc","cd","CDC","cdc","cdna","cdnas","cds","cdt","ce","cease","ceased","ceaseless","ceaselessly","ceaselessness","ceases","ceasing","cebuano","ceca","cecal","cecity","cecum","cedar","cedarbird","cedarn","cedarwood","cede","ceded","cedes","cedi","cedilla","ceding","cefadroxil","cefobid","cefoperazone","cefotaxime","ceftazidime","ceftin","ceftriaxone","cefuroxime","ceibo","ceilidh","ceiling","ceilinged","ceilings","celandine","celebrant","celebrate","celebrated","celebrater","celebrates","celebrating","celebration","celebrations","celebrator","celebratory","celebrex","celebrities","celebrity","celecoxib","celeriac","celerity","celery","celesta","celestial","celestite","celiac","celibacy","celibate","celiocentesis","celioma","celioscopy","cell","cella","cellae","cellar","cellarage","cellaret","cellblock","cellist","cello","cellophane","cellphone","cells","cellular","cellularity","cellulite","cellulitis","celluloid","cellulose","cellulosic","cellulosid","celom","celoma","celtic","celtuce","cembali","cembalo","cement","cemented","cementing","cementite","cementitious","cements","cementum","cemeteries","cemetery","cenobite","cenobitic","cenobitical","cenogenesis","cenogenetic","cenotaph","cenozoic","cense","censer","censor","censored","censorial","censoring","censorious","censors","censorship","censurable","censure","censured","censuring","census","censusing","cent","cental","centare","centas","centaur","centaury","centavo","centenarian","centenary","centennial","centennially","center","centerboard","centered","centerfield","centerfielder","centerfold","centerfolds","centering","centerline","centerpiece","centerpieces","centers","centesimal","centesimi","centesimo","centesis","centigrade","centigram","centigramme","centigrammes","centigrams","centile","centiliter","centiliters","centilitre","centilitres","centime","centimeter","centimeters","centimetre","centimetres","centimo","centipede","centner","centra","Central","central","centralisation","centralise","centralised","centralises","centralising","centralism","centralist","centralistic","centrality","centralization","centralize","centralized","centralizes","centralizing","centrally","centrarchid","centre","centreboard","centred","centrefold","centrefolds","centrepiece","centrepieces","centres","centrex","centric","centrical","centrifugal","centrifugate","centrifugating","centrifugation","centrifuge","centrifuging","centriole","centripetal","centrism","centrist","centroid","centroidal","centroids","centromere","centromeres","centromeric","centrosome","centrosomic","centrosymmetric","centrum","cents","centuries","centurion","century","ceo","ceos","cephalalgia","cephalaspid","cephalaspida","cephalexin","cephalhematoma","cephalic","cephalitis","cephalochordate","cephaloglycin","cephalohematoma","cephalometry","cephalopod","cephalopodan","cephaloridine","cephalosporin","cephalothin","cephalothoraces","cephalothorax","cer","ceramic","ceramicist","ceramics","ceramist","ceras","cerastes","cerate","ceratin","ceratodus","ceratopsian","ceratosaur","ceratosaurus","ceratozamia","cercaria","cercariae","cercarial","cercariiae","cerci","cercus","cere","cereal","cerebella","cerebellar","cerebellum","cerebra","cerebral","cerebrally","cerebrate","cerebration","cerebromeningitis","cerebrospinal","cerebrovascular","cerebrum","cerecloth","cerement","ceremonial","ceremonially","ceremonies","ceremonious","ceremoniously","ceremoniousness","ceremony","ceresin","ceric","ceriman","cerise","cerium","cerivastatin","cernuous","cero","cerous","cert","certain","certainly","certainty","certifiable","certificate","certificated","certificates","certification","certificatory","certified","certifies","certify","certifying","certiorari","certitude","cerulean","cerumen","ceruminous","ceruse","cerussite","cervical","cervices","cervicitis","cervid","cervine","cervix","cesarean","cesareans","cesarian","cesium","cespitose","cessation","cession","cesspit","cesspool","cestode","cestuses","cesura","cesurae","cetacean","cetaceous","cetchup","cetrimide","cewa","ceylonese","cf","cfc","cfo","cftr","cgs","chabasite","chabazite","chachalaca","chachka","chacma","Chad","chad","chadar","chadarim","chaddar","chadian","chadic","chadlock","chador","chaenactis","chaeta","chaetae","chaetal","chaetodon","chaetognath","chaetognathan","chaetognathous","chafe","chafed","chafes","chafeweed","chaff","chaffer","chaffinch","chafflike","chaffweed","chaffy","chafing","chaga","chagga","chagrin","chagrined","chahta","chain","chained","chaining","chainlike","chains","chainsaw","chair","chaired","chairing","chairlift","chairman","chairmanship","chairperson","chairs","chairwoman","chaise","chaja","chalaza","chalazae","chalazion","chalcanthite","chalcedony","chalcid","chalcidae","chalcidfly","chalcocite","chalcopyrite","chaldaea","chaldaean","chaldean","chaldee","chaldron","chalet","chalice","chalk","chalkboard","chalked","chalking","chalkpit","chalkstone","chalky","challah","challenge","challengeable","challenged","challenger","challengers","challenges","challenging","challis","challoth","chalutz","chalutzim","chalybeate","chalybite","chamaeleonidae","chamber","chambered","chambering","chamberlain","chambermaid","chamberpot","chambers","chambray","chameleon","chamfer","chamfron","chammy","chamois","chamomile","chamosite","champ","champagne","champerty","champing","champion","championed","championing","champions","championship","championships","champleve","chanal","chanar","chance","chanceful","chancel","chancellery","chancellor","chancellorship","chancery","chances","chancier","chanciest","chancing","chancre","chancroid","chancroidal","chancrous","chancy","chandelier","chandelle","chandler","chandlery","chanfron","chang","changan","change","changeability","changeable","changeableness","changed","changeful","changefulness","changeless","changelessness","changeling","changeover","changer","changes","changing","changjiang","channel","channeled","channeling","channelisation","channelise","channelization","channelize","channelled","channelling","channels","channukah","channukkah","chanoyu","chant","chantarelle","chanted","chanter","chanterelle","chantey","chanting","chantlike","chantry","chants","chanty","chanukah","chanukkah","chaos","chaotic","chaotically","chap","chaparral","chapati","chapaties","chapatti","chapatties","chapeau","chapeaux","chapel","chapelgoer","chapels","chaperon","chaperone","chaperones","chaperoning","chapfallen","chapiter","chaplain","chaplaincy","chaplainship","chaplet","chapleted","chapman","chapped","chapping","chapter","chapterhouse","chapters","char","charabanc","characid","characin","character","characterisation","characterise","characterised","characterises","characterising","characteristic","characteristically","characteristics","characterization","characterize","characterized","characterizes","characterizing","characterless","characters","charade","charcoal","charcuterie","chard","charge","chargeable","charged","chargeman","charger","charges","charging","chari","charier","chariest","charily","chariness","chariot","charioteer","charisma","charismatic","charitable","charitableness","charitably","charities","charity","charivari","charlatan","charlatanism","charleston","charlock","charm","charmed","charmer","charming","charmingly","charmless","charms","charnel","charr","charred","charring","chart","chartaceous","charter","chartered","charterhouse","chartering","charters","charting","chartist","chartless","chartreuse","charts","charwoman","chary","chase","chased","chaser","chases","chasid","chasidic","chasidim","chasidism","chasing","chasm","chasse","chassid","chassidic","chassidim","chassidism","chassis","chaste","chastely","chasten","chastened","chasteness","chastening","chastise","chastised","chastisement","chastises","chastising","chastity","chasuble","chat","chateau","chateaux","chatelaine","chatoyant","chatroom","chats","chatted","chattel","chatter","chatterbox","chatterer","chattering","chattier","chattiest","chattily","chatting","chatty","chauffeur","chauffeuring","chauffeurs","chauffeuse","chaulmoogra","chaulmugra","chauvinism","chauvinist","chauvinistic","chaw","chawbacon","chazan","chazanim","cheap","cheapen","cheapening","cheapens","cheaper","cheapest","cheapjack","cheaply","cheapness","cheapskate","cheat","cheated","cheater","cheaters","cheatgrass","cheating","cheats","chebab","chechen","chechenia","check","checkbook","checkbooks","checked","checker","checkerberry","checkerbloom","checkerboard","checkered","checking","checklist","checkmate","checkout","checkpoint","checkpoints","checkrein","checkroom","checkrow","checks","checksum","checkup","chedarim","cheder","cheek","cheekbone","cheekier","cheekiest","cheekily","cheekiness","cheekpiece","cheeks","cheeky","cheep","cheer","cheered","cheerer","cheerful","cheerfully","cheerfulness","cheerier","cheeriest","cheerily","cheering","cheerio","cheerlead","cheerleader","cheerless","cheerlessly","cheerlessness","cheers","cheery","cheese","cheeseboard","cheeseburger","cheesecake","cheesecloth","cheeseflower","cheeselike","cheesemonger","cheeseparing","cheeses","cheesier","cheesiest","cheesy","cheetah","cheewink","chef","chefs","cheilitis","cheiloschisis","cheilosis","chekov","chela","chelae","chelate","chelated","chelating","chelation","chelicera","chelicerae","cheliceral","chelicerate","chelicerous","cheliferous","cheloid","chelonia","chelonian","chelonidae","chemic","chemical","chemically","chemicals","chemiluminescence","chemiluminescent","chemise","chemisorb","chemisorption","chemisorptive","chemist","chemistry","chemoimmunology","chemoreceptive","chemoreceptor","chemosis","chemosorption","chemosorptive","chemosurgery","chemosynthesis","chemotaxis","chemotherapeutic","chemotherapeutical","chemotherapy","chemulpo","chenfish","chenille","chenopodiales","cheque","chequebook","chequebooks","chequer","chequered","cheques","cherimolla","cherimoya","cherish","cherished","cherishes","cherishing","chermidae","cheroot","cherries","cherry","cherrystone","chert","cherty","cherub","cherubic","cherubim","chervil","chess","chessboard","chessman","chest","chestier","chestiest","chestnut","chests","chesty","chetah","chetrum","chevalier","chevied","chevre","Chevron","chevron","chevrotain","chevvy","chevy","chevying","chew","chewable","chewed","chewer","chewier","chewiest","chewing","chewink","chews","chewy","chi","chian","chiaroscuro","chiasm","chiasma","chiasmal","chiasmata","chiasmatic","chiasmi","chiasmic","chiasmus","chic","chicane","chicanery","chicha","chichi","chichipe","chick","chickadee","chicken","chickenfeed","chickenfight","chickenhearted","chickenpox","chickens","chickenshit","chickeree","chickpea","chicks","chickweed","chicle","chicness","chico","chicory","chicot","chide","chided","chides","chiding","chief","chiefly","chiefs","chieftain","chieftaincy","chieftainship","chiffon","chiffonier","chigetai","chigger","chiggerflower","chignon","chigoe","chilblain","chilblained","child","childbearing","childbed","childbirth","childcare","childhood","childish","childishly","childishness","childless","childlessness","childlike","childly","childproof","children","Chile","chile","chilean","chili","chiliad","chiliasm","chiliast","chiliastic","chill","chilled","chiller","chilli","chillier","chillies","chilliest","chilliness","chilling","chills","chilly","chiluba","chimaera","chimaeras","chime","chimera","chimeral","chimeras","chimeric","chimerical","chimes","chiming","chimney","chimneypiece","chimneypot","chimneystack","chimneysweep","chimneysweeper","chimp","chimpanzee","chimps","chimwini","chin","China","china","chinaberry","chinaware","chincapin","chinch","chincherinchee","chinchilla","chinchillon","chinchona","chinchy","chine","chinese","chingpo","chink","chinkapin","chinked","chinless","chinned","chinning","chino","chinoiserie","chinquapin","chintz","chintzier","chintziest","chintzily","chintzy","chip","chipboard","chipmunk","chipolata","chipotle","chipped","chippendale","chipper","chippewa","chippewaian","chippewyan","chippier","chippiest","chipping","chippy","chips","chiralgia","chirk","chirocephalus","chirography","chirology","chiromance","chiromancer","chiromancy","chiromantic","chiropodist","chiropody","chiropractic","chiropractor","chiropteran","chirp","chirpily","chirpiness","chirping","chirps","chirpy","chirr","chirrup","chisel","chiseled","chiseler","chiseling","chiselled","chiseller","chiselling","chisels","chisinau","chislev","chit","chitarrone","chitarroni","chitchat","chitchatted","chitchatting","chitin","chitinous","chitlings","chitlins","chiton","chittamwood","chitter","chitterlings","chittimwood","chiv","chivalric","chivalrous","chivalrously","chivalry","chivaree","chive","chivied","chivved","chivvied","chivving","chivvy","chivvying","chivy","chk","chlamydeous","chlamydes","chlamydia","chlamydial","chlamydospore","chlamyphore","chlamys","chlamyses","chloasma","chlorambucil","chloramine","chloramphenicol","chlorate","chlordiazepoxide","chlorella","chlorenchyma","chlorhexidine","chloride","chlorinate","chlorinating","chlorination","chlorine","chlorinity","chlorite","chloroacetophenone","chlorobenzene","chlorobenzylidenemalononitrile","chlorofluorocarbon","chloroform","chlorofucin","chloromycetin","chlorophyl","chlorophyll","chlorophyllose","chlorophyllous","chlorophyte","chloropicrin","chloroplast","chloroprene","chloroquine","chlorosis","chlorothiazide","chlorotic","chlorpromazine","chlorpyrifos","chlortetracycline","chlorthalidone","choanocyte","choc","chock","chockablock","chockes","chockful","chocking","chocolate","chocolates","choice","choiceness","choices","choir","choirboy","choirmaster","choke","chokecherry","choked","chokedamp","chokehold","chokepoint","choker","chokes","chokey","choking","choky","cholangiography","cholangitis","cholecalciferol","cholecystectomy","cholecystitis","cholecystokinin","cholelithiasis","cholelithotomy","choler","cholera","choleraic","choleric","cholestasis","cholesterin","cholesterol","choline","cholinergic","cholinesterase","cholla","chomp","chomping","chon","chondrichthian","chondrified","chondrify","chondrin","chondriosome","chondrite","chondritic","chondrodystrophy","chondroma","chondromata","chondrosarcoma","chondrule","choose","chooser","chooses","choosey","choosier","choosiest","choosing","choosy","chop","chopfallen","chophouse","chopine","chopped","chopper","choppier","choppiest","choppiness","chopping","choppy","chops","chopsteak","chopstick","choragi","choragic","choragus","choral","chorale","chorally","chord","chordal","chordamesoderm","chordate","chording","chorditis","chordomesoderm","chordophone","chore","chorea","choreograph","choreographed","choreographer","choreographic","choreographing","choreographs","choreography","chores","choriambi","choriambus","choric","chorine","chorioallantois","choriomeningitis","chorion","chorionic","chorioretinitis","chorister","chorizo","choroid","chortle","chortled","chortling","chorus","chorusing","chose","chosen","chou","chough","chouse","choux","chow","chowchow","chowder","chrestomathy","chrism","chrisom","christ","christella","christen","christening","christian","christiania","christianisation","christianise","christianize","christianly","christians","christless","christlike","christly","christmas","christmasberry","christmastide","christmastime","christological","chroma","chromaesthesia","chromate","chromatic","chromatically","chromaticity","chromatid","chromatids","chromatin","chromatinic","chromatism","chromatogram","chromatographic","chromatographical","chromatographically","chromatography","chrome","chromesthesia","chromite","chromium","chromoblastomycosis","chromogen","chromolithography","chromonema","chromonemata","chromophore","chromoplast","chromosomal","chromosome","chromosomes","chromosphere","chronic","chronically","chronicle","chronicler","chronicles","chronicling","chronograph","chronological","chronologically","chronologise","chronologize","chronology","chronometer","chronoscope","chrysalides","chrysalis","chrysanthemum","chrysarobin","chrysoberyl","chrysolite","chrysomelid","chrysopid","chrysoprase","chrysotherapy","chrysotile","chthonian","chthonic","chub","chubbier","chubbiest","chubbiness","chubby","chuck","chucked","chuckhole","chucking","chuckle","chuckles","chuckling","chucks","chuckwalla","chuddar","chufa","chuff","chuffed","chuffier","chuffiest","chuffing","chuffy","chug","chugged","chugging","chugs","chukka","chukker","chum","chummed","chummier","chummiest","chumminess","chumming","chummy","chump","chunga","chungking","chunk","chunkier","chunkiest","chunking","chunks","chunky","chunnel","church","churches","churchgoer","churchgoing","churchier","churchiest","churchillian","churchly","churchman","churchwarden","churchy","churchyard","churidars","churl","churlish","churlishly","churn","churning","churns","churr","churrigueresco","churrigueresque","churring","chute","chutney","chutzpa","chutzpah","chutzpanik","chuvash","chuvashes","chylaceous","chyle","chylifactive","chylifactory","chyliferous","chylific","chyloderma","chylomicron","chylous","chyme","chymosin","CIA","cia","cialis","ciao","ciboria","ciborium","cicada","cicadae","cicala","cicale","cicatrice","cicatrices","cicatrise","cicatrix","cicatrize","cicerone","ciceroni","cichlid","cicisbei","cicisbeo","cid","cider","ciderpress","cigar","cigaret","cigarette","cigarettes","cigarfish","cigarillo","cigars","cilantro","cilia","cilial","ciliary","ciliate","ciliated","cilioflagellata","ciliophora","ciliophoran","cilium","cim","cimetidine","cimex","cimices","cimmerian","cinch","cinching","cinchona","cinchonine","cincture","cinder","cinema","cinemas","cinematic","cinematise","cinematize","cinematographer","cinematography","cineraria","cinerarium","cinerary","cingula","cingulum","cinnabar","cinnamene","cinnamon","cinque","cinquefoil","cio","cipher","ciphers","cipro","ciprofloxacin","cira","circa","circadian","circinate","circle","circled","circles","circlet","circling","circuit","circuitous","circuitry","circuits","circular","circularisation","circularise","circularised","circularises","circularising","circularity","circularization","circularize","circularized","circularizes","circularizing","circularly","circulate","circulated","circulates","circulating","circulation","circulative","circulatory","circumambulate","circumambulating","circumboreal","circumcise","circumcising","circumduction","circumference","circumferent","circumferential","circumflex","circumfuse","circumlocution","circumlocutious","circumlocutory","circumnavigate","circumnavigation","circumpolar","circumscribe","circumscribed","circumscribing","circumscription","circumspect","circumspection","circumspectly","circumstance","circumstances","circumstantial","circumstantially","circumstantiate","circumvallate","circumvent","circumventing","circumvention","circumvents","circumvolute","circumvolution","circumvolve","circus","cirio","cirque","cirrhosis","cirrhus","cirri","cirriped","cirripede","cirrocumuli","cirrocumulus","cirrostrati","cirrostratus","cirrus","cisalpine","cisc","cisco","ciscoes","cislunar","cismontane","cissy","cistercian","cistern","cisterna","cisternae","cistron","citadel","citation","citations","cite","cited","cites","cither","cithern","cities","citified","citify","citing","citizen","citizenry","citizens","citizenship","citole","citrange","citrate","citric","citrin","citrine","citron","citronwood","citrous","citrulline","citrus","cittern","city","cityfied","cityscape","citywide","cive","civet","civic","civics","civies","civil","civilian","civilians","civilisation","civilise","civilised","civilises","civilising","civility","civilization","civilizations","civilize","civilized","civilizes","civilizing","civilly","civvies","cjd","clabber","clack","clacking","clad","cladding","clade","clades","cladistics","cladode","cladogram","cladophyll","claforan","claim","claimant","claimed","claiming","claims","clairvoyance","clairvoyant","clam","clamant","clamatorial","clambake","clamber","clambered","clambering","clammed","clammier","clammiest","clammily","clamminess","clamming","clammy","clammyweed","clamor","clamored","clamoring","clamorous","clamorously","clamors","clamour","clamoured","clamouring","clamours","clamp","clampdown","clamped","clamping","clamps","clams","clamshell","clan","clandestine","clang","clanger","clanging","clangor","clangoring","clangorous","clangour","clani","clank","clanking","clannish","clannishly","clannishness","clanos","clansman","clanswoman","clap","clapboard","clapped","clapper","clapperboard","clapperclaw","clapping","claps","claptrap","claque","clarence","claret","clarification","clarified","clarifies","clarify","clarifying","clarinet","clarinetist","clarinetists","clarinettist","clarinettists","clarino","clarion","clarity","claro","claroes","clary","clash","clashed","clashes","clashing","clasp","clasping","class","classed","classes","classic","classical","classicalism","classically","classicise","classicism","classicist","classicistic","classicize","classics","classier","classiest","classifiable","classification","classifications","classificatory","classified","classifier","classifies","classify","classifying","classing","classless","classmate","classmates","classroom","classrooms","classwork","classy","clast","clastic","clathrate","clatter","clattering","clattery","claudication","clausal","clause","clauses","claustrophobe","claustrophobia","claustrophobic","claustrum","claver","clavichord","clavicle","clavier","clavus","claw","clawback","clawed","clawfoot","clawhammer","clawing","clawlike","claws","claxon","clay","clayey","claymore","claystone","clayware","clean","cleanable","cleaned","cleaner","cleaners","cleaning","cleanlier","cleanliest","cleanliness","cleanly","cleanness","cleans","cleanse","cleansed","cleanser","cleansing","cleanup","clear","clearance","clearcutness","cleared","clearer","clearheaded","clearing","clearly","clearness","clears","clearstory","clearway","clearweed","cleat","cleavable","cleavage","cleave","cleaver","cleaving","clef","cleft","cleg","clegg","cleistocarp","cleistogamic","cleistogamous","cleistogamy","cleistothecium","clem","clematis","clemency","clement","clementine","clemmed","clemming","clench","clenched","clenches","clenching","cleome","clepe","clepsydra","clepsydrae","clerestory","clergy","clergyman","cleric","clerical","clericalism","clericalist","clerid","clerihew","clerisy","clerk","clerking","clerklier","clerkliest","clerkly","clerks","clerkship","clever","cleverly","cleverness","clevis","clew","cli","clianthus","cliche","cliched","click","clicked","clicking","clicks","client","clientage","clientele","clients","cliff","cliffhanger","cliffs","climacteric","climactic","climate","climates","climatic","climatical","climatically","climatologist","climatology","climax","climaxing","climb","climbable","climbed","climber","climbers","climbing","climbs","clime","clinandria","clinandrium","clinch","clinched","clincher","clinches","clinching","cling","clingfilm","clingfish","clingfishes","clinging","clingstone","clinic","clinical","clinically","clinician","clinicians","clinics","clinid","clink","clinker","clinking","clinocephalism","clinocephaly","clinodactyly","clinometer","clinoril","clinquant","clintonia","clioquinol","clip","clipboard","clipped","clipper","clipping","clippings","clips","clique","cliquish","cliquishly","cliquishness","clit","clitella","clitellum","clitoral","clitoric","clitoridectomy","clitoris","clitter","clivers","cloaca","cloacae","cloak","cloaked","cloaking","cloakmaker","cloakroom","clobber","clobbered","clobbering","clochard","cloche","clock","clocked","clocking","clockmaker","clocks","clocksmith","clockwise","clockwork","clod","cloddish","clodhopper","clofibrate","clog","clogged","clogging","cloggy","cloisonne","cloister","cloistered","cloistral","clomid","clomiphene","clomipramine","clomp","clon","clonal","clone","cloned","clones","clonic","clonidine","cloning","clonus","clop","clopped","clopping","close","closed","closedown","closefisted","closelipped","closely","closemouthed","closeness","closeout","closer","closes","closest","closet","closeting","closets","closeup","closing","closings","clostridia","clostridium","closure","closures","clot","clotbur","cloth","clothe","clothed","clothes","clothesbrush","clotheshorse","clothesless","clothesline","clothespin","clothespress","clothier","clothing","clots","clotted","clotting","cloture","cloud","cloudberry","cloudburst","clouded","cloudier","cloudiest","cloudiness","clouding","cloudless","cloudlessness","cloudlike","clouds","cloudy","clout","clove","cloven","clover","cloverleaf","cloverleaves","cloveroot","clowder","clown","clowning","clownish","clownlike","clowns","cloy","cloying","cloyingly","clozapine","clozaril","cloze","club","clubable","clubbable","clubbed","clubbier","clubbiest","clubbing","clubbish","clubby","clubfoot","clubfooted","clubhead","clubhouse","clubroom","clubs","cluck","clucking","clucks","clue","clueless","clues","clumber","clump","clumping","clumsier","clumsiest","clumsily","clumsiness","clumsy","clunch","clunk","clunking","clunky","clupeid","clusia","clusiaceae","cluster","clustered","clustering","clusters","clutch","clutches","clutching","clutter","cluttered","cluttering","clypei","clypeus","clyster","cm","cmb","cmbr","cmv","cnidarian","cnossos","cnossus","cnpz","cns","cnut","co","co-anchored","Co-author","co-author","co-authored","co-chairman","co-chairmen","co-chief","co-defendant","co-developers","co-edited","co-editor","co-edits","co-founded","co-founder","co-founders","co-head","co-hero","co-manager","co-managing","co-op","co-owner","co-payments","co-pilot","co-produce","co-production","co-publisher","co-sponsor","co-sponsored","co-sponsoring","co-worker","co-workers","CO.","Co.","co.","coach","coachbuilder","coaches","coaching","coachman","coachwhip","coact","coaction","coadjutor","coagula","coagulable","coagulant","coagulase","coagulate","coagulated","coagulation","coagulator","coagulum","coal","coalbin","coalesce","coalesced","coalescence","coalescency","coalescent","coalesces","coalescing","coalface","coalfield","coalfish","coalfishes","coalhole","coalition","coalman","coalpit","coaming","coapt","coarctate","coarctation","coarse","coarsely","coarsen","coarsened","coarseness","coarsening","Coast","coast","coastal","coasted","coaster","coastguard","coastguardsman","coasting","coastland","coastline","coasts","coastward","coastwise","coat","coatdress","coated","coatee","coati","coating","coatrack","coatroom","coats","coattail","coauthor","coax","coaxal","coaxer","coaxes","coaxial","coaxing","coaxingly","cob","cobalamin","cobalt","cobaltite","cobber","cobble","cobbled","cobbler","cobblestone","cobbling","cobia","cobnut","cobol","cobra","cobweb","cobwebby","cocain","cocaine","cocainise","cocainize","cocarboxylase","coccal","cocci","coccidioidomycosis","coccidiomycosis","coccidiosis","coccidium","coccobacillus","coccoid","coccus","coccygeal","coccyges","coccyx","cochin","cochineal","cochlea","cochleae","cochlear","cock","cockade","cockamamie","cockamamy","cockateel","cockatiel","cockatoo","cockatrice","cockchafer","cockcrow","cocker","cockerel","cockeyed","cockfight","cockfighting","cockhorse","cockier","cockiest","cockiness","cocking","cockle","cocklebur","cockleburr","cockleshell","cockloft","cockney","cockneyfied","cockneyfy","cockpit","cockroach","cockscomb","cocksfoot","cockspur","cocksucker","cocksuckers","cocksure","cocksureness","cocktail","cocktails","cockup","cocky","coco","cocoa","cocoanut","cocobolo","coconspirator","coconspire","coconut","cocoon","cocooning","cocopah","cocoswood","cocotte","cocoyam","cocozelle","cocuswood","cod","coda","codded","codding","coddle","coddled","coddler","coddles","code","coded","codefendant","codeine","coder","codes","codetalker","codex","codfish","codfishes","codger","codices","codicil","codification","codified","codifies","codify","codifying","coding","codling","codon","codons","codpiece","codswallop","coeducate","coeducation","coeducational","coefficient","coefficients","coelacanth","coelentera","coelenterata","coelenterate","coelenteron","coeliac","coelogyne","coelom","coelophysis","coelostat","coenobite","coenobitic","coenobitical","coenuri","coenurus","coenzyme","coequal","coerce","coerced","coerces","coercing","coercion","coercive","coetaneous","coeval","coexist","coexistence","coexistent","coexisting","coexists","coextension","coextensive","cofactor","cofactors","coffee","coffeeberry","coffeecake","coffeehouse","coffeepot","coffer","cofferdam","coffers","coffin","cofounder","cog","cogency","cogent","cogged","cogging","coggle","cogitable","cogitate","cogitation","cogitative","cognate","cognation","cognisable","cognisance","cognisant","cognise","cognition","cognitive","cognitively","cognizable","cognizance","cognizant","cognize","cognomen","cognomina","cognoscente","cognoscible","cognosente","cognosenti","cogwheel","cohabit","cohabitation","cohabiting","cohabits","cohere","coherence","coherency","coherent","coherently","cohesion","cohesive","cohesiveness","coho","cohoe","cohort","cohorts","cohosh","cohune","coif","coiffe","coiffed","coiffeur","coiffeuse","coiffing","coiffure","coign","coigne","coil","coiled","coiling","coils","coin","coinage","coincide","coincided","coincidence","coincident","coincidental","coincidentally","coincidently","coincides","coinciding","coined","coiner","coining","coins","coinsurance","coinsure","coir","coital","coition","coitus","coke","col","COL.","Col.","col.","cola","colander","colchicine","cold","coldcock","coldcream","colder","coldhearted","coldheartedness","coldly","coldness","colds","coldwork","cole","coleorhiza","coleorhizae","coleridgean","coleridgian","coleslaw","coleus","colewort","colic","colicky","colicroot","coliphage","coliseum","colitis","collaborate","collaborated","collaborates","collaborating","collaboration","collaborationism","collaborationist","collaborations","collaborative","collaborator","collaborators","collage","collagen","collagenase","collagenic","collagenous","collapsable","collapse","collapsed","collapses","collapsible","collapsing","collar","collarbone","collard","collarless","collars","collate","collateral","collateralize","collates","collating","collation","colleague","colleagues","collect","collectable","collected","collectedly","collectible","collectibles","collecting","collection","collections","collective","collectively","collectivisation","collectivise","collectivised","collectivises","collectivising","collectivism","collectivist","collectivistic","collectivization","collectivize","collectivized","collectivizes","collectivizing","collector","collectors","collects","colleen","college","colleges","collegia","collegial","collegian","collegiate","collegium","collembolan","collet","collide","collider","collides","colliding","collie","collied","collier","colliery","colliest","colligate","colligation","collimate","collimation","collimator","collinear","collision","collisions","collocate","collocates","collocating","collocation","collodion","collogue","colloid","colloidal","colloidally","colloquia","colloquial","colloquialism","colloquially","colloquium","colloquy","collotype","collude","colludes","colluding","collusion","collusive","colluvia","colluvium","colly","collyria","collyrium","collywobbles","COLO.","Colo.","colo.","colobus","Colombia","colombia","colombian","colon","colonel","colones","colonial","colonialism","colonialist","colonic","colonies","colonisation","colonise","colonised","coloniser","colonisers","colonises","colonising","colonist","colonists","colonization","colonize","colonized","colonizer","colonizers","colonizes","colonizing","colonnade","colonnaded","colonoscope","colonoscopy","colony","colophon","colophony","color","coloradillo","colorado","colorant","colorants","coloration","coloratura","colorcast","colorectal","colored","coloreds","colorfast","colorful","colorfully","colorimeter","colorimetric","colorimetrical","colorimetry","coloring","colorise","colorist","colorize","colorized","colorizes","colorizing","colorless","colorlessness","colors","colossal","colossi","colossus","colostomy","colostrum","colour","colourant","colourants","colouration","colourcast","coloured","coloureds","colourful","colourfully","colouring","colourise","colourize","colourized","colourizes","colourizing","colourless","colourlessness","colours","colpitis","colpocele","colpocystitis","colpocystocele","colpoxerosis","coltan","colter","coltish","coltsfoot","colubrid","colugo","columbaria","columbarium","columbary","columbian","columbine","columbite","columbium","columbo","columella","columellae","column","columnar","columnea","columned","columniation","columniform","columnist","columnists","columnlike","columns","colymbiformes","colza","coma","comae","comal","comate","comatose","comatoseness","comatula","comatulae","comatulid","comb","combat","combatant","combating","combative","combatively","combativeness","combats","combatted","combatting","combed","comber","combinable","combination","combinational","combinations","combinative","combinatorial","combinatory","combine","combined","combines","combing","combining","combo","combretum","combs","comburant","comburent","combust","combustibility","combustible","combustibleness","combusting","combustion","combustive","combusts","come","comeback","comedian","comedians","comedienne","comedies","comedo","comedones","comedown","comedy","comelier","comeliest","comeliness","comely","comer","comes","comestible","comet","cometary","cometic","comeupance","comeuppance","comfier","comfiest","comfit","comfort","comfortable","comfortableness","comfortably","comforted","comforter","comforting","comfortingly","comfortless","comforts","comfrey","comfy","comic","comic-strip","comical","comicality","comically","comics","coming","comint","comity","comma","command","commandant","commanded","commandeer","commandeering","commander","commanders","commandership","commandery","commanding","commandment","commando","commandoes","commandos","commands","commelina","commelinales","commemorate","commemorated","commemorates","commemorating","commemoration","commemorative","commence","commenced","commencement","commences","commencing","commend","commendable","commendation","commended","commending","commends","commensal","commensalism","commensally","commensurable","commensurate","commensurateness","comment","commentaries","commentary","commentate","commentating","commentator","commentators","commented","commenting","comments","commerce","commercial","commercialisation","commercialise","commercialised","commercialises","commercialising","commercialism","commercialization","commercialize","commercialized","commercializes","commercializing","commercially","commercials","commie","comminate","commination","comminatory","commingle","commingling","comminute","commiserate","commiserating","commiseration","commiserative","commissar","commissariat","commissary","commission","commissionaire","commissioned","commissioner","commissioners","commissioning","commissions","commissure","commit","commiting","commitment","commitments","commits","committal","committed","committedness","committee","committeeman","committees","committeewoman","committing","commix","commixture","commode","commodious","commodiousness","commodities","commodity","commodore","common","commonage","commonality","commonalty","commoner","commonly","commonness","commonplace","commonplaceness","commonsense","commonsensible","commonsensical","commonweal","Commonwealth","commonwealth","commotion","commove","communal","communalise","communalism","communalize","communally","commune","communicable","communicant","communicate","communicated","communicating","communication","communicational","communications","communicative","communicativeness","communicator","communicatory","communing","communion","communique","communisation","communise","communism","communist","communistic","communists","communities","community","communization","communize","commutability","commutable","commutate","commutation","commutative","commutator","commute","commuter","commuters","commutes","commuting","Comoros","comoros","comose","comp","compact","compacted","compaction","compactly","compactness","companies","companion","companionability","companionable","companionableness","companionate","companioning","companions","companionship","companionway","company","comparability","comparable","comparably","comparative","comparatively","compare","compared","compares","comparing","comparison","comparisons","compart","compartment","compartmental","compartmentalisation","compartmentalise","compartmentalised","compartmentalises","compartmentalising","compartmentalization","compartmentalize","compartmentalized","compartmentalizes","compartmentalizing","compartmented","compartments","compass","compassion","compassionate","compassionately","compassionateness","compatibility","compatible","compatibly","compatriot","compeer","compel","compelled","compelling","compels","compendious","compendium","compensable","compensate","compensated","compensates","compensating","compensation","compere","compete","competed","competence","competencies","competency","competent","competently","competes","competing","competition","competitions","competitive","competitively","competitiveness","competitor","competitors","competitory","compilation","compile","compiled","compiler","compiles","compiling","complacence","complacency","complacent","complacently","complain","complainant","complained","complainer","complaining","complainingly","complains","complaint","complaintive","complaints","complaisance","complaisant","complect","complement","complemental","complementarity","complementary","complementation","complementing","complements","complete","completed","completely","completeness","completes","completing","completion","complex","complexes","complexifier","complexify","complexion","complexities","complexity","complexly","complexness","compliance","compliancy","compliant","complicate","complicated","complicatedness","complicates","complicating","complication","complications","complicity","complied","complies","compliment","complimentary","complimented","complimenting","compliments","complin","compline","complot","complotted","complotting","comply","complying","component","components","comport","comportment","compose","composed","composedly","composer","composers","composes","composing","composite","compositeness","composition","compositional","compositions","compositor","compost","composure","compote","compound","compounded","compounding","compounds","comprehend","comprehended","comprehendible","comprehending","comprehends","comprehensibility","comprehensible","comprehension","comprehensive","comprehensively","comprehensiveness","compress","compressed","compresses","compressibility","compressible","compressing","compression","compressor","comprise","comprised","comprises","comprising","compromise","compromised","compromiser","compromises","compromising","compsognathus","comptroller","comptrollership","compulsion","compulsive","compulsively","compulsiveness","compulsivity","compulsorily","compulsory","compunction","computable","computation","computational","computationally","compute","computer","computerise","computerised","computerises","computerising","computerization","computerize","computerized","computerizes","computerizing","computers","computes","computing","comrade","comradeliness","comradely","comradery","comrades","comradeship","con","conacaste","concatenate","concatenates","concatenating","concatenation","concave","concavely","concaveness","concavity","conceal","concealed","concealing","concealment","conceals","concede","conceded","concedes","conceding","conceit","conceited","conceitedly","conceitedness","conceivability","conceivable","conceivableness","conceivably","conceive","conceived","conceiver","conceives","conceiving","concenter","concentrate","concentrated","concentrates","concentrating","concentration","concentrations","concentre","concentric","concentrical","concentricity","concept","conception","conceptional","conceptive","concepts","conceptual","conceptualisation","conceptualise","conceptualised","conceptualises","conceptualising","conceptualism","conceptualistic","conceptuality","conceptualization","conceptualize","conceptualized","conceptualizes","conceptualizing","conceptually","conceptus","conceptuses","concern","concerned","concernedly","concerning","concerns","concert","concertante","concertanti","concerted","concerti","concertina","concertini","concertinist","concertino","concertise","concertize","concertizing","concerto","concerts","concession","concessionaire","concessioner","concessions","concessive","conch","concha","conchae","conchfish","conchologist","conchology","concierge","conciliable","conciliate","conciliated","conciliates","conciliating","conciliation","conciliative","conciliator","conciliatory","concise","concisely","conciseness","concision","conclave","conclude","concluded","concludes","concluding","conclusion","conclusions","conclusive","conclusively","conclusiveness","concoct","concocted","concocting","concoction","concocts","concomitance","concomitant","concord","concordance","concordant","concordat","concourse","concrete","concretely","concreteness","concretion","concretise","concretism","concretistic","concretize","concretizing","concubinage","concubine","concupiscence","concupiscent","concur","concurred","concurrence","concurrency","concurrent","concurrently","concurring","concurs","concuss","concussion","condemn","condemnable","condemnation","condemnatory","condemned","condemning","condemns","condensate","condensation","condense","condenser","condenses","condensing","condescend","condescending","condescendingly","condescendingness","condescension","condign","condiment","condition","conditional","conditionality","conditionally","conditioned","conditioner","conditioning","conditions","condo","condole","condolence","condolences","condolent","condom","condominium","condoms","condonation","condone","condoned","condones","condoning","condor","condottiere","condottieri","conduce","conducive","conduct","conductance","conducted","conducting","conduction","conductive","conductivity","conductor","conductress","conducts","conduit","condylar","condyle","condylion","condyloma","condylomata","cone","coneflower","conelike","conenose","cones","conessi","conestoga","coney","confab","confabbed","confabbing","confabulate","confabulating","confabulation","confect","confection","confectionary","confectioner","confectionery","confederate","confederation","confederative","confer","conferee","conferees","conference","conferences","conferment","conferral","conferred","conferrer","conferring","confers","conferva","confervae","confess","confessed","confessedly","confesses","confessing","confession","confessional","confessions","confessor","confetti","confidant","confidante","confide","confided","confidence","confident","confidential","confidentiality","confidentially","confidently","confides","confiding","confidingly","configuration","configurational","configurationism","configurations","configure","configured","configures","configuring","confine","confined","confinement","confines","confining","confirm","confirmable","confirmation","confirmative","confirmatory","confirmed","confirming","confirms","confiscate","confiscated","confiscates","confiscating","confiscation","confit","confiture","conflagrate","conflagration","conflate","conflating","conflict","conflicted","conflicting","conflictive","conflicts","confluence","confluent","conflux","conform","conformable","conformably","conformance","conformation","conformations","conforming","conformism","conformist","conformity","conforms","confound","confounded","confoundedly","confounding","confrere","confront","confrontation","confrontational","confronted","confronting","confronts","confucian","confucianist","confusable","confuse","confused","confusedly","confusedness","confuses","confusing","confusingly","confusion","confutable","confutation","confutative","confute","confuter","confuting","conga","conge","congeal","congealed","congealment","congee","congelation","congenator","congener","congeneric","congenerical","congenerous","congenial","congeniality","congenially","congenialness","congenital","conger","congeries","congest","congested","congestion","congestive","congii","congius","conglobate","conglobation","conglobe","conglomerate","conglomerates","conglomeration","conglutinate","conglutination","Congo","congo","congolese","congou","congrats","congratulate","congratulated","congratulates","congratulation","congratulations","congratulatory","congregant","congregate","congregating","congregation","congregational","congregationalist","congress","congressional","congressman","congresswoman","congruence","congruent","congruity","congruous","congruousness","conic","conical","conically","conidia","conidiophore","conidiospore","conidium","conifer","coniferophyta","coniferophytina","coniferous","conima","conjectural","conjecturally","conjecture","conjecturing","conjoin","conjoined","conjoining","conjoint","conjointly","conjugal","conjugally","conjugate","conjugated","conjugates","conjugating","conjugation","conjunct","conjunction","conjunctiva","conjunctivae","conjunctival","conjunctive","conjunctivitis","conjuncture","conjuration","conjure","conjurer","conjures","conjuring","conjuror","conjury","conk","conker","conn","CONN.","Conn.","conn.","connate","connatural","connect","connected","connectedness","connecter","connecticut","connecting","connection","connections","connective","connectivity","connector","connects","conned","connexion","connexions","conning","conniption","connivance","connive","conniving","connoisseur","connoisseurship","connotation","connotational","connotations","connotative","connote","connoting","connubial","conodont","conodontophorida","conoid","conquer","conquerable","conquering","conqueror","conquers","conquest","conquistador","conquistadores","cons","consanguine","consanguineal","consanguineous","consanguinity","conscience","conscienceless","conscientious","conscientiously","conscientiousness","conscionable","conscious","consciously","consciousness","conscript","conscription","consecrate","consecrated","consecrating","consecration","consecutive","consecutively","consensual","consensus","consent","consentaneous","consented","consentient","consenting","consents","consequence","consequences","consequent","consequential","consequentially","consequently","conservancy","conservation","conservationist","conservatism","conservative","conservatively","conservatives","conservativism","conservativist","conservatoire","conservator","conservatory","conserve","conserved","conserves","conserving","consider","considerable","considerably","considerate","considerately","considerateness","consideration","considerations","considered","considering","considers","consign","consigned","consignee","consigner","consigning","consignment","consignor","consigns","consist","consisted","consistence","consistency","consistent","consistently","consisting","consistory","consists","consociate","consolable","consolation","consolatory","console","consoles","consolidate","consolidated","consolidates","consolidating","consolidation","consolidative","consoling","consolingly","consomme","consonance","consonant","consonantal","consonate","consort","consortia","consorting","consortium","conspecific","conspectus","conspicuous","conspicuously","conspicuousness","conspiracy","conspirative","conspirator","conspiratorial","conspire","conspired","conspires","conspiring","constable","constabulary","constancy","constant","constantan","constantly","constants","constatation","constellate","constellation","consternate","consternation","constipate","constipated","constipation","constituencies","constituency","constituent","constituents","constitute","constituted","constitutes","constituting","constitution","constitutional","constitutionalise","constitutionalism","constitutionalist","constitutionalize","constitutionally","constitutive","constrain","constrained","constrainedly","constraining","constrains","constraint","constraints","constrict","constricted","constricting","constriction","constrictive","constrictor","constricts","constringe","construal","construct","constructed","constructing","construction","constructions","constructive","constructively","constructiveness","constructivism","constructivist","constructor","constructs","construe","construed","construing","consubstantial","consubstantiate","consubstantiation","consuetude","consuetudinal","consuetudinary","consul","consular","consulate","consulship","consult","consultancy","consultant","consultants","consultation","consultative","consultatory","consulted","consulting","consultive","consults","consumable","consume","consumed","consumer","consumerism","consumers","consumes","consuming","consummate","consummated","consummating","consummation","consumption","consumptive","contact","contacted","contacting","contacts","contadino","contagia","contagion","contagions","contagious","contagiously","contagium","contain","contained","container","containerful","containerise","containerize","containers","containership","containing","containment","contains","contaminant","contaminants","contaminate","contaminated","contaminates","contaminating","contamination","contaminations","contaminative","contemn","contemplate","contemplated","contemplates","contemplating","contemplation","contemplative","contemplativeness","contemporaneity","contemporaneous","contemporaneously","contemporaneousness","contemporaries","contemporary","contemporise","contemporize","contemporizing","contempt","contemptibility","contemptible","contemptibly","contemptuous","contemptuously","contemptuousness","contend","contended","contender","contenders","contending","contends","content","contented","contentedly","contentedness","contention","contentious","contentiousness","contentment","contents","conterminous","contest","contestable","contestant","contestants","contestation","contested","contestee","contester","contesting","contests","context","contexts","contextual","contextualise","contextualised","contextualises","contextualising","contextualism","contextualize","contextualized","contextualizes","contextualizing","contextually","contiguity","contiguous","contiguousness","continence","continency","continent","continental","continents","contingence","contingency","contingent","continua","continual","continually","continuance","continuant","continuation","continuative","continue","continued","continues","continuing","continuity","continuo","continuous","continuously","continuousness","continuum","conto","contort","contorted","contorting","contortion","contortionist","contour","contours","contraband","contrabandist","contrabass","contrabassoon","contraception","contraceptive","contraceptives","contraclockwise","contract","contractable","contracted","contractile","contractility","contracting","contraction","contractions","contractor","contractors","contracts","contractual","contractually","contracture","contradance","contradict","contradicting","contradiction","contradictions","contradictorily","contradictoriness","contradictory","contradicts","contradistinction","contradistinguish","contrafagotto","contrail","contraindicate","contraindicating","contraindication","contralateral","contralti","contralto","contraption","contrapuntal","contrapuntist","contrarian","contrariety","contrarily","contrariness","contrarious","contrariwise","contrary","contrast","contrasted","contrasting","contrastingly","contrastive","contrasts","contrasty","contravene","contravenes","contravening","contravention","contredanse","contretemps","contribute","contributed","contributes","contributing","contribution","contributions","contributive","contributor","contributors","contributory","contrite","contritely","contriteness","contrition","contrivance","contrive","contrived","contriver","contrives","contriving","control","controling","controllable","controlled","controller","controllers","controllership","controlling","controls","controversial","controversialist","controversially","controversies","controversy","controvert","contumacious","contumaciously","contumacy","contumelious","contumeliously","contumely","contuse","contusion","conundrum","conurbation","convalesce","convalescence","convalescent","convalescing","convect","convection","convector","convene","convened","convener","convenes","convenience","convenient","conveniently","convening","convent","conventicle","convention","conventional","conventionalisation","conventionalise","conventionalised","conventionalism","conventionality","conventionalization","conventionalize","conventionalized","conventionally","conventioneer","conventions","conventual","converge","converged","convergence","convergency","convergent","converges","converging","conversance","conversancy","conversant","conversation","conversational","conversationalist","conversationally","conversationist","conversations","conversazione","conversazioni","converse","conversely","converses","conversing","conversion","convert","converted","converter","convertibility","convertible","converting","convertor","converts","convex","convexity","convexly","convexness","convey","conveyable","conveyance","conveyancer","conveyancing","conveyed","conveyer","conveying","conveyor","conveys","convict","convicted","convictfish","convicting","conviction","convictions","convicts","convince","convinced","convinces","convincible","convincing","convincingly","convincingness","convivial","conviviality","convivially","convocation","convoke","convolute","convoluted","convolutes","convoluting","convolution","convolve","convolvuli","convolvulus","convoy","convulse","convulsing","convulsion","convulsive","convulsively","cony","coo","cooccur","cooccurring","cooing","Cook","cook","cookbook","cookbooks","cooked","cooker","cookery","cookfire","cookhouse","cookie","cookies","cooking","cookout","cooks","cookstove","cookware","cooky","cool","coolant","cooled","cooler","coolheaded","coolie","cooling","coolly","coolness","cools","coolwart","cooly","coon","coondog","coonhound","coonskin","coontie","coop","cooper","cooperate","cooperated","cooperating","cooperation","cooperative","cooperatively","cooperativeness","cooperator","coordinate","coordinated","coordinately","coordinates","coordinating","coordination","coordinative","coordinator","coot","cooter","cootie","cop","copacetic","copaiba","copal","copaline","copalite","copartner","copartnership","copasetic","cope","copeck","copepod","copernican","copesetic","copesettic","copestone","copied","copier","copies","copilot","coping","copings","copious","copiously","copiousness","coplanar","copolymer","copolymerise","copolymerize","copout","copped","copper","copperhead","copperplate","coppersmith","copperware","coppery","coppice","copping","copra","coprolalia","coprolite","coprolith","coprophagia","coprophagy","cops","copse","coptic","copula","copulae","copular","copulate","copulates","copulating","copulation","copulative","copulatory","copy","copybook","copycat","copyedit","copyediting","copyedits","copyhold","copyholder","copying","copyist","copyread","copyreader","copyright","copyrighted","copywriter","coquet","coquetry","coquette","coquetted","coquetting","coquettish","coquettishly","coquille","cora","coracan","coracle","corakan","coral","coralbells","coralberry","coralroot","coralwood","coralwort","corbel","corbelled","corbicula","corbiculae","corbiestep","corbina","cord","cordage","cordarone","cordate","corded","cordgrass","cordial","cordiality","cordially","cordierite","cordiform","cording","cordite","corditis","cordless","cordon","cordova","cordovan","cords","corduroy","cordwood","core","coreference","coreferent","coreferential","coreid","coreligionist","coreopsis","corer","cores","corespondent","corgard","corgi","coria","coriaceous","coriander","coricidin","corinthian","corium","cork","corkage","corkboard","corked","corker","corking","corkscrew","corkwood","corky","corm","cormorant","cormose","cormous","corn","cornbread","corncob","corncrake","corncrib","cornea","corneae","corneal","corned","cornel","cornelian","corneous","corner","cornerback","cornered","cornering","corners","cornerstone","cornet","cornetfish","cornetist","corneum","cornfield","cornflour","cornflower","cornhusk","cornhusker","cornhusking","cornice","cornier","corniest","cornish","cornmeal","cornpone","cornsilk","cornsmut","cornstalk","cornstarch","cornu","cornua","cornucopia","corny","corolla","corollary","corona","coronach","coronae","coronal","coronary","coronate","coronation","coroner","coronet","coroneted","coronilla","coronion","corozo","corp","CORP.","Corp.","corp.","corpora","corporal","corporality","corporate","corporation","corporations","corporatism","corporatist","corporeal","corporeality","corposant","corps","corpse","corpses","corpulence","corpulency","corpulent","corpus","corpuscle","corpuscular","corrade","corral","corralled","corralling","corrasion","correct","correctable","corrected","correcting","correction","correctional","corrections","correctitude","corrective","correctly","correctness","corrects","corregidor","correlate","correlated","correlates","correlating","correlation","correlational","correlations","correlative","correlativity","correspond","corresponded","correspondence","correspondent","correspondents","corresponding","correspondingly","corresponds","corrida","corridor","corridors","corrie","corrigenda","corrigendum","corrigible","corroborant","corroborate","corroborates","corroborating","corroboration","corroborative","corroboratory","corrode","corroded","corrodentia","corrodes","corroding","corrosion","corrosive","corrugate","corrugated","corrugation","corrupt","corrupted","corruptedly","corruptibility","corruptible","corrupting","corruption","corruptive","corruptly","corruptness","corrupts","corsage","corsair","corselet","corset","corseting","corsica","corsican","corslet","cortef","cortege","cortex","cortez","cortical","cortically","cortices","corticifugal","corticipetal","corticoafferent","corticoefferent","corticofugal","corticoid","corticosteroid","corticosterone","corticotrophin","corticotropin","cortina","cortinae","cortisol","cortisone","corundom","corundum","coruscant","coruscate","coruscating","coruscation","corvee","corvette","corvine","corybant","corybantes","corymb","corymbose","corynebacterium","coryphaei","coryphaeus","coryphantha","corythosaur","corythosaurus","coryza","coscoroba","cosec","cosecant","coseismal","coseismic","cosh","cosher","cosier","cosies","cosiest","cosign","cosignatory","cosigner","cosily","cosine","cosiness","cosmea","cosmetic","cosmetically","cosmetician","cosmetics","cosmetologist","cosmetology","cosmic","cosmid","cosmogenic","cosmogeny","cosmogonic","cosmogonical","cosmogony","cosmographer","cosmographist","cosmography","cosmolatry","cosmologic","cosmological","cosmologist","cosmology","cosmonaut","cosmopolitan","cosmopolite","cosmos","cosmotron","cosponsor","cosponsoring","cosset","cosseting","cost","Costa","costa","costae","costal","costalgia","costate","costermonger","costia","costiasis","costing","costive","costless","costlier","costliest","costliness","costly","costmary","costochondritis","costs","costume","costumed","costumer","costumes","costumier","costuming","costusroot","cosy","cot","cotan","cotangent","cote","cotenant","coterie","coterminous","coterminously","cothromboplastin","cothurni","cothurnus","cotilion","cotillion","cotinga","cotoneaster","cottage","cottager","cottages","cottar","cotter","cottier","cotton","cottoning","cottonmouth","cottonseed","cottontail","cottonweed","cottonwick","cottonwood","cottony","cotyledon","cotyloid","cotyloidal","coucal","couch","couchant","couched","couchette","couching","cougar","cough","coughed","coughing","coughs","COULD","Could","could","COULD'VE","Could've","could've","COULDN'T","Couldn't","couldn't","COULDN'T'VE","Couldn't've","couldn't've","COULDNT","Couldnt","couldnt","COULDN\u2019T","Couldn\u2019t","couldn\u2019t","COULDN\u2019T\u2019VE","Couldn\u2019t\u2019ve","couldn\u2019t\u2019ve","COULDVE","Couldve","couldve","COULD\u2019VE","Could\u2019ve","could\u2019ve","coulisse","coulter","coumadin","coumarone","council","councillor","councillors","councillorship","councilman","councilor","councilors","councilorship","councilwoman","counsel","counseled","counseling","counselled","counselling","counsellor","counsellors","counsellorship","counselor","counselors","counselorship","counsels","count","countable","countdown","counted","countenance","counter","counter-claims","counter-cyclical","counter-intelligence","counter-trade","counteract","counteracted","counteracting","counteraction","counteractive","counteractively","counterargument","counterattack","counterattraction","counterbalance","counterbalanced","counterbalances","counterblast","counterblow","counterbombardment","counterbore","counterchallenge","counterchange","countercharge","countercheck","counterclaim","counterclockwise","countercoup","counterculture","countercurrent","counterdemonstration","counterdemonstrator","countered","counterespionage","counterexample","counterfactual","counterfactuality","counterfeit","counterfeiter","counterfeiting","counterfire","counterfoil","counterglow","countering","counterinsurgency","counterinsurgent","counterintelligence","counterintuitive","counterintuitively","counterirritant","counterman","countermand","countermanding","countermarch","countermeasure","countermine","countermove","counteroffensive","counteroffer","counterpane","counterpart","counterparts","counterperson","counterplan","counterplay","counterplea","counterplot","counterplotted","counterplotting","counterpoint","counterpoise","counterpoised","counterpoison","counterpose","counterproductive","counterproposal","counterpunch","counterreformation","counterrevolution","counterrevolutionary","counterrevolutionist","counters","countershot","countersign","countersignature","countersink","counterspy","counterstain","counterstrike","countersubversion","countersuit","countertenor","counterterror","counterterrorism","counterterrorist","countertop","countertransference","countervail","countervailing","counterweight","counterwoman","countess","counties","counting","countinghouse","countless","countlessness","countries","countrified","country","countryfied","countryfolk","countryman","countryseat","countryside","countrywide","countrywoman","counts","county","countywide","coup","coupe","couple","coupled","coupler","couples","couplet","coupling","couplings","coupon","coupons","courage","courageous","courageously","courageousness","courante","courbaril","courgette","courier","courlan","course","coursed","courser","courses","coursework","coursing","court","courted","courteous","courteously","courtesan","courtesy","courthouse","courtier","courting","courtlier","courtliest","courtliness","courtly","courtroom","courts","courtship","courtyard","courtyards","couscous","cousin","cousinly","cousins","couteau","couteaux","couth","couthie","couthy","couture","couturier","couvade","couverture","covalence","covalency","covalent","covariance","covariant","covariation","cove","coven","covenant","cover","coverage","coverall","covered","covering","coverlet","covers","covert","covertly","covertness","coves","covet","coveted","coveting","covetous","covetously","covetousness","covets","covey","coville","cow","cowage","coward","cowardice","cowardliness","cowardly","cowbarn","cowbell","cowberry","cowbird","cowboy","cowboys","cowcatcher","cower","cowering","cowfish","cowfishes","cowgirl","cowhand","cowherb","cowherd","cowhide","cowhouse","cowl","cowled","cowlick","cowling","cowman","cowpea","cowpie","cowpoke","cowpox","cowpuncher","cowrie","cowry","cows","cowshed","cowskin","cowslip","cowtown","cox","coxa","coxae","coxcomb","coxsackievirus","coxswain","coy","coydog","coyly","coyness","coyol","coyote","coypu","cozen","cozenage","cozier","cozies","coziest","cozily","coziness","cozy","cpa","cpi","cpr","cps","cpu","crab","crabapple","crabbed","crabbedness","crabbier","crabbiest","crabbiness","crabbing","crabby","crabgrass","crabmeat","crabs","crabwise","crack","crackbrained","crackdown","cracked","cracker","crackerberry","crackerjack","crackers","cracking","crackle","crackles","crackleware","crackling","crackpot","cracks","cracksman","cradle","cradlesong","cradling","craft","crafted","crafter","craftier","craftiest","craftily","craftiness","crafting","crafts","craftsman","craftsmanship","crafty","crag","cragfast","cragged","craggier","craggiest","craggy","cragsman","crake","cram","crambo","cramboes","crammed","crammer","cramming","cramp","crampbark","cramped","crampfish","cramping","crampon","crampoon","cramps","crams","cran","cranberry","cranch","crane","cranes","cranesbill","crania","cranial","craniata","craniate","craning","craniologist","craniology","craniometer","craniometric","craniometrical","craniometry","craniotomy","cranium","crank","crankcase","cranked","crankier","crankiest","crankiness","cranking","cranks","crankshaft","cranky","crannied","cranny","crap","crapaud","crape","crapette","crapped","crapper","crappie","crapping","crappy","crapshoot","crapshooter","crapulence","crapulent","crapulous","crases","crash","crashed","crasher","crashes","crashing","crasis","crass","crassitude","crassness","crate","crateful","crater","craton","craunch","cravat","crave","craved","craven","cravenness","craving","craw","crawdad","crawdaddy","crawfish","crawfishes","crawl","crawled","crawler","crawlier","crawliest","crawling","crawls","crawlspace","crawly","crayfish","crayfishes","crayon","craze","crazed","crazier","craziest","crazily","craziness","crazy","crazyweed","cre8","creak","creakily","creaking","creakingly","creaky","cream","creamcups","creamed","creamer","creamery","creamier","creamiest","creaminess","creamy","crease","creaseless","creaseproof","creashak","creasing","create","created","creates","creatin","creatine","creating","creation","creationism","creations","creative","creatively","creativeness","creativity","creator","creators","creature","creatures","creche","cred","credal","credence","credenda","credendum","credential","credentialled","credentials","credenza","credibility","credible","credibleness","credibly","credit","creditable","creditably","credited","crediting","creditor","creditors","credits","creditworthiness","creditworthy","credo","credulity","credulous","credulously","credulousness","creed","creedal","creek","creel","creep","creeper","creepier","creepiest","creepiness","creeping","creeps","creepy","creese","cremains","cremate","cremation","crematoria","crematorium","crematory","crenate","crenated","crenation","crenature","crenel","crenelate","crenelated","crenelation","crenellate","crenellated","crenellation","crenelle","crenulate","crenulated","creole","creolize","creosol","creosote","crepe","creping","crepitate","crepitation","crept","crepuscle","crepuscular","crepuscule","crescendi","crescendo","crescent","cresol","cress","cresson","crest","crested","crestfallen","cresting","cretaceous","cretin","cretinism","cretinous","cretonne","crevasse","crevice","crew","crewelwork","crewet","crewman","crews","crib","cribbage","cribbed","cribbing","cribella","cribellum","cribs","crick","cricket","cricketer","cried","crier","cries","crime","crimes","criminal","criminalisation","criminalise","criminalised","criminalises","criminalising","criminalism","criminality","criminalization","criminalize","criminalized","criminalizes","criminalizing","criminally","criminalness","criminals","criminate","criminated","criminates","criminative","criminatory","criminological","criminologist","criminology","crimp","crimper","crimping","crimson","cringe","cringed","cringeing","cringing","cringle","crinion","crinkle","crinkled","crinkleroot","crinkles","crinkling","crinkly","crinoid","crinoline","criollo","cripple","crippled","cripples","crippling","crises","crisis","crisp","crispate","crispen","crispier","crispiest","crispiness","crisply","crispness","crispy","crissa","crisscross","crisscrossed","crisscrosses","crisscrossing","crissum","crista","cristae","cristal","cristobalite","crit","criteria","criterial","criterion","criterional","criterium","crith","critic","critical","criticality","critically","criticalness","criticise","criticised","criticises","criticising","criticism","criticisms","criticize","criticized","criticizes","criticizing","critics","critique","critiquing","critter","critters","crixivan","cro","croak","croaker","croaking","croaky","croat","Croatia","croatia","croatian","crochet","crocheting","crock","crocked","crockery","crocket","crocketed","crocodile","crocodilia","crocodilian","crocodilus","crocolite","crocus","croft","crofter","croissant","cromlech","cromorne","cromwellian","crone","cronk","crony","cronyism","crook","crookback","crookbacked","crooked","crookedly","crookedness","crooking","crookneck","crooks","croon","crooned","crooner","crooning","croons","crop","cropped","cropper","cropping","crops","croquet","croquette","crore","crosier","cross","cross-bay","cross-blending","cross-border","cross-connect","cross-functional","cross-licensing","cross-market","cross-ownership","cross-shareholdings","cross-state","crossbar","crossbeam","crossbench","crossbencher","crossbill","crossbones","crossbow","crossbred","crossbreed","crossbreeding","crosscheck","crosscurrent","crosscut","crosscutting","crosse","crossed","crosses","crossfire","crosshairs","crosshatch","crosshatched","crosshatching","crosshead","crossheading","crossing","crossings","crossjack","crossly","crossness","crossopterygian","crossover","crosspatch","crosspiece","crossroad","crossruff","crosstalk","crosstie","crosstown","crosswalk","crossway","crossways","crosswind","crosswise","crossword","crotal","crotalaria","crotaphion","crotch","crotchet","crotchetiness","crotchety","croton","crotonbug","crottal","crottle","crouch","crouched","crouching","croup","croupe","croupier","croupy","crouton","crow","crowbait","crowbar","crowberry","crowd","crowded","crowding","crowds","crowed","crowfoot","crowing","crown","crownbeard","crowned","crowning","crownless","crowns","crownwork","crows","crozier","crp","crt","cruces","crucial","cruciality","crucially","cruciate","crucible","crucifer","cruciferous","crucified","crucifies","crucifix","cruciform","crucify","crucifying","crud","cruddy","crude","crudely","crudeness","crudest","crudites","crudity","cruel","crueler","cruelest","crueller","cruellest","cruelly","cruelness","cruelty","cruet","cruise","cruiser","cruiserweight","cruises","cruising","cruller","crumb","crumbier","crumbiest","crumble","crumbled","crumbles","crumblier","crumbliest","crumbliness","crumbling","crumbly","crumbs","crumby","crumhorn","crummier","crummiest","crummy","crump","crumpet","crumple","crumpled","crumples","crumpling","crunch","crunched","crunching","crupper","crura","crural","crus","crusade","crusader","crusading","crusado","crusadoes","cruse","crush","crushed","crusher","crushes","crushing","crushingly","crust","crustacean","crustaceous","crustal","crusted","crustier","crustiest","crustlike","crustose","crusty","crutch","crux","cruzado","cruzadoes","cry","cryaesthesia","crybaby","cryesthesia","crying","cryings","cryoanaesthesia","cryoanesthesia","cryobiology","cryocautery","cryogen","cryogenic","cryogenics","cryogeny","cryolite","cryometer","cryonic","cryonics","cryopathy","cryophobia","cryoscope","cryostat","cryosurgery","crypt","cryptanalysis","cryptanalyst","cryptanalytic","cryptanalytics","cryptic","cryptical","cryptically","cryptobiosis","cryptobiotic","cryptococcosis","cryptocoryne","cryptogam","cryptogamia","cryptogamic","cryptogamous","cryptogram","cryptograph","cryptographer","cryptographic","cryptographical","cryptographically","cryptography","cryptologic","cryptological","cryptologist","cryptology","cryptomonad","cryptophyte","cryptorchidism","cryptorchidy","cryptorchism","crystal","crystalise","crystalised","crystalize","crystalized","crystalline","crystallisation","crystallise","crystallised","crystallises","crystallising","crystallite","crystallization","crystallize","crystallized","crystallizes","crystallizing","crystallographer","crystallography","crystals","cse","csis","cst","CT.","Ct.","ct.","ctc","ctene","ctenidia","ctenidium","ctenoid","ctenophore","cub","Cuba","cuba","cuban","cubbed","cubbing","cubby","cubbyhole","cube","cubeb","cubelike","cubes","cubic","cubical","cubicity","cubicle","cubicula","cubiculum","cubiform","cubism","cubist","cubistic","cubit","cubital","cubitiere","cubitus","cuboid","cuboidal","cuckold","cuckolding","cuckoldom","cuckoldry","cuckoo","cuckooflower","cuckoopint","cucumber","cucumbers","cucurbit","cucurbitaceous","cud","cudbear","cuddle","cuddles","cuddlesome","cuddling","cuddly","cuddy","cudgel","cudgeled","cudgeling","cudgelled","cudgelling","cudweed","cue","cueing","cues","cuff","cuffing","cufflink","cuffs","cuirass","cuirassier","cuisine","cuisse","cuke","cul","culdoscope","culdoscopy","culex","culices","culinary","cull","culled","cullender","culling","cullis","culls","culm","culminate","culminated","culminates","culminating","culmination","culotte","culpa","culpability","culpable","culpableness","culpably","culpae","culprit","cult","culti","cultism","cultist","cultivable","cultivar","cultivatable","cultivate","cultivated","cultivates","cultivating","cultivation","cultivator","cultural","culturally","culturati","culture","cultured","cultures","culturing","cultus","culverin","culvert","cum","cumarone","cumber","cumbersome","cumbersomeness","cumbrous","cumfrey","cumin","cummerbund","cummings","cumquat","cumulate","cumulation","cumulative","cumulatively","cumuli","cumuliform","cumulonimbi","cumulonimbus","cumulostrati","cumulostratus","cumulous","cumulus","cunctation","cunctator","cuneal","cuneate","cuneiform","cuneus","cunner","cunnilinctus","cunnilingus","cunning","cunningly","cunt","cup","cupbearer","cupboard","cupcake","cupcakes","cupel","cupelled","cupelling","cupflower","cupful","cupidity","cuplike","cupola","cuppa","cupped","cupper","cupping","cupric","cuprimine","cuprite","cupronickel","cuprous","cups","cupular","cupulate","cupule","cur","curability","curable","curableness","curacoa","curacy","curandera","curandero","curare","curassow","curate","curated","curates","curating","curative","curator","curatorial","curators","curatorship","curb","curbed","curbing","curbs","curbside","curbstone","curd","curdle","curdled","curdling","cure","cured","cures","curet","curettage","curette","curetted","curettement","curetting","curfew","curfews","curia","curiae","curietherapy","curing","curio","curiosa","curiosity","curious","curiously","curiousness","curium","curl","curled","curler","curlew","curlicue","curlier","curliest","curliness","curling","curls","curly","curmudgeon","curmudgeonly","currajong","currant","currawong","currencies","currency","current","currently","currentness","currents","curricula","curricular","curriculum","curried","currier","currish","currishly","curry","currycomb","currying","curse","cursed","cursedly","curses","cursive","cursively","cursor","cursorial","cursorily","cursory","curst","curt","curtail","curtailed","curtailing","curtailment","curtails","curtain","curtained","curtainless","curtains","curtal","curtilage","curtly","curtness","curtsey","curtsied","curtsy","curtsying","curvaceous","curvaceously","curvaceousness","curvature","curve","curved","curves","curvet","curvetted","curvetting","curvey","curvilineal","curvilinear","curving","curvy","cusco","cuscus","cushat","cushaw","cushion","cushioned","cushioning","cushions","cushiony","cushy","cusk","cusp","cuspate","cuspated","cusped","cuspid","cuspidal","cuspidate","cuspidated","cuspidation","cuspidor","cuss","cussed","cussedly","cussedness","cussing","custard","custodes","custodial","custodian","custodianship","custody","custom","customarily","customary","customer","customers","customhouse","customise","customised","customises","customising","customize","customized","customizes","customizing","customs","customshouse","custos","cut","cutaneal","cutaneous","cutaway","cutback","cutbacks","cutch","cute","cutely","cuteness","cuter","cutes","cuticle","cuticula","cuticulae","cuticular","cutin","cutinize","cutis","cutlas","cutlassfish","cutler","cutlery","cutlet","cutoff","cutout","cutpurse","cuts","cuttable","cutter","cutthroat","cutting","cuttingly","cuttle","cuttlefish","cuttlefishes","cutwork","cutworm","cuz","cva","cwm","cwt","cyan","cyanamid","cyanamide","cyanide","cyanite","cyanobacteria","cyanobacterial","cyanocobalamin","cyanogen","cyanogenetic","cyanogenic","cyanohydrin","cyanophyceae","cyanophyte","cyanosis","cyanuramide","cyberart","cybercafe","cybercrime","cyberculture","cybernate","cybernation","cybernaut","cybernetic","cybernetics","cyberphobia","cyberpunk","cybersex","cyberspace","cyberwar","cyborg","cycad","cycadophyta","cycadophytina","cyclamen","cycle","cycles","cyclic","cyclical","cyclicity","cycling","cyclist","cyclists","cyclobenzaprine","cyclohexanol","cycloid","cycloidal","cyclonal","cyclone","cyclonic","cyclonical","cyclooxygenase","cyclopaedia","cyclopean","cyclopedia","cyclopes","cyclopia","cyclopropane","cyclops","cyclorama","cycloserine","cycloses","cyclosis","cyclostome","cyclostyle","cyclothymia","cyclothymic","cyclotron","cyder","cydippea","cydippidea","cygnet","cylices","cylikes","cylinder","cylinders","cylindric","cylindrical","cylindricality","cylindricalness","cylix","cyma","cymae","cymatia","cymatium","cymbal","cymbalist","cymbid","cymbidium","cyme","cymene","cymling","cymograph","cymose","cymric","cymru","cymry","cymule","cynancum","cynic","cynical","cynically","cynicism","cynodont","cynophobia","cynosure","cynthia","cynwulf","cyon","cypher","cyphers","cypre","cypress","cyprian","cyprinid","cyprinodont","cyprinoid","cypriot","cypriote","cypripedia","cyproheptadine","Cyprus","cyprus","cypsela","cypselae","cyrilla","cyrillic","cyst","cysteine","cystic","cysticerci","cysticercus","cystine","cystitis","cystocele","cystolith","cystoparalysis","cystoplegia","cytherea","cytidine","cytoarchitectonic","cytoarchitectonics","cytoarchitectural","cytoarchitecture","cytochrome","cytogenesis","cytogenetic","cytogenetical","cytogeneticist","cytogenetics","cytogeny","cytokine","cytokines","cytokinesis","cytokinetic","cytokinin","cytol","cytologic","cytological","cytologist","cytology","cytolysin","cytolysis","cytolytic","cytomegalic","cytomegalovirus","cytomembrane","cytopathogenic","cytopenia","cytophotometer","cytophotometric","cytophotometrically","cytophotometry","cytoplasm","cytoplasmatic","cytoplasmic","cytoplasmically","cytoplast","cytoplastic","cytosine","cytoskeleton","cytosmear","cytosol","cytostome","cytotoxic","cytotoxicity","cytotoxin","czar","czarina","czarist","czaristic","czaritza","Czech","czech","czechoslovak","czechoslovakian","D-DAY","D-Day","D-day","d-day","d.","D.C.","d.c.","d.o.a.","da","dab","dabbed","dabbing","dabble","dabbled","dabbler","dabbles","dabbling","dabchick","dabs","dacca","dace","dacha","dachshund","dachsie","dacite","dacitic","dacninae","dacoit","dacoity","dacryocyst","dacryocystitis","dacryon","dactyl","dactylic","dactylomegaly","dad","dada","dadaism","daddy","dado","dadoes","dads","daedal","daemon","daffier","daffiest","daffo","daffodil","daffy","dafla","daft","daftly","daftness","dag","dagame","dagga","dagged","dagger","daggerboard","dagging","dago","dagoes","daguerreotype","dah","dahl","dahlia","dahna","dahomey","daikon","dail","dailies","daily","daimio","daimon","daintier","daintiest","daintily","daintiness","dainty","daiquiri","dairen","dairy","dairying","dairymaid","dairyman","dais","daishiki","daisy","daisybush","daisylike","dak","dakoit","dakoity","dal","dalasi","dale","dalesman","daleth","dalliance","dallied","dallier","dallisgrass","dally","dallying","dalmane","dalmatian","dalo","daltonism","dam","damage","damaged","damages","damaging","damar","damascene","damascus","damask","dame","damgalnunna","daminozide","dammar","dammed","damming","damn","damnable","damnably","damnation","damnatory","damned","damnified","damnify","damning","damnit","damoiselle","damosel","damourite","damozel","damp","damped","dampen","dampened","dampener","dampening","damper","damping","dampish","damply","dampness","dams","damsel","damselfish","damselfishes","damselfly","damson","dana","danaid","danau","dance","danceable","dancer","dancers","dances","dancing","dandelion","dander","dandier","dandiest","dandified","dandify","dandily","dandle","dandling","dandruff","dandy","dandyish","dandyism","danewort","dangaleat","danger","dangerous","dangerously","dangerousness","dangers","dangle","dangleberry","dangled","dangles","dangling","danish","dank","dankness","danmark","danseur","danseuse","dantean","dantesque","danzig","daoism","dap","daphnia","dapped","dapper","dapperness","dapping","dapple","dappled","dappling","dapsang","dapsone","daraf","dardan","dardanian","dardic","DARE","Dare","dare","dared","daredevil","daredevilry","daredeviltry","DAREN'T","Daren't","daren't","DARENT","Darent","darent","DAREN\u2019T","Daren\u2019t","daren\u2019t","DARES","Dares","dares","DARESN'T","Daresn't","daresn't","DARESNT","Daresnt","daresnt","DARESN\u2019T","Daresn\u2019t","daresn\u2019t","daricon","daring","daringly","dark","darken","darkened","darkening","darkens","darker","darkest","darkish","darkling","darkly","darkness","darkroom","darling","darmstadtium","darn","darned","darnel","darner","darning","darns","darpa","dart","dartboard","darter","darting","dartmouth","darts","darvon","darwinian","DAS","Das","das","dash","dashboard","dashed","dasheen","dashes","dashiki","dashing","dashingly","DASN'T","Dasn't","dasn't","DASNT","Dasnt","dasnt","DASN\u2019T","Dasn\u2019t","dasn\u2019t","dassie","dastard","dastardliness","dastardly","dasymeter","dasyure","dasyurid","dat","data","database","databases","datable","date","dateable","dated","dateless","dateline","datemark","dates","dating","dative","datril","datum","daub","dauber","daubing","daughter","daughterly","daughters","daunt","daunted","daunting","dauntingly","dauntless","dauntlessly","dauntlessness","dauphin","davallia","davit","daw","dawah","dawdle","dawdler","dawdling","dawn","dawning","dawns","day","daybed","daybook","dayboy","daybreak","daycare","daydream","daydreamer","daydreaming","daydreams","dayflower","dayfly","daygirl","daylight","daylily","daylong","daymio","daymios","daypro","days","dayspring","daystar","daytime","daze","dazed","dazedly","dazzle","dazzled","dazzles","dazzling","dazzlingly","db","dba","dbms","dccp","dci","ddc","ddi","ddt","de","de-emphasize","de-emphasized","de-facto","de-linkage","dea","deaccession","deacon","deaconess","deactivate","deactivates","deactivating","deactivation","dead","deadbeat","deadbolt","deaden","deadened","deadening","deadeye","deadhead","deadlier","deadliest","deadlight","deadline","deadlines","deadliness","deadlock","deadlocked","deadly","deadness","deadpan","deadwood","deaerate","deaf","deafen","deafened","deafening","deafness","deal","dealer","dealers","dealership","dealfish","dealfishes","dealignment","dealing","dealings","deals","dealt","deaminate","deamination","deaminization","deaminize","dean","deanery","deanship","dear","dearest","dearie","dearly","dearness","dearth","deary","death","deathbed","deathblow","deathless","deathlike","deathly","deathrate","deaths","deathtrap","deathwatch","deb","debacle","debar","debark","debarkation","debarking","debarment","debarred","debarring","debars","debase","debased","debasement","debaser","debasing","debatable","debate","debated","debater","debates","debating","debauch","debauched","debauchee","debaucher","debauchery","debenture","debile","debilitate","debilitated","debilitating","debilitation","debilitative","debility","debit","debiting","debitor","debits","debonair","debonaire","debone","deboned","deboning","debonnaire","debouch","debridement","debrief","debriefing","debriefs","debris","debt","debtor","debts","debug","debugged","debugger","debugging","debugs","debunk","debunking","debunks","debus","debussed","debussing","debut","debutante","debuted","debuting","debuts","dec","DEC.","Dec.","dec.","decade","decadence","decadency","decadent","decades","decadron","decaf","decaffeinate","decagon","decagram","decahedron","decal","decalcification","decalcified","decalcify","decalcomania","decalescence","decalescent","decaliter","decalitre","decameter","decametre","decamp","decamping","decampment","decamps","decant","decantation","decanter","decanting","decants","decapitate","decapitated","decapitating","decapitation","decapod","decapoda","decarbonate","decarbonates","decarbonise","decarbonize","decarboxylase","decarboxylate","decarboxylating","decarboxylation","decarburise","decarburize","decasyllabic","decasyllable","decathlon","decay","decayable","decayed","decaying","decays","decease","deceased","decedent","deceit","deceitful","deceitfully","deceitfulness","deceive","deceived","deceiver","deceives","deceiving","deceivingly","decelerate","decelerated","decelerating","deceleration","december","decemvir","decemviri","decency","decennary","decennia","decennium","decent","decentalisation","decently","decentralisation","decentralise","decentralised","decentralises","decentralising","decentralization","decentralize","decentralized","decentralizes","decentralizing","deception","deceptive","deceptively","deceptiveness","decerebrate","decerebrates","decertify","dechlorinate","decibel","decide","decided","decidedly","decides","deciding","decidua","deciduae","deciduous","decigram","decile","deciliter","decilitre","decimal","decimalisation","decimalise","decimalization","decimalize","decimate","decimated","decimates","decimating","decimation","decimeter","decimetre","decipher","decipherable","decipherably","deciphered","decipherer","deciphering","decipherment","deciphers","decision","decisions","decisive","decisively","decisiveness","deck","decked","decker","deckhand","decking","deckle","deckled","decks","declaim","declaiming","declamation","declamatory","declarable","declaration","declarations","declarative","declaratory","declare","declared","declarer","declares","declaring","declassification","declassified","declassifies","declassify","declaw","declension","declination","decline","declined","declines","declining","declinometer","declivitous","declivity","declomycin","declutch","deco","decoagulant","decoct","decoction","decode","decoder","decodes","decoding","decoke","decollate","decolletage","decollete","decolonisation","decolonise","decolonization","decolonize","decolor","decolorise","decolorize","decolour","decolourise","decolourize","decommission","decommissioning","decomposable","decompose","decomposes","decomposing","decomposition","decompositional","decompound","decompress","decompresses","decompressing","decompression","deconcentrate","decongestant","deconsecrate","deconsecrated","deconstruct","deconstructing","deconstruction","deconstructionism","deconstructionist","deconstructivism","deconstructs","decontaminate","decontaminated","decontaminates","decontamination","decontrol","decontrolled","decontrolling","decor","decorate","decorated","decorates","decorating","decoration","decorations","decorative","decoratively","decorativeness","decorator","decorous","decorously","decorousness","decorticate","decortication","decorum","decoupage","decouple","decoupling","decoy","decoying","decrease","decreased","decreases","decreasing","decree","decreed","decreeing","decrees","decrement","decrepit","decrepitate","decrepitation","decrepitude","decrescendo","decried","decries","decriminalisation","decriminalise","decriminalised","decriminalises","decriminalising","decriminalization","decriminalize","decriminalized","decriminalizes","decriminalizing","decry","decrying","decrypt","decrypting","decryption","decrypts","decubitus","decumary","decumbent","decurved","decussate","decussation","ded","dedicate","dedicated","dedicates","dedicating","dedication","dedifferentiate","dedifferentiated","dedifferentiation","deduce","deduces","deducible","deducing","deduct","deducted","deductible","deducting","deduction","deductions","deductive","deducts","deed","deedbox","deeds","deem","deemed","deeming","deems","deep","deepen","deepened","deepening","deepens","deeper","deepest","deepfreeze","deeply","deepness","deer","deerberry","deerhound","deerskin","deerstalker","deerstalking","deface","defacement","defaces","defacing","defalcate","defalcation","defalcator","defamation","defamatory","defame","defamer","defames","defaming","defang","defanging","defat","default","defaulted","defaulter","defaulting","defaults","defeasible","defeat","defeated","defeating","defeatism","defeatist","defeats","defecate","defecates","defecating","defecation","defecator","defect","defected","defecting","defection","defective","defectively","defectiveness","defector","defectors","defects","defeminise","defeminize","defence","defenceless","defencelessly","defencelessness","defences","defend","defendable","defendant","defendants","defended","defender","defenders","defending","defends","defenestrate","defenestration","defense","defenseless","defenselessly","defenselessness","defenses","defensibility","defensible","defensive","defensively","defensiveness","defer","deference","deferent","deferential","deferentially","defering","deferment","deferral","deferred","deferring","defers","defervesce","defervescence","defervescent","defiance","defiant","defiantly","defibrillate","defibrillation","defibrillator","defibrinate","deficiencies","deficiency","deficient","deficit","deficits","defied","defies","defilade","defile","defiled","defilement","defiler","defiling","definable","define","defined","defines","definienda","definiendum","definiens","definientia","defining","definite","definitely","definiteness","definition","definitions","definitive","deflagrate","deflagration","deflate","deflated","deflates","deflating","deflation","deflationary","deflator","deflect","deflected","deflecting","deflection","deflective","deflector","deflects","deflexion","defloration","deflower","deflowering","defog","defoliant","defoliate","defoliated","defoliation","defoliator","deforest","deforestation","deform","deformation","deformational","deformed","deforming","deformities","deformity","deforms","defraud","defrauded","defrauder","defrauding","defrauds","defray","defrayal","defraying","defrayment","defrock","defrost","defroster","defrosting","deft","deftly","deftness","defunct","defunctness","defuse","defuses","defusing","defy","defying","degage","degas","degassed","degassing","degauss","degaussing","degeneracy","degenerate","degenerated","degenerates","degenerating","degeneration","degenerative","deglaze","deglutition","deglycerolise","deglycerolize","degradation","degrade","degraded","degrader","degrades","degrading","degrease","degreasing","degree","degrees","degressive","degust","degustation","dehisce","dehiscence","dehiscent","dehorn","dehumanisation","dehumanise","dehumanised","dehumanises","dehumanising","dehumanization","dehumanize","dehumanized","dehumanizes","dehumanizing","dehumidified","dehumidifier","dehumidifies","dehumidify","dehydrate","dehydrated","dehydration","dehydrogenate","dehydroretinol","deice","deicer","deicing","deictic","deific","deification","deified","deifies","deify","deign","deigning","deinocheirus","deinonychus","deionize","deipnosophist","deism","deist","deistic","deities","deity","deixis","deject","dejected","dejectedly","dejectedness","dejecting","dejection","dejects","dejeuner","dekagram","dekaliter","dekalitre","dekameter","dekametre","dekko","DEL.","Del.","del.","delavirdine","delaware","delawarian","delay","delayed","delayer","delaying","delays","delectability","delectable","delectation","delegacy","delegate","delegates","delegating","delegation","delete","deleted","deleteing","deleterious","deletes","deleting","deletion","deletions","delf","delft","deli","deliberate","deliberately","deliberateness","deliberates","deliberating","deliberation","deliberations","deliberative","delible","delicacy","delicate","delicately","delicatessen","delicious","deliciously","deliciousness","delight","delighted","delightedly","delightful","delightfully","delighting","delights","delimit","delimitate","delimitation","delimited","delimiting","delimits","delineate","delineated","delineates","delineating","delineation","delineative","delinquency","delinquent","deliquesce","deliquescent","deliquescing","deliquium","delirious","deliriously","delirium","delist","delisted","delists","deliver","deliverable","deliverance","delivered","deliverer","deliveries","delivering","delivers","delivery","deliveryman","dell","delocalize","delouse","delousing","delphian","delphic","delphinia","delphinium","delta","deltasone","deltoid","delude","deludes","deluding","deluge","deluged","delusion","delusional","delusive","delusively","delusory","deluxe","delve","delved","delves","demagnetisation","demagnetise","demagnetization","demagnetize","demagog","demagogic","demagogical","demagogue","demagoguery","demagogy","demand","demanded","demander","demanding","demandingly","demands","demantoid","demarcate","demarcates","demarcating","demarcation","demarche","demasculinise","demasculinize","dematerialise","dematerialize","dematerializing","demean","demeaned","demeaning","demeaningly","demeanor","demeanour","demeans","demented","dementedly","dementedness","dementia","demerit","demerol","demesne","demiglace","demigod","demijohn","demilitarisation","demilitarise","demilitarised","demilitarises","demilitarising","demilitarization","demilitarize","demilitarized","demilitarizes","demilitarizing","demille","demimondaine","demimonde","demineralisation","demineralise","demineralization","demineralize","demise","demisemiquaver","demist","demister","demit","demitasse","demits","demitted","demitting","demiurge","demo","demob","demobbed","demobbing","demobilisation","demobilise","demobilised","demobilises","demobilising","demobilization","demobilize","demobilized","demobilizes","demobilizing","democracies","democracy","democrat","Democratic","democratic","democratically","democratisation","democratise","democratised","democratises","democratising","democratization","democratize","democratized","democratizes","democratizing","democrats","demode","demodulate","demodulation","demodulator","demographer","demographic","demographics","demographist","demography","demoing","demoiselle","demolish","demolished","demolishes","demolishing","demolition","demon","demonetisation","demonetise","demonetization","demonetize","demoniac","demoniacal","demoniacally","demonic","demonisation","demonise","demonised","demonises","demonising","demonism","demonization","demonize","demonized","demonizes","demonizing","demonolatry","demons","demonstrability","demonstrable","demonstrably","demonstrate","demonstrated","demonstrates","demonstrating","demonstration","demonstrations","demonstrative","demonstratively","demonstrativeness","demonstrator","demonstrators","demoralisation","demoralise","demoralised","demoralises","demoralising","demoralization","demoralize","demoralized","demoralizes","demoralizing","demos","demosthenic","demote","demoted","demotes","demotic","demotion","demulcent","demulsified","demulsify","demur","demure","demurely","demureness","demurrage","demurral","demurred","demurrer","demurring","demurs","demyelinate","demyelinating","demyelination","demystified","demystifies","demystify","demystifying","demythologisation","demythologise","demythologised","demythologization","demythologize","demythologized","den","denali","denarii","denarius","denary","denationalisation","denationalise","denationalised","denationalises","denationalising","denationalization","denationalize","denationalized","denationalizes","denationalizing","denaturalise","denaturalize","denaturant","denature","denatured","denaturing","denaturised","denaturized","denazification","denazified","denazify","dendraspis","dendriform","dendrite","dendrites","dendritic","dendrobium","dendroid","dendroidal","dendrology","dengue","deniable","denial","denials","denied","denier","deniers","denies","denigrate","denigrating","denigration","denigrative","denigratory","denim","denitrified","denitrify","denizen","Denmark","denmark","denned","denning","denominate","denominated","denominates","denomination","denominational","denominationalism","denominationally","denominator","denotation","denotative","denotatum","denote","denotes","denoting","denotive","denouement","denounce","denounced","denouncement","denounces","denouncing","dense","densely","denseness","densification","densimeter","densities","densitometer","densitometry","density","dent","dental","dentalia","dentalium","dentate","dented","denticle","denticulate","dentifrice","dentin","dentine","dentist","dentistry","dentists","dentition","denture","denturist","denudate","denudation","denude","denuded","denumerable","denunciation","denunciative","denunciatory","deny","denying","deodar","deodorant","deodorise","deodorised","deodorises","deodorising","deodorize","deodorized","deodorizes","deodorizing","deodourant","deodourise","deossification","deoxidise","deoxidize","deoxyadenosine","deoxycytidine","deoxyephedrine","deoxygenate","deoxyguanosine","deoxyribose","deoxythymidine","depart","departed","departer","departing","department","departmental","departmentally","departments","departs","departure","departures","depend","dependability","dependable","dependableness","dependably","dependance","dependant","depended","dependence","dependency","dependent","depending","depends","depersonalisation","depersonalise","depersonalised","depersonalises","depersonalising","depersonalization","depersonalize","depersonalized","depersonalizes","depersonalizing","depict","depicted","depicting","depiction","depictions","depictive","depicts","depigmentation","depilate","depilation","depilator","depilatory","depilous","deplane","depletable","deplete","depleted","depletes","depleting","depletion","deplorable","deplorably","deplore","deplored","deplores","deploring","deploy","deployed","deploying","deployment","deploys","deplumate","deplume","depokene","depolarisation","depolarise","depolarization","depolarize","depolarizing","depone","deponent","depopulate","depopulated","depopulation","deport","deportation","deportations","deported","deportee","deporting","deportment","deports","depose","deposed","deposer","deposes","deposing","deposit","depositary","deposited","depositing","deposition","depositions","depositor","depository","deposits","depot","depravation","deprave","depraved","depravity","deprecate","deprecates","deprecating","deprecation","deprecative","deprecatively","deprecatory","depreciate","depreciated","depreciates","depreciating","depreciation","depreciative","depreciator","depreciatory","depredation","depress","depressant","depressed","depresses","depressing","depressingly","depression","depressive","depressor","depressurise","depressurize","deprivation","deprive","deprived","deprives","depriving","depth","depths","deputation","depute","deputes","deputies","deputise","deputised","deputises","deputising","deputize","deputized","deputizes","deputizing","deputy","deracinate","deracinating","deracination","derail","derailed","derailing","derailment","derails","derange","deranged","derangement","deranging","derate","derby","derecognise","derecognises","derecognize","derecognizes","deregulate","deregulated","deregulates","deregulating","deregulation","derelict","dereliction","derequisition","derestrict","deride","derided","derides","deriding","derision","derisive","derisively","derisorily","derisory","derivable","derivation","derivational","derivative","derivatives","derive","derived","derives","deriving","derma","dermabrasion","dermal","dermatitis","dermatoglyphic","dermatologic","dermatological","dermatologist","dermatology","dermatome","dermatomycosis","dermatomyositis","dermatophytosis","dermatosclerosis","dermatoses","dermatosis","dermic","dermis","derogate","derogation","derogative","derogatory","derrick","derriere","derringer","derris","derv","dervish","desacralize","desalinate","desalination","desalinisation","desalinise","desalinization","desalinize","desalt","desalting","descale","descant","descend","descendant","descendants","descended","descendent","descender","descending","descends","descensus","descent","describable","describe","described","describes","describing","descried","description","descriptions","descriptive","descriptively","descriptivism","descriptor","descriptors","descry","descrying","desecrate","desecrated","desecrating","desecration","desegrated","desegregate","desegregating","desegregation","desensitisation","desensitise","desensitised","desensitises","desensitising","desensitization","desensitize","desensitized","desensitizes","desensitizing","desert","deserted","deserter","desertification","deserting","desertion","deserts","deserve","deserved","deservedly","deserves","deserving","deservingness","desex","desexing","desexualise","desexualize","deshabille","desiccant","desiccate","desiccated","desiccates","desiccating","desiccation","desiderata","desideratum","design","designate","designated","designates","designating","designation","designations","designative","designatum","designed","designedly","designer","designers","designing","designs","desipramine","desirability","desirable","desirableness","desire","desired","desires","desiring","desirous","desist","desisting","desists","desk","deskbound","deskman","desks","desktop","desmid","desolate","desolately","desolation","desorb","desorption","despair","despairing","despairingly","despairs","despatch","desperado","desperadoes","desperate","desperately","desperation","despicability","despicable","despicableness","despicably","despisal","despise","despised","despising","Despite","despite","despiteful","despitefully","despoil","despoilation","despoiled","despoiler","despoiling","despoilment","despoina","despoliation","despond","despondence","despondency","despondent","despondently","desponding","despot","despotic","despotical","despotism","desquamate","desquamation","dessert","desserts","dessertspoon","dessertspoonful","dessiatine","destabilisation","destabilise","destabilised","destabilises","destabilising","destabilization","destabilize","destabilized","destabilizes","destabilizing","destain","destaining","destalinisation","destalinise","destalinization","destalinize","destination","destinations","destine","destined","destiny","destitute","destitution","destress","destroy","destroyable","destroyed","destroyer","destroying","destroys","destruct","destructibility","destructible","destructing","destruction","destructive","destructively","destructiveness","destructs","desuetude","desulfurize","desulphurize","desultory","desynchronisation","desynchronise","desynchronization","desynchronize","desynchronizing","desyrel","detach","detachable","detached","detaches","detaching","detachment","detail","detailed","detailing","details","detain","detained","detainee","detainees","detaining","detainment","detains","detect","detectable","detected","detecting","detection","detective","detectives","detector","detectors","detects","detent","detente","detention","deter","deterge","detergence","detergency","detergent","deteriorate","deteriorated","deteriorates","deteriorating","deterioration","determent","determinable","determinant","determinants","determinate","determinateness","determination","determinations","determinative","determine","determined","determinedly","determiner","determines","determining","determinism","determinist","deterministic","deterred","deterrence","deterrent","deterring","deters","detersive","detest","detestable","detestably","detestation","detested","detesting","detests","dethaw","dethrone","dethroned","dethronement","detick","detonate","detonates","detonating","detonation","detonative","detonator","detour","detouring","detox","detoxes","detoxicate","detoxification","detoxified","detoxify","detract","detracted","detracting","detraction","detractive","detractor","detractors","detracts","detrain","detransitivise","detransitivize","detribalisation","detribalise","detribalization","detribalize","detriment","detrimental","detrimentally","detrition","detritus","detumescence","detusk","deuce","deuced","deucedly","deuteranopia","deuteranopic","deuterium","deuteromycotina","deuteron","deutschland","deutschmark","deutzia","devaluate","devaluation","devalue","devalued","devalues","devaluing","devastate","devastated","devastates","devastating","devastation","devastations","devein","develop","developed","developer","developers","developing","development","developmental","developmentally","developments","develops","deviance","deviant","deviate","deviated","deviates","deviating","deviation","deviationism","deviationist","deviations","device","devices","devil","devilfish","devilfishes","devilise","devilish","devilishly","devilize","devilled","devilling","devilment","devilry","deviltry","devilwood","devious","deviously","deviousness","devisal","devise","devised","devisee","deviser","devises","devising","devisor","devitalisation","devitalise","devitalization","devitalize","devitrified","devitrify","devoice","devoid","devoir","devolution","devolve","devolvement","devolving","devonshire","devote","devoted","devotedly","devotedness","devotee","devotees","devotes","devoting","devotion","devotional","devour","devoured","devourer","devouring","devours","devout","devoutly","devoutness","devries","dew","dewberry","dewdrop","deweyan","dewier","dewiest","dewlap","dewy","dexamethasone","dexedrine","dexone","dexter","dexterity","dexterous","dexterously","dextral","dextrality","dextrin","dextrocardia","dextroglucose","dextrorotary","dextrorotation","dextrorotatory","dextrorsal","dextrorse","dextrose","dextrous","dextrously","dflp","dhak","dhal","dhava","dhawa","dhodhekanisos","dhole","dhoti","dhow","dia","diabatic","diabeta","diabetes","diabetic","diabolatry","diabolic","diabolical","diabolically","diabolise","diabolism","diabolist","diabolize","diacetylmorphine","diachronic","diachrony","diacritic","diacritical","diadem","diadromous","diaereses","diaeresis","diaerses","diaglyph","diagnosable","diagnose","diagnosed","diagnoses","diagnosing","diagnosis","diagnostic","diagnostician","diagnostics","diagonal","diagonalisation","diagonalise","diagonalizable","diagonalization","diagonalize","diagonally","diagram","diagraming","diagrammatic","diagrammatical","diagrammatically","diagrammed","diagramming","diagrams","diakinesis","dial","dialect","dialectal","dialectic","dialectical","dialectically","dialectician","dialectology","dialects","dialed","dialing","dialled","dialling","dialog","dialogs","dialogue","dialogues","dials","dialyse","dialyses","dialysis","dialyze","dialyzer","dialyzing","diam","diamagnet","diamagnetic","diamagnetism","diamante","diamantine","diameter","diametral","diametric","diametrical","diametrically","diamine","diamond","diamondback","diamonds","dianoetic","diapason","diapedesis","diapensia","diaper","diapers","diaphanous","diapheromera","diaphone","diaphoresis","diaphoretic","diaphragm","diaphyseal","diaphyses","diaphysial","diaphysis","diapir","diapophyses","diapophysis","diapsid","diarchy","diaries","diarist","diarrhea","diarrheal","diarrheic","diarrhetic","diarrhoea","diarrhoeal","diarrhoeic","diarrhoetic","diarthroses","diarthrosis","diary","diastalses","diastalsis","diastases","diastasis","diastema","diastemata","diastole","diastolic","diastrophism","diathermy","diathesis","diathses","diatom","diatomic","diatomite","diatomophyceae","diatoms","diatonic","diatribe","diaz","diazepam","diazo","diazoes","diazonium","diazotize","diazoxide","dib","dibbed","dibber","dibbing","dibble","dibbuk","dibbukkim","dibrach","dibranch","dibranchia","dibranchiate","dibs","dibucaine","dicamptodon","dicamptodontid","dicarboxylic","dice","dicer","dicey","dichasia","dichasium","dichloride","dichlorodiphenyltrichloroethane","dichloromethane","dichondra","dichotomisation","dichotomise","dichotomization","dichotomize","dichotomous","dichotomously","dichotomy","dichroism","dichromacy","dichromasy","dichromat","dichromate","dichromatic","dichromatism","dichromatopsia","dichromia","dicier","diciest","dick","dickensian","dicker","dickey","dickeybird","dickhead","dickie","dicky","dickybird","diclinous","dicloxacillin","dicot","dicotyledon","dicotyledonae","dicotyledonous","dicoumarol","dicta","dictate","dictated","dictates","dictation","dictator","dictatorial","dictatorially","dictators","dictatorship","diction","dictionaries","dictionary","dictostylium","dictum","dictyopteran","dictyosome","dicumarol","dicynodont","DID","Did","did","didactic","didactical","didactically","didacticism","didactics","didanosine","didder","diddle","diddley","diddling","diddly","diddlyshit","diddlysquat","dideoxycytosine","dideoxyinosine","DIDN'T","Didn't","didn't","DIDNT","Didnt","didnt","DIDN\u2019T","Didn\u2019t","didn\u2019t","dido","didoes","didrikson","die","dieback","died","diehard","dielectric","dielectrolysis","diemaker","diencephalon","diereses","dieresis","dies","diesel","dieses","diesinker","diesis","diestock","diestrous","diestrual","diestrum","diestrus","diet","dietary","dieter","dietetic","dietetical","dietetics","diethylmalonylurea","diethylstilbesterol","diethylstilbestrol","diethylstilboestrol","dietician","dieting","dietitian","diets","differ","differed","difference","differences","different","differentia","differentiable","differentiae","differential","differentially","differentiate","differentiated","differentiates","differentiating","differentiation","differentiator","differently","differing","differs","difficult","difficulties","difficultness","difficulty","diffidence","diffident","diffidently","difflugia","diffract","diffraction","diffuse","diffused","diffusely","diffuseness","diffuser","diffuses","diffusing","diffusion","diffusive","diffusor","diflunisal","dig","digenesis","digest","digested","digester","digestibility","digestible","digestibleness","digesting","digestion","digestive","digests","digger","digging","dighted","digit","digital","digitalin","digitalis","digitalisation","digitalise","digitalization","digitalize","digitally","digitate","digitately","digitigrade","digitisation","digitise","digitised","digitiser","digitises","digitising","digitization","digitize","digitized","digitizer","digitizes","digitizing","digitoxin","digits","dignified","dignifies","dignify","dignifying","dignitary","dignity","digoxin","digram","digraph","digress","digresses","digressing","digression","digressive","digs","dihybrid","dihydrostreptomycin","dihydroxyphenylalanine","dika","dike","dilantin","dilapidate","dilapidated","dilapidation","dilatation","dilate","dilater","dilates","dilating","dilation","dilator","dilatoriness","dilatory","dilaudid","dildo","dilemma","dilettante","dilettanteish","dilettanti","dilettantish","diligence","diligent","diligently","dill","dillenia","dilligence","dillydallier","dillydally","diltiazem","diluent","dilutant","dilute","diluted","dilutes","diluting","dilution","dilutions","diluvia","diluvial","diluvian","diluvium","dim","dimaggio","dime","dimenhydrinate","dimension","dimensional","dimensionality","dimensioning","dimensions","dimer","dimetane","dimethylglyoxime","dimetrodon","diminish","diminished","diminishes","diminishing","diminuendo","diminution","diminutive","diminutiveness","dimity","dimly","dimmed","dimmer","dimmest","dimming","dimness","dimorphic","dimorphism","dimorphous","dimout","dimple","dims","dimwit","din","dinar","dindymene","dine","dined","diner","dinero","diners","dinette","ding","dingbat","dingdong","dinge","dinghy","dingier","dingiest","dingily","dinginess","dinging","dingle","dingo","dingoes","dingy","dining","dink","dinkey","dinkier","dinkiest","dinky","dinned","dinner","dinners","dinnertime","dinnerware","dinning","dinoceras","dinocerate","dinoflagellate","dinosaur","dinosaurs","dint","diocesan","diocese","diode","dioecian","dioecious","dioestrous","dioestrual","diol","dionysian","dioon","diopter","dioptre","diorama","diorite","diovan","dioxide","dioxin","dip","diphenhydramine","diphenylhydantoin","diphtheria","diphthong","diphthongise","diphthongize","dipladenia","diplegia","diplococci","diplococcus","diplodocus","diploid","diploidy","diploma","diplomacy","diplomat","diplomate","diplomatic","diplomatical","diplomatically","diplomatist","diplomats","diplopia","diplotene","dipolar","dipole","dipped","dipper","dippier","dippiest","dipping","dippy","dips","dipshit","dipsomania","dipsomaniac","dipstick","dipteran","dipterocarp","dipteron","dipterous","dipteryx","diptych","dipylon","dire","direct","directed","directing","direction","directional","directionality","directionless","directions","directive","directiveness","directives","directivity","directly","directness","director","directorate","directors","directorship","directory","directs","direful","direfully","dirge","dirham","dirigible","dirk","dirndl","dirt","dirtied","dirtier","dirtiest","dirtily","dirtiness","dirty","dirtying","dis","disa","disabilities","disability","disable","disabled","disablement","disables","disabling","disabuse","disabused","disabusing","disaccharidase","disaccharide","disaccord","disadvantage","disadvantaged","disadvantageous","disadvantageously","disadvantages","disadvantaging","disaffect","disaffected","disaffecting","disaffection","disaffirmation","disafforest","disagree","disagreeable","disagreeableness","disagreeably","disagreed","disagreeing","disagreement","disagreements","disagrees","disallow","disallowed","disallowing","disallows","disambiguate","disambiguating","disambiguation","disambiguator","disannul","disannulled","disannulling","disappear","disappearance","disappeared","disappearing","disappears","disappoint","disappointed","disappointedly","disappointing","disappointingly","disappointment","disappointments","disappoints","disapprobation","disapproval","disapprovals","disapprove","disapproved","disapproves","disapproving","disapprovingly","disarm","disarmament","disarmer","disarming","disarms","disarrange","disarranged","disarrangement","disarranging","disarray","disarrayed","disarticulate","disarticulating","disassemble","disassembling","disassembly","disassociate","disassociation","disaster","disasters","disastrous","disastrously","disavow","disavowable","disavowal","disavowed","disavowing","disband","disbanded","disbanding","disbandment","disbands","disbar","disbarment","disbarred","disbarring","disbelief","disbelieve","disbelieving","disbelievingly","disbud","disbudded","disbudding","disburden","disbursal","disburse","disbursed","disbursement","disburser","disburses","disbursing","disc","discalceate","discalced","discant","discard","discarded","discarding","discards","discase","disceptation","discern","discernability","discernable","discernible","discerning","discernment","discerns","discerp","discharge","discharged","discharges","discharging","disci","disciform","discina","disciple","disciples","discipleship","disciplinal","disciplinarian","disciplinary","discipline","disciplined","disciplines","disciplining","disclaim","disclaimer","disclike","disclose","disclosed","discloses","disclosing","disclosure","disclosures","disco","discoboli","discobolos","discography","discoid","discoidal","discolor","discoloration","discolored","discoloring","discolorise","discolorize","discolors","discolour","discolouration","discoloured","discolouring","discolourise","discolours","discombobulate","discombobulated","discombobulation","discomfit","discomfited","discomfiting","discomfiture","discomfort","discommode","discompose","discomposed","discomposure","discomycete","discomycetous","disconcert","disconcerted","disconcerting","disconcertingly","disconcertion","disconcertment","disconfirming","disconnect","disconnected","disconnectedness","disconnecting","disconnection","disconnects","disconsolate","disconsolately","disconsolateness","disconsolation","discontent","discontented","discontentedly","discontentedness","discontentment","discontinuance","discontinuation","discontinue","discontinued","discontinues","discontinuing","discontinuity","discontinuous","discord","discordance","discordant","discordantly","discorporate","discos","discotheque","discount","discounted","discountenance","discounter","discounting","discounts","discourage","discouraged","discouragement","discourages","discouraging","discouragingly","discourse","discoursing","discourteous","discourteously","discourtesy","discover","discoverable","discovered","discoverer","discoveries","discovering","discovers","discovery","discredit","discreditable","discreditably","discredited","discredits","discreet","discreetly","discreetness","discrepancies","discrepancy","discrepant","discrete","discreteness","discretion","discretional","discretionary","discriminable","discriminate","discriminated","discriminates","discriminating","discrimination","discriminative","discriminator","discriminatory","discs","discursive","discursively","discursiveness","discus","discuss","discussant","discussed","discusses","discussing","discussion","discussions","disdain","disdainful","disdainfully","disdainfulness","disdaining","disdains","disease","diseased","diseases","disembark","disembarkation","disembarking","disembarkment","disembarks","disembarrass","disembarrassment","disembodied","disembody","disembodying","disembowel","disemboweled","disemboweling","disembowelled","disembowelling","disembowelment","disembroil","disenable","disenchant","disenchanted","disenchanting","disenchantment","disencumber","disenfranchise","disenfranchised","disenfranchisement","disenfranchising","disengage","disengagement","disengages","disengaging","disentangle","disentangled","disentanglement","disentangler","disentangling","disenthral","disenthralled","disenthralling","disequilibrium","disestablish","disestablishment","disesteem","disfavor","disfavour","disfiguration","disfigure","disfigured","disfigurement","disfiguring","disfluency","disforest","disforestation","disfranchise","disfranchised","disfranchisement","disfunction","disgorge","disgorgement","disgorging","disgrace","disgraced","disgraceful","disgracefully","disgracefulness","disgraces","disgracing","disgruntle","disgruntled","disgruntlement","disgruntling","disguise","disguised","disguises","disguising","disgust","disgusted","disgustedly","disgustful","disgusting","disgustingly","disgustingness","disgusts","dish","dishabille","disharmonious","disharmonize","disharmony","dishcloth","dishearten","disheartened","disheartening","disheartenment","dished","dishes","dishevel","disheveled","dishevelled","dishevelling","dishful","dishier","dishiest","dishing","dishonest","dishonestly","dishonesty","dishonor","dishonorable","dishonorableness","dishonorably","dishonored","dishonoring","dishonors","dishonour","dishonourable","dishonourableness","dishonourably","dishonoured","dishonouring","dishonours","dishpan","dishrag","dishtowel","dishware","dishwasher","dishwashing","dishwater","dishy","disillusion","disillusioned","disillusioning","disillusionment","disincarnate","disincentive","disinclination","disincline","disinclined","disinfect","disinfectant","disinfecting","disinfection","disinfects","disinfest","disinfestation","disinflation","disinformation","disingenuous","disingenuously","disingenuousness","disinherit","disinheritance","disinherited","disintegrable","disintegrate","disintegrated","disintegrates","disintegrating","disintegration","disintegrative","disinter","disinterest","disinterested","disinterestedly","disinterestedness","disinterment","disinterred","disinterring","disinvest","disinvestment","disinvolve","disjoin","disjoined","disjoint","disjointed","disjointedly","disjointedness","disjunct","disjunction","disjunctive","disjuncture","disk","diskette","disklike","disks","dislikable","dislike","disliked","dislikes","disliking","dislocate","dislocated","dislocates","dislocating","dislocation","dislodge","dislodgement","dislodges","dislodging","dislodgment","dislogistic","disloyal","disloyally","disloyalty","dismal","dismally","dismantle","dismantled","dismantlement","dismantles","dismantling","dismay","dismayed","dismaying","dismember","dismembering","dismemberment","dismiss","dismissal","dismissed","dismisses","dismissible","dismissing","dismission","dismissive","dismount","dismounting","disobedience","disobedient","disobediently","disobey","disobeying","disobeys","disoblige","disobliging","disorder","disordered","disorderliness","disorderly","disorders","disorganisation","disorganise","disorganised","disorganization","disorganize","disorganized","disorient","disorientate","disorientation","disoriented","disorienting","disown","disowning","disownment","disowns","disparage","disparaged","disparagement","disparager","disparages","disparaging","disparagingly","disparate","disparateness","disparities","disparity","dispassion","dispassionate","dispassionately","dispassionateness","dispatch","dispatched","dispatcher","dispatches","dispatching","dispel","dispelled","dispelling","dispels","dispensability","dispensable","dispensableness","dispensary","dispensation","dispense","dispensed","dispenser","dispenses","dispensing","dispersal","disperse","dispersed","disperses","dispersing","dispersion","dispersive","dispirit","dispirited","dispiritedly","dispiritedness","dispiriting","displace","displaced","displacement","displaces","display","displayed","displaying","displays","displease","displeased","displeasing","displeasingly","displeasure","displume","disport","disporting","disposable","disposal","dispose","disposed","disposes","disposing","disposition","dispossess","dispossessed","dispossession","dispraise","dispread","disproof","disproportion","disproportional","disproportionate","disproportionately","disprove","disprover","disproves","disproving","disputable","disputant","disputation","disputatious","disputatiously","disputative","dispute","disputed","disputes","disputing","disqualification","disqualified","disqualifies","disqualify","disqualifying","disquiet","disquieted","disquieting","disquietingly","disquietude","disquisition","disregard","disregarded","disregarding","disregardless","disregards","disrepair","disreputability","disreputable","disreputableness","disreputably","disrepute","disrespect","disrespected","disrespectful","disrespectfully","disrespecting","disrespects","disrobe","disrobes","disrobing","disrupt","disrupted","disrupting","disruption","disruptions","disruptive","disruptively","disrupts","diss","dissatisfaction","dissatisfactory","dissatisfied","dissatisfies","dissatisfy","dissatisfying","dissect","dissected","dissecting","dissection","dissects","dissemble","dissembler","dissembles","dissembling","disseminate","disseminated","disseminates","disseminating","dissemination","disseminative","disseminator","dissension","dissent","dissented","dissenter","dissentient","dissenting","dissentious","dissents","dissertate","dissertation","disservice","dissever","dissidence","dissident","dissidents","dissilience","dissilient","dissimilar","dissimilarity","dissimilate","dissimilation","dissimilitude","dissimulate","dissimulation","dissimulative","dissimulator","dissing","dissipate","dissipated","dissipates","dissipating","dissipation","dissociable","dissociate","dissociates","dissociating","dissociation","dissociative","dissolubility","dissoluble","dissolute","dissolutely","dissoluteness","dissolution","dissolvable","dissolve","dissolved","dissolvent","dissolver","dissolves","dissolving","dissonance","dissonant","dissonate","dissonates","dissuade","dissuades","dissuading","dissuasion","dissuasive","dissyllable","dissymmetry","distaff","distal","distally","distance","distances","distancing","distant","distantly","distaste","distasteful","distastefully","distastefulness","distemper","distend","distending","distensible","distension","distention","distich","distil","distill","distillate","distillation","distilled","distiller","distillery","distilling","distillment","distills","distils","distinct","distinction","distinctions","distinctive","distinctively","distinctiveness","distinctly","distinctness","distinguish","distinguishable","distinguished","distinguishes","distinguishing","distomatosis","distort","distortable","distorted","distorting","distortion","distortionist","distortions","distorts","distract","distracted","distractedly","distracting","distraction","distractions","distracts","distrain","distraint","distrait","distraught","distress","distressed","distresses","distressful","distressfully","distressfulness","distressing","distressingly","distressingness","distributary","distribute","distributed","distributer","distributes","distributing","distribution","distributional","distributions","distributive","distributively","distributor","distributors","district","districts","distrust","distrustful","distrustfully","distrustfulness","distrusting","distrusts","disturb","disturbance","disturbances","disturbed","disturber","disturbing","disturbingly","disturbs","disulfiram","disunify","disunion","disunite","disunited","disunity","disuse","disused","disyllabic","disyllable","dit","dita","ditch","ditches","ditching","ditchmoss","dither","dithering","dithers","dithyramb","dithyrambic","dittany","ditto","ditty","diuresis","diuretic","diuretics","diuril","diurnal","diva","divagate","divagation","divalent","divan","divaricate","divarication","dive","dived","diver","diverge","divergence","divergency","divergent","diverges","diverging","divers","diverse","diversely","diverseness","diversification","diversified","diversifies","diversify","diversifying","diversion","diversionary","diversionist","diversity","divert","diverted","diverticula","diverticulitis","diverticulosis","diverticulum","divertimenti","divertimento","diverting","divertingly","diverts","dives","divest","divesting","divestiture","divests","dividable","divide","divided","dividend","dividends","divider","divides","dividing","divination","divinatory","divine","divinely","diviner","diving","divining","divinity","divisibility","divisible","division","divisional","divisions","divisive","divisor","divorce","divorced","divorcee","divorcement","divorces","divorcing","divot","divulge","divulgement","divulgence","divulges","divulging","divvied","divvy","diwan","dixie","dixiecrats","dixieland","dizen","dizygotic","dizygous","dizzied","dizzier","dizziest","dizzily","dizziness","dizzy","dj","djakarta","Djibouti","djibouti","djiboutian","djinni","djinny","dkg","dkl","dkm","dl","dle","dmd","dmus","dmz","dna","DO","Do","do","doable","dobbin","dobra","dobson","dobsonfly","doc","docent","docile","docility","dock","dockage","docker","docket","dockhand","docking","docks","dockside","dockworker","dockyard","doctor","doctoral","doctorate","doctorfish","doctorial","doctors","doctorspeak","doctrinaire","doctrinal","doctrinally","doctrine","docudrama","document","documental","documentaries","documentary","documentation","documented","documenting","documents","dod","dodder","dodderer","doddering","doddery","doddle","dodecagon","dodecahedron","dodge","dodged","dodgem","dodger","dodges","dodgier","dodgiest","dodging","dodgson","dodgy","dodo","dodoes","doe","doei","doer","DOES","Does","does","doeskin","DOESN'T","Doesn't","doesn't","DOESNT","Doesnt","doesnt","DOESN\u2019T","Doesn\u2019t","doesn\u2019t","doff","doffing","dog","dogbane","dogcart","doge","dogfight","dogfighter","dogfish","dogfishes","dogged","doggedly","doggedness","doggerel","doggie","dogging","doggo","doggy","doghouse","dogie","dogleg","doglegged","doglegging","doglike","dogma","dogmata","dogmatic","dogmatical","dogmatically","dogmatise","dogmatism","dogmatist","dogmatize","dogs","dogsbody","dogshit","dogsled","dogteeth","dogtooth","dogtrot","dogwatch","dogwood","dogy","doh","doi","doily","doin","doin'","doing","doings","doj","dojc","dol","dolabrate","dolabriform","dolce","doldrums","dole","doleful","dolefully","dolefulness","dolichocephalic","dolichocephalism","dolichocephaly","dolichocranial","dolichocranic","doliolum","doll","dollar","dollarfish","dollarfishes","dollars","dollhouse","dollied","dollop","dolls","dolly","dolman","dolmas","dolmen","dolobid","dolomite","dolomitic","dolor","dolorous","dolour","dolourous","dolphin","dolphinfish","dolphins","dolt","doltish","doltishly","domain","domains","domatia","domatium","dombeya","dome","domed","domes","domestic","domestically","domesticate","domesticated","domesticates","domesticating","domestication","domesticise","domesticity","domesticize","domicile","domiciliary","domiciliate","domiciliation","dominance","dominant","dominate","dominated","dominates","dominating","domination","dominatrix","domine","dominee","domineer","domineering","domineeringly","domineeringness","Dominica","dominica","dominical","Dominican","dominican","dominick","dominicus","dominie","domino","dominoes","dominus","don","DON'T","Don't","don't","donate","donated","donates","donating","donation","donations","donatist","donbas","done","donee","donetske","dong","dongle","donjon","donkey","donkeys","donkeywork","donna","donnean","donned","donnian","donning","donnish","donor","donors","dons","DONT","Dont","dont","donut","donuts","DON\u2019T","Don\u2019t","don\u2019t","doob","doodad","doodia","doodle","doodlebug","doodles","doodling","doofus","doohickey","doojigger","doom","doomed","dooming","dooms","doomsday","door","doorbell","doorcase","doorframe","doorhandle","doorjamb","doorkeeper","doorknob","doorknocker","doorlock","doorman","doormat","doornail","doorplate","doorpost","doors","doorsill","doorstep","doorstop","doorstopper","doorway","dooryard","dopa","dopamine","dopastat","dope","doped","dopey","dopier","dopiest","doping","doppelganger","doppelzentner","dopy","dorbeetle","dorian","doric","doriden","dork","dorm","dormancy","dormant","dormer","dormice","dormie","dormitory","dormouse","dormy","dorsa","dorsal","dorsally","dorsiflexion","dorsoventral","dorsoventrally","dorsum","dory","dosage","dose","dosed","dosemeter","doses","dosimeter","dosimetry","dosing","doss","dossal","dossel","dosser","dosshouse","dossier","dostoevski","dostoevskian","dostoevsky","dostoyevskian","dot","dotage","dotard","dote","doted","doting","dotrel","dots","dotted","dotterel","dottier","dottiest","dottily","dotting","dottle","dotty","double","doubled","doubleheader","doubler","doubles","doublespeak","doublet","doublethink","doubleton","doubletree","doubling","doubloon","doubly","doubt","doubted","doubter","doubtful","doubtfully","doubtfulness","doubting","doubtless","doubtlessly","doubts","douche","douchebag","douches","douching","dough","doughboy","doughier","doughiest","doughnut","doughnuts","doughtier","doughtiest","doughty","doughy","doula","dour","doura","dourah","dourly","douroucouli","douse","douses","dousing","dove","dovecote","dovekie","doves","dovetail","dovetailing","dovetails","dovish","dovishness","dowager","dowdier","dowdiest","dowdily","dowdiness","dowdy","dowel","doweling","dower","dowered","dowerless","dowery","dowitcher","down","downbeat","downbound","downcast","downdraft","downed","downer","downfall","downfield","downgrade","downgraded","downgrades","downgrading","downhearted","downheartedness","downhill","downier","downiest","downiness","downing","downlike","download","downloading","downloads","downmarket","downplay","downplayed","downplaying","downplays","downpour","downright","downrightness","downriver","downs","downscale","downshift","downside","downsize","downsized","downsizes","downsizing","downslope","downspin","downstage","downstair","downstairs","downstream","downstroke","downswing","downtick","downtime","downtown","downtrodden","downturn","downward","downwardly","downwards","downwind","downy","dowry","dowse","dowser","dowsing","doxazosin","doxepin","doxology","doxorubicin","doxy","doxycycline","doyen","doyenne","doyley","doyly","DOZ.","Doz.","doz.","doze","dozen","dozens","dozer","dozes","dozier","doziest","dozing","dozy","dph","dphil","dprk","DR.","Dr.","dr.","drab","draba","drabbed","drabber","drabbest","drabbing","drably","drabness","dracaena","dracaenaceae","drachm","drachma","drachmae","draconian","dracontium","dracunculiasis","draft","draftboard","draftboards","drafted","draftee","drafter","draftier","draftiest","drafting","drafts","draftsman","draftsmanship","draftsmen","draftsperson","draftswoman","draftswomen","drafty","drag","dragee","dragged","dragger","draggier","draggiest","dragging","draggingly","draggle","draggled","draggy","dragnet","dragoman","dragon","dragonet","dragonfly","dragonhead","dragons","dragoon","drags","drain","drainage","drainboard","drained","draining","drainpipe","drainplug","drains","dram","drama","dramamine","dramas","dramatic","dramatically","dramatics","dramatisation","dramatisations","dramatise","dramatised","dramatises","dramatising","dramatist","dramatization","dramatizations","dramatize","dramatized","dramatizes","dramatizing","dramaturgic","dramaturgical","dramaturgy","drape","draped","draper","drapery","drapes","draping","drastic","drastically","draught","draughtboard","draughtboards","draughtier","draughtiest","draughts","draughtsman","draughtsmanship","draughtsmen","draughtswoman","draughtswomen","draughty","dravidic","draw","drawback","drawbacks","drawbar","drawbridge","drawee","drawer","drawers","drawing","drawings","drawknife","drawknives","drawl","drawler","drawling","drawn","drawnwork","draws","drawshave","drawstring","dray","drayhorse","dread","dreaded","dreadful","dreadfully","dreadfulness","dreading","dreadlock","dreadnaught","dreadnought","dreads","dream","dreamed","dreamer","dreamfully","dreamier","dreamiest","dreamily","dreaminess","dreaming","dreamland","dreamless","dreamlike","dreams","dreamt","dreamworld","dreamy","drear","drearier","dreariest","drearily","dreariness","dreary","dreck","dredge","dredger","dredging","dreg","dreggier","dreggiest","dreggy","drench","drenched","drenching","dress","dressage","dressed","dresser","dresses","dressier","dressiest","dressing","dressmaker","dressmaking","dressy","drew","drey","drib","dribble","dribbler","dribbles","dribbling","driblet","dried","drier","driest","drift","driftage","drifted","drifter","driftfish","drifting","drifts","driftwood","drill","drilled","drilling","drills","drily","drink","drinkable","drinker","drinkers","drinking","drinks","drip","dripless","drippage","dripped","drippier","drippiest","drippily","drippiness","dripping","drippy","drips","dripstone","drive","drivel","driveled","driveling","drivelled","driveller","drivelling","driven","driver","drivers","drives","driveshaft","driveway","driving","drizzle","drizzles","drizzling","drizzly","drms","drogue","droll","drollery","dromaeosaur","drome","dromedary","dronabinol","drone","droning","drool","drooled","drooler","drooling","drools","droop","drooping","droopingly","droops","droopy","drop","droped","dropforge","dropkick","dropkicker","droplet","dropline","dropout","dropouts","dropped","dropper","dropping","droppings","drops","dropseed","dropsical","dropsy","droshky","drosky","drosophila","drosophilae","dross","drought","drouth","drove","drover","droves","drown","drowned","drowning","drowns","drowse","drowses","drowsier","drowsiest","drowsily","drowsiness","drowsing","drowsy","drub","drubbed","drubbing","drudge","drudgery","drudging","drug","drugged","drugget","drugging","druggist","drugless","drugs","drugstore","druidism","drum","drumbeat","drumbeater","drumfire","drumfish","drumfishes","drumhead","drumlin","drummed","drummer","drumming","drums","drumstick","drunk","drunkard","drunken","drunkenly","drunkenness","drupaceous","drupe","drupelet","druse","drusen","druthers","dry","dryad","dryades","drydock","dryer","dryest","drygoods","drying","dryly","dryness","dryopithecine","drypis","drywall","dscdna","dsl","dtic","dts","duad","dual","dualism","dualist","dualistic","duality","dub","dubbed","dubbin","dubbing","dubiety","dubious","dubiously","dubiousness","dubitable","dubnium","dubs","dubya","dubyuh","ducal","ducat","duce","duchess","duchy","duck","duckbill","duckboard","ducking","duckling","duckpin","ducks","duckweed","ducky","duct","ductile","ductileness","ductility","ductless","ducts","ductule","ductulus","dud","dude","dudeen","dudgeon","due","duel","dueled","dueler","dueling","duelist","duelled","dueller","duelling","duellist","duels","duenna","dues","duet","duette","duff","duffel","duffer","duffle","dug","dugong","dugout","dui","duke","dukedom","dulcet","dulciana","dulcified","dulcify","dulcimer","dulcinea","dulcorate","dull","dullard","dulled","dullest","dulling","dullness","dully","dulse","duly","dumb","dumbass","dumbbell","dumber","dumbest","dumbfound","dumbfounded","dumbfounding","dumbfounds","dumbly","dumbness","dumbstricken","dumbstruck","dumbwaiter","dumdum","dumfounded","dumfounding","dummied","dummy","dump","dumpcart","dumped","dumper","dumpier","dumpiest","dumpiness","dumping","dumpling","dumps","dumpsite","dumpy","dun","dunce","duncical","duncish","dunderhead","dune","dunes","dung","dungaree","dungeon","dunghill","dunk","dunkard","dunkerque","dunking","dunks","dunlin","dunned","dunner","dunnest","dunning","dunnock","duo","duodecimal","duodenal","duodenum","duologue","duomo","duona","duonas","dupe","duped","dupery","dupes","duping","duple","duplex","duplexes","duplicability","duplicable","duplicatable","duplicate","duplicated","duplicates","duplicating","duplication","duplications","duplicator","duplicitous","duplicity","dupondii","dupondius","dura","durability","durable","durables","durabolin","dural","duramen","durance","duration","durative","durazzo","durbar","duress","durian","During","during","durion","durmast","durra","durum","dusanbe","dusk","duskier","duskiest","duskiness","dusky","dust","dustbin","dustcart","dustcloth","dusted","duster","dustier","dustiest","dustiness","dusting","dustlike","dustman","dustmop","dustpan","dustpanful","dustrag","dusts","dustup","Dusty","dusty","dutch","dutchman","duteous","dutiable","duties","dutiful","dutifully","dutifulness","duty","duumvir","duumviri","duvet","dvd","dwarf","dwarfed","dwarfing","dwarfish","dwarfishness","dwarfism","dwarfs","dwarves","dweeb","dwell","dweller","dwellers","dwelling","dwellings","dwindle","dwindled","dwindles","dwindling","dyad","dyadic","dyarchy","dybbuk","dybbukkim","dye","dyed","dyeing","dyer","dyes","dyestuff","dyeweed","dyewood","dying","dyke","dynamic","dynamical","dynamically","dynamics","dynamise","dynamism","dynamite","dynamiter","dynamitist","dynamize","dynamo","dynamometer","dynapen","dynast","dynastic","dynasties","dynasty","dyne","dysaphia","dysarthria","dyscalculia","dyschezia","dyscrasia","dysentery","dysfunction","dysfunctional","dysgenesis","dysgenic","dysgenics","dysgraphia","dyskinesia","dyslectic","dyslexia","dyslexic","dyslogia","dyslogistic","dysmenorrhea","dysomia","dysosmia","dyspepsia","dyspeptic","dysphagia","dysphasia","dysphemism","dysphemistic","dysphonia","dysphoria","dysphoric","dysplasia","dysplastic","dyspnea","dyspneal","dyspneic","dyspnoea","dyspnoeal","dyspnoeic","dysprosium","dyssynergia","dysthymia","dystopia","dystopian","dystrophy","dysuria","dyushambe","dziggetai","E-mail","e-mail","e-mailed","e-mailing","E.G.","e.g.","Each","each","eadwig","eager","eagerly","eagerness","eagle","eagles","eaglet","eagre","ear","earache","eardrop","eardrum","eared","earflap","earful","earl","earlap","earldom","earless","earlier","earliest","earliness","earlobe","early","earlyish","earmark","earmarked","earmarking","earmarks","earmuff","earn","earned","earner","earnest","earnestly","earnestness","earning","earnings","earns","earphone","earpiece","earplug","earreach","earring","earrings","ears","earshot","earsplitting","earth","earthball","earthborn","earthbound","earthen","earthenware","earthier","earthiest","earthing","earthlier","earthliest","earthlike","earthling","earthly","earthman","earthnut","earthquake","earthquakes","earthshaking","earthstar","earthtongue","earthwork","earthworm","earthy","earwax","earwig","ease","eased","easel","easement","eases","easied","easier","easiest","easily","easiness","easing","East","east","eastbound","easterly","eastern","easterner","easternmost","eastmost","eastside","eastsider","eastward","eastwards","easy","easygoing","easygoingness","eat","eatable","eatage","eaten","eater","eatery","eating","eats","eaves","eavesdrop","eavesdropped","eavesdropper","eavesdropping","eavesdrops","ebb","ebbing","ebbs","ebbtide","ebionite","ebit","ebitda","eblis","ebn","ebola","ebon","ebonics","ebonise","ebonite","ebonize","Ebony","ebony","ebracteate","ebullience","ebullient","ebulliently","ebullition","eburnation","ebv","ecarte","ecc","eccentric","eccentrically","eccentricity","ecchymoses","ecchymosis","ecclesia","ecclesiae","ecclesiastic","ecclesiastical","ecclesiastically","ecclesiasticism","ecclesiasticus","ecclesiology","eccm","eccrine","eccyesis","ecdemic","ecdyses","ecdysiast","ecdysis","ecesis","ecf","ecg","echelon","echidna","echidnae","echini","echinocactus","echinococci","echinococcosis","echinococcus","echinoderm","echinus","echo","echocardiogram","echocardiograph","echocardiography","echoed","echoencephalogram","echoencephalograph","echoencephalography","echoes","echogram","echography","echoic","echoing","echolalia","echoless","echolike","echolocation","echovirus","echt","eclair","eclampsia","eclat","eclectic","eclecticism","eclecticist","eclipse","eclipses","eclipsing","eclipsis","ecliptic","eclogue","ecm","ecobabble","ecologic","ecological","ecologically","ecologist","ecology","econometric","econometrician","econometrics","econometrist","economic","economical","economically","economics","economies","economise","economised","economiser","economises","economising","economist","economists","economize","economized","economizer","economizes","economizing","economy","ecosoc","ecosystem","ecosystems","ecoterrorism","ecotourism","ecphonesis","ecrevisse","ecru","ecstasy","ecstatic","ecstatically","ect","ectasia","ectasis","ectoblast","ectoderm","ectodermal","ectodermic","ectomorph","ectomorphic","ectomorphy","ectoparasite","ectopia","ectopic","ectoplasm","ectoproct","ectotherm","ectothermic","ectozoa","ectozoan","ectozoon","ectrodactyly","Ecuador","ecuador","ecuadoran","ecuadorian","ecumenic","ecumenical","ecumenicalism","ecumenicism","ecumenism","eczema","edacious","edacity","edaphosaurus","edd","eddied","eddo","eddoes","eddy","edecrin","edelweiss","edema","edemata","edematous","edental","edentate","edentulate","edentulous","edge","edged","edgeless","edger","edges","edgeways","edgewise","edgier","edgiest","edginess","edging","edgy","edibility","edible","edibleness","edict","edification","edifice","edified","edify","edifying","edit","edited","editing","edition","editions","editor","editorial","editorialise","editorialised","editorialises","editorialising","editorialist","editorialize","editorialized","editorializes","editorializing","editorially","editorials","editors","editorship","edmontosaurus","edp","edronax","edt","edta","educate","educated","educatee","educates","educating","education","educational","educationalist","educationally","educationist","educative","educator","educators","educe","edulcorate","edutainment","edward","edwardian","eec","eeg","eel","eelblenny","eelgrass","eellike","eelpout","eelworm","eerie","eerier","eeriest","eerily","eeriness","eery","eff","efface","effaceable","effacement","effacing","effect","effected","effecter","effecting","effective","effectively","effectiveness","effectivity","effector","effectors","effects","effectual","effectuality","effectually","effectualness","effectuate","effectuates","effectuating","effectuation","effeminacy","effeminate","effeminateness","effeminise","effeminises","effeminize","effeminizes","effendi","efferent","effervesce","effervescence","effervescent","effervescing","effete","efficacious","efficaciously","efficaciousness","efficacy","efficiencies","efficiency","efficient","efficiently","effigy","effing","effleurage","effloresce","efflorescence","efflorescent","effluence","effluent","effluents","effluvia","effluvium","efflux","effort","effortful","effortfulness","effortless","effortlessly","effortlessness","efforts","effrontery","effulgence","effulgent","effuse","effusion","effusive","effusively","effusiveness","eft","EG.","eg.","egalitarian","egalitarianism","egalite","egality","egest","egg","eggar","eggbeater","eggcup","egger","eggfruit","egghead","egging","eggnog","eggplant","eggs","eggshake","eggshell","eggwhisk","egis","eglantine","ego","egocentric","egocentrism","egoism","egoist","egoistic","egoistical","egomania","egomaniac","egos","egotism","egotist","egotistic","egotistical","egotistically","egotrip","egregious","egress","egression","egret","egtk","Egypt","egypt","egyptian","ehf","eib","eibit","eider","eiderdown","eidetic","eidola","eidolon","eidos","eigenvalue","eight","eighteen","eighteenth","eighter","eightfold","eighth","eighties","eightieth","eightpence","eightpenny","eightsome","eightvo","eighty","eimeria","einsteinian","einsteinium","eire","eisegeses","eisegesis","eisteddfod","eisteddfodau","Either","either","ejaculate","ejaculates","ejaculating","ejaculation","ejaculator","eject","ejected","ejecting","ejection","ejector","ejects","ekg","El","el","ela","elaborate","elaborated","elaborately","elaborateness","elaborates","elaborating","elaboration","elan","eland","elaphure","elapid","elapse","elapsed","elapses","elapsing","elasmobranch","elastance","elastase","elastic","elasticised","elasticities","elasticity","elasticized","elastin","elastomer","elastosis","elate","elated","elater","elaterid","elates","elating","elation","elavil","elbow","elbowing","elbows","eld","elder","elderberry","elderly","elders","eldership","eldest","eldorado","eldritch","elecampane","elect","elected","electing","election","electioneer","electioneering","elections","elective","elector","electoral","electorate","electric","electrical","electrically","electrician","electricity","electrification","electrified","electrifies","electrify","electrifying","electrocardiogram","electrocardiograph","electrocardiographic","electrocardiography","electrocautery","electrochemical","electrochemistry","electrocute","electrocution","electrocutioner","electrode","electrodeposition","electrodes","electrodynamometer","electroencephalogram","electroencephalograph","electroencephalographic","electrograph","electrologist","electrolysis","electrolyte","electrolytic","electromagnet","electromagnetic","electromagnetics","electromagnetism","electromechanical","electrometer","electromotive","electromyogram","electromyograph","electromyography","electron","electronegative","electronegativity","electroneutral","electronic","electronically","electronics","electrons","electrophoresis","electrophoretic","electroplate","electroplater","electropositive","electroretinogram","electroscope","electroshock","electrosleep","electrostatic","electrostatically","electrostatics","electrosurgery","electrotherapist","electrotherapy","electrum","elects","eleemosynary","elegance","elegant","elegantly","elegiac","elegise","elegist","elegize","elegy","element","elemental","elementarily","elementary","elements","elemi","elenchi","elenchus","elephant","elephantiasis","elephantine","elephants","elevate","elevated","elevates","elevating","elevation","elevations","elevator","elevators","eleven","eleventh","elf","elfin","elfish","elflike","elia","elicit","elicitation","elicited","eliciting","elicits","elide","elides","eliding","eligibility","eligible","eliminate","eliminated","eliminates","eliminating","elimination","eliminator","elint","elinvar","elisa","elisabethville","elision","elite","elites","elitism","elitist","elixir","elixophyllin","elizabeth","elizabethan","elk","elkhound","elkwood","ell","ellas","ellipse","ellipses","ellipsis","ellipsoid","ellipsoidal","elliptic","elliptical","ellipticity","ellul","elm","elmwood","eln","elocute","elocution","elocutionary","elocutionist","elongate","elongated","elongates","elongating","elongation","elope","elopement","elopes","eloping","eloquence","eloquent","eloquently","elsass","else","elsewhere","elsholtzia","elspar","eluate","elucidate","elucidates","elucidating","elucidation","elucidative","elude","eluded","eludes","eluding","elusion","elusive","elusiveness","elute","eluting","elution","eluvia","eluvium","elver","elves","elvis","elvish","elysian","elytra","elytron","em","emaciate","emaciated","emaciation","EMail","Email","email","emailed","emailing","emails","emanate","emanates","emanating","emanation","emancipate","emancipated","emancipates","emancipating","emancipation","emancipationist","emancipative","emancipator","emarginate","emasculate","emasculated","emasculates","emasculating","emasculation","embalm","embalmer","embalming","embalmment","embalms","embank","embankment","embargo","embargoed","embargoes","embargoing","embark","embarkation","embarked","embarking","embarkment","embarks","embarrass","embarrassed","embarrasses","embarrassing","embarrassingly","embarrassment","embassador","embassies","embassy","embattle","embattled","embayment","embed","embedded","embedding","embeds","embellish","embellishes","embellishing","embellishment","ember","embezzle","embezzled","embezzlement","embezzler","embezzles","embezzling","embiodea","embitter","embittered","embitterment","emblazon","emblazoning","emblem","emblematic","emblematical","embodied","embodies","embodiment","embody","embodying","embolden","emboldened","emboldening","embolectomy","emboli","embolic","embolism","embolus","embonpoint","emboss","embossed","embosses","embossing","embossment","embouchure","embower","embrace","embraced","embracement","embraces","embracing","embrangle","embrasure","embrittle","embrocate","embrocation","embroider","embroiderer","embroideress","embroidering","embroiders","embroidery","embroil","embroiled","embroiling","embroilment","embroils","embrown","embryo","embryologic","embryologist","embryology","embryonal","embryonic","embryos","embryotic","embus","embussed","embussing","emcee","emceeing","emda","emeer","emend","emendation","emended","emerald","emerge","emerged","emergence","emergencies","emergency","emergent","emerges","emerging","emeritus","emersion","emery","emeside","emesis","emetic","emf","emg","emigrant","emigrate","emigrated","emigrates","emigrating","emigration","emigre","emigree","eminence","eminent","eminently","emir","emirate","Emirates","emirates","emissary","emission","emissions","emit","emits","emitted","emitter","emitting","emmenagogue","emmental","emmentaler","emmenthaler","emmer","emmet","emmetropia","emmetropic","emollient","emolument","emote","emotes","emoticon","emoting","emotion","emotional","emotionalism","emotionality","emotionally","emotionless","emotionlessly","emotionlessness","emotions","emotive","empale","empanel","empanelled","empanelling","empanels","empathetic","empathetically","empathic","empathise","empathised","empathises","empathising","empathize","empathized","empathizes","empathizing","empathy","empennage","emperor","emperors","emphases","emphasis","emphasise","emphasised","emphasises","emphasising","emphasize","emphasized","emphasizes","emphasizing","emphatic","emphatically","emphysema","emphysematous","empire","empires","empiric","empirical","empirically","empiricism","empiricist","empirin","emplace","emplacement","emplane","employ","employable","employed","employee","employees","employer","employers","employing","employment","employs","emporia","emporium","empower","empowered","empowering","empowerment","empowers","empress","emptied","emptier","empties","emptiest","emptiness","emptor","empty","emptying","empurple","empurpled","empyema","empyreal","empyrean","emu","emulate","emulated","emulates","emulating","emulation","emulator","emulous","emulously","emulsified","emulsifier","emulsifies","emulsify","emulsion","enable","enabled","enables","enabling","enact","enacted","enacting","enactment","enacts","enalapril","enallage","enamel","enameled","enameling","enamelled","enamelling","enamelware","enamine","enamor","enamored","enamoredness","enamour","enamoured","enanthem","enanthema","enantiomer","enantiomorph","enantiomorphism","enarthroses","enarthrosis","enate","enatic","enation","enbrel","encainide","encamp","encampment","encapsulate","encapsulates","encapsulating","encapsulation","encase","encased","encasement","encases","encasing","encaustic","enceinte","encephala","encephalartos","encephalitides","encephalitis","encephalocele","encephalogram","encephalography","encephaloma","encephalomata","encephalomeningitis","encephalomyelitis","encephalon","encephalopathy","enchain","enchained","enchant","enchanted","enchanter","enchanting","enchantingly","enchantment","enchantress","enchilada","enchiridia","enchiridion","enchondroma","enchondromata","encipher","enciphers","encircle","encircled","encirclement","encircles","encircling","enclave","enclose","enclosed","encloses","enclosing","enclosure","enclothe","encode","encoding","encolure","encomia","encomiastic","encomium","encompass","encompassed","encompasses","encompassing","encompassment","encopresis","encore","encounter","encountered","encountering","encounters","encourage","encouraged","encouragement","encourages","encouraging","encouragingly","encrimson","encroach","encroacher","encroaches","encroaching","encroachment","encrust","encrustation","encrusted","encrusts","encrypt","encrypting","encryption","encrypts","enculturation","encumber","encumbered","encumbers","encumbrance","encyclical","encyclopaedia","encyclopaedias","encyclopaedic","encyclopaedism","encyclopaedist","encyclopedia","encyclopedias","encyclopedic","encyclopedism","encyclopedist","encysted","end","endaemonism","endameba","endamebae","endamoeba","endamoebae","endanger","endangered","endangering","endangerment","endangers","endarterectomy","endarteritis","endear","endearing","endearingly","endearment","endeavor","endeavored","endeavoring","endeavors","endeavour","endeavoured","endeavouring","endeavours","ended","endemic","endemical","endemism","endergonic","endermatic","endermic","endgame","endicott","ending","endings","endive","endless","endlessly","endlessness","endoblast","endocardia","endocarditis","endocardium","endocarp","endocentric","endocervicitis","endocrania","endocranium","endocrinal","endocrine","endocrinologist","endocrinology","endoderm","endodontia","endodontic","endodontics","endodontist","endoergic","endogamic","endogamous","endogamy","endogen","endogenetic","endogenic","endogenous","endogenously","endogeny","endolymph","endometria","endometrial","endometriosis","endometritis","endometrium","endomorph","endomorphic","endomorphy","endoneurium","endonuclease","endoparasite","endoparasitic","endoplasm","endoprocta","endorphin","endorse","endorsed","endorsement","endorsements","endorser","endorses","endorsing","endoscope","endoscopic","endoscopy","endoskeleton","endosperm","endospore","endostea","endosteum","endostoses","endostosis","endothecia","endothecium","endothelia","endothelial","endothelioma","endotheliomata","endothelium","endothermal","endothermic","endotoxin","endovenous","endow","endowed","endowing","endowment","endows","endozoa","endozoan","endozoic","endplate","endpoint","endpoints","ends","endue","endurable","endurance","endure","endured","endures","enduring","enduringly","enduringness","endways","endwise","ene","enema","enemata","enemies","enemy","energetic","energetically","energid","energies","energise","energised","energiser","energises","energising","energize","energized","energizer","energizes","energizing","energy","enervate","enervated","enervates","enervating","enervation","enfeeble","enfeeblement","enfeebling","enfeoff","enfeoffment","enfilade","enflurane","enfold","enfolding","enforce","enforceable","enforced","enforcement","enforcer","enforces","enforcing","enfranchise","enfranchised","enfranchisement","engage","engaged","engagement","engagements","engages","engaging","engagingly","engelmannia","engender","engendering","engenders","engild","engine","engineer","engineered","engineering","engineers","enginery","engines","english","englut","engluts","englutted","englutting","engorge","engorged","engorgement","engraft","engram","engrave","engraved","engraver","engraves","engraving","engross","engrossed","engrosses","engrossing","engrossment","engulf","engulfed","engulfing","engulfs","enhance","enhanced","enhancement","enhancements","enhancer","enhancers","enhances","enhancing","enhancive","enigma","enigmatic","enigmatical","enigmatically","enjambement","enjambment","enjoin","enjoined","enjoining","enjoinment","enjoins","enjoy","enjoyable","enjoyableness","enjoyably","enjoyed","enjoyer","enjoying","enjoyment","enjoys","enkaid","enkephalin","enkindle","enkindled","enl","enlace","enlarge","enlarged","enlargement","enlarger","enlarging","enlighten","enlightened","enlightening","enlightenment","enlightens","enlist","enlisted","enlistee","enlisting","enlistment","enlists","enliven","enlivened","enlivener","enlivening","enlivens","enmesh","enmeshed","enmity","ennead","enneahedra","enneahedron","ennoble","ennoblement","ennobles","ennobling","ennui","enol","enolic","enologist","enology","enophile","enormity","enormous","enormously","enormousness","enosis","enough","enounce","enplane","enquire","enquirer","enquires","enquiring","enquiringly","enquiry","enrage","enraged","enragement","enrages","enraging","enrapture","enraptured","enrich","enriching","enrichment","enrobe","enrobing","enrol","enroll","enrolled","enrollee","enrolling","enrollment","enrolls","enrolment","enrols","ens","ensconce","ensconced","ensemble","enshrine","enshrines","enshrining","enshroud","ensiform","ensign","ensilage","ensile","ensky","enslave","enslaved","enslavement","enslaves","enslaving","ensnare","ensnaring","ensnarl","ensnarled","ensorcelled","ensuant","ensue","ensued","ensues","ensuing","ensure","ensures","ensuring","entablature","entail","entailed","entailing","entailment","entails","entameba","entamebae","entamoeba","entamoebae","entangle","entangled","entanglement","entangles","entangling","entases","entasis","entelechy","entellus","entente","enter","entera","enteral","entered","enteric","enterics","entering","enteritis","enterobacteria","enterobiasis","enteroceptor","enterokinase","enterolith","enterolithiasis","enteron","enteropathy","enteroptosis","enterostenosis","enterostomy","enterotomy","enterotoxemia","enterotoxin","enterovirus","enterprise","enterpriser","enterprises","enterprising","enterprisingly","enterprisingness","enters","entertain","entertained","entertainer","entertaining","entertainingly","entertainment","entertains","enthalpy","enthral","enthrall","enthralled","enthralling","enthrallingly","enthrallment","enthralls","enthrals","enthrone","enthronement","enthrones","enthroning","enthronisation","enthronization","enthuse","enthusiasm","enthusiast","enthusiastic","enthusiastically","enthusiasts","entia","entice","enticed","enticement","entices","enticing","entire","entirely","entireness","entirety","entities","entitle","entitled","entitlement","entitlements","entitles","entitling","entity","entlebucher","entoblast","entoderm","entomb","entombed","entombing","entombment","entomion","entomologic","entomological","entomologist","entomology","entomophilous","entomophobia","entoparasite","entoproct","entourage","entozoa","entozoan","entozoic","entozoon","entrails","entrain","entraining","entrammel","entrammelled","entrammelling","entrance","entranced","entrancement","entrances","entranceway","entrancing","entrant","entrap","entrapment","entrapped","entrapping","entraps","entreat","entreating","entreatingly","entreaty","entrecote","entree","entremets","entrench","entrenched","entrenches","entrenchment","entrepot","entrepreneur","entrepreneurial","entrepreneurs","entresol","entric","entries","entropy","entrust","entrusted","entrusting","entrusts","entry","entryway","entsi","entsy","entwine","entwined","entwines","entwining","enucleate","enucleation","enuki","enumerable","enumerate","enumerates","enumerating","enumeration","enumerator","enunciate","enunciates","enunciating","enunciation","enured","enuresis","envelop","envelope","envelopes","enveloping","envelopment","envenom","envenoming","enviable","enviably","envied","envies","envious","enviously","enviousness","environ","environment","environmental","environmentalism","environmentalist","environmentalists","environmentally","environments","environs","envisage","envisaged","envisages","envisaging","envision","envisioned","envisioning","envisions","envoi","envoy","envy","envying","envys","enwrap","enwrapped","enwrapping","enzootic","enzymatic","enzyme","enzymes","enzymologist","enzymology","eohippus","eolian","eolic","eolith","eolithic","eolotropic","eon","eonian","eons","eoraptor","eosin","eosinopenia","eosinophil","eosinophile","eosinophilia","eosinophilic","epa","epacris","epanalepsis","epanaphora","epanodos","epanorthosis","eparch","eparchial","eparchy","epaulet","epaulets","epaulette","epaulettes","epauliere","epee","epencephala","epencephalon","ependyma","epentheses","epenthesis","epenthetic","epergne","epexegeses","epexegesis","epha","ephah","ephedra","ephedrine","ephemera","ephemeral","ephemerality","ephemeralness","ephemerid","ephemerida","ephemerides","ephemeris","ephemeron","ephemeropteran","ephesian","ephor","ephori","epi","epic","epical","epicalyces","epicalyx","epicanthi","epicanthic","epicanthus","epicardia","epicardium","epicarp","epicarpal","epicedia","epicedium","epicene","epicenter","epicenters","epicentre","epicentres","epicleses","epiclesis","epicondyle","epicondylitis","epicranium","epicure","epicurean","epicureanism","epicurism","epicycle","epicyclic","epicyclical","epicycloid","epideictic","epideictical","epidemic","epidemics","epidemiologic","epidemiological","epidemiologist","epidemiology","epidendron","epidermal","epidermic","epidermis","epidiascope","epididymides","epididymis","epididymitis","epidural","epigastria","epigastric","epigastrium","epigenesis","epiglottides","epiglottis","epiglottitis","epigon","epigone","epigram","epigrammatic","epigraph","epigraphy","epikeratophakia","epilate","epilation","epilator","epilepsy","epileptic","epilithic","epilog","epilogs","epilogue","epilogues","epimorphic","epimysia","epimysium","epinephrin","epinephrine","epipaleolithic","epiphany","epiphenomena","epiphenomenon","epiphora","epiphyllum","epiphyseal","epiphyses","epiphysial","epiphysis","epiphyte","epiphytic","epiphytotic","epiplexis","episcia","episcleritis","episcopacy","episcopal","episcopalian","episcopate","episiotomy","episode","episodes","episodic","episodically","episome","epispadias","episperm","epistasis","epistaxis","episteme","epistemic","epistemological","epistemologist","epistemology","episterna","episternum","epistolary","epistolatory","epistrophe","epitaph","epitaxy","epithalamia","epithalamion","epithalamium","epithelia","epithelial","epitheliod","epithelioma","epitheliomata","epithelium","epithet","epitome","epitomise","epitomised","epitomises","epitomising","epitomize","epitomized","epitomizes","epitomizing","epitope","epitopes","epizoa","epizoan","epizoic","epizoon","epizootic","epoch","epochal","eponym","eponymic","eponymous","eponymy","epos","epoxy","eprom","epsilon","eptatretus","epyllia","epyllion","eq","equable","equably","equal","equaled","equaling","equalisation","equalise","equalised","equaliser","equalisers","equalises","equalising","equalitarian","equalitarianism","equality","equalization","equalize","equalized","equalizer","equalizers","equalizes","equalizing","equalled","equalling","equally","equals","equanil","equanimity","equanimous","equatability","equate","equated","equates","equating","equation","equations","equator","equatorial","equerry","equestrian","equiangular","equid","equidistant","equidistribution","equilateral","equilibrate","equilibrating","equilibration","equilibria","equilibrise","equilibrium","equilibrize","equine","equinoctial","equinox","equip","equipage","equipment","equipoise","equipoised","equipotent","equipped","equipping","equiprobable","equips","equipt","equiseta","equisetatae","equisetum","equitable","equitably","equitation","equity","equivalence","equivalent","equivalents","equivocal","equivocally","equivocalness","equivocate","equivocating","equivocation","equivocator","er","era","eradicable","eradicate","eradicates","eradicating","eradication","eradicator","eras","erasable","erase","erased","eraser","erases","erasing","erasmian","erasure","erbium","erect","erected","erectile","erecting","erection","erectly","erectness","erects","eremite","eremitic","eremitical","eremitism","ereshkigel","erethism","erg","ergo","ergocalciferol","ergodic","ergodicity","ergometer","ergonomic","ergonomics","ergonovine","ergosterol","ergot","ergotamine","ergotic","ergotism","ergotropic","ergotropism","erica","eringo","eringoes","erinyes","eriogonum","eristic","eristical","Eritrea","eritrea","eritrean","erivan","ermine","ern","erne","erode","eroded","erodes","eroding","erogenous","erose","erosion","erosions","erosive","erotic","erotica","erotically","eroticism","eroticize","erotism","err","errancy","errand","errands","errant","errata","erratic","erratically","erratum","erred","errhine","erring","erroneous","erroneously","erroneousness","error","errorless","errors","errs","ersatz","erse","erst","erstwhile","ert","eruct","eructation","erudite","eruditely","eruditeness","erudition","erupt","erupted","erupting","eruption","eruptions","eruptive","erupts","erwinia","eryngo","eryngoes","erysipelas","erythema","erythematous","erythrina","erythrite","erythroblast","erythroblastosis","erythrocin","erythrocyte","erythrocytolysin","erythroderma","erythroid","erythrolysin","erythromycin","erythropoiesis","erythropoietic","erythropoietin","erythroxylum","escadrille","escalade","escalader","escalate","escalated","escalates","escalating","escalation","escalator","escallop","escapade","escape","escaped","escapee","escapement","escapes","escaping","escapism","escapist","escapologist","escapology","escargot","escarole","escarp","escarpment","eschalot","eschar","eschatological","eschatologically","eschatologist","eschatology","eschaton","escheat","escherichia","eschew","eschewed","eschewing","eschews","escolar","escort","escorting","escorts","escritoire","escrow","escudo","escutcheon","ese","esfahan","esidrix","eskalith","esker","esm","esmolol","esop","esophageal","esophagi","esophagitis","esophagoscope","esophagus","esophaguses","esoteric","esoterica","esotropia","esp","espadrille","espalier","espana","esparcet","especial","especially","espial","espied","espionage","esplanade","ESPN","espn","espousal","espouse","espousing","espresso","esprit","espy","esq","ESQ.","Esq.","esq.","esquimau","esquire","esr","essay","essayer","essaying","essayist","essays","essence","essene","essential","essentiality","essentially","essentialness","essonite","est","establish","established","establishes","establishing","establishment","establishmentarianism","establishmentism","establishments","estaminet","estate","estates","estazolam","esteem","esteemed","ester","esterified","esterifies","esterify","esterifying","esters","esthesia","esthesis","esthete","esthetes","esthetic","esthetical","esthetically","esthetician","esthetics","esthonia","esthonian","estimable","estimate","estimated","estimates","estimating","estimation","estimator","estimators","estival","estivate","estivation","Estonia","estonia","estonian","estop","estopped","estoppel","estopping","estradiol","estragon","estrange","estranged","estrangement","estranges","estranging","estriol","estrogen","estrogenic","estrogens","estrone","estronol","estrous","estrus","estuarial","estuarine","estuary","esurience","esurient","Eswatini","eswatini","eta","etagere","etamin","etamine","etanercept","etc","etc.","etcetera","etch","etched","etcher","etches","etching","etd","eternal","eternalise","eternalises","eternalize","eternalizes","eternally","eternise","eternity","eternize","etf","ethanal","ethanamide","ethane","ethanediol","ethanoate","ethanol","ethchlorvynol","ethelred","ethene","ether","ethereal","etherealize","etherealizing","etherialise","etherified","etherify","etherise","etherize","ethernet","ethic","ethical","ethically","ethician","ethicism","ethicist","ethics","Ethiopia","ethiopia","ethiopian","ethmoid","ethnarch","ethnic","ethnical","ethnically","ethnicity","ethnocentric","ethnocentrism","ethnographer","ethnographic","ethnographical","ethnography","ethnologic","ethnological","ethnologist","ethnology","ethnos","ethocaine","ethologist","ethology","ethos","ethosuximide","ethoxyethane","ethrane","ethril","ethyl","ethylene","ethyne","etiolate","etiolated","etiolation","etiologic","etiological","etiologist","etiology","etiquette","etodolac","etude","etui","etyma","etymological","etymologies","etymologise","etymologist","etymologize","etymologizing","etymology","etymon","eubacteria","eubacterium","eucalypt","eucalypti","eucalyptus","eucaryote","eucaryotic","eucharist","eucharistic","euchre","euclidean","euclidian","eudaemon","eudaemonia","eudaemonic","eudaimonia","eudemon","eudemonic","eudemonism","eudiometer","eugenic","eugenics","euglena","euglenid","euglenoid","euglenophyte","eukaryote","eukaryotes","eukaryotic","eulogise","eulogised","eulogises","eulogising","eulogist","eulogistic","eulogium","eulogize","eulogized","eulogizes","eulogizing","eulogy","eumenides","eunuch","eunuchoidism","eupatrid","eupatridae","euphemise","euphemism","euphemistic","euphemistically","euphemize","euphemizes","euphemizing","euphonic","euphonical","euphonious","euphonium","euphonous","euphony","euphorbium","euphoria","euphoriant","euphoric","euphory","euphuism","eupnea","eupneic","eupnoea","eupnoeic","eurafrican","eurasian","eurasiatic","eurhythmics","eurhythmy","euripi","euripus","euro","eurocentric","euronithopod","european","europeanisation","europeanise","europeanize","europium","europocentric","euros","eurypterid","eurythmics","eurythmy","eusporangiate","eusporangium","eutectic","euthanasia","euthenics","eutherian","eutrophic","eutrophication","ev","evacuant","evacuate","evacuated","evacuates","evacuating","evacuation","evacuee","evade","evaded","evades","evading","evaluate","evaluated","evaluates","evaluating","evaluation","evaluations","evaluative","evaluator","evaluators","evanesce","evanescence","evanescent","evanescing","evangel","evangelical","evangelicalism","evangelise","evangelised","evangelises","evangelising","evangelism","evangelist","evangelistic","evangelize","evangelized","evangelizes","evangelizing","evaporable","evaporate","evaporated","evaporates","evaporating","evaporation","evaporative","evaporite","evaporometer","evasion","evasive","evasively","evasiveness","eve","Even","even","evened","evenfall","evenhanded","evenhandedly","evening","evenings","eveningwear","evenk","evenly","evenness","evens","evensong","event","eventful","eventide","eventration","events","eventual","eventuality","eventually","eventuate","ever","evergreen","evergreening","evergreens","everlasting","everlastingly","everlastingness","evermore","eversion","evert","everting","Every","every","everybody","everyday","everydayness","everyman","everyone","everyplace","everywhere","evict","evicting","eviction","evicts","evidence","evidenced","evidencing","evident","evidential","evidentiary","evidently","evil","evildoer","evildoing","evilly","evilness","evils","evince","evinced","evinces","eviscerate","eviscerating","evisceration","evitable","evocation","evocative","evoke","evoked","evokes","evoking","evolution","evolutionarily","evolutionary","evolutionism","evolutionist","evolve","evolved","evolves","evolving","ew","ewenki","ewer","ex","ex-accountant","ex-dividend","ex-employer","ex-investment","ex-member","ex-player","ex-president","ex-wife","exabit","exabyte","exacerbate","exacerbated","exacerbates","exacerbating","exacerbation","exact","exacta","exacting","exaction","exactitude","exactly","exactness","exaggerate","exaggerated","exaggeratedly","exaggerates","exaggerating","exaggeration","exalt","exaltation","exalted","exalting","exalts","exam","examen","examination","examinations","examine","examined","examinee","examiner","examiners","examines","examining","example","examples","exams","exanimate","exanthem","exanthema","exanthemata","exarch","exarchate","exasparate","exasperate","exasperated","exasperates","exasperating","exasperatingly","exasperation","exaugural","exbibit","exbibyte","excavate","excavated","excavates","excavating","excavation","excavations","excavator","exceed","exceedance","exceeded","exceeding","exceedingly","exceeds","Excel","excel","excelled","excellence","excellent","excellently","excelling","excels","excelsior","Except","except","excepting","exception","exceptionable","exceptional","exceptionally","exceptions","excerpt","excerpting","excerption","excerpts","excess","excesses","excessive","excessively","excessiveness","exchange","exchangeability","exchangeable","exchanged","exchanger","exchanges","exchanging","exchequer","excise","excised","exciseman","excising","excision","excitability","excitable","excitableness","excitant","excitation","excitative","excitatory","excite","excited","excitedly","excitement","excites","exciting","excitingly","exclaim","exclaiming","exclaims","exclamation","exclamatory","exclude","excluded","excludes","excluding","exclusion","exclusive","exclusively","exclusiveness","excogitate","excogitation","excogitative","excogitator","excommunicate","excommunication","excoriate","excoriated","excoriating","excoriation","excrement","excrescence","excrescent","excreta","excrete","excretes","excreting","excretion","excretory","excruciate","excruciates","excruciating","excruciatingly","excruciation","exculpate","exculpated","exculpating","exculpation","exculpatory","excursion","excursionist","excursions","excursive","excursus","excusable","excusably","excusatory","excuse","excused","excuser","excuses","excusing","exec","execrable","execrate","execration","execs","executability","executable","executant","execute","executed","executes","executing","execution","executioner","executions","executive","executives","executor","executrices","executrix","exegeses","exegesis","exegete","exegetic","exegetical","exempla","exemplar","exemplary","exemplification","exemplified","exemplifies","exemplify","exemplifying","exemplum","exempt","exempted","exempting","exemption","exemptions","exempts","exenterate","exenteration","exercise","exercised","exerciser","exercises","exercising","exercycle","exergonic","exert","exerted","exerting","exertion","exerts","exfiltrate","exfoliate","exfoliation","exhalation","exhale","exhaled","exhales","exhaling","exhaust","exhausted","exhaustible","exhausting","exhaustion","exhaustive","exhaustively","exhibit","exhibited","exhibiting","exhibition","exhibitioner","exhibitionism","exhibitionist","exhibitionistic","exhibitions","exhibitor","exhibits","exhilarate","exhilarated","exhilarates","exhilarating","exhilaration","exhort","exhortation","exhortative","exhortatory","exhorting","exhorts","exhumation","exhume","exhumes","exhuming","exigency","exigent","exiguity","exiguous","exile","exiled","exilic","exiling","exist","existed","existence","existent","existential","existentialism","existentialist","existing","exists","exit","exited","exiting","exits","exmoor","exobiology","exocarp","exocentric","exocrine","exode","exoderm","exodontia","exodontic","exodontics","exodontist","exodus","exoergic","exogamic","exogamous","exogamy","exogen","exogenic","exogenous","exomphalos","exon","exonerate","exonerated","exonerates","exonerating","exoneration","exonerative","exons","exonuclease","exophthalmos","exorbitance","exorbitant","exorbitantly","exorcise","exorcised","exorciser","exorcises","exorcising","exorcism","exorcist","exorcize","exorcized","exorcizes","exorcizing","exordia","exordium","exoskeleton","exosphere","exostoses","exostosis","exoteric","exotherm","exothermal","exothermic","exotic","exoticism","exoticness","exotism","exotoxin","exotropia","expand","expandable","expanded","expandible","expanding","expands","expanse","expansible","expansile","expansion","expansionism","expansionist","expansions","expansive","expansively","expansiveness","expansivity","expat","expatiate","expatiation","expatriate","expatriation","expect","expectable","expectancy","expectant","expectantly","expectation","expectations","expected","expectedness","expecting","expectorant","expectorate","expectoration","expectorator","expects","expedience","expediency","expedient","expediently","expedite","expedited","expedites","expediting","expedition","expeditionary","expeditions","expeditious","expeditiously","expeditiousness","expel","expelled","expelling","expels","expend","expendable","expended","expender","expending","expenditure","expenditures","expends","expense","expenses","expensing","expensive","expensively","expensiveness","experience","experienced","experiences","experiencing","experient","experiential","experiment","experimental","experimentalism","experimentally","experimentation","experimented","experimenter","experimenting","experiments","expert","expertise","expertly","expertness","experts","expiable","expiate","expiating","expiation","expiative","expiatory","expiration","expiratory","expire","expired","expires","expiring","expiry","explain","explainable","explained","explaining","explains","explanandum","explanans","explanation","explanations","explanatory","expletive","explicable","explicandum","explicate","explicating","explication","explicit","explicitly","explicitness","explode","exploded","explodes","exploding","exploit","exploitation","exploitative","exploitatory","exploited","exploiter","exploiting","exploitive","exploits","exploration","explorations","explorative","exploratory","explore","explorer","explorers","explores","exploring","explosion","explosions","explosive","explosively","explosives","expo","exponent","exponential","exponentially","exponentiation","export","exportable","exportation","exported","exporter","exporting","exports","expose","exposed","exposes","exposing","exposit","expositing","exposition","expositive","expositor","expository","expostulate","expostulation","exposure","exposures","expound","expounder","expounding","expounds","express","expressage","expressed","expresses","expressible","expressing","expression","expressionism","expressionist","expressionistic","expressionless","expressions","expressive","expressively","expressiveness","expressly","expressway","expropriate","expropriating","expropriation","expulsion","expunction","expunge","expunged","expunges","expunging","expurgate","expurgated","expurgation","expurgator","exquisite","exquisitely","exquisiteness","exsanguine","exsanguinous","exsert","exsiccate","extant","extemporaneous","extemporaneously","extemporarily","extemporary","extempore","extemporisation","extemporise","extemporised","extemporises","extemporising","extemporization","extemporize","extemporized","extemporizes","extemporizing","extend","extendable","extended","extendible","extending","extends","extensible","extensile","extension","extensional","extensions","extensive","extensively","extensiveness","extensor","extent","extenuate","extenuates","extenuating","extenuation","exterior","exteriorisation","exteriorise","exteriorization","exteriorize","exterminable","exterminate","exterminated","exterminates","exterminating","extermination","exterminator","extern","external","externalisation","externalisations","externalise","externalised","externalises","externalising","externality","externalization","externalizations","externalize","externalized","externalizes","externalizing","externally","exteroception","exteroceptive","exteroceptor","exterritorial","extinct","extinction","extinguish","extinguishable","extinguished","extinguisher","extinguishes","extinguishing","extirpable","extirpate","extirpation","extol","extolled","extoller","extolling","extolment","extols","extort","extorted","extorting","extortion","extortionate","extortionately","extortioner","extortionist","extorts","extra","extracellular","extract","extractable","extracted","extractible","extracting","extraction","extractor","extracts","extracurricular","extradite","extradited","extradites","extraditing","extradition","extrados","extradural","extragalactic","extrajudicial","extralegal","extralinguistic","extramarital","extramural","extraneous","extraneousness","extraordinaire","extraordinarily","extraordinariness","extraordinary","extrapolate","extrapolated","extrapolates","extrapolating","extrapolation","extras","extrasensory","extrasystole","extrasystolic","extraterrestrial","extraterritorial","extravagance","extravagancy","extravagant","extravagantly","extravaganza","extravasate","extravasating","extravasation","extraversion","extraversive","extravert","extraverted","extravertive","extrema","extreme","extremely","extremeness","extremes","extremism","extremist","extremists","extremity","extremum","extricable","extricate","extricates","extricating","extrication","extrinsic","extropic","extropy","extrospective","extroversion","extroversive","extrovert","extroverted","extrovertish","extrovertive","extrude","extrusion","extrusive","exuberance","exuberant","exuberantly","exuberate","exudate","exudation","exude","exuded","exudes","exuding","exult","exultant","exultantly","exultation","exulting","exultingly","exurbia","exuviae","exuvial","exuviate","eyas","eye","eyeball","eyeballing","eyeballs","eyebath","eyebrow","eyebrows","eyecup","eyed","eyedness","eyedrop","eyeful","eyeglass","eyehole","eyeing","eyelash","eyelashes","eyeless","eyelessness","eyelet","eyelid","eyelike","eyeliner","eyepatch","eyepiece","eyes","eyeshade","eyeshadow","eyeshot","eyesight","eyesore","eyespot","eyestrain","eyeteeth","eyetooth","eyewash","eyewitness","eyra","eyrie","eyrir","eyry","ezechiel","ezed","ezekias","ezo","fa","faa","fab","fabaceae","fabian","fable","fabled","fabliau","fabliaux","fabric","fabricate","fabricated","fabricates","fabricating","fabrication","fabricator","fabrics","fabulist","fabulous","fabulously","facade","face","faced","faceless","facelift","faceplate","facer","faces","facet","faceted","facetious","facetiously","facetiousness","facets","facetted","facetting","facia","faciae","facial","facially","facile","facilitate","facilitating","facilitation","facilitative","facilitator","facilitators","facilitatory","facilities","facility","facing","facsimile","fact","faction","factions","factious","factitious","facto","factoid","factor","factorial","factories","factoring","factorisation","factorise","factorised","factorises","factorising","factorization","factorize","factorized","factorizes","factorizing","factors","factory","factotum","facts","factual","factuality","factually","factualness","facula","faculae","facultative","faculties","faculty","fad","faddily","faddish","faddishly","faddist","faddy","fade","faded","fadeout","fades","fading","fado","fae","faecal","faecalith","faeces","faerie","faeroes","faeroese","faery","fag","fagged","fagging","faggot","faggoting","faggots","fagot","fagoting","fahrenheit","faience","fail","failed","failing","failings","faille","fails","failure","failures","fain","faineance","faineant","faint","faintest","fainthearted","faintheartedness","faintly","faintness","fair","fairer","fairground","fairing","fairish","fairlead","fairly","fairness","fairway","fairways","fairy","fairyland","fairytale","faith","faithful","faithfully","faithfulness","faithless","faithlessly","faithlessness","fake","faked","fakeer","faker","fakery","fakes","faking","fakir","falafel","falanga","falangist","falcate","falchion","falciform","falcon","falconer","falconine","falconry","falderol","falkner","fall","fallacious","fallaciousness","fallacy","fallal","fallback","fallboard","fallen","faller","fallfish","fallfishes","fallibility","fallible","falling","falloff","fallopio","fallout","fallow","falls","false","falsehood","falsely","falseness","falsetto","falsie","falsifiable","falsification","falsified","falsifier","falsifies","falsify","falsifying","falsity","falstaffian","falter","faltered","faltering","falteringly","falters","fame","famed","familial","familiar","familiarisation","familiarise","familiarised","familiarises","familiarising","familiarity","familiarization","familiarize","familiarized","familiarizes","familiarizing","familiarly","families","family","famine","famish","famished","famishment","famotidine","famous","famously","famuli","famulus","fan","fanaloka","fanatic","fanatical","fanatically","fanaticism","fanatism","fancied","fancier","fancies","fanciest","fanciful","fancifully","fancify","fancy","fancying","fancywork","fandango","fandom","fanfare","fang","fanged","fangs","fanion","fanjet","fanlight","fanlike","fanned","fanning","fanny","fans","fantabulous","fantail","fantan","fantasia","fantasied","fantasies","fantasise","fantasised","fantasises","fantasising","fantasist","fantasize","fantasized","fantasizes","fantasizing","fantasm","fantast","fantastic","fantastical","fantastically","fantasy","fantods","fanweed","fanwort","fao","faq","faqir","faquir","far","farad","farandole","faraway","farawayness","farc","farce","farcical","farcically","fardel","fare","fared","fares","farewell","farfalle","farfetched","farina","farinaceous","faring","farkleberry","farm","farmer","farmerette","farmers","farmhand","farmhouse","farming","farmland","farmplace","farms","farmstead","farmyard","farness","faro","faroes","faroese","farrago","farragoes","farrier","farrow","farrowing","farseeing","farsighted","farsightedness","fart","farther","farthermost","farthest","farthing","farthingale","farting","fartlek","fasces","fascia","fasciae","fascicle","fasciculation","fascicule","fasciculi","fasciculus","fascinate","fascinated","fascinates","fascinating","fascinatingly","fascination","fascioliasis","fasciolopsiasis","fasciolosis","fascism","fascist","fascista","fascistic","fascists","fashion","fashionable","fashionably","fashioned","fashioning","fashionmonger","fashions","Faso","faso","fast","fastball","fasten","fastened","fastener","fastening","fastens","faster","fastest","fastidious","fastidiously","fastidiousness","fastigiate","fasting","fastnacht","fastness","fat","fatah","fatal","fatalism","fatalist","fatalistic","fatalities","fatality","fatally","fatback","fate","fated","fateful","fatefully","fates","fathead","fatheaded","father","fatherhood","fathering","fatherland","fatherless","fatherlike","fatherliness","fatherly","fathers","fathom","fathomable","fathometer","fatigability","fatigue","fatigued","fatigues","fatiguing","fatihah","fatimah","fatism","fatless","fatness","fatso","fatsoes","fatted","fatten","fattened","fattening","fatter","fattest","fattier","fattiest","fattiness","fatting","fattish","fattism","fatty","fatuity","fatuous","fatuously","fatuousness","fatwa","fatwah","faubourg","faucal","fauces","faucet","fauld","fault","faulted","faultfinder","faultfinding","faultier","faultiest","faultily","faultiness","faulting","faultless","faultlessly","faultlessness","faults","faulty","faun","fauna","faunae","faustian","faustus","fauteuil","fauvism","fauvist","faux","fav","fave","faveolate","favism","favor","favorable","favorableness","favorably","favored","favoring","favorite","favorited","favorites","favoritism","favors","favour","favourable","favourableness","favourably","favoured","favouring","favourite","favourited","favourites","favouritism","favours","favus","fawn","fawner","fawning","fawns","fax","faxed","faxes","faxing","fay","faze","fazed","FBI","fbi","fcc","fcs","fda","fdic","fdr","fealty","fear","feared","fearful","fearfully","fearfulness","fearing","fearless","fearlessly","fearlessness","fears","fearsome","fearsomely","feasibility","feasible","feasibleness","feasibly","feast","feasted","feasting","feasts","feat","feather","featherbed","featherbedded","featherbedding","featherbrained","feathered","featheredge","featheredged","featherfoil","featheriness","feathering","featherless","featherlike","feathers","feathertop","featherweight","feathery","feats","feature","featured","featureless","features","featuring","feb","FEB.","Feb.","feb.","febricity","febrifuge","febrile","febrility","february","fecal","fecalith","feces","feckless","fecklessly","fecklessness","fecula","feculae","feculence","feculent","fecund","fecundate","fecundation","fecundity","fed","fedayee","fedayeen","fedelline","federal","federalisation","federalise","federalism","federalist","federalization","federalize","federalizing","federally","federate","Federated","federated","federation","federita","fedora","feds","fee","feeble","feebleminded","feeblemindedness","feebleness","feebly","feed","feedback","feedbag","feeder","feeding","feedlot","feeds","feedstock","feel","feeler","feeling","feelingly","feelings","feels","fees","feet","feetfirst","feign","feigned","feigning","feigns","feijoa","feint","feinting","feints","feist","feistier","feistiest","feisty","felafel","feldene","feldspar","felicitate","felicitation","felicitous","felicitously","felicitousness","felicity","felid","feline","fell","fella","fellah","fellaheen","fellahin","fellata","fellate","fellating","fellatio","fellation","felled","feller","felling","felloe","fellow","fellows","fellowship","felly","felon","felonies","felonious","felons","felony","felspar","felt","felted","felucca","felwort","fema","female","femaleness","females","feminine","feminineness","femininity","feminisation","feminise","feminised","feminises","feminising","feminism","feminist","feminists","feminization","feminize","feminized","feminizes","feminizing","femora","femoral","femoris","femtochemistry","femtometer","femtometre","femtosecond","femtovolt","femur","fen","fence","fencelike","fencer","fences","fencesitter","fencing","fend","fended","fender","fending","fends","fenestella","fenestellae","fenestra","fenestrae","fenestral","fenestration","fengtien","fenland","fennel","fenoprofen","fentanyl","fenugreek","feoff","feral","fergusonite","feria","feriae","ferial","ferine","fermata","fermate","ferment","fermentable","fermentation","fermenting","fermentologist","ferments","fermion","fermium","fern","ferned","fernless","fernlike","ferny","ferocious","ferociously","ferociousness","ferocity","ferret","ferreting","ferrets","ferric","ferricyanide","ferried","ferries","ferrimagnetism","ferrite","ferritin","ferrocerium","ferroconcrete","ferrocyanide","ferromagnetic","ferromagnetism","ferrous","ferrule","ferry","ferryboat","ferrying","ferryman","fertile","fertilisation","fertilise","fertilised","fertiliser","fertilisers","fertilises","fertilising","fertility","fertilizable","fertilization","fertilize","fertilized","fertilizer","fertilizers","fertilizes","fertilizing","ferula","ferulae","ferule","fervency","fervent","fervently","fervid","fervidly","fervidness","fervor","fervour","fescue","fesse","festal","fester","festering","festinate","festination","festival","festivals","festive","festivities","festivity","festoon","festooned","festoonery","festoons","festschrift","festschriften","fet","fetal","fetch","fetched","fetches","fetching","fete","feterita","fetes","fetial","fetiales","fetich","fetichism","feticide","fetid","fetidness","feting","fetish","fetishism","fetishist","fetishize","fetlock","fetology","fetometry","fetoprotein","fetor","fetoscope","fetoscopy","fetter","fetterbush","fettered","fettle","fettuccine","fettuccini","fetus","fetuses","feud","feudal","feudalism","feudalistic","feudalize","feudally","feudatory","feuded","feuding","fever","fevered","feverfew","feverish","feverishly","feverishness","feverous","feverroot","few","fewer","fewest","fewness","fey","fez","fezzes","fha","fhlmc","fiance","fiancee","fiasco","fiascoes","fiat","fib","fibbed","fibber","fibbing","fiber","fiberboard","fiberglass","fiberoptic","fiberoptics","fibers","fiberscope","fibre","fibreboard","fibreglass","fibreoptic","fibreoptics","fibres","fibril","fibrilla","fibrillae","fibrillate","fibrillates","fibrillating","fibrillation","fibrillose","fibrin","fibrinase","fibrinogen","fibrinolysin","fibrinolysis","fibrinopeptide","fibrinous","fibroadenoma","fibroblast","fibroblasts","fibrocalcific","fibrocartilage","fibrocartilaginous","fibroid","fibroma","fibromata","fibromyositis","fibrosis","fibrositis","fibrosity","fibrous","fibrousness","fibs","fibula","fibulae","fica","fice","fichu","fickle","fickleness","fico","ficoes","fictile","fiction","fictional","fictionalisation","fictionalisations","fictionalise","fictionalised","fictionalises","fictionalising","fictionalization","fictionalizations","fictionalize","fictionalized","fictionalizes","fictionalizing","fictitious","fictitiously","fictive","fiddle","fiddlehead","fiddleneck","fiddler","fiddlestick","fiddlier","fiddliest","fiddling","fiddly","fideicommissa","fideicommissum","fidelity","fidget","fidgetiness","fidgeting","fidgets","fidgety","fiducial","fiduciary","fief","fiefdom","field","fielded","fielder","fieldfare","fieldhand","fielding","fieldmice","fieldmouse","fields","fieldsman","fieldstone","fieldwork","fieldworker","fiend","fiendish","fiendishly","fierce","fiercely","fierceness","fierily","fieriness","fiery","fiesta","fife","fifo","fifteen","fifteenth","fifth","fifthly","fifties","fiftieth","fifty","fig","fig.","figeater","figged","figging","fight","fighter","fighters","fighting","fights","figment","figs","figs.","figural","figuration","figurative","figuratively","figure","figured","figurehead","figurer","figures","figurine","figurines","figuring","figwort","Fiji","fiji","fijian","fila","filaggrin","filago","filagree","filament","filamentlike","filamentous","filaments","filar","filaree","filaria","filarial","filariasis","filariiae","filariid","filature","filbert","filch","filched","filching","file","filed","filefish","filefishes","filename","filer","files","filet","fileted","fileting","filets","filial","filiate","filiation","filibuster","filibusterer","filicide","filicinae","filiform","filigree","filing","filings","filipino","fill","fillagree","fille","filled","filler","fillet","filleted","filleting","fillets","filling","fillip","fills","filly","film","filmable","filmdom","filmed","filmier","filmiest","filming","filmmaker","filmmakers","films","filmy","filovirus","fils","filter","filtered","filtering","filters","filth","filthier","filthiest","filthily","filthiness","filthy","filtrate","filtration","filum","fimbria","fimbriae","fimbriate","fin","finable","finagle","finagled","finagler","final","finale","finalisation","finalise","finalised","finalises","finalising","finalist","finality","finalization","finalize","finalized","finalizes","finalizing","finally","finals","finance","financed","finances","financial","financially","financier","financing","finback","fincen","finch","find","finder","finding","findings","finds","fine","fineable","fined","finedraw","finely","fineness","finery","fines","finespun","finesse","finest","finger","fingerboard","fingerbreadth","fingered","fingerflower","fingering","fingerless","fingerlike","fingerling","fingermark","fingernail","fingernails","fingerpaint","fingerpointing","fingerpost","fingerprint","fingerprinting","fingerprints","fingerroot","fingers","fingerspell","fingerspelling","fingerstall","fingertip","fingertips","finial","finical","finicky","fining","finis","finish","finished","finisher","finishes","finishing","finite","finitely","finiteness","finitude","fink","finking","finks","Finland","finland","finnan","finned","finnic","finnier","finniest","finning","finnish","finny","finocchio","fins","fiord","fipple","fir","fire","firearm","firearms","fireball","firebase","firebird","fireboat","firebomb","firebombing","firebox","firebrand","firebrat","firebreak","firebrick","firebug","fireclay","firecracker","fired","firedamp","firedog","firedrake","firefighter","firefighters","firefly","fireguard","firehouse","firelight","firelighter","firelock","fireman","fireplace","fireplug","firepower","fireproof","fireproofing","fireroom","fires","fireside","firestone","firestorm","firethorn","firetrap","firewall","firewater","fireweed","firewood","firework","fireworks","firing","firkin","firm","firmament","firmamental","firmed","firmer","firming","firmly","firmness","firms","firmware","First","first","firstborn","firsthand","firstly","fisa","fisc","fiscal","fiscally","fish","fishbone","fishbowl","fisher","fisheries","fisherman","fishery","fishes","fisheye","fishgig","fishhook","fishier","fishiest","fishily","fishing","fishmonger","fishnet","fishpaste","fishplate","fishpond","fishtail","fishwife","fishwives","fishworm","fishy","fissile","fission","fissionable","fissiparity","fissiparous","fissiped","fissure","fissures","fissuring","fist","fistfight","fistful","fisticuffs","fistmele","fists","fistula","fistulae","fistular","fistulate","fistulous","fit","fitch","fitful","fitfully","fitfulness","fitly","fitment","fitness","fits","fitted","fitter","fittest","fitting","fittingly","fittingness","five","fivefold","fivepence","fiver","fivesome","fix","fixate","fixating","fixation","fixative","fixed","fixedly","fixedness","fixer","fixes","fixing","fixity","fixture","fixtures","fizgig","fizz","fizzes","fizzing","fizzle","fizzled","fizzles","fizzy","fjord","FLA.","Fla.","fla.","flab","flabbergast","flabbergasted","flabbergasting","flabbier","flabbiest","flabbily","flabbiness","flabby","flabella","flabellum","flaccid","flaccidity","flack","flag","flagella","flagellant","flagellata","flagellate","flagellated","flagellation","flagellum","flageolet","flagfish","flagged","flaggier","flaggiest","flagging","flaggy","flagitious","flagon","flagpole","flagrant","flagrantly","flagroot","flags","flagship","flagstaff","flagstaves","flagstone","flagyl","flail","flailing","flair","flak","flake","flakeing","flakes","flakey","flakier","flakiest","flakiness","flaking","flaky","flam","flambe","flambeau","flambeaux","flamboyance","flamboyant","flamboyantly","flame","flamed","flamefish","flameflower","flamen","flamenco","flameproof","flames","flamethrower","flamines","flaming","flamingo","flamingoes","flammability","flammable","flammed","flamming","flams","flan","flange","flank","flanked","flanker","flanking","flanks","flannel","flannelbush","flannelette","flannelled","flannelling","flap","flapcake","flapjack","flapped","flapper","flapping","flaps","flare","flared","flares","flaring","flash","flashback","flashbacks","flashboard","flashboarding","flashbulb","flashcard","flashed","flasher","flashes","flashflood","flashgun","flashier","flashiest","flashily","flashiness","flashing","flashlight","flashover","flashpoint","flashy","flask","flaskful","flasks","flat","flatbed","flatboat","flatbottom","flatbottomed","flatbread","flatbrod","flatcar","flatfeet","flatfish","flatfishes","flatfoot","flatfooted","flathead","flatiron","flatlet","flatly","flatmate","flatness","flats","flatted","flatten","flattened","flattening","flattens","flatter","flatterer","flattering","flattery","flattest","flatting","flattop","flatulence","flatulency","flatulent","flatus","flatware","flatwork","flatworm","flaunt","flauntier","flauntiest","flaunting","flaunts","flaunty","flautist","flautists","flavin","flavivirus","flavone","flavonoid","flavor","flavored","flavorer","flavorful","flavoring","flavorings","flavorless","flavorlessness","flavorous","flavors","flavorsome","flavorsomeness","flavour","flavoured","flavourer","flavourful","flavouring","flavourings","flavourless","flavourlessness","flavourous","flavours","flavoursome","flavoursomeness","flaw","flawed","flawless","flawlessly","flawlessness","flaws","flax","flaxedil","flaxen","flaxseed","flay","flaying","flays","flea","fleabag","fleabane","fleapit","fleas","fleawort","flecainide","fleck","flecked","flection","fled","fledge","fledged","fledgeless","fledgeling","fledges","fledgier","fledgiest","fledging","fledgling","fledgy","flee","fleece","fleeceable","fleeced","fleecier","fleeciest","fleecing","fleecy","fleeing","fleer","flees","fleet","fleeting","fleetingness","fleetly","fleetness","flemish","flense","flesh","fleshier","fleshiest","fleshiness","fleshing","fleshlier","fleshliest","fleshly","fleshy","fletc","flew","flex","flexeril","flexes","flexibility","flexible","flexibleness","flexibly","flexile","flexing","flexion","flexor","flexuous","flexure","flibbertigibbet","flick","flicker","flickered","flickering","flickers","flickertail","flicking","flicks","flier","fliers","flies","flight","flighted","flightier","flightiest","flightiness","flightless","flights","flighty","flimflam","flimflammed","flimflamming","flimsier","flimsiest","flimsily","flimsiness","flimsy","flinch","flinches","flinching","flindosa","flindosy","fling","flinging","flings","flint","flinthead","flintier","flintiest","flintlock","flintstone","flinty","flip","flippancy","flippant","flippantly","flipped","flipper","flipping","flips","flirt","flirtation","flirtatious","flirtatiously","flirted","flirting","flirts","flit","flitch","flits","flitted","flitter","flittering","flittermice","flittermouse","flitting","flnc","float","floatation","floated","floater","floatier","floatiest","floating","floatplane","floats","floaty","floc","flocci","floccose","flocculate","flocculation","floccule","flocculent","flocculi","flocculus","floccus","flock","flocked","flocking","flocks","floe","flog","flogged","flogger","flogging","flogs","flood","flooded","floodgate","floodhead","flooding","floodlight","floodlighted","floodlighting","floodlit","floodplain","floods","floor","floorboard","floored","flooring","floors","floorshow","floorwalker","floozie","floozy","flop","flophouse","flopped","floppier","floppiest","flopping","floppy","flops","flora","florae","floral","floreant.","floreat","florence","florentine","florescence","floret","florets","floricultural","floriculture","florid","florida","floridity","floridly","floridness","florilegia","florilegium","florin","florist","floss","flosses","flossier","flossiest","flossing","flossy","flotation","flotilla","flotsam","flounce","flounces","flouncing","flounder","floundered","floundering","flounders","flour","flourish","flourished","flourishes","flourishing","floury","flout","flouter","flouting","flouts","flow","flowage","flowchart","flowed","flower","flowerbed","flowered","floweret","flowering","flowerless","flowerpot","flowers","flowery","flowing","flown","flows","floxuridine","flu","flub","flubbed","flubbing","flubs","fluctuate","fluctuated","fluctuates","fluctuating","fluctuation","fluctuations","flue","fluegelhorn","fluency","fluent","fluently","fluff","fluffier","fluffiest","fluffiness","fluffing","fluffs","fluffy","flugelhorn","fluid","fluidity","fluidness","fluidounce","fluidram","fluids","fluke","flukey","flukier","flukiest","fluky","flume","flummery","flummox","flummoxes","flump","flunitrazepan","flunk","flunkey","flunking","flunks","flunky","fluor","fluorapatite","fluoresce","fluorescein","fluoresceine","fluorescence","fluorescent","fluorescing","fluoridate","fluoridation","fluoride","fluoridisation","fluoridise","fluoridization","fluoridize","fluorine","fluorite","fluoroboride","fluorocarbon","fluorochrome","fluoroform","fluoroscope","fluoroscopy","fluorosis","fluorouracil","fluorspar","fluosilicate","fluoxetine","fluphenazine","flurazepam","flurbiprofen","flurried","flurry","flush","flushed","flushes","flushing","fluster","flustered","flute","fluting","flutist","flutists","flutter","fluttering","flutters","fluvastatin","fluvial","flux","fluxes","fluxion","fluxmeter","fly","flyaway","flyblown","flybridge","flycatcher","flyer","flyfish","flyfishing","flying","flyleaf","flyleaves","flyover","flypaper","flypast","flyspeck","flyswat","flyswatter","flytrap","flyway","flyweight","flywheel","fmri","fnma","fo","foal","foam","foamflower","foamier","foamiest","foaminess","foaming","foams","foamy","fob","fobbed","fobbing","focal","focalisation","focalise","focalization","focalize","focally","foci","focus","focused","focuses","focusing","focussed","focussing","fodder","foe","foehn","foeman","foes","foetal","foetid","foetology","foetometry","foetoprotein","foetor","foetoscope","foetoscopy","foetus","foetuses","fog","fogbank","fogbound","fogey","fogged","foggier","foggiest","fogginess","fogging","foggy","foghorn","foglamp","fogs","fogsignal","fogy","fogyish","fohn","foible","foil","foiled","foiling","foils","foist","foisting","foists","folacin","folate","Fold","fold","foldable","foldaway","folded","folder","folderal","folderol","folding","foldout","folds","folia","foliaceous","foliage","foliaged","foliate","foliated","foliation","folie","folio","foliolate","foliose","folium","folk","folklore","folks","folksier","folksiest","folksong","folksy","folktale","follicle","follicles","follicular","folliculitis","follow","followed","follower","followers","following","follows","followup","folly","foment","fomentation","fomenter","fomenting","foments","fomite","fomorian","fond","fondant","fondest","fondle","fondler","fondles","fondling","fondly","fondness","fondu","fondue","font","fontanel","fontanelle","food","foodie","foodless","foods","foodstuff","foodstuffs","fool","fooled","foolery","foolhardier","foolhardiest","foolhardiness","foolhardy","fooling","foolish","foolishly","foolishness","foolproof","fools","foolscap","foot","footage","football","footballer","footbath","footboard","footbridge","footcandle","footed","footedness","footer","footfall","footfault","footgear","foothill","foothills","foothold","footing","footle","footless","footlights","footling","footlocker","footloose","footman","footmark","footnote","footnoted","footnotes","footnoting","footpad","footpath","footplate","footprint","footprints","footrace","footrest","foots","footslog","footslogged","footslogger","footslogging","footsore","footstall","footstep","footsteps","footstool","footsure","footwall","footwear","footwork","fop","foppish","foppishness","For","for","fora","forage","forager","forages","foraging","foram","foramen","foramina","foraminifer","foray","forays","forbade","forbear","forbearance","forbearing","forbid","forbiddance","forbidden","forbidding","forbiddingly","forbids","force","forced","forceful","forcefully","forcefulness","forceless","forcemeat","forceps","forces","forcible","forcibly","forcing","forcipate","ford","fordable","fording","fore","forearm","forebear","forebode","forebodes","foreboding","forebrain","forecast","forecaster","forecasters","forecasting","forecastle","forecasts","foreclose","foreclosed","forecloses","foreclosing","foreclosure","foreclosures","forecourt","foredate","foredeck","foredge","foredoom","forefather","forefeet","forefend","forefinger","forefoot","forefront","foregather","forego","foregoes","foregoing","foregone","foreground","foregrounding","forehand","forehanded","forehead","foreign","foreigner","foreigners","foreignness","foreknow","foreknowledge","forelady","foreland","foreleg","forelimb","forelock","foreman","foremanship","foremast","foremilk","foremost","foremother","forename","forenoon","forensic","forensics","foreordain","foreordained","foreordination","forepart","forepaw","foreperson","foreplay","forequarter","forerun","forerunner","forerunning","foreruns","foresail","foresaw","foresee","foreseeable","foreseeing","foreseen","foresees","foreshadow","foreshadowed","foreshadowing","foreshadows","foreshank","foreshock","foreshore","foreshorten","foreshortening","foreshow","foresight","foresighted","foresightedness","foresightful","foresightfulness","foreskin","forest","forestage","forestall","forestalling","forestalls","forestay","forested","forester","forestiera","foresting","forestry","forests","foreswear","foreswearing","foretaste","foreteeth","foretell","foretelling","foretells","forethought","forethoughtful","foretoken","foretooth","foretop","forever","forevermore","forewarn","forewarning","forewarns","forewing","forewoman","foreword","forfeit","forfeited","forfeiting","forfeits","forfeiture","forfend","forficate","forgather","forge","forged","forger","forgery","forges","forget","forgetful","forgetfully","forgetfulness","forgets","forgettable","forgetting","forging","forgivable","forgivably","forgive","forgiven","forgiveness","forgiver","forgives","forgiving","forgivingly","forgivingness","forgo","forgoes","forgoing","forgot","forgotten","forint","fork","forked","forking","forklift","forks","forlorn","forlornly","forlornness","form","formal","formaldehyde","formalin","formalisation","formalise","formalised","formalises","formalising","formalism","formalistic","formality","formalization","formalize","formalized","formalizes","formalizing","formally","formalness","formalwear","format","formation","formations","formative","formats","formatted","formatting","formed","former","formerly","formic","formicaria","formicarium","formicary","formicate","formication","formidability","formidable","formidably","forming","formless","formlessly","formol","formosa","formosan","forms","formula","formulae","formulaic","formularise","formularize","formulary","formulas","formulate","formulated","formulates","formulating","formulation","formulations","fornicate","fornicates","fornicating","fornication","fornicator","fornicatress","fornices","fornix","forrad","forrader","forrard","forsake","forsaken","forsakes","forsaking","forsooth","forswear","forswearing","forsythia","fort","fortaz","forte","fortemente","fortes","forth","forthcoming","forthcomingness","forthright","forthrightly","forthrightness","forthwith","forties","fortieth","fortification","fortifications","fortified","fortifies","fortify","fortifying","fortis","fortissimo","fortitude","fortnight","fortnightly","fortran","fortress","fortuitous","fortuitously","fortuitousness","fortuity","fortunate","fortunately","fortune","fortunes","fortuneteller","fortunetelling","forty","forum","forums","forward","forwarding","forwardness","forwards","foryml","fosamax","fossa","fossae","fosse","fossil","fossiliferous","fossilisation","fossilise","fossilised","fossilises","fossilising","fossilist","fossilization","fossilize","fossilized","fossilizes","fossilizing","fossilology","fossils","fossorial","foster","fosterage","fostered","fostering","fosterling","fosters","fothergilla","fots","fought","foul","foulard","fouled","foully","foulmart","foulness","foumart","found","foundation","foundations","founded","founder","foundered","foundering","founders","founding","foundling","foundress","foundry","fount","fountain","fountainhead","fountains","four","four-fold","fourfold","fourhanded","fourpence","fourpenny","fourscore","foursome","foursquare","fourteen","fourteenth","fourth","fourthly","fovea","foveae","foveola","foveolae","fowl","fowler","fox","foxberry","foxglove","foxhole","foxhound","foxhunt","foxhunting","foxier","foxiest","foxily","foxiness","foxtail","foxtrot","foxtrots","foxtrotted","foxtrotting","foxy","foyer","fpd","fps","fr","fracas","fractal","fraction","fractional","fractionate","fractionating","fractionation","fractioning","fractions","fractious","fractiously","fractiousness","fractocumuli","fractocumulus","fractostrati","fractostratus","fracture","fractured","fractures","fracturing","fradicin","fraena","fraenum","fragile","fragility","fragment","fragmental","fragmentary","fragmentation","fragmented","fragmenting","fragmentise","fragmentize","fragments","fragrance","fragrancy","fragrant","frail","frailness","frailty","fraise","frambesia","framboesia","framboise","frame","framed","framer","frames","framework","framing","franc","France","france","franchise","franchised","franchises","franchising","franciscan","francium","francophil","frangibility","frangible","frangibleness","frangipane","frangipani","frangipanni","Frank","frank","frankfort","frankfurt","frankfurter","frankincense","frankish","franklin","frankly","frankness","frantic","frantically","frap","frappe","frapped","frapping","fraps","frat","fratchier","fratchiest","fratchy","fraternal","fraternally","fraternisation","fraternise","fraternised","fraternises","fraternising","fraternity","fraternization","fraternize","fraternized","fraternizes","fraternizing","fratricide","frau","fraud","frauds","fraudster","fraudsters","fraudulence","fraudulent","fraudulently","frauen","fraught","fraxinella","fray","frayed","fraying","frazzle","freak","freaked","freakier","freakiest","freaking","freakish","freakishly","freakishness","freaks","freaky","freckle","freckled","free","freebee","freebie","freebooter","freeborn","freed","freedman","freedom","freedoms","freedwoman","freehand","freehanded","freehearted","freehold","freeholder","freeing","freelance","freelancer","freelancing","freeload","freeloader","freely","freemail","freeman","freer","frees","freesia","freest","freestanding","freestone","freestyle","freetail","freethinker","freethinking","freeware","freeway","freeways","freewheel","freewheeler","freewheeling","freewill","freewoman","freeze","freezer","freezes","freezing","freight","freightage","freighter","fremontia","frena","French","french","frenchier","frenchiest","frenchified","frenchify","frenching","frenchwoman","frenchy","frenetic","frenetically","frenula","frenulum","frenum","frenzied","frenziedly","frenzy","freon","frequence","frequencies","frequency","frequent","frequentative","frequenter","frequenting","frequently","frequents","fresco","frescoes","fresh","freshen","freshener","fresher","freshet","freshly","freshman","freshness","freshwater","fress","fret","fretful","fretfully","fretfulness","frets","fretsaw","fretted","fretting","fretwork","freudian","freyja","freyr","frg","fri","FRI.","Fri.","fri.","friability","friable","friar","friary","fricandeau","fricandeaux","fricando","fricandoes","fricassee","fricative","friction","frictional","frictionless","friday","fridge","fried","friedcake","friend","friendless","friendlessness","friendlier","friendliest","friendliness","friendly","friends","friendship","friendships","frier","fries","frieze","frig","frigate","frigga","frigged","frigging","fright","frighten","frightened","frightening","frighteningly","frightens","frightful","frightfully","frightfulness","frigid","frigidity","frigidly","frigidness","frigorific","frigs","frijol","frijole","frijoles","frijolillo","frijolito","frikin","frill","frilled","frilly","fringe","fringed","fringepod","fringes","fringing","fringy","frippery","frisian","frisk","friskier","friskiest","friskily","friskiness","frisking","frisks","frisky","frisson","frit","fritillary","frittata","fritted","fritter","fritting","friuli","frivol","frivolity","frivolled","frivolling","frivolous","frivolously","frivolousness","frizz","frizzes","frizzier","frizziest","frizzle","frizzlier","frizzliest","frizzly","frizzy","frock","frog","frogbit","frogfish","frogfishes","frogged","frogging","froghopper","frogman","frogmarch","frogmouth","frogs","frolic","frolicing","frolicked","frolicking","frolicky","frolicsome","frolicsomeness","From","from","frond","frons","front","frontage","frontal","frontally","frontbencher","frontes","frontier","frontiersman","frontierswoman","fronting","frontispiece","frontlet","frontmost","fronts","frontstall","frontward","frontwards","frore","frost","frostbite","frostbitten","frosted","frostian","frostier","frostiest","frostily","frostiness","frosting","frosts","frostweed","frostwort","frosty","froth","frothily","frothiness","frothing","froths","frothy","frottage","frotteur","frouzier","frouziest","frouzy","froward","frown","frowning","frowningly","frowns","frowsier","frowsiest","frowsty","frowsy","frowzier","frowziest","frowzled","frowzy","froze","frozen","fructification","fructified","fructifies","fructify","fructifying","fructose","fructosuria","frugal","frugality","frugally","frugalness","fruit","fruitage","fruitcake","fruiterer","fruitful","fruitfully","fruitfulness","fruitier","fruitiest","fruiting","fruition","fruitless","fruitlessly","fruitlessness","fruitlet","fruits","fruitwood","fruity","frumenty","frump","frumpily","frumpish","frumpishly","frumpy","frunze","frusta","frustrate","frustrated","frustrates","frustrating","frustration","frustrations","frustrative","frustum","fruticose","fruticulose","fry","fryer","frying","frypan","fsb","fsh","ft","FT.","Ft.","ft.","ftc","fthm","fto","ftp","ftw","fuchsia","fuci","fuck","fucked","fucker","fuckers","fuckface","fuckhead","fuckin","fucking","fucks","fucktard","fuckup","fucoid","fucus","fud","fuddle","fuddled","fudge","fuel","fueled","fueling","fuelled","fuelling","fuels","fug","fugacious","fugaciousness","fugacity","fugal","fugally","fuggy","fugitive","fugleman","fugly","fugo","fugu","fugue","fujinoyama","fujiyama","fuked","fukien","fuking","fukkianese","ful","fulah","fulbe","fulcra","fulcrum","fulfil","fulfill","fulfilled","fulfilling","fulfillment","fulfills","fulfilment","fulfils","fulgent","fulgid","fulgurant","fulgurating","fulgurous","full","fullback","fuller","fullerene","fullest","fullness","fully","fulmar","fulminant","fulminate","fulminates","fulminating","fulmination","fulsome","fulsomely","fulsomeness","fulvicin","fumatoria","fumatorium","fumble","fumbler","fumbles","fumbling","fume","fumed","fumeroot","fumes","fumewort","fumigant","fumigate","fumigation","fumigator","fuming","fumitory","fun","funambulism","funambulist","function","functional","functionalism","functionalist","functionality","functionally","functionary","functioned","functioning","functions","fund","fundament","fundamental","fundamentalism","fundamentalist","fundamentalistic","fundamentalists","fundamentally","fundamentals","funded","fundi","funding","fundraise","fundraiser","fundraises","fundraising","funds","fundus","funeral","funerals","funerary","funereal","funfair","fungal","fungi","fungibility","fungible","fungicidal","fungicide","fungoid","fungous","fungus","funguslike","funicle","funicular","funiculi","funiculitis","funiculus","funk","funka","funkaceae","funkier","funkiest","funky","funned","funnel","funneled","funneling","funnelled","funnelling","funnels","funnier","funniest","funnily","funniness","funning","funny","funrun","fuqra","fur","furan","furane","furbelow","furbish","furbishes","furcate","furcation","furcula","furculum","furfur","furfural","furfuraldehyde","furfuran","furfures","furious","furiously","furiousness","furl","furled","furlike","furlong","furlough","furloughed","furloughs","furnace","furnish","furnished","furnishes","furnishing","furnishings","furniture","furor","furore","furosemide","furred","furrier","furriest","furring","furrow","furrowed","furrowing","furrows","furry","further","furtherance","furthering","furthermore","furthermost","furthers","furthest","furtive","furtively","furtiveness","furuncle","furunculosis","fury","furze","fusain","fusanus","fuschia","fuscous","fuse","fused","fusee","fuselage","fusible","fusiform","fusil","fusilier","fusillade","fusion","fusions","fuss","fusses","fussier","fussiest","fussily","fussiness","fussing","fusspot","fussy","fustian","fustier","fustiest","fustigate","fusty","futile","futilely","futility","futon","future","futureless","futures","futurism","futurist","futuristic","futuristics","futurity","futurology","fuze","fuzee","fuzz","fuzzed","fuzzier","fuzziest","fuzziness","fuzzy","fws","g.i.","GA.","Ga.","ga.","gaap","gab","gaba","gabapentin","gabardine","gabbier","gabbiest","gabble","gabbro","gabby","gaberdine","gabfest","gabled","Gabon","gabon","gabonese","gabun","gad","gadabout","gaddafi","gadded","gaddi","gadding","gadfly","gadget","gadgeteer","gadgetry","gadgets","gadoid","gadolinite","gadolinium","gaelic","gaff","gaffe","gaffer","gaffsail","gag","gaga","gage","gaged","gages","gagged","gagging","gaggle","gaging","gagman","gags","gagster","gagwriter","gaia","gaiety","gaillardia","gaily","gain","gained","gainer","gainful","gainfully","gainfulness","gaining","gainlessly","gainly","gains","gainsay","gainsaying","gaiseric","gait","gaiter","gaius","gal","GAL.","Gal.","gal.","gala","galactagogue","galactic","galactocele","galactose","galactosemia","galactosis","galago","galangal","galantine","galapagos","galax","galaxy","galbanum","galbulus","gale","galea","galeae","galena","galere","galilaean","galilean","galingale","gall","gallamine","gallant","gallantly","gallantry","gallberry","gallbladder","galled","galleon","galleries","gallery","galley","gallfly","gallia","gallic","gallican","gallimaufry","gallina","gallinacean","gallinaceous","galling","gallinule","gallium","gallivant","gallivanting","gallon","gallons","gallop","galloping","gallops","gallous","gallows","gallstone","galoot","galore","galosh","galumph","galumphing","galvanic","galvanisation","galvanise","galvanised","galvaniser","galvanises","galvanising","galvanism","galvanization","galvanize","galvanized","galvanizer","galvanizes","galvanizing","galvanometer","galwegian","gam","gamba","gambado","gambadoes","Gambia","gambia","gambian","gambist","gambit","gamble","gambler","gamblers","gambles","gambling","gamboge","gambol","gamboled","gamboling","gambolled","gambolling","gambols","gambrel","game","gamebag","gameboard","gamecock","gamekeeper","gamelan","gamely","gameness","games","gamesmanship","gametangia","gametangium","gamete","gametocyte","gametoecia","gametoecium","gametogenesis","gametophore","gametophyte","gamey","gamier","gamiest","gamin","gamine","gaminess","gaming","gamma","gammadia","gammadion","gammed","gammier","gammiest","gamming","gammon","gammopathy","gammy","gamopetalous","gamp","gamut","gamy","ganapati","gand","gander","gandhian","ganef","ganesa","ganesha","gang","gangboard","gangdom","ganger","ganging","gangland","ganglia","gangling","gangliocyte","ganglion","gangly","gangplank","gangrene","gangrenous","gangs","gangsaw","gangsta","gangster","gangsters","gangway","ganja","gannet","ganof","ganoid","ganoin","ganoine","gantanol","gantlet","gantrisin","gantry","gao","gaol","gaolbird","gaolbirds","gaolbreak","gaolbreaks","gaoled","gaoler","gaolers","gaoling","gaols","gap","gape","gaped","gaping","gapped","gapping","gaps","gar","garage","garages","garambulla","garamycin","garand","garb","garbage","garbageman","garbanzo","garbed","garble","garbled","garbles","garbling","garboard","garboil","garbology","gardant","garden","gardener","gardenia","gardening","gardens","garfish","garfishes","garganey","gargantuan","garget","gargle","gargoyle","gargoylism","gari","garish","garishly","garishness","garland","garlic","garlicky","garment","garmented","garmentless","garmentmaker","garments","garner","garnered","garnering","garners","garnet","garnierite","garnish","garnishee","garnishes","garnishing","garnishment","garotte","garpike","garret","garrison","garrote","garroter","garroting","garrotte","garrotter","garrotting","garrulity","garrulous","garrulously","garrulousness","garter","gas","gasbag","gasconade","gascony","gaseous","gaseousness","gases","gasfield","gash","gasification","gasified","gasifies","gasify","gasing","gasket","gaskin","gaslight","gasman","gasmask","gasohol","gasolene","gasoline","gasometer","gasp","gaspar","gasped","gasping","gasps","gassed","gasses","gassier","gassiest","gassing","gassy","gasteromycete","gasteropoda","gastralgia","gastrectomy","gastric","gastrin","gastritis","gastrocnemius","gastroduodenal","gastroenteritis","gastroenterologist","gastroenterology","gastroenterostomy","gastroesophageal","gastrogavage","gastrointestinal","gastrolobium","gastromy","gastromycete","gastronome","gastronomic","gastronomical","gastronomy","gastropod","gastroscope","gastroscopy","gastrostomy","gastrula","gastrulae","gastrulation","gasworks","gat","gate","gateau","gateaux","gatecrasher","gatefold","gatehouse","gatekeeper","gatepost","Gates","gates","gateway","gather","gathered","gatherer","gathering","gatherings","gathers","gating","gator","gatt","gauche","gaucheness","gaucherie","gaucho","gaud","gaudery","gaudier","gaudiest","gaudily","gaudiness","gaudy","gauffer","gauge","gauged","gauges","gauging","gauguinesque","gaumless","gaunt","gauntlet","gauntleted","gauntness","gauntry","gaur","gaussian","gaussmeter","gautama","gauze","gauzier","gauziest","gauzy","gavage","gave","gavel","gavial","gavotte","gawk","gawker","gawkier","gawkiest","gawkiness","gawking","gawky","gawp","gay","gayal","gayfeather","gayly","gayness","gays","gaywings","gaza","gazania","gaze","gazebo","gazeboes","gazelle","gazes","gazette","gazetteer","gazillion","gazing","gazpacho","gazump","gbit","gbp","gca","gcse","gdp","gean","gear","gearbox","geared","gearing","gears","gearset","gearshift","gearstick","geartrain","gecko","geckoes","gee","geebung","geek","geeks","geese","geezer","geezerhood","gegenschein","geing","geisha","gel","gelatin","gelatine","gelatinise","gelatinize","gelatinlike","gelatinous","gelatinousness","geld","gelded","gelding","gelechiid","gelid","gelidity","gelignite","gelled","gelling","gelly","gels","gelsemia","gelsemium","gelt","gem","gemboks","gembucks","gemeinschaft","gemeinschaften","gemfibrozil","geminate","gemination","gemma","gemmae","gemmation","gemmed","gemmiferous","gemming","gemmule","gemonil","gempylid","gems","gemsbok","gemsbuck","gemstone","gen","GEN.","Gen.","gen.","gendarme","gendarmerie","gendarmery","gender","gene","genealogic","genealogical","genealogically","genealogist","genealogy","genera","general","generalcy","generalisation","generalisations","generalise","generalised","generalises","generalising","generalissimo","generalist","generality","generalization","generalizations","generalize","generalized","generalizes","generalizing","generally","generals","generalship","generate","generated","generates","generating","generation","generational","generations","generative","generator","generators","generatrices","generatrix","generic","generically","generosity","generous","generously","generousness","genes","geneses","genesis","genetic","genetical","genetically","geneticism","geneticist","genetics","geneve","genf","genial","geniality","genially","genic","geniculate","genie","genii","genip","genipa","genipap","genital","genitalia","genitals","genitive","genitor","genitourinary","genius","genlisea","genocide","genoese","genoise","genome","genomes","genomics","genotype","genotypes","genotypic","genotypical","genova","genovese","genre","genres","gentamicin","genteel","genteelly","genteelness","gentian","gentile","gentility","gentle","gentlefolk","gentleman","gentlemanlike","gentlemanly","gentleness","gentler","gentlewoman","gently","gentrification","gentrifies","gentrify","gentrifying","gentry","genu","genua","genuflect","genuflecting","genuflection","genuflects","genuflexion","genuine","genuinely","genuineness","genus","geocentric","geochemistry","geode","geodesic","geodesical","geodesy","geodetic","geoduck","geographer","geographic","geographical","geographically","geographics","geography","geologic","geological","geologically","geologist","geology","geomancer","geomancy","geometer","geometric","geometrical","geometrically","geometrician","geometrid","geometry","geomorphologic","geomorphological","geomorphology","geophagia","geophagy","geophysical","geophysicist","geophysics","geophyte","geophytic","geopolitical","geopolitics","georgette","georgia","georgian","geosphere","geostationary","geostrategic","geostrategy","geosynchronous","geothermal","geothermally","geothermic","geotropism","geranium","gerardia","gerbert","gerbil","gerbille","gerenuk","gerfalcon","geriatric","geriatrician","geriatrics","germ","german","germander","germane","germaneness","germanic","germanite","germanium","germen","germfree","germicidal","germicide","germina","germinal","germinate","germinates","germinating","germination","germs","germy","gerontocracy","gerontological","gerontologist","gerontology","gerridae","gerrymander","gerund","gerundial","gesellschaft","gesellschaften","gesneria","gesneriad","gesso","gestalt","gestalten","gestate","gestation","gestational","gesticulate","gesticulates","gesticulating","gesticulation","gestural","gesture","gestured","gestures","gesturing","get","geta","getable","getatable","getaway","gets","gettable","getting","getup","gewgaw","geyser","Ghana","ghana","ghanaian","ghanese","ghanian","gharry","ghastlier","ghastliest","ghastliness","ghastly","ghat","ghatti","ghb","ghee","ghent","gherkin","ghetto","ghettoes","ghettoise","ghettoised","ghettoises","ghettoising","ghettoize","ghettoized","ghettoizes","ghettoizing","ghillie","ghost","ghostfish","ghosting","ghostlier","ghostliest","ghostlike","ghostliness","ghostly","ghosts","ghostwrite","ghostwriter","ghostwrites","ghostwriting","ghoul","ghoulish","ghq","ghrelin","ghrf","ghz","gi","gia","giant","giantess","giantism","giants","giardia","giardiasis","gib","gibbed","gibber","gibberellin","gibbering","gibberish","gibbers","gibbet","gibbing","gibbose","gibbosity","gibbous","gibbousness","gibbsite","gibe","gibelike","gibibit","gibibyte","gibingly","gibit","giblet","gibraltarian","gibs","giddied","giddier","giddiest","giddily","giddiness","giddy","gidgee","gift","gifted","gifting","gifts","giftwrap","giftwrapped","giftwrapping","giftwraps","gig","gigabit","gigabyte","gigacycle","gigahertz","gigantic","gigantism","gigged","gigging","giggle","giggler","giggles","giggling","gigo","gigolo","gigot","gigs","gigue","gilbertian","gild","gilded","gilder","gildhall","gilding","gill","gilled","gillie","gillyflower","gilt","gimbal","gimbaled","gimcrack","gimcrackery","gimel","gimlet","gimmick","gimmickry","gimmicks","gimp","gimpiness","gimpy","gin","ginep","ginger","gingerbread","gingerly","gingerol","gingerroot","gingersnap","gingery","gingham","gingiva","gingivae","gingival","gingivitis","gingko","gingkoes","ginglymi","ginglymus","ginkgo","ginkgoes","ginkgophytina","ginmill","ginned","ginning","gins","ginseng","ginzo","gip","gipped","gipping","gippo","gippoes","gips","gipsies","gipsy","gipsywort","giraffe","girandola","girandole","girasol","gird","girded","girder","girding","girdle","girds","girl","girlfriend","girlfriends","girlhood","girlish","girlishly","girlishness","girls","giro","girondin","girth","gismo","gist","git","gita","gitana","gitano","gittern","give","giveaway","given","givenness","giver","gives","giving","gizeh","gizmo","gizzard","glabella","glabellae","glabellar","glabrescent","glabrous","glace","glacial","glacially","glaciate","glaciated","glaciation","glacier","glad","gladden","gladdened","gladder","gladdest","gladdon","glade","gladfulness","gladiator","gladiatorial","gladiola","gladioli","gladiolus","gladly","gladness","gladsome","gladsomeness","glamor","glamorisation","glamorise","glamorised","glamorises","glamorising","glamorization","glamorize","glamorized","glamorizes","glamorizing","glamorous","glamour","glamourisation","glamourise","glamourization","glamourize","glamourous","glance","glanced","glances","glancing","gland","glanders","glandes","glands","glandular","glans","glare","glareole","glares","glaring","glaringly","glary","glasnost","glass","glassblower","glassed","glasses","glassful","glasshouse","glassier","glassiest","glassless","glassmaker","glassware","glasswork","glassworker","glasswort","glassy","glaswegian","glaucoma","glauconite","glaucous","glaze","glazed","glazer","glazes","glazier","glazing","gleam","gleaming","gleams","glean","gleaned","gleaner","gleaning","gleans","gleba","glebe","glee","gleeful","gleefully","gleefulness","gleet","glen","glia","glial","glib","glibber","glibbest","glibly","glibness","glide","glider","glides","gliding","glimmer","glimmering","glimmers","glimmery","glimpse","glimpses","glimpsing","glint","glinting","glioblastoma","glioma","gliomata","glipizide","gliricidia","glissade","glissandi","glissando","glisten","glistening","glistens","glister","glistering","glitch","glitter","glittering","glitters","glittery","glitz","gloam","gloaming","gloat","gloated","gloating","gloatingly","gloats","glob","global","globalisation","globalise","globalised","globalises","globalising","globalization","globalize","globalized","globalizes","globalizing","globally","globe","globefish","globefishes","globeflower","globetrotter","globigerina","globigerinae","globin","globose","globosity","globular","globularness","globule","globulin","glochid","glochidcia","glochidia","glochidium","glockenspiel","glogg","glom","glomerular","glomerule","glomeruli","glomerulonephritis","glomerulus","glommed","glomming","gloom","gloomful","gloomier","gloomiest","gloomily","gloominess","glooming","gloomy","glop","gloried","glorification","glorified","glorifies","glorify","glorifying","gloriole","gloriosa","glorious","gloriously","glory","glorying","gloss","glossa","glossae","glossalgia","glossarist","glossary","glossier","glossiest","glossily","glossina","glossiness","glossing","glossitis","glossodynia","glossolalia","glossopharyngeal","glossoptosis","glossy","glottal","glottides","glottis","glottochronological","glottochronology","glove","gloved","gloveless","gloves","glow","glowed","glower","glowering","gloweringly","glowing","glowingly","glows","glowworm","gloxinia","glucagon","glucinium","glucocorticoid","glucophage","glucosamine","glucose","glucoside","glucosuria","glucotrol","glue","glued","glueing","glues","gluey","glueyness","glug","gluiness","gluing","glum","glume","glumly","glummer","glummest","glumness","gluon","glut","glutaei","glutaeus","glutamate","glutamine","glute","gluteal","glutei","glutelin","gluten","glutethimide","gluteus","glutinosity","glutinous","glutinousness","gluts","glutted","glutting","glutton","gluttonise","gluttonises","gluttonize","gluttonizes","gluttonous","gluttonously","gluttony","glyburide","glyceraldehyde","glyceride","glycerin","glycerine","glycerite","glycerogel","glycerogelatin","glycerol","glycerole","glycerolise","glycerolize","glyceryl","glycine","glycogen","glycogenesis","glycogenic","glycol","glycolysis","glycoprotein","glycoside","glycosuria","glyoxaline","glyph","glyptics","glyptography","gm","gmt","gnarl","gnarled","gnarly","gnash","gnashes","gnashing","gnat","gnatcatcher","gnathion","gnathostome","gnaw","gnawer","gneiss","gnetophyta","gnetophytina","gnetum","gnocchi","gnome","gnomic","gnomish","gnomon","gnoses","gnosis","gnostic","gnp","gnu","GO","Go","go","goad","goaded","goading","goads","goal","goalie","goalkeeper","goalless","goalmouth","goalpost","goals","goaltender","goat","goatee","goateed","goatfish","goatfishes","goatherd","goats","goatsbeard","goatsfoot","goatskin","goatsucker","gob","gobbet","gobble","gobbled","gobbledygook","gobbler","gobbles","gobbling","goblet","goblin","gobo","goboes","gobsmacked","goby","god","godchild","godchildren","goddam","goddamn","goddamned","goddaughter","goddess","godfather","godforsaken","godless","godlessness","godlier","godliest","godlike","godliness","godly","godmother","godown","godparent","gods","godsend","godson","godwit","goer","goering","goes","goeteborg","goethean","goethian","goethite","gofer","Goffer","goffer","goggle","goggles","gogh","goidelic","goin","goin'","going","goiter","goiters","goitre","goitres","goitrogen","golan","gold","goldbeater","goldbrick","goldbricking","goldcrest","goldcup","golden","goldenbush","goldeneye","goldenrod","goldenseal","goldfield","goldfinch","goldfish","goldfishes","goldilocks","goldmine","goldplate","goldsmith","goldstone","goldthread","goldworker","golem","golf","golfcart","golfclub","golfer","golfers","golfing","golgotha","goliard","gollied","golliwog","golliwogg","golly","golosh","gomel","gomorrha","gomphoses","gomphosis","gomphothere","gomuti","GON'T","Gon't","gon't","gonad","gonadal","gonadotrophic","gonadotrophin","gonadotropic","gonadotropin","gondola","gondolier","gondoliere","gone","goner","gong","gonia","gonidia","gonidium","gonif","goniff","goniometer","gonion","gonioscopy","gonococci","gonococcus","gonorrhea","gonorrhoea","GONT","Gont","gont","gonzo","GON\u2019T","Gon\u2019t","gon\u2019t","goo","goober","good","goodby","Goodbye","goodbye","goodies","goodish","goodlier","goodliest","goodlooking","goodly","goodmorning","goodness","goods","goodwife","goodwill","goodwives","goody","gooey","goof","goofball","goofier","goofiest","goofiness","goofing","goofproof","goofs","goofy","google","googles","googling","googly","googol","googolplex","gooier","gooiest","gook","goon","gooney","goonie","goony","goop","goosander","goose","gooseberry","goosebump","goosefish","goosefishes","gooseflesh","goosefoot","gooselike","gooseneck","gooses","goosey","goosier","goosiest","goosing","goosy","gop","gopher","gopherwood","goral","gordian","Gore","gore","gored","gores","gorge","gorgeous","gorgeously","gorger","gorgerin","gorges","gorget","gorging","gorgoneia","gorgoneion","gorgoniacea","gorgonian","gorgonzola","gorier","goriest","gorilla","gorillas","goring","gorki","gorkiy","gormandise","gormandize","gormless","gorse","gory","goshawk","gosling","gosmore","gospel","gospeler","gospeller","gospodin","gospopoda","gossamer","gossip","gossiper","gossiping","gossipmonger","gossipmongering","gossips","gossipy","got","goth","gothenburg","gothic","gothite","gotten","gouache","gouge","gouger","goujon","goulash","gourd","gourde","gourmand","gourmandism","gourmandize","gourmandizer","gourmet","gout","gouty","GOV.","Gov.","gov.","govern","governable","governance","governed","governess","governing","government","governmental","governmentally","governments","governor","governors","governorship","governs","gown","gowned","goy","goyim","gp","gpa","gpo","gps","gr8","grab","grabbed","grabber","grabbing","grabby","grabs","grace","graceful","gracefully","gracefulness","graceless","gracelessly","gracelessness","graces","gracie","gracilariid","gracile","gracility","gracillariidae","gracing","gracious","graciously","graciousness","grackle","grad","gradable","gradate","gradation","gradational","gradatory","grade","graded","gradelier","gradeliest","gradely","grader","graders","grades","gradient","gradients","grading","gradual","graduality","gradually","gradualness","graduate","graduated","graduates","graduating","graduation","graecophile","graecophilic","graf","grafen","graffiti","graffito","graft","grafted","grafting","grail","grain","grainfield","grainier","grainiest","graininess","graining","grains","grainy","gram","grama","gramicidin","graminaceae","gramma","grammar","grammarian","grammatic","grammatical","grammatically","grammatolatry","gramme","grammes","gramophone","gramps","grampus","grams","gran","granadilla","granadillo","granary","grand","grandad","grandaunt","grandchild","grandchildren","granddad","granddaddy","granddaughter","grandee","grander","grandeur","grandfather","grandiloquence","grandiloquent","grandiloquently","grandiose","grandiosely","grandiosity","grandly","grandma","grandmaster","grandmother","grandmothers","grandnephew","grandness","grandniece","grandpa","grandparent","grandparents","grandson","grandstand","grandstander","grandstanding","granduncle","grange","granger","granite","granitelike","graniteware","granitic","grannie","granny","granola","grant","granted","grantee","grantees","granter","granth","granting","grantor","grants","granular","granularity","granulate","granulated","granulation","granule","granuliferous","granulocyte","granulocytic","granulocytopenia","granuloma","granulomata","granulomatous","granulose","grape","grapefruit","grapelike","grapes","grapeshot","grapevine","grapey","graph","grapheme","graphic","graphical","graphically","graphics","graphing","graphite","graphologist","graphology","graphospasm","graphs","grapnel","grapo","grappa","grapple","grappled","grappler","grapples","grappling","grapy","grasp","graspable","grasping","grasps","grass","grassfinch","grassfire","grasshopper","grassier","grassiest","grassing","grassland","grassless","grasslike","grassroots","grassy","grate","grateful","gratefully","gratefulness","grater","grates","graticule","gratification","gratified","gratifies","gratify","gratifying","gratifyingly","grating","gratingly","gratis","gratitude","gratuitous","gratuitously","gratuity","gratulatory","gravamen","gravamina","grave","gravedigger","gravel","graveled","gravelled","gravelling","gravelly","gravelweed","gravely","graven","graveness","graver","graverobber","graves","gravest","gravestone","graveyard","gravid","gravida","gravidation","gravidity","gravidness","gravimeter","gravimetric","gravimetry","gravitas","gravitate","gravitates","gravitating","gravitation","gravitational","gravitationally","gravitative","graviton","gravity","gravure","gravy","gray","grayback","graybeard","grayed","grayhen","graying","grayish","graylag","grayly","grayness","grays","graze","grazed","grazes","grazier","grazing","grease","greaseball","greased","greasepaint","greaseproof","greaser","greases","greasewood","greasier","greasiest","greasily","greasiness","greasing","greasy","great","greatcoat","greater","greatest","greathearted","greatly","greatness","greave","grebe","grecian","greco","greed","greedier","greediest","greedily","greediness","greedy","greegree","greek","green","greenback","greenbelt","greenbottle","greenbrier","greener","greenery","greeneye","greenfly","greengage","greengrocer","greengrocery","greenhood","greenhorn","greenhouse","greening","greenish","greenishness","greenling","greenly","greenmail","greenmarket","greenness","greenockite","greenroom","greens","greensand","greenshank","greensick","greensickness","greenside","greenskeeper","greensward","greenwash","greenwasher","greenwashers","greenwashing","greenway","greenweed","greenwing","greenwood","greet","greeted","greeter","greeting","greetings","greets","gregarine","gregarious","gregariously","gregariousness","gregorian","greisen","gremlin","Grenada","grenada","grenade","grenades","grenadian","grenadier","grenadine","Grenadines","grenadines","grevillea","grew","grey","greyback","greybeard","greyed","greyhen","greyhound","greying","greyish","greylag","greyly","greyness","greys","grid","griddle","griddlecake","gridiron","gridlock","grids","grief","grievance","grievances","grieve","grieved","griever","grieves","grieving","grievous","grievously","griffin","griffins","griffon","grifter","grigri","grill","grille","grilled","grilling","grillroom","grills","grillwork","grim","grimace","grimaced","grimacing","grime","griminess","grimly","grimmer","grimmest","grimness","grimoire","grimy","grin","grind","grinder","grinding","grindle","grinds","grindstone","gringo","grinned","grinner","grinning","grins","griot","grip","gripe","gripes","griping","grippe","gripped","gripping","grips","gripsack","grisaille","griseofulvin","grislier","grisliest","grisly","grison","grissino","grist","gristle","gristly","gristmill","grit","gritrock","gritstone","gritted","grittier","grittiest","gritting","gritty","grivet","grizzle","grizzled","grizzlier","grizzliest","grizzly","groak","groan","groaned","groaner","groaning","groans","groat","grocer","groceries","grocery","grody","groenendael","grog","groggier","groggiest","grogginess","groggy","grogram","groin","groins","grok","grommet","gromwell","gronland","groom","groomed","grooming","grooms","groomsman","groove","grooved","groover","grooves","groovier","grooviest","grooving","groovy","grope","groped","gropes","groping","gropingly","grosbeak","groschen","grosgrain","gross","grossbeak","grosses","grossing","grossly","grossness","grosz","groszy","grot","grotesque","grotesquely","grotesqueness","grotesquerie","grotesquery","grottier","grottiest","grotto","grottoes","grotty","grouch","grouchily","grouching","groucho","grouchy","ground","groundball","groundberry","groundbreaker","groundbreaking","groundcover","grounded","grounder","groundfish","groundhog","grounding","groundkeeper","groundless","groundlessness","groundling","groundmass","groundnut","grounds","groundsel","groundsheet","groundskeeper","groundsman","groundspeed","groundwork","group","grouped","grouper","groupie","grouping","groupings","groups","groupthink","groupware","grouse","grouseberry","groused","grouses","grousing","grout","groutier","groutiest","grouty","grove","grovel","groveled","groveler","groveling","grovelled","groveller","grovelling","grovels","groves","grow","grower","growers","growing","growl","growler","growling","growls","grown","grownup","grows","growth","growths","groyne","groynes","groznyy","grub","grubbed","grubbier","grubbiest","grubbily","grubbiness","grubbing","grubby","grubstake","grudge","grudging","grudgingly","gruel","grueling","gruelingly","gruelling","gruellingly","gruesome","gruesomely","gruesomeness","gruff","gruffly","gruffness","grugru","grumble","grumbled","grumbler","grumbles","grumbling","grume","grummet","grumose","grumous","grump","grumpier","grumpiest","grumpily","grumpiness","grumpy","grundyism","grunge","grungily","grungy","grunt","grunter","grunting","gruntle","grunts","gryphon","gryphons","gsa","gspc","gsr","gu","guacamole","guacharo","guaiac","guaira","guama","guan","guanabana","guanabenz","guanaco","guanine","guano","guanosine","guar","guarantee","guaranteed","guaranteeing","guarantees","guarantied","guarantor","guaranty","guard","guardant","guarded","guardedly","guardhouse","guardian","guardians","guardianship","guarding","guardrail","guardroom","guards","guardsman","guarnieri","Guatemala","guatemala","guatemalan","guava","guayule","gubbins","gubernatorial","guck","gudgeon","guenevere","guenon","guerdon","guereza","gueridon","guerilla","guerrilla","guerrillas","guess","guessed","guesser","guesses","guessing","guesstimate","guesswork","guest","guesthouse","guestimate","guestroom","guests","guestworker","guff","guffaw","guffawing","guffaws","guggle","gui","guib","guidance","guide","guidebook","guided","guideline","guidelines","guidepost","guides","guideword","guiding","guild","guilde","guilder","guilders","guildhall","guile","guileful","guileless","guillemot","guilloche","guillotine","guillotining","guilt","guiltier","guiltiest","guiltily","guiltiness","guiltless","guiltlessness","guilty","guimpe","Guinea","guinea","guinean","guise","guitar","guitarfish","guitarfishes","guitarist","guitars","gujerat","gujerati","gulag","gulch","gulden","gulf","gulfweed","gull","gullet","gullibility","gullible","gullied","gulling","gulls","gully","gulp","gulper","gulping","gulps","gulyas","gum","gumbo","gumboil","gumdrop","gumma","gummata","gummed","gummier","gummiest","gumminess","gumming","gummite","gummosis","gummy","gumption","gumptious","gumshield","gumshoe","gumweed","gumwood","gun","gunboat","guncotton","gunfight","gunfire","gunflint","gunite","gunk","gunlock","gunman","gunmetal","gunned","gunnel","gunner","gunnery","gunning","gunny","gunnysack","gunplay","gunpoint","gunpowder","gunrunner","gunrunning","guns","gunshot","gunsight","gunslinger","gunsmith","gunstock","gunwale","guomindang","guppy","gurgle","gurgles","gurgling","gurnar","gurnard","gurnards","gurney","guru","gush","gusher","gushes","gushier","gushiest","gushing","gushingly","gushy","gusset","gusseted","gust","gustation","gustative","gustatorial","gustatory","gustier","gustiest","gusto","gusty","gut","gutless","gutlessness","guts","gutsier","gutsiest","gutsiness","gutsy","gutta","guttae","gutter","guttering","guttersnipe","guttle","guttural","gutturally","guvnor","guy","Guyana","guyana","guyanese","guyot","guys","guzzle","guzzler","guzzles","guzzling","gybe","gym","gymkhana","gymnasia","gymnasium","gymnast","gymnastic","gymnastics","gymnomycota","gymnosophical","gymnosophist","gymnosophy","gymnosperm","gymnospermophyta","gymnospermous","gymslip","gynaecea","gynaeceum","gynaecia","gynaecium","gynaecological","gynaecologist","gynaecologists","gynaecology","gynaeolatry","gynandromorph","gynandromorphic","gynandromorphous","gynarchy","gynecea","gynecia","gynecium","gynecocracy","gynecologic","gynecological","gynecologist","gynecologists","gynecology","gynecomastia","gyneolatry","gynne","gynobase","gynoecea","gynoecia","gynoecium","gynogenesis","gynophobia","gynophore","gynostegium","gyp","gypped","gypping","gypsies","gypsum","gypsy","gypsyweed","gypsywort","gyral","gyrate","gyrates","gyrating","gyration","gyre","gyrfalcon","gyri","gyro","gyrocompass","gyromitra","gyroplane","gyroscope","gyroscopic","gyrostabiliser","gyrostabilizer","gyrus","gywn","ha","HA.","Ha.","ha.","haart","habacuc","habanera","haberdasher","haberdashery","habergeon","habiliment","habilimented","habilitate","habit","habitability","habitable","habitableness","habitant","habitat","habitation","habitats","habited","habits","habitual","habitually","habituate","habituates","habituating","habituation","habitude","habitue","habitus","hacek","hachure","hacienda","hack","hackamore","hackberry","hackbut","hacked","hackee","hacker","hackers","hacking","hackle","hackmatack","hackney","hackneyed","hacks","hacksaw","hackwork","HAD","Had","had","hadal","hadarim","haddock","hadean","hadj","hadjes","hadji","HADN'T","Hadn't","hadn't","HADN'T'VE","Hadn't've","hadn't've","HADNT","Hadnt","hadnt","HADN\u2019T","Hadn\u2019t","hadn\u2019t","HADN\u2019T\u2019VE","Hadn\u2019t\u2019ve","hadn\u2019t\u2019ve","hadron","hadrosaur","hadrosaurus","haecceity","haem","haemagglutinate","haemagglutination","haemal","haemangioma","haematal","haematemesis","haematic","haematinic","haematite","haematocele","haematochezia","haematocoele","haematocolpometra","haematocolpos","haematocrit","haematocytopenia","haematocyturia","haematogenesis","haematogenic","haematohiston","haematoidin","haematological","haematologist","haematologists","haematology","haematolyses","haematolysis","haematoma","haematomata","haematopoiesis","haematopoietic","haematoxylon","haematozoa","haematozoon","haematuria","haemic","haemitin","haemodialyses","haemodialysis","haemogenesis","haemoglobin","haemoglobinemia","haemoglobinopathy","haemoglobinuria","haemolyses","haemolysin","haemolysis","haemolytic","haemophile","haemophilia","haemophiliac","haemophiliacs","haemophilic","haemopoiesis","haemopoietic","haemoproteid","haemoprotein","haemoptyses","haemoptysis","haemorrhage","haemorrhaged","haemorrhages","haemorrhagic","haemorrhaging","haemorrhoid","haemorrhoidectomy","haemorrhoids","haemosiderin","haemosiderosis","haemosporidian","haemostasia","haemostasis","haemostat","haemothorax","haeredes","haeres","hafnium","haft","haftarah","haftaroth","hag","hagada","hagberry","hagbut","hagfish","hagfishes","haggada","haggadas","haggadoth","haggard","haggardly","haggis","haggle","haggler","haggles","haggling","hagiographer","hagiographist","hagiography","hagiolatry","hagiologist","hagiology","hagridden","haha","hahaha","hahahah","hahnium","haick","haifa","haik","haiku","hail","hailed","hailing","hails","hailstone","hailstorm","hair","hairball","hairbrush","haircare","haircloth","haircut","hairdo","hairdresser","hairdressing","haired","hairgrip","hairier","hairiest","hairiness","hairless","hairlessness","hairlike","hairline","hairnet","hairpiece","hairpin","hairs","hairsbreadth","hairsplitter","hairsplitting","hairspring","hairstreak","hairstyle","hairstylist","hairtail","hairweaving","hairy","Haiti","haiti","haitian","haj","haji","hajj","hajjes","hajji","hake","hakeem","hakenkreuz","hakim","halacha","halaka","halal","halberd","halberdier","halcion","halcyon","haldol","hale","haleness","haler","haleru","half","halfback","halfbeak","halfhearted","halfpence","halfpenny","halfpennyworth","halftime","halftone","halfway","halibut","halide","halite","halitosis","halitus","hall","hallah","hallelujah","halliard","hallmark","hallmarks","halloo","hallot","halloth","hallow","hallowed","hallowing","hallowmas","halls","hallstand","halluces","hallucinate","hallucinates","hallucinating","hallucination","hallucinatory","hallucinogen","hallucinogenic","hallucinosis","hallux","hallway","halm","halma","halo","haloalkane","halobacter","halobacteria","halobacterium","halocarbon","haloes","haloform","halogen","halogeton","halon","haloperidol","halophil","halophile","halophyte","haloragaceae","halothane","halt","halted","halter","haltere","halteres","halting","haltingly","halts","halve","halved","halves","halving","halyard","ham","hamadryad","hamartia","hamartoma","hamate","hamburger","hamburgers","hame","hamelia","hamelin","hamlet","hammed","hammer","hammered","hammerhead","hammering","hammerlock","hammers","hammertoe","hammier","hammiest","hamming","hammock","hammurapi","hammy","hamper","hampered","hampering","hampers","hamster","hamsters","hamstring","hamstringing","hamstrung","hamuli","hamulus","hand","handbag","handball","handbarrow","handbasin","handbasket","handbell","handbill","handbook","handbow","handbreadth","handbuild","handcar","handcart","handclap","handclasp","handcolor","handcolour","handcraft","handcrafting","handcuff","handcuffed","handcuffing","handcuffs","handed","handedness","handelian","handfed","handfeed","handful","handgrip","handgun","handguns","handheld","handhold","handicap","handicapped","handicapper","handicapping","handicraft","handicrafts","handier","handiest","handily","handiness","handing","handiwork","handkerchief","handle","handlebar","handled","handleless","handler","handles","handless","handline","handling","handlock","handloom","handmade","handmaid","handmaiden","handoff","handout","handouts","handover","handpick","handpicked","handrail","handrest","hands","handsaw","handsbreadth","handsel","handselled","handselling","handset","handsewn","handshake","handshaking","handsome","handsomely","handsomeness","handspike","handspring","handstamp","handstand","handstitched","handwash","handwashes","handwashing","handwear","handwheel","handwork","handwoven","handwrite","handwriting","handwritten","handy","handyman","hang","hangar","hangbird","hangchow","hangdog","hanged","hanger","hanging","hangman","hangnail","hangout","hangover","hangs","hank","hanker","hankering","hankers","hankey","hankie","hanky","hannukah","hanoverian","hansom","hanukah","hao","haoma","hap","haphazard","haphazardly","haphazardness","haphtarah","haphtaroth","haphtorah","hapless","haplessness","haploid","haploidic","haploidy","haplosporidian","haplotype","haplotypes","haply","happen","happened","happening","happens","happenstance","happier","happiest","happily","happiness","happy","hapsburg","haptic","haptically","haptoglobin","harakiri","harangue","haranguer","harangues","haranguing","harass","harassed","harasser","harasses","harassing","harassment","harbinger","harbor","harborage","harbored","harboring","harbors","harbour","harbourage","harboured","harbouring","harbours","hard","hardback","hardbacked","hardbake","hardball","hardboard","hardbound","hardcore","hardcover","harden","hardened","hardening","hardens","harder","hardest","hardfisted","hardheaded","hardheads","hardhearted","hardheartedness","hardier","hardiest","hardihood","hardiness","hardinggrass","hardline","hardliner","hardly","hardness","hardpan","hardscrabble","hardship","hardships","hardtack","hardtop","hardware","hardwareman","hardwood","hardworking","hardy","hare","harebell","harebrained","haredi","haredim","hareem","harefoot","harelip","harem","haricot","harijan","harikari","hark","harken","harkening","harking","harks","harlequin","harlequinade","harlot","harlotry","harm","harmattan","harmed","harmful","harmfully","harmfulness","harming","harmless","harmlessly","harmonic","harmonica","harmonical","harmonically","harmonies","harmonious","harmoniously","harmoniousness","harmonisation","harmonise","harmonised","harmoniser","harmonises","harmonising","harmonium","harmonizable","harmonization","harmonize","harmonized","harmonizer","harmonizes","harmonizing","harmony","harms","harness","harnessed","harnesses","harnessing","harp","harper","harping","harpist","harpo","harpoon","harpooneer","harpooner","harps","harpsichord","harpsichordist","harpulla","harpullia","harpy","harquebus","harridan","harried","harrier","harrison","harrow","harrowing","Harry","harry","harrying","harsh","harshen","harsher","harshest","harshly","harshness","hartebeest","haruspex","haruspices","harvest","harvested","harvester","harvestfish","harvesting","harvestman","harvests","HAS","Has","has","haschisch","hash","hasheesh","hashes","hashing","hashish","hashmark","hasid","hasidic","hasidim","haslet","HASN'T","Hasn't","hasn't","HASN\u2019T","Hasn\u2019t","hasn\u2019t","hasp","hassid","hassidic","hassidim","hassidism","hassium","hassle","hassling","hassock","hastate","haste","hasten","hastened","hastening","hastens","hastier","hastiest","hastily","hastiness","hasty","hat","hatband","hatbox","hatch","hatchback","hatched","hatchel","hatchelled","hatchelling","hatchery","hatches","hatchet","hatching","hatchling","hatchway","hate","hated","hateful","hatefully","hatefulness","hatemonger","hater","haters","hates","hatful","hating","hatless","hatmaker","hatpin","hatrack","hatred","hats","hatted","hatter","hatting","hauberk","haughtier","haughtiest","haughtily","haughtiness","haughty","haul","haulage","hauled","hauler","haulier","hauling","haulm","hauls","haunch","haunt","haunted","haunting","haunts","hausen","hausmannite","haussa","haustella","haustellum","haustoria","haustorium","hautbois","hautboy","hauteur","HAVE","Have","have","haveing","havelock","haven","HAVEN'T","Haven't","haven't","havens","HAVENT","Havent","havent","HAVEN\u2019T","Haven\u2019t","haven\u2019t","haversack","havin","havin'","Having","having","havoc","haw","Hawaii","hawaii","hawaiian","hawala","hawfinch","hawing","hawk","hawkbill","hawkbit","hawker","hawking","hawkish","hawkishness","hawkmoth","hawks","hawksbill","hawkshaw","hawkweed","hawkyns","hawse","hawsehole","hawsepipe","hawser","hawthorn","hay","hayastan","haycock","hayfield","hayfork","haying","hayloft","haymaker","haymaking","haymow","hayrack","hayrick","hayrig","hayseed","haystack","hayti","haywire","hazan","hazard","hazarding","hazardous","hazardously","hazardousness","hazards","haze","hazel","hazelnut","hazelwood","hazier","haziest","hazily","haziness","hazing","hazmat","hazy","hazzan","hazzanim","hcfc","hcg","hdl","hdtv","HE","He","he","HE'D","He'd","he'd","HE'LL","He'll","he'll","HE'S","He's","he's","HE'VE","He've","he've","head","headache","headaches","headband","headboard","headbutt","headcheese","headcount","headcounter","headdress","headed","header","headfast","headfirst","headfish","headful","headgear","headhunter","headier","headiest","heading","headlamp","headland","headless","headlight","headlike","headline","headlined","headliner","headlines","headlinese","headlining","headlock","headlong","headman","headmaster","headmastership","headmistress","headmistressship","headphone","headphones","headpiece","headpin","headquarter","headquarters","headrace","headrest","headroom","heads","headsail","headscarf","headset","headshake","headshaking","headship","headshot","headsman","headspace","headspring","headstall","headstand","headstock","headstone","headstream","headstrong","headwaiter","headwater","headway","headwind","headword","headwords","heady","heal","healed","healer","healing","heals","health","healthcare","healthful","healthfulness","healthier","healthiest","healthily","healthiness","healthy","heap","heaped","heaping","heaps","hear","hearable","heard","hearer","hearing","hearings","hearken","hearkening","hears","hearsay","hearse","heart","heartache","heartbeat","heartbreak","heartbreaker","heartbreaking","heartbroken","heartburn","heartburning","hearten","heartened","heartening","heartfelt","hearth","hearthrug","hearthstone","heartier","heartiest","heartily","heartiness","heartland","heartleaf","heartless","heartlessly","heartlessness","heartrending","heartrot","hearts","heartsease","heartseed","heartsick","heartsickness","heartstrings","heartthrob","heartwarming","heartwood","hearty","heat","heatable","heated","heatedly","heater","heath","heathen","heathenish","heathenism","heather","heathfowl","heathland","heathlike","heating","heatless","heats","heatstroke","heaume","heave","heaved","heaven","heavenly","heavens","heavenward","heavenwardly","heavenwards","heaver","heaves","heavier","heaviest","heavily","heaviness","heaving","heavy","heavyhearted","heavyheartedness","heavyset","heavyweight","hebdomad","hebdomadal","hebdomadally","hebdomadary","hebephrenia","hebephrenic","hebetude","hebraic","hebraical","hebraism","hebrew","hebridean","hecatomb","heckelphone","heckle","heckled","heckler","heckles","heckling","hectare","hectares","hectic","hectically","hectocotyli","hectocotylus","hectogram","hectograph","hectoliter","hectolitre","hectometer","hectometre","hector","hectoring","HED","Hed","hed","heder","hedge","hedged","hedgefund","hedgehog","hedgehop","hedgehopped","hedgehopping","hedger","hedgerow","hedges","hedging","hediondilla","hedjaz","hedonic","hedonism","hedonist","hedonistic","heed","heeded","heedful","heedfully","heedfulness","heeding","heedless","heedlessly","heedlessness","heeds","heel","heelbone","heels","heft","heftier","heftiest","heftiness","hefting","hefty","hegari","hegelian","hegemon","hegemony","hegira","hehe","heifer","height","heighten","heightened","heightening","heightens","heights","heilong","heimdal","heimdallr","heinous","heinously","heinousness","heir","heiress","heirloom","heirs","heist","hejira","hela","held","heldentenor","heldentenore","heleodytes","heliac","heliacal","helianthemum","helianthus","helical","helices","helicon","helicopter","helicopters","heliocentric","heliogram","heliograph","heliogravure","heliolatry","heliometer","heliopause","heliophila","heliopsis","heliosphere","heliotherapy","heliotrope","heliotropism","heliotype","heliozoa","heliozoan","heliport","helium","helix","hell","hellbender","hellcat","hellebore","helleborine","hellene","hellenic","hellenistic","hellenistical","heller","helleri","hellespont","hellfire","hellgrammiate","hellhole","hellhound","hellion","hellish","hellishly","Hello","hello","helm","helmet","helmeted","helmetflower","helmets","helminth","helminthiasis","helminthic","helmsman","helot","help","helpdesk","helped","helper","helpful","helpfully","helpfulness","helping","helpless","helplessly","helplessness","helpmate","helpmeet","helps","helsingfors","helve","helvella","helvetica","hem","hemagglutinate","hemagglutination","hemal","hemangioma","hematal","hematemesis","hematic","hematin","hematinic","hematite","hematocele","hematochezia","hematochrome","hematocoele","hematocolpometra","hematocolpos","hematocrit","hematocyst","hematocytopenia","hematocyturia","hematogenesis","hematogenic","hematohiston","hematoidin","hematologic","hematological","hematologist","hematologists","hematology","hematolyses","hematolysis","hematoma","hematomata","hematopoiesis","hematopoietic","hematozoa","hematozoon","hematuria","heme","hemelytra","hemelytron","hemeralopia","hemerobiid","hemiacetal","hemianopia","hemianopsia","hemic","hemicrania","hemicycle","hemidemisemiquaver","hemielytra","hemielytron","hemiepiphyte","hemimetabola","hemimetabolic","hemimetabolism","hemimetabolous","hemimetaboly","hemimetamorphic","hemimetamorphosis","hemimetamorphous","hemimorphite","hemin","hemingwayesque","hemiparasite","hemiparasitic","hemiplegia","hemiplegic","hemipode","hemipteran","hemipteron","hemisphere","hemispheric","hemispherical","hemline","hemlock","hemmed","hemming","hemminge","hemochromatosis","hemodialyses","hemodialysis","hemodialyzer","hemodynamic","hemodynamics","hemofil","hemogenesis","hemoglobin","hemoglobinemia","hemoglobinopathy","hemoglobinuria","hemolyses","hemolysin","hemolysis","hemolytic","hemophile","hemophilia","hemophiliac","hemophiliacs","hemophilic","hemopoiesis","hemopoietic","hemoprotein","hemoptyses","hemoptysis","hemorrhage","hemorrhaged","hemorrhages","hemorrhagic","hemorrhaging","hemorrhoid","hemorrhoidectomy","hemorrhoids","hemosiderin","hemosiderosis","hemostasia","hemostasis","hemostat","hemostatic","hemothorax","hemp","hempen","hems","hemstitch","hemstitching","hen","henbane","henbit","hence","henceforth","henceforward","henchman","hencoop","hendecahedra","hendecahedron","hendiadys","henhouse","henna","henpecked","henroost","hep","hepadnavirus","heparin","hepatic","hepatica","hepaticae","hepatitis","hepatocarcinoma","hepatoflavin","hepatoma","hepatomegaly","hepatotoxic","hepatotoxin","hephaistos","hepper","heppest","heptad","heptagon","heptane","Her","her","heracles","heraclid","heraclidae","herakles","heraklid","heraklidae","herald","heralded","heraldic","heralding","heraldist","heraldry","heralds","herb","herbaceous","herbage","herbal","herbalist","herbaria","herbarium","herbicide","herbier","herbiest","herbivore","herbivorous","herbs","herby","herculean","herculius","herd","herder","herding","herds","herdsman","HERE","Here","here","HERE'RE","Here're","here're","HERE'S","Here's","here's","hereabout","hereabouts","hereafter","hereby","hereditament","hereditarianism","hereditary","heredity","herein","hereinafter","hereinbefore","hereness","hereof","heresy","heretic","heretical","hereto","heretofore","hereunder","hereupon","herewith","HERE\u2019RE","Here\u2019re","here\u2019re","HERE\u2019S","Here\u2019s","here\u2019s","heritable","heritage","heritor","herm","herma","hermae","hermai","hermann","hermaphrodism","hermaphrodite","hermaphroditic","hermaphroditism","hermeneutic","hermeneutics","hermetic","hermetically","hermit","hermitage","hermitic","hermitical","hernia","herniae","herniation","hero","heroes","heroic","heroical","heroically","heroin","heroine","heroism","heron","heronry","herpangia","herpes","herpetologist","herpetology","herr","herren","herrenvolk","herrerasaur","herrerasaurus","herring","herringbone","hers","herself","hertha","hertzian","Herzegovina","herzegovina","HES","Hes","hes","hesitance","hesitancy","hesitant","hesitantly","hesitate","hesitater","hesitates","hesitating","hesitatingly","hesitation","hesitator","hesperian","hesperus","hessian","hessonite","het","hetaera","hetaerae","hetaira","hetairai","heterocercal","heterocycle","heterocyclic","heterodactyl","heterodox","heterodoxy","heterodyne","heteroecious","heterogeneity","heterogeneous","heterogeneousness","heterogenesis","heterogenous","heterograft","heteroicous","heterokontae","heterologic","heterological","heterologous","heterology","heterometabolic","heterometabolism","heterometabolous","heterometaboly","heteronym","heteroploid","heteroploidy","heterosexism","heterosexual","heterosexualism","heterosexuality","heterosis","heterosporous","heterospory","heterostracan","heterotaxy","heterothermic","heterotroph","heterotrophic","heterozygosity","heterozygote","heterozygotes","heterozygous","heth","heulandite","heuristic","HEVE","Heve","heve","hew","hewed","hewer","hewing","hewn","hews","hex","hexachlorophene","hexad","hexadecimal","hexadrol","hexagon","hexagonal","hexagram","hexahedron","hexameter","hexane","hexangular","hexapod","hexapoda","hexed","hexenbesen","hexes","hexestrol","hexing","hexose","Hey","hey","heyday","hezbollah","HE\u2019D","He\u2019d","he\u2019d","HE\u2019LL","He\u2019ll","he\u2019ll","HE\u2019S","He\u2019s","he\u2019s","HE\u2019VE","He\u2019ve","he\u2019ve","hfc","hhs","hi","hiatus","hibachi","hibernacula","hibernaculum","hibernal","hibernate","hibernates","hibernating","hibernation","hibernia","hibiscus","hiccough","hiccup","hiccupped","hiccupping","hick","hickey","hickory","hid","hidden","hiddenite","hiddenness","hide","hideaway","hidebound","hideous","hideously","hideousness","hideout","hides","hiding","hidrosis","hidrotic","hie","hiemal","hieracosphinges","hieracosphinx","hierarch","hierarchal","hierarchic","hierarchical","hierarchically","hierarchies","hierarchy","hieratic","hieratical","hierocracy","hieroglyph","hieroglyphic","hieroglyphical","hieroglyphically","hierolatry","hieronymus","hifalutin","higgle","high","highball","highbinder","highboard","highborn","highboy","highbrow","highbrowed","highchair","higher","highest","highfalutin","highfaluting","highflier","highflyer","highflying","highjack","highjacker","highjacking","highland","highlife","highlight","highlighted","highlighter","highlighting","highlights","highly","highroad","highs","highschool","hightail","hightailing","highwater","highway","highwayman","highways","hijab","hijack","hijacker","hijackers","hijacking","hijackings","hijacks","hijaz","hijinks","hike","hiked","hiker","hikers","hikes","hiking","hila","hilar","hilarious","hilariously","hilarity","hildebrand","hili","hill","hillbilly","hilliness","hillock","hills","hillside","hillsides","hilltop","hilly","hilt","hilum","hilus","him","himalaya","himalayan","himatia","himation","himself","hin","hind","hindbrain","hinder","hinderance","hindered","hindering","hinderingly","hindermost","hinders","hindfoot","hindgut","hindi","hindlimb","hindmost","hindoo","hindooism","hindoostani","hindostani","hindquarter","hindrance","hindshank","hindsight","hindu","hindustani","hinge","hinges","hinging","hinnied","hinny","hint","hinted","hinterland","hinting","hints","hip","hipbone","hipflask","hiplength","hipless","hipline","hippeastrum","hipped","hipper","hippest","hippie","hippier","hippies","hippiest","hippoboscid","hippocampi","hippocampus","hippocratic","hippodrome","hippopotami","hippopotamus","hippy","hips","hipster","hircine","hire","hired","hireling","hirer","hires","hiring","hirsute","hirsuteness","hirsutism","hirudinean","His","his","hispanic","hispaniolan","hispid","hiss","hissed","hisser","hisses","hissing","histaminase","histamine","histidine","histiocyte","histiocytosis","histocompatibility","histogram","histoincompatibility","histologic","histological","histologically","histologist","histology","histone","historian","historians","historic","historical","historically","historicalness","historicism","historied","histories","historiographer","historiography","history","histrion","histrionic","histrionics","hit","hitch","hitched","hitches","hitchhike","hitchhiker","hitchhiking","hitching","hitchrack","hither","hitherto","hitlerian","hitless","hitman","hits","hitter","hitters","hitting","hittite","hiv","hive","hizbollah","hizbullah","hm","hmo","hmong","hnd","ho","hoactzin","hoagie","hoagy","hoar","hoard","hoarder","hoarding","hoards","hoarfrost","hoarier","hoariest","hoariness","hoarse","hoarsely","hoarseness","hoary","hoatzin","hoax","hoaxer","hoaxes","hoaxing","hob","hobbed","hobbies","hobbing","hobbit","hobble","hobbled","hobbledehoy","hobbler","hobbles","hobbling","hobby","hobbyhorse","hobbyism","hobbyist","hobgoblin","hobnail","hobnailed","hobnob","hobnobbed","hobnobbing","hobnobs","hobo","hoboes","hock","hockey","hocking","hocus","hocussed","hocussing","hod","hoder","hodgepodge","hodman","hodometer","hodoscope","hodr","hodur","hoe","hoecake","hoeing","hog","hogback","hogchoker","hogfish","hogfishes","hogged","hogget","hogging","hoggish","hoggishness","hogs","hogshead","hogtie","hogties","hogtying","hogwash","hogweed","hoist","hoisted","hoister","hoists","hoka","hokey","hokkianese","hokum","hold","holdall","holder","holders","holdfast","holding","holdings","holdout","holdover","holds","holdup","hole","holed","holes","holey","holibut","holiday","holidaying","holidaymaker","holidays","holier","holiest","holiness","holing","holism","holistic","holla","holland","hollandaise","hollander","holler","hollering","hollers","hollo","holloa","hollow","holloware","hollowly","hollowness","hollowware","hollygrape","hollyhock","hollywood","holmes","holmium","holocaust","holocephalan","holocephalian","hologram","holograph","holographic","holographical","holography","holometabola","holometabolic","holometabolism","holometabolous","holometaboly","holonym","holonymy","holophyte","holophytic","holothurian","holotype","holozoic","holstein","holster","holy","holystone","homage","hombre","homburg","home","homebody","homebound","homeboy","homebrew","homebuilder","homecoming","homefolk","homegirl","homegrown","homel","homeland","homeless","homelessness","homelier","homeliest","homelike","homeliness","homely","homemade","homemaker","homemaking","homeobox","homeopath","homeopathic","homeopaths","homeopathy","homeostasis","homeostatic","homeostatically","homeotherm","homeothermic","homeowner","homeowners","homepage","homer","homered","homeric","homeroom","homers","homes","homesick","homesickness","homespun","homestead","homesteader","homesteading","homestretch","hometown","homeward","homewards","homework","homey","homicidal","homicide","homicides","homier","homiest","homiletic","homiletical","homiletics","homily","hominal","homing","hominian","hominid","hominine","hominoid","hominy","hommos","homo","homocentric","homocercal","homochromatic","homocyclic","homoecious","homoeopath","homoeopathic","homoeopaths","homoeopathy","homoerotic","homoeroticism","homogenate","homogeneity","homogeneous","homogeneously","homogeneousness","homogenisation","homogenise","homogenised","homogenises","homogenising","homogenization","homogenize","homogenized","homogenizes","homogenizing","homogenous","homogeny","homograft","homograph","homoiotherm","homoiothermic","homologic","homological","homologise","homologises","homologize","homologous","homology","homomorphism","homomorphy","homonym","homonymic","homonymous","homonymy","homophile","homophobe","homophobia","homophobic","homophone","homophonic","homophonous","homophony","homopteran","homosexual","homosexualism","homosexuality","homosexuals","homosporous","homospory","homostyled","homostylic","homostylous","homotherm","homothermic","homozygosity","homozygote","homozygotes","homozygous","homunculi","homunculus","homy","HON.","Hon.","hon.","honcho","hondo","honduran","Honduras","honduras","hone","honed","hones","honest","honestly","honestness","honesty","honey","honeybee","honeybells","honeycomb","honeycombed","honeycreeper","honeydew","honeyed","honeyflower","honeylike","honeymoon","honeymooner","honeymooning","honeypot","honeysucker","honeysuckle","honied","honing","honk","honker","honkey","honkie","honking","honks","honky","honkytonk","honor","honorable","honorableness","honorably","honoraria","honorarium","honorary","honored","honoree","honorific","honoring","honors","honour","honourable","honourableness","honourably","honoured","honouring","honours","hooch","hood","hoodlum","hoodmold","hoodmould","hoodoo","hoodooism","hoodwink","hoodwinked","hoodwinking","hoodwinks","hooey","hoof","hoofed","hoofer","hoofing","hooflike","hoofprint","hook","hookah","hooked","hooker","hooking","hooklike","hooknose","hooks","hookup","hookworm","hooky","hooligan","hooliganism","hooligans","hoop","hoopla","hoopoe","hoopoo","hoops","hoopskirt","hooray","hoosegow","hoosgow","hoosier","hoot","hootch","hooter","hooting","hoots","hooved","hoover","hoovering","hoovers","hooves","hop","hope","hoped","hopeful","hopefully","hopefulness","hopeh","hopei","hopeless","hopelessly","hopelessness","hoper","hopes","hoping","hopped","hopper","hopping","hopple","hops","hopsack","hopsacking","hopscotch","horary","horde","hordeolum","hordes","horehound","horizon","horizons","horizontal","horizontality","horizontally","hormonal","hormone","hormones","horn","hornbeam","hornbill","hornblende","hornbook","horned","hornet","hornfels","hornier","horniest","horniness","horning","hornist","hornless","hornlike","hornpipe","hornpout","horns","hornstone","hornswoggle","hornwort","horny","horologe","horologer","horologia","horologist","horologium","horology","horoscope","horoscopy","horrendous","horrible","horribly","horrid","horridly","horridness","horrific","horrified","horrifies","horrify","horrifying","horrifyingly","horripilate","horripilates","horripilating","horripilation","horror","horrors","horse","horseback","horsebean","horsebox","horsecar","horsecloth","horsefish","horseflesh","horsefly","horsehair","horsehead","horsehide","horselaugh","horseleech","horseman","horsemanship","horsemeat","horsemint","horseplay","horsepond","horsepower","horseradish","horses","horseshit","horseshoe","horseshoer","horseshow","horsetail","horseweed","horsewhip","horsewhipped","horsewhipping","horsewoman","horsier","horsiest","horsing","horst","horsy","hortative","hortatory","hortensia","horticultural","horticulturally","horticulture","horticulturist","hosanna","hose","hosepipe","hoses","hosier","hosiery","hosing","hospice","hospitable","hospitableness","hospitably","hospital","hospitalisation","hospitalise","hospitalised","hospitalises","hospitalising","hospitality","hospitalization","hospitalizations","hospitalize","hospitalized","hospitalizes","hospitalizing","hospitals","host","hostage","hostages","hosted","hostel","hosteller","hostelry","hostess","hostile","hostilely","hostilities","hostility","hosting","hostler","hosts","hot","hotbed","hotbox","hotcake","hotchpotch","hotdog","hotel","hotelier","hotelkeeper","hotelman","hotels","hotfoot","hothead","hotheaded","hothouse","hothr","hotly","hotness","hotplate","hotpot","hotshot","hotspot","hotspots","hotspur","hottentot","hotter","hottest","hottish","houdah","houhere","hoummos","hound","hounded","hounding","hounds","hour","hourglass","houri","hourlong","hourly","hours","house","houseboat","housebound","housebreak","housebreaker","housebreaking","housebroken","housebuilder","houseclean","housecleaning","housecoat","housecraft","housed","housedog","housefather","housefly","houseful","houseguest","household","householder","households","househusband","housekeep","housekeeper","housekeeping","housel","houselights","houselled","houselling","housemaid","houseman","housemaster","housemate","housemother","housepaint","houseplant","houseroom","houses","housetop","housewarming","housewife","housewifely","housewifery","housewives","housework","housewrecker","housing","hovea","hovel","hovelled","hovelling","hover","hovercraft","hovered","hovering","hovers","HOW","How","how","HOW'D","How'd","how'd","HOW'LL","How'll","how'll","HOW'RE","How're","how're","HOW'S","How's","how's","howdah","Howdy","howdy","However","however","howitzer","howl","howler","howling","HOWLL","Howll","howll","howls","HOWRE","Howre","howre","HOWS","Hows","hows","HOW\u2019D","How\u2019d","how\u2019d","HOW\u2019LL","How\u2019ll","how\u2019ll","HOW\u2019RE","How\u2019re","how\u2019re","HOW\u2019S","How\u2019s","how\u2019s","hoy","hoya","hoyden","hoydenish","hoydenism","hr","hrolf","hrs","hrt","hrvatska","hryvnia","hsian","html","http","hua","hualapai","hualpai","huamachil","huarache","hub","hubbub","hubby","hubcap","hubris","huck","huckaback","huckleberry","huckster","hud","huddle","huddled","huddler","huddles","huddling","hudood","hudud","hue","hueless","huff","huffily","huffiness","huffing","huffish","huffishness","huffs","huffy","hug","huge","hugely","hugged","hugger","hugging","hugoesque","hugs","huisache","huitre","huji","hula","hulk","hulking","hulky","hull","hullabaloo","hulling","hullo","hulls","hum","human","humane","humanely","humaneness","humanisation","humanise","humanised","humanises","humanising","humanism","humanist","humanistic","humanitarian","humanitarianism","humanities","humanity","humanization","humanize","humanized","humanizes","humanizing","humankind","humanlike","humanly","humanness","humanoid","humans","humate","humble","humblebee","humbled","humbleness","humbles","humbling","humbly","humbug","humbugged","humbugging","humbugs","humdinger","humdrum","humectant","humeri","humerous","humerus","humic","humid","humidified","humidifier","humidifies","humidify","humidifying","humidity","humidness","humification","humified","humify","humiliate","humiliated","humiliates","humiliating","humiliatingly","humiliation","humility","humin","hummed","hummer","humming","hummingbird","hummock","hummus","humongous","humor","humoral","humored","humoring","humorist","humorless","humorlessly","humorous","humorously","humorousness","humors","humour","humoured","humouring","humourist","humourless","humourlessly","humourous","humours","humous","hump","humpback","humpbacked","humped","humpier","humpiest","humping","humps","humpy","hums","humulin","humus","hun","hunch","hunchback","hunchbacked","hunched","hunches","hundred","hundredfold","hundreds","hundredth","hundredweight","hung","hungarian","Hungary","hungary","hunger","hungering","hungrier","hungriest","hungrily","hungriness","hungry","hunk","hunker","hunkering","hunkers","hunt","hunted","hunter","hunters","hunting","huntress","hunts","huntsman","hurdle","hurdler","hurdles","hurdling","hurl","hurled","hurler","hurling","hurls","huron","hurrah","hurricane","hurricanes","hurridly","hurried","hurriedly","hurriedness","hurries","hurry","hurrying","hurt","hurtful","hurting","hurtle","hurtles","hurtling","hurts","hus","husain","husayn","husband","husbandly","husbandman","husbandry","husbands","hush","hushed","hushes","hushing","hushpuppy","husk","huskier","huskiest","huskily","huskiness","husking","husky","hussar","hussy","hustings","hustle","hustler","hustles","hustling","hut","hutch","hutment","hutzpah","huxleian","huxleyan","hyacinth","hyaena","hyalin","hyaline","hyalinisation","hyalinization","hyaloid","hyaloplasm","hyaloplasmic","hyaluronidase","hyazyme","hybrid","hybridisation","hybridise","hybridised","hybridises","hybridising","hybridization","hybridizations","hybridize","hybridized","hybridizes","hybridizing","hybridoma","hybrids","hydantoin","hydathode","hydatid","hydatidosis","hydra","hydrae","hydralazine","hydramnios","hydrangea","hydrant","hydrargyrum","hydrarthrosis","hydrate","hydrated","hydration","hydraulic","hydraulically","hydraulicly","hydraulics","hydrazine","hydrazoite","hydremia","hydric","hydride","hydrilla","hydrocarbon","hydrocele","hydrocephalic","hydrocephalus","hydrocephaly","hydrocharidaceae","hydrochloride","hydrochlorofluorocarbon","hydrochlorothiazide","hydrocolloid","hydrocortisone","hydrocortone","hydrocracking","hydrodiuril","hydrodynamic","hydrodynamics","hydroelectric","hydroelectricity","hydroflumethiazide","hydrofluorocarbon","hydrofoil","hydrogel","hydrogen","hydrogenate","hydrogenation","hydrographic","hydrographical","hydrography","hydroid","hydrokinetic","hydrokinetics","hydrolise","hydrolith","hydrolize","hydrologist","hydrology","hydrolysate","hydrolyse","hydrolysis","hydrolyzable","hydrolyze","hydrolyzing","hydromancer","hydromancy","hydromedusa","hydromedusae","hydromel","hydrometer","hydrometric","hydrometry","hydromorphone","hydronephrosis","hydropathic","hydropathy","hydrophilic","hydrophobia","hydrophobic","hydrophobicity","hydrophyte","hydrophytic","hydroplane","hydroponic","hydroponics","hydrops","hydrosphere","hydrostatic","hydrostatics","hydrotherapy","hydrothorax","hydrous","hydroxide","hydroxy","hydroxybenzene","hydroxychloroquine","hydroxyl","hydroxymethyl","hydroxyproline","hydroxytetracycline","hydroxyzine","hydrozoa","hydrozoan","hyena","hygiene","hygienic","hygienical","hygienically","hygienics","hygienise","hygienist","hygienize","hygrodeik","hygrometer","hygrophyte","hygrophytic","hygroscope","hygroscopic","hygroton","hymenal","hymeneal","hymenium","hymenopter","hymenoptera","hymenopteran","hymenopteron","hymenopterous","hymie","hymn","hymnal","hymnary","hymnbook","hymnody","hynia","hyniums","hyoid","hyoscine","hyoscyamine","hypaethral","hypallage","hypanthia","hypanthium","hype","hyped","hyperacidity","hyperactive","hyperactivity","hyperacusia","hyperacusis","hyperadrenalism","hyperadrenocorticism","hyperaemia","hyperaldosteronism","hyperalimentation","hyperbaton","hyperbetalipoproteinemia","hyperbilirubinemia","hyperbola","hyperbole","hyperbolic","hyperbolically","hyperbolise","hyperbolize","hyperboloid","hyperboloidal","hypercalcaemia","hypercalcemia","hypercalcinuria","hypercalciuria","hypercapnia","hypercarbia","hypercatalectic","hypercellularity","hypercholesteremia","hypercholesterolemia","hypercoaster","hypercritical","hyperdactyly","hyperemesis","hyperemia","hyperemic","hyperextend","hyperextension","hyperfine","hyperglycaemia","hyperglycemia","hyperhidrosis","hypericales","hypericism","hyperidrosis","hyperkalemia","hyperlink","hyperlipaemia","hyperlipemia","hyperlipidaemia","hyperlipidemia","hyperlipoidaemia","hyperlipoidemia","hyperlipoproteinemia","hypermarket","hypermastigote","hypermedia","hypermenorrhea","hypermetropia","hypermetropic","hypermetropy","hypermotility","hypernatremia","hypernym","hypernymy","hyperoartia","hyperodontidae","hyperon","hyperope","hyperopia","hyperopic","hyperostoses","hyperostosis","hyperotreta","hyperparathyroidism","hyperpiesia","hyperpiesis","hyperpigmentation","hyperpituitarism","hyperplasia","hyperpnea","hyperpyrexia","hypersecretion","hypersensitised","hypersensitive","hypersensitivity","hypersensitized","hypersomnia","hypersplenism","hyperstat","hypertensin","hypertension","hypertensive","hypertext","hyperthermal","hyperthermia","hyperthermy","hyperthyroidism","hypertonia","hypertonic","hypertonicity","hypertonus","hypertrophied","hypertrophy","hypervelocity","hyperventilate","hyperventilation","hypervitaminosis","hypervolaemia","hypervolemia","hypes","hypesthesia","hypethral","hypha","hyphae","hyphema","hyphen","hyphenate","hyphenating","hyphenation","hyping","hypnagogic","hypnagogue","hypnoanalysis","hypnogenesis","hypnogogic","hypnoid","hypnopedia","hypnophobia","hypnosis","hypnotherapy","hypnotic","hypnotically","hypnotise","hypnotised","hypnotiser","hypnotises","hypnotising","hypnotism","hypnotist","hypnotize","hypnotized","hypnotizer","hypnotizes","hypnotizing","hypo","hypoactive","hypoadrenalism","hypoadrenocorticism","hypobasidium","hypobetalipoproteinemia","hypoblast","hypocalcaemia","hypocalcemia","hypocapnia","hypocellularity","hypochlorite","hypochoeris","hypochondria","hypochondriac","hypochondriacal","hypochondriasis","hypochondrium","hypocorism","hypocrisy","hypocrite","hypocritical","hypocritically","hypocycloid","hypodermal","hypodermatidae","hypodermic","hypodermis","hypoesthesia","hypogammaglobulinemia","hypogastria","hypogastrium","hypogea","hypogeum","hypoglossal","hypoglycaemia","hypoglycaemic","hypoglycemia","hypoglycemic","hypognathous","hypogonadism","hypokalemia","hypolipoproteinemia","hyponatremia","hyponym","hyponymy","hypoparathyroidism","hypophyseal","hypophysectomise","hypophysectomised","hypophysectomize","hypophysectomized","hypophysectomy","hypophyses","hypophysial","hypophysis","hypopigmentation","hypoplasia","hypopnea","hypoproteinemia","hyposmia","hypospadias","hypostases","hypostasis","hypostatisation","hypostatise","hypostatization","hypostatize","hypotension","hypotensive","hypotenuse","hypothalami","hypothalamic","hypothalamically","hypothalamus","hypothecate","hypothermia","hypothermic","hypotheses","hypothesis","hypothesise","hypothesised","hypothesises","hypothesising","hypothesize","hypothesized","hypothesizes","hypothesizing","hypothetic","hypothetical","hypothetically","hypothrombinemia","hypothyroidism","hypotonia","hypotonic","hypotonicity","hypotonus","hypovitaminosis","hypovolaemia","hypovolaemic","hypovolemia","hypovolemic","hypoxia","hypozeugma","hypozeuxis","hypsography","hypsometer","hypsometry","hyraces","hyrax","hyson","hyssop","hysterectomy","hysteresis","hysteria","hysteric","hysterical","hysterically","hysterics","hysterocatalepsy","hysterosalpingogram","hysteroscopy","hysterotomy","hytrin","I","i","I'AM","I'am","i'am","I'D","I'd","i'd","I'D'VE","I'd've","i'd've","I'LL","I'll","i'll","I'LL'VE","I'll've","i'll've","I'M'A","I'm'a","i'm'a","I'VE","I've","i've","I.E.","i.e.","iaa","iaea","IAF","iaf","IAM","Iam","iam","iamb","iambi","iambic","iambus","ianfu","iatrogenic","iberia","iberian","ibex","ibices","ibidem","ibis","ibo","ibrahim","ibrd","ibsenian","ibuprofen","icaco","icao","icbm","icc","ice","iceberg","iceboat","icebound","icebox","icebreaker","icecap","icecream","icefall","icehouse","icelandic","iceman","icepick","icetray","ichneumon","ichor","ichorous","ichthyolatry","ichthyologist","ichthyology","ichthyosaur","ichthyosauri","ichthyosaurus","ichthyosauruses","ichthyosis","icicle","icier","iciest","icily","iciness","icing","icky","ICMR","icmr","icon","iconic","iconoclasm","iconoclast","iconoclastic","iconography","iconolatry","iconology","iconoscope","iconostas","iconostases","icons","icosahedra","icosahedral","icosahedron","icsh","ictal","icteric","icterogenic","ictic","ictodosaur","ictus","icu","icy","id","ida","iddm","idea","ideal","idealisation","idealise","idealised","idealises","idealising","idealism","idealist","idealistic","ideality","idealization","idealize","idealized","idealizes","idealizing","ideally","idealogue","ideals","ideas","ideata","ideate","ideation","ideational","ideatum","idempotent","identical","identically","identicalness","identifiable","identifiably","identification","identified","identifier","identifiers","identifies","identify","identifying","identities","identity","ideogram","ideograph","ideographic","ideographically","ideography","ideologic","ideological","ideologically","ideologist","ideologue","ideology","ides","idesia","idf","idiocy","idiographic","idiolatry","idiolect","idiom","idiomatic","idiomatical","idiomatically","idioms","idiopathic","idiopathy","idiosyncrasy","idiosyncratic","idiot","idiotic","idiotically","idiots","idle","idled","idleness","idler","idles","idling","idly","idocrase","idol","idolater","idolatress","idolatrous","idolatrously","idolatry","idolisation","idolise","idolised","idoliser","idolises","idolising","idolization","idolize","idolized","idolizer","idolizes","idolizing","idp","IDVE","Idve","idve","idyl","idyll","idyllic","idyllically","ie","IE.","ie.","ied","IEEE","ieee","If","if","ifc","iffy","iga","igbo","igd","ige","igg","igloo","iglu","igm","igneous","ignescent","ignitable","ignite","ignited","igniter","ignites","ignitible","igniting","ignition","ignitor","ignobility","ignoble","ignobleness","ignobly","ignominious","ignominiously","ignominiousness","ignominy","ignoramus","ignorance","ignorant","ignorantly","ignorantness","ignore","ignored","ignores","ignoring","igorrorote","igorrote","iguana","iguania","iguanid","iguanodon","iguassu","IIT","iit","ijssel","ijsselmeer","ijtihad","ike","ikhanaton","ikon","ilama","ileitis","ileostomy","ileum","ileus","ilia","iliac","ilion","ilium","ilk","ill","ILL.","Ill.","ill.","illation","illative","illegal","illegalise","illegality","illegalize","illegally","illegibility","illegible","illegibly","illegitimacy","illegitimate","illegitimately","illiberal","illiberality","illiberally","illicit","illicitly","illicitness","illimitable","illinois","illiteracy","illiterate","illness","illnesses","illogic","illogical","illogicality","illogically","illogicalness","ills","illume","illuminance","illuminant","illuminate","illuminated","illuminates","illuminating","illumination","illumine","illusion","illusional","illusionary","illusionist","illusions","illusive","illusory","illustrate","illustrated","illustrates","illustrating","illustration","illustrations","illustrative","illustrator","illustrious","illustriously","illustriousness","ilmen","ilmenite","ilosone","ilx","ilxx","ilxxx","image","imagery","images","imaginable","imaginary","imagination","imaginative","imaginatively","imaginativeness","imagine","imagined","imagineing","imagines","imaging","imagining","imagism","imago","imagoes","imam","imaret","imaum","imavate","imbalance","imbalanced","imbauba","imbecile","imbecilic","imbecility","imbed","imbedded","imbedding","imbeds","imbibe","imbiber","imbibes","imbibing","imbibition","imbricate","imbricated","imbrication","imbroglio","imbrue","imbrues","imbue","imidazole","imide","iminazole","imipramine","imitate","imitated","imitates","imitating","imitation","imitative","imitator","immaculate","immaculately","immaculateness","immanence","immanency","immanent","immaterial","immaterialise","immateriality","immaterialize","immature","immaturely","immatureness","immaturity","immeasurable","immeasurably","immediacy","immediate","immediately","immediateness","immemorial","immense","immensely","immenseness","immensity","immensurable","immerse","immersed","immerses","immersing","immersion","immigrant","immigrants","immigrate","immigrated","immigrates","immigrating","immigration","imminence","imminency","imminent","imminently","imminentness","immingle","immiscible","immix","immobile","immobilisation","immobilise","immobilised","immobiliser","immobilisers","immobilises","immobilising","immobility","immobilization","immobilize","immobilized","immobilizer","immobilizers","immobilizes","immobilizing","immoderate","immoderately","immoderateness","immoderation","immodest","immodestly","immodesty","immolate","immolation","immoral","immorality","immorally","immortal","immortalise","immortalised","immortalises","immortalising","immortality","immortalize","immortalized","immortalizes","immortalizing","immortelle","immotile","immotility","immovability","immovable","immovableness","immovably","immoveable","immune","immunisation","immunise","immunised","immunises","immunising","immunity","immunization","immunize","immunized","immunizes","immunizing","immunoassay","immunochemical","immunochemistry","immunocompetence","immunocompetent","immunocompromised","immunodeficiency","immunodeficient","immunoelectrophoresis","immunofluorescence","immunogen","immunogenic","immunogenicity","immunoglobulin","immunohistochemistry","immunologic","immunological","immunologically","immunologist","immunology","immunopathology","immunosuppressant","immunosuppressed","immunosuppression","immunosuppressive","immunosuppressor","immunotherapeutic","immunotherapy","immure","immurement","immutability","immutable","immutableness","immutably","imp","impact","impacted","impacting","impaction","impacts","impair","impaired","impairer","impairing","impairment","impairs","impala","impale","impalement","impales","impaling","impalpability","impalpable","impalpably","impanel","impaneled","impaneling","impanelled","impanelling","impanels","imparipinnate","impart","impartation","impartial","impartiality","impartially","imparting","imparts","impassable","impasse","impassioned","impassive","impassively","impassiveness","impassivity","impasto","impatience","impatient","impatiently","impeach","impeachability","impeached","impeaches","impeaching","impeachment","impeachments","impeccability","impeccable","impeccably","impeccant","impecunious","impecuniousness","impedance","impede","impeded","impedes","impediment","impedimenta","impeding","impedingly","impel","impelled","impellent","impeller","impelling","impels","impend","impendence","impendency","impendent","impending","impenetrability","impenetrable","impenetrableness","impenitence","impenitency","impenitent","impenitently","imperative","imperatively","imperativeness","imperceptibility","imperceptible","imperceptibly","imperfect","imperfectibility","imperfectible","imperfection","imperfective","imperfectly","imperfectness","imperforate","imperia","imperial","imperialism","imperialist","imperialistic","imperially","imperil","imperiled","imperiling","imperilled","imperilling","imperils","imperious","imperiously","imperiousness","imperishability","imperishable","imperishableness","imperishingness","imperium","impermanence","impermanency","impermanent","impermeability","impermeable","impermeableness","impermissibility","impermissible","impermissibly","impersonal","impersonally","impersonate","impersonates","impersonating","impersonation","impersonator","impertinence","impertinent","impertinently","imperturbability","imperturbable","imperturbableness","imperviable","impervious","imperviousness","impetiginous","impetigo","impetuosity","impetuous","impetuously","impetuousness","impetus","impi","impies","impiety","impinge","impingement","impinges","impinging","impious","impiously","impiousness","impish","impishly","impishness","implacable","implant","implantation","implanted","implanting","implants","implausibility","implausible","implausibleness","implausibly","implement","implemental","implementation","implemented","implementing","implements","implicate","implicated","implicates","implicating","implication","implicational","implications","implicative","implicit","implicitly","implicitness","implied","implies","implike","implode","implodes","imploding","implore","implores","imploring","imploringly","implosion","imply","implying","impolite","impolitely","impoliteness","impolitic","imponderable","import","importance","important","importantly","importation","imported","importee","importer","importing","imports","importunate","importunately","importune","importunes","importuning","importunity","impose","imposed","imposes","imposing","imposingly","imposition","impossibility","impossible","impossibleness","impossibly","impost","imposter","impostor","imposture","impotence","impotency","impotent","impotently","impound","impounded","impounding","impoundment","impounds","impoverish","impoverished","impoverishes","impoverishment","impracticability","impracticable","impracticableness","impracticably","impractical","impracticality","imprecate","imprecation","imprecise","imprecisely","impreciseness","imprecision","impregnability","impregnable","impregnably","impregnate","impregnates","impregnating","impregnation","impresario","impress","impressed","impresses","impressible","impressing","impression","impressionable","impressionist","impressionistic","impressions","impressive","impressively","impressiveness","impressment","imprimatur","imprint","imprinting","imprints","imprison","imprisoned","imprisoning","imprisonment","imprisons","improbability","improbable","improbableness","improbably","impromptu","improper","improperly","improperness","impropriety","improvable","improve","improved","improvement","improvements","improver","improves","improvidence","improvident","improvidently","improving","improvisation","improvise","improvised","improvises","improvising","improvize","imprudence","imprudent","imprudently","impudence","impudent","impudently","impugn","impugnable","impugning","impuissance","impuissant","impulse","impulses","impulsion","impulsive","impulsively","impulsiveness","impunity","impure","impureness","impurity","imputable","imputation","impute","imputes","imputing","imputrescible","imu","imuran","In","in","IN.","In.","in.","inability","inaccessibility","inaccessible","inaccessibly","inaccuracies","inaccuracy","inaccurate","inaccurately","inaction","inactivate","inactivates","inactivating","inactivation","inactive","inactiveness","inactivity","inadequacy","inadequate","inadequately","inadequateness","inadmissibility","inadmissible","inadvertence","inadvertency","inadvertent","inadvertently","inadvisability","inadvisable","inadvisably","inaesthetic","inalienable","inalienably","inalterable","inamorata","inamorato","inane","inanely","inanimate","inanimateness","inanition","inanity","inapplicability","inapplicable","inapposite","inappositeness","inappreciable","inappropriate","inappropriately","inappropriateness","inapt","inaptitude","inaptness","inarguable","inarguably","inarticulate","inarticulately","inartistic","inattention","inattentive","inattentively","inattentiveness","inaudibility","inaudible","inaudibleness","inaudibly","inaugural","inaugurally","inaugurate","inaugurated","inaugurates","inaugurating","inauguration","inauspicious","inauspiciously","inauspiciousness","inauthentic","inboard","inborn","inbound","inbred","inbreed","inbreeding","inbuilt","INC","inc","INC.","Inc.","inc.","incalculable","incalescence","incan","incandesce","incandescence","incandescent","incantation","incapability","incapable","incapableness","incapacitate","incapacitated","incapacitates","incapacitating","incapacity","incarcerate","incarcerates","incarcerating","incarceration","incarnadine","incarnate","incarnation","incase","incased","incasement","incaution","incautious","incautiously","incautiousness","incendiarism","incendiary","incense","incensed","incenses","incensing","incentive","incentives","inception","inceptive","incertain","incertitude","incessancy","incessant","incessantly","incessantness","incest","incestuous","incestuously","inch","inched","incheon","inches","inching","inchoate","inchoative","inchworm","incidence","incidences","incident","incidental","incidentally","incidents","incienso","incinerate","incinerates","incinerating","incineration","incinerator","incipience","incipiency","incipient","incise","incised","incises","incising","incision","incisive","incisively","incisiveness","incisor","incisura","incisure","incitation","incite","incitement","inciter","incites","inciting","incitive","incivility","inclemency","inclement","inclementness","inclination","incline","inclined","inclines","inclining","inclinometer","inclose","inclosure","include","included","includes","including","inclusion","inclusions","inclusive","incognito","incognizable","incognizance","incognizant","incognoscible","incoherence","incoherency","incoherent","incoherently","incombustible","income","incomes","incoming","incommensurable","incommensurate","incommode","incommodious","incommodiousness","incommunicado","incommunicative","incommutability","incommutable","incomparable","incomparably","incompatibility","incompatible","incompatibly","incompetence","incompetency","incompetent","incompetently","incomplete","incompletely","incompleteness","incomprehensibility","incomprehensible","incomprehension","incomprehensive","incompressibility","incompressible","incomputable","inconceivability","inconceivable","inconceivableness","inconceivably","inconclusive","inconclusively","inconclusiveness","incongruent","incongruity","incongruous","incongruously","incongruousness","inconsequence","inconsequent","inconsequential","inconsequentially","inconsequently","inconsiderable","inconsiderate","inconsiderately","inconsiderateness","inconsideration","inconsistencies","inconsistency","inconsistent","inconsistently","inconsolable","inconspicuous","inconspicuously","inconspicuousness","inconstancy","inconstant","incontestable","incontestible","incontinence","incontinency","incontinent","incontrovertibility","incontrovertible","incontrovertibleness","incontrovertibly","inconvenience","inconveniences","inconveniencing","inconvenient","inconveniently","inconvertibility","inconvertible","incoordination","incorporate","incorporated","incorporates","incorporating","incorporation","incorporative","incorporeal","incorporeality","incorrect","incorrectly","incorrectness","incorrigible","incorrigibly","incorrupt","incorrupted","incorruptibility","incorruptible","incorruption","incorruptness","increase","increased","increases","increasing","increasingly","incredibility","incredible","incredibleness","incredibly","incredulity","incredulous","incredulously","increment","incremental","increments","incriminate","incriminates","incriminating","incriminatingly","incrimination","incriminatory","incrust","incrustation","incubate","incubates","incubating","incubation","incubator","incubi","incubus","incudes","inculcate","inculcates","inculcating","inculcation","inculpability","inculpable","inculpableness","inculpate","inculpation","inculpative","inculpatory","incumbency","incumbent","incumbents","incumbrance","incur","incurability","incurable","incurableness","incurably","incurious","incurred","incurrence","incurring","incurs","incursion","incursive","incurvate","incurvation","incurvature","incurved","incus","IND.","Ind.","ind.","indaba","indapamide","indebted","indebtedness","indecency","indecent","indecently","indecipherable","indecision","indecisive","indecisively","indecisiveness","indecorous","indecorously","indecorousness","indecorum","Indeed","indeed","indefatigability","indefatigable","indefatigableness","indefatigably","indefeasible","indefensible","indefinable","indefinite","indefinitely","indefiniteness","indefinity","indehiscent","indelible","indelibly","indelicacy","indelicate","indemnification","indemnified","indemnifies","indemnify","indemnifying","indemnity","indene","indent","indentation","indenting","indention","indents","indenture","indentured","independence","independency","independent","independently","inderal","indescribable","indescribably","indestructibility","indestructible","indeterminable","indeterminably","indeterminacy","indeterminate","indeterminateness","indetermination","index","indexation","indexed","indexer","indexers","indexes","indexical","indexing","indexless","India","india","indian","indiana","indicant","indicate","indicated","indicates","indicating","indication","indications","indicative","indicator","indicators","indicatory","indices","indict","indictability","indictable","indicted","indicting","indiction","indictment","indictments","indicts","indie","indifference","indifferent","indifferently","indigen","indigence","indigene","indigenous","indigenously","indigenousness","indigent","indigestibility","indigestible","indigestibleness","indigestion","indignant","indignantly","indignation","indignity","indigo","indigoes","indigotin","indinavir","indirect","indirection","indirectly","indirectness","indiscernible","indiscipline","indiscreet","indiscreetly","indiscreetness","indiscrete","indiscretion","indiscriminate","indiscriminately","indiscriminating","indispensability","indispensable","indispensableness","indispose","indisposed","indisposition","indisputability","indisputable","indissoluble","indistinct","indistinctly","indistinctness","indistinguishability","indistinguishable","indite","indium","individual","individualisation","individualise","individualised","individualises","individualising","individualism","individualist","individualistic","individualistically","individuality","individualization","individualize","individualized","individualizes","individualizing","individually","individuals","individuate","individuation","indivisible","indocile","indocin","indoctrinate","indoctrinated","indoctrinates","indoctrinating","indoctrination","indolence","indolent","indolently","indomethacin","indomitability","indomitable","Indonesia","indonesia","indonesian","indoor","indoors","indorse","indorsement","indorser","indrawn","indri","indubitability","indubitable","indubitably","induce","induced","inducement","inducer","induces","inducing","inducive","induct","inductance","inductee","induction","inductive","inductor","indue","indulge","indulgence","indulgent","indulgently","indulges","indulging","indument","indumenta","indumentum","indurate","induration","indusia","indusial","indusium","industrial","industrialisation","industrialise","industrialised","industrialises","industrialising","industrialism","industrialist","industrialization","industrialize","industrialized","industrializes","industrializing","industrially","industries","industrious","industriously","industriousness","industry","indwell","indweller","indwelling","inebriant","inebriate","inebriated","inebriation","inebriety","inediable","inedible","ineffable","ineffably","ineffective","ineffectively","ineffectiveness","ineffectual","ineffectuality","ineffectually","ineffectualness","inefficacious","inefficaciously","inefficaciousness","inefficacy","inefficiency","inefficient","inefficiently","inelaborate","inelastic","inelasticity","inelegance","inelegant","inelegantly","ineligibility","ineligible","ineloquently","ineluctability","ineluctable","ineluctably","inept","ineptitude","ineptly","ineptness","inequalities","inequality","inequitable","inequitably","inequity","ineradicable","inerrable","inerrancy","inerrant","inert","inertia","inertial","inertness","inescapable","inescapably","inessential","inessentiality","inestimable","inevitability","inevitable","inevitableness","inevitably","inexact","inexactitude","inexactly","inexactness","inexcusable","inexcusably","inexhaustible","inexhaustibly","inexorability","inexorable","inexorableness","inexorably","inexpedience","inexpediency","inexpedient","inexpediently","inexpensive","inexpensively","inexpensiveness","inexperience","inexperienced","inexperient","inexpert","inexpertly","inexpiable","inexplicable","inexplicably","inexplicit","inexplicitness","inexpressible","inexpressibly","inexpressive","inexpressively","inexpugnable","inexpungeable","inexpungible","inextensible","inexterminable","inextinguishable","inextirpable","inextricable","inextricably","infallibility","infallible","infamous","infamy","infancy","infant","infanticide","infantile","infantilism","infantilize","infantilized","infantry","infantryman","infants","infarct","infarction","infatuate","infatuated","infatuation","infeasibility","infeasible","infect","infected","infecting","infection","infections","infectious","infectiously","infective","infects","infelicitous","infelicitously","infelicity","infer","inference","inferences","inferential","inferior","inferiority","infernal","infernally","inferno","inferred","inferring","infers","infertile","infertility","infest","infestation","infested","infesting","infests","infidel","infidelity","infield","infielder","infiltrate","infiltrated","infiltrates","infiltrating","infiltration","infiltrator","infinite","infinitely","infiniteness","infinitesimal","infinitival","infinitive","infinitude","infinity","infirm","infirmary","infirmity","infix","infixes","inflame","inflamed","inflaming","inflammability","inflammable","inflammation","inflammatory","inflatable","inflate","inflated","inflater","inflates","inflating","inflation","inflationary","inflator","inflect","inflected","inflection","inflectional","inflections","inflexibility","inflexible","inflexibleness","inflexibly","inflexion","inflexions","inflict","inflicted","inflicting","infliction","inflicts","infliximab","inflorescence","inflow","inflowing","influence","influenced","influences","influencing","influent","influential","influentially","influenza","influx","info","infolding","infomercial","inform","informal","informality","informally","informant","informatics","information","informational","informative","informatively","informatory","informed","informer","informercial","informing","informs","infotainment","infra","infract","infracted","infracting","infraction","infracts","infrahuman","inframaxillary","infrangible","infrared","infrasonic","infrastructure","infrequency","infrequent","infrequently","infrigidation","infringe","infringed","infringement","infringes","infringing","infructescence","infundibula","infundibulum","infuriate","infuriated","infuriates","infuriating","infuriation","infuscate","infuse","infused","infuses","infusing","infusion","infusorian","inga","ingathering","ingeminate","ingenious","ingeniously","ingeniousness","ingenue","ingenuity","ingenuous","ingenuously","ingenuousness","inger","ingerman","ingest","ingesta","ingesting","ingestion","ingests","inglenook","inglorious","ingloriously","ingot","ingraft","ingrain","ingrained","ingraining","ingrains","ingrate","ingratiate","ingratiates","ingratiating","ingratiatingly","ingratiation","ingratiatory","ingratitude","ingredient","ingredients","ingroup","ingrowing","ingrown","ingrowth","inguen","inguinal","ingurgitate","ingush","ingushes","inhabit","inhabitable","inhabitancy","inhabitant","inhabitants","inhabitation","inhabited","inhabiting","inhabits","inhalant","inhalation","inhalator","inhale","inhaler","inhales","inhaling","inharmonic","inharmonious","inharmoniousness","inhere","inherence","inherency","inherent","inherently","inhering","inherit","inheritable","inheritance","inherited","inheriting","inheritor","inheritress","inheritrix","inherits","inhibit","inhibited","inhibiting","inhibition","inhibitor","inhibitors","inhibitory","inhibits","inhomogeneity","inhomogeneous","inhospitable","inhospitableness","inhospitably","inhospitality","inhuman","inhumane","inhumanely","inhumaneness","inhumanity","inhumation","inhume","inhumed","inimical","inimitable","inimitably","inion","iniquitous","iniquitously","iniquity","initial","initialed","initialing","initialisation","initialise","initialised","initialises","initialising","initialism","initialization","initialize","initialized","initializes","initializing","initialled","initialling","initially","initials","initiate","initiated","initiates","initiating","initiation","initiative","initiatives","initiator","initiatory","inject","injectable","injectant","injected","injecting","injection","injections","injector","injects","injudicious","injudiciously","injudiciousness","injun","injunction","injure","injured","injures","injuries","injuring","injurious","injuriously","injuriousness","injury","injustice","ink","inka","inkberry","inkblot","inkier","inkiest","inkiness","inkle","inkling","inkpad","inkpot","inkstand","inkwell","inky","inla","inlaid","inland","inlay","inlet","inmarriage","inmarry","inmate","inmates","inmost","inn","innards","innate","innately","innateness","inner","innermost","innersole","innervate","innervates","innervating","innervation","inning","innings","innkeeper","innocence","innocency","innocense","innocent","innocently","innocents","innocuous","innovate","innovated","innovates","innovating","innovation","innovational","innovations","innovative","innovativeness","innovator","innoxious","inns","innuendo","innuendoes","innumerable","innumerableness","innumerate","innumerous","inocor","inocula","inoculant","inoculate","inoculates","inoculating","inoculation","inoculator","inoculum","inodorous","inoffensive","inoffensively","inoperable","inoperative","inopportune","inopportunely","inopportuneness","inordinate","inordinately","inordinateness","inorganic","inorganically","inosculate","inosculation","inosine","inositol","inpatient","inpour","inpouring","input","inputing","inputs","inquest","inquietude","inquire","inquired","inquirer","inquires","inquiries","inquiring","inquiringly","inquiry","inquisition","inquisitive","inquisitively","inquisitiveness","inquisitor","inquisitorial","inquisitory","inr","inroad","inrush","insalubrious","insalubriousness","insalubrity","insane","insanely","insaneness","insanitary","insanity","insatiable","insatiably","insatiate","inscribe","inscribed","inscribes","inscribing","inscription","inscriptions","inscriptive","inscriptively","inscrutability","inscrutable","inscrutably","insect","insectan","insectaria","insectarium","insecticidal","insecticidally","insecticide","insectifuge","insectivore","insectivorous","insects","insecure","insecurely","insecureness","insecurity","inseminate","inseminates","inseminating","insemination","insensate","insensately","insensibility","insensible","insensibly","insensitive","insensitively","insensitiveness","insensitivity","insentience","insentient","inseparable","inseparably","insert","inserted","inserting","insertion","insertions","inserts","inset","insetting","inshore","inside","insider","insiders","insides","insidious","insidiously","insidiousness","insight","insightful","insightfulness","insights","insignia","insignificance","insignificant","insignificantly","insincere","insincerely","insincerity","insinuate","insinuates","insinuating","insinuatingly","insinuation","insipid","insipidity","insipidly","insipidness","insist","insisted","insistence","insistency","insistent","insistently","insisting","insists","insobriety","insofar","insolate","insolation","insole","insolence","insolent","insolently","insolubility","insoluble","insolvable","insolvency","insolvent","insomnia","insomniac","insomuch","insouciance","insouciant","inspan","inspanned","inspanning","inspect","inspected","inspecting","inspection","inspections","inspector","inspectorate","inspectors","inspectorship","inspects","inspiration","inspirational","inspirationally","inspiratory","inspire","inspired","inspirer","inspires","inspiring","inspirit","inspiriting","inspissate","inspissation","inst","instability","install","installation","installations","installed","installing","installment","installments","installs","instalment","instalments","instals","instance","instances","instancy","instant","instantaneous","instantaneously","instantaneousness","instantiate","instantiation","instantly","instar","instauration","Instead","instead","instep","instigant","instigate","instigated","instigates","instigating","instigation","instigative","instigator","instil","instill","instillation","instillator","instilling","instillment","instills","instilment","instils","instinct","instinctive","instinctively","instincts","institute","instituted","institutes","instituting","institution","institutional","institutionalisation","institutionalise","institutionalised","institutionalises","institutionalising","institutionalization","institutionalize","institutionalized","institutionalizes","institutionalizing","institutionally","institutions","instroke","instruct","instructed","instructing","instruction","instructional","instructions","instructive","instructively","instructor","instructors","instructorship","instructress","instructs","instrument","instrumental","instrumentalism","instrumentalist","instrumentality","instrumentate","instrumentation","instruments","insubordinate","insubordination","insubstantial","insubstantiality","insubstantially","insufferable","insufferably","insufficiency","insufficient","insufficiently","insufflate","insufflation","insula","insulae","insulant","insular","insularism","insularity","insulate","insulated","insulates","insulating","insulation","insulator","insulin","insult","insulted","insulting","insultingly","insults","insuperable","insuperably","insupportable","insurability","insurable","insurance","insure","insured","insurer","insurers","insures","insurgence","insurgency","insurgent","insuring","insurmountable","insurrection","insurrectional","insurrectionary","insurrectionism","insurrectionist","insusceptible","intact","intactness","intagli","intaglio","intake","intangibility","intangible","intangibleness","integer","integral","integrality","integrally","integrate","integrated","integrates","integrating","integration","integrative","integrator","integrity","integument","integumental","integumentary","intellect","intellection","intellectual","intellectualisation","intellectualise","intellectualised","intellectualises","intellectualising","intellectualization","intellectualize","intellectualized","intellectualizes","intellectualizing","intellectually","intellectuals","intelligence","intelligent","intelligently","intelligentsia","intelligibility","intelligible","intelligibly","intemperance","intemperate","intemperately","intemperateness","intend","intended","intending","intends","intense","intensely","intensification","intensified","intensifier","intensifies","intensify","intensifying","intension","intensional","intensities","intensity","intensive","intensively","intensiveness","intent","intention","intentional","intentionality","intentionally","intentions","intently","intentness","inter","inter-bank","inter-city","inter-office","interact","interacting","interaction","interactional","interactions","interactive","interahamwe","interbrain","interbred","interbreds","interbreed","interbreeding","intercalary","intercalate","intercalates","intercalating","intercalation","intercede","interceded","intercedes","interceding","intercellular","intercept","intercepted","intercepting","interception","interceptor","intercepts","intercession","intercessor","interchange","interchangeability","interchangeable","interchangeableness","interchangeably","interchanges","interchanging","interchurch","intercollegiate","intercom","intercommunicate","intercommunication","intercommunion","interconnect","interconnected","interconnectedness","interconnecting","interconnection","interconnects","intercontinental","intercostal","intercourse","intercrop","intercropped","intercropping","intercrossed","intercut","intercuts","intercutting","interdenominational","interdepartmental","interdepend","interdependence","interdependency","interdependent","interdict","interdicting","interdiction","interdicts","interdisciplinary","interest","interested","interestedness","interesting","interestingly","interestingness","interests","interface","interfaces","interfacial","interfaith","interfere","interfered","interference","interferes","interfering","interferometer","interferon","intergalactic","interim","interior","interiorise","interiorises","interiorize","interiorizes","interiors","interject","interjecting","interjection","interjects","interlace","interlaced","interlaces","interlacing","interlanguage","interlap","interlapped","interlapping","interlaps","interlard","interlayer","interleaf","interleave","interleaves","interleaving","interleukin","interlineal","interlinear","interlink","interlinking","interlobular","interlock","interlocking","interlocks","interlocutor","interlocutory","interlope","interloper","interlude","intermarriage","intermarried","intermarry","intermarrying","intermediary","intermediate","intermediately","intermediates","intermediation","intermediator","interment","intermeshed","intermezzi","intermezzo","interminable","interminably","intermingle","intermingles","intermingling","intermission","intermit","intermits","intermitted","intermittence","intermittency","intermittent","intermittently","intermitting","intermix","intermixed","intermixes","intermixing","intermixture","intermolecular","intermural","intern","internal","internalisation","internalise","internalised","internalises","internalising","internality","internalization","internalize","internalized","internalizes","internalizing","internally","international","internationalisation","internationalise","internationalised","internationalises","internationalising","internationalism","internationalist","internationalistic","internationality","internationalization","internationalize","internationalized","internationalizes","internationalizing","internationally","interne","internecine","internee","internet","interning","internist","internment","internode","interns","internship","internuncio","interoception","interoceptive","interoceptor","interoperability","interoperable","interpellate","interpellation","interpenetrate","interpenetration","interpersonal","interphone","interplanetary","interplay","interplead","interpled","interpolate","interpolates","interpolating","interpolation","interpose","interposition","interpret","interpretable","interpretation","interpretations","interpretative","interpreted","interpreter","interpreting","interpretive","interprets","interracial","interracially","interred","interreflection","interreges","interregna","interregnum","interrelate","interrelated","interrelatedness","interrelation","interrelationship","interrex","interring","interrogate","interrogated","interrogates","interrogating","interrogation","interrogations","interrogative","interrogatively","interrogator","interrogatory","interrupt","interrupted","interrupter","interrupting","interruption","interruptions","interrupts","interscholastic","interschool","intersect","intersectant","intersecting","intersection","intersects","intersex","intersexual","interspecies","interspecific","interspersal","intersperse","interspersed","intersperses","interspersing","interspersion","interstate","interstellar","interstice","interstitial","interstratified","interstratifies","interstratify","intertidal","intertribal","intertrigo","intertwine","intertwined","intertwines","intertwining","interval","intervals","intervene","intervened","intervenes","intervening","intervenor","intervention","interventions","intervertebral","interview","interviewed","interviewee","interviewer","interviewing","interviews","interweave","interweaves","interweaving","interwoven","intestacy","intestate","intestinal","intestine","intestines","inti","intifada","intifadah","intima","intimacy","intimae","intimal","intimate","intimately","intimates","intimating","intimation","intimidate","intimidated","intimidates","intimidating","intimidation","into","intolerable","intolerably","intolerance","intolerant","intolerantly","intonate","intonation","intone","intoned","intones","intoning","intoxicant","intoxicate","intoxicated","intoxicates","intoxicating","intoxication","intra-administration","intracellular","intracerebral","intracranial","intractability","intractable","intractableness","intractably","intracutaneous","intradepartmental","intradermal","intradermally","intradermic","intrados","intragroup","intralinguistic","intralobular","intramolecular","intramural","intramuscular","intramuscularly","intranet","intransigence","intransigency","intransigent","intransitive","intransitively","intransitiveness","intransitivise","intransitivity","intransitivize","intrapulmonary","intrasentential","intraspecies","intraspecific","intrastate","intrauterine","intravasation","intravenous","intravenously","intraventricular","intrench","intrenchment","intrepid","intrepidity","intrepidly","intricacy","intricate","intricately","intrigue","intrigued","intriguer","intrigues","intriguing","intrinsic","intrinsical","intrinsically","intro","introduce","introduced","introduces","introducing","introduction","introductory","introit","introitus","introject","introjected","introjection","intromission","intromit","intromits","intromitted","intromitting","intron","introns","intropin","introspect","introspection","introspective","introspectiveness","introuvable","introversion","introversive","introvert","introverted","introvertish","introvertive","intrude","intruder","intrudes","intruding","intrusion","intrusive","intrusiveness","intrust","intrusts","intubate","intubation","intuit","intuition","intuitionism","intuitionist","intuitive","intuitively","intumesce","intumescence","intumescency","intumescent","intussuscept","intussusception","inuit","inula","inulin","inunct","inunction","inundate","inundated","inundates","inundating","inundation","inure","inured","inures","inuring","inutile","inutility","invade","invaded","invader","invaders","invades","invading","invaginate","invagination","invalid","invalidate","invalidated","invalidates","invalidating","invalidation","invalidator","invalidism","invalidity","invalidness","invaluable","invaluableness","invariability","invariable","invariableness","invariably","invariance","invariant","invasion","invasions","invasive","invective","inveigh","inveighing","inveighs","inveigle","inveigles","inveigling","invent","invented","inventing","invention","inventions","inventive","inventively","inventiveness","inventor","inventories","inventory","inventorying","invents","inverse","inversely","inversion","invert","invertase","invertebrate","invertebrates","inverted","inverter","invertible","inverting","inverts","invest","invested","investigate","investigated","investigates","investigating","investigation","investigations","investigative","investigator","investigators","investigatory","investing","investiture","investment","investments","investor","investors","invests","inveterate","invidia","invidious","invidiously","invigilate","invigilation","invigilator","invigorate","invigorated","invigorates","invigorating","invigoration","invigorator","invincibility","invincible","invincibly","inviolable","inviolate","invirase","invisibility","invisible","invisibleness","invisibly","invitation","invitational","invitations","invitatory","invite","invited","invitee","invites","inviting","invitingly","invocation","invoice","invoices","invoke","invoked","invokes","invoking","involucella","involucellum","involucra","involucrate","involucre","involuntarily","involuntariness","involuntary","involute","involution","involve","involved","involvement","involves","involving","invulnerability","invulnerable","inward","inwardly","inwardness","inwards","inweave","inweaves","inwrap","inwrapped","inwrapping","inwraps","inwrought","iodide","iodin","iodinate","iodinated","iodinating","iodination","iodine","iodise","iodised","iodize","iodized","iodochlorhydroxyquin","iodocompound","iodoform","iodoprotein","iodopsin","iodothyronine","iodotyrosine","ion","ionate","ionian","ionic","ionisation","ionise","ionised","ioniser","ionisers","ionises","ionising","ionization","ionize","ionized","ionizer","ionizers","ionizes","ionizing","ionophoresis","ionosphere","ions","iontophoresis","iontotherapy","iota","iou","ioway","ipecac","ipidae","ipo","ipod","ipos","iproclozide","ipsedixitism","ipsilateral","irak","iraki","Iran","iran","iranian","Iraq","iraq","iraqi","irascibility","irascible","irate","irately","IRCTC","irctc","ire","ireful","irelander","irenic","iridaceous","iridectomy","irides","iridesce","iridescence","iridescent","iridic","iridium","iridocyclitis","iridokeratitis","iridoncus","iridosmine","iridotomy","iris","irish","iritic","iritis","irk","irked","irking","irks","irksome","iron","ironclad","ironed","ironic","ironical","ironically","ironing","ironist","ironlike","ironman","ironmonger","ironmongery","irons","ironshod","ironside","ironware","ironweed","ironwood","ironwork","ironworker","irony","irradiate","irradiated","irradiates","irradiating","irradiation","irrational","irrationality","irrationally","irreality","irreclaimable","irreconcilable","irrecoverable","irredeemable","irredenta","irredentism","irredentist","irreducible","irrefutable","irregardless","irregular","irregularities","irregularity","irregularly","irrelevance","irrelevancy","irrelevant","irrelevantly","irreligion","irreligionist","irreligious","irreligiousness","irremediable","irremovable","irreparable","irreparably","irreplaceable","irreplaceableness","irrepressibility","irrepressible","irreproachable","irreproachably","irreproducibility","irreproducible","irresistibility","irresistible","irresistibleness","irresistibly","irresolute","irresolutely","irresoluteness","irresolution","irrespective","irresponsibility","irresponsible","irresponsibleness","irresponsibly","irretrievable","irretrievably","irreverence","irreverent","irreverently","irreversibility","irreversible","irreversibly","irrevocable","irrevocably","irrevokable","irridenta","irridentism","irridentist","irrigate","irrigates","irrigating","irrigation","irritability","irritable","irritably","irritant","irritate","irritated","irritates","irritating","irritatingly","irritation","irritative","irrupt","irruption","irruptive","irtysh","IS","Is","is","isarithm","ischaemia","ischaemic","ischemia","ischemic","ischia","ischium","isentropic","isinglass","iskcon","islamic","islamise","islamism","islamize","island","islander","islanders","Islands","islands","isle","islet","islets","ism","ismaili","ismailian","ISN'T","Isn't","isn't","ISNT","Isnt","isnt","ISN\u2019T","Isn\u2019t","isn\u2019t","isoagglutination","isoagglutinin","isoagglutinogen","isoantibody","isobar","isobilateral","isobutylene","isocarboxazid","isochronal","isochrone","isochronous","isoclinal","isoclinic","isocyanate","isocyclic","isoflurane","isogamete","isogamy","isogon","isogone","isogonic","isogram","isohel","isolable","isolate","isolated","isolates","isolating","isolation","isolationism","isolationist","isolationistic","isolde","isoleucine","isomer","isomerase","isomeric","isomerisation","isomerise","isomerism","isomerization","isomerize","isometric","isometrical","isometropia","isometry","isomorphic","isomorphism","isomorphous","isomorphy","isoniazid","isopleth","isopod","isopropanol","isoproterenol","isopteran","isoptin","isordil","isosceles","isosmotic","isosorbide","isostasy","isotherm","isothermal","isothermic","isothiocyanate","isotonic","isotope","isotopic","isotropic","isotropically","isotropous","isotropy","Israel","israel","israeli","issuance","issue","issued","issuer","issues","issuing","ist","isthmi","isthmian","isthmus","isuprel","IT","It","it","IT'D","It'd","it'd","IT'D'VE","It'd've","it'd've","IT'LL","It'll","it'll","IT'LL'VE","It'll've","it'll've","IT'S","It's","it's","italia","italian","italic","italicise","italicised","italicises","italicising","italicize","italicized","italicizes","italicizing","italics","itch","itches","itchiness","itching","itchy","ITD","Itd","itd","ITDVE","Itdve","itdve","item","itemisation","itemise","itemised","itemises","itemising","itemization","itemize","itemized","itemizes","itemizing","items","iterate","iterates","iterating","iteration","iterations","iterative","ithaki","ithunn","itinerant","itinerary","itinerate","itineration","ITLL","Itll","itll","ITLLVE","Itllve","itllve","itraconazole","Its","its","itself","IT\u2019D","It\u2019d","it\u2019d","IT\u2019D\u2019VE","It\u2019d\u2019ve","it\u2019d\u2019ve","IT\u2019LL","It\u2019ll","it\u2019ll","IT\u2019LL\u2019VE","It\u2019ll\u2019ve","it\u2019ll\u2019ve","IT\u2019S","It\u2019s","it\u2019s","iud","iva","IVE","Ive","ive","ivied","Ivory","ivory","ivorybill","ivy","ixodid","iyyar","izar","izzard","I\u2019AM","I\u2019am","i\u2019am","I\u2019D","I\u2019d","i\u2019d","I\u2019D\u2019VE","I\u2019d\u2019ve","i\u2019d\u2019ve","I\u2019LL","I\u2019ll","i\u2019ll","I\u2019LL\u2019VE","I\u2019ll\u2019ve","i\u2019ll\u2019ve","I\u2019M\u2019A","I\u2019m\u2019a","i\u2019m\u2019a","I\u2019VE","I\u2019ve","i\u2019ve","jab","jabbed","jabber","jabberer","jabbering","jabbers","jabberwocky","jabbing","jabiru","jaboncillo","jabot","jaboticaba","jabs","jacamar","jacaranda","jacinth","jack","jackal","jackanapes","jackaroo","jackass","jackasses","jackboot","jackdaw","jacked","jackeroos","jacket","jackets","jackfish","jackfishes","jackfruit","jackhammer","jacking","jackknife","jackknives","jacklight","jackpot","jackrabbit","jacks","jackscrew","jacksmelt","jacksnipe","jacksonian","jackstones","jackstraw","jacobean","jacobinic","jacobinical","jaconet","jactation","jactitate","jactitation","Jade","jade","jaded","jadeite","jadestone","jaeger","jafar","jag","jagannatha","jagatai","jagganath","jaggary","jagged","jaggedly","jaggedness","jaggery","jagghery","jaggier","jaggiest","jagging","jaggy","jaghatai","jags","jagua","jaguar","jaguarondi","jaguarundi","jahvey","jahweh","jail","jailbird","jailbirds","jailbreak","jailbreaks","jailed","jailer","jailers","jailhouse","jailing","jailor","jails","jain","jainist","jak","jakes","jalapeno","jalopy","jalousie","jam","Jamaica","jamaica","jamaican","jamb","jambalaya","jambeau","jambeaux","jamberry","jambon","jamboree","jambosa","jamesian","jamjar","jammed","jammer","jammier","jammies","jammiest","jamming","jammy","jampack","jampan","jampot","jams","jan","JAN.","Jan.","jan.","jangle","jangles","jangling","jangly","janitor","january","Japan","japan","japanese","japanned","japanning","jape","japery","japonica","jar","jarful","jargon","jargoon","jarred","jarring","jarringly","jars","jasmine","jasper","jassid","jati","jaundice","jaundiced","jaunt","jauntier","jauntiest","jauntily","jauntiness","jaunting","jaunts","jaunty","javan","javanese","javelin","javelina","jaw","jawan","jawbone","jawbreaker","jawed","jawfish","jawing","jawless","jaws","jaybird","jaywalk","jaywalker","jaywalking","jaywalks","jazz","jazzes","jazzier","jazziest","jazzing","jazzman","jazzy","jdam","jealous","jealously","jealousy","jean","jeans","jeep","jeer","jeerer","jeering","jeeringly","jeers","jeffersonian","jehad","jehovah","jejune","jejunely","jejuneness","jejunitis","jejunity","jejunoileitis","jejunostomy","jejunum","jell","jellaba","jelled","jellied","jellified","jellifies","jellify","jello","jelly","jellyfish","jellyfishes","jellyleaf","jellylike","jellyroll","jem","jemmied","jemmy","jennet","jeopardise","jeopardised","jeopardises","jeopardising","jeopardize","jeopardized","jeopardizes","jeopardizing","jeopardy","jerboa","jeremiad","jerevan","jerk","jerked","jerker","jerkier","jerkiest","jerkily","jerkin","jerkiness","jerking","jerks","jerkwater","jerky","jerry","jersey","jessamine","jest","jester","jesting","jestingly","jests","jesuit","jesuitic","jesuitical","jesuitry","jesus","jet","jetliner","jets","jetsam","jetted","jetting","jettison","jettisoning","jettisons","jetty","jew","jewel","jeweled","jeweler","jewelers","jewelfish","jewelfishes","jewelled","jeweller","jewellers","jewellery","jewelling","jewelry","jewels","jewelweed","jewfish","jewfishes","jewish","jews","jezebel","jfk","jhvh","jiao","jib","jibbed","jibbing","jibboom","jibe","jidda","jiddah","jiffy","jig","jigged","jigger","jiggered","jiggermast","jigging","jiggle","jiggles","jiggling","jigsaw","jihad","jihadi","jillion","jilt","jilted","jilting","jimdandy","jimhickey","jimmied","jimmy","jimmying","jimsonweed","jinghpaw","jingle","jingling","jingly","jingo","jingoes","jingoism","jingoist","jingoistic","jinks","jinn","jinnee","jinni","jinrikisha","jinx","jinxed","jinxing","jiqui","jird","jirrbal","jitney","jitter","jitterbug","jitterbugged","jitterbugging","jitteriness","jittering","jittery","jiujitsu","jive","jnd","jnr","jo","job","jobbed","jobber","jobbery","jobbing","jobcentre","jobholder","jobless","Jobs","jobs","jock","jockey","jockstrap","jocose","jocosely","jocoseness","jocosity","jocote","jocular","jocularity","jocund","jocundity","jodhpur","joes","joewood","jog","jogged","jogger","jogging","joggle","jogs","Johansson","johnny","johnnycake","johore","join","joined","joiner","joinery","joining","joins","joint","jointed","jointer","jointly","joints","jointure","jointworm","joist","joke","joked","joker","jokes","jokester","joking","jokingly","joliet","jollied","jollier","jolliest","jollification","jollified","jollifies","jollify","jolliness","jollity","Jolly","jolly","jolt","jolted","jolting","jolts","jolty","jongleur","jonquil","jook","joppa","Jordan","jordan","jordanian","jorum","JOS.","Jos.","jos.","joseph","josh","joshing","joss","jostle","jostles","jostling","josue","jot","jots","jotted","jotter","jotting","jotunn","jounce","journal","journalese","journalism","journalist","journalistic","journalistically","journalists","journals","journey","journeyer","journeying","journeyman","journeys","joust","jousting","jove","jovial","joviality","jovially","jovian","jowl","jowly","joy","joyful","joyfully","joyfulness","joyless","joylessly","joylessness","joyous","joyously","joyousness","joypop","joypopped","joypopping","joyride","joyriding","joys","joystick","JR.","Jr.","jr.","jra","juarez","jubbulpore","jubilance","jubilancy","jubilant","jubilantly","jubilate","jubilation","jubilee","juda","judaea","judaic","judaical","judder","judge","judged","judgement","judges","judgeship","judging","judgment","judgmental","judgments","judicable","judicatory","judicature","judicial","judicially","judiciary","judicious","judiciously","judiciousness","judo","jug","jugale","jugful","jugged","juggernaut","jugging","juggle","juggler","jugglery","juggles","juggling","jugoslav","jugoslavian","jugoslavija","jugs","jugular","juice","juiceless","juicer","juices","juicier","juiciest","juiciness","juicy","jujitsu","juju","jujube","jujutsu","juke","jukebox","jul","JUL.","Jul.","jul.","julep","julian","julienne","july","jumbal","jumble","jumbled","jumbles","jumbling","jumbo","jumbojet","jument","jumentous","jump","jumped","jumper","jumpier","jumpiest","jumpiness","jumping","jumps","jumpstart","jumpstarting","jumpstarts","jumpsuit","jumpy","jun","JUN.","Jun.","jun.","juncaginaceae","junco","junction","junctions","juncture","june","jungian","jungle","jungly","junior","juniper","junk","junket","junketeer","junketing","junkie","junkies","junking","junks","junky","junkyard","junoesque","junta","junto","jupati","jupaty","jura","jural","jurassic","juridic","juridical","juries","jurisdiction","jurisdictional","jurisdictions","jurisprudence","jurisprudential","jurisprudentially","jurist","juristic","juror","jurors","jury","juryman","jurywoman","jus","Just","just","justice","justices","justiciar","justiciary","justifiable","justifiably","justification","justifications","justificative","justificatory","justified","justifiedly","justifier","justifies","justify","justifying","justly","justness","jut","jutish","juts","jutted","jutting","juvenescence","juvenile","juvenility","juxtapose","juxtaposed","juxtaposes","juxtaposing","juxtaposition","jyaistha","jylland","k","kabala","kabbala","kabbalist","kabbalistic","kabob","kabolin","kach","kachina","kachinic","kaddish","kaddishim","kadikoy","kaffir","kaffiyeh","kafir","kafkaesque","kafocin","kaftan","kahikatea","kail","kainite","kainogenesis","kaki","kalansuwa","kalantas","kalapuya","kalapuyan","kale","kaleidoscope","kaleidoscopic","kaleidoscopical","kalemia","kalian","kalif","kalimantan","kaliph","kaliuresis","kalka","kalmia","kalmuc","kalmuck","kalmucks","kalpac","kalumpang","kaluresis","kameez","kamikaze","kampong","kampuchea","kampuchean","KAN.","Kan.","kan.","kanaf","kanamycin","kanchanjanga","kanchil","kandinski","kangaroo","KANS.","Kans.","kans.","kansas","kansu","kantian","kantrex","kanzu","kaochlor","kaoliang","kaolin","kaoline","kaolinite","kaon","kapeika","kaph","kapok","kappa","kapsiki","kapuka","kaput","karabiner","karakul","karaoke","karat","karate","karbala","karenic","karma","karttika","karttikeya","karyokinesis","karyokinetic","karyolymph","karyolysis","karyon","karyoplasm","karyotype","kasbah","kasha","kashmiri","kat","katabases","katabasis","katabatic","katabolic","katabolism","katamorphism","katar","katari","katharobe","katharobic","katharometer","katharsis","katmandu","katydid","katzenjammer","kauri","kaury","kava","kavakava","kavrin","kawaka","kayak","kayaking","kayo","kayoed","kazakh","Kazakhstan","kazakhstan","kazakhstani","kazakstan","kazoo","kb","kbit","kbo","kea","keb","kebab","kechua","kechuan","kedgeree","keel","keelboat","keeled","keelson","keen","keening","keenly","keenness","keep","keeper","keepers","keeping","keeps","keepsake","keeshond","keeshonden","keflex","keflin","keftab","keg","kegful","keister","keloid","kelp","kelpie","kelpwort","kelpy","kelt","kelter","kemadrin","kempt","ken","kenaf","kenalog","kendal","kenned","kennedya","kennel","kennelled","kennelling","kenning","keno","kenogenesis","kenosis","kentan","kentucky","Kenya","kenya","kenyan","kepi","kept","keratalgia","keratectasia","keratin","keratinisation","keratinise","keratinization","keratinize","keratitis","keratoacanthoma","keratocele","keratoconjunctivitis","keratoconus","keratoderma","keratodermia","keratohyalin","keratoiritis","keratomalacia","keratomycosis","keratonosis","keratonosus","keratoplasty","keratoscleritis","keratoscope","keratoscopy","keratosis","keratotomy","kerb","kerbela","kerbstone","kerchief","kerfuffle","kerion","kern","kernel","kernelled","kernelling","kernicterus","kernite","kerosene","kerosine","kerugma","kerygma","kestrel","ketalar","ketamine","ketch","ketchup","keteleeria","ketembilla","ketoacidosis","ketoaciduria","ketohexose","ketone","ketonemia","ketonuria","ketoprofen","ketorolac","ketose","ketosis","ketosteroid","kettle","kettledrum","kettleful","ketubim","keurboom","key","keyboard","keyboardist","keyboards","keycard","keyed","keyhole","keying","keyless","keynesian","keynote","keypad","keys","keystone","keystroke","kg","kgb","khadafy","khaddar","khadi","khaki","khalif","khalifah","khalka","khamsin","khan","khanate","kharkiv","khat","khesari","khi","khimar","khios","khirghiz","khoikhoi","khoum","khufu","khukuri","khz","kiaat","kiang","kib","kibbitz","kibble","kibbutz","kibbutzim","kibbutznik","kibe","kibibit","kibibyte","kibit","kibitz","kibitzer","kibitzing","kibosh","kiboshing","kick","kickback","kickbacks","kicked","kicker","kicking","kickoff","kicks","kickshaw","kicksorter","kickstand","kid","kidded","kiddie","kidding","kiddy","kidnap","kidnaper","kidnaping","kidnapped","kidnapper","kidnapping","kidnappings","kidnaps","kidney","kidneys","kids","kidskin","kieselguhr","kieserite","kiev","kike","kikladhes","kildeer","kilderkin","kiley","kiliwi","kill","killable","killdeer","killed","killer","killers","killifish","killifishes","killing","killingly","killings","killjoy","kills","kiln","kilo","kilobit","kilobyte","kilocalorie","kilocycle","kilogram","kilogramme","kilogrammes","kilograms","kilohertz","kiloliter","kilolitre","kilometer","kilometers","kilometre","kilometres","kiloton","kilovolt","kilowatt","kilt","kilter","kimberlite","kimono","kin","kina","kinaesthesia","kinaesthesis","kinaesthetic","kinaesthetically","kinanesthesia","kinase","kinases","kinchinjunga","kind","kinda","kinder","kindergarten","kindergartener","kindergartner","kindhearted","kindheartedness","kindle","kindled","kindles","kindlier","kindliest","kindliness","kindling","kindly","kindness","kindred","kinds","kine","kinematics","kinescope","kinesiology","kinesis","kinesthesia","kinesthesis","kinesthetic","kinesthetically","kinesthetics","kinetic","kinetics","kinetochore","kinetosis","kinfolk","king","kingbird","kingbolt","kingcup","Kingdom","kingdom","kingdoms","kingfish","kingfisher","kingfishes","kinglet","kinglike","kingly","kingmaker","kingpin","kings","kingship","kingsnake","kingwood","kinin","kink","kinkajou","kinkier","kinkiest","kinking","kinky","kino","kinsfolk","kinship","kinsman","kinsperson","kinswoman","kiosk","kiosks","kip","kiplingesque","kipped","kipper","kipping","kirghizia","kirghizstan","kirgiz","kirgizia","kirgizstan","Kiribati","kiribati","kirk","kirpan","kirsch","kirtle","kishke","kismat","kismet","kiss","kisser","kisses","kissing","kit","kitambilla","kitbag","kitchen","kitchenette","kitchens","kitchenware","kite","kitembilla","kith","kiting","kits","kitsch","kitschy","kittee","kitten","kittenish","kittens","kittiwake","Kitts","kitts","kittul","kitty","kitul","kiwi","kkk","klan","klavern","klavier","klaxon","klebsiella","kleptomania","kleptomaniac","klick","klorvess","klotho","kludge","klutz","kluxer","klystron","km","KN.","Kn.","kn.","knack","knacker","knackered","knackwurst","knap","knapped","knapping","knaps","knapsack","knapweed","knave","knavery","knavish","knavishly","knawe","knawel","knead","kneading","kneads","knee","kneecap","kneecapped","kneecapping","kneel","kneeler","kneeling","kneels","kneepan","knees","knell","knesseth","knew","knickerbockers","knickers","knickknack","knickknackery","knife","knifelike","knight","knighthood","knightliness","knightly","kniphofia","knish","knit","knits","knitted","knitter","knitting","knitwear","knitwork","knives","knob","knobbed","knobbing","knobble","knobbly","knobby","knobkerrie","knobkerry","knock","knockabout","knockdown","knocked","knocker","knocking","knockoff","knockout","knocks","knockwurst","knoll","knot","knotgrass","knothole","knots","knotted","knottier","knottiest","knottiness","knotting","knotty","knout","know","knowable","knower","knowing","knowingly","knowingness","knowledge","knowledgeability","knowledgeable","knowledgeableness","known","knows","knuckle","knuckleball","knucklebones","knucklehead","knuckler","knuckles","knuckling","knucks","knurlier","knurliest","knurly","knut","ko'd","koala","koan","kob","kobenhavn","kobo","kochia","koellia","kohl","kohleria","kohlrabi","kohlrabies","koinonia","kokka","kola","kolkhoz","kolkhoznik","koln","komondor","konakri","kongfuze","konini","konoye","koodoo","kook","kookaburra","kookie","kookier","kookiest","kooky","kopeck","kopek","kopiyka","kopje","koppie","kor","koranic","kore","Korea","korea","korean","korinthos","koruna","kosciuszko","kosher","kotar","kotex","koto","kotow","koudou","koumiss","kovna","kovno","koweit","kowhai","kowtow","kowtowing","kph","kraal","kraft","krait","krakatao","krakatoa","krakau","krakow","kraurosis","krauthead","kremlin","krigia","krill","kris","kriti","krona","krone","kronen","kroner","kronur","kroon","krooni","krubi","krummhorn","krypton","kuangchou","kudos","kudu","kudzu","kuenlun","kukenaam","kulun","kumis","kummel","kumquat","kunzite","kurakkan","kurchee","kurchi","kurdish","kuroshio","kurrajong","kurrat","kurta","kuru","kutch","kuvasz","kuwaiti","kvass","kvetch","kvetching","kwacha","kwai","kwangchow","kwangtung","kwanza","kwashiorkor","kweek","kwel","kwela","KY.","Ky.","ky.","kyanite","kyat","kylie","kylikes","kylix","kymograph","kyphosis","kyphotic","Kyrgyzstan","kyrgyzstan","kyrgyzstani","LA.","La.","la.","laager","lab","labara","labarum","labdanum","label","labeled","labeling","labella","labelled","labelling","labellum","labels","labetalol","labia","labial","labialise","labialize","labiate","labile","labiodental","labium","lablink","labor","laboratories","laboratory","labored","laborer","laborers","laboring","laborious","laboriously","laboriousness","labors","laborsaving","labour","laboured","labourer","labourers","labouring","labours","laboursaving","labra","labrocyte","labrum","labs","labyrinth","labyrinthian","labyrinthine","labyrinthitis","labyrinthodont","labyrinthodonta","lac","lace","lacebark","laced","lacelike","lacepod","lacer","lacerate","lacerated","lacerates","lacerating","laceration","lacertid","lacertilia","lacertilian","laces","lacewing","lacewood","lacework","lachrymal","lachrymation","lachrymator","lachrymatory","lachrymose","lacier","laciest","lacing","laciniate","lack","lackadaisical","lackadaisically","lacked","lackey","lacking","lackluster","lacklustre","lacks","laconic","laconically","laconicism","laconism","lacquer","lacquerware","lacrimal","lacrimation","lacrimator","lacrimatory","lacrosse","lactaid","lactalbumin","lactase","lactate","lactates","lactating","lactation","lacteal","lactic","lactifuge","lactobacilli","lactobacillus","lactobacteriaceae","lactoflavin","lactogen","lactogenic","lactose","lactosuria","lacuna","lacunae","lacunar","lacunaria","lacustrine","lacy","lad","ladanum","ladder","laddering","laddie","lade","laden","ladened","ladies","ladify","lading","ladino","ladle","ladling","ladoga","lady","ladybeetle","ladybird","ladybug","ladyfied","ladyfinger","ladyfish","ladyfying","ladylike","ladylikeness","ladylove","laelia","laetrile","laevulose","lafitte","lag","lagan","lagend","lager","lagerphone","laggard","lagged","lagger","lagging","lagniappe","lagomorph","lagoon","lagophthalmos","lags","laguna","lagune","lah","lahar","laic","laicise","laicises","laicize","laicizes","laid","lair","laird","lairier","lairiest","lairy","laity","lake","lakefront","lakeland","lakes","lakeshore","lakeside","lakh","lakier","lakiest","lakota","laky","lallation","lally","lallygag","lallygagged","lallygagging","lam","lamarckian","lamasery","lamb","lambast","lambaste","lambasted","lambastes","lambasting","lambchop","lambda","lambdacism","lambency","lambent","lambing","lambkill","lambkin","lamblike","lambrequin","lambskin","lame","lamedh","lamella","lamellae","lamellibranch","lamellibranchia","lamely","lameness","lament","lamentable","lamentably","lamentation","lamented","lamenter","lamenting","laments","lamia","lamiaceae","lamiae","lamina","laminae","laminal","laminar","laminate","laminated","laminates","lamination","laminator","laminectomy","laming","laminitis","lamisil","lamivudine","lammed","lammergeier","lammergeyer","lamming","lamp","lampblack","lamphouse","lamplight","lamplighter","lamplit","lampoon","lampooner","lampooning","lampoons","lamppost","lamprey","lamps","lampshade","lampshell","lan","lanate","lancastrian","lance","lancelet","lancelike","lanceolate","lancer","lances","lancet","lancetfish","lancewood","lanchou","lanchow","lancinate","lancinating","lancing","land","landed","landfall","landfill","landfills","landgrave","landholder","landholding","landing","landings","landlady","landler","landless","landline","landlocked","landlord","landlords","landlubber","landlubberly","landman","landmark","landmarks","landmass","landowner","landrover","lands","landscape","landscaped","landscaper","landscapes","landscaping","landscapist","landside","landslide","landslip","landsmaal","landsmal","landsman","landward","landwards","lane","lanes","langbeinite","langlaufer","langobard","langouste","langoustine","langsat","langset","langsyne","language","languages","languid","languidly","languish","languished","languisher","languishes","languishing","languor","languorous","languorously","langur","laniard","laniary","lank","Lanka","lanka","lankier","lankiest","lankiness","lanky","lanolin","lanoxin","lansa","lansat","lanseh","lanset","lansoprazole","lantana","lantern","lanternfish","lanterns","lanthanide","lanthanoid","lanthanon","lanthanum","lanugo","lanyard","lao","Laos","laos","laotian","lap","laparocele","laparoscope","laparoscopy","laparotomy","lapboard","lapdog","lapel","lapful","lapidarian","lapidarist","lapidary","lapidate","lapidation","lapidator","lapidified","lapidifies","lapidify","lapidist","lapilli","lapillus","lapin","lapith","lapithae","lapland","lapped","lappet","lapping","lappish","lapplander","lappula","laps","lapse","lapsed","lapses","lapsing","laptop","laptops","laputan","lapwing","larboard","larcener","larcenist","larcenous","larceny","larch","lard","larder","larding","lards","large","largely","largemouth","largeness","larger","largess","largesse","largest","larghetto","larghissimo","largish","largo","lariat","larid","larium","lark","larking","larks","larkspur","larn","larning","larns","larodopa","larotid","larrup","larruping","larrups","larva","larvacean","larvacide","larvae","larval","larvicide","laryngeal","laryngectomy","larynges","laryngismus","laryngitis","laryngopharyngeal","laryngopharyngitis","laryngopharynx","laryngoscope","laryngospasm","laryngostenosis","laryngotracheobronchitis","larynx","lasagna","lasagne","lasalle","lascivious","lasciviously","lasciviousness","lasek","laser","lash","lashed","lasher","lashes","lashing","lasik","lasiocampid","lasix","lass","lassa","lassie","lassitude","lasso","lassoes","lassoing","Last","last","lasted","lastest","lasting","lastingly","lastingness","lastly","lasts","lat","latakia","latanier","latch","latched","latches","latchet","latchkey","latchstring","late","latecomer","lateen","lately","latency","lateness","latent","Later","later","lateral","lateralisation","laterality","lateralization","lateralize","laterally","laterals","laterite","latest","latex","lath","lathe","lathee","lather","lathering","lathers","lathery","lathi","lathier","lathiest","lathy","lati","latices","laticifer","latifundia","latifundium","latin","latinate","latinise","latinises","latinize","latinizes","latino","latish","latitude","latitudinal","latitudinarian","latke","latona","latria","latrine","latte","latten","latter","latterly","lattice","latticed","latticelike","latticework","latu","Latvia","latvia","latvian","laud","laudability","laudable","laudableness","laudably","laudanum","laudator","laudatory","lauded","lauder","lauding","lauds","laugh","laughable","laughably","laughed","laugher","laughing","laughingly","laughingstock","laughs","laughter","laughting","lauhala","launce","launch","launched","launcher","launches","launching","launchpad","launder","laundered","launderette","laundering","laundress","laundromat","laundry","laundryman","laundrywoman","laureate","laurel","laureled","laurelled","laurelling","laurels","laurelwood","laurentius","lav","lava","lavabo","lavaboes","lavage","lavalava","lavalier","lavaliere","lavalliere","lavation","lavatory","lave","lavender","lavish","lavished","lavishes","lavishing","lavishly","lavishness","law","lawbreaker","lawcourt","lawful","lawfully","lawfulness","lawgiver","lawl","lawless","lawlessly","lawlessness","lawmaker","lawmakers","lawmaking","lawman","lawn","lawns","lawrencium","laws","lawsuit","lawsuits","lawyer","lawyerbush","lawyers","lax","laxation","laxative","laxity","laxly","laxness","lay","layabout","layby","layer","layered","layering","layers","layette","laying","layman","layoff","layoffs","layout","layover","layperson","lays","layup","lazar","lazaret","lazarette","lazaretto","laze","lazes","lazier","laziest","lazily","laziness","lazing","lazio","lazuli","lazuline","lazy","lazybones","lb","LB.","Lb.","lb.","lbj","lbs","lcd","lcm","ldl","lea","leach","leaches","leaching","lead","leadbelly","leaded","leaden","leader","leaders","leadership","leading","leadless","leadplant","leads","leadwort","leaf","leafage","leafed","leafhopper","leafier","leafiest","leafing","leafless","leaflet","leaflike","leafstalk","leafy","league","leagues","leak","leakage","leaked","leaker","leakier","leakiest","leakiness","leaking","leakproof","leaks","leaky","leal","lean","leaned","leaner","leaning","leanness","leans","leap","leaped","leaper","leapfrog","leapfrogged","leapfrogging","leapfrogs","leaping","leaps","leapt","learier","leariest","learn","learned","learnedly","learnedness","learner","learners","learning","learns","leary","lease","leased","leasehold","leaseholder","leases","leash","leasing","least","leastways","leastwise","leather","leatherback","leathered","leatherette","leatherfish","leatherjack","leatherjacket","leatherleaf","leatherlike","leatherneck","leatherwood","leatherwork","leathery","leave","leaved","leaven","leavened","leavening","leavens","leaver","leaves","leaving","lebanese","Lebanon","lebanon","lebensraum","lecanopteris","lecanora","lech","lechatelierite","lecher","lecherous","lecherousness","lechery","lechwe","lecithin","lectern","lectin","lector","lecture","lectured","lecturer","lectures","lectureship","lecturing","lecythi","lecythus","led","lede","lederhosen","ledge","ledgeman","ledger","lee","leech","leechee","leeches","leeching","leechlike","leek","leer","leerier","leeriest","leering","leers","leery","leeuwenhoek","leeward","leeway","leflunomide","left","leftfield","lefthander","lefties","leftish","leftism","leftist","leftmost","leftover","leftovers","lefty","leg","legacy","legal","legalese","legalisation","legalise","legalised","legalises","legalising","legalism","legality","legalization","legalize","legalized","legalizes","legalizing","legally","legate","legatee","legateship","legation","legato","legend","legendary","legends","legerdemain","legerity","leges","legged","leggier","leggiest","legging","leggy","leghorn","legibility","legible","legibly","leging","legion","legionary","legionella","legionnaire","legions","legislate","legislating","legislation","legislative","legislatively","legislator","legislators","legislatorship","legislature","legislatures","legitimacy","legitimate","legitimately","legitimates","legitimating","legitimation","legitimatise","legitimatize","legitimise","legitimised","legitimises","legitimising","legitimize","legitimized","legitimizes","legitimizing","legless","leglike","legs","legume","leguminous","lei","leibnitz","leibnitzian","leibnizian","leiomyoma","leiomyosarcoma","leipoa","leishmaniasis","leishmaniosis","leister","leisure","leisured","leisureliness","leisurely","leitmotif","leitmotiv","lek","lekvar","lem","lemanderin","lemma","lemmata","lemming","lemniscate","lemnisci","lemniscus","lemon","lemonade","lemongrass","lemonlike","lemonwood","lemony","lempira","lemur","lend","lendable","lender","lenders","lending","lends","lenes","length","lengthen","lengthened","lengthening","lengthens","lengthier","lengthiest","lengthily","lengthiness","lengths","lengthways","lengthwise","lengthy","lenience","leniency","lenient","leniently","lenify","leningrad","lenis","lenitive","lenity","lens","lense","lenses","lensman","lent","lenten","lententide","lentia","lentic","lenticel","lenticular","lentiform","lentigines","lentiginose","lentiginous","lentigo","lentil","lentisk","lentissimo","lento","leonardesque","leoncita","Leone","leone","leonid","leonides","leonine","leopard","leopardbane","leopardess","leopoldville","leotard","leper","lepidobotrys","lepidocrocite","lepidolite","lepidomelane","lepidophobia","lepidoptera","lepidopteran","lepidopterist","lepidopterologist","lepidopterology","lepidopteron","lepidoptery","lepidote","lepiota","leporid","leporide","leppy","leprechaun","leprosaria","leprosarium","leprose","leprosy","leprous","lepta","leptocephali","leptocephalus","leptodactylid","leptomeninges","leptomeningitis","lepton","leptorhine","leptorrhine","leptorrhinian","leptorrhinic","leptospira","leptospirosis","leptosporangiate","leptosporangium","leptotene","ler","leresis","lerot","lesbian","lesbianism","lesbians","lescol","lesion","lesions","Lesotho","lesotho","lespedeza","less","lessee","lessen","lessened","lessening","lessens","lesser","lesson","lessons","lessor","lest","lesvos","LET","Let","let","LET'S","Let's","let's","letch","letdown","lethal","lethality","lethargic","lethargically","lethargy","lets","letter","lettercard","lettered","letterer","letterhead","lettering","letterman","letterpress","letters","letting","lettish","lettuce","letup","LET\u2019S","Let\u2019s","let\u2019s","leu","leucaemia","leucine","leucocyte","leucocytosis","leucocytozoa","leucocytozoan","leucocytozoon","leucoma","leucopenia","leucorrhea","leucothoe","leucotomy","leukaemia","leukemia","leukeran","leukocyte","leukocytes","leukocytosis","leukoderma","leukoencephalitis","leukoma","leukopenia","leukorrhea","leukotomy","lev","leva","levallorphan","levant","levanter","levantine","levator","levee","levees","level","leveled","leveler","levelers","levelheaded","leveling","levelled","leveller","levellers","levelling","levels","lever","leverage","leveraged","leverages","leveraging","leveret","levi","leviathan","levied","levies","levirate","levitate","levitates","levitating","levitation","levitical","levitra","levity","levodopa","levorotary","levorotation","levorotatory","levulose","levy","levying","lewd","lewdly","lewdness","lex","lexeme","lexical","lexicalisation","lexicalise","lexicalised","lexicalization","lexicalize","lexicalized","lexically","lexicographer","lexicographers","lexicographic","lexicographical","lexicography","lexicologist","lexicology","lexicon","lexicostatistic","lexicostatistics","lexis","ley","leyden","lgb","lgv","liabilities","liability","liable","liaise","liaising","liaison","liakoura","liana","liar","liars","libation","libber","libel","libeled","libeler","libeling","libelled","libelling","libellous","libelous","libels","liberal","liberalisation","liberalise","liberalised","liberalises","liberalising","liberalism","liberalist","liberalistic","liberality","liberalization","liberalize","liberalized","liberalizes","liberalizing","liberally","liberalness","liberals","liberate","liberated","liberates","liberation","liberator","Liberia","liberia","liberian","libertarian","libertarianism","libertarians","liberties","libertine","liberty","libidinal","libidinous","libido","libra","librae","librarian","librarians","librarianship","libraries","library","librate","libration","libretti","librettist","libretto","libritabs","librium","Libya","libya","libyan","lice","licence","licenced","licences","licencing","license","licensed","licensee","licenser","licenses","licensing","licentiate","licentious","licentiously","licentiousness","lichee","lichen","lichgate","lichi","licit","licitly","licitness","lick","licked","licking","licks","licorice","lid","lidar","lidded","lidless","lido","lie","liebfraumilch","liechtensteiner","lied","lieder","lief","liege","liegeman","lien","lienal","lies","lietuva","lieu","lieutenancy","lieutenant","life","lifeblood","lifeboat","lifeguard","lifehack","lifeless","lifelessly","lifelessness","lifelike","lifeline","lifelong","lifer","lifesaver","lifesaving","lifesize","lifespan","lifestyle","lifestyles","lifetime","lifetimes","lifework","lifo","lift","lifted","lifter","liftgate","lifting","liftman","liftoff","lifts","ligament","ligan","ligand","ligands","ligate","ligates","ligating","ligation","ligature","liger","light","lightbulb","lighted","lighten","lightened","lightening","lightens","lighter","lighterage","lighterman","lightest","lightheaded","lightheadedness","lighthearted","lightheartedness","lighthouse","lighting","lightless","lightlessness","lightly","lightness","lightning","lightproof","lights","lightship","lightsome","lightsomely","lightsomeness","lightweight","lightwood","ligne","ligneous","lignified","lignifies","lignify","lignin","lignite","lignosae","lignum","ligula","ligulae","ligule","lii","liii","likable","Like","like","likeable","liked","likeing","likelihood","likeliness","likely","liken","likened","likeness","likening","likens","liker","likers","likes","likewise","liking","likuta","lilac","lilangeni","liliaceous","lilies","liliopsid","liliopsida","lilliputian","lilt","lilting","lily","lilyturf","limacine","limacoid","liman","limb","limbed","limber","limbi","limbic","limbless","limbo","limbs","limbus","lime","limeade","limekiln","limelight","limen","limes","limestone","limewater","limey","limier","limiest","limina","limit","limitation","limitations","limited","limitedly","limiter","limites","limiting","limitless","limitlessness","limits","limn","limner","limning","limnological","limnologically","limnologist","limnology","limnos","limo","limonene","limonite","limousine","limp","limpa","limper","limpet","limpid","limpidity","limpidly","limping","limpkin","limply","limpness","limps","limuli","limulus","limy","linac","linage","linalool","linchpin","lincocin","lincolnesque","lincolnian","lincomycin","lindane","linden","lindy","line","lineage","lineages","lineal","lineally","lineament","linear","linearise","linearity","linearize","linearizes","linearizing","linearly","lineation","linebacker","linecut","lined","linelike","lineman","linemen","linen","linendraper","liner","lines","linesman","lineup","ling","lingam","lingberry","lingcod","lingenberry","linger","lingerer","lingerie","lingering","lingeringly","lingers","lingo","lingoes","lingonberry","lingua","linguae","lingual","lingually","linguica","linguine","linguini","linguist","linguistic","linguistically","linguistics","linguists","lingulate","liniment","linin","lining","link","linkage","linkages","linkboy","linked","linking","linkman","links","linksman","linkup","linnaean","linnean","linnet","lino","linocut","linoleum","linseed","linstock","lint","lintel","lintwhite","linuron","lion","lioness","lionet","lionfish","lionfishes","lionhearted","lionisation","lionise","lionised","lionises","lionising","lionization","lionize","lionized","lionizes","lionizing","lions","liopelma","liopelmidae","liothyronine","lip","lipaemia","liparidae","lipase","lipectomy","lipemia","lipfern","lipid","lipidaemia","lipide","lipidemia","lipidosis","lipids","lipitor","lipizzan","lipless","liplike","lipochondrodystrophy","lipogram","lipoid","lipoidaemia","lipoidemia","lipoma","lipomata","lipomatosis","lipophilic","lipoprotein","liposarcoma","liposome","liposuction","lipotropic","lipped","lippier","lippiest","lipping","lippizaner","lippy","lipread","lipreading","lips","lipstick","liquaemin","liquefaction","liquefiable","liquefied","liquefies","liquefy","liquescent","liqueur","liquid","liquidambar","liquidate","liquidated","liquidates","liquidating","liquidation","liquidator","liquidise","liquidised","liquidiser","liquidisers","liquidises","liquidising","liquidity","liquidize","liquidized","liquidizer","liquidizers","liquidizes","liquidizing","liquidness","liquifiable","liquified","liquifies","liquify","liquor","liquorice","lira","lire","liriodendra","liriodendron","lisboa","lisente","lisinopril","lisle","lisp","lisper","lisping","lispingly","lisps","lissom","lissome","lissomeness","list","listed","listen","listened","listener","listeners","listening","listens","listente","lister","listeria","listeriosis","listing","listings","listless","listlessly","listlessness","lists","lit","litai","litas","litchee","litchi","lite","liter","literacy","literal","literalise","literalism","literalize","literally","literalness","literary","literate","literati","literatim","literature","liters","lithane","lithe","litheness","lithesome","lithiasis","lithic","lithium","lithoglyptics","lithograph","lithographer","lithographic","lithography","lithology","lithomancer","lithomancy","lithomantic","lithonate","lithophyte","lithophytic","lithops","lithosphere","lithotomy","lithuanian","lithuresis","litigant","litigants","litigate","litigates","litigating","litigation","litigator","litigious","litigiousness","litmus","litoral","litotes","litre","litres","litter","litterateur","litterbin","litterbug","littered","litterer","littering","litters","little","littleneck","littleness","littoral","litu","liturgical","liturgics","liturgiology","liturgist","liturgy","liv","livable","live","liveable","liveborn","lived","livedo","livelier","liveliest","livelihood","liveliness","livelong","lively","liven","liveness","liver","liveried","liverish","liverleaf","liverpudlian","livers","liverwort","liverwurst","livery","liveryman","lives","livestock","livid","lividity","lividly","lividness","living","lixivia","lixivium","liza","lizard","lizardfish","LL","ll","llama","llano","llb","lld","llm","LLP.","Llp.","llp.","llud","lmao","lmfao","loach","load","loaded","loader","loading","loads","loadstar","loadstone","loaf","loafing","loam","loamless","loamy","loan","loanblend","loaned","loaner","loaning","loans","loanword","loanwords","loasa","loath","loathe","loathed","loather","loathes","loathing","loathly","loathsome","loathsomeness","loaves","lob","lobar","lobate","lobated","lobbed","lobbied","lobbies","lobbing","lobby","lobbying","lobbyism","lobbyist","lobbyists","lobe","lobectomy","lobed","lobefin","lobelia","lobeliaceous","lobes","loblolly","lobotomy","lobs","lobscouse","lobscuse","lobster","lobsterback","lobsterman","lobular","lobularity","lobule","lobworm","local","locale","localisation","localise","localised","localises","localising","localism","locality","localization","localize","localized","localizes","localizing","locally","locals","locate","located","locater","locates","locating","location","locations","locative","locator","loch","lochia","loci","lock","lockage","lockbox","lockdown","locked","locker","locket","locking","lockjaw","lockkeeper","lockman","lockmaster","locknut","lockout","lockring","locks","locksmith","lockstep","lockstitch","lockup","loco","locoism","locomote","locomotion","locomotive","locomotives","locomotor","locoweed","locule","loculi","loculus","locum","locus","locust","locustidae","locution","lode","lodestar","lodestone","lodge","lodged","lodgement","lodgepole","lodger","lodges","lodging","lodgment","lodine","loess","loft","loftier","loftiest","loftily","loftiness","lofty","log","logagraphia","loganberry","logarithm","logarithmic","logarithmically","logbook","loge","logged","logger","loggerhead","loggerheaded","loggia","loggie","logginess","logging","logia","logic","logical","logicality","logically","logicalness","logician","logicism","logier","logiest","loginess","logion","logistic","logistical","logistician","logistics","logjam","logo","logogram","logogrammatic","logogrammatically","logograph","logographic","logomach","logomachist","logomachy","logomania","logorrhea","logos","logotype","logroll","logrolling","logs","logwood","logy","lohan","loin","loincloth","loir","loiter","loiterer","lol","loligo","loll","lolling","lollipop","lollop","lolly","lollygag","lolol","lololol","lolololol","lomatia","lombardia","loment","lomenta","lomentum","lomustine","lone","lonelier","loneliest","loneliness","lonely","loner","lonesome","lonesomeness","long","longan","longanberry","longanimity","longanimous","longbeard","longboat","longbow","longbowman","longer","longest","longevity","longhand","longhorn","longicorn","longing","longingly","longish","longitude","longitudinal","longitudinally","longlegs","longness","longobard","longobardi","longroot","longshoreman","longshot","longsighted","longsightedness","longstanding","longtime","longueur","longways","longwise","longwool","longyi","loniten","lontar","loo","loofa","loofah","look","lookdown","looked","looker","looking","lookout","looks","lookup","lool","loom","loomed","looming","looms","loon","looney","loonie","loonier","looniest","loony","loool","looool","loop","looper","loophole","loopholes","loopier","loopiest","looping","loops","loopy","loose","looseing","looseleaf","loosely","loosen","loosened","looseness","loosening","loosens","looser","looses","loosestrife","loosing","loot","looted","looter","looting","loots","lop","lope","lopid","loping","lopped","lopper","lopping","lopressor","lopsided","lopsidedly","lopsidedness","loquacious","loquaciously","loquaciousness","loquacity","loquat","lorazepam","lorca","lorchel","lord","lorded","lording","lordless","lordlier","lordliest","lordliness","lordly","lordolatry","lordosis","lordotic","lords","lore","lorfan","lorgnette","lorica","loricae","lorikeet","lorry","lory","lose","loser","losers","loses","losing","losings","loss","losses","lossless","lossy","lost","lot","loth","lothringen","loti","lotic","lotion","lots","lotte","lotted","lotteries","lottery","lotting","lotto","lotus","lotusland","louche","loud","louden","louder","loudest","loudly","loudmouth","loudness","loudspeaker","lough","louisiana","louisianian","lounge","lounger","lounges","loungewear","lounging","loupe","lour","louring","louse","lousier","lousiest","lousiness","lousy","lout","loutish","louvar","louver","louvered","louvers","louvre","louvred","louvres","lovable","lovage","lovastatin","love","loveable","lovebird","loved","loveless","lovelier","lovelies","loveliest","loveliness","lovelorn","lovely","lovemaking","lover","loverlike","loverly","lovers","loves","loveseat","lovesick","lovesickness","lovesome","lovin","lovin'","loving","lovingly","lovingness","low","lowan","lowball","lowballing","lowborn","lowboy","lowbred","lowbrow","lowbrowed","lower","lowercase","lowerclassman","lowered","lowering","loweringly","lowermost","lowers","lowest","lowing","lowland","lowlier","lowliest","lowlife","lowliness","lowly","lowness","lows","lowset","lox","loxapine","loxitane","loxodrome","loyal","loyalist","loyalists","loyally","loyalty","loyang","loyola","lozal","lozenge","lpn","lsd","LT.","Lt.","lt.","LTD.","Ltd.","ltd.","ltm","LTTE","ltte","luau","lubber","lubberly","lube","lubricant","lubricate","lubricated","lubricates","lubricating","lubrication","lubricator","lubricious","lubricity","lubritoria","lubritorium","lucania","lucent","lucerne","Lucia","lucia","lucid","lucidity","lucidly","lucidness","lucifer","luciferin","lucifugal","lucifugous","luck","luckier","luckiest","luckily","luckiness","luckless","lucky","lucrative","lucrativeness","lucre","lucubrate","lucubration","luculent","lucullan","ludic","ludicrous","ludicrously","ludo","lues","luff","luffa","lug","luganda","luge","lugeing","luges","luggage","lugged","lugger","lugging","lugh","luging","lugs","lugsail","lugubrious","lugubriously","lugubriousness","lugworm","luik","lukewarm","lukewarmly","lukewarmness","lull","lullabied","lullaby","lulled","lulli","lulling","lulls","lulu","luluabourg","lumbago","lumbar","lumber","lumbering","lumberjack","lumberman","lumbermill","lumbers","lumberyard","lumbi","lumbosacral","lumbus","lumen","lumina","luminal","luminance","luminary","luminesce","luminescence","luminescent","luminism","luminosity","luminous","luminousness","lumma","lummox","lump","lumpectomy","lumped","lumpen","lumpenproletariat","lumper","lumpfish","lumpfishes","lumpier","lumpiest","lumping","lumpish","lumps","lumpsucker","lumpy","lunacy","lunar","lunate","lunatic","lunatics","lunation","lunch","luncheon","luncher","lunches","lunching","lunchroom","lunchtime","lunette","lung","lunge","lunged","lungen","lunger","lungfish","lungfishes","lungi","lunging","lungs","lungyi","lunier","luniest","lunisolar","lunkhead","lunula","lunulae","lunule","luny","lupin","lupine","lur","lurch","lurched","lurcher","lurching","lure","lured","lures","lurid","luridly","luridness","luring","lurk","lurker","lurking","lurks","lusatian","luscious","lusciously","lusciousness","lush","lushness","lusitanian","lust","luster","lusterless","lusterlessness","lusterware","lustful","lustfully","lustfulness","lustier","lustiest","lustily","lustiness","lusting","lustra","lustrate","lustre","lustreless","lustrelessness","lustrous","lustrum","lusts","lusty","luta","lutanist","lute","luteal","lutecium","lutefisk","lutein","lutenist","luteotropin","lutetium","lutfisk","lutheran","luthier","luting","lutist","luvian","lux","luxate","luxates","luxating","luxation","luxe","luxembourger","luxembourgian","luxemburg","luxemburger","luxuria","luxuriance","luxuriant","luxuriantly","luxuriate","luxuriates","luxuriating","luxuriation","luxurious","luxuriously","luxuriousness","luxury","lwei","lyallpur","lycaenid","lycanthrope","lycanthropy","lycee","lyceum","lychee","lychgate","lychnis","lycopene","lycopersicum","lycopod","lycopodiate","lye","lygaeid","lyginopteridales","lying","lymantriid","lymph","lymphadenitis","lymphadenoma","lymphadenopathy","lymphangiectasia","lymphangiectasis","lymphangiogram","lymphangiography","lymphangioma","lymphangitides","lymphangitis","lymphatic","lymphedema","lymphoblast","lymphocyte","lymphocytes","lymphocytic","lymphocytopenia","lymphocytosis","lymphogranuloma","lymphography","lymphoid","lymphokine","lymphoma","lymphomata","lymphopenia","lymphopoieses","lymphopoiesis","lymphuria","lynch","lynches","lynching","lynchpin","lynx","lyonnaise","lyophilisation","lyophilise","lyophilised","lyophilization","lyophilize","lyophilized","lypressin","lyrate","lyre","lyrebird","lyreflower","lyric","lyrical","lyricality","lyrically","lyricism","lyricist","lyrics","lyrist","lyses","lysichitum","lysin","lysine","lysinemia","lysis","lysogenic","lysogenicity","lysogenisation","lysogenization","lysogenize","lysogeny","lysosome","lysosomes","lysozyme","lyssa","lyssavirus","lytta","lyttae","ma","maar","maare","maarianhamina","mac","macabre","macadam","macadamia","macadamise","macadamises","macadamize","macadamizes","macamba","macaque","macaques","macaroni","macaronic","macaronies","macaroon","macarthur","macau","macaw","maccaroni","maccaronies","macdowell","macebearer","macedoine","Macedonia","macedonia","macedonian","macer","macerate","macerates","macerating","maceration","macerative","macgregor","macguffin","machete","machiavellian","machicolate","machicolation","machilid","machinate","machination","machinations","machinator","machine","machinelike","machinery","machines","machinist","machismo","machmeter","macho","machzor","machzorim","macintosh","mack","mackerel","mackinaw","mackintosh","mackle","macleish","maconnais","macrame","macrencephalic","macrencephalous","macrencephaly","macro","macrobiotic","macrobiotics","macrocephalic","macrocephalous","macrocephaly","macrocosm","macrocosmic","macrocyte","macrocytosis","macrodantin","macroeconomic","macroeconomics","macroeconomist","macroevolution","macroglia","macroglossia","macromolecular","macromolecule","macron","macronuclei","macronucleus","macrophage","macrophages","macroscopic","macroscopical","macroscopically","macrosporangia","macrosporangium","macrospore","macrotus","macrozamia","macruridae","macula","maculae","maculate","maculation","macule","macumba","macushla","mad","madagascan","Madagascar","madagascar","madake","madam","madame","madcap","madded","madden","maddened","maddening","maddens","madder","madderwort","maddest","madding","made","mademoiselle","madhouse","madly","madman","madnep","madness","madonna","madornos","madras","madrasa","madrasah","madrepore","madrigal","madrigalist","madrilene","madrona","madrono","madwoman","madwort","maelstrom","maenad","maestri","maestro","mafa","maffia","mafia","mafiosi","mafioso","mag","magazine","magazines","magdalen","magenta","maggot","maggoty","magha","magi","magic","magical","magically","magician","magilp","magisterial","magisterially","magistracy","magistrate","magistrature","maglev","magma","magmata","magnanimity","magnanimous","magnanimously","magnanimousness","magnate","magnesia","magnesite","magnesium","magnet","magnetic","magnetically","magnetics","magnetisation","magnetise","magnetised","magnetises","magnetising","magnetism","magnetite","magnetization","magnetize","magnetized","magnetizes","magnetizing","magneto","magnetograph","magnetohydrodynamics","magnetometer","magneton","magnetosphere","magnetron","magnets","magnification","magnificence","magnificent","magnificently","magnifico","magnificoes","magnified","magnifier","magnifies","magnify","magnifying","magniloquence","magniloquent","magniloquently","magnitude","magnitudes","magnolia","magnoliophyta","magnoliopsid","magnoliopsida","magnum","magpie","maguey","magus","magyar","magyarorszag","maha","mahabharatam","mahabharatum","mahagua","maharaja","maharajah","maharanee","maharani","mahatma","mahgrib","mahican","mahimahi","mahjong","mahlstick","mahoe","mahogany","mahomet","mahound","mahout","mahratta","mahratti","mahuang","mahzor","mahzorim","maia","maid","maiden","maidenhair","maidenhead","maidenhood","maidenlike","maidenliness","maidenly","maidhood","maidism","maidservant","maiger","maigre","maikoa","mail","mailbag","mailboat","mailbox","maildrop","mailed","mailer","mailers","mailing","maillot","mailman","mails","mailsorter","maim","maimed","maimer","maiming","maims","main","mainframe","mainland","mainline","mainlining","mainly","mainmast","mainsail","mainsheet","mainspring","mainstay","mainstream","mainstreamed","maintain","maintainable","maintained","maintainer","maintaining","maintains","maintenance","maiolica","maisonette","maisonnette","maize","majagua","majestic","majestically","majesty","majolica","major","majorette","majoring","majority","majors","majuscular","majuscule","mak","makataimeshekiakiak","make","makedonija","makeing","makeover","maker","makeready","makers","makes","makeshift","makeup","makeweight","makin","making","mako","makomako","makuta","malabsorption","malachias","malachite","malacia","malacologist","malacology","malacopterygian","maladaption","maladaptive","maladjusted","maladjustive","maladjustment","maladroit","maladroitly","maladroitness","malady","malahini","malaise","malamute","malanga","malaprop","malapropism","malapropos","malar","malaria","malarial","malarkey","malarky","Malawi","malawi","malawian","malay","malaya","malayan","Malaysia","malaysia","malaysian","malcontent","maldevelopment","maldivan","Maldives","maldives","male","maleate","maleberry","maledict","malediction","malefactor","malefic","maleficence","maleficent","malemute","maleness","maleo","males","maleseet","malevolence","malevolency","malevolent","malevolently","malfeasance","malfeasant","malformation","malformed","malfunction","malfunctioning","malfunctions","Mali","mali","malian","malice","malicious","maliciously","maliciousness","malign","malignance","malignancies","malignancy","malignant","malignantly","maligned","maligner","maligning","malignity","malignly","malignment","maligns","malik","malinger","malingerer","malingering","malinois","mall","mallard","malleability","malleable","mallee","mallei","malleoli","malleolus","mallet","malleus","mallow","malls","malmsey","malnourish","malnourished","malnourishment","malnutrition","malocclusion","malodor","malodorous","malodorousness","malodour","malodourous","malonylurea","malope","maloti","malposed","malposition","malpractice","mals","malt","malted","maltese","maltha","malthusian","malti","maltier","maltiest","maltman","maltose","maltreat","maltreated","maltreater","maltreatment","maltster","malty","malvasia","malversate","malversation","malware","mama","mamba","mambo","mamey","mamilla","mamillae","mamma","mammae","mammal","mammalian","mammalogist","mammalogy","mammals","mammary","mammee","mammilla","mammillae","mammillaria","mammogram","mammograms","mammography","mammoth","mammothermography","mammy","mamo","mamoncillo","man","manacle","manage","manageability","manageable","manageableness","manageably","managed","management","manager","manageress","managerial","managerially","managers","managership","manages","managing","manakin","manana","manat","manatee","manawyddan","manchurian","mancunian","mandaean","mandala","mandamus","mandatary","mandate","mandated","mandates","mandating","mandator","mandatorily","mandatory","mandean","mandeanism","mandelamine","mandelshtam","mandible","mandibula","mandibular","mandibulate","mandibulofacial","mandingo","mandingoes","mandioc","mandioca","mandola","mandolin","mandrake","mandrel","mandril","mandrill","manducate","manduction","mane","maneuver","maneuverability","maneuverable","maneuvered","maneuverer","maneuvering","maneuverings","maneuvers","manful","manfully","manfulness","manga","mangabey","manganate","manganese","manganite","mange","manger","mangey","mangier","mangiest","mangily","manginess","mangle","mangled","mangler","manglietia","mangling","mango","mangoes","mangold","mangonel","mangosteen","mangrove","mangy","manhandle","manhandled","manhandles","manhandling","manhole","manhood","manhunt","mania","maniac","maniacal","maniacally","manic","manichaean","manichaeanism","manichean","manichee","maniclike","manicotti","manicure","manicures","manicuring","manicurist","manifest","manifestation","manifestations","manifesting","manifestly","manifesto","manifestoes","manifests","manifold","manikin","manilla","manioc","manioca","manipulability","manipulable","manipulate","manipulated","manipulates","manipulating","manipulation","manipulations","manipulative","manipulatively","manipulator","maniraptor","mankier","mankiest","mankind","manky","manlier","manliest","manlike","manliness","manly","manna","manned","mannequin","manner","mannered","mannerism","mannerly","manners","mannikin","manning","mannish","mannitol","manoeuver","manoeuvering","manoeuvers","manoeuvrability","manoeuvrable","manoeuvre","manoeuvred","manoeuvrer","manoeuvres","manoeuvring","manoeuvrings","manometer","manor","manorial","manpad","manpower","manque","manroot","mans","mansard","manse","manservant","mansion","mansions","manslaughter","manslayer","manta","manteau","manteaux","manteidae","mantel","mantelet","mantelpiece","mantes","mantic","mantichora","manticora","manticore","mantid","mantiger","mantilla","mantineia","mantis","mantispid","mantissa","mantle","mantled","mantlepiece","mantlet","mantra","mantrap","mantua","manual","manually","manuals","manubria","manubrium","manufactory","manufacture","manufactured","manufacturer","manufacturers","manufactures","manufacturing","manul","manumission","manumit","manumits","manumitted","manumitter","manumitting","manure","manus","manuscript","manuscripts","manx","Many","many","manzanita","maoi","maoist","map","mapinguari","maple","maplelike","mapmaking","mapped","mapper","mapping","mapquest","maps","maquiladora","maquisard","mar","MAR.","Mar.","mar.","marabou","marabout","maraca","marang","maranta","marasca","maraschino","marasmus","marathon","marathoner","maraud","marauder","marauding","maravilla","marble","marbled","marbleisation","marbleise","marbleised","marbleising","marbleization","marbleize","marbleized","marbleizing","marblewood","marbling","marc","marcel","marcelled","marcelling","march","marched","marcher","marches","marchesa","marchese","marching","marchioness","marchland","marchpane","mare","maremma","maremme","margarin","margarine","margarita","margasivsa","margate","margay","marge","margin","marginal","marginalia","marginalisation","marginalise","marginalised","marginalises","marginalising","marginality","marginalization","marginalize","marginalized","marginalizes","marginalizing","marginally","marginocephalian","margins","margosa","margrave","marguerite","mari","mariachi","marian","Mariana","mariana","marianas","marigold","marihuana","marijuana","marimba","marina","marinade","marinara","marinate","marinates","marinating","marine","mariner","marino","marionette","mariposa","marital","mariticide","maritime","maritimes","marjoram","Mark","mark","marked","markedly","marker","markers","market","marketable","marketed","marketer","marketers","marketing","marketplace","markets","markhoor","markhor","marking","markka","markkaa","markoff","markovian","marks","marksman","marksmanship","markup","markweed","marl","marlberry","marlin","marline","marlinespike","marlingspike","marlinspike","marlite","marlstone","marly","marmalade","marmite","marmora","marmoreal","marmorean","marmoset","marmot","maroc","marocain","maroon","marooned","marplan","marque","marquee","marquess","marqueterie","marquetry","marquis","marquise","marrakech","marred","marri","marriage","marriageability","marriageable","marriages","married","marries","marring","marrow","marrowbone","marruecos","marry","marrying","Mars","mars","marshal","marshaled","marshaling","Marshall","marshall","marshalled","marshalling","marshals","marshalship","marshier","marshiest","marshland","marshmallow","marshmallows","marshy","marsupia","marsupial","marsupium","mart","martagon","marten","martensite","martial","martially","martian","martinet","martingale","martini","martynia","martyr","martyrdom","martyring","martyrise","martyrises","martyrize","martyrizes","martyrs","marum","marumi","marupa","marvel","marveled","marveling","marvelled","marveller","marvelling","marvellous","marvellously","marvelous","marvelously","marvels","marxist","maryland","marzipan","mascara","mascarpone","mascot","masculine","masculinisation","masculinise","masculinity","masculinization","masculinize","masdevallia","maser","mash","masher","mashes","mashie","mashing","masjid","mask","masked","masker","masking","masks","masochism","masochist","masochistic","masochistically","mason","masonic","masonry","masora","masoretic","masorite","masqat","masque","masquer","masquerade","masquerader","masquerades","masquerading","mass","MASS.","Mass.","mass.","massachusetts","massacre","massacres","massacring","massage","massager","massages","massaging","massasauga","masse","massed","masses","masseter","masseur","masseuse","massicot","massicotite","massier","massiest","massif","massing","massive","massively","massiveness","massorete","massy","mast","mastaba","mastabah","mastalgia","mastectomy","masted","master","mastered","masterful","masterfully","mastering","masterless","masterly","mastermind","masterpiece","masterpieces","masters","mastership","masterstroke","masterwort","mastery","masthead","mastic","masticate","masticating","mastication","mastiff","mastigomycotina","mastigophoran","mastigophore","mastitis","mastocyte","mastodon","mastodont","mastoid","mastoidal","mastoidale","mastoidectomy","mastoiditis","mastopathy","mastopexy","masturbate","masturbates","masturbating","masturbation","masturbator","mat","matabele","matador","matai","match","matchboard","matchbook","matchbox","matchbush","matched","matcher","matches","matchet","matching","matchless","matchlock","matchmaker","matchmaking","matchstick","matchup","matchweed","matchwood","mate","mated","mateless","matelote","mater","materfamilias","material","materialisation","materialise","materialised","materialises","materialising","materialism","materialist","materialistic","materialistically","materiality","materialization","materialize","materialized","materializes","materializing","materially","materials","materiel","maternal","maternalism","maternalistic","maternally","maternity","mates","matey","math","mathematical","mathematically","mathematician","mathematics","matinee","mating","matins","matman","matoaka","matriarch","matriarchal","matriarchate","matriarchic","matriarchy","matric","matricentric","matrices","matricide","matriculate","matriculation","matrikin","matrilineage","matrilineal","matrilineally","matrilinear","matrimonial","matrimony","matrisib","matrix","matron","matronly","matronymic","matsyendra","Matt","matt","matte","matted","matter","mattered","mattering","matters","matting","mattock","mattress","maturate","maturation","maturational","mature","matured","maturely","maturement","matureness","matures","maturing","maturity","matutinal","matzah","matzo","matzoh","matzoth","maudlin","maul","mauler","mauling","mauls","maulstick","maund","maunder","maundering","maunders","maungier","maungiest","maungy","Mauritania","mauritania","mauritanian","mauritanie","mauritian","Mauritius","mauritius","mausolea","mausoleum","mauve","maven","maverick","mavik","mavin","mavis","maw","mawkish","mawkishly","mawkishness","mawlamyine","max","maxi","maxilla","maxillae","maxillaria","maxillary","maxillodental","maxillofacial","maxillomandibular","maxima","maximal","maximally","maximation","maximisation","maximise","maximised","maximises","maximising","maximization","maximize","maximized","maximizes","maximizing","maximum","MAY","May","may","MAY'VE","May've","may've","mayapple","Maybe","maybe","mayeng","mayfish","mayfly","mayhap","mayhaw","mayhem","mayidism","MAYN'T","Mayn't","mayn't","MAYNT","Maynt","maynt","MAYN\u2019T","Mayn\u2019t","mayn\u2019t","mayo","mayonnaise","mayor","mayoral","mayoralty","mayoress","mayors","maypole","maypop","MAYVE","Mayve","mayve","mayweed","MAY\u2019VE","May\u2019ve","may\u2019ve","mazdaism","maze","mazed","mazer","mazier","maziest","mazopathy","mazurka","mazy","mazzard","mba","mbd","mbit","mcalester","mcallen","mccarthy","mccarthyism","mccartney","mccauley","mccormick","mccullers","mcg","mcgraw","mcguffey","mcguffin","mcia","mcintosh","mckim","mckinley","mcluhan","mcmaster","mcpherson","MCX","mcx","MD.","Md.","md.","mdi","mdiv","mdma","mdt","me","meadow","meadowgrass","meadowlark","meadows","meager","meagerly","meagerness","meagre","meagrely","meagreness","meal","mealberry","mealie","mealier","mealiest","meals","mealtime","mealworm","mealy","mealybug","mealymouthed","mean","meander","meandered","meandering","meanderingly","meanders","meaner","meanest","meanie","meaning","meaningful","meaningfully","meaningfulness","meaningless","meaninglessness","meanings","meanly","meanness","means","meanspirited","meanspiritedly","meant","meantime","Meanwhile","meanwhile","meany","mearstone","measles","measlier","measliest","measly","measurability","measurable","measurably","measure","measured","measuredly","measureless","measurement","measurements","measurer","measures","measuring","meat","meatball","meatier","meatiest","meatless","meatloaf","meatman","meatpacking","meats","meatus","meaty","mebaral","mebendazole","mebibit","mebibyte","mechanic","mechanical","mechanically","mechanics","mechanisation","mechanise","mechanised","mechanises","mechanising","mechanism","mechanisms","mechanist","mechanistic","mechanistically","mechanization","mechanize","mechanized","mechanizes","mechanizing","mecholyl","meclizine","meclofenamate","meclomen","meconium","mecopteran","mecopterous","med","medal","medalist","medalled","medalling","medallion","medallist","medals","meddle","meddler","meddles","meddlesome","meddlesomeness","meddling","medevac","medfly","media","mediacy","mediaeval","medial","medially","median","mediant","mediastina","mediastinum","mediate","mediated","mediateness","mediates","mediating","mediation","mediator","mediatorial","mediators","mediatory","mediatrix","medic","medical","medically","medicament","medicate","medicates","medicating","medication","medications","medicative","medicinal","medicinally","medicine","medicines","medick","medico","medicolegal","mediety","medieval","mediocre","mediocrity","meditate","meditates","meditating","meditation","meditative","meditatively","meditativeness","mediterranean","medium","medivac","medlar","medley","medline","medroxyprogesterone","meds","medulla","medullae","medullary","medullated","medusa","medusae","medusan","medusoid","meed","meek","meekly","meekness","meerestone","meerkat","meerschaum","meet","meeter","meeting","meetinghouse","meetings","meets","mefloquine","mefoxin","meg","mega-crash","mega-hit","Mega-hits","mega-hits","mega-issues","mega-lawyer","mega-mergers","mega-projects","mega-resorts","mega-stadium","megabat","megabit","megabucks","megabyte","megacardia","megacephaly","megacolon","megacycle","megadeath","megaflop","megagametophyte","megahertz","megahit","megakaryocyte","megakaryocytic","megalith","megalithic","megaloblast","megaloblastic","megalocardia","megalocephaly","megalocyte","megalohepatia","megalomania","megalomaniac","megalomaniacal","megalomanic","megalopolis","megalosaur","megalosaurus","megaphone","megapode","megara","megaron","megascopic","megasporangia","megasporangium","megaspore","megasporophyll","megathere","megatherian","megatheriid","megaton","megawatt","megestrol","megillah","megilloth","megilp","megohm","megrim","mei","meioses","meiosis","meiotic","meitnerium","mek","melaena","melagra","melamine","melancholia","melancholiac","melancholic","melancholy","melanesian","melange","melanin","melanise","melanism","melanize","melanoblast","melanocyte","melanoderma","melanoma","melanomata","melanosis","melasma","melastomaceae","melatonin","melchite","meld","melding","melds","melee","melena","melicocca","melilot","melilotus","meliorate","melioration","meliorative","meliorism","meliorist","melisma","melismata","mellaril","mellifluous","mellisonant","mellow","mellowed","mellowing","mellowingly","mellowly","mellowness","mellows","melodic","melodically","melodies","melodious","melodiously","melodiousness","melodise","melodize","melodrama","melodramatic","melodramatically","melody","meloid","melon","melosa","melphalan","melt","meltable","meltdown","melted","melter","melting","melts","meltwater","mem","member","membered","memberless","members","membership","membrane","membranes","membranophone","membranous","meme","memel","memento","mementoes","memo","memoir","memoirs","memorabilia","memorability","memorable","memorably","memoranda","memorandum","memorial","memorialisation","memorialise","memorialised","memorialises","memorialising","memorialization","memorialize","memorialized","memorializes","memorializing","memoriam","memories","memorisation","memorise","memorised","memoriser","memorises","memorising","memorization","memorize","memorized","memorizer","memorizes","memorizing","memory","memos","memsahib","men","menace","menaced","menaces","menacing","menacingly","menadione","menage","menagerie","menarche","mend","mendacious","mendaciously","mendacity","mendeleev","mendelevium","mendelian","mendelianism","mender","mendicancy","mendicant","mendicity","mending","mends","menhaden","menhir","menial","menially","meningeal","meninges","meningioma","meningism","meningitis","meningocele","meningoencephalitis","meninx","meniscectomy","menisci","meniscus","menominee","menopausal","menopause","menorah","menorrhagia","menorrhea","mensal","mensch","menservants","menses","mensh","menstrua","menstrual","menstruate","menstruates","menstruating","menstruation","menstruum","mensurable","mensural","mensurate","mensuration","mental","mentalism","mentality","mentally","mentation","menthol","mentholated","mention","mentioned","mentioner","mentioning","mentions","mentor","mentoring","mentors","mentum","menu","menus","meow","meowing","meows","mepacrine","meperidine","mephaquine","mephenytoin","mephistophelean","mephistophelian","mephitic","mephobarbital","meprin","meprobamate","meq","meralgia","merbromine","mercantile","mercantilism","mercaptopurine","mercenary","mercer","mercerise","mercerised","mercerize","mercerized","merchandise","merchandised","merchandiser","merchandises","merchandising","merchant","merchantability","merchantable","merchantman","merchants","merciful","mercifully","mercifulness","merciless","mercilessly","mercilessness","mercurial","mercuric","mercurochrome","mercurous","mercury","mercy","mere","merely","merestone","meretricious","meretriciously","meretriciousness","merganser","merge","merged","merger","mergers","merges","merging","mericarp","meridian","meridional","meringue","merino","meristem","merit","meritable","merited","meriting","meritless","meritocracy","meritocratic","meritorious","meritoriously","meritoriousness","merits","merl","merle","merlon","mermaid","merman","merodach","meromelia","meronym","meronymy","merovingian","merozoite","merrier","merriest","merrily","merriment","merriness","merry","merrymaker","merrymaking","merthiolate","mesalliance","mesantoin","mescal","mescaline","mesdames","mesdemoiselles","mesencephalon","mesenchyme","mesentera","mesenteric","mesenteron","mesentery","mesh","meshed","meshes","meshing","meshuga","meshugaas","meshugga","meshugge","meshuggeneh","meshuggener","meshwork","mesial","mesic","mesmeric","mesmerise","mesmerised","mesmerises","mesmerising","mesmerism","mesmerist","mesmerize","mesmerized","mesmerizer","mesmerizes","mesmerizing","mesoamerican","mesoblast","mesoblastic","mesocarp","mesocolon","mesoderm","mesodermal","mesohippus","mesolithic","mesomorph","mesomorphic","mesomorphy","meson","mesonic","mesophyron","mesophyte","mesophytic","mesosphere","mesothelioma","mesothelium","mesothoraces","mesothorax","mesotron","mesozoic","mesquit","mesquite","mess","message","messages","messaging","messed","messeigneurs","messenger","messes","messiahship","messianic","messier","messiest","messieurs","messily","messiness","messing","messmate","MESSRS.","Messrs.","messrs.","messuage","messy","mestiza","mestizo","mestizoes","mestranol","met","metabola","metabolic","metabolically","metabolise","metabolised","metabolises","metabolising","metabolism","metabolite","metabolites","metabolize","metabolized","metabolizes","metabolizing","metabolous","metacarpal","metacarpi","metacarpus","metacenter","metacentre","metacentric","metacyesis","metadata","metagenesis","metagrabolised","metagrabolized","metagrobolised","metagrobolized","metaknowledge","metal","metalanguage","metalepsis","metalhead","metalize","metalled","metallic","metallike","metalling","metallize","metalloid","metallurgic","metallurgical","metallurgist","metallurgy","metals","metalware","metalwork","metalworker","metalworking","metamathematics","metamere","metameric","metamorphic","metamorphism","metamorphopsia","metamorphose","metamorphoses","metamorphosing","metamorphosis","metamorphous","metanephroi","metanephros","metaphase","metaphor","metaphoric","metaphorical","metaphorically","metaphors","metaphysical","metaphysically","metaphysics","metaphysis","metaproterenol","metarule","metasequoia","metastability","metastable","metastases","metastasis","metastasise","metastasises","metastasize","metastasizes","metastasizing","metastatic","metatarsal","metatarsi","metatarsus","metatherian","metatheses","metathesis","metathoraces","metathorax","metazoa","metazoan","metchnikov","mete","metempsychoses","metempsychosis","metencephala","metencephalon","meteor","meteoric","meteorite","meteoritic","meteoritical","meteoroid","meteorologic","meteorological","meteorologically","meteorologist","meteorology","meteortropism","meter","metering","meters","meterstick","metformin","meth","methacholine","methadon","methadone","methamphetamine","methanal","methane","methanogen","methanol","methapyrilene","methaqualone","metharbital","methedrine","metheglin","methenamine","methicillin","methionine","methocarbamol","method","methodical","methodically","methodicalness","methodist","methodological","methodologically","methodologies","methodology","methods","methotrexate","methyl","methylated","methylbenzene","methyldopa","methylene","methylenedioxymethamphetamine","methylphenidate","methyltestosterone","metic","metical","meticorten","meticulosity","meticulous","meticulously","meticulousness","metier","metonym","metonymic","metonymical","metonymically","metonymy","metopion","metoprolol","metralgia","metrazol","metre","metres","metrestick","metric","metrical","metrically","metricate","metrication","metricise","metricises","metricize","metricizes","metrics","metrification","metrified","metrifies","metrify","metritis","metro","metrological","metrology","metronidazole","metronome","metronymic","metropolis","metropolitan","metroptosis","metrorrhagia","mettle","mettlesome","mettlesomeness","metycaine","mevacor","mew","mewl","mewling","mexican","mexicano","Mexico","mexico","mexiletine","mexitil","mezcal","mezereon","mezereum","mezuza","mezuzah","mezuzoth","mezzanine","mezzo","mezzotint","mfa","mflop","mg","MGMT.","Mgmt.","mgmt.","mho","mhz","MI.","Mi.","mi.","miao","miaou","miaow","miasm","miasma","miasmal","miasmata","miasmic","miaul","mib","mibit","mic","mica","micaceous","mice","micelle","MICH.","Mich.","mich.","micheas","michelangelesque","michigan","mick","mickey","mickle","miconazole","micro","micro-electronic","micro-liquidity","microanalyses","microanalysis","microbalance","microbar","microbat","microbe","microbes","microbial","microbic","microbiologist","microbiology","microbrachia","microbrewery","microcephalic","microcephalous","microcephalus","microcephaly","microchip","microcircuit","micrococci","micrococcus","microcode","microcomputer","microcopy","microcosm","microcosmic","microcosms","microcrystalline","microcyte","microcytosis","microdot","microeconomic","microeconomics","microeconomist","microelectronic","microelectronics","microevolution","microfarad","microfiche","microfilm","microflora","microfossil","microgametophyte","microgauss","microglia","microgliacyte","microgram","micrograms","micrometeor","micrometeoric","micrometeorite","micrometeoritic","micrometeoroid","micrometer","micrometers","micrometre","micrometres","micrometry","micromicron","micromillimeter","micromillimetre","micron","micronase","Micronesia","micronesia","micronuclei","micronucleus","micronutrient","microorganism","microorganisms","micropaleontology","micropenis","microphage","microphallus","microphone","microphoning","microphotometer","microprocessor","micropylar","micropyle","microradian","microscope","microscopic","microscopical","microscopically","microscopist","microscopy","microsecond","microseism","microsomal","microsome","microsporangia","microsporangium","microspore","microsporidian","microsporophyll","microsurgery","microtome","microtubule","microvolt","microwave","microzide","micturate","micturition","mid","mid-1920s","mid-1930s","mid-1940s","mid-1950s","mid-1960s","mid-1970s","mid-1980s","mid-1990s","mid-2000s","mid-2010s","mid-2020s","mid-20s","mid-30s","mid-40s","mid-50s","mid-60s","mid-70s","mid-80s","mid-90s","mid-afternoon","mid-april","mid-august","mid-conversation","mid-day","mid-december","mid-eighties","mid-february","mid-fifties","mid-forties","mid-january","mid-july","mid-june","mid-march","mid-may","mid-night","mid-nineties","mid-november","mid-october","mid-priced","mid-range","mid-season","mid-september","mid-seventies","mid-sixties","Mid-sized","mid-sized","mid-thirties","mid-to-late","mid-twenties","mid-week","midafternoon","midair","midazolam","midbrain","midday","midden","middle","middlebreaker","middlebrow","middleman","middlemost","middleweight","middling","middy","mideast","midfield","midge","midget","midgrass","midi","midinette","midiron","midland","midline","midmost","midnight","midplane","midpoint","midrash","midrashim","midrib","midrif","midriff","midsection","midshipman","midships","midst","midstream","midsummer","midterm","midvein","midwatch","midway","midweek","midweekly","midwest","midwestern","midwife","midwifery","midwinter","midwives","mien","mierkat","mifepristone","miff","miffed","miffier","miffiest","miffs","miffy","MIGHT","Might","might","MIGHT'VE","Might've","might've","mightier","mightiest","mightily","mightiness","MIGHTN'T","Mightn't","mightn't","MIGHTNT","Mightnt","mightnt","MIGHTN\u2019T","Mightn\u2019t","mightn\u2019t","MIGHTVE","Mightve","mightve","mighty","MIGHT\u2019VE","Might\u2019ve","might\u2019ve","mignonette","migraine","migrant","migrants","migrate","migrates","migrating","migration","migrational","migrations","migrator","migratory","mihrab","mikado","Mike","mike","mikmaq","mikvah","mil","milage","milanese","milano","milch","milcher","mild","milder","mildew","mildly","mildness","mile","mileage","mileometer","milepost","miler","miles","milestone","milestones","milfoil","milia","miliaria","milieu","milieux","militainment","militance","militancy","militant","militants","militarily","militarisation","militarise","militarised","militarises","militarising","militarism","militarist","militaristic","militarization","militarize","militarized","militarizes","militarizing","military","militate","militates","militating","militia","militiaman","militias","milium","milk","milkcap","milked","milker","milkfish","milkfishes","milkier","milkiest","milking","milkless","milklike","milkmaid","milkman","milks","milkshake","milksop","milkwagon","milkweed","milkwort","milky","mill","millboard","milldam","milled","millenarian","millenarianism","millenarism","millenarist","millenary","millennia","millennial","millennian","millennium","millenniumism","millepede","miller","millerite","millettia","milliammeter","milliampere","milliard","millibar","millicurie","millidegree","milliequivalent","millifarad","milligram","milligramme","milligrammes","milligrams","millihenry","milliliter","milliliters","millilitre","millilitres","millime","millimeter","millimeters","millimetre","millimetres","millimicron","milline","milliner","millinery","milling","million","millionaire","millionaires","millionairess","millionfold","millions","millionth","milliped","millipede","milliradian","millirem","millisecond","milliseconds","millivolt","millivoltmeter","milliwatt","millpond","millrace","millrun","mills","millstone","millwheel","millwork","millwright","milo","milometer","milontin","milord","milquetoast","milt","miltomate","miltown","mime","mimeo","mimeograph","mimer","mimes","mimesis","mimetic","mimic","mimicing","mimicked","mimicker","mimicking","mimicry","mimics","miming","mimosa","min","mina","minacious","minae","minah","minaret","minatory","mince","mincemeat","mincer","minces","mincing","mincingly","mind","minded","minder","mindful","mindfully","mindfulness","minding","mindless","mindlessly","mindlessness","minds","mindset","mine","mined","minefield","minelayer","minelaying","miner","mineral","mineralize","mineralocorticoid","mineralogist","mineralogy","minerals","miners","mines","mineshaft","minestrone","minesweeper","minesweeping","mineworker","minge","mingier","mingiest","minginess","mingle","mingles","mingling","mingy","mini","mini-component","mini-series","mini-slip","miniate","miniature","miniaturisation","miniaturise","miniaturised","miniaturises","miniaturising","miniaturist","miniaturization","miniaturize","miniaturized","miniaturizes","miniaturizing","minibar","minibike","minibus","minibuses","minibuss","minibusses","minicab","minicar","minicomputer","minified","minifies","minify","minim","minima","minimal","minimalism","minimalist","minimally","minimisation","minimise","minimised","minimises","minimising","minimization","minimize","minimized","minimizes","minimizing","minimum","minimus","mining","minion","minions","minipress","miniscule","miniskirt","minister","ministeria","ministerial","ministerially","ministering","ministerium","ministers","ministrant","ministration","ministry","minisub","minisubmarine","minium","minivan","minivans","miniver","mink","MINN.","Minn.","minn.","minnesota","minnewit","minniebush","minnow","minoan","minocin","minocycline","minor","minoring","minorities","minority","minors","minoxidil","minster","minstrel","minstrelsy","mint","mintage","minted","minter","minting","mintmark","mints","minty","minuend","minuet","minus","minuscular","minuscule","minuses","minute","minutely","minuteness","minutes","minutia","minutiae","minx","minyan","minyanim","mioses","miosis","miotic","mips","mir","miracidia","miracidium","miracle","miracles","miraculous","miraculously","mirage","mirasol","mire","mired","mires","miri","mirid","mirish","mirkier","mirkiest","mirky","mirror","mirrored","mirrorlike","mirrors","mirth","mirthful","mirthfully","mirthfulness","mirthless","miry","misaddress","misadventure","misadvise","misadvises","misalign","misalignment","misalliance","misally","misanthrope","misanthropic","misanthropical","misanthropist","misanthropy","misapplication","misapplied","misapplies","misapply","misapprehend","misapprehension","misappropriate","misappropriated","misappropriates","misappropriating","misappropriation","misbegot","misbegotten","misbehave","misbehaved","misbehaves","misbehaving","misbehavior","misbehaviour","misbelieve","misbeliever","misbrand","misbranded","misbranding","misc","miscalculate","miscalculated","miscalculates","miscalculating","miscalculation","miscall","miscarriage","miscarried","miscarries","miscarry","miscast","miscegenate","miscegenating","miscegenation","miscellanea","miscellaneous","miscellany","mischance","mischief","mischiefs","mischievous","mischievously","mischievousness","miscible","misclassified","misclassifies","misclassify","misconceive","misconception","misconduct","misconducted","misconducting","misconducts","misconstrual","misconstruction","misconstrue","miscount","miscounting","miscreant","miscreate","miscreation","miscue","misdate","misdating","misdeal","misdeed","misdeeds","misdeliver","misdelivers","misdemean","misdemeanor","misdemeanors","misdemeanour","misdemeanours","misdemeans","misdirect","misdirecting","misdirection","misdirects","misdo","miser","miserable","miserableness","miserably","miserliness","miserly","misery","misestimate","misestimation","misfeasance","misfire","misfires","misfiring","misfit","misfits","misfitted","misfitting","misfortunate","misfortune","misfunction","misfunctions","misgauge","misgauges","misgive","misgives","misgiving","misgovern","misgovernment","misguide","misguided","misguides","mishandle","mishandled","mishandles","mishandling","mishap","mishegaas","mishegoss","mishit","mishits","mishitting","mishmash","mishna","mishnah","mishnaic","mishnayoth","mishpachah","mishpocha","misidentifies","misidentify","misidentifying","misinform","misinformation","misinformed","misinforming","misinforms","misinterpret","misinterpretation","misinterpreted","misinterpreting","misinterprets","misjudge","misjudged","misjudges","misjudging","mislabeled","mislaid","mislay","mislead","misleaded","misleader","misleading","misleadingly","misleads","misled","mismanage","mismanagement","mismanages","mismanaging","mismarry","mismatch","mismatched","mismatches","mismatching","mismate","mismated","misname","misnomer","miso","misocainea","misogamist","misogamy","misogynic","misogynism","misogynist","misogynistic","misogynous","misogyny","misology","misoneism","misopedia","misperceive","mispickel","misplace","misplaced","misplacement","misplaces","misplacing","misplay","misplead","mispled","mispricing","misprint","misprints","mispronounce","mispronounces","mispronouncing","mispronunciation","misquotation","misquote","misquoting","misread","misreading","misreads","misreckoning","misrelated","misremember","misremembering","misremembers","misreport","misreported","misreporting","misreports","misrepresent","misrepresentation","misrepresentations","misrepresented","misrepresenting","misrepresents","misrule","miss","MISS.","Miss.","miss.","missal","missed","misses","misshapen","misshapenness","missile","missiles","missing","mission","missional","missionaries","missionary","missioner","missions","missis","mississippi","missive","missouri","misspeak","misspeaking","misspeaks","misspell","misspelled","misspelling","misspells","misspelt","misspend","misspending","misspends","misspent","misstate","misstated","misstatement","misstates","misstating","misstep","missus","missy","mist","mistakable","mistake","mistaken","mistakenly","mistakes","mistaking","mistflower","mistier","mistiest","mistily","mistime","mistiming","mistiness","misting","mistletoe","mistral","mistranslate","mistranslates","mistranslating","mistranslation","mistreat","mistreated","mistreating","mistreatment","mistreats","mistress","mistrial","mistrust","mistrustful","mistrustfully","mistrusting","mistrusts","mists","misty","misunderstand","misunderstanding","misunderstands","misunderstood","misuse","misused","misuses","misusing","mit","mite","miter","mitering","miters","miterwort","mithan","mithra","mithracin","mithraic","mithraicism","mithraistic","mithramycin","mitigable","mitigate","mitigated","mitigates","mitigating","mitigation","mitigative","mitigatory","mitochondria","mitochondrion","mitogen","mitomycin","mitosis","mitotic","mitral","mitre","mitres","mitrewort","mitsvah","mitt","mittelschmerz","mitten","mitzvah","mitzvoth","mix","mixable","mixed","mixer","mixes","mixing","mixologist","mixology","mixture","mixtures","mizen","mizenmast","mizzen","mizzenmast","mizzle","mko","ml","mlitt","mm","mmpi","mnemonic","mnemonist","mnemotechnic","mnemotechnical","mo","MO.","Mo.","mo.","moa","moan","moaned","moaner","moaning","moans","moat","moated","mob","moban","mobbed","mobbing","mobbish","mobcap","mobile","mobilisation","mobilise","mobilised","mobilises","mobilising","mobility","mobilization","mobilize","mobilized","mobilizes","mobilizing","moblike","mobocracy","mobster","mobsters","mocambique","mocassin","moccasin","mocha","mock","mocked","mocker","mockernut","mockery","mocking","mockingbird","mockingly","mocks","mod","modal","modalities","modality","mode","model","modeled","modeler","modelers","modeling","modelled","modeller","modellers","modelling","models","modem","moderate","moderated","moderately","moderateness","moderates","moderating","moderation","moderationism","moderationist","moderatism","moderato","moderator","moderatorship","modern","moderne","modernisation","modernise","modernised","modernises","modernising","modernism","modernist","modernistic","modernity","modernization","modernize","modernized","modernizes","modernizing","modernness","modes","modest","modestly","modestness","modesty","modicum","modifiable","modification","modifications","modified","modifier","modifies","modify","modifying","modillion","modioli","modiolus","modish","modishly","modishness","modiste","modular","modulate","modulated","modulates","modulating","modulation","module","modules","moduli","modulus","mogadiscio","moghul","mogul","moguls","mohair","mohammad","mohammedan","mohammedanism","moharram","moho","moieties","moiety","moil","moirae","moire","moist","moisten","moistener","moistening","moistly","moistness","moisture","moisturise","moisturised","moisturiser","moisturisers","moisturises","moisturising","moisturize","moisturized","moisturizer","moisturizers","moisturizes","moisturizing","mojarra","mojo","moke","moksa","mol","mola","molal","molality","molar","molarity","molasses","mold","moldable","moldavia","moldboard","molded","molder","moldered","moldering","molders","moldier","moldiest","moldiness","molding","moldings","moldovan","molds","moldy","mole","molech","molecular","molecule","molecules","molehill","moleskin","molest","molestation","molester","molesting","molests","molindone","moll","mollah","molle","mollie","mollification","mollified","mollifies","mollify","mollifying","mollusc","molluscum","mollusk","molly","mollycoddle","mollycoddler","mollycoddling","mollymawk","moloch","molt","molted","molten","molter","molting","molto","molts","molybdenite","molybdenum","mom","mombin","moment","momenta","momentaneous","momentarily","momentary","momently","momentous","momentously","momentousness","moments","momentum","momi","momism","momma","mommy","momos","momot","moms","momus","mon","MON.","Mon.","mon.","mona","monacan","monad","monades","monal","monandrous","monandry","monarch","monarchal","monarchic","monarchical","monarchism","monarchist","monarchs","monarchy","monarda","monasteries","monastery","monastic","monastical","monasticism","monatomic","monaul","monaural","monaurally","monazite","monday","monecious","monegasque","moneran","moneron","monestrous","monetarism","monetarist","monetary","monetisation","monetise","monetization","monetize","money","money-wise","moneybag","moneyed","moneyer","moneygrubber","moneylender","moneyless","moneymaker","moneymaking","moneyman","moneywort","monger","mongering","monggo","mongo","mongol","Mongolia","mongolia","mongolian","mongolianism","mongolic","mongolism","mongoloid","mongoose","mongrel","mongrelise","mongrelises","mongrelize","mongrelizes","monied","moniker","monilia","moniliasis","monish","monism","monistat","monistic","monition","monitor","monitored","monitoring","monitors","monitory","monitrice","monk","monkey","monkeypod","monkeys","monkfish","monkfishes","monkish","monks","monkshood","mono","monoamine","monoatomic","monoblast","monocarboxylic","monocarp","monocarpic","monochasia","monochasium","monochromacy","monochromasy","monochromat","monochromatic","monochromatism","monochrome","monochromia","monochromic","monochromous","monocle","monocled","monoclinal","monocline","monoclinic","monoclinous","monoclonal","monocot","monocotyledon","monocotyledonae","monocotyledonous","monocracy","monoculture","monocycle","monocyte","monocytes","monocytosis","monodic","monodical","monody","monoecious","monoestrous","monogamist","monogamous","monogamousness","monogamy","monogenesis","monogenic","monogram","monograph","monogynic","monogynist","monogynous","monogyny","monohybrid","monohydrate","monoicous","monolatry","monolingual","monolingually","monolith","monolithic","monolog","monologist","monologs","monologue","monologues","monologuise","monologuises","monologuize","monologuizes","monomania","monomaniac","monomaniacal","monomer","monometallic","monomorphemic","mononeuropathy","mononuclear","mononucleate","mononucleosis","monophonic","monophony","monophthalmos","monophysite","monophysitic","monoplane","monoplegia","monoploid","monopodia","monopodium","monopolies","monopolisation","monopolise","monopolised","monopoliser","monopolises","monopolising","monopolist","monopolistic","monopolization","monopolize","monopolized","monopolizer","monopolizes","monopolizing","monopoly","monopsony","monoptera","monopteral","monopteroi","monopteron","monopteros","monorail","monorchidism","monorchism","monosaccharide","monosaccharose","monosemous","monosemy","monosomy","monosyllabic","monosyllabically","monosyllable","monotheism","monotheist","monotheistic","monotone","monotonic","monotonous","monotonously","monotony","monotreme","monotype","monotypic","monounsaturated","monovalent","monovular","monoxide","monozygotic","monseigneur","monsieur","monsignor","monsignori","monsoon","monster","monstera","monsters","monstrance","monstrosity","monstrous","monstrously","MONT.","Mont.","mont.","montage","montana","montane","monte","Montenegro","montenegro","month","monthlong","monthly","months","montserratian","monument","monumental","monumentalise","monumentalize","monuments","moo","mooch","moocher","mood","moodier","moodiest","moodily","moodiness","moods","moody","mooing","moolah","moon","moonbeam","mooncalf","mooncalves","mooneye","moonfish","moonfishes","moonflower","moong","moonier","mooniest","moonily","mooning","moonless","moonlight","moonlighter","moonlighting","moonlights","moonlike","moonlit","moonseed","moonshell","moonshine","moonshiner","moonstone","moonstruck","moonwalk","moonwort","moony","moor","moorage","moorbird","moorcock","moorfowl","moorgame","moorhen","mooring","moorish","moorland","moors","moorwort","moose","moosewood","moot","mooting","moots","mop","mopboard","mope","moped","moping","mopped","mopper","moppet","mopping","mops","moquette","mora","moraceous","morae","moraine","moral","morale","moralisation","moralise","moralised","moralises","moralising","moralism","moralist","moralistic","morality","moralization","moralize","moralized","moralizes","moralizing","morally","morals","morass","moratoria","moratorium","moravian","moray","morbid","morbidity","morbidly","morbidness","morbific","morbilli","morbilliform","morceau","morceaux","mordacious","mordaciously","mordacity","mordant","mordvin","mordvinian","More","more","moreen","morel","morello","Moreover","moreover","moresco","morescoes","moresque","morganatic","morganite","morgen","morgue","moribund","morion","morisco","moriscoes","mormon","morn","morning","mornings","moroccan","Morocco","morocco","moron","moronic","moronity","morons","morose","morosely","moroseness","morosoph","morph","morphallaxes","morphallaxis","morphea","morpheme","morphemic","morphia","morphine","morphing","morphogenesis","morphologic","morphological","morphologically","morphology","morphophoneme","morphophonemic","morphophonemics","morphophysiology","morphoses","morphosis","morphs","morrigu","morrow","morse","morsel","morses","mortal","mortality","mortally","mortals","mortar","mortarboard","mortaring","mortgage","mortgaged","mortgagee","mortgager","mortgages","mortgaging","mortgagor","mortice","mortician","mortification","mortified","mortifies","mortify","mortifying","mortise","mortmain","mortuary","morula","morulae","mosaic","mosaicism","mosaics","mosasauri","mosasaurus","mosey","mosh","moshav","moshavim","moshing","moslem","moslim","moslims","mosque","mosques","mosquito","mosquitoes","mosquitofish","moss","mossback","mosstone","mossy","Most","most","mostaccioli","mostly","mot","mote","motel","motet","moth","mothball","mother","motherese","motherfucker","motherfucking","motherhood","mothering","motherland","motherless","motherlike","motherliness","motherly","mothers","motherwort","mothier","mothiest","mothproof","mothy","motif","motifs","motile","motilin","motility","motion","motional","motioning","motionless","motionlessly","motionlessness","motions","motivate","motivated","motivates","motivating","motivation","motivational","motivations","motivative","motivator","motive","motiveless","motives","motivity","motley","motmot","motoneuron","motor","motorbike","motorboat","motorbus","motorcade","motorcar","motorcoach","motorcycle","motorcycling","motorcyclist","motored","motorial","motoring","motorisation","motorise","motorised","motorist","motorists","motorization","motorize","motorized","motorizes","motorless","motorman","motormouth","motors","motortruck","motorway","motown","motrin","mottle","mottled","mottling","motto","mottoes","moue","moufflon","mouflon","moujik","moukden","mould","mouldboard","moulded","moulder","mouldered","mouldering","moulders","mouldier","mouldiest","moulding","mouldings","moulds","mouldy","moulin","moult","moulted","moulter","moulting","moults","mound","mounds","Mount","mount","mountain","mountaineer","mountaineering","mountaineers","mountainous","mountains","mountainside","mountebank","mounted","mounter","mounting","mounts","mourn","mourned","mourner","mourners","mournful","mournfully","mournfulness","mourning","mourns","mouse","mouselike","mousepad","mouser","mousetrap","mousey","mousier","mousiest","mousing","moussaka","mousse","moussorgsky","moustache","moustached","moustaches","moustachio","moustachioed","mousy","mouth","mouthbreeder","mouthed","mouthful","mouthier","mouthiest","mouthing","mouthless","mouthlike","mouthpart","mouthpiece","mouths","mouthwash","mouthy","mouton","movability","movable","movableness","move","moveable","moved","movement","movements","mover","movers","moves","movie","moviegoer","moviegoers","moviemaking","movies","moving","movingly","mow","mower","mowing","mown","mows","moxie","mozambican","Mozambique","mozambique","mozartean","mozartian","mozzarella","mp","mpeg","mph","MR.","Mr.","mr.","mrd","mrem","mri","mrna","mrnas","MRS.","Mrs.","mrs.","mrta","MS.","Ms.","ms.","msasa","msb","msc","msec","msg","msh","mst","MT.","Mt.","mt.","muadhdhin","muazzin","much","muchness","muciferous","mucilage","mucilaginous","mucin","mucinoid","mucinous","muck","mucked","muckheap","muckhill","muckier","muckiest","mucking","muckle","muckrake","muckraker","muckrakes","muckraking","mucks","mucky","mucocutaneous","mucoid","mucoidal","mucopolysaccharide","mucopolysaccharidosis","mucopurulent","mucor","mucosa","mucosae","mucosal","mucose","mucous","mucoviscidosis","mucro","mucrones","mucuna","mucus","mud","mudcat","mudded","mudder","muddied","muddier","muddies","muddiest","muddiness","mudding","muddle","muddled","muddleheaded","muddles","muddling","muddy","muddying","mudejar","mudejares","mudfish","mudfishes","mudguard","mudhif","mudra","mudskipper","mudslide","mudslinger","mudspringer","mudwrestle","muenchen","muesli","muezzin","muff","muffin","muffins","muffle","muffled","muffler","muffles","muffling","mufti","mug","mugful","mugged","muggee","mugger","muggier","muggiest","mugginess","mugging","muggins","muggy","mugs","mugshot","mugwort","muhammad","muhammadan","muhammadanism","muhammedan","muharrum","muishond","mujahadeen","mujahadein","mujahadin","mujahedeen","mujahedin","mujahid","mujahideen","mujahidin","mujik","mujtihad","mukataa","mukden","mulatto","mulattoes","mulberry","mulch","mulching","mulct","mule","muleteer","muliebrity","mulish","mulishly","mulishness","mull","mulla","mullein","mullet","mulligan","mulligatawny","mulling","mullion","mullioned","mulloway","mulls","multi-agency","multi-column","multi-crystal","multi-family","multi-gear","multi-spired","multibillion","multicellular","multicollinearity","multicolor","multicolored","multicolour","multicoloured","multicultural","multiculturalism","multidimensional","multiethnic","multifaceted","multifactorial","multifarious","multifariously","multifariousness","multiflora","multiform","multilane","multilateral","multilaterally","multilevel","multilingual","multimedia","multimillion","multinational","multinomial","multinucleate","multipara","multiparae","multiparous","multipartite","multiphase","multiple","multiples","multiplex","multiplexer","multiplicand","multiplication","multiplicative","multiplicatively","multiplicity","multiplied","multiplier","multiplies","multiply","multiplying","multipotent","multiprocessing","multiprocessor","multiprogramming","multipurpose","multiracial","multistage","multistorey","multistoried","multistory","multitude","multitudinous","multitudinousness","multivalence","multivalency","multivalent","multivariate","multiversity","multivitamin","mulwi","mum","mumble","mumbled","mumbler","mumbles","mumbling","mummed","mummer","mummery","mummichog","mummification","mummified","mummifies","mummify","mumming","mummy","mumpish","mumps","mumpsimus","munch","munchausen","munchener","muncher","munches","munching","mundane","mundanely","mundaneness","mundanity","mung","munggo","municipal","municipality","municipally","munificence","munificent","munificently","muniments","munition","munj","munja","munjeet","munjuk","muntjac","muon","mural","muralist","murals","muramidase","murder","murdered","murderee","murderer","murderers","murderess","murdering","murderous","murderously","murderousness","murders","murex","murices","murine","muritaniya","murk","murkier","murkiest","murkily","murkiness","murky","murmur","murmuration","murmurer","murmuring","murmurous","murmurs","murphy","murrain","murre","muscadel","muscadelle","muscadine","muscatel","musci","muscle","musclebuilder","musclebuilding","muscled","muscleman","muscles","muscling","muscovite","muscular","muscularity","musculature","musculoskeletal","musculus","musd","muse","muser","muses","musette","museum","museums","musgoi","mush","musher","mushier","mushiest","mushiness","mushroom","mushroomed","mushrooming","mushrooms","mushy","music","musical","musicality","musically","musicalness","musicals","musician","musicians","musicianship","musicological","musicologically","musicologist","musicology","musing","musingly","musings","musjid","musk","muskallunge","muskat","muskellunge","musket","musketeer","musketry","muskier","muskiest","muskiness","muskmelon","muskogean","muskrat","muskwood","musky","muslim","muslimism","muslin","musnud","musophobia","musquash","muss","mussel","mussiness","mussitate","mussitation","mussy","MUST","Must","must","MUST'VE","Must've","must've","mustache","mustached","mustaches","mustachio","mustachioed","mustagh","mustang","mustard","mustelid","musteline","muster","mustering","musters","musth","mustier","mustiest","mustiness","MUSTN'T","Mustn't","mustn't","MUSTN'T'VE","Mustn't've","mustn't've","MUSTNT","Mustnt","mustnt","MUSTN\u2019T","Mustn\u2019t","mustn\u2019t","MUSTN\u2019T\u2019VE","Mustn\u2019t\u2019ve","mustn\u2019t\u2019ve","MUSTVE","Mustve","mustve","musty","MUST\u2019VE","Must\u2019ve","must\u2019ve","mutability","mutable","mutableness","mutafacient","mutagen","mutagenesis","mutagenic","mutamycin","mutant","mutants","mutate","mutated","mutating","mutation","mutational","mutations","mutative","mutawa","mutchkin","mute","muted","mutely","muteness","mutes","mutilate","mutilated","mutilates","mutilating","mutilation","mutilator","mutineer","muting","mutinied","mutinous","mutiny","mutisia","mutism","muton","mutsuhito","mutt","mutter","mutterer","muttering","mutters","mutton","muttonfish","muttonhead","mutual","mutualism","mutualist","mutuality","mutually","mutualness","muumuu","muzhik","muzjik","muztagh","muzzier","muzziest","muzzle","muzzler","muzzles","muzzy","mv","mvp","My","my","myalgia","myalgic","Myanmar","myanmar","myasthenia","mycelia","mycelium","mycenaean","mycetoma","mycetomata","mycobacteria","mycobacterium","mycologist","mycology","mycomycin","mycophage","mycophagist","mycophagy","mycoplasma","mycorrhiza","mycorrhizae","mycosis","mycostatin","mycotoxin","mydriasis","mydriatic","myelatelia","myelencephala","myelencephalon","myelic","myelin","myelinated","myeline","myelinic","myelinisation","myelinization","myelitis","myeloblast","myelocyte","myelofibrosis","myelogram","myelography","myeloid","myeloma","myelomeningocele","myg","myiases","myiasis","mylitta","mylodon","mylodontid","mym","myna","mynah","myocardia","myocardial","myocardiopathy","myocarditis","myocardium","myoclonus","myodynia","myofibril","myofibrilla","myofibrillae","myoglobin","myoglobinuria","myogram","myoid","myology","myoma","myomata","myometritis","myometrium","myonecrosis","myopathic","myopathy","myope","myopia","myopic","myosarcoma","myoses","myosin","myosins","myosis","myositis","myotic","myotomy","myotonia","myotonic","myrcia","myriad","myriagram","myriameter","myriametre","myriapod","myriapoda","myringa","myringectomy","myringoplasty","myringotomy","myrmecophagous","myrmecophile","myrmecophilous","myrmecophyte","myrmecophytic","myrmidon","myrmidones","myrobalan","myrrh","myrtle","myself","mysoandry","mysoline","mysophilia","mysophobia","mysophobic","mysteries","mysterious","mysteriously","mystery","mystic","mystical","mystically","mysticism","mystification","mystified","mystifier","mystifies","mystify","mystifying","mystique","myth","mythic","mythical","mythicise","mythicises","mythicize","mythicizes","mythoi","mythologic","mythological","mythologisation","mythologise","mythologist","mythologization","mythologize","mythology","mythos","myths","mytilene","mytilid","myxedema","myxinoidea","myxinoidei","myxobacter","myxobacterales","myxobacteria","myxobacteriaceae","myxobacteriales","myxobacterium","myxoedema","myxoma","myxomata","myxomatosis","myxomycete","myxosporidian","myxovirus","N'T","n't","N.C.","n.c.","N.DAK.","N.Dak.","n.dak.","N.H.","n.h.","N.J.","n.j.","N.MEX.","N.Mex.","n.mex.","N.Y.","n.y.","n00b","Na","na","naan","nab","nabbed","nabbing","nabob","naboom","nabs","nabumetone","nac","nacelle","nacho","nacre","nacreous","nad","nada","nadir","nadolol","nadp","naevi","naevus","nafcil","nafcillin","nafta","nafud","nag","nagami","nagari","nagged","nagger","nagging","nagi","nags","nah","naiad","naiades","naiant","naif","nail","nailbrush","nailed","nailer","nailfile","nailhead","nailing","nailrod","nails","nainsook","naira","naive","naively","naiveness","naivete","naivety","najadaceae","najd","naked","nakedly","nakedness","nakedwood","nalfon","nalline","nalorphine","naloxone","naltrexone","name","named","namedrop","nameing","nameko","nameless","namelessness","namely","nameplate","namer","names","namesake","Namibia","namibia","namibian","naming","nammad","namtaru","nance","nandrolone","nandu","nanism","nankeen","nanking","nanny","nanocephalic","nanocephaly","nanogram","nanometer","nanometre","nanomia","nanophthalmos","nanosecond","nanotechnology","nanotube","nanovolt","nanus","naoi","naos","nap","napa","napalm","nape","napery","naphazoline","naphtha","naphthalene","naphthol","naphthoquinone","napkin","napoleonic","napoli","napped","nappier","nappiest","napping","nappy","naprapath","naprapathy","naprosyn","naproxen","naps","napu","naqua","nara","naranjilla","narc","narcan","narcism","narcissi","narcissism","narcissist","narcissistic","narcissus","narcist","narcolepsy","narcoleptic","narcosis","narcoterrorism","narcotic","narcotics","narcotise","narcotised","narcotising","narcotize","narcotized","narcotizes","narcotizing","narcotraffic","nard","nardil","nardo","nardoo","nares","narghile","nargileh","narial","naris","nark","narrate","narrates","narrating","narration","narrative","narratives","narrator","narrow","narrowboat","narrowed","narrower","narrowest","narrowing","narrowly","narrowness","narrows","narthex","narwal","narwhal","narwhale","nary","nasa","nasal","nasale","nasalisation","nasalise","nasality","nasalization","nasalize","nasally","nascence","nascency","nascent","NASDAQ","nasdaq","nasion","nasopharyngeal","nasopharynges","nasopharynx","nastier","nastiest","nastily","nastiness","nasturtium","nasty","natal","natality","natation","natator","natatoria","natatorium","nates","nation","national","nationalisation","nationalisations","nationalise","nationalised","nationalises","nationalising","nationalism","nationalist","nationalistic","nationalists","nationalities","nationality","nationalization","nationalizations","nationalize","nationalized","nationalizes","nationalizing","nationally","nationals","nationhood","nations","nationwide","native","nativeness","natives","nativism","nativist","nativistic","nativity","nato","natriuresis","natriuretic","natrolite","natter","nattering","natterjack","natters","nattier","nattiest","nattily","nattiness","natty","natural","naturalisation","naturalise","naturalised","naturalises","naturalising","naturalism","naturalist","naturalistic","naturalization","naturalize","naturalized","naturalizes","naturalizing","naturally","naturalness","nature","naturism","naturist","naturistic","naturopath","naturopathy","nauch","naught","naughtier","naughtiest","naughtily","naughtiness","naughty","naumachia","naumachiae","naumachy","naupathia","nauplii","nauplius","Nauru","nauru","nauruan","nausea","nauseant","nauseate","nauseated","nauseates","nauseating","nauseatingness","nauseous","nautch","nautical","nautili","nautilus","navaho","navahoes","navajo","navajoes","naval","navane","nave","navel","navicular","navigability","navigable","navigate","navigates","navigating","navigation","navigational","navigator","navvy","navy","nawab","nawcwpns","nay","naysayer","naysaying","nazarene","naze","nazi","nazify","naziism","na\xEFve","na\xEFvet\xE9","NBA","nba","nbe","nbw","ncdc","NCDEX","ncdex","nd","NDA","nda","ndjamena","ne","neandertal","neanderthal","neanderthalian","neap","neapolitan","Near","near","nearby","neared","nearer","nearest","nearing","nearly","nearness","nears","nearside","nearsighted","nearsightedness","neat","neaten","neatly","neatness","neb","NEB.","Neb.","neb.","nebbech","nebbish","nebcin","nebe","nebiim","nebn","nebo","NEBR.","Nebr.","nebr.","nebraska","nebuchadrezzar","nebula","nebulae","nebular","nebule","nebuliser","nebulizer","nebulose","nebulous","nebulously","nec","necessarily","necessary","necessitarian","necessitate","necessitated","necessitates","necessitating","necessities","necessitous","necessity","neck","neckband","neckcloth","necked","necker","neckerchief","necking","necklace","neckless","necklet","necklike","neckline","neckpiece","necks","necktie","neckwear","necrobiosis","necrology","necrolysis","necromancer","necromancy","necromania","necromantic","necromantical","necrophagia","necrophagy","necrophilia","necrophilism","necropoleis","necropolis","necropsy","necrose","necrosis","necrotic","nectar","nectariferous","nectarine","nectarous","nectary","nederland","nee","NEED","Need","need","needed","needer","needful","needfully","needier","neediest","neediness","needing","needle","needlebush","needlecraft","needled","needlefish","needlefishes","needlelike","needlepoint","needles","needless","needlessly","needlewoman","needlewood","needlework","needleworker","needling","NEEDN'T","Needn't","needn't","NEEDN\u2019T","Needn\u2019t","needn\u2019t","needs","needy","neem","neencephalon","nefarious","nefariously","nefariousness","nefazodone","negate","negated","negates","negating","negation","negative","negatively","negativeness","negatives","negativism","negativist","negativity","negatron","neggram","neglect","neglected","neglecter","neglectful","neglectfully","neglectfulness","neglecting","neglects","neglige","negligee","negligence","negligent","negligently","negligible","negociate","negotiable","negotiant","negotiate","negotiated","negotiates","negotiating","negotiation","negotiations","negotiator","negotiators","negotiatress","negotiatrix","negrillo","negrilloes","negrito","negritoes","negro","negroes","negroid","negus","neigh","neighbor","neighborhood","neighborhoods","neighboring","neighborliness","neighborly","neighbors","neighbour","neighbourhood","neighbourhoods","neighbouring","neighbourliness","neighbourly","neighbours","Neither","neither","nekton","nelfinavir","nematode","nematodes","nembutal","nemertean","nemertina","nemertine","nemeses","nemesis","nemophila","nentsi","nentsy","neo","neobiotic","neoclassic","neoclassical","neoclassicism","neoclassicist","neoclassicistic","neocolonialism","neocon","neoconservatism","neoconservative","neocortex","neocortical","neodymium","neoencephalon","neoexpressionism","neoliberal","neoliberalism","neolith","neolithic","neologism","neologist","neology","neomycin","neon","neonatal","neonate","neonatology","neopallium","neophobia","neophyte","neoplasia","neoplasm","neoplastic","neoprene","neoromanticism","neostigmine","neotenic","neotenous","neoteny","neotony","Nepal","nepal","nepalese","nepali","nepheline","nephelinite","nephelite","nephew","nephews","nephology","nephoscope","nephralgia","nephrectomy","nephridia","nephridium","nephrite","nephritic","nephritis","nephroangiosclerosis","nephroblastoma","nephrocalcinosis","nephrolith","nephrolithiasis","nephrology","nephron","nephropathy","nephroptosia","nephroptosis","nephrosclerosis","nephrosis","nephrotomy","nephrotoxic","nephrotoxin","nephthytis","nepotism","nepotist","neptunium","nerd","nerds","nereid","nereides","nerita","neritic","neritid","neritina","nerve","nerveless","nervelessly","nervelessness","nerveroot","nerves","nervier","nerviest","nervily","nervous","nervously","nervousness","nervure","nervus","nervy","nescience","nescient","ness","nessie","nest","nester","nestle","nestled","nestles","nestling","nestorian","nests","net","netball","nether","Netherland","netherland","Netherlands","netherlands","nethermost","netherworld","netkeeper","netlike","netmail","netminder","nets","nett","netted","netting","nettle","nettled","nettlesome","network","networking","networklike","networks","neumann","neural","neuralgia","neuralgic","neuralgy","neurasthenia","neurasthenic","neurectomy","neurilemma","neurilemoma","neurinoma","neuritis","neuroanatomic","neuroanatomical","neuroanatomy","neurobiological","neurobiologist","neurobiology","neuroblast","neuroblastoma","neurochemical","neurodermatitis","neuroendocrine","neuroepithelioma","neuroepithelium","neuroethics","neurofibroma","neurofibromatosis","neurogenesis","neurogenic","neuroglia","neurogliacyte","neuroglial","neurohormone","neurohypophyses","neurohypophysis","neurolemma","neuroleptic","neurolinguist","neurolinguistics","neurologic","neurological","neurologist","neurology","neurolysin","neuroma","neuromarketing","neuromata","neuromatous","neuromotor","neuromuscular","neuron","neuronal","neurone","neuronic","neurons","neurontin","neuropathy","neurophysiological","neurophysiology","neuropil","neuropile","neuroplasty","neuropsychiatric","neuropsychiatry","neuropsychological","neuropsychology","neuroptera","neuropteran","neuropteron","neurosarcoma","neuroscience","neuroscientist","neuroses","neurosis","neurosurgeon","neurosurgery","neurosyphilis","neurotic","neurotically","neuroticism","neurotoxic","neurotoxin","neurotransmitter","neurotropic","neurotropism","neuter","neutered","neutering","neutral","neutralisation","neutralise","neutralised","neutralises","neutralising","neutralism","neutralist","neutrality","neutralization","neutralize","neutralized","neutralizes","neutralizing","neutrino","neutron","neutropenia","neutrophil","neutrophile","neutrophils","NEV.","Nev.","nev.","nevada","neve","never","nevermore","Nevertheless","nevertheless","nevi","nevirapine","Nevis","nevis","nevus","New","new","newbie","newborn","newcomer","newcomers","newel","newer","newest","newfangled","newfound","newly","newlywed","newmarket","newness","news","newsagent","newsboy","newsbreak","newscast","newscaster","newsdealer","newsflash","newsier","newsiest","newsless","newsletter","newsman","newsmonger","newspaper","newspapering","newspaperman","newspapers","newspaperwoman","newspeak","newsperson","newsprint","newsreader","newsreel","newsroom","newssheet","newsstand","newsvendor","newswoman","newsworthiness","newsworthy","newswriter","newsy","newt","newtonian","Newzealand","newzealand","Next","next","nexus","NFL","nfl","ng","nga","ngb","ngf","ngo","ngu","ngultrum","ngwee","NHL","nhl","niacin","nib","nibbed","nibbing","nibble","nibbler","nibbles","nibbling","nibelung","nibelungen","niblick","nicad","nicaean","Nicaragua","nicaragua","nicaraguan","nice","nicely","nicene","niceness","nicer","nicety","niche","niches","nick","nicked","nickel","nickelled","nickelling","nickelodeon","nicker","nicking","nicknack","nickname","nicknamed","nicknames","nicknaming","nicks","nicotine","nictate","nictation","nictitate","nictitation","nicu","nidaros","nidation","niddm","nidi","nidicolous","nidified","nidifies","nidifugous","nidify","nidus","niece","nieces","nielli","niello","nierembergia","nifedipine","niff","niffy","niftier","niftiest","nifty","nigella","Niger","niger","Nigeria","nigeria","nigerian","nigerien","nigga","niggard","niggardliness","niggardly","niggardness","niggas","nigger","niggle","niggler","niggles","niggling","nigh","nigher","nighest","night","nightbird","nightcap","nightclothes","nightclub","nightclubs","nightcrawler","nightdress","nighted","nightfall","nightgown","nighthawk","nightie","nightjar","nightlife","nightlong","nightly","nightmare","nightmares","nightmarish","nightrider","nights","nightshade","nightshirt","nightspot","nightstick","nighttime","nightwalker","nightwear","nightwork","nigrified","nigrifies","nigrify","nih","nihil","nihilism","nihilist","nihilistic","nihility","nihon","nij","nil","nilgai","nilotic","nilpotent","nim","nimbi","nimble","nimbleness","nimblewill","nimbly","nimbostrati","nimbostratus","nimbus","nimby","nimiety","nincompoop","nine","ninefold","ninepence","ninepenny","ninepin","niner","nineteen","nineteenth","nineties","ninetieth","ninety","ninhursag","ninib","ninja","ninjitsu","ninjutsu","ninkharsag","ninny","ninon","ninth","nintoo","niobite","niobium","nip","nipped","nipper","nippier","nippiest","nipping","nipple","nipples","nippon","nipponese","nippy","nipr","nips","niqaabi","niqab","nirvana","nisi","nissan","nist","nisus","nit","niter","nitid","nitpick","nitpicker","nitpicking","nitpicks","nitramine","nitrate","nitrating","nitrazepam","nitre","nitric","nitride","nitrification","nitrified","nitrifies","nitrify","nitril","nitrile","nitrite","nitrobacteria","nitrobacterium","nitrobenzene","nitrocalcite","nitrocellulose","nitrochloroform","nitrochloromethane","nitrocotton","nitrofuran","nitrofurantoin","nitrogen","nitrogenase","nitrogenise","nitrogenize","nitrogenous","nitroglycerin","nitroglycerine","nitrosobacteria","nitrostat","nitrous","nittier","nittiest","nitty","nitweed","nitwit","nitwitted","Niue","niue","nix","nixed","nixes","njorth","nlp","nlrb","nm","nmr","nne","nnrti","nnw","No","no","NO.","No.","no.","noaa","noachian","nob","nobble","nobelium","nobility","noble","nobleman","nobleness","nobles","noblesse","noblest","noblewoman","nobly","Nobody","nobody","noc","nocent","nociceptive","nock","noctambulation","noctambulism","noctambulist","noctiluca","noctilucae","noctilucent","noctuid","nocturia","nocturnal","nocturnally","nocturne","nod","nodded","nodding","noddle","node","nodes","nodi","nods","nodular","nodulated","nodule","noduled","nodulose","nodus","noel","noemi","noes","noesis","noetic","nog","noggin","nogging","nohow","noise","noiseless","noiselessly","noiselessness","noisemaker","noises","noisier","noisiest","noisily","noisiness","noisome","noisomeness","noisy","nol.pros.","noma","nomad","nomadic","nombril","nomen","nomenclature","nomenklatura","nomia","nomina","nominal","nominalism","nominalist","nominalistic","nominally","nominate","nominated","nominates","nominating","nomination","nominations","nominative","nominator","nominee","nominees","nomogram","nomograph","nomothetic","non","non-accrual","non-accruing","non-alcoholic","non-answer","non-auto","non-automotive","non-binding","non-building","non-caffeine","non-call","non-callable","non-cash","non-clients","non-communist","non-communists","non-competitive","non-controlling","non-convertible","non-core","non-daily","non-dairy-creamer","non-deductible","non-defense","non-dischargable","non-drug","non-dual","non-duck","non-economical","non-encapsulating","non-enforcement","non-equity","non-exclusive","Non-executive","non-executive","non-farm","non-financial","non-firm","non-food","non-horticultural","Non-interest","non-interest","non-interstate","non-interventionist","non-invasive","non-lethal","non-life","non-mega","non-member","non-packaging","non-patent","non-performing","non-pregnant","non-prescription","non-profit","non-public","non-recourse","non-recurring","non-regulated","non-religious","Non-residential","non-residential","non-retail","non-sales","Non-smoking","non-smoking","non-staple","non-strategic","non-striking","non-subscription","non-toxic","non-union","non-user","non-violent","non-viral","non-virulent","non-volatile","non-voting","non-warranty","non-wealthy","non-working","nonabsorbency","nonabsorbent","nonabsorptive","nonacceptance","nonaccomplishment","nonachievement","nonachiever","nonadaptive","nonaddictive","nonadhesive","nonadjacent","nonadsorbent","nonadsorptive","nonage","nonaged","nonagenarian","nonaggression","nonaggressive","nonagon","nonalcoholic","nonaligned","nonalignment","nonalinement","nonallele","nonappearance","nonappointive","nonarbitrable","nonarbitrary","nonarboreal","nonassertive","nonassociative","nonastringent","nonattendance","nonattender","nonautonomous","nonbearing","nonbeing","nonbeliever","nonbelligerent","noncaloric","noncandidate","noncarbonated","noncausal","noncausative","nonce","noncellular","nonchalance","nonchalant","nonchalantly","nonchristian","nonchurchgoing","noncitizen","noncivilised","noncivilized","nonclassical","noncollapsable","noncollapsible","noncolumned","noncom","noncombatant","noncombinative","noncombining","noncombustible","noncommercial","noncommissioned","noncommittal","noncommunicable","noncompetitive","noncompetitively","noncompliance","noncompliant","noncomprehensive","noncomprehensively","nonconcentric","nonconducting","nonconductive","nonconductor","nonconformance","nonconforming","nonconformism","nonconformist","nonconformity","nonconscious","noncontagious","noncontentious","noncontinuous","noncontroversial","nonconvergent","noncritical","noncrucial","noncrystalline","noncurrent","noncyclic","noncyclical","nondeductible","nondenominational","nondescript","nondevelopment","nondigestible","nondisjunction","nondisposable","nondrinker","nondriver","none","nonechoic","noneffervescent","nonelected","nonelective","nonenterprising","nonentity","nonenzymatic","nonequivalence","nonequivalent","nonessential","nonesuch","nonetheless","nonevent","nonexempt","nonexistence","nonexistent","nonexplorative","nonexploratory","nonexplosive","nonextant","nonextensile","nonfat","nonfatal","nonfeasance","nonfiction","nonfictional","nonfigurative","nonfinancial","nonfinite","nonfissile","nonfissionable","nonflammable","nonflavored","nonflavoured","nonflowering","nonfunctional","nonglutinous","nongranular","nongregarious","nonhairy","nonharmonic","nonhereditary","nonheritable","nonhierarchic","nonhierarchical","nonhuman","nonimitative","nonimmune","nonindulgence","nonindulgent","nonindustrial","noninfectious","noninflammatory","noninheritable","noninstitutional","noninstitutionalised","noninstitutionalized","nonintegrated","nonintellectual","noninterchangeable","noninterference","nonintersecting","nonintervention","noninvasive","nonionic","nonionised","nonionized","nonjudgmental","nonkosher","nonleaded","nonlegal","nonlethal","nonlexical","nonlexically","nonlinear","nonlinguistic","nonliteral","nonliterary","nonliterate","nonliving","nonmagnetic","nonmandatory","nonmaterial","nonmeaningful","nonmechanical","nonmechanistic","nonmedicinal","nonmember","nonmetal","nonmetallic","nonmetamorphic","nonmigratory","nonmilitary","nonmodern","nonmonotonic","nonmotile","nonmoving","nonmusical","nonnative","nonnatural","nonnegative","nonnomadic","nonnormative","nonobjective","nonobligatory","nonobservance","nonobservant","nonoccurrence","nonopening","nonoperational","nonoscillatory","nonparallel","nonparametric","nonparasitic","nonpareil","nonparticipant","nonparticipation","nonparticulate","nonpartisan","nonpartisanship","nonpartizan","nonpasserine","nonpayment","nonperformance","nonperiodic","nonperson","nonpersonal","nonphotosynthetic","nonphysical","nonplus","nonplused","nonplussed","nonplussing","nonpoisonous","nonpolar","nonpolitical","nonporous","nonpregnant","nonprehensile","nonprescription","nonproductive","nonprofessional","nonprofit","nonprognosticative","nonprogressive","nonproliferation","nonproprietary","nonprotractile","nonpsychoactive","nonpublic","nonpurulent","nonracial","nonracist","nonradioactive","nonrandom","nonrational","nonreader","nonreciprocal","nonreciprocating","nonrecreational","nonreflecting","nonreflective","nonremittal","nonrenewable","nonrepetitive","nonrepresentational","nonrepresentative","nonresident","nonresidential","nonresilient","nonresinous","nonresiny","nonresistance","nonresistant","nonresonant","nonrestrictive","nonreticulate","nonretractable","nonretractile","nonreturnable","nonreversible","nonrhythmic","nonrigid","nonruminant","nonsectarian","nonsegmental","nonsegregated","nonsense","nonsensical","nonsensicality","nonsensitive","nonsexual","nonsignificant","nonskid","nonslip","nonslippery","nonsmoker","nonsocial","nonsovereign","nonspatial","nonspeaking","nonspecific","nonspecifically","nonspherical","nonstandard","nonstarter","nonsteroid","nonsteroidal","nonstick","nonstop","nonstructural","nonsubjective","nonsubmergible","nonsubmersible","nonsuch","nonsuppurative","nonsurgical","nonsweet","nonsyllabic","nonsymbiotic","nonsynchronous","nonsynthetic","nontaxable","nontechnical","nontelescopic","nontelescoping","nonterritorial","nonthermal","nontoxic","nontraditional","nontransferable","nontranslational","nontransmissible","nontricyclic","nonturbulent","nonuniform","nonuniformity","nonunion","nonunionised","nonunionized","nonuple","nonvenomous","nonverbal","nonverbally","nonviable","nonviolence","nonviolent","nonviolently","nonviscid","nonvisual","nonvolatile","nonvolatilisable","nonvolatilizable","nonvoluntary","nonwashable","nonwoody","nonworker","noob","noodle","noodles","nook","nookie","nooky","noon","noonday","noontide","noose","nopal","Nope","nope","nor","noradrenaline","nordic","noreaster","noreg","norepinephrine","norethandrolone","norethindrone","norethynodrel","norflex","norge","norgestrel","noria","norlutin","norm","normal","normalcy","normalisation","normalise","normalised","normaliser","normalises","normalising","normality","normalization","normalize","normalized","normalizer","normalizes","normalizing","normally","norman","normandy","normative","normodyne","normotensive","normothermia","norms","norse","norseman","North","north","northbound","northeast","northeaster","northeasterly","northeastern","northeastward","northeastwardly","norther","northerly","Northern","northern","northerner","northernmost","northernness","northland","northman","northmost","northward","northwards","northwest","northwester","northwesterly","northwestern","northwestward","northwestwardly","nortriptyline","norvasc","norvir","Norway","norway","norwegian","NOS.","Nos.","nos.","nose","nosebag","noseband","nosebleed","nosecount","nosed","nosedive","nosegay","noseless","nosepiece","noses","nosewheel","nosey","nosh","nosher","noshes","noshing","nosier","nosiest","nosiness","nosing","nosocomial","nosohusial","nosology","nostalgia","nostalgic","nostalgically","nostoc","nostril","nostrum","nosy","NOT","Not","not","NOT'VE","Not've","not've","nota","notability","notable","notably","notarise","notarises","notarize","notarizes","notary","notate","notating","notation","notch","notched","notching","note","notebook","notecase","noted","notepad","notepaper","notes","noteworthy","nothing","nothingness","nothosaur","notice","noticeability","noticeable","noticeableness","noticeably","noticed","noticer","notices","noticing","notifiable","notification","notified","notifies","notify","notifying","noting","notion","notional","notions","notochord","notoriety","notorious","notoriously","notornis","notturno","notum","NOTVE","Notve","notve","notwithstanding","NOT\u2019VE","Not\u2019ve","not\u2019ve","nougat","nought","noumena","noumenon","noun","nouns","nourish","nourished","nourishes","nourishing","nourishment","nous","nov","NOV.","Nov.","nov.","nova","novae","novate","novation","novel","novelette","novelisation","novelise","novelist","novelists","novelization","novelize","novella","novelle","novels","novelty","november","novena","novenae","novice","noviciate","novillada","novillero","novitiate","novobiocin","novocain","novocaine","Now","now","nowadays","nowhere","nowise","nowness","nowrooz","nowruz","noxious","noxiously","noxiousness","nozzle","npa","npc","nra","nrc","nrem","nrl","nrna","nro","nrti","nsa","nsaid","nsc","NSE","nse","nsf","nsu","nsw","nswc","NT","nt","nth","ntis","nuance","nuances","nub","nubbin","nubbiness","nubble","nubbly","nubby","nubecula","nubeculae","nubile","nucelli","nucellus","nucha","nuchae","nuclear","nuclease","nucleate","nucleated","nucleates","nucleating","nuclei","nucleole","nucleoli","nucleolus","nucleon","nucleonics","nucleoplasm","nucleoprotein","nucleoside","nucleosynthesis","nucleotide","nucleotides","nucleus","nude","nudeness","nudge","nudger","nudges","nudging","nudibranch","nudism","nudist","nudity","nudnick","nudnik","nugatory","nugget","nuisance","nuke","nukes","nuking","null","nullah","nullification","nullified","nullifier","nullifies","nullify","nullifying","nullipara","nulliparae","nullity","numb","numbat","Number","number","numbered","numbering","numberless","numberplate","numbers","numbfish","numbfishes","numbing","numbly","numbness","numdah","numen","numerable","numeracy","numeral","numerate","numeration","numerator","numeric","numerical","numerically","numerological","numerologist","numerology","numerosity","numerous","numerousness","numidian","numidinae","numina","numinous","numismatics","numismatist","numismatologist","numismatology","nummulite","numskull","nun","nuncio","nung","nunnery","nuns","nuprin","nuptial","nuptials","nurnberg","nurse","nursed","nurseling","nursemaid","nurser","nursery","nurseryman","nurses","nursing","nursling","nurtural","nurturance","nurturant","nurture","nurtured","nurtures","nurturing","nut","nutate","nutation","nutbrown","nutcase","nutcracker","nutgrass","nuthatch","nuthouse","nutlet","nutlike","nutmeg","nutria","nutrient","nutrients","nutrify","nutriment","nutrition","nutritional","nutritionally","nutritionary","nutritionist","nutritious","nutritiousness","nutritive","nutritiveness","nuts","nutsedge","nutshell","nutted","nutter","nuttier","nuttiest","nuttily","nutting","nutty","nuwc","nuzzle","nuzzles","nuzzling","nwbn","nwbw","nyasaland","nybble","nyctalopia","nyctophobia","nycturia","nydrazid","nylghai","nylghau","nylon","nymph","nympha","nymphae","nymphalid","nymphet","nympho","nympholepsy","nympholept","nymphomania","nymphomaniac","nymphomaniacal","nypa","nyse","nystagmus","nystan","nystatin","NZ","nz","N\u2019T","n\u2019t","O'CLOCK","O'clock","o'clock","o.d.","o.k.","oaf","oafish","oak","oaken","oaks","oakum","oar","oarfish","oarfishes","oarlock","oarsman","oarsmanship","oarswoman","oas","oases","oasis","oast","oat","oatcake","oaten","oath","oatmeal","oats","obbligato","obduracy","obdurate","obdurately","obeah","obeche","obechi","obedience","obedient","obediently","obeisance","obeli","obelion","obelisk","obelus","obese","obesity","obey","obeying","obeys","obfuscate","obfuscating","obfuscation","obi","obiism","obit","obituaries","obituary","object","objected","objectification","objectified","objectifies","objectify","objectifying","objecting","objection","objectionable","objectionableness","objectionably","objections","objective","objectively","objectiveness","objectives","objectivity","objector","objects","objurgate","objurgation","oblanceolate","oblate","oblateness","obligate","obligated","obligates","obligati","obligating","obligation","obligational","obligations","obligato","obligatorily","obligatory","oblige","obliged","obliger","obliges","obliging","obligingly","obligingness","oblique","obliquely","obliqueness","obliquity","obliterable","obliterate","obliterated","obliterates","obliterating","obliteration","obliterator","oblivion","oblivious","obliviousness","oblong","oblongness","obloquy","obnoxious","obnoxiously","obnoxiousness","obnubilate","oboe","oboist","oboli","obolus","obovate","obscene","obscenely","obscenity","obscurantism","obscurantist","obscure","obscured","obscurely","obscureness","obscures","obscuring","obscurity","obsequious","obsequiously","obsequiousness","obsequy","observable","observably","observance","observant","observantly","observation","observational","observations","observatory","observe","observed","observer","observers","observes","observing","observingly","obsess","obsessed","obsesses","obsessing","obsession","obsessional","obsessionally","obsessions","obsessive","obsessively","obsessiveness","obsessivity","obsidian","obsolesce","obsolescence","obsolescent","obsolete","obsoleteness","obstacle","obstacles","obstetric","obstetrical","obstetrician","obstetrics","obstinacy","obstinance","obstinate","obstinately","obstipate","obstipation","obstreperous","obstreperously","obstreperousness","obstruct","obstructed","obstructer","obstructing","obstruction","obstructionism","obstructionist","obstructive","obstructively","obstructor","obstructs","obstruent","obtain","obtainable","obtained","obtaining","obtainment","obtains","obtention","obtrude","obtrusive","obtrusively","obtrusiveness","obtund","obtunds","obturate","obturates","obturator","obtuse","obtusely","obtuseness","obverse","obviate","obviates","obviating","obviation","obvious","obviously","obviousness","oca","ocarina","occasion","occasional","occasionally","occasioning","occasions","occident","occidental","occidentalise","occidentalize","occipita","occipital","occiput","occitan","occlude","occluded","occludes","occluding","occlusion","occlusive","occult","occultation","occultism","occultist","occupancy","occupant","occupants","occupation","occupational","occupations","occupied","occupier","occupies","occupy","occupying","occur","occuring","occurred","occurrence","occurrences","occurrent","occurring","occurs","ocean","oceanaria","oceanarium","oceanaut","oceanfront","oceangoing","oceanic","oceanica","oceanid","oceanides","oceanographer","oceanography","oceanology","oceans","ocellated","ocelli","ocellus","ocelot","ocher","ochlocracy","ochre","ochrea","ochreae","ochronosis","ockham","OCLOCK","Oclock","oclock","ocotillo","ocreae","oct","OCT.","Oct.","oct.","octad","octagon","octagonal","octahedra","octahedron","octal","octameter","octane","octangular","octant","octave","octavian","octavo","octet","octette","octillion","october","octoberfest","octogenarian","octonary","octopi","octopod","octopus","octoroon","octosyllabic","octosyllable","octroi","octuple","ocular","oculi","oculism","oculist","oculomotor","oculus","odalisque","odd","oddball","oddest","oddish","oddity","oddly","oddment","oddness","odds","ode","odea","odesa","odeum","odious","odiously","odiousness","odist","odium","odo","odometer","odonate","odontalgia","odontaspididae","odontaspis","odontiasis","odontoglossum","odontology","odor","odoriferous","odorize","odorless","odorous","odors","odour","odourise","odourless","odours","odovacar","odovakar","odynophagia","odyssey","oecumenic","oecumenical","oecumenism","oed","oedema","oedemata","oengus","oenologist","oenology","oenomel","oenophile","oesophagi","oesophagitis","oesophagoscope","oesophagus","oesophaguses","oesterreich","oestradiol","oestriol","oestrogen","oestrone","oeuvre","Of","of","off","offal","offbeat","offence","offenceless","offences","offend","offended","offender","offenders","offending","offends","offense","offenseless","offenses","offensive","offensively","offensiveness","offer","offered","offerer","offering","offerings","offeror","offers","offhand","offhanded","offhandedly","office","officeholder","officer","officers","offices","official","officialdom","officialese","officialise","officialize","officially","officials","officiant","officiate","officiates","officiating","officiation","officious","officiously","officiousness","offing","offish","offline","offload","offloading","offloads","offprint","offsaddle","offset","offsets","offsetting","offshoot","offshore","offside","offsides","offspring","offstage","oft","often","oftener","oftenness","oftentimes","ofttimes","ogalala","ogdoad","ogee","ogive","ogle","ogler","ogles","ogling","ogre","ogress","Oh","oh","ohmage","ohmic","ohmmeter","oig","oil","oilbird","oilcan","oilcloth","oiled","oiler","oilfield","oilfish","oilier","oiliest","oiliness","oiling","oilman","oilpaper","oilrig","oils","oilseed","oilskin","oilstone","oilstove","oily","oink","ointment","ois","ojibway","ok","oka","okapi","okay","okaying","okays","okeh","okenfuss","okey","oki","OKLA.","Okla.","okla.","oklahoma","okra","oks","ola","old","olden","older","oldest","oldie","oldies","oldish","oldline","oldness","olds","oldster","oldtimer","oldwench","oldwife","oldwives","olea","oleaceous","oleaginous","oleaginousness","oleander","oleaster","olecranon","oled","olefin","olefine","olein","oleo","oleomargarine","oleophilic","oleophobic","oleoresin","oleum","olfaction","olfactive","olfactory","olibanum","oligarch","oligarchic","oligarchical","oligarchy","oligo","oligochaete","oligoclase","oligodactyly","oligodendria","oligodendrocyte","oligodendroglia","oligodontia","oligomenorrhea","oligonucleotide","oligonucleotides","oligopoly","oligos","oligosaccharide","oligospermia","oliguria","olimbos","olive","olivelike","olivenite","olives","olivine","olla","olm","ology","olympian","olympic","olympics","Oman","oman","omani","omasa","omasum","omayyad","omayyades","omb","ombu","ombudsman","omega","omelet","omelets","omelette","omelettes","omen","omenta","omentum","omeprazole","omerta","omicron","ominous","ominously","omissible","omission","omissions","omissive","omit","omits","omitted","omitting","ommastrephes","ommatidia","ommatidium","ommiad","ommiades","omnibus","omnidirectional","omnifarious","omnipotence","omnipotent","omnipresence","omnipresent","omnirange","omniscience","omniscient","omnivore","omnivorous","omophagia","omphalocele","omphalos","omphaloskepsis","omphalus","On","on","onager","onagri","onanism","onanist","Once","once","onchocerciasis","oncidium","oncogene","oncogenes","oncologic","oncological","oncologist","oncology","oncoming","oncovin","One","one","onega","oneiric","oneirism","oneiromancer","oneiromancy","oneness","onerous","onerously","onerousness","ones","oneself","onetime","ongoing","oni","onion","onions","onionskin","online","onlooker","onlookers","Only","only","onomancer","onomancy","onomastic","onomasticon","onomastics","onomatomania","onomatopoeia","onomatopoeic","onomatopoeical","onomatopoetic","onopordon","onrush","onset","onshore","onside","onslaught","onstage","onto","ontogenesis","ontogenetic","ontogeny","ontological","ontology","onus","onward","onwards","onycholysis","onychophoran","onychosis","onymous","onyx","onyxis","oocyte","oocytes","oodles","oogenesis","oogonia","oogonium","ooh","oohing","oology","oolong","oomph","oophorectomy","oophoritis","oophorosalpingectomy","oops","oosphere","oospore","ootheca","oothecae","ootid","ooze","oozes","oozier","ooziest","oozing","oozy","opacification","opacifies","opacify","opacity","opah","opal","opalesce","opalescence","opalescent","opaline","opalise","opalize","opaque","opaquely","opaqueness","opcw","opec","open","openbill","opencast","opencut","opened","opener","openhanded","openhandedness","openhearted","opening","openings","openly","openmouthed","openness","opens","openwork","opepe","opera","operable","operagoer","operand","operant","operas","operate","operated","operates","operatic","operating","operation","operational","operationalism","operationalist","operationally","operations","operative","operatively","operatives","operator","operators","opercula","operculate","operculated","operculum","operetta","operon","operons","operose","operoseness","ophidia","ophidian","ophidism","ophiolatry","ophryon","ophthalmectomy","ophthalmia","ophthalmic","ophthalmitis","ophthalmologist","ophthalmology","ophthalmoplegia","ophthalmoscope","ophthalmoscopy","opiate","opiliones","opine","opines","opining","opinion","opinionated","opinionative","opinions","opisthognathous","opisthorchiasis","opisthotonos","opium","opopanax","oporto","opossum","opponent","opponents","opportune","opportunely","opportuneness","opportunism","opportunist","opportunistic","opportunities","opportunity","opposable","oppose","opposed","opposer","opposes","opposing","opposite","oppositely","oppositeness","opposites","opposition","oppositive","oppress","oppressed","oppresses","oppressing","oppression","oppressions","oppressive","oppressively","oppressiveness","oppressor","opprobrious","opprobrium","oppugn","opsin","opsonin","opsonisation","opsonization","opsonize","opsonizing","opt","optative","opted","optic","optical","optically","optician","optics","optima","optimal","optimally","optimisation","optimise","optimised","optimises","optimising","optimism","optimist","optimistic","optimistically","optimization","optimize","optimized","optimizes","optimizing","optimum","opting","option","optional","optionally","optionless","options","optometrist","optometry","opts","opulence","opulent","opulently","opus","opv","Or","or","ora","orach","orache","oracle","oracular","orad","oradexon","oral","orally","orang","orange","orangeade","orangeness","orangery","oranges","orangewood","orangish","orangutan","orangutang","orasone","orate","orates","orating","oration","orator","oratorical","oratorio","oratory","orb","orbicular","orbiculate","orbit","orbital","orbitale","orbiter","orbiting","orbits","orbitual","orca","orchard","orchards","orchestra","orchestral","orchestrate","orchestrated","orchestrates","orchestrating","orchestration","orchestrator","orchid","orchidalgia","orchidectomy","orchiectomy","orchil","orchiopexy","orchis","orchitis","orchotomy","orcus","ordain","ordained","ordainer","ordaining","ordains","ordeal","order","ordered","orderer","ordering","orderliness","orderly","orders","ordinal","ordinance","ordinand","ordinarily","ordinariness","ordinary","ordinate","ordination","ordnance","ordure","ore","ORE.","Ore.","ore.","oregano","oregon","oreide","oreo","organ","organa","organdie","organdy","organelle","organelles","organic","organically","organicism","organicistic","organification","organisation","organisational","organisations","organise","organised","organiser","organisers","organises","organising","organism","organismal","organismic","organisms","organist","organization","organizational","organizationally","organizations","organize","organized","organizer","organizers","organizes","organizing","organon","organophosphate","organs","organza","orgasm","orgiastic","orgy","oriel","orient","oriental","orientalise","orientalist","orientalize","orientalizing","orientate","orientated","orientates","orientating","orientation","orientations","oriented","orienting","orients","orifice","oriflamme","origami","origanum","origin","original","originalism","originality","originally","originals","originate","originated","originates","originating","origination","originative","originator","origins","orinasal","orinase","oriole","orison","orlop","ormer","ormolu","ormuzd","ornament","ornamental","ornamentalism","ornamentalist","ornamentally","ornamentation","ornamenting","ornaments","ornate","ornately","ornateness","orneriness","ornery","ornithine","ornithischian","ornithological","ornithologist","ornithology","ornithomimid","ornithopod","ornithopoda","ornithopter","ornithosis","orogeny","orography","oroide","orology","oropharyngeal","oropharynx","orotund","orphan","orphanage","orphaned","orphanhood","orphenadrine","orphic","orphrey","orpiment","orpin","orpine","orrery","orris","orrisroot","orthicon","orthochorea","orthoclase","orthodontia","orthodontic","orthodontics","orthodontist","orthodonture","orthodox","orthodoxy","orthoepist","orthoepy","orthogonal","orthogonality","orthographic","orthography","orthomolecular","orthomyxovirus","orthopaedic","orthopaedics","orthopaedist","orthopedic","orthopedical","orthopedics","orthopedist","orthophosphate","orthopnea","orthopter","orthoptera","orthopteran","orthopteron","orthoptic","orthoptics","orthoptist","orthoscope","orthostatic","orthotropous","ortolan","ortygan","orudis","orumiyeh","oruvail","orwellian","oryx","orzo","os","osar","oscar","oscheocele","oscheocoele","oscillate","oscillates","oscillating","oscillation","oscillations","oscillator","oscillatory","oscillogram","oscillograph","oscilloscope","oscine","oscitance","oscitancy","oscitant","oscula","osculate","osculates","osculation","osculator","osculum","OSHA","osha","osier","osmanli","osmiridium","osmitrol","osmium","osmoreceptor","osmosis","osmotic","osmotically","osmund","osprey","osseous","ossicle","ossicular","ossiculate","ossiculum","ossiferous","ossification","ossified","ossifies","ossify","ossuary","osteal","osteitis","ostensible","ostensibly","ostensive","ostensorium","ostentate","ostentates","ostentation","ostentatious","ostentatiously","ostentatiousness","osteoarthritis","osteoblast","osteoblastoma","osteoblasts","osteochondroma","osteoclasis","osteoclast","osteoclasts","osteocyte","osteodystrophy","osteologer","osteologist","osteology","osteolysis","osteoma","osteomalacia","osteomata","osteomyelitis","osteopath","osteopathist","osteopathy","osteopetrosis","osteophyte","osteoporosis","osteosarcoma","osteosclerosis","osteostracan","osteotomy","ostia","ostiarius","ostiary","ostinato","ostiole","ostium","ostler","ostomy","ostracise","ostracised","ostracises","ostracising","ostracism","ostracize","ostracized","ostracizes","ostracizing","ostracod","ostracoderm","ostrich","otalgia","otc","Other","other","otherness","otherwise","otherworld","otherworldliness","otherworldly","othman","otho","othonna","otic","otiose","otitis","otoe","otoganglion","otolaryngologist","otolaryngology","otologist","otology","otoplasty","otorhinolaryngologist","otorhinolaryngology","otorrhea","otosclerosis","otoscope","ototoxic","ottar","otter","otterhound","ottoman","ottomans","oubliette","ouch","OUGHT","Ought","ought","OUGHTN'T","Oughtn't","oughtn't","OUGHTNT","Oughtnt","oughtnt","OUGHTN\u2019T","Oughtn\u2019t","oughtn\u2019t","ouguiya","ounce","ounces","Our","our","ours","ourself","ourselves","ousel","oust","ousted","ouster","ousting","ousts","out","outage","outages","outback","outbalance","outbalances","outbid","outbidding","outbids","outboard","outbound","outbrave","outbraves","outbreak","outbreaks","outbred","outbreed","outbreeds","outbuilding","outburst","outcall","outcalls","outcast","outcaste","outclass","outclassed","outclasses","outcome","outcomes","outcried","outcries","outcrop","outcropped","outcropping","outcrops","outcry","outdated","outdid","outdistance","outdistanced","outdistances","outdistancing","outdo","outdoes","outdone","outdoor","outdoors","outdoorsman","outdoorswoman","outdoorsy","outdraw","outdraws","outer","outercourse","outermost","outerwear","outface","outfaces","outfall","outfield","outfielder","outfight","outfit","outfits","outfitted","outfitter","outfitting","outflank","outflanking","outflanks","outflow","outflowing","outfox","outfoxes","outgas","outgases","outgassed","outgassing","outgeneral","outgeneralled","outgeneralling","outgo","outgoer","outgoing","outgrew","outgrow","outgrowing","outgrown","outgrows","outgrowth","outguess","outguesses","outhouse","outing","outings","outlander","outlandish","outlandishly","outlandishness","outlast","outlasted","outlasting","outlasts","outlaw","outlawed","outlawing","outlawry","outlaws","outlay","outlays","outlet","outlets","outlier","outliers","outline","outlined","outlines","outlining","outlive","outlives","outliving","outlook","outlying","outman","outmaneuver","outmaneuvere","outmaneuvered","outmaneuvering","outmaneuvers","outmanned","outmanning","outmanoeuvre","outmanoeuvred","outmanoeuvres","outmanoeuvring","outmans","outmarch","outmarches","outmatch","outmatches","outmode","outmoded","outmodes","outmost","outnumber","outnumbered","outnumbering","outnumbers","outpace","outpaced","outpaces","outpacing","outpatient","outperform","outperformed","outperforming","outperforms","outplay","outplaying","outplays","outpoint","outport","outpost","outpouring","output","outputing","outputs","outputted","outputting","outrage","outraged","outrageous","outrageously","outrageousness","outrages","outrange","outranges","outrank","outranking","outranks","outre","outreach","outride","outrider","outrides","outrigged","outrigger","outright","outrival","outroar","outroars","outrun","outrunning","outruns","outs","outsail","outsails","outscore","outscores","outscoring","outsell","outselling","outsells","outset","outshine","outshines","outshout","Outside","outside","outsider","outsiders","outsize","outsized","outskirt","outskirts","outsmart","outsmarting","outsmarts","outsold","outsole","outsource","outsources","outsourcing","outspan","outspanned","outspanning","outspans","outspoken","outspokenly","outspokenness","outspread","outstanding","outstandingly","outstare","outstares","outstation","outstay","outstays","outstretched","outstrip","outstripped","outstripping","outstrips","outstroke","outtake","outtakes","outthrust","outturn","outvie","outvote","outvotes","outward","outwardly","outwardness","outwards","outwear","outwears","outweigh","outweighed","outweighing","outweighs","outwit","outwits","outwitted","outwitting","outwork","ouzel","ouzo","ova","oval","ovalbumin","ovarian","ovariectomy","ovaries","ovaritis","ovary","ovate","ovation","oven","ovenbake","ovenbird","ovenware","Over","over","over-allotment","over-allotments","over-magazined","over-optimistic","over-the-counter","overabundance","overabundant","overachieve","overachievement","overachiever","overachieves","overachieving","overact","overacting","overactive","overactivity","overacts","overage","overaged","Overall","overall","overambitious","overanxiety","overanxious","overappraisal","overarch","overarches","overarching","overarm","overawe","overawed","overawing","overbalance","overbalances","overbalancing","overbear","overbearing","overbearingly","overbearingness","overbears","overbid","overbidding","overbids","overbite","overblown","overboard","overboil","overboils","overbold","overburden","overburdened","overburdening","overburdens","overbusy","overcall","overcame","overcapitalisation","overcapitalise","overcapitalises","overcapitalization","overcapitalize","overcapitalizes","overcareful","overcast","overcasting","overcasts","overcautious","overcharge","overcharges","overcharging","overclothe","overclothes","overcloud","overcoat","overcoating","overcome","overcomer","overcomes","overcoming","overcompensate","overcompensates","overcompensating","overcompensation","overconfidence","overconfident","overcook","overcooks","overcredulity","overcredulous","overcritical","overcrop","overcropped","overcropping","overcrops","overcrossing","overcrowd","overcrowds","overcultivate","overcurious","overdelicate","overdo","overdoes","overdoing","overdone","overdose","overdosed","overdoses","overdosing","overdraft","overdramatise","overdramatises","overdramatize","overdramatizes","overdraw","overdrawing","overdraws","overdress","overdressed","overdresses","overdrive","overdrives","overdue","overeager","overeat","overeating","overeats","overemotional","overemphasis","overemphasise","overemphasised","overemphasises","overemphasising","overemphasize","overemphasized","overemphasizes","overemphasizing","overenthusiastic","overestimate","overestimates","overestimating","overestimation","overexcited","overexert","overexertion","overexerts","overexploit","overexploitation","overexploits","overexpose","overexposes","overexposure","overextend","overextends","overfamiliar","overfatigue","overfed","overfeed","overfeeding","overfeeds","overfill","overfills","overflies","overflight","overflow","overflowing","overflows","overfly","overflying","overfond","overfull","overgarment","overgeneralise","overgeneralize","overgeneralizing","overgenerous","overgorge","overgreedy","overgrow","overgrown","overgrows","overgrowth","overhand","overhanded","overhang","overhanging","overhasty","overhaul","overhauled","overhauling","overhauls","overhead","overhear","overhearing","overhears","overheat","overheated","overheating","overheats","overindulge","overindulgence","overindulgent","overindulges","overindulging","overjealous","overjoy","overjoyed","overkill","overladen","overlaid","overland","overlap","overlapped","overlapping","overlaps","overlarge","overlay","overlayer","overlaying","overlays","overleaf","overleap","overlie","overlies","overlip","overload","overloaded","overloading","overloads","overlook","overlooked","overlooking","overlooks","overlord","overlordship","overly","overlying","overman","overmanned","overmanning","overmans","overmantel","overmaster","overmasters","overmodest","overmuch","overmuchness","overnice","overnight","overnighter","overpaid","overpass","overpay","overpaying","overpayment","overpays","overplay","overplaying","overplays","overplus","overpopulate","overpopulates","overpopulation","overpower","overpowering","overpoweringly","overpowers","overpraise","overpraises","overpressure","overprice","overpriced","overprices","overprint","overproduce","overproduction","overprotect","overprotecting","overprotection","overprotective","overprotects","overproud","overran","overrate","overrates","overrating","overreach","overreaches","overreaching","overreact","overreacted","overreacting","overreaction","overreacts","overreckoning","overrefine","overrefined","overrefinement","overrefines","override","overrides","overriding","overripe","overrode","overrule","overruled","overrules","overruling","overrun","overrunning","overruns","oversaw","oversea","overseas","oversee","overseeing","overseen","overseer","oversees","oversell","overselling","oversells","oversensitive","oversensitiveness","overserious","overset","oversetting","oversew","oversewn","oversexed","overshadow","overshadowed","overshadowing","overshadows","overshielding","overshoe","overshoot","overshooting","overshoots","overshot","overside","oversight","oversimplification","oversimplified","oversimplifies","oversimplify","oversimplifying","oversize","oversized","overskirt","oversleep","oversleeping","oversleeps","oversold","oversolicitous","overspecialise","overspecialize","overspend","overspending","overspends","overspill","overspread","overspreads","overstate","overstated","overstatement","overstatements","overstates","overstating","overstay","overstaying","overstays","overstep","overstepped","overstepping","oversteps","overstock","overstocking","overstrain","overstrains","overstress","overstresses","overstretch","overstretches","overstretching","overstrung","overstuff","overstuffed","overstuffs","oversubscribed","oversupplies","oversupply","oversuspicious","overt","overtake","overtaken","overtakes","overtaking","overtax","overtaxed","overtaxes","overtaxing","overthrow","overthrowing","overthrown","overthrows","overtime","overtire","overtly","overtolerance","overtone","overtones","overtop","overtopped","overtopping","overtrump","overture","overturn","overturned","overturning","overturns","overuse","overused","overuses","overusing","overutilisation","overutilization","overvaliant","overvaluation","overvalue","overvalued","overvalues","overview","overweary","overweening","overweight","overwhelm","overwhelmed","overwhelming","overwhelmingly","overwhelms","overwinter","overwintering","overwork","overworking","overworks","overwrite","overwrites","overwriting","overwrought","overzealous","oviduct","oviform","ovimbundu","ovine","oviparous","ovipositor","oviraptorid","ovoflavin","ovoid","ovoli","ovolo","ovotestes","ovotestis","ovoviviparous","ovular","ovulate","ovulates","ovulating","ovulation","ovule","ovum","owe","owed","owes","owing","owl","owlclaws","owlet","owlish","owlishly","owlt","own","owned","owner","ownerless","owners","ownership","owning","owns","ox","oxacillin","oxalacetate","oxalate","oxalic","oxalis","oxaloacetate","oxaprozin","oxazepam","oxbow","oxcart","oxen","oxeye","oxheart","oxidant","oxidants","oxidase","oxidate","oxidates","oxidation","oxidative","oxide","oxides","oxidisation","oxidise","oxidised","oxidiser","oxidises","oxidising","oxidizable","oxidization","oxidize","oxidized","oxidizer","oxidizes","oxidizing","oxidoreductase","oxidoreduction","oxime","oximeter","oxlip","oxonian","oxtail","oxtant","oxtongue","oxyacetylene","oxyacid","oxybenzene","oxycephaly","oxygen","oxygenase","oxygenate","oxygenates","oxygenation","oxygenise","oxygenize","oxyhaemoglobin","oxyhemoglobin","oxymora","oxymoron","oxyopia","oxyphenbutazone","oxyphencyclimine","oxytetracycline","oxytocic","oxytocin","oxytone","oyabun","oyster","oystercatcher","oysterfish","oysters","OZ.","Oz.","oz.","ozaena","ozena","ozocerite","ozokerite","ozone","ozonide","ozonise","ozonises","ozonize","ozonizes","ozonosphere","O\u2019CLOCK","O\u2019clock","o\u2019clock","P.M.","p.m.","PA.","Pa.","pa.","paba","pabir","pabulum","pac","paca","pace","paced","pacemaker","pacer","paces","pacesetter","pacha","pachinko","pachisi","pachouli","pachuco","pachycephalosaur","pachycephalosaurus","pachycheilia","pachyderm","pachyderma","pachydermal","pachydermatous","pachydermic","pachydermous","pachysandra","pachytene","pacific","pacifically","pacification","pacificism","pacificist","pacified","pacifier","pacifies","pacifism","pacifist","pacifistic","pacifistically","pacify","pacifying","pacing","pack","packable","package","packaged","packages","packaging","packed","packer","packet","packets","packhorse","packing","packinghouse","packman","packrat","packs","packsack","packsaddle","packthread","pact","pad","padauk","padded","padder","padding","paddle","paddlefish","paddlefishes","paddler","paddlewheel","paddling","paddock","paddymelon","pademelon","padlock","padouk","padova","padre","padrone","pads","paean","paederast","paederastic","paederasts","paederasty","paediatric","paediatrician","paediatricians","paediatrics","paedophile","paedophiles","paedophilia","paella","paeony","PAF","paf","pagad","pagan","paganise","paganism","paganize","page","pageant","pageantry","pageboy","pager","pages","paginate","pagination","paging","pagoda","pahautea","pahlevi","pahoehoe","paid","paigle","pail","pailful","paillasse","pain","pained","painful","painfully","painfulness","painkiller","painless","painlessly","pains","painstaking","painstakingly","painstakingness","paint","paintable","paintball","paintbox","paintbrush","painted","painter","painterly","painters","painting","paintings","paints","pair","paired","pairing","pairings","pairs","paisa","paise","paisley","pajama","pajamas","pakchoi","Pakistan","pakistan","pakistani","pal","palace","palaces","paladin","palaeencephalon","palaeoanthropology","palaeobiology","palaeobotany","palaeoclimatology","palaeodendrology","palaeoecology","palaeoethnography","palaeogeography","palaeogeology","palaeolithic","palaeology","palaeontological","palaeontologist","palaeontologists","palaeontology","palaeopathology","palaeornithology","palaeozoology","palaestra","palaetiology","palankeen","palanquin","palas","palatability","palatable","palatableness","palatably","palatal","palatalise","palatalised","palatalize","palatalized","palate","palatial","palatine","palatoglossal","palatopharyngoplasty","Palau","palau","palaver","palavering","pale","palea","paleae","paled","paleencephalon","palely","paleness","paleoanthropological","paleoanthropology","paleobiology","paleobotany","paleocerebellum","paleoclimatology","paleocortex","paleocortical","paleodendrology","paleoecology","paleoencephalon","paleoethnography","paleogeography","paleogeology","paleographer","paleographist","paleography","paleolith","paleolithic","paleology","paleomammalogy","paleontological","paleontologist","paleontologists","paleontology","paleopathology","paleornithology","paleostriatum","paleozoic","paleozoology","pales","Palestine","palestine","palestinian","palestra","palestrae","paletiology","palette","palfrey","palilalia","palimony","palimpsest","palindrome","paling","palingeneses","palingenesis","palingenetic","palisade","palisading","palish","pall","palladian","palladium","pallasite","pallbearer","palled","pallet","pallette","pallia","palliasse","palliate","palliation","palliative","pallid","pallidity","pallidly","pallidness","pallidum","pallier","palliest","palling","pallium","pallone","pallor","pally","palm","palmaceae","palmar","palmate","palmately","palmatifid","palmature","palmetto","palmettoes","palmier","palmiest","palming","palmist","palmister","palmistry","palmitin","palmlike","palms","palmy","palmyra","palometa","palomino","palooka","paloverde","palpability","palpable","palpably","palpate","palpates","palpating","palpation","palpatory","palpebra","palpebrate","palpebration","palpi","palpitant","palpitate","palpitating","palpitation","palpus","pals","palsgrave","palsied","palsy","palter","paltering","paltrier","paltriest","paltriness","paltry","pamelor","pampas","pamper","pamperer","pampering","pampers","pamphlet","pamphleteer","pan","panache","panadol","Panama","panama","panamanian","panamica","panamiga","panatela","pancake","pancakes","pancarditis","panchayat","panchayet","pancratia","pancratium","pancreas","pancreatectomy","pancreatic","pancreatin","pancreatitis","pancytopenia","panda","pandanus","pandar","pandeism","pandemic","pandemonium","pander","panderer","pandering","panders","pandiculation","pandied","pandies","pandowdy","pandurate","panduriform","pandy","pane","panegyric","panegyrical","panegyrist","panel","paneled","paneling","panelist","panelists","panelled","panelling","panellist","panellists","panels","panencephalitis","panenthesism","panetela","panetella","panettone","panettoni","panfish","pang","panga","pangea","pangolin","panhandle","panhandler","panhandles","panhandling","panhellenic","panhysterectomy","panic","panicked","panicking","panicky","panicle","panicled","panics","paniculate","panjabi","panjandrum","panned","pannier","pannikin","panning","panocha","panoche","panoplied","panoply","panoptic","panoptical","panopticon","panorama","panoramic","panpipe","pans","pansa","pansexual","pansinusitis","pansy","pant","pantalooned","pantechnicon","pantheism","pantheist","pantheistic","pantheon","panther","pantie","panties","pantile","panting","panto","pantograph","pantomime","pantomimer","pantomimes","pantomiming","pantomimist","pantothen","pantropic","pantropical","pantry","pantryman","pants","pantsuit","panty","pantyhose","pantywaist","panzer","pap","papa","papacy","papaia","papain","papal","paparazzi","paparazzo","papaverales","papaverine","papaw","papaya","paper","paperback","paperbacked","paperboard","paperboy","paperclip","paperer","paperhanger","paperhanging","papering","paperknife","paperknives","paperlike","papermaking","papers","paperweight","paperwork","papery","papilla","papillae","papillary","papillate","papilledema","papilliform","papilloma","papillomata","papillon","papillose","papism","papist","papistic","papistical","papoose","papooseroot","papovavirus","pappa","pappi","pappier","pappiest","pappoose","pappose","pappus","pappy","paprika","Papua","papua","papuan","papula","papulae","papule","papulovesicle","papyri","papyrus","par","para","parabases","parabasis","parable","parabola","parabolic","parabolical","paraboloid","paraboloidal","paracentesis","parachute","parachuter","parachutes","parachuting","parachutist","paraclete","paracosm","parade","parader","parades","paradiddle","paradigm","paradigmatic","parading","paradisaic","paradisaical","paradisal","paradise","paradisiac","paradisiacal","paradox","paradoxical","paradoxically","paraesthesia","paraffin","parafovea","paragliding","paragon","paragonite","paragraph","paragrapher","paragraphs","Paraguay","paraguay","paraguayan","parakeet","paralanguage","paraldehyde","paralegal","paraleipses","paraleipsis","paralepsis","paralipsis","parallax","parallel","parallelepiped","parallelepipedon","paralleling","parallelism","parallelize","parallelled","parallelling","parallelogram","parallelopiped","parallelopipedon","parallels","paralogism","paralyse","paralysed","paralyses","paralysing","paralysis","paralytic","paralytical","paralyze","paralyzed","paralyzes","paralyzing","paramagnet","paramagnetic","paramagnetism","paramecia","paramecium","paramedic","paramedical","parament","paramenta","parameter","parameters","parametric","parametritis","paramilitary","paramnesia","paramount","paramountcy","paramour","paramyxovirus","paranasal","parang","paranoia","paranoiac","paranoid","paranormal","paraparesis","parapet","paraph","paraphernalia","paraphilia","paraphrase","paraphrases","paraphrasing","paraphrasis","paraphrastic","paraphrenia","paraphyses","paraphysis","paraplegia","paraplegic","parapodia","parapodium","parapraxes","parapraxis","paraprofessional","parapsychological","parapsychologist","parapsychology","paraquat","paraquet","parasail","parasailing","paraselenae","paraselene","parashah","parashoth","parasitaemia","parasite","parasitemia","parasites","parasitic","parasitical","parasitically","parasiticidal","parasitism","parasol","parasympathetic","parasympathomimetic","parasyntheta","parasyntheton","parathion","parathormone","parathyroid","paratrooper","paratroops","paratyphoid","parazoa","parazoan","parboil","parboiling","parboils","parcel","parceled","parceling","parcellation","parcelled","parcelling","parcels","parch","parched","parches","parchesi","parchisi","parchment","pardner","pardon","pardonable","pardonably","pardoned","pardoner","pardoning","pardons","pare","pared","paregmenon","paregoric","parenchyma","parent","parentage","parental","parentally","parented","parenteral","parenterally","parentheses","parenthesis","parenthetic","parenthetical","parenthetically","parenthood","parentless","parents","parer","parerga","parergon","paresis","paresthesia","paretic","pareve","parfait","parget","pargeting","pargetry","pargetting","parhelia","parheliacal","parhelic","parhelion","pariah","paries","parietal","parietes","parimutuel","paring","paripinnate","parish","parishes","parishioner","parishioners","parisian","parisology","parity","park","parka","parked","parkier","parkiest","parking","parkinsonism","parkland","parks","parkway","parky","parlance","parlay","parlaying","parlays","parley","parleys","parliament","parliamentarian","parliamentary","parlor","parlormaid","parlors","parlour","parlourmaid","parlours","parlous","parnahiba","parnassia","parochial","parochialism","parochially","parodied","parodies","parodist","parody","parodying","paroicous","parole","parolee","paroling","paronomasia","paronym","paroquet","parosamia","parotid","parotitis","parous","parousia","paroxetime","paroxysm","paroxysmal","paroxytone","parquet","parqueterie","parquetry","parrakeet","parricide","parried","parries","parroket","parroquet","parrot","parrotfish","parrotfishes","parroting","parrotlike","parry","parrying","parse","parsec","parseeism","parser","parses","parsi","parsimonious","parsimoniousness","parsimony","parsing","parsley","parsnip","parson","parsonage","part","partake","partaker","partakes","partaking","parte","parted","parterre","parthenocarpy","parthenogenesis","parthenogenetic","parthenogeny","parthenote","parthian","partial","partiality","partially","partialness","partible","participant","participants","participate","participated","participates","participating","participation","participatory","participial","participle","particle","particles","particolored","particoloured","particular","particularisation","particularise","particularised","particularises","particularising","particularism","particularistic","particularity","particularization","particularize","particularized","particularizes","particularizing","particularly","particulars","particulate","parties","parting","partisan","partisans","partisanship","partita","partition","partitioning","partitionist","partitions","partitive","partizan","partly","partner","partnering","partners","partnership","partnerships","partridge","partridgeberry","parts","partsong","parttime","parturiency","parturient","parturition","party","partygoer","partying","parulides","parulis","parve","parvenu","parvenue","parvis","parvo","parvovirus","pasang","pascha","paschal","paseo","pasha","pashtoon","pashtu","pashtun","paspalum","pasqueflower","pasquilled","pasquilling","pasquinade","pass","passable","passably","passado","passage","passages","passageway","passant","passbook","passe","passed","passee","passel","passementerie","passenger","passengers","passerby","passeres","passerine","passes","passim","passing","passion","passionate","passionately","passionateness","passionflower","passionless","passions","passive","passively","passiveness","passivisation","passivise","passivised","passivises","passivising","passivism","passivity","passivization","passivize","passivized","passivizes","passivizing","passkey","passport","passports","password","passwords","past","pasta","paste","pasteboard","pasted","pastel","pastelike","paster","pastern","pastes","pasteurellosis","pasteurian","pasteurisation","pasteurise","pasteurised","pasteurises","pasteurising","pasteurization","pasteurize","pasteurized","pasteurizes","pasteurizing","pastiche","pastier","pastiest","pastil","pastille","pastime","pasting","pastis","pastness","pasto","pastor","pastoral","pastorale","pastorali","pastorate","pastorship","pastrami","pastry","pasturage","pasture","pastureland","pasty","pat","pataca","patagia","patagium","patas","patavium","patch","patchboard","patchcord","patched","patches","patchier","patchiest","patchily","patchiness","patching","patchouli","patchouly","patchwork","patchy","pate","patella","patellae","patellar","patelliform","patency","patent","patented","patentee","patenting","patently","patents","pater","paterfamilias","paternal","paternalism","paternalistic","paternally","paternity","path","pathetic","pathetically","pathfinder","pathless","pathogen","pathogenesis","pathogenic","pathogenically","pathogens","pathologic","pathological","pathologically","pathologies","pathologist","pathologists","pathology","pathos","paths","pathway","pathways","patience","patient","patiently","patients","patina","patinae","patinate","patinates","patinise","patinises","patinize","patinizes","patio","patisserie","patka","patness","patois","patrai","patresfamilias","patrial","patriarch","patriarchal","patriarchate","patriarchic","patriarchy","patricentric","patrician","patricide","patrikin","patrilineage","patrilineal","patrilineally","patrilinear","patrimonial","patrimony","patriot","patrioteer","patriotic","patriotically","patriotism","patrisib","patristic","patristical","patristics","patrol","patrolled","patroller","patrolling","patrolman","patrology","patrols","patron","patronage","patroness","patronise","patronised","patronises","patronising","patronisingly","patronize","patronized","patronizes","patronizing","patronizingly","patronless","patronne","patrons","patronym","patronymic","pats","patsy","patted","patten","patter","pattering","pattern","patterned","patterning","patternmaker","patterns","patters","patting","patty","patzer","paucity","pauline","paunch","paunchiness","paunchy","pauper","pauperisation","pauperise","pauperism","pauperization","pauperize","pause","paused","pauses","pausing","pavage","pavan","pavane","pave","paved","pavement","paves","pavilion","pavilions","paving","pavior","paviour","pavis","pavise","pavlovian","pavonia","paw","pawer","pawing","pawkier","pawkiest","pawky","pawl","pawn","pawnbroker","pawning","pawns","pawnshop","pawpaw","paws","pax","paxil","paxto","pay","payable","payback","paycheck","paychecks","payday","paye","payee","payer","paygrade","paying","payload","paymaster","payment","payments","paynim","payoff","payoffs","payola","payroll","payrolls","pays","paysheet","payslip","pb","pbit","pbs","pc","pcp","pcs","pct","PCT.","Pct.","pct.","pda","pdflp","pdl","pdt","pea","peace","peaceable","peaceableness","peaceably","peaceful","peacefully","peacefulness","peacekeeper","peacekeepers","peacekeeping","peacemaker","peacenik","peacetime","peach","peaches","peachick","peachier","peachiest","peachwood","peachy","peacoat","peacock","peafowl","peag","peahen","peak","peaked","peaking","peaks","peaky","peal","pealing","peals","pean","peanut","peanuts","pear","Pearl","pearl","pearler","pearlescent","pearlfish","pearlier","pearliest","pearlite","pearls","pearlweed","pearlwort","pearly","pears","peas","peasant","peasanthood","peasantry","peasants","pease","peasecod","peat","peaty","peavey","peavy","peba","pebble","pebbly","pebibit","pebibyte","pecan","peccable","peccadillo","peccadilloes","peccant","peccary","peck","pecker","peckerwood","pecking","peckish","pecks","pecopteris","pecs","pecten","pectic","pectin","pectinate","pectineal","pectines","pectoral","pectoralis","pectus","peculate","peculation","peculator","peculiar","peculiarity","peculiarly","pecuniary","pedagog","pedagogic","pedagogical","pedagogically","pedagogics","pedagogue","pedagogy","pedal","pedaled","pedaler","pedaling","pedalled","pedaller","pedalling","pedalo","pedaloes","pedals","pedant","pedantic","pedantically","pedantry","pedate","peddle","peddled","peddler","peddles","peddling","pederast","pederastic","pederasts","pederasty","pedes","pedesis","pedestal","pedestrian","pedestrianisation","pedestrianise","pedestrianised","pedestrianises","pedestrianising","pedestrianization","pedestrianize","pedestrianized","pedestrianizes","pedestrianizing","pedestrians","pediamycin","pediapred","pediatric","pediatrician","pediatricians","pediatrics","pediatrist","pedicab","pedicel","pedicle","pediculicide","pediculosis","pedicure","pedigree","pedigreed","pedigrees","pediment","pedlar","pedodontist","pedology","pedometer","pedophile","pedophiles","pedophilia","peduncle","pedunculate","pedwood","pee","peeing","peek","peekaboo","peeking","peeks","peel","peeled","peeler","peeling","peels","peen","peep","peeper","peephole","peeping","peeps","peepshow","peepul","peer","peerage","peeress","peering","peerless","peers","pees","peeve","peeved","peevish","peevishly","peevishness","peewee","peewit","peg","pegboard","pegged","pegging","pegleg","pegmatite","pegs","pehlevi","peignoir","peiping","peireskia","pejorative","pejoratively","pekan","peke","pekinese","peking","pekingese","pekoe","pel","pelage","pelagic","pelecypod","pelecypodous","pelew","pelf","pelican","peliosis","pelisse","pellagra","pellet","pellets","pellicle","pellitory","pellucid","pellucidity","pellucidly","pellucidness","pelmet","peloponnesian","peloponnesus","pelota","pelt","peltate","pelter","pelting","peltiphyllum","pelts","peludo","pelves","pelvic","pelvimeter","pelvimetry","pelvis","pelycosaur","pemican","pemmican","pemphigous","pemphigus","pen","penal","penalisation","penalise","penalised","penalises","penalising","penalization","penalize","penalized","penalizes","penalizing","penally","penalties","penalty","penance","pence","penchant","pencil","penciled","penciling","pencilled","pencilling","pencils","pendant","pendent","pending","pendragon","pendulous","pendulum","peneplain","peneplane","penes","penetrability","penetrable","penetralia","penetralium","penetrate","penetrated","penetrates","penetrating","penetratingly","penetration","penetrative","penetratively","penetrator","penguin","penguins","penial","penicillamine","penicillia","penicillin","penicillinase","penicillium","penile","peninsula","peninsular","penis","penises","penitence","penitent","penitential","penitentially","penitentiary","penitently","penknife","penknives","penlight","penman","penmanship","penna","pennae","pennant","pennate","penne","penned","penni","pennia","pennies","penniless","pennilessness","penning","pennon","pennoncel","pennoncelle","pennsylvania","penny","penny-wise","pennycress","pennyroyal","pennyweight","pennywhistle","pennyworth","penoche","penologist","penology","penoncel","penpusher","pens","pension","pensionable","pensionary","pensioner","pensions","pensive","pensively","pensiveness","penstock","pent","pentacle","pentad","pentaerythritol","pentagonal","pentagram","pentahedra","pentahedron","pentail","pentamerous","pentameter","pentamethylenetetrazol","pentangle","pentangular","pentastomid","pentasyllabic","pentateuch","pentathlete","pentathlon","pentatone","pentatonic","pentavalent","pentazocine","pentecost","pentecostal","pentecostalism","pentecostalist","penthouse","pentimenti","pentimento","pentlandite","pentobarbital","pentode","pentose","pentothal","pentoxide","pentoxifylline","pentylenetetrazol","penuche","penuchle","penult","penultima","penultimate","penumbra","penumbrae","penumbral","penurious","penuriously","penuriousness","penury","peon","peonage","peony","People","people","peopled","peoples","peopling","pep","pepcid","peperomia","pepla","peplos","peplum","peplus","pepped","pepper","peppercorn","peppered","pepperidge","pepperiness","peppering","peppermint","pepperoni","peppers","pepperwood","pepperwort","peppery","peppier","peppiest","peppiness","pepping","peppy","peps","pepsin","pepsinogen","peptic","peptidase","peptide","peptides","peptisation","peptise","peptization","peptize","peptone","per","peradventure","perambulate","perambulating","perambulation","perambulator","percale","perceivable","perceive","perceived","perceiver","perceives","perceiving","Percent","percent","percentage","percentages","percentile","percentiles","percents","percept","perceptibility","perceptible","perceptibly","perception","perceptions","perceptive","perceptively","perceptiveness","perceptivity","perceptual","perceptually","perch","perchance","perched","percher","perches","perching","perchlorate","perchloride","perchloromethane","percipient","percoid","percoidean","percolate","percolates","percolating","percolation","percolator","percomorphi","percuss","percussion","percussionist","percussive","percussor","percutaneous","perdicinae","perdition","perdurability","perdurable","peregrinate","peregrination","peregrine","peremptorily","peremptory","perennate","perennation","perennial","perennially","perestroika","perfect","perfecta","perfected","perfecter","perfectibility","perfectible","perfecting","perfection","perfectionism","perfectionist","perfective","perfectly","perfects","perfervid","perfidious","perfidiously","perfidiousness","perfidy","perfluorocarbon","perfoliate","perforate","perforated","perforation","perforce","perform","performance","performances","performed","performer","performers","performing","performs","perfume","perfumed","perfumer","perfumery","perfuming","perfunctorily","perfunctory","perfuse","perfuses","perfusing","perfusion","pergola","Perhaps","perhaps","peri","periactin","perianal","perianth","periapsis","periarteritis","pericardia","pericardiac","pericardial","pericarditis","pericardium","pericarp","pericementoclasia","perichondria","perichondrium","periclase","pericrania","pericranium","peridia","peridinian","peridium","peridot","peridotite","perigee","perigon","perigonal","perigone","perigonia","perigonium","perihelia","perihelion","perijove","peril","perilous","perilously","perilousness","perils","perilune","perilymph","perimeter","perimysium","perinasal","perinatal","perinatologist","perinatology","perinea","perineal","perineotomy","perinephria","perinephrium","perineum","perineurium","period","periodic","periodical","periodically","periodicals","periodicity","periodontal","periodontia","periodontic","periodontics","periodontist","periodontitis","periods","perionychia","perionychium","periostea","periosteum","peripatetic","peripateticism","peripatus","peripeteia","peripetia","peripety","peripheral","peripherally","periphery","periphrases","periphrasis","periphrastic","peripteral","perirhinal","periscope","periselene","perish","perishability","perishable","perishableness","perished","perisher","perishes","perishing","perisperm","perissodactyl","peristalses","peristalsis","peristome","peristylar","peristyle","perithecia","perithecium","perithelial","perithelium","peritonea","peritoneal","peritoneum","peritonitis","peritrate","peritrichous","periwig","periwigged","periwinkle","perjure","perjurer","perjures","perjuring","perjury","perk","perked","perkier","perkiest","perkily","perkiness","perking","perks","perky","perleche","perm","permafrost","permanence","permanency","permanent","permanently","permanganate","permeability","permeable","permeableness","permeant","permeate","permeated","permeates","permeating","permeation","permeative","permed","permissibility","permissible","permissibly","permission","permissive","permissively","permissiveness","permit","permits","permitted","permitting","permutability","permutable","permutableness","permutation","permutations","permute","permutes","permuting","pernambuco","pernicious","perniciously","perniciousness","pernickety","pernio","peroneal","peroneus","perorate","perorates","perorating","peroration","peroxidase","peroxide","perpendicular","perpendicularity","perpendicularly","perpetrate","perpetrated","perpetrates","perpetrating","perpetration","perpetrator","perpetrators","perpetual","perpetually","perpetuate","perpetuates","perpetuating","perpetuation","perpetuity","perphenazine","perplex","perplexed","perplexedly","perplexing","perplexity","perquisite","persecute","persecuted","persecutes","persecuting","persecution","persecutor","perseverance","perseverate","perseveration","persevere","perseveres","persevering","perseveringly","persia","persian","persiflage","persimmon","persist","persisted","persistence","persistency","persistent","persistently","persisting","persists","persnickety","person","persona","personable","personableness","personae","personage","personal","personalise","personalised","personalises","personalising","personalities","personality","personalize","personalized","personalizes","personalizing","personally","personalty","personate","personates","personation","personhood","personification","personified","personifies","personify","personifying","personnel","persons","perspective","perspectives","perspex","perspicacious","perspicaciousness","perspicacity","perspicuity","perspicuous","perspicuously","perspicuousness","perspiration","perspire","perspirer","perspires","perspiring","persuadable","persuade","persuaded","persuader","persuades","persuading","persuasible","persuasion","persuasive","persuasively","persuasiveness","pert","pertain","pertaining","pertains","pertainym","pertinacious","pertinaciously","pertinacity","pertinence","pertinency","pertinent","pertinently","pertly","pertness","perturb","perturbation","perturbations","perturbed","perturbing","perturbs","pertussis","Peru","peru","peruke","peruked","perusal","peruse","peruses","perusing","peruvian","pervade","pervaded","pervades","pervading","pervaporate","pervaporates","pervaporation","pervasion","pervasive","pervasively","pervasiveness","perverse","perversely","perverseness","perversion","perversity","perversive","pervert","perverted","perverting","perverts","pervious","perviousness","pes","pesach","pesah","pesantran","pesantren","peseta","pesewa","peshmerga","peskier","peskiest","pesky","peso","pessary","pessimal","pessimism","pessimist","pessimistic","pessimistically","pessimum","pest","pester","pestered","pesterer","pestering","pesters","pesthole","pesthouse","pesticide","pesticides","pestiferous","pestilence","pestilent","pestilential","pestis","pestle","pesto","pet","petabit","petabyte","petal","petaled","petalled","petalless","petallike","petaloid","petalous","petals","petard","petchary","petcock","petechia","petechiae","peterburg","petfood","petiole","petiolule","petite","petiteness","petitio","petition","petitionary","petitioned","petitioner","petitioning","petitions","petrarca","petrel","petrifaction","petrification","petrified","petrifies","petrify","petrifying","petrissage","petrochemical","petroglyph","petrograd","petrol","petrolatum","petroleum","petrology","petrous","pets","petted","petter","petticoat","petticoated","pettier","pettiest","pettifog","pettifogged","pettifogger","pettifoggery","pettifogging","pettifogs","pettily","pettiness","petting","pettish","pettishly","pettishness","petty","petulance","petulant","petulantly","petunia","peul","pew","pewee","pewit","pewter","peyote","pfalz","pfannkuchen","pfc","pfennig","pfennige","pflp","PGA","pga","ph","phacelia","phacoemulsification","phaeochromocytoma","phaeton","phage","phages","phagocyte","phagocytic","phagocytosis","phaius","phalacrosis","phalange","phalangeal","phalanger","phalanges","phalangist","phalangitis","phalanx","phalarope","phalguna","phalli","phallic","phalloplasty","phallus","phalsa","phanerogam","phanerogamae","phaneromania","phantasied","phantasm","phantasma","phantasmagoria","phantasmagoric","phantasmagorical","phantasmal","phantasy","phantom","pharaonic","pharisaic","pharisaical","pharma","pharmaceutic","pharmaceutical","pharmaceuticals","pharmacies","pharmacist","pharmacogenetics","pharmacokinetics","pharmacologic","pharmacological","pharmacologically","pharmacologist","pharmacology","pharmacopeia","pharmacopeias","pharmacopoeia","pharmacopoeias","pharmacy","pharos","pharyngeal","pharynges","pharyngitis","pharynx","phase","phased","phases","phasianid","phasing","phasmatidae","phasmatodea","phasmid","phd","pheasant","pheidias","phellem","phenacetin","phenacomys","phenaphen","phenazopyridine","phencyclidine","phenelzine","phenergan","phenicia","pheniramine","phenobarbital","phenobarbitone","phenol","phenolic","phenolphthalein","phenomena","phenomenal","phenomenally","phenomenology","phenomenon","phenoplast","phenothiazine","phenotype","phenotypes","phenotypic","phenotypical","phensuximide","phentolamine","phenylacetamide","phenylalanine","phenylamine","phenylbutazone","phenylephrine","phenylethylene","phenylketonuria","phenylpropanolamine","phenyltoloxamine","phenytoin","pheochromocytoma","pheresis","pheromone","phi","phial","philadelphus","philander","philanderer","philandering","philanders","philanthropic","philanthropically","philanthropist","philanthropy","philatelic","philatelical","philatelically","philatelist","philately","philharmonic","philhellene","philhellenic","philhellenism","philhellenist","philia","philippic","philippine","Philippines","philippines","philippopolis","philistine","philistinism","phillidae","phillipsite","philodendra","philodendron","philogyny","philological","philologist","philologue","philology","philomath","philosopher","philosophers","philosophic","philosophical","philosophically","philosophise","philosophised","philosophiser","philosophises","philosophising","philosophize","philosophized","philosophizer","philosophizes","philosophizing","philosophy","philter","philtre","philtres","phimosis","phiz","phlebectomy","phlebitis","phlebogram","phlebothrombosis","phlebotomise","phlebotomist","phlebotomize","phlebotomy","phlegm","phlegmatic","phlegmatical","phlegmatically","phlegmy","phloem","phlogiston","phlogopite","phlomis","phlox","phlyctaena","phlyctenae","phobia","phobic","phobophobia","phocine","phocomelia","phoebus","phoenician","phoenicophorium","phon","phonate","phonation","Phone","phone","phonebook","phoned","phoneme","phonemic","phonemically","phonemics","phoner","phones","phonetic","phonetically","phonetician","phonetics","phoney","phonic","phonics","phonier","phoniest","phoning","phonogram","phonogramic","phonograph","phonologic","phonological","phonologist","phonology","phonophobia","phony","phoronid","phoronidea","phosgene","phosphatase","phosphatases","phosphate","phosphine","phosphocreatine","phospholipid","phospholipids","phosphoprotein","phosphor","phosphoresce","phosphorescence","phosphorescent","phosphoric","phosphorous","phosphorus","phot","photalgia","photic","photo","photocathode","photocell","photochemical","photochemistry","photocoagulation","photocoagulator","photoconduction","photoconductive","photoconductivity","photocopied","photocopier","photocopies","photocopy","photocopying","photoelectric","photoelectrical","photoelectrically","photoelectricity","photoelectron","photoemission","photoemissive","photoengraving","photoflash","photoflood","photogenic","photograph","photographed","photographer","photographers","photographic","photographically","photographing","photographs","photography","photogravure","photojournalism","photojournalist","photolithograph","photolithography","photomap","photomapped","photomapping","photomechanical","photomechanics","photometer","photometric","photometrical","photometrically","photometrician","photometrist","photometry","photomicrograph","photomontage","photomosaic","photon","photophobia","photopigment","photoretinitis","photos","photosensitise","photosensitive","photosensitivity","photosensitize","photosensitizes","photoset","photosets","photosetting","photosphere","photostat","photosynthesis","photosynthetic","phototherapy","phototropism","photovoltaic","phragmacone","phragmocone","phrasal","phrase","phraseology","phrases","phrasing","phratry","phreatic","phrenetic","phrenic","phrenitis","phrenological","phrenologist","phrenology","phrontistery","phthirus","phthisis","phycobilin","phycocyanin","phycoerythrin","phycology","phycomycosis","phyla","phylactery","phylae","phyle","phyletic","phylliform","phyllo","phylloclad","phylloclade","phyllode","phyllodial","phylloquinone","phyllostomatidae","phyllotaxes","phyllotaxis","phylloxera","phylloxerae","phylogeneses","phylogenesis","phylogenetic","phylogenetically","phylogenies","phylogeny","phylum","physa","physiatrics","physic","physical","physicalism","physicality","physically","physicalness","physician","physicians","physicist","physicists","physicked","physicking","physicochemical","physics","physiognomy","physiography","physiologic","physiological","physiologically","physiologist","physiology","physiotherapeutic","physiotherapist","physiotherapy","physique","physostegia","physostigmine","phytelephas","phytochemical","phytochemist","phytochemistry","phytohormone","phytologist","phytology","phytonadione","phytophagic","phytophagous","phytophilous","phytoplankton","phytotherapy","phytotoxin","pi","pia","piaffe","piagetian","pianism","pianissimo","pianist","pianistic","piano","pianoforte","pianola","piaster","piastre","piazza","pib","pibgorn","pibit","pibroch","pic","picador","picaninny","picardy","picaresque","picayune","piccalilli","piccaninny","piccolo","pichi","pichiciago","pichiciego","pick","pickaback","pickaninny","pickax","pickaxe","picked","pickelhaube","picker","pickerel","pickerelweed","picket","pickier","pickiest","picking","pickle","pickled","picklepuss","pickles","pickling","picknicker","pickpocket","picks","pickup","picky","picnic","picnicked","picnicker","picnicking","picnics","picofarad","picometer","picometre","picornavirus","picosecond","picot","picovolt","pics","pictograph","pictographic","pictorial","pictorially","pictural","picture","pictured","pictures","picturesque","picturesquely","picturesqueness","picturing","picul","piculet","pid","piddle","piddling","piddock","pidgin","pidlimdi","pie","piebald","piece","pieced","piecemeal","pieces","piecework","piecing","pied","piemonte","pieplant","pier","pierce","pierced","pierces","piercing","piercingly","pierid","pies","pieta","pietistic","pietistical","piety","piezoelectric","piezoelectricity","piezometer","piffle","piffling","pig","pigboat","pigeon","pigeonhole","pigeonholing","pigeons","pigfish","pigfishes","pigged","piggery","piggier","piggiest","pigging","piggish","piggishly","piggishness","piggy","piggyback","piggybacking","piggybacks","pigheaded","pigheadedness","piglet","pigman","pigment","pigmentation","pigmy","pignolia","pignut","pigpen","pigs","pigskin","pigsticking","pigsty","pigswill","pigtail","pigwash","pigweed","pij","pika","pike","pikeblenny","pikestaff","pilaf","pilaff","pilar","pilary","pilaster","pilau","pilaw","pilchard","pile","pilea","piled","pilei","piles","pileum","pileup","pileus","pilewort","pilfer","pilferage","pilferer","pilfering","pilfers","pilgrim","pilgrimage","pilgrims","piling","pill","pillage","pillaged","pillager","pillages","pillaging","pillar","pillared","pillars","pillbox","pillion","pillock","pilloried","pillories","pillory","pillorying","pillow","pillowcase","pillows","pills","pillwort","pilocarpine","pilose","pilosebaceous","pilosity","pilot","pilotage","pilotfish","pilothouse","piloting","pilotless","pilots","pilous","pilsener","pilus","pimento","pimiento","pimozide","pimp","pimpernel","pimping","pimple","pimpled","pimply","pin","pinafore","pinata","pinball","pincer","pinch","pinchbeck","pinche","pinched","pinches","pinchgut","pinching","pincushion","pindaric","pindolol","pine","pineal","pinealoma","pineapple","pinecone","pines","pinesap","pineta","pinetum","pineweed","pinfish","pinfishes","pinfold","ping","pinger","pinging","pings","pinguecula","pinhead","pinhole","pinier","piniest","pining","pinion","pinioned","pinite","pink","pinkeye","pinkie","pinkifies","pinkify","pinkish","pinkness","pinko","pinkoes","pinkroot","pinky","pinna","pinnace","pinnacle","pinnae","pinnate","pinnated","pinnately","pinnatifid","pinnatiped","pinnatisect","pinned","pinner","pinning","pinniped","pinnula","pinnulae","pinnule","pinny","pinochle","pinocle","pinocytosis","pinole","pinon","pinophytina","pinpoint","pinpointed","pinpointing","pinpoints","pinprick","pins","pinscher","pinstripe","pinstriped","pint","pintado","pintail","pintle","pinto","pinwheel","pinworm","piny","pinyon","piolet","pion","pioneer","pioneered","pioneers","pious","piously","piousness","pip","pipage","pipal","pipe","pipeclay","piped","pipefish","pipefishes","pipefitting","pipeful","pipeline","pipelines","piperacillin","piperazine","piperin","piperine","piperocaine","pipes","pipet","pipette","pipework","pipewort","piping","pipistrel","pipistrelle","pipit","pipped","pipping","pipracil","pipsissewa","pipul","piquance","piquancy","piquant","piquantly","piquantness","pique","piqued","piques","piquet","piracy","pirana","piranha","pirate","pirated","pirates","piratical","piratically","pirating","pirog","pirogi","pirogue","piroplasm","piroshki","pirouette","pirouetting","piroxicam","pirozhki","pisanosaur","pisanosaurus","piscary","piscatorial","piscatory","piscina","piscinae","piscine","piscivorous","pisiform","pismire","piss","pissed","pisser","pisses","pissing","pistachio","piste","pistia","pistil","pistillate","pistillode","pistol","pistoleer","pistolled","pistolling","piston","pit","pita","pitahaya","pitanga","pitapat","pitapatted","pitapatting","pitch","pitchblende","pitched","pitcher","pitcherful","pitchers","pitches","pitchfork","pitchier","pitchiest","pitching","pitchman","pitchstone","pitchy","piteous","piteously","pitfall","pitfalls","pith","pithead","pithecanthropi","pithecanthropus","pithecolobium","pithier","pithiest","pithily","pithiness","pithoi","pithos","pithy","pitiable","pitiably","pitied","pities","pitiful","pitifully","pitiless","pitilessly","pitilessness","pitman","pitocin","piton","pitprop","pitressin","pits","pitsaw","pitta","pittance","pitted","pitting","pituitary","pity","pitying","pityingly","pityriasis","piute","pivot","pivotal","pivoting","pix","pixel","pixels","pixie","pixilated","pixy","pizza","pizzas","pizzaz","pizzazz","pizzeria","pizzicato","pkd","pku","placable","placard","placate","placated","placates","placating","placatingly","placation","placative","placatory","place","placeable","placebo","placeboes","placed","placeholder","placekicker","placeman","placement","placenta","placentae","placental","placentation","placer","places","placeseeker","placid","placidity","placidly","placidness","placidyl","placing","placket","placoderm","placoid","plage","plagiarisation","plagiarise","plagiarised","plagiariser","plagiarises","plagiarising","plagiarism","plagiarist","plagiaristic","plagiarization","plagiarize","plagiarized","plagiarizer","plagiarizes","plagiarizing","plagiocephaly","plagioclase","plagioclastic","plague","plagued","plagues","plaguey","plaguily","plaguing","plaguy","plaice","plaid","plain","plainchant","plainclothesman","plainly","plainness","plains","plainsman","plainsong","plainspoken","plaint","plaintiff","plaintiffs","plaintive","plaintively","plaintiveness","plait","plaiter","plan","planar","planaria","planarian","planate","planation","planchet","planchette","plane","planeness","planer","planes","planet","planetal","planetaria","planetarium","planetary","planetesimal","planetoid","planets","plangency","plangent","planimeter","planing","plank","planking","planks","plankton","planktonic","planless","planned","planner","planners","planning","planoconcave","planoconvex","planographic","planography","plans","plant","plantain","plantal","plantar","plantation","plantations","planted","planter","planthopper","plantigrade","planting","plantlet","plants","plantsman","planula","planulae","plaque","plaquenil","plaques","plash","plashier","plashiest","plashy","plasm","plasma","plasmablast","plasmacyte","plasmacytoma","plasmapheresis","plasmid","plasmids","plasmin","plasminogen","plasmodesma","plasmodesmata","plasmodia","plasmodium","plaster","plasterboard","plastered","plasterer","plastering","plasters","plasterwork","plastic","plastically","plasticise","plasticiser","plasticises","plasticity","plasticize","plasticizer","plasticizes","plastics","plastid","plastinate","plastination","plastique","plastron","plat","platan","plate","plateau","plateaux","plateful","platelayer","platelet","plateletpheresis","platelets","platelike","platen","plater","plates","platform","platforms","platier","platiest","plating","platinize","platinum","platitude","platitudes","platitudinal","platitudinarian","platitudinize","platitudinous","platonic","platonistic","platoon","plats","plattdeutsch","platted","plattensee","platter","platting","platy","platyctenean","platyhelminth","platypus","platyrhine","platyrhinian","platyrrhine","platyrrhinian","platyrrhinic","platysma","plaudit","plausibility","plausible","plausibleness","plausibly","plausive","plavix","play","playable","playact","playacting","playactor","playback","playbill","playbook","playbox","playboy","playday","played","player","players","playfellow","playful","playfully","playfulness","playgoer","playground","playhouse","playing","playlet","playlist","playmaker","playmate","playoff","playoffs","playpen","playroom","plays","playschool","playscript","playsuit","plaything","playtime","playwright","plaza","plea","pleach","pleaches","plead","pleaded","pleader","pleading","pleadingly","pleads","pleas","pleasance","pleasant","pleasantly","pleasantness","pleasantry","Please","please","pleased","pleaser","pleases","pleasing","pleasingly","pleasingness","pleasurable","pleasurably","pleasure","pleasures","pleat","pleating","pleats","pleb","plebe","plebeian","plebiscite","plecopteran","plectognath","plectra","plectranthus","plectron","plectrum","pled","pledge","pledged","pledgee","pledger","pledges","pledging","plena","plenarily","plenary","plenipotentiary","plenitude","plenteous","plenteously","plenteousness","plentiful","plentifully","plentifulness","plentitude","plenty","plenum","pleochroic","pleochroism","pleomorphic","pleomorphism","pleonasm","pleonaste","pleonastic","pleopod","plesiosaur","plesiosaurus","plessimeter","plessor","plethodont","plethora","plethoric","plethysmograph","pleura","pleural","pleuralgia","pleurisy","pleurocarp","pleurocarpous","pleurodont","pleurodynia","pleuron","pleuropneumonia","pleurothallis","pleven","pleximeter","pleximetry","plexor","plexus","plf","pliability","pliable","pliancy","pliant","pliantness","plica","plicae","plicate","plicates","plication","plied","plier","plies","plight","plimsoll","plinth","plo","ploce","plod","plodded","plodder","plodding","ploddingly","plods","plonk","plonking","plonks","plop","plopped","plopping","plops","plosion","plosive","plot","plots","plotted","plotter","plotting","plough","ploughboy","ploughed","ploughing","ploughland","ploughman","ploughmen","ploughs","ploughshare","ploughshares","ploughwright","plover","plow","plowboy","plowed","plower","plowing","plowland","plowman","plowmen","plows","plowshare","plowshares","plowwright","ploy","pls","pluck","plucked","pluckier","pluckiest","pluckily","pluckiness","plucking","plucks","plucky","plug","plugboard","plugged","plugger","plugging","plughole","plugs","plum","plumage","plumaged","plumate","plumb","plumbable","plumbaginaceous","plumbago","plumber","plumbery","plumbic","plumbing","plumbism","plumbous","plumbs","plumcot","plume","plumed","plumelike","plumes","plumier","plumiera","plumiest","plumlike","plummet","plummeted","plummeting","plummets","plummier","plummiest","plummy","plumose","plump","plumping","plumpness","plumps","plumule","plumy","plunder","plunderage","plundered","plunderer","plundering","plunders","plunge","plunged","plunger","plunges","plunging","plunk","plunker","plunking","plunks","pluperfect","plural","pluralisation","pluralise","pluralises","pluralism","pluralist","pluralistic","plurality","pluralization","pluralize","pluralizes","plus","pluses","plush","plushy","plutocracy","plutocrat","plutocratic","plutocratical","pluton","plutonian","plutonic","plutonium","pluviometer","ply","plyboard","plyer","plying","plywood","plz","plzen","pm","pneumatic","pneumatically","pneumatics","pneumatophore","pneumobacilli","pneumobacillus","pneumococcal","pneumococci","pneumococcus","pneumoconiosis","pneumocytosis","pneumoencephalogram","pneumogastric","pneumonectomy","pneumonia","pneumonic","pneumonitis","pneumonoconiosis","pneumothorax","pneumovax","poaceae","poach","poached","poacher","poaches","poaching","pob","pochard","pock","pocked","pocket","pocketable","pocketbook","pocketcomb","pocketful","pocketing","pocketknife","pocketknives","pockets","pockmark","pockmarked","pod","podalgia","podcast","podcasts","podded","podding","podetia","podetium","podgier","podgiest","podgy","podia","podiatrist","podiatry","podicipediformes","podium","podlike","podocarp","pods","podsol","podzol","poeciliid","poem","poems","poenology","poesy","poet","poetess","poetic","poetical","poetically","poetics","poetise","poetiser","poetises","poetize","poetizer","poetizes","poetry","poets","pogey","pogge","pogonia","pogonion","pogonip","pogonophoran","pogrom","pogy","poi","poignance","poignancy","poignant","poignantly","poikilotherm","poikilothermic","poikilothermous","poilu","poinsettia","point","pointed","pointedly","pointedness","pointel","pointer","pointillism","pointillist","pointillistic","pointing","pointless","pointlessly","pointlessness","pointrel","points","pointsman","poise","poised","poises","poising","poison","poisonberry","poisoned","poisoner","poisoning","poisonings","poisonous","poisonously","poisons","poitou","poivrade","poke","poked","poker","pokes","pokeweed","pokey","pokier","pokiest","poking","poky","pol","polack","polar","polarimeter","polarisation","polariscope","polarise","polarised","polarises","polarising","polarity","polarization","polarize","polarized","polarizes","polarizing","polarographic","polarography","polder","pole","poleax","poleaxe","polecat","poleis","polemic","polemical","polemically","polemicise","polemicises","polemicist","polemicize","polemicizes","polemise","polemises","polemist","polemize","polemizes","polemoniaceous","polemonium","polenta","poler","poles","polestar","police","policeman","polices","policewoman","policies","policing","policy","policyholder","polio","poliomyelitis","poliosis","poliovirus","polis","polish","polished","polisher","polishes","polishing","politburo","polite","politely","politeness","politesse","politic","political","politically","politician","politicians","politicisation","politicise","politicised","politicises","politicising","politicization","politicize","politicized","politicizes","politicizing","politick","politico","politics","polity","polka","polkas","poll","pollard","polled","pollen","pollenate","pollenation","pollex","pollices","pollinate","pollinated","pollinates","pollinating","pollination","pollinator","pollinia","pollinium","pollinosis","polliwog","polls","pollster","pollsters","pollucite","pollutant","pollutants","pollute","polluted","polluter","polluters","pollutes","polluting","pollution","pollyannaish","pollyfish","pollywog","polo","polonaise","polonium","polony","pols","polska","poltergeist","poltroon","poltroonery","polyamide","polyandrist","polyandrous","polyandry","polyanthus","polyarteritis","polyatomic","polybotria","polybutene","polybutylene","polychaete","polychasia","polychasium","polychete","polychromatic","polychrome","polychromic","polychromise","polychromises","polychromize","polychromizes","polycillin","polycrystalline","polycythemia","polydactyl","polydactylous","polydactyly","polydipsia","polyelectrolyte","polyester","polyestrous","polyethylene","polyfoam","polygamist","polygamous","polygamy","polygene","polygenic","polyglot","polygon","polygonal","polygonally","polygraph","polygynist","polygynous","polygyny","polyhedra","polyhedral","polyhedron","polyhidrosis","polymastigote","polymath","polymer","polymerase","polymerases","polymeric","polymerisation","polymerise","polymerises","polymerization","polymerize","polymerizes","polymers","polymorph","polymorphemic","polymorphic","polymorphism","polymorphisms","polymorphous","polymox","polymyositis","polymyxin","polynesian","polyneuritis","polynomial","polynucleotide","polynya","polyoestrous","polyoicous","polyoma","polyose","polyp","polyparia","polyparium","polypectomy","polypeptide","polypeptides","polypetalous","polyphase","polyphone","polyphonic","polyphonically","polyphonous","polyphony","polyphosphate","polypi","polyplacophore","polyploid","polyploidy","polypodiales","polypody","polypore","polypropene","polypropenonitrile","polypropylene","polyptoton","polypus","polysaccharide","polysemant","polysemantic","polysemous","polysemy","polysomy","polystyrene","polysyllabic","polysyllabically","polysyllable","polysyndeton","polysynthetic","polytechnic","polytetrafluoroethylene","polytheism","polytheist","polytheistic","polythene","polytonal","polytonalism","polytonality","polyunsaturated","polyurethan","polyurethane","polyuria","polyvalence","polyvalency","polyvalent","polyzoa","polyzoan","polyzoaria","polyzoarium","pom","pomade","pomaded","pomades","pomatum","pome","pomegranate","pomelo","pomfret","pommel","pommelled","pommelling","pommels","pommy","pomologist","pomology","pomp","pompadour","pompadours","pompano","pompon","pomposity","pompous","pompously","pompousness","ponce","poncho","pond","ponder","ponderable","ponderer","pondering","ponderosa","ponderosity","ponderous","ponderously","ponderousness","ponders","ponds","pondweed","pone","pong","pongee","pongid","poniard","ponka","pons","ponstel","pontes","pontifex","pontiff","pontifical","pontificate","pontificates","pontificating","pontifices","pontoon","pontos","pony","ponycart","ponytail","pooch","pood","poodle","poof","pool","pooled","pooler","pooling","poolroom","pools","poon","poop","poor","poorer","poorest","poorhouse","poorly","poorness","poorwill","poove","pop","popcorn","pope","popery","popeyed","popgun","popinjay","popish","popishly","poplar","poplin","popliteal","popover","popped","poppet","popping","poppy","poppycock","pops","popsicle","populace","popular","popularisation","popularise","popularised","populariser","popularises","popularising","popularism","popularity","popularization","popularize","popularized","popularizer","popularizes","popularizing","popularly","populate","populated","populates","populating","population","populations","populism","populist","populous","porbeagle","porc","porcelain","porcelainize","porch","porches","porcine","porcupine","porcupinefish","pore","pored","pores","porgy","poriferan","poriferous","poring","pork","porkchop","porker","porkfish","porkholt","porkier","porkiest","porkpie","porky","porn","porno","pornographer","pornographic","pornographically","pornography","poroporo","porose","porosity","porous","porousness","porphyria","porphyrin","porphyritic","porphyry","porpoise","porridge","porringer","port","porta","portability","portable","portage","portal","portals","portamenti","portamento","portcullis","portend","portending","portends","portent","portentous","portentously","porter","porterage","porterhouse","portfolio","portfolios","porthole","portico","porticoed","porticoes","portiere","porting","portion","portions","portlier","portliest","portly","portmanteau","portmanteaux","portrait","portraitist","portraits","portraiture","portray","portrayal","portrayed","portrayer","portraying","portrays","ports","Portugal","portugal","portuguese","portulaca","portwatcher","pose","posed","poser","poses","poseur","poseuse","posh","posing","posit","positing","position","positionable","positional","positioned","positioner","positioning","positions","positive","positively","positiveness","positives","positivism","positivist","positivistic","positivity","positron","posits","posology","posse","posseman","possess","possessed","possesses","possessing","possession","possessions","possessive","possessively","possessiveness","possessor","posset","possibilities","possibility","possible","possibleness","possibly","possum","possumwood","post","post-crash","post-earthquake","post-electoral","post-game","post-hearing","post-production","post-quake","post-split","post-war","postage","postal","postbag","postbiblical","postbox","postcard","postcards","postcava","postcode","postdate","postdates","postdiluvian","postdoc","postdoctoral","posted","poster","posterboard","posterior","posteriority","posterity","postern","posters","postexilic","postfix","postganglionic","postglacial","postgraduate","posthitis","posthole","posthouse","posthumous","posthumously","postiche","postictal","postilion","postillion","postindustrial","posting","postings","postliminia","postliminium","postlude","postman","postmark","postmarked","postmarking","postmaster","postmenopausal","postmeridian","postmillennial","postmistress","postmodern","postmodernism","postmodernist","postmortal","postmortem","postnatal","postnuptial","postoperative","postoperatively","postpaid","postpartum","postpone","postponed","postponement","postponer","postpones","postponing","postpose","postposition","postpositive","postprandial","posts","postscript","postulant","postulate","postulates","postulating","postulation","postulational","postulator","postural","posture","posturer","posturing","postwar","posy","pot","potable","potage","potamogale","potash","potassium","potation","potato","potatoes","potbellied","potbelly","potboiler","potbound","potboy","poteen","potence","potency","potent","potentate","potential","potentiality","potentially","potentials","potentiate","potentiates","potentiating","potentiation","potentiometer","potently","potful","pothead","pother","potherb","potholder","pothole","potholed","potholer","pothook","pothos","pothouse","pothunter","potion","potlatch","potluck","potman","potomania","potoroo","potpie","potpourri","pots","potsherd","potshot","pottage","potted","Potter","potter","potterer","potters","pottery","pottier","pottiest","potting","pottle","potto","potty","POTUS","potus","potyokin","pouch","pouched","pouchlike","poudrin","pouf","pouffe","pouffes","poufs","poulet","poulette","poulterer","poultice","poultry","poultryman","pounce","pounces","pouncing","pound","poundage","poundal","pounded","pounder","pounding","pounds","pour","pourboire","poured","pouring","pours","pout","pouter","pouting","poutingly","pouts","poverty","pow","powder","powdered","powderer","powderiness","powdering","powderise","powderises","powderize","powderizes","powderpuff","powdery","power","powerboat","powerbroker","powered","powerful","powerfully","powerfulness","powerhouse","powering","powerless","powerlessly","powerlessness","powers","powerwash","powerwashes","powwow","pox","poxvirus","poyou","pozsony","PP.","pp.","ppk","pplo","ppp","pr","practicability","practicable","practicableness","practicably","practical","practicality","practically","practice","practiced","practices","practician","practicing","practise","practised","practises","practising","practitioner","practitioners","praenomen","praenomina","praesidium","praesidiums","praetor","praetorial","praetorian","praetorium","praetorship","prag","pragmatic","pragmatical","pragmatically","pragmatism","pragmatist","praha","prairie","praise","praised","praiseful","praises","praiseworthily","praiseworthiness","praiseworthy","praising","praisworthiness","prakritic","praline","pram","prance","prancer","prances","prancing","prandial","prang","prangs","prank","prankish","prankishness","prankster","praseodymium","prat","prate","prater","prates","pratfall","pratincole","prattle","prattler","prattles","prattling","pravachol","pravastatin","prawn","praxes","praxis","pray","praya","prayer","prayerbook","prayerful","prayers","praying","prays","prazosin","prblm","prblms","PRC","prc","pre-approved","pre-cooked","pre-crash","pre-eminence","pre-empt","pre-empted","pre-existing","pre-kindergarten","pre-merger","pre-noon","pre-publication","pre-recorded","Pre-refunded","pre-refunded","pre-register","pre-registered","pre-sale","pre-set","pre-signed","pre-tax","pre-tested","pre-trading","Pre-trial","pre-trial","pre-try","preach","preacher","preaches","preachier","preachiest","preachification","preachified","preachifies","preachify","preaching","preachment","preachy","preadolescent","preamble","preanal","prearrange","prearranged","prearrangement","prearranges","preassemble","preassembles","prebend","prebendary","precancel","precancelled","precancelling","precancels","precancerous","precarious","precariously","precariousness","precast","precative","precatory","precaution","precautional","precautionary","precautions","precava","precede","preceded","precedence","precedency","precedent","precedented","precedentedly","precedential","precedents","precedes","preceding","precentor","precentorship","precept","preceptor","preceptorship","precess","precesses","precession","prechlorination","precinct","preciosity","precious","preciously","preciousness","precipice","precipitance","precipitancy","precipitant","precipitate","precipitated","precipitately","precipitateness","precipitates","precipitating","precipitation","precipitator","precipitin","precipitous","precipitously","precipitousness","precis","precise","precisely","preciseness","precises","precision","preclinical","preclude","precluded","precludes","precluding","preclusion","preclusive","precocial","precocious","precociously","precociousness","precocity","precognition","precognitive","preconceive","preconceived","preconception","preconcerted","precondition","preconditioned","precook","precooked","precooks","precooled","precordial","precordium","precursor","precursors","precursory","predaceous","predacious","predate","predates","predating","predation","predator","predators","predatory","predecease","predeceases","predecessor","predecessors","predella","predelle","predestinarian","predestinarianism","predestinate","predestination","predestinationist","predestine","predestined","predestines","predetermination","predetermine","predetermined","predetermines","predicament","predicate","predicated","predicates","predication","predicative","predicatively","predicator","predict","predictability","predictable","predictably","predicted","predicting","prediction","predictions","predictive","predictor","predictors","predicts","predigest","predigested","predigests","predilection","predispose","predisposed","predisposes","predisposing","predisposition","prednisolone","prednisone","predominance","predominant","predominantly","predominate","predominates","predominating","predomination","preeclampsia","preemie","preeminence","preeminent","preeminently","preempt","preempting","preemption","preemptive","preemptor","preempts","preen","preening","preens","preexist","preexistence","preexistent","preexisting","preexists","prefab","prefabricate","prefabricates","prefabricating","prefabrication","preface","prefaces","prefacing","prefaded","prefatorial","prefatory","prefect","prefectural","prefecture","prefer","preferable","preferably","preference","preferences","preferent","preferential","preferentially","preferment","preferred","preferring","prefers","prefiguration","prefigurative","prefigure","prefiguring","prefix","prefixation","preform","preformation","preforms","prefrontal","pregnancies","pregnancy","pregnanediol","pregnant","preheat","preheats","prehend","prehends","prehensile","prehension","prehensor","prehistoric","prehistorical","prehistory","preindication","preisolate","prejudge","prejudgement","prejudges","prejudging","prejudgment","prejudice","prejudiced","prejudices","prejudicial","prejudicing","prejudicious","prelacy","prelapsarian","prelate","prelature","prelim","preliminary","preliterate","prelone","prelude","premarital","premature","prematurely","prematureness","prematurity","premaxilla","premaxillae","premedical","premeditate","premeditated","premeditates","premeditation","premenopausal","premenstrual","premie","premier","premiere","premiered","premieres","premiering","premiership","premise","premises","premiss","premium","premiums","premix","premolar","premonition","premonitory","prenatal","prenomen","prenomina","prenominal","prentice","prenuptial","preoccupancy","preoccupation","preoccupied","preoccupies","preoccupy","preoccupying","preoperative","preordain","preordains","preordination","prep","prepackaged","prepacked","prepaid","preparation","preparations","preparative","preparatory","prepare","prepared","preparedness","prepares","preparing","prepay","prepayment","prepays","preponderance","preponderant","preponderantly","preponderate","preponderates","preponderating","prepose","preposes","preposition","prepositional","prepositionally","prepossess","prepossesses","prepossessing","prepossession","preposterous","preposterously","prepotency","preprandial","prepubertal","prepuberty","prepubescent","prepuce","prepupal","prerecord","prerecorded","prerecords","prerequisite","prerequisites","prerogative","presa","presage","presages","presaging","presbyope","presbyopia","presbyopic","presbyter","presbytery","preschool","preschooler","preschoolers","prescience","prescient","presciently","prescribe","prescribed","prescribes","prescribing","prescript","prescription","prescriptions","prescriptive","prescriptivism","prese","preseason","presence","present","presentable","presentably","presentation","presentational","presentations","presented","presenter","presentiment","presenting","presentism","presentist","presently","presentment","presentness","presents","preservable","preservation","preservationist","preservative","preserve","preserved","preserver","preserves","preserving","preset","preside","presided","presidency","president","presidential","presidentially","presidents","presidentship","presides","presiding","presidio","presidium","presidiums","presignified","presignifies","presignify","presocratic","press","pressburg","pressed","presses","pressing","pressingly","pressman","pressmark","pressor","pressure","pressured","pressures","pressuring","pressurisation","pressurise","pressurised","pressurises","pressurising","pressurization","pressurize","pressurized","pressurizes","pressurizing","prestidigitation","prestidigitator","prestige","prestigious","prestigiousness","prestissimo","presto","presumable","presumably","presume","presumed","presumes","presuming","presumption","presumptive","presumptively","presumptuous","presumptuously","presumptuousness","presuppose","presupposes","presupposition","presymptomatic","preteen","preteenager","pretence","pretences","pretend","pretended","pretender","pretending","pretends","pretense","pretenses","pretension","pretentious","pretentiously","pretentiousness","preterist","preterit","preterite","preterition","pretermission","pretermit","pretermits","pretermitted","pretermitting","preternatural","preternaturally","pretext","pretor","pretorial","pretorian","pretorium","pretrial","prettied","prettier","prettiest","prettified","prettifies","prettify","prettily","prettiness","pretty","pretzel","preussen","prevacid","prevail","prevailed","prevailing","prevails","prevalence","prevalent","prevaricate","prevaricates","prevaricating","prevarication","prevaricator","prevenient","prevent","preventable","preventative","prevented","preventing","prevention","preventive","prevents","preview","previewing","previews","previous","previously","previse","previses","prevision","prevue","prewar","prexy","prey","preying","priapic","priapism","price","priced","priceless","pricelessness","prices","pricey","pricier","priciest","pricing","prick","pricked","pricker","pricket","pricking","prickle","prickleback","pricklier","prickliest","prickliness","prickling","prickly","pricks","prickteaser","pricy","pride","prideful","pridefulness","prides","priding","pried","priest","priestcraft","priestess","priesthood","priestlier","priestliest","priestlike","priestly","priests","prig","prigged","prigging","priggish","priggishly","priggishness","prilosec","prim","prima","primacy","primaeval","primal","primality","primaquine","primaries","primarily","primary","primate","primates","primateship","primatology","prime","primed","primer","primers","primeval","primi","primidone","primigravida","primigravidae","priming","primipara","primiparae","primiparous","primitive","primitively","primitiveness","primitivism","primly","primmed","primmer","primmest","primming","primness","primo","primogenitor","primogeniture","primordia","primordial","primordium","primp","primping","primps","primrose","prims","primula","primus","prince","princedom","princelier","princeliest","princeling","princely","princes","princess","princewood","principal","principality","principally","principals","principalship","Principe","principe","principen","principia","principium","principle","principled","principles","prinival","prink","prinks","print","printable","printed","printer","printers","printing","printmaker","printmaking","printout","prints","prion","prions","prior","prioress","priorities","prioritisation","prioritise","prioritised","prioritises","prioritising","prioritization","prioritize","prioritized","prioritizes","prioritizing","priority","priorship","priory","priscoan","prise","prises","prism","prismatic","prismatoid","prismoid","prison","prisonbreak","prisoner","prisoners","prisonlike","prisons","prissier","prissiest","prissily","prissy","pristine","privacy","private","privateer","privateersman","privately","privateness","privation","privatisation","privatisations","privatise","privatised","privatises","privatising","privatization","privatizations","privatize","privatized","privatizes","privatizing","privet","privier","priviest","privilege","privileged","privileges","privileging","privily","privine","privy","prize","prized","prizefight","prizefighter","prizefighting","prizes","prizewinning","prizing","prn","pro","pro-abortion","pro-active","pro-choice","pro-consumer","pro-consumption","pro-democracy","pro-enterprise","pro-environment","pro-family","pro-forma","pro-investment","Pro-life","pro-life","pro-rata","pro-selected","pro-union","proaccelerin","proactive","probabilism","probabilistic","probabilistically","probabilities","probability","probable","probably","probate","probation","probationary","probationer","probative","probatory","probe","probenecid","probes","probing","probiotic","probity","problem","problematic","problematical","problematically","problems","proboscidean","proboscides","proboscidian","proboscis","procaine","procarbazine","procardia","procaryote","procaryotic","procedural","procedure","procedures","proceed","proceeded","proceeding","proceedings","proceeds","process","processed","processes","processing","procession","processional","processions","processor","processors","prochlorperazine","proclaim","proclaimed","proclaiming","proclaims","proclamation","proclivity","proconsul","proconsular","proconsulate","proconsulship","proconvertin","procrastinate","procrastinates","procrastinating","procrastination","procrastinator","procreate","procreates","procreation","procreative","procrustean","proctalgia","proctitis","proctocele","proctologist","proctology","proctoplasty","proctor","proctorship","proctoscope","proctoscopy","procumbent","procurable","procural","procurance","procurator","procure","procurement","procurer","procures","procuress","procuring","procyclidine","procyonid","prod","prodded","prodding","prodigal","prodigality","prodigally","prodigious","prodigiously","prodigy","prodroma","prodromal","prodrome","prodromic","prods","produce","produced","producer","producers","produces","producing","product","production","productions","productive","productively","productiveness","productivity","products","proenzyme","prof","PROF.","Prof.","prof.","profanation","profanatory","profane","profaned","profanely","profaneness","profanity","profess","professed","professedly","professes","professing","profession","professional","professionalisation","professionalise","professionalised","professionalises","professionalising","professionalism","professionalization","professionalize","professionalized","professionalizes","professionalizing","professionally","professionals","professions","professor","professorial","professorially","professors","professorship","proffer","proffered","proffers","proficiency","proficient","proficiently","profile","profiled","profiles","profiling","profit","profitability","profitable","profitableness","profitably","profited","profiteer","profiteering","profiterole","profiting","profitless","profitlessly","profits","profligacy","profligate","profligately","profound","profoundly","profoundness","profundity","profuse","profusely","profuseness","profusion","progenitor","progenitors","progeny","progeria","progestational","progesterone","progestin","progestogen","proglottid","proglottides","prognathic","prognathism","prognathous","prognoses","prognosis","prognostic","prognosticate","prognosticates","prognosticating","prognostication","prognosticative","prognosticator","program","programing","programma","programme","programmed","programmer","programmers","programmes","programming","programs","progress","progressed","progresses","progressing","progression","progressive","progressively","progressiveness","progressives","progressivism","progressivity","progymnosperm","prohibit","prohibited","prohibiting","prohibition","prohibitionist","prohibitive","prohibitively","prohibitory","prohibits","proinflammatory","project","projected","projectile","projecting","projection","projectionist","projections","projector","projects","prokaryote","prokaryotes","prokaryotic","prokayotae","prolactin","prolamine","prolapse","prolapsus","prolate","prole","prolegomena","prolegomenon","prolepses","prolepsis","proletarian","proletariat","proliferate","proliferated","proliferates","proliferating","proliferation","prolific","prolificacy","proline","prolix","prolixity","prolixness","prolog","prologed","prologing","prologise","prologises","prologize","prologizes","prologs","prologue","prologues","prologuize","prolong","prolongation","prolonge","prolonged","prolonging","prolusion","prolusory","prom","promenade","promenading","promethazine","promethium","prominence","prominent","prominently","promiscuity","promiscuous","promiscuously","promiscuousness","promise","promised","promisee","promiser","promises","promising","promisingly","promisor","promissory","promo","promontory","promos","promote","promoted","promoter","promoters","promotes","promoting","promotion","promotional","promotions","promotive","prompt","promptbook","prompted","prompter","prompting","promptitude","promptly","promptness","prompts","promulgate","promulgated","promulgates","promulgating","promulgation","promulgator","promycelia","promycelium","pronate","pronates","pronation","pronator","prone","proneness","pronephra","pronephroi","pronephros","prong","prongbuck","pronged","pronghorn","prongy","pronk","pronks","pronominal","pronoun","pronounce","pronounceable","pronounced","pronouncement","pronouncements","pronounces","pronouncing","pronto","pronuclei","pronucleus","pronunciamento","pronunciation","pronunciations","proof","proofed","proofing","proofread","proofreader","proofreading","prop","propaedeutic","propaganda","propagandise","propagandised","propagandises","propagandising","propagandist","propagandistic","propagandize","propagandized","propagandizes","propagandizing","propagate","propagates","propagating","propagation","propagative","propagator","propanal","propanamide","propane","propanediol","propanol","propanolol","propanone","proparoxytone","propel","propellant","propelled","propellent","propeller","propelling","propellor","propels","propenal","propene","propenoate","propenonitrile","propensity","proper","properly","properness","propertied","properties","property","propertyless","prophase","prophecies","prophecy","prophesied","prophesier","prophesies","prophesy","prophesying","prophet","prophetess","prophetic","prophetical","prophetically","prophylactic","prophylaxis","prophyll","propinquity","propionaldehyde","propitiate","propitiates","propitiation","propitiative","propitiatory","propitious","propitiously","propitiousness","propjet","propman","proponent","proponents","proportion","proportionable","proportional","proportionality","proportionally","proportionate","proportionately","proportionateness","proportions","proposal","proposals","propose","proposed","proposer","proposes","proposing","propositi","proposition","propositioning","propositus","propound","propounding","propounds","propoxyphene","propped","propping","proprietary","proprietor","proprietorship","proprietress","propriety","proprioception","proprioceptive","proprioceptor","proprionamide","props","proptoses","proptosis","propulsion","propulsive","propyl","propyla","propylaea","propylaeum","propylene","propylon","propylthiouracil","prorate","prorates","proration","prorogation","prorogue","pros","prosaic","prosaically","prosaicness","proscenia","proscenium","prosciutto","proscribe","proscribed","proscribes","proscribing","proscription","prose","prosecute","prosecuted","prosecutes","prosecuting","prosecution","prosecutions","prosecutor","prosecutors","proselyte","proselytise","proselytised","proselytiser","proselytisers","proselytises","proselytising","proselytism","proselytize","proselytized","proselytizer","proselytizers","proselytizes","proselytizing","prosencephala","prosencephalon","proserpine","prosier","prosiest","prosily","prosimian","prosiness","prosodic","prosodion","prosody","prosom","prosopopoeia","prospect","prospecting","prospective","prospector","prospects","prospectus","prosper","prospered","prospering","prosperity","prosperous","prosperously","prospers","prospicience","prospicient","prostaglandin","prostate","prostatectomy","prostatic","prostatitis","prostheon","prostheses","prosthesis","prosthetic","prosthetics","prosthetist","prosthion","prosthodontia","prosthodontic","prosthodontics","prosthodontist","prostigmin","prostitute","prostitutes","prostituting","prostitution","prostomia","prostomium","prostrate","prostrates","prostrating","prostration","prostyle","prosy","protactinium","protagonism","protagonist","protamine","protanopia","protanopic","protases","protasis","protea","protean","protease","proteases","protect","protected","protecting","protection","protectionism","protectionist","protections","protective","protectively","protectiveness","protector","protectorate","protectorship","protects","protege","protegee","protein","proteinaceous","proteinase","proteins","proteinuria","proteolysis","proteolytic","proteome","proteomes","proteomics","proteosome","proterozoic","protest","protestant","protestation","protested","protester","protesters","protesting","protests","prothalamia","prothalamion","prothalamium","prothalli","prothallia","prothallium","prothallus","prothoraces","prothorax","prothrombin","prothrombinase","protirelin","protist","protistan","proto","protoactinium","protoanthropology","protoarchaeology","protoarcheology","protoavis","protoceratops","protocol","protocols","protoctist","protogeometric","protoheme","protohemin","protohippus","protohistory","protology","protomammal","proton","protonema","protonemata","protoplasm","protoplast","prototherian","prototypal","prototype","prototypes","prototypic","prototypical","protozoa","protozoal","protozoan","protozoic","protozoological","protozoologist","protozoology","protozoon","protract","protracted","protractedly","protractible","protractile","protraction","protractor","protracts","protriptyline","protrude","protrudes","protruding","protrusible","protrusile","protrusion","protrusions","protrusive","protuberance","protuberant","protuberate","protuberates","proturan","proud","proudly","proustian","provability","provable","provably","prove","proved","proven","provenance","provencal","provender","provenience","proventil","proventriculi","proventriculus","provera","proverb","proverbial","proverbially","proverbs","proves","provide","provided","provident","providential","providentially","providently","provider","providers","provides","providing","province","provinces","provincial","provincialism","provincially","proving","provirus","provision","provisional","provisionally","provisionary","provisioner","provisions","proviso","provisoes","provisory","provitamin","provocateur","provocation","provocative","provocatively","provoke","provoked","provoker","provokes","provoking","provokingly","provost","prow","prowess","prowl","prowler","prowling","prowls","prox","proxemics","proximal","proximate","proximity","proximo","proxy","prozac","prs","prude","prudence","prudent","prudential","prudently","prudery","prudish","prudishly","prudishness","prune","pruned","pruner","prunes","pruning","pruno","prurience","pruriency","prurient","pruriently","prurigo","pruritus","prussian","pry","prying","pryingly","prytanea","prytaneum","Pr\xEDncipe","pr\xEDncipe","psa","psalm","psalmist","psalmody","psalteria","psalterium","psaltery","psammoma","psephologist","psephology","pseud","pseudo","pseudo-lobbyists","pseudobulb","pseudocarp","pseudocyesis","pseudoephedrine","pseudohallucination","pseudohermaphrodite","pseudohermaphroditic","pseudohermaphroditism","pseudomonad","pseudonym","pseudonymous","pseudoperipteral","pseudophloem","pseudopod","pseudopodia","pseudopodium","pseudoprostyle","pseudorubella","pseudoscience","pseudoscientific","pseudoscorpion","pseudoscorpiones","pseudoscorpionida","pseudosmallpox","pseudovariola","psf","psi","psilocin","psilocybin","psilomelane","psilophyte","psilophyton","psilosis","psilotatae","psittacosaur","psittacosaurus","psittacosis","psoas","psocid","psoriasis","pst","psyche","psychedelia","psychedelic","psychiatric","psychiatrical","psychiatrist","psychiatrists","psychiatry","psychic","psychical","psychically","psycho","psychoactive","psychoanalyse","psychoanalysed","psychoanalyses","psychoanalysing","psychoanalysis","psychoanalyst","psychoanalytic","psychoanalytical","psychoanalyze","psychoanalyzed","psychoanalyzes","psychoanalyzing","psychobabble","psychodid","psychodynamics","psychogenesis","psychogenetic","psychogenic","psychokinesis","psychokinetic","psycholinguist","psycholinguistic","psycholinguistics","psychological","psychologically","psychologist","psychologists","psychology","psychometric","psychometrics","psychometrika","psychometry","psychomotor","psychoneuroses","psychoneurosis","psychoneurotic","psychonomics","psychopath","psychopathic","psychopathologic","psychopathological","psychopathology","psychopathy","psychopharmacological","psychopharmacology","psychophysicist","psychophysics","psychophysiology","psychopomp","psychoses","psychosexual","psychosexuality","psychosis","psychosomatic","psychosurgery","psychotherapeutic","psychotherapeutics","psychotherapist","psychotherapy","psychotic","psychotropic","psychrometer","psylla","psyllid","psyllium","psyop","pt","PT.","Pt.","pt.","ptarmigan","pteretis","pteridological","pteridologist","pteridology","pteridophyte","pteridosperm","pteridospermaphyta","pterion","pterodactyl","pteropogon","pterosaur","pterygia","pterygium","pteryla","pterylae","pto","ptolemaic","ptomain","ptomaine","ptoses","ptosis","ptsd","PTY.","Pty.","pty.","ptyalin","ptyalise","ptyalism","ptyalith","ptyalize","pub","pubbed","pubbing","pubertal","puberty","puberulent","pubes","pubescence","pubescent","pubic","pubis","public","publically","publican","publication","publications","publicise","publicised","publiciser","publicises","publicising","publicist","publicity","publicize","publicized","publicizer","publicizes","publicizing","publicly","publish","publishable","published","publisher","publishers","publishes","publishing","pubs","puccoon","puce","pucka","pucker","puckerbush","puckering","puckers","puckish","puckishly","puckishness","pud","pudding","puddingheaded","puddingwife","puddle","puddler","puddles","puddling","pudenda","pudendal","pudendum","pudge","pudgier","pudgiest","pudginess","pudgy","puerile","puerility","puerpera","puerperal","puerperium","puff","puffball","puffbird","puffed","puffer","pufferfish","puffery","puffier","puffiest","puffin","puffiness","puffing","puffs","puffy","pug","pugged","pugging","pugilism","pugilist","pugilistic","pugnacious","pugnaciously","pugnacity","puissance","puissant","puka","puke","pukes","puking","pukka","puku","pul","pula","pulasan","pulassan","pulchritude","pulchritudinous","pule","puli","pull","pullback","pulled","puller","pullet","pulley","pulling","pullout","pullover","pulls","pullulate","pullulates","pullulation","pulmonary","pulmonic","pulp","pulpier","pulpiest","pulpiness","pulpit","pulpwood","pulpy","pulque","pulsar","pulsate","pulsates","pulsating","pulsation","pulse","pulseless","pulses","pulsing","pulverisation","pulverise","pulverised","pulverises","pulverising","pulverization","pulverize","pulverized","pulverizes","pulverizing","pulvilli","pulvillus","pulvini","pulvinus","puma","pumice","pummel","pummeled","pummelled","pummelling","pummelo","pummels","pump","pumped","pumpernickel","pumping","pumpkin","pumpkinseed","pumps","pun","punch","punchayet","punchball","punchboard","punched","puncher","punches","punchier","punchiest","punchinello","punchinelloes","punching","punchy","punctilio","punctilious","punctiliously","punctiliousness","punctual","punctuality","punctually","punctuate","punctuates","punctuating","punctuation","punctum","puncturable","puncture","punctured","punctureless","punctures","puncturing","pundit","pundits","pung","pungapung","pungency","pungent","pungently","punic","punier","puniest","punily","puniness","punish","punishable","punished","punishes","punishing","punishingly","punishment","punishments","punitive","punitively","punitorily","punitory","punk","punkah","punkey","punkie","punky","punned","punnet","punning","puns","punster","punt","punter","punting","puny","pup","pupa","pupae","pupal","puparia","puparium","pupate","pupates","pupil","pupillary","pupils","pupped","puppet","puppeteer","puppetry","puppets","puppies","pupping","puppy","puppyish","puppylike","pups","puranic","purau","purblind","purchasable","purchase","purchased","purchaser","purchases","purchasing","purdah","pure","pureblood","pureblooded","purebred","puree","pureeing","purees","purely","pureness","purest","purgation","purgative","purgatorial","purgatory","purge","purged","purges","purging","purification","purified","purifier","purifies","purify","purifying","purine","purinethol","purism","purist","purists","puritan","puritanic","puritanical","puritanically","purity","purl","purlieu","purling","purloin","purloo","purple","purpleness","purplish","purport","purportedly","purporting","purports","purpose","purposeful","purposefully","purposefulness","purposeless","purposelessly","purposelessness","purposely","purposes","purposive","purpura","purpurate","purr","purring","purrs","purse","purser","purses","pursing","purslane","pursual","pursuance","pursuant","pursue","pursued","pursuer","pursues","pursuing","pursuit","pursuits","pursy","purulence","purulency","purulent","purvey","purveyance","purveying","purveyor","purveys","purview","puseyism","push","pushball","pushcart","pushchair","pushed","pusher","pushes","pushful","pushier","pushiest","pushiness","pushing","pushover","pushpin","pushtun","pushup","pushy","pusillanimity","pusillanimous","pusillanimously","pusillanimousness","pussier","pussiest","pussley","pussly","pussy","pussycat","pussyfoot","pussytoes","pustulate","pustule","put","putamen","putamina","putative","putdownable","putoff","putout","putrefacient","putrefaction","putrefactive","putrefiable","putrefied","putrefies","putrefy","putrefying","putrescence","putrescent","putrescible","putrescine","putrid","putridity","putridness","puts","putsch","putt","puttee","putter","putterer","puttering","putti","puttied","putting","putto","putts","putty","puttyroot","putz","puzzle","puzzled","puzzlement","puzzler","puzzles","puzzling","pva","pvc","pwr","pya","pyaemia","pyaemic","pycnidia","pycnidium","pycnodysostosis","pycnogonid","pycnosis","pycnotic","pyelitis","pyelogram","pyelography","pyelonephritis","pyemia","pyemic","pygidia","pygidium","pyinma","pyjama","pyjamas","pyknic","pyknosis","pyknotic","pylon","pylori","pyloric","pylorus","pyocyanase","pyocyanin","pyogenic","pyorrhea","pyorrhoea","pyracanth","pyralid","pyralididae","pyramid","pyramidal","pyramidic","pyramidical","pyramidically","pyramiding","pyramids","pyre","pyrectic","pyrene","pyretic","pyrexia","pyridine","pyridium","pyridoxal","pyridoxamine","pyridoxine","pyrilamine","pyrimidine","pyrite","pyrocellulose","pyrochemical","pyrochemistry","pyroelectric","pyroelectrical","pyroelectricity","pyrogallic","pyrogallol","pyrogen","pyrogenetic","pyrogenic","pyrogenous","pyrograph","pyrographer","pyrographic","pyrography","pyrola","pyrolatry","pyroligneous","pyrolignic","pyrolusite","pyrolysis","pyrolytic","pyromancer","pyromancy","pyromania","pyromaniac","pyrometer","pyromorphite","pyrope","pyrophobia","pyrophosphate","pyrophyllite","pyroscope","pyrosis","pyrostat","pyrotechnic","pyrotechnical","pyrotechny","pyroxene","pyroxylin","pyroxyline","pyrrhic","pyrrhotine","pyrrhotite","pyrrhuloxia","pythagorean","pythium","pythoness","pyuria","pyx","pyxides","pyxidia","pyxidium","pyxie","pyxis","pzazz","qabala","qabalah","qabalistic","qabbala","qabbalah","qaddish","qaddishim","qadhafi","qadi","qaeda","qandahar","qat","Qatar","qatar","qatari","qcd","qed","qepiq","qiangic","qindarka","qintar","qoph","QT.","Qt.","qt.","quaalude","quack","quackery","quackgrass","quacking","quacks","quad","quadrangle","quadrangular","quadrant","quadrantanopia","quadraphonic","quadraphony","quadrasonic","quadrate","quadratic","quadrature","quadrennia","quadrennium","quadric","quadriceps","quadriga","quadrigae","quadrilateral","quadrille","quadrillion","quadrillionth","quadripara","quadripartite","quadriphonic","quadriplegia","quadriplegic","quadrisonic","quadrivium","quadroon","quadrumvirate","quadruped","quadrupedal","quadruple","quadrupled","quadruples","quadruplet","quadruplex","quadruplicate","quadruplicates","quadrupling","quaestor","quaff","quaffer","quaffing","quaffs","quag","quagga","quaggier","quaggiest","quaggy","quagmire","quahaug","quahog","quail","quaint","quaintly","quaintness","quake","quaker","quakes","quakier","quakiest","quaking","quaky","quale","qualia","qualification","qualifications","qualified","qualifier","qualifies","qualify","qualifying","qualitative","qualitatively","qualities","quality","qualm","qualms","quamash","quamassia","quandang","quandary","quandong","quango","quanta","quantal","quantic","quantifiability","quantifiable","quantification","quantified","quantifier","quantifies","quantify","quantifying","quantisation","quantise","quantises","quantitative","quantitatively","quantities","quantity","quantization","quantize","quantized","quantizes","quantong","quantum","quarantine","quarantined","quarantines","quark","quarrel","quarreled","quarreler","quarreling","quarrelled","quarreller","quarrelling","quarrels","quarrelsome","quarrelsomeness","quarried","quarrier","quarries","quarry","quarrying","quarryman","quart","quartan","quarter","quarterback","quarterbacking","quarterbacks","quarterdeck","quarterfinal","quartering","quarterlight","quarterly","quartermaster","quartern","quarters","quarterstaff","quarterstaves","quartervine","quartet","quartette","quartic","quartile","quartiles","quarto","quartz","quartzite","quartzose","quasar","quash","quashed","quashes","quashing","quasi","quasi-federal","quasi-governmental","quasi-xenophobic","quasiparticle","quassia","quat","quatercentenary","quatercentennial","quatern","quaternary","quaternate","quaternion","quaternity","quatrain","quattrocento","quaver","quavering","quaveringly","quavers","quay","quayage","queasier","queasiest","queasily","queasiness","queasy","quebecois","quechuan","queen","queenfish","queening","queenlier","queenliest","queenlike","queenly","queens","queer","queerly","queerness","quell","quelled","quelling","quells","quellung","quench","quenched","quenches","quenching","quenchless","quercitron","queried","querier","queries","quern","querulous","querulously","querulousness","query","querying","quesadilla","quest","quester","questing","question","questionable","questionably","questioned","questioner","questioning","questioningly","questionnaire","questionnaires","questions","quetch","quetzal","queue","queues","queuing","quezal","quezales","quiaquia","quibble","quibbler","quibbling","quick","quicken","quickener","quickening","quickens","quicker","quickest","quickie","quicklime","quickly","quickness","quicksand","quickset","quicksilver","quickstep","quickstepped","quickstepping","quicky","quid","quiddity","quidnunc","quiesce","quiescence","quiescency","quiescent","quiesces","quiet","quieted","quieten","quietens","quieting","quietism","quietist","quietly","quietness","quietude","quietus","quiff","quill","quillwort","quilt","quilted","quilting","quilts","quin","quinacrine","quince","quincentenary","quincentennial","quinidex","quinidine","quinine","quinone","quinora","quinquefoliate","quinquennia","quinquennium","quinsy","quint","quintal","quintessence","quintessential","quintet","quintette","quintillion","quintillionth","quintipara","quintuple","quintuplet","quintupling","quip","quipped","quipping","quips","quipu","quira","quire","quirk","quirkiness","quirky","quirt","quisling","quislingism","quit","quitclaim","quite","quits","quittance","quitted","quitter","quitting","quiver","quivering","quivers","quixotic","quixotically","quixotism","quiz","quizmaster","quizzed","quizzer","quizzes","quizzical","quizzically","quizzing","quodlibet","quoin","quoit","quondam","quorum","quota","quotability","quotable","quotas","quotation","quotations","quote","quoted","quoter","quotes","quotidian","quotient","quoting","quran","qurush","r.c.","R.I.","r.i.","rabato","rabatos","rabbet","rabbeting","rabbi","rabbinate","rabbinic","rabbinical","rabbis","rabbit","rabbiteye","rabbitfish","rabbitfishes","rabbits","rabbitweed","rabbitwood","rabble","rabelaisian","rabid","rabidity","rabidly","rabidness","rabies","raccoon","race","raceabout","racecard","racecourse","raced","racehorse","raceme","racemose","racer","racerunner","races","racetrack","raceway","rachet","rachides","rachis","rachischisis","rachitic","rachitis","rachmaninov","racial","racialism","racialist","racially","racier","raciest","racily","raciness","racing","racism","racist","racists","rack","racked","racker","racket","racketeer","racketeering","racketiness","rackety","racking","racks","racon","raconteur","racoon","racquet","racquetball","racy","rad","radar","raddle","raddled","radial","radially","radian","radiance","radiancy","radiant","radiantly","radiate","radiates","radiating","radiation","radiator","radical","radicalise","radicalised","radicalises","radicalising","radicalism","radicalize","radicalized","radicalizes","radicalizing","radically","radicals","radicchio","radices","radicle","radiculitis","radii","radio","radioactive","radioactively","radioactivity","radiobiologist","radiobiology","radiocarbon","radiochemist","radiochemistry","radiochlorine","radiocommunication","radiogram","radiograph","radiographer","radiographic","radiography","radioimmunoassay","radioing","radioisotope","radiolarian","radiolocate","radiolocation","radiological","radiologist","radiology","radiolucent","radiolysis","radiometer","radiomicrometer","radiopacity","radiopaque","radiopharmaceutical","radiophone","radiophonic","radiophoto","radiophotograph","radiophotography","radioprotection","radios","radioscopy","radiosensitive","radiosensitivity","radiotelegraph","radiotelegraphy","radiotelephone","radiotelephonic","radiotelephony","radiotherapist","radiotherapy","radiothorium","radish","radium","radius","radix","radome","radon","radula","radulae","raetam","RAF","raf","raffinose","raffish","raffishly","raffle","raft","rafter","raftered","rafting","raftman","raftsman","rag","ragamuffin","ragbag","rage","raged","ragee","rageful","rages","ragged","raggedly","raggedness","ragging","ragi","raging","raglan","ragnarok","ragout","ragpicker","rags","ragsorter","ragtag","ragtime","ragusa","ragweed","ragwort","raid","raided","raider","raiding","raids","rail","railbird","railcar","railhead","railing","railings","raillery","railroad","railroader","railroading","rails","railway","railwayman","railways","railyard","raiment","raimentless","rain","rainbow","raincoat","raindrop","rained","rainfall","rainfly","rainforest","rainier","rainiest","raininess","raining","rainless","rainmaker","rainmaking","rainproof","rains","rainstorm","rainwater","rainy","raisable","raise","raiseable","raised","raiser","raises","raisin","raising","raita","raiu","raj","rajah","rajanya","rajpoot","rake","raked","rakehell","rakes","raking","rakish","rakishly","rakishness","rale","ralegh","rallentando","rallied","rallies","rally","rallying","RAM","Ram","ram","ramate","ramble","rambled","rambler","rambles","rambling","ramblingly","rambotan","rambunctious","rambutan","ramee","ramekin","ramenta","ramentum","ramequin","ramesses","rami","ramie","ramification","ramifications","ramified","ramifies","ramify","ramifying","ramipril","ramjet","rammed","rammer","ramming","ramona","ramontchi","ramose","ramous","ramp","rampage","rampageous","rampages","rampaging","rampant","rampantly","rampart","ramparts","ramping","rampion","ramps","ramrod","Rams","rams","ramses","ramshackle","ramsons","ramus","ran","ranch","rancher","ranchers","ranches","ranching","rancid","rancidity","rancidness","rancor","rancorous","rancour","randier","randiest","random","randomisation","randomise","randomised","randomises","randomising","randomization","randomize","randomized","randomizes","randomizing","randomly","randomness","randy","ranee","rang","range","ranged","rangefinder","rangeland","ranger","ranges","rangier","rangiest","ranging","rangoon","rangpur","rangy","rani","ranid","ranitidine","rank","ranked","ranker","ranking","rankings","rankle","rankled","rankles","rankling","rankness","ranks","ransack","ransacked","ransacking","ransacks","ransom","ransomed","rant","ranter","ranters","ranting","rants","ranula","ranulae","ranunculales","ranunculi","ranunculus","rap","rapacious","rapaciously","rapaciousness","rapacity","rape","raped","raper","rapeseed","raphae","raphe","raphia","raphide","raphides","rapid","rapidity","rapidly","rapidness","rapids","rapier","rapine","raping","rapist","rapped","rappee","rappel","rappelled","rappeller","rappelling","rappels","rapper","rappers","rapping","rapport","rapporteur","rapprochement","raps","rapscallion","rapt","raptor","raptorial","rapture","raptured","raptures","rapturous","rapturously","raptus","rare","rarebit","rarefaction","rarefied","rarefies","rarefy","rarely","rareness","rarer","rarified","rarify","raring","rariora","rarity","rascal","rascality","rascally","rase","rash","rasher","rashly","rashness","rasp","raspberry","rasping","raspingly","raspy","rassling","rasta","rastafarian","raster","rasterize","rat","ratability","ratable","ratables","ratafee","ratafia","ratan","rataplan","ratatouille","ratch","ratchet","ratcheting","rate","rateability","rateable","rateables","rated","ratel","ratepayer","rates","ratfish","ratfishes","Rather","rather","rathole","rathskeller","ratification","ratified","ratifier","ratifies","ratify","ratifying","rating","ratings","ratio","ratiocinate","ratiocination","ratiocinative","ratiocinator","ration","rational","rationale","rationalisation","rationalisations","rationalise","rationalised","rationalises","rationalising","rationalism","rationalist","rationalistic","rationality","rationalization","rationalizations","rationalize","rationalized","rationalizes","rationalizing","rationally","rationalness","rationed","rationing","rations","ratios","ratite","ratlike","ratlin","ratline","rats","ratsbane","rattail","rattan","ratted","ratter","rattes","rattier","rattiest","ratting","rattle","rattlebox","rattlebrained","rattled","rattlepated","rattler","rattles","rattlesnake","rattlier","rattliest","rattling","rattly","rattrap","ratty","raucous","raucously","raudixin","raunch","raunchier","raunchiest","raunchy","rauvolfia","rauwolfia","ravage","ravaged","ravages","ravaging","rave","ravehook","ravel","raveled","raveling","ravelled","ravelling","ravels","raven","ravenala","ravening","ravenous","ravenously","ravenousness","raver","raves","ravigote","ravigotte","ravine","raving","ravingly","ravioli","ravish","ravisher","ravishes","ravishing","ravishingly","ravishment","raw","rawboned","rawhide","rawness","ray","rayless","rayon","rays","razbliuto","raze","razed","razes","razing","razmataz","razor","razorback","razorbill","razorblade","razz","razzing","razzle","razzmatazz","rbc","rbi","rcmp","RD.","Rd.","rd.","RE","Re","re","re-creactions","Re-creating","re-creating","re-creations","re-elected","re-election","re-emerge","re-emergence","re-enacting","re-enactment","re-enactments","re-energized","re-enter","re-entered","re-establish","re-establishing","re-evaluate","re-evaluating","re-examine","re-exports","re-route","re-routed","re-routing","re-thought","reabsorb","reabsorbing","reabsorbs","reabsorption","reach","reachable","reached","reaches","reaching","react","reactance","reactant","reacted","reacting","reaction","reactionary","reactionism","reactionist","reactions","reactivate","reactivated","reactivates","reactivating","reactive","reactivity","reactor","reactors","reacts","read","readability","readable","readably","readapt","reader","readers","readership","readier","readies","readiest","readily","readiness","reading","readings","readjust","readjusting","readjustment","readjusts","readmission","readmit","readout","reads","ready","readying","reaffiliation","reaffirm","reaffirmation","reaffirmed","reaffirming","reaffirms","reagent","reagents","reagin","real","reales","realgar","realign","realigned","realigning","realigns","realine","realisable","realisation","realisations","realise","realised","realises","realising","realism","realist","realistic","realistically","realities","reality","realizable","realization","realizations","realize","realized","realizes","realizing","reallocate","reallocated","reallocates","reallocating","reallocation","reallot","reallotment","really","realm","realms","realness","realpolitik","realty","ream","reamer","reams","reanimate","reanimated","reanimates","reanimating","reap","reaped","reaper","reaping","reappear","reappearance","reappearing","reappears","reapportion","reapportionment","reappraisal","reappraise","reappraised","reappraises","reappraising","reaps","rear","reared","rearguard","rearing","rearm","rearmament","rearmice","rearming","rearmost","rearmouse","rearms","rearrange","rearrangement","rearrangements","rearranges","rearranging","rears","rearward","rearwards","reason","reasonable","reasonableness","reasonably","reasoned","reasoner","reasoning","reasonless","reasons","reassail","reassails","reassemble","reassembles","reassembling","reassembly","reassert","reasserting","reassertion","reasserts","reassess","reassesses","reassessing","reassessment","reassign","reassigned","reassigning","reassignment","reassigns","reassurance","reassure","reassured","reassures","reassuring","reassuringly","reata","reattribute","reattributes","reave","reaves","reawaken","reawakening","reawakens","reb","rebarbative","rebate","rebating","rebato","rebekah","rebel","rebelled","rebelling","rebellion","rebellious","rebelliously","rebelliousness","rebels","rebind","rebirth","reboot","rebooting","reboots","reborn","rebound","rebounded","rebounding","rebounds","reboxetine","rebozo","rebroadcast","rebroadcasting","rebroadcasts","rebuff","rebuffed","rebuffing","rebuffs","rebuild","rebuilding","rebuilds","rebuilt","rebuke","rebuked","rebuker","rebuking","rebukingly","reburial","reburies","rebury","reburying","rebus","rebut","rebuts","rebuttal","rebutted","rebutter","rebutting","recalcitrance","recalcitrancy","recalcitrant","recalcitrate","recalcitrates","recalculate","recalculated","recalculates","recalculating","recalculation","recall","recalled","recalling","recalls","recant","recantation","recanted","recanting","recap","recapitulate","recapitulates","recapitulating","recapitulation","recapped","recapping","recaps","recapture","recaptures","recapturing","recast","recasting","recasts","recce","recco","reccy","recede","recedes","receding","receipt","receipts","receivable","receivables","receive","received","receiver","receivers","receivership","receives","receiving","recency","recent","recently","recentness","receptacle","reception","receptionist","receptive","receptively","receptiveness","receptivity","receptor","receptors","recess","recessed","recesses","recession","recessional","recessionary","recessive","recharge","rechargeable","recharges","recharging","rechauffe","recherche","recidivate","recidivism","recidivist","recipe","recipes","recipient","recipients","reciprocal","reciprocality","reciprocally","reciprocate","reciprocates","reciprocating","reciprocation","reciprocative","reciprocatory","reciprocity","recirculation","recission","recital","recitalist","recitation","recitative","recite","reciter","recites","reciting","reckless","recklessly","recklessness","reckon","reckoned","reckoner","reckoning","reckons","reclaim","reclaimable","reclaimed","reclaiming","reclaims","reclamation","reclassification","reclassified","reclassifies","reclassify","recline","recliner","reclines","reclining","recluse","reclusive","reclusiveness","recode","recodes","recoding","recognisable","recognisably","recognisance","recognise","recognised","recognises","recognising","recognition","recognizable","recognizably","recognizance","recognize","recognized","recognizes","recognizing","recoil","recoiling","recoilless","recoils","recollect","recollecting","recollection","recollections","recollective","recollects","recombinant","recombination","recombine","recombines","recombining","recommence","recommencement","recommences","recommencing","recommend","recommendation","recommendations","recommended","recommending","recommends","recommit","recommits","recommitted","recommitting","recompense","reconcilable","reconcile","reconciled","reconciler","reconciles","reconciliation","reconciling","recondite","reconditeness","recondition","reconditioning","reconditions","reconfirm","reconfirming","reconfirms","reconnaissance","reconnoiter","reconnoitered","reconnoitering","reconnoiters","reconnoitre","reconnoitred","reconnoitres","reconnoitring","reconquer","reconquers","reconsecrate","reconsecrates","reconsider","reconsideration","reconsidered","reconsidering","reconsiders","reconstitute","reconstitutes","reconstituting","reconstruct","reconstructed","reconstructing","reconstruction","reconstructive","reconstructs","reconvene","reconvenes","reconvert","reconverts","reconvict","reconvicts","recopied","recopies","recopy","recopying","record","recorded","recorder","recorders","recording","recordings","records","recount","recounted","recounting","recounts","recoup","recouped","recouping","recoups","recourse","recover","recoverable","recovered","recoverer","recovering","recovers","recovery","recreant","recreate","recreates","recreating","recreation","recreational","recriminate","recriminates","recriminating","recrimination","recriminative","recriminatory","recrudesce","recrudescence","recrudescent","recruit","recruited","recruiter","recruiting","recruitment","recruits","recta","rectal","rectangle","rectangular","rectangularity","recti","rectifiable","rectification","rectified","rectifier","rectifies","rectify","rectifying","rectilineal","rectilinear","rectitude","recto","rectocele","rectoplasty","rector","rectorate","rectorship","rectory","rectosigmoid","rectrices","rectrix","rectum","rectus","recumb","recumbent","recuperate","recuperates","recuperating","recuperation","recuperative","recur","recurred","recurrence","recurrent","recurrently","recurring","recurs","recursion","recursive","recurvate","recurve","recurved","recusal","recusancy","recusant","recusation","recuse","recused","recuses","recusing","recyclable","recycle","recycled","recycles","recycling","red","redact","redacting","redaction","redactor","redacts","redbelly","redberry","redbird","redbone","redbreast","redbrick","redbrush","redbud","redbug","redcap","redcoat","redded","redden","reddened","reddening","reddens","redder","reddest","redding","reddish","reddle","rede","redecorate","redecorates","redecorating","rededicate","rededicates","rededication","redeem","redeemable","redeemed","redeemer","redeeming","redeems","redefine","redefined","redefines","redefining","redefinition","redemption","redemptional","redemptive","redemptory","redeploy","redeploying","redeployment","redeploys","redeposit","redeposition","redes","redesign","redesigned","redesigning","redesigns","redetermination","redetermine","redetermines","redevelop","redeveloping","redevelopment","redevelops","redeye","redfish","redfishes","redhead","redheaded","redheader","redhorse","redia","rediae","redirect","redirected","redirecting","redirects","rediscover","rediscovering","rediscovers","rediscovery","redispose","redisposition","redistribute","redistributed","redistributes","redistributing","redistribution","redline","redlines","redlining","redly","redmaids","redneck","redness","redo","redoes","redoing","redolence","redolent","redouble","redoubled","redoubles","redoubling","redoubt","redoubtable","redound","redox","redpoll","redraft","redress","redresses","redressing","redroot","reds","redshank","redshift","redstart","redtail","reduce","reduced","reducer","reduces","reducible","reducing","reductant","reductase","reductio","reduction","reductionism","reductionist","reductions","reductive","reductivism","redundance","redundancy","redundant","reduplicate","reduplication","reduviid","redux","redwing","redwood","reecho","reechoing","reedbird","reedier","reediest","reedlike","reedmace","reedy","reef","reefer","reefers","reefs","reefy","reek","reeking","reeks","reel","reelect","reelecting","reelection","reelects","reeled","reeler","reeling","reels","reenact","reenacting","reenactment","reenactor","reenacts","reenforce","reenforcement","reenlistment","reentrant","reentry","reestablish","reestablishes","reestablishing","reevaluate","reevaluates","reevaluating","reevaluation","reeve","reexamination","reexamine","reexamines","reexamining","ref","refabrication","reface","refaces","refashion","refashions","refection","refectory","refer","referable","referee","refereeing","referees","reference","referenced","references","referencing","referenda","referendum","referent","referential","refering","referral","referrals","referred","referring","refers","refill","refilling","refills","refinance","refinanced","refinances","refinancing","refine","refined","refinement","refiner","refinery","refines","refining","refinish","refinisher","refinishes","refinishing","refit","refits","refitted","refitting","reflate","reflating","reflation","reflect","reflectance","reflected","reflecting","reflection","reflections","reflective","reflectively","reflectiveness","reflectivity","reflectometer","reflector","reflectorise","reflectorises","reflectorize","reflectorizes","reflects","reflex","reflexed","reflexes","reflexion","reflexive","reflexively","reflexiveness","reflexivity","reflexly","reflexology","refloat","reflux","refocus","refocused","refocuses","refocusing","reforest","reforestation","reforge","reform","reformable","reformative","reformatory","reformed","reformer","reformers","reforming","reformism","reformist","reforms","reformulate","reformulated","reformulates","reformulating","refract","refractile","refracting","refraction","refractive","refractiveness","refractivity","refractometer","refractoriness","refractory","refracts","refracture","refrain","refrained","refraining","refrains","refresh","refreshed","refreshen","refresher","refreshes","refreshful","refreshfully","refreshing","refreshingly","refreshment","refrigerant","refrigerate","refrigerated","refrigerates","refrigerating","refrigeration","refrigerator","refrigerators","refuel","refueled","refueling","refuelled","refuelling","refuels","refuge","refugee","refugees","refugia","refugium","refulgence","refulgency","refulgent","refund","refunded","refunding","refunds","refurbish","refurbished","refurbishes","refurbishing","refurbishment","refurnish","refusal","refuse","refused","refuses","refusing","refutable","refutal","refutation","refute","refuted","refuter","refutes","refuting","regain","regained","regaining","regains","regal","regale","regales","regalia","regaling","regally","regard","regardant","regarded","regardful","regarding","regardless","Regards","regards","regatta","regenerate","regenerates","regenerating","regeneration","regent","reggae","regicide","regift","regime","regimen","regimens","regiment","regimental","regimentally","regimentals","regimentation","regimented","regimenting","regimes","regiomontanus","region","regional","regionalism","regionally","regions","register","registered","registering","registers","registrant","registrar","registration","registry","regnant","regnellidium","regorge","regosol","regress","regresses","regressing","regression","regressive","regret","regretful","regretfully","regrets","regrettable","regrettably","regretted","regretting","regroup","regrouping","regroups","regrow","regrows","regular","regularisation","regularise","regularised","regularises","regularising","regularity","regularization","regularize","regularized","regularizes","regularizing","regularly","regulars","regulate","regulated","regulates","regulating","regulation","regulations","regulative","regulator","regulators","regulatory","reguli","regulus","regur","regurgitate","regurgitates","regurgitating","regurgitation","rehabilitate","rehabilitated","rehabilitates","rehabilitating","rehabilitation","rehabilitative","reharmonisation","reharmonise","reharmonization","reharmonize","rehash","rehashes","rehashing","rehear","rehearing","rehearsal","rehearsals","rehearse","rehearses","rehearsing","reheat","reheating","reheats","reheel","reheels","rehouse","rehouses","rehousing","reification","reified","reifies","reify","reifying","reign","reigned","reigning","reignite","reignited","reignites","reigniting","reigns","reimburse","reimbursed","reimbursement","reimburses","reimbursing","reimpose","reimposition","reims","rein","reincarnate","reincarnation","reincarnationism","reindeer","reinforce","reinforced","reinforcement","reinforcer","reinforces","reinforcing","reining","reins","reinstall","reinstalled","reinstalling","reinstalls","reinstate","reinstated","reinstatement","reinstates","reinstating","reinsurance","reinsure","reinsures","reintegrate","reintegrated","reintegrates","reintegrating","reinterpret","reinterpretation","reinterpreting","reintroduce","reintroduced","reintroduces","reintroducing","reintroduction","reinvent","reinvented","reinventing","reinvents","reinvigorate","reinvigorated","reinvigorates","reinvigorating","reis","reissue","reit","reiterate","reiterated","reiterates","reiterating","reiteration","reiterative","reject","rejected","rejecting","rejection","rejective","rejects","rejig","rejigs","rejoice","rejoiced","rejoices","rejoicing","rejoin","rejoinder","rejoined","rejoining","rejoins","rejuvenate","rejuvenates","rejuvenating","rejuvenation","rekindle","rekindled","rekindles","rekindling","relace","relaces","relafen","relapse","relapses","relapsing","relata","relate","related","relatedness","relates","relating","relation","relational","relations","relationship","relationships","relative","relatively","relatives","relativise","relativism","relativistic","relativistically","relativity","relativize","relatum","relax","relaxant","relaxation","relaxed","relaxer","relaxes","relaxin","relaxing","relay","relayed","relaying","relays","relearn","relearning","relearns","release","released","releases","releasing","relegate","relegated","relegates","relegating","relegation","relent","relented","relenting","relentless","relentlessly","relentlessness","relents","relevance","relevancy","relevant","relevantly","reliability","reliable","reliableness","reliably","reliance","reliant","relic","relics","relict","relied","relief","reliefs","relies","relieve","relieved","reliever","relieves","relieving","relievo","religion","religionism","religionist","religions","religiosity","religious","religiousism","religiously","religiousness","reline","relines","relinquish","relinquished","relinquishes","relinquishing","relinquishment","reliquary","relish","relished","relishes","relishing","relistening","relive","relives","reliving","reload","reloading","reloads","relocate","relocated","relocates","relocating","relocation","reluctance","reluctant","reluctantly","reluctivity","rely","relying","relyric","rem","remade","remain","remainder","remained","remaining","remains","remake","remakes","remaking","remand","remanded","remands","remark","remarkable","remarkably","remarked","remarking","remarks","remarriage","remarried","remarries","remarry","remarrying","rematch","rembrandtesque","remediable","remedial","remediate","remediation","remedies","remedy","remedying","remember","remembered","remembering","remembers","remembrance","remex","remicade","remiges","remilitarisation","remilitarise","remilitarization","remilitarize","remilitarizes","remind","reminded","reminder","reminders","remindful","reminding","reminds","reminisce","reminiscence","reminiscent","reminiscently","reminisces","reminiscing","remise","remiss","remission","remissness","remit","remitment","remits","remittal","remittance","remitted","remittent","remitting","remnant","remnants","remodel","remodeled","remodeling","remodelled","remodelling","remodels","remold","remolded","remolding","remolds","remonstrance","remonstrate","remonstration","remora","remorse","remorseful","remorsefully","remorseless","remorselessly","remote","remotely","remoteness","remotion","remould","remoulded","remoulding","remoulds","remount","removable","removal","remove","removed","remover","removes","removing","remuda","remunerate","remunerated","remunerates","remuneration","remunerative","remunerator","renaissance","renal","rename","renamed","renames","renaming","renascence","renascent","rend","render","rendered","rendering","renders","rendezvous","rending","rendition","rends","renegade","renege","reneges","reneging","renegociate","renegociates","renegotiate","renegotiated","renegotiates","renegotiating","renew","renewable","renewal","renewed","renewing","renews","reniform","renin","rennet","rennin","renormalise","renormalises","renormalize","renormalizes","renounce","renounced","renouncement","renounces","renouncing","renovate","renovated","renovates","renovating","renovation","renovations","renovator","renown","renowned","rensselaerite","rent","rentable","rental","rentals","rente","rented","renter","rentier","renting","rents","renunciant","renunciation","renunciative","reopen","reopened","reopening","reopens","reorder","reordering","reorganisation","reorganisations","reorganise","reorganised","reorganises","reorganising","reorganization","reorganizations","reorganize","reorganized","reorganizes","reorganizing","reorient","reorientate","reorientation","reoriented","reorienting","reorients","reovirus","rep","REP.","Rep.","rep.","repaid","repaint","repainted","repainting","repaints","repair","repaired","repairer","repairing","repairman","repairs","repand","reparable","reparation","repartee","repast","repatriate","repatriation","repay","repayable","repaying","repayment","repays","repeal","repealed","repealing","repeals","repeat","repeatable","repeated","repeatedly","repeater","repeating","repeats","repechage","repel","repellant","repelled","repellent","repellently","repelling","repellingly","repels","repent","repentance","repentant","repentantly","repenting","repents","repercuss","repercussion","repercussions","repertoire","repertory","repetition","repetitious","repetitiousness","repetitive","repetitively","repetitiveness","rephrase","rephrases","rephrasing","repine","repines","replace","replaceability","replaceable","replaced","replacement","replacements","replaces","replacing","replant","replanting","replants","replay","replaying","replays","replenish","replenished","replenishes","replenishing","replenishment","replete","repletion","replevied","replevies","replevy","replica","replicas","replicate","replicated","replicates","replicating","replication","replied","replies","reply","replying","repoint","report","reportable","reportage","reported","reportedly","reporter","reporters","reporting","reports","repose","reposeful","reposes","reposing","reposit","repositing","reposition","repositioning","repository","repossess","repossession","repot","repots","repotted","repotting","repp","reprehend","reprehensibility","reprehensible","reprehensibly","reprehension","reprehensively","represent","representable","representation","representational","representations","representative","representatives","represented","representing","represents","repress","repressed","represser","represses","repressing","repression","repressive","repressor","reprieve","reprimand","reprimanded","reprimanding","reprimands","reprint","reprinted","reprinting","reprints","reprisal","reprise","reprises","reprising","reprize","reproach","reproacher","reproaches","reproachful","reproachfully","reproaching","reprobate","reprobates","reprobating","reprobation","reprocess","reprocesses","reprocessing","reproduce","reproduced","reproducer","reproduces","reproducibility","reproducible","reproducibly","reproducing","reproduction","reproductions","reproductive","reproof","reproval","reprove","reprover","reproves","reproving","reprovingly","REPS.","Reps.","reps.","reptile","reptilian","Republic","republic","republican","republicanism","republicans","republication","Republics","republics","republish","republishes","republishing","repudiate","repudiates","repudiating","repudiation","repudiative","repugn","repugnance","repugnant","repulse","repulsed","repulses","repulsing","repulsion","repulsive","repulsively","repulsiveness","repurchase","repurchased","repurchases","repurchasing","reputability","reputable","reputably","reputation","reputations","repute","reputed","reputedly","request","requested","requester","requesting","requests","requiescat","require","required","requirement","requirements","requires","requiring","requisite","requisiteness","requisition","requisitioned","requisitions","requital","requite","requites","reread","rereading","rereads","rerebrace","reredos","reremice","rerun","rerunning","reruns","resale","rescale","rescales","rescaling","reschedule","rescheduled","reschedules","rescheduling","rescind","rescindable","rescinded","rescinding","rescinds","rescission","rescript","rescriptor","rescue","rescued","rescuer","rescuers","rescues","rescuing","reseal","resealing","reseals","research","researched","researcher","researchers","researches","researching","reseat","reseating","reseats","reseau","reseaux","resect","resecting","resection","resects","reseda","reseed","reseeding","reseeds","resell","reselling","resells","resemblance","resemble","resembles","resembling","resent","resented","resentful","resentfully","resenting","resentment","resents","reserpine","reservation","reservations","reserve","reserved","reservedly","reserves","reserving","reservist","reservoir","reservoirs","reset","resets","resetting","resettle","resettled","resettlement","resettles","resew","resh","reshape","reshaped","reshapes","reshaping","reship","reshipment","reshoot","resht","reshuffle","reshuffled","reshuffles","reshuffling","resid","reside","resided","residence","residences","residency","resident","residential","residentially","residents","resides","residing","residua","residual","residuals","residuary","residue","residues","residuum","resift","resifts","resign","resignation","resigned","resignedly","resigning","resigns","resile","resilience","resiliency","resilient","resin","resinate","resinated","resinlike","resinoid","resinous","resiny","resist","resistance","resistant","resisted","resister","resistible","resisting","resistive","resistivity","resistless","resistor","resists","resit","resits","resitting","resize","resizes","resizing","resmudge","resmudges","resole","resoles","resolute","resolutely","resoluteness","resolution","resolutions","resolvable","resolve","resolved","resolvent","resolves","resolving","resonance","resonant","resonate","resonated","resonates","resonating","resonator","resorb","resorcinol","resorcinolphthalein","resorption","resort","resorting","resorts","resound","resounding","resoundingly","resounds","resource","resourceful","resourcefully","resourcefulness","resourceless","resources","respect","respectability","respectable","respectably","respected","respecter","respectful","respectfully","respectfulness","respecting","respective","respectively","respects","respiration","respirator","respiratory","respire","respires","respiring","respite","respites","resplend","resplendence","resplendency","resplendent","resplendently","resplends","respond","responded","respondent","respondents","responder","responders","responding","responds","responsa","response","responses","responsibilities","responsibility","responsible","responsibleness","responsibly","responsive","responsiveness","responsum","rest","restart","restarted","restarting","restarts","restate","restated","restatement","restates","restating","restaurant","restauranter","restaurants","restaurateur","rested","rester","restful","restfully","restfulness","restharrow","resting","restitute","restitution","restive","restively","restiveness","restless","restlessly","restlessness","restock","restocking","restocks","restoration","restorative","restore","restored","restorer","restores","restoril","restoring","restrain","restrained","restrainer","restraining","restrains","restraint","restraints","restrengthen","restrengthens","restrict","restricted","restricting","restriction","restrictions","restrictive","restrictively","restrictiveness","restricts","restroom","restructure","restructured","restructures","restructuring","rests","resublime","resublimes","resubmit","resubmits","result","resultant","resulted","resulting","results","resume","resumed","resumes","resuming","resumption","resupine","resurface","resurfaced","resurfaces","resurfacing","resurge","resurgence","resurgent","resurrect","resurrected","resurrecting","resurrection","resurrects","resurvey","resuscitate","resuscitated","resuscitates","resuscitating","resuscitation","resuscitator","resuspend","resuspending","resuspends","resuspension","ret","retail","retailer","retailers","retailing","retails","retain","retained","retainer","retaining","retains","retake","retakes","retaking","retaliate","retaliates","retaliating","retaliation","retaliative","retaliator","retaliatory","retard","retardant","retardation","retarded","retardent","retarding","retards","retch","retching","rete","retell","retelling","retells","retem","retention","retentive","retentively","retentiveness","retentivity","rethink","rethinking","rethinks","retia","retiarii","retiarius","reticence","reticent","reticently","retick","reticle","reticula","reticular","reticulate","reticulation","reticule","reticulocyte","reticulum","retie","retina","retinacula","retinaculum","retinae","retinal","retinene","retinitis","retinoblastoma","retinol","retinopathy","retinue","retire","retired","retiree","retirees","retirement","retires","retiring","retool","retooling","retools","retort","retorting","retorts","retouch","retouching","retrace","retraced","retraces","retracing","retract","retractable","retracted","retractile","retracting","retraction","retractor","retracts","retrain","retraining","retrains","retral","retranslate","retranslates","retransmit","retransmits","retransmitted","retransmitting","retread","retreading","retreads","retreat","retreatant","retreated","retreating","retreats","retrench","retrenches","retrenching","retrenchment","retrial","retribution","retributive","retributory","retried","retries","retrievable","retrieval","retrieve","retrieved","retriever","retrieves","retrieving","retro","retroactive","retroactively","retrofit","retrofits","retrofitted","retrofitting","retroflection","retroflex","retroflexed","retroflexion","retrograde","retrogrades","retrogress","retrogresses","retrogression","retrogressive","retronym","retrorocket","retrorse","retrospect","retrospection","retrospective","retrospectively","retrousse","retroversion","retrovert","retrovir","retrovirus","retroviruses","retrovision","retry","retrying","retsina","retted","retting","return","returnable","returned","returning","returns","retweet","reunification","reunified","reunifies","reunify","reunifying","reunion","reunions","reunite","reunited","reunites","reuniting","reuptake","reusable","reuse","reused","reuses","reusing","rev","revaluation","revalue","revalued","revalues","revamp","revamped","revamping","revamps","reveal","revealed","revealing","reveals","reveille","revel","revelation","revelations","revelatory","reveled","reveler","revelers","reveling","revelled","reveller","revellers","revelling","revelry","revels","revenant","revenge","revengeful","revengefully","revenue","revenuer","revenues","reverberance","reverberant","reverberate","reverberated","reverberates","reverberating","reverberation","reverberative","revere","revered","reverence","reverend","reverent","reverential","reverentially","reverently","reveres","reverie","revering","revers","reversal","reverse","reversed","reversely","reverses","reversibility","reversible","reversibly","reversing","reversion","reversionary","reversioner","reversionist","reversive","revert","reverted","revertible","reverting","reverts","revery","revet","revetement","revetment","revets","revetted","revetting","review","reviewed","reviewer","reviewers","reviewing","reviews","revile","revilement","revisal","revise","revised","reviser","revises","revising","revision","revisionism","revisionist","revisions","revisit","revisited","revisiting","revisits","revitalisation","revitalise","revitalised","revitalises","revitalising","revitalization","revitalize","revitalized","revitalizes","revitalizing","revival","revivalism","revivalist","revivalistic","revive","revived","revives","revivification","revivified","revivifies","revivify","revivifying","reviving","revocable","revocation","revokable","revoke","revoked","revokes","revoking","revolt","revolting","revoltingly","revolts","revolution","revolutionaries","revolutionary","revolutionise","revolutionised","revolutionises","revolutionising","revolutionism","revolutionist","revolutionize","revolutionized","revolutionizes","revolutionizing","revolutions","revolve","revolved","revolver","revolves","revolving","revue","revulsion","revved","revving","reward","rewarded","rewardful","rewarding","rewardingly","rewards","rewind","rewinding","rewinds","rewire","rewires","rewiring","reword","rewording","rewords","rework","reworked","reworking","reworks","rewrite","rewriter","rewrites","rewriting","rewritten","rex","reyes","rfd","rhabdomancer","rhabdomancy","rhabdomyoma","rhabdomyomata","rhabdomyosarcoma","rhabdosarcoma","rhabdovirus","rhachides","rhachis","rhachises","rhagades","rhaphe","rhapsodic","rhapsodically","rhapsodise","rhapsodised","rhapsodises","rhapsodising","rhapsodize","rhapsodized","rhapsodizes","rhapsodizing","rhapsody","rhd","rhein","rheinland","rhenish","rhenium","rheologic","rheological","rheology","rheometer","rheostat","rhesus","rhetoric","rhetorical","rhetorically","rhetorician","rheumatic","rheumatism","rheumatoid","rheumatologist","rheumatology","rheumy","rhibhus","rhinal","rhinencephala","rhinencephalon","rhinestone","rhinion","rhinitis","rhino","rhinoceros","rhinolaryngologist","rhinolaryngology","rhinopathy","rhinophyma","rhinoplasty","rhinorrhea","rhinoscope","rhinoscopy","rhinosporidiosis","rhinostenosis","rhinotomy","rhinotracheitis","rhinovirus","rhiptoglossa","rhizobia","rhizobium","rhizoctinia","rhizoid","rhizoidal","rhizomatous","rhizome","rhizomorph","rhizopod","rhizopodan","rhizopus","rhizotomy","rho","rhodanthe","rhodesia","rhodesian","rhodium","rhodochrosite","rhododendron","rhodolite","rhodomontade","rhodonite","rhodopsin","rhomb","rhombencephalon","rhombi","rhombic","rhombohedral","rhombohedron","rhomboid","rhomboidal","rhombus","rhonchi","rhonchus","rhubarb","rhumb","rhumba","rhyme","rhymed","rhymeless","rhymer","rhymes","rhymester","rhyming","rhyolite","rhyta","rhythm","rhythmic","rhythmical","rhythmically","rhythmicity","rhythms","rhytidectomy","rhytidoplasty","rhyton","rial","riant","riata","rib","ribald","ribaldry","riband","ribavirin","ribband","ribbed","ribbing","ribbon","ribbonfish","ribbonfishes","ribbonlike","ribbons","ribbonwood","ribbony","ribgrass","ribier","ribing","ribless","riblike","riboflavin","ribonuclease","ribonucleinase","ribose","ribosome","ribosomes","ribs","ribwort","Rica","rica","rice","ricebird","ricegrass","ricer","ricercacari","ricercare","ricercari","rich","richer","riches","richest","richly","richness","richweed","ricin","rick","ricketiness","rickets","rickettsia","rickettsiae","rickettsial","rickettsialpox","rickettsiosis","rickety","rickey","rickrack","ricksha","rickshaw","rico","ricochet","ricocheting","ricochets","ricochetted","ricochetting","ricotta","ricrac","rictus","rid","riddance","ridded","ridding","riddle","riddled","riddling","ride","rider","riders","rides","ridge","ridged","ridgel","ridgeline","ridgeling","ridgepole","ridgil","ridgling","ridicule","ridiculed","ridiculer","ridicules","ridiculing","ridiculous","ridiculously","ridiculousness","riding","ridley","rids","riel","riemannian","rifadin","rifampin","rife","riff","riffian","riffing","riffle","riffraff","riffs","rifle","riflebird","rifled","rifleman","rifles","rifling","rift","rig","rigamarole","rigatoni","rigged","rigger","rigging","Right","right","righted","righteous","righteously","righteousness","rightfield","rightful","rightfully","rightfulness","righthander","righting","rightish","rightism","rightist","rightly","rightmost","rightness","rights","rigid","rigidification","rigidified","rigidifies","rigidify","rigidifying","rigidity","rigidly","rigidness","rigil","rigmarole","rigor","rigorous","rigorously","rigorousness","rigors","rigour","rigourousness","rigours","rigout","rigs","rijstafel","rijstaffel","rijsttaffel","riksmaal","rile","riled","riles","rilievi","rilievo","riling","rill","rim","rima","rimactane","rimae","rime","rimed","rimeless","rimier","rimiest","riming","rimless","rimmed","rimming","rimose","rims","rimu","rimy","rind","rinderpest","ring","ringdove","ringed","ringer","ringgit","ringhals","ringing","ringleader","ringlet","ringleted","ringlike","ringmaster","rings","ringside","ringtail","ringway","ringworm","rink","rinkhals","rinse","rinses","rinsing","rio","riot","rioter","rioting","riotous","riotously","riots","rip","riparian","ripcord","ripe","ripely","ripen","ripened","ripeness","ripening","ripens","riposte","ripped","ripper","ripping","ripple","rippled","ripples","rippling","rips","ripsaw","riptide","rira","risc","rise","risen","riser","rises","risibility","risible","rising","risk","risked","riskier","riskiest","riskily","riskiness","risking","riskless","risklessness","risks","risky","risotto","risque","rissole","rit.","ritalin","ritardando","rite","ritenuto","ritonavir","ritual","ritualise","ritualised","ritualism","ritualist","ritualistic","ritualize","ritualized","ritualizes","ritualizing","ritually","rituals","ritzier","ritziest","ritzy","rival","rivaled","rivaling","rivalled","rivalling","rivalrous","rivalry","rivals","rive","river","riverbank","riverbed","rivers","riverside","rives","rivet","riveted","riveter","riveting","rivets","rivetter","riving","rivulet","rivulus","riyal","rna","rnase","roach","road","roadbed","roadblock","roadbook","roadhog","roadhouse","roadkill","roadless","roadman","roadrunner","roads","roadside","roadstead","roadster","roadway","roadworthiness","roam","roamed","roamer","roaming","roams","roan","roar","roarer","roaring","roars","roast","roasted","roaster","roasting","roasts","rob","robalo","robaxin","robbed","robber","robberies","robbery","robbing","robe","robed","robes","robin","robing","roble","robot","robotic","robotics","robotlike","robots","robs","robust","robustious","robustly","robustness","roc","rocambole","roccella","rocephin","rock","rockabilly","rockbound","rockchuck","rockcress","rocked","rocker","rockers","rockery","rocket","rocketed","rocketing","rocketry","rockets","rockfish","rockfishes","rockfoil","rockier","rockiest","rockiness","rocking","rocklike","rockrose","rocks","rockslide","rockweed","rocky","rococo","rod","rode","rodent","rodents","rodeo","rodhos","rodlike","rodomontade","rods","roe","roebuck","roentgenium","roentgenogram","roentgenographic","roentgenography","roentgenoscope","rofecoxib","rofl","roflcopter","roflmao","rogaine","rogation","rogue","roguery","roguish","roguishly","roguishness","rohypnol","roi","roil","roiled","roilier","roiliest","roiling","roils","roily","roister","roisterer","role","roleplay","roleplaying","roles","rolf","roll","rollback","rolled","roller","rollerblade","rollerblader","rollerblades","rollerblading","rollers","rollick","rollicking","rollickingly","rollicks","rolling","rollmops","rollover","rolls","rolypoliness","rom","roma","romaic","romaine","roman","romance","romances","romancing","romani","Romania","romania","romanian","romanic","romanise","romanist","romanize","romanoff","romansh","romantic","romantical","romantically","romanticisation","romanticise","romanticised","romanticises","romanticising","romanticist","romanticistic","romanticization","romanticize","romanticized","romanticizes","romanticizing","romany","romish","rommany","romp","romper","romping","romps","rondeau","rondeaux","rondel","rondelet","rondo","roneo","roneograph","rontgen","rood","roof","roofed","roofer","roofing","roofless","roofs","rooftop","rooftree","roofy","rooibos","rook","rookery","rookie","rookier","rookiest","rooky","room","roomer","roomette","roomful","roomie","roomier","roomiest","roomily","roominess","rooming","roommate","roommates","rooms","roomy","roosevelt","rooseveltian","roost","rooster","roosting","roosts","root","rootage","rootbound","rooted","rooter","rooting","rootle","rootless","rootlet","roots","rootstalk","rootstock","rope","ropebark","ropedancer","ropemaker","roper","ropes","ropewalk","ropewalker","ropeway","ropey","rophy","ropier","ropiest","ropiness","roping","ropy","roquette","roridula","rorqual","rosacea","rosaceous","rosaria","rosarium","rosary","rose","roseate","rosebay","rosebud","rosebush","rosefish","rosefishes","rosehip","roselle","rosemaling","rosemary","roseola","roses","rosette","rosewood","rosicrucian","rosier","rosiest","rosilla","rosin","rosiness","rosinweed","rosita","rostella","rostellum","roster","rostra","rostrate","rostrum","rosy","rot","rotary","rotatable","rotate","rotated","rotates","rotating","rotation","rotational","rotationally","rotatory","rotavirus","rotc","rote","rotenone","rotfl","rotflmfao","rotflol","rotgut","rotifer","rotisserie","rotl","rotogravure","rotor","rots","rotted","rotten","rottenly","rottenness","rottenstone","rotter","rotting","rotund","rotunda","rotundity","rotundly","rotundness","rouble","roubles","roue","rouge","rougeberry","rouged","rough","roughage","roughcast","roughdried","roughed","roughen","roughened","rougher","roughhewn","roughhouse","roughhousing","roughing","roughish","roughleg","roughly","roughneck","roughness","roughrider","roughshod","roulade","rouleau","rouleaux","roulette","roumania","roumanian","round","roundabout","rounded","roundedness","roundel","roundelay","rounder","roundhead","roundheaded","roundhouse","rounding","roundish","roundly","roundness","rounds","roundsman","roundtable","roundup","roundworm","rouse","rouser","rouses","rousing","rousseauan","roustabout","rout","route","routed","routemarch","router","routes","routine","routinely","routines","routing","routs","roux","rove","rover","roves","roving","row","rowan","rowanberry","rowboat","rowdier","rowdiest","rowdily","rowdiness","rowdy","rowdyism","rowed","rowel","rowelled","rowelling","rower","rowing","rowlock","rows","royal","royalism","royalist","royally","royalties","royalty","rozelle","rpm","RS.","Rs.","rs.","rt","rtlt","ruanda","ruandan","rub","rubato","rubbed","rubber","rubberise","rubberize","rubberlike","rubberneck","rubbernecker","rubbernecking","rubberstamp","rubbery","rubbing","rubbish","rubbishy","rubble","rubdown","rube","rubefacient","rubel","rubella","rubeola","rubicelle","rubicund","rubidium","rubify","ruble","rubor","rubric","rubricate","rubs","Ruby","ruby","ruck","ruckle","rucksack","ruckus","ruction","rudapithecus","rudd","rudder","rudderfish","rudderless","rudderpost","rudderstock","ruddier","ruddiest","ruddiness","ruddle","ruddy","rude","rudely","rudeness","rudiment","rudimentary","rue","rueful","ruefully","ruefulness","ruf","ruff","ruffian","ruffianism","ruffianly","ruffle","ruffled","ruffles","ruffling","rug","ruga","rugae","rugby","rugelach","rugged","ruggedisation","ruggedise","ruggedization","ruggedize","ruggedly","ruggedness","ruggelach","rugger","rugose","rugs","rugulah","ruin","ruination","ruined","ruiner","ruining","ruinous","ruinously","ruins","rule","ruled","ruler","rulers","rulership","rules","ruling","rulings","ruly","rum","rumania","rumanian","rumansh","rumba","rumble","rumbled","rumbles","rumbling","rumbustious","rumen","rumina","ruminant","ruminate","ruminated","ruminates","ruminating","rumination","ruminative","ruminator","rummage","rummages","rummaging","rummer","rummy","rumor","rumored","rumormonger","rumors","rumour","rumoured","rumourmonger","rumours","rump","rumple","rumpled","rumpus","rumrunner","run","runabout","runaway","runch","runcinate","rundle","rundown","rune","rung","runic","runnel","runner","runners","runnier","runniest","runniness","running","runny","runoff","runproof","runs","runt","runtiness","runty","runup","runway","rupee","rupees","rupestral","rupiah","rupicolous","rupture","ruptured","ruptures","rupturewort","rupturing","rural","ruralism","ruralist","rurality","rurally","ruritanian","ruse","rush","rushed","rusher","rushes","rushier","rushiest","rushing","rushlight","rushlike","rushy","rusk","russet","Russia","russia","russian","rust","rusted","rustic","rusticate","rusticated","rusticates","rusticating","rustication","rusticism","rusticity","rustier","rustiest","rustiness","rusting","rustle","rustler","rustless","rustling","rustproof","rustproofed","rusts","Rusty","rusty","rut","rutabaga","ruthenium","rutherfordium","ruthful","ruthfulness","ruthless","ruthlessly","ruthlessness","rutile","ruts","rutted","ruttier","ruttiest","rutting","ruttish","rutty","rv","Rwanda","rwanda","rwandan","rya","rydberg","rye","ryegrass","S.C.","s.c.","SA","sa","saame","saami","saarinen","sabahan","sabaton","sabayon","sabbat","sabbatarian","sabbatia","sabbatic","sabbatical","sabbatum","saber","sabers","sabertooth","sabertoothed","sabicu","sabine","sable","sabot","sabotage","sabotages","sabotaging","saboteur","sabra","sabre","sabres","sac","sacajawea","saccade","saccadic","saccharase","saccharide","saccharified","saccharifies","saccharify","saccharin","saccharine","saccharinity","saccharose","sacculate","sacculated","saccule","sacculus","sacerdotal","sacerdotalism","saceur","sachem","sachet","sachsen","sack","sackbut","sackcloth","sacked","sackful","sacking","sacks","saclant","saclike","sacque","sacra","sacral","sacrament","sacramental","sacraria","sacrarium","sacred","sacredly","sacredness","sacrifice","sacrificeable","sacrificer","sacrifices","sacrificial","sacrificing","sacrilege","sacrilegious","sacrilegiously","sacrilegiousness","sacristan","sacristy","sacrosanct","sacrum","sad","saddam","sadden","saddened","saddening","saddens","sadder","saddest","saddhu","saddle","saddleback","saddlebag","saddlebill","saddlebow","saddlecloth","saddled","saddler","saddlery","saddles","saddling","sadducean","sadhe","sadhu","sadism","sadist","sadistic","sadly","sadness","sadomasochism","sadomasochist","sadomasochistic","safaqis","safari","safe","safebreaker","safecracker","safeguard","safeguarded","safeguarding","safeguards","safehold","safekeeping","safely","safeness","safer","safest","safety","safflower","saffranine","saffron","safranin","safranine","sag","saga","sagacious","sagaciously","sagaciousness","sagacity","sagamore","sage","sagebrush","sagely","sagged","sagging","sagittal","sagittate","sagittiform","sago","sags","saguaro","saguaros","sahaptin","sahaptino","saharan","sahib","Sahrawi","sahrawi","sahuaro","said","saida","saiga","saigon","sail","sailboat","sailcloth","sailed","sailfish","sailfishes","sailing","sailmaker","sailor","sailors","sailplane","sailplaning","sails","sainfoin","Saint","saint","sainted","sainthood","saintlike","saintliness","saintly","saints","sakartvelo","sake","saki","sakkara","sakti","saktism","salaah","salaam","salaat","salability","salable","salableness","salacious","salaciously","salaciousness","salacity","salad","salade","salads","salah","salai","salal","salamander","salamandriform","salami","salaried","salaries","salary","salat","sale","saleable","saleratus","saleroom","sales","salesclerk","salesgirl","saleslady","salesman","salesmanship","salespeople","salesperson","salesroom","saleswoman","salian","salicylate","salience","saliency","salient","salientian","saliferous","salified","salifies","salify","salim","salinate","saline","salinity","salinometer","salisbury","salishan","saliva","salivary","salivate","salivates","salivating","salivation","sallet","sallied","sallow","sallowness","sally","salmagundi","salmi","salmon","salmonberry","salmonella","salmonellae","salmonellosis","salmonid","salmwood","salol","salon","salonica","salonika","saloon","salp","salpa","salpae","salpiglossis","salpingectomy","salpinges","salpingitis","salpinx","salsa","salsify","salsilla","salt","saltarelli","saltarello","saltate","saltation","saltbox","saltbush","saltcellar","salted","salter","saltier","saltiest","saltine","saltiness","salting","saltire","saltish","saltlike","saltpan","saltpeter","saltpetre","salts","saltshaker","saltwater","saltworks","saltwort","salty","salubrious","salubriousness","salubrity","salutary","salutation","salutatorian","salutatory","salute","saluted","saluter","Salutes","salutes","saluting","Salvador","salvador","salvadoran","salvadorean","salvadorian","salvage","salvageable","salvaged","salvager","salvages","salvaging","salvation","salve","salver","salverform","salvia","salvific","salving","salvinorin","salvo","salvoes","salvor","salwar","sam","saman","samanala","samara","samarang","samarcand","samarium","samarskite","samba","sambar","sambuca","sambur","same","samekh","sameness","sami","samiel","samisen","samite","samizdat","Samoa","samoa","samoan","samosa","samovar","samoyede","sampan","samphire","sample","sampled","sampler","samples","sampling","samsara","samurai","san","sanaa","sanatarium","sanative","sanatorium","sancta","sanctification","sanctified","sanctifies","sanctify","sanctifying","sanctimonious","sanctimoniously","sanctimoniousness","sanctimony","sanction","sanctionative","sanctioned","sanctioning","sanctions","sanctitude","sanctity","sanctuary","sanctum","sand","sandal","sandaled","sandalled","sandals","sandalwood","sandarac","sandarach","sandbag","sandbagged","sandbagger","sandbagging","sandbank","sandbar","sandberry","sandblast","sandblaster","sandblasting","sandblasts","sandbox","sandboy","sandbur","sander","sanderling","sandfish","sandfly","sandglass","sandgrouse","sandhi","sandhopper","sandier","sandiest","sandiness","sanding","sandlike","sandlot","sandman","sandpaper","sandpapery","sandpile","sandpiper","sandpit","sandril","sands","sandspur","sandstone","sandstorm","sandwich","sandwiched","sandwiches","sandwiching","sandwichman","sandwort","sandy","sane","sanely","saneness","sanfoin","sang","sangapenum","sangaree","sangoma","sangraal","sangria","sanguification","sanguinary","sanguine","sanguineness","sanguineous","sanguinity","sanicle","sanies","sanious","sanitaria","sanitariness","sanitarium","sanitary","sanitate","sanitation","sanitisation","sanitise","sanitised","sanitises","sanitising","sanitization","sanitize","sanitized","sanitizes","sanitizing","sanity","sank","sannup","sannyasi","sannyasin","sansevieria","santa","santimi","santims","sanyasi","Sao","sao","sap","saphar","saphead","saphena","saphenae","sapid","sapidity","sapidness","sapience","sapiens","sapient","sapiential","sapiently","sapless","sapling","sapodilla","saponaceous","saponification","saponified","saponifies","saponify","saponin","saporous","sapota","sapote","sapped","sapper","sapphic","sapphire","sapphirine","sapphism","sappier","sappiest","sapping","sappy","sapraemia","sapremia","saprobe","saprobic","saprolite","sapropel","saprophagous","saprophyte","saprophytic","saprozoic","saps","sapsago","sapsucker","sapwood","saqqarah","saquinavir","saraband","sarafem","saragossa","saran","sarape","sarawakian","sarcasm","sarcastic","sarcastically","sarcenet","sarcocystidean","sarcocystieian","sarcodine","sarcodinian","sarcoid","sarcoidosis","sarcolemma","sarcolemmal","sarcolemmic","sarcolemnous","sarcoma","sarcomere","sarcophagi","sarcophagus","sarcoplasm","sarcoptid","sarcosine","sarcosomal","sarcosome","sarcosporidian","sarcostyle","sard","sardegna","sardine","sardinian","sardius","sardonic","sardonically","sardonyx","saree","sargasso","sargassum","sari","sarin","sarong","sars","sarsaparilla","sarsenet","sartor","sartorial","sartorii","sartorius","sash","sashay","sashaying","sashays","sashimi","sasquatch","sass","sassaby","sassafras","sassanid","sassanidae","sasses","sassier","sassiest","sassing","sassy","sat","SAT.","Sat.","sat.","satang","satanic","satanism","satanophobia","satchel","satchmo","sate","sateen","satellite","satellites","sates","satiable","satiate","satiated","satiation","satiety","satin","satinet","satinette","sating","satinleaf","satinpod","satinwood","satiny","satire","satiric","satirical","satirically","satirise","satirised","satirises","satirising","satirist","satirize","satirized","satirizes","satirizing","satisfaction","satisfactorily","satisfactoriness","satisfactory","satisfiable","satisfice","satisfices","satisficing","satisfied","satisfier","satisfies","satisfise","satisfy","satisfying","satisfyingly","satori","satrap","satsuma","saturate","saturated","saturates","saturating","saturation","saturday","satureia","saturniid","saturnine","saturnism","satyr","satyriasis","satyric","satyrical","sauce","sauceboat","saucepan","saucepot","saucer","sauces","saucier","sauciest","saucily","sauciness","saucy","Saudi","saudi","sauerbraten","sauerkraut","sauna","saunter","saunterer","sauntering","saunters","saurel","saurian","saurischian","sauropod","saury","sausage","sausages","saussure","saute","sauteed","sauteing","savage","savagely","savageness","savagery","savages","savaging","savange","savanges","savanna","savant","savarin","save","saved","saveloy","saver","saves","savin","saving","savings","savior","saviors","saviour","saviours","savor","savored","savories","savoriness","savoring","savorless","savorlessness","savors","savory","savour","savoured","savouries","savouring","savourless","savourlessness","savours","savoury","savvied","savvier","savviest","savvy","saw","sawbill","sawbones","sawbuck","sawdust","sawfish","sawfishes","sawfly","sawhorse","sawing","sawm","sawmill","sawpit","sawtooth","sawwort","sawyer","saxatile","saxegothea","saxhorn","saxicoline","saxicolous","saxifrage","saxist","saxitoxin","saxon","saxophone","saxophonist","say","sayanci","sayeret","saying","sayings","sayonara","says","sba","sbe","sbw","sc","scab","scabbard","scabbier","scabbiest","scabby","scabicide","scabies","scabiosa","scabious","scablands","scabrous","scad","scaffold","scaffolding","scaffolds","scag","scagged","scagging","scalability","scalable","scalage","scalar","scalawag","scald","scaldfish","scaldfishes","scalding","scalds","scale","scaled","scaleless","scalelike","scalene","scaleni","scalenus","scaler","scales","scaley","scalic","scalier","scaliest","scaliness","scaling","scallion","scallop","scalloped","scallopine","scalloping","scallopini","scallops","scallywag","scalp","scalpel","scalper","scalping","scalps","scaly","scam","scammer","scammony","scammonyroot","scamp","scamper","scampering","scampers","scampi","scampo","scams","scan","scandal","scandalisation","scandalise","scandalised","scandalises","scandalising","scandalization","scandalize","scandalized","scandalizes","scandalizing","scandalmonger","scandalmongering","scandalous","scandalously","scandalousness","scandals","scandent","scandinavian","scandium","scanned","scanner","scanning","scans","scansion","scant","scantier","scantiest","scantily","scantiness","scanting","scantling","scantness","scants","scanty","scape","scapegoat","scapegoats","scapegrace","scaphocephaly","scaphoid","scaphopod","scapose","scapula","scapulae","scapular","scapulary","scapulohumeral","scar","scarab","scarabaean","scarabaei","scarabaeid","scarabaeus","scaramouche","scarce","scarcely","scarceness","scarcity","scare","scarecrow","scarecrowish","scared","scaremonger","scarer","scares","scarf","scarface","scarfing","scarfpin","scarier","scariest","scarified","scarifies","scarify","scarily","scarlatina","scarlet","Scarlett","scarp","scarper","scarred","scarring","scars","scarves","scary","scat","scathe","scathing","scathingly","scatological","scatology","scatophagy","scats","scatted","scatter","scatterbrain","scatterbrained","scattered","scattergood","scattergun","scattering","scatters","scattershot","scatting","scatty","scaup","scauper","scavenge","scavenger","scavenges","scavenging","scd","scenario","scenarios","scenarist","scend","scene","scenery","scenes","sceneshifter","scenic","scenically","scent","scented","scenting","scentless","scents","scepter","sceptered","scepters","sceptic","sceptical","sceptically","scepticism","sceptics","sceptre","sceptred","sceptres","scet","schatchen","schatchonim","schedule","scheduled","scheduler","schedules","scheduling","scheelite","schema","schemata","schematic","schematically","schematisation","schematise","schematization","schematize","scheme","schemer","schemes","scheming","schemozzle","scheol","scherzandi","scherzando","scherzi","scherzo","schilling","schipperke","schism","schismatic","schismatical","schismatically","schist","schistorrhachis","schistosome","schistosomiasis","schizanthus","schizocarp","schizogony","schizoid","schizopetalon","schizophrenia","schizophrenic","schizophyceae","schizothymia","schlemiel","schlep","schlepper","schlesien","schlimazel","schlock","schlockmeister","schmaltz","schmaltzy","schmalz","schmalzy","schmear","schmeer","schmegegge","schmo","schmoes","schmoose","schmoosing","schmooze","schmoozer","schmuck","schnapps","schnaps","schnauzer","schnecken","schnittlaugh","schnitzel","schnook","schnorchel","schnorkel","schnorr","schnorrer","schnoz","schnozzle","schoenberg","scholar","scholarly","scholars","scholarship","scholarships","scholastic","scholastically","scholia","scholiast","scholium","school","schoolbag","schoolbook","schoolboy","schoolboyish","schoolchild","schooldays","schoolfellow","schoolfriend","schoolgirl","schoolgirlish","schoolhouse","schooling","schoolman","schoolmarm","schoolmaster","schoolmate","schoolmistress","schoolroom","schools","schoolteacher","schooltime","schoolwide","schoolwork","schoolyard","schooner","schorl","schottische","schrod","schtick","schtickl","schtik","schtikl","schul","schuln","schuss","schutzstaffel","schutzstaffeln","schwa","schwarzwald","schweiz","sciaenid","sciara","sciarid","sciatic","sciatica","scid","science","sciences","scienter","scientific","scientifically","scientist","scientists","scilla","scimitar","scincid","scintilla","scintillant","scintillate","scintillates","scintillating","scintillation","sciolism","sciolist","sciolistic","scion","scirrhi","scirrhus","scission","scissor","scissoring","scissors","scissortail","scissure","sclaff","sclera","scleredema","sclerite","scleritis","scleroma","scleromata","sclerometer","scleroprotein","sclerosed","scleroses","sclerosis","sclerotia","sclerotic","sclerotinia","sclerotium","sclerotomy","sclk","scnt","scoff","scoffed","scoffer","scoffing","scoffingly","scofflaw","scoffs","scoke","scold","scolded","scolder","scolding","scolds","scoleces","scolex","scolices","scolion","scoliosis","scollop","scolopendrium","scombresocidae","scombresox","scombroid","sconce","scone","scoop","scooped","scoopful","scooping","scoops","scoot","scooted","scooter","scooting","scoots","scopal","scope","scopolamine","scopula","scopulae","scorbutic","scorbutus","scorch","scorched","scorcher","scorches","scorching","score","score-wise","scoreboard","scorecard","scored","scorekeeper","scoreless","scorer","scores","scoria","scoriae","scorified","scorifies","scorify","scoring","scorn","scorned","scorner","scornful","scornfully","scorning","scorns","scorpaenid","scorpaenoid","scorper","scorpion","scorpionfish","scorpionweed","scorzonera","scotch","scotchman","scotchwoman","scoter","scotoma","scotomata","scotomatous","scots","scotsman","scottie","scottish","scoundrel","scoundrelly","scour","scoured","scourer","scourge","scourger","scourging","scouring","scours","scouse","scouser","scout","scouter","scouting","scoutmaster","scouts","scow","scowl","scowling","scowls","scpo","scrabble","scrabbles","scrabbling","scrabbly","scrag","scragged","scraggier","scraggiest","scragging","scragglier","scraggliest","scraggly","scraggy","scram","scramble","scrambled","scrambler","scrambles","scrambling","scrammed","scramming","scrams","scranch","scrap","scrapbook","scrape","scraper","scrapheap","scrapie","scraping","scrapped","scrapper","scrappier","scrappiest","scrappily","scrappiness","scrapping","scrapple","scrappy","scraps","scratch","scratched","scratcher","scratches","scratchiness","scratching","scratchpad","scratchy","scraunch","scrawl","scrawler","scrawnier","scrawniest","scrawniness","scrawny","screak","screakily","screaky","scream","screamed","screamer","screaming","screamingly","screams","scree","screech","screeched","screecher","screeches","screeching","screechy","screed","screen","screened","screener","screeners","screening","screenings","screenland","screenplay","screens","screenwriter","screenwriters","screw","screwball","screwballer","screwbean","screwdriver","screwed","screwier","screwiest","screwing","screws","screwtop","screwup","screwy","scribble","scribbled","scribbler","scribbles","scribbling","scribe","scriber","scried","scries","scrim","scrimmage","scrimp","scrimped","scrimping","scrimps","scrimpy","scrimshank","scrimshanker","scrimshaw","scrimy","scrip","script","scripted","scripting","scriptoria","scriptorium","scripts","scriptural","scripture","scriptwriter","scrivened","scrivener","scrod","scrofula","scrofulous","scroll","scrolling","scrolls","scrooge","scrota","scrotal","scrotum","scrounge","scrounged","scrounger","scrounges","scrounging","scrub","scrubbed","scrubber","scrubbier","scrubbiest","scrubbiness","scrubbing","scrubbird","scrubby","scrubland","scrubs","scruff","scruffier","scruffiest","scruffy","scrum","scrummage","scrummed","scrumming","scrumptious","scrumptiously","scrumpy","scrums","scrunch","scrunches","scrunching","scruple","scrupulous","scrupulously","scrupulousness","scrutineer","scrutinise","scrutinised","scrutiniser","scrutinises","scrutinising","scrutinize","scrutinized","scrutinizer","scrutinizes","scrutinizing","scrutiny","scry","scsi","scuba","scud","scudded","scudding","scudi","scudo","scuds","scuff","scuffer","scuffing","scuffle","scuffles","scuffling","scuffs","scull","sculler","scullery","sculling","scullion","sculls","sculpin","sculpt","sculpted","sculpting","sculptor","sculptress","sculpts","sculptural","sculpture","sculptured","sculpturer","sculptures","sculpturesque","scum","scumbag","scumble","scummed","scumming","scummy","scums","scungier","scungiest","scungy","scunner","scup","scupper","scuppering","scuppernong","scuppers","scurf","scurfy","scurried","scurries","scurrility","scurrilous","scurrilously","scurry","scurrying","scurvier","scurviest","scurvily","scurvy","scut","scuta","scutcheon","scute","scutella","scutellum","scuttle","scuttlebutt","scuttled","scuttles","scuttling","scutum","scyphi","scyphistoma","scyphistomae","scyphozoa","scyphozoan","scyphus","scythe","scythian","scything","se","sea","seabag","seabed","seabird","seaboard","seaborgium","seaborne","seacoast","seafarer","seafaring","seafood","seafowl","seafront","seagirt","seagoing","seagrass","seagull","seahorse","seal","sealant","sealed","sealer","sealing","seals","sealskin","seam","seaman","seamanlike","seamanly","seamanship","seamed","seamier","seamiest","seaming","seamless","seamlessly","seamount","seams","seamster","seamstress","seamy","seanad","seance","seaplane","seaport","seaquake","sear","search","searched","searcher","searches","searching","searchingly","searchlight","seared","searing","searobin","seas","seascape","seashell","seashore","seasick","seasickness","seaside","seasnail","season","seasonable","seasonableness","seasonably","seasonal","seasonally","seasoned","seasoner","seasoning","seasons","seat","seatbelt","seated","seating","seats","seawall","seaward","seawards","seawater","seaway","seaweed","seaworthiness","seaworthy","seb","sebaceous","sebe","seborrhea","sebum","sec","secant","secateurs","secede","secedes","seceding","secern","secernate","secernment","secerns","secession","secessionism","secessionist","sechuana","seckel","seclude","secluded","seclusion","secobarbital","seconal","second","secondarily","secondary","seconder","secondhand","secondi","seconding","secondly","secondment","secondo","seconds","secpar","secrecy","secret","secretaire","secretarial","secretariate","secretaries","secretary","secretaryship","secretase","secrete","secreter","secretes","secretin","secreting","secretion","secretive","secretively","secretiveness","secretly","secretor","secretory","secrets","sect","sectarian","sectarianism","sectarist","sectary","section","sectional","sectionalisation","sectionalise","sectionalism","sectionalization","sectionalize","sectioned","sectioning","sections","sector","sectorial","sectors","sectral","secular","secularisation","secularise","secularised","secularises","secularising","secularism","secularist","secularization","secularize","secularized","secularizes","secularizing","secundigravida","secure","secured","securely","secureness","securer","secures","securing","securities","security","sedan","sedate","sedately","sedateness","sedates","sedating","sedation","sedative","sedentary","sedge","sedgelike","sedgy","sediment","sedimentary","sedimentation","sedimenting","sediments","sedition","seditious","seduce","seduced","seducer","seduces","seducing","seduction","seductive","seductively","seductress","sedulity","sedulous","sedulously","sedulousness","sedum","see","seeable","seed","seedbed","seedcake","seedcase","seeded","seeder","seedier","seediest","seediness","seeding","seedless","seedling","seedlings","seedman","seedpod","seeds","seedsman","seedtime","seedy","seeing","seek","seeker","seeking","seeks","seel","seeland","seem","seemed","seeming","seemingly","seemlier","seemliest","seemliness","seemly","seems","seen","seep","seepage","seeped","seeping","seeps","seer","seersucker","sees","seesaw","seesawing","seethe","seething","segment","segmental","segmentation","segmented","segmenting","segments","segni","segno","segregate","segregated","segregates","segregating","segregation","segregationism","segregationist","segregator","segue","segueing","segues","seguing","seiche","seidel","seigneur","seigneury","seignior","seigniorage","seigniory","seine","seism","seismal","seismic","seismogram","seismograph","seismography","seismologic","seismological","seismologist","seismology","seismosaur","seize","seized","seizer","seizes","seizing","seizure","seizures","selachian","selachii","selcraig","seldom","select","selected","selecting","selection","selections","selective","selectively","selectivity","selectman","selector","selects","selectwoman","selenium","selenolatry","selenology","seleucid","seleucidae","self","selfish","selfishly","selfishness","selfless","selflessly","selflessness","selfsame","selfsameness","seljuk","sell","sellable","seller","sellers","selling","selloff","sellotape","sellout","sells","selsyn","seltzer","selva","selvage","selvedge","selves","semantic","semantically","semanticist","semantics","semaphore","semasiology","semblance","semen","semester","semestral","semestrial","semi","semi-annually","semi-celebrities","semi-liquefied","semi-obscure","semi-professional","semi-public","semi-retired","semi-skilled","semiabstract","semiannual","semiannually","semiaquatic","semiarid","semiautobiographical","semiautomatic","semibreve","semicentenary","semicentennial","semicircle","semicircular","semicolon","semicoma","semicomatose","semiconducting","semiconductive","semiconductor","semiconscious","semiconsciousness","semidark","semidarkness","semidesert","semidetached","semidiameter","semiempirical","semiepiphyte","semifinal","semifinalist","semifluidity","semiformal","semigloss","semihard","semiliquid","semiliterate","semilunar","semimonthly","seminal","seminar","seminarian","seminarist","seminars","seminary","seminiferous","seminoma","seminude","semiofficial","semiology","semiopaque","semiotic","semiotical","semiotician","semiotics","semiparasite","semiparasitic","semipermanent","semipermeable","semipolitical","semiprecious","semiprivate","semipro","semiprofessional","semipublic","semiquaver","semirigid","semiskilled","semisoft","semisolid","semisweet","semisynthetic","semite","semiterrestrial","semitic","semitone","semitrailer","semitrance","semitransparency","semitransparent","semitropic","semitropical","semitropics","semivowel","semiweekly","semolina","sempiternal","sempiternity","sempstress","sen","SEN.","Sen.","sen.","senate","senator","senatorial","senators","senatorship","send","sendee","sender","sending","sends","sendup","sene","senecan","senega","Senegal","senegal","senegalese","senesce","senescence","senescent","seneschal","senile","senility","senior","seniority","seniors","seniti","senna","sennit","senor","senores","sensate","sensation","sensational","sensationalise","sensationalised","sensationalises","sensationalising","sensationalism","sensationalist","sensationalistic","sensationalize","sensationalized","sensationalizes","sensationalizing","sensationally","sense","sensed","senseless","senselessly","senselessness","senses","sensibilise","sensibilities","sensibility","sensibilize","sensible","sensibleness","sensibly","sensify","sensilla","sensillum","sensing","sensitisation","sensitise","sensitised","sensitiser","sensitises","sensitising","sensitive","sensitively","sensitiveness","sensitivities","sensitivity","sensitization","sensitize","sensitized","sensitizer","sensitizes","sensitizing","sensitometer","sensor","sensorial","sensorimotor","sensorineural","sensorium","sensors","sensory","sensual","sensualise","sensualism","sensualist","sensuality","sensualize","sensually","sensualness","sensuous","sensuously","sensuousness","sent","sente","sentence","sentenced","sentences","sentencing","sentential","sententious","sententiously","senti","sentience","sentiency","sentient","sentiment","sentimental","sentimentalisation","sentimentalise","sentimentalised","sentimentalises","sentimentalising","sentimentalism","sentimentalist","sentimentality","sentimentalization","sentimentalize","sentimentalized","sentimentalizes","sentimentalizing","sentimentally","sentimentise","sentimentises","sentimentize","sentimentizes","sentiments","sentinel","sentry","senusi","senussis","sep","SEP.","Sep.","sep.","sepal","sepaline","sepaloid","separability","separable","separably","separate","separated","separately","separateness","separates","separating","separation","separationism","separationist","separatism","separatist","separatists","separative","separator","separatrices","separatrix","sephardi","sephardim","sepiolite","seppuku","sepsis","sept","SEPT.","Sept.","sept.","septa","septal","septaria","septarium","septate","septation","septectomy","september","septenary","septennia","septennium","septet","septette","septic","septicaemia","septicemia","septicemic","septillion","septrional","septuagenarian","septum","septuple","sepulcher","sepulchers","sepulchral","sepulchre","sepulchres","sepulture","sequel","sequela","sequelae","sequella","sequels","sequenator","sequence","sequencer","sequences","sequencing","sequent","sequential","sequentially","sequester","sequestered","sequestra","sequestrate","sequestration","sequestrum","sequin","sequined","sequoia","sequoyah","sera","seraglio","serail","serape","seraph","seraphic","seraphical","seraphim","serax","serb","serbian","serdica","sere","serenade","serenades","serenading","serendipitous","serendipity","serene","serenely","sereness","serenity","serf","serfdom","serfhood","serflike","serge","sergeant","serger","serial","serialisation","serialisations","serialise","serialised","serialises","serialising","serialism","serialization","serializations","serialize","serialized","serializes","serializing","serially","serials","seriatim","sericeous","sericterium","serictery","sericultural","sericulture","sericulturist","seriema","series","serif","serigraph","serigraphy","serin","serine","seriocomedy","seriocomic","seriocomical","serious","seriously","seriousness","seriph","serjeant","sermon","sermonise","sermonised","sermoniser","sermonises","sermonising","sermonize","sermonized","sermonizer","sermonizes","sermonizing","serologic","serological","serologist","serology","serosa","serotine","serotonin","serous","serow","serpasil","serpent","serpentine","serranid","serrate","serrated","serratia","serration","serratus","serried","serrulate","sertraline","sertularian","serum","serval","servant","servants","serve","served","server","servers","serves","service","serviceability","serviceable","serviceableness","serviceberry","serviced","serviceman","services","servicing","serviette","servile","servilely","servility","serving","servings","servitor","servitude","servo","servomechanical","servomechanism","servosystem","serzone","sesame","sesamoid","sesbania","sesquicentennial","sesquipedalia","sesquipedalian","sesquipedality","sess","sessile","session","sessions","sestertia","sestertium","sestet","set","seta","setaceous","setae","setback","setbacks","setline","setoff","setose","sets","setscrew","setswana","sett","settee","setter","setterwort","setting","settings","settle","settled","settlement","settlements","settler","settlers","settles","settling","settlor","setup","sevastopol","seven","seven-fold","sevener","sevenfold","sevensome","seventeen","seventeenth","seventh","seventhly","seventies","seventieth","seventy","sever","severable","several","severalise","severalises","severalize","severalizes","severally","severalty","severance","severe","severed","severely","severeness","severest","severing","severity","severs","seville","sew","sewage","sewed","sewellel","sewer","sewerage","sewing","sewn","sex","sexagenarian","sexagesimal","sexcapade","sexed","sexes","sexier","sexiest","sexiness","sexing","sexism","sexist","sexistic","sexless","sexlessness","sexploitation","sexpot","sext","sextant","sextet","sextette","sextillion","sexton","sextuple","sextuplet","sexual","sexualise","sexuality","sexualize","sexually","sexy","Seychelles","seychelles","seychellois","sezession","sforzando","sgml","sgraffiti","sgraffito","SGT.","Sgt.","sgt.","SHA","Sha","sha","shaaban","shabbas","shabbasim","shabbat","shabbatim","shabbier","shabbiest","shabbily","shabbiness","shabby","shabu","shabuoth","shack","shacking","shackle","shackled","shacko","shackoes","shad","shadberry","shadblow","shadbush","shadchan","shadchanim","shadchans","shaddock","shade","shaded","shades","shadflower","shadfly","shadier","shadiest","shadiness","shading","shadow","shadowbox","shadowboxing","shadowed","shadower","shadowgraph","shadowiness","shadowing","shadows","shadowy","shady","shaft","shag","shagbark","shagged","shaggier","shaggiest","shaggily","shagginess","shagging","shaggy","shaggymane","shahadah","shaheed","shaitan","shakable","shake","shakeable","shakedown","shaken","shakeout","shaker","shakes","shakespearean","shakespearian","shakeup","shakier","shakiest","shakily","shakiness","shaking","shako","shakoes","shakspere","shaky","shale","SHALL","Shall","shall","SHALLN'T","Shalln't","shalln't","SHALLNT","Shallnt","shallnt","SHALLN\u2019T","Shalln\u2019t","shalln\u2019t","shallon","shallot","shallow","shallower","shallowly","shallowness","shallu","shalwar","sham","shaman","shamanise","shamanism","shamanist","shamanistic","shamanize","shamble","shambling","shambolic","shambolically","shame","shamed","shamefaced","shamefacedly","shamefacedness","shameful","shamefully","shamefulness","shameless","shamelessly","shamelessness","shaming","shamisen","shammas","shammed","shammer","shamming","shammosim","shammy","shampoo","shamrock","shams","shamus","shan","SHAN'T","Shan't","shan't","shandy","shandygaff","shanghai","shanghaier","shanghaiing","shanghais","shank","shanny","SHANT","Shant","shant","shantung","shanty","shantytown","SHAN\u2019T","Shan\u2019t","shan\u2019t","shape","shaped","shapeless","shapelessly","shapelessness","shapelier","shapeliest","shapeliness","shapely","shaper","shapes","shaping","shard","share","sharecrop","sharecropped","sharecropper","sharecropping","shared","shareholder","shareholders","shareholding","shareowner","sharer","shares","shareware","sharia","shariah","sharing","shark","sharks","sharkskin","sharksucker","sharp","sharpen","sharpened","sharpener","sharpening","sharpens","sharper","sharpest","sharpie","sharply","sharpness","sharpshoot","sharpshooter","sharpy","shatter","shattered","shattering","shatterproof","shatters","shave","shaved","shaven","shaver","shaves","shavian","shaving","shavuot","shavuoth","shawl","shawm","shawny","shay","shaytan","shd","SHE","She","she","SHE'D","She'd","she'd","SHE'LL","She'll","she'll","SHE'S","She's","she's","sheaf","shear","sheared","shearer","shearing","shears","shearwater","sheatfish","sheatfishes","sheath","sheathe","sheathed","sheathes","sheathing","sheaves","shebang","shebeen","shed","shedder","shedding","sheds","sheen","sheeny","sheep","sheepcote","sheepdog","sheepfold","sheepherder","sheepish","sheepishly","sheepishness","sheeplike","sheepman","sheeprun","sheepshank","sheepshead","sheepshearing","sheepskin","sheepwalk","sheer","sheering","sheers","sheesha","sheet","sheeting","sheetlike","sheets","shegetz","sheik","sheika","sheikdom","sheikh","sheikha","sheikhdom","shekel","sheldrake","shelduck","shelf","shelfful","shelflike","shelfy","shell","shellac","shellack","shellacked","shellacking","shellbark","shelled","sheller","shellfire","shellfish","shellfishes","shellflower","shelling","shellproof","shells","shelter","shelterbelt","sheltered","sheltering","shelters","shelve","shelved","shelver","shelves","shelving","shelvy","shemozzle","shenanigan","shenanigans","shepherd","shepherded","shepherdess","shepherding","shepherds","sherbert","sherbet","sherd","sheriff","sherlock","sherry","SHES","Shes","shes","shevat","shew","SHE\u2019D","She\u2019d","she\u2019d","SHE\u2019LL","She\u2019ll","she\u2019ll","SHE\u2019S","She\u2019s","she\u2019s","shf","shia","shiatsu","shibah","shibboleth","shied","shield","shielded","shielder","shielding","shields","shier","shiest","shift","shifted","shifter","shiftier","shiftiest","shiftily","shiftiness","shifting","shiftless","shiftlessness","shifts","shifty","shigella","shigellosis","shiitake","shikar","shikarred","shikarring","shiksa","shikse","shill","shillalah","shillelagh","shilling","shillyshallied","shillyshally","shim","shimmed","shimmer","shimmered","shimmery","shimmied","shimming","shimmy","shimmying","shin","shinbone","shindig","shindy","shine","shiner","shines","shingle","shingler","shingles","shingling","shingly","shinier","shiniest","shininess","shining","shinleaf","shinleaves","shinned","shinney","shinning","shinny","shinpad","shinplaster","shinto","shintoism","shintoist","shintoistic","shiny","ship","shipboard","shipbuilder","shipbuilding","shipload","shipmate","shipment","shipments","shipowner","shipped","shipper","shipping","ships","shipshape","shipside","shipway","shipworm","shipwreck","shipwright","shipyard","shire","shirk","shirker","shirking","shirks","shirr","shirring","shirt","shirtdress","shirtfront","shirtier","shirtiest","shirting","shirtmaker","shirts","shirtsleeve","shirttail","shirtwaist","shirtwaister","shirty","shisha","shit","shite","shithead","shitless","shitlist","shittah","shitted","shitter","shittim","shittimwood","shitting","shitty","shitwork","shiv","shiva","shivah","shivaree","shiver","shivering","shivers","shivery","shlemiel","shlep","shlepper","shlimazel","shlock","shlockmeister","shmaltz","shmear","shmegegge","shmo","shmoes","shmoose","shmooze","shmoozing","shmuck","shnook","shnorr","shnorrer","shoal","shoaling","shoaly","shoat","shock","shockable","shocked","shocker","shocking","shockingly","shocks","shod","shodden","shoddier","shoddiest","shoddily","shoddiness","shoddy","shoe","shoebill","shoebird","shoeblack","shoebox","shoed","shoeful","shoehorn","shoehorned","shoehorning","shoelace","shoeless","shoemaker","shoemaking","shoes","shoeshine","shoestring","shoetree","shofar","shofroth","shogi","shogun","shogunate","shoji","shona","shoo","shoody","shoofly","shooing","shook","shoos","shoot","shooter","shooting","shootings","shootout","shoots","shop","shopaholic","shopfront","shophar","shophroth","shoping","shopkeeper","shoplift","shoplifter","shoplifting","shopped","shopper","shoppers","shopping","shops","shopsoiled","shopwalker","shopwindow","shopworn","shore","shorebird","shoreline","shores","shoreward","shoring","shorn","short","shortage","shortages","shortbread","shortcake","shortcoming","shortcomings","shortcut","shorted","shorten","shortened","shortener","shortening","shortens","shorter","shortest","shortfall","shortgrass","shorthand","shorthorn","shortia","shorting","shortish","shortlist","shortlisting","shortlists","shortly","shortness","shorts","shortsighted","shortsightedness","shortstop","shoshoni","shoshonian","shot","shote","shotgun","shotgunned","shotgunning","shotguns","shots","SHOULD","Should","should","SHOULD'VE","Should've","should've","shoulder","shouldered","shouldering","shoulders","SHOULDN'T","Shouldn't","shouldn't","SHOULDN'T'VE","Shouldn't've","shouldn't've","SHOULDNT","Shouldnt","shouldnt","SHOULDNTVE","Shouldntve","shouldntve","SHOULDN\u2019T","Shouldn\u2019t","shouldn\u2019t","SHOULDN\u2019T\u2019VE","Shouldn\u2019t\u2019ve","shouldn\u2019t\u2019ve","SHOULDVE","Shouldve","shouldve","SHOULD\u2019VE","Should\u2019ve","should\u2019ve","shout","shouted","shouter","shouting","shouts","shove","shoved","shovel","shovelboard","shoveled","shoveler","shovelful","shovelhead","shoveling","shovelled","shoveller","shovelling","shovels","shover","shoves","shoving","show","showboat","showcase","showdown","showed","shower","showerhead","showering","showers","showery","showgirl","showier","showiest","showily","showiness","showing","showjumping","showman","showmanship","shown","showpiece","showplace","showroom","shows","showstopper","showtime","showy","shrank","shrapnel","shred","shredded","shredder","shredding","shrew","shrewd","shrewder","shrewdly","shrewdness","shrewish","shrewishly","shrewishness","shrewmice","shrewmouse","SHRI.","Shri.","shri.","shriek","shrieked","shrieking","shrift","shrike","shrill","shrilling","shrillness","shrilly","shrimp","shrimper","shrimpfish","shrimpy","shrine","shrines","shrink","shrinkable","shrinkage","shrinking","shrinks","shrinkwrap","shrinkwraps","shrive","shrivel","shriveled","shriveling","shrivelled","shrivelling","shrivels","shrives","shriving","shroud","shrouded","shrouding","shrouds","shrub","shrubbery","shrubbier","shrubbiest","shrubby","shrublet","shrubs","shrug","shrugged","shrugging","shrugs","shrunk","shrunken","shtick","shtickl","shtik","shtikl","shtup","shua","shuck","shucking","shucks","shudder","shuddering","shudderingly","shuddery","shuffle","shuffleboard","shuffled","shuffler","shuffles","shuffling","shufti","shuha","shul","shuln","shumac","shun","shunned","shunning","shuns","shunt","shunter","shunting","shunts","shush","shushes","shushing","shut","shutdown","shuteye","shutout","shuts","shutter","shutterbug","shuttered","shuttering","shutters","shutting","shuttle","shuttlecock","shuttled","shuttles","shuttling","shwa","shy","shyer","shyest","shying","shyly","shyness","shyster","si","sial","sialadenitis","sialolith","siam","siamang","siamese","sian","sib","siberian","sibilant","sibilate","sibilation","sibine","sibling","siblings","sibyl","sibyllic","sibylline","sic","siccative","sichuan","sicilia","sicilian","sick","sickbag","sickbay","sickbed","sicked","sicken","sickening","sickeningly","sickeningness","sicking","sickish","sickle","sicklepod","sicklier","sickliest","sickly","sickness","sickroom","sics","siddhartha","siddur","siddurim","side","sidearm","sidebar","sideboard","sideburn","sidecar","sided","sidekick","sidelight","sideline","sidelined","sidelines","sidelining","sidelong","sidereal","siderite","sideroblast","siderocyte","sideropenia","siderophilin","siderosis","sides","sidesaddle","sideshow","sideslip","sideslipped","sideslipping","sidesman","sidesplitter","sidesplitting","sidesplittingly","sidestep","sidestepped","sidestepping","sidesteps","sidestroke","sideswipe","sidetrack","sidetracking","sidetracks","sidewalk","sidewalks","sidewall","sideward","sidewards","sideway","sideways","sidewinder","sidewise","siding","sidle","sidles","sidling","sidon","sids","siege","sienna","Sierra","sierra","siesta","sieve","sieves","sieving","sift","sifted","sifter","sifting","sifts","sigeh","sigh","sighed","sighing","sighs","sight","sighted","sightedness","sighting","sightless","sightlessness","sightlier","sightliest","sightly","sightread","sightreader","sights","sightsee","sightseeing","sightseer","sightsing","sigint","sigloi","siglos","sigma","sigmoid","sigmoidal","sigmoidectomy","sigmoidoscope","sigmoidoscopy","sign","signage","signal","signaled","signaler","signaling","signalisation","signalise","signalised","signalises","signalising","signalization","signalize","signalized","signalizes","signalizing","signalled","signaller","signalling","signally","signalman","signals","signatory","signature","signatures","signboard","signed","signer","signet","significance","significant","significantly","signification","significative","signified","signifier","signifies","signify","signifying","signing","signior","signor","signora","signore","signori","signorina","signorine","signory","signpost","signs","sika","sikh","silage","sild","sildenafil","silence","silenced","silencer","silences","silencing","silene","silent","silently","silents","silhouette","silica","silicate","siliceous","silicide","silicified","silicifies","silicify","silicious","silicle","silicon","silicone","silicosis","siliqua","siliquae","silique","silk","silken","silkgrass","silkier","silkiest","silkily","silkiness","silklike","silks","silkscreen","silkweed","silkwood","silkworm","silky","sill","sillabub","sillier","silliest","silliness","silly","silo","siloxane","silt","silted","silting","siltstone","silty","silurid","silva","silvae","silvan","silvanus","silver","silverback","silverberry","silverbush","silverfish","silverfishes","silverish","silvern","silverplate","silverpoint","silverrod","silverside","silversmith","silverspot","silversword","silvertip","silvervine","silverware","silverweed","silverwork","silverworker","silvery","silvex","silviculture","sima","simal","simazine","simian","similar","similarities","similarity","similarly","simile","similitude","simmer","simmering","simmers","simmpleness","simnel","simoleons","simonise","simonises","simonize","simonizes","simony","simoom","simoon","simper","simperer","simpering","simperingly","simpers","simple","simpleness","simpler","simplest","simpleton","simplex","simplicity","simplification","simplified","simplifies","simplify","simplifying","simplism","simplistic","simply","simulacra","simulacrum","simulate","simulated","simulates","simulating","simulation","simulations","simulator","simulcast","simultaneity","simultaneous","simultaneously","simultaneousness","simvastatin","sin","sinapism","sinbad","Since","since","sincere","sincerely","sincerest","sincerity","sincipita","sinciput","sine","sinecure","sinequan","sinew","sinewy","sinfonia","sinfonie","sinful","sinfulness","sing","singable","singalong","singan","Singapore","singapore","singaporean","singe","singeing","singer","singers","singes","singhalese","singing","single","singled","singleminded","singleness","singles","singlestick","singlet","singleton","singling","singly","sings","singsong","singular","singularise","singularises","singularity","singularize","singularizes","singularizing","singularly","singultus","sinhala","sinhalese","sinister","sinistral","sinistrality","sinistrorsal","sinistrorse","sinitic","sink","sinkable","sinker","sinkhole","sinkiang","sinking","sinks","sinless","sinlessness","sinned","sinner","sinning","sinoper","sinopia","sinopis","sins","sinter","sintered","sintering","sinters","sinuate","sinuosity","sinuous","sinuously","sinuousness","sinus","sinusitis","sinusoid","sinusoidal","sinusoidally","sinusoids","sion","siouan","sip","siphon","siphoned","siphoning","siphonophore","siphons","sipped","sipper","sipping","sips","sipunculid","sir","sirach","siracusa","sirc","sirdar","sire","siren","sirenian","sires","siriasis","siring","siris","sirloin","sirocco","sirrah","sirup","sis","sisal","sise","sisham","siskin","siss","sissified","sissiness","sissoo","sissu","sissy","sissyish","sister","sisterhood","sisterlike","sisterly","sisters","sistership","sistra","sistrum","sisyphean","sit","sitar","sitcom","sitcoms","site","sites","siting","sits","sitsang","sitter","sitting","situate","situated","situates","situating","situation","situations","situla","situlae","sivaism","siwan","six","six-fold","sixer","sixfold","sixpack","sixpence","sixpenny","sixsome","sixteen","sixteenth","sixth","sixthly","sixties","sixtieth","sixty","sizable","size","sizeable","sizeableness","sized","sizes","sizing","sizz","sizzle","sizzling","sjaelland","skag","skagerak","skank","skanky","skate","skateboard","skateboarder","skateboarding","skater","skates","skating","skaw","skedaddle","skeet","skeg","skein","skeletal","skeleton","skeletons","skellied","skellies","skelly","sken","skenned","skenning","skep","skepful","skeptic","skeptical","skeptically","skepticism","skeptics","sket","sketch","sketchbook","sketcher","sketches","sketchier","sketchiest","sketchily","sketchiness","sketching","sketchy","skets","sketted","sketting","skew","skewed","skewer","skewering","skewing","skewness","skews","ski","skiagram","skiagraph","skiagraphy","skibob","skid","skidded","skidder","skidding","skidpan","skier","skies","skiff","skiffle","skiing","skilful","skilfully","skill","skilled","skillet","skilletfish","skillful","skillfully","skillfulness","skills","skilly","skim","skimcoat","skiming","skimmed","skimmer","skimmers","skimming","skimp","skimpier","skimpiest","skimpily","skimping","skimps","skimpy","skims","skin","skincare","skinflint","skinful","skinhead","skink","skinless","skinned","skinnerian","skinnier","skinniest","skinniness","skinning","skinny","skins","skint","skintight","skip","skipjack","skipped","skipper","skipping","skips","skirl","skirmish","skirmished","skirmisher","skirret","skirt","skirted","skirting","skirts","skit","skitter","skittering","skitters","skittish","skittishly","skittishness","skittle","skive","skives","skivvied","skivvy","skoplje","skreak","skreaks","skreigh","skua","skulduggery","skulk","skulker","skulking","skulks","skull","skullcap","skullduggery","skulls","skunk","skunkbush","skunkweed","sky","skybox","skycap","skydive","skydiver","skydives","skydiving","skyhook","skyjack","skylark","skylight","skyline","skyrocket","skyrocketed","skyrocketing","skyrockets","skysail","skyscraper","skyscrapers","skywalk","skyward","skywards","skyway","skywriting","slab","slabbed","slabber","slabbing","slabs","slack","slacken","slackened","slackening","slackens","slacker","slacking","slackly","slackness","slacks","slag","slagged","slagging","slagheap","slags","slain","slake","slaked","slalom","slam","slammed","slammer","slamming","slams","slander","slanderer","slandering","slanderous","slanderously","slanders","slang","slangily","slanginess","slanging","slangs","slanguage","slangy","slant","slanted","slanting","slantingly","slants","slantways","slantwise","slap","slapdash","slaphappier","slaphappiest","slaphappy","slapped","slapper","slapping","slaps","slapshot","slapstick","slash","slashed","slasher","slashes","slashing","slask","slat","slate","slated","slater","slatey","slather","slathering","slathers","slatier","slatiest","slating","slatted","slattern","slatternliness","slatternly","slatting","slaty","slaughter","slaughtered","slaughterer","slaughterhouse","slaughtering","slaughterous","slaughters","slav","slave","slaveholder","slaveholding","slaveless","slavelike","slaver","slavering","slavers","slavery","slaves","slavey","slavic","slaving","slavish","slavishly","slavonic","slaw","slay","slayer","slayers","slaying","slays","sle","sleaze","sleazier","sleaziest","sleaziness","sleazy","sled","sledder","sledding","sledge","sledgehammer","sleds","sleek","sleekly","sleekness","sleep","sleeper","sleepier","sleepiest","sleepily","sleepiness","sleeping","sleepless","sleeplessly","sleeplessness","sleepover","sleeps","sleepwalk","sleepwalker","sleepwalking","sleepwalks","sleepwear","sleepy","sleepyhead","sleepyheaded","sleet","sleety","sleeve","sleeved","sleeveless","sleeves","sleigh","sleight","slender","slenderise","slenderises","slenderize","slenderizes","slenderizing","slenderly","slenderness","slept","sleuth","sleuthhound","sleuthing","slew","slewing","slews","slezsko","slice","sliced","slicer","slices","slicing","slick","slicked","slicker","slickest","slickly","slickness","slid","slide","slider","slides","slideway","sliding","slier","sliest","slight","slightest","slighting","slightingly","slightly","slightness","slim","slime","slimed","slimier","slimiest","sliminess","sliming","slimly","slimmer","slimmest","slimness","slims","slimsier","slimsiest","slimsy","slimy","sling","slingback","slinger","slinging","slings","slingshot","slink","slinkier","slinkiest","slinking","slinks","slinky","slip","slipcover","slipknot","slipover","slippage","slipped","slipper","slippered","slipperiness","slipperwort","slippery","slippier","slippiest","slipping","slippy","slips","slipshod","slipstick","slipstream","slipway","slit","slither","slithered","slithering","slithery","slits","slitting","sliver","slivery","slivovitz","slob","slobber","slobberer","slobbering","slobbers","sloe","slog","slogan","sloganeer","sloganeering","slogans","slogged","slogger","slogging","slogs","sloop","slop","slope","sloped","slopes","sloping","slopingly","slopped","sloppier","sloppiest","sloppily","sloppiness","slopping","sloppy","slops","slopseller","slopshop","slosh","sloshed","sloshes","sloshing","slot","sloth","slothful","slothfulness","slots","slotted","slotting","slouch","sloucher","slouches","slouchily","slouching","slouchingly","slouchy","slough","sloughing","sloughs","sloughy","Slovakia","slovakia","slovakian","sloven","slovenian","slovenija","slovenliness","slovenly","slow","slowcoach","slowdown","slowed","slower","slowest","slowgoing","slowing","slowly","slowness","slowpoke","slows","slowworm","slub","slubbed","sludge","slue","slues","slug","slugabed","slugfest","sluggard","slugged","slugger","slugging","sluggish","sluggishly","sluggishness","slugs","sluice","sluicegate","sluices","sluiceway","sluicing","slum","slumber","slumberer","slumbering","slumberous","slumbers","slumbery","slumbrous","slumgullion","slummed","slumming","slummy","slump","slumped","slumping","slumps","slur","slurp","slurping","slurred","slurring","slurry","slurs","slush","slushes","slushing","slushy","slut","sluttish","sluttishness","sly","slyboots","slyer","slyest","slyly","slyness","smack","smacker","smacking","smacks","small","smaller","smallest","smallholder","smallholding","smallish","smallmouth","smallness","smallpox","smalti","smaltite","smalto","smarm","smarmier","smarmiest","smarmily","smarminess","smarmy","smart","smarta","smarter","smartest","smarting","smartly","smartness","smash","smashed","smasher","smashes","smashing","smashingly","smatter","smattering","smear","smearing","smears","smegma","smell","smelled","smellier","smelliest","smelling","smells","smelly","smelt","smelter","smeltery","smelting","smew","smidge","smidgen","smidgeon","smidgin","smilax","smile","smiled","smiler","smiles","smiley","smiling","smilingly","smilo","smirch","smirching","smirk","smirker","smirking","smirks","smite","smites","smith","smithereens","smithy","smiting","smitten","smock","smocking","smog","smogginess","smoggy","smoke","smoked","smokehouse","smokeless","smoker","smokers","smokes","smokescreen","smokestack","smokier","smokiest","smoking","smoky","smolder","smoldered","smoldering","smolderingly","smolders","smooch","smooches","smooching","smooth","smoothbark","smoothbore","smoothed","smoothen","smoothened","smoother","smoothest","smoothhound","smoothie","smoothing","smoothly","smoothness","smooths","smoothy","smorgasbord","smother","smothered","smotherer","smothering","smothers","smoulder","smouldered","smouldering","smoulderingly","smoulders","smsgt","SMT.","Smt.","smt.","smudge","smudges","smudging","smudgy","smug","smugger","smuggest","smuggle","smuggled","smuggler","smuggles","smuggling","smugly","smugness","smut","smutch","smutted","smuttily","smuttiness","smutting","smutty","smyrna","snack","snacker","snacking","snacks","snaffle","snafu","snag","snagged","snagging","snaggleteeth","snaggletooth","snags","snail","snailfish","snailfishes","snailflower","snake","snakeberry","snakebird","snakebite","snakeblenny","snakefish","snakefly","snakehead","snakelike","snakeroot","snakes","snakeweed","snakewood","snakier","snakiest","snaking","snaky","snap","snapdragon","snapline","snapped","snapper","snappier","snappiest","snapping","snappish","snappishly","snappishness","snappy","snaps","snapshot","snapshots","snare","snarer","snarf","snarky","snarl","snarled","snarling","snarls","snarly","snatch","snatched","snatcher","snatches","snatchier","snatchiest","snatching","snatchy","snazzier","snazziest","snazzy","sneak","sneaked","sneaker","sneakers","sneakily","sneakiness","sneaking","sneakingly","sneaks","sneaky","sned","snedded","snedding","sneds","sneer","sneerer","sneering","sneeringly","sneers","sneeze","sneezed","sneezer","sneezes","sneezeweed","sneezewort","sneezing","sneezy","snick","snicker","snickering","snickers","snickersnee","snicks","snide","snidely","sniff","sniffed","sniffer","sniffier","sniffiest","sniffing","sniffle","sniffler","sniffles","sniffling","sniffly","sniffs","sniffy","snifter","snigger","sniggering","sniggers","snip","snipe","sniped","snipefish","snipefishes","sniper","snipped","snippet","snippets","snipping","snips","snit","snitch","snitcher","snitches","snitching","snivel","sniveled","sniveler","sniveling","snivelled","sniveller","snivelling","snivels","snob","snobbery","snobbish","snobbishly","snobbishness","snobbism","snobby","snoek","snog","snogged","snogging","snogs","snood","snook","snooker","snoop","snooper","snoopiness","snooping","snoops","snoopy","snoot","snootier","snootiest","snootily","snootiness","snooty","snooze","snoozes","snoozing","snore","snorer","snores","snoring","snorkel","snorkeled","snorkeling","snorkelled","snorkelling","snorkels","snort","snorter","snorting","snorts","snorty","snot","snottier","snottiest","snotty","snout","snow","snowball","snowballed","snowballing","snowballs","snowbank","snowbell","snowberry","snowbird","snowblindness","snowboard","snowboarder","snowboarding","snowboards","snowbound","snowcap","snowdrift","snowdrop","snowfall","snowfield","snowflake","snowier","snowiest","snowing","snowman","snowmobile","snowplough","snowploughs","snowplow","snows","snowshoe","snowshoeing","snowstorm","snowsuit","snowy","snp","snub","snubbed","snubbing","snubs","snuff","snuffbox","snuffer","snuffier","snuffiest","snuffing","snuffle","snuffler","snuffles","snuffling","snuffly","snuffs","snuffy","snug","snugged","snugger","snuggery","snuggest","snugging","snuggle","snuggled","snuggles","snuggling","snugly","snugness","snugs","SO","So","so","SO'RE","So're","so're","soak","soakage","soaked","soaker","soaking","soaks","soap","soapberry","soapbox","soapfish","soapier","soapiest","soapiness","soaping","soaprock","soaps","soapstone","soapsuds","soapweed","soapwort","soapy","soar","soared","soaring","soars","sob","sobbed","sobbing","sobbingly","sober","sobered","sobering","soberly","soberness","sobers","sobersided","sobersides","sobralia","sobriety","sobriquet","sobs","socage","soccer","sociability","sociable","sociableness","sociably","social","socialisation","socialise","socialised","socialiser","socialises","socialising","socialism","Socialist","socialist","socialistic","socialite","sociality","socialization","socialize","socialized","socializer","socializes","socializing","socially","societal","societies","society","sociobiologic","sociobiological","sociobiologically","sociobiologist","sociobiology","sociocultural","socioeconomic","socioeconomically","sociolinguist","sociolinguistic","sociolinguistically","sociolinguistics","sociological","sociologically","sociologist","sociology","sociometry","sociopath","sociopathic","sock","socket","sockeye","socking","socks","socle","socman","socmen","socratic","sod","soda","sodalist","sodalite","sodality","sodbuster","sodded","sodden","sodding","sodium","sodoku","sodomise","sodomised","sodomises","sodomising","sodomist","sodomite","sodomize","sodomized","sodomizes","sodomizing","sodomy","sods","sofa","soffit","soft","softback","softball","soften","softened","softener","softening","softens","softer","softheaded","softhearted","softheartedness","softie","softish","softly","softness","software","softwood","softy","soggier","soggiest","sogginess","soggy","soh","soigne","soignee","soil","soiled","soiling","soils","soilure","soiree","soja","sojourn","sojourner","sojourning","sol","sola","solace","solacement","solan","solanaceous","solar","solaria","solarisation","solarise","solarium","solarization","solarize","solatia","solatium","sold","solder","solderer","soldering","soldi","soldier","soldierfish","soldiering","soldierlike","soldierly","soldiers","soldiership","soldiery","soldo","sole","solecism","soled","soleirolia","soleless","solely","solemn","solemness","solemnified","solemnifies","solemnify","solemnisation","solemnise","solemnised","solemnises","solemnising","solemnity","solemnization","solemnize","solemnized","solemnizes","solemnizing","solemnly","solenogaster","solenoid","soles","soleus","solfa","solfege","solfeggi","solfeggio","soli","solicit","solicitation","solicited","soliciting","solicitor","solicitorship","solicitous","solicitously","solicitousness","solicits","solicitude","solid","solidarity","solidi","solidification","solidified","solidifies","solidify","solidifying","solidity","solidly","solidness","solidus","soliloquise","soliloquises","soliloquize","soliloquizes","soliloquy","solipsism","solitaire","solitarily","solitariness","solitary","soliton","solitude","solitudinarian","solleret","solmisation","solmizate","solmization","solo","soloes","soloing","soloist","Solomon","solomon","solomonic","solon","solstice","solubility","soluble","solubleness","solum","solute","solutes","solution","solutions","solvability","solvable","solvate","solvation","solve","solved","solvency","solvent","solver","solves","solving","som","soma","somaesthesia","somaesthesis","somali","Somalia","somalia","somalian","soman","somata","somataesthesis","somatesthesia","somatic","somatogenetic","somatogenic","somatosense","somatosensory","somatotrophin","somatotropin","somatotype","somber","somberly","somberness","sombre","sombrely","sombreness","Some","some","somebody","someday","somehow","Someone","someone","someplace","somersault","somersaulting","somersaults","somesthesia","somesthesis","something","sometime","Sometimes","sometimes","someway","someways","somewhat","somewhere","somite","somme","sommelier","somnambulate","somnambulates","somnambulation","somnambulism","somnambulist","somniferous","somnific","somniloquism","somniloquist","somniloquy","somnolence","somnolent","somnolently","son","sonant","sonar","sonata","sonatina","sone","song","songbird","songbook","songful","songfulness","songlike","songs","songster","songstress","songwriter","sonic","sonnet","sonneteer","sonny","sonogram","sonograph","sonography","sonometer","sonority","sonorous","sonorously","sonorousness","sons","sonsie","sonsier","sonsiest","sonsy","soochong","soon","sooner","soonest","soot","sooth","soothe","soothed","soothes","soothing","soothingly","soothsayer","soothsaying","sootier","sootiest","sootiness","sooty","sop","soph","sophism","sophist","sophistic","sophistical","sophisticate","sophisticated","sophistication","sophistry","sophomore","sophonias","sopor","soporiferous","soporific","sopped","soppier","soppiest","sopping","soppy","soprani","sopranino","soprano","sorb","sorbate","sorbed","sorbefacient","sorbent","sorbet","sorbonne","sorcerer","sorceress","sorcerise","sorcerises","sorcerize","sorcerizes","sorcerous","sorcery","sordid","sordidly","sordidness","sordini","sordino","sore","sorehead","sorely","soreness","sorgho","sorghum","sorgo","sori","sororal","sorority","soroses","sorosis","sorption","sorrel","sorrier","sorriest","sorriness","sorrow","sorrower","sorrowful","sorrowfully","sorrowfulness","sorrowing","Sorry","sorry","sort","sorted","sorter","sortie","sorting","sortition","sorts","sorus","sot","soteriological","soteriology","sothis","sotho","sottish","sottishly","sottishness","sou","souari","soubrette","soubriquet","souchong","soudan","souffle","sough","soughing","soughingly","soughs","sought","souk","soul","soulful","soulfully","soulfulness","soulless","soullessly","souls","sound","soundable","soundboard","soundbox","sounded","sounder","sounding","soundless","soundlessly","soundlessness","soundly","soundman","soundness","soundproof","soundproofing","sounds","soundtrack","soup","soupcon","soupfin","soupier","soupiest","soupiness","souping","soupspoon","soupy","sour","sourball","Source","source","sources","sourcing","sourdine","sourdough","soured","souring","sourish","sourly","sourness","sourpuss","sours","soursop","sourwood","sousaphone","souse","soused","souses","sousing","souslik","soutache","soutane","South","south","southbound","southeast","southeaster","southeasterly","southeastern","southeastward","southeastwardly","souther","southerly","southern","southerner","southernism","southernmost","southernness","southernwood","southland","southmost","southpaw","southward","southwards","southwest","southwester","southwesterly","southwestern","southwestward","southwestwardly","souvenir","souvenirs","souvlaki","souvlakia","sovereign","sovereignty","Soviet","soviet","sovietise","sovietises","sovietism","sovietize","sovietizes","sovkhoz","sovkhozy","sow","sowbane","sowbelly","sowbread","sowed","sower","sown","sows","soy","soya","soybean","soymilk","sozzled","SO\u2019RE","So\u2019re","so\u2019re","spa","space","spacecraft","spaced","spacefaring","spaceflight","spaceman","spaces","spaceship","spacesuit","spacewalk","spacewalker","spaceward","spacewards","spacey","spacial","spacing","spaciotemporal","spacious","spaciously","spaciousness","spackle","spacy","spade","spadefish","spadefishes","spadefoot","spadeful","spadework","spadices","spadix","spag","spagged","spagging","spaghetti","spaghettini","spall","spallation","spam","spammer","spammers","spamming","spams","span","spancel","spancelled","spancelling","spancels","spandex","spandrel","spandril","spang","spangle","spangled","spangles","spangly","spangs","spaniel","spanish","spank","spanker","spanking","spanks","spanned","spanner","spanning","spans","spar","spare","spared","spareness","sparer","sparerib","spares","sparge","sparid","sparing","sparingly","spark","sparked","sparker","sparking","sparkle","sparkleberry","sparkler","sparkles","sparkling","sparkly","sparks","sparling","sparred","sparring","sparrow","spars","sparse","sparsely","sparseness","sparsity","spartan","spasm","spasmodic","spasmodically","spasmolysis","spasmolytic","spastic","spasticity","spat","spatchcock","spate","spathe","spathiphyllum","spatial","spatiality","spatially","spatiotemporal","spatted","spatter","spatterdock","spattered","spattering","spatters","spatting","spatula","spatulate","spavin","spavined","spawl","spawn","spawned","spawner","spawning","spawns","spay","spayed","spaying","spays","speak","speakable","speakeasy","speaker","speakerphone","speakers","speakership","speaking","speaks","spear","spearfish","spearfishes","spearhead","spearheaded","spearheading","spearheads","spearing","spearmint","spearpoint","spec","special","specialisation","specialisations","specialise","specialised","specialiser","specialises","specialising","specialism","specialist","specialistic","specialists","speciality","specialization","specializations","specialize","specialized","specializer","specializes","specializing","specially","specialness","specials","specialties","specialty","speciate","speciates","speciating","speciation","specie","species","specifiable","specific","specifically","specification","specifications","specificities","specificity","specifics","specified","specifier","specifies","specify","specifying","specimen","specimens","specious","speciously","speciousness","speck","specked","speckle","speckled","speckles","speckless","speckling","spectacle","spectacled","spectacular","spectacularly","spectate","spectates","spectating","spectator","spectators","specter","specters","spectinomycin","spectra","spectral","spectre","spectres","spectrogram","spectrograph","spectrographic","spectrographically","spectrometer","spectrometric","spectrometry","spectrophotometer","spectroscope","spectroscopic","spectroscopical","spectroscopy","spectrum","specula","specular","speculate","speculated","speculates","speculating","speculation","speculative","speculatively","speculativeness","speculator","speculators","speculum","sped","speech","speeches","speechified","speechifier","speechifies","speechify","speechifying","speechless","speechlessly","speechlessness","speechmaker","speechmaking","speechwriter","speed","speedboat","speeded","speeder","speedier","speediest","speedily","speediness","speeding","speedometer","speeds","speedskater","speedup","speedway","speedwell","speedy","spelaeologist","spelaeology","speleologist","speleology","spell","spellbind","spellbinder","spellbinding","spellbinds","spellbound","spelldown","spelled","speller","spelling","spellings","spells","spelt","spelter","spelunk","spelunker","spelunking","spelunks","spend","spendable","spending","spends","spendthrift","spent","sperm","spermaceti","spermatia","spermatic","spermatid","spermatium","spermatocele","spermatocide","spermatocyte","spermatogenesis","spermatogonia","spermatogonium","spermatophyte","spermatozoa","spermatozoan","spermatozoid","spermatozoon","spermicidal","spermicide","spermogonia","spermogonium","spermophile","spermophilus","spermous","spew","spewed","spewer","spewing","spews","spf","sphacelate","sphacelates","sphacele","sphacelus","sphaerocarpos","sphagnum","sphalerite","sphecoid","sphenion","sphenoid","sphere","spheric","spherical","spherically","sphericalness","sphericity","spherocyte","spheroid","spheroidal","spherometer","spherule","sphincter","sphinges","sphingid","sphingine","sphinx","sphygmomanometer","spic","spica","spicae","spicate","spiccato","spice","spiceberry","spicebush","spicemill","spicery","spices","spicier","spiciest","spicily","spiciness","spicing","spick","spicula","spicule","spiculum","spicy","spider","spiderflower","spiderlike","spiderly","spiders","spiderwort","spidery","spied","spiegel","spiegeleisen","spiel","spies","spiff","spiffier","spiffiest","spiffing","spiffy","spigot","spik","spike","spiked","spikelet","spikelike","spikemoss","spikenard","spikes","spikier","spikiest","spiking","spiky","spile","spill","spillage","spilled","spiller","spillikin","spillover","spills","spillway","spin","spinach","spinal","spinally","spindle","spindleberry","spindlelegs","spindles","spindleshanks","spindlier","spindliest","spindly","spindrift","spine","spinel","spineless","spinelessness","spinet","spinier","spiniest","spininess","spinmeister","spinnability","spinnable","spinnaker","spinnbar","spinnbarkeit","spinner","spinney","spinning","spinose","spinous","spins","spinster","spinsterhood","spiny","spiracle","spiral","spiraled","spiraling","spiralled","spiralling","spirally","spirals","spirant","spire","spirea","spirilla","spirillum","spirit","spirited","spiritedly","spiritedness","spiriting","spiritise","spiritises","spiritism","spiritize","spiritizes","spiritless","spiritlessness","spiritous","spirits","spiritual","spiritualisation","spiritualise","spiritualises","spiritualism","spiritualist","spiritualistic","spirituality","spiritualization","spiritualize","spiritualizes","spiritually","spiritualty","spirituous","spirochaete","spirochete","spirogram","spirograph","spirogyra","spirometer","spirometry","spironolactone","spirt","spirula","spit","spitball","spite","spiteful","spitefully","spitefulness","spites","spitfire","spits","spitted","spitter","spitting","spittle","spittlebug","spittoon","spitz","spitzbergen","spiv","splanchnic","splash","splashboard","splashdown","splashed","splasher","splashes","splashier","splashiest","splashiness","splashing","splashy","splat","splats","splatter","splattered","splattering","splatters","splay","splayfeet","splayfoot","splayfooted","splays","spleen","spleenwort","splendid","splendidly","splendiferous","splendor","splendors","splendour","splendours","splenectomy","splenetic","splenic","splenii","splenitis","splenius","splenomegaly","splice","splicer","splices","splicing","spliff","spline","splint","splinter","splintering","splinterless","splinterproof","splinters","splintery","split","splits","splitsaw","splitsville","splitter","splitting","splitworm","splodge","splosh","sploshes","splotch","splotched","splotches","splurge","splurges","splutter","spluttering","splutters","spodumene","spoil","spoilable","spoilage","spoilation","spoiled","spoiler","spoilers","spoiling","spoils","spoilsport","spoilt","spoke","spoken","spokeshave","spokesman","spokesperson","spokeswoman","spoliation","spondaic","spondaise","spondaises","spondaize","spondaizes","spondee","spondylarthritis","spondylitis","spondylolisthesis","sponge","spongefly","spongelike","sponger","spongier","spongiest","spongillafly","sponginess","sponging","spongioblast","spongioblastoma","spongy","sponsor","sponsored","sponsoring","sponsors","sponsorship","spontaneity","spontaneous","spontaneously","spontaneousness","spoof","spoofing","spook","spooked","spookier","spookiest","spookily","spooky","spool","spoon","spoonbill","spoondrift","spoonerism","spoonfeed","spoonfeeding","spoonflower","spoonful","spoonier","spooniest","spooning","spoons","spoony","spoor","sporadic","sporadically","sporangia","sporangiophore","sporangium","sporanox","spore","spores","sporocarp","sporogenous","sporogonia","sporogonium","sporophore","sporophyl","sporophyll","sporophyte","sporotrichosis","sporozoa","sporozoan","sporozoite","sporran","sport","sported","sportfishing","sportier","sportiest","sporting","sportingly","sportive","sportively","sportiveness","sports","sportscast","sportscaster","sportscasting","sportsman","sportsmanlike","sportsmanship","sportswear","sportswoman","sportswriter","sporty","sporulate","sporulates","sporulation","spot","spotless","spotlessly","spotlessness","spotlight","spotlighting","spots","spotted","spotter","spottier","spottiest","spotting","spotty","spotweld","spousal","spouse","spouses","spout","spouter","spouting","spouts","sprachgefuhl","sprag","sprain","spraining","sprang","sprat","sprawl","sprawler","sprawling","sprawls","sprawly","spray","sprayer","spraying","sprays","spread","spreadeagle","spreader","spreadhead","spreading","spreads","spreadsheet","sprechgesang","sprechstimme","spree","sprees","sprier","spriest","sprig","sprigged","sprigger","sprigging","sprightlier","sprightliest","sprightliness","sprightly","sprigtail","spring","springboard","springbok","springbuck","springer","springhaas","springhase","springier","springiest","springiness","springing","springless","springlike","springs","springtail","springtide","springtime","springy","sprinkle","sprinkled","sprinkler","sprinkles","sprinkling","sprint","sprinter","sprinting","sprints","sprit","sprite","spritsail","spritz","spritzer","spritzes","spritzing","sprocket","sprog","sprout","sprouted","sprouting","sprouts","spruce","sprucely","spruceness","spruces","sprucing","sprue","sprung","spry","spud","spudded","spudding","spue","spume","spumone","spumoni","spumy","spun","spunk","spunky","spur","spurge","spurious","spuriously","spuriousness","spurn","spurned","spurner","spurning","spurns","spurred","spurring","spurs","spurt","spurted","spurting","spurts","sputa","sputnik","sputter","sputtered","sputtering","sputum","spy","spyglass","spyhole","spying","spymaster","spyware","squab","squabble","squabbler","squabby","squad","squadron","squads","squalid","squalidly","squalidness","squall","squalling","squally","squalor","squama","squamae","squamule","squamulose","squander","squandered","squanderer","squandering","squandermania","squanders","square","squared","squarely","squareness","squares","squaretail","squaring","squarish","squark","squash","squashed","squashes","squashier","squashiest","squashing","squashy","squat","squatness","squats","squatted","squatter","squattest","squattier","squattiest","squattiness","squatting","squatty","squaw","squawbush","squawk","squawker","squawking","squawks","squawkss","squawky","squawroot","squeak","squeaker","squeaking","squeaky","squeal","squealer","squealing","squeals","squeamish","squeamishly","squeamishness","squeegee","squeegeeing","squeegees","squeezability","squeezable","squeeze","squeezed","squeezer","squeezes","squeezing","squelch","squelched","squelcher","squelching","squib","squibbed","squibbing","squid","squidded","squidding","squids","squiffier","squiffiest","squiffy","squiggle","squiggly","squill","squilla","squillae","squinch","squinched","squint","squinted","squinter","squinting","squints","squinty","squire","squirearchy","squirm","squirmer","squirming","squirms","squirrel","squirreled","squirrelfish","squirrelfishes","squirreling","squirrelled","squirrelling","squirrels","squirt","squirter","squirting","squirts","squish","squishes","squishing","squishy","squiz","squizzes","SR.","Sr.","sr.","sravana","srbija","Sri","sri","ssa","sse","sspe","ssri","ssw","ST.","St.","st.","stab","stabbed","stabber","stabbing","stabile","stabilisation","stabilise","stabilised","stabiliser","stabilisers","stabilises","stabilising","stability","stabilization","stabilize","stabilized","stabilizer","stabilizers","stabilizes","stabilizing","stable","stableboy","stableman","stablemate","stableness","stables","stabling","stably","stabroek","stabs","staccato","stachyose","stack","stacked","stacker","stacking","stacks","stacte","staddle","stadia","stadium","stadiums","staff","staffed","staffer","staffers","staffing","staffs","stag","stage","stagecoach","stagecraft","staged","stagehand","stager","stages","stagey","stagflation","stagflationary","stagger","staggerbush","staggerer","staggering","staggeringly","staggers","staghead","staghound","stagier","stagiest","stagily","staginess","staging","stagirus","stagnancy","stagnant","stagnate","stagnated","stagnates","stagnating","stagnation","stagy","staid","staidly","staidness","stain","stainability","stainable","stained","stainer","staining","stainless","stains","stair","staircase","stairhead","stairs","stairway","stairwell","stake","staked","stakeholder","stakeholders","stakeout","stakes","staking","stalactite","stalagmite","stale","stalemate","stalemated","staleness","stales","stalinabad","stalingrad","stalinisation","stalinise","stalinises","stalinism","stalinist","stalinize","stalinizes","stalino","stalk","stalked","stalker","stalkier","stalkiest","stalking","stalkless","stalky","stall","stalled","stalling","stallion","stalls","stalwart","stalwartness","stamboul","stambul","stamen","stamina","staminate","staminodia","staminodium","stammel","stammer","stammerer","stammering","stammers","stamp","stampede","stampeded","stampedes","stampeding","stamper","stamping","stamps","stance","stanch","stanches","stanchion","stanchly","stand","standard","standardisation","standardise","standardised","standardiser","standardises","standardising","standardization","standardize","standardized","standardizer","standardizes","standardizing","standards","standby","standdown","standee","stander","standing","standings","standoff","standoffish","standoffishly","standoffishness","standpat","standpipe","standpoint","stands","standstill","stanhope","stanhopea","stank","stannic","stannite","stannous","stanza","stapedectomy","stapedes","stapelia","stapes","staph","staphylococcal","staphylococci","staphylococcus","staple","staplegun","stapler","staples","stapling","star","starboard","starch","starches","starchier","starchiest","starchless","starchlike","starchy","stardom","stardust","stare","stared","starer","stares","starets","staretsy","starfish","starfishes","starflower","stargaze","stargazer","stargazes","stargazing","staring","Stark","stark","starkers","starkey","starkly","starkness","starless","starlet","starlight","starlike","starling","starlit","starred","starrier","starriest","starring","starry","stars","starship","start","started","starter","starters","starting","startle","startled","startles","startling","startlingly","starts","startsy","startup","starvation","starve","starved","starveling","starves","starving","starwort","stash","stashed","stashes","stashing","stasis","statant","State","state","statecraft","stated","stateless","statelier","stateliest","stateliness","stately","statement","statements","stater","stateroom","States","states","statesman","statesmanlike","statesmanly","statesmanship","stateswoman","statewide","static","statice","statin","stating","statins","station","stationariness","stationary","stationed","stationer","stationery","stationing","stationmaster","stations","statistic","statistical","statistically","statistician","statistics","stative","stator","statuary","statue","statues","statuesque","statuette","stature","status","statute","statutes","statutorily","statutory","staunch","staunchest","staunching","staunchly","staunchness","staurikosaur","staurikosaurus","stave","staving","stay","stayed","stayer","staying","stays","staysail","std","STE.","Ste.","ste.","stead","steadfast","steadfastly","steadfastness","steadied","steadier","steadies","steadiest","steadily","steadiness","steady","steadying","steak","steakhouse","steaks","steal","stealer","stealing","steals","stealth","stealthier","stealthiest","stealthily","stealthiness","stealthy","steam","steamboat","steamed","steamer","steamfitter","steamier","steamiest","steaminess","steaming","steamroll","steamroller","steamrollering","steams","steamship","steamy","stearic","stearin","steatite","steatocystoma","steatopygia","steatorrhea","steed","steel","steeling","steelmaker","steelman","steelworker","steelworks","steely","steelyard","steenbok","steep","steepen","steepening","steepens","steeper","steepest","steepish","steeple","steeplechase","steeplechaser","steeplejack","steeply","steepness","steer","steerable","steerage","steerageway","steered","steerer","steering","steers","steersman","steganography","stegosaur","stegosaurus","steinbok","stela","stelae","stele","stelis","stellar","stellate","stellified","stellifies","stellify","stem","stemless","stemma","stemmata","stemmatic","stemmatics","stemmatology","stemmed","stemmer","stemming","stems","stench","stencil","stenciled","stenciling","stencilled","stencilling","stenograph","stenographer","stenographic","stenographical","stenography","stenopterygius","stenosed","stenoses","stenosis","stenotic","stent","stentor","stentorian","step","stepbrother","stepchild","stepchildren","stepdaughter","stepfather","stephanion","stephanotis","stephead","stepladder","stepmother","stepparent","steppe","stepped","stepper","stepping","steprelationship","steps","stepsister","stepson","stepwise","steradian","stercobilinogen","stercolith","sterculia","stereo","stereophonic","stereophony","stereoscope","stereoscopic","stereoscopy","stereotype","stereotyped","stereotypes","stereotypic","stereotypical","stereotypically","stereotyping","sterile","sterileness","sterilisation","sterilisations","sterilise","sterilised","steriliser","sterilisers","sterilises","sterilising","sterility","sterilization","sterilizations","sterilize","sterilized","sterilizer","sterilizers","sterilizes","sterilizing","sterling","stern","sterna","sternal","sternly","sternness","sternocleidomastoid","sternpost","sternum","sternutation","sternutative","sternutator","sternutatory","sternwheeler","steroid","steroidal","steroids","sterol","stertor","stertorous","stertorously","stet","stethoscope","stets","stetson","stetted","stetting","Steve","stevedore","stevia","stew","steward","stewardess","stewardship","stewed","stewing","stewpan","stews","sth","sthene","stibnite","stick","stickball","sticker","stickers","stickily","stickiness","sticking","stickle","stickleback","stickler","stickles","stickpin","sticks","sticktight","stickup","stickweed","sticky","stied","stiff","stiffen","stiffener","stiffening","stiffens","stiffer","stiffest","stiffly","stiffness","stifle","stifled","stifler","stifles","stifling","stigma","stigmata","stigmatic","stigmatisation","stigmatise","stigmatised","stigmatises","stigmatising","stigmatism","stigmatist","stigmatization","stigmatize","stigmatized","stigmatizes","stigmatizing","stilbesterol","stilbestrol","stilboestrol","stile","stiletto","stilettoeing","Still","still","stillbirth","stillborn","stillness","stillroom","stills","stilly","stilt","stiltbird","stilted","stiltedly","stimulant","stimulate","stimulated","stimulates","stimulating","stimulation","stimulative","stimuli","stimulus","sting","stingier","stingiest","stingily","stinginess","stinging","stingless","stingray","stings","stingy","stink","stinkbird","stinked","stinker","stinkhorn","stinkiness","stinking","stinkpot","stinks","stinkweed","stinky","stint","stinter","stinting","stipe","stipend","stipendiary","stipes","stipites","stipple","stippled","stippler","stipples","stippling","stipulate","stipulated","stipulates","stipulating","stipulation","stipulatory","stipule","stir","stirk","stirpes","stirps","stirred","stirrer","stirring","stirringly","stirrup","stirs","stitch","stitched","stitcher","stitchery","stitches","stitching","stitchwort","stizolobium","stm","stoa","stoae","stoat","stob","stochastic","stochastically","stochasticity","stock","stockade","stockbroker","stockcar","stocked","stocker","stockfish","stockfishes","stockholder","stockholders","stockholding","stockhorn","stockier","stockiest","stockily","stockinet","stockinette","stocking","stockinged","stockings","stockist","stockjobber","stockman","stockpile","stockpiling","stockpot","stockroom","stocks","stocktake","stocktaker","stocktaking","stocky","stockyard","stodge","stodgier","stodgiest","stodgily","stodginess","stodgy","stoep","stogie","stogy","stoic","stoical","stoically","stoichiometric","stoichiometry","stoke","stoked","stokehold","stokehole","stoker","stokes","stoking","stole","stolen","stolid","stolidity","stolidly","stolidness","stolon","stoloniferous","stoma","stomach","stomachache","stomachal","stomacher","stomachic","stomata","stomatal","stomate","stomatitis","stomatopod","stomatous","stomodaea","stomodaeum","stomodea","stomodeum","stomp","stomped","stomper","stomping","stomps","stone","stonechat","stonecress","stonecrop","stonecutter","stoned","stoneface","stonefish","stonefishes","stonefly","stoneless","stonelike","stonemason","stoner","stoneroot","stones","stonewall","stonewalled","stonewaller","stonewalling","stonewalls","stoneware","stonewash","stonework","stonewort","stonier","stoniest","stonily","stoning","stony","stonyhearted","stood","stooge","stool","stoolie","stoolpigeon","stoop","stooped","stooper","stooping","stoops","stop","stopcock","stopgap","stoplight","stopover","stoppable","stoppage","stopped","stopper","stoppered","stopping","stopple","stopples","stops","stopwatch","storage","storax","store","stored","storefront","storehouse","storekeeper","storeroom","stores","storey","storeyed","storeys","storied","stories","storing","stork","storksbill","storm","stormbound","stormed","stormier","stormiest","stormily","storminess","storming","stormproof","storms","Stormy","stormy","story","storybook","storyline","storyteller","stot","stotinka","stotinki","stotkini","stots","stotted","stotting","stoup","stout","stouthearted","stoutheartedness","stoutly","stoutness","stove","stovepipe","stovepiped","stovepiping","stover","stow","stowage","stowaway","stowed","stowing","stows","stp","strabismus","strabotomy","strad","straddle","straddles","straddling","stradivarius","strafe","strafer","strafes","strafing","straggle","straggler","straggles","straggling","stragglingly","straggly","straight","straightarrow","straightaway","straightedge","straighten","straightener","straightening","straightens","straightforward","straightforwardly","straightforwardness","straightjacket","straightlaced","straightness","straightway","strain","strained","strainer","straining","strains","strait","straiten","straitens","straitjacket","straitlaced","strake","strand","stranded","stranding","strands","strange","strangely","strangeness","stranger","strangers","strangle","strangled","stranglehold","strangler","strangles","strangling","strangulate","strangulates","strangulation","strap","strapado","straphanger","strapless","straplike","strappado","strappadoes","strapped","strapper","strapping","straps","strassburg","strata","stratagem","strategian","strategic","strategical","strategically","strategics","strategies","strategist","strategists","strategy","strati","stratification","stratified","stratifies","stratify","stratifying","stratigraphy","stratocracy","stratocumuli","stratocumulus","stratosphere","stratum","stratus","stravinskian","stravinskyan","straw","strawberries","strawberry","strawboard","strawflower","strawman","strawworm","stray","strayer","straying","strays","streak","streaked","streaker","streakier","streakiest","streaking","streaks","streaky","stream","streambed","streamed","streamer","streamier","streamiest","streaming","streamlet","streamline","streamlined","streamliner","streamlines","streamlining","streams","streamy","street","streetcar","streetlight","streets","streetwalk","streetwalker","streetwalking","streetwise","strength","strengthen","strengthened","strengthener","strengthening","strengthens","strengths","strenuosity","strenuous","strenuously","strenuousness","strep","strepsiceros","streptobacillus","streptocarpus","streptococcal","streptococci","streptococcic","streptococcus","streptodornase","streptokinase","streptolysin","streptomyces","streptomycin","streptothricin","stress","stressed","stresses","stressful","stressing","stressor","stressors","stretch","stretchability","stretchable","stretched","stretcher","stretches","stretchier","stretchiest","stretchiness","stretching","stretchy","stretti","stretto","streusel","strew","strewing","strewn","strews","stria","striae","striate","striates","striation","striatum","stricken","strickle","strict","stricter","strictly","strictness","stricture","stride","stridence","stridency","strident","stridently","strider","strides","striding","stridor","stridulate","stridulation","strife","strike","strikebound","strikebreaker","strikebreaking","strikeout","striker","strikers","strikes","striking","strikingly","strikingness","string","stringency","stringent","stringently","stringer","stringier","stringiest","stringing","strings","stringy","stringybark","strip","stripe","striped","striper","stripes","stripier","stripiest","striping","stripling","stripped","stripper","stripping","strips","striptease","stripteaser","stripy","strive","striven","striver","strives","striving","strobe","strobile","strobili","strobilus","stroboscope","strode","stroke","strokes","stroking","stroll","stroller","strolling","strolls","stroma","stromata","stromateid","strong","strongbox","stronger","strongest","stronghold","strongly","strongman","strongroom","strontianite","strontium","strop","strophanthin","strophanthus","strophe","stropped","stroppier","stroppiest","stropping","stroppy","strops","strove","struck","structural","structuralism","structurally","structure","structured","structures","structuring","strudel","struggle","struggled","struggler","struggles","struggling","strum","struma","strumae","strummed","strumming","strumpet","strums","strung","strut","struthiomimus","struts","strutted","strutting","strychnine","stub","stubbed","stubbiness","stubbing","stubble","stubbled","stubbly","stubborn","stubbornly","stubbornness","stubby","stucco","stuccoes","stuck","stud","studbook","studded","studding","student","students","studentship","studhorse","studied","studies","studio","studios","studious","studiously","studiousness","study","studying","stuff","stuffed","stuffer","stuffier","stuffiest","stuffily","stuffiness","stuffing","stuffs","stuffy","stultification","stultified","stultifies","stultify","stultifying","stum","stumble","stumblebum","stumbled","stumbler","stumbles","stumbling","stummed","stumming","stump","stumper","stumpier","stumpiest","stumping","stumpknocker","stumpy","stun","stung","stunned","stunner","stunning","stunningly","stuns","stunt","stunted","stuntedness","stunting","stunts","stupa","stupe","stupefaction","stupefied","stupefies","stupefy","stupefying","stupendous","stupendously","stupid","stupidest","stupidity","stupidly","stupor","stuporous","sturdier","sturdiest","sturdily","sturdiness","sturdy","sturgeon","sturmabteilung","stutter","stutterer","stuttering","stutters","sty","stye","stygian","style","styled","styleless","stylemark","styler","styles","stylet","styli","styling","stylisation","stylise","stylised","stylises","stylish","stylishly","stylishness","stylist","stylistic","stylistically","stylite","stylization","stylize","stylized","stylizes","stylopes","stylopodia","stylopodium","stylops","stylostixis","stylus","stymie","stymied","stymies","stymy","stymying","stypsis","styptic","styracosaur","styracosaurus","styrax","styrene","styrofoam","suasible","suasion","suave","suavely","suaveness","suavity","sub","sub-markets","sub-minimum","sub-segments","sub-station","sub-underwriters","sub-underwriting","subacid","subacute","subalpine","subaltern","subaquatic","subaqueous","subarctic","subartesian","subatomic","subbase","subbed","subbing","subclass","subclasses","subclavian","subclinical","subcommittee","subcompact","subconscious","subconsciously","subconsciousness","subcontinent","subcontract","subcontractor","subcortex","subcortical","subcortices","subculture","subcutaneous","subcutaneously","subdeacon","subdeliria","subdelirium","subdirectory","subdivide","subdivider","subdivides","subdividing","subdivision","subdominant","subduable","subduction","subdue","subdued","subduedness","subduer","subdues","subduing","subdural","subedit","subeditor","subedits","subfamilies","subfamily","subfigure","subfusc","subgenera","subgenus","subgross","subgroup","subgroups","subhead","subheading","subhuman","subindex","subindices","subjacent","subject","subjected","subjectified","subjectifies","subjectify","subjecting","subjection","subjective","subjectively","subjectiveness","subjectivism","subjectivist","subjectivity","subjects","subjoin","subjoining","subjoins","subjugable","subjugate","subjugated","subjugates","subjugating","subjugation","subjugator","subjunction","subjunctive","subkingdom","sublease","sublet","sublets","subletting","sublieutenant","sublimate","sublimated","sublimates","sublimating","sublimation","sublimaze","sublime","sublimed","sublimely","sublimes","subliminal","sublimity","sublingual","subliterary","sublittoral","sublunar","sublunary","subluxate","subluxation","submarine","submariner","submaxilla","submediant","submenu","submerge","submerged","submergence","submerges","submergible","submerging","submerse","submersed","submerses","submersible","submersion","submission","submissions","submissive","submissively","submissiveness","submit","submits","submitted","submitter","submitting","submucosa","submucosae","subnormal","subnormality","subocean","suboceanic","subocular","suborbital","suborder","subordinate","subordinated","subordinateness","subordinating","subordination","subordinative","suborn","subornation","suborner","suborning","subpart","subphyla","subphylum","subpoena","subpoenaed","subpoenaing","subpopulation","subprogram","subrogate","subrogates","subrogation","subroutine","subscribe","subscribed","subscriber","subscribers","subscribes","subscribing","subscript","subscription","subscriptions","subsection","subsequence","subsequent","subsequently","subsequentness","subserve","subserves","subservience","subservient","subserviently","subservientness","subset","subsets","subshrub","subside","subsided","subsidence","subsides","subsidiaries","subsidiarity","subsidiary","subsidies","subsiding","subsidisation","subsidise","subsidised","subsidiser","subsidisers","subsidises","subsidising","subsidization","subsidize","subsidized","subsidizer","subsidizers","subsidizes","subsidizing","subsidy","subsist","subsistence","subsister","subsisting","subsists","subsoil","subsonic","subspace","subspecies","substance","substances","substandard","substantial","substantiality","substantially","substantialness","substantiate","substantiates","substantiating","substantiation","substantiative","substantival","substantive","substation","substitutability","substitutable","substitute","substituted","substitutes","substituting","substitution","substitutions","substrasta","substrate","substrates","substratum","substring","substructure","subsume","subsumed","subsumes","subsumption","subsurface","subsystem","subtend","subtending","subterfuge","subterminal","subterranean","subterraneous","subthalamus","subtilin","subtilise","subtilize","subtitle","subtitled","subtitles","subtitling","subtle","subtlety","subtly","subtonic","subtopia","subtotal","subtotalled","subtotalling","subtract","subtracted","subtracter","subtracting","subtraction","subtractive","subtracts","subtrahend","subtreasury","subtropic","subtropical","subtropics","subunit","subunits","suburb","suburban","suburbanise","suburbanised","suburbanite","suburbanize","suburbanized","suburbanizing","suburbia","suburbs","subvent","subvention","subversion","subversive","subversiveness","subvert","subverted","subverter","subverting","subverts","subvocalise","subvocaliser","subvocalize","subvocalizer","subway","subwoofer","succade","succedanea","succedaneum","succeed","succeeded","succeeder","succeeding","succeeds","success","successes","successful","successfully","successfulness","succession","successive","successively","successiveness","successor","successors","succinct","succinctly","succinctness","succinic","succinylcholine","succor","succored","succorer","succoring","succors","succory","succos","succotash","succour","succoured","succourer","succouring","succours","succuba","succubi","succubus","succulence","succulency","succulent","succumb","succumbed","succumbing","succumbs","succus","succuss","succussion","Such","such","suchlike","suck","sucked","sucker","suckerfish","suckerfishes","suckers","suckfish","suckfishes","sucking","suckle","suckled","suckles","suckling","sucks","sucralfate","sucrase","sucrose","suction","suctioning","suctorial","sudafed","Sudan","sudan","sudanese","sudaria","sudarium","sudate","sudation","sudatoria","sudatorium","sudatory","sudden","suddenly","suddenness","sudoku","sudor","sudorific","sudra","suds","sudsy","sue","sued","suede","sueing","suer","sues","suet","suety","suffer","sufferable","sufferance","suffered","sufferer","sufferers","suffering","suffers","suffice","sufficed","suffices","sufficiency","sufficient","sufficiently","sufficing","suffix","suffixation","suffocate","suffocates","suffocating","suffocation","suffocative","suffragan","suffrage","suffragette","suffragism","suffragist","suffrutescent","suffrutex","suffuse","suffuses","suffusing","suffusion","suffusive","sufi","sugar","sugarberry","sugarcane","sugarcoat","sugarcoating","sugarcoats","sugared","sugariness","sugarless","sugarloaf","sugarplum","sugars","sugary","suggest","suggested","suggester","suggestibility","suggestible","suggesting","suggestion","suggestions","suggestive","suggestively","suggests","sugi","suicidal","suicide","suicides","suing","suisse","suit","suitability","suitable","suitableness","suitably","suitcase","suite","suited","suites","suiting","suitor","suits","sukiyaki","sukkoth","suksdorfia","sulamyd","sulawesi","sulcate","sulci","sulcus","sulfa","sulfacetamide","sulfadiazine","sulfamethazine","sulfamethoxazole","sulfamezathine","sulfanilamide","sulfapyridine","sulfate","sulfates","sulfide","sulfides","sulfisoxazole","sulfonamide","sulfonate","sulfonylurea","sulfur","sulfurette","sulfuretted","sulfuric","sulfurized","sulfurous","sulindac","sulk","sulkier","sulkiest","sulkily","sulkiness","sulking","sulks","sulky","sullen","sullenly","sullenness","sullied","sullies","sully","sulpha","sulphate","sulphates","sulphide","sulphides","sulphur","sulphuret","sulphurette","sulphuretted","sulphuretting","sulphuric","sulphurous","sultan","sultana","sultanate","sultrier","sultriest","sultrily","sultriness","sultry","sum","sumac","sumach","sumatran","sumerian","summa","summae","summaries","summarily","summarisation","summarise","summarised","summarises","summarising","summarization","summarize","summarized","summarizes","summarizing","summary","summate","summation","summational","summative","summed","summer","summercater","summerhouse","summering","summerise","summerize","summers","summersault","summerset","summertime","summery","summing","summit","summon","summoned","summoning","summons","sumo","sump","sumpsimus","sumpter","sumptuary","sumptuosity","sumptuous","sumptuously","sumptuousness","sums","sun","SUN.","Sun.","sun.","sunbaked","sunbathe","sunbather","sunbathing","sunbeam","sunberry","sunblind","sunblock","sunbonnet","sunburn","sunburned","sunburnt","sunburst","sunchoke","sundae","sunday","sunder","sundering","sunders","sundew","sundial","sundog","sundown","sundowner","sundress","sundried","sundries","sundrops","sundry","sunfish","sunfishes","sunflower","sung","sunglass","sunglasses","sunhat","sunk","sunken","sunlamp","sunless","sunlight","sunlit","sunna","sunned","sunnier","sunniest","sunnily","sunniness","sunning","Sunny","sunny","sunporch","sunray","sunrise","sunroof","sunroom","sunrose","sunscreen","sunset","sunshade","sunshine","sunspot","sunstone","sunstroke","sunstruck","sunsuit","suntan","suntanned","suntrap","sunup","suomi","sup","super","super-absorbent","super-expensive","super-fast","super-majority","super-regulator","super-rich","super-spy","super-user","superable","superabundance","superabundant","superannuate","superannuated","superannuates","superannuation","superb","superbia","superbly","superbug","supercargo","supercargoes","supercharge","supercharged","supercharger","supercharges","supercilious","superciliously","superciliousness","supercilium","superclass","supercomputer","superconductivity","supercritical","superego","supererogation","supererogatory","superfamily","superfatted","superfecta","superfecundation","superfetate","superfetation","superficial","superficiality","superficially","superficies","superfine","superfluity","superfluous","superfluously","superfund","supergiant","supergrass","superhero","superheroes","superhet","superhighway","superhuman","superimpose","superimposed","superimposes","superimposing","superincumbent","superinfect","superinfecting","superinfection","superinfects","superintend","superintendence","superintendent","superintending","superior","superiority","superiors","superjacent","superlative","superlatively","superload","superlunar","superlunary","superman","supermarket","supermarketeer","supermarketer","supermarkets","supermex","supermodel","supermolecule","supermom","supernal","supernatant","supernatants","supernatural","supernaturalism","supernaturalist","supernaturalistic","supernaturally","supernaturalness","supernormal","supernova","supernovae","supernumerary","superorder","superordinate","superordination","superoxide","superpatriotic","superpatriotism","superphylum","superposable","superpose","superposes","superposition","superpower","supersaturated","superscribe","superscribes","superscript","superscription","supersede","superseded","supersedes","superseding","supersedure","supersensitised","supersensitive","supersensitized","supersession","superslasher","supersonic","superstar","superstition","superstitious","superstitiously","superstrata","superstrate","superstratum","superstring","superstructure","supersymmetry","supertanker","supertax","supertitle","supertonic","supertwister","supervene","supervention","supervise","supervised","supervises","supervising","supervision","supervisor","supervisors","supervisory","supinate","supination","supinator","supine","supinely","supped","supper","supperless","suppertime","supping","supplant","supplanter","supplanting","supplants","supple","supplejack","supplement","supplemental","supplementary","supplementation","supplementing","supplements","suppleness","supples","suppliant","supplicant","supplicate","supplication","supplicatory","supplied","supplier","suppliers","supplies","supply","supplying","support","supportable","supported","supporter","supporters","supporting","supportive","supports","supposable","supposal","suppose","supposed","supposedly","supposes","supposing","supposition","suppositional","suppositious","supposititious","suppository","suppress","suppressant","suppressed","suppresser","suppresses","suppressing","suppression","suppressive","suppressor","suppurate","suppuration","suppurative","supra","suprainfection","supranational","supranormal","supraocular","supraorbital","suprarenalectomy","suprasegmental","supremacism","supremacist","supremacy","suprematism","suprematist","supreme","supremely","supremo","sur","sura","surbase","surcease","surcharge","surcoat","surd","Sure","sure","surefooted","surely","sureness","surest","surety","surf","surface","surfaced","surfaces","surfacing","surfactant","surfbird","surfboard","surfboarder","surfboarding","surfboat","surfeit","surfer","surfers","surffish","surficial","surfing","surfperch","surfriding","surfs","surge","surged","surgeon","surgeonfish","surgeonfishes","surgeons","surgeries","surgery","surges","surgical","surgically","surging","suricate","surinam","surlier","surliest","surlily","surliness","surly","surmisable","surmisal","surmise","surmises","surmising","surmontil","surmount","surmountable","surmounted","surmounter","surmounting","surmounts","surmullet","surname","surnames","surpass","surpassed","surpasses","surpassing","surpassingly","surplice","surpliced","surplus","surplusage","surpluses","surprint","surprisal","surprise","surprised","surprisedly","surpriser","surprises","surprising","surprisingly","surprisingness","surreal","surrealism","surrealist","surrealistic","surrebuttal","surrebutter","surrejoinder","surrender","surrendered","surrenderer","surrendering","surrenders","surreptitious","surreptitiously","surrogate","surrogates","surround","surrounded","surrounding","surroundings","surrounds","surtax","surtitle","surtout","surveil","surveillance","surveils","survey","surveyed","surveying","surveyor","surveys","survival","survivalist","survive","survived","survives","surviving","survivor","survivors","susa","susah","susceptibility","susceptible","susceptibleness","sushi","susian","susiana","suslik","suspect","suspected","suspecting","suspects","suspend","suspended","suspender","suspending","suspends","suspense","suspenseful","suspension","suspensions","suspensive","suspensor","suspensory","suspicion","suspicions","suspicious","suspiciously","suspiciousness","suspiration","suspire","sustain","sustainability","sustainable","sustainably","sustained","sustainer","sustaining","sustainment","sustains","sustenance","sustentacular","sustentation","susurrant","susurrate","susurration","susurrous","susurrus","sutler","sutra","suttee","sutura","suture","suturing","suv","suzerain","suzerainty","svedberg","svelte","sverige","svizzera","svoboda","svr","swab","swabbed","swabbing","swad","swaddle","swaddling","swag","swage","swagged","swagger","swaggerer","swaggering","swaggie","swagging","swagman","swain","swale","swallow","swallowed","swallowing","swallows","swallowtail","swallowwort","swami","swamies","swamp","swamped","swamphen","swamping","swampland","swamps","swampy","swan","swanflower","swank","swankier","swankiest","swanky","swanneck","swap","swapped","swapping","swaps","sward","swarm","swarming","swart","swarthier","swarthiest","swarthiness","swarthy","swash","swashbuckler","swashbuckling","swastika","swat","swatch","swath","swathe","swathed","swathing","swatted","swatter","swatting","sway","swayback","swaybacked","swayed","swayer","swaying","sways","swazi","swbs","swbw","swear","swearer","swearing","swears","swearword","sweat","sweatband","sweatbox","sweated","sweater","sweaters","sweatier","sweatiest","sweating","sweatpants","sweats","sweatshirt","sweatshop","sweatsuit","sweaty","Sweden","sweden","swedish","sweep","sweeper","sweeping","sweepingly","sweeps","sweepstakes","sweet","sweetbread","sweetbriar","sweetbrier","sweeten","sweetened","sweetener","sweetening","sweetens","sweeter","sweetest","sweetheart","sweetie","sweetiewife","sweetiewives","sweetish","sweetleaf","sweetly","sweetmeat","sweetness","sweetpea","sweetsop","swell","swelled","swellfish","swellfishes","swellhead","swelling","swells","swelter","sweltering","sweltry","swept","sweptback","sweptwing","swerve","swerving","swift","swiftlet","swiftly","swiftness","swig","swigged","swigging","swill","swilling","swim","swiming","swimmer","swimmeret","swimming","swimmingly","swims","swimsuit","swimwear","swindle","swindled","swindler","swindles","swindling","swine","swineherd","swing","swinge","swingeing","swinger","swinging","swingletree","swings","swingy","swinish","swipe","swipes","swiping","swirl","swirling","swirls","swish","swishing","swishy","swiss","switch","switchblade","switchboard","switched","switcher","switcheroo","switches","switching","switchman","swither","Switzerland","switzerland","swivel","swiveled","swiveling","swivelled","swivelling","swivels","swivet","swiz","swizzle","swob","swollen","swoon","swooning","swoop","swooping","swoops","swoosh","swop","swopped","swopping","sword","swordfish","swordfishes","swordlike","swordplay","swords","swordsman","swordsmanship","swordtail","swore","sworn","swosh","swot","swotted","swotting","swung","sybarite","sybaritic","sycamore","syconia","syconium","sycophancy","sycophant","sycophantic","syllabary","syllabi","syllabic","syllabically","syllabicate","syllabication","syllabicity","syllabification","syllabified","syllabifies","syllabify","syllabise","syllabize","syllable","syllabled","syllables","syllabub","syllabus","syllepses","syllepsis","syllogise","syllogiser","syllogises","syllogism","syllogist","syllogistic","syllogize","syllogizer","syllogizes","sylph","sylphic","sylphlike","sylva","sylvan","sylvanite","sylvine","sylvite","symbiosis","symbiotic","symbiotically","symbol","symbolatry","symbolic","symbolical","symbolically","symbolisation","symbolise","symbolised","symboliser","symbolises","symbolising","symbolism","symbolist","symbolization","symbolize","symbolized","symbolizer","symbolizes","symbolizing","symbolled","symbolling","symbology","symbololatry","symbols","symmetric","symmetrical","symmetrically","symmetricalness","symmetrise","symmetrize","symmetry","sympathectomy","sympathetic","sympathetically","sympathies","sympathise","sympathised","sympathiser","sympathisers","sympathises","sympathising","sympathize","sympathized","sympathizer","sympathizers","sympathizes","sympathizing","sympathomimetic","sympathy","sympatric","sympatry","sympetalous","symphilid","symphonic","symphonious","symphonise","symphonises","symphonist","symphonize","symphonizes","symphony","symphyses","symphysion","symphysis","symploce","sympodia","sympodium","symposia","symposiarch","symposiast","symposium","symptom","symptomatic","symptomatically","symptomless","symptoms","synaeresis","synaesthesia","synaesthetic","synagogue","synapse","synapses","synapsid","synapsis","synaptic","synarthroses","synarthrosis","sync","syncarp","syncarpous","syncategorem","syncategorematic","syncategoreme","synchro","synchrocyclotron","synchroflash","synchromesh","synchronal","synchroneity","synchronic","synchronicity","synchronisation","synchronise","synchronised","synchroniser","synchronises","synchronising","synchronism","synchronization","synchronize","synchronized","synchronizer","synchronizes","synchronizing","synchronoscope","synchronous","synchronously","synchrony","synchroscope","synchrotron","syncing","synclinal","synclinoria","synclinorium","syncopate","syncopated","syncopation","syncopator","syncope","syncretic","syncretical","syncretise","syncretism","syncretistic","syncretistical","syncretize","syncs","syncytia","syncytium","syndactylism","syndactyly","syndesmoses","syndesmosis","syndetic","syndic","syndicalism","syndicalist","syndicate","syndicated","syndicates","syndication","syndicator","syndrome","syndromes","synecdoche","synecdochic","synecdochical","synechia","syneresis","synergetic","synergism","synergist","synergistic","synergistically","synergy","synesthesia","synesthetic","synezesis","synizesis","synod","synoecious","synoicous","synonym","synonymist","synonymity","synonymous","synonymously","synonymousness","synonyms","synonymy","synopses","synopsis","synoptic","synoptical","synoptics","synovia","synovial","synovitis","synovium","synsemantic","synset","syntactic","syntactical","syntactically","syntactician","syntagm","syntagma","syntagmata","syntagmatic","syntax","syntheses","synthesis","synthesise","synthesised","synthesiser","synthesisers","synthesises","synthesising","synthesist","synthesize","synthesized","synthesizer","synthesizers","synthesizes","synthesizing","synthetic","synthetical","synthetically","synthetism","syph","syphilis","syphilitic","syphiloma","syphilomata","syphon","syphoned","syphoning","syphons","Syria","syria","syrian","syringa","syringe","syringes","syrinx","syrup","syrupy","syssarcoses","syssarcosis","system","systematic","systematically","systematics","systematisation","systematise","systematised","systematiser","systematises","systematising","systematism","systematist","systematization","systematize","systematized","systematizer","systematizes","systematizing","systemic","systemise","systemiser","systemises","systemize","systemizer","systemizes","systems","systole","systolic","syzygy","szechuan","S\xE3o","s\xE3o","taal","tab","tabard","tabbed","tabbing","tabbouleh","tabby","tabes","tabi","tablature","table","tableau","tableaux","tablecloth","tablefork","tableland","tablemate","tables","tablespoon","tablespoonful","tablespoons","tablet","tabletop","tablets","tableware","tabling","tabloid","tabloids","taboo","tabooing","tabooli","taboos","tabor","taboret","tabour","tabouret","tabs","tabu","tabular","tabularise","tabularises","tabularize","tabularizes","tabulate","tabulates","tabulating","tabulation","tabulator","tabun","tacamahac","tach","tacheometer","tachistoscope","tachogram","tachograph","tachometer","tachycardia","tachygraphy","tachylite","tachymeter","tacit","tacitly","taciturn","taciturnity","taciturnly","tack","tacked","tacker","tackier","tackiest","tackiness","tacking","tackle","tackled","tackler","tackles","tackling","tacks","tacky","taco","taconite","tacos","tact","tactful","tactfully","tactfulness","tactic","tactical","tactically","tactician","tactics","tactile","tactility","tactless","tactlessly","tactlessness","tactual","tactually","tad","tadalafil","tadjik","tadpole","tadzhik","tadzhikistan","taekwondo","tael","taenia","taeniae","taffeta","taffrail","taffy","tag","tagalong","tagamet","tagasaste","tagged","tagger","tagging","tagliatelle","tags","taguan","tahini","tahitian","tai","taichi","taichichuan","tail","tailback","tailboard","tailcoat","tailed","tailfin","tailflower","tailgate","tailgater","tailgating","tailing","tailless","taillight","taillike","tailor","tailorbird","tailored","tailoring","tailors","tailpiece","tailpipe","tailplane","tailrace","tails","tailspin","tailstock","tailwind","tailwort","taint","tainted","tainting","taints","taipan","taipeh","taira","Taiwan","taiwan","taiwanese","Tajikistan","tajikistan","tajikistani","taka","takahe","take","takeaway","takedown","taken","takeoff","takeout","takeover","taker","takers","takes","takin","taking","tala","talapoin","talaria","talc","talcked","talcking","talcs","talcum","tale","taleban","talebearer","talebearing","talent","talented","talentless","talentlessness","talents","tales","taleteller","tali","talien","taliped","talipes","talipot","talisman","talismanic","talk","talkative","talkatively","talkativeness","talked","talker","talkie","talkier","talkiest","talkily","talking","talks","talky","tall","tallaisim","tallboy","taller","tallest","tallgrass","tallied","tallies","tallin","tallish","tallith","tallithes","tallitoth","tallness","tallow","tally","tallying","tallyman","talon","taloned","talus","talwin","tam","tamable","tamal","tamandu","tamandua","tamanoir","tamarack","tamarao","tamarau","tamarillo","tamarin","tamarind","tamarindo","tamarisk","tambac","tambala","tambocor","tambour","tambourine","tamburlaine","tame","tameable","tamed","tamely","tameness","tamer","tames","tamil","taming","tammany","tammerfors","tammied","tammy","tamoxifen","tamp","tamper","tampering","tampers","tamping","tampion","tampon","tamponade","tamponage","tamps","tan","tanach","tanager","tanbark","tandearil","tandem","tandoor","tanekaha","tangelo","tangency","tangent","tangential","tangentially","tangerine","tangibility","tangible","tangibleness","tangibly","tangier","tangiest","tanginess","tangle","tanglebush","tangled","tangles","tangling","tango","tangoes","tangor","tangos","tangram","tangy","tank","tanka","tankage","tankard","tanked","tanker","tankers","tankful","tanking","tanks","tanned","tanner","tannery","tannest","tannia","tannic","tannin","tanning","tannish","tannoy","tans","tansy","tantalise","tantalised","tantaliser","tantalises","tantalising","tantalisingly","tantalite","tantalization","tantalize","tantalized","tantalizer","tantalizes","tantalizing","tantalizingly","tantalum","tantamount","tantric","tantrik","tantrum","Tanzania","tanzania","tanzanian","tanzim","taoiseach","taoist","tap","tapa","tapdance","tapdancing","tape","taped","tapeline","tapenade","taper","tapered","tapering","tapers","tapes","tapestried","tapestries","tapestry","tapeta","tapetum","tapeworm","taphephobia","taphouse","taping","tapioca","tapir","tapis","tapotement","tappa","tapped","tapper","tappet","tapping","taproom","taproot","taps","tapster","tar","taradiddle","taraktagenos","taraktogenos","tarantella","tarantelle","tarantism","tarantula","tarantulae","tarboosh","tard","tardier","tardiest","tardigrade","tardily","tardiness","tardive","tardy","tare","target","targeted","targeting","targets","tarheel","tariff","tariffs","tarmac","tarmacadam","tarn","tarnish","tarnished","tarnishes","tarnishing","taro","tarot","tarp","tarpan","tarpaulin","tarpon","tarquinius","tarradiddle","tarragon","tarred","tarriance","tarried","tarries","tarring","tarry","tars","tarsal","tarsi","tarsier","tarsitis","tarsometatarsi","tarsometatarsus","tarsus","tart","tartan","tartar","tartarean","tartaric","tartarus","tartlet","tartly","tartness","tartrate","tartufe","tarweed","tarwood","tashmitum","task","taskent","tasking","taskmaster","taskmistress","tasks","tasmanian","tasse","tassel","tasseled","tasselled","tasselling","tasset","taste","tastebud","tasteful","tastefully","tastefulness","tasteless","tastelessly","tastelessness","taster","tasters","tastes","tastier","tastiest","tastily","tastiness","tasting","tasty","tat","tatary","tater","tatou","tatouay","tats","tatted","tatter","tatterdemalion","tattered","tattier","tattiest","tattily","tatting","tattle","tattler","tattles","tattletale","tattling","tattoo","tattooing","tattoos","tatty","tatu","tau","taught","taunt","taunted","taunting","tauntingly","taunts","tauon","taupe","taurine","tauromachy","taut","tauten","tautens","tautly","tautness","tautog","tautologic","tautological","tautology","tavern","taw","tawdrier","tawdriest","tawdrily","tawdriness","tawdry","tawniness","tawny","tawse","tax","taxa","taxability","taxable","taxation","taxed","taxer","taxes","taxi","taxicab","taxidermist","taxidermy","taxidriver","taxies","taxiing","taximan","taximeter","taxing","taxis","taxistand","taxiway","taxman","taxon","taxonomer","taxonomic","taxonomical","taxonomically","taxonomist","taxonomy","taxophytina","taxpayer","taxpayers","taxpaying","taxying","tayra","tazicef","tb","tbit","TBSP.","Tbsp.","tbsp.","tce","tchad","tchotchke","tchotchkeleh","tcp","tdt","te","tea","teaberry","teacake","teacart","teach","teachable","teacher","teachers","teachership","teaches","teaching","teachings","teacup","teacupful","teahouse","teak","teakettle","teakwood","teal","team","teamed","teaming","teammate","teammates","teams","teamster","teamwork","teapot","tear","tearaway","teardrop","tearful","tearfully","tearfulness","teargas","teargases","tearing","tearjerker","tearless","tearoom","tears","teary","tease","teased","teasel","teaselled","teaselling","teaser","teases","teashop","teasing","teasingly","teasle","teaspoon","teaspoonful","teaspoons","teat","teatime","teazel","tebibit","tebibyte","tec","tech","techie","techier","techiest","technetium","technical","technicality","technically","technician","technicians","technicolor","technicolour","technique","techniques","techno","technobabble","technocracy","technocrat","technological","technologically","technologies","technologist","technology","technophile","technophilia","technophilic","technophobe","technophobia","technophobic","techy","tectonic","tectonics","tectrices","tectrix","tecumtha","ted","tedded","tedding","teddy","tedious","tediously","tediousness","tedium","teds","tee","teeing","teem","teemed","teeming","teemingness","teems","teen","teenage","teenaged","teenager","teenagers","teenier","teeniest","teens","teensy","teentsy","teeny","teeoff","teepee","tees","teeter","teeterboard","teetering","teeters","teetertotter","teeth","teethe","teethes","teething","teetotal","teetotaler","teetotaling","teetotalism","teetotalist","teetotaller","teetotum","teff","tefillin","teg","tegmen","tegmina","tegu","tegular","tegument","tehran","teiid","teju","tekki","tektite","tela","telae","telamon","telamones","telangiectases","telangiectasia","telco","telecast","telecaster","telecasting","telecom","telecommerce","telecommunicate","telecommunication","telecommunications","telecommuting","teleconference","teleconferencing","telefax","telefaxes","telefilm","telegnosis","telegnostic","telegram","telegraph","telegraphed","telegrapher","telegraphese","telegraphic","telegraphically","telegraphing","telegraphist","telegraphy","telekinesis","telemark","telemarketing","telemeter","telemetered","telemetry","telencephalon","teleological","teleologist","teleology","teleost","teleostan","telepathic","telepathise","telepathises","telepathist","telepathize","telepathizes","telepathy","telephone","telephoned","telephoner","telephones","telephonic","telephoning","telephonist","telephony","telephoto","telephotograph","telephotography","teleport","teleportation","teleports","teleprinter","teleprocessing","telerobotics","telescope","telescoped","telescopic","telescopically","telescoping","telescopy","teleselling","telethermometer","teletypewriter","televangelism","televangelist","televise","televised","televises","television","televisions","teleworking","telex","telexing","telfer","telferage","telia","telint","teliospore","telium","tell","teller","telling","tellingly","tells","telltale","tellurian","telluric","telluride","tellurium","telly","telocentric","telomerase","telomere","telophase","telpher","telpherage","telsontail","temazepam","temblor","temerarious","temerity","temp","temper","tempera","temperament","temperamental","temperamentally","temperance","temperate","temperately","temperateness","temperature","temperatures","tempered","tempering","tempers","tempest","tempestuous","tempestuousness","tempi","templar","template","templates","temple","temples","templet","tempo","temporal","temporalis","temporality","temporally","temporalty","temporarily","temporariness","temporary","temporise","temporised","temporiser","temporises","temporising","temporize","temporized","temporizer","temporizes","temporizing","tempra","tempt","temptable","temptation","tempted","tempter","tempting","temptingly","temptingness","temptress","tempts","tempura","temujin","ten","tenability","tenable","tenableness","tenacious","tenaciously","tenaciousness","tenacity","tenacula","tenaculum","tenancy","tenant","tenanted","tenantry","tenants","tench","tend","tended","tendencies","tendencious","tendency","tendentious","tendentiously","tendentiousness","tender","tendered","tenderfeet","tenderfoot","tendergreen","tenderhearted","tenderheartedness","tendering","tenderisation","tenderise","tenderised","tenderiser","tenderises","tenderising","tenderization","tenderize","tenderized","tenderizer","tenderizes","tenderizing","tenderloin","tenderly","tenderness","tending","tendinitis","tendinous","tendon","tendonitis","tendosynovitis","tendrac","tendril","tends","tenebrific","tenebrionid","tenebrious","tenebrous","tenement","tenesmus","tenet","tenfold","tenge","tenia","teniae","TENN.","Tenn.","tenn.","tenner","tennessee","tennis","tenno","tenon","tenonitis","tenor","tenorist","tenormin","tenoroon","tenosynovitis","tenpence","tenpin","tenpounder","tenrec","tens","tense","tensed","tensely","tenseness","tensile","tensimeter","tensing","tensiometer","tension","tensional","tensionless","tensions","tensity","tensor","tent","tentacle","tentacled","tentacular","tentative","tentatively","tenter","tenterhook","tenth","tenthly","tenting","tentmaker","tentorium","tents","tenues","tenuis","tenuity","tenuous","tenuously","tenure","tenured","tenuring","tepal","tepee","tepefied","tepefies","tepefy","tepid","tepidity","tepidly","tepidness","tequila","terabit","terabyte","teraflop","terahertz","teraph","teraphim","teratogen","teratogenesis","teratogenic","teratology","teratoma","terazosin","terbinafine","terbium","terce","tercel","tercelet","tercentenary","tercentennial","tercet","terebinth","teredines","teredinid","teredo","terefah","teres","terete","terga","tergiversate","tergiversation","tergiversator","tergum","teriyaki","term","termagant","termed","termer","terminable","terminal","terminally","terminals","terminate","terminated","terminates","terminating","termination","terminative","terminator","terming","termini","terminological","terminology","terminus","termite","terms","tern","ternary","ternate","ternion","terpene","terpsichorean","terrace","terraces","terracing","terrain","terramycin","terrapin","terraria","terrarium","terrasse","terrene","terreplein","terrestrial","terrestrially","terrible","terribleness","terribly","terrier","terrietia","terrific","terrifically","terrified","terrifies","terrify","terrifying","terrine","territorial","territorialisation","territorialise","territoriality","territorialization","territorialize","territorially","territories","territory","terror","terrorisation","terrorise","terrorised","terrorises","terrorising","terrorism","terrorist","terrorists","terrorization","terrorize","terrorized","terrorizes","terrorizing","terrycloth","terse","tersely","terseness","tertian","tertiary","tertigravida","terylene","terzetti","terzetto","tessella","tessellate","tessellated","tessellates","tessellation","tessera","tesseract","tesserae","tessin","test","testa","testacean","testaceous","testae","testament","testamentary","testate","testator","testatrix","testcross","tested","testee","tester","testes","testicle","testicles","testicular","testier","testiere","testiest","testified","testifier","testifies","testify","testifying","testily","testimonial","testimony","testiness","testing","testis","testosterone","tests","testudinata","testudines","testudo","testy","tetanic","tetanilla","tetanus","tetany","tetartanopia","tetchier","tetchiest","tetchily","tetchiness","tetchy","teth","tether","tetherball","tethered","tethering","tethers","tethyidae","tetra","tetracaine","tetrachlorethylene","tetrachloride","tetrachloroethylene","tetrachloromethane","tetracycline","tetrad","tetrafluoroethylene","tetragon","tetragonal","tetragoniaceae","tetragram","tetrahalide","tetrahedra","tetrahedron","tetrahydrocannabinol","tetrahymena","tetraiodothyronine","tetralogy","tetramerous","tetrameter","tetramethyldiarsine","tetrametric","tetranychid","tetrapod","tetrasaccharide","tetraskele","tetraskelia","tetraskelion","tetrasporangium","tetraspore","tetravalent","tetri","tetrode","tetrodotoxin","tetrose","tetroxide","tetryl","tetterwort","tettigoniid","teutonic","tevere","tevet","TEX.","Tex.","tex.","texan","texas","text","textbook","textbooks","textile","textiles","texts","textual","texture","textured","th","thaddaeus","thai","Thailand","thailand","thalamencephala","thalamencephalon","thalami","thalamocortical","thalamus","thalassaemia","thalassemia","thalassic","thalidomide","thalidone","thalli","thallium","thalloid","thallophyte","thallophytic","thallus","thalmencephalon","thalweg","thammuz","than","thanatology","thanatophobia","thanatopsis","thane","thaneship","thank","thanked","thankful","thankfully","thankfulness","thanking","thankless","Thanks","thanks","THAT","That","that","THAT'D","That'd","that'd","THAT'LL","That'll","that'll","THAT'RE","That're","that're","THAT'S","That's","that's","thatch","thatcher","thatching","THATD","Thatd","thatd","THATLL","Thatll","thatll","THATRE","Thatre","thatre","THATS","Thats","thats","THAT\u2019D","That\u2019d","that\u2019d","THAT\u2019LL","That\u2019ll","that\u2019ll","THAT\u2019RE","That\u2019re","that\u2019re","THAT\u2019S","That\u2019s","that\u2019s","thaumatolatry","thaumaturge","thaumaturgist","thaumaturgy","thaw","thawed","thawing","thaws","thb","thc","thd","THE","The","the","theanthropism","theater","theatergoer","theatergoers","theaters","theatre","theatregoer","theatregoers","theatres","theatrical","theatricality","theatrically","theban","thebe","theca","thecae","thecodont","theelin","theft","theia","Their","their","theirs","theism","theist","theistic","theistical","thelarche","them","thematic","thematically","theme","themed","themes","themself","themselves","Then","then","thenal","thenar","thence","thenceforth","theobid","theocracy","theocratic","theodicy","theodolite","theogony","theologian","theological","theologically","theologise","theologiser","theologises","theologist","theologize","theologizer","theologizes","theology","theophany","theophylline","theorem","theoretic","theoretical","theoretically","theoretician","theories","theorisation","theorise","theorised","theoriser","theorises","theorising","theorist","theorists","theorization","theorize","theorized","theorizer","theorizes","theorizing","theory","theosophical","theosophism","theosophist","theosophy","theoterrorism","therapeutic","therapeutical","therapeutically","therapies","therapist","therapists","therapsid","therapy","THERE","There","there","THERE'D","There'd","there'd","THERE'LL","There'll","there'll","THERE'RE","There're","there're","THERE'S","There's","there's","thereabout","thereabouts","thereafter","THEREARE","Thereare","thereare","thereby","THERED","Thered","thered","therefor","Therefore","therefore","therefrom","therein","thereinafter","THERELL","Therell","therell","theremin","thereness","thereof","thereon","THERES","Theres","theres","theresa","thereto","theretofore","therewith","therewithal","THERE\u2019D","There\u2019d","there\u2019d","THERE\u2019LL","There\u2019ll","there\u2019ll","THERE\u2019RE","There\u2019re","there\u2019re","THERE\u2019S","There\u2019s","there\u2019s","theridiid","therm","thermal","thermalgesia","thermally","thermel","thermic","thermion","thermionic","thermionics","thermistor","thermoacidophile","thermocautery","thermochemistry","thermocoagulation","thermocouple","thermodynamic","thermodynamical","thermodynamically","thermodynamics","thermoelectric","thermoelectrical","thermoelectricity","thermogram","thermograph","thermography","thermogravimeter","thermogravimetric","thermogravimetry","thermohydrometer","thermohydrometric","thermojunction","thermolabile","thermometer","thermometric","thermometrograph","thermometry","thermonuclear","thermopile","thermoplastic","thermoreceptor","thermoregulator","thermos","thermoset","thermosetting","thermosphere","thermostat","thermostatic","thermostatically","thermostatics","thermotherapy","thermotropism","theropod","therses","thesauri","thesaurus","THESE","These","these","THESE'RE","These're","these're","THESERE","Thesere","thesere","theses","THESE\u2019RE","These\u2019re","these\u2019re","thesis","thespian","thessalonica","thessaly","theta","theurgy","THEY","They","they","THEY'D","They'd","they'd","THEY'LL","They'll","they'll","THEY'LL'VE","They'll've","they'll've","THEY'RE","They're","they're","THEY'VE","They've","they've","THEYLL","Theyll","theyll","THEYRE","Theyre","theyre","THEYVE","Theyve","theyve","THEY\u2019D","They\u2019d","they\u2019d","THEY\u2019LL","They\u2019ll","they\u2019ll","THEY\u2019LL\u2019VE","They\u2019ll\u2019ve","they\u2019ll\u2019ve","THEY\u2019RE","They\u2019re","they\u2019re","THEY\u2019VE","They\u2019ve","they\u2019ve","thiabendazole","thiamin","thiamine","thiazide","thiazine","thibet","thick","thicken","thickened","thickener","thickening","thickens","thicker","thicket","thickhead","thickheaded","thickleaf","thickleaves","thickly","thickness","thickset","thickspread","thief","thieve","thievery","thieves","thieving","thievish","thievishly","thievishness","thigh","thighbone","thighs","thill","thimble","thimbleberry","thimbleful","thimblerig","thimbleweed","thimerosal","thin","thing","thingamabob","thingamajig","thingmabob","thingmajig","things","thingumabob","thingumajig","thingummy","think","thinkable","thinker","thinkers","thinking","thinks","thinly","thinned","thinner","thinness","thinnest","thinning","thins","thiobacillus","thiobacteria","thiocyanate","thiodiphenylamine","thioguanine","thiopental","thioridazine","thiotepa","thiothixene","thiouracil","third","thirdhand","thirdly","thirds","thirst","thirster","thirstier","thirstiest","thirstily","thirstiness","thirsting","thirsty","thirteen","thirteenth","thirties","thirtieth","thirty","thiry","THIS","This","this","THIS'S","This's","this's","THISS","Thiss","thiss","thistle","thistledown","thistlelike","THIS\u2019S","This\u2019s","this\u2019s","thither","thm","thnx","tho","thole","tholepin","tholoi","tholos","thong","thoracentesis","thoraces","thoracic","thoracocentesis","thoracotomy","thorax","thorazine","thoreauvian","thoriate","thoriated","thorite","thorium","thorn","thornbill","thornier","thorniest","thorniness","thornless","thorny","thorough","thoroughbred","thoroughfare","thoroughgoing","thoroughly","thoroughness","thoroughwort","thortveitite","THOSE","Those","those","THOSE'RE","Those're","those're","THOSERE","Thosere","thosere","THOSE\u2019RE","Those\u2019re","those\u2019re","thou","Though","though","thought","thoughtful","thoughtfully","thoughtfulness","thoughtless","thoughtlessly","thoughtlessness","thoughts","thousand","thousands","thousandth","thracian","thraldom","thrall","thralldom","thrash","thrashed","thrasher","thrashes","thrashing","thread","threadbare","threaded","threader","threadfin","threadfish","threadier","threadiest","threading","threadlike","threads","threadworm","thready","threat","threaten","threatened","threatening","threateningly","threatens","threats","three","threefold","threepence","threepenny","threescore","threesome","threnody","threonine","thresh","thresher","threshes","threshing","threshold","thresholds","threw","thrice","thrift","thriftier","thriftiest","thriftily","thriftiness","thriftless","thriftlessly","thriftlessness","thriftshop","thrifty","thrill","thrilled","thriller","thrillful","thrilling","thrills","thrip","thripid","thrive","thrived","thrives","thriving","throat","throated","throatier","throatiest","throats","throatwort","throaty","throb","throbbed","throbbing","throbs","throe","throes","thrombasthenia","thrombectomy","thrombi","thrombin","thrombocyte","thrombocytopenia","thrombocytosis","thromboembolism","thrombokinase","thrombolysis","thrombolytic","thrombopenia","thrombophlebitis","thromboplastin","thrombose","thrombosed","thromboses","thrombosis","thrombus","throne","throng","thronged","thronging","throstle","throttle","throttlehold","throttler","throttling","through","throughout","throughput","throughway","throw","throwaway","throwback","thrower","throwing","thrown","throws","throwster","thru","thrum","thrummed","thrumming","thrush","thrust","thruster","thrusting","thrusts","thruway","thu","THU.","Thu.","thu.","thud","thudded","thudding","thuds","thug","thuggee","thuggery","thugs","thulium","thumb","thumbed","thumbhole","thumbing","thumbnail","thumbnut","thumbprint","thumbs","thumbscrew","thumbstall","thumbtack","thump","thumping","thumps","thunder","thunderbird","thunderbolt","thunderclap","thundercloud","thundered","thunderer","thunderhead","thundering","thunderous","thunders","thundershower","thunderstorm","thunderstorms","thunderstruck","thundery","thunk","thurible","thurifer","thurifies","thurify","thursday","Thus","thus","thusly","thwack","thwacking","thwacks","thwart","thwarted","thwarter","thwarting","thwarts","thwartwise","thx","thylacine","thyme","thymelaeales","thymi","thymidine","thymine","thymol","thymosin","thymus","thyreophoran","thyrocalcitonin","thyroglobulin","thyroid","thyroidal","thyroidectomy","thyroiditis","thyromegaly","thyronine","thyroprotein","thyrotoxic","thyrotoxicosis","thyrotrophin","thyrotropin","thyroxin","thyroxine","thyrse","thyrsi","thyrsopteris","thyrsus","thysanopter","thysanopteron","thysanuron","thz","tia","tiara","tib","tibetan","tibia","tibiae","tibial","tibialis","tibit","tibur","tic","tical","tichodrome","tick","ticked","ticker","ticket","ticketed","ticketing","tickets","ticking","tickle","tickler","tickles","tickling","ticklish","ticks","tickseed","ticktack","ticktacktoe","ticktacktoo","ticktock","tickweed","ticonderoga","tictac","tidal","tidbit","tidbits","tiddler","tiddly","tiddlywinks","tide","tideland","tidemark","tides","tideway","tidied","tidier","tidies","tidiest","tidily","tidiness","tidings","tidy","tidying","tidytips","tie","tieback","tiebreaker","tied","tieing","tientsin","tiepin","tier","tierce","tiercel","tiered","tiers","ties","tiff","tiffin","tiflis","tiger","tigerish","tigers","tight","tighten","tightened","tightening","tightens","tighter","tightfisted","tightfistedness","tightfitting","tightlipped","tightly","tightness","tightrope","tights","tightwad","tiglon","tigon","tigress","tike","tilde","tile","tiled","tilefish","tilefishes","tiler","tiles","tiling","Till","till","tillable","tillage","tilled","tiller","tilling","tilt","tilted","tilter","tilth","tilting","tilts","tiltyard","Tim","timbale","timber","timbered","timberland","timberline","timberman","timbre","timbrel","time","timecard","timed","timekeeper","timekeeping","timeless","timelessness","timelier","timeliest","timeline","timeliness","timely","timepiece","timer","times","timeserver","timeserving","timetable","timework","timeworn","timid","timidity","timidly","timidness","timing","timolol","Timor","timor","timorese","timorous","timorously","timorousness","timpani","timpanist","timucu","timur","tin","tinamou","tinct","tincture","tindal","tindale","tinder","tinderbox","tine","tined","tineid","tineoid","tinfoil","ting","tinge","tinged","tingle","tingles","tingling","tinier","tiniest","tininess","tink","tinker","tinkered","tinkerer","tinkering","tinkers","tinkle","tinkles","tinkling","tinkly","tinned","tinner","tinnier","tinniest","tinning","tinnitus","tinny","tinplate","tinpot","tinsel","tinseled","tinselled","tinselling","tinselly","tinsmith","tinsnips","tint","tintack","tinter","tinting","tintinnabula","tintinnabulate","tintinnabulation","tintinnabulum","tintometer","tinware","tiny","tip","tipi","tipped","tipper","tippet","tipping","tipple","tippler","tipples","tippy","tippytoe","tips","tipsier","tipsiest","tipsiness","tipstaff","tipster","tipsy","tiptoe","tiptoed","tiptoeing","tiptop","tipu","tirade","tiramisu","tire","tired","tiredly","tiredness","tireless","tirelessly","tirelessness","tires","tiresome","tiresomely","tiresomeness","tiring","tiro","tirol","tirolean","tisane","tissue","tissues","tit","titanic","titanium","titanosaur","titanosaurian","titbit","titer","titers","titfer","tithe","tither","tithing","tithonia","titi","titillate","titillated","titillates","titillating","titillation","titivate","titivates","titivation","titlark","title","titled","titles","titling","titmice","titmouse","titrate","titrates","titrating","titration","titrator","titre","tits","titter","titterer","tittering","titters","tittivate","tittivates","tittivation","tittle","tittup","tittupped","tittupping","titty","titular","titulary","tiyin","tizzy","tko","tlc","tm","tmv","tnf","tnite","tnt","tnx","To","to","toad","toadfish","toadfishes","toadflax","toadied","toadies","toadshade","toadstool","toady","toadying","toadyish","toast","toasted","toaster","toasting","toastmaster","toastrack","tobacco","tobaccoes","tobacconist","Tobago","tobago","tobagonian","toboggan","tobogganing","tobogganist","tobramycin","toby","tocainide","toccata","tocktact","tocology","tocopherol","tocsin","tod","Today","today","toddle","toddler","toddlers","toddles","toddling","toddy","todo","todos","tody","toe","toea","toecap","toed","toehold","toeing","toeless","toenail","toes","toetoe","toff","toffee","toffy","tofranil","tofu","tog","toga","together","togetherness","togged","togging","toggle","toggles","Togo","togo","togolese","togs","toil","toiled","toiler","toilet","toiletry","toilets","toilette","toiling","toilsome","toilsomeness","toitoi","tokamak","tokay","toke","token","tokenish","tokens","tokio","tolazamide","tolazoline","tolbooth","tolbukhin","tolbutamide","told","tole","tolectin","tolerable","tolerably","tolerance","tolerant","tolerantly","tolerate","tolerates","tolerating","toleration","tolinase","toll","tollbar","tollbooth","toller","tollgate","tollgatherer","tollhouse","tolling","tollkeeper","tollman","tollon","tolls","tolu","toluene","tom","tomahawk","tomalley","tomatillo","tomato","tomatoes","tomb","tombac","tombak","tombola","tomboy","tomboyish","tomboyishness","tombs","tombstone","tomcat","Tome","tome","tomenta","tomentose","tomentous","tomentum","tomfool","tomfoolery","tommyrot","tomograph","tomography","tomorrow","tompion","tomtate","tomtit","Tom\xE9","tom\xE9","ton","tonal","tonality","tondi","tondo","tone","toned","toneless","tonelessly","toner","tones","tongan","tongs","tongue","tongued","tonguefish","tongueflower","tongueless","tonguelike","tongues","tonguing","tonic","tonicity","tonier","toniest","tonight","toning","tonnage","tonne","tonneau","tonneaux","tonnes","tonocard","tonometer","tonometry","tons","tonsil","tonsilla","tonsillectomy","tonsillitis","tonsorial","tonsure","tonsured","tontine","tonus","tony","too","took","tool","toolbox","toolhouse","toolmaker","tools","toolshed","toon","tooshie","toot","tooted","tooth","toothache","toothbrush","toothed","toothier","toothiest","toothless","toothlike","toothpaste","toothpick","toothpowder","toothsome","toothsomeness","toothwort","toothy","tooting","tootle","tootling","top","topaz","topcoat","topdress","tope","topee","toper","topgallant","tophi","tophus","topi","topiary","topic","topical","topicality","topicalization","topicalize","topicalizes","topically","topics","topknot","topknotted","topless","topmast","topminnow","topmost","topnotch","topognosia","topognosis","topographic","topographical","topographically","topography","topoi","topolatry","topologic","topological","topologically","topologies","topology","toponomy","toponym","toponymy","topos","topped","topper","topping","toppingly","topple","toppled","topples","toppling","tops","topsail","topside","topsoil","topspin","topv","toque","tor","toradol","torch","torchbearer","torched","torching","torchlight","tore","toreador","torero","tori","torino","torment","tormented","tormenter","tormenting","tormentor","torments","torn","tornado","tornadoes","tornillo","torodal","toroid","toroidal","torpedo","torpedoed","torpedoes","torpedoing","torpid","torpidity","torpidly","torpidness","torpor","torque","torr","torrefied","torrefies","torrefy","torrent","torrential","torrid","torridity","torsi","torsion","torsk","torso","tort","torte","tortellini","tortfeasor","torticollis","tortilla","tortillas","tortious","tortoise","tortoiseshell","tortricid","tortrix","tortuosity","tortuous","tortuously","tortuousness","torture","tortured","torturer","tortures","torturesome","torturing","torturous","torturously","torulose","torus","toscana","tosh","toss","tossed","tosser","tosses","tossing","tossup","tostada","tot","total","totaled","totaling","totalisator","totalise","totaliser","totalises","totalism","totalistic","totalitarian","totalitarianism","totality","totalizator","totalize","totalizer","totalizes","totalled","totalling","totally","totals","totara","tote","toted","totem","totemic","totemism","totemist","toter","TOTHER","Tother","tother","toting","totipotence","totipotency","totipotent","totted","totter","totterer","tottering","totters","tottery","totting","toucan","toucanet","touch","touchable","touchback","touchdown","touchdowns","touched","toucher","touches","touchier","touchiest","touchily","touchiness","touching","touchingly","touchline","touchscreen","touchstone","touchwood","touchy","tough","toughen","toughened","toughening","toughens","tougher","toughest","toughie","toughly","toughness","toupe","toupee","toupeed","tour","touraco","touracos","toured","tourer","touring","tourism","tourist","touristed","touristry","tourists","touristy","tourmaline","tournament","tournaments","tournedos","tourney","tourniquet","tours","tourtiere","tousle","tousled","tout","touted","touter","touting","touts","tovarich","tovarisch","tow","towage","toward","towards","towboat","towel","toweled","toweling","towelled","towelling","towels","tower","towering","towers","towhead","towheaded","towhee","towing","towline","town","townee","towner","townie","towns","townsfolk","township","townsman","townspeople","towny","towpath","towrope","tows","toxaemia","toxemia","toxic","toxicant","toxicants","toxicity","toxicognath","toxicologic","toxicological","toxicologist","toxicology","toxin","toxins","toxoid","toxoplasmosis","toy","toying","toyon","toys","toyshop","tpn","trabeate","trabeated","trabecula","trabeculae","trabecular","trabeculate","trablous","trace","traceable","traced","tracer","tracery","traces","trachea","tracheae","tracheal","tracheid","tracheitis","tracheobronchitis","tracheophyte","tracheostomy","tracheotomy","trachodon","trachodont","trachoma","tracing","track","trackable","trackball","tracked","tracker","tracking","tracklayer","trackless","tracks","tract","tractability","tractable","tractableness","tractile","traction","tractive","tractor","tracts","trad","trade","tradecraft","traded","trademark","trademarked","tradeoff","trader","traders","trades","tradesman","tradespeople","Trading","trading","tradition","traditional","traditionalism","traditionalist","traditionalistic","traditionality","traditionally","traditions","traditor","traditores","traduce","traduced","traducement","traducer","traffic","trafficator","trafficked","trafficker","traffickers","trafficking","tragacanth","tragedian","tragedienne","tragedies","tragedy","tragi","tragic","tragical","tragically","tragicomedy","tragicomic","tragicomical","tragopan","tragus","trail","trailblazer","trailed","trailer","trailers","trailhead","trailing","trails","train","trainband","trainbandsman","trainbearer","trained","trainee","trainees","traineeship","trainer","trainers","training","trainload","trainman","trainmaster","trains","traipse","traipsing","trait","traitor","traitorous","traitorously","traitorousness","traitress","traits","trajectory","tralatitious","tram","tramcar","trameled","trameles","trameling","tramelled","tramelling","tramline","trammed","trammel","tramming","tramontana","tramontane","tramp","tramper","tramping","trample","trampled","trampler","tramples","trampling","trampoline","tramway","trance","trancelike","tranche","trandate","trandolapril","tranquil","tranquilising","tranquility","tranquilize","tranquilized","tranquilizer","tranquilizers","tranquilizes","tranquilizing","tranquillise","tranquillised","tranquilliser","tranquillisers","tranquillises","tranquillising","tranquillity","tranquillize","tranquillized","tranquillizer","tranquillizers","tranquillizes","tranquillizing","tranquilly","transact","transacting","transactinide","transaction","transactions","transactor","transacts","transalpine","transaminase","transaminate","transaminates","transamination","transatlantic","transcend","transcendence","transcendency","transcendent","transcendental","transcendentalism","transcendentalist","transcendentally","transcending","transcends","transcontinental","transcribe","transcribed","transcriber","transcribes","transcribing","transcript","transcriptase","transcription","transcripts","transcultural","transcutaneous","transdermal","transdermic","transduce","transducer","transduces","transducing","transduction","transect","transecting","transects","transept","transeunt","transexual","transfer","transferability","transferable","transferase","transferee","transference","transferer","transferor","transferrable","transferral","transferred","transferrer","transferrin","transferring","transfers","transfigure","transfiguring","transfix","transfixed","transfixing","transform","transformable","transformation","transformations","transformed","transformer","transforming","transforms","transfuse","transfuses","transfusion","transfusions","transgender","transgendered","transgene","transgenes","transgress","transgressed","transgresses","transgressing","transgression","transgressor","tranship","transhipped","transhipping","tranships","transience","transiency","transient","transiently","transistor","transistorise","transistorised","transistorises","transistorize","transistorized","transistorizes","transit","transiting","transition","transitional","transitionally","transitioning","transitions","transitive","transitively","transitiveness","transitivise","transitivises","transitivity","transitivize","transitivizes","transitorily","transitoriness","transitory","transits","translatable","translate","translated","translates","translating","translation","translational","translations","translator","translators","transliterate","transliterates","transliterating","transliteration","translocate","translocates","translocation","translucence","translucency","translucent","translunar","translunary","transmigrante","transmigrate","transmigrates","transmigration","transmissible","transmission","transmissions","transmit","transmits","transmittable","transmittal","transmittance","transmitted","transmitter","transmitting","transmogrification","transmogrified","transmogrifies","transmogrify","transmogrifying","transmontane","transmundane","transmutability","transmutable","transmutation","transmute","transmutes","transmuting","transnational","transoceanic","transom","transonic","transparence","transparency","transparent","transparently","transparentness","transpirate","transpirates","transpiration","transpire","transpires","transpiring","transplacental","transplant","transplantable","transplantation","transplanted","transplanter","transplanting","transplants","transpolar","transponder","transport","transportable","transportation","transported","transporter","transporters","transporting","transports","transposability","transposable","transpose","transposed","transposes","transposing","transposition","transposon","transposons","transsexual","transsexualism","transship","transshipment","transshipped","transshipping","transships","transubstantiate","transubstantiation","transudate","transudation","transude","transuranic","transversal","transversally","transverse","transversely","transvestic","transvestism","transvestite","transvestitism","tranylcypromine","trap","trapan","trapanned","trapanning","trapeze","trapezia","trapezium","trapezius","trapezohedra","trapezohedron","trapezoid","trapezoidal","trapped","trapper","trapping","trappings","traps","trapshooter","trapshooting","trash","trashes","trashier","trashiest","trashiness","trashing","trashy","trauma","traumata","traumatic","traumatise","traumatised","traumatises","traumatising","traumatize","traumatized","traumatizes","traumatizing","traumatology","traumatophobia","travail","travails","trave","travel","travelable","traveled","traveler","travelers","traveling","travelled","traveller","travellers","travelling","travelog","travelogs","travelogue","travelogues","travels","traversable","traversal","traverse","traverser","traverses","traversing","travestied","travesty","travestying","trawl","trawler","trawling","tray","trays","trazodone","treacherous","treacherously","treachery","treacle","treacly","tread","treading","treadle","treadmill","treads","treadwheel","treason","treasonable","treasonably","treasonist","treasonous","treasure","treasured","treasurer","treasurership","treasures","treasuring","treasury","treat","treated","treater","treaties","treating","treatise","treatment","treatments","treats","treaty","treble","trebled","trebling","trebuchet","trebucket","tree","treed","treehopper","treeing","treeless","treelet","treelike","treenail","trees","treetop","tref","trefoil","treillage","trek","trekked","trekker","trekking","trellis","trellising","trematode","tremble","trembler","trembles","trembling","tremendous","tremendously","tremolite","tremolo","tremor","tremors","tremulous","tremulously","trenail","trench","trenchancy","trenchant","trenchantly","trencher","trencherman","trenching","trend","trendier","trendiest","trending","trends","trendsetting","trendy","trental","trepan","trepang","trepanned","trepanning","trephination","trephine","trephritidae","trepid","trepidation","trepidly","treponema","treponemata","trespass","trespasser","trespasses","trespassing","tress","trestle","trestlework","trews","trey","trf","trh","triacetate","triad","triage","trial","trialed","trialing","trialled","trialling","trials","triamcinolone","triangle","triangular","triangularity","triangulate","triangulates","triangulating","triangulation","triassic","triavil","triazine","triazolam","tribade","tribadism","tribadistic","tribal","tribalisation","tribalism","tribalization","tribe","tribes","tribesman","tribologist","tribology","tribromoethanol","tribromomethane","tribulate","tribulates","tribulation","tribunal","tribune","tribuneship","tributary","tribute","tributyrin","trice","tricentenary","tricentennial","triceps","triceratops","trichina","trichinae","trichiniasis","trichinosis","trichion","trichloride","trichlormethiazide","trichloroethane","trichloroethylene","trichloromethane","trichobezoar","trichodesmium","trichomonad","trichomoniasis","trichopteran","trichopteron","trichotillomania","trichotomy","trichroism","trichromacy","trichromatic","trichrome","trichuriasis","trick","tricked","tricker","trickery","trickier","trickiest","trickily","trickiness","tricking","trickle","trickles","trickling","tricks","tricksier","tricksiest","trickster","tricksy","tricky","triclinia","triclinic","triclinium","tricolor","tricolors","tricolour","tricolours","tricorn","tricorne","tricot","tricuspid","tricuspidate","tricycle","tricyclic","trident","tridymite","tried","triennia","triennial","triennium","trier","tries","trifid","trifle","trifler","trifling","trifluoromethane","trifoliata","trifoliate","trifoliated","trifoliolate","triforia","triforium","trifurcate","trifurcation","trig","trigeminal","trigeminus","trigged","trigger","triggered","triggerfish","triggerfishes","triggering","triggerman","triggers","trigging","triglyceride","triglycerides","trigon","trigonal","trigonometric","trigonometrician","trigonometry","trigram","trihedra","trihedron","trihydroxy","triiodomethane","triiodothyronine","trike","trilateral","trilingual","trill","trilled","trilling","trillion","trillions","trillionth","trillium","trilobate","trilobated","trilobed","trilobite","trilogy","trim","trimaran","trimer","trimester","trimipramine","trimly","trimmed","trimmer","trimmest","trimming","trimness","trimotored","trimox","trims","trine","Trinidad","trinidad","trinidadian","trinitroglycerin","trinitrotoluene","trinket","trinketry","trinuclear","trinucleate","trinucleated","trio","triode","triolein","triose","trioxide","trip","tripalmitin","tripartite","tripe","triphammer","triphosphopyridine","tripinnate","tripinnated","tripinnatifid","triple","tripled","triples","triplet","tripletail","triplex","triplicate","triplicates","triplicity","tripling","triploid","tripod","tripoli","tripos","tripped","tripper","tripping","trippingly","trips","triptych","triquetral","trireme","trisaccharide","trisect","trisects","triskaidekaphobia","triskaidekaphobic","triskele","triskelia","triskelion","trismus","trisoctahedra","trisoctahedron","trisomy","tristearin","tristram","trisyllable","tritanopia","tritanopic","trite","tritely","triteness","tritheism","tritheist","tritium","tritoma","triumph","triumphal","triumphant","triumphantly","triumphed","triumphing","triumphs","triumvir","triumvirate","triumviri","triune","trivalent","trivet","trivia","trivial","trivialise","trivialised","trivialises","trivialising","triviality","trivialize","trivialized","trivializes","trivializing","trivially","trivium","trm","trna","troat","trochaic","trochanter","troche","trochee","trochlea","trochleae","trochlear","trochlearis","trog","trogged","trogging","troglodyte","trogon","troika","trojan","troll","troller","trolley","trolleybus","trolling","trollop","trombiculiasis","trombiculid","trombidiid","trombone","trombonist","trompillo","troop","trooper","troopers","troops","troopship","tropaeola","tropaeolum","trope","trophic","trophobiosis","trophoblast","trophoblastic","trophotropic","trophotropism","trophozoite","trophy","tropic","tropical","tropically","tropicbird","tropism","troponomy","troponym","troponymy","tropopause","troposphere","trot","troth","trotline","trots","trotskyist","trotted","trotter","trotting","troubadour","trouble","troubled","troublemaker","troubler","troubles","troubleshoot","troubleshooter","troubleshooting","troubleshoots","troublesome","troublesomeness","troubling","troublous","trough","trounce","trounces","trouncing","troupe","trouper","trouser","trousered","trousering","trousers","trousseau","trousseaux","trout","trove","trowel","trowelled","trowelling","truancy","truant","truce","truck","truckage","trucker","trucking","truckle","truckler","truckling","trucks","truculence","truculency","truculent","truculently","trudge","trudger","trudges","trudging","true","truehearted","truelove","trueness","truer","truest","truffle","truism","truly","trump","trumpery","trumpet","trumpeter","trumpetfish","trumpeting","trumpets","trumpetwood","trumping","trumps","truncate","truncated","truncates","truncating","truncation","truncheon","trundle","trunk","trunkfish","trunkfishes","trunks","trunnel","truss","trussed","trust","trustbuster","trusted","trustee","trustees","trusteeship","truster","trustful","trustfully","trustfulness","trustier","trustiest","trustiness","trusting","trustingly","trustingness","trustor","trusts","trustworthiness","trustworthy","trusty","truth","truthful","truthfully","truthfulness","truths","try","trying","tryma","trymata","tryout","trypsin","trypsinogen","tryptophan","tryptophane","tryst","tsa","tsar","tsarina","tsarist","tsaristic","tsaritsa","tsaritsyn","tsatske","tsetse","tsh","tshatshke","tshiluba","tsine","tsk","tsoris","TSP.","Tsp.","tsp.","tss","tsunami","tsuris","tuatara","tub","tuba","tubae","tubal","tubbier","tubbiest","tubbiness","tubby","tube","tubed","tubeless","tubelike","tuber","tubercle","tubercular","tuberculate","tuberculin","tuberculoid","tuberculosis","tuberculous","tuberose","tuberosity","tuberous","tubes","tubful","tubing","tubocurarine","tubular","tubule","tuck","tuckahoe","tucked","tucker","tucket","tucking","tucks","tudor","tudung","tue","TUE.","Tue.","tue.","tuesday","tufa","tuff","tuffet","tuft","tufted","tug","tugboat","tugged","tugger","tugging","tughrik","tugrik","tuille","tuition","tularaemia","tularemia","tulestoma","tulip","tulipwood","tulle","tully","tulostomataceae","tum","tumble","tumblebug","tumbled","tumbler","tumbles","tumbleweed","tumbling","tumbrel","tumbril","tumefaction","tumefied","tumefies","tumefy","tumesce","tumescence","tumescent","tumid","tumidity","tumidness","tummy","tumor","tumors","tumour","tumours","tumult","tumultuous","tumultuously","tumultuousness","tumulus","tun","tuna","tunaburger","tundra","tune","tuned","tuneful","tunefully","tunefulness","tuneless","tunelessly","tuner","tunes","tung","tungstate","tungsten","tunguska","tunguz","tunic","tunica","tunicata","tunicate","tuning","Tunisia","tunisia","tunisian","tunker","tunnage","tunned","tunnel","tunneled","tunneling","tunnelled","tunnelling","tunnels","tunning","tunny","tup","tupek","tupik","tupped","tuppence","tuppeny","tupping","turaco","turacou","turakoo","turban","turbaned","turbatrix","turbid","turbidity","turbidness","turbinal","turbinate","turbine","turbines","turbofan","turbogenerator","turbojet","turboprop","turbot","turbulence","turbulency","turbulent","turbulently","turcoman","turd","tureen","turf","turfier","turfiest","turfing","turfy","turgid","turgidity","turgidly","turgidness","turgor","turkestan","Turkey","turkey","turkeys","turkic","turkish","turkmen","turkmenia","Turkmenistan","turkmenistan","turkomen","turmeric","turmoil","turn","turnabout","turnaround","turnbuckle","turncoat","turncock","turndown","turned","turner","turnery","turning","turnip","turnkey","turnoff","turnout","turnover","turnpike","turnround","turns","turnspit","turnstile","turnstone","turntable","turnup","turnverein","turp","turpentine","turpitude","turquoise","turreae","turret","turtle","turtledove","turtlehead","turtleneck","turtler","turtles","turtling","turves","tuscan","tush","tushery","tusk","tusked","tusker","tussah","tusseh","tusser","tussle","tussling","tussock","tussore","tussur","tut","tutee","tutelage","tutelar","tutelary","tutor","tutored","tutorial","tutorially","tutoring","tutors","tutorship","tutsan","Tuvalu","tuvalu","tux","tuxedo","tuxedoed","tv","tvs","twaddle","twaddler","twain","twang","twanging","twat","twayblade","tweak","tweaks","twee","tweed","tweedier","tweediest","tweediness","tweedle","tweedles","tweedy","tweet","tweeter","tweeting","tweets","tweeze","tweezer","tweezes","twelfth","twelve","twelvemonth","twenties","twentieth","twenty","twerp","twice","twiddle","twiddler","twiddles","twiddling","twig","twigged","twiggier","twiggiest","twigging","twiggy","twiglike","twilight","twilit","twill","twilled","twin","twinberry","twine","twiner","twines","twinflower","twinge","twining","twinjet","twinkle","twinkler","twinkling","twinkly","twinned","twinning","twins","twirl","twirler","twirling","twirlingly","twirp","twist","twisted","twister","twisting","twists","twistwood","twisty","twit","twitch","twitching","twitted","twitter","twitterer","twittering","twitting","Two","two","twofer","twofold","twopence","twopenny","twoscore","twosome","tycoon","tying","tyiyn","tylenol","tympan","tympana","tympani","tympanic","tympanist","tympanites","tympanitic","tympanitis","tympanoplasty","tympanum","type","typecast","typecasting","typecasts","typed","typeface","types","typescript","typeset","typesets","typesetter","typesetting","typewrite","typewriter","typewrites","typewriting","typhoid","typhoon","typhus","typic","typical","typicality","typically","typification","typified","typifies","typify","typifying","typing","typist","typo","typographer","typographic","typographical","typographically","typography","typology","tyramine","tyran","tyrannic","tyrannical","tyrannically","tyrannicide","tyrannid","tyrannise","tyrannised","tyrannises","tyrannising","tyrannize","tyrannized","tyrannizes","tyrannizing","tyrannosaur","tyrannosaurus","tyrannous","tyranny","tyrans","tyrant","tyre","tyres","tyro","tyrocidin","tyrocidine","tyrolean","tyrolese","tyros","tyrosine","tyrosinemia","tyrothricin","tyrr","tzar","tzarina","tzarist","tzetze","u","UAE","uae","uakari","ubermensch","ubermenschen","ubiety","ubiquinone","ubiquitous","ubiquitousness","ubiquity","uda","udder","udometer","ufo","Uganda","uganda","ugandan","ugh","ugli","uglier","uglies","ugliest","uglified","uglifies","uglify","ugliness","ugly","ugrian","uh","uh-uh","uhf","uighur","uigur","uigurs","uintathere","UK","uk","ukase","uke","Ukraine","ukraine","ukrainian","ukrayina","ukulele","ulaanbaatar","ulalgia","ulama","ulatrophia","ulcer","ulcerate","ulcerated","ulcerates","ulceration","ulcerative","ulcerous","ulcers","ulema","ulemorrhagia","ulfila","ulitis","ullage","ullr","ulna","ulnae","ulnar","ult","ulterior","ulteriority","ulteriorly","ultima","ultimacy","ultimata","ultimate","ultimately","ultimateness","ultimatum","ultimo","ultra","ultra-right","ultra-thin","ultracef","ultracentrifugation","ultracentrifuge","ultraconservative","ultramarine","ultramicroscope","ultramicroscopic","ultramodern","ultramontane","ultramontanism","ultranationalism","ultranationalistic","ultrasonic","ultrasonically","ultrasonography","ultrasound","ultraviolet","ululate","ululating","ululation","umbel","umbellar","umbellate","umbellifer","umbelliferous","umbelliform","umber","umbilical","umbilicate","umbilici","umbilicus","umbo","umbones","umbra","umbrae","umbrage","umbrageous","umbrella","umbrellalike","umbrellas","umbrellawort","umlaut","umma","ump","umpirage","umpire","umpires","umpiring","umpteen","umpteenth","umptieth","umteen","umteenth","UN","un","un-advertisers","unabashed","unabashedly","unabated","unable","unabridged","unabused","unaccented","unacceptability","unacceptable","unacceptableness","unacceptably","unaccepted","unaccessible","unaccommodating","unaccompanied","unaccountable","unaccountably","unaccredited","unaccustomed","unachievable","unachievably","unacknowledged","unacquainted","unacquisitive","unactable","unadaptability","unadaptable","unadapted","unaddicted","unaddressed","unadjustable","unadjusted","unadoptable","unadorned","unadulterated","unadventurous","unadvisable","unadvised","unadvisedly","unaerated","unaesthetic","unaffected","unaffectedness","unaffecting","unaffectionate","unaffiliated","unaffixed","unafraid","unaged","unaggressive","unagitated","unai","unaided","unaired","unairworthy","unalarming","unalert","unalienable","unalike","unalloyed","unalterability","unalterable","unalterably","unaltered","unambiguity","unambiguous","unambiguously","unambitious","unambitiously","unamended","unanalyzable","unanalyzed","unangry","unanimated","unanimity","unanimous","unanimously","unannealed","unannounced","unanswerable","unanswered","unanticipated","unapologetic","unappareled","unapparent","unappealable","unappealing","unappealingly","unappeasable","unappendaged","unappetising","unappetisingness","unappetizing","unappetizingness","unappreciated","unappreciative","unappreciatively","unapprehensive","unapproachability","unapproachable","unapproved","unarbitrary","unarguable","unarguably","unargumentative","unarm","unarmed","unarmored","unarmoured","unarms","unarticulate","unarticulated","unartistic","unary","unascertainable","unascribable","unashamed","unashamedly","unasked","unassailable","unassailably","unassertive","unassertively","unassertiveness","unassignable","unassigned","unassisted","unassuming","unassumingly","unassumingness","unassured","unasterisked","unattached","unattackable","unattainable","unattainableness","unattainably","unattended","unattired","unattractive","unattractively","unattractiveness","unattributable","unau","unauthentic","unauthorised","unauthorized","unavailability","unavailable","unavailing","unavenged","unavoidability","unavoidable","unavoidably","unavowed","unawakened","unaware","unawareness","unawares","unawed","unbacked","unbaffled","unbalance","unbalanced","unbalances","unbalancing","unbalconied","unbanded","unbaptised","unbaptized","unbar","unbarred","unbarreled","unbarrelled","unbarring","unbars","unbearable","unbearably","unbeatable","unbeaten","unbecoming","unbecomingly","unbecomingness","unbefitting","unbeholden","unbeknown","unbeknownst","unbelief","unbelievable","unbelievably","unbelieving","unbelievingly","unbeloved","unbelt","unbelted","unbelts","unbend","unbendable","unbending","unbends","unbeneficed","unbent","unbiased","unbiassed","unbigoted","unbind","unbinding","unbinds","unbitter","unbleached","unblemished","unblended","unblessed","unblinking","unblinkingly","unblock","unblocks","unbloody","unblushing","unblushingly","unbodied","unbolt","unbolted","unbolting","unbolts","unbooked","unbordered","unborn","unbosom","unbosoms","unbound","unbounded","unboundedness","unbowed","unbox","unboxes","unbrace","unbraced","unbraces","unbraid","unbraids","unbrainwashed","unbranched","unbranching","unbranded","unbreakable","unbreakableness","unbridgeable","unbridle","unbridled","unbroken","unbrushed","unbuckle","unbuckles","unburden","unburdened","unburdens","unburied","unburnished","unbutton","unbuttoned","unbuttons","uncamphorated","uncannily","uncanny","uncap","uncapped","uncapping","uncaps","uncarbonated","uncaring","uncarpeted","uncarved","uncase","uncastrated","uncategorised","uncategorized","uncaulked","uncaused","unceasing","unceasingly","uncensored","unceremonial","unceremonious","unceremoniously","unceremoniousness","uncertain","uncertainly","uncertainness","uncertainties","uncertainty","uncertified","unchain","unchained","unchains","unchallengeable","unchallenged","unchangeability","unchangeable","unchangeableness","unchangeably","unchanged","unchanging","unchangingness","uncharacteristic","uncharacteristically","uncharged","uncharitable","uncharted","unchartered","unchaste","uncheckable","unchecked","uncheerful","uncheerfulness","unchewable","unchivalrous","unchivalrously","unchristian","unchristianly","unchristlike","unchurch","unci","uncial","uncidia","uncivil","uncivilised","uncivilized","uncivilly","unclad","unclaimed","unclasp","unclasping","unclasps","unclassifiable","unclassified","uncle","unclean","uncleanliness","uncleanly","uncleanness","unclear","uncleared","unclearly","unclearness","uncles","unclimbable","unclip","unclipped","unclips","uncloak","unclog","unclogged","unclogging","unclogs","unclothe","unclothed","unclothes","unclouded","uncloudedness","unclutter","uncluttered","unclutters","unco","uncoated","uncoerced","uncoil","uncoiled","uncoils","uncollected","uncollectible","uncolored","uncoloured","uncolumned","uncombable","uncombed","uncombined","uncomely","uncomfortable","uncomfortableness","uncomfortably","uncommercial","uncommercialised","uncommercialized","uncommitted","uncommon","uncommonly","uncommonness","uncommunicative","uncommunicativeness","uncomparable","uncomparably","uncompartmented","uncompassionate","uncompensated","uncompetitive","uncomplaining","uncomplainingly","uncomplete","uncompleted","uncomplicated","uncomplimentary","uncompounded","uncomprehended","uncomprehending","uncomprehensible","uncompress","uncompresses","uncompromising","uncompromisingly","unconcealed","unconcern","unconcerned","unconcernedly","unconditional","unconditionally","unconditioned","unconfessed","unconfined","unconfirmed","unconformable","unconformist","unconfused","uncongenial","uncongeniality","unconnected","unconnectedness","unconquerable","unconquered","unconscientious","unconscientiousness","unconscionable","unconscious","unconsciously","unconsciousness","unconsecrated","unconsidered","unconsolable","unconsolidated","unconstipated","unconstitutional","unconstitutionally","unconstrained","unconstraint","unconstricted","unconstructive","unconsumed","unconsummated","uncontaminated","uncontaminating","uncontested","uncontrived","uncontrollable","uncontrollably","uncontrolled","uncontroversial","uncontroversially","unconventional","unconventionality","unconventionally","unconverted","unconvertible","unconvinced","unconvincing","unconvincingly","uncooked","uncool","uncooperative","uncoordinated","uncordial","uncork","uncorking","uncorks","uncorrectable","uncorrected","uncorrelated","uncorroborated","uncorrupted","uncounted","uncouple","uncoupled","uncouples","uncoupling","uncousinly","uncouth","uncouthly","uncouthness","uncover","uncovered","uncovering","uncovers","uncrannied","uncrate","uncrates","uncreased","uncreative","uncreativeness","uncredited","uncritical","uncritically","uncropped","uncross","uncrossed","uncrosses","uncrowded","uncrowned","uncrystallised","uncrystallized","unction","unctuous","unctuously","unctuousness","uncultivable","uncultivatable","uncultivated","uncultured","uncurbed","uncured","uncurl","uncurled","uncurls","uncurtained","uncurved","uncurving","uncus","uncut","undamaged","undatable","undated","undaunted","undecagon","undeceive","undeceived","undeceives","undecided","undecipherable","undecipherably","undeciphered","undeclared","undecomposable","undecomposed","undecorated","undedicated","undefeated","undefendable","undefended","undeferential","undefiled","undefinable","undefined","undelineated","undemanding","undemocratic","undemocratically","undemonstrative","undeniable","undeniably","undenominational","undependability","undependable","undependableness","undependably","undepicted","Under","under","underachieve","underachievement","underachiever","underachieves","underachieving","underact","underactive","underacts","underage","underarm","underbelly","underbid","underbidding","underbids","underbodice","underbody","underboss","underbred","underbrush","undercarriage","undercharge","undercharges","undercharging","underclass","underclassman","underclothed","underclothes","underclothing","undercoat","undercoated","undercooked","undercover","undercurrent","undercut","undercuting","undercuts","undercutting","underdevelop","underdeveloped","underdevelopment","underdog","underdone","underdrawers","underdress","underdressed","underdresses","undereducated","underemployed","underestimate","underestimated","underestimates","underestimating","underestimation","underevaluation","underexpose","underexposure","underfed","underfeed","underfeeds","underfelt","underfoot","underframe","underfur","undergarment","undergird","undergo","undergoes","undergoing","undergone","undergrad","undergraduate","undergraduates","underground","undergrow","undergrows","undergrowth","underhand","underhanded","underhandedly","underhung","underivative","underived","underlay","underlayment","underlays","underlet","underletting","underlie","underlies","underline","underlined","underlines","underling","underlining","underlip","underlying","undermanned","undermentioned","undermine","undermined","undermines","undermining","underneath","undernourish","undernourished","undernourishes","undernourishment","underpants","underpart","underpass","underpay","underpaying","underpayment","underpays","underperform","underperformed","underperformer","underperforming","underperforms","underpin","underpinned","underpinning","underpins","underplay","underplaying","underplays","underpopulated","underprice","underpriced","underprices","underprivileged","underproduce","underproduces","underproducing","underproduction","underprop","underpropped","underpropping","underquote","underquotes","underrate","underrates","underrating","underreckoning","underrun","underscore","underscored","underscores","underscoring","undersea","underseal","undersealed","undersecretary","undersell","underseller","underselling","undersells","underset","undersetting","undersexed","undershirt","undershoot","undershoots","undershot","undershrub","underside","undersign","undersigns","undersize","undersized","underskirt","underslung","undersoil","underspend","underspending","underspends","understaffed","understand","understandability","understandable","understandably","understanding","understandingly","understands","understate","understated","understatement","understates","understating","understock","understocking","understocks","understood","understructure","understudied","understudies","understudy","undersurface","undertake","undertaken","undertaker","undertakes","undertaking","undertide","undertone","undertook","undertow","underutilise","underutilised","underutilize","underutilized","undervaluation","undervalue","undervalued","undervalues","undervaluing","underwater","underway","underwear","underweight","underwent","underwing","underwood","underworld","underwrite","underwriter","underwrites","underwriting","underwritten","underwrote","undescended","undescriptive","undeserved","undeservedly","undeserving","undesigned","undesirability","undesirable","undesirably","undesired","undesiring","undesirous","undestroyable","undetectable","undetected","undeterminable","undetermined","undeterred","undeveloped","undeviating","undiagnosable","undiagnosed","undid","undies","undifferentiated","undigested","undignified","undiluted","undiminished","undimmed","undine","undiplomatic","undiplomatically","undirected","undiscerning","undischarged","undiscipline","undisciplined","undisclosed","undiscouraged","undiscoverable","undiscovered","undiscriminating","undisguised","undismayed","undisputable","undisputed","undisputedly","undissolved","undistinguishable","undistinguished","undistorted","undistributed","undisturbed","undiversified","undividable","undivided","undo","undoable","undock","undocks","undocumented","undoer","undoes","undogmatic","undogmatical","undoing","undomestic","undomesticated","undone","undoubtedly","undrained","undramatic","undramatically","undrape","undraped","undrapes","undrawn","undreamed","undreamt","undress","undressed","undresses","undressing","undried","undrinkable","undue","undulant","undulate","undulates","undulating","undulation","undulatory","unduly","undutiful","undutifulness","undyed","undying","undynamic","uneager","unearned","unearth","unearthed","unearthing","unearthly","unearths","unease","uneasily","uneasiness","uneasy","uneatable","uneconomic","uneconomical","unedifying","unedited","uneducated","uneffective","unelaborate","unelaborated","unembarrassed","unembellished","unembodied","unemotional","unemotionality","unemotionally","unemphatic","unemployable","unemployed","unemployment","unenclosed","unencouraging","unencumbered","unended","unending","unendingly","unendowed","unendurable","unenergetic","unenergetically","unenforceable","unenforced","unengaged","unenlightened","unenlightening","unenlightenment","unenlivened","unenterprising","unenthusiastic","unenthusiastically","unentitled","unenviable","unequal","unequaled","unequalised","unequalized","unequalled","unequally","unequipped","unequivocal","unequivocally","unequivocalness","unerasable","unerect","unerring","unerringly","unesco","unessential","unestablished","unethical","unethically","uneven","unevenly","unevenness","uneventful","uneventfully","unexacting","unexampled","unexceeded","unexcelled","unexceptionable","unexceptional","unexchangeability","unexchangeable","unexcitable","unexcited","unexciting","unexcitingly","unexclusive","unexcused","unexhausted","unexpansive","unexpected","unexpectedly","unexpectedness","unexpendable","unexpended","unexpired","unexplainable","unexplained","unexploded","unexploited","unexplorative","unexploratory","unexplored","unexportable","unexpressed","unexpressible","unexpressive","unexpurgated","unextended","unfaceted","unfading","unfailing","unfailingly","unfair","unfairly","unfairness","unfaithful","unfaithfully","unfaithfulness","unfaltering","unfalteringly","unfamiliar","unfamiliarity","unfashionable","unfashionably","unfasten","unfastened","unfastener","unfastening","unfastens","unfastidious","unfathomable","unfathomed","unfattened","unfavorable","unfavorableness","unfavorably","unfavourable","unfavourableness","unfavourably","unfearing","unfeasibility","unfeasible","unfeathered","unfed","unfeeling","unfeelingly","unfeelingness","unfeigned","unfeignedly","unfeminine","unfenced","unfermented","unfertile","unfertilised","unfertilized","unfettered","unfilled","unfilmed","unfinished","unfirm","unfit","unfitness","unfitted","unfitting","unfixed","unflagging","unflappable","unflattering","unflavored","unflavoured","unflawed","unfledged","unflinching","unfluctuating","unflurried","unflustered","unfocused","unfocussed","unfold","unfolded","unfolding","unfolds","unforbearing","unforced","unforceful","unforeseeable","unforeseen","unforesightful","unforested","unforethoughtful","unforfeitable","unforgettable","unforgettably","unforgivable","unforgivably","unforgiving","unforgivingly","unformed","unfortunate","Unfortunately","unfortunately","unfounded","unframed","unfree","unfreeze","unfreezes","unfreezing","unfrequented","unfretted","unfriendlier","unfriendliest","unfriendliness","unfriendly","unfrightened","unfrock","unfrosted","unfrozen","unfruitful","unfueled","unfulfilled","unfunctional","unfunded","unfunny","unfurl","unfurling","unfurls","unfurnished","unfurrowed","ungainlier","ungainliest","ungainliness","ungainly","ungallant","ungarbed","ungarmented","ungathered","ungeared","ungenerous","ungentle","ungentlemanlike","ungentlemanly","ungetatable","unglamorous","unglamourous","unglazed","ungodlier","ungodliest","ungodliness","ungodly","ungovernable","ungoverned","ungraceful","ungracefully","ungracefulness","ungracious","ungraciously","ungraciousness","ungraded","ungrammatical","ungrammatically","ungrasped","ungrateful","ungratefully","ungratefulness","ungratified","ungratifying","ungreased","ungregarious","ungroomed","ungrudging","ungrudgingly","ungual","unguaranteed","unguarded","unguent","unguiculate","unguiculated","unguided","unguis","ungulate","ungulated","ungummed","ungusseted","unhallow","unhallowed","unhampered","unhand","unhappier","unhappiest","unhappily","unhappiness","unhappy","unhardened","unharmed","unharmonious","unharmoniously","unharness","unharnesses","unhatched","unhazardous","unheaded","unhealed","unhealthful","unhealthfulness","unhealthier","unhealthiest","unhealthiness","unhealthy","unhearable","unheard","unhearing","unheated","unheeded","unheeding","unhelpful","unhelpfully","unhelpfulness","unheralded","unhesitating","unhesitatingly","unhewn","unhindered","unhinge","unhinged","unhinges","unhinging","unhitch","unhitches","unholier","unholiest","unholiness","unholy","unhomogenised","unhomogenized","unhook","unhooking","unhooks","unhoped","unhopeful","unhorse","unhuman","unhumorous","unhurried","unhurriedly","unhurriedness","unhurt","unhygienic","unhygienically","uniate","unicameral","unicef","unicellular","unicorn","unicuspid","unicycle","unicycling","unicyclist","unidentifiable","unidentified","unidimensional","unidirectional","unifacial","unification","unified","unifies","unifilar","unifoliate","uniform","uniformed","uniformise","uniformises","uniformity","uniformize","uniformizes","uniformly","uniformness","uniforms","unify","unifying","unilateral","unilateralism","unilateralist","unilaterally","unilluminated","unilluminating","unimaginable","unimaginably","unimaginative","unimaginatively","unimagined","unimodal","unimpaired","unimpassioned","unimpeachable","unimpeachably","unimpeded","unimportance","unimportant","unimposing","unimpregnated","unimpressed","unimpressionable","unimpressive","unimpressively","unimprisoned","unimproved","unincorporated","unindustrialised","unindustrialized","uninebriated","uninfected","uninflected","uninfluenced","uninfluential","uninformative","uninformatively","uninformed","uninhabitable","uninhabited","uninhibited","uninitiate","uninitiated","uninjectable","uninjured","uninominal","uninquiring","uninquisitive","uninspired","uninspiring","uninstructed","uninstructive","uninstructively","uninsurability","uninsurable","uninsured","unintegrated","unintelligent","unintelligently","unintelligibility","unintelligible","unintelligibly","unintended","unintentional","unintentionally","uninterested","uninteresting","uninterestingly","uninterestingness","uninterrupted","uninterruptedly","unintimidated","unintoxicated","unintrusive","uninucleate","uninventive","uninvited","uninvitedly","uninviting","uninvolved","uninvolving","Union","union","unionisation","unionise","unionised","unionises","unionising","unionism","unionist","unionization","unionize","unionized","unionizes","unionizing","unions","uniovular","uniovulate","uniparous","unipolar","unique","uniquely","uniqueness","unironed","unisex","unisexual","unison","unit","unitard","unitarian","unitary","unite","United","united","unitedly","unites","uniting","unitisation","unitise","unitises","unitization","unitize","unitizes","units","unity","univalent","univalve","universal","universalise","universalises","universalism","universalist","universalistic","universality","universalize","universalizes","universally","universe","universes","universities","university","univocal","unix","unjointed","unjust","unjustifiable","unjustifiably","unjustified","unjustly","unjustness","unkempt","unkemptness","unkennel","unkennelled","unkennelling","unkept","unkeyed","unkind","unkindled","unkindly","unkindness","unknit","unknits","unknitted","unknitting","unknot","unknots","unknowable","unknowing","unknowingly","unknowingness","unknowledgeable","unknown","unlabeled","unlabelled","unlace","unlaced","unlaces","unlade","unlades","unladylike","unlamented","unlash","unlashes","unlatched","unlaureled","unlaurelled","unlawful","unlawfully","unlawfulness","unlax","unleaded","unlearn","unlearned","unleash","unleashed","unleashes","unleashing","unleavened","Unless","unless","unlettered","unlicenced","unlicensed","unlifelike","unlighted","unlikable","Unlike","unlike","unlikeable","unlikelihood","unlikeliness","unlikely","unlikeness","unlimited","unlined","unlipped","unlisted","unlit","unliterary","unlittered","unlivable","unlive","unliveable","unliveried","unload","unloaded","unloading","unloads","unlobed","unlocated","unlock","unlocked","unlocking","unlocks","unlogical","unloose","unloosen","unloosens","unlovable","unloved","unlovely","unloving","unlubricated","unluckily","unlucky","unmade","unmake","unmakes","unmaking","unmalicious","unmalleability","unmalleable","unmalted","unman","unmanageable","unmanageableness","unmanageably","unmanful","unmanfully","unmanlike","unmanliness","unmanly","unmanned","unmannered","unmannerly","unmanning","unmapped","unmarked","unmarketable","unmarred","unmarried","unmask","unmasking","unmasks","unmatchable","unmatched","unmated","unmeaning","unmeasurable","unmeasured","unmechanical","unmechanised","unmechanized","unmediated","unmedical","unmedicative","unmedicinal","unmelodic","unmelodious","unmelodiously","unmelted","unmemorable","unmemorably","unmentionable","unmercenary","unmerchantable","unmerciful","unmercifully","unmercifulness","unmerited","unmeritorious","unmethodical","unmilitary","unmindful","unmindfully","unmindfulness","unmined","unmingled","unmistakable","unmistakably","unmitigable","unmitigated","unmixable","unmixed","unmoderated","unmodernised","unmodernized","unmodifiable","unmodified","unmodulated","unmolested","unmortgaged","unmotivated","unmotorised","unmotorized","unmourned","unmovable","unmoved","unmoving","unmown","unmusical","unmusically","unmutilated","unmuzzle","unmyelinated","unnameable","unnamed","unnatural","unnaturalised","unnaturalized","unnaturally","unnaturalness","unnavigable","unnecessarily","unnecessary","unneeded","unneighborliness","unneighborly","unneighbourly","unnerve","unnerved","unnerves","unnerving","unneurotic","unnilquadium","unnotched","unnoted","unnoticeable","unnoticeableness","unnoticeably","unnoticed","unnourished","unnumberable","unnumbered","unnumerable","unobjectionable","unobjective","unobligated","unobliging","unobservable","unobservant","unobserved","unobstructed","unobtainable","unobtrusive","unobtrusively","unobtrusiveness","unobvious","unoccupied","unoffending","unofficial","unofficially","unoiled","unopen","unopened","unopposable","unopposed","unordered","unorganised","unorganized","unoriented","unoriginal","unoriginality","unoriginally","unornamented","unorthodox","unorthodoxy","unostentatious","unowned","unoxygenated","unpack","unpackaged","unpacking","unpacks","unpaid","unpainful","unpaintable","unpainted","unpaired","unpalatability","unpalatable","unpalatableness","unpalatably","unparallel","unparalleled","unpardonable","unpardonably","unparented","unparliamentary","unpartitioned","unpassable","unpasteurised","unpasteurized","unpatented","unpatriotic","unpatriotically","unpatronised","unpatronized","unpatterned","unpaved","unpeaceable","unpeaceful","unpeg","unpegged","unpegging","unpeopled","unperceivable","unperceived","unperceiving","unperceptive","unperceptiveness","unperformed","unpermed","unpermissive","unpermissiveness","unperplexed","unperson","unpersuadable","unpersuaded","unpersuasive","unpersuasiveness","unperturbed","unpick","unpicking","unpicks","unpictured","unpicturesque","unpierced","unpigmented","unpillared","unpin","unpinned","unpinning","unpins","unpitying","unplaced","unplanned","unplanted","unplayable","unplayful","unpleasant","unpleasantly","unpleasantness","unpleasing","unpleasingness","unpledged","unploughed","unplowed","unplug","unplugged","unplugging","unplugs","unplumbed","unpointed","unpointedness","unpolished","unpolitical","unpolluted","unpompous","unpopular","unpopularity","unpopulated","unportable","unposed","unpotted","unpowered","unpracticed","unpractised","unprecedented","unprecedentedly","unpredictability","unpredictable","unpredictably","unpredicted","unpredictive","unprejudiced","unpremeditated","unprepared","unprepossessing","unpresentable","unpresidential","unpressed","unpretending","unpretentious","unpretentiously","unpretentiousness","unpreventable","unpriestly","unprincipled","unprintable","unproblematic","unprocessed","unprocurable","unproductive","unproductively","unproductiveness","unprofessional","unprofitability","unprofitable","unprofitableness","unprofitably","unprogressive","unpromised","unpromising","unprompted","unpronounceable","unprophetic","unpropitious","unpropitiously","unpropitiousness","unprotected","unprotectedness","unprotective","unprovable","unproved","unproven","unprovocative","unprovoked","unprovoking","unpublishable","unpublished","unpunctual","unpunished","unpurified","unq","unqualified","unqualifiedly","unquenchable","unquestionability","unquestionable","unquestionableness","unquestionably","unquestioned","unquestioning","unquestioningly","unquiet","unquietly","unquotable","unraised","unranked","unratable","unratified","unravel","unraveled","unraveler","unraveling","unravelled","unraveller","unravelling","unravels","unreachable","unreached","unreactive","unread","unreadable","unreadably","unready","unreal","unrealised","unrealism","unrealistic","unrealistically","unreality","unrealizable","unrealized","unreason","unreasonable","unreasonably","unreasoning","unreasoningly","unreassuring","unreceptive","unreciprocated","unrecognisable","unrecognised","unrecognizable","unrecognizably","unrecognized","unreconcilable","unreconciled","unreconstructed","unrecorded","unrecoverable","unredeemable","unredeemed","unreduced","unreel","unrefined","unreflected","unreflective","unreformable","unreformed","unrefreshed","unregenerate","unregenerated","unregistered","unregretful","unregretting","unregularity","unregulated","unrehearsed","unrelated","unrelatedness","unrelaxed","unreleased","unrelenting","unrelentingly","unreleting","unreliability","unreliable","unreliableness","unreliably","unrelieved","unremarkable","unremarkably","unremarked","unremedied","unremitting","unremorseful","unremunerative","unrenewable","unrenewed","unrentable","unrepaired","unrepeatable","unrepentant","unrepentantly","unreplaceable","unreportable","unreported","unrepresentative","unrepressed","unreproducible","unreproducibly","unrequested","unrequited","unresearched","unresentful","unreserved","unreservedly","unresistant","unresisting","unresolvable","unresolved","unrespectability","unrespectable","unresponsive","unresponsiveness","unrest","unrested","unrestrained","unrestrainedly","unrestraint","unrestricted","unrestrictive","unretentive","unretrievable","unrevealed","unreverberant","unrevised","unrevived","unrewarded","unrewarding","unrhetorical","unrhymed","unrhythmic","unrhythmical","unrifled","unrig","unrigged","unrigging","unrighteous","unrighteously","unrighteousness","unrigs","unrimed","unrip","unripe","unripened","unripped","unripping","unrips","unrivaled","unrivalled","unroll","unrolling","unrolls","unromantic","unromantically","unroofed","unrouged","unruffled","unrulier","unruliest","unruliness","unruly","unsaddle","unsaddled","unsafe","unsaid","unsalable","unsalaried","unsaleable","unsalted","unsanctification","unsanctified","unsanctifies","unsanctify","unsanctioned","unsanded","unsanitariness","unsanitary","unsaponified","unsarcastic","unsated","unsatiable","unsatiably","unsatiated","unsatisfactorily","unsatisfactoriness","unsatisfactory","unsatisfiable","unsatisfied","unsatisfying","unsaturated","unsaved","unsavoriness","unsavory","unsavoury","unsay","unscalable","unscathed","unscheduled","unscholarly","unschooled","unscientific","unscientifically","unscramble","unscrambles","unscrambling","unscrew","unscrewing","unscrews","unscripted","unscrupulous","unscrupulously","unscrupulousness","unseal","unsealed","unseals","unseamanlike","unseamed","unseasonable","unseasonableness","unseasonably","unseasoned","unseat","unseated","unseating","unseats","unseaworthy","unsectarian","unsecured","unseductive","unseeable","unseeded","unseeing","unseemliness","unseemly","unseen","unsegmented","unsegregated","unselected","unselective","unselfconscious","unselfconsciously","unselfconsciousness","unselfish","unselfishly","unselfishness","unsensational","unsent","unsentimental","unsentimentally","unserviceable","unservile","unsettle","unsettled","unsettles","unsex","unsexed","unsexy","unshackled","unshaded","unshadowed","unshakable","unshakably","unshaken","unshaped","unshapely","unshapen","unshared","unsharpened","unshaved","unshaven","unsheared","unsheathe","unsheathed","unsheathes","unshelled","unshielded","unship","unshipped","unshipping","unships","unshockable","unshod","unshoed","unshorn","unshrinkable","unshrinking","unshuttered","unsighted","unsightliness","unsightly","unsigned","unsilenced","unsimilarity","unsinkable","unsized","unskilled","unskillful","unskillfulness","unsleeping","unsloped","unsmiling","unsmilingly","unsmooth","unsmoothed","unsnap","unsnapped","unsnapping","unsnaps","unsnarl","unsnarled","unsnarling","unsnarls","unsociability","unsociable","unsociableness","unsociably","unsocial","unsoiled","unsold","unsolder","unsolders","unsoldierly","unsolicited","unsoluble","unsolvability","unsolvable","unsolved","unsophisticated","unsorted","unsought","unsound","unsoundable","unsounded","unsoundness","unsoured","unsown","unspaced","unsparing","unsparingly","unspeakable","unspeakably","unspecialised","unspecialized","unspecific","unspecified","unspectacular","unspell","unspells","unspent","unspoiled","unspoilt","unspoken","unsporting","unsportingly","unsportsmanlike","unspotted","unstable","unstableness","unstaged","unstained","unstaple","unstarred","unstated","unstatesmanlike","unsteadied","unsteadies","unsteadily","unsteadiness","unsteady","unstep","unstepped","unstepping","unsteps","unsterilised","unsterilized","unstilted","unstimulating","unstinted","unstinting","unstintingly","unstirred","unstop","unstoppable","unstopped","unstoppered","unstopping","unstrain","unstrained","unstrap","unstraps","unstratified","unstressed","unstring","unstrings","unstructured","unstrung","unstuck","unstudied","unstudious","unstuff","unstuffs","unstylish","unsuasible","unsubdivided","unsubduable","unsubdued","unsubmissive","unsubstantial","unsubstantialise","unsubstantialize","unsubstantiated","unsubtle","unsuccessful","unsuccessfully","unsufferable","unsufferably","unsugared","unsuitability","unsuitable","unsuitableness","unsuitably","unsuited","unsullied","unsung","unsupervised","unsupportable","unsupported","unsupportive","unsuppressed","unsure","unsurmountable","unsurpassable","unsurpassed","unsurprised","unsurprising","unsusceptibility","unsusceptible","unsuspected","unsuspecting","unsuspectingly","unsuspicious","unswayed","unsweet","unsweetened","unswept","unswerving","unswervingly","unsworn","unsyllabic","unsyllabled","unsymbolic","unsymmetric","unsymmetrical","unsymmetrically","unsympathetic","unsympathetically","unsympathising","unsympathizing","unsynchronised","unsynchronized","unsynchronous","unsystematic","unsystematically","untactful","untagged","untainted","untalented","untalkative","untamed","untangle","untangled","untangles","untangling","untanned","untaped","untapped","untarnished","untasted","untaught","untaxed","unteach","untechnical","untellable","untempered","untempting","untenable","untenanted","untended","untested","untethered","unthankful","unthaw","unthawed","unthaws","untheatrical","unthematic","unthinkable","unthinkably","unthinking","unthinkingly","unthought","unthoughtful","unthoughtfulness","unthreatening","untidied","untidier","untidies","untidiest","untidily","untidiness","untidy","untie","untied","untier","unties","Until","until","untilled","untimbered","untimeliness","untimely","untipped","untired","untiring","untitled","unto","untoasted","untold","untoothed","untouchable","untouched","untoughened","untoward","untraceable","untracked","untraditional","untrained","untrammeled","untrammelled","untransferable","untranslatable","untransmutable","untraveled","untravelled","untraversable","untraversed","untreated","untried","untrimmed","untrod","untrodden","untroubled","untrue","untruly","untrustiness","untrusting","untrustworthiness","untrustworthy","untrusty","untruth","untruthful","untruthfully","untruthfulness","untucked","untufted","untune","untuneful","unturned","untutored","untwine","untwines","untwist","untwisted","untwists","untying","untypical","untypicality","untypically","ununbium","ununderstandably","ununderstood","ununhexium","ununpentium","ununquadium","ununtrium","unusable","unuseable","unused","unusefulness","unusual","unusually","unusualness","unutterable","unutterably","unuttered","unvaccinated","unvalued","unvaned","unvanquishable","unvanquished","unvaried","unvariedness","unvarnished","unvarying","unveil","unveiled","unveiling","unveils","unvendible","unvented","unventilated","unverbalised","unverbalized","unverifiable","unverified","unversed","unvigilant","unvindictive","unvitrified","unvoiced","unvoluntary","unvulcanised","unvulcanized","unwanted","unwantedly","unwarily","unwariness","unwarmed","unwarrantable","unwarrantably","unwarranted","unwary","unwashed","unwatchful","unwavering","unwaveringly","unwaxed","unweaned","unwearable","unwearied","unweary","unwearying","unweathered","unweave","unwebbed","unwed","unwedded","unwelcome","unwell","unwellness","unwholesome","unwholesomeness","unwieldiness","unwieldy","unwilled","unwilling","unwillingly","unwillingness","unwind","unwinding","unwinds","unwire","unwise","unwisely","unwiseness","unwished","unwitting","unwittingly","unwomanly","unwonted","unwontedly","unwooded","unworkable","unworkmanlike","unworldly","unworried","unworthily","unworthiness","unworthy","unwounded","unwoven","unwrap","unwrapped","unwrapping","unwraps","unwrinkled","unwritten","unyielding","unyieldingness","unyoke","unzip","unzipped","unzipping","unzips","up","UPA","upa","upbeat","upbound","upbraid","upbraider","upbraiding","upbraids","upbringing","upcast","upchuck","upchucks","upcoming","upcountry","upcurved","update","updated","updates","updating","updraft","upend","upended","upending","upends","upfield","upfront","upgrade","upgraded","upgrades","upgrading","upheaval","upheave","upheld","uphill","uphold","upholder","upholding","upholds","upholster","upholsterer","upholstery","upkeep","upland","uplift","uplifted","uplifting","uplifts","uplink","upload","uploading","uploads","upmarket","upmost","upon","upped","upper","uppercase","uppercut","uppercutting","uppermost","upping","uppish","uppishly","uppishness","uppity","uppityness","uppp","upraise","upraised","upraises","upright","uprightly","uprightness","uprise","uprises","uprising","upriver","uproar","uproarious","uproariously","uproot","uprooted","uprooter","uprooting","uproots","UPS","ups","upsala","upscale","upset","upsets","upsetter","upsetting","upshot","upside","upsilon","upstage","upstager","upstages","upstaging","upstair","upstairs","upstanding","upstart","upstate","upstream","upstroke","upsurge","uptake","upthrow","upthrust","uptick","uptight","uptime","uptown","upturn","upturned","upward","upwardly","upwards","upwind","uracil","uraemia","uraemic","uranalysis","uraninite","uranium","uranologist","uranology","uranoplasty","uranyl","urarthritis","urate","uratemia","uraturia","urban","urbane","urbanely","urbanisation","urbanise","urbanised","urbanises","urbanising","urbanity","urbanization","urbanize","urbanized","urbanizes","urbanizing","urceolate","urceole","urchin","urea","urease","uredines","uredinia","uredinium","uredium","uredo","uredosori","uredosorus","uremia","uremic","ureter","ureteritis","ureterocele","ureterostenosis","urethane","urethra","urethrae","urethral","urethritis","urethrocele","urex","urga","urge","urged","urgency","urgent","urgently","urges","urging","urial","uric","uricaciduria","uricosuric","urinal","urinalyses","urinalysis","urinary","urinate","urinates","urinating","urination","urinator","urine","url","urn","urobilin","urobilinogen","urocele","urochesia","urochezia","urochord","urochorda","urochordate","urodele","urodynia","urogenital","urokinase","urolith","urologist","urology","uropathy","uropygi","uropygium","ursine","ursinia","urth","urticaria","urticate","urticates","urticating","urtication","Uruguay","uruguay","uruguayan","urus","US","us","US$","us$","USA","usa","usability","usable","usableness","usacil","USAF","usaf","usage","usages","usance","usbeg","usbek","uscb","usd","usda","use","useable","useableness","used","useful","usefully","usefulness","useless","uselessly","uselessness","user","users","uses","usher","ushered","usherette","ushering","ushers","using","USKUB","uskub","USMC","usmc","USN","usn","USPS","usps","USSR","ussr","USSS","usss","usual","usually","usualness","usufruct","usufructuary","usumbura","usurer","usurious","usuriously","usurp","usurpation","usurper","usurping","usurps","usury","utahraptor","utc","utensil","utensils","uteri","uterine","uterus","utile","utilisable","utilisation","utilise","utilised","utiliser","utilises","utilising","utilitarian","utilitarianism","utilities","utility","utilizable","utilization","utilize","utilized","utilizer","utilizes","utilizing","utmost","utn","utopian","utricle","utriculi","utriculus","utter","utterable","utterance","uttered","utterer","uttering","utterly","uttermost","utterness","utters","utug","uub","uuh","uup","uuq","uut","uvea","uveal","uveitis","uveous","uvula","uvulae","uvular","uvulitis","uvulopalatopharyngoplasty","uxor","uxorial","uxoricide","uxorious","uxoriously","uxoriousness","uygur","uzbak","uzbeg","Uzbekistan","uzbekistan","uzbekistani","VA.","Va.","va.","vac","vacancy","vacant","vacantly","vacate","vacated","vacates","vacating","vacation","vacationer","vacationers","vacationing","vacationist","vacations","vacay","vaccina","vaccinate","vaccinated","vaccinates","vaccinating","vaccination","vaccinator","vaccine","vaccinee","vaccines","vaccinia","vaccinum","vacillant","vacillate","vacillates","vacillating","vacillation","vacillator","vacua","vacuity","vacuolate","vacuolated","vacuolation","vacuole","vacuoles","vacuolisation","vacuolization","vacuous","vacuously","vacuousness","vacuum","vacuuming","vacuums","vag","vagabond","vagabondage","vagal","vagary","vagged","vagging","vagi","vagile","vagina","vaginae","vaginal","vaginismus","vaginitis","vaginocele","vagrancy","vagrant","vags","vague","vaguely","vagueness","vaguest","vagus","vain","vainglorious","vainglory","vainly","vaisakha","vaisnavism","valance","valdecoxib","vale","valediction","valedictorian","valedictory","valence","valency","valent","valentine","valentines","valerian","valet","valetta","valetudinarian","valetudinarianism","valetudinary","valgus","valiance","valiancy","valiant","valiantly","valid","validate","validated","validates","validating","validation","validatory","validity","validly","validness","valine","valise","valium","vallecula","valleculae","valley","valleys","valor","valorous","valorously","valorousness","valour","valsartan","valse","valuable","valuableness","valuate","valuates","valuation","valuator","value","valued","valueless","valuelessness","valuer","values","valuing","valve","valved","valvelet","valves","valvotomy","valvula","valvular","valvule","valvulitis","valvulotomy","vambrace","vamoose","vamooses","vamp","vamper","vamping","vampire","vampires","vampirism","vamps","van","vanadate","vanadinite","vanadium","vancocin","vancomycin","vanda","vandal","vandalise","vandalised","vandalises","vandalising","vandalism","vandalize","vandalized","vandalizes","vandalizing","vane","vaned","vanern","vanguard","vanilla","vanillin","vanish","vanished","vanisher","vanishes","vanishing","vanishingly","vanity","vanquish","vanquishable","vanquisher","vanquishes","vanquishing","vans","vantage","Vanuatu","vanuatu","vapid","vapidity","vapidly","vapidness","vapor","vaporetti","vaporetto","vaporific","vaporing","vaporisation","vaporise","vaporised","vaporiser","vaporises","vaporish","vaporising","vaporizable","vaporization","vaporize","vaporized","vaporizer","vaporizes","vaporizing","vaporous","vaporousness","vapors","vapour","vapourific","vapourisable","vapourised","vapourish","vapourous","vapourousness","vapours","vaquero","vaquita","var","vara","varan","vardenafil","variability","variable","variableness","variables","variably","variance","variances","variant","variants","variate","variation","variations","varicella","varicelliform","varices","varicocele","varicolored","varicoloured","varicose","varicosis","varicosity","varied","variedness","variegate","variegated","variegates","variegation","varies","varietal","varieties","variety","variform","variola","variolar","variolation","variolic","variolization","variolous","variometer","variorum","various","variously","varix","varlet","varment","varmint","varnish","varnished","varnisher","varnishing","varsity","varus","vary","varying","vas","vasa","vascula","vascular","vascularisation","vascularise","vascularises","vascularity","vascularization","vascularize","vascularizes","vasculitis","vasculum","vase","vasectomise","vasectomises","vasectomize","vasectomizes","vasectomy","vasiform","vasoconstriction","vasoconstrictive","vasoconstrictor","vasodilation","vasodilative","vasodilator","vasomax","vasomotor","vasopressin","vasopressor","vasosection","vasotec","vasotomy","vasovasostomy","vasovesiculitis","vassal","vassalage","vast","vastier","vastiest","vastly","vastness","vasty","vat","vatic","vatical","vaticinate","vaticinates","vaticination","vaticinator","vatted","vatting","vaudeville","vaudevillian","vaudois","vault","vaulted","vaulter","vaulting","vaunt","vaunter","vaunting","vauntingly","vaunts","vcr","vcrs","vdu","VE","ve","veal","veau","vector","vectors","veda","vedalia","vedic","veer","veering","veery","veg","vegan","vegetable","vegetables","vegetal","vegetarian","vegetarianism","vegetate","vegetates","vegetating","vegetation","vegetational","vegetative","vegetive","veggie","veggies","vehemence","vehement","vehemently","vehicle","vehicles","vehicular","veil","veiled","veiling","vein","veinal","veined","veinlike","veins","vela","velamen","velamina","velar","velaria","velarium","velban","velcro","veld","veldt","velleity","vellicate","vellicates","vellication","vellum","velocipede","velociraptor","velocities","velocity","velodrome","velour","veloute","velum","velvet","velveteen","velvetleaf","velvetweed","velvety","vena","venae","venal","venality","venally","venation","vend","vendable","vendee","vender","vendetta","vendible","vending","vendition","vendor","vendors","vends","vendue","veneer","veneering","venerability","venerable","venerableness","venerate","venerates","venerating","veneration","venerator","venereal","venesect","venesection","venesects","venetia","venetian","venezia","Venezuela","venezuela","venezuelan","vengeance","vengeful","vengefully","vengefulness","venial","venipuncture","venire","venison","venogram","venography","venom","venomed","venomous","venomously","venose","venous","vent","ventail","vented","venter","venthole","ventilate","ventilated","ventilates","ventilating","ventilation","ventilator","ventilatory","venting","ventolin","ventral","ventrally","ventricle","ventricose","ventricous","ventricular","ventriculi","ventriculus","ventriloquism","ventriloquist","ventriloquy","vents","venture","venturer","ventures","venturesome","venturesomeness","venturing","venturous","venue","venues","venula","venule","venushair","vepse","vepsian","veracious","veracity","veranda","verandah","verapamil","verb","verbal","verbalisation","verbalise","verbalised","verbaliser","verbalises","verbalising","verbalism","verbalization","verbalize","verbalized","verbalizer","verbalizes","verbalizing","verbally","verbatim","verbena","verbiage","verbified","verbifies","verbify","verbolatry","verbose","verbosely","verboseness","verbosity","verboten","verbs","verdancy","verdant","Verde","verde","verdict","verdicts","verdigris","verdin","verdolagas","verdure","verge","verged","verger","vergil","verging","veridical","verifiable","verification","verificatory","verified","verifier","verifies","verify","verifying","verily","verisimilar","verisimilitude","veritable","verity","vermes","vermicelli","vermicide","vermicular","vermiculate","vermiculated","vermiculates","vermiculation","vermiculite","vermiform","vermifuge","vermilion","vermillion","vermin","verminous","vermis","vermont","vermouth","vernacular","vernal","vernation","vernix","vernonia","veronal","veronica","verrazzano","verruca","verrucae","verrucose","versa","versant","versatile","versatility","verse","versed","verses","versicle","versification","versified","versifier","versifies","versify","version","versions","verso","verst","versus","vertebra","vertebrae","vertebral","vertebrate","vertebrates","vertex","verthandi","vertical","verticality","vertically","verticalness","vertices","verticil","verticillate","verticillated","verticilliosis","verticillium","vertigines","vertiginous","vertigo","vertigoes","vertu","vervain","verve","vervet","very","vesica","vesicae","vesical","vesicant","vesicate","vesicates","vesication","vesicatory","vesicle","vesicles","vesicopapule","vesicular","vesiculate","vesiculates","vesiculation","vesiculitis","vesiculovirus","vesper","vespertilionid","vespid","vessel","vessels","vest","vestal","vested","vestiary","vestibular","vestibule","vestige","vestiges","vestigial","vesting","vestiture","vestment","vestmental","vestmented","vestry","vestryman","vestrywoman","vests","vesture","vesuvian","vesuvianite","vet","vetch","vetchling","vetchworm","veteran","veterans","veterinarian","veterinary","veto","vetoed","vetoes","vetoing","vetted","vetting","vex","vexation","vexatious","vexatiously","vexed","vexer","vexes","vexilla","vexillum","vexing","vfw","vhf","via","viability","viable","viaduct","viagra","vial","vials","viand","viatica","viatical","viatication","viaticum","viaticus","viator","viatores","vibe","vibes","vibist","vibracula","vibraculum","vibraharp","vibramycin","vibrancy","vibrant","vibraphone","vibraphonist","vibrate","vibrates","vibrating","vibration","vibrational","vibrato","vibrator","vibratory","vibrio","vibrion","vibrionic","vibrissa","vibrissae","vicar","vicarage","vicarial","vicariate","vicarious","vicariously","vicarship","vice","vice-president","vicegerent","vicenary","vicennial","viceregal","vicereine","viceroy","viceroyalty","viceroyship","vices","vichyssoise","vicinal","vicinity","vicious","viciously","viciousness","vicissitude","victim","victimisation","victimise","victimised","victimiser","victimises","victimising","victimization","victimize","victimized","victimizer","victimizes","victimizing","victims","victor","victorian","victories","victorious","victoriously","victors","victory","victual","victualer","victualled","victualler","victualling","vicuna","vidar","videlicet","video","videocassette","videodisc","videodiscs","videodisk","videodisks","videos","videotape","videotapes","videotaping","vie","viennese","vies","Vietnam","vietnam","vietnamese","view","viewable","viewed","viewer","viewers","viewfinder","viewgraph","viewier","viewiest","viewing","viewless","viewpoint","viewpoints","views","viewy","vigesimal","vigil","vigilance","vigilant","vigilante","vigilantism","vigilantly","vignette","vigor","vigorish","vigorous","vigorously","vigour","vii","viii","vila","vile","vilely","vileness","vilification","vilified","vilifier","vilifies","vilify","vilifying","vilipend","villa","village","villager","villagers","villages","villain","villainage","villainess","villainous","villainousness","villains","villainy","villas","villein","villeinage","villi","villoma","villus","vilna","vilno","vim","vimen","vimina","vinaceous","vinaigrette","vinblastine","Vincent","vincent","vincible","vincristine","vincula","vinculum","vindicate","vindicated","vindicates","vindicating","vindication","vindicator","vindicatory","vindictive","vindictively","vindictiveness","vine","vinegar","vinegariness","vinegarish","vinegarishness","vinegarroon","vinegarweed","vinegary","vinery","vines","vineyard","vineyards","viniculture","vinifera","vinification","vinify","vino","vinous","vintage","vintager","vintner","vinyl","vinylbenzene","viocin","viol","viola","violable","violate","violated","violates","violating","violation","violations","violative","violator","violence","violent","violently","violet","violin","violinist","violist","violoncellist","violoncello","viomycin","viosterol","vioxx","vip","viper","viracept","viraemia","virago","viragoes","viral","viramune","virazole","viremia","vireo","vires","virga","virgin","virginal","virginia","virginity","virgins","virgule","viricidal","viricide","viridity","virile","virilisation","virilise","virilises","virilism","virility","virilization","virilize","virilizes","virino","virion","virions","viroid","virological","virologist","virology","virtu","virtual","virtually","virtue","virtues","virtuosi","virtuosity","virtuoso","virtuous","virtuously","virtuousness","virucidal","virucide","virulence","virulency","virulent","virulently","virus","viruses","virusoid","vis","visa","visage","visaged","visas","viscacha","viscera","visceral","viscerally","viscid","viscidity","viscidly","viscidness","viscoelastic","viscometer","viscometric","viscometry","viscose","viscosimeter","viscosimetric","viscosimetry","viscosity","viscount","viscountcy","viscountess","viscounty","viscous","viscousness","viscus","vise","viselike","vishnuism","visibility","visible","visibleness","visibly","vision","visionary","visioning","visions","visit","visitant","visitation","visited","visiting","visitor","visitors","visits","visken","visor","visored","vista","vistaril","vistas","visual","visualisation","visualisations","visualise","visualised","visualiser","visualises","visualising","visualization","visualizations","visualize","visualized","visualizer","visualizes","visualizing","visually","vita","vitae","vital","vitalisation","vitalise","vitaliser","vitalises","vitalism","vitalist","vitality","vitalization","vitalize","vitalizer","vitalizes","vitalizing","vitally","vitalness","vitals","vitamin","vitaminise","vitaminize","vitamins","vitelli","vitellus","vithar","vitiate","vitiated","vitiates","vitiating","vitiation","viticulture","viticulturist","vitidaceae","vitiliginous","vitiligo","vitis","vitrectomy","vitreous","vitrification","vitrified","vitrifies","vitrify","vitrine","vitriol","vitriolic","vitriolically","vitriolled","vitriolling","vitta","vittae","vituperate","vituperation","vituperative","viva","vivace","vivacious","vivaciously","vivacity","vivaria","vivarium","viverrinae","viverrine","vivid","vividly","vividness","vivification","vivified","vivifies","vivify","vivifying","viviparous","vivisect","vivisecting","vivisection","vivisectionist","vivisects","vixen","vixenish","VIZ.","viz.","vizier","viziership","vizor","vizsla","vldl","vlf","vocable","vocabularies","vocabulary","vocal","vocalic","vocalisation","vocalisations","vocalise","vocalised","vocaliser","vocalises","vocalising","vocalism","vocalist","vocalization","vocalizations","vocalize","vocalized","vocalizer","vocalizes","vocalizing","vocally","vocals","vocation","vocational","vocationally","vocative","voces","vociferate","vociferates","vociferation","vociferator","vociferous","vociferously","vodka","vodoun","vogue","voguish","voice","voiced","voiceless","voicelessness","voicemail","voiceprint","voicer","voices","voicing","void","voidable","voidance","voided","voider","voiding","voile","Voilet","volaille","volant","volar","volary","volatile","volatilisable","volatilise","volatilised","volatilises","volatility","volatilizable","volatilize","volatilized","volatilizes","volcanic","volcanically","volcanism","volcano","volcanoes","volcanology","vole","volition","volitional","volitionally","volkslied","volkslieder","volley","volleyball","volleying","volt","volta","voltage","voltaic","voltarean","voltaren","voltarian","volte","voltmeter","volubility","voluble","volubly","volume","volumed","volumes","volumeter","volumetric","volumetrical","volumetrically","voluminosity","voluminous","voluminously","voluminousness","voluntarily","voluntary","volunteer","volunteered","volunteers","voluptuary","voluptuous","voluptuously","voluptuousness","volute","voluted","volution","volva","volvae","volvelle","volvulus","vomer","vomit","vomited","vomiter","vomiting","vomitive","vomitory","vomits","vomitus","voodoo","voodooism","voracious","voraciously","voraciousness","voracity","vortex","vorticella","vorticellae","vortices","votary","vote","voted","voteless","voter","voters","votes","voting","votive","votyak","vouch","vouchee","voucher","vouchers","vouches","vouching","vouchsafe","vouge","voussoir","vow","vowed","vowel","vowelise","vowelize","vowellike","vowels","vower","vowing","vows","vox","voyage","voyager","voyeur","voyeurism","voyeuristic","voyeuristical","voyeuristically","vroom","vrooming","VS.","Vs.","vs.","VT.","Vt.","vt.","vulcanisation","vulcanise","vulcanised","vulcaniser","vulcanises","vulcanite","vulcanization","vulcanize","vulcanized","vulcanizer","vulcanizes","vulcanology","vulgar","vulgarian","vulgarisation","vulgarise","vulgarised","vulgariser","vulgarises","vulgarising","vulgarism","vulgarity","vulgarization","vulgarize","vulgarized","vulgarizer","vulgarizes","vulgarizing","vulgarly","vulnerabilities","vulnerability","vulnerable","vulnerably","vulpecular","vulpine","vulture","vulturine","vulturous","vulva","vulvae","vulval","vulvar","vulvectomy","vulvitis","vulvovaginitis","vying","W.VA.","W.Va.","w.va.","wa","wackier","wackiest","wackily","wacko","wacky","wad","wadded","waddied","waddies","wadding","waddle","waddler","waddles","waddling","waddy","wade","wader","wadi","wading","wadset","wadsets","wadsetted","wadsetting","wafer","waffle","waffled","waffler","waffles","waffling","waft","wafting","wafts","wafture","wag","wage","waged","wager","wagerer","wages","wagged","waggery","wagging","waggish","waggishly","waggishness","waggle","waggles","waggling","waggon","waggoner","waggons","waggonwright","waging","wagnerian","wagon","wagoner","wagons","wagonwright","wags","wagtail","wahabi","wahabism","wahhabis","wahoo","wahunsonacock","wahvey","waif","wail","wailer","wailful","wailing","wainscot","wainscoted","wainscoting","wainscotting","wainwright","waist","waistband","waistcloth","waistcoat","waistline","wait","waited","waiter","waiters","waiting","waitress","waitresses","waitressing","waits","waive","waived","waiver","waivers","waives","waiving","wake","wakeboard","wakeful","wakefulness","wakeless","waken","wakening","wakens","waker","wakes","waking","waldmeister","wale","Wales","wales","walhalla","walk","walkabout","walkaway","walked","walker","walkers","walking","walkingstick","walkout","walkouts","walkover","walks","walkway","walkways","wall","wallaby","wallah","wallboard","wallet","walleye","walleyed","wallflower","walling","wallop","walloper","walloping","wallops","wallow","wallowing","wallows","wallpaper","wallpaperer","wallpapering","walls","wally","walnut","walrus","waltz","waltzer","waltzing","wamble","wambles","wampee","wampum","wampumpeag","wan","wand","wandala","wander","wanderer","wandering","wanderjahr","wanderjahre","wanderlust","wanders","wandflower","wane","waned","wanes","wangle","wangler","wangles","wangling","waning","wank","wanker","wanking","wanly","wannabe","wannabee","wanned","wanner","wanness","wannest","wanning","want","wanted","wanter","wanting","wanton","wantonly","wantonness","wants","wapiti","war","waratah","warble","warbler","warbles","warbling","ward","warded","warden","wardenship","warder","wardership","warding","wardress","wardrobe","wardroom","ware","warehouse","warehouseman","warehouser","warehouses","warehousing","wares","warfare","warfarin","warhead","warheads","warhorse","warier","wariest","warily","wariness","warlike","warlock","warlord","warlords","warlpiri","warm","warmed","warmer","warmhearted","warmheartedness","warming","warmly","warmness","warmonger","warmongering","warms","warmth","warn","warned","warner","warning","warnings","warns","warp","warpath","warped","warping","warplane","warps","warragal","warrant","warranted","warrantee","warranter","warranting","warrantor","warrants","warranty","warred","warrener","warrigal","warring","warrior","warriorlike","warriors","wars","warsaw","warship","wart","warthog","wartime","wartlike","wartweed","wartwort","warty","wary","WAS","Was","was","wasabi","wash","WASH.","Wash.","wash.","washable","washables","washbasin","washboard","washbowl","washcloth","washday","washed","washer","washerman","washerwoman","washes","washhouse","washier","washiest","washing","washington","washingtonian","washout","washrag","washroom","washstand","washtub","washup","washwoman","washy","WASN'T","Wasn't","wasn't","WASNT","Wasnt","wasnt","WASN\u2019T","Wasn\u2019t","wasn\u2019t","wasp","waspish","wassail","wassailer","wassails","wastage","waste","wastebasket","wastebin","wasted","wasteful","wastefully","wastefulness","wasteland","waster","wastes","wastewater","wasteweir","wasteyard","wasting","wastrel","watch","watchband","watchdog","watched","watcher","watchers","watches","watchful","watchfully","watchfulness","watching","watchmaker","watchman","watchstrap","watchtower","watchword","water","waterbird","waterborne","waterbuck","watercannon","watercolor","watercolorist","watercolors","watercolour","watercolourist","watercolours","watercourse","watercraft","watercress","waterdog","watered","waterer","waterfall","waterfalls","waterfinder","waterfowl","waterfront","wateriness","watering","waterleaf","waterless","waterlessness","waterline","waterlogged","waterman","watermark","watermeal","watermelon","waterpower","waterproof","waterproofed","waterproofing","waterproofs","waters","waterscape","watershed","waterside","waterskin","waterspout","watertight","waterway","waterweed","waterwheel","waterworks","waterworn","watery","wats","wattage","wattle","wattmeter","watusi","watutsi","waul","wave","waveband","waved","waveform","wavefront","waveguide","wavelength","wavelengths","wavelet","wavelike","waver","wavered","waverer","wavering","wavers","waves","wavier","waviest","waviness","waving","wavy","waw","wawl","wax","waxberry","waxed","waxen","waxes","waxflower","waxier","waxiest","waxiness","waxing","waxlike","waxmallow","waxwing","waxwork","waxy","waxycap","way","waybill","wayfarer","wayfaring","waylay","waylaying","waylays","ways","wayside","wayward","wbc","wbn","WE","We","we","WE'D","We'd","we'd","WE'D'VE","We'd've","we'd've","WE'LL","We'll","we'll","WE'RE","We're","we're","WE'VE","We've","we've","weak","weaken","weakened","weakener","weakening","weakens","weaker","weakest","weakfish","weakfishes","weaklier","weakliest","weakling","weakly","weakness","weaknesses","weal","weald","wealth","wealthier","wealthiest","wealthily","wealthiness","wealthy","wean","weaned","weaning","weans","weapon","weaponed","weaponize","weaponizes","weaponless","weaponry","weapons","wear","wearable","wearer","wearied","wearier","wearies","weariest","wearily","weariness","wearing","wearisome","wears","weary","wearying","weasel","weaseled","weaseling","weaselled","weaselling","weather","weatherboard","weatherboarding","weathercock","weathered","weatherglass","weathering","weatherliness","weatherly","weatherman","weatherproof","weatherproofs","weatherstrip","weatherstripped","weatherstripping","weathervane","weatherworn","weave","weaver","weaverbird","weaves","weaving","web","webbed","webbier","webbiest","webbing","webby","webcam","webfoot","weblike","webmaster","webpage","website","websites","webworm","wed","WED.","Wed.","wed.","wedded","wedding","weddings","wedel","wedge","wedged","wedgie","wedging","wedlock","wednesday","weds","wee","weed","weeder","weedier","weediest","weeding","weedkiller","weedless","weeds","weedy","week","weekday","weekdays","weekend","weekender","weekends","weeklong","weekly","weeknight","weeks","weeness","weenie","weenier","weeniest","weensier","weensiest","weensy","weeny","weep","weeper","weepier","weepiest","weepiness","weeping","weeps","weepy","weevil","weewee","weft","weigela","weigh","weighbridge","weighed","weigher","weighing","weighs","weight","weighted","weightier","weightiest","weightily","weightiness","weighting","weightless","weightlessness","weightlift","weightlifter","weightlifting","weightlifts","weights","weighty","weir","weird","weirdie","weirdly","weirdness","weirdo","weirdy","weisenheimer","weka","welch","welcher","welches","welcome","welcomed","welcomer","welcomes","welcoming","weld","welded","welder","welding","weldment","welds","welfare","welfarist","welkin","Well","well","wellbeing","wellborn","wellerism","wellhead","welling","wellness","wellpoint","wells","wellspring","welsh","welsher","welshes","welt","welter","welterweight","weltschmerz","welwitschia","wen","wench","wencher","wenching","wend","wending","wends","went","wept","WERE","Were","were","WEREN'T","Weren't","weren't","WERENT","Werent","werent","WEREN\u2019T","Weren\u2019t","weren\u2019t","werewolf","werewolves","wesleyan","wesleyism","west","westbound","wester","westerly","western","westerner","westernisation","westernise","westernised","westernises","westernising","westernization","westernize","westernized","westernizes","westernizing","westernmost","westmost","westside","westward","westwards","wet","wetback","wether","wetland","wetness","wetnurse","wets","wetted","wetter","wettest","wetting","WEVE","Weve","weve","WE\u2019D","We\u2019d","we\u2019d","WE\u2019D\u2019VE","We\u2019d\u2019ve","we\u2019d\u2019ve","WE\u2019LL","We\u2019ll","we\u2019ll","WE\u2019RE","We\u2019re","we\u2019re","WE\u2019VE","We\u2019ve","we\u2019ve","whack","whacked","whacker","whackier","whackiest","whacking","whacko","whacks","whacky","whale","whaleboat","whalebone","whaler","whales","whalesucker","whaling","wham","whammed","whamming","whammy","whang","whangs","whap","whapped","whapping","whaps","wharf","wharfage","wharves","WHAT","What","what","WHAT'D","What'd","what'd","WHAT'LL","What'll","what'll","WHAT'RE","What're","what're","WHAT'S","What's","what's","WHAT'VE","What've","what've","whatchamacallit","whatchamacallum","WHATD","Whatd","whatd","Whatever","whatever","WHATLL","Whatll","whatll","whatnot","WHATRE","Whatre","whatre","WHATS","Whats","whats","whatsis","whatsoever","WHATVE","Whatve","whatve","WHAT\u2019D","What\u2019d","what\u2019d","WHAT\u2019LL","What\u2019ll","what\u2019ll","WHAT\u2019RE","What\u2019re","what\u2019re","WHAT\u2019S","What\u2019s","what\u2019s","WHAT\u2019VE","What\u2019ve","what\u2019ve","wheal","wheat","wheatear","wheaten","wheatfield","wheatflake","wheatgrass","wheatworm","wheedle","wheedler","wheedles","wheedling","wheel","wheelbarrow","wheelbase","wheelchair","wheeled","wheeler","wheelhouse","wheelless","wheels","wheelwork","wheelwright","wheeze","wheezes","wheezily","wheeziness","wheezing","wheezingly","wheezy","whelk","whelm","whelms","whelp","WHEN","When","when","WHEN'S","When's","when's","whence","Whenever","whenever","WHENS","Whens","whens","WHEN\u2019S","When\u2019s","when\u2019s","WHERE","Where","where","WHERE'D","Where'd","where'd","WHERE'RE","Where're","where're","WHERE'S","Where's","where's","WHERE'VE","Where've","where've","whereabouts","Whereas","whereas","Whereby","whereby","WHERED","Whered","whered","wherefore","Wherein","wherein","WHERERE","Wherere","wherere","WHERES","Wheres","wheres","wheresoever","WHEREVE","Whereve","whereve","Wherever","wherever","wherewithal","WHERE\u2019D","Where\u2019d","where\u2019d","WHERE\u2019RE","Where\u2019re","where\u2019re","WHERE\u2019S","Where\u2019s","where\u2019s","WHERE\u2019VE","Where\u2019ve","where\u2019ve","wherry","whet","Whether","whether","whets","whetstone","whetted","whetting","whey","WHICH","Which","which","WHICH'S","Which's","which's","Whichever","whichever","WHICHS","Whichs","whichs","WHICH\u2019S","Which\u2019s","which\u2019s","whicker","whidah","whiff","whiffer","whiffletree","While","while","whim","whimper","whimpering","whimpers","whimsey","whimsical","whimsicality","whimsically","whimsier","whimsiest","whimsy","whin","whinberry","whinchat","whine","whiner","whines","whiney","whining","whinnied","whinny","whinnying","whinstone","whiny","whip","whipcord","whiplash","whiplike","whipped","whipper","whippersnapper","whippet","whipping","whippletree","whippoorwill","whippy","whips","whipsaw","whipsawed","whipsnake","whipstitch","whipstitching","whiptail","whir","whirl","whirler","whirligig","whirling","whirlpool","whirls","whirlwind","whirlybird","whirr","whirred","whirring","whirrs","whirs","whish","whishes","whisk","whisked","whisker","whiskered","whiskerless","whiskery","whiskey","whisking","whisks","whisky","whisper","whispered","whisperer","whispering","whispers","whist","whistle","whistleblower","whistled","whistler","whistles","whistlestop","whistling","whit","white","whitebait","whitecap","whitecup","whiteface","whitefish","whitefishes","whitefly","whitelash","whiten","whitened","whitener","whiteness","whitening","whitens","whiteout","whites","whitetail","whitethorn","whitethroat","whitewash","whitewashed","whitewashes","whitewashing","whitewater","whitewood","whitey","whiting","whitish","whitlavia","whitlow","whitlowwort","whitsunday","whitsuntide","whittle","whittled","whittler","whittles","whittling","whitweek","whiz","whizbang","whizz","whizzbang","whizzed","whizzes","whizzing","WHO","Who","who","WHO'D","Who'd","who'd","WHO'D'VE","Who'd've","who'd've","WHO'LL","Who'll","who'll","WHO'RE","Who're","who're","WHO'S","Who's","who's","WHO'VE","Who've","who've","whodunit","whoever","whole","wholehearted","wholeheartedly","wholeheartedness","wholemeal","wholeness","wholesale","wholesaler","wholesalers","wholesome","wholesomely","wholesomeness","wholly","WHOM","Whom","whom","whomp","whomping","WHOMST'D'VE","Whomst'd've","whomst'd've","WHOMST\u2019D\u2019VE","Whomst\u2019d\u2019ve","whomst\u2019d\u2019ve","whoop","whoopee","whooper","whooping","whoops","whoosh","whooshes","whooshing","whop","whopped","whopper","whopping","whops","whore","whoredom","whorehouse","whoremaster","whoremonger","whoreson","whorl","whorled","whorlywort","whortleberry","WHOS","Whos","whos","Whose","whose","WHOVE","Whove","whove","WHO\u2019D","Who\u2019d","who\u2019d","WHO\u2019D\u2019VE","Who\u2019d\u2019ve","who\u2019d\u2019ve","WHO\u2019LL","Who\u2019ll","who\u2019ll","WHO\u2019RE","Who\u2019re","who\u2019re","WHO\u2019S","Who\u2019s","who\u2019s","WHO\u2019VE","Who\u2019ve","who\u2019ve","WHY","Why","why","WHY'D","Why'd","why'd","WHY'RE","Why're","why're","WHY'S","Why's","why's","WHYD","Whyd","whyd","whydah","WHYRE","Whyre","whyre","WHYS","Whys","whys","WHY\u2019D","Why\u2019d","why\u2019d","WHY\u2019RE","Why\u2019re","why\u2019re","WHY\u2019S","Why\u2019s","why\u2019s","wiccan","wick","wicked","wickedly","wickedness","wicker","wickerwork","wicket","wickiup","wickliffe","wickup","wiclif","wicopy","wide","wideband","widely","widen","widened","wideness","widening","widens","wider","widespread","widest","widgeon","widget","widow","widowed","widower","widowhood","widowman","width","wieland","wield","wielded","wieldier","wieldiest","wielding","wields","wieldy","wienerwurst","wiesenboden","wife","wifelike","wifely","wifi","wig","wigeon","wigged","wigging","wiggle","wiggled","wiggler","wiggles","wiggliness","wiggling","wiggly","wigless","wigmaker","wigs","wigwag","wigwagged","wigwagging","wigwam","wikiup","wild","wildcat","wildcatted","wildcatter","wildcatting","wildebeest","wilderness","wildfire","wildfires","wildflower","wildfowl","wilding","wildlife","wildly","wildness","wile","Wiley","wilful","wilfully","wilfulness","wilier","wiliest","wiliness","WILL","Will","will","willet","willful","willfully","willfulness","willies","willing","willingly","willingness","willow","willowherb","willowware","willowy","willpower","wills","wilno","wilsonian","wilt","wilted","wilting","wilts","wily","wimble","wimp","wimpish","wimple","wimpy","win","wince","winces","wincey","winceyette","winch","winching","wincing","wind","windage","windbag","windblown","windbreak","windbreaker","windburn","windburned","windburnt","windcheater","winded","winder","windfall","windflower","windier","windiest","windily","windiness","winding","windjammer","windlass","windless","windlessness","windmill","window","windowpane","windows","windowsill","windpipe","winds","windscreen","windshield","windsock","windstorm","windsurf","windsurfing","windswept","windtalker","windup","windward","windy","wine","wineberry","wineglass","winemaker","winemaking","winepress","winery","wines","wineskin","winey","winfred","wing","wingback","winged","winger","winging","wingless","winglike","wingman","wings","wingspan","wingspread","wingstem","winier","winiest","wining","wink","winker","winking","winkle","winks","winless","winner","winners","winning","winningest","winnow","winnowing","winnows","wino","wins","winsome","winsomely","winsomeness","winter","wintera","winterberry","winterfed","winterfeed","wintergreen","winterier","winteriest","wintering","winterise","winterises","winterize","winterizes","winterizing","winters","wintertime","wintery","wintrier","wintriest","wintry","winwin","winy","wipe","wiped","wipeout","wiper","wipes","wiping","wire","wired","wirehair","wireless","wireman","wirer","wires","wiretap","wiretapper","wirework","wireworm","wirier","wiriest","wiriness","wiring","wiry","WISC.","Wisc.","wisc.","wisconsin","wisdom","wise","wiseacre","wisecrack","wisecracking","wisely","wiseness","wisenheimer","wisent","wiser","wish","wishbone","wished","wishes","wishful","wishfully","wishfulness","wishing","wisp","wispier","wispiest","wisplike","wispy","wistaria","wisteria","wistful","wistfully","wistfulness","wit","witch","witchcraft","witchery","witches","witchgrass","witching","witchlike","With","with","withal","withdraw","withdrawal","withdrawals","withdrawer","withdrawing","withdrawn","withdrawnness","withdraws","withdrew","withe","wither","withered","withering","witheringly","withers","withheld","withhold","withholder","withholding","withholds","Within","within","Without","without","withstand","withstander","withstanding","withstands","withstood","withy","witless","witloof","witness","witnessed","witnesser","witnesses","witnessing","wits","wittgensteinian","witticism","wittier","wittiest","wittily","wittiness","witting","wittingly","wittol","witty","wive","wivern","wives","wiz","wizard","wizardly","wizardry","wizen","wizened","wlan","wmd","wmo","wnw","WO","Wo","wo","woad","woadwaxen","wobble","wobbler","wobbles","wobbling","wobbly","wodan","woe","woebegone","woeful","woefully","woefulness","woes","wog","wok","woke","woken","wold","wolf","wolfbane","wolffish","wolffishes","wolfhound","wolfish","wolfishly","wolflike","wolfman","wolfram","wolframite","wolfsbane","wollastonite","wolverine","wolves","woman","womanhood","womanise","womanised","womaniser","womanisers","womanises","womanish","womanishness","womanising","womanize","womanized","womanizer","womanizers","womanizes","womanizing","womankind","womanlike","womanliness","womanly","womb","wombat","women","won","WON'T","Won't","won't","wonder","wonderberry","wondered","wonderer","wonderful","wonderfully","wonderfulness","wondering","wonderingly","wonderland","wonderment","wonders","wonderworking","wondrous","wondrously","wonk","wonkier","wonkiest","wonky","WONT","Wont","wont","wonted","wonton","WON\u2019T","Won\u2019t","won\u2019t","woo","wood","woodbine","woodborer","woodcarver","woodcarving","woodchuck","woodcock","woodcraft","woodcreeper","woodcut","woodcutter","wooded","wooden","woodenly","woodenness","woodenware","woodfern","woodgrain","woodgraining","woodhewer","woodier","woodiest","woodiness","woodland","woodlet","woodlice","woodlouse","woodman","woodpecker","woodpile","woodruff","woods","woodscrew","woodshed","woodsia","woodsier","woodsiest","woodsiness","woodsman","woodsy","woodwaxen","woodwind","woodwork","woodworker","woodworking","woodworm","woody","wooed","wooer","wooes","woof","woofer","woohoo","wooing","wool","woolen","woolens","woolgather","woolgatherer","woolgathering","woolies","woollen","woollens","woollier","woollies","woolliest","woolly","woolsorter","wooly","wooo","woooot","woosh","wooshes","wooshing","woow","woozier","wooziest","woozy","wop","worcestershire","word","wordbook","worded","wordfinder","wordier","wordiest","wordily","wordiness","wording","wordless","wordlessly","wordmonger","wordnet","wordplay","words","wordsmith","wordsworthian","wordy","wore","work","workable","workaday","workaholic","workaholism","workbag","workbasket","workbench","workboard","workbook","workbox","workday","worked","worker","workers","workfellow","workflow","workforce","workhorse","workhouse","working","workingman","workings","workload","workman","workmanlike","workmanship","workmate","workout","workpiece","workplace","workplaces","workroom","works","worksheet","workshop","workshops","workspace","workstation","worktable","workwear","workweek","world","worldlier","worldliest","worldliness","worldling","worldly","worlds","worldwide","worm","wormcast","wormhole","wormier","wormiest","wormlike","worms","wormseed","wormwood","wormy","worn","worried","worriedly","worrier","worries","worriment","worrisome","worry","worrying","worryingly","worrywart","worse","worsen","worsened","worsening","worsens","worship","worshiped","worshiper","worshipful","worshiping","worshipped","worshipper","worshippers","worshipping","worships","worst","worsted","wort","worth","worthful","worthier","worthiest","worthily","worthiness","worthless","worthlessly","worthlessness","worthwhile","worthwhileness","worthy","WOULD","Would","would","WOULD'VE","Would've","would've","WOULDN'T","Wouldn't","wouldn't","WOULDNT","Wouldnt","wouldnt","WOULDN\u2019T","Wouldn\u2019t","wouldn\u2019t","WOULDVE","Wouldve","wouldve","WOULD\u2019VE","Would\u2019ve","would\u2019ve","wound","wounded","wounding","wounds","woven","wow","wowing","wowow","wows","wowww","woz","wpm","wrack","wracked","wracking","wraith","wraithlike","wrangle","wrangler","wrangles","wrangling","wrap","wraparound","wrapped","wrapper","wrapping","wraps","wrasse","wrath","wrathful","wrathfully","wrawl","wreak","wreaked","wreaking","wreaks","wreath","wreathe","wreck","wreckage","wrecked","wrecker","wreckfish","wreckfishes","wrecking","wrecks","wrench","wrenched","wrenches","wrenching","wrest","wrested","wrester","wresting","wrestle","wrestler","wrestlers","wrestles","wrestling","wrests","wretch","wretched","wretchedly","wretchedness","wrick","wried","wrier","wriest","wriggle","wriggler","wriggles","wriggling","wriggly","wright","wring","wringer","wringing","wrings","wrinkle","wrinkled","wrinkleless","wrinkleproof","wrinkles","wrinkling","wrinkly","wrist","wristband","wristlet","wrists","wristwatch","writ","write","writer","writers","writes","writhe","writhed","writhen","writhes","writhing","writing","writings","written","wrong","wrongdoer","wrongdoers","wrongdoing","wrongdoings","wronged","wrongful","wrongfully","wrongfulness","wrongheaded","wrongheadedly","wronging","wrongly","wrongness","wrongs","Wrote","wrote","wroth","wrothful","wrought","wrung","wry","wryer","wryest","wryly","wrymouth","wryneck","wsw","wtc","wtf","wtff","wtfff","wto","wtv","wuerzburg","wulfenite","wulfila","wunderkind","wunderkinder","wurtzite","wuss","www","wyat","wyclif","wye","wynfrith","WYO.","Wyo.","wyo.","wyoming","wysiwyg","wytensin","wyvern","X-rays","x-rays","xanax","xanthate","xanthelasma","xanthemia","xanthine","xanthoma","xanthomatosis","xanthomonad","xanthophyl","xanthophyll","xanthopsia","xanthosis","xanthous","xenogeneic","xenogenesis","xenograft","xenolith","xenon","xenophobia","xenophobic","xenotime","xenotransplant","xenotransplantation","xeranthemum","xeric","xeroderma","xerodermia","xerographic","xerography","xeroma","xerophile","xerophthalmia","xerophthalmus","xerophyte","xerophytic","xeroradiography","xerostomia","xerotes","xerox","xiphisterna","xiphisternum","xizang","xmas","xo","xoxo","xoxoxo","xoxoxoxo","xylem","xylene","xylocaine","xylol","xylophone","xylophonist","xylose","xylosma","xyy","Y","y","Y'ALL","Y'all","y'all","Y'ALL'D'VE","Y'all'd've","y'all'd've","ya","yacca","yacht","yachting","yachts","yachtsman","yachtswoman","yack","yacking","yafo","yagi","yah","yahoo","yahve","yahveh","yahwe","yak","yakked","yakking","yakuza","YALL","Yall","yall","YALLDVE","Yalldve","yalldve","yaltopya","yam","yamaltu","yammer","yammering","yammers","yang","yangtze","yank","yanked","yankee","yanker","yanking","yanks","yanquapin","yap","yapped","yapping","yard","yardage","yardarm","yardbird","yarder","yardgrass","yardie","yardman","yardmaster","yards","yardstick","yare","yarer","yarest","yarmelke","yarmulka","yarmulke","yarn","yarrow","yashmac","yashmak","yataghan","yatobyo","yaup","yautia","yaw","yawl","yawn","yawner","yawning","yawns","yawp","yaws","yay","ybit","ycleped","YD.","Yd.","yd.","ye","yea","Yeah","yeah","year","yearbook","yearling","yearlong","yearly","yearn","yearner","yearning","yearningly","yearns","years","yeast","yeastier","yeastiest","yeastlike","yeasty","yeatsian","yeddo","yedo","yeees","yekaterinoslav","yell","yelled","yeller","yelling","yellow","yellowbird","yellowcake","yellowed","yellowfin","yellowhammer","yellowing","yellowish","yellowlegs","yellowness","yellowtail","yellowthroat","yellowwood","yells","yelp","yelped","yelping","yelps","Yemen","yemen","yemeni","yen","yenisey","yenned","yenning","yenta","yeoman","yeomanry","yep","Yes","yes","yeshiva","yeshivah","yeshivahs","yeshivoth","yess","yesss","yesterday","yesteryear","Yet","yet","yeti","yew","yezo","ygdrasil","yhvh","yhwh","yib","yibit","yid","yield","yielded","yielder","yielding","yieldingly","yields","yin","yip","yisrael","ylem","yob","yobbo","yobibit","yobibyte","yobo","yodel","yodeled","yodeling","yodelled","yodeller","yodelling","yodels","yodh","yoga","yoghourt","yoghourts","yoghurt","yoghurts","yogi","yogic","yogin","yogistic","yogurt","yogurts","yoke","yokel","yokelish","yoking","yolk","yon","yonder","yore","York","york","yottabit","yottabyte","YOU","You","you","YOU'D","You'd","you'd","YOU'D'VE","You'd've","you'd've","YOU'DN'T'VE","You'dn't've","you'dn't've","YOU'LL","You'll","you'll","YOU'LL'VE","You'll've","you'll've","YOU'RE","You're","you're","YOU'VE","You've","you've","YOUD","Youd","youd","YOULL","Youll","youll","young","younger","youngest","youngish","youngness","youngster","youngsters","younker","Your","your","YOURE","Youre","youre","yours","yourself","yourselves","youth","youthful","youthfully","youthfulness","youths","YOUVE","Youve","youve","YOU\u2019D","You\u2019d","you\u2019d","YOU\u2019DN\u2019T\u2019VE","You\u2019dn\u2019t\u2019ve","you\u2019dn\u2019t\u2019ve","YOU\u2019D\u2019VE","You\u2019d\u2019ve","you\u2019d\u2019ve","YOU\u2019LL","You\u2019ll","you\u2019ll","YOU\u2019LL\u2019VE","You\u2019ll\u2019ve","you\u2019ll\u2019ve","YOU\u2019RE","You\u2019re","you\u2019re","YOU\u2019VE","You\u2019ve","you\u2019ve","yowl","yowling","yowls","ypres","yr","ytterbite","ytterbium","yttrium","yucateco","yucca","yucky","yugoslav","yugoslavia","yugoslavian","yule","yuletide","yum","yuman","yummier","yummiest","yummy","yuppie","yurt","Y\u2019ALL","Y\u2019all","y\u2019all","Y\u2019ALL\u2019D\u2019VE","Y\u2019all\u2019d\u2019ve","y\u2019all\u2019d\u2019ve","zabaglione","zacharias","zaftig","zag","zaire","zairean","zairese","zakat","zalcitabine","zaman","zamang","Zambia","zambia","zambian","zamboorak","zamburak","zamburek","zamia","zamindari","zamindaris","zanier","zaniest","zantac","zany","zap","zapotec","zapotecan","zapped","zapper","zapping","zarathustra","zarf","zarontin","zarpanit","zarqa","zayin","zbit","zdv","zeal","Zealand","zealand","zealot","zealotry","zealots","zealous","zealously","zeaxanthin","zebibit","zebibyte","zebra","zebrawood","zebu","zecchini","zecchino","zed","zee","zend","zenith","zenithal","zeno","zeolite","zep","zeppo","zero","zeroes","zeroing","zeroth","zest","zestful","zestfully","zestfulness","zestily","zestril","zesty","zeta","zetland","zettabit","zettabyte","zeugma","zey","zib","zibit","zidovudine","zig","zigadene","ziggurat","zigzag","zigzagged","zigzagging","zikkurat","zikurat","zilch","zill","zillion","Zimbabwe","zimbabwe","zimbabwean","zimmer","zinacef","zinc","zing","zinger","zinkenite","zinnia","zinnwaldite","zion","zionist","zip","zipped","zipper","zippier","zippiest","zipping","zippo","zippy","zips","zirbanit","zircon","zirconia","zirconium","zit","zither","zithern","zithromax","ziti","zizz","zloty","zoa","zoaea","zoaeae","zoanthropy","zocor","zodiac","zodiacal","zoea","zoeae","zoeas","zoftig","zoic","zoisia","zolaesque","zoloft","zombi","zombie","zona","zonal","zonary","zone","zones","zoning","zonula","zonule","zoo","zooerastia","zooerasty","zooflagellate","zooid","zoolatry","zoological","zoologist","zoology","zoom","zoomastigote","zoomed","zooming","zoomorphism","zooms","zoon","zoonoses","zoonosis","zoonotic","zoophagous","zoophilia","zoophilism","zoophobia","zoophyte","zooplankton","zoopsia","zoosporangia","zoosporangium","zoospore","zootoxin","zori","zoril","zoroastrian","zoster","zovirax","zoysia","zubird","zucchini","zumbooruck","zumbooruk","zwieback","zydeco","zygnemales","zygodactyl","zygoma","zygomatic","zygomorphic","zygomorphous","zygomycotina","zygospore","zygote","zygotene","zygotic","zyloprim","zymase","zymogen","zymoid","zymology","zymolysis","zymolytic","zymosis","zymotic","zymurgy","zyrian","{","}","\xA3","\xA5","\xA9","\xAE","\u2013","\u2014","\u2018","\u2019","\u2019A","\u2019a","\u2019ALL","\u2019all","\u2019AM","\u2019Am","\u2019am","\u2019D","\u2019d","\u2019LL","\u2019ll","\u2019M","\u2019m","\u2019RE","\u2019Re","\u2019re","\u2019S","\u2019s","\u2019VE","\u2019ve","\u2019Y","\u2019y","\u201C","\u201D","\u2026","\u20A8","\u20A9","\u20B9","\u20BD","\u20BF","\u25B6","\u2600","\u2601","\u2605","\u2606","\u2611","\u2614","\u2615","\u261D","\u262F","\u2637","\u263A","\u2661","\u2665","\u2666","\u266A","\u266B","\u26A0","\u26A1","\u26BD","\u26C4","\u26D4","\u2708","\u270A","\u270B","\u270C","\u2713","\u2714","\u2716","\u2728","\u273F","\u2744","\u2757","\u2764","\u279C","\u27A1","\u2B50","\u{1F1EA}","\u{1F1F8}","\u{1F1FA}","\u{1F300}","\u{1F308}","\u{1F30A}","\u{1F30D}","\u{1F31A}","\u{1F31E}","\u{1F31F}","\u{1F334}","\u{1F337}","\u{1F338}","\u{1F339}","\u{1F33A}","\u{1F33B}","\u{1F33C}","\u{1F33F}","\u{1F340}","\u{1F341}","\u{1F342}","\u{1F343}","\u{1F346}","\u{1F349}","\u{1F34C}","\u{1F353}","\u{1F354}","\u{1F355}","\u{1F35F}","\u{1F366}","\u{1F369}","\u{1F36B}","\u{1F370}","\u{1F374}","\u{1F377}","\u{1F378}","\u{1F379}","\u{1F37A}","\u{1F37B}","\u{1F380}","\u{1F381}","\u{1F382}","\u{1F383}","\u{1F384}","\u{1F385}","\u{1F388}","\u{1F389}","\u{1F38A}","\u{1F393}","\u{1F3A4}","\u{1F3A5}","\u{1F3A7}","\u{1F3AD}","\u{1F3AE}","\u{1F3B5}","\u{1F3B6}","\u{1F3B8}","\u{1F3C0}","\u{1F3C3}","\u{1F3C6}","\u{1F3C8}","\u{1F3CA}","\u{1F412}","\u{1F413}","\u{1F423}","\u{1F425}","\u{1F427}","\u{1F42F}","\u{1F431}","\u{1F436}","\u{1F437}","\u{1F438}","\u{1F43C}","\u{1F43E}","\u{1F440}","\u{1F444}","\u{1F445}","\u{1F446}","\u{1F447}","\u{1F448}","\u{1F449}","\u{1F44A}","\u{1F44B}","\u{1F44C}","\u{1F44D}","\u{1F44E}","\u{1F44F}","\u{1F450}","\u{1F451}","\u{1F46B}","\u{1F46C}","\u{1F46D}","\u{1F46F}","\u{1F476}","\u{1F478}","\u{1F47B}","\u{1F47C}","\u{1F47D}","\u{1F47E}","\u{1F47F}","\u{1F480}","\u{1F481}","\u{1F483}","\u{1F484}","\u{1F485}","\u{1F486}","\u{1F489}","\u{1F48B}","\u{1F48D}","\u{1F48E}","\u{1F48F}","\u{1F490}","\u{1F491}","\u{1F493}","\u{1F494}","\u{1F495}","\u{1F496}","\u{1F497}","\u{1F498}","\u{1F499}","\u{1F49A}","\u{1F49B}","\u{1F49C}","\u{1F49D}","\u{1F49E}","\u{1F49F}","\u{1F4A3}","\u{1F4A4}","\u{1F4A5}","\u{1F4A6}","\u{1F4A8}","\u{1F4A9}","\u{1F4AA}","\u{1F4AB}","\u{1F4AD}","\u{1F4AF}","\u{1F4B0}","\u{1F4B8}","\u{1F4D2}","\u{1F4D6}","\u{1F4DA}","\u{1F4DD}","\u{1F4F7}","\u{1F51D}","\u{1F525}","\u{1F52A}","\u{1F52B}","\u{1F52E}","\u{1F600}","\u{1F601}","\u{1F602}","\u{1F603}","\u{1F604}","\u{1F605}","\u{1F606}","\u{1F607}","\u{1F608}","\u{1F609}","\u{1F60A}","\u{1F60B}","\u{1F60C}","\u{1F60D}","\u{1F60E}","\u{1F60F}","\u{1F610}","\u{1F611}","\u{1F612}","\u{1F613}","\u{1F614}","\u{1F615}","\u{1F616}","\u{1F618}","\u{1F619}","\u{1F61A}","\u{1F61B}","\u{1F61C}","\u{1F61D}","\u{1F61E}","\u{1F61F}","\u{1F620}","\u{1F621}","\u{1F622}","\u{1F623}","\u{1F624}","\u{1F625}","\u{1F627}","\u{1F628}","\u{1F629}","\u{1F62A}","\u{1F62B}","\u{1F62C}","\u{1F62D}","\u{1F62E}","\u{1F62F}","\u{1F630}","\u{1F631}","\u{1F632}","\u{1F633}","\u{1F634}","\u{1F635}","\u{1F636}","\u{1F637}","\u{1F638}","\u{1F639}","\u{1F63B}","\u{1F63D}","\u{1F63F}","\u{1F640}","\u{1F645}","\u{1F646}","\u{1F647}","\u{1F648}","\u{1F649}","\u{1F64A}","\u{1F64B}","\u{1F64C}","\u{1F64F}","\u{1F697}","\u{1F6AB}","\u{1F6AC}","\u{1F6B6}"]},tokenType:{list:["unk","word","number","url","email","mention","hashtag","emoji","emoticon","time","ordinal","currency","punctuation","symbol","tabCRLF","wordRP","alpha","apos","decade","shortForm"]},pos:{list:["UNK","ADJ","ADP","ADV","AUX","CCONJ","DET","INTJ","NOUN","NUM","PART","PRON","PROPN","PUNCT","SPACE","SYM","VERB","X","SCONJ"]},posClusters:{list:["$%^oov^%$","NUM","SPACE","PUNCT","SYM","CCONJ","NOUN","DET","AUX","AUX_PART","PRON","ADJ","PROPN","VERB","ADV","NOUN_VERB","ADJ_VERB","ADJ_NOUN","ADP_ADV","ADP","ADJ_ADP_ADV","ADJ_ADP_ADV_NOUN","ADJ_ADV","ADJ_NOUN_VERB","ADJ_ADV_NOUN","ADV_NOUN","INTJ","ADV_INTJ","ADJ_ADV_DET","DET_NOUN","ADJ_DET","ADP_ADV_SCONJ","SCONJ","ADJ_ADP_ADV_NOUN_VERB","ADV_NOUN_VERB","AUX_NOUN","ADJ_ADV_NOUN_VERB","ADJ_ADV_VERB","NOUN_PROPN","ADJ_PROPN","ADV_CCONJ","AUX_NOUN_VERB","PROPN_VERB","X","ADP_NOUN","AUX_VERB","ADV_VERB","CCONJ_DET","ADV_CCONJ_DET","ADJ_NOUN_X","ADP_VERB","ADJ_ADP_SCONJ","ADJ_AUX_NOUN_VERB","INTJ_NOUN","ADJ_ADV_DET_NOUN","DET_PRON","ADJ_ADP_NOUN_VERB","AUX_PROPN","NOUN_PRON_VERB","ADJ_CCONJ_NOUN","ADJ_AUX_NOUN","PART","ADJ_ADP_ADV_VERB","ADJ_ADV_PROPN","DET_INTJ","ADJ_ADV_DET_INTJ_NOUN","ADV_PRON","ADJ_ADV_INTJ_NOUN","ADJ_ADV_INTJ_NOUN_VERB","NUM_PRON","CCONJ_NOUN","INTJ_VERB","ADJ_INTJ_NOUN_VERB","NOUN_NUM","ADV_SCONJ","ADP_DET_PRON","ADP_DET_PRON_SCONJ","ADP_NOUN_VERB","ADP_PART","ADJ_ADP","NOUN_X","ADJ_ADV_INTJ","NOUN_SCONJ_VERB","PRON_PROPN","ADJ_ADP_NOUN","INTJ_NOUN_VERB","NOUN_PRON","NOUN_NUM_VERB"]}},tcat:{hash:{unk:0,word:1,number:2,url:3,email:4,mention:5,hashtag:6,emoji:7,emoticon:8,time:9,ordinal:10,currency:11,punctuation:12,symbol:13,tabCRLF:14,wordRP:15,alpha:16,apos:17,decade:18,shortForm:19},list:["unk","word","number","url","email","mention","hashtag","emoji","emoticon","time","ordinal","currency","punctuation","symbol","tabCRLF","wordRP","alpha","apos","decade","shortForm"]},pos:{hash:{UNK:0,ADJ:1,ADP:2,ADV:3,AUX:4,CCONJ:5,DET:6,INTJ:7,NOUN:8,NUM:9,PART:10,PRON:11,PROPN:12,PUNCT:13,SPACE:14,SYM:15,VERB:16,X:17,SCONJ:18},list:["UNK","ADJ","ADP","ADV","AUX","CCONJ","DET","INTJ","NOUN","NUM","PART","PRON","PROPN","PUNCT","SPACE","SYM","VERB","X","SCONJ"]},trex:{ltc:[["^[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF]+$","i",1],['^[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF]+[\\\u2019\\\u201D\\"\\]\\)\\}\\\u2026\\,\\.\\!\\;\\?\\/\\:]$',"i",15],["^[\\+\\-]?\\d+(?:[\\.\\,\\-\\/\\:]?(?=(?\\d+))\\k)*$","",2],["^(?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?:(?:[a-z\\u00A1-\\uFFFF\\d]-*)*[a-z\\u00A1-\\uFFFF\\d]+)(?:\\.(?:[a-z\\u00A1-\\uFFFF\\d]-*)*[a-z\\u00A1-\\uFFFF\\d]+)*(?:\\.(?:[a-z\\u00A1-\\uFFFF]{2,})))(?::\\d{2,5})?(?:[\\/?#]\\S*)?$","i",3],["^[-!#$%&'*+\\/=?^\\w{|}~](?:\\.?[-!#$%&'*+\\/=?^\\w`{|}~])*@[a-z0-9](?:-?\\.?[a-z0-9])*(?:\\.[a-z](?:-?[a-z0-9])*)+$","i",4],["^\\@\\w+$","i",5],["^\\#[a-z][a-z0-9]*$","i",6],["^[:;]['\u2019]?-?[\\)\\(]+$|^[:;]-?[\\]\\}3>\\[\\{@oO\\*PpDS\\/\\|X\\?\\\\]$|^<[\\\\\\/]?3+$|^[\\)\\(]-?'?[:;]$|^\\\\o\\/$","i",8],["^(?:\\d|[01]\\d|2[0-3]):?(?:[0-5][0-9])?(?:[ap]\\.?m\\.?|hours|hrs)$","i",9],["^1\\dth$|^[04-9]th$|^1st$|^2nd$|^3rd$|^[02-9]1st$|^[02-9]2nd$|^[02-9]3rd$|^[02-9][04-9]th$|^\\d+\\d[04-9]th$|^\\d+\\d1st$|^\\d+\\d2nd$|^\\d+\\d3rd$","",10],["^\\\u20BF+$|^\\\u20BD+$|^\\\u20B9+$|^\\\u20A8$|^\\$+$|^\\\xA3+$|^\\\xA5+$|^\\\u20AC+$|^\\\u20A9+$|^US\\$$|^C\\$$|^A\\$$|^USD$|^AUD$|^INR$|^GBP$","i",11],["^(?:\\.{2,}|\\-\\-|\\\u2013\\\u2013)$|^[\\\u2019\\'\\\u2018\\\u2019\\`\\\u201C\\\u201D\\\"\\[\\]\\(\\)\\{\\}\\\u2026\\,\\.\\!\\;\\?\\/\\:\\-\\\u2013\\\u2014]$","",12],["^[\\~\\@\\#\\%\\^\\+\\=\\*\\|\\<\\>\\&\\u00A7\\u00A9\\u00B1\\u00F7\\u00D7\\u00B0]$","",13],["^[\\'\\\u2019]?\\d0s(?![\\'\\\u2019])$|[1-2]\\d\\d0s$","",18],["[\\t\\r\\n]+","",14]],rtc:[["(?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?:(?:[a-z\\u00A1-\\uFFFF\\d]-*)*[a-z\\u00A1-\\uFFFF\\d]+)(?:\\.(?:[a-z\\u00A1-\\uFFFF\\d]-*)*[a-z\\u00A1-\\uFFFF\\d]+)*(?:\\.(?:[a-z\\u00A1-\\uFFFF]{2,})))(?::\\d{2,5})?(?:[\\/?#]\\S*)?","gi",3],["[-!#$%&'*+\\/=?^\\w{|}~](?:\\.?[-!#$%&'*+\\/=?^\\w`{|}~])*@[a-z0-9](?:-?\\.?[a-z0-9])*(?:\\.[a-z](?:-?[a-z0-9])*)+","gi",4],["\\@\\w+","g",5],["\\#[a-z][a-z0-9]*","gi",6],["[\\u{1F300}-\\u{1F5FF}\\u{1F900}-\\u{1F9FF}\\u{1F600}-\\u{1F64F}\\u{1F680}-\\u{1F6FF}\\u{2600}-\\u{26FF}\\u{2700}-\\u{27BF}\\u{1F1E6}-\\u{1F1FF}\\u{1F191}-\\u{1F251}\\u{1F004}\\u{1F0CF}\\u{1F170}-\\u{1F171}\\u{1F17E}-\\u{1F17F}\\u{1F18E}\\u{3030}\\u{2B50}\\u{2B55}\\u{2934}-\\u{2935}\\u{2B05}-\\u{2B07}\\u{2B1B}-\\u{2B1C}\\u{3297}\\u{3299}\\u{303D}\\u{00A9}\\u{00AE}\\u{2122}\\u{23F3}\\u{24C2}\\u{23E9}-\\u{23EF}\\u{25B6}\\u{23F8}-\\u{23FA}]","gu",7],["[:;]['\u2019]?-?[\\)\\(]+|[:;]-?[\\]\\}3>\\[\\{@oO\\*PpDS\\/\\|X\\?\\\\]|<[\\\\\\/]?3+|[\\)\\(]-?'?[:;]|\\\\o\\/","gi",8],["(?:\\d|[01]\\d|2[0-3]):?(?:[0-5][0-9])?(?:[ap]\\.?m\\.?|hours|hrs)","gi",9],["1\\dth|[04-9]th|1st|2nd|3rd|[02-9]1st|[02-9]2nd|[02-9]3rd|[02-9][04-9]th|\\d+\\d[04-9]th|\\d+\\d1st|\\d+\\d2nd|\\d+\\d3rd","g",10],["\\\u20BF+|\\\u20BD+|\\\u20B9+|\\\u20A8+|\\$+|\\\xA3+|\\\xA5+|\\\u20AC+|\\\u20A9+|US\\$|C\\$|A\\$|USD|AUD|INR|GBP","g",11],["[\\'\\\u2019]?\\d0s(?![\\'\\\u2019])|[1-2]\\d\\d0s","g",18],['[\\\u2018\\`\\\u201C\\\u201D\\"\\[\\]\\(\\)\\{\\}\\\u2026\\!\\;\\?]',"g",12],["[\\'\\\u2019]s$","gi",17],["[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF][a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF0-9]*(?:[\\.\\-\\\u2013\\'\\\u2019\\&]?[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF0-9]+\\.?)+","gi",1],["[\\+\\-]?\\d+(?:[\\.\\,\\-\\/\\:]?\\d+)*","g",2],["[\\~\\@\\#\\%\\^\\+\\=\\*\\|\\<\\>\\&\\u00A7\\u00A9\\u00B1\\u00F7\\u00D7\\u00B0]","g",13],["(?:[a-z]\\.)","gi",1],["(?:\\.{2,}|\\-\\-|\\\u2013\\\u2013)|[\\-\\\u2013\\\u2014\\.\\'\\\u2019\\/\\:\\,]","g",12],["[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF]+","gi",1]],lex:[["^[\\'\\\u2019]?[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF][a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF0-9]*(?:[\\.\\-\\\u2013\\'\\\u2019\\&]?[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF0-9.]+)*$","i",1],["^\\d+(?:[\\.\\,\\-\\/\\:]?(?=(?\\d+))\\k)*$","",2],["^1\\dth$|^[04-9]th$|^1st$|^2nd$|^3rd$|^[02-9]1st$|^[02-9]2nd$|^[02-9]3rd$|^[02-9][04-9]th$|^\\d+\\d[04-9]th$|^\\d+\\d1st$|^\\d+\\d2nd$|^\\d+\\d3rd$","",10],["^\\\u20BF+$|^\\\u20BD+$|^\\\u20B9+$|^\\\u20A8$|^\\$+$|^\\\xA3+$|^\\\xA5+$|^\\\u20AC+$|^\\\u20A9+$|^US\\$$|^C\\$$|^A\\$$|^USD$|^AUD$|^INR$|^GBP$","i",11],["^(?:\\.{2,}|\\-\\-|\\\u2013\\\u2013)$|^[\\\u2019\\'\\\u2018\\\u2019\\`\\\u201C\\\u201D\\\"\\[\\]\\(\\)\\{\\}\\\u2026\\,\\.\\!\\;\\?\\/\\:\\-\\\u2013\\\u2014]$","",12],["^[\\~\\@\\#\\%\\^\\+\\=\\*\\|\\<\\>\\&\\u00A7\\u00A9\\u00B1\\u00F7\\u00D7\\u00B0]$","",13],["^[\\'\\\u2019]?\\d0s(?![\\'\\\u2019])$|[1-2]\\d\\d0s$","",18],["[\\t\\r\\n]+","",14],["^[:;]['\u2019]?-?[\\)\\(]+$|^[:;]-?[\\]\\}3>\\[\\{@oO\\*PpDS\\/\\|X\\?\\\\]$|^<[\\\\\\/]?3+$|^[\\)\\(]-?'?[:;]$|^\\\\o\\/$","i",8],["^[\\u{1F300}-\\u{1F5FF}\\u{1F900}-\\u{1F9FF}\\u{1F600}-\\u{1F64F}\\u{1F680}-\\u{1F6FF}\\u{2600}-\\u{26FF}\\u{2700}-\\u{27BF}\\u{1F1E6}-\\u{1F1FF}\\u{1F191}-\\u{1F251}\\u{1F004}\\u{1F0CF}\\u{1F170}-\\u{1F171}\\u{1F17E}-\\u{1F17F}\\u{1F18E}\\u{3030}\\u{2B50}\\u{2B55}\\u{2934}-\\u{2935}\\u{2B05}-\\u{2B07}\\u{2B1B}-\\u{2B1C}\\u{3297}\\u{3299}\\u{303D}\\u{00A9}\\u{00AE}\\u{2122}\\u{23F3}\\u{24C2}\\u{23E9}-\\u{23EF}\\u{25B6}\\u{23F8}-\\u{23FA}]+$","u",7]],helpers:{splitter:["([ ]+|[\\n\\r\\t]+)",""],anyWithRP:[`^([^\\\u2018\\\u201C\\"\\[\\(\\{\\\u2026\\-\\\u2013].+?)(\\.+|\u2013\u2013|--|[\\\u2019\\'\\\u201D\\"\\\u2026\\,\\.\\!\\;\\?\\-\\\u2013\\:\\u0964\\u0965]$|(?:\\'s))$`,""],anyWithLP:[`^(\u2013\u2013|--|[\\\u2018\\'\\\u201C\\"\\[\\(\\{\\\u2026\\-\\\u2013])(.+?[^\\\u2019\\'\\\u201D\\"\\]\\)\\}\\\u2026\\,\\.\\!\\;\\?\\-\\\u2013\\:\\u0964\\u0965])$`,""],LPanyRP:[`^(\u2013\u2013|--|[\\\u2018\\\u201C\\"\\[\\(\\{\\\u2026\\-\\\u2013])(.+?)(\u2013\u2013|--|[\\\u2019\\'\\\u201D\\"\\]\\)\\}\\\u2026\\,\\!\\;\\?\\-\\\u2013\\:\\u0964\\u0965]$|(?:\\'s))$`,""],Emoji:["[\\u{1F300}-\\u{1F5FF}\\u{1F900}-\\u{1F9FF}\\u{1F600}-\\u{1F64F}\\u{1F680}-\\u{1F6FF}\\u{2600}-\\u{26FF}\\u{2700}-\\u{27BF}\\u{1F1E6}-\\u{1F1FF}\\u{1F191}-\\u{1F251}\\u{1F004}\\u{1F0CF}\\u{1F170}-\\u{1F171}\\u{1F17E}-\\u{1F17F}\\u{1F18E}\\u{3030}\\u{2B50}\\u{2B55}\\u{2934}-\\u{2935}\\u{2B05}-\\u{2B07}\\u{2B1B}-\\u{2B1C}\\u{3297}\\u{3299}\\u{303D}\\u{00A9}\\u{00AE}\\u{2122}\\u{23F3}\\u{24C2}\\u{23E9}-\\u{23EF}\\u{25B6}\\u{23F8}-\\u{23FA}]","gu"]}},xpansions:"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",preserve:{prefix:{e:!0,E:!0,a:!0,A:!0,u:!0,U:!0,x:!0,X:!0,anti:!0,Anti:!0,ANTI:!0,agro:!0,Agro:!0,AGRO:!0,be:!0,Be:!0,BE:!0,bi:!0,Bi:!0,BI:!0,bio:!0,Bio:!0,BIO:!0,co:!0,Co:!0,CO:!0,counter:!0,Counter:!0,COUNTER:!0,cross:!0,Cross:!0,CROSS:!0,cyber:!0,Cyber:!0,CYBER:!0,de:!0,De:!0,DE:!0,eco:!0,Eco:!0,ECO:!0,ex:!0,Ex:!0,EX:!0,extra:!0,Extra:!0,EXTRA:!0,inter:!0,Inter:!0,INTER:!0,intra:!0,Intra:!0,INTRA:!0,macro:!0,Macro:!0,MACRO:!0,mega:!0,Mega:!0,MEGA:!0,micro:!0,Micro:!0,MICRO:!0,mid:!0,Mid:!0,MID:!0,mini:!0,Mini:!0,MINI:!0,multi:!0,Multi:!0,MULTI:!0,neo:!0,Neo:!0,NEO:!0,non:!0,Non:!0,NON:!0,over:!0,Over:!0,OVER:!0,pan:!0,Pan:!0,PAN:!0,para:!0,Para:!0,PARA:!0,peri:!0,Peri:!0,PERI:!0,post:!0,Post:!0,POST:!0,pre:!0,Pre:!0,PRE:!0,pro:!0,Pro:!0,PRO:!0,pseudo:!0,Pseudo:!0,PSEUDO:!0,quasi:!0,Quasi:!0,QUASI:!0,re:!0,Re:!0,RE:!0,semi:!0,Semi:!0,SEMI:!0,sub:!0,Sub:!0,SUB:!0,super:!0,Super:!0,SUPER:!0,tri:!0,Tri:!0,TRI:!0,ultra:!0,Ultra:!0,ULTRA:!0,un:!0,Un:!0,UN:!0,uni:!0,Uni:!0,UNI:!0,vice:!0,Vice:!0,VICE:!0},suffix:{esque:!0,ESQUE:!0,fest:!0,FEST:!0,fold:!0,FOLD:!0,gate:!0,GATE:!0,itis:!0,ITIS:!0,less:!0,LESS:!0,most:!0,MOST:!0,rama:!0,RAMA:!0,wise:!0,WISE:!0}}}});var wKA=GA((tsi,_KA)=>{var wGr=mKA(),DKA=function(A){let r;try{r=atob(A)}catch{throw Error(`Unsupproted browser or node.js version; - Refer to https://developer.mozilla.org/en-US/docs/Web/API/atob#browser_compatibility for supported versions.`)}var t=r.length,i=new Uint8Array(t);for(let o=0;oi.hash[g]||0));return A};_KA.exports=vGr});var yKA=GA((isi,vKA)=>{var yGr=wKA(),CGr=function(){var A=yGr();A.packing.efList=[];for(let r in A.packing.layout)A.packing.layout[r][3]===0&&(A.features[r].intrinsicSize=A.features[r].list.length,A.features[r].index=A.features[r].list.length,A.features[r].maxIndex=A.packing.layout[r][1]>>>A.packing.layout[r][2]),A.packing.layout[r][4]===1&&A.packing.efList.push(r);return A.features.lexeme.intrinsicSize=A.features.lexeme.list.length,A.features.lexeme.index=A.features.lexeme.list.length,A};vKA.exports=CGr});var IKA=GA((nsi,CKA)=>{var OV=new Array(3),IGr=/^(?:0?[1-9]|[12]\d|30|31)[/.-](?:0?[1-9]|1[0-2])(?:[/.-]([12]\d)?\d\d)$/,bGr=/^(?:0?[1-9]|1[0-2])[/.-](?:0?[1-9]|[12]\d|30|31)(?:[/.-]([12]\d)?\d\d)$/,OGr=/^(?:[12]\d\d\d)[/.-](?:0?[1-9]|1[0-2])[/.-](?:0?[1-9]|[12]\d|30|31)$/,MGr=/^(?:\d|[01]\d|2[0-3]):(?:\d|[0-5][0-9])$/,kGr=/[,.]/g,xGr=/,(?=.*?\.)/g,HGr=/,/g,SGr=/\./,FGr=function(A,r){var t=+(SGr.test(A)?A.replace(xGr,""):A.replace(HGr,""));if(isNaN(t)){let i=A.split("/");return i.length!==2||isNaN(i[0])||isNaN(i[1])?IGr.test(A)||bGr.test(A)||OGr.test(A)?1080049:MGr.test(A)?1080051:r:1080046}return t>=1200&&t<=2100&&A==t?1080045:1080046};OV[0]=function(A,r){let t=r.value(A);if(t===void 0||t===` -`||t===` +// ../node_modules/.pnpm/commander@11.1.0/node_modules/commander/index.js +var require_commander = __commonJS({ + "../node_modules/.pnpm/commander@11.1.0/node_modules/commander/index.js"(exports2, module2) { + var { Argument: Argument2 } = require_argument(); + var { Command: Command2 } = require_command(); + var { CommanderError: CommanderError2, InvalidArgumentError: InvalidArgumentError2 } = require_error(); + var { Help: Help2 } = require_help(); + var { Option: Option2 } = require_option(); + exports2 = module2.exports = new Command2(); + exports2.program = exports2; + exports2.Command = Command2; + exports2.Option = Option2; + exports2.Argument = Argument2; + exports2.Help = Help2; + exports2.CommanderError = CommanderError2; + exports2.InvalidArgumentError = InvalidArgumentError2; + exports2.InvalidOptionArgumentError = InvalidArgumentError2; + } +}); -`||t.replace(kGr,"")==="")return A;var i=r.property(A,"nerHint");if(i)return i+108e4;switch(r.property(A,"tokenType")){case"number":return FGr(t,A);case"ordinal":return 1080047;case"time":return 1080048;case"tabCRLF":return 1080050;case"email":return 1080052;case"emoji":return 1080053;case"emoticon":return 1080054;case"hashtag":return 1080055;case"mention":return 1080056;case"url":return 1080057;default:return A}},OV[1]=void 0,OV[2]=void 0,CKA.exports=OV});var bKA=GA((asi,RGr)=>{RGr.exports=['[100,2126,{"0":{"9":1961,"40":1953,"47":1947,"219":1549,"1841":2095,"3361":1959,"4173":1886,"8001":1878,"8049":1876,"8056":1957,"13927":1916,"17725":1910,"19537":1528,"24289":1890,"26972":2094,"27001":1892,"32791":1874,"34173":1861,"37486":1888,"45276":1882,"47341":2041,"47365":2101,"47376":2102,"47396":2100,"47417":2099,"47792":1884,"48884":2093,"50853":2097,"51014":1880,"51561":2096,"61535":1853,"62019":1908,"69717":1872,"76999":1935,"77052":1870,"78222":2098,"86772":1955,"87219":1949,"87220":1951,"1080001":753,"1080002":758,"1080003":1098,"1080004":1,"1080005":2084,"1080006":2085,"1080007":2086,"1080008":2087,"1080009":2088,"1080011":2089,"1080012":2090,"1080013":8,"1080014":1639,"1080015":457,"1080016":464,"1080017":743,"1080018":748,"1080019":1580,"1080020":1193,"1080021":2104,"1080022":2105,"1080023":2106,"1080024":2107,"1080025":2108,"1080026":2113,"1080027":2073,"1080028":2065,"1080029":1963,"1080030":2066,"1080031":2069,"1080032":1075,"1080033":2067,"1080036":2112,"1080037":1538,"1080039":1506,"1080040":1912,"1080041":1533,"1080042":2071,"1080043":15,"1080044":2109,"1080045":1593,"1080046":1596,"1080047":2082,"1080048":1240,"1080049":2068,"1080051":529,"1080052":2121,"1080053":2122,"1080054":2123,"1080055":2124,"1080056":2125,"1080057":2126,"2070003":0},"1":{"1080014":2,"2070003":2083},"2":{"52424":3,"2070003":0},"3":{"19537":1126,"77052":4,"1080032":447,"1080037":1127,"1080045":1124,"2070003":0},"4":{"19537":450,"1080032":5,"1080037":451,"2070003":0},"5":{"19537":6,"1080037":7,"2070003":0},"8":{"47":1542,"12850":1079,"87219":1544,"87220":1546,"1080014":9,"2070003":2091},"9":{"52424":10,"2070003":0},"10":{"19537":1128,"77052":11,"1080032":452,"1080037":1129,"1080045":1125,"2070003":0},"11":{"19537":455,"1080032":12,"1080037":456,"2070003":0},"12":{"19537":13,"1080037":14,"2070003":0},"15":{"34173":1414,"61535":1406,"1080001":187,"1080002":192,"1080003":439,"1080014":1130,"1080015":16,"1080016":23,"1080017":177,"1080018":182,"1080048":525,"1080051":42,"2070003":2110},"16":{"219":471,"3361":17,"47818":991,"52020":1841,"54246":1842,"1080014":30,"1080034":169,"2070003":0},"17":{"219":18,"1080014":476,"2070003":0},"18":{"1080014":19,"2070003":0},"19":{"1080022":20,"1080023":21,"1080024":22,"2070003":480},"23":{"219":481,"3361":24,"47818":1005,"52020":1843,"54246":1844,"1080014":36,"1080034":173,"2070003":0},"24":{"219":25,"1080014":486,"2070003":0},"25":{"1080014":26,"2070003":0},"26":{"1080022":27,"1080023":28,"1080024":29,"2070003":490},"30":{"219":503,"52424":31,"1080022":1179,"1080023":1180,"1080024":1181,"2070003":1657},"31":{"219":32,"1080022":507,"1080023":508,"1080024":509,"2070003":0},"32":{"1080022":33,"1080023":34,"1080024":35,"2070003":0},"36":{"219":510,"52424":37,"1080022":1182,"1080023":1183,"1080024":1184,"2070003":1658},"37":{"219":38,"1080022":514,"1080023":515,"1080024":516,"2070003":0},"38":{"1080022":39,"1080023":40,"1080024":41,"2070003":0},"42":{"1496":1747,"2223":705,"5557":1742,"5733":730,"10219":542,"12631":1748,"12799":720,"18598":1743,"24379":725,"24626":1746,"26643":1741,"32599":1737,"34726":700,"36445":43,"36450":47,"38610":557,"40655":1738,"46316":1744,"49089":715,"49197":1739,"54279":710,"55528":1745,"60712":1740,"83058":1736,"1080034":51,"2070003":0},"43":{"1496":1212,"2223":69,"5557":1207,"5733":94,"10219":44,"12631":1213,"12799":84,"18598":1208,"24379":89,"24626":1211,"26643":1206,"32599":1202,"34726":64,"38610":55,"40655":1203,"46316":1209,"49089":79,"49197":1204,"54279":74,"55528":1210,"60712":1205,"83058":1201,"2070003":1733},"44":{"1080033":45,"2070003":0},"45":{"77841":46,"2070003":0},"47":{"1496":1225,"2223":104,"5557":1220,"5733":129,"10219":48,"12631":1226,"12799":119,"18598":1221,"24379":124,"24626":1224,"26643":1219,"32599":1215,"34726":99,"38610":58,"40655":1216,"46316":1222,"49089":114,"49197":1217,"54279":109,"55528":1223,"60712":1218,"83058":1214,"2070003":1734},"48":{"1080033":49,"2070003":0},"49":{"77841":50,"2070003":0},"51":{"1496":1238,"2223":139,"5557":1233,"5733":164,"10219":52,"12631":1239,"12799":154,"18598":1234,"24379":159,"24626":1237,"26643":1232,"32599":1228,"34726":134,"38610":61,"40655":1229,"46316":1235,"49089":149,"49197":1230,"54279":144,"55528":1236,"60712":1231,"83058":1227,"2070003":1735},"52":{"1080033":53,"2070003":0},"53":{"77841":54,"2070003":0},"55":{"72743":56,"2070003":0},"56":{"77841":57,"2070003":0},"58":{"72743":59,"2070003":0},"59":{"77841":60,"2070003":0},"61":{"72743":62,"2070003":0},"62":{"77841":63,"2070003":0},"64":{"19550":67,"72743":65,"2070003":0},"65":{"77841":66,"2070003":0},"67":{"77841":68,"2070003":0},"69":{"19550":72,"72743":70,"2070003":0},"70":{"77841":71,"2070003":0},"72":{"77841":73,"2070003":0},"74":{"19550":77,"72743":75,"2070003":0},"75":{"77841":76,"2070003":0},"77":{"77841":78,"2070003":0},"79":{"19550":82,"72743":80,"2070003":0},"80":{"77841":81,"2070003":0},"82":{"77841":83,"2070003":0},"84":{"19550":87,"72743":85,"2070003":0},"85":{"77841":86,"2070003":0},"87":{"77841":88,"2070003":0},"89":{"19550":92,"72743":90,"2070003":0},"90":{"77841":91,"2070003":0},"92":{"77841":93,"2070003":0},"94":{"19550":97,"72743":95,"2070003":0},"95":{"77841":96,"2070003":0},"97":{"77841":98,"2070003":0},"99":{"19550":102,"72743":100,"2070003":0},"100":{"77841":101,"2070003":0},"102":{"77841":103,"2070003":0},"104":{"19550":107,"72743":105,"2070003":0},"105":{"77841":106,"2070003":0},"107":{"77841":108,"2070003":0},"109":{"19550":112,"72743":110,"2070003":0},"110":{"77841":111,"2070003":0},"112":{"77841":113,"2070003":0},"114":{"19550":117,"72743":115,"2070003":0},"115":{"77841":116,"2070003":0},"117":{"77841":118,"2070003":0},"119":{"19550":122,"72743":120,"2070003":0},"120":{"77841":121,"2070003":0},"122":{"77841":123,"2070003":0},"124":{"19550":127,"72743":125,"2070003":0},"125":{"77841":126,"2070003":0},"127":{"77841":128,"2070003":0},"129":{"19550":132,"72743":130,"2070003":0},"130":{"77841":131,"2070003":0},"132":{"77841":133,"2070003":0},"134":{"19550":137,"72743":135,"2070003":0},"135":{"77841":136,"2070003":0},"137":{"77841":138,"2070003":0},"139":{"19550":142,"72743":140,"2070003":0},"140":{"77841":141,"2070003":0},"142":{"77841":143,"2070003":0},"144":{"19550":147,"72743":145,"2070003":0},"145":{"77841":146,"2070003":0},"147":{"77841":148,"2070003":0},"149":{"19550":152,"72743":150,"2070003":0},"150":{"77841":151,"2070003":0},"152":{"77841":153,"2070003":0},"154":{"19550":157,"72743":155,"2070003":0},"155":{"77841":156,"2070003":0},"157":{"77841":158,"2070003":0},"159":{"19550":162,"72743":160,"2070003":0},"160":{"77841":161,"2070003":0},"162":{"77841":163,"2070003":0},"164":{"19550":167,"72743":165,"2070003":0},"165":{"77841":166,"2070003":0},"167":{"77841":168,"2070003":0},"169":{"1496":1339,"2223":220,"5557":1334,"5733":245,"10219":170,"12631":1340,"12799":235,"18598":1335,"24379":240,"24626":1338,"26643":1333,"32599":1329,"34726":215,"38610":197,"40655":1330,"46316":1336,"49089":230,"49197":1331,"54279":225,"55528":1337,"60712":1332,"83058":1328,"2070003":1835},"170":{"1080033":171,"2070003":0},"171":{"77841":172,"2070003":0},"173":{"1496":1352,"2223":255,"5557":1347,"5733":280,"10219":174,"12631":1353,"12799":270,"18598":1348,"24379":275,"24626":1351,"26643":1346,"32599":1342,"34726":250,"38610":200,"40655":1343,"46316":1349,"49089":265,"49197":1344,"54279":260,"55528":1350,"60712":1345,"83058":1341,"2070003":1836},"174":{"1080033":175,"2070003":0},"175":{"77841":176,"2070003":0},"177":{"47818":1019,"52020":1845,"54246":1846,"1080034":178,"2070003":0},"178":{"1496":1365,"2223":290,"5557":1360,"5733":315,"10219":179,"12631":1366,"12799":305,"18598":1361,"24379":310,"24626":1364,"26643":1359,"32599":1355,"34726":285,"38610":203,"40655":1356,"46316":1362,"49089":300,"49197":1357,"54279":295,"55528":1363,"60712":1358,"83058":1354,"2070003":1837},"179":{"1080033":180,"2070003":0},"180":{"77841":181,"2070003":0},"182":{"47818":1033,"52020":1847,"54246":1848,"1080034":183,"2070003":0},"183":{"1496":1378,"2223":325,"5557":1373,"5733":350,"10219":184,"12631":1379,"12799":340,"18598":1374,"24379":345,"24626":1377,"26643":1372,"32599":1368,"34726":320,"38610":206,"40655":1369,"46316":1375,"49089":335,"49197":1370,"54279":330,"55528":1376,"60712":1371,"83058":1367,"2070003":1838},"184":{"1080033":185,"2070003":0},"185":{"77841":186,"2070003":0},"187":{"47":425,"19537":1106,"47818":1047,"52020":1849,"54246":1850,"1080034":188,"1080036":1110,"1080037":1108,"2070003":0},"188":{"1496":1391,"2223":360,"5557":1386,"5733":385,"10219":189,"12631":1392,"12799":375,"18598":1387,"24379":380,"24626":1390,"26643":1385,"32599":1381,"34726":355,"38610":209,"40655":1382,"46316":1388,"49089":370,"49197":1383,"54279":365,"55528":1389,"60712":1384,"83058":1380,"2070003":1839},"189":{"1080033":190,"2070003":0},"190":{"77841":191,"2070003":0},"192":{"47":432,"19537":1112,"47818":1061,"52020":1851,"54246":1852,"1080034":193,"1080036":1116,"1080037":1114,"2070003":0},"193":{"1496":1404,"2223":395,"5557":1399,"5733":420,"10219":194,"12631":1405,"12799":410,"18598":1400,"24379":415,"24626":1403,"26643":1398,"32599":1394,"34726":390,"38610":212,"40655":1395,"46316":1401,"49089":405,"49197":1396,"54279":400,"55528":1402,"60712":1397,"83058":1393,"2070003":1840},"194":{"1080033":195,"2070003":0},"195":{"77841":196,"2070003":0},"197":{"72743":198,"2070003":0},"198":{"77841":199,"2070003":0},"200":{"72743":201,"2070003":0},"201":{"77841":202,"2070003":0},"203":{"72743":204,"2070003":0},"204":{"77841":205,"2070003":0},"206":{"72743":207,"2070003":0},"207":{"77841":208,"2070003":0},"209":{"72743":210,"2070003":0},"210":{"77841":211,"2070003":0},"212":{"72743":213,"2070003":0},"213":{"77841":214,"2070003":0},"215":{"19550":218,"72743":216,"2070003":0},"216":{"77841":217,"2070003":0},"218":{"77841":219,"2070003":0},"220":{"19550":223,"72743":221,"2070003":0},"221":{"77841":222,"2070003":0},"223":{"77841":224,"2070003":0},"225":{"19550":228,"72743":226,"2070003":0},"226":{"77841":227,"2070003":0},"228":{"77841":229,"2070003":0},"230":{"19550":233,"72743":231,"2070003":0},"231":{"77841":232,"2070003":0},"233":{"77841":234,"2070003":0},"235":{"19550":238,"72743":236,"2070003":0},"236":{"77841":237,"2070003":0},"238":{"77841":239,"2070003":0},"240":{"19550":243,"72743":241,"2070003":0},"241":{"77841":242,"2070003":0},"243":{"77841":244,"2070003":0},"245":{"19550":248,"72743":246,"2070003":0},"246":{"77841":247,"2070003":0},"248":{"77841":249,"2070003":0},"250":{"19550":253,"72743":251,"2070003":0},"251":{"77841":252,"2070003":0},"253":{"77841":254,"2070003":0},"255":{"19550":258,"72743":256,"2070003":0},"256":{"77841":257,"2070003":0},"258":{"77841":259,"2070003":0},"260":{"19550":263,"72743":261,"2070003":0},"261":{"77841":262,"2070003":0},"263":{"77841":264,"2070003":0},"265":{"19550":268,"72743":266,"2070003":0},"266":{"77841":267,"2070003":0},"268":{"77841":269,"2070003":0},"270":{"19550":273,"72743":271,"2070003":0},"271":{"77841":272,"2070003":0},"273":{"77841":274,"2070003":0},"275":{"19550":278,"72743":276,"2070003":0},"276":{"77841":277,"2070003":0},"278":{"77841":279,"2070003":0},"280":{"19550":283,"72743":281,"2070003":0},"281":{"77841":282,"2070003":0},"283":{"77841":284,"2070003":0},"285":{"19550":288,"72743":286,"2070003":0},"286":{"77841":287,"2070003":0},"288":{"77841":289,"2070003":0},"290":{"19550":293,"72743":291,"2070003":0},"291":{"77841":292,"2070003":0},"293":{"77841":294,"2070003":0},"295":{"19550":298,"72743":296,"2070003":0},"296":{"77841":297,"2070003":0},"298":{"77841":299,"2070003":0},"300":{"19550":303,"72743":301,"2070003":0},"301":{"77841":302,"2070003":0},"303":{"77841":304,"2070003":0},"305":{"19550":308,"72743":306,"2070003":0},"306":{"77841":307,"2070003":0},"308":{"77841":309,"2070003":0},"310":{"19550":313,"72743":311,"2070003":0},"311":{"77841":312,"2070003":0},"313":{"77841":314,"2070003":0},"315":{"19550":318,"72743":316,"2070003":0},"316":{"77841":317,"2070003":0},"318":{"77841":319,"2070003":0},"320":{"19550":323,"72743":321,"2070003":0},"321":{"77841":322,"2070003":0},"323":{"77841":324,"2070003":0},"325":{"19550":328,"72743":326,"2070003":0},"326":{"77841":327,"2070003":0},"328":{"77841":329,"2070003":0},"330":{"19550":333,"72743":331,"2070003":0},"331":{"77841":332,"2070003":0},"333":{"77841":334,"2070003":0},"335":{"19550":338,"72743":336,"2070003":0},"336":{"77841":337,"2070003":0},"338":{"77841":339,"2070003":0},"340":{"19550":343,"72743":341,"2070003":0},"341":{"77841":342,"2070003":0},"343":{"77841":344,"2070003":0},"345":{"19550":348,"72743":346,"2070003":0},"346":{"77841":347,"2070003":0},"348":{"77841":349,"2070003":0},"350":{"19550":353,"72743":351,"2070003":0},"351":{"77841":352,"2070003":0},"353":{"77841":354,"2070003":0},"355":{"19550":358,"72743":356,"2070003":0},"356":{"77841":357,"2070003":0},"358":{"77841":359,"2070003":0},"360":{"19550":363,"72743":361,"2070003":0},"361":{"77841":362,"2070003":0},"363":{"77841":364,"2070003":0},"365":{"19550":368,"72743":366,"2070003":0},"366":{"77841":367,"2070003":0},"368":{"77841":369,"2070003":0},"370":{"19550":373,"72743":371,"2070003":0},"371":{"77841":372,"2070003":0},"373":{"77841":374,"2070003":0},"375":{"19550":378,"72743":376,"2070003":0},"376":{"77841":377,"2070003":0},"378":{"77841":379,"2070003":0},"380":{"19550":383,"72743":381,"2070003":0},"381":{"77841":382,"2070003":0},"383":{"77841":384,"2070003":0},"385":{"19550":388,"72743":386,"2070003":0},"386":{"77841":387,"2070003":0},"388":{"77841":389,"2070003":0},"390":{"19550":393,"72743":391,"2070003":0},"391":{"77841":392,"2070003":0},"393":{"77841":394,"2070003":0},"395":{"19550":398,"72743":396,"2070003":0},"396":{"77841":397,"2070003":0},"398":{"77841":399,"2070003":0},"400":{"19550":403,"72743":401,"2070003":0},"401":{"77841":402,"2070003":0},"403":{"77841":404,"2070003":0},"405":{"19550":408,"72743":406,"2070003":0},"406":{"77841":407,"2070003":0},"408":{"77841":409,"2070003":0},"410":{"19550":413,"72743":411,"2070003":0},"411":{"77841":412,"2070003":0},"413":{"77841":414,"2070003":0},"415":{"19550":418,"72743":416,"2070003":0},"416":{"77841":417,"2070003":0},"418":{"77841":419,"2070003":0},"420":{"19550":423,"72743":421,"2070003":0},"421":{"77841":422,"2070003":0},"423":{"77841":424,"2070003":0},"425":{"19537":426,"1080036":430,"1080037":428,"2070003":0},"426":{"1978":427,"2070003":0},"428":{"1978":429,"2070003":0},"430":{"1978":431,"2070003":0},"432":{"19537":433,"1080036":437,"1080037":435,"2070003":0},"433":{"1978":434,"2070003":0},"435":{"1978":436,"2070003":0},"437":{"1978":438,"2070003":0},"439":{"47":440,"19537":1118,"1080036":1122,"1080037":1120,"2070003":0},"440":{"19537":441,"1080036":445,"1080037":443,"2070003":0},"441":{"1978":442,"2070003":0},"443":{"1978":444,"2070003":0},"445":{"1978":446,"2070003":0},"447":{"19537":448,"1080037":449,"2070003":0},"452":{"19537":453,"1080037":454,"2070003":0},"457":{"219":1135,"3361":458,"11488":1899,"17548":1900,"19537":1556,"34600":1901,"40538":1894,"47818":1422,"49572":1896,"52020":2053,"54246":2054,"69227":1895,"85882":1898,"86444":1897,"1080014":491,"1080020":517,"1080021":1970,"1080034":735,"1080036":1560,"1080037":1558,"2070003":2074},"458":{"219":459,"1080014":1140,"2070003":0},"459":{"1080014":460,"2070003":0},"460":{"1080022":461,"1080023":462,"1080024":463,"2070003":1144},"464":{"219":1145,"3361":465,"19537":1562,"47818":1436,"52020":2055,"54246":2056,"1080014":497,"1080020":521,"1080021":1971,"1080034":739,"1080036":1566,"1080037":1564,"2070003":2075},"465":{"219":466,"1080014":1150,"2070003":0},"466":{"1080014":467,"2070003":0},"467":{"1080022":468,"1080023":469,"1080024":470,"2070003":1154},"471":{"1080014":472,"2070003":0},"472":{"1080022":473,"1080023":474,"1080024":475,"2070003":1158},"476":{"1080022":477,"1080023":478,"1080024":479,"2070003":1159},"481":{"1080014":482,"2070003":0},"482":{"1080022":483,"1080023":484,"1080024":485,"2070003":1163},"486":{"1080022":487,"1080023":488,"1080024":489,"2070003":1164},"491":{"219":1165,"52424":492,"1080022":1659,"1080023":1660,"1080024":1661,"2070003":1981},"492":{"219":493,"1080022":1169,"1080023":1170,"1080024":1171,"2070003":0},"493":{"1080022":494,"1080023":495,"1080024":496,"2070003":0},"497":{"219":1172,"52424":498,"1080022":1662,"1080023":1663,"1080024":1664,"2070003":1982},"498":{"219":499,"1080022":1176,"1080023":1177,"1080024":1178,"2070003":0},"499":{"1080022":500,"1080023":501,"1080024":502,"2070003":0},"503":{"1080022":504,"1080023":505,"1080024":506,"2070003":0},"510":{"1080022":511,"1080023":512,"1080024":513,"2070003":0},"517":{"3361":518,"1080004":1671,"1080005":1672,"1080006":1673,"1080007":1674,"1080019":1197,"1080021":1637,"2070003":1967},"518":{"1080004":1185,"1080005":1186,"1080006":1187,"1080007":1188,"1080019":519,"2070003":0},"519":{"1080004":520,"2070003":0},"521":{"3361":522,"1080004":1675,"1080005":1676,"1080006":1677,"1080007":1678,"1080019":1199,"1080021":1638,"2070003":1968},"522":{"1080004":1189,"1080005":1190,"1080006":1191,"1080007":1192,"1080019":523,"2070003":0},"523":{"1080004":524,"2070003":0},"525":{"1496":1692,"2223":565,"5557":1687,"5733":590,"10219":526,"12631":1693,"12799":580,"18598":1688,"24379":585,"24626":1691,"26643":1686,"32599":1682,"34726":560,"38610":545,"40655":1683,"46316":1689,"49089":575,"49197":1684,"54279":570,"55528":1690,"60712":1685,"83058":1681,"2070003":2016},"526":{"1080033":527,"2070003":0},"527":{"77841":528,"2070003":0},"529":{"1496":2031,"2223":1293,"5557":2026,"5733":1318,"10219":1244,"12631":2032,"12799":1308,"18598":2027,"24379":1313,"24626":2030,"26643":2025,"32599":2021,"34726":1288,"36445":530,"36450":534,"38610":1250,"40655":2022,"46316":2028,"49089":1303,"49197":2023,"54279":1298,"55528":2029,"60712":2024,"83058":2020,"1080034":538,"2070003":0},"530":{"1496":1705,"2223":600,"5557":1700,"5733":625,"10219":531,"12631":1706,"12799":615,"18598":1701,"24379":620,"24626":1704,"26643":1699,"32599":1695,"34726":595,"38610":548,"40655":1696,"46316":1702,"49089":610,"49197":1697,"54279":605,"55528":1703,"60712":1698,"83058":1694,"2070003":2017},"531":{"1080033":532,"2070003":0},"532":{"77841":533,"2070003":0},"534":{"1496":1718,"2223":635,"5557":1713,"5733":660,"10219":535,"12631":1719,"12799":650,"18598":1714,"24379":655,"24626":1717,"26643":1712,"32599":1708,"34726":630,"38610":551,"40655":1709,"46316":1715,"49089":645,"49197":1710,"54279":640,"55528":1716,"60712":1711,"83058":1707,"2070003":2018},"535":{"1080033":536,"2070003":0},"536":{"77841":537,"2070003":0},"538":{"1496":1731,"2223":670,"5557":1726,"5733":695,"10219":539,"12631":1732,"12799":685,"18598":1727,"24379":690,"24626":1730,"26643":1725,"32599":1721,"34726":665,"38610":554,"40655":1722,"46316":1728,"49089":680,"49197":1723,"54279":675,"55528":1729,"60712":1724,"83058":1720,"2070003":2019},"539":{"1080033":540,"2070003":0},"540":{"77841":541,"2070003":0},"542":{"1080033":543,"2070003":0},"543":{"77841":544,"2070003":0},"545":{"72743":546,"2070003":0},"546":{"77841":547,"2070003":0},"548":{"72743":549,"2070003":0},"549":{"77841":550,"2070003":0},"551":{"72743":552,"2070003":0},"552":{"77841":553,"2070003":0},"554":{"72743":555,"2070003":0},"555":{"77841":556,"2070003":0},"557":{"72743":558,"2070003":0},"558":{"77841":559,"2070003":0},"560":{"19550":563,"72743":561,"2070003":0},"561":{"77841":562,"2070003":0},"563":{"77841":564,"2070003":0},"565":{"19550":568,"72743":566,"2070003":0},"566":{"77841":567,"2070003":0},"568":{"77841":569,"2070003":0},"570":{"19550":573,"72743":571,"2070003":0},"571":{"77841":572,"2070003":0},"573":{"77841":574,"2070003":0},"575":{"19550":578,"72743":576,"2070003":0},"576":{"77841":577,"2070003":0},"578":{"77841":579,"2070003":0},"580":{"19550":583,"72743":581,"2070003":0},"581":{"77841":582,"2070003":0},"583":{"77841":584,"2070003":0},"585":{"19550":588,"72743":586,"2070003":0},"586":{"77841":587,"2070003":0},"588":{"77841":589,"2070003":0},"590":{"19550":593,"72743":591,"2070003":0},"591":{"77841":592,"2070003":0},"593":{"77841":594,"2070003":0},"595":{"19550":598,"72743":596,"2070003":0},"596":{"77841":597,"2070003":0},"598":{"77841":599,"2070003":0},"600":{"19550":603,"72743":601,"2070003":0},"601":{"77841":602,"2070003":0},"603":{"77841":604,"2070003":0},"605":{"19550":608,"72743":606,"2070003":0},"606":{"77841":607,"2070003":0},"608":{"77841":609,"2070003":0},"610":{"19550":613,"72743":611,"2070003":0},"611":{"77841":612,"2070003":0},"613":{"77841":614,"2070003":0},"615":{"19550":618,"72743":616,"2070003":0},"616":{"77841":617,"2070003":0},"618":{"77841":619,"2070003":0},"620":{"19550":623,"72743":621,"2070003":0},"621":{"77841":622,"2070003":0},"623":{"77841":624,"2070003":0},"625":{"19550":628,"72743":626,"2070003":0},"626":{"77841":627,"2070003":0},"628":{"77841":629,"2070003":0},"630":{"19550":633,"72743":631,"2070003":0},"631":{"77841":632,"2070003":0},"633":{"77841":634,"2070003":0},"635":{"19550":638,"72743":636,"2070003":0},"636":{"77841":637,"2070003":0},"638":{"77841":639,"2070003":0},"640":{"19550":643,"72743":641,"2070003":0},"641":{"77841":642,"2070003":0},"643":{"77841":644,"2070003":0},"645":{"19550":648,"72743":646,"2070003":0},"646":{"77841":647,"2070003":0},"648":{"77841":649,"2070003":0},"650":{"19550":653,"72743":651,"2070003":0},"651":{"77841":652,"2070003":0},"653":{"77841":654,"2070003":0},"655":{"19550":658,"72743":656,"2070003":0},"656":{"77841":657,"2070003":0},"658":{"77841":659,"2070003":0},"660":{"19550":663,"72743":661,"2070003":0},"661":{"77841":662,"2070003":0},"663":{"77841":664,"2070003":0},"665":{"19550":668,"72743":666,"2070003":0},"666":{"77841":667,"2070003":0},"668":{"77841":669,"2070003":0},"670":{"19550":673,"72743":671,"2070003":0},"671":{"77841":672,"2070003":0},"673":{"77841":674,"2070003":0},"675":{"19550":678,"72743":676,"2070003":0},"676":{"77841":677,"2070003":0},"678":{"77841":679,"2070003":0},"680":{"19550":683,"72743":681,"2070003":0},"681":{"77841":682,"2070003":0},"683":{"77841":684,"2070003":0},"685":{"19550":688,"72743":686,"2070003":0},"686":{"77841":687,"2070003":0},"688":{"77841":689,"2070003":0},"690":{"19550":693,"72743":691,"2070003":0},"691":{"77841":692,"2070003":0},"693":{"77841":694,"2070003":0},"695":{"19550":698,"72743":696,"2070003":0},"696":{"77841":697,"2070003":0},"698":{"77841":699,"2070003":0},"700":{"19550":703,"72743":701,"2070003":0},"701":{"77841":702,"2070003":0},"703":{"77841":704,"2070003":0},"705":{"19550":708,"72743":706,"2070003":0},"706":{"77841":707,"2070003":0},"708":{"77841":709,"2070003":0},"710":{"19550":713,"72743":711,"2070003":0},"711":{"77841":712,"2070003":0},"713":{"77841":714,"2070003":0},"715":{"19550":718,"72743":716,"2070003":0},"716":{"77841":717,"2070003":0},"718":{"77841":719,"2070003":0},"720":{"19550":723,"72743":721,"2070003":0},"721":{"77841":722,"2070003":0},"723":{"77841":724,"2070003":0},"725":{"19550":728,"72743":726,"2070003":0},"726":{"77841":727,"2070003":0},"728":{"77841":729,"2070003":0},"730":{"19550":733,"72743":731,"2070003":0},"731":{"77841":732,"2070003":0},"733":{"77841":734,"2070003":0},"735":{"1496":1768,"2223":786,"5557":1763,"5733":811,"10219":736,"12631":1769,"12799":801,"18598":1764,"24379":806,"24626":1767,"26643":1762,"32599":1758,"34726":781,"38610":763,"40655":1759,"46316":1765,"49089":796,"49197":1760,"54279":791,"55528":1766,"60712":1761,"83058":1757,"2070003":2047},"736":{"1080033":737,"2070003":0},"737":{"77841":738,"2070003":0},"739":{"1496":1781,"2223":821,"5557":1776,"5733":846,"10219":740,"12631":1782,"12799":836,"18598":1777,"24379":841,"24626":1780,"26643":1775,"32599":1771,"34726":816,"38610":766,"40655":1772,"46316":1778,"49089":831,"49197":1773,"54279":826,"55528":1779,"60712":1774,"83058":1770,"2070003":2048},"740":{"1080033":741,"2070003":0},"741":{"77841":742,"2070003":0},"743":{"19537":1568,"47818":1450,"52020":2057,"54246":2058,"1080021":1972,"1080034":744,"1080036":1572,"1080037":1570,"2070003":2076},"744":{"1496":1794,"2223":856,"5557":1789,"5733":881,"10219":745,"12631":1795,"12799":871,"18598":1790,"24379":876,"24626":1793,"26643":1788,"32599":1784,"34726":851,"38610":769,"40655":1785,"46316":1791,"49089":866,"49197":1786,"54279":861,"55528":1792,"60712":1787,"83058":1783,"2070003":2049},"745":{"1080033":746,"2070003":0},"746":{"77841":747,"2070003":0},"748":{"19537":1574,"47818":1464,"52020":2059,"54246":2060,"1080020":1969,"1080021":1973,"1080034":749,"1080036":1578,"1080037":1576,"2070003":2077},"749":{"1496":1807,"2223":891,"5557":1802,"5733":916,"10219":750,"12631":1808,"12799":906,"18598":1803,"24379":911,"24626":1806,"26643":1801,"32599":1797,"34726":886,"38610":772,"40655":1798,"46316":1804,"49089":901,"49197":1799,"54279":896,"55528":1805,"60712":1800,"83058":1796,"2070003":2050},"750":{"1080033":751,"2070003":0},"751":{"77841":752,"2070003":0},"753":{"47":1084,"226":1587,"6417":1599,"19537":1609,"47818":1478,"52020":2061,"54246":2062,"1080009":1988,"1080011":1989,"1080012":1990,"1080034":754,"1080036":1613,"1080037":1611,"1080038":1939,"2070003":2115},"754":{"1496":1820,"2223":926,"5557":1815,"5733":951,"10219":755,"12631":1821,"12799":941,"18598":1816,"24379":946,"24626":1819,"26643":1814,"32599":1810,"34726":921,"38610":775,"40655":1811,"46316":1817,"49089":936,"49197":1812,"54279":931,"55528":1818,"60712":1813,"83058":1809,"2070003":2051},"755":{"1080033":756,"2070003":0},"756":{"77841":757,"2070003":0},"758":{"47":1091,"226":1589,"6417":1601,"19537":1615,"47818":1492,"52020":2063,"54246":2064,"1080009":1991,"1080011":1992,"1080012":1993,"1080034":759,"1080036":1619,"1080037":1617,"1080038":1940,"2070003":2116},"759":{"1496":1833,"2223":961,"5557":1828,"5733":986,"10219":760,"12631":1834,"12799":976,"18598":1829,"24379":981,"24626":1832,"26643":1827,"32599":1823,"34726":956,"38610":778,"40655":1824,"46316":1830,"49089":971,"49197":1825,"54279":966,"55528":1831,"60712":1826,"83058":1822,"2070003":2052},"760":{"1080033":761,"2070003":0},"761":{"77841":762,"2070003":0},"763":{"72743":764,"2070003":0},"764":{"77841":765,"2070003":0},"766":{"72743":767,"2070003":0},"767":{"77841":768,"2070003":0},"769":{"72743":770,"2070003":0},"770":{"77841":771,"2070003":0},"772":{"72743":773,"2070003":0},"773":{"77841":774,"2070003":0},"775":{"72743":776,"2070003":0},"776":{"77841":777,"2070003":0},"778":{"72743":779,"2070003":0},"779":{"77841":780,"2070003":0},"781":{"19550":784,"72743":782,"2070003":0},"782":{"77841":783,"2070003":0},"784":{"77841":785,"2070003":0},"786":{"19550":789,"72743":787,"2070003":0},"787":{"77841":788,"2070003":0},"789":{"77841":790,"2070003":0},"791":{"19550":794,"72743":792,"2070003":0},"792":{"77841":793,"2070003":0},"794":{"77841":795,"2070003":0},"796":{"19550":799,"72743":797,"2070003":0},"797":{"77841":798,"2070003":0},"799":{"77841":800,"2070003":0},"801":{"19550":804,"72743":802,"2070003":0},"802":{"77841":803,"2070003":0},"804":{"77841":805,"2070003":0},"806":{"19550":809,"72743":807,"2070003":0},"807":{"77841":808,"2070003":0},"809":{"77841":810,"2070003":0},"811":{"19550":814,"72743":812,"2070003":0},"812":{"77841":813,"2070003":0},"814":{"77841":815,"2070003":0},"816":{"19550":819,"72743":817,"2070003":0},"817":{"77841":818,"2070003":0},"819":{"77841":820,"2070003":0},"821":{"19550":824,"72743":822,"2070003":0},"822":{"77841":823,"2070003":0},"824":{"77841":825,"2070003":0},"826":{"19550":829,"72743":827,"2070003":0},"827":{"77841":828,"2070003":0},"829":{"77841":830,"2070003":0},"831":{"19550":834,"72743":832,"2070003":0},"832":{"77841":833,"2070003":0},"834":{"77841":835,"2070003":0},"836":{"19550":839,"72743":837,"2070003":0},"837":{"77841":838,"2070003":0},"839":{"77841":840,"2070003":0},"841":{"19550":844,"72743":842,"2070003":0},"842":{"77841":843,"2070003":0},"844":{"77841":845,"2070003":0},"846":{"19550":849,"72743":847,"2070003":0},"847":{"77841":848,"2070003":0},"849":{"77841":850,"2070003":0},"851":{"19550":854,"72743":852,"2070003":0},"852":{"77841":853,"2070003":0},"854":{"77841":855,"2070003":0},"856":{"19550":859,"72743":857,"2070003":0},"857":{"77841":858,"2070003":0},"859":{"77841":860,"2070003":0},"861":{"19550":864,"72743":862,"2070003":0},"862":{"77841":863,"2070003":0},"864":{"77841":865,"2070003":0},"866":{"19550":869,"72743":867,"2070003":0},"867":{"77841":868,"2070003":0},"869":{"77841":870,"2070003":0},"871":{"19550":874,"72743":872,"2070003":0},"872":{"77841":873,"2070003":0},"874":{"77841":875,"2070003":0},"876":{"19550":879,"72743":877,"2070003":0},"877":{"77841":878,"2070003":0},"879":{"77841":880,"2070003":0},"881":{"19550":884,"72743":882,"2070003":0},"882":{"77841":883,"2070003":0},"884":{"77841":885,"2070003":0},"886":{"19550":889,"72743":887,"2070003":0},"887":{"77841":888,"2070003":0},"889":{"77841":890,"2070003":0},"891":{"19550":894,"72743":892,"2070003":0},"892":{"77841":893,"2070003":0},"894":{"77841":895,"2070003":0},"896":{"19550":899,"72743":897,"2070003":0},"897":{"77841":898,"2070003":0},"899":{"77841":900,"2070003":0},"901":{"19550":904,"72743":902,"2070003":0},"902":{"77841":903,"2070003":0},"904":{"77841":905,"2070003":0},"906":{"19550":909,"72743":907,"2070003":0},"907":{"77841":908,"2070003":0},"909":{"77841":910,"2070003":0},"911":{"19550":914,"72743":912,"2070003":0},"912":{"77841":913,"2070003":0},"914":{"77841":915,"2070003":0},"916":{"19550":919,"72743":917,"2070003":0},"917":{"77841":918,"2070003":0},"919":{"77841":920,"2070003":0},"921":{"19550":924,"72743":922,"2070003":0},"922":{"77841":923,"2070003":0},"924":{"77841":925,"2070003":0},"926":{"19550":929,"72743":927,"2070003":0},"927":{"77841":928,"2070003":0},"929":{"77841":930,"2070003":0},"931":{"19550":934,"72743":932,"2070003":0},"932":{"77841":933,"2070003":0},"934":{"77841":935,"2070003":0},"936":{"19550":939,"72743":937,"2070003":0},"937":{"77841":938,"2070003":0},"939":{"77841":940,"2070003":0},"941":{"19550":944,"72743":942,"2070003":0},"942":{"77841":943,"2070003":0},"944":{"77841":945,"2070003":0},"946":{"19550":949,"72743":947,"2070003":0},"947":{"77841":948,"2070003":0},"949":{"77841":950,"2070003":0},"951":{"19550":954,"72743":952,"2070003":0},"952":{"77841":953,"2070003":0},"954":{"77841":955,"2070003":0},"956":{"19550":959,"72743":957,"2070003":0},"957":{"77841":958,"2070003":0},"959":{"77841":960,"2070003":0},"961":{"19550":964,"72743":962,"2070003":0},"962":{"77841":963,"2070003":0},"964":{"77841":965,"2070003":0},"966":{"19550":969,"72743":967,"2070003":0},"967":{"77841":968,"2070003":0},"969":{"77841":970,"2070003":0},"971":{"19550":974,"72743":972,"2070003":0},"972":{"77841":973,"2070003":0},"974":{"77841":975,"2070003":0},"976":{"19550":979,"72743":977,"2070003":0},"977":{"77841":978,"2070003":0},"979":{"77841":980,"2070003":0},"981":{"19550":984,"72743":982,"2070003":0},"982":{"77841":983,"2070003":0},"984":{"77841":985,"2070003":0},"986":{"19550":989,"72743":987,"2070003":0},"987":{"77841":988,"2070003":0},"989":{"77841":990,"2070003":0},"991":{"78040":992,"2070003":0},"992":{"1080001":1003,"1080002":1004,"1080015":999,"1080016":1000,"1080017":1001,"1080018":1002,"2070003":0},"1005":{"78040":1006,"2070003":0},"1006":{"1080001":1017,"1080002":1018,"1080015":1013,"1080016":1014,"1080017":1015,"1080018":1016,"2070003":0},"1019":{"78040":1020,"2070003":0},"1020":{"1080001":1031,"1080002":1032,"1080015":1027,"1080016":1028,"1080017":1029,"1080018":1030,"2070003":0},"1033":{"78040":1034,"2070003":0},"1034":{"1080001":1045,"1080002":1046,"1080015":1041,"1080016":1042,"1080017":1043,"1080018":1044,"2070003":0},"1047":{"78040":1048,"2070003":0},"1048":{"1080001":1059,"1080002":1060,"1080015":1055,"1080016":1056,"1080017":1057,"1080018":1058,"2070003":0},"1061":{"78040":1062,"2070003":0},"1062":{"1080001":1073,"1080002":1074,"1080015":1069,"1080016":1070,"1080017":1071,"1080018":1072,"2070003":0},"1075":{"1841":2035,"13927":1930,"19537":1323,"26972":2034,"47341":1749,"47365":2044,"47376":2045,"47396":2040,"47417":2039,"48884":2033,"50853":2037,"51561":2036,"78222":2038,"1080036":1934,"1080037":1076,"2070003":2120},"1076":{"47":1077,"25521":1541,"2070003":1932},"1077":{"25521":1078,"2070003":0},"1079":{"226":1080,"6417":1082,"1080038":1548,"2070003":1938},"1080":{"19201":1081,"2070003":0},"1082":{"11016":1083,"2070003":0},"1084":{"19537":1085,"1080036":1089,"1080037":1087,"2070003":0},"1085":{"1978":1086,"2070003":0},"1087":{"1978":1088,"2070003":0},"1089":{"1978":1090,"2070003":0},"1091":{"19537":1092,"1080036":1096,"1080037":1094,"2070003":0},"1092":{"1978":1093,"2070003":0},"1094":{"1978":1095,"2070003":0},"1096":{"1978":1097,"2070003":0},"1098":{"47":1099,"226":1591,"6417":1603,"19537":1621,"1080009":1994,"1080011":1995,"1080012":1996,"1080036":1625,"1080037":1623,"1080038":1941,"2070003":2117},"1099":{"19537":1100,"1080036":1104,"1080037":1102,"2070003":0},"1100":{"1978":1101,"2070003":0},"1102":{"1978":1103,"2070003":0},"1104":{"1978":1105,"2070003":0},"1106":{"1978":1107,"2070003":0},"1108":{"1978":1109,"2070003":0},"1110":{"1978":1111,"2070003":0},"1112":{"1978":1113,"2070003":0},"1114":{"1978":1115,"2070003":0},"1116":{"1978":1117,"2070003":0},"1118":{"1978":1119,"2070003":0},"1120":{"1978":1121,"2070003":0},"1122":{"1978":1123,"2070003":0},"1130":{"219":1131,"1080022":1644,"1080023":1645,"1080024":1646,"2070003":1977},"1131":{"1080022":1132,"1080023":1133,"1080024":1134,"2070003":0},"1135":{"1080014":1136,"2070003":0},"1136":{"1080022":1137,"1080023":1138,"1080024":1139,"2070003":1650},"1140":{"1080022":1141,"1080023":1142,"1080024":1143,"2070003":1651},"1145":{"1080014":1146,"2070003":0},"1146":{"1080022":1147,"1080023":1148,"1080024":1149,"2070003":1655},"1150":{"1080022":1151,"1080023":1152,"1080024":1153,"2070003":1656},"1165":{"1080022":1166,"1080023":1167,"1080024":1168,"2070003":0},"1172":{"1080022":1173,"1080023":1174,"1080024":1175,"2070003":0},"1193":{"3361":1194,"1080004":1984,"1080005":1985,"1080006":1986,"1080007":1987,"1080019":1679,"1080021":1975,"2070003":2103},"1194":{"1080004":1667,"1080005":1668,"1080006":1669,"1080007":1670,"1080019":1195,"2070003":0},"1195":{"1080004":1196,"2070003":0},"1197":{"1080004":1198,"2070003":0},"1199":{"1080004":1200,"2070003":0},"1240":{"1496":2014,"2223":1258,"5557":2009,"5733":1283,"10219":1241,"12631":2015,"12799":1273,"18598":2010,"24379":1278,"24626":2013,"26643":2008,"32599":2004,"34726":1253,"38610":1247,"40655":2005,"46316":2011,"49089":1268,"49197":2006,"54279":1263,"55528":2012,"60712":2007,"83058":2003,"2070003":2092},"1241":{"1080033":1242,"2070003":0},"1242":{"77841":1243,"2070003":0},"1244":{"1080033":1245,"2070003":0},"1245":{"77841":1246,"2070003":0},"1247":{"72743":1248,"2070003":0},"1248":{"77841":1249,"2070003":0},"1250":{"72743":1251,"2070003":0},"1251":{"77841":1252,"2070003":0},"1253":{"19550":1256,"72743":1254,"2070003":0},"1254":{"77841":1255,"2070003":0},"1256":{"77841":1257,"2070003":0},"1258":{"19550":1261,"72743":1259,"2070003":0},"1259":{"77841":1260,"2070003":0},"1261":{"77841":1262,"2070003":0},"1263":{"19550":1266,"72743":1264,"2070003":0},"1264":{"77841":1265,"2070003":0},"1266":{"77841":1267,"2070003":0},"1268":{"19550":1271,"72743":1269,"2070003":0},"1269":{"77841":1270,"2070003":0},"1271":{"77841":1272,"2070003":0},"1273":{"19550":1276,"72743":1274,"2070003":0},"1274":{"77841":1275,"2070003":0},"1276":{"77841":1277,"2070003":0},"1278":{"19550":1281,"72743":1279,"2070003":0},"1279":{"77841":1280,"2070003":0},"1281":{"77841":1282,"2070003":0},"1283":{"19550":1286,"72743":1284,"2070003":0},"1284":{"77841":1285,"2070003":0},"1286":{"77841":1287,"2070003":0},"1288":{"19550":1291,"72743":1289,"2070003":0},"1289":{"77841":1290,"2070003":0},"1291":{"77841":1292,"2070003":0},"1293":{"19550":1296,"72743":1294,"2070003":0},"1294":{"77841":1295,"2070003":0},"1296":{"77841":1297,"2070003":0},"1298":{"19550":1301,"72743":1299,"2070003":0},"1299":{"77841":1300,"2070003":0},"1301":{"77841":1302,"2070003":0},"1303":{"19550":1306,"72743":1304,"2070003":0},"1304":{"77841":1305,"2070003":0},"1306":{"77841":1307,"2070003":0},"1308":{"19550":1311,"72743":1309,"2070003":0},"1309":{"77841":1310,"2070003":0},"1311":{"77841":1312,"2070003":0},"1313":{"19550":1316,"72743":1314,"2070003":0},"1314":{"77841":1315,"2070003":0},"1316":{"77841":1317,"2070003":0},"1318":{"19550":1321,"72743":1319,"2070003":0},"1319":{"77841":1320,"2070003":0},"1321":{"77841":1322,"2070003":0},"1323":{"47":1324,"25521":1756,"87219":1326,"2070003":1931},"1324":{"25521":1325,"2070003":0},"1326":{"25521":1327,"2070003":0},"1406":{"55255":1407,"2070003":0},"1407":{"1080001":1412,"1080002":1413,"1080015":1408,"1080016":1409,"1080017":1410,"1080018":1411,"2070003":0},"1414":{"55255":1415,"2070003":0},"1415":{"1080001":1420,"1080002":1421,"1080015":1416,"1080016":1417,"1080017":1418,"1080018":1419,"2070003":0},"1422":{"78040":1423,"2070003":0},"1423":{"1080001":1434,"1080002":1435,"1080015":1430,"1080016":1431,"1080017":1432,"1080018":1433,"2070003":0},"1436":{"78040":1437,"2070003":0},"1437":{"1080001":1448,"1080002":1449,"1080015":1444,"1080016":1445,"1080017":1446,"1080018":1447,"2070003":0},"1450":{"78040":1451,"2070003":0},"1451":{"1080001":1462,"1080002":1463,"1080015":1458,"1080016":1459,"1080017":1460,"1080018":1461,"2070003":0},"1464":{"78040":1465,"2070003":0},"1465":{"1080001":1476,"1080002":1477,"1080015":1472,"1080016":1473,"1080017":1474,"1080018":1475,"2070003":0},"1478":{"78040":1479,"2070003":0},"1479":{"1080001":1490,"1080002":1491,"1080015":1486,"1080016":1487,"1080017":1488,"1080018":1489,"2070003":0},"1492":{"78040":1493,"2070003":0},"1493":{"1080001":1504,"1080002":1505,"1080015":1500,"1080016":1501,"1080017":1502,"1080018":1503,"2070003":0},"1506":{"24313":1510,"28042":1906,"42761":1513,"45756":1903,"46237":1902,"66681":1904,"72345":1907,"74596":1905,"1080032":1507,"1080045":1944,"2070003":0},"1507":{"28042":1522,"45756":1509,"46237":1508,"66681":1516,"72345":1525,"74596":1517,"2070003":0},"1510":{"28042":1523,"45756":1512,"46237":1511,"66681":1518,"72345":1526,"74596":1519,"2070003":0},"1513":{"28042":1524,"45756":1515,"46237":1514,"66681":1520,"72345":1527,"74596":1521,"2070003":0},"1528":{"47":1752,"1829":1531,"7620":1529,"25521":2046,"87219":1754,"2070003":0},"1529":{"1080031":1530,"2070003":0},"1531":{"1080031":1532,"2070003":0},"1533":{"35":1534,"2070003":0},"1534":{"19537":1535,"1080036":1537,"1080037":1536,"2070003":0},"1538":{"47":1539,"25521":1933,"2070003":2111},"1539":{"25521":1540,"2070003":0},"1542":{"12850":1543,"2070003":0},"1544":{"12850":1545,"2070003":0},"1546":{"12850":1547,"2070003":0},"1549":{"19537":1550,"1080015":1869,"1080025":1976,"1080036":1554,"1080037":1552,"1080045":1946,"2070003":0},"1550":{"1978":1551,"2070003":0},"1552":{"1978":1553,"2070003":0},"1554":{"1978":1555,"2070003":0},"1556":{"1978":1557,"2070003":0},"1558":{"1978":1559,"2070003":0},"1560":{"1978":1561,"2070003":0},"1562":{"1978":1563,"2070003":0},"1564":{"1978":1565,"2070003":0},"1566":{"1978":1567,"2070003":0},"1568":{"1978":1569,"2070003":0},"1570":{"1978":1571,"2070003":0},"1572":{"1978":1573,"2070003":0},"1574":{"1978":1575,"2070003":0},"1576":{"1978":1577,"2070003":0},"1578":{"1978":1579,"2070003":0},"1580":{"47":1627,"19537":1581,"87219":1630,"1080004":1983,"1080015":1633,"1080016":1635,"1080021":1974,"1080036":1585,"1080037":1583,"2070003":2078},"1581":{"1978":1582,"2070003":0},"1583":{"1978":1584,"2070003":0},"1585":{"1978":1586,"2070003":0},"1587":{"19201":1588,"2070003":0},"1589":{"19201":1590,"2070003":0},"1591":{"19201":1592,"2070003":0},"1593":{"226":1594,"6417":1605,"1080009":1997,"1080011":1998,"1080012":1999,"1080038":1942,"2070003":2118},"1594":{"19201":1595,"2070003":0},"1596":{"226":1597,"6417":1607,"1080009":2000,"1080011":2001,"1080012":2002,"1080038":1943,"2070003":2119},"1597":{"19201":1598,"2070003":0},"1599":{"11016":1600,"2070003":0},"1601":{"11016":1602,"2070003":0},"1603":{"11016":1604,"2070003":0},"1605":{"11016":1606,"2070003":0},"1607":{"11016":1608,"2070003":0},"1609":{"1978":1610,"2070003":0},"1611":{"1978":1612,"2070003":0},"1613":{"1978":1614,"2070003":0},"1615":{"1978":1616,"2070003":0},"1617":{"1978":1618,"2070003":0},"1619":{"1978":1620,"2070003":0},"1621":{"1978":1622,"2070003":0},"1623":{"1978":1624,"2070003":0},"1625":{"1978":1626,"2070003":0},"1627":{"1080004":1665,"1080015":1628,"1080016":1629,"2070003":0},"1630":{"1080004":1666,"1080015":1631,"1080016":1632,"2070003":0},"1633":{"1080021":1634,"2070003":1965},"1635":{"1080021":1636,"2070003":1966},"1639":{"219":1640,"1080022":1978,"1080023":1979,"1080024":1980,"2070003":2114},"1640":{"1080022":1641,"1080023":1642,"1080024":1643,"2070003":0},"1679":{"1080004":1680,"2070003":0},"1749":{"19537":1750,"50853":1751,"2070003":0},"1752":{"25521":1753,"2070003":0},"1754":{"25521":1755,"2070003":0},"1853":{"55255":1854,"2070003":0},"1854":{"1080001":1859,"1080002":1860,"1080015":1855,"1080016":1856,"1080017":1857,"1080018":1858,"2070003":0},"1861":{"55255":1862,"2070003":0},"1862":{"1080001":1867,"1080002":1868,"1080015":1863,"1080016":1864,"1080017":1865,"1080018":1866,"2070003":0},"1870":{"1080015":1871,"1080045":1945,"2070003":0},"1872":{"1080015":1873,"2070003":0},"1874":{"1080015":1875,"2070003":0},"1876":{"1080015":1877,"2070003":0},"1878":{"1080015":1879,"2070003":0},"1880":{"1080015":1881,"2070003":0},"1882":{"1080015":1883,"2070003":0},"1884":{"1080015":1885,"2070003":0},"1886":{"1080015":1887,"2070003":0},"1888":{"1080015":1889,"2070003":0},"1890":{"1080015":1891,"2070003":0},"1892":{"1080015":1893,"2070003":0},"1908":{"67705":1909,"2070003":0},"1910":{"52424":1911,"2070003":0},"1912":{"19537":1913,"1080036":1915,"1080037":1914,"2070003":0},"1916":{"9376":1925,"12073":1928,"12084":1929,"17034":1922,"19952":1927,"36451":1921,"43643":1917,"43666":1918,"49526":1926,"55156":1924,"55182":1923,"79098":1919,"79106":1920,"2070003":2070},"1935":{"19537":1936,"1080037":1937,"2070003":0},"1947":{"1080045":1948,"2070003":0},"1949":{"1080045":1950,"2070003":0},"1951":{"1080045":1952,"2070003":0},"1953":{"1080045":1954,"2070003":0},"1955":{"1080045":1956,"2070003":0},"1957":{"1080045":1958,"2070003":0},"1959":{"1080045":1960,"2070003":0},"1961":{"1080045":1962,"2070003":0},"1963":{"1080045":1964,"2070003":2072},"2041":{"19537":2042,"50853":2043,"2070003":0}},{"6":1050004,"7":1050004,"13":1050004,"14":1050004,"20":1050010,"21":1050010,"22":1050010,"27":1050010,"28":1050010,"29":1050010,"33":1050010,"34":1050010,"35":1050010,"39":1050010,"40":1050010,"41":1050010,"46":1050013,"50":1050013,"54":1050013,"57":1050013,"60":1050013,"63":1050013,"66":1050013,"68":1050013,"71":1050013,"73":1050013,"76":1050013,"78":1050013,"81":1050013,"83":1050013,"86":1050013,"88":1050013,"91":1050013,"93":1050013,"96":1050013,"98":1050013,"101":1050013,"103":1050013,"106":1050013,"108":1050013,"111":1050013,"113":1050013,"116":1050013,"118":1050013,"121":1050013,"123":1050013,"126":1050013,"128":1050013,"131":1050013,"133":1050013,"136":1050013,"138":1050013,"141":1050013,"143":1050013,"146":1050013,"148":1050013,"151":1050013,"153":1050013,"156":1050013,"158":1050013,"161":1050013,"163":1050013,"166":1050013,"168":1050013,"172":1050013,"176":1050013,"181":1050013,"186":1050013,"191":1050013,"196":1050013,"199":1050013,"202":1050013,"205":1050013,"208":1050013,"211":1050013,"214":1050013,"217":1050013,"219":1050013,"222":1050013,"224":1050013,"227":1050013,"229":1050013,"232":1050013,"234":1050013,"237":1050013,"239":1050013,"242":1050013,"244":1050013,"247":1050013,"249":1050013,"252":1050013,"254":1050013,"257":1050013,"259":1050013,"262":1050013,"264":1050013,"267":1050013,"269":1050013,"272":1050013,"274":1050013,"277":1050013,"279":1050013,"282":1050013,"284":1050013,"287":1050013,"289":1050013,"292":1050013,"294":1050013,"297":1050013,"299":1050013,"302":1050013,"304":1050013,"307":1050013,"309":1050013,"312":1050013,"314":1050013,"317":1050013,"319":1050013,"322":1050013,"324":1050013,"327":1050013,"329":1050013,"332":1050013,"334":1050013,"337":1050013,"339":1050013,"342":1050013,"344":1050013,"347":1050013,"349":1050013,"352":1050013,"354":1050013,"357":1050013,"359":1050013,"362":1050013,"364":1050013,"367":1050013,"369":1050013,"372":1050013,"374":1050013,"377":1050013,"379":1050013,"382":1050013,"384":1050013,"387":1050013,"389":1050013,"392":1050013,"394":1050013,"397":1050013,"399":1050013,"402":1050013,"404":1050013,"407":1050013,"409":1050013,"412":1050013,"414":1050013,"417":1050013,"419":1050013,"422":1050013,"424":1050013,"427":1050004,"429":1050004,"431":1050004,"434":1050004,"436":1050004,"438":1050004,"442":1050004,"444":1050004,"446":1050004,"448":1050004,"449":1050004,"450":1050004,"451":1050004,"453":1050004,"454":1050004,"455":1050004,"456":1050004,"461":1050010,"462":1050010,"463":1050010,"468":1050010,"469":1050010,"470":1050010,"473":1050010,"474":1050010,"475":1050010,"477":1050010,"478":1050010,"479":1050010,"480":1050010,"483":1050010,"484":1050010,"485":1050010,"487":1050010,"488":1050010,"489":1050010,"490":1050010,"494":1050010,"495":1050010,"496":1050010,"500":1050010,"501":1050010,"502":1050010,"504":1050010,"505":1050010,"506":1050010,"507":1050010,"508":1050010,"509":1050010,"511":1050010,"512":1050010,"513":1050010,"514":1050010,"515":1050010,"516":1050010,"520":1050011,"524":1050011,"528":1050013,"533":1050013,"537":1050013,"541":1050013,"544":1050013,"547":1050013,"550":1050013,"553":1050013,"556":1050013,"559":1050013,"562":1050013,"564":1050013,"567":1050013,"569":1050013,"572":1050013,"574":1050013,"577":1050013,"579":1050013,"582":1050013,"584":1050013,"587":1050013,"589":1050013,"592":1050013,"594":1050013,"597":1050013,"599":1050013,"602":1050013,"604":1050013,"607":1050013,"609":1050013,"612":1050013,"614":1050013,"617":1050013,"619":1050013,"622":1050013,"624":1050013,"627":1050013,"629":1050013,"632":1050013,"634":1050013,"637":1050013,"639":1050013,"642":1050013,"644":1050013,"647":1050013,"649":1050013,"652":1050013,"654":1050013,"657":1050013,"659":1050013,"662":1050013,"664":1050013,"667":1050013,"669":1050013,"672":1050013,"674":1050013,"677":1050013,"679":1050013,"682":1050013,"684":1050013,"687":1050013,"689":1050013,"692":1050013,"694":1050013,"697":1050013,"699":1050013,"702":1050013,"704":1050013,"707":1050013,"709":1050013,"712":1050013,"714":1050013,"717":1050013,"719":1050013,"722":1050013,"724":1050013,"727":1050013,"729":1050013,"732":1050013,"734":1050013,"738":1050013,"742":1050013,"747":1050013,"752":1050013,"757":1050013,"762":1050013,"765":1050013,"768":1050013,"771":1050013,"774":1050013,"777":1050013,"780":1050013,"783":1050013,"785":1050013,"788":1050013,"790":1050013,"793":1050013,"795":1050013,"798":1050013,"800":1050013,"803":1050013,"805":1050013,"808":1050013,"810":1050013,"813":1050013,"815":1050013,"818":1050013,"820":1050013,"823":1050013,"825":1050013,"828":1050013,"830":1050013,"833":1050013,"835":1050013,"838":1050013,"840":1050013,"843":1050013,"845":1050013,"848":1050013,"850":1050013,"853":1050013,"855":1050013,"858":1050013,"860":1050013,"863":1050013,"865":1050013,"868":1050013,"870":1050013,"873":1050013,"875":1050013,"878":1050013,"880":1050013,"883":1050013,"885":1050013,"888":1050013,"890":1050013,"893":1050013,"895":1050013,"898":1050013,"900":1050013,"903":1050013,"905":1050013,"908":1050013,"910":1050013,"913":1050013,"915":1050013,"918":1050013,"920":1050013,"923":1050013,"925":1050013,"928":1050013,"930":1050013,"933":1050013,"935":1050013,"938":1050013,"940":1050013,"943":1050013,"945":1050013,"948":1050013,"950":1050013,"953":1050013,"955":1050013,"958":1050013,"960":1050013,"963":1050013,"965":1050013,"968":1050013,"970":1050013,"973":1050013,"975":1050013,"978":1050013,"980":1050013,"983":1050013,"985":1050013,"988":1050013,"990":1050013,"993":1050013,"994":1050013,"995":1050013,"996":1050013,"997":1050013,"998":1050013,"999":1050013,"1000":1050013,"1001":1050013,"1002":1050013,"1003":1050013,"1004":1050013,"1007":1050013,"1008":1050013,"1009":1050013,"1010":1050013,"1011":1050013,"1012":1050013,"1013":1050013,"1014":1050013,"1015":1050013,"1016":1050013,"1017":1050013,"1018":1050013,"1021":1050013,"1022":1050013,"1023":1050013,"1024":1050013,"1025":1050013,"1026":1050013,"1027":1050013,"1028":1050013,"1029":1050013,"1030":1050013,"1031":1050013,"1032":1050013,"1035":1050013,"1036":1050013,"1037":1050013,"1038":1050013,"1039":1050013,"1040":1050013,"1041":1050013,"1042":1050013,"1043":1050013,"1044":1050013,"1045":1050013,"1046":1050013,"1049":1050013,"1050":1050013,"1051":1050013,"1052":1050013,"1053":1050013,"1054":1050013,"1055":1050013,"1056":1050013,"1057":1050013,"1058":1050013,"1059":1050013,"1060":1050013,"1063":1050013,"1064":1050013,"1065":1050013,"1066":1050013,"1067":1050013,"1068":1050013,"1069":1050013,"1070":1050013,"1071":1050013,"1072":1050013,"1073":1050013,"1074":1050013,"1078":1050004,"1081":1050004,"1083":1050004,"1086":1050004,"1088":1050004,"1090":1050004,"1093":1050004,"1095":1050004,"1097":1050004,"1101":1050004,"1103":1050004,"1105":1050004,"1107":1050004,"1109":1050004,"1111":1050004,"1113":1050004,"1115":1050004,"1117":1050004,"1119":1050004,"1121":1050004,"1123":1050004,"1124":1050004,"1125":1050004,"1126":1050004,"1127":1050004,"1128":1050004,"1129":1050004,"1132":1050010,"1133":1050010,"1134":1050010,"1137":1050010,"1138":1050010,"1139":1050010,"1141":1050010,"1142":1050010,"1143":1050010,"1144":1050010,"1147":1050010,"1148":1050010,"1149":1050010,"1151":1050010,"1152":1050010,"1153":1050010,"1154":1050010,"1155":1050010,"1156":1050010,"1157":1050010,"1158":1050010,"1159":1050010,"1160":1050010,"1161":1050010,"1162":1050010,"1163":1050010,"1164":1050010,"1166":1050010,"1167":1050010,"1168":1050010,"1169":1050010,"1170":1050010,"1171":1050010,"1173":1050010,"1174":1050010,"1175":1050010,"1176":1050010,"1177":1050010,"1178":1050010,"1179":1050010,"1180":1050010,"1181":1050010,"1182":1050010,"1183":1050010,"1184":1050010,"1185":1050011,"1186":1050011,"1187":1050011,"1188":1050011,"1189":1050011,"1190":1050011,"1191":1050011,"1192":1050011,"1196":1050011,"1198":1050011,"1200":1050011,"1201":1050013,"1202":1050013,"1203":1050013,"1204":1050013,"1205":1050013,"1206":1050013,"1207":1050013,"1208":1050013,"1209":1050013,"1210":1050013,"1211":1050013,"1212":1050013,"1213":1050013,"1214":1050013,"1215":1050013,"1216":1050013,"1217":1050013,"1218":1050013,"1219":1050013,"1220":1050013,"1221":1050013,"1222":1050013,"1223":1050013,"1224":1050013,"1225":1050013,"1226":1050013,"1227":1050013,"1228":1050013,"1229":1050013,"1230":1050013,"1231":1050013,"1232":1050013,"1233":1050013,"1234":1050013,"1235":1050013,"1236":1050013,"1237":1050013,"1238":1050013,"1239":1050013,"1243":1050013,"1246":1050013,"1249":1050013,"1252":1050013,"1255":1050013,"1257":1050013,"1260":1050013,"1262":1050013,"1265":1050013,"1267":1050013,"1270":1050013,"1272":1050013,"1275":1050013,"1277":1050013,"1280":1050013,"1282":1050013,"1285":1050013,"1287":1050013,"1290":1050013,"1292":1050013,"1295":1050013,"1297":1050013,"1300":1050013,"1302":1050013,"1305":1050013,"1307":1050013,"1310":1050013,"1312":1050013,"1315":1050013,"1317":1050013,"1320":1050013,"1322":1050013,"1325":1050013,"1327":1050013,"1328":1050013,"1329":1050013,"1330":1050013,"1331":1050013,"1332":1050013,"1333":1050013,"1334":1050013,"1335":1050013,"1336":1050013,"1337":1050013,"1338":1050013,"1339":1050013,"1340":1050013,"1341":1050013,"1342":1050013,"1343":1050013,"1344":1050013,"1345":1050013,"1346":1050013,"1347":1050013,"1348":1050013,"1349":1050013,"1350":1050013,"1351":1050013,"1352":1050013,"1353":1050013,"1354":1050013,"1355":1050013,"1356":1050013,"1357":1050013,"1358":1050013,"1359":1050013,"1360":1050013,"1361":1050013,"1362":1050013,"1363":1050013,"1364":1050013,"1365":1050013,"1366":1050013,"1367":1050013,"1368":1050013,"1369":1050013,"1370":1050013,"1371":1050013,"1372":1050013,"1373":1050013,"1374":1050013,"1375":1050013,"1376":1050013,"1377":1050013,"1378":1050013,"1379":1050013,"1380":1050013,"1381":1050013,"1382":1050013,"1383":1050013,"1384":1050013,"1385":1050013,"1386":1050013,"1387":1050013,"1388":1050013,"1389":1050013,"1390":1050013,"1391":1050013,"1392":1050013,"1393":1050013,"1394":1050013,"1395":1050013,"1396":1050013,"1397":1050013,"1398":1050013,"1399":1050013,"1400":1050013,"1401":1050013,"1402":1050013,"1403":1050013,"1404":1050013,"1405":1050013,"1408":1050013,"1409":1050013,"1410":1050013,"1411":1050013,"1412":1050013,"1413":1050013,"1416":1050013,"1417":1050013,"1418":1050013,"1419":1050013,"1420":1050013,"1421":1050013,"1424":1050013,"1425":1050013,"1426":1050013,"1427":1050013,"1428":1050013,"1429":1050013,"1430":1050013,"1431":1050013,"1432":1050013,"1433":1050013,"1434":1050013,"1435":1050013,"1438":1050013,"1439":1050013,"1440":1050013,"1441":1050013,"1442":1050013,"1443":1050013,"1444":1050013,"1445":1050013,"1446":1050013,"1447":1050013,"1448":1050013,"1449":1050013,"1452":1050013,"1453":1050013,"1454":1050013,"1455":1050013,"1456":1050013,"1457":1050013,"1458":1050013,"1459":1050013,"1460":1050013,"1461":1050013,"1462":1050013,"1463":1050013,"1466":1050013,"1467":1050013,"1468":1050013,"1469":1050013,"1470":1050013,"1471":1050013,"1472":1050013,"1473":1050013,"1474":1050013,"1475":1050013,"1476":1050013,"1477":1050013,"1480":1050013,"1481":1050013,"1482":1050013,"1483":1050013,"1484":1050013,"1485":1050013,"1486":1050013,"1487":1050013,"1488":1050013,"1489":1050013,"1490":1050013,"1491":1050013,"1494":1050013,"1495":1050013,"1496":1050013,"1497":1050013,"1498":1050013,"1499":1050013,"1500":1050013,"1501":1050013,"1502":1050013,"1503":1050013,"1504":1050013,"1505":1050013,"1508":1050000,"1509":1050000,"1511":1050000,"1512":1050000,"1514":1050000,"1515":1050000,"1516":1050001,"1517":1050001,"1518":1050001,"1519":1050001,"1520":1050001,"1521":1050001,"1522":1050002,"1523":1050002,"1524":1050002,"1525":1050002,"1526":1050002,"1527":1050002,"1530":1050004,"1532":1050004,"1535":1050004,"1536":1050004,"1537":1050004,"1540":1050004,"1541":1050004,"1543":1050004,"1545":1050004,"1547":1050004,"1548":1050004,"1551":1050004,"1553":1050004,"1555":1050004,"1557":1050004,"1559":1050004,"1561":1050004,"1563":1050004,"1565":1050004,"1567":1050004,"1569":1050004,"1571":1050004,"1573":1050004,"1575":1050004,"1577":1050004,"1579":1050004,"1582":1050004,"1584":1050004,"1586":1050004,"1588":1050004,"1590":1050004,"1592":1050004,"1595":1050004,"1598":1050004,"1600":1050004,"1602":1050004,"1604":1050004,"1606":1050004,"1608":1050004,"1610":1050004,"1612":1050004,"1614":1050004,"1616":1050004,"1618":1050004,"1620":1050004,"1622":1050004,"1624":1050004,"1626":1050004,"1628":1050007,"1629":1050007,"1631":1050007,"1632":1050007,"1634":1050009,"1636":1050009,"1637":1050009,"1638":1050009,"1641":1050010,"1642":1050010,"1643":1050010,"1644":1050010,"1645":1050010,"1646":1050010,"1647":1050010,"1648":1050010,"1649":1050010,"1650":1050010,"1651":1050010,"1652":1050010,"1653":1050010,"1654":1050010,"1655":1050010,"1656":1050010,"1657":1050010,"1658":1050010,"1659":1050010,"1660":1050010,"1661":1050010,"1662":1050010,"1663":1050010,"1664":1050010,"1665":1050011,"1666":1050011,"1667":1050011,"1668":1050011,"1669":1050011,"1670":1050011,"1671":1050011,"1672":1050011,"1673":1050011,"1674":1050011,"1675":1050011,"1676":1050011,"1677":1050011,"1678":1050011,"1680":1050011,"1681":1050013,"1682":1050013,"1683":1050013,"1684":1050013,"1685":1050013,"1686":1050013,"1687":1050013,"1688":1050013,"1689":1050013,"1690":1050013,"1691":1050013,"1692":1050013,"1693":1050013,"1694":1050013,"1695":1050013,"1696":1050013,"1697":1050013,"1698":1050013,"1699":1050013,"1700":1050013,"1701":1050013,"1702":1050013,"1703":1050013,"1704":1050013,"1705":1050013,"1706":1050013,"1707":1050013,"1708":1050013,"1709":1050013,"1710":1050013,"1711":1050013,"1712":1050013,"1713":1050013,"1714":1050013,"1715":1050013,"1716":1050013,"1717":1050013,"1718":1050013,"1719":1050013,"1720":1050013,"1721":1050013,"1722":1050013,"1723":1050013,"1724":1050013,"1725":1050013,"1726":1050013,"1727":1050013,"1728":1050013,"1729":1050013,"1730":1050013,"1731":1050013,"1732":1050013,"1733":1050013,"1734":1050013,"1735":1050013,"1736":1050013,"1737":1050013,"1738":1050013,"1739":1050013,"1740":1050013,"1741":1050013,"1742":1050013,"1743":1050013,"1744":1050013,"1745":1050013,"1746":1050013,"1747":1050013,"1748":1050013,"1750":1050013,"1751":1050013,"1753":1050013,"1755":1050013,"1756":1050013,"1757":1050013,"1758":1050013,"1759":1050013,"1760":1050013,"1761":1050013,"1762":1050013,"1763":1050013,"1764":1050013,"1765":1050013,"1766":1050013,"1767":1050013,"1768":1050013,"1769":1050013,"1770":1050013,"1771":1050013,"1772":1050013,"1773":1050013,"1774":1050013,"1775":1050013,"1776":1050013,"1777":1050013,"1778":1050013,"1779":1050013,"1780":1050013,"1781":1050013,"1782":1050013,"1783":1050013,"1784":1050013,"1785":1050013,"1786":1050013,"1787":1050013,"1788":1050013,"1789":1050013,"1790":1050013,"1791":1050013,"1792":1050013,"1793":1050013,"1794":1050013,"1795":1050013,"1796":1050013,"1797":1050013,"1798":1050013,"1799":1050013,"1800":1050013,"1801":1050013,"1802":1050013,"1803":1050013,"1804":1050013,"1805":1050013,"1806":1050013,"1807":1050013,"1808":1050013,"1809":1050013,"1810":1050013,"1811":1050013,"1812":1050013,"1813":1050013,"1814":1050013,"1815":1050013,"1816":1050013,"1817":1050013,"1818":1050013,"1819":1050013,"1820":1050013,"1821":1050013,"1822":1050013,"1823":1050013,"1824":1050013,"1825":1050013,"1826":1050013,"1827":1050013,"1828":1050013,"1829":1050013,"1830":1050013,"1831":1050013,"1832":1050013,"1833":1050013,"1834":1050013,"1835":1050013,"1836":1050013,"1837":1050013,"1838":1050013,"1839":1050013,"1840":1050013,"1841":1050013,"1842":1050013,"1843":1050013,"1844":1050013,"1845":1050013,"1846":1050013,"1847":1050013,"1848":1050013,"1849":1050013,"1850":1050013,"1851":1050013,"1852":1050013,"1855":1050013,"1856":1050013,"1857":1050013,"1858":1050013,"1859":1050013,"1860":1050013,"1863":1050013,"1864":1050013,"1865":1050013,"1866":1050013,"1867":1050013,"1868":1050013,"1869":"0","1871":"0","1873":"0","1875":"0","1877":"0","1879":"0","1881":"0","1883":"0","1885":"0","1887":"0","1889":"0","1891":"0","1893":"0","1894":"0","1895":"0","1896":"0","1897":"0","1898":"0","1899":"0","1900":"0","1901":"0","1902":1050000,"1903":1050000,"1904":1050001,"1905":1050001,"1906":1050002,"1907":1050002,"1909":1050002,"1911":1050003,"1913":1050004,"1914":1050004,"1915":1050004,"1917":"0","1918":"0","1919":"0","1920":"0","1921":"0","1922":"0","1923":"0","1924":"0","1925":"0","1926":"0","1927":"0","1928":"0","1929":"0","1930":1050004,"1931":1050004,"1932":1050004,"1933":1050004,"1934":1050005,"1936":1050004,"1937":1050004,"1938":1050004,"1939":1050004,"1940":1050004,"1941":1050004,"1942":1050004,"1943":1050004,"1944":1050004,"1945":1050004,"1946":1050004,"1948":1050004,"1950":1050004,"1952":1050004,"1954":1050004,"1956":1050004,"1958":1050004,"1960":1050004,"1962":1050004,"1964":1050004,"1965":1050007,"1966":1050007,"1967":1050008,"1968":1050008,"1969":1050008,"1970":1050009,"1971":1050009,"1972":1050009,"1973":1050009,"1974":1050009,"1975":1050009,"1976":1050010,"1977":1050010,"1978":1050010,"1979":1050010,"1980":1050010,"1981":1050010,"1982":1050010,"1983":1050011,"1984":1050011,"1985":1050011,"1986":1050011,"1987":1050011,"1988":1050011,"1989":1050011,"1990":1050011,"1991":1050011,"1992":1050011,"1993":1050011,"1994":1050011,"1995":1050011,"1996":1050011,"1997":1050011,"1998":1050011,"1999":1050011,"2000":1050011,"2001":1050011,"2002":1050011,"2003":1050013,"2004":1050013,"2005":1050013,"2006":1050013,"2007":1050013,"2008":1050013,"2009":1050013,"2010":1050013,"2011":1050013,"2012":1050013,"2013":1050013,"2014":1050013,"2015":1050013,"2016":1050013,"2017":1050013,"2018":1050013,"2019":1050013,"2020":1050013,"2021":1050013,"2022":1050013,"2023":1050013,"2024":1050013,"2025":1050013,"2026":1050013,"2027":1050013,"2028":1050013,"2029":1050013,"2030":1050013,"2031":1050013,"2032":1050013,"2033":1050013,"2034":1050013,"2035":1050013,"2036":1050013,"2037":1050013,"2038":1050013,"2039":1050013,"2040":1050013,"2042":1050013,"2043":1050013,"2044":1050013,"2045":1050013,"2046":1050013,"2047":1050013,"2048":1050013,"2049":1050013,"2050":1050013,"2051":1050013,"2052":1050013,"2053":1050013,"2054":1050013,"2055":1050013,"2056":1050013,"2057":1050013,"2058":1050013,"2059":1050013,"2060":1050013,"2061":1050013,"2062":1050013,"2063":1050013,"2064":1050013,"2065":1050000,"2066":1050001,"2067":1050002,"2068":1050004,"2069":1050004,"2070":1050004,"2071":1050004,"2072":1050004,"2073":1050004,"2074":1050006,"2075":1050006,"2076":1050007,"2077":1050007,"2078":1050007,"2079":1050009,"2080":1050010,"2081":1050010,"2082":1050011,"2083":1050011,"2084":1050011,"2085":1050011,"2086":1050011,"2087":1050011,"2088":1050011,"2089":1050011,"2090":1050011,"2091":1050012,"2092":1050013,"2093":1050013,"2094":1050013,"2095":1050013,"2096":1050013,"2097":1050013,"2098":1050013,"2099":1050013,"2100":1050013,"2101":1050013,"2102":1050013,"2103":1050014,"2104":1050015,"2105":1050016,"2106":1050017,"2107":1050018,"2108":1050019,"2109":1050003,"2110":1050020,"2111":1050021,"2112":1050022,"2113":1050023,"2114":1050024,"2115":1050025,"2116":1050026,"2117":1050027,"2118":1050028,"2119":1050029,"2120":1050030,"2121":1050031,"2122":1050032,"2123":1050033,"2124":1050034,"2125":1050035,"2126":1050036},{"1508":[1,0],"1509":[1,0],"1511":[1,0],"1512":[1,0],"1514":[1,0],"1515":[1,0],"1516":[1,0],"1517":[1,0],"1518":[1,0],"1519":[1,0],"1520":[1,0],"1521":[1,0],"1522":[1,0],"1523":[1,0],"1524":[1,0],"1525":[1,0],"1526":[1,0],"1527":[1,0],"1902":[1,0],"1903":[1,0],"1904":[1,0],"1905":[1,0],"1906":[1,0],"1907":[1,0],"1944":[1,0],"1945":[1,0],"1946":[1,0],"1948":[1,0],"1950":[1,0],"1952":[1,0],"1954":[1,0],"1956":[1,0],"1958":[1,0],"1960":[1,0],"1962":[1,0]},{}]','[100,1497,{"0":{"2894":1436,"6030":1439,"7651":1048,"10219":1448,"10987":948,"11495":1442,"24313":928,"25521":1064,"28042":1179,"38610":1456,"42761":938,"45756":1011,"46237":998,"47341":1056,"47398":1060,"58873":1454,"65972":1481,"65973":1482,"66681":1032,"72345":1182,"72836":1052,"74596":1040,"80126":1451,"82992":1445,"87060":1433,"1050000":985,"1050001":1024,"1050002":1176,"1050003":1068,"1050004":1487,"1050005":1488,"1050006":1,"1050007":35,"1050008":69,"1050009":137,"1050010":1489,"1050011":1490,"1050012":1248,"1050013":1491,"1050014":103,"1050015":1295,"1050016":1462,"1050017":1463,"1050018":1464,"1050019":1465,"1050020":1081,"1050021":1484,"1050022":1485,"1050023":1477,"1050025":1227,"1050026":1234,"1050027":1241,"1050028":1339,"1050029":1345,"1050030":1425,"1050031":1492,"1050032":1493,"1050033":1494,"1050034":1495,"1050035":1496,"1050036":1497,"2070003":0},"1":{"1050016":2,"1050017":1314,"1050018":1319,"2070003":1466},"2":{"46":3,"1050006":1113,"1050007":1112,"1050008":1110,"1050009":182,"1050014":1111,"2070003":1309},"3":{"1050006":897,"1050007":896,"1050008":894,"1050009":4,"1050014":895,"2070003":0},"4":{"46":5,"3361":20,"1050008":213,"1050014":220,"2070003":893},"5":{"1050006":508,"1050007":507,"1050008":6,"1050014":13,"2070003":0},"6":{"46":7,"3361":10,"1050006":228,"1050007":227,"2070003":583},"7":{"1050006":9,"1050007":8,"2070003":229},"10":{"1050006":12,"1050007":11,"2070003":230},"13":{"46":14,"3361":17,"1050006":232,"1050007":231,"2070003":584},"14":{"1050006":16,"1050007":15,"2070003":233},"17":{"1050006":19,"1050007":18,"2070003":234},"20":{"1050006":512,"1050007":511,"1050008":21,"1050014":28,"2070003":0},"21":{"46":22,"3361":25,"1050006":236,"1050007":235,"2070003":585},"22":{"1050006":24,"1050007":23,"2070003":237},"25":{"1050006":27,"1050007":26,"2070003":238},"28":{"46":29,"3361":32,"1050006":240,"1050007":239,"2070003":586},"29":{"1050006":31,"1050007":30,"2070003":241},"32":{"1050006":34,"1050007":33,"2070003":242},"35":{"1050016":36,"1050017":1315,"1050018":1320,"2070003":1467},"36":{"46":37,"1050006":1118,"1050007":1117,"1050008":1115,"1050009":243,"1050014":1116,"2070003":1310},"37":{"1050006":902,"1050007":901,"1050008":899,"1050009":38,"1050014":900,"2070003":0},"38":{"46":39,"3361":54,"1050008":274,"1050014":281,"2070003":898},"39":{"1050006":516,"1050007":515,"1050008":40,"1050014":47,"2070003":0},"40":{"46":41,"3361":44,"1050006":289,"1050007":288,"2070003":625},"41":{"1050006":43,"1050007":42,"2070003":290},"44":{"1050006":46,"1050007":45,"2070003":291},"47":{"46":48,"3361":51,"1050006":293,"1050007":292,"2070003":626},"48":{"1050006":50,"1050007":49,"2070003":294},"51":{"1050006":53,"1050007":52,"2070003":295},"54":{"1050006":520,"1050007":519,"1050008":55,"1050014":62,"2070003":0},"55":{"46":56,"3361":59,"1050006":297,"1050007":296,"2070003":627},"56":{"1050006":58,"1050007":57,"2070003":298},"59":{"1050006":61,"1050007":60,"2070003":299},"62":{"46":63,"3361":66,"1050006":301,"1050007":300,"2070003":628},"63":{"1050006":65,"1050007":64,"2070003":302},"66":{"1050006":68,"1050007":67,"2070003":303},"69":{"3361":1094,"1050006":1301,"1050007":879,"1050016":70,"1050017":1316,"1050018":1321,"2070003":1468},"70":{"46":71,"1050006":1123,"1050007":1122,"1050008":1120,"1050009":304,"1050014":1121,"2070003":1311},"71":{"1050006":907,"1050007":906,"1050008":904,"1050009":72,"1050014":905,"2070003":0},"72":{"46":73,"3361":88,"1050008":335,"1050014":342,"2070003":903},"73":{"1050006":524,"1050007":523,"1050008":74,"1050014":81,"2070003":0},"74":{"46":75,"3361":78,"1050006":350,"1050007":349,"2070003":667},"75":{"1050006":77,"1050007":76,"2070003":351},"78":{"1050006":80,"1050007":79,"2070003":352},"81":{"46":82,"3361":85,"1050006":354,"1050007":353,"2070003":668},"82":{"1050006":84,"1050007":83,"2070003":355},"85":{"1050006":87,"1050007":86,"2070003":356},"88":{"1050006":528,"1050007":527,"1050008":89,"1050014":96,"2070003":0},"89":{"46":90,"3361":93,"1050006":358,"1050007":357,"2070003":669},"90":{"1050006":92,"1050007":91,"2070003":359},"93":{"1050006":95,"1050007":94,"2070003":360},"96":{"46":97,"3361":100,"1050006":362,"1050007":361,"2070003":670},"97":{"1050006":99,"1050007":98,"2070003":363},"100":{"1050006":102,"1050007":101,"2070003":364},"103":{"3361":1096,"1050006":1302,"1050007":882,"1050015":1290,"1050016":104,"1050017":1317,"1050018":1322,"1050019":1294,"2070003":1469},"104":{"46":105,"1050006":1128,"1050007":1127,"1050008":1125,"1050009":365,"1050014":1126,"2070003":1312},"105":{"1050006":912,"1050007":911,"1050008":909,"1050009":106,"1050014":910,"2070003":0},"106":{"46":107,"3361":122,"1050008":396,"1050014":403,"2070003":908},"107":{"1050006":532,"1050007":531,"1050008":108,"1050014":115,"2070003":0},"108":{"46":109,"3361":112,"1050006":411,"1050007":410,"2070003":709},"109":{"1050006":111,"1050007":110,"2070003":412},"112":{"1050006":114,"1050007":113,"2070003":413},"115":{"46":116,"3361":119,"1050006":415,"1050007":414,"2070003":710},"116":{"1050006":118,"1050007":117,"2070003":416},"119":{"1050006":121,"1050007":120,"2070003":417},"122":{"1050006":536,"1050007":535,"1050008":123,"1050014":130,"2070003":0},"123":{"46":124,"3361":127,"1050006":419,"1050007":418,"2070003":711},"124":{"1050006":126,"1050007":125,"2070003":420},"127":{"1050006":129,"1050007":128,"2070003":421},"130":{"46":131,"3361":134,"1050006":423,"1050007":422,"2070003":712},"131":{"1050006":133,"1050007":132,"2070003":424},"134":{"1050006":136,"1050007":135,"2070003":425},"137":{"46":171,"3361":1102,"1050006":1308,"1050007":1307,"1050008":487,"1050014":492,"1050016":138,"1050017":1318,"1050018":1323,"2070003":1470},"138":{"46":139,"1050006":1133,"1050007":1132,"1050008":1130,"1050009":426,"1050014":1131,"2070003":1313},"139":{"1050006":917,"1050007":916,"1050008":914,"1050009":140,"1050014":915,"2070003":0},"140":{"46":141,"3361":156,"1050008":457,"1050014":464,"2070003":913},"141":{"1050006":540,"1050007":539,"1050008":142,"1050014":149,"2070003":0},"142":{"46":143,"3361":146,"1050006":472,"1050007":471,"2070003":751},"143":{"1050006":145,"1050007":144,"2070003":473},"146":{"1050006":148,"1050007":147,"2070003":474},"149":{"46":150,"3361":153,"1050006":476,"1050007":475,"2070003":752},"150":{"1050006":152,"1050007":151,"2070003":477},"153":{"1050006":155,"1050007":154,"2070003":478},"156":{"1050006":544,"1050007":543,"1050008":157,"1050014":164,"2070003":0},"157":{"46":158,"3361":161,"1050006":480,"1050007":479,"2070003":753},"158":{"1050006":160,"1050007":159,"2070003":481},"161":{"1050006":163,"1050007":162,"2070003":482},"164":{"46":165,"3361":168,"1050006":484,"1050007":483,"2070003":754},"165":{"1050006":167,"1050007":166,"2070003":485},"168":{"1050006":170,"1050007":169,"2070003":486},"171":{"1050008":172,"1050014":177,"2070003":0},"172":{"46":173,"3361":755,"1050007":497,"2070003":0},"173":{"1050007":174,"2070003":0},"174":{"3361":175,"1050006":500,"2070003":0},"175":{"1050006":176,"2070003":0},"177":{"46":178,"3361":757,"1050007":501,"2070003":0},"178":{"1050007":179,"2070003":0},"179":{"3361":180,"1050006":504,"2070003":0},"180":{"1050006":181,"2070003":0},"182":{"46":183,"3361":198,"1050008":545,"1050014":552,"2070003":1109},"183":{"1050006":772,"1050007":771,"1050008":184,"1050014":191,"2070003":0},"184":{"46":185,"3361":188,"1050006":560,"1050007":559,"2070003":817},"185":{"1050006":187,"1050007":186,"2070003":561},"188":{"1050006":190,"1050007":189,"2070003":562},"191":{"46":192,"3361":195,"1050006":564,"1050007":563,"2070003":818},"192":{"1050006":194,"1050007":193,"2070003":565},"195":{"1050006":197,"1050007":196,"2070003":566},"198":{"1050006":776,"1050007":775,"1050008":199,"1050014":206,"2070003":0},"199":{"46":200,"3361":203,"1050006":568,"1050007":567,"2070003":819},"200":{"1050006":202,"1050007":201,"2070003":569},"203":{"1050006":205,"1050007":204,"2070003":570},"206":{"46":207,"3361":210,"1050006":572,"1050007":571,"2070003":820},"207":{"1050006":209,"1050007":208,"2070003":573},"210":{"1050006":212,"1050007":211,"2070003":574},"213":{"46":214,"3361":217,"1050006":576,"1050007":575,"2070003":821},"214":{"1050006":216,"1050007":215,"2070003":577},"217":{"1050006":219,"1050007":218,"2070003":578},"220":{"46":221,"3361":224,"1050006":580,"1050007":579,"2070003":822},"221":{"1050006":223,"1050007":222,"2070003":581},"224":{"1050006":226,"1050007":225,"2070003":582},"243":{"46":244,"3361":259,"1050008":587,"1050014":594,"2070003":1114},"244":{"1050006":780,"1050007":779,"1050008":245,"1050014":252,"2070003":0},"245":{"46":246,"3361":249,"1050006":602,"1050007":601,"2070003":831},"246":{"1050006":248,"1050007":247,"2070003":603},"249":{"1050006":251,"1050007":250,"2070003":604},"252":{"46":253,"3361":256,"1050006":606,"1050007":605,"2070003":832},"253":{"1050006":255,"1050007":254,"2070003":607},"256":{"1050006":258,"1050007":257,"2070003":608},"259":{"1050006":784,"1050007":783,"1050008":260,"1050014":267,"2070003":0},"260":{"46":261,"3361":264,"1050006":610,"1050007":609,"2070003":833},"261":{"1050006":263,"1050007":262,"2070003":611},"264":{"1050006":266,"1050007":265,"2070003":612},"267":{"46":268,"3361":271,"1050006":614,"1050007":613,"2070003":834},"268":{"1050006":270,"1050007":269,"2070003":615},"271":{"1050006":273,"1050007":272,"2070003":616},"274":{"46":275,"3361":278,"1050006":618,"1050007":617,"2070003":835},"275":{"1050006":277,"1050007":276,"2070003":619},"278":{"1050006":280,"1050007":279,"2070003":620},"281":{"46":282,"3361":285,"1050006":622,"1050007":621,"2070003":836},"282":{"1050006":284,"1050007":283,"2070003":623},"285":{"1050006":287,"1050007":286,"2070003":624},"304":{"46":305,"3361":320,"1050008":629,"1050014":636,"2070003":1119},"305":{"1050006":788,"1050007":787,"1050008":306,"1050014":313,"2070003":0},"306":{"46":307,"3361":310,"1050006":644,"1050007":643,"2070003":845},"307":{"1050006":309,"1050007":308,"2070003":645},"310":{"1050006":312,"1050007":311,"2070003":646},"313":{"46":314,"3361":317,"1050006":648,"1050007":647,"2070003":846},"314":{"1050006":316,"1050007":315,"2070003":649},"317":{"1050006":319,"1050007":318,"2070003":650},"320":{"1050006":792,"1050007":791,"1050008":321,"1050014":328,"2070003":0},"321":{"46":322,"3361":325,"1050006":652,"1050007":651,"2070003":847},"322":{"1050006":324,"1050007":323,"2070003":653},"325":{"1050006":327,"1050007":326,"2070003":654},"328":{"46":329,"3361":332,"1050006":656,"1050007":655,"2070003":848},"329":{"1050006":331,"1050007":330,"2070003":657},"332":{"1050006":334,"1050007":333,"2070003":658},"335":{"46":336,"3361":339,"1050006":660,"1050007":659,"2070003":849},"336":{"1050006":338,"1050007":337,"2070003":661},"339":{"1050006":341,"1050007":340,"2070003":662},"342":{"46":343,"3361":346,"1050006":664,"1050007":663,"2070003":850},"343":{"1050006":345,"1050007":344,"2070003":665},"346":{"1050006":348,"1050007":347,"2070003":666},"365":{"46":366,"3361":381,"1050008":671,"1050014":678,"2070003":1124},"366":{"1050006":796,"1050007":795,"1050008":367,"1050014":374,"2070003":0},"367":{"46":368,"3361":371,"1050006":686,"1050007":685,"2070003":859},"368":{"1050006":370,"1050007":369,"2070003":687},"371":{"1050006":373,"1050007":372,"2070003":688},"374":{"46":375,"3361":378,"1050006":690,"1050007":689,"2070003":860},"375":{"1050006":377,"1050007":376,"2070003":691},"378":{"1050006":380,"1050007":379,"2070003":692},"381":{"1050006":800,"1050007":799,"1050008":382,"1050014":389,"2070003":0},"382":{"46":383,"3361":386,"1050006":694,"1050007":693,"2070003":861},"383":{"1050006":385,"1050007":384,"2070003":695},"386":{"1050006":388,"1050007":387,"2070003":696},"389":{"46":390,"3361":393,"1050006":698,"1050007":697,"2070003":862},"390":{"1050006":392,"1050007":391,"2070003":699},"393":{"1050006":395,"1050007":394,"2070003":700},"396":{"46":397,"3361":400,"1050006":702,"1050007":701,"2070003":863},"397":{"1050006":399,"1050007":398,"2070003":703},"400":{"1050006":402,"1050007":401,"2070003":704},"403":{"46":404,"3361":407,"1050006":706,"1050007":705,"2070003":864},"404":{"1050006":406,"1050007":405,"2070003":707},"407":{"1050006":409,"1050007":408,"2070003":708},"426":{"46":427,"3361":442,"1050008":713,"1050014":720,"2070003":1129},"427":{"1050006":804,"1050007":803,"1050008":428,"1050014":435,"2070003":0},"428":{"46":429,"3361":432,"1050006":728,"1050007":727,"2070003":873},"429":{"1050006":431,"1050007":430,"2070003":729},"432":{"1050006":434,"1050007":433,"2070003":730},"435":{"46":436,"3361":439,"1050006":732,"1050007":731,"2070003":874},"436":{"1050006":438,"1050007":437,"2070003":733},"439":{"1050006":441,"1050007":440,"2070003":734},"442":{"1050006":808,"1050007":807,"1050008":443,"1050014":450,"2070003":0},"443":{"46":444,"3361":447,"1050006":736,"1050007":735,"2070003":875},"444":{"1050006":446,"1050007":445,"2070003":737},"447":{"1050006":449,"1050007":448,"2070003":738},"450":{"46":451,"3361":454,"1050006":740,"1050007":739,"2070003":876},"451":{"1050006":453,"1050007":452,"2070003":741},"454":{"1050006":456,"1050007":455,"2070003":742},"457":{"46":458,"3361":461,"1050006":744,"1050007":743,"2070003":877},"458":{"1050006":460,"1050007":459,"2070003":745},"461":{"1050006":463,"1050007":462,"2070003":746},"464":{"46":465,"3361":468,"1050006":748,"1050007":747,"2070003":878},"465":{"1050006":467,"1050007":466,"2070003":749},"468":{"1050006":470,"1050007":469,"2070003":750},"487":{"46":488,"3361":885,"1050007":759,"2070003":1305},"488":{"1050007":489,"2070003":0},"489":{"3361":490,"1050006":762,"2070003":0},"490":{"1050006":491,"2070003":0},"492":{"46":493,"3361":887,"1050007":763,"2070003":1306},"493":{"1050007":494,"2070003":0},"494":{"3361":495,"1050006":766,"2070003":0},"495":{"1050006":496,"2070003":0},"497":{"3361":498,"1050006":767,"2070003":889},"498":{"1050006":499,"2070003":0},"501":{"3361":502,"1050006":768,"2070003":890},"502":{"1050006":503,"2070003":0},"545":{"46":546,"3361":549,"1050006":810,"1050007":809,"2070003":918},"546":{"1050006":548,"1050007":547,"2070003":811},"549":{"1050006":551,"1050007":550,"2070003":812},"552":{"46":553,"3361":556,"1050006":814,"1050007":813,"2070003":919},"553":{"1050006":555,"1050007":554,"2070003":815},"556":{"1050006":558,"1050007":557,"2070003":816},"587":{"46":588,"3361":591,"1050006":824,"1050007":823,"2070003":920},"588":{"1050006":590,"1050007":589,"2070003":825},"591":{"1050006":593,"1050007":592,"2070003":826},"594":{"46":595,"3361":598,"1050006":828,"1050007":827,"2070003":921},"595":{"1050006":597,"1050007":596,"2070003":829},"598":{"1050006":600,"1050007":599,"2070003":830},"629":{"46":630,"3361":633,"1050006":838,"1050007":837,"2070003":922},"630":{"1050006":632,"1050007":631,"2070003":839},"633":{"1050006":635,"1050007":634,"2070003":840},"636":{"46":637,"3361":640,"1050006":842,"1050007":841,"2070003":923},"637":{"1050006":639,"1050007":638,"2070003":843},"640":{"1050006":642,"1050007":641,"2070003":844},"671":{"46":672,"3361":675,"1050006":852,"1050007":851,"2070003":924},"672":{"1050006":674,"1050007":673,"2070003":853},"675":{"1050006":677,"1050007":676,"2070003":854},"678":{"46":679,"3361":682,"1050006":856,"1050007":855,"2070003":925},"679":{"1050006":681,"1050007":680,"2070003":857},"682":{"1050006":684,"1050007":683,"2070003":858},"713":{"46":714,"3361":717,"1050006":866,"1050007":865,"2070003":926},"714":{"1050006":716,"1050007":715,"2070003":867},"717":{"1050006":719,"1050007":718,"2070003":868},"720":{"46":721,"3361":724,"1050006":870,"1050007":869,"2070003":927},"721":{"1050006":723,"1050007":722,"2070003":871},"724":{"1050006":726,"1050007":725,"2070003":872},"755":{"1050007":756,"2070003":0},"757":{"1050007":758,"2070003":0},"759":{"3361":760,"1050006":891,"2070003":1107},"760":{"1050006":761,"2070003":0},"763":{"3361":764,"1050006":892,"2070003":1108},"764":{"1050006":765,"2070003":0},"879":{"46":880,"1050006":1100,"2070003":1303},"880":{"1050006":881,"2070003":0},"882":{"46":883,"1050006":1101,"2070003":1304},"883":{"1050006":884,"2070003":0},"885":{"1050007":886,"2070003":0},"887":{"1050007":888,"2070003":0},"928":{"28042":932,"45756":964,"46237":961,"72345":935,"1050000":958,"1050002":929,"1050023":1408,"1050028":1401,"2070003":0},"929":{"52424":930,"1050028":1167,"2070003":1402},"930":{"1050028":931,"2070003":0},"932":{"52424":933,"1050028":1168,"2070003":1403},"933":{"1050028":934,"2070003":0},"935":{"52424":936,"1050028":1169,"2070003":1404},"936":{"1050028":937,"2070003":0},"938":{"28042":942,"45756":973,"46237":970,"72345":945,"1050000":967,"1050002":939,"1050023":1416,"1050028":1409,"2070003":0},"939":{"52424":940,"1050028":1170,"2070003":1410},"940":{"1050028":941,"2070003":0},"942":{"52424":943,"1050028":1171,"2070003":1411},"943":{"1050028":944,"2070003":0},"945":{"52424":946,"1050028":1172,"2070003":1412},"946":{"1050028":947,"2070003":0},"948":{"28042":952,"45756":982,"46237":979,"72345":955,"1050000":976,"1050002":949,"1050023":1424,"1050028":1417,"2070003":0},"949":{"52424":950,"1050028":1173,"2070003":1418},"950":{"1050028":951,"2070003":0},"952":{"52424":953,"1050028":1174,"2070003":1419},"953":{"1050028":954,"2070003":0},"955":{"52424":956,"1050028":1175,"2070003":1420},"956":{"1050028":957,"2070003":0},"958":{"52424":959,"1050025":1185,"1050026":1186,"1050027":1187,"1050028":1188,"2070003":1405},"959":{"1050028":960,"2070003":0},"961":{"52424":962,"1050025":1189,"1050026":1190,"1050027":1191,"1050028":1192,"2070003":1406},"962":{"1050028":963,"2070003":0},"964":{"52424":965,"1050025":1193,"1050026":1194,"1050027":1195,"1050028":1196,"2070003":1407},"965":{"1050028":966,"2070003":0},"967":{"52424":968,"1050025":1197,"1050026":1198,"1050027":1199,"1050028":1200,"2070003":1413},"968":{"1050028":969,"2070003":0},"970":{"52424":971,"1050025":1201,"1050026":1202,"1050027":1203,"1050028":1204,"2070003":1414},"971":{"1050028":972,"2070003":0},"973":{"52424":974,"1050025":1205,"1050026":1206,"1050027":1207,"1050028":1208,"2070003":1415},"974":{"1050028":975,"2070003":0},"976":{"52424":977,"1050025":1209,"1050026":1210,"1050027":1211,"1050028":1212,"2070003":1421},"977":{"1050028":978,"2070003":0},"979":{"52424":980,"1050025":1213,"1050026":1214,"1050027":1215,"1050028":1216,"2070003":1422},"980":{"1050028":981,"2070003":0},"982":{"52424":983,"1050025":1217,"1050026":1218,"1050027":1219,"1050028":1220,"2070003":1423},"983":{"1050028":984,"2070003":0},"985":{"52424":1221,"1050012":995,"1050025":986,"1050026":989,"1050027":992,"1050028":1365,"2070003":1479},"986":{"46":987,"1050028":1255,"2070003":1386},"987":{"1050028":988,"2070003":0},"989":{"46":990,"1050028":1256,"2070003":1387},"990":{"1050028":991,"2070003":0},"992":{"46":993,"1050028":1257,"2070003":1388},"993":{"1050028":994,"2070003":0},"995":{"46":996,"1050028":1258,"2070003":1389},"996":{"1050028":997,"2070003":0},"998":{"52424":1223,"1050012":1008,"1050025":999,"1050026":1002,"1050027":1005,"1050028":1369,"2070003":0},"999":{"46":1000,"1050028":1259,"2070003":1390},"1000":{"1050028":1001,"2070003":0},"1002":{"46":1003,"1050028":1260,"2070003":1391},"1003":{"1050028":1004,"2070003":0},"1005":{"46":1006,"1050028":1261,"2070003":1392},"1006":{"1050028":1007,"2070003":0},"1008":{"46":1009,"1050028":1262,"2070003":1393},"1009":{"1050028":1010,"2070003":0},"1011":{"52424":1225,"1050012":1021,"1050025":1012,"1050026":1015,"1050027":1018,"1050028":1373,"2070003":0},"1012":{"46":1013,"1050028":1263,"2070003":1394},"1013":{"1050028":1014,"2070003":0},"1015":{"46":1016,"1050028":1264,"2070003":1395},"1016":{"1050028":1017,"2070003":0},"1018":{"46":1019,"1050028":1265,"2070003":1396},"1019":{"1050028":1020,"2070003":0},"1021":{"46":1022,"1050028":1266,"2070003":1397},"1022":{"1050028":1023,"2070003":0},"1024":{"52424":1025,"2070003":1478},"1025":{"45756":1030,"46237":1028,"1050000":1026,"2070003":0},"1026":{"1050028":1027,"2070003":0},"1028":{"1050028":1029,"2070003":0},"1030":{"1050028":1031,"2070003":0},"1032":{"52424":1033,"2070003":0},"1033":{"45756":1038,"46237":1036,"1050000":1034,"2070003":0},"1034":{"1050028":1035,"2070003":0},"1036":{"1050028":1037,"2070003":0},"1038":{"1050028":1039,"2070003":0},"1040":{"52424":1041,"2070003":0},"1041":{"45756":1046,"46237":1044,"1050000":1042,"2070003":0},"1042":{"1050028":1043,"2070003":0},"1044":{"1050028":1045,"2070003":0},"1046":{"1050028":1047,"2070003":0},"1048":{"52424":1049,"2070003":0},"1049":{"77052":1050,"1050028":1267,"2070003":0},"1050":{"1050028":1051,"2070003":0},"1052":{"52424":1053,"2070003":0},"1053":{"77052":1054,"1050028":1268,"2070003":0},"1054":{"1050028":1055,"2070003":0},"1056":{"52424":1057,"2070003":0},"1057":{"77052":1058,"1050028":1269,"2070003":0},"1058":{"1050028":1059,"2070003":0},"1060":{"52424":1061,"2070003":0},"1061":{"77052":1062,"1050028":1270,"2070003":0},"1062":{"1050028":1063,"2070003":0},"1064":{"52424":1065,"2070003":0},"1065":{"77052":1066,"1050028":1271,"2070003":0},"1066":{"1050028":1067,"2070003":0},"1068":{"19537":1272,"1050014":1069,"1050015":1075,"1050016":1280,"1050017":1281,"1050018":1282,"1050019":1283,"1050021":1274,"1050022":1276,"2070003":1486},"1069":{"1050015":1070,"1050016":1071,"1050017":1072,"1050018":1073,"1050019":1074,"2070003":1278},"1075":{"1050015":1076,"1050016":1077,"1050017":1078,"1050018":1079,"1050019":1080,"2070003":1279},"1081":{"1050014":1082,"1050015":1088,"1050016":1286,"1050017":1287,"1050018":1288,"1050019":1289,"1050025":1134,"1050026":1140,"1050027":1146,"1050028":1152,"1050029":1158,"2070003":0},"1082":{"1050015":1083,"1050016":1084,"1050017":1085,"1050018":1086,"1050019":1087,"2070003":1284},"1088":{"1050015":1089,"1050016":1090,"1050017":1091,"1050018":1092,"1050019":1093,"2070003":1285},"1094":{"1050006":1095,"1050007":1098,"2070003":0},"1096":{"1050006":1097,"1050007":1099,"2070003":0},"1102":{"1050006":1106,"1050007":1105,"1050008":1103,"1050014":1104,"2070003":0},"1134":{"1050015":1135,"1050016":1136,"1050017":1137,"1050018":1138,"1050019":1139,"2070003":1351},"1140":{"1050015":1141,"1050016":1142,"1050017":1143,"1050018":1144,"1050019":1145,"2070003":1352},"1146":{"1050015":1147,"1050016":1148,"1050017":1149,"1050018":1150,"1050019":1151,"2070003":1353},"1152":{"46":1165,"49":1164,"197":1166,"1050015":1153,"1050016":1154,"1050017":1155,"1050018":1156,"1050019":1157,"2070003":1354},"1158":{"1050015":1159,"1050016":1160,"1050017":1161,"1050018":1162,"1050019":1163,"2070003":1355},"1176":{"52424":1177,"1050028":1359,"2070003":1480},"1177":{"1050028":1178,"2070003":0},"1179":{"52424":1180,"1050028":1360,"2070003":0},"1180":{"1050028":1181,"2070003":0},"1182":{"52424":1183,"1050028":1361,"2070003":0},"1183":{"1050028":1184,"2070003":0},"1221":{"1050028":1222,"2070003":0},"1223":{"1050028":1224,"2070003":0},"1225":{"1050028":1226,"2070003":0},"1227":{"45756":1232,"46237":1230,"1050000":1228,"1050015":1324,"1050016":1325,"1050017":1326,"1050018":1327,"1050019":1328,"2070003":1472},"1228":{"1050028":1229,"2070003":1374},"1230":{"1050028":1231,"2070003":1375},"1232":{"1050028":1233,"2070003":1376},"1234":{"45756":1239,"46237":1237,"1050000":1235,"1050015":1329,"1050016":1330,"1050017":1331,"1050018":1332,"1050019":1333,"2070003":1473},"1235":{"1050028":1236,"2070003":1377},"1237":{"1050028":1238,"2070003":1378},"1239":{"1050028":1240,"2070003":1379},"1241":{"45756":1246,"46237":1244,"1050000":1242,"1050015":1334,"1050016":1335,"1050017":1336,"1050018":1337,"1050019":1338,"2070003":1474},"1242":{"1050028":1243,"2070003":1380},"1244":{"1050028":1245,"2070003":1381},"1246":{"1050028":1247,"2070003":1382},"1248":{"45756":1253,"46237":1251,"1050000":1249,"2070003":1471},"1249":{"1050028":1250,"2070003":1383},"1251":{"1050028":1252,"2070003":1384},"1253":{"1050028":1254,"2070003":1385},"1272":{"1978":1273,"2070003":1398},"1274":{"1978":1275,"2070003":1399},"1276":{"1978":1277,"2070003":1400},"1295":{"1050015":1296,"1050016":1297,"1050017":1298,"1050018":1299,"1050019":1300,"2070003":1461},"1339":{"46":1357,"49":1356,"197":1358,"1050015":1340,"1050016":1341,"1050017":1342,"1050018":1343,"1050019":1344,"2070003":1483},"1345":{"1050015":1346,"1050016":1347,"1050017":1348,"1050018":1349,"1050019":1350,"2070003":1476},"1425":{"45756":1431,"46237":1430,"66681":1427,"74596":1428,"1050000":1429,"1050001":1426,"1050002":1432,"2070003":0},"1433":{"36445":1434,"36450":1435,"2070003":1459},"1436":{"23226":1437,"23229":1438,"2070003":0},"1439":{"23226":1440,"23229":1441,"2070003":0},"1442":{"23226":1443,"23229":1444,"2070003":0},"1445":{"23226":1446,"23229":1447,"2070003":0},"1448":{"58873":1449,"58879":1450,"2070003":0},"1451":{"58873":1452,"58879":1453,"2070003":0},"1454":{"73112":1455,"2070003":0},"1456":{"65972":1457,"65973":1458,"2070003":0}},{"8":1050037,"9":1050037,"11":1050037,"12":1050037,"15":1050037,"16":1050037,"18":1050037,"19":1050037,"23":1050037,"24":1050037,"26":1050037,"27":1050037,"30":1050037,"31":1050037,"33":1050037,"34":1050037,"42":1050037,"43":1050037,"45":1050037,"46":1050037,"49":1050037,"50":1050037,"52":1050037,"53":1050037,"57":1050037,"58":1050037,"60":1050037,"61":1050037,"64":1050037,"65":1050037,"67":1050037,"68":1050037,"76":1050037,"77":1050037,"79":1050037,"80":1050037,"83":1050037,"84":1050037,"86":1050037,"87":1050037,"91":1050037,"92":1050037,"94":1050037,"95":1050037,"98":1050037,"99":1050037,"101":1050037,"102":1050037,"110":1050037,"111":1050037,"113":1050037,"114":1050037,"117":1050037,"118":1050037,"120":1050037,"121":1050037,"125":1050037,"126":1050037,"128":1050037,"129":1050037,"132":1050037,"133":1050037,"135":1050037,"136":1050037,"144":1050037,"145":1050037,"147":1050037,"148":1050037,"151":1050037,"152":1050037,"154":1050037,"155":1050037,"159":1050037,"160":1050037,"162":1050037,"163":1050037,"166":1050037,"167":1050037,"169":1050037,"170":1050037,"176":1050037,"181":1050037,"186":1050037,"187":1050037,"189":1050037,"190":1050037,"193":1050037,"194":1050037,"196":1050037,"197":1050037,"201":1050037,"202":1050037,"204":1050037,"205":1050037,"208":1050037,"209":1050037,"211":1050037,"212":1050037,"215":1050037,"216":1050037,"218":1050037,"219":1050037,"222":1050037,"223":1050037,"225":1050037,"226":1050037,"227":1050037,"228":1050037,"229":1050037,"230":1050037,"231":1050037,"232":1050037,"233":1050037,"234":1050037,"235":1050037,"236":1050037,"237":1050037,"238":1050037,"239":1050037,"240":1050037,"241":1050037,"242":1050037,"247":1050037,"248":1050037,"250":1050037,"251":1050037,"254":1050037,"255":1050037,"257":1050037,"258":1050037,"262":1050037,"263":1050037,"265":1050037,"266":1050037,"269":1050037,"270":1050037,"272":1050037,"273":1050037,"276":1050037,"277":1050037,"279":1050037,"280":1050037,"283":1050037,"284":1050037,"286":1050037,"287":1050037,"288":1050037,"289":1050037,"290":1050037,"291":1050037,"292":1050037,"293":1050037,"294":1050037,"295":1050037,"296":1050037,"297":1050037,"298":1050037,"299":1050037,"300":1050037,"301":1050037,"302":1050037,"303":1050037,"308":1050037,"309":1050037,"311":1050037,"312":1050037,"315":1050037,"316":1050037,"318":1050037,"319":1050037,"323":1050037,"324":1050037,"326":1050037,"327":1050037,"330":1050037,"331":1050037,"333":1050037,"334":1050037,"337":1050037,"338":1050037,"340":1050037,"341":1050037,"344":1050037,"345":1050037,"347":1050037,"348":1050037,"349":1050037,"350":1050037,"351":1050037,"352":1050037,"353":1050037,"354":1050037,"355":1050037,"356":1050037,"357":1050037,"358":1050037,"359":1050037,"360":1050037,"361":1050037,"362":1050037,"363":1050037,"364":1050037,"369":1050037,"370":1050037,"372":1050037,"373":1050037,"376":1050037,"377":1050037,"379":1050037,"380":1050037,"384":1050037,"385":1050037,"387":1050037,"388":1050037,"391":1050037,"392":1050037,"394":1050037,"395":1050037,"398":1050037,"399":1050037,"401":1050037,"402":1050037,"405":1050037,"406":1050037,"408":1050037,"409":1050037,"410":1050037,"411":1050037,"412":1050037,"413":1050037,"414":1050037,"415":1050037,"416":1050037,"417":1050037,"418":1050037,"419":1050037,"420":1050037,"421":1050037,"422":1050037,"423":1050037,"424":1050037,"425":1050037,"430":1050037,"431":1050037,"433":1050037,"434":1050037,"437":1050037,"438":1050037,"440":1050037,"441":1050037,"445":1050037,"446":1050037,"448":1050037,"449":1050037,"452":1050037,"453":1050037,"455":1050037,"456":1050037,"459":1050037,"460":1050037,"462":1050037,"463":1050037,"466":1050037,"467":1050037,"469":1050037,"470":1050037,"471":1050037,"472":1050037,"473":1050037,"474":1050037,"475":1050037,"476":1050037,"477":1050037,"478":1050037,"479":1050037,"480":1050037,"481":1050037,"482":1050037,"483":1050037,"484":1050037,"485":1050037,"486":1050037,"491":1050037,"496":1050037,"499":1050037,"500":1050037,"503":1050037,"504":1050037,"505":1050037,"506":1050037,"507":1050037,"508":1050037,"509":1050037,"510":1050037,"511":1050037,"512":1050037,"513":1050037,"514":1050037,"515":1050037,"516":1050037,"517":1050037,"518":1050037,"519":1050037,"520":1050037,"521":1050037,"522":1050037,"523":1050037,"524":1050037,"525":1050037,"526":1050037,"527":1050037,"528":1050037,"529":1050037,"530":1050037,"531":1050037,"532":1050037,"533":1050037,"534":1050037,"535":1050037,"536":1050037,"537":1050037,"538":1050037,"539":1050037,"540":1050037,"541":1050037,"542":1050037,"543":1050037,"544":1050037,"547":1050037,"548":1050037,"550":1050037,"551":1050037,"554":1050037,"555":1050037,"557":1050037,"558":1050037,"559":1050037,"560":1050037,"561":1050037,"562":1050037,"563":1050037,"564":1050037,"565":1050037,"566":1050037,"567":1050037,"568":1050037,"569":1050037,"570":1050037,"571":1050037,"572":1050037,"573":1050037,"574":1050037,"575":1050037,"576":1050037,"577":1050037,"578":1050037,"579":1050037,"580":1050037,"581":1050037,"582":1050037,"583":1050037,"584":1050037,"585":1050037,"586":1050037,"589":1050037,"590":1050037,"592":1050037,"593":1050037,"596":1050037,"597":1050037,"599":1050037,"600":1050037,"601":1050037,"602":1050037,"603":1050037,"604":1050037,"605":1050037,"606":1050037,"607":1050037,"608":1050037,"609":1050037,"610":1050037,"611":1050037,"612":1050037,"613":1050037,"614":1050037,"615":1050037,"616":1050037,"617":1050037,"618":1050037,"619":1050037,"620":1050037,"621":1050037,"622":1050037,"623":1050037,"624":1050037,"625":1050037,"626":1050037,"627":1050037,"628":1050037,"631":1050037,"632":1050037,"634":1050037,"635":1050037,"638":1050037,"639":1050037,"641":1050037,"642":1050037,"643":1050037,"644":1050037,"645":1050037,"646":1050037,"647":1050037,"648":1050037,"649":1050037,"650":1050037,"651":1050037,"652":1050037,"653":1050037,"654":1050037,"655":1050037,"656":1050037,"657":1050037,"658":1050037,"659":1050037,"660":1050037,"661":1050037,"662":1050037,"663":1050037,"664":1050037,"665":1050037,"666":1050037,"667":1050037,"668":1050037,"669":1050037,"670":1050037,"673":1050037,"674":1050037,"676":1050037,"677":1050037,"680":1050037,"681":1050037,"683":1050037,"684":1050037,"685":1050037,"686":1050037,"687":1050037,"688":1050037,"689":1050037,"690":1050037,"691":1050037,"692":1050037,"693":1050037,"694":1050037,"695":1050037,"696":1050037,"697":1050037,"698":1050037,"699":1050037,"700":1050037,"701":1050037,"702":1050037,"703":1050037,"704":1050037,"705":1050037,"706":1050037,"707":1050037,"708":1050037,"709":1050037,"710":1050037,"711":1050037,"712":1050037,"715":1050037,"716":1050037,"718":1050037,"719":1050037,"722":1050037,"723":1050037,"725":1050037,"726":1050037,"727":1050037,"728":1050037,"729":1050037,"730":1050037,"731":1050037,"732":1050037,"733":1050037,"734":1050037,"735":1050037,"736":1050037,"737":1050037,"738":1050037,"739":1050037,"740":1050037,"741":1050037,"742":1050037,"743":1050037,"744":1050037,"745":1050037,"746":1050037,"747":1050037,"748":1050037,"749":1050037,"750":1050037,"751":1050037,"752":1050037,"753":1050037,"754":1050037,"756":1050037,"758":1050037,"761":1050037,"762":1050037,"765":1050037,"766":1050037,"767":1050037,"768":1050037,"769":1050037,"770":1050037,"771":1050037,"772":1050037,"773":1050037,"774":1050037,"775":1050037,"776":1050037,"777":1050037,"778":1050037,"779":1050037,"780":1050037,"781":1050037,"782":1050037,"783":1050037,"784":1050037,"785":1050037,"786":1050037,"787":1050037,"788":1050037,"789":1050037,"790":1050037,"791":1050037,"792":1050037,"793":1050037,"794":1050037,"795":1050037,"796":1050037,"797":1050037,"798":1050037,"799":1050037,"800":1050037,"801":1050037,"802":1050037,"803":1050037,"804":1050037,"805":1050037,"806":1050037,"807":1050037,"808":1050037,"809":1050037,"810":1050037,"811":1050037,"812":1050037,"813":1050037,"814":1050037,"815":1050037,"816":1050037,"817":1050037,"818":1050037,"819":1050037,"820":1050037,"821":1050037,"822":1050037,"823":1050037,"824":1050037,"825":1050037,"826":1050037,"827":1050037,"828":1050037,"829":1050037,"830":1050037,"831":1050037,"832":1050037,"833":1050037,"834":1050037,"835":1050037,"836":1050037,"837":1050037,"838":1050037,"839":1050037,"840":1050037,"841":1050037,"842":1050037,"843":1050037,"844":1050037,"845":1050037,"846":1050037,"847":1050037,"848":1050037,"849":1050037,"850":1050037,"851":1050037,"852":1050037,"853":1050037,"854":1050037,"855":1050037,"856":1050037,"857":1050037,"858":1050037,"859":1050037,"860":1050037,"861":1050037,"862":1050037,"863":1050037,"864":1050037,"865":1050037,"866":1050037,"867":1050037,"868":1050037,"869":1050037,"870":1050037,"871":1050037,"872":1050037,"873":1050037,"874":1050037,"875":1050037,"876":1050037,"877":1050037,"878":1050037,"881":1050037,"884":1050037,"886":1050037,"888":1050037,"889":1050037,"890":1050037,"891":1050037,"892":1050037,"893":1050037,"894":1050037,"895":1050037,"896":1050037,"897":1050037,"898":1050037,"899":1050037,"900":1050037,"901":1050037,"902":1050037,"903":1050037,"904":1050037,"905":1050037,"906":1050037,"907":1050037,"908":1050037,"909":1050037,"910":1050037,"911":1050037,"912":1050037,"913":1050037,"914":1050037,"915":1050037,"916":1050037,"917":1050037,"918":1050037,"919":1050037,"920":1050037,"921":1050037,"922":1050037,"923":1050037,"924":1050037,"925":1050037,"926":1050037,"927":1050037,"931":1050039,"934":1050039,"937":1050039,"941":1050039,"944":1050039,"947":1050039,"951":1050039,"954":1050039,"957":1050039,"960":1050039,"963":1050039,"966":1050039,"969":1050039,"972":1050039,"975":1050039,"978":1050039,"981":1050039,"984":1050039,"988":1050039,"991":1050039,"994":1050039,"997":1050039,"1001":1050039,"1004":1050039,"1007":1050039,"1010":1050039,"1014":1050039,"1017":1050039,"1020":1050039,"1023":1050039,"1027":1050039,"1029":1050039,"1031":1050039,"1035":1050039,"1037":1050039,"1039":1050039,"1043":1050039,"1045":1050039,"1047":1050039,"1051":1050039,"1055":1050039,"1059":1050039,"1063":1050039,"1067":1050039,"1070":1050037,"1071":1050037,"1072":1050037,"1073":1050037,"1074":1050037,"1076":1050037,"1077":1050037,"1078":1050037,"1079":1050037,"1080":1050037,"1083":1050037,"1084":1050037,"1085":1050037,"1086":1050037,"1087":1050037,"1089":1050037,"1090":1050037,"1091":1050037,"1092":1050037,"1093":1050037,"1095":1050037,"1097":1050037,"1098":1050037,"1099":1050037,"1100":1050037,"1101":1050037,"1103":1050037,"1104":1050037,"1105":1050037,"1106":1050037,"1107":1050037,"1108":1050037,"1109":1050037,"1110":1050037,"1111":1050037,"1112":1050037,"1113":1050037,"1114":1050037,"1115":1050037,"1116":1050037,"1117":1050037,"1118":1050037,"1119":1050037,"1120":1050037,"1121":1050037,"1122":1050037,"1123":1050037,"1124":1050037,"1125":1050037,"1126":1050037,"1127":1050037,"1128":1050037,"1129":1050037,"1130":1050037,"1131":1050037,"1132":1050037,"1133":1050037,"1135":1050037,"1136":1050037,"1137":1050037,"1138":1050037,"1139":1050037,"1141":1050037,"1142":1050037,"1143":1050037,"1144":1050037,"1145":1050037,"1147":1050037,"1148":1050037,"1149":1050037,"1150":1050037,"1151":1050037,"1153":1050037,"1154":1050037,"1155":1050037,"1156":1050037,"1157":1050037,"1159":1050037,"1160":1050037,"1161":1050037,"1162":1050037,"1163":1050037,"1164":1050039,"1165":1050039,"1166":1050039,"1167":1050039,"1168":1050039,"1169":1050039,"1170":1050039,"1171":1050039,"1172":1050039,"1173":1050039,"1174":1050039,"1175":1050039,"1178":1050039,"1181":1050039,"1184":1050039,"1185":1050039,"1186":1050039,"1187":1050039,"1188":1050039,"1189":1050039,"1190":1050039,"1191":1050039,"1192":1050039,"1193":1050039,"1194":1050039,"1195":1050039,"1196":1050039,"1197":1050039,"1198":1050039,"1199":1050039,"1200":1050039,"1201":1050039,"1202":1050039,"1203":1050039,"1204":1050039,"1205":1050039,"1206":1050039,"1207":1050039,"1208":1050039,"1209":1050039,"1210":1050039,"1211":1050039,"1212":1050039,"1213":1050039,"1214":1050039,"1215":1050039,"1216":1050039,"1217":1050039,"1218":1050039,"1219":1050039,"1220":1050039,"1222":1050039,"1224":1050039,"1226":1050039,"1229":1050039,"1231":1050039,"1233":1050039,"1236":1050039,"1238":1050039,"1240":1050039,"1243":1050039,"1245":1050039,"1247":1050039,"1250":1050039,"1252":1050039,"1254":1050039,"1255":1050039,"1256":1050039,"1257":1050039,"1258":1050039,"1259":1050039,"1260":1050039,"1261":1050039,"1262":1050039,"1263":1050039,"1264":1050039,"1265":1050039,"1266":1050039,"1267":1050039,"1268":1050039,"1269":1050039,"1270":1050039,"1271":1050039,"1273":1050039,"1275":1050039,"1277":1050039,"1278":1050037,"1279":1050037,"1280":1050037,"1281":1050037,"1282":1050037,"1283":1050037,"1284":1050037,"1285":1050037,"1286":1050037,"1287":1050037,"1288":1050037,"1289":1050037,"1290":1050037,"1291":1050037,"1292":1050037,"1293":1050037,"1294":1050037,"1296":1050037,"1297":1050037,"1298":1050037,"1299":1050037,"1300":1050037,"1301":1050037,"1302":1050037,"1303":1050037,"1304":1050037,"1305":1050037,"1306":1050037,"1307":1050037,"1308":1050037,"1309":1050037,"1310":1050037,"1311":1050037,"1312":1050037,"1313":1050037,"1314":1050037,"1315":1050037,"1316":1050037,"1317":1050037,"1318":1050037,"1319":1050037,"1320":1050037,"1321":1050037,"1322":1050037,"1323":1050037,"1324":1050037,"1325":1050037,"1326":1050037,"1327":1050037,"1328":1050037,"1329":1050037,"1330":1050037,"1331":1050037,"1332":1050037,"1333":1050037,"1334":1050037,"1335":1050037,"1336":1050037,"1337":1050037,"1338":1050037,"1340":1050037,"1341":1050037,"1342":1050037,"1343":1050037,"1344":1050037,"1346":1050037,"1347":1050037,"1348":1050037,"1349":1050037,"1350":1050037,"1351":1050037,"1352":1050037,"1353":1050037,"1354":1050037,"1355":1050037,"1356":1050039,"1357":1050039,"1358":1050039,"1359":1050039,"1360":1050039,"1361":1050039,"1362":1050039,"1363":1050039,"1364":1050039,"1365":1050039,"1366":1050039,"1367":1050039,"1368":1050039,"1369":1050039,"1370":1050039,"1371":1050039,"1372":1050039,"1373":1050039,"1374":1050039,"1375":1050039,"1376":1050039,"1377":1050039,"1378":1050039,"1379":1050039,"1380":1050039,"1381":1050039,"1382":1050039,"1383":1050039,"1384":1050039,"1385":1050039,"1386":1050039,"1387":1050039,"1388":1050039,"1389":1050039,"1390":1050039,"1391":1050039,"1392":1050039,"1393":1050039,"1394":1050039,"1395":1050039,"1396":1050039,"1397":1050039,"1398":1050040,"1399":1050040,"1400":1050040,"1401":1050039,"1402":1050039,"1403":1050039,"1404":1050039,"1405":1050039,"1406":1050039,"1407":1050039,"1408":1050039,"1409":1050039,"1410":1050039,"1411":1050039,"1412":1050039,"1413":1050039,"1414":1050039,"1415":1050039,"1416":1050039,"1417":1050039,"1418":1050039,"1419":1050039,"1420":1050039,"1421":1050039,"1422":1050039,"1423":1050039,"1424":1050039,"1426":1050039,"1427":1050039,"1428":1050039,"1429":1050039,"1430":1050039,"1431":1050039,"1432":1050039,"1434":1050041,"1435":1050041,"1437":1050042,"1438":1050042,"1440":1050042,"1441":1050042,"1443":1050042,"1444":1050042,"1446":1050042,"1447":1050042,"1449":1050042,"1450":1050042,"1452":1050042,"1453":1050042,"1455":1050042,"1457":1050042,"1458":1050042,"1459":1050037,"1460":1050037,"1461":1050037,"1462":1050037,"1463":1050037,"1464":1050037,"1465":1050037,"1466":1050037,"1467":1050037,"1468":1050037,"1469":1050037,"1470":1050037,"1471":1050038,"1472":1050037,"1473":1050037,"1474":1050037,"1475":1050037,"1476":1050037,"1477":1050039,"1478":1050039,"1479":1050039,"1480":1050039,"1481":1050042,"1482":1050042,"1483":1050043,"1484":1050044,"1485":1050045,"1486":1050046,"1487":1050039,"1488":1050040,"1489":1050037,"1490":1050038,"1491":1050041,"1492":1050047,"1493":1050048,"1494":1050049,"1495":1050050,"1496":1050051,"1497":1050052},{"1164":[0,1],"1165":[0,1],"1166":[0,1],"1356":[0,1],"1357":[0,1],"1358":[0,1]},{}]','[100,1535,{"0":{"7":1426,"221":1498,"5914":1502,"7651":976,"8056":906,"9518":1344,"11015":1506,"14150":1346,"19537":1520,"23226":1454,"23229":1474,"25521":1012,"26892":1462,"26901":1482,"30855":885,"31040":1137,"36445":1523,"36450":1524,"43343":755,"47341":994,"47398":1003,"47623":1528,"47624":1529,"47815":1525,"47818":1526,"48865":800,"53668":954,"58873":1458,"58879":1478,"65701":1470,"65702":1486,"67763":1527,"69775":1298,"72836":985,"77600":915,"77819":1304,"80790":932,"82584":1301,"82994":1494,"83009":1490,"86818":1466,"87216":1442,"87248":1450,"87249":1446,"87250":1438,"87251":1434,"87252":1430,"1050037":1,"1050038":1514,"1050039":1056,"1050040":1335,"1050041":1275,"1050042":1510,"1050043":88,"1050044":1521,"1050045":1522,"1050046":1173,"1050047":1530,"1050048":1531,"1050049":1532,"1050050":1533,"1050051":1534,"1050052":1535,"2070003":0},"1":{"7":1384,"8":1358,"47":2,"221":1401,"5914":1402,"11015":1403,"19537":679,"23226":1390,"23229":1395,"26892":1392,"26901":1397,"36445":175,"36450":196,"47623":1232,"47624":1237,"47815":1217,"47818":1222,"55521":1361,"55524":1362,"55994":1284,"56008":1359,"56013":1360,"58873":1391,"58879":1396,"65701":1394,"65702":1398,"67763":1227,"82994":1400,"83009":1399,"86818":1393,"87216":1388,"87219":45,"87249":1389,"87250":1387,"87251":1386,"87252":1385,"1050042":1404,"1050044":685,"1050045":691,"2070003":1515},"2":{"36445":3,"36450":24,"47623":1078,"47624":1079,"47815":1075,"47818":1076,"67763":1077,"2070003":0},"3":{"46":4,"3361":609,"1050037":217,"2070003":1073},"4":{"1050037":5,"2070003":0},"5":{"47815":6,"47818":15,"2070003":0},"6":{"46":7,"3361":11,"1050037":236,"2070003":607},"7":{"1050037":8,"2070003":0},"8":{"67753":9,"67763":10,"2070003":0},"11":{"1050037":12,"2070003":0},"12":{"67753":13,"67763":14,"2070003":0},"15":{"46":16,"3361":20,"1050037":239,"2070003":608},"16":{"1050037":17,"2070003":0},"17":{"67753":18,"67763":19,"2070003":0},"20":{"1050037":21,"2070003":0},"21":{"67753":22,"67763":23,"2070003":0},"24":{"46":25,"3361":615,"1050037":242,"2070003":1074},"25":{"1050037":26,"2070003":0},"26":{"47815":27,"47818":36,"2070003":0},"27":{"46":28,"3361":32,"1050037":261,"2070003":613},"28":{"1050037":29,"2070003":0},"29":{"67753":30,"67763":31,"2070003":0},"32":{"1050037":33,"2070003":0},"33":{"67753":34,"67763":35,"2070003":0},"36":{"46":37,"3361":41,"1050037":264,"2070003":614},"37":{"1050037":38,"2070003":0},"38":{"67753":39,"67763":40,"2070003":0},"41":{"1050037":42,"2070003":0},"42":{"67753":43,"67763":44,"2070003":0},"45":{"36445":46,"36450":67,"47623":1085,"47624":1086,"47815":1082,"47818":1083,"67763":1084,"2070003":0},"46":{"46":47,"3361":621,"1050037":267,"2070003":1080},"47":{"1050037":48,"2070003":0},"48":{"47815":49,"47818":58,"2070003":0},"49":{"46":50,"3361":54,"1050037":286,"2070003":619},"50":{"1050037":51,"2070003":0},"51":{"67753":52,"67763":53,"2070003":0},"54":{"1050037":55,"2070003":0},"55":{"67753":56,"67763":57,"2070003":0},"58":{"46":59,"3361":63,"1050037":289,"2070003":620},"59":{"1050037":60,"2070003":0},"60":{"67753":61,"67763":62,"2070003":0},"63":{"1050037":64,"2070003":0},"64":{"67753":65,"67763":66,"2070003":0},"67":{"46":68,"3361":627,"1050037":292,"2070003":1081},"68":{"1050037":69,"2070003":0},"69":{"47815":70,"47818":79,"2070003":0},"70":{"46":71,"3361":75,"1050037":311,"2070003":625},"71":{"1050037":72,"2070003":0},"72":{"67753":73,"67763":74,"2070003":0},"75":{"1050037":76,"2070003":0},"76":{"67753":77,"67763":78,"2070003":0},"79":{"46":80,"3361":84,"1050037":314,"2070003":626},"80":{"1050037":81,"2070003":0},"81":{"67753":82,"67763":83,"2070003":0},"84":{"1050037":85,"2070003":0},"85":{"67753":86,"67763":87,"2070003":0},"88":{"7":1405,"47":89,"221":1422,"5914":1423,"9395":1339,"11015":1424,"16025":1342,"16196":1341,"19537":697,"23226":1411,"23229":1416,"26892":1413,"26901":1418,"36445":317,"36450":338,"38371":1340,"47623":1265,"47624":1270,"47815":1250,"47818":1255,"58873":1412,"58879":1417,"65701":1415,"65702":1419,"67763":1260,"69280":1343,"78040":1060,"82994":1421,"83009":1420,"86818":1414,"87216":1409,"87219":132,"87249":1410,"87250":1408,"87251":1407,"87252":1406,"1050042":1425,"1050044":703,"1050045":709,"2070003":1516},"89":{"36445":90,"36450":111,"47623":1092,"47624":1093,"47815":1089,"47818":1090,"67763":1091,"1050039":1069,"1050043":1070,"2070003":0},"90":{"46":91,"3361":633,"1050037":359,"2070003":1087},"91":{"1050037":92,"2070003":0},"92":{"47815":93,"47818":102,"2070003":0},"93":{"46":94,"3361":98,"1050037":378,"2070003":631},"94":{"1050037":95,"2070003":0},"95":{"67753":96,"67763":97,"2070003":0},"98":{"1050037":99,"2070003":0},"99":{"67753":100,"67763":101,"2070003":0},"102":{"46":103,"3361":107,"1050037":381,"2070003":632},"103":{"1050037":104,"2070003":0},"104":{"67753":105,"67763":106,"2070003":0},"107":{"1050037":108,"2070003":0},"108":{"67753":109,"67763":110,"2070003":0},"111":{"46":112,"3361":639,"1050037":384,"2070003":1088},"112":{"1050037":113,"2070003":0},"113":{"47815":114,"47818":123,"2070003":0},"114":{"46":115,"3361":119,"1050037":403,"2070003":637},"115":{"1050037":116,"2070003":0},"116":{"67753":117,"67763":118,"2070003":0},"119":{"1050037":120,"2070003":0},"120":{"67753":121,"67763":122,"2070003":0},"123":{"46":124,"3361":128,"1050037":406,"2070003":638},"124":{"1050037":125,"2070003":0},"125":{"67753":126,"67763":127,"2070003":0},"128":{"1050037":129,"2070003":0},"129":{"67753":130,"67763":131,"2070003":0},"132":{"36445":133,"36450":154,"47623":1099,"47624":1100,"47815":1096,"47818":1097,"67763":1098,"1050039":1071,"1050043":1072,"2070003":0},"133":{"46":134,"3361":645,"1050037":409,"2070003":1094},"134":{"1050037":135,"2070003":0},"135":{"47815":136,"47818":145,"2070003":0},"136":{"46":137,"3361":141,"1050037":428,"2070003":643},"137":{"1050037":138,"2070003":0},"138":{"67753":139,"67763":140,"2070003":0},"141":{"1050037":142,"2070003":0},"142":{"67753":143,"67763":144,"2070003":0},"145":{"46":146,"3361":150,"1050037":431,"2070003":644},"146":{"1050037":147,"2070003":0},"147":{"67753":148,"67763":149,"2070003":0},"150":{"1050037":151,"2070003":0},"151":{"67753":152,"67763":153,"2070003":0},"154":{"46":155,"3361":651,"1050037":434,"2070003":1095},"155":{"1050037":156,"2070003":0},"156":{"47815":157,"47818":166,"2070003":0},"157":{"46":158,"3361":162,"1050037":453,"2070003":649},"158":{"1050037":159,"2070003":0},"159":{"67753":160,"67763":161,"2070003":0},"162":{"1050037":163,"2070003":0},"163":{"67753":164,"67763":165,"2070003":0},"166":{"46":167,"3361":171,"1050037":456,"2070003":650},"167":{"1050037":168,"2070003":0},"168":{"67753":169,"67763":170,"2070003":0},"171":{"1050037":172,"2070003":0},"172":{"67753":173,"67763":174,"2070003":0},"175":{"46":176,"1978":1211,"3361":717,"7620":1210,"24309":1212,"42769":1209,"1050037":459,"2070003":1321},"176":{"1050037":177,"2070003":0},"177":{"47815":178,"47818":187,"2070003":0},"178":{"46":179,"3361":183,"1050037":478,"2070003":715},"179":{"1050037":180,"2070003":0},"180":{"67753":181,"67763":182,"2070003":0},"183":{"1050037":184,"2070003":0},"184":{"67753":185,"67763":186,"2070003":0},"187":{"46":188,"3361":192,"1050037":481,"2070003":716},"188":{"1050037":189,"2070003":0},"189":{"67753":190,"67763":191,"2070003":0},"192":{"1050037":193,"2070003":0},"193":{"67753":194,"67763":195,"2070003":0},"196":{"46":197,"1978":1215,"3361":723,"7620":1214,"24309":1216,"42769":1213,"1050037":484,"2070003":1322},"197":{"1050037":198,"2070003":0},"198":{"47815":199,"47818":208,"2070003":0},"199":{"46":200,"3361":204,"1050037":503,"2070003":721},"200":{"1050037":201,"2070003":0},"201":{"67753":202,"67763":203,"2070003":0},"204":{"1050037":205,"2070003":0},"205":{"67753":206,"67763":207,"2070003":0},"208":{"46":209,"3361":213,"1050037":506,"2070003":722},"209":{"1050037":210,"2070003":0},"210":{"67753":211,"67763":212,"2070003":0},"213":{"1050037":214,"2070003":0},"214":{"67753":215,"67763":216,"2070003":0},"217":{"47815":218,"47818":227,"2070003":0},"218":{"46":219,"3361":223,"1050037":509,"2070003":727},"219":{"1050037":220,"2070003":0},"220":{"67753":221,"67763":222,"2070003":0},"223":{"1050037":224,"2070003":0},"224":{"67753":225,"67763":226,"2070003":0},"227":{"46":228,"3361":232,"1050037":512,"2070003":728},"228":{"1050037":229,"2070003":0},"229":{"67753":230,"67763":231,"2070003":0},"232":{"1050037":233,"2070003":0},"233":{"67753":234,"67763":235,"2070003":0},"236":{"67753":237,"67763":238,"2070003":0},"239":{"67753":240,"67763":241,"2070003":0},"242":{"47815":243,"47818":252,"2070003":0},"243":{"46":244,"3361":248,"1050037":515,"2070003":729},"244":{"1050037":245,"2070003":0},"245":{"67753":246,"67763":247,"2070003":0},"248":{"1050037":249,"2070003":0},"249":{"67753":250,"67763":251,"2070003":0},"252":{"46":253,"3361":257,"1050037":518,"2070003":730},"253":{"1050037":254,"2070003":0},"254":{"67753":255,"67763":256,"2070003":0},"257":{"1050037":258,"2070003":0},"258":{"67753":259,"67763":260,"2070003":0},"261":{"67753":262,"67763":263,"2070003":0},"264":{"67753":265,"67763":266,"2070003":0},"267":{"47815":268,"47818":277,"2070003":0},"268":{"46":269,"3361":273,"1050037":521,"2070003":731},"269":{"1050037":270,"2070003":0},"270":{"67753":271,"67763":272,"2070003":0},"273":{"1050037":274,"2070003":0},"274":{"67753":275,"67763":276,"2070003":0},"277":{"46":278,"3361":282,"1050037":524,"2070003":732},"278":{"1050037":279,"2070003":0},"279":{"67753":280,"67763":281,"2070003":0},"282":{"1050037":283,"2070003":0},"283":{"67753":284,"67763":285,"2070003":0},"286":{"67753":287,"67763":288,"2070003":0},"289":{"67753":290,"67763":291,"2070003":0},"292":{"47815":293,"47818":302,"2070003":0},"293":{"46":294,"3361":298,"1050037":527,"2070003":733},"294":{"1050037":295,"2070003":0},"295":{"67753":296,"67763":297,"2070003":0},"298":{"1050037":299,"2070003":0},"299":{"67753":300,"67763":301,"2070003":0},"302":{"46":303,"3361":307,"1050037":530,"2070003":734},"303":{"1050037":304,"2070003":0},"304":{"67753":305,"67763":306,"2070003":0},"307":{"1050037":308,"2070003":0},"308":{"67753":309,"67763":310,"2070003":0},"311":{"67753":312,"67763":313,"2070003":0},"314":{"67753":315,"67763":316,"2070003":0},"317":{"46":318,"1978":1244,"3361":737,"7620":1243,"24309":1245,"42769":1242,"1050037":533,"2070003":1328},"318":{"1050037":319,"2070003":0},"319":{"47815":320,"47818":329,"2070003":0},"320":{"46":321,"3361":325,"1050037":552,"2070003":735},"321":{"1050037":322,"2070003":0},"322":{"67753":323,"67763":324,"2070003":0},"325":{"1050037":326,"2070003":0},"326":{"67753":327,"67763":328,"2070003":0},"329":{"46":330,"3361":334,"1050037":555,"2070003":736},"330":{"1050037":331,"2070003":0},"331":{"67753":332,"67763":333,"2070003":0},"334":{"1050037":335,"2070003":0},"335":{"67753":336,"67763":337,"2070003":0},"338":{"46":339,"1978":1248,"3361":743,"7620":1247,"24309":1249,"42769":1246,"1050037":558,"2070003":1329},"339":{"1050037":340,"2070003":0},"340":{"47815":341,"47818":350,"2070003":0},"341":{"46":342,"3361":346,"1050037":577,"2070003":741},"342":{"1050037":343,"2070003":0},"343":{"67753":344,"67763":345,"2070003":0},"346":{"1050037":347,"2070003":0},"347":{"67753":348,"67763":349,"2070003":0},"350":{"46":351,"3361":355,"1050037":580,"2070003":742},"351":{"1050037":352,"2070003":0},"352":{"67753":353,"67763":354,"2070003":0},"355":{"1050037":356,"2070003":0},"356":{"67753":357,"67763":358,"2070003":0},"359":{"47815":360,"47818":369,"2070003":0},"360":{"46":361,"3361":365,"1050037":583,"2070003":747},"361":{"1050037":362,"2070003":0},"362":{"67753":363,"67763":364,"2070003":0},"365":{"1050037":366,"2070003":0},"366":{"67753":367,"67763":368,"2070003":0},"369":{"46":370,"3361":374,"1050037":586,"2070003":748},"370":{"1050037":371,"2070003":0},"371":{"67753":372,"67763":373,"2070003":0},"374":{"1050037":375,"2070003":0},"375":{"67753":376,"67763":377,"2070003":0},"378":{"67753":379,"67763":380,"2070003":0},"381":{"67753":382,"67763":383,"2070003":0},"384":{"47815":385,"47818":394,"2070003":0},"385":{"46":386,"3361":390,"1050037":589,"2070003":749},"386":{"1050037":387,"2070003":0},"387":{"67753":388,"67763":389,"2070003":0},"390":{"1050037":391,"2070003":0},"391":{"67753":392,"67763":393,"2070003":0},"394":{"46":395,"3361":399,"1050037":592,"2070003":750},"395":{"1050037":396,"2070003":0},"396":{"67753":397,"67763":398,"2070003":0},"399":{"1050037":400,"2070003":0},"400":{"67753":401,"67763":402,"2070003":0},"403":{"67753":404,"67763":405,"2070003":0},"406":{"67753":407,"67763":408,"2070003":0},"409":{"47815":410,"47818":419,"2070003":0},"410":{"46":411,"3361":415,"1050037":595,"2070003":751},"411":{"1050037":412,"2070003":0},"412":{"67753":413,"67763":414,"2070003":0},"415":{"1050037":416,"2070003":0},"416":{"67753":417,"67763":418,"2070003":0},"419":{"46":420,"3361":424,"1050037":598,"2070003":752},"420":{"1050037":421,"2070003":0},"421":{"67753":422,"67763":423,"2070003":0},"424":{"1050037":425,"2070003":0},"425":{"67753":426,"67763":427,"2070003":0},"428":{"67753":429,"67763":430,"2070003":0},"431":{"67753":432,"67763":433,"2070003":0},"434":{"47815":435,"47818":444,"2070003":0},"435":{"46":436,"3361":440,"1050037":601,"2070003":753},"436":{"1050037":437,"2070003":0},"437":{"67753":438,"67763":439,"2070003":0},"440":{"1050037":441,"2070003":0},"441":{"67753":442,"67763":443,"2070003":0},"444":{"46":445,"3361":449,"1050037":604,"2070003":754},"445":{"1050037":446,"2070003":0},"446":{"67753":447,"67763":448,"2070003":0},"449":{"1050037":450,"2070003":0},"450":{"67753":451,"67763":452,"2070003":0},"453":{"67753":454,"67763":455,"2070003":0},"456":{"67753":457,"67763":458,"2070003":0},"459":{"47815":460,"47818":469,"2070003":0},"460":{"46":461,"3361":465,"1050037":655,"2070003":924},"461":{"1050037":462,"2070003":0},"462":{"67753":463,"67763":464,"2070003":0},"465":{"1050037":466,"2070003":0},"466":{"67753":467,"67763":468,"2070003":0},"469":{"46":470,"3361":474,"1050037":658,"2070003":925},"470":{"1050037":471,"2070003":0},"471":{"67753":472,"67763":473,"2070003":0},"474":{"1050037":475,"2070003":0},"475":{"67753":476,"67763":477,"2070003":0},"478":{"67753":479,"67763":480,"2070003":0},"481":{"67753":482,"67763":483,"2070003":0},"484":{"47815":485,"47818":494,"2070003":0},"485":{"46":486,"3361":490,"1050037":661,"2070003":926},"486":{"1050037":487,"2070003":0},"487":{"67753":488,"67763":489,"2070003":0},"490":{"1050037":491,"2070003":0},"491":{"67753":492,"67763":493,"2070003":0},"494":{"46":495,"3361":499,"1050037":664,"2070003":927},"495":{"1050037":496,"2070003":0},"496":{"67753":497,"67763":498,"2070003":0},"499":{"1050037":500,"2070003":0},"500":{"67753":501,"67763":502,"2070003":0},"503":{"67753":504,"67763":505,"2070003":0},"506":{"67753":507,"67763":508,"2070003":0},"509":{"67753":510,"67763":511,"2070003":0},"512":{"67753":513,"67763":514,"2070003":0},"515":{"67753":516,"67763":517,"2070003":0},"518":{"67753":519,"67763":520,"2070003":0},"521":{"67753":522,"67763":523,"2070003":0},"524":{"67753":525,"67763":526,"2070003":0},"527":{"67753":528,"67763":529,"2070003":0},"530":{"67753":531,"67763":532,"2070003":0},"533":{"47815":534,"47818":543,"2070003":0},"534":{"46":535,"3361":539,"1050037":667,"2070003":928},"535":{"1050037":536,"2070003":0},"536":{"67753":537,"67763":538,"2070003":0},"539":{"1050037":540,"2070003":0},"540":{"67753":541,"67763":542,"2070003":0},"543":{"46":544,"3361":548,"1050037":670,"2070003":929},"544":{"1050037":545,"2070003":0},"545":{"67753":546,"67763":547,"2070003":0},"548":{"1050037":549,"2070003":0},"549":{"67753":550,"67763":551,"2070003":0},"552":{"67753":553,"67763":554,"2070003":0},"555":{"67753":556,"67763":557,"2070003":0},"558":{"47815":559,"47818":568,"2070003":0},"559":{"46":560,"3361":564,"1050037":673,"2070003":930},"560":{"1050037":561,"2070003":0},"561":{"67753":562,"67763":563,"2070003":0},"564":{"1050037":565,"2070003":0},"565":{"67753":566,"67763":567,"2070003":0},"568":{"46":569,"3361":573,"1050037":676,"2070003":931},"569":{"1050037":570,"2070003":0},"570":{"67753":571,"67763":572,"2070003":0},"573":{"1050037":574,"2070003":0},"574":{"67753":575,"67763":576,"2070003":0},"577":{"67753":578,"67763":579,"2070003":0},"580":{"67753":581,"67763":582,"2070003":0},"583":{"67753":584,"67763":585,"2070003":0},"586":{"67753":587,"67763":588,"2070003":0},"589":{"67753":590,"67763":591,"2070003":0},"592":{"67753":593,"67763":594,"2070003":0},"595":{"67753":596,"67763":597,"2070003":0},"598":{"67753":599,"67763":600,"2070003":0},"601":{"67753":602,"67763":603,"2070003":0},"604":{"67753":605,"67763":606,"2070003":0},"609":{"1050037":610,"2070003":0},"610":{"47815":611,"47818":612,"2070003":0},"615":{"1050037":616,"2070003":0},"616":{"47815":617,"47818":618,"2070003":0},"621":{"1050037":622,"2070003":0},"622":{"47815":623,"47818":624,"2070003":0},"627":{"1050037":628,"2070003":0},"628":{"47815":629,"47818":630,"2070003":0},"633":{"1050037":634,"2070003":0},"634":{"47815":635,"47818":636,"2070003":0},"639":{"1050037":640,"2070003":0},"640":{"47815":641,"47818":642,"2070003":0},"645":{"1050037":646,"2070003":0},"646":{"47815":647,"47818":648,"2070003":0},"651":{"1050037":652,"2070003":0},"652":{"47815":653,"47818":654,"2070003":0},"655":{"67753":656,"67763":657,"2070003":0},"658":{"67753":659,"67763":660,"2070003":0},"661":{"67753":662,"67763":663,"2070003":0},"664":{"67753":665,"67763":666,"2070003":0},"667":{"67753":668,"67763":669,"2070003":0},"670":{"67753":671,"67763":672,"2070003":0},"673":{"67753":674,"67763":675,"2070003":0},"676":{"67753":677,"67763":678,"2070003":0},"679":{"1978":1101,"3361":680,"2070003":1288},"680":{"1050037":681,"2070003":0},"681":{"19537":682,"1050044":683,"1050045":684,"2070003":0},"685":{"1978":1102,"3361":686,"2070003":1289},"686":{"1050037":687,"2070003":0},"687":{"19537":688,"1050044":689,"1050045":690,"2070003":0},"691":{"1978":1103,"3361":692,"2070003":1290},"692":{"1050037":693,"2070003":0},"693":{"19537":694,"1050044":695,"1050045":696,"2070003":0},"697":{"1978":1104,"3361":698,"2070003":1291},"698":{"1050037":699,"2070003":0},"699":{"19537":700,"1050044":701,"1050045":702,"2070003":0},"703":{"1978":1105,"3361":704,"2070003":1292},"704":{"1050037":705,"2070003":0},"705":{"19537":706,"1050044":707,"1050045":708,"2070003":0},"709":{"1978":1106,"3361":710,"2070003":1293},"710":{"1050037":711,"2070003":0},"711":{"19537":712,"1050044":713,"1050045":714,"2070003":0},"717":{"1050037":718,"2070003":0},"718":{"47815":719,"47818":720,"2070003":0},"723":{"1050037":724,"2070003":0},"724":{"47815":725,"47818":726,"2070003":0},"737":{"1050037":738,"2070003":0},"738":{"47815":739,"47818":740,"2070003":0},"743":{"1050037":744,"2070003":0},"744":{"47815":745,"47818":746,"2070003":0},"755":{"76982":778,"77090":756,"2070003":0},"756":{"219":757,"1050037":764,"1050040":1034,"1050043":771,"2070003":0},"757":{"19537":758,"1050040":845,"1050044":760,"1050045":762,"2070003":0},"758":{"1978":759,"2070003":849},"760":{"1978":761,"2070003":850},"762":{"1978":763,"2070003":851},"764":{"19537":765,"1050044":767,"1050045":769,"2070003":0},"765":{"1978":766,"2070003":852},"767":{"1978":768,"2070003":853},"769":{"1978":770,"2070003":854},"771":{"19537":772,"1050044":774,"1050045":776,"2070003":0},"772":{"1978":773,"2070003":855},"774":{"1978":775,"2070003":856},"776":{"1978":777,"2070003":857},"778":{"219":779,"1050037":786,"1050040":1035,"1050043":793,"2070003":0},"779":{"19537":780,"1050040":846,"1050044":782,"1050045":784,"2070003":0},"780":{"1978":781,"2070003":858},"782":{"1978":783,"2070003":859},"784":{"1978":785,"2070003":860},"786":{"19537":787,"1050044":789,"1050045":791,"2070003":0},"787":{"1978":788,"2070003":861},"789":{"1978":790,"2070003":862},"791":{"1978":792,"2070003":863},"793":{"19537":794,"1050044":796,"1050045":798,"2070003":0},"794":{"1978":795,"2070003":864},"796":{"1978":797,"2070003":865},"798":{"1978":799,"2070003":866},"800":{"76982":823,"77090":801,"2070003":0},"801":{"219":802,"1050037":809,"1050040":1036,"1050043":816,"2070003":0},"802":{"19537":803,"1050040":847,"1050044":805,"1050045":807,"2070003":0},"803":{"1978":804,"2070003":867},"805":{"1978":806,"2070003":868},"807":{"1978":808,"2070003":869},"809":{"19537":810,"1050044":812,"1050045":814,"2070003":0},"810":{"1978":811,"2070003":870},"812":{"1978":813,"2070003":871},"814":{"1978":815,"2070003":872},"816":{"19537":817,"1050044":819,"1050045":821,"2070003":0},"817":{"1978":818,"2070003":873},"819":{"1978":820,"2070003":874},"821":{"1978":822,"2070003":875},"823":{"219":824,"1050037":831,"1050040":1037,"1050043":838,"2070003":0},"824":{"19537":825,"1050040":848,"1050044":827,"1050045":829,"2070003":0},"825":{"1978":826,"2070003":876},"827":{"1978":828,"2070003":877},"829":{"1978":830,"2070003":878},"831":{"19537":832,"1050044":834,"1050045":836,"2070003":0},"832":{"1978":833,"2070003":879},"834":{"1978":835,"2070003":880},"836":{"1978":837,"2070003":881},"838":{"19537":839,"1050044":841,"1050045":843,"2070003":0},"839":{"1978":840,"2070003":882},"841":{"1978":842,"2070003":883},"843":{"1978":844,"2070003":884},"885":{"1050039":886,"1050041":1021,"1050043":890,"2070003":0},"886":{"77819":897,"78040":887,"82584":894,"2070003":0},"887":{"1050039":888,"1050043":889,"2070003":0},"890":{"77819":903,"78040":891,"82584":900,"2070003":0},"891":{"1050039":892,"1050043":893,"2070003":0},"894":{"1050039":895,"1050043":896,"2070003":0},"897":{"1050039":898,"1050043":899,"2070003":0},"900":{"1050039":901,"1050043":902,"2070003":0},"903":{"1050039":904,"1050043":905,"2070003":0},"906":{"1050039":907,"1050041":1028,"1050043":911,"2070003":0},"907":{"3361":908,"2070003":1294},"908":{"1050039":909,"1050043":910,"2070003":0},"911":{"3361":912,"2070003":1295},"912":{"1050039":913,"1050043":914,"2070003":0},"915":{"1050039":916,"1050041":1031,"1050043":920,"2070003":0},"916":{"3361":917,"2070003":1296},"917":{"1050039":918,"1050043":919,"2070003":0},"920":{"3361":921,"2070003":1297},"921":{"1050039":922,"1050043":923,"2070003":0},"932":{"219":933,"1050037":940,"1050043":947,"2070003":0},"933":{"19537":934,"1050044":936,"1050045":938,"2070003":0},"934":{"1978":935,"2070003":1038},"936":{"1978":937,"2070003":1039},"938":{"1978":939,"2070003":1040},"940":{"19537":941,"1050044":943,"1050045":945,"2070003":0},"941":{"1978":942,"2070003":1041},"943":{"1978":944,"2070003":1042},"945":{"1978":946,"2070003":1043},"947":{"19537":948,"1050044":950,"1050045":952,"2070003":0},"948":{"1978":949,"2070003":1044},"950":{"1978":951,"2070003":1045},"952":{"1978":953,"2070003":1046},"954":{"219":955,"1050037":962,"1050043":969,"2070003":0},"955":{"19537":956,"1050044":958,"1050045":960,"2070003":0},"956":{"1978":957,"2070003":1047},"958":{"1978":959,"2070003":1048},"960":{"1978":961,"2070003":1049},"962":{"19537":963,"1050044":965,"1050045":967,"2070003":0},"963":{"1978":964,"2070003":1050},"965":{"1978":966,"2070003":1051},"967":{"1978":968,"2070003":1052},"969":{"19537":970,"1050044":972,"1050045":974,"2070003":0},"970":{"1978":971,"2070003":1053},"972":{"1978":973,"2070003":1054},"974":{"1978":975,"2070003":1055},"976":{"52424":977,"2070003":0},"977":{"19537":1111,"45756":1110,"46237":1109,"77052":978,"1050039":1107,"1050040":1108,"1050044":1112,"2070003":0},"978":{"19537":983,"45756":982,"46237":981,"1050039":979,"1050040":980,"1050044":984,"2070003":0},"985":{"52424":986,"2070003":0},"986":{"19537":1117,"45756":1116,"46237":1115,"77052":987,"1050039":1113,"1050040":1114,"1050044":1118,"2070003":0},"987":{"19537":992,"45756":991,"46237":990,"1050039":988,"1050040":989,"1050044":993,"2070003":0},"994":{"52424":995,"2070003":0},"995":{"19537":1123,"45756":1122,"46237":1121,"77052":996,"1050039":1119,"1050040":1120,"1050044":1124,"2070003":0},"996":{"19537":1001,"45756":1000,"46237":999,"1050039":997,"1050040":998,"1050044":1002,"2070003":0},"1003":{"52424":1004,"2070003":0},"1004":{"19537":1129,"45756":1128,"46237":1127,"77052":1005,"1050039":1125,"1050040":1126,"1050044":1130,"2070003":0},"1005":{"19537":1010,"45756":1009,"46237":1008,"1050039":1006,"1050040":1007,"1050044":1011,"2070003":0},"1012":{"52424":1013,"2070003":0},"1013":{"19537":1135,"45756":1134,"46237":1133,"77052":1014,"1050039":1131,"1050040":1132,"1050044":1136,"2070003":0},"1014":{"19537":1019,"45756":1018,"46237":1017,"1050039":1015,"1050040":1016,"1050044":1020,"2070003":0},"1021":{"77819":1026,"78040":1022,"82584":1024,"2070003":0},"1022":{"1050041":1023,"2070003":0},"1024":{"1050041":1025,"2070003":0},"1026":{"1050041":1027,"2070003":0},"1028":{"3361":1029,"2070003":1348},"1029":{"1050041":1030,"2070003":0},"1031":{"3361":1032,"2070003":1349},"1032":{"1050041":1033,"2070003":0},"1056":{"47":1063,"78040":1057,"87219":1066,"2070003":1518},"1057":{"1050039":1058,"1050043":1059,"2070003":0},"1060":{"1050039":1061,"1050043":1062,"2070003":0},"1063":{"1050039":1064,"1050043":1065,"2070003":0},"1066":{"1050039":1067,"1050043":1068,"2070003":0},"1137":{"36445":1138,"36450":1143,"47623":1163,"47624":1168,"47815":1148,"47818":1153,"67763":1158,"2070003":0},"1138":{"1978":1141,"7620":1140,"24309":1142,"42769":1139,"2070003":1307},"1143":{"1978":1146,"7620":1145,"24309":1147,"42769":1144,"2070003":1308},"1148":{"1978":1151,"7620":1150,"24309":1152,"42769":1149,"2070003":1309},"1153":{"1978":1156,"7620":1155,"24309":1157,"42769":1154,"2070003":1310},"1158":{"1978":1161,"7620":1160,"24309":1162,"42769":1159,"2070003":1311},"1163":{"1978":1166,"7620":1165,"24309":1167,"42769":1164,"2070003":1312},"1168":{"1978":1171,"7620":1170,"24309":1172,"42769":1169,"2070003":1313},"1173":{"7":1363,"8":1353,"221":1380,"5914":1381,"11015":1382,"23226":1369,"23229":1374,"26892":1371,"26901":1376,"36445":1174,"36450":1179,"47623":1199,"47624":1204,"47815":1184,"47818":1189,"55521":1356,"55524":1357,"55994":1282,"56008":1354,"56013":1355,"58873":1370,"58879":1375,"65701":1373,"65702":1377,"67763":1194,"82994":1379,"83009":1378,"86818":1372,"87216":1367,"87249":1368,"87250":1366,"87251":1365,"87252":1364,"1050042":1383,"2070003":0},"1174":{"1978":1177,"7620":1176,"24309":1178,"42769":1175,"2070003":1314},"1179":{"1978":1182,"7620":1181,"24309":1183,"42769":1180,"2070003":1315},"1184":{"1978":1187,"7620":1186,"24309":1188,"42769":1185,"2070003":1316},"1189":{"1978":1192,"7620":1191,"24309":1193,"42769":1190,"2070003":1317},"1194":{"1978":1197,"7620":1196,"24309":1198,"42769":1195,"2070003":1318},"1199":{"1978":1202,"7620":1201,"24309":1203,"42769":1200,"2070003":1319},"1204":{"1978":1207,"7620":1206,"24309":1208,"42769":1205,"2070003":1320},"1217":{"1978":1220,"7620":1219,"24309":1221,"42769":1218,"2070003":1323},"1222":{"1978":1225,"7620":1224,"24309":1226,"42769":1223,"2070003":1324},"1227":{"1978":1230,"7620":1229,"24309":1231,"42769":1228,"2070003":1325},"1232":{"1978":1235,"7620":1234,"24309":1236,"42769":1233,"2070003":1326},"1237":{"1978":1240,"7620":1239,"24309":1241,"42769":1238,"2070003":1327},"1250":{"1978":1253,"7620":1252,"24309":1254,"42769":1251,"2070003":1330},"1255":{"1978":1258,"7620":1257,"24309":1259,"42769":1256,"2070003":1331},"1260":{"1978":1263,"7620":1262,"24309":1264,"42769":1261,"2070003":1332},"1265":{"1978":1268,"7620":1267,"24309":1269,"42769":1266,"2070003":1333},"1270":{"1978":1273,"7620":1272,"24309":1274,"42769":1271,"2070003":1334},"1275":{"47":1278,"78040":1276,"87219":1280,"2070003":1517},"1276":{"1050041":1277,"2070003":0},"1278":{"1050041":1279,"2070003":0},"1280":{"1050041":1281,"2070003":0},"1282":{"12752":1283,"12847":1286,"2070003":0},"1284":{"12752":1285,"12847":1287,"2070003":0},"1298":{"1050039":1299,"1050041":1350,"1050043":1300,"2070003":0},"1301":{"1050039":1302,"1050041":1351,"1050043":1303,"2070003":0},"1304":{"1050039":1305,"1050041":1352,"1050043":1306,"2070003":0},"1335":{"1978":1338,"24309":1336,"42769":1337,"2070003":1519},"1344":{"1050043":1345,"2070003":0},"1346":{"1050043":1347,"2070003":0},"1426":{"1050037":1428,"1050043":1429,"1050046":1427,"2070003":0},"1430":{"1050037":1432,"1050043":1433,"1050046":1431,"2070003":0},"1434":{"1050037":1436,"1050043":1437,"1050046":1435,"2070003":0},"1438":{"1050037":1440,"1050043":1441,"1050046":1439,"2070003":0},"1442":{"1050037":1444,"1050043":1445,"1050046":1443,"2070003":0},"1446":{"1050037":1448,"1050043":1449,"1050046":1447,"2070003":0},"1450":{"1050037":1452,"1050043":1453,"1050046":1451,"2070003":0},"1454":{"1050037":1456,"1050043":1457,"1050046":1455,"2070003":0},"1458":{"1050037":1460,"1050043":1461,"1050046":1459,"2070003":0},"1462":{"1050037":1464,"1050043":1465,"1050046":1463,"2070003":0},"1466":{"1050037":1468,"1050043":1469,"1050046":1467,"2070003":0},"1470":{"1050037":1472,"1050043":1473,"1050046":1471,"2070003":0},"1474":{"1050037":1476,"1050043":1477,"1050046":1475,"2070003":0},"1478":{"1050037":1480,"1050043":1481,"1050046":1479,"2070003":0},"1482":{"1050037":1484,"1050043":1485,"1050046":1483,"2070003":0},"1486":{"1050037":1488,"1050043":1489,"1050046":1487,"2070003":0},"1490":{"1050037":1492,"1050043":1493,"1050046":1491,"2070003":0},"1494":{"1050037":1496,"1050043":1497,"1050046":1495,"2070003":0},"1498":{"1050037":1500,"1050043":1501,"1050046":1499,"2070003":0},"1502":{"1050037":1504,"1050043":1505,"1050046":1503,"2070003":0},"1506":{"1050037":1508,"1050043":1509,"1050046":1507,"2070003":0},"1510":{"1050037":1512,"1050043":1513,"1050046":1511,"2070003":0}},{"9":"DURATION","10":"DURATION","13":"DURATION","14":"DURATION","18":"DURATION","19":"DURATION","22":"DURATION","23":"DURATION","30":"DURATION","31":"DURATION","34":"DURATION","35":"DURATION","39":"DURATION","40":"DURATION","43":"DURATION","44":"DURATION","52":"DURATION","53":"DURATION","56":"DURATION","57":"DURATION","61":"DURATION","62":"DURATION","65":"DURATION","66":"DURATION","73":"DURATION","74":"DURATION","77":"DURATION","78":"DURATION","82":"DURATION","83":"DURATION","86":"DURATION","87":"DURATION","96":"DURATION","97":"DURATION","100":"DURATION","101":"DURATION","105":"DURATION","106":"DURATION","109":"DURATION","110":"DURATION","117":"DURATION","118":"DURATION","121":"DURATION","122":"DURATION","126":"DURATION","127":"DURATION","130":"DURATION","131":"DURATION","139":"DURATION","140":"DURATION","143":"DURATION","144":"DURATION","148":"DURATION","149":"DURATION","152":"DURATION","153":"DURATION","160":"DURATION","161":"DURATION","164":"DURATION","165":"DURATION","169":"DURATION","170":"DURATION","173":"DURATION","174":"DURATION","181":"DURATION","182":"DURATION","185":"DURATION","186":"DURATION","190":"DURATION","191":"DURATION","194":"DURATION","195":"DURATION","202":"DURATION","203":"DURATION","206":"DURATION","207":"DURATION","211":"DURATION","212":"DURATION","215":"DURATION","216":"DURATION","221":"DURATION","222":"DURATION","225":"DURATION","226":"DURATION","230":"DURATION","231":"DURATION","234":"DURATION","235":"DURATION","237":"DURATION","238":"DURATION","240":"DURATION","241":"DURATION","246":"DURATION","247":"DURATION","250":"DURATION","251":"DURATION","255":"DURATION","256":"DURATION","259":"DURATION","260":"DURATION","262":"DURATION","263":"DURATION","265":"DURATION","266":"DURATION","271":"DURATION","272":"DURATION","275":"DURATION","276":"DURATION","280":"DURATION","281":"DURATION","284":"DURATION","285":"DURATION","287":"DURATION","288":"DURATION","290":"DURATION","291":"DURATION","296":"DURATION","297":"DURATION","300":"DURATION","301":"DURATION","305":"DURATION","306":"DURATION","309":"DURATION","310":"DURATION","312":"DURATION","313":"DURATION","315":"DURATION","316":"DURATION","323":"DURATION","324":"DURATION","327":"DURATION","328":"DURATION","332":"DURATION","333":"DURATION","336":"DURATION","337":"DURATION","344":"DURATION","345":"DURATION","348":"DURATION","349":"DURATION","353":"DURATION","354":"DURATION","357":"DURATION","358":"DURATION","363":"DURATION","364":"DURATION","367":"DURATION","368":"DURATION","372":"DURATION","373":"DURATION","376":"DURATION","377":"DURATION","379":"DURATION","380":"DURATION","382":"DURATION","383":"DURATION","388":"DURATION","389":"DURATION","392":"DURATION","393":"DURATION","397":"DURATION","398":"DURATION","401":"DURATION","402":"DURATION","404":"DURATION","405":"DURATION","407":"DURATION","408":"DURATION","413":"DURATION","414":"DURATION","417":"DURATION","418":"DURATION","422":"DURATION","423":"DURATION","426":"DURATION","427":"DURATION","429":"DURATION","430":"DURATION","432":"DURATION","433":"DURATION","438":"DURATION","439":"DURATION","442":"DURATION","443":"DURATION","447":"DURATION","448":"DURATION","451":"DURATION","452":"DURATION","454":"DURATION","455":"DURATION","457":"DURATION","458":"DURATION","463":"DURATION","464":"DURATION","467":"DURATION","468":"DURATION","472":"DURATION","473":"DURATION","476":"DURATION","477":"DURATION","479":"DURATION","480":"DURATION","482":"DURATION","483":"DURATION","488":"DURATION","489":"DURATION","492":"DURATION","493":"DURATION","497":"DURATION","498":"DURATION","501":"DURATION","502":"DURATION","504":"DURATION","505":"DURATION","507":"DURATION","508":"DURATION","510":"DURATION","511":"DURATION","513":"DURATION","514":"DURATION","516":"DURATION","517":"DURATION","519":"DURATION","520":"DURATION","522":"DURATION","523":"DURATION","525":"DURATION","526":"DURATION","528":"DURATION","529":"DURATION","531":"DURATION","532":"DURATION","537":"DURATION","538":"DURATION","541":"DURATION","542":"DURATION","546":"DURATION","547":"DURATION","550":"DURATION","551":"DURATION","553":"DURATION","554":"DURATION","556":"DURATION","557":"DURATION","562":"DURATION","563":"DURATION","566":"DURATION","567":"DURATION","571":"DURATION","572":"DURATION","575":"DURATION","576":"DURATION","578":"DURATION","579":"DURATION","581":"DURATION","582":"DURATION","584":"DURATION","585":"DURATION","587":"DURATION","588":"DURATION","590":"DURATION","591":"DURATION","593":"DURATION","594":"DURATION","596":"DURATION","597":"DURATION","599":"DURATION","600":"DURATION","602":"DURATION","603":"DURATION","605":"DURATION","606":"DURATION","607":"DURATION","608":"DURATION","611":"DURATION","612":"DURATION","613":"DURATION","614":"DURATION","617":"DURATION","618":"DURATION","619":"DURATION","620":"DURATION","623":"DURATION","624":"DURATION","625":"DURATION","626":"DURATION","629":"DURATION","630":"DURATION","631":"DURATION","632":"DURATION","635":"DURATION","636":"DURATION","637":"DURATION","638":"DURATION","641":"DURATION","642":"DURATION","643":"DURATION","644":"DURATION","647":"DURATION","648":"DURATION","649":"DURATION","650":"DURATION","653":"DURATION","654":"DURATION","656":"DURATION","657":"DURATION","659":"DURATION","660":"DURATION","662":"DURATION","663":"DURATION","665":"DURATION","666":"DURATION","668":"DURATION","669":"DURATION","671":"DURATION","672":"DURATION","674":"DURATION","675":"DURATION","677":"DURATION","678":"DURATION","682":"DURATION","683":"DURATION","684":"DURATION","688":"DURATION","689":"DURATION","690":"DURATION","694":"DURATION","695":"DURATION","696":"DURATION","700":"DURATION","701":"DURATION","702":"DURATION","706":"DURATION","707":"DURATION","708":"DURATION","712":"DURATION","713":"DURATION","714":"DURATION","715":"DURATION","716":"DURATION","719":"DURATION","720":"DURATION","721":"DURATION","722":"DURATION","725":"DURATION","726":"DURATION","727":"DURATION","728":"DURATION","729":"DURATION","730":"DURATION","731":"DURATION","732":"DURATION","733":"DURATION","734":"DURATION","735":"DURATION","736":"DURATION","739":"DURATION","740":"DURATION","741":"DURATION","742":"DURATION","745":"DURATION","746":"DURATION","747":"DURATION","748":"DURATION","749":"DURATION","750":"DURATION","751":"DURATION","752":"DURATION","753":"DURATION","754":"DURATION","759":"DATE","761":"DATE","763":"DATE","766":"DATE","768":"DATE","770":"DATE","773":"DATE","775":"DATE","777":"DATE","781":"DATE","783":"DATE","785":"DATE","788":"DATE","790":"DATE","792":"DATE","795":"DATE","797":"DATE","799":"DATE","804":"DATE","806":"DATE","808":"DATE","811":"DATE","813":"DATE","815":"DATE","818":"DATE","820":"DATE","822":"DATE","826":"DATE","828":"DATE","830":"DATE","833":"DATE","835":"DATE","837":"DATE","840":"DATE","842":"DATE","844":"DATE","845":"DURATION","846":"DURATION","847":"DURATION","848":"DURATION","849":"DURATION","850":"DURATION","851":"DURATION","852":"DURATION","853":"DURATION","854":"DURATION","855":"DURATION","856":"DURATION","857":"DURATION","858":"DURATION","859":"DURATION","860":"DURATION","861":"DURATION","862":"DURATION","863":"DURATION","864":"DURATION","865":"DURATION","866":"DURATION","867":"DURATION","868":"DURATION","869":"DURATION","870":"DURATION","871":"DURATION","872":"DURATION","873":"DURATION","874":"DURATION","875":"DURATION","876":"DURATION","877":"DURATION","878":"DURATION","879":"DURATION","880":"DURATION","881":"DURATION","882":"DURATION","883":"DURATION","884":"DURATION","888":"DURATION","889":"DURATION","892":"DURATION","893":"DURATION","895":"DURATION","896":"DURATION","898":"DURATION","899":"DURATION","901":"DURATION","902":"DURATION","904":"DURATION","905":"DURATION","909":"DURATION","910":"DURATION","913":"DURATION","914":"DURATION","918":"DURATION","919":"DURATION","922":"DURATION","923":"DURATION","924":"DURATION","925":"DURATION","926":"DURATION","927":"DURATION","928":"DURATION","929":"DURATION","930":"DURATION","931":"DURATION","935":"DATE","937":"DATE","939":"DATE","942":"DATE","944":"DATE","946":"DATE","949":"DATE","951":"DATE","953":"DATE","957":"DATE","959":"DATE","961":"DATE","964":"DATE","966":"DATE","968":"DATE","971":"DATE","973":"DATE","975":"DATE","979":"DATE","980":"DATE","981":"DATE","982":"DATE","983":"DATE","984":"DATE","988":"DATE","989":"DATE","990":"DATE","991":"DATE","992":"DATE","993":"DATE","997":"DATE","998":"DATE","999":"DATE","1000":"DATE","1001":"DATE","1002":"DATE","1006":"DATE","1007":"DATE","1008":"DATE","1009":"DATE","1010":"DATE","1011":"DATE","1015":"DATE","1016":"DATE","1017":"DATE","1018":"DATE","1019":"DATE","1020":"DATE","1023":"DURATION","1025":"DURATION","1027":"DURATION","1030":"DURATION","1033":"DURATION","1034":"DURATION","1035":"DURATION","1036":"DURATION","1037":"DURATION","1038":"DURATION","1039":"DURATION","1040":"DURATION","1041":"DURATION","1042":"DURATION","1043":"DURATION","1044":"DURATION","1045":"DURATION","1046":"DURATION","1047":"DURATION","1048":"DURATION","1049":"DURATION","1050":"DURATION","1051":"DURATION","1052":"DURATION","1053":"DURATION","1054":"DURATION","1055":"DURATION","1058":"DURATION","1059":"DURATION","1061":"DURATION","1062":"DURATION","1064":"DURATION","1065":"DURATION","1067":"DURATION","1068":"DURATION","1069":"DURATION","1070":"DURATION","1071":"DURATION","1072":"DURATION","1073":"DURATION","1074":"DURATION","1075":"DURATION","1076":"DURATION","1077":"DURATION","1078":"DURATION","1079":"DURATION","1080":"DURATION","1081":"DURATION","1082":"DURATION","1083":"DURATION","1084":"DURATION","1085":"DURATION","1086":"DURATION","1087":"DURATION","1088":"DURATION","1089":"DURATION","1090":"DURATION","1091":"DURATION","1092":"DURATION","1093":"DURATION","1094":"DURATION","1095":"DURATION","1096":"DURATION","1097":"DURATION","1098":"DURATION","1099":"DURATION","1100":"DURATION","1101":"DATE","1102":"DATE","1103":"DATE","1104":"DATE","1105":"DATE","1106":"DATE","1107":"DATE","1108":"DATE","1109":"DATE","1110":"DATE","1111":"DATE","1112":"DATE","1113":"DATE","1114":"DATE","1115":"DATE","1116":"DATE","1117":"DATE","1118":"DATE","1119":"DATE","1120":"DATE","1121":"DATE","1122":"DATE","1123":"DATE","1124":"DATE","1125":"DATE","1126":"DATE","1127":"DATE","1128":"DATE","1129":"DATE","1130":"DATE","1131":"DATE","1132":"DATE","1133":"DATE","1134":"DATE","1135":"DATE","1136":"DATE","1139":"TIME","1140":"TIME","1141":"TIME","1142":"TIME","1144":"TIME","1145":"TIME","1146":"TIME","1147":"TIME","1149":"TIME","1150":"TIME","1151":"TIME","1152":"TIME","1154":"TIME","1155":"TIME","1156":"TIME","1157":"TIME","1159":"TIME","1160":"TIME","1161":"TIME","1162":"TIME","1164":"TIME","1165":"TIME","1166":"TIME","1167":"TIME","1169":"TIME","1170":"TIME","1171":"TIME","1172":"TIME","1175":"TIME","1176":"TIME","1177":"TIME","1178":"TIME","1180":"TIME","1181":"TIME","1182":"TIME","1183":"TIME","1185":"TIME","1186":"TIME","1187":"TIME","1188":"TIME","1190":"TIME","1191":"TIME","1192":"TIME","1193":"TIME","1195":"TIME","1196":"TIME","1197":"TIME","1198":"TIME","1200":"TIME","1201":"TIME","1202":"TIME","1203":"TIME","1205":"TIME","1206":"TIME","1207":"TIME","1208":"TIME","1209":"TIME","1210":"TIME","1211":"TIME","1212":"TIME","1213":"TIME","1214":"TIME","1215":"TIME","1216":"TIME","1218":"TIME","1219":"TIME","1220":"TIME","1221":"TIME","1223":"TIME","1224":"TIME","1225":"TIME","1226":"TIME","1228":"TIME","1229":"TIME","1230":"TIME","1231":"TIME","1233":"TIME","1234":"TIME","1235":"TIME","1236":"TIME","1238":"TIME","1239":"TIME","1240":"TIME","1241":"TIME","1242":"TIME","1243":"TIME","1244":"TIME","1245":"TIME","1246":"TIME","1247":"TIME","1248":"TIME","1249":"TIME","1251":"TIME","1252":"TIME","1253":"TIME","1254":"TIME","1256":"TIME","1257":"TIME","1258":"TIME","1259":"TIME","1261":"TIME","1262":"TIME","1263":"TIME","1264":"TIME","1266":"TIME","1267":"TIME","1268":"TIME","1269":"TIME","1271":"TIME","1272":"TIME","1273":"TIME","1274":"TIME","1277":"DURATION","1279":"DURATION","1281":"DURATION","1283":"PERCENT","1285":"PERCENT","1286":"PERCENT","1287":"PERCENT","1288":"DURATION","1289":"DURATION","1290":"DURATION","1291":"DURATION","1292":"DURATION","1293":"DURATION","1294":"DURATION","1295":"DURATION","1296":"DURATION","1297":"DURATION","1299":"DURATION","1300":"DURATION","1302":"DURATION","1303":"DURATION","1305":"DURATION","1306":"DURATION","1307":"DURATION","1308":"DURATION","1309":"DURATION","1310":"DURATION","1311":"DURATION","1312":"DURATION","1313":"DURATION","1314":"DURATION","1315":"DURATION","1316":"DURATION","1317":"DURATION","1318":"DURATION","1319":"DURATION","1320":"DURATION","1321":"DURATION","1322":"DURATION","1323":"DURATION","1324":"DURATION","1325":"DURATION","1326":"DURATION","1327":"DURATION","1328":"DURATION","1329":"DURATION","1330":"DURATION","1331":"DURATION","1332":"DURATION","1333":"DURATION","1334":"DURATION","1336":"DATE","1337":"DATE","1338":"DATE","1339":"DATE","1340":"DATE","1341":"DATE","1342":"DATE","1343":"DATE","1345":"DATE","1347":"DATE","1348":"DURATION","1349":"DURATION","1350":"DURATION","1351":"DURATION","1352":"DURATION","1353":"PERCENT","1354":"PERCENT","1355":"PERCENT","1356":"PERCENT","1357":"PERCENT","1358":"PERCENT","1359":"PERCENT","1360":"PERCENT","1361":"PERCENT","1362":"PERCENT","1363":"MONEY","1364":"MONEY","1365":"MONEY","1366":"MONEY","1367":"MONEY","1368":"MONEY","1369":"MONEY","1370":"MONEY","1371":"MONEY","1372":"MONEY","1373":"MONEY","1374":"MONEY","1375":"MONEY","1376":"MONEY","1377":"MONEY","1378":"MONEY","1379":"MONEY","1380":"MONEY","1381":"MONEY","1382":"MONEY","1383":"MONEY","1384":"MONEY","1385":"MONEY","1386":"MONEY","1387":"MONEY","1388":"MONEY","1389":"MONEY","1390":"MONEY","1391":"MONEY","1392":"MONEY","1393":"MONEY","1394":"MONEY","1395":"MONEY","1396":"MONEY","1397":"MONEY","1398":"MONEY","1399":"MONEY","1400":"MONEY","1401":"MONEY","1402":"MONEY","1403":"MONEY","1404":"MONEY","1405":"MONEY","1406":"MONEY","1407":"MONEY","1408":"MONEY","1409":"MONEY","1410":"MONEY","1411":"MONEY","1412":"MONEY","1413":"MONEY","1414":"MONEY","1415":"MONEY","1416":"MONEY","1417":"MONEY","1418":"MONEY","1419":"MONEY","1420":"MONEY","1421":"MONEY","1422":"MONEY","1423":"MONEY","1424":"MONEY","1425":"MONEY","1427":"MONEY","1428":"MONEY","1429":"MONEY","1431":"MONEY","1432":"MONEY","1433":"MONEY","1435":"MONEY","1436":"MONEY","1437":"MONEY","1439":"MONEY","1440":"MONEY","1441":"MONEY","1443":"MONEY","1444":"MONEY","1445":"MONEY","1447":"MONEY","1448":"MONEY","1449":"MONEY","1451":"MONEY","1452":"MONEY","1453":"MONEY","1455":"MONEY","1456":"MONEY","1457":"MONEY","1459":"MONEY","1460":"MONEY","1461":"MONEY","1463":"MONEY","1464":"MONEY","1465":"MONEY","1467":"MONEY","1468":"MONEY","1469":"MONEY","1471":"MONEY","1472":"MONEY","1473":"MONEY","1475":"MONEY","1476":"MONEY","1477":"MONEY","1479":"MONEY","1480":"MONEY","1481":"MONEY","1483":"MONEY","1484":"MONEY","1485":"MONEY","1487":"MONEY","1488":"MONEY","1489":"MONEY","1491":"MONEY","1492":"MONEY","1493":"MONEY","1495":"MONEY","1496":"MONEY","1497":"MONEY","1499":"MONEY","1500":"MONEY","1501":"MONEY","1503":"MONEY","1504":"MONEY","1505":"MONEY","1507":"MONEY","1508":"MONEY","1509":"MONEY","1511":"MONEY","1512":"MONEY","1513":"MONEY","1514":"ORDINAL","1515":"CARDINAL","1516":"CARDINAL","1517":"TIME","1518":"DATE","1519":"DURATION","1520":"DURATION","1521":"DURATION","1522":"DURATION","1523":"DURATION","1524":"DURATION","1525":"DURATION","1526":"DURATION","1527":"DURATION","1528":"DURATION","1529":"DURATION","1530":"EMAIL","1531":"EMOJI","1532":"EMOTICON","1533":"HASHTAG","1534":"MENTION","1535":"URL"},{"1339":[0,1],"1340":[0,1],"1341":[0,1],"1342":[0,1],"1343":[0,1],"1345":[1,0],"1347":[1,0]},{}]']});var MKA=GA((osi,OKA)=>{var TGr=IKA(),NGr=bKA(),PGr=function(){return{machines:NGr,transformers:TGr}};OKA.exports=PGr});var HKA=GA((ssi,xKA)=>{var kKA=new Array(1);kKA[0]=function(A,r,t,i){var o=r.property(A,"sbdHint")||r.property(t[4*i],"sbdHint");return o===4&&(o=65535&t[4*i+1]?6:4),o?o+108e4:r.property(A,"isAbbrev")?108e4+(r.value(A).length===2?8:7):A},xKA.exports=kKA});var FKA=GA((csi,SKA)=>{var GGr=function(A,r){var t=r.numOfTokens,i=[0,t-1,0,0];for(let o=0;o{YGr.exports=['[100,89,{"0":{"2":87,"1080001":7,"1080002":1,"1080007":42,"2070003":0},"1":{"2":75,"1080002":39,"1080003":2,"1080004":21,"1080005":24,"2070003":88},"2":{"2":51,"1080001":5,"1080002":3,"1080003":33,"1080004":13,"1080005":15,"2070003":79},"3":{"2":4,"2070003":47},"5":{"2":6,"2070003":48},"7":{"2":76,"46":71,"47":72,"87219":73,"87220":74,"1080001":69,"1080003":8,"1080004":27,"1080005":30,"2070003":89},"8":{"2":54,"1080001":11,"1080002":9,"1080003":36,"1080004":17,"1080005":19,"2070003":82},"9":{"2":10,"2070003":49},"11":{"2":12,"2070003":50},"13":{"2":14,"2070003":57},"15":{"2":16,"2070003":58},"17":{"2":18,"2070003":59},"19":{"2":20,"2070003":60},"21":{"2":52,"1080003":22,"2070003":80},"22":{"2":23,"2070003":61},"24":{"2":53,"1080003":25,"2070003":81},"25":{"2":35,"2070003":62},"27":{"2":55,"1080003":28,"2070003":83},"28":{"2":29,"2070003":63},"30":{"2":56,"1080003":31,"2070003":84},"31":{"2":38,"2070003":64},"33":{"2":34,"2070003":65},"36":{"2":37,"2070003":66},"39":{"2":67,"1080002":40,"2070003":85},"40":{"2":41,"2070003":68},"42":{"1080009":45,"1080010":43,"2070003":0},"43":{"2":44,"2070003":77},"45":{"2":46,"2070003":78},"69":{"1080001":70,"2070003":86}},{"4":"SBD","6":"SBD","10":"SBD","12":"SBD","14":"SBD","16":"SBD","18":"SBD","20":"SBD","23":"SBD","26":"SBD","29":"SBD","32":"SBD","34":"SBD","35":"SBD","37":"SBD","38":"SBD","41":"SBD","44":"SBD","46":"SBD","47":"SBD","48":"SBD","49":"SBD","50":"SBD","51":"SBD","52":"SBD","53":"SBD","54":"SBD","55":"SBD","56":"SBD","57":"SBD","58":"SBD","59":"SBD","60":"SBD","61":"SBD","62":"SBD","63":"SBD","64":"SBD","65":"SBD","66":"SBD","67":"SBD","68":"SBD","70":"0","71":"0","72":"0","73":"0","74":"0","75":"SBD","76":"SBD","77":"SBD","78":"SBD","79":"SBD","80":"SBD","81":"SBD","82":"SBD","83":"SBD","84":"SBD","85":"SBD","86":"0","87":"SBD","88":"SBD","89":"SBD"},{"4":[2,1],"6":[2,1],"10":[2,1],"12":[2,1],"14":[2,1],"16":[2,1],"18":[2,1],"20":[2,1],"23":[2,1],"26":[2,1],"29":[2,1],"32":[2,1],"34":[2,1],"35":[2,1],"37":[2,1],"38":[2,1],"41":[2,1],"44":[0,2],"46":[0,2],"47":[2,0],"48":[2,0],"49":[2,0],"50":[2,0],"51":[1,1],"52":[1,1],"53":[1,1],"54":[1,1],"55":[1,1],"56":[1,1],"57":[2,0],"58":[2,0],"59":[2,0],"60":[2,0],"61":[2,0],"62":[2,0],"63":[2,0],"64":[2,0],"65":[2,0],"66":[2,0],"67":[1,1],"68":[2,0],"75":[0,1],"76":[0,1],"77":[0,1],"78":[0,1],"79":[1,0],"80":[1,0],"81":[1,0],"82":[1,0],"83":[1,0],"84":[1,0],"85":[1,0]},{}]']});var NKA=GA((usi,TKA)=>{var UGr=HKA(),LGr=FKA(),jGr=RKA(),WGr=function(){return{machines:jGr,setter:LGr,transformers:UGr}};TKA.exports=WGr});var GKA=GA((gsi,PKA)=>{var MV=new Array(2);MV[0]=function(A,r,t,i){var o=r.property(t[4*i],"posHint");return o?o+108e4:A},MV[1]=MV[0],PKA.exports=MV});var UKA=GA((dsi,YKA)=>{var JGr=function(A,r,t,i){let o=0;for(let s=0;s{var qGr=function(A,r,t,i){for(let o=0;o{VGr.exports=['[100,177,{"0":{"1":160,"2":4,"3":89,"4":39,"5":42,"6":32,"8":155,"9":172,"12":168,"16":138,"1080003":26,"1080004":7,"1080005":1,"1080006":75,"1080008":134,"1080012":36,"1080013":96,"1080014":23,"1080016":29,"1080017":121,"1080018":77,"1080019":79,"1080020":81,"1080021":83,"1080022":85,"1080028":141,"2070003":0,"$of":175},"1":{"1080004":2,"1080014":120,"2070003":0},"2":{"8":3,"2070003":0},"4":{"1080004":5,"1080014":119,"1080016":45,"2070003":0},"5":{"8":6,"2070003":0},"7":{"1080018":8,"1080019":11,"1080020":14,"1080021":17,"1080022":20,"2070003":0},"8":{"13":9,"1080001":10,"2070003":91},"11":{"13":12,"1080001":13,"2070003":92},"14":{"13":15,"1080001":16,"2070003":93},"17":{"13":18,"1080001":19,"2070003":94},"20":{"13":21,"1080001":22,"2070003":95},"23":{"2":24,"3":113,"4":110,"5":115,"8":118,"10":116,"16":112,"1080001":114,"1080012":111,"2070003":0},"24":{"2":25,"2070003":0},"26":{"1":48,"2":69,"4":163,"5":70,"6":67,"8":47,"9":68,"11":54,"12":66,"13":71,"1080001":72,"1080010":27,"1080013":73,"1080014":74,"1080018":49,"1080019":50,"1080020":51,"1080021":52,"1080022":53,"1080023":55,"1080024":56,"1080025":57,"1080026":58,"1080027":59,"1080028":61,"1080030":63,"1080031":64,"1080032":65,"1080033":60,"2070003":0},"27":{"3":28,"2070003":0},"29":{"1080004":87,"1080009":158,"1080010":30,"1080014":117,"2070003":0},"30":{"3":31,"2070003":0},"32":{"1":33,"4":108,"16":137,"1080010":136,"1080012":109,"2070003":0},"33":{"16":35,"1080010":34,"2070003":0},"36":{"7":174,"8":143,"1080004":88,"1080013":107,"1080016":37,"2070003":0},"37":{"8":38,"2070003":0},"39":{"4":162,"8":144,"1080009":157,"1080013":106,"1080016":40,"2070003":0},"40":{"8":41,"2070003":0},"42":{"8":43,"2070003":0},"43":{"6":44,"2070003":0},"45":{"16":46,"2070003":0},"75":{"1080003":76,"2070003":0},"77":{"1":146,"8":145,"1080004":78,"2070003":0},"79":{"1":148,"8":147,"1080004":80,"2070003":0},"81":{"1":150,"8":149,"1080004":82,"2070003":0},"83":{"1":152,"8":151,"1080004":84,"2070003":0},"85":{"1":154,"8":153,"1080004":86,"2070003":0},"89":{"8":159,"1080004":90,"2070003":0},"96":{"2":99,"3":100,"4":97,"5":101,"13":103,"16":98,"18":102,"1080001":104,"1080012":105,"2070003":0},"121":{"1":132,"3":133,"1080018":122,"1080019":123,"1080020":124,"1080021":125,"1080022":126,"1080023":127,"1080024":128,"1080025":129,"1080026":130,"1080027":131,"2070003":0},"134":{"1080005":135,"2070003":0},"138":{"4":139,"12":167,"1080012":140,"2070003":0,"$of":177},"141":{"16":142,"2070003":0},"155":{"12":165,"1080016":164,"1080028":156,"2070003":0},"160":{"12":166,"16":161,"2070003":0},"168":{"1":170,"8":169,"16":171,"2070003":0},"172":{"16":173,"2070003":0},"175":{"16":176,"2070003":0}},{"3":"-1","6":"-1","9":"-2","10":"-2","12":"-2","13":"-2","15":"-2","16":"-2","18":"-2","19":"-2","21":"-2","22":"-2","25":"-11","28":"-16","31":"-16","34":"-8","35":"8","38":"16","41":"16","44":"16","46":"-3","47":"16","48":"16","49":"-2","50":"-2","51":"-2","52":"-2","53":"-2","54":"-2","55":"-2","56":"-2","57":"-2","58":"-2","59":"-2","60":"-2","61":"-2","62":"-2","63":"-2","64":"-2","65":"-2","66":"-2","67":"-2","68":"-2","69":"-2","70":"-2","71":"-2","72":"-2","73":"-2","74":"-2","76":"-2","78":"-16","80":"-16","82":"-16","84":"-16","86":"-16","87":"-16","88":"-16","90":"-16","91":"-18","92":"-18","93":"-18","94":"-18","95":"-18","97":"-11","98":"-11","99":"-11","100":"-11","101":"-11","102":"-11","103":"-11","104":"-11","105":"-11","106":"-11","107":"-11","108":"11","109":"11","110":"-11","111":"-11","112":"-11","113":"-11","114":"-11","115":"-11","116":"-11","117":"-3","118":"-6","119":"-6","120":"-6","122":"-18","123":"-18","124":"-18","125":"-18","126":"-18","127":"-18","128":"-18","129":"-18","130":"-18","131":"-18","132":"-3","133":"-3","135":"-2","136":"-8","137":"8","139":"8","140":"8","142":"8","143":"16","144":"16","145":"16","146":"16","147":"16","148":"16","149":"16","150":"16","151":"16","152":"16","153":"16","154":"16","156":"16","157":"-16","158":"-16","159":"16","161":"8","162":"16","163":"16","164":"-3","165":"12","166":"12","167":"12","169":"12","170":"12","171":"12","173":"8","174":"16","176":"8","177":"8"},{"3":[1,1],"6":[1,1],"9":[0,2],"10":[0,2],"12":[0,2],"13":[0,2],"15":[0,2],"16":[0,2],"18":[0,2],"19":[0,2],"21":[0,2],"22":[0,2],"25":[0,2],"28":[1,1],"31":[1,1],"34":[2,0],"35":[2,0],"38":[2,0],"41":[2,0],"44":[1,1],"46":[1,1],"47":[1,0],"48":[1,0],"49":[0,1],"50":[0,1],"51":[0,1],"52":[0,1],"53":[0,1],"54":[0,1],"55":[0,1],"56":[0,1],"57":[0,1],"58":[0,1],"59":[0,1],"60":[0,1],"61":[0,1],"62":[0,1],"63":[0,1],"64":[0,1],"65":[0,1],"66":[0,1],"67":[0,1],"68":[0,1],"69":[0,1],"70":[0,1],"71":[0,1],"72":[0,1],"73":[0,1],"74":[0,1],"76":[1,0],"78":[1,0],"80":[1,0],"82":[1,0],"84":[1,0],"86":[1,0],"87":[1,0],"88":[1,0],"90":[1,0],"91":[0,1],"92":[0,1],"93":[0,1],"94":[0,1],"95":[0,1],"97":[0,1],"98":[0,1],"99":[0,1],"100":[0,1],"101":[0,1],"102":[0,1],"103":[0,1],"104":[0,1],"105":[0,1],"106":[1,0],"107":[1,0],"108":[0,1],"109":[0,1],"110":[0,1],"111":[0,1],"112":[0,1],"113":[0,1],"114":[0,1],"115":[0,1],"116":[0,1],"117":[1,0],"118":[0,1],"119":[1,0],"120":[1,0],"122":[0,1],"123":[0,1],"124":[0,1],"125":[0,1],"126":[0,1],"127":[0,1],"128":[0,1],"129":[0,1],"130":[0,1],"131":[0,1],"132":[0,1],"133":[0,1],"135":[0,1],"136":[1,0],"137":[1,0],"139":[0,1],"140":[0,1],"142":[1,0],"143":[1,0],"144":[1,0],"145":[1,0],"146":[1,0],"147":[1,0],"148":[1,0],"149":[1,0],"150":[1,0],"151":[1,0],"152":[1,0],"153":[1,0],"154":[1,0],"156":[0,1],"157":[1,0],"158":[1,0],"159":[1,0],"161":[1,0],"162":[1,0],"163":[1,0],"164":[1,0],"165":[0,1],"166":[0,1],"167":[0,1],"169":[1,0],"170":[1,0],"171":[1,0],"173":[1,0],"174":[1,0],"176":[1,0],"177":[0,1]},{}]','[100,115,{"0":{"1":64,"2":37,"3":51,"4":95,"6":19,"7":114,"8":6,"12":57,"13":43,"16":1,"1080002":34,"1080003":69,"1080004":14,"1080005":40,"1080007":106,"1080009":98,"1080014":74,"1080017":48,"1080018":79,"1080019":81,"1080020":83,"1080021":85,"1080022":87,"1080033":28,"2070003":0},"1":{"8":68,"16":17,"1080006":2,"1080011":94,"1080014":24,"2070003":0},"2":{"2":3,"5":27,"2070003":0},"3":{"6":4,"12":5,"2070003":0},"6":{"1080014":7,"2070003":0},"7":{"12":8,"1080018":9,"1080019":10,"1080020":11,"1080021":12,"1080022":13,"2070003":0},"14":{"16":61,"1080003":15,"2070003":0},"15":{"16":16,"2070003":0},"17":{"8":18,"2070003":0},"19":{"8":22,"16":20,"1080012":113,"2070003":0},"20":{"8":21,"2070003":0},"22":{"8":23,"2070003":0},"24":{"4":26,"16":25,"2070003":73},"28":{"1":29,"8":78,"1080002":31,"2070003":0},"29":{"8":30,"2070003":0},"31":{"9":32,"15":33,"2070003":0},"34":{"2":35,"9":103,"15":104,"2070003":0},"35":{"1":36,"2070003":0},"37":{"16":109,"1080002":105,"1080007":38,"1080011":97,"2070003":0},"38":{"1":39,"2070003":0},"40":{"1080007":41,"1080011":100,"2070003":0},"41":{"1":42,"2070003":0},"43":{"2":44,"2070003":0},"44":{"1080018":45,"1080019":46,"1080020":47,"2070003":0},"48":{"4":111,"8":54,"18":110,"1080003":49,"1080011":101,"1080012":112,"2070003":0},"49":{"16":50,"2070003":0},"51":{"8":63,"13":52,"2070003":0},"52":{"1080017":53,"2070003":0},"54":{"4":55,"1080012":56,"2070003":0},"57":{"17":58,"2070003":0},"58":{"12":59,"2070003":0},"64":{"1":66,"3":67,"16":65,"2070003":0},"69":{"1":71,"8":70,"12":72,"1080011":102,"2070003":0},"74":{"2":75,"13":77,"1080005":76,"2070003":0},"79":{"8":89,"1080004":80,"2070003":0},"81":{"8":90,"1080004":82,"2070003":0},"83":{"8":91,"1080004":84,"2070003":0},"85":{"8":92,"1080004":86,"2070003":0},"87":{"8":93,"1080004":88,"2070003":0},"95":{"1080011":96,"2070003":0},"98":{"1080011":99,"2070003":0},"106":{"8":108,"1080005":107,"2070003":0},"114":{"8":115,"2070003":0}},{"4":"-3","5":"-3","8":"-11","9":"-11","10":"-11","11":"-11","12":"-11","13":"-11","16":"-16","18":"1","21":"1","23":"1","25":"-11","26":"-11","27":"-3","30":"6","32":"-2","33":"-2","36":"-3","39":"-1","42":"-1","45":"18","46":"18","47":"18","50":"-18","53":"-18","55":"-18","56":"-18","59":"-12","60":"-18","61":"-8","62":"1","63":"16","65":"3","66":"3","67":"3","68":"3","70":"-2","71":"-2","72":"-2","73":"-18","75":"-11","76":"-11","77":"-11","78":"6","80":"-16","82":"-16","84":"-16","86":"-16","88":"-16","89":"16","90":"16","91":"16","92":"16","93":"16","94":"-11","96":"-11","97":"-11","99":"-11","100":"-11","101":"-11","102":"-16","103":"-3","104":"-3","105":"-3","107":"-1","108":"-1","109":"18","110":"-18","111":"-18","112":"-18","113":"8","115":"16"},{"4":[1,2],"5":[1,2],"8":[1,1],"9":[1,1],"10":[1,1],"11":[1,1],"12":[1,1],"13":[1,1],"16":[0,2],"18":[1,1],"21":[1,1],"23":[1,1],"25":[1,1],"26":[1,1],"27":[1,1],"30":[0,2],"32":[1,1],"33":[1,1],"36":[0,2],"39":[1,1],"42":[1,1],"45":[1,1],"46":[1,1],"47":[1,1],"50":[0,2],"53":[2,0],"55":[0,2],"56":[0,2],"59":[1,1],"60":[1,0],"61":[0,1],"62":[0,1],"63":[1,0],"65":[0,1],"66":[0,1],"67":[0,1],"68":[1,0],"70":[0,1],"71":[0,1],"72":[0,1],"73":[1,0],"75":[0,1],"76":[0,1],"77":[0,1],"78":[0,1],"80":[1,0],"82":[1,0],"84":[1,0],"86":[1,0],"88":[1,0],"89":[1,0],"90":[1,0],"91":[1,0],"92":[1,0],"93":[1,0],"94":[1,0],"96":[1,0],"97":[1,0],"99":[1,0],"100":[1,0],"101":[1,0],"102":[1,0],"103":[0,1],"104":[0,1],"105":[1,0],"107":[0,1],"108":[0,1],"109":[0,1],"110":[0,1],"111":[0,1],"112":[0,1],"113":[1,0],"115":[1,0]},{}]']});var qKA=GA((fsi,JKA)=>{var zGr=GKA(),KGr=UKA(),XGr=jKA(),ZGr=WKA(),$Gr=function(){return{machines:ZGr,setter:KGr,updater:XGr,transformers:zGr}};JKA.exports=$Gr});var zKA=GA((Bsi,VKA)=>{var AYr=function(A,r,t,i){let o=r.cache.property,s=0,g=0;for(;g{eYr.exports=['[100,127,{"0":{"5":111,"43":113,"46":108,"49":109,"197":110,"214":112,"2699":114,"5231":53,"7484":117,"10900":116,"12549":81,"12553":84,"25000":103,"27138":118,"27985":67,"27986":69,"27987":71,"27990":73,"32628":1,"34487":105,"36526":119,"38042":65,"46237":92,"47454":94,"50426":101,"50691":96,"50694":120,"51014":89,"51297":97,"51568":102,"51677":45,"59576":104,"62229":106,"65899":75,"65900":79,"65904":77,"66992":107,"70947":121,"73207":122,"77479":123,"81702":124,"81714":63,"82584":125,"85516":126,"86112":50,"86837":127,"2070003":0},"1":{"47":2,"51":26,"51014":34,"87219":10,"87220":18,"2070003":0},"2":{"51014":3,"2070003":0},"3":{"47":4,"32628":41,"87219":6,"87220":8,"2070003":0},"4":{"32628":5,"2070003":0},"6":{"32628":7,"2070003":0},"8":{"32628":9,"2070003":0},"10":{"51014":11,"2070003":0},"11":{"47":12,"32628":42,"87219":14,"87220":16,"2070003":0},"12":{"32628":13,"2070003":0},"14":{"32628":15,"2070003":0},"16":{"32628":17,"2070003":0},"18":{"51014":19,"2070003":0},"19":{"47":20,"32628":43,"87219":22,"87220":24,"2070003":0},"20":{"32628":21,"2070003":0},"22":{"32628":23,"2070003":0},"24":{"32628":25,"2070003":0},"26":{"51014":27,"2070003":0},"27":{"47":28,"32628":44,"87219":30,"87220":32,"2070003":0},"28":{"32628":29,"2070003":0},"30":{"32628":31,"2070003":0},"32":{"32628":33,"2070003":0},"34":{"47":35,"32628":62,"87219":37,"87220":39,"2070003":0},"35":{"32628":36,"2070003":0},"37":{"32628":38,"2070003":0},"39":{"32628":40,"2070003":0},"45":{"12924":48,"41435":88,"52716":87,"78040":46,"2070003":98},"46":{"46776":47,"2070003":0},"48":{"37486":49,"2070003":0},"50":{"31190":51,"2070003":100},"51":{"1432":52,"2070003":0},"53":{"32791":54,"44355":58,"49203":56,"71336":60,"2070003":115},"54":{"5231":55,"2070003":0},"56":{"5231":57,"2070003":0},"58":{"5231":59,"2070003":0},"60":{"5231":61,"2070003":0},"63":{"78040":64,"2070003":0},"65":{"78040":66,"2070003":0},"67":{"78040":68,"2070003":0},"69":{"78040":70,"2070003":0},"71":{"78040":72,"2070003":0},"73":{"78040":74,"2070003":0},"75":{"53385":76,"2070003":0},"77":{"53385":78,"2070003":0},"79":{"53385":80,"2070003":0},"81":{"30075":82,"52424":83,"2070003":0},"84":{"30075":85,"52424":86,"2070003":0},"89":{"31190":91,"86214":90,"2070003":99},"92":{"51677":93,"2070003":0},"94":{"51677":95,"2070003":0}},{"5":"0","7":"0","9":"0","13":"0","15":"0","17":"0","21":"0","23":"0","25":"0","29":"0","31":"0","33":"0","36":"0","38":"0","40":"0","41":"0","42":"0","43":"0","44":"0","47":"0","49":"0","52":"0","55":"0","57":"0","59":"0","61":"0","62":"0","64":"1","66":"1","68":"1","70":"1","72":"1","74":"1","76":"1","78":"1","80":"1","82":"2","83":"2","85":"2","86":"2","87":"0","88":"0","90":"0","91":"0","93":"0","95":"0","96":"1","97":"1","98":"1","99":"1","100":"1","101":"1","102":"1","103":"1","104":"1","105":"1","106":"1","107":"1","108":"2","109":"2","110":"2","111":"2","112":"2","113":"2","114":"2","115":"2","116":"2","117":"2","118":"2","119":"2","120":"2","121":"2","122":"2","123":"2","124":"2","125":"2","126":"2","127":"2"},{},{}]']});var ZKA=GA((Qsi,XKA)=>{var rYr=zKA(),tYr=KKA(),iYr=function(){return{machines:tYr,setter:rYr}};XKA.exports=iYr});var AXA=GA((msi,$KA)=>{var nYr=function(A,r,t,i){let o=t.tkSize,s=0,g=0;for(;g=t.negationFlag?B-=A[m][2]:B+=A[m][2];r.sentences[E][3]=B/(p-g+1),s+=r.sentences[E][3],g=p+1}r.document[3]=s/r.numOfSentences};$KA.exports=nYr});var eXA=GA((Dsi,aYr)=>{aYr.exports=['[100,12059,{"0":{"41":12021,"42":12019,"44":12022,"45":12020,"53":907,"55":933,"88":911,"114":915,"121":919,"125":938,"137":925,"141":929,"146":12017,"147":12018,"148":11990,"149":12048,"150":11989,"151":12036,"152":12037,"153":12038,"154":12039,"155":12040,"156":12041,"157":12042,"158":12043,"159":12044,"160":11998,"161":12000,"162":12045,"163":12046,"164":12047,"165":11999,"166":12028,"167":12029,"168":12030,"169":12031,"170":12032,"171":12033,"172":12034,"173":12035,"174":12007,"175":12012,"176":12006,"177":12005,"178":12003,"179":12002,"180":12008,"181":12009,"182":12011,"183":12010,"184":12001,"185":12004,"186":11996,"187":11993,"188":11997,"189":11992,"190":12013,"191":12014,"192":12016,"193":12015,"194":11995,"195":11991,"196":11994,"198":12025,"199":12024,"200":12049,"201":12050,"202":12023,"203":12026,"204":12027,"205":12051,"206":12052,"207":12053,"208":12054,"209":12055,"210":12056,"211":12057,"212":12058,"213":12059,"219":3075,"258":9156,"259":9157,"262":9158,"264":4742,"267":4743,"319":9159,"321":9160,"322":9161,"340":6789,"351":4744,"352":9162,"353":4745,"354":4746,"357":9163,"365":9164,"366":9165,"395":1519,"403":7267,"409":3865,"413":8175,"414":9166,"435":4747,"436":4748,"437":4749,"445":9167,"454":9168,"457":5884,"460":7268,"466":7269,"480":8176,"482":8177,"484":7270,"516":2700,"519":9169,"521":9170,"535":9171,"536":9172,"538":9173,"539":9174,"545":9175,"551":7271,"594":5885,"596":6198,"598":6790,"599":9176,"602":9177,"603":9178,"604":6791,"683":7272,"701":9179,"702":6199,"703":1734,"704":6201,"705":7273,"706":9180,"707":7274,"709":9181,"710":9182,"713":9183,"715":6202,"718":6203,"737":9184,"738":9185,"739":9186,"740":9187,"742":6204,"743":9188,"744":7275,"759":7276,"760":7277,"764":6205,"769":7278,"779":9189,"780":7279,"781":9190,"782":9191,"784":9192,"785":9193,"788":6206,"791":7280,"821":6207,"851":5683,"853":8178,"854":8179,"855":8180,"857":9194,"858":9195,"862":9196,"863":9197,"865":9198,"866":9199,"871":6208,"881":6792,"883":6793,"928":6794,"935":7281,"945":6795,"956":5886,"964":5887,"969":6796,"994":5888,"995":5889,"1016":6797,"1039":7282,"1042":7283,"1055":9200,"1056":9201,"1059":9202,"1060":9203,"1070":9204,"1071":6798,"1115":2703,"1153":7284,"1163":9205,"1179":3431,"1205":1252,"1222":6799,"1227":7285,"1233":7286,"1255":7287,"1263":6800,"1270":7288,"1305":4492,"1307":7289,"1308":3295,"1309":6210,"1310":6211,"1332":8181,"1364":7290,"1374":6212,"1382":6213,"1392":6214,"1393":4344,"1394":6215,"1395":4493,"1398":4494,"1399":4495,"1400":5684,"1403":9206,"1404":9207,"1405":6216,"1407":6217,"1410":7291,"1411":9208,"1412":9209,"1413":5685,"1415":9210,"1417":5686,"1421":9211,"1422":9212,"1424":8182,"1440":9213,"1441":5687,"1448":9214,"1450":5688,"1453":4496,"1454":9215,"1455":7292,"1457":9216,"1458":4497,"1459":9217,"1461":6218,"1475":7293,"1477":7294,"1483":5211,"1521":9218,"1525":7295,"1526":5689,"1527":7296,"1528":5690,"1530":9219,"1539":9220,"1541":9221,"1547":9222,"1553":9223,"1555":8183,"1561":7297,"1562":7298,"1581":6219,"1583":7299,"1601":5404,"1695":7300,"1696":6220,"1710":8184,"1712":5212,"1720":9224,"1725":4498,"1726":4499,"1727":4500,"1728":6221,"1729":4501,"1730":3867,"1749":7301,"1751":4502,"1754":6222,"1766":5405,"1767":9225,"1769":5406,"1770":5407,"1772":5213,"1773":7302,"1775":9226,"1787":9227,"1796":9228,"1814":4404,"1850":8185,"1870":7303,"1904":7304,"1905":7305,"1907":7306,"1920":4750,"1921":3358,"1922":9229,"1923":9230,"1925":4752,"1926":6801,"1935":4405,"1936":9231,"1937":9232,"1939":4753,"1941":4754,"1945":8186,"1946":7307,"1956":8187,"1958":8188,"1963":7308,"1965":8189,"1979":5691,"1985":6802,"1986":5890,"1987":9233,"1988":8190,"1994":6803,"1995":5891,"1996":9234,"1997":8191,"2006":8192,"2013":9235,"2014":6223,"2015":6224,"2016":5214,"2017":7309,"2018":9236,"2021":9237,"2023":9238,"2078":6804,"2081":8193,"2091":8194,"2131":8195,"2173":7310,"2210":4406,"2211":4755,"2212":6805,"2214":8196,"2215":9239,"2216":9240,"2218":8197,"2221":5892,"2255":8198,"2305":4756,"2340":5893,"2347":8199,"2357":5894,"2373":6806,"2374":9241,"2393":6225,"2394":6226,"2407":9242,"2414":8200,"2450":1881,"2460":9243,"2461":9244,"2468":6227,"2489":9245,"2495":5215,"2574":9246,"2591":6228,"2601":9247,"2624":9248,"2633":8201,"2663":7311,"2681":5692,"2715":9249,"2752":7312,"2753":7313,"2770":8202,"2772":5895,"2775":4503,"2777":4504,"2781":9250,"2782":9251,"2784":9252,"2785":9253,"2812":9254,"2817":9255,"2836":8203,"2839":6807,"2840":6808,"2869":5693,"2870":7314,"2878":5216,"2886":7315,"2888":7316,"2912":6229,"2913":5217,"2917":4505,"2969":6809,"3000":4757,"3011":6810,"3018":4345,"3122":4758,"3126":9256,"3127":6230,"3128":9257,"3129":9258,"3131":6231,"3133":5694,"3151":6811,"3157":3304,"3182":6812,"3189":8204,"3244":8205,"3300":8206,"3316":8207,"3318":8208,"3345":7317,"3351":8209,"3355":5695,"3405":6813,"3419":8210,"3421":8211,"3453":6232,"3455":6233,"3461":4407,"3462":4759,"3464":9259,"3468":8212,"3469":8213,"3470":8214,"3531":4760,"3533":4761,"3538":5408,"3539":5896,"3560":5409,"3574":6234,"3579":7318,"3591":9260,"3621":8215,"3648":8216,"3666":4762,"3667":4408,"3668":4409,"3670":4763,"3672":9261,"3766":7319,"3783":9262,"3816":8217,"3838":6235,"3839":6236,"3902":9263,"3987":9264,"4021":6237,"4050":6238,"4051":6239,"4055":7320,"4060":3869,"4075":4764,"4132":7321,"4154":4765,"4167":3555,"4168":3872,"4169":4767,"4170":4768,"4173":3063,"4190":3874,"4197":7322,"4201":9265,"4203":6814,"4219":9266,"4226":8220,"4240":8221,"4271":7323,"4280":8222,"4281":9267,"4282":6815,"4287":7324,"4290":7325,"4292":7326,"4311":9268,"4312":9269,"4313":9270,"4314":9271,"4316":9272,"4317":9273,"4318":9274,"4319":9275,"4321":9276,"4374":4769,"4377":4770,"4378":8223,"4379":9277,"4398":9278,"4408":6240,"4409":9279,"4410":9280,"4413":9281,"4414":7327,"4415":8224,"4443":7328,"4451":7329,"4454":6241,"4455":5218,"4456":9282,"4458":9283,"4459":9284,"4460":7330,"4472":7331,"4477":7332,"4479":7333,"4502":7334,"4506":6242,"4507":5696,"4517":6243,"4520":9285,"4521":9286,"4522":9287,"4523":9288,"4524":9289,"4526":4506,"4527":4507,"4535":4410,"4536":4771,"4537":4772,"4538":4773,"4550":6244,"4551":6245,"4555":7335,"4556":6246,"4557":4508,"4558":4509,"4560":5697,"4562":9290,"4563":7336,"4569":4346,"4571":4510,"4572":4511,"4574":9291,"4575":4512,"4576":6247,"4598":7337,"4610":6248,"4612":7338,"4651":7339,"4690":7340,"4853":9292,"4855":4513,"4856":4514,"4947":7341,"4989":3876,"5014":8225,"5073":9293,"5074":9294,"5077":9295,"5092":9296,"5107":8226,"5151":8227,"5210":7342,"5220":2290,"5231":572,"5245":7343,"5248":7344,"5251":7345,"5253":7346,"5257":7347,"5260":7348,"5294":6249,"5305":7349,"5311":9297,"5312":4774,"5389":7350,"5399":7351,"5404":9298,"5407":8228,"5415":6816,"5418":6817,"5419":9299,"5420":8229,"5421":9300,"5424":8230,"5425":9301,"5442":7352,"5444":5698,"5448":7353,"5449":7354,"5460":7355,"5468":9302,"5469":9303,"5475":9304,"5476":5897,"5480":6250,"5503":3878,"5507":6251,"5514":7356,"5527":5219,"5535":7357,"5541":5898,"5543":5410,"5550":4347,"5551":6252,"5556":7358,"5579":8231,"5592":9305,"5596":9306,"5597":9307,"5598":9308,"5599":9309,"5600":9310,"5608":8232,"5644":6253,"5656":5411,"5673":1123,"5765":6818,"5767":6819,"5769":6820,"5778":5899,"5786":4775,"5790":9311,"5794":5412,"5801":7359,"5808":3880,"5809":9313,"5811":8233,"5812":9314,"5822":6821,"5862":6254,"5875":9315,"5877":9316,"5879":9317,"5880":9318,"5881":9319,"5882":6255,"5883":9320,"5884":9321,"5886":9322,"5895":8234,"5898":7360,"5915":9323,"5979":9324,"6016":5220,"6018":7361,"6069":9325,"6102":8235,"6109":6256,"6113":7362,"6115":7363,"6116":7364,"6197":7365,"6223":9326,"6224":9327,"6225":9328,"6226":9329,"6227":9330,"6228":9331,"6235":1731,"6244":4776,"6246":9332,"6247":7366,"6248":9333,"6249":7367,"6251":9334,"6262":4515,"6263":4516,"6265":4517,"6280":9335,"6281":7368,"6283":9336,"6285":9337,"6288":7369,"6290":7370,"6300":9338,"6301":9339,"6303":9340,"6310":9341,"6311":9342,"6313":9343,"6314":6257,"6319":1896,"6320":7371,"6324":6258,"6327":9344,"6332":6259,"6333":4411,"6346":8236,"6351":9345,"6352":9346,"6353":7372,"6411":8237,"6412":7373,"6433":7374,"6504":9347,"6521":8238,"6523":9348,"6540":9349,"6564":8239,"6572":5413,"6614":1021,"6615":9351,"6623":6822,"6625":9352,"6629":9353,"6633":8240,"6681":9354,"6705":9355,"6732":5414,"6750":1901,"6788":2178,"6789":6823,"6819":9356,"6820":9357,"6821":9358,"6822":9359,"6866":6824,"6868":6825,"6870":1524,"6882":9360,"6892":5221,"6900":6260,"6901":9361,"6905":9362,"6906":9363,"6907":5222,"6926":6261,"6954":9364,"6955":6826,"6963":9365,"6996":2183,"7013":9366,"7029":8241,"7074":6262,"7114":9367,"7151":5900,"7221":5415,"7232":5901,"7233":9368,"7295":8242,"7313":3559,"7316":9369,"7325":9370,"7329":9371,"7355":3361,"7357":3363,"7383":977,"7399":7375,"7404":7376,"7414":4518,"7415":5223,"7448":8243,"7451":2710,"7453":2715,"7455":6263,"7457":6264,"7459":9373,"7465":5224,"7466":7377,"7468":9374,"7472":5225,"7473":9375,"7474":9376,"7476":9377,"7496":5226,"7504":4777,"7568":3653,"7573":2296,"7610":9378,"7612":7378,"7632":8245,"7658":8246,"7659":4778,"7661":4519,"7662":4520,"7693":8247,"7715":7379,"7764":9379,"7765":9380,"7782":4779,"7783":4780,"7784":4781,"7785":4782,"7795":1906,"7796":8248,"7808":4521,"7813":7380,"7834":8249,"7853":6828,"7861":9381,"7862":9382,"7864":4522,"7867":4523,"7868":4524,"7869":4525,"7870":4526,"7875":6265,"7878":9383,"7879":9384,"7880":9385,"7881":4527,"7882":4348,"7883":4528,"7890":5227,"7934":5902,"7937":5416,"7939":9386,"7940":4783,"7941":5903,"7942":9387,"7943":9388,"7944":4784,"7949":8250,"7965":8251,"7966":8252,"7981":8253,"8001":2301,"8035":5904,"8038":5417,"8039":9389,"8040":9390,"8042":9391,"8043":9392,"8046":7381,"8049":1529,"8052":7383,"8081":8254,"8085":4529,"8113":9393,"8114":9394,"8190":7384,"8207":8255,"8220":4295,"8234":7385,"8276":6829,"8277":6830,"8317":7386,"8342":7387,"8351":1127,"8407":3888,"8534":8256,"8561":9396,"8563":9397,"8566":5418,"8582":9398,"8584":9399,"8586":9400,"8588":4412,"8591":6831,"8616":9401,"8632":1256,"8660":6832,"8671":9402,"8672":9403,"8674":9404,"8675":9405,"8690":3892,"8705":9406,"8706":6833,"8707":5419,"8708":6834,"8709":5420,"8710":9407,"8711":5421,"8715":9408,"8717":5422,"8718":9409,"8730":6266,"8738":8257,"8741":8258,"8792":6267,"8830":5423,"8831":5424,"8833":8259,"8845":9410,"8846":6268,"8849":9411,"8850":9412,"8851":9413,"8852":5699,"8856":3229,"8863":3894,"8873":5905,"8890":9415,"8891":5229,"8897":9416,"8898":4530,"8899":4531,"8902":5230,"8904":8260,"8906":8261,"8910":9417,"8920":9418,"8921":9419,"8925":9420,"8927":9421,"8931":5425,"8933":9422,"8935":9423,"8946":3896,"8952":5426,"8982":9424,"9006":608,"9018":3226,"9047":1691,"9079":3561,"9102":9425,"9110":8262,"9113":8263,"9114":8264,"9136":9426,"9158":8265,"9184":8266,"9190":4785,"9204":5700,"9216":5427,"9238":9427,"9242":9428,"9258":3899,"9260":3901,"9276":8269,"9287":9429,"9340":5428,"9368":5231,"9373":5232,"9381":6269,"9382":6835,"9386":3903,"9409":7388,"9438":7389,"9442":8270,"9443":6836,"9445":6837,"9446":9430,"9447":9431,"9449":9432,"9450":9433,"9501":7390,"9507":9434,"9510":9435,"9515":9436,"9518":7391,"9554":7392,"9556":5233,"9574":3905,"9575":8272,"9584":4413,"9586":9437,"9588":9438,"9589":4786,"9609":3660,"9646":3662,"9653":5234,"9654":6270,"9660":7393,"9662":6838,"9668":7394,"9672":7395,"9720":6271,"9743":8273,"9754":9439,"9755":9440,"9756":9441,"9757":9442,"9802":6272,"9807":8274,"9820":5235,"9846":5906,"9859":9443,"9876":3907,"9905":5907,"9927":6839,"9929":6840,"9933":9444,"9936":9445,"9937":9446,"9942":7396,"9945":6841,"9955":2316,"9963":2724,"9964":9448,"9965":9449,"9966":9450,"9983":1266,"9984":6843,"10001":9451,"10042":7397,"10096":9452,"10097":9453,"10100":9454,"10101":9455,"10121":7398,"10150":2321,"10156":9457,"10158":9458,"10161":5236,"10162":9459,"10164":6273,"10178":3667,"10197":9460,"10276":6844,"10277":9461,"10278":5908,"10279":4787,"10303":8275,"10310":8276,"10322":4414,"10326":9462,"10330":6845,"10342":4532,"10343":4533,"10355":3910,"10372":8277,"10386":8278,"10393":3443,"10402":5909,"10403":5910,"10408":9463,"10420":9464,"10463":3096,"10469":3913,"10513":6846,"10516":3915,"10527":7399,"10558":7400,"10583":3124,"10614":8279,"10617":9465,"10620":5701,"10624":7401,"10629":9466,"10637":5237,"10639":9467,"10653":9468,"10655":3231,"10672":7402,"10695":8280,"10717":7403,"10727":9469,"10728":9470,"10729":9471,"10731":9472,"10733":6847,"10754":9473,"10759":9474,"10768":6848,"10788":1776,"10803":2326,"10826":3917,"10883":6849,"10892":7404,"10949":7405,"10952":7406,"10987":1617,"10995":5911,"11032":5429,"11090":6850,"11093":8281,"11094":8282,"11095":8283,"11105":8284,"11109":5430,"11115":7407,"11117":7408,"11155":8285,"11156":8286,"11161":6274,"11167":6275,"11189":6851,"11306":5431,"11317":1033,"11337":7409,"11338":7410,"11350":6852,"11351":5432,"11354":3098,"11355":9475,"11357":9476,"11360":9477,"11366":8287,"11378":8288,"11379":5433,"11380":5434,"11488":2331,"11519":6853,"11525":9479,"11534":9480,"11535":9481,"11537":9482,"11538":3921,"11641":7411,"11665":7412,"11670":6276,"11674":8289,"11698":6277,"11721":9484,"11722":9485,"11723":6278,"11724":7413,"11725":7414,"11751":3923,"11830":4534,"11831":4350,"11833":4535,"11835":4536,"11836":7415,"11948":2336,"11988":9486,"11998":9487,"12000":9488,"12001":9489,"12002":9490,"12005":9491,"12009":9492,"12028":8290,"12038":4537,"12051":5435,"12110":6279,"12138":1385,"12146":1134,"12216":755,"12218":7416,"12239":3037,"12265":3126,"12272":5436,"12295":9493,"12301":8291,"12317":5912,"12318":5913,"12383":9494,"12385":8292,"12392":6854,"12400":7417,"12462":7418,"12479":6280,"12508":5437,"12543":7419,"12549":1622,"12575":7420,"12579":8293,"12633":1141,"12643":5914,"12670":9495,"12671":5238,"12673":9496,"12674":9497,"12675":9498,"12676":9499,"12691":6281,"12739":9500,"12740":9501,"12743":8294,"12744":9502,"12746":5438,"12804":7421,"12813":7422,"12924":9503,"12929":7423,"12932":6282,"12939":7424,"12996":4415,"12997":6855,"13009":4788,"13010":4789,"13013":7425,"13054":9504,"13087":6283,"13088":9505,"13090":9506,"13093":7426,"13096":9507,"13097":8295,"13103":9508,"13160":9509,"13161":9510,"13201":7427,"13209":8296,"13212":3563,"13216":5915,"13217":9511,"13220":9512,"13229":3007,"13230":5702,"13231":4538,"13241":9514,"13242":4351,"13244":7428,"13245":9515,"13246":9516,"13248":5440,"13265":6284,"13282":6285,"13288":5916,"13289":9517,"13291":9518,"13292":9519,"13332":8297,"13336":3234,"13337":9521,"13338":9522,"13339":9523,"13341":9524,"13342":9525,"13374":8298,"13377":5917,"13379":3060,"13380":9526,"13382":4539,"13383":4540,"13384":4541,"13387":7429,"13388":4542,"13392":4790,"13393":4791,"13394":4792,"13395":9527,"13396":5239,"13435":3925,"13470":9528,"13471":5703,"13472":9529,"13473":9530,"13482":5240,"13485":3673,"13488":3928,"13496":8299,"13502":4793,"13503":4794,"13505":3366,"13506":6286,"13511":3369,"13526":6287,"13528":6856,"13534":3566,"13550":5918,"13551":9531,"13552":9532,"13553":9533,"13554":7430,"13569":2346,"13575":9534,"13580":7431,"13599":8300,"13600":4795,"13635":5441,"13652":6857,"13653":3934,"13660":5241,"13670":3100,"13685":6288,"13688":7432,"13692":7433,"13718":6289,"13727":4796,"13729":4797,"13788":7434,"13793":9535,"13795":9536,"13800":9537,"13802":9538,"13812":4798,"13815":4799,"13917":6290,"13922":7435,"13924":8301,"13925":6291,"13926":6292,"13994":7436,"14049":5442,"14051":3128,"14203":6293,"14208":7437,"14275":7438,"14289":7439,"14299":7440,"14329":5443,"14374":7441,"14382":9539,"14392":9540,"14396":6858,"14399":8302,"14402":3130,"14433":9541,"14452":6859,"14467":1199,"14468":7442,"14470":9543,"14475":6294,"14484":1914,"14544":6295,"14605":7443,"14655":5444,"14662":7444,"14665":7445,"14685":5919,"14686":6296,"14688":6297,"14694":3677,"14725":9544,"14730":7446,"14745":7447,"14746":7448,"14773":9545,"14781":8303,"14869":7449,"14888":6860,"14890":8304,"14922":7450,"14962":9546,"14995":9547,"14996":9548,"14997":7451,"15001":6861,"15002":9549,"15018":8305,"15073":9550,"15076":9551,"15089":1203,"15105":7452,"15111":5704,"15112":6298,"15113":6299,"15114":5705,"15120":6300,"15121":5706,"15125":5707,"15189":3568,"15190":8306,"15193":8307,"15196":8308,"15230":9552,"15231":9553,"15232":9554,"15234":9555,"15285":8309,"15287":9556,"15288":9557,"15300":9558,"15301":9559,"15320":9560,"15367":7453,"15400":7454,"15461":3570,"15467":9561,"15491":7455,"15497":3447,"15505":8310,"15506":9562,"15509":7456,"15510":5242,"15513":6301,"15522":9563,"15523":4353,"15524":4543,"15525":4544,"15528":4545,"15531":9564,"15533":6302,"15534":9565,"15572":9566,"15573":4546,"15574":6303,"15575":9567,"15610":8311,"15616":4800,"15618":4801,"15631":3937,"15633":9569,"15635":9570,"15637":7457,"15643":9571,"15652":2355,"15661":5243,"15662":5244,"15663":5245,"15722":7458,"15724":7459,"15725":6304,"15758":4802,"15759":9572,"15761":4803,"15763":6305,"15764":7460,"15768":9573,"15782":5708,"15783":9574,"15784":5709,"15785":6306,"15786":7461,"15791":9575,"15803":4547,"15804":4548,"15805":4549,"15807":9576,"15809":9577,"15811":8312,"15812":8313,"15813":9578,"15814":9579,"15815":8314,"15816":9580,"15818":6307,"15821":7462,"15832":7463,"15840":6863,"15842":6864,"15845":5710,"15846":8315,"15848":8316,"15850":9581,"15856":7464,"15858":9582,"15860":9583,"15894":7465,"15898":7466,"15900":7467,"15930":4804,"15951":6308,"15955":3449,"15977":6865,"16001":6309,"16021":9584,"16051":6310,"16052":9585,"16053":9586,"16054":9587,"16055":9588,"16056":6311,"16057":6312,"16059":7468,"16098":6313,"16103":4342,"16109":9589,"16110":5445,"16111":9590,"16112":5446,"16113":9591,"16114":5447,"16115":9592,"16123":6866,"16127":7469,"16133":6314,"16138":3132,"16139":5448,"16159":3939,"16160":2731,"16190":7471,"16192":7472,"16220":4354,"16221":4550,"16225":7473,"16241":7474,"16245":5711,"16246":5712,"16261":9593,"16263":9594,"16264":9595,"16265":9596,"16270":6315,"16276":5713,"16293":7475,"16294":9597,"16295":9598,"16299":4805,"16320":6316,"16345":9599,"16346":4355,"16349":9600,"16350":7476,"16351":5246,"16362":5714,"16364":5715,"16365":5247,"16366":5716,"16434":4806,"16464":5920,"16468":7477,"16471":7478,"16474":6317,"16475":6318,"16480":6319,"16482":6320,"16483":7479,"16485":7480,"16486":6321,"16487":9601,"16515":5717,"16518":7481,"16534":6322,"16539":8318,"16542":4551,"16554":6323,"16566":9602,"16575":8319,"16585":4807,"16588":9603,"16606":9604,"16608":7482,"16626":6324,"16628":7483,"16664":5248,"16665":6325,"16677":9605,"16678":9606,"16679":9607,"16693":9608,"16694":9609,"16695":9610,"16696":9611,"16697":9612,"16698":9613,"16699":9614,"16700":9615,"16702":4808,"16719":2734,"16720":5921,"16721":5922,"16723":5923,"16724":9616,"16725":5449,"16726":9617,"16728":9618,"16730":9619,"16732":4356,"16733":4552,"16737":9620,"16739":4553,"16743":9621,"16802":5450,"16806":6326,"16810":7484,"16822":8320,"16875":4809,"16877":4810,"16878":4811,"16887":6327,"16894":9622,"16896":9623,"16897":9624,"16898":9625,"16905":5924,"16940":7485,"16950":7486,"16963":3941,"16986":5451,"16987":9626,"16993":7487,"16994":4554,"16995":9627,"17000":6328,"17041":2737,"17080":5718,"17087":5719,"17092":5720,"17093":5721,"17101":7488,"17108":8321,"17137":7489,"17139":7490,"17146":7491,"17156":7492,"17181":3681,"17219":5249,"17241":9629,"17272":8322,"17300":9630,"17313":4357,"17314":6330,"17320":5250,"17321":6331,"17322":7493,"17323":6332,"17349":5722,"17355":5723,"17356":5724,"17367":9631,"17368":9632,"17370":7494,"17372":9633,"17373":9634,"17377":9635,"17409":7495,"17433":7496,"17474":2360,"17490":9636,"17501":5251,"17548":1,"17602":5725,"17640":8323,"17659":8324,"17712":2192,"17718":7497,"17722":6333,"17723":1781,"17734":9637,"17735":9638,"17736":9639,"17737":9640,"17751":4555,"17754":9641,"17757":5726,"17761":6334,"17764":5727,"17774":5252,"17775":5253,"17789":3039,"17800":4812,"17811":9642,"17814":9643,"17862":6867,"17868":9644,"17877":5925,"17878":8325,"17881":8326,"17883":5926,"17888":6335,"17889":6868,"17894":7498,"17896":5254,"17917":6336,"17918":6337,"17933":9645,"17973":9646,"17981":5452,"17988":9647,"17994":5453,"18005":8327,"18026":5927,"18027":9648,"18028":9649,"18031":3946,"18062":3451,"18064":6339,"18065":6340,"18083":7499,"18085":5255,"18087":7500,"18093":5728,"18109":4813,"18110":6870,"18142":6871,"18152":9650,"18157":8328,"18176":9651,"18178":9652,"18179":9653,"18180":9654,"18181":3948,"18183":6872,"18196":9656,"18197":9657,"18198":9658,"18199":9659,"18200":8329,"18201":8330,"18209":4814,"18212":7501,"18216":8331,"18220":8332,"18224":8333,"18229":9660,"18256":9661,"18261":9662,"18262":9663,"18263":9664,"18264":9665,"18265":9666,"18267":9667,"18268":9668,"18269":9669,"18270":9670,"18271":9671,"18272":9672,"18278":8334,"18280":8335,"18288":3371,"18293":3236,"18305":8336,"18310":8337,"18311":8338,"18348":8339,"18393":8340,"18412":9673,"18444":9674,"18449":6873,"18450":1270,"18455":4815,"18456":5928,"18457":4816,"18501":9675,"18502":9676,"18504":9677,"18505":9678,"18521":9679,"18525":9680,"18636":5454,"18640":2742,"18694":5455,"18703":7502,"18705":7503,"18725":9681,"18740":3950,"18754":5729,"18756":9682,"18757":2367,"18783":8343,"18785":7504,"18797":5730,"18812":6341,"18830":9683,"18846":5456,"18866":3574,"18867":3952,"18895":7505,"18934":5929,"18959":3685,"18963":9685,"18964":9686,"18966":6342,"18986":9687,"18987":6343,"18990":2370,"19100":9689,"19101":4817,"19103":9690,"19270":6874,"19306":6875,"19307":9691,"19308":9692,"19309":4818,"19320":3041,"19324":5930,"19325":9694,"19328":5931,"19329":9695,"19355":6344,"19370":5256,"19375":3576,"19376":5932,"19377":9697,"19387":5457,"19398":7506,"19414":8345,"19439":6876,"19441":1784,"19442":6877,"19443":8346,"19444":5458,"19447":9698,"19448":5459,"19449":5933,"19451":9699,"19453":7507,"19479":6345,"19491":8347,"19492":6878,"19493":8348,"19521":8349,"19523":8350,"19559":7508,"19560":4819,"19566":9700,"19589":1919,"19594":9702,"19603":9703,"19605":9704,"19610":590,"19613":9705,"19614":5934,"19633":6346,"19636":9706,"19640":3957,"19647":9708,"19676":3688,"19679":8351,"19688":5731,"19689":5732,"19693":7509,"19700":9709,"19774":5460,"19775":5461,"19781":9710,"19782":9711,"19785":5462,"19786":9712,"19788":9713,"19789":9714,"19790":6880,"19802":4358,"19815":9715,"19816":9716,"19817":6881,"19825":5733,"19858":9717,"19861":3454,"19873":7510,"19954":6347,"19963":5257,"19964":6348,"19965":5734,"19968":5735,"20000":6882,"20014":6349,"20017":9718,"20027":6350,"20064":5463,"20072":3964,"20078":9719,"20079":4820,"20089":5464,"20093":9720,"20098":9721,"20104":8353,"20111":9722,"20112":9723,"20118":9724,"20120":8354,"20127":9725,"20129":6351,"20130":6352,"20136":9726,"20142":9727,"20148":9729,"20149":3578,"20150":4821,"20151":9730,"20161":7511,"20163":7512,"20170":7513,"20207":9731,"20209":9732,"20210":9733,"20212":9734,"20216":9735,"20225":5736,"20228":9736,"20253":9737,"20254":9738,"20256":9739,"20275":9740,"20276":9741,"20277":9742,"20278":9743,"20309":4822,"20310":9744,"20312":4823,"20313":9745,"20315":9746,"20329":9747,"20330":9748,"20335":9749,"20345":8355,"20353":7514,"20366":6353,"20369":9750,"20370":4556,"20372":5258,"20373":9751,"20374":9752,"20375":9753,"20400":1924,"20401":7515,"20402":5259,"20421":5465,"20431":7516,"20445":9754,"20446":9755,"20448":9756,"20450":9757,"20462":5935,"20464":4824,"20524":6354,"20561":8356,"20582":9758,"20584":3302,"20590":4825,"20595":4826,"20596":9759,"20597":9760,"20598":9761,"20601":5466,"20657":7517,"20669":9762,"20670":9763,"20671":9764,"20672":9765,"20673":9766,"20674":9767,"20676":5467,"20678":5468,"20679":5469,"20704":9768,"20707":9769,"20718":9770,"20719":3966,"20743":9771,"20744":9772,"20779":5737,"20780":4359,"20781":5738,"20791":3968,"20796":3971,"20808":8357,"20821":4827,"20822":4828,"20823":9773,"20824":9774,"20825":9775,"20826":9776,"20845":9777,"20846":9781,"20847":9782,"20848":9778,"20850":9779,"20852":9780,"20872":8358,"20875":8359,"20888":4418,"20890":4829,"20892":4830,"20894":4419,"20899":9783,"20922":9784,"20923":9785,"20926":9786,"20928":5936,"20942":9787,"20945":7518,"20946":5937,"20947":9788,"20948":9789,"20949":9790,"20950":9791,"20951":5938,"20979":8360,"21013":6355,"21029":5470,"21035":7519,"21046":6883,"21053":7520,"21054":6356,"21055":7521,"21057":6357,"21085":6358,"21089":5260,"21091":9792,"21092":9793,"21095":9794,"21105":4831,"21107":4420,"21110":9795,"21111":4832,"21112":4833,"21113":9796,"21115":6884,"21117":3580,"21118":9797,"21120":5939,"21121":5471,"21122":5940,"21124":4834,"21125":4835,"21126":5941,"21127":4836,"21129":4837,"21130":4838,"21134":5472,"21141":4839,"21142":4840,"21143":4841,"21144":4842,"21146":8361,"21157":7522,"21181":9798,"21183":9799,"21185":9800,"21186":9801,"21187":6885,"21188":8362,"21191":9802,"21192":5942,"21194":5943,"21207":7523,"21208":9803,"21213":6359,"21216":9804,"21217":9805,"21235":9806,"21241":9807,"21242":9808,"21243":9809,"21244":9810,"21247":7524,"21256":9811,"21266":9812,"21270":4843,"21272":4844,"21273":4845,"21274":5944,"21296":9813,"21297":9814,"21303":9815,"21311":6886,"21312":8363,"21335":9816,"21336":9817,"21338":9818,"21339":9819,"21340":9820,"21364":1277,"21403":4557,"21410":9821,"21411":9822,"21428":1927,"21434":5739,"21447":5740,"21482":7525,"21543":9823,"21546":7526,"21598":8364,"21624":8365,"21649":9824,"21654":5473,"21690":7527,"21714":9825,"21716":9826,"21767":9827,"21769":5474,"21770":6887,"21771":4847,"21772":9828,"21793":7528,"21794":7529,"21795":7530,"21832":7531,"21834":9829,"21850":8366,"21864":9830,"21870":6360,"21874":9831,"21917":6888,"21937":6889,"21942":6890,"21947":4848,"22001":7532,"22002":5261,"22010":8367,"22017":9832,"22028":4849,"22049":4850,"22051":8368,"22053":7533,"22056":9833,"22058":9834,"22059":9835,"22062":3974,"22066":9837,"22067":9838,"22072":9839,"22073":7534,"22079":8369,"22080":9840,"22081":5475,"22091":9841,"22092":5476,"22093":5477,"22097":9842,"22111":9843,"22113":9844,"22115":9845,"22116":9846,"22117":4851,"22119":9847,"22121":9848,"22122":9849,"22123":9850,"22124":5945,"22125":4422,"22126":9851,"22127":4852,"22128":9852,"22129":9853,"22130":9854,"22131":6891,"22141":8370,"22150":9855,"22151":9856,"22152":9857,"22155":7535,"22169":9858,"22187":9859,"22188":9860,"22189":9861,"22190":9862,"22195":7536,"22196":7537,"22198":9863,"22211":7538,"22250":4853,"22252":4854,"22253":9864,"22257":4855,"22262":8371,"22264":4856,"22265":4857,"22273":4858,"22275":4859,"22276":9865,"22278":9866,"22288":5478,"22290":6892,"22298":9867,"22303":4860,"22304":9868,"22305":4861,"22307":4423,"22311":6893,"22313":8372,"22315":7539,"22322":8373,"22325":4862,"22336":7540,"22338":7541,"22339":6361,"22340":9869,"22341":9870,"22342":9871,"22344":7542,"22346":9872,"22359":4863,"22360":8374,"22365":9873,"22367":9874,"22400":8375,"22407":5946,"22410":5479,"22411":8376,"22412":8377,"22418":5480,"22428":6894,"22429":4864,"22430":4424,"22435":8378,"22439":9875,"22440":9876,"22441":9877,"22442":9878,"22443":4425,"22444":4865,"22445":4866,"22446":4867,"22447":4868,"22455":5481,"22457":5482,"22458":9879,"22471":9880,"22474":5483,"22475":6895,"22477":4869,"22478":4870,"22481":5484,"22482":8379,"22495":6362,"22497":9881,"22502":4871,"22503":4872,"22504":4873,"22512":7543,"22516":5947,"22528":6896,"22539":7544,"22541":9882,"22543":6897,"22552":4874,"22553":4875,"22554":5485,"22555":9883,"22567":8380,"22571":4876,"22578":4426,"22579":8381,"22586":9884,"22597":6898,"22601":6899,"22602":9885,"22603":4877,"22606":9886,"22612":9887,"22616":9888,"22622":9889,"22623":9890,"22626":9891,"22627":9892,"22663":4878,"22664":4879,"22665":4880,"22666":4881,"22676":4882,"22677":4883,"22678":4884,"22679":4885,"22680":4886,"22698":5948,"22699":6900,"22711":9893,"22712":9894,"22713":9895,"22714":9896,"22716":6901,"22720":9897,"22721":4887,"22724":4888,"22726":5486,"22727":9898,"22728":9899,"22730":9900,"22732":8382,"22734":8383,"22737":6902,"22738":9901,"22746":9902,"22747":9903,"22748":3976,"22749":9905,"22750":9906,"22751":9907,"22753":9908,"22757":9909,"22759":8384,"22769":6903,"22771":2748,"22783":6904,"22800":8385,"22801":5487,"22830":8386,"22838":5488,"22847":4889,"22848":4890,"22879":7545,"22883":9910,"22885":9911,"22886":9912,"22890":9913,"22891":9914,"22892":9915,"22895":9916,"22897":9917,"22902":4891,"22903":4427,"22904":9918,"22905":4892,"22906":4893,"22907":8387,"22908":4894,"22909":4895,"22910":8388,"22926":9919,"22927":9920,"22928":7546,"22929":8389,"22932":5949,"22935":4428,"22937":4896,"22939":9921,"22945":6905,"22957":9922,"22995":3979,"22999":6363,"23006":5741,"23035":6906,"23063":8390,"23082":1683,"23083":7547,"23090":6364,"23137":9923,"23139":9924,"23160":2197,"23192":6907,"23216":4897,"23217":4898,"23218":4899,"23241":4900,"23242":4901,"23243":4902,"23244":4903,"23249":5489,"23259":3981,"23302":7548,"23303":9925,"23304":9926,"23305":9927,"23306":9928,"23346":6908,"23347":9929,"23389":6909,"23409":6365,"23441":2377,"23454":9930,"23455":9931,"23457":9932,"23460":9933,"23463":9934,"23464":9935,"23465":9936,"23479":9937,"23500":6910,"23509":621,"23512":4904,"23515":9938,"23522":4905,"23523":4906,"23545":9939,"23551":6911,"23553":6912,"23554":6913,"23600":4430,"23607":6914,"23633":3375,"23635":9941,"23652":9942,"23656":9943,"23706":10968,"23712":8391,"23727":4907,"23728":4908,"23729":4909,"23732":9944,"23737":9945,"23744":4558,"23749":9946,"23753":4910,"23758":4911,"23760":3377,"23770":7549,"23777":3379,"23801":7550,"23806":6366,"23843":7551,"23860":9947,"23861":9948,"23870":9949,"23888":9950,"23889":9951,"23891":9952,"23904":9953,"23905":6915,"23928":845,"23967":9955,"23975":7552,"23990":7553,"23997":9956,"24026":5262,"24033":2753,"24042":9958,"24043":9959,"24047":5950,"24061":9960,"24063":9961,"24070":9962,"24075":5490,"24076":5491,"24103":6916,"24104":9963,"24105":9964,"24127":9965,"24150":1791,"24168":5951,"24215":9966,"24241":9967,"24252":8392,"24253":6918,"24257":5952,"24263":4912,"24264":4913,"24279":8393,"24291":9968,"24293":4559,"24323":6367,"24325":5742,"24364":4360,"24387":4361,"24391":6368,"24420":8394,"24422":5743,"24485":7554,"24532":5744,"24560":7555,"24581":8395,"24591":4914,"24595":6369,"24600":7556,"24602":6370,"24604":7557,"24629":7558,"24638":6371,"24654":9969,"24659":9970,"24669":9971,"24670":9972,"24671":9973,"24672":7559,"24677":7560,"24679":7561,"24698":6372,"24700":6373,"24701":6374,"24704":3322,"24722":9974,"24773":5492,"24830":6375,"24836":4560,"24847":5745,"24848":7562,"24850":6376,"24851":7563,"24855":4561,"24856":4362,"24860":4562,"24861":4563,"24867":7564,"24954":5263,"24956":9975,"24957":9976,"24960":8396,"24962":6919,"24967":6920,"24999":5746,"25011":7565,"25050":7566,"25102":7567,"25127":9977,"25128":4431,"25129":9978,"25130":4432,"25132":9979,"25150":9980,"25156":9981,"25168":4564,"25175":8397,"25176":7568,"25184":9982,"25223":7569,"25229":9983,"25279":3985,"25287":4565,"25293":7570,"25295":7571,"25345":9984,"25348":9985,"25355":9986,"25357":2758,"25360":5953,"25378":7572,"25381":6377,"25396":4566,"25398":4567,"25399":4568,"25440":7573,"25442":9988,"25444":4569,"25446":4570,"25471":5747,"25476":7574,"25484":4571,"25485":4572,"25486":4573,"25487":9989,"25488":4574,"25489":4575,"25512":6378,"25517":6379,"25528":6921,"25530":8398,"25534":7575,"25535":5748,"25550":7576,"25605":9990,"25606":9991,"25607":9992,"25610":9993,"25659":9994,"25660":9995,"25661":9996,"25677":8399,"25700":9997,"25704":9998,"25705":5749,"25735":9999,"25737":7577,"25745":7578,"25751":7579,"25760":6922,"25761":6923,"25763":4363,"25764":5750,"25766":7580,"25767":10000,"25769":10001,"25771":10002,"25783":10003,"25784":10004,"25785":10005,"25787":10006,"25795":5751,"25797":7581,"25799":8400,"25809":10007,"25820":7582,"25829":5493,"25830":4915,"25831":4916,"25832":10008,"25833":10009,"25834":10010,"25835":5752,"25863":10011,"25864":10012,"25866":10013,"25870":8401,"25878":10014,"25880":10015,"25893":8402,"25927":10016,"25932":6380,"25934":6381,"25939":10017,"25941":4576,"25942":4577,"25944":4578,"25954":4579,"25956":4580,"25957":4581,"25964":6382,"25971":10018,"26005":4582,"26009":4583,"26036":10019,"26060":7583,"26072":10020,"26073":10021,"26095":10022,"26096":10023,"26099":6383,"26189":6384,"26196":7584,"26197":7585,"26223":7586,"26310":1933,"26311":6385,"26393":6386,"26442":7587,"26478":5753,"26496":10024,"26499":10025,"26500":6387,"26501":10026,"26503":5954,"26510":7588,"26525":8403,"26534":6924,"26553":10027,"26557":10028,"26558":10029,"26610":5264,"26638":8404,"26656":4584,"26657":5265,"26668":7589,"26669":6388,"26675":4585,"26729":3989,"26759":6389,"26760":7590,"26828":6390,"26829":5266,"26830":6391,"26831":5267,"26832":6392,"26833":6393,"26837":7591,"26850":5754,"26871":6394,"26873":6395,"26874":7592,"26876":4586,"26877":4587,"26878":4588,"26879":4589,"26915":10030,"26916":10031,"26917":10032,"26918":10033,"26919":10034,"26931":6396,"26964":8405,"26990":10035,"26991":10037,"26992":10036,"27001":3077,"27011":10038,"27016":7593,"27017":7594,"27020":1628,"27032":7595,"27062":4918,"27063":10039,"27064":10040,"27065":10041,"27067":6397,"27074":10042,"27075":10043,"27077":10044,"27078":10045,"27082":5755,"27105":10046,"27106":4919,"27107":8406,"27108":10047,"27109":4920,"27111":4921,"27129":3691,"27131":10048,"27132":4590,"27141":5955,"27156":7596,"27174":10049,"27175":10050,"27177":10051,"27179":4591,"27186":10052,"27187":10053,"27190":10054,"27191":10055,"27200":8407,"27203":6925,"27215":8408,"27216":10056,"27217":6926,"27218":5268,"27231":10057,"27238":4922,"27239":4923,"27242":6398,"27245":6927,"27247":8409,"27270":10058,"27299":10059,"27303":7597,"27316":4592,"27317":4593,"27318":10060,"27319":4364,"27320":4594,"27323":7598,"27324":7599,"27373":5269,"27374":10061,"27375":10062,"27376":10063,"27402":7600,"27412":10064,"27417":10065,"27425":6399,"27434":2304,"27441":2310,"27443":2313,"27448":2307,"27451":6400,"27460":7601,"27463":10066,"27464":10067,"27465":10068,"27466":10069,"27482":3310,"27485":5756,"27496":4595,"27498":10070,"27515":6401,"27525":6402,"27530":7602,"27532":7603,"27534":6403,"27537":10071,"27541":10072,"27543":10073,"27545":10074,"27546":10075,"27547":10076,"27566":5757,"27572":10077,"27573":10078,"27574":10079,"27575":10080,"27590":3312,"27594":6404,"27620":10081,"27627":7604,"27643":10082,"27648":10083,"27663":7605,"27706":7606,"27708":7607,"27710":7608,"27747":7609,"27771":7610,"27777":3071,"27781":8410,"27782":10084,"27795":7611,"27803":4596,"27804":10085,"27814":4597,"27815":10086,"27816":4598,"27817":4599,"27842":8411,"27854":5494,"27871":5270,"27887":10087,"27888":10088,"27890":1938,"27891":7612,"27895":8412,"27899":6405,"27916":7613,"27924":6928,"27947":7614,"27949":7615,"27955":10089,"27975":10090,"27978":10091,"27980":10092,"27985":1389,"27986":10094,"27987":10095,"27990":10096,"27991":10097,"27992":10098,"27993":7616,"27996":6929,"27998":10099,"28002":634,"28009":10101,"28015":10102,"28016":6406,"28021":6930,"28022":6931,"28025":10103,"28027":10104,"28028":10105,"28042":148,"28049":6932,"28055":170,"28058":5956,"28061":10107,"28063":10108,"28064":8413,"28069":10109,"28072":6933,"28081":7617,"28082":5271,"28089":7618,"28095":7619,"28099":6934,"28101":7620,"28104":5272,"28108":10110,"28121":6407,"28122":3462,"28139":4600,"28149":8414,"28156":10111,"28160":8415,"28167":1536,"28173":10112,"28174":6408,"28176":8416,"28227":4601,"28228":7621,"28229":10113,"28230":4602,"28232":4603,"28237":10114,"28240":10115,"28250":3317,"28268":10116,"28272":10117,"28273":10118,"28282":5495,"28288":7622,"28290":7623,"28296":10119,"28297":10120,"28298":10121,"28299":10122,"28344":4924,"28358":4365,"28359":3694,"28361":4604,"28362":10123,"28364":10124,"28365":10125,"28366":10126,"28368":10127,"28369":4367,"28370":3696,"28372":4605,"28373":10128,"28375":10129,"28376":10130,"28377":10131,"28379":10132,"28400":4433,"28402":4434,"28403":10133,"28404":4925,"28405":10134,"28406":10135,"28408":10136,"28410":4926,"28413":6409,"28425":8417,"28440":7624,"28463":6410,"28467":3134,"28488":10137,"28490":5957,"28501":768,"28503":10138,"28504":6411,"28510":6935,"28511":5958,"28512":6936,"28527":5758,"28529":7625,"28530":6412,"28533":126,"28552":10139,"28555":10140,"28615":5959,"28620":5960,"28638":8419,"28639":5961,"28661":6413,"28670":5759,"28681":7626,"28682":10141,"28684":10142,"28686":7627,"28691":5760,"28698":5761,"28700":7628,"28712":5273,"28721":5496,"28722":8420,"28732":5962,"28738":7629,"28752":10143,"28753":5762,"28771":8421,"28827":6937,"28828":6938,"28865":4927,"28884":8422,"28888":5963,"28902":3464,"28907":10144,"28910":10145,"28934":8423,"28948":5497,"28970":8424,"28975":8425,"28988":7630,"29004":10153,"29009":4928,"29017":8426,"29052":1541,"29053":8427,"29059":10147,"29060":6414,"29062":10148,"29089":8428,"29090":8429,"29120":10149,"29127":8430,"29137":10150,"29168":10151,"29181":1428,"29216":7631,"29234":6415,"29235":6939,"29238":8431,"29241":10152,"29244":6416,"29246":6417,"29248":5763,"29249":2384,"29263":1380,"29309":8432,"29312":5498,"29316":10154,"29382":6940,"29433":5764,"29481":6941,"29482":5499,"29483":10155,"29484":10156,"29486":10157,"29494":2207,"29525":10158,"29548":3996,"29574":5964,"29583":8433,"29585":6942,"29600":1295,"29610":7632,"29655":3241,"29675":10159,"29682":10160,"29721":6418,"29724":5765,"29726":8434,"29727":8435,"29747":10161,"29748":8436,"29784":5965,"29830":8437,"29831":10162,"29845":694,"29870":1152,"29878":6943,"29889":10163,"29900":5500,"29904":5966,"29928":4929,"29938":7633,"29939":7634,"29944":7635,"29986":3103,"29994":4606,"30006":10164,"30007":10165,"30012":8438,"30014":10166,"30015":5501,"30018":10167,"30034":8439,"30062":8440,"30075":1303,"30091":10168,"30093":10169,"30094":6944,"30098":10170,"30102":5967,"30118":4930,"30130":10171,"30131":10172,"30136":8441,"30142":10173,"30189":6419,"30254":1633,"30255":10175,"30259":10176,"30264":10177,"30269":10178,"30275":10179,"30276":10180,"30283":4931,"30285":4932,"30309":6420,"30356":5502,"30392":5274,"30395":4607,"30396":5275,"30397":10181,"30404":1948,"30417":8442,"30423":8443,"30429":6421,"30438":1636,"30442":6945,"30444":6946,"30461":1105,"30496":6422,"30512":8444,"30525":5968,"30561":6947,"30563":6948,"30577":10182,"30603":10183,"30604":10184,"30605":10185,"30606":10186,"30607":10187,"30608":5969,"30609":6949,"30613":8445,"30614":6950,"30617":3999,"30629":10189,"30630":7636,"30631":7637,"30636":10190,"30637":10191,"30641":7638,"30669":7639,"30671":3244,"30689":8446,"30696":10192,"30709":2395,"30720":4933,"30753":10194,"30758":4608,"30759":4370,"30761":10195,"30771":4934,"30772":4935,"30773":4436,"30774":4936,"30775":4937,"30777":4938,"30782":5503,"30791":10196,"30810":6423,"30825":6951,"30875":8447,"30883":5504,"30890":1156,"30902":5505,"30903":5970,"30904":8448,"30908":6952,"30936":6424,"30938":10197,"30946":6953,"30953":10198,"30954":4939,"30955":10199,"30956":4940,"30957":10200,"30977":10201,"30980":4001,"30981":10203,"30982":10204,"30983":10205,"30984":10206,"30985":10207,"30986":10208,"30987":3047,"30989":10210,"30993":10211,"30996":8449,"31005":8450,"31012":8451,"31018":10212,"31020":10213,"31027":4609,"31028":4610,"31029":10214,"31031":10215,"31032":10216,"31036":7640,"31040":2400,"31046":3707,"31048":8452,"31072":10217,"31074":10218,"31105":10219,"31106":10220,"31125":6954,"31130":10221,"31138":10222,"31143":4003,"31161":4941,"31162":4942,"31163":5971,"31190":5276,"31202":4943,"31206":8453,"31209":7641,"31216":6955,"31233":10224,"31238":8454,"31295":10225,"31300":10226,"31309":5277,"31312":3315,"31313":10228,"31315":6425,"31317":7642,"31318":10229,"31319":8455,"31320":5766,"31321":10230,"31355":4437,"31357":6426,"31358":10231,"31359":10232,"31362":6956,"31375":4944,"31399":7643,"31406":7644,"31431":3044,"31466":5506,"31480":8456,"31483":8457,"31491":8458,"31522":7645,"31533":10233,"31559":6957,"31682":6958,"31687":8459,"31699":5507,"31718":8460,"31719":8461,"31725":8462,"31726":4371,"31729":4611,"31795":10234,"31800":8463,"31806":7646,"31845":3585,"31866":10235,"31867":10236,"31880":10237,"31920":7647,"31922":6427,"31923":6428,"31967":4006,"32015":7648,"32019":7649,"32053":603,"32055":7650,"32056":6429,"32059":7651,"32073":6959,"32091":10238,"32105":5508,"32133":5972,"32146":8464,"32148":3710,"32149":5278,"32184":2415,"32187":6960,"32201":7652,"32267":7653,"32283":4372,"32284":4373,"32285":4612,"32290":4613,"32297":4614,"32298":4615,"32299":4616,"32302":7654,"32311":10240,"32316":7655,"32317":10241,"32370":10242,"32371":4617,"32372":4618,"32373":4619,"32381":8465,"32395":7656,"32408":7657,"32411":7658,"32413":7659,"32417":5509,"32419":5510,"32463":4945,"32464":4946,"32467":4947,"32468":4948,"32469":4949,"32470":4438,"32480":5279,"32482":10243,"32487":8466,"32497":8467,"32501":7660,"32507":3713,"32514":8468,"32516":7661,"32539":4950,"32628":2764,"32661":8469,"32666":1641,"32670":10245,"32675":5511,"32676":5973,"32687":7663,"32700":8470,"32713":10246,"32719":4374,"32791":707,"32796":6430,"32799":10247,"32801":10248,"32802":4620,"32805":10249,"32807":1700,"32809":2769,"32813":10250,"32817":10251,"32858":5280,"32879":5512,"32917":6961,"32922":6431,"32943":10260,"32950":10252,"32951":7664,"32953":6432,"32954":8471,"32956":6962,"32964":4376,"32965":7665,"32966":6433,"32974":2426,"32998":8472,"32999":8473,"33033":6434,"33043":7666,"33070":8474,"33076":10253,"33077":10254,"33082":10255,"33084":10256,"33144":4621,"33146":4622,"33150":10257,"33153":4623,"33154":5281,"33157":8475,"33159":4624,"33163":5282,"33166":10258,"33168":4951,"33203":10259,"33233":10261,"33235":7667,"33236":6435,"33237":7668,"33244":10262,"33249":10263,"33252":984,"33265":8476,"33285":10264,"33286":10265,"33287":10266,"33288":10267,"33293":10268,"33294":10269,"33296":10270,"33297":10271,"33298":10272,"33317":10273,"33333":8477,"33335":1465,"33338":4439,"33339":10274,"33340":8478,"33342":4953,"33343":4440,"33357":4441,"33366":6963,"33368":8479,"33383":8480,"33388":7669,"33395":8481,"33412":6964,"33417":8482,"33418":10275,"33420":10276,"33421":10277,"33452":6436,"33461":3138,"33466":5974,"33479":5975,"33484":5976,"33489":5283,"33534":7670,"33540":10279,"33548":10280,"33549":10281,"33562":4954,"33570":8483,"33573":6965,"33591":5977,"33595":8484,"33615":8485,"33620":10282,"33629":5767,"33655":8486,"33656":8487,"33694":6437,"33700":3140,"33704":5513,"33707":3143,"33727":10283,"33728":10284,"33758":3383,"33805":7671,"33815":4625,"33890":8488,"33919":10286,"33932":2431,"33934":6438,"33958":10287,"34068":8489,"34103":10288,"34104":10289,"34105":10290,"34111":361,"34112":10292,"34163":6439,"34167":5768,"34169":5284,"34170":7672,"34173":1798,"34176":8490,"34190":10293,"34197":7673,"34198":6440,"34270":7674,"34282":858,"34296":7675,"34349":10294,"34352":2436,"34362":6441,"34380":5769,"34390":2781,"34391":8491,"34411":6966,"34415":10295,"34416":10296,"34423":8492,"34430":10297,"34431":4626,"34432":4627,"34433":4377,"34443":4957,"34444":4958,"34446":10298,"34447":10299,"34448":4959,"34460":724,"34475":5978,"34480":10301,"34482":8493,"34491":6967,"34499":10302,"34521":10303,"34523":10304,"34524":5514,"34527":10305,"34532":5770,"34535":5771,"34536":10307,"34540":5772,"34545":6442,"34548":5773,"34552":10306,"34553":10308,"34574":4960,"34578":8494,"34580":4961,"34582":6968,"34584":10309,"34585":10310,"34586":10311,"34624":4962,"34649":4020,"34653":4963,"34654":5979,"34659":10312,"34660":10313,"34661":10314,"34663":10315,"34668":4964,"34688":10316,"34689":10317,"34690":10318,"34691":10319,"34704":2790,"34723":10320,"34769":5980,"34771":8495,"34792":4286,"34806":10321,"34880":5774,"34882":3587,"34884":6443,"34885":6444,"34886":6445,"34889":6446,"34890":6447,"34899":2216,"34906":1959,"34907":4965,"34909":4966,"34911":4967,"34912":5981,"34913":8496,"34914":4968,"34915":4628,"34917":6448,"34918":6449,"34928":10322,"34931":4969,"34936":4970,"34937":4971,"34940":7677,"34942":7678,"34963":1705,"34964":10324,"34976":4023,"34977":4972,"34978":4973,"35031":5775,"35034":5776,"35035":7679,"35038":7680,"35059":10325,"35070":8497,"35112":1646,"35126":5516,"35129":5982,"35140":6450,"35143":10326,"35147":6451,"35148":7681,"35150":10327,"35151":10328,"35156":10329,"35276":8498,"35283":4025,"35312":8499,"35322":4302,"35411":7682,"35416":10330,"35417":10331,"35418":10332,"35423":5285,"35427":4027,"35448":10333,"35450":10334,"35474":8500,"35476":8501,"35485":8502,"35535":5983,"35578":10335,"35582":10336,"35585":4442,"35589":10337,"35590":10338,"35615":1470,"35621":5286,"35622":5287,"35624":1433,"35636":10339,"35641":3306,"35668":4629,"35670":4630,"35694":10340,"35711":10341,"35762":4299,"35768":8503,"35792":6452,"35798":7683,"35800":2793,"35845":10342,"35950":2227,"35987":2449,"35999":10344,"36003":6453,"36004":8504,"36013":7684,"36028":10345,"36039":6454,"36041":10346,"36042":10347,"36066":7685,"36129":6455,"36141":10348,"36143":7686,"36152":7687,"36165":8505,"36166":8506,"36169":8507,"36171":6456,"36172":4378,"36173":6457,"36174":6458,"36178":5288,"36180":5777,"36181":6459,"36183":6460,"36184":5778,"36185":6461,"36186":5779,"36187":10349,"36188":10350,"36192":8508,"36195":8509,"36219":8510,"36220":10351,"36221":10352,"36243":4379,"36245":4631,"36246":10353,"36250":4443,"36251":4974,"36252":10354,"36254":10355,"36255":3018,"36307":4975,"36308":4976,"36310":4977,"36313":4444,"36314":4978,"36316":4979,"36317":4980,"36318":4981,"36323":1475,"36325":3732,"36363":7688,"36364":7689,"36378":6462,"36379":6463,"36387":7690,"36391":10357,"36403":10358,"36404":4983,"36406":4445,"36410":1037,"36423":5984,"36451":773,"36556":8511,"36580":10359,"36590":6969,"36591":6970,"36593":4984,"36595":4985,"36596":4986,"36598":4987,"36599":10360,"36600":7691,"36606":10361,"36615":8512,"36620":4029,"36621":10362,"36648":4988,"36653":4989,"36655":5517,"36660":6971,"36663":10363,"36677":4990,"36678":10364,"36680":4991,"36682":10365,"36692":10366,"36697":8513,"36699":5780,"36700":7692,"36703":10367,"36707":8514,"36709":5781,"36714":8515,"36715":8516,"36727":8517,"36739":10368,"36768":10369,"36772":7693,"36778":6972,"36779":6973,"36780":6974,"36784":10370,"36890":2797,"36951":6464,"36952":6465,"36996":8518,"37049":8519,"37051":8520,"37060":8521,"37125":7694,"37132":7695,"37149":5985,"37150":5518,"37151":5519,"37152":5986,"37157":10371,"37171":8522,"37173":8523,"37175":6975,"37192":5987,"37205":8524,"37228":6976,"37237":4033,"37250":4992,"37251":8525,"37252":4035,"37254":10372,"37261":4282,"37313":2457,"37344":10373,"37349":8526,"37378":5289,"37387":5290,"37403":6466,"37413":3593,"37428":10374,"37441":10375,"37442":10376,"37461":7696,"37467":7697,"37477":6467,"37498":7698,"37512":4994,"37517":6977,"37518":6978,"37519":8527,"37520":5988,"37521":10377,"37522":10378,"37523":10379,"37550":1482,"37556":10380,"37557":6980,"37559":6981,"37560":10381,"37565":3254,"37575":8528,"37577":10382,"37578":10383,"37579":6982,"37580":10384,"37581":6983,"37583":6984,"37609":5782,"37622":6985,"37624":6468,"37640":6986,"37643":10385,"37645":8529,"37694":7699,"37730":10386,"37735":5521,"37737":5989,"37738":5990,"37742":8530,"37746":6987,"37747":8531,"37765":10387,"37768":8532,"37774":8533,"37781":7700,"37783":8534,"37784":6988,"37807":6989,"37809":6990,"37817":10388,"37818":10389,"37820":10390,"37821":10391,"37822":10392,"37845":5522,"37853":4995,"37854":10393,"37861":10394,"37862":10395,"37866":5783,"37870":10396,"37871":10397,"37872":10398,"37875":10399,"37876":10400,"37879":7701,"37890":8535,"37901":10401,"37906":5991,"37915":8536,"37939":6991,"37957":5992,"37963":5993,"37968":6992,"37970":5994,"37971":5995,"37974":5996,"37985":6469,"38003":5997,"38017":8537,"38020":10402,"38021":10403,"38029":7702,"38035":10404,"38036":10405,"38037":10406,"38038":6470,"38039":7703,"38046":10407,"38051":10408,"38069":6993,"38070":5998,"38072":6994,"38073":6995,"38082":10409,"38083":10410,"38084":10411,"38085":7704,"38088":7705,"38092":7706,"38093":7707,"38101":10412,"38103":10413,"38110":4996,"38111":5523,"38112":5524,"38113":8538,"38115":10414,"38116":10415,"38117":6471,"38120":10416,"38121":5999,"38124":7708,"38131":6000,"38132":6996,"38137":5525,"38141":8539,"38148":8540,"38161":1218,"38165":8541,"38171":6001,"38173":10417,"38181":6997,"38182":4997,"38183":6002,"38184":6003,"38186":5526,"38190":10418,"38192":6004,"38194":8542,"38195":8543,"38202":6998,"38204":6999,"38205":5527,"38206":8544,"38209":8545,"38211":10419,"38215":5528,"38216":8546,"38217":7000,"38221":8547,"38222":8548,"38237":4998,"38240":6005,"38261":8549,"38264":10420,"38265":10421,"38266":10422,"38267":5529,"38284":4999,"38285":5000,"38286":10423,"38287":10424,"38292":8550,"38329":6472,"38362":8551,"38363":6006,"38364":6007,"38365":8552,"38368":10425,"38378":8553,"38387":8554,"38388":5530,"38389":5531,"38390":10426,"38392":10427,"38394":8555,"38396":10428,"38397":7001,"38398":5532,"38400":6008,"38420":10429,"38427":8556,"38428":6009,"38443":8557,"38446":10430,"38450":5533,"38462":8558,"38468":7709,"38469":7710,"38470":10431,"38471":10432,"38476":10433,"38480":8559,"38487":8560,"38489":7002,"38490":8561,"38509":7003,"38510":8562,"38511":8563,"38527":8564,"38545":10434,"38548":8565,"38549":8566,"38550":5534,"38551":8567,"38555":7711,"38559":8568,"38591":8569,"38592":10435,"38626":6010,"38627":10436,"38634":10437,"38635":10438,"38643":8570,"38645":6011,"38648":5001,"38649":5002,"38650":10439,"38662":8571,"38669":8572,"38709":10440,"38710":10441,"38711":10442,"38712":10443,"38749":6473,"38785":7712,"38788":10444,"38792":7004,"38793":10445,"38794":6012,"38795":10446,"38796":6013,"38798":6014,"38801":5535,"38802":5536,"38803":5537,"38804":6015,"38805":10447,"38807":7005,"38808":5538,"38809":8573,"38810":8574,"38811":8575,"38813":7006,"38818":10448,"38819":10449,"38824":6016,"38848":8576,"38853":7007,"38858":8577,"38864":5539,"38865":5540,"38866":8578,"38868":6017,"38869":8579,"38872":8580,"38873":7008,"38877":7009,"38883":6018,"38884":6019,"38893":10450,"38896":10451,"38903":10452,"38904":10453,"38907":10454,"38908":10455,"38909":10456,"38910":10457,"38911":10458,"38912":10459,"38915":10460,"38923":2806,"38925":3393,"38927":7010,"38931":6020,"38933":10462,"38935":10463,"38936":10464,"38937":10465,"38962":10466,"38968":7713,"38982":7011,"38984":5541,"38988":6021,"38989":10467,"38990":10468,"38992":10469,"39002":7714,"39020":6474,"39027":10470,"39028":10471,"39029":10472,"39031":10473,"39033":8581,"39035":4040,"39038":8582,"39044":10474,"39050":10475,"39051":5003,"39052":10476,"39053":5004,"39054":5005,"39065":5291,"39081":5006,"39092":6475,"39096":5007,"39109":6476,"39126":5542,"39142":10477,"39155":6022,"39156":4042,"39159":8583,"39160":8584,"39163":7012,"39164":5008,"39213":10479,"39215":10480,"39217":8585,"39220":10481,"39221":10482,"39237":7715,"39268":10483,"39270":10484,"39272":10485,"39273":5292,"39275":5784,"39299":10486,"39300":6023,"39312":7716,"39318":8586,"39319":5009,"39328":10487,"39329":10488,"39341":10489,"39344":8587,"39345":10490,"39360":4044,"39371":4446,"39374":5010,"39384":10491,"39387":10492,"39388":7013,"39409":7717,"39414":10493,"39416":8588,"39418":8589,"39424":10494,"39447":6024,"39448":7718,"39449":10495,"39452":4632,"39467":10496,"39468":10497,"39471":10498,"39472":5785,"39474":10499,"39475":10500,"39477":6477,"39481":8590,"39572":7014,"39576":10501,"39577":10502,"39578":10503,"39594":8591,"39595":10504,"39596":6025,"39598":10505,"39620":8592,"39621":10506,"39636":7719,"39640":10507,"39646":7720,"39660":6478,"39671":7721,"39674":10508,"39689":6479,"39704":7722,"39771":10509,"39772":10510,"39774":10511,"39775":7723,"39776":6480,"39777":10512,"39928":6481,"39939":7015,"39952":10513,"39961":10514,"39962":10515,"39964":10516,"39965":10517,"39967":10518,"40028":4633,"40031":6482,"40036":10519,"40037":5011,"40038":10520,"40039":8593,"40040":10521,"40042":7016,"40043":7017,"40081":10522,"40082":10523,"40083":7018,"40102":8594,"40106":10524,"40111":10525,"40142":7724,"40146":7725,"40181":7726,"40191":8595,"40204":7727,"40212":10526,"40215":7019,"40227":6483,"40274":7728,"40276":7729,"40280":10527,"40283":7730,"40292":7731,"40293":10528,"40297":7732,"40312":5543,"40322":8596,"40333":7733,"40394":5012,"40395":5013,"40396":10529,"40403":5786,"40421":6026,"40426":4046,"40429":10530,"40446":10531,"40452":10532,"40454":7020,"40458":5544,"40463":7021,"40470":8597,"40471":8598,"40478":7734,"40480":10533,"40489":10534,"40491":10535,"40493":10536,"40494":10537,"40495":8599,"40500":10538,"40502":10539,"40509":6027,"40510":10540,"40524":6028,"40525":5014,"40526":5015,"40527":10541,"40528":5016,"40530":4447,"40598":10542,"40694":5017,"40718":6484,"40803":8600,"40805":10543,"40806":10544,"40866":4311,"40871":10545,"40925":6485,"40949":5787,"40976":4448,"40978":5018,"40982":7022,"40983":8601,"40984":6029,"40992":7023,"41016":8602,"41024":8603,"41026":8604,"41028":10546,"41035":8605,"41040":2811,"41043":6486,"41045":5293,"41052":10547,"41064":10548,"41065":7735,"41070":7736,"41076":10549,"41110":7737,"41111":7738,"41131":6030,"41162":5294,"41167":5295,"41168":4634,"41169":4635,"41170":4636,"41184":10550,"41198":10551,"41201":10552,"41203":5296,"41213":4637,"41214":4638,"41216":3107,"41244":8606,"41264":4640,"41265":4641,"41270":4380,"41271":4381,"41272":4642,"41273":4643,"41274":5019,"41275":5020,"41276":5021,"41277":4644,"41278":4645,"41279":4646,"41293":4647,"41294":4648,"41295":4382,"41296":4649,"41298":4650,"41314":7739,"41320":5297,"41364":7024,"41371":1438,"41377":4050,"41383":10553,"41399":10554,"41436":10555,"41440":6487,"41441":5298,"41446":10556,"41484":8607,"41528":3597,"41549":7025,"41615":7026,"41618":4651,"41619":3738,"41661":3486,"41662":8608,"41663":8609,"41680":8610,"41692":8611,"41722":2816,"41727":7740,"41783":3190,"41784":10557,"41785":10558,"41794":1548,"41799":10559,"41802":10560,"41804":10561,"41805":10562,"41806":10563,"41820":10564,"41823":10565,"41824":1815,"41828":6488,"41832":10566,"41867":3490,"41869":10567,"41873":7741,"41882":4652,"41883":10568,"41954":10569,"41974":6490,"41990":8612,"42014":6491,"42065":2819,"42069":4053,"42080":8613,"42085":5788,"42087":6492,"42088":7743,"42092":6493,"42152":6494,"42191":7744,"42214":6032,"42235":8614,"42271":7027,"42276":7745,"42281":7028,"42283":7746,"42295":3599,"42317":5022,"42322":10570,"42323":10571,"42373":7747,"42389":6495,"42396":10572,"42402":10573,"42404":10574,"42409":10575,"42419":3601,"42420":8615,"42442":3603,"42445":1323,"42459":6496,"42462":10576,"42470":7029,"42472":5023,"42473":8616,"42474":8617,"42475":8618,"42476":8619,"42551":10577,"42558":7748,"42583":8620,"42585":7030,"42591":8621,"42611":4055,"42656":10578,"42657":10579,"42674":2466,"42678":668,"42714":8622,"42728":3605,"42739":8623,"42744":4057,"42770":4059,"42823":7749,"42825":5299,"42827":4653,"42829":7750,"42830":5789,"42832":7751,"42835":5790,"42838":10580,"42840":5300,"42843":10581,"42845":10582,"42849":10583,"42863":5301,"42894":2471,"42897":10584,"42909":10585,"42910":10586,"42920":2825,"42928":4061,"42951":10587,"42966":4063,"42972":10588,"42973":10589,"42992":10590,"42994":10591,"43003":6497,"43023":6498,"43054":10592,"43106":8624,"43111":3084,"43124":10593,"43132":7753,"43138":10594,"43150":7754,"43157":7755,"43191":8625,"43230":3742,"43252":10595,"43304":8626,"43312":8627,"43363":10596,"43364":10597,"43365":10598,"43367":10599,"43369":1553,"43371":6499,"43419":1558,"43423":5302,"43491":5545,"43492":10600,"43501":5546,"43502":5547,"43558":6500,"43562":6501,"43568":7031,"43576":6502,"43588":2828,"43591":10601,"43594":6503,"43603":2022,"43608":10602,"43611":6504,"43615":10603,"43625":3110,"43643":2027,"43646":3495,"43656":5303,"43657":4654,"43668":6505,"43687":4655,"43690":4656,"43691":5304,"43702":10604,"43703":10605,"43705":4657,"43722":7756,"43743":10606,"43745":10607,"43752":10608,"43998":7032,"44049":10609,"44051":10610,"44077":5791,"44078":1441,"44079":5792,"44082":8628,"44088":10611,"44089":3497,"44093":6033,"44099":6034,"44103":10612,"44104":5024,"44106":6035,"44124":10613,"44125":10614,"44127":2478,"44139":7757,"44149":5025,"44150":10615,"44152":10616,"44153":5026,"44154":5027,"44155":4449,"44163":10617,"44166":10618,"44167":10619,"44169":10620,"44170":10621,"44238":4067,"44239":8629,"44272":6507,"44284":5548,"44287":8630,"44291":6508,"44292":5305,"44294":5306,"44299":8631,"44330":10622,"44338":10623,"44339":10624,"44340":10625,"44351":10626,"44353":10627,"44355":2234,"44370":10628,"44384":8632,"44397":1444,"44405":10629,"44406":4450,"44407":10630,"44408":10631,"44409":10632,"44411":7033,"44415":4069,"44416":10633,"44417":10634,"44427":10635,"44432":8633,"44437":10636,"44473":7035,"44474":8634,"44484":1329,"44485":10637,"44488":10638,"44489":7036,"44490":10639,"44491":7037,"44494":10640,"44525":7758,"44530":4071,"44534":7038,"44536":7039,"44544":6509,"44547":3257,"44548":6510,"44550":7759,"44551":5549,"44553":10641,"44555":7760,"44557":5307,"44563":10642,"44567":4658,"44570":4659,"44573":1029,"44579":7040,"44582":2835,"44590":10643,"44598":4451,"44605":6511,"44609":10644,"44648":7761,"44653":10645,"44656":5308,"44657":6512,"44658":8636,"44659":6513,"44660":6514,"44661":7762,"44666":7763,"44668":10646,"44687":8637,"44748":10647,"44749":10648,"44790":8638,"44792":10649,"44794":10650,"44795":10651,"44808":7764,"44821":6515,"44824":6516,"44859":6517,"44862":10652,"44873":8639,"44880":2241,"44911":6036,"44929":6518,"44930":7765,"44939":4075,"44960":8640,"44997":8641,"45024":7766,"45064":10653,"45071":6037,"45074":5028,"45075":5029,"45083":8642,"45084":1414,"45087":10655,"45104":7767,"45165":6519,"45166":5793,"45170":8643,"45176":7768,"45262":6520,"45272":5794,"45276":2838,"45285":3334,"45308":10656,"45313":7041,"45315":7042,"45339":10657,"45346":8644,"45349":5030,"45350":5031,"45351":8645,"45357":5032,"45359":4452,"45371":5033,"45373":5034,"45374":5035,"45375":5036,"45384":5037,"45386":5550,"45389":8646,"45395":5795,"45396":7769,"45411":6038,"45412":5551,"45413":8647,"45414":6039,"45415":5552,"45436":10658,"45473":6521,"45475":6522,"45503":10659,"45510":4078,"45512":8649,"45528":7770,"45542":8650,"45544":7043,"45560":7044,"45572":1653,"45597":5796,"45599":10660,"45601":10661,"45602":10662,"45611":5553,"45623":5309,"45633":7771,"45653":10663,"45654":8651,"45722":5554,"45732":4080,"45736":7045,"45777":3750,"45845":7772,"45878":7046,"45882":7773,"45934":5310,"45942":10664,"45944":10665,"45987":3260,"45992":5555,"46020":8652,"46023":7774,"46024":6523,"46025":5311,"46029":5312,"46031":10666,"46032":10667,"46072":7775,"46116":6524,"46155":10668,"46158":10669,"46165":10670,"46166":7776,"46219":8653,"46221":6525,"46234":4328,"46348":6527,"46349":6528,"46352":10671,"46424":10672,"46442":4082,"46460":4084,"46468":7777,"46469":7778,"46479":10673,"46484":10674,"46504":6529,"46510":6530,"46535":8654,"46551":8655,"46554":8656,"46555":8657,"46590":5038,"46591":5039,"46600":8658,"46611":8659,"46624":5313,"46625":5314,"46636":6531,"46676":10675,"46691":10676,"46709":10677,"46710":10678,"46711":10679,"46712":5556,"46769":3262,"46772":3264,"46796":6040,"46833":10680,"46853":7779,"46854":5315,"46855":6532,"46857":7047,"46860":5316,"46877":4660,"46878":6533,"46880":4661,"46900":7048,"46902":7049,"46903":7050,"46904":7051,"46905":7052,"46909":5797,"46911":7780,"46917":7781,"46920":5798,"46947":2244,"46951":10682,"46968":8660,"46975":4086,"47111":10683,"47112":10684,"47133":6534,"47136":6535,"47144":8661,"47174":8662,"47398":1333,"47446":7053,"47447":5040,"47502":2485,"47662":5557,"47666":5558,"47671":7782,"47673":1563,"47676":7783,"47677":7784,"47680":10685,"47772":7785,"47792":4088,"47801":7786,"47831":10686,"47848":6536,"47850":4662,"47851":4663,"47852":4664,"47853":4665,"47854":8663,"47865":4453,"47866":4454,"47868":5041,"47872":5559,"47880":5560,"47881":5561,"47882":10687,"47883":10688,"47884":10689,"47885":10690,"47886":5562,"47887":5563,"47892":10691,"47903":5564,"47904":10692,"47912":10693,"47913":10694,"47914":5565,"47917":7787,"47918":10695,"47919":10696,"47920":10697,"47923":10698,"47924":10699,"47925":10700,"47926":10701,"47934":8664,"47939":5566,"47955":10702,"47956":8665,"47957":5042,"47958":6041,"47960":5043,"47964":10703,"47972":10704,"47979":10705,"47981":7054,"48006":10706,"48007":10707,"48012":10708,"48022":10709,"48023":10710,"48025":6042,"48026":7055,"48027":10711,"48038":7788,"48046":5044,"48047":5045,"48049":5567,"48050":5568,"48051":5046,"48052":5047,"48053":5048,"48057":10712,"48058":10713,"48060":10714,"48061":10715,"48065":10716,"48072":8666,"48073":8667,"48075":10717,"48083":10718,"48084":10719,"48085":10720,"48086":10721,"48087":8668,"48088":10722,"48089":10723,"48090":10724,"48091":10725,"48092":10726,"48093":7056,"48094":10727,"48099":10728,"48105":10729,"48121":8669,"48137":7789,"48138":10730,"48139":10731,"48141":10732,"48142":10733,"48156":8670,"48165":8671,"48166":7790,"48171":10734,"48172":10735,"48173":10736,"48174":10737,"48175":5569,"48176":8672,"48177":10738,"48178":10739,"48192":6537,"48194":8673,"48217":7791,"48245":8674,"48246":10740,"48248":10741,"48249":10742,"48256":6043,"48270":6044,"48278":10743,"48279":10744,"48283":10745,"48286":10746,"48320":7792,"48328":10747,"48329":7793,"48330":10748,"48331":10749,"48433":5049,"48435":8675,"48509":7794,"48510":7795,"48543":10750,"48555":7057,"48556":7058,"48558":7059,"48683":10751,"48684":10752,"48686":10753,"48687":10754,"48709":10755,"48743":4322,"48746":4325,"48762":10756,"48778":8676,"48813":10757,"48815":10758,"48826":7796,"48835":6538,"48842":6539,"48889":10759,"48893":8677,"48895":7060,"48923":4093,"48940":5050,"48942":4455,"48943":4456,"48972":2032,"48979":2843,"48981":3266,"48983":5570,"48984":10760,"49000":7797,"49010":10761,"49011":7798,"49013":10762,"49014":10763,"49101":7061,"49102":10764,"49103":8678,"49105":4457,"49106":5051,"49107":5052,"49108":4096,"49109":10765,"49147":7799,"49203":3066,"49257":10766,"49283":8679,"49292":7800,"49303":8680,"49304":8681,"49305":8682,"49306":8683,"49307":8684,"49309":8685,"49310":8686,"49324":6045,"49377":2037,"49427":10767,"49460":3614,"49462":8687,"49463":8688,"49466":10768,"49467":10769,"49468":5054,"49469":5055,"49470":10770,"49475":7062,"49480":10771,"49495":4100,"49569":8689,"49572":7801,"49639":8690,"49651":8691,"49759":7802,"49795":8692,"49796":8693,"49797":6046,"49813":10772,"49865":10773,"49897":5572,"49916":10774,"49918":6047,"49919":6048,"49920":6049,"49932":4102,"49942":8694,"50000":7803,"50002":7804,"50009":8695,"50030":5056,"50072":8696,"50073":5573,"50075":10775,"50107":7805,"50127":7806,"50128":10776,"50168":4458,"50169":5057,"50171":5058,"50173":4459,"50207":10777,"50221":7063,"50222":7064,"50233":1398,"50238":7807,"50270":8697,"50277":8698,"50340":8699,"50354":10778,"50366":10779,"50367":10780,"50372":10781,"50375":10782,"50376":10783,"50381":10784,"50382":10785,"50415":7808,"50416":6540,"50422":7809,"50423":6541,"50436":7065,"50492":8700,"50526":2848,"50531":10786,"50535":3268,"50536":10788,"50540":5059,"50541":6050,"50555":3616,"50561":5574,"50570":5060,"50571":5061,"50572":5062,"50606":4108,"50661":8701,"50669":7810,"50675":4110,"50677":7811,"50691":942,"50745":7812,"50783":4384,"50827":6051,"50828":6052,"50831":5317,"50844":10789,"50845":10790,"50853":4112,"50868":7813,"50876":8702,"50900":2042,"50906":4114,"50999":5575,"51014":2047,"51024":1716,"51029":10792,"51036":8703,"51082":5063,"51084":10793,"51232":7815,"51240":7067,"51243":8704,"51265":5576,"51271":7068,"51273":7069,"51275":8705,"51290":8706,"51292":5577,"51302":8707,"51350":8708,"51356":6053,"51377":5578,"51397":8709,"51398":6542,"51416":7816,"51418":7817,"51427":6054,"51479":8710,"51485":10794,"51493":8711,"51521":8712,"51527":8713,"51555":10795,"51649":7818,"51656":10796,"51663":8714,"51677":973,"51683":5318,"51699":5319,"51701":8715,"51703":5320,"51704":1089,"51709":7819,"51728":10797,"51747":7820,"51749":6543,"51760":7821,"51784":4116,"51823":8716,"51824":8717,"51827":7822,"51880":10798,"51893":8718,"51899":7823,"51946":10799,"51947":2490,"51951":7070,"51955":8719,"51960":6544,"51969":6545,"51971":6546,"51973":10800,"51991":8720,"51992":8721,"52003":8722,"52007":8723,"52022":5799,"52024":7071,"52054":7824,"52063":5321,"52074":7072,"52083":6055,"52094":7073,"52114":6547,"52122":10801,"52123":10802,"52134":6056,"52143":10803,"52145":10804,"52151":8724,"52154":7074,"52159":6548,"52173":7825,"52176":10805,"52191":10806,"52193":10807,"52194":10808,"52201":10809,"52207":8725,"52208":10810,"52209":10811,"52211":10812,"52212":10813,"52218":10814,"52221":7826,"52231":6057,"52360":2855,"52374":5064,"52375":8726,"52377":5065,"52399":7075,"52402":7827,"52424":2016,"52425":2860,"52428":10816,"52430":10817,"52431":4460,"52432":6058,"52433":10818,"52435":10819,"52436":10820,"52437":10821,"52439":10822,"52440":4461,"52441":10823,"52442":8727,"52474":8728,"52475":10824,"52537":5800,"52540":5322,"52552":10825,"52554":2499,"52611":2867,"52619":6549,"52643":7076,"52645":7828,"52676":1568,"52694":1093,"52703":7077,"52763":10826,"52764":8729,"52792":786,"52798":7829,"52800":4666,"52810":6550,"52846":8730,"52848":8731,"52872":5323,"52873":7830,"52874":5801,"52876":5802,"52878":10827,"52879":10828,"52880":7831,"52893":10829,"52896":5066,"52897":10830,"52898":10831,"52899":5067,"52900":5068,"52902":5069,"52920":5324,"52927":4667,"52928":6551,"52929":4668,"52930":4669,"52936":5325,"52941":10832,"52947":6552,"53017":7078,"53073":4124,"53092":7832,"53095":7833,"53099":7834,"53116":6553,"53138":6059,"53139":8732,"53206":7835,"53260":8733,"53275":6060,"53298":7079,"53299":8734,"53301":8735,"53317":10833,"53318":10834,"53319":10835,"53331":7836,"53358":10836,"53385":799,"53386":10837,"53387":10838,"53398":10839,"53399":10840,"53420":8736,"53434":7837,"53488":7080,"53511":10841,"53530":10842,"53554":4462,"53555":5070,"53556":5071,"53566":10843,"53616":10844,"53663":2512,"53675":6554,"53690":7838,"53691":8737,"53692":8738,"53712":8739,"53717":8740,"53735":6555,"53753":7839,"53757":6556,"53785":7840,"53824":7841,"53869":7842,"53872":5072,"53874":6557,"53893":10845,"53897":7843,"53898":10846,"53913":8741,"53916":7844,"53933":5579,"53935":7845,"53947":10847,"53950":10848,"53951":7846,"53956":8742,"53957":10849,"53958":10850,"53959":10851,"53960":10852,"53961":10853,"53969":6558,"53970":6559,"53987":10854,"53988":10855,"53989":10856,"54009":10857,"54010":10858,"54011":10859,"54012":10860,"54013":10861,"54021":10862,"54033":10863,"54034":10864,"54060":8743,"54061":7847,"54077":8744,"54103":10865,"54107":5580,"54117":10866,"54147":7848,"54217":10867,"54279":6560,"54373":6061,"54374":6062,"54375":8745,"54376":5073,"54391":2876,"54392":6561,"54440":7849,"54457":8746,"54527":8747,"54528":8748,"54530":6063,"54537":6064,"54538":6562,"54557":5803,"54582":7081,"54607":4126,"54625":7082,"54638":5804,"54639":5805,"54642":7850,"54668":1493,"54669":5074,"54671":5075,"54674":10868,"54686":7851,"54721":8749,"54732":4128,"54742":7852,"54792":3765,"54820":10869,"54823":10870,"54859":8750,"54885":8751,"54886":6563,"54894":7083,"54900":8752,"54909":7084,"54910":7085,"54934":6564,"54966":10871,"54969":10872,"54971":10873,"54972":10874,"55038":10875,"55043":3767,"55046":3769,"55049":8753,"55073":7086,"55098":5581,"55132":7853,"55142":7854,"55150":7855,"55207":6565,"55228":10876,"55229":6566,"55235":10877,"55236":10878,"55282":5326,"55318":8754,"55339":5076,"55374":5806,"55380":4130,"55396":7856,"55416":7087,"55421":7088,"55479":7857,"55491":10879,"55501":3771,"55530":1447,"55531":4670,"55534":5327,"55535":10881,"55549":6567,"55568":4132,"55725":7089,"55726":5077,"55727":6065,"55729":8755,"55743":8756,"55794":6066,"55799":6067,"55800":10882,"55801":10883,"55802":10884,"55805":10885,"55808":4671,"55850":5078,"55851":5079,"55853":5080,"55855":5081,"55891":7859,"55895":10886,"55899":7860,"55945":7090,"55957":3113,"55965":881,"55981":5807,"56035":6568,"56051":7091,"56064":7861,"56066":10887,"56068":6569,"56069":5808,"56071":10888,"56075":7862,"56076":10889,"56097":6570,"56142":10890,"56143":8757,"56145":8758,"56196":7092,"56197":8759,"56198":7093,"56227":10891,"56229":3196,"56236":5809,"56262":7863,"56268":6571,"56278":6068,"56293":10892,"56297":10893,"56298":10894,"56307":5582,"56308":6069,"56310":8760,"56313":10895,"56314":10896,"56315":10897,"56316":10898,"56324":7864,"56341":5328,"56345":4135,"56367":4137,"56372":6572,"56392":7865,"56405":6573,"56412":10899,"56413":5082,"56442":10900,"56458":5083,"56462":5084,"56464":10901,"56465":5085,"56469":5086,"56471":5087,"56477":4464,"56504":4139,"56517":10902,"56546":6070,"56548":7094,"56549":4141,"56551":6071,"56691":7866,"56694":10903,"56705":4672,"56711":8761,"56717":5329,"56765":5583,"56789":5584,"56803":5585,"56850":5810,"56909":8762,"56950":3198,"57020":3622,"57043":8763,"57065":6574,"57099":6575,"57107":3624,"57125":8764,"57162":10904,"57165":5586,"57175":10905,"57216":7095,"57217":7096,"57233":3410,"57255":3413,"57299":2880,"57317":5811,"57319":6576,"57353":7867,"57356":5088,"57357":10906,"57389":2883,"57390":3156,"57393":10908,"57412":1659,"57426":10909,"57441":7868,"57444":10910,"57450":5090,"57459":7097,"57463":5091,"57490":7869,"57492":5812,"57493":7870,"57494":7871,"57511":4673,"57512":4674,"57514":4675,"57539":5092,"57540":10911,"57541":10912,"57542":5093,"57544":10913,"57545":5094,"57548":6072,"57558":2888,"57560":5095,"57562":5096,"57653":5813,"57709":7872,"57713":7873,"57714":4676,"57716":1178,"57717":6577,"57731":7874,"57738":8765,"57765":5814,"57766":7875,"57767":6578,"57768":7876,"57770":10914,"57771":4677,"57772":7877,"57774":4678,"57776":6579,"57777":5815,"57779":10915,"57796":6580,"57803":6581,"57806":6582,"57809":6583,"57813":8766,"57829":6584,"57851":7878,"57869":10916,"57960":3773,"57961":7880,"57977":3775,"57981":5330,"57993":4679,"57995":7881,"58056":8767,"58104":8768,"58106":10917,"58123":10918,"58125":5587,"58130":10919,"58133":10920,"58135":10921,"58141":10922,"58197":4145,"58210":3200,"58211":10923,"58216":6586,"58218":7882,"58220":5816,"58263":10924,"58265":10925,"58266":10926,"58267":10927,"58268":10928,"58269":10929,"58271":10930,"58272":5331,"58281":8770,"58425":7883,"58444":6073,"58447":6074,"58464":6075,"58496":1017,"58497":10932,"58498":10933,"58500":7098,"58525":10934,"58533":6587,"58573":4150,"58578":7884,"58660":4385,"58661":10935,"58671":8771,"58679":10936,"58716":3777,"58732":8772,"58763":10937,"58764":10938,"58767":10939,"58768":10940,"58789":6588,"58885":5097,"58890":2893,"58906":7885,"58907":10942,"58909":7886,"58912":10943,"58914":8773,"58930":7887,"58937":4680,"58942":5817,"58964":5332,"58965":10944,"58966":5818,"58967":10945,"58968":4681,"58970":5333,"58971":5819,"58972":7888,"58984":6076,"59003":10946,"59007":7889,"59009":10947,"59010":10948,"59012":10949,"59013":10950,"59052":7890,"59075":6589,"59102":6590,"59122":5334,"59124":7891,"59126":4153,"59148":6592,"59155":7099,"59164":10951,"59183":7100,"59206":4682,"59217":6593,"59255":6594,"59257":4386,"59260":5335,"59263":7892,"59336":6595,"59340":5098,"59341":7101,"59367":6596,"59375":6597,"59379":6598,"59387":5820,"59417":6599,"59432":5336,"59439":5099,"59447":6600,"59483":10952,"59484":10953,"59500":5821,"59511":7893,"59513":5588,"59524":6077,"59525":6078,"59527":10954,"59528":10955,"59532":6079,"59533":6080,"59534":7102,"59557":6601,"59560":2056,"59574":5589,"59576":10957,"59579":10958,"59580":10959,"59582":4155,"59583":10960,"59599":4158,"59601":7894,"59608":10961,"59641":6602,"59645":6603,"59646":7895,"59660":6604,"59674":6082,"59682":5337,"59700":7896,"59704":7897,"59715":7898,"59755":4308,"59757":10963,"59758":10964,"59764":7899,"59789":10965,"59795":5822,"59801":6605,"59822":10966,"59834":7900,"59835":7901,"59842":10967,"59846":10969,"59906":7902,"59928":8774,"59930":8775,"59941":6606,"59943":7903,"59954":8776,"59956":8777,"59957":8778,"59988":4683,"59994":5823,"59995":7904,"59996":6607,"60000":10970,"60004":8779,"60005":8780,"60006":10971,"60011":4161,"60014":7905,"60016":5338,"60017":5339,"60028":7103,"60050":10972,"60062":10973,"60070":10974,"60102":6608,"60103":5340,"60132":10975,"60138":10976,"60139":10977,"60142":10978,"60143":5824,"60150":10979,"60151":10980,"60154":10981,"60155":10982,"60159":5825,"60160":3319,"60166":10983,"60197":6609,"60216":10984,"60242":7906,"60244":7907,"60246":7908,"60254":6610,"60256":5341,"60271":8781,"60272":8782,"60274":6611,"60282":6612,"60284":7909,"60286":7910,"60321":5342,"60356":10985,"60357":10986,"60358":10987,"60360":10988,"60391":10989,"60395":10990,"60397":5343,"60399":5826,"60400":5344,"60401":6613,"60447":10991,"60448":10992,"60460":10993,"60467":8783,"60475":10994,"60476":5590,"60480":10995,"60481":10996,"60482":10997,"60545":7911,"60546":7912,"60555":3505,"60556":4684,"60562":7913,"60563":7914,"60579":7915,"60596":8784,"60608":10998,"60609":5100,"60611":10999,"60612":8785,"60616":7916,"60623":7917,"60631":11000,"60632":5827,"60633":7918,"60634":7919,"60636":6615,"60647":7920,"60653":8786,"60690":11001,"60761":7104,"60764":5591,"60765":5592,"60766":5593,"60838":2517,"60857":7921,"60866":7922,"60871":6083,"60885":8787,"60905":7105,"60924":7923,"60931":5828,"60934":737,"60963":8788,"61021":6616,"61024":8789,"61039":6084,"61040":8790,"61041":11002,"61042":11003,"61043":11004,"61047":8791,"61050":8792,"61097":11005,"61106":11006,"61134":5594,"61136":2898,"61138":2903,"61143":2522,"61144":7924,"61146":6617,"61149":8793,"61165":6618,"61184":4165,"61200":11007,"61201":7106,"61202":6085,"61204":7107,"61213":7108,"61215":2253,"61225":5595,"61232":5596,"61234":1836,"61252":7109,"61253":11008,"61254":8794,"61341":8795,"61350":8796,"61399":5597,"61457":7110,"61466":11009,"61479":11010,"61480":1070,"61493":7926,"61525":7111,"61560":8797,"61581":8798,"61590":4465,"61619":8799,"61629":11011,"61631":11012,"61633":11013,"61638":6086,"61649":1841,"61675":4685,"61677":4686,"61683":4687,"61684":4688,"61685":8800,"61743":8801,"61761":5345,"61830":11014,"61831":11015,"61832":11016,"61848":7927,"61882":4167,"61883":3628,"61919":8802,"61953":4466,"61956":7112,"61959":11017,"62000":4169,"62019":11018,"62020":7928,"62021":1846,"62022":7929,"62048":6619,"62086":5598,"62112":8803,"62113":5101,"62114":6087,"62115":5102,"62131":6620,"62149":1664,"62166":11019,"62167":11020,"62168":11021,"62170":11022,"62181":11023,"62182":5599,"62190":7930,"62198":11024,"62214":5829,"62217":11025,"62218":11026,"62219":11027,"62220":5830,"62230":8804,"62241":8805,"62246":2529,"62247":8806,"62248":8807,"62282":11028,"62283":7931,"62292":5831,"62295":6621,"62313":7932,"62343":5832,"62347":5600,"62350":6088,"62357":5601,"62359":7113,"62385":5833,"62406":7114,"62407":7115,"62447":11029,"62448":7933,"62449":11030,"62450":11031,"62451":11032,"62494":2061,"62549":5346,"62550":6623,"62589":6624,"62591":6625,"62592":6626,"62594":7934,"62617":4387,"62618":4689,"62619":11033,"62620":4690,"62636":11034,"62639":11035,"62643":11036,"62667":6089,"62748":11037,"62753":7935,"62757":6627,"62785":11038,"62794":6628,"62820":11039,"62821":7936,"62832":7937,"62836":6629,"62847":11040,"62850":11041,"62852":11042,"62858":7938,"62860":6630,"62864":6631,"62873":2908,"62898":5834,"62910":2064,"62927":7939,"62934":4388,"62960":7940,"62969":7941,"62988":6632,"63009":6633,"63014":2536,"63049":7942,"63050":11043,"63052":6634,"63173":6090,"63216":6635,"63241":11044,"63242":11045,"63246":11046,"63265":7943,"63297":7944,"63298":7945,"63321":8808,"63327":7946,"63328":7947,"63331":6636,"63333":6637,"63334":11047,"63366":7948,"63369":11048,"63370":11049,"63371":11050,"63372":11051,"63391":4389,"63394":6638,"63404":7949,"63442":4467,"63443":5103,"63444":8809,"63445":11052,"63447":6091,"63448":11053,"63449":11054,"63473":7950,"63490":3784,"63491":6639,"63521":11055,"63541":6640,"63577":7951,"63588":6641,"63589":11056,"63590":11057,"63591":11058,"63592":11059,"63594":11060,"63597":4390,"63598":11061,"63599":11062,"63600":4691,"63644":11063,"63659":6642,"63668":11064,"63676":5835,"63677":6643,"63678":5836,"63679":11065,"63681":11066,"63689":11067,"63690":11068,"63692":11069,"63693":11070,"63712":4692,"63715":11071,"63749":11072,"63762":6644,"63822":5104,"63823":5105,"63848":7952,"63868":7116,"63881":7953,"63904":5347,"63907":7954,"63960":7955,"63976":6645,"63983":4468,"63984":5106,"63986":5107,"63988":5108,"63992":5109,"63993":5110,"63994":5111,"63998":11073,"63999":11074,"64003":7956,"64032":7957,"64046":2541,"64074":7117,"64076":5602,"64078":7118,"64081":7958,"64099":7119,"64100":11075,"64101":11076,"64102":11077,"64112":7120,"64115":8810,"64136":7121,"64137":7122,"64138":8811,"64141":8812,"64165":5112,"64166":5113,"64167":5114,"64168":11078,"64171":5115,"64172":5116,"64173":5117,"64179":5348,"64180":5349,"64184":7959,"64192":8813,"64199":8814,"64232":5350,"64233":11079,"64236":11080,"64267":7123,"64269":5118,"64270":5119,"64272":5120,"64327":11081,"64329":11082,"64331":11083,"64332":11084,"64366":6646,"64369":11085,"64372":11086,"64373":11087,"64375":11088,"64376":11089,"64399":6092,"64401":4391,"64402":5351,"64403":4693,"64405":5352,"64407":5837,"64413":11090,"64425":5353,"64440":11091,"64441":11092,"64444":11093,"64461":7960,"64463":11094,"64473":11095,"64480":6647,"64481":11096,"64482":11097,"64484":11098,"64486":11099,"64496":11100,"64497":11101,"64498":7961,"64499":11102,"64501":11103,"64504":11104,"64556":7962,"64570":11105,"64573":11106,"64577":8815,"64639":7963,"64659":11107,"64692":4172,"64705":7964,"64735":6648,"64769":11108,"64770":11109,"64784":6649,"64786":6650,"64788":5354,"64828":6093,"64845":7965,"64847":7966,"64850":7967,"64852":7968,"64857":11110,"64858":7969,"64859":11111,"64863":5355,"64865":7970,"64869":7124,"64874":5121,"64897":5122,"64900":11112,"64901":11113,"64902":7971,"64903":7972,"64905":11114,"64939":5838,"65050":5356,"65089":11115,"65093":11116,"65094":6651,"65143":11117,"65167":3508,"65170":11119,"65174":1417,"65176":6652,"65178":5839,"65180":6653,"65181":11120,"65182":7973,"65192":8816,"65204":11121,"65205":11122,"65206":8817,"65209":8818,"65217":5123,"65218":5124,"65235":7974,"65266":11123,"65271":11124,"65272":2548,"65275":4393,"65278":7975,"65283":2553,"65295":11125,"65298":11126,"65302":2913,"65307":8819,"65309":8820,"65311":11128,"65312":5125,"65343":7976,"65355":7977,"65389":5840,"65396":11129,"65400":11130,"65405":11131,"65408":11132,"65415":11133,"65416":11134,"65424":2069,"65426":8821,"65445":8822,"65447":11135,"65469":11136,"65470":11137,"65471":11138,"65474":4175,"65482":5126,"65518":11139,"65532":11140,"65533":11141,"65570":5603,"65574":8823,"65598":3115,"65610":8824,"65620":5604,"65634":11142,"65663":4394,"65666":7978,"65679":11143,"65680":11144,"65681":11145,"65689":5605,"65690":5606,"65707":742,"65716":6094,"65719":7125,"65722":8825,"65732":2558,"65754":6654,"65781":6095,"65819":7126,"65820":5607,"65829":5841,"65855":6655,"65856":11146,"65858":6096,"65861":5127,"65862":5128,"65864":5129,"65867":8826,"65891":11147,"65893":11148,"65895":8827,"65896":8828,"65898":11149,"65916":8829,"65946":1849,"65957":2920,"66031":5130,"66032":5131,"66035":5132,"66042":6656,"66076":8830,"66108":1854,"66109":5608,"66122":6657,"66134":8831,"66137":7979,"66139":5133,"66141":5134,"66142":11150,"66148":2925,"66165":5135,"66166":5136,"66172":4395,"66179":7127,"66181":11151,"66183":11152,"66185":2074,"66193":6658,"66200":7980,"66237":5357,"66239":5358,"66241":5359,"66253":7981,"66273":7982,"66290":11154,"66366":6659,"66369":4694,"66373":11155,"66374":11156,"66377":11157,"66378":11158,"66390":11159,"66435":8832,"66440":5842,"66444":6660,"66452":7983,"66454":4695,"66455":7984,"66515":6661,"66516":6662,"66517":6663,"66527":4696,"66528":4697,"66530":4698,"66550":6664,"66564":7985,"66572":7986,"66573":7987,"66596":11160,"66620":11161,"66680":8833,"66686":8834,"66688":6097,"66696":4699,"66697":5843,"66698":5844,"66723":4700,"66724":5845,"66725":4701,"66726":4702,"66730":11162,"66734":4703,"66735":4704,"66748":8835,"66785":8836,"66791":11163,"66792":11164,"66796":11165,"66797":11166,"66802":7988,"66803":11167,"66829":2930,"66886":5846,"66924":11168,"66934":11169,"66936":11170,"66938":7128,"66943":7129,"66949":11171,"66952":11172,"66972":11173,"66973":11174,"66974":8837,"66984":11175,"66991":7130,"66993":7131,"66994":7132,"66995":5137,"66998":5138,"67011":5139,"67019":11176,"67021":5140,"67024":8838,"67068":11177,"67118":6098,"67135":7133,"67141":7134,"67157":7989,"67188":7990,"67224":7991,"67227":6665,"67260":7135,"67263":7136,"67268":7137,"67285":11178,"67322":5141,"67323":6099,"67324":8839,"67325":6100,"67348":7138,"67365":5609,"67366":6101,"67384":7139,"67414":8840,"67418":7140,"67427":11179,"67428":11180,"67430":4705,"67432":11181,"67452":2935,"67457":11182,"67464":8841,"67526":7141,"67589":11183,"67590":11184,"67610":5610,"67667":7992,"67668":7993,"67669":7994,"67674":11185,"67675":11186,"67695":8842,"67706":6666,"67711":6667,"67753":1347,"67755":4183,"67762":8843,"67766":3791,"67780":6668,"67820":11187,"67821":11188,"67825":11189,"67828":4185,"67830":6669,"67846":11190,"67847":11191,"67849":11192,"67858":6670,"67862":3159,"67863":7995,"67883":3631,"67896":5847,"67897":5848,"67962":6671,"67963":7996,"67979":1420,"67980":11193,"67982":5611,"68039":6672,"68040":6673,"68044":8844,"68082":7997,"68161":2097,"68165":5612,"68172":7998,"68173":5360,"68211":5849,"68216":3026,"68217":11194,"68218":3031,"68219":11195,"68303":7999,"68335":8000,"68343":8001,"68354":6674,"68356":4706,"68398":6675,"68399":6676,"68400":1741,"68442":3521,"68443":4336,"68446":4333,"68448":8002,"68449":6677,"68450":8003,"68460":4339,"68483":2577,"68503":11196,"68504":11197,"68508":8845,"68534":11198,"68536":8846,"68551":2582,"68555":8004,"68562":11199,"68563":11200,"68580":3802,"68581":11201,"68675":11202,"68697":6102,"68706":8847,"68708":4469,"68709":4470,"68713":4471,"68716":8005,"68752":3202,"68760":6678,"68763":6679,"68765":11203,"68770":11204,"68776":11205,"68785":1673,"68800":8848,"68821":4288,"68842":8006,"68892":3633,"68909":8849,"68936":8007,"68949":8850,"68968":7142,"68998":3806,"69009":6680,"69062":5613,"69064":8851,"69066":11206,"69075":5614,"69078":8852,"69079":8853,"69084":5142,"69094":7143,"69099":7144,"69107":11207,"69108":8008,"69109":8854,"69111":11208,"69113":11209,"69120":7145,"69147":11210,"69152":2946,"69173":8855,"69184":1863,"69185":11212,"69186":11213,"69189":5615,"69259":8856,"69283":5616,"69313":11214,"69318":5617,"69341":4192,"69342":8009,"69386":5143,"69409":3809,"69426":11215,"69431":5144,"69452":8857,"69457":3169,"69463":5145,"69467":5146,"69473":11217,"69479":4194,"69508":6681,"69548":11218,"69557":6103,"69560":5361,"69572":4197,"69576":8858,"69579":8010,"69606":11219,"69607":11220,"69636":11221,"69676":11222,"69689":2593,"69726":8859,"69745":8860,"69747":11223,"69749":6682,"69771":11224,"69776":5362,"69777":11225,"69778":11226,"69779":11227,"69789":11228,"69790":8861,"69792":8011,"69804":6683,"69807":11229,"69828":11230,"69835":6684,"69839":3171,"69841":5850,"69849":11231,"69892":6104,"69915":4200,"69965":5147,"69989":11232,"69990":11233,"69992":11234,"69993":11235,"70030":4707,"70031":8012,"70033":5363,"70036":4708,"70037":8013,"70038":5364,"70071":7146,"70073":2955,"70103":8862,"70110":2258,"70117":2598,"70165":11236,"70173":5618,"70190":1572,"70200":8014,"70201":11237,"70202":11238,"70204":11239,"70205":8015,"70232":11240,"70236":6685,"70240":11241,"70241":11242,"70249":5619,"70250":5620,"70252":5621,"70255":7147,"70278":11243,"70318":11244,"70320":11245,"70321":11246,"70322":8863,"70366":11247,"70424":11248,"70472":8864,"70483":11249,"70498":8016,"70506":11250,"70519":11251,"70522":6686,"70523":8865,"70550":7148,"70552":11252,"70553":11253,"70554":7149,"70557":3279,"70561":5365,"70565":11254,"70575":5622,"70586":11255,"70587":11256,"70589":11257,"70591":5366,"70609":11258,"70633":2603,"70652":8866,"70670":5623,"70671":11259,"70672":5624,"70673":11261,"70674":11260,"70697":3814,"70701":3425,"70726":8867,"70728":7150,"70735":5625,"70752":6687,"70762":11262,"70767":7151,"70768":8868,"70769":6105,"70772":11263,"70773":11264,"70775":11265,"70778":11266,"70779":8869,"70786":6106,"70817":8870,"70846":8871,"70873":5626,"70915":11267,"70916":11268,"70917":11269,"70918":11270,"70947":1404,"70976":3635,"70982":11271,"70995":5851,"71039":8872,"71074":1354,"71098":8017,"71099":8018,"71112":4709,"71125":8019,"71145":6688,"71182":11272,"71183":11273,"71186":11274,"71187":11275,"71188":11276,"71189":11277,"71226":11278,"71227":11279,"71229":8020,"71232":11280,"71233":11281,"71234":6689,"71237":11282,"71238":11283,"71251":8021,"71254":8873,"71259":7152,"71262":7153,"71266":3488,"71300":8022,"71302":1009,"71311":8023,"71312":8024,"71331":8025,"71334":8026,"71339":2962,"71341":4710,"71342":11284,"71344":11285,"71351":2967,"71359":6690,"71392":7154,"71395":5148,"71412":4472,"71413":8874,"71414":5149,"71415":4473,"71416":5150,"71417":5151,"71419":4474,"71449":2612,"71450":8027,"71456":1425,"71468":5367,"71490":8875,"71583":6691,"71584":11286,"71604":11287,"71605":11288,"71606":11289,"71607":11290,"71619":8028,"71621":8029,"71627":8030,"71644":11291,"71648":11292,"71651":11293,"71652":11294,"71653":6692,"71662":8876,"71663":8877,"71691":6107,"71703":6693,"71704":8878,"71709":8031,"71714":11295,"71726":8032,"71738":8033,"71753":6694,"71755":8034,"71770":8879,"71814":11296,"71821":2100,"71828":7155,"71849":3324,"71854":2617,"71857":5852,"71859":8035,"71873":8036,"71895":8880,"71971":5368,"71972":8037,"71997":3638,"72044":11297,"72045":11298,"72051":8038,"72054":11299,"72055":7156,"72084":5152,"72085":5153,"72087":5154,"72109":6108,"72125":4711,"72127":5369,"72128":6695,"72130":6696,"72172":5627,"72175":5155,"72181":5156,"72196":8881,"72242":8882,"72278":8039,"72288":11300,"72310":8883,"72343":8040,"72356":6109,"72362":8041,"72385":8042,"72392":8043,"72406":7157,"72408":7158,"72409":5628,"72411":8884,"72433":8885,"72436":8886,"72451":11301,"72452":11302,"72454":11303,"72455":7159,"72456":11304,"72457":2622,"72486":8887,"72515":11305,"72567":8044,"72580":11306,"72581":11307,"72591":8045,"72592":8046,"72599":8047,"72600":11308,"72604":6697,"72609":11309,"72629":3173,"72639":8888,"72661":5853,"72710":11310,"72711":11311,"72712":11312,"72715":6698,"72720":11313,"72730":11314,"72742":2627,"72746":6699,"72752":6700,"72761":4207,"72764":8889,"72774":11315,"72787":8048,"72792":8049,"72832":8050,"72833":1577,"72842":11316,"72844":11317,"72850":11318,"72851":11319,"72853":11320,"72854":6110,"72870":6701,"72878":8051,"72879":8052,"72882":6702,"72883":5629,"72915":5854,"72919":8890,"72924":4209,"72935":6703,"72949":11321,"72951":11322,"72952":11323,"72961":5157,"73004":8053,"73036":6111,"73086":11324,"73087":8891,"73089":8892,"73090":8893,"73098":7160,"73107":7161,"73112":6704,"73164":8894,"73181":11325,"73207":4397,"73219":11326,"73220":5370,"73221":11327,"73222":4712,"73224":8054,"73232":8895,"73236":8896,"73237":6112,"73239":11328,"73240":11329,"73242":8897,"73243":5630,"73245":11330,"73247":5631,"73272":3207,"73274":6705,"73293":7162,"73331":8898,"73334":8899,"73335":8900,"73348":11331,"73349":11332,"73357":7163,"73377":2261,"73406":2266,"73418":11333,"73425":11334,"73428":11335,"73431":11336,"73450":2976,"73474":8055,"73499":8901,"73508":2105,"73509":6706,"73520":6707,"73528":2110,"73538":11338,"73539":11339,"73544":11340,"73587":4214,"73632":11341,"73633":11342,"73634":6708,"73636":11343,"73637":11344,"73638":11345,"73657":11346,"73658":11347,"73660":8903,"73662":11348,"73663":11349,"73666":8056,"73674":8057,"73688":11350,"73694":7165,"73706":5632,"73707":11351,"73713":11352,"73714":11353,"73766":3211,"73768":11355,"73769":11356,"73784":8904,"73787":11357,"73796":11358,"73797":11359,"73799":11360,"73800":6113,"73822":11361,"73828":4216,"73831":6709,"73841":8058,"73878":5158,"73879":11363,"73881":11364,"73898":5159,"73900":8905,"73901":11365,"73920":6114,"73961":8059,"73962":5855,"73984":8906,"74022":8060,"74047":8061,"74059":8907,"74072":8062,"74078":6710,"74100":8063,"74105":8064,"74109":8065,"74120":7166,"74139":7167,"74179":8908,"74182":8066,"74189":8067,"74195":8068,"74207":11366,"74208":8069,"74209":11367,"74210":8070,"74213":5856,"74215":5857,"74288":11368,"74304":11369,"74305":11370,"74307":11371,"74308":11372,"74309":11373,"74311":5858,"74312":6711,"74313":5371,"74325":7168,"74333":7169,"74349":8909,"74354":11374,"74355":11376,"74367":11375,"74394":11377,"74395":11378,"74397":11379,"74399":11380,"74402":11381,"74405":11382,"74406":11383,"74407":11384,"74408":5160,"74409":11385,"74414":6712,"74421":8910,"74423":8911,"74462":5633,"74463":11386,"74464":11387,"74465":11388,"74469":5372,"74474":11389,"74510":5161,"74514":5162,"74515":11390,"74517":5163,"74518":11391,"74520":7170,"74592":6713,"74596":2115,"74646":8071,"74650":5373,"74660":11392,"74672":6714,"74683":6715,"74688":5374,"74698":8912,"74710":8913,"74744":4218,"74748":6716,"74776":4713,"74804":8914,"74805":4220,"74863":11393,"74865":11394,"74866":11395,"74867":11396,"74868":11397,"74869":6717,"74870":11398,"74902":8072,"74908":6718,"74919":1582,"74962":7171,"74963":5634,"74982":6719,"74991":3427,"75034":11399,"75036":11400,"75037":11401,"75042":6720,"75048":11402,"75049":11403,"75050":11404,"75051":11405,"75052":11406,"75053":11407,"75066":11408,"75072":11409,"75073":11410,"75074":11411,"75149":7172,"75153":7173,"75168":8915,"75169":8916,"75177":11412,"75179":11413,"75180":11414,"75181":7174,"75200":4222,"75206":1589,"75215":11415,"75216":11416,"75221":8073,"75223":5376,"75228":5377,"75243":11417,"75245":11418,"75261":11419,"75264":11420,"75265":11421,"75277":8917,"75310":7175,"75326":8074,"75329":6721,"75336":6722,"75410":8075,"75415":11422,"75431":11423,"75437":5859,"75470":8076,"75542":6723,"75570":8918,"75624":6724,"75714":3824,"75736":8077,"75737":6725,"75739":8078,"75741":4225,"75749":5635,"75808":11424,"75809":11425,"75823":1868,"75826":4228,"75834":5378,"75847":11426,"75848":5379,"75849":6115,"75850":5636,"75897":6726,"75917":6727,"76012":5164,"76032":8079,"76064":11427,"76083":11428,"76084":11429,"76085":11430,"76110":7176,"76139":6728,"76141":8080,"76142":7177,"76154":7178,"76163":8919,"76176":8920,"76182":6116,"76204":7179,"76261":6729,"76284":3642,"76285":6117,"76289":5165,"76290":8921,"76296":11431,"76299":4714,"76345":8922,"76347":6118,"76506":4230,"76511":8081,"76526":8923,"76529":4475,"76541":8082,"76543":5637,"76578":6730,"76587":5860,"76604":8083,"76606":8084,"76609":11432,"76631":11433,"76641":5638,"76643":5639,"76644":5640,"76646":8924,"76671":4232,"76679":11435,"76791":11436,"76793":11437,"76796":11438,"76797":11439,"76798":5166,"76801":8925,"76812":11440,"76818":8926,"76819":4234,"76820":11442,"76822":11443,"76823":11444,"76824":11445,"76856":6731,"76882":6119,"76892":6120,"76950":8085,"76984":8927,"76988":11446,"76990":4715,"76992":4716,"76994":8928,"76996":11447,"77052":3073,"77074":4305,"77140":6732,"77209":8929,"77283":4290,"77329":1871,"77338":5641,"77377":8086,"77456":11448,"77457":6733,"77480":1746,"77481":11449,"77484":11450,"77513":11451,"77514":11452,"77515":11453,"77516":7180,"77518":11454,"77519":11455,"77520":1101,"77526":8930,"77545":6734,"77547":11456,"77554":5380,"77557":5861,"77569":7181,"77570":6121,"77603":2981,"77629":8931,"77630":8932,"77635":7182,"77652":8933,"77676":11457,"77677":5167,"77679":11458,"77680":11459,"77737":3120,"77740":8087,"77791":2120,"77797":6122,"77799":8088,"77800":6735,"77801":3829,"77820":8089,"77841":1751,"77851":8090,"77852":3326,"77857":5862,"77861":5168,"77870":5169,"77895":8091,"77917":6123,"77936":2646,"77957":6737,"77962":3175,"77964":7183,"77994":4717,"77996":4718,"78014":11461,"78040":567,"78102":3528,"78105":4719,"78121":7184,"78128":8934,"78129":8935,"78140":5863,"78141":8092,"78142":11462,"78143":11463,"78175":8936,"78186":8093,"78210":681,"78219":8094,"78241":8095,"78243":4238,"78255":4240,"78261":11464,"78273":1596,"78294":8096,"78299":6738,"78319":5381,"78325":6739,"78334":8937,"78344":4476,"78350":11466,"78357":8938,"78364":8939,"78395":11467,"78396":6124,"78397":7185,"78398":11468,"78399":8940,"78400":8941,"78401":8942,"78424":11469,"78425":11470,"78459":894,"78478":4242,"78499":8097,"78502":8098,"78513":11471,"78514":11472,"78516":11473,"78517":11474,"78554":11475,"78557":8943,"78610":6740,"78643":8944,"78654":11476,"78655":11477,"78657":11478,"78658":6125,"78722":4720,"78727":4399,"78729":4721,"78730":4722,"78736":4723,"78742":4724,"78743":4725,"78816":8099,"78834":11479,"78835":11480,"78836":11481,"78837":11482,"78862":8100,"78905":8101,"78941":8102,"78950":8103,"78958":6741,"78988":4244,"79000":11484,"79004":11485,"79013":6126,"79014":11486,"79016":8945,"79017":6127,"79021":6128,"79052":11487,"79060":7186,"79071":11488,"79075":11489,"79076":11490,"79077":5864,"79080":11491,"79121":11492,"79122":6742,"79126":11493,"79127":11494,"79128":8946,"79144":8104,"79153":5170,"79154":5171,"79172":2985,"79206":11495,"79211":11496,"79241":3534,"79242":11497,"79244":11498,"79257":6743,"79258":4279,"79275":2132,"79284":6129,"79373":2137,"79399":8947,"79419":4400,"79420":4726,"79421":4727,"79463":11499,"79510":4477,"79511":7188,"79514":11500,"79520":6130,"79521":5172,"79541":8948,"79551":8949,"79552":8950,"79559":2142,"79560":6745,"79570":2652,"79592":11501,"79594":5382,"79599":8105,"79605":8106,"79609":11502,"79612":5865,"79614":6746,"79615":8107,"79616":8108,"79619":8951,"79641":7189,"79642":7190,"79736":11503,"79740":5173,"79751":8109,"79826":4246,"79836":5174,"79837":991,"79844":3539,"79885":8952,"79890":2271,"79915":11504,"79919":8110,"79953":8953,"79954":8954,"79968":8111,"79969":5383,"79978":4249,"79994":1097,"80053":11505,"80054":11506,"80055":11507,"80056":11508,"80057":7192,"80071":11509,"80097":11510,"80107":11511,"80111":4479,"80114":8955,"80115":11512,"80116":4478,"80167":8956,"80174":8112,"80205":5175,"80207":8113,"80229":11513,"80234":1025,"80236":7193,"80239":7194,"80243":8957,"80262":6131,"80266":8958,"80273":4728,"80274":8959,"80281":6747,"80282":6132,"80283":7195,"80285":6748,"80290":8114,"80299":5642,"80308":8960,"80310":8961,"80314":8962,"80316":7196,"80318":7197,"80320":11515,"80321":5643,"80323":8963,"80326":11516,"80328":7198,"80338":8964,"80359":7199,"80365":7200,"80370":6133,"80371":7201,"80372":4251,"80374":8965,"80375":11517,"80382":6134,"80383":8966,"80402":7203,"80404":7204,"80405":6749,"80406":8967,"80407":8968,"80414":11518,"80416":11519,"80424":5644,"80428":11520,"80430":8969,"80438":7205,"80444":8115,"80463":8970,"80470":8971,"80473":8972,"80483":6750,"80508":8973,"80509":7206,"80512":11521,"80533":6135,"80536":6136,"80537":7207,"80539":5176,"80540":5177,"80542":5645,"80544":8974,"80551":6137,"80564":5646,"80567":11522,"80572":6138,"80589":8116,"80596":5178,"80603":8975,"80604":11523,"80620":8976,"80630":8977,"80632":8117,"80637":7208,"80638":11524,"80645":11525,"80652":5647,"80654":6751,"80660":7209,"80661":6139,"80663":6140,"80666":8978,"80668":8118,"80671":5648,"80688":11526,"80693":5649,"80695":6141,"80699":6142,"80706":6752,"80710":7210,"80712":5650,"80721":6143,"80722":5651,"80723":11527,"80741":7211,"80752":8119,"80760":11528,"80766":4729,"80769":6753,"80772":8979,"80784":8980,"80785":6144,"80786":8981,"80790":2988,"80808":8982,"80821":11529,"80830":8983,"80833":8984,"80839":11530,"80840":11531,"80841":11532,"80842":11533,"80847":8985,"80885":8986,"80887":8987,"80889":11534,"80890":11535,"80891":11536,"80892":11537,"80895":8988,"80905":11538,"80906":11539,"80908":11540,"80909":11541,"80925":8989,"80956":8990,"80967":8991,"80976":5866,"80988":8992,"81014":7212,"81023":6145,"81024":8993,"81025":5652,"81028":11542,"81047":5653,"81052":6146,"81055":6147,"81063":8994,"81071":8995,"81074":8996,"81093":8997,"81115":8998,"81116":8999,"81120":9000,"81128":5179,"81130":4480,"81134":6148,"81137":9001,"81148":9002,"81149":11543,"81156":9003,"81157":7213,"81163":9004,"81165":5654,"81166":7214,"81167":9005,"81168":9006,"81169":9007,"81170":7215,"81171":5180,"81172":4253,"81173":11545,"81181":8120,"81189":11546,"81194":11547,"81200":5867,"81204":9008,"81206":9009,"81218":9010,"81227":7216,"81234":7217,"81235":11548,"81247":8121,"81256":3645,"81258":5655,"81259":9012,"81261":5656,"81262":9013,"81270":5384,"81272":9014,"81275":6149,"81276":6150,"81277":6151,"81282":9015,"81283":11549,"81285":11550,"81290":7218,"81295":9016,"81299":11551,"81305":9017,"81307":6152,"81308":6153,"81316":6154,"81318":9018,"81323":6155,"81334":5181,"81335":4481,"81342":11552,"81345":11553,"81355":5657,"81360":7219,"81365":6156,"81366":6157,"81370":6158,"81376":6159,"81377":9019,"81379":6160,"81384":7220,"81386":5182,"81387":6161,"81388":9020,"81396":7221,"81407":6162,"81412":7222,"81413":5183,"81414":4482,"81416":6754,"81422":9021,"81429":7223,"81430":11554,"81433":9022,"81434":9023,"81437":9024,"81441":8122,"81454":7224,"81461":5184,"81464":9025,"81469":11555,"81486":11556,"81498":9026,"81506":9027,"81510":11557,"81515":8123,"81521":9028,"81523":11558,"81527":8124,"81533":6755,"81550":11559,"81559":9029,"81564":9030,"81565":11560,"81573":9031,"81577":9032,"81582":11561,"81615":11562,"81629":3838,"81646":11563,"81648":9033,"81659":5185,"81662":6163,"81667":8125,"81669":6164,"81670":5658,"81672":7225,"81673":5659,"81692":8126,"81703":9034,"81704":9035,"81705":9036,"81714":11564,"81732":9037,"81741":11565,"81742":11566,"81743":9038,"81744":9039,"81746":6165,"81752":9040,"81753":5660,"81778":11567,"81783":9041,"81790":9042,"81802":5661,"81803":6166,"81804":9043,"81806":9044,"81807":9045,"81813":5662,"81820":7226,"81825":11568,"81845":5663,"81870":9046,"81871":5664,"81876":9047,"81877":9048,"81883":9049,"81888":9050,"81894":11569,"81895":9051,"81907":3840,"81913":9052,"81921":9053,"81923":5665,"81927":6167,"81934":6168,"81943":5666,"81946":6169,"81947":6170,"81950":7227,"81952":9054,"81959":9055,"81971":9056,"81972":9057,"81973":1678,"81975":11570,"81976":7228,"81977":5667,"81988":9059,"81990":8127,"81993":6171,"82008":8128,"82021":9060,"82025":9061,"82028":9062,"82029":11571,"82031":7229,"82040":6172,"82044":9063,"82047":9064,"82048":9065,"82058":7230,"82068":5186,"82075":11572,"82101":9066,"82104":7231,"82115":5668,"82117":9067,"82120":9068,"82123":7232,"82126":9069,"82131":7233,"82140":11573,"82141":9070,"82142":7234,"82143":9071,"82152":7235,"82156":9072,"82169":11574,"82177":9073,"82185":6173,"82204":7236,"82210":6174,"82211":6175,"82224":4730,"82227":9074,"82231":7237,"82234":9075,"82237":7238,"82238":6176,"82241":9076,"82244":9077,"82247":9078,"82250":9079,"82252":7239,"82254":9080,"82255":7240,"82258":9081,"82264":6756,"82266":7241,"82267":9082,"82268":11575,"82277":9083,"82278":7242,"82279":9084,"82295":3842,"82300":5669,"82301":9085,"82306":9086,"82310":11577,"82320":11578,"82324":9087,"82332":9088,"82356":6177,"82357":5670,"82365":9089,"82366":8129,"82377":9090,"82386":11579,"82395":11580,"82398":4483,"82401":7243,"82417":4731,"82418":4732,"82424":11581,"82425":9091,"82431":7244,"82441":9092,"82442":9093,"82443":8130,"82444":9094,"82450":11582,"82454":8131,"82469":9095,"82470":7245,"82475":6178,"82480":11583,"82481":7246,"82494":11584,"82497":5187,"82498":9096,"82513":6757,"82519":9097,"82531":9098,"82534":6179,"82536":9099,"82544":11585,"82546":9100,"82549":9101,"82552":7247,"82555":9102,"82558":9103,"82564":7248,"82577":9104,"82600":6180,"82601":7249,"82603":9105,"82612":5671,"82620":11586,"82623":9106,"82625":5672,"82626":5673,"82636":9107,"82653":11596,"82658":8132,"82667":6758,"82682":7250,"82684":6181,"82691":11587,"82695":9108,"82701":6182,"82709":8133,"82716":9109,"82724":9110,"82725":5674,"82731":5675,"82734":7251,"82736":9111,"82745":7252,"82746":5676,"82762":812,"82765":5385,"82767":9112,"82769":6183,"82789":6759,"82806":4733,"82807":8134,"82808":11588,"82833":4734,"82840":11589,"82841":4735,"82851":6760,"82852":11590,"82853":11591,"82855":9113,"82865":5386,"82875":11592,"82896":9114,"82899":8135,"82941":11593,"82947":9115,"82970":9116,"82997":8136,"82999":8137,"83013":8138,"83015":8139,"83017":11594,"83018":11595,"83020":11597,"83021":2147,"83064":8140,"83069":8141,"83073":8142,"83076":8143,"83080":8144,"83090":6761,"83117":8145,"83174":4255,"83195":11598,"83224":5387,"83225":5388,"83229":11599,"83230":8146,"83231":11600,"83232":5868,"83234":5869,"83245":5389,"83248":5390,"83249":5391,"83252":6762,"83259":5870,"83314":9117,"83324":11601,"83386":8147,"83455":8148,"83476":9118,"83576":8149,"83580":5392,"83596":5188,"83603":5189,"83604":9119,"83649":8150,"83684":6763,"83687":11602,"83688":11603,"83701":5871,"83702":8151,"83706":5872,"83726":6184,"83738":9120,"83746":5873,"83777":9121,"83782":6764,"83784":3069,"83809":11604,"83832":5874,"83842":4484,"83843":4485,"83844":5190,"83846":5191,"83851":4486,"83856":6765,"83877":11605,"83914":11606,"83916":9122,"83918":11607,"83925":11608,"83926":11609,"83927":11610,"83929":11611,"83930":11612,"83931":11613,"83932":11614,"83933":6766,"83934":11616,"83935":6767,"83937":11615,"83938":6768,"83964":6769,"83981":11617,"83986":11618,"83988":8152,"83994":5192,"83997":5677,"84024":6770,"84036":11619,"84037":11620,"84038":11621,"84039":11622,"84043":5193,"84045":5194,"84049":7253,"84053":7254,"84073":11623,"84074":9123,"84075":11624,"84076":11625,"84077":11626,"84078":11627,"84079":9124,"84081":11628,"84082":3286,"84083":11630,"84138":5393,"84139":6771,"84146":11631,"84184":8153,"84187":11632,"84188":11633,"84189":11634,"84190":11635,"84201":8154,"84230":6772,"84235":6773,"84239":11636,"84260":8155,"84265":11637,"84272":7255,"84273":9125,"84276":8156,"84284":11638,"84289":6774,"84298":9126,"84337":9127,"84339":11639,"84344":6775,"84366":7256,"84401":8157,"84414":5875,"84416":8158,"84419":6776,"84420":6777,"84431":11640,"84432":11641,"84434":11642,"84437":11643,"84450":2664,"84457":6778,"84473":6779,"84514":7257,"84515":6185,"84524":11644,"84525":11645,"84586":5876,"84611":7258,"84613":9128,"84614":9129,"84616":8159,"84629":8160,"84644":8161,"84656":1458,"84664":11646,"84665":11647,"84701":7259,"84715":7260,"84721":11648,"84728":6186,"84731":11649,"84737":9130,"84740":4257,"84763":11651,"84777":4401,"84780":4736,"84781":4402,"84784":4737,"84788":11652,"84789":11653,"84790":11654,"84792":2991,"84793":11656,"84794":11657,"84796":5195,"84813":7261,"84872":9131,"84877":5678,"84880":11658,"84890":3288,"84892":4260,"84908":2152,"84975":9132,"84979":11660,"85009":9133,"85019":4292,"85035":3290,"85037":11662,"85049":11663,"85050":11664,"85053":11665,"85054":11666,"85058":8162,"85070":4262,"85078":7262,"85082":8163,"85089":4264,"85093":9134,"85105":9135,"85147":8164,"85148":9136,"85168":5679,"85172":5196,"85173":5197,"85175":9137,"85180":3292,"85202":11667,"85203":9138,"85206":7263,"85207":9139,"85213":5877,"85214":11668,"85216":11669,"85217":8165,"85224":8166,"85228":577,"85229":5394,"85234":6780,"85352":4266,"85428":9140,"85436":9141,"85536":6187,"85540":11670,"85549":6188,"85552":9142,"85558":9143,"85565":9144,"85567":6781,"85589":8167,"85618":2994,"85638":11671,"85644":9145,"85697":5878,"85699":5879,"85725":11672,"85730":5680,"85794":4487,"85818":2999,"85819":11673,"85831":8168,"85872":7264,"85876":9146,"85884":4270,"85886":9147,"85890":5880,"85903":6782,"85906":6189,"85908":6190,"85909":3859,"85990":11675,"85992":5395,"85998":11676,"85999":5881,"86022":11677,"86050":4272,"86051":3861,"86055":8170,"86056":6783,"86060":11679,"86063":11680,"86067":11681,"86075":6191,"86077":9148,"86085":9149,"86090":11682,"86101":5681,"86119":5682,"86126":11683,"86134":8171,"86161":5198,"86162":5199,"86163":4488,"86164":5200,"86165":5201,"86210":11684,"86214":5396,"86218":5397,"86219":11685,"86220":6784,"86224":5398,"86227":5399,"86241":11686,"86254":1686,"86294":11687,"86295":5882,"86311":11688,"86316":11689,"86319":9150,"86322":1612,"86341":11690,"86342":6785,"86361":11692,"86366":5883,"86367":6786,"86374":11691,"86383":1514,"86391":1876,"86396":8172,"86401":11693,"86402":4489,"86405":11694,"86406":6192,"86407":5202,"86408":4490,"86409":5203,"86412":11695,"86413":11696,"86414":11697,"86415":11698,"86416":11699,"86418":11700,"86420":4738,"86422":8173,"86427":1013,"86430":11702,"86431":5400,"86435":5401,"86436":6193,"86439":5402,"86441":5403,"86444":420,"86468":11703,"86470":11704,"86472":11705,"86480":7265,"86486":3553,"86491":5204,"86492":5205,"86501":11706,"86503":6194,"86512":11707,"86524":4491,"86526":9151,"86555":2278,"86566":5206,"86569":11708,"86570":11709,"86571":11710,"86572":11711,"86573":11712,"86578":5207,"86583":5208,"86584":5209,"86595":11713,"86596":11714,"86597":11715,"86632":9152,"86640":6195,"86664":11716,"86665":11717,"86666":11718,"86667":11719,"86771":11720,"86772":4316,"86779":11721,"86782":4319,"86791":11722,"86797":3002,"86818":6196,"86827":11723,"86832":11724,"86833":11725,"86857":9153,"86858":9154,"86861":9155,"86882":2281,"86883":7266,"86895":4284,"86940":8174,"86978":5210,"86984":11727,"86988":11726,"87038":11728,"87040":11729,"87041":4739,"87064":4740,"87065":6787,"87067":4741,"87096":4276,"87111":6788,"87217":11798,"87218":11895,"87253":11903,"87254":11769,"87255":11920,"87256":11768,"87257":11826,"87258":11898,"87259":11915,"87260":11802,"87261":11860,"87262":11761,"87263":11881,"87264":11741,"87265":11742,"87266":11732,"87267":11987,"87268":11864,"87269":11786,"87270":11943,"87271":11842,"87272":11817,"87273":11862,"87274":11980,"87275":11814,"87276":11833,"87277":11804,"87278":11746,"87279":11947,"87280":11840,"87281":11859,"87282":11765,"87283":11970,"87284":11807,"87285":11856,"87286":11731,"87287":11872,"87288":11847,"87289":11879,"87290":11917,"87291":11937,"87292":11967,"87293":11975,"87294":11941,"87295":11930,"87296":11973,"87297":11887,"87298":11877,"87299":11854,"87300":11868,"87301":11910,"87302":11762,"87303":11870,"87304":11884,"87305":11921,"87306":11963,"87307":11852,"87308":11827,"87309":11878,"87310":11865,"87311":11822,"87312":11945,"87313":11896,"87314":11951,"87315":11932,"87316":11926,"87317":11806,"87318":11950,"87319":11931,"87320":11918,"87321":11960,"87322":11946,"87323":11935,"87324":11894,"87325":11893,"87326":11906,"87327":11902,"87328":11875,"87329":11880,"87330":11823,"87331":11853,"87332":11955,"87333":11844,"87334":11829,"87335":11828,"87336":11759,"87337":11805,"87338":11958,"87339":11889,"87340":11977,"87341":11891,"87343":11944,"87344":11846,"87345":11777,"87346":11905,"87347":11981,"87348":11899,"87349":11858,"87350":11913,"87351":11959,"87352":11972,"87353":11801,"87354":11954,"87355":11974,"87356":11825,"87357":11924,"87358":11965,"87359":11886,"87360":11882,"87361":11966,"87362":11976,"87363":11957,"87364":11799,"87365":11962,"87366":11863,"87367":11892,"87368":11933,"87369":11869,"87370":11821,"87371":11793,"87372":11803,"87373":11737,"87374":11743,"87375":11838,"87376":11739,"87377":11948,"87378":11819,"87379":11857,"87380":11953,"87381":11890,"87382":11850,"87383":11928,"87384":11916,"87385":11873,"87386":11925,"87387":11888,"87388":11919,"87389":11968,"87390":11794,"87391":11784,"87392":11754,"87393":11978,"87394":11885,"87395":11934,"87396":11982,"87397":11773,"87398":11914,"87399":11851,"87400":11866,"87401":11929,"87402":11952,"87403":11837,"87404":11811,"87405":11738,"87406":11755,"87407":11767,"87408":11800,"87409":11764,"87410":11785,"87411":11783,"87412":11763,"87413":11911,"87414":11778,"87415":11983,"87416":11901,"87417":11836,"87418":11810,"87419":11839,"87420":11912,"87421":11845,"87422":11751,"87423":11907,"87424":11988,"87425":11781,"87426":11874,"87427":11979,"87428":11923,"87429":11971,"87430":11908,"87431":11986,"87432":11961,"87433":11815,"87434":11780,"87435":11867,"87436":11782,"87437":11855,"87438":11795,"87439":11740,"87440":11730,"87441":11756,"87442":11752,"87443":11792,"87444":11788,"87445":11897,"87446":11813,"87447":11748,"87448":11736,"87449":11774,"87450":11779,"87451":11733,"87452":11771,"87453":11747,"87454":11832,"87455":11818,"87456":11753,"87457":11830,"87458":11757,"87459":11809,"87460":11835,"87461":11735,"87462":11861,"87463":11796,"87464":11848,"87465":11760,"87466":11789,"87467":11787,"87468":11956,"87469":11824,"87470":11770,"87471":11772,"87472":11831,"87473":11812,"87474":11808,"87475":11936,"87476":11834,"87477":11744,"87478":11790,"87479":11791,"87480":11849,"87481":11734,"87482":11938,"87483":11985,"87484":11816,"87485":11758,"87486":11904,"87487":11766,"87488":11776,"87489":11922,"87490":11909,"87491":11841,"87492":11927,"87493":11820,"87494":11797,"87495":11940,"87496":11900,"87497":11942,"87498":11876,"87499":11871,"87500":11949,"87501":11750,"87502":11883,"87503":11775,"87504":11843,"87505":11749,"87506":11745,"87507":11984,"87508":11939,"87509":11969,"87510":11964,"2070003":0},"1":{"51677":2,"2070003":0},"2":{"5336":192,"5339":202,"33972":85,"34600":44,"34704":3,"64187":212,"64188":222,"2070003":0},"3":{"5336":4,"5339":14,"7585":390,"64187":24,"64188":34,"2070003":0},"4":{"30075":5,"2070003":0},"5":{"219":6,"48865":232,"2070003":0},"6":{"48865":7,"2070003":0},"7":{"25764":11,"31030":10,"57777":12,"59941":13,"64903":9,"66735":8,"2070003":0},"14":{"30075":15,"2070003":0},"15":{"219":16,"48865":239,"2070003":0},"16":{"48865":17,"2070003":0},"17":{"25764":21,"31030":20,"57777":22,"59941":23,"64903":19,"66735":18,"2070003":0},"24":{"30075":25,"2070003":0},"25":{"219":26,"48865":246,"2070003":0},"26":{"48865":27,"2070003":0},"27":{"25764":31,"31030":30,"57777":32,"59941":33,"64903":29,"66735":28,"2070003":0},"34":{"30075":35,"2070003":0},"35":{"219":36,"48865":253,"2070003":0},"36":{"48865":37,"2070003":0},"37":{"25764":41,"31030":40,"57777":42,"59941":43,"64903":39,"66735":38,"2070003":0},"44":{"5336":45,"5339":55,"7585":400,"64187":65,"64188":75,"2070003":0},"45":{"30075":46,"2070003":0},"46":{"219":47,"48865":260,"2070003":0},"47":{"48865":48,"2070003":0},"48":{"25764":52,"31030":51,"57777":53,"59941":54,"64903":50,"66735":49,"2070003":0},"55":{"30075":56,"2070003":0},"56":{"219":57,"48865":267,"2070003":0},"57":{"48865":58,"2070003":0},"58":{"25764":62,"31030":61,"57777":63,"59941":64,"64903":60,"66735":59,"2070003":0},"65":{"30075":66,"2070003":0},"66":{"219":67,"48865":274,"2070003":0},"67":{"48865":68,"2070003":0},"68":{"25764":72,"31030":71,"57777":73,"59941":74,"64903":70,"66735":69,"2070003":0},"75":{"30075":76,"2070003":0},"76":{"219":77,"48865":281,"2070003":0},"77":{"48865":78,"2070003":0},"78":{"25764":82,"31030":81,"57777":83,"59941":84,"64903":80,"66735":79,"2070003":0},"85":{"5336":86,"5339":96,"7585":410,"64187":106,"64188":116,"2070003":0},"86":{"30075":87,"2070003":0},"87":{"219":88,"48865":288,"2070003":0},"88":{"48865":89,"2070003":0},"89":{"25764":93,"31030":92,"57777":94,"59941":95,"64903":91,"66735":90,"2070003":0},"96":{"30075":97,"2070003":0},"97":{"219":98,"48865":295,"2070003":0},"98":{"48865":99,"2070003":0},"99":{"25764":103,"31030":102,"57777":104,"59941":105,"64903":101,"66735":100,"2070003":0},"106":{"30075":107,"2070003":0},"107":{"219":108,"48865":302,"2070003":0},"108":{"48865":109,"2070003":0},"109":{"25764":113,"31030":112,"57777":114,"59941":115,"64903":111,"66735":110,"2070003":0},"116":{"30075":117,"2070003":0},"117":{"219":118,"48865":309,"2070003":0},"118":{"48865":119,"2070003":0},"119":{"25764":123,"31030":122,"57777":124,"59941":125,"64903":121,"66735":120,"2070003":0},"126":{"28167":1377,"34805":127,"38161":1408,"69184":3016,"86164":1374,"2070003":8418},"127":{"47":128,"53668":316,"87219":138,"2070003":0},"128":{"53668":129,"2070003":0},"129":{"47":130,"35047":325,"87219":134,"2070003":0},"130":{"35047":131,"2070003":0},"131":{"38161":132,"2070003":0},"132":{"44547":133,"2070003":0},"134":{"35047":135,"2070003":0},"135":{"38161":136,"2070003":0},"136":{"44547":137,"2070003":0},"138":{"53668":139,"2070003":0},"139":{"47":140,"35047":328,"87219":144,"2070003":0},"140":{"35047":141,"2070003":0},"141":{"38161":142,"2070003":0},"142":{"44547":143,"2070003":0},"144":{"35047":145,"2070003":0},"145":{"38161":146,"2070003":0},"146":{"44547":147,"2070003":0},"148":{"28167":1371,"29406":3994,"34805":149,"38161":1410,"69184":3014,"77599":3995,"86164":1368,"2070003":0},"149":{"47":150,"53668":331,"87219":160,"2070003":0},"150":{"53668":151,"2070003":0},"151":{"47":152,"35047":340,"87219":156,"2070003":0},"152":{"35047":153,"2070003":0},"153":{"38161":154,"2070003":0},"154":{"44547":155,"2070003":0},"156":{"35047":157,"2070003":0},"157":{"38161":158,"2070003":0},"158":{"44547":159,"2070003":0},"160":{"53668":161,"2070003":0},"161":{"47":162,"35047":343,"87219":166,"2070003":0},"162":{"35047":163,"2070003":0},"163":{"38161":164,"2070003":0},"164":{"44547":165,"2070003":0},"166":{"35047":167,"2070003":0},"167":{"38161":168,"2070003":0},"168":{"44547":169,"2070003":0},"170":{"34805":171,"38161":1412,"2070003":10106},"171":{"47":172,"53668":346,"87219":182,"2070003":0},"172":{"53668":173,"2070003":0},"173":{"47":174,"35047":355,"87219":178,"2070003":0},"174":{"35047":175,"2070003":0},"175":{"38161":176,"2070003":0},"176":{"44547":177,"2070003":0},"178":{"35047":179,"2070003":0},"179":{"38161":180,"2070003":0},"180":{"44547":181,"2070003":0},"182":{"53668":183,"2070003":0},"183":{"47":184,"35047":358,"87219":188,"2070003":0},"184":{"35047":185,"2070003":0},"185":{"38161":186,"2070003":0},"186":{"44547":187,"2070003":0},"188":{"35047":189,"2070003":0},"189":{"38161":190,"2070003":0},"190":{"44547":191,"2070003":0},"192":{"30075":193,"2070003":0},"193":{"219":194,"48865":455,"2070003":0},"194":{"48865":195,"2070003":0},"195":{"25764":199,"31030":198,"57777":200,"59941":201,"64903":197,"66735":196,"2070003":0},"202":{"30075":203,"2070003":0},"203":{"219":204,"48865":462,"2070003":0},"204":{"48865":205,"2070003":0},"205":{"25764":209,"31030":208,"57777":210,"59941":211,"64903":207,"66735":206,"2070003":0},"212":{"30075":213,"2070003":0},"213":{"219":214,"48865":469,"2070003":0},"214":{"48865":215,"2070003":0},"215":{"25764":219,"31030":218,"57777":220,"59941":221,"64903":217,"66735":216,"2070003":0},"222":{"30075":223,"2070003":0},"223":{"219":224,"48865":476,"2070003":0},"224":{"48865":225,"2070003":0},"225":{"25764":229,"31030":228,"57777":230,"59941":231,"64903":227,"66735":226,"2070003":0},"232":{"25764":236,"31030":235,"57777":237,"59941":238,"64903":234,"66735":233,"2070003":0},"239":{"25764":243,"31030":242,"57777":244,"59941":245,"64903":241,"66735":240,"2070003":0},"246":{"25764":250,"31030":249,"57777":251,"59941":252,"64903":248,"66735":247,"2070003":0},"253":{"25764":257,"31030":256,"57777":258,"59941":259,"64903":255,"66735":254,"2070003":0},"260":{"25764":264,"31030":263,"57777":265,"59941":266,"64903":262,"66735":261,"2070003":0},"267":{"25764":271,"31030":270,"57777":272,"59941":273,"64903":269,"66735":268,"2070003":0},"274":{"25764":278,"31030":277,"57777":279,"59941":280,"64903":276,"66735":275,"2070003":0},"281":{"25764":285,"31030":284,"57777":286,"59941":287,"64903":283,"66735":282,"2070003":0},"288":{"25764":292,"31030":291,"57777":293,"59941":294,"64903":290,"66735":289,"2070003":0},"295":{"25764":299,"31030":298,"57777":300,"59941":301,"64903":297,"66735":296,"2070003":0},"302":{"25764":306,"31030":305,"57777":307,"59941":308,"64903":304,"66735":303,"2070003":0},"309":{"25764":313,"31030":312,"57777":314,"59941":315,"64903":311,"66735":310,"2070003":0},"316":{"47":317,"35047":483,"87219":321,"2070003":0},"317":{"35047":318,"2070003":0},"318":{"38161":319,"2070003":0},"319":{"44547":320,"2070003":0},"321":{"35047":322,"2070003":0},"322":{"38161":323,"2070003":0},"323":{"44547":324,"2070003":0},"325":{"38161":326,"2070003":0},"326":{"44547":327,"2070003":0},"328":{"38161":329,"2070003":0},"329":{"44547":330,"2070003":0},"331":{"47":332,"35047":486,"87219":336,"2070003":0},"332":{"35047":333,"2070003":0},"333":{"38161":334,"2070003":0},"334":{"44547":335,"2070003":0},"336":{"35047":337,"2070003":0},"337":{"38161":338,"2070003":0},"338":{"44547":339,"2070003":0},"340":{"38161":341,"2070003":0},"341":{"44547":342,"2070003":0},"343":{"38161":344,"2070003":0},"344":{"44547":345,"2070003":0},"346":{"47":347,"35047":489,"87219":351,"2070003":0},"347":{"35047":348,"2070003":0},"348":{"38161":349,"2070003":0},"349":{"44547":350,"2070003":0},"351":{"35047":352,"2070003":0},"352":{"38161":353,"2070003":0},"353":{"44547":354,"2070003":0},"355":{"38161":356,"2070003":0},"356":{"44547":357,"2070003":0},"358":{"38161":359,"2070003":0},"359":{"44547":360,"2070003":0},"361":{"47":362,"28547":492,"87219":376,"2070003":10291},"362":{"28547":363,"2070003":0},"363":{"47":364,"85228":505,"87219":370,"2070003":1957},"364":{"85228":365,"2070003":0},"365":{"47":366,"46973":510,"87219":368,"2070003":0},"366":{"46973":367,"2070003":0},"368":{"46973":369,"2070003":0},"370":{"85228":371,"2070003":0},"371":{"47":372,"46973":511,"87219":374,"2070003":0},"372":{"46973":373,"2070003":0},"374":{"46973":375,"2070003":0},"376":{"28547":377,"2070003":0},"377":{"47":378,"85228":512,"87219":384,"2070003":1958},"378":{"85228":379,"2070003":0},"379":{"47":380,"46973":517,"87219":382,"2070003":0},"380":{"46973":381,"2070003":0},"382":{"46973":383,"2070003":0},"384":{"85228":385,"2070003":0},"385":{"47":386,"46973":518,"87219":388,"2070003":0},"386":{"46973":387,"2070003":0},"388":{"46973":389,"2070003":0},"390":{"8049":523,"20370":524,"34429":521,"34433":520,"48865":391,"57771":522,"59941":519,"66730":525,"77547":526,"2070003":0},"391":{"8049":396,"20370":397,"34429":394,"34433":393,"57771":395,"59941":392,"66730":398,"77547":399,"2070003":0},"400":{"8049":531,"20370":532,"34429":529,"34433":528,"48865":401,"57771":530,"59941":527,"66730":533,"77547":534,"2070003":0},"401":{"8049":406,"20370":407,"34429":404,"34433":403,"57771":405,"59941":402,"66730":408,"77547":409,"2070003":0},"410":{"8049":539,"20370":540,"34429":537,"34433":536,"48865":411,"57771":538,"59941":535,"66730":541,"77547":542,"2070003":0},"411":{"8049":416,"20370":417,"34429":414,"34433":413,"57771":415,"59941":412,"66730":418,"77547":419,"2070003":0},"420":{"51677":421,"2070003":0},"421":{"33972":444,"34600":433,"34704":422,"2070003":0},"422":{"7585":423,"2070003":0},"423":{"8049":547,"20370":548,"34429":545,"34433":544,"48865":424,"57771":546,"59941":543,"66730":549,"77547":550,"2070003":0},"424":{"8049":429,"20370":430,"34429":427,"34433":426,"57771":428,"59941":425,"66730":431,"77547":432,"2070003":0},"433":{"7585":434,"2070003":0},"434":{"8049":555,"20370":556,"34429":553,"34433":552,"48865":435,"57771":554,"59941":551,"66730":557,"77547":558,"2070003":0},"435":{"8049":440,"20370":441,"34429":438,"34433":437,"57771":439,"59941":436,"66730":442,"77547":443,"2070003":0},"444":{"7585":445,"2070003":0},"445":{"8049":563,"20370":564,"34429":561,"34433":560,"48865":446,"57771":562,"59941":559,"66730":565,"77547":566,"2070003":0},"446":{"8049":451,"20370":452,"34429":449,"34433":448,"57771":450,"59941":447,"66730":453,"77547":454,"2070003":0},"455":{"25764":459,"31030":458,"57777":460,"59941":461,"64903":457,"66735":456,"2070003":0},"462":{"25764":466,"31030":465,"57777":467,"59941":468,"64903":464,"66735":463,"2070003":0},"469":{"25764":473,"31030":472,"57777":474,"59941":475,"64903":471,"66735":470,"2070003":0},"476":{"25764":480,"31030":479,"57777":481,"59941":482,"64903":478,"66735":477,"2070003":0},"483":{"38161":484,"2070003":0},"484":{"44547":485,"2070003":0},"486":{"38161":487,"2070003":0},"487":{"44547":488,"2070003":0},"489":{"38161":490,"2070003":0},"490":{"44547":491,"2070003":0},"492":{"47":493,"85228":659,"87219":499,"2070003":3477},"493":{"85228":494,"2070003":0},"494":{"47":495,"46973":664,"87219":497,"2070003":0},"495":{"46973":496,"2070003":0},"497":{"46973":498,"2070003":0},"499":{"85228":500,"2070003":0},"500":{"47":501,"46973":665,"87219":503,"2070003":0},"501":{"46973":502,"2070003":0},"503":{"46973":504,"2070003":0},"505":{"47":506,"46973":666,"87219":508,"2070003":0},"506":{"46973":507,"2070003":0},"508":{"46973":509,"2070003":0},"512":{"47":513,"46973":667,"87219":515,"2070003":0},"513":{"46973":514,"2070003":0},"515":{"46973":516,"2070003":0},"567":{"219":1189,"32791":568,"2070003":0},"568":{"78040":569,"2070003":0},"569":{"7383":570,"2070003":0},"570":{"79559":571,"2070003":0},"572":{"32791":3062,"44653":573,"2070003":0},"573":{"86444":574,"2070003":0},"574":{"34704":575,"2070003":0},"575":{"40662":576,"2070003":0},"577":{"47":578,"1583":3845,"4489":3846,"7670":3224,"7714":3221,"9655":3847,"9877":3848,"10046":3849,"13902":3543,"16157":3350,"16419":3850,"20163":3851,"22687":3122,"24629":3544,"25634":3852,"28362":3222,"28467":3853,"29259":3854,"30445":3855,"30448":3351,"33491":3545,"39020":3352,"41661":3856,"45081":3353,"45621":3546,"51747":3857,"52425":3547,"59452":3223,"61472":3548,"62471":3549,"65734":3550,"69927":3858,"77480":995,"77843":3357,"78040":1245,"79275":3551,"79844":3355,"86067":3356,"87219":584,"2070003":4403},"578":{"1583":2667,"4489":2669,"7670":1603,"7714":1605,"9655":2671,"9877":2673,"10046":2675,"13902":2157,"16157":1758,"16419":2677,"20163":2679,"22687":1461,"24629":2159,"25634":2681,"28362":1607,"28467":2683,"29259":2685,"30445":2687,"30448":1760,"33491":2161,"39020":1762,"41661":2689,"45081":1764,"45621":2163,"51747":2691,"52425":2165,"59452":1609,"61472":2167,"62471":2169,"65734":2171,"69927":2693,"77480":579,"77843":1766,"78040":825,"79275":2173,"79844":1768,"86067":1770,"2070003":0},"579":{"47":580,"52424":1000,"87219":582,"2070003":0},"580":{"52424":581,"2070003":0},"582":{"52424":583,"2070003":0},"584":{"1583":2668,"4489":2670,"7670":1604,"7714":1606,"9655":2672,"9877":2674,"10046":2676,"13902":2158,"16157":1759,"16419":2678,"20163":2680,"22687":1462,"24629":2160,"25634":2682,"28362":1608,"28467":2684,"29259":2686,"30445":2688,"30448":1761,"33491":2162,"39020":1763,"41661":2690,"45081":1765,"45621":2164,"51747":2692,"52425":2166,"59452":1610,"61472":2168,"62471":2170,"65734":2172,"69927":2694,"77480":585,"77843":1767,"78040":830,"79275":2174,"79844":1769,"86067":1771,"2070003":0},"585":{"47":586,"52424":1001,"87219":588,"2070003":0},"586":{"52424":587,"2070003":0},"588":{"52424":589,"2070003":0},"590":{"47":591,"3361":1002,"5231":1274,"49634":3238,"56339":3956,"87219":597,"2070003":6879},"591":{"3361":592,"49634":1626,"2070003":0},"592":{"47":593,"24042":1007,"87219":595,"2070003":0},"593":{"24042":594,"2070003":0},"595":{"24042":596,"2070003":0},"597":{"3361":598,"49634":1627,"2070003":0},"598":{"47":599,"24042":1008,"87219":601,"2070003":0},"599":{"24042":600,"2070003":0},"601":{"24042":602,"2070003":0},"603":{"47":647,"2052":3328,"5673":1062,"80790":604,"85228":3709,"86412":4008,"87219":653,"2070003":0},"604":{"52694":605,"2070003":0},"605":{"35":606,"2070003":0},"606":{"70056":607,"2070003":0},"608":{"47":609,"219":2722,"10987":1041,"52694":1263,"82762":3228,"87219":615,"2070003":0},"609":{"10987":610,"2070003":0},"610":{"47":611,"9006":1046,"87219":613,"2070003":0},"611":{"9006":612,"2070003":0},"613":{"9006":614,"2070003":0},"615":{"10987":616,"2070003":0},"616":{"47":617,"9006":1047,"87219":619,"2070003":0},"617":{"9006":618,"2070003":0},"619":{"9006":620,"2070003":0},"621":{"47":622,"3361":1281,"38161":981,"55299":3459,"78040":1048,"87219":628,"2070003":4429},"622":{"3361":835,"78040":623,"2070003":0},"623":{"47":624,"24338":1053,"87219":626,"2070003":0},"624":{"24338":625,"2070003":0},"626":{"24338":627,"2070003":0},"628":{"3361":840,"78040":629,"2070003":0},"629":{"47":630,"24338":1054,"87219":632,"2070003":0},"630":{"24338":631,"2070003":0},"632":{"24338":633,"2070003":0},"634":{"47":635,"3361":1055,"31431":3993,"47674":3693,"78040":1534,"87219":641,"2070003":10100},"635":{"3361":636,"47674":2382,"2070003":0},"636":{"47":637,"72457":1060,"87219":639,"2070003":0},"637":{"72457":638,"2070003":0},"639":{"72457":640,"2070003":0},"641":{"3361":642,"47674":2383,"2070003":0},"642":{"47":643,"72457":1061,"87219":645,"2070003":0},"643":{"72457":644,"2070003":0},"645":{"72457":646,"2070003":0},"647":{"5673":648,"2070003":0},"648":{"47":649,"395":1067,"87219":651,"2070003":0},"649":{"395":650,"2070003":0},"651":{"395":652,"2070003":0},"653":{"5673":654,"2070003":0},"654":{"47":655,"395":1068,"87219":657,"2070003":0},"655":{"395":656,"2070003":0},"657":{"395":658,"2070003":0},"659":{"47":660,"46973":1069,"87219":662,"2070003":0},"660":{"46973":661,"2070003":0},"662":{"46973":663,"2070003":0},"668":{"47":669,"76982":1109,"87219":675,"2070003":0},"669":{"76982":670,"2070003":0},"670":{"47":671,"43603":1114,"87219":673,"2070003":0},"671":{"43603":672,"2070003":0},"673":{"43603":674,"2070003":0},"675":{"76982":676,"2070003":0},"676":{"47":677,"43603":1115,"87219":679,"2070003":0},"677":{"43603":678,"2070003":0},"679":{"43603":680,"2070003":0},"681":{"47":682,"38161":1116,"87219":688,"2070003":0},"682":{"38161":683,"2070003":0},"683":{"47":684,"13369":1121,"87219":686,"2070003":0},"684":{"13369":685,"2070003":0},"686":{"13369":687,"2070003":0},"688":{"38161":689,"2070003":0},"689":{"47":690,"13369":1122,"87219":692,"2070003":0},"690":{"13369":691,"2070003":0},"692":{"13369":693,"2070003":0},"694":{"47":695,"10987":1145,"35615":3470,"52425":1300,"87219":701,"2070003":0},"695":{"10987":696,"2070003":0},"696":{"47":697,"50853":1150,"87219":699,"2070003":0},"697":{"50853":698,"2070003":0},"699":{"50853":700,"2070003":0},"701":{"10987":702,"2070003":0},"702":{"47":703,"50853":1151,"87219":705,"2070003":0},"703":{"50853":704,"2070003":0},"705":{"50853":706,"2070003":0},"707":{"47":708,"24741":3184,"25820":3185,"30075":1160,"34882":3473,"36692":3186,"36703":3187,"44401":3183,"44653":2424,"45624":3474,"50144":3329,"50415":3715,"50422":3716,"56339":3475,"68161":3717,"72044":3476,"76529":3188,"77841":3472,"78040":1401,"85089":3718,"87219":714,"2070003":4375},"708":{"30075":709,"44401":1546,"50415":2420,"50422":2422,"77841":1954,"2070003":0},"709":{"47":710,"50151":1165,"51704":1169,"87219":712,"2070003":0},"710":{"50151":711,"51704":720,"2070003":0},"712":{"50151":713,"51704":721,"2070003":0},"714":{"30075":715,"44401":1547,"50415":2421,"50422":2423,"77841":1955,"2070003":0},"715":{"47":716,"50151":1166,"51704":1170,"87219":718,"2070003":0},"716":{"50151":717,"51704":722,"2070003":0},"718":{"50151":719,"51704":723,"2070003":0},"724":{"47":725,"3361":1314,"6691":4015,"13397":4017,"42070":4018,"51649":3723,"51677":3012,"52424":1171,"59476":4016,"61215":4019,"87219":731,"2070003":10300},"725":{"3361":871,"6691":2786,"51649":2441,"52424":726,"59476":2788,"2070003":0},"726":{"47":727,"34899":1176,"87219":729,"2070003":0},"727":{"34899":728,"2070003":0},"729":{"34899":730,"2070003":0},"731":{"3361":876,"6691":2787,"51649":2442,"52424":732,"59476":2789,"2070003":0},"732":{"47":733,"34899":1177,"87219":735,"2070003":0},"733":{"34899":734,"2070003":0},"735":{"34899":736,"2070003":0},"737":{"219":738,"2052":3337,"2070003":0},"738":{"28250":739,"2070003":0},"739":{"52694":740,"2070003":0},"740":{"52676":741,"2070003":0},"742":{"47":743,"3361":1182,"34126":4177,"70262":3630,"72183":3276,"87219":749,"2070003":0},"743":{"3361":744,"34126":2918,"72183":1669,"2070003":0},"744":{"47":745,"79716":1187,"87219":747,"2070003":0},"745":{"79716":746,"2070003":0},"747":{"79716":748,"2070003":0},"749":{"3361":750,"34126":2919,"72183":1670,"2070003":0},"750":{"47":751,"79716":1188,"87219":753,"2070003":0},"751":{"79716":752,"2070003":0},"753":{"79716":754,"2070003":0},"755":{"47":756,"10987":1192,"34470":3672,"87219":762,"2070003":0},"756":{"10987":757,"34470":2344,"2070003":0},"757":{"47":758,"12216":1197,"87219":760,"2070003":0},"758":{"12216":759,"2070003":0},"760":{"12216":761,"2070003":0},"762":{"10987":763,"34470":2345,"2070003":0},"763":{"47":764,"12216":1198,"87219":766,"2070003":0},"764":{"12216":765,"2070003":0},"766":{"12216":767,"2070003":0},"768":{"30075":3136,"43689":769,"2070003":0},"769":{"219":770,"2070003":0},"770":{"47612":771,"2070003":0},"771":{"23229":772,"2070003":1210},"773":{"47":774,"78040":1211,"87219":780,"2070003":0},"774":{"78040":775,"2070003":0},"775":{"47":776,"36451":1216,"87219":778,"2070003":0},"776":{"36451":777,"2070003":0},"778":{"36451":779,"2070003":0},"780":{"78040":781,"2070003":0},"781":{"47":782,"36451":1217,"87219":784,"2070003":0},"782":{"36451":783,"2070003":0},"784":{"36451":785,"2070003":0},"786":{"47":787,"3361":1222,"47674":3763,"87219":793,"2070003":0},"787":{"3361":788,"47674":2509,"2070003":0},"788":{"47":789,"69409":1227,"87219":791,"2070003":0},"789":{"69409":790,"2070003":0},"791":{"69409":792,"2070003":0},"793":{"3361":794,"47674":2510,"2070003":0},"794":{"47":795,"69409":1228,"87219":797,"2070003":0},"795":{"69409":796,"2070003":0},"797":{"69409":798,"2070003":0},"799":{"47":800,"3361":1229,"52424":2874,"87219":806,"2070003":0},"800":{"3361":801,"2070003":0},"801":{"47":802,"53437":1234,"87219":804,"2070003":0},"802":{"53437":803,"2070003":0},"804":{"53437":805,"2070003":0},"806":{"3361":807,"2070003":0},"807":{"47":808,"53437":1235,"87219":810,"2070003":0},"808":{"53437":809,"2070003":0},"810":{"53437":811,"2070003":0},"812":{"47":813,"52676":3844,"78040":1238,"87219":819,"2070003":0},"813":{"78040":814,"2070003":0},"814":{"47":815,"19502":1243,"87219":817,"2070003":0},"815":{"19502":816,"2070003":0},"817":{"19502":818,"2070003":0},"819":{"78040":820,"2070003":0},"820":{"47":821,"19502":1244,"87219":823,"2070003":0},"821":{"19502":822,"2070003":0},"823":{"19502":824,"2070003":0},"825":{"47":826,"23082":1250,"87219":828,"2070003":0},"826":{"23082":827,"2070003":0},"828":{"23082":829,"2070003":0},"830":{"47":831,"23082":1251,"87219":833,"2070003":0},"831":{"23082":832,"2070003":0},"833":{"23082":834,"2070003":0},"835":{"47":836,"53385":1286,"87219":838,"2070003":0},"836":{"53385":837,"2070003":0},"838":{"53385":839,"2070003":0},"840":{"47":841,"53385":1287,"87219":843,"2070003":0},"841":{"53385":842,"2070003":0},"843":{"53385":844,"2070003":0},"845":{"47":846,"3361":1288,"87219":852,"2070003":9954},"846":{"3361":847,"2070003":0},"847":{"47":848,"22605":1293,"87219":850,"2070003":0},"848":{"22605":849,"2070003":0},"850":{"22605":851,"2070003":0},"852":{"3361":853,"2070003":0},"853":{"47":854,"22605":1294,"87219":856,"2070003":0},"854":{"22605":855,"2070003":0},"856":{"22605":857,"2070003":0},"858":{"47":859,"14374":3721,"78040":1307,"87219":865,"2070003":0},"859":{"78040":860,"2070003":0},"860":{"47":861,"49128":1312,"87219":863,"2070003":0},"861":{"49128":862,"2070003":0},"863":{"49128":864,"2070003":0},"865":{"78040":866,"2070003":0},"866":{"47":867,"49128":1313,"87219":869,"2070003":0},"867":{"49128":868,"2070003":0},"869":{"49128":870,"2070003":0},"871":{"47":872,"28250":1319,"87219":874,"2070003":0},"872":{"28250":873,"2070003":0},"874":{"28250":875,"2070003":0},"876":{"47":877,"28250":1320,"87219":879,"2070003":0},"877":{"28250":878,"2070003":0},"879":{"28250":880,"2070003":0},"881":{"47":882,"3361":1340,"87219":888,"2070003":0},"882":{"3361":883,"2070003":0},"883":{"47":884,"66339":1345,"87219":886,"2070003":0},"884":{"66339":885,"2070003":0},"886":{"66339":887,"2070003":0},"888":{"3361":889,"2070003":0},"889":{"47":890,"66339":1346,"87219":892,"2070003":0},"890":{"66339":891,"2070003":0},"892":{"66339":893,"2070003":0},"894":{"47":895,"3361":1361,"87219":901,"2070003":0},"895":{"3361":896,"2070003":0},"896":{"47":897,"32628":1366,"87219":899,"2070003":0},"897":{"32628":898,"2070003":0},"899":{"32628":900,"2070003":0},"901":{"3361":902,"2070003":0},"902":{"47":903,"32628":1367,"87219":905,"2070003":0},"903":{"32628":904,"2070003":0},"905":{"32628":906,"2070003":0},"907":{"53385":908,"2070003":0},"908":{"52424":909,"2070003":0},"909":{"55":910,"125":923,"2070003":0},"911":{"53385":912,"2070003":0},"912":{"52424":913,"2070003":0},"913":{"55":914,"125":924,"2070003":0},"915":{"53385":916,"2070003":0},"916":{"52424":917,"2070003":0},"917":{"55":918,"2070003":0},"919":{"53385":920,"2070003":0},"920":{"52424":921,"2070003":0},"921":{"55":922,"125":937,"2070003":0},"925":{"53385":926,"2070003":0},"926":{"52424":927,"2070003":0},"927":{"55":928,"2070003":0},"929":{"53385":930,"2070003":0},"930":{"52424":931,"2070003":0},"931":{"55":932,"2070003":0},"933":{"53385":934,"2070003":0},"934":{"52424":935,"2070003":0},"935":{"55":936,"2070003":0},"938":{"53385":939,"2070003":0},"939":{"52424":940,"2070003":0},"940":{"125":941,"2070003":0},"942":{"12633":948,"12634":953,"12638":943,"27985":963,"27986":968,"27990":958,"2070003":0},"943":{"78040":944,"2070003":0},"944":{"2781":945,"38082":947,"74991":946,"2070003":0},"948":{"78040":949,"2070003":0},"949":{"2781":950,"38082":952,"74991":951,"2070003":0},"953":{"78040":954,"2070003":0},"954":{"2781":955,"38082":957,"74991":956,"2070003":0},"958":{"78040":959,"2070003":0},"959":{"2781":960,"38082":962,"74991":961,"2070003":0},"963":{"78040":964,"2070003":0},"964":{"2781":965,"38082":967,"74991":966,"2070003":0},"968":{"78040":969,"2070003":0},"969":{"2781":970,"38082":972,"74991":971,"2070003":0},"973":{"7383":974,"43689":4294,"2070003":0},"974":{"34429":1407,"48865":975,"2070003":0},"975":{"34433":976,"2070003":0},"977":{"5673":2708,"52676":978,"85228":3298,"2070003":0},"978":{"14722":979,"2070003":0},"979":{"50910":980,"2070003":0},"981":{"77052":982,"2070003":0},"982":{"49128":983,"2070003":0},"984":{"47":985,"27832":1463,"84832":3056,"84851":3057,"87219":988,"2070003":0},"985":{"27832":986,"2070003":0},"986":{"48727":987,"2070003":0},"988":{"27832":989,"2070003":0},"989":{"48727":990,"2070003":0},"991":{"219":1756,"52694":992,"65174":3079,"2070003":0},"992":{"35":993,"2070003":0},"993":{"73357":994,"2070003":0},"995":{"47":996,"52424":1611,"53385":2175,"87219":998,"2070003":0},"996":{"52424":997,"2070003":0},"998":{"52424":999,"2070003":0},"1002":{"47":1003,"24042":1625,"87219":1005,"2070003":0},"1003":{"24042":1004,"2070003":0},"1005":{"24042":1006,"2070003":0},"1009":{"52424":1010,"2070003":0},"1010":{"219":1011,"2070003":0},"1011":{"8561":1012,"2070003":0},"1013":{"38161":1721,"63676":3338,"64182":1014,"2070003":11701},"1014":{"30075":1015,"2070003":0},"1015":{"63676":1016,"2070003":0},"1017":{"47":1832,"5928":1976,"30000":1972,"38161":1723,"59938":1974,"61480":3482,"63676":3339,"64182":1018,"71456":1968,"72045":3416,"83947":1970,"85618":2891,"87219":1834,"2070003":10931},"1018":{"30075":1019,"2070003":0},"1019":{"63676":1020,"2070003":0},"1021":{"47":1772,"5928":1986,"24741":3882,"29234":3469,"30000":1982,"38161":1725,"44653":3036,"59938":1984,"61480":3483,"63676":3340,"64182":1022,"71456":1978,"76529":3123,"76540":3360,"83947":1980,"87219":1774,"2070003":9350},"1022":{"30075":1023,"2070003":0},"1023":{"63676":1024,"2070003":0},"1025":{"5928":1996,"30000":1992,"38161":1727,"59938":1994,"61480":3484,"63676":3341,"64182":1026,"71456":1988,"83947":1990,"2070003":11514},"1026":{"30075":1027,"2070003":0},"1027":{"63676":1028,"2070003":0},"1029":{"47":1487,"5928":2006,"9006":4073,"30000":2002,"38161":1729,"59938":2004,"61480":3485,"63676":3342,"64182":1030,"71456":1998,"72045":3151,"72047":3152,"83947":2000,"87219":1489,"2070003":0},"1030":{"30075":1031,"2070003":0},"1031":{"63676":1032,"2070003":0},"1033":{"47":2727,"52676":1034,"53385":3920,"87219":2729,"2070003":0},"1034":{"77052":1035,"2070003":0},"1035":{"12107":1036,"2070003":0},"1037":{"47":1803,"76540":3388,"80790":1038,"84740":3734,"84908":3248,"87219":1805,"2070003":0},"1038":{"77052":1039,"2070003":0},"1039":{"15235":1040,"2070003":0},"1041":{"47":1042,"9006":1911,"87219":1044,"2070003":0},"1042":{"9006":1043,"2070003":0},"1044":{"9006":1045,"2070003":0},"1048":{"47":1049,"24338":1932,"87219":1051,"2070003":0},"1049":{"24338":1050,"2070003":0},"1051":{"24338":1052,"2070003":0},"1055":{"47":1056,"72457":1943,"87219":1058,"2070003":0},"1056":{"72457":1057,"2070003":0},"1058":{"72457":1059,"2070003":0},"1062":{"47":1063,"395":1953,"87219":1065,"2070003":0},"1063":{"395":1064,"2070003":0},"1065":{"395":1066,"2070003":0},"1070":{"40538":1071,"84830":1080,"2070003":7925},"1071":{"6614":2009,"27777":1076,"58496":2008,"80234":2010,"83784":1072,"2070003":0},"1072":{"6614":1074,"58496":1073,"80234":1075,"2070003":0},"1076":{"6614":1078,"58496":1077,"80234":1079,"2070003":0},"1080":{"6614":2012,"27777":1085,"58496":2011,"80234":2013,"83784":1081,"2070003":0},"1081":{"6614":1083,"58496":1082,"80234":1084,"2070003":0},"1085":{"6614":1087,"58496":1086,"80234":1088,"2070003":0},"1089":{"52424":1090,"2070003":0},"1090":{"77052":1091,"2070003":0},"1091":{"41867":1092,"2070003":0},"1093":{"47":2504,"34306":3762,"52424":1094,"87219":2506,"2070003":0},"1094":{"219":1095,"2070003":0},"1095":{"41867":1096,"2070003":0},"1097":{"47":2657,"34306":3835,"50334":3836,"52424":1098,"87219":2659,"2070003":0},"1098":{"219":1099,"2070003":0},"1099":{"41867":1100,"2070003":0},"1101":{"47":2638,"50334":3826,"52424":1102,"87219":2640,"2070003":0},"1102":{"219":1103,"2070003":0},"1103":{"41867":1104,"2070003":0},"1105":{"47":2391,"50334":3700,"52424":1106,"87219":2393,"2070003":0},"1106":{"219":1107,"2070003":0},"1107":{"41867":1108,"2070003":0},"1109":{"47":1110,"43603":2021,"87219":1112,"2070003":0},"1110":{"43603":1111,"2070003":0},"1112":{"43603":1113,"2070003":0},"1116":{"47":1117,"13369":2125,"87219":1119,"2070003":0},"1117":{"13369":1118,"2070003":0},"1119":{"13369":1120,"2070003":0},"1123":{"219":1124,"8001":3438,"77052":1894,"2070003":0},"1124":{"44582":1125,"2070003":0},"1125":{"57495":1126,"2070003":0},"1127":{"47":1128,"24396":2188,"87219":1131,"2070003":0},"1128":{"24396":1129,"2070003":0},"1129":{"75535":1130,"2070003":0},"1131":{"24396":1132,"2070003":0},"1132":{"75535":1133,"2070003":0},"1134":{"47":1135,"77052":2190,"78040":2341,"87219":1138,"2070003":0},"1135":{"77052":1136,"2070003":0},"1136":{"11488":1137,"2070003":0},"1138":{"77052":1139,"2070003":0},"1139":{"11488":1140,"2070003":0},"1141":{"3361":1142,"2070003":0},"1142":{"21096":1143,"2070003":0},"1143":{"53018":1144,"2070003":0},"1145":{"47":1146,"50853":2212,"87219":1148,"2070003":0},"1146":{"50853":1147,"2070003":0},"1148":{"50853":1149,"2070003":0},"1152":{"5673":1153,"2070003":0},"1153":{"77052":1154,"2070003":0},"1154":{"49128":1155,"2070003":0},"1156":{"5673":1157,"2070003":0},"1157":{"77052":1158,"2070003":0},"1158":{"49128":1159,"2070003":0},"1160":{"47":1161,"50151":2213,"51704":2214,"86895":1956,"87219":1163,"2070003":0},"1161":{"50151":1162,"51704":1167,"2070003":0},"1163":{"50151":1164,"51704":1168,"2070003":0},"1171":{"47":1172,"34899":2215,"87219":1174,"2070003":0},"1172":{"34899":1173,"2070003":0},"1174":{"34899":1175,"2070003":0},"1178":{"219":1179,"58689":4144,"79253":3627,"2070003":0},"1179":{"79241":1180,"2070003":0},"1180":{"52676":1181,"2070003":0},"1182":{"47":1183,"79716":2257,"87219":1185,"2070003":0},"1183":{"79716":1184,"2070003":0},"1185":{"79716":1186,"2070003":0},"1189":{"35624":1236,"44582":1190,"2070003":0},"1190":{"57495":1191,"2070003":0},"1192":{"47":1193,"12216":2343,"87219":1195,"2070003":0},"1193":{"12216":1194,"2070003":0},"1195":{"12216":1196,"2070003":0},"1199":{"47":1696,"8282":1200,"43722":3676,"44107":3301,"87219":1698,"2070003":9542},"1200":{"52424":1201,"2070003":0},"1201":{"34882":1202,"2070003":0},"1203":{"47":1204,"75664":2353,"87219":1207,"2070003":0},"1204":{"75664":1205,"2070003":0},"1205":{"9395":1206,"2070003":0},"1207":{"75664":1208,"2070003":0},"1208":{"9395":1209,"2070003":0},"1211":{"47":1212,"36451":2456,"87219":1214,"2070003":0},"1212":{"36451":1213,"2070003":0},"1214":{"36451":1215,"2070003":0},"1218":{"47":2462,"219":1219,"13554":3736,"16129":3189,"32791":2014,"35615":1714,"41867":3492,"53018":3737,"87219":2464,"2070003":0},"1219":{"6614":1321,"35624":1220,"2070003":0},"1220":{"57495":1221,"2070003":0},"1222":{"47":1223,"69409":2508,"87219":1225,"2070003":0},"1223":{"69409":1224,"2070003":0},"1225":{"69409":1226,"2070003":0},"1229":{"47":1230,"53437":2511,"87219":1232,"2070003":0},"1230":{"53437":1231,"2070003":0},"1232":{"53437":1233,"2070003":0},"1236":{"57495":1237,"2070003":0},"1238":{"47":1239,"19502":2663,"87219":1241,"2070003":0},"1239":{"19502":1240,"2070003":0},"1241":{"19502":1242,"2070003":0},"1245":{"47":1246,"23082":2695,"87219":1248,"2070003":0},"1246":{"23082":1247,"2070003":0},"1248":{"23082":1249,"2070003":0},"1252":{"9838":2706,"53049":1253,"2070003":0},"1253":{"9838":1254,"2070003":0},"1254":{"75535":1255,"2070003":0},"1256":{"47":1257,"8262":3890,"10513":3891,"11787":2720,"87219":1260,"2070003":0},"1257":{"11787":1258,"2070003":0},"1258":{"13533":1259,"2070003":0},"1260":{"11787":1261,"2070003":0},"1261":{"13533":1262,"2070003":0},"1263":{"35":1264,"2070003":0},"1264":{"72612":1265,"2070003":0},"1266":{"71271":1267,"2070003":0},"1267":{"35":1268,"2070003":0},"1268":{"34906":1269,"2070003":0},"1270":{"3361":1271,"2070003":8341},"1271":{"82657":1272,"2070003":0},"1272":{"61045":1273,"2070003":0},"1274":{"219":1275,"2070003":0},"1275":{"58691":1276,"2070003":0},"1277":{"35":1278,"2070003":4846},"1278":{"30000":1279,"2070003":0},"1279":{"11196":1280,"2070003":2747},"1281":{"47":1282,"53385":2751,"87219":1284,"2070003":0},"1282":{"53385":1283,"2070003":0},"1284":{"53385":1285,"2070003":0},"1288":{"47":1289,"22605":2752,"87219":1291,"2070003":0},"1289":{"22605":1290,"2070003":0},"1291":{"22605":1292,"2070003":0},"1295":{"52694":1296,"2070003":0},"1296":{"35":1297,"2070003":0},"1297":{"43583":1298,"85838":1299,"2070003":0},"1300":{"77052":1301,"2070003":0},"1301":{"34330":1302,"2070003":0},"1303":{"32791":3068,"74919":3584,"77052":1304,"2070003":0},"1304":{"48468":2763,"77841":1305,"2070003":0},"1305":{"7714":1306,"2070003":0},"1307":{"47":1308,"49128":2780,"87219":1310,"2070003":0},"1308":{"49128":1309,"2070003":0},"1310":{"49128":1311,"2070003":0},"1314":{"47":1315,"28250":2785,"87219":1317,"2070003":0},"1315":{"28250":1316,"2070003":0},"1317":{"28250":1318,"2070003":0},"1321":{"85005":1322,"2070003":0},"1323":{"35":1324,"2070003":0},"1324":{"47":1325,"61535":2824,"87219":1327,"2070003":0},"1325":{"61535":1326,"2070003":0},"1327":{"61535":1328,"2070003":0},"1329":{"52694":1330,"2070003":0},"1330":{"35":1331,"2070003":0},"1331":{"76529":1332,"2070003":0},"1333":{"47":1334,"24298":2841,"87219":1337,"2070003":0},"1334":{"24298":1335,"2070003":0},"1335":{"19614":1336,"2070003":0},"1337":{"24298":1338,"2070003":0},"1338":{"19614":1339,"2070003":0},"1340":{"47":1341,"66339":2879,"87219":1343,"2070003":0},"1341":{"66339":1342,"2070003":0},"1343":{"66339":1344,"2070003":0},"1347":{"47":1348,"8001":4182,"20260":2940,"87219":1351,"2070003":0},"1348":{"8001":2079,"20260":1349,"2070003":0},"1349":{"10785":1350,"2070003":0},"1351":{"8001":2080,"20260":1352,"2070003":0},"1352":{"10785":1353,"2070003":0},"1354":{"47":1355,"68898":2960,"87219":1358,"2070003":0},"1355":{"68898":1356,"2070003":0},"1356":{"79868":1357,"2070003":0},"1358":{"68898":1359,"2070003":0},"1359":{"79868":1360,"2070003":0},"1361":{"47":1362,"32628":2984,"87219":1364,"2070003":0},"1362":{"32628":1363,"2070003":0},"1364":{"32628":1365,"2070003":0},"1368":{"69184":1369,"2070003":0},"1369":{"52424":1370,"2070003":0},"1371":{"69184":1372,"2070003":0},"1372":{"52424":1373,"2070003":0},"1374":{"69184":1375,"2070003":0},"1375":{"52424":1376,"2070003":0},"1377":{"69184":1378,"2070003":0},"1378":{"52424":1379,"2070003":0},"1380":{"2450":1381,"59842":4297,"59846":4298,"77052":3021,"2070003":0},"1381":{"59842":3024,"59846":3025,"77052":1382,"2070003":0},"1382":{"59842":1383,"59846":1384,"2070003":0},"1385":{"219":1386,"2070003":0},"1386":{"68216":1387,"2070003":0},"1387":{"52424":1388,"2070003":0},"1389":{"78040":1390,"2070003":10093},"1390":{"15866":1394,"31027":1395,"38082":1391,"46510":1393,"66734":1392,"68442":1396,"68447":1397,"2070003":0},"1398":{"5231":1399,"2070003":0},"1399":{"32791":1400,"2070003":0},"1401":{"6614":1402,"32628":1403,"2070003":0},"1404":{"47":2608,"32791":1405,"70947":3816,"87219":2610,"2070003":0},"1405":{"5231":1406,"2070003":0},"1408":{"44547":1409,"2070003":0},"1410":{"44547":1411,"2070003":0},"1412":{"44547":1413,"2070003":0},"1414":{"38161":1415,"2070003":10654},"1415":{"44547":1416,"2070003":0},"1417":{"47":1737,"3361":1418,"6481":3081,"7693":3080,"23509":3083,"27832":3787,"43111":3086,"47674":3345,"52425":3082,"87219":1739,"2070003":4392},"1418":{"86566":1419,"2070003":0},"1420":{"47":1421,"5551":3513,"15804":3117,"15805":3118,"16221":3514,"20874":3161,"21192":3277,"22030":3515,"22443":3162,"22926":3163,"23454":3164,"24629":3516,"29300":4187,"30255":4188,"34668":3165,"38036":3517,"38489":3421,"44726":3793,"45081":3518,"57463":3166,"63391":3794,"63681":3519,"64112":3167,"64401":3795,"66722":3119,"66730":3087,"74414":3796,"74416":3797,"74868":3520,"75077":3798,"78344":3422,"78395":3423,"86430":3799,"87219":1423,"2070003":0},"1421":{"5551":2081,"15804":1452,"15805":1454,"16221":2083,"20874":1500,"21192":1671,"22030":2085,"22443":1502,"22926":1504,"23454":1506,"24629":2087,"29300":2942,"30255":2944,"34668":1508,"38036":2089,"38489":1857,"44726":2563,"45081":2091,"57463":1510,"63391":2565,"63681":2093,"64112":1512,"64401":2567,"66722":1456,"66730":1422,"74414":2569,"74416":2571,"74868":2095,"75077":2573,"78344":1859,"78395":1861,"86430":2575,"2070003":0},"1423":{"5551":2082,"15804":1453,"15805":1455,"16221":2084,"20874":1501,"21192":1672,"22030":2086,"22443":1503,"22926":1505,"23454":1507,"24629":2088,"29300":2943,"30255":2945,"34668":1509,"38036":2090,"38489":1858,"44726":2564,"45081":2092,"57463":1511,"63391":2566,"63681":2094,"64112":1513,"64401":2568,"66722":1457,"66730":1424,"74414":2570,"74416":2572,"74868":2096,"75077":2574,"78344":1860,"78395":1862,"86430":2576,"2070003":0},"1425":{"1578":3090,"3361":1426,"30037":3089,"37374":3092,"41307":3093,"62588":3094,"74456":3091,"2070003":0},"1426":{"66172":1427,"2070003":0},"1428":{"47":1429,"14402":3102,"62267":3468,"87219":1431,"2070003":0},"1429":{"14402":1430,"62267":1946,"2070003":0},"1431":{"14402":1432,"62267":1947,"2070003":0},"1433":{"47":1434,"82762":3729,"87219":1436,"2070003":0},"1434":{"82762":1435,"2070003":0},"1436":{"82762":1437,"2070003":0},"1438":{"30075":1439,"2070003":0},"1439":{"41270":1440,"2070003":0},"1441":{"52676":4066,"82762":1442,"2070003":0},"1442":{"78040":1443,"2070003":0},"1444":{"23509":2833,"82762":1445,"2070003":0},"1445":{"78040":1446,"2070003":0},"1447":{"47":1448,"44570":3112,"87219":1450,"2070003":10880},"1448":{"44570":1449,"2070003":0},"1450":{"44570":1451,"2070003":0},"1458":{"52676":1459,"53385":2276,"2070003":0},"1459":{"2104":1460,"2070003":0},"1463":{"48727":1464,"2070003":0},"1465":{"47":1466,"73688":3137,"87219":1468,"2070003":4952},"1466":{"73688":1467,"2070003":0},"1468":{"73688":1469,"2070003":0},"1470":{"47":1471,"28860":3479,"32974":3480,"47674":3332,"56089":3333,"58906":3725,"59715":3726,"61480":3481,"65302":3145,"72057":3105,"72910":3728,"76679":3727,"87219":1473,"2070003":0},"1471":{"28860":1964,"32974":1966,"47674":1710,"56089":1712,"58906":2443,"59715":2445,"65302":1472,"76679":2447,"2070003":0},"1473":{"28860":1965,"32974":1967,"47674":1711,"56089":1713,"58906":2444,"59715":2446,"65302":1474,"76679":2448,"2070003":0},"1475":{"47":1476,"73688":3146,"73787":3147,"87219":1478,"2070003":4982},"1476":{"73688":1477,"73787":1480,"2070003":0},"1478":{"73688":1479,"73787":1481,"2070003":0},"1482":{"47":1483,"7714":3389,"10046":3595,"16518":3390,"28467":4037,"32903":4038,"34882":3596,"36692":3251,"36703":3252,"41306":3391,"44653":4039,"50144":3253,"67060":3249,"70573":3250,"76529":3149,"76540":3392,"77843":3148,"85882":3150,"87219":1485,"2070003":6979},"1483":{"7714":1807,"10046":2232,"16518":1809,"28467":2802,"32903":2804,"41306":1811,"67060":1649,"70573":1651,"76540":1813,"77843":1484,"2070003":0},"1485":{"7714":1808,"10046":2233,"16518":1810,"28467":2803,"32903":2805,"41306":1812,"67060":1650,"70573":1652,"76540":1814,"77843":1486,"2070003":0},"1487":{"72045":1488,"72047":1491,"2070003":0},"1489":{"72045":1490,"72047":1492,"2070003":0},"1493":{"47":1494,"5808":3155,"22602":3621,"73688":3153,"73787":3154,"87219":1496,"2070003":4463},"1494":{"73688":1495,"73787":1498,"2070003":0},"1496":{"73688":1497,"73787":1499,"2070003":0},"1514":{"47":1515,"14402":3552,"68671":3863,"68801":3864,"85078":3177,"87219":1517,"2070003":0},"1515":{"14402":2176,"68671":2696,"68801":2698,"85078":1516,"2070003":0},"1517":{"14402":2177,"68671":2697,"68801":2699,"85078":1518,"2070003":0},"1519":{"47":1520,"9186":3178,"87219":1522,"2070003":6197},"1520":{"9186":1521,"2070003":0},"1522":{"9186":1523,"2070003":0},"1524":{"47":1525,"82762":3179,"87219":1527,"2070003":0},"1525":{"82762":1526,"2070003":0},"1527":{"82762":1528,"2070003":0},"1529":{"47":1530,"44401":3180,"52425":3299,"87219":1532,"2070003":7382},"1530":{"44401":1531,"2070003":0},"1532":{"44401":1533,"2070003":0},"1534":{"47404":1535,"2070003":0},"1536":{"47":1537,"28082":3181,"87219":1539,"2070003":0},"1537":{"28082":1538,"2070003":0},"1539":{"28082":1540,"2070003":0},"1541":{"47":1542,"44401":3182,"79749":3467,"87219":1544,"2070003":10146},"1542":{"44401":1543,"79749":1944,"2070003":0},"1544":{"44401":1545,"79749":1945,"2070003":0},"1548":{"47":1549,"32507":3192,"87219":1551,"2070003":0},"1549":{"32507":1550,"2070003":0},"1551":{"32507":1552,"2070003":0},"1553":{"47":1554,"56064":3193,"87219":1556,"2070003":0},"1554":{"56064":1555,"2070003":0},"1556":{"56064":1557,"2070003":0},"1558":{"47":1559,"34815":3194,"87219":1561,"2070003":0},"1559":{"34815":1560,"2070003":0},"1561":{"34815":1562,"2070003":0},"1563":{"47":1564,"9212":3195,"87219":1566,"2070003":0},"1564":{"9212":1565,"2070003":0},"1566":{"9212":1567,"2070003":0},"1568":{"47":2052,"28015":3760,"34282":3761,"41727":3503,"77052":1569,"87219":2054,"2070003":0},"1569":{"10944":1570,"36208":1658,"51644":1571,"2070003":0},"1572":{"47":1573,"82762":3204,"87219":1575,"2070003":0},"1573":{"82762":1574,"2070003":0},"1575":{"82762":1576,"2070003":0},"1577":{"47":1578,"27832":3206,"87219":1580,"2070003":0},"1578":{"27832":1579,"2070003":0},"1580":{"27832":1581,"2070003":0},"1582":{"47":1583,"29120":3213,"34306":3214,"87219":1585,"2070003":0},"1583":{"29120":1584,"34306":1587,"2070003":0},"1585":{"29120":1586,"34306":1588,"2070003":0},"1589":{"47":1590,"27891":3823,"67060":3215,"70573":3216,"83729":4224,"87219":1592,"2070003":5375},"1590":{"27891":2634,"67060":1591,"70573":1594,"2070003":0},"1592":{"27891":2635,"67060":1593,"70573":1595,"2070003":0},"1596":{"47":1597,"29569":3218,"32974":3531,"35926":3219,"51693":3532,"61480":3533,"87219":1599,"2070003":11465},"1597":{"29569":1598,"32974":2126,"35926":1601,"51693":2128,"61480":2130,"2070003":0},"1599":{"29569":1600,"32974":2127,"35926":1602,"51693":2129,"61480":2131,"2070003":0},"1612":{"47":1613,"56064":3225,"87219":1615,"2070003":0},"1613":{"56064":1614,"2070003":0},"1615":{"56064":1616,"2070003":0},"1617":{"47":1618,"9006":3233,"44653":3919,"87219":1620,"2070003":0},"1618":{"9006":1619,"2070003":0},"1620":{"9006":1621,"2070003":0},"1622":{"52424":1623,"2070003":0},"1623":{"19640":1624,"2070003":0},"1628":{"47":1629,"44401":3240,"87219":1631,"2070003":4917},"1629":{"44401":1630,"2070003":0},"1631":{"44401":1632,"2070003":0},"1633":{"46317":1634,"2070003":10174},"1634":{"23906":1635,"2070003":0},"1636":{"47":1637,"70573":3243,"82762":3998,"87219":1639,"2070003":4435},"1637":{"70573":1638,"2070003":0},"1639":{"70573":1640,"2070003":0},"1641":{"47":1642,"6327":3247,"87219":1644,"2070003":10244},"1642":{"6327":1643,"2070003":0},"1644":{"6327":1645,"2070003":0},"1646":{"47":2221,"41965":3590,"52676":1647,"65595":3591,"87219":2223,"2070003":5515},"1647":{"24338":1648,"2070003":0},"1653":{"47":1654,"20895":3259,"22602":3611,"87219":1656,"2070003":0},"1654":{"20895":1655,"2070003":0},"1656":{"20895":1657,"2070003":0},"1659":{"47":1660,"8632":3274,"40041":3626,"87219":1662,"2070003":0},"1660":{"8632":1661,"2070003":0},"1662":{"8632":1663,"2070003":0},"1664":{"47":1665,"70573":3275,"87219":1667,"2070003":0},"1665":{"70573":1666,"2070003":0},"1667":{"70573":1668,"2070003":0},"1673":{"47":1674,"51649":3804,"68483":3805,"86324":3278,"87219":1676,"2070003":0},"1674":{"51649":2587,"68483":2589,"86324":1675,"2070003":0},"1676":{"51649":2588,"68483":2590,"86324":1677,"2070003":0},"1678":{"47":1679,"70573":3285,"87219":1681,"2070003":9058},"1679":{"70573":1680,"2070003":0},"1681":{"70573":1682,"2070003":0},"1683":{"32791":3458,"38161":3239,"51677":1684,"2070003":0},"1684":{"84877":1685,"2070003":0},"1686":{"47":1687,"34815":3294,"87219":1689,"2070003":0},"1687":{"34815":1688,"2070003":0},"1689":{"34815":1690,"2070003":0},"1691":{"47":1692,"13653":3300,"65060":3442,"87219":1694,"2070003":0},"1692":{"13653":1693,"65060":1912,"2070003":0},"1694":{"13653":1695,"65060":1913,"2070003":0},"1696":{"43722":2351,"44107":1697,"2070003":0},"1698":{"43722":2352,"44107":1699,"2070003":0},"1700":{"47":1701,"32807":3330,"87219":1703,"2070003":0},"1701":{"32807":1702,"2070003":0},"1703":{"32807":1704,"2070003":0},"1705":{"47":1706,"68214":3331,"87219":1708,"2070003":10323},"1706":{"68214":1707,"2070003":0},"1708":{"68214":1709,"2070003":0},"1714":{"72057":1715,"2070003":0},"1716":{"47":1717,"47674":3336,"87219":1719,"2070003":10791},"1717":{"47674":1718,"2070003":0},"1719":{"47674":1720,"2070003":0},"1721":{"63676":1722,"2070003":0},"1723":{"63676":1724,"2070003":0},"1725":{"63676":1726,"2070003":0},"1727":{"63676":1728,"2070003":0},"1729":{"63676":1730,"2070003":0},"1731":{"38161":1732,"63676":3343,"2070003":0},"1732":{"63676":1733,"2070003":0},"1734":{"38161":1735,"63676":3344,"2070003":6200},"1735":{"63676":1736,"2070003":0},"1737":{"27832":2546,"47674":1738,"2070003":0},"1739":{"27832":2547,"47674":1740,"2070003":0},"1741":{"47":1742,"47674":3346,"87219":1744,"2070003":0},"1742":{"47674":1743,"2070003":0},"1744":{"47674":1745,"2070003":0},"1746":{"47":1747,"60612":3348,"87219":1749,"2070003":0},"1747":{"60612":1748,"2070003":0},"1749":{"60612":1750,"2070003":0},"1751":{"47":1752,"36178":3349,"76856":3831,"87219":1754,"2070003":0},"1752":{"36178":1753,"76856":2644,"2070003":0},"1754":{"36178":1755,"76856":2645,"2070003":0},"1756":{"59994":1757,"2070003":0},"1772":{"76540":1773,"2070003":0},"1774":{"76540":1775,"2070003":0},"1776":{"47":1777,"53668":3365,"87219":1779,"2070003":0},"1777":{"53668":1778,"2070003":0},"1779":{"53668":1780,"2070003":0},"1781":{"19576":1782,"2070003":0},"1782":{"45247":1783,"2070003":0},"1784":{"47":1785,"15376":3373,"15405":3374,"87219":1787,"2070003":4417},"1785":{"15376":1786,"15405":1789,"2070003":0},"1787":{"15376":1788,"15405":1790,"2070003":0},"1791":{"47":1792,"15376":3381,"15405":3382,"87219":1794,"2070003":6917},"1792":{"15376":1793,"15405":1796,"2070003":0},"1794":{"15376":1795,"15405":1797,"2070003":0},"1798":{"47":1799,"14962":4012,"18026":3385,"46017":4013,"72622":4014,"87219":1801,"2070003":0},"1799":{"14962":2774,"18026":1800,"46017":2776,"72622":2778,"2070003":0},"1801":{"14962":2775,"18026":1802,"46017":2777,"72622":2779,"2070003":0},"1803":{"76540":1804,"2070003":0},"1805":{"76540":1806,"2070003":0},"1815":{"4373":3395,"7590":3403,"14999":3401,"15089":3405,"23770":3408,"30000":3400,"35047":3407,"37374":3406,"49154":3397,"50701":1816,"57739":3409,"59938":3398,"71090":3399,"76256":3404,"83963":3396,"85958":3402,"2070003":6031},"1816":{"4373":1817,"7590":1825,"14999":1823,"15089":1827,"23770":1830,"30000":1822,"35047":1829,"37374":1828,"49154":1819,"57739":1831,"59938":1820,"71090":1821,"76256":1826,"83963":1818,"85958":1824,"2070003":0},"1832":{"72045":1833,"2070003":0},"1834":{"72045":1835,"2070003":0},"1836":{"47":1837,"70573":3418,"87219":1839,"2070003":0},"1837":{"70573":1838,"2070003":0},"1839":{"70573":1840,"2070003":0},"1841":{"47":1842,"68447":3321,"76529":3158,"76540":3419,"87219":1844,"2070003":0},"1842":{"76540":1843,"2070003":0},"1844":{"76540":1845,"2070003":0},"1846":{"77052":1847,"2070003":0},"1847":{"65562":1848,"2070003":0},"1849":{"47":1850,"38161":3420,"87219":1852,"2070003":0},"1850":{"38161":1851,"2070003":0},"1852":{"38161":1853,"2070003":0},"1854":{"3361":1855,"2070003":0},"1855":{"5318":1856,"2070003":0},"1863":{"47":1864,"19504":3808,"34306":4190,"69553":3058,"69554":3059,"72623":4191,"76529":3168,"76540":3424,"87219":1866,"2070003":0},"1864":{"19504":2591,"34306":2951,"72623":2953,"76540":1865,"2070003":0},"1866":{"19504":2592,"34306":2952,"72623":2954,"76540":1867,"2070003":0},"1868":{"41882":2636,"54381":4227,"78040":1869,"2070003":0},"1869":{"76124":1870,"2070003":0},"1871":{"47":1872,"70063":3429,"87219":1874,"2070003":0},"1872":{"70063":1873,"2070003":0},"1874":{"70063":1875,"2070003":0},"1876":{"47":1877,"24393":3430,"87219":1879,"2070003":0},"1877":{"24393":1878,"2070003":0},"1879":{"24393":1880,"2070003":0},"1881":{"47":1882,"5046":3433,"25188":3434,"25476":3435,"38021":3651,"38360":3436,"50853":3650,"65174":3297,"65732":3437,"87219":1884,"2070003":0},"1882":{"5046":1883,"25188":1886,"25476":1888,"38021":2286,"38360":1890,"50853":2288,"65732":1892,"2070003":0},"1884":{"5046":1885,"25188":1887,"25476":1889,"38021":2287,"38360":1891,"50853":2289,"65732":1893,"2070003":0},"1894":{"8001":1895,"62494":2295,"2070003":0},"1896":{"47":1897,"39475":3439,"87219":1899,"2070003":0},"1897":{"39475":1898,"2070003":0},"1899":{"39475":1900,"2070003":0},"1901":{"47":1902,"34735":3440,"82762":3883,"87219":1904,"2070003":0},"1902":{"34735":1903,"2070003":0},"1904":{"34735":1905,"2070003":0},"1906":{"47":1907,"82762":3441,"87219":1909,"2070003":0},"1907":{"82762":1908,"2070003":0},"1909":{"82762":1910,"2070003":0},"1914":{"47":1915,"27832":3446,"87219":1917,"2070003":0},"1915":{"27832":1916,"2070003":0},"1917":{"27832":1918,"2070003":0},"1919":{"47":1920,"25521":3955,"52676":2375,"87219":1922,"2070003":9701},"1920":{"25521":2745,"52676":1921,"2070003":0},"1922":{"25521":2746,"52676":1923,"2070003":0},"1924":{"77052":1925,"2070003":0},"1925":{"32803":1926,"2070003":0},"1927":{"47":1928,"27832":3457,"87219":1930,"2070003":0},"1928":{"27832":1929,"2070003":0},"1930":{"27832":1931,"2070003":0},"1933":{"47":1934,"45297":3460,"87219":1936,"2070003":0},"1934":{"45297":1935,"2070003":0},"1936":{"45297":1937,"2070003":0},"1938":{"47":1939,"66802":3461,"77052":2205,"82762":3992,"87219":1941,"2070003":0},"1939":{"66802":1940,"2070003":0},"1941":{"66802":1942,"2070003":0},"1948":{"47":1949,"44401":3471,"49159":3699,"87219":1951,"2070003":0},"1949":{"44401":1950,"49159":2389,"2070003":0},"1951":{"44401":1952,"49159":2390,"2070003":0},"1959":{"47":1960,"34890":3478,"87219":1962,"2070003":0},"1960":{"34890":1961,"2070003":0},"1962":{"34890":1963,"2070003":0},"1968":{"61480":1969,"2070003":0},"1970":{"61480":1971,"2070003":0},"1972":{"61480":1973,"2070003":0},"1974":{"61480":1975,"2070003":0},"1976":{"61480":1977,"2070003":0},"1978":{"61480":1979,"2070003":0},"1980":{"61480":1981,"2070003":0},"1982":{"61480":1983,"2070003":0},"1984":{"61480":1985,"2070003":0},"1986":{"61480":1987,"2070003":0},"1988":{"61480":1989,"2070003":0},"1990":{"61480":1991,"2070003":0},"1992":{"61480":1993,"2070003":0},"1994":{"61480":1995,"2070003":0},"1996":{"61480":1997,"2070003":0},"1998":{"61480":1999,"2070003":0},"2000":{"61480":2001,"2070003":0},"2002":{"61480":2003,"2070003":0},"2004":{"61480":2005,"2070003":0},"2006":{"61480":2007,"2070003":0},"2014":{"76137":2015,"2070003":0},"2016":{"219":2019,"40733":2017,"71456":2495,"77052":2497,"2070003":0},"2017":{"41867":2018,"2070003":0},"2019":{"41867":2020,"2070003":0},"2022":{"47":2023,"32267":3493,"38103":3608,"77516":4065,"87219":2025,"2070003":0},"2023":{"32267":2024,"77516":2831,"2070003":0},"2025":{"32267":2026,"77516":2832,"2070003":0},"2027":{"47":2028,"29066":3494,"30028":3744,"87219":2030,"2070003":0},"2028":{"29066":2029,"30028":2476,"2070003":0},"2030":{"29066":2031,"30028":2477,"2070003":0},"2032":{"47":2033,"27482":3309,"83252":3499,"87219":2035,"2070003":0},"2033":{"83252":2034,"2070003":0},"2035":{"83252":2036,"2070003":0},"2037":{"47":2038,"13787":3500,"67252":4099,"87219":2040,"2070003":0},"2038":{"13787":2039,"2070003":0},"2040":{"13787":2041,"2070003":0},"2042":{"47":2043,"29066":3501,"87219":2045,"2070003":7814},"2043":{"29066":2044,"2070003":0},"2045":{"29066":2046,"2070003":0},"2047":{"47":2048,"801":3618,"17598":3619,"32791":3065,"35800":3502,"43603":4281,"87219":2050,"2070003":0},"2048":{"801":2249,"17598":2251,"35800":2049,"2070003":0},"2050":{"801":2250,"17598":2252,"35800":2051,"2070003":0},"2052":{"41727":2053,"2070003":0},"2054":{"41727":2055,"2070003":0},"2056":{"47":2057,"59560":3504,"87219":2059,"2070003":10956},"2057":{"59560":2058,"2070003":0},"2059":{"59560":2060,"2070003":0},"2061":{"3361":2534,"78040":2062,"2070003":6622},"2062":{"34282":2063,"2070003":0},"2064":{"47":2065,"9996":3507,"87219":2067,"2070003":0},"2065":{"9996":2066,"2070003":0},"2067":{"9996":2068,"2070003":0},"2069":{"47":2070,"44570":3510,"87219":2072,"2070003":0},"2070":{"44570":2071,"2070003":0},"2072":{"44570":2073,"2070003":0},"2074":{"47":2075,"63622":3511,"87219":2077,"2070003":11153},"2075":{"63622":2076,"2070003":0},"2077":{"63622":2078,"2070003":0},"2097":{"52424":2098,"2070003":0},"2098":{"61143":2099,"2070003":0},"2100":{"47":2101,"25634":3523,"87219":2103,"2070003":0},"2101":{"25634":2102,"2070003":0},"2103":{"25634":2104,"2070003":0},"2105":{"47":2106,"5097":3209,"42297":3524,"43150":3821,"69153":3210,"87219":2108,"2070003":11337},"2106":{"42297":2107,"43150":2632,"2070003":0},"2108":{"42297":2109,"43150":2633,"2070003":0},"2110":{"47":2111,"42297":3525,"87219":2113,"2070003":0},"2111":{"42297":2112,"2070003":0},"2113":{"42297":2114,"2070003":0},"2115":{"47":2116,"44570":3526,"87219":2118,"2070003":0},"2116":{"44570":2117,"2070003":0},"2118":{"44570":2119,"2070003":0},"2120":{"47":2121,"29246":3828,"42297":3527,"87219":2123,"2070003":0},"2121":{"29246":2642,"42297":2122,"2070003":0},"2123":{"29246":2643,"42297":2124,"2070003":0},"2132":{"3361":2133,"2070003":0},"2133":{"76856":2134,"79559":2651,"79594":2135,"2070003":0},"2137":{"47":2138,"18417":3537,"87219":2140,"2070003":0},"2138":{"18417":2139,"2070003":0},"2140":{"18417":2141,"2070003":0},"2142":{"47":2143,"9047":3538,"78040":3833,"87219":2145,"2070003":6744},"2143":{"9047":2144,"2070003":0},"2145":{"9047":2146,"2070003":0},"2147":{"47":2148,"30759":3541,"87219":2150,"2070003":0},"2148":{"30759":2149,"2070003":0},"2150":{"30759":2151,"2070003":0},"2152":{"47":2153,"44570":3542,"87219":2155,"2070003":0},"2153":{"44570":2154,"2070003":0},"2155":{"44570":2156,"2070003":0},"2178":{"47":2179,"82762":3557,"87219":2181,"2070003":0},"2179":{"82762":2180,"2070003":0},"2181":{"82762":2182,"2070003":0},"2183":{"47":2184,"42096":3558,"87219":2186,"2070003":0},"2184":{"42096":2185,"2070003":0},"2186":{"42096":2187,"2070003":0},"2188":{"75535":2189,"2070003":0},"2190":{"11488":2191,"2070003":0},"2192":{"47":2193,"10046":3573,"87219":2195,"2070003":0},"2193":{"10046":2194,"2070003":0},"2195":{"10046":2196,"2070003":0},"2197":{"35":2198,"47":2201,"24302":3582,"87219":2203,"2070003":0},"2198":{"9994":2199,"21955":2200,"2070003":0},"2201":{"24302":2202,"2070003":0},"2203":{"24302":2204,"2070003":0},"2205":{"49526":2206,"2070003":0},"2207":{"47":2208,"8581":3583,"87219":2210,"2070003":0},"2208":{"8581":2209,"2070003":0},"2210":{"8581":2211,"2070003":0},"2216":{"47":2217,"37818":3589,"44490":3387,"87219":2219,"2070003":7676},"2217":{"37818":2218,"2070003":0},"2219":{"37818":2220,"2070003":0},"2221":{"41965":2222,"65595":2225,"2070003":0},"2223":{"41965":2224,"65595":2226,"2070003":0},"2227":{"47":2228,"6481":3592,"87219":2230,"2070003":10343},"2228":{"6481":2229,"2070003":0},"2230":{"6481":2231,"2070003":0},"2234":{"47":2235,"19504":3746,"74404":3609,"74408":3610,"87219":2237,"2070003":0},"2235":{"19504":2483,"74404":2236,"74408":2239,"2070003":0},"2237":{"19504":2484,"74404":2238,"74408":2240,"2070003":0},"2241":{"38161":2242,"2070003":0},"2242":{"84625":2243,"2070003":0},"2244":{"47":2245,"82762":3613,"87219":2247,"2070003":10681},"2245":{"82762":2246,"2070003":0},"2247":{"82762":2248,"2070003":0},"2253":{"52425":3095,"52676":3417,"52694":2254,"2070003":0},"2254":{"1109":2255,"53668":2256,"2070003":0},"2258":{"3361":2259,"2070003":0},"2259":{"18348":2260,"2070003":0},"2261":{"47":2262,"10276":3640,"19610":4211,"87219":2264,"2070003":0},"2262":{"10276":2263,"19610":2974,"2070003":0},"2264":{"10276":2265,"19610":2975,"2070003":0},"2266":{"47":2267,"10276":3641,"87219":2269,"2070003":0},"2267":{"10276":2268,"2070003":0},"2269":{"10276":2270,"2070003":0},"2271":{"47":2272,"79890":3644,"87219":2274,"2070003":7191},"2272":{"79890":2273,"2070003":0},"2274":{"79890":2275,"2070003":0},"2276":{"52424":2277,"2070003":0},"2278":{"35":2279,"2070003":0},"2279":{"8920":2280,"2070003":0},"2281":{"47":2282,"43689":3648,"87219":2284,"2070003":0},"2282":{"43689":2283,"2070003":0},"2284":{"43689":2285,"2070003":0},"2290":{"47":2291,"17918":3652,"87219":2293,"2070003":0},"2291":{"17918":2292,"2070003":0},"2293":{"17918":2294,"2070003":0},"2296":{"47":2297,"82762":3655,"87219":2299,"2070003":0},"2297":{"82762":2298,"2070003":0},"2299":{"82762":2300,"2070003":0},"2301":{"52424":2302,"2070003":5228},"2302":{"2450":2303,"2070003":0},"2304":{"219":2305,"8049":3656,"2070003":0},"2305":{"8049":2306,"2070003":0},"2307":{"219":2308,"8049":3657,"2070003":0},"2308":{"8049":2309,"2070003":0},"2310":{"219":2311,"8049":3658,"2070003":0},"2311":{"8049":2312,"2070003":0},"2313":{"219":2314,"8049":3659,"2070003":0},"2314":{"8049":2315,"2070003":0},"2316":{"47":2317,"27891":3664,"87219":2319,"2070003":6842},"2317":{"27891":2318,"2070003":0},"2319":{"27891":2320,"2070003":0},"2321":{"47":2322,"9047":3666,"63014":3665,"69479":3909,"87219":2324,"2070003":9456},"2322":{"63014":2323,"2070003":0},"2324":{"63014":2325,"2070003":0},"2326":{"47":2327,"34815":3669,"87219":2329,"2070003":0},"2327":{"34815":2328,"2070003":0},"2329":{"34815":2330,"2070003":0},"2331":{"47":2332,"23082":3670,"87219":2334,"2070003":0},"2332":{"23082":2333,"2070003":0},"2334":{"23082":2335,"2070003":0},"2336":{"47":2337,"57737":3671,"87219":2339,"2070003":0},"2337":{"57737":2338,"2070003":0},"2339":{"57737":2340,"2070003":0},"2341":{"76750":2342,"2070003":0},"2346":{"47":2347,"12765":3675,"87219":2349,"2070003":0},"2347":{"12765":2348,"2070003":0},"2349":{"12765":2350,"2070003":0},"2353":{"9395":2354,"2070003":0},"2355":{"47":2356,"42890":3679,"68161":3680,"87219":2358,"2070003":0},"2356":{"42890":2357,"2070003":0},"2358":{"42890":2359,"2070003":0},"2360":{"47":2361,"24669":3683,"24704":3684,"87219":2363,"2070003":0},"2361":{"24669":2362,"24704":2365,"2070003":0},"2363":{"24669":2364,"24704":2366,"2070003":0},"2367":{"52424":2368,"2070003":0},"2368":{"76256":2369,"2070003":0},"2370":{"47":2371,"24582":3687,"87219":2373,"2070003":9688},"2371":{"24582":2372,"2070003":0},"2373":{"24582":2374,"2070003":0},"2375":{"76073":2376,"2070003":3453},"2377":{"47":2378,"18332":3983,"61649":3690,"87219":2380,"2070003":0},"2378":{"61649":2379,"2070003":0},"2380":{"61649":2381,"2070003":0},"2384":{"47":2385,"50334":3698,"87219":2387,"2070003":0},"2385":{"50334":2386,"2070003":0},"2387":{"50334":2388,"2070003":0},"2391":{"50334":2392,"2070003":0},"2393":{"50334":2394,"2070003":0},"2395":{"47":2396,"18959":3701,"87219":2398,"2070003":10193},"2396":{"18959":2397,"2070003":0},"2398":{"18959":2399,"2070003":0},"2400":{"47":2401,"9021":3702,"9186":3703,"9553":3704,"23770":3705,"28244":3706,"52424":2413,"87219":2403,"2070003":0},"2401":{"9021":2402,"9186":2405,"9553":2407,"23770":2409,"28244":2411,"2070003":0},"2403":{"9021":2404,"9186":2406,"9553":2408,"23770":2410,"28244":2412,"2070003":0},"2413":{"43603":2414,"2070003":0},"2415":{"47":2416,"24583":3712,"87219":2418,"2070003":0},"2416":{"24583":2417,"2070003":0},"2418":{"24583":2419,"2070003":0},"2424":{"13241":2425,"2070003":0},"2426":{"47":2427,"4560":3719,"87219":2429,"2070003":0},"2427":{"4560":2428,"2070003":0},"2429":{"4560":2430,"2070003":0},"2431":{"47":2432,"30325":3720,"87219":2434,"2070003":0},"2432":{"30325":2433,"2070003":0},"2434":{"30325":2435,"2070003":0},"2436":{"47":2437,"52676":3722,"87219":2439,"2070003":0},"2437":{"52676":2438,"2070003":0},"2439":{"52676":2440,"2070003":0},"2449":{"47":2450,"10084":3730,"18813":3731,"87219":2452,"2070003":0},"2450":{"10084":2451,"18813":2454,"2070003":0},"2452":{"10084":2453,"18813":2455,"2070003":0},"2457":{"47":2458,"30629":3735,"87219":2460,"2070003":0},"2458":{"30629":2459,"2070003":0},"2460":{"30629":2461,"2070003":0},"2462":{"13554":2463,"2070003":0},"2464":{"13554":2465,"2070003":0},"2466":{"47":2467,"47674":3740,"87219":2469,"2070003":0},"2467":{"47674":2468,"2070003":0},"2469":{"47674":2470,"2070003":0},"2471":{"47":2472,"7656":3741,"87219":2474,"2070003":7752},"2472":{"7656":2473,"2070003":0},"2474":{"7656":2475,"2070003":0},"2478":{"47":2479,"7438":3745,"87219":2481,"2070003":0},"2479":{"7438":2480,"2070003":0},"2481":{"7438":2482,"2070003":0},"2485":{"47":2486,"45621":3756,"87219":2488,"2070003":0},"2486":{"45621":2487,"2070003":0},"2488":{"45621":2489,"2070003":0},"2490":{"47":2491,"7438":3758,"36451":4118,"87219":2493,"2070003":0},"2491":{"7438":2492,"2070003":0},"2493":{"7438":2494,"2070003":0},"2495":{"47673":2496,"2070003":0},"2497":{"26636":2498,"2070003":0},"2499":{"47":2500,"6635":3620,"32713":4121,"77841":3759,"87219":2502,"2070003":0},"2500":{"77841":2501,"2070003":0},"2502":{"77841":2503,"2070003":0},"2504":{"34306":2505,"2070003":0},"2506":{"34306":2507,"2070003":0},"2512":{"47":2513,"62494":3764,"87219":2515,"2070003":0},"2513":{"62494":2514,"2070003":0},"2515":{"62494":2516,"2070003":0},"2517":{"47":2518,"72045":3779,"87219":2520,"2070003":0},"2518":{"72045":2519,"2070003":0},"2520":{"72045":2521,"2070003":0},"2522":{"47":2523,"10558":3780,"45081":3781,"87219":2525,"2070003":0},"2523":{"10558":2524,"45081":2527,"2070003":0},"2525":{"10558":2526,"45081":2528,"2070003":0},"2529":{"47":2530,"63014":3782,"87219":2532,"2070003":0},"2530":{"63014":2531,"2070003":0},"2532":{"63014":2533,"2070003":0},"2534":{"84629":2535,"2070003":0},"2536":{"47":2537,"8950":3783,"34306":4171,"87219":2539,"2070003":0},"2537":{"8950":2538,"34306":2911,"2070003":0},"2539":{"8950":2540,"34306":2912,"2070003":0},"2541":{"47":2542,"54368":3786,"87219":2544,"2070003":0},"2542":{"54368":2543,"2070003":0},"2544":{"54368":2545,"2070003":0},"2548":{"47":2549,"52425":3788,"87219":2551,"2070003":0},"2549":{"52425":2550,"2070003":0},"2551":{"52425":2552,"2070003":0},"2553":{"47":2554,"52425":3789,"87219":2556,"2070003":0},"2554":{"52425":2555,"2070003":0},"2556":{"52425":2557,"2070003":0},"2558":{"47":2559,"27832":3790,"87219":2561,"2070003":0},"2559":{"27832":2560,"2070003":0},"2561":{"27832":2562,"2070003":0},"2577":{"47":2578,"4197":3800,"87219":2580,"2070003":0},"2578":{"4197":2579,"2070003":0},"2580":{"4197":2581,"2070003":0},"2582":{"47":2583,"72851":3801,"87219":2585,"2070003":0},"2583":{"72851":2584,"2070003":0},"2585":{"72851":2586,"2070003":0},"2593":{"47":2594,"43846":4199,"78211":3811,"87219":2596,"2070003":0},"2594":{"78211":2595,"2070003":0},"2596":{"78211":2597,"2070003":0},"2598":{"47":2599,"9047":3812,"87219":2601,"2070003":0},"2599":{"9047":2600,"2070003":0},"2601":{"9047":2602,"2070003":0},"2603":{"47":2604,"72183":3813,"87219":2606,"2070003":4396},"2604":{"72183":2605,"2070003":0},"2606":{"72183":2607,"2070003":0},"2608":{"70947":2609,"2070003":0},"2610":{"70947":2611,"2070003":0},"2612":{"47":2613,"21185":4206,"73274":3817,"87219":2615,"2070003":0},"2613":{"21185":2972,"73274":2614,"2070003":0},"2615":{"21185":2973,"73274":2616,"2070003":0},"2617":{"47":2618,"9655":3818,"87219":2620,"2070003":0},"2618":{"9655":2619,"2070003":0},"2620":{"9655":2621,"2070003":0},"2622":{"47":2623,"10558":3819,"69153":3205,"87219":2625,"2070003":0},"2623":{"10558":2624,"2070003":0},"2625":{"10558":2626,"2070003":0},"2627":{"47":2628,"2624":3820,"87219":2630,"2070003":9478},"2628":{"2624":2629,"2070003":0},"2630":{"2624":2631,"2070003":0},"2636":{"78040":2637,"2070003":0},"2638":{"50334":2639,"2070003":0},"2640":{"50334":2641,"2070003":0},"2646":{"47":2647,"77826":3832,"87219":2649,"2070003":0},"2647":{"77826":2648,"2070003":0},"2649":{"77826":2650,"2070003":0},"2652":{"47":2653,"43689":3834,"87219":2655,"2070003":0},"2653":{"43689":2654,"2070003":0},"2655":{"43689":2656,"2070003":0},"2657":{"34306":2658,"50334":2661,"2070003":0},"2659":{"34306":2660,"50334":2662,"2070003":0},"2664":{"52424":2665,"2070003":0},"2665":{"16220":2666,"2070003":0},"2700":{"86112":2701,"2070003":0},"2701":{"43054":2702,"2070003":0},"2703":{"52424":2704,"2070003":0},"2704":{"76818":2705,"2070003":0},"2706":{"22602":2707,"2070003":0},"2708":{"54381":2709,"2070003":0},"2710":{"47":2711,"82762":3886,"87219":2713,"2070003":0},"2711":{"82762":2712,"2070003":0},"2713":{"82762":2714,"2070003":0},"2715":{"47":2716,"82762":3887,"87219":2718,"2070003":9372},"2716":{"82762":2717,"2070003":0},"2718":{"82762":2719,"2070003":0},"2720":{"13533":2721,"2070003":0},"2722":{"31208":2723,"2070003":0},"2724":{"52424":2725,"2070003":9447},"2725":{"84809":2726,"2070003":0},"2727":{"53385":2728,"2070003":0},"2729":{"53385":2730,"2070003":0},"2731":{"34899":2732,"2070003":7470},"2732":{"44490":2733,"2070003":0},"2734":{"52424":2735,"2070003":4416},"2735":{"17749":2736,"2070003":0},"2737":{"47":2738,"85618":3945,"87219":2740,"2070003":9628},"2738":{"85618":2739,"2070003":0},"2740":{"85618":2741,"2070003":0},"2742":{"35":2743,"2070003":0},"2743":{"50545":2744,"2070003":0},"2748":{"49377":2749,"67252":3978,"2070003":0},"2749":{"67252":2750,"2070003":0},"2753":{"47":2754,"85618":3984,"87219":2756,"2070003":9957},"2754":{"85618":2755,"2070003":0},"2756":{"85618":2757,"2070003":0},"2758":{"47":2759,"34815":3988,"87219":2761,"2070003":9987},"2759":{"34815":2760,"2070003":0},"2761":{"34815":2762,"2070003":0},"2764":{"47":2765,"6767":4010,"70458":4009,"86566":3246,"87219":2767,"2070003":7662},"2765":{"70458":2766,"2070003":0},"2767":{"70458":2768,"2070003":0},"2769":{"47":2770,"52425":4011,"87219":2772,"2070003":0},"2770":{"52425":2771,"2070003":0},"2772":{"52425":2773,"2070003":0},"2781":{"35":2782,"2070003":0},"2782":{"34235":2783,"65610":2784,"2070003":0},"2790":{"219":2791,"41975":4022,"86336":3386,"2070003":0},"2791":{"29234":2792,"2070003":0},"2793":{"77052":2794,"2070003":0},"2794":{"12665":2795,"65562":2796,"2070003":0},"2797":{"47":2798,"9287":4031,"74497":4032,"87219":2800,"2070003":0},"2798":{"9287":2799,"2070003":0},"2800":{"9287":2801,"2070003":0},"2806":{"12894":2807,"60947":2809,"2070003":10461},"2807":{"5146":2808,"2070003":0},"2809":{"83522":2810,"2070003":0},"2811":{"47":2812,"10558":4049,"87219":2814,"2070003":0},"2812":{"10558":2813,"2070003":0},"2814":{"10558":2815,"2070003":0},"2816":{"52424":2817,"2070003":0},"2817":{"29189":2818,"2070003":0},"2819":{"47":2820,"53385":4052,"87219":2822,"2070003":0},"2820":{"53385":2821,"2070003":0},"2822":{"53385":2823,"2070003":0},"2825":{"40041":3607,"84877":2826,"2070003":0},"2826":{"78040":2827,"2070003":0},"2828":{"38161":2829,"2070003":0},"2829":{"84625":2830,"2070003":0},"2833":{"52676":2834,"2070003":0},"2835":{"7967":4074,"64416":2836,"2070003":8635},"2836":{"38910":2837,"2070003":0},"2838":{"1730":2839,"2070003":0},"2839":{"22602":2840,"2070003":0},"2841":{"19614":2842,"2070003":0},"2843":{"47":2844,"64346":4095,"87219":2846,"2070003":0},"2844":{"64346":2845,"2070003":0},"2846":{"64346":2847,"2070003":0},"2848":{"47":2849,"61841":4104,"86477":4105,"87219":2851,"2070003":7066},"2849":{"61841":2850,"86477":2853,"2070003":0},"2851":{"61841":2852,"86477":2854,"2070003":0},"2855":{"47":2856,"41149":4119,"87219":2858,"2070003":10815},"2856":{"41149":2857,"2070003":0},"2858":{"41149":2859,"2070003":0},"2860":{"46":3271,"47":2861,"49":3270,"197":3272,"61246":4120,"77052":2865,"87219":2863,"2070003":0},"2861":{"61246":2862,"2070003":0},"2863":{"61246":2864,"2070003":0},"2865":{"36208":2866,"2070003":0},"2867":{"47":2868,"33203":4122,"33317":4123,"87219":2870,"2070003":0},"2868":{"33203":2869,"33317":2872,"2070003":0},"2870":{"33203":2871,"33317":2873,"2070003":0},"2874":{"73294":2875,"2070003":0},"2876":{"35":2877,"2070003":0},"2877":{"15207":2878,"2070003":0},"2880":{"3361":2881,"2070003":0},"2881":{"50339":2882,"2070003":0},"2883":{"47":2884,"82762":4143,"87219":2886,"2070003":10907},"2884":{"82762":2885,"2070003":0},"2886":{"82762":2887,"2070003":0},"2888":{"38161":2889,"2070003":0},"2889":{"26499":2890,"2070003":0},"2891":{"79007":2892,"2070003":0},"2893":{"47":2894,"73688":4152,"87219":2896,"2070003":10941},"2894":{"73688":2895,"2070003":0},"2896":{"73688":2897,"2070003":0},"2898":{"47":2899,"85618":4163,"87219":2901,"2070003":0},"2899":{"85618":2900,"2070003":0},"2901":{"85618":2902,"2070003":0},"2903":{"47":2904,"85618":4164,"87219":2906,"2070003":0},"2904":{"85618":2905,"2070003":0},"2906":{"85618":2907,"2070003":0},"2908":{"38161":2909,"2070003":0},"2909":{"30097":2910,"2070003":0},"2913":{"47":2914,"30629":4174,"87219":2916,"2070003":11127},"2914":{"30629":2915,"2070003":0},"2916":{"30629":2917,"2070003":0},"2920":{"47":2921,"82762":4178,"87219":2923,"2070003":0},"2921":{"82762":2922,"2070003":0},"2923":{"82762":2924,"2070003":0},"2925":{"47":2926,"71395":4179,"87219":2928,"2070003":0},"2926":{"71395":2927,"2070003":0},"2928":{"71395":2929,"2070003":0},"2930":{"47":2931,"43689":4180,"87219":2933,"2070003":0},"2931":{"43689":2932,"2070003":0},"2933":{"43689":2934,"2070003":0},"2935":{"47":2936,"44427":4181,"87219":2938,"2070003":0},"2936":{"44427":2937,"2070003":0},"2938":{"44427":2939,"2070003":0},"2940":{"10785":2941,"2070003":0},"2946":{"47":2947,"23509":4189,"87219":2949,"2070003":11211},"2947":{"23509":2948,"2070003":0},"2949":{"23509":2950,"2070003":0},"2955":{"47":2956,"9287":4202,"53668":4203,"87219":2958,"2070003":0},"2956":{"9287":2957,"2070003":0},"2958":{"9287":2959,"2070003":0},"2960":{"79868":2961,"2070003":0},"2962":{"47":2963,"8632":4204,"87219":2965,"2070003":0},"2963":{"8632":2964,"2070003":0},"2965":{"8632":2966,"2070003":0},"2967":{"47":2968,"8632":4205,"87219":2970,"2070003":0},"2968":{"8632":2969,"2070003":0},"2970":{"8632":2971,"2070003":0},"2976":{"47":2977,"7453":4212,"14722":4213,"87219":2979,"2070003":7164},"2977":{"7453":2978,"2070003":0},"2979":{"7453":2980,"2070003":0},"2981":{"219":2982,"2070003":0},"2982":{"29234":2983,"2070003":0},"2985":{"10987":2986,"2070003":0},"2986":{"53017":2987,"2070003":0},"2988":{"5808":3283,"29120":3284,"77052":2989,"86489":3837,"2070003":0},"2989":{"85089":2990,"2070003":0},"2991":{"52424":2992,"69579":4259,"2070003":11655},"2992":{"5808":2993,"2070003":0},"2994":{"47":2995,"43920":4268,"79007":4269,"87219":2997,"2070003":0},"2995":{"43920":2996,"2070003":0},"2997":{"43920":2998,"2070003":0},"2999":{"35":3000,"2070003":0},"3000":{"85148":3001,"2070003":0},"3002":{"47":3003,"8262":4275,"85618":4274,"87219":3005,"2070003":0},"3003":{"85618":3004,"2070003":0},"3005":{"85618":3006,"2070003":0},"3007":{"47":3008,"30629":4278,"87219":3010,"2070003":9513},"3008":{"30629":3009,"2070003":0},"3010":{"30629":3011,"2070003":0},"3012":{"78040":3013,"2070003":0},"3014":{"52424":3015,"2070003":0},"3016":{"52424":3017,"2070003":0},"3018":{"30075":3019,"2070003":10356},"3019":{"48865":3020,"2070003":0},"3021":{"59842":3022,"59846":3023,"2070003":0},"3026":{"52424":3027,"78040":3029,"2070003":0},"3027":{"43603":3028,"2070003":0},"3029":{"43603":3030,"2070003":0},"3031":{"52424":3032,"78040":3034,"2070003":0},"3032":{"43603":3033,"2070003":0},"3034":{"43603":3035,"2070003":0},"3037":{"38161":3038,"2070003":0},"3039":{"82762":3040,"2070003":0},"3041":{"18966":3043,"32791":3042,"2070003":9693},"3044":{"13130":3045,"13132":3046,"2070003":0},"3047":{"2785":3048,"7472":3049,"18966":3050,"28156":3051,"32791":3052,"33233":3053,"44547":3054,"56064":3055,"2070003":10209},"3060":{"82762":3061,"2070003":4352},"3063":{"32791":3064,"2070003":0},"3066":{"32791":3067,"2070003":0},"3069":{"27482":3308,"34433":3070,"71456":3088,"78104":3217,"2070003":0},"3071":{"34433":3072,"2070003":0},"3073":{"9451":4236,"21364":4237,"34430":3074,"57456":3282,"79559":3347,"2070003":0},"3075":{"41435":3076,"2070003":0},"3077":{"65174":3078,"2070003":0},"3084":{"65174":3085,"2070003":0},"3096":{"82762":3097,"2070003":0},"3098":{"23509":3099,"2070003":4349},"3100":{"82762":3101,"2070003":0},"3103":{"63391":3104,"2070003":4369},"3107":{"2627":3108,"82762":3109,"2070003":4639},"3110":{"82762":3111,"2070003":0},"3113":{"82762":3114,"2070003":0},"3115":{"52676":3116,"2070003":0},"3120":{"57259":3121,"2070003":0},"3124":{"42674":3125,"2070003":0},"3126":{"23509":3127,"2070003":0},"3128":{"82762":3129,"2070003":0},"3130":{"1115":3445,"28503":3131,"2070003":0},"3132":{"86087":3133,"2070003":8317},"3134":{"82762":3135,"2070003":0},"3138":{"53385":3139,"2070003":10278},"3140":{"28505":3141,"79364":3142,"2070003":4955},"3143":{"16463":3144,"2070003":4956},"3156":{"52425":3157,"2070003":5089},"3159":{"63014":3160,"2070003":0},"3169":{"52424":3170,"2070003":11216},"3171":{"28503":3172,"2070003":0},"3173":{"30771":3174,"2070003":0},"3175":{"52424":3176,"2070003":11460},"3190":{"23554":3256,"82864":3191,"2070003":0},"3196":{"82762":3197,"2070003":0},"3198":{"29241":3199,"2070003":0},"3200":{"82762":3201,"2070003":6585},"3202":{"82762":3203,"2070003":0},"3207":{"82762":3208,"2070003":0},"3211":{"58113":3212,"74467":3822,"2070003":11354},"3226":{"82762":3227,"2070003":0},"3229":{"82762":3230,"2070003":0},"3231":{"52425":3232,"2070003":0},"3234":{"52676":3235,"2070003":9520},"3236":{"76296":3237,"2070003":0},"3241":{"53385":3242,"2070003":0},"3244":{"52425":3245,"2070003":0},"3254":{"13569":3255,"2070003":5520},"3257":{"13569":3258,"2070003":4383},"3260":{"49460":3261,"2070003":0},"3262":{"366":3752,"3538":3612,"6704":3753,"34882":3754,"64572":3263,"71468":3755,"2070003":0},"3264":{"37550":3265,"2070003":0},"3266":{"30982":3267,"86078":3757,"2070003":0},"3268":{"9991":3269,"27302":4106,"60432":4107,"2070003":10787},"3279":{"82762":3280,"2070003":0},"3286":{"22602":3287,"2070003":11629},"3288":{"6317":3289,"2070003":11659},"3290":{"58113":3291,"2070003":11661},"3292":{"23509":3647,"52676":3293,"2070003":0},"3295":{"78040":3296,"2070003":6209},"3302":{"52424":3303,"2070003":0},"3304":{"27482":3305,"2070003":0},"3306":{"27482":3307,"2070003":0},"3310":{"38161":3311,"2070003":0},"3312":{"41270":3313,"47850":3314,"2070003":0},"3315":{"33485":3316,"2070003":10227},"3317":{"68447":3318,"2070003":0},"3319":{"68447":3320,"2070003":0},"3322":{"68447":3323,"2070003":0},"3324":{"68447":3325,"2070003":0},"3326":{"68447":3327,"2070003":6736},"3334":{"9238":4077,"31040":3747,"34749":3748,"34872":3335,"63644":3749,"2070003":0},"3358":{"5421":3359,"2070003":4751},"3361":{"53385":3362,"2070003":0},"3363":{"53385":3364,"2070003":0},"3366":{"53385":3367,"82762":3368,"2070003":0},"3369":{"53385":3370,"2070003":0},"3371":{"82762":3372,"2070003":0},"3375":{"82762":3376,"2070003":9940},"3377":{"82762":3378,"2070003":0},"3379":{"23509":3380,"2070003":0},"3383":{"23509":3384,"2070003":10285},"3393":{"63420":3394,"2070003":0},"3410":{"6317":3412,"30075":3411,"2070003":0},"3413":{"6317":3415,"30075":3414,"2070003":0},"3425":{"57405":3426,"2070003":0},"3427":{"5808":3428,"2070003":0},"3431":{"69771":3432,"2070003":0},"3443":{"23509":3912,"82762":3444,"2070003":0},"3447":{"2627":3448,"2070003":0},"3449":{"10189":3450,"2070003":0},"3451":{"77377":3452,"2070003":6338},"3454":{"53385":3455,"82762":3456,"2070003":0},"3462":{"82762":3463,"2070003":0},"3464":{"53385":3465,"82762":3466,"2070003":0},"3486":{"82762":3487,"2070003":0},"3488":{"41867":3489,"2070003":0},"3490":{"52424":3491,"2070003":6489},"3495":{"82762":3496,"2070003":0},"3497":{"82762":3498,"2070003":6506},"3505":{"52424":3506,"2070003":6614},"3508":{"53385":3509,"2070003":11118},"3521":{"68216":4331,"68218":4332,"85228":3522,"2070003":0},"3528":{"53385":3529,"82762":3530,"2070003":0},"3534":{"53385":3535,"82762":3536,"2070003":7187},"3539":{"52676":3540,"2070003":0},"3553":{"82762":3554,"2070003":0},"3555":{"22602":3556,"37250":3871,"2070003":4766},"3559":{"19306":3884,"28296":3560,"65791":3885,"2070003":6827},"3561":{"53385":3562,"2070003":0},"3563":{"33203":3564,"33317":3565,"2070003":5439},"3566":{"10006":3567,"23927":3932,"43122":3933,"2070003":0},"3568":{"84740":3569,"2070003":0},"3570":{"12295":3936,"28296":3571,"50651":3572,"2070003":6862},"3574":{"86322":3575,"2070003":8344},"3576":{"43791":3577,"87144":3954,"2070003":9696},"3578":{"22365":3579,"2070003":9728},"3580":{"18181":3581,"2070003":4421},"3585":{"26230":3586,"2070003":0},"3587":{"30000":3724,"59842":3588,"2070003":0},"3593":{"18229":3594,"2070003":0},"3597":{"17749":3598,"2070003":0},"3599":{"40041":3600,"2070003":0},"3601":{"82762":3602,"2070003":0},"3603":{"40041":3604,"2070003":0},"3605":{"53385":3606,"2070003":0},"3614":{"16990":3615,"2070003":5571},"3616":{"63420":3617,"2070003":0},"3622":{"4197":3623,"2070003":0},"3624":{"10006":3625,"2070003":0},"3628":{"24151":3629,"2070003":0},"3631":{"63014":3632,"2070003":0},"3633":{"69107":3634,"2070003":0},"3635":{"73462":3636,"73846":3637,"2070003":0},"3638":{"18898":3639,"2070003":0},"3642":{"40041":3643,"2070003":0},"3645":{"41311":3646,"2070003":9011},"3653":{"82762":3654,"2070003":8244},"3660":{"65732":3661,"2070003":0},"3662":{"6481":3663,"2070003":0},"3667":{"77599":3668,"2070003":0},"3673":{"46023":3674,"2070003":0},"3677":{"23662":3678,"2070003":0},"3681":{"62737":3682,"2070003":6329},"3685":{"53385":3686,"2070003":9684},"3688":{"9320":3689,"2070003":0},"3691":{"5673":3692,"2070003":0},"3694":{"62737":3695,"2070003":4366},"3696":{"62737":3697,"2070003":4368},"3707":{"28244":3708,"2070003":0},"3710":{"86484":3711,"2070003":10239},"3713":{"43041":3714,"2070003":0},"3732":{"68161":3733,"2070003":0},"3738":{"78599":3739,"2070003":0},"3742":{"52705":3743,"2070003":0},"3750":{"83075":3751,"2070003":0},"3765":{"27131":3766,"2070003":0},"3767":{"31431":3768,"2070003":0},"3769":{"31431":3770,"2070003":0},"3771":{"5840":3772,"2070003":7858},"3773":{"30075":3774,"2070003":7879},"3775":{"30075":3776,"2070003":0},"3777":{"9123":3778,"2070003":0},"3784":{"60040":3785,"2070003":0},"3791":{"4569":3792,"2070003":0},"3802":{"5882":3803,"2070003":0},"3806":{"5673":3807,"2070003":0},"3809":{"82762":3810,"2070003":0},"3814":{"45229":3815,"2070003":0},"3824":{"16482":3825,"2070003":0},"3829":{"29246":3830,"2070003":0},"3838":{"1895":3839,"2070003":0},"3840":{"86354":3841,"2070003":0},"3842":{"9320":3843,"2070003":11576},"3859":{"53668":3860,"2070003":11674},"3861":{"78040":3862,"2070003":8169},"3865":{"60753":3866,"2070003":0},"3867":{"22602":3868,"2070003":0},"3869":{"23906":3870,"2070003":8218},"3872":{"23906":3873,"2070003":8219},"3874":{"53101":3875,"2070003":0},"3876":{"6828":3877,"2070003":0},"3878":{"59979":3879,"2070003":0},"3880":{"74091":3881,"2070003":9312},"3888":{"74467":3889,"2070003":0},"3892":{"28752":3893,"2070003":0},"3894":{"56339":3895,"2070003":9414},"3896":{"22365":3897,"22602":3898,"2070003":0},"3899":{"82762":3900,"2070003":8267},"3901":{"82762":3902,"2070003":8268},"3903":{"34641":3904,"2070003":0},"3905":{"82762":3906,"2070003":8271},"3907":{"53385":3908,"2070003":0},"3910":{"52425":3911,"2070003":0},"3913":{"10312":3914,"2070003":0},"3915":{"87144":3916,"2070003":0},"3917":{"27557":3918,"2070003":0},"3921":{"23906":3922,"2070003":9483},"3923":{"61045":3924,"2070003":0},"3925":{"52825":3926,"84763":3927,"2070003":0},"3928":{"63425":3929,"78202":3930,"84345":3931,"2070003":0},"3934":{"52425":3935,"2070003":0},"3937":{"74463":3938,"2070003":9568},"3939":{"19614":3940,"2070003":0},"3941":{"22602":3942,"37250":3943,"62457":3944,"2070003":0},"3946":{"36451":3947,"2070003":6869},"3948":{"42890":3949,"2070003":9655},"3950":{"14722":3951,"2070003":8342},"3952":{"86087":3953,"2070003":0},"3957":{"36451":3958,"39525":3959,"55805":3960,"65773":3961,"68216":4314,"68218":4315,"84802":3962,"86060":3963,"2070003":9707},"3964":{"52676":3965,"2070003":8352},"3966":{"12028":3967,"2070003":0},"3968":{"22602":3969,"50651":3970,"2070003":0},"3971":{"22602":3972,"50651":3973,"2070003":0},"3974":{"79241":3975,"2070003":9836},"3976":{"27557":3977,"2070003":9904},"3979":{"42539":3980,"2070003":0},"3981":{"5404":3982,"2070003":0},"3985":{"22602":3986,"22933":3987,"2070003":0},"3989":{"64447":3990,"70269":3991,"2070003":0},"3996":{"69576":3997,"2070003":0},"3999":{"53385":4000,"2070003":10188},"4001":{"82762":4002,"2070003":10202},"4003":{"28187":4004,"36451":4005,"2070003":10223},"4006":{"40468":4007,"2070003":0},"4020":{"41149":4021,"2070003":0},"4023":{"43629":4024,"2070003":0},"4025":{"50293":4026,"2070003":0},"4027":{"84148":4028,"2070003":0},"4029":{"19640":4030,"2070003":0},"4033":{"69107":4034,"2070003":0},"4035":{"50651":4036,"2070003":4993},"4040":{"77147":4041,"2070003":0},"4042":{"79089":4043,"2070003":10478},"4044":{"8569":4045,"2070003":0},"4046":{"9451":4047,"35045":4048,"2070003":0},"4050":{"10209":4051,"2070003":0},"4053":{"60996":4054,"2070003":7742},"4055":{"40954":4056,"2070003":0},"4057":{"73590":4058,"2070003":0},"4059":{"16167":4060,"2070003":0},"4061":{"84877":4062,"2070003":0},"4063":{"15207":4064,"2070003":0},"4067":{"22365":4068,"2070003":0},"4069":{"8336":4070,"2070003":7034},"4071":{"82762":4072,"2070003":0},"4075":{"40044":4076,"2070003":0},"4078":{"51693":4079,"2070003":8648},"4080":{"43937":4081,"2070003":0},"4082":{"16167":4083,"2070003":0},"4084":{"60032":4085,"2070003":0},"4086":{"22602":4087,"2070003":0},"4088":{"74467":4089,"78732":4090,"78738":4091,"78745":4092,"2070003":0},"4093":{"25660":4094,"2070003":0},"4096":{"6828":4097,"65243":4098,"2070003":5053},"4100":{"71665":4101,"2070003":0},"4102":{"11333":4103,"2070003":0},"4108":{"8692":4109,"2070003":0},"4110":{"29120":4111,"2070003":0},"4112":{"8873":4113,"2070003":0},"4114":{"14722":4115,"2070003":0},"4116":{"51784":4117,"2070003":0},"4124":{"18179":4125,"2070003":0},"4126":{"79868":4127,"2070003":0},"4128":{"18332":4129,"2070003":0},"4130":{"18332":4131,"2070003":0},"4132":{"33203":4133,"33317":4134,"2070003":0},"4135":{"30438":4136,"2070003":0},"4137":{"12295":4138,"2070003":0},"4139":{"9680":4140,"2070003":0},"4141":{"9680":4142,"2070003":0},"4145":{"30097":4146,"40253":4147,"43602":4148,"86341":4149,"2070003":8769},"4150":{"34638":4151,"2070003":0},"4153":{"17033":4154,"2070003":6591},"4155":{"5808":4156,"73707":4157,"2070003":0},"4158":{"18959":4159,"18990":4160,"2070003":0},"4161":{"19610":4162,"2070003":0},"4165":{"77599":4166,"2070003":0},"4167":{"7412":4168,"2070003":0},"4169":{"14722":4170,"2070003":0},"4172":{"2968":4173,"2070003":0},"4175":{"24971":4176,"2070003":0},"4183":{"24253":4184,"2070003":0},"4185":{"8730":4186,"2070003":0},"4192":{"6481":4193,"2070003":0},"4194":{"24665":4195,"24675":4196,"2070003":0},"4197":{"83522":4198,"2070003":0},"4200":{"10987":4201,"2070003":0},"4207":{"53018":4208,"2070003":0},"4209":{"30709":4210,"2070003":0},"4214":{"14722":4215,"2070003":8902},"4216":{"86087":4217,"2070003":11362},"4218":{"17749":4219,"2070003":4398},"4220":{"51723":4221,"2070003":0},"4222":{"53668":4223,"2070003":0},"4225":{"84792":4226,"2070003":0},"4228":{"82762":4229,"2070003":0},"4230":{"52425":4231,"2070003":0},"4232":{"82762":4233,"2070003":11434},"4234":{"1115":4235,"2070003":11441},"4238":{"49203":4239,"2070003":0},"4240":{"19773":4241,"2070003":0},"4242":{"44653":4243,"2070003":0},"4244":{"8920":4245,"2070003":11483},"4246":{"23927":4247,"43122":4248,"2070003":0},"4249":{"5046":4250,"2070003":0},"4251":{"516":4252,"2070003":7202},"4253":{"78040":4254,"2070003":11544},"4255":{"13068":4256,"2070003":0},"4257":{"14722":4258,"2070003":11650},"4260":{"11720":4261,"2070003":0},"4262":{"77363":4263,"2070003":0},"4264":{"27824":4265,"2070003":0},"4266":{"30075":4267,"2070003":0},"4270":{"50375":4271,"2070003":0},"4272":{"78255":4273,"2070003":11678},"4276":{"20149":4277,"2070003":0},"4279":{"78040":4280,"2070003":0},"4282":{"43689":4283,"2070003":0},"4284":{"43689":4285,"2070003":0},"4286":{"43689":4287,"2070003":0},"4288":{"43689":4289,"2070003":0},"4290":{"43689":4291,"2070003":0},"4292":{"43689":4293,"2070003":0},"4295":{"23706":4296,"2070003":9395},"4299":{"68216":4300,"68218":4301,"2070003":0},"4302":{"68216":4303,"68218":4304,"2070003":0},"4305":{"68216":4306,"68218":4307,"2070003":0},"4308":{"68216":4309,"68218":4310,"2070003":10962},"4311":{"68216":4312,"68218":4313,"2070003":0},"4316":{"68216":4317,"68218":4318,"2070003":0},"4319":{"68216":4320,"68218":4321,"2070003":0},"4322":{"68216":4323,"68218":4324,"2070003":0},"4325":{"68216":4326,"68218":4327,"2070003":0},"4328":{"68216":4329,"68218":4330,"2070003":6526},"4333":{"68216":4334,"68218":4335,"2070003":0},"4336":{"68216":4337,"68218":4338,"2070003":0},"4339":{"68216":4340,"68218":4341,"2070003":0},"4342":{"68218":4343,"2070003":0}},{"8":"1000","9":"1000","10":"1000","11":"1000","12":"1000","13":"1000","18":"1000","19":"1000","20":"1000","21":"1000","22":"1000","23":"1000","28":"1000","29":"1000","30":"1000","31":"1000","32":"1000","33":"1000","38":"1000","39":"1000","40":"1000","41":"1000","42":"1000","43":"1000","49":"1000","50":"1000","51":"1000","52":"1000","53":"1000","54":"1000","59":"1000","60":"1000","61":"1000","62":"1000","63":"1000","64":"1000","69":"1000","70":"1000","71":"1000","72":"1000","73":"1000","74":"1000","79":"1000","80":"1000","81":"1000","82":"1000","83":"1000","84":"1000","90":"1000","91":"1000","92":"1000","93":"1000","94":"1000","95":"1000","100":"1000","101":"1000","102":"1000","103":"1000","104":"1000","105":"1000","110":"1000","111":"1000","112":"1000","113":"1000","114":"1000","115":"1000","120":"1000","121":"1000","122":"1000","123":"1000","124":"1000","125":"1000","133":"400","137":"400","143":"400","147":"400","155":"400","159":"400","165":"400","169":"400","177":"400","181":"400","187":"400","191":"400","196":"1000","197":"1000","198":"1000","199":"1000","200":"1000","201":"1000","206":"1000","207":"1000","208":"1000","209":"1000","210":"1000","211":"1000","216":"1000","217":"1000","218":"1000","219":"1000","220":"1000","221":"1000","226":"1000","227":"1000","228":"1000","229":"1000","230":"1000","231":"1000","233":"1000","234":"1000","235":"1000","236":"1000","237":"1000","238":"1000","240":"1000","241":"1000","242":"1000","243":"1000","244":"1000","245":"1000","247":"1000","248":"1000","249":"1000","250":"1000","251":"1000","252":"1000","254":"1000","255":"1000","256":"1000","257":"1000","258":"1000","259":"1000","261":"1000","262":"1000","263":"1000","264":"1000","265":"1000","266":"1000","268":"1000","269":"1000","270":"1000","271":"1000","272":"1000","273":"1000","275":"1000","276":"1000","277":"1000","278":"1000","279":"1000","280":"1000","282":"1000","283":"1000","284":"1000","285":"1000","286":"1000","287":"1000","289":"1000","290":"1000","291":"1000","292":"1000","293":"1000","294":"1000","296":"1000","297":"1000","298":"1000","299":"1000","300":"1000","301":"1000","303":"1000","304":"1000","305":"1000","306":"1000","307":"1000","308":"1000","310":"1000","311":"1000","312":"1000","313":"1000","314":"1000","315":"1000","320":"400","324":"400","327":"400","330":"400","335":"400","339":"400","342":"400","345":"400","350":"400","354":"400","357":"400","360":"400","367":"625","369":"625","373":"625","375":"625","381":"625","383":"625","387":"625","389":"625","392":"1000","393":"1000","394":"1000","395":"1000","396":"1000","397":"1000","398":"1000","399":"1000","402":"1000","403":"1000","404":"1000","405":"1000","406":"1000","407":"1000","408":"1000","409":"1000","412":"1000","413":"1000","414":"1000","415":"1000","416":"1000","417":"1000","418":"1000","419":"1000","425":"1000","426":"1000","427":"1000","428":"1000","429":"1000","430":"1000","431":"1000","432":"1000","436":"1000","437":"1000","438":"1000","439":"1000","440":"1000","441":"1000","442":"1000","443":"1000","447":"1000","448":"1000","449":"1000","450":"1000","451":"1000","452":"1000","453":"1000","454":"1000","456":"1000","457":"1000","458":"1000","459":"1000","460":"1000","461":"1000","463":"1000","464":"1000","465":"1000","466":"1000","467":"1000","468":"1000","470":"1000","471":"1000","472":"1000","473":"1000","474":"1000","475":"1000","477":"1000","478":"1000","479":"1000","480":"1000","481":"1000","482":"1000","485":"400","488":"400","491":"400","496":"625","498":"625","502":"625","504":"625","507":"625","509":"625","510":"625","511":"625","514":"625","516":"625","517":"625","518":"625","519":"1000","520":"1000","521":"1000","522":"1000","523":"1000","524":"1000","525":"1000","526":"1000","527":"1000","528":"1000","529":"1000","530":"1000","531":"1000","532":"1000","533":"1000","534":"1000","535":"1000","536":"1000","537":"1000","538":"1000","539":"1000","540":"1000","541":"1000","542":"1000","543":"1000","544":"1000","545":"1000","546":"1000","547":"1000","548":"1000","549":"1000","550":"1000","551":"1000","552":"1000","553":"1000","554":"1000","555":"1000","556":"1000","557":"1000","558":"1000","559":"1000","560":"1000","561":"1000","562":"1000","563":"1000","564":"1000","565":"1000","566":"1000","571":"0","576":"875","581":"875","583":"875","587":"875","589":"875","594":"-875","596":"-875","600":"-875","602":"-875","607":"-875","612":"625","614":"625","618":"625","620":"625","625":"625","627":"625","631":"625","633":"625","638":"625","640":"625","644":"625","646":"625","650":"625","652":"625","656":"625","658":"625","661":"625","663":"625","664":"625","665":"625","666":"625","667":"625","672":"625","674":"625","678":"625","680":"625","685":"625","687":"625","691":"625","693":"625","698":"-687","700":"-687","704":"-687","706":"-687","711":"-563","713":"-563","717":"-563","719":"-563","720":"-563","721":"-563","722":"-563","723":"-563","728":"-625","730":"-625","734":"-625","736":"-625","741":"-625","746":"-563","748":"-563","752":"-563","754":"-563","759":"500","761":"500","765":"500","767":"500","772":"500","777":"500","779":"500","783":"500","785":"500","790":"500","792":"500","796":"500","798":"500","803":"500","805":"500","809":"500","811":"500","816":"500","818":"500","822":"500","824":"500","827":"500","829":"500","832":"500","834":"500","837":"-500","839":"-500","842":"-500","844":"-500","849":"-500","851":"-500","855":"-500","857":"-500","862":"-500","864":"-500","868":"-500","870":"-500","873":"-500","875":"-500","878":"-500","880":"-500","885":"-500","887":"-500","891":"-500","893":"-500","898":"-500","900":"-500","904":"-500","906":"-500","910":"-1000","914":"-1000","918":"-1000","922":"-1000","923":"-1000","924":"-1000","928":"1000","932":"1000","936":"1000","937":"1000","941":"1000","945":"1000","946":"1000","947":"1000","950":"1000","951":"1000","952":"1000","955":"1000","956":"1000","957":"1000","960":"1000","961":"1000","962":"1000","965":"1000","966":"1000","967":"1000","970":"1000","971":"1000","972":"1000","976":"800","980":"250","983":"-500","987":"-250","990":"-250","994":"-250","997":"875","999":"875","1000":"875","1001":"875","1004":"-875","1006":"-875","1007":"-875","1008":"-875","1012":"-1000","1016":"-750","1020":"-750","1024":"-750","1028":"-750","1032":"-750","1036":"-750","1040":"-750","1043":"625","1045":"625","1046":"625","1047":"625","1050":"625","1052":"625","1053":"625","1054":"625","1057":"625","1059":"625","1060":"625","1061":"625","1064":"625","1066":"625","1067":"625","1068":"625","1069":"625","1073":"-625","1074":"-625","1075":"-625","1077":"-625","1078":"-625","1079":"-625","1082":"-625","1083":"-625","1084":"-625","1086":"-625","1087":"-625","1088":"-625","1092":"0","1096":"0","1100":"0","1104":"0","1108":"0","1111":"625","1113":"625","1114":"625","1115":"625","1118":"625","1120":"625","1121":"625","1122":"625","1126":"-625","1130":"-625","1133":"-625","1137":"-625","1140":"-625","1144":"-625","1147":"-687","1149":"-687","1150":"-687","1151":"-687","1155":"-625","1159":"-625","1162":"-563","1164":"-563","1165":"-563","1166":"-563","1167":"-563","1168":"-563","1169":"-563","1170":"-563","1173":"-625","1175":"-625","1176":"-625","1177":"-625","1181":"-625","1184":"-563","1186":"-563","1187":"-563","1188":"-563","1191":"-625","1194":"500","1196":"500","1197":"500","1198":"500","1202":"500","1206":"500","1209":"500","1210":"500","1213":"500","1215":"500","1216":"500","1217":"500","1221":"500","1224":"500","1226":"500","1227":"500","1228":"500","1231":"500","1233":"500","1234":"500","1235":"500","1237":"500","1240":"500","1242":"500","1243":"500","1244":"500","1247":"500","1249":"500","1250":"500","1251":"500","1255":"-500","1259":"-500","1262":"-500","1265":"-500","1269":"-500","1273":"-500","1276":"-500","1280":"-500","1283":"-500","1285":"-500","1286":"-500","1287":"-500","1290":"-500","1292":"-500","1293":"-500","1294":"-500","1298":"-500","1299":"-500","1302":"-500","1306":"-500","1309":"-500","1311":"-500","1312":"-500","1313":"-500","1316":"-500","1318":"-500","1319":"-500","1320":"-500","1322":"-500","1326":"-500","1328":"-500","1332":"-500","1336":"-500","1339":"-500","1342":"-500","1344":"-500","1345":"-500","1346":"-500","1350":"-500","1353":"-500","1357":"-500","1360":"-500","1363":"-500","1365":"-500","1366":"-500","1367":"-500","1370":"-400","1373":"-400","1376":"-400","1379":"-400","1383":"400","1384":"400","1388":"-400","1391":"-800","1392":"-800","1393":"-800","1394":"-800","1395":"-800","1396":"-800","1397":"-800","1400":"500","1402":"-800","1403":"0","1406":"0","1407":"800","1409":"400","1411":"400","1413":"400","1416":"400","1419":"0","1422":"688","1424":"688","1427":"556","1430":"750","1432":"750","1435":"500","1437":"500","1440":"250","1443":"750","1446":"875","1449":"750","1451":"750","1452":"625","1453":"625","1454":"875","1455":"875","1456":"625","1457":"625","1460":"250","1461":"375","1462":"375","1464":"-250","1467":"-500","1469":"-500","1472":"-250","1474":"-250","1477":"-750","1479":"-750","1480":"-750","1481":"-750","1484":"-250","1486":"-250","1488":"-500","1490":"-500","1491":"-250","1492":"-250","1495":"-250","1497":"-250","1498":"-250","1499":"-250","1500":"-250","1501":"-250","1502":"-250","1503":"-250","1504":"-1000","1505":"-1000","1506":"-1000","1507":"-1000","1508":"-250","1509":"-250","1510":"-250","1511":"-250","1512":"-250","1513":"-250","1516":"-375","1518":"-375","1521":"1000","1523":"1000","1526":"1000","1528":"1000","1531":"875","1533":"875","1535":"875","1538":"1000","1540":"1000","1543":"875","1545":"875","1546":"875","1547":"875","1550":"1000","1552":"1000","1555":"875","1557":"875","1560":"875","1562":"875","1565":"875","1567":"875","1570":"875","1571":"875","1574":"1000","1576":"1000","1579":"875","1581":"875","1584":"875","1586":"875","1587":"1000","1588":"1000","1591":"875","1593":"875","1594":"875","1595":"875","1598":"875","1600":"875","1601":"875","1602":"875","1603":"875","1604":"875","1605":"1000","1606":"1000","1607":"875","1608":"875","1609":"875","1610":"875","1611":"875","1614":"875","1616":"875","1619":"-1000","1621":"-1000","1624":"-1000","1625":"-875","1626":"-875","1627":"-875","1630":"-1000","1632":"-1000","1635":"-1000","1638":"-1000","1640":"-1000","1643":"-1000","1645":"-1000","1648":"-1000","1649":"-1000","1650":"-1000","1651":"-1000","1652":"-1000","1655":"-688","1657":"-688","1658":"-875","1661":"-875","1663":"-875","1666":"-875","1668":"-875","1669":"-875","1670":"-875","1671":"-875","1672":"-875","1675":"-1000","1677":"-1000","1680":"-1000","1682":"-1000","1685":"0","1688":"-1000","1690":"-1000","1693":"750","1695":"750","1697":"750","1699":"750","1702":"750","1704":"750","1707":"750","1709":"750","1710":"750","1711":"750","1712":"750","1713":"750","1715":"750","1718":"750","1720":"750","1722":"-750","1724":"-750","1726":"-750","1728":"-750","1730":"-750","1733":"50","1736":"50","1738":"750","1740":"750","1743":"750","1745":"750","1748":"750","1750":"750","1753":"750","1755":"750","1757":"750","1758":"750","1759":"750","1760":"750","1761":"750","1762":"750","1763":"750","1764":"750","1765":"750","1766":"750","1767":"750","1768":"750","1769":"750","1770":"750","1771":"750","1773":"-750","1775":"-750","1778":"-750","1780":"-750","1783":"-750","1786":"-750","1788":"-750","1789":"-750","1790":"-750","1793":"-750","1795":"-750","1796":"-750","1797":"-750","1800":"-750","1802":"-750","1804":"-750","1806":"-750","1807":"-750","1808":"-750","1809":"-750","1810":"-750","1811":"-750","1812":"-750","1813":"-750","1814":"-750","1817":"750","1818":"750","1819":"750","1820":"750","1821":"750","1822":"750","1823":"750","1824":"750","1825":"750","1826":"750","1827":"750","1828":"750","1829":"750","1830":"750","1831":"750","1833":"-750","1835":"-750","1838":"-750","1840":"-750","1843":"-750","1845":"-750","1848":"-750","1851":"-750","1853":"-750","1856":"-750","1857":"-750","1858":"-750","1859":"-750","1860":"-750","1861":"-750","1862":"-750","1865":"-750","1867":"-750","1870":"-750","1873":"-750","1875":"-750","1878":"-750","1880":"-750","1883":"625","1885":"625","1886":"625","1887":"625","1888":"625","1889":"625","1890":"625","1891":"625","1892":"625","1893":"625","1895":"625","1898":"625","1900":"625","1903":"625","1905":"625","1908":"625","1910":"625","1911":"625","1912":"625","1913":"625","1916":"625","1918":"625","1921":"625","1923":"625","1926":"625","1929":"625","1931":"625","1932":"625","1935":"625","1937":"625","1940":"625","1942":"625","1943":"625","1944":"583","1945":"583","1946":"625","1947":"625","1950":"625","1952":"625","1953":"625","1954":"625","1955":"625","1956":"625","1957":"625","1958":"625","1961":"625","1963":"625","1964":"625","1965":"625","1966":"625","1967":"625","1969":"-625","1971":"-625","1973":"-625","1975":"-625","1977":"-625","1979":"-625","1981":"-625","1983":"-625","1985":"-625","1987":"-625","1989":"-625","1991":"-625","1993":"-625","1995":"-625","1997":"-625","1999":"-625","2001":"-625","2003":"-625","2005":"-625","2007":"-625","2008":"-625","2009":"-625","2010":"-625","2011":"-625","2012":"-625","2013":"-625","2015":"625","2018":"0","2020":"-100","2021":"625","2024":"625","2026":"625","2029":"625","2031":"625","2034":"625","2036":"625","2039":"625","2041":"625","2044":"625","2046":"625","2049":"625","2051":"625","2053":"625","2055":"625","2058":"625","2060":"625","2063":"625","2066":"625","2068":"625","2071":"625","2073":"625","2076":"625","2078":"625","2079":"625","2080":"625","2081":"625","2082":"625","2083":"625","2084":"625","2085":"625","2086":"625","2087":"625","2088":"625","2089":"625","2090":"625","2091":"625","2092":"625","2093":"625","2094":"625","2095":"625","2096":"625","2099":"625","2102":"625","2104":"625","2107":"625","2109":"625","2112":"625","2114":"625","2117":"625","2119":"625","2122":"625","2124":"625","2125":"625","2126":"625","2127":"625","2128":"625","2129":"625","2130":"625","2131":"625","2134":"563","2135":"563","2136":"563","2139":"563","2141":"563","2144":"625","2146":"625","2149":"625","2151":"625","2154":"625","2156":"625","2157":"625","2158":"625","2159":"625","2160":"625","2161":"625","2162":"625","2163":"688","2164":"688","2165":"563","2166":"563","2167":"625","2168":"625","2169":"563","2170":"563","2171":"625","2172":"625","2173":"625","2174":"625","2175":"625","2176":"625","2177":"625","2180":"-625","2182":"-625","2185":"-625","2187":"-625","2189":"-625","2191":"-625","2194":"-625","2196":"-625","2199":"-625","2200":"-625","2202":"-625","2204":"-625","2206":"-625","2209":"-625","2211":"-625","2212":"-687","2213":"-563","2214":"-563","2215":"-625","2218":"-625","2220":"-625","2222":"-625","2224":"-625","2225":"-625","2226":"-625","2229":"-625","2231":"-625","2232":"-625","2233":"-625","2236":"-625","2238":"-625","2239":"-63","2240":"-63","2243":"-625","2246":"-625","2248":"-625","2249":"-563","2250":"-563","2251":"-625","2252":"-625","2255":"-625","2256":"-625","2257":"-563","2260":"-625","2263":"-625","2265":"-625","2268":"-625","2270":"-625","2273":"-625","2275":"-625","2277":"-625","2280":"-625","2283":"-625","2285":"-625","2286":"500","2287":"500","2288":"500","2289":"500","2292":"500","2294":"500","2295":"500","2298":"500","2300":"500","2303":"500","2306":"-200","2309":"-200","2312":"-200","2315":"-200","2318":"500","2320":"500","2323":"500","2325":"500","2328":"500","2330":"500","2333":"500","2335":"500","2338":"500","2340":"500","2342":"500","2343":"500","2344":"500","2345":"500","2348":"500","2350":"500","2351":"500","2352":"500","2354":"500","2357":"500","2359":"500","2362":"500","2364":"500","2365":"500","2366":"500","2369":"500","2372":"500","2374":"500","2376":"500","2379":"500","2381":"500","2382":"500","2383":"500","2386":"500","2388":"500","2389":"500","2390":"500","2392":"500","2394":"500","2397":"500","2399":"500","2402":"500","2404":"500","2405":"500","2406":"500","2407":"500","2408":"500","2409":"500","2410":"500","2411":"500","2412":"500","2414":"500","2417":"500","2419":"500","2420":"500","2421":"500","2422":"500","2423":"500","2425":"500","2428":"500","2430":"500","2433":"500","2435":"500","2438":"500","2440":"500","2441":"500","2442":"500","2443":"500","2444":"500","2445":"500","2446":"500","2447":"500","2448":"500","2451":"500","2453":"500","2454":"500","2455":"500","2456":"500","2459":"500","2461":"500","2463":"500","2465":"500","2468":"500","2470":"500","2473":"500","2475":"500","2476":"500","2477":"500","2480":"500","2482":"500","2483":"500","2484":"500","2487":"500","2489":"500","2492":"500","2494":"500","2496":"500","2498":"500","2501":"500","2503":"500","2505":"500","2507":"500","2508":"500","2509":"500","2510":"500","2511":"500","2514":"500","2516":"500","2519":"500","2521":"500","2524":"500","2526":"500","2527":"500","2528":"500","2531":"500","2533":"500","2535":"500","2538":"500","2540":"500","2543":"500","2545":"500","2546":"500","2547":"500","2550":"-750","2552":"-750","2555":"-750","2557":"-750","2560":"500","2562":"500","2563":"500","2564":"500","2565":"500","2566":"500","2567":"500","2568":"500","2569":"500","2570":"500","2571":"500","2572":"500","2573":"500","2574":"500","2575":"500","2576":"500","2579":"500","2581":"500","2584":"500","2586":"500","2587":"500","2588":"500","2589":"500","2590":"500","2591":"500","2592":"500","2595":"500","2597":"500","2600":"500","2602":"500","2605":"500","2607":"500","2609":"500","2611":"500","2614":"500","2616":"500","2619":"500","2621":"500","2624":"500","2626":"500","2629":"500","2631":"500","2632":"500","2633":"500","2634":"500","2635":"500","2637":"500","2639":"500","2641":"500","2642":"500","2643":"500","2644":"500","2645":"500","2648":"500","2650":"500","2651":"500","2654":"500","2656":"500","2658":"500","2660":"500","2661":"500","2662":"500","2663":"500","2666":"500","2667":"500","2668":"500","2669":"500","2670":"500","2671":"500","2672":"500","2673":"500","2674":"500","2675":"500","2676":"500","2677":"500","2678":"500","2679":"500","2680":"500","2681":"500","2682":"500","2683":"500","2684":"500","2685":"500","2686":"500","2687":"500","2688":"500","2689":"500","2690":"500","2691":"500","2692":"500","2693":"500","2694":"500","2695":"500","2696":"500","2697":"500","2698":"500","2699":"500","2702":"-500","2705":"-500","2707":"-500","2709":"-500","2712":"-500","2714":"-500","2717":"-500","2719":"-500","2721":"-500","2723":"-500","2726":"-500","2728":"-500","2730":"-500","2733":"-500","2736":"-500","2739":"-500","2741":"-500","2744":"-500","2745":"-500","2746":"-500","2747":"-500","2750":"-500","2751":"-500","2752":"-500","2755":"-500","2757":"-500","2760":"-500","2762":"-500","2763":"-500","2766":"-500","2768":"-500","2771":"-500","2773":"-500","2774":"-500","2775":"-500","2776":"-500","2777":"-500","2778":"-500","2779":"-500","2780":"-500","2783":"-500","2784":"-500","2785":"-500","2786":"-500","2787":"-500","2788":"-500","2789":"-500","2792":"-500","2795":"-500","2796":"-500","2799":"-500","2801":"-500","2802":"-500","2803":"-500","2804":"-500","2805":"-500","2808":"-500","2810":"-500","2813":"-500","2815":"-500","2818":"-500","2821":"-500","2823":"-500","2824":"-500","2827":"-500","2830":"-500","2831":"-500","2832":"-500","2834":"-500","2837":"-500","2840":"-500","2842":"-500","2845":"-500","2847":"-500","2850":"-500","2852":"-500","2853":"-500","2854":"-500","2857":"-500","2859":"-500","2862":"-500","2864":"-500","2866":"-500","2869":"-500","2871":"-500","2872":"-500","2873":"-500","2875":"-500","2878":"-500","2879":"-500","2882":"-500","2885":"-500","2887":"-500","2890":"-500","2892":"-500","2895":"-500","2897":"-500","2900":"-500","2902":"-500","2905":"-500","2907":"-500","2910":"-500","2911":"-500","2912":"-500","2915":"-500","2917":"-500","2918":"-500","2919":"-500","2922":"-500","2924":"-500","2927":"-500","2929":"-500","2932":"-500","2934":"-500","2937":"-500","2939":"-500","2941":"-500","2942":"-500","2943":"-500","2944":"-500","2945":"-500","2948":"-500","2950":"-500","2951":"-500","2952":"-500","2953":"-500","2954":"-500","2957":"-500","2959":"-500","2961":"-500","2964":"-500","2966":"-500","2969":"-500","2971":"-500","2972":"-500","2973":"-500","2974":"-500","2975":"-500","2978":"-500","2980":"-500","2983":"-500","2984":"-500","2987":"-500","2990":"-500","2993":"-500","2996":"-500","2998":"-500","3001":"-500","3004":"-500","3006":"-500","3009":"-400","3011":"-400","3013":"-50","3015":"-400","3017":"-400","3020":"-100","3022":"400","3023":"400","3024":"400","3025":"400","3028":"-400","3030":"-400","3033":"-400","3035":"-400","3036":"-600","3038":"-400","3040":"-600","3042":"750","3043":"750","3045":"600","3046":"600","3048":"800","3049":"800","3050":"800","3051":"800","3052":"800","3053":"800","3054":"800","3055":"800","3056":"-600","3057":"-600","3058":"-400","3059":"-400","3061":"750","3062":"0","3064":"0","3065":"0","3067":"0","3068":"0","3070":"800","3072":"800","3074":"850","3076":"656","3078":"0","3079":"0","3080":"0","3081":"0","3082":"0","3083":"0","3085":"0","3086":"0","3087":"688","3088":"556","3089":"556","3090":"556","3091":"556","3092":"556","3093":"556","3094":"556","3095":"-350","3097":"625","3099":"250","3101":"1000","3102":"750","3104":"375","3105":"250","3106":"500","3108":"500","3109":"500","3111":"625","3112":"750","3114":"250","3116":"250","3117":"625","3118":"875","3119":"625","3121":"250","3122":"375","3123":"-375","3125":"-875","3127":"-875","3129":"-375","3131":"-250","3133":"-625","3135":"-250","3136":"-625","3137":"-500","3139":"-437","3141":"-1000","3142":"-1000","3144":"-1000","3145":"-250","3146":"-750","3147":"-750","3148":"-250","3149":"-375","3150":"-312","3151":"-500","3152":"-250","3153":"-250","3154":"-250","3155":"-500","3157":"-750","3158":"-375","3160":"-750","3161":"-250","3162":"-250","3163":"-1000","3164":"-1000","3165":"-250","3166":"-250","3167":"-250","3168":"-375","3170":"-250","3172":"-250","3174":"-375","3176":"-250","3177":"-375","3178":"1000","3179":"1000","3180":"875","3181":"1000","3182":"875","3183":"875","3184":"875","3185":"1000","3186":"1000","3187":"1000","3188":"1000","3189":"875","3191":"1000","3192":"1000","3193":"875","3194":"875","3195":"875","3197":"875","3199":"875","3201":"1000","3203":"1000","3204":"1000","3205":"875","3206":"875","3208":"875","3209":"875","3210":"875","3212":"875","3213":"875","3214":"1000","3215":"875","3216":"875","3217":"1000","3218":"875","3219":"875","3220":"875","3221":"1000","3222":"875","3223":"875","3224":"875","3225":"875","3227":"-875","3228":"-875","3230":"-875","3232":"-1000","3233":"-1000","3235":"-875","3237":"-875","3238":"-875","3239":"-1000","3240":"-1000","3242":"-875","3243":"-1000","3245":"-1000","3246":"-875","3247":"-1000","3248":"-875","3249":"-1000","3250":"-1000","3251":"-1000","3252":"-1000","3253":"-1000","3255":"-1000","3256":"-875","3258":"-1000","3259":"-688","3261":"-1000","3263":"-875","3265":"-875","3267":"-1000","3269":"-875","3270":"-1000","3271":"-1000","3272":"-1000","3273":"-875","3274":"-875","3275":"-875","3276":"-875","3277":"-875","3278":"-1000","3280":"-875","3281":"-875","3282":"-1000","3283":"-1000","3284":"-1000","3285":"-1000","3287":"-875","3289":"-1000","3291":"-1000","3293":"-1000","3294":"-1000","3296":"750","3297":"750","3298":"750","3299":"750","3300":"750","3301":"750","3303":"750","3305":"750","3307":"750","3308":"750","3309":"750","3311":"750","3313":"750","3314":"750","3316":"750","3318":"750","3320":"750","3321":"750","3323":"750","3325":"750","3327":"750","3328":"750","3329":"750","3330":"750","3331":"750","3332":"750","3333":"750","3335":"750","3336":"750","3337":"750","3338":"-750","3339":"-750","3340":"-750","3341":"-750","3342":"-750","3343":"50","3344":"50","3345":"750","3346":"750","3347":"750","3348":"750","3349":"750","3350":"750","3351":"750","3352":"750","3353":"750","3354":"750","3355":"750","3356":"750","3357":"750","3359":"-750","3360":"-750","3362":"-750","3364":"-750","3365":"-750","3367":"-750","3368":"-750","3370":"-750","3372":"-750","3373":"-750","3374":"-750","3376":"-750","3378":"-750","3380":"-750","3381":"-750","3382":"-750","3384":"-750","3385":"-750","3386":"-750","3387":"-750","3388":"-750","3389":"-750","3390":"-750","3391":"-750","3392":"-750","3394":"-750","3395":"750","3396":"750","3397":"750","3398":"750","3399":"750","3400":"750","3401":"750","3402":"750","3403":"750","3404":"750","3405":"750","3406":"750","3407":"750","3408":"750","3409":"750","3411":"-750","3412":"-750","3414":"-750","3415":"-750","3416":"-750","3417":"-750","3418":"-750","3419":"-750","3420":"-750","3421":"-750","3422":"-750","3423":"-750","3424":"-750","3426":"-750","3428":"-750","3429":"-750","3430":"-750","3432":"625","3433":"625","3434":"625","3435":"625","3436":"625","3437":"625","3438":"625","3439":"625","3440":"625","3441":"625","3442":"625","3444":"563","3445":"625","3446":"625","3448":"625","3450":"625","3452":"625","3453":"625","3455":"625","3456":"625","3457":"625","3458":"625","3459":"625","3460":"625","3461":"625","3463":"625","3465":"625","3466":"625","3467":"583","3468":"625","3469":"-583","3470":"625","3471":"625","3472":"625","3473":"625","3474":"625","3475":"625","3476":"625","3477":"625","3478":"625","3479":"625","3480":"625","3481":"625","3482":"-625","3483":"-625","3484":"-625","3485":"-625","3487":"625","3489":"0","3491":"0","3492":"0","3493":"625","3494":"625","3496":"625","3498":"625","3499":"625","3500":"625","3501":"625","3502":"625","3503":"625","3504":"625","3506":"625","3507":"625","3509":"625","3510":"625","3511":"625","3512":"625","3513":"625","3514":"625","3515":"625","3516":"625","3517":"625","3518":"625","3519":"625","3520":"625","3522":"625","3523":"625","3524":"625","3525":"625","3526":"625","3527":"625","3529":"625","3530":"625","3531":"625","3532":"625","3533":"625","3535":"625","3536":"625","3537":"563","3538":"625","3540":"625","3541":"625","3542":"625","3543":"625","3544":"625","3545":"625","3546":"688","3547":"563","3548":"625","3549":"563","3550":"625","3551":"625","3552":"625","3554":"625","3556":"-625","3557":"-625","3558":"-625","3560":"-625","3562":"-625","3564":"-625","3565":"-625","3567":"-625","3569":"-625","3571":"-625","3572":"-625","3573":"-625","3575":"-625","3577":"-625","3579":"-625","3581":"-625","3582":"-625","3583":"-625","3584":"-625","3586":"-625","3588":"-625","3589":"-625","3590":"-625","3591":"-625","3592":"-625","3594":"-625","3595":"-625","3596":"-625","3598":"-625","3600":"-625","3602":"-625","3604":"-625","3606":"-625","3607":"-625","3608":"-625","3609":"-625","3610":"-63","3611":"-625","3612":"-625","3613":"-625","3615":"-625","3617":"-625","3618":"-563","3619":"-625","3620":"-625","3621":"-625","3623":"-625","3625":"-625","3626":"-625","3627":"-625","3629":"-625","3630":"-625","3632":"-625","3634":"-625","3636":"-625","3637":"-625","3639":"-625","3640":"-625","3641":"-625","3643":"-625","3644":"-625","3646":"-625","3647":"-687","3648":"-625","3649":"500","3650":"500","3651":"500","3652":"500","3654":"500","3655":"500","3656":"-200","3657":"-200","3658":"-200","3659":"-200","3661":"500","3663":"500","3664":"500","3665":"500","3666":"500","3668":"500","3669":"500","3670":"500","3671":"500","3672":"500","3674":"500","3675":"500","3676":"500","3678":"500","3679":"500","3680":"500","3682":"500","3683":"500","3684":"500","3686":"500","3687":"500","3689":"500","3690":"500","3692":"500","3693":"500","3695":"500","3697":"500","3698":"500","3699":"500","3700":"500","3701":"500","3702":"500","3703":"500","3704":"500","3705":"500","3706":"500","3708":"500","3709":"500","3711":"500","3712":"500","3714":"500","3715":"500","3716":"500","3717":"500","3718":"500","3719":"500","3720":"500","3721":"500","3722":"500","3723":"500","3724":"500","3725":"500","3726":"500","3727":"500","3728":"500","3729":"500","3730":"500","3731":"500","3733":"500","3734":"500","3735":"500","3736":"500","3737":"500","3739":"500","3740":"500","3741":"500","3743":"500","3744":"500","3745":"500","3746":"500","3747":"500","3748":"500","3749":"500","3751":"500","3752":"500","3753":"500","3754":"500","3755":"500","3756":"500","3757":"500","3758":"500","3759":"500","3760":"500","3761":"500","3762":"500","3763":"500","3764":"500","3766":"500","3768":"500","3770":"500","3772":"500","3774":"500","3776":"500","3778":"500","3779":"500","3780":"500","3781":"500","3782":"500","3783":"500","3785":"500","3786":"500","3787":"500","3788":"-750","3789":"-750","3790":"500","3792":"500","3793":"500","3794":"500","3795":"500","3796":"500","3797":"500","3798":"500","3799":"500","3800":"500","3801":"500","3803":"500","3804":"500","3805":"500","3807":"500","3808":"500","3810":"500","3811":"500","3812":"500","3813":"500","3815":"500","3816":"500","3817":"500","3818":"500","3819":"500","3820":"500","3821":"500","3822":"500","3823":"500","3825":"500","3826":"500","3827":"500","3828":"500","3830":"500","3831":"500","3832":"500","3833":"500","3834":"500","3835":"500","3836":"500","3837":"500","3839":"500","3841":"500","3843":"500","3844":"500","3845":"500","3846":"500","3847":"500","3848":"500","3849":"500","3850":"500","3851":"500","3852":"500","3853":"500","3854":"500","3855":"500","3856":"500","3857":"500","3858":"500","3860":"500","3862":"500","3863":"500","3864":"500","3866":"-500","3868":"-500","3870":"-500","3871":"-500","3873":"-500","3875":"-500","3877":"-500","3879":"-500","3881":"-500","3882":"-500","3883":"-500","3884":"-500","3885":"-500","3886":"-500","3887":"-500","3889":"-500","3890":"-500","3891":"-500","3893":"-500","3895":"-500","3897":"-500","3898":"-500","3900":"-500","3902":"-500","3904":"-500","3906":"-500","3908":"-500","3909":"-500","3911":"-500","3912":"-500","3914":"-500","3916":"-500","3918":"-500","3919":"-500","3920":"-500","3922":"-500","3924":"-500","3926":"-500","3927":"-500","3929":"-500","3930":"-500","3931":"-500","3932":"-500","3933":"-500","3935":"-500","3936":"-500","3938":"-500","3940":"-500","3942":"-500","3943":"-500","3944":"-500","3945":"-500","3947":"-500","3949":"-500","3951":"-500","3953":"-500","3954":"-500","3955":"-500","3956":"-500","3958":"-500","3959":"-500","3960":"-500","3961":"-500","3962":"-500","3963":"-500","3965":"-500","3967":"-500","3969":"-500","3970":"-500","3972":"-500","3973":"-500","3975":"-500","3977":"-500","3978":"-500","3980":"-500","3982":"-500","3983":"-500","3984":"-500","3986":"-500","3987":"-500","3988":"-500","3990":"-500","3991":"-500","3992":"-500","3993":"-500","3994":"-500","3995":"-500","3997":"-500","3998":"-500","4000":"-500","4002":"-500","4004":"-500","4005":"-500","4007":"-500","4008":"-500","4009":"-500","4010":"-500","4011":"-500","4012":"-500","4013":"-500","4014":"-500","4015":"-500","4016":"-500","4017":"-500","4018":"-500","4019":"-500","4021":"-500","4022":"-500","4024":"-500","4026":"-500","4028":"-500","4030":"-500","4031":"-500","4032":"-500","4034":"-500","4036":"-500","4037":"-500","4038":"-500","4039":"-500","4041":"-500","4043":"-500","4045":"-500","4047":"-500","4048":"-500","4049":"-500","4051":"-500","4052":"-500","4054":"-500","4056":"-500","4058":"-500","4060":"-500","4062":"-500","4064":"-500","4065":"-500","4066":"-500","4068":"-500","4070":"-500","4072":"-500","4073":"-500","4074":"-500","4076":"-500","4077":"-500","4079":"-500","4081":"-500","4083":"-500","4085":"-500","4087":"-500","4089":"-500","4090":"-500","4091":"-500","4092":"-500","4094":"-500","4095":"-500","4097":"-500","4098":"-500","4099":"-500","4101":"-500","4103":"-500","4104":"-500","4105":"-500","4106":"-500","4107":"-500","4109":"-500","4111":"-500","4113":"-500","4115":"-500","4117":"-500","4118":"-500","4119":"-500","4120":"-500","4121":"-500","4122":"-500","4123":"-500","4125":"-500","4127":"-500","4129":"-500","4131":"-500","4133":"-500","4134":"-500","4136":"-500","4138":"-500","4140":"-500","4142":"-500","4143":"-500","4144":"-500","4146":"-500","4147":"-500","4148":"-500","4149":"-500","4151":"-500","4152":"-500","4154":"-500","4156":"-500","4157":"-500","4159":"-500","4160":"-500","4162":"-500","4163":"-500","4164":"-500","4166":"-500","4168":"-500","4170":"-500","4171":"-500","4173":"-500","4174":"-500","4176":"-500","4177":"-500","4178":"-500","4179":"-500","4180":"-500","4181":"-500","4182":"-500","4184":"-500","4186":"-500","4187":"-500","4188":"-500","4189":"-500","4190":"-500","4191":"-500","4193":"-500","4195":"-500","4196":"-500","4198":"-500","4199":"-500","4201":"-500","4202":"-500","4203":"-500","4204":"-500","4205":"-500","4206":"-500","4208":"-500","4210":"-500","4211":"-500","4212":"-500","4213":"-500","4215":"-500","4217":"-500","4219":"-500","4221":"-500","4223":"-500","4224":"-500","4226":"-500","4227":"-500","4229":"-500","4231":"-500","4233":"-500","4235":"-500","4236":"-500","4237":"-500","4239":"-500","4241":"-500","4243":"-500","4245":"-500","4247":"-500","4248":"-500","4250":"-500","4252":"-500","4254":"-500","4256":"-500","4258":"-500","4259":"-500","4261":"-500","4263":"-500","4265":"-500","4267":"-500","4268":"-500","4269":"-500","4271":"-500","4273":"-500","4274":"-500","4275":"-500","4277":"-500","4278":"-400","4280":"-100","4281":"-200","4283":"400","4285":"400","4287":"400","4289":"400","4291":"400","4293":"400","4294":"-400","4296":"-300","4297":"400","4298":"400","4300":"-400","4301":"-400","4303":"-400","4304":"-400","4306":"-400","4307":"-400","4309":"-400","4310":"-400","4312":"-400","4313":"-400","4314":"-400","4315":"-400","4317":"-400","4318":"-400","4320":"-400","4321":"-400","4323":"-400","4324":"-400","4326":"-400","4327":"-400","4329":"-400","4330":"-400","4331":"-400","4332":"-400","4334":"-400","4335":"-400","4337":"-400","4338":"-400","4340":"-400","4341":"-400","4343":"-400","4344":"1000","4345":"438","4346":"594","4347":"354","4348":"469","4349":"297","4350":"438","4351":"438","4352":"650","4353":"550","4354":"375","4355":"250","4356":"500","4357":"875","4358":"563","4359":"656","4360":"250","4361":"292","4362":"688","4363":"475","4364":"750","4365":"325","4366":"725","4367":"325","4368":"813","4369":"313","4370":"344","4371":"542","4372":"750","4373":"875","4374":"583","4375":"776","4376":"750","4377":"750","4378":"625","4379":"250","4380":"531","4381":"563","4382":"563","4383":"370","4384":"825","4385":"307","4386":"281","4387":"438","4388":"750","4389":"339","4390":"333","4391":"518","4392":"527","4393":"500","4394":"719","4395":"250","4396":"375","4397":"281","4398":"304","4399":"375","4400":"391","4401":"438","4402":"500","4403":"631","4404":"-437","4405":"-275","4406":"-250","4407":"-500","4408":"-425","4409":"-687","4410":"-250","4411":"-271","4412":"-375","4413":"-271","4414":"-450","4415":"-354","4416":"-719","4417":"-375","4418":"-400","4419":"-250","4420":"-469","4421":"-313","4422":"-281","4423":"-250","4424":"-250","4425":"-344","4426":"-406","4427":"-750","4428":"-375","4429":"-292","4430":"-500","4431":"-250","4432":"-625","4433":"-300","4434":"-400","4435":"-250","4436":"-250","4437":"-479","4438":"-833","4439":"-687","4440":"-344","4441":"-437","4442":"-750","4443":"-406","4444":"-750","4445":"-375","4446":"-281","4447":"-429","4448":"-250","4449":"-375","4450":"-281","4451":"-312","4452":"-687","4453":"-875","4454":"-875","4455":"-375","4456":"-625","4457":"-750","4458":"-312","4459":"-250","4460":"-531","4461":"-429","4462":"-250","4463":"-281","4464":"-250","4465":"-375","4466":"-333","4467":"-516","4468":"-325","4469":"-375","4470":"-375","4471":"-250","4472":"-750","4473":"-250","4474":"-500","4475":"-281","4476":"-500","4477":"-562","4478":"-1000","4479":"-1000","4480":"-350","4481":"-281","4482":"-500","4483":"-271","4484":"-475","4485":"-469","4486":"-875","4487":"-375","4488":"-437","4489":"-750","4490":"-313","4491":"-400","4492":"1000","4493":"250","4494":"667","4495":"750","4496":"250","4497":"313","4498":"625","4499":"375","4500":"875","4501":"375","4502":"666","4503":"625","4504":"250","4505":"625","4506":"375","4507":"375","4508":"1000","4509":"1000","4510":"688","4511":"500","4512":"750","4513":"250","4514":"250","4515":"375","4516":"375","4517":"375","4518":"500","4519":"375","4520":"500","4521":"500","4522":"875","4523":"688","4524":"938","4525":"1000","4526":"375","4527":"500","4528":"375","4529":"875","4530":"625","4531":"625","4532":"375","4533":"375","4534":"375","4535":"875","4536":"313","4537":"250","4538":"417","4539":"938","4540":"625","4541":"313","4542":"500","4543":"375","4544":"292","4545":"375","4546":"625","4547":"625","4548":"625","4549":"875","4550":"500","4551":"375","4552":"625","4553":"500","4554":"250","4555":"875","4556":"438","4557":"625","4558":"250","4559":"250","4560":"292","4561":"1000","4562":"750","4563":"313","4564":"1000","4565":"375","4566":"375","4567":"250","4568":"375","4569":"875","4570":"250","4571":"458","4572":"625","4573":"375","4574":"438","4575":"375","4576":"500","4577":"875","4578":"500","4579":"500","4580":"375","4581":"375","4582":"500","4583":"875","4584":"625","4585":"625","4586":"750","4587":"750","4588":"1000","4589":"750","4590":"750","4591":"500","4592":"250","4593":"625","4594":"625","4595":"875","4596":"813","4597":"625","4598":"313","4599":"625","4600":"750","4601":"292","4602":"688","4603":"250","4604":"875","4605":"875","4606":"375","4607":"875","4608":"688","4609":"542","4610":"542","4611":"625","4612":"625","4613":"375","4614":"375","4615":"500","4616":"375","4617":"500","4618":"500","4619":"375","4620":"938","4621":"625","4622":"375","4623":"625","4624":"750","4625":"1000","4626":"500","4627":"813","4628":"1000","4629":"625","4630":"375","4631":"500","4632":"375","4633":"250","4634":"500","4635":"500","4636":"500","4637":"625","4638":"625","4639":"500","4640":"500","4641":"438","4642":"500","4643":"625","4644":"750","4645":"500","4646":"625","4647":"375","4648":"375","4649":"625","4650":"375","4651":"250","4652":"625","4653":"250","4654":"375","4655":"563","4656":"563","4657":"875","4658":"875","4659":"625","4660":"625","4661":"583","4662":"375","4663":"438","4664":"625","4665":"375","4666":"250","4667":"625","4668":"875","4669":"750","4670":"792","4671":"375","4672":"625","4673":"313","4674":"250","4675":"250","4676":"1000","4677":"688","4678":"1000","4679":"688","4680":"875","4681":"250","4682":"375","4683":"688","4684":"250","4685":"438","4686":"375","4687":"313","4688":"250","4689":"500","4690":"250","4691":"531","4692":"250","4693":"625","4694":"1000","4695":"375","4696":"875","4697":"625","4698":"625","4699":"625","4700":"500","4701":"750","4702":"625","4703":"875","4704":"625","4705":"292","4706":"313","4707":"1000","4708":"938","4709":"375","4710":"313","4711":"833","4712":"500","4713":"375","4714":"250","4715":"500","4716":"375","4717":"250","4718":"625","4719":"250","4720":"375","4721":"250","4722":"375","4723":"375","4724":"250","4725":"375","4726":"375","4727":"563","4728":"375","4729":"1000","4730":"500","4731":"563","4732":"1000","4733":"333","4734":"375","4735":"375","4736":"625","4737":"313","4738":"438","4739":"750","4740":"500","4741":"1000","4742":"-875","4743":"-250","4744":"-250","4745":"-625","4746":"-250","4747":"-312","4748":"-250","4749":"-500","4750":"-437","4751":"-375","4752":"-542","4753":"-333","4754":"-312","4755":"-250","4756":"-250","4757":"-250","4758":"-250","4759":"-250","4760":"-750","4761":"-667","4762":"-625","4763":"-1000","4764":"-312","4765":"-250","4766":"-375","4767":"-437","4768":"-500","4769":"-437","4770":"-437","4771":"-333","4772":"-500","4773":"-375","4774":"-250","4775":"-583","4776":"-250","4777":"-250","4778":"-312","4779":"-375","4780":"-375","4781":"-562","4782":"-375","4783":"-500","4784":"-375","4785":"-250","4786":"-1000","4787":"-625","4788":"-875","4789":"-250","4790":"-875","4791":"-375","4792":"-750","4793":"-375","4794":"-375","4795":"-625","4796":"-375","4797":"-375","4798":"-333","4799":"-500","4800":"-750","4801":"-625","4802":"-625","4803":"-750","4804":"-375","4805":"-437","4806":"-625","4807":"-375","4808":"-1000","4809":"-500","4810":"-250","4811":"-250","4812":"-500","4813":"-312","4814":"-375","4815":"-312","4816":"-458","4817":"-1000","4818":"-437","4819":"-406","4820":"-625","4821":"-250","4822":"-875","4823":"-250","4824":"-750","4825":"-312","4826":"-375","4827":"-333","4828":"-250","4829":"-292","4830":"-875","4831":"-531","4832":"-250","4833":"-500","4834":"-375","4835":"-1000","4836":"-375","4837":"-750","4838":"-500","4839":"-375","4840":"-375","4841":"-500","4842":"-500","4843":"-1000","4844":"-375","4845":"-625","4846":"-312","4847":"-1000","4848":"-625","4849":"-625","4850":"-750","4851":"-800","4852":"-375","4853":"-500","4854":"-250","4855":"-250","4856":"-250","4857":"-250","4858":"-875","4859":"-375","4860":"-333","4861":"-375","4862":"-375","4863":"-844","4864":"-750","4865":"-250","4866":"-500","4867":"-500","4868":"-500","4869":"-333","4870":"-750","4871":"-437","4872":"-250","4873":"-500","4874":"-500","4875":"-750","4876":"-1000","4877":"-292","4878":"-875","4879":"-312","4880":"-250","4881":"-250","4882":"-500","4883":"-500","4884":"-750","4885":"-250","4886":"-250","4887":"-750","4888":"-375","4889":"-375","4890":"-562","4891":"-437","4892":"-750","4893":"-750","4894":"-312","4895":"-375","4896":"-750","4897":"-750","4898":"-375","4899":"-875","4900":"-875","4901":"-500","4902":"-875","4903":"-500","4904":"-312","4905":"-500","4906":"-250","4907":"-594","4908":"-750","4909":"-667","4910":"-1000","4911":"-1000","4912":"-750","4913":"-750","4914":"-375","4915":"-250","4916":"-250","4917":"-292","4918":"-437","4919":"-333","4920":"-312","4921":"-312","4922":"-375","4923":"-458","4924":"-375","4925":"-250","4926":"-750","4927":"-250","4928":"-292","4929":"-500","4930":"-469","4931":"-1000","4932":"-375","4933":"-375","4934":"-250","4935":"-250","4936":"-750","4937":"-250","4938":"-375","4939":"-500","4940":"-250","4941":"-250","4942":"-292","4943":"-417","4944":"-1000","4945":"-250","4946":"-1000","4947":"-375","4948":"-250","4949":"-1000","4950":"-500","4951":"-458","4952":"-437","4953":"-500","4954":"-250","4955":"-1000","4956":"-312","4957":"-250","4958":"-625","4959":"-375","4960":"-625","4961":"-250","4962":"-469","4963":"-688","4964":"-375","4965":"-625","4966":"-625","4967":"-500","4968":"-625","4969":"-500","4970":"-625","4971":"-375","4972":"-500","4973":"-250","4974":"-417","4975":"-750","4976":"-1000","4977":"-312","4978":"-750","4979":"-250","4980":"-1000","4981":"-250","4982":"-500","4983":"-375","4984":"-625","4985":"-750","4986":"-375","4987":"-250","4988":"-687","4989":"-750","4990":"-875","4991":"-750","4992":"-375","4993":"-375","4994":"-500","4995":"-333","4996":"-375","4997":"-437","4998":"-625","4999":"-250","5000":"-500","5001":"-500","5002":"-250","5003":"-250","5004":"-750","5005":"-250","5006":"-625","5007":"-1000","5008":"-375","5009":"-375","5010":"-312","5011":"-500","5012":"-375","5013":"-625","5014":"-333","5015":"-750","5016":"-333","5017":"-375","5018":"-250","5019":"-375","5020":"-250","5021":"-250","5022":"-500","5023":"-250","5024":"-437","5025":"-250","5026":"-625","5027":"-500","5028":"-250","5029":"-750","5030":"-875","5031":"-562","5032":"-562","5033":"-625","5034":"-250","5035":"-875","5036":"-750","5037":"-562","5038":"-500","5039":"-531","5040":"-750","5041":"-437","5042":"-250","5043":"-437","5044":"-375","5045":"-625","5046":"-625","5047":"-250","5048":"-250","5049":"-250","5050":"-375","5051":"-250","5052":"-625","5053":"-531","5054":"-437","5055":"-375","5056":"-312","5057":"-250","5058":"-250","5059":"-500","5060":"-562","5061":"-750","5062":"-875","5063":"-625","5064":"-375","5065":"-437","5066":"-292","5067":"-250","5068":"-375","5069":"-750","5070":"-500","5071":"-375","5072":"-500","5073":"-375","5074":"-250","5075":"-250","5076":"-292","5077":"-750","5078":"-375","5079":"-500","5080":"-250","5081":"-250","5082":"-750","5083":"-1000","5084":"-375","5085":"-375","5086":"-625","5087":"-1000","5088":"-469","5089":"-437","5090":"-312","5091":"-500","5092":"-312","5093":"-500","5094":"-1000","5095":"-750","5096":"-375","5097":"-562","5098":"-250","5099":"-250","5100":"-750","5101":"-375","5102":"-375","5103":"-500","5104":"-375","5105":"-500","5106":"-375","5107":"-417","5108":"-500","5109":"-375","5110":"-500","5111":"-250","5112":"-312","5113":"-250","5114":"-292","5115":"-333","5116":"-333","5117":"-375","5118":"-625","5119":"-375","5120":"-375","5121":"-500","5122":"-625","5123":"-312","5124":"-750","5125":"-500","5126":"-312","5127":"-375","5128":"-500","5129":"-625","5130":"-500","5131":"-625","5132":"-312","5133":"-292","5134":"-562","5135":"-375","5136":"-708","5137":"-437","5138":"-250","5139":"-250","5140":"-625","5141":"-1000","5142":"-562","5143":"-625","5144":"-250","5145":"-250","5146":"-250","5147":"-500","5148":"-917","5149":"-375","5150":"-750","5151":"-500","5152":"-781","5153":"-500","5154":"-937","5155":"-437","5156":"-250","5157":"-375","5158":"-750","5159":"-458","5160":"-703","5161":"-625","5162":"-417","5163":"-625","5164":"-625","5165":"-625","5166":"-250","5167":"-500","5168":"-333","5169":"-250","5170":"-250","5171":"-250","5172":"-750","5173":"-292","5174":"-458","5175":"-375","5176":"-875","5177":"-250","5178":"-250","5179":"-500","5180":"-625","5181":"-500","5182":"-1000","5183":"-750","5184":"-500","5185":"-500","5186":"-437","5187":"-437","5188":"-250","5189":"-562","5190":"-1000","5191":"-437","5192":"-625","5193":"-312","5194":"-250","5195":"-375","5196":"-625","5197":"-250","5198":"-1000","5199":"-687","5200":"-250","5201":"-1000","5202":"-500","5203":"-750","5204":"-250","5205":"-500","5206":"-250","5207":"-250","5208":"-500","5209":"-500","5210":"-500","5211":"875","5212":"1000","5213":"1000","5214":"813","5215":"1000","5216":"1000","5217":"1000","5218":"1000","5219":"875","5220":"875","5221":"813","5222":"875","5223":"1000","5224":"875","5225":"813","5226":"813","5227":"813","5228":"875","5229":"875","5230":"875","5231":"1000","5232":"1000","5233":"875","5234":"813","5235":"875","5236":"875","5237":"1000","5238":"813","5239":"1000","5240":"1000","5241":"1000","5242":"875","5243":"875","5244":"875","5245":"875","5246":"875","5247":"813","5248":"875","5249":"1000","5250":"1000","5251":"1000","5252":"875","5253":"875","5254":"1000","5255":"875","5256":"1000","5257":"813","5258":"875","5259":"1000","5260":"875","5261":"1000","5262":"813","5263":"1000","5264":"875","5265":"875","5266":"1000","5267":"1000","5268":"875","5269":"875","5270":"1000","5271":"1000","5272":"1000","5273":"1000","5274":"875","5275":"875","5276":"875","5277":"875","5278":"875","5279":"792","5280":"875","5281":"875","5282":"875","5283":"875","5284":"875","5285":"1000","5286":"875","5287":"875","5288":"875","5289":"875","5290":"875","5291":"875","5292":"875","5293":"875","5294":"875","5295":"875","5296":"875","5297":"1000","5298":"875","5299":"1000","5300":"1000","5301":"875","5302":"875","5303":"875","5304":"875","5305":"875","5306":"875","5307":"813","5308":"875","5309":"875","5310":"750","5311":"1000","5312":"1000","5313":"875","5314":"875","5315":"1000","5316":"1000","5317":"1000","5318":"1000","5319":"875","5320":"875","5321":"875","5322":"812","5323":"875","5324":"1000","5325":"1000","5326":"875","5327":"875","5328":"875","5329":"875","5330":"875","5331":"875","5332":"1000","5333":"1000","5334":"813","5335":"875","5336":"875","5337":"875","5338":"875","5339":"875","5340":"875","5341":"1000","5342":"1000","5343":"1000","5344":"1000","5345":"813","5346":"1000","5347":"1000","5348":"875","5349":"1000","5350":"1000","5351":"875","5352":"875","5353":"1000","5354":"875","5355":"1000","5356":"1000","5357":"875","5358":"875","5359":"875","5360":"1000","5361":"1000","5362":"875","5363":"875","5364":"875","5365":"1000","5366":"1000","5367":"958","5368":"875","5369":"1000","5370":"875","5371":"1000","5372":"813","5373":"1000","5374":"938","5375":"687","5376":"875","5377":"1000","5378":"1000","5379":"875","5380":"813","5381":"875","5382":"875","5383":"1000","5384":"875","5385":"875","5386":"1000","5387":"1000","5388":"1000","5389":"1000","5390":"1000","5391":"1000","5392":"875","5393":"1000","5394":"1000","5395":"813","5396":"833","5397":"1000","5398":"1000","5399":"1000","5400":"875","5401":"1000","5402":"875","5403":"1000","5404":"-875","5405":"-812","5406":"-917","5407":"-1000","5408":"-1000","5409":"-875","5410":"-1000","5411":"-875","5412":"-813","5413":"-875","5414":"-875","5415":"-1000","5416":"-875","5417":"-771","5418":"-1000","5419":"-1000","5420":"-1000","5421":"-1000","5422":"-1000","5423":"-709","5424":"-875","5425":"-1000","5426":"-875","5427":"-1000","5428":"-1000","5429":"-875","5430":"-875","5431":"-1000","5432":"-875","5433":"-1000","5434":"-1000","5435":"-1000","5436":"-812","5437":"-1000","5438":"-1000","5439":"-1000","5440":"-875","5441":"-1000","5442":"-875","5443":"-875","5444":"-1000","5445":"-1000","5446":"-1000","5447":"-1000","5448":"-875","5449":"-875","5450":"-1000","5451":"-875","5452":"-1000","5453":"-1000","5454":"-875","5455":"-1000","5456":"-1000","5457":"-875","5458":"-875","5459":"-875","5460":"-875","5461":"-1000","5462":"-937","5463":"-1000","5464":"-781","5465":"-875","5466":"-875","5467":"-1000","5468":"-1000","5469":"-1000","5470":"-1000","5471":"-1000","5472":"-875","5473":"-1000","5474":"-1000","5475":"-875","5476":"-833","5477":"-875","5478":"-875","5479":"-875","5480":"-1000","5481":"-875","5482":"-1000","5483":"-875","5484":"-875","5485":"-1000","5486":"-812","5487":"-1000","5488":"-875","5489":"-1000","5490":"-1000","5491":"-1000","5492":"-875","5493":"-1000","5494":"-875","5495":"-1000","5496":"-1000","5497":"-875","5498":"-875","5499":"-1000","5500":"-1000","5501":"-875","5502":"-1000","5503":"-875","5504":"-875","5505":"-688","5506":"-875","5507":"-1000","5508":"-875","5509":"-875","5510":"-875","5511":"-1000","5512":"-1000","5513":"-1000","5514":"-1000","5515":"-937","5516":"-1000","5517":"-875","5518":"-1000","5519":"-1000","5520":"-1000","5521":"-875","5522":"-1000","5523":"-875","5524":"-1000","5525":"-875","5526":"-1000","5527":"-875","5528":"-1000","5529":"-1000","5530":"-875","5531":"-875","5532":"-1000","5533":"-1000","5534":"-1000","5535":"-1000","5536":"-1000","5537":"-875","5538":"-875","5539":"-1000","5540":"-1000","5541":"-1000","5542":"-875","5543":"-1000","5544":"-875","5545":"-1000","5546":"-1000","5547":"-1000","5548":"-1000","5549":"-1000","5550":"-875","5551":"-1000","5552":"-1000","5553":"-1000","5554":"-875","5555":"-1000","5556":"-1000","5557":"-1000","5558":"-1000","5559":"-875","5560":"-1000","5561":"-1000","5562":"-1000","5563":"-1000","5564":"-812","5565":"-875","5566":"-1000","5567":"-1000","5568":"-1000","5569":"-875","5570":"-1000","5571":"-1000","5572":"-1000","5573":"-792","5574":"-875","5575":"-1000","5576":"-1000","5577":"-1000","5578":"-875","5579":"-875","5580":"-875","5581":"-875","5582":"-875","5583":"-1000","5584":"-1000","5585":"-1000","5586":"-875","5587":"-875","5588":"-1000","5589":"-1000","5590":"-1000","5591":"-875","5592":"-875","5593":"-875","5594":"-875","5595":"-875","5596":"-875","5597":"-875","5598":"-875","5599":"-875","5600":"-875","5601":"-875","5602":"-1000","5603":"-1000","5604":"-1000","5605":"-1000","5606":"-1000","5607":"-875","5608":"-875","5609":"-813","5610":"-1000","5611":"-1000","5612":"-875","5613":"-1000","5614":"-1000","5615":"-1000","5616":"-875","5617":"-1000","5618":"-1000","5619":"-1000","5620":"-1000","5621":"-1000","5622":"-1000","5623":"-1000","5624":"-1000","5625":"-875","5626":"-1000","5627":"-875","5628":"-1000","5629":"-875","5630":"-1000","5631":"-1000","5632":"-812","5633":"-875","5634":"-1000","5635":"-1000","5636":"-875","5637":"-875","5638":"-1000","5639":"-1000","5640":"-1000","5641":"-1000","5642":"-1000","5643":"-1000","5644":"-1000","5645":"-875","5646":"-1000","5647":"-875","5648":"-1000","5649":"-812","5650":"-875","5651":"-1000","5652":"-1000","5653":"-875","5654":"-875","5655":"-875","5656":"-875","5657":"-875","5658":"-875","5659":"-1000","5660":"-1000","5661":"-1000","5662":"-1000","5663":"-875","5664":"-875","5665":"-1000","5666":"-1000","5667":"-1000","5668":"-875","5669":"-1000","5670":"-1000","5671":"-875","5672":"-1000","5673":"-1000","5674":"-1000","5675":"-875","5676":"-917","5677":"-812","5678":"-1000","5679":"-875","5680":"-1000","5681":"-1000","5682":"-1000","5683":"750","5684":"750","5685":"750","5686":"750","5687":"750","5688":"750","5689":"646","5690":"750","5691":"750","5692":"750","5693":"750","5694":"750","5695":"750","5696":"750","5697":"750","5698":"750","5699":"750","5700":"750","5701":"750","5702":"750","5703":"750","5704":"750","5705":"750","5706":"750","5707":"750","5708":"750","5709":"750","5710":"750","5711":"750","5712":"750","5713":"750","5714":"750","5715":"750","5716":"750","5717":"750","5718":"750","5719":"750","5720":"750","5721":"750","5722":"750","5723":"750","5724":"750","5725":"750","5726":"750","5727":"750","5728":"750","5729":"750","5730":"687","5731":"750","5732":"750","5733":"750","5734":"750","5735":"750","5736":"750","5737":"750","5738":"750","5739":"750","5740":"750","5741":"750","5742":"750","5743":"750","5744":"750","5745":"750","5746":"750","5747":"750","5748":"750","5749":"750","5750":"750","5751":"750","5752":"750","5753":"750","5754":"750","5755":"750","5756":"750","5757":"750","5758":"750","5759":"750","5760":"750","5761":"750","5762":"750","5763":"750","5764":"750","5765":"750","5766":"750","5767":"750","5768":"750","5769":"750","5770":"750","5771":"750","5772":"750","5773":"750","5774":"750","5775":"750","5776":"750","5777":"750","5778":"750","5779":"750","5780":"750","5781":"750","5782":"750","5783":"750","5784":"750","5785":"750","5786":"750","5787":"750","5788":"750","5789":"750","5790":"750","5791":"750","5792":"750","5793":"750","5794":"750","5795":"750","5796":"750","5797":"750","5798":"750","5799":"750","5800":"750","5801":"750","5802":"750","5803":"750","5804":"750","5805":"750","5806":"750","5807":"750","5808":"750","5809":"750","5810":"750","5811":"750","5812":"750","5813":"750","5814":"750","5815":"750","5816":"750","5817":"750","5818":"750","5819":"750","5820":"750","5821":"750","5822":"750","5823":"656","5824":"750","5825":"750","5826":"750","5827":"750","5828":"750","5829":"750","5830":"750","5831":"750","5832":"750","5833":"750","5834":"750","5835":"750","5836":"750","5837":"750","5838":"750","5839":"750","5840":"750","5841":"750","5842":"750","5843":"750","5844":"750","5845":"750","5846":"750","5847":"750","5848":"750","5849":"750","5850":"750","5851":"750","5852":"750","5853":"750","5854":"750","5855":"750","5856":"750","5857":"750","5858":"750","5859":"750","5860":"750","5861":"750","5862":"750","5863":"750","5864":"750","5865":"750","5866":"750","5867":"750","5868":"750","5869":"750","5870":"750","5871":"750","5872":"750","5873":"750","5874":"750","5875":"750","5876":"750","5877":"750","5878":"750","5879":"750","5880":"750","5881":"750","5882":"750","5883":"750","5884":"-750","5885":"-750","5886":"-750","5887":"-750","5888":"-750","5889":"-750","5890":"-750","5891":"-750","5892":"-750","5893":"-750","5894":"-750","5895":"-750","5896":"-750","5897":"-750","5898":"-750","5899":"-750","5900":"-750","5901":"-750","5902":"-750","5903":"-750","5904":"-750","5905":"-750","5906":"-750","5907":"-750","5908":"-750","5909":"-750","5910":"-750","5911":"-750","5912":"-750","5913":"-750","5914":"-750","5915":"-750","5916":"-750","5917":"-750","5918":"-750","5919":"-750","5920":"-750","5921":"-750","5922":"-750","5923":"-750","5924":"-750","5925":"-750","5926":"-750","5927":"-750","5928":"-750","5929":"-750","5930":"-750","5931":"-750","5932":"-750","5933":"-750","5934":"-750","5935":"-750","5936":"-750","5937":"-750","5938":"-750","5939":"-750","5940":"-750","5941":"-750","5942":"-750","5943":"-750","5944":"-750","5945":"-750","5946":"-750","5947":"-750","5948":"-750","5949":"-750","5950":"-750","5951":"-750","5952":"-750","5953":"-750","5954":"-688","5955":"-750","5956":"-750","5957":"-750","5958":"-750","5959":"-750","5960":"-750","5961":"-750","5962":"-750","5963":"-750","5964":"-750","5965":"-750","5966":"-750","5967":"-750","5968":"-750","5969":"-750","5970":"-750","5971":"-750","5972":"-750","5973":"-750","5974":"-750","5975":"-750","5976":"-750","5977":"-750","5978":"-750","5979":"-750","5980":"-750","5981":"-750","5982":"-750","5983":"-750","5984":"-750","5985":"-750","5986":"-750","5987":"-750","5988":"-750","5989":"-750","5990":"-750","5991":"-750","5992":"-750","5993":"-750","5994":"-750","5995":"-750","5996":"-750","5997":"-750","5998":"-750","5999":"-750","6000":"-750","6001":"-750","6002":"-750","6003":"-750","6004":"-750","6005":"-750","6006":"-750","6007":"-750","6008":"-750","6009":"-750","6010":"-750","6011":"-750","6012":"-750","6013":"-750","6014":"-750","6015":"-750","6016":"-750","6017":"-750","6018":"-750","6019":"-750","6020":"-750","6021":"-750","6022":"-750","6023":"-750","6024":"-750","6025":"-750","6026":"-750","6027":"-750","6028":"-750","6029":"-688","6030":"-750","6031":"-750","6032":"-750","6033":"-750","6034":"-750","6035":"-750","6036":"-750","6037":"-750","6038":"-750","6039":"-750","6040":"-750","6041":"-750","6042":"-750","6043":"-750","6044":"-750","6045":"-750","6046":"-750","6047":"-750","6048":"-750","6049":"-750","6050":"-750","6051":"-750","6052":"-750","6053":"-750","6054":"-750","6055":"-750","6056":"-750","6057":"-750","6058":"-750","6059":"-750","6060":"-750","6061":"-750","6062":"-750","6063":"-750","6064":"-750","6065":"-750","6066":"-750","6067":"-750","6068":"-750","6069":"-750","6070":"-750","6071":"-750","6072":"-750","6073":"-750","6074":"-750","6075":"-750","6076":"-750","6077":"-750","6078":"-750","6079":"-750","6080":"-750","6081":"-750","6082":"-750","6083":"-750","6084":"-750","6085":"-750","6086":"-750","6087":"-750","6088":"-750","6089":"-688","6090":"-750","6091":"-750","6092":"-750","6093":"-750","6094":"-750","6095":"-625","6096":"-750","6097":"-750","6098":"-750","6099":"-750","6100":"-750","6101":"-750","6102":"-719","6103":"-750","6104":"-750","6105":"-750","6106":"-750","6107":"-750","6108":"-750","6109":"-750","6110":"-750","6111":"-750","6112":"-750","6113":"-750","6114":"-750","6115":"-750","6116":"-750","6117":"-750","6118":"-750","6119":"-750","6120":"-750","6121":"-750","6122":"-750","6123":"-750","6124":"-750","6125":"-750","6126":"-750","6127":"-750","6128":"-750","6129":"-750","6130":"-750","6131":"-750","6132":"-750","6133":"-750","6134":"-750","6135":"-750","6136":"-750","6137":"-750","6138":"-750","6139":"-750","6140":"-750","6141":"-750","6142":"-750","6143":"-750","6144":"-750","6145":"-750","6146":"-750","6147":"-750","6148":"-750","6149":"-750","6150":"-750","6151":"-750","6152":"-750","6153":"-750","6154":"-750","6155":"-750","6156":"-750","6157":"-750","6158":"-750","6159":"-750","6160":"-750","6161":"-750","6162":"-750","6163":"-750","6164":"-750","6165":"-750","6166":"-750","6167":"-750","6168":"-750","6169":"-750","6170":"-750","6171":"-750","6172":"-750","6173":"-750","6174":"-750","6175":"-750","6176":"-750","6177":"-750","6178":"-750","6179":"-750","6180":"-750","6181":"-750","6182":"-750","6183":"-750","6184":"-750","6185":"-750","6186":"-750","6187":"-750","6188":"-750","6189":"-750","6190":"-750","6191":"-750","6192":"-750","6193":"-750","6194":"-750","6195":"-750","6196":"-750","6197":"688","6198":"625","6199":"625","6200":"656","6201":"625","6202":"625","6203":"563","6204":"562","6205":"625","6206":"563","6207":"625","6208":"625","6209":"708","6210":"625","6211":"625","6212":"688","6213":"625","6214":"625","6215":"625","6216":"625","6217":"625","6218":"625","6219":"625","6220":"625","6221":"625","6222":"625","6223":"625","6224":"708","6225":"625","6226":"625","6227":"625","6228":"625","6229":"625","6230":"625","6231":"563","6232":"583","6233":"583","6234":"531","6235":"625","6236":"625","6237":"625","6238":"625","6239":"625","6240":"625","6241":"625","6242":"625","6243":"625","6244":"625","6245":"583","6246":"688","6247":"625","6248":"625","6249":"625","6250":"625","6251":"625","6252":"688","6253":"625","6254":"625","6255":"667","6256":"625","6257":"563","6258":"625","6259":"625","6260":"625","6261":"625","6262":"625","6263":"688","6264":"625","6265":"688","6266":"625","6267":"625","6268":"550","6269":"625","6270":"625","6271":"625","6272":"625","6273":"521","6274":"563","6275":"563","6276":"625","6277":"625","6278":"650","6279":"625","6280":"625","6281":"625","6282":"625","6283":"625","6284":"625","6285":"583","6286":"625","6287":"625","6288":"625","6289":"625","6290":"625","6291":"625","6292":"625","6293":"625","6294":"625","6295":"667","6296":"625","6297":"625","6298":"625","6299":"625","6300":"625","6301":"625","6302":"625","6303":"625","6304":"625","6305":"625","6306":"625","6307":"625","6308":"625","6309":"625","6310":"625","6311":"708","6312":"625","6313":"625","6314":"688","6315":"667","6316":"688","6317":"625","6318":"625","6319":"625","6320":"625","6321":"625","6322":"625","6323":"688","6324":"688","6325":"667","6326":"625","6327":"625","6328":"625","6329":"667","6330":"625","6331":"563","6332":"563","6333":"625","6334":"625","6335":"625","6336":"625","6337":"625","6338":"625","6339":"625","6340":"625","6341":"625","6342":"563","6343":"625","6344":"625","6345":"625","6346":"531","6347":"625","6348":"625","6349":"625","6350":"625","6351":"625","6352":"625","6353":"563","6354":"625","6355":"625","6356":"625","6357":"625","6358":"625","6359":"625","6360":"563","6361":"625","6362":"625","6363":"625","6364":"542","6365":"625","6366":"625","6367":"542","6368":"625","6369":"625","6370":"625","6371":"625","6372":"625","6373":"625","6374":"625","6375":"625","6376":"625","6377":"625","6378":"625","6379":"625","6380":"625","6381":"625","6382":"625","6383":"625","6384":"688","6385":"625","6386":"625","6387":"625","6388":"625","6389":"542","6390":"625","6391":"625","6392":"625","6393":"625","6394":"563","6395":"625","6396":"625","6397":"563","6398":"625","6399":"625","6400":"625","6401":"625","6402":"625","6403":"625","6404":"625","6405":"625","6406":"667","6407":"625","6408":"625","6409":"625","6410":"563","6411":"625","6412":"625","6413":"563","6414":"563","6415":"583","6416":"625","6417":"625","6418":"542","6419":"625","6420":"625","6421":"542","6422":"625","6423":"625","6424":"625","6425":"625","6426":"594","6427":"625","6428":"625","6429":"625","6430":"625","6431":"625","6432":"625","6433":"688","6434":"594","6435":"625","6436":"625","6437":"625","6438":"625","6439":"563","6440":"625","6441":"688","6442":"625","6443":"563","6444":"625","6445":"625","6446":"625","6447":"675","6448":"625","6449":"625","6450":"625","6451":"625","6452":"625","6453":"625","6454":"625","6455":"625","6456":"521","6457":"625","6458":"563","6459":"625","6460":"521","6461":"625","6462":"667","6463":"625","6464":"625","6465":"625","6466":"625","6467":"688","6468":"625","6469":"625","6470":"625","6471":"542","6472":"563","6473":"667","6474":"625","6475":"563","6476":"625","6477":"625","6478":"625","6479":"625","6480":"625","6481":"625","6482":"625","6483":"625","6484":"625","6485":"625","6486":"625","6487":"625","6488":"625","6489":"542","6490":"625","6491":"625","6492":"531","6493":"625","6494":"563","6495":"625","6496":"625","6497":"625","6498":"542","6499":"625","6500":"625","6501":"625","6502":"625","6503":"625","6504":"563","6505":"688","6506":"625","6507":"708","6508":"625","6509":"625","6510":"625","6511":"542","6512":"625","6513":"708","6514":"625","6515":"542","6516":"563","6517":"625","6518":"625","6519":"625","6520":"563","6521":"563","6522":"625","6523":"625","6524":"625","6525":"625","6526":"625","6527":"625","6528":"625","6529":"542","6530":"625","6531":"625","6532":"625","6533":"625","6534":"688","6535":"563","6536":"625","6537":"625","6538":"625","6539":"625","6540":"625","6541":"625","6542":"625","6543":"625","6544":"625","6545":"625","6546":"625","6547":"625","6548":"625","6549":"688","6550":"542","6551":"625","6552":"625","6553":"563","6554":"625","6555":"625","6556":"625","6557":"625","6558":"625","6559":"625","6560":"688","6561":"625","6562":"625","6563":"625","6564":"625","6565":"563","6566":"625","6567":"688","6568":"625","6569":"625","6570":"625","6571":"625","6572":"563","6573":"563","6574":"563","6575":"625","6576":"625","6577":"625","6578":"625","6579":"625","6580":"625","6581":"625","6582":"625","6583":"583","6584":"625","6585":"667","6586":"542","6587":"625","6588":"625","6589":"583","6590":"656","6591":"625","6592":"625","6593":"625","6594":"625","6595":"625","6596":"542","6597":"625","6598":"625","6599":"625","6600":"625","6601":"625","6602":"625","6603":"563","6604":"625","6605":"625","6606":"531","6607":"625","6608":"563","6609":"625","6610":"531","6611":"542","6612":"625","6613":"688","6614":"688","6615":"625","6616":"625","6617":"625","6618":"625","6619":"625","6620":"625","6621":"594","6622":"525","6623":"625","6624":"542","6625":"688","6626":"625","6627":"625","6628":"625","6629":"625","6630":"625","6631":"625","6632":"625","6633":"625","6634":"563","6635":"625","6636":"625","6637":"563","6638":"625","6639":"688","6640":"563","6641":"625","6642":"625","6643":"708","6644":"688","6645":"625","6646":"563","6647":"563","6648":"625","6649":"625","6650":"625","6651":"571","6652":"688","6653":"563","6654":"563","6655":"563","6656":"625","6657":"575","6658":"625","6659":"688","6660":"625","6661":"563","6662":"688","6663":"625","6664":"625","6665":"542","6666":"563","6667":"563","6668":"625","6669":"563","6670":"625","6671":"688","6672":"625","6673":"625","6674":"625","6675":"625","6676":"625","6677":"542","6678":"625","6679":"625","6680":"583","6681":"625","6682":"625","6683":"625","6684":"625","6685":"625","6686":"625","6687":"625","6688":"563","6689":"625","6690":"542","6691":"625","6692":"563","6693":"625","6694":"625","6695":"563","6696":"563","6697":"625","6698":"542","6699":"625","6700":"625","6701":"583","6702":"625","6703":"563","6704":"625","6705":"563","6706":"625","6707":"625","6708":"625","6709":"625","6710":"719","6711":"625","6712":"625","6713":"625","6714":"542","6715":"625","6716":"625","6717":"625","6718":"531","6719":"563","6720":"563","6721":"563","6722":"625","6723":"625","6724":"625","6725":"688","6726":"625","6727":"625","6728":"563","6729":"625","6730":"625","6731":"563","6732":"625","6733":"563","6734":"563","6735":"625","6736":"563","6737":"625","6738":"625","6739":"625","6740":"625","6741":"625","6742":"583","6743":"625","6744":"573","6745":"625","6746":"688","6747":"625","6748":"625","6749":"625","6750":"625","6751":"625","6752":"625","6753":"625","6754":"625","6755":"625","6756":"625","6757":"563","6758":"625","6759":"525","6760":"625","6761":"625","6762":"688","6763":"625","6764":"625","6765":"563","6766":"625","6767":"563","6768":"625","6769":"625","6770":"625","6771":"625","6772":"625","6773":"625","6774":"688","6775":"563","6776":"625","6777":"583","6778":"625","6779":"625","6780":"625","6781":"625","6782":"625","6783":"563","6784":"625","6785":"625","6786":"625","6787":"625","6788":"625","6789":"-625","6790":"-667","6791":"-562","6792":"-562","6793":"-562","6794":"-542","6795":"-625","6796":"-625","6797":"-625","6798":"-625","6799":"-625","6800":"-562","6801":"-625","6802":"-625","6803":"-625","6804":"-562","6805":"-625","6806":"-625","6807":"-563","6808":"-625","6809":"-625","6810":"-625","6811":"-625","6812":"-562","6813":"-562","6814":"-687","6815":"-625","6816":"-625","6817":"-562","6818":"-625","6819":"-625","6820":"-625","6821":"-562","6822":"-625","6823":"-625","6824":"-625","6825":"-625","6826":"-562","6827":"-625","6828":"-625","6829":"-542","6830":"-625","6831":"-562","6832":"-625","6833":"-625","6834":"-562","6835":"-563","6836":"-625","6837":"-625","6838":"-625","6839":"-625","6840":"-625","6841":"-625","6842":"-625","6843":"-625","6844":"-625","6845":"-625","6846":"-625","6847":"-625","6848":"-625","6849":"-625","6850":"-625","6851":"-563","6852":"-625","6853":"-625","6854":"-625","6855":"-625","6856":"-625","6857":"-625","6858":"-542","6859":"-625","6860":"-625","6861":"-625","6862":"-625","6863":"-625","6864":"-625","6865":"-625","6866":"-625","6867":"-625","6868":"-625","6869":"-625","6870":"-562","6871":"-625","6872":"-625","6873":"-562","6874":"-625","6875":"-625","6876":"-625","6877":"-625","6878":"-625","6879":"-563","6880":"-625","6881":"-625","6882":"-625","6883":"-542","6884":"-625","6885":"-562","6886":"-625","6887":"-719","6888":"-542","6889":"-625","6890":"-625","6891":"-625","6892":"-531","6893":"-625","6894":"-667","6895":"-625","6896":"-625","6897":"-625","6898":"-625","6899":"-625","6900":"-687","6901":"-625","6902":"-531","6903":"-687","6904":"-625","6905":"-625","6906":"-625","6907":"-625","6908":"-625","6909":"-625","6910":"-625","6911":"-625","6912":"-625","6913":"-625","6914":"-625","6915":"-625","6916":"-625","6917":"-562","6918":"-625","6919":"-625","6920":"-625","6921":"-625","6922":"-625","6923":"-625","6924":"-625","6925":"-625","6926":"-562","6927":"-625","6928":"-625","6929":"-625","6930":"-625","6931":"-542","6932":"-531","6933":"-550","6934":"-562","6935":"-687","6936":"-562","6937":"-562","6938":"-625","6939":"-625","6940":"-625","6941":"-521","6942":"-625","6943":"-625","6944":"-562","6945":"-625","6946":"-625","6947":"-625","6948":"-625","6949":"-625","6950":"-625","6951":"-625","6952":"-625","6953":"-625","6954":"-625","6955":"-625","6956":"-625","6957":"-625","6958":"-625","6959":"-687","6960":"-625","6961":"-625","6962":"-562","6963":"-562","6964":"-625","6965":"-625","6966":"-625","6967":"-583","6968":"-625","6969":"-625","6970":"-625","6971":"-562","6972":"-571","6973":"-625","6974":"-625","6975":"-625","6976":"-625","6977":"-625","6978":"-667","6979":"-667","6980":"-625","6981":"-625","6982":"-625","6983":"-625","6984":"-625","6985":"-625","6986":"-562","6987":"-625","6988":"-625","6989":"-625","6990":"-625","6991":"-562","6992":"-562","6993":"-625","6994":"-625","6995":"-625","6996":"-625","6997":"-583","6998":"-542","6999":"-687","7000":"-625","7001":"-625","7002":"-625","7003":"-625","7004":"-583","7005":"-625","7006":"-562","7007":"-562","7008":"-625","7009":"-625","7010":"-625","7011":"-625","7012":"-625","7013":"-625","7014":"-687","7015":"-625","7016":"-625","7017":"-625","7018":"-625","7019":"-625","7020":"-625","7021":"-625","7022":"-625","7023":"-583","7024":"-625","7025":"-625","7026":"-625","7027":"-625","7028":"-625","7029":"-583","7030":"-583","7031":"-625","7032":"-562","7033":"-625","7034":"-625","7035":"-625","7036":"-625","7037":"-625","7038":"-542","7039":"-625","7040":"-625","7041":"-625","7042":"-625","7043":"-625","7044":"-625","7045":"-625","7046":"-625","7047":"-625","7048":"-625","7049":"-625","7050":"-625","7051":"-625","7052":"-625","7053":"-625","7054":"-625","7055":"-625","7056":"-625","7057":"-687","7058":"-625","7059":"-625","7060":"-562","7061":"-687","7062":"-625","7063":"-625","7064":"-625","7065":"-625","7066":"-625","7067":"-625","7068":"-562","7069":"-562","7070":"-625","7071":"-625","7072":"-562","7073":"-687","7074":"-625","7075":"-625","7076":"-687","7077":"-625","7078":"-562","7079":"-625","7080":"-625","7081":"-625","7082":"-625","7083":"-625","7084":"-625","7085":"-625","7086":"-625","7087":"-625","7088":"-625","7089":"-625","7090":"-562","7091":"-625","7092":"-625","7093":"-625","7094":"-625","7095":"-625","7096":"-625","7097":"-625","7098":"-563","7099":"-625","7100":"-625","7101":"-625","7102":"-562","7103":"-625","7104":"-625","7105":"-562","7106":"-625","7107":"-625","7108":"-625","7109":"-562","7110":"-625","7111":"-625","7112":"-583","7113":"-625","7114":"-625","7115":"-625","7116":"-625","7117":"-625","7118":"-625","7119":"-563","7120":"-594","7121":"-625","7122":"-625","7123":"-562","7124":"-625","7125":"-625","7126":"-625","7127":"-625","7128":"-625","7129":"-625","7130":"-625","7131":"-625","7132":"-625","7133":"-625","7134":"-625","7135":"-563","7136":"-625","7137":"-562","7138":"-625","7139":"-625","7140":"-625","7141":"-625","7142":"-625","7143":"-625","7144":"-625","7145":"-583","7146":"-625","7147":"-625","7148":"200","7149":"-625","7150":"-625","7151":"-562","7152":"-562","7153":"-562","7154":"-562","7155":"-625","7156":"-625","7157":"-667","7158":"-625","7159":"-625","7160":"-625","7161":"-625","7162":"-625","7163":"-562","7164":"-583","7165":"-625","7166":"-562","7167":"-625","7168":"-625","7169":"-625","7170":"-562","7171":"-625","7172":"-625","7173":"-625","7174":"-625","7175":"-625","7176":"-625","7177":"-625","7178":"-625","7179":"-562","7180":"-687","7181":"-687","7182":"-625","7183":"-625","7184":"-625","7185":"-625","7186":"-562","7187":"-625","7188":"-687","7189":"-625","7190":"-625","7191":"-625","7192":"-625","7193":"-625","7194":"-562","7195":"-625","7196":"-625","7197":"-625","7198":"-625","7199":"-625","7200":"-667","7201":"-687","7202":"-687","7203":"-625","7204":"-625","7205":"-625","7206":"-625","7207":"-625","7208":"-562","7209":"-625","7210":"-625","7211":"-625","7212":"-687","7213":"-625","7214":"-625","7215":"-625","7216":"-625","7217":"-625","7218":"-625","7219":"-625","7220":"-625","7221":"-625","7222":"-625","7223":"-625","7224":"-542","7225":"-625","7226":"-625","7227":"-625","7228":"-625","7229":"-625","7230":"-625","7231":"-625","7232":"-625","7233":"-625","7234":"-719","7235":"-625","7236":"-625","7237":"-625","7238":"-625","7239":"-625","7240":"-625","7241":"-625","7242":"-625","7243":"-583","7244":"-625","7245":"-625","7246":"-625","7247":"-625","7248":"-625","7249":"-625","7250":"-625","7251":"-625","7252":"-625","7253":"-562","7254":"-562","7255":"-625","7256":"-562","7257":"-562","7258":"-625","7259":"-583","7260":"-625","7261":"-625","7262":"-625","7263":"-562","7264":"-625","7265":"-562","7266":"-625","7267":"500","7268":"500","7269":"500","7270":"500","7271":"500","7272":"500","7273":"500","7274":"500","7275":"500","7276":"500","7277":"500","7278":"500","7279":"500","7280":"500","7281":"500","7282":"500","7283":"500","7284":"500","7285":"500","7286":"500","7287":"500","7288":"500","7289":"500","7290":"500","7291":"500","7292":"500","7293":"500","7294":"500","7295":"500","7296":"500","7297":"500","7298":"500","7299":"500","7300":"500","7301":"500","7302":"500","7303":"500","7304":"500","7305":"500","7306":"500","7307":"500","7308":"500","7309":"500","7310":"500","7311":"500","7312":"500","7313":"500","7314":"500","7315":"500","7316":"500","7317":"500","7318":"500","7319":"500","7320":"500","7321":"500","7322":"500","7323":"500","7324":"500","7325":"500","7326":"500","7327":"500","7328":"500","7329":"500","7330":"500","7331":"500","7332":"500","7333":"500","7334":"500","7335":"500","7336":"500","7337":"500","7338":"500","7339":"500","7340":"500","7341":"500","7342":"500","7343":"500","7344":"500","7345":"500","7346":"500","7347":"500","7348":"500","7349":"500","7350":"500","7351":"500","7352":"500","7353":"500","7354":"500","7355":"500","7356":"500","7357":"500","7358":"500","7359":"500","7360":"500","7361":"500","7362":"500","7363":"500","7364":"500","7365":"500","7366":"500","7367":"500","7368":"500","7369":"500","7370":"500","7371":"500","7372":"500","7373":"500","7374":"500","7375":"500","7376":"500","7377":"500","7378":"500","7379":"500","7380":"500","7381":"500","7382":"500","7383":"500","7384":"500","7385":"500","7386":"500","7387":"500","7388":"500","7389":"500","7390":"500","7391":"500","7392":"500","7393":"500","7394":"500","7395":"500","7396":"500","7397":"500","7398":"500","7399":"500","7400":"500","7401":"500","7402":"500","7403":"500","7404":"500","7405":"500","7406":"500","7407":"500","7408":"500","7409":"500","7410":"500","7411":"500","7412":"500","7413":"500","7414":"500","7415":"500","7416":"500","7417":"500","7418":"500","7419":"500","7420":"500","7421":"500","7422":"500","7423":"500","7424":"500","7425":"500","7426":"500","7427":"500","7428":"500","7429":"500","7430":"500","7431":"500","7432":"500","7433":"500","7434":"500","7435":"500","7436":"500","7437":"500","7438":"500","7439":"500","7440":"500","7441":"500","7442":"500","7443":"500","7444":"500","7445":"500","7446":"500","7447":"500","7448":"500","7449":"500","7450":"500","7451":"500","7452":"500","7453":"500","7454":"500","7455":"500","7456":"500","7457":"500","7458":"500","7459":"500","7460":"500","7461":"500","7462":"500","7463":"500","7464":"500","7465":"500","7466":"500","7467":"500","7468":"500","7469":"500","7470":"500","7471":"500","7472":"500","7473":"500","7474":"500","7475":"500","7476":"500","7477":"500","7478":"500","7479":"500","7480":"500","7481":"500","7482":"500","7483":"500","7484":"500","7485":"500","7486":"500","7487":"500","7488":"500","7489":"500","7490":"500","7491":"500","7492":"500","7493":"500","7494":"500","7495":"500","7496":"500","7497":"500","7498":"500","7499":"500","7500":"500","7501":"500","7502":"500","7503":"500","7504":"500","7505":"500","7506":"500","7507":"500","7508":"500","7509":"500","7510":"500","7511":"500","7512":"500","7513":"500","7514":"500","7515":"500","7516":"500","7517":"500","7518":"500","7519":"500","7520":"500","7521":"500","7522":"500","7523":"500","7524":"500","7525":"500","7526":"500","7527":"500","7528":"500","7529":"500","7530":"500","7531":"500","7532":"500","7533":"500","7534":"500","7535":"500","7536":"500","7537":"500","7538":"500","7539":"500","7540":"500","7541":"500","7542":"500","7543":"500","7544":"500","7545":"500","7546":"500","7547":"500","7548":"500","7549":"500","7550":"500","7551":"500","7552":"500","7553":"500","7554":"500","7555":"500","7556":"500","7557":"500","7558":"500","7559":"500","7560":"500","7561":"500","7562":"500","7563":"500","7564":"500","7565":"500","7566":"500","7567":"500","7568":"500","7569":"500","7570":"500","7571":"500","7572":"500","7573":"500","7574":"500","7575":"500","7576":"500","7577":"500","7578":"500","7579":"500","7580":"500","7581":"500","7582":"500","7583":"500","7584":"500","7585":"500","7586":"500","7587":"500","7588":"500","7589":"500","7590":"500","7591":"500","7592":"500","7593":"500","7594":"500","7595":"500","7596":"500","7597":"500","7598":"500","7599":"500","7600":"500","7601":"500","7602":"500","7603":"500","7604":"500","7605":"500","7606":"500","7607":"500","7608":"500","7609":"500","7610":"500","7611":"500","7612":"500","7613":"500","7614":"500","7615":"500","7616":"500","7617":"500","7618":"500","7619":"500","7620":"500","7621":"500","7622":"500","7623":"500","7624":"500","7625":"500","7626":"500","7627":"500","7628":"500","7629":"500","7630":"500","7631":"500","7632":"500","7633":"500","7634":"500","7635":"500","7636":"500","7637":"500","7638":"500","7639":"500","7640":"500","7641":"500","7642":"500","7643":"500","7644":"500","7645":"500","7646":"500","7647":"500","7648":"500","7649":"500","7650":"500","7651":"500","7652":"500","7653":"500","7654":"500","7655":"500","7656":"500","7657":"500","7658":"500","7659":"500","7660":"500","7661":"500","7662":"500","7663":"500","7664":"500","7665":"500","7666":"500","7667":"500","7668":"500","7669":"500","7670":"500","7671":"500","7672":"500","7673":"500","7674":"500","7675":"500","7676":"500","7677":"500","7678":"500","7679":"500","7680":"500","7681":"500","7682":"500","7683":"500","7684":"500","7685":"500","7686":"500","7687":"500","7688":"500","7689":"500","7690":"500","7691":"500","7692":"500","7693":"500","7694":"500","7695":"500","7696":"500","7697":"500","7698":"500","7699":"500","7700":"500","7701":"500","7702":"500","7703":"500","7704":"500","7705":"500","7706":"500","7707":"500","7708":"500","7709":"500","7710":"500","7711":"500","7712":"500","7713":"500","7714":"500","7715":"500","7716":"500","7717":"500","7718":"500","7719":"500","7720":"500","7721":"500","7722":"500","7723":"500","7724":"500","7725":"500","7726":"500","7727":"500","7728":"500","7729":"500","7730":"500","7731":"500","7732":"500","7733":"500","7734":"500","7735":"500","7736":"500","7737":"500","7738":"500","7739":"500","7740":"500","7741":"500","7742":"500","7743":"500","7744":"500","7745":"500","7746":"500","7747":"500","7748":"500","7749":"500","7750":"500","7751":"500","7752":"500","7753":"500","7754":"500","7755":"500","7756":"500","7757":"500","7758":"500","7759":"500","7760":"500","7761":"500","7762":"500","7763":"500","7764":"500","7765":"500","7766":"500","7767":"500","7768":"500","7769":"500","7770":"500","7771":"500","7772":"500","7773":"500","7774":"500","7775":"500","7776":"500","7777":"500","7778":"500","7779":"500","7780":"500","7781":"500","7782":"500","7783":"500","7784":"500","7785":"500","7786":"500","7787":"500","7788":"500","7789":"500","7790":"500","7791":"500","7792":"500","7793":"500","7794":"500","7795":"500","7796":"500","7797":"500","7798":"500","7799":"500","7800":"500","7801":"500","7802":"500","7803":"500","7804":"500","7805":"500","7806":"500","7807":"500","7808":"500","7809":"500","7810":"500","7811":"500","7812":"500","7813":"500","7814":"500","7815":"500","7816":"500","7817":"500","7818":"500","7819":"500","7820":"500","7821":"500","7822":"500","7823":"500","7824":"500","7825":"500","7826":"500","7827":"500","7828":"500","7829":"500","7830":"500","7831":"500","7832":"500","7833":"500","7834":"500","7835":"500","7836":"500","7837":"500","7838":"500","7839":"500","7840":"500","7841":"500","7842":"500","7843":"500","7844":"500","7845":"500","7846":"500","7847":"500","7848":"500","7849":"500","7850":"500","7851":"500","7852":"500","7853":"500","7854":"500","7855":"500","7856":"500","7857":"500","7858":"500","7859":"500","7860":"500","7861":"500","7862":"500","7863":"500","7864":"500","7865":"500","7866":"500","7867":"500","7868":"500","7869":"500","7870":"500","7871":"500","7872":"500","7873":"500","7874":"500","7875":"500","7876":"500","7877":"500","7878":"500","7879":"500","7880":"500","7881":"500","7882":"500","7883":"500","7884":"500","7885":"500","7886":"500","7887":"500","7888":"500","7889":"500","7890":"500","7891":"500","7892":"500","7893":"500","7894":"500","7895":"500","7896":"500","7897":"500","7898":"500","7899":"500","7900":"500","7901":"500","7902":"500","7903":"500","7904":"500","7905":"500","7906":"500","7907":"500","7908":"500","7909":"500","7910":"500","7911":"500","7912":"500","7913":"500","7914":"500","7915":"500","7916":"500","7917":"500","7918":"500","7919":"500","7920":"500","7921":"500","7922":"500","7923":"500","7924":"500","7925":"500","7926":"500","7927":"500","7928":"500","7929":"500","7930":"500","7931":"500","7932":"500","7933":"500","7934":"500","7935":"500","7936":"500","7937":"500","7938":"500","7939":"500","7940":"500","7941":"500","7942":"500","7943":"500","7944":"500","7945":"500","7946":"500","7947":"500","7948":"500","7949":"500","7950":"500","7951":"500","7952":"500","7953":"500","7954":"500","7955":"500","7956":"500","7957":"500","7958":"500","7959":"500","7960":"500","7961":"500","7962":"500","7963":"500","7964":"500","7965":"500","7966":"500","7967":"500","7968":"500","7969":"500","7970":"500","7971":"500","7972":"500","7973":"500","7974":"500","7975":"500","7976":"500","7977":"500","7978":"500","7979":"500","7980":"500","7981":"500","7982":"500","7983":"500","7984":"500","7985":"500","7986":"500","7987":"500","7988":"500","7989":"500","7990":"500","7991":"500","7992":"500","7993":"500","7994":"500","7995":"500","7996":"500","7997":"500","7998":"500","7999":"500","8000":"500","8001":"500","8002":"500","8003":"500","8004":"500","8005":"500","8006":"500","8007":"500","8008":"500","8009":"500","8010":"500","8011":"500","8012":"500","8013":"500","8014":"500","8015":"500","8016":"500","8017":"500","8018":"500","8019":"500","8020":"500","8021":"500","8022":"500","8023":"500","8024":"500","8025":"500","8026":"500","8027":"500","8028":"500","8029":"500","8030":"500","8031":"500","8032":"500","8033":"500","8034":"500","8035":"500","8036":"500","8037":"500","8038":"500","8039":"500","8040":"500","8041":"500","8042":"500","8043":"500","8044":"500","8045":"500","8046":"500","8047":"500","8048":"500","8049":"500","8050":"500","8051":"500","8052":"500","8053":"500","8054":"500","8055":"500","8056":"500","8057":"500","8058":"500","8059":"500","8060":"500","8061":"500","8062":"500","8063":"500","8064":"500","8065":"500","8066":"500","8067":"500","8068":"500","8069":"500","8070":"500","8071":"500","8072":"500","8073":"500","8074":"500","8075":"500","8076":"500","8077":"500","8078":"500","8079":"500","8080":"500","8081":"500","8082":"500","8083":"500","8084":"500","8085":"500","8086":"500","8087":"500","8088":"500","8089":"500","8090":"500","8091":"500","8092":"500","8093":"500","8094":"500","8095":"500","8096":"500","8097":"500","8098":"500","8099":"500","8100":"500","8101":"500","8102":"500","8103":"500","8104":"500","8105":"500","8106":"500","8107":"500","8108":"500","8109":"500","8110":"500","8111":"500","8112":"500","8113":"500","8114":"500","8115":"500","8116":"500","8117":"500","8118":"500","8119":"500","8120":"500","8121":"500","8122":"500","8123":"500","8124":"500","8125":"500","8126":"500","8127":"500","8128":"500","8129":"500","8130":"500","8131":"500","8132":"500","8133":"500","8134":"500","8135":"500","8136":"500","8137":"500","8138":"500","8139":"500","8140":"500","8141":"500","8142":"500","8143":"500","8144":"500","8145":"500","8146":"500","8147":"500","8148":"500","8149":"500","8150":"500","8151":"500","8152":"500","8153":"500","8154":"500","8155":"500","8156":"500","8157":"500","8158":"500","8159":"500","8160":"500","8161":"500","8162":"500","8163":"500","8164":"500","8165":"500","8166":"500","8167":"500","8168":"500","8169":"500","8170":"500","8171":"500","8172":"500","8173":"500","8174":"500","8175":"-500","8176":"-500","8177":"-500","8178":"-500","8179":"-500","8180":"-500","8181":"-500","8182":"-500","8183":"-500","8184":"-500","8185":"-500","8186":"-500","8187":"-500","8188":"-500","8189":"-500","8190":"-500","8191":"-500","8192":"-500","8193":"-500","8194":"-500","8195":"-500","8196":"-500","8197":"-500","8198":"-500","8199":"-500","8200":"-500","8201":"-500","8202":"-500","8203":"-500","8204":"-500","8205":"-500","8206":"-500","8207":"-500","8208":"-500","8209":"-500","8210":"-500","8211":"-500","8212":"-500","8213":"-500","8214":"-500","8215":"-500","8216":"-500","8217":"-500","8218":"-500","8219":"-500","8220":"-500","8221":"-500","8222":"-500","8223":"-500","8224":"-500","8225":"-500","8226":"-500","8227":"-500","8228":"-500","8229":"-500","8230":"-500","8231":"-500","8232":"-500","8233":"-500","8234":"-500","8235":"-500","8236":"-500","8237":"-500","8238":"-500","8239":"-500","8240":"-500","8241":"-500","8242":"-500","8243":"-500","8244":"-500","8245":"-500","8246":"-500","8247":"-500","8248":"-500","8249":"-500","8250":"-500","8251":"-500","8252":"-500","8253":"-500","8254":"-500","8255":"-500","8256":"-500","8257":"-500","8258":"-500","8259":"-500","8260":"-500","8261":"-500","8262":"-500","8263":"-500","8264":"-500","8265":"-500","8266":"-500","8267":"-500","8268":"-500","8269":"-500","8270":"-500","8271":"-500","8272":"-500","8273":"-500","8274":"-500","8275":"-500","8276":"-500","8277":"-500","8278":"-500","8279":"-500","8280":"-500","8281":"-500","8282":"-500","8283":"-500","8284":"-500","8285":"-500","8286":"-500","8287":"-500","8288":"-500","8289":"-500","8290":"-500","8291":"-500","8292":"-500","8293":"-500","8294":"-500","8295":"-500","8296":"-500","8297":"-500","8298":"-500","8299":"-500","8300":"-500","8301":"-500","8302":"-500","8303":"-500","8304":"-500","8305":"-500","8306":"-500","8307":"-500","8308":"-500","8309":"-500","8310":"-500","8311":"-500","8312":"-500","8313":"-500","8314":"-500","8315":"-500","8316":"-500","8317":"-500","8318":"-500","8319":"-500","8320":"-500","8321":"-500","8322":"-500","8323":"-500","8324":"-500","8325":"-500","8326":"-500","8327":"-500","8328":"-500","8329":"-500","8330":"-500","8331":"-500","8332":"-500","8333":"-500","8334":"-500","8335":"-500","8336":"-500","8337":"-500","8338":"-500","8339":"-500","8340":"-500","8341":"-500","8342":"-500","8343":"-500","8344":"-500","8345":"-500","8346":"-500","8347":"-500","8348":"-500","8349":"-500","8350":"-500","8351":"-500","8352":"-500","8353":"-500","8354":"-500","8355":"-500","8356":"-500","8357":"-500","8358":"-500","8359":"-500","8360":"-500","8361":"-500","8362":"-500","8363":"-500","8364":"-500","8365":"-500","8366":"-500","8367":"-500","8368":"-500","8369":"-500","8370":"-500","8371":"-500","8372":"-500","8373":"-500","8374":"-500","8375":"-500","8376":"-500","8377":"-500","8378":"-500","8379":"-500","8380":"-500","8381":"-500","8382":"-500","8383":"-500","8384":"-500","8385":"-500","8386":"-500","8387":"-500","8388":"-500","8389":"-500","8390":"-500","8391":"-500","8392":"-500","8393":"-500","8394":"-500","8395":"-500","8396":"-500","8397":"-500","8398":"-500","8399":"-500","8400":"-500","8401":"-500","8402":"-500","8403":"-500","8404":"-500","8405":"-500","8406":"-500","8407":"-500","8408":"-500","8409":"-500","8410":"-500","8411":"-500","8412":"-500","8413":"-500","8414":"-500","8415":"-500","8416":"-500","8417":"-500","8418":"-500","8419":"-500","8420":"-500","8421":"-500","8422":"-500","8423":"-500","8424":"-500","8425":"-500","8426":"-500","8427":"-500","8428":"-500","8429":"-500","8430":"-500","8431":"-500","8432":"-500","8433":"-500","8434":"-500","8435":"-500","8436":"-500","8437":"-500","8438":"-500","8439":"-500","8440":"-500","8441":"-500","8442":"-500","8443":"-500","8444":"-500","8445":"-500","8446":"-500","8447":"-500","8448":"-500","8449":"-500","8450":"-500","8451":"-500","8452":"-500","8453":"-500","8454":"-500","8455":"-500","8456":"-500","8457":"-500","8458":"-500","8459":"-500","8460":"-500","8461":"-500","8462":"-500","8463":"-500","8464":"-500","8465":"-500","8466":"-500","8467":"-500","8468":"-500","8469":"-500","8470":"-500","8471":"-500","8472":"-500","8473":"-500","8474":"-500","8475":"-500","8476":"-500","8477":"-500","8478":"-500","8479":"-500","8480":"-500","8481":"-500","8482":"-500","8483":"-500","8484":"-500","8485":"-500","8486":"-500","8487":"-500","8488":"-500","8489":"-500","8490":"-500","8491":"-500","8492":"-500","8493":"-500","8494":"-500","8495":"-500","8496":"-500","8497":"-500","8498":"-500","8499":"-500","8500":"-500","8501":"-500","8502":"-500","8503":"-500","8504":"-500","8505":"-500","8506":"-500","8507":"-500","8508":"-500","8509":"-500","8510":"-500","8511":"-500","8512":"-500","8513":"-500","8514":"-500","8515":"-500","8516":"-500","8517":"-500","8518":"-500","8519":"-500","8520":"-500","8521":"-500","8522":"-500","8523":"-500","8524":"-500","8525":"-500","8526":"-500","8527":"-500","8528":"-500","8529":"-500","8530":"-500","8531":"-500","8532":"-500","8533":"-500","8534":"-500","8535":"-500","8536":"-500","8537":"-500","8538":"-500","8539":"-500","8540":"-500","8541":"-500","8542":"-500","8543":"-500","8544":"-500","8545":"-500","8546":"-500","8547":"-500","8548":"-500","8549":"-500","8550":"-500","8551":"-500","8552":"-500","8553":"-500","8554":"-500","8555":"-500","8556":"-500","8557":"-500","8558":"-500","8559":"-500","8560":"-500","8561":"-500","8562":"-500","8563":"-500","8564":"-500","8565":"-500","8566":"-500","8567":"-500","8568":"-500","8569":"-500","8570":"-500","8571":"-500","8572":"-500","8573":"-500","8574":"-500","8575":"-500","8576":"-500","8577":"-500","8578":"-500","8579":"-500","8580":"-500","8581":"-500","8582":"-500","8583":"-500","8584":"-500","8585":"-500","8586":"-500","8587":"-500","8588":"-500","8589":"-500","8590":"-500","8591":"-500","8592":"-500","8593":"-500","8594":"-500","8595":"-500","8596":"-500","8597":"-500","8598":"-500","8599":"-500","8600":"-500","8601":"-500","8602":"-500","8603":"-500","8604":"-500","8605":"-500","8606":"-500","8607":"-500","8608":"-500","8609":"-500","8610":"-500","8611":"-500","8612":"-500","8613":"-500","8614":"-500","8615":"-500","8616":"-500","8617":"-500","8618":"-500","8619":"-500","8620":"-500","8621":"-500","8622":"-500","8623":"-500","8624":"-500","8625":"-500","8626":"-500","8627":"-500","8628":"-500","8629":"-500","8630":"-500","8631":"-500","8632":"-500","8633":"-500","8634":"-500","8635":"-500","8636":"-500","8637":"-500","8638":"-500","8639":"-500","8640":"-500","8641":"-500","8642":"-500","8643":"-500","8644":"-500","8645":"-500","8646":"-500","8647":"-500","8648":"-500","8649":"-500","8650":"-500","8651":"-500","8652":"-500","8653":"-500","8654":"-500","8655":"-500","8656":"-500","8657":"-500","8658":"-500","8659":"-500","8660":"-500","8661":"-500","8662":"-500","8663":"-500","8664":"-500","8665":"-500","8666":"-500","8667":"-500","8668":"-500","8669":"-500","8670":"-500","8671":"-500","8672":"-500","8673":"-500","8674":"-500","8675":"-500","8676":"-500","8677":"-500","8678":"-500","8679":"-500","8680":"-500","8681":"-500","8682":"-500","8683":"-500","8684":"-500","8685":"-500","8686":"-500","8687":"-500","8688":"-500","8689":"-500","8690":"-500","8691":"-500","8692":"-500","8693":"-500","8694":"-500","8695":"-500","8696":"-500","8697":"-500","8698":"-500","8699":"-500","8700":"-500","8701":"-500","8702":"-500","8703":"-500","8704":"-500","8705":"-500","8706":"-500","8707":"-500","8708":"-500","8709":"-500","8710":"-500","8711":"-500","8712":"-500","8713":"-500","8714":"-500","8715":"-500","8716":"-500","8717":"-500","8718":"-500","8719":"-500","8720":"-500","8721":"-500","8722":"-500","8723":"-500","8724":"-500","8725":"-500","8726":"-500","8727":"-500","8728":"-500","8729":"-500","8730":"-500","8731":"-500","8732":"-500","8733":"-500","8734":"-500","8735":"-500","8736":"-500","8737":"-500","8738":"-500","8739":"-500","8740":"-500","8741":"-500","8742":"-500","8743":"-500","8744":"-500","8745":"-500","8746":"-500","8747":"-500","8748":"-500","8749":"-500","8750":"-500","8751":"-500","8752":"-500","8753":"-500","8754":"-500","8755":"-500","8756":"-500","8757":"-500","8758":"-500","8759":"-500","8760":"-500","8761":"-500","8762":"-500","8763":"-500","8764":"-500","8765":"-500","8766":"100","8767":"-500","8768":"-500","8769":"-500","8770":"-500","8771":"-500","8772":"-500","8773":"-500","8774":"-500","8775":"-500","8776":"-500","8777":"-500","8778":"-500","8779":"-500","8780":"-500","8781":"-500","8782":"-500","8783":"-500","8784":"-500","8785":"-500","8786":"-500","8787":"-500","8788":"-500","8789":"-500","8790":"-500","8791":"-500","8792":"-500","8793":"-500","8794":"-500","8795":"-500","8796":"-500","8797":"-500","8798":"-500","8799":"-500","8800":"-500","8801":"-500","8802":"-500","8803":"-500","8804":"-500","8805":"-500","8806":"-500","8807":"-500","8808":"-500","8809":"-500","8810":"-500","8811":"-500","8812":"-500","8813":"-500","8814":"-500","8815":"-500","8816":"-500","8817":"-500","8818":"-500","8819":"-500","8820":"-500","8821":"-500","8822":"-500","8823":"-500","8824":"-500","8825":"-500","8826":"-500","8827":"-500","8828":"-500","8829":"-500","8830":"-500","8831":"-500","8832":"-500","8833":"-500","8834":"-500","8835":"-500","8836":"-500","8837":"-500","8838":"-500","8839":"-500","8840":"-500","8841":"-500","8842":"-500","8843":"-500","8844":"-500","8845":"-500","8846":"-500","8847":"-500","8848":"-500","8849":"-500","8850":"-500","8851":"-500","8852":"-500","8853":"-500","8854":"-500","8855":"-500","8856":"-500","8857":"-500","8858":"-500","8859":"-500","8860":"-500","8861":"-500","8862":"-500","8863":"-500","8864":"-500","8865":"-500","8866":"-500","8867":"-500","8868":"-500","8869":"-500","8870":"-500","8871":"-500","8872":"-500","8873":"-500","8874":"-500","8875":"-500","8876":"-500","8877":"-500","8878":"-500","8879":"-500","8880":"-500","8881":"-500","8882":"-500","8883":"-500","8884":"-500","8885":"-500","8886":"-500","8887":"-500","8888":"-500","8889":"-500","8890":"-500","8891":"-500","8892":"-500","8893":"-500","8894":"-500","8895":"-500","8896":"-500","8897":"-500","8898":"-500","8899":"-500","8900":"-500","8901":"-500","8902":"-500","8903":"-500","8904":"-500","8905":"-500","8906":"-500","8907":"-500","8908":"-500","8909":"-500","8910":"-500","8911":"-500","8912":"-500","8913":"-500","8914":"-500","8915":"-500","8916":"-500","8917":"-500","8918":"-500","8919":"-500","8920":"-500","8921":"-500","8922":"-500","8923":"-500","8924":"-500","8925":"-500","8926":"-500","8927":"-500","8928":"-500","8929":"-500","8930":"-500","8931":"-500","8932":"-500","8933":"-500","8934":"-500","8935":"-500","8936":"-500","8937":"-500","8938":"-500","8939":"-500","8940":"-500","8941":"-500","8942":"-500","8943":"-500","8944":"-500","8945":"-500","8946":"-500","8947":"-500","8948":"-500","8949":"-500","8950":"-500","8951":"-500","8952":"-500","8953":"-500","8954":"-500","8955":"-500","8956":"-500","8957":"-500","8958":"-500","8959":"-500","8960":"-500","8961":"-500","8962":"-500","8963":"-500","8964":"-500","8965":"-500","8966":"-500","8967":"-500","8968":"-500","8969":"-500","8970":"-500","8971":"-500","8972":"-500","8973":"-500","8974":"-500","8975":"-500","8976":"-500","8977":"-500","8978":"-500","8979":"-500","8980":"-500","8981":"-500","8982":"-500","8983":"-500","8984":"-500","8985":"-500","8986":"-500","8987":"-500","8988":"-500","8989":"-500","8990":"-500","8991":"-500","8992":"-500","8993":"-500","8994":"-500","8995":"-500","8996":"-500","8997":"-500","8998":"-500","8999":"-500","9000":"-500","9001":"-500","9002":"-500","9003":"-500","9004":"-500","9005":"-500","9006":"-500","9007":"-500","9008":"-500","9009":"-500","9010":"-500","9011":"-500","9012":"-500","9013":"-500","9014":"-500","9015":"-500","9016":"-500","9017":"-500","9018":"-500","9019":"-500","9020":"-500","9021":"-500","9022":"-500","9023":"-500","9024":"-500","9025":"-500","9026":"-500","9027":"-500","9028":"-500","9029":"-500","9030":"-500","9031":"-500","9032":"-500","9033":"-500","9034":"-500","9035":"-500","9036":"-500","9037":"-500","9038":"-500","9039":"-500","9040":"-500","9041":"-500","9042":"-500","9043":"-500","9044":"-500","9045":"-500","9046":"-500","9047":"-500","9048":"-500","9049":"-500","9050":"-500","9051":"-500","9052":"-500","9053":"-500","9054":"-500","9055":"-500","9056":"-500","9057":"-500","9058":"-500","9059":"-500","9060":"-500","9061":"-500","9062":"-500","9063":"-500","9064":"-500","9065":"-500","9066":"-500","9067":"-500","9068":"-500","9069":"-500","9070":"-500","9071":"-500","9072":"-500","9073":"-500","9074":"-500","9075":"-500","9076":"-500","9077":"-500","9078":"-500","9079":"-500","9080":"-500","9081":"-500","9082":"-500","9083":"-500","9084":"-500","9085":"-500","9086":"-500","9087":"-500","9088":"-500","9089":"-500","9090":"-500","9091":"-500","9092":"-500","9093":"-500","9094":"-500","9095":"-500","9096":"-500","9097":"-500","9098":"-500","9099":"-500","9100":"-500","9101":"-500","9102":"-500","9103":"-500","9104":"-500","9105":"-500","9106":"-500","9107":"-500","9108":"-500","9109":"-500","9110":"-500","9111":"-500","9112":"-500","9113":"-500","9114":"-500","9115":"-500","9116":"-500","9117":"-500","9118":"-500","9119":"-500","9120":"-500","9121":"-500","9122":"-500","9123":"-500","9124":"-500","9125":"-500","9126":"-500","9127":"-500","9128":"-500","9129":"-500","9130":"-500","9131":"-500","9132":"-500","9133":"-500","9134":"-500","9135":"-500","9136":"-500","9137":"-500","9138":"-500","9139":"-500","9140":"-500","9141":"-500","9142":"-500","9143":"-500","9144":"-500","9145":"-500","9146":"-500","9147":"-500","9148":"-500","9149":"-500","9150":"-500","9151":"-500","9152":"-500","9153":"-500","9154":"-500","9155":"-500","9156":"-400","9157":"-400","9158":"-400","9159":"-400","9160":"-400","9161":"-400","9162":"-600","9163":"-600","9164":"400","9165":"400","9166":"200","9167":"-200","9168":"-200","9169":"-200","9170":"-200","9171":"400","9172":"400","9173":"400","9174":"400","9175":"200","9176":"-600","9177":"-600","9178":"-600","9179":"200","9180":"200","9181":"200","9182":"200","9183":"200","9184":"-400","9185":"-400","9186":"-400","9187":"-400","9188":"400","9189":"400","9190":"400","9191":"400","9192":"400","9193":"400","9194":"-400","9195":"-400","9196":"-400","9197":"-400","9198":"-400","9199":"-400","9200":"400","9201":"400","9202":"400","9203":"400","9204":"-600","9205":"200","9206":"600","9207":"600","9208":"-200","9209":"-200","9210":"-200","9211":"-400","9212":"-400","9213":"200","9214":"200","9215":"600","9216":"600","9217":"600","9218":"200","9219":"400","9220":"400","9221":"400","9222":"400","9223":"-200","9224":"-200","9225":"-200","9226":"400","9227":"-200","9228":"400","9229":"-400","9230":"-400","9231":"-400","9232":"-400","9233":"-600","9234":"-600","9235":"200","9236":"200","9237":"200","9238":"200","9239":"-400","9240":"-400","9241":"-400","9242":"200","9243":"-400","9244":"-400","9245":"-400","9246":"200","9247":"400","9248":"-400","9249":"400","9250":"400","9251":"400","9252":"400","9253":"800","9254":"400","9255":"-200","9256":"600","9257":"600","9258":"600","9259":"-600","9260":"-400","9261":"-400","9262":"-400","9263":"-200","9264":"200","9265":"-600","9266":"-600","9267":"-400","9268":"-200","9269":"-200","9270":"-200","9271":"-200","9272":"-200","9273":"-200","9274":"-200","9275":"-200","9276":"-200","9277":"-400","9278":"400","9279":"400","9280":"400","9281":"400","9282":"400","9283":"400","9284":"400","9285":"400","9286":"400","9287":"400","9288":"400","9289":"400","9290":"400","9291":"400","9292":"200","9293":"-400","9294":"-600","9295":"-400","9296":"-400","9297":"-400","9298":"-800","9299":"-600","9300":"-400","9301":"-400","9302":"400","9303":"400","9304":"-800","9305":"400","9306":"600","9307":"600","9308":"600","9309":"600","9310":"600","9311":"-600","9312":"-200","9313":"-200","9314":"-200","9315":"200","9316":"200","9317":"400","9318":"400","9319":"400","9320":"400","9321":"400","9322":"200","9323":"600","9324":"200","9325":"200","9326":"-400","9327":"-400","9328":"-400","9329":"-400","9330":"-400","9331":"-400","9332":"-200","9333":"-200","9334":"-200","9335":"-200","9336":"-200","9337":"-200","9338":"-200","9339":"-200","9340":"-200","9341":"600","9342":"600","9343":"600","9344":"-600","9345":"-200","9346":"-200","9347":"200","9348":"400","9349":"200","9350":"-600","9351":"-600","9352":"-600","9353":"-600","9354":"-400","9355":"200","9356":"-400","9357":"-400","9358":"-400","9359":"-400","9360":"-200","9361":"-600","9362":"-600","9363":"-400","9364":"-400","9365":"-400","9366":"400","9367":"-400","9368":"-1000","9369":"-200","9370":"-200","9371":"-400","9372":"-400","9373":"-200","9374":"600","9375":"600","9376":"600","9377":"600","9378":"400","9379":"-400","9380":"-400","9381":"400","9382":"400","9383":"400","9384":"400","9385":"400","9386":"-400","9387":"-400","9388":"-400","9389":"-600","9390":"-600","9391":"-600","9392":"-600","9393":"-200","9394":"-400","9395":"200","9396":"-1000","9397":"-1000","9398":"-400","9399":"-400","9400":"-400","9401":"-400","9402":"-600","9403":"-600","9404":"-600","9405":"-600","9406":"-400","9407":"-400","9408":"-400","9409":"-400","9410":"400","9411":"400","9412":"600","9413":"600","9414":"-200","9415":"600","9416":"400","9417":"-200","9418":"-200","9419":"-400","9420":"600","9421":"-200","9422":"-200","9423":"-200","9424":"-600","9425":"-400","9426":"-400","9427":"400","9428":"400","9429":"-200","9430":"200","9431":"200","9432":"200","9433":"200","9434":"-400","9435":"-400","9436":"-600","9437":"-400","9438":"-400","9439":"-400","9440":"-400","9441":"-400","9442":"-400","9443":"-600","9444":"400","9445":"400","9446":"400","9447":"-400","9448":"-400","9449":"-400","9450":"-400","9451":"600","9452":"-600","9453":"-600","9454":"-600","9455":"-600","9456":"200","9457":"400","9458":"200","9459":"600","9460":"400","9461":"-200","9462":"-400","9463":"-600","9464":"-600","9465":"-400","9466":"-800","9467":"-400","9468":"-400","9469":"-400","9470":"-400","9471":"-400","9472":"-400","9473":"-400","9474":"-400","9475":"400","9476":"400","9477":"400","9478":"-600","9479":"-200","9480":"-200","9481":"-200","9482":"-200","9483":"-200","9484":"200","9485":"200","9486":"400","9487":"200","9488":"400","9489":"400","9490":"400","9491":"-400","9492":"400","9493":"-400","9494":"-600","9495":"600","9496":"600","9497":"600","9498":"600","9499":"600","9500":"-400","9501":"-400","9502":"-400","9503":"200","9504":"-200","9505":"400","9506":"400","9507":"400","9508":"400","9509":"-400","9510":"-400","9511":"-600","9512":"-400","9513":"400","9514":"600","9515":"600","9516":"-600","9517":"-600","9518":"-600","9519":"-600","9520":"-600","9521":"-600","9522":"-600","9523":"-600","9524":"-600","9525":"-600","9526":"400","9527":"400","9528":"400","9529":"400","9530":"400","9531":"-600","9532":"-600","9533":"-600","9534":"-400","9535":"-400","9536":"-400","9537":"-400","9538":"-400","9539":"400","9540":"400","9541":"600","9542":"400","9543":"400","9544":"-200","9545":"-400","9546":"-1000","9547":"-1000","9548":"-1000","9549":"-400","9550":"-400","9551":"-400","9552":"-400","9553":"-400","9554":"-400","9555":"-400","9556":"-200","9557":"-200","9558":"-400","9559":"-400","9560":"-600","9561":"-200","9562":"200","9563":"400","9564":"400","9565":"200","9566":"400","9567":"400","9568":"200","9569":"400","9570":"200","9571":"200","9572":"400","9573":"200","9574":"200","9575":"400","9576":"-400","9577":"-400","9578":"-400","9579":"-400","9580":"-400","9581":"-400","9582":"400","9583":"400","9584":"-400","9585":"400","9586":"400","9587":"400","9588":"400","9589":"-400","9590":"-400","9591":"-400","9592":"-400","9593":"-400","9594":"-400","9595":"-400","9596":"-400","9597":"-400","9598":"-400","9599":"400","9600":"400","9601":"400","9602":"-600","9603":"-400","9604":"-400","9605":"-400","9606":"-400","9607":"-200","9608":"-400","9609":"-400","9610":"-400","9611":"-400","9612":"-400","9613":"-400","9614":"-400","9615":"-400","9616":"-400","9617":"-200","9618":"-200","9619":"-200","9620":"-400","9621":"-400","9622":"-400","9623":"-400","9624":"-400","9625":"-400","9626":"-400","9627":"200","9628":"200","9629":"-400","9630":"-200","9631":"-600","9632":"-600","9633":"-600","9634":"-600","9635":"-600","9636":"-400","9637":"400","9638":"400","9639":"400","9640":"400","9641":"400","9642":"-400","9643":"-400","9644":"400","9645":"-200","9646":"-600","9647":"-400","9648":"-400","9649":"-400","9650":"-400","9651":"-400","9652":"-400","9653":"-600","9654":"-600","9655":"-600","9656":"-600","9657":"-600","9658":"-600","9659":"-600","9660":"-600","9661":"-400","9662":"-400","9663":"-400","9664":"-400","9665":"-400","9666":"-400","9667":"-400","9668":"-400","9669":"-400","9670":"-400","9671":"-400","9672":"-400","9673":"-200","9674":"-200","9675":"-200","9676":"-400","9677":"-200","9678":"-200","9679":"-200","9680":"-400","9681":"-400","9682":"-1000","9683":"200","9684":"-200","9685":"-400","9686":"-400","9687":"-200","9688":"-200","9689":"-400","9690":"-400","9691":"-600","9692":"-600","9693":"-400","9694":"-800","9695":"-800","9696":"-400","9697":"-400","9698":"-400","9699":"-200","9700":"600","9701":"-600","9702":"-400","9703":"-400","9704":"-600","9705":"-200","9706":"600","9707":"-400","9708":"-400","9709":"-400","9710":"-600","9711":"-600","9712":"-600","9713":"-600","9714":"-600","9715":"-600","9716":"-600","9717":"200","9718":"400","9719":"-400","9720":"-600","9721":"-600","9722":"400","9723":"400","9724":"-400","9725":"-200","9726":"-200","9727":"-200","9728":"-400","9729":"-400","9730":"-400","9731":"-400","9732":"-400","9733":"-400","9734":"-600","9735":"-600","9736":"-400","9737":"-400","9738":"-400","9739":"-400","9740":"-400","9741":"-400","9742":"-400","9743":"-400","9744":"-400","9745":"-400","9746":"-400","9747":"-200","9748":"-200","9749":"600","9750":"600","9751":"600","9752":"600","9753":"600","9754":"-200","9755":"-200","9756":"-200","9757":"-200","9758":"-200","9759":"-400","9760":"-400","9761":"-400","9762":"-400","9763":"-400","9764":"-400","9765":"-400","9766":"-400","9767":"-400","9768":"-400","9769":"-400","9770":"-400","9771":"-400","9772":"-400","9773":"-600","9774":"-600","9775":"-600","9776":"-600","9777":"-400","9778":"-400","9779":"-400","9780":"-400","9781":"-400","9782":"-400","9783":"-600","9784":"-400","9785":"-400","9786":"-400","9787":"-400","9788":"-400","9789":"-400","9790":"-400","9791":"-400","9792":"200","9793":"400","9794":"400","9795":"-600","9796":"-600","9797":"-600","9798":"-600","9799":"-600","9800":"-600","9801":"-600","9802":"-600","9803":"-200","9804":"-400","9805":"-400","9806":"-400","9807":"-400","9808":"-400","9809":"-400","9810":"-400","9811":"400","9812":"-400","9813":"-200","9814":"-200","9815":"-200","9816":"-400","9817":"-400","9818":"-400","9819":"-400","9820":"-400","9821":"400","9822":"400","9823":"200","9824":"-800","9825":"-600","9826":"-600","9827":"-200","9828":"-400","9829":"400","9830":"-200","9831":"400","9832":"-600","9833":"-400","9834":"-400","9835":"-400","9836":"-400","9837":"-400","9838":"-400","9839":"-200","9840":"-400","9841":"-400","9842":"-400","9843":"-200","9844":"-200","9845":"-200","9846":"-500","9847":"-800","9848":"-800","9849":"-800","9850":"-500","9851":"-400","9852":"-400","9853":"-400","9854":"-400","9855":"-400","9856":"-400","9857":"-600","9858":"-400","9859":"-200","9860":"-200","9861":"-200","9862":"-200","9863":"400","9864":"-400","9865":"-400","9866":"-400","9867":"-200","9868":"-400","9869":"-400","9870":"-400","9871":"-400","9872":"-400","9873":"-200","9874":"-200","9875":"-200","9876":"-200","9877":"-200","9878":"-200","9879":"-400","9880":"-400","9881":"-400","9882":"-400","9883":"-400","9884":"-400","9885":"-400","9886":"-400","9887":"-400","9888":"-400","9889":"-400","9890":"-400","9891":"-400","9892":"-400","9893":"-400","9894":"-400","9895":"-400","9896":"-400","9897":"-400","9898":"-400","9899":"-400","9900":"-400","9901":"-400","9902":"-400","9903":"-400","9904":"-400","9905":"-400","9906":"-400","9907":"-400","9908":"-400","9909":"-400","9910":"-400","9911":"-400","9912":"-400","9913":"-400","9914":"-400","9915":"-400","9916":"-400","9917":"-400","9918":"-400","9919":"-600","9920":"-600","9921":"-400","9922":"-400","9923":"-400","9924":"-400","9925":"400","9926":"400","9927":"400","9928":"400","9929":"-400","9930":"-200","9931":"-200","9932":"-200","9933":"-200","9934":"-200","9935":"-600","9936":"-600","9937":"-400","9938":"-400","9939":"-400","9940":"-200","9941":"-200","9942":"-200","9943":"-400","9944":"-400","9945":"200","9946":"200","9947":"-400","9948":"-200","9949":"-200","9950":"-400","9951":"-400","9952":"-400","9953":"-400","9954":"-400","9955":"-400","9956":"-400","9957":"-400","9958":"-600","9959":"-600","9960":"-200","9961":"-400","9962":"-200","9963":"-400","9964":"-400","9965":"400","9966":"-600","9967":"-400","9968":"400","9969":"-400","9970":"-400","9971":"400","9972":"400","9973":"400","9974":"400","9975":"400","9976":"400","9977":"-400","9978":"-400","9979":"-400","9980":"-600","9981":"-400","9982":"200","9983":"-400","9984":"400","9985":"400","9986":"-200","9987":"-200","9988":"400","9989":"400","9990":"400","9991":"400","9992":"400","9993":"400","9994":"-400","9995":"-400","9996":"400","9997":"200","9998":"200","9999":"200","10000":"400","10001":"400","10002":"400","10003":"400","10004":"400","10005":"400","10006":"400","10007":"-400","10008":"-400","10009":"-400","10010":"600","10011":"-400","10012":"-400","10013":"-400","10014":"200","10015":"200","10016":"200","10017":"600","10018":"200","10019":"400","10020":"-200","10021":"-400","10022":"-200","10023":"-200","10024":"-400","10025":"-400","10026":"-400","10027":"-200","10028":"-200","10029":"-200","10030":"-200","10031":"-200","10032":"-200","10033":"-200","10034":"-200","10035":"400","10036":"400","10037":"-600","10038":"-200","10039":"-400","10040":"-400","10041":"-400","10042":"-400","10043":"-400","10044":"-400","10045":"-400","10046":"-400","10047":"-400","10048":"600","10049":"600","10050":"600","10051":"600","10052":"-200","10053":"-400","10054":"-200","10055":"400","10056":"-200","10057":"-200","10058":"-200","10059":"-400","10060":"600","10061":"400","10062":"400","10063":"400","10064":"200","10065":"200","10066":"-400","10067":"-400","10068":"-400","10069":"-400","10070":"400","10071":"-400","10072":"-400","10073":"-400","10074":"-400","10075":"200","10076":"200","10077":"-200","10078":"-200","10079":"-200","10080":"-200","10081":"600","10082":"200","10083":"200","10084":"-400","10085":"800","10086":"600","10087":"800","10088":"800","10089":"-400","10090":"-600","10091":"-600","10092":"-600","10093":"-400","10094":"-400","10095":"-400","10096":"-400","10097":"-400","10098":"-400","10099":"-400","10100":"400","10101":"400","10102":"200","10103":"-600","10104":"-600","10105":"-600","10106":"-200","10107":"-200","10108":"-400","10109":"-600","10110":"600","10111":"800","10112":"-200","10113":"600","10114":"-400","10115":"-400","10116":"-600","10117":"-600","10118":"-600","10119":"-400","10120":"-400","10121":"-400","10122":"-400","10123":"400","10124":"400","10125":"400","10126":"400","10127":"400","10128":"400","10129":"400","10130":"400","10131":"400","10132":"400","10133":"-400","10134":"-400","10135":"400","10136":"400","10137":"-400","10138":"200","10139":"-600","10140":"-600","10141":"400","10142":"400","10143":"-400","10144":"-200","10145":"-400","10146":"400","10147":"-400","10148":"600","10149":"-400","10150":"-400","10151":"-400","10152":"200","10153":"-400","10154":"400","10155":"400","10156":"400","10157":"-400","10158":"-200","10159":"-400","10160":"-400","10161":"-400","10162":"-400","10163":"400","10164":"-400","10165":"-450","10166":"-400","10167":"-400","10168":"-200","10169":"-400","10170":"-200","10171":"-400","10172":"-400","10173":"200","10174":"-200","10175":"-400","10176":"-200","10177":"200","10178":"200","10179":"-200","10180":"-200","10181":"400","10182":"-200","10183":"-800","10184":"-800","10185":"-800","10186":"-800","10187":"-800","10188":"-400","10189":"200","10190":"400","10191":"400","10192":"-600","10193":"200","10194":"200","10195":"400","10196":"-400","10197":"-400","10198":"-400","10199":"-400","10200":"-400","10201":"600","10202":"-800","10203":"-800","10204":"-800","10205":"-800","10206":"-800","10207":"-800","10208":"-800","10209":"-800","10210":"-800","10211":"-600","10212":"-800","10213":"-800","10214":"400","10215":"400","10216":"400","10217":"-400","10218":"800","10219":"-200","10220":"-200","10221":"400","10222":"800","10223":"800","10224":"-400","10225":"-400","10226":"-400","10227":"400","10228":"400","10229":"400","10230":"400","10231":"600","10232":"600","10233":"-200","10234":"600","10235":"400","10236":"400","10237":"600","10238":"-200","10239":"400","10240":"600","10241":"600","10242":"600","10243":"400","10244":"200","10245":"-600","10246":"400","10247":"600","10248":"200","10249":"600","10250":"-400","10251":"-400","10252":"200","10253":"200","10254":"200","10255":"200","10256":"200","10257":"400","10258":"-400","10259":"-200","10260":"600","10261":"600","10262":"-600","10263":"-400","10264":"-600","10265":"-600","10266":"-600","10267":"-600","10268":"200","10269":"200","10270":"200","10271":"400","10272":"200","10273":"-200","10274":"-400","10275":"-400","10276":"-400","10277":"-400","10278":"-400","10279":"200","10280":"400","10281":"400","10282":"200","10283":"-400","10284":"-400","10285":"-200","10286":"400","10287":"-200","10288":"600","10289":"600","10290":"600","10291":"400","10292":"400","10293":"600","10294":"200","10295":"-400","10296":"-400","10297":"600","10298":"-600","10299":"-600","10300":"-200","10301":"400","10302":"400","10303":"-400","10304":"-400","10305":"-400","10306":"400","10307":"400","10308":"-400","10309":"-400","10310":"-400","10311":"-400","10312":"-600","10313":"-600","10314":"-600","10315":"-600","10316":"-200","10317":"-400","10318":"200","10319":"-200","10320":"-400","10321":"-400","10322":"-400","10323":"400","10324":"800","10325":"400","10326":"400","10327":"400","10328":"-400","10329":"400","10330":"400","10331":"400","10332":"600","10333":"-400","10334":"-400","10335":"-200","10336":"-200","10337":"-200","10338":"-200","10339":"400","10340":"-400","10341":"-400","10342":"-400","10343":"-200","10344":"-400","10345":"-400","10346":"-400","10347":"-400","10348":"400","10349":"400","10350":"400","10351":"-400","10352":"-400","10353":"400","10354":"-400","10355":"400","10356":"400","10357":"-400","10358":"-400","10359":"-400","10360":"400","10361":"400","10362":"400","10363":"600","10364":"-600","10365":"-600","10366":"400","10367":"400","10368":"-400","10369":"1000","10370":"-400","10371":"-400","10372":"-600","10373":"-600","10374":"-600","10375":"-600","10376":"-600","10377":"-200","10378":"-400","10379":"-200","10380":"-600","10381":"-600","10382":"-400","10383":"-400","10384":"-400","10385":"-600","10386":"-200","10387":"200","10388":"-400","10389":"-400","10390":"-400","10391":"-400","10392":"-400","10393":"-400","10394":"-600","10395":"-600","10396":"-400","10397":"-400","10398":"-400","10399":"-400","10400":"-400","10401":"-400","10402":"400","10403":"400","10404":"-200","10405":"-200","10406":"-200","10407":"-400","10408":"-400","10409":"600","10410":"600","10411":"600","10412":"-400","10413":"-400","10414":"400","10415":"400","10416":"400","10417":"-400","10418":"-400","10419":"-400","10420":"-400","10421":"-400","10422":"-400","10423":"-400","10424":"-400","10425":"-400","10426":"-400","10427":"-200","10428":"-400","10429":"-400","10430":"-400","10431":"200","10432":"200","10433":"200","10434":"-400","10435":"400","10436":"-400","10437":"-400","10438":"-400","10439":"-400","10440":"-400","10441":"-400","10442":"-400","10443":"-400","10444":"-400","10445":"-400","10446":"-400","10447":"-400","10448":"-400","10449":"-400","10450":"-400","10451":"-400","10452":"400","10453":"400","10454":"-400","10455":"-400","10456":"-400","10457":"-400","10458":"-400","10459":"-400","10460":"-400","10461":"-400","10462":"-400","10463":"-400","10464":"-400","10465":"-400","10466":"-400","10467":"-400","10468":"-400","10469":"-400","10470":"-400","10471":"-400","10472":"-400","10473":"-400","10474":"-400","10475":"-400","10476":"-400","10477":"-200","10478":"-400","10479":"-400","10480":"-400","10481":"-400","10482":"-400","10483":"200","10484":"200","10485":"200","10486":"-400","10487":"-400","10488":"400","10489":"-400","10490":"-400","10491":"-400","10492":"-400","10493":"-400","10494":"-400","10495":"-400","10496":"400","10497":"400","10498":"400","10499":"400","10500":"600","10501":"-400","10502":"-400","10503":"-400","10504":"-400","10505":"-400","10506":"400","10507":"400","10508":"200","10509":"200","10510":"400","10511":"400","10512":"200","10513":"-400","10514":"-400","10515":"-400","10516":"-400","10517":"-400","10518":"-400","10519":"-400","10520":"-400","10521":"-400","10522":"-400","10523":"-400","10524":"400","10525":"200","10526":"-200","10527":"400","10528":"200","10529":"-600","10530":"-200","10531":"-200","10532":"-200","10533":"-400","10534":"-400","10535":"400","10536":"400","10537":"-400","10538":"-400","10539":"-400","10540":"-200","10541":"-600","10542":"-200","10543":"-800","10544":"-800","10545":"-400","10546":"-600","10547":"200","10548":"200","10549":"200","10550":"200","10551":"400","10552":"400","10553":"-200","10554":"-400","10555":"400","10556":"400","10557":"-600","10558":"-600","10559":"-400","10560":"-400","10561":"-400","10562":"-400","10563":"-400","10564":"-600","10565":"-600","10566":"-600","10567":"400","10568":"400","10569":"400","10570":"-400","10571":"-400","10572":"-200","10573":"-400","10574":"-400","10575":"-400","10576":"-400","10577":"400","10578":"-200","10579":"-200","10580":"200","10581":"200","10582":"200","10583":"200","10584":"600","10585":"-400","10586":"-400","10587":"-200","10588":"200","10589":"400","10590":"-200","10591":"-200","10592":"-200","10593":"200","10594":"200","10595":"200","10596":"-400","10597":"-400","10598":"-400","10599":"-400","10600":"-600","10601":"-400","10602":"-200","10603":"800","10604":"400","10605":"400","10606":"-200","10607":"-200","10608":"-200","10609":"-200","10610":"-400","10611":"400","10612":"-400","10613":"800","10614":"800","10615":"-600","10616":"-600","10617":"-400","10618":"-400","10619":"-400","10620":"-400","10621":"-400","10622":"600","10623":"800","10624":"800","10625":"800","10626":"-400","10627":"-400","10628":"-200","10629":"600","10630":"-200","10631":"-200","10632":"-200","10633":"600","10634":"600","10635":"-600","10636":"-600","10637":"-600","10638":"-600","10639":"-600","10640":"-600","10641":"600","10642":"600","10643":"-200","10644":"600","10645":"600","10646":"-600","10647":"-600","10648":"-600","10649":"-200","10650":"-200","10651":"-200","10652":"400","10653":"-600","10654":"-600","10655":"-600","10656":"-400","10657":"-400","10658":"-400","10659":"-200","10660":"-200","10661":"-200","10662":"-200","10663":"-600","10664":"600","10665":"600","10666":"800","10667":"800","10668":"200","10669":"200","10670":"400","10671":"-400","10672":"600","10673":"-600","10674":"200","10675":"200","10676":"-400","10677":"-400","10678":"-400","10679":"-400","10680":"400","10681":"-400","10682":"-400","10683":"400","10684":"400","10685":"-400","10686":"800","10687":"-400","10688":"-400","10689":"-400","10690":"-400","10691":"-600","10692":"-400","10693":"-200","10694":"-200","10695":"-400","10696":"-400","10697":"-400","10698":"-400","10699":"-400","10700":"-400","10701":"-400","10702":"-600","10703":"-400","10704":"-400","10705":"-400","10706":"-400","10707":"-400","10708":"-400","10709":"-600","10710":"-600","10711":"-600","10712":"-400","10713":"-400","10714":"-400","10715":"-400","10716":"-600","10717":"-200","10718":"-400","10719":"-400","10720":"-400","10721":"-400","10722":"-400","10723":"-400","10724":"-400","10725":"-400","10726":"-400","10727":"-400","10728":"-400","10729":"-400","10730":"-400","10731":"-400","10732":"-400","10733":"-400","10734":"-400","10735":"-400","10736":"-400","10737":"-400","10738":"-400","10739":"-400","10740":"-400","10741":"-400","10742":"-400","10743":"-400","10744":"-400","10745":"-400","10746":"-400","10747":"400","10748":"400","10749":"400","10750":"-400","10751":"-400","10752":"-400","10753":"-400","10754":"-400","10755":"-200","10756":"-200","10757":"-200","10758":"-200","10759":"-600","10760":"-1000","10761":"200","10762":"400","10763":"200","10764":"-400","10765":"-400","10766":"-400","10767":"-400","10768":"-600","10769":"-600","10770":"-400","10771":"-400","10772":"-200","10773":"-400","10774":"-400","10775":"-600","10776":"200","10777":"-400","10778":"-400","10779":"-400","10780":"-400","10781":"-400","10782":"-400","10783":"-400","10784":"-400","10785":"-400","10786":"-200","10787":"-400","10788":"-400","10789":"-1000","10790":"-1000","10791":"400","10792":"400","10793":"-200","10794":"-400","10795":"-400","10796":"-400","10797":"-400","10798":"-200","10799":"400","10800":"-600","10801":"-400","10802":"-400","10803":"-400","10804":"-400","10805":"400","10806":"-400","10807":"-400","10808":"-400","10809":"-400","10810":"-400","10811":"-400","10812":"-400","10813":"-400","10814":"-400","10815":"-400","10816":"-400","10817":"-400","10818":"-400","10819":"-400","10820":"-400","10821":"-400","10822":"-400","10823":"-400","10824":"-200","10825":"400","10826":"-400","10827":"400","10828":"400","10829":"-400","10830":"-400","10831":"-400","10832":"-400","10833":"-400","10834":"-400","10835":"-400","10836":"-400","10837":"-400","10838":"-400","10839":"-400","10840":"-400","10841":"-400","10842":"-400","10843":"400","10844":"1000","10845":"-200","10846":"-200","10847":"-400","10848":"-400","10849":"-400","10850":"-400","10851":"-400","10852":"-400","10853":"-400","10854":"-400","10855":"-400","10856":"-400","10857":"-200","10858":"-400","10859":"-400","10860":"-400","10861":"-400","10862":"-400","10863":"-400","10864":"-400","10865":"-200","10866":"-600","10867":"-200","10868":"-600","10869":"600","10870":"-200","10871":"400","10872":"400","10873":"400","10874":"400","10875":"-200","10876":"200","10877":"-200","10878":"-200","10879":"-200","10880":"400","10881":"400","10882":"-400","10883":"-400","10884":"-400","10885":"-400","10886":"-200","10887":"400","10888":"600","10889":"400","10890":"-400","10891":"-600","10892":"-400","10893":"-400","10894":"-400","10895":"-400","10896":"-400","10897":"-400","10898":"-400","10899":"-400","10900":"-600","10901":"-400","10902":"-400","10903":"400","10904":"-200","10905":"-400","10906":"-400","10907":"-800","10908":"-600","10909":"-400","10910":"-200","10911":"-600","10912":"-600","10913":"-600","10914":"200","10915":"600","10916":"-400","10917":"400","10918":"-400","10919":"-400","10920":"-400","10921":"-400","10922":"-400","10923":"400","10924":"-400","10925":"-400","10926":"-400","10927":"-400","10928":"-400","10929":"-400","10930":"-400","10931":"-400","10932":"-400","10933":"-400","10934":"600","10935":"400","10936":"-400","10937":"-200","10938":"-200","10939":"-200","10940":"-200","10941":"-200","10942":"400","10943":"-400","10944":"600","10945":"600","10946":"200","10947":"200","10948":"200","10949":"-400","10950":"-400","10951":"-400","10952":"-200","10953":"-400","10954":"-200","10955":"-200","10956":"200","10957":"-200","10958":"-200","10959":"-200","10960":"-200","10961":"-1000","10962":"-400","10963":"-400","10964":"-400","10965":"400","10966":"400","10967":"-400","10968":"-300","10969":"-400","10970":"-400","10971":"400","10972":"400","10973":"-200","10974":"-200","10975":"400","10976":"200","10977":"200","10978":"200","10979":"200","10980":"200","10981":"200","10982":"200","10983":"200","10984":"-400","10985":"-200","10986":"-400","10987":"-200","10988":"-200","10989":"200","10990":"200","10991":"200","10992":"200","10993":"200","10994":"-400","10995":"-400","10996":"-400","10997":"-400","10998":"-200","10999":"-200","11000":"400","11001":"-600","11002":"-400","11003":"-400","11004":"-400","11005":"200","11006":"200","11007":"-200","11008":"-400","11009":"-400","11010":"400","11011":"-400","11012":"-200","11013":"-200","11014":"-600","11015":"-600","11016":"-600","11017":"-400","11018":"-200","11019":"-600","11020":"-600","11021":"-600","11022":"-600","11023":"-800","11024":"-800","11025":"400","11026":"400","11027":"400","11028":"400","11029":"200","11030":"200","11031":"200","11032":"200","11033":"200","11034":"-400","11035":"-400","11036":"-400","11037":"-400","11038":"-400","11039":"400","11040":"400","11041":"400","11042":"400","11043":"400","11044":"200","11045":"200","11046":"200","11047":"400","11048":"-400","11049":"-400","11050":"-400","11051":"-400","11052":"-400","11053":"-400","11054":"-400","11055":"200","11056":"-200","11057":"-200","11058":"-200","11059":"-400","11060":"-200","11061":"800","11062":"800","11063":"400","11064":"-200","11065":"400","11066":"400","11067":"200","11068":"400","11069":"200","11070":"400","11071":"400","11072":"400","11073":"-400","11074":"-400","11075":"-400","11076":"-400","11077":"-400","11078":"-400","11079":"400","11080":"400","11081":"-200","11082":"-200","11083":"-200","11084":"-200","11085":"400","11086":"400","11087":"400","11088":"400","11089":"400","11090":"400","11091":"200","11092":"400","11093":"400","11094":"400","11095":"-400","11096":"200","11097":"200","11098":"200","11099":"200","11100":"-400","11101":"-400","11102":"-400","11103":"-200","11104":"-400","11105":"-400","11106":"-400","11107":"-200","11108":"-400","11109":"-400","11110":"400","11111":"400","11112":"400","11113":"400","11114":"400","11115":"400","11116":"400","11117":"-600","11118":"-200","11119":"-200","11120":"400","11121":"600","11122":"600","11123":"-400","11124":"-400","11125":"200","11126":"200","11127":"-400","11128":"-400","11129":"-400","11130":"-400","11131":"-400","11132":"-400","11133":"-400","11134":"400","11135":"400","11136":"800","11137":"800","11138":"800","11139":"400","11140":"400","11141":"400","11142":"200","11143":"800","11144":"800","11145":"800","11146":"-400","11147":"-400","11148":"-400","11149":"-400","11150":"-400","11151":"200","11152":"400","11153":"200","11154":"200","11155":"400","11156":"400","11157":"400","11158":"400","11159":"400","11160":"-200","11161":"-400","11162":"400","11163":"-400","11164":"-400","11165":"400","11166":"400","11167":"200","11168":"-400","11169":"-400","11170":"-600","11171":"-600","11172":"-600","11173":"-400","11174":"-400","11175":"-400","11176":"-400","11177":"-400","11178":"600","11179":"-400","11180":"-400","11181":"-400","11182":"-400","11183":"-600","11184":"-800","11185":"400","11186":"400","11187":"400","11188":"400","11189":"400","11190":"-400","11191":"-400","11192":"-200","11193":"-600","11194":"-400","11195":"-400","11196":"200","11197":"200","11198":"-400","11199":"-400","11200":"-400","11201":"600","11202":"-400","11203":"200","11204":"200","11205":"200","11206":"-800","11207":"-400","11208":"-400","11209":"-400","11210":"-400","11211":"-200","11212":"-400","11213":"-400","11214":"-800","11215":"-200","11216":"-400","11217":"-400","11218":"-400","11219":"200","11220":"200","11221":"-200","11222":"-200","11223":"200","11224":"-400","11225":"400","11226":"400","11227":"400","11228":"-600","11229":"-400","11230":"-400","11231":"-400","11232":"-400","11233":"-400","11234":"-400","11235":"-400","11236":"-400","11237":"-400","11238":"-400","11239":"-400","11240":"-600","11241":"-600","11242":"-600","11243":"-400","11244":"400","11245":"400","11246":"400","11247":"-200","11248":"-400","11249":"-400","11250":"-200","11251":"-1000","11252":"400","11253":"400","11254":"-400","11255":"400","11256":"400","11257":"400","11258":"-400","11259":"-400","11260":"-400","11261":"-400","11262":"-200","11263":"-400","11264":"-400","11265":"-400","11266":"-400","11267":"-400","11268":"-400","11269":"-400","11270":"-400","11271":"200","11272":"400","11273":"400","11274":"400","11275":"400","11276":"400","11277":"400","11278":"200","11279":"200","11280":"200","11281":"200","11282":"200","11283":"200","11284":"600","11285":"600","11286":"200","11287":"-400","11288":"-600","11289":"-600","11290":"-400","11291":"200","11292":"600","11293":"600","11294":"600","11295":"400","11296":"-400","11297":"200","11298":"400","11299":"-400","11300":"400","11301":"-400","11302":"-400","11303":"-400","11304":"-400","11305":"-200","11306":"-400","11307":"-400","11308":"400","11309":"-400","11310":"-400","11311":"-400","11312":"-400","11313":"400","11314":"-400","11315":"-400","11316":"-400","11317":"600","11318":"-400","11319":"-400","11320":"-400","11321":"-400","11322":"-400","11323":"-400","11324":"-400","11325":"-200","11326":"200","11327":"200","11328":"-400","11329":"-400","11330":"-400","11331":"-400","11332":"-400","11333":"-200","11334":"-200","11335":"-200","11336":"-200","11337":"200","11338":"-200","11339":"-200","11340":"-400","11341":"400","11342":"400","11343":"400","11344":"400","11345":"400","11346":"-200","11347":"-400","11348":"-400","11349":"-400","11350":"-400","11351":"-200","11352":"-400","11353":"-200","11354":"400","11355":"400","11356":"400","11357":"-200","11358":"-400","11359":"-400","11360":"-400","11361":"-400","11362":"-400","11363":"-400","11364":"800","11365":"-400","11366":"200","11367":"200","11368":"-400","11369":"600","11370":"600","11371":"600","11372":"600","11373":"400","11374":"-600","11375":"-600","11376":"-600","11377":"-400","11378":"-400","11379":"-400","11380":"-400","11381":"-400","11382":"-400","11383":"-400","11384":"-400","11385":"-400","11386":"-400","11387":"-400","11388":"-400","11389":"400","11390":"-400","11391":"-400","11392":"400","11393":"400","11394":"400","11395":"200","11396":"200","11397":"200","11398":"400","11399":"400","11400":"400","11401":"400","11402":"-200","11403":"-200","11404":"-200","11405":"-200","11406":"-200","11407":"-200","11408":"-400","11409":"200","11410":"400","11411":"400","11412":"-400","11413":"-400","11414":"-400","11415":"600","11416":"600","11417":"400","11418":"400","11419":"-600","11420":"-600","11421":"-600","11422":"400","11423":"400","11424":"-400","11425":"-400","11426":"400","11427":"-400","11428":"-400","11429":"-400","11430":"-400","11431":"-400","11432":"400","11433":"400","11434":"-400","11435":"-200","11436":"-600","11437":"-600","11438":"800","11439":"800","11440":"-600","11441":"-400","11442":"-400","11443":"-600","11444":"-600","11445":"-600","11446":"400","11447":"400","11448":"-400","11449":"400","11450":"-400","11451":"-400","11452":"-400","11453":"-400","11454":"-400","11455":"-400","11456":"1000","11457":"-400","11458":"-400","11459":"-400","11460":"-400","11461":"-400","11462":"400","11463":"400","11464":"-400","11465":"400","11466":"-400","11467":"-800","11468":"-800","11469":"-400","11470":"-400","11471":"-400","11472":"-400","11473":"-400","11474":"-400","11475":"-600","11476":"-400","11477":"-400","11478":"-400","11479":"-400","11480":"-400","11481":"-400","11482":"-400","11483":"-200","11484":"-400","11485":"-200","11486":"-600","11487":"-400","11488":"-600","11489":"-600","11490":"400","11491":"400","11492":"-400","11493":"-400","11494":"-400","11495":"-400","11496":"400","11497":"-400","11498":"-400","11499":"-400","11500":"-400","11501":"200","11502":"200","11503":"-400","11504":"-1000","11505":"-600","11506":"-600","11507":"-600","11508":"-600","11509":"-600","11510":"400","11511":"-400","11512":"-600","11513":"-400","11514":"-400","11515":"-400","11516":"-400","11517":"-400","11518":"-200","11519":"-200","11520":"400","11521":"-200","11522":"-200","11523":"-400","11524":"-400","11525":"-200","11526":"-200","11527":"-200","11528":"-200","11529":"-400","11530":"-200","11531":"-200","11532":"-200","11533":"-200","11534":"-400","11535":"-400","11536":"-400","11537":"-400","11538":"-400","11539":"-400","11540":"-400","11541":"-400","11542":"-400","11543":"-400","11544":"-200","11545":"400","11546":"-400","11547":"-400","11548":"-400","11549":"-400","11550":"-400","11551":"-400","11552":"-400","11553":"-400","11554":"-400","11555":"-400","11556":"200","11557":"-400","11558":"-400","11559":"-400","11560":"-400","11561":"-400","11562":"200","11563":"-400","11564":"-200","11565":"-400","11566":"-400","11567":"200","11568":"-400","11569":"-400","11570":"-400","11571":"-400","11572":"200","11573":"-400","11574":"-400","11575":"-400","11576":"-400","11577":"400","11578":"-200","11579":"-200","11580":"-400","11581":"-400","11582":"400","11583":"-400","11584":"-400","11585":"400","11586":"-400","11587":"-400","11588":"400","11589":"-600","11590":"-400","11591":"-400","11592":"-400","11593":"-200","11594":"400","11595":"-400","11596":"-400","11597":"-400","11598":"-400","11599":"200","11600":"200","11601":"-400","11602":"-200","11603":"-200","11604":"200","11605":"600","11606":"-400","11607":"-600","11608":"-600","11609":"-600","11610":"-600","11611":"-600","11612":"-600","11613":"-600","11614":"600","11615":"600","11616":"600","11617":"600","11618":"600","11619":"400","11620":"400","11621":"400","11622":"400","11623":"-400","11624":"-400","11625":"-400","11626":"-400","11627":"-400","11628":"-600","11629":"-600","11630":"-600","11631":"-400","11632":"200","11633":"600","11634":"200","11635":"200","11636":"200","11637":"-600","11638":"400","11639":"-200","11640":"-600","11641":"-600","11642":"-600","11643":"-600","11644":"-400","11645":"-400","11646":"-400","11647":"-400","11648":"-600","11649":"200","11650":"-400","11651":"-400","11652":"400","11653":"-400","11654":"-400","11655":"-600","11656":"-600","11657":"-400","11658":"-400","11659":"-400","11660":"-200","11661":"-400","11662":"-400","11663":"-400","11664":"-400","11665":"600","11666":"400","11667":"-400","11668":"400","11669":"400","11670":"200","11671":"-600","11672":"-800","11673":"-200","11674":"800","11675":"800","11676":"800","11677":"600","11678":"200","11679":"200","11680":"200","11681":"200","11682":"-600","11683":"400","11684":"600","11685":"800","11686":"600","11687":"600","11688":"800","11689":"800","11690":"600","11691":"600","11692":"600","11693":"-200","11694":"-600","11695":"-600","11696":"-600","11697":"-600","11698":"-600","11699":"-600","11700":"600","11701":"-600","11702":"400","11703":"800","11704":"800","11705":"800","11706":"-400","11707":"-400","11708":"-400","11709":"-400","11710":"-400","11711":"-400","11712":"-400","11713":"-800","11714":"-800","11715":"-800","11716":"600","11717":"600","11718":"800","11719":"800","11720":"200","11721":"200","11722":"400","11723":"200","11724":"400","11725":"400","11726":"600","11727":"600","11728":"-400","11729":"-400","11730":"200","11731":"800","11732":"600","11733":"600","11734":"0","11735":"800","11736":"600","11737":"600","11738":"600","11739":"600","11740":"400","11741":"600","11742":"600","11743":"600","11744":"-400","11745":"400","11746":"400","11747":"400","11748":"400","11749":"600","11750":"400","11751":"600","11752":"400","11753":"-400","11754":"800","11755":"800","11756":"600","11757":"-200","11758":"200","11759":"800","11760":"400","11761":"0","11762":"600","11763":"600","11764":"800","11765":"400","11766":"0","11767":"600","11768":"200","11769":"400","11770":"-200","11771":"400","11772":"0","11773":"600","11774":"600","11775":"400","11776":"0","11777":"600","11778":"800","11779":"400","11780":"200","11781":"200","11782":"-200","11783":"800","11784":"400","11785":"600","11786":"200","11787":"-200","11788":"400","11789":"400","11790":"0","11791":"-200","11792":"200","11793":"200","11794":"-200","11795":"600","11796":"800","11797":"600","11798":"200","11799":"0","11800":"600","11801":"0","11802":"200","11803":"400","11804":"200","11805":"800","11806":"400","11807":"600","11808":"200","11809":"-400","11810":"200","11811":"-200","11812":"-200","11813":"200","11814":"400","11815":"400","11816":"0","11817":"600","11818":"-400","11819":"800","11820":"200","11821":"400","11822":"400","11823":"800","11824":"-400","11825":"400","11826":"400","11827":"200","11828":"800","11829":"400","11830":"0","11831":"-200","11832":"-400","11833":"400","11834":"-200","11835":"-200","11836":"400","11837":"600","11838":"-200","11839":"400","11840":"200","11841":"-200","11842":"200","11843":"400","11844":"600","11845":"-200","11846":"600","11847":"200","11848":"600","11849":"200","11850":"400","11851":"600","11852":"400","11853":"600","11854":"400","11855":"200","11856":"200","11857":"200","11858":"800","11859":"400","11860":"400","11861":"800","11862":"600","11863":"400","11864":"600","11865":"600","11866":"400","11867":"0","11868":"600","11869":"400","11870":"600","11871":"600","11872":"200","11873":"200","11874":"200","11875":"600","11876":"-200","11877":"600","11878":"400","11879":"600","11880":"600","11881":"0","11882":"400","11883":"400","11884":"600","11885":"400","11886":"600","11887":"400","11888":"400","11889":"400","11890":"400","11891":"400","11892":"400","11893":"600","11894":"400","11895":"200","11896":"600","11897":"600","11898":"200","11899":"400","11900":"-400","11901":"0","11902":"600","11903":"200","11904":"0","11905":"600","11906":"600","11907":"600","11908":"400","11909":"-200","11910":"600","11911":"600","11912":"400","11913":"600","11914":"400","11915":"200","11916":"600","11917":"600","11918":"400","11919":"400","11920":"400","11921":"600","11922":"0","11923":"0","11924":"400","11925":"400","11926":"200","11927":"400","11928":"400","11929":"800","11930":"600","11931":"400","11932":"600","11933":"200","11934":"200","11935":"600","11936":"0","11937":"600","11938":"200","11939":"-400","11940":"600","11941":"600","11942":"400","11943":"0","11944":"400","11945":"400","11946":"400","11947":"200","11948":"0","11949":"200","11950":"400","11951":"400","11952":"600","11953":"0","11954":"400","11955":"600","11956":"0","11957":"600","11958":"600","11959":"600","11960":"200","11961":"400","11962":"400","11963":"800","11964":"-200","11965":"600","11966":"0","11967":"600","11968":"-600","11969":"600","11970":"400","11971":"200","11972":"600","11973":"600","11974":"600","11975":"200","11976":"200","11977":"400","11978":"400","11979":"200","11980":"600","11981":"200","11982":"400","11983":"800","11984":"200","11985":"200","11986":"200","11987":"400","11988":"200","11989":"400","11990":"-400","11991":"-200","11992":"400","11993":"-400","11994":"400","11995":"-400","11996":"-400","11997":"-400","11998":"400","11999":"400","12000":"-400","12001":"-200","12002":"400","12003":"-400","12004":"400","12005":"-200","12006":"400","12007":"400","12008":"600","12009":"600","12010":"-400","12011":"600","12012":"-400","12013":"600","12014":"600","12015":"-400","12016":"600","12017":"-400","12018":"-400","12019":"400","12020":"-400","12021":"400","12022":"-400","12023":"-400","12024":"400","12025":"-400","12026":"400","12027":"600","12028":"600","12029":"600","12030":"600","12031":"600","12032":"800","12033":"800","12034":"800","12035":"800","12036":"600","12037":"600","12038":"600","12039":"600","12040":"800","12041":"800","12042":"800","12043":"800","12044":"800","12045":"-600","12046":"-600","12047":"-600","12048":"-600","12049":"600","12050":"600","12051":"600","12052":"600","12053":"800","12054":"800","12055":"800","12056":"800","12057":"800","12058":"800","12059":"800"},{},{}]']});var tXA=GA((_si,rXA)=>{var oYr=AXA(),sYr=eXA(),cYr=function(){return{machines:sYr,setter:oYr}};rXA.exports=cYr});var VdA=GA((wsi,iXA)=>{var NQ=Object.create(null);NQ.UNK=0,NQ.bits4PrecedingSpace=16,NQ.bits4lemma=20,NQ.posMask=66060288,NQ.psMask=65535,NQ.xnMask=1073676288,NQ.tkSize=4,NQ.xpSize=4,NQ.xcMask=31,NQ.bits4xpPointer=14,NQ.negationFlag=Math.pow(2,31),iXA.exports=NQ});var sXA=GA((vsi,oXA)=>{var nXA=new Array(1),zdA=VdA(),aXA=zdA.tkSize,lYr=zdA.bits4lemma,uYr=zdA.posMask;nXA[0]=function(A,r,t,i){var o,s=t.rdd.cache,g=t.rdd.tokens,E=t.preserve,p=s.value(g[i*aXA]);return typeof A=="string"?A:E[p]?E[p]:!t.matchValue&&E[o=s.value(A)]?E[o]:t.usePOS?s.valueOf("pos",(g[i*aXA+2]&uYr)>>>lYr):t.matchValue?p:o},oXA.exports=nXA});var cXA=GA((ysi,gYr)=>{gYr.exports=[100,63,{"0":{" otherwise":0,"^":1,ADV:33,INTJ:34,ADJ:35,NOUN:36,URL:37,PROPN:38,MENTION:39,VERB:40,HASHTAG:41,ADP:42,EMOTICON:43,AUX:44,EMOJI:45,CCONJ:46,EMAIL:47,TIME:49,PART:50,PERCENT:51,PRON:52,ORDINAL:53,SCONJ:54,MONEY:55,PUNCT:56,DURATION:57,NUM:58,DATE:59,SYM:60,CARDINAL:61,X:62,DET:63},"1":{" otherwise":48,ADV:2,"^":3,SYM:4,CARDINAL:5,NUM:6,DATE:7,PUNCT:8,DURATION:9,SCONJ:10,MONEY:11,PRON:12,ORDINAL:13,PART:14,PERCENT:15,DET:16,TIME:17,CCONJ:18,EMAIL:19,AUX:20,EMOJI:21,ADP:22,EMOTICON:23,VERB:24,HASHTAG:25,PROPN:26,MENTION:27,NOUN:28,URL:29,INTJ:30,ADJ:31,X:32}},{"2":"ADV&","3":"^","4":"SYM&","5":"CARDINAL&","6":"NUM&","7":"DATE&","8":"PUNCT&","9":"DURATION&","10":"SCONJ&","11":"MONEY&","12":"PRON&","13":"ORDINAL&","14":"PART&","15":"PERCENT&","16":"DET&","17":"TIME&","18":"CCONJ&","19":"EMAIL&","20":"AUX&","21":"EMOJI&","22":"ADP&","23":"EMOTICON&","24":"VERB&","25":"HASHTAG&","26":"PROPN&","27":"MENTION&","28":"NOUN&","29":"URL&","30":"INTJ&","31":"ADJ&","32":"X&","33":"ADV","34":"INTJ","35":"ADJ","36":"NOUN","37":"URL","38":"PROPN","39":"MENTION","40":"VERB","41":"HASHTAG","42":"ADP","43":"EMOTICON","44":"AUX","45":"EMOJI","46":"CCONJ","47":"EMAIL","48":"","49":"TIME","50":"PART","51":"PERCENT","52":"PRON","53":"ORDINAL","54":"SCONJ","55":"MONEY","56":"PUNCT","57":"DURATION","58":"NUM","59":"DATE","60":"SYM","61":"CARDINAL","62":"X","63":"DET"},{},{"2":{preserve:!0},"3":{preserve:!0},"4":{preserve:!0},"5":{preserve:!0},"6":{preserve:!0},"7":{preserve:!0},"8":{preserve:!0},"9":{preserve:!0},"10":{preserve:!0},"11":{preserve:!0},"12":{preserve:!0},"13":{preserve:!0},"14":{preserve:!0},"15":{preserve:!0},"16":{preserve:!0},"17":{preserve:!0},"18":{preserve:!0},"19":{preserve:!0},"20":{preserve:!0},"21":{preserve:!0},"22":{preserve:!0},"23":{preserve:!0},"24":{preserve:!0},"25":{preserve:!0},"26":{preserve:!0},"27":{preserve:!0},"28":{preserve:!0},"29":{preserve:!0},"30":{preserve:!0},"31":{preserve:!0},"32":{preserve:!0},"33":{preserve:!1},"34":{preserve:!1},"35":{preserve:!1},"36":{preserve:!1},"37":{preserve:!1},"38":{preserve:!1},"39":{preserve:!1},"40":{preserve:!1},"41":{preserve:!1},"42":{preserve:!1},"43":{preserve:!1},"44":{preserve:!1},"45":{preserve:!1},"46":{preserve:!1},"47":{preserve:!1},"48":{preserve:!1},"49":{preserve:!1},"50":{preserve:!1},"51":{preserve:!1},"52":{preserve:!1},"53":{preserve:!1},"54":{preserve:!1},"55":{preserve:!1},"56":{preserve:!1},"57":{preserve:!1},"58":{preserve:!1},"59":{preserve:!1},"60":{preserve:!1},"61":{preserve:!1},"62":{preserve:!1},"63":{preserve:!1}}]});var gXA=GA((Csi,uXA)=>{var dYr=sXA(),lXA=cXA(),pYr=function(){return{machines:lXA=JSON.stringify(lXA),transformers:dYr}};uXA.exports=pYr});var pXA=GA((Isi,dXA)=>{var wg=Object.create(null);wg.hash=Object.create(null),wg.list=["unk","word","number","url","email","mention","hashtag","emoji","emoticon","time","ordinal","currency","punctuation","symbol","tabCRLF","wordRP","alpha","apos","decade","shortForm"],wg.hash.unk=0,wg.hash.word=1,wg.hash.number=2,wg.hash.url=3,wg.hash.email=4,wg.hash.mention=5,wg.hash.hashtag=6,wg.hash.emoji=7,wg.hash.emoticon=8,wg.hash.time=9,wg.hash.ordinal=10,wg.hash.currency=11,wg.hash.punctuation=12,wg.hash.symbol=13,wg.hash.tabCRLF=14,wg.hash.wordRP=15,wg.hash.alpha=16,wg.hash.apos=17,wg.hash.decade=18,wg.hash.shortForm=19,dXA.exports=wg});var fXA=GA((bsi,EXA)=>{var KdA=pXA(),eE=new Array(KdA.list.length);eE.fill(0),eE[0]=17,eE[2]=9,eE[3]=15,eE[4]=15,eE[4]=15,eE[5]=12,eE[6]=15,eE[7]=15,eE[8]=15,eE[9]=15,eE[10]=11,eE[11]=15,eE[12]=13,eE[13]=15,eE[14]=14,eE[18]=9;var Kl=Object.create(null);Kl.ing=16,Kl.ed=16,Kl.ly=3,Kl.able=1,Kl.tish=1,Kl.like=1,Kl.ous=1,Kl.ful=1,Kl.ary=1,Kl.less=1,Kl.ier=1,Kl.est=1,Kl.fy=1,Kl.ky=1,Kl.es=8,Kl.er=8,Kl.or=8,Kl.ity=8,Kl.ion=8,Kl.llah=12,Kl.stan=12,Kl.gton=12,Kl.abad=12,Kl.land=12,Kl.pur=12,Kl.tnam=12;var Gw=Object.create(null);Gw.anti=1,Gw.post=1,Gw.non=1,Gw.cross=8;var EYr=function(A,r,t,i){let o=/^[a-z][a-z\-\–\—\.]*$/,s=/^[A-Z][A-Z\-\–\—\.]*$/,g=/^[A-Z][a-z\-\–\—\.]*$/;var E,p=[],B=r?r.trex.lex:null,m=r?B.length:0;let _=t;var x=Object.create(null);let O=null;for(E=0;E3)throw new Error("feature.normal: offset of "+H+" for "+JSON.stringify(k));return H},x.tokenType=function(k){var P;for(P=0;P{var fYr=/(bb|dd|ff|gg|mm|nn|pp|rr|tt)$/,BXA=/(.+)(sses)$/,hXA=/(.{2,})(ied|ies)$/,QXA=/(.{1})(ied|ies)$/,BYr=/(.+)(us|ss)$/,mXA=/(.+)(s)$/,XdA=/(.*)(eedly|eed)$/,DXA=/([aeiouy].*)(ed|edly|ingly|ing)$/,hYr=/(at|bl|iz)$/,QYr=/(.+[^aeiouy])([y3])$/,mYr=/(ization|ational|fulness|ousness|iveness|tional|biliti|lessli|entli|ation|alism|aliti|ousli|iviti|fulli|enci|anci|abli|izer|ator|alli|bli|ogi|li)$/,ZdA=[{rgx:/ational$/,replacement:"ate"},{rgx:/ization$/,replacement:"ize"},{rgx:/fulness$/,replacement:"ful"},{rgx:/ousness$/,replacement:"ous"},{rgx:/iveness$/,replacement:"ive"},{rgx:/tional$/,replacement:"tion"},{rgx:/biliti$/,replacement:"ble"},{rgx:/lessli$/,replacement:"less"},{rgx:/iviti$/,replacement:"ive"},{rgx:/ousli$/,replacement:"ous"},{rgx:/ation$/,replacement:"ate"},{rgx:/entli$/,replacement:"ent"},{rgx:/(.*)(alism|aliti)$/,replacement:"$1al"},{rgx:/fulli$/,replacement:"ful"},{rgx:/alli$/,replacement:"al"},{rgx:/ator$/,replacement:"ate"},{rgx:/izer$/,replacement:"ize"},{rgx:/enci$/,replacement:"ence"},{rgx:/anci$/,replacement:"ance"},{rgx:/abli$/,replacement:"able"},{rgx:/bli$/,replacement:"ble"},{rgx:/(.*)(l)(ogi)$/,replacement:"$1$2og"},{rgx:/(.*)([cdeghkmnrt])(li)$/,replacement:"$1$2"}],DYr=/(ational|tional|alize|icate|iciti|ative|ical|ness|ful)$/,$dA=[{rgx:/ational$/,replacement:"ate"},{rgx:/tional$/,replacement:"tion"},{rgx:/alize$/,replacement:"al"},{rgx:/(.*)(icate|iciti|ical)$/,replacement:"$1ic"},{rgx:/(ness|ful)$/,replacement:""}],_XA=/(ement|ance|ence|able|ible|ment|ant|ent|ism|ate|iti|ous|ive|ize|al|er|ic)$/,wXA=/(ement|ance|ence|able|ible|ment|ant|ent|ism|ate|iti|ous|ive|ize|ion|al|er|ic)$/,vXA=/(.*)(s|t)(ion)$/,hp=Object.create(null);hp.skis="ski",hp.skies="sky",hp.dying="die",hp.lying="lie",hp.tying="tie",hp.idly="idl",hp.gently="gentl",hp.ugly="ugli",hp.early="earli",hp.only="onli",hp.singly="singl",hp.sky="sky",hp.news="news",hp.atlas="atlas",hp.cosmos="cosmos",hp.bias="bias",hp.andes="andes";var _Yr=/^(inning|outing|canning|herring|proceed|exceed|succeed|earring)$/,wYr=function(A){return A.replace(/^y/,"3").replace(/([aeiou])y/,"$13").replace(/\’s$|\'s$/,"").replace(/s\’$|s\'$/,"").replace(/[\’\']$/,"")},yXA=function(A){return/[^aeiouy][aeiouy][^aeiouywx3]$/.test(A)||/^[aeiouy][^aeiouy]{0,1}$/.test(A)},D2=function(A){var r,t,i=/[aeiouy]+([^aeiouy]{1}.+)/;return(r=i.exec(A))?(r=r[1].slice(1),r=/^(gener|commun|arsen)/.test(A)?A.replace(/^(gener|commun|arsen)(.*)/,"$2"):r,(t=i.exec(r))?{r1:r,r2:t=t[1].slice(1)}:{r1:r,r2:""}):{r1:"",r2:""}},vYr=function(A){var r;return BXA.test(A)?A.replace(BXA,"$1ss"):hXA.test(A)?A.replace(hXA,"$1i"):QXA.test(A)?A.replace(QXA,"$1ie"):BYr.test(A)?A:(r=A.replace(mXA,"$1"),/[aeiuouy](.+)$/.test(r)?A.replace(mXA,"$1"):A)},yYr=function(A){var r,t=D2(A);return XdA.test(A)?XdA.test(t.r1)?A.replace(XdA,"$1ee"):A:DXA.test(A)?(r=A.replace(DXA,"$1"),t=D2(r),hYr.test(r)?r+"e":fYr.test(r)?r.replace(/.$/,""):yXA(r)&&t.r1===""?r+"e":r):A},CYr=function(A){return A.replace(QYr,"$1i")},IYr=function(A){var r,t,i,o=D2(A),s=A.match(mYr);if(s=s===null?"$$$$$":s[1],o.r1.indexOf(s)!==-1){for(r=0,t=ZdA.length;r{var EA=Object.create(null),xYr="acer",HYr="after",bXA="airy",OXA="angry",SYr="archer",MXA="arty",kXA="ashy",FYr="assaulter",RYr="attacker",TYr="backer",xXA="baggy",HXA="balky",SXA="balmy",FXA="bandy",NYr="bargainer",RXA="barmy",TXA="batty",NXA="baulky",PXA="bawdy",PYr="bayer",GXA="beady",YXA="beastly",GYr="beater",UXA="beefy",LXA="beery",jXA="bendy",WXA="good",JXA="big",qXA="bitchy",YYr="biter",VXA="bitty",zXA="bleary",KXA="bloody",XXA="bloodthirsty",ZXA="blowy",$XA="blowsy",AZA="blowzy",eZA="blue",UYr="boner",rZA="bony",tZA="bonny",iZA="boozy",nZA="bosky",aZA="bossy",oZA="botchy",LYr="bother",sZA="bouncy",jYr="bounder",WYr="bower",cZA="brainy",lZA="brashy",uZA="brassy",gZA="brawny",dZA="breathy",pZA="breezy",EZA="briny",JYr="britisher",qYr="broadcaster",VYr="brooder",fZA="broody",BZA="bubbly",hZA="buggy",QZA="bulky",mZA="bumpy",DZA="bunchy",_ZA="burly",wZA="burry",zYr="burster",vZA="bushy",yZA="busy",KYr="buster",CZA="busty",IZA="cagey",XYr="camper",bZA="canny",ZYr="canter",OZA="canty",$Yr="caster",MZA="catchy",kZA="catty",AUr="cer",xZA="chancy",HZA="chary",SZA="chatty",FZA="cheeky",RZA="cheery",TZA="cheesy",NZA="chesty",PZA="chewy",GZA="chilly",YZA="chintzy",UZA="chippy",LZA="choosy",jZA="choppy",WZA="chubby",JZA="chuffy",qZA="chummy",VZA="chunky",zZA="churchy",KZA="clammy",XZA="classy",ZZA="cleanly",$ZA="clerkly",A$A="cloudy",e$A="clubby",r$A="clumsy",t$A="cocky",eUr="coder",i$A="colly",n$A="comely",a$A="comfy",o$A="corny",s$A="cosy",c$A="costly",rUr="costumer",tUr="counterfeiter",l$A="courtly",u$A="cozy",g$A="crabby",iUr="cracker",d$A="crafty",p$A="craggy",E$A="cranky",nUr="crasher",f$A="crawly",B$A="crazy",aUr="creamer",h$A="creamy",Q$A="creepy",m$A="crispy",D$A="crumby",_$A="crumbly",w$A="crummy",v$A="crusty",y$A="curly",oUr="customer",sUr="cute",C$A="daffy",I$A="dainty",b$A="dandy",O$A="deadly",cUr="dealer",lUr="deserter",M$A="dewy",k$A="dicey",uUr="dimer",x$A="dim",H$A="dingy",S$A="dinky",F$A="dippy",R$A="dirty",T$A="dishy",N$A="dizzy",P$A="dodgy",G$A="dopey",Y$A="dotty",U$A="doughy",L$A="doughty",j$A="dowdy",W$A="dowie",gUr="downer",J$A="downy",q$A="dozy",V$A="drab",z$A="drafty",K$A="draggy",X$A="draughty",Z$A="dreamy",$$A="dreary",AAe="dreggy",dUr="dresser",eAe="dressy",kV="dry",rAe="drippy",tAe="drowsy",iAe="dumpy",nAe="dun",aAe="dusky",oAe="dusty",sAe="early",cAe="earthy",lAe="earthly",uAe="easy",pUr="easter",EUr="eastsider",fUr="edger",gAe="edgy",dAe="eerie",pAe="empty",BUr="faker",EAe="fancy",fAe="far",BAe="fat",hAe="fatty",QAe="faulty",mAe="feisty",hUr="feller",DAe="fiddly",_Ae="filmy",wAe="filthy",vAe="finny",yAe="fishy",CAe="fit",IAe="flabby",bAe="flaggy",OAe="flaky",QUr="flasher",MAe="flashy",kAe="flat",xAe="flaunty",HAe="fledgy",SAe="fleecy",FAe="fleshy",RAe="fleshly",TAe="flighty",NAe="flimsy",PAe="flinty",GAe="floaty",YAe="floppy",UAe="flossy",LAe="fluffy",jAe="fluky",WAe="foamy",JAe="foggy",mUr="folder",qAe="folksy",VAe="foolhardy",DUr="foreigner",_Ur="forest",wUr="founder",zAe="foxy",KAe="fratchy",XAe="freaky",ZAe="free",$Ae="frenchy",Aee="friendly",eee="frisky",ree="frizzy",tee="frizzly",iee="frosty",nee="frouzy",aee="frowsy",oee="frowzy",see="fruity",cee="funky",lee="funny",uee="furry",gee="fussy",dee="fusty",pee="fuzzy",Eee="gabby",fee="gamy",Bee="gammy",hee="gassy",Qee="gaudy",mee="gauzy",Dee="gawky",_ee="ghastly",wee="ghostly",vee="giddy",yee="glad",Cee="glassy",Iee="glib",bee="gloomy",Oee="glossy",Mee="glum",kee="godly",vUr="goer",yUr="goner",xee="goodly",Hee="goofy",See="gooey",Fee="goosy",Ree="gory",Tee="gradely",CUr="grader",Nee="grainy",Pee="grassy",Gee="greasy",Yee="greedy",Uee="grim",Lee="grisly",jee="gritty",Wee="grizzly",Jee="groggy",qee="groovy",Vee="grotty",IUr="grounder",bUr="grouper",zee="grouty",Kee="grubby",Xee="grumpy",OUr="guest",Zee="guilty",$ee="gummy",Are="gushy",ere="gusty",rre="gutsy",tre="hairy",MUr="halfway",kUr="halter",ire="hammy",nre="handy",are="happy",ore="hardy",sre="hasty",cre="haughty",lre="hazy",xUr="header",ure="heady",gre="healthy",dre="hearty",pre="heavy",Ere="hefty",fre="hep",Bre="herby",HUr="hind",hre="hip",Qre="hippy",mre="hoary",Dre="holy",_re="homely",SUr="homer",wre="homey",vre="horny",yre="horsy",Cre="hot",Ire="humpy",FUr="hunger",bre="hungry",Ore="husky",Mre="icy",kre="inky",RUr="insider",TUr="interest",xre="jaggy",Hre="jammy",Sre="jaunty",Fre="jazzy",Rre="jerky",NUr="jointer",Tre="jolly",Nre="juicy",Pre="jumpy",Gre="kindly",Yre="kinky",Ure="knotty",Lre="knurly",jre="kooky",Wre="lacy",Jre="lairy",qre="laky",PUr="lander",Vre="lanky",zre="lathy",GUr="layer",Kre="lazy",Xre="leafy",Zre="leaky",$re="leary",YUr="leer",Ate="leery",ete="leggy",rte="lengthy",UUr="ler",LUr="leveler",tte="limy",ite="lippy",jUr="liter",nte="lively",WUr="liver",JUr="loather",ate="lofty",ote="logy",ste="lonely",qUr="loner",cte="loony",lte="loopy",ute="lordly",gte="lousy",dte="lovely",VUr="lowlander",pte="lowly",Ete="lucky",fte="lumpy",Bte="luny",hte="lusty",Qte="mad",zUr="mainer",KUr="maligner",mte="malty",Dte="mangy",_te="manky",wte="manly",XUr="mariner",vte="marshy",yte="massy",ZUr="matter",Cte="maungy",Ite="mazy",bte="mealy",Ote="measly",Mte="meaty",$Ur="meeter",kte="merry",xte="messy",Hte="miffy",Ste="mighty",ALr="milcher",eLr="milker",Fte="milky",Rte="mingy",rLr="minter",Tte="mirky",tLr="miser",Nte="misty",iLr="mocker",nLr="modeler",aLr="modest",Pte="moldy",Gte="moody",Yte="moony",Ute="mothy",Lte="mouldy",jte="mousy",Wte="mouthy",Jte="mucky",qte="muddy",Vte="muggy",oLr="multiplexer",zte="murky",Kte="mushy",Xte="musky",sLr="muster",Zte="musty",$te="muzzy",Aie="nappy",eie="nasty",rie="natty",tie="naughty",iie="needy",Hce="nervy",nie="newsy",aie="nifty",oie="nippy",sie="nitty",cie="noisy",cLr="northeasterner",lLr="norther",uLr="northerner",lie="nosy",gLr="number",uie="nutty",dLr="offer",gie="oily",pLr="oliver",die="oozy",ELr="opener",fLr="outsider",BLr="overcomer",hLr="overnighter",QLr="owner",pie="pally",Eie="palmy",fie="paltry",Bie="pappy",hie="parky",mLr="passer",DLr="paster",Qie="pasty",mie="patchy",_Lr="pater",Die="pawky",_ie="peachy",wLr="pearler",wie="pearly",vLr="pedaler",vie="peppy",yie="perky",Cie="pesky",yLr="peter",Iie="petty",bie="phony",Oie="picky",Mie="piggy",kie="piny",xie="pitchy",Hie="pithy",CLr="planer",Sie="plashy",Fie="platy",ILr="player",Rie="plucky",bLr="plumber",Tie="plumy",Nie="plummy",Pie="podgy",Gie="poky",OLr="polisher",Yie="porky",MLr="porter",Uie="portly",kLr="poster",Lie="potty",jie="preachy",xLr="presenter",HLr="pretender",Wie="pretty",Jie="pricy",qie="prickly",Vie="priestly",SLr="primer",zie="prim",Kie="princely",FLr="printer",Xie="prissy",RLr="privateer",Zie="privy",TLr="prompter",$ie="prosy",Ane="pudgy",NLr="puffer",ene="puffy",rne="pulpy",tne="punchy",ine="puny",nne="pushy",ane="pussy",one="quaggy",sne="quaky",cne="queasy",lne="queenly",une="racy",gne="rainy",dne="randy",pne="rangy",PLr="ranker",Ene="ratty",fne="rattly",Bne="raunchy",hne="ready",GLr="recorder",Qne="red",mne="reedy",YLr="renter",ULr="retailer",Dne="rimy",_ne="risky",wne="ritzy",LLr="roaster",vne="rocky",yne="roily",Cne="rooky",Ine="roomy",bne="ropy",One="rosy",Mne="rowdy",kne="ruddy",xne="runny",jLr="rusher",Hne="rushy",Sne="rusty",Fne="rutty",Rne="sad",WLr="salter",Tne="salty",JLr="sampler",Nne="sandy",Pne="sappy",Gne="sassy",Yne="saucy",Une="savvy",Lne="scabby",jne="scaly",Wne="scanty",Jne="scary",qne="scraggy",Vne="scraggly",qLr="scraper",zne="scrappy",Kne="scrawny",Xne="screwy",Zne="scrubby",$ne="scruffy",Aae="scungy",eae="scurvy",rae="seamy",VLr="seconder",tae="seedy",iae="seemly",zLr="serer",nae="sexy",aae="shabby",oae="shady",sae="shaggy",cae="shaky",lae="shapely",xV="shy",uae="shifty",gae="shiny",dae="shirty",pae="shoddy",Eae="showy",fae="shrubby",Bae="sickly",hae="sightly",KLr="signaler",XLr="signer",Qae="silky",mae="silly",Dae="sketchy",ZLr="skewer",_ae="skimpy",wae="skinny",vae="slaphappy",yae="slaty",$Lr="slaver",Cae="sleazy",Iae="sleepy",HV="sly",bae="slimy",Oae="slim",Mae="slimsy",kae="slinky",xae="slippy",Hae="sloppy",Sae="smarmy",Fae="smelly",Rae="smoky",Tae="smug",Nae="snaky",Pae="snappy",Gae="snatchy",Yae="snazzy",Ajr="sneaker",Uae="sniffy",Lae="snooty",jae="snotty",Wae="snowy",ejr="snuffer",Jae="snuffy",qae="snug",Vae="soapy",zae="soggy",rjr="solder",Kae="sonsy",Xae="sooty",Zae="soppy",$ae="sorry",Aoe="soupy",tjr="souther",ijr="southerner",eoe="speedy",roe="spicy",toe="spiffy",ioe="spiky",noe="spindly",aoe="spiny",ooe="splashy",soe="spongy",coe="spooky",loe="spoony",uoe="sporty",goe="spotty",njr="spreader",doe="spry",poe="sprightly",ajr="springer",Eoe="springy",foe="squashy",Boe="squat",hoe="squatty",Qoe="squiffy",moe="stagy",Doe="stalky",ojr="stapler",_oe="starchy",sjr="starer",cjr="starest",woe="starry",voe="stately",yoe="steady",Coe="stealthy",Ioe="steamy",boe="stingy",ljr="striper",ujr="stocker",Ooe="stocky",Moe="stodgy",koe="stony",xoe="stormy",Hoe="streaky",Soe="streamy",gjr="stretcher",Foe="stretchy",Roe="stringy",Toe="stripy",Noe="strong",Poe="stroppy",Goe="stuffy",Yoe="stumpy",Uoe="sturdy",djr="submariner",Loe="sulky",joe="sultry",Woe="sunny",Joe="surly",pjr="swagger",qoe="swanky",Voe="swarthy",zoe="sweaty",Koe="tacky",Xoe="talky",Zoe="tangy",$oe="tan",Ase="tardy",ese="tasty",rse="tatty",tse="tawdry",ise="techy",Ejr="teenager",nse="teeny",fjr="teetotaler",Bjr="tester",ase="testy",ose="tetchy",sse="thin",cse="thirsty",lse="thorny",use="thready",gse="thrifty",dse="throaty",pse="tidy",Ese="timely",fse="tiny",Bse="tinny",hse="tipsy",Qse="tony",mse="toothy",hjr="toper",Dse="touchy",Qjr="trader",_se="trashy",wse="trendy",vse="tricky",yse="tricksy",mjr="trimer",Cse="trim",Ise="true",bse="trusty",Ose="tubby",Mse="turfy",kse="tweedy",xse="twiggy",Hse="ugly",Sse="unfriendly",Fse="ungainly",Rse="ungodly",Tse="unhappy",Nse="unhealthy",Pse="unholy",Gse="unruly",Yse="untidy",Use="vasty",Djr="vest",Lse="viewy",jse="wacky",Wse="wan",Jse="wary",qse="washy",_jr="waster",Vse="wavy",zse="waxy",Kse="weakly",Xse="wealthy",Zse="weary",$se="webby",Ace="weedy",ece="weeny",rce="weensy",tce="weepy",ice="weighty",wjr="welsher",nce="wet",ace="whacky",oce="whimsy",vjr="wholesaler",sce="wieldy",cce="wily",lce="windy",uce="winy",gce="wintery",dce="wintry",pce="wiry",Ece="wispy",fce="witty",Bce="wonky",hce="woody",Qce="woodsy",mce="woolly",Dce="woozy",_ce="wordy",wce="worldly",vce="wormy",yce="bad",Cce="worthy",SV="wry",Ice="yare",bce="yeasty",Oce="young",Mce="yummy",kce="zany",xce="zippy";EA.acer=xYr,EA.after=HYr,EA.airier=bXA,EA.airiest=bXA,EA.angrier=OXA,EA.angriest=OXA,EA.archer=SYr,EA.artier=MXA,EA.artiest=MXA,EA.ashier=kXA,EA.ashiest=kXA,EA.assaulter=FYr,EA.attacker=RYr,EA.backer=TYr,EA.baggier=xXA,EA.baggiest=xXA,EA.balkier=HXA,EA.balkiest=HXA,EA.balmier=SXA,EA.balmiest=SXA,EA.bandier=FXA,EA.bandiest=FXA,EA.bargainer=NYr,EA.barmier=RXA,EA.barmiest=RXA,EA.battier=TXA,EA.battiest=TXA,EA.baulkier=NXA,EA.baulkiest=NXA,EA.bawdier=PXA,EA.bawdiest=PXA,EA.bayer=PYr,EA.beadier=GXA,EA.beadiest=GXA,EA.beastlier=YXA,EA.beastliest=YXA,EA.beater=GYr,EA.beefier=UXA,EA.beefiest=UXA,EA.beerier=LXA,EA.beeriest=LXA,EA.bendier=jXA,EA.bendiest=jXA,EA.best=WXA,EA.better=WXA,EA.bigger=JXA,EA.biggest=JXA,EA.bitchier=qXA,EA.bitchiest=qXA,EA.biter=YYr,EA.bittier=VXA,EA.bittiest=VXA,EA.blearier=zXA,EA.bleariest=zXA,EA.bloodier=KXA,EA.bloodiest=KXA,EA.bloodthirstier=XXA,EA.bloodthirstiest=XXA,EA.blowier=ZXA,EA.blowiest=ZXA,EA.blowsier=$XA,EA.blowsiest=$XA,EA.blowzier=AZA,EA.blowziest=AZA,EA.bluer=eZA,EA.bluest=eZA,EA.boner=UYr,EA.bonier=rZA,EA.boniest=rZA,EA.bonnier=tZA,EA.bonniest=tZA,EA.boozier=iZA,EA.booziest=iZA,EA.boskier=nZA,EA.boskiest=nZA,EA.bossier=aZA,EA.bossiest=aZA,EA.botchier=oZA,EA.botchiest=oZA,EA.bother=LYr,EA.bouncier=sZA,EA.bounciest=sZA,EA.bounder=jYr,EA.bower=WYr,EA.brainier=cZA,EA.brainiest=cZA,EA.brashier=lZA,EA.brashiest=lZA,EA.brassier=uZA,EA.brassiest=uZA,EA.brawnier=gZA,EA.brawniest=gZA,EA.breathier=dZA,EA.breathiest=dZA,EA.breezier=pZA,EA.breeziest=pZA,EA.brinier=EZA,EA.briniest=EZA,EA.britisher=JYr,EA.broadcaster=qYr,EA.brooder=VYr,EA.broodier=fZA,EA.broodiest=fZA,EA.bubblier=BZA,EA.bubbliest=BZA,EA.buggier=hZA,EA.buggiest=hZA,EA.bulkier=QZA,EA.bulkiest=QZA,EA.bumpier=mZA,EA.bumpiest=mZA,EA.bunchier=DZA,EA.bunchiest=DZA,EA.burlier=_ZA,EA.burliest=_ZA,EA.burrier=wZA,EA.burriest=wZA,EA.burster=zYr,EA.bushier=vZA,EA.bushiest=vZA,EA.busier=yZA,EA.busiest=yZA,EA.buster=KYr,EA.bustier=CZA,EA.bustiest=CZA,EA.cagier=IZA,EA.cagiest=IZA,EA.camper=XYr,EA.cannier=bZA,EA.canniest=bZA,EA.canter=ZYr,EA.cantier=OZA,EA.cantiest=OZA,EA.caster=$Yr,EA.catchier=MZA,EA.catchiest=MZA,EA.cattier=kZA,EA.cattiest=kZA,EA.cer=AUr,EA.chancier=xZA,EA.chanciest=xZA,EA.charier=HZA,EA.chariest=HZA,EA.chattier=SZA,EA.chattiest=SZA,EA.cheekier=FZA,EA.cheekiest=FZA,EA.cheerier=RZA,EA.cheeriest=RZA,EA.cheesier=TZA,EA.cheesiest=TZA,EA.chestier=NZA,EA.chestiest=NZA,EA.chewier=PZA,EA.chewiest=PZA,EA.chillier=GZA,EA.chilliest=GZA,EA.chintzier=YZA,EA.chintziest=YZA,EA.chippier=UZA,EA.chippiest=UZA,EA.choosier=LZA,EA.choosiest=LZA,EA.choppier=jZA,EA.choppiest=jZA,EA.chubbier=WZA,EA.chubbiest=WZA,EA.chuffier=JZA,EA.chuffiest=JZA,EA.chummier=qZA,EA.chummiest=qZA,EA.chunkier=VZA,EA.chunkiest=VZA,EA.churchier=zZA,EA.churchiest=zZA,EA.clammier=KZA,EA.clammiest=KZA,EA.classier=XZA,EA.classiest=XZA,EA.cleanlier=ZZA,EA.cleanliest=ZZA,EA.clerklier=$ZA,EA.clerkliest=$ZA,EA.cloudier=A$A,EA.cloudiest=A$A,EA.clubbier=e$A,EA.clubbiest=e$A,EA.clumsier=r$A,EA.clumsiest=r$A,EA.cockier=t$A,EA.cockiest=t$A,EA.coder=eUr,EA.collier=i$A,EA.colliest=i$A,EA.comelier=n$A,EA.comeliest=n$A,EA.comfier=a$A,EA.comfiest=a$A,EA.cornier=o$A,EA.corniest=o$A,EA.cosier=s$A,EA.cosiest=s$A,EA.costlier=c$A,EA.costliest=c$A,EA.costumer=rUr,EA.counterfeiter=tUr,EA.courtlier=l$A,EA.courtliest=l$A,EA.cozier=u$A,EA.coziest=u$A,EA.crabbier=g$A,EA.crabbiest=g$A,EA.cracker=iUr,EA.craftier=d$A,EA.craftiest=d$A,EA.craggier=p$A,EA.craggiest=p$A,EA.crankier=E$A,EA.crankiest=E$A,EA.crasher=nUr,EA.crawlier=f$A,EA.crawliest=f$A,EA.crazier=B$A,EA.craziest=B$A,EA.creamer=aUr,EA.creamier=h$A,EA.creamiest=h$A,EA.creepier=Q$A,EA.creepiest=Q$A,EA.crispier=m$A,EA.crispiest=m$A,EA.crumbier=D$A,EA.crumbiest=D$A,EA.crumblier=_$A,EA.crumbliest=_$A,EA.crummier=w$A,EA.crummiest=w$A,EA.crustier=v$A,EA.crustiest=v$A,EA.curlier=y$A,EA.curliest=y$A,EA.customer=oUr,EA.cuter=sUr,EA.daffier=C$A,EA.daffiest=C$A,EA.daintier=I$A,EA.daintiest=I$A,EA.dandier=b$A,EA.dandiest=b$A,EA.deadlier=O$A,EA.deadliest=O$A,EA.dealer=cUr,EA.deserter=lUr,EA.dewier=M$A,EA.dewiest=M$A,EA.dicier=k$A,EA.diciest=k$A,EA.dimer=uUr,EA.dimmer=x$A,EA.dimmest=x$A,EA.dingier=H$A,EA.dingiest=H$A,EA.dinkier=S$A,EA.dinkiest=S$A,EA.dippier=F$A,EA.dippiest=F$A,EA.dirtier=R$A,EA.dirtiest=R$A,EA.dishier=T$A,EA.dishiest=T$A,EA.dizzier=N$A,EA.dizziest=N$A,EA.dodgier=P$A,EA.dodgiest=P$A,EA.dopier=G$A,EA.dopiest=G$A,EA.dottier=Y$A,EA.dottiest=Y$A,EA.doughier=U$A,EA.doughiest=U$A,EA.doughtier=L$A,EA.doughtiest=L$A,EA.dowdier=j$A,EA.dowdiest=j$A,EA.dowier=W$A,EA.dowiest=W$A,EA.downer=gUr,EA.downier=J$A,EA.downiest=J$A,EA.dozier=q$A,EA.doziest=q$A,EA.drabber=V$A,EA.drabbest=V$A,EA.draftier=z$A,EA.draftiest=z$A,EA.draggier=K$A,EA.draggiest=K$A,EA.draughtier=X$A,EA.draughtiest=X$A,EA.dreamier=Z$A,EA.dreamiest=Z$A,EA.drearier=$$A,EA.dreariest=$$A,EA.dreggier=AAe,EA.dreggiest=AAe,EA.dresser=dUr,EA.dressier=eAe,EA.dressiest=eAe,EA.drier=kV,EA.driest=kV,EA.drippier=rAe,EA.drippiest=rAe,EA.drowsier=tAe,EA.drowsiest=tAe,EA.dryer=kV,EA.dryest=kV,EA.dumpier=iAe,EA.dumpiest=iAe,EA.dunner=nAe,EA.dunnest=nAe,EA.duskier=aAe,EA.duskiest=aAe,EA.dustier=oAe,EA.dustiest=oAe,EA.earlier=sAe,EA.earliest=sAe,EA.earthier=cAe,EA.earthiest=cAe,EA.earthlier=lAe,EA.earthliest=lAe,EA.easier=uAe,EA.easiest=uAe,EA.easter=pUr,EA.eastsider=EUr,EA.edger=fUr,EA.edgier=gAe,EA.edgiest=gAe,EA.eerier=dAe,EA.eeriest=dAe,EA.emptier=pAe,EA.emptiest=pAe,EA.faker=BUr,EA.fancier=EAe,EA.fanciest=EAe,EA.furthest=fAe,EA.farthest=fAe,EA.fatter=BAe,EA.fattest=BAe,EA.fattier=hAe,EA.fattiest=hAe,EA.faultier=QAe,EA.faultiest=QAe,EA.feistier=mAe,EA.feistiest=mAe,EA.feller=hUr,EA.fiddlier=DAe,EA.fiddliest=DAe,EA.filmier=_Ae,EA.filmiest=_Ae,EA.filthier=wAe,EA.filthiest=wAe,EA.finnier=vAe,EA.finniest=vAe,EA.fishier=yAe,EA.fishiest=yAe,EA.fitter=CAe,EA.fittest=CAe,EA.flabbier=IAe,EA.flabbiest=IAe,EA.flaggier=bAe,EA.flaggiest=bAe,EA.flakier=OAe,EA.flakiest=OAe,EA.flasher=QUr,EA.flashier=MAe,EA.flashiest=MAe,EA.flatter=kAe,EA.flattest=kAe,EA.flauntier=xAe,EA.flauntiest=xAe,EA.fledgier=HAe,EA.fledgiest=HAe,EA.fleecier=SAe,EA.fleeciest=SAe,EA.fleshier=FAe,EA.fleshiest=FAe,EA.fleshlier=RAe,EA.fleshliest=RAe,EA.flightier=TAe,EA.flightiest=TAe,EA.flimsier=NAe,EA.flimsiest=NAe,EA.flintier=PAe,EA.flintiest=PAe,EA.floatier=GAe,EA.floatiest=GAe,EA.floppier=YAe,EA.floppiest=YAe,EA.flossier=UAe,EA.flossiest=UAe,EA.fluffier=LAe,EA.fluffiest=LAe,EA.flukier=jAe,EA.flukiest=jAe,EA.foamier=WAe,EA.foamiest=WAe,EA.foggier=JAe,EA.foggiest=JAe,EA.folder=mUr,EA.folksier=qAe,EA.folksiest=qAe,EA.foolhardier=VAe,EA.foolhardiest=VAe,EA.foreigner=DUr,EA.forest=_Ur,EA.founder=wUr,EA.foxier=zAe,EA.foxiest=zAe,EA.fratchier=KAe,EA.fratchiest=KAe,EA.freakier=XAe,EA.freakiest=XAe,EA.freer=ZAe,EA.freest=ZAe,EA.frenchier=$Ae,EA.frenchiest=$Ae,EA.friendlier=Aee,EA.friendliest=Aee,EA.friskier=eee,EA.friskiest=eee,EA.frizzier=ree,EA.frizziest=ree,EA.frizzlier=tee,EA.frizzliest=tee,EA.frostier=iee,EA.frostiest=iee,EA.frouzier=nee,EA.frouziest=nee,EA.frowsier=aee,EA.frowsiest=aee,EA.frowzier=oee,EA.frowziest=oee,EA.fruitier=see,EA.fruitiest=see,EA.funkier=cee,EA.funkiest=cee,EA.funnier=lee,EA.funniest=lee,EA.furrier=uee,EA.furriest=uee,EA.fussier=gee,EA.fussiest=gee,EA.fustier=dee,EA.fustiest=dee,EA.fuzzier=pee,EA.fuzziest=pee,EA.gabbier=Eee,EA.gabbiest=Eee,EA.gamier=fee,EA.gamiest=fee,EA.gammier=Bee,EA.gammiest=Bee,EA.gassier=hee,EA.gassiest=hee,EA.gaudier=Qee,EA.gaudiest=Qee,EA.gauzier=mee,EA.gauziest=mee,EA.gawkier=Dee,EA.gawkiest=Dee,EA.ghastlier=_ee,EA.ghastliest=_ee,EA.ghostlier=wee,EA.ghostliest=wee,EA.giddier=vee,EA.giddiest=vee,EA.gladder=yee,EA.gladdest=yee,EA.glassier=Cee,EA.glassiest=Cee,EA.glibber=Iee,EA.glibbest=Iee,EA.gloomier=bee,EA.gloomiest=bee,EA.glossier=Oee,EA.glossiest=Oee,EA.glummer=Mee,EA.glummest=Mee,EA.godlier=kee,EA.godliest=kee,EA.goer=vUr,EA.goner=yUr,EA.goodlier=xee,EA.goodliest=xee,EA.goofier=Hee,EA.goofiest=Hee,EA.gooier=See,EA.gooiest=See,EA.goosier=Fee,EA.goosiest=Fee,EA.gorier=Ree,EA.goriest=Ree,EA.gradelier=Tee,EA.gradeliest=Tee,EA.grader=CUr,EA.grainier=Nee,EA.grainiest=Nee,EA.grassier=Pee,EA.grassiest=Pee,EA.greasier=Gee,EA.greasiest=Gee,EA.greedier=Yee,EA.greediest=Yee,EA.grimmer=Uee,EA.grimmest=Uee,EA.grislier=Lee,EA.grisliest=Lee,EA.grittier=jee,EA.grittiest=jee,EA.grizzlier=Wee,EA.grizzliest=Wee,EA.groggier=Jee,EA.groggiest=Jee,EA.groovier=qee,EA.grooviest=qee,EA.grottier=Vee,EA.grottiest=Vee,EA.grounder=IUr,EA.grouper=bUr,EA.groutier=zee,EA.groutiest=zee,EA.grubbier=Kee,EA.grubbiest=Kee,EA.grumpier=Xee,EA.grumpiest=Xee,EA.guest=OUr,EA.guiltier=Zee,EA.guiltiest=Zee,EA.gummier=$ee,EA.gummiest=$ee,EA.gushier=Are,EA.gushiest=Are,EA.gustier=ere,EA.gustiest=ere,EA.gutsier=rre,EA.gutsiest=rre,EA.hairier=tre,EA.hairiest=tre,EA.halfways=MUr,EA.halter=kUr,EA.hammier=ire,EA.hammiest=ire,EA.handier=nre,EA.handiest=nre,EA.happier=are,EA.happiest=are,EA.hardier=ore,EA.hardiest=ore,EA.hastier=sre,EA.hastiest=sre,EA.haughtier=cre,EA.haughtiest=cre,EA.hazier=lre,EA.haziest=lre,EA.header=xUr,EA.headier=ure,EA.headiest=ure,EA.healthier=gre,EA.healthiest=gre,EA.heartier=dre,EA.heartiest=dre,EA.heavier=pre,EA.heaviest=pre,EA.heftier=Ere,EA.heftiest=Ere,EA.hepper=fre,EA.heppest=fre,EA.herbier=Bre,EA.herbiest=Bre,EA.hinder=HUr,EA.hipper=hre,EA.hippest=hre,EA.hippier=Qre,EA.hippiest=Qre,EA.hoarier=mre,EA.hoariest=mre,EA.holier=Dre,EA.holiest=Dre,EA.homelier=_re,EA.homeliest=_re,EA.homer=SUr,EA.homier=wre,EA.homiest=wre,EA.hornier=vre,EA.horniest=vre,EA.horsier=yre,EA.horsiest=yre,EA.hotter=Cre,EA.hottest=Cre,EA.humpier=Ire,EA.humpiest=Ire,EA.hunger=FUr,EA.hungrier=bre,EA.hungriest=bre,EA.huskier=Ore,EA.huskiest=Ore,EA.icier=Mre,EA.iciest=Mre,EA.inkier=kre,EA.inkiest=kre,EA.insider=RUr,EA.interest=TUr,EA.jaggier=xre,EA.jaggiest=xre,EA.jammier=Hre,EA.jammiest=Hre,EA.jauntier=Sre,EA.jauntiest=Sre,EA.jazzier=Fre,EA.jazziest=Fre,EA.jerkier=Rre,EA.jerkiest=Rre,EA.jointer=NUr,EA.jollier=Tre,EA.jolliest=Tre,EA.juicier=Nre,EA.juiciest=Nre,EA.jumpier=Pre,EA.jumpiest=Pre,EA.kindlier=Gre,EA.kindliest=Gre,EA.kinkier=Yre,EA.kinkiest=Yre,EA.knottier=Ure,EA.knottiest=Ure,EA.knurlier=Lre,EA.knurliest=Lre,EA.kookier=jre,EA.kookiest=jre,EA.lacier=Wre,EA.laciest=Wre,EA.lairier=Jre,EA.lairiest=Jre,EA.lakier=qre,EA.lakiest=qre,EA.lander=PUr,EA.lankier=Vre,EA.lankiest=Vre,EA.lathier=zre,EA.lathiest=zre,EA.layer=GUr,EA.lazier=Kre,EA.laziest=Kre,EA.leafier=Xre,EA.leafiest=Xre,EA.leakier=Zre,EA.leakiest=Zre,EA.learier=$re,EA.leariest=$re,EA.leer=YUr,EA.leerier=Ate,EA.leeriest=Ate,EA.leggier=ete,EA.leggiest=ete,EA.lengthier=rte,EA.lengthiest=rte,EA.ler=UUr,EA.leveler=LUr,EA.limier=tte,EA.limiest=tte,EA.lippier=ite,EA.lippiest=ite,EA.liter=jUr,EA.livelier=nte,EA.liveliest=nte,EA.liver=WUr,EA.loather=JUr,EA.loftier=ate,EA.loftiest=ate,EA.logier=ote,EA.logiest=ote,EA.lonelier=ste,EA.loneliest=ste,EA.loner=qUr,EA.loonier=cte,EA.looniest=cte,EA.loopier=lte,EA.loopiest=lte,EA.lordlier=ute,EA.lordliest=ute,EA.lousier=gte,EA.lousiest=gte,EA.lovelier=dte,EA.loveliest=dte,EA.lowlander=VUr,EA.lowlier=pte,EA.lowliest=pte,EA.luckier=Ete,EA.luckiest=Ete,EA.lumpier=fte,EA.lumpiest=fte,EA.lunier=Bte,EA.luniest=Bte,EA.lustier=hte,EA.lustiest=hte,EA.madder=Qte,EA.maddest=Qte,EA.mainer=zUr,EA.maligner=KUr,EA.maltier=mte,EA.maltiest=mte,EA.mangier=Dte,EA.mangiest=Dte,EA.mankier=_te,EA.mankiest=_te,EA.manlier=wte,EA.manliest=wte,EA.mariner=XUr,EA.marshier=vte,EA.marshiest=vte,EA.massier=yte,EA.massiest=yte,EA.matter=ZUr,EA.maungier=Cte,EA.maungiest=Cte,EA.mazier=Ite,EA.maziest=Ite,EA.mealier=bte,EA.mealiest=bte,EA.measlier=Ote,EA.measliest=Ote,EA.meatier=Mte,EA.meatiest=Mte,EA.meeter=$Ur,EA.merrier=kte,EA.merriest=kte,EA.messier=xte,EA.messiest=xte,EA.miffier=Hte,EA.miffiest=Hte,EA.mightier=Ste,EA.mightiest=Ste,EA.milcher=ALr,EA.milker=eLr,EA.milkier=Fte,EA.milkiest=Fte,EA.mingier=Rte,EA.mingiest=Rte,EA.minter=rLr,EA.mirkier=Tte,EA.mirkiest=Tte,EA.miser=tLr,EA.mistier=Nte,EA.mistiest=Nte,EA.mocker=iLr,EA.modeler=nLr,EA.modest=aLr,EA.moldier=Pte,EA.moldiest=Pte,EA.moodier=Gte,EA.moodiest=Gte,EA.moonier=Yte,EA.mooniest=Yte,EA.mothier=Ute,EA.mothiest=Ute,EA.mouldier=Lte,EA.mouldiest=Lte,EA.mousier=jte,EA.mousiest=jte,EA.mouthier=Wte,EA.mouthiest=Wte,EA.muckier=Jte,EA.muckiest=Jte,EA.muddier=qte,EA.muddiest=qte,EA.muggier=Vte,EA.muggiest=Vte,EA.multiplexer=oLr,EA.murkier=zte,EA.murkiest=zte,EA.mushier=Kte,EA.mushiest=Kte,EA.muskier=Xte,EA.muskiest=Xte,EA.muster=sLr,EA.mustier=Zte,EA.mustiest=Zte,EA.muzzier=$te,EA.muzziest=$te,EA.nappier=Aie,EA.nappiest=Aie,EA.nastier=eie,EA.nastiest=eie,EA.nattier=rie,EA.nattiest=rie,EA.naughtier=tie,EA.naughtiest=tie,EA.needier=iie,EA.neediest=iie,EA.nervier=Hce;EA.nerviest=Hce,EA.newsier=nie,EA.newsiest=nie,EA.niftier=aie,EA.niftiest=aie,EA.nippier=oie,EA.nippiest=oie,EA.nittier=sie,EA.nittiest=sie,EA.noisier=cie,EA.noisiest=cie,EA.northeasterner=cLr,EA.norther=lLr,EA.northerner=uLr,EA.nosier=lie,EA.nosiest=lie,EA.number=gLr,EA.nuttier=uie,EA.nuttiest=uie,EA.offer=dLr,EA.oilier=gie,EA.oiliest=gie,EA.oliver=pLr,EA.oozier=die,EA.ooziest=die,EA.opener=ELr,EA.outsider=fLr,EA.overcomer=BLr,EA.overnighter=hLr,EA.owner=QLr,EA.pallier=pie,EA.palliest=pie,EA.palmier=Eie,EA.palmiest=Eie,EA.paltrier=fie,EA.paltriest=fie,EA.pappier=Bie,EA.pappiest=Bie,EA.parkier=hie,EA.parkiest=hie,EA.passer=mLr,EA.paster=DLr,EA.pastier=Qie,EA.pastiest=Qie,EA.patchier=mie,EA.patchiest=mie,EA.pater=_Lr,EA.pawkier=Die,EA.pawkiest=Die,EA.peachier=_ie,EA.peachiest=_ie,EA.pearler=wLr,EA.pearlier=wie,EA.pearliest=wie,EA.pedaler=vLr,EA.peppier=vie,EA.peppiest=vie,EA.perkier=yie,EA.perkiest=yie,EA.peskier=Cie,EA.peskiest=Cie,EA.peter=yLr,EA.pettier=Iie,EA.pettiest=Iie,EA.phonier=bie,EA.phoniest=bie,EA.pickier=Oie,EA.pickiest=Oie,EA.piggier=Mie,EA.piggiest=Mie,EA.pinier=kie,EA.piniest=kie,EA.pitchier=xie,EA.pitchiest=xie,EA.pithier=Hie,EA.pithiest=Hie,EA.planer=CLr,EA.plashier=Sie,EA.plashiest=Sie,EA.platier=Fie,EA.platiest=Fie,EA.player=ILr,EA.pluckier=Rie,EA.pluckiest=Rie,EA.plumber=bLr,EA.plumier=Tie,EA.plumiest=Tie,EA.plummier=Nie,EA.plummiest=Nie,EA.podgier=Pie,EA.podgiest=Pie,EA.pokier=Gie,EA.pokiest=Gie,EA.polisher=OLr,EA.porkier=Yie,EA.porkiest=Yie,EA.porter=MLr,EA.portlier=Uie,EA.portliest=Uie,EA.poster=kLr,EA.pottier=Lie,EA.pottiest=Lie,EA.preachier=jie,EA.preachiest=jie,EA.presenter=xLr,EA.pretender=HLr,EA.prettier=Wie,EA.prettiest=Wie,EA.pricier=Jie,EA.priciest=Jie,EA.pricklier=qie,EA.prickliest=qie,EA.priestlier=Vie,EA.priestliest=Vie,EA.primer=SLr,EA.primmer=zie,EA.primmest=zie,EA.princelier=Kie,EA.princeliest=Kie,EA.printer=FLr,EA.prissier=Xie,EA.prissiest=Xie,EA.privateer=RLr,EA.privier=Zie,EA.priviest=Zie,EA.prompter=TLr,EA.prosier=$ie,EA.prosiest=$ie,EA.pudgier=Ane,EA.pudgiest=Ane,EA.puffer=NLr,EA.puffier=ene,EA.puffiest=ene,EA.pulpier=rne,EA.pulpiest=rne,EA.punchier=tne,EA.punchiest=tne,EA.punier=ine,EA.puniest=ine,EA.pushier=nne,EA.pushiest=nne,EA.pussier=ane,EA.pussiest=ane,EA.quaggier=one,EA.quaggiest=one,EA.quakier=sne,EA.quakiest=sne,EA.queasier=cne,EA.queasiest=cne,EA.queenlier=lne,EA.queenliest=lne,EA.racier=une,EA.raciest=une,EA.rainier=gne,EA.rainiest=gne,EA.randier=dne,EA.randiest=dne,EA.rangier=pne,EA.rangiest=pne,EA.ranker=PLr,EA.rattier=Ene,EA.rattiest=Ene,EA.rattlier=fne,EA.rattliest=fne,EA.raunchier=Bne,EA.raunchiest=Bne,EA.readier=hne,EA.readiest=hne,EA.recorder=GLr,EA.redder=Qne,EA.reddest=Qne,EA.reedier=mne,EA.reediest=mne,EA.renter=YLr,EA.retailer=ULr,EA.rimier=Dne,EA.rimiest=Dne,EA.riskier=_ne,EA.riskiest=_ne,EA.ritzier=wne,EA.ritziest=wne,EA.roaster=LLr,EA.rockier=vne,EA.rockiest=vne,EA.roilier=yne,EA.roiliest=yne,EA.rookier=Cne,EA.rookiest=Cne,EA.roomier=Ine,EA.roomiest=Ine,EA.ropier=bne,EA.ropiest=bne,EA.rosier=One,EA.rosiest=One,EA.rowdier=Mne,EA.rowdiest=Mne,EA.ruddier=kne,EA.ruddiest=kne,EA.runnier=xne,EA.runniest=xne,EA.rusher=jLr,EA.rushier=Hne,EA.rushiest=Hne,EA.rustier=Sne,EA.rustiest=Sne,EA.ruttier=Fne,EA.ruttiest=Fne,EA.sadder=Rne,EA.saddest=Rne,EA.salter=WLr,EA.saltier=Tne,EA.saltiest=Tne,EA.sampler=JLr,EA.sandier=Nne,EA.sandiest=Nne,EA.sappier=Pne,EA.sappiest=Pne,EA.sassier=Gne,EA.sassiest=Gne,EA.saucier=Yne,EA.sauciest=Yne,EA.savvier=Une,EA.savviest=Une,EA.scabbier=Lne,EA.scabbiest=Lne,EA.scalier=jne,EA.scaliest=jne,EA.scantier=Wne,EA.scantiest=Wne,EA.scarier=Jne,EA.scariest=Jne,EA.scraggier=qne,EA.scraggiest=qne,EA.scragglier=Vne,EA.scraggliest=Vne,EA.scraper=qLr,EA.scrappier=zne,EA.scrappiest=zne,EA.scrawnier=Kne,EA.scrawniest=Kne,EA.screwier=Xne,EA.screwiest=Xne,EA.scrubbier=Zne,EA.scrubbiest=Zne,EA.scruffier=$ne,EA.scruffiest=$ne,EA.scungier=Aae,EA.scungiest=Aae,EA.scurvier=eae,EA.scurviest=eae,EA.seamier=rae,EA.seamiest=rae,EA.seconder=VLr,EA.seedier=tae,EA.seediest=tae,EA.seemlier=iae,EA.seemliest=iae,EA.serer=zLr,EA.sexier=nae,EA.sexiest=nae,EA.shabbier=aae,EA.shabbiest=aae,EA.shadier=oae,EA.shadiest=oae,EA.shaggier=sae,EA.shaggiest=sae,EA.shakier=cae,EA.shakiest=cae,EA.shapelier=lae,EA.shapeliest=lae,EA.shier=xV,EA.shiest=xV,EA.shiftier=uae,EA.shiftiest=uae,EA.shinier=gae,EA.shiniest=gae,EA.shirtier=dae,EA.shirtiest=dae,EA.shoddier=pae,EA.shoddiest=pae,EA.showier=Eae,EA.showiest=Eae,EA.shrubbier=fae,EA.shrubbiest=fae,EA.shyer=xV,EA.shyest=xV,EA.sicklier=Bae,EA.sickliest=Bae,EA.sightlier=hae,EA.sightliest=hae,EA.signaler=KLr,EA.signer=XLr,EA.silkier=Qae,EA.silkiest=Qae,EA.sillier=mae,EA.silliest=mae,EA.sketchier=Dae,EA.sketchiest=Dae,EA.skewer=ZLr,EA.skimpier=_ae,EA.skimpiest=_ae,EA.skinnier=wae,EA.skinniest=wae,EA.slaphappier=vae,EA.slaphappiest=vae,EA.slatier=yae,EA.slatiest=yae,EA.slaver=$Lr,EA.sleazier=Cae,EA.sleaziest=Cae,EA.sleepier=Iae,EA.sleepiest=Iae,EA.slier=HV,EA.sliest=HV,EA.slimier=bae,EA.slimiest=bae,EA.slimmer=Oae,EA.slimmest=Oae,EA.slimsier=Mae,EA.slimsiest=Mae,EA.slinkier=kae,EA.slinkiest=kae,EA.slippier=xae,EA.slippiest=xae,EA.sloppier=Hae,EA.sloppiest=Hae,EA.slyer=HV,EA.slyest=HV,EA.smarmier=Sae,EA.smarmiest=Sae,EA.smellier=Fae,EA.smelliest=Fae,EA.smokier=Rae,EA.smokiest=Rae,EA.smugger=Tae,EA.smuggest=Tae,EA.snakier=Nae,EA.snakiest=Nae,EA.snappier=Pae,EA.snappiest=Pae,EA.snatchier=Gae,EA.snatchiest=Gae,EA.snazzier=Yae,EA.snazziest=Yae,EA.sneaker=Ajr,EA.sniffier=Uae,EA.sniffiest=Uae,EA.snootier=Lae,EA.snootiest=Lae,EA.snottier=jae,EA.snottiest=jae,EA.snowier=Wae,EA.snowiest=Wae,EA.snuffer=ejr,EA.snuffier=Jae,EA.snuffiest=Jae,EA.snugger=qae,EA.snuggest=qae,EA.soapier=Vae,EA.soapiest=Vae,EA.soggier=zae,EA.soggiest=zae,EA.solder=rjr,EA.sonsier=Kae,EA.sonsiest=Kae,EA.sootier=Xae,EA.sootiest=Xae,EA.soppier=Zae,EA.soppiest=Zae,EA.sorrier=$ae,EA.sorriest=$ae,EA.soupier=Aoe,EA.soupiest=Aoe,EA.souther=tjr,EA.southerner=ijr,EA.speedier=eoe,EA.speediest=eoe,EA.spicier=roe,EA.spiciest=roe,EA.spiffier=toe,EA.spiffiest=toe,EA.spikier=ioe,EA.spikiest=ioe,EA.spindlier=noe,EA.spindliest=noe,EA.spinier=aoe,EA.spiniest=aoe,EA.splashier=ooe,EA.splashiest=ooe,EA.spongier=soe,EA.spongiest=soe,EA.spookier=coe,EA.spookiest=coe,EA.spoonier=loe,EA.spooniest=loe,EA.sportier=uoe,EA.sportiest=uoe,EA.spottier=goe,EA.spottiest=goe,EA.spreader=njr,EA.sprier=doe,EA.spriest=doe,EA.sprightlier=poe,EA.sprightliest=poe,EA.springer=ajr,EA.springier=Eoe,EA.springiest=Eoe,EA.squashier=foe,EA.squashiest=foe,EA.squatter=Boe,EA.squattest=Boe,EA.squattier=hoe,EA.squattiest=hoe,EA.squiffier=Qoe,EA.squiffiest=Qoe,EA.stagier=moe,EA.stagiest=moe,EA.stalkier=Doe,EA.stalkiest=Doe,EA.stapler=ojr,EA.starchier=_oe,EA.starchiest=_oe,EA.starer=sjr,EA.starest=cjr,EA.starrier=woe,EA.starriest=woe,EA.statelier=voe,EA.stateliest=voe,EA.steadier=yoe,EA.steadiest=yoe,EA.stealthier=Coe,EA.stealthiest=Coe,EA.steamier=Ioe,EA.steamiest=Ioe,EA.stingier=boe,EA.stingiest=boe,EA.stiper=ljr,EA.stocker=ujr,EA.stockier=Ooe,EA.stockiest=Ooe,EA.stodgier=Moe,EA.stodgiest=Moe,EA.stonier=koe,EA.stoniest=koe,EA.stormier=xoe,EA.stormiest=xoe,EA.streakier=Hoe,EA.streakiest=Hoe,EA.streamier=Soe,EA.streamiest=Soe,EA.stretcher=gjr,EA.stretchier=Foe,EA.stretchiest=Foe,EA.stringier=Roe,EA.stringiest=Roe,EA.stripier=Toe,EA.stripiest=Toe,EA.stronger=Noe,EA.strongest=Noe,EA.stroppier=Poe,EA.stroppiest=Poe,EA.stuffier=Goe,EA.stuffiest=Goe,EA.stumpier=Yoe,EA.stumpiest=Yoe,EA.sturdier=Uoe,EA.sturdiest=Uoe,EA.submariner=djr,EA.sulkier=Loe,EA.sulkiest=Loe,EA.sultrier=joe,EA.sultriest=joe,EA.sunnier=Woe,EA.sunniest=Woe,EA.surlier=Joe,EA.surliest=Joe,EA.swagger=pjr,EA.swankier=qoe,EA.swankiest=qoe,EA.swarthier=Voe,EA.swarthiest=Voe,EA.sweatier=zoe,EA.sweatiest=zoe,EA.tackier=Koe,EA.tackiest=Koe,EA.talkier=Xoe,EA.talkiest=Xoe,EA.tangier=Zoe,EA.tangiest=Zoe,EA.tanner=$oe,EA.tannest=$oe,EA.tardier=Ase,EA.tardiest=Ase,EA.tastier=ese,EA.tastiest=ese,EA.tattier=rse,EA.tattiest=rse,EA.tawdrier=tse,EA.tawdriest=tse,EA.techier=ise,EA.techiest=ise,EA.teenager=Ejr,EA.teenier=nse,EA.teeniest=nse,EA.teetotaler=fjr,EA.tester=Bjr,EA.testier=ase,EA.testiest=ase,EA.tetchier=ose,EA.tetchiest=ose,EA.thinner=sse,EA.thinnest=sse,EA.thirstier=cse,EA.thirstiest=cse,EA.thornier=lse,EA.thorniest=lse,EA.threadier=use,EA.threadiest=use,EA.thriftier=gse,EA.thriftiest=gse,EA.throatier=dse,EA.throatiest=dse,EA.tidier=pse,EA.tidiest=pse,EA.timelier=Ese,EA.timeliest=Ese,EA.tinier=fse,EA.tiniest=fse,EA.tinnier=Bse,EA.tinniest=Bse,EA.tipsier=hse,EA.tipsiest=hse,EA.tonier=Qse,EA.toniest=Qse,EA.toothier=mse,EA.toothiest=mse,EA.toper=hjr,EA.touchier=Dse,EA.touchiest=Dse,EA.trader=Qjr,EA.trashier=_se,EA.trashiest=_se,EA.trendier=wse,EA.trendiest=wse,EA.trickier=vse,EA.trickiest=vse,EA.tricksier=yse,EA.tricksiest=yse,EA.trimer=mjr,EA.trimmer=Cse,EA.trimmest=Cse,EA.truer=Ise,EA.truest=Ise,EA.trustier=bse,EA.trustiest=bse,EA.tubbier=Ose,EA.tubbiest=Ose,EA.turfier=Mse,EA.turfiest=Mse,EA.tweedier=kse,EA.tweediest=kse,EA.twiggier=xse,EA.twiggiest=xse,EA.uglier=Hse,EA.ugliest=Hse,EA.unfriendlier=Sse,EA.unfriendliest=Sse,EA.ungainlier=Fse,EA.ungainliest=Fse,EA.ungodlier=Rse,EA.ungodliest=Rse,EA.unhappier=Tse,EA.unhappiest=Tse,EA.unhealthier=Nse,EA.unhealthiest=Nse,EA.unholier=Pse,EA.unholiest=Pse,EA.unrulier=Gse,EA.unruliest=Gse,EA.untidier=Yse,EA.untidiest=Yse,EA.vastier=Use,EA.vastiest=Use,EA.vest=Djr,EA.viewier=Lse,EA.viewiest=Lse,EA.wackier=jse,EA.wackiest=jse,EA.wanner=Wse,EA.wannest=Wse,EA.warier=Jse,EA.wariest=Jse,EA.washier=qse,EA.washiest=qse,EA.waster=_jr,EA.wavier=Vse,EA.waviest=Vse,EA.waxier=zse,EA.waxiest=zse,EA.weaklier=Kse,EA.weakliest=Kse,EA.wealthier=Xse,EA.wealthiest=Xse,EA.wearier=Zse,EA.weariest=Zse,EA.webbier=$se,EA.webbiest=$se,EA.weedier=Ace,EA.weediest=Ace,EA.weenier=ece,EA.weeniest=ece,EA.weensier=rce,EA.weensiest=rce,EA.weepier=tce,EA.weepiest=tce,EA.weightier=ice,EA.weightiest=ice,EA.welsher=wjr,EA.wetter=nce,EA.wettest=nce,EA.whackier=ace,EA.whackiest=ace,EA.whimsier=oce,EA.whimsiest=oce,EA.wholesaler=vjr,EA.wieldier=sce,EA.wieldiest=sce,EA.wilier=cce,EA.wiliest=cce,EA.windier=lce,EA.windiest=lce,EA.winier=uce,EA.winiest=uce,EA.winterier=gce,EA.winteriest=gce,EA.wintrier=dce,EA.wintriest=dce,EA.wirier=pce,EA.wiriest=pce,EA.wispier=Ece,EA.wispiest=Ece,EA.wittier=fce,EA.wittiest=fce,EA.wonkier=Bce,EA.wonkiest=Bce,EA.woodier=hce,EA.woodiest=hce,EA.woodsier=Qce,EA.woodsiest=Qce,EA.woollier=mce,EA.woolliest=mce,EA.woozier=Dce,EA.wooziest=Dce,EA.wordier=_ce,EA.wordiest=_ce,EA.worldlier=wce,EA.worldliest=wce,EA.wormier=vce,EA.wormiest=vce,EA.worse=yce,EA.worst=yce,EA.worthier=Cce,EA.worthiest=Cce,EA.wrier=SV,EA.wriest=SV,EA.wryer=SV,EA.wryest=SV,EA.yarer=Ice,EA.yarest=Ice,EA.yeastier=bce,EA.yeastiest=bce,EA.younger=Oce,EA.youngest=Oce,EA.yummier=Mce,EA.yummiest=Mce,EA.zanier=kce,EA.zaniest=kce,EA.zippier=xce,EA.zippiest=xce,Sce.exports=EA});var Ole=GA((ksi,ble)=>{var W=Object.create(null),yjr="aardwolf",Cjr="abacus",Ijr="aboideau",bjr="aboiteau",Ojr="abscissa",Mjr="acanthus",kjr="acarus",xjr="acciaccatura",Hjr="acetabulum",Rce="achaemenid",Sjr="aciculum",Fjr="acicula",Rjr="acinus",Tjr="acromion",Njr="actinia",Pjr="actinozoan",Gjr="addendum",Yjr="adenocarcinoma",Ujr="adenoma",Ljr="adieu",jjr="adytum",Wjr="aecium",Jjr="aecidium",qjr="aerobium",Vjr="aggiornamento",zjr="agnomen",Kjr="agon",Xjr="agora",Zjr="agouti",$jr="ala",AWr="alewife",eWr="alkali",rWr="allodium",tWr="alluvium",iWr="alodium",nWr="altocumulus",aWr="altostratus",oWr="alula",sWr="alumna",cWr="alumnus",lWr="alveolus",uWr="amanuensis",gWr="ambulacrum",dWr="ameba",pWr="amnion",EWr="amniocentesis",fWr="amoeba",BWr="amoebiasis",hWr="amora",QWr="amoretto",mWr="amorino",DWr="amphiarthrosis",_Wr="amphithecium",wWr="amphimixis",vWr="amphioxus",yWr="amphisbaena",CWr="amphora",IWr="ampulla",bWr="amygdala",OWr="anabasis",MWr="anacoluthon",kWr="anacrusis",xWr="anaerobium",HWr="anagnorisis",SWr="analemma",FWr="analysis",RWr="anamnesis",TWr="anamorphosis",NWr="anastomosis",PWr="anaptyxis",GWr="ancon",YWr="androclinium",UWr="androecium",LWr="androsphinx",Tce="antheridium",jWr="angelfish",WWr="angioma",JWr="animalculum",qWr="anlage",VWr="annatto",zWr="annulus",KWr="anta",XWr="antalkali",ZWr="antefix",$Wr="antenna",AJr="antependium",eJr="anthelion",rJr="anthelix",tJr="anthemion",iJr="anthodium",nJr="anthozoan",aJr="anthrax",oJr="anticlinorium",sJr="antihelix",cJr="antihero",lJr="antiserum",uJr="antithesis",gJr="antitragus",dJr="antrum",pJr="anus",EJr="aorta",fJr="aphelion",BJr="aphis",hJr="apex",QJr="apodosis",mJr="apomixis",DJr="aponeurosis",_Jr="apophysis",wJr="aposiopesis",vJr="apothecium",yJr="apotheosis",CJr="apparatus",IJr="appendix",bJr="appoggiatura",OJr="apsis",MJr="aqua",kJr="aquarium",Nce="argali",xJr="arboretum",HJr="arcanum",SJr="archegonium",FJr="archerfish",RJr="archesporium",TJr="archipelago",NJr="areola",PJr="argumentum",GJr="arietta",YJr="arista",UJr="armamentarium",LJr="arsis",Pce="rotl",jJr="arteriosclerosis",WJr="aruspex",JJr="ascesis",qJr="ascus",VJr="ascidium",zJr="ascogonium",KJr="ash",XJr="ashkenazi",ZJr="aspergillum",$Jr="aspergillus",Aqr="aspergillosis",eqr="aspersorium",rqr="assegai",tqr="astragalus",iqr="asyndeton",nqr="atheroma",aqr="atherosclerosis",oqr="atmolysis",sqr="atrium",cqr="auditorium",lqr="aura",uqr="eyrir",gqr="aureus",dqr="auricula",pqr="aurora",Eqr="auspice",fqr="autocatalysis",Bqr="autochthon",hqr="automaton",Qqr="avitaminosis",mqr="ax",Dqr="axilla",_qr="bacchante",wqr="bacchius",vqr="bacillus",yqr="bacteriostasis",Cqr="baculum",Iqr="ballista",bqr="bambino",Oqr="bandeau",Mqr="bandit",kqr="ban",xqr="banjo",Hqr="barklouse",Sqr="barramundi",Fqr="base",Rqr="basidium",Tqr="basileus",Nqr="basso",Pqr="bastinado",Gqr="bateau",Yqr="batfish",Uqr="beadsman",Lqr="beau",jqr="beef",Wqr="behoof",Jqr="bersagliere",qqr="bhishti",Vqr="bibliotheca",zqr="bicentenary",Kqr="bijou",Xqr="bilbo",Zqr="billfish",$qr="bimbo",AVr="bisectrix",eVr="blackfoot",rVr="blackfish",tVr="blastema",iVr="blastula",nVr="blindfish",aVr="blowfish",oVr="bluefish",sVr="boarfish",ApA="boschbok",cVr="boletus",lVr="bolivar",uVr="bolshevik",gVr="bonefish",dVr="bongo",pVr="bonito",EVr="booklouse",fVr="bookshelf",BVr="borax",hVr="borborygmus",QVr="bordereau",mVr="botargo",DVr="boxfish",_Vr="brachium",wVr="brainchild",vVr="branchia",yVr="brant",CVr="bravado",IVr="bravo",bVr="bregma",OVr="brother",MVr="broadleaf",kVr="bronchus",xVr="bryozoan",HVr="bubo",SVr="bucko",FVr="bucktooth",RVr="buffalo",TVr="bulla",NVr="bund",PVr="bureau",GVr="bursa",YVr="bus",UVr="butterfish",LVr="byssus",jVr="cactus",WVr="caduceus",JVr="caecum",qVr="caesura",VVr="calamus",zVr="calathus",KVr="calcaneum",XVr="calx",ZVr="calculus",$Vr="caldarium",Azr="calix",ezr="calico",rzr="callus",tzr="calf",izr="calyx",nzr="cambium",azr="camera",ozr="canaliculus",szr="candelabrum",czr="candlefish",lzr="canthus",uzr="canula",gzr="canzone",dzr="caput",pzr="capitulum",Ezr="capriccio",fzr="carabiniere",Bzr="carbonado",hzr="carcinoma",Qzr="cargo",mzr="caryatid",Dzr="carina",_zr="carolus",wzr="carpus",vzr="carpogonium",Gce="caryopsis",yzr="castrato",Czr="catabasis",Izr="cataclasis",bzr="catalo",Ozr="catalysis",Mzr="catena",kzr="catfish",xzr="cathar",Hzr="cathexis",Szr="cattalo",Fzr="caudex",Rzr="caulis",Tzr="cavatina",Nzr="cavefish",Pzr="cavetto",Gzr="cecum",Yzr="cella",Uzr="cembalo",Lzr="centesimo",jzr="centrum",Wzr="cephalothorax",Yce="cercaria",Jzr="cercus",qzr="cerebellum",Vzr="cerebrum",zzr="cervix",Kzr="caestus",Xzr="cesura",Uce="cheder",Zzr="chaeta",$zr="chalaza",tpA="hallah",AKr="chalutz",eKr="chapati",rKr="chapatti",tKr="chapeau",iKr="chasid",nKr="chassid",aKr="chateau",oKr="chazan",sKr="chela",cKr="chelicera",lKr="cherub",uKr="chiasma",gKr="chiasmus",dKr="child",pKr="chilli",EKr="chitarrone",Lce="chlamys",fKr="chondroma",BKr="choragus",hKr="choriambus",QKr="chou",mKr="chromonema",DKr="chrysalis",_Kr="chuvash",wKr="ciborium",vKr="cicada",yKr="cicala",CKr="cicatrix",IKr="cicerone",bKr="cicisbeo",OKr="cilium",MKr="cimex",kKr="cinerarium",xKr="cingulum",HKr="cirrus",SKr="cirrocumulus",FKr="cirrostratus",RKr="cisco",TKr="cisterna",jce="clarino",NKr="claro",PKr="clepsydra",GKr="clinandrium",YKr="clingfish",UKr="clitellum",LKr="cloaca",jKr="clostridium",WKr="cloverleaf",JKr="clypeus",qKr="coagulum",VKr="coalfish",zKr="coccus",KKr="coccyx",XKr="cochlea",ZKr="codfish",$Kr="codex",AXr="coelenteron",eXr="coenurus",rXr="cognomen",tXr="cognosente",Wce="colon",iXr="coleorhiza",nXr="collegium",aXr="colloquium",oXr="colluvium",sXr="collyrium",cXr="colossus",lXr="columbarium",uXr="columella",gXr="coma",dXr="comatula",pXr="comedo",EXr="comic",fXr="commando",BXr="concertante",hXr="concerto",QXr="concertino",mXr="concha",DXr="condottiere",_Xr="condyloma",wXr="conferva",vXr="congius",yXr="conidium",CXr="conjunctiva",IXr="conquistador",bXr="consortium",OXr="contagium",MXr="continuum",kXr="contralto",xXr="conversazione",HXr="convolvulus",SXr="copula",FXr="corbicula",RXr="corium",TXr="cornea",NXr="cornu",PXr="corona",GXr="corpus",YXr="corrigendum",UXr="cortex",LXr="cortina",jXr="corybant",WXr="coryphaeus",JXr="costa",qXr="cothurnus",VXr="couteau",zXr="cowfish",KXr="coxa",XXr="crambo",ZXr="cranium",$Xr="crasis",AZr="crawfish",eZr="crayfish",rZr="credendum",tZr="crematorium",iZr="crescendo",nZr="cribellum",aZr="crisis",oZr="crissum",sZr="crista",cZr="criterion",lZr="crux",uZr="crus",gZr="crusado",dZr="cruzado",Jce="cry",pZr="ctenidium",EZr="cubiculum",fZr="culex",BZr="culpa",hZr="cultus",QZr="cumulus",mZr="cumulonimbus",DZr="cumulostratus",_Zr="curia",wZr="curriculum",vZr="custos",yZr="cutis",CZr="cuticula",IZr="cuttlefish",bZr="cyclops",OZr="cyclosis",qce="cylix",MZr="cyma",kZr="cymatium",xZr="cypsela",HZr="cysticercus",SZr="dado",FZr="dago",RZr="damselfish",TZr="datum",Vce="daimio",NZr="dealfish",PZr="decemvir",GZr="decennium",YZr="decidua",UZr="definiendum",LZr="definiens",jZr="delphinium",WZr="denarius",JZr="dentalium",qZr="dermatosis",VZr="desideratum",zZr="desperado",KZr="devilfish",zce="diaeresis",XZr="diagnosis",ZZr="dialysis",$Zr="diaphysis",A$r="diapophysis",e$r="diarthrosis",r$r="diastalsis",t$r="diastasis",Kce="diastema",i$r="diathesis",n$r="diazo",a$r="dibbuk",o$r="dichasium",s$r="dictum",c$r="dido",l$r="dieresis",u$r="diesis",g$r="differentia",d$r="dilettante",p$r="diluvium",E$r="dingo",f$r="diplococcus",B$r="discus",h$r="discobolus",Q$r="diva",m$r="diverticulum",D$r="divertimento",_$r="djinny",w$r="dodo",v$r="dogfish",y$r="dogma",C$r="dogtooth",I$r="dollarfish",b$r="domatium",O$r="domino",M$r="dormouse",k$r="dorsum",x$r="drachma",H$r="drawknife",S$r="drosophila",F$r="drumfish",R$r="dryad",T$r="duo",Xce="duodenum",N$r="dupondius",P$r="duumvir",G$r="dwarf",Y$r="dybbuk",U$r="ecchymosis",L$r="ecclesia",j$r="ecdysis",W$r="echidna",J$r="echinus",q$r="echinococcus",V$r="echo",z$r="ectozoan",K$r="eddo",X$r="edema",Z$r="effluvium",$$r="eidolon",AAt="eisegesis",eAt="eisteddfod",rAt="elenchus",tAt="ellipsis",iAt="eluvium",nAt="elf",aAt="elytrum",oAt="embargo",sAt="embolus",cAt="emphasis",lAt="emporium",uAt="enarthrosis",gAt="encephalon",dAt="encephalitis",pAt="encephaloma",EAt="enchiridion",fAt="enchondroma",BAt="encomium",hAt="endameba",QAt="endamoeba",mAt="endocardium",DAt="endocranium",_At="endometrium",wAt="endosteum",vAt="endostosis",yAt="endothecium",CAt="endothelium",IAt="endothelioma",bAt="endozoan",OAt="enema",MAt="enneahedron",kAt="entameba",xAt="entamoeba",HAt="entasis",SAt="enteron",FAt="ens",RAt="entozoan",TAt="epencephalon",NAt="epenthesis",PAt="epexegesis",GAt="ephemeron",YAt="ephemera",UAt="ephemeris",LAt="ephor",jAt="epicalyx",WAt="epicanthus",JAt="epicardium",qAt="epicedium",VAt="epiclesis",zAt="epididymis",KAt="epigastrium",XAt="epiglottis",ZAt="epimysium",$At="epiphenomenon",Aet="epiphysis",eet="episternum",tet="epithalamium",iet="epithelium",net="epithelioma",aet="epizoan",oet="epyllion",set="equilibrium",cet="equisetum",uet="eringo",get="erratum",det="eryngo",pet="esophagus",Eet="etymon",fet="eucalyptus",Bet="eupatrid",het="euripus",Qet="exanthema",met="executrix",Det="exegesis",_et="exemplum",wet="exordium",vet="exostosis",yet="extremum",Cet="eyetooth",Iet="fabliau",bet="facia",Oet="facula",Met="faeroese",ket="fallfish",xet="famulus",Het="faroese",Fet="farrago",Ret="fascia",Tet="fasciculus",Net="fatso",Pet="fauna",Get="fecula",Yet="fedayee",Uet="foot",Zce="fellah",Let="femur",jet="fenestella",Wet="fenestra",Jet="feria",qet="fermata",Vet="ferula",zet="festschrift",Ket="fetial",Xet="fez",Zet="fiasco",$et="fibrilla",Art="fibroma",ert="fibula",rrt="fico",trt="fideicommissum",irt="fieldmouse",nrt="fig",art="filum",ort="filaria",srt="filefish",crt="fimbria",lrt="fish",urt="fishwife",grt="fistula",drt="flabellum",prt="flagellum",Ert="flagstaff",frt="flambeau",Brt="flamen",hrt="flamingo",Qrt="flatfoot",mrt="flatfish",Drt="flittermouse",_rt="floccus",wrt="flocculus",vrt="flora",yrt="floreat",Crt="florilegium",Irt="flyleaf",brt="focus",Ort="folium",Mrt="forum",krt="foramen",xrt="forceps",Hrt="forefoot",Srt="foretooth",Frt="formicarium",Rrt="formula",Trt="fornix",Nrt="fortis",Prt="fossa",Grt="fovea",Yrt="foveola",Urt="fractocumulus",Lrt="fractostratus",jrt="fraenum",Wrt="frau",Jrt="frenum",qrt="frenulum",Vrt="fresco",zrt="fricandeau",Krt="fricando",Xrt="frijol",Zrt="frogfish",$rt="frons",Att="frustum",ett="fucus",rtt="fulcrum",ttt="fumatorium",itt="fundus",ntt="fungus",att="funiculus",ott="furculum",stt="furcula",ctt="furfur",ltt="galea",utt="gambado",gtt="gametangium",dtt="gametoecium",ptt="gammadion",Ett="ganglion",ftt="garfish",$ce="gas",Btt="gastrula",htt="gateau",Qtt="gazebo",mtt="gecko",Dtt="goose",_tt="gelsemium",wtt="gemsbok",vtt="gemsbuck",ytt="gemeinschaft",Ctt="gemma",Ale="genus",Itt="generatrix",btt="genesis",Ott="genius",Mtt="gens",ktt="genu",xtt="germen",Htt="gesellschaft",Stt="gestalt",Ftt="ghetto",Rtt="gingiva",Ttt="gingko",Ntt="ginglymus",Ptt="ginkgo",Gtt="gippo",Ytt="glabella",Utt="gladiolus",Ltt="glans",jtt="glioma",Wtt="glissando",Jtt="globefish",qtt="globigerina",ele="glochidium",Vtt="glomerulus",ztt="glossa",Ktt="glottis",Xtt="glutaeus",Ztt="gluteus",$tt="gnosis",Ait="goatfish",eit="gobo",rit="godchild",tit="go",iit="goldfish",nit="gomphosis",ait="gonion",oit="gonidium",sit="gonococcus",cit="goodwife",lit="goosefish",uit="gorgoneion",git="gospodin",dit="goy",pit="gps",Eit="graf",fit="graffito",Bit="grandchild",hit="granuloma",Qit="gravamen",mit="grosz",Dit="grotto",rle="guilde",_it="guitarfish",wit="gumma",tle="gurnar",vit="gutta",yit="gymnasium",Cit="gynaeceum",Iit="gynaecium",ile="gynecium",nle="gynoecium",bit="gyrus",Oit="heder",Mit="hadj",kit="haematolysis",xit="haematoma",Hit="haematozoon",Sit="haemodialysis",Fit="haemolysis",Rit="haemoptysis",Tit="haeres",Nit="haftarah",Pit="hagfish",Git="haggadah",Yit="haggada",Uit="hajj",Lit="haler",jit="halfpenny",Wit="hallux",Jit="halo",qit="halter",Vit="half",zit="hamulus",Kit="haphtarah",Xit="haredi",Zit="haruspex",$it="hasid",Ant="hassid",ent="haustellum",rnt="haustorium",tnt="hazzan",int="hectocotylus",nnt="heldentenor",ant="helix",ont="heliozoan",snt="hematolysis",cnt="hematoma",lnt="hematozoon",unt="hemelytron",gnt="hemielytron",dnt="hemodialysis",pnt="hemolysis",Ent="hemoptysis",fnt="hendecahedron",Bnt="heraclid",hnt="heraklid",Qnt="herbarium",ale="herma",mnt="hernia",Dnt="hero",_nt="herr",wnt="hetaera",vnt="hetaira",ynt="hibernaculum",Cnt="hieracosphinx",Int="hilum",bnt="hilus",Ont="himation",Mnt="hippocampus",knt="hippopotamus",xnt="his",Hnt="hobo",Snt="hogfish",Fnt="homunculus",Rnt="honorarium",Tnt="hoof",Nnt="horologium",Pnt="housewife",Gnt="humerus",Ynt="hydra",Unt="hydromedusa",Lnt="hydrozoan",jnt="hymenopteran",ole="hymenium",Wnt="hypanthium",Jnt="hyperostosis",qnt="hypha",Vnt="hypnosis",znt="hypochondrium",Knt="hypogastrium",Xnt="hypogeum",Znt="hypophysis",$nt="hypostasis",Aat="hypothalamus",eat="hypothesis",rat="hyrax",tat="iamb",iat="ibex",nat="igbo",aat="ichthyosaurus",oat="ichthyosaur",sat="iconostas",cat="icosahedron",lat="ideatum",uat="igorrote",gat="ilium",sle="imago",dat="imperium",pat="impi",Eat="incubus",fat="incus",Bat="index",hat="indigo",Qat="indumentum",mat="indusium",Dat="infundibulum",_at="ingush",wat="innuendo",vat="inoculum",yat="insectarium",Cat="insula",Iat="intaglio",bat="interleaf",Oat="intermezzo",Mat="interrex",kat="interregnum",xat="intima",Hat="involucellum",Sat="involucrum",Fat="iris",Rat="irs",Tat="is",Nat="ischium",Pat="isthmus",Gat="jackeroo",Yat="jackfish",Uat="jackknife",Lat="jambeau",jat="jellyfish",Wat="jewelfish",Jat="jewfish",qat="jingo",Vat="jinni",zat="joe",Kat="jus",Xat="kaddish",cle="kalmuc",Zat="katabasis",$at="keeshond",Aot="kibbutz",eot="killifish",rot="kingfish",tot="knife",iot="kohlrabi",lle="krone",not="krona",aot="kroon",oot="kylix",sot="labarum",cot="labellum",lot="labium",uot="labrum",got="lactobacillus",dot="lacuna",pot="lacunar",Eot="lamella",fot="lamia",Bot="lamina",hot="lapillus",Qot="lapith",mot="larva",Dot="larynx",_ot="lasso",ule="lat",wot="latex",vot="latifundium",yot="lavabo",Cot="leaf",Iot="lecythus",bot="lex",Oot="leu",Mot="lemma",kot="lemniscus",xot="lenis",Hot="lentigo",Sot="leonid",Fot="lepidopteran",Rot="leprosarium",Tot="lepton",Not="leptocephalus",Pot="leucocytozoan",Got="lev",Yot="libra",Uot="libretto",Lot="louse",jot="lied",Wot="ligula",Jot="limbus",qot="limen",Vot="limes",zot="limulus",Kot="lingo",Xot="lingua",Zot="lionfish",$ot="lipoma",Ast="lira",est="liriodendron",gle="sente",dle="litas",rst="life",tst="lixivium",ist="loaf",nst="locus",ast="loculus",ost="loggia",sst="logion",cst="lomentum",lst="longobard",ust="lorica",gst="luba",dst="lubritorium",pst="lumbus",Est="lumen",fst="lumpfish",Bst="lungfish",hst="lunula",Qst="lure",mst="lustre",Dst="lymphangitis",_st="lymphoma",wst="lymphopoiesis",vst="lysis",yst="lytta",Cst="maar",Ist="macaroni",bst="maccaroni",Ost="machzor",Mst="macronucleus",kst="macrosporangium",xst="macula",Hst="madrono",Sst="maestro",Fst="mafioso",Rst="magus",Tst="magma",Nst="magnifico",Pst="mahzor",Gst="likuta",Yst="malleus",Ust="malleolus",Lst="loti",jst="mamilla",Wst="mamma",Jst="mammilla",qst="mandingo",Vst="mango",zst="manifesto",Kst="manteau",Xst="mantis",Zst="manubrium",$st="marchesa",Act="marchese",ect="maremma",rct="markka",tct="marsupium",ict="matrix",nct="matzo",act="mausoleum",oct="maxilla",sct="maximum",cct="medium",lct="media",uct="mediastinum",gct="medulla",dct="medusa",pct="megaron",Ect="megasporangium",fct="megillah",Bct="meiosis",hct="melanoma",Qct="melisma",mct="memento",Dct="memorandum",_ct="man",wct="meniscus",vct="manservant",yct="menstruum",Cct="madame",Ict="mademoiselle",bct="mesenteron",Oct="mesothorax",Mct="monseigneur",kct="monsieur",xct="mestizo",Hct="metacarpus",Sct="metamorphosis",Fct="metanephros",Rct="metastasis",Tct="metatarsus",Nct="metathesis",Pct="metathorax",Gct="metazoan",Yct="metempsychosis",Uct="metencephalon",Lct="mezuzah",jct="miasma",Wct="mouse",Jct="microanalysis",qct="micrococcus",Vct="micronucleus",zct="microsporangium",Kct="midrash",Xct="midwife",Zct="milium",$ct="milieu",Alt="milkfish",elt="millennium",rlt="mina",tlt="minimum",ilt="ministerium",nlt="minutia",alt="minyan",olt="miosis",slt="miracidium",clt="mir",llt="mitochondrion",ult="mitzvah",glt="modiolus",dlt="modulus",plt="momentum",Elt="momus",flt="monad",Blt="monkfish",hlt="monochasium",Qlt="monopodium",mlt="monopteron",Dlt="monopteros",_lt="monsignor",wlt="mooncalf",vlt="moonfish",ylt="mora",Clt="moratorium",Ilt="morceau",blt="moresco",Olt="morisco",Mlt="morphallaxis",klt="morphosis",xlt="morula",Hlt="mosasaurus",Slt="moshav",ple="moslem",Flt="mosquito",Rlt="motto",Tlt="mucosa",Nlt="mucro",Plt="mudejar",Glt="mudfish",Ylt="mulatto",Ult="multipara",Llt="murex",jlt="muskellunge",Wlt="mycelium",Jlt="mycetoma",qlt="mycobacterium",Vlt="mycorrhiza",zlt="myelencephalon",Klt="myiasis",Xlt="myocardium",Zlt="myofibrilla",$lt="myoma",Aut="myosis",eut="myrmidon",rut="mythos",tut="myxoma",iut="naevus",nut="naiad",aut="naos",sut="narcissus",cut="naris",lut="nasopharynx",uut="natatorium",gut="naumachia",dut="nauplius",put="nautilus",Eut="navaho",fut="navajo",But="nebula",hut="necropolis",Qut="needlefish",mut="negrillo",Dut="negrito",_ut="negro",wut="nemesis",vut="nephridium",yut="nereid",Cut="neurohypophysis",Iut="neuroma",but="neuropteron",Out="neurosis",Mut="nevus",kut="nibelung",xut="nidus",Hut="niello",Sut="nilgai",Fut="nimbus",Rut="nimbostratus",Tut="noctiluca",Nut="nodus",Put="no",Gut="nomen",Yut="notum",Uut="noumenon",Lut="nova",jut="novella",Wut="novena",Jut="nubecula",qut="nucellus",Vut="nucha",zut="nucleus",Kut="nucleolus",Xut="nullipara",Zut="numbfish",$ut="numen",Agt="nympha",egt="oarfish",rgt="oasis",tgt="obelus",igt="obligato",ngt="obolus",agt="occiput",ogt="oceanarium",sgt="oceanid",cgt="ocellus",lgt="ochrea",ugt="ocrea",ggt="octahedron",dgt="octopus",pgt="oculus",Egt="odeum",fgt="oedema",Bgt="oesophagus",hgt="oldwife",Qgt="oleum",mgt="omasum",Dgt="omayyad",_gt="omentum",wgt="ommatidium",vgt="ommiad",ygt="onager",Cgt="oogonium",Igt="ootheca",bgt="operculum",Ogt="optimum",epA="os",Mgt="organum",kgt="organa",xgt="orthopteron",Hgt="osculum",Sgt="osteoma",Fgt="ostium",Rgt="ottoman",Tgt="ovum",Ngt="ovolo",Pgt="ovotestis",Ggt="ox",Ygt="oxymoron",Ugt="paddlefish",Lgt="paisa",jgt="palea",Wgt="palestra",Jgt="palingenesis",qgt="pallium",Vgt="palmetto",zgt="palpus",Kgt="pancratium",Xgt="panettone",Zgt="paparazzo",$gt="paperknife",Adt="papilla",edt="papilloma",rdt="pappus",tdt="papula",idt="papyrus",ndt="parabasis",adt="paraleipsis",odt="paralysis",sdt="paramecium",cdt="parament",ldt="paraphysis",udt="parapodium",gdt="parapraxis",ddt="paraselene",pdt="parashah",Edt="parasyntheton",fdt="parazoan",Bdt="parenthesis",hdt="parergon",Qdt="parhelion",mdt="paries",Ddt="parrotfish",_dt="parulis",wdt="pastorale",vdt="patagium",ydt="patella",Cdt="patina",Idt="paterfamilias",bdt="pea",Odt="peccadillo",Mdt="pecten",kdt="pedalo",xdt="pes",Hdt="pekinese",Sdt="pelvis",Fdt="penny",Rdt="penis",Tdt="penetralium",Ndt="penicillium",Pdt="penknife",Gdt="penna",Ydt="penni",Udt="pentahedron",Ldt="pentimento",jdt="penumbra",Wdt="peplum",Jdt="pericardium",qdt="perichondrium",Vdt="pericranium",zdt="peridium",Kdt="perigonium",Xdt="perihelion",Zdt="perineum",$dt="perinephrium",Apt="perionychium",ept="periosteum",rpt="periphrasis",tpt="peristalsis",ipt="perithecium",npt="peritoneum",apt="persona",opt="petechia",spt="pfennig",cpt="phalanx",lpt="phallus",upt="pharynx",gpt="phenomenon",dpt="philodendron",ppt="phlyctena",Ept="phylum",fpt="phyle",Bpt="phyllotaxis",hpt="phylloxera",Qpt="phylogenesis",mpt="pigfish",Dpt="pileum",_pt="pileus",wpt="pinetum",vpt="pinfish",ypt="pinko",Cpt="pinna",Ipt="pinnula",bpt="pipefish",Opt="pirog",Mpt="piscina",kpt="pithecanthropus",xpt="pithos",Hpt="placebo",Spt="placenta",Fpt="planetarium",Rpt="planula",Tpt="plasmodesma",Npt="plasmodium",Ppt="plateau",Gpt="plectrum",Ypt="plenum",Upt="pleuron",Lpt="pleura",jpt="plica",Wpt="ploughman",Jpt="pneumobacillus",qpt="pneumococcus",Vpt="pocketknife",zpt="podetium",Kpt="podium",Xpt="polis",Zpt="pollex",$pt="pollinium",AEt="polychasium",eEt="polyhedron",rEt="polyparium",tEt="polypus",iEt="polyzoan",nEt="polyzoarium",aEt="pons",oEt="pontifex",sEt="portamento",cEt="portico",lEt="portmanteau",uEt="postliminium",gEt="potato",dEt="praenomen",pEt="praxis",EEt="predella",fEt="premaxilla",BEt="prenomen",hEt="presa",QEt="primo",mEt="primigravida",DEt="primipara",_Et="primordium",wEt="principium",vEt="proboscis",yEt="proglottis",CEt="prognosis",IEt="prolegomenon",bEt="prolepsis",OEt="promycelium",Ele="pronephros",MEt="pronucleus",kEt="propositus",xEt="proptosis",HEt="propylon",SEt="propylaeum",FEt="proscenium",REt="prosencephalon",TEt="prosthesis",NEt="prostomium",PEt="protasis",GEt="prothalamium",YEt="prothallus",UEt="prothallium",LEt="prothorax",jEt="protonema",WEt="protozoan",JEt="proventriculus",qEt="proviso",VEt="prytaneum",zEt="psalterium",KEt="pseudopodium",XEt="psychoneurosis",ZEt="psychosis",$Et="pterygium",Aft="pteryla",eft="ptosis",rft="pubis",tft="pudendum",ift="pul",nft="pulvillus",aft="pulvinus",oft="punchinello",sft="pupa",cft="puparium",lft="putamen",uft="putto",gft="pycnidium",dft="pygidium",pft="pylorus",Eft="pyxis",fft="pyxidium",Bft="qaddish",hft="quadrennium",Qft="quadriga",mft="quale",Dft="quantum",_ft="quarterstaff",wft="quezal",vft="quinquennium",yft="quiz",Cft="rabato",Ift="rabbitfish",fle="rhachis",bft="radix",Oft="radius",Mft="radula",kft="ramentum",xft="ramus",Hft="ranula",Sft="ranunculus",Fft="raphe",Rft="raphide",Tft="ratfish",Ble="real",Nft="rearmouse",Pft="rectum",Gft="rectus",Yft="rectrix",Uft="redfish",Lft="redia",jft="referendum",Wft="refugium",Jft="regulus",qft="relatum",Vft="remex",zft="reremouse",Kft="reseau",Xft="residuum",Zft="responsum",$ft="rete",ABt="retiarius",eBt="reticulum",rBt="retinaculum",tBt="retina",iBt="rhabdomyoma",nBt="rachis",aBt="rhinencephalon",oBt="rhizobium",sBt="rhombus",cBt="rhonchus",lBt="rhyton",uBt="ribbonfish",hle="ricercare",gBt="rickettsia",dBt="rilievo",pBt="rima",EBt="rockfish",fBt="rom",BBt="rondeau",hBt="rosarium",QBt="rosefish",mBt="rostellum",DBt="rostrum",_Bt="rouleau",wBt="ruga",vBt="rumen",yBt="sacrum",CBt="sacrarium",IBt="saguaro",bBt="sailfish",OBt="salesperson",MBt="salmonella",kBt="salpa",xBt="salpinx",HBt="saltarello",SBt="salvo",FBt="sanctum",RBt="sanitarium",TBt="santims",NBt="saphena",PBt="sarcophagus",GBt="sartorius",YBt="sassanid",UBt="sawfish",LBt="scaldfish",jBt="scalenus",WBt="scapula",JBt="scarabaeus",qBt="scarf",VBt="schatchen",zBt="schema",KBt="scherzando",XBt="scherzo",ZBt="schmo",$Bt="scholium",Aht="schul",eht="schutzstaffel",rht="scirrhus",tht="scleroma",iht="sclerosis",nht="sclerotium",Qle="scolex",aht="scopula",oht="scoria",sht="scotoma",cht="scriptorium",lht="scrotum",uht="scudo",ght="scutum",dht="scutellum",pht="scyphus",Eht="scyphistoma",fht="scyphozoan",Bht="secondo",hht="segno",Qht="seleucid",mht="self",Dht="senor",_ht="sensillum",wht="sent",vht="senussi",yht="separatrix",Cht="sephardi",Iht="septum",bht="septarium",Oht="septennium",Mht="sequela",kht="sequestrum",xht="serum",Hht="seraph",Sht="sestertium",Fht="seta",Rht="sgraffito",Tht="shabbas",Nht="shabbat",Pht="shacko",mle="shadchan",Ght="shako",Yht="shammes",Uht="sheatfish",Lht="sheaf",jht="shellfish",Wht="shelf",Jht="shinleaf",qht="shittah",Vht="shmo",Dle="shophar",zht="shrewmouse",Kht="shul",Xht="siddur",Zht="siglos",$ht="signora",AQt="signore",eQt="signorina",rQt="siliqua",tQt="silva",iQt="silverfish",nQt="simulacrum",aQt="sinciput",oQt="sinfonia",sQt="sistrum",cQt="situla",lQt="smalto",uQt="snaggletooth",gQt="snailfish",dQt="snipefish",pQt="socman",EQt="solum",fQt="solarium",BQt="solatium",hQt="soldo",QQt="sol",mQt="solfeggio",DQt="solo",_Qt="solidus",wQt="soma",vQt="soprano",yQt="sordino",CQt="sorus",IQt="sorosis",bQt="sovkhoz",OQt="spadefish",MQt="spadix",kQt="spearfish",xQt="spectrum",HQt="speculum",SQt="spermatium",FQt="spermatogonium",RQt="spermatozoon",TQt="spermogonium",NQt="sphinx",PQt="spica",GQt="spiculum",YQt="spirillum",UQt="splayfoot",LQt="splenius",jQt="sporangium",WQt="sporogonium",JQt="sporozoan",qQt="springhaas",VQt="spumone",zQt="sputum",KQt="squama",XQt="squash",ZQt="squilla",$Qt="squirrelfish",A0t="squiz",e0t="stadium",r0t="stamen",t0t="staminodium",i0t="stapes",n0t="staphylococcus",_le="starets",a0t="starfish",o0t="stele",s0t="stemma",c0t="stenosis",l0t="stepchild",u0t="sternum",g0t="stigma",d0t="stimulus",p0t="stipes",E0t="stirps",f0t="stoa",B0t="stockfish",h0t="stoma",Q0t="stomodaeum",m0t="stomodeum",D0t="stonefish",wle="stotinka",_0t="strappado",w0t="stratum",v0t="stratus",y0t="stratocumulus",C0t="streptococcus",I0t="stretto",b0t="stria",O0t="strobilus",M0t="stroma",k0t="struma",x0t="stucco",H0t="stylus",S0t="stylops",F0t="stylopodium",R0t="subcortex",T0t="subdelirium",N0t="subgenus",P0t="subindex",G0t="submucosa",Y0t="subphylum",U0t="substratum",L0t="succedaneum",j0t="succubus",W0t="suckerfish",J0t="suckfish",q0t="sudarium",vle="sudatorium",V0t="sulcus",z0t="summa",K0t="sunfish",X0t="supercargo",Z0t="superhero",$0t="supernova",Amt="superstratum",emt="surgeonfish",rmt="swami",tmt="sweetiewife",imt="swellfish",nmt="swordfish",amt="syconium",omt="syllabus",smt="syllepsis",cmt="symphysis",lmt="sympodium",umt="symposium",gmt="synapsis",dmt="synarthrosis",pmt="synclinorium",Emt="syncytium",fmt="syndesmosis",Bmt="synopsis",hmt="syntagma",Qmt="synthesis",mmt="syphiloma",Dmt="syrinx",_mt="syssarcosis",wmt="tableau",vmt="taenia",ymt="talus",rpA="tallith",Cmt="tapetum",Imt="tarantula",bmt="tarsus",Omt="tarsometatarsus",Mmt="taxon",kmt="tax",xmt="taxi",Hmt="tectrix",Smt="tooth",Fmt="tegmen",Rmt="tela",Tmt="telamon",Nmt="telangiectasia",Pmt="telium",Gmt="tempo",Ymt="tenaculum",Umt="tenderfoot",Lmt="tenia",jmt="tenuis",Wmt="teraph",Jmt="teras",qmt="teredo",Vmt="tergum",zmt="terminus",Kmt="terrarium",Xmt="terzetto",Zmt="tessera",$mt="testa",A1t="testis",e1t="testudo",r1t="tetrahedron",t1t="tetraskelion",i1t="thalamencephalon",n1t="thalamus",a1t="thallus",o1t="theca",s1t="thyrse",c1t="thesaurus",l1t="thesis",u1t="thickleaf",g1t="thief",d1t="tholos",p1t="thorax",E1t="thrombus",f1t="thymus",B1t="thyrsus",h1t="tibia",Q1t="tilefish",m1t="tintinnabulum",D1t="titmouse",_1t="toadfish",w1t="tobacco",v1t="tomato",y1t="tomentum",C1t="tondo",I1t="tonneau",b1t="tophus",O1t="topos",M1t="torus",k1t="tornado",x1t="torpedo",H1t="torso",S1t="touraco",F1t="trabecula",R1t="trachea",T1t="traditor",N1t="tragus",P1t="trapezium",G1t="trapezohedron",Y1t="trauma",U1t="treponema",L1t="trichina",j1t="triclinium",W1t="triennium",J1t="triforium",q1t="triggerfish",V1t="trihedron",z1t="triskelion",K1t="trisoctahedron",X1t="triumvir",Z1t="trivium",$1t="trochlea",A4t="tropaeolum",e4t="trousseau",r4t="trunkfish",t4t="tryma",i4t="tuba",n4t="turf",a4t="tympanum",o4t="tyro",s4t="ubermensch",c4t="ugli",l4t="uighur",u4t="ulna",g4t="ultimatum",d4t="umbilicus",p4t="umbo",E4t="umbra",f4t="uncus",B4t="uredium",h4t="uredo",Q4t="uredinium",m4t="uredosorus",D4t="urethra",_4t="urinalysis",w4t="uterus",v4t="utriculus",y4t="uvula",C4t="vacuum",I4t="vagus",b4t="vagina",O4t="vallecula",M4t="vaporetto",k4t="varix",x4t="vas",H4t="vasculum",S4t="velum",F4t="velamen",R4t="velarium",T4t="vena",N4t="ventriculus",P4t="vermis",G4t="verruca",Y4t="vertebra",U4t="vertex",yle="vertigo",L4t="vesica",j4t="veto",W4t="vexillum",J4t="viaticum",q4t="viator",V4t="vibraculum",z4t="vibrissa",K4t="villus",X4t="vimen",Z4t="vinculum",$4t="virago",ADt="vis",eDt="virtuoso",rDt="vita",tDt="vitellus",iDt="vitta",nDt="vivarium",aDt="vox",oDt="volcano",sDt="volkslied",cDt="volta",lDt="volva",uDt="vorticella",gDt="vortex",dDt="vulva",pDt="wahhabi",EDt="wanderjahr",fDt="weakfish",BDt="werewolf",hDt="wharf",QDt="whitefish",mDt="wife",DDt="wolffish",_Dt="wolf",wDt="woman",vDt="woodlouse",yDt="wreckfish",CDt="wunderkind",IDt="xiphisternum",Cle="yeshiva",bDt="yogi",ODt="yourself",MDt="zamindari",kDt="zecchino",xDt="zero",HDt="zoon",Ile="zoaea",SDt="zoea",FDt="zoonosis";W.aardwolves=yjr,W.abaci=Cjr,W.aboideaux=Ijr,W.aboiteaux=bjr,W.abscissae=Ojr,W.acanthi=Mjr,W.acari=kjr,W.acciaccature=xjr,W.acetabula=Hjr,W.achaemenidae=Rce,W.achaemenides=Rce,W.acicula=Sjr,W.aciculae=Fjr,W.acini=Rjr,W.acromia=Tjr,W.actiniae=Njr,W.actinozoa=Pjr,W.addenda=Gjr,W.adenocarcinomata=Yjr,W.adenomata=Ujr,W.adieux=Ljr,W.adyta=jjr,W.aecia=Wjr,W.aecidia=Jjr,W.aerobia=qjr,W.aggiornamenti=Vjr,W.agnomina=zjr,W.agones=Kjr,W.agorae=Xjr,W.agouties=Zjr,W.alae=$jr,W.alewives=AWr,W.alkalies=eWr,W.allodia=rWr,W.alluvia=tWr,W.alodia=iWr,W.altocumuli=nWr,W.altostrati=aWr,W.alulae=oWr,W.alumnae=sWr,W.alumni=cWr,W.alveoli=lWr,W.amanuenses=uWr,W.ambulacra=gWr,W.amebae=dWr,W.amnia=pWr,W.amniocenteses=EWr,W.amoebae=fWr,W.amoebiases=BWr,W.amoraim=hWr,W.amoretti=QWr,W.amorini=mWr,W.amphiarthroses=DWr,W.amphicia=_Wr,W.amphimixes=wWr,W.amphioxi=vWr,W.amphisbaenae=yWr,W.amphorae=CWr,W.ampullae=IWr,W.amygdalae=bWr,W.anabases=OWr,W.anacolutha=MWr,W.anacruses=kWr,W.anaerobia=xWr,W.anagnorises=HWr,W.analemmata=SWr,W.analyses=FWr,W.anamneses=RWr,W.anamorphoses=TWr,W.anastomoses=NWr,W.anatyxes=PWr,W.ancones=GWr,W.androclinia=YWr,W.androecia=UWr,W.androsphinges=LWr,W.andtheridia=Tce,W.angelfishes=jWr,W.angiomata=WWr,W.animalcula=JWr,W.anlagen=qWr,W.annattos=VWr,W.annuli=zWr,W.antae=KWr,W.antalkalies=XWr,W.antefixa=ZWr,W.antennae=$Wr,W.antependia=AJr,W.anthelia=eJr,W.anthelices=rJr,W.anthemia=tJr,W.antheridia=Tce,W.anthodia=iJr,W.anthozoa=nJr,W.anthraces=aJr,W.anticlinoria=oJr,W.antihelices=sJr,W.antiheroes=cJr,W.antisera=lJr,W.antitheses=uJr,W.antitragi=gJr,W.antra=dJr,W.anus=pJr,W.aortae=EJr,W.aphelia=fJr,W.aphides=BJr,W.apices=hJr,W.apodoses=QJr,W.apomixes=mJr,W.aponeuroses=DJr,W.apophyses=_Jr,W.aposiopeses=wJr,W.apothecia=vJr,W.apotheoses=yJr,W.apparatus=CJr,W.appendices=IJr,W.appoggiature=bJr,W.apsides=OJr,W.aquae=MJr,W.aquaria=kJr,W.araglis=Nce,W.arboreta=xJr,W.arcana=HJr,W.archegonia=SJr,W.archerfishes=FJr,W.archesporia=RJr,W.archipelagoes=TJr,W.areolae=NJr,W.argali=Nce,W.argumenta=PJr,W.ariette=GJr,W.aristae=YJr,W.armamentaria=UJr,W.arses=LJr,W.artal=Pce,W.artel=Pce,W.arterioscleroses=jJr,W.aruspices=WJr,W.asceses=JJr,W.asci=qJr,W.ascidia=VJr,W.ascogonia=zJr,W.ashes=KJr,W.ashkenazim=XJr,W.aspergilla=ZJr,W.aspergilli=$Jr,W.aspergilloses=Aqr,W.aspersoria=eqr,W.assegais=rqr,W.astragali=tqr,W.asyndeta=iqr,W.atheromata=nqr,W.atheroscleroses=aqr,W.atmolyses=oqr,W.atria=sqr,W.auditoria=cqr,W.aurae=lqr,W.aurar=uqr,W.aurei=gqr,W.auriculae=dqr,W.aurorae=pqr,W.auspices=Eqr,W.autocatalyses=fqr,W.autochthones=Bqr,W.automata=hqr,W.avitaminoses=Qqr,W.axes=mqr,W.axillae=Dqr,W.bacchantes=_qr,W.bacchii=wqr,W.bacilli=vqr,W.bacteriostases=yqr,W.bacula=Cqr,W.ballistae=Iqr,W.bambini=bqr,W.bandeaux=Oqr,W.banditti=Mqr,W.bani=kqr,W.banjoes=xqr,W.barklice=Hqr,W.barramundies=Sqr,W.bases=Fqr,W.basidia=Rqr,W.basileis=Tqr,W.bassi=Nqr,W.bastinadoes=Pqr,W.bateaux=Gqr,W.batfishes=Yqr,W.beadsmen=Uqr,W.beaux=Lqr,W.beeves=jqr,W.behooves=Wqr,W.bersaglieri=Jqr,W.bhishties=qqr,W.bibliothecae=Vqr,W.bicennaries=zqr,W.bijoux=Kqr,W.bilboes=Xqr,W.billfishes=Zqr,W.bimboes=$qr,W.bisectrices=AVr,W.blackfeet=eVr,W.blackfishes=rVr,W.blastemata=tVr,W.blastulae=iVr,W.blindfishes=nVr,W.blowfishes=aVr,W.bluefishes=oVr,W.boarfishes=sVr,W.bok=ApA,W.boleti=cVr,W.bolivares=lVr,W.bolsheviki=uVr,W.bonefishes=gVr,W.bongoes=dVr,W.bonitoes=pVr,W.booklice=EVr,W.bookshelves=fVr,W.boraces=BVr,W.borborygmi=hVr,W.bordereaux=QVr,W.botargoes=mVr,W.boxfishes=DVr,W.brachia=_Vr,W.brainchildren=wVr,W.branchiae=vVr,W.brants=yVr,W.bravadoes=CVr,W.bravoes=IVr,W.bregmata=bVr,W.brethren=OVr,W.broadleaves=MVr,W.bronchi=kVr,W.bryozoa=xVr,W.buboes=HVr,W.buckoes=SVr,W.buckteeth=FVr,W.buffaloes=RVr,W.bullae=TVr,W.bunde=NVr,W.bureaux=PVr,W.bursae=GVr,W.bushbok=ApA,W.bushboks=ApA,W.busses=YVr,W.butterfishes=UVr,W.byssi=LVr,W.cacti=jVr,W.caducei=WVr,W.caeca=JVr,W.caesurae=qVr,W.calami=VVr,W.calathi=zVr,W.calcanei=KVr,W.calces=XVr,W.calculi=ZVr,W.caldaria=$Vr,W.calices=Azr,W.calicoes=ezr,W.calli=rzr,W.calves=tzr,W.calyces=izr,W.cambia=nzr,W.camerae=azr,W.canaliculi=ozr,W.candelabra=szr,W.candlefishes=czr,W.canthi=lzr,W.canulae=uzr,W.canzoni=gzr,W.capita=dzr,W.capitula=pzr,W.capricci=Ezr,W.carabinieri=fzr,W.carbonadoes=Bzr,W.carcinomata=hzr,W.cargoes=Qzr,W.carides=mzr,W.carinae=Dzr,W.caroli=_zr,W.carpi=wzr,W.carpogonia=vzr,W.caryopses=Gce,W.caryopsides=Gce,W.castrati=yzr,W.catabases=Czr,W.cataclases=Izr,W.cataloes=bzr,W.catalyses=Ozr,W.catenae=Mzr,W.catfishes=kzr,W.cathari=xzr,W.cathexes=Hzr,W.cattaloes=Szr,W.caudices=Fzr,W.caules=Rzr,W.cavatine=Tzr,W.cavefishes=Nzr,W.cavetti=Pzr,W.ceca=Gzr,W.cellae=Yzr,W.cembali=Uzr,W.centesimi=Lzr,W.centra=jzr,W.cephalothoraces=Wzr,W.cercariae=Yce,W.cercariiae=Yce,W.cerci=Jzr,W.cerebella=qzr,W.cerebra=Vzr,W.cervices=zzr,W.cestuses=Kzr,W.cesurae=Xzr,W.chadarim=Uce,W.chaetae=Zzr,W.chalazae=$zr,W.challoth=tpA,W.chalutzim=AKr,W.chapaties=eKr,W.chapatties=rKr,W.chapeaux=tKr,W.chasidim=iKr,W.chassidim=nKr,W.chateaux=aKr,W.chazanim=oKr,W.chedarim=Uce,W.chelae=sKr,W.chelicerae=cKr,W.cherubim=lKr,W.chiasmata=uKr,W.chiasmi=gKr,W.children=dKr,W.chillies=pKr,W.chitarroni=EKr,W.chlamydes=Lce,W.chlamyses=Lce,W.chondromata=fKr,W.choragi=BKr,W.choriambi=hKr,W.choux=QKr,W.chromonemata=mKr,W.chrysalides=DKr,W.chuvashes=_Kr,W.ciboria=wKr,W.cicadae=vKr,W.cicale=yKr,W.cicatrices=CKr,W.ciceroni=IKr,W.cicisbei=bKr,W.cilia=OKr,W.cimices=MKr,W.cineraria=kKr,W.cingula=xKr,W.cirri=HKr,W.cirrocumuli=SKr,W.cirrostrati=FKr,W.ciscoes=RKr,W.cisternae=TKr,W.clani=jce,W.clanos=jce,W.claroes=NKr,W.clepsydrae=PKr,W.clinandria=GKr,W.clingfishes=YKr,W.clitella=UKr,W.cloacae=LKr,W.clostridia=jKr,W.cloverleaves=WKr,W.clypei=JKr,W.coagula=qKr,W.coalfishes=VKr,W.cocci=zKr,W.coccyges=KKr,W.cochleae=XKr,W.codfishes=ZKr,W.codices=$Kr,W.coelentera=AXr,W.coenuri=eXr,W.cognomina=rXr,W.cognosenti=tXr,W.cola=Wce,W.coleorhizae=iXr,W.collegia=nXr,W.colloquia=aXr,W.colluvia=oXr,W.collyria=sXr,W.colones=Wce,W.colossi=cXr,W.columbaria=lXr,W.columellae=uXr,W.comae=gXr,W.comatulae=dXr,W.comedones=pXr,W.comics=EXr,W.commandoes=fXr,W.concertanti=BXr,W.concerti=hXr,W.concertini=QXr,W.conchae=mXr,W.condottieri=DXr,W.condylomata=_Xr,W.confervae=wXr,W.congii=vXr,W.conidia=yXr,W.conjunctivae=CXr,W.conquistadores=IXr,W.consortia=bXr,W.contagia=OXr,W.continua=MXr,W.contralti=kXr,W.conversazioni=xXr,W.convolvuli=HXr,W.copulae=SXr,W.corbiculae=FXr,W.coria=RXr,W.corneae=TXr,W.cornua=NXr,W.coronae=PXr,W.corpora=GXr,W.corrigenda=YXr,W.cortices=UXr,W.cortinae=LXr,W.corybantes=jXr,W.coryphaei=WXr,W.costae=JXr,W.cothurni=qXr,W.couteaux=VXr,W.cowfishes=zXr,W.coxae=KXr,W.cramboes=XXr,W.crania=ZXr,W.crases=$Xr,W.crawfishes=AZr,W.crayfishes=eZr,W.credenda=rZr,W.crematoria=tZr,W.crescendi=iZr,W.cribella=nZr,W.crises=aZr,W.crissa=oZr,W.cristae=sZr,W.criteria=cZr,W.cruces=lZr,W.crura=uZr,W.crusadoes=gZr,W.cruzadoes=dZr,W.crying=Jce,W.cryings=Jce,W.ctenidia=pZr,W.cubicula=EZr,W.culices=fZr,W.culpae=BZr,W.culti=hZr,W.cumuli=QZr,W.cumulonimbi=mZr,W.cumulostrati=DZr,W.curiae=_Zr,W.curricula=wZr,W.custodes=vZr,W.cutes=yZr,W.cuticulae=CZr,W.cuttlefishes=IZr,W.cyclopes=bZr,W.cycloses=OZr,W.cylices=qce,W.cylikes=qce,W.cymae=MZr,W.cymatia=kZr,W.cypselae=xZr,W.cysticerci=HZr,W.dadoes=SZr,W.dagoes=FZr,W.damselfishes=RZr,W.data=TZr,W.daymio=Vce,W.daymios=Vce,W.dealfishes=NZr,W.decemviri=PZr,W.decennia=GZr,W.deciduae=YZr,W.definienda=UZr,W.definientia=LZr,W.delphinia=jZr,W.denarii=WZr,W.dentalia=JZr,W.dermatoses=qZr,W.desiderata=VZr,W.desperadoes=zZr,W.devilfishes=KZr,W.diaereses=zce,W.diaerses=zce,W.diagnoses=XZr,W.dialyses=ZZr,W.diaphyses=$Zr,W.diapophyses=A$r,W.diarthroses=e$r,W.diastalses=r$r,W.diastases=t$r,W.diastemata=Kce,W.diastemata=Kce,W.diathses=i$r,W.diazoes=n$r,W.dibbukkim=a$r,W.dichasia=o$r,W.dicta=s$r,W.didoes=c$r,W.diereses=l$r,W.dieses=u$r,W.differentiae=g$r,W.dilettanti=d$r,W.diluvia=p$r,W.dingoes=E$r,W.diplococci=f$r,W.disci=B$r,W.discoboli=h$r,W.dive=Q$r,W.diverticula=m$r,W.divertimenti=D$r,W.djinn=_$r,W.dodoes=w$r,W.dogfishes=v$r,W.dogmata=y$r,W.dogteeth=C$r,W.dollarfishes=I$r,W.domatia=b$r,W.dominoes=O$r,W.dormice=M$r,W.dorsa=k$r,W.drachmae=x$r,W.drawknives=H$r,W.drosophilae=S$r,W.drumfishes=F$r,W.dryades=R$r,W.dui=T$r,W.duona=Xce,W.duonas=Xce,W.dupondii=N$r,W.duumviri=P$r,W.dwarves=G$r,W.dybbukkim=Y$r,W.ecchymoses=U$r,W.ecclesiae=L$r,W.ecdyses=j$r,W.echidnae=W$r,W.echini=J$r,W.echinococci=q$r,W.echoes=V$r,W.ectozoa=z$r,W.eddoes=K$r,W.edemata=X$r,W.effluvia=Z$r,W.eidola=$$r,W.eisegeses=AAt,W.eisteddfodau=eAt,W.elenchi=rAt,W.ellipses=tAt,W.eluvia=iAt,W.elves=nAt,W.elytra=aAt,W.embargoes=oAt,W.emboli=sAt,W.emphases=cAt,W.emporia=lAt,W.enarthroses=uAt,W.encephala=gAt,W.encephalitides=dAt,W.encephalomata=pAt,W.enchiridia=EAt,W.enchondromata=fAt,W.encomia=BAt,W.endamebae=hAt,W.endamoebae=QAt,W.endocardia=mAt,W.endocrania=DAt,W.endometria=_At,W.endostea=wAt,W.endostoses=vAt,W.endothecia=yAt,W.endothelia=CAt,W.endotheliomata=IAt,W.endozoa=bAt,W.enemata=OAt,W.enneahedra=MAt,W.entamebae=kAt,W.entamoebae=xAt,W.entases=HAt,W.entera=SAt,W.entia=FAt,W.entozoa=RAt,W.epencephala=TAt,W.epentheses=NAt,W.epexegeses=PAt,W.ephemera=GAt,W.ephemerae=YAt,W.ephemerides=UAt,W.ephori=LAt,W.epicalyces=jAt,W.epicanthi=WAt,W.epicardia=JAt,W.epicedia=qAt,W.epicleses=VAt,W.epididymides=zAt,W.epigastria=KAt,W.epiglottides=XAt,W.epimysia=ZAt,W.epiphenomena=$At,W.epiphyses=Aet,W.episterna=eet,W.epithalamia=tet,W.epithelia=iet,W.epitheliomata=net,W.epizoa=aet,W.epyllia=oet,W.equilibria=set,W.equiseta=cet,W.eringoes=uet,W.errata=get,W.eryngoes=det,W.esophagi=pet,W.etyma=Eet,W.eucalypti=fet,W.eupatridae=Bet,W.euripi=het,W.exanthemata=Qet,W.executrices=met,W.exegeses=Det,W.exempla=_et,W.exordia=wet,W.exostoses=vet,W.extrema=yet,W.eyeteeth=Cet,W.fabliaux=Iet,W.faciae=bet,W.faculae=Oet,W.faeroese=Met,W.fallfishes=ket,W.famuli=xet,W.faroese=Het,W.farragoes=Fet,W.fasciae=Ret,W.fasciculi=Tet,W.fatsoes=Net,W.faunae=Pet,W.feculae=Get,W.fedayeen=Yet,W.feet=Uet,W.fellaheen=Zce,W.fellahin=Zce,W.femora=Let,W.fenestellae=jet,W.fenestrae=Wet,W.feriae=Jet,W.fermate=qet,W.ferulae=Vet,W.festschriften=zet,W.fetiales=Ket,W.fezzes=Xet,W.fiascoes=Zet,W.fibrillae=$et,W.fibromata=Art,W.fibulae=ert,W.ficoes=rrt,W.fideicommissa=trt,W.fieldmice=irt,W.figs=nrt,W.fila=art,W.filariiae=ort,W.filefishes=srt,W.fimbriae=crt,W.fishes=lrt,W.fishwives=urt,W.fistulae=grt,W.flabella=drt,W.flagella=prt,W.flagstaves=Ert,W.flambeaux=frt,W.flamines=Brt,W.flamingoes=hrt,W.flatfeet=Qrt,W.flatfishes=mrt,W.flittermice=Drt,W.flocci=_rt,W.flocculi=wrt,W.florae=vrt,W.floreant=yrt,W.florilegia=Crt,W.flyleaves=Irt,W.foci=brt,W.folia=Ort,W.fora=Mrt,W.foramina=krt,W.forceps=xrt,W.forefeet=Hrt,W.foreteeth=Srt,W.formicaria=Frt,W.formulae=Rrt,W.fornices=Trt,W.fortes=Nrt,W.fossae=Prt,W.foveae=Grt,W.foveolae=Yrt,W.fractocumuli=Urt,W.fractostrati=Lrt,W.fraena=jrt,W.frauen=Wrt,W.frena=Jrt,W.frenula=qrt,W.frescoes=Vrt,W.fricandeaux=zrt,W.fricandoes=Krt,W.frijoles=Xrt,W.frogfishes=Zrt,W.frontes=$rt,W.frusta=Att,W.fuci=ett,W.fulcra=rtt,W.fumatoria=ttt,W.fundi=itt,W.fungi=ntt,W.funiculi=att,W.furcula=ott,W.furculae=stt,W.furfures=ctt,W.galeae=ltt,W.gambadoes=utt,W.gametangia=gtt,W.gametoecia=dtt,W.gammadia=ptt,W.ganglia=Ett,W.garfishes=ftt,W.gas=$ce,W.gasses=$ce,W.gastrulae=Btt,W.gateaux=htt,W.gazeboes=Qtt,W.geckoes=mtt,W.geese=Dtt,W.gelsemia=_tt,W.gemboks=wtt,W.gembucks=vtt,W.gemeinschaften=ytt,W.gemmae=Ctt,W.genera=Ale,W.generatrices=Itt,W.geneses=btt,W.genii=Ott,W.gentes=Mtt,W.genua=ktt,W.genus=Ale,W.germina=xtt,W.gesellschaften=Htt,W.gestalten=Stt,W.ghettoes=Ftt,W.gingivae=Rtt,W.gingkoes=Ttt,W.ginglymi=Ntt,W.ginkgoes=Ptt,W.gippoes=Gtt,W.glabellae=Ytt,W.gladioli=Utt,W.glandes=Ltt,W.gliomata=jtt,W.glissandi=Wtt,W.globefishes=Jtt,W.globigerinae=qtt,W.glochidcia=ele,W.glochidia=ele,W.glomeruli=Vtt,W.glossae=ztt,W.glottides=Ktt,W.glutaei=Xtt,W.glutei=Ztt,W.gnoses=$tt,W.goatfishes=Ait,W.goboes=eit,W.godchildren=rit,W.goes=tit,W.goldfishes=iit,W.gomphoses=nit,W.gonia=ait,W.gonidia=oit,W.gonococci=sit,W.goodwives=cit,W.goosefishes=lit,W.gorgoneia=uit,W.gospopoda=git,W.goyim=dit,W.gps=pit,W.grafen=Eit,W.graffiti=fit,W.grandchildren=Bit,W.granulomata=hit,W.gravamina=Qit,W.groszy=mit,W.grottoes=Dit,W.guilder=rle,W.guilders=rle,W.guitarfishes=_it,W.gummata=wit,W.gurnard=tle,W.gurnards=tle;W.guttae=vit,W.gymnasia=yit,W.gynaecea=Cit,W.gynaecia=Iit,W.gynecea=ile,W.gynecia=ile,W.gynoecea=nle,W.gynoecia=nle,W.gyri=bit,W.hadarim=Oit,W.hadjes=Mit,W.haematolyses=kit,W.haematomata=xit,W.haematozoa=Hit,W.haemodialyses=Sit,W.haemolyses=Fit,W.haemoptyses=Rit,W.haeredes=Tit,W.haftaroth=Nit,W.hagfishes=Pit,W.haggadas=Git,W.haggadoth=Yit,W.hajjes=Uit,W.haleru=Lit,W.halfpence=jit,W.hallot=tpA,W.halloth=tpA,W.halluces=Wit,W.haloes=Jit,W.halteres=qit,W.halves=Vit,W.hamuli=zit,W.haphtaroth=Kit,W.haredim=Xit,W.haruspices=Zit,W.hasidim=$it,W.hassidim=Ant,W.haustella=ent,W.haustoria=rnt,W.hazzanim=tnt,W.hectocotyli=int,W.heldentenore=nnt,W.helices=ant,W.heliozoa=ont,W.hematolyses=snt,W.hematomata=cnt,W.hematozoa=lnt,W.hemelytra=unt,W.hemielytra=gnt,W.hemodialyses=dnt,W.hemolyses=pnt,W.hemoptyses=Ent,W.hendecahedra=fnt,W.heraclidae=Bnt,W.heraklidae=hnt,W.herbaria=Qnt,W.hermae=ale,W.hermai=ale,W.herniae=mnt,W.heroes=Dnt,W.herren=_nt,W.hetaerae=wnt,W.hetairai=vnt,W.hibernacula=ynt,W.hieracosphinges=Cnt,W.hila=Int,W.hili=bnt,W.himatia=Ont,W.hippocampi=Mnt,W.hippopotami=knt,W.his=xnt,W.hoboes=Hnt,W.hogfishes=Snt,W.homunculi=Fnt,W.honoraria=Rnt,W.hooves=Tnt,W.horologia=Nnt,W.housewives=Pnt,W.humeri=Gnt,W.hydrae=Ynt,W.hydromedusae=Unt,W.hydrozoa=Lnt,W.hymenoptera=jnt,W.hynia=ole,W.hyniums=ole,W.hypanthia=Wnt,W.hyperostoses=Jnt,W.hyphae=qnt,W.hypnoses=Vnt,W.hypochondria=znt,W.hypogastria=Knt,W.hypogea=Xnt,W.hypophyses=Znt,W.hypostases=$nt,W.hypothalami=Aat,W.hypotheses=eat,W.hyraces=rat,W.iambi=tat,W.ibices=iat,W.ibo=nat,W.ichthyosauri=aat,W.ichthyosauruses=oat,W.iconostases=sat,W.icosahedra=cat,W.ideata=lat,W.igorrorote=uat,W.ilia=gat,W.imagines=sle,W.imagoes=sle,W.imperia=dat,W.impies=pat,W.incubi=Eat,W.incudes=fat,W.indices=Bat,W.indigoes=hat,W.indumenta=Qat,W.indusia=mat,W.infundibula=Dat,W.ingushes=_at,W.innuendoes=wat,W.inocula=vat,W.insectaria=yat,W.insulae=Cat,W.intagli=Iat,W.interleaves=bat,W.intermezzi=Oat,W.interreges=Mat,W.interregna=kat,W.intimae=xat,W.involucella=Hat,W.involucra=Sat,W.irides=Fat,W.irs=Rat,W.is=Tat,W.ischia=Nat,W.isthmi=Pat,W.jackeroos=Gat,W.jackfishes=Yat,W.jackknives=Uat,W.jambeaux=Lat,W.jellyfishes=jat,W.jewelfishes=Wat,W.jewfishes=Jat,W.jingoes=qat,W.jinn=Vat,W.joes=zat,W.jura=Kat,W.kaddishim=Xat,W.kalmuck=cle,W.kalmucks=cle,W.katabases=Zat,W.keeshonden=$at,W.kibbutzim=Aot,W.killifishes=eot,W.kingfishes=rot,W.knives=tot,W.kohlrabies=iot,W.kronen=lle,W.kroner=lle,W.kronur=not,W.krooni=aot,W.kylikes=oot,W.labara=sot,W.labella=cot,W.labia=lot,W.labra=uot,W.lactobacilli=got,W.lacunae=dot,W.lacunaria=pot,W.lamellae=Eot,W.lamiae=fot,W.laminae=Bot,W.lapilli=hot,W.lapithae=Qot,W.larvae=mot,W.larynges=Dot,W.lassoes=_ot,W.lati=ule,W.latices=wot,W.latifundia=vot,W.latu=ule,W.lavaboes=yot,W.leaves=Cot,W.lecythi=Iot,W.leges=bot,W.lei=Oot,W.lemmata=Mot,W.lemnisci=kot,W.lenes=xot,W.lentigines=Hot,W.leonides=Sot,W.lepidoptera=Fot,W.leprosaria=Rot,W.lepta=Tot,W.leptocephali=Not,W.leucocytozoa=Pot,W.leva=Got,W.librae=Yot,W.libretti=Uot,W.lice=Lot,W.lieder=jot,W.ligulae=Wot,W.limbi=Jot,W.limina=qot,W.limites=Vot,W.limuli=zot,W.lingoes=Kot,W.linguae=Xot,W.lionfishes=Zot,W.lipomata=$ot,W.lire=Ast,W.liriodendra=est,W.lisente=gle,W.listente=gle,W.litai=dle,W.litu=dle,W.lives=rst,W.lixivia=tst,W.loaves=ist,W.loci=nst,W.loculi=ast,W.loggie=ost,W.logia=sst,W.lomenta=cst,W.longobardi=lst,W.loricae=ust,W.luba=gst,W.lubritoria=dst,W.lumbi=pst,W.lumina=Est,W.lumpfishes=fst,W.lungfishes=Bst,W.lunulae=hst,W.lures=Qst,W.lustra=mst,W.lymphangitides=Dst,W.lymphomata=_st,W.lymphopoieses=wst,W.lyses=vst,W.lyttae=yst,W.maare=Cst,W.macaronies=Ist,W.maccaronies=bst,W.machzorim=Ost,W.macronuclei=Mst,W.macrosporangia=kst,W.maculae=xst,W.madornos=Hst,W.maestri=Sst,W.mafiosi=Fst,W.magi=Rst,W.magmata=Tst,W.magnificoes=Nst,W.mahzorim=Pst,W.makuta=Gst,W.mallei=Yst,W.malleoli=Ust,W.maloti=Lst,W.mamillae=jst,W.mammae=Wst,W.mammillae=Jst,W.mandingoes=qst,W.mangoes=Vst,W.manifestoes=zst,W.manteaux=Kst,W.mantes=Xst,W.manubria=Zst,W.marchese=$st,W.marchesi=Act,W.maremme=ect,W.markkaa=rct,W.marsupia=tct,W.matrices=ict,W.matzoth=nct,W.mausolea=act,W.maxillae=oct,W.maxima=sct,W.media=cct,W.mediae=lct,W.mediastina=uct,W.medullae=gct,W.medusae=dct,W.megara=pct,W.megasporangia=Ect,W.megilloth=fct,W.meioses=Bct,W.melanomata=hct,W.melismata=Qct,W.mementoes=mct,W.memoranda=Dct,W.men=_ct,W.menisci=wct,W.menservants=vct,W.menstrua=yct,W.mesdames=Cct,W.mesdemoiselles=Ict,W.mesentera=bct,W.mesothoraces=Oct,W.messeigneurs=Mct,W.messieurs=kct,W.mestizoes=xct,W.metacarpi=Hct,W.metamorphoses=Sct,W.metanephroi=Fct,W.metastases=Rct,W.metatarsi=Tct,W.metatheses=Nct,W.metathoraces=Pct,W.metazoa=Gct,W.metempsychoses=Yct,W.metencephala=Uct,W.mezuzoth=Lct,W.miasmata=jct,W.mice=Wct,W.microanalyses=Jct,W.micrococci=qct,W.micronuclei=Vct,W.microsporangia=zct,W.midrashim=Kct,W.midwives=Xct,W.milia=Zct,W.milieux=$ct,W.milkfishes=Alt,W.millennia=elt,W.minae=rlt,W.minima=tlt,W.ministeria=ilt,W.minutiae=nlt,W.minyanim=alt,W.mioses=olt,W.miracidia=slt,W.miri=clt,W.mitochondria=llt,W.mitzvoth=ult,W.modioli=glt,W.moduli=dlt,W.momenta=plt,W.momi=Elt,W.monades=flt,W.monkfishes=Blt,W.monochasia=hlt,W.monopodia=Qlt,W.monoptera=mlt,W.monopteroi=Dlt,W.monsignori=_lt,W.mooncalves=wlt,W.moonfishes=vlt,W.morae=ylt,W.moratoria=Clt,W.morceaux=Ilt,W.morescoes=blt,W.moriscoes=Olt,W.morphallaxes=Mlt,W.morphoses=klt,W.morulae=xlt,W.mosasauri=Hlt,W.moshavim=Slt,W.moslim=ple,W.moslims=ple,W.mosquitoes=Flt,W.mottoes=Rlt,W.mucosae=Tlt,W.mucrones=Nlt,W.mudejares=Plt,W.mudfishes=Glt,W.mulattoes=Ylt,W.multiparae=Ult,W.murices=Llt,W.muskallunge=jlt,W.mycelia=Wlt,W.mycetomata=Jlt,W.mycobacteria=qlt,W.mycorrhizae=Vlt,W.myelencephala=zlt,W.myiases=Klt,W.myocardia=Xlt,W.myofibrillae=Zlt,W.myomata=$lt,W.myoses=Aut,W.myrmidones=eut,W.mythoi=rut,W.myxomata=tut,W.naevi=iut,W.naiades=nut,W.naoi=aut,W.narcissi=sut,W.nares=cut,W.nasopharynges=lut,W.natatoria=uut,W.naumachiae=gut,W.nauplii=dut,W.nautili=put,W.navahoes=Eut,W.navajoes=fut,W.nebulae=But,W.necropoleis=hut,W.needlefishes=Qut,W.negrilloes=mut,W.negritoes=Dut,W.negroes=_ut,W.nemeses=wut,W.nephridia=vut,W.nereides=yut,W.neurohypophyses=Cut,W.neuromata=Iut,W.neuroptera=but,W.neuroses=Out,W.nevi=Mut,W.nibelungen=kut,W.nidi=xut,W.nielli=Hut,W.nilgai=Sut,W.nimbi=Fut,W.nimbostrati=Rut,W.noctilucae=Tut,W.nodi=Nut,W.noes=Put,W.nomina=Gut,W.nota=Yut,W.noumena=Uut,W.novae=Lut,W.novelle=jut,W.novenae=Wut,W.nubeculae=Jut,W.nucelli=qut,W.nuchae=Vut,W.nuclei=zut,W.nucleoli=Kut,W.nulliparae=Xut,W.numbfishes=Zut,W.numina=$ut,W.nymphae=Agt,W.oarfishes=egt,W.oases=rgt,W.obeli=tgt,W.obligati=igt,W.oboli=ngt,W.occipita=agt,W.oceanaria=ogt,W.oceanides=sgt,W.ocelli=cgt,W.ochreae=lgt,W.ocreae=ugt,W.octahedra=ggt,W.octopi=dgt,W.oculi=pgt,W.odea=Egt,W.oedemata=fgt,W.oesophagi=Bgt,W.oldwives=hgt,W.olea=Qgt,W.omasa=mgt,W.omayyades=Dgt,W.omenta=_gt,W.ommatidia=wgt,W.ommiades=vgt,W.onagri=ygt,W.oogonia=Cgt,W.oothecae=Igt,W.opercula=bgt,W.optima=Ogt,W.ora=epA,W.organa=Mgt,W.organums=kgt,W.orthoptera=xgt,W.osar=epA,W.oscula=Hgt,W.ossa=epA,W.osteomata=Sgt,W.ostia=Fgt,W.ottomans=Rgt,W.ova=Tgt,W.ovoli=Ngt,W.ovotestes=Pgt,W.oxen=Ggt,W.oxymora=Ygt,W.paddlefishes=Ugt,W.paise=Lgt,W.paleae=jgt,W.palestrae=Wgt,W.palingeneses=Jgt,W.pallia=qgt,W.palmettoes=Vgt,W.palpi=zgt,W.pancratia=Kgt,W.panettoni=Xgt,W.paparazzi=Zgt,W.paperknives=$gt,W.papillae=Adt,W.papillomata=edt,W.pappi=rdt,W.papulae=tdt,W.papyri=idt,W.parabases=ndt,W.paraleipses=adt,W.paralyses=odt,W.paramecia=sdt,W.paramenta=cdt,W.paraphyses=ldt,W.parapodia=udt,W.parapraxes=gdt,W.paraselenae=ddt,W.parashoth=pdt,W.parasyntheta=Edt,W.parazoa=fdt,W.parentheses=Bdt,W.parerga=hdt,W.parhelia=Qdt,W.parietes=mdt,W.parrotfishes=Ddt,W.parulides=_dt,W.pastorali=wdt,W.patagia=vdt,W.patellae=ydt,W.patinae=Cdt,W.patresfamilias=Idt,W.pease=bdt,W.peccadilloes=Odt,W.pectines=Mdt,W.pedaloes=kdt,W.pedes=xdt,W.pekingese=Hdt,W.pelves=Sdt,W.pence=Fdt,W.penes=Rdt,W.penetralia=Tdt,W.penicillia=Ndt,W.penknives=Pdt,W.pennae=Gdt,W.pennia=Ydt,W.pentahedra=Udt,W.pentimenti=Ldt,W.penumbrae=jdt,W.pepla=Wdt,W.pericardia=Jdt,W.perichondria=qdt,W.pericrania=Vdt,W.peridia=zdt,W.perigonia=Kdt,W.perihelia=Xdt,W.perinea=Zdt,W.perinephria=$dt,W.perionychia=Apt,W.periostea=ept,W.periphrases=rpt,W.peristalses=tpt,W.perithecia=ipt,W.peritonea=npt,W.personae=apt,W.petechiae=opt,W.pfennige=spt,W.phalanges=cpt,W.phalli=lpt,W.pharynges=upt,W.phenomena=gpt,W.philodendra=dpt,W.phlyctenae=ppt,W.phyla=Ept,W.phylae=fpt,W.phyllotaxes=Bpt,W.phylloxerae=hpt,W.phylogeneses=Qpt,W.pigfishes=mpt,W.pilea=Dpt,W.pilei=_pt,W.pineta=wpt,W.pinfishes=vpt,W.pinkoes=ypt,W.pinnae=Cpt,W.pinnulae=Ipt,W.pipefishes=bpt,W.pirogi=Opt,W.piscinae=Mpt,W.pithecanthropi=kpt,W.pithoi=xpt,W.placeboes=Hpt,W.placentae=Spt,W.planetaria=Fpt,W.planulae=Rpt,W.plasmodesmata=Tpt,W.plasmodia=Npt,W.plateaux=Ppt,W.plectra=Gpt,W.plena=Ypt,W.pleura=Upt,W.pleurae=Lpt,W.plicae=jpt,W.ploughmen=Wpt,W.pneumobacilli=Jpt,W.pneumococci=qpt,W.pocketknives=Vpt,W.podetia=zpt,W.podia=Kpt,W.poleis=Xpt,W.pollices=Zpt,W.pollinia=$pt,W.polychasia=AEt,W.polyhedra=eEt,W.polyparia=rEt,W.polypi=tEt,W.polyzoa=iEt,W.polyzoaria=nEt,W.pontes=aEt,W.pontifices=oEt,W.portamenti=sEt,W.porticoes=cEt,W.portmanteaux=lEt,W.postliminia=uEt,W.potatoes=gEt,W.praenomina=dEt,W.praxes=pEt,W.predelle=EEt,W.premaxillae=fEt,W.prenomina=BEt,W.prese=hEt,W.primi=QEt,W.primigravidae=mEt,W.primiparae=DEt,W.primordia=_Et,W.principia=wEt,W.proboscides=vEt,W.proglottides=yEt,W.prognoses=CEt,W.prolegomena=IEt,W.prolepses=bEt,W.promycelia=OEt,W.pronephra=Ele,W.pronephroi=Ele,W.pronuclei=MEt,W.propositi=kEt,W.proptoses=xEt,W.propyla=HEt,W.propylaea=SEt,W.proscenia=FEt,W.prosencephala=REt,W.prostheses=TEt,W.prostomia=NEt,W.protases=PEt,W.prothalamia=GEt,W.prothalli=YEt,W.prothallia=UEt,W.prothoraces=LEt,W.protonemata=jEt,W.protozoa=WEt,W.proventriculi=JEt,W.provisoes=qEt,W.prytanea=VEt,W.psalteria=zEt,W.pseudopodia=KEt,W.psychoneuroses=XEt,W.psychoses=ZEt,W.pterygia=$Et,W.pterylae=Aft,W.ptoses=eft,W.pubes=rft,W.pudenda=tft,W.puli=ift,W.pulvilli=nft,W.pulvini=aft,W.punchinelloes=oft,W.pupae=sft,W.puparia=cft,W.putamina=lft,W.putti=uft,W.pycnidia=gft,W.pygidia=dft,W.pylori=pft,W.pyxides=Eft,W.pyxidia=fft,W.qaddishim=Bft,W.quadrennia=hft,W.quadrigae=Qft,W.qualia=mft,W.quanta=Dft,W.quarterstaves=_ft,W.quezales=wft,W.quinquennia=vft,W.quizzes=yft,W.rabatos=Cft,W.rabbitfishes=Ift,W.rachides=fle,W.radices=bft,W.radii=Oft,W.radulae=Mft,W.ramenta=kft,W.rami=xft,W.ranulae=Hft,W.ranunculi=Sft,W.raphae=Fft,W.raphides=Rft,W.ratfishes=Tft,W.reales=Ble,W.rearmice=Nft,W.recta=Pft,W.recti=Gft,W.rectrices=Yft,W.redfishes=Uft,W.rediae=Lft,W.referenda=jft,W.refugia=Wft,W.reguli=Jft,W.reis=Ble,W.relata=qft,W.remiges=Vft,W.reremice=zft,W.reseaux=Kft,W.residua=Xft,W.responsa=Zft,W.retia=$ft,W.retiarii=ABt,W.reticula=eBt,W.retinacula=rBt,W.retinae=tBt,W.rhabdomyomata=iBt,W.rhachides=fle,W.rhachises=nBt,W.rhinencephala=aBt,W.rhizobia=oBt,W.rhombi=sBt,W.rhonchi=cBt,W.rhyta=lBt,W.ribbonfishes=uBt,W.ricercacari=hle,W.ricercari=hle,W.rickettsiae=gBt,W.rilievi=dBt,W.rimae=pBt,W.rockfishes=EBt,W.roma=fBt,W.rondeaux=BBt,W.rosaria=hBt,W.rosefishes=QBt,W.rostella=mBt,W.rostra=DBt,W.rouleaux=_Bt,W.rugae=wBt,W.rumina=vBt,W.sacra=yBt,W.sacraria=CBt,W.saguaros=IBt,W.sailfishes=bBt,W.salespeople=OBt,W.salmonellae=MBt,W.salpae=kBt,W.salpinges=xBt,W.saltarelli=HBt,W.salvoes=SBt,W.sancta=FBt,W.sanitaria=RBt,W.santimi=TBt,W.saphenae=NBt,W.sarcophagi=PBt,W.sartorii=GBt,W.sassanidae=YBt,W.sawfishes=UBt,W.scaldfishes=LBt,W.scaleni=jBt,W.scapulae=WBt,W.scarabaei=JBt,W.scarves=qBt,W.schatchonim=VBt,W.schemata=zBt,W.scherzandi=KBt,W.scherzi=XBt,W.schmoes=ZBt,W.scholia=$Bt,W.schuln=Aht,W.schutzstaffeln=eht,W.scirrhi=rht,W.scleromata=tht,W.scleroses=iht,W.sclerotia=nht,W.scoleces=Qle,W.scolices=Qle,W.scopulae=aht,W.scoriae=oht,W.scotomata=sht,W.scriptoria=cht,W.scrota=lht,W.scudi=uht,W.scuta=ght,W.scutella=dht,W.scyphi=pht,W.scyphistomae=Eht,W.scyphozoa=fht,W.secondi=Bht,W.segni=hht,W.seleucidae=Qht,W.selves=mht,W.senores=Dht,W.sensilla=_ht,W.senti=wht,W.senussis=vht,W.separatrices=yht,W.sephardim=Cht,W.septa=Iht,W.septaria=bht,W.septennia=Oht,W.sequelae=Mht,W.sequestra=kht;W.sera=xht,W.seraphim=Hht,W.sestertia=Sht,W.setae=Fht,W.sgraffiti=Rht,W.shabbasim=Tht,W.shabbatim=Nht,W.shackoes=Pht,W.shadchanim=mle,W.shadchans=mle,W.shakoes=Ght,W.shammosim=Yht,W.sheatfishes=Uht,W.sheaves=Lht,W.shellfishes=jht,W.shelves=Wht,W.shinleaves=Jht,W.shittim=qht,W.shmoes=Vht,W.shofroth=Dle,W.shophroth=Dle,W.shrewmice=zht,W.shuln=Kht,W.siddurim=Xht,W.sigloi=Zht,W.signore=$ht,W.signori=AQt,W.signorine=eQt,W.siliquae=rQt,W.silvae=tQt,W.silverfishes=iQt,W.simulacra=nQt,W.sincipita=aQt,W.sinfonie=oQt,W.sistra=sQt,W.situlae=cQt,W.smalti=lQt,W.snaggleteeth=uQt,W.snailfishes=gQt,W.snipefishes=dQt,W.socmen=pQt,W.sola=EQt,W.solaria=fQt,W.solatia=BQt,W.soldi=hQt,W.soles=QQt,W.solfeggi=mQt,W.soli=DQt,W.solidi=_Qt,W.somata=wQt,W.soprani=vQt,W.sordini=yQt,W.sori=CQt,W.soroses=IQt,W.sovkhozy=bQt,W.spadefishes=OQt,W.spadices=MQt,W.spearfishes=kQt,W.spectra=xQt,W.specula=HQt,W.spermatia=SQt,W.spermatogonia=FQt,W.spermatozoa=RQt,W.spermogonia=TQt,W.sphinges=NQt,W.spicae=PQt,W.spicula=GQt,W.spirilla=YQt,W.splayfeet=UQt,W.splenii=LQt,W.sporangia=jQt,W.sporogonia=WQt,W.sporozoa=JQt,W.springhase=qQt,W.spumoni=VQt,W.sputa=zQt,W.squamae=KQt,W.squashes=XQt,W.squillae=ZQt,W.squirrelfishes=$Qt,W.squizzes=A0t,W.stadia=e0t,W.stamina=r0t,W.staminodia=t0t,W.stapedes=i0t,W.staphylococci=n0t,W.staretsy=_le,W.starfishes=a0t,W.startsy=_le,W.stelae=o0t,W.stemmata=s0t,W.stenoses=c0t,W.stepchildren=l0t,W.sterna=u0t,W.stigmata=g0t,W.stimuli=d0t,W.stipites=p0t,W.stirpes=E0t,W.stoae=f0t,W.stockfishes=B0t,W.stomata=h0t,W.stomodaea=Q0t,W.stomodea=m0t,W.stonefishes=D0t,W.stotinki=wle,W.stotkini=wle,W.strappadoes=_0t,W.strata=w0t,W.strati=v0t,W.stratocumuli=y0t,W.streptococci=C0t,W.stretti=I0t,W.striae=b0t,W.strobili=O0t,W.stromata=M0t,W.strumae=k0t,W.stuccoes=x0t,W.styli=H0t,W.stylopes=S0t,W.stylopodia=F0t,W.subcortices=R0t,W.subdeliria=T0t,W.subgenera=N0t,W.subindices=P0t,W.submucosae=G0t,W.subphyla=Y0t,W.substrasta=U0t,W.succedanea=L0t,W.succubi=j0t,W.suckerfishes=W0t,W.suckfishes=J0t,W.sudaria=q0t,W.sudatoria=vle,W.sudatoria=vle,W.sulci=V0t,W.summae=z0t,W.sunfishes=K0t,W.supercargoes=X0t,W.superheroes=Z0t,W.supernovae=$0t,W.superstrata=Amt,W.surgeonfishes=emt,W.swamies=rmt,W.sweetiewives=tmt,W.swellfishes=imt,W.swordfishes=nmt,W.syconia=amt,W.syllabi=omt,W.syllepses=smt,W.symphyses=cmt,W.sympodia=lmt,W.symposia=umt,W.synapses=gmt,W.synarthroses=dmt,W.synclinoria=pmt,W.syncytia=Emt,W.syndesmoses=fmt,W.synopses=Bmt,W.syntagmata=hmt,W.syntheses=Qmt,W.syphilomata=mmt,W.syringes=Dmt,W.syssarcoses=_mt,W.tableaux=wmt,W.taeniae=vmt,W.tali=ymt,W.tallaisim=rpA,W.tallithes=rpA,W.tallitoth=rpA,W.tapeta=Cmt,W.tarantulae=Imt,W.tarsi=bmt,W.tarsometatarsi=Omt,W.taxa=Mmt,W.taxes=kmt,W.taxies=xmt,W.tectrices=Hmt,W.teeth=Smt,W.tegmina=Fmt,W.telae=Rmt,W.telamones=Tmt,W.telangiectases=Nmt,W.telia=Pmt,W.tempi=Gmt,W.tenacula=Ymt,W.tenderfeet=Umt,W.teniae=Lmt,W.tenues=jmt,W.teraphim=Wmt,W.terata=Jmt,W.teredines=qmt,W.terga=Vmt,W.termini=zmt,W.terraria=Kmt,W.terzetti=Xmt,W.tesserae=Zmt,W.testae=$mt,W.testes=A1t,W.testudines=e1t,W.tetrahedra=r1t,W.tetraskelia=t1t,W.thalamencephala=i1t,W.thalami=n1t,W.thalli=a1t,W.thecae=o1t,W.therses=s1t,W.thesauri=c1t,W.theses=l1t,W.thickleaves=u1t,W.thieves=g1t,W.tholoi=d1t,W.thoraces=p1t,W.thrombi=E1t,W.thymi=f1t,W.thyrsi=B1t,W.tibiae=h1t,W.tilefishes=Q1t,W.tintinnabula=m1t,W.titmice=D1t,W.toadfishes=_1t,W.tobaccoes=w1t,W.tomatoes=v1t,W.tomenta=y1t,W.tondi=C1t,W.tonneaux=I1t,W.tophi=b1t,W.topoi=O1t,W.tori=M1t,W.tornadoes=k1t,W.torpedoes=x1t,W.torsi=H1t,W.touracos=S1t,W.trabeculae=F1t,W.tracheae=R1t,W.traditores=T1t,W.tragi=N1t,W.trapezia=P1t,W.trapezohedra=G1t,W.traumata=Y1t,W.treponemata=U1t,W.trichinae=L1t,W.triclinia=j1t,W.triennia=W1t,W.triforia=J1t,W.triggerfishes=q1t,W.trihedra=V1t,W.triskelia=z1t,W.trisoctahedra=K1t,W.triumviri=X1t,W.trivia=Z1t,W.trochleae=$1t,W.tropaeola=A4t,W.trousseaux=e4t,W.trunkfishes=r4t,W.trymata=t4t,W.tubae=i4t,W.turves=n4t,W.tympana=a4t,W.tyros=o4t,W.ubermenschen=s4t,W.uglies=c4t,W.uigurs=l4t,W.ulnae=u4t,W.ultimata=g4t,W.umbilici=d4t,W.umbones=p4t,W.umbrae=E4t,W.unci=f4t,W.uncidia=B4t,W.uredines=h4t,W.uredinia=Q4t,W.uredosori=m4t,W.urethrae=D4t,W.urinalyses=_4t,W.uteri=w4t,W.utriculi=v4t,W.uvulae=y4t,W.vacua=C4t,W.vagi=I4t,W.vaginae=b4t,W.valleculae=O4t,W.vaporetti=M4t,W.varices=k4t,W.vasa=x4t,W.vascula=H4t,W.vela=S4t,W.velamina=F4t,W.velaria=R4t,W.venae=T4t,W.ventriculi=N4t,W.vermes=P4t,W.verrucae=G4t,W.vertebrae=Y4t,W.vertices=U4t,W.vertigines=yle,W.vertigoes=yle,W.vesicae=L4t,W.vetoes=j4t,W.vexilla=W4t,W.viatica=J4t,W.viatores=q4t,W.vibracula=V4t,W.vibrissae=z4t,W.villi=K4t,W.vimina=X4t,W.vincula=Z4t,W.viragoes=$4t,W.vires=ADt,W.virtuosi=eDt,W.vitae=rDt,W.vitelli=tDt,W.vittae=iDt,W.vivaria=nDt,W.voces=aDt,W.volcanoes=oDt,W.volkslieder=sDt,W.volte=cDt,W.volvae=lDt,W.vorticellae=uDt,W.vortices=gDt,W.vulvae=dDt,W.wahhabis=pDt,W.wanderjahre=EDt,W.weakfishes=fDt,W.werewolves=BDt,W.wharves=hDt,W.whitefishes=QDt,W.wives=mDt,W.wolffishes=DDt,W.wolves=_Dt,W.women=wDt,W.woodlice=vDt,W.wreckfishes=yDt,W.wunderkinder=CDt,W.xiphisterna=IDt,W.yeshivahs=Cle,W.yeshivoth=Cle,W.yogin=bDt,W.yourselves=ODt,W.zamindaris=MDt,W.zecchini=kDt,W.zeroes=xDt,W.zoa=HDt,W.zoaeae=Ile,W.zoeae=SDt,W.zoeas=Ile,W.zoonoses=FDt,ble.exports=W});var JDe=GA((xsi,WDe)=>{var G=Object.create(null),Mle="abet",kle="abhor",RDt="abide",xle="aby",Hle="abut",TDt="accompany",NDt="acetify",PDt="acidify",Sle="acquit",GDt="address",Fle="admit",YDt="aerify",Rle="airdrop",UDt="alkalify",LDt="ally",Tle="allot",y3="be",jDt="ammonify",WDt="amnesty",JDt="amplify",qDt="anglify",Nle="annul",Ple="appal",VDt="apply",Gle="arc",zDt="argufy",Yle="arise",Ule="eat",KDt="atrophy",Lle="aver",jle="awake",XDt="baby",Wle="backbite",Jle="backslide",ipA="bid",qle="bag",Vle="ballyrag",ZDt="bandy",zle="ban",Kle="bar",Xle="barrel",$Dt="basify",Zle="bat",$le="bayonet",A_t="beat",e_t="beatify",r_t="beautify",t_t="become",npA="bed",Aue="bedevil",eue="bedim",rue="befall",tue="befit",iue="befog",apA="begin",FV="beget",nue="beg",i_t="begird",aue="behold",oue="bejewel",n_t="belly",a_t="belie",sue="benefit",o_t="bename",s_t="bend",c_t="berry",l_t="beset",u_t="beseech",cue="bespeak",lue="bestir",g_t="bestrew",opA="bestride",uue="betake",d_t="bethink",gue="bet",due="bevel",pue="bias",p_t="bing",Eue="bin",fue="bite",Bue="bit",hue="bivouac",Que="blab",E_t="blackberry",mue="blackleg",Due="blat",f_t="bleed",B_t="bless",_ue="blow",wue="blip",vue="blob",h_t="bloody",yue="blot",Cue="blub",Iue="blur",bue="bob",Q_t="body",Oue="bootleg",Mue="bop",spA="bear",m_t="buy",D_t="bind",kue="brag",__t="breed",xue="brevet",Hue="brim",Sue="break",w_t="bring",v_t="browbeat",y_t="brutify",Fue="bud",Rue="bug",C_t="build",I_t="bulldog",b_t="bully",Tue="bullshit",Nue="bullwhip",Pue="bullyrag",Gue="bum",O_t="bury",M_t="burn",Yue="bur",Uue="bushel",k_t="busy",x_t="bypass",Lue="cabal",cpA="caddy",H_t="calcify",S_t="come",jue="canal",Wue="cancel",F_t="candy",lpA="can",R_t="canopy",Jue="cap",que="carburet",Vue="carillon",T_t="carny",N_t="carnify",zue="carol",P_t="carry",G_t="casefy",Kue="catnap",Xue="cat",Y_t="catch",Zue="cavil",U_t="certify",$ue="channel",Age="chap",ege="char",rge="chat",_2="chivy",tge="chide",ige="chin",nge="chip",age="chisel",oge="chitchat",sge="chiv",L_t="chondrify",cge="chop",lge="choose",uge="chug",gge="chum",j_t="citify",W_t="clothe",dge="clad",pge="clam",Ege="clap",J_t="clarify",q_t="classify",upA="cleave",fge="clem",YpA="clepe",Bge="clip",hge="clog",Qge="clop",mge="clot",Dge="club",V_t="cling",z_t="cockneyfy",_ge="cod",K_t="codify",wge="cog",vge="coif",X_t="colly",yge="combat",Cge="commit",Ige="compel",Z_t="comply",bge="complot",Oge="concur",Mge="confab",kge="confer",xge="con",Hge="control",$_t="copy",Sge="cop",Fge="coquet",Rge="corral",Tge="counsel",Nge="counterplot",Pge="countersink",Gge="crab",Yge="cram",Uge="crap",Lge="creep",jge="crib",Awt="cry",Wge="crop",ewt="crossbreed",rwt="crosscut",twt="crucify",Jge="cub",qge="cudgel",Vge="cupel",zge="cup",gpA="curet",iwt="curry",nwt="curse",awt="curtsy",Kge="curvet",owt="cut",Xge="dab",Zge="dag",swt="dally",$ge="dam",cwt="damnify",lwt="dandify",Ade="dap",uwt="deal",ede="debar",rde="debug",dpA="debus",gwt="decalcify",dwt="declassify",tde="decontrol",pwt="decry",ide="defer",Ewt="defy",ppA="degas",fwt="dehumidify",Bwt="deify",nde="demit",ade="demob",hwt="demulsify",ode="demur",Qwt="demystify",mwt="denazify",Dwt="deny",_wt="denitrify",sde="den",wwt="descry",cde="deter",vwt="detoxify",lde="devil",ywt="devitrify",ude="diagram",gde="dial",dde="dib",EpA="do",pde="dig",Cwt="dignify",Ede="dim",fde="din",Bde="dip",Iwt="dirty",hde="disannul",Qde="disbar",mde="disbud",bwt="disembody",Dde="disembowel",fpA="disenthral",Owt="disenthrall",_de="dishevel",wde="disinter",vde="dispel",Mwt="disqualify",kwt="dissatisfy",yde="distil",xwt="diversify",Hwt="divvy",Swt="dizzy",Cde="dog",Ide="dogleg",Fwt="dolly",bde="don",Ode="dot",Rwt="dow",Twt="dive",Mde="drab",kde="drag",xde="drink",Hde="draw",Nwt="dream",Pwt="dry",Sde="drip",Fde="drivel",Rde="drive",Tde="drop",Nde="drub",Pde="drug",Gde="drum",Yde="dub",Ude="duel",Gwt="dulcify",Ywt="dummy",Lde="dun",Uwt="dwell",Lwt="die",jwt="easy",jde="eavesdrop",Wwt="eddy",Jwt="edify",qwt="electrify",Wde="embed",Vwt="embody",BpA="embus",Jde="emit",qde="empanel",zwt="empty",Kwt="emulsify",Vde="enamel",zde="englut",Kde="enrol",Xde="enthral",Zde="entrammel",$de="entrap",Xwt="envy",Zwt="enwind",Ape="enwrap",epe="equal",rpe="equip",$wt="espy",Avt="esterify",tpe="estop",evt="etherify",ipe="excel",rvt="exemplify",npe="expel",ape="extol",ope="facet",spe="fag",cpe="fall",tvt="falsify",ivt="fancy",lpe="fan",nvt="fantasy",upe="fat",gpe="featherbed",dpe="feed",avt="feel",ovt="ferry",ppe="fib",Epe="fig",fpe="fin",Bpe="fit",hpe="flag",Qpe="flam",mpe="flannel",Dpe="flap",_pe="flat",svt="flee",wpe="fly",vpe="flimflam",ype="flip",Cpe="flit",Ipe="flog",cvt="floodlight",bpe="flop",Ope="flub",lvt="fling",uvt="flurry",Mpe="flyblow",kpe="fob",xpe="fog",Hpe="footslog",RV="forbid",Spe="forbear",Fpe="fordo",Rpe="foredo",Tpe="forego",Npe="foreknow",Ppe="forerun",Gpe="foresee",gvt="foreshow",Ype="forespeak",dvt="foretell",Upe="forgive",hpA="forget",Lpe="forgo",jpe="format",Wpe="forsake",Jpe="forspeak",qpe="forswear",pvt="fortify",Evt="fight",fvt="find",Vpe="foxtrot",zpe="frap",Bvt="frenchify",hvt="frenzy",Kpe="fret",Qvt="fry",Xpe="frig",Zpe="frit",$pe="frivol",AEe="frog",eEe="frolic",rEe="freeze",mvt="fructify",tEe="fuel",iEe="fulfil",nEe="fun",aEe="funnel",oEe="fur",sEe="gad",cEe="gag",Dvt="gainsay",lEe="gambol",uEe="gam",QpA="gin",gEe="gan",dEe="gap",_vt="gasify",mpA="gas",pEe="give",EEe="gel",wvt="geld",fEe="gem",DpA="get",BEe="ghostwrite",hEe="gib",vvt="giddy",QEe="giftwrap",mEe="gig",yvt="gild",DEe="gip",Cvt="gird",_Ee="glom",Ivt="glory",bvt="glorify",wEe="glut",Ovt="gnaw",Mvt="golly",UDe="go",vEe="grab",kvt="gratify",yEe="gravel",xvt="grave",CEe="grow",IEe="grin",_pA="grip",bEe="grit",Hvt="grind",OEe="grovel",MEe="grub",Svt="guaranty",Fvt="gully",kEe="gum",xEe="gun",HEe="gyp",Rvt="hacksaw",SEe="have",FEe="ham",Tvt="hamstring",Nvt="handfeed",REe="handicap",TEe="handsel",Pvt="harry",LDe="hatchel",NEe="hat",Gvt="hear",PEe="hedgehop",Yvt="hold",GEe="hem",Uvt="hew",YEe="hiccup",UEe="hide",Lvt="hinny",jvt="hit",LEe="hob",jEe="hobnob",WEe="hocus",JEe="hog",Wvt="hogtie",Jvt="honey",qEe="hop",qvt="horrify",VEe="horsewhip",zEe="housel",Vvt="heave",KEe="hovel",XEe="hug",ZEe="humbug",zvt="humidify",$Ee="hum",Kvt="hang",Xvt="hurry",Zvt="hypertrophy",$vt="identify",Afe="imbed",efe="impanel",rfe="impel",Ayt="imply",eyt="inbreed",tfe="incur",ryt="indemnify",tyt="indwell",ife="infer",nfe="initial",iyt="inlay",nyt="inset",afe="inspan",ofe="install",ayt="intensify",oyt="interbreed",sfe="intercrop",syt="intercut",cyt="interlay",cfe="interlap",lyt="intermarry",lfe="intermit",uyt="interplead",ufe="inter",gyt="interstratify",gfe="interweave",dfe="intromit",pfe="inweave",Efe="inwrap",ffe="jab",Bfe="jag",hfe="jam",Qfe="japan",mfe="jar",dyt="jelly",pyt="jellify",Eyt="jemmy",Dfe="jet",_fe="jewel",wfe="jib",vfe="jig",fyt="jimmy",yfe="jitterbug",Cfe="job",Ife="jog",Byt="jolly",hyt="jollify",bfe="jot",Ofe="joypop",Mfe="jug",Qyt="justify",kfe="jut",wpA="ken",xfe="kennel",myt="keep",Hfe="kernel",Sfe="kid",Ffe="kidnap",Rfe="kip",Tfe="knap",Nfe="kneecap",Dyt="kneel",Pfe="know",Gfe="knit",Yfe="knob",Ufe="knot",Lfe="label",_yt="lade",vpA="ladify",jfe="lag",wyt="lay",ypA="lie",Wfe="lallygag",Jfe="lam",vyt="lapidify",qfe="lap",Vfe="laurel",yyt="lean",zfe="leapfrog",Cyt="leap",Iyt="learn",byt="lead",Oyt="leave",Myt="lend",kyt="let",Kfe="level",xyt="levy",Xfe="libel",Hyt="lignify",Zfe="lip",Syt="liquefy",Fyt="liquify",Ryt="light",$fe="lob",Tyt="lobby",ABe="log",eBe="lop",Nyt="lose",rBe="lot",tBe="lug",Pyt="lullaby",iBe="mad",Gyt="make",Yyt="magnify",nBe="man",aBe="manumit",oBe="map",sBe="marcel",cBe="mar",Uyt="marry",lBe="marshal",uBe="marvel",gBe="mat",Lyt="mean",dBe="medal",jyt="meet",pBe="metal",Wyt="metrify",Jyt="may",EBe="mimic",qyt="minify",Vyt="misapply",zyt="misbecome",Kyt="miscarry",Xyt="misdeal",fBe="misfit",BBe="misgive",Zyt="mishit",$yt="mislay",A2t="mislead",e2t="misplead",r2t="misspell",t2t="misspend",hBe="mistake",i2t="misunderstand",QBe="mob",mBe="model",n2t="modify",a2t="mollify",o2t="melt",DBe="mop",s2t="mortify",c2t="mow",_Be="mud",l2t="muddy",wBe="mug",u2t="multiply",vBe="mum",g2t="mummify",d2t="mutiny",p2t="mystify",yBe="nab",CBe="nag",IBe="nap",bBe="net",OBe="nib",MBe="nickel",E2t="nidify",f2t="nigrify",kBe="nip",B2t="nitrify",xBe="nod",CpA="nonplus",h2t="notify",Q2t="nullify",HBe="nut",m2t="objectify",D2t="occupy",SBe="occur",_2t="offset",FBe="omit",w2t="ossify",RBe="outbid",v2t="outbreed",y2t="outcry",TBe="outcrop",NBe="outdo",PBe="outdraw",GBe="outfit",C2t="outfight",IpA="outgas",YBe="outgeneral",UBe="outgo",LBe="outgrow",I2t="outlay",jBe="outman",WBe="output",JBe="outrun",qBe="outride",b2t="outshine",O2t="outshoot",M2t="outsell",VBe="outspan",k2t="outstand",zBe="outstrip",x2t="outthink",KBe="outwit",XBe="outwear",ZBe="overbid",$Be="overblow",Ahe="overbear",H2t="overbuild",S2t="overcome",ehe="overcrop",rhe="overdo",the="overdraw",ihe="overdrive",F2t="overfly",R2t="overflow",nhe="overgrow",T2t="overhear",N2t="overhang",P2t="overlay",bpA="overlie",ahe="overlap",ohe="overman",G2t="overpay",Y2t="overpass",she="overrun",che="override",lhe="oversee",U2t="overset",L2t="oversew",j2t="overshoot",W2t="oversimplify",J2t="oversleep",q2t="oversell",V2t="overspend",z2t="overspill",uhe="overstep",ghe="overtake",dhe="overthrow",phe="overtop",K2t="overwind",Ehe="overwrite",X2t="pacify",fhe="pad",Z2t="pay",Bhe="pal",$2t="palsy",ACt="pandy",hhe="panel",Qhe="panic",mhe="pan",Dhe="parallel",_he="parcel",eCt="parody",rCt="parry",whe="partake",TV="pasquinade",vhe="patrol",yhe="pat",Che="pedal",Ihe="peg",bhe="pencil",OpA="pen",Ohe="pep",Mhe="permit",tCt="personify",iCt="petrify",khe="pet",xhe="pettifog",nCt="phantasy",aCt="photocopy",Hhe="photomap",oCt="photoset",She="physic",Fhe="picnic",Rhe="pig",sCt="pillory",The="pin",Nhe="pip",Phe="pistol",Ghe="pitapat",cCt="pity",Yhe="pit",Uhe="plan",Lhe="plat",lCt="plead",uCt="ply",jhe="plod",Whe="plop",Jhe="plot",qhe="plug",Vhe="pod",zhe="pommel",gCt="popes",Khe="pop",Xhe="pot",dCt="preachify",Zhe="precancel",$he="prefer",pCt="preoccupy",ECt="prepay",fCt="presignify",AQe="pretermit",BCt="pretty",hCt="prettify",QCt="pry",eQe="prig",rQe="prim",tQe="prod",MpA="program",kpA="prologue",iQe="propel",mCt="prophesy",nQe="prop",DCt="prove",aQe="pub",oQe="pug",sQe="pummel",cQe="pun",lQe="pup",_Ct="purify",wCt="putrefy",vCt="putty",yCt="put",CCt="qualify",ICt="quantify",uQe="quarrel",bCt="quarry",OCt="quartersaw",MCt="query",gQe="quickstep",dQe="quip",pQe="quit",xpA="quiz",EQe="rag",kCt="rally",xCt="ramify",fQe="ram",BQe="run",hQe="ring",QQe="rap",mQe="rappel",HCt="rarefy",SCt="ratify",DQe="rat",_Qe="ravel",wQe="rebel",FCt="rebuild",vQe="rebut",yQe="recap",RCt="reclassify",CQe="recommit",TCt="recopy",NCt="rectify",IQe="recur",HpA="red",bQe="redo",OQe="refer",MQe="refit",PCt="reave",kQe="refuel",xQe="regret",GCt="rehear",YCt="reify",UCt="rely",LCt="remake",jCt="remarry",HQe="remit",WCt="rend",JCt="repay",SQe="repel",qCt="replevy",VCt="reply",FQe="repot",RQe="rerun",TQe="resit",zCt="reset",KCt="resew",NQe="retake",XCt="rethink",ZCt="retell",PQe="retransmit",$Ct="retry",GQe="retrofit",YQe="ret",AIt="reunify",UQe="revel",LQe="revet",eIt="revivify",jQe="rev",rIt="rewind",WQe="rewrite",JQe="rib",qQe="ricochet",VQe="rid",zQe="ride",KQe="rig",tIt="rigidify",XQe="rim",ZQe="rip",$Qe="rise",A0e="rival",iIt="rive",e0e="rob",r0e="rot",nIt="reeve",t0e="rowel",i0e="rub",n0e="rut",aIt="saccharify",a0e="sag",oIt="say",sIt="salary",cIt="salify",lIt="sally",uIt="sanctify",o0e="sandbag",UpA="sing",LpA="sink",gIt="saponify",s0e="sap",jDe="sit",dIt="satisfy",pIt="savvy",c0e="see",EIt="saw",l0e="scag",u0e="scan",fIt="scarify",g0e="scar",d0e="scat",BIt="scorify",p0e="scrag",E0e="scram",f0e="scrap",hIt="scry",B0e="scrub",h0e="scrum",Q0e="scud",m0e="scum",QIt="scurry",mIt="seed",DIt="send",_It="set",wIt="sew",D0e="shag",_0e="shake",w0e="sham",v0e="sharecrop",SpA="shit",vIt="shave",y0e="shed",C0e="shellac",yIt="shend",CIt="shew",IIt="shy",I0e="shikar",bIt="shillyshally",b0e="shim",OIt="shimmy",O0e="shin",M0e="ship",MIt="shoe",kIt="shine",k0e="shop",xIt="shoot",x0e="shotgun",H0e="shot",S0e="shovel",HIt="show",jpA="shrink",F0e="shred",R0e="shrivel",T0e="shrive",N0e="shrug",P0e="shun",SIt="shut",G0e="sic",Y0e="sideslip",U0e="sidestep",L0e="sightsee",j0e="signal",FIt="signify",RIt="silicify",TIt="simplify",W0e="sin",J0e="sip",NIt="shear",PIt="skelly",q0e="sken",V0e="sket",z0e="skid",K0e="skim",X0e="skin",Z0e="skip",GIt="skivvy",YIt="skydive",$0e="slab",Ame="slag",eme="slay",rme="slam",tme="slap",ime="slat",UIt="sled",LIt="sleep",nme="slide",ame="slip",jIt="slit",ome="slog",sme="slop",cme="slot",lme="slug",ume="slum",WIt="sling",JIt="slink",gme="slur",qIt="smell",FpA="smite",dme="smut",pme="snag",Eme="snap",fme="sned",Bme="snip",hme="snivel",Qme="snog",mme="snub",VIt="sneak",Dme="snug",_me="sob",wme="sod",zIt="sell",KIt="solemnify",XIt="solidify",ZIt="soothsay",vme="sop",$It="seek",Abt="sow",yme="spag",Cme="spancel",Ime="span",bme="spar",RpA="spit",Ome="spat",ebt="specify",rbt="speed",tbt="speechify",ibt="spellbind",nbt="spell",abt="spend",obt="spy",sbt="spill",Mme="spin",kme="spiral",cbt="split",lbt="spoil",xme="speak",ubt="spotlight",Hme="spot",Sme="spring",Fme="sprig",Rme="spud",Tme="spur",Nme="squat",Pme="squib",Gme="squid",gbt="squeegee",Yme="stab",Ume="stink",Lme="star",dbt="steady",pbt="stellify",jme="stem",Wme="stencil",Jme="step",qme="stet",Ebt="sty",fbt="stiletto",Vme="stir",zme="steal",Bbt="stand",Kme="stop",hbt="story",Xme="stot",Qbt="stave",Zme="strap",mbt="stratify",Dbt="strew",$me="stride",A1e="strip",e1e="strive",r1e="strop",_bt="strow",t1e="strike",i1e="strum",wbt="string",n1e="strut",a1e="stub",vbt="stick",o1e="stud",ybt="study",Cbt="stultify",s1e="stum",Ibt="sting",c1e="stun",bbt="stupefy",Obt="stymie",l1e="sub",Mbt="subjectify",kbt="sublet",u1e="submit",g1e="subtotal",xbt="sully",d1e="sulphuret",p1e="sum",E1e="sun",f1e="sup",Hbt="supply",B1e="swab",h1e="swag",TpA="swim",Tk="swap",Q1e="swat",Sbt="sweep",m1e="swig",D1e="swivel",Fbt="swell",_1e="swear",w1e="swot",Rbt="swing",Tbt="syllabify",v1e="symbol",y1e="tab",C1e="tag",I1e="take",b1e="talc",Nbt="tally",Pbt="tammy",O1e="tan",M1e="tap",k1e="tar",Gbt="tarry",x1e="tassel",H1e="tat",Ybt="teach",Ubt="taxis",Lbt="taxi",S1e="teasel",F1e="ted",jbt="tepefy",Wbt="terrify",Jbt="testes",qbt="testify",R1e="thin",Vbt="think",T1e="throw",N1e="thrive",P1e="throb",G1e="thrum",Y1e="thud",zbt="tidy",U1e="tin",L1e="tinsel",j1e="tip",W1e="tittup",Kbt="toady",J1e="tog",Xbt="tell",q1e="top",V1e="tear",z1e="torrefy",K1e="total",X1e="tot",Z1e="towel",$1e="traffic",Nk="trammel",A4e="tram",e4e="transfer",Zbt="transfix",NpA="transship",r4e="tranship",t4e="transmit",$bt="transmogrify",i4e="trapan",n4e="trap",a4e="travel",A5t="travesty",o4e="trek",s4e="trepan",e5t="try",c4e="trig",l4e="trim",u4e="trip",g4e="tread",d4e="trog",p4e="trot",E4e="trowel",f4e="tug",r5t="tumefy",B4e="tun",h4e="tunnel",Q4e="tup",m4e="twig",D4e="twin",_4e="twit",t5t="tie",i5t="typeset",w4e="typewrite",n5t="typify",a5t="uglify",v4e="unbar",o5t="unbend",s5t="unbind",y4e="uncap",c5t="unclothe",C4e="unclog",l5t="underbid",u5t="underbuy",g5t="undercut",d5t="underfeed",p5t="undergird",I4e="undergo",E5t="underlay",PpA="underlie",f5t="underlet",B5t="underpay",b4e="underpin",O4e="underprop",h5t="underset",Q5t="undershoot",m5t="undersell",D5t="understand",_5t="understudy",M4e="undertake",k4e="underwrite",x4e="undo",H4e="unfit",S4e="unfreeze",w5t="unify",F4e="unkennel",R4e="unknit",v5t="unlay",y5t="unlearn",C5t="unmake",T4e="unman",N4e="unpeg",P4e="unpin",G4e="unplug",Y4e="unravel",U4e="unrig",L4e="unrip",I5t="unreeve",b5t="unsay",j4e="unship",O5t="unsling",W4e="unsnap",J4e="unspeak",M5t="unsteady",q4e="unstep",V4e="unstop",k5t="unstring",x5t="unstick",z4e="unswear",H5t="unteach",S5t="unthink",F5t="untidy",K4e="untread",R5t="untie",T5t="unwind",X4e="unwrap",Z4e="unzip",N5t="upbuild",P5t="uphold",G5t="upheave",$4e="up",Y5t="uppercut",ADe="uprise",U5t="upset",eDe="upspring",L5t="upsweep",j5t="upswell",W5t="upswing",rDe="vag",J5t="vary",tDe="vat",q5t="verbify",V5t="verify",z5t="versify",iDe="vet",nDe="victual",K5t="vilify",X5t="vitrify",aDe="vitriol",Z5t="vivify",$5t="vie",oDe="wad",A3t="waddy",sDe="wadset",cDe="wag",lDe="wan",uDe="war",e3t="waylay",r3t="weary",gDe="weatherstrip",dDe="web",pDe="wed",t3t="weed",i3t="weep",EDe="wet",fDe="wham",BDe="whap",hDe="whet",n3t="whinny",QDe="whip",a3t="whipsaw",mDe="whir",GpA="whiz",DDe="whop",_De="wig",wDe="wigwag",vDe="wildcat",o3t="will",yDe="win",s3t="winterfeed",CDe="wiredraw",IDe="withdraw",c3t="withhold",l3t="withstand",bDe="wake",ODe="won",MDe="wear",u3t="worry",kDe="worship",g3t="wind",xDe="weave",HDe="wrap",d3t="wry",SDe="write",p3t="work",E3t="wring",FDe="yak",RDe="yap",TDe="yen",NDe="yodel",PDe="zap",GDe="zigzag",YDe="zip";G.abetted=Mle,G.abetting=Mle,G.abhorred=kle,G.abhorring=kle,G.abode=RDt,G.abought=xle,G.abutted=Hle,G.abutting=Hle,G.abye=xle,G.accompanied=TDt,G.acetified=NDt,G.acidified=PDt,G.acquitted=Sle,G.acquitting=Sle,G.addrest=GDt,G.admitted=Fle,G.admitting=Fle,G.aerified=YDt,G.airdropped=Rle,G.airdropping=Rle,G.alkalified=UDt,G.allied=LDt,G.allotted=Tle,G.allotting=Tle,G.am=y3,G.ammonified=jDt,G.amnestied=WDt,G.amplified=JDt,G.anglified=qDt,G.annulled=Nle,G.annulling=Nle,G.appalled=Ple,G.appalling=Ple,G.applied=VDt,G.arcked=Gle,G.arcking=Gle,G.are=y3,G.argufied=zDt,G.arisen=Yle,G.arose=Yle,G.ate=Ule,G.atrophied=KDt,G.averred=Lle,G.averring=Lle,G.awoke=jle,G.awoken=jle,G.babied=XDt,G.backbit=Wle,G.backbitten=Wle,G.backslid=Jle,G.backslidden=Jle,G.bade=ipA,G.bagged=qle,G.bagging=qle,G.ballyragged=Vle,G.ballyragging=Vle,G.bandied=ZDt,G.banned=zle,G.banning=zle,G.barred=Kle,G.barrelled=Xle,G.barrelling=Xle,G.barring=Kle,G.basified=$Dt,G.batted=Zle,G.batting=Zle,G.bayonetted=$le,G.bayonetting=$le,G.beaten=A_t,G.beatified=e_t,G.beautified=r_t,G.became=t_t,G.bed=npA,G.bedded=npA,G.bedding=npA,G.bedevilled=Aue,G.bedevilling=Aue,G.bedimmed=eue,G.bedimming=eue,G.been=y3,G.befallen=rue,G.befell=rue,G.befitted=tue,G.befitting=tue,G.befogged=iue,G.befogging=iue,G.began=apA,G.begat=FV,G.begetting=FV,G.begged=nue,G.begging=nue,G.beginning=apA,G.begirt=i_t,G.begot=FV,G.begotten=FV,G.begun=apA,G.beheld=aue,G.beholden=aue,G.bejewelled=oue,G.bejewelling=oue,G.bellied=n_t,G.belying=a_t,G.benefitted=sue,G.benefitting=sue,G.benempt=o_t,G.bent=s_t,G.berried=c_t,G.besetting=l_t,G.besought=u_t,G.bespoke=cue,G.bespoken=cue,G.bestirred=lue,G.bestirring=lue,G.bestrewn=g_t,G.bestrid=opA,G.bestridden=opA,G.bestrode=opA,G.betaken=uue,G.bethought=d_t,G.betook=uue,G.betted=gue,G.betting=gue,G.bevelled=due,G.bevelling=due,G.biassed=pue,G.biassing=pue,G.bidden=ipA,G.bidding=ipA,G.bing=p_t,G.binned=Eue,G.binning=Eue,G.bit=fue,G.bitted=Bue,G.bitten=fue,G.bitting=Bue,G.bivouacked=hue,G.bivouacking=hue,G.blabbed=Que,G.blabbing=Que,G.blackberried=E_t,G.blacklegged=mue,G.blacklegging=mue,G.blatted=Due,G.blatting=Due,G.bled=f_t,G.blest=B_t,G.blew=_ue,G.blipped=wue,G.blipping=wue,G.blobbed=vue,G.blobbing=vue,G.bloodied=h_t,G.blotted=yue,G.blotting=yue,G.blown=_ue,G.blubbed=Cue,G.blubbing=Cue,G.blurred=Iue,G.blurring=Iue,G.bobbed=bue,G.bobbing=bue,G.bodied=Q_t,G.bootlegged=Oue,G.bootlegging=Oue,G.bopped=Mue,G.bopping=Mue,G.bore=spA,G.born=spA,G.borne=spA,G.bought=m_t,G.bound=D_t,G.bragged=kue,G.bragging=kue,G.bred=__t,G.brevetted=xue,G.brevetting=xue,G.brimmed=Hue,G.brimming=Hue,G.broke=Sue,G.broken=Sue,G.brought=w_t,G.browbeaten=v_t,G.brutified=y_t,G.budded=Fue,G.budding=Fue,G.bugged=Rue,G.bugging=Rue,G.built=C_t,G.bulldogging=I_t,G.bullied=b_t,G.bullshitted=Tue,G.bullshitting=Tue,G.bullwhipped=Nue,G.bullwhipping=Nue,G.bullyragged=Pue,G.bullyragging=Pue,G.bummed=Gue,G.bumming=Gue,G.buried=O_t,G.burnt=M_t,G.burred=Yue,G.burring=Yue,G.bushelled=Uue,G.bushelling=Uue,G.busied=k_t,G.bypast=x_t,G.caballed=Lue,G.caballing=Lue,G.caddied=cpA,G.caddies=cpA,G.caddying=cpA,G.calcified=H_t,G.came=S_t,G.canalled=jue,G.canalling=jue,G.cancelled=Wue,G.cancelling=Wue,G.candied=F_t,G.canned=lpA,G.canning=lpA,G.canopied=R_t,G.capped=Jue,G.capping=Jue,G.carburetted=que,G.carburetting=que,G.carillonned=Vue,G.carillonning=Vue,G.carnied=T_t,G.carnified=N_t,G.carolled=zue,G.carolling=zue,G.carried=P_t,G.casefied=G_t,G.catnapped=Kue,G.catnapping=Kue,G.catted=Xue,G.catting=Xue,G.caught=Y_t,G.cavilled=Zue,G.cavilling=Zue,G.certified=U_t,G.channelled=$ue,G.channelling=$ue,G.chapped=Age,G.chapping=Age,G.charred=ege,G.charring=ege,G.chatted=rge,G.chatting=rge,G.chevied=_2,G.chevies=_2,G.chevying=_2,G.chid=tge,G.chidden=tge,G.chinned=ige,G.chinning=ige,G.chipped=nge,G.chipping=nge,G.chiselled=age,G.chiselling=age,G.chitchatted=oge,G.chitchatting=oge,G.chivied=_2,G.chivved=sge,G.chivvied=_2,G.chivvies=_2,G.chivving=sge,G.chivvying=_2,G.chondrified=L_t,G.chopped=cge,G.chopping=cge,G.chose=lge,G.chosen=lge,G.chugged=uge,G.chugging=uge,G.chummed=gge,G.chumming=gge,G.citified=j_t,G.clad=W_t,G.cladded=dge,G.cladding=dge,G.clammed=pge,G.clamming=pge,G.clapped=Ege,G.clapping=Ege,G.clarified=J_t,G.classified=q_t,G.cleft=upA,G.clemmed=fge,G.clemming=fge,G.clept=YpA,G.clipped=Bge,G.clipping=Bge,G.clogged=hge,G.clogging=hge,G.clopped=Qge,G.clopping=Qge,G.clotted=mge,G.clotting=mge,G.clove=upA,G.cloven=upA,G.clubbed=Dge,G.clubbing=Dge,G.clung=V_t,G.cockneyfied=z_t,G.codded=_ge,G.codding=_ge,G.codified=K_t,G.cogged=wge,G.cogging=wge,G.coiffed=vge,G.coiffing=vge,G.collied=X_t,G.combatted=yge,G.combatting=yge,G.committed=Cge,G.committing=Cge,G.compelled=Ige,G.compelling=Ige,G.complied=Z_t,G.complotted=bge,G.complotting=bge,G.concurred=Oge,G.concurring=Oge,G.confabbed=Mge,G.confabbing=Mge,G.conferred=kge,G.conferring=kge,G.conned=xge,G.conning=xge,G.controlled=Hge,G.controlling=Hge,G.copied=$_t,G.copped=Sge,G.copping=Sge,G.coquetted=Fge,G.coquetting=Fge,G.corralled=Rge,G.corralling=Rge,G.could=lpA,G.counselled=Tge,G.counselling=Tge,G.counterplotted=Nge,G.counterplotting=Nge,G.countersank=Pge,G.countersunk=Pge,G.crabbed=Gge,G.crabbing=Gge,G.crammed=Yge,G.cramming=Yge,G.crapped=Uge,G.crapping=Uge,G.creeped=Lge,G.crept=Lge,G.cribbed=jge,G.cribbing=jge,G.cried=Awt,G.cropped=Wge,G.cropping=Wge,G.crossbred=ewt,G.crosscutting=rwt,G.crucified=twt,G.cubbed=Jge,G.cubbing=Jge,G.cudgelled=qge,G.cudgelling=qge,G.cupelled=Vge,G.cupelling=Vge,G.cupped=zge,G.cupping=zge,G.curetted=gpA,G.curettes=gpA,G.curetting=gpA,G.curried=iwt,G.curst=nwt,G.curtsied=awt,G.curvetted=Kge,G.curvetting=Kge,G.cutting=owt,G.dabbed=Xge,G.dabbing=Xge,G.dagged=Zge,G.dagging=Zge,G.dallied=swt,G.dammed=$ge,G.damming=$ge,G.damnified=cwt,G.dandified=lwt,G.dapped=Ade,G.dapping=Ade,G.dealt=uwt,G.debarred=ede,G.debarring=ede,G.debugged=rde,G.debugging=rde,G.debussed=dpA,G.debusses=dpA,G.debussing=dpA,G.decalcified=gwt,G.declassified=dwt,G.decontrolled=tde,G.decontrolling=tde,G.decried=pwt,G.deferred=ide,G.deferring=ide,G.defied=Ewt,G.degassed=ppA,G.degasses=ppA,G.degassing=ppA,G.dehumidified=fwt,G.deified=Bwt,G.demitted=nde,G.demitting=nde,G.demobbed=ade,G.demobbing=ade,G.demulsified=hwt,G.demurred=ode,G.demurring=ode,G.demystified=Qwt,G.denazified=mwt,G.denied=Dwt,G.denitrified=_wt,G.denned=sde,G.denning=sde,G.descried=wwt,G.deterred=cde,G.deterring=cde,G.detoxified=vwt,G.devilled=lde,G.devilling=lde,G.devitrified=ywt,G.diagrammed=ude,G.diagramming=ude,G.dialled=gde,G.dialling=gde,G.dibbed=dde,G.dibbing=dde,G.did=EpA,G.digging=pde,G.dignified=Cwt,G.dimmed=Ede,G.dimming=Ede,G.dinned=fde,G.dinning=fde,G.dipped=Bde,G.dipping=Bde,G.dirtied=Iwt,G.disannulled=hde,G.disannulling=hde,G.disbarred=Qde,G.disbarring=Qde,G.disbudded=mde,G.disbudding=mde,G.disembodied=bwt,G.disembowelled=Dde,G.disembowelling=Dde,G.disenthralled=fpA,G.disenthralling=fpA,G.disenthralls=fpA,G.disenthrals=Owt,G.dishevelled=_de,G.dishevelling=_de,G.disinterred=wde,G.disinterring=wde,G.dispelled=vde,G.dispelling=vde,G.disqualified=Mwt,G.dissatisfied=kwt,G.distilled=yde,G.distilling=yde,G.diversified=xwt,G.divvied=Hwt,G.dizzied=Swt,G.does=EpA,G.dogged=Cde,G.dogging=Cde,G.doglegged=Ide,G.doglegging=Ide,G.dollied=Fwt,G.done=EpA,G.donned=bde,G.donning=bde,G.dotted=Ode,G.dotting=Ode,G.dought=Rwt,G.dove=Twt,G.drabbed=Mde,G.drabbing=Mde,G.dragged=kde,G.dragging=kde,G.drank=xde,G.drawn=Hde,G.dreamt=Nwt,G.drew=Hde,G.dried=Pwt,G.dripped=Sde,G.dripping=Sde,G.drivelled=Fde,G.drivelling=Fde,G.driven=Rde,G.dropped=Tde,G.dropping=Tde,G.drove=Rde,G.drubbed=Nde,G.drubbing=Nde,G.drugged=Pde,G.drugging=Pde,G.drummed=Gde,G.drumming=Gde,G.drunk=xde,G.dubbed=Yde,G.dubbing=Yde,G.duelled=Ude,G.duelling=Ude,G.dug=pde,G.dulcified=Gwt,G.dummied=Ywt,G.dunned=Lde,G.dunning=Lde,G.dwelt=Uwt,G.dying=Lwt,G.easied=jwt,G.eaten=Ule,G.eavesdropped=jde,G.eavesdropping=jde,G.eddied=Wwt,G.edified=Jwt,G.electrified=qwt,G.embedded=Wde,G.embedding=Wde,G.embodied=Vwt,G.embussed=BpA,G.embusses=BpA,G.embussing=BpA,G.emitted=Jde,G.emitting=Jde,G.empanelled=qde,G.empanelling=qde,G.emptied=zwt,G.emulsified=Kwt,G.enamelled=Vde,G.enamelling=Vde,G.englutted=zde,G.englutting=zde,G.enrolled=Kde,G.enrolling=Kde,G.enthralled=Xde,G.enthralling=Xde,G.entrammelled=Zde,G.entrammelling=Zde,G.entrapped=$de,G.entrapping=$de,G.envied=Xwt,G.enwound=Zwt,G.enwrapped=Ape,G.enwrapping=Ape,G.equalled=epe,G.equalling=epe,G.equipped=rpe,G.equipping=rpe,G.espied=$wt,G.esterified=Avt,G.estopped=tpe,G.estopping=tpe,G.etherified=evt,G.excelled=ipe,G.excelling=ipe,G.exemplified=rvt,G.expelled=npe,G.expelling=npe,G.extolled=ape,G.extolling=ape,G.facetted=ope,G.facetting=ope,G.fagged=spe,G.fagging=spe,G.fallen=cpe,G.falsified=tvt,G.fancied=ivt,G.fanned=lpe,G.fanning=lpe,G.fantasied=nvt,G.fatted=upe,G.fatting=upe,G.featherbedded=gpe,G.featherbedding=gpe,G.fed=dpe,G.feed=dpe,G.fell=cpe,G.felt=avt,G.ferried=ovt,G.fibbed=ppe,G.fibbing=ppe,G.figged=Epe,G.figging=Epe,G.finned=fpe,G.finning=fpe,G.fitted=Bpe,G.fitting=Bpe,G.flagged=hpe,G.flagging=hpe,G.flammed=Qpe,G.flamming=Qpe,G.flannelled=mpe,G.flannelling=mpe,G.flapped=Dpe,G.flapping=Dpe,G.flatted=_pe,G.flatting=_pe,G.fled=svt,G.flew=wpe,G.flimflammed=vpe,G.flimflamming=vpe,G.flipped=ype,G.flipping=ype,G.flitted=Cpe,G.flitting=Cpe,G.flogged=Ipe,G.flogging=Ipe,G.floodlit=cvt,G.flopped=bpe,G.flopping=bpe,G.flown=wpe,G.flubbed=Ope,G.flubbing=Ope,G.flung=lvt,G.flurried=uvt,G.flyblew=Mpe,G.flyblown=Mpe,G.fobbed=kpe,G.fobbing=kpe,G.fogged=xpe,G.fogging=xpe,G.footslogged=Hpe,G.footslogging=Hpe,G.forbad=RV,G.forbade=RV,G.forbidden=RV,G.forbidding=RV,G.forbore=Spe,G.forborne=Spe,G.fordid=Fpe,G.fordone=Fpe,G.foredid=Rpe,G.foredone=Rpe,G.foregone=Tpe,G.foreknew=Npe,G.foreknown=Npe,G.foreran=Ppe,G.forerunning=Ppe,G.foresaw=Gpe,G.foreseen=Gpe,G.foreshown=gvt,G.forespoke=Ype,G.forespoken=Ype,G.foretold=dvt,G.forewent=Tpe,G.forgave=Upe,G.forgetting=hpA,G.forgiven=Upe,G.forgone=Lpe,G.forgot=hpA,G.forgotten=hpA,G.formatted=jpe,G.formatting=jpe,G.forsaken=Wpe,G.forsook=Wpe,G.forspoke=Jpe,G.forspoken=Jpe,G.forswore=qpe,G.forsworn=qpe,G.fortified=pvt,G.forwent=Lpe,G.fought=Evt,G.found=fvt,G.foxtrotted=Vpe,G.foxtrotting=Vpe,G.frapped=zpe,G.frapping=zpe,G.frenchified=Bvt,G.frenzied=hvt,G.fretted=Kpe,G.fretting=Kpe,G.fried=Qvt,G.frigged=Xpe,G.frigging=Xpe,G.fritted=Zpe,G.fritting=Zpe,G.frivolled=$pe,G.frivolling=$pe,G.frogged=AEe,G.frogging=AEe,G.frolicked=eEe,G.frolicking=eEe,G.froze=rEe,G.frozen=rEe,G.fructified=mvt,G.fuelled=tEe,G.fuelling=tEe,G.fulfilled=iEe,G.fulfilling=iEe,G.funned=nEe,G.funnelled=aEe,G.funnelling=aEe,G.funning=nEe,G.furred=oEe,G.furring=oEe,G.gadded=sEe,G.gadding=sEe,G.gagged=cEe,G.gagging=cEe,G.gainsaid=Dvt,G.gambolled=lEe,G.gambolling=lEe,G.gammed=uEe,G.gamming=uEe,G.gan=QpA,G.ganned=gEe,G.ganning=gEe,G.gapped=dEe,G.gapping=dEe,G.gasified=_vt,G.gassed=mpA,G.gasses=mpA,G.gassing=mpA,G.gave=pEe,G.gelled=EEe,G.gelling=EEe,G.gelt=wvt,G.gemmed=fEe,G.gemming=fEe,G.getting=DpA,G.ghostwritten=BEe,G.ghostwrote=BEe,G.gibbed=hEe,G.gibbing=hEe,G.giddied=vvt,G.giftwrapped=QEe,G.giftwrapping=QEe,G.gigged=mEe,G.gigging=mEe,G.gilt=yvt,G.ginned=QpA,G.ginning=QpA,G.gipped=DEe,G.gipping=DEe,G.girt=Cvt,G.given=pEe,G.glommed=_Ee,G.glomming=_Ee,G.gloried=Ivt,G.glorified=bvt,G.glutted=wEe,G.glutting=wEe,G.gnawn=Ovt,G.gollied=Mvt,G.gone=UDe,G.got=DpA,G.gotten=DpA,G.grabbed=vEe,G.grabbing=vEe,G.gratified=kvt,G.gravelled=yEe,G.gravelling=yEe,G.graven=xvt,G.grew=CEe,G.grinned=IEe,G.grinning=IEe,G.gripped=_pA,G.gripping=_pA,G.gript=_pA,G.gritted=bEe,G.gritting=bEe,G.ground=Hvt,G.grovelled=OEe,G.grovelling=OEe,G.grown=CEe,G.grubbed=MEe,G.grubbing=MEe,G.guarantied=Svt,G.gullied=Fvt,G.gummed=kEe,G.gumming=kEe,G.gunned=xEe,G.gunning=xEe,G.gypped=HEe,G.gypping=HEe,G.hacksawn=Rvt,G.had=SEe,G.hammed=FEe,G.hamming=FEe,G.hamstrung=Tvt,G.handfed=Nvt,G.handicapped=REe,G.handicapping=REe,G.handselled=TEe,G.handselling=TEe,G.harried=Pvt,G.has=SEe,G.hatchelled=LDe;G.hatchelling=LDe,G.hatted=NEe,G.hatting=NEe,G.heard=Gvt,G.hedgehopped=PEe,G.hedgehopping=PEe,G.held=Yvt,G.hemmed=GEe,G.hemming=GEe,G.hewn=Uvt,G.hiccupped=YEe,G.hiccupping=YEe,G.hid=UEe,G.hidden=UEe,G.hinnied=Lvt,G.hitting=jvt,G.hobbed=LEe,G.hobbing=LEe,G.hobnobbed=jEe,G.hobnobbing=jEe,G.hocussed=WEe,G.hocussing=WEe,G.hogged=JEe,G.hogging=JEe,G.hogtying=Wvt,G.honied=Jvt,G.hopped=qEe,G.hopping=qEe,G.horrified=qvt,G.horsewhipped=VEe,G.horsewhipping=VEe,G.houselled=zEe,G.houselling=zEe,G.hove=Vvt,G.hovelled=KEe,G.hovelling=KEe,G.hugged=XEe,G.hugging=XEe,G.humbugged=ZEe,G.humbugging=ZEe,G.humidified=zvt,G.hummed=$Ee,G.humming=$Ee,G.hung=Kvt,G.hurried=Xvt,G.hypertrophied=Zvt,G.identified=$vt,G.imbedded=Afe,G.imbedding=Afe,G.impanelled=efe,G.impanelling=efe,G.impelled=rfe,G.impelling=rfe,G.implied=Ayt,G.inbred=eyt,G.incurred=tfe,G.incurring=tfe,G.indemnified=ryt,G.indwelt=tyt,G.inferred=ife,G.inferring=ife,G.initialled=nfe,G.initialling=nfe,G.inlaid=iyt,G.insetting=nyt,G.inspanned=afe,G.inspanning=afe,G.installed=ofe,G.installing=ofe,G.intensified=ayt,G.interbred=oyt,G.intercropped=sfe,G.intercropping=sfe,G.intercutting=syt,G.interlaid=cyt,G.interlapped=cfe,G.interlapping=cfe,G.intermarried=lyt,G.intermitted=lfe,G.intermitting=lfe,G.interpled=uyt,G.interred=ufe,G.interring=ufe,G.interstratified=gyt,G.interwove=gfe,G.interwoven=gfe,G.intromitted=dfe,G.intromitting=dfe,G.inwove=pfe,G.inwoven=pfe,G.inwrapped=Efe,G.inwrapping=Efe,G.is=y3,G.jabbed=ffe,G.jabbing=ffe,G.jagged=Bfe,G.jagging=Bfe,G.jammed=hfe,G.jamming=hfe,G.japanned=Qfe,G.japanning=Qfe,G.jarred=mfe,G.jarring=mfe,G.jellied=dyt,G.jellified=pyt,G.jemmied=Eyt,G.jetted=Dfe,G.jetting=Dfe,G.jewelled=_fe,G.jewelling=_fe,G.jibbed=wfe,G.jibbing=wfe,G.jigged=vfe,G.jigging=vfe,G.jimmied=fyt,G.jitterbugged=yfe,G.jitterbugging=yfe,G.jobbed=Cfe,G.jobbing=Cfe,G.jogged=Ife,G.jogging=Ife,G.jollied=Byt,G.jollified=hyt,G.jotted=bfe,G.jotting=bfe,G.joypopped=Ofe,G.joypopping=Ofe,G.jugged=Mfe,G.jugging=Mfe,G.justified=Qyt,G.jutted=kfe,G.jutting=kfe,G.kenned=wpA,G.kennelled=xfe,G.kennelling=xfe,G.kenning=wpA,G.kent=wpA,G.kept=myt,G.kernelled=Hfe,G.kernelling=Hfe,G.kidded=Sfe,G.kidding=Sfe,G.kidnapped=Ffe,G.kidnapping=Ffe,G.kipped=Rfe,G.kipping=Rfe,G.knapped=Tfe,G.knapping=Tfe,G.kneecapped=Nfe,G.kneecapping=Nfe,G.knelt=Dyt,G.knew=Pfe,G.knitted=Gfe,G.knitting=Gfe,G.knobbed=Yfe,G.knobbing=Yfe,G.knotted=Ufe,G.knotting=Ufe,G.known=Pfe,G.labelled=Lfe,G.labelling=Lfe,G.laden=_yt,G.ladyfied=vpA,G.ladyfies=vpA,G.ladyfying=vpA,G.lagged=jfe,G.lagging=jfe,G.laid=wyt,G.lain=ypA,G.lallygagged=Wfe,G.lallygagging=Wfe,G.lammed=Jfe,G.lamming=Jfe,G.lapidified=vyt,G.lapped=qfe,G.lapping=qfe,G.laurelled=Vfe,G.laurelling=Vfe,G.lay=ypA,G.leant=yyt,G.leapfrogged=zfe,G.leapfrogging=zfe,G.leapt=Cyt,G.learnt=Iyt,G.led=byt,G.left=Oyt,G.lent=Myt,G.letting=kyt,G.levelled=Kfe,G.levelling=Kfe,G.levied=xyt,G.libelled=Xfe,G.libelling=Xfe,G.lignified=Hyt,G.lipped=Zfe,G.lipping=Zfe,G.liquefied=Syt,G.liquified=Fyt,G.lit=Ryt,G.lobbed=$fe,G.lobbied=Tyt,G.lobbing=$fe,G.logged=ABe,G.logging=ABe,G.lopped=eBe,G.lopping=eBe,G.lost=Nyt,G.lotted=rBe,G.lotting=rBe,G.lugged=tBe,G.lugging=tBe,G.lullabied=Pyt,G.lying=ypA,G.madded=iBe,G.madding=iBe,G.made=Gyt,G.magnified=Yyt,G.manned=nBe,G.manning=nBe,G.manumitted=aBe,G.manumitting=aBe,G.mapped=oBe,G.mapping=oBe,G.marcelled=sBe,G.marcelling=sBe,G.marred=cBe,G.married=Uyt,G.marring=cBe,G.marshalled=lBe,G.marshalling=lBe,G.marvelled=uBe,G.marvelling=uBe,G.matted=gBe,G.matting=gBe,G.meant=Lyt,G.medalled=dBe,G.medalling=dBe,G.met=jyt,G.metalled=pBe,G.metalling=pBe,G.metrified=Wyt,G.might=Jyt,G.mimicked=EBe,G.mimicking=EBe,G.minified=qyt,G.misapplied=Vyt,G.misbecame=zyt,G.miscarried=Kyt,G.misdealt=Xyt,G.misfitted=fBe,G.misfitting=fBe,G.misgave=BBe,G.misgiven=BBe,G.mishitting=Zyt,G.mislaid=$yt,G.misled=A2t,G.mispled=e2t,G.misspelt=r2t,G.misspent=t2t,G.mistaken=hBe,G.mistook=hBe,G.misunderstood=i2t,G.mobbed=QBe,G.mobbing=QBe,G.modelled=mBe,G.modelling=mBe,G.modified=n2t,G.mollified=a2t,G.molten=o2t,G.mopped=DBe,G.mopping=DBe,G.mortified=s2t,G.mown=c2t,G.mudded=_Be,G.muddied=l2t,G.mudding=_Be,G.mugged=wBe,G.mugging=wBe,G.multiplied=u2t,G.mummed=vBe,G.mummified=g2t,G.mumming=vBe,G.mutinied=d2t,G.mystified=p2t,G.nabbed=yBe,G.nabbing=yBe,G.nagged=CBe,G.nagging=CBe,G.napped=IBe,G.napping=IBe,G.netted=bBe,G.netting=bBe,G.nibbed=OBe,G.nibbing=OBe,G.nickelled=MBe,G.nickelling=MBe,G.nidified=E2t,G.nigrified=f2t,G.nipped=kBe,G.nipping=kBe,G.nitrified=B2t,G.nodded=xBe,G.nodding=xBe,G.nonplussed=CpA,G.nonplusses=CpA,G.nonplussing=CpA,G.notified=h2t,G.nullified=Q2t,G.nutted=HBe,G.nutting=HBe,G.objectified=m2t,G.occupied=D2t,G.occurred=SBe,G.occurring=SBe,G.offsetting=_2t,G.omitted=FBe,G.omitting=FBe,G.ossified=w2t,G.outbidden=RBe,G.outbidding=RBe,G.outbred=v2t,G.outcried=y2t,G.outcropped=TBe,G.outcropping=TBe,G.outdid=NBe,G.outdone=NBe,G.outdrawn=PBe,G.outdrew=PBe,G.outfitted=GBe,G.outfitting=GBe,G.outfought=C2t,G.outgassed=IpA,G.outgasses=IpA,G.outgassing=IpA,G.outgeneralled=YBe,G.outgeneralling=YBe,G.outgone=UBe,G.outgrew=LBe,G.outgrown=LBe,G.outlaid=I2t,G.outmanned=jBe,G.outmanning=jBe,G.outputted=WBe,G.outputting=WBe,G.outran=JBe,G.outridden=qBe,G.outrode=qBe,G.outrunning=JBe,G.outshone=b2t,G.outshot=O2t,G.outsold=M2t,G.outspanned=VBe,G.outspanning=VBe,G.outstood=k2t,G.outstripped=zBe,G.outstripping=zBe,G.outthought=x2t,G.outwent=UBe,G.outwitted=KBe,G.outwitting=KBe,G.outwore=XBe,G.outworn=XBe,G.overbidden=ZBe,G.overbidding=ZBe,G.overblew=$Be,G.overblown=$Be,G.overbore=Ahe,G.overborne=Ahe,G.overbuilt=H2t,G.overcame=S2t,G.overcropped=ehe,G.overcropping=ehe,G.overdid=rhe,G.overdone=rhe,G.overdrawn=the,G.overdrew=the,G.overdriven=ihe,G.overdrove=ihe,G.overflew=F2t,G.overflown=R2t,G.overgrew=nhe,G.overgrown=nhe,G.overheard=T2t,G.overhung=N2t,G.overlaid=P2t,G.overlain=bpA,G.overlapped=ahe,G.overlapping=ahe,G.overlay=bpA,G.overlying=bpA,G.overmanned=ohe,G.overmanning=ohe,G.overpaid=G2t,G.overpast=Y2t,G.overran=she,G.overridden=che,G.overrode=che,G.overrunning=she,G.oversaw=lhe,G.overseen=lhe,G.oversetting=U2t,G.oversewn=L2t,G.overshot=j2t,G.oversimplified=W2t,G.overslept=J2t,G.oversold=q2t,G.overspent=V2t,G.overspilt=z2t,G.overstepped=uhe,G.overstepping=uhe,G.overtaken=ghe,G.overthrew=dhe,G.overthrown=dhe,G.overtook=ghe,G.overtopped=phe,G.overtopping=phe,G.overwound=K2t,G.overwritten=Ehe,G.overwrote=Ehe,G.pacified=X2t,G.padded=fhe,G.padding=fhe,G.paid=Z2t,G.palled=Bhe,G.palling=Bhe,G.palsied=$2t,G.pandied=ACt,G.panelled=hhe,G.panelling=hhe,G.panicked=Qhe,G.panicking=Qhe,G.panned=mhe,G.panning=mhe,G.parallelled=Dhe,G.parallelling=Dhe,G.parcelled=_he,G.parcelling=_he,G.parodied=eCt,G.parried=rCt,G.partaken=whe,G.partook=whe,G.pasquil=TV,G.pasquilled=TV,G.pasquilling=TV,G.pasquils=TV,G.patrolled=vhe,G.patrolling=vhe,G.patted=yhe,G.patting=yhe,G.pedalled=Che,G.pedalling=Che,G.pegged=Ihe,G.pegging=Ihe,G.pencilled=bhe,G.pencilling=bhe,G.penned=OpA,G.penning=OpA,G.pent=OpA,G.pepped=Ohe,G.pepping=Ohe,G.permitted=Mhe,G.permitting=Mhe,G.personified=tCt,G.petrified=iCt,G.petted=khe,G.pettifogged=xhe,G.pettifogging=xhe,G.petting=khe,G.phantasied=nCt,G.photocopied=aCt,G.photomapped=Hhe,G.photomapping=Hhe,G.photosetting=oCt,G.physicked=She,G.physicking=She,G.picnicked=Fhe,G.picnicking=Fhe,G.pigged=Rhe,G.pigging=Rhe,G.pilloried=sCt,G.pinned=The,G.pinning=The,G.pipped=Nhe,G.pipping=Nhe,G.pistolled=Phe,G.pistolling=Phe,G.pitapatted=Ghe,G.pitapatting=Ghe,G.pitied=cCt,G.pitted=Yhe,G.pitting=Yhe,G.planned=Uhe,G.planning=Uhe,G.platted=Lhe,G.platting=Lhe,G.pled=lCt,G.plied=uCt,G.plodded=jhe,G.plodding=jhe,G.plopped=Whe,G.plopping=Whe,G.plotted=Jhe,G.plotting=Jhe,G.plugged=qhe,G.plugging=qhe,G.podded=Vhe,G.podding=Vhe,G.pommelled=zhe,G.pommelling=zhe,G.popes=gCt,G.popped=Khe,G.popping=Khe,G.potted=Xhe,G.potting=Xhe,G.preachified=dCt,G.precancelled=Zhe,G.precancelling=Zhe,G.preferred=$he,G.preferring=$he,G.preoccupied=pCt,G.prepaid=ECt,G.presignified=fCt,G.pretermitted=AQe,G.pretermitting=AQe,G.prettied=BCt,G.prettified=hCt,G.pried=QCt,G.prigged=eQe,G.prigging=eQe,G.primmed=rQe,G.primming=rQe,G.prodded=tQe,G.prodding=tQe,G.programmed=MpA,G.programmes=MpA,G.programming=MpA,G.prologed=kpA,G.prologing=kpA,G.prologs=kpA,G.propelled=iQe,G.propelling=iQe,G.prophesied=mCt,G.propped=nQe,G.propping=nQe,G.proven=DCt,G.pubbed=aQe,G.pubbing=aQe,G.pugged=oQe,G.pugging=oQe,G.pummelled=sQe,G.pummelling=sQe,G.punned=cQe,G.punning=cQe,G.pupped=lQe,G.pupping=lQe,G.purified=_Ct,G.putrefied=wCt,G.puttied=vCt,G.putting=yCt,G.qualified=CCt,G.quantified=ICt,G.quarrelled=uQe,G.quarrelling=uQe,G.quarried=bCt,G.quartersawn=OCt,G.queried=MCt,G.quickstepped=gQe,G.quickstepping=gQe,G.quipped=dQe,G.quipping=dQe,G.quitted=pQe,G.quitting=pQe,G.quizzed=xpA,G.quizzes=xpA,G.quizzing=xpA,G.ragged=EQe,G.ragging=EQe,G.rallied=kCt,G.ramified=xCt,G.rammed=fQe,G.ramming=fQe,G.ran=BQe,G.rang=hQe,G.rapped=QQe,G.rappelled=mQe,G.rappelling=mQe,G.rapping=QQe,G.rarefied=HCt,G.ratified=SCt,G.ratted=DQe,G.ratting=DQe,G.ravelled=_Qe,G.ravelling=_Qe,G.rebelled=wQe,G.rebelling=wQe,G.rebuilt=FCt,G.rebutted=vQe,G.rebutting=vQe,G.recapped=yQe,G.recapping=yQe,G.reclassified=RCt,G.recommitted=CQe,G.recommitting=CQe,G.recopied=TCt,G.rectified=NCt,G.recurred=IQe,G.recurring=IQe,G.red=HpA,G.redded=HpA,G.redding=HpA,G.redid=bQe,G.redone=bQe,G.referred=OQe,G.referring=OQe,G.refitted=MQe,G.refitting=MQe,G.reft=PCt,G.refuelled=kQe,G.refuelling=kQe,G.regretted=xQe,G.regretting=xQe,G.reheard=GCt,G.reified=YCt,G.relied=UCt,G.remade=LCt,G.remarried=jCt,G.remitted=HQe,G.remitting=HQe,G.rent=WCt,G.repaid=JCt,G.repelled=SQe,G.repelling=SQe,G.replevied=qCt,G.replied=VCt,G.repotted=FQe,G.repotting=FQe,G.reran=RQe,G.rerunning=RQe,G.resat=TQe,G.resetting=zCt,G.resewn=KCt,G.resitting=TQe,G.retaken=NQe,G.rethought=XCt,G.retold=ZCt,G.retook=NQe,G.retransmitted=PQe,G.retransmitting=PQe,G.retried=$Ct,G.retrofitted=GQe,G.retrofitting=GQe,G.retted=YQe,G.retting=YQe,G.reunified=AIt,G.revelled=UQe,G.revelling=UQe,G.revetted=LQe,G.revetting=LQe,G.revivified=eIt,G.revved=jQe,G.revving=jQe,G.rewound=rIt,G.rewritten=WQe,G.rewrote=WQe,G.ribbed=JQe,G.ribbing=JQe,G.ricochetted=qQe,G.ricochetting=qQe,G.ridded=VQe,G.ridden=zQe,G.ridding=VQe,G.rigged=KQe,G.rigging=KQe,G.rigidified=tIt,G.rimmed=XQe,G.rimming=XQe,G.ripped=ZQe,G.ripping=ZQe,G.risen=$Qe,G.rivalled=A0e,G.rivalling=A0e,G.riven=iIt,G.robbed=e0e,G.robbing=e0e,G.rode=zQe,G.rose=$Qe,G.rotted=r0e,G.rotting=r0e,G.rove=nIt,G.rowelled=t0e,G.rowelling=t0e,G.rubbed=i0e,G.rubbing=i0e,G.rung=hQe,G.running=BQe,G.rutted=n0e,G.rutting=n0e,G.saccharified=aIt,G.sagged=a0e,G.sagging=a0e,G.said=oIt,G.salaried=sIt,G.salified=cIt,G.sallied=lIt,G.sanctified=uIt,G.sandbagged=o0e,G.sandbagging=o0e,G.sang=UpA,G.sank=LpA,G.saponified=gIt,G.sapped=s0e,G.sapping=s0e,G.sat=jDe,G.satisfied=dIt,G.savvied=pIt,G.saw=c0e,G.sawn=EIt,G.scagged=l0e,G.scagging=l0e,G.scanned=u0e,G.scanning=u0e,G.scarified=fIt,G.scarred=g0e,G.scarring=g0e,G.scatted=d0e,G.scatting=d0e,G.scorified=BIt,G.scragged=p0e,G.scragging=p0e,G.scrammed=E0e,G.scramming=E0e,G.scrapped=f0e,G.scrapping=f0e,G.scried=hIt,G.scrubbed=B0e,G.scrubbing=B0e,G.scrummed=h0e,G.scrumming=h0e,G.scudded=Q0e,G.scudding=Q0e,G.scummed=m0e,G.scumming=m0e,G.scurried=QIt,G.seed=mIt,G.seen=c0e,G.sent=DIt,G.setting=_It,G.sewn=wIt,G.shagged=D0e,G.shagging=D0e,G.shaken=_0e,G.shammed=w0e,G.shamming=w0e,G.sharecropped=v0e,G.sharecropping=v0e,G.shat=SpA,G.shaven=vIt,G.shorn=NIt,G.shed=y0e,G.shedding=y0e,G.shellacked=C0e,G.shellacking=C0e,G.shent=yIt,G.shewn=CIt,G.shied=IIt,G.shikarred=I0e,G.shikarring=I0e,G.shillyshallied=bIt,G.shimmed=b0e,G.shimmied=OIt,G.shimming=b0e,G.shinned=O0e,G.shinning=O0e,G.shipped=M0e,G.shipping=M0e,G.shitted=SpA,G.shitting=SpA,G.shod=MIt,G.shone=kIt,G.shook=_0e,G.shopped=k0e,G.shopping=k0e,G.shot=xIt,G.shotgunned=x0e,G.shotgunning=x0e,G.shotted=H0e,G.shotting=H0e,G.shovelled=S0e,G.shovelling=S0e,G.shown=HIt,G.shrank=jpA,G.shredded=F0e,G.shredding=F0e,G.shrivelled=R0e,G.shrivelling=R0e,G.shriven=T0e,G.shrove=T0e,G.shrugged=N0e,G.shrugging=N0e,G.shrunk=jpA;G.shrunken=jpA,G.shunned=P0e,G.shunning=P0e,G.shutting=SIt,G.sicked=G0e,G.sicking=G0e,G.sideslipped=Y0e,G.sideslipping=Y0e,G.sidestepped=U0e,G.sidestepping=U0e,G.sightsaw=L0e,G.sightseen=L0e,G.signalled=j0e,G.signalling=j0e,G.signified=FIt,G.silicified=RIt,G.simplified=TIt,G.singing=UpA,G.sinned=W0e,G.sinning=W0e,G.sipped=J0e,G.sipping=J0e,G.sitting=jDe,G.skellied=PIt,G.skenned=q0e,G.skenning=q0e,G.sketted=V0e,G.sketting=V0e,G.skidded=z0e,G.skidding=z0e,G.skimmed=K0e,G.skimming=K0e,G.skinned=X0e,G.skinning=X0e,G.skipped=Z0e,G.skipping=Z0e,G.skivvied=GIt,G.skydove=YIt,G.slabbed=$0e,G.slabbing=$0e,G.slagged=Ame,G.slagging=Ame,G.slain=eme,G.slammed=rme,G.slamming=rme,G.slapped=tme,G.slapping=tme,G.slatted=ime,G.slatting=ime,G.sledding=UIt,G.slept=LIt,G.slew=eme,G.slid=nme,G.slidden=nme,G.slipped=ame,G.slipping=ame,G.slitting=jIt,G.slogged=ome,G.slogging=ome,G.slopped=sme,G.slopping=sme,G.slotted=cme,G.slotting=cme,G.slugged=lme,G.slugging=lme,G.slummed=ume,G.slumming=ume,G.slung=WIt,G.slunk=JIt,G.slurred=gme,G.slurring=gme,G.smelt=qIt,G.smit=FpA,G.smitten=FpA,G.smote=FpA,G.smutted=dme,G.smutting=dme,G.snagged=pme,G.snagging=pme,G.snapped=Eme,G.snapping=Eme,G.snedded=fme,G.snedding=fme,G.snipped=Bme,G.snipping=Bme,G.snivelled=hme,G.snivelling=hme,G.snogged=Qme,G.snogging=Qme,G.snubbed=mme,G.snubbing=mme,G.snuck=VIt,G.snugged=Dme,G.snugging=Dme,G.sobbed=_me,G.sobbing=_me,G.sodded=wme,G.sodding=wme,G.sold=zIt,G.solemnified=KIt,G.solidified=XIt,G.soothsaid=ZIt,G.sopped=vme,G.sopping=vme,G.sought=$It,G.sown=Abt,G.spagged=yme,G.spagging=yme,G.spancelled=Cme,G.spancelling=Cme,G.spanned=Ime,G.spanning=Ime,G.sparred=bme,G.sparring=bme,G.spat=RpA,G.spatted=Ome,G.spatting=Ome,G.specified=ebt,G.sped=rbt,G.speechified=tbt,G.spellbound=ibt,G.spelt=nbt,G.spent=abt,G.spied=obt,G.spilt=sbt,G.spinning=Mme,G.spiralled=kme,G.spiralling=kme,G.spitted=RpA,G.spitting=RpA,G.splitting=cbt,G.spoilt=lbt,G.spoke=xme,G.spoken=xme,G.spotlit=ubt,G.spotted=Hme,G.spotting=Hme,G.sprang=Sme,G.sprigged=Fme,G.sprigging=Fme,G.sprung=Sme,G.spudded=Rme,G.spudding=Rme,G.spun=Mme,G.spurred=Tme,G.spurring=Tme,G.squatted=Nme,G.squatting=Nme,G.squibbed=Pme,G.squibbing=Pme,G.squidded=Gme,G.squidding=Gme,G.squilgee=gbt,G.stabbed=Yme,G.stabbing=Yme,G.stank=Ume,G.starred=Lme,G.starring=Lme,G.steadied=dbt,G.stellified=pbt,G.stemmed=jme,G.stemming=jme,G.stencilled=Wme,G.stencilling=Wme,G.stepped=Jme,G.stepping=Jme,G.stetted=qme,G.stetting=qme,G.stied=Ebt,G.stilettoeing=fbt,G.stirred=Vme,G.stirring=Vme,G.stole=zme,G.stolen=zme,G.stood=Bbt,G.stopped=Kme,G.stopping=Kme,G.storied=hbt,G.stotted=Xme,G.stotting=Xme,G.stove=Qbt,G.strapped=Zme,G.strapping=Zme,G.stratified=mbt,G.strewn=Dbt,G.stridden=$me,G.stripped=A1e,G.stripping=A1e,G.striven=e1e,G.strode=$me,G.stropped=r1e,G.stropping=r1e,G.strove=e1e,G.strown=_bt,G.stricken=t1e,G.struck=t1e,G.strummed=i1e,G.strumming=i1e,G.strung=wbt,G.strutted=n1e,G.strutting=n1e,G.stubbed=a1e,G.stubbing=a1e,G.stuck=vbt,G.studded=o1e,G.studding=o1e,G.studied=ybt,G.stultified=Cbt,G.stummed=s1e,G.stumming=s1e,G.stung=Ibt,G.stunk=Ume,G.stunned=c1e,G.stunning=c1e,G.stupefied=bbt,G.stymying=Obt,G.subbed=l1e,G.subbing=l1e,G.subjectified=Mbt,G.subletting=kbt,G.submitted=u1e,G.submitting=u1e,G.subtotalled=g1e,G.subtotalling=g1e,G.sullied=xbt,G.sulphuretted=d1e,G.sulphuretting=d1e,G.summed=p1e,G.summing=p1e,G.sung=UpA,G.sunk=LpA,G.sunken=LpA,G.sunned=E1e,G.sunning=E1e,G.supped=f1e,G.supping=f1e,G.supplied=Hbt,G.swabbed=B1e,G.swabbing=B1e,G.swagged=h1e,G.swagging=h1e,G.swam=TpA,G.swapped=Tk,G.swapping=Tk,G.swatted=Q1e,G.swatting=Q1e,G.swept=Sbt,G.swigged=m1e,G.swigging=m1e,G.swimming=TpA,G.swivelled=D1e,G.swivelling=D1e,G.swollen=Fbt,G.swopped=Tk,G.swopping=Tk,G.swops=Tk,G.swore=_1e,G.sworn=_1e,G.swotted=w1e,G.swotting=w1e,G.swum=TpA,G.swung=Rbt,G.syllabified=Tbt,G.symbolled=v1e,G.symbolling=v1e,G.tabbed=y1e,G.tabbing=y1e,G.tagged=C1e,G.tagging=C1e,G.taken=I1e,G.talcked=b1e,G.talcking=b1e,G.tallied=Nbt,G.tammied=Pbt,G.tanned=O1e,G.tanning=O1e,G.tapped=M1e,G.tapping=M1e,G.tarred=k1e,G.tarried=Gbt,G.tarring=k1e,G.tasselled=x1e,G.tasselling=x1e,G.tatted=H1e,G.tatting=H1e,G.taught=Ybt,G.taxis=Ubt,G.taxying=Lbt,G.teaselled=S1e,G.teaselling=S1e,G.tedded=F1e,G.tedding=F1e,G.tepefied=jbt,G.terrified=Wbt,G.testes=Jbt,G.testified=qbt,G.thinned=R1e,G.thinning=R1e,G.thought=Vbt,G.threw=T1e,G.thriven=N1e,G.throbbed=P1e,G.throbbing=P1e,G.throve=N1e,G.thrown=T1e,G.thrummed=G1e,G.thrumming=G1e,G.thudded=Y1e,G.thudding=Y1e,G.tidied=zbt,G.tinned=U1e,G.tinning=U1e,G.tinselled=L1e,G.tinselling=L1e,G.tipped=j1e,G.tipping=j1e,G.tittupped=W1e,G.tittupping=W1e,G.toadied=Kbt,G.togged=J1e,G.togging=J1e,G.told=Xbt,G.took=I1e,G.topped=q1e,G.topping=q1e,G.tore=V1e,G.torn=V1e,G.torrefied=z1e,G.torrify=z1e,G.totalled=K1e,G.totalling=K1e,G.totted=X1e,G.totting=X1e,G.towelled=Z1e,G.towelling=Z1e,G.trafficked=$1e,G.trafficking=$1e,G.trameled=Nk,G.trameling=Nk,G.tramelled=Nk,G.tramelling=Nk,G.tramels=Nk,G.trammed=A4e,G.tramming=A4e,G.transferred=e4e,G.transferring=e4e,G.transfixt=Zbt,G.tranship=NpA,G.transhipped=r4e,G.transhipping=r4e,G.transmitted=t4e,G.transmitting=t4e,G.transmogrified=$bt,G.transshipped=NpA,G.transshipping=NpA,G.trapanned=i4e,G.trapanning=i4e,G.trapped=n4e,G.trapping=n4e,G.travelled=a4e,G.travelling=a4e,G.travestied=A5t,G.trekked=o4e,G.trekking=o4e,G.trepanned=s4e,G.trepanning=s4e,G.tried=e5t,G.trigged=c4e,G.trigging=c4e,G.trimmed=l4e,G.trimming=l4e,G.tripped=u4e,G.tripping=u4e,G.trod=g4e,G.trodden=g4e,G.trogged=d4e,G.trogging=d4e,G.trotted=p4e,G.trotting=p4e,G.trowelled=E4e,G.trowelling=E4e,G.tugged=f4e,G.tugging=f4e,G.tumefied=r5t,G.tunned=B4e,G.tunnelled=h4e,G.tunnelling=h4e,G.tunning=B4e,G.tupped=Q4e,G.tupping=Q4e,G.twigged=m4e,G.twigging=m4e,G.twinned=D4e,G.twinning=D4e,G.twitted=_4e,G.twitting=_4e,G.tying=t5t,G.typesetting=i5t,G.typewritten=w4e,G.typewrote=w4e,G.typified=n5t,G.uglified=a5t,G.unbarred=v4e,G.unbarring=v4e,G.unbent=o5t,G.unbound=s5t,G.uncapped=y4e,G.uncapping=y4e,G.unclad=c5t,G.unclogged=C4e,G.unclogging=C4e,G.underbidding=l5t,G.underbought=u5t,G.undercutting=g5t,G.underfed=d5t,G.undergirt=p5t,G.undergone=I4e,G.underlaid=E5t,G.underlain=PpA,G.underlay=PpA,G.underletting=f5t,G.underlying=PpA,G.underpaid=B5t,G.underpinned=b4e,G.underpinning=b4e,G.underpropped=O4e,G.underpropping=O4e,G.undersetting=h5t,G.undershot=Q5t,G.undersold=m5t,G.understood=D5t,G.understudied=_5t,G.undertaken=M4e,G.undertook=M4e,G.underwent=I4e,G.underwritten=k4e,G.underwrote=k4e,G.undid=x4e,G.undone=x4e,G.unfitted=H4e,G.unfitting=H4e,G.unfroze=S4e,G.unfrozen=S4e,G.unified=w5t,G.unkennelled=F4e,G.unkennelling=F4e,G.unknitted=R4e,G.unknitting=R4e,G.unlaid=v5t,G.unlearnt=y5t,G.unmade=C5t,G.unmanned=T4e,G.unmanning=T4e,G.unpegged=N4e,G.unpegging=N4e,G.unpinned=P4e,G.unpinning=P4e,G.unplugged=G4e,G.unplugging=G4e,G.unravelled=Y4e,G.unravelling=Y4e,G.unrigged=U4e,G.unrigging=U4e,G.unripped=L4e,G.unripping=L4e,G.unrove=I5t,G.unsaid=b5t,G.unshipped=j4e,G.unshipping=j4e,G.unslung=O5t,G.unsnapped=W4e,G.unsnapping=W4e,G.unspoke=J4e,G.unspoken=J4e,G.unsteadied=M5t,G.unstepped=q4e,G.unstepping=q4e,G.unstopped=V4e,G.unstopping=V4e,G.unstrung=k5t,G.unstuck=x5t,G.unswore=z4e,G.unsworn=z4e,G.untaught=H5t,G.unthought=S5t,G.untidied=F5t,G.untrod=K4e,G.untrodden=K4e,G.untying=R5t,G.unwound=T5t,G.unwrapped=X4e,G.unwrapping=X4e,G.unzipped=Z4e,G.unzipping=Z4e,G.upbuilt=N5t,G.upheld=P5t,G.uphove=G5t,G.upped=$4e,G.uppercutting=Y5t,G.upping=$4e,G.uprisen=ADe,G.uprose=ADe,G.upsetting=U5t,G.upsprang=eDe,G.upsprung=eDe,G.upswept=L5t,G.upswollen=j5t,G.upswung=W5t,G.vagged=rDe,G.vagging=rDe,G.varied=J5t,G.vatted=tDe,G.vatting=tDe,G.verbified=q5t,G.verified=V5t,G.versified=z5t,G.vetted=iDe,G.vetting=iDe,G.victualled=nDe,G.victualling=nDe,G.vilified=K5t,G.vitrified=X5t,G.vitriolled=aDe,G.vitriolling=aDe,G.vivified=Z5t,G.vying=$5t,G.wadded=oDe,G.waddied=A3t,G.wadding=oDe,G.wadsetted=sDe,G.wadsetting=sDe,G.wagged=cDe,G.wagging=cDe,G.wanned=lDe,G.wanning=lDe,G.warred=uDe,G.warring=uDe,G.was=y3,G.waylaid=e3t,G.wearied=r3t,G.weatherstripped=gDe,G.weatherstripping=gDe,G.webbed=dDe,G.webbing=dDe,G.wedded=pDe,G.wedding=pDe,G.weed=t3t,G.went=UDe,G.wept=i3t,G.were=y3,G.wetted=EDe,G.wetting=EDe,G.whammed=fDe,G.whamming=fDe,G.whapped=BDe,G.whapping=BDe,G.whetted=hDe,G.whetting=hDe,G.whinnied=n3t,G.whipped=QDe,G.whipping=QDe,G.whipsawn=a3t,G.whirred=mDe,G.whirring=mDe,G.whizzed=GpA,G.whizzes=GpA,G.whizzing=GpA,G.whopped=DDe,G.whopping=DDe,G.wigged=_De,G.wigging=_De,G.wigwagged=wDe,G.wigwagging=wDe,G.wildcatted=vDe,G.wildcatting=vDe,G.winning=yDe,G.winterfed=s3t,G.wiredrawn=CDe,G.wiredrew=CDe,G.withdrawn=IDe,G.withdrew=IDe,G.withheld=c3t,G.withstood=l3t,G.woke=bDe,G.woken=bDe,G.won=yDe,G.wonned=ODe,G.wonning=ODe,G.wore=MDe,G.worn=MDe,G.worried=u3t,G.worshipped=kDe,G.worshipping=kDe,G.wound=g3t,G.wove=xDe,G.woven=xDe,G.wrapped=HDe,G.wrapping=HDe,G.wried=d3t,G.written=SDe,G.wrote=SDe,G.wrought=p3t,G.wrung=E3t,G.would=o3t,G.yakked=FDe,G.yakking=FDe,G.yapped=RDe,G.yapping=RDe,G.ycleped=YpA,G.yclept=YpA,G.yenned=TDe,G.yenning=TDe,G.yodelled=NDe,G.yodelling=NDe,G.zapped=PDe,G.zapping=PDe,G.zigzagged=GDe,G.zigzagging=GDe,G.zipped=YDe,G.zipping=YDe,WDe.exports=G});var VDe=GA((Hsi,qDe)=>{var f3t=Fce(),B3t=Ole(),h3t=JDe(),Q3t=function(A,r){var t=f3t[A];return t||((t=A.replace(/est$|er$/,"")).length===A.length?A:r.hasSamePOS(t,"ADJ")?t:(t+="e",r.hasSamePOS(t,"ADJ")?t:A))},m3t=function(A,r){var t=h3t[A];return t||(t=A.replace(/s$/,"")).length!==A.length&&r.hasSamePOS(t,"VERB")||(t=A.replace(/ies$/,"y")).length!==A.length&&r.hasSamePOS(t,"VERB")||(t=A.replace(/es$|ed$|ing$/,"")).length!==A.length&&(r.hasSamePOS(t,"VERB")||(t+="e",r.hasSamePOS(t,"VERB")))?t:A},WpA=[{replace:/s$/,by:""},{replace:/ses$/,by:"s"},{replace:/xes$/,by:"x"},{replace:/zes$/,by:"s"},{replace:/ves$/,by:"f"},{replace:/ches$/,by:"ch"},{replace:/shes$/,by:"sh"},{replace:/ies$/,by:"y"}],D3t=function(A,r){var t=B3t[A];if(t)return t;t=A;for(let i=0;i{var w3t=/[^aeiouy]+/,xn=Object.create(null);xn.adobe=3,xn.anemone=4,xn.anyone=3,xn.apache=3,xn.aphrodite=4,xn.apostrophe=4,xn.ariadne=4,xn.chummed=1,xn.cafe=2,xn.calliope=4,xn.catastrophe=4,xn.chile=2,xn.chloe=2,xn.circe=2,xn.coyote=3,xn.daphne=2,xn.epitome=4,xn.eurydice=4,xn.euterpe=3,xn.every=2,xn.everywhere=3,xn.forever=3,xn.gethsemane=4,xn.guacamole=4,xn.hermione=4,xn.hyperbole=4,xn.jesse=2,xn.jukebox=2,xn.karate=3,xn.peeped=1,xn.moustaches=2,xn.shamefully=3,xn.messieurs=2,xn.satiated=4,xn.sailmaker=4,xn.sheered=1,xn.disinterred=3,xn.propitiatory=6,xn.bepatched=2,xn.particularized=5,xn.caressed=2,xn.trespassed=2,xn.sepulchre=3,xn.flapped=1,xn.hemispheres=3,xn.pencilled=2,xn.motioned=2,xn.machete=3,xn.maybe=2,xn.naive=2,xn.newlywed=3,xn.penelope=4,xn.people=2,xn.persephone=4,xn.phoebe=2,xn.pulse=1,xn.queue=1,xn.recipe=3,xn.riverbed=3,xn.sesame=3,xn.shoreline=2,xn.simile=3,xn.snuffleupagus=5,xn.sometimes=2,xn.syncope=3,xn.poleman=2,xn.slandered=2,xn.sombre=2,xn.etc=4,xn.sidespring=2,xn.mimes=1,xn.effaces=2,xn.mr=2,xn.mrs=2,xn.ms=1,xn.dr=2,xn.st=1,xn.sr=2,xn.jr=2,xn.truckle=2,xn.foamed=1,xn.fringed=2,xn.clattered=2,xn.capered=2,xn.mangroves=2,xn.suavely=2,xn.reclined=2,xn.brutes=1,xn.effaced=2,xn.quivered=2,xn.veriest=3,xn.sententiously=4,xn.deafened=2,xn.manoeuvred=3,xn.unstained=2,xn.gaped=1,xn.stammered=2,xn.shivered=2,xn.discoloured=3,xn.gravesend=2,xn.lb=1,xn.unexpressed=3,xn.greyish=2,xn.unostentatious=5,xn.tamale=3,xn.waterbed=3,xn.wednesday=2,xn.yosemite=4;var zDe=[/cial/,/tia/,/cius/,/cious/,/gui/,/ion/,/iou/,/sia$/,/.ely$/,/.[^aeiuoycgltdb]{2,}ed$/,/(?:s[chkls]|g[hn])ed$/,/(?:[aeiouy](?:[bdfklmnprstvy]|ch|dg|g[hn]|lch|s[cklst]))es$/,/(?:[aeiouy](?:[bcfgklmnprsvwxyz]|s[chkls]))ed$/],KDe=[/ia/,/riet/,/dien/,/iu/,/io/,/ii/,/[aeiouy]bl$/,/mbl$/,/[aeiou]{3}/,/^mc/,/ism$/,/(.)(?!\\1)([aeiouy])\\2l$/,/[^l]llien/,/^coad./,/^coag./,/^coal./,/^coax./,/(.)(?!\\1)[gq]ua(.)(?!\\2)[aeiou]/,/dnt$/,/eings?$/,/react?$/,/[aeiouy]sh?e[rs]$/,/(?:eo|asm|dea|gean|oa|ua|uity|thm|ism|orbed|shred)$/],v3t=function(A){if(A.length<3)return 1;if(xn[A])return xn[A];let r=A.replace(/e$/,""),t=r.split(w3t).filter(i=>i).length;for(let i=0;i{var y3t=ZDe(),C3t=VdA(),I3t=C3t.tkSize,b3t=function(A,r){var t,i=A.cache,o=A.tokens,s=A.sentences.length,g=0,E=0,p=Object.create(null),B=121;for(let _=0;_3&&(p[t]=x-3)}B=206.835-1.015*g/s-84.6*E/g}let m=g/(200+B);return{fres:Math.round(B),sentiment:+A.document[3].toFixed(2),numOfTokens:o.length/I3t,numOfWords:g,numOfComplexWords:Object.keys(p).length,complexWords:p,numOfSentences:s,readingTimeMins:Math.floor(m),readingTimeSecs:Math.round(60*(m-Math.floor(m)))}};$De.exports=b3t});var JpA=GA((Rsi,e_e)=>{var O3t=yKA(),M3t=MKA(),k3t=NKA(),x3t=qKA(),H3t=ZKA(),S3t=tXA(),F3t=gXA(),R3t=fXA(),T3t=IXA(),N3t=VDe(),P3t=A_e(),oh=Object.create(null);oh.core=O3t,oh.sbd=k3t,oh.pos=x3t,oh.ner=M3t,oh.negation=H3t,oh.sa=S3t,oh.metaCER=F3t,oh.featureFn=R3t,oh.addons=Object.create(null),oh.addons.stem=T3t,oh.addons.lemmatize=N3t,oh.addons.readabilityStats=P3t,oh.addons.wordVectors=void 0,e_e.exports=oh});var t_e=GA((Tsi,r_e)=>{var G3t=qdA(),Y3t=JpA(),U3t=G3t(Y3t,["sbd"]),L3t=function(A){return U3t.readDoc(A).sentences().out()};r_e.exports=L3t});var a_e=GA((Nsi,n_e)=>{var vc=Object.create(null),j3t=function(A,r){var t,i=r.length,o,s=A.length,g=[];for(o=0;or?1:A===r?0:-1};vc.array.descending=function(A,r){return r>A?1:r===A?0:-1};vc.array.ascendingOnKey=function(A,r){return A[0]>r[0]?1:A[0]===r[0]?0:-1};vc.array.descendingOnKey=function(A,r){return r[0]>A[0]?1:r[0]===A[0]?0:-1};vc.array.ascendingOnValue=function(A,r){return A[1]>r[1]?1:A[1]===r[1]?0:-1};vc.array.descendingOnValue=function(A,r){return r[1]>A[1]?1:r[1]===A[1]?0:-1};vc.array.ascendingOn=function(A,r){return r?function(t,i){return t[A][r]>i[A][r]?1:t[A][r]===i[A][r]?0:-1}:function(t,i){return t[A]>i[A]?1:t[A]===i[A]?0:-1}};vc.array.descendingOn=function(A,r){return r?function(t,i){return i[A][r]>t[A][r]?1:i[A][r]===t[A][r]?0:-1}:function(t,i){return i[A]>t[A]?1:i[A]===t[A]?0:-1}};vc.array.pluck=function(A,r,t){var i,o;i=A.length;var s=r||0,g=t||i;for(g>i&&(g=i),o=new Array(g),i=0;i{var q3t=a_e(),V3t=DdA(),z3t=V3t("[","]"),K3t=function(A){if(!A||typeof A!="string")return[];var r=z3t(A),t=[],i=[];return r?(r.forEach(function(o){t.push(o.split("|"))}),q3t.array.product(t).forEach(function(o){i.push(o.join(" "))}),i):[]};o_e.exports=K3t});var u_e=GA((Gsi,l_e)=>{var X3t=ydA(),Z3t=IdA(),c_e=Jh(),$3t=function(A){var r=X3t(Z3t(A)).replace(c_e.cannot,"$1 $2").split(c_e.nonWords);return r[0]===""&&r.shift(),r[r.length-1]===""&&r.pop(),r};l_e.exports=$3t});var p_e=GA((Ysi,d_e)=>{var A7t=qdA(),e7t=JpA(),g_e=A7t(e7t,[]),r7t=g_e.its,t7t=function(A,r){let t=g_e.readDoc(A.replace("...","\u2026")),i=[];return r?(t.tokens().each(o=>{i.push({value:o.out(),tag:o.out(r7t.type)})}),i):t.tokens().out()};d_e.exports=t7t});var f_e=GA((Usi,E_e)=>{var ol=Object.create(null);ol.repeatingChars=/([^c])\1/g;ol.kngnPairs=/^(kn|gn|pn|ae|wr)/;ol.__vowels=/(?!^)[aeiou]/g;ol.ough=/ough$/;ol.dge=/dge/g;ol.dgi=/dgi/g;ol.dgy=/dgy/g;ol.sch=/sch/g;ol.sci=/sci/g;ol.sce=/sce/g;ol.scy=/scy/g;ol.tio=/tio/g;ol.tia=/tia/g;ol.tch=/tch/g;ol.mb_=/mb$/;ol.cq=/cq/g;ol.ck=/ck/g;ol.ce=/ce/g;ol.ci=/ci/g;ol.cy=/cy/g;ol.ph=/ph/g;ol.sh=/sh|sio|sia/g;ol.vrnotvy=/([aeiou])(r)([^aeiouy])/g;ol.th=/th/g;ol.cnoth=/(c)([^h])/g;ol.q=/q/g;ol._x=/^x/;ol.x=/x/g;ol.ynotv=/(y)([^aeiou])/g;ol.y_=/y$/;ol.z=/z/g;E_e.exports=ol});var qpA=GA((Lsi,B_e)=>{var Ml=f_e(),i7t=function(A){var r=A.toLowerCase();return r=r.replace(Ml.repeatingChars,"$1"),Ml.kngnPairs.test(r)&&(r=r.substr(1,r.length-1)),r=r.replace(Ml.ough,"f").replace(Ml.dge,"je").replace(Ml.dgi,"ji").replace(Ml.dgy,"jy").replace(Ml.sch,"sk").replace(Ml.sci,"si").replace(Ml.sce,"se").replace(Ml.scy,"sy").replace(Ml.tch,"ch").replace(Ml.tio,"sh").replace(Ml.tia,"sh").replace(Ml.mb_,"m").replace(Ml.ce,"se").replace(Ml.ci,"si").replace(Ml.cy,"sy").replace(Ml.cq,"q").replace(Ml.ck,"k").replace(Ml.ph,"f").replace(Ml.th,"0").replace(Ml.cnoth,"k$2").replace(Ml.q,"k").replace(Ml._x,"s").replace(Ml.x,"ks").replace(Ml.sh,"x").replace(Ml.ynotv,"$2").replace(Ml.y_,"").replace(Ml.z,"s").replace(Ml.__vowels,""),r};B_e.exports=i7t});var Q_e=GA((jsi,h_e)=>{var n7t={A:0,E:0,I:0,O:0,U:0,Y:0,B:1,F:1,P:1,V:1,C:2,G:2,J:2,K:2,Q:2,S:2,X:2,Z:2,D:3,T:3,L:4,M:5,N:5,R:6},a7t=function(A,r){var t=A.length?A.toUpperCase():"?",i,o=t.length,s=[],g,E,p=9,B=r||4;for(i=0;i{var o7t=Q_e(),s7t=function(A,r){return o7t(A,r)};m_e.exports=s7t});var __e=GA((Jsi,D_e)=>{var c7t=QdA(),l7t=function(A){return A.map(c7t)};D_e.exports=l7t});var v_e=GA((qsi,w_e)=>{var u7t=qpA(),g7t=function(A){return A.map(u7t)};w_e.exports=g7t});var C_e=GA((Vsi,y_e)=>{var d7t=VpA(),p7t=function(A){return A.map(r=>d7t(r))};y_e.exports=p7t});var I_e=GA((zsi,E7t)=>{E7t.exports=["i","me","my","myself","we","our","ours","ourselves","you","your","yours","yourself","yourselves","he","him","his","himself","she","her","hers","herself","it","its","itself","they","them","their","theirs","themselves","what","which","who","whom","this","that","these","those","am","is","are","was","were","be","been","being","have","has","had","having","do","does","did","doing","would","should","could","ought","i'm","you're","he's","she's","it's","we're","they're","i've","you've","we've","they've","i'd","you'd","he'd","she'd","we'd","they'd","i'll","you'll","he'll","she'll","we'll","they'll","let's","that's","who's","what's","here's","there's","when's","where's","why's","how's","a","an","the","and","but","if","or","because","as","until","while","of","at","by","for","with","about","against","between","into","through","during","before","after","above","below","to","from","up","down","in","out","on","off","over","under","again","further","then","once","here","there","when","where","why","how","all","any","both","each","few","more","most","other","some","such","only","own","same","so","than","too","very"]});var O_e=GA((Ksi,b_e)=>{var zpA=I_e(),f7t=mdA();zpA=f7t(zpA);var B7t=function(A,r){var t=r||zpA;return A.filter(t.exclude)};b_e.exports=B7t});var KpA=GA((Xsi,M_e)=>{var h7t=function(A,r,t,i){var o=Object.create(null),s,g,E,p;for(s=0,g=A.length;s{var Q7t=function(A,r,t){var i=new Set(A);return typeof r=="function"&&i.forEach(function(o){r(o,t)}),i};k_e.exports=Q7t});var H_e=GA(($si,x_e)=>{var m7t=Jh(),D7t=function(A,r){var t,i,o,s,g=A,E=r||2;for(t=0,i=g.length;t{var _7t=function(A){var r=[],t,i;for(t=0,i=A.length-1;t{var w7t=function(A){var r,t;for(r=0,t=A.length-1;r{var v7t=QdA(),as=Object.create(null);as.helper=Object.create(null);as.helper.returnWordsFilter=mdA();as.helper.words=as.helper.returnWordsFilter;as.helper.index=JqA();as.helper.returnIndexer=as.helper.index;as.helper.returnQuotedTextExtractor=DdA();as.string=Object.create(null);as.string.lowerCase=zqA();as.string.upperCase=XqA();as.string.trim=_dA();as.string.removeExtraSpaces=eVA();as.string.retainAlphaNums=iVA();as.string.extractPersonsName=lVA();as.string.extractRunOfCapitalWords=gVA();as.string.removePunctuations=pVA();as.string.removeSplChars=fVA();as.string.removeHTMLTags=hVA();as.string.removeElisions=ydA();as.string.splitElisions=DVA();as.string.amplifyNotElision=IdA();as.string.marker=vVA();as.string.soc=bdA();as.string.setOfChars=bdA();as.string.ngram=IVA();as.string.edgeNGrams=OVA();as.string.bong=OdA();as.string.bagOfNGrams=OdA();as.string.song=MdA();as.string.setOfNGrams=MdA();as.string.sentences=t_e();as.string.composeCorpus=s_e();as.string.tokenize0=u_e();as.string.tokenize=p_e();as.string.stem=v7t;as.string.phonetize=qpA();as.string.soundex=VpA();as.tokens=Object.create(null);as.tokens.stem=__e();as.tokens.phonetize=v_e();as.tokens.soundex=C_e();as.tokens.removeWords=O_e();as.tokens.bow=KpA();as.tokens.bagOfWords=KpA();as.tokens.sow=XpA();as.tokens.setOfWords=XpA();as.tokens.propagateNegations=H_e();as.tokens.bigrams=F_e();as.tokens.appendBigrams=T_e();N_e.exports=as});var K_e=GA(Yw=>{"use strict";Object.defineProperty(Yw,"__esModule",{value:!0});Yw.getMessages=Yw.getLines=Yw.getBytes=void 0;async function x7t(A,r){let t=A.getReader(),i;for(;!(i=await t.read()).done;)r(i.value)}Yw.getBytes=x7t;function H7t(A){let r,t,i,o=!1;return function(g){r===void 0?(r=g,t=0,i=-1):r=F7t(r,g);let E=r.length,p=0;for(;t0){let p=o.decode(g.subarray(0,E)),B=E+(g[E+1]===32?2:1),m=o.decode(g.subarray(B));switch(p){case"data":i.data=i.data?i.data+` -`+m:m;break;case"event":i.event=m;break;case"id":r?.(i.id=m);break;case"retry":let _=parseInt(m,10);isNaN(_)||t?.(i.retry=_);break}}}}Yw.getMessages=S7t;function F7t(A,r){let t=new Uint8Array(A.length+r.length);return t.set(A),t.set(r,A.length),t}function z_e(){return{data:"",event:"",id:"",retry:void 0}}});var Z_e=GA(Z0=>{"use strict";var R7t=Z0&&Z0.__rest||function(A,r){var t={};for(var i in A)Object.prototype.hasOwnProperty.call(A,i)&&r.indexOf(i)<0&&(t[i]=A[i]);if(A!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,i=Object.getOwnPropertySymbols(A);o{let O=Object.assign({},i);O.accept||(O.accept=Z0.EventStreamContentType);let k;function P(){k.abort(),document.hidden||S()}typeof document<"u"&&!p&&document.addEventListener("visibilitychange",P);let H=T7t,T=0;function v(){typeof document<"u"&&!p&&document.removeEventListener("visibilitychange",P),clearTimeout(T),k.abort()}t?.addEventListener("abort",()=>{v(),_()});let F=B??fetch,y=o??P7t;async function S(){var U;k=new AbortController;try{let V=await F(A,Object.assign(Object.assign({},m),{headers:O,signal:k.signal}));await y(V),await(0,AEA.getBytes)(V.body,(0,AEA.getLines)((0,AEA.getMessages)(s,wA=>{wA?O[X_e]=wA:delete O[X_e]},wA=>{H=wA}))),g?.(),v(),_()}catch(V){if(!k.signal.aborted)try{let wA=(U=E?.(V))!==null&&U!==void 0?U:H;clearTimeout(T),T=setTimeout(S,wA)}catch(wA){v(),x(wA)}}}S()})}Z0.fetchEventSource=N7t;function P7t(A){let r=A.headers.get("content-type");if(!r?.startsWith(Z0.EventStreamContentType))throw new Error(`Expected content-type to be ${Z0.EventStreamContentType}, Actual: ${r}`)}});var Awe=GA(C3=>{"use strict";Object.defineProperty(C3,"__esModule",{value:!0});C3.EventStreamContentType=C3.fetchEventSource=void 0;var $_e=Z_e();Object.defineProperty(C3,"fetchEventSource",{enumerable:!0,get:function(){return $_e.fetchEventSource}});Object.defineProperty(C3,"EventStreamContentType",{enumerable:!0,get:function(){return $_e.EventStreamContentType}})});var rwe=GA((v2,ewe)=>{var Pk=VeA(),G7t=Pk.default||Pk,YV=function(A,r){return/^\/\//.test(A)&&(A="https:"+A),G7t.call(this,A,r)};YV.ponyfill=!0;ewe.exports=v2=YV;v2.fetch=YV;v2.Headers=Pk.Headers;v2.Request=Pk.Request;v2.Response=Pk.Response;v2.default=YV});var tEA=GA(PQ=>{"use strict";var twe=PQ&&PQ.__awaiter||function(A,r,t,i){function o(s){return s instanceof t?s:new t(function(g){g(s)})}return new(t||(t=Promise))(function(s,g){function E(m){try{B(i.next(m))}catch(_){g(_)}}function p(m){try{B(i.throw(m))}catch(_){g(_)}}function B(m){m.done?s(m.value):o(m.value).then(E,p)}B((i=i.apply(A,r||[])).next())})},Y7t=PQ&&PQ.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(PQ,"__esModule",{value:!0});PQ.Client=PQ.AI_PROMPT=PQ.HUMAN_PROMPT=void 0;var U7t=Awe(),L7t=Y7t(rwe());PQ.HUMAN_PROMPT=` +// ../node_modules/.pnpm/balanced-match@1.0.0/node_modules/balanced-match/index.js +var require_balanced_match = __commonJS({ + "../node_modules/.pnpm/balanced-match@1.0.0/node_modules/balanced-match/index.js"(exports2, module2) { + "use strict"; + module2.exports = balanced; + function balanced(a, b, str) { + if (a instanceof RegExp) + a = maybeMatch(a, str); + if (b instanceof RegExp) + b = maybeMatch(b, str); + var r = range(a, b, str); + return r && { + start: r[0], + end: r[1], + pre: str.slice(0, r[0]), + body: str.slice(r[0] + a.length, r[1]), + post: str.slice(r[1] + b.length) + }; + } + function maybeMatch(reg, str) { + var m = str.match(reg); + return m ? m[0] : null; + } + balanced.range = range; + function range(a, b, str) { + var begs, beg, left, right, result; + var ai = str.indexOf(a); + var bi = str.indexOf(b, ai + 1); + var i = ai; + if (ai >= 0 && bi > 0) { + begs = []; + left = str.length; + while (i >= 0 && !result) { + if (i == ai) { + begs.push(i); + ai = str.indexOf(a, i + 1); + } else if (begs.length == 1) { + result = [begs.pop(), bi]; + } else { + beg = begs.pop(); + if (beg < left) { + left = beg; + right = bi; + } + bi = str.indexOf(b, i + 1); + } + i = ai < bi && ai >= 0 ? ai : bi; + } + if (begs.length) { + result = [left, right]; + } + } + return result; + } + } +}); -Human:`;PQ.AI_PROMPT=` +// ../node_modules/.pnpm/brace-expansion@2.0.1/node_modules/brace-expansion/index.js +var require_brace_expansion = __commonJS({ + "../node_modules/.pnpm/brace-expansion@2.0.1/node_modules/brace-expansion/index.js"(exports2, module2) { + var balanced = require_balanced_match(); + module2.exports = expandTop; + var escSlash = "\0SLASH" + Math.random() + "\0"; + var escOpen = "\0OPEN" + Math.random() + "\0"; + var escClose = "\0CLOSE" + Math.random() + "\0"; + var escComma = "\0COMMA" + Math.random() + "\0"; + var escPeriod = "\0PERIOD" + Math.random() + "\0"; + function numeric(str) { + return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0); + } + function escapeBraces(str) { + return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod); + } + function unescapeBraces(str) { + return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join("."); + } + function parseCommaParts(str) { + if (!str) + return [""]; + var parts = []; + var m = balanced("{", "}", str); + if (!m) + return str.split(","); + var pre = m.pre; + var body2 = m.body; + var post = m.post; + var p = pre.split(","); + p[p.length - 1] += "{" + body2 + "}"; + var postParts = parseCommaParts(post); + if (post.length) { + p[p.length - 1] += postParts.shift(); + p.push.apply(p, postParts); + } + parts.push.apply(parts, p); + return parts; + } + function expandTop(str) { + if (!str) + return []; + if (str.substr(0, 2) === "{}") { + str = "\\{\\}" + str.substr(2); + } + return expand2(escapeBraces(str), true).map(unescapeBraces); + } + function embrace(str) { + return "{" + str + "}"; + } + function isPadded(el) { + return /^-?0\d/.test(el); + } + function lte(i, y) { + return i <= y; + } + function gte(i, y) { + return i >= y; + } + function expand2(str, isTop) { + var expansions = []; + var m = balanced("{", "}", str); + if (!m) + return [str]; + var pre = m.pre; + var post = m.post.length ? expand2(m.post, false) : [""]; + if (/\$$/.test(m.pre)) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + "{" + m.body + "}" + post[k]; + expansions.push(expansion); + } + } else { + var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); + var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); + var isSequence = isNumericSequence || isAlphaSequence; + var isOptions = m.body.indexOf(",") >= 0; + if (!isSequence && !isOptions) { + if (m.post.match(/,.*\}/)) { + str = m.pre + "{" + m.body + escClose + m.post; + return expand2(str); + } + return [str]; + } + var n; + if (isSequence) { + n = m.body.split(/\.\./); + } else { + n = parseCommaParts(m.body); + if (n.length === 1) { + n = expand2(n[0], false).map(embrace); + if (n.length === 1) { + return post.map(function(p) { + return m.pre + n[0] + p; + }); + } + } + } + var N; + if (isSequence) { + var x = numeric(n[0]); + var y = numeric(n[1]); + var width = Math.max(n[0].length, n[1].length); + var incr = n.length == 3 ? Math.abs(numeric(n[2])) : 1; + var test = lte; + var reverse = y < x; + if (reverse) { + incr *= -1; + test = gte; + } + var pad = n.some(isPadded); + N = []; + for (var i = x; test(i, y); i += incr) { + var c; + if (isAlphaSequence) { + c = String.fromCharCode(i); + if (c === "\\") + c = ""; + } else { + c = String(i); + if (pad) { + var need = width - c.length; + if (need > 0) { + var z = new Array(need + 1).join("0"); + if (i < 0) + c = "-" + z + c.slice(1); + else + c = z + c; + } + } + } + N.push(c); + } + } else { + N = []; + for (var j = 0; j < n.length; j++) { + N.push.apply(N, expand2(n[j], false)); + } + } + for (var j = 0; j < N.length; j++) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + N[j] + post[k]; + if (!isTop || isSequence || expansion) + expansions.push(expansion); + } + } + } + return expansions; + } + } +}); -Assistant:`;var iwe="anthropic-typescript/0.4.3",j7t="https://api.anthropic.com",eEA;(function(A){A.Ping="ping"})(eEA||(eEA={}));var W7t="[DONE]",rEA=class{constructor(r,t){var i;this.apiKey=r,this.apiUrl=(i=t?.apiUrl)!==null&&i!==void 0?i:j7t}complete(r,t){return twe(this,void 0,void 0,function*(){let i=yield(0,L7t.default)(`${this.apiUrl}/v1/complete`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json",Client:iwe,"X-API-Key":this.apiKey},body:JSON.stringify(Object.assign(Object.assign({},r),{stream:!1})),signal:t?.signal});if(!i.ok){let s=new Error(`Sampling error: ${i.status} ${i.statusText}`);throw console.error(s),s}return yield i.json()})}completeStream(r,{onOpen:t,onUpdate:i,signal:o}){let s=new AbortController;return new Promise((g,E)=>{o?.addEventListener("abort",p=>{s.abort(p),E({name:"AbortError",message:"Caller aborted completeStream"})}),(0,U7t.fetchEventSource)(`${this.apiUrl}/v1/complete`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json",Client:iwe,"X-API-Key":this.apiKey},body:JSON.stringify(Object.assign(Object.assign({},r),{stream:!0})),signal:s.signal,onopen:p=>twe(this,void 0,void 0,function*(){if(!p.ok)return s.abort(),E(Error(`Failed to open sampling stream, HTTP status code ${p.status}: ${p.statusText}`));t&&(yield Promise.resolve(t(p)))}),onmessage:p=>{if(p.event===eEA.Ping)return;if(p.data===W7t){console.error("Unexpected done message before stop_reason has been issued");return}let B=JSON.parse(p.data);if(i&&Promise.resolve(i(B)).catch(m=>{s.abort(),E(m)}),B.stop_reason!==null)return s.abort(),g(B)},onerror:p=>(console.error("Sampling error:",p),s.abort(),E(p))})})}};PQ.Client=rEA});var nEA=GA((Nci,awe)=>{"use strict";awe.exports=function(){function A(r,t,i,o,s){return ri?i+1:r+1:o===s?t:t+1}return function(r,t){if(r===t)return 0;if(r.length>t.length){var i=r;r=t,t=i}for(var o=r.length,s=t.length;o>0&&r.charCodeAt(o-1)===t.charCodeAt(s-1);)o--,s--;for(var g=0;g{var os=Vve,{Buffer:Tz}=require("buffer"),K6t=require("os");os.toBuffer=function(A,r,t){t=~~t;let i;if(this.isV4Format(A))i=r||Tz.alloc(t+4),A.split(/\./g).map(o=>{i[t++]=parseInt(o,10)&255});else if(this.isV6Format(A)){let o=A.split(":",8),s;for(s=0;s0;s--)g.push("0");o.splice(...g)}for(i=r||Tz.alloc(t+16),s=0;s>8&255,i[t++]=g&255}}if(!i)throw Error(`Invalid ip address: ${A}`);return i};os.toString=function(A,r,t){r=~~r,t=t||A.length-r;let i=[];if(t===4){for(let o=0;o32?r="ipv6":r=qk(r);let t=4;r==="ipv6"&&(t=16);let i=Tz.alloc(t);for(let o=0,s=i.length;o>g)&255}return os.toString(i)};os.mask=function(A,r){A=os.toBuffer(A),r=os.toBuffer(r);let t=Tz.alloc(Math.max(A.length,r.length)),i;if(A.length===r.length)for(i=0;iA.length&&(t=r,i=A);let o=t.length-i.length;for(let s=o;sqk(s.family)===r);return o.length===0?void 0:o[0].address}let i=Object.keys(t).map(o=>{let s=t[o].filter(g=>(g.family=qk(g.family),g.family!==r||os.isLoopback(g.address)?!1:A?A==="public"?os.isPrivate(g.address):os.isPublic(g.address):!0));return s.length?s[0].address:void 0}).filter(Boolean);return i.length?i[0]:os.loopback(r)};os.toLong=function(A){let r=0;return A.split(".").forEach(t=>{r<<=8,r+=parseInt(t)}),r>>>0};os.fromLong=function(A){return`${A>>>24}.${A>>16&255}.${A>>8&255}.${A&255}`}});var $ve=GA(cD=>{"use strict";Object.defineProperty(cD,"__esModule",{value:!0});var Kve=require("buffer"),I2={INVALID_ENCODING:"Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",INVALID_SMARTBUFFER_SIZE:"Invalid size provided. Size must be a valid integer greater than zero.",INVALID_SMARTBUFFER_BUFFER:"Invalid Buffer provided in SmartBufferOptions.",INVALID_SMARTBUFFER_OBJECT:"Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",INVALID_OFFSET:"An invalid offset value was provided.",INVALID_OFFSET_NON_NUMBER:"An invalid offset value was provided. A numeric value is required.",INVALID_LENGTH:"An invalid length value was provided.",INVALID_LENGTH_NON_NUMBER:"An invalid length value was provived. A numeric value is required.",INVALID_TARGET_OFFSET:"Target offset is beyond the bounds of the internal SmartBuffer data.",INVALID_TARGET_LENGTH:"Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",INVALID_READ_BEYOND_BOUNDS:"Attempted to read beyond the bounds of the managed data.",INVALID_WRITE_BEYOND_BOUNDS:"Attempted to write beyond the bounds of the managed data."};cD.ERRORS=I2;function $6t(A){if(!Kve.Buffer.isEncoding(A))throw new Error(I2.INVALID_ENCODING)}cD.checkEncoding=$6t;function Xve(A){return typeof A=="number"&&isFinite(A)&&t8t(A)}cD.isFiniteInteger=Xve;function Zve(A,r){if(typeof A=="number"){if(!Xve(A)||A<0)throw new Error(r?I2.INVALID_OFFSET:I2.INVALID_LENGTH)}else throw new Error(r?I2.INVALID_OFFSET_NON_NUMBER:I2.INVALID_LENGTH_NON_NUMBER)}function A8t(A){Zve(A,!1)}cD.checkLengthValue=A8t;function e8t(A){Zve(A,!0)}cD.checkOffsetValue=e8t;function r8t(A,r){if(A<0||A>r.length)throw new Error(I2.INVALID_TARGET_OFFSET)}cD.checkTargetOffset=r8t;function t8t(A){return typeof A=="number"&&isFinite(A)&&Math.floor(A)===A}function i8t(A){if(typeof BigInt>"u")throw new Error("Platform does not support JS BigInt type.");if(typeof Kve.Buffer.prototype[A]>"u")throw new Error(`Platform does not support Buffer.prototype.${A}.`)}cD.bigIntAndBufferInt64Check=i8t});var eye=GA(zEA=>{"use strict";Object.defineProperty(zEA,"__esModule",{value:!0});var ac=$ve(),Aye=4096,n8t="utf8",VEA=class A{constructor(r){if(this.length=0,this._encoding=n8t,this._writeOffset=0,this._readOffset=0,A.isSmartBufferOptions(r))if(r.encoding&&(ac.checkEncoding(r.encoding),this._encoding=r.encoding),r.size)if(ac.isFiniteInteger(r.size)&&r.size>0)this._buff=Buffer.allocUnsafe(r.size);else throw new Error(ac.ERRORS.INVALID_SMARTBUFFER_SIZE);else if(r.buff)if(Buffer.isBuffer(r.buff))this._buff=r.buff,this.length=r.buff.length;else throw new Error(ac.ERRORS.INVALID_SMARTBUFFER_BUFFER);else this._buff=Buffer.allocUnsafe(Aye);else{if(typeof r<"u")throw new Error(ac.ERRORS.INVALID_SMARTBUFFER_OBJECT);this._buff=Buffer.allocUnsafe(Aye)}}static fromSize(r,t){return new this({size:r,encoding:t})}static fromBuffer(r,t){return new this({buff:r,encoding:t})}static fromOptions(r){return new this(r)}static isSmartBufferOptions(r){let t=r;return t&&(t.encoding!==void 0||t.size!==void 0||t.buff!==void 0)}readInt8(r){return this._readNumberValue(Buffer.prototype.readInt8,1,r)}readInt16BE(r){return this._readNumberValue(Buffer.prototype.readInt16BE,2,r)}readInt16LE(r){return this._readNumberValue(Buffer.prototype.readInt16LE,2,r)}readInt32BE(r){return this._readNumberValue(Buffer.prototype.readInt32BE,4,r)}readInt32LE(r){return this._readNumberValue(Buffer.prototype.readInt32LE,4,r)}readBigInt64BE(r){return ac.bigIntAndBufferInt64Check("readBigInt64BE"),this._readNumberValue(Buffer.prototype.readBigInt64BE,8,r)}readBigInt64LE(r){return ac.bigIntAndBufferInt64Check("readBigInt64LE"),this._readNumberValue(Buffer.prototype.readBigInt64LE,8,r)}writeInt8(r,t){return this._writeNumberValue(Buffer.prototype.writeInt8,1,r,t),this}insertInt8(r,t){return this._insertNumberValue(Buffer.prototype.writeInt8,1,r,t)}writeInt16BE(r,t){return this._writeNumberValue(Buffer.prototype.writeInt16BE,2,r,t)}insertInt16BE(r,t){return this._insertNumberValue(Buffer.prototype.writeInt16BE,2,r,t)}writeInt16LE(r,t){return this._writeNumberValue(Buffer.prototype.writeInt16LE,2,r,t)}insertInt16LE(r,t){return this._insertNumberValue(Buffer.prototype.writeInt16LE,2,r,t)}writeInt32BE(r,t){return this._writeNumberValue(Buffer.prototype.writeInt32BE,4,r,t)}insertInt32BE(r,t){return this._insertNumberValue(Buffer.prototype.writeInt32BE,4,r,t)}writeInt32LE(r,t){return this._writeNumberValue(Buffer.prototype.writeInt32LE,4,r,t)}insertInt32LE(r,t){return this._insertNumberValue(Buffer.prototype.writeInt32LE,4,r,t)}writeBigInt64BE(r,t){return ac.bigIntAndBufferInt64Check("writeBigInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigInt64BE,8,r,t)}insertBigInt64BE(r,t){return ac.bigIntAndBufferInt64Check("writeBigInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigInt64BE,8,r,t)}writeBigInt64LE(r,t){return ac.bigIntAndBufferInt64Check("writeBigInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigInt64LE,8,r,t)}insertBigInt64LE(r,t){return ac.bigIntAndBufferInt64Check("writeBigInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigInt64LE,8,r,t)}readUInt8(r){return this._readNumberValue(Buffer.prototype.readUInt8,1,r)}readUInt16BE(r){return this._readNumberValue(Buffer.prototype.readUInt16BE,2,r)}readUInt16LE(r){return this._readNumberValue(Buffer.prototype.readUInt16LE,2,r)}readUInt32BE(r){return this._readNumberValue(Buffer.prototype.readUInt32BE,4,r)}readUInt32LE(r){return this._readNumberValue(Buffer.prototype.readUInt32LE,4,r)}readBigUInt64BE(r){return ac.bigIntAndBufferInt64Check("readBigUInt64BE"),this._readNumberValue(Buffer.prototype.readBigUInt64BE,8,r)}readBigUInt64LE(r){return ac.bigIntAndBufferInt64Check("readBigUInt64LE"),this._readNumberValue(Buffer.prototype.readBigUInt64LE,8,r)}writeUInt8(r,t){return this._writeNumberValue(Buffer.prototype.writeUInt8,1,r,t)}insertUInt8(r,t){return this._insertNumberValue(Buffer.prototype.writeUInt8,1,r,t)}writeUInt16BE(r,t){return this._writeNumberValue(Buffer.prototype.writeUInt16BE,2,r,t)}insertUInt16BE(r,t){return this._insertNumberValue(Buffer.prototype.writeUInt16BE,2,r,t)}writeUInt16LE(r,t){return this._writeNumberValue(Buffer.prototype.writeUInt16LE,2,r,t)}insertUInt16LE(r,t){return this._insertNumberValue(Buffer.prototype.writeUInt16LE,2,r,t)}writeUInt32BE(r,t){return this._writeNumberValue(Buffer.prototype.writeUInt32BE,4,r,t)}insertUInt32BE(r,t){return this._insertNumberValue(Buffer.prototype.writeUInt32BE,4,r,t)}writeUInt32LE(r,t){return this._writeNumberValue(Buffer.prototype.writeUInt32LE,4,r,t)}insertUInt32LE(r,t){return this._insertNumberValue(Buffer.prototype.writeUInt32LE,4,r,t)}writeBigUInt64BE(r,t){return ac.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64BE,8,r,t)}insertBigUInt64BE(r,t){return ac.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64BE,8,r,t)}writeBigUInt64LE(r,t){return ac.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64LE,8,r,t)}insertBigUInt64LE(r,t){return ac.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64LE,8,r,t)}readFloatBE(r){return this._readNumberValue(Buffer.prototype.readFloatBE,4,r)}readFloatLE(r){return this._readNumberValue(Buffer.prototype.readFloatLE,4,r)}writeFloatBE(r,t){return this._writeNumberValue(Buffer.prototype.writeFloatBE,4,r,t)}insertFloatBE(r,t){return this._insertNumberValue(Buffer.prototype.writeFloatBE,4,r,t)}writeFloatLE(r,t){return this._writeNumberValue(Buffer.prototype.writeFloatLE,4,r,t)}insertFloatLE(r,t){return this._insertNumberValue(Buffer.prototype.writeFloatLE,4,r,t)}readDoubleBE(r){return this._readNumberValue(Buffer.prototype.readDoubleBE,8,r)}readDoubleLE(r){return this._readNumberValue(Buffer.prototype.readDoubleLE,8,r)}writeDoubleBE(r,t){return this._writeNumberValue(Buffer.prototype.writeDoubleBE,8,r,t)}insertDoubleBE(r,t){return this._insertNumberValue(Buffer.prototype.writeDoubleBE,8,r,t)}writeDoubleLE(r,t){return this._writeNumberValue(Buffer.prototype.writeDoubleLE,8,r,t)}insertDoubleLE(r,t){return this._insertNumberValue(Buffer.prototype.writeDoubleLE,8,r,t)}readString(r,t){let i;typeof r=="number"?(ac.checkLengthValue(r),i=Math.min(r,this.length-this._readOffset)):(t=r,i=this.length-this._readOffset),typeof t<"u"&&ac.checkEncoding(t);let o=this._buff.slice(this._readOffset,this._readOffset+i).toString(t||this._encoding);return this._readOffset+=i,o}insertString(r,t,i){return ac.checkOffsetValue(t),this._handleString(r,!0,t,i)}writeString(r,t,i){return this._handleString(r,!1,t,i)}readStringNT(r){typeof r<"u"&&ac.checkEncoding(r);let t=this.length;for(let o=this._readOffset;othis.length)throw new Error(ac.ERRORS.INVALID_READ_BEYOND_BOUNDS)}ensureInsertable(r,t){ac.checkOffsetValue(t),this._ensureCapacity(this.length+r),tthis.length?this.length=t+r:this.length+=r}_ensureWriteable(r,t){let i=typeof t=="number"?t:this._writeOffset;this._ensureCapacity(i+r),i+r>this.length&&(this.length=i+r)}_ensureCapacity(r){let t=this._buff.length;if(r>t){let i=this._buff,o=t*3/2+1;o"u"&&(this._readOffset+=t),o}_insertNumberValue(r,t,i,o){return ac.checkOffsetValue(o),this.ensureInsertable(t,o),r.call(this._buff,i,o),this._writeOffset+=t,this}_writeNumberValue(r,t,i,o){if(typeof o=="number"){if(o<0)throw new Error(ac.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);ac.checkOffsetValue(o)}let s=typeof o=="number"?o:this._writeOffset;return this._ensureWriteable(t,s),r.call(this._buff,i,s),typeof o=="number"?this._writeOffset=Math.max(this._writeOffset,s+t):this._writeOffset+=t,this}};zEA.SmartBuffer=VEA});var rfA=GA(Hu=>{"use strict";Object.defineProperty(Hu,"__esModule",{value:!0});Hu.SOCKS5_NO_ACCEPTABLE_AUTH=Hu.SOCKS5_CUSTOM_AUTH_END=Hu.SOCKS5_CUSTOM_AUTH_START=Hu.SOCKS_INCOMING_PACKET_SIZES=Hu.SocksClientState=Hu.Socks5Response=Hu.Socks5HostType=Hu.Socks5Auth=Hu.Socks4Response=Hu.SocksCommand=Hu.ERRORS=Hu.DEFAULT_TIMEOUT=void 0;var a8t=3e4;Hu.DEFAULT_TIMEOUT=a8t;var o8t={InvalidSocksCommand:"An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",InvalidSocksCommandForOperation:"An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",InvalidSocksCommandChain:"An invalid SOCKS command was provided. Chaining currently only supports the connect command.",InvalidSocksClientOptionsDestination:"An invalid destination host was provided.",InvalidSocksClientOptionsExistingSocket:"An invalid existing socket was provided. This should be an instance of stream.Duplex.",InvalidSocksClientOptionsProxy:"Invalid SOCKS proxy details were provided.",InvalidSocksClientOptionsTimeout:"An invalid timeout value was provided. Please enter a value above 0 (in ms).",InvalidSocksClientOptionsProxiesLength:"At least two socks proxies must be provided for chaining.",InvalidSocksClientOptionsCustomAuthRange:"Custom auth must be a value between 0x80 and 0xFE.",InvalidSocksClientOptionsCustomAuthOptions:"When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",NegotiationError:"Negotiation error",SocketClosed:"Socket closed",ProxyConnectionTimedOut:"Proxy connection timed out",InternalError:"SocksClient internal error (this should not happen)",InvalidSocks4HandshakeResponse:"Received invalid Socks4 handshake response",Socks4ProxyRejectedConnection:"Socks4 Proxy rejected connection",InvalidSocks4IncomingConnectionResponse:"Socks4 invalid incoming connection response",Socks4ProxyRejectedIncomingBoundConnection:"Socks4 Proxy rejected incoming bound connection",InvalidSocks5InitialHandshakeResponse:"Received invalid Socks5 initial handshake response",InvalidSocks5IntiailHandshakeSocksVersion:"Received invalid Socks5 initial handshake (invalid socks version)",InvalidSocks5InitialHandshakeNoAcceptedAuthType:"Received invalid Socks5 initial handshake (no accepted authentication type)",InvalidSocks5InitialHandshakeUnknownAuthType:"Received invalid Socks5 initial handshake (unknown authentication type)",Socks5AuthenticationFailed:"Socks5 Authentication failed",InvalidSocks5FinalHandshake:"Received invalid Socks5 final handshake response",InvalidSocks5FinalHandshakeRejected:"Socks5 proxy rejected connection",InvalidSocks5IncomingConnectionResponse:"Received invalid Socks5 incoming connection response",Socks5ProxyRejectedIncomingBoundConnection:"Socks5 Proxy rejected incoming bound connection"};Hu.ERRORS=o8t;var s8t={Socks5InitialHandshakeResponse:2,Socks5UserPassAuthenticationResponse:2,Socks5ResponseHeader:5,Socks5ResponseIPv4:10,Socks5ResponseIPv6:22,Socks5ResponseHostname:A=>A+7,Socks4Response:8};Hu.SOCKS_INCOMING_PACKET_SIZES=s8t;var KEA;(function(A){A[A.connect=1]="connect",A[A.bind=2]="bind",A[A.associate=3]="associate"})(KEA||(KEA={}));Hu.SocksCommand=KEA;var XEA;(function(A){A[A.Granted=90]="Granted",A[A.Failed=91]="Failed",A[A.Rejected=92]="Rejected",A[A.RejectedIdent=93]="RejectedIdent"})(XEA||(XEA={}));Hu.Socks4Response=XEA;var ZEA;(function(A){A[A.NoAuth=0]="NoAuth",A[A.GSSApi=1]="GSSApi",A[A.UserPass=2]="UserPass"})(ZEA||(ZEA={}));Hu.Socks5Auth=ZEA;var c8t=128;Hu.SOCKS5_CUSTOM_AUTH_START=c8t;var l8t=254;Hu.SOCKS5_CUSTOM_AUTH_END=l8t;var u8t=255;Hu.SOCKS5_NO_ACCEPTABLE_AUTH=u8t;var $EA;(function(A){A[A.Granted=0]="Granted",A[A.Failure=1]="Failure",A[A.NotAllowed=2]="NotAllowed",A[A.NetworkUnreachable=3]="NetworkUnreachable",A[A.HostUnreachable=4]="HostUnreachable",A[A.ConnectionRefused=5]="ConnectionRefused",A[A.TTLExpired=6]="TTLExpired",A[A.CommandNotSupported=7]="CommandNotSupported",A[A.AddressNotSupported=8]="AddressNotSupported"})($EA||($EA={}));Hu.Socks5Response=$EA;var AfA;(function(A){A[A.IPv4=1]="IPv4",A[A.Hostname=3]="Hostname",A[A.IPv6=4]="IPv6"})(AfA||(AfA={}));Hu.Socks5HostType=AfA;var efA;(function(A){A[A.Created=0]="Created",A[A.Connecting=1]="Connecting",A[A.Connected=2]="Connected",A[A.SentInitialHandshake=3]="SentInitialHandshake",A[A.ReceivedInitialHandshakeResponse=4]="ReceivedInitialHandshakeResponse",A[A.SentAuthentication=5]="SentAuthentication",A[A.ReceivedAuthenticationResponse=6]="ReceivedAuthenticationResponse",A[A.SentFinalHandshake=7]="SentFinalHandshake",A[A.ReceivedFinalResponse=8]="ReceivedFinalResponse",A[A.BoundWaitingForConnection=9]="BoundWaitingForConnection",A[A.Established=10]="Established",A[A.Disconnected=11]="Disconnected",A[A.Error=99]="Error"})(efA||(efA={}));Hu.SocksClientState=efA});var ifA=GA(T3=>{"use strict";Object.defineProperty(T3,"__esModule",{value:!0});T3.shuffleArray=T3.SocksClientError=void 0;var tfA=class extends Error{constructor(r,t){super(r),this.options=t}};T3.SocksClientError=tfA;function g8t(A){for(let r=A.length-1;r>0;r--){let t=Math.floor(Math.random()*(r+1));[A[r],A[t]]=[A[t],A[r]]}}T3.shuffleArray=g8t});var aye=GA(N3=>{"use strict";Object.defineProperty(N3,"__esModule",{value:!0});N3.validateSocksClientChainOptions=N3.validateSocksClientOptions=void 0;var gB=ifA(),iE=rfA(),d8t=require("stream");function p8t(A,r=["connect","bind","associate"]){if(!iE.SocksCommand[A.command])throw new gB.SocksClientError(iE.ERRORS.InvalidSocksCommand,A);if(r.indexOf(A.command)===-1)throw new gB.SocksClientError(iE.ERRORS.InvalidSocksCommandForOperation,A);if(!tye(A.destination))throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsDestination,A);if(!iye(A.proxy))throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsProxy,A);if(rye(A.proxy,A),A.timeout&&!nye(A.timeout))throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsTimeout,A);if(A.existing_socket&&!(A.existing_socket instanceof d8t.Duplex))throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsExistingSocket,A)}N3.validateSocksClientOptions=p8t;function E8t(A){if(A.command!=="connect")throw new gB.SocksClientError(iE.ERRORS.InvalidSocksCommandChain,A);if(!tye(A.destination))throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsDestination,A);if(!(A.proxies&&Array.isArray(A.proxies)&&A.proxies.length>=2))throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsProxiesLength,A);if(A.proxies.forEach(r=>{if(!iye(r))throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsProxy,A);rye(r,A)}),A.timeout&&!nye(A.timeout))throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsTimeout,A)}N3.validateSocksClientChainOptions=E8t;function rye(A,r){if(A.custom_auth_method!==void 0){if(A.custom_auth_methodiE.SOCKS5_CUSTOM_AUTH_END)throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsCustomAuthRange,r);if(A.custom_auth_request_handler===void 0||typeof A.custom_auth_request_handler!="function")throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,r);if(A.custom_auth_response_size===void 0)throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,r);if(A.custom_auth_response_handler===void 0||typeof A.custom_auth_response_handler!="function")throw new gB.SocksClientError(iE.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,r)}}function tye(A){return A&&typeof A.host=="string"&&typeof A.port=="number"&&A.port>=0&&A.port<=65535}function iye(A){return A&&(typeof A.host=="string"||typeof A.ipaddress=="string")&&typeof A.port=="number"&&A.port>=0&&A.port<=65535&&(A.type===4||A.type===5)}function nye(A){return typeof A=="number"&&A>0}});var oye=GA(Nz=>{"use strict";Object.defineProperty(Nz,"__esModule",{value:!0});Nz.ReceiveBuffer=void 0;var nfA=class{constructor(r=4096){this.buffer=Buffer.allocUnsafe(r),this.offset=0,this.originalSize=r}get length(){return this.offset}append(r){if(!Buffer.isBuffer(r))throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer.");if(this.offset+r.length>=this.buffer.length){let t=this.buffer;this.buffer=Buffer.allocUnsafe(Math.max(this.buffer.length+this.originalSize,this.buffer.length+r.length)),t.copy(this.buffer)}return r.copy(this.buffer,this.offset),this.offset+=r.length}peek(r){if(r>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");return this.buffer.slice(0,r)}get(r){if(r>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");let t=Buffer.allocUnsafe(r);return this.buffer.slice(0,r).copy(t),this.buffer.copyWithin(0,r,r+this.offset-r),this.offset-=r,t}};Nz.ReceiveBuffer=nfA});var sye=GA(Jw=>{"use strict";var P3=Jw&&Jw.__awaiter||function(A,r,t,i){function o(s){return s instanceof t?s:new t(function(g){g(s)})}return new(t||(t=Promise))(function(s,g){function E(m){try{B(i.next(m))}catch(_){g(_)}}function p(m){try{B(i.throw(m))}catch(_){g(_)}}function B(m){m.done?s(m.value):o(m.value).then(E,p)}B((i=i.apply(A,r||[])).next())})};Object.defineProperty(Jw,"__esModule",{value:!0});Jw.SocksClientError=Jw.SocksClient=void 0;var f8t=require("events"),G3=require("net"),Vh=zve(),sh=eye(),ca=rfA(),afA=aye(),B8t=oye(),ofA=ifA();Object.defineProperty(Jw,"SocksClientError",{enumerable:!0,get:function(){return ofA.SocksClientError}});var sfA=class A extends f8t.EventEmitter{constructor(r){super(),this.options=Object.assign({},r),(0,afA.validateSocksClientOptions)(r),this.setState(ca.SocksClientState.Created)}static createConnection(r,t){return new Promise((i,o)=>{try{(0,afA.validateSocksClientOptions)(r,["connect"])}catch(g){return typeof t=="function"?(t(g),i(g)):o(g)}let s=new A(r);s.connect(r.existing_socket),s.once("established",g=>{s.removeAllListeners(),typeof t=="function"&&t(null,g),i(g)}),s.once("error",g=>{s.removeAllListeners(),typeof t=="function"?(t(g),i(g)):o(g)})})}static createConnectionChain(r,t){return new Promise((i,o)=>P3(this,void 0,void 0,function*(){try{(0,afA.validateSocksClientChainOptions)(r)}catch(s){return typeof t=="function"?(t(s),i(s)):o(s)}r.randomizeChain&&(0,ofA.shuffleArray)(r.proxies);try{let s;for(let g=0;gthis.onDataReceivedHandler(i),this.onClose=()=>this.onCloseHandler(),this.onError=i=>this.onErrorHandler(i),this.onConnect=()=>this.onConnectHandler();let t=setTimeout(()=>this.onEstablishedTimeout(),this.options.timeout||ca.DEFAULT_TIMEOUT);t.unref&&typeof t.unref=="function"&&t.unref(),r?this.socket=r:this.socket=new G3.Socket,this.socket.once("close",this.onClose),this.socket.once("error",this.onError),this.socket.once("connect",this.onConnect),this.socket.on("data",this.onDataReceived),this.setState(ca.SocksClientState.Connecting),this.receiveBuffer=new B8t.ReceiveBuffer,r?this.socket.emit("connect"):(this.socket.connect(this.getSocketOptions()),this.options.set_tcp_nodelay!==void 0&&this.options.set_tcp_nodelay!==null&&this.socket.setNoDelay(!!this.options.set_tcp_nodelay)),this.prependOnceListener("established",i=>{setImmediate(()=>{if(this.receiveBuffer.length>0){let o=this.receiveBuffer.get(this.receiveBuffer.length);i.socket.emit("data",o)}i.socket.resume()})})}getSocketOptions(){return Object.assign(Object.assign({},this.options.socket_options),{host:this.options.proxy.host||this.options.proxy.ipaddress,port:this.options.proxy.port})}onEstablishedTimeout(){this.state!==ca.SocksClientState.Established&&this.state!==ca.SocksClientState.BoundWaitingForConnection&&this.closeSocket(ca.ERRORS.ProxyConnectionTimedOut)}onConnectHandler(){this.setState(ca.SocksClientState.Connected),this.options.proxy.type===4?this.sendSocks4InitialHandshake():this.sendSocks5InitialHandshake(),this.setState(ca.SocksClientState.SentInitialHandshake)}onDataReceivedHandler(r){this.receiveBuffer.append(r),this.processData()}processData(){for(;this.state!==ca.SocksClientState.Established&&this.state!==ca.SocksClientState.Error&&this.receiveBuffer.length>=this.nextRequiredPacketBufferSize;)if(this.state===ca.SocksClientState.SentInitialHandshake)this.options.proxy.type===4?this.handleSocks4FinalHandshakeResponse():this.handleInitialSocks5HandshakeResponse();else if(this.state===ca.SocksClientState.SentAuthentication)this.handleInitialSocks5AuthenticationHandshakeResponse();else if(this.state===ca.SocksClientState.SentFinalHandshake)this.handleSocks5FinalHandshakeResponse();else if(this.state===ca.SocksClientState.BoundWaitingForConnection)this.options.proxy.type===4?this.handleSocks4IncomingConnectionResponse():this.handleSocks5IncomingConnectionResponse();else{this.closeSocket(ca.ERRORS.InternalError);break}}onCloseHandler(){this.closeSocket(ca.ERRORS.SocketClosed)}onErrorHandler(r){this.closeSocket(r.message)}removeInternalSocketHandlers(){this.socket.pause(),this.socket.removeListener("data",this.onDataReceived),this.socket.removeListener("close",this.onClose),this.socket.removeListener("error",this.onError),this.socket.removeListener("connect",this.onConnect)}closeSocket(r){this.state!==ca.SocksClientState.Error&&(this.setState(ca.SocksClientState.Error),this.socket.destroy(),this.removeInternalSocketHandlers(),this.emit("error",new ofA.SocksClientError(r,this.options)))}sendSocks4InitialHandshake(){let r=this.options.proxy.userId||"",t=new sh.SmartBuffer;t.writeUInt8(4),t.writeUInt8(ca.SocksCommand[this.options.command]),t.writeUInt16BE(this.options.destination.port),G3.isIPv4(this.options.destination.host)?(t.writeBuffer(Vh.toBuffer(this.options.destination.host)),t.writeStringNT(r)):(t.writeUInt8(0),t.writeUInt8(0),t.writeUInt8(0),t.writeUInt8(1),t.writeStringNT(r),t.writeStringNT(this.options.destination.host)),this.nextRequiredPacketBufferSize=ca.SOCKS_INCOMING_PACKET_SIZES.Socks4Response,this.socket.write(t.toBuffer())}handleSocks4FinalHandshakeResponse(){let r=this.receiveBuffer.get(8);if(r[1]!==ca.Socks4Response.Granted)this.closeSocket(`${ca.ERRORS.Socks4ProxyRejectedConnection} - (${ca.Socks4Response[r[1]]})`);else if(ca.SocksCommand[this.options.command]===ca.SocksCommand.bind){let t=sh.SmartBuffer.fromBuffer(r);t.readOffset=2;let i={port:t.readUInt16BE(),host:Vh.fromLong(t.readUInt32BE())};i.host==="0.0.0.0"&&(i.host=this.options.proxy.ipaddress),this.setState(ca.SocksClientState.BoundWaitingForConnection),this.emit("bound",{remoteHost:i,socket:this.socket})}else this.setState(ca.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{socket:this.socket})}handleSocks4IncomingConnectionResponse(){let r=this.receiveBuffer.get(8);if(r[1]!==ca.Socks4Response.Granted)this.closeSocket(`${ca.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${ca.Socks4Response[r[1]]})`);else{let t=sh.SmartBuffer.fromBuffer(r);t.readOffset=2;let i={port:t.readUInt16BE(),host:Vh.fromLong(t.readUInt32BE())};this.setState(ca.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:i,socket:this.socket})}}sendSocks5InitialHandshake(){let r=new sh.SmartBuffer,t=[ca.Socks5Auth.NoAuth];(this.options.proxy.userId||this.options.proxy.password)&&t.push(ca.Socks5Auth.UserPass),this.options.proxy.custom_auth_method!==void 0&&t.push(this.options.proxy.custom_auth_method),r.writeUInt8(5),r.writeUInt8(t.length);for(let i of t)r.writeUInt8(i);this.nextRequiredPacketBufferSize=ca.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse,this.socket.write(r.toBuffer()),this.setState(ca.SocksClientState.SentInitialHandshake)}handleInitialSocks5HandshakeResponse(){let r=this.receiveBuffer.get(2);r[0]!==5?this.closeSocket(ca.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion):r[1]===ca.SOCKS5_NO_ACCEPTABLE_AUTH?this.closeSocket(ca.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType):r[1]===ca.Socks5Auth.NoAuth?(this.socks5ChosenAuthType=ca.Socks5Auth.NoAuth,this.sendSocks5CommandRequest()):r[1]===ca.Socks5Auth.UserPass?(this.socks5ChosenAuthType=ca.Socks5Auth.UserPass,this.sendSocks5UserPassAuthentication()):r[1]===this.options.proxy.custom_auth_method?(this.socks5ChosenAuthType=this.options.proxy.custom_auth_method,this.sendSocks5CustomAuthentication()):this.closeSocket(ca.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType)}sendSocks5UserPassAuthentication(){let r=this.options.proxy.userId||"",t=this.options.proxy.password||"",i=new sh.SmartBuffer;i.writeUInt8(1),i.writeUInt8(Buffer.byteLength(r)),i.writeString(r),i.writeUInt8(Buffer.byteLength(t)),i.writeString(t),this.nextRequiredPacketBufferSize=ca.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse,this.socket.write(i.toBuffer()),this.setState(ca.SocksClientState.SentAuthentication)}sendSocks5CustomAuthentication(){return P3(this,void 0,void 0,function*(){this.nextRequiredPacketBufferSize=this.options.proxy.custom_auth_response_size,this.socket.write(yield this.options.proxy.custom_auth_request_handler()),this.setState(ca.SocksClientState.SentAuthentication)})}handleSocks5CustomAuthHandshakeResponse(r){return P3(this,void 0,void 0,function*(){return yield this.options.proxy.custom_auth_response_handler(r)})}handleSocks5AuthenticationNoAuthHandshakeResponse(r){return P3(this,void 0,void 0,function*(){return r[1]===0})}handleSocks5AuthenticationUserPassHandshakeResponse(r){return P3(this,void 0,void 0,function*(){return r[1]===0})}handleInitialSocks5AuthenticationHandshakeResponse(){return P3(this,void 0,void 0,function*(){this.setState(ca.SocksClientState.ReceivedAuthenticationResponse);let r=!1;this.socks5ChosenAuthType===ca.Socks5Auth.NoAuth?r=yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===ca.Socks5Auth.UserPass?r=yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===this.options.proxy.custom_auth_method&&(r=yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size))),r?this.sendSocks5CommandRequest():this.closeSocket(ca.ERRORS.Socks5AuthenticationFailed)})}sendSocks5CommandRequest(){let r=new sh.SmartBuffer;r.writeUInt8(5),r.writeUInt8(ca.SocksCommand[this.options.command]),r.writeUInt8(0),G3.isIPv4(this.options.destination.host)?(r.writeUInt8(ca.Socks5HostType.IPv4),r.writeBuffer(Vh.toBuffer(this.options.destination.host))):G3.isIPv6(this.options.destination.host)?(r.writeUInt8(ca.Socks5HostType.IPv6),r.writeBuffer(Vh.toBuffer(this.options.destination.host))):(r.writeUInt8(ca.Socks5HostType.Hostname),r.writeUInt8(this.options.destination.host.length),r.writeString(this.options.destination.host)),r.writeUInt16BE(this.options.destination.port),this.nextRequiredPacketBufferSize=ca.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.socket.write(r.toBuffer()),this.setState(ca.SocksClientState.SentFinalHandshake)}handleSocks5FinalHandshakeResponse(){let r=this.receiveBuffer.peek(5);if(r[0]!==5||r[1]!==ca.Socks5Response.Granted)this.closeSocket(`${ca.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${ca.Socks5Response[r[1]]}`);else{let t=r[3],i,o;if(t===ca.Socks5HostType.IPv4){let s=ca.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length{"use strict";var h8t=b2&&b2.__createBinding||(Object.create?function(A,r,t,i){i===void 0&&(i=t);var o=Object.getOwnPropertyDescriptor(r,t);(!o||("get"in o?!r.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(A,i,o)}:function(A,r,t,i){i===void 0&&(i=t),A[i]=r[t]}),Q8t=b2&&b2.__exportStar||function(A,r){for(var t in A)t!=="default"&&!Object.prototype.hasOwnProperty.call(r,t)&&h8t(r,A,t)};Object.defineProperty(b2,"__esModule",{value:!0});Q8t(sye(),b2)});var gye=GA(ch=>{"use strict";var m8t=ch&&ch.__createBinding||(Object.create?function(A,r,t,i){i===void 0&&(i=t);var o=Object.getOwnPropertyDescriptor(r,t);(!o||("get"in o?!r.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(A,i,o)}:function(A,r,t,i){i===void 0&&(i=t),A[i]=r[t]}),D8t=ch&&ch.__setModuleDefault||(Object.create?function(A,r){Object.defineProperty(A,"default",{enumerable:!0,value:r})}:function(A,r){A.default=r}),lye=ch&&ch.__importStar||function(A){if(A&&A.__esModule)return A;var r={};if(A!=null)for(var t in A)t!=="default"&&Object.prototype.hasOwnProperty.call(A,t)&&m8t(r,A,t);return D8t(r,A),r};Object.defineProperty(ch,"__esModule",{value:!0});ch.req=ch.json=ch.toBuffer=void 0;var _8t=lye(require("http")),w8t=lye(require("https"));async function uye(A){let r=0,t=[];for await(let i of A)r+=i.length,t.push(i);return Buffer.concat(t,r)}ch.toBuffer=uye;async function v8t(A){let t=(await uye(A)).toString("utf8");try{return JSON.parse(t)}catch(i){let o=i;throw o.message+=` (input: ${t})`,o}}ch.json=v8t;function y8t(A,r={}){let i=((typeof A=="string"?A:A.href).startsWith("https:")?w8t:_8t).request(A,r),o=new Promise((s,g)=>{i.once("response",s).once("error",g).end()});return i.then=o.then.bind(o),i}ch.req=y8t});var Eye=GA(zh=>{"use strict";var pye=zh&&zh.__createBinding||(Object.create?function(A,r,t,i){i===void 0&&(i=t);var o=Object.getOwnPropertyDescriptor(r,t);(!o||("get"in o?!r.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(A,i,o)}:function(A,r,t,i){i===void 0&&(i=t),A[i]=r[t]}),C8t=zh&&zh.__setModuleDefault||(Object.create?function(A,r){Object.defineProperty(A,"default",{enumerable:!0,value:r})}:function(A,r){A.default=r}),I8t=zh&&zh.__importStar||function(A){if(A&&A.__esModule)return A;var r={};if(A!=null)for(var t in A)t!=="default"&&Object.prototype.hasOwnProperty.call(A,t)&&pye(r,A,t);return C8t(r,A),r},b8t=zh&&zh.__exportStar||function(A,r){for(var t in A)t!=="default"&&!Object.prototype.hasOwnProperty.call(r,t)&&pye(r,A,t)};Object.defineProperty(zh,"__esModule",{value:!0});zh.Agent=void 0;var dye=I8t(require("http"));b8t(gye(),zh);var y1=Symbol("AgentBaseInternalState"),cfA=class extends dye.Agent{constructor(r){super(r),this[y1]={}}isSecureEndpoint(r){if(r){if(typeof r.secureEndpoint=="boolean")return r.secureEndpoint;if(typeof r.protocol=="string")return r.protocol==="https:"}let{stack:t}=new Error;return typeof t!="string"?!1:t.split(` -`).some(i=>i.indexOf("(https.js:")!==-1||i.indexOf("node:https:")!==-1)}createSocket(r,t,i){let o={...t,secureEndpoint:this.isSecureEndpoint(t)};Promise.resolve().then(()=>this.connect(r,o)).then(s=>{if(s instanceof dye.Agent)return s.addRequest(r,o);this[y1].currentSocket=s,super.createSocket(r,t,i)},i)}createConnection(){let r=this[y1].currentSocket;if(this[y1].currentSocket=void 0,!r)throw new Error("No socket was returned in the `connect()` function");return r}get defaultPort(){return this[y1].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(r){this[y1]&&(this[y1].defaultPort=r)}get protocol(){return this[y1].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(r){this[y1]&&(this[y1].protocol=r)}};zh.Agent=cfA});var Bye=GA((qfi,fye)=>{var Y3=1e3,U3=Y3*60,L3=U3*60,O2=L3*24,O8t=O2*7,M8t=O2*365.25;fye.exports=function(A,r){r=r||{};var t=typeof A;if(t==="string"&&A.length>0)return k8t(A);if(t==="number"&&isFinite(A))return r.long?H8t(A):x8t(A);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(A))};function k8t(A){if(A=String(A),!(A.length>100)){var r=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(A);if(r){var t=parseFloat(r[1]),i=(r[2]||"ms").toLowerCase();switch(i){case"years":case"year":case"yrs":case"yr":case"y":return t*M8t;case"weeks":case"week":case"w":return t*O8t;case"days":case"day":case"d":return t*O2;case"hours":case"hour":case"hrs":case"hr":case"h":return t*L3;case"minutes":case"minute":case"mins":case"min":case"m":return t*U3;case"seconds":case"second":case"secs":case"sec":case"s":return t*Y3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function x8t(A){var r=Math.abs(A);return r>=O2?Math.round(A/O2)+"d":r>=L3?Math.round(A/L3)+"h":r>=U3?Math.round(A/U3)+"m":r>=Y3?Math.round(A/Y3)+"s":A+"ms"}function H8t(A){var r=Math.abs(A);return r>=O2?Pz(A,r,O2,"day"):r>=L3?Pz(A,r,L3,"hour"):r>=U3?Pz(A,r,U3,"minute"):r>=Y3?Pz(A,r,Y3,"second"):A+" ms"}function Pz(A,r,t,i){var o=r>=t*1.5;return Math.round(A/t)+" "+i+(o?"s":"")}});var lfA=GA((Vfi,hye)=>{function S8t(A){t.debug=t,t.default=t,t.coerce=p,t.disable=s,t.enable=o,t.enabled=g,t.humanize=Bye(),t.destroy=B,Object.keys(A).forEach(m=>{t[m]=A[m]}),t.names=[],t.skips=[],t.formatters={};function r(m){let _=0;for(let x=0;x{if(U==="%%")return"%";y++;let wA=t.formatters[V];if(typeof wA=="function"){let IA=H[y];U=wA.call(T,IA),H.splice(y,1),y--}return U}),t.formatArgs.call(T,H),(T.log||t.log).apply(T,H)}return P.namespace=m,P.useColors=t.useColors(),P.color=t.selectColor(m),P.extend=i,P.destroy=t.destroy,Object.defineProperty(P,"enabled",{enumerable:!0,configurable:!1,get:()=>x!==null?x:(O!==t.namespaces&&(O=t.namespaces,k=t.enabled(m)),k),set:H=>{x=H}}),typeof t.init=="function"&&t.init(P),P}function i(m,_){let x=t(this.namespace+(typeof _>"u"?":":_)+m);return x.log=this.log,x}function o(m){t.save(m),t.namespaces=m,t.names=[],t.skips=[];let _,x=(typeof m=="string"?m:"").split(/[\s,]+/),O=x.length;for(_=0;_"-"+_)].join(",");return t.enable(""),m}function g(m){if(m[m.length-1]==="*")return!0;let _,x;for(_=0,x=t.skips.length;_{Kh.formatArgs=R8t;Kh.save=T8t;Kh.load=N8t;Kh.useColors=F8t;Kh.storage=P8t();Kh.destroy=(()=>{let A=!1;return()=>{A||(A=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Kh.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function F8t(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function R8t(A){if(A[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+A[0]+(this.useColors?"%c ":" ")+"+"+Gz.exports.humanize(this.diff),!this.useColors)return;let r="color: "+this.color;A.splice(1,0,r,"color: inherit");let t=0,i=0;A[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(t++,o==="%c"&&(i=t))}),A.splice(i,0,r)}Kh.log=console.debug||console.log||(()=>{});function T8t(A){try{A?Kh.storage.setItem("debug",A):Kh.storage.removeItem("debug")}catch{}}function N8t(){let A;try{A=Kh.storage.getItem("debug")}catch{}return!A&&typeof process<"u"&&"env"in process&&(A=process.env.DEBUG),A}function P8t(){try{return localStorage}catch{}}Gz.exports=lfA()(Kh);var{formatters:G8t}=Gz.exports;G8t.j=function(A){try{return JSON.stringify(A)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}}});var Dye=GA((zfi,mye)=>{"use strict";mye.exports=(A,r=process.argv)=>{let t=A.startsWith("-")?"":A.length===1?"-":"--",i=r.indexOf(t+A),o=r.indexOf("--");return i!==-1&&(o===-1||i{"use strict";var Y8t=require("os"),_ye=require("tty"),YQ=Dye(),{env:nE}=process,Yz;YQ("no-color")||YQ("no-colors")||YQ("color=false")||YQ("color=never")?Yz=0:(YQ("color")||YQ("colors")||YQ("color=true")||YQ("color=always"))&&(Yz=1);function U8t(){if("FORCE_COLOR"in nE)return nE.FORCE_COLOR==="true"?1:nE.FORCE_COLOR==="false"?0:nE.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(nE.FORCE_COLOR,10),3)}function L8t(A){return A===0?!1:{level:A,hasBasic:!0,has256:A>=2,has16m:A>=3}}function j8t(A,{streamIsTTY:r,sniffFlags:t=!0}={}){let i=U8t();i!==void 0&&(Yz=i);let o=t?Yz:i;if(o===0)return 0;if(t){if(YQ("color=16m")||YQ("color=full")||YQ("color=truecolor"))return 3;if(YQ("color=256"))return 2}if(A&&!r&&o===void 0)return 0;let s=o||0;if(nE.TERM==="dumb")return s;if(process.platform==="win32"){let g=Y8t.release().split(".");return Number(g[0])>=10&&Number(g[2])>=10586?Number(g[2])>=14931?3:2:1}if("CI"in nE)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(g=>g in nE)||nE.CI_NAME==="codeship"?1:s;if("TEAMCITY_VERSION"in nE)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(nE.TEAMCITY_VERSION)?1:0;if(nE.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in nE){let g=Number.parseInt((nE.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(nE.TERM_PROGRAM){case"iTerm.app":return g>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(nE.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(nE.TERM)||"COLORTERM"in nE?1:s}function ufA(A,r={}){let t=j8t(A,{streamIsTTY:A&&A.isTTY,...r});return L8t(t)}wye.exports={supportsColor:ufA,stdout:ufA({isTTY:_ye.isatty(1)}),stderr:ufA({isTTY:_ye.isatty(2)})}});var Cye=GA((KE,Lz)=>{var W8t=require("tty"),Uz=require("util");KE.init=Z8t;KE.log=z8t;KE.formatArgs=q8t;KE.save=K8t;KE.load=X8t;KE.useColors=J8t;KE.destroy=Uz.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");KE.colors=[6,2,3,4,5,1];try{let A=vye();A&&(A.stderr||A).level>=2&&(KE.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}KE.inspectOpts=Object.keys(process.env).filter(A=>/^debug_/i.test(A)).reduce((A,r)=>{let t=r.substring(6).toLowerCase().replace(/_([a-z])/g,(o,s)=>s.toUpperCase()),i=process.env[r];return/^(yes|on|true|enabled)$/i.test(i)?i=!0:/^(no|off|false|disabled)$/i.test(i)?i=!1:i==="null"?i=null:i=Number(i),A[t]=i,A},{});function J8t(){return"colors"in KE.inspectOpts?!!KE.inspectOpts.colors:W8t.isatty(process.stderr.fd)}function q8t(A){let{namespace:r,useColors:t}=this;if(t){let i=this.color,o="\x1B[3"+(i<8?i:"8;5;"+i),s=` ${o};1m${r} \x1B[0m`;A[0]=s+A[0].split(` -`).join(` -`+s),A.push(o+"m+"+Lz.exports.humanize(this.diff)+"\x1B[0m")}else A[0]=V8t()+r+" "+A[0]}function V8t(){return KE.inspectOpts.hideDate?"":new Date().toISOString()+" "}function z8t(...A){return process.stderr.write(Uz.format(...A)+` -`)}function K8t(A){A?process.env.DEBUG=A:delete process.env.DEBUG}function X8t(){return process.env.DEBUG}function Z8t(A){A.inspectOpts={};let r=Object.keys(KE.inspectOpts);for(let t=0;tr.trim()).join(" ")};yye.O=function(A){return this.inspectOpts.colors=this.useColors,Uz.inspect(A,this.inspectOpts)}});var Vk=GA((Xfi,gfA)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?gfA.exports=Qye():gfA.exports=Cye()});var Iye=GA(UQ=>{"use strict";var $8t=UQ&&UQ.__createBinding||(Object.create?function(A,r,t,i){i===void 0&&(i=t);var o=Object.getOwnPropertyDescriptor(r,t);(!o||("get"in o?!r.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(A,i,o)}:function(A,r,t,i){i===void 0&&(i=t),A[i]=r[t]}),AMt=UQ&&UQ.__setModuleDefault||(Object.create?function(A,r){Object.defineProperty(A,"default",{enumerable:!0,value:r})}:function(A,r){A.default=r}),dfA=UQ&&UQ.__importStar||function(A){if(A&&A.__esModule)return A;var r={};if(A!=null)for(var t in A)t!=="default"&&Object.prototype.hasOwnProperty.call(A,t)&&$8t(r,A,t);return AMt(r,A),r},eMt=UQ&&UQ.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(UQ,"__esModule",{value:!0});UQ.SocksProxyAgent=void 0;var rMt=cye(),tMt=Eye(),iMt=eMt(Vk()),nMt=dfA(require("dns")),aMt=dfA(require("net")),oMt=dfA(require("tls")),jz=(0,iMt.default)("socks-proxy-agent");function sMt(A){let r=!1,t=5,i=A.hostname,o=parseInt(A.port,10)||1080;switch(A.protocol.replace(":","")){case"socks4":r=!0,t=4;break;case"socks4a":t=4;break;case"socks5":r=!0,t=5;break;case"socks":t=5;break;case"socks5h":t=5;break;default:throw new TypeError(`A "socks" protocol must be specified! Got: ${String(A.protocol)}`)}let s={host:i,port:o,type:t};return A.username&&Object.defineProperty(s,"userId",{value:decodeURIComponent(A.username),enumerable:!1}),A.password!=null&&Object.defineProperty(s,"password",{value:decodeURIComponent(A.password),enumerable:!1}),{lookup:r,proxy:s}}var Wz=class extends tMt.Agent{constructor(r,t){super(t);let i=typeof r=="string"?new URL(r):r,{proxy:o,lookup:s}=sMt(i);this.shouldLookup=s,this.proxy=o,this.timeout=t?.timeout??null}async connect(r,t){let{shouldLookup:i,proxy:o,timeout:s}=this;if(!t.host)throw new Error("No `host` defined!");let{host:g}=t,{port:E,lookup:p=nMt.lookup}=t;i&&(g=await new Promise((x,O)=>{p(g,{},(k,P)=>{k?O(k):x(P)})}));let B={proxy:o,destination:{host:g,port:typeof E=="number"?E:parseInt(E,10)},command:"connect",timeout:s??void 0},m=x=>{r.destroy(),_.destroy(),x&&x.destroy()};jz("Creating socks proxy connection: %o",B);let{socket:_}=await rMt.SocksClient.createConnection(B);if(jz("Successfully created socks proxy connection"),s!==null&&(_.setTimeout(s),_.on("timeout",()=>m())),t.secureEndpoint){jz("Upgrading socket connection to TLS");let x=t.servername||t.host,O=oMt.connect({...cMt(t,"host","path","port"),socket:_,servername:aMt.isIP(x)?void 0:x});return O.once("error",k=>{jz("Socket TLS error",k.message),m(O)}),O}return _}};Wz.protocols=["socks","socks4","socks4a","socks5","socks5h"];UQ.SocksProxyAgent=Wz;function cMt(A,...r){let t={},i;for(i in A)r.includes(i)||(t[i]=A[i]);return t}});var Tye=GA((iBi,Rye)=>{"use strict";var fMt=require("events"),Fye=A=>function(){this.done?this.done=!1:this.stack.push(this.current,this.key),this.current=new A,this.key=null},lD=class A extends fMt{static connectTo(r,t){return new A(t).connectTo(r)}constructor(r){super(),this.stack=[],this.current=this.key=null,this.done=!0,r&&(this.reviver=typeof r.reviver=="function"&&r.reviver,this.reviver&&(this.stringValue=this._saveValue=this._saveValueWithReviver),r.numberAsString&&(this.numberValue=this.stringValue))}connectTo(r){return r.on("data",t=>{this[t.name]&&(this[t.name](t.value),this.done&&this.emit("done",this))}),this}get depth(){return(this.stack.length>>1)+(this.done?0:1)}get path(){let r=[];for(let t=0;t{"use strict";var{Transform:BMt}=require("stream"),hMt=Tye(),ffA=class{constructor(r){this.depth=r}startObject(){++this.depth}endObject(){--this.depth}startArray(){++this.depth}endArray(){--this.depth}},BfA=class extends BMt{constructor(r){super(Object.assign({},r,{writableObjectMode:!0,readableObjectMode:!0})),r&&(this.objectFilter=r.objectFilter,this.includeUndecided=r.includeUndecided),typeof this.objectFilter!="function"&&(this._filter=this._transform),this._transform=this._wait||this._filter,this._assembler=new hMt(r)}_transform(r,t,i){this._assembler[r.name]&&(this._assembler[r.name](r.value),this._assembler.depth===this._level&&this._push()),i(null)}_filter(r,t,i){if(this._assembler[r.name]){this._assembler[r.name](r.value);let o=this.objectFilter(this._assembler);if(o)return this._assembler.depth===this._level&&(this._push(),this._transform=this._filter),this._transform=this._accept,i(null);if(o===!1)return this._saved_assembler=this._assembler,this._assembler=new ffA(this._saved_assembler.depth),this._saved_assembler.dropToLevel(this._level),this._assembler.depth===this._level&&(this._assembler=this._saved_assembler,this._transform=this._filter),this._transform=this._reject,i(null);this._assembler.depth===this._level&&this._push(!this.includeUndecided)}i(null)}_accept(r,t,i){this._assembler[r.name]&&(this._assembler[r.name](r.value),this._assembler.depth===this._level&&(this._push(),this._transform=this._filter)),i(null)}_reject(r,t,i){this._assembler[r.name]&&(this._assembler[r.name](r.value),this._assembler.depth===this._level&&(this._assembler=this._saved_assembler,this._transform=this._filter)),i(null)}};Nye.exports=BfA});var jye=GA((sBi,Lye)=>{"use strict";var{Readable:aBi,Writable:oBi,Duplex:QMt,Transform:Uye}=require("stream"),mMt=Symbol.for("object-stream.none"),hfA=Symbol.for("object-stream.final"),QfA=Symbol.for("object-stream.many"),DMt=A=>({[hfA]:A}),_Mt=A=>({[QfA]:A}),wMt=A=>A&&typeof A=="object"&&hfA in A,vMt=A=>A&&typeof A=="object"&&QfA in A,yMt=A=>A[hfA],CMt=A=>A[QfA],IMt=async(A,r)=>{for(;;){let t=A.next();if(t&&typeof t.then=="function"&&(t=await t),t.done)break;let i=t.value;i&&typeof i.then=="function"&&(i=await i),dd.sanitize(i,r)}},bMt=A=>new Uye({writableObjectMode:!0,readableObjectMode:!0,transform(r,t,i){try{let o=A.call(this,r,t);if(o&&typeof o.then=="function"){o.then(s=>(dd.sanitize(s,this),i(null)),s=>i(s));return}if(o&&typeof o.next=="function"){IMt(o,this).then(()=>i(null),s=>i(s));return}dd.sanitize(o,this),i(null)}catch(o){i(o)}}}),OMt=A=>new Uye({writableObjectMode:!0,readableObjectMode:!0,transform(r,t,i){try{let o=r;for(let s=0;sA&&typeof A.pipe=="function"&&typeof A.on=="function"&&(!A._writableState||(typeof A._readableState=="object"?A._readableState.readable:null)!==!1)&&(!A._writableState||A._readableState),Yye=A=>A&&typeof A.write=="function"&&typeof A.on=="function"&&(!A._readableState||(typeof A._writableState=="object"?A._writableState.writable:null)!==!1),MMt=A=>A&&typeof A.pipe=="function"&&A._readableState&&typeof A.on=="function"&&typeof A.write=="function",dd=class A extends QMt{constructor(r,t){if(super(t||{writableObjectMode:!0,readableObjectMode:!0}),!(r instanceof Array)||!r.length)throw Error("Chain's argument should be a non-empty array.");this.streams=r.filter(i=>i).map((i,o,s)=>{if(typeof i=="function"||i instanceof Array)return A.convertToTransform(i);if(MMt(i)||!o&&Gye(i)||o===s.length-1&&Yye(i))return i;throw Error("Arguments should be functions, arrays or streams.")}).filter(i=>i),this.input=this.streams[0],this.output=this.streams.reduce((i,o)=>i&&i.pipe(o)||o),Yye(this.input)||(this._write=(i,o,s)=>s(null),this._final=i=>i(null),this.input.on("end",()=>this.end())),Gye(this.output)?(this.output.on("data",i=>!this.push(i)&&this.output.pause()),this.output.on("end",()=>this.push(null))):(this._read=()=>{},this.resume(),this.output.on("finish",()=>this.push(null))),(!t||!t.skipEvents)&&this.streams.forEach(i=>i.on("error",o=>this.emit("error",o)))}_write(r,t,i){let o=null;try{this.input.write(r,t,s=>i(s||o))}catch(s){o=s}}_final(r){let t=null;try{this.input.end(null,null,i=>r(i||t))}catch(i){t=i}}_read(){this.output.resume()}static make(r,t){return new A(r,t)}static sanitize(r,t){A.isFinal(r)?r=A.getFinalValue(r):A.isMany(r)&&(r=A.getManyValues(r)),r!=null&&r!==A.none&&(r instanceof Array?r.forEach(i=>i!=null&&t.push(i)):t.push(r))}static convertToTransform(r){return typeof r=="function"?bMt(r):r instanceof Array&&r.length?OMt(r):null}};dd.none=mMt;dd.final=DMt;dd.isFinal=wMt;dd.getFinalValue=yMt;dd.many=_Mt;dd.isMany=vMt;dd.getManyValues=CMt;dd.chain=dd.make;dd.make.Constructor=dd;Lye.exports=dd});var Jye=GA((cBi,Wye)=>{"use strict";var{Transform:kMt}=require("stream"),{StringDecoder:xMt}=require("string_decoder"),mfA=class extends kMt{constructor(r){super(Object.assign({},r,{writableObjectMode:!1})),this._buffer=""}_transform(r,t,i){typeof r=="string"?this._transform=this._transformString:(this._stringDecoder=new xMt,this._transform=this._transformBuffer),this._transform(r,t,i)}_transformBuffer(r,t,i){this._buffer+=this._stringDecoder.write(r),this._processBuffer(i)}_transformString(r,t,i){this._buffer+=r.toString(),this._processBuffer(i)}_processBuffer(r){this._buffer&&(this.push(this._buffer,"utf8"),this._buffer=""),r(null)}_flushInput(){this._stringDecoder&&(this._buffer+=this._stringDecoder.end())}_flush(r){this._flushInput(),this._processBuffer(r)}};Wye.exports=mfA});var Vye=GA((lBi,qye)=>{"use strict";var HMt=Jye(),cc={value1:/^(?:[\"\{\[\]\-\d]|true\b|false\b|null\b|\s{1,256})/,string:/^(?:[^\"\\]{1,256}|\\[bfnrt\"\\\/]|\\u[\da-fA-F]{4}|\")/,key1:/^(?:[\"\}]|\s{1,256})/,colon:/^(?:\:|\s{1,256})/,comma:/^(?:[\,\]\}]|\s{1,256})/,ws:/^\s{1,256}/,numberStart:/^\d/,numberDigit:/^\d{0,256}/,numberFraction:/^[\.eE]/,numberExponent:/^[eE]/,numberExpSign:/^[-+]/},SMt=16,aE=!0;try{new RegExp(".","y"),aE=!1}catch{}!aE&&Object.keys(cc).forEach(A=>{let r=cc[A].source.slice(1);r.slice(0,3)==="(?:"&&r.slice(-1)===")"&&(r=r.slice(3,-1)),cc[A]=new RegExp(r,"y")});cc.numberFracStart=cc.numberExpStart=cc.numberStart;cc.numberFracDigit=cc.numberExpDigit=cc.numberDigit;var FMt={true:!0,false:!1,null:null},C1={object:"objectStop",array:"arrayStop","":"done"},RMt=A=>String.fromCharCode(parseInt(A.slice(2),16)),TMt={b:"\b",f:"\f",n:` -`,r:"\r",t:" ",'"':'"',"\\":"\\","/":"/"},M2=class A extends HMt{static make(r){return new A(r)}constructor(r){super(Object.assign({},r,{readableObjectMode:!0})),this._packKeys=this._packStrings=this._packNumbers=this._streamKeys=this._streamStrings=this._streamNumbers=!0,r&&("packValues"in r&&(this._packKeys=this._packStrings=this._packNumbers=r.packValues),"packKeys"in r&&(this._packKeys=r.packKeys),"packStrings"in r&&(this._packStrings=r.packStrings),"packNumbers"in r&&(this._packNumbers=r.packNumbers),"streamValues"in r&&(this._streamKeys=this._streamStrings=this._streamNumbers=r.streamValues),"streamKeys"in r&&(this._streamKeys=r.streamKeys),"streamStrings"in r&&(this._streamStrings=r.streamStrings),"streamNumbers"in r&&(this._streamNumbers=r.streamNumbers),this._jsonStreaming=r.jsonStreaming),!this._packKeys&&(this._streamKeys=!0),!this._packStrings&&(this._streamStrings=!0),!this._packNumbers&&(this._streamNumbers=!0),this._done=!1,this._expect=this._jsonStreaming?"done":"value",this._stack=[],this._parent="",this._open_number=!1,this._accumulator=""}_flush(r){this._done=!0,super._flush(t=>{if(t)return r(t);this._open_number&&(this._streamNumbers&&this.push({name:"endNumber"}),this._open_number=!1,this._packNumbers&&(this.push({name:"numberValue",value:this._accumulator}),this._accumulator="")),r(null)})}_processBuffer(r){let t,i,o=0;A:for(;;)switch(this._expect){case"value1":case"value":if(cc.value1.lastIndex=o,t=cc.value1.exec(this._buffer),!t){if(this._done||o+SMt=6))return r(new Error("Parser cannot parse input: escaped characters"));if(this._done)return r(new Error("Parser has expected a string value"));break A}if(i=t[0],i==='"')this._expect==="keyVal"?(this._streamKeys&&this.push({name:"endKey"}),this._packKeys&&(this.push({name:"keyValue",value:this._accumulator}),this._accumulator=""),this._expect="colon"):(this._streamStrings&&this.push({name:"endString"}),this._packStrings&&(this.push({name:"stringValue",value:this._accumulator}),this._accumulator=""),this._expect=C1[this._parent]);else if(i.length>1&&i.charAt(0)==="\\"){let s=i.length==2?TMt[i.charAt(1)]:RMt(i);(this._expect==="keyVal"?this._streamKeys:this._streamStrings)&&this.push({name:"stringChunk",value:s}),(this._expect==="keyVal"?this._packKeys:this._packStrings)&&(this._accumulator+=s)}else(this._expect==="keyVal"?this._streamKeys:this._streamStrings)&&this.push({name:"stringChunk",value:i}),(this._expect==="keyVal"?this._packKeys:this._packStrings)&&(this._accumulator+=i);aE?this._buffer=this._buffer.slice(i.length):o+=i.length;break;case"key1":case"key":if(cc.key1.lastIndex=o,t=cc.key1.exec(this._buffer),!t){if(o{"use strict";var NMt=jye(),PMt=Vye(),GMt=(A,r)=>new NMt([new PMt(r),A(r)],Object.assign({},r,{writableObjectMode:!1,readableObjectMode:!0}));zye.exports=GMt});var Zye=GA((gBi,Xye)=>{"use strict";var YMt=Pye(),UMt=Kye(),k2=class A extends YMt{static make(r){return new A(r)}static withParser(r){return UMt(A.make,Object.assign({},r,{jsonStreaming:!0}))}constructor(r){super(r),this._counter=0,this._level=0}_push(r){r?++this._counter:this.push({key:this._counter++,value:this._assembler.current}),this._assembler.current=this._assembler.key=null}};k2.streamValues=k2.make;k2.make.Constructor=k2;Xye.exports=k2});var SfA=GA(HfA=>{Object.defineProperty(HfA,"__esModule",{value:!0});function Akt(A,r){return A??r()}HfA._nullishCoalesce=Akt});var E2e=GA(FfA=>{Object.defineProperty(FfA,"__esModule",{value:!0});var ekt=SfA();async function rkt(A,r){return ekt._nullishCoalesce(A,r)}FfA._asyncNullishCoalesce=rkt});var TfA=GA(RfA=>{Object.defineProperty(RfA,"__esModule",{value:!0});async function tkt(A){let r,t=A[0],i=1;for(;it.call(r,...g)),r=void 0)}return t}RfA._asyncOptionalChain=tkt});var f2e=GA(NfA=>{Object.defineProperty(NfA,"__esModule",{value:!0});var ikt=TfA();async function nkt(A){let r=await ikt._asyncOptionalChain(A);return r??!0}NfA._asyncOptionalChainDelete=nkt});var GfA=GA(PfA=>{Object.defineProperty(PfA,"__esModule",{value:!0});function akt(A){let r,t=A[0],i=1;for(;it.call(r,...g)),r=void 0)}return t}PfA._optionalChain=akt});var B2e=GA(YfA=>{Object.defineProperty(YfA,"__esModule",{value:!0});var okt=GfA();function skt(A){let r=okt._optionalChain(A);return r??!0}YfA._optionalChainDelete=skt});var pd=GA(zw=>{Object.defineProperty(zw,"__esModule",{value:!0});var ckt=E2e(),lkt=TfA(),ukt=f2e(),gkt=SfA(),dkt=GfA(),pkt=B2e();zw._asyncNullishCoalesce=ckt._asyncNullishCoalesce;zw._asyncOptionalChain=lkt._asyncOptionalChain;zw._asyncOptionalChainDelete=ukt._asyncOptionalChainDelete;zw._nullishCoalesce=gkt._nullishCoalesce;zw._optionalChain=dkt._optionalChain;zw._optionalChainDelete=pkt._optionalChainDelete});var Kw=GA(UfA=>{var{_optionalChain:h2e}=pd();Object.defineProperty(UfA,"__esModule",{value:!0});function Ekt(A){let r=h2e([A,"call",i=>i(),"access",i=>i.getClient,"call",i=>i(),"optionalAccess",i=>i.getOptions,"call",i=>i()]);return(h2e([r,"optionalAccess",i=>i.instrumenter])||"sentry")!=="sentry"}UfA.shouldDisableAutoInstrumentation=Ekt});var m2e=GA(LfA=>{var{_optionalChain:Xk}=pd();Object.defineProperty(LfA,"__esModule",{value:!0});var em=wo(),fkt=Kw(),tK=class A{static __initStatic(){this.id="Express"}constructor(r={}){this.name=A.id,this._router=r.router||r.app,this._methods=(Array.isArray(r.methods)?r.methods:[]).concat("use")}setupOnce(r,t){if(!this._router){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&em.logger.error("ExpressIntegration is missing an Express instance");return}if(fkt.shouldDisableAutoInstrumentation(t)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&em.logger.log("Express Integration is skipped because of instrumenter configuration.");return}Qkt(this._router,this._methods),mkt(this._router)}};tK.__initStatic();function Q2e(A,r){let t=A.length;switch(t){case 2:return function(i,o){let s=o.__sentry_transaction;if(s){let g=s.startChild({description:A.name,op:`middleware.express.${r}`,origin:"auto.middleware.express"});o.once("finish",()=>{g.finish()})}return A.call(this,i,o)};case 3:return function(i,o,s){let g=o.__sentry_transaction,E=Xk([g,"optionalAccess",p=>p.startChild,"call",p=>p({description:A.name,op:`middleware.express.${r}`,origin:"auto.middleware.express"})]);A.call(this,i,o,function(...p){Xk([E,"optionalAccess",B=>B.finish,"call",B=>B()]),s.call(this,...p)})};case 4:return function(i,o,s,g){let E=s.__sentry_transaction,p=Xk([E,"optionalAccess",B=>B.startChild,"call",B=>B({description:A.name,op:`middleware.express.${r}`,origin:"auto.middleware.express"})]);A.call(this,i,o,s,function(...B){Xk([p,"optionalAccess",m=>m.finish,"call",m=>m()]),g.call(this,...B)})};default:throw new Error(`Express middleware takes 2-4 arguments. Got: ${t}`)}}function Bkt(A,r){return A.map(t=>typeof t=="function"?Q2e(t,r):Array.isArray(t)?t.map(i=>typeof i=="function"?Q2e(i,r):i):t)}function hkt(A,r){let t=A[r];return A[r]=function(...i){return t.call(this,...Bkt(i,r))},A}function Qkt(A,r=[]){r.forEach(t=>hkt(A,t))}function mkt(A){let r="settings"in A;r&&A._router===void 0&&A.lazyrouter&&A.lazyrouter();let t=r?A._router:A;if(!t){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&em.logger.debug("Cannot instrument router for URL Parameterization (did not find a valid router)."),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&em.logger.debug("Routing instrumentation is currently only supported in Express 4.");return}let i=Object.getPrototypeOf(t),o=i.process_params;i.process_params=function(g,E,p,B,m){p._reconstructedRoute||(p._reconstructedRoute="");let{layerRoutePath:_,isRegex:x,isArray:O,numExtraSegments:k}=Dkt(g);(_||x||O)&&(p._hasParameters=!0);let H=(_||g.path||"").split("/").filter(F=>F.length>0&&(x||O||!F.includes("*"))).join("/");H&&H.length>0&&(p._reconstructedRoute+=`/${H}${x?"/":""}`);let T=em.getNumberOfUrlSegments(p.originalUrl||"")+k,v=em.getNumberOfUrlSegments(p._reconstructedRoute);if(T===v){p._hasParameters||p._reconstructedRoute!==p.originalUrl&&(p._reconstructedRoute=p.originalUrl?em.stripUrlQueryAndFragment(p.originalUrl):p.originalUrl);let F=B.__sentry_transaction;if(F&&F.metadata.source!=="custom"){let y=p._reconstructedRoute||"/";F.setName(...em.extractPathForTransaction(p,{path:!0,method:!0,customRoute:y}))}}return o.call(this,g,E,p,B,m)}}function Dkt(A){let r=Xk([A,"access",g=>g.route,"optionalAccess",g=>g.path]),t=em.isRegExp(r),i=Array.isArray(r);if(!r)return{isRegex:t,isArray:i,numExtraSegments:0};let o=i?Math.max(_kt(r)-em.getNumberOfUrlSegments(A.path||""),0):0;return{layerRoutePath:wkt(i,r),isRegex:t,isArray:i,numExtraSegments:o}}function _kt(A){return A.reduce((r,t)=>r+em.getNumberOfUrlSegments(t.toString()),0)}function wkt(A,r){return A?r.map(t=>t.toString()).join(","):r&&r.toString()}LfA.Express=tK});var D2e=GA(jfA=>{var{_optionalChain:x2}=pd();Object.defineProperty(jfA,"__esModule",{value:!0});var W3=wo(),vkt=Kw(),iK=class A{static __initStatic(){this.id="Postgres"}constructor(r={}){this.name=A.id,this._usePgNative=!!r.usePgNative}loadDependency(){return this._module=this._module||W3.loadModule("pg")}setupOnce(r,t){if(vkt.shouldDisableAutoInstrumentation(t)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&W3.logger.log("Postgres Integration is skipped because of instrumenter configuration.");return}let i=this.loadDependency();if(!i){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&W3.logger.error("Postgres Integration was unable to require `pg` package.");return}if(this._usePgNative&&!x2([i,"access",s=>s.native,"optionalAccess",s=>s.Client])){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&W3.logger.error("Postgres Integration was unable to access 'pg-native' bindings.");return}let{Client:o}=this._usePgNative?i.native:i;W3.fill(o.prototype,"query",function(s){return function(g,E,p){let B=t().getScope(),m=x2([B,"optionalAccess",k=>k.getSpan,"call",k=>k()]),_={"db.system":"postgresql"};try{this.database&&(_["db.name"]=this.database),this.host&&(_["server.address"]=this.host),this.port&&(_["server.port"]=this.port),this.user&&(_["db.user"]=this.user)}catch{}let x=x2([m,"optionalAccess",k=>k.startChild,"call",k=>k({description:typeof g=="string"?g:g.text,op:"db",origin:"auto.db.postgres",data:_})]);if(typeof p=="function")return s.call(this,g,E,function(k,P){x2([x,"optionalAccess",H=>H.finish,"call",H=>H()]),p(k,P)});if(typeof E=="function")return s.call(this,g,function(k,P){x2([x,"optionalAccess",H=>H.finish,"call",H=>H()]),E(k,P)});let O=typeof E<"u"?s.call(this,g,E):s.call(this,g);return W3.isThenable(O)?O.then(k=>(x2([x,"optionalAccess",P=>P.finish,"call",P=>P()]),k)):(x2([x,"optionalAccess",k=>k.finish,"call",k=>k()]),O)}})}};iK.__initStatic();jfA.Postgres=iK});var _2e=GA(WfA=>{var{_optionalChain:nK}=pd();Object.defineProperty(WfA,"__esModule",{value:!0});var Zk=wo(),ykt=Kw(),aK=class A{static __initStatic(){this.id="Mysql"}constructor(){this.name=A.id}loadDependency(){return this._module=this._module||Zk.loadModule("mysql/lib/Connection.js")}setupOnce(r,t){if(ykt.shouldDisableAutoInstrumentation(t)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Zk.logger.log("Mysql Integration is skipped because of instrumenter configuration.");return}let i=this.loadDependency();if(!i){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Zk.logger.error("Mysql Integration was unable to require `mysql` package.");return}let o;try{i.prototype.connect=new Proxy(i.prototype.connect,{apply(g,E,p){return o||(o=E.config),g.apply(E,p)}})}catch{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Zk.logger.error("Mysql Integration was unable to instrument `mysql` config.")}function s(){return o?{"server.address":o.host,"server.port":o.port,"db.user":o.user}:{}}Zk.fill(i,"createQuery",function(g){return function(E,p,B){let m=t().getScope(),_=nK([m,"optionalAccess",O=>O.getSpan,"call",O=>O()]),x=nK([_,"optionalAccess",O=>O.startChild,"call",O=>O({description:typeof E=="string"?E:E.sql,op:"db",origin:"auto.db.mysql",data:{...s(),"db.system":"mysql"}})]);return typeof B=="function"?g.call(this,E,p,function(O,k,P){nK([x,"optionalAccess",H=>H.finish,"call",H=>H()]),B(O,k,P)}):typeof p=="function"?g.call(this,E,function(O,k,P){nK([x,"optionalAccess",H=>H.finish,"call",H=>H()]),p(O,k,P)}):g.call(this,E,p,B)}})}};aK.__initStatic();WfA.Mysql=aK});var w2e=GA(JfA=>{var{_optionalChain:Xw}=pd();Object.defineProperty(JfA,"__esModule",{value:!0});var $k=wo(),Ckt=Kw(),Ikt=["aggregate","bulkWrite","countDocuments","createIndex","createIndexes","deleteMany","deleteOne","distinct","drop","dropIndex","dropIndexes","estimatedDocumentCount","find","findOne","findOneAndDelete","findOneAndReplace","findOneAndUpdate","indexes","indexExists","indexInformation","initializeOrderedBulkOp","insertMany","insertOne","isCapped","mapReduce","options","parallelCollectionScan","rename","replaceOne","stats","updateMany","updateOne"],bkt={bulkWrite:["operations"],countDocuments:["query"],createIndex:["fieldOrSpec"],createIndexes:["indexSpecs"],deleteMany:["filter"],deleteOne:["filter"],distinct:["key","query"],dropIndex:["indexName"],find:["query"],findOne:["query"],findOneAndDelete:["filter"],findOneAndReplace:["filter","replacement"],findOneAndUpdate:["filter","update"],indexExists:["indexes"],insertMany:["docs"],insertOne:["doc"],mapReduce:["map","reduce"],rename:["newName"],replaceOne:["filter","doc"],updateMany:["filter","update"],updateOne:["filter","update"]};function Okt(A){return A&&typeof A=="object"&&A.once&&typeof A.once=="function"}var oK=class A{static __initStatic(){this.id="Mongo"}constructor(r={}){this.name=A.id,this._operations=Array.isArray(r.operations)?r.operations:Ikt,this._describeOperations="describeOperations"in r?r.describeOperations:!0,this._useMongoose=!!r.useMongoose}loadDependency(){let r=this._useMongoose?"mongoose":"mongodb";return this._module=this._module||$k.loadModule(r)}setupOnce(r,t){if(Ckt.shouldDisableAutoInstrumentation(t)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&$k.logger.log("Mongo Integration is skipped because of instrumenter configuration.");return}let i=this.loadDependency();if(!i){let o=this._useMongoose?"mongoose":"mongodb";(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&$k.logger.error(`Mongo Integration was unable to require \`${o}\` package.`);return}this._instrumentOperations(i.Collection,this._operations,t)}_instrumentOperations(r,t,i){t.forEach(o=>this._patchOperation(r,o,i))}_patchOperation(r,t,i){if(!(t in r.prototype))return;let o=this._getSpanContextFromOperationArguments.bind(this);$k.fill(r.prototype,t,function(s){return function(...g){let E=g[g.length-1],p=i().getScope(),B=Xw([p,"optionalAccess",_=>_.getSpan,"call",_=>_()]);if(typeof E!="function"||t==="mapReduce"&&g.length===2){let _=Xw([B,"optionalAccess",O=>O.startChild,"call",O=>O(o(this,t,g))]),x=s.call(this,...g);if($k.isThenable(x))return x.then(O=>(Xw([_,"optionalAccess",k=>k.finish,"call",k=>k()]),O));if(Okt(x)){let O=x;try{O.once("close",()=>{Xw([_,"optionalAccess",k=>k.finish,"call",k=>k()])})}catch{Xw([_,"optionalAccess",P=>P.finish,"call",P=>P()])}return O}else return Xw([_,"optionalAccess",O=>O.finish,"call",O=>O()]),x}let m=Xw([B,"optionalAccess",_=>_.startChild,"call",_=>_(o(this,t,g.slice(0,-1)))]);return s.call(this,...g.slice(0,-1),function(_,x){Xw([m,"optionalAccess",O=>O.finish,"call",O=>O()]),E(_,x)})}})}_getSpanContextFromOperationArguments(r,t,i){let o={"db.system":"mongodb","db.name":r.dbName,"db.operation":t,"db.mongodb.collection":r.collectionName},s={op:"db",origin:"auto.db.mongo",description:t,data:o},g=bkt[t],E=Array.isArray(this._describeOperations)?this._describeOperations.includes(t):this._describeOperations;if(!g||!E)return s;try{if(t==="mapReduce"){let[p,B]=i;o[g[0]]=typeof p=="string"?p:p.name||"",o[g[1]]=typeof B=="string"?B:B.name||""}else for(let p=0;p{Object.defineProperty(qfA,"__esModule",{value:!0});var v2e=sg(),y2e=wo(),Mkt=Kw();function kkt(A){return!!A&&!!A.$use}var sK=class A{static __initStatic(){this.id="Prisma"}constructor(r={}){if(this.name=A.id,kkt(r.client)&&!r.client._sentryInstrumented){y2e.addNonEnumerableProperty(r.client,"_sentryInstrumented",!0);let t={};try{let i=r.client._engineConfig;if(i){let{activeProvider:o,clientVersion:s}=i;o&&(t["db.system"]=o),s&&(t["db.prisma.version"]=s)}}catch{}r.client.$use((i,o)=>{if(Mkt.shouldDisableAutoInstrumentation(v2e.getCurrentHub))return o(i);let s=i.action,g=i.model;return v2e.trace({name:g?`${g} ${s}`:s,op:"db.sql.prisma",origin:"auto.db.prisma",data:{...t,"db.operation":s}},()=>o(i))})}else(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&y2e.logger.warn("Unsupported Prisma client provided to PrismaIntegration. Provided client:",r.client)}setupOnce(){}};sK.__initStatic();qfA.Prisma=sK});var I2e=GA(VfA=>{var{_optionalChain:H2}=pd();Object.defineProperty(VfA,"__esModule",{value:!0});var Ax=wo(),xkt=Kw(),cK=class A{static __initStatic(){this.id="GraphQL"}constructor(){this.name=A.id}loadDependency(){return this._module=this._module||Ax.loadModule("graphql/execution/execute.js")}setupOnce(r,t){if(xkt.shouldDisableAutoInstrumentation(t)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Ax.logger.log("GraphQL Integration is skipped because of instrumenter configuration.");return}let i=this.loadDependency();if(!i){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Ax.logger.error("GraphQL Integration was unable to require graphql/execution package.");return}Ax.fill(i,"execute",function(o){return function(...s){let g=t().getScope(),E=H2([g,"optionalAccess",m=>m.getSpan,"call",m=>m()]),p=H2([E,"optionalAccess",m=>m.startChild,"call",m=>m({description:"execute",op:"graphql.execute",origin:"auto.graphql.graphql"})]);H2([g,"optionalAccess",m=>m.setSpan,"call",m=>m(p)]);let B=o.call(this,...s);return Ax.isThenable(B)?B.then(m=>(H2([p,"optionalAccess",_=>_.finish,"call",_=>_()]),H2([g,"optionalAccess",_=>_.setSpan,"call",_=>_(E)]),m)):(H2([p,"optionalAccess",m=>m.finish,"call",m=>m()]),H2([g,"optionalAccess",m=>m.setSpan,"call",m=>m(E)]),B)}})}};cK.__initStatic();VfA.GraphQL=cK});var O2e=GA(zfA=>{var{_optionalChain:lK}=pd();Object.defineProperty(zfA,"__esModule",{value:!0});var xf=wo(),Hkt=Kw(),uK=class A{static __initStatic(){this.id="Apollo"}constructor(r={useNestjs:!1}){this.name=A.id,this._useNest=!!r.useNestjs}loadDependency(){return this._useNest?this._module=this._module||xf.loadModule("@nestjs/graphql"):this._module=this._module||xf.loadModule("apollo-server-core"),this._module}setupOnce(r,t){if(Hkt.shouldDisableAutoInstrumentation(t)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&xf.logger.log("Apollo Integration is skipped because of instrumenter configuration.");return}if(this._useNest){let i=this.loadDependency();if(!i){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&xf.logger.error("Apollo-NestJS Integration was unable to require @nestjs/graphql package.");return}xf.fill(i.GraphQLFactory.prototype,"mergeWithSchema",function(o){return function(...s){return xf.fill(this.resolversExplorerService,"explore",function(g){return function(){let E=xf.arrayify(g.call(this));return b2e(E,t)}}),o.call(this,...s)}})}else{let i=this.loadDependency();if(!i){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&xf.logger.error("Apollo Integration was unable to require apollo-server-core package.");return}xf.fill(i.ApolloServerBase.prototype,"constructSchema",function(o){return function(){if(!this.config.resolvers)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&(this.config.schema?(xf.logger.warn("Apollo integration is not able to trace `ApolloServer` instances constructed via `schema` property.If you are using NestJS with Apollo, please use `Sentry.Integrations.Apollo({ useNestjs: true })` instead."),xf.logger.warn()):this.config.modules&&xf.logger.warn("Apollo integration is not able to trace `ApolloServer` instances constructed via `modules` property."),xf.logger.error("Skipping tracing as no resolvers found on the `ApolloServer` instance.")),o.call(this);let s=xf.arrayify(this.config.resolvers);return this.config.resolvers=b2e(s,t),o.call(this)}})}}};uK.__initStatic();function b2e(A,r){return A.map(t=>(Object.keys(t).forEach(i=>{Object.keys(t[i]).forEach(o=>{typeof t[i][o]=="function"&&Skt(t,i,o,r)})}),t))}function Skt(A,r,t,i){xf.fill(A[r],t,function(o){return function(...s){let g=i().getScope(),E=lK([g,"optionalAccess",m=>m.getSpan,"call",m=>m()]),p=lK([E,"optionalAccess",m=>m.startChild,"call",m=>m({description:`${r}.${t}`,op:"graphql.resolve",origin:"auto.graphql.apollo"})]),B=o.call(this,...s);return xf.isThenable(B)?B.then(m=>(lK([p,"optionalAccess",_=>_.finish,"call",_=>_()]),m)):(lK([p,"optionalAccess",m=>m.finish,"call",m=>m()]),B)}})}zfA.Apollo=uK});var M2e=GA((KfA,Zw)=>{Object.defineProperty(KfA,"__esModule",{value:!0});var S2=wo(),Fkt=[()=>{let A=S2.dynamicRequire(Zw,"./apollo");return new A.Apollo},()=>{let A=S2.dynamicRequire(Zw,"./apollo");return new A.Apollo({useNestjs:!0})},()=>{let A=S2.dynamicRequire(Zw,"./graphql");return new A.GraphQL},()=>{let A=S2.dynamicRequire(Zw,"./mongo");return new A.Mongo},()=>{let A=S2.dynamicRequire(Zw,"./mongo");return new A.Mongo({mongoose:!0})},()=>{let A=S2.dynamicRequire(Zw,"./mysql");return new A.Mysql},()=>{let A=S2.dynamicRequire(Zw,"./postgres");return new A.Postgres}];KfA.lazyLoadedNodePerformanceMonitoringIntegrations=Fkt});var gD=GA(XfA=>{Object.defineProperty(XfA,"__esModule",{value:!0});var Rkt=wo(),Tkt=Rkt.GLOBAL_OBJ;XfA.WINDOW=Tkt});var x2e=GA(ZfA=>{Object.defineProperty(ZfA,"__esModule",{value:!0});var Nkt=sg(),k2e=wo(),gK=gD();function Pkt(){gK.WINDOW&&gK.WINDOW.document?gK.WINDOW.document.addEventListener("visibilitychange",()=>{let A=Nkt.getActiveTransaction();if(gK.WINDOW.document.hidden&&A){let r="cancelled";(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&k2e.logger.log(`[Tracing] Transaction: ${r} -> since tab moved to the background, op: ${A.op}`),A.status||A.setStatus(r),A.setTag("visibilitychange","document.hidden"),A.finish()}}):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&k2e.logger.warn("[Tracing] Could not set up background tab detection due to lack of global document")}ZfA.registerBackgroundTabDetection=Pkt});var dK=GA($fA=>{Object.defineProperty($fA,"__esModule",{value:!0});var Gkt=(A,r,t)=>{let i,o;return s=>{r.value>=0&&(s||t)&&(o=r.value-(i||0),(o||i===void 0)&&(i=r.value,r.delta=o,A(r)))}};$fA.bindReporter=Gkt});var H2e=GA(ABA=>{Object.defineProperty(ABA,"__esModule",{value:!0});var Ykt=()=>`v3-${Date.now()}-${Math.floor(Math.random()*(9e12-1))+1e12}`;ABA.generateUniqueID=Ykt});var rBA=GA(eBA=>{Object.defineProperty(eBA,"__esModule",{value:!0});var ex=gD(),Ukt=()=>{let A=ex.WINDOW.performance.timing,r=ex.WINDOW.performance.navigation.type,t={entryType:"navigation",startTime:0,type:r==2?"back_forward":r===1?"reload":"navigate"};for(let i in A)i!=="navigationStart"&&i!=="toJSON"&&(t[i]=Math.max(A[i]-A.navigationStart,0));return t},Lkt=()=>ex.WINDOW.__WEB_VITALS_POLYFILL__?ex.WINDOW.performance&&(performance.getEntriesByType&&performance.getEntriesByType("navigation")[0]||Ukt()):ex.WINDOW.performance&&performance.getEntriesByType&&performance.getEntriesByType("navigation")[0];eBA.getNavigationEntry=Lkt});var iBA=GA(tBA=>{Object.defineProperty(tBA,"__esModule",{value:!0});var jkt=rBA(),Wkt=()=>{let A=jkt.getNavigationEntry();return A&&A.activationStart||0};tBA.getActivationStart=Wkt});var pK=GA(nBA=>{Object.defineProperty(nBA,"__esModule",{value:!0});var Jkt=gD(),qkt=H2e(),Vkt=iBA(),zkt=rBA(),Kkt=(A,r)=>{let t=zkt.getNavigationEntry(),i="navigate";return t&&(Jkt.WINDOW.document.prerendering||Vkt.getActivationStart()>0?i="prerender":i=t.type.replace(/_/g,"-")),{name:A,value:typeof r>"u"?-1:r,rating:"good",delta:0,entries:[],id:qkt.generateUniqueID(),navigationType:i}};nBA.initMetric=Kkt});var rx=GA(aBA=>{Object.defineProperty(aBA,"__esModule",{value:!0});var Xkt=(A,r,t)=>{try{if(PerformanceObserver.supportedEntryTypes.includes(A)){let i=new PerformanceObserver(o=>{r(o.getEntries())});return i.observe(Object.assign({type:A,buffered:!0},t||{})),i}}catch{}};aBA.observe=Xkt});var tx=GA(oBA=>{Object.defineProperty(oBA,"__esModule",{value:!0});var Zkt=gD(),$kt=(A,r)=>{let t=i=>{(i.type==="pagehide"||Zkt.WINDOW.document.visibilityState==="hidden")&&(A(i),r&&(removeEventListener("visibilitychange",t,!0),removeEventListener("pagehide",t,!0)))};addEventListener("visibilitychange",t,!0),addEventListener("pagehide",t,!0)};oBA.onHidden=$kt});var S2e=GA(sBA=>{Object.defineProperty(sBA,"__esModule",{value:!0});var Axt=dK(),ext=pK(),rxt=rx(),txt=tx(),ixt=A=>{let r=ext.initMetric("CLS",0),t,i=0,o=[],s=E=>{E.forEach(p=>{if(!p.hadRecentInput){let B=o[0],m=o[o.length-1];i&&o.length!==0&&p.startTime-m.startTime<1e3&&p.startTime-B.startTime<5e3?(i+=p.value,o.push(p)):(i=p.value,o=[p]),i>r.value&&(r.value=i,r.entries=o,t&&t())}})},g=rxt.observe("layout-shift",s);if(g){t=Axt.bindReporter(A,r);let E=()=>{s(g.takeRecords()),t(!0)};return txt.onHidden(E),E}};sBA.onCLS=ixt});var fK=GA(cBA=>{Object.defineProperty(cBA,"__esModule",{value:!0});var F2e=gD(),nxt=tx(),EK=-1,axt=()=>F2e.WINDOW.document.visibilityState==="hidden"&&!F2e.WINDOW.document.prerendering?0:1/0,oxt=()=>{nxt.onHidden(({timeStamp:A})=>{EK=A},!0)},sxt=()=>(EK<0&&(EK=axt(),oxt()),{get firstHiddenTime(){return EK}});cBA.getVisibilityWatcher=sxt});var R2e=GA(lBA=>{Object.defineProperty(lBA,"__esModule",{value:!0});var cxt=dK(),lxt=fK(),uxt=pK(),gxt=rx(),dxt=tx(),pxt=A=>{let r=lxt.getVisibilityWatcher(),t=uxt.initMetric("FID"),i,o=E=>{E.startTime{E.forEach(o)},g=gxt.observe("first-input",s);i=cxt.bindReporter(A,t),g&&dxt.onHidden(()=>{s(g.takeRecords()),g.disconnect()},!0)};lBA.onFID=pxt});var N2e=GA(uBA=>{Object.defineProperty(uBA,"__esModule",{value:!0});var Ext=dK(),fxt=iBA(),Bxt=fK(),hxt=pK(),Qxt=rx(),mxt=tx(),T2e={},Dxt=A=>{let r=Bxt.getVisibilityWatcher(),t=hxt.initMetric("LCP"),i,o=g=>{let E=g[g.length-1];if(E){let p=Math.max(E.startTime-fxt.getActivationStart(),0);p{T2e[t.id]||(o(s.takeRecords()),s.disconnect(),T2e[t.id]=!0,i(!0))};return["keydown","click"].forEach(E=>{addEventListener(E,g,{once:!0,capture:!0})}),mxt.onHidden(g,!0),g}};uBA.onLCP=Dxt});var P2e=GA(BK=>{Object.defineProperty(BK,"__esModule",{value:!0});function _xt(A){return typeof A=="number"&&isFinite(A)}function wxt(A,{startTimestamp:r,...t}){return r&&A.startTimestamp>r&&(A.startTimestamp=r),A.startChild({startTimestamp:r,...t})}BK._startChild=wxt;BK.isMeasurementValue=_xt});var J2e=GA($w=>{Object.defineProperty($w,"__esModule",{value:!0});var Y2e=sg(),Qp=wo(),F2=gD(),vxt=S2e(),yxt=R2e(),Cxt=N2e(),Ixt=fK(),U2e=rx(),dD=P2e();function mp(A){return A/1e3}function L2e(){return F2.WINDOW&&F2.WINDOW.addEventListener&&F2.WINDOW.performance}var G2e=0,Xg={},b1,ix;function bxt(){let A=L2e();if(A&&Qp.browserPerformanceTimeOrigin){A.mark&&F2.WINDOW.performance.mark("sentry-tracing-init"),Hxt();let r=kxt(),t=xxt();return()=>{r&&r(),t&&t()}}return()=>{}}function Oxt(){let A=r=>{for(let t of r){let i=Y2e.getActiveTransaction();if(!i)return;let o=mp(Qp.browserPerformanceTimeOrigin+t.startTime),s=mp(t.duration);i.startChild({description:"Main UI thread blocked",op:"ui.long-task",origin:"auto.ui.browser.metrics",startTimestamp:o,endTimestamp:o+s})}};U2e.observe("longtask",A)}function Mxt(){let A=r=>{for(let t of r){let i=Y2e.getActiveTransaction();if(!i)return;if(t.name==="click"){let o=mp(Qp.browserPerformanceTimeOrigin+t.startTime),s=mp(t.duration);i.startChild({description:Qp.htmlTreeAsString(t.target),op:`ui.interaction.${t.name}`,origin:"auto.ui.browser.metrics",startTimestamp:o,endTimestamp:o+s})}}};U2e.observe("event",A,{durationThreshold:0})}function kxt(){return vxt.onCLS(A=>{let r=A.entries.pop();r&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qp.logger.log("[Measurements] Adding CLS"),Xg.cls={value:A.value,unit:""},ix=r)})}function xxt(){return Cxt.onLCP(A=>{let r=A.entries.pop();r&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qp.logger.log("[Measurements] Adding LCP"),Xg.lcp={value:A.value,unit:"millisecond"},b1=r)})}function Hxt(){yxt.onFID(A=>{let r=A.entries.pop();if(!r)return;let t=mp(Qp.browserPerformanceTimeOrigin),i=mp(r.startTime);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qp.logger.log("[Measurements] Adding FID"),Xg.fid={value:A.value,unit:"millisecond"},Xg["mark.fid"]={value:t+i,unit:"second"}})}function Sxt(A){let r=L2e();if(!r||!F2.WINDOW.performance.getEntries||!Qp.browserPerformanceTimeOrigin)return;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qp.logger.log("[Tracing] Adding & adjusting spans using Performance API");let t=mp(Qp.browserPerformanceTimeOrigin),i=r.getEntries(),o,s;if(i.slice(G2e).forEach(g=>{let E=mp(g.startTime),p=mp(g.duration);if(!(A.op==="navigation"&&t+E"u"||__SENTRY_DEBUG__)&&Qp.logger.log("[Measurements] Adding FP"),Xg.fp={value:g.startTime,unit:"millisecond"}),g.name==="first-contentful-paint"&&m&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qp.logger.log("[Measurements] Adding FCP"),Xg.fcp={value:g.startTime,unit:"millisecond"});break}case"resource":{let B=g.name.replace(F2.WINDOW.location.origin,"");W2e(A,g,B,E,p,t);break}}}),G2e=Math.max(i.length-1,0),Txt(A),A.op==="pageload"){typeof o=="number"&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qp.logger.log("[Measurements] Adding TTFB"),Xg.ttfb={value:(o-A.startTimestamp)*1e3,unit:"millisecond"},typeof s=="number"&&s<=o&&(Xg["ttfb.requestTime"]={value:(o-s)*1e3,unit:"millisecond"})),["fcp","fp","lcp"].forEach(E=>{if(!Xg[E]||t>=A.startTimestamp)return;let p=Xg[E].value,B=t+mp(p),m=Math.abs((B-A.startTimestamp)*1e3),_=m-p;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qp.logger.log(`[Measurements] Normalized ${E} from ${p} to ${m} (${_})`),Xg[E].value=m});let g=Xg["mark.fid"];g&&Xg.fid&&(dD._startChild(A,{description:"first input delay",endTimestamp:g.value+mp(Xg.fid.value),op:"ui.action",origin:"auto.ui.browser.metrics",startTimestamp:g.value}),delete Xg["mark.fid"]),"fcp"in Xg||delete Xg.cls,Object.keys(Xg).forEach(E=>{A.setMeasurement(E,Xg[E].value,Xg[E].unit)}),Nxt(A)}b1=void 0,ix=void 0,Xg={}}function j2e(A,r,t,i,o){let s=o+t,g=s+i;return dD._startChild(A,{description:r.name,endTimestamp:g,op:r.entryType,origin:"auto.resource.browser.metrics",startTimestamp:s}),s}function Fxt(A,r,t){["unloadEvent","redirect","domContentLoadedEvent","loadEvent","connect"].forEach(i=>{hK(A,r,i,t)}),hK(A,r,"secureConnection",t,"TLS/SSL","connectEnd"),hK(A,r,"fetch",t,"cache","domainLookupStart"),hK(A,r,"domainLookup",t,"DNS"),Rxt(A,r,t)}function hK(A,r,t,i,o,s){let g=s?r[s]:r[`${t}End`],E=r[`${t}Start`];!E||!g||dD._startChild(A,{op:"browser",origin:"auto.browser.browser.metrics",description:o||t,startTimestamp:i+mp(E),endTimestamp:i+mp(g)})}function Rxt(A,r,t){dD._startChild(A,{op:"browser",origin:"auto.browser.browser.metrics",description:"request",startTimestamp:t+mp(r.requestStart),endTimestamp:t+mp(r.responseEnd)}),dD._startChild(A,{op:"browser",origin:"auto.browser.browser.metrics",description:"response",startTimestamp:t+mp(r.responseStart),endTimestamp:t+mp(r.responseEnd)})}function W2e(A,r,t,i,o,s){if(r.initiatorType==="xmlhttprequest"||r.initiatorType==="fetch")return;let g={};"transferSize"in r&&(g["http.response_transfer_size"]=r.transferSize),"encodedBodySize"in r&&(g["http.response_content_length"]=r.encodedBodySize),"decodedBodySize"in r&&(g["http.decoded_response_content_length"]=r.decodedBodySize),"renderBlockingStatus"in r&&(g["resource.render_blocking_status"]=r.renderBlockingStatus);let E=s+i,p=E+o;dD._startChild(A,{description:t,endTimestamp:p,op:r.initiatorType?`resource.${r.initiatorType}`:"resource.other",origin:"auto.resource.browser.metrics",startTimestamp:E,data:g})}function Txt(A){let r=F2.WINDOW.navigator;if(!r)return;let t=r.connection;t&&(t.effectiveType&&A.setTag("effectiveConnectionType",t.effectiveType),t.type&&A.setTag("connectionType",t.type),dD.isMeasurementValue(t.rtt)&&(Xg["connection.rtt"]={value:t.rtt,unit:"millisecond"})),dD.isMeasurementValue(r.deviceMemory)&&A.setTag("deviceMemory",`${r.deviceMemory} GB`),dD.isMeasurementValue(r.hardwareConcurrency)&&A.setTag("hardwareConcurrency",String(r.hardwareConcurrency))}function Nxt(A){b1&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qp.logger.log("[Measurements] Adding LCP Data"),b1.element&&A.setTag("lcp.element",Qp.htmlTreeAsString(b1.element)),b1.id&&A.setTag("lcp.id",b1.id),b1.url&&A.setTag("lcp.url",b1.url.trim().slice(0,200)),A.setTag("lcp.size",b1.size)),ix&&ix.sources&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Qp.logger.log("[Measurements] Adding CLS Data"),ix.sources.forEach((r,t)=>A.setTag(`cls.source.${t+1}`,Qp.htmlTreeAsString(r.node))))}$w._addMeasureSpans=j2e;$w._addResourceSpans=W2e;$w.addPerformanceEntries=Sxt;$w.startTrackingInteractions=Mxt;$w.startTrackingLongTasks=Oxt;$w.startTrackingWebVitals=bxt});var dBA=GA(M1=>{Object.defineProperty(M1,"__esModule",{value:!0});var J3=sg(),Hf=wo(),QK=["localhost",/^\/(?!\/)/],gBA={traceFetch:!0,traceXHR:!0,enableHTTPTimings:!0,tracingOrigins:QK,tracePropagationTargets:QK};function Pxt(A){let{traceFetch:r,traceXHR:t,tracePropagationTargets:i,tracingOrigins:o,shouldCreateSpanForRequest:s,enableHTTPTimings:g}={traceFetch:gBA.traceFetch,traceXHR:gBA.traceXHR,...A},E=typeof s=="function"?s:m=>!0,p=m=>K2e(m,i||o),B={};r&&Hf.addInstrumentationHandler("fetch",m=>{let _=X2e(m,E,p,B);g&&_&&q2e(_)}),t&&Hf.addInstrumentationHandler("xhr",m=>{let _=$2e(m,E,p,B);g&&_&&q2e(_)})}function Gxt(A){return A.entryType==="resource"&&"initiatorType"in A&&typeof A.nextHopProtocol=="string"&&(A.initiatorType==="fetch"||A.initiatorType==="xmlhttprequest")}function q2e(A){let r=A.data.url,t=new PerformanceObserver(i=>{i.getEntries().forEach(s=>{Gxt(s)&&s.name.endsWith(r)&&(Yxt(s).forEach(E=>A.setData(...E)),t.disconnect())})});t.observe({entryTypes:["resource"]})}function z2e(A){let r="unknown",t="unknown",i="";for(let o of A){if(o==="/"){[r,t]=A.split("/");break}if(!isNaN(Number(o))){r=i==="h"?"http":i,t=A.split(i)[1];break}i+=o}return i===A&&(r=i),{name:r,version:t}}function O1(A=0){return((Hf.browserPerformanceTimeOrigin||performance.timeOrigin)+A)/1e3}function Yxt(A){let{name:r,version:t}=z2e(A.nextHopProtocol),i=[];return i.push(["network.protocol.version",t],["network.protocol.name",r]),Hf.browserPerformanceTimeOrigin?[...i,["http.request.redirect_start",O1(A.redirectStart)],["http.request.fetch_start",O1(A.fetchStart)],["http.request.domain_lookup_start",O1(A.domainLookupStart)],["http.request.domain_lookup_end",O1(A.domainLookupEnd)],["http.request.connect_start",O1(A.connectStart)],["http.request.secure_connection_start",O1(A.secureConnectionStart)],["http.request.connection_end",O1(A.connectEnd)],["http.request.request_start",O1(A.requestStart)],["http.request.response_start",O1(A.responseStart)],["http.request.response_end",O1(A.responseEnd)]]:i}function K2e(A,r){return Hf.stringMatchesSomePattern(A,r||QK)}function X2e(A,r,t,i){if(!J3.hasTracingEnabled()||!A.fetchData)return;let o=r(A.fetchData.url);if(A.endTimestamp&&o){let x=A.fetchData.__span;if(!x)return;let O=i[x];if(O){if(A.response){O.setHttpStatus(A.response.status);let k=A.response&&A.response.headers&&A.response.headers.get("content-length"),P=parseInt(k);P>0&&O.setData("http.response_content_length",P)}else A.error&&O.setStatus("internal_error");O.finish(),delete i[x]}return}let s=J3.getCurrentHub(),g=s.getScope(),E=s.getClient(),p=g.getSpan(),{method:B,url:m}=A.fetchData,_=o&&p?p.startChild({data:{url:m,type:"fetch","http.method":B},description:`${B} ${m}`,op:"http.client",origin:"auto.http.browser"}):void 0;if(_&&(A.fetchData.__span=_.spanId,i[_.spanId]=_),t(A.fetchData.url)&&E){let x=A.args[0];A.args[1]=A.args[1]||{};let O=A.args[1];O.headers=Z2e(x,E,g,O,_)}return _}function Z2e(A,r,t,i,o){let s=o||t.getSpan(),g=s&&s.transaction,{traceId:E,sampled:p,dsc:B}=t.getPropagationContext(),m=s?s.toTraceparent():Hf.generateSentryTraceHeader(E,void 0,p),_=g?g.getDynamicSamplingContext():B||J3.getDynamicSamplingContextFromClient(E,r,t),x=Hf.dynamicSamplingContextToSentryBaggageHeader(_),O=typeof Request<"u"&&Hf.isInstanceOf(A,Request)?A.headers:i.headers;if(O)if(typeof Headers<"u"&&Hf.isInstanceOf(O,Headers)){let k=new Headers(O);return k.append("sentry-trace",m),x&&k.append(Hf.BAGGAGE_HEADER_NAME,x),k}else if(Array.isArray(O)){let k=[...O,["sentry-trace",m]];return x&&k.push([Hf.BAGGAGE_HEADER_NAME,x]),k}else{let k="baggage"in O?O.baggage:void 0,P=[];return Array.isArray(k)?P.push(...k):k&&P.push(k),x&&P.push(x),{...O,"sentry-trace":m,baggage:P.length>0?P.join(","):void 0}}else return{"sentry-trace":m,baggage:x}}function $2e(A,r,t,i){let o=A.xhr,s=o&&o[Hf.SENTRY_XHR_DATA_KEY];if(!J3.hasTracingEnabled()||o&&o.__sentry_own_request__||!o||!s)return;let g=r(s.url);if(A.endTimestamp&&g){let _=o.__sentry_xhr_span_id__;if(!_)return;let x=i[_];x&&(x.setHttpStatus(s.status_code),x.finish(),delete i[_]);return}let E=J3.getCurrentHub(),p=E.getScope(),B=p.getSpan(),m=g&&B?B.startChild({data:{...s.data,type:"xhr","http.method":s.method,url:s.url},description:`${s.method} ${s.url}`,op:"http.client",origin:"auto.http.browser"}):void 0;if(m&&(o.__sentry_xhr_span_id__=m.spanId,i[o.__sentry_xhr_span_id__]=m),o.setRequestHeader&&t(s.url))if(m){let _=m&&m.transaction,x=_&&_.getDynamicSamplingContext(),O=Hf.dynamicSamplingContextToSentryBaggageHeader(x);V2e(o,m.toTraceparent(),O)}else{let _=E.getClient(),{traceId:x,sampled:O,dsc:k}=p.getPropagationContext(),P=Hf.generateSentryTraceHeader(x,void 0,O),H=k||(_?J3.getDynamicSamplingContextFromClient(x,_,p):void 0),T=Hf.dynamicSamplingContextToSentryBaggageHeader(H);V2e(o,P,T)}return m}function V2e(A,r,t){try{A.setRequestHeader("sentry-trace",r),t&&A.setRequestHeader(Hf.BAGGAGE_HEADER_NAME,t)}catch{}}M1.DEFAULT_TRACE_PROPAGATION_TARGETS=QK;M1.addTracingHeadersToFetchRequest=Z2e;M1.defaultRequestInstrumentationOptions=gBA;M1.extractNetworkProtocol=z2e;M1.fetchCallback=X2e;M1.instrumentOutgoingRequests=Pxt;M1.shouldAttachHeaders=K2e;M1.xhrCallback=$2e});var ACe=GA(pBA=>{Object.defineProperty(pBA,"__esModule",{value:!0});var nx=wo(),ax=gD();function Uxt(A,r=!0,t=!0){if(!ax.WINDOW||!ax.WINDOW.location){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&nx.logger.warn("Could not initialize routing instrumentation due to invalid location");return}let i=ax.WINDOW.location.href,o;r&&(o=A({name:ax.WINDOW.location.pathname,startTimestamp:nx.browserPerformanceTimeOrigin?nx.browserPerformanceTimeOrigin/1e3:void 0,op:"pageload",origin:"auto.pageload.browser",metadata:{source:"url"}})),t&&nx.addInstrumentationHandler("history",({to:s,from:g})=>{if(g===void 0&&i&&i.indexOf(s)!==-1){i=void 0;return}g!==s&&(i=void 0,o&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&nx.logger.log(`[Tracing] Finishing current transaction with op: ${o.op}`),o.finish()),o=A({name:ax.WINDOW.location.pathname,op:"navigation",origin:"auto.navigation.browser",metadata:{source:"url"}}))})}pBA.instrumentRoutingWithDefaults=Uxt});var iCe=GA(sx=>{Object.defineProperty(sx,"__esModule",{value:!0});var ox=sg(),pD=wo(),Lxt=x2e(),mK=J2e(),rCe=dBA(),jxt=ACe(),eCe=gD(),tCe="BrowserTracing",Wxt={...ox.TRACING_DEFAULTS,markBackgroundTransactions:!0,routingInstrumentation:jxt.instrumentRoutingWithDefaults,startTransactionOnLocationChange:!0,startTransactionOnPageLoad:!0,enableLongTask:!0,_experiments:{},...rCe.defaultRequestInstrumentationOptions},EBA=class{constructor(r){this.name=tCe,this._hasSetTracePropagationTargets=!1,ox.addTracingExtensions(),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&(this._hasSetTracePropagationTargets=!!(r&&(r.tracePropagationTargets||r.tracingOrigins))),this.options={...Wxt,...r},this.options._experiments.enableLongTask!==void 0&&(this.options.enableLongTask=this.options._experiments.enableLongTask),r&&!r.tracePropagationTargets&&r.tracingOrigins&&(this.options.tracePropagationTargets=r.tracingOrigins),this._collectWebVitals=mK.startTrackingWebVitals(),this.options.enableLongTask&&mK.startTrackingLongTasks(),this.options._experiments.enableInteractions&&mK.startTrackingInteractions()}setupOnce(r,t){this._getCurrentHub=t;let o=t().getClient(),s=o&&o.getOptions(),{routingInstrumentation:g,startTransactionOnLocationChange:E,startTransactionOnPageLoad:p,markBackgroundTransactions:B,traceFetch:m,traceXHR:_,shouldCreateSpanForRequest:x,enableHTTPTimings:O,_experiments:k}=this.options,P=s&&s.tracePropagationTargets,H=P||this.options.tracePropagationTargets;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&this._hasSetTracePropagationTargets&&P&&pD.logger.warn("[Tracing] The `tracePropagationTargets` option was set in the BrowserTracing integration and top level `Sentry.init`. The top level `Sentry.init` value is being used."),g(T=>{let v=this._createRouteTransaction(T);return this.options._experiments.onStartRouteTransaction&&this.options._experiments.onStartRouteTransaction(v,T,t),v},p,E),B&&Lxt.registerBackgroundTabDetection(),k.enableInteractions&&this._registerInteractionListener(),rCe.instrumentOutgoingRequests({traceFetch:m,traceXHR:_,tracePropagationTargets:H,shouldCreateSpanForRequest:x,enableHTTPTimings:O})}_createRouteTransaction(r){if(!this._getCurrentHub){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&pD.logger.warn(`[Tracing] Did not create ${r.op} transaction because _getCurrentHub is invalid.`);return}let t=this._getCurrentHub(),{beforeNavigate:i,idleTimeout:o,finalTimeout:s,heartbeatInterval:g}=this.options,E=r.op==="pageload",p=E?fBA("sentry-trace"):"",B=E?fBA("baggage"):"",{traceparentData:m,dynamicSamplingContext:_,propagationContext:x}=pD.tracingContextFromHeaders(p,B),O={...r,...m,metadata:{...r.metadata,dynamicSamplingContext:m&&!_?{}:_},trimEnd:!0},k=typeof i=="function"?i(O):O,P=k===void 0?{...O,sampled:!1}:k;P.metadata=P.name!==O.name?{...P.metadata,source:"custom"}:P.metadata,this._latestRouteName=P.name,this._latestRouteSource=P.metadata&&P.metadata.source,P.sampled===!1&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&pD.logger.log(`[Tracing] Will not send ${P.op} transaction because of beforeNavigate.`),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&pD.logger.log(`[Tracing] Starting ${P.op} transaction on scope`);let{location:H}=eCe.WINDOW,T=ox.startIdleTransaction(t,P,o,s,!0,{location:H},g),v=t.getScope();return E&&m?v.setPropagationContext(x):v.setPropagationContext({traceId:T.traceId,spanId:T.spanId,parentSpanId:T.parentSpanId,sampled:T.sampled}),T.registerBeforeFinishCallback(F=>{this._collectWebVitals(),mK.addPerformanceEntries(F)}),T}_registerInteractionListener(){let r,t=()=>{let{idleTimeout:i,finalTimeout:o,heartbeatInterval:s}=this.options,g="ui.action.click",E=ox.getActiveTransaction();if(E&&E.op&&["navigation","pageload"].includes(E.op)){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&pD.logger.warn(`[Tracing] Did not create ${g} transaction because a pageload or navigation transaction is in progress.`);return}if(r&&(r.setFinishReason("interactionInterrupted"),r.finish(),r=void 0),!this._getCurrentHub){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&pD.logger.warn(`[Tracing] Did not create ${g} transaction because _getCurrentHub is invalid.`);return}if(!this._latestRouteName){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&pD.logger.warn(`[Tracing] Did not create ${g} transaction because _latestRouteName is missing.`);return}let p=this._getCurrentHub(),{location:B}=eCe.WINDOW,m={name:this._latestRouteName,op:g,trimEnd:!0,metadata:{source:this._latestRouteSource||"url"}};r=ox.startIdleTransaction(p,m,i,o,!0,{location:B},s)};["click"].forEach(i=>{addEventListener(i,t,{once:!1,capture:!0})})}};function fBA(A){let r=pD.getDomElement(`meta[name=${A}]`);return r?r.getAttribute("content"):void 0}sx.BROWSER_TRACING_INTEGRATION_ID=tCe;sx.BrowserTracing=EBA;sx.getMetaContent=fBA});var aCe=GA((BBA,cx)=>{Object.defineProperty(BBA,"__esModule",{value:!0});var nCe=sg(),q3=wo();function Jxt(){let A=nCe.getMainCarrier();if(!A.__SENTRY__)return;let r={mongodb(){let i=q3.dynamicRequire(cx,"./node/integrations/mongo");return new i.Mongo},mongoose(){let i=q3.dynamicRequire(cx,"./node/integrations/mongo");return new i.Mongo},mysql(){let i=q3.dynamicRequire(cx,"./node/integrations/mysql");return new i.Mysql},pg(){let i=q3.dynamicRequire(cx,"./node/integrations/postgres");return new i.Postgres}},t=Object.keys(r).filter(i=>!!q3.loadModule(i)).map(i=>{try{return r[i]()}catch{return}}).filter(i=>i);t.length>0&&(A.__SENTRY__.integrations=[...A.__SENTRY__.integrations||[],...t])}function qxt(){nCe.addTracingExtensions(),q3.isNodeEnv()&&Jxt()}BBA.addExtensionMethods=qxt});var QBA=GA(wu=>{Object.defineProperty(wu,"__esModule",{value:!0});var ED=sg(),oCe=wo(),Vxt=m2e(),zxt=D2e(),Kxt=_2e(),Xxt=w2e(),Zxt=C2e(),$xt=I2e(),A9t=O2e(),e9t=M2e(),sCe=iCe(),hBA=dBA(),r9t=aCe();wu.IdleTransaction=ED.IdleTransaction;wu.Span=ED.Span;wu.SpanStatus=ED.SpanStatus;wu.Transaction=ED.Transaction;wu.extractTraceparentData=ED.extractTraceparentData;wu.getActiveTransaction=ED.getActiveTransaction;wu.hasTracingEnabled=ED.hasTracingEnabled;wu.spanStatusfromHttpCode=ED.spanStatusfromHttpCode;wu.startIdleTransaction=ED.startIdleTransaction;wu.TRACEPARENT_REGEXP=oCe.TRACEPARENT_REGEXP;wu.stripUrlQueryAndFragment=oCe.stripUrlQueryAndFragment;wu.Express=Vxt.Express;wu.Postgres=zxt.Postgres;wu.Mysql=Kxt.Mysql;wu.Mongo=Xxt.Mongo;wu.Prisma=Zxt.Prisma;wu.GraphQL=$xt.GraphQL;wu.Apollo=A9t.Apollo;wu.lazyLoadedNodePerformanceMonitoringIntegrations=e9t.lazyLoadedNodePerformanceMonitoringIntegrations;wu.BROWSER_TRACING_INTEGRATION_ID=sCe.BROWSER_TRACING_INTEGRATION_ID;wu.BrowserTracing=sCe.BrowserTracing;wu.addTracingHeadersToFetchRequest=hBA.addTracingHeadersToFetchRequest;wu.defaultRequestInstrumentationOptions=hBA.defaultRequestInstrumentationOptions;wu.instrumentOutgoingRequests=hBA.instrumentOutgoingRequests;wu.addExtensionMethods=r9t.addExtensionMethods});var cCe=GA(mBA=>{Object.defineProperty(mBA,"__esModule",{value:!0});var t9t=QBA(),i9t=wo();function n9t(){let A=t9t.lazyLoadedNodePerformanceMonitoringIntegrations.map(r=>{try{return r()}catch{return}}).filter(r=>!!r);return A.length===0&&i9t.logger.warn("Performance monitoring integrations could not be automatically loaded."),A.filter(r=>!!r.loadDependency())}mBA.autoDiscoverNodePerformanceMonitoringIntegrations=n9t});var _BA=GA(z3=>{Object.defineProperty(z3,"__esModule",{value:!0});var a9t=sg(),V3=wo();function DBA(A,r){return A(r.stack||"",1)}function lCe(A,r){let t={type:r.name||r.constructor.name,value:r.message},i=DBA(A,r);return i.length&&(t.stacktrace={frames:i}),t}function o9t(A,r,t){let i=r,s=t&&t.data&&t.data.mechanism||{handled:!0,type:"generic"};if(!V3.isError(r)){if(V3.isPlainObject(r)){let E=`Non-Error exception captured with keys: ${V3.extractExceptionKeysForMessage(r)}`,p=a9t.getCurrentHub(),B=p.getClient(),m=B&&B.getOptions().normalizeDepth;p.configureScope(_=>{_.setExtra("__serialized__",V3.normalizeToSize(r,m))}),i=t&&t.syntheticException||new Error(E),i.message=E}else i=t&&t.syntheticException||new Error(r),i.message=r;s.synthetic=!0}let g={exception:{values:[lCe(A,i)]}};return V3.addExceptionTypeValue(g,void 0,void 0),V3.addExceptionMechanism(g,s),{...g,event_id:t&&t.event_id}}function s9t(A,r,t="info",i,o){let s={event_id:i&&i.event_id,level:t,message:r};if(o&&i&&i.syntheticException){let g=DBA(A,i.syntheticException);g.length&&(s.exception={values:[{value:r,stacktrace:{frames:g}}]})}return s}z3.eventFromMessage=s9t;z3.eventFromUnknownInput=o9t;z3.exceptionFromError=lCe;z3.parseStackFrames=DBA});var yBA=GA(vBA=>{var{_optionalChain:DK}=pd();Object.defineProperty(vBA,"__esModule",{value:!0});var R2=sg(),T2=wo(),c9t=require("os"),l9t=require("util"),uCe=_BA(),wBA=class extends R2.BaseClient{constructor(r){r._metadata=r._metadata||{},r._metadata.sdk=r._metadata.sdk||{name:"sentry.javascript.node",packages:[{name:"npm:@sentry/node",version:R2.SDK_VERSION}],version:R2.SDK_VERSION},r.transportOptions={textEncoder:new l9t.TextEncoder,...r.transportOptions},R2.addTracingExtensions(),super(r)}captureException(r,t,i){if(this._options.autoSessionTracking&&this._sessionFlusher&&i){let o=i.getRequestSession();o&&o.status==="ok"&&(o.status="errored")}return super.captureException(r,t,i)}captureEvent(r,t,i){if(this._options.autoSessionTracking&&this._sessionFlusher&&i&&(r.type||"exception")==="exception"&&r.exception&&r.exception.values&&r.exception.values.length>0){let g=i.getRequestSession();g&&g.status==="ok"&&(g.status="errored")}return super.captureEvent(r,t,i)}close(r){return DK([this,"access",t=>t._sessionFlusher,"optionalAccess",t=>t.close,"call",t=>t()]),super.close(r)}initSessionFlusher(){let{release:r,environment:t}=this._options;r?this._sessionFlusher=new R2.SessionFlusher(this,{release:r,environment:t}):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&T2.logger.warn("Cannot initialise an instance of SessionFlusher if no release is provided!")}eventFromException(r,t){return T2.resolvedSyncPromise(uCe.eventFromUnknownInput(this._options.stackParser,r,t))}eventFromMessage(r,t="info",i){return T2.resolvedSyncPromise(uCe.eventFromMessage(this._options.stackParser,r,t,i,this._options.attachStacktrace))}captureCheckIn(r,t,i){let o=r.status!=="in_progress"&&r.checkInId?r.checkInId:T2.uuid4();if(!this._isEnabled())return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&T2.logger.warn("SDK not enabled, will not capture checkin."),o;let s=this.getOptions(),{release:g,environment:E,tunnel:p}=s,B={check_in_id:o,monitor_slug:r.monitorSlug,status:r.status,release:g,environment:E};r.status!=="in_progress"&&(B.duration=r.duration),t&&(B.monitor_config={schedule:t.schedule,checkin_margin:t.checkinMargin,max_runtime:t.maxRuntime,timezone:t.timezone});let[m,_]=this._getTraceInfoFromScope(i);_&&(B.contexts={trace:_});let x=R2.createCheckInEnvelope(B,m,this.getSdkMetadata(),p,this.getDsn());return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&T2.logger.info("Sending checkin:",r.monitorSlug,r.status),this._sendEnvelope(x),o}_prepareEvent(r,t,i){return r.platform=r.platform||"node",r.contexts={...r.contexts,runtime:DK([r,"access",o=>o.contexts,"optionalAccess",o=>o.runtime])||{name:"node",version:global.process.version}},r.server_name=r.server_name||this.getOptions().serverName||global.process.env.SENTRY_NAME||c9t.hostname(),super._prepareEvent(r,t,i)}_captureRequestSession(){this._sessionFlusher?this._sessionFlusher.incrementSessionStatusCount():(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&T2.logger.warn("Discarded request mode session because autoSessionTracking option was disabled")}_getTraceInfoFromScope(r){if(!r)return[void 0,void 0];let t=r.getSpan();if(t)return[DK([t,"optionalAccess",p=>p.transaction,"optionalAccess",p=>p.getDynamicSamplingContext,"call",p=>p()]),DK([t,"optionalAccess",p=>p.getTraceContext,"call",p=>p()])];let{traceId:i,spanId:o,parentSpanId:s,dsc:g}=r.getPropagationContext(),E={trace_id:i,span_id:o,parent_span_id:s};return g?[g,E]:[R2.getDynamicSamplingContextFromClient(i,this,r),E]}};vBA.NodeClient=wBA});var gCe=GA(CBA=>{"use strict";Object.defineProperty(CBA,"__esModule",{value:!0});function u9t(A){return function(r,t){return new Promise((i,o)=>{A.call(this,r,t,(s,g)=>{s?o(s):i(g)})})}}CBA.default=u9t});var ECe=GA((bBA,pCe)=>{"use strict";var dCe=bBA&&bBA.__importDefault||function(A){return A&&A.__esModule?A:{default:A}},g9t=require("events"),d9t=dCe(Vk()),p9t=dCe(gCe()),lx=d9t.default("agent-base");function E9t(A){return!!A&&typeof A.addRequest=="function"}function IBA(){let{stack:A}=new Error;return typeof A!="string"?!1:A.split(` -`).some(r=>r.indexOf("(https.js:")!==-1||r.indexOf("node:https:")!==-1)}function _K(A,r){return new _K.Agent(A,r)}(function(A){class r extends g9t.EventEmitter{constructor(i,o){super();let s=o;typeof i=="function"?this.callback=i:i&&(s=i),this.timeout=null,s&&typeof s.timeout=="number"&&(this.timeout=s.timeout),this.maxFreeSockets=1,this.maxSockets=1,this.maxTotalSockets=1/0,this.sockets={},this.freeSockets={},this.requests={},this.options={}}get defaultPort(){return typeof this.explicitDefaultPort=="number"?this.explicitDefaultPort:IBA()?443:80}set defaultPort(i){this.explicitDefaultPort=i}get protocol(){return typeof this.explicitProtocol=="string"?this.explicitProtocol:IBA()?"https:":"http:"}set protocol(i){this.explicitProtocol=i}callback(i,o,s){throw new Error('"agent-base" has no default implementation, you must subclass and override `callback()`')}addRequest(i,o){let s=Object.assign({},o);typeof s.secureEndpoint!="boolean"&&(s.secureEndpoint=IBA()),s.host==null&&(s.host="localhost"),s.port==null&&(s.port=s.secureEndpoint?443:80),s.protocol==null&&(s.protocol=s.secureEndpoint?"https:":"http:"),s.host&&s.path&&delete s.path,delete s.agent,delete s.hostname,delete s._defaultAgent,delete s.defaultPort,delete s.createConnection,i._last=!0,i.shouldKeepAlive=!1;let g=!1,E=null,p=s.timeout||this.timeout,B=O=>{i._hadError||(i.emit("error",O),i._hadError=!0)},m=()=>{E=null,g=!0;let O=new Error(`A "socket" was not created for HTTP request before ${p}ms`);O.code="ETIMEOUT",B(O)},_=O=>{g||(E!==null&&(clearTimeout(E),E=null),B(O))},x=O=>{if(g)return;if(E!=null&&(clearTimeout(E),E=null),E9t(O)){lx("Callback returned another Agent instance %o",O.constructor.name),O.addRequest(i,s);return}if(O){O.once("free",()=>{this.freeSocket(O,s)}),i.onSocket(O);return}let k=new Error(`no Duplex stream was returned to agent-base for \`${i.method} ${i.path}\``);B(k)};if(typeof this.callback!="function"){B(new Error("`callback` is not defined"));return}this.promisifiedCallback||(this.callback.length>=3?(lx("Converting legacy callback function to promise"),this.promisifiedCallback=p9t.default(this.callback)):this.promisifiedCallback=this.callback),typeof p=="number"&&p>0&&(E=setTimeout(m,p)),"port"in s&&typeof s.port!="number"&&(s.port=Number(s.port));try{lx("Resolving socket for %o request: %o",s.protocol,`${i.method} ${i.path}`),Promise.resolve(this.promisifiedCallback(i,s)).then(x,_)}catch(O){Promise.reject(O).catch(_)}}freeSocket(i,o){lx("Freeing socket %o %o",i.constructor.name,o),i.destroy()}destroy(){lx("Destroying agent %o",this.constructor.name)}}A.Agent=r,A.prototype=A.Agent.prototype})(_K||(_K={}));pCe.exports=_K});var fCe=GA(gx=>{"use strict";var f9t=gx&&gx.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(gx,"__esModule",{value:!0});var B9t=f9t(Vk()),ux=B9t.default("https-proxy-agent:parse-proxy-response");function h9t(A){return new Promise((r,t)=>{let i=0,o=[];function s(){let _=A.read();_?m(_):A.once("readable",s)}function g(){A.removeListener("end",p),A.removeListener("error",B),A.removeListener("close",E),A.removeListener("readable",s)}function E(_){ux("onclose had error %o",_)}function p(){ux("onend")}function B(_){g(),ux("onerror %o",_),t(_)}function m(_){o.push(_),i+=_.length;let x=Buffer.concat(o,i);if(x.indexOf(`\r -\r -`)===-1){ux("have not received end of HTTP headers yet..."),s();return}let k=x.toString("ascii",0,x.indexOf(`\r -`)),P=+k.split(" ")[1];ux("got proxy server response: %o",k),r({statusCode:P,buffered:x})}A.on("error",B),A.on("close",E),A.on("end",p),s()})}gx.default=h9t});var QCe=GA(N2=>{"use strict";var Q9t=N2&&N2.__awaiter||function(A,r,t,i){function o(s){return s instanceof t?s:new t(function(g){g(s)})}return new(t||(t=Promise))(function(s,g){function E(m){try{B(i.next(m))}catch(_){g(_)}}function p(m){try{B(i.throw(m))}catch(_){g(_)}}function B(m){m.done?s(m.value):o(m.value).then(E,p)}B((i=i.apply(A,r||[])).next())})},K3=N2&&N2.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(N2,"__esModule",{value:!0});var BCe=K3(require("net")),hCe=K3(require("tls")),m9t=K3(require("url")),D9t=K3(require("assert")),_9t=K3(Vk()),w9t=ECe(),v9t=K3(fCe()),dx=_9t.default("https-proxy-agent:agent"),OBA=class extends w9t.Agent{constructor(r){let t;if(typeof r=="string"?t=m9t.default.parse(r):t=r,!t)throw new Error("an HTTP(S) proxy server `host` and `port` must be specified!");dx("creating new HttpsProxyAgent instance: %o",t),super(t);let i=Object.assign({},t);this.secureProxy=t.secureProxy||I9t(i.protocol),i.host=i.hostname||i.host,typeof i.port=="string"&&(i.port=parseInt(i.port,10)),!i.port&&i.host&&(i.port=this.secureProxy?443:80),this.secureProxy&&!("ALPNProtocols"in i)&&(i.ALPNProtocols=["http 1.1"]),i.host&&i.path&&(delete i.path,delete i.pathname),this.proxy=i}callback(r,t){return Q9t(this,void 0,void 0,function*(){let{proxy:i,secureProxy:o}=this,s;o?(dx("Creating `tls.Socket`: %o",i),s=hCe.default.connect(i)):(dx("Creating `net.Socket`: %o",i),s=BCe.default.connect(i));let g=Object.assign({},i.headers),p=`CONNECT ${`${t.host}:${t.port}`} HTTP/1.1\r -`;i.auth&&(g["Proxy-Authorization"]=`Basic ${Buffer.from(i.auth).toString("base64")}`);let{host:B,port:m,secureEndpoint:_}=t;C9t(m,_)||(B+=`:${m}`),g.Host=B,g.Connection="close";for(let H of Object.keys(g))p+=`${H}: ${g[H]}\r -`;let x=v9t.default(s);s.write(`${p}\r -`);let{statusCode:O,buffered:k}=yield x;if(O===200){if(r.once("socket",y9t),t.secureEndpoint){dx("Upgrading socket connection to TLS");let H=t.servername||t.host;return hCe.default.connect(Object.assign(Object.assign({},b9t(t,"host","hostname","path","port")),{socket:s,servername:H}))}return s}s.destroy();let P=new BCe.default.Socket({writable:!1});return P.readable=!0,r.once("socket",H=>{dx("replaying proxy buffer for failed request"),D9t.default(H.listenerCount("data")>0),H.push(k),H.push(null)}),P})}};N2.default=OBA;function y9t(A){A.resume()}function C9t(A,r){return!!(!r&&A===80||r&&A===443)}function I9t(A){return typeof A=="string"?/^https:?$/i.test(A):!1}function b9t(A,...r){let t={},i;for(i in A)r.includes(i)||(t[i]=A[i]);return t}});var DCe=GA((xBA,mCe)=>{"use strict";var O9t=xBA&&xBA.__importDefault||function(A){return A&&A.__esModule?A:{default:A}},MBA=O9t(QCe());function kBA(A){return new MBA.default(A)}(function(A){A.HttpsProxyAgent=MBA.default,A.prototype=MBA.default.prototype})(kBA||(kBA={}));mCe.exports=kBA});var FBA=GA(SBA=>{var{_nullishCoalesce:HBA}=pd();Object.defineProperty(SBA,"__esModule",{value:!0});var _Ce=sg(),M9t=require("http"),k9t=require("https"),x9t=DCe(),H9t=require("stream"),wCe=require("url"),S9t=require("zlib"),F9t=1024*32;function R9t(A){return new H9t.Readable({read(){this.push(A),this.push(null)}})}function T9t(A){let r;try{r=new wCe.URL(A.url)}catch{return console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used."),_Ce.createTransport(A,()=>Promise.resolve({}))}let t=r.protocol==="https:",i=N9t(r,A.proxy||(t?process.env.https_proxy:void 0)||process.env.http_proxy),o=t?k9t:M9t,s=A.keepAlive===void 0?!1:A.keepAlive,g=i?new x9t.HttpsProxyAgent(i):new o.Agent({keepAlive:s,maxSockets:30,timeout:2e3}),E=P9t(A,HBA(A.httpModule,()=>o),g);return _Ce.createTransport(A,E)}function N9t(A,r){let{no_proxy:t}=process.env;if(!(t&&t.split(",").some(o=>A.host.endsWith(o)||A.hostname.endsWith(o))))return r}function P9t(A,r,t){let{hostname:i,pathname:o,port:s,protocol:g,search:E}=new wCe.URL(A.url);return function(B){return new Promise((m,_)=>{let x=R9t(B.body),O={...A.headers};B.body.length>F9t&&(O["content-encoding"]="gzip",x=x.pipe(S9t.createGzip()));let k=r.request({method:"POST",agent:t,headers:O,hostname:i,path:`${o}${E}`,port:s,protocol:g,ca:A.caCerts},P=>{P.on("data",()=>{}),P.on("end",()=>{}),P.setEncoding("utf8");let H=HBA(P.headers["retry-after"],()=>null),T=HBA(P.headers["x-sentry-rate-limits"],()=>null);m({statusCode:P.statusCode,headers:{"retry-after":H,"x-sentry-rate-limits":Array.isArray(T)?T[0]:T}})});k.on("error",_),x.pipe(k)})}}SBA.makeNodeTransport=T9t});var X3=GA(RBA=>{Object.defineProperty(RBA,"__esModule",{value:!0});var G9t=wo(),Y9t=G9t.parseSemver(process.versions.node);RBA.NODE_VERSION=Y9t});var CCe=GA(TBA=>{var{_optionalChain:U9t}=pd();Object.defineProperty(TBA,"__esModule",{value:!0});var P2=sg(),vCe=require("domain");function yCe(){return vCe.active}function L9t(){let A=yCe();if(A)return P2.ensureHubOnCarrier(A),P2.getHubFromCarrier(A)}function j9t(A){let r={};return P2.ensureHubOnCarrier(r,A),P2.getHubFromCarrier(r)}function W9t(A,r){let t=yCe();if(t&&U9t([r,"optionalAccess",g=>g.reuseExisting]))return A();let i=vCe.create(),o=t?P2.getHubFromCarrier(t):void 0,s=j9t(o);return P2.setHubOnCarrier(i,s),i.bind(()=>A())()}function J9t(){P2.setAsyncContextStrategy({getCurrentHub:L9t,runWithAsyncContext:W9t})}TBA.setDomainAsyncContextStrategy=J9t});var ICe=GA(PBA=>{var{_optionalChain:q9t}=pd();Object.defineProperty(PBA,"__esModule",{value:!0});var NBA=sg(),V9t=require("async_hooks"),wK;function z9t(){wK||(wK=new V9t.AsyncLocalStorage);function A(){return wK.getStore()}function r(i){let o={};return NBA.ensureHubOnCarrier(o,i),NBA.getHubFromCarrier(o)}function t(i,o){let s=A();if(s&&q9t([o,"optionalAccess",E=>E.reuseExisting]))return i();let g=r(s);return wK.run(g,()=>i())}NBA.setAsyncContextStrategy({getCurrentHub:A,runWithAsyncContext:t})}PBA.setHooksAsyncContextStrategy=z9t});var OCe=GA(GBA=>{Object.defineProperty(GBA,"__esModule",{value:!0});var bCe=X3(),K9t=CCe(),X9t=ICe();function Z9t(){bCe.NODE_VERSION.major&&bCe.NODE_VERSION.major>=14?X9t.setHooksAsyncContextStrategy():K9t.setDomainAsyncContextStrategy()}GBA.setNodeAsyncContextStrategy=Z9t});var UBA=GA(YBA=>{Object.defineProperty(YBA,"__esModule",{value:!0});var $9t=sg(),MCe=wo(),AHt=require("util"),vK=class A{constructor(){A.prototype.__init.call(this)}static __initStatic(){this.id="Console"}__init(){this.name=A.id}setupOnce(){MCe.addInstrumentationHandler("console",({args:r,level:t})=>{let i=$9t.getCurrentHub();i.getIntegration(A)&&i.addBreadcrumb({category:"console",level:MCe.severityLevelFromString(t),message:AHt.format.apply(void 0,r)},{input:[...r],level:t})})}};vK.__initStatic();YBA.Console=vK});var px=GA(yK=>{(function(A,r){let t=typeof yK=="object"?yK:typeof A=="object"?A:{};r(t),typeof define=="function"&&define.amd&&define("lru",t)})(yK,function(A){let r=Symbol("newer"),t=Symbol("older");function i(p,B){typeof p!="number"&&(B=p,p=0),this.size=0,this.limit=p,this.oldest=this.newest=void 0,this._keymap=new Map,B&&(this.assign(B),p<1&&(this.limit=this.size))}A.LRUMap=i;function o(p,B){this.key=p,this.value=B,this[r]=void 0,this[t]=void 0}i.prototype._markEntryAsUsed=function(p){p!==this.newest&&(p[r]&&(p===this.oldest&&(this.oldest=p[r]),p[r][t]=p[t]),p[t]&&(p[t][r]=p[r]),p[r]=void 0,p[t]=this.newest,this.newest&&(this.newest[r]=p),this.newest=p)},i.prototype.assign=function(p){let B,m=this.limit||Number.MAX_VALUE;this._keymap.clear();let _=p[Symbol.iterator]();for(let x=_.next();!x.done;x=_.next()){let O=new o(x.value[0],x.value[1]);if(this._keymap.set(O.key,O),B?(B[r]=O,O[t]=B):this.oldest=O,B=O,m--==0)throw new Error("overflow")}this.newest=B,this.size=this._keymap.size},i.prototype.get=function(p){var B=this._keymap.get(p);if(B)return this._markEntryAsUsed(B),B.value},i.prototype.set=function(p,B){var m=this._keymap.get(p);return m?(m.value=B,this._markEntryAsUsed(m),this):(this._keymap.set(p,m=new o(p,B)),this.newest?(this.newest[r]=m,m[t]=this.newest):this.oldest=m,this.newest=m,++this.size,this.size>this.limit&&this.shift(),this)},i.prototype.shift=function(){var p=this.oldest;if(p)return this.oldest[r]?(this.oldest=this.oldest[r],this.oldest[t]=void 0):(this.oldest=void 0,this.newest=void 0),p[r]=p[t]=void 0,this._keymap.delete(p.key),--this.size,[p.key,p.value]},i.prototype.find=function(p){let B=this._keymap.get(p);return B?B.value:void 0},i.prototype.has=function(p){return this._keymap.has(p)},i.prototype.delete=function(p){var B=this._keymap.get(p);if(B)return this._keymap.delete(B.key),B[r]&&B[t]?(B[t][r]=B[r],B[r][t]=B[t]):B[r]?(B[r][t]=void 0,this.oldest=B[r]):B[t]?(B[t][r]=void 0,this.newest=B[t]):this.oldest=this.newest=void 0,this.size--,B.value},i.prototype.clear=function(){this.oldest=this.newest=void 0,this.size=0,this._keymap.clear()};function s(p){this.entry=p}s.prototype[Symbol.iterator]=function(){return this},s.prototype.next=function(){let p=this.entry;return p?(this.entry=p[r],{done:!1,value:[p.key,p.value]}):{done:!0,value:void 0}};function g(p){this.entry=p}g.prototype[Symbol.iterator]=function(){return this},g.prototype.next=function(){let p=this.entry;return p?(this.entry=p[r],{done:!1,value:p.key}):{done:!0,value:void 0}};function E(p){this.entry=p}E.prototype[Symbol.iterator]=function(){return this},E.prototype.next=function(){let p=this.entry;return p?(this.entry=p[r],{done:!1,value:p.value}):{done:!0,value:void 0}},i.prototype.keys=function(){return new g(this.oldest)},i.prototype.values=function(){return new E(this.oldest)},i.prototype.entries=function(){return this},i.prototype[Symbol.iterator]=function(){return new s(this.oldest)},i.prototype.forEach=function(p,B){typeof B!="object"&&(B=this);let m=this.oldest;for(;m;)p.call(B,m.value,m.key,this),m=m[r]},i.prototype.toJSON=function(){for(var p=new Array(this.size),B=0,m=this.oldest;m;)p[B++]={key:m.key,value:m.value},m=m[r];return p},i.prototype.toString=function(){for(var p="",B=this.oldest;B;)p+=String(B.key)+":"+B.value,B=B[r],B&&(p+=" < ");return p}})});var jBA=GA(Av=>{var{_optionalChain:rm}=pd();Object.defineProperty(Av,"__esModule",{value:!0});var eHt=sg(),kCe=require("url"),xCe=X3();function rHt(A){let r=rm([eHt.getCurrentHub,"call",t=>t(),"access",t=>t.getClient,"call",t=>t(),"optionalAccess",t=>t.getDsn,"call",t=>t()]);return r?A.includes(r.host):!1}function tHt(A){let r=A.protocol||"",t=A.hostname||A.host||"",i=!A.port||A.port===80||A.port===443?"":`:${A.port}`,o=A.path?A.path:"/";return`${r}//${t}${i}${o}`}function HCe(A){let r=A.protocol||"",t=A.hostname||A.host||"",i=!A.port||A.port===80||A.port===443?"":`:${A.port}`,o=A.pathname||"/",s=A.auth?iHt(A.auth):"";return`${r}//${s}${t}${i}${o}`}function iHt(A){let[r,t]=A.split(":");return`${r?"[Filtered]":""}:${t?"[Filtered]":""}@`}function nHt(A,r,t){if(!A)return A;let[i,o]=A.split(" ");return r.host&&!r.protocol&&(r.protocol=rm([t,"optionalAccess",s=>s.agent,"optionalAccess",s=>s.protocol]),o=HCe(r)),rm([o,"optionalAccess",s=>s.startsWith,"call",s=>s("///")])&&(o=o.slice(2)),`${i} ${o}`}function LBA(A){let r={protocol:A.protocol,hostname:typeof A.hostname=="string"&&A.hostname.startsWith("[")?A.hostname.slice(1,-1):A.hostname,hash:A.hash,search:A.search,pathname:A.pathname,path:`${A.pathname||""}${A.search||""}`,href:A.href};return A.port!==""&&(r.port=Number(A.port)),(A.username||A.password)&&(r.auth=`${A.username}:${A.password}`),r}function aHt(A,r){let t,i;return typeof r[r.length-1]=="function"&&(t=r.pop()),typeof r[0]=="string"?i=LBA(new kCe.URL(r[0])):r[0]instanceof kCe.URL?i=LBA(r[0]):i=r[0],r.length===2&&(i={...i,...r[1]}),i.protocol===void 0&&(xCe.NODE_VERSION.major&&xCe.NODE_VERSION.major>8?i.protocol=rm([rm([A,"optionalAccess",o=>o.globalAgent]),"optionalAccess",o=>o.protocol])||rm([i.agent,"optionalAccess",o=>o.protocol])||rm([i._defaultAgent,"optionalAccess",o=>o.protocol]):i.protocol=rm([i.agent,"optionalAccess",o=>o.protocol])||rm([i._defaultAgent,"optionalAccess",o=>o.protocol])||rm([rm([A,"optionalAccess",o=>o.globalAgent]),"optionalAccess",o=>o.protocol])),t?[i,t]:[i]}Av.cleanSpanDescription=nHt;Av.extractRawUrl=tHt;Av.extractUrl=HCe;Av.isSentryRequest=rHt;Av.normalizeRequestArgs=aHt;Av.urlToOptions=LBA});var JBA=GA(WBA=>{var{_optionalChain:G2}=pd();Object.defineProperty(WBA,"__esModule",{value:!0});var CK=sg(),k1=wo(),SCe=px(),FCe=X3(),Z3=jBA(),Ex=class A{static __initStatic(){this.id="Http"}__init(){this.name=A.id}constructor(r={}){A.prototype.__init.call(this),this._breadcrumbs=typeof r.breadcrumbs>"u"?!0:r.breadcrumbs,this._tracing=r.tracing?r.tracing===!0?{}:r.tracing:void 0}setupOnce(r,t){if(!this._breadcrumbs&&!this._tracing)return;let i=G2([t,"call",p=>p(),"access",p=>p.getClient,"call",p=>p(),"optionalAccess",p=>p.getOptions,"call",p=>p()]);if(i&&i.instrumenter!=="sentry"){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&k1.logger.log("HTTP Integration is skipped because of instrumenter configuration.");return}let o=G2([this,"access",p=>p._tracing,"optionalAccess",p=>p.shouldCreateSpanForRequest])||G2([i,"optionalAccess",p=>p.shouldCreateSpanForRequest]),s=G2([i,"optionalAccess",p=>p.tracePropagationTargets])||G2([this,"access",p=>p._tracing,"optionalAccess",p=>p.tracePropagationTargets]),g=require("http"),E=RCe(g,this._breadcrumbs,o,s);if(k1.fill(g,"get",E),k1.fill(g,"request",E),FCe.NODE_VERSION.major&&FCe.NODE_VERSION.major>8){let p=require("https"),B=RCe(p,this._breadcrumbs,o,s);k1.fill(p,"get",B),k1.fill(p,"request",B)}}};Ex.__initStatic();function RCe(A,r,t,i){let o=new SCe.LRUMap(100),s=new SCe.LRUMap(100),g=B=>{if(t===void 0)return!0;let m=o.get(B);if(m!==void 0)return m;let _=t(B);return o.set(B,_),_},E=B=>{if(i===void 0)return!0;let m=s.get(B);if(m!==void 0)return m;let _=k1.stringMatchesSomePattern(B,i);return s.set(B,_),_};function p(B,m,_,x){CK.getCurrentHub().getIntegration(Ex)&&CK.getCurrentHub().addBreadcrumb({category:"http",data:{status_code:x&&x.statusCode,...m},type:"http"},{event:B,request:_,response:x})}return function(m){return function(...x){let O=Z3.normalizeRequestArgs(A,x),k=O[0],P=Z3.extractRawUrl(k),H=Z3.extractUrl(k);if(Z3.isSentryRequest(H))return m.apply(A,O);let T=CK.getCurrentHub(),v=T.getScope(),F=v.getSpan(),y=oHt(H,k),S=g(P)?G2([F,"optionalAccess",U=>U.startChild,"call",U=>U({op:"http.client",origin:"auto.http.node.http",description:`${y["http.method"]} ${y.url}`,data:y})]):void 0;if(E(P))if(S){let U=S.toTraceparent(),V=G2([S,"optionalAccess",wA=>wA.transaction,"optionalAccess",wA=>wA.getDynamicSamplingContext,"call",wA=>wA()]);TCe(k,H,U,V)}else{let U=T.getClient(),{traceId:V,sampled:wA,dsc:IA}=v.getPropagationContext(),pA=k1.generateSentryTraceHeader(V,void 0,wA),oA=IA||(U?CK.getDynamicSamplingContextFromClient(V,U,v):void 0);TCe(k,H,pA,oA)}else(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&k1.logger.log(`[Tracing] Not adding sentry-trace header to outgoing request (${H}) due to mismatching tracePropagationTargets option.`);return m.apply(A,O).once("response",function(U){let V=this;r&&p("response",y,V,U),S&&(U.statusCode&&S.setHttpStatus(U.statusCode),S.description=Z3.cleanSpanDescription(S.description,k,V),S.finish())}).once("error",function(){let U=this;r&&p("error",y,U),S&&(S.setHttpStatus(500),S.description=Z3.cleanSpanDescription(S.description,k,U),S.finish())})}}}function TCe(A,r,t,i){if((A.headers||{})["sentry-trace"])return;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&k1.logger.log(`[Tracing] Adding sentry-trace header ${t} to outgoing request to "${r}": `);let s=k1.dynamicSamplingContextToSentryBaggageHeader(i),g=s&&s.length>0?sHt(A,s):void 0;A.headers={...A.headers,"sentry-trace":t,...g&&{baggage:g}}}function oHt(A,r){let t=r.method||"GET",i={url:A,"http.method":t};return r.hash&&(i["http.fragment"]=r.hash.substring(1)),r.search&&(i["http.query"]=r.search.substring(1)),i}function sHt(A,r){if(!A.headers||!A.headers.baggage)return r;if(r){if(Array.isArray(A.headers.baggage))return[...A.headers.baggage,r]}else return A.headers.baggage;return[A.headers.baggage,r]}WBA.Http=Ex});var zBA=GA(VBA=>{Object.defineProperty(VBA,"__esModule",{value:!0});var cHt=sg(),qBA=wo(),lHt=2e3;function uHt(A){console.error(A);let r=cHt.getCurrentHub().getClient();r===void 0&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qBA.logger.warn("No NodeClient was defined, we are exiting the process now."),global.process.exit(1));let t=r.getOptions(),i=t&&t.shutdownTimeout&&t.shutdownTimeout>0&&t.shutdownTimeout||lHt;r.close(i).then(o=>{o||(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qBA.logger.warn("We reached the timeout for emptying the request buffer, still exiting now!"),global.process.exit(1)},o=>{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&qBA.logger.error(o)})}VBA.logAndExitProcess=uHt});var XBA=GA(KBA=>{Object.defineProperty(KBA,"__esModule",{value:!0});var NCe=sg(),gHt=wo(),PCe=zBA(),IK=class A{static __initStatic(){this.id="OnUncaughtException"}__init(){this.name=A.id}__init2(){this.handler=this._makeErrorHandler()}constructor(r={}){A.prototype.__init.call(this),A.prototype.__init2.call(this),this._options={exitEvenIfOtherHandlersAreRegistered:!0,...r}}setupOnce(){global.process.on("uncaughtException",this.handler)}_makeErrorHandler(){let t=!1,i=!1,o=!1,s;return g=>{let E=PCe.logAndExitProcess,p=NCe.getCurrentHub().getClient();this._options.onFatalError?E=this._options.onFatalError:p&&p.getOptions().onFatalError&&(E=p.getOptions().onFatalError);let m=global.process.listeners("uncaughtException").reduce((x,O)=>O.name==="domainUncaughtExceptionClear"||O.tag&&O.tag==="sentry_tracingErrorCallback"||O===this.handler?x:x+1,0)===0,_=this._options.exitEvenIfOtherHandlersAreRegistered||m;if(t)_&&(o?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&gHt.logger.warn("uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown"),PCe.logAndExitProcess(g)):i||(i=!0,setTimeout(()=>{o||(o=!0,E(s,g))},2e3)));else{let x=NCe.getCurrentHub();s=g,t=!0,x.getIntegration(A)?x.withScope(O=>{O.setLevel("fatal"),x.captureException(g,{originalException:g,data:{mechanism:{handled:!1,type:"onuncaughtexception"}}}),!o&&_&&(o=!0,E(g))}):!o&&_&&(o=!0,E(g))}}}};IK.__initStatic();KBA.OnUncaughtException=IK});var $BA=GA(ZBA=>{Object.defineProperty(ZBA,"__esModule",{value:!0});var dHt=sg(),GCe=wo(),pHt=zBA(),bK=class A{static __initStatic(){this.id="OnUnhandledRejection"}__init(){this.name=A.id}constructor(r={mode:"warn"}){this._options=r,A.prototype.__init.call(this)}setupOnce(){global.process.on("unhandledRejection",this.sendUnhandledPromise.bind(this))}sendUnhandledPromise(r,t){let i=dHt.getCurrentHub();i.getIntegration(A)&&i.withScope(o=>{o.setExtra("unhandledPromiseRejection",!0),i.captureException(r,{originalException:t,data:{mechanism:{handled:!1,type:"onunhandledrejection"}}})}),this._handleRejection(r)}_handleRejection(r){let t="This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:";this._options.mode==="warn"?GCe.consoleSandbox(()=>{console.warn(t),console.error(r&&r.stack?r.stack:r)}):this._options.mode==="strict"&&(GCe.consoleSandbox(()=>{console.warn(t)}),pHt.logAndExitProcess(r))}};bK.__initStatic();ZBA.OnUnhandledRejection=bK});var kK=GA(ehA=>{var{_optionalChain:AhA}=pd();Object.defineProperty(ehA,"__esModule",{value:!0});var EHt=wo(),fHt=require("fs"),BHt=px(),OK=new BHt.LRUMap(100),hHt=7;function QHt(A){return new Promise((r,t)=>{fHt.readFile(A,"utf8",(i,o)=>{i?t(i):r(o)})})}var MK=class A{static __initStatic(){this.id="ContextLines"}__init(){this.name=A.id}constructor(r={}){this._options=r,A.prototype.__init.call(this)}get _contextLines(){return this._options.frameContextLines!==void 0?this._options.frameContextLines:hHt}setupOnce(r,t){r(i=>t().getIntegration(A)?this.addSourceContext(i):i)}async addSourceContext(r){let t={},i=[];if(this._contextLines>0&&AhA([r,"access",o=>o.exception,"optionalAccess",o=>o.values])){for(let o of r.exception.values)if(AhA([o,"access",s=>s.stacktrace,"optionalAccess",s=>s.frames]))for(let s=o.stacktrace.frames.length-1;s>=0;s--){let g=o.stacktrace.frames[s];g.filename&&!t[g.filename]&&!OK.get(g.filename)&&(i.push(mHt(g.filename)),t[g.filename]=1)}}if(i.length>0&&await Promise.all(i),this._contextLines>0&&AhA([r,"access",o=>o.exception,"optionalAccess",o=>o.values]))for(let o of r.exception.values)o.stacktrace&&o.stacktrace.frames&&await this.addSourceContextToFrames(o.stacktrace.frames);return r}addSourceContextToFrames(r){for(let t of r)if(t.filename&&t.context_line===void 0){let i=OK.get(t.filename);if(i)try{EHt.addContextToFrame(i,t,this._contextLines)}catch{}}}};MK.__initStatic();async function mHt(A){let r=OK.get(A);if(r===null)return null;if(r!==void 0)return r;let t=null;try{t=(await QHt(A)).split(` -`)}catch{}return OK.set(A,t),t}ehA.ContextLines=MK});var thA=GA(rhA=>{Object.defineProperty(rhA,"__esModule",{value:!0});var DHt=wo(),_Ht=_BA(),wHt=kK(),vHt="cause",yHt=5,xK=class A{static __initStatic(){this.id="LinkedErrors"}__init(){this.name=A.id}constructor(r={}){A.prototype.__init.call(this),this._key=r.key||vHt,this._limit=r.limit||yHt}setupOnce(r,t){r(async(i,o)=>{let s=t(),g=s.getClient(),E=s.getIntegration(A);if(!g||!E)return i;let p=g.getOptions();DHt.applyAggregateErrorsToEvent(_Ht.exceptionFromError,p.stackParser,p.maxValueLength,E._key,E._limit,i,o);let B=t().getIntegration(wHt.ContextLines);return B&&await B.addSourceContext(i),i})}};xK.__initStatic();rhA.LinkedErrors=xK});var ahA=GA(nhA=>{Object.defineProperty(nhA,"__esModule",{value:!0});var YCe=require("fs"),UCe=require("path"),ihA;function CHt(){try{return require.cache?Object.keys(require.cache):[]}catch{return[]}}function IHt(){let A=require.main&&require.main.paths||[],r=CHt(),t={},i={};return r.forEach(o=>{let s=o,g=()=>{let E=s;if(s=UCe.dirname(E),!s||E===s||i[E])return;if(A.indexOf(s)<0)return g();let p=UCe.join(E,"package.json");if(i[E]=!0,!YCe.existsSync(p))return g();try{let B=JSON.parse(YCe.readFileSync(p,"utf8"));t[B.name]=B.version}catch{}};g()}),t}var HK=class A{constructor(){A.prototype.__init.call(this)}static __initStatic(){this.id="Modules"}__init(){this.name=A.id}setupOnce(r,t){r(i=>t().getIntegration(A)?{...i,modules:{...i.modules,...this._getModules()}}:i)}_getModules(){return ihA||(ihA=IHt()),ihA}};HK.__initStatic();nhA.Modules=HK});var ohA=GA($3=>{var{_optionalChain:Y2}=pd();Object.defineProperty($3,"__esModule",{value:!0});var bHt=require("child_process"),jCe=require("fs"),jQ=require("os"),OHt=require("path"),WCe=require("util"),JCe=WCe.promisify(jCe.readFile),qCe=WCe.promisify(jCe.readdir),SK=class A{static __initStatic(){this.id="Context"}__init(){this.name=A.id}constructor(r={app:!0,os:!0,device:!0,culture:!0,cloudResource:!0}){this._options=r,A.prototype.__init.call(this)}setupOnce(r){r(t=>this.addContext(t))}async addContext(r){this._cachedContext===void 0&&(this._cachedContext=this._getContexts());let t=this._updateContext(await this._cachedContext);return r.contexts={...r.contexts,app:{...t.app,...Y2([r,"access",i=>i.contexts,"optionalAccess",i=>i.app])},os:{...t.os,...Y2([r,"access",i=>i.contexts,"optionalAccess",i=>i.os])},device:{...t.device,...Y2([r,"access",i=>i.contexts,"optionalAccess",i=>i.device])},culture:{...t.culture,...Y2([r,"access",i=>i.contexts,"optionalAccess",i=>i.culture])},cloud_resource:{...t.cloud_resource,...Y2([r,"access",i=>i.contexts,"optionalAccess",i=>i.cloud_resource])}},r}_updateContext(r){return Y2([r,"optionalAccess",t=>t.app,"optionalAccess",t=>t.app_memory])&&(r.app.app_memory=process.memoryUsage().rss),Y2([r,"optionalAccess",t=>t.device,"optionalAccess",t=>t.free_memory])&&(r.device.free_memory=jQ.freemem()),r}async _getContexts(){let r={};if(this._options.os&&(r.os=await MHt()),this._options.app&&(r.app=xHt()),this._options.device&&(r.device=VCe(this._options.device)),this._options.culture){let t=kHt();t&&(r.culture=t)}return this._options.cloudResource&&(r.cloud_resource=NHt()),r}};SK.__initStatic();async function MHt(){let A=jQ.platform();switch(A){case"darwin":return RHt();case"linux":return THt();default:return{name:HHt[A]||A,version:jQ.release()}}}function kHt(){try{if(typeof process.versions.icu!="string")return;let A=new Date(9e8);if(new Intl.DateTimeFormat("es",{month:"long"}).format(A)==="enero"){let t=Intl.DateTimeFormat().resolvedOptions();return{locale:t.locale,timezone:t.timeZone}}}catch{}}function xHt(){let A=process.memoryUsage().rss;return{app_start_time:new Date(Date.now()-process.uptime()*1e3).toISOString(),app_memory:A}}function VCe(A){let r={},t;try{t=jQ.uptime&&jQ.uptime()}catch{}if(typeof t=="number"&&(r.boot_time=new Date(Date.now()-t*1e3).toISOString()),r.arch=jQ.arch(),(A===!0||A.memory)&&(r.memory_size=jQ.totalmem(),r.free_memory=jQ.freemem()),A===!0||A.cpu){let i=jQ.cpus();if(i&&i.length){let o=i[0];r.processor_count=i.length,r.cpu_description=o.model,r.processor_frequency=o.speed}}return r}var HHt={aix:"IBM AIX",freebsd:"FreeBSD",openbsd:"OpenBSD",sunos:"SunOS",win32:"Windows"},SHt=[{name:"fedora-release",distros:["Fedora"]},{name:"redhat-release",distros:["Red Hat Linux","Centos"]},{name:"redhat_version",distros:["Red Hat Linux"]},{name:"SuSE-release",distros:["SUSE Linux"]},{name:"lsb-release",distros:["Ubuntu Linux","Arch Linux"]},{name:"debian_version",distros:["Debian"]},{name:"debian_release",distros:["Debian"]},{name:"arch-release",distros:["Arch Linux"]},{name:"gentoo-release",distros:["Gentoo Linux"]},{name:"novell-release",distros:["SUSE Linux"]},{name:"alpine-release",distros:["Alpine Linux"]}],FHt={alpine:A=>A,arch:A=>x1(/distrib_release=(.*)/,A),centos:A=>x1(/release ([^ ]+)/,A),debian:A=>A,fedora:A=>x1(/release (..)/,A),mint:A=>x1(/distrib_release=(.*)/,A),red:A=>x1(/release ([^ ]+)/,A),suse:A=>x1(/VERSION = (.*)\n/,A),ubuntu:A=>x1(/distrib_release=(.*)/,A)};function x1(A,r){let t=A.exec(r);return t?t[1]:void 0}async function RHt(){let A={kernel_version:jQ.release(),name:"Mac OS X",version:`10.${Number(jQ.release().split(".")[0])-4}`};try{let r=await new Promise((t,i)=>{bHt.execFile("/usr/bin/sw_vers",(o,s)=>{if(o){i(o);return}t(s)})});A.name=x1(/^ProductName:\s+(.*)$/m,r),A.version=x1(/^ProductVersion:\s+(.*)$/m,r),A.build=x1(/^BuildVersion:\s+(.*)$/m,r)}catch{}return A}function LCe(A){return A.split(" ")[0].toLowerCase()}async function THt(){let A={kernel_version:jQ.release(),name:"Linux"};try{let r=await qCe("/etc"),t=SHt.find(E=>r.includes(E.name));if(!t)return A;let i=OHt.join("/etc",t.name),o=(await JCe(i,{encoding:"utf-8"})).toLowerCase(),{distros:s}=t;A.name=s.find(E=>o.indexOf(LCe(E))>=0)||s[0];let g=LCe(A.name);A.version=FHt[g](o)}catch{}return A}function NHt(){return process.env.VERCEL?{"cloud.provider":"vercel","cloud.region":process.env.VERCEL_REGION}:process.env.AWS_REGION?{"cloud.provider":"aws","cloud.region":process.env.AWS_REGION,"cloud.platform":process.env.AWS_EXECUTION_ENV}:process.env.GCP_PROJECT?{"cloud.provider":"gcp"}:process.env.ALIYUN_REGION_ID?{"cloud.provider":"alibaba_cloud","cloud.region":process.env.ALIYUN_REGION_ID}:process.env.WEBSITE_SITE_NAME&&process.env.REGION_NAME?{"cloud.provider":"azure","cloud.region":process.env.REGION_NAME}:process.env.IBM_CLOUD_REGION?{"cloud.provider":"ibm_cloud","cloud.region":process.env.IBM_CLOUD_REGION}:process.env.TENCENTCLOUD_REGION?{"cloud.provider":"tencent_cloud","cloud.region":process.env.TENCENTCLOUD_REGION,"cloud.account.id":process.env.TENCENTCLOUD_APPID,"cloud.availability_zone":process.env.TENCENTCLOUD_ZONE}:process.env.NETLIFY?{"cloud.provider":"netlify"}:process.env.FLY_REGION?{"cloud.provider":"fly.io","cloud.region":process.env.FLY_REGION}:process.env.DYNO?{"cloud.provider":"heroku"}:void 0}$3.Context=SK;$3.getDeviceContext=VCe;$3.readDirAsync=qCe;$3.readFileAsync=JCe});var zCe=GA(shA=>{"use strict";shA.parse=YHt;shA.serialize=UHt;var PHt=decodeURIComponent,GHt=encodeURIComponent,FK=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/;function YHt(A,r){if(typeof A!="string")throw new TypeError("argument str must be a string");for(var t={},i=r||{},o=A.split(";"),s=i.decode||PHt,g=0;g{var{_optionalChain:jHt}=pd();Object.defineProperty(A7,"__esModule",{value:!0});var RK=wo(),WHt=zCe(),JHt=require("url"),qHt={ip:!1,request:!0,transaction:!0,user:!0},VHt=["cookies","data","headers","method","query_string","url"],KCe=["id","username","email"];function chA(A,r={}){let t=A.method&&A.method.toUpperCase(),i="",o="url";r.customRoute||A.route?(i=r.customRoute||`${A.baseUrl||""}${A.route&&A.route.path}`,o="route"):(A.originalUrl||A.url)&&(i=RK.stripUrlQueryAndFragment(A.originalUrl||A.url||""));let s="";return r.method&&t&&(s+=t),r.method&&r.path&&(s+=" "),r.path&&i&&(s+=i),[s,o]}function zHt(A,r){switch(r){case"path":return chA(A,{path:!0})[0];case"handler":return A.route&&A.route.stack&&A.route.stack[0]&&A.route.stack[0].name||"";case"methodPath":default:return chA(A,{path:!0,method:!0})[0]}}function KHt(A,r){let t={};return(Array.isArray(r)?r:KCe).forEach(o=>{A&&o in A&&(t[o]=A[o])}),t}function lhA(A,r){let{include:t=VHt}=r||{},i={},o=A.headers||{},s=A.method,g=A.hostname||A.host||o.host||"",E=A.protocol==="https"||A.socket&&A.socket.encrypted?"https":"http",p=A.originalUrl||A.url||"",B=p.startsWith(E)?p:`${E}://${g}${p}`;return t.forEach(m=>{switch(m){case"headers":{i.headers=o,t.includes("cookies")||delete i.headers.cookie;break}case"method":{i.method=s;break}case"url":{i.url=B;break}case"cookies":{i.cookies=A.cookies||o.cookie&&WHt.parse(o.cookie)||{};break}case"query_string":{i.query_string=ZHt(A);break}case"data":{if(s==="GET"||s==="HEAD")break;A.body!==void 0&&(i.data=RK.isString(A.body)?A.body:JSON.stringify(RK.normalize(A.body)));break}default:({}).hasOwnProperty.call(A,m)&&(i[m]=A[m])}}),i}function XHt(A,r,t){let i={...qHt,...jHt([t,"optionalAccess",o=>o.include])};if(i.request){let o=Array.isArray(i.request)?lhA(r,{include:i.request}):lhA(r);A.request={...A.request,...o}}if(i.user){let o=r.user&&RK.isPlainObject(r.user)?KHt(r.user,i.user):{};Object.keys(o).length&&(A.user={...A.user,...o})}if(i.ip){let o=r.ip||r.socket&&r.socket.remoteAddress;o&&(A.user={...A.user,ip_address:o})}return i.transaction&&!A.transaction&&(A.transaction=zHt(r,i.transaction)),A}function ZHt(A){let r=A.originalUrl||A.url||"";if(r)return r.startsWith("/")&&(r=`http://dogs.are.great${r}`),A.query||typeof URL!==void 0&&new URL(r).search.replace("?","")||JHt.parse(r).query||void 0}A7.DEFAULT_USER_INCLUDES=KCe;A7.addRequestDataToEvent=XHt;A7.extractPathForTransaction=chA;A7.extractRequestData=lhA});var dhA=GA(ghA=>{Object.defineProperty(ghA,"__esModule",{value:!0});var $Ht=wo(),ASt=fx(),uhA={include:{cookies:!0,data:!0,headers:!0,ip:!1,query_string:!0,url:!0,user:{id:!0,username:!0,email:!0}},transactionNamingScheme:"methodPath"},TK=class A{static __initStatic(){this.id="RequestData"}__init(){this.name=A.id}constructor(r={}){A.prototype.__init.call(this),this._addRequestData=ASt.addRequestDataToEvent,this._options={...uhA,...r,include:{method:!0,...uhA.include,...r.include,user:r.include&&typeof r.include.user=="boolean"?r.include.user:{...uhA.include.user,...(r.include||{}).user}}}}setupOnce(r,t){let{transactionNamingScheme:i}=this._options;r(o=>{let s=t(),g=s.getIntegration(A),{sdkProcessingMetadata:E={}}=o,p=E.request;if(!g||!p)return o;let B=E.requestDataOptionsFromExpressHandler||E.requestDataOptionsFromGCPWrapper||eSt(this._options),m=this._addRequestData(o,p,B);if(o.type==="transaction"||i==="handler")return m;let x=p._sentryTransaction;if(x){let O=rSt(s)==="sentry.javascript.nextjs"?x.name.startsWith("/api"):i!=="path",[k]=$Ht.extractPathForTransaction(p,{path:!0,method:O,customRoute:x.name});m.transaction=k}return m})}};TK.__initStatic();function eSt(A){let{transactionNamingScheme:r,include:{ip:t,user:i,...o}}=A,s=[];for(let[E,p]of Object.entries(o))p&&s.push(E);let g;if(i===void 0)g=!0;else if(typeof i=="boolean")g=i;else{let E=[];for(let[p,B]of Object.entries(i))B&&E.push(p);g=E}return{include:{ip:t,user:g,request:s.length!==0?s:void 0,transaction:r}}}function rSt(A){try{return A.getClient().getOptions()._metadata.sdk.name}catch{return}}ghA.RequestData=TK});var fhA=GA(PK=>{var{_optionalChain:Nd}=pd();Object.defineProperty(PK,"__esModule",{value:!0});var tSt=wo(),iSt=px(),nSt=X3();function EhA(A){let r=[],t=!1;function i(g){r=[],!t&&(t=!0,A(g))}r.push(i);function o(g){r.push(g)}function s(g){let E=r.pop()||i;try{E(g)}catch{i(g)}}return{add:o,next:s}}var phA=class{constructor(){let{Session:r}=require("inspector");this._session=new r}configureAndConnect(r,t){this._session.connect(),this._session.on("Debugger.paused",i=>{r(i,()=>{this._session.post("Debugger.resume")})}),this._session.post("Debugger.enable"),this._session.post("Debugger.setPauseOnExceptions",{state:t?"all":"uncaught"})}getLocalVariables(r,t){this._getProperties(r,i=>{let{add:o,next:s}=EhA(t);for(let g of i)if(Nd([g,"optionalAccess",E=>E.value,"optionalAccess",E=>E.objectId])&&Nd([g,"optionalAccess",E=>E.value,"access",E=>E.className])==="Array"){let E=g.value.objectId;o(p=>this._unrollArray(E,g.name,p,s))}else if(Nd([g,"optionalAccess",E=>E.value,"optionalAccess",E=>E.objectId])&&Nd([g,"optionalAccess",E=>E.value,"optionalAccess",E=>E.className])==="Object"){let E=g.value.objectId;o(p=>this._unrollObject(E,g.name,p,s))}else(Nd([g,"optionalAccess",E=>E.value,"optionalAccess",E=>E.value])||Nd([g,"optionalAccess",E=>E.value,"optionalAccess",E=>E.description]))&&o(E=>this._unrollOther(g,E,s));s({})})}_getProperties(r,t){this._session.post("Runtime.getProperties",{objectId:r,ownProperties:!0},(i,o)=>{t(i?[]:o.result)})}_unrollArray(r,t,i,o){this._getProperties(r,s=>{i[t]=s.filter(g=>g.name!=="length"&&!isNaN(parseInt(g.name,10))).sort((g,E)=>parseInt(g.name,10)-parseInt(E.name,10)).map(g=>Nd([g,"optionalAccess",E=>E.value,"optionalAccess",E=>E.value])),o(i)})}_unrollObject(r,t,i,o){this._getProperties(r,s=>{i[t]=s.map(g=>[g.name,Nd([g,"optionalAccess",E=>E.value,"optionalAccess",E=>E.value])]).reduce((g,[E,p])=>(g[E]=p,g),{}),o(i)})}_unrollOther(r,t,i){Nd([r,"optionalAccess",o=>o.value,"optionalAccess",o=>o.value])?t[r.name]=r.value.value:Nd([r,"optionalAccess",o=>o.value,"optionalAccess",o=>o.description])&&Nd([r,"optionalAccess",o=>o.value,"optionalAccess",o=>o.type])!=="function"&&(t[r.name]=`<${r.value.description}>`),i(t)}};function aSt(){try{return new phA}catch{return}}function XCe(A){return A!==void 0&&["","?",""].includes(A)}function oSt(A,r){return A===r||XCe(A)&&XCe(r)}function ZCe(A){if(A!==void 0)return A.slice(-10).reduce((r,t)=>`${r},${t.function},${t.lineno},${t.colno}`,"")}function sSt(A,r){if(r!==void 0)return ZCe(A(r,1))}var NK=class A{static __initStatic(){this.id="LocalVariables"}__init(){this.name=A.id}__init2(){this._cachedFrames=new iSt.LRUMap(20)}constructor(r={},t=aSt()){this._options=r,this._session=t,A.prototype.__init.call(this),A.prototype.__init2.call(this)}setupOnce(r,t){this._setup(r,Nd([t,"call",i=>i(),"access",i=>i.getClient,"call",i=>i(),"optionalAccess",i=>i.getOptions,"call",i=>i()]))}_setup(r,t){if(this._session&&Nd([t,"optionalAccess",i=>i.includeLocalVariables])){if((nSt.NODE_VERSION.major||0)<18){tSt.logger.log("The `LocalVariables` integration is only supported on Node >= v18.");return}this._session.configureAndConnect((o,s)=>this._handlePaused(t.stackParser,o,s),!!this._options.captureAllExceptions),r(async o=>this._addLocalVariables(o))}}_handlePaused(r,{params:{reason:t,data:i,callFrames:o}},s){if(t!=="exception"&&t!=="promiseRejection"){s();return}let g=sSt(r,Nd([i,"optionalAccess",B=>B.description]));if(g==null){s();return}let{add:E,next:p}=EhA(B=>{this._cachedFrames.set(g,B),s()});for(let B=0;BP.type==="local"),k=x.className==="global"||!x.className?_:`${x.className}.${_}`;if(Nd([O,"optionalAccess",P=>P.object,"access",P=>P.objectId])===void 0)E(P=>{P[B]={function:k},p(P)});else{let P=O.object.objectId;E(H=>Nd([this,"access",T=>T._session,"optionalAccess",T=>T.getLocalVariables,"call",T=>T(P,v=>{H[B]={function:k,vars:v},p(H)})]))}}p([])}_addLocalVariables(r){for(let t of Nd([r,"optionalAccess",i=>i.exception,"optionalAccess",i=>i.values])||[])this._addLocalVariablesToException(t);return r}_addLocalVariablesToException(r){let t=ZCe(Nd([r,"optionalAccess",s=>s.stacktrace,"optionalAccess",s=>s.frames]));if(t===void 0)return;let i=this._cachedFrames.delete(t);if(i===void 0)return;let o=Nd([r,"access",s=>s.stacktrace,"optionalAccess",s=>s.frames,"optionalAccess",s=>s.length])||0;for(let s=0;sE.stacktrace,"optionalAccess",E=>E.frames,"optionalAccess",E=>E[g]])||!i[s])break;i[s].vars===void 0||r.stacktrace.frames[g].in_app===!1||!oSt(r.stacktrace.frames[g].function,i[s].function)||(r.stacktrace.frames[g].vars=i[s].vars)}}};NK.__initStatic();PK.LocalVariables=NK;PK.createCallbackList=EhA});var hhA=GA((fD,tIe)=>{var{_optionalChain:rIe}=pd();Object.defineProperty(fD,"__esModule",{value:!0});var GK=sg(),U2=wo(),$Ce=px(),AIe=X3(),BhA=jBA();fD.ChannelName=void 0;(function(A){let r="undici:request:create";A.RequestCreate=r;let t="undici:request:headers";A.RequestEnd=t;let i="undici:request:error";A.RequestError=i})(fD.ChannelName||(fD.ChannelName={}));var YK=class A{static __initStatic(){this.id="Undici"}__init(){this.name=A.id}__init2(){this._createSpanUrlMap=new $Ce.LRUMap(100)}__init3(){this._headersUrlMap=new $Ce.LRUMap(100)}constructor(r={}){A.prototype.__init.call(this),A.prototype.__init2.call(this),A.prototype.__init3.call(this),A.prototype.__init4.call(this),A.prototype.__init5.call(this),A.prototype.__init6.call(this),this._options={breadcrumbs:r.breadcrumbs===void 0?!0:r.breadcrumbs,shouldCreateSpanForRequest:r.shouldCreateSpanForRequest}}setupOnce(r){if(AIe.NODE_VERSION.major&&AIe.NODE_VERSION.major<16)return;let t;try{t=U2.dynamicRequire(tIe,"diagnostics_channel")}catch{}!t||!t.subscribe||(t.subscribe(fD.ChannelName.RequestCreate,this._onRequestCreate),t.subscribe(fD.ChannelName.RequestEnd,this._onRequestEnd),t.subscribe(fD.ChannelName.RequestError,this._onRequestError))}_shouldCreateSpan(r){if(this._options.shouldCreateSpanForRequest===void 0)return!0;let t=this._createSpanUrlMap.get(r);if(t!==void 0)return t;let i=this._options.shouldCreateSpanForRequest(r);return this._createSpanUrlMap.set(r,i),i}__init4(){this._onRequestCreate=r=>{let t=GK.getCurrentHub();if(!t.getIntegration(A))return;let{request:i}=r,o=i.origin?i.origin.toString()+i.path:i.path;if(BhA.isSentryRequest(o)||i.__sentry_span__!==void 0)return;let s=t.getClient();if(!s)return;let g=s.getOptions(),E=t.getScope(),p=E.getSpan(),B=this._shouldCreateSpan(o)?cSt(p,i,o):void 0;if(B&&(i.__sentry_span__=B),(_=>{if(g.tracePropagationTargets===void 0)return!0;let x=this._headersUrlMap.get(_);if(x!==void 0)return x;let O=U2.stringMatchesSomePattern(_,g.tracePropagationTargets);return this._headersUrlMap.set(_,O),O})(o))if(B){let _=rIe([B,"optionalAccess",O=>O.transaction,"optionalAccess",O=>O.getDynamicSamplingContext,"call",O=>O()]),x=U2.dynamicSamplingContextToSentryBaggageHeader(_);eIe(i,B.toTraceparent(),x)}else{let{traceId:_,sampled:x,dsc:O}=E.getPropagationContext(),k=U2.generateSentryTraceHeader(_,void 0,x),P=O||GK.getDynamicSamplingContextFromClient(_,s,E),H=U2.dynamicSamplingContextToSentryBaggageHeader(P);eIe(i,k,H)}}}__init5(){this._onRequestEnd=r=>{let t=GK.getCurrentHub();if(!t.getIntegration(A))return;let{request:i,response:o}=r,s=i.origin?i.origin.toString()+i.path:i.path;if(BhA.isSentryRequest(s))return;let g=i.__sentry_span__;g&&(g.setHttpStatus(o.statusCode),g.finish()),this._options.breadcrumbs&&t.addBreadcrumb({category:"http",data:{method:i.method,status_code:o.statusCode,url:s},type:"http"},{event:"response",request:i,response:o})}}__init6(){this._onRequestError=r=>{let t=GK.getCurrentHub();if(!t.getIntegration(A))return;let{request:i}=r,o=i.origin?i.origin.toString()+i.path:i.path;if(BhA.isSentryRequest(o))return;let s=i.__sentry_span__;s&&(s.setStatus("internal_error"),s.finish()),this._options.breadcrumbs&&t.addBreadcrumb({category:"http",data:{method:i.method,url:o},level:"error",type:"http"},{event:"error",request:i})}}};YK.__initStatic();function eIe(A,r,t){A.__sentry_has_headers__||(A.addHeader("sentry-trace",r),t&&A.addHeader("baggage",t),A.__sentry_has_headers__=!0)}function cSt(A,r,t){let i=U2.parseUrl(t),o=r.method||"GET",s={"http.method":o};return i.search&&(s["http.query"]=i.search),i.hash&&(s["http.fragment"]=i.hash),rIe([A,"optionalAccess",g=>g.startChild,"call",g=>g({op:"http.client",origin:"auto.http.node.undici",description:`${o} ${U2.getSanitizedUrlString(i)}`,data:s})])}fD.Undici=YK});var mhA=GA(QhA=>{Object.defineProperty(QhA,"__esModule",{value:!0});var iIe=require("path"),lSt=iIe.sep==="\\";function uSt(A){return A.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function gSt(A,r=lSt){if(!A)return;let t=r?uSt(A):A,{root:i,dir:o,base:s,ext:g}=iIe.posix.parse(t),p=`${require&&require.main&&require.main.filename&&o||global.process.cwd()}/`,B=s;g===".js"&&(B=B.slice(0,B.length-3)),!i&&!o&&(o=".");let m=o.lastIndexOf("/node_modules/");if(m>-1)return`${o.slice(m+14).replace(/\//g,".")}:${B}`;if(m=`${o}/`.lastIndexOf(p,0),m===0){let _=o.slice(p.length).replace(/\//g,".");return _&&(_+=":"),_+=B,_}return B}QhA.getModuleFromFilename=gSt});var DhA=GA(W2=>{var{_optionalChain:dSt}=pd();Object.defineProperty(W2,"__esModule",{value:!0});var L2=sg(),j2=wo(),pSt=OCe(),ESt=yBA(),fSt=UBA(),BSt=JBA(),hSt=XBA(),QSt=$BA(),mSt=thA(),DSt=ahA(),_St=kK(),wSt=ohA(),vSt=dhA(),ySt=fhA(),CSt=hhA(),ISt=mhA(),bSt=FBA(),nIe=[new L2.Integrations.InboundFilters,new L2.Integrations.FunctionToString,new fSt.Console,new BSt.Http,new CSt.Undici,new hSt.OnUncaughtException,new QSt.OnUnhandledRejection,new _St.ContextLines,new ySt.LocalVariables,new wSt.Context,new DSt.Modules,new vSt.RequestData,new mSt.LinkedErrors];function OSt(A={}){let r=L2.getMainCarrier();pSt.setNodeAsyncContextStrategy();let t=dSt([r,"access",s=>s.__SENTRY__,"optionalAccess",s=>s.integrations])||[];A.defaultIntegrations=A.defaultIntegrations===!1?[]:[...Array.isArray(A.defaultIntegrations)?A.defaultIntegrations:nIe,...t],A.dsn===void 0&&process.env.SENTRY_DSN&&(A.dsn=process.env.SENTRY_DSN);let i=process.env.SENTRY_TRACES_SAMPLE_RATE;if(A.tracesSampleRate===void 0&&i){let s=parseFloat(i);isFinite(s)&&(A.tracesSampleRate=s)}if(A.release===void 0){let s=aIe();s!==void 0?A.release=s:A.autoSessionTracking=!1}A.environment===void 0&&process.env.SENTRY_ENVIRONMENT&&(A.environment=process.env.SENTRY_ENVIRONMENT),A.autoSessionTracking===void 0&&A.dsn!==void 0&&(A.autoSessionTracking=!0),A.instrumenter===void 0&&(A.instrumenter="sentry");let o={...A,stackParser:j2.stackParserFromStackParserOptions(A.stackParser||oIe),integrations:L2.getIntegrationsToSetup(A),transport:A.transport||bSt.makeNodeTransport};L2.initAndBind(A.clientClass||ESt.NodeClient,o),A.autoSessionTracking&&kSt(),xSt()}function MSt(A){if(A===void 0)return!1;let r=A&&A.getOptions();return r&&r.autoSessionTracking!==void 0?r.autoSessionTracking:!1}function aIe(A){return process.env.SENTRY_RELEASE?process.env.SENTRY_RELEASE:j2.GLOBAL_OBJ.SENTRY_RELEASE&&j2.GLOBAL_OBJ.SENTRY_RELEASE.id?j2.GLOBAL_OBJ.SENTRY_RELEASE.id:process.env.GITHUB_SHA||process.env.COMMIT_REF||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA||A}var oIe=j2.createStackParser(j2.nodeStackLineParser(ISt.getModuleFromFilename));function kSt(){let A=L2.getCurrentHub();A.startSession(),process.on("beforeExit",()=>{let r=A.getScope().getSession();r&&!["exited","crashed"].includes(r.status)&&A.endSession()})}function xSt(){let A=(process.env.SENTRY_USE_ENVIRONMENT||"").toLowerCase();if(!["false","n","no","off","0"].includes(A)){let r=process.env.SENTRY_TRACE,t=process.env.SENTRY_BAGGAGE,{propagationContext:i}=j2.tracingContextFromHeaders(r,t);L2.getCurrentHub().getScope().setPropagationContext(i)}}W2.defaultIntegrations=nIe;W2.defaultStackParser=oIe;W2.getSentryRelease=aIe;W2.init=OSt;W2.isAutoSessionTrackingEnabled=MSt});var sIe=GA(whA=>{Object.defineProperty(whA,"__esModule",{value:!0});var UK=require("fs"),_hA=require("path");function HSt(A){let r=_hA.resolve(A);if(!UK.existsSync(r))throw new Error(`Cannot read contents of ${r}. Directory does not exist.`);if(!UK.statSync(r).isDirectory())throw new Error(`Cannot read contents of ${r}, because it is not a directory.`);let t=i=>UK.readdirSync(i).reduce((o,s)=>{let g=_hA.join(i,s);return UK.statSync(g).isDirectory()?o.concat(t(g)):(o.push(g),o)},[]);return t(r).map(i=>_hA.relative(r,i))}whA.deepReadDirSync=HSt});var lIe=GA(LK=>{Object.defineProperty(LK,"__esModule",{value:!0});var cIe=fx();function SSt(A,r){return cIe.extractRequestData(A,{include:r})}function FSt(A,r,t={}){return cIe.addRequestDataToEvent(A,r,{include:t})}LK.extractRequestData=SSt;LK.parseRequest=FSt});var gIe=GA(rv=>{var{_optionalChain:e7}=pd();Object.defineProperty(rv,"__esModule",{value:!0});var tm=sg(),ev=wo(),RSt=fx(),jK=DhA(),uIe=lIe();function TSt(){return function(r,t,i){let o=tm.getCurrentHub(),s=e7([o,"access",k=>k.getClient,"call",k=>k(),"optionalAccess",k=>k.getOptions,"call",k=>k()]);if(!s||s.instrumenter!=="sentry"||e7([r,"access",k=>k.method,"optionalAccess",k=>k.toUpperCase,"call",k=>k()])==="OPTIONS"||e7([r,"access",k=>k.method,"optionalAccess",k=>k.toUpperCase,"call",k=>k()])==="HEAD")return i();let g=r.headers&&ev.isString(r.headers["sentry-trace"])?r.headers["sentry-trace"]:void 0,E=e7([r,"access",k=>k.headers,"optionalAccess",k=>k.baggage]),{traceparentData:p,dynamicSamplingContext:B,propagationContext:m}=ev.tracingContextFromHeaders(g,E);if(o.getScope().setPropagationContext(m),!tm.hasTracingEnabled(s))return i();let[_,x]=ev.extractPathForTransaction(r,{path:!0,method:!0}),O=tm.startTransaction({name:_,op:"http.server",origin:"auto.http.node.tracingHandler",...p,metadata:{dynamicSamplingContext:p&&!B?{}:B,request:r,source:x}},{request:RSt.extractRequestData(r)});o.configureScope(k=>{k.setSpan(O)}),t.__sentry_transaction=O,t.once("finish",()=>{setImmediate(()=>{ev.addRequestDataToTransaction(O,r),O.setHttpStatus(t.statusCode),O.finish()})}),i()}}function NSt(A={}){let r;if("include"in A)r={include:A.include};else{let{ip:t,request:i,transaction:o,user:s}=A;(t||i||o||s)&&(r={include:ev.dropUndefinedKeys({ip:t,request:i,transaction:o,user:s})})}return r}function PSt(A){let r=NSt(A),t=tm.getCurrentHub(),i=t.getClient();if(i&&jK.isAutoSessionTrackingEnabled(i)){i.initSessionFlusher();let o=t.getScope();o.getSession()&&o.setSession()}return function(s,g,E){if(A&&A.flushTimeout&&A.flushTimeout>0){let p=g.end;g.end=function(B,m,_){tm.flush(A.flushTimeout).then(()=>{p.call(this,B,m,_)}).then(null,x=>{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&ev.logger.error(x),p.call(this,B,m,_)})}}tm.runWithAsyncContext(()=>{let p=tm.getCurrentHub();p.configureScope(B=>{B.setSDKProcessingMetadata({request:s,requestDataOptionsFromExpressHandler:r});let m=p.getClient();if(jK.isAutoSessionTrackingEnabled(m)){let _=p.getScope();_&&_.setRequestSession({status:"ok"})}}),g.once("finish",()=>{let B=p.getClient();jK.isAutoSessionTrackingEnabled(B)&&setImmediate(()=>{B&&B._captureRequestSession&&B._captureRequestSession()})}),E()})}}function GSt(A){let r=A.status||A.statusCode||A.status_code||A.output&&A.output.statusCode;return r?parseInt(r,10):500}function YSt(A){return GSt(A)>=500}function USt(A){return function(t,i,o,s){if((A&&A.shouldHandleError||YSt)(t)){tm.withScope(E=>{E.setSDKProcessingMetadata({request:i});let p=o.__sentry_transaction;p&&E.getSpan()===void 0&&E.setSpan(p);let B=tm.getCurrentHub().getClient();if(B&&jK.isAutoSessionTrackingEnabled(B)&&B._sessionFlusher!==void 0){let x=E.getRequestSession();x&&x.status!==void 0&&(x.status="crashed")}E.addEventProcessor(_=>(ev.addExceptionMechanism(_,{type:"middleware",handled:!1}),_));let m=tm.captureException(t);o.sentry=m,s(t)});return}s(t)}}function LSt(A={}){return function({path:r,type:t,next:i,rawInput:o}){let s=tm.getCurrentHub(),g=e7([s,"access",p=>p.getClient,"call",p=>p(),"optionalAccess",p=>p.getOptions,"call",p=>p()]),E=s.getScope().getTransaction();if(E){E.setName(`trpc/${r}`,"route"),E.op="rpc.server";let p={procedure_type:t};(A.attachRpcInput!==void 0?A.attachRpcInput:e7([g,"optionalAccess",B=>B.sendDefaultPii]))&&(p.input=ev.normalize(o)),E.setContext("trpc",p)}return i()}}rv.extractRequestData=uIe.extractRequestData;rv.parseRequest=uIe.parseRequest;rv.errorHandler=USt;rv.requestHandler=PSt;rv.tracingHandler=TSt;rv.trpcMiddleware=LSt});var dIe=GA(Xh=>{Object.defineProperty(Xh,"__esModule",{value:!0});var jSt=UBA(),WSt=JBA(),JSt=XBA(),qSt=$BA(),VSt=thA(),zSt=ahA(),KSt=kK(),XSt=ohA(),ZSt=dhA(),$St=fhA(),AFt=hhA();Xh.Console=jSt.Console;Xh.Http=WSt.Http;Xh.OnUncaughtException=JSt.OnUncaughtException;Xh.OnUnhandledRejection=qSt.OnUnhandledRejection;Xh.LinkedErrors=VSt.LinkedErrors;Xh.Modules=zSt.Modules;Xh.ContextLines=KSt.ContextLines;Xh.Context=XSt.Context;Xh.RequestData=ZSt.RequestData;Xh.LocalVariables=$St.LocalVariables;Xh.Undici=AFt.Undici});var pIe=GA(BD=>{Object.defineProperty(BD,"__esModule",{value:!0});var J2=QBA();BD.Apollo=J2.Apollo;BD.Express=J2.Express;BD.GraphQL=J2.GraphQL;BD.Mongo=J2.Mongo;BD.Mysql=J2.Mysql;BD.Postgres=J2.Postgres;BD.Prisma=J2.Prisma});var EIe=GA(us=>{Object.defineProperty(us,"__esModule",{value:!0});var yc=sg(),eFt=cCe(),rFt=yBA(),tFt=FBA(),WK=DhA(),vhA=fx(),iFt=sIe(),nFt=mhA(),aFt=gIe(),oFt=dIe(),sFt=pIe(),cFt={...yc.Integrations,...oFt,...sFt};us.Hub=yc.Hub;us.SDK_VERSION=yc.SDK_VERSION;us.Scope=yc.Scope;us.addBreadcrumb=yc.addBreadcrumb;us.addGlobalEventProcessor=yc.addGlobalEventProcessor;us.captureCheckIn=yc.captureCheckIn;us.captureEvent=yc.captureEvent;us.captureException=yc.captureException;us.captureMessage=yc.captureMessage;us.close=yc.close;us.configureScope=yc.configureScope;us.createTransport=yc.createTransport;us.extractTraceparentData=yc.extractTraceparentData;us.flush=yc.flush;us.getActiveSpan=yc.getActiveSpan;us.getActiveTransaction=yc.getActiveTransaction;us.getCurrentHub=yc.getCurrentHub;us.getHubFromCarrier=yc.getHubFromCarrier;us.lastEventId=yc.lastEventId;us.makeMain=yc.makeMain;us.runWithAsyncContext=yc.runWithAsyncContext;us.setContext=yc.setContext;us.setExtra=yc.setExtra;us.setExtras=yc.setExtras;us.setMeasurement=yc.setMeasurement;us.setTag=yc.setTag;us.setTags=yc.setTags;us.setUser=yc.setUser;us.spanStatusfromHttpCode=yc.spanStatusfromHttpCode;us.startActiveSpan=yc.startActiveSpan;us.startSpan=yc.startSpan;us.startTransaction=yc.startTransaction;us.trace=yc.trace;us.withScope=yc.withScope;us.autoDiscoverNodePerformanceMonitoringIntegrations=eFt.autoDiscoverNodePerformanceMonitoringIntegrations;us.NodeClient=rFt.NodeClient;us.makeNodeTransport=tFt.makeNodeTransport;us.defaultIntegrations=WK.defaultIntegrations;us.defaultStackParser=WK.defaultStackParser;us.getSentryRelease=WK.getSentryRelease;us.init=WK.init;us.DEFAULT_USER_INCLUDES=vhA.DEFAULT_USER_INCLUDES;us.addRequestDataToEvent=vhA.addRequestDataToEvent;us.extractRequestData=vhA.extractRequestData;us.deepReadDirSync=iFt.deepReadDirSync;us.getModuleFromFilename=nFt.getModuleFromFilename;us.Handlers=aFt;us.Integrations=cFt});var yIe=GA((Zh,hx)=>{"use strict";var dt=Zh&&Zh.__spreadArray||function(A,r,t){if(t||arguments.length===2)for(var i=0,o=r.length,s;i0&&s[s.length-1])&&(B[0]===6||B[0]===2)){t=0;continue}if(B[0]===3&&(!s||B[1]>s[0]&&B[1]=0;Re--){var rr=ye(ie[Re],Re);if(rr)return rr}}A.forEachRight=o;function s(ie,ye){if(ie!==void 0)for(var Re=0;Re=0;rr--){var zr=ie[rr];if(ye(zr,rr))return zr}}A.findLast=k;function P(ie,ye,Re){if(ie===void 0)return-1;for(var rr=Re??0;rr=0;rr--)if(ye(ie[rr],rr))return rr;return-1}A.findLastIndex=H;function T(ie,ye){for(var Re=0;Re0;return!1}A.some=_A;function fA(ie,ye,Re){for(var rr,zr=0;zr0&&A.Debug.assertGreaterThanOrEqual(Re(ye[Ft],ye[Ft-1]),0);e:for(var Gt=zr;zrGt&&A.Debug.assertGreaterThanOrEqual(Re(ie[zr],ie[zr-1]),0),Re(ye[Ft],ie[zr])){case-1:rr.push(ye[Ft]);continue A;case 0:continue A;case 1:continue e}}return rr}A.relativeComplement=MA;function RA(ie,ye){for(var Re=0,rr=0,zr=ie;rr>1),gn=Re(ie[Tt],Tt);switch(rr(gn,ye)){case-1:Ft=Tt+1;break;case 0:return Tt;case 1:Gt=Tt-1;break}}return~Ft}A.binarySearchKey=PA;function we(ie,ye,Re,rr,zr){if(ie&&ie.length>0){var Ft=ie.length;if(Ft>0){var Gt=rr===void 0||rr<0?0:rr,Tt=zr===void 0||Gt+zr>Ft-1?Ft-1:Gt+zr,gn=void 0;for(arguments.length<=2?(gn=ie[Gt],Gt++):gn=Re;Gt<=Tt;)gn=ye(gn,ie[Gt],Gt),Gt++;return gn}}return Re}A.reduceLeft=we;var LA=Object.prototype.hasOwnProperty;function ae(ie,ye){return LA.call(ie,ye)}A.hasProperty=ae;function We(ie,ye){return LA.call(ie,ye)?ie[ye]:void 0}A.getProperty=We;function YA(ie){var ye=[];for(var Re in ie)LA.call(ie,Re)&&ye.push(Re);return ye}A.getOwnKeys=YA;function Ce(ie){var ye=[];do for(var Re=Object.getOwnPropertyNames(ie),rr=0,zr=Re;rr100&&Re>ye.length>>1){var Tt=ye.length-Re;ye.copyWithin(0,Re),ye.length=Tt,Re=0}return Gt}return{enqueue:zr,dequeue:Ft,isEmpty:rr}}A.createQueue=UA;function Ee(ie,ye){var Re=new A.Map,rr=0;function zr(){var Gt=Re.values(),Tt;return{next:function(){for(;;)if(Tt){var gn=Tt.next();if(!gn.done)return{value:gn.value};Tt=void 0}else{var gn=Gt.next();if(gn.done)return{value:void 0,done:!0};if(!de(gn.value))return{value:gn.value};Tt=De(gn.value)}}}}var Ft={has:function(Gt){var Tt=ie(Gt);if(!Re.has(Tt))return!1;var gn=Re.get(Tt);if(!de(gn))return ye(gn,Gt);for(var kn=0,ra=gn;knye?1:0)}A.compareStringsCaseInsensitive=Sr;function Dr(ie,ye){return Ve(ie,ye)}A.compareStringsCaseSensitive=Dr;function Jr(ie){return ie?Sr:Dr}A.getStringComparer=Jr;var Yr=function(){var ie,ye,Re=Tt();return gn;function rr(kn,ra,Vn){if(kn===ra)return 0;if(kn===void 0)return-1;if(ra===void 0)return 1;var ba=Vn(kn,ra);return ba<0?-1:ba>0?1:0}function zr(kn){var ra=new Intl.Collator(kn,{usage:"sort",sensitivity:"variant"}).compare;return function(Vn,ba){return rr(Vn,ba,ra)}}function Ft(kn){if(kn!==void 0)return Gt();return function(Vn,ba){return rr(Vn,ba,ra)};function ra(Vn,ba){return Vn.localeCompare(ba)}}function Gt(){return function(Vn,ba){return rr(Vn,ba,kn)};function kn(Vn,ba){return ra(Vn.toUpperCase(),ba.toUpperCase())||ra(Vn,ba)}function ra(Vn,ba){return Vnba?1:0}}function Tt(){return typeof Intl=="object"&&typeof Intl.Collator=="function"?zr:typeof String.prototype.localeCompare=="function"&&typeof String.prototype.toLocaleUpperCase=="function"&&"a".localeCompare("B")<0?Ft:Gt}function gn(kn){return kn===void 0?ie||(ie=Re(kn)):kn==="en-US"?ye||(ye=Re(kn)):Re(kn)}}(),rt,Bt;function le(){return Bt}A.getUILocale=le;function Ir(ie){Bt!==ie&&(Bt=ie,rt=void 0)}A.setUILocale=Ir;function ut(ie,ye){var Re=rt||(rt=Yr(Bt));return Re(ie,ye)}A.compareStringsCaseSensitiveUI=ut;function Ii(ie,ye,Re,rr){return ie===ye?0:ie===void 0?-1:ye===void 0?1:rr(ie[Re],ye[Re])}A.compareProperties=Ii;function Zi(ie,ye){return XA(ie?1:0,ye?1:0)}A.compareBooleans=Zi;function yi(ie,ye,Re){for(var rr=Math.max(2,Math.floor(ie.length*.34)),zr=Math.floor(ie.length*.4)+1,Ft,Gt=0,Tt=ye;GtRe?Gt-Re:1),kn=Math.floor(ye.length>Re+Gt?Re+Gt:ye.length);zr[0]=Gt;for(var ra=Gt,Vn=1;VnRe)return;var Qs=rr;rr=zr,zr=Qs}var Gs=rr[ye.length];return Gs>Re?void 0:Gs}function cn(ie,ye){var Re=ie.length-ye.length;return Re>=0&&ie.indexOf(ye,Re)===Re}A.endsWith=cn;function Ui(ie,ye){return cn(ie,ye)?ie.slice(0,ie.length-ye.length):ie}A.removeSuffix=Ui;function Mi(ie,ye){return cn(ie,ye)?ie.slice(0,ie.length-ye.length):void 0}A.tryRemoveSuffix=Mi;function yt(ie,ye){return ie.indexOf(ye)!==-1}A.stringContains=yt;function Ya(ie){for(var ye=ie.length,Re=ye-1;Re>0;Re--){var rr=ie.charCodeAt(Re);if(rr>=48&&rr<=57)do--Re,rr=ie.charCodeAt(Re);while(Re>0&&rr>=48&&rr<=57);else if(Re>4&&(rr===110||rr===78)){if(--Re,rr=ie.charCodeAt(Re),rr!==105&&rr!==73||(--Re,rr=ie.charCodeAt(Re),rr!==109&&rr!==77))break;--Re,rr=ie.charCodeAt(Re)}else break;if(rr!==45&&rr!==46)break;ye=Re}return ye===ie.length?ie:ie.slice(0,ye)}A.removeMinAndVersionNumbers=Ya;function Wn(ie,ye){for(var Re=0;Rezr&&(zr=gn.prefix.length,rr=Tt)}return rr}A.findBestPatternMatch=ao;function Bo(ie,ye){return ie.lastIndexOf(ye,0)===0}A.startsWith=Bo;function Uo(ie,ye){return Bo(ie,ye)?ie.substr(ye.length):ie}A.removePrefix=Uo;function oo(ie,ye,Re){return Re===void 0&&(Re=lt),Bo(Re(ie),Re(ye))?ie.substring(ye.length):void 0}A.tryRemovePrefix=oo;function Xo(ie,ye){var Re=ie.prefix,rr=ie.suffix;return ye.length>=Re.length+rr.length&&Bo(ye,Re)&&cn(ye,rr)}A.isPatternMatch=Xo;function Bs(ie,ye){return function(Re){return ie(Re)&&ye(Re)}}A.and=Bs;function hs(){for(var ie=[],ye=0;ye=0&&A.isWhiteSpaceLike(ie.charCodeAt(ye));)ye--;return ie.slice(0,ye+1)}})(Oe||(Oe={}));var Oe;(function(A){var r;(function(i){i[i.Off=0]="Off",i[i.Error=1]="Error",i[i.Warning=2]="Warning",i[i.Info=3]="Info",i[i.Verbose=4]="Verbose"})(r=A.LogLevel||(A.LogLevel={}));var t;(function(i){var o,s=0;i.currentLogLevel=r.Warning,i.isDebugging=!1,i.enableDeprecationWarnings=!0;function g(){return o??(o=new A.Version(A.version))}i.getTypeScriptVersion=g;function E(Me){return i.currentLogLevel<=Me}i.shouldLog=E;function p(Me,Le){i.loggingHost&&E(Me)&&i.loggingHost.log(Me,Le)}function B(Me){p(r.Info,Me)}i.log=B,function(Me){function Le($e){p(r.Error,$e)}Me.error=Le;function ir($e){p(r.Warning,$e)}Me.warn=ir;function Ye($e){p(r.Info,$e)}Me.log=Ye;function mr($e){p(r.Verbose,$e)}Me.trace=mr}(B=i.log||(i.log={}));var m={};function _(){return s}i.getAssertionLevel=_;function x(Me){var Le=s;if(s=Me,Me>Le)for(var ir=0,Ye=A.getOwnKeys(m);ir=$e.level&&(i[mr]=$e,m[mr]=void 0)}}i.setAssertionLevel=x;function O(Me){return s>=Me}i.shouldAssert=O;function k(Me,Le){return O(Me)?!0:(m[Le]={level:Me,assertion:i[Le]},i[Le]=A.noop,!1)}function P(Me,Le){debugger;var ir=new Error(Me?"Debug Failure. ".concat(Me):"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(ir,Le||P),ir}i.fail=P;function H(Me,Le,ir){return P("".concat(Le||"Unexpected node.",`\r -Node `).concat(CA(Me.kind)," was unexpected."),ir||H)}i.failBadSyntaxKind=H;function T(Me,Le,ir,Ye){Me||(Le=Le?"False expression: ".concat(Le):"False expression.",ir&&(Le+=`\r -Verbose Debug Information: `+(typeof ir=="string"?ir:ir())),P(Le,Ye||T))}i.assert=T;function v(Me,Le,ir,Ye,mr){if(Me!==Le){var $e=ir?Ye?"".concat(ir," ").concat(Ye):ir:"";P("Expected ".concat(Me," === ").concat(Le,". ").concat($e),mr||v)}}i.assertEqual=v;function F(Me,Le,ir,Ye){Me>=Le&&P("Expected ".concat(Me," < ").concat(Le,". ").concat(ir||""),Ye||F)}i.assertLessThan=F;function y(Me,Le,ir){Me>Le&&P("Expected ".concat(Me," <= ").concat(Le),ir||y)}i.assertLessThanOrEqual=y;function S(Me,Le,ir){Me= ").concat(Le),ir||S)}i.assertGreaterThanOrEqual=S;function U(Me,Le,ir){Me==null&&P(Le,ir||U)}i.assertIsDefined=U;function V(Me,Le,ir){return U(Me,Le,ir||V),Me}i.checkDefined=V;function wA(Me,Le,ir){for(var Ye=0,mr=Me;Ye0&&Ye[0][0]===0?Ye[0][1]:"0";if(ir){for(var mr=[],$e=Me,xr=0,PA=Ye;xrMe)break;LA!==0&&LA&Me&&(mr.push(ae),$e&=~LA)}if($e===0)return mr.join("|")}else for(var We=0,YA=Ye;We=0;return we?VA(Me,$e,PA,Le.message):LA?De(Me,$e,PA,Le.message):A.noop}i.createDeprecation=_e;function Ae(Me,Le){return function(){return Me(),Le.apply(this,arguments)}}function Q(Me,Le){var ir,Ye=_e((ir=Le?.name)!==null&&ir!==void 0?ir:K(Me),Le);return Ae(Ye,Me)}i.deprecate=Q;function Ze(Me){var Le=Me&7,ir=Le===0?"in out":Le===3?"[bivariant]":Le===2?"in":Le===1?"out":Le===4?"[independent]":"";return Me&8?ir+=" (unmeasurable)":Me&16&&(ir+=" (unreliable)"),ir}i.formatVariance=Ze;var Cr=function(){function Me(){}return Me.prototype.__debugToString=function(){var Le;switch(this.kind){case 3:return((Le=this.debugInfo)===null||Le===void 0?void 0:Le.call(this))||"(function mapper)";case 0:return"".concat(this.source.__debugTypeToString()," -> ").concat(this.target.__debugTypeToString());case 1:return A.zipWith(this.sources,this.targets||A.map(this.sources,function(){return"any"}),function(ir,Ye){return"".concat(ir.__debugTypeToString()," -> ").concat(typeof Ye=="string"?Ye:Ye.__debugTypeToString())}).join(", ");case 2:return A.zipWith(this.sources,this.targets,function(ir,Ye){return"".concat(ir.__debugTypeToString()," -> ").concat(Ye().__debugTypeToString())}).join(", ");case 5:case 4:return"m1: ".concat(this.mapper1.__debugToString().split(` -`).join(` - `),` -m2: `).concat(this.mapper2.__debugToString().split(` -`).join(` - `));default:return pA(this)}},Me}();i.DebugTypeMapper=Cr;function be(Me){return i.isDebugging?Object.setPrototypeOf(Me,Cr.prototype):Me}i.attachDebugPrototypeIfDebug=be})(t=A.Debug||(A.Debug={}))})(Oe||(Oe={}));var Oe;(function(A){var r=/^(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,t=/^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)(?:\.(?:0|[1-9]\d*|[a-z-][a-z0-9-]*))*$/i,i=/^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)$/i,o=/^[a-z0-9-]+(?:\.[a-z0-9-]+)*$/i,s=/^[a-z0-9-]+$/i,g=/^(0|[1-9]\d*)$/,E=function(){function cA(eA,Y,q,X,Z){if(Y===void 0&&(Y=0),q===void 0&&(q=0),X===void 0&&(X=""),Z===void 0&&(Z=""),typeof eA=="string"){var K=A.Debug.checkDefined(p(eA),"Invalid version");eA=K.major,Y=K.minor,q=K.patch,X=K.prerelease,Z=K.build}A.Debug.assert(eA>=0,"Invalid argument: major"),A.Debug.assert(Y>=0,"Invalid argument: minor"),A.Debug.assert(q>=0,"Invalid argument: patch");var J=X?A.isArray(X)?X:X.split("."):A.emptyArray,sA=Z?A.isArray(Z)?Z:Z.split("."):A.emptyArray;A.Debug.assert(A.every(J,function(uA){return i.test(uA)}),"Invalid argument: prerelease"),A.Debug.assert(A.every(sA,function(uA){return s.test(uA)}),"Invalid argument: build"),this.major=eA,this.minor=Y,this.patch=q,this.prerelease=J,this.build=sA}return cA.tryParse=function(eA){var Y=p(eA);if(Y){var q=Y.major,X=Y.minor,Z=Y.patch,K=Y.prerelease,J=Y.build;return new cA(q,X,Z,K,J)}},cA.prototype.compareTo=function(eA){return this===eA?0:eA===void 0?1:A.compareValues(this.major,eA.major)||A.compareValues(this.minor,eA.minor)||A.compareValues(this.patch,eA.patch)||B(this.prerelease,eA.prerelease)},cA.prototype.increment=function(eA){switch(eA){case"major":return new cA(this.major+1,0,0);case"minor":return new cA(this.major,this.minor+1,0);case"patch":return new cA(this.major,this.minor,this.patch+1);default:return A.Debug.assertNever(eA)}},cA.prototype.with=function(eA){var Y=eA.major,q=Y===void 0?this.major:Y,X=eA.minor,Z=X===void 0?this.minor:X,K=eA.patch,J=K===void 0?this.patch:K,sA=eA.prerelease,uA=sA===void 0?this.prerelease:sA,BA=eA.build,CA=BA===void 0?this.build:BA;return new cA(q,Z,J,uA,CA)},cA.prototype.toString=function(){var eA="".concat(this.major,".").concat(this.minor,".").concat(this.patch);return A.some(this.prerelease)&&(eA+="-".concat(this.prerelease.join("."))),A.some(this.build)&&(eA+="+".concat(this.build.join("."))),eA},cA.zero=new cA(0,0,0,["0"]),cA}();A.Version=E;function p(cA){var eA=r.exec(cA);if(eA){var Y=eA[1],q=eA[2],X=q===void 0?"0":q,Z=eA[3],K=Z===void 0?"0":Z,J=eA[4],sA=J===void 0?"":J,uA=eA[5],BA=uA===void 0?"":uA;if(!(sA&&!t.test(sA))&&!(BA&&!o.test(BA)))return{major:parseInt(Y,10),minor:parseInt(X,10),patch:parseInt(K,10),prerelease:sA,build:BA}}}function B(cA,eA){if(cA===eA)return 0;if(cA.length===0)return eA.length===0?0:1;if(eA.length===0)return-1;for(var Y=Math.min(cA.length,eA.length),q=0;q|>=|=)?\s*([a-z0-9-+.*]+)$/i;function H(cA){for(var eA=[],Y=0,q=A.trimString(cA).split(_);Y=",q.version)),y(X.major)||Y.push(y(X.minor)?S("<",X.version.increment("major")):y(X.patch)?S("<",X.version.increment("minor")):S("<=",X.version)),!0):!1}function F(cA,eA,Y){var q=T(eA);if(!q)return!1;var X=q.version,Z=q.major,K=q.minor,J=q.patch;if(y(Z))(cA==="<"||cA===">")&&Y.push(S("<",E.zero));else switch(cA){case"~":Y.push(S(">=",X)),Y.push(S("<",X.increment(y(K)?"major":"minor")));break;case"^":Y.push(S(">=",X)),Y.push(S("<",X.increment(X.major>0||y(K)?"major":X.minor>0||y(J)?"minor":"patch")));break;case"<":case">=":Y.push(y(K)||y(J)?S(cA,X.with({prerelease:"0"})):S(cA,X));break;case"<=":case">":Y.push(y(K)?S(cA==="<="?"<":">=",X.increment("major").with({prerelease:"0"})):y(J)?S(cA==="<="?"<":">=",X.increment("minor").with({prerelease:"0"})):S(cA,X));break;case"=":case void 0:y(K)||y(J)?(Y.push(S(">=",X.with({prerelease:"0"}))),Y.push(S("<",X.increment(y(K)?"major":"minor").with({prerelease:"0"})))):Y.push(S("=",X));break;default:return!1}return!0}function y(cA){return cA==="*"||cA==="x"||cA==="X"}function S(cA,eA){return{operator:cA,operand:eA}}function U(cA,eA){if(eA.length===0)return!0;for(var Y=0,q=eA;Y":return q>0;case">=":return q>=0;case"=":return q===0;default:return A.Debug.assertNever(eA)}}function IA(cA){return A.map(cA,pA).join(" || ")||"*"}function pA(cA){return A.map(cA,oA).join(" ")}function oA(cA){return"".concat(cA.operator).concat(cA.operand)}})(Oe||(Oe={}));var Oe;(function(A){function r(E,p){return typeof E=="object"&&typeof E.timeOrigin=="number"&&typeof E.mark=="function"&&typeof E.measure=="function"&&typeof E.now=="function"&&typeof E.clearMarks=="function"&&typeof E.clearMeasures=="function"&&typeof p=="function"}function t(){if(typeof performance=="object"&&typeof PerformanceObserver=="function"&&r(performance,PerformanceObserver))return{shouldWriteNativeEvents:!0,performance,PerformanceObserver}}function i(){if(typeof process<"u"&&process.nextTick&&!process.browser&&typeof hx=="object"&&typeof require=="function")try{var E,p=require("perf_hooks"),B=p.performance,m=p.PerformanceObserver;if(r(B,m)){E=B;var _=new A.Version(process.versions.node),x=new A.VersionRange("<12.16.3 || 13 <13.13");return x.test(_)&&(E={get timeOrigin(){return B.timeOrigin},now:function(){return B.now()},mark:function(O){return B.mark(O)},measure:function(O,k,P){k===void 0&&(k="nodeStart"),P===void 0&&(P="__performance.measure-fix__",B.mark(P)),B.measure(O,k,P),P==="__performance.measure-fix__"&&B.clearMarks("__performance.measure-fix__")},clearMarks:function(O){return B.clearMarks(O)},clearMeasures:function(O){return B.clearMeasures(O)}}),{shouldWriteNativeEvents:!1,performance:E,PerformanceObserver:m}}}catch{}}var o=t()||i(),s=o?.performance;function g(){return o}A.tryGetNativePerformanceHooks=g,A.timestamp=s?function(){return s.now()}:Date.now?Date.now:function(){return+new Date}})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i,o;function s(V,wA,IA,pA){return V?g(wA,IA,pA):t.nullTimer}t.createTimerIf=s;function g(V,wA,IA){var pA=0;return{enter:oA,exit:cA};function oA(){++pA===1&&x(wA)}function cA(){--pA===0?(x(IA),O(V,wA,IA)):pA<0&&A.Debug.fail("enter/exit count does not match.")}}t.createTimer=g,t.nullTimer={enter:A.noop,exit:A.noop};var E=!1,p=A.timestamp(),B=new A.Map,m=new A.Map,_=new A.Map;function x(V){var wA;if(E){var IA=(wA=m.get(V))!==null&&wA!==void 0?wA:0;m.set(V,IA+1),B.set(V,A.timestamp()),o?.mark(V)}}t.mark=x;function O(V,wA,IA){var pA,oA;if(E){var cA=(pA=IA!==void 0?B.get(IA):void 0)!==null&&pA!==void 0?pA:A.timestamp(),eA=(oA=wA!==void 0?B.get(wA):void 0)!==null&&oA!==void 0?oA:p,Y=_.get(V)||0;_.set(V,Y+(cA-eA)),o?.measure(V,wA,IA)}}t.measure=O;function k(V){return m.get(V)||0}t.getCount=k;function P(V){return _.get(V)||0}t.getDuration=P;function H(V){_.forEach(function(wA,IA){return V(IA,wA)})}t.forEachMeasure=H;function T(V){B.forEach(function(wA,IA){return V(IA)})}t.forEachMark=T;function v(V){V!==void 0?_.delete(V):_.clear(),o?.clearMeasures(V)}t.clearMeasures=v;function F(V){V!==void 0?(m.delete(V),B.delete(V)):(m.clear(),B.clear()),o?.clearMarks(V)}t.clearMarks=F;function y(){return E}t.isEnabled=y;function S(V){var wA;return V===void 0&&(V=A.sys),E||(E=!0,i||(i=A.tryGetNativePerformanceHooks()),i&&(p=i.performance.timeOrigin,(i.shouldWriteNativeEvents||!((wA=V?.cpuProfilingEnabled)===null||wA===void 0)&&wA.call(V)||V?.debugMode)&&(o=i.performance))),!0}t.enable=S;function U(){E&&(B.clear(),m.clear(),_.clear(),o=void 0,E=!1)}t.disable=U})(r=A.performance||(A.performance={}))})(Oe||(Oe={}));var Oe;(function(A){var r,t={logEvent:A.noop,logErrEvent:A.noop,logPerfEvent:A.noop,logInfoEvent:A.noop,logStartCommand:A.noop,logStopCommand:A.noop,logStartUpdateProgram:A.noop,logStopUpdateProgram:A.noop,logStartUpdateGraph:A.noop,logStopUpdateGraph:A.noop,logStartResolveModule:A.noop,logStopResolveModule:A.noop,logStartParseSourceFile:A.noop,logStopParseSourceFile:A.noop,logStartReadFile:A.noop,logStopReadFile:A.noop,logStartBindFile:A.noop,logStopBindFile:A.noop,logStartScheduledOperation:A.noop,logStopScheduledOperation:A.noop},i;try{var o=(r=process.env.TS_ETW_MODULE_PATH)!==null&&r!==void 0?r:"./node_modules/@microsoft/typescript-etw";i=require(o)}catch{i=void 0}A.perfLogger=i&&i.logEvent?i:t})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i,o=0,s=0,g,E=[],p,B=[];function m(IA,pA,oA){if(A.Debug.assert(!A.tracing,"Tracing already started"),i===void 0)try{i=require("fs")}catch(X){throw new Error(`tracing requires having fs -(original error: `.concat(X.message||X,")"))}g=IA,E.length=0,p===void 0&&(p=A.combinePaths(pA,"legend.json")),i.existsSync(pA)||i.mkdirSync(pA,{recursive:!0});var cA=g==="build"?".".concat(process.pid,"-").concat(++o):g==="server"?".".concat(process.pid):"",eA=A.combinePaths(pA,"trace".concat(cA,".json")),Y=A.combinePaths(pA,"types".concat(cA,".json"));B.push({configFilePath:oA,tracePath:eA,typesPath:Y}),s=i.openSync(eA,"w"),A.tracing=t;var q={cat:"__metadata",ph:"M",ts:1e3*A.timestamp(),pid:1,tid:1};i.writeSync(s,`[ -`+[pi({name:"process_name",args:{name:"tsc"}},q),pi({name:"thread_name",args:{name:"Main"}},q),pi(pi({name:"TracingStartedInBrowser"},q),{cat:"disabled-by-default-devtools.timeline"})].map(function(X){return JSON.stringify(X)}).join(`, -`))}t.startTracing=m;function _(){A.Debug.assert(A.tracing,"Tracing is not in progress"),A.Debug.assert(!!E.length==(g!=="server")),i.writeSync(s,` -] -`),i.closeSync(s),A.tracing=void 0,E.length?V(E):B[B.length-1].typesPath=void 0}t.stopTracing=_;function x(IA){g!=="server"&&E.push(IA)}t.recordType=x;var O;(function(IA){IA.Parse="parse",IA.Program="program",IA.Bind="bind",IA.Check="check",IA.CheckTypes="checkTypes",IA.Emit="emit",IA.Session="session"})(O=t.Phase||(t.Phase={}));function k(IA,pA,oA){S("I",IA,pA,oA,'"s":"g"')}t.instant=k;var P=[];function H(IA,pA,oA,cA){cA===void 0&&(cA=!1),cA&&S("B",IA,pA,oA),P.push({phase:IA,name:pA,args:oA,time:1e3*A.timestamp(),separateBeginAndEnd:cA})}t.push=H;function T(IA){A.Debug.assert(P.length>0),y(P.length-1,1e3*A.timestamp(),IA),P.length--}t.pop=T;function v(){for(var IA=1e3*A.timestamp(),pA=P.length-1;pA>=0;pA--)y(pA,IA);P.length=0}t.popAll=v;var F=1e3*10;function y(IA,pA,oA){var cA=P[IA],eA=cA.phase,Y=cA.name,q=cA.args,X=cA.time,Z=cA.separateBeginAndEnd;Z?(A.Debug.assert(!oA,"`results` are not supported for events with `separateBeginAndEnd`"),S("E",eA,Y,q,void 0,pA)):F-X%F<=pA-X&&S("X",eA,Y,pi(pi({},q),{results:oA}),'"dur":'.concat(pA-X),X)}function S(IA,pA,oA,cA,eA,Y){Y===void 0&&(Y=1e3*A.timestamp()),!(g==="server"&&pA==="checkTypes")&&(A.performance.mark("beginTracing"),i.writeSync(s,`, -{"pid":1,"tid":1,"ph":"`.concat(IA,'","cat":"').concat(pA,'","ts":').concat(Y,',"name":"').concat(oA,'"')),eA&&i.writeSync(s,",".concat(eA)),cA&&i.writeSync(s,',"args":'.concat(JSON.stringify(cA))),i.writeSync(s,"}"),A.performance.mark("endTracing"),A.performance.measure("Tracing","beginTracing","endTracing"))}function U(IA){var pA=A.getSourceFileOfNode(IA);return pA?{path:pA.path,start:oA(A.getLineAndCharacterOfPosition(pA,IA.pos)),end:oA(A.getLineAndCharacterOfPosition(pA,IA.end))}:void 0;function oA(cA){return{line:cA.line+1,character:cA.character+1}}}function V(IA){var pA,oA,cA,eA,Y,q,X,Z,K,J,sA,uA,BA,CA,z,AA,iA,_A,fA,M,aA,gA;A.performance.mark("beginDumpTypes");var QA=B[B.length-1].typesPath,mA=i.openSync(QA,"w"),FA=new A.Map;i.writeSync(mA,"[");for(var SA=IA.length,ce=0;ce"u")){var Y=process.version;if(Y){var q=Y.indexOf(".");if(q!==-1)return parseInt(Y.substring(1,q))}}}A.getNodeMajorVersion=cA,A.sys=function(){var Y="\uFEFF";function q(){var Z=/^native |^\([^)]+\)$|^(internal[\\/]|[a-zA-Z0-9_\s]+(\.js)?$)/,K=require("fs"),J=require("path"),sA=require("os"),uA;try{uA=require("crypto")}catch{uA=void 0}var BA,CA="./profile.cpuprofile",z=require("buffer").Buffer,AA=cA(),iA=AA>=4,_A=process.platform==="linux"||process.platform==="darwin",fA=sA.platform(),M=MA(),aA=K.realpathSync.native?process.platform==="win32"?Q:K.realpathSync.native:K.realpathSync,gA=iA&&(process.platform==="win32"||process.platform==="darwin"),QA=A.memoize(function(){return process.cwd()}),mA=pA({pollingWatchFileWorker:lA,getModifiedTime:Cr,setTimeout,clearTimeout,fsWatchWorker:tA,useCaseSensitiveFileNames:M,getCurrentDirectory:QA,fileSystemEntryExists:VA,fsSupportsRecursiveFsWatch:gA,getAccessibleSortedChildDirectories:function(ir){return bA(ir).directories},realpath:Ze,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY,inodeWatching:_A,sysLog:v}),FA=mA.watchFile,SA=mA.watchDirectory,ce={args:process.argv.slice(2),newLine:sA.EOL,useCaseSensitiveFileNames:M,write:function(ir){process.stdout.write(ir)},getWidthOfTerminal:function(){return process.stdout.columns},writeOutputIsTTY:function(){return process.stdout.isTTY},readFile:nA,writeFile:kA,watchFile:FA,watchDirectory:SA,resolvePath:function(ir){return J.resolve(ir)},fileExists:De,directoryExists:_e,createDirectory:function(ir){if(!ce.directoryExists(ir))try{K.mkdirSync(ir)}catch(Ye){if(Ye.code!=="EEXIST")throw Ye}},getExecutingFilePath:function(){return __filename},getCurrentDirectory:QA,getDirectories:Ae,getEnvironmentVariable:function(ir){return process.env[ir]||""},readDirectory:TA,getModifiedTime:Cr,setModifiedTime:be,deleteFile:Me,createHash:uA?Le:r,createSHA256Hash:uA?Le:void 0,getMemoryUsage:function(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize:function(ir){try{var Ye=re(ir);if(Ye?.isFile())return Ye.size}catch{}return 0},exit:function(ir){jA(function(){return process.exit(ir)})},enableCPUProfiler:KA,disableCPUProfiler:jA,cpuProfilingEnabled:function(){return!!BA||A.contains(process.execArgv,"--cpu-prof")||A.contains(process.execArgv,"--prof")},realpath:Ze,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||A.some(process.execArgv,function(ir){return/^--(inspect|debug)(-brk)?(=\d+)?$/i.test(ir)}),tryEnableSourceMapsForHost:function(){try{require("source-map-support").install()}catch{}},setTimeout,clearTimeout,clearScreen:function(){process.stdout.write("\x1Bc")},setBlocking:function(){process.stdout&&process.stdout._handle&&process.stdout._handle.setBlocking&&process.stdout._handle.setBlocking(!0)},bufferFrom:ue,base64decode:function(ir){return ue(ir,"base64").toString("utf8")},base64encode:function(ir){return ue(ir).toString("base64")},require:function(ir,Ye){try{var mr=A.resolveJSModule(Ye,ir,ce);return{module:require(mr),modulePath:mr,error:void 0}}catch($e){return{module:void 0,modulePath:void 0,error:$e}}}};return ce;function re(ir){return K.statSync(ir,{throwIfNoEntry:!1})}function KA(ir,Ye){if(BA)return Ye(),!1;var mr=require("inspector");if(!mr||!mr.Session)return Ye(),!1;var $e=new mr.Session;return $e.connect(),$e.post("Profiler.enable",function(){$e.post("Profiler.start",function(){BA=$e,CA=ir,Ye()})}),!0}function $A(ir){for(var Ye=0,mr=new A.Map,$e=A.normalizeSlashes(__dirname),xr="file://".concat(A.getRootLength($e)===1?"":"/").concat($e),PA=0,we=ir.nodes;PA=2&&mr[0]===254&&mr[1]===255){$e&=-2;for(var xr=0;xr<$e;xr+=2){var PA=mr[xr];mr[xr]=mr[xr+1],mr[xr+1]=PA}return mr.toString("utf16le",2)}return $e>=2&&mr[0]===255&&mr[1]===254?mr.toString("utf16le",2):$e>=3&&mr[0]===239&&mr[1]===187&&mr[2]===191?mr.toString("utf8",3):mr.toString("utf8")}function nA(ir,Ye){A.perfLogger.logStartReadFile(ir);var mr=N(ir,Ye);return A.perfLogger.logStopReadFile(),mr}function kA(ir,Ye,mr){A.perfLogger.logEvent("WriteFile: "+ir),mr&&(Ye=Y+Ye);var $e;try{$e=K.openSync(ir,"w"),K.writeSync($e,Ye,void 0,"utf8")}finally{$e!==void 0&&K.closeSync($e)}}function bA(ir){A.perfLogger.logEvent("ReadDir: "+(ir||"."));try{for(var Ye=K.readdirSync(ir||".",{withFileTypes:!0}),mr=[],$e=[],xr=0,PA=Ye;xr0}A.isRootedDiskPath=s;function g(KA){var $A=H(KA);return $A>0&&$A===KA.length}A.isDiskPathRoot=g;function E(KA){return H(KA)!==0}A.pathIsAbsolute=E;function p(KA){return/^\.\.?($|[\\/])/.test(KA)}A.pathIsRelative=p;function B(KA){return!E(KA)&&!p(KA)}A.pathIsBareSpecifier=B;function m(KA){return A.stringContains(F(KA),".")}A.hasExtension=m;function _(KA,$A){return KA.length>$A.length&&A.endsWith(KA,$A)}A.fileExtensionIs=_;function x(KA,$A){for(var jA=0,ue=$A;jA0&&i(KA.charCodeAt(KA.length-1))}A.hasTrailingDirectorySeparator=O;function k(KA){return KA>=97&&KA<=122||KA>=65&&KA<=90}function P(KA,$A){var jA=KA.charCodeAt($A);if(jA===58)return $A+1;if(jA===37&&KA.charCodeAt($A+1)===51){var ue=KA.charCodeAt($A+2);if(ue===97||ue===65)return $A+3}return-1}function H(KA){if(!KA)return 0;var $A=KA.charCodeAt(0);if($A===47||$A===92){if(KA.charCodeAt(1)!==$A)return 1;var jA=KA.indexOf($A===47?A.directorySeparator:A.altDirectorySeparator,2);return jA<0?KA.length:jA+1}if(k($A)&&KA.charCodeAt(1)===58){var ue=KA.charCodeAt(2);if(ue===47||ue===92)return 3;if(KA.length===2)return 2}var MA=KA.indexOf(r);if(MA!==-1){var RA=MA+r.length,lA=KA.indexOf(A.directorySeparator,RA);if(lA!==-1){var tA=KA.slice(0,MA),N=KA.slice(RA,lA);if(tA==="file"&&(N===""||N==="localhost")&&k(KA.charCodeAt(lA+1))){var nA=P(KA,lA+2);if(nA!==-1){if(KA.charCodeAt(nA)===47)return~(nA+1);if(nA===KA.length)return~nA}}return~(lA+1)}return~KA.length}return 0}function T(KA){var $A=H(KA);return $A<0?~$A:$A}A.getRootLength=T;function v(KA){KA=pA(KA);var $A=T(KA);return $A===KA.length?KA:(KA=sA(KA),KA.slice(0,Math.max($A,KA.lastIndexOf(A.directorySeparator))))}A.getDirectoryPath=v;function F(KA,$A,jA){KA=pA(KA);var ue=T(KA);if(ue===KA.length)return"";KA=sA(KA);var MA=KA.slice(Math.max(T(KA),KA.lastIndexOf(A.directorySeparator)+1)),RA=$A!==void 0&&jA!==void 0?U(MA,$A,jA):void 0;return RA?MA.slice(0,MA.length-RA.length):MA}A.getBaseFileName=F;function y(KA,$A,jA){if(A.startsWith($A,".")||($A="."+$A),KA.length>=$A.length&&KA.charCodeAt(KA.length-$A.length)===46){var ue=KA.slice(KA.length-$A.length);if(jA(ue,$A))return ue}}function S(KA,$A,jA){if(typeof $A=="string")return y(KA,$A,jA)||"";for(var ue=0,MA=$A;ue=0?ue.substring(MA):""}A.getAnyExtensionFromPath=U;function V(KA,$A){var jA=KA.substring(0,$A),ue=KA.substring($A).split(A.directorySeparator);return ue.length&&!A.lastOrUndefined(ue)&&ue.pop(),dt([jA],ue,!0)}function wA(KA,$A){return $A===void 0&&($A=""),KA=cA($A,KA),V(KA,T(KA))}A.getPathComponents=wA;function IA(KA){if(KA.length===0)return"";var $A=KA[0]&&uA(KA[0]);return $A+KA.slice(1).join(A.directorySeparator)}A.getPathFromPathComponents=IA;function pA(KA){return KA.indexOf("\\")!==-1?KA.replace(t,A.directorySeparator):KA}A.normalizeSlashes=pA;function oA(KA){if(!A.some(KA))return[];for(var $A=[KA[0]],jA=1;jA1){if($A[$A.length-1]!==".."){$A.pop();continue}}else if($A[0])continue}$A.push(ue)}}return $A}A.reducePathComponents=oA;function cA(KA){for(var $A=[],jA=1;jA0==T($A)>0,"Paths must either both be absolute or both be relative");var ue=typeof jA=="function"?jA:A.identity,MA=typeof jA=="boolean"?jA:!1,RA=gA(KA,$A,MA?A.equateStringsCaseInsensitive:A.equateStringsCaseSensitive,ue);return IA(RA)}A.getRelativePathFromDirectory=QA;function mA(KA,$A,jA){return s(KA)?SA($A,KA,$A,jA,!1):KA}A.convertToRelativePath=mA;function FA(KA,$A,jA){return BA(QA(v(KA),$A,jA))}A.getRelativePathFromFile=FA;function SA(KA,$A,jA,ue,MA){var RA=gA(eA(jA,KA),eA(jA,$A),A.equateStringsCaseSensitive,ue),lA=RA[0];if(MA&&s(lA)){var tA=lA.charAt(0)===A.directorySeparator?"file://":"file:///";RA[0]=tA+lA}return IA(RA)}A.getRelativePathToDirectoryOrUrl=SA;function ce(KA,$A){for(;;){var jA=$A(KA);if(jA!==void 0)return jA;var ue=v(KA);if(ue===KA)return;KA=ue}}A.forEachAncestorDirectory=ce;function re(KA){return A.endsWith(KA,"/node_modules")}A.isNodeModulesDirectory=re})(Oe||(Oe={}));var Oe;(function(A){function r(t,i,o,s,g,E,p){return{code:t,category:i,key:o,message:s,reportsUnnecessary:g,elidedInCompatabilityPyramid:E,reportsDeprecated:p}}A.Diagnostics={Unterminated_string_literal:r(1002,A.DiagnosticCategory.Error,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:r(1003,A.DiagnosticCategory.Error,"Identifier_expected_1003","Identifier expected."),_0_expected:r(1005,A.DiagnosticCategory.Error,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:r(1006,A.DiagnosticCategory.Error,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:r(1007,A.DiagnosticCategory.Error,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:r(1009,A.DiagnosticCategory.Error,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:r(1010,A.DiagnosticCategory.Error,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:r(1011,A.DiagnosticCategory.Error,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:r(1012,A.DiagnosticCategory.Error,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:r(1013,A.DiagnosticCategory.Error,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:r(1014,A.DiagnosticCategory.Error,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:r(1015,A.DiagnosticCategory.Error,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:r(1016,A.DiagnosticCategory.Error,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:r(1017,A.DiagnosticCategory.Error,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:r(1018,A.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:r(1019,A.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:r(1020,A.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:r(1021,A.DiagnosticCategory.Error,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:r(1022,A.DiagnosticCategory.Error,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:r(1024,A.DiagnosticCategory.Error,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:r(1025,A.DiagnosticCategory.Error,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:r(1028,A.DiagnosticCategory.Error,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:r(1029,A.DiagnosticCategory.Error,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:r(1030,A.DiagnosticCategory.Error,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:r(1031,A.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:r(1034,A.DiagnosticCategory.Error,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:r(1035,A.DiagnosticCategory.Error,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:r(1036,A.DiagnosticCategory.Error,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:r(1038,A.DiagnosticCategory.Error,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:r(1039,A.DiagnosticCategory.Error,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:r(1040,A.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:r(1042,A.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:r(1044,A.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:r(1046,A.DiagnosticCategory.Error,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:r(1047,A.DiagnosticCategory.Error,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:r(1048,A.DiagnosticCategory.Error,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:r(1049,A.DiagnosticCategory.Error,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:r(1051,A.DiagnosticCategory.Error,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:r(1052,A.DiagnosticCategory.Error,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:r(1053,A.DiagnosticCategory.Error,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:r(1054,A.DiagnosticCategory.Error,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:r(1055,A.DiagnosticCategory.Error,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Prom_1055","Type '{0}' is not a valid async function return type in ES5/ES3 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:r(1056,A.DiagnosticCategory.Error,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:r(1058,A.DiagnosticCategory.Error,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:r(1059,A.DiagnosticCategory.Error,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:r(1060,A.DiagnosticCategory.Error,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:r(1061,A.DiagnosticCategory.Error,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:r(1062,A.DiagnosticCategory.Error,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:r(1063,A.DiagnosticCategory.Error,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:r(1064,A.DiagnosticCategory.Error,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise type. Did you mean to write 'Promise<{0}>'?"),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:r(1066,A.DiagnosticCategory.Error,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:r(1068,A.DiagnosticCategory.Error,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:r(1069,A.DiagnosticCategory.Error,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:r(1070,A.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:r(1071,A.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:r(1079,A.DiagnosticCategory.Error,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:r(1084,A.DiagnosticCategory.Error,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:r(1085,A.DiagnosticCategory.Error,"Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0_1085","Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '{0}'."),_0_modifier_cannot_appear_on_a_constructor_declaration:r(1089,A.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:r(1090,A.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:r(1091,A.DiagnosticCategory.Error,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:r(1092,A.DiagnosticCategory.Error,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:r(1093,A.DiagnosticCategory.Error,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:r(1094,A.DiagnosticCategory.Error,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:r(1095,A.DiagnosticCategory.Error,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:r(1096,A.DiagnosticCategory.Error,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:r(1097,A.DiagnosticCategory.Error,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:r(1098,A.DiagnosticCategory.Error,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:r(1099,A.DiagnosticCategory.Error,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:r(1100,A.DiagnosticCategory.Error,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:r(1101,A.DiagnosticCategory.Error,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:r(1102,A.DiagnosticCategory.Error,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:r(1103,A.DiagnosticCategory.Error,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:r(1104,A.DiagnosticCategory.Error,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:r(1105,A.DiagnosticCategory.Error,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:r(1106,A.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:r(1107,A.DiagnosticCategory.Error,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:r(1108,A.DiagnosticCategory.Error,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:r(1109,A.DiagnosticCategory.Error,"Expression_expected_1109","Expression expected."),Type_expected:r(1110,A.DiagnosticCategory.Error,"Type_expected_1110","Type expected."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:r(1113,A.DiagnosticCategory.Error,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:r(1114,A.DiagnosticCategory.Error,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:r(1115,A.DiagnosticCategory.Error,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:r(1116,A.DiagnosticCategory.Error,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:r(1117,A.DiagnosticCategory.Error,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:r(1118,A.DiagnosticCategory.Error,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:r(1119,A.DiagnosticCategory.Error,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:r(1120,A.DiagnosticCategory.Error,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_in_strict_mode:r(1121,A.DiagnosticCategory.Error,"Octal_literals_are_not_allowed_in_strict_mode_1121","Octal literals are not allowed in strict mode."),Variable_declaration_list_cannot_be_empty:r(1123,A.DiagnosticCategory.Error,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:r(1124,A.DiagnosticCategory.Error,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:r(1125,A.DiagnosticCategory.Error,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:r(1126,A.DiagnosticCategory.Error,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:r(1127,A.DiagnosticCategory.Error,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:r(1128,A.DiagnosticCategory.Error,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:r(1129,A.DiagnosticCategory.Error,"Statement_expected_1129","Statement expected."),case_or_default_expected:r(1130,A.DiagnosticCategory.Error,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:r(1131,A.DiagnosticCategory.Error,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:r(1132,A.DiagnosticCategory.Error,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:r(1134,A.DiagnosticCategory.Error,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:r(1135,A.DiagnosticCategory.Error,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:r(1136,A.DiagnosticCategory.Error,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:r(1137,A.DiagnosticCategory.Error,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:r(1138,A.DiagnosticCategory.Error,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:r(1139,A.DiagnosticCategory.Error,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:r(1140,A.DiagnosticCategory.Error,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:r(1141,A.DiagnosticCategory.Error,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:r(1142,A.DiagnosticCategory.Error,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:r(1144,A.DiagnosticCategory.Error,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:r(1145,A.DiagnosticCategory.Error,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:r(1146,A.DiagnosticCategory.Error,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:r(1147,A.DiagnosticCategory.Error,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:r(1148,A.DiagnosticCategory.Error,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:r(1149,A.DiagnosticCategory.Error,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),const_declarations_must_be_initialized:r(1155,A.DiagnosticCategory.Error,"const_declarations_must_be_initialized_1155","'const' declarations must be initialized."),const_declarations_can_only_be_declared_inside_a_block:r(1156,A.DiagnosticCategory.Error,"const_declarations_can_only_be_declared_inside_a_block_1156","'const' declarations can only be declared inside a block."),let_declarations_can_only_be_declared_inside_a_block:r(1157,A.DiagnosticCategory.Error,"let_declarations_can_only_be_declared_inside_a_block_1157","'let' declarations can only be declared inside a block."),Unterminated_template_literal:r(1160,A.DiagnosticCategory.Error,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:r(1161,A.DiagnosticCategory.Error,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:r(1162,A.DiagnosticCategory.Error,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:r(1163,A.DiagnosticCategory.Error,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:r(1164,A.DiagnosticCategory.Error,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:r(1165,A.DiagnosticCategory.Error,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:r(1166,A.DiagnosticCategory.Error,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:r(1168,A.DiagnosticCategory.Error,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:r(1169,A.DiagnosticCategory.Error,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:r(1170,A.DiagnosticCategory.Error,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:r(1171,A.DiagnosticCategory.Error,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:r(1172,A.DiagnosticCategory.Error,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:r(1173,A.DiagnosticCategory.Error,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:r(1174,A.DiagnosticCategory.Error,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:r(1175,A.DiagnosticCategory.Error,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:r(1176,A.DiagnosticCategory.Error,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:r(1177,A.DiagnosticCategory.Error,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:r(1178,A.DiagnosticCategory.Error,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:r(1179,A.DiagnosticCategory.Error,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:r(1180,A.DiagnosticCategory.Error,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:r(1181,A.DiagnosticCategory.Error,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:r(1182,A.DiagnosticCategory.Error,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:r(1183,A.DiagnosticCategory.Error,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:r(1184,A.DiagnosticCategory.Error,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:r(1185,A.DiagnosticCategory.Error,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:r(1186,A.DiagnosticCategory.Error,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:r(1187,A.DiagnosticCategory.Error,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:r(1188,A.DiagnosticCategory.Error,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:r(1189,A.DiagnosticCategory.Error,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:r(1190,A.DiagnosticCategory.Error,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:r(1191,A.DiagnosticCategory.Error,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:r(1192,A.DiagnosticCategory.Error,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:r(1193,A.DiagnosticCategory.Error,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:r(1194,A.DiagnosticCategory.Error,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:r(1195,A.DiagnosticCategory.Error,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:r(1196,A.DiagnosticCategory.Error,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:r(1197,A.DiagnosticCategory.Error,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:r(1198,A.DiagnosticCategory.Error,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:r(1199,A.DiagnosticCategory.Error,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:r(1200,A.DiagnosticCategory.Error,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:r(1202,A.DiagnosticCategory.Error,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202",`Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:r(1203,A.DiagnosticCategory.Error,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type:r(1205,A.DiagnosticCategory.Error,"Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type_1205","Re-exporting a type when the '--isolatedModules' flag is provided requires using 'export type'."),Decorators_are_not_valid_here:r(1206,A.DiagnosticCategory.Error,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:r(1207,A.DiagnosticCategory.Error,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),_0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_import_export_or_an_empty_export_statement_to_make_it_a_module:r(1208,A.DiagnosticCategory.Error,"_0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_imp_1208","'{0}' cannot be compiled under '--isolatedModules' because it is considered a global script file. Add an import, export, or an empty 'export {}' statement to make it a module."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:r(1209,A.DiagnosticCategory.Error,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:r(1210,A.DiagnosticCategory.Error,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:r(1211,A.DiagnosticCategory.Error,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:r(1212,A.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:r(1213,A.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:r(1214,A.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:r(1215,A.DiagnosticCategory.Error,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:r(1216,A.DiagnosticCategory.Error,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:r(1218,A.DiagnosticCategory.Error,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning:r(1219,A.DiagnosticCategory.Error,"Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_t_1219","Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option in your 'tsconfig' or 'jsconfig' to remove this warning."),Generators_are_not_allowed_in_an_ambient_context:r(1221,A.DiagnosticCategory.Error,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:r(1222,A.DiagnosticCategory.Error,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:r(1223,A.DiagnosticCategory.Error,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:r(1224,A.DiagnosticCategory.Error,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:r(1225,A.DiagnosticCategory.Error,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:r(1226,A.DiagnosticCategory.Error,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:r(1227,A.DiagnosticCategory.Error,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:r(1228,A.DiagnosticCategory.Error,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:r(1229,A.DiagnosticCategory.Error,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:r(1230,A.DiagnosticCategory.Error,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:r(1231,A.DiagnosticCategory.Error,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:r(1232,A.DiagnosticCategory.Error,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:r(1233,A.DiagnosticCategory.Error,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:r(1234,A.DiagnosticCategory.Error,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:r(1235,A.DiagnosticCategory.Error,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:r(1236,A.DiagnosticCategory.Error,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:r(1237,A.DiagnosticCategory.Error,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:r(1238,A.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:r(1239,A.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:r(1240,A.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:r(1241,A.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:r(1242,A.DiagnosticCategory.Error,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:r(1243,A.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:r(1244,A.DiagnosticCategory.Error,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:r(1245,A.DiagnosticCategory.Error,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:r(1246,A.DiagnosticCategory.Error,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:r(1247,A.DiagnosticCategory.Error,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:r(1248,A.DiagnosticCategory.Error,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:r(1249,A.DiagnosticCategory.Error,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5:r(1250,A.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:r(1251,A.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_d_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:r(1252,A.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Modules are automatically in strict mode."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:r(1254,A.DiagnosticCategory.Error,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:r(1255,A.DiagnosticCategory.Error,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:r(1257,A.DiagnosticCategory.Error,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:r(1258,A.DiagnosticCategory.Error,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:r(1259,A.DiagnosticCategory.Error,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:r(1260,A.DiagnosticCategory.Error,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:r(1261,A.DiagnosticCategory.Error,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:r(1262,A.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:r(1263,A.DiagnosticCategory.Error,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:r(1264,A.DiagnosticCategory.Error,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:r(1265,A.DiagnosticCategory.Error,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:r(1266,A.DiagnosticCategory.Error,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:r(1267,A.DiagnosticCategory.Error,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:r(1268,A.DiagnosticCategory.Error,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_the_isolatedModules_flag_is_provided:r(1269,A.DiagnosticCategory.Error,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_the_isolatedModules_flag_is_provided_1269","Cannot use 'export import' on a type or type-only namespace when the '--isolatedModules' flag is provided."),Decorator_function_return_type_0_is_not_assignable_to_type_1:r(1270,A.DiagnosticCategory.Error,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:r(1271,A.DiagnosticCategory.Error,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:r(1272,A.DiagnosticCategory.Error,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:r(1273,A.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:r(1274,A.DiagnosticCategory.Error,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:r(1275,A.DiagnosticCategory.Error,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:r(1276,A.DiagnosticCategory.Error,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),with_statements_are_not_allowed_in_an_async_function_block:r(1300,A.DiagnosticCategory.Error,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:r(1308,A.DiagnosticCategory.Error,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:r(1309,A.DiagnosticCategory.Error,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:r(1312,A.DiagnosticCategory.Error,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:r(1313,A.DiagnosticCategory.Error,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:r(1314,A.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:r(1315,A.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:r(1316,A.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:r(1317,A.DiagnosticCategory.Error,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:r(1318,A.DiagnosticCategory.Error,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:r(1319,A.DiagnosticCategory.Error,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:r(1320,A.DiagnosticCategory.Error,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:r(1321,A.DiagnosticCategory.Error,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:r(1322,A.DiagnosticCategory.Error,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext:r(1323,A.DiagnosticCategory.Error,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nodenext:r(1324,A.DiagnosticCategory.Error,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nod_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', or 'nodenext'."),Argument_of_dynamic_import_cannot_be_spread_element:r(1325,A.DiagnosticCategory.Error,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:r(1326,A.DiagnosticCategory.Error,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:r(1327,A.DiagnosticCategory.Error,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:r(1328,A.DiagnosticCategory.Error,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:r(1329,A.DiagnosticCategory.Error,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:r(1330,A.DiagnosticCategory.Error,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:r(1331,A.DiagnosticCategory.Error,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:r(1332,A.DiagnosticCategory.Error,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:r(1333,A.DiagnosticCategory.Error,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:r(1334,A.DiagnosticCategory.Error,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:r(1335,A.DiagnosticCategory.Error,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:r(1337,A.DiagnosticCategory.Error,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:r(1338,A.DiagnosticCategory.Error,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:r(1339,A.DiagnosticCategory.Error,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:r(1340,A.DiagnosticCategory.Error,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:r(1341,A.DiagnosticCategory.Error,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),Type_arguments_cannot_be_used_here:r(1342,A.DiagnosticCategory.Error,"Type_arguments_cannot_be_used_here_1342","Type arguments cannot be used here."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext:r(1343,A.DiagnosticCategory.Error,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', or 'nodenext'."),A_label_is_not_allowed_here:r(1344,A.DiagnosticCategory.Error,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:r(1345,A.DiagnosticCategory.Error,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:r(1346,A.DiagnosticCategory.Error,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:r(1347,A.DiagnosticCategory.Error,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:r(1348,A.DiagnosticCategory.Error,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:r(1349,A.DiagnosticCategory.Error,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:r(1350,A.DiagnosticCategory.Message,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:r(1351,A.DiagnosticCategory.Error,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:r(1352,A.DiagnosticCategory.Error,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:r(1353,A.DiagnosticCategory.Error,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:r(1354,A.DiagnosticCategory.Error,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:r(1355,A.DiagnosticCategory.Error,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:r(1356,A.DiagnosticCategory.Error,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:r(1357,A.DiagnosticCategory.Error,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:r(1358,A.DiagnosticCategory.Error,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:r(1359,A.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:r(1360,A.DiagnosticCategory.Error,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:r(1361,A.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:r(1362,A.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:r(1363,A.DiagnosticCategory.Error,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:r(1364,A.DiagnosticCategory.Message,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:r(1365,A.DiagnosticCategory.Message,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:r(1366,A.DiagnosticCategory.Message,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:r(1367,A.DiagnosticCategory.Message,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:r(1368,A.DiagnosticCategory.Error,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:r(1369,A.DiagnosticCategory.Message,"Did_you_mean_0_1369","Did you mean '{0}'?"),This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error:r(1371,A.DiagnosticCategory.Error,"This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set__1371","This import is never used as a value and must use 'import type' because 'importsNotUsedAsValues' is set to 'error'."),Convert_to_type_only_import:r(1373,A.DiagnosticCategory.Message,"Convert_to_type_only_import_1373","Convert to type-only import"),Convert_all_imports_not_used_as_a_value_to_type_only_imports:r(1374,A.DiagnosticCategory.Message,"Convert_all_imports_not_used_as_a_value_to_type_only_imports_1374","Convert all imports not used as a value to type-only imports"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:r(1375,A.DiagnosticCategory.Error,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:r(1376,A.DiagnosticCategory.Message,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:r(1377,A.DiagnosticCategory.Message,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_or_nodenext_and_the_target_option_is_set_to_es2017_or_higher:r(1378,A.DiagnosticCategory.Error,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', or 'nodenext', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:r(1379,A.DiagnosticCategory.Error,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:r(1380,A.DiagnosticCategory.Error,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:r(1381,A.DiagnosticCategory.Error,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:r(1382,A.DiagnosticCategory.Error,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Only_named_exports_may_use_export_type:r(1383,A.DiagnosticCategory.Error,"Only_named_exports_may_use_export_type_1383","Only named exports may use 'export type'."),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:r(1385,A.DiagnosticCategory.Error,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:r(1386,A.DiagnosticCategory.Error,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:r(1387,A.DiagnosticCategory.Error,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:r(1388,A.DiagnosticCategory.Error,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:r(1389,A.DiagnosticCategory.Error,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:r(1390,A.DiagnosticCategory.Error,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:r(1392,A.DiagnosticCategory.Error,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:r(1393,A.DiagnosticCategory.Message,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:r(1394,A.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:r(1395,A.DiagnosticCategory.Message,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:r(1396,A.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:r(1397,A.DiagnosticCategory.Message,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:r(1398,A.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:r(1399,A.DiagnosticCategory.Message,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:r(1400,A.DiagnosticCategory.Message,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:r(1401,A.DiagnosticCategory.Message,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:r(1402,A.DiagnosticCategory.Message,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:r(1403,A.DiagnosticCategory.Message,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:r(1404,A.DiagnosticCategory.Message,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:r(1405,A.DiagnosticCategory.Message,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:r(1406,A.DiagnosticCategory.Message,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:r(1407,A.DiagnosticCategory.Message,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:r(1408,A.DiagnosticCategory.Message,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:r(1409,A.DiagnosticCategory.Message,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:r(1410,A.DiagnosticCategory.Message,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:r(1411,A.DiagnosticCategory.Message,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:r(1412,A.DiagnosticCategory.Message,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:r(1413,A.DiagnosticCategory.Message,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:r(1414,A.DiagnosticCategory.Message,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:r(1415,A.DiagnosticCategory.Message,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:r(1416,A.DiagnosticCategory.Message,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:r(1417,A.DiagnosticCategory.Message,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:r(1418,A.DiagnosticCategory.Message,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:r(1419,A.DiagnosticCategory.Message,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:r(1420,A.DiagnosticCategory.Message,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:r(1421,A.DiagnosticCategory.Message,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:r(1422,A.DiagnosticCategory.Message,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:r(1423,A.DiagnosticCategory.Message,"File_is_library_specified_here_1423","File is library specified here."),Default_library:r(1424,A.DiagnosticCategory.Message,"Default_library_1424","Default library"),Default_library_for_target_0:r(1425,A.DiagnosticCategory.Message,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:r(1426,A.DiagnosticCategory.Message,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:r(1427,A.DiagnosticCategory.Message,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:r(1428,A.DiagnosticCategory.Message,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:r(1429,A.DiagnosticCategory.Message,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:r(1430,A.DiagnosticCategory.Message,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:r(1431,A.DiagnosticCategory.Error,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_or_nodenext_and_the_target_option_is_set_to_es2017_or_higher:r(1432,A.DiagnosticCategory.Error,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', or 'nodenext', and the 'target' option is set to 'es2017' or higher."),Decorators_may_not_be_applied_to_this_parameters:r(1433,A.DiagnosticCategory.Error,"Decorators_may_not_be_applied_to_this_parameters_1433","Decorators may not be applied to 'this' parameters."),Unexpected_keyword_or_identifier:r(1434,A.DiagnosticCategory.Error,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:r(1435,A.DiagnosticCategory.Error,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:r(1436,A.DiagnosticCategory.Error,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:r(1437,A.DiagnosticCategory.Error,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:r(1438,A.DiagnosticCategory.Error,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:r(1439,A.DiagnosticCategory.Error,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:r(1440,A.DiagnosticCategory.Error,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:r(1441,A.DiagnosticCategory.Error,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:r(1442,A.DiagnosticCategory.Error,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:r(1443,A.DiagnosticCategory.Error,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedModules_are_both_enabled:r(1444,A.DiagnosticCategory.Error,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedMod_1444","'{0}' is a type and must be imported using a type-only import when 'preserveValueImports' and 'isolatedModules' are both enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedModules_are_both_enabled:r(1446,A.DiagnosticCategory.Error,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_preserveVa_1446","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'preserveValueImports' and 'isolatedModules' are both enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_isolatedModules_is_enabled:r(1448,A.DiagnosticCategory.Error,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_isol_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when 'isolatedModules' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:r(1449,A.DiagnosticCategory.Message,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_assertion_as_arguments:r(1450,A.DiagnosticCategory.Message,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_assertion_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional assertion as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:r(1451,A.DiagnosticCategory.Error,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_assertions_are_only_supported_when_moduleResolution_is_node16_or_nodenext:r(1452,A.DiagnosticCategory.Error,"resolution_mode_assertions_are_only_supported_when_moduleResolution_is_node16_or_nodenext_1452","'resolution-mode' assertions are only supported when `moduleResolution` is `node16` or `nodenext`."),resolution_mode_should_be_either_require_or_import:r(1453,A.DiagnosticCategory.Error,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:r(1454,A.DiagnosticCategory.Error,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:r(1455,A.DiagnosticCategory.Error,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:r(1456,A.DiagnosticCategory.Error,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:r(1457,A.DiagnosticCategory.Message,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:r(1458,A.DiagnosticCategory.Message,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",`File is ECMAScript module because '{0}' has field "type" with value "module"`),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:r(1459,A.DiagnosticCategory.Message,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",`File is CommonJS module because '{0}' has field "type" whose value is not "module"`),File_is_CommonJS_module_because_0_does_not_have_field_type:r(1460,A.DiagnosticCategory.Message,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460",`File is CommonJS module because '{0}' does not have field "type"`),File_is_CommonJS_module_because_package_json_was_not_found:r(1461,A.DiagnosticCategory.Message,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:r(1470,A.DiagnosticCategory.Error,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:r(1471,A.DiagnosticCategory.Error,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:r(1472,A.DiagnosticCategory.Error,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:r(1473,A.DiagnosticCategory.Error,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:r(1474,A.DiagnosticCategory.Error,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:r(1475,A.DiagnosticCategory.Message,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:r(1476,A.DiagnosticCategory.Message,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:r(1477,A.DiagnosticCategory.Error,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:r(1478,A.DiagnosticCategory.Error,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:r(1479,A.DiagnosticCategory.Error,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479",`The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:r(1480,A.DiagnosticCategory.Message,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:r(1481,A.DiagnosticCategory.Message,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481",`To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:r(1482,A.DiagnosticCategory.Message,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:r(1483,A.DiagnosticCategory.Message,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),The_types_of_0_are_incompatible_between_these_types:r(2200,A.DiagnosticCategory.Error,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:r(2201,A.DiagnosticCategory.Error,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:r(2202,A.DiagnosticCategory.Error,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:r(2203,A.DiagnosticCategory.Error,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:r(2204,A.DiagnosticCategory.Error,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:r(2205,A.DiagnosticCategory.Error,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:r(2206,A.DiagnosticCategory.Error,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:r(2207,A.DiagnosticCategory.Error,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:r(2208,A.DiagnosticCategory.Error,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:r(2209,A.DiagnosticCategory.Error,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:r(2210,A.DiagnosticCategory.Error,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:r(2211,A.DiagnosticCategory.Message,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:r(2212,A.DiagnosticCategory.Message,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:r(2300,A.DiagnosticCategory.Error,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:r(2301,A.DiagnosticCategory.Error,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:r(2302,A.DiagnosticCategory.Error,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:r(2303,A.DiagnosticCategory.Error,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:r(2304,A.DiagnosticCategory.Error,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:r(2305,A.DiagnosticCategory.Error,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:r(2306,A.DiagnosticCategory.Error,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:r(2307,A.DiagnosticCategory.Error,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:r(2308,A.DiagnosticCategory.Error,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:r(2309,A.DiagnosticCategory.Error,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:r(2310,A.DiagnosticCategory.Error,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:r(2311,A.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:r(2312,A.DiagnosticCategory.Error,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:r(2313,A.DiagnosticCategory.Error,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:r(2314,A.DiagnosticCategory.Error,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:r(2315,A.DiagnosticCategory.Error,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:r(2316,A.DiagnosticCategory.Error,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:r(2317,A.DiagnosticCategory.Error,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:r(2318,A.DiagnosticCategory.Error,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:r(2319,A.DiagnosticCategory.Error,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:r(2320,A.DiagnosticCategory.Error,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:r(2321,A.DiagnosticCategory.Error,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:r(2322,A.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:r(2323,A.DiagnosticCategory.Error,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:r(2324,A.DiagnosticCategory.Error,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:r(2325,A.DiagnosticCategory.Error,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:r(2326,A.DiagnosticCategory.Error,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:r(2327,A.DiagnosticCategory.Error,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:r(2328,A.DiagnosticCategory.Error,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:r(2329,A.DiagnosticCategory.Error,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:r(2330,A.DiagnosticCategory.Error,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:r(2331,A.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:r(2332,A.DiagnosticCategory.Error,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_constructor_arguments:r(2333,A.DiagnosticCategory.Error,"this_cannot_be_referenced_in_constructor_arguments_2333","'this' cannot be referenced in constructor arguments."),this_cannot_be_referenced_in_a_static_property_initializer:r(2334,A.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:r(2335,A.DiagnosticCategory.Error,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:r(2336,A.DiagnosticCategory.Error,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:r(2337,A.DiagnosticCategory.Error,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:r(2338,A.DiagnosticCategory.Error,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:r(2339,A.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:r(2340,A.DiagnosticCategory.Error,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:r(2341,A.DiagnosticCategory.Error,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:r(2343,A.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:r(2344,A.DiagnosticCategory.Error,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:r(2345,A.DiagnosticCategory.Error,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Call_target_does_not_contain_any_signatures:r(2346,A.DiagnosticCategory.Error,"Call_target_does_not_contain_any_signatures_2346","Call target does not contain any signatures."),Untyped_function_calls_may_not_accept_type_arguments:r(2347,A.DiagnosticCategory.Error,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:r(2348,A.DiagnosticCategory.Error,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:r(2349,A.DiagnosticCategory.Error,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:r(2350,A.DiagnosticCategory.Error,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:r(2351,A.DiagnosticCategory.Error,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:r(2352,A.DiagnosticCategory.Error,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:r(2353,A.DiagnosticCategory.Error,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:r(2354,A.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value:r(2355,A.DiagnosticCategory.Error,"A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'void' nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:r(2356,A.DiagnosticCategory.Error,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:r(2357,A.DiagnosticCategory.Error,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:r(2358,A.DiagnosticCategory.Error,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type:r(2359,A.DiagnosticCategory.Error,"The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_F_2359","The right-hand side of an 'instanceof' expression must be of type 'any' or of a type assignable to the 'Function' interface type."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:r(2362,A.DiagnosticCategory.Error,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:r(2363,A.DiagnosticCategory.Error,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:r(2364,A.DiagnosticCategory.Error,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:r(2365,A.DiagnosticCategory.Error,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:r(2366,A.DiagnosticCategory.Error,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:r(2367,A.DiagnosticCategory.Error,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:r(2368,A.DiagnosticCategory.Error,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:r(2369,A.DiagnosticCategory.Error,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:r(2370,A.DiagnosticCategory.Error,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:r(2371,A.DiagnosticCategory.Error,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:r(2372,A.DiagnosticCategory.Error,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:r(2373,A.DiagnosticCategory.Error,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:r(2374,A.DiagnosticCategory.Error,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:r(2375,A.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:r(2376,A.DiagnosticCategory.Error,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:r(2377,A.DiagnosticCategory.Error,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:r(2378,A.DiagnosticCategory.Error,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:r(2379,A.DiagnosticCategory.Error,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),The_return_type_of_a_get_accessor_must_be_assignable_to_its_set_accessor_type:r(2380,A.DiagnosticCategory.Error,"The_return_type_of_a_get_accessor_must_be_assignable_to_its_set_accessor_type_2380","The return type of a 'get' accessor must be assignable to its 'set' accessor type"),Overload_signatures_must_all_be_exported_or_non_exported:r(2383,A.DiagnosticCategory.Error,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:r(2384,A.DiagnosticCategory.Error,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:r(2385,A.DiagnosticCategory.Error,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:r(2386,A.DiagnosticCategory.Error,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:r(2387,A.DiagnosticCategory.Error,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:r(2388,A.DiagnosticCategory.Error,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:r(2389,A.DiagnosticCategory.Error,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:r(2390,A.DiagnosticCategory.Error,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:r(2391,A.DiagnosticCategory.Error,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:r(2392,A.DiagnosticCategory.Error,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:r(2393,A.DiagnosticCategory.Error,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:r(2394,A.DiagnosticCategory.Error,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:r(2395,A.DiagnosticCategory.Error,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:r(2396,A.DiagnosticCategory.Error,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:r(2397,A.DiagnosticCategory.Error,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:r(2398,A.DiagnosticCategory.Error,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:r(2399,A.DiagnosticCategory.Error,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:r(2400,A.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:r(2401,A.DiagnosticCategory.Error,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:r(2402,A.DiagnosticCategory.Error,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:r(2403,A.DiagnosticCategory.Error,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:r(2404,A.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:r(2405,A.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:r(2406,A.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:r(2407,A.DiagnosticCategory.Error,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:r(2408,A.DiagnosticCategory.Error,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:r(2409,A.DiagnosticCategory.Error,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:r(2410,A.DiagnosticCategory.Error,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:r(2412,A.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:r(2411,A.DiagnosticCategory.Error,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:r(2413,A.DiagnosticCategory.Error,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:r(2414,A.DiagnosticCategory.Error,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:r(2415,A.DiagnosticCategory.Error,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:r(2416,A.DiagnosticCategory.Error,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:r(2417,A.DiagnosticCategory.Error,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:r(2418,A.DiagnosticCategory.Error,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:r(2419,A.DiagnosticCategory.Error,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:r(2420,A.DiagnosticCategory.Error,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:r(2422,A.DiagnosticCategory.Error,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:r(2423,A.DiagnosticCategory.Error,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:r(2425,A.DiagnosticCategory.Error,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:r(2426,A.DiagnosticCategory.Error,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:r(2427,A.DiagnosticCategory.Error,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:r(2428,A.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:r(2430,A.DiagnosticCategory.Error,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:r(2431,A.DiagnosticCategory.Error,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:r(2432,A.DiagnosticCategory.Error,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:r(2433,A.DiagnosticCategory.Error,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:r(2434,A.DiagnosticCategory.Error,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:r(2435,A.DiagnosticCategory.Error,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:r(2436,A.DiagnosticCategory.Error,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:r(2437,A.DiagnosticCategory.Error,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:r(2438,A.DiagnosticCategory.Error,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:r(2439,A.DiagnosticCategory.Error,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:r(2440,A.DiagnosticCategory.Error,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:r(2441,A.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:r(2442,A.DiagnosticCategory.Error,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:r(2443,A.DiagnosticCategory.Error,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:r(2444,A.DiagnosticCategory.Error,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:r(2445,A.DiagnosticCategory.Error,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:r(2446,A.DiagnosticCategory.Error,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:r(2447,A.DiagnosticCategory.Error,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:r(2448,A.DiagnosticCategory.Error,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:r(2449,A.DiagnosticCategory.Error,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:r(2450,A.DiagnosticCategory.Error,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:r(2451,A.DiagnosticCategory.Error,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:r(2452,A.DiagnosticCategory.Error,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:r(2454,A.DiagnosticCategory.Error,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:r(2456,A.DiagnosticCategory.Error,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:r(2457,A.DiagnosticCategory.Error,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:r(2458,A.DiagnosticCategory.Error,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:r(2459,A.DiagnosticCategory.Error,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:r(2460,A.DiagnosticCategory.Error,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:r(2461,A.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:r(2462,A.DiagnosticCategory.Error,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:r(2463,A.DiagnosticCategory.Error,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:r(2464,A.DiagnosticCategory.Error,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:r(2465,A.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:r(2466,A.DiagnosticCategory.Error,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:r(2467,A.DiagnosticCategory.Error,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:r(2468,A.DiagnosticCategory.Error,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:r(2469,A.DiagnosticCategory.Error,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:r(2472,A.DiagnosticCategory.Error,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:r(2473,A.DiagnosticCategory.Error,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values:r(2474,A.DiagnosticCategory.Error,"const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values_2474","const enum member initializers can only contain literal values and other computed enum values."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:r(2475,A.DiagnosticCategory.Error,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:r(2476,A.DiagnosticCategory.Error,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:r(2477,A.DiagnosticCategory.Error,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:r(2478,A.DiagnosticCategory.Error,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:r(2480,A.DiagnosticCategory.Error,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:r(2481,A.DiagnosticCategory.Error,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:r(2483,A.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:r(2484,A.DiagnosticCategory.Error,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:r(2487,A.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:r(2488,A.DiagnosticCategory.Error,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:r(2489,A.DiagnosticCategory.Error,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:r(2490,A.DiagnosticCategory.Error,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:r(2491,A.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:r(2492,A.DiagnosticCategory.Error,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:r(2493,A.DiagnosticCategory.Error,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:r(2494,A.DiagnosticCategory.Error,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:r(2495,A.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression:r(2496,A.DiagnosticCategory.Error,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_stand_2496","The 'arguments' object cannot be referenced in an arrow function in ES3 and ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:r(2497,A.DiagnosticCategory.Error,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:r(2498,A.DiagnosticCategory.Error,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:r(2499,A.DiagnosticCategory.Error,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:r(2500,A.DiagnosticCategory.Error,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:r(2501,A.DiagnosticCategory.Error,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:r(2502,A.DiagnosticCategory.Error,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:r(2503,A.DiagnosticCategory.Error,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:r(2504,A.DiagnosticCategory.Error,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:r(2505,A.DiagnosticCategory.Error,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:r(2506,A.DiagnosticCategory.Error,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:r(2507,A.DiagnosticCategory.Error,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:r(2508,A.DiagnosticCategory.Error,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:r(2509,A.DiagnosticCategory.Error,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:r(2510,A.DiagnosticCategory.Error,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:r(2511,A.DiagnosticCategory.Error,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:r(2512,A.DiagnosticCategory.Error,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:r(2513,A.DiagnosticCategory.Error,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:r(2514,A.DiagnosticCategory.Error,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:r(2515,A.DiagnosticCategory.Error,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member '{1}' from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:r(2516,A.DiagnosticCategory.Error,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:r(2517,A.DiagnosticCategory.Error,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:r(2518,A.DiagnosticCategory.Error,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:r(2519,A.DiagnosticCategory.Error,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:r(2520,A.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method:r(2522,A.DiagnosticCategory.Error,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_usi_2522","The 'arguments' object cannot be referenced in an async function or method in ES3 and ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:r(2523,A.DiagnosticCategory.Error,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:r(2524,A.DiagnosticCategory.Error,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value:r(2525,A.DiagnosticCategory.Error,"Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value_2525","Initializer provides no value for this binding element and the binding element has no default value."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:r(2526,A.DiagnosticCategory.Error,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:r(2527,A.DiagnosticCategory.Error,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:r(2528,A.DiagnosticCategory.Error,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:r(2529,A.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:r(2530,A.DiagnosticCategory.Error,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:r(2531,A.DiagnosticCategory.Error,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:r(2532,A.DiagnosticCategory.Error,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:r(2533,A.DiagnosticCategory.Error,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:r(2534,A.DiagnosticCategory.Error,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Enum_type_0_has_members_with_initializers_that_are_not_literals:r(2535,A.DiagnosticCategory.Error,"Enum_type_0_has_members_with_initializers_that_are_not_literals_2535","Enum type '{0}' has members with initializers that are not literals."),Type_0_cannot_be_used_to_index_type_1:r(2536,A.DiagnosticCategory.Error,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:r(2537,A.DiagnosticCategory.Error,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:r(2538,A.DiagnosticCategory.Error,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:r(2539,A.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:r(2540,A.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:r(2542,A.DiagnosticCategory.Error,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:r(2543,A.DiagnosticCategory.Error,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:r(2544,A.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:r(2545,A.DiagnosticCategory.Error,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:r(2547,A.DiagnosticCategory.Error,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:r(2548,A.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:r(2549,A.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:r(2550,A.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:r(2551,A.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:r(2552,A.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:r(2553,A.DiagnosticCategory.Error,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:r(2554,A.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:r(2555,A.DiagnosticCategory.Error,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:r(2556,A.DiagnosticCategory.Error,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:r(2558,A.DiagnosticCategory.Error,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:r(2559,A.DiagnosticCategory.Error,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:r(2560,A.DiagnosticCategory.Error,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:r(2561,A.DiagnosticCategory.Error,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:r(2562,A.DiagnosticCategory.Error,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:r(2563,A.DiagnosticCategory.Error,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:r(2564,A.DiagnosticCategory.Error,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:r(2565,A.DiagnosticCategory.Error,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:r(2566,A.DiagnosticCategory.Error,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:r(2567,A.DiagnosticCategory.Error,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:r(2568,A.DiagnosticCategory.Error,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:r(2570,A.DiagnosticCategory.Error,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:r(2571,A.DiagnosticCategory.Error,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:r(2574,A.DiagnosticCategory.Error,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:r(2575,A.DiagnosticCategory.Error,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:r(2576,A.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:r(2577,A.DiagnosticCategory.Error,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:r(2578,A.DiagnosticCategory.Error,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:r(2580,A.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:r(2581,A.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:r(2582,A.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:r(2583,A.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:r(2584,A.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:r(2585,A.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:r(2588,A.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:r(2589,A.DiagnosticCategory.Error,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:r(2590,A.DiagnosticCategory.Error,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:r(2591,A.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:r(2592,A.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:r(2593,A.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:r(2594,A.DiagnosticCategory.Error,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:r(2595,A.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:r(2596,A.DiagnosticCategory.Error,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:r(2597,A.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:r(2598,A.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:r(2602,A.DiagnosticCategory.Error,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:r(2603,A.DiagnosticCategory.Error,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:r(2604,A.DiagnosticCategory.Error,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:r(2606,A.DiagnosticCategory.Error,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:r(2607,A.DiagnosticCategory.Error,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:r(2608,A.DiagnosticCategory.Error,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:r(2609,A.DiagnosticCategory.Error,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:r(2610,A.DiagnosticCategory.Error,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:r(2611,A.DiagnosticCategory.Error,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:r(2612,A.DiagnosticCategory.Error,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:r(2613,A.DiagnosticCategory.Error,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:r(2614,A.DiagnosticCategory.Error,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:r(2615,A.DiagnosticCategory.Error,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:r(2616,A.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:r(2617,A.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:r(2618,A.DiagnosticCategory.Error,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:r(2619,A.DiagnosticCategory.Error,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:r(2620,A.DiagnosticCategory.Error,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:r(2621,A.DiagnosticCategory.Error,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:r(2623,A.DiagnosticCategory.Error,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:r(2624,A.DiagnosticCategory.Error,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:r(2625,A.DiagnosticCategory.Error,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:r(2626,A.DiagnosticCategory.Error,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:r(2627,A.DiagnosticCategory.Error,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:r(2628,A.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:r(2629,A.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:r(2630,A.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:r(2631,A.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:r(2632,A.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:r(2633,A.DiagnosticCategory.Error,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:r(2634,A.DiagnosticCategory.Error,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:r(2635,A.DiagnosticCategory.Error,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:r(2636,A.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:r(2637,A.DiagnosticCategory.Error,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:r(2638,A.DiagnosticCategory.Error,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:r(2649,A.DiagnosticCategory.Error,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:r(2651,A.DiagnosticCategory.Error,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:r(2652,A.DiagnosticCategory.Error,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:r(2653,A.DiagnosticCategory.Error,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),JSX_expressions_must_have_one_parent_element:r(2657,A.DiagnosticCategory.Error,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:r(2658,A.DiagnosticCategory.Error,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:r(2659,A.DiagnosticCategory.Error,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:r(2660,A.DiagnosticCategory.Error,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:r(2661,A.DiagnosticCategory.Error,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:r(2662,A.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:r(2663,A.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:r(2664,A.DiagnosticCategory.Error,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:r(2665,A.DiagnosticCategory.Error,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:r(2666,A.DiagnosticCategory.Error,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:r(2667,A.DiagnosticCategory.Error,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:r(2668,A.DiagnosticCategory.Error,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:r(2669,A.DiagnosticCategory.Error,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:r(2670,A.DiagnosticCategory.Error,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:r(2671,A.DiagnosticCategory.Error,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:r(2672,A.DiagnosticCategory.Error,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:r(2673,A.DiagnosticCategory.Error,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:r(2674,A.DiagnosticCategory.Error,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:r(2675,A.DiagnosticCategory.Error,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:r(2676,A.DiagnosticCategory.Error,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:r(2677,A.DiagnosticCategory.Error,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:r(2678,A.DiagnosticCategory.Error,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:r(2679,A.DiagnosticCategory.Error,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:r(2680,A.DiagnosticCategory.Error,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:r(2681,A.DiagnosticCategory.Error,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:r(2683,A.DiagnosticCategory.Error,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:r(2684,A.DiagnosticCategory.Error,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:r(2685,A.DiagnosticCategory.Error,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:r(2686,A.DiagnosticCategory.Error,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:r(2687,A.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:r(2688,A.DiagnosticCategory.Error,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:r(2689,A.DiagnosticCategory.Error,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:r(2690,A.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead:r(2691,A.DiagnosticCategory.Error,"An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead_2691","An import path cannot end with a '{0}' extension. Consider importing '{1}' instead."),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:r(2692,A.DiagnosticCategory.Error,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:r(2693,A.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:r(2694,A.DiagnosticCategory.Error,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:r(2695,A.DiagnosticCategory.Error,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:r(2696,A.DiagnosticCategory.Error,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:r(2697,A.DiagnosticCategory.Error,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:r(2698,A.DiagnosticCategory.Error,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:r(2699,A.DiagnosticCategory.Error,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:r(2700,A.DiagnosticCategory.Error,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:r(2701,A.DiagnosticCategory.Error,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:r(2702,A.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:r(2703,A.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:r(2704,A.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:r(2705,A.DiagnosticCategory.Error,"An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_de_2705","An async function or method in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:r(2706,A.DiagnosticCategory.Error,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:r(2707,A.DiagnosticCategory.Error,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:r(2708,A.DiagnosticCategory.Error,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:r(2709,A.DiagnosticCategory.Error,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:r(2710,A.DiagnosticCategory.Error,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:r(2711,A.DiagnosticCategory.Error,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:r(2712,A.DiagnosticCategory.Error,"A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declarat_2712","A dynamic import call in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:r(2713,A.DiagnosticCategory.Error,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713",`Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:r(2714,A.DiagnosticCategory.Error,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:r(2715,A.DiagnosticCategory.Error,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:r(2716,A.DiagnosticCategory.Error,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:r(2717,A.DiagnosticCategory.Error,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:r(2718,A.DiagnosticCategory.Error,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:r(2719,A.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:r(2720,A.DiagnosticCategory.Error,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:r(2721,A.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:r(2722,A.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:r(2723,A.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:r(2724,A.DiagnosticCategory.Error,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:r(2725,A.DiagnosticCategory.Error,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:r(2726,A.DiagnosticCategory.Error,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:r(2727,A.DiagnosticCategory.Error,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:r(2728,A.DiagnosticCategory.Message,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:r(2729,A.DiagnosticCategory.Error,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:r(2730,A.DiagnosticCategory.Error,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:r(2731,A.DiagnosticCategory.Error,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:r(2732,A.DiagnosticCategory.Error,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:r(2733,A.DiagnosticCategory.Error,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:r(2734,A.DiagnosticCategory.Error,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:r(2735,A.DiagnosticCategory.Error,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:r(2736,A.DiagnosticCategory.Error,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:r(2737,A.DiagnosticCategory.Error,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:r(2738,A.DiagnosticCategory.Message,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:r(2739,A.DiagnosticCategory.Error,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:r(2740,A.DiagnosticCategory.Error,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:r(2741,A.DiagnosticCategory.Error,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:r(2742,A.DiagnosticCategory.Error,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:r(2743,A.DiagnosticCategory.Error,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:r(2744,A.DiagnosticCategory.Error,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:r(2745,A.DiagnosticCategory.Error,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:r(2746,A.DiagnosticCategory.Error,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:r(2747,A.DiagnosticCategory.Error,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided:r(2748,A.DiagnosticCategory.Error,"Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided_2748","Cannot access ambient const enums when the '--isolatedModules' flag is provided."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:r(2749,A.DiagnosticCategory.Error,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:r(2750,A.DiagnosticCategory.Error,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:r(2751,A.DiagnosticCategory.Error,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:r(2752,A.DiagnosticCategory.Error,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:r(2753,A.DiagnosticCategory.Error,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:r(2754,A.DiagnosticCategory.Error,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:r(2755,A.DiagnosticCategory.Error,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:r(2756,A.DiagnosticCategory.Error,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:r(2757,A.DiagnosticCategory.Error,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:r(2758,A.DiagnosticCategory.Error,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:r(2759,A.DiagnosticCategory.Error,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:r(2760,A.DiagnosticCategory.Error,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:r(2761,A.DiagnosticCategory.Error,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:r(2762,A.DiagnosticCategory.Error,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:r(2763,A.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:r(2764,A.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:r(2765,A.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:r(2766,A.DiagnosticCategory.Error,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:r(2767,A.DiagnosticCategory.Error,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:r(2768,A.DiagnosticCategory.Error,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:r(2769,A.DiagnosticCategory.Error,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:r(2770,A.DiagnosticCategory.Error,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:r(2771,A.DiagnosticCategory.Error,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:r(2772,A.DiagnosticCategory.Error,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:r(2773,A.DiagnosticCategory.Error,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:r(2774,A.DiagnosticCategory.Error,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:r(2775,A.DiagnosticCategory.Error,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:r(2776,A.DiagnosticCategory.Error,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:r(2777,A.DiagnosticCategory.Error,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:r(2778,A.DiagnosticCategory.Error,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:r(2779,A.DiagnosticCategory.Error,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:r(2780,A.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:r(2781,A.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:r(2782,A.DiagnosticCategory.Message,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:r(2783,A.DiagnosticCategory.Error,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:r(2784,A.DiagnosticCategory.Error,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:r(2785,A.DiagnosticCategory.Error,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:r(2786,A.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:r(2787,A.DiagnosticCategory.Error,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:r(2788,A.DiagnosticCategory.Error,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:r(2789,A.DiagnosticCategory.Error,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:r(2790,A.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:r(2791,A.DiagnosticCategory.Error,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:r(2792,A.DiagnosticCategory.Error,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_th_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:r(2793,A.DiagnosticCategory.Error,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:r(2794,A.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:r(2795,A.DiagnosticCategory.Error,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:r(2796,A.DiagnosticCategory.Error,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:r(2797,A.DiagnosticCategory.Error,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:r(2798,A.DiagnosticCategory.Error,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:r(2799,A.DiagnosticCategory.Error,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:r(2800,A.DiagnosticCategory.Error,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:r(2801,A.DiagnosticCategory.Error,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:r(2802,A.DiagnosticCategory.Error,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:r(2803,A.DiagnosticCategory.Error,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:r(2804,A.DiagnosticCategory.Error,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:r(2806,A.DiagnosticCategory.Error,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:r(2807,A.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:r(2808,A.DiagnosticCategory.Error,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_the_whole_assignment_in_parentheses:r(2809,A.DiagnosticCategory.Error,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:r(2810,A.DiagnosticCategory.Error,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:r(2811,A.DiagnosticCategory.Error,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:r(2812,A.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:r(2813,A.DiagnosticCategory.Error,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:r(2814,A.DiagnosticCategory.Error,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers:r(2815,A.DiagnosticCategory.Error,"arguments_cannot_be_referenced_in_property_initializers_2815","'arguments' cannot be referenced in property initializers."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:r(2816,A.DiagnosticCategory.Error,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:r(2817,A.DiagnosticCategory.Error,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:r(2818,A.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:r(2819,A.DiagnosticCategory.Error,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:r(2820,A.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_or_nodenext:r(2821,A.DiagnosticCategory.Error,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_or_nodenext_2821","Import assertions are only supported when the '--module' option is set to 'esnext' or 'nodenext'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:r(2822,A.DiagnosticCategory.Error,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Cannot_find_namespace_0_Did_you_mean_1:r(2833,A.DiagnosticCategory.Error,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:r(2834,A.DiagnosticCategory.Error,"Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in EcmaScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:r(2835,A.DiagnosticCategory.Error,"Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in EcmaScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_transpile_to_commonjs_require_calls:r(2836,A.DiagnosticCategory.Error,"Import_assertions_are_not_allowed_on_statements_that_transpile_to_commonjs_require_calls_2836","Import assertions are not allowed on statements that transpile to commonjs 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:r(2837,A.DiagnosticCategory.Error,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:r(2838,A.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:r(2839,A.DiagnosticCategory.Error,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_an_interface_can_only_extend_named_types_and_classes:r(2840,A.DiagnosticCategory.Error,"An_interface_cannot_extend_a_primitive_type_like_0_an_interface_can_only_extend_named_types_and_clas_2840","An interface cannot extend a primitive type like '{0}'; an interface can only extend named types and classes"),The_type_of_this_expression_cannot_be_named_without_a_resolution_mode_assertion_which_is_an_unstable_feature_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:r(2841,A.DiagnosticCategory.Error,"The_type_of_this_expression_cannot_be_named_without_a_resolution_mode_assertion_which_is_an_unstable_2841","The type of this expression cannot be named without a 'resolution-mode' assertion, which is an unstable feature. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:r(2842,A.DiagnosticCategory.Error,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:r(2843,A.DiagnosticCategory.Error,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:r(2844,A.DiagnosticCategory.Error,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:r(2845,A.DiagnosticCategory.Error,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),Import_declaration_0_is_using_private_name_1:r(4e3,A.DiagnosticCategory.Error,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:r(4002,A.DiagnosticCategory.Error,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:r(4004,A.DiagnosticCategory.Error,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:r(4006,A.DiagnosticCategory.Error,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:r(4008,A.DiagnosticCategory.Error,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:r(4010,A.DiagnosticCategory.Error,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:r(4012,A.DiagnosticCategory.Error,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:r(4014,A.DiagnosticCategory.Error,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:r(4016,A.DiagnosticCategory.Error,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:r(4019,A.DiagnosticCategory.Error,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:r(4020,A.DiagnosticCategory.Error,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:r(4021,A.DiagnosticCategory.Error,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:r(4022,A.DiagnosticCategory.Error,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4023,A.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:r(4024,A.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:r(4025,A.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4026,A.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:r(4027,A.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:r(4028,A.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4029,A.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:r(4030,A.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:r(4031,A.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:r(4032,A.DiagnosticCategory.Error,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:r(4033,A.DiagnosticCategory.Error,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:r(4034,A.DiagnosticCategory.Error,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:r(4035,A.DiagnosticCategory.Error,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:r(4036,A.DiagnosticCategory.Error,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:r(4037,A.DiagnosticCategory.Error,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4038,A.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:r(4039,A.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:r(4040,A.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4041,A.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:r(4042,A.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:r(4043,A.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:r(4044,A.DiagnosticCategory.Error,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:r(4045,A.DiagnosticCategory.Error,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:r(4046,A.DiagnosticCategory.Error,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:r(4047,A.DiagnosticCategory.Error,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:r(4048,A.DiagnosticCategory.Error,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:r(4049,A.DiagnosticCategory.Error,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:r(4050,A.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:r(4051,A.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:r(4052,A.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:r(4053,A.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:r(4054,A.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:r(4055,A.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:r(4056,A.DiagnosticCategory.Error,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:r(4057,A.DiagnosticCategory.Error,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:r(4058,A.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:r(4059,A.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:r(4060,A.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4061,A.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:r(4062,A.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:r(4063,A.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:r(4064,A.DiagnosticCategory.Error,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:r(4065,A.DiagnosticCategory.Error,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:r(4066,A.DiagnosticCategory.Error,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:r(4067,A.DiagnosticCategory.Error,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4068,A.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:r(4069,A.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:r(4070,A.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4071,A.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:r(4072,A.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:r(4073,A.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:r(4074,A.DiagnosticCategory.Error,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:r(4075,A.DiagnosticCategory.Error,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4076,A.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:r(4077,A.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:r(4078,A.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:r(4081,A.DiagnosticCategory.Error,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:r(4082,A.DiagnosticCategory.Error,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:r(4083,A.DiagnosticCategory.Error,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:r(4084,A.DiagnosticCategory.Error,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict:r(4090,A.DiagnosticCategory.Error,"Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_librar_4090","Conflicting definitions for '{0}' found at '{1}' and '{2}'. Consider installing a specific version of this library to resolve the conflict."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:r(4091,A.DiagnosticCategory.Error,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:r(4092,A.DiagnosticCategory.Error,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_class_expression_may_not_be_private_or_protected:r(4094,A.DiagnosticCategory.Error,"Property_0_of_exported_class_expression_may_not_be_private_or_protected_4094","Property '{0}' of exported class expression may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4095,A.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:r(4096,A.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:r(4097,A.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4098,A.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:r(4099,A.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:r(4100,A.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:r(4101,A.DiagnosticCategory.Error,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:r(4102,A.DiagnosticCategory.Error,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:r(4103,A.DiagnosticCategory.Error,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:r(4104,A.DiagnosticCategory.Error,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:r(4105,A.DiagnosticCategory.Error,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:r(4106,A.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:r(4107,A.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:r(4108,A.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:r(4109,A.DiagnosticCategory.Error,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:r(4110,A.DiagnosticCategory.Error,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:r(4111,A.DiagnosticCategory.Error,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:r(4112,A.DiagnosticCategory.Error,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:r(4113,A.DiagnosticCategory.Error,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:r(4114,A.DiagnosticCategory.Error,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:r(4115,A.DiagnosticCategory.Error,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:r(4116,A.DiagnosticCategory.Error,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:r(4117,A.DiagnosticCategory.Error,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:r(4118,A.DiagnosticCategory.Error,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:r(4119,A.DiagnosticCategory.Error,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:r(4120,A.DiagnosticCategory.Error,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:r(4121,A.DiagnosticCategory.Error,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:r(4122,A.DiagnosticCategory.Error,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:r(4123,A.DiagnosticCategory.Error,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:r(4124,A.DiagnosticCategory.Error,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),resolution_mode_assertions_are_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:r(4125,A.DiagnosticCategory.Error,"resolution_mode_assertions_are_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_wi_4125","'resolution-mode' assertions are unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),The_current_host_does_not_support_the_0_option:r(5001,A.DiagnosticCategory.Error,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:r(5009,A.DiagnosticCategory.Error,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:r(5010,A.DiagnosticCategory.Error,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:r(5012,A.DiagnosticCategory.Error,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:r(5014,A.DiagnosticCategory.Error,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:r(5023,A.DiagnosticCategory.Error,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:r(5024,A.DiagnosticCategory.Error,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:r(5025,A.DiagnosticCategory.Error,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:r(5033,A.DiagnosticCategory.Error,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:r(5042,A.DiagnosticCategory.Error,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:r(5047,A.DiagnosticCategory.Error,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_cannot_be_specified_when_option_target_is_ES3:r(5048,A.DiagnosticCategory.Error,"Option_0_cannot_be_specified_when_option_target_is_ES3_5048","Option '{0}' cannot be specified when option 'target' is 'ES3'."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:r(5051,A.DiagnosticCategory.Error,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:r(5052,A.DiagnosticCategory.Error,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:r(5053,A.DiagnosticCategory.Error,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:r(5054,A.DiagnosticCategory.Error,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:r(5055,A.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:r(5056,A.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:r(5057,A.DiagnosticCategory.Error,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:r(5058,A.DiagnosticCategory.Error,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:r(5059,A.DiagnosticCategory.Error,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:r(5061,A.DiagnosticCategory.Error,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:r(5062,A.DiagnosticCategory.Error,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:r(5063,A.DiagnosticCategory.Error,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:r(5064,A.DiagnosticCategory.Error,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:r(5065,A.DiagnosticCategory.Error,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:r(5066,A.DiagnosticCategory.Error,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:r(5067,A.DiagnosticCategory.Error,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:r(5068,A.DiagnosticCategory.Error,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:r(5069,A.DiagnosticCategory.Error,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy:r(5070,A.DiagnosticCategory.Error,"Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy_5070","Option '--resolveJsonModule' cannot be specified without 'node' module resolution strategy."),Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext:r(5071,A.DiagnosticCategory.Error,"Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_5071","Option '--resolveJsonModule' can only be specified when module code generation is 'commonjs', 'amd', 'es2015' or 'esNext'."),Unknown_build_option_0:r(5072,A.DiagnosticCategory.Error,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:r(5073,A.DiagnosticCategory.Error,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:r(5074,A.DiagnosticCategory.Error,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:r(5075,A.DiagnosticCategory.Error,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:r(5076,A.DiagnosticCategory.Error,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:r(5077,A.DiagnosticCategory.Error,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:r(5078,A.DiagnosticCategory.Error,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:r(5079,A.DiagnosticCategory.Error,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:r(5080,A.DiagnosticCategory.Error,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:r(5081,A.DiagnosticCategory.Error,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:r(5082,A.DiagnosticCategory.Error,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:r(5083,A.DiagnosticCategory.Error,"Cannot_read_file_0_5083","Cannot read file '{0}'."),Tuple_members_must_all_have_names_or_all_not_have_names:r(5084,A.DiagnosticCategory.Error,"Tuple_members_must_all_have_names_or_all_not_have_names_5084","Tuple members must all have names or all not have names."),A_tuple_member_cannot_be_both_optional_and_rest:r(5085,A.DiagnosticCategory.Error,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:r(5086,A.DiagnosticCategory.Error,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:r(5087,A.DiagnosticCategory.Error,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:r(5088,A.DiagnosticCategory.Error,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:r(5089,A.DiagnosticCategory.Error,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:r(5090,A.DiagnosticCategory.Error,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled:r(5091,A.DiagnosticCategory.Error,"Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when 'isolatedModules' is enabled."),The_root_value_of_a_0_file_must_be_an_object:r(5092,A.DiagnosticCategory.Error,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:r(5093,A.DiagnosticCategory.Error,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:r(5094,A.DiagnosticCategory.Error,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_preserveValueImports_can_only_be_used_when_module_is_set_to_es2015_or_later:r(5095,A.DiagnosticCategory.Error,"Option_preserveValueImports_can_only_be_used_when_module_is_set_to_es2015_or_later_5095","Option 'preserveValueImports' can only be used when 'module' is set to 'es2015' or later."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:r(6e3,A.DiagnosticCategory.Message,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:r(6001,A.DiagnosticCategory.Message,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:r(6002,A.DiagnosticCategory.Message,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:r(6004,A.DiagnosticCategory.Message,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:r(6005,A.DiagnosticCategory.Message,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:r(6006,A.DiagnosticCategory.Message,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:r(6007,A.DiagnosticCategory.Message,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:r(6008,A.DiagnosticCategory.Message,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:r(6009,A.DiagnosticCategory.Message,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:r(6010,A.DiagnosticCategory.Message,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:r(6011,A.DiagnosticCategory.Message,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:r(6012,A.DiagnosticCategory.Message,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:r(6013,A.DiagnosticCategory.Message,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:r(6014,A.DiagnosticCategory.Message,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:r(6015,A.DiagnosticCategory.Message,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:r(6016,A.DiagnosticCategory.Message,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:r(6017,A.DiagnosticCategory.Message,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:r(6019,A.DiagnosticCategory.Message,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:r(6020,A.DiagnosticCategory.Message,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:r(6023,A.DiagnosticCategory.Message,"Syntax_Colon_0_6023","Syntax: {0}"),options:r(6024,A.DiagnosticCategory.Message,"options_6024","options"),file:r(6025,A.DiagnosticCategory.Message,"file_6025","file"),Examples_Colon_0:r(6026,A.DiagnosticCategory.Message,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:r(6027,A.DiagnosticCategory.Message,"Options_Colon_6027","Options:"),Version_0:r(6029,A.DiagnosticCategory.Message,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:r(6030,A.DiagnosticCategory.Message,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:r(6031,A.DiagnosticCategory.Message,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:r(6032,A.DiagnosticCategory.Message,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:r(6034,A.DiagnosticCategory.Message,"KIND_6034","KIND"),FILE:r(6035,A.DiagnosticCategory.Message,"FILE_6035","FILE"),VERSION:r(6036,A.DiagnosticCategory.Message,"VERSION_6036","VERSION"),LOCATION:r(6037,A.DiagnosticCategory.Message,"LOCATION_6037","LOCATION"),DIRECTORY:r(6038,A.DiagnosticCategory.Message,"DIRECTORY_6038","DIRECTORY"),STRATEGY:r(6039,A.DiagnosticCategory.Message,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:r(6040,A.DiagnosticCategory.Message,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:r(6041,A.DiagnosticCategory.Message,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:r(6043,A.DiagnosticCategory.Message,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:r(6044,A.DiagnosticCategory.Error,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:r(6045,A.DiagnosticCategory.Error,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:r(6046,A.DiagnosticCategory.Error,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:r(6048,A.DiagnosticCategory.Error,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:r(6050,A.DiagnosticCategory.Error,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:r(6051,A.DiagnosticCategory.Error,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:r(6052,A.DiagnosticCategory.Message,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:r(6053,A.DiagnosticCategory.Error,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:r(6054,A.DiagnosticCategory.Error,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:r(6055,A.DiagnosticCategory.Message,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:r(6056,A.DiagnosticCategory.Message,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:r(6058,A.DiagnosticCategory.Message,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:r(6059,A.DiagnosticCategory.Error,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:r(6060,A.DiagnosticCategory.Message,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:r(6061,A.DiagnosticCategory.Message,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:r(6064,A.DiagnosticCategory.Error,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:r(6065,A.DiagnosticCategory.Message,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:r(6066,A.DiagnosticCategory.Message,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6:r(6069,A.DiagnosticCategory.Message,"Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6_6069","Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6)."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:r(6070,A.DiagnosticCategory.Message,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:r(6071,A.DiagnosticCategory.Message,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:r(6072,A.DiagnosticCategory.Message,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:r(6073,A.DiagnosticCategory.Message,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:r(6074,A.DiagnosticCategory.Message,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:r(6075,A.DiagnosticCategory.Message,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:r(6076,A.DiagnosticCategory.Message,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:r(6077,A.DiagnosticCategory.Message,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:r(6078,A.DiagnosticCategory.Message,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:r(6079,A.DiagnosticCategory.Message,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:r(6080,A.DiagnosticCategory.Message,"Specify_JSX_code_generation_6080","Specify JSX code generation."),File_0_has_an_unsupported_extension_so_skipping_it:r(6081,A.DiagnosticCategory.Message,"File_0_has_an_unsupported_extension_so_skipping_it_6081","File '{0}' has an unsupported extension, so skipping it."),Only_amd_and_system_modules_are_supported_alongside_0:r(6082,A.DiagnosticCategory.Error,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:r(6083,A.DiagnosticCategory.Message,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:r(6084,A.DiagnosticCategory.Message,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:r(6085,A.DiagnosticCategory.Message,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:r(6086,A.DiagnosticCategory.Message,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:r(6087,A.DiagnosticCategory.Message,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:r(6088,A.DiagnosticCategory.Message,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:r(6089,A.DiagnosticCategory.Message,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:r(6090,A.DiagnosticCategory.Message,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:r(6091,A.DiagnosticCategory.Message,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:r(6092,A.DiagnosticCategory.Message,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:r(6093,A.DiagnosticCategory.Message,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:r(6094,A.DiagnosticCategory.Message,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1:r(6095,A.DiagnosticCategory.Message,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1_6095","Loading module as file / folder, candidate module location '{0}', target file type '{1}'."),File_0_does_not_exist:r(6096,A.DiagnosticCategory.Message,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exist_use_it_as_a_name_resolution_result:r(6097,A.DiagnosticCategory.Message,"File_0_exist_use_it_as_a_name_resolution_result_6097","File '{0}' exist - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_type_1:r(6098,A.DiagnosticCategory.Message,"Loading_module_0_from_node_modules_folder_target_file_type_1_6098","Loading module '{0}' from 'node_modules' folder, target file type '{1}'."),Found_package_json_at_0:r(6099,A.DiagnosticCategory.Message,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:r(6100,A.DiagnosticCategory.Message,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:r(6101,A.DiagnosticCategory.Message,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:r(6102,A.DiagnosticCategory.Message,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:r(6104,A.DiagnosticCategory.Message,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:r(6105,A.DiagnosticCategory.Message,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:r(6106,A.DiagnosticCategory.Message,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:r(6107,A.DiagnosticCategory.Message,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:r(6108,A.DiagnosticCategory.Message,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:r(6109,A.DiagnosticCategory.Message,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:r(6110,A.DiagnosticCategory.Message,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:r(6111,A.DiagnosticCategory.Message,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:r(6112,A.DiagnosticCategory.Message,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:r(6113,A.DiagnosticCategory.Message,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:r(6114,A.DiagnosticCategory.Error,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:r(6115,A.DiagnosticCategory.Message,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:r(6116,A.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:r(6119,A.DiagnosticCategory.Message,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:r(6120,A.DiagnosticCategory.Message,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:r(6121,A.DiagnosticCategory.Message,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:r(6122,A.DiagnosticCategory.Message,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:r(6123,A.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:r(6124,A.DiagnosticCategory.Message,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:r(6125,A.DiagnosticCategory.Message,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:r(6126,A.DiagnosticCategory.Message,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:r(6127,A.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:r(6128,A.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:r(6130,A.DiagnosticCategory.Message,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:r(6131,A.DiagnosticCategory.Error,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:r(6132,A.DiagnosticCategory.Message,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:r(6133,A.DiagnosticCategory.Error,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:r(6134,A.DiagnosticCategory.Message,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:r(6135,A.DiagnosticCategory.Message,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:r(6136,A.DiagnosticCategory.Message,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:r(6137,A.DiagnosticCategory.Error,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:r(6138,A.DiagnosticCategory.Error,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:r(6139,A.DiagnosticCategory.Message,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:r(6140,A.DiagnosticCategory.Error,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:r(6141,A.DiagnosticCategory.Message,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:r(6142,A.DiagnosticCategory.Error,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:r(6144,A.DiagnosticCategory.Message,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified:r(6145,A.DiagnosticCategory.Message,"Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified_6145","Module '{0}' was resolved as ambient module declared in '{1}' since this file was not modified."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:r(6146,A.DiagnosticCategory.Message,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:r(6147,A.DiagnosticCategory.Message,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:r(6148,A.DiagnosticCategory.Message,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:r(6149,A.DiagnosticCategory.Message,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:r(6150,A.DiagnosticCategory.Message,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:r(6151,A.DiagnosticCategory.Message,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:r(6152,A.DiagnosticCategory.Message,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:r(6153,A.DiagnosticCategory.Message,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:r(6154,A.DiagnosticCategory.Message,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:r(6155,A.DiagnosticCategory.Message,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:r(6156,A.DiagnosticCategory.Message,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:r(6157,A.DiagnosticCategory.Message,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:r(6158,A.DiagnosticCategory.Message,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:r(6159,A.DiagnosticCategory.Message,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:r(6160,A.DiagnosticCategory.Message,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:r(6161,A.DiagnosticCategory.Message,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:r(6162,A.DiagnosticCategory.Message,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:r(6163,A.DiagnosticCategory.Message,"The_character_set_of_the_input_files_6163","The character set of the input files."),Do_not_truncate_error_messages:r(6165,A.DiagnosticCategory.Message,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:r(6166,A.DiagnosticCategory.Message,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:r(6167,A.DiagnosticCategory.Message,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:r(6168,A.DiagnosticCategory.Message,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:r(6169,A.DiagnosticCategory.Message,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:r(6170,A.DiagnosticCategory.Message,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:r(6171,A.DiagnosticCategory.Message,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3:r(6179,A.DiagnosticCategory.Message,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'."),Enable_all_strict_type_checking_options:r(6180,A.DiagnosticCategory.Message,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:r(6182,A.DiagnosticCategory.Message,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:r(6183,A.DiagnosticCategory.Message,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:r(6184,A.DiagnosticCategory.Message,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:r(6186,A.DiagnosticCategory.Message,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:r(6187,A.DiagnosticCategory.Message,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:r(6188,A.DiagnosticCategory.Error,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:r(6189,A.DiagnosticCategory.Error,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:r(6191,A.DiagnosticCategory.Message,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:r(6192,A.DiagnosticCategory.Error,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:r(6193,A.DiagnosticCategory.Message,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:r(6194,A.DiagnosticCategory.Message,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:r(6195,A.DiagnosticCategory.Message,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:r(6196,A.DiagnosticCategory.Error,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:r(6197,A.DiagnosticCategory.Message,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:r(6198,A.DiagnosticCategory.Error,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:r(6199,A.DiagnosticCategory.Error,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:r(6200,A.DiagnosticCategory.Error,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:r(6201,A.DiagnosticCategory.Message,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:r(6202,A.DiagnosticCategory.Error,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:r(6203,A.DiagnosticCategory.Message,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:r(6204,A.DiagnosticCategory.Message,"and_here_6204","and here."),All_type_parameters_are_unused:r(6205,A.DiagnosticCategory.Error,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:r(6206,A.DiagnosticCategory.Message,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:r(6207,A.DiagnosticCategory.Message,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:r(6208,A.DiagnosticCategory.Message,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:r(6209,A.DiagnosticCategory.Message,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:r(6210,A.DiagnosticCategory.Message,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:r(6211,A.DiagnosticCategory.Message,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:r(6212,A.DiagnosticCategory.Message,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:r(6213,A.DiagnosticCategory.Message,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:r(6214,A.DiagnosticCategory.Message,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:r(6215,A.DiagnosticCategory.Message,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:r(6216,A.DiagnosticCategory.Message,"Found_1_error_6216","Found 1 error."),Found_0_errors:r(6217,A.DiagnosticCategory.Message,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:r(6218,A.DiagnosticCategory.Message,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:r(6219,A.DiagnosticCategory.Message,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:r(6220,A.DiagnosticCategory.Message,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:r(6221,A.DiagnosticCategory.Message,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:r(6222,A.DiagnosticCategory.Message,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:r(6223,A.DiagnosticCategory.Message,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:r(6224,A.DiagnosticCategory.Message,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:r(6225,A.DiagnosticCategory.Message,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:r(6226,A.DiagnosticCategory.Message,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:r(6227,A.DiagnosticCategory.Message,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:r(6229,A.DiagnosticCategory.Error,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:r(6230,A.DiagnosticCategory.Error,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:r(6231,A.DiagnosticCategory.Error,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:r(6232,A.DiagnosticCategory.Error,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:r(6233,A.DiagnosticCategory.Error,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:r(6234,A.DiagnosticCategory.Error,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:r(6235,A.DiagnosticCategory.Message,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:r(6236,A.DiagnosticCategory.Error,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:r(6237,A.DiagnosticCategory.Message,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:r(6238,A.DiagnosticCategory.Error,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:r(6239,A.DiagnosticCategory.Message,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:r(6240,A.DiagnosticCategory.Message,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:r(6241,A.DiagnosticCategory.Message,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:r(6242,A.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:r(6243,A.DiagnosticCategory.Message,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:r(6244,A.DiagnosticCategory.Message,"Modules_6244","Modules"),File_Management:r(6245,A.DiagnosticCategory.Message,"File_Management_6245","File Management"),Emit:r(6246,A.DiagnosticCategory.Message,"Emit_6246","Emit"),JavaScript_Support:r(6247,A.DiagnosticCategory.Message,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:r(6248,A.DiagnosticCategory.Message,"Type_Checking_6248","Type Checking"),Editor_Support:r(6249,A.DiagnosticCategory.Message,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:r(6250,A.DiagnosticCategory.Message,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:r(6251,A.DiagnosticCategory.Message,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:r(6252,A.DiagnosticCategory.Message,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:r(6253,A.DiagnosticCategory.Message,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:r(6254,A.DiagnosticCategory.Message,"Language_and_Environment_6254","Language and Environment"),Projects:r(6255,A.DiagnosticCategory.Message,"Projects_6255","Projects"),Output_Formatting:r(6256,A.DiagnosticCategory.Message,"Output_Formatting_6256","Output Formatting"),Completeness:r(6257,A.DiagnosticCategory.Message,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:r(6258,A.DiagnosticCategory.Error,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_1:r(6259,A.DiagnosticCategory.Message,"Found_1_error_in_1_6259","Found 1 error in {1}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:r(6260,A.DiagnosticCategory.Message,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:r(6261,A.DiagnosticCategory.Message,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:r(6270,A.DiagnosticCategory.Message,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:r(6271,A.DiagnosticCategory.Message,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:r(6272,A.DiagnosticCategory.Message,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:r(6273,A.DiagnosticCategory.Message,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:r(6274,A.DiagnosticCategory.Message,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:r(6275,A.DiagnosticCategory.Message,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:r(6276,A.DiagnosticCategory.Message,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Enable_project_compilation:r(6302,A.DiagnosticCategory.Message,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:r(6304,A.DiagnosticCategory.Error,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:r(6305,A.DiagnosticCategory.Error,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:r(6306,A.DiagnosticCategory.Error,"Referenced_project_0_must_have_setting_composite_Colon_true_6306",`Referenced project '{0}' must have setting "composite": true.`),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:r(6307,A.DiagnosticCategory.Error,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Cannot_prepend_project_0_because_it_does_not_have_outFile_set:r(6308,A.DiagnosticCategory.Error,"Cannot_prepend_project_0_because_it_does_not_have_outFile_set_6308","Cannot prepend project '{0}' because it does not have 'outFile' set"),Output_file_0_from_project_1_does_not_exist:r(6309,A.DiagnosticCategory.Error,"Output_file_0_from_project_1_does_not_exist_6309","Output file '{0}' from project '{1}' does not exist"),Referenced_project_0_may_not_disable_emit:r(6310,A.DiagnosticCategory.Error,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:r(6350,A.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:r(6351,A.DiagnosticCategory.Message,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:r(6352,A.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:r(6353,A.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:r(6354,A.DiagnosticCategory.Message,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:r(6355,A.DiagnosticCategory.Message,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:r(6356,A.DiagnosticCategory.Message,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:r(6357,A.DiagnosticCategory.Message,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:r(6358,A.DiagnosticCategory.Message,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:r(6359,A.DiagnosticCategory.Message,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:r(6361,A.DiagnosticCategory.Message,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:r(6362,A.DiagnosticCategory.Message,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:r(6363,A.DiagnosticCategory.Message,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:r(6364,A.DiagnosticCategory.Message,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:r(6365,A.DiagnosticCategory.Message,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:r(6367,A.DiagnosticCategory.Message,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:r(6369,A.DiagnosticCategory.Error,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:r(6370,A.DiagnosticCategory.Error,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:r(6371,A.DiagnosticCategory.Message,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed:r(6372,A.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed_6372","Project '{0}' is out of date because output of its dependency '{1}' has changed"),Updating_output_of_project_0:r(6373,A.DiagnosticCategory.Message,"Updating_output_of_project_0_6373","Updating output of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:r(6374,A.DiagnosticCategory.Message,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),A_non_dry_build_would_update_output_of_project_0:r(6375,A.DiagnosticCategory.Message,"A_non_dry_build_would_update_output_of_project_0_6375","A non-dry build would update output of project '{0}'"),Cannot_update_output_of_project_0_because_there_was_error_reading_file_1:r(6376,A.DiagnosticCategory.Message,"Cannot_update_output_of_project_0_because_there_was_error_reading_file_1_6376","Cannot update output of project '{0}' because there was error reading file '{1}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:r(6377,A.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:r(6379,A.DiagnosticCategory.Error,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:r(6380,A.DiagnosticCategory.Message,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:r(6381,A.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:r(6382,A.DiagnosticCategory.Message,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:r(6383,A.DiagnosticCategory.Message,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:r(6384,A.DiagnosticCategory.Message,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:r(6385,A.DiagnosticCategory.Suggestion,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:r(6386,A.DiagnosticCategory.Message,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:r(6387,A.DiagnosticCategory.Suggestion,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:r(6388,A.DiagnosticCategory.Message,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:r(6389,A.DiagnosticCategory.Message,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:r(6390,A.DiagnosticCategory.Message,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:r(6391,A.DiagnosticCategory.Message,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:r(6392,A.DiagnosticCategory.Message,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:r(6393,A.DiagnosticCategory.Message,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:r(6394,A.DiagnosticCategory.Message,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:r(6395,A.DiagnosticCategory.Message,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:r(6396,A.DiagnosticCategory.Message,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:r(6397,A.DiagnosticCategory.Message,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:r(6398,A.DiagnosticCategory.Message,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:r(6399,A.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:r(6400,A.DiagnosticCategory.Message,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:r(6401,A.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:r(6402,A.DiagnosticCategory.Message,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:r(6403,A.DiagnosticCategory.Message,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:r(6404,A.DiagnosticCategory.Message,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:r(6405,A.DiagnosticCategory.Message,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:r(6500,A.DiagnosticCategory.Message,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:r(6501,A.DiagnosticCategory.Message,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:r(6502,A.DiagnosticCategory.Message,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:r(6503,A.DiagnosticCategory.Message,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:r(6504,A.DiagnosticCategory.Error,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:r(6505,A.DiagnosticCategory.Message,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:r(6506,A.DiagnosticCategory.Message,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these_files:r(6600,A.DiagnosticCategory.Message,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:r(6601,A.DiagnosticCategory.Message,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:r(6602,A.DiagnosticCategory.Message,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:r(6603,A.DiagnosticCategory.Message,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:r(6604,A.DiagnosticCategory.Message,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:r(6605,A.DiagnosticCategory.Message,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:r(6606,A.DiagnosticCategory.Message,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:r(6607,A.DiagnosticCategory.Message,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:r(6608,A.DiagnosticCategory.Message,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:r(6609,A.DiagnosticCategory.Message,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:r(6611,A.DiagnosticCategory.Message,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:r(6612,A.DiagnosticCategory.Message,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:r(6613,A.DiagnosticCategory.Message,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:r(6614,A.DiagnosticCategory.Message,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:r(6615,A.DiagnosticCategory.Message,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:r(6616,A.DiagnosticCategory.Message,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:r(6617,A.DiagnosticCategory.Message,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:r(6618,A.DiagnosticCategory.Message,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:r(6619,A.DiagnosticCategory.Message,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:r(6620,A.DiagnosticCategory.Message,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:r(6621,A.DiagnosticCategory.Message,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:r(6622,A.DiagnosticCategory.Message,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:r(6623,A.DiagnosticCategory.Message,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:r(6624,A.DiagnosticCategory.Message,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:r(6625,A.DiagnosticCategory.Message,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:r(6626,A.DiagnosticCategory.Message,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:r(6627,A.DiagnosticCategory.Message,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:r(6628,A.DiagnosticCategory.Message,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:r(6629,A.DiagnosticCategory.Message,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_TC39_stage_2_draft_decorators:r(6630,A.DiagnosticCategory.Message,"Enable_experimental_support_for_TC39_stage_2_draft_decorators_6630","Enable experimental support for TC39 stage 2 draft decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:r(6631,A.DiagnosticCategory.Message,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:r(6632,A.DiagnosticCategory.Message,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:r(6633,A.DiagnosticCategory.Message,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:r(6634,A.DiagnosticCategory.Message,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:r(6635,A.DiagnosticCategory.Message,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:r(6636,A.DiagnosticCategory.Message,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:r(6637,A.DiagnosticCategory.Message,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:r(6638,A.DiagnosticCategory.Message,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:r(6639,A.DiagnosticCategory.Message,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:r(6641,A.DiagnosticCategory.Message,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:r(6642,A.DiagnosticCategory.Message,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:r(6643,A.DiagnosticCategory.Message,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:r(6644,A.DiagnosticCategory.Message,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:r(6645,A.DiagnosticCategory.Message,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:r(6646,A.DiagnosticCategory.Message,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:r(6647,A.DiagnosticCategory.Message,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:r(6648,A.DiagnosticCategory.Message,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:r(6649,A.DiagnosticCategory.Message,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:r(6650,A.DiagnosticCategory.Message,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:r(6651,A.DiagnosticCategory.Message,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:r(6652,A.DiagnosticCategory.Message,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:r(6653,A.DiagnosticCategory.Message,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:r(6654,A.DiagnosticCategory.Message,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:r(6655,A.DiagnosticCategory.Message,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:r(6656,A.DiagnosticCategory.Message,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:r(6657,A.DiagnosticCategory.Message,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:r(6658,A.DiagnosticCategory.Message,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:r(6659,A.DiagnosticCategory.Message,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:r(6660,A.DiagnosticCategory.Message,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:r(6661,A.DiagnosticCategory.Message,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:r(6662,A.DiagnosticCategory.Message,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:r(6663,A.DiagnosticCategory.Message,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:r(6664,A.DiagnosticCategory.Message,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:r(6665,A.DiagnosticCategory.Message,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:r(6666,A.DiagnosticCategory.Message,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:r(6667,A.DiagnosticCategory.Message,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:r(6668,A.DiagnosticCategory.Message,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:r(6669,A.DiagnosticCategory.Message,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:r(6670,A.DiagnosticCategory.Message,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:r(6671,A.DiagnosticCategory.Message,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:r(6672,A.DiagnosticCategory.Message,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:r(6673,A.DiagnosticCategory.Message,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:r(6674,A.DiagnosticCategory.Message,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:r(6675,A.DiagnosticCategory.Message,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:r(6676,A.DiagnosticCategory.Message,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:r(6677,A.DiagnosticCategory.Message,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:r(6678,A.DiagnosticCategory.Message,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:r(6679,A.DiagnosticCategory.Message,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:r(6680,A.DiagnosticCategory.Message,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:r(6681,A.DiagnosticCategory.Message,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:r(6682,A.DiagnosticCategory.Message,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:r(6683,A.DiagnosticCategory.Message,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:r(6684,A.DiagnosticCategory.Message,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:r(6685,A.DiagnosticCategory.Message,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:r(6686,A.DiagnosticCategory.Message,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:r(6687,A.DiagnosticCategory.Message,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:r(6688,A.DiagnosticCategory.Message,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:r(6689,A.DiagnosticCategory.Message,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:r(6690,A.DiagnosticCategory.Message,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:r(6691,A.DiagnosticCategory.Message,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:r(6692,A.DiagnosticCategory.Message,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:r(6693,A.DiagnosticCategory.Message,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:r(6694,A.DiagnosticCategory.Message,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:r(6695,A.DiagnosticCategory.Message,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:r(6697,A.DiagnosticCategory.Message,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:r(6698,A.DiagnosticCategory.Message,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:r(6699,A.DiagnosticCategory.Message,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:r(6700,A.DiagnosticCategory.Message,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:r(6701,A.DiagnosticCategory.Message,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:r(6702,A.DiagnosticCategory.Message,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:r(6703,A.DiagnosticCategory.Message,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:r(6704,A.DiagnosticCategory.Message,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:r(6705,A.DiagnosticCategory.Message,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:r(6706,A.DiagnosticCategory.Message,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:r(6707,A.DiagnosticCategory.Message,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:r(6709,A.DiagnosticCategory.Message,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:r(6710,A.DiagnosticCategory.Message,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:r(6711,A.DiagnosticCategory.Message,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:r(6712,A.DiagnosticCategory.Message,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:r(6713,A.DiagnosticCategory.Message,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:r(6714,A.DiagnosticCategory.Message,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:r(6715,A.DiagnosticCategory.Message,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:r(6717,A.DiagnosticCategory.Message,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:r(6718,A.DiagnosticCategory.Message,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Default_catch_clause_variables_as_unknown_instead_of_any:r(6803,A.DiagnosticCategory.Message,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),one_of_Colon:r(6900,A.DiagnosticCategory.Message,"one_of_Colon_6900","one of:"),one_or_more_Colon:r(6901,A.DiagnosticCategory.Message,"one_or_more_Colon_6901","one or more:"),type_Colon:r(6902,A.DiagnosticCategory.Message,"type_Colon_6902","type:"),default_Colon:r(6903,A.DiagnosticCategory.Message,"default_Colon_6903","default:"),module_system_or_esModuleInterop:r(6904,A.DiagnosticCategory.Message,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:r(6905,A.DiagnosticCategory.Message,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:r(6906,A.DiagnosticCategory.Message,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:r(6907,A.DiagnosticCategory.Message,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:r(6908,A.DiagnosticCategory.Message,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:r(6909,A.DiagnosticCategory.Message,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:r(69010,A.DiagnosticCategory.Message,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:r(6911,A.DiagnosticCategory.Message,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:r(6912,A.DiagnosticCategory.Message,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:r(6913,A.DiagnosticCategory.Message,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:r(6914,A.DiagnosticCategory.Message,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:r(6915,A.DiagnosticCategory.Message,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:r(6916,A.DiagnosticCategory.Message,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:r(6917,A.DiagnosticCategory.Message,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:r(6918,A.DiagnosticCategory.Message,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:r(6919,A.DiagnosticCategory.Message,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:r(6920,A.DiagnosticCategory.Message,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:r(6921,A.DiagnosticCategory.Message,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:r(6922,A.DiagnosticCategory.Message,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:r(6923,A.DiagnosticCategory.Message,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:r(6924,A.DiagnosticCategory.Message,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:r(6925,A.DiagnosticCategory.Message,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:r(6926,A.DiagnosticCategory.Message,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:r(6927,A.DiagnosticCategory.Message,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:r(6928,A.DiagnosticCategory.Message,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:r(6929,A.DiagnosticCategory.Message,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:r(6930,A.DiagnosticCategory.Message,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:r(6931,A.DiagnosticCategory.Error,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:r(7005,A.DiagnosticCategory.Error,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:r(7006,A.DiagnosticCategory.Error,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:r(7008,A.DiagnosticCategory.Error,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:r(7009,A.DiagnosticCategory.Error,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:r(7010,A.DiagnosticCategory.Error,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:r(7011,A.DiagnosticCategory.Error,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:r(7013,A.DiagnosticCategory.Error,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:r(7014,A.DiagnosticCategory.Error,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:r(7015,A.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:r(7016,A.DiagnosticCategory.Error,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:r(7017,A.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:r(7018,A.DiagnosticCategory.Error,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:r(7019,A.DiagnosticCategory.Error,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:r(7020,A.DiagnosticCategory.Error,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:r(7022,A.DiagnosticCategory.Error,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:r(7023,A.DiagnosticCategory.Error,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:r(7024,A.DiagnosticCategory.Error,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:r(7025,A.DiagnosticCategory.Error,"Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_retu_7025","Generator implicitly has yield type '{0}' because it does not yield any values. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:r(7026,A.DiagnosticCategory.Error,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:r(7027,A.DiagnosticCategory.Error,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:r(7028,A.DiagnosticCategory.Error,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:r(7029,A.DiagnosticCategory.Error,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:r(7030,A.DiagnosticCategory.Error,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:r(7031,A.DiagnosticCategory.Error,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:r(7032,A.DiagnosticCategory.Error,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:r(7033,A.DiagnosticCategory.Error,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:r(7034,A.DiagnosticCategory.Error,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:r(7035,A.DiagnosticCategory.Error,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:r(7036,A.DiagnosticCategory.Error,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:r(7037,A.DiagnosticCategory.Message,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:r(7038,A.DiagnosticCategory.Message,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:r(7039,A.DiagnosticCategory.Error,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:r(7040,A.DiagnosticCategory.Error,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:r(7041,A.DiagnosticCategory.Error,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:r(7042,A.DiagnosticCategory.Error,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:r(7043,A.DiagnosticCategory.Suggestion,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:r(7044,A.DiagnosticCategory.Suggestion,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:r(7045,A.DiagnosticCategory.Suggestion,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:r(7046,A.DiagnosticCategory.Suggestion,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:r(7047,A.DiagnosticCategory.Suggestion,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:r(7048,A.DiagnosticCategory.Suggestion,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:r(7049,A.DiagnosticCategory.Suggestion,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:r(7050,A.DiagnosticCategory.Suggestion,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:r(7051,A.DiagnosticCategory.Error,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:r(7052,A.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:r(7053,A.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:r(7054,A.DiagnosticCategory.Error,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:r(7055,A.DiagnosticCategory.Error,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:r(7056,A.DiagnosticCategory.Error,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:r(7057,A.DiagnosticCategory.Error,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:r(7058,A.DiagnosticCategory.Error,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:r(7059,A.DiagnosticCategory.Error,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:r(7060,A.DiagnosticCategory.Error,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:r(7061,A.DiagnosticCategory.Error,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:r(8e3,A.DiagnosticCategory.Error,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:r(8001,A.DiagnosticCategory.Error,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:r(8002,A.DiagnosticCategory.Error,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:r(8003,A.DiagnosticCategory.Error,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:r(8004,A.DiagnosticCategory.Error,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:r(8005,A.DiagnosticCategory.Error,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:r(8006,A.DiagnosticCategory.Error,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:r(8008,A.DiagnosticCategory.Error,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:r(8009,A.DiagnosticCategory.Error,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:r(8010,A.DiagnosticCategory.Error,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:r(8011,A.DiagnosticCategory.Error,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:r(8012,A.DiagnosticCategory.Error,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:r(8013,A.DiagnosticCategory.Error,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:r(8016,A.DiagnosticCategory.Error,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:r(8017,A.DiagnosticCategory.Error,"Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0_8017","Octal literal types must use ES2015 syntax. Use the syntax '{0}'."),Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0:r(8018,A.DiagnosticCategory.Error,"Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0_8018","Octal literals are not allowed in enums members initializer. Use the syntax '{0}'."),Report_errors_in_js_files:r(8019,A.DiagnosticCategory.Message,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:r(8020,A.DiagnosticCategory.Error,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:r(8021,A.DiagnosticCategory.Error,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:r(8022,A.DiagnosticCategory.Error,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:r(8023,A.DiagnosticCategory.Error,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:r(8024,A.DiagnosticCategory.Error,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:r(8025,A.DiagnosticCategory.Error,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:r(8026,A.DiagnosticCategory.Error,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:r(8027,A.DiagnosticCategory.Error,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:r(8028,A.DiagnosticCategory.Error,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:r(8029,A.DiagnosticCategory.Error,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:r(8030,A.DiagnosticCategory.Error,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:r(8031,A.DiagnosticCategory.Error,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:r(8032,A.DiagnosticCategory.Error,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:r(8033,A.DiagnosticCategory.Error,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:r(8034,A.DiagnosticCategory.Error,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:r(8035,A.DiagnosticCategory.Error,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:r(8036,A.DiagnosticCategory.Error,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:r(8037,A.DiagnosticCategory.Error,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:r(9005,A.DiagnosticCategory.Error,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:r(9006,A.DiagnosticCategory.Error,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:r(17e3,A.DiagnosticCategory.Error,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:r(17001,A.DiagnosticCategory.Error,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:r(17002,A.DiagnosticCategory.Error,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:r(17004,A.DiagnosticCategory.Error,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:r(17005,A.DiagnosticCategory.Error,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:r(17006,A.DiagnosticCategory.Error,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:r(17007,A.DiagnosticCategory.Error,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:r(17008,A.DiagnosticCategory.Error,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:r(17009,A.DiagnosticCategory.Error,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:r(17010,A.DiagnosticCategory.Error,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:r(17011,A.DiagnosticCategory.Error,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:r(17012,A.DiagnosticCategory.Error,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:r(17013,A.DiagnosticCategory.Error,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:r(17014,A.DiagnosticCategory.Error,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:r(17015,A.DiagnosticCategory.Error,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:r(17016,A.DiagnosticCategory.Error,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:r(17017,A.DiagnosticCategory.Error,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:r(17018,A.DiagnosticCategory.Error,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),Circularity_detected_while_resolving_configuration_Colon_0:r(18e3,A.DiagnosticCategory.Error,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:r(18002,A.DiagnosticCategory.Error,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:r(18003,A.DiagnosticCategory.Error,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:r(80001,A.DiagnosticCategory.Suggestion,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:r(80002,A.DiagnosticCategory.Suggestion,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:r(80003,A.DiagnosticCategory.Suggestion,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:r(80004,A.DiagnosticCategory.Suggestion,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:r(80005,A.DiagnosticCategory.Suggestion,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:r(80006,A.DiagnosticCategory.Suggestion,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:r(80007,A.DiagnosticCategory.Suggestion,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:r(80008,A.DiagnosticCategory.Suggestion,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),Add_missing_super_call:r(90001,A.DiagnosticCategory.Message,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:r(90002,A.DiagnosticCategory.Message,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:r(90003,A.DiagnosticCategory.Message,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:r(90004,A.DiagnosticCategory.Message,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:r(90005,A.DiagnosticCategory.Message,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:r(90006,A.DiagnosticCategory.Message,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:r(90007,A.DiagnosticCategory.Message,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:r(90008,A.DiagnosticCategory.Message,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:r(90010,A.DiagnosticCategory.Message,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:r(90011,A.DiagnosticCategory.Message,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:r(90012,A.DiagnosticCategory.Message,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:r(90013,A.DiagnosticCategory.Message,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:r(90014,A.DiagnosticCategory.Message,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:r(90016,A.DiagnosticCategory.Message,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:r(90017,A.DiagnosticCategory.Message,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:r(90018,A.DiagnosticCategory.Message,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:r(90019,A.DiagnosticCategory.Message,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:r(90020,A.DiagnosticCategory.Message,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:r(90021,A.DiagnosticCategory.Message,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:r(90022,A.DiagnosticCategory.Message,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:r(90023,A.DiagnosticCategory.Message,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:r(90024,A.DiagnosticCategory.Message,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:r(90025,A.DiagnosticCategory.Message,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:r(90026,A.DiagnosticCategory.Message,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:r(90027,A.DiagnosticCategory.Message,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:r(90028,A.DiagnosticCategory.Message,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:r(90029,A.DiagnosticCategory.Message,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:r(90030,A.DiagnosticCategory.Message,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:r(90031,A.DiagnosticCategory.Message,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:r(90034,A.DiagnosticCategory.Message,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:r(90035,A.DiagnosticCategory.Message,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:r(90036,A.DiagnosticCategory.Message,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:r(90037,A.DiagnosticCategory.Message,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:r(90038,A.DiagnosticCategory.Message,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:r(90039,A.DiagnosticCategory.Message,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:r(90041,A.DiagnosticCategory.Message,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:r(90053,A.DiagnosticCategory.Message,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:r(90054,A.DiagnosticCategory.Message,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:r(90055,A.DiagnosticCategory.Message,"Remove_type_from_import_declaration_from_0_90055",`Remove 'type' from import declaration from "{0}"`),Remove_type_from_import_of_0_from_1:r(90056,A.DiagnosticCategory.Message,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:r(90057,A.DiagnosticCategory.Message,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:r(90058,A.DiagnosticCategory.Message,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:r(90059,A.DiagnosticCategory.Message,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:r(90060,A.DiagnosticCategory.Message,"Export_all_referenced_locals_90060","Export all referenced locals"),Convert_function_to_an_ES2015_class:r(95001,A.DiagnosticCategory.Message,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:r(95003,A.DiagnosticCategory.Message,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:r(95004,A.DiagnosticCategory.Message,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:r(95005,A.DiagnosticCategory.Message,"Extract_function_95005","Extract function"),Extract_constant:r(95006,A.DiagnosticCategory.Message,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:r(95007,A.DiagnosticCategory.Message,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:r(95008,A.DiagnosticCategory.Message,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:r(95009,A.DiagnosticCategory.Message,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:r(95011,A.DiagnosticCategory.Message,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:r(95012,A.DiagnosticCategory.Message,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:r(95013,A.DiagnosticCategory.Message,"Convert_to_default_import_95013","Convert to default import"),Install_0:r(95014,A.DiagnosticCategory.Message,"Install_0_95014","Install '{0}'"),Replace_import_with_0:r(95015,A.DiagnosticCategory.Message,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:r(95016,A.DiagnosticCategory.Message,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:r(95017,A.DiagnosticCategory.Message,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:r(95018,A.DiagnosticCategory.Message,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:r(95019,A.DiagnosticCategory.Message,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:r(95020,A.DiagnosticCategory.Message,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:r(95021,A.DiagnosticCategory.Message,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:r(95022,A.DiagnosticCategory.Message,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:r(95023,A.DiagnosticCategory.Message,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:r(95024,A.DiagnosticCategory.Message,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:r(95025,A.DiagnosticCategory.Message,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:r(95026,A.DiagnosticCategory.Message,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:r(95027,A.DiagnosticCategory.Message,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:r(95028,A.DiagnosticCategory.Message,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:r(95029,A.DiagnosticCategory.Message,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:r(95030,A.DiagnosticCategory.Message,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:r(95031,A.DiagnosticCategory.Message,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:r(95032,A.DiagnosticCategory.Message,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:r(95033,A.DiagnosticCategory.Message,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:r(95034,A.DiagnosticCategory.Message,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:r(95035,A.DiagnosticCategory.Message,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:r(95036,A.DiagnosticCategory.Message,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:r(95037,A.DiagnosticCategory.Message,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:r(95038,A.DiagnosticCategory.Message,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:r(95039,A.DiagnosticCategory.Message,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:r(95040,A.DiagnosticCategory.Message,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:r(95041,A.DiagnosticCategory.Message,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:r(95042,A.DiagnosticCategory.Message,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:r(95043,A.DiagnosticCategory.Message,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:r(95044,A.DiagnosticCategory.Message,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:r(95045,A.DiagnosticCategory.Message,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:r(95046,A.DiagnosticCategory.Message,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:r(95047,A.DiagnosticCategory.Message,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:r(95048,A.DiagnosticCategory.Message,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:r(95049,A.DiagnosticCategory.Message,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:r(95050,A.DiagnosticCategory.Message,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:r(95051,A.DiagnosticCategory.Message,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:r(95052,A.DiagnosticCategory.Message,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:r(95053,A.DiagnosticCategory.Message,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:r(95054,A.DiagnosticCategory.Message,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:r(95055,A.DiagnosticCategory.Message,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:r(95056,A.DiagnosticCategory.Message,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:r(95057,A.DiagnosticCategory.Message,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:r(95058,A.DiagnosticCategory.Message,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:r(95059,A.DiagnosticCategory.Message,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:r(95060,A.DiagnosticCategory.Message,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:r(95061,A.DiagnosticCategory.Message,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:r(95062,A.DiagnosticCategory.Message,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:r(95063,A.DiagnosticCategory.Message,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:r(95064,A.DiagnosticCategory.Message,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:r(95065,A.DiagnosticCategory.Message,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:r(95066,A.DiagnosticCategory.Message,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:r(95067,A.DiagnosticCategory.Message,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:r(95068,A.DiagnosticCategory.Message,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:r(95069,A.DiagnosticCategory.Message,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:r(95070,A.DiagnosticCategory.Message,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:r(95071,A.DiagnosticCategory.Message,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:r(95072,A.DiagnosticCategory.Message,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:r(95073,A.DiagnosticCategory.Message,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:r(95074,A.DiagnosticCategory.Message,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:r(95075,A.DiagnosticCategory.Message,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:r(95077,A.DiagnosticCategory.Message,"Extract_type_95077","Extract type"),Extract_to_type_alias:r(95078,A.DiagnosticCategory.Message,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:r(95079,A.DiagnosticCategory.Message,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:r(95080,A.DiagnosticCategory.Message,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:r(95081,A.DiagnosticCategory.Message,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:r(95082,A.DiagnosticCategory.Message,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:r(95083,A.DiagnosticCategory.Message,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:r(95084,A.DiagnosticCategory.Message,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:r(95085,A.DiagnosticCategory.Message,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:r(95086,A.DiagnosticCategory.Message,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:r(95087,A.DiagnosticCategory.Message,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:r(95088,A.DiagnosticCategory.Message,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:r(95089,A.DiagnosticCategory.Message,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:r(95090,A.DiagnosticCategory.Message,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:r(95091,A.DiagnosticCategory.Message,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:r(95092,A.DiagnosticCategory.Message,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:r(95093,A.DiagnosticCategory.Message,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:r(95094,A.DiagnosticCategory.Message,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:r(95095,A.DiagnosticCategory.Message,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:r(95096,A.DiagnosticCategory.Message,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:r(95097,A.DiagnosticCategory.Message,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:r(95098,A.DiagnosticCategory.Message,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:r(95099,A.DiagnosticCategory.Message,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:r(95100,A.DiagnosticCategory.Message,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:r(95101,A.DiagnosticCategory.Message,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:r(95102,A.DiagnosticCategory.Message,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:r(95105,A.DiagnosticCategory.Message,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:r(95106,A.DiagnosticCategory.Message,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:r(95107,A.DiagnosticCategory.Message,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:r(95108,A.DiagnosticCategory.Message,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:r(95109,A.DiagnosticCategory.Message,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:r(95110,A.DiagnosticCategory.Message,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:r(95111,A.DiagnosticCategory.Message,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:r(95112,A.DiagnosticCategory.Message,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:r(95113,A.DiagnosticCategory.Message,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:r(95114,A.DiagnosticCategory.Message,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:r(95115,A.DiagnosticCategory.Message,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:r(95116,A.DiagnosticCategory.Message,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:r(95117,A.DiagnosticCategory.Message,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:r(95118,A.DiagnosticCategory.Message,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:r(95119,A.DiagnosticCategory.Message,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:r(95120,A.DiagnosticCategory.Message,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:r(95121,A.DiagnosticCategory.Message,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:r(95122,A.DiagnosticCategory.Message,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:r(95123,A.DiagnosticCategory.Message,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:r(95124,A.DiagnosticCategory.Message,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:r(95125,A.DiagnosticCategory.Message,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:r(95126,A.DiagnosticCategory.Message,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:r(95127,A.DiagnosticCategory.Message,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:r(95128,A.DiagnosticCategory.Message,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:r(95129,A.DiagnosticCategory.Message,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:r(95130,A.DiagnosticCategory.Message,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:r(95131,A.DiagnosticCategory.Message,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:r(95132,A.DiagnosticCategory.Message,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:r(95133,A.DiagnosticCategory.Message,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:r(95134,A.DiagnosticCategory.Message,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:r(95135,A.DiagnosticCategory.Message,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:r(95136,A.DiagnosticCategory.Message,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:r(95137,A.DiagnosticCategory.Message,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:r(95138,A.DiagnosticCategory.Message,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:r(95139,A.DiagnosticCategory.Message,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:r(95140,A.DiagnosticCategory.Message,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:r(95141,A.DiagnosticCategory.Message,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:r(95142,A.DiagnosticCategory.Message,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:r(95143,A.DiagnosticCategory.Message,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:r(95144,A.DiagnosticCategory.Message,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:r(95145,A.DiagnosticCategory.Message,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:r(95146,A.DiagnosticCategory.Message,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:r(95147,A.DiagnosticCategory.Message,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:r(95148,A.DiagnosticCategory.Message,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:r(95149,A.DiagnosticCategory.Message,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:r(95150,A.DiagnosticCategory.Message,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:r(95151,A.DiagnosticCategory.Message,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:r(95152,A.DiagnosticCategory.Message,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:r(95153,A.DiagnosticCategory.Message,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenation:r(95154,A.DiagnosticCategory.Message,"Can_only_convert_string_concatenation_95154","Can only convert string concatenation"),Selection_is_not_a_valid_statement_or_statements:r(95155,A.DiagnosticCategory.Message,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:r(95156,A.DiagnosticCategory.Message,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:r(95157,A.DiagnosticCategory.Message,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:r(95158,A.DiagnosticCategory.Message,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:r(95159,A.DiagnosticCategory.Message,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:r(95160,A.DiagnosticCategory.Message,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:r(95161,A.DiagnosticCategory.Message,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:r(95162,A.DiagnosticCategory.Message,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:r(95163,A.DiagnosticCategory.Message,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:r(95164,A.DiagnosticCategory.Message,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:r(95165,A.DiagnosticCategory.Message,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:r(95166,A.DiagnosticCategory.Message,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:r(95167,A.DiagnosticCategory.Message,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:r(95168,A.DiagnosticCategory.Message,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:r(95169,A.DiagnosticCategory.Message,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:r(95170,A.DiagnosticCategory.Message,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:r(95171,A.DiagnosticCategory.Message,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:r(95172,A.DiagnosticCategory.Message,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:r(95173,A.DiagnosticCategory.Message,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:r(95174,A.DiagnosticCategory.Message,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:r(95175,A.DiagnosticCategory.Message,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:r(18004,A.DiagnosticCategory.Error,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:r(18006,A.DiagnosticCategory.Error,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:r(18007,A.DiagnosticCategory.Error,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:r(18009,A.DiagnosticCategory.Error,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:r(18010,A.DiagnosticCategory.Error,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:r(18011,A.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:r(18012,A.DiagnosticCategory.Error,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:r(18013,A.DiagnosticCategory.Error,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:r(18014,A.DiagnosticCategory.Error,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:r(18015,A.DiagnosticCategory.Error,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:r(18016,A.DiagnosticCategory.Error,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:r(18017,A.DiagnosticCategory.Error,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:r(18018,A.DiagnosticCategory.Error,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:r(18019,A.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:r(18024,A.DiagnosticCategory.Error,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:r(18026,A.DiagnosticCategory.Error,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:r(18027,A.DiagnosticCategory.Error,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:r(18028,A.DiagnosticCategory.Error,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:r(18029,A.DiagnosticCategory.Error,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:r(18030,A.DiagnosticCategory.Error,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:r(18031,A.DiagnosticCategory.Error,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:r(18032,A.DiagnosticCategory.Error,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhaustiveness_checks_consider_using_an_object_literal_instead:r(18033,A.DiagnosticCategory.Error,"Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhau_18033","Only numeric enums can have computed members, but this expression has type '{0}'. If you do not need exhaustiveness checks, consider using an object literal instead."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:r(18034,A.DiagnosticCategory.Message,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:r(18035,A.DiagnosticCategory.Error,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:r(18036,A.DiagnosticCategory.Error,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),Await_expression_cannot_be_used_inside_a_class_static_block:r(18037,A.DiagnosticCategory.Error,"Await_expression_cannot_be_used_inside_a_class_static_block_18037","Await expression cannot be used inside a class static block."),For_await_loops_cannot_be_used_inside_a_class_static_block:r(18038,A.DiagnosticCategory.Error,"For_await_loops_cannot_be_used_inside_a_class_static_block_18038","'For await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:r(18039,A.DiagnosticCategory.Error,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:r(18041,A.DiagnosticCategory.Error,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:r(18042,A.DiagnosticCategory.Error,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:r(18043,A.DiagnosticCategory.Error,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:r(18044,A.DiagnosticCategory.Message,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:r(18045,A.DiagnosticCategory.Error,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:r(18046,A.DiagnosticCategory.Error,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:r(18047,A.DiagnosticCategory.Error,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:r(18048,A.DiagnosticCategory.Error,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:r(18049,A.DiagnosticCategory.Error,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:r(18050,A.DiagnosticCategory.Error,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here.")}})(Oe||(Oe={}));var Oe;(function(A){var r;function t(N){return N>=79}A.tokenIsIdentifierOrKeyword=t;function i(N){return N===31||t(N)}A.tokenIsIdentifierOrKeywordOrGreaterThan=i,A.textToKeywordObj=(r={abstract:126,accessor:127,any:131,as:128,asserts:129,assert:130,bigint:160,boolean:134,break:81,case:82,catch:83,class:84,continue:86,const:85},r["constructor"]=135,r.debugger=87,r.declare=136,r.default=88,r.delete=89,r.do=90,r.else=91,r.enum=92,r.export=93,r.extends=94,r.false=95,r.finally=96,r.for=97,r.from=158,r.function=98,r.get=137,r.if=99,r.implements=117,r.import=100,r.in=101,r.infer=138,r.instanceof=102,r.interface=118,r.intrinsic=139,r.is=140,r.keyof=141,r.let=119,r.module=142,r.namespace=143,r.never=144,r.new=103,r.null=104,r.number=148,r.object=149,r.package=120,r.private=121,r.protected=122,r.public=123,r.override=161,r.out=145,r.readonly=146,r.require=147,r.global=159,r.return=105,r.satisfies=150,r.set=151,r.static=124,r.string=152,r.super=106,r.switch=107,r.symbol=153,r.this=108,r.throw=109,r.true=110,r.try=111,r.type=154,r.typeof=112,r.undefined=155,r.unique=156,r.unknown=157,r.var=113,r.void=114,r.while=115,r.with=116,r.yield=125,r.async=132,r.await=133,r.of=162,r);var o=new A.Map(A.getEntries(A.textToKeywordObj)),s=new A.Map(A.getEntries(pi(pi({},A.textToKeywordObj),{"{":18,"}":19,"(":20,")":21,"[":22,"]":23,".":24,"...":25,";":26,",":27,"<":29,">":31,"<=":32,">=":33,"==":34,"!=":35,"===":36,"!==":37,"=>":38,"+":39,"-":40,"**":42,"*":41,"/":43,"%":44,"++":45,"--":46,"<<":47,">":48,">>>":49,"&":50,"|":51,"^":52,"!":53,"~":54,"&&":55,"||":56,"?":57,"??":60,"?.":28,":":58,"=":63,"+=":64,"-=":65,"*=":66,"**=":67,"/=":68,"%=":69,"<<=":70,">>=":71,">>>=":72,"&=":73,"|=":74,"^=":78,"||=":75,"&&=":76,"??=":77,"@":59,"#":62,"`":61}))),g=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1569,1594,1600,1610,1649,1747,1749,1749,1765,1766,1786,1788,1808,1808,1810,1836,1920,1957,2309,2361,2365,2365,2384,2384,2392,2401,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2784,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2877,2877,2908,2909,2911,2913,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3294,3294,3296,3297,3333,3340,3342,3344,3346,3368,3370,3385,3424,3425,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3946,3976,3979,4096,4129,4131,4135,4137,4138,4176,4181,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6067,6176,6263,6272,6312,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8319,8319,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12329,12337,12341,12344,12346,12353,12436,12445,12446,12449,12538,12540,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65138,65140,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],E=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,768,846,864,866,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1155,1158,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1425,1441,1443,1465,1467,1469,1471,1471,1473,1474,1476,1476,1488,1514,1520,1522,1569,1594,1600,1621,1632,1641,1648,1747,1749,1756,1759,1768,1770,1773,1776,1788,1808,1836,1840,1866,1920,1968,2305,2307,2309,2361,2364,2381,2384,2388,2392,2403,2406,2415,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2524,2525,2527,2531,2534,2545,2562,2562,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2649,2652,2654,2654,2662,2676,2689,2691,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2784,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2876,2883,2887,2888,2891,2893,2902,2903,2908,2909,2911,2913,2918,2927,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3006,3010,3014,3016,3018,3021,3031,3031,3047,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3134,3140,3142,3144,3146,3149,3157,3158,3168,3169,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3262,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3297,3302,3311,3330,3331,3333,3340,3342,3344,3346,3368,3370,3385,3390,3395,3398,3400,3402,3405,3415,3415,3424,3425,3430,3439,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3805,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3946,3953,3972,3974,3979,3984,3991,3993,4028,4038,4038,4096,4129,4131,4135,4137,4138,4140,4146,4150,4153,4160,4169,4176,4185,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,4969,4977,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6099,6112,6121,6160,6169,6176,6263,6272,6313,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8319,8319,8400,8412,8417,8417,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12335,12337,12341,12344,12346,12353,12436,12441,12442,12445,12446,12449,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65056,65059,65075,65076,65101,65103,65136,65138,65140,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500],p=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],B=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],m=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2208,2228,2230,2237,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42943,42946,42950,42999,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69376,69404,69415,69415,69424,69445,69600,69622,69635,69687,69763,69807,69840,69864,69891,69926,69956,69956,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70751,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71680,71723,71840,71903,71935,71935,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72384,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,123136,123180,123191,123197,123214,123214,123584,123627,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101],_=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2208,2228,2230,2237,2259,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3162,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3328,3331,3333,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7673,7675,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42943,42946,42950,42999,43047,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69376,69404,69415,69415,69424,69456,69600,69622,69632,69702,69734,69743,69759,69818,69840,69864,69872,69881,69888,69940,69942,69951,69956,69958,69968,70003,70006,70006,70016,70084,70089,70092,70096,70106,70108,70108,70144,70161,70163,70199,70206,70206,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70751,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71680,71738,71840,71913,71935,71935,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72384,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92768,92777,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,123136,123180,123184,123197,123200,123209,123214,123214,123584,123641,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101,917760,917999],x=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,O=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/;function k(N,nA){if(N=2?k(N,m):nA===1?k(N,p):k(N,g)}A.isUnicodeIdentifierStart=P;function H(N,nA){return nA>=2?k(N,_):nA===1?k(N,B):k(N,E)}function T(N){var nA=[];return N.forEach(function(kA,bA){nA[kA]=bA}),nA}var v=T(s);function F(N){return v[N]}A.tokenToString=F;function y(N){return s.get(N)}A.stringToToken=y;function S(N){for(var nA=[],kA=0,bA=0;kA127&&q(TA)&&(nA.push(bA),bA=kA);break}}return nA.push(bA),nA}A.computeLineStarts=S;function U(N,nA,kA,bA){return N.getPositionOfLineAndCharacter?N.getPositionOfLineAndCharacter(nA,kA,bA):V(wA(N),nA,kA,N.text,bA)}A.getPositionOfLineAndCharacter=U;function V(N,nA,kA,bA,TA){(nA<0||nA>=N.length)&&(TA?nA=nA<0?0:nA>=N.length?N.length-1:nA:A.Debug.fail("Bad line number. Line: ".concat(nA,", lineStarts.length: ").concat(N.length," , line map is correct? ").concat(bA!==void 0?A.arraysEqual(N,S(bA)):"unknown")));var VA=N[nA]+kA;return TA?VA>N[nA+1]?N[nA+1]:typeof bA=="string"&&VA>bA.length?bA.length:VA:(nA=8192&&N<=8203||N===8239||N===8287||N===12288||N===65279}A.isWhiteSpaceSingleLine=Y;function q(N){return N===10||N===13||N===8232||N===8233}A.isLineBreak=q;function X(N){return N>=48&&N<=57}function Z(N){return X(N)||N>=65&&N<=70||N>=97&&N<=102}function K(N){return N<=1114111}function J(N){return N>=48&&N<=55}A.isOctalDigit=J;function sA(N,nA){var kA=N.charCodeAt(nA);switch(kA){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return nA===0;default:return kA>127}}A.couldStartTrivia=sA;function uA(N,nA,kA,bA,TA){if(A.positionIsSynthesized(nA))return nA;for(var VA=!1;;){var De=N.charCodeAt(nA);switch(De){case 13:N.charCodeAt(nA+1)===10&&nA++;case 10:if(nA++,kA)return nA;VA=!!TA;continue;case 9:case 11:case 12:case 32:nA++;continue;case 47:if(bA)break;if(N.charCodeAt(nA+1)===47){for(nA+=2;nA127&&eA(De)){nA++;continue}break}return nA}}A.skipTrivia=uA;var BA=7;function CA(N,nA){if(A.Debug.assert(nA>=0),nA===0||q(N.charCodeAt(nA-1))){var kA=N.charCodeAt(nA);if(nA+BA=0&&kA127&&eA(ir)){Cr&&q(ir)&&(Ze=!0),kA++;continue}break A}}return Cr&&(Me=TA(_e,Ae,Q,Ze,VA,Me)),Me}function M(N,nA,kA,bA){return fA(!1,N,nA,!1,kA,bA)}A.forEachLeadingCommentRange=M;function aA(N,nA,kA,bA){return fA(!1,N,nA,!0,kA,bA)}A.forEachTrailingCommentRange=aA;function gA(N,nA,kA,bA,TA){return fA(!0,N,nA,!1,kA,bA,TA)}A.reduceEachLeadingCommentRange=gA;function QA(N,nA,kA,bA,TA){return fA(!0,N,nA,!0,kA,bA,TA)}A.reduceEachTrailingCommentRange=QA;function mA(N,nA,kA,bA,TA,VA){return VA||(VA=[]),VA.push({kind:kA,pos:N,end:nA,hasTrailingNewLine:bA}),VA}function FA(N,nA){return gA(N,nA,mA,void 0,void 0)}A.getLeadingCommentRanges=FA;function SA(N,nA){return QA(N,nA,mA,void 0,void 0)}A.getTrailingCommentRanges=SA;function ce(N){var nA=AA.exec(N);if(nA)return nA[0]}A.getShebang=ce;function re(N,nA){return N>=65&&N<=90||N>=97&&N<=122||N===36||N===95||N>127&&P(N,nA)}A.isIdentifierStart=re;function KA(N,nA,kA){return N>=65&&N<=90||N>=97&&N<=122||N>=48&&N<=57||N===36||N===95||(kA===1?N===45||N===58:!1)||N>127&&H(N,nA)}A.isIdentifierPart=KA;function $A(N,nA,kA){var bA=ue(N,0);if(!re(bA,nA))return!1;for(var TA=MA(bA);TA116},isReservedWord:function(){return be>=81&&be<=116},isUnterminated:function(){return(Le&4)!==0},getCommentDirectives:function(){return ir},getNumericLiteralFlags:function(){return Le&1008},getTokenFlags:function(){return Le},reScanGreaterToken:ke,reScanAsteriskEqualsToken:Je,reScanSlashToken:Ar,reScanTemplateToken:Te,reScanTemplateHeadOrNoSubstitutionTemplate:UA,scanJsxIdentifier:Pe,scanJsxAttributeValue:He,reScanJsxAttributeValue:Xe,reScanJsxToken:Ee,reScanLessThanToken:de,reScanHashToken:HA,reScanQuestionToken:pe,reScanInvalidIdentifier:Ur,scanJsxToken:ee,scanJsDocToken:or,scan:tr,getText:gt,clearCommentDirectives:Pr,setText:Et,setScriptTarget:Ot,setLanguageVariant:_i,setOnError:Zt,setTextPos:ei,setInJSDocType:Yt,tryScan:Lr,lookAhead:lt,scanRange:ar};return A.Debug.isDebugging&&Object.defineProperty(mr,"__debugShowCurrentPositionInText",{get:function(){var Xr=mr.getText();return Xr.slice(0,mr.getStartPos())+"\u2551"+Xr.slice(mr.getStartPos())}}),mr;function $e(Xr,JA,Ve){if(JA===void 0&&(JA=Ae),TA){var XA=Ae;Ae=JA,TA(Xr,Ve||0),Ae=XA}}function xr(){for(var Xr=Ae,JA=!1,Ve=!1,XA="";;){var Gr=_e.charCodeAt(Ae);if(Gr===95){Le|=512,JA?(JA=!1,Ve=!0,XA+=_e.substring(Xr,Ae)):$e(Ve?A.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:A.Diagnostics.Numeric_separators_are_not_allowed_here,Ae,1),Ae++,Xr=Ae;continue}if(X(Gr)){JA=!0,Ve=!1,Ae++;continue}break}return _e.charCodeAt(Ae-1)===95&&$e(A.Diagnostics.Numeric_separators_are_not_allowed_here,Ae-1,1),XA+_e.substring(Xr,Ae)}function PA(){var Xr=Ae,JA=xr(),Ve,XA;_e.charCodeAt(Ae)===46&&(Ae++,Ve=xr());var Gr=Ae;if(_e.charCodeAt(Ae)===69||_e.charCodeAt(Ae)===101){Ae++,Le|=16,(_e.charCodeAt(Ae)===43||_e.charCodeAt(Ae)===45)&&Ae++;var ot=Ae,Sr=xr();Sr?(XA=_e.substring(Gr,ot)+Sr,Gr=Ae):$e(A.Diagnostics.Digit_expected)}var Dr;if(Le&512?(Dr=JA,Ve&&(Dr+="."+Ve),XA&&(Dr+=XA)):Dr=_e.substring(Xr,Gr),Ve!==void 0||Le&16)return we(Xr,Ve===void 0&&!!(Le&16)),{type:8,value:""+ +Dr};Me=Dr;var Jr=Or();return we(Xr),{type:Jr,value:Me}}function we(Xr,JA){if(re(ue(_e,Ae),N)){var Ve=Ae,XA=oe().length;XA===1&&_e[Ve]==="n"?$e(JA?A.Diagnostics.A_bigint_literal_cannot_use_exponential_notation:A.Diagnostics.A_bigint_literal_must_be_an_integer,Xr,Ve-Xr+1):($e(A.Diagnostics.An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal,Ve,XA),Ae=Ve)}}function LA(){for(var Xr=Ae;J(_e.charCodeAt(Ae));)Ae++;return+_e.substring(Xr,Ae)}function ae(Xr,JA){var Ve=YA(Xr,!1,JA);return Ve?parseInt(Ve,16):-1}function We(Xr,JA){return YA(Xr,!0,JA)}function YA(Xr,JA,Ve){for(var XA=[],Gr=!1,ot=!1;XA.length=65&&Sr<=70)Sr+=97-65;else if(!(Sr>=48&&Sr<=57||Sr>=97&&Sr<=102))break;XA.push(Sr),Ae++,ot=!1}return XA.length=Q){Ve+=_e.substring(XA,Ae),Le|=4,$e(A.Diagnostics.Unterminated_string_literal);break}var Gr=_e.charCodeAt(Ae);if(Gr===JA){Ve+=_e.substring(XA,Ae),Ae++;break}if(Gr===92&&!Xr){Ve+=_e.substring(XA,Ae),Ve+=er(),XA=Ae;continue}if(q(Gr)&&!Xr){Ve+=_e.substring(XA,Ae),Le|=4,$e(A.Diagnostics.Unterminated_string_literal);break}Ae++}return Ve}function Ke(Xr){var JA=_e.charCodeAt(Ae)===96;Ae++;for(var Ve=Ae,XA="",Gr;;){if(Ae>=Q){XA+=_e.substring(Ve,Ae),Le|=4,$e(A.Diagnostics.Unterminated_template_literal),Gr=JA?14:17;break}var ot=_e.charCodeAt(Ae);if(ot===96){XA+=_e.substring(Ve,Ae),Ae++,Gr=JA?14:17;break}if(ot===36&&Ae+1=Q)return $e(A.Diagnostics.Unexpected_end_of_text),"";var Ve=_e.charCodeAt(Ae);switch(Ae++,Ve){case 48:return Xr&&Ae=0?String.fromCharCode(JA):($e(A.Diagnostics.Hexadecimal_digit_expected),"")}function hr(){var Xr=We(1,!1),JA=Xr?parseInt(Xr,16):-1,Ve=!1;return JA<0?($e(A.Diagnostics.Hexadecimal_digit_expected),Ve=!0):JA>1114111&&($e(A.Diagnostics.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive),Ve=!0),Ae>=Q?($e(A.Diagnostics.Unexpected_end_of_text),Ve=!0):_e.charCodeAt(Ae)===125?Ae++:($e(A.Diagnostics.Unterminated_Unicode_escape_sequence),Ve=!0),Ve?"":tA(JA)}function Fr(){if(Ae+5=0&&KA(Ve,N)){Ae+=3,Le|=8,Xr+=hr(),JA=Ae;continue}if(Ve=Fr(),!(Ve>=0&&KA(Ve,N)))break;Le|=1024,Xr+=_e.substring(JA,Ae),Xr+=tA(Ve),Ae+=6,JA=Ae}else break}return Xr+=_e.substring(JA,Ae),Xr}function Ge(){var Xr=Me.length;if(Xr>=2&&Xr<=12){var JA=Me.charCodeAt(0);if(JA>=97&&JA<=122){var Ve=o.get(Me);if(Ve!==void 0)return be=Ve}}return be=79}function nr(Xr){for(var JA="",Ve=!1,XA=!1;;){var Gr=_e.charCodeAt(Ae);if(Gr===95){Le|=512,Ve?(Ve=!1,XA=!0):$e(XA?A.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:A.Diagnostics.Numeric_separators_are_not_allowed_here,Ae,1),Ae++;continue}if(Ve=!0,!X(Gr)||Gr-48>=Xr)break;JA+=_e[Ae],Ae++,XA=!1}return _e.charCodeAt(Ae-1)===95&&$e(A.Diagnostics.Numeric_separators_are_not_allowed_here,Ae-1,1),JA}function Or(){if(_e.charCodeAt(Ae)===110)return Me+="n",Le&384&&(Me=A.parsePseudoBigInt(Me)+"n"),Ae++,9;var Xr=Le&128?parseInt(Me.slice(2),2):Le&256?parseInt(Me.slice(2),8):+Me;return Me=""+Xr,8}function tr(){var Xr;Ze=Ae,Le=0;for(var JA=!1;;){if(Cr=Ae,Ae>=Q)return be=1;var Ve=ue(_e,Ae);if(Ve===35&&Ae===0&&iA(_e,Ae)){if(Ae=_A(_e,Ae),nA)continue;return be=6}switch(Ve){case 10:case 13:if(Le|=1,nA){Ae++;continue}else return Ve===13&&Ae+1=0&&re(Sr,N))return Ae+=3,Le|=8,Me=hr()+oe(),be=Ge();var Dr=Fr();return Dr>=0&&re(Dr,N)?(Ae+=6,Le|=1024,Me=String.fromCharCode(Dr)+oe(),be=Ge()):($e(A.Diagnostics.Invalid_character),Ae++,be=0);case 35:if(Ae!==0&&_e[Ae+1]==="!")return $e(A.Diagnostics.can_only_be_used_at_the_start_of_a_file),Ae++,be=0;var Jr=ue(_e,Ae+1);if(Jr===92){Ae++;var Yr=qA();if(Yr>=0&&re(Yr,N))return Ae+=3,Le|=8,Me="#"+hr()+oe(),be=80;var rt=Fr();if(rt>=0&&re(rt,N))return Ae+=6,Le|=1024,Me="#"+String.fromCharCode(rt)+oe(),be=80;Ae--}return re(Jr,N)?(Ae++,nt(Jr,N)):(Me="#",$e(A.Diagnostics.Invalid_character,Ae++,MA(Ve))),be=80;default:var Bt=nt(Ve,N);if(Bt)return be=Bt;if(Y(Ve)){Ae+=MA(Ve);continue}else if(q(Ve)){Le|=1,Ae+=MA(Ve);continue}var le=MA(Ve);return $e(A.Diagnostics.Invalid_character,Ae,le),Ae+=le,be=0}}}function Ur(){A.Debug.assert(be===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),Ae=Cr=Ze,Le=0;var Xr=ue(_e,Ae),JA=nt(Xr,99);return JA?be=JA:(Ae+=MA(Xr),be)}function nt(Xr,JA){var Ve=Xr;if(re(Ve,JA)){for(Ae+=MA(Ve);Ae=Q)return be=1;var JA=_e.charCodeAt(Ae);if(JA===60)return _e.charCodeAt(Ae+1)===47?(Ae+=2,be=30):(Ae++,be=29);if(JA===123)return Ae++,be=18;for(var Ve=0;Ae0)break;eA(JA)||(Ve=Ae)}Ae++}return Me=_e.substring(Ze,Ae),Ve===-1?12:11}function Pe(){if(t(be)){for(var Xr=!1;Ae=Q)return be=1;var Xr=ue(_e,Ae);switch(Ae+=MA(Xr),Xr){case 9:case 11:case 12:case 32:for(;Ae=0&&re(JA,N))return Ae+=3,Le|=8,Me=hr()+oe(),be=Ge();var Ve=Fr();return Ve>=0&&re(Ve,N)?(Ae+=6,Le|=1024,Me=String.fromCharCode(Ve)+oe(),be=Ge()):(Ae++,be=0)}if(re(Xr,N)){for(var XA=Xr;Ae=0),Ae=Xr,Ze=Xr,Cr=Xr,be=0,Me=void 0,Le=0}function Yt(Xr){Ye+=Xr?1:-1}}A.createScanner=jA;var ue=String.prototype.codePointAt?function(N,nA){return N.codePointAt(nA)}:function(nA,kA){var bA=nA.length;if(!(kA<0||kA>=bA)){var TA=nA.charCodeAt(kA);if(TA>=55296&&TA<=56319&&bA>kA+1){var VA=nA.charCodeAt(kA+1);if(VA>=56320&&VA<=57343)return(TA-55296)*1024+VA-56320+65536}return TA}};function MA(N){return N>=65536?2:1}function RA(N){if(A.Debug.assert(0<=N&&N<=1114111),N<=65535)return String.fromCharCode(N);var nA=Math.floor((N-65536)/1024)+55296,kA=(N-65536)%1024+56320;return String.fromCharCode(nA,kA)}var lA=String.fromCodePoint?function(N){return String.fromCodePoint(N)}:RA;function tA(N){return lA(N)}A.utf16EncodeAsString=tA})(Oe||(Oe={}));var Oe;(function(A){function r(se){return A.pathIsRelative(se)||A.isRootedDiskPath(se)}A.isExternalModuleNameRelative=r;function t(se){return A.sortAndDeduplicate(se,A.compareDiagnostics)}A.sortAndDeduplicateDiagnostics=t;function i(se){switch(A.getEmitScriptTarget(se)){case 99:return"lib.esnext.full.d.ts";case 9:return"lib.es2022.full.d.ts";case 8:return"lib.es2021.full.d.ts";case 7:return"lib.es2020.full.d.ts";case 6:return"lib.es2019.full.d.ts";case 5:return"lib.es2018.full.d.ts";case 4:return"lib.es2017.full.d.ts";case 3:return"lib.es2016.full.d.ts";case 2:return"lib.es6.d.ts";default:return"lib.d.ts"}}A.getDefaultLibFileName=i;function o(se){return se.start+se.length}A.textSpanEnd=o;function s(se){return se.length===0}A.textSpanIsEmpty=s;function g(se,jr){return jr>=se.start&&jr=se.pos&&jr<=se.end}A.textRangeContainsPositionInclusive=E;function p(se,jr){return jr.start>=se.start&&o(jr)<=o(se)}A.textSpanContainsTextSpan=p;function B(se,jr){return m(se,jr)!==void 0}A.textSpanOverlapsWith=B;function m(se,jr){var qe=P(se,jr);return qe&&qe.length===0?void 0:qe}A.textSpanOverlap=m;function _(se,jr){return O(se.start,se.length,jr.start,jr.length)}A.textSpanIntersectsWithTextSpan=_;function x(se,jr,qe){return O(se.start,se.length,jr,qe)}A.textSpanIntersectsWith=x;function O(se,jr,qe,la){var Ba=se+jr,po=qe+la;return qe<=Ba&&po>=se}A.decodedTextSpanIntersectsWith=O;function k(se,jr){return jr<=o(se)&&jr>=se.start}A.textSpanIntersectsWithPosition=k;function P(se,jr){var qe=Math.max(se.start,jr.start),la=Math.min(o(se),o(jr));return qe<=la?T(qe,la):void 0}A.textSpanIntersection=P;function H(se,jr){if(se<0)throw new Error("start < 0");if(jr<0)throw new Error("length < 0");return{start:se,length:jr}}A.createTextSpan=H;function T(se,jr){return H(se,jr-se)}A.createTextSpanFromBounds=T;function v(se){return H(se.span.start,se.newLength)}A.textChangeRangeNewSpan=v;function F(se){return s(se.span)&&se.newLength===0}A.textChangeRangeIsUnchanged=F;function y(se,jr){if(jr<0)throw new Error("newLength < 0");return{span:se,newLength:jr}}A.createTextChangeRange=y,A.unchangedTextChangeRange=y(H(0,0),0);function S(se){if(se.length===0)return A.unchangedTextChangeRange;if(se.length===1)return se[0];for(var jr=se[0],qe=jr.span.start,la=o(jr.span),Ba=qe+jr.newLength,po=1;po=2&&se.charCodeAt(0)===95&&se.charCodeAt(1)===95?"_"+se:se}A.escapeLeadingUnderscores=sA;function uA(se){var jr=se;return jr.length>=3&&jr.charCodeAt(0)===95&&jr.charCodeAt(1)===95&&jr.charCodeAt(2)===95?jr.substr(1):jr}A.unescapeLeadingUnderscores=uA;function BA(se){return uA(se.escapedText)}A.idText=BA;function CA(se){return se.valueDeclaration&&Pr(se.valueDeclaration)?BA(se.valueDeclaration.name):uA(se.escapedName)}A.symbolName=CA;function z(se){var jr=se.parent.parent;if(jr){if(ra(jr))return AA(jr);switch(jr.kind){case 240:if(jr.declarationList&&jr.declarationList.declarations[0])return AA(jr.declarationList.declarations[0]);break;case 241:var qe=jr.expression;switch(qe.kind===223&&qe.operatorToken.kind===63&&(qe=qe.left),qe.kind){case 208:return qe.name;case 209:var la=qe.argumentExpression;if(A.isIdentifier(la))return la}break;case 214:return AA(jr.expression);case 253:{if(ra(jr.statement)||Va(jr.statement))return AA(jr.statement);break}}}}function AA(se){var jr=aA(se);return jr&&A.isIdentifier(jr)?jr:void 0}function iA(se,jr){return!!(fA(se)&&A.isIdentifier(se.name)&&BA(se.name)===BA(jr)||A.isVariableStatement(se)&&A.some(se.declarationList.declarations,function(qe){return iA(qe,jr)}))}A.nodeHasName=iA;function _A(se){return se.name||z(se)}A.getNameOfJSDocTypedef=_A;function fA(se){return!!se.name}A.isNamedDeclaration=fA;function M(se){switch(se.kind){case 79:return se;case 350:case 343:{var jr=se.name;if(jr.kind===163)return jr.right;break}case 210:case 223:{var qe=se;switch(A.getAssignmentDeclarationKind(qe)){case 1:case 4:case 5:case 3:return A.getElementOrPropertyAccessArgumentExpressionOrName(qe.left);case 7:case 8:case 9:return qe.arguments[1];default:return}}case 348:return _A(se);case 342:return z(se);case 274:{var la=se.expression;return A.isIdentifier(la)?la:void 0}case 209:var Ba=se;if(A.isBindableStaticElementAccessExpression(Ba))return Ba.argumentExpression}return se.name}A.getNonAssignedNameOfDeclaration=M;function aA(se){if(se!==void 0)return M(se)||(A.isFunctionExpression(se)||A.isArrowFunction(se)||A.isClassExpression(se)?gA(se):void 0)}A.getNameOfDeclaration=aA;function gA(se){if(se.parent){if(A.isPropertyAssignment(se.parent)||A.isBindingElement(se.parent))return se.parent.name;if(A.isBinaryExpression(se.parent)&&se===se.parent.right){if(A.isIdentifier(se.parent.left))return se.parent.left;if(A.isAccessExpression(se.parent.left))return A.getElementOrPropertyAccessArgumentExpressionOrName(se.parent.left)}else if(A.isVariableDeclaration(se.parent)&&A.isIdentifier(se.parent.name))return se.parent.name}else return}A.getAssignedName=gA;function QA(se){if(A.hasDecorators(se))return A.filter(se.modifiers,A.isDecorator)}A.getDecorators=QA;function mA(se){if(A.hasSyntacticModifier(se,126975))return A.filter(se.modifiers,ei)}A.getModifiers=mA;function FA(se,jr){if(se.name)if(A.isIdentifier(se.name)){var qe=se.name.escapedText;return Ye(se.parent,jr).filter(function(po){return A.isJSDocParameterTag(po)&&A.isIdentifier(po.name)&&po.name.escapedText===qe})}else{var la=se.parent.parameters.indexOf(se);A.Debug.assert(la>-1,"Parameters should always be in their parents' parameter list");var Ba=Ye(se.parent,jr).filter(A.isJSDocParameterTag);if(la=163}A.isNodeKind=Te;function UA(se){return se>=0&&se<=162}A.isTokenKind=UA;function Ee(se){return UA(se.kind)}A.isToken=Ee;function de(se){return A.hasProperty(se,"pos")&&A.hasProperty(se,"end")}A.isNodeArray=de;function HA(se){return 8<=se&&se<=14}A.isLiteralKind=HA;function pe(se){return HA(se.kind)}A.isLiteralExpression=pe;function ee(se){switch(se.kind){case 207:case 206:case 13:case 215:case 228:return!0}return!1}A.isLiteralExpressionOfObject=ee;function Pe(se){return 14<=se&&se<=17}A.isTemplateLiteralKind=Pe;function He(se){return Pe(se.kind)}A.isTemplateLiteralToken=He;function Xe(se){var jr=se.kind;return jr===16||jr===17}A.isTemplateMiddleOrTemplateTail=Xe;function or(se){return A.isImportSpecifier(se)||A.isExportSpecifier(se)}A.isImportOrExportSpecifier=or;function Mr(se){switch(se.kind){case 273:case 278:return se.isTypeOnly||se.parent.parent.isTypeOnly;case 271:return se.parent.isTypeOnly;case 270:case 268:return se.isTypeOnly;default:return!1}}A.isTypeOnlyImportOrExportDeclaration=Mr;function ar(se){return A.isStringLiteral(se)||A.isIdentifier(se)}A.isAssertionKey=ar;function lt(se){return se.kind===10||Pe(se.kind)}A.isStringTextContainingNode=lt;function Lr(se){return A.isIdentifier(se)&&(se.autoGenerateFlags&7)>0}A.isGeneratedIdentifier=Lr;function gt(se){return A.isPrivateIdentifier(se)&&(se.autoGenerateFlags&7)>0}A.isGeneratedPrivateIdentifier=gt;function Pr(se){return(A.isPropertyDeclaration(se)||Ir(se))&&A.isPrivateIdentifier(se.name)}A.isPrivateIdentifierClassElementDeclaration=Pr;function Et(se){return A.isPropertyAccessExpression(se)&&A.isPrivateIdentifier(se.name)}A.isPrivateIdentifierPropertyAccessExpression=Et;function Zt(se){switch(se){case 126:case 127:case 132:case 85:case 136:case 88:case 93:case 101:case 123:case 121:case 122:case 146:case 124:case 145:case 161:return!0}return!1}A.isModifierKind=Zt;function Ot(se){return!!(A.modifierToFlag(se)&16476)}A.isParameterPropertyModifier=Ot;function _i(se){return Ot(se)||se===124||se===161||se===127}A.isClassMemberModifier=_i;function ei(se){return Zt(se.kind)}A.isModifier=ei;function Yt(se){var jr=se.kind;return jr===163||jr===79}A.isEntityName=Yt;function Xr(se){var jr=se.kind;return jr===79||jr===80||jr===10||jr===8||jr===164}A.isPropertyName=Xr;function JA(se){var jr=se.kind;return jr===79||jr===203||jr===204}A.isBindingName=JA;function Ve(se){return!!se&&Dr(se.kind)}A.isFunctionLike=Ve;function XA(se){return!!se&&(Dr(se.kind)||A.isClassStaticBlockDeclaration(se))}A.isFunctionLikeOrClassStaticBlockDeclaration=XA;function Gr(se){return se&&Sr(se.kind)}A.isFunctionLikeDeclaration=Gr;function ot(se){return se.kind===110||se.kind===95}A.isBooleanLiteral=ot;function Sr(se){switch(se){case 259:case 171:case 173:case 174:case 175:case 215:case 216:return!0;default:return!1}}function Dr(se){switch(se){case 170:case 176:case 326:case 177:case 178:case 181:case 320:case 182:return!0;default:return Sr(se)}}A.isFunctionLikeKind=Dr;function Jr(se){return A.isSourceFile(se)||A.isModuleBlock(se)||A.isBlock(se)&&Ve(se.parent)}A.isFunctionOrModuleBlock=Jr;function Yr(se){var jr=se.kind;return jr===173||jr===169||jr===171||jr===174||jr===175||jr===178||jr===172||jr===237}A.isClassElement=Yr;function rt(se){return se&&(se.kind===260||se.kind===228)}A.isClassLike=rt;function Bt(se){return se&&(se.kind===174||se.kind===175)}A.isAccessor=Bt;function le(se){return A.isPropertyDeclaration(se)&&A.hasAccessorModifier(se)}A.isAutoAccessorPropertyDeclaration=le;function Ir(se){switch(se.kind){case 171:case 174:case 175:return!0;default:return!1}}A.isMethodOrAccessor=Ir;function ut(se){switch(se.kind){case 171:case 174:case 175:case 169:return!0;default:return!1}}A.isNamedClassElement=ut;function Ii(se){return ei(se)||A.isDecorator(se)}A.isModifierLike=Ii;function Zi(se){var jr=se.kind;return jr===177||jr===176||jr===168||jr===170||jr===178||jr===174||jr===175}A.isTypeElement=Zi;function yi(se){return Zi(se)||Yr(se)}A.isClassOrTypeElement=yi;function zt(se){var jr=se.kind;return jr===299||jr===300||jr===301||jr===171||jr===174||jr===175}A.isObjectLiteralElementLike=zt;function cn(se){return A.isTypeNodeKind(se.kind)}A.isTypeNode=cn;function Ui(se){switch(se.kind){case 181:case 182:return!0}return!1}A.isFunctionOrConstructorTypeNode=Ui;function Mi(se){if(se){var jr=se.kind;return jr===204||jr===203}return!1}A.isBindingPattern=Mi;function yt(se){var jr=se.kind;return jr===206||jr===207}A.isAssignmentPattern=yt;function Ya(se){var jr=se.kind;return jr===205||jr===229}A.isArrayBindingElement=Ya;function Wn(se){switch(se.kind){case 257:case 166:case 205:return!0}return!1}A.isDeclarationBindingElement=Wn;function jn(se){return Ho(se)||yo(se)}A.isBindingOrAssignmentPattern=jn;function Ho(se){switch(se.kind){case 203:case 207:return!0}return!1}A.isObjectBindingOrAssignmentPattern=Ho;function _a(se){switch(se.kind){case 205:case 299:case 300:case 301:return!0}return!1}A.isObjectBindingOrAssignmentElement=_a;function yo(se){switch(se.kind){case 204:case 206:return!0}return!1}A.isArrayBindingOrAssignmentPattern=yo;function va(se){var jr=se.kind;return jr===208||jr===163||jr===202}A.isPropertyAccessOrQualifiedNameOrImportTypeNode=va;function wi(se){var jr=se.kind;return jr===208||jr===163}A.isPropertyAccessOrQualifiedName=wi;function bi(se){switch(se.kind){case 283:case 282:case 210:case 211:case 212:case 167:return!0;default:return!1}}A.isCallLikeExpression=bi;function ao(se){return se.kind===210||se.kind===211}A.isCallOrNewExpression=ao;function Bo(se){var jr=se.kind;return jr===225||jr===14}A.isTemplateLiteral=Bo;function Uo(se){return oo(tr(se).kind)}A.isLeftHandSideExpression=Uo;function oo(se){switch(se){case 208:case 209:case 211:case 210:case 281:case 282:case 285:case 212:case 206:case 214:case 207:case 228:case 215:case 79:case 80:case 13:case 8:case 9:case 10:case 14:case 225:case 95:case 104:case 108:case 110:case 106:case 232:case 230:case 233:case 100:return!0;default:return!1}}function Xo(se){return Bs(tr(se).kind)}A.isUnaryExpression=Xo;function Bs(se){switch(se){case 221:case 222:case 217:case 218:case 219:case 220:case 213:return!0;default:return oo(se)}}function hs(se){switch(se.kind){case 222:return!0;case 221:return se.operator===45||se.operator===46;default:return!1}}A.isUnaryExpressionWithWrite=hs;function Va(se){return xe(tr(se).kind)}A.isExpression=Va;function xe(se){switch(se){case 224:case 226:case 216:case 223:case 227:case 231:case 229:case 354:case 353:case 235:return!0;default:return Bs(se)}}function ze(se){var jr=se.kind;return jr===213||jr===231}A.isAssertionExpression=ze;function Lt(se){return A.isNotEmittedStatement(se)||A.isPartiallyEmittedExpression(se)}A.isNotEmittedOrPartiallyEmittedNode=Lt;function en(se,jr){switch(se.kind){case 245:case 246:case 247:case 243:case 244:return!0;case 253:return jr&&en(se.statement,jr)}return!1}A.isIterationStatement=en;function hn(se){return A.isExportAssignment(se)||A.isExportDeclaration(se)}A.isScopeMarker=hn;function Ia(se){return A.some(se,hn)}A.hasScopeMarker=Ia;function ne(se){return!A.isAnyImportOrReExport(se)&&!A.isExportAssignment(se)&&!A.hasSyntacticModifier(se,1)&&!A.isAmbientModule(se)}A.needsScopeMarker=ne;function _r(se){return A.isAnyImportOrReExport(se)||A.isExportAssignment(se)||A.hasSyntacticModifier(se,1)}A.isExternalModuleIndicator=_r;function qr(se){return se.kind===246||se.kind===247}A.isForInOrOfStatement=qr;function $r(se){return A.isBlock(se)||Va(se)}A.isConciseBody=$r;function ie(se){return A.isBlock(se)}A.isFunctionBody=ie;function ye(se){return A.isVariableDeclarationList(se)||Va(se)}A.isForInitializer=ye;function Re(se){var jr=se.kind;return jr===265||jr===264||jr===79}A.isModuleBody=Re;function rr(se){var jr=se.kind;return jr===265||jr===264}A.isNamespaceBody=rr;function zr(se){var jr=se.kind;return jr===79||jr===264}A.isJSDocNamespaceBody=zr;function Ft(se){var jr=se.kind;return jr===272||jr===271}A.isNamedImportBindings=Ft;function Gt(se){return se.kind===264||se.kind===263}A.isModuleOrEnumDeclaration=Gt;function Tt(se){return se===216||se===205||se===260||se===228||se===172||se===173||se===263||se===302||se===278||se===259||se===215||se===174||se===270||se===268||se===273||se===261||se===288||se===171||se===170||se===264||se===267||se===271||se===277||se===166||se===299||se===169||se===168||se===175||se===300||se===262||se===165||se===257||se===348||se===341||se===350}function gn(se){return se===259||se===279||se===260||se===261||se===262||se===263||se===264||se===269||se===268||se===275||se===274||se===267}function kn(se){return se===249||se===248||se===256||se===243||se===241||se===239||se===246||se===247||se===245||se===242||se===253||se===250||se===252||se===254||se===255||se===240||se===244||se===251||se===352||se===356||se===355}function ra(se){return se.kind===165?se.parent&&se.parent.kind!==347||A.isInJSFile(se):Tt(se.kind)}A.isDeclaration=ra;function Vn(se){return gn(se.kind)}A.isDeclarationStatement=Vn;function ba(se){return kn(se.kind)}A.isStatementButNotDeclaration=ba;function Ts(se){var jr=se.kind;return kn(jr)||gn(jr)||Qs(se)}A.isStatement=Ts;function Qs(se){return se.kind!==238||se.parent!==void 0&&(se.parent.kind===255||se.parent.kind===295)?!1:!A.isFunctionBlock(se)}function Gs(se){var jr=se.kind;return kn(jr)||gn(jr)||jr===238}A.isStatementOrBlock=Gs;function Vc(se){var jr=se.kind;return jr===280||jr===163||jr===79}A.isModuleReference=Vc;function $s(se){var jr=se.kind;return jr===108||jr===79||jr===208}A.isJsxTagNameExpression=$s;function ys(se){var jr=se.kind;return jr===281||jr===291||jr===282||jr===11||jr===285}A.isJsxChild=ys;function zc(se){var jr=se.kind;return jr===288||jr===290}A.isJsxAttributeLike=zc;function Rc(se){var jr=se.kind;return jr===10||jr===291}A.isStringLiteralOrJsxExpression=Rc;function _l(se){var jr=se.kind;return jr===283||jr===282}A.isJsxOpeningLikeElement=_l;function Bc(se){var jr=se.kind;return jr===292||jr===293}A.isCaseOrDefaultClause=Bc;function sl(se){return se.kind>=312&&se.kind<=350}A.isJSDocNode=sl;function ms(se){return se.kind===323||se.kind===322||se.kind===324||Fn(se)||kl(se)||A.isJSDocTypeLiteral(se)||A.isJSDocSignature(se)}A.isJSDocCommentContainingNode=ms;function kl(se){return se.kind>=330&&se.kind<=350}A.isJSDocTag=kl;function bs(se){return se.kind===175}A.isSetAccessor=bs;function Tc(se){return se.kind===174}A.isGetAccessor=Tc;function xs(se){var jr=se.jsDoc;return!!jr&&jr.length>0}A.hasJSDocNodes=xs;function yA(se){return!!se.type}A.hasType=yA;function je(se){return!!se.initializer}A.hasInitializer=je;function br(se){switch(se.kind){case 257:case 166:case 205:case 169:case 299:case 302:return!0;default:return!1}}A.hasOnlyExpressionInitializer=br;function mt(se){return se.kind===288||se.kind===290||zt(se)}A.isObjectLiteralElement=mt;function ai(se){return se.kind===180||se.kind===230}A.isTypeReferenceType=ai;var Pi=1073741823;function Bi(se){for(var jr=Pi,qe=0,la=se;qe=0),A.getLineStarts(vA)[I]}A.getStartPositionOfLine=Z;function K(I){var vA=eA(I),Ie=A.getLineAndCharacterOfPosition(vA,I.pos);return"".concat(vA.fileName,"(").concat(Ie.line+1,",").concat(Ie.character+1,")")}A.nodePosToString=K;function J(I,vA){A.Debug.assert(I>=0);var Ie=A.getLineStarts(vA),gr=I,pt=vA.text;if(gr+1===Ie.length)return pt.length-1;var Ci=Ie[gr],Ti=Ie[gr+1]-1;for(A.Debug.assert(A.isLineBreak(pt.charCodeAt(Ti)));Ci<=Ti&&A.isLineBreak(pt.charCodeAt(Ti));)Ti--;return Ti}A.getEndLinePosition=J;function sA(I,vA,Ie){return!(Ie&&Ie(vA))&&!I.identifiers.has(vA)}A.isFileLevelUniqueName=sA;function uA(I){return I===void 0?!0:I.pos===I.end&&I.pos>=0&&I.kind!==1}A.nodeIsMissing=uA;function BA(I){return!uA(I)}A.nodeIsPresent=BA;function CA(I,vA,Ie){if(vA===void 0||vA.length===0)return I;for(var gr=0;gr0?mA(I._children[0],vA,Ie):A.skipTrivia((vA||eA(I)).text,I.pos,!1,!1,ra(I))}A.getTokenPosOfNode=mA;function FA(I,vA){var Ie=!uA(I)&&A.canHaveModifiers(I)?A.findLast(I.modifiers,A.isDecorator):void 0;return Ie?A.skipTrivia((vA||eA(I)).text,Ie.end):mA(I,vA)}A.getNonDecoratorTokenPosOfNode=FA;function SA(I,vA,Ie){return Ie===void 0&&(Ie=!1),KA(I.text,vA,Ie)}A.getSourceTextOfNodeFromSourceFile=SA;function ce(I){return!!A.findAncestor(I,A.isJSDocTypeExpression)}function re(I){return!!(A.isExportDeclaration(I)&&I.exportClause&&A.isNamespaceExport(I.exportClause)&&I.exportClause.name.escapedText==="default")}A.isExportNamespaceAsDefaultDeclaration=re;function KA(I,vA,Ie){if(Ie===void 0&&(Ie=!1),uA(vA))return"";var gr=I.substring(Ie?vA.pos:A.skipTrivia(I,vA.pos),vA.end);return ce(vA)&&(gr=gr.split(/\r\n|\n|\r/).map(function(pt){return A.trimStringStart(pt.replace(/^\s*\*/,""))}).join(` -`)),gr}A.getTextOfNodeFromSourceText=KA;function $A(I,vA){return vA===void 0&&(vA=!1),SA(eA(I),I,vA)}A.getTextOfNode=$A;function jA(I){return I.pos}function ue(I,vA){return A.binarySearch(I,vA,jA,A.compareValues)}A.indexOfNode=ue;function MA(I){var vA=I.emitNode;return vA&&vA.flags||0}A.getEmitFlags=MA;function RA(){return{es2015:{Array:["find","findIndex","fill","copyWithin","entries","keys","values"],RegExp:["flags","sticky","unicode"],Reflect:["apply","construct","defineProperty","deleteProperty","get"," getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"],ArrayConstructor:["from","of"],ObjectConstructor:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],NumberConstructor:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"],Math:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"],Map:["entries","keys","values"],Set:["entries","keys","values"],Promise:A.emptyArray,PromiseConstructor:["all","race","reject","resolve"],Symbol:["for","keyFor"],WeakMap:["entries","keys","values"],WeakSet:["entries","keys","values"],Iterator:A.emptyArray,AsyncIterator:A.emptyArray,String:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],StringConstructor:["fromCodePoint","raw"]},es2016:{Array:["includes"]},es2017:{Atomics:A.emptyArray,SharedArrayBuffer:A.emptyArray,String:["padStart","padEnd"],ObjectConstructor:["values","entries","getOwnPropertyDescriptors"],DateTimeFormat:["formatToParts"]},es2018:{Promise:["finally"],RegExpMatchArray:["groups"],RegExpExecArray:["groups"],RegExp:["dotAll"],Intl:["PluralRules"],AsyncIterable:A.emptyArray,AsyncIterableIterator:A.emptyArray,AsyncGenerator:A.emptyArray,AsyncGeneratorFunction:A.emptyArray,NumberFormat:["formatToParts"]},es2019:{Array:["flat","flatMap"],ObjectConstructor:["fromEntries"],String:["trimStart","trimEnd","trimLeft","trimRight"],Symbol:["description"]},es2020:{BigInt:A.emptyArray,BigInt64Array:A.emptyArray,BigUint64Array:A.emptyArray,PromiseConstructor:["allSettled"],SymbolConstructor:["matchAll"],String:["matchAll"],DataView:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"],RelativeTimeFormat:["format","formatToParts","resolvedOptions"]},es2021:{PromiseConstructor:["any"],String:["replaceAll"]},es2022:{Array:["at"],String:["at"],Int8Array:["at"],Uint8Array:["at"],Uint8ClampedArray:["at"],Int16Array:["at"],Uint16Array:["at"],Int32Array:["at"],Uint32Array:["at"],Float32Array:["at"],Float64Array:["at"],BigInt64Array:["at"],BigUint64Array:["at"],ObjectConstructor:["hasOwn"],Error:["cause"]}}}A.getScriptTargetFeatures=RA;var lA;(function(I){I[I.None=0]="None",I[I.NeverAsciiEscape=1]="NeverAsciiEscape",I[I.JsxAttributeEscape=2]="JsxAttributeEscape",I[I.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",I[I.AllowNumericSeparator=8]="AllowNumericSeparator"})(lA=A.GetLiteralTextFlags||(A.GetLiteralTextFlags={}));function tA(I,vA,Ie){var gr;if(vA&&N(I,Ie))return SA(vA,I);switch(I.kind){case 10:{var pt=Ie&2?vp:Ie&1||MA(I)&16777216?ef:rf;return I.singleQuote?"'"+pt(I.text,39)+"'":'"'+pt(I.text,34)+'"'}case 14:case 15:case 16:case 17:{var pt=Ie&1||MA(I)&16777216?ef:rf,Ci=(gr=I.rawText)!==null&&gr!==void 0?gr:gh(pt(I.text,96));switch(I.kind){case 14:return"`"+Ci+"`";case 15:return"`"+Ci+"${";case 16:return"}"+Ci+"${";case 17:return"}"+Ci+"`"}break}case 8:case 9:return I.text;case 13:return Ie&4&&I.isUnterminated?I.text+(I.text.charCodeAt(I.text.length-1)===92?" /":"/"):I.text}return A.Debug.fail("Literal kind '".concat(I.kind,"' not accounted for."))}A.getLiteralText=tA;function N(I,vA){return wl(I)||!I.parent||vA&4&&I.isUnterminated?!1:A.isNumericLiteral(I)&&I.numericLiteralFlags&512?!!(vA&8):!A.isBigIntLiteral(I)}function nA(I){return A.isString(I)?'"'+rf(I)+'"':""+I}A.getTextOfConstantValue=nA;function kA(I){return A.getBaseFileName(I).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}A.makeIdentifierFromModuleName=kA;function bA(I){return(A.getCombinedNodeFlags(I)&3)!==0||TA(I)}A.isBlockOrCatchScoped=bA;function TA(I){var vA=$g(I);return vA.kind===257&&vA.parent.kind===295}A.isCatchClauseVariableDeclarationOrBindingElement=TA;function VA(I){return A.isModuleDeclaration(I)&&(I.name.kind===10||be(I))}A.isAmbientModule=VA;function De(I){return A.isModuleDeclaration(I)&&I.name.kind===10}A.isModuleWithStringLiteralName=De;function _e(I){return A.isModuleDeclaration(I)&&A.isStringLiteral(I.name)}A.isNonGlobalAmbientModule=_e;function Ae(I){return A.isModuleDeclaration(I)||A.isIdentifier(I)}A.isEffectiveModuleDeclaration=Ae;function Q(I){return Ze(I.valueDeclaration)}A.isShorthandAmbientModuleSymbol=Q;function Ze(I){return!!I&&I.kind===264&&!I.body}function Cr(I){return I.kind===308||I.kind===264||A.isFunctionLikeOrClassStaticBlockDeclaration(I)}A.isBlockScopedContainerTopLevel=Cr;function be(I){return!!(I.flags&1024)}A.isGlobalScopeAugmentation=be;function Me(I){return VA(I)&&Le(I)}A.isExternalModuleAugmentation=Me;function Le(I){switch(I.parent.kind){case 308:return A.isExternalModule(I.parent);case 265:return VA(I.parent.parent)&&A.isSourceFile(I.parent.parent.parent)&&!A.isExternalModule(I.parent.parent.parent)}return!1}A.isModuleAugmentationExternal=Le;function ir(I){var vA;return(vA=I.declarations)===null||vA===void 0?void 0:vA.find(function(Ie){return!Me(Ie)&&!(A.isModuleDeclaration(Ie)&&be(Ie))})}A.getNonAugmentationDeclaration=ir;function Ye(I){return I===A.ModuleKind.CommonJS||I===A.ModuleKind.Node16||I===A.ModuleKind.NodeNext}function mr(I,vA){return A.isExternalModule(I)||vA.isolatedModules||Ye(gl(vA))&&!!I.commonJsModuleIndicator}A.isEffectiveExternalModule=mr;function $e(I,vA){switch(I.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return I.isDeclarationFile?!1:Qh(vA,"alwaysStrict")||A.startsWithUseStrict(I.statements)?!0:A.isExternalModule(I)||vA.isolatedModules?gl(vA)>=A.ModuleKind.ES2015?!0:!vA.noImplicitUseStrict:!1}A.isEffectiveStrictModeSourceFile=$e;function xr(I){return!!(I.flags&16777216)||lc(I,2)}A.isAmbientPropertyDeclaration=xr;function PA(I,vA){switch(I.kind){case 308:case 266:case 295:case 264:case 245:case 246:case 247:case 173:case 171:case 174:case 175:case 259:case 215:case 216:case 169:case 172:return!0;case 238:return!A.isFunctionLikeOrClassStaticBlockDeclaration(vA)}return!1}A.isBlockScope=PA;function we(I){switch(I.kind){case 341:case 348:case 326:return!0;default:return A.assertType(I),LA(I)}}A.isDeclarationWithTypeParameters=we;function LA(I){switch(I.kind){case 176:case 177:case 170:case 178:case 181:case 182:case 320:case 260:case 228:case 261:case 262:case 347:case 259:case 171:case 173:case 174:case 175:case 215:case 216:return!0;default:return A.assertType(I),!1}}A.isDeclarationWithTypeParameterChildren=LA;function ae(I){switch(I.kind){case 269:case 268:return!0;default:return!1}}A.isAnyImportSyntax=ae;function We(I){return ae(I)||Qs(I)}A.isAnyImportOrBareOrAccessedRequire=We;function YA(I){switch(I.kind){case 269:case 268:case 240:case 260:case 259:case 264:case 262:case 261:case 263:return!0;default:return!1}}A.isLateVisibilityPaintedStatement=YA;function Ce(I){return Ke(I)||A.isModuleDeclaration(I)||A.isImportTypeNode(I)||or(I)}A.hasPossibleExternalModuleReference=Ce;function Ke(I){return ae(I)||A.isExportDeclaration(I)}A.isAnyImportOrReExport=Ke;function er(I){return A.findAncestor(I.parent,function(vA){return PA(vA,vA.parent)})}A.getEnclosingBlockScopeContainer=er;function ur(I,vA){for(var Ie=er(I);Ie;)vA(Ie),Ie=er(Ie)}A.forEachEnclosingBlockScopeContainer=ur;function hr(I){return!I||H(I)===0?"(Missing)":$A(I)}A.declarationNameToString=hr;function Fr(I){return I.declaration?hr(I.declaration.parameters[0].name):void 0}A.getNameFromIndexInfo=Fr;function qA(I){return I.kind===164&&!yg(I.expression)}A.isComputedNonLiteralName=qA;function oe(I){switch(I.kind){case 79:case 80:return I.autoGenerateFlags?void 0:I.escapedText;case 10:case 8:case 14:return A.escapeLeadingUnderscores(I.text);case 164:return yg(I.expression)?A.escapeLeadingUnderscores(I.expression.text):void 0;default:return A.Debug.assertNever(I)}}A.tryGetTextOfPropertyName=oe;function Ge(I){return A.Debug.checkDefined(oe(I))}A.getTextOfPropertyName=Ge;function nr(I){switch(I.kind){case 108:return"this";case 80:case 79:return H(I)===0?A.idText(I):$A(I);case 163:return nr(I.left)+"."+nr(I.right);case 208:return A.isIdentifier(I.name)||A.isPrivateIdentifier(I.name)?nr(I.expression)+"."+nr(I.name):A.Debug.assertNever(I.name);case 314:return nr(I.left)+nr(I.right);default:return A.Debug.assertNever(I)}}A.entityNameToString=nr;function Or(I,vA,Ie,gr,pt,Ci){var Ti=eA(I);return Ur(Ti,I,vA,Ie,gr,pt,Ci)}A.createDiagnosticForNode=Or;function tr(I,vA,Ie,gr,pt,Ci,Ti){var Wi=A.skipTrivia(I.text,vA.pos);return Ra(I,Wi,vA.end-Wi,Ie,gr,pt,Ci,Ti)}A.createDiagnosticForNodeArray=tr;function Ur(I,vA,Ie,gr,pt,Ci,Ti){var Wi=Ee(I,vA);return Ra(I,Wi.start,Wi.length,Ie,gr,pt,Ci,Ti)}A.createDiagnosticForNodeInSourceFile=Ur;function nt(I,vA,Ie){var gr=eA(I),pt=Ee(gr,I);return Je(gr,pt.start,pt.length,vA,Ie)}A.createDiagnosticForNodeFromMessageChain=nt;function ke(I,vA,Ie){A.Debug.assertGreaterThanOrEqual(vA,0),A.Debug.assertGreaterThanOrEqual(Ie,0),I&&(A.Debug.assertLessThanOrEqual(vA,I.text.length),A.Debug.assertLessThanOrEqual(vA+Ie,I.text.length))}function Je(I,vA,Ie,gr,pt){return ke(I,vA,Ie),{file:I,start:vA,length:Ie,code:gr.code,category:gr.category,messageText:gr.next?gr:gr.messageText,relatedInformation:pt}}A.createFileDiagnosticFromMessageChain=Je;function Ar(I,vA,Ie){return{file:I,start:0,length:0,code:vA.code,category:vA.category,messageText:vA.next?vA:vA.messageText,relatedInformation:Ie}}A.createDiagnosticForFileFromMessageChain=Ar;function fr(I){return typeof I.messageText=="string"?{code:I.code,category:I.category,messageText:I.messageText,next:I.next}:I.messageText}A.createDiagnosticMessageChainFromDiagnostic=fr;function te(I,vA,Ie){return{file:I,start:vA.pos,length:vA.end-vA.pos,code:Ie.code,category:Ie.category,messageText:Ie.message}}A.createDiagnosticForRange=te;function Te(I,vA){var Ie=A.createScanner(I.languageVersion,!0,I.languageVariant,I.text,void 0,vA);Ie.scan();var gr=Ie.getTokenPos();return A.createTextSpanFromBounds(gr,Ie.getTextPos())}A.getSpanOfTokenAtPosition=Te;function UA(I,vA){var Ie=A.skipTrivia(I.text,vA.pos);if(vA.body&&vA.body.kind===238){var gr=A.getLineAndCharacterOfPosition(I,vA.body.pos).line,pt=A.getLineAndCharacterOfPosition(I,vA.body.end).line;if(gr0?vA.statements[0].pos:vA.end;return A.createTextSpanFromBounds(pt,Ci)}if(Ie===void 0)return Te(I,vA.pos);A.Debug.assert(!A.isJSDoc(Ie));var Ti=uA(Ie),Wi=Ti||A.isJsxText(vA)?Ie.pos:A.skipTrivia(I.text,Ie.pos);return Ti?(A.Debug.assert(Wi===Ie.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),A.Debug.assert(Wi===Ie.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(A.Debug.assert(Wi>=Ie.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),A.Debug.assert(Wi<=Ie.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),A.createTextSpanFromBounds(Wi,Ie.end)}A.getErrorSpanForNode=Ee;function de(I){return(I.externalModuleIndicator||I.commonJsModuleIndicator)!==void 0}A.isExternalOrCommonJsModule=de;function HA(I){return I.scriptKind===6}A.isJsonSourceFile=HA;function pe(I){return!!(A.getCombinedModifierFlags(I)&2048)}A.isEnumConst=pe;function ee(I){return!!(A.getCombinedModifierFlags(I)&64&&!A.isParameterPropertyDeclaration(I,I.parent))}A.isDeclarationReadonly=ee;function Pe(I){return!!(A.getCombinedNodeFlags(I)&2)}A.isVarConst=Pe;function He(I){return!!(A.getCombinedNodeFlags(I)&1)}A.isLet=He;function Xe(I){return I.kind===210&&I.expression.kind===106}A.isSuperCall=Xe;function or(I){return I.kind===210&&I.expression.kind===100}A.isImportCall=or;function Mr(I){return A.isMetaProperty(I)&&I.keywordToken===100&&I.name.escapedText==="meta"}A.isImportMeta=Mr;function ar(I){return A.isImportTypeNode(I)&&A.isLiteralTypeNode(I.argument)&&A.isStringLiteral(I.argument.literal)}A.isLiteralImportTypeNode=ar;function lt(I){return I.kind===241&&I.expression.kind===10}A.isPrologueDirective=lt;function Lr(I){return!!(MA(I)&1048576)}A.isCustomPrologue=Lr;function gt(I){return Lr(I)&&A.isFunctionDeclaration(I)}A.isHoistedFunction=gt;function Pr(I){return A.isIdentifier(I.name)&&!I.initializer}function Et(I){return Lr(I)&&A.isVariableStatement(I)&&A.every(I.declarationList.declarations,Pr)}A.isHoistedVariableStatement=Et;function Zt(I,vA){return I.kind!==11?A.getLeadingCommentRanges(vA.text,I.pos):void 0}A.getLeadingCommentRangesOfNode=Zt;function Ot(I,vA){var Ie=I.kind===166||I.kind===165||I.kind===215||I.kind===216||I.kind===214||I.kind===257||I.kind===278?A.concatenate(A.getTrailingCommentRanges(vA,I.pos),A.getLeadingCommentRanges(vA,I.pos)):A.getLeadingCommentRanges(vA,I.pos);return A.filter(Ie,function(gr){return vA.charCodeAt(gr.pos+1)===42&&vA.charCodeAt(gr.pos+2)===42&&vA.charCodeAt(gr.pos+3)!==47})}A.getJSDocCommentRanges=Ot,A.fullTripleSlashReferencePathRegEx=/^(\/\/\/\s*/;var _i=/^(\/\/\/\s*/;A.fullTripleSlashAMDReferencePathRegEx=/^(\/\/\/\s*/;var ei=/^(\/\/\/\s*/;function Yt(I){if(179<=I.kind&&I.kind<=202)return!0;switch(I.kind){case 131:case 157:case 148:case 160:case 152:case 134:case 153:case 149:case 155:case 144:return!0;case 114:return I.parent.kind!==219;case 230:return A.isHeritageClause(I.parent)&&!Cu(I);case 165:return I.parent.kind===197||I.parent.kind===192;case 79:(I.parent.kind===163&&I.parent.right===I||I.parent.kind===208&&I.parent.name===I)&&(I=I.parent),A.Debug.assert(I.kind===79||I.kind===163||I.kind===208,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 163:case 208:case 108:{var vA=I.parent;if(vA.kind===183)return!1;if(vA.kind===202)return!vA.isTypeOf;if(179<=vA.kind&&vA.kind<=202)return!0;switch(vA.kind){case 230:return A.isHeritageClause(vA.parent)&&!Cu(vA);case 165:return I===vA.constraint;case 347:return I===vA.constraint;case 169:case 168:case 166:case 257:return I===vA.type;case 259:case 215:case 216:case 173:case 171:case 170:case 174:case 175:return I===vA.type;case 176:case 177:case 178:return I===vA.type;case 213:return I===vA.type;case 210:case 211:return A.contains(vA.typeArguments,I);case 212:return!1}}}return!1}A.isPartOfTypeNode=Yt;function Xr(I,vA){for(;I;){if(I.kind===vA)return!0;I=I.parent}return!1}A.isChildOfNodeWithKind=Xr;function JA(I,vA){return Ie(I);function Ie(gr){switch(gr.kind){case 250:return vA(gr);case 266:case 238:case 242:case 243:case 244:case 245:case 246:case 247:case 251:case 252:case 292:case 293:case 253:case 255:case 295:return A.forEachChild(gr,Ie)}}}A.forEachReturnStatement=JA;function Ve(I,vA){return Ie(I);function Ie(gr){switch(gr.kind){case 226:vA(gr);var pt=gr.expression;pt&&Ie(pt);return;case 263:case 261:case 264:case 262:return;default:if(A.isFunctionLike(gr)){if(gr.name&&gr.name.kind===164){Ie(gr.name.expression);return}}else Yt(gr)||A.forEachChild(gr,Ie)}}}A.forEachYieldExpression=Ve;function XA(I){return I&&I.kind===185?I.elementType:I&&I.kind===180?A.singleOrUndefined(I.typeArguments):void 0}A.getRestParameterElementType=XA;function Gr(I){switch(I.kind){case 261:case 260:case 228:case 184:return I.members;case 207:return I.properties}}A.getMembersOfDeclaration=Gr;function ot(I){if(I)switch(I.kind){case 205:case 302:case 166:case 299:case 169:case 168:case 300:case 257:return!0}return!1}A.isVariableLike=ot;function Sr(I){return ot(I)||A.isAccessor(I)}A.isVariableLikeOrAccessor=Sr;function Dr(I){return I.parent.kind===258&&I.parent.parent.kind===240}A.isVariableDeclarationInVariableStatement=Dr;function Jr(I){return Tt(I)?A.isObjectLiteralExpression(I.parent)&&A.isBinaryExpression(I.parent.parent)&&ai(I.parent.parent)===2||Yr(I.parent):!1}A.isCommonJsExportedExpression=Jr;function Yr(I){return Tt(I)?A.isBinaryExpression(I)&&ai(I)===1:!1}A.isCommonJsExportPropertyAssignment=Yr;function rt(I){return(A.isVariableDeclaration(I)?Pe(I)&&A.isIdentifier(I.name)&&Dr(I):A.isPropertyDeclaration(I)?pE(I)&&dE(I):A.isPropertySignature(I)&&pE(I))||Yr(I)}A.isValidESSymbolDeclaration=rt;function Bt(I){switch(I.kind){case 171:case 170:case 173:case 174:case 175:case 259:case 215:return!0}return!1}A.introducesArgumentsExoticObject=Bt;function le(I,vA){for(;;){if(vA&&vA(I),I.statement.kind!==253)return I.statement;I=I.statement}}A.unwrapInnermostStatementOfLabel=le;function Ir(I){return I&&I.kind===238&&A.isFunctionLike(I.parent)}A.isFunctionBlock=Ir;function ut(I){return I&&I.kind===171&&I.parent.kind===207}A.isObjectLiteralMethod=ut;function Ii(I){return(I.kind===171||I.kind===174||I.kind===175)&&(I.parent.kind===207||I.parent.kind===228)}A.isObjectLiteralOrClassExpressionMethodOrAccessor=Ii;function Zi(I){return I&&I.kind===1}A.isIdentifierTypePredicate=Zi;function yi(I){return I&&I.kind===0}A.isThisTypePredicate=yi;function zt(I,vA,Ie){return I.properties.filter(function(gr){if(gr.kind===299){var pt=oe(gr.name);return vA===pt||!!Ie&&Ie===pt}return!1})}A.getPropertyAssignment=zt;function cn(I,vA,Ie){return A.firstDefined(zt(I,vA),function(gr){return A.isArrayLiteralExpression(gr.initializer)?A.find(gr.initializer.elements,function(pt){return A.isStringLiteral(pt)&&pt.text===Ie}):void 0})}A.getPropertyArrayElementValue=cn;function Ui(I){if(I&&I.statements.length){var vA=I.statements[0].expression;return A.tryCast(vA,A.isObjectLiteralExpression)}}A.getTsConfigObjectLiteralExpression=Ui;function Mi(I,vA,Ie){return A.firstDefined(yt(I,vA),function(gr){return A.isArrayLiteralExpression(gr.initializer)?A.find(gr.initializer.elements,function(pt){return A.isStringLiteral(pt)&&pt.text===Ie}):void 0})}A.getTsConfigPropArrayElementValue=Mi;function yt(I,vA){var Ie=Ui(I);return Ie?zt(Ie,vA):A.emptyArray}A.getTsConfigPropArray=yt;function Ya(I){return A.findAncestor(I.parent,A.isFunctionLike)}A.getContainingFunction=Ya;function Wn(I){return A.findAncestor(I.parent,A.isFunctionLikeDeclaration)}A.getContainingFunctionDeclaration=Wn;function jn(I){return A.findAncestor(I.parent,A.isClassLike)}A.getContainingClass=jn;function Ho(I){return A.findAncestor(I.parent,function(vA){return A.isClassLike(vA)||A.isFunctionLike(vA)?"quit":A.isClassStaticBlockDeclaration(vA)})}A.getContainingClassStaticBlock=Ho;function _a(I){return A.findAncestor(I.parent,A.isFunctionLikeOrClassStaticBlockDeclaration)}A.getContainingFunctionOrClassStaticBlock=_a;function yo(I,vA){for(A.Debug.assert(I.kind!==308);;){if(I=I.parent,!I)return A.Debug.fail();switch(I.kind){case 164:if(A.isClassLike(I.parent.parent))return I;I=I.parent;break;case 167:I.parent.kind===166&&A.isClassElement(I.parent.parent)?I=I.parent.parent:A.isClassElement(I.parent)&&(I=I.parent);break;case 216:if(!vA)continue;case 259:case 215:case 264:case 172:case 169:case 168:case 171:case 170:case 173:case 174:case 175:case 176:case 177:case 178:case 263:case 308:return I}}}A.getThisContainer=yo;function va(I){switch(I.kind){case 216:case 259:case 215:case 169:return!0;case 238:switch(I.parent.kind){case 173:case 171:case 174:case 175:return!0;default:return!1}default:return!1}}A.isThisContainerOrFunctionBlock=va;function wi(I){A.isIdentifier(I)&&(A.isClassDeclaration(I.parent)||A.isFunctionDeclaration(I.parent))&&I.parent.name===I&&(I=I.parent);var vA=yo(I,!0);return A.isSourceFile(vA)}A.isInTopLevelContext=wi;function bi(I){var vA=yo(I,!1);if(vA)switch(vA.kind){case 173:case 259:case 215:return vA}}A.getNewTargetContainer=bi;function ao(I,vA){for(;;){if(I=I.parent,!I)return I;switch(I.kind){case 164:I=I.parent;break;case 259:case 215:case 216:if(!vA)continue;case 169:case 168:case 171:case 170:case 173:case 174:case 175:case 172:return I;case 167:I.parent.kind===166&&A.isClassElement(I.parent.parent)?I=I.parent.parent:A.isClassElement(I.parent)&&(I=I.parent);break}}}A.getSuperContainer=ao;function Bo(I){if(I.kind===215||I.kind===216){for(var vA=I,Ie=I.parent;Ie.kind===214;)vA=Ie,Ie=Ie.parent;if(Ie.kind===210&&Ie.expression===vA)return Ie}}A.getImmediatelyInvokedFunctionExpression=Bo;function Uo(I){return I.kind===106||oo(I)}A.isSuperOrSuperProperty=Uo;function oo(I){var vA=I.kind;return(vA===208||vA===209)&&I.expression.kind===106}A.isSuperProperty=oo;function Xo(I){var vA=I.kind;return(vA===208||vA===209)&&I.expression.kind===108}A.isThisProperty=Xo;function Bs(I){var vA;return!!I&&A.isVariableDeclaration(I)&&((vA=I.initializer)===null||vA===void 0?void 0:vA.kind)===108}A.isThisInitializedDeclaration=Bs;function hs(I){return!!I&&(A.isShorthandPropertyAssignment(I)||A.isPropertyAssignment(I))&&A.isBinaryExpression(I.parent.parent)&&I.parent.parent.operatorToken.kind===63&&I.parent.parent.right.kind===108}A.isThisInitializedObjectBindingExpression=hs;function Va(I){switch(I.kind){case 180:return I.typeName;case 230:return Tu(I.expression)?I.expression:void 0;case 79:case 163:return I}}A.getEntityNameFromTypeNode=Va;function xe(I){switch(I.kind){case 212:return I.tag;case 283:case 282:return I.tagName;default:return I.expression}}A.getInvokedExpression=xe;function ze(I,vA,Ie){if(A.isNamedDeclaration(I)&&A.isPrivateIdentifier(I.name))return!1;switch(I.kind){case 260:return!0;case 169:return vA.kind===260;case 174:case 175:case 171:return I.body!==void 0&&vA.kind===260;case 166:return vA.body!==void 0&&(vA.kind===173||vA.kind===171||vA.kind===175)&&Ie.kind===260}return!1}A.nodeCanBeDecorated=ze;function Lt(I,vA,Ie){return Op(I)&&ze(I,vA,Ie)}A.nodeIsDecorated=Lt;function en(I,vA,Ie){return Lt(I,vA,Ie)||hn(I,vA)}A.nodeOrChildIsDecorated=en;function hn(I,vA){switch(I.kind){case 260:return A.some(I.members,function(Ie){return en(Ie,I,vA)});case 171:case 175:case 173:return A.some(I.parameters,function(Ie){return Lt(Ie,I,vA)});default:return!1}}A.childIsDecorated=hn;function Ia(I){if(Lt(I))return!0;var vA=Nl(I);return!!vA&&hn(vA,I)}A.classOrConstructorParameterIsDecorated=Ia;function ne(I){var vA=I.parent;return vA.kind===283||vA.kind===282||vA.kind===284?vA.tagName===I:!1}A.isJSXTagName=ne;function _r(I){switch(I.kind){case 106:case 104:case 110:case 95:case 13:case 206:case 207:case 208:case 209:case 210:case 211:case 212:case 231:case 213:case 235:case 232:case 214:case 215:case 228:case 216:case 219:case 217:case 218:case 221:case 222:case 223:case 224:case 227:case 225:case 229:case 281:case 282:case 285:case 226:case 220:case 233:return!0;case 230:return!A.isHeritageClause(I.parent);case 163:for(;I.parent.kind===163;)I=I.parent;return I.parent.kind===183||A.isJSDocLinkLike(I.parent)||A.isJSDocNameReference(I.parent)||A.isJSDocMemberName(I.parent)||ne(I);case 314:for(;A.isJSDocMemberName(I.parent);)I=I.parent;return I.parent.kind===183||A.isJSDocLinkLike(I.parent)||A.isJSDocNameReference(I.parent)||A.isJSDocMemberName(I.parent)||ne(I);case 80:return A.isBinaryExpression(I.parent)&&I.parent.left===I&&I.parent.operatorToken.kind===101;case 79:if(I.parent.kind===183||A.isJSDocLinkLike(I.parent)||A.isJSDocNameReference(I.parent)||A.isJSDocMemberName(I.parent)||ne(I))return!0;case 8:case 9:case 10:case 14:case 108:return qr(I);default:return!1}}A.isExpressionNode=_r;function qr(I){var vA=I.parent;switch(vA.kind){case 257:case 166:case 169:case 168:case 302:case 299:case 205:return vA.initializer===I;case 241:case 242:case 243:case 244:case 250:case 251:case 252:case 292:case 254:return vA.expression===I;case 245:var Ie=vA;return Ie.initializer===I&&Ie.initializer.kind!==258||Ie.condition===I||Ie.incrementor===I;case 246:case 247:var gr=vA;return gr.initializer===I&&gr.initializer.kind!==258||gr.expression===I;case 213:case 231:return I===vA.expression;case 236:return I===vA.expression;case 164:return I===vA.expression;case 167:case 291:case 290:case 301:return!0;case 230:return vA.expression===I&&!Yt(vA);case 300:return vA.objectAssignmentInitializer===I;case 235:return I===vA.expression;default:return _r(vA)}}A.isInExpressionContext=qr;function $r(I){for(;I.kind===163||I.kind===79;)I=I.parent;return I.kind===183}A.isPartOfTypeQuery=$r;function ie(I){return A.isNamespaceExport(I)&&!!I.parent.moduleSpecifier}A.isNamespaceReexportDeclaration=ie;function ye(I){return I.kind===268&&I.moduleReference.kind===280}A.isExternalModuleImportEqualsDeclaration=ye;function Re(I){return A.Debug.assert(ye(I)),I.moduleReference.expression}A.getExternalModuleImportEqualsDeclarationExpression=Re;function rr(I){return Qs(I)&&Io(I.initializer).arguments[0]}A.getExternalModuleRequireArgument=rr;function zr(I){return I.kind===268&&I.moduleReference.kind!==280}A.isInternalModuleImportEqualsDeclaration=zr;function Ft(I){return Tt(I)}A.isSourceFileJS=Ft;function Gt(I){return!Tt(I)}A.isSourceFileNotJS=Gt;function Tt(I){return!!I&&!!(I.flags&262144)}A.isInJSFile=Tt;function gn(I){return!!I&&!!(I.flags&67108864)}A.isInJsonFile=gn;function kn(I){return!HA(I)}A.isSourceFileNotJson=kn;function ra(I){return!!I&&!!(I.flags&8388608)}A.isInJSDoc=ra;function Vn(I){return A.isTypeReferenceNode(I)&&A.isIdentifier(I.typeName)&&I.typeName.escapedText==="Object"&&I.typeArguments&&I.typeArguments.length===2&&(I.typeArguments[0].kind===152||I.typeArguments[0].kind===148)}A.isJSDocIndexSignature=Vn;function ba(I,vA){if(I.kind!==210)return!1;var Ie=I,gr=Ie.expression,pt=Ie.arguments;if(gr.kind!==79||gr.escapedText!=="require"||pt.length!==1)return!1;var Ci=pt[0];return!vA||A.isStringLiteralLike(Ci)}A.isRequireCall=ba;function Ts(I){return Gs(I,!1)}A.isVariableDeclarationInitializedToRequire=Ts;function Qs(I){return Gs(I,!0)}A.isVariableDeclarationInitializedToBareOrAccessedRequire=Qs;function Gs(I,vA){return A.isVariableDeclaration(I)&&!!I.initializer&&ba(vA?Io(I.initializer):I.initializer,!0)}function Vc(I){return A.isVariableStatement(I)&&I.declarationList.declarations.length>0&&A.every(I.declarationList.declarations,function(vA){return Ts(vA)})}A.isRequireVariableStatement=Vc;function $s(I){return I===39||I===34}A.isSingleOrDoubleQuote=$s;function ys(I,vA){return SA(vA,I).charCodeAt(0)===34}A.isStringDoubleQuoted=ys;function zc(I){return A.isBinaryExpression(I)||$i(I)||A.isIdentifier(I)||A.isCallExpression(I)}A.isAssignmentDeclaration=zc;function Rc(I){return Tt(I)&&I.initializer&&A.isBinaryExpression(I.initializer)&&(I.initializer.operatorToken.kind===56||I.initializer.operatorToken.kind===60)&&I.name&&Tu(I.name)&&xs(I.name,I.initializer.left)?I.initializer.right:I.initializer}A.getEffectiveInitializer=Rc;function _l(I){var vA=Rc(I);return vA&&ms(vA,Ku(I.name))}A.getDeclaredExpandoInitializer=_l;function Bc(I,vA){return A.forEach(I.properties,function(Ie){return A.isPropertyAssignment(Ie)&&A.isIdentifier(Ie.name)&&Ie.name.escapedText==="value"&&Ie.initializer&&ms(Ie.initializer,vA)})}function sl(I){if(I&&I.parent&&A.isBinaryExpression(I.parent)&&I.parent.operatorToken.kind===63){var vA=Ku(I.parent.left);return ms(I.parent.right,vA)||kl(I.parent.left,I.parent.right,vA)}if(I&&A.isCallExpression(I)&&Pi(I)){var Ie=Bc(I.arguments[2],I.arguments[1].text==="prototype");if(Ie)return Ie}}A.getAssignedExpandoInitializer=sl;function ms(I,vA){if(A.isCallExpression(I)){var Ie=Dn(I.expression);return Ie.kind===215||Ie.kind===216?I:void 0}if(I.kind===215||I.kind===228||I.kind===216||A.isObjectLiteralExpression(I)&&(I.properties.length===0||vA))return I}A.getExpandoInitializer=ms;function kl(I,vA,Ie){var gr=A.isBinaryExpression(vA)&&(vA.operatorToken.kind===56||vA.operatorToken.kind===60)&&ms(vA.right,Ie);if(gr&&xs(I,vA.left))return gr}function bs(I){var vA=A.isVariableDeclaration(I.parent)?I.parent.name:A.isBinaryExpression(I.parent)&&I.parent.operatorToken.kind===63?I.parent.left:void 0;return vA&&ms(I.right,Ku(vA))&&Tu(vA)&&xs(vA,I.left)}A.isDefaultedExpandoInitializer=bs;function Tc(I){if(A.isBinaryExpression(I.parent)){var vA=(I.parent.operatorToken.kind===56||I.parent.operatorToken.kind===60)&&A.isBinaryExpression(I.parent.parent)?I.parent.parent:I.parent;if(vA.operatorToken.kind===63&&A.isIdentifier(vA.left))return vA.left}else if(A.isVariableDeclaration(I.parent))return I.parent.name}A.getNameOfExpando=Tc;function xs(I,vA){return qi(I)&&qi(vA)?Ro(I)===Ro(vA):A.isMemberName(I)&&Bi(vA)&&(vA.expression.kind===108||A.isIdentifier(vA.expression)&&(vA.expression.escapedText==="window"||vA.expression.escapedText==="self"||vA.expression.escapedText==="global"))?xs(I,se(vA)):Bi(I)&&Bi(vA)?Ba(I)===Ba(vA)&&xs(I.expression,vA.expression):!1}A.isSameEntityName=xs;function yA(I){for(;Vo(I,!0);)I=I.right;return I}A.getRightMostAssignedExpression=yA;function je(I){return A.isIdentifier(I)&&I.escapedText==="exports"}A.isExportsIdentifier=je;function br(I){return A.isIdentifier(I)&&I.escapedText==="module"}A.isModuleIdentifier=br;function mt(I){return(A.isPropertyAccessExpression(I)||ji(I))&&br(I.expression)&&Ba(I)==="exports"}A.isModuleExportsAccessExpression=mt;function ai(I){var vA=jr(I);return vA===5||Tt(I)?vA:0}A.getAssignmentDeclarationKind=ai;function Pi(I){return A.length(I.arguments)===3&&A.isPropertyAccessExpression(I.expression)&&A.isIdentifier(I.expression.expression)&&A.idText(I.expression.expression)==="Object"&&A.idText(I.expression.name)==="defineProperty"&&yg(I.arguments[1])&&aa(I.arguments[0],!0)}A.isBindableObjectDefinePropertyCall=Pi;function Bi(I){return A.isPropertyAccessExpression(I)||ji(I)}A.isLiteralLikeAccess=Bi;function ji(I){return A.isElementAccessExpression(I)&&yg(I.argumentExpression)}A.isLiteralLikeElementAccess=ji;function Fn(I,vA){return A.isPropertyAccessExpression(I)&&(!vA&&I.expression.kind===108||A.isIdentifier(I.name)&&aa(I.expression,!0))||vn(I,vA)}A.isBindableStaticAccessExpression=Fn;function vn(I,vA){return ji(I)&&(!vA&&I.expression.kind===108||Tu(I.expression)||Fn(I.expression,!0))}A.isBindableStaticElementAccessExpression=vn;function aa(I,vA){return Tu(I)||Fn(I,vA)}A.isBindableStaticNameExpression=aa;function se(I){return A.isPropertyAccessExpression(I)?I.name:I.argumentExpression}A.getNameOrArgument=se;function jr(I){if(A.isCallExpression(I)){if(!Pi(I))return 0;var vA=I.arguments[0];return je(vA)||mt(vA)?8:Fn(vA)&&Ba(vA)==="prototype"?9:7}return I.operatorToken.kind!==63||!$i(I.left)||qe(yA(I))?0:aa(I.left.expression,!0)&&Ba(I.left)==="prototype"&&A.isObjectLiteralExpression(Ds(I))?6:po(I.left)}function qe(I){return A.isVoidExpression(I)&&A.isNumericLiteral(I.expression)&&I.expression.text==="0"}function la(I){if(A.isPropertyAccessExpression(I))return I.name;var vA=Dn(I.argumentExpression);return A.isNumericLiteral(vA)||A.isStringLiteralLike(vA)?vA:I}A.getElementOrPropertyAccessArgumentExpressionOrName=la;function Ba(I){var vA=la(I);if(vA){if(A.isIdentifier(vA))return vA.escapedText;if(A.isStringLiteralLike(vA)||A.isNumericLiteral(vA))return A.escapeLeadingUnderscores(vA.text)}}A.getElementOrPropertyAccessName=Ba;function po(I){if(I.expression.kind===108)return 4;if(mt(I))return 2;if(aa(I.expression,!0)){if(Ku(I.expression))return 3;for(var vA=I;!A.isIdentifier(vA.expression);)vA=vA.expression;var Ie=vA.expression;if((Ie.escapedText==="exports"||Ie.escapedText==="module"&&Ba(vA)==="exports")&&Fn(I))return 1;if(aa(I,!0)||A.isElementAccessExpression(I)&&hd(I))return 5}return 0}A.getAssignmentDeclarationPropertyAccessKind=po;function Ds(I){for(;A.isBinaryExpression(I.right);)I=I.right;return I.right}A.getInitializerOfBinaryExpression=Ds;function Ac(I){return A.isBinaryExpression(I)&&ai(I)===3}A.isPrototypePropertyAssignment=Ac;function gc(I){return Tt(I)&&I.parent&&I.parent.kind===241&&(!A.isElementAccessExpression(I)||ji(I))&&!!A.getJSDocTypeTag(I.parent)}A.isSpecialPropertyDeclaration=gc;function Xl(I,vA){var Ie=I.valueDeclaration;(!Ie||!(vA.flags&16777216&&!(Ie.flags&16777216))&&zc(Ie)&&!zc(vA)||Ie.kind!==vA.kind&&Ae(Ie))&&(I.valueDeclaration=vA)}A.setValueDeclaration=Xl;function Nc(I){if(!I||!I.valueDeclaration)return!1;var vA=I.valueDeclaration;return vA.kind===259||A.isVariableDeclaration(vA)&&vA.initializer&&A.isFunctionLike(vA.initializer)}A.isFunctionSymbol=Nc;function Kc(I){var vA,Ie;switch(I.kind){case 257:return(vA=A.findAncestor(I.initializer,function(gr){return ba(gr,!0)}))===null||vA===void 0?void 0:vA.arguments[0];case 269:return A.tryCast(I.moduleSpecifier,A.isStringLiteralLike);case 268:return A.tryCast((Ie=A.tryCast(I.moduleReference,A.isExternalModuleReference))===null||Ie===void 0?void 0:Ie.expression,A.isStringLiteralLike);default:A.Debug.assertNever(I)}}A.tryGetModuleSpecifierFromDeclaration=Kc;function Zl(I){return ho(I)||A.Debug.failBadSyntaxKind(I.parent)}A.importFromModuleSpecifier=Zl;function ho(I){switch(I.parent.kind){case 269:case 275:return I.parent;case 280:return I.parent.parent;case 210:return or(I.parent)||ba(I.parent,!1)?I.parent:void 0;case 198:return A.Debug.assert(A.isStringLiteral(I)),A.tryCast(I.parent.parent,A.isImportTypeNode);default:return}}A.tryGetImportFromModuleSpecifier=ho;function ec(I){switch(I.kind){case 269:case 275:return I.moduleSpecifier;case 268:return I.moduleReference.kind===280?I.moduleReference.expression:void 0;case 202:return ar(I)?I.argument.literal:void 0;case 210:return I.arguments[0];case 264:return I.name.kind===10?I.name:void 0;default:return A.Debug.assertNever(I)}}A.getExternalModuleName=ec;function Nt(I){switch(I.kind){case 269:return I.importClause&&A.tryCast(I.importClause.namedBindings,A.isNamespaceImport);case 268:return I;case 275:return I.exportClause&&A.tryCast(I.exportClause,A.isNamespaceExport);default:return A.Debug.assertNever(I)}}A.getNamespaceDeclarationNode=Nt;function Li(I){return I.kind===269&&!!I.importClause&&!!I.importClause.name}A.isDefaultImport=Li;function mi(I,vA){if(I.name){var Ie=vA(I);if(Ie)return Ie}if(I.namedBindings){var Ie=A.isNamespaceImport(I.namedBindings)?vA(I.namedBindings):A.forEach(I.namedBindings.elements,vA);if(Ie)return Ie}}A.forEachImportClauseDeclaration=mi;function Ea(I){if(I)switch(I.kind){case 166:case 171:case 170:case 300:case 299:case 169:case 168:return I.questionToken!==void 0}return!1}A.hasQuestionToken=Ea;function Mo(I){var vA=A.isJSDocFunctionType(I)?A.firstOrUndefined(I.parameters):void 0,Ie=A.tryCast(vA&&vA.name,A.isIdentifier);return!!Ie&&Ie.escapedText==="new"}A.isJSDocConstructSignature=Mo;function es(I){return I.kind===348||I.kind===341||I.kind===342}A.isJSDocTypeAlias=es;function Os(I){return es(I)||A.isTypeAliasDeclaration(I)}A.isTypeAlias=Os;function _s(I){return A.isExpressionStatement(I)&&A.isBinaryExpression(I.expression)&&I.expression.operatorToken.kind===63?yA(I.expression):void 0}function cr(I){return A.isExpressionStatement(I)&&A.isBinaryExpression(I.expression)&&ai(I.expression)!==0&&A.isBinaryExpression(I.expression.right)&&(I.expression.right.operatorToken.kind===56||I.expression.right.operatorToken.kind===60)?I.expression.right.right:void 0}function lr(I){switch(I.kind){case 240:var vA=Zr(I);return vA&&vA.initializer;case 169:return I.initializer;case 299:return I.initializer}}A.getSingleInitializerOfVariableStatementOrPropertyDeclaration=lr;function Zr(I){return A.isVariableStatement(I)?A.firstOrUndefined(I.declarationList.declarations):void 0}A.getSingleVariableOfVariableStatement=Zr;function xt(I){return A.isModuleDeclaration(I)&&I.body&&I.body.kind===264?I.body:void 0}function Wt(I,vA){var Ie;ot(I)&&A.hasInitializer(I)&&A.hasJSDocNodes(I.initializer)&&(Ie=A.addRange(Ie,Kt(I,A.last(I.initializer.jsDoc))));for(var gr=I;gr&&gr.parent;){if(A.hasJSDocNodes(gr)&&(Ie=A.addRange(Ie,Kt(I,A.last(gr.jsDoc)))),gr.kind===166){Ie=A.addRange(Ie,(vA?A.getJSDocParameterTagsNoCache:A.getJSDocParameterTags)(gr));break}if(gr.kind===165){Ie=A.addRange(Ie,(vA?A.getJSDocTypeParameterTagsNoCache:A.getJSDocTypeParameterTags)(gr));break}gr=di(gr)}return Ie||A.emptyArray}A.getJSDocCommentsAndTags=Wt;function Kt(I,vA){if(A.isJSDoc(vA)){var Ie=A.filter(vA.tags,function(gr){return Gi(I,gr)});return vA.tags===Ie?[vA]:Ie}return Gi(I,vA)?[vA]:void 0}function Gi(I,vA){return!A.isJSDocTypeTag(vA)||!vA.parent||!A.isJSDoc(vA.parent)||!A.isParenthesizedExpression(vA.parent.parent)||vA.parent.parent===I}function di(I){var vA=I.parent;if(vA.kind===299||vA.kind===274||vA.kind===169||vA.kind===241&&I.kind===208||vA.kind===250||xt(vA)||A.isBinaryExpression(I)&&I.operatorToken.kind===63)return vA;if(vA.parent&&(Zr(vA.parent)===I||A.isBinaryExpression(vA)&&vA.operatorToken.kind===63))return vA.parent;if(vA.parent&&vA.parent.parent&&(Zr(vA.parent.parent)||lr(vA.parent.parent)===I||cr(vA.parent.parent)))return vA.parent.parent}A.getNextJSDocCommentLocation=di;function Yi(I){if(I.symbol)return I.symbol;if(A.isIdentifier(I.name)){var vA=I.name.escapedText,Ie=Jn(I);if(Ie){var gr=A.find(Ie.parameters,function(pt){return pt.name.kind===79&&pt.name.escapedText===vA});return gr&&gr.symbol}}}A.getParameterSymbolFromJSDoc=Yi;function ha(I){if(A.isJSDoc(I.parent)&&I.parent.tags){var vA=A.find(I.parent.tags,es);if(vA)return vA}return Jn(I)}A.getEffectiveContainerForJSDocTemplateTag=ha;function Jn(I){var vA=Cn(I);if(vA)return A.isPropertySignature(vA)&&vA.type&&A.isFunctionLike(vA.type)?vA.type:A.isFunctionLike(vA)?vA:void 0}A.getHostSignatureFromJSDoc=Jn;function Cn(I){var vA=ja(I);if(vA)return cr(vA)||_s(vA)||lr(vA)||Zr(vA)||xt(vA)||vA}A.getEffectiveJSDocHost=Cn;function ja(I){var vA=qn(I);if(vA){var Ie=vA.parent;if(Ie&&Ie.jsDoc&&vA===A.lastOrUndefined(Ie.jsDoc))return Ie}}A.getJSDocHost=ja;function qn(I){return A.findAncestor(I.parent,A.isJSDoc)}A.getJSDocRoot=qn;function Qo(I){var vA=I.name.escapedText,Ie=I.parent.parent.parent.typeParameters;return Ie&&A.find(Ie,function(gr){return gr.name.escapedText===vA})}A.getTypeParameterFromJsDoc=Qo;function lo(I){return!!I.typeArguments}A.hasTypeArguments=lo;var Ms;(function(I){I[I.None=0]="None",I[I.Definite=1]="Definite",I[I.Compound=2]="Compound"})(Ms=A.AssignmentKind||(A.AssignmentKind={}));function qo(I){for(var vA=I.parent;;){switch(vA.kind){case 223:var Ie=vA.operatorToken.kind;return yd(Ie)&&vA.left===I?Ie===63||xp(Ie)?1:2:0;case 221:case 222:var gr=vA.operator;return gr===45||gr===46?2:0;case 246:case 247:return vA.initializer===I?1:0;case 214:case 206:case 227:case 232:I=vA;break;case 301:I=vA.parent;break;case 300:if(vA.name!==I)return 0;I=vA.parent;break;case 299:if(vA.name===I)return 0;I=vA.parent;break;default:return 0}vA=I.parent}}A.getAssignmentTargetKind=qo;function Ys(I){return qo(I)!==0}A.isAssignmentTarget=Ys;function rs(I){switch(I.kind){case 238:case 240:case 251:case 242:case 252:case 266:case 292:case 293:case 253:case 245:case 246:case 247:case 243:case 244:case 255:case 295:return!0}return!1}A.isNodeWithPossibleHoistedDeclaration=rs;function xA(I){return A.isFunctionExpression(I)||A.isArrowFunction(I)||A.isMethodOrAccessor(I)||A.isFunctionDeclaration(I)||A.isConstructorDeclaration(I)}A.isValueSignatureDeclaration=xA;function ve(I,vA){for(;I&&I.kind===vA;)I=I.parent;return I}function Ue(I){return ve(I,193)}A.walkUpParenthesizedTypes=Ue;function et(I){return ve(I,214)}A.walkUpParenthesizedExpressions=et;function jt(I){for(var vA;I&&I.kind===193;)vA=I,I=I.parent;return[vA,I]}A.walkUpParenthesizedTypesAndGetParentAndChild=jt;function Ji(I){for(;A.isParenthesizedTypeNode(I);)I=I.type;return I}A.skipTypeParentheses=Ji;function Dn(I,vA){var Ie=vA?17:1;return A.skipOuterExpressions(I,Ie)}A.skipParentheses=Dn;function ta(I){return I.kind!==208&&I.kind!==209?!1:(I=et(I.parent),I&&I.kind===217)}A.isDeleteTarget=ta;function qa(I,vA){for(;I;){if(I===vA)return!0;I=I.parent}return!1}A.isNodeDescendantOf=qa;function ro(I){return!A.isSourceFile(I)&&!A.isBindingPattern(I)&&A.isDeclaration(I.parent)&&I.parent.name===I}A.isDeclarationName=ro;function Co(I){var vA=I.parent;switch(I.kind){case 10:case 14:case 8:if(A.isComputedPropertyName(vA))return vA.parent;case 79:if(A.isDeclaration(vA))return vA.name===I?vA:void 0;if(A.isQualifiedName(vA)){var Ie=vA.parent;return A.isJSDocParameterTag(Ie)&&Ie.name===vA?Ie:void 0}else{var gr=vA.parent;return A.isBinaryExpression(gr)&&ai(gr)!==0&&(gr.left.symbol||gr.symbol)&&A.getNameOfDeclaration(gr)===I?gr:void 0}case 80:return A.isDeclaration(vA)&&vA.name===I?vA:void 0;default:return}}A.getDeclarationFromName=Co;function Ma(I){return yg(I)&&I.parent.kind===164&&A.isDeclaration(I.parent.parent)}A.isLiteralComputedPropertyDeclarationName=Ma;function Wa(I){var vA=I.parent;switch(vA.kind){case 169:case 168:case 171:case 170:case 174:case 175:case 302:case 299:case 208:return vA.name===I;case 163:return vA.right===I;case 205:case 273:return vA.propertyName===I;case 278:case 288:case 282:case 283:case 284:return!0}return!1}A.isIdentifierName=Wa;function gs(I){return I.kind===268||I.kind===267||I.kind===270&&I.name||I.kind===271||I.kind===277||I.kind===273||I.kind===278||I.kind===274&&xl(I)?!0:Tt(I)&&(A.isBinaryExpression(I)&&ai(I)===2&&xl(I)||A.isPropertyAccessExpression(I)&&A.isBinaryExpression(I.parent)&&I.parent.left===I&&I.parent.operatorToken.kind===63&&Us(I.parent.right))}A.isAliasSymbolDeclaration=gs;function ts(I){switch(I.parent.kind){case 270:case 273:case 271:case 278:case 274:case 268:case 277:return I.parent;case 163:do I=I.parent;while(I.parent.kind===163);return ts(I)}}A.getAliasDeclarationFromName=ts;function Us(I){return Tu(I)||A.isClassExpression(I)}A.isAliasableExpression=Us;function xl(I){var vA=jo(I);return Us(vA)}A.exportAssignmentIsAlias=xl;function jo(I){return A.isExportAssignment(I)?I.expression:I.right}A.getExportAssignmentExpression=jo;function Cc(I){return I.kind===300?I.name:I.kind===299?I.initializer:I.parent.right}A.getPropertyAssignmentAliasLikeExpression=Cc;function Sf(I){var vA=Ed(I);if(vA&&Tt(I)){var Ie=A.getJSDocAugmentsTag(I);if(Ie)return Ie.class}return vA}A.getEffectiveBaseTypeNode=Sf;function Ed(I){var vA=uu(I.heritageClauses,94);return vA&&vA.types.length>0?vA.types[0]:void 0}A.getClassExtendsHeritageElement=Ed;function Pd(I){if(Tt(I))return A.getJSDocImplementsTags(I).map(function(Ie){return Ie.class});var vA=uu(I.heritageClauses,117);return vA?.types}A.getEffectiveImplementsTypeNodes=Pd;function pr(I){return A.isInterfaceDeclaration(I)?fd(I)||A.emptyArray:A.isClassLike(I)&&A.concatenate(A.singleElementArray(Sf(I)),Pd(I))||A.emptyArray}A.getAllSuperTypeNodes=pr;function fd(I){var vA=uu(I.heritageClauses,94);return vA?vA.types:void 0}A.getInterfaceBaseTypeNodes=fd;function uu(I,vA){if(I)for(var Ie=0,gr=I;Ie=0)return Un[To]}}function Ci(pa){var Un;pa.file?(Un=Ie.get(pa.file.fileName),Un||(Un=[],Ie.set(pa.file.fileName,Un),A.insertSorted(vA,pa.file.fileName,A.compareStringsCaseSensitive))):(gr&&(gr=!1,I=I.slice()),Un=I),A.insertSorted(Un,pa,Uf)}function Ti(){return gr=!0,I}function Wi(pa){if(pa)return Ie.get(pa)||[];var Un=A.flatMapToMutable(vA,function(To){return Ie.get(To)});return I.length&&Un.unshift.apply(Un,I),Un}}A.createDiagnosticCollection=Su;var Ff=/\$\{/g;function gh(I){return I.replace(Ff,"\\${")}function Cg(I){return I&&!!(A.isNoSubstitutionTemplateLiteral(I)?I.templateFlags:I.head.templateFlags||A.some(I.templateSpans,function(vA){return!!vA.literal.templateFlags}))}A.hasInvalidEscape=Cg;var dh=/[\\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,Rf=/[\\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,Ig=/\r\n|[\\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/g,_p=new A.Map(A.getEntries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function QB(I){var vA=I.toString(16).toUpperCase(),Ie=("0000"+vA).slice(-4);return"\\u"+Ie}function Af(I,vA,Ie){if(I.charCodeAt(0)===0){var gr=Ie.charCodeAt(vA+I.length);return gr>=48&&gr<=57?"\\x00":"\\0"}return _p.get(I)||QB(I.charCodeAt(0))}function ef(I,vA){var Ie=vA===96?Ig:vA===39?Rf:dh;return I.replace(Ie,Af)}A.escapeString=ef;var lE=/[^\u0000-\u007F]/g;function rf(I,vA){return I=ef(I,vA),lE.test(I)?I.replace(lE,function(Ie){return QB(Ie.charCodeAt(0))}):I}A.escapeNonAsciiString=rf;var Dd=/[\"\u0000-\u001f\u2028\u2029\u0085]/g,wp=/[\'\u0000-\u001f\u2028\u2029\u0085]/g,Ad=new A.Map(A.getEntries({'"':""","'":"'"}));function Sl(I){var vA=I.toString(16).toUpperCase();return"&#x"+vA+";"}function bg(I){return I.charCodeAt(0)===0?"�":Ad.get(I)||Sl(I.charCodeAt(0))}function vp(I,vA){var Ie=vA===39?wp:Dd;return I.replace(Ie,bg)}A.escapeJsxAttributeString=vp;function Og(I){var vA=I.length;return vA>=2&&I.charCodeAt(0)===I.charCodeAt(vA-1)&&uE(I.charCodeAt(0))?I.substring(1,vA-1):I}A.stripQuotes=Og;function uE(I){return I===39||I===34||I===96}function Fl(I){var vA=I.charCodeAt(0);return vA>=97&&vA<=122||A.stringContains(I,"-")||A.stringContains(I,":")}A.isIntrinsicJsxName=Fl;var $l=[""," "];function ed(I){for(var vA=$l[1],Ie=$l.length;Ie<=I;Ie++)$l.push($l[Ie-1]+vA);return $l[I]}A.getIndentString=ed;function ug(){return $l[1].length}A.getIndentSize=ug;function gg(){return A.stringContains(A.version,"-dev")||A.stringContains(A.version,"-insiders")}A.isNightly=gg;function yu(I){var vA,Ie,gr,pt,Ci,Ti=!1;function Wi(Ls){var Od=A.computeLineStarts(Ls);Od.length>1?(pt=pt+Od.length-1,Ci=vA.length-Ls.length+A.last(Od),gr=Ci-vA.length===0):gr=!1}function pa(Ls){Ls&&Ls.length&&(gr&&(Ls=ed(Ie)+Ls,gr=!1),vA+=Ls,Wi(Ls))}function Un(Ls){Ls&&(Ti=!1),pa(Ls)}function To(Ls){Ls&&(Ti=!0),pa(Ls)}function ps(){vA="",Ie=0,gr=!0,pt=0,Ci=0,Ti=!1}function Jo(Ls){Ls!==void 0&&(vA+=Ls,Wi(Ls),Ti=!1)}function mn(Ls){Ls&&Ls.length&&Un(Ls)}function qs(Ls){(!gr||Ls)&&(vA+=I,pt++,Ci=vA.length,gr=!0,Ti=!1)}function ia(){return gr?vA.length:vA.length+I.length}return ps(),{write:Un,rawWrite:Jo,writeLiteral:mn,writeLine:qs,increaseIndent:function(){Ie++},decreaseIndent:function(){Ie--},getIndent:function(){return Ie},getTextPos:function(){return vA.length},getLine:function(){return pt},getColumn:function(){return gr?Ie*ug():vA.length-Ci},getText:function(){return vA},isAtStartOfLine:function(){return gr},hasTrailingComment:function(){return Ti},hasTrailingWhitespace:function(){return!!vA.length&&A.isWhiteSpaceLike(vA.charCodeAt(vA.length-1))},clear:ps,reportInaccessibleThisError:A.noop,reportPrivateInBaseOfClassExpression:A.noop,reportInaccessibleUniqueSymbolError:A.noop,trackSymbol:function(){return!1},writeKeyword:Un,writeOperator:Un,writeParameter:Un,writeProperty:Un,writePunctuation:Un,writeSpace:Un,writeStringLiteral:Un,writeSymbol:function(Ls,Od){return Un(Ls)},writeTrailingSemicolon:Un,writeComment:To,getTextPosWithWriteLine:ia}}A.createTextWriter=yu;function vl(I){var vA=!1;function Ie(){vA&&(I.writeTrailingSemicolon(";"),vA=!1)}return pi(pi({},I),{writeTrailingSemicolon:function(){vA=!0},writeLiteral:function(gr){Ie(),I.writeLiteral(gr)},writeStringLiteral:function(gr){Ie(),I.writeStringLiteral(gr)},writeSymbol:function(gr,pt){Ie(),I.writeSymbol(gr,pt)},writePunctuation:function(gr){Ie(),I.writePunctuation(gr)},writeKeyword:function(gr){Ie(),I.writeKeyword(gr)},writeOperator:function(gr){Ie(),I.writeOperator(gr)},writeParameter:function(gr){Ie(),I.writeParameter(gr)},writeSpace:function(gr){Ie(),I.writeSpace(gr)},writeProperty:function(gr){Ie(),I.writeProperty(gr)},writeComment:function(gr){Ie(),I.writeComment(gr)},writeLine:function(){Ie(),I.writeLine()},increaseIndent:function(){Ie(),I.increaseIndent()},decreaseIndent:function(){Ie(),I.decreaseIndent()}})}A.getTrailingSemicolonDeferringWriter=vl;function ph(I){return I.useCaseSensitiveFileNames?I.useCaseSensitiveFileNames():!1}A.hostUsesCaseSensitiveFileNames=ph;function mB(I){return A.createGetCanonicalFileName(ph(I))}A.hostGetCanonicalFileName=mB;function tf(I,vA,Ie){return vA.moduleName||Ic(I,vA.fileName,Ie&&Ie.fileName)}A.getResolvedExternalModuleName=tf;function DB(I,vA){return I.getCanonicalFileName(A.getNormalizedAbsolutePath(vA,I.getCurrentDirectory()))}function Lo(I,vA,Ie){var gr=vA.getExternalModuleFileFromDeclaration(Ie);if(!(!gr||gr.isDeclarationFile)){var pt=ec(Ie);if(!(pt&&A.isStringLiteralLike(pt)&&!A.pathIsRelative(pt.text)&&DB(I,gr.path).indexOf(DB(I,A.ensureTrailingDirectorySeparator(I.getCommonSourceDirectory())))===-1))return tf(I,gr)}}A.getExternalModuleNameFromDeclaration=Lo;function Ic(I,vA,Ie){var gr=function(pa){return I.getCanonicalFileName(pa)},pt=A.toPath(Ie?A.getDirectoryPath(Ie):I.getCommonSourceDirectory(),I.getCurrentDirectory(),gr),Ci=A.getNormalizedAbsolutePath(vA,I.getCurrentDirectory()),Ti=A.getRelativePathToDirectoryOrUrl(pt,Ci,pt,gr,!1),Wi=HB(Ti);return Ie?A.ensurePathIsNonModuleName(Wi):Wi}A.getExternalModuleNameFromPath=Ic;function Tf(I,vA,Ie){var gr=vA.getCompilerOptions(),pt;return gr.outDir?pt=HB(Pc(I,vA,gr.outDir)):pt=HB(I),pt+Ie}A.getOwnEmitOutputFilePath=Tf;function nf(I,vA){return Fu(I,vA.getCompilerOptions(),vA.getCurrentDirectory(),vA.getCommonSourceDirectory(),function(Ie){return vA.getCanonicalFileName(Ie)})}A.getDeclarationEmitOutputFilePath=nf;function Fu(I,vA,Ie,gr,pt){var Ci=vA.declarationDir||vA.outDir,Ti=Ci?_B(I,Ci,Ie,gr,pt):I,Wi=Ud(Ti);return HB(Ti)+Wi}A.getDeclarationEmitOutputFilePathWorker=Fu;function Ud(I){return A.fileExtensionIsOneOf(I,[".mjs",".mts"])?".d.mts":A.fileExtensionIsOneOf(I,[".cjs",".cts"])?".d.cts":A.fileExtensionIsOneOf(I,[".json"])?".json.d.ts":".d.ts"}A.getDeclarationEmitExtensionForPath=Ud;function af(I){return A.fileExtensionIsOneOf(I,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:A.fileExtensionIsOneOf(I,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:A.fileExtensionIsOneOf(I,[".json.d.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}A.getPossibleOriginalInputExtensionForExtension=af;function ds(I){return I.outFile||I.out}A.outFile=ds;function oi(I,vA){var Ie,gr;if(I.paths)return(Ie=I.baseUrl)!==null&&Ie!==void 0?Ie:A.Debug.checkDefined(I.pathsBasePath||((gr=vA.getCurrentDirectory)===null||gr===void 0?void 0:gr.call(vA)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}A.getPathsBasePath=oi;function ss(I,vA,Ie){var gr=I.getCompilerOptions();if(ds(gr)){var pt=gl(gr),Ci=gr.emitDeclarationOnly||pt===A.ModuleKind.AMD||pt===A.ModuleKind.System;return A.filter(I.getSourceFiles(),function(Wi){return(Ci||!A.isExternalModule(Wi))&&Rn(Wi,I,Ie)})}else{var Ti=vA===void 0?I.getSourceFiles():[vA];return A.filter(Ti,function(Wi){return Rn(Wi,I,Ie)})}}A.getSourceFilesToEmit=ss;function Rn(I,vA,Ie){var gr=vA.getCompilerOptions();return!(gr.noEmitForJsFiles&&Ft(I))&&!I.isDeclarationFile&&!vA.isSourceFileFromExternalLibrary(I)&&(Ie||!(HA(I)&&vA.getResolvedProjectReferenceToRedirect(I.fileName))&&!vA.isSourceOfProjectReferenceRedirect(I.fileName))}A.sourceFileMayBeEmitted=Rn;function Pc(I,vA,Ie){return _B(I,Ie,vA.getCurrentDirectory(),vA.getCommonSourceDirectory(),function(gr){return vA.getCanonicalFileName(gr)})}A.getSourceFilePathInNewDir=Pc;function _B(I,vA,Ie,gr,pt){var Ci=A.getNormalizedAbsolutePath(I,Ie),Ti=pt(Ci).indexOf(pt(gr))===0;return Ci=Ti?Ci.substring(gr.length):Ci,A.combinePaths(vA,Ci)}A.getSourceFilePathInNewDirWorker=_B;function Rl(I,vA,Ie,gr,pt,Ci,Ti){I.writeFile(Ie,gr,pt,function(Wi){vA.add(li(A.Diagnostics.Could_not_write_file_0_Colon_1,Ie,Wi))},Ci,Ti)}A.writeFile=Rl;function fi(I,vA,Ie){if(I.length>A.getRootLength(I)&&!Ie(I)){var gr=A.getDirectoryPath(I);fi(gr,vA,Ie),vA(I)}}function Ru(I,vA,Ie,gr,pt,Ci){try{gr(I,vA,Ie)}catch{fi(A.getDirectoryPath(A.normalizePath(I)),pt,Ci),gr(I,vA,Ie)}}A.writeFileEnsuringDirectories=Ru;function Tl(I,vA){var Ie=A.getLineStarts(I);return A.computeLineOfPosition(Ie,vA)}A.getLineOfLocalPosition=Tl;function cs(I,vA){return A.computeLineOfPosition(I,vA)}A.getLineOfLocalPositionFromLineMap=cs;function Nl(I){return A.find(I.members,function(vA){return A.isConstructorDeclaration(vA)&&BA(vA.body)})}A.getFirstConstructorWithBody=Nl;function du(I){if(I&&I.parameters.length>0){var vA=I.parameters.length===2&&_d(I.parameters[0]);return I.parameters[vA?1:0]}}A.getSetAccessorValueParameter=du;function yp(I){var vA=du(I);return vA&&vA.type}A.getSetAccessorTypeAnnotationNode=yp;function Ss(I){if(I.parameters.length&&!A.isJSDocSignature(I)){var vA=I.parameters[0];if(_d(vA))return vA}}A.getThisParameter=Ss;function _d(I){return Ld(I.name)}A.parameterIsThisKeyword=_d;function Ld(I){return!!I&&I.kind===79&&rd(I)}A.isThisIdentifier=Ld;function of(I){if(!Ld(I))return!1;for(;A.isQualifiedName(I.parent)&&I.parent.left===I;)I=I.parent;return I.parent.kind===183}A.isThisInTypeQuery=of;function rd(I){return I.originalKeywordKind===108}A.identifierIsThisKeyword=rd;function hc(I,vA){var Ie,gr,pt,Ci;return Tr(vA)?(Ie=vA,vA.kind===174?pt=vA:vA.kind===175?Ci=vA:A.Debug.fail("Accessor has wrong kind")):A.forEach(I,function(Ti){if(A.isAccessor(Ti)&&bp(Ti)===bp(vA)){var Wi=Tn(Ti.name),pa=Tn(vA.name);Wi===pa&&(Ie?gr||(gr=Ti):Ie=Ti,Ti.kind===174&&!pt&&(pt=Ti),Ti.kind===175&&!Ci&&(Ci=Ti))}}),{firstAccessor:Ie,secondAccessor:gr,getAccessor:pt,setAccessor:Ci}}A.getAllAccessorDeclarations=hc;function wd(I){if(!(!Tt(I)&&A.isFunctionDeclaration(I))){var vA=I.type;return vA||!Tt(I)?vA:A.isJSDocPropertyLikeTag(I)?I.typeExpression&&I.typeExpression.type:A.getJSDocType(I)}}A.getEffectiveTypeAnnotationNode=wd;function gE(I){return I.type}A.getTypeAnnotationNode=gE;function Cp(I){return A.isJSDocSignature(I)?I.type&&I.type.typeExpression&&I.type.typeExpression.type:I.type||(Tt(I)?A.getJSDocReturnType(I):void 0)}A.getEffectiveReturnTypeNode=Cp;function jd(I){return A.flatMap(A.getJSDocTags(I),function(vA){return wB(vA)?vA.typeParameters:void 0})}A.getJSDocTypeParameterDeclarations=jd;function wB(I){return A.isJSDocTemplateTag(I)&&!(I.parent.kind===323&&I.parent.tags.some(es))}function _c(I){var vA=du(I);return vA&&wd(vA)}A.getEffectiveSetAccessorTypeAnnotationNode=_c;function Wd(I,vA,Ie,gr){pu(I,vA,Ie.pos,gr)}A.emitNewLineBeforeLeadingComments=Wd;function pu(I,vA,Ie,gr){gr&&gr.length&&Ie!==gr[0].pos&&cs(I,Ie)!==cs(I,gr[0].pos)&&vA.writeLine()}A.emitNewLineBeforeLeadingCommentsOfPosition=pu;function sf(I,vA,Ie,gr){Ie!==gr&&cs(I,Ie)!==cs(I,gr)&&vA.writeLine()}A.emitNewLineBeforeLeadingCommentOfPosition=sf;function Ip(I,vA,Ie,gr,pt,Ci,Ti,Wi){if(gr&&gr.length>0){pt&&Ie.writeSpace(" ");for(var pa=!1,Un=0,To=gr;Un=qs+2)break}Un.push(mn),To=mn}if(Un.length){var qs=cs(vA,A.last(Un).end),Ls=cs(vA,A.skipTrivia(I,pt.pos));Ls>=qs+2&&(Wd(vA,Ie,pt,Wi),Ip(I,vA,Ie,Un,!1,!0,Ci,gr),pa={nodePos:pt.pos,detachedCommentEndPos:A.last(Un).end})}}return pa;function Od(ep){return gA(I,ep.pos)}}A.emitDetachedComments=Jd;function Nf(I,vA,Ie,gr,pt,Ci){if(I.charCodeAt(gr+1)===42)for(var Ti=A.computeLineAndCharacterOfPosition(vA,gr),Wi=vA.length,pa=void 0,Un=gr,To=Ti.line;Un0){var qs=mn%ug(),ia=ed((mn-qs)/ug());for(Ie.rawWrite(ia);qs;)Ie.rawWrite(" "),qs--}else Ie.rawWrite("")}qd(I,pt,Ie,Ci,Un,ps),Un=ps}else Ie.writeComment(I.substring(gr,pt))}A.writeCommentRange=Nf;function qd(I,vA,Ie,gr,pt,Ci){var Ti=Math.min(vA,Ci-1),Wi=A.trimString(I.substring(pt,Ti));Wi?(Ie.writeComment(Wi),Ti!==vA&&Ie.writeLine()):Ie.rawWrite(gr)}function Mg(I,vA,Ie){for(var gr=0;vA=0&&I.kind<=162?0:(I.modifierFlagsCache&536870912||(I.modifierFlagsCache=so(I)|536870912),vA&&!(I.modifierFlagsCache&4096)&&(Ie||Tt(I))&&I.parent&&(I.modifierFlagsCache|=Au(I)|4096),I.modifierFlagsCache&-536875009)}function Vu(I){return dg(I,!0)}A.getEffectiveModifierFlags=Vu;function td(I){return dg(I,!0,!0)}A.getEffectiveModifierFlagsAlwaysIncludeJSDoc=td;function Mp(I){return dg(I,!1)}A.getSyntacticModifierFlags=Mp;function Au(I){var vA=0;return I.parent&&!A.isParameter(I)&&(Tt(I)&&(A.getJSDocPublicTagNoCache(I)&&(vA|=4),A.getJSDocPrivateTagNoCache(I)&&(vA|=8),A.getJSDocProtectedTagNoCache(I)&&(vA|=16),A.getJSDocReadonlyTagNoCache(I)&&(vA|=64),A.getJSDocOverrideTagNoCache(I)&&(vA|=16384)),A.getJSDocDeprecatedTagNoCache(I)&&(vA|=8192)),vA}function zu(I){return so(I)|Au(I)}A.getEffectiveModifierFlagsNoCache=zu;function so(I){var vA=A.canHaveModifiers(I)?Gl(I.modifiers):0;return(I.flags&4||I.kind===79&&I.isInJSDocNamespace)&&(vA|=1),vA}A.getSyntacticModifierFlagsNoCache=so;function Gl(I){var vA=0;if(I)for(var Ie=0,gr=I;Ie=63&&I<=78}A.isAssignmentOperator=yd;function yB(I){var vA=Yl(I);return vA&&!vA.isImplements?vA.class:void 0}A.tryGetClassExtendingExpressionWithTypeArguments=yB;function Yl(I){return A.isExpressionWithTypeArguments(I)&&A.isHeritageClause(I.parent)&&A.isClassLike(I.parent.parent)?{class:I.parent.parent,isImplements:I.parent.token===117}:void 0}A.tryGetClassImplementingOrExtendingExpressionWithTypeArguments=Yl;function Vo(I,vA){return A.isBinaryExpression(I)&&(vA?I.operatorToken.kind===63:yd(I.operatorToken.kind))&&A.isLeftHandSideExpression(I.left)}A.isAssignmentExpression=Vo;function Eh(I){return Vo(I.parent)&&I.parent.left===I}A.isLeftHandSideOfAssignment=Eh;function pg(I){if(Vo(I,!0)){var vA=I.left.kind;return vA===207||vA===206}return!1}A.isDestructuringAssignment=pg;function Cu(I){return yB(I)!==void 0}A.isExpressionWithTypeArgumentsInClassExtendsClause=Cu;function Tu(I){return I.kind===79||fE(I)}A.isEntityNameExpression=Tu;function EE(I){switch(I.kind){case 79:return I;case 163:do I=I.left;while(I.kind!==79);return I;case 208:do I=I.expression;while(I.kind!==79);return I}}A.getFirstIdentifier=EE;function CB(I){return I.kind===79||I.kind===108||I.kind===106||I.kind===233||I.kind===208&&CB(I.expression)||I.kind===214&&CB(I.expression)}A.isDottedName=CB;function fE(I){return A.isPropertyAccessExpression(I)&&A.isIdentifier(I.name)&&Tu(I.expression)}A.isPropertyAccessEntityNameExpression=fE;function Vd(I){if(A.isPropertyAccessExpression(I)){var vA=Vd(I.expression);if(vA!==void 0)return vA+"."+nr(I.name)}else if(A.isElementAccessExpression(I)){var vA=Vd(I.expression);if(vA!==void 0&&A.isPropertyName(I.argumentExpression))return vA+"."+Tn(I.argumentExpression)}else if(A.isIdentifier(I))return A.unescapeLeadingUnderscores(I.escapedText)}A.tryGetPropertyAccessOrIdentifierToString=Vd;function Ku(I){return Fn(I)&&Ba(I)==="prototype"}A.isPrototypeAccess=Ku;function fh(I){return I.parent.kind===163&&I.parent.right===I||I.parent.kind===208&&I.parent.name===I}A.isRightSideOfQualifiedNameOrPropertyAccess=fh;function zd(I){return A.isPropertyAccessExpression(I.parent)&&I.parent.name===I||A.isElementAccessExpression(I.parent)&&I.parent.argumentExpression===I}A.isRightSideOfAccessExpression=zd;function kg(I){return A.isQualifiedName(I.parent)&&I.parent.right===I||A.isPropertyAccessExpression(I.parent)&&I.parent.name===I||A.isJSDocMemberName(I.parent)&&I.parent.right===I}A.isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName=kg;function BE(I){return I.kind===207&&I.properties.length===0}A.isEmptyObjectLiteral=BE;function Nu(I){return I.kind===206&&I.elements.length===0}A.isEmptyArrayLiteral=Nu;function Gc(I){if(!(!IB(I)||!I.declarations))for(var vA=0,Ie=I.declarations;vA0&&lc(I.declarations[0],1024)}function WQ(I){return A.find(c7,function(vA){return A.fileExtensionIs(I,vA)})}A.tryExtractTSExtension=WQ;function Nn(I){for(var vA=[],Ie=I.length,gr=0;gr>6|192),vA.push(pt&63|128)):pt<65536?(vA.push(pt>>12|224),vA.push(pt>>6&63|128),vA.push(pt&63|128)):pt<131072?(vA.push(pt>>18|240),vA.push(pt>>12&63|128),vA.push(pt>>6&63|128),vA.push(pt&63|128)):A.Debug.assert(!1,"Unexpected code point")}return vA}var ll="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function si(I){for(var vA="",Ie=Nn(I),gr=0,pt=Ie.length,Ci,Ti,Wi,pa;gr>2,Ti=(Ie[gr]&3)<<4|Ie[gr+1]>>4,Wi=(Ie[gr+1]&15)<<2|Ie[gr+2]>>6,pa=Ie[gr+2]&63,gr+1>=pt?Wi=pa=64:gr+2>=pt&&(pa=64),vA+=ll.charAt(Ci)+ll.charAt(Ti)+ll.charAt(Wi)+ll.charAt(pa),gr+=3;return vA}A.convertToBase64=si;function Cd(I){for(var vA="",Ie=0,gr=I.length;Ie>4&3,To=(Ti&15)<<4|Wi>>2&15,ps=(Wi&3)<<6|pa&63;To===0&&Wi!==0?gr.push(Un):ps===0&&pa!==0?gr.push(Un,To):gr.push(Un,To,ps),pt+=4}return Cd(gr)}A.base64decode=xg;function fu(I,vA){var Ie=A.isString(vA)?vA:vA.readFile(I);if(Ie){var gr=A.parseConfigFileTextToJson(I,Ie);return gr.error?void 0:gr.config}}A.readJsonOrUndefined=fu;function Sp(I,vA){return fu(I,vA)||{}}A.readJson=Sp;function Bh(I,vA){return!vA.directoryExists||vA.directoryExists(I)}A.directoryProbablyExists=Bh;var ul=`\r -`,cf=` -`;function Kd(I,vA){switch(I.newLine){case 0:return ul;case 1:return cf}return vA?vA():A.sys?A.sys.newLine:ul}A.getNewLineCharacter=Kd;function lf(I,vA){return vA===void 0&&(vA=I),A.Debug.assert(vA>=I||vA===-1),{pos:I,end:vA}}A.createRange=lf;function Gf(I,vA){return lf(I.pos,vA)}A.moveRangeEnd=Gf;function Fp(I,vA){return lf(vA,I.end)}A.moveRangePos=Fp;function rA(I){var vA=A.canHaveModifiers(I)?A.findLast(I.modifiers,A.isDecorator):void 0;return vA&&!gm(vA.end)?Fp(I,vA.end):I}A.moveRangePastDecorators=rA;function ge(I){var vA=A.canHaveModifiers(I)?A.lastOrUndefined(I.modifiers):void 0;return vA&&!gm(vA.end)?Fp(I,vA.end):rA(I)}A.moveRangePastModifiers=ge;function kr(I){return I.pos===I.end}A.isCollapsedRange=kr;function ft(I,vA){return lf(I,I+A.tokenToString(vA).length)}A.createTokenRange=ft;function ki(I,vA){return Bn(I,I,vA)}A.rangeIsOnSingleLine=ki;function sn(I,vA,Ie){return Ha($n(I,Ie,!1),$n(vA,Ie,!1),Ie)}A.rangeStartPositionsAreOnSameLine=sn;function _n(I,vA,Ie){return Ha(I.end,vA.end,Ie)}A.rangeEndPositionsAreOnSameLine=_n;function Bn(I,vA,Ie){return Ha($n(I,Ie,!1),vA.end,Ie)}A.rangeStartIsOnSameLineAsRangeEnd=Bn;function wa(I,vA,Ie){return Ha(I.end,$n(vA,Ie,!1),Ie)}A.rangeEndIsOnSameLineAsRangeStart=wa;function Wo(I,vA,Ie,gr){var pt=$n(vA,Ie,gr);return A.getLinesBetweenPositions(Ie,I.end,pt)}A.getLinesBetweenRangeEndAndRangeStart=Wo;function ya(I,vA,Ie){return A.getLinesBetweenPositions(Ie,I.end,vA.end)}A.getLinesBetweenRangeEndPositions=ya;function Ul(I,vA){return!Ha(I.pos,I.end,vA)}A.isNodeArrayMultiLine=Ul;function Ha(I,vA,Ie){return A.getLinesBetweenPositions(Ie,I,vA)===0}A.positionsAreOnSameLine=Ha;function $n(I,vA,Ie){return gm(I.pos)?-1:A.skipTrivia(vA.text,I.pos,!1,Ie)}A.getStartPositionOfRange=$n;function ru(I,vA,Ie,gr){var pt=A.skipTrivia(Ie.text,I,!1,gr),Ci=Xd(pt,vA,Ie);return A.getLinesBetweenPositions(Ie,Ci??vA,pt)}A.getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter=ru;function Xc(I,vA,Ie,gr){var pt=A.skipTrivia(Ie.text,I,!1,gr);return A.getLinesBetweenPositions(Ie,I,Math.min(vA,pt))}A.getLinesBetweenPositionAndNextNonWhitespaceCharacter=Xc;function Xd(I,vA,Ie){for(vA===void 0&&(vA=0);I-- >vA;)if(!A.isWhiteSpaceLike(Ie.text.charCodeAt(I)))return I}function Pu(I){var vA=A.getParseTreeNode(I);if(vA)switch(vA.parent.kind){case 263:case 264:return vA===vA.parent.name}return!1}A.isDeclarationNameOfEnumOrNamespace=Pu;function hE(I){return A.filter(I.declarations,uf)}A.getInitializedVariables=hE;function uf(I){return I.initializer!==void 0}function Rp(I){return I.watch&&A.hasProperty(I,"watch")}A.isWatchSet=Rp;function za(I){I.close()}A.closeFileWatcher=za;function QE(I){return I.flags&33554432?I.checkFlags:0}A.getCheckFlags=QE;function OB(I,vA){if(vA===void 0&&(vA=!1),I.valueDeclaration){var Ie=vA&&I.declarations&&A.find(I.declarations,A.isSetAccessorDeclaration)||I.flags&32768&&A.find(I.declarations,A.isGetAccessorDeclaration)||I.valueDeclaration,gr=A.getCombinedModifierFlags(Ie);return I.parent&&I.parent.flags&32?gr:gr&-29}if(QE(I)&6){var pt=I.checkFlags,Ci=pt&1024?8:pt&256?4:16,Ti=pt&2048?32:0;return Ci|Ti}return I.flags&4194304?36:0}A.getDeclarationModifierFlagsFromSymbol=OB;function mE(I,vA){return I.flags&2097152?vA.getAliasedSymbol(I):I}A.skipAlias=mE;function MB(I){return I.exportSymbol?I.exportSymbol.flags|I.flags:I.flags}A.getCombinedLocalAndExportSymbolFlags=MB;function JQ(I){return Id(I)===1}A.isWriteOnlyAccess=JQ;function Yf(I){return Id(I)!==0}A.isWriteAccess=Yf;var tc;(function(I){I[I.Read=0]="Read",I[I.Write=1]="Write",I[I.ReadWrite=2]="ReadWrite"})(tc||(tc={}));function Id(I){var vA=I.parent;if(!vA)return 0;switch(vA.kind){case 214:return Id(vA);case 222:case 221:var Ie=vA.operator;return Ie===45||Ie===46?Wi():0;case 223:var gr=vA,pt=gr.left,Ci=gr.operatorToken;return pt===I&&yd(Ci.kind)?Ci.kind===63?1:Wi():0;case 208:return vA.name!==I?0:Id(vA);case 299:{var Ti=Id(vA.parent);return I===vA.name?im(Ti):Ti}case 300:return I===vA.objectAssignmentInitializer?0:Id(vA.parent);case 206:return Id(vA);default:return 0}function Wi(){return vA.parent&&et(vA.parent).kind===241?1:2}}function im(I){switch(I){case 0:return 1;case 1:return 0;case 2:return 2;default:return A.Debug.assertNever(I)}}function DE(I,vA){if(!I||!vA||Object.keys(I).length!==Object.keys(vA).length)return!1;for(var Ie in I)if(typeof I[Ie]=="object"){if(!DE(I[Ie],vA[Ie]))return!1}else if(typeof I[Ie]!="function"&&I[Ie]!==vA[Ie])return!1;return!0}A.compareDataObjects=DE;function rQ(I,vA){I.forEach(vA),I.clear()}A.clearMap=rQ;function qQ(I,vA,Ie){var gr=Ie.onDeleteValue,pt=Ie.onExistingValue;I.forEach(function(Ci,Ti){var Wi=vA.get(Ti);Wi===void 0?(I.delete(Ti),gr(Ci,Ti)):pt&&pt(Ci,Wi,Ti)})}A.mutateMapSkippingNewValues=qQ;function H1(I,vA,Ie){qQ(I,vA,Ie);var gr=Ie.createNewValue;vA.forEach(function(pt,Ci){I.has(Ci)||I.set(Ci,gr(Ci,pt))})}A.mutateMap=H1;function VQ(I){if(I.flags&32){var vA=kB(I);return!!vA&&lc(vA,256)}return!1}A.isAbstractConstructorSymbol=VQ;function kB(I){var vA;return(vA=I.declarations)===null||vA===void 0?void 0:vA.find(A.isClassLike)}A.getClassLikeDeclarationOfSymbol=kB;function Hg(I){return I.flags&3899393?I.objectFlags:0}A.getObjectFlags=Hg;function Gu(I,vA){return vA.getSignaturesOfType(I,0).length!==0||vA.getSignaturesOfType(I,1).length!==0}A.typeHasCallOrConstructSignatures=Gu;function ZA(I,vA){return!!A.forEachAncestorDirectory(I,function(Ie){return vA(Ie)?!0:void 0})}A.forSomeAncestorDirectory=ZA;function Se(I){return!!I&&!!I.declarations&&!!I.declarations[0]&&A.isNamespaceExportDeclaration(I.declarations[0])}A.isUMDExportSymbol=Se;function Er(I){var vA=I.moduleSpecifier;return A.isStringLiteral(vA)?vA.text:$A(vA)}A.showModuleSpecifier=Er;function Rr(I){var vA;return A.forEachChild(I,function(Ie){BA(Ie)&&(vA=Ie)},function(Ie){for(var gr=Ie.length-1;gr>=0;gr--)if(BA(Ie[gr])){vA=Ie[gr];break}}),vA}A.getLastChild=Rr;function ct(I,vA,Ie){return Ie===void 0&&(Ie=!0),I.has(vA)?!1:(I.set(vA,Ie),!0)}A.addToSeen=ct;function Mt(I){return A.isClassLike(I)||A.isInterfaceDeclaration(I)||A.isTypeLiteralNode(I)}A.isObjectTypeDeclaration=Mt;function Ni(I){return I>=179&&I<=202||I===131||I===157||I===148||I===160||I===149||I===134||I===152||I===153||I===114||I===155||I===144||I===230||I===315||I===316||I===317||I===318||I===319||I===320||I===321}A.isTypeNodeKind=Ni;function $i(I){return I.kind===208||I.kind===209}A.isAccessExpression=$i;function tn(I){return I.kind===208?I.name:(A.Debug.assert(I.kind===209),I.argumentExpression)}A.getNameOfAccessExpression=tn;function wn(I){switch(I.kind){case"text":case"internal":return!0;default:return!1}}A.isBundleFileTextLike=wn;function ka(I){return I.kind===272||I.kind===276}A.isNamedImportsOrExports=ka;function Io(I){for(;$i(I);)I=I.expression;return I}A.getLeftmostAccessExpression=Io;function Eo(I,vA){if($i(I.parent)&&zd(I))return Ie(I.parent);function Ie(gr){if(gr.kind===208){var pt=vA(gr.name);if(pt!==void 0)return pt}else if(gr.kind===209)if(A.isIdentifier(gr.argumentExpression)||A.isStringLiteralLike(gr.argumentExpression)){var pt=vA(gr.argumentExpression);if(pt!==void 0)return pt}else return;if($i(gr.expression))return Ie(gr.expression);if(A.isIdentifier(gr.expression))return vA(gr.expression)}}A.forEachNameInAccessChainWalkingLeft=Eo;function Go(I,vA){for(;;){switch(I.kind){case 222:I=I.operand;continue;case 223:I=I.left;continue;case 224:I=I.condition;continue;case 212:I=I.tag;continue;case 210:if(vA)return I;case 231:case 209:case 208:case 232:case 353:case 235:I=I.expression;continue}return I}}A.getLeftmostExpression=Go;function ic(I,vA){this.flags=I,this.escapedName=vA,this.declarations=void 0,this.valueDeclaration=void 0,this.id=void 0,this.mergeId=void 0,this.parent=void 0}function Zc(I,vA){this.flags=vA,(A.Debug.isDebugging||A.tracing)&&(this.checker=I)}function ws(I,vA){this.flags=vA,A.Debug.isDebugging&&(this.checker=I)}function tu(I,vA,Ie){this.pos=vA,this.end=Ie,this.kind=I,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0}function Ll(I,vA,Ie){this.pos=vA,this.end=Ie,this.kind=I,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0}function bc(I,vA,Ie){this.pos=vA,this.end=Ie,this.kind=I,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.flowNode=void 0}function Cl(I,vA,Ie){this.fileName=I,this.text=vA,this.skipTrivia=Ie||function(gr){return gr}}A.objectAllocator={getNodeConstructor:function(){return tu},getTokenConstructor:function(){return Ll},getIdentifierConstructor:function(){return bc},getPrivateIdentifierConstructor:function(){return tu},getSourceFileConstructor:function(){return tu},getSymbolConstructor:function(){return ic},getTypeConstructor:function(){return Zc},getSignatureConstructor:function(){return ws},getSourceMapSourceConstructor:function(){return Cl}};function Xu(I){Object.assign(A.objectAllocator,I)}A.setObjectAllocator=Xu;function _E(I,vA,Ie){return Ie===void 0&&(Ie=0),I.replace(/{(\d+)}/g,function(gr,pt){return""+A.Debug.checkDefined(vA[+pt+Ie])})}A.formatStringFromArgs=_E;var Fs;function L(I){Fs=I}A.setLocalizedDiagnosticMessages=L;function hA(I){!Fs&&I&&(Fs=I())}A.maybeSetLocalizedDiagnosticMessages=hA;function NA(I){return Fs&&Fs[I.key]||I.message}A.getLocaleSpecificMessage=NA;function he(I,vA,Ie,gr){ke(void 0,vA,Ie);var pt=NA(gr);return arguments.length>4&&(pt=_E(pt,arguments,4)),{file:void 0,start:vA,length:Ie,messageText:pt,category:gr.category,code:gr.code,reportsUnnecessary:gr.reportsUnnecessary,fileName:I}}A.createDetachedDiagnostic=he;function Qr(I){return I.file===void 0&&I.start!==void 0&&I.length!==void 0&&typeof I.fileName=="string"}function Ht(I,vA){var Ie=vA.fileName||"",gr=vA.text.length;A.Debug.assertEqual(I.fileName,Ie),A.Debug.assertLessThanOrEqual(I.start,gr),A.Debug.assertLessThanOrEqual(I.start+I.length,gr);var pt={file:vA,start:I.start,length:I.length,messageText:I.messageText,category:I.category,code:I.code,reportsUnnecessary:I.reportsUnnecessary};if(I.relatedInformation){pt.relatedInformation=[];for(var Ci=0,Ti=I.relatedInformation;Ci4&&(pt=_E(pt,arguments,4)),{file:I,start:vA,length:Ie,messageText:pt,category:gr.category,code:gr.code,reportsUnnecessary:gr.reportsUnnecessary,reportsDeprecated:gr.reportsDeprecated}}A.createFileDiagnostic=Ra;function Qc(I,vA){var Ie=NA(vA);return arguments.length>2&&(Ie=_E(Ie,arguments,2)),Ie}A.formatMessage=Qc;function li(I){var vA=NA(I);return arguments.length>1&&(vA=_E(vA,arguments,1)),{file:void 0,start:void 0,length:void 0,messageText:vA,category:I.category,code:I.code,reportsUnnecessary:I.reportsUnnecessary,reportsDeprecated:I.reportsDeprecated}}A.createCompilerDiagnostic=li;function Sg(I,vA){return{file:void 0,start:void 0,length:void 0,code:I.code,category:I.category,messageText:I.next?I:I.messageText,relatedInformation:vA}}A.createCompilerDiagnosticFromMessageChain=Sg;function Zu(I,vA){var Ie=NA(vA);return arguments.length>2&&(Ie=_E(Ie,arguments,2)),{messageText:Ie,category:vA.category,code:vA.code,next:I===void 0||Array.isArray(I)?I:[I]}}A.chainDiagnosticMessages=Zu;function wE(I,vA){for(var Ie=I;Ie.next;)Ie=Ie.next[0];Ie.next=[vA]}A.concatenateDiagnosticMessageChains=wE;function vE(I){return I.file?I.file.path:void 0}function zQ(I,vA){return Uf(I,vA)||nm(I,vA)||0}A.compareDiagnostics=zQ;function Uf(I,vA){return A.compareStringsCaseSensitive(vE(I),vE(vA))||A.compareValues(I.start,vA.start)||A.compareValues(I.length,vA.length)||A.compareValues(I.code,vA.code)||Tp(I.messageText,vA.messageText)||0}A.compareDiagnosticsSkipRelatedInformation=Uf;function nm(I,vA){return!I.relatedInformation&&!vA.relatedInformation?0:I.relatedInformation&&vA.relatedInformation?A.compareValues(I.relatedInformation.length,vA.relatedInformation.length)||A.forEach(I.relatedInformation,function(Ie,gr){var pt=vA.relatedInformation[gr];return zQ(Ie,pt)})||0:I.relatedInformation?-1:1}function Tp(I,vA){if(typeof I=="string"&&typeof vA=="string")return A.compareStringsCaseSensitive(I,vA);if(typeof I=="string")return-1;if(typeof vA=="string")return 1;var Ie=A.compareStringsCaseSensitive(I.messageText,vA.messageText);if(Ie)return Ie;if(!I.next&&!vA.next)return 0;if(!I.next)return-1;if(!vA.next)return 1;for(var gr=Math.min(I.next.length,vA.next.length),pt=0;ptvA.next.length?1:0}function iv(I){return I===4||I===2||I===1||I===6?1:0}A.getLanguageVariant=iv;function am(I){if(I.transformFlags&2)return A.isJsxOpeningLikeElement(I)||A.isJsxFragment(I)?I:A.forEachChild(I,am)}function KQ(I){return I.isDeclarationFile?void 0:am(I)}function om(I){return(I.impliedNodeFormat===A.ModuleKind.ESNext||A.fileExtensionIsOneOf(I.fileName,[".cjs",".cts",".mjs",".mts"]))&&!I.isDeclarationFile?!0:void 0}function S1(I){switch(F1(I)){case A.ModuleDetectionKind.Force:return function(pt){pt.externalModuleIndicator=A.isFileProbablyExternalModule(pt)||!pt.isDeclarationFile||void 0};case A.ModuleDetectionKind.Legacy:return function(pt){pt.externalModuleIndicator=A.isFileProbablyExternalModule(pt)};case A.ModuleDetectionKind.Auto:var vA=[A.isFileProbablyExternalModule];(I.jsx===4||I.jsx===5)&&vA.push(KQ),vA.push(om);var Ie=A.or.apply(void 0,vA),gr=function(pt){return void(pt.externalModuleIndicator=Ie(pt))};return gr}}A.getSetExternalModuleIndicator=S1;function XQ(I){return I.target||I.module===A.ModuleKind.Node16&&9||I.module===A.ModuleKind.NodeNext&&99||0}A.getEmitScriptTarget=XQ;function gl(I){return typeof I.module=="number"?I.module:XQ(I)>=2?A.ModuleKind.ES2015:A.ModuleKind.CommonJS}A.getEmitModuleKind=gl;function nv(I){var vA=I.moduleResolution;if(vA===void 0)switch(gl(I)){case A.ModuleKind.CommonJS:vA=A.ModuleResolutionKind.NodeJs;break;case A.ModuleKind.Node16:vA=A.ModuleResolutionKind.Node16;break;case A.ModuleKind.NodeNext:vA=A.ModuleResolutionKind.NodeNext;break;default:vA=A.ModuleResolutionKind.Classic;break}return vA}A.getEmitModuleResolutionKind=nv;function F1(I){return I.moduleDetection||(gl(I)===A.ModuleKind.Node16||gl(I)===A.ModuleKind.NodeNext?A.ModuleDetectionKind.Force:A.ModuleDetectionKind.Auto)}A.getEmitModuleDetectionKind=F1;function dc(I){switch(gl(I)){case A.ModuleKind.CommonJS:case A.ModuleKind.AMD:case A.ModuleKind.ES2015:case A.ModuleKind.ES2020:case A.ModuleKind.ES2022:case A.ModuleKind.ESNext:case A.ModuleKind.Node16:case A.ModuleKind.NodeNext:return!0;default:return!1}}A.hasJsonModuleEmitEnabled=dc;function R1(I){return I.allowUnreachableCode===!1}A.unreachableCodeIsError=R1;function av(I){return I.allowUnusedLabels===!1}A.unusedLabelIsError=av;function ov(I){return!!(sm(I)&&I.declarationMap)}A.getAreDeclarationMapsEnabled=ov;function hh(I){if(I.esModuleInterop!==void 0)return I.esModuleInterop;switch(gl(I)){case A.ModuleKind.Node16:case A.ModuleKind.NodeNext:return!0}}A.getESModuleInterop=hh;function sv(I){var vA=gl(I);return I.allowSyntheticDefaultImports!==void 0?I.allowSyntheticDefaultImports:hh(I)||vA===A.ModuleKind.System}A.getAllowSyntheticDefaultImports=sv;function sm(I){return!!(I.declaration||I.composite)}A.getEmitDeclarations=sm;function Yu(I){return!!(I.preserveConstEnums||I.isolatedModules)}A.shouldPreserveConstEnums=Yu;function QD(I){return!!(I.incremental||I.composite)}A.isIncrementalCompilation=QD;function Qh(I,vA){return I[vA]===void 0?!!I.strict:!!I[vA]}A.getStrictOptionValue=Qh;function T1(I){return I.allowJs===void 0?!!I.checkJs:I.allowJs}A.getAllowJSCompilerOption=T1;function gf(I){return I.useDefineForClassFields===void 0?XQ(I)>=9:I.useDefineForClassFields}A.getUseDefineForClassFields=gf;function cm(I,vA){return m(vA,I,A.semanticDiagnosticsOptionDeclarations)}A.compilerOptionsAffectSemanticDiagnostics=cm;function Lf(I,vA){return m(vA,I,A.affectsEmitOptionDeclarations)}A.compilerOptionsAffectEmit=Lf;function ii(I,vA){return m(vA,I,A.affectsDeclarationPathOptionDeclarations)}A.compilerOptionsAffectDeclarationPath=ii;function ln(I,vA){return vA.strictFlag?Qh(I,vA.name):I[vA.name]}A.getCompilerOptionValue=ln;function fn(I){var vA=I.jsx;return vA===2||vA===4||vA===5}A.getJSXTransformEnabled=fn;function Hi(I,vA){var Ie=vA?.pragmas.get("jsximportsource"),gr=A.isArray(Ie)?Ie[Ie.length-1]:Ie;return I.jsx===4||I.jsx===5||I.jsxImportSource||gr?gr?.arguments.factory||I.jsxImportSource||"react":void 0}A.getJSXImplicitImportBase=Hi;function ua(I,vA){return I?"".concat(I,"/").concat(vA.jsx===5?"jsx-dev-runtime":"jsx-runtime"):void 0}A.getJSXRuntimeImport=ua;function Xa(I){for(var vA=!1,Ie=0;Ie=2&&Ci.length>=2&&!Wl(pt[pt.length-2],gr)&&!Wl(Ci[Ci.length-2],gr)&&gr(pt[pt.length-1])===gr(Ci[Ci.length-1]);)pt.pop(),Ci.pop(),Ti=!0;return Ti?[A.getPathFromPathComponents(pt),A.getPathFromPathComponents(Ci)]:void 0}function Wl(I,vA){return I!==void 0&&(vA(I)==="node_modules"||A.startsWith(I,"@"))}function Fg(I){return A.isAnyDirectorySeparator(I.charCodeAt(0))?I.slice(1):void 0}function Iu(I,vA,Ie){var gr=A.tryRemovePrefix(I,vA,Ie);return gr===void 0?void 0:Fg(gr)}A.tryRemoveDirectoryPrefix=Iu;var Zd=/[^\w\s\/]/g;function mh(I){return I.replace(Zd,tQ)}A.regExpEscape=mh;function tQ(I){return"\\"+I}var $u=[42,63];A.commonPackageFolders=["node_modules","bower_components","jspm_packages"];var xB="(?!(".concat(A.commonPackageFolders.join("|"),")(/|$))"),jf={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:"(/".concat(xB,"[^/.][^/]*)*?"),replaceWildcardCharacter:function(I){return lm(I,jf.singleAsteriskRegexFragment)}},ZQ={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/".concat(xB,"[^/.][^/]*)*?"),replaceWildcardCharacter:function(I){return lm(I,ZQ.singleAsteriskRegexFragment)}},iQ={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:function(I){return lm(I,iQ.singleAsteriskRegexFragment)}},z2={files:jf,directories:ZQ,exclude:iQ};function Ag(I,vA,Ie){var gr=cv(I,vA,Ie);if(!(!gr||!gr.length)){var pt=gr.map(function(Ti){return"(".concat(Ti,")")}).join("|"),Ci=Ie==="exclude"?"($|/)":"$";return"^(".concat(pt,")").concat(Ci)}}A.getRegularExpressionForWildcard=Ag;function cv(I,vA,Ie){if(!(I===void 0||I.length===0))return A.flatMap(I,function(gr){return gr&&Np(gr,vA,Ie,z2[Ie])})}A.getRegularExpressionsForWildcards=cv;function lv(I){return!/[.*?]/.test(I)}A.isImplicitGlob=lv;function uv(I,vA,Ie){var gr=I&&Np(I,vA,Ie,z2[Ie]);return gr&&"^(".concat(gr,")").concat(Ie==="exclude"?"($|/)":"$")}A.getPatternFromSpec=uv;function Np(I,vA,Ie,gr){var pt=gr.singleAsteriskRegexFragment,Ci=gr.doubleAsteriskRegexFragment,Ti=gr.replaceWildcardCharacter,Wi="",pa=!1,Un=A.getNormalizedPathComponents(I,vA),To=A.last(Un);if(!(Ie!=="exclude"&&To==="**")){Un[0]=A.removeTrailingDirectorySeparator(Un[0]),lv(To)&&Un.push("**","*");for(var ps=0,Jo=0,mn=Un;Jo0;)Wi+=")?",ps--;return Wi}}function lm(I,vA){return I==="*"?vA:I==="?"?"[^/]":"\\"+I}function iu(I,vA,Ie,gr,pt){I=A.normalizePath(I),pt=A.normalizePath(pt);var Ci=A.combinePaths(pt,I);return{includeFilePatterns:A.map(cv(Ie,Ci,"files"),function(Ti){return"^".concat(Ti,"$")}),includeFilePattern:Ag(Ie,Ci,"files"),includeDirectoryPattern:Ag(Ie,Ci,"directories"),excludePattern:Ag(vA,Ci,"exclude"),basePaths:o7(I,Ie,gr)}}A.getFileMatcherPatterns=iu;function N1(I,vA){return new RegExp(I,vA?"":"i")}A.getRegexFromPattern=N1;function mD(I,vA,Ie,gr,pt,Ci,Ti,Wi,pa){I=A.normalizePath(I),Ci=A.normalizePath(Ci);for(var Un=iu(I,Ie,gr,pt,Ci),To=Un.includeFilePatterns&&Un.includeFilePatterns.map(function(Vs){return N1(Vs,pt)}),ps=Un.includeDirectoryPattern&&N1(Un.includeDirectoryPattern,pt),Jo=Un.excludePattern&&N1(Un.excludePattern,pt),mn=To?To.map(function(){return[]}):[[]],qs=new A.Map,ia=A.createGetCanonicalFileName(pt),Ls=0,Od=Un.basePaths;Ls=0)}A.positionIsSynthesized=gm;function eC(I){return I===".ts"||I===".tsx"||I===".d.ts"||I===".cts"||I===".mts"||I===".d.mts"||I===".d.cts"}A.extensionIsTS=eC;function p7(I){return eC(I)||I===".json"}A.resolutionExtensionIsTSOrJson=p7;function Y1(I){var vA=U1(I);return vA!==void 0?vA:A.Debug.fail("File ".concat(I," has unknown extension."))}A.extensionFromPath=Y1;function fv(I){return U1(I)!==void 0}A.isAnySupportedFileExtension=fv;function U1(I){return A.find(_D,function(vA){return A.fileExtensionIs(I,vA)})}A.tryGetExtensionFromPath=U1;function E7(I,vA){return I.checkJsDirective?I.checkJsDirective.enabled:vA.checkJs}A.isCheckJsEnabledForFile=E7,A.emptyFileSystemEntries={files:A.emptyArray,directories:A.emptyArray};function f7(I,vA){for(var Ie=[],gr=0,pt=I;grgr&&(gr=Ci)}return{min:Ie,max:gr}}A.minAndMax=yE;function Tg(I){return{pos:mA(I),end:I.end}}A.rangeOfNode=Tg;function rC(I,vA){var Ie=vA.pos-1,gr=A.skipTrivia(I.text,vA.end)+1;return{pos:Ie,end:gr}}A.rangeOfTypeParameters=rC;function $Q(I,vA,Ie){return vA.skipLibCheck&&I.isDeclarationFile||vA.skipDefaultLibCheck&&I.hasNoDefaultLib||Ie.isSourceOfProjectReferenceRedirect(I.fileName)}A.skipTypeChecking=$Q;function SB(I,vA){return I===vA||typeof I=="object"&&I!==null&&typeof vA=="object"&&vA!==null&&A.equalOwnProperties(I,vA,SB)}A.isJsonEqual=SB;function fg(I){var vA;switch(I.charCodeAt(1)){case 98:case 66:vA=1;break;case 111:case 79:vA=3;break;case 120:case 88:vA=4;break;default:for(var Ie=I.length-1,gr=0;I.charCodeAt(gr)===48;)gr++;return I.slice(gr,Ie)||"0"}for(var pt=2,Ci=I.length-1,Ti=(Ci-pt)*vA,Wi=new Uint16Array((Ti>>>4)+(Ti&15?1:0)),pa=Ci-1,Un=0;pa>=pt;pa--,Un+=vA){var To=Un>>>4,ps=I.charCodeAt(pa),Jo=ps<=57?ps-48:10+ps-(ps<=70?65:97),mn=Jo<<(Un&15);Wi[To]|=mn;var qs=mn>>>16;qs&&(Wi[To+1]|=qs)}for(var ia="",Ls=Wi.length-1,Od=!0;Od;){var ep=0;Od=!1;for(var To=Ls;To>=0;To--){var A0=ep<<16|Wi[To],Vs=A0/10|0;Wi[To]=Vs,ep=A0-Vs*10,Vs&&!Od&&(Ls=To,Od=!0)}ia=ep+ia}return ia}A.parsePseudoBigInt=fg;function Bv(I){var vA=I.negative,Ie=I.base10Value;return(vA&&Ie!=="0"?"-":"")+Ie}A.pseudoBigIntToString=Bv;function wD(I){return!!(I.flags&16777216)||$r(I)||Bg(I)||nu(I)||!(_r(I)||tC(I))}A.isValidTypeOnlyAliasUseSite=wD;function tC(I){return A.isIdentifier(I)&&A.isShorthandPropertyAssignment(I.parent)&&I.parent.name===I}function nu(I){for(;I.kind===79||I.kind===208;)I=I.parent;if(I.kind!==164)return!1;if(lc(I.parent,256))return!0;var vA=I.parent.parent.kind;return vA===261||vA===184}function Bg(I){if(I.kind!==79)return!1;var vA=A.findAncestor(I.parent,function(Ie){switch(Ie.kind){case 294:return!0;case 208:case 230:return!1;default:return"quit"}});return vA?.token===117||vA?.parent.kind===261}function CE(I){return A.isTypeReferenceNode(I)&&A.isIdentifier(I.typeName)}A.isIdentifierTypeReference=CE;function Wf(I,vA){if(vA===void 0&&(vA=A.equateValues),I.length<2)return!0;for(var Ie=I[0],gr=1,pt=I.length;gr=0?A.factory.createNumericLiteral(+I):A.factory.createStringLiteral(I,!!Ie)}A.createPropertyNameNodeForIdentifierOrLiteral=_v;function bd(I){return!!(I.flags&262144&&I.isThisType)}A.isThisTypeParameter=bd;function vs(I){var vA=0,Ie=0,gr=0,pt=0,Ci;(function(Un){Un[Un.BeforeNodeModules=0]="BeforeNodeModules",Un[Un.NodeModules=1]="NodeModules",Un[Un.Scope=2]="Scope",Un[Un.PackageContent=3]="PackageContent"})(Ci||(Ci={}));for(var Ti=0,Wi=0,pa=0;Wi>=0;)switch(Ti=Wi,Wi=I.indexOf("/",Ti+1),pa){case 0:I.indexOf(A.nodeModulesPathPart,Ti)===Ti&&(vA=Ti,Ie=Wi,pa=1);break;case 1:case 2:pa===1&&I.charAt(Ti+1)==="@"?pa=2:(gr=Wi,pa=3);break;case 3:I.indexOf(A.nodeModulesPathPart,Ti)===Ti?pa=1:pa=3;break}return pt=Ti,pa>1?{topLevelNodeModulesIndex:vA,topLevelPackageNameIndex:Ie,packageRootIndex:gr,fileNameIndex:pt}:void 0}A.getNodeModulePathParts=vs;function oC(I){var vA;return I.kind===343?(vA=I.typeExpression)===null||vA===void 0?void 0:vA.type:I.type}A.getParameterTypeNode=oC;function Ap(I){switch(I.kind){case 165:case 260:case 261:case 262:case 263:case 348:case 341:case 342:return!0;case 270:return I.isTypeOnly;case 273:case 278:return I.parent.parent.isTypeOnly;default:return!1}}A.isTypeDeclaration=Ap;function Uu(I){return A.isEnumDeclaration(I)||A.isVariableStatement(I)||A.isFunctionDeclaration(I)||A.isClassDeclaration(I)||A.isInterfaceDeclaration(I)||Ap(I)||A.isModuleDeclaration(I)&&!Me(I)&&!be(I)}A.canHaveExportModifier=Uu})(Oe||(Oe={}));var Oe;(function(A){function r(){var t,i,o,s,g;return{createBaseSourceFileNode:E,createBaseIdentifierNode:p,createBasePrivateIdentifierNode:B,createBaseTokenNode:m,createBaseNode:_};function E(x){return new(g||(g=A.objectAllocator.getSourceFileConstructor()))(x,-1,-1)}function p(x){return new(o||(o=A.objectAllocator.getIdentifierConstructor()))(x,-1,-1)}function B(x){return new(s||(s=A.objectAllocator.getPrivateIdentifierConstructor()))(x,-1,-1)}function m(x){return new(i||(i=A.objectAllocator.getTokenConstructor()))(x,-1,-1)}function _(x){return new(t||(t=A.objectAllocator.getNodeConstructor()))(x,-1,-1)}}A.createBaseNodeFactory=r})(Oe||(Oe={}));var Oe;(function(A){function r(t){var i,o;return{getParenthesizeLeftSideOfBinaryForOperator:s,getParenthesizeRightSideOfBinaryForOperator:g,parenthesizeLeftSideOfBinary:_,parenthesizeRightSideOfBinary:x,parenthesizeExpressionOfComputedPropertyName:O,parenthesizeConditionOfConditionalExpression:k,parenthesizeBranchOfConditionalExpression:P,parenthesizeExpressionOfExportDefault:H,parenthesizeExpressionOfNew:T,parenthesizeLeftSideOfAccess:v,parenthesizeOperandOfPostfixUnary:F,parenthesizeOperandOfPrefixUnary:y,parenthesizeExpressionsOfCommaDelimitedList:S,parenthesizeExpressionForDisallowedComma:U,parenthesizeExpressionOfExpressionStatement:V,parenthesizeConciseBodyOfArrowFunction:wA,parenthesizeCheckTypeOfConditionalType:IA,parenthesizeExtendsTypeOfConditionalType:pA,parenthesizeConstituentTypesOfUnionType:cA,parenthesizeConstituentTypeOfUnionType:oA,parenthesizeConstituentTypesOfIntersectionType:Y,parenthesizeConstituentTypeOfIntersectionType:eA,parenthesizeOperandOfTypeOperator:q,parenthesizeOperandOfReadonlyTypeOperator:X,parenthesizeNonArrayTypeOfPostfixType:Z,parenthesizeElementTypesOfTupleType:K,parenthesizeElementTypeOfTupleType:J,parenthesizeTypeOfOptionalType:uA,parenthesizeTypeArguments:z,parenthesizeLeadingTypeArgument:BA};function s(AA){i||(i=new A.Map);var iA=i.get(AA);return iA||(iA=function(_A){return _(AA,_A)},i.set(AA,iA)),iA}function g(AA){o||(o=new A.Map);var iA=o.get(AA);return iA||(iA=function(_A){return x(AA,void 0,_A)},o.set(AA,iA)),iA}function E(AA,iA,_A,fA){var M=A.getOperatorPrecedence(223,AA),aA=A.getOperatorAssociativity(223,AA),gA=A.skipPartiallyEmittedExpressions(iA);if(!_A&&iA.kind===216&&M>3)return!0;var QA=A.getExpressionPrecedence(gA);switch(A.compareValues(QA,M)){case-1:return!(!_A&&aA===1&&iA.kind===226);case 1:return!1;case 0:if(_A)return aA===1;if(A.isBinaryExpression(gA)&&gA.operatorToken.kind===AA){if(p(AA))return!1;if(AA===39){var mA=fA?B(fA):0;if(A.isLiteralKind(mA)&&mA===B(gA))return!1}}var FA=A.getExpressionAssociativity(gA);return FA===0}}function p(AA){return AA===41||AA===51||AA===50||AA===52||AA===27}function B(AA){if(AA=A.skipPartiallyEmittedExpressions(AA),A.isLiteralKind(AA.kind))return AA.kind;if(AA.kind===223&&AA.operatorToken.kind===39){if(AA.cachedLiteralKind!==void 0)return AA.cachedLiteralKind;var iA=B(AA.left),_A=A.isLiteralKind(iA)&&iA===B(AA.right)?iA:0;return AA.cachedLiteralKind=_A,_A}return 0}function m(AA,iA,_A,fA){var M=A.skipPartiallyEmittedExpressions(iA);return M.kind===214?iA:E(AA,iA,_A,fA)?t.createParenthesizedExpression(iA):iA}function _(AA,iA){return m(AA,iA,!0)}function x(AA,iA,_A){return m(AA,_A,!1,iA)}function O(AA){return A.isCommaSequence(AA)?t.createParenthesizedExpression(AA):AA}function k(AA){var iA=A.getOperatorPrecedence(224,57),_A=A.skipPartiallyEmittedExpressions(AA),fA=A.getExpressionPrecedence(_A);return A.compareValues(fA,iA)!==1?t.createParenthesizedExpression(AA):AA}function P(AA){var iA=A.skipPartiallyEmittedExpressions(AA);return A.isCommaSequence(iA)?t.createParenthesizedExpression(AA):AA}function H(AA){var iA=A.skipPartiallyEmittedExpressions(AA),_A=A.isCommaSequence(iA);if(!_A)switch(A.getLeftmostExpression(iA,!1).kind){case 228:case 215:_A=!0}return _A?t.createParenthesizedExpression(AA):AA}function T(AA){var iA=A.getLeftmostExpression(AA,!0);switch(iA.kind){case 210:return t.createParenthesizedExpression(AA);case 211:return iA.arguments?AA:t.createParenthesizedExpression(AA)}return v(AA)}function v(AA,iA){var _A=A.skipPartiallyEmittedExpressions(AA);return A.isLeftHandSideExpression(_A)&&(_A.kind!==211||_A.arguments)&&(iA||!A.isOptionalChain(_A))?AA:A.setTextRange(t.createParenthesizedExpression(AA),AA)}function F(AA){return A.isLeftHandSideExpression(AA)?AA:A.setTextRange(t.createParenthesizedExpression(AA),AA)}function y(AA){return A.isUnaryExpression(AA)?AA:A.setTextRange(t.createParenthesizedExpression(AA),AA)}function S(AA){var iA=A.sameMap(AA,U);return A.setTextRange(t.createNodeArray(iA,AA.hasTrailingComma),AA)}function U(AA){var iA=A.skipPartiallyEmittedExpressions(AA),_A=A.getExpressionPrecedence(iA),fA=A.getOperatorPrecedence(223,27);return _A>fA?AA:A.setTextRange(t.createParenthesizedExpression(AA),AA)}function V(AA){var iA=A.skipPartiallyEmittedExpressions(AA);if(A.isCallExpression(iA)){var _A=iA.expression,fA=A.skipPartiallyEmittedExpressions(_A).kind;if(fA===215||fA===216){var M=t.updateCallExpression(iA,A.setTextRange(t.createParenthesizedExpression(_A),_A),iA.typeArguments,iA.arguments);return t.restoreOuterExpressions(AA,M,8)}}var aA=A.getLeftmostExpression(iA,!1).kind;return aA===207||aA===215?A.setTextRange(t.createParenthesizedExpression(AA),AA):AA}function wA(AA){return!A.isBlock(AA)&&(A.isCommaSequence(AA)||A.getLeftmostExpression(AA,!1).kind===207)?A.setTextRange(t.createParenthesizedExpression(AA),AA):AA}function IA(AA){switch(AA.kind){case 181:case 182:case 191:return t.createParenthesizedType(AA)}return AA}function pA(AA){switch(AA.kind){case 191:return t.createParenthesizedType(AA)}return AA}function oA(AA){switch(AA.kind){case 189:case 190:return t.createParenthesizedType(AA)}return IA(AA)}function cA(AA){return t.createNodeArray(A.sameMap(AA,oA))}function eA(AA){switch(AA.kind){case 189:case 190:return t.createParenthesizedType(AA)}return oA(AA)}function Y(AA){return t.createNodeArray(A.sameMap(AA,eA))}function q(AA){switch(AA.kind){case 190:return t.createParenthesizedType(AA)}return eA(AA)}function X(AA){switch(AA.kind){case 195:return t.createParenthesizedType(AA)}return q(AA)}function Z(AA){switch(AA.kind){case 192:case 195:case 183:return t.createParenthesizedType(AA)}return q(AA)}function K(AA){return t.createNodeArray(A.sameMap(AA,J))}function J(AA){return sA(AA)?t.createParenthesizedType(AA):AA}function sA(AA){return A.isJSDocNullableType(AA)?AA.postfix:A.isNamedTupleMember(AA)||A.isFunctionTypeNode(AA)||A.isConstructorTypeNode(AA)||A.isTypeOperatorNode(AA)?sA(AA.type):A.isConditionalTypeNode(AA)?sA(AA.falseType):A.isUnionTypeNode(AA)||A.isIntersectionTypeNode(AA)?sA(A.last(AA.types)):A.isInferTypeNode(AA)?!!AA.typeParameter.constraint&&sA(AA.typeParameter.constraint):!1}function uA(AA){return sA(AA)?t.createParenthesizedType(AA):Z(AA)}function BA(AA){return A.isFunctionOrConstructorTypeNode(AA)&&AA.typeParameters?t.createParenthesizedType(AA):AA}function CA(AA,iA){return iA===0?BA(AA):AA}function z(AA){if(A.some(AA))return t.createNodeArray(A.sameMap(AA,CA))}}A.createParenthesizerRules=r,A.nullParenthesizerRules={getParenthesizeLeftSideOfBinaryForOperator:function(t){return A.identity},getParenthesizeRightSideOfBinaryForOperator:function(t){return A.identity},parenthesizeLeftSideOfBinary:function(t,i){return i},parenthesizeRightSideOfBinary:function(t,i,o){return o},parenthesizeExpressionOfComputedPropertyName:A.identity,parenthesizeConditionOfConditionalExpression:A.identity,parenthesizeBranchOfConditionalExpression:A.identity,parenthesizeExpressionOfExportDefault:A.identity,parenthesizeExpressionOfNew:function(t){return A.cast(t,A.isLeftHandSideExpression)},parenthesizeLeftSideOfAccess:function(t){return A.cast(t,A.isLeftHandSideExpression)},parenthesizeOperandOfPostfixUnary:function(t){return A.cast(t,A.isLeftHandSideExpression)},parenthesizeOperandOfPrefixUnary:function(t){return A.cast(t,A.isUnaryExpression)},parenthesizeExpressionsOfCommaDelimitedList:function(t){return A.cast(t,A.isNodeArray)},parenthesizeExpressionForDisallowedComma:A.identity,parenthesizeExpressionOfExpressionStatement:A.identity,parenthesizeConciseBodyOfArrowFunction:A.identity,parenthesizeCheckTypeOfConditionalType:A.identity,parenthesizeExtendsTypeOfConditionalType:A.identity,parenthesizeConstituentTypesOfUnionType:function(t){return A.cast(t,A.isNodeArray)},parenthesizeConstituentTypeOfUnionType:A.identity,parenthesizeConstituentTypesOfIntersectionType:function(t){return A.cast(t,A.isNodeArray)},parenthesizeConstituentTypeOfIntersectionType:A.identity,parenthesizeOperandOfTypeOperator:A.identity,parenthesizeOperandOfReadonlyTypeOperator:A.identity,parenthesizeNonArrayTypeOfPostfixType:A.identity,parenthesizeElementTypesOfTupleType:function(t){return A.cast(t,A.isNodeArray)},parenthesizeElementTypeOfTupleType:A.identity,parenthesizeTypeOfOptionalType:A.identity,parenthesizeTypeArguments:function(t){return t&&A.cast(t,A.isNodeArray)},parenthesizeLeadingTypeArgument:A.identity}})(Oe||(Oe={}));var Oe;(function(A){function r(t){return{convertToFunctionBlock:i,convertToFunctionExpression:o,convertToArrayAssignmentElement:s,convertToObjectAssignmentElement:g,convertToAssignmentPattern:E,convertToObjectAssignmentPattern:p,convertToArrayAssignmentPattern:B,convertToAssignmentElementTarget:m};function i(_,x){if(A.isBlock(_))return _;var O=t.createReturnStatement(_);A.setTextRange(O,_);var k=t.createBlock([O],x);return A.setTextRange(k,_),k}function o(_){if(!_.body)return A.Debug.fail("Cannot convert a FunctionDeclaration without a body");var x=t.createFunctionExpression(_.modifiers,_.asteriskToken,_.name,_.typeParameters,_.parameters,_.type,_.body);return A.setOriginalNode(x,_),A.setTextRange(x,_),A.getStartsOnNewLine(_)&&A.setStartsOnNewLine(x,!0),x}function s(_){if(A.isBindingElement(_)){if(_.dotDotDotToken)return A.Debug.assertNode(_.name,A.isIdentifier),A.setOriginalNode(A.setTextRange(t.createSpreadElement(_.name),_),_);var x=m(_.name);return _.initializer?A.setOriginalNode(A.setTextRange(t.createAssignment(x,_.initializer),_),_):x}return A.cast(_,A.isExpression)}function g(_){if(A.isBindingElement(_)){if(_.dotDotDotToken)return A.Debug.assertNode(_.name,A.isIdentifier),A.setOriginalNode(A.setTextRange(t.createSpreadAssignment(_.name),_),_);if(_.propertyName){var x=m(_.name);return A.setOriginalNode(A.setTextRange(t.createPropertyAssignment(_.propertyName,_.initializer?t.createAssignment(x,_.initializer):x),_),_)}return A.Debug.assertNode(_.name,A.isIdentifier),A.setOriginalNode(A.setTextRange(t.createShorthandPropertyAssignment(_.name,_.initializer),_),_)}return A.cast(_,A.isObjectLiteralElementLike)}function E(_){switch(_.kind){case 204:case 206:return B(_);case 203:case 207:return p(_)}}function p(_){return A.isObjectBindingPattern(_)?A.setOriginalNode(A.setTextRange(t.createObjectLiteralExpression(A.map(_.elements,g)),_),_):A.cast(_,A.isObjectLiteralExpression)}function B(_){return A.isArrayBindingPattern(_)?A.setOriginalNode(A.setTextRange(t.createArrayLiteralExpression(A.map(_.elements,s)),_),_):A.cast(_,A.isArrayLiteralExpression)}function m(_){return A.isBindingPattern(_)?E(_):A.cast(_,A.isExpression)}}A.createNodeConverters=r,A.nullNodeConverters={convertToFunctionBlock:A.notImplemented,convertToFunctionExpression:A.notImplemented,convertToArrayAssignmentElement:A.notImplemented,convertToObjectAssignmentElement:A.notImplemented,convertToAssignmentPattern:A.notImplemented,convertToObjectAssignmentPattern:A.notImplemented,convertToArrayAssignmentPattern:A.notImplemented,convertToAssignmentElementTarget:A.notImplemented}})(Oe||(Oe={}));var Oe;(function(A){var r=0,t;(function(cA){cA[cA.None=0]="None",cA[cA.NoParenthesizerRules=1]="NoParenthesizerRules",cA[cA.NoNodeConverters=2]="NoNodeConverters",cA[cA.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",cA[cA.NoOriginalNode=8]="NoOriginalNode"})(t=A.NodeFactoryFlags||(A.NodeFactoryFlags={}));function i(cA,eA){var Y=cA&8?o:s,q=A.memoize(function(){return cA&1?A.nullParenthesizerRules:A.createParenthesizerRules(M)}),X=A.memoize(function(){return cA&2?A.nullNodeConverters:A.createNodeConverters(M)}),Z=A.memoizeOne(function(L){return function(hA,NA){return gc(hA,L,NA)}}),K=A.memoizeOne(function(L){return function(hA){return Ba(L,hA)}}),J=A.memoizeOne(function(L){return function(hA){return Ds(hA,L)}}),sA=A.memoizeOne(function(L){return function(){return Tf(L)}}),uA=A.memoizeOne(function(L){return function(hA){return Fu(L,hA)}}),BA=A.memoizeOne(function(L){return function(hA,NA){return af(L,hA,NA)}}),CA=A.memoizeOne(function(L){return function(hA,NA){return nf(L,hA,NA)}}),z=A.memoizeOne(function(L){return function(hA,NA){return Ud(L,hA,NA)}}),AA=A.memoizeOne(function(L){return function(hA,NA){return yl(L,hA,NA)}}),iA=A.memoizeOne(function(L){return function(hA,NA,he){return lc(L,hA,NA,he)}}),_A=A.memoizeOne(function(L){return function(hA,NA,he){return bp(L,hA,NA,he)}}),fA=A.memoizeOne(function(L){return function(hA,NA,he,Qr){return dE(L,hA,NA,he,Qr)}}),M={get parenthesizer(){return q()},get converters(){return X()},baseFactory:eA,flags:cA,createNodeArray:aA,createNumericLiteral:RA,createBigIntLiteral:lA,createStringLiteral:N,createStringLiteralFromNode:nA,createRegularExpressionLiteral:kA,createLiteralLikeNode:bA,createIdentifier:De,updateIdentifier:_e,createTempVariable:Ae,createLoopVariable:Q,createUniqueName:Ze,getGeneratedNameForNode:Cr,createPrivateIdentifier:Me,createUniquePrivateName:ir,getGeneratedPrivateNameForNode:Ye,createToken:$e,createSuper:xr,createThis:PA,createNull:we,createTrue:LA,createFalse:ae,createModifier:We,createModifiersFromModifierFlags:YA,createQualifiedName:Ce,updateQualifiedName:Ke,createComputedPropertyName:er,updateComputedPropertyName:ur,createTypeParameterDeclaration:hr,updateTypeParameterDeclaration:Fr,createParameterDeclaration:qA,updateParameterDeclaration:oe,createDecorator:Ge,updateDecorator:nr,createPropertySignature:Or,updatePropertySignature:tr,createPropertyDeclaration:nt,updatePropertyDeclaration:ke,createMethodSignature:Je,updateMethodSignature:Ar,createMethodDeclaration:fr,updateMethodDeclaration:te,createConstructorDeclaration:HA,updateConstructorDeclaration:pe,createGetAccessorDeclaration:Pe,updateGetAccessorDeclaration:He,createSetAccessorDeclaration:or,updateSetAccessorDeclaration:Mr,createCallSignature:lt,updateCallSignature:Lr,createConstructSignature:gt,updateConstructSignature:Pr,createIndexSignature:Et,updateIndexSignature:Zt,createClassStaticBlockDeclaration:UA,updateClassStaticBlockDeclaration:Ee,createTemplateLiteralTypeSpan:Ot,updateTemplateLiteralTypeSpan:_i,createKeywordTypeNode:ei,createTypePredicateNode:Yt,updateTypePredicateNode:Xr,createTypeReferenceNode:JA,updateTypeReferenceNode:Ve,createFunctionTypeNode:XA,updateFunctionTypeNode:Gr,createConstructorTypeNode:Sr,updateConstructorTypeNode:Yr,createTypeQueryNode:le,updateTypeQueryNode:Ir,createTypeLiteralNode:ut,updateTypeLiteralNode:Ii,createArrayTypeNode:Zi,updateArrayTypeNode:yi,createTupleTypeNode:zt,updateTupleTypeNode:cn,createNamedTupleMember:Ui,updateNamedTupleMember:Mi,createOptionalTypeNode:yt,updateOptionalTypeNode:Ya,createRestTypeNode:Wn,updateRestTypeNode:jn,createUnionTypeNode:yo,updateUnionTypeNode:va,createIntersectionTypeNode:wi,updateIntersectionTypeNode:bi,createConditionalTypeNode:ao,updateConditionalTypeNode:Bo,createInferTypeNode:Uo,updateInferTypeNode:oo,createImportTypeNode:hs,updateImportTypeNode:Va,createParenthesizedType:xe,updateParenthesizedType:ze,createThisTypeNode:Lt,createTypeOperatorNode:en,updateTypeOperatorNode:hn,createIndexedAccessTypeNode:Ia,updateIndexedAccessTypeNode:ne,createMappedTypeNode:_r,updateMappedTypeNode:qr,createLiteralTypeNode:$r,updateLiteralTypeNode:ie,createTemplateLiteralType:Xo,updateTemplateLiteralType:Bs,createObjectBindingPattern:ye,updateObjectBindingPattern:Re,createArrayBindingPattern:rr,updateArrayBindingPattern:zr,createBindingElement:Ft,updateBindingElement:Gt,createArrayLiteralExpression:gn,updateArrayLiteralExpression:kn,createObjectLiteralExpression:ra,updateObjectLiteralExpression:Vn,createPropertyAccessExpression:cA&4?function(L,hA){return A.setEmitFlags(ba(L,hA),131072)}:ba,updatePropertyAccessExpression:Ts,createPropertyAccessChain:cA&4?function(L,hA,NA){return A.setEmitFlags(Qs(L,hA,NA),131072)}:Qs,updatePropertyAccessChain:Gs,createElementAccessExpression:Vc,updateElementAccessExpression:$s,createElementAccessChain:ys,updateElementAccessChain:zc,createCallExpression:Rc,updateCallExpression:_l,createCallChain:Bc,updateCallChain:sl,createNewExpression:ms,updateNewExpression:kl,createTaggedTemplateExpression:bs,updateTaggedTemplateExpression:Tc,createTypeAssertion:xs,updateTypeAssertion:yA,createParenthesizedExpression:je,updateParenthesizedExpression:br,createFunctionExpression:mt,updateFunctionExpression:ai,createArrowFunction:Pi,updateArrowFunction:Bi,createDeleteExpression:ji,updateDeleteExpression:Fn,createTypeOfExpression:vn,updateTypeOfExpression:aa,createVoidExpression:se,updateVoidExpression:jr,createAwaitExpression:qe,updateAwaitExpression:la,createPrefixUnaryExpression:Ba,updatePrefixUnaryExpression:po,createPostfixUnaryExpression:Ds,updatePostfixUnaryExpression:Ac,createBinaryExpression:gc,updateBinaryExpression:Nc,createConditionalExpression:Kc,updateConditionalExpression:Zl,createTemplateExpression:ho,updateTemplateExpression:ec,createTemplateHead:mi,createTemplateMiddle:Ea,createTemplateTail:Mo,createNoSubstitutionTemplateLiteral:es,createTemplateLiteralLikeNode:Li,createYieldExpression:Os,updateYieldExpression:_s,createSpreadElement:cr,updateSpreadElement:lr,createClassExpression:Zr,updateClassExpression:xt,createOmittedExpression:Wt,createExpressionWithTypeArguments:Kt,updateExpressionWithTypeArguments:Gi,createAsExpression:di,updateAsExpression:Yi,createNonNullExpression:ha,updateNonNullExpression:Jn,createSatisfiesExpression:Cn,updateSatisfiesExpression:ja,createNonNullChain:qn,updateNonNullChain:Qo,createMetaProperty:lo,updateMetaProperty:Ms,createTemplateSpan:qo,updateTemplateSpan:Ys,createSemicolonClassElement:rs,createBlock:xA,updateBlock:ve,createVariableStatement:Ue,updateVariableStatement:et,createEmptyStatement:jt,createExpressionStatement:Ji,updateExpressionStatement:Dn,createIfStatement:ta,updateIfStatement:qa,createDoStatement:ro,updateDoStatement:Co,createWhileStatement:Ma,updateWhileStatement:Wa,createForStatement:gs,updateForStatement:ts,createForInStatement:Us,updateForInStatement:xl,createForOfStatement:jo,updateForOfStatement:Cc,createContinueStatement:Sf,updateContinueStatement:Ed,createBreakStatement:Pd,updateBreakStatement:pr,createReturnStatement:fd,updateReturnStatement:uu,createWithStatement:Bd,updateWithStatement:Zg,createSwitchStatement:vg,updateSwitchStatement:lg,createLabeledStatement:ZE,updateLabeledStatement:Za,createThrowStatement:dB,updateThrowStatement:oE,createTryStatement:pB,updateTryStatement:$E,createDebuggerStatement:EB,createVariableDeclaration:Dp,updateVariableDeclaration:yg,createVariableDeclarationList:vu,updateVariableDeclarationList:Tr,createFunctionDeclaration:hd,updateFunctionDeclaration:Tn,createClassDeclaration:Ro,updateClassDeclaration:gu,createInterfaceDeclaration:fB,updateInterfaceDeclaration:sE,createTypeAliasDeclaration:lh,updateTypeAliasDeclaration:Hs,createEnumDeclaration:rc,updateEnumDeclaration:$g,createModuleDeclaration:wl,updateModuleDeclaration:AQ,createModuleBlock:Gd,updateModuleBlock:Hl,createCaseBlock:md,updateCaseBlock:uh,createNamespaceExportDeclaration:BB,updateNamespaceExportDeclaration:hB,createImportEqualsDeclaration:Yd,updateImportEqualsDeclaration:Su,createImportDeclaration:gh,updateImportDeclaration:Cg,createImportClause:Rf,updateImportClause:Ig,createAssertClause:_p,updateAssertClause:QB,createAssertEntry:Af,updateAssertEntry:ef,createImportTypeAssertionContainer:lE,updateImportTypeAssertionContainer:rf,createNamespaceImport:Dd,updateNamespaceImport:wp,createNamespaceExport:Ad,updateNamespaceExport:Sl,createNamedImports:bg,updateNamedImports:vp,createImportSpecifier:Og,updateImportSpecifier:uE,createExportAssignment:Fl,updateExportAssignment:$l,createExportDeclaration:ug,updateExportDeclaration:gg,createNamedExports:vl,updateNamedExports:ph,createExportSpecifier:mB,updateExportSpecifier:tf,createMissingDeclaration:DB,createExternalModuleReference:Lo,updateExternalModuleReference:Ic,get createJSDocAllType(){return sA(315)},get createJSDocUnknownType(){return sA(316)},get createJSDocNonNullableType(){return CA(318)},get updateJSDocNonNullableType(){return z(318)},get createJSDocNullableType(){return CA(317)},get updateJSDocNullableType(){return z(317)},get createJSDocOptionalType(){return uA(319)},get updateJSDocOptionalType(){return BA(319)},get createJSDocVariadicType(){return uA(321)},get updateJSDocVariadicType(){return BA(321)},get createJSDocNamepathType(){return uA(322)},get updateJSDocNamepathType(){return BA(322)},createJSDocFunctionType:ds,updateJSDocFunctionType:oi,createJSDocTypeLiteral:ss,updateJSDocTypeLiteral:Rn,createJSDocTypeExpression:Pc,updateJSDocTypeExpression:_B,createJSDocSignature:Rl,updateJSDocSignature:fi,createJSDocTemplateTag:cs,updateJSDocTemplateTag:Nl,createJSDocTypedefTag:du,updateJSDocTypedefTag:yp,createJSDocParameterTag:Ss,updateJSDocParameterTag:_d,createJSDocPropertyTag:Ld,updateJSDocPropertyTag:of,createJSDocCallbackTag:rd,updateJSDocCallbackTag:hc,createJSDocAugmentsTag:wd,updateJSDocAugmentsTag:gE,createJSDocImplementsTag:Cp,updateJSDocImplementsTag:Js,createJSDocSeeTag:jd,updateJSDocSeeTag:wB,createJSDocNameReference:_c,updateJSDocNameReference:Wd,createJSDocMemberName:pu,updateJSDocMemberName:sf,createJSDocLink:Ip,updateJSDocLink:Jd,createJSDocLinkCode:Nf,updateJSDocLinkCode:qd,createJSDocLinkPlain:Mg,updateJSDocLinkPlain:vB,get createJSDocTypeTag(){return _A(346)},get updateJSDocTypeTag(){return fA(346)},get createJSDocReturnTag(){return _A(344)},get updateJSDocReturnTag(){return fA(344)},get createJSDocThisTag(){return _A(345)},get updateJSDocThisTag(){return fA(345)},get createJSDocEnumTag(){return _A(342)},get updateJSDocEnumTag(){return fA(342)},get createJSDocAuthorTag(){return AA(333)},get updateJSDocAuthorTag(){return iA(333)},get createJSDocClassTag(){return AA(335)},get updateJSDocClassTag(){return iA(335)},get createJSDocPublicTag(){return AA(336)},get updateJSDocPublicTag(){return iA(336)},get createJSDocPrivateTag(){return AA(337)},get updateJSDocPrivateTag(){return iA(337)},get createJSDocProtectedTag(){return AA(338)},get updateJSDocProtectedTag(){return iA(338)},get createJSDocReadonlyTag(){return AA(339)},get updateJSDocReadonlyTag(){return iA(339)},get createJSDocOverrideTag(){return AA(340)},get updateJSDocOverrideTag(){return iA(340)},get createJSDocDeprecatedTag(){return AA(334)},get updateJSDocDeprecatedTag(){return iA(334)},createJSDocUnknownTag:Pn,updateJSDocUnknownTag:hi,createJSDocText:Pl,updateJSDocText:Pf,createJSDocComment:pE,updateJSDocComment:Op,createJsxElement:vd,updateJsxElement:Eu,createJsxSelfClosingElement:dg,updateJsxSelfClosingElement:Vu,createJsxOpeningElement:td,updateJsxOpeningElement:Mp,createJsxClosingElement:Au,updateJsxClosingElement:zu,createJsxFragment:so,createJsxText:kp,updateJsxText:eu,createJsxOpeningFragment:xp,createJsxJsxClosingFragment:Hp,updateJsxFragment:Gl,createJsxAttribute:yd,updateJsxAttribute:yB,createJsxAttributes:Yl,updateJsxAttributes:Vo,createJsxSpreadAttribute:Eh,updateJsxSpreadAttribute:pg,createJsxExpression:Cu,updateJsxExpression:Tu,createCaseClause:EE,updateCaseClause:CB,createDefaultClause:fE,updateDefaultClause:Vd,createHeritageClause:Ku,updateHeritageClause:fh,createCatchClause:zd,updateCatchClause:kg,createPropertyAssignment:BE,updatePropertyAssignment:Nu,createShorthandPropertyAssignment:IB,updateShorthandPropertyAssignment:WQ,createSpreadAssignment:ll,updateSpreadAssignment:si,createEnumMember:Cd,updateEnumMember:bB,createSourceFile:xg,updateSourceFile:Sp,createBundle:Bh,updateBundle:ul,createUnparsedSource:cf,createUnparsedPrologue:lf,createUnparsedPrepend:Gf,createUnparsedTextLike:Fp,createUnparsedSyntheticReference:rA,createInputFiles:ge,createSyntheticExpression:kr,createSyntaxList:ft,createNotEmittedStatement:ki,createPartiallyEmittedExpression:sn,updatePartiallyEmittedExpression:_n,createCommaListExpression:wa,updateCommaListExpression:Wo,createEndOfDeclarationMarker:ya,createMergeDeclarationMarker:Ul,createSyntheticReferenceExpression:Ha,updateSyntheticReferenceExpression:$n,cloneNode:ru,get createComma(){return Z(27)},get createAssignment(){return Z(63)},get createLogicalOr(){return Z(56)},get createLogicalAnd(){return Z(55)},get createBitwiseOr(){return Z(51)},get createBitwiseXor(){return Z(52)},get createBitwiseAnd(){return Z(50)},get createStrictEquality(){return Z(36)},get createStrictInequality(){return Z(37)},get createEquality(){return Z(34)},get createInequality(){return Z(35)},get createLessThan(){return Z(29)},get createLessThanEquals(){return Z(32)},get createGreaterThan(){return Z(31)},get createGreaterThanEquals(){return Z(33)},get createLeftShift(){return Z(47)},get createRightShift(){return Z(48)},get createUnsignedRightShift(){return Z(49)},get createAdd(){return Z(39)},get createSubtract(){return Z(40)},get createMultiply(){return Z(41)},get createDivide(){return Z(43)},get createModulo(){return Z(44)},get createExponent(){return Z(42)},get createPrefixPlus(){return K(39)},get createPrefixMinus(){return K(40)},get createPrefixIncrement(){return K(45)},get createPrefixDecrement(){return K(46)},get createBitwiseNot(){return K(54)},get createLogicalNot(){return K(53)},get createPostfixIncrement(){return J(45)},get createPostfixDecrement(){return J(46)},createImmediatelyInvokedFunctionExpression:Xc,createImmediatelyInvokedArrowFunction:Xd,createVoidZero:Pu,createExportDefault:hE,createExternalModuleExport:uf,createTypeCheck:Rp,createMethodCall:za,createGlobalMethodCall:MB,createFunctionBindCall:QE,createFunctionCallCall:OB,createFunctionApplyCall:mE,createArraySliceCall:JQ,createArrayConcatCall:Yf,createObjectDefinePropertyCall:tc,createReflectGetCall:Id,createReflectSetCall:im,createPropertyDescriptor:rQ,createCallBinding:Gu,createAssignmentTargetWrapper:ZA,inlineExpressions:Se,getInternalName:Rr,getLocalName:ct,getExportName:Mt,getDeclarationName:Ni,getNamespaceMemberName:$i,getExternalModuleOrNamespaceExportName:tn,restoreOuterExpressions:VQ,restoreEnclosingLabel:kB,createUseStrictPrologue:Io,copyPrologue:wn,copyStandardPrologue:Eo,copyCustomPrologue:Go,ensureUseStrict:ic,liftToBlock:Zc,mergeLexicalEnvironment:tu,updateModifiers:Ll};return M;function aA(L,hA){if(L===void 0||L===A.emptyArray)L=[];else if(A.isNodeArray(L)){if(hA===void 0||L.hasTrailingComma===hA)return L.transformFlags===void 0&&k(L),A.Debug.attachNodeArrayDebugInfo(L),L;var NA=L.slice();return NA.pos=L.pos,NA.end=L.end,NA.hasTrailingComma=hA,NA.transformFlags=L.transformFlags,A.Debug.attachNodeArrayDebugInfo(NA),NA}var he=L.length,Qr=he>=1&&he<=4?L.slice():L;return A.setTextRangePosEnd(Qr,-1,-1),Qr.hasTrailingComma=!!hA,k(Qr),A.Debug.attachNodeArrayDebugInfo(Qr),Qr}function gA(L){return eA.createBaseNode(L)}function QA(L){var hA=gA(L);return hA.symbol=void 0,hA.localSymbol=void 0,hA.locals=void 0,hA.nextContainer=void 0,hA}function mA(L,hA,NA){var he=QA(L);if(NA=Cl(NA),he.name=NA,A.canHaveModifiers(he)&&(he.modifiers=bc(hA),he.transformFlags|=O(he.modifiers)),NA)switch(he.kind){case 171:case 174:case 175:case 169:case 299:if(A.isIdentifier(NA)){he.transformFlags|=m(NA);break}default:he.transformFlags|=x(NA);break}return he}function FA(L,hA,NA,he){var Qr=mA(L,hA,NA);return Qr.typeParameters=bc(he),Qr.transformFlags|=O(Qr.typeParameters),he&&(Qr.transformFlags|=1),Qr}function SA(L,hA,NA,he,Qr,Ht){var Vi=FA(L,hA,NA,he);return Vi.parameters=aA(Qr),Vi.type=Ht,Vi.transformFlags|=O(Vi.parameters)|x(Vi.type),Ht&&(Vi.transformFlags|=1),Vi.typeArguments=void 0,Vi}function ce(L,hA){return L!==hA&&(L.typeArguments=hA.typeArguments),Y(L,hA)}function re(L,hA,NA,he,Qr,Ht,Vi){var Ra=SA(L,hA,NA,he,Qr,Ht);return Ra.body=Vi,Ra.transformFlags|=x(Ra.body)&-67108865,Vi||(Ra.transformFlags|=1),Ra}function KA(L,hA,NA,he,Qr){var Ht=FA(L,hA,NA,he);return Ht.heritageClauses=bc(Qr),Ht.transformFlags|=O(Ht.heritageClauses),Ht}function $A(L,hA,NA,he,Qr,Ht){var Vi=KA(L,hA,NA,he,Qr);return Vi.members=aA(Ht),Vi.transformFlags|=O(Vi.members),Vi}function jA(L,hA,NA,he){var Qr=mA(L,hA,NA);return Qr.initializer=he,Qr.transformFlags|=x(Qr.initializer),Qr}function ue(L,hA,NA,he,Qr){var Ht=jA(L,hA,NA,Qr);return Ht.type=he,Ht.transformFlags|=x(he),he&&(Ht.transformFlags|=1),Ht}function MA(L,hA){var NA=mr(L);return NA.text=hA,NA}function RA(L,hA){hA===void 0&&(hA=0);var NA=MA(8,typeof L=="number"?L+"":L);return NA.numericLiteralFlags=hA,hA&384&&(NA.transformFlags|=1024),NA}function lA(L){var hA=MA(9,typeof L=="string"?L:A.pseudoBigIntToString(L)+"n");return hA.transformFlags|=4,hA}function tA(L,hA){var NA=MA(10,L);return NA.singleQuote=hA,NA}function N(L,hA,NA){var he=tA(L,hA);return he.hasExtendedUnicodeEscape=NA,NA&&(he.transformFlags|=1024),he}function nA(L){var hA=tA(A.getTextOfIdentifierOrLiteral(L),void 0);return hA.textSourceNode=L,hA}function kA(L){var hA=MA(13,L);return hA}function bA(L,hA){switch(L){case 8:return RA(hA,0);case 9:return lA(hA);case 10:return N(hA,void 0);case 11:return kp(hA,!1);case 12:return kp(hA,!0);case 13:return kA(hA);case 14:return Li(L,hA,void 0,0)}}function TA(L,hA){hA===void 0&&L&&(hA=A.stringToToken(L)),hA===79&&(hA=void 0);var NA=eA.createBaseIdentifierNode(79);return NA.originalKeywordKind=hA,NA.escapedText=A.escapeLeadingUnderscores(L),NA}function VA(L,hA,NA,he){var Qr=TA(L,void 0);return Qr.autoGenerateFlags=hA,Qr.autoGenerateId=r,Qr.autoGeneratePrefix=NA,Qr.autoGenerateSuffix=he,r++,Qr}function De(L,hA,NA,he){var Qr=TA(L,NA);return hA&&(Qr.typeArguments=aA(hA)),Qr.originalKeywordKind===133&&(Qr.transformFlags|=67108864),he&&(Qr.hasExtendedUnicodeEscape=he,Qr.transformFlags|=1024),Qr}function _e(L,hA){return L.typeArguments!==hA?Y(De(A.idText(L),hA),L):L}function Ae(L,hA,NA,he){var Qr=1;hA&&(Qr|=8);var Ht=VA("",Qr,NA,he);return L&&L(Ht),Ht}function Q(L){var hA=2;return L&&(hA|=8),VA("",hA,void 0,void 0)}function Ze(L,hA,NA,he){return hA===void 0&&(hA=0),A.Debug.assert(!(hA&7),"Argument out of range: flags"),A.Debug.assert((hA&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),VA(L,3|hA,NA,he)}function Cr(L,hA,NA,he){hA===void 0&&(hA=0),A.Debug.assert(!(hA&7),"Argument out of range: flags");var Qr=L?A.isMemberName(L)?A.formatGeneratedName(!1,NA,L,he,A.idText):"generated@".concat(A.getNodeId(L)):"";(NA||he)&&(hA|=16);var Ht=VA(Qr,4|hA,NA,he);return Ht.original=L,Ht}function be(L){var hA=eA.createBasePrivateIdentifierNode(80);return hA.escapedText=A.escapeLeadingUnderscores(L),hA.transformFlags|=16777216,hA}function Me(L){return A.startsWith(L,"#")||A.Debug.fail("First character of private identifier must be #: "+L),be(L)}function Le(L,hA,NA,he){var Qr=be(L);return Qr.autoGenerateFlags=hA,Qr.autoGenerateId=r,Qr.autoGeneratePrefix=NA,Qr.autoGenerateSuffix=he,r++,Qr}function ir(L,hA,NA){L&&!A.startsWith(L,"#")&&A.Debug.fail("First character of private identifier must be #: "+L);var he=8|(L?3:1);return Le(L??"",he,hA,NA)}function Ye(L,hA,NA){var he=A.isMemberName(L)?A.formatGeneratedName(!0,hA,L,NA,A.idText):"#generated@".concat(A.getNodeId(L)),Qr=hA||NA?16:0,Ht=Le(he,4|Qr,hA,NA);return Ht.original=L,Ht}function mr(L){return eA.createBaseTokenNode(L)}function $e(L){A.Debug.assert(L>=0&&L<=162,"Invalid token"),A.Debug.assert(L<=14||L>=17,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),A.Debug.assert(L<=8||L>=14,"Invalid token. Use 'createLiteralLikeNode' to create literals."),A.Debug.assert(L!==79,"Invalid token. Use 'createIdentifier' to create identifiers");var hA=mr(L),NA=0;switch(L){case 132:NA=384;break;case 123:case 121:case 122:case 146:case 126:case 136:case 85:case 131:case 148:case 160:case 144:case 149:case 101:case 145:case 161:case 152:case 134:case 153:case 114:case 157:case 155:NA=1;break;case 106:NA=134218752;break;case 124:NA=1024;break;case 127:NA=16777216;break;case 108:NA=16384;break}return NA&&(hA.transformFlags|=NA),hA}function xr(){return $e(106)}function PA(){return $e(108)}function we(){return $e(104)}function LA(){return $e(110)}function ae(){return $e(95)}function We(L){return $e(L)}function YA(L){var hA=[];return L&1&&hA.push(We(93)),L&2&&hA.push(We(136)),L&1024&&hA.push(We(88)),L&2048&&hA.push(We(85)),L&4&&hA.push(We(123)),L&8&&hA.push(We(121)),L&16&&hA.push(We(122)),L&256&&hA.push(We(126)),L&32&&hA.push(We(124)),L&16384&&hA.push(We(161)),L&64&&hA.push(We(146)),L&128&&hA.push(We(127)),L&512&&hA.push(We(132)),L&32768&&hA.push(We(101)),L&65536&&hA.push(We(145)),hA.length?hA:void 0}function Ce(L,hA){var NA=gA(163);return NA.left=L,NA.right=Cl(hA),NA.transformFlags|=x(NA.left)|m(NA.right),NA}function Ke(L,hA,NA){return L.left!==hA||L.right!==NA?Y(Ce(hA,NA),L):L}function er(L){var hA=gA(164);return hA.expression=q().parenthesizeExpressionOfComputedPropertyName(L),hA.transformFlags|=x(hA.expression)|1024|131072,hA}function ur(L,hA){return L.expression!==hA?Y(er(hA),L):L}function hr(L,hA,NA,he){var Qr=mA(165,L,hA);return Qr.constraint=NA,Qr.default=he,Qr.transformFlags=1,Qr}function Fr(L,hA,NA,he,Qr){return L.modifiers!==hA||L.name!==NA||L.constraint!==he||L.default!==Qr?Y(hr(hA,NA,he,Qr),L):L}function qA(L,hA,NA,he,Qr,Ht){var Vi=ue(166,L,NA,Qr,Ht&&q().parenthesizeExpressionForDisallowedComma(Ht));return Vi.dotDotDotToken=hA,Vi.questionToken=he,A.isThisIdentifier(Vi.name)?Vi.transformFlags=1:(Vi.transformFlags|=x(Vi.dotDotDotToken)|x(Vi.questionToken),he&&(Vi.transformFlags|=1),A.modifiersToFlags(Vi.modifiers)&16476&&(Vi.transformFlags|=8192),(Ht||hA)&&(Vi.transformFlags|=1024)),Vi}function oe(L,hA,NA,he,Qr,Ht,Vi){return L.modifiers!==hA||L.dotDotDotToken!==NA||L.name!==he||L.questionToken!==Qr||L.type!==Ht||L.initializer!==Vi?Y(qA(hA,NA,he,Qr,Ht,Vi),L):L}function Ge(L){var hA=gA(167);return hA.expression=q().parenthesizeLeftSideOfAccess(L,!1),hA.transformFlags|=x(hA.expression)|1|8192|33554432,hA}function nr(L,hA){return L.expression!==hA?Y(Ge(hA),L):L}function Or(L,hA,NA,he){var Qr=mA(168,L,hA);return Qr.type=he,Qr.questionToken=NA,Qr.transformFlags=1,Qr.initializer=void 0,Qr}function tr(L,hA,NA,he,Qr){return L.modifiers!==hA||L.name!==NA||L.questionToken!==he||L.type!==Qr?Ur(Or(hA,NA,he,Qr),L):L}function Ur(L,hA){return L!==hA&&(L.initializer=hA.initializer),Y(L,hA)}function nt(L,hA,NA,he,Qr){var Ht=ue(169,L,hA,he,Qr);return Ht.questionToken=NA&&A.isQuestionToken(NA)?NA:void 0,Ht.exclamationToken=NA&&A.isExclamationToken(NA)?NA:void 0,Ht.transformFlags|=x(Ht.questionToken)|x(Ht.exclamationToken)|16777216,(A.isComputedPropertyName(Ht.name)||A.hasStaticModifier(Ht)&&Ht.initializer)&&(Ht.transformFlags|=8192),(NA||A.modifiersToFlags(Ht.modifiers)&2)&&(Ht.transformFlags|=1),Ht}function ke(L,hA,NA,he,Qr,Ht){return L.modifiers!==hA||L.name!==NA||L.questionToken!==(he!==void 0&&A.isQuestionToken(he)?he:void 0)||L.exclamationToken!==(he!==void 0&&A.isExclamationToken(he)?he:void 0)||L.type!==Qr||L.initializer!==Ht?Y(nt(hA,NA,he,Qr,Ht),L):L}function Je(L,hA,NA,he,Qr,Ht){var Vi=SA(170,L,hA,he,Qr,Ht);return Vi.questionToken=NA,Vi.transformFlags=1,Vi}function Ar(L,hA,NA,he,Qr,Ht,Vi){return L.modifiers!==hA||L.name!==NA||L.questionToken!==he||L.typeParameters!==Qr||L.parameters!==Ht||L.type!==Vi?ce(Je(hA,NA,he,Qr,Ht,Vi),L):L}function fr(L,hA,NA,he,Qr,Ht,Vi,Ra){var Qc=re(171,L,NA,Qr,Ht,Vi,Ra);return Qc.asteriskToken=hA,Qc.questionToken=he,Qc.transformFlags|=x(Qc.asteriskToken)|x(Qc.questionToken)|1024,he&&(Qc.transformFlags|=1),A.modifiersToFlags(Qc.modifiers)&512?hA?Qc.transformFlags|=128:Qc.transformFlags|=256:hA&&(Qc.transformFlags|=2048),Qc.exclamationToken=void 0,Qc}function te(L,hA,NA,he,Qr,Ht,Vi,Ra,Qc){return L.modifiers!==hA||L.asteriskToken!==NA||L.name!==he||L.questionToken!==Qr||L.typeParameters!==Ht||L.parameters!==Vi||L.type!==Ra||L.body!==Qc?Te(fr(hA,NA,he,Qr,Ht,Vi,Ra,Qc),L):L}function Te(L,hA){return L!==hA&&(L.exclamationToken=hA.exclamationToken),Y(L,hA)}function UA(L){var hA=FA(172,void 0,void 0,void 0);return hA.body=L,hA.transformFlags=x(L)|16777216,hA.illegalDecorators=void 0,hA.modifiers=void 0,hA}function Ee(L,hA){return L.body!==hA?de(UA(hA),L):L}function de(L,hA){return L!==hA&&(L.illegalDecorators=hA.illegalDecorators,L.modifiers=hA.modifiers),Y(L,hA)}function HA(L,hA,NA){var he=re(173,L,void 0,void 0,hA,void 0,NA);return he.transformFlags|=1024,he.illegalDecorators=void 0,he.typeParameters=void 0,he.type=void 0,he}function pe(L,hA,NA,he){return L.modifiers!==hA||L.parameters!==NA||L.body!==he?ee(HA(hA,NA,he),L):L}function ee(L,hA){return L!==hA&&(L.illegalDecorators=hA.illegalDecorators,L.typeParameters=hA.typeParameters,L.type=hA.type),ce(L,hA)}function Pe(L,hA,NA,he,Qr){var Ht=re(174,L,hA,void 0,NA,he,Qr);return Ht.typeParameters=void 0,Ht}function He(L,hA,NA,he,Qr,Ht){return L.modifiers!==hA||L.name!==NA||L.parameters!==he||L.type!==Qr||L.body!==Ht?Xe(Pe(hA,NA,he,Qr,Ht),L):L}function Xe(L,hA){return L!==hA&&(L.typeParameters=hA.typeParameters),ce(L,hA)}function or(L,hA,NA,he){var Qr=re(175,L,hA,void 0,NA,void 0,he);return Qr.typeParameters=void 0,Qr.type=void 0,Qr}function Mr(L,hA,NA,he,Qr){return L.modifiers!==hA||L.name!==NA||L.parameters!==he||L.body!==Qr?ar(or(hA,NA,he,Qr),L):L}function ar(L,hA){return L!==hA&&(L.typeParameters=hA.typeParameters,L.type=hA.type),ce(L,hA)}function lt(L,hA,NA){var he=SA(176,void 0,void 0,L,hA,NA);return he.transformFlags=1,he}function Lr(L,hA,NA,he){return L.typeParameters!==hA||L.parameters!==NA||L.type!==he?ce(lt(hA,NA,he),L):L}function gt(L,hA,NA){var he=SA(177,void 0,void 0,L,hA,NA);return he.transformFlags=1,he}function Pr(L,hA,NA,he){return L.typeParameters!==hA||L.parameters!==NA||L.type!==he?ce(gt(hA,NA,he),L):L}function Et(L,hA,NA){var he=SA(178,L,void 0,void 0,hA,NA);return he.transformFlags=1,he}function Zt(L,hA,NA,he){return L.parameters!==NA||L.type!==he||L.modifiers!==hA?ce(Et(hA,NA,he),L):L}function Ot(L,hA){var NA=gA(201);return NA.type=L,NA.literal=hA,NA.transformFlags=1,NA}function _i(L,hA,NA){return L.type!==hA||L.literal!==NA?Y(Ot(hA,NA),L):L}function ei(L){return $e(L)}function Yt(L,hA,NA){var he=gA(179);return he.assertsModifier=L,he.parameterName=Cl(hA),he.type=NA,he.transformFlags=1,he}function Xr(L,hA,NA,he){return L.assertsModifier!==hA||L.parameterName!==NA||L.type!==he?Y(Yt(hA,NA,he),L):L}function JA(L,hA){var NA=gA(180);return NA.typeName=Cl(L),NA.typeArguments=hA&&q().parenthesizeTypeArguments(aA(hA)),NA.transformFlags=1,NA}function Ve(L,hA,NA){return L.typeName!==hA||L.typeArguments!==NA?Y(JA(hA,NA),L):L}function XA(L,hA,NA){var he=SA(181,void 0,void 0,L,hA,NA);return he.transformFlags=1,he.modifiers=void 0,he}function Gr(L,hA,NA,he){return L.typeParameters!==hA||L.parameters!==NA||L.type!==he?ot(XA(hA,NA,he),L):L}function ot(L,hA){return L!==hA&&(L.modifiers=hA.modifiers),ce(L,hA)}function Sr(){for(var L=[],hA=0;hA0;default:return!0}}function Gu(L,hA,NA,he){he===void 0&&(he=!1);var Qr=A.skipOuterExpressions(L,15),Ht,Vi;return A.isSuperProperty(Qr)?(Ht=PA(),Vi=Qr):A.isSuperKeyword(Qr)?(Ht=PA(),Vi=NA!==void 0&&NA<2?A.setTextRange(De("_super"),Qr):Qr):A.getEmitFlags(Qr)&4096?(Ht=Pu(),Vi=q().parenthesizeLeftSideOfAccess(Qr,!1)):A.isPropertyAccessExpression(Qr)?Hg(Qr.expression,he)?(Ht=Ae(hA),Vi=ba(A.setTextRange(M.createAssignment(Ht,Qr.expression),Qr.expression),Qr.name),A.setTextRange(Vi,Qr)):(Ht=Qr.expression,Vi=Qr):A.isElementAccessExpression(Qr)?Hg(Qr.expression,he)?(Ht=Ae(hA),Vi=Vc(A.setTextRange(M.createAssignment(Ht,Qr.expression),Qr.expression),Qr.argumentExpression),A.setTextRange(Vi,Qr)):(Ht=Qr.expression,Vi=Qr):(Ht=Pu(),Vi=q().parenthesizeLeftSideOfAccess(L,!1)),{target:Vi,thisArg:Ht}}function ZA(L,hA){return ba(je(ra([or(void 0,"value",[qA(void 0,void 0,L,void 0,void 0,void 0)],xA([Ji(hA)]))])),"value")}function Se(L){return L.length>10?wa(L):A.reduceLeft(L,M.createComma)}function Er(L,hA,NA,he){he===void 0&&(he=0);var Qr=A.getNameOfDeclaration(L);if(Qr&&A.isIdentifier(Qr)&&!A.isGeneratedIdentifier(Qr)){var Ht=A.setParent(A.setTextRange(ru(Qr),Qr),Qr.parent);return he|=A.getEmitFlags(Qr),NA||(he|=48),hA||(he|=1536),he&&A.setEmitFlags(Ht,he),Ht}return Cr(L)}function Rr(L,hA,NA){return Er(L,hA,NA,49152)}function ct(L,hA,NA){return Er(L,hA,NA,16384)}function Mt(L,hA,NA){return Er(L,hA,NA,8192)}function Ni(L,hA,NA){return Er(L,hA,NA)}function $i(L,hA,NA,he){var Qr=ba(L,A.nodeIsSynthesized(hA)?hA:ru(hA));A.setTextRange(Qr,hA);var Ht=0;return he||(Ht|=48),NA||(Ht|=1536),Ht&&A.setEmitFlags(Qr,Ht),Qr}function tn(L,hA,NA,he){return L&&A.hasSyntacticModifier(hA,1)?$i(L,Er(hA),NA,he):Mt(hA,NA,he)}function wn(L,hA,NA,he){var Qr=Eo(L,hA,0,NA);return Go(L,hA,Qr,he)}function ka(L){return A.isStringLiteral(L.expression)&&L.expression.text==="use strict"}function Io(){return A.startOnNewLine(Ji(N("use strict")))}function Eo(L,hA,NA,he){NA===void 0&&(NA=0),A.Debug.assert(hA.length===0,"Prologue directives should be at the first statement in the target statements array");for(var Qr=!1,Ht=L.length;NARa&&li.splice.apply(li,dt([Qr,0],hA.slice(Ra,Qc),!1)),Ra>Vi&&li.splice.apply(li,dt([he,0],hA.slice(Vi,Ra),!1)),Vi>Ht&&li.splice.apply(li,dt([NA,0],hA.slice(Ht,Vi),!1)),Ht>0)if(NA===0)li.splice.apply(li,dt([0,0],hA.slice(0,Ht),!1));else{for(var Sg=new A.Map,Zu=0;Zu=0;Zu--){var vE=hA[Zu];Sg.has(vE.expression.text)||li.unshift(vE)}}return A.isNodeArray(L)?A.setTextRange(aA(li,L.hasTrailingComma),L):L}function Ll(L,hA){var NA,he;return typeof hA=="number"?he=YA(hA):he=hA,A.isTypeParameterDeclaration(L)?Fr(L,he,L.name,L.constraint,L.default):A.isParameter(L)?oe(L,he,L.dotDotDotToken,L.name,L.questionToken,L.type,L.initializer):A.isConstructorTypeNode(L)?rt(L,he,L.typeParameters,L.parameters,L.type):A.isPropertySignature(L)?tr(L,he,L.name,L.questionToken,L.type):A.isPropertyDeclaration(L)?ke(L,he,L.name,(NA=L.questionToken)!==null&&NA!==void 0?NA:L.exclamationToken,L.type,L.initializer):A.isMethodSignature(L)?Ar(L,he,L.name,L.questionToken,L.typeParameters,L.parameters,L.type):A.isMethodDeclaration(L)?te(L,he,L.asteriskToken,L.name,L.questionToken,L.typeParameters,L.parameters,L.type,L.body):A.isConstructorDeclaration(L)?pe(L,he,L.parameters,L.body):A.isGetAccessorDeclaration(L)?He(L,he,L.name,L.parameters,L.type,L.body):A.isSetAccessorDeclaration(L)?Mr(L,he,L.name,L.parameters,L.body):A.isIndexSignatureDeclaration(L)?Zt(L,he,L.parameters,L.type):A.isFunctionExpression(L)?ai(L,he,L.asteriskToken,L.name,L.typeParameters,L.parameters,L.type,L.body):A.isArrowFunction(L)?Bi(L,he,L.typeParameters,L.parameters,L.type,L.equalsGreaterThanToken,L.body):A.isClassExpression(L)?xt(L,he,L.name,L.typeParameters,L.heritageClauses,L.members):A.isVariableStatement(L)?et(L,he,L.declarationList):A.isFunctionDeclaration(L)?Tn(L,he,L.asteriskToken,L.name,L.typeParameters,L.parameters,L.type,L.body):A.isClassDeclaration(L)?gu(L,he,L.name,L.typeParameters,L.heritageClauses,L.members):A.isInterfaceDeclaration(L)?sE(L,he,L.name,L.typeParameters,L.heritageClauses,L.members):A.isTypeAliasDeclaration(L)?Hs(L,he,L.name,L.typeParameters,L.type):A.isEnumDeclaration(L)?$g(L,he,L.name,L.members):A.isModuleDeclaration(L)?AQ(L,he,L.name,L.body):A.isImportEqualsDeclaration(L)?Su(L,he,L.isTypeOnly,L.name,L.moduleReference):A.isImportDeclaration(L)?Cg(L,he,L.importClause,L.moduleSpecifier,L.assertClause):A.isExportAssignment(L)?$l(L,he,L.expression):A.isExportDeclaration(L)?gg(L,he,L.isTypeOnly,L.exportClause,L.moduleSpecifier,L.assertClause):A.Debug.assertNever(L)}function bc(L){return L?aA(L):void 0}function Cl(L){return typeof L=="string"?De(L):L}function Xu(L){return typeof L=="string"?N(L):typeof L=="number"?RA(L):typeof L=="boolean"?L?LA():ae():L}function _E(L){return typeof L=="number"?$e(L):L}function Fs(L){return L&&A.isNotEmittedStatement(L)?A.setTextRange(IA(jt(),L),L):L}}A.createNodeFactory=i;function o(cA,eA){return cA!==eA&&A.setTextRange(cA,eA),cA}function s(cA,eA){return cA!==eA&&(IA(cA,eA),A.setTextRange(cA,eA)),cA}function g(cA){switch(cA){case 346:return"type";case 344:return"returns";case 345:return"this";case 342:return"enum";case 333:return"author";case 335:return"class";case 336:return"public";case 337:return"private";case 338:return"protected";case 339:return"readonly";case 340:return"override";case 347:return"template";case 348:return"typedef";case 343:return"param";case 350:return"prop";case 341:return"callback";case 331:return"augments";case 332:return"implements";default:return A.Debug.fail("Unsupported kind: ".concat(A.Debug.formatSyntaxKind(cA)))}}var E,p={};function B(cA,eA){switch(E||(E=A.createScanner(99,!1,0)),cA){case 14:E.setText("`"+eA+"`");break;case 15:E.setText("`"+eA+"${");break;case 16:E.setText("}"+eA+"${");break;case 17:E.setText("}"+eA+"`");break}var Y=E.scan();if(Y===19&&(Y=E.reScanTemplateToken(!1)),E.isUnterminated())return E.setText(void 0),p;var q;switch(Y){case 14:case 15:case 16:case 17:q=E.getTokenValue();break}return q===void 0||E.scan()!==1?(E.setText(void 0),p):(E.setText(void 0),q)}function m(cA){return x(cA)&-67108865}function _(cA,eA){return eA|cA.transformFlags&134234112}function x(cA){if(!cA)return 0;var eA=cA.transformFlags&~P(cA.kind);return A.isNamedDeclaration(cA)&&A.isPropertyName(cA.name)?_(cA.name,eA):eA}function O(cA){return cA?cA.transformFlags:0}function k(cA){for(var eA=0,Y=0,q=cA;Y=179&&cA<=202)return-2;switch(cA){case 210:case 211:case 206:return-2147450880;case 264:return-1941676032;case 166:return-2147483648;case 216:return-2072174592;case 215:case 259:return-1937940480;case 258:return-2146893824;case 260:case 228:return-2147344384;case 173:return-1937948672;case 169:return-2013249536;case 171:case 174:case 175:return-2005057536;case 131:case 148:case 160:case 144:case 152:case 149:case 134:case 153:case 114:case 165:case 168:case 170:case 176:case 177:case 178:case 261:case 262:return-2;case 207:return-2147278848;case 295:return-2147418112;case 203:case 204:return-2147450880;case 213:case 235:case 231:case 353:case 214:case 106:return-2147483648;case 208:case 209:return-2147483648;default:return-2147483648}}A.getTransformFlagsSubtreeExclusions=P;var H=A.createBaseNodeFactory();function T(cA){return cA.flags|=8,cA}var v={createBaseSourceFileNode:function(cA){return T(H.createBaseSourceFileNode(cA))},createBaseIdentifierNode:function(cA){return T(H.createBaseIdentifierNode(cA))},createBasePrivateIdentifierNode:function(cA){return T(H.createBasePrivateIdentifierNode(cA))},createBaseTokenNode:function(cA){return T(H.createBaseTokenNode(cA))},createBaseNode:function(cA){return T(H.createBaseNode(cA))}};A.factory=i(4,v);function F(cA,eA,Y){var q,X,Z,K,J,sA,uA,BA,CA,z;A.isString(cA)?(Z="",K=cA,J=cA.length,sA=eA,uA=Y):(A.Debug.assert(eA==="js"||eA==="dts"),Z=(eA==="js"?cA.javascriptPath:cA.declarationPath)||"",sA=eA==="js"?cA.javascriptMapPath:cA.declarationMapPath,BA=function(){return eA==="js"?cA.javascriptText:cA.declarationText},CA=function(){return eA==="js"?cA.javascriptMapText:cA.declarationMapText},J=function(){return BA().length},cA.buildInfo&&cA.buildInfo.bundle&&(A.Debug.assert(Y===void 0||typeof Y=="boolean"),q=Y,X=eA==="js"?cA.buildInfo.bundle.js:cA.buildInfo.bundle.dts,z=cA.oldFileOfCurrentEmit));var AA=z?S(A.Debug.checkDefined(X)):y(X,q,J);return AA.fileName=Z,AA.sourceMapPath=sA,AA.oldFileOfCurrentEmit=z,BA&&CA?(Object.defineProperty(AA,"text",{get:BA}),Object.defineProperty(AA,"sourceMapText",{get:CA})):(A.Debug.assert(!z),AA.text=K??"",AA.sourceMapText=uA),AA}A.createUnparsedSourceFile=F;function y(cA,eA,Y){for(var q,X,Z,K,J,sA,uA,BA,CA=0,z=cA?cA.sections:A.emptyArray;CA0&&(uA[z-CA]=AA)}CA>0&&(uA.length-=CA)}}A.moveEmitHelpers=oA;function cA(Z){var K;return(K=Z.emitNode)===null||K===void 0?void 0:K.snippetElement}A.getSnippetElement=cA;function eA(Z,K){var J=r(Z);return J.snippetElement=K,Z}A.setSnippetElement=eA;function Y(Z){return r(Z).flags|=134217728,Z}A.ignoreSourceNewlines=Y;function q(Z,K){var J=r(Z);return J.typeNode=K,Z}A.setTypeNode=q;function X(Z){var K;return(K=Z.emitNode)===null||K===void 0?void 0:K.typeNode}A.getTypeNode=X})(Oe||(Oe={}));var Oe;(function(A){function r(E){var p=E.factory,B=A.memoize(function(){return A.setEmitFlags(p.createTrue(),268435456)}),m=A.memoize(function(){return A.setEmitFlags(p.createFalse(),268435456)});return{getUnscopedHelperName:_,createDecorateHelper:x,createMetadataHelper:O,createParamHelper:k,createAssignHelper:P,createAwaitHelper:H,createAsyncGeneratorHelper:T,createAsyncDelegatorHelper:v,createAsyncValuesHelper:F,createRestHelper:y,createAwaiterHelper:S,createExtendsHelper:U,createTemplateObjectHelper:V,createSpreadArrayHelper:wA,createValuesHelper:IA,createReadHelper:pA,createGeneratorHelper:oA,createCreateBindingHelper:cA,createImportStarHelper:eA,createImportStarCallbackHelper:Y,createImportDefaultHelper:q,createExportStarHelper:X,createClassPrivateFieldGetHelper:Z,createClassPrivateFieldSetHelper:K,createClassPrivateFieldInHelper:J};function _(sA){return A.setEmitFlags(p.createIdentifier(sA),4098)}function x(sA,uA,BA,CA){E.requestEmitHelper(A.decorateHelper);var z=[];return z.push(p.createArrayLiteralExpression(sA,!0)),z.push(uA),BA&&(z.push(BA),CA&&z.push(CA)),p.createCallExpression(_("__decorate"),void 0,z)}function O(sA,uA){return E.requestEmitHelper(A.metadataHelper),p.createCallExpression(_("__metadata"),void 0,[p.createStringLiteral(sA),uA])}function k(sA,uA,BA){return E.requestEmitHelper(A.paramHelper),A.setTextRange(p.createCallExpression(_("__param"),void 0,[p.createNumericLiteral(uA+""),sA]),BA)}function P(sA){return A.getEmitScriptTarget(E.getCompilerOptions())>=2?p.createCallExpression(p.createPropertyAccessExpression(p.createIdentifier("Object"),"assign"),void 0,sA):(E.requestEmitHelper(A.assignHelper),p.createCallExpression(_("__assign"),void 0,sA))}function H(sA){return E.requestEmitHelper(A.awaitHelper),p.createCallExpression(_("__await"),void 0,[sA])}function T(sA,uA){return E.requestEmitHelper(A.awaitHelper),E.requestEmitHelper(A.asyncGeneratorHelper),(sA.emitNode||(sA.emitNode={})).flags|=786432,p.createCallExpression(_("__asyncGenerator"),void 0,[uA?p.createThis():p.createVoidZero(),p.createIdentifier("arguments"),sA])}function v(sA){return E.requestEmitHelper(A.awaitHelper),E.requestEmitHelper(A.asyncDelegator),p.createCallExpression(_("__asyncDelegator"),void 0,[sA])}function F(sA){return E.requestEmitHelper(A.asyncValues),p.createCallExpression(_("__asyncValues"),void 0,[sA])}function y(sA,uA,BA,CA){E.requestEmitHelper(A.restHelper);for(var z=[],AA=0,iA=0;iA= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; - };`},A.metadataHelper={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:` - var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); - };`},A.paramHelper={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:` - var __param = (this && this.__param) || function (paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } - };`},A.assignHelper={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:` - var __assign = (this && this.__assign) || function () { - __assign = Object.assign || function(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) - t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); - };`},A.awaitHelper={name:"typescript:await",importName:"__await",scoped:!1,text:` - var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }`},A.asyncGeneratorHelper={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[A.awaitHelper],text:` - var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; - function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } - function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } - function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } - function fulfill(value) { resume("next", value); } - function reject(value) { resume("throw", value); } - function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } - };`},A.asyncDelegator={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[A.awaitHelper],text:` - var __asyncDelegator = (this && this.__asyncDelegator) || function (o) { - var i, p; - return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; - function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; } - };`},A.asyncValues={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:` - var __asyncValues = (this && this.__asyncValues) || function (o) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i); - function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } - function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } - };`},A.restHelper={name:"typescript:rest",importName:"__rest",scoped:!1,text:` - var __rest = (this && this.__rest) || function (s, e) { - var t = {}; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; - };`},A.awaiterHelper={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:` - var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - };`},A.extendsHelper={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:` - var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - })();`},A.templateObjectHelper={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:` - var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) { - if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } - return cooked; - };`},A.readHelper={name:"typescript:read",importName:"__read",scoped:!1,text:` - var __read = (this && this.__read) || function (o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); - } - catch (error) { e = { error: error }; } - finally { - try { - if (r && !r.done && (m = i["return"])) m.call(i); - } - finally { if (e) throw e.error; } - } - return ar; - };`},A.spreadArrayHelper={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:` - var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { - if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { - if (ar || !(i in from)) { - if (!ar) ar = Array.prototype.slice.call(from, 0, i); - ar[i] = from[i]; - } - } - return to.concat(ar || Array.prototype.slice.call(from)); - };`},A.valuesHelper={name:"typescript:values",importName:"__values",scoped:!1,text:` - var __values = (this && this.__values) || function(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) return m.call(o); - if (o && typeof o.length === "number") return { - next: function () { - if (o && i >= o.length) o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); - };`},A.generatorHelper={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:` - var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (g && (g = 0, op[0] && (_ = 0)), _) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } - };`},A.createBindingHelper={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:` - var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); - }) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; - }));`},A.setModuleDefaultHelper={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:` - var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - }) : function(o, v) { - o["default"] = v; - });`},A.importStarHelper={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[A.createBindingHelper,A.setModuleDefaultHelper],priority:2,text:` - var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; - };`},A.importDefaultHelper={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:` - var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; - };`},A.exportStarHelper={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[A.createBindingHelper],priority:2,text:` - var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); - };`},A.classPrivateFieldGetHelper={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:` - var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) { - if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); - if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); - return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); - };`},A.classPrivateFieldSetHelper={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:` - var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) { - if (kind === "m") throw new TypeError("Private method is not writable"); - if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); - if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); - return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value; - };`},A.classPrivateFieldInHelper={name:"typescript:classPrivateFieldIn",importName:"__classPrivateFieldIn",scoped:!1,text:` - var __classPrivateFieldIn = (this && this.__classPrivateFieldIn) || function(state, receiver) { - if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object"); - return typeof state === "function" ? receiver === state : state.has(receiver); - };`};var o;function s(){return o||(o=A.arrayToMap([A.decorateHelper,A.metadataHelper,A.paramHelper,A.assignHelper,A.awaitHelper,A.asyncGeneratorHelper,A.asyncDelegator,A.asyncValues,A.restHelper,A.awaiterHelper,A.extendsHelper,A.templateObjectHelper,A.spreadArrayHelper,A.valuesHelper,A.readHelper,A.generatorHelper,A.importStarHelper,A.importDefaultHelper,A.exportStarHelper,A.classPrivateFieldGetHelper,A.classPrivateFieldSetHelper,A.classPrivateFieldInHelper,A.createBindingHelper,A.setModuleDefaultHelper],function(E){return E.name}))}A.getAllUnscopedEmitHelpers=s,A.asyncSuperHelper={name:"typescript:async-super",scoped:!0,text:i(vIe([` - const `," = name => super[name];"],[` - const `," = name => super[name];"]),"_superIndex")},A.advancedAsyncSuperHelper={name:"typescript:advanced-async-super",scoped:!0,text:i(vIe([` - const `,` = (function (geti, seti) { - const cache = Object.create(null); - return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } }); - })(name => super[name], (name, value) => super[name] = value);`],[` - const `,` = (function (geti, seti) { - const cache = Object.create(null); - return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } }); - })(name => super[name], (name, value) => super[name] = value);`]),"_superIndex")};function g(E,p){return A.isCallExpression(E)&&A.isIdentifier(E.expression)&&(A.getEmitFlags(E.expression)&4096)!==0&&E.expression.escapedText===p}A.isCallToHelper=g})(Oe||(Oe={}));var Oe;(function(A){function r(qe){return qe.kind===8}A.isNumericLiteral=r;function t(qe){return qe.kind===9}A.isBigIntLiteral=t;function i(qe){return qe.kind===10}A.isStringLiteral=i;function o(qe){return qe.kind===11}A.isJsxText=o;function s(qe){return qe.kind===13}A.isRegularExpressionLiteral=s;function g(qe){return qe.kind===14}A.isNoSubstitutionTemplateLiteral=g;function E(qe){return qe.kind===15}A.isTemplateHead=E;function p(qe){return qe.kind===16}A.isTemplateMiddle=p;function B(qe){return qe.kind===17}A.isTemplateTail=B;function m(qe){return qe.kind===25}A.isDotDotDotToken=m;function _(qe){return qe.kind===27}A.isCommaToken=_;function x(qe){return qe.kind===39}A.isPlusToken=x;function O(qe){return qe.kind===40}A.isMinusToken=O;function k(qe){return qe.kind===41}A.isAsteriskToken=k;function P(qe){return qe.kind===53}A.isExclamationToken=P;function H(qe){return qe.kind===57}A.isQuestionToken=H;function T(qe){return qe.kind===58}A.isColonToken=T;function v(qe){return qe.kind===28}A.isQuestionDotToken=v;function F(qe){return qe.kind===38}A.isEqualsGreaterThanToken=F;function y(qe){return qe.kind===79}A.isIdentifier=y;function S(qe){return qe.kind===80}A.isPrivateIdentifier=S;function U(qe){return qe.kind===93}A.isExportModifier=U;function V(qe){return qe.kind===132}A.isAsyncModifier=V;function wA(qe){return qe.kind===129}A.isAssertsKeyword=wA;function IA(qe){return qe.kind===133}A.isAwaitKeyword=IA;function pA(qe){return qe.kind===146}A.isReadonlyKeyword=pA;function oA(qe){return qe.kind===124}A.isStaticModifier=oA;function cA(qe){return qe.kind===126}A.isAbstractModifier=cA;function eA(qe){return qe.kind===161}A.isOverrideModifier=eA;function Y(qe){return qe.kind===127}A.isAccessorModifier=Y;function q(qe){return qe.kind===106}A.isSuperKeyword=q;function X(qe){return qe.kind===100}A.isImportKeyword=X;function Z(qe){return qe.kind===163}A.isQualifiedName=Z;function K(qe){return qe.kind===164}A.isComputedPropertyName=K;function J(qe){return qe.kind===165}A.isTypeParameterDeclaration=J;function sA(qe){return qe.kind===166}A.isParameter=sA;function uA(qe){return qe.kind===167}A.isDecorator=uA;function BA(qe){return qe.kind===168}A.isPropertySignature=BA;function CA(qe){return qe.kind===169}A.isPropertyDeclaration=CA;function z(qe){return qe.kind===170}A.isMethodSignature=z;function AA(qe){return qe.kind===171}A.isMethodDeclaration=AA;function iA(qe){return qe.kind===172}A.isClassStaticBlockDeclaration=iA;function _A(qe){return qe.kind===173}A.isConstructorDeclaration=_A;function fA(qe){return qe.kind===174}A.isGetAccessorDeclaration=fA;function M(qe){return qe.kind===175}A.isSetAccessorDeclaration=M;function aA(qe){return qe.kind===176}A.isCallSignatureDeclaration=aA;function gA(qe){return qe.kind===177}A.isConstructSignatureDeclaration=gA;function QA(qe){return qe.kind===178}A.isIndexSignatureDeclaration=QA;function mA(qe){return qe.kind===179}A.isTypePredicateNode=mA;function FA(qe){return qe.kind===180}A.isTypeReferenceNode=FA;function SA(qe){return qe.kind===181}A.isFunctionTypeNode=SA;function ce(qe){return qe.kind===182}A.isConstructorTypeNode=ce;function re(qe){return qe.kind===183}A.isTypeQueryNode=re;function KA(qe){return qe.kind===184}A.isTypeLiteralNode=KA;function $A(qe){return qe.kind===185}A.isArrayTypeNode=$A;function jA(qe){return qe.kind===186}A.isTupleTypeNode=jA;function ue(qe){return qe.kind===199}A.isNamedTupleMember=ue;function MA(qe){return qe.kind===187}A.isOptionalTypeNode=MA;function RA(qe){return qe.kind===188}A.isRestTypeNode=RA;function lA(qe){return qe.kind===189}A.isUnionTypeNode=lA;function tA(qe){return qe.kind===190}A.isIntersectionTypeNode=tA;function N(qe){return qe.kind===191}A.isConditionalTypeNode=N;function nA(qe){return qe.kind===192}A.isInferTypeNode=nA;function kA(qe){return qe.kind===193}A.isParenthesizedTypeNode=kA;function bA(qe){return qe.kind===194}A.isThisTypeNode=bA;function TA(qe){return qe.kind===195}A.isTypeOperatorNode=TA;function VA(qe){return qe.kind===196}A.isIndexedAccessTypeNode=VA;function De(qe){return qe.kind===197}A.isMappedTypeNode=De;function _e(qe){return qe.kind===198}A.isLiteralTypeNode=_e;function Ae(qe){return qe.kind===202}A.isImportTypeNode=Ae;function Q(qe){return qe.kind===201}A.isTemplateLiteralTypeSpan=Q;function Ze(qe){return qe.kind===200}A.isTemplateLiteralTypeNode=Ze;function Cr(qe){return qe.kind===203}A.isObjectBindingPattern=Cr;function be(qe){return qe.kind===204}A.isArrayBindingPattern=be;function Me(qe){return qe.kind===205}A.isBindingElement=Me;function Le(qe){return qe.kind===206}A.isArrayLiteralExpression=Le;function ir(qe){return qe.kind===207}A.isObjectLiteralExpression=ir;function Ye(qe){return qe.kind===208}A.isPropertyAccessExpression=Ye;function mr(qe){return qe.kind===209}A.isElementAccessExpression=mr;function $e(qe){return qe.kind===210}A.isCallExpression=$e;function xr(qe){return qe.kind===211}A.isNewExpression=xr;function PA(qe){return qe.kind===212}A.isTaggedTemplateExpression=PA;function we(qe){return qe.kind===213}A.isTypeAssertionExpression=we;function LA(qe){return qe.kind===214}A.isParenthesizedExpression=LA;function ae(qe){return qe.kind===215}A.isFunctionExpression=ae;function We(qe){return qe.kind===216}A.isArrowFunction=We;function YA(qe){return qe.kind===217}A.isDeleteExpression=YA;function Ce(qe){return qe.kind===218}A.isTypeOfExpression=Ce;function Ke(qe){return qe.kind===219}A.isVoidExpression=Ke;function er(qe){return qe.kind===220}A.isAwaitExpression=er;function ur(qe){return qe.kind===221}A.isPrefixUnaryExpression=ur;function hr(qe){return qe.kind===222}A.isPostfixUnaryExpression=hr;function Fr(qe){return qe.kind===223}A.isBinaryExpression=Fr;function qA(qe){return qe.kind===224}A.isConditionalExpression=qA;function oe(qe){return qe.kind===225}A.isTemplateExpression=oe;function Ge(qe){return qe.kind===226}A.isYieldExpression=Ge;function nr(qe){return qe.kind===227}A.isSpreadElement=nr;function Or(qe){return qe.kind===228}A.isClassExpression=Or;function tr(qe){return qe.kind===229}A.isOmittedExpression=tr;function Ur(qe){return qe.kind===230}A.isExpressionWithTypeArguments=Ur;function nt(qe){return qe.kind===231}A.isAsExpression=nt;function ke(qe){return qe.kind===235}A.isSatisfiesExpression=ke;function Je(qe){return qe.kind===232}A.isNonNullExpression=Je;function Ar(qe){return qe.kind===233}A.isMetaProperty=Ar;function fr(qe){return qe.kind===234}A.isSyntheticExpression=fr;function te(qe){return qe.kind===353}A.isPartiallyEmittedExpression=te;function Te(qe){return qe.kind===354}A.isCommaListExpression=Te;function UA(qe){return qe.kind===236}A.isTemplateSpan=UA;function Ee(qe){return qe.kind===237}A.isSemicolonClassElement=Ee;function de(qe){return qe.kind===238}A.isBlock=de;function HA(qe){return qe.kind===240}A.isVariableStatement=HA;function pe(qe){return qe.kind===239}A.isEmptyStatement=pe;function ee(qe){return qe.kind===241}A.isExpressionStatement=ee;function Pe(qe){return qe.kind===242}A.isIfStatement=Pe;function He(qe){return qe.kind===243}A.isDoStatement=He;function Xe(qe){return qe.kind===244}A.isWhileStatement=Xe;function or(qe){return qe.kind===245}A.isForStatement=or;function Mr(qe){return qe.kind===246}A.isForInStatement=Mr;function ar(qe){return qe.kind===247}A.isForOfStatement=ar;function lt(qe){return qe.kind===248}A.isContinueStatement=lt;function Lr(qe){return qe.kind===249}A.isBreakStatement=Lr;function gt(qe){return qe.kind===250}A.isReturnStatement=gt;function Pr(qe){return qe.kind===251}A.isWithStatement=Pr;function Et(qe){return qe.kind===252}A.isSwitchStatement=Et;function Zt(qe){return qe.kind===253}A.isLabeledStatement=Zt;function Ot(qe){return qe.kind===254}A.isThrowStatement=Ot;function _i(qe){return qe.kind===255}A.isTryStatement=_i;function ei(qe){return qe.kind===256}A.isDebuggerStatement=ei;function Yt(qe){return qe.kind===257}A.isVariableDeclaration=Yt;function Xr(qe){return qe.kind===258}A.isVariableDeclarationList=Xr;function JA(qe){return qe.kind===259}A.isFunctionDeclaration=JA;function Ve(qe){return qe.kind===260}A.isClassDeclaration=Ve;function XA(qe){return qe.kind===261}A.isInterfaceDeclaration=XA;function Gr(qe){return qe.kind===262}A.isTypeAliasDeclaration=Gr;function ot(qe){return qe.kind===263}A.isEnumDeclaration=ot;function Sr(qe){return qe.kind===264}A.isModuleDeclaration=Sr;function Dr(qe){return qe.kind===265}A.isModuleBlock=Dr;function Jr(qe){return qe.kind===266}A.isCaseBlock=Jr;function Yr(qe){return qe.kind===267}A.isNamespaceExportDeclaration=Yr;function rt(qe){return qe.kind===268}A.isImportEqualsDeclaration=rt;function Bt(qe){return qe.kind===269}A.isImportDeclaration=Bt;function le(qe){return qe.kind===270}A.isImportClause=le;function Ir(qe){return qe.kind===298}A.isImportTypeAssertionContainer=Ir;function ut(qe){return qe.kind===296}A.isAssertClause=ut;function Ii(qe){return qe.kind===297}A.isAssertEntry=Ii;function Zi(qe){return qe.kind===271}A.isNamespaceImport=Zi;function yi(qe){return qe.kind===277}A.isNamespaceExport=yi;function zt(qe){return qe.kind===272}A.isNamedImports=zt;function cn(qe){return qe.kind===273}A.isImportSpecifier=cn;function Ui(qe){return qe.kind===274}A.isExportAssignment=Ui;function Mi(qe){return qe.kind===275}A.isExportDeclaration=Mi;function yt(qe){return qe.kind===276}A.isNamedExports=yt;function Ya(qe){return qe.kind===278}A.isExportSpecifier=Ya;function Wn(qe){return qe.kind===279}A.isMissingDeclaration=Wn;function jn(qe){return qe.kind===352}A.isNotEmittedStatement=jn;function Ho(qe){return qe.kind===357}A.isSyntheticReference=Ho;function _a(qe){return qe.kind===355}A.isMergeDeclarationMarker=_a;function yo(qe){return qe.kind===356}A.isEndOfDeclarationMarker=yo;function va(qe){return qe.kind===280}A.isExternalModuleReference=va;function wi(qe){return qe.kind===281}A.isJsxElement=wi;function bi(qe){return qe.kind===282}A.isJsxSelfClosingElement=bi;function ao(qe){return qe.kind===283}A.isJsxOpeningElement=ao;function Bo(qe){return qe.kind===284}A.isJsxClosingElement=Bo;function Uo(qe){return qe.kind===285}A.isJsxFragment=Uo;function oo(qe){return qe.kind===286}A.isJsxOpeningFragment=oo;function Xo(qe){return qe.kind===287}A.isJsxClosingFragment=Xo;function Bs(qe){return qe.kind===288}A.isJsxAttribute=Bs;function hs(qe){return qe.kind===289}A.isJsxAttributes=hs;function Va(qe){return qe.kind===290}A.isJsxSpreadAttribute=Va;function xe(qe){return qe.kind===291}A.isJsxExpression=xe;function ze(qe){return qe.kind===292}A.isCaseClause=ze;function Lt(qe){return qe.kind===293}A.isDefaultClause=Lt;function en(qe){return qe.kind===294}A.isHeritageClause=en;function hn(qe){return qe.kind===295}A.isCatchClause=hn;function Ia(qe){return qe.kind===299}A.isPropertyAssignment=Ia;function ne(qe){return qe.kind===300}A.isShorthandPropertyAssignment=ne;function _r(qe){return qe.kind===301}A.isSpreadAssignment=_r;function qr(qe){return qe.kind===302}A.isEnumMember=qr;function $r(qe){return qe.kind===304}A.isUnparsedPrepend=$r;function ie(qe){return qe.kind===308}A.isSourceFile=ie;function ye(qe){return qe.kind===309}A.isBundle=ye;function Re(qe){return qe.kind===310}A.isUnparsedSource=Re;function rr(qe){return qe.kind===312}A.isJSDocTypeExpression=rr;function zr(qe){return qe.kind===313}A.isJSDocNameReference=zr;function Ft(qe){return qe.kind===314}A.isJSDocMemberName=Ft;function Gt(qe){return qe.kind===327}A.isJSDocLink=Gt;function Tt(qe){return qe.kind===328}A.isJSDocLinkCode=Tt;function gn(qe){return qe.kind===329}A.isJSDocLinkPlain=gn;function kn(qe){return qe.kind===315}A.isJSDocAllType=kn;function ra(qe){return qe.kind===316}A.isJSDocUnknownType=ra;function Vn(qe){return qe.kind===317}A.isJSDocNullableType=Vn;function ba(qe){return qe.kind===318}A.isJSDocNonNullableType=ba;function Ts(qe){return qe.kind===319}A.isJSDocOptionalType=Ts;function Qs(qe){return qe.kind===320}A.isJSDocFunctionType=Qs;function Gs(qe){return qe.kind===321}A.isJSDocVariadicType=Gs;function Vc(qe){return qe.kind===322}A.isJSDocNamepathType=Vc;function $s(qe){return qe.kind===323}A.isJSDoc=$s;function ys(qe){return qe.kind===325}A.isJSDocTypeLiteral=ys;function zc(qe){return qe.kind===326}A.isJSDocSignature=zc;function Rc(qe){return qe.kind===331}A.isJSDocAugmentsTag=Rc;function _l(qe){return qe.kind===333}A.isJSDocAuthorTag=_l;function Bc(qe){return qe.kind===335}A.isJSDocClassTag=Bc;function sl(qe){return qe.kind===341}A.isJSDocCallbackTag=sl;function ms(qe){return qe.kind===336}A.isJSDocPublicTag=ms;function kl(qe){return qe.kind===337}A.isJSDocPrivateTag=kl;function bs(qe){return qe.kind===338}A.isJSDocProtectedTag=bs;function Tc(qe){return qe.kind===339}A.isJSDocReadonlyTag=Tc;function xs(qe){return qe.kind===340}A.isJSDocOverrideTag=xs;function yA(qe){return qe.kind===334}A.isJSDocDeprecatedTag=yA;function je(qe){return qe.kind===349}A.isJSDocSeeTag=je;function br(qe){return qe.kind===342}A.isJSDocEnumTag=br;function mt(qe){return qe.kind===343}A.isJSDocParameterTag=mt;function ai(qe){return qe.kind===344}A.isJSDocReturnTag=ai;function Pi(qe){return qe.kind===345}A.isJSDocThisTag=Pi;function Bi(qe){return qe.kind===346}A.isJSDocTypeTag=Bi;function ji(qe){return qe.kind===347}A.isJSDocTemplateTag=ji;function Fn(qe){return qe.kind===348}A.isJSDocTypedefTag=Fn;function vn(qe){return qe.kind===330}A.isJSDocUnknownTag=vn;function aa(qe){return qe.kind===350}A.isJSDocPropertyTag=aa;function se(qe){return qe.kind===332}A.isJSDocImplementsTag=se;function jr(qe){return qe.kind===351}A.isSyntaxList=jr})(Oe||(Oe={}));var Oe;(function(A){function r(LA){return LA.createExportDeclaration(void 0,!1,LA.createNamedExports([]),void 0)}A.createEmptyExports=r;function t(LA,ae,We,YA){if(A.isComputedPropertyName(We))return A.setTextRange(LA.createElementAccessExpression(ae,We.expression),YA);var Ce=A.setTextRange(A.isMemberName(We)?LA.createPropertyAccessExpression(ae,We):LA.createElementAccessExpression(ae,We),We);return A.getOrCreateEmitNode(Ce).flags|=64,Ce}A.createMemberAccessForPropertyName=t;function i(LA,ae){var We=A.parseNodeFactory.createIdentifier(LA||"React");return A.setParent(We,A.getParseTreeNode(ae)),We}function o(LA,ae,We){if(A.isQualifiedName(ae)){var YA=o(LA,ae.left,We),Ce=LA.createIdentifier(A.idText(ae.right));return Ce.escapedText=ae.right.escapedText,LA.createPropertyAccessExpression(YA,Ce)}else return i(A.idText(ae),We)}function s(LA,ae,We,YA){return ae?o(LA,ae,YA):LA.createPropertyAccessExpression(i(We,YA),"createElement")}A.createJsxFactoryExpression=s;function g(LA,ae,We,YA){return ae?o(LA,ae,YA):LA.createPropertyAccessExpression(i(We,YA),"Fragment")}function E(LA,ae,We,YA,Ce,Ke){var er=[We];if(YA&&er.push(YA),Ce&&Ce.length>0)if(YA||er.push(LA.createNull()),Ce.length>1)for(var ur=0,hr=Ce;ur0)if(Ce.length>1)for(var Fr=0,qA=Ce;Fr=A.ModuleKind.ES2015&&hr<=A.ModuleKind.ESNext||We.impliedNodeFormat===A.ModuleKind.ESNext){var Fr=A.getEmitHelpers(We);if(Fr){for(var qA=[],oe=0,Ge=Fr;oe0?Or[oe-1]:void 0;return A.Debug.assertEqual(Ge[oe],ae),Or[oe]=qA.onEnter(nr[oe],nt,Ur),Ge[oe]=ur(qA,ae),oe}LA.enter=ae;function We(qA,oe,Ge,nr,Or,tr,Ur){A.Debug.assertEqual(Ge[oe],We),A.Debug.assertIsDefined(qA.onLeft),Ge[oe]=ur(qA,We);var nt=qA.onLeft(nr[oe].left,Or[oe],nr[oe]);return nt?(Fr(oe,nr,nt),hr(oe,Ge,nr,Or,nt)):oe}LA.left=We;function YA(qA,oe,Ge,nr,Or,tr,Ur){return A.Debug.assertEqual(Ge[oe],YA),A.Debug.assertIsDefined(qA.onOperator),Ge[oe]=ur(qA,YA),qA.onOperator(nr[oe].operatorToken,Or[oe],nr[oe]),oe}LA.operator=YA;function Ce(qA,oe,Ge,nr,Or,tr,Ur){A.Debug.assertEqual(Ge[oe],Ce),A.Debug.assertIsDefined(qA.onRight),Ge[oe]=ur(qA,Ce);var nt=qA.onRight(nr[oe].right,Or[oe],nr[oe]);return nt?(Fr(oe,nr,nt),hr(oe,Ge,nr,Or,nt)):oe}LA.right=Ce;function Ke(qA,oe,Ge,nr,Or,tr,Ur){A.Debug.assertEqual(Ge[oe],Ke),Ge[oe]=ur(qA,Ke);var nt=qA.onExit(nr[oe],Or[oe]);if(oe>0){if(oe--,qA.foldState){var ke=Ge[oe]===Ke?"right":"left";Or[oe]=qA.foldState(Or[oe],nt,ke)}}else tr.value=nt;return oe}LA.exit=Ke;function er(qA,oe,Ge,nr,Or,tr,Ur){return A.Debug.assertEqual(Ge[oe],er),oe}LA.done=er;function ur(qA,oe){switch(oe){case ae:if(qA.onLeft)return We;case We:if(qA.onOperator)return YA;case YA:if(qA.onRight)return Ce;case Ce:return Ke;case Ke:return er;case er:return er;default:A.Debug.fail("Invalid state")}}LA.nextState=ur;function hr(qA,oe,Ge,nr,Or){return qA++,oe[qA]=ae,Ge[qA]=Or,nr[qA]=void 0,qA}function Fr(qA,oe,Ge){if(A.Debug.shouldAssert(2))for(;qA>=0;)A.Debug.assert(oe[qA]!==Ge,"Circular traversal detected."),qA--}})(Ze||(Ze={}));var Cr=function(){function LA(ae,We,YA,Ce,Ke,er){this.onEnter=ae,this.onLeft=We,this.onOperator=YA,this.onRight=Ce,this.onExit=Ke,this.foldState=er}return LA}();function be(LA,ae,We,YA,Ce,Ke){var er=new Cr(LA,ae,We,YA,Ce,Ke);return ur;function ur(hr,Fr){for(var qA={value:void 0},oe=[Ze.enter],Ge=[hr],nr=[void 0],Or=0;oe[Or]!==Ze.done;)Or=oe[Or](er,Or,oe,Ge,nr,qA,Fr);return A.Debug.assertEqual(Or,0),qA.value}}A.createBinaryExpressionTrampoline=be;function Me(LA,ae){if(ae!==void 0)return ae.length===0?ae:A.setTextRange(LA.createNodeArray([],ae.hasTrailingComma),ae)}A.elideNodes=Me;function Le(LA){if(LA.autoGenerateFlags&4){for(var ae=LA.autoGenerateId,We=LA,YA=We.original;YA&&(We=YA,!(A.isMemberName(We)&&We.autoGenerateFlags&4&&We.autoGenerateId!==ae));)YA=We.original;return We}return LA}A.getNodeForGeneratedName=Le;function ir(LA,ae){return typeof LA=="object"?$e(!1,LA.prefix,LA.node,LA.suffix,ae):typeof LA=="string"?LA.length>0&&LA.charCodeAt(0)===35?LA.slice(1):LA:""}A.formatGeneratedNamePart=ir;function Ye(LA,ae){return typeof LA=="string"?LA:mr(LA,A.Debug.checkDefined(ae))}function mr(LA,ae){return A.isGeneratedPrivateIdentifier(LA)?ae(LA).slice(1):A.isGeneratedIdentifier(LA)?ae(LA):A.isPrivateIdentifier(LA)?LA.escapedText.slice(1):A.idText(LA)}function $e(LA,ae,We,YA,Ce){return ae=ir(ae,Ce),YA=ir(YA,Ce),We=Ye(We,Ce),"".concat(LA?"#":"").concat(ae).concat(We).concat(YA)}A.formatGeneratedName=$e;function xr(LA,ae,We,YA){return LA.updatePropertyDeclaration(ae,We,LA.getGeneratedPrivateNameForNode(ae.name,void 0,"_accessor_storage"),void 0,void 0,YA)}A.createAccessorPropertyBackingField=xr;function PA(LA,ae,We,YA){return LA.createGetAccessorDeclaration(We,YA,[],void 0,LA.createBlock([LA.createReturnStatement(LA.createPropertyAccessExpression(LA.createThis(),LA.getGeneratedPrivateNameForNode(ae.name,void 0,"_accessor_storage")))]))}A.createAccessorPropertyGetRedirector=PA;function we(LA,ae,We,YA){return LA.createSetAccessorDeclaration(We,YA,[LA.createParameterDeclaration(void 0,void 0,"value")],LA.createBlock([LA.createExpressionStatement(LA.createAssignment(LA.createPropertyAccessExpression(LA.createThis(),LA.getGeneratedPrivateNameForNode(ae.name,void 0,"_accessor_storage")),LA.createIdentifier("value")))]))}A.createAccessorPropertySetRedirector=we})(Oe||(Oe={}));var Oe;(function(A){function r(o,s){return s?A.setTextRangePosEnd(o,s.pos,s.end):o}A.setTextRange=r;function t(o){var s=o.kind;return s===165||s===166||s===168||s===169||s===170||s===171||s===173||s===174||s===175||s===178||s===182||s===215||s===216||s===228||s===240||s===259||s===260||s===261||s===262||s===263||s===264||s===268||s===269||s===274||s===275}A.canHaveModifiers=t;function i(o){var s=o.kind;return s===166||s===169||s===171||s===174||s===175||s===228||s===260}A.canHaveDecorators=i})(Oe||(Oe={}));var Oe;(function(A){var r,t;(function(tA){tA[tA.None=0]="None",tA[tA.Yield=1]="Yield",tA[tA.Await=2]="Await",tA[tA.Type=4]="Type",tA[tA.IgnoreMissingOpenBrace=16]="IgnoreMissingOpenBrace",tA[tA.JSDoc=32]="JSDoc"})(t||(t={}));var i;(function(tA){tA[tA.TryParse=0]="TryParse",tA[tA.Lookahead=1]="Lookahead",tA[tA.Reparse=2]="Reparse"})(i||(i={}));var o,s,g,E,p;A.parseBaseNodeFactory={createBaseSourceFileNode:function(tA){return new(p||(p=A.objectAllocator.getSourceFileConstructor()))(tA,-1,-1)},createBaseIdentifierNode:function(tA){return new(g||(g=A.objectAllocator.getIdentifierConstructor()))(tA,-1,-1)},createBasePrivateIdentifierNode:function(tA){return new(E||(E=A.objectAllocator.getPrivateIdentifierConstructor()))(tA,-1,-1)},createBaseTokenNode:function(tA){return new(s||(s=A.objectAllocator.getTokenConstructor()))(tA,-1,-1)},createBaseNode:function(tA){return new(o||(o=A.objectAllocator.getNodeConstructor()))(tA,-1,-1)}},A.parseNodeFactory=A.createNodeFactory(1,A.parseBaseNodeFactory);function B(tA,N){return N&&tA(N)}function m(tA,N,nA){if(nA){if(N)return N(nA);for(var kA=0,bA=nA;kA=0;--_e)kA.push(TA[_e]),bA.push(VA)}else{var De=N(TA,VA);if(De){if(De==="skip")continue;return De}if(TA.kind>=163)for(var Ae=0,Q=BA(TA);Ae=ic.pos}),tu=ws>=0?A.findIndex(ct,function(Ll){return Ll.start>=Zc.pos},ws):-1;ws>=0&&A.addRange(Ye,ct,ws,tu>=0?tu:void 0),yi(function(){var Ll=Ce;for(Ce|=32768,N.setTextPos(Zc.pos),Sr();XA()!==1;){var bc=N.getStartPos(),Cl=kl(0,so);if(Rr.push(Cl),bc===N.getStartPos()&&Sr(),Mt>=0){var Xu=ZA.statements[Mt];if(Cl.end===Xu.pos)break;Cl.end>Xu.pos&&(Mt=Eo(ZA.statements,Mt+1))}}Ce=Ll},2),Ni=Mt>=0?Io(ZA.statements,Mt):-1};Ni!==-1;)$i();if(Mt>=0){var tn=ZA.statements[Mt];A.addRange(Rr,ZA.statements,Mt);var wn=A.findIndex(ct,function(ic){return ic.start>=tn.pos});wn>=0&&A.addRange(Ye,ct,wn)}return $e=Se,Q.updateSourceFile(ZA,A.setTextRange(Q.createNodeArray(Rr),ZA.statements));function ka(ic){return!(ic.flags&32768)&&!!(ic.transformFlags&67108864)}function Io(ic,Zc){for(var ws=Zc;ws116}function Mi(){return XA()===79?!0:XA()===125&&Lr()||XA()===133&&Zt()?!1:XA()>116}function yt(ZA,Se,Er){return Er===void 0&&(Er=!0),XA()===ZA?(Er&&Sr(),!0):(Se?Ot(Se):Ot(A.Diagnostics._0_expected,A.tokenToString(ZA)),!1)}var Ya=Object.keys(A.textToKeywordObj).filter(function(ZA){return ZA.length>2});function Wn(ZA){var Se;if(A.isTaggedTemplateExpression(ZA)){ei(A.skipTrivia(be,ZA.template.pos),ZA.template.end,A.Diagnostics.Module_declaration_names_may_only_use_or_quoted_strings);return}var Er=A.isIdentifier(ZA)?A.idText(ZA):void 0;if(!Er||!A.isIdentifierText(Er,Me)){Ot(A.Diagnostics._0_expected,A.tokenToString(26));return}var Rr=A.skipTrivia(be,ZA.pos);switch(Er){case"const":case"let":case"var":ei(Rr,ZA.end,A.Diagnostics.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":jn(A.Diagnostics.Interface_name_cannot_be_0,A.Diagnostics.Interface_must_be_given_a_name,18);return;case"is":ei(Rr,N.getTextPos(),A.Diagnostics.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":jn(A.Diagnostics.Namespace_name_cannot_be_0,A.Diagnostics.Namespace_must_be_given_a_name,18);return;case"type":jn(A.Diagnostics.Type_alias_name_cannot_be_0,A.Diagnostics.Type_alias_must_be_given_a_name,63);return}var ct=(Se=A.getSpellingSuggestion(Er,Ya,function(Mt){return Mt}))!==null&&Se!==void 0?Se:Ho(Er);if(ct){ei(Rr,ZA.end,A.Diagnostics.Unknown_keyword_or_identifier_Did_you_mean_0,ct);return}XA()!==0&&ei(Rr,ZA.end,A.Diagnostics.Unexpected_keyword_or_identifier)}function jn(ZA,Se,Er){XA()===Er?Ot(Se):Ot(ZA,N.getTokenValue())}function Ho(ZA){for(var Se=0,Er=Ya;SeRr.length+2&&A.startsWith(ZA,Rr))return"".concat(Rr," ").concat(ZA.slice(Rr.length))}}function _a(ZA,Se,Er){if(XA()===59&&!N.hasPrecedingLineBreak()){Ot(A.Diagnostics.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(XA()===20){Ot(A.Diagnostics.Cannot_start_a_function_call_in_a_type_annotation),Sr();return}if(Se&&!Bs()){Er?Ot(A.Diagnostics._0_expected,A.tokenToString(26)):Ot(A.Diagnostics.Expected_for_property_initializer);return}if(!hs()){if(Er){Ot(A.Diagnostics._0_expected,A.tokenToString(26));return}Wn(ZA)}}function yo(ZA){return XA()===ZA?(Dr(),!0):(Ot(A.Diagnostics._0_expected,A.tokenToString(ZA)),!1)}function va(ZA,Se,Er,Rr){if(XA()===Se){Sr();return}var ct=Ot(A.Diagnostics._0_expected,A.tokenToString(Se));Er&&ct&&A.addRelatedInfo(ct,A.createDetachedDiagnostic(Ze,Rr,1,A.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here,A.tokenToString(ZA),A.tokenToString(Se)))}function wi(ZA){return XA()===ZA?(Sr(),!0):!1}function bi(ZA){if(XA()===ZA)return oo()}function ao(ZA){if(XA()===ZA)return Xo()}function Bo(ZA,Se,Er){return bi(ZA)||Lt(ZA,!1,Se||A.Diagnostics._0_expected,Er||A.tokenToString(ZA))}function Uo(ZA){return ao(ZA)||Lt(ZA,!1,A.Diagnostics._0_expected,A.tokenToString(ZA))}function oo(){var ZA=JA(),Se=XA();return Sr(),ze(Q.createToken(Se),ZA)}function Xo(){var ZA=JA(),Se=XA();return Dr(),ze(Q.createToken(Se),ZA)}function Bs(){return XA()===26?!0:XA()===19||XA()===1||N.hasPrecedingLineBreak()}function hs(){return Bs()?(XA()===26&&Sr(),!0):!1}function Va(){return hs()||yt(26)}function xe(ZA,Se,Er,Rr){var ct=Q.createNodeArray(ZA,Rr);return A.setTextRangePosEnd(ct,Se,Er??N.getStartPos()),ct}function ze(ZA,Se,Er){return A.setTextRangePosEnd(ZA,Se,Er??N.getStartPos()),Ce&&(ZA.flags|=Ce),er&&(er=!1,ZA.flags|=131072),ZA}function Lt(ZA,Se,Er,Rr){Se?_i(N.getStartPos(),0,Er,Rr):Er&&Ot(Er,Rr);var ct=JA(),Mt=ZA===79?Q.createIdentifier("",void 0,void 0):A.isTemplateLiteralKind(ZA)?Q.createTemplateLiteralLikeNode(ZA,"","",void 0):ZA===8?Q.createNumericLiteral("",void 0):ZA===10?Q.createStringLiteral("",void 0):ZA===279?Q.createMissingDeclaration():Q.createToken(ZA);return ze(Mt,ct)}function en(ZA){var Se=we.get(ZA);return Se===void 0&&we.set(ZA,Se=ZA),Se}function hn(ZA,Se,Er){if(ZA){ae++;var Rr=JA(),ct=XA(),Mt=en(N.getTokenValue()),Ni=N.hasExtendedUnicodeEscape();return Gr(),ze(Q.createIdentifier(Mt,void 0,ct,Ni),Rr)}if(XA()===80)return Ot(Er||A.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),hn(!0);if(XA()===0&&N.tryScan(function(){return N.reScanInvalidIdentifier()===79}))return hn(!0);ae++;var $i=XA()===1,tn=N.isReservedWord(),wn=N.getTokenText(),ka=tn?A.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:A.Diagnostics.Identifier_expected;return Lt(79,$i,Se||ka,wn)}function Ia(ZA){return hn(Ui(),void 0,ZA)}function ne(ZA,Se){return hn(Mi(),ZA,Se)}function _r(ZA){return hn(A.tokenIsIdentifierOrKeyword(XA()),ZA)}function qr(){return A.tokenIsIdentifierOrKeyword(XA())||XA()===10||XA()===8}function $r(){return A.tokenIsIdentifierOrKeyword(XA())||XA()===10}function ie(ZA){if(XA()===10||XA()===8){var Se=ec();return Se.text=en(Se.text),Se}return ZA&&XA()===22?Re():XA()===80?zr():_r()}function ye(){return ie(!0)}function Re(){var ZA=JA();yt(22);var Se=de(cl);return yt(23),ze(Q.createComputedPropertyName(Se),ZA)}function rr(ZA){var Se=LA.get(ZA);return Se===void 0&&LA.set(ZA,Se=ZA),Se}function zr(){var ZA=JA(),Se=Q.createPrivateIdentifier(rr(N.getTokenValue()));return Sr(),ze(Se,ZA)}function Ft(ZA){return XA()===ZA&&cn(Tt)}function Gt(){return Sr(),N.hasPrecedingLineBreak()?!1:Vn()}function Tt(){switch(XA()){case 85:return Sr()===92;case 93:return Sr(),XA()===88?zt(ba):XA()===154?zt(kn):gn();case 88:return ba();case 127:case 124:case 137:case 151:return Sr(),Vn();default:return Gt()}}function gn(){return XA()!==41&&XA()!==128&&XA()!==18&&Vn()}function kn(){return Sr(),gn()}function ra(){return A.isModifierKind(XA())&&cn(Tt)}function Vn(){return XA()===22||XA()===18||XA()===41||XA()===25||qr()}function ba(){return Sr(),XA()===84||XA()===98||XA()===118||XA()===126&&zt(vd)||XA()===132&&zt(Eu)}function Ts(ZA,Se){var Er=bs(ZA);if(Er)return!0;switch(ZA){case 0:case 1:case 3:return!(XA()===26&&Se)&&Mp();case 2:return XA()===82||XA()===88;case 4:return zt(ta);case 5:return zt(IB)||XA()===26&&!Se;case 6:return XA()===22||qr();case 12:switch(XA()){case 22:case 41:case 25:case 24:return!0;default:return qr()}case 18:return qr();case 9:return XA()===22||XA()===25||qr();case 24:return $r();case 7:return XA()===18?zt(Qs):Se?Mi()&&!ys():Qd()&&!ys();case 8:return pg();case 10:return XA()===27||XA()===25||pg();case 19:return XA()===101||Mi();case 15:switch(XA()){case 27:case 24:return!0}case 11:return XA()===25||wl();case 16:return Cn(!1);case 17:return Cn(!0);case 20:case 21:return XA()===27||oE();case 22:return ft();case 23:return A.tokenIsIdentifierOrKeyword(XA());case 13:return A.tokenIsIdentifierOrKeyword(XA())||XA()===18;case 14:return!0}return A.Debug.fail("Non-exhaustive case in 'isListElement'.")}function Qs(){if(A.Debug.assert(XA()===18),Sr()===19){var ZA=Sr();return ZA===27||ZA===18||ZA===94||ZA===117}return!0}function Gs(){return Sr(),Mi()}function Vc(){return Sr(),A.tokenIsIdentifierOrKeyword(XA())}function $s(){return Sr(),A.tokenIsIdentifierOrKeywordOrGreaterThan(XA())}function ys(){return XA()===117||XA()===94?zt(zc):!1}function zc(){return Sr(),wl()}function Rc(){return Sr(),oE()}function _l(ZA){if(XA()===1)return!0;switch(ZA){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return XA()===19;case 3:return XA()===19||XA()===82||XA()===88;case 7:return XA()===18||XA()===94||XA()===117;case 8:return Bc();case 19:return XA()===31||XA()===20||XA()===18||XA()===94||XA()===117;case 11:return XA()===21||XA()===26;case 15:case 21:case 10:return XA()===23;case 17:case 16:case 18:return XA()===21||XA()===23;case 20:return XA()!==27;case 22:return XA()===18||XA()===19;case 13:return XA()===31||XA()===43;case 14:return XA()===29&&zt(Xd);default:return!1}}function Bc(){return!!(Bs()||QB(XA())||XA()===38)}function sl(){for(var ZA=0;ZA<25;ZA++)if(We&1<=0)}function se(ZA){return ZA===6?A.Diagnostics.An_enum_member_name_must_be_followed_by_a_or:void 0}function jr(){var ZA=xe([],JA());return ZA.isMissingList=!0,ZA}function qe(ZA){return!!ZA.isMissingList}function la(ZA,Se,Er,Rr){if(yt(Er)){var ct=aa(ZA,Se);return yt(Rr),ct}return jr()}function Ba(ZA,Se){for(var Er=JA(),Rr=ZA?_r(Se):ne(Se),ct=JA();wi(24);){if(XA()===29){Rr.jsdocDotPos=ct;break}ct=JA(),Rr=ze(Q.createQualifiedName(Rr,Ds(ZA,!1)),Er)}return Rr}function po(ZA,Se){return ze(Q.createQualifiedName(ZA,Se),ZA.pos)}function Ds(ZA,Se){if(N.hasPrecedingLineBreak()&&A.tokenIsIdentifierOrKeyword(XA())){var Er=zt(Op);if(Er)return Lt(79,!0,A.Diagnostics.Identifier_expected)}if(XA()===80){var Rr=zr();return Se?Rr:Lt(79,!0,A.Diagnostics.Identifier_expected)}return ZA?_r():ne()}function Ac(ZA){var Se=JA(),Er=[],Rr;do Rr=ho(ZA),Er.push(Rr);while(Rr.literal.kind===16);return xe(Er,Se)}function gc(ZA){var Se=JA();return ze(Q.createTemplateExpression(Nt(ZA),Ac(ZA)),Se)}function Xl(){var ZA=JA();return ze(Q.createTemplateLiteralType(Nt(!1),Nc()),ZA)}function Nc(){var ZA=JA(),Se=[],Er;do Er=Kc(),Se.push(Er);while(Er.literal.kind===16);return xe(Se,ZA)}function Kc(){var ZA=JA();return ze(Q.createTemplateLiteralTypeSpan(rc(),Zl(!1)),ZA)}function Zl(ZA){return XA()===19?(rt(ZA),Li()):Bo(17,A.Diagnostics._0_expected,A.tokenToString(19))}function ho(ZA){var Se=JA();return ze(Q.createTemplateSpan(de(cl),Zl(ZA)),Se)}function ec(){return Ea(XA())}function Nt(ZA){ZA&&Bt();var Se=Ea(XA());return A.Debug.assert(Se.kind===15,"Template head has wrong token kind"),Se}function Li(){var ZA=Ea(XA());return A.Debug.assert(ZA.kind===16||ZA.kind===17,"Template fragment has wrong token kind"),ZA}function mi(ZA){var Se=ZA===14||ZA===17,Er=N.getTokenText();return Er.substring(1,Er.length-(N.isUnterminated()?0:Se?1:2))}function Ea(ZA){var Se=JA(),Er=A.isTemplateLiteralKind(ZA)?Q.createTemplateLiteralLikeNode(ZA,N.getTokenValue(),mi(ZA),N.getTokenFlags()&2048):ZA===8?Q.createNumericLiteral(N.getTokenValue(),N.getNumericLiteralFlags()):ZA===10?Q.createStringLiteral(N.getTokenValue(),void 0,N.hasExtendedUnicodeEscape()):A.isLiteralKind(ZA)?Q.createLiteralLikeNode(ZA,N.getTokenValue()):A.Debug.fail();return N.hasExtendedUnicodeEscape()&&(Er.hasExtendedUnicodeEscape=!0),N.isUnterminated()&&(Er.isUnterminated=!0),Sr(),ze(Er,Se)}function Mo(){return Ba(!0,A.Diagnostics.Type_expected)}function es(){if(!N.hasPrecedingLineBreak()&&le()===29)return la(20,rc,29,31)}function Os(){var ZA=JA();return ze(Q.createTypeReferenceNode(Mo(),es()),ZA)}function _s(ZA){switch(ZA.kind){case 180:return A.nodeIsMissing(ZA.typeName);case 181:case 182:{var Se=ZA,Er=Se.parameters,Rr=Se.type;return qe(Er)||_s(Rr)}case 193:return _s(ZA.type);default:return!1}}function cr(ZA){return Sr(),ze(Q.createTypePredicateNode(void 0,ZA,rc()),ZA.pos)}function lr(){var ZA=JA();return Sr(),ze(Q.createThisTypeNode(),ZA)}function Zr(){var ZA=JA();return Sr(),ze(Q.createJSDocAllType(),ZA)}function xt(){var ZA=JA();return Sr(),ze(Q.createJSDocNonNullableType(dB(),!1),ZA)}function Wt(){var ZA=JA();return Sr(),XA()===27||XA()===19||XA()===21||XA()===31||XA()===63||XA()===51?ze(Q.createJSDocUnknownType(),ZA):ze(Q.createJSDocNullableType(rc(),!1),ZA)}function Kt(){var ZA=JA(),Se=Ve();if(zt(ru)){Sr();var Er=xA(36),Rr=qo(58,!1);return nr(ze(Q.createJSDocFunctionType(Er,Rr),ZA),Se)}return ze(Q.createTypeReferenceNode(_r(),void 0),ZA)}function Gi(){var ZA=JA(),Se;return(XA()===108||XA()===103)&&(Se=_r(),yt(58)),ze(Q.createParameterDeclaration(void 0,void 0,Se,void 0,di(),void 0),ZA)}function di(){N.setInJSDocType(!0);var ZA=JA();if(wi(142)){var Se=Q.createJSDocNamepathType(void 0);A:for(;;)switch(XA()){case 19:case 1:case 27:case 5:break A;default:Dr()}return N.setInJSDocType(!1),ze(Se,ZA)}var Er=wi(25),Rr=lh();return N.setInJSDocType(!1),Er&&(Rr=ze(Q.createJSDocVariadicType(Rr),ZA)),XA()===63?(Sr(),ze(Q.createJSDocOptionalType(Rr),ZA)):Rr}function Yi(){var ZA=JA();yt(112);var Se=Ba(!0),Er=N.hasPrecedingLineBreak()?void 0:kr();return ze(Q.createTypeQueryNode(Se,Er),ZA)}function ha(){var ZA=JA(),Se=fu(),Er=ne(),Rr,ct;wi(94)&&(oE()||!wl()?Rr=rc():ct=uE());var Mt=wi(63)?rc():void 0,Ni=Q.createTypeParameterDeclaration(Se,Er,Rr,Mt);return Ni.expression=ct,ze(Ni,ZA)}function Jn(){if(XA()===29)return la(19,ha,29,31)}function Cn(ZA){return XA()===25||pg()||A.isModifierKind(XA())||XA()===59||oE(!ZA)}function ja(ZA){var Se=Cu(A.Diagnostics.Private_identifiers_cannot_be_used_as_parameters);return A.getFullWidth(Se)===0&&!A.some(ZA)&&A.isModifierKind(XA())&&Sr(),Se}function qn(){return Ui()||XA()===22||XA()===18}function Qo(ZA){return Ms(ZA)}function lo(ZA){return Ms(ZA,!1)}function Ms(ZA,Se){Se===void 0&&(Se=!0);var Er=JA(),Rr=Ve(),ct=ZA?Xe(Cd):or(Cd);if(XA()===108){var Mt=Q.createParameterDeclaration(ct,void 0,hn(!0),void 0,$g(),void 0);return ct&&Yt(ct[0],A.Diagnostics.Decorators_may_not_be_applied_to_this_parameters),nr(ze(Mt,Er),Rr)}var Ni=Ke;Ke=!1;var $i=xg(ct,fu()),tn=bi(25);if(!(!Se&&!qn())){var wn=nr(ze(Q.createParameterDeclaration($i,tn,ja($i),bi(57),$g(),Gd()),Er),Rr);return Ke=Ni,wn}}function qo(ZA,Se){if(Ys(ZA,Se))return pe(lh)}function Ys(ZA,Se){return ZA===38?(yt(ZA),!0):wi(58)?!0:Se&&XA()===38?(Ot(A.Diagnostics._0_expected,A.tokenToString(58)),Sr(),!0):!1}function rs(ZA,Se){var Er=Lr(),Rr=Zt();fr(!!(ZA&1)),Te(!!(ZA&2));var ct=ZA&32?aa(17,Gi):aa(16,function(){return Se?Qo(Rr):lo(Rr)});return fr(Er),Te(Rr),ct}function xA(ZA){if(!yt(20))return jr();var Se=rs(ZA,!0);return yt(21),Se}function ve(){wi(27)||Va()}function Ue(ZA){var Se=JA(),Er=Ve();ZA===177&&yt(103);var Rr=Jn(),ct=xA(4),Mt=qo(58,!0);ve();var Ni=ZA===176?Q.createCallSignature(Rr,ct,Mt):Q.createConstructSignature(Rr,ct,Mt);return nr(ze(Ni,Se),Er)}function et(){return XA()===22&&zt(jt)}function jt(){if(Sr(),XA()===25||XA()===23)return!0;if(A.isModifierKind(XA())){if(Sr(),Mi())return!0}else if(Mi())Sr();else return!1;return XA()===58||XA()===27?!0:XA()!==57?!1:(Sr(),XA()===58||XA()===27||XA()===23)}function Ji(ZA,Se,Er,Rr){var ct=la(16,function(){return Qo(!1)},22,23),Mt=$g();ve();var Ni=Q.createIndexSignature(Rr,ct,Mt);return Ni.illegalDecorators=Er,nr(ze(Ni,ZA),Se)}function Dn(ZA,Se,Er){var Rr=ye(),ct=bi(57),Mt;if(XA()===20||XA()===29){var Ni=Jn(),$i=xA(4),tn=qo(58,!0);Mt=Q.createMethodSignature(Er,Rr,ct,Ni,$i,tn)}else{var tn=$g();Mt=Q.createPropertySignature(Er,Rr,ct,tn),XA()===63&&(Mt.initializer=Gd())}return ve(),nr(ze(Mt,ZA),Se)}function ta(){if(XA()===20||XA()===29||XA()===137||XA()===151)return!0;for(var ZA=!1;A.isModifierKind(XA());)ZA=!0,Sr();return XA()===22?!0:(qr()&&(ZA=!0,Sr()),ZA?XA()===20||XA()===29||XA()===57||XA()===58||XA()===27||Bs():!1)}function qa(){if(XA()===20||XA()===29)return Ue(176);if(XA()===103&&zt(ro))return Ue(177);var ZA=JA(),Se=Ve(),Er=fu();return Ft(137)?Gc(ZA,Se,void 0,Er,174,4):Ft(151)?Gc(ZA,Se,void 0,Er,175,4):et()?Ji(ZA,Se,void 0,Er):Dn(ZA,Se,Er)}function ro(){return Sr(),XA()===20||XA()===29}function Co(){return Sr()===24}function Ma(){switch(Sr()){case 20:case 29:case 24:return!0}return!1}function Wa(){var ZA=JA();return ze(Q.createTypeLiteralNode(gs()),ZA)}function gs(){var ZA;return yt(18)?(ZA=ms(4,qa),yt(19)):ZA=jr(),ZA}function ts(){return Sr(),XA()===39||XA()===40?Sr()===146:(XA()===146&&Sr(),XA()===22&&Gs()&&Sr()===101)}function Us(){var ZA=JA(),Se=_r();yt(101);var Er=rc();return ze(Q.createTypeParameterDeclaration(void 0,Se,Er,void 0),ZA)}function xl(){var ZA=JA();yt(18);var Se;(XA()===146||XA()===39||XA()===40)&&(Se=oo(),Se.kind!==146&&yt(146)),yt(22);var Er=Us(),Rr=wi(128)?rc():void 0;yt(23);var ct;(XA()===57||XA()===39||XA()===40)&&(ct=oo(),ct.kind!==57&&yt(57));var Mt=$g();Va();var Ni=ms(4,qa);return yt(19),ze(Q.createMappedTypeNode(Se,Er,Rr,ct,Mt,Ni),ZA)}function jo(){var ZA=JA();if(wi(25))return ze(Q.createRestTypeNode(rc()),ZA);var Se=rc();if(A.isJSDocNullableType(Se)&&Se.pos===Se.type.pos){var Er=Q.createOptionalTypeNode(Se.type);return A.setTextRange(Er,Se),Er.flags=Se.flags,Er}return Se}function Cc(){return Sr()===58||XA()===57&&Sr()===58}function Sf(){return XA()===25?A.tokenIsIdentifierOrKeyword(Sr())&&Cc():A.tokenIsIdentifierOrKeyword(XA())&&Cc()}function Ed(){if(zt(Sf)){var ZA=JA(),Se=Ve(),Er=bi(25),Rr=_r(),ct=bi(57);yt(58);var Mt=jo(),Ni=Q.createNamedTupleMember(Er,Rr,ct,Mt);return nr(ze(Ni,ZA),Se)}return jo()}function Pd(){var ZA=JA();return ze(Q.createTupleTypeNode(la(21,Ed,22,23)),ZA)}function pr(){var ZA=JA();yt(20);var Se=rc();return yt(21),ze(Q.createParenthesizedType(Se),ZA)}function fd(){var ZA;if(XA()===126){var Se=JA();Sr();var Er=ze(Q.createToken(126),Se);ZA=xe([Er],Se)}return ZA}function uu(){var ZA=JA(),Se=Ve(),Er=fd(),Rr=wi(103),ct=Jn(),Mt=xA(4),Ni=qo(38,!1),$i=Rr?Q.createConstructorTypeNode(Er,ct,Mt,Ni):Q.createFunctionTypeNode(ct,Mt,Ni);return Rr||($i.modifiers=Er),nr(ze($i,ZA),Se)}function Bd(){var ZA=oo();return XA()===24?void 0:ZA}function Zg(ZA){var Se=JA();ZA&&Sr();var Er=XA()===110||XA()===95||XA()===104?oo():Ea(XA());return ZA&&(Er=ze(Q.createPrefixUnaryExpression(40,Er),Se)),ze(Q.createLiteralTypeNode(Er),Se)}function vg(){return Sr(),XA()===100}function lg(){var ZA=JA(),Se=N.getTokenPos();yt(18);var Er=N.hasPrecedingLineBreak();yt(130),yt(58);var Rr=Rp(!0);if(!yt(19)){var ct=A.lastOrUndefined(Ye);ct&&ct.code===A.Diagnostics._0_expected.code&&A.addRelatedInfo(ct,A.createDetachedDiagnostic(Ze,Se,1,A.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return ze(Q.createImportTypeAssertionContainer(Rr,Er),ZA)}function ZE(){Cr|=2097152;var ZA=JA(),Se=wi(112);yt(100),yt(20);var Er=rc(),Rr;wi(27)&&(Rr=lg()),yt(21);var ct=wi(24)?Mo():void 0,Mt=es();return ze(Q.createImportTypeNode(Er,Rr,ct,Mt,Se),ZA)}function Za(){return Sr(),XA()===8||XA()===9}function dB(){switch(XA()){case 131:case 157:case 152:case 148:case 160:case 153:case 134:case 155:case 144:case 149:return cn(Bd)||Os();case 66:N.reScanAsteriskEqualsToken();case 41:return Zr();case 60:N.reScanQuestionToken();case 57:return Wt();case 98:return Kt();case 53:return xt();case 14:case 10:case 8:case 9:case 110:case 95:case 104:return Zg();case 40:return zt(Za)?Zg(!0):Os();case 114:return oo();case 108:{var ZA=lr();return XA()===140&&!N.hasPrecedingLineBreak()?cr(ZA):ZA}case 112:return zt(vg)?ZE():Yi();case 18:return zt(ts)?xl():Wa();case 22:return Pd();case 20:return pr();case 100:return ZE();case 129:return zt(Op)?$h():Os();case 15:return Xl();default:return Os()}}function oE(ZA){switch(XA()){case 131:case 157:case 152:case 148:case 160:case 134:case 146:case 153:case 156:case 114:case 155:case 104:case 108:case 112:case 144:case 18:case 22:case 29:case 51:case 50:case 103:case 10:case 8:case 9:case 110:case 95:case 149:case 41:case 57:case 53:case 25:case 138:case 100:case 129:case 14:case 15:return!0;case 98:return!ZA;case 40:return!ZA&&zt(Za);case 20:return!ZA&&zt(pB);default:return Mi()}}function pB(){return Sr(),XA()===21||Cn(!1)||oE()}function $E(){for(var ZA=JA(),Se=dB();!N.hasPrecedingLineBreak();)switch(XA()){case 53:Sr(),Se=ze(Q.createJSDocNonNullableType(Se,!0),ZA);break;case 57:if(zt(Rc))return Se;Sr(),Se=ze(Q.createJSDocNullableType(Se,!0),ZA);break;case 22:if(yt(22),oE()){var Er=rc();yt(23),Se=ze(Q.createIndexedAccessTypeNode(Se,Er),ZA)}else yt(23),Se=ze(Q.createArrayTypeNode(Se),ZA);break;default:return Se}return Se}function EB(ZA){var Se=JA();return yt(ZA),ze(Q.createTypeOperatorNode(ZA,Tr()),Se)}function Dp(){if(wi(94)){var ZA=ee(rc);if(Pr()||XA()!==57)return ZA}}function yg(){var ZA=JA(),Se=ne(),Er=cn(Dp),Rr=Q.createTypeParameterDeclaration(void 0,Se,Er);return ze(Rr,ZA)}function vu(){var ZA=JA();return yt(138),ze(Q.createInferTypeNode(yg()),ZA)}function Tr(){var ZA=XA();switch(ZA){case 141:case 156:case 146:return EB(ZA);case 138:return vu()}return pe($E)}function hd(ZA){if(fB()){var Se=uu(),Er=void 0;return A.isFunctionTypeNode(Se)?Er=ZA?A.Diagnostics.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:A.Diagnostics.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:Er=ZA?A.Diagnostics.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:A.Diagnostics.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,Yt(Se,Er),Se}}function Tn(ZA,Se,Er){var Rr=JA(),ct=ZA===51,Mt=wi(ZA),Ni=Mt&&hd(ct)||Se();if(XA()===ZA||Mt){for(var $i=[Ni];wi(ZA);)$i.push(hd(ct)||Se());Ni=ze(Er(xe($i,Rr)),Rr)}return Ni}function qi(){return Tn(50,Tr,Q.createIntersectionTypeNode)}function Ro(){return Tn(51,qi,Q.createUnionTypeNode)}function gu(){return Sr(),XA()===103}function fB(){return XA()===29||XA()===20&&zt(cE)?!0:XA()===103||XA()===126&&zt(gu)}function sE(){if(A.isModifierKind(XA())&&fu(),Mi()||XA()===108)return Sr(),!0;if(XA()===22||XA()===18){var ZA=Ye.length;return Cu(),ZA===Ye.length}return!1}function cE(){return Sr(),!!(XA()===21||XA()===25||sE()&&(XA()===58||XA()===27||XA()===57||XA()===63||XA()===21&&(Sr(),XA()===38)))}function lh(){var ZA=JA(),Se=Mi()&&cn(Hs),Er=rc();return Se?ze(Q.createTypePredicateNode(void 0,Se,Er),ZA):Er}function Hs(){var ZA=ne();if(XA()===140&&!N.hasPrecedingLineBreak())return Sr(),ZA}function $h(){var ZA=JA(),Se=Bo(129),Er=XA()===108?lr():ne(),Rr=wi(140)?rc():void 0;return ze(Q.createTypePredicateNode(Se,Er,Rr),ZA)}function rc(){if(Ce&40960)return UA(40960,rc);if(fB())return uu();var ZA=JA(),Se=Ro();if(!Pr()&&!N.hasPrecedingLineBreak()&&wi(94)){var Er=ee(rc);yt(57);var Rr=pe(rc);yt(58);var ct=pe(rc);return ze(Q.createConditionalTypeNode(Se,Er,Rr,ct),ZA)}return Se}function $g(){return wi(58)?rc():void 0}function Qd(){switch(XA()){case 108:case 106:case 104:case 110:case 95:case 8:case 9:case 10:case 14:case 15:case 20:case 22:case 18:case 98:case 84:case 103:case 43:case 68:case 79:return!0;case 100:return zt(Ma);default:return Mi()}}function wl(){if(Qd())return!0;switch(XA()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 45:case 46:case 29:case 133:case 125:case 80:return!0;default:return ef()?!0:Mi()}}function AQ(){return XA()!==18&&XA()!==98&&XA()!==84&&XA()!==59&&wl()}function cl(){var ZA=Et();ZA&&te(!1);for(var Se=JA(),Er=Hl(!0),Rr;Rr=bi(27);)Er=rf(Er,Rr,Hl(!0),Se);return ZA&&te(!0),Er}function Gd(){return wi(63)?Hl(!0):void 0}function Hl(ZA){if(md())return BB();var Se=eQ(ZA)||gh(ZA);if(Se)return Se;var Er=JA(),Rr=_p(0);return Rr.kind===79&&XA()===38?hB(Er,Rr,ZA,void 0):A.isLeftHandSideExpression(Rr)&&A.isAssignmentOperator(Jr())?rf(Rr,oo(),Hl(ZA),Er):Ig(Rr,Er,ZA)}function md(){return XA()===125?Lr()?!0:zt(dg):!1}function uh(){return Sr(),!N.hasPrecedingLineBreak()&&Mi()}function BB(){var ZA=JA();return Sr(),!N.hasPrecedingLineBreak()&&(XA()===41||wl())?ze(Q.createYieldExpression(bi(41),Hl(!0)),ZA):ze(Q.createYieldExpression(void 0,void 0),ZA)}function hB(ZA,Se,Er,Rr){A.Debug.assert(XA()===38,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");var ct=Q.createParameterDeclaration(void 0,void 0,Se,void 0,void 0,void 0);ze(ct,Se.pos);var Mt=xe([ct],ct.pos,ct.end),Ni=Bo(38),$i=Rf(!!Rr,Er),tn=Q.createArrowFunction(Rr,void 0,Mt,void 0,Ni,$i);return tr(ze(tn,ZA))}function eQ(ZA){var Se=Yd();if(Se!==0)return Se===1?dh(!0,!0):cn(function(){return Ff(ZA)})}function Yd(){return XA()===20||XA()===29||XA()===132?zt(Su):XA()===38?1:0}function Su(){if(XA()===132&&(Sr(),N.hasPrecedingLineBreak()||XA()!==20&&XA()!==29))return 0;var ZA=XA(),Se=Sr();if(ZA===20){if(Se===21){var Er=Sr();switch(Er){case 38:case 58:case 18:return 1;default:return 0}}if(Se===22||Se===18)return 2;if(Se===25)return 1;if(A.isModifierKind(Se)&&Se!==132&&zt(Gs))return Sr()===128?0:1;if(!Mi()&&Se!==108)return 0;switch(Sr()){case 58:return 1;case 57:return Sr(),XA()===58||XA()===27||XA()===63||XA()===21?1:0;case 27:case 63:case 21:return 2}return 0}else{if(A.Debug.assert(ZA===29),!Mi())return 0;if(ir===1){var Rr=zt(function(){var ct=Sr();if(ct===94){var Mt=Sr();switch(Mt){case 63:case 31:return!1;default:return!0}}else if(ct===27||ct===63)return!0;return!1});return Rr?1:0}return 2}}function Ff(ZA){var Se=N.getTokenPos();if(!YA?.has(Se)){var Er=dh(!1,ZA);return Er||(YA||(YA=new A.Set)).add(Se),Er}}function gh(ZA){if(XA()===132&&zt(Cg)===1){var Se=JA(),Er=Sp(),Rr=_p(0);return hB(Se,Rr,ZA,Er)}}function Cg(){if(XA()===132){if(Sr(),N.hasPrecedingLineBreak()||XA()===38)return 0;var ZA=_p(0);if(!N.hasPrecedingLineBreak()&&ZA.kind===79&&XA()===38)return 1}return 0}function dh(ZA,Se){var Er=JA(),Rr=Ve(),ct=Sp(),Mt=A.some(ct,A.isAsyncModifier)?2:0,Ni=Jn(),$i;if(yt(20)){if(ZA)$i=rs(Mt,ZA);else{var tn=rs(Mt,ZA);if(!tn)return;$i=tn}if(!yt(21)&&!ZA)return}else{if(!ZA)return;$i=jr()}var wn=XA()===58,ka=qo(58,!1);if(!(ka&&!ZA&&_s(ka))){for(var Io=ka;Io?.kind===193;)Io=Io.type;var Eo=Io&&A.isJSDocFunctionType(Io);if(!(!ZA&&XA()!==38&&(Eo||XA()!==18))){var Go=XA(),ic=Bo(38),Zc=Go===38||Go===18?Rf(A.some(ct,A.isAsyncModifier),Se):ne();if(!(!Se&&wn&&XA()!==58)){var ws=Q.createArrowFunction(ct,Ni,$i,ka,ic,Zc);return nr(ze(ws,Er),Rr)}}}}function Rf(ZA,Se){if(XA()===18)return Wd(ZA?2:0);if(XA()!==26&&XA()!==98&&XA()!==84&&Mp()&&!AQ())return Wd(16|(ZA?2:0));var Er=Ke;Ke=!1;var Rr=ZA?Xe(function(){return Hl(Se)}):or(function(){return Hl(Se)});return Ke=Er,Rr}function Ig(ZA,Se,Er){var Rr=bi(57);if(!Rr)return ZA;var ct;return ze(Q.createConditionalExpression(ZA,Rr,UA(nA,function(){return Hl(!1)}),ct=Bo(58),A.nodeIsPresent(ct)?Hl(Er):Lt(79,!1,A.Diagnostics._0_expected,A.tokenToString(58))),Se)}function _p(ZA){var Se=JA(),Er=uE();return Af(ZA,Er,Se)}function QB(ZA){return ZA===101||ZA===162}function Af(ZA,Se,Er){for(;;){Jr();var Rr=A.getBinaryOperatorPrecedence(XA()),ct=XA()===42?Rr>=ZA:Rr>ZA;if(!ct||XA()===101&>())break;if(XA()===128||XA()===150){if(N.hasPrecedingLineBreak())break;var Mt=XA();Sr(),Se=Mt===150?lE(Se,rc()):Dd(Se,rc())}else Se=rf(Se,oo(),_p(Rr),Er)}return Se}function ef(){return gt()&&XA()===101?!1:A.getBinaryOperatorPrecedence(XA())>0}function lE(ZA,Se){return ze(Q.createSatisfiesExpression(ZA,Se),ZA.pos)}function rf(ZA,Se,Er,Rr){return ze(Q.createBinaryExpression(ZA,Se,Er),Rr)}function Dd(ZA,Se){return ze(Q.createAsExpression(ZA,Se),ZA.pos)}function wp(){var ZA=JA();return ze(Q.createPrefixUnaryExpression(XA(),ot(Fl)),ZA)}function Ad(){var ZA=JA();return ze(Q.createDeleteExpression(ot(Fl)),ZA)}function Sl(){var ZA=JA();return ze(Q.createTypeOfExpression(ot(Fl)),ZA)}function bg(){var ZA=JA();return ze(Q.createVoidExpression(ot(Fl)),ZA)}function vp(){return XA()===133?Zt()?!0:zt(dg):!1}function Og(){var ZA=JA();return ze(Q.createAwaitExpression(ot(Fl)),ZA)}function uE(){if($l()){var ZA=JA(),Se=ed();return XA()===42?Af(A.getBinaryOperatorPrecedence(XA()),Se,ZA):Se}var Er=XA(),Rr=Fl();if(XA()===42){var ZA=A.skipTrivia(be,Rr.pos),ct=Rr.end;Rr.kind===213?ei(ZA,ct,A.Diagnostics.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):ei(ZA,ct,A.Diagnostics.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,A.tokenToString(Er))}return Rr}function Fl(){switch(XA()){case 39:case 40:case 54:case 53:return wp();case 89:return Ad();case 112:return Sl();case 114:return bg();case 29:return oi();case 133:if(vp())return Og();default:return ed()}}function $l(){switch(XA()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 133:return!1;case 29:if(ir!==1)return!1;default:return!0}}function ed(){if(XA()===45||XA()===46){var ZA=JA();return ze(Q.createPrefixUnaryExpression(XA(),ot(ug)),ZA)}else if(ir===1&&XA()===29&&zt($s))return vl(!0);var Se=ug();if(A.Debug.assert(A.isLeftHandSideExpression(Se)),(XA()===45||XA()===46)&&!N.hasPrecedingLineBreak()){var Er=XA();return Sr(),ze(Q.createPostfixUnaryExpression(Se,Er),Se.pos)}return Se}function ug(){var ZA=JA(),Se;return XA()===100?zt(ro)?(Cr|=2097152,Se=oo()):zt(Co)?(Sr(),Sr(),Se=ze(Q.createMetaProperty(100,_r()),ZA),Cr|=4194304):Se=gg():Se=XA()===106?yu():gg(),cs(ZA,Se)}function gg(){var ZA=JA(),Se=Ss();return fi(ZA,Se,!0)}function yu(){var ZA=JA(),Se=oo();if(XA()===29){var Er=JA(),Rr=cn(du);Rr!==void 0&&(ei(Er,JA(),A.Diagnostics.super_may_not_use_type_arguments),Ru()||(Se=Q.createExpressionWithTypeArguments(Se,Rr)))}return XA()===20||XA()===24||XA()===22?Se:(Bo(24,A.Diagnostics.super_must_be_followed_by_an_argument_list_or_member_access),ze(Q.createPropertyAccessExpression(Se,Ds(!0,!0)),ZA))}function vl(ZA,Se,Er){var Rr=JA(),ct=Lo(ZA),Mt;if(ct.kind===283){var Ni=tf(ct),$i=void 0,tn=Ni[Ni.length-1];if(tn?.kind===281&&!lA(tn.openingElement.tagName,tn.closingElement.tagName)&&lA(ct.tagName,tn.closingElement.tagName)){var wn=tn.children.end,ka=ze(Q.createJsxElement(tn.openingElement,tn.children,ze(Q.createJsxClosingElement(ze(Q.createIdentifier(""),wn,wn)),wn,wn)),tn.openingElement.pos,wn);Ni=xe(dt(dt([],Ni.slice(0,Ni.length-1),!0),[ka],!1),Ni.pos,wn),$i=tn.closingElement}else $i=af(ct,ZA),lA(ct.tagName,$i.tagName)||(Er&&A.isJsxOpeningElement(Er)&&lA($i.tagName,Er.tagName)?Yt(ct.tagName,A.Diagnostics.JSX_element_0_has_no_corresponding_closing_tag,A.getTextOfNodeFromSourceText(be,ct.tagName)):Yt($i.tagName,A.Diagnostics.Expected_corresponding_JSX_closing_tag_for_0,A.getTextOfNodeFromSourceText(be,ct.tagName)));Mt=ze(Q.createJsxElement(ct,Ni,$i),Rr)}else ct.kind===286?Mt=ze(Q.createJsxFragment(ct,tf(ct),ds(ZA)),Rr):(A.Debug.assert(ct.kind===282),Mt=ct);if(ZA&&XA()===29){var Io=typeof Se>"u"?Mt.pos:Se,Eo=cn(function(){return vl(!0,Io)});if(Eo){var Go=Lt(27,!1);return A.setTextRangePosWidth(Go,Eo.pos,0),ei(A.skipTrivia(be,Io),Eo.end,A.Diagnostics.JSX_expressions_must_have_one_parent_element),ze(Q.createBinaryExpression(Mt,Go,Eo),Rr)}}return Mt}function ph(){var ZA=JA(),Se=Q.createJsxText(N.getTokenValue(),xr===12);return xr=N.scanJsxToken(),ze(Se,ZA)}function mB(ZA,Se){switch(Se){case 1:if(A.isJsxOpeningFragment(ZA))Yt(ZA,A.Diagnostics.JSX_fragment_has_no_corresponding_closing_tag);else{var Er=ZA.tagName,Rr=A.skipTrivia(be,Er.pos);ei(Rr,Er.end,A.Diagnostics.JSX_element_0_has_no_corresponding_closing_tag,A.getTextOfNodeFromSourceText(be,ZA.tagName))}return;case 30:case 7:return;case 11:case 12:return ph();case 18:return Tf(!1);case 29:return vl(!1,void 0,ZA);default:return A.Debug.assertNever(Se)}}function tf(ZA){var Se=[],Er=JA(),Rr=We;for(We|=16384;;){var ct=mB(ZA,xr=N.reScanJsxToken());if(!ct||(Se.push(ct),A.isJsxOpeningElement(ZA)&&ct?.kind===281&&!lA(ct.openingElement.tagName,ct.closingElement.tagName)&&lA(ZA.tagName,ct.closingElement.tagName)))break}return We=Rr,xe(Se,Er)}function DB(){var ZA=JA();return ze(Q.createJsxAttributes(ms(13,nf)),ZA)}function Lo(ZA){var Se=JA();if(yt(29),XA()===31)return Ii(),ze(Q.createJsxOpeningFragment(),Se);var Er=Ic(),Rr=Ce&262144?void 0:kr(),ct=DB(),Mt;return XA()===31?(Ii(),Mt=Q.createJsxOpeningElement(Er,Rr,ct)):(yt(43),yt(31,void 0,!1)&&(ZA?Sr():Ii()),Mt=Q.createJsxSelfClosingElement(Er,Rr,ct)),ze(Mt,Se)}function Ic(){var ZA=JA();ut();for(var Se=XA()===108?oo():_r();wi(24);)Se=ze(Q.createPropertyAccessExpression(Se,Ds(!0,!1)),ZA);return Se}function Tf(ZA){var Se=JA();if(yt(18)){var Er,Rr;return XA()!==19&&(Er=bi(25),Rr=cl()),ZA?yt(19):yt(19,void 0,!1)&&Ii(),ze(Q.createJsxExpression(Er,Rr),Se)}}function nf(){if(XA()===18)return Ud();ut();var ZA=JA();return ze(Q.createJsxAttribute(_r(),Fu()),ZA)}function Fu(){if(XA()===63){if(Zi()===10)return ec();if(XA()===18)return Tf(!0);if(XA()===29)return vl(!0);Ot(A.Diagnostics.or_JSX_element_expected)}}function Ud(){var ZA=JA();yt(18),yt(25);var Se=cl();return yt(19),ze(Q.createJsxSpreadAttribute(Se),ZA)}function af(ZA,Se){var Er=JA();yt(30);var Rr=Ic();return yt(31,void 0,!1)&&(Se||!lA(ZA.tagName,Rr)?Sr():Ii()),ze(Q.createJsxClosingElement(Rr),Er)}function ds(ZA){var Se=JA();return yt(30),A.tokenIsIdentifierOrKeyword(XA())&&Yt(Ic(),A.Diagnostics.Expected_corresponding_closing_tag_for_JSX_fragment),yt(31,void 0,!1)&&(ZA?Sr():Ii()),ze(Q.createJsxJsxClosingFragment(),Se)}function oi(){var ZA=JA();yt(29);var Se=rc();yt(31);var Er=Fl();return ze(Q.createTypeAssertion(Se,Er),ZA)}function ss(){return Sr(),A.tokenIsIdentifierOrKeyword(XA())||XA()===22||Ru()}function Rn(){return XA()===28&&zt(ss)}function Pc(ZA){if(ZA.flags&32)return!0;if(A.isNonNullExpression(ZA)){for(var Se=ZA.expression;A.isNonNullExpression(Se)&&!(Se.flags&32);)Se=Se.expression;if(Se.flags&32){for(;A.isNonNullExpression(ZA);)ZA.flags|=32,ZA=ZA.expression;return!0}}return!1}function _B(ZA,Se,Er){var Rr=Ds(!0,!0),ct=Er||Pc(Se),Mt=ct?Q.createPropertyAccessChain(Se,Er,Rr):Q.createPropertyAccessExpression(Se,Rr);if(ct&&A.isPrivateIdentifier(Mt.name)&&Yt(Mt.name,A.Diagnostics.An_optional_chain_cannot_contain_private_identifiers),A.isExpressionWithTypeArguments(Se)&&Se.typeArguments){var Ni=Se.typeArguments.pos-1,$i=A.skipTrivia(be,Se.typeArguments.end)+1;ei(Ni,$i,A.Diagnostics.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return ze(Mt,ZA)}function Rl(ZA,Se,Er){var Rr;if(XA()===23)Rr=Lt(79,!0,A.Diagnostics.An_element_access_expression_should_take_an_argument);else{var ct=de(cl);A.isStringOrNumericLiteralLike(ct)&&(ct.text=en(ct.text)),Rr=ct}yt(23);var Mt=Er||Pc(Se)?Q.createElementAccessChain(Se,Er,Rr):Q.createElementAccessExpression(Se,Rr);return ze(Mt,ZA)}function fi(ZA,Se,Er){for(;;){var Rr=void 0,ct=!1;if(Er&&Rn()?(Rr=Bo(28),ct=A.tokenIsIdentifierOrKeyword(XA())):ct=wi(24),ct){Se=_B(ZA,Se,Rr);continue}if((Rr||!Et())&&wi(22)){Se=Rl(ZA,Se,Rr);continue}if(Ru()){Se=!Rr&&Se.kind===230?Tl(ZA,Se.expression,Rr,Se.typeArguments):Tl(ZA,Se,Rr,void 0);continue}if(!Rr){if(XA()===53&&!N.hasPrecedingLineBreak()){Sr(),Se=ze(Q.createNonNullExpression(Se),ZA);continue}var Mt=cn(du);if(Mt){Se=ze(Q.createExpressionWithTypeArguments(Se,Mt),ZA);continue}}return Se}}function Ru(){return XA()===14||XA()===15}function Tl(ZA,Se,Er,Rr){var ct=Q.createTaggedTemplateExpression(Se,Rr,XA()===14?(Bt(),ec()):gc(!0));return(Er||Se.flags&32)&&(ct.flags|=32),ct.questionDotToken=Er,ze(ct,ZA)}function cs(ZA,Se){for(;;){Se=fi(ZA,Se,!0);var Er=void 0,Rr=bi(28);if(Rr&&(Er=cn(du),Ru())){Se=Tl(ZA,Se,Rr,Er);continue}if(Er||XA()===20){!Rr&&Se.kind===230&&(Er=Se.typeArguments,Se=Se.expression);var ct=Nl(),Mt=Rr||Pc(Se)?Q.createCallChain(Se,Rr,Er,ct):Q.createCallExpression(Se,Er,ct);Se=ze(Mt,ZA);continue}if(Rr){var Ni=Lt(79,!1,A.Diagnostics.Identifier_expected);Se=ze(Q.createPropertyAccessChain(Se,Rr,Ni),ZA)}break}return Se}function Nl(){yt(20);var ZA=aa(11,rd);return yt(21),ZA}function du(){if(!(Ce&262144)&&le()===29){Sr();var ZA=aa(20,rc);if(Jr()===31)return Sr(),ZA&&yp()?ZA:void 0}}function yp(){switch(XA()){case 20:case 14:case 15:return!0;case 29:case 31:case 39:case 40:return!1}return N.hasPrecedingLineBreak()||ef()||!wl()}function Ss(){switch(XA()){case 8:case 9:case 10:case 14:return ec();case 108:case 106:case 104:case 110:case 95:return oo();case 20:return _d();case 22:return hc();case 18:return gE();case 132:if(!zt(Eu))break;return Cp();case 84:return ul();case 98:return Cp();case 103:return wB();case 43:case 68:if(Yr()===13)return ec();break;case 15:return gc(!1);case 80:return zr()}return ne(A.Diagnostics.Expression_expected)}function _d(){var ZA=JA(),Se=Ve();yt(20);var Er=de(cl);return yt(21),nr(ze(Q.createParenthesizedExpression(Er),ZA),Se)}function Ld(){var ZA=JA();yt(25);var Se=Hl(!0);return ze(Q.createSpreadElement(Se),ZA)}function of(){return XA()===25?Ld():XA()===27?ze(Q.createOmittedExpression(),JA()):Hl(!0)}function rd(){return UA(nA,of)}function hc(){var ZA=JA(),Se=N.getTokenPos(),Er=yt(22),Rr=N.hasPrecedingLineBreak(),ct=aa(15,of);return va(22,23,Er,Se),ze(Q.createArrayLiteralExpression(ct,Rr),ZA)}function wd(){var ZA=JA(),Se=Ve();if(bi(25)){var Er=Hl(!0);return nr(ze(Q.createSpreadAssignment(Er),ZA),Se)}var Rr=Cd(),ct=fu();if(Ft(137))return Gc(ZA,Se,Rr,ct,174,0);if(Ft(151))return Gc(ZA,Se,Rr,ct,175,0);var Mt=bi(41),Ni=Mi(),$i=ye(),tn=bi(57),wn=bi(53);if(Mt||XA()===20||XA()===29)return kg(ZA,Se,Rr,ct,Mt,$i,tn,wn);var ka,Io=Ni&&XA()!==58;if(Io){var Eo=bi(63),Go=Eo?de(function(){return Hl(!0)}):void 0;ka=Q.createShorthandPropertyAssignment($i,Go),ka.equalsToken=Eo}else{yt(58);var ic=de(function(){return Hl(!0)});ka=Q.createPropertyAssignment($i,ic)}return ka.illegalDecorators=Rr,ka.modifiers=ct,ka.questionToken=tn,ka.exclamationToken=wn,nr(ze(ka,ZA),Se)}function gE(){var ZA=JA(),Se=N.getTokenPos(),Er=yt(18),Rr=N.hasPrecedingLineBreak(),ct=aa(12,wd,!0);return va(18,19,Er,Se),ze(Q.createObjectLiteralExpression(ct,Rr),ZA)}function Cp(){var ZA=Et();te(!1);var Se=JA(),Er=Ve(),Rr=fu();yt(98);var ct=bi(41),Mt=ct?1:0,Ni=A.some(Rr,A.isAsyncModifier)?2:0,$i=Mt&&Ni?Mr(jd):Mt?Pe(jd):Ni?Xe(jd):jd(),tn=Jn(),wn=xA(Mt|Ni),ka=qo(58,!1),Io=Wd(Mt|Ni);te(ZA);var Eo=Q.createFunctionExpression(Rr,ct,$i,tn,wn,ka,Io);return nr(ze(Eo,Se),Er)}function jd(){return Ui()?Ia():void 0}function wB(){var ZA=JA();if(yt(103),wi(24)){var Se=_r();return ze(Q.createMetaProperty(103,Se),ZA)}var Er=JA(),Rr=fi(Er,Ss(),!1),ct;Rr.kind===230&&(ct=Rr.typeArguments,Rr=Rr.expression),XA()===28&&Ot(A.Diagnostics.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,A.getTextOfNodeFromSourceText(be,Rr));var Mt=XA()===20?Nl():void 0;return ze(Q.createNewExpression(Rr,ct,Mt),ZA)}function _c(ZA,Se){var Er=JA(),Rr=Ve(),ct=N.getTokenPos(),Mt=yt(18,Se);if(Mt||ZA){var Ni=N.hasPrecedingLineBreak(),$i=ms(1,so);va(18,19,Mt,ct);var tn=nr(ze(Q.createBlock($i,Ni),Er),Rr);return XA()===63&&(Ot(A.Diagnostics.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_the_whole_assignment_in_parentheses),Sr()),tn}else{var $i=jr();return nr(ze(Q.createBlock($i,void 0),Er),Rr)}}function Wd(ZA,Se){var Er=Lr();fr(!!(ZA&1));var Rr=Zt();Te(!!(ZA&2));var ct=Ke;Ke=!1;var Mt=Et();Mt&&te(!1);var Ni=_c(!!(ZA&16),Se);return Mt&&te(!0),Ke=ct,fr(Er),Te(Rr),Ni}function pu(){var ZA=JA(),Se=Ve();return yt(26),nr(ze(Q.createEmptyStatement(),ZA),Se)}function sf(){var ZA=JA(),Se=Ve();yt(99);var Er=N.getTokenPos(),Rr=yt(20),ct=de(cl);va(20,21,Rr,Er);var Mt=so(),Ni=wi(91)?so():void 0;return nr(ze(Q.createIfStatement(ct,Mt,Ni),ZA),Se)}function Ip(){var ZA=JA(),Se=Ve();yt(90);var Er=so();yt(115);var Rr=N.getTokenPos(),ct=yt(20),Mt=de(cl);return va(20,21,ct,Rr),wi(26),nr(ze(Q.createDoStatement(Er,Mt),ZA),Se)}function Jd(){var ZA=JA(),Se=Ve();yt(115);var Er=N.getTokenPos(),Rr=yt(20),ct=de(cl);va(20,21,Rr,Er);var Mt=so();return nr(ze(Q.createWhileStatement(ct,Mt),ZA),Se)}function Nf(){var ZA=JA(),Se=Ve();yt(97);var Er=bi(133);yt(20);var Rr;XA()!==26&&(XA()===113||XA()===119||XA()===85?Rr=CB(!0):Rr=HA(cl));var ct;if(Er?yt(162):wi(162)){var Mt=de(function(){return Hl(!0)});yt(21),ct=Q.createForOfStatement(Er,Rr,Mt,so())}else if(wi(101)){var Mt=de(cl);yt(21),ct=Q.createForInStatement(Rr,Mt,so())}else{yt(26);var Ni=XA()!==26&&XA()!==21?de(cl):void 0;yt(26);var $i=XA()!==21?de(cl):void 0;yt(21),ct=Q.createForStatement(Rr,Ni,$i,so())}return nr(ze(ct,ZA),Se)}function qd(ZA){var Se=JA(),Er=Ve();yt(ZA===249?81:86);var Rr=Bs()?void 0:ne();Va();var ct=ZA===249?Q.createBreakStatement(Rr):Q.createContinueStatement(Rr);return nr(ze(ct,Se),Er)}function Mg(){var ZA=JA(),Se=Ve();yt(105);var Er=Bs()?void 0:de(cl);return Va(),nr(ze(Q.createReturnStatement(Er),ZA),Se)}function vB(){var ZA=JA(),Se=Ve();yt(116);var Er=N.getTokenPos(),Rr=yt(20),ct=de(cl);va(20,21,Rr,Er);var Mt=Ee(33554432,so);return nr(ze(Q.createWithStatement(ct,Mt),ZA),Se)}function Js(){var ZA=JA(),Se=Ve();yt(82);var Er=de(cl);yt(58);var Rr=ms(3,so);return nr(ze(Q.createCaseClause(Er,Rr),ZA),Se)}function yl(){var ZA=JA();yt(88),yt(58);var Se=ms(3,so);return ze(Q.createDefaultClause(Se),ZA)}function lc(){return XA()===82?Js():yl()}function bp(){var ZA=JA();yt(18);var Se=ms(2,lc);return yt(19),ze(Q.createCaseBlock(Se),ZA)}function dE(){var ZA=JA(),Se=Ve();yt(107),yt(20);var Er=de(cl);yt(21);var Rr=bp();return nr(ze(Q.createSwitchStatement(Er,Rr),ZA),Se)}function Pn(){var ZA=JA(),Se=Ve();yt(109);var Er=N.hasPrecedingLineBreak()?void 0:de(cl);return Er===void 0&&(ae++,Er=ze(Q.createIdentifier(""),JA())),hs()||Wn(Er),nr(ze(Q.createThrowStatement(Er),ZA),Se)}function hi(){var ZA=JA(),Se=Ve();yt(111);var Er=_c(!1),Rr=XA()===83?Pl():void 0,ct;return(!Rr||XA()===96)&&(yt(96,A.Diagnostics.catch_or_finally_expected),ct=_c(!1)),nr(ze(Q.createTryStatement(Er,Rr,ct),ZA),Se)}function Pl(){var ZA=JA();yt(83);var Se;wi(20)?(Se=EE(),yt(21)):Se=void 0;var Er=_c(!1);return ze(Q.createCatchClause(Se,Er),ZA)}function Pf(){var ZA=JA(),Se=Ve();return yt(87),Va(),nr(ze(Q.createDebuggerStatement(),ZA),Se)}function pE(){var ZA=JA(),Se=Ve(),Er,Rr=XA()===20,ct=de(cl);return A.isIdentifier(ct)&&wi(58)?Er=Q.createLabeledStatement(ct,so()):(hs()||Wn(ct),Er=Q.createExpressionStatement(ct),Rr&&(Se=!1)),nr(ze(Er,ZA),Se)}function Op(){return Sr(),A.tokenIsIdentifierOrKeyword(XA())&&!N.hasPrecedingLineBreak()}function vd(){return Sr(),XA()===84&&!N.hasPrecedingLineBreak()}function Eu(){return Sr(),XA()===98&&!N.hasPrecedingLineBreak()}function dg(){return Sr(),(A.tokenIsIdentifierOrKeyword(XA())||XA()===8||XA()===9||XA()===10)&&!N.hasPrecedingLineBreak()}function Vu(){for(;;)switch(XA()){case 113:case 119:case 85:case 98:case 84:case 92:return!0;case 118:case 154:return uh();case 142:case 143:return Hp();case 126:case 127:case 132:case 136:case 121:case 122:case 123:case 146:if(Sr(),N.hasPrecedingLineBreak())return!1;continue;case 159:return Sr(),XA()===18||XA()===79||XA()===93;case 100:return Sr(),XA()===10||XA()===41||XA()===18||A.tokenIsIdentifierOrKeyword(XA());case 93:var ZA=Sr();if(ZA===154&&(ZA=zt(Sr)),ZA===63||ZA===41||ZA===18||ZA===88||ZA===128)return!0;continue;case 124:Sr();continue;default:return!1}}function td(){return zt(Vu)}function Mp(){switch(XA()){case 59:case 26:case 18:case 113:case 119:case 98:case 84:case 92:case 99:case 90:case 115:case 97:case 86:case 81:case 105:case 116:case 107:case 109:case 111:case 87:case 83:case 96:return!0;case 100:return td()||zt(Ma);case 85:case 93:return td();case 132:case 136:case 118:case 142:case 143:case 154:case 159:return!0;case 127:case 123:case 121:case 122:case 124:case 146:return td()||!zt(Op);default:return wl()}}function Au(){return Sr(),Ui()||XA()===18||XA()===22}function zu(){return zt(Au)}function so(){switch(XA()){case 26:return pu();case 18:return _c(!1);case 113:return Vd(JA(),Ve(),void 0,void 0);case 119:if(zu())return Vd(JA(),Ve(),void 0,void 0);break;case 98:return Ku(JA(),Ve(),void 0,void 0);case 84:return cf(JA(),Ve(),void 0,void 0);case 99:return sf();case 90:return Ip();case 115:return Jd();case 97:return Nf();case 86:return qd(248);case 81:return qd(249);case 105:return Mg();case 116:return vB();case 107:return dE();case 109:return Pn();case 111:case 83:case 96:return hi();case 87:return Pf();case 59:return kp();case 132:case 118:case 154:case 142:case 143:case 136:case 85:case 92:case 93:case 100:case 121:case 122:case 123:case 126:case 127:case 124:case 146:case 159:if(td())return kp();break}return pE()}function Gl(ZA){return ZA.kind===136}function kp(){var ZA=JA(),Se=Ve(),Er=Cd(),Rr=fu(),ct=A.some(Rr,Gl);if(ct){var Mt=eu(ZA);if(Mt)return Mt;for(var Ni=0,$i=Rr;Ni<$i.length;Ni++){var tn=$i[Ni];tn.flags|=16777216}return Ee(16777216,function(){return xp(ZA,Se,Er,Rr)})}else return xp(ZA,Se,Er,Rr)}function eu(ZA){return Ee(16777216,function(){var Se=bs(We,ZA);if(Se)return Tc(Se)})}function xp(ZA,Se,Er,Rr){switch(XA()){case 113:case 119:case 85:return Vd(ZA,Se,Er,Rr);case 98:return Ku(ZA,Se,Er,Rr);case 84:return cf(ZA,Se,Er,Rr);case 118:return sn(ZA,Se,Er,Rr);case 154:return _n(ZA,Se,Er,Rr);case 92:return wa(ZA,Se,Er,Rr);case 159:case 142:case 143:return Ha(ZA,Se,Er,Rr);case 100:return hE(ZA,Se,Er,Rr);case 93:switch(Sr(),XA()){case 88:case 63:return VQ(ZA,Se,Er,Rr);case 128:return Pu(ZA,Se,Er,Rr);default:return H1(ZA,Se,Er,Rr)}default:if(Er||Rr){var ct=Lt(279,!0,A.Diagnostics.Declaration_expected);return A.setTextRangePos(ct,ZA),ct.illegalDecorators=Er,ct.modifiers=Rr,ct}return}}function Hp(){return Sr(),!N.hasPrecedingLineBreak()&&(Mi()||XA()===10)}function yd(ZA,Se){if(XA()!==18){if(ZA&4){ve();return}if(Bs()){Va();return}}return Wd(ZA,Se)}function yB(){var ZA=JA();if(XA()===27)return ze(Q.createOmittedExpression(),ZA);var Se=bi(25),Er=Cu(),Rr=Gd();return ze(Q.createBindingElement(Se,void 0,Er,Rr),ZA)}function Yl(){var ZA=JA(),Se=bi(25),Er=Ui(),Rr=ye(),ct;Er&&XA()!==58?(ct=Rr,Rr=void 0):(yt(58),ct=Cu());var Mt=Gd();return ze(Q.createBindingElement(Se,Rr,ct,Mt),ZA)}function Vo(){var ZA=JA();yt(18);var Se=aa(9,Yl);return yt(19),ze(Q.createObjectBindingPattern(Se),ZA)}function Eh(){var ZA=JA();yt(22);var Se=aa(10,yB);return yt(23),ze(Q.createArrayBindingPattern(Se),ZA)}function pg(){return XA()===18||XA()===22||XA()===80||Ui()}function Cu(ZA){return XA()===22?Eh():XA()===18?Vo():Ia(ZA)}function Tu(){return EE(!0)}function EE(ZA){var Se=JA(),Er=Ve(),Rr=Cu(A.Diagnostics.Private_identifiers_are_not_allowed_in_variable_declarations),ct;ZA&&Rr.kind===79&&XA()===53&&!N.hasPrecedingLineBreak()&&(ct=oo());var Mt=$g(),Ni=QB(XA())?void 0:Gd(),$i=Q.createVariableDeclaration(Rr,ct,Mt,Ni);return nr(ze($i,Se),Er)}function CB(ZA){var Se=JA(),Er=0;switch(XA()){case 113:break;case 119:Er|=1;break;case 85:Er|=2;break;default:A.Debug.fail()}Sr();var Rr;if(XA()===162&&zt(fE))Rr=jr();else{var ct=gt();Ar(ZA),Rr=aa(8,ZA?EE:Tu),Ar(ct)}return ze(Q.createVariableDeclarationList(Rr,Er),Se)}function fE(){return Gs()&&Sr()===21}function Vd(ZA,Se,Er,Rr){var ct=CB(!1);Va();var Mt=Q.createVariableStatement(Rr,ct);return Mt.illegalDecorators=Er,nr(ze(Mt,ZA),Se)}function Ku(ZA,Se,Er,Rr){var ct=Zt(),Mt=A.modifiersToFlags(Rr);yt(98);var Ni=bi(41),$i=Mt&1024?jd():Ia(),tn=Ni?1:0,wn=Mt&512?2:0,ka=Jn();Mt&1&&Te(!0);var Io=xA(tn|wn),Eo=qo(58,!1),Go=yd(tn|wn,A.Diagnostics.or_expected);Te(ct);var ic=Q.createFunctionDeclaration(Rr,Ni,$i,ka,Io,Eo,Go);return ic.illegalDecorators=Er,nr(ze(ic,ZA),Se)}function fh(){if(XA()===135)return yt(135);if(XA()===10&&zt(Sr)===20)return cn(function(){var ZA=ec();return ZA.text==="constructor"?ZA:void 0})}function zd(ZA,Se,Er,Rr){return cn(function(){if(fh()){var ct=Jn(),Mt=xA(0),Ni=qo(58,!1),$i=yd(0,A.Diagnostics.or_expected),tn=Q.createConstructorDeclaration(Rr,Mt,$i);return tn.illegalDecorators=Er,tn.typeParameters=ct,tn.type=Ni,nr(ze(tn,ZA),Se)}})}function kg(ZA,Se,Er,Rr,ct,Mt,Ni,$i,tn){var wn=ct?1:0,ka=A.some(Rr,A.isAsyncModifier)?2:0,Io=Jn(),Eo=xA(wn|ka),Go=qo(58,!1),ic=yd(wn|ka,tn),Zc=Q.createMethodDeclaration(xg(Er,Rr),ct,Mt,Ni,Io,Eo,Go,ic);return Zc.exclamationToken=$i,nr(ze(Zc,ZA),Se)}function BE(ZA,Se,Er,Rr,ct,Mt){var Ni=!Mt&&!N.hasPrecedingLineBreak()?bi(53):void 0,$i=$g(),tn=UA(45056,Gd);_a(ct,$i,tn);var wn=Q.createPropertyDeclaration(xg(Er,Rr),ct,Mt||Ni,$i,tn);return nr(ze(wn,ZA),Se)}function Nu(ZA,Se,Er,Rr){var ct=bi(41),Mt=ye(),Ni=bi(57);return ct||XA()===20||XA()===29?kg(ZA,Se,Er,Rr,ct,Mt,Ni,void 0,A.Diagnostics.or_expected):BE(ZA,Se,Er,Rr,Mt,Ni)}function Gc(ZA,Se,Er,Rr,ct,Mt){var Ni=ye(),$i=Jn(),tn=xA(0),wn=qo(58,!1),ka=yd(Mt),Io=ct===174?Q.createGetAccessorDeclaration(xg(Er,Rr),Ni,tn,wn,ka):Q.createSetAccessorDeclaration(xg(Er,Rr),Ni,tn,ka);return Io.typeParameters=$i,A.isSetAccessorDeclaration(Io)&&(Io.type=wn),nr(ze(Io,ZA),Se)}function IB(){var ZA;if(XA()===59)return!0;for(;A.isModifierKind(XA());){if(ZA=XA(),A.isClassMemberModifier(ZA))return!0;Sr()}if(XA()===41||(qr()&&(ZA=XA(),Sr()),XA()===22))return!0;if(ZA!==void 0){if(!A.isKeyword(ZA)||ZA===151||ZA===137)return!0;switch(XA()){case 20:case 29:case 53:case 58:case 63:case 57:return!0;default:return Bs()}}return!1}function WQ(ZA,Se,Er,Rr){Bo(124);var ct=Nn(),Mt=nr(ze(Q.createClassStaticBlockDeclaration(ct),ZA),Se);return Mt.illegalDecorators=Er,Mt.modifiers=Rr,Mt}function Nn(){var ZA=Lr(),Se=Zt();fr(!1),Te(!0);var Er=_c(!1);return fr(ZA),Te(Se),Er}function ll(){if(Zt()&&XA()===133){var ZA=JA(),Se=ne(A.Diagnostics.Expression_expected);Sr();var Er=fi(ZA,Se,!0);return cs(ZA,Er)}return ug()}function si(){var ZA=JA();if(wi(59)){var Se=He(ll);return ze(Q.createDecorator(Se),ZA)}}function Cd(){for(var ZA=JA(),Se,Er;Er=si();)Se=A.append(Se,Er);return Se&&xe(Se,ZA)}function bB(ZA,Se,Er){var Rr=JA(),ct=XA();if(XA()===85&&ZA){if(!cn(Gt))return}else{if(Se&&XA()===124&&zt(Xc))return;if(Er&&XA()===124)return;if(!ra())return}return ze(Q.createToken(ct),Rr)}function xg(ZA,Se){if(!ZA)return Se;if(!Se)return ZA;var Er=Q.createNodeArray(A.concatenate(ZA,Se));return A.setTextRangePosEnd(Er,ZA.pos,Se.end),Er}function fu(ZA,Se){for(var Er=JA(),Rr,ct,Mt=!1;ct=bB(ZA,Se,Mt);)ct.kind===124&&(Mt=!0),Rr=A.append(Rr,ct);return Rr&&xe(Rr,Er)}function Sp(){var ZA;if(XA()===132){var Se=JA();Sr();var Er=ze(Q.createToken(132),Se);ZA=xe([Er],Se)}return ZA}function Bh(){var ZA=JA();if(XA()===26)return Sr(),ze(Q.createSemicolonClassElement(),ZA);var Se=Ve(),Er=Cd(),Rr=fu(!0,!0);if(XA()===124&&zt(Xc))return WQ(ZA,Se,Er,Rr);if(Ft(137))return Gc(ZA,Se,Er,Rr,174,0);if(Ft(151))return Gc(ZA,Se,Er,Rr,175,0);if(XA()===135||XA()===10){var ct=zd(ZA,Se,Er,Rr);if(ct)return ct}if(et())return Ji(ZA,Se,Er,Rr);if(A.tokenIsIdentifierOrKeyword(XA())||XA()===10||XA()===8||XA()===41||XA()===22){var Mt=A.some(Rr,Gl);if(Mt){for(var Ni=0,$i=Rr;Ni<$i.length;Ni++){var tn=$i[Ni];tn.flags|=16777216}return Ee(16777216,function(){return Nu(ZA,Se,Er,Rr)})}else return Nu(ZA,Se,Er,Rr)}if(Er||Rr){var wn=Lt(79,!0,A.Diagnostics.Declaration_expected);return BE(ZA,Se,Er,Rr,wn,void 0)}return A.Debug.fail("Should not have attempted to parse class member declaration.")}function ul(){return Kd(JA(),Ve(),void 0,void 0,228)}function cf(ZA,Se,Er,Rr){return Kd(ZA,Se,Er,Rr,260)}function Kd(ZA,Se,Er,Rr,ct){var Mt=Zt();yt(84);var Ni=lf(),$i=Jn();A.some(Rr,A.isExportModifier)&&Te(!0);var tn=Fp(),wn;yt(18)?(wn=ki(),yt(19)):wn=jr(),Te(Mt);var ka=ct===260?Q.createClassDeclaration(xg(Er,Rr),Ni,$i,tn,wn):Q.createClassExpression(xg(Er,Rr),Ni,$i,tn,wn);return nr(ze(ka,ZA),Se)}function lf(){return Ui()&&!Gf()?hn(Ui()):void 0}function Gf(){return XA()===117&&zt(Vc)}function Fp(){if(ft())return ms(22,rA)}function rA(){var ZA=JA(),Se=XA();A.Debug.assert(Se===94||Se===117),Sr();var Er=aa(7,ge);return ze(Q.createHeritageClause(Se,Er),ZA)}function ge(){var ZA=JA(),Se=ug();if(Se.kind===230)return Se;var Er=kr();return ze(Q.createExpressionWithTypeArguments(Se,Er),ZA)}function kr(){return XA()===29?la(20,rc,29,31):void 0}function ft(){return XA()===94||XA()===117}function ki(){return ms(5,Bh)}function sn(ZA,Se,Er,Rr){yt(118);var ct=ne(),Mt=Jn(),Ni=Fp(),$i=gs(),tn=Q.createInterfaceDeclaration(Rr,ct,Mt,Ni,$i);return tn.illegalDecorators=Er,nr(ze(tn,ZA),Se)}function _n(ZA,Se,Er,Rr){yt(154);var ct=ne(),Mt=Jn();yt(63);var Ni=XA()===139&&cn(Bd)||rc();Va();var $i=Q.createTypeAliasDeclaration(Rr,ct,Mt,Ni);return $i.illegalDecorators=Er,nr(ze($i,ZA),Se)}function Bn(){var ZA=JA(),Se=Ve(),Er=ye(),Rr=de(Gd);return nr(ze(Q.createEnumMember(Er,Rr),ZA),Se)}function wa(ZA,Se,Er,Rr){yt(92);var ct=ne(),Mt;yt(18)?(Mt=ar(function(){return aa(6,Bn)}),yt(19)):Mt=jr();var Ni=Q.createEnumDeclaration(Rr,ct,Mt);return Ni.illegalDecorators=Er,nr(ze(Ni,ZA),Se)}function Wo(){var ZA=JA(),Se;return yt(18)?(Se=ms(1,so),yt(19)):Se=jr(),ze(Q.createModuleBlock(Se),ZA)}function ya(ZA,Se,Er,Rr,ct){var Mt=ct&16,Ni=ne(),$i=wi(24)?ya(JA(),!1,void 0,void 0,4|Mt):Wo(),tn=Q.createModuleDeclaration(Rr,Ni,$i,ct);return tn.illegalDecorators=Er,nr(ze(tn,ZA),Se)}function Ul(ZA,Se,Er,Rr){var ct=0,Mt;XA()===159?(Mt=ne(),ct|=1024):(Mt=ec(),Mt.text=en(Mt.text));var Ni;XA()===18?Ni=Wo():Va();var $i=Q.createModuleDeclaration(Rr,Mt,Ni,ct);return $i.illegalDecorators=Er,nr(ze($i,ZA),Se)}function Ha(ZA,Se,Er,Rr){var ct=0;if(XA()===159)return Ul(ZA,Se,Er,Rr);if(wi(143))ct|=16;else if(yt(142),XA()===10)return Ul(ZA,Se,Er,Rr);return ya(ZA,Se,Er,Rr,ct)}function $n(){return XA()===147&&zt(ru)}function ru(){return Sr()===20}function Xc(){return Sr()===18}function Xd(){return Sr()===43}function Pu(ZA,Se,Er,Rr){yt(128),yt(143);var ct=ne();Va();var Mt=Q.createNamespaceExportDeclaration(ct);return Mt.illegalDecorators=Er,Mt.modifiers=Rr,nr(ze(Mt,ZA),Se)}function hE(ZA,Se,Er,Rr){yt(100);var ct=N.getStartPos(),Mt;Mi()&&(Mt=ne());var Ni=!1;if(XA()!==158&&Mt?.escapedText==="type"&&(Mi()||za())&&(Ni=!0,Mt=Mi()?ne():void 0),Mt&&!QE())return OB(ZA,Se,Er,Rr,Mt,Ni);var $i;(Mt||XA()===41||XA()===18)&&($i=mE(Mt,ct,Ni),yt(158));var tn=Yf(),wn;XA()===130&&!N.hasPrecedingLineBreak()&&(wn=Rp()),Va();var ka=Q.createImportDeclaration(Rr,$i,tn,wn);return ka.illegalDecorators=Er,nr(ze(ka,ZA),Se)}function uf(){var ZA=JA(),Se=A.tokenIsIdentifierOrKeyword(XA())?_r():Ea(10);yt(58);var Er=Hl(!0);return ze(Q.createAssertEntry(Se,Er),ZA)}function Rp(ZA){var Se=JA();ZA||yt(130);var Er=N.getTokenPos();if(yt(18)){var Rr=N.hasPrecedingLineBreak(),ct=aa(24,uf,!0);if(!yt(19)){var Mt=A.lastOrUndefined(Ye);Mt&&Mt.code===A.Diagnostics._0_expected.code&&A.addRelatedInfo(Mt,A.createDetachedDiagnostic(Ze,Er,1,A.Diagnostics.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return ze(Q.createAssertClause(ct,Rr),Se)}else{var ct=xe([],JA(),void 0,!1);return ze(Q.createAssertClause(ct,!1),Se)}}function za(){return XA()===41||XA()===18}function QE(){return XA()===27||XA()===158}function OB(ZA,Se,Er,Rr,ct,Mt){yt(63);var Ni=MB();Va();var $i=Q.createImportEqualsDeclaration(Rr,Mt,ct,Ni);$i.illegalDecorators=Er;var tn=nr(ze($i,ZA),Se);return tn}function mE(ZA,Se,Er){var Rr;return(!ZA||wi(27))&&(Rr=XA()===41?tc():Id(272)),ze(Q.createImportClause(Er,ZA,Rr),Se)}function MB(){return $n()?JQ():Ba(!1)}function JQ(){var ZA=JA();yt(147),yt(20);var Se=Yf();return yt(21),ze(Q.createExternalModuleReference(Se),ZA)}function Yf(){if(XA()===10){var ZA=ec();return ZA.text=en(ZA.text),ZA}else return cl()}function tc(){var ZA=JA();yt(41),yt(128);var Se=ne();return ze(Q.createNamespaceImport(Se),ZA)}function Id(ZA){var Se=JA(),Er=ZA===272?Q.createNamedImports(la(23,DE,18,19)):Q.createNamedExports(la(23,im,18,19));return ze(Er,Se)}function im(){var ZA=Ve();return nr(rQ(278),ZA)}function DE(){return rQ(273)}function rQ(ZA){var Se=JA(),Er=A.isKeyword(XA())&&!Mi(),Rr=N.getTokenPos(),ct=N.getTextPos(),Mt=!1,Ni,$i=!0,tn=_r();if(tn.escapedText==="type")if(XA()===128){var wn=_r();if(XA()===128){var ka=_r();A.tokenIsIdentifierOrKeyword(XA())?(Mt=!0,Ni=wn,tn=Eo(),$i=!1):(Ni=tn,tn=ka,$i=!1)}else A.tokenIsIdentifierOrKeyword(XA())?(Ni=tn,$i=!1,tn=Eo()):(Mt=!0,tn=wn)}else A.tokenIsIdentifierOrKeyword(XA())&&(Mt=!0,tn=Eo());$i&&XA()===128&&(Ni=tn,yt(128),tn=Eo()),ZA===273&&Er&&ei(Rr,ct,A.Diagnostics.Identifier_expected);var Io=ZA===273?Q.createImportSpecifier(Mt,Ni,tn):Q.createExportSpecifier(Mt,Ni,tn);return ze(Io,Se);function Eo(){return Er=A.isKeyword(XA())&&!Mi(),Rr=N.getTokenPos(),ct=N.getTextPos(),_r()}}function qQ(ZA){return ze(Q.createNamespaceExport(_r()),ZA)}function H1(ZA,Se,Er,Rr){var ct=Zt();Te(!0);var Mt,Ni,$i,tn=wi(154),wn=JA();wi(41)?(wi(128)&&(Mt=qQ(wn)),yt(158),Ni=Yf()):(Mt=Id(276),(XA()===158||XA()===10&&!N.hasPrecedingLineBreak())&&(yt(158),Ni=Yf())),Ni&&XA()===130&&!N.hasPrecedingLineBreak()&&($i=Rp()),Va(),Te(ct);var ka=Q.createExportDeclaration(Rr,tn,Mt,Ni,$i);return ka.illegalDecorators=Er,nr(ze(ka,ZA),Se)}function VQ(ZA,Se,Er,Rr){var ct=Zt();Te(!0);var Mt;wi(63)?Mt=!0:yt(88);var Ni=Hl(!0);Va(),Te(ct);var $i=Q.createExportAssignment(Rr,Mt,Ni);return $i.illegalDecorators=Er,nr(ze($i,ZA),Se)}var kB;(function(ZA){ZA[ZA.SourceElements=0]="SourceElements",ZA[ZA.BlockStatements=1]="BlockStatements",ZA[ZA.SwitchClauses=2]="SwitchClauses",ZA[ZA.SwitchClauseStatements=3]="SwitchClauseStatements",ZA[ZA.TypeMembers=4]="TypeMembers",ZA[ZA.ClassMembers=5]="ClassMembers",ZA[ZA.EnumMembers=6]="EnumMembers",ZA[ZA.HeritageClauseElement=7]="HeritageClauseElement",ZA[ZA.VariableDeclarations=8]="VariableDeclarations",ZA[ZA.ObjectBindingElements=9]="ObjectBindingElements",ZA[ZA.ArrayBindingElements=10]="ArrayBindingElements",ZA[ZA.ArgumentExpressions=11]="ArgumentExpressions",ZA[ZA.ObjectLiteralMembers=12]="ObjectLiteralMembers",ZA[ZA.JsxAttributes=13]="JsxAttributes",ZA[ZA.JsxChildren=14]="JsxChildren",ZA[ZA.ArrayLiteralMembers=15]="ArrayLiteralMembers",ZA[ZA.Parameters=16]="Parameters",ZA[ZA.JSDocParameters=17]="JSDocParameters",ZA[ZA.RestProperties=18]="RestProperties",ZA[ZA.TypeParameters=19]="TypeParameters",ZA[ZA.TypeArguments=20]="TypeArguments",ZA[ZA.TupleElementTypes=21]="TupleElementTypes",ZA[ZA.HeritageClauses=22]="HeritageClauses",ZA[ZA.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",ZA[ZA.AssertEntries=24]="AssertEntries",ZA[ZA.Count=25]="Count"})(kB||(kB={}));var Hg;(function(ZA){ZA[ZA.False=0]="False",ZA[ZA.True=1]="True",ZA[ZA.Unknown=2]="Unknown"})(Hg||(Hg={}));var Gu;(function(ZA){function Se(wn,ka,Io){qA("file.js",wn,99,void 0,1),N.setText(wn,ka,Io),xr=N.scan();var Eo=Er(),Go=ke("file.js",99,1,!1,[],Q.createToken(1),0,A.noop),ic=A.attachFileToDiagnostics(Ye,Go);return mr&&(Go.jsDocDiagnostics=A.attachFileToDiagnostics(mr,Go)),oe(),Eo?{jsDocTypeExpression:Eo,diagnostics:ic}:void 0}ZA.parseJSDocTypeExpressionForTests=Se;function Er(wn){var ka=JA(),Io=(wn?wi:yt)(18),Eo=Ee(8388608,di);(!wn||Io)&&yo(19);var Go=Q.createJSDocTypeExpression(Eo);return nt(Go),ze(Go,ka)}ZA.parseJSDocTypeExpression=Er;function Rr(){for(var wn=JA(),ka=wi(18),Io=JA(),Eo=Ba(!1);XA()===80;)Ir(),Dr(),Eo=ze(Q.createJSDocMemberName(Eo,ne()),Io);ka&&yo(19);var Go=Q.createJSDocNameReference(Eo);return nt(Go),ze(Go,wn)}ZA.parseJSDocNameReference=Rr;function ct(wn,ka,Io){qA("",wn,99,void 0,1);var Eo=Ee(8388608,function(){return tn(ka,Io)}),Go={languageVariant:0,text:wn},ic=A.attachFileToDiagnostics(Ye,Go);return oe(),Eo?{jsDoc:Eo,diagnostics:ic}:void 0}ZA.parseIsolatedJSDocComment=ct;function Mt(wn,ka,Io){var Eo=xr,Go=Ye.length,ic=er,Zc=Ee(8388608,function(){return tn(ka,Io)});return A.setParent(Zc,wn),Ce&262144&&(mr||(mr=[]),mr.push.apply(mr,Ye)),xr=Eo,Ye.length=Go,er=ic,Zc}ZA.parseJSDocComment=Mt;var Ni;(function(wn){wn[wn.BeginningOfLine=0]="BeginningOfLine",wn[wn.SawAsterisk=1]="SawAsterisk",wn[wn.SavingComments=2]="SavingComments",wn[wn.SavingBackticks=3]="SavingBackticks"})(Ni||(Ni={}));var $i;(function(wn){wn[wn.Property=1]="Property",wn[wn.Parameter=2]="Parameter",wn[wn.CallbackParameter=4]="CallbackParameter"})($i||($i={}));function tn(wn,ka){wn===void 0&&(wn=0);var Io=be,Eo=ka===void 0?Io.length:wn+ka;if(ka=Eo-wn,A.Debug.assert(wn>=0),A.Debug.assert(wn<=Eo),A.Debug.assert(Eo<=Io.length),!_(Io,wn))return;var Go,ic,Zc,ws,tu,Ll=[],bc=[];return N.scanRange(wn+3,ka-5,function(){var ii=1,ln,fn=wn-(Io.lastIndexOf(` -`,wn)+1)+4;function Hi(Iu){ln||(ln=fn),Ll.push(Iu),fn+=Iu.length}for(Dr();gf(5););gf(4)&&(ii=0,fn=0);A:for(;;){switch(XA()){case 59:ii===0||ii===1?(Xu(Ll),tu||(tu=JA()),li(hA(fn)),ii=0,ln=void 0):Hi(N.getTokenText());break;case 4:Ll.push(N.getTokenText()),ii=0,fn=0;break;case 41:var ua=N.getTokenText();ii===1||ii===2?(ii=2,Hi(ua)):(ii=1,fn+=ua.length);break;case 5:var Xa=N.getTokenText();ii===2?Ll.push(Xa):ln!==void 0&&fn+Xa.length>ln&&Ll.push(Xa.slice(ln-fn)),fn+=Xa.length;break;case 1:break A;case 18:ii=2;var Ns=N.getStartPos(),jl=N.getTextPos()-1,Wl=Ht(jl);if(Wl){ws||Cl(Ll),bc.push(ze(Q.createJSDocText(Ll.join("")),ws??wn,Ns)),bc.push(Wl),Ll=[],ws=N.getTextPos();break}default:ii=2,Hi(N.getTokenText());break}Dr()}Xu(Ll),bc.length&&Ll.length&&bc.push(ze(Q.createJSDocText(Ll.join("")),ws??wn,tu)),bc.length&&Go&&A.Debug.assertIsDefined(tu,"having parsed tags implies that the end of the comment span should be set");var Fg=Go&&xe(Go,ic,Zc);return ze(Q.createJSDocComment(bc.length?xe(bc,wn,tu):Ll.length?Ll.join(""):void 0,Fg),wn,Eo)});function Cl(ii){for(;ii.length&&(ii[0]===` -`||ii[0]==="\r");)ii.shift()}function Xu(ii){for(;ii.length&&ii[ii.length-1].trim()==="";)ii.pop()}function _E(){for(;;){if(Dr(),XA()===1)return!0;if(!(XA()===5||XA()===4))return!1}}function Fs(){if(!((XA()===5||XA()===4)&&zt(_E)))for(;XA()===5||XA()===4;)Dr()}function L(){if((XA()===5||XA()===4)&&zt(_E))return"";for(var ii=N.hasPrecedingLineBreak(),ln=!1,fn="";ii&&XA()===41||XA()===5||XA()===4;)fn+=N.getTokenText(),XA()===4?(ii=!0,ln=!0,fn=""):XA()===41&&(ii=!1),Dr();return ln?fn:""}function hA(ii){A.Debug.assert(XA()===59);var ln=N.getTokenPos();Dr();var fn=Lf(void 0),Hi=L(),ua;switch(fn.escapedText){case"author":ua=iv(ln,fn,ii,Hi);break;case"implements":ua=KQ(ln,fn,ii,Hi);break;case"augments":case"extends":ua=om(ln,fn,ii,Hi);break;case"class":case"constructor":ua=gl(ln,Q.createJSDocClassTag,fn,ii,Hi);break;case"public":ua=gl(ln,Q.createJSDocPublicTag,fn,ii,Hi);break;case"private":ua=gl(ln,Q.createJSDocPrivateTag,fn,ii,Hi);break;case"protected":ua=gl(ln,Q.createJSDocProtectedTag,fn,ii,Hi);break;case"readonly":ua=gl(ln,Q.createJSDocReadonlyTag,fn,ii,Hi);break;case"override":ua=gl(ln,Q.createJSDocOverrideTag,fn,ii,Hi);break;case"deprecated":Or=!0,ua=gl(ln,Q.createJSDocDeprecatedTag,fn,ii,Hi);break;case"this":ua=nv(ln,fn,ii,Hi);break;case"enum":ua=F1(ln,fn,ii,Hi);break;case"arg":case"argument":case"param":return vE(ln,fn,2,ii);case"return":case"returns":ua=Uf(ln,fn,ii,Hi);break;case"template":ua=T1(ln,fn,ii,Hi);break;case"type":ua=nm(ln,fn,ii,Hi);break;case"typedef":ua=dc(ln,fn,ii,Hi);break;case"callback":ua=ov(ln,fn,ii,Hi);break;case"see":ua=Tp(ln,fn,ii,Hi);break;default:ua=Qc(ln,fn,ii,Hi);break}return ua}function NA(ii,ln,fn,Hi){return Hi||(fn+=ln-ii),he(fn,Hi.slice(fn))}function he(ii,ln){var fn=JA(),Hi=[],ua=[],Xa,Ns=0,jl=!0,Wl;function Fg(xB){Wl||(Wl=ii),Hi.push(xB),ii+=xB.length}ln!==void 0&&(ln!==""&&Fg(ln),Ns=1);var Iu=XA();A:for(;;){switch(Iu){case 4:Ns=0,Hi.push(N.getTokenText()),ii=0;break;case 59:if(Ns===3||Ns===2&&(!jl||zt(Qr))){Hi.push(N.getTokenText());break}N.setTextPos(N.getTextPos()-1);case 1:break A;case 5:if(Ns===2||Ns===3)Fg(N.getTokenText());else{var Zd=N.getTokenText();Wl!==void 0&&ii+Zd.length>Wl&&Hi.push(Zd.slice(Wl-ii)),ii+=Zd.length}break;case 18:Ns=2;var mh=N.getStartPos(),tQ=N.getTextPos()-1,$u=Ht(tQ);$u?(ua.push(ze(Q.createJSDocText(Hi.join("")),Xa??fn,mh)),ua.push($u),Hi=[],Xa=N.getTextPos()):Fg(N.getTokenText());break;case 61:Ns===3?Ns=2:Ns=3,Fg(N.getTokenText());break;case 41:if(Ns===0){Ns=1,ii+=1;break}default:Ns!==3&&(Ns=2),Fg(N.getTokenText());break}jl=XA()===5,Iu=Dr()}if(Cl(Hi),Xu(Hi),ua.length)return Hi.length&&ua.push(ze(Q.createJSDocText(Hi.join("")),Xa??fn)),xe(ua,fn,N.getTextPos());if(Hi.length)return Hi.join("")}function Qr(){var ii=Dr();return ii===5||ii===4}function Ht(ii){var ln=cn(Vi);if(ln){Dr(),Fs();var fn=JA(),Hi=A.tokenIsIdentifierOrKeyword(XA())?Ba(!0):void 0;if(Hi)for(;XA()===80;)Ir(),Dr(),Hi=ze(Q.createJSDocMemberName(Hi,ne()),fn);for(var ua=[];XA()!==19&&XA()!==4&&XA()!==1;)ua.push(N.getTokenText()),Dr();var Xa=ln==="link"?Q.createJSDocLink:ln==="linkcode"?Q.createJSDocLinkCode:Q.createJSDocLinkPlain;return ze(Xa(Hi,ua.join("")),ii,N.getTextPos())}}function Vi(){if(L(),XA()===18&&Dr()===59&&A.tokenIsIdentifierOrKeyword(Dr())){var ii=N.getTokenValue();if(Ra(ii))return ii}}function Ra(ii){return ii==="link"||ii==="linkcode"||ii==="linkplain"}function Qc(ii,ln,fn,Hi){return ze(Q.createJSDocUnknownTag(ln,NA(ii,JA(),fn,Hi)),ii)}function li(ii){ii&&(Go?Go.push(ii):(Go=[ii],ic=ii.pos),Zc=ii.end)}function Sg(){return L(),XA()===18?Er():void 0}function Zu(){var ii=gf(22);ii&&Fs();var ln=gf(61),fn=cm();return ln&&Uo(61),ii&&(Fs(),bi(63)&&cl(),yt(23)),{name:fn,isBracketed:ii}}function wE(ii){switch(ii.kind){case 149:return!0;case 185:return wE(ii.elementType);default:return A.isTypeReferenceNode(ii)&&A.isIdentifier(ii.typeName)&&ii.typeName.escapedText==="Object"&&!ii.typeArguments}}function vE(ii,ln,fn,Hi){var ua=Sg(),Xa=!ua;L();var Ns=Zu(),jl=Ns.name,Wl=Ns.isBracketed,Fg=L();Xa&&!zt(Vi)&&(ua=Sg());var Iu=NA(ii,JA(),Hi,Fg),Zd=fn!==4&&zQ(ua,jl,fn,Hi);Zd&&(ua=Zd,Xa=!0);var mh=fn===1?Q.createJSDocPropertyTag(ln,jl,Wl,ua,Xa,Iu):Q.createJSDocParameterTag(ln,jl,Wl,ua,Xa,Iu);return ze(mh,ii)}function zQ(ii,ln,fn,Hi){if(ii&&wE(ii.type)){for(var ua=JA(),Xa=void 0,Ns=void 0;Xa=cn(function(){return sm(fn,Hi,ln)});)(Xa.kind===343||Xa.kind===350)&&(Ns=A.append(Ns,Xa));if(Ns){var jl=ze(Q.createJSDocTypeLiteral(Ns,ii.type.kind===185),ua);return ze(Q.createJSDocTypeExpression(jl),ua)}}}function Uf(ii,ln,fn,Hi){A.some(Go,A.isJSDocReturnTag)&&ei(ln.pos,N.getTokenPos(),A.Diagnostics._0_tag_already_specified,ln.escapedText);var ua=Sg();return ze(Q.createJSDocReturnTag(ln,ua,NA(ii,JA(),fn,Hi)),ii)}function nm(ii,ln,fn,Hi){A.some(Go,A.isJSDocTypeTag)&&ei(ln.pos,N.getTokenPos(),A.Diagnostics._0_tag_already_specified,ln.escapedText);var ua=Er(!0),Xa=fn!==void 0&&Hi!==void 0?NA(ii,JA(),fn,Hi):void 0;return ze(Q.createJSDocTypeTag(ln,ua,Xa),ii)}function Tp(ii,ln,fn,Hi){var ua=XA()===22||zt(function(){return Dr()===59&&A.tokenIsIdentifierOrKeyword(Dr())&&Ra(N.getTokenValue())}),Xa=ua?void 0:Rr(),Ns=fn!==void 0&&Hi!==void 0?NA(ii,JA(),fn,Hi):void 0;return ze(Q.createJSDocSeeTag(ln,Xa,Ns),ii)}function iv(ii,ln,fn,Hi){var ua=JA(),Xa=am(),Ns=N.getStartPos(),jl=NA(ii,Ns,fn,Hi);jl||(Ns=N.getStartPos());var Wl=typeof jl!="string"?xe(A.concatenate([ze(Xa,ua,Ns)],jl),ua):Xa.text+jl;return ze(Q.createJSDocAuthorTag(ln,Wl),ii)}function am(){for(var ii=[],ln=!1,fn=N.getToken();fn!==1&&fn!==4;){if(fn===29)ln=!0;else{if(fn===59&&!ln)break;if(fn===31&&ln){ii.push(N.getTokenText()),N.setTextPos(N.getTokenPos()+1);break}}ii.push(N.getTokenText()),fn=Dr()}return Q.createJSDocText(ii.join(""))}function KQ(ii,ln,fn,Hi){var ua=S1();return ze(Q.createJSDocImplementsTag(ln,ua,NA(ii,JA(),fn,Hi)),ii)}function om(ii,ln,fn,Hi){var ua=S1();return ze(Q.createJSDocAugmentsTag(ln,ua,NA(ii,JA(),fn,Hi)),ii)}function S1(){var ii=wi(18),ln=JA(),fn=XQ(),Hi=kr(),ua=Q.createExpressionWithTypeArguments(fn,Hi),Xa=ze(ua,ln);return ii&&yt(19),Xa}function XQ(){for(var ii=JA(),ln=Lf();wi(24);){var fn=Lf();ln=ze(Q.createPropertyAccessExpression(ln,fn),ii)}return ln}function gl(ii,ln,fn,Hi,ua){return ze(ln(fn,NA(ii,JA(),Hi,ua)),ii)}function nv(ii,ln,fn,Hi){var ua=Er(!0);return Fs(),ze(Q.createJSDocThisTag(ln,ua,NA(ii,JA(),fn,Hi)),ii)}function F1(ii,ln,fn,Hi){var ua=Er(!0);return Fs(),ze(Q.createJSDocEnumTag(ln,ua,NA(ii,JA(),fn,Hi)),ii)}function dc(ii,ln,fn,Hi){var ua,Xa=Sg();L();var Ns=R1();Fs();var jl=he(fn),Wl;if(!Xa||wE(Xa.type)){for(var Fg=void 0,Iu=void 0,Zd=void 0,mh=!1;Fg=cn(function(){return sv(fn)});)if(mh=!0,Fg.kind===346)if(Iu){var tQ=Ot(A.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);tQ&&A.addRelatedInfo(tQ,A.createDetachedDiagnostic(Ze,0,0,A.Diagnostics.The_tag_was_first_specified_here));break}else Iu=Fg;else Zd=A.append(Zd,Fg);if(mh){var $u=Xa&&Xa.type.kind===185,xB=Q.createJSDocTypeLiteral(Zd,$u);Xa=Iu&&Iu.typeExpression&&!wE(Iu.typeExpression.type)?Iu.typeExpression:ze(xB,ii),Wl=Xa.end}}Wl=Wl||jl!==void 0?JA():((ua=Ns??Xa)!==null&&ua!==void 0?ua:ln).end,jl||(jl=NA(ii,Wl,fn,Hi));var jf=Q.createJSDocTypedefTag(ln,Xa,Ns,jl);return ze(jf,ii,Wl)}function R1(ii){var ln=N.getTokenPos();if(A.tokenIsIdentifierOrKeyword(XA())){var fn=Lf();if(wi(24)){var Hi=R1(!0),ua=Q.createModuleDeclaration(void 0,fn,Hi,ii?4:void 0);return ze(ua,ln)}return ii&&(fn.isInJSDocNamespace=!0),fn}}function av(ii){for(var ln=JA(),fn,Hi;fn=cn(function(){return sm(4,ii)});)Hi=A.append(Hi,fn);return xe(Hi||[],ln)}function ov(ii,ln,fn,Hi){var ua=R1();Fs();var Xa=he(fn),Ns=av(fn),jl=cn(function(){if(gf(59)){var Iu=hA(fn);if(Iu&&Iu.kind===344)return Iu}}),Wl=ze(Q.createJSDocSignature(void 0,Ns,jl),ii);Xa||(Xa=NA(ii,JA(),fn,Hi));var Fg=Xa!==void 0?JA():Wl.end;return ze(Q.createJSDocCallbackTag(ln,Wl,ua,Xa),ii,Fg)}function hh(ii,ln){for(;!A.isIdentifier(ii)||!A.isIdentifier(ln);)if(!A.isIdentifier(ii)&&!A.isIdentifier(ln)&&ii.right.escapedText===ln.right.escapedText)ii=ii.left,ln=ln.left;else return!1;return ii.escapedText===ln.escapedText}function sv(ii){return sm(1,ii)}function sm(ii,ln,fn){for(var Hi=!0,ua=!1;;)switch(Dr()){case 59:if(Hi){var Xa=Yu(ii,ln);return Xa&&(Xa.kind===343||Xa.kind===350)&&ii!==4&&fn&&(A.isIdentifier(Xa.name)||!hh(fn,Xa.name.left))?!1:Xa}ua=!1;break;case 4:Hi=!0,ua=!1;break;case 41:ua&&(Hi=!1),ua=!0;break;case 79:Hi=!1;break;case 1:return!1}}function Yu(ii,ln){A.Debug.assert(XA()===59);var fn=N.getStartPos();Dr();var Hi=Lf();Fs();var ua;switch(Hi.escapedText){case"type":return ii===1&&nm(fn,Hi);case"prop":case"property":ua=1;break;case"arg":case"argument":case"param":ua=6;break;default:return!1}return ii&ua?vE(fn,Hi,ii,ln):!1}function QD(){var ii=JA(),ln=gf(22);ln&&Fs();var fn=Lf(A.Diagnostics.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),Hi;if(ln&&(Fs(),yt(63),Hi=Ee(8388608,di),yt(23)),!A.nodeIsMissing(fn))return ze(Q.createTypeParameterDeclaration(void 0,fn,void 0,Hi),ii)}function Qh(){var ii=JA(),ln=[];do{Fs();var fn=QD();fn!==void 0&&ln.push(fn),L()}while(gf(27));return xe(ln,ii)}function T1(ii,ln,fn,Hi){var ua=XA()===18?Er():void 0,Xa=Qh();return ze(Q.createJSDocTemplateTag(ln,ua,Xa,NA(ii,JA(),fn,Hi)),ii)}function gf(ii){return XA()===ii?(Dr(),!0):!1}function cm(){var ii=Lf();for(wi(22)&&yt(23);wi(24);){var ln=Lf();wi(22)&&yt(23),ii=po(ii,ln)}return ii}function Lf(ii){if(!A.tokenIsIdentifierOrKeyword(XA()))return Lt(79,!ii,ii||A.Diagnostics.Identifier_expected);ae++;var ln=N.getTokenPos(),fn=N.getTextPos(),Hi=XA(),ua=en(N.getTokenValue()),Xa=ze(Q.createIdentifier(ua,void 0,Hi),ln,fn);return Dr(),Xa}}})(Gu=tA.JSDocParser||(tA.JSDocParser={}))})(gA||(gA={}));var QA;(function(tA){function N(be,Me,Le,ir){if(ir=ir||A.Debug.shouldAssert(2),Q(be,Me,Le,ir),A.textChangeRangeIsUnchanged(Le))return be;if(be.statements.length===0)return gA.parseSourceFile(be.fileName,Me,be.languageVersion,void 0,!0,be.scriptKind,be.setExternalModuleIndicator);var Ye=be;A.Debug.assert(!Ye.hasBeenIncrementallyParsed),Ye.hasBeenIncrementallyParsed=!0,gA.fixupParentReferences(Ye);var mr=be.text,$e=Ze(be),xr=_e(be,Le);Q(be,Me,xr,ir),A.Debug.assert(xr.span.start<=Le.span.start),A.Debug.assert(A.textSpanEnd(xr.span)===A.textSpanEnd(Le.span)),A.Debug.assert(A.textSpanEnd(A.textChangeRangeNewSpan(xr))===A.textSpanEnd(A.textChangeRangeNewSpan(Le)));var PA=A.textChangeRangeNewSpan(xr).length-xr.span.length;De(Ye,xr.span.start,A.textSpanEnd(xr.span),A.textSpanEnd(A.textChangeRangeNewSpan(xr)),PA,mr,Me,ir);var we=gA.parseSourceFile(be.fileName,Me,be.languageVersion,$e,!0,be.scriptKind,be.setExternalModuleIndicator);return we.commentDirectives=nA(be.commentDirectives,we.commentDirectives,xr.span.start,A.textSpanEnd(xr.span),PA,mr,Me,ir),we.impliedNodeFormat=be.impliedNodeFormat,we}tA.updateSourceFile=N;function nA(be,Me,Le,ir,Ye,mr,$e,xr){if(!be)return Me;for(var PA,we=!1,LA=0,ae=be;LAir){er();var Ke={range:{pos:YA.pos+Ye,end:YA.end+Ye},type:Ce};PA=A.append(PA,Ke),xr&&A.Debug.assert(mr.substring(YA.pos,YA.end)===$e.substring(Ke.range.pos,Ke.range.end))}}return er(),PA;function er(){we||(we=!0,PA?Me&&PA.push.apply(PA,Me):PA=Me)}}function kA(be,Me,Le,ir,Ye,mr){Me?xr(be):$e(be);return;function $e(PA){var we="";if(mr&&bA(PA)&&(we=ir.substring(PA.pos,PA.end)),PA._children&&(PA._children=void 0),A.setTextRangePosEnd(PA,PA.pos+Le,PA.end+Le),mr&&bA(PA)&&A.Debug.assert(we===Ye.substring(PA.pos,PA.end)),sA(PA,$e,xr),A.hasJSDocNodes(PA))for(var LA=0,ae=PA.jsDoc;LA=Me,"Adjusting an element that was entirely before the change range"),A.Debug.assert(be.pos<=Le,"Adjusting an element that was entirely after the change range"),A.Debug.assert(be.pos<=be.end);var mr=Math.min(be.pos,ir),$e=be.end>=Le?be.end+Ye:Math.min(be.end,ir);A.Debug.assert(mr<=$e),be.parent&&(A.Debug.assertGreaterThanOrEqual(mr,be.parent.pos),A.Debug.assertLessThanOrEqual($e,be.parent.end)),A.setTextRangePosEnd(be,mr,$e)}function VA(be,Me){if(Me){var Le=be.pos,ir=function(xr){A.Debug.assert(xr.pos>=Le),Le=xr.end};if(A.hasJSDocNodes(be))for(var Ye=0,mr=be.jsDoc;YeLe){kA(LA,!1,Ye,mr,$e,xr);return}var ae=LA.end;if(ae>=Me){if(LA.intersectsChange=!0,LA._children=void 0,TA(LA,Me,Le,ir,Ye),sA(LA,PA,we),A.hasJSDocNodes(LA))for(var We=0,YA=LA.jsDoc;WeLe){kA(LA,!0,Ye,mr,$e,xr);return}var ae=LA.end;if(ae>=Me){LA.intersectsChange=!0,LA._children=void 0,TA(LA,Me,Le,ir,Ye);for(var We=0,YA=LA;We0&&Ye<=Le;Ye++){var mr=Ae(be,ir);A.Debug.assert(mr.pos<=ir);var $e=mr.pos;ir=Math.max(0,$e-1)}var xr=A.createTextSpanFromBounds(ir,A.textSpanEnd(Me.span)),PA=Me.newLength+(Me.span.start-ir);return A.createTextChangeRange(xr,PA)}function Ae(be,Me){var Le=be,ir;if(sA(be,$e),ir){var Ye=mr(ir);Ye.pos>Le.pos&&(Le=Ye)}return Le;function mr(xr){for(;;){var PA=A.getLastChild(xr);if(PA)xr=PA;else return xr}}function $e(xr){if(!A.nodeIsMissing(xr))if(xr.pos<=Me){if(xr.pos>=Le.pos&&(Le=xr),MeMe),!0}}function Q(be,Me,Le,ir){var Ye=be.text;if(Le&&(A.Debug.assert(Ye.length-Le.span.length+Le.newLength===Me.length),ir||A.Debug.shouldAssert(3))){var mr=Ye.substr(0,Le.span.start),$e=Me.substr(0,Le.span.start);A.Debug.assert(mr===$e);var xr=Ye.substring(A.textSpanEnd(Le.span),Ye.length),PA=Me.substring(A.textSpanEnd(A.textChangeRangeNewSpan(Le)),Me.length);A.Debug.assert(xr===PA)}}function Ze(be){var Me=be.statements,Le=0;A.Debug.assert(Le=we.pos&&$e=we.pos&&$etA.checkJsDirective.pos)&&(tA.checkJsDirective={enabled:kA==="ts-check",end:Q.range.end,pos:Q.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:A.Debug.fail("Unhandled pragma kind")}})}A.processPragmasIntoFields=ce;var re=new A.Map;function KA(tA){if(re.has(tA))return re.get(tA);var N=new RegExp("(\\s".concat(tA,`\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`),"im");return re.set(tA,N),N}var $A=/^\/\/\/\s*<(\S+)\s.*?\/>/im,jA=/^\/\/\/?\s*@(\S+)\s*(.*)\s*$/im;function ue(tA,N,nA){var kA=N.kind===2&&$A.exec(nA);if(kA){var bA=kA[1].toLowerCase(),TA=A.commentPragmas[bA];if(!TA||!(TA.kind&1))return;if(TA.args){for(var VA={},De=0,_e=TA.args;De<_e.length;De++){var Ae=_e[De],Q=KA(Ae.name),Ze=Q.exec(nA);if(!Ze&&!Ae.optional)return;if(Ze){var Cr=Ze[2]||Ze[3];if(Ae.captureSpan){var be=N.pos+Ze.index+Ze[1].length+1;VA[Ae.name]={value:Cr,pos:be,end:be+Cr.length}}else VA[Ae.name]=Cr}}tA.push({name:bA,args:{arguments:VA,range:N}})}else tA.push({name:bA,args:{arguments:{},range:N}});return}var Me=N.kind===2&&jA.exec(nA);if(Me)return MA(tA,N,2,Me);if(N.kind===3)for(var Le=/@(\S+)(\s+.*)?$/gim,ir=void 0;ir=Le.exec(nA);)MA(tA,N,4,ir)}function MA(tA,N,nA,kA){if(kA){var bA=kA[1].toLowerCase(),TA=A.commentPragmas[bA];if(!(!TA||!(TA.kind&nA))){var VA=kA[2],De=RA(TA,VA);De!=="fail"&&tA.push({name:bA,args:{arguments:De,range:N}})}}}function RA(tA,N){if(!N)return{};if(!tA.args)return{};for(var nA=A.trimString(N).split(/\s+/),kA={},bA=0;bA=Lr.length)break;var Et=Pr;if(Lr.charCodeAt(Et)===34){for(Pr++;Pr32;)Pr++;gt.push(Lr.substring(Et,Pr))}}Mr(gt)}}A.parseCommandLineWorker=P;function H(HA,pe,ee,Pe,He,Xe){if(Pe.isTSConfigOnly){var or=HA[pe];or==="null"?(He[Pe.name]=void 0,pe++):Pe.type==="boolean"?or==="false"?(He[Pe.name]=hr(Pe,!1,Xe),pe++):(or==="true"&&pe++,Xe.push(A.createCompilerDiagnostic(A.Diagnostics.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,Pe.name))):(Xe.push(A.createCompilerDiagnostic(A.Diagnostics.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,Pe.name)),or&&!A.startsWith(or,"-")&&pe++)}else if(!HA[pe]&&Pe.type!=="boolean"&&Xe.push(A.createCompilerDiagnostic(ee.optionTypeMismatchDiagnostic,Pe.name,gA(Pe))),HA[pe]!=="null")switch(Pe.type){case"number":He[Pe.name]=hr(Pe,parseInt(HA[pe]),Xe),pe++;break;case"boolean":var or=HA[pe];He[Pe.name]=hr(Pe,or!=="false",Xe),(or==="false"||or==="true")&&pe++;break;case"string":He[Pe.name]=hr(Pe,HA[pe]||"",Xe),pe++;break;case"list":var Mr=x(Pe,HA[pe],Xe);He[Pe.name]=Mr||[],Mr&&pe++;break;default:He[Pe.name]=_(Pe,HA[pe],Xe),pe++;break}else He[Pe.name]=void 0,pe++;return pe}A.compilerOptionsDidYouMeanDiagnostics={alternateMode:E,getOptionsNameMap:g,optionDeclarations:A.optionDeclarations,unknownOptionDiagnostic:A.Diagnostics.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:A.Diagnostics.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:A.Diagnostics.Compiler_option_0_expects_an_argument};function T(HA,pe){return P(A.compilerOptionsDidYouMeanDiagnostics,HA,pe)}A.parseCommandLine=T;function v(HA,pe){return F(g,HA,pe)}A.getOptionFromName=v;function F(HA,pe,ee){ee===void 0&&(ee=!1),pe=pe.toLowerCase();var Pe=HA(),He=Pe.optionsNameMap,Xe=Pe.shortOptionNames;if(ee){var or=Xe.get(pe);or!==void 0&&(pe=or)}return He.get(pe)}var y;function S(){return y||(y=o(A.buildOpts))}var U={diagnostic:A.Diagnostics.Compiler_option_0_may_not_be_used_with_build,getOptionsNameMap:g},V={alternateMode:U,getOptionsNameMap:S,optionDeclarations:A.buildOpts,unknownOptionDiagnostic:A.Diagnostics.Unknown_build_option_0,unknownDidYouMeanDiagnostic:A.Diagnostics.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:A.Diagnostics.Build_option_0_requires_a_value_of_type_1};function wA(HA){var pe=P(V,HA),ee=pe.options,Pe=pe.watchOptions,He=pe.fileNames,Xe=pe.errors,or=ee;return He.length===0&&He.push("."),or.clean&&or.force&&Xe.push(A.createCompilerDiagnostic(A.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","force")),or.clean&&or.verbose&&Xe.push(A.createCompilerDiagnostic(A.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","verbose")),or.clean&&or.watch&&Xe.push(A.createCompilerDiagnostic(A.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","watch")),or.watch&&or.dry&&Xe.push(A.createCompilerDiagnostic(A.Diagnostics.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:or,watchOptions:Pe,projects:He,errors:Xe}}A.parseBuildCommand=wA;function IA(HA){for(var pe=[],ee=1;ee=0)return or.push(A.createCompilerDiagnostic(A.Diagnostics.Circularity_detected_while_resolving_configuration_Colon_0,dt(dt([],Xe,!0),[lt],!1).join(" -> "))),{raw:HA||M(pe,or)};var Lr=HA?Le(HA,ee,Pe,He,or):ir(pe,ee,Pe,He,or);if(!((ar=Lr.options)===null||ar===void 0)&&ar.paths&&(Lr.options.pathsBasePath=Pe),Lr.extendedConfigPath){Xe=Xe.concat([lt]);var gt=mr(pe,Lr.extendedConfigPath,ee,Xe,or,Mr);if(gt&&be(gt)){var Pr=gt.raw,Et=Lr.raw,Zt,Ot=function(_i){!Et[_i]&&Pr[_i]&&(Et[_i]=A.map(Pr[_i],function(ei){return A.isRootedDiskPath(ei)?ei:A.combinePaths(Zt||(Zt=A.convertToRelativePath(A.getDirectoryPath(Lr.extendedConfigPath),Pe,A.createGetCanonicalFileName(ee.useCaseSensitiveFileNames))),ei)}))};Ot("include"),Ot("exclude"),Ot("files"),Et.compileOnSave===void 0&&(Et.compileOnSave=Pr.compileOnSave),Lr.options=A.assign({},gt.options,Lr.options),Lr.watchOptions=Lr.watchOptions&>.watchOptions?A.assign({},gt.watchOptions,Lr.watchOptions):Lr.watchOptions||gt.watchOptions}}return Lr}function Le(HA,pe,ee,Pe,He){A.hasProperty(HA,"excludes")&&He.push(A.createCompilerDiagnostic(A.Diagnostics.Unknown_option_excludes_Did_you_mean_exclude));var Xe=LA(HA.compilerOptions,ee,He,Pe),or=We(HA.typeAcquisition||HA.typingOptions,ee,He,Pe),Mr=YA(HA.watchOptions,ee,He);HA.compileOnSave=$e(HA,ee,He);var ar;if(HA.extends)if(!A.isString(HA.extends))He.push(A.createCompilerDiagnostic(A.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"extends","string"));else{var lt=Pe?VA(Pe,ee):ee;ar=Ye(HA.extends,pe,lt,He,A.createCompilerDiagnostic)}return{raw:HA,options:Xe,watchOptions:Mr,typeAcquisition:or,extendedConfigPath:ar}}function ir(HA,pe,ee,Pe,He){var Xe=we(Pe),or,Mr,ar,lt,Lr,gt={onSetValidOptionKeyValueInParent:function(Et,Zt,Ot){var _i;switch(Et){case"compilerOptions":_i=Xe;break;case"watchOptions":_i=ar||(ar={});break;case"typeAcquisition":_i=or||(or=ae(Pe));break;case"typingOptions":_i=Mr||(Mr=ae(Pe));break;default:A.Debug.fail("Unknown option")}_i[Zt.name]=er(Zt,ee,Ot)},onSetValidOptionKeyValueInRoot:function(Et,Zt,Ot,_i){switch(Et){case"extends":var ei=Pe?VA(Pe,ee):ee;lt=Ye(Ot,pe,ei,He,function(Yt,Xr){return A.createDiagnosticForNodeInSourceFile(HA,_i,Yt,Xr)});return}},onSetUnknownOptionKeyValueInRoot:function(Et,Zt,Ot,_i){Et==="excludes"&&He.push(A.createDiagnosticForNodeInSourceFile(HA,Zt,A.Diagnostics.Unknown_option_excludes_Did_you_mean_exclude)),A.find(i,function(ei){return ei.name===Et})&&(Lr=A.append(Lr,Zt))}},Pr=fA(HA,He,!0,gt);return or||(Mr?or=Mr.enableAutoDiscovery!==void 0?{enable:Mr.enableAutoDiscovery,include:Mr.include,exclude:Mr.exclude}:Mr:or=ae(Pe)),Lr&&Pr&&Pr.compilerOptions===void 0&&He.push(A.createDiagnosticForNodeInSourceFile(HA,Lr[0],A.Diagnostics._0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file,A.getTextOfPropertyName(Lr[0]))),{raw:Pr,options:Xe,watchOptions:ar,typeAcquisition:or,extendedConfigPath:lt}}function Ye(HA,pe,ee,Pe,He){if(HA=A.normalizeSlashes(HA),A.isRootedDiskPath(HA)||A.startsWith(HA,"./")||A.startsWith(HA,"../")){var Xe=A.getNormalizedAbsolutePath(HA,ee);if(!pe.fileExists(Xe)&&!A.endsWith(Xe,".json")&&(Xe="".concat(Xe,".json"),!pe.fileExists(Xe))){Pe.push(He(A.Diagnostics.File_0_not_found,HA));return}return Xe}var or=A.nodeModuleNameResolver(HA,A.combinePaths(ee,"tsconfig.json"),{moduleResolution:A.ModuleResolutionKind.NodeJs},pe,void 0,void 0,!0);if(or.resolvedModule)return or.resolvedModule.resolvedFileName;Pe.push(He(A.Diagnostics.File_0_not_found,HA))}function mr(HA,pe,ee,Pe,He,Xe){var or,Mr=ee.useCaseSensitiveFileNames?pe:A.toFileNameLowerCase(pe),ar,lt,Lr;if(Xe&&(ar=Xe.get(Mr))?(lt=ar.extendedResult,Lr=ar.extendedConfig):(lt=eA(pe,function(gt){return ee.readFile(gt)}),lt.parseDiagnostics.length||(Lr=Me(void 0,lt,ee,A.getDirectoryPath(pe),A.getBaseFileName(pe),Pe,He,Xe)),Xe&&Xe.set(Mr,{extendedResult:lt,extendedConfig:Lr})),HA&&(HA.extendedSourceFiles=[lt.fileName],lt.extendedSourceFiles&&(or=HA.extendedSourceFiles).push.apply(or,lt.extendedSourceFiles)),lt.parseDiagnostics.length){He.push.apply(He,lt.parseDiagnostics);return}return Lr}function $e(HA,pe,ee){if(!A.hasProperty(HA,A.compileOnSaveCommandLineOption.name))return!1;var Pe=Ke(A.compileOnSaveCommandLineOption,HA.compileOnSave,pe,ee);return typeof Pe=="boolean"&&Pe}function xr(HA,pe,ee){var Pe=[],He=LA(HA,pe,Pe,ee);return{options:He,errors:Pe}}A.convertCompilerOptionsFromJson=xr;function PA(HA,pe,ee){var Pe=[],He=We(HA,pe,Pe,ee);return{options:He,errors:Pe}}A.convertTypeAcquisitionFromJson=PA;function we(HA){var pe=HA&&A.getBaseFileName(HA)==="jsconfig.json"?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{};return pe}function LA(HA,pe,ee,Pe){var He=we(Pe);return Ce(uA(),HA,pe,He,A.compilerOptionsDidYouMeanDiagnostics,ee),Pe&&(He.configFilePath=A.normalizeSlashes(Pe)),He}function ae(HA){return{enable:!!HA&&A.getBaseFileName(HA)==="jsconfig.json",include:[],exclude:[]}}function We(HA,pe,ee,Pe){var He=ae(Pe),Xe=p(HA);return Ce(AA(),Xe,pe,He,X,ee),He}function YA(HA,pe,ee){return Ce(CA(),HA,pe,void 0,J,ee)}function Ce(HA,pe,ee,Pe,He,Xe){if(pe){for(var or in pe){var Mr=HA.get(or);Mr?(Pe||(Pe={}))[Mr.name]=Ke(Mr,pe[or],ee,Xe):Xe.push(k(or,He,A.createCompilerDiagnostic))}return Pe}}function Ke(HA,pe,ee,Pe){if(QA(HA,pe)){var He=HA.type;if(He==="list"&&A.isArray(pe))return qA(HA,pe,ee,Pe);if(!A.isString(He))return Fr(HA,pe,Pe);var Xe=hr(HA,pe,Pe);return TA(Xe)?Xe:ur(HA,ee,Xe)}else Pe.push(A.createCompilerDiagnostic(A.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,HA.name,gA(HA)))}A.convertJsonOption=Ke;function er(HA,pe,ee){if(!TA(ee)){if(HA.type==="list"){var Pe=HA;return Pe.element.isFilePath||!A.isString(Pe.element.type)?A.filter(A.map(ee,function(He){return er(Pe.element,pe,He)}),function(He){return Pe.listPreserveFalsyValues?!0:!!He}):ee}else if(!A.isString(HA.type))return HA.type.get(A.isString(ee)?ee.toLowerCase():ee);return ur(HA,pe,ee)}}function ur(HA,pe,ee){return HA.isFilePath&&(ee=A.getNormalizedAbsolutePath(ee,pe),ee===""&&(ee=".")),ee}function hr(HA,pe,ee){var Pe;if(!TA(pe)){var He=(Pe=HA.extraValidation)===null||Pe===void 0?void 0:Pe.call(HA,pe);if(!He)return pe;ee.push(A.createCompilerDiagnostic.apply(void 0,He))}}function Fr(HA,pe,ee){if(!TA(pe)){var Pe=pe.toLowerCase(),He=HA.type.get(Pe);if(He!==void 0)return hr(HA,He,ee);ee.push(B(HA))}}function qA(HA,pe,ee,Pe){return A.filter(A.map(pe,function(He){return Ke(HA.element,He,ee,Pe)}),function(He){return HA.listPreserveFalsyValues?!0:!!He})}var oe=/(^|\/)\*\*\/?$/,Ge=/^[^*?]*(?=\/[^/]*[*?])/;function nr(HA,pe,ee,Pe,He){He===void 0&&(He=A.emptyArray),pe=A.normalizePath(pe);var Xe=A.createGetCanonicalFileName(Pe.useCaseSensitiveFileNames),or=new A.Map,Mr=new A.Map,ar=new A.Map,lt=HA.validatedFilesSpec,Lr=HA.validatedIncludeSpecs,gt=HA.validatedExcludeSpecs,Pr=A.getSupportedExtensions(ee,He),Et=A.getSupportedExtensionsWithJsonIfResolveJsonModule(ee,Pr);if(lt)for(var Zt=0,Ot=lt;Zt0)for(var Xr=function(ot){if(A.fileExtensionIs(ot,".json")){if(!Yt){var Sr=Lr.filter(function(Bt){return A.endsWith(Bt,".json")}),Dr=A.map(A.getRegularExpressionsForWildcards(Sr,pe,"files"),function(Bt){return"^".concat(Bt,"$")});Yt=Dr?Dr.map(function(Bt){return A.getRegexFromPattern(Bt,Pe.useCaseSensitiveFileNames)}):A.emptyArray}var Jr=A.findIndex(Yt,function(Bt){return Bt.test(ot)});if(Jr!==-1){var Yr=Xe(ot);!or.has(Yr)&&!ar.has(Yr)&&ar.set(Yr,ot)}return"continue"}if(te(ot,or,Mr,Pr,Xe))return"continue";Te(ot,Mr,Pr,Xe);var rt=Xe(ot);!or.has(rt)&&!Mr.has(rt)&&Mr.set(rt,ot)},JA=0,Ve=Pe.readDirectory(pe,A.flatten(Et),gt,Lr,void 0);JApe}function Ur(HA,pe,ee,Pe){return nt(HA,A.filter(pe,function(He){return!tr(He)}),ee,Pe)}A.matchesExclude=Ur;function nt(HA,pe,ee,Pe,He){var Xe=A.getRegularExpressionForWildcard(pe,A.combinePaths(A.normalizePath(Pe),He),"exclude"),or=Xe&&A.getRegexFromPattern(Xe,ee);return or?or.test(HA)?!0:!A.hasExtension(HA)&&or.test(A.ensureTrailingDirectorySeparator(HA)):!1}function ke(HA,pe,ee,Pe,He){return HA.filter(function(or){if(!A.isString(or))return!1;var Mr=Je(or,ee);return Mr!==void 0&&pe.push(Xe.apply(void 0,Mr)),Mr===void 0});function Xe(or,Mr){var ar=A.getTsConfigPropArrayElementValue(Pe,He,Mr);return ar?A.createDiagnosticForNodeInSourceFile(Pe,ar,or,Mr):A.createCompilerDiagnostic(or,Mr)}}function Je(HA,pe){if(pe&&oe.test(HA))return[A.Diagnostics.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,HA];if(tr(HA))return[A.Diagnostics.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,HA]}function Ar(HA,pe,ee){var Pe=HA.validatedIncludeSpecs,He=HA.validatedExcludeSpecs,Xe=A.getRegularExpressionForWildcard(He,pe,"exclude"),or=Xe&&new RegExp(Xe,ee?"":"i"),Mr={};if(Pe!==void 0){for(var ar=[],lt=0,Lr=Pe;lt=0;Xe--){var or=He[Xe];if(A.fileExtensionIs(HA,or))return;var Mr=Pe(A.changeExtension(HA,or));pe.delete(Mr)}}function UA(HA){var pe={};for(var ee in HA)if(A.hasProperty(HA,ee)){var Pe=v(ee);Pe!==void 0&&(pe[ee]=Ee(HA[ee],Pe))}return pe}A.convertCompilerOptionsForTelemetry=UA;function Ee(HA,pe){switch(pe.type){case"object":return"";case"string":return"";case"number":return typeof HA=="number"?HA:"";case"boolean":return typeof HA=="boolean"?HA:"";case"list":var ee=pe.element;return A.isArray(HA)?HA.map(function(Pe){return Ee(Pe,ee)}):"";default:return A.forEachEntry(pe.type,function(Pe,He){if(Pe===HA)return He})}}function de(HA){switch(HA.type){case"number":return 1;case"boolean":return!0;case"string":var pe=HA.defaultValueDescription;return HA.isFilePath?"./".concat(pe&&typeof pe=="string"?pe:""):"";case"list":return[];case"object":return{};default:var ee=HA.type.keys().next();return ee.done?A.Debug.fail("Expected 'option.type' to have entries."):ee.value}}})(Oe||(Oe={}));var Oe;(function(A){function r(ke){ke.trace(A.formatMessage.apply(void 0,arguments))}A.trace=r;function t(ke,Je){return!!ke.traceResolution&&Je.trace!==void 0}A.isTraceEnabled=t;function i(ke,Je){var Ar;if(Je&&ke){var fr=ke.contents.packageJsonContent;typeof fr.name=="string"&&typeof fr.version=="string"&&(Ar={name:fr.name,subModuleName:Je.path.slice(ke.packageDirectory.length+A.directorySeparator.length),version:fr.version})}return Je&&{path:Je.path,extension:Je.ext,packageId:Ar}}function o(ke){return i(void 0,ke)}function s(ke){if(ke)return A.Debug.assert(ke.packageId===void 0),{path:ke.path,ext:ke.extension}}var g;(function(ke){ke[ke.TypeScript=0]="TypeScript",ke[ke.JavaScript=1]="JavaScript",ke[ke.Json=2]="Json",ke[ke.TSConfig=3]="TSConfig",ke[ke.DtsOnly=4]="DtsOnly",ke[ke.TsOnly=5]="TsOnly"})(g||(g={}));function E(ke){if(ke)return A.Debug.assert(A.extensionIsTS(ke.extension)),{fileName:ke.path,packageId:ke.packageId}}function p(ke,Je,Ar,fr,te,Te){var UA,Ee;return Te?((UA=Te.failedLookupLocations).push.apply(UA,Ar),(Ee=Te.affectingLocations).push.apply(Ee,fr),Te):{resolvedModule:ke&&{resolvedFileName:ke.path,originalPath:ke.originalPath===!0?void 0:ke.originalPath,extension:ke.extension,isExternalLibraryImport:Je,packageId:ke.packageId},failedLookupLocations:Ar,affectingLocations:fr,resolutionDiagnostics:te}}function B(ke,Je,Ar,fr){if(!A.hasProperty(ke,Je)){fr.traceEnabled&&r(fr.host,A.Diagnostics.package_json_does_not_have_a_0_field,Je);return}var te=ke[Je];if(typeof te!==Ar||te===null){fr.traceEnabled&&r(fr.host,A.Diagnostics.Expected_type_of_0_field_in_package_json_to_be_1_got_2,Je,Ar,te===null?"null":typeof te);return}return te}function m(ke,Je,Ar,fr){var te=B(ke,Je,"string",fr);if(te!==void 0){if(!te){fr.traceEnabled&&r(fr.host,A.Diagnostics.package_json_had_a_falsy_0_field,Je);return}var Te=A.normalizePath(A.combinePaths(Ar,te));return fr.traceEnabled&&r(fr.host,A.Diagnostics.package_json_has_0_field_1_that_references_2,Je,te,Te),Te}}function _(ke,Je,Ar){return m(ke,"typings",Je,Ar)||m(ke,"types",Je,Ar)}function x(ke,Je,Ar){return m(ke,"tsconfig",Je,Ar)}function O(ke,Je,Ar){return m(ke,"main",Je,Ar)}function k(ke,Je){var Ar=B(ke,"typesVersions","object",Je);if(Ar!==void 0)return Je.traceEnabled&&r(Je.host,A.Diagnostics.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),Ar}function P(ke,Je){var Ar=k(ke,Je);if(Ar!==void 0){if(Je.traceEnabled)for(var fr in Ar)A.hasProperty(Ar,fr)&&!A.VersionRange.tryParse(fr)&&r(Je.host,A.Diagnostics.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,fr);var te=T(Ar);if(!te){Je.traceEnabled&&r(Je.host,A.Diagnostics.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,A.versionMajorMinor);return}var Te=te.version,UA=te.paths;if(typeof UA!="object"){Je.traceEnabled&&r(Je.host,A.Diagnostics.Expected_type_of_0_field_in_package_json_to_be_1_got_2,"typesVersions['".concat(Te,"']"),"object",typeof UA);return}return te}}var H;function T(ke){H||(H=new A.Version(A.version));for(var Je in ke)if(A.hasProperty(ke,Je)){var Ar=A.VersionRange.tryParse(Je);if(Ar!==void 0&&Ar.test(H))return{version:Je,paths:ke[Je]}}}A.getPackageJsonTypesVersionsPaths=T;function v(ke,Je){if(ke.typeRoots)return ke.typeRoots;var Ar;if(ke.configFilePath?Ar=A.getDirectoryPath(ke.configFilePath):Je.getCurrentDirectory&&(Ar=Je.getCurrentDirectory()),Ar!==void 0)return F(Ar,Je)}A.getEffectiveTypeRoots=v;function F(ke,Je){if(!Je.directoryExists)return[A.combinePaths(ke,y)];var Ar;return A.forEachAncestorDirectory(A.normalizePath(ke),function(fr){var te=A.combinePaths(fr,y);Je.directoryExists(te)&&(Ar||(Ar=[])).push(te)}),Ar}var y=A.combinePaths("node_modules","@types");function S(ke,Je,Ar){var fr=typeof Ar.useCaseSensitiveFileNames=="function"?Ar.useCaseSensitiveFileNames():Ar.useCaseSensitiveFileNames;return A.comparePaths(ke,Je,!fr)===0}function U(ke,Je,Ar,fr,te,Te,UA){A.Debug.assert(typeof ke=="string","Non-string value passed to `ts.resolveTypeReferenceDirective`, likely by a wrapping package working with an outdated `resolveTypeReferenceDirectives` signature. This is probably not a problem in TS itself.");var Ee=t(Ar,fr);te&&(Ar=te.commandLine.options);var de=Je?A.getDirectoryPath(Je):void 0,HA=de?Te&&Te.getOrCreateCacheForDirectory(de,te):void 0,pe=HA&&HA.get(ke,UA);if(pe)return Ee&&(r(fr,A.Diagnostics.Resolving_type_reference_directive_0_containing_file_1,ke,Je),te&&r(fr,A.Diagnostics.Using_compiler_options_of_project_reference_redirect_0,te.sourceFile.fileName),r(fr,A.Diagnostics.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1,ke,de),_i(pe)),pe;var ee=v(Ar,fr);Ee&&(Je===void 0?ee===void 0?r(fr,A.Diagnostics.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,ke):r(fr,A.Diagnostics.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,ke,ee):ee===void 0?r(fr,A.Diagnostics.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,ke,Je):r(fr,A.Diagnostics.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,ke,Je,ee),te&&r(fr,A.Diagnostics.Using_compiler_options_of_project_reference_redirect_0,te.sourceFile.fileName));var Pe=[],He=[],Xe=V(Ar);UA===A.ModuleKind.ESNext&&(A.getEmitModuleResolutionKind(Ar)===A.ModuleResolutionKind.Node16||A.getEmitModuleResolutionKind(Ar)===A.ModuleResolutionKind.NodeNext)&&(Xe|=iA.EsmMode);var or=Xe&iA.Exports?Xe&iA.EsmMode?["node","import","types"]:["node","require","types"]:[],Mr=[],ar={compilerOptions:Ar,host:fr,traceEnabled:Ee,failedLookupLocations:Pe,affectingLocations:He,packageJsonInfoCache:Te,features:Xe,conditions:or,requestContainingDirectory:de,reportDiagnostic:function(Xr){return void Mr.push(Xr)}},lt=ei(),Lr=!0;lt||(lt=Yt(),Lr=!1);var gt;if(lt){var Pr=lt.fileName,Et=lt.packageId,Zt=Ar.preserveSymlinks?Pr:KA(Pr,fr,Ee),Ot=S(Pr,Zt,fr);gt={primary:Lr,resolvedFileName:Ot?Pr:Zt,originalPath:Ot?void 0:Pr,packageId:Et,isExternalLibraryImport:jA(Pr)}}return pe={resolvedTypeReferenceDirective:gt,failedLookupLocations:Pe,affectingLocations:He,resolutionDiagnostics:Mr},HA?.set(ke,UA,pe),Ee&&_i(pe),pe;function _i(Xr){var JA;!((JA=Xr.resolvedTypeReferenceDirective)===null||JA===void 0)&&JA.resolvedFileName?Xr.resolvedTypeReferenceDirective.packageId?r(fr,A.Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,ke,Xr.resolvedTypeReferenceDirective.resolvedFileName,A.packageIdToString(Xr.resolvedTypeReferenceDirective.packageId),Xr.resolvedTypeReferenceDirective.primary):r(fr,A.Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,ke,Xr.resolvedTypeReferenceDirective.resolvedFileName,Xr.resolvedTypeReferenceDirective.primary):r(fr,A.Diagnostics.Type_reference_directive_0_was_not_resolved,ke)}function ei(){if(ee&&ee.length)return Ee&&r(fr,A.Diagnostics.Resolving_with_primary_search_path_0,ee.join(", ")),A.firstDefined(ee,function(Xr){var JA=A.combinePaths(Xr,ke),Ve=A.getDirectoryPath(JA),XA=A.directoryProbablyExists(Ve,fr);return!XA&&Ee&&r(fr,A.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,Ve),E(TA(g.DtsOnly,JA,!XA,ar))});Ee&&r(fr,A.Diagnostics.Root_directory_cannot_be_determined_skipping_primary_search_paths)}function Yt(){var Xr=Je&&A.getDirectoryPath(Je);if(Xr!==void 0){Ee&&r(fr,A.Diagnostics.Looking_up_in_node_modules_folder_initial_location_0,Xr);var JA;if(A.isExternalModuleNameRelative(ke)){var XA=re(Xr,ke).path;JA=$A(g.DtsOnly,XA,!1,ar,!0)}else{var Ve=ae(g.DtsOnly,ke,Xr,ar,void 0,void 0);JA=Ve&&Ve.value}return E(JA)}else Ee&&r(fr,A.Diagnostics.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}}A.resolveTypeReferenceDirective=U;function V(ke){return A.getEmitModuleResolutionKind(ke)===A.ModuleResolutionKind.Node16?iA.Node16Default:A.getEmitModuleResolutionKind(ke)===A.ModuleResolutionKind.NodeNext?iA.NodeNextDefault:iA.None}function wA(ke,Je,Ar,fr,te){var Te=_e(te?.getPackageJsonInfoCache(),fr,Ar);return A.forEachAncestorDirectory(Je,function(UA){if(A.getBaseFileName(UA)!=="node_modules"){var Ee=A.combinePaths(UA,"node_modules"),de=A.combinePaths(Ee,ke);return Q(de,!1,Te)}})}A.resolvePackageNameToPackageJson=wA;function IA(ke,Je){if(ke.types)return ke.types;var Ar=[];if(Je.directoryExists&&Je.getDirectories){var fr=v(ke,Je);if(fr)for(var te=0,Te=fr;te0);var fr={sourceFile:ke.configFile,commandLine:{options:ke}};Je.setOwnMap(Je.getOrCreateMapOfCacheRedirects(fr)),Ar?.setOwnMap(Ar.getOrCreateMapOfCacheRedirects(fr))}Je.setOwnOptions(ke),Ar?.setOwnOptions(ke)}}function Y(ke,Je,Ar){return{getOrCreateCacheForDirectory:Te,clear:fr,update:te};function fr(){Ar.clear()}function te(UA){eA(UA,Ar)}function Te(UA,Ee){var de=A.toPath(UA,ke,Je);return cA(Ar,Ee,de,function(){return q()})}}function q(){var ke=new A.Map,Je=new A.Map,Ar={get:function(te,Te){return ke.get(fr(te,Te))},set:function(te,Te,UA){return ke.set(fr(te,Te),UA),Ar},delete:function(te,Te){return ke.delete(fr(te,Te)),Ar},has:function(te,Te){return ke.has(fr(te,Te))},forEach:function(te){return ke.forEach(function(Te,UA){var Ee=Je.get(UA),de=Ee[0],HA=Ee[1];return te(Te,de,HA)})},size:function(){return ke.size}};return Ar;function fr(te,Te){var UA=Te===void 0?te:"".concat(Te,"|").concat(te);return Je.set(UA,[te,Te]),UA}}A.createModeAwareCache=q;function X(ke,Je,Ar){A.Debug.assert(Je.length===Ar.length);for(var fr=q(),te=0;te=A.ModuleResolutionKind.Node16&&A.getEmitModuleResolutionKind(fr)<=A.ModuleResolutionKind.NodeNext&&r(te,A.Diagnostics.Resolving_in_0_mode_with_conditions_1,ke&iA.EsmMode?"ESM":"CJS",He.map(function(lt){return"'".concat(lt,"'")}).join(", "));var Mr=A.forEach(UA,function(lt){return ar(lt)});return p((de=Mr?.value)===null||de===void 0?void 0:de.resolved,(HA=Mr?.value)===null||HA===void 0?void 0:HA.isExternalLibraryImport,ee,Pe,Xe,or.resultFromCache);function ar(lt){var Lr=function(Ve,XA,Gr,ot){return $A(Ve,XA,Gr,ot,!0)},gt=uA(lt,Je,Ar,Lr,or);if(gt)return Ur({resolved:gt,isExternalLibraryImport:jA(gt.path)});if(A.isExternalModuleNameRelative(Je)){var ei=re(Ar,Je),Yt=ei.path,Xr=ei.parts,JA=$A(lt,Yt,!1,or,!0);return JA&&Ur({resolved:JA,isExternalLibraryImport:A.contains(Xr,"node_modules")})}else{var Pr;if(ke&iA.Imports&&A.startsWith(Je,"#")&&(Pr=$e(lt,Je,Ar,or,Te,Ee)),!Pr&&ke&iA.SelfName&&(Pr=Ye(lt,Je,Ar,or,Te,Ee)),Pr||(pe&&r(te,A.Diagnostics.Loading_module_0_from_node_modules_folder_target_file_type_1,Je,g[lt]),Pr=ae(lt,Je,Ar,or,Te,Ee)),!Pr)return;var Et=Pr.value;if(!fr.preserveSymlinks&&Et&&!Et.originalPath){var Zt=KA(Et.path,te,pe),Ot=S(Zt,Et.path,te),_i=Ot?void 0:Et.path;Et=pi(pi({},Et),{path:Ot?Et.path:Zt,originalPath:_i})}return{value:Et&&{resolved:Et,isExternalLibraryImport:!0}}}}}function re(ke,Je){var Ar=A.combinePaths(ke,Je),fr=A.getPathComponents(Ar),te=A.lastOrUndefined(fr),Te=te==="."||te===".."?A.ensureTrailingDirectorySeparator(A.normalizePath(Ar)):A.normalizePath(Ar);return{path:Te,parts:fr}}function KA(ke,Je,Ar){if(!Je.realpath)return ke;var fr=A.normalizePath(Je.realpath(ke));return Ar&&r(Je,A.Diagnostics.Resolving_real_path_for_0_result_1,ke,fr),A.Debug.assert(Je.fileExists(fr),"".concat(ke," linked to nonexistent file ").concat(fr)),fr}function $A(ke,Je,Ar,fr,te){if(fr.traceEnabled&&r(fr.host,A.Diagnostics.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1,Je,g[ke]),!A.hasTrailingDirectorySeparator(Je)){if(!Ar){var Te=A.getDirectoryPath(Je);A.directoryProbablyExists(Te,fr.host)||(fr.traceEnabled&&r(fr.host,A.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,Te),Ar=!0)}var UA=lA(ke,Je,Ar,fr);if(UA){var Ee=te?ue(UA.path):void 0,de=Ee?Q(Ee,!1,fr):void 0;return i(de,UA)}}if(!Ar){var HA=A.directoryProbablyExists(Je,fr.host);HA||(fr.traceEnabled&&r(fr.host,A.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,Je),Ar=!0)}if(!(fr.features&iA.EsmMode))return TA(ke,Je,Ar,fr,te)}A.nodeModulesPathPart="/node_modules/";function jA(ke){return A.stringContains(ke,A.nodeModulesPathPart)}A.pathContainsNodeModules=jA;function ue(ke){var Je=A.normalizePath(ke),Ar=Je.lastIndexOf(A.nodeModulesPathPart);if(Ar!==-1){var fr=Ar+A.nodeModulesPathPart.length,te=MA(Je,fr);return Je.charCodeAt(fr)===64&&(te=MA(Je,te)),Je.slice(0,te)}}A.parseNodeModuleFromPath=ue;function MA(ke,Je){var Ar=ke.indexOf(A.directorySeparator,Je+1);return Ar===-1?Je:Ar}function RA(ke,Je,Ar,fr){return o(lA(ke,Je,Ar,fr))}function lA(ke,Je,Ar,fr){if(ke===g.Json||ke===g.TSConfig){var te=A.tryRemoveExtension(Je,".json"),Te=te?Je.substring(te.length):"";return te===void 0&&ke===g.Json?void 0:nA(te||Je,ke,Te,Ar,fr)}if(!(fr.features&iA.EsmMode)){var UA=nA(Je,ke,"",Ar,fr);if(UA)return UA}return tA(ke,Je,Ar,fr)}function tA(ke,Je,Ar,fr){if(A.hasJSFileExtension(Je)||A.fileExtensionIs(Je,".json")&&fr.compilerOptions.resolveJsonModule){var te=A.removeFileExtension(Je),Te=Je.substring(te.length);return fr.traceEnabled&&r(fr.host,A.Diagnostics.File_name_0_has_a_1_extension_stripping_it,Je,Te),nA(te,ke,Te,Ar,fr)}}function N(ke,Je,Ar,fr){if((ke===g.TypeScript||ke===g.DtsOnly)&&A.fileExtensionIsOneOf(Je,A.supportedTSExtensionsFlat)){var te=kA(Je,Ar,fr);return te!==void 0?{path:Je,ext:A.tryExtractTSExtension(Je)}:void 0}return tA(ke,Je,Ar,fr)}function nA(ke,Je,Ar,fr,te){if(!fr){var Te=A.getDirectoryPath(ke);Te&&(fr=!A.directoryProbablyExists(Te,te.host))}switch(Je){case g.DtsOnly:switch(Ar){case".mjs":case".mts":case".d.mts":return Ee(".d.mts");case".cjs":case".cts":case".d.cts":return Ee(".d.cts");case".json":return ke+=".json",Ee(".d.ts");default:return Ee(".d.ts")}case g.TypeScript:case g.TsOnly:var UA=Je===g.TypeScript;switch(Ar){case".mjs":case".mts":case".d.mts":return Ee(".mts")||(UA?Ee(".d.mts"):void 0);case".cjs":case".cts":case".d.cts":return Ee(".cts")||(UA?Ee(".d.cts"):void 0);case".json":return ke+=".json",UA?Ee(".d.ts"):void 0;default:return Ee(".ts")||Ee(".tsx")||(UA?Ee(".d.ts"):void 0)}case g.JavaScript:switch(Ar){case".mjs":case".mts":case".d.mts":return Ee(".mjs");case".cjs":case".cts":case".d.cts":return Ee(".cjs");case".json":return Ee(".json");default:return Ee(".js")||Ee(".jsx")}case g.TSConfig:case g.Json:return Ee(".json")}function Ee(de){var HA=kA(ke+de,fr,te);return HA===void 0?void 0:{path:HA,ext:de}}}function kA(ke,Je,Ar){var fr,te;if(!(!((fr=Ar.compilerOptions.moduleSuffixes)===null||fr===void 0)&&fr.length))return bA(ke,Je,Ar);var Te=(te=A.tryGetExtensionFromPath(ke))!==null&&te!==void 0?te:"",UA=Te?A.removeExtension(ke,Te):ke;return A.forEach(Ar.compilerOptions.moduleSuffixes,function(Ee){return bA(UA+Ee+Te,Je,Ar)})}function bA(ke,Je,Ar){if(!Je){if(Ar.host.fileExists(ke))return Ar.traceEnabled&&r(Ar.host,A.Diagnostics.File_0_exist_use_it_as_a_name_resolution_result,ke),ke;Ar.traceEnabled&&r(Ar.host,A.Diagnostics.File_0_does_not_exist,ke)}Ar.failedLookupLocations.push(ke)}function TA(ke,Je,Ar,fr,te){te===void 0&&(te=!0);var Te=te?Q(Je,Ar,fr):void 0,UA=Te&&Te.contents.packageJsonContent,Ee=Te&&Te.contents.versionPaths;return i(Te,Ze(ke,Je,Ar,fr,UA,Ee))}function VA(ke,Je,Ar,fr,te){if(!te&&ke.contents.resolvedEntrypoints!==void 0)return ke.contents.resolvedEntrypoints;var Te,UA=te?g.JavaScript:g.TypeScript,Ee=V(Je),de=_e(fr?.getPackageJsonInfoCache(),Ar,Je);de.conditions=["node","require","types"],de.requestContainingDirectory=ke.packageDirectory;var HA=Ze(UA,ke.packageDirectory,!1,de,ke.contents.packageJsonContent,ke.contents.versionPaths);if(Te=A.append(Te,HA?.path),Ee&iA.Exports&&ke.contents.packageJsonContent.exports)for(var pe=0,ee=[["node","import","types"],["node","require","types"]];pe=0||He.indexOf(".")>=0||He.indexOf("node_modules")>=0)return!1;var Xe=A.combinePaths(ke.packageDirectory,pe),or=A.getNormalizedAbsolutePath(Xe,(Pe=(ee=Ar.host).getCurrentDirectory)===null||Pe===void 0?void 0:Pe.call(ee)),Mr=N(fr,or,!1,Ar);if(Mr)return te=A.appendIfUnique(te,Mr,function(Pr,Et){return Pr.path===Et.path}),!0}else if(Array.isArray(pe))for(var ar=0,lt=pe;ar0;){var fr=Q(A.getPathFromPathComponents(Ar),!1,Je);if(fr)return fr;Ar.pop()}}A.getPackageScopeForPath=Ae;function Q(ke,Je,Ar){var fr,te,Te,UA=Ar.host,Ee=Ar.traceEnabled,de=A.combinePaths(ke,"package.json");if(Je){Ar.failedLookupLocations.push(de);return}var HA=(fr=Ar.packageJsonInfoCache)===null||fr===void 0?void 0:fr.getPackageJsonInfo(de);if(HA!==void 0){if(typeof HA!="boolean")return Ee&&r(UA,A.Diagnostics.File_0_exists_according_to_earlier_cached_lookups,de),Ar.affectingLocations.push(de),HA.packageDirectory===ke?HA:{packageDirectory:ke,contents:HA.contents};HA&&Ee&&r(UA,A.Diagnostics.File_0_does_not_exist_according_to_earlier_cached_lookups,de),Ar.failedLookupLocations.push(de);return}var pe=A.directoryProbablyExists(ke,UA);if(pe&&UA.fileExists(de)){var ee=A.readJson(de,UA);Ee&&r(UA,A.Diagnostics.Found_package_json_at_0,de);var Pe=P(ee,Ar),He={packageDirectory:ke,contents:{packageJsonContent:ee,versionPaths:Pe,resolvedEntrypoints:void 0}};return(te=Ar.packageJsonInfoCache)===null||te===void 0||te.setPackageJsonInfo(de,He),Ar.affectingLocations.push(de),He}else pe&&Ee&&r(UA,A.Diagnostics.File_0_does_not_exist,de),(Te=Ar.packageJsonInfoCache)===null||Te===void 0||Te.setPackageJsonInfo(de,pe),Ar.failedLookupLocations.push(de)}A.getPackageJsonInfo=Q;function Ze(ke,Je,Ar,fr,te,Te){var UA;if(te)switch(ke){case g.JavaScript:case g.Json:case g.TsOnly:UA=O(te,Je,fr);break;case g.TypeScript:UA=_(te,Je,fr)||O(te,Je,fr);break;case g.DtsOnly:UA=_(te,Je,fr);break;case g.TSConfig:UA=x(te,Je,fr);break;default:return A.Debug.assertNever(ke)}var Ee=function(Xe,or,Mr,ar){var lt=kA(or,Mr,ar);if(lt){var Lr=Cr(Xe,lt);if(Lr)return o(Lr);ar.traceEnabled&&r(ar.host,A.Diagnostics.File_0_has_an_unsupported_extension_so_skipping_it,lt)}var gt=Xe===g.DtsOnly?g.TypeScript:Xe,Pr=ar.features;te?.type!=="module"&&(ar.features&=~iA.EsmMode);var Et=$A(gt,or,Mr,ar,!1);return ar.features=Pr,Et},de=UA?!A.directoryProbablyExists(A.getDirectoryPath(UA),fr.host):void 0,HA=Ar||!A.directoryProbablyExists(Je,fr.host),pe=A.combinePaths(Je,ke===g.TSConfig?"tsconfig":"index");if(Te&&(!UA||A.containsPath(Je,UA))){var ee=A.getRelativePathFromDirectory(Je,UA||pe,!1);fr.traceEnabled&&r(fr.host,A.Diagnostics.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,Te.version,A.version,ee);var Pe=er(ke,ee,Je,Te.paths,void 0,Ee,de||HA,fr);if(Pe)return s(Pe.value)}var He=UA&&s(Ee(ke,UA,de,fr));if(He)return He;if(!(fr.features&iA.EsmMode))return lA(ke,pe,HA,fr)}function Cr(ke,Je){var Ar=A.tryGetExtensionFromPath(Je);return Ar!==void 0&&be(ke,Ar)?{path:Je,ext:Ar}:void 0}function be(ke,Je){switch(ke){case g.JavaScript:return Je===".js"||Je===".jsx"||Je===".mjs"||Je===".cjs";case g.TSConfig:case g.Json:return Je===".json";case g.TypeScript:return Je===".ts"||Je===".tsx"||Je===".mts"||Je===".cts"||Je===".d.ts"||Je===".d.mts"||Je===".d.cts";case g.TsOnly:return Je===".ts"||Je===".tsx"||Je===".mts"||Je===".cts";case g.DtsOnly:return Je===".d.ts"||Je===".d.mts"||Je===".d.cts"}}function Me(ke){var Je=ke.indexOf(A.directorySeparator);return ke[0]==="@"&&(Je=ke.indexOf(A.directorySeparator,Je+1)),Je===-1?{packageName:ke,rest:""}:{packageName:ke.slice(0,Je),rest:ke.slice(Je+1)}}A.parsePackageName=Me;function Le(ke){return A.every(A.getOwnKeys(ke),function(Je){return A.startsWith(Je,".")})}A.allKeysStartWithDot=Le;function ir(ke){return!A.some(A.getOwnKeys(ke),function(Je){return A.startsWith(Je,".")})}function Ye(ke,Je,Ar,fr,te,Te){var UA,Ee,de=A.getNormalizedAbsolutePath(A.combinePaths(Ar,"dummy"),(Ee=(UA=fr.host).getCurrentDirectory)===null||Ee===void 0?void 0:Ee.call(UA)),HA=Ae(de,fr);if(!(!HA||!HA.contents.packageJsonContent.exports)&&typeof HA.contents.packageJsonContent.name=="string"){var pe=A.getPathComponents(Je),ee=A.getPathComponents(HA.contents.packageJsonContent.name);if(A.every(ee,function(He,Xe){return pe[Xe]===He})){var Pe=pe.slice(ee.length);return mr(HA,ke,A.length(Pe)?".".concat(A.directorySeparator).concat(Pe.join(A.directorySeparator)):".",fr,te,Te)}}}function mr(ke,Je,Ar,fr,te,Te){if(ke.contents.packageJsonContent.exports){if(Ar==="."){var UA=void 0;if(typeof ke.contents.packageJsonContent.exports=="string"||Array.isArray(ke.contents.packageJsonContent.exports)||typeof ke.contents.packageJsonContent.exports=="object"&&ir(ke.contents.packageJsonContent.exports)?UA=ke.contents.packageJsonContent.exports:A.hasProperty(ke.contents.packageJsonContent.exports,".")&&(UA=ke.contents.packageJsonContent.exports["."]),UA){var Ee=we(Je,fr,te,Te,Ar,ke,!1);return Ee(UA,"",!1,".")}}else if(Le(ke.contents.packageJsonContent.exports)){if(typeof ke.contents.packageJsonContent.exports!="object")return fr.traceEnabled&&r(fr.host,A.Diagnostics.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,Ar,ke.packageDirectory),Ur(void 0);var de=PA(Je,fr,te,Te,Ar,ke.contents.packageJsonContent.exports,ke,!1);if(de)return de}return fr.traceEnabled&&r(fr.host,A.Diagnostics.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,Ar,ke.packageDirectory),Ur(void 0)}}function $e(ke,Je,Ar,fr,te,Te){var UA,Ee;if(Je==="#"||A.startsWith(Je,"#/"))return fr.traceEnabled&&r(fr.host,A.Diagnostics.Invalid_import_specifier_0_has_no_possible_resolutions,Je),Ur(void 0);var de=A.getNormalizedAbsolutePath(A.combinePaths(Ar,"dummy"),(Ee=(UA=fr.host).getCurrentDirectory)===null||Ee===void 0?void 0:Ee.call(UA)),HA=Ae(de,fr);if(!HA)return fr.traceEnabled&&r(fr.host,A.Diagnostics.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve,de),Ur(void 0);if(!HA.contents.packageJsonContent.imports)return fr.traceEnabled&&r(fr.host,A.Diagnostics.package_json_scope_0_has_no_imports_defined,HA.packageDirectory),Ur(void 0);var pe=PA(ke,fr,te,Te,Je,HA.contents.packageJsonContent.imports,HA,!0);return pe||(fr.traceEnabled&&r(fr.host,A.Diagnostics.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1,Je,HA.packageDirectory),Ur(void 0))}function xr(ke,Je){var Ar=ke.indexOf("*"),fr=Je.indexOf("*"),te=Ar===-1?ke.length:Ar+1,Te=fr===-1?Je.length:fr+1;return te>Te?-1:Te>te||Ar===-1?1:fr===-1||ke.length>Je.length?-1:Je.length>ke.length?1:0}A.comparePatternKeys=xr;function PA(ke,Je,Ar,fr,te,Te,UA,Ee){var de=we(ke,Je,Ar,fr,te,UA,Ee);if(!A.endsWith(te,A.directorySeparator)&&te.indexOf("*")===-1&&A.hasProperty(Te,te)){var HA=Te[te];return de(HA,"",!1,te)}for(var pe=A.sort(A.filter(A.getOwnKeys(Te),function(ar){return ar.indexOf("*")!==-1||A.endsWith(ar,"/")}),xr),ee=0,Pe=pe;ee0&&!A.endsWith(de,"/"))return Je.traceEnabled&&r(Je.host,A.Diagnostics.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,Te.packageDirectory,te),Ur(void 0);if(!A.startsWith(de,"./")){if(UA&&!A.startsWith(de,"../")&&!A.startsWith(de,"/")&&!A.isRootedDiskPath(de)){var Pe=pe?de.replace(/\*/g,HA):de+HA;nt(Je,A.Diagnostics.Using_0_subpath_1_with_target_2,"imports",ee,Pe),nt(Je,A.Diagnostics.Resolving_module_0_from_1,Pe,Te.packageDirectory+"/");var He=ce(Je.features,Pe,Te.packageDirectory+"/",Je.compilerOptions,Je.host,Ar,[ke],fr);return Ur(He.resolvedModule?{path:He.resolvedModule.resolvedFileName,extension:He.resolvedModule.extension,packageId:He.resolvedModule.packageId,originalPath:He.resolvedModule.originalPath}:void 0)}return Je.traceEnabled&&r(Je.host,A.Diagnostics.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,Te.packageDirectory,te),Ur(void 0)}var Xe=A.pathIsRelative(de)?A.getPathComponents(de).slice(1):A.getPathComponents(de),or=Xe.slice(1);if(or.indexOf("..")>=0||or.indexOf(".")>=0||or.indexOf("node_modules")>=0)return Je.traceEnabled&&r(Je.host,A.Diagnostics.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,Te.packageDirectory,te),Ur(void 0);var Mr=A.combinePaths(Te.packageDirectory,de),ar=A.getPathComponents(HA);if(ar.indexOf("..")>=0||ar.indexOf(".")>=0||ar.indexOf("node_modules")>=0)return Je.traceEnabled&&r(Je.host,A.Diagnostics.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,Te.packageDirectory,te),Ur(void 0);Je.traceEnabled&&r(Je.host,A.Diagnostics.Using_0_subpath_1_with_target_2,UA?"imports":"exports",ee,pe?de.replace(/\*/g,HA):de+HA);var lt=Yt(pe?Mr.replace(/\*/g,HA):Mr+HA),Lr=Ve(lt,HA,A.combinePaths(Te.packageDirectory,"package.json"),UA);return Lr||Ur(i(Te,N(ke,lt,!1,Je)))}else if(typeof de=="object"&&de!==null)if(Array.isArray(de)){if(!A.length(de))return Je.traceEnabled&&r(Je.host,A.Diagnostics.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,Te.packageDirectory,te),Ur(void 0);for(var Ot=0,_i=de;Ot<_i.length;Ot++){var ei=_i[Ot],He=Ee(ei,HA,pe,ee);if(He)return He}}else{for(var gt=0,Pr=A.getOwnKeys(de);gt=0||LA(Je.conditions,Et)){nt(Je,A.Diagnostics.Matched_0_condition_1,UA?"imports":"exports",Et);var Zt=de[Et],He=Ee(Zt,HA,pe,ee);if(He)return He}else nt(Je,A.Diagnostics.Saw_non_matching_condition_0,Et)}return}else if(de===null)return Je.traceEnabled&&r(Je.host,A.Diagnostics.package_json_scope_0_explicitly_maps_specifier_1_to_null,Te.packageDirectory,te),Ur(void 0);return Je.traceEnabled&&r(Je.host,A.Diagnostics.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,Te.packageDirectory,te),Ur(void 0);function Yt(XA){var Gr,ot;return XA===void 0?XA:A.getNormalizedAbsolutePath(XA,(ot=(Gr=Je.host).getCurrentDirectory)===null||ot===void 0?void 0:ot.call(Gr))}function Xr(XA,Gr){return A.ensureTrailingDirectorySeparator(A.combinePaths(XA,Gr))}function JA(){return Je.host.useCaseSensitiveFileNames?typeof Je.host.useCaseSensitiveFileNames=="boolean"?Je.host.useCaseSensitiveFileNames:Je.host.useCaseSensitiveFileNames():!0}function Ve(XA,Gr,ot,Sr){var Dr,Jr,Yr,rt;if((ke===g.TypeScript||ke===g.JavaScript||ke===g.Json)&&(Je.compilerOptions.declarationDir||Je.compilerOptions.outDir)&&XA.indexOf("/node_modules/")===-1&&(!Je.compilerOptions.configFile||A.containsPath(Te.packageDirectory,Yt(Je.compilerOptions.configFile.fileName),!JA()))){var Bt=A.hostGetCanonicalFileName({useCaseSensitiveFileNames:JA}),le=[];if(Je.compilerOptions.rootDir||Je.compilerOptions.composite&&Je.compilerOptions.configFilePath){var Ir=Yt(A.getCommonSourceDirectory(Je.compilerOptions,function(){return[]},((Jr=(Dr=Je.host).getCurrentDirectory)===null||Jr===void 0?void 0:Jr.call(Dr))||"",Bt));le.push(Ir)}else if(Je.requestContainingDirectory){var ut=Yt(A.combinePaths(Je.requestContainingDirectory,"index.ts")),Ir=Yt(A.getCommonSourceDirectory(Je.compilerOptions,function(){return[ut,Yt(ot)]},((rt=(Yr=Je.host).getCurrentDirectory)===null||rt===void 0?void 0:rt.call(Yr))||"",Bt));le.push(Ir);for(var Ii=A.ensureTrailingDirectorySeparator(Ir);Ii&&Ii.length>1;){var Zi=A.getPathComponents(Ii);Zi.pop();var yi=A.getPathFromPathComponents(Zi);le.unshift(yi),Ii=A.ensureTrailingDirectorySeparator(yi)}}le.length>1&&Je.reportDiagnostic(A.createCompilerDiagnostic(Sr?A.Diagnostics.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:A.Diagnostics.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate,Gr===""?".":Gr,ot));for(var zt=0,cn=le;ztF&&(F=V),F===1)return F}return F}break;case 265:{var wA=0;return A.forEachChild(H,function(IA){var pA=i(IA,T);switch(pA){case 0:return;case 2:wA=2;return;case 1:return wA=1,!0;default:A.Debug.assertNever(pA)}}),wA}case 264:return t(H,T);case 79:if(H.isInJSDocNamespace)return 0}return 1}function s(H,T){for(var v=H.propertyName||H.name,F=H.parent;F;){if(A.isBlock(F)||A.isModuleBlock(F)||A.isSourceFile(F)){for(var y=F.statements,S=void 0,U=0,V=y;US)&&(S=IA),S===1)return S}}if(S!==void 0)return S}F=F.parent}return 1}var g;(function(H){H[H.None=0]="None",H[H.IsContainer=1]="IsContainer",H[H.IsBlockScopedContainer=2]="IsBlockScopedContainer",H[H.IsControlFlowContainer=4]="IsControlFlowContainer",H[H.IsFunctionLike=8]="IsFunctionLike",H[H.IsFunctionExpression=16]="IsFunctionExpression",H[H.HasLocals=32]="HasLocals",H[H.IsInterface=64]="IsInterface",H[H.IsObjectLiteralOrClassExpressionMethodOrAccessor=128]="IsObjectLiteralOrClassExpressionMethodOrAccessor"})(g||(g={}));function E(H){return A.Debug.attachFlowNodeDebugInfo(H),H}var p=m();function B(H,T){A.performance.mark("beforeBind"),A.perfLogger.logStartBindFile(""+H.fileName),p(H,T),A.perfLogger.logStopBindFile(),A.performance.mark("afterBind"),A.performance.measure("Bind","beforeBind","afterBind")}A.bindSourceFile=B;function m(){var H,T,v,F,y,S,U,V,wA,IA,pA,oA,cA,eA,Y,q,X,Z,K,J,sA,uA,BA=!1,CA=0,z,AA,iA={flags:1},_A={flags:1},fA=Te();function M(yA,je,br,mt,ai){return A.createDiagnosticForNodeInSourceFile(A.getSourceFileOfNode(yA)||H,yA,je,br,mt,ai)}function aA(yA,je){H=yA,T=je,v=A.getEmitScriptTarget(T),uA=gA(H,je),AA=new A.Set,CA=0,z=A.objectAllocator.getSymbolConstructor(),A.Debug.attachFlowNodeDebugInfo(iA),A.Debug.attachFlowNodeDebugInfo(_A),H.locals||(A.tracing===null||A.tracing===void 0||A.tracing.push("bind","bindSourceFile",{path:H.path},!0),bi(H),A.tracing===null||A.tracing===void 0||A.tracing.pop(),H.symbolCount=CA,H.classifiableNames=AA,Yr()),H=void 0,T=void 0,v=void 0,F=void 0,y=void 0,S=void 0,U=void 0,V=void 0,wA=void 0,IA=!1,pA=void 0,oA=void 0,cA=void 0,eA=void 0,Y=void 0,q=void 0,X=void 0,K=void 0,J=!1,BA=!1,sA=0}return aA;function gA(yA,je){return A.getStrictOptionValue(je,"alwaysStrict")&&!yA.isDeclarationFile?!0:!!yA.externalModuleIndicator}function QA(yA,je){return CA++,new z(yA,je)}function mA(yA,je,br){yA.flags|=br,je.symbol=yA,yA.declarations=A.appendIfUnique(yA.declarations,je),br&1955&&!yA.exports&&(yA.exports=A.createSymbolTable()),br&6240&&!yA.members&&(yA.members=A.createSymbolTable()),yA.constEnumOnlyModule&&yA.flags&304&&(yA.constEnumOnlyModule=!1),br&111551&&A.setValueDeclaration(yA,je)}function FA(yA){if(yA.kind===274)return yA.isExportEquals?"export=":"default";var je=A.getNameOfDeclaration(yA);if(je){if(A.isAmbientModule(yA)){var br=A.getTextOfIdentifierOrLiteral(je);return A.isGlobalScopeAugmentation(yA)?"__global":'"'.concat(br,'"')}if(je.kind===164){var mt=je.expression;if(A.isStringOrNumericLiteralLike(mt))return A.escapeLeadingUnderscores(mt.text);if(A.isSignedNumericLiteral(mt))return A.tokenToString(mt.operator)+mt.operand.text;A.Debug.fail("Only computed properties with literal names have declaration names")}if(A.isPrivateIdentifier(je)){var ai=A.getContainingClass(yA);if(!ai)return;var Pi=ai.symbol;return A.getSymbolNameForPrivateIdentifier(Pi,je.escapedText)}return A.isPropertyNameLiteral(je)?A.getEscapedTextOfIdentifierOrLiteral(je):void 0}switch(yA.kind){case 173:return"__constructor";case 181:case 176:case 326:return"__call";case 182:case 177:return"__new";case 178:return"__index";case 275:return"__export";case 308:return"export=";case 223:if(A.getAssignmentDeclarationKind(yA)===2)return"export=";A.Debug.fail("Unknown binary declaration kind");break;case 320:return A.isJSDocConstructSignature(yA)?"__new":"__call";case 166:A.Debug.assert(yA.parent.kind===320,"Impossible parameter parent kind",function(){return"parent is: ".concat(A.Debug.formatSyntaxKind(yA.parent.kind),", expected JSDocFunctionType")});var Bi=yA.parent,ji=Bi.parameters.indexOf(yA);return"arg"+ji}}function SA(yA){return A.isNamedDeclaration(yA)?A.declarationNameToString(yA.name):A.unescapeLeadingUnderscores(A.Debug.checkDefined(FA(yA)))}function ce(yA,je,br,mt,ai,Pi,Bi){A.Debug.assert(Bi||!A.hasDynamicName(br));var ji=A.hasSyntacticModifier(br,1024)||A.isExportSpecifier(br)&&br.name.escapedText==="default",Fn=Bi?"__computed":ji&&je?"default":FA(br),vn;if(Fn===void 0)vn=QA(0,"__missing");else if(vn=yA.get(Fn),mt&2885600&&AA.add(Fn),!vn)yA.set(Fn,vn=QA(0,Fn)),Pi&&(vn.isReplaceableByMethod=!0);else{if(Pi&&!vn.isReplaceableByMethod)return vn;if(vn.flags&ai){if(vn.isReplaceableByMethod)yA.set(Fn,vn=QA(0,Fn));else if(!(mt&3&&vn.flags&67108864)){A.isNamedDeclaration(br)&&A.setParent(br.name,br);var aa=vn.flags&2?A.Diagnostics.Cannot_redeclare_block_scoped_variable_0:A.Diagnostics.Duplicate_identifier_0,se=!0;(vn.flags&384||mt&384)&&(aa=A.Diagnostics.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,se=!1);var jr=!1;A.length(vn.declarations)&&(ji||vn.declarations&&vn.declarations.length&&br.kind===274&&!br.isExportEquals)&&(aa=A.Diagnostics.A_module_cannot_have_multiple_default_exports,se=!1,jr=!0);var qe=[];A.isTypeAliasDeclaration(br)&&A.nodeIsMissing(br.type)&&A.hasSyntacticModifier(br,1)&&vn.flags&2887656&&qe.push(M(br,A.Diagnostics.Did_you_mean_0,"export type { ".concat(A.unescapeLeadingUnderscores(br.name.escapedText)," }")));var la=A.getNameOfDeclaration(br)||br;A.forEach(vn.declarations,function(po,Ds){var Ac=A.getNameOfDeclaration(po)||po,gc=M(Ac,aa,se?SA(po):void 0);H.bindDiagnostics.push(jr?A.addRelatedInfo(gc,M(la,Ds===0?A.Diagnostics.Another_export_default_is_here:A.Diagnostics.and_here)):gc),jr&&qe.push(M(Ac,A.Diagnostics.The_first_export_default_is_here))});var Ba=M(la,aa,se?SA(br):void 0);H.bindDiagnostics.push(A.addRelatedInfo.apply(void 0,dt([Ba],qe,!1))),vn=QA(0,Fn)}}}return mA(vn,br,mt),vn.parent?A.Debug.assert(vn.parent===je,"Existing symbol parent should match new one"):vn.parent=je,vn}function re(yA,je,br){var mt=!!(A.getCombinedModifierFlags(yA)&1)||KA(yA);if(je&2097152)return yA.kind===278||yA.kind===268&&mt?ce(y.symbol.exports,y.symbol,yA,je,br):ce(y.locals,void 0,yA,je,br);if(A.isJSDocTypeAlias(yA)&&A.Debug.assert(A.isInJSFile(yA)),!A.isAmbientModule(yA)&&(mt||y.flags&64)){if(!y.locals||A.hasSyntacticModifier(yA,1024)&&!FA(yA))return ce(y.symbol.exports,y.symbol,yA,je,br);var ai=je&111551?1048576:0,Pi=ce(y.locals,void 0,yA,ai,br);return Pi.exportSymbol=ce(y.symbol.exports,y.symbol,yA,je,br),yA.localSymbol=Pi,Pi}else return ce(y.locals,void 0,yA,je,br)}function KA(yA){if(yA.parent&&A.isModuleDeclaration(yA)&&(yA=yA.parent),!A.isJSDocTypeAlias(yA))return!1;if(!A.isJSDocEnumTag(yA)&&yA.fullName)return!0;var je=A.getNameOfDeclaration(yA);return je?!!(A.isPropertyAccessEntityNameExpression(je.parent)&&Vn(je.parent)||A.isDeclaration(je.parent)&&A.getCombinedModifierFlags(je.parent)&1):!1}function $A(yA,je){var br=y,mt=S,ai=U;if(je&1?(yA.kind!==216&&(S=y),y=U=yA,je&32&&(y.locals=A.createSymbolTable()),Zt(y)):je&2&&(U=yA,U.locals=void 0),je&4){var Pi=pA,Bi=oA,ji=cA,Fn=eA,vn=X,aa=K,se=J,jr=je&16&&!A.hasSyntacticModifier(yA,512)&&!yA.asteriskToken&&!!A.getImmediatelyInvokedFunctionExpression(yA)||yA.kind===172;jr||(pA=E({flags:2}),je&144&&(pA.node=yA)),eA=jr||yA.kind===173||A.isInJSFile(yA)&&(yA.kind===259||yA.kind===215)?VA():void 0,X=void 0,oA=void 0,cA=void 0,K=void 0,J=!1,RA(yA),yA.flags&=-2817,!(pA.flags&1)&&je&8&&A.nodeIsPresent(yA.body)&&(yA.flags|=256,J&&(yA.flags|=512),yA.endFlowNode=pA),yA.kind===308&&(yA.flags|=sA,yA.endFlowNode=pA),eA&&(Q(eA,pA),pA=Le(eA),(yA.kind===173||yA.kind===172||A.isInJSFile(yA)&&(yA.kind===259||yA.kind===215))&&(yA.returnFlowNode=pA)),jr||(pA=Pi),oA=Bi,cA=ji,eA=Fn,X=vn,K=aa,J=se}else je&64?(IA=!1,RA(yA),yA.flags=IA?yA.flags|128:yA.flags&-129):RA(yA);y=br,S=mt,U=ai}function jA(yA){ue(yA,function(je){return je.kind===259?bi(je):void 0}),ue(yA,function(je){return je.kind!==259?bi(je):void 0})}function ue(yA,je){je===void 0&&(je=bi),yA!==void 0&&A.forEach(yA,je)}function MA(yA){A.forEachChild(yA,bi,ue)}function RA(yA){var je=BA;if(BA=!1,xs(yA)){MA(yA),ao(yA),BA=je;return}switch(yA.kind>=240&&yA.kind<=256&&!T.allowUnreachableCode&&(yA.flowNode=pA),yA.kind){case 244:ae(yA);break;case 243:We(yA);break;case 245:YA(yA);break;case 246:case 247:Ce(yA);break;case 242:Ke(yA);break;case 250:case 254:er(yA);break;case 249:case 248:Fr(yA);break;case 255:qA(yA);break;case 252:oe(yA);break;case 266:Ge(yA);break;case 292:nr(yA);break;case 241:Or(yA);break;case 253:Ur(yA);break;case 221:Ar(yA);break;case 222:fr(yA);break;case 223:if(A.isDestructuringAssignment(yA)){BA=je,te(yA);return}fA(yA);break;case 217:UA(yA);break;case 224:Ee(yA);break;case 257:HA(yA);break;case 208:case 209:gt(yA);break;case 210:Pr(yA);break;case 232:Lr(yA);break;case 348:case 341:case 342:He(yA);break;case 308:{jA(yA.statements),bi(yA.endOfFileToken);break}case 238:case 265:jA(yA.statements);break;case 205:pe(yA);break;case 166:ee(yA);break;case 207:case 206:case 299:case 227:BA=je;default:MA(yA);break}ao(yA),BA=je}function lA(yA){switch(yA.kind){case 79:case 80:case 108:case 208:case 209:return N(yA);case 210:return nA(yA);case 214:case 232:return lA(yA.expression);case 223:return bA(yA);case 221:return yA.operator===53&&lA(yA.operand);case 218:return lA(yA.expression)}return!1}function tA(yA){return A.isDottedName(yA)||(A.isPropertyAccessExpression(yA)||A.isNonNullExpression(yA)||A.isParenthesizedExpression(yA))&&tA(yA.expression)||A.isBinaryExpression(yA)&&yA.operatorToken.kind===27&&tA(yA.right)||A.isElementAccessExpression(yA)&&(A.isStringOrNumericLiteralLike(yA.argumentExpression)||A.isEntityNameExpression(yA.argumentExpression))&&tA(yA.expression)||A.isAssignmentExpression(yA)&&tA(yA.left)}function N(yA){return tA(yA)||A.isOptionalChain(yA)&&N(yA.expression)}function nA(yA){if(yA.arguments)for(var je=0,br=yA.arguments;je=117&&yA.originalKeywordKind<=125?H.bindDiagnostics.push(M(yA,Bt(yA),A.declarationNameToString(yA))):yA.originalKeywordKind===133?A.isExternalModule(H)&&A.isInTopLevelContext(yA)?H.bindDiagnostics.push(M(yA,A.Diagnostics.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,A.declarationNameToString(yA))):yA.flags&32768&&H.bindDiagnostics.push(M(yA,A.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,A.declarationNameToString(yA))):yA.originalKeywordKind===125&&yA.flags&8192&&H.bindDiagnostics.push(M(yA,A.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,A.declarationNameToString(yA))))}function Bt(yA){return A.getContainingClass(yA)?A.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:H.externalModuleIndicator?A.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:A.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode}function le(yA){yA.escapedText==="#constructor"&&(H.parseDiagnostics.length||H.bindDiagnostics.push(M(yA,A.Diagnostics.constructor_is_a_reserved_word,A.declarationNameToString(yA))))}function Ir(yA){uA&&A.isLeftHandSideExpression(yA.left)&&A.isAssignmentOperator(yA.operatorToken.kind)&&yi(yA,yA.left)}function ut(yA){uA&&yA.variableDeclaration&&yi(yA,yA.variableDeclaration.name)}function Ii(yA){if(uA&&yA.expression.kind===79){var je=A.getErrorSpanForNode(H,yA.expression);H.bindDiagnostics.push(A.createFileDiagnostic(H,je.start,je.length,A.Diagnostics.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}function Zi(yA){return A.isIdentifier(yA)&&(yA.escapedText==="eval"||yA.escapedText==="arguments")}function yi(yA,je){if(je&&je.kind===79){var br=je;if(Zi(br)){var mt=A.getErrorSpanForNode(H,je);H.bindDiagnostics.push(A.createFileDiagnostic(H,mt.start,mt.length,zt(yA),A.idText(br)))}}}function zt(yA){return A.getContainingClass(yA)?A.Diagnostics.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:H.externalModuleIndicator?A.Diagnostics.Invalid_use_of_0_Modules_are_automatically_in_strict_mode:A.Diagnostics.Invalid_use_of_0_in_strict_mode}function cn(yA){uA&&yi(yA,yA.name)}function Ui(yA){return A.getContainingClass(yA)?A.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:H.externalModuleIndicator?A.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:A.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5}function Mi(yA){if(v<2&&U.kind!==308&&U.kind!==264&&!A.isFunctionLikeOrClassStaticBlockDeclaration(U)){var je=A.getErrorSpanForNode(H,yA);H.bindDiagnostics.push(A.createFileDiagnostic(H,je.start,je.length,Ui(yA)))}}function yt(yA){v<1&&uA&&yA.numericLiteralFlags&32&&H.bindDiagnostics.push(M(yA,A.Diagnostics.Octal_literals_are_not_allowed_in_strict_mode))}function Ya(yA){uA&&yi(yA,yA.operand)}function Wn(yA){uA&&(yA.operator===45||yA.operator===46)&&yi(yA,yA.operand)}function jn(yA){uA&&_a(yA,A.Diagnostics.with_statements_are_not_allowed_in_strict_mode)}function Ho(yA){uA&&A.getEmitScriptTarget(T)>=2&&(A.isDeclarationStatement(yA.statement)||A.isVariableStatement(yA.statement))&&_a(yA.label,A.Diagnostics.A_label_is_not_allowed_here)}function _a(yA,je,br,mt,ai){var Pi=A.getSpanOfTokenAtPosition(H,yA.pos);H.bindDiagnostics.push(A.createFileDiagnostic(H,Pi.start,Pi.length,je,br,mt,ai))}function yo(yA,je,br){va(yA,je,je,br)}function va(yA,je,br,mt){wi(yA,{pos:A.getTokenPosOfNode(je,H),end:br.end},mt)}function wi(yA,je,br){var mt=A.createFileDiagnostic(H,je.pos,je.end-je.pos,br);yA?H.bindDiagnostics.push(mt):H.bindSuggestionDiagnostics=A.append(H.bindSuggestionDiagnostics,pi(pi({},mt),{category:A.DiagnosticCategory.Suggestion}))}function bi(yA){if(yA){A.setParent(yA,F),A.tracing&&(yA.tracingPath=H.path);var je=uA;if(oo(yA),yA.kind>162){var br=F;F=yA;var mt=Et(yA);mt===0?RA(yA):$A(yA,mt),F=br}else{var br=F;yA.kind===1&&(F=yA),ao(yA),F=br}uA=je}}function ao(yA){if(A.hasJSDocNodes(yA))if(A.isInJSFile(yA))for(var je=0,br=yA.jsDoc;je>",0,UA),hs=$d(void 0,void 0,void 0,A.emptyArray,UA,void 0,0,0),Va=$d(void 0,void 0,void 0,A.emptyArray,HA,void 0,0,0),xe=$d(void 0,void 0,void 0,A.emptyArray,UA,void 0,0,0),ze=$d(void 0,void 0,void 0,A.emptyArray,Gr,void 0,0,0),Lt=Al(Et,Pr,!0),en=new A.Map,hn={get yieldType(){return A.Debug.fail("Not supported")},get returnType(){return A.Debug.fail("Not supported")},get nextType(){return A.Debug.fail("Not supported")}},Ia=LB(UA,UA,UA),ne=LB(UA,UA,He),_r=LB(XA,UA,or),qr={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:S7,getGlobalIterableType:QC,getGlobalIterableIteratorType:pX,getGlobalGeneratorType:EX,resolveIterationType:t4,mustHaveANextMethodDiagnostic:A.Diagnostics.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:A.Diagnostics.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:A.Diagnostics.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},$r={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:Ef,getGlobalIterableType:Px,getGlobalIterableIteratorType:F7,getGlobalGeneratorType:fX,resolveIterationType:function(n,u){return n},mustHaveANextMethodDiagnostic:A.Diagnostics.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:A.Diagnostics.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:A.Diagnostics.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},ie,ye=new A.Map,Re=!1,rr,zr,Ft,Gt,Tt,gn,kn,ra,Vn,ba,Ts,Qs,Gs,Vc,$s,ys,zc,Rc,_l,Bc,sl,ms,kl,bs,Tc,xs,yA,je,br,mt,ai,Pi,Bi,ji,Fn,vn,aa,se,jr,qe,la,Ba,po,Ds,Ac,gc,Xl=new A.Map,Nc=0,Kc=0,Zl=0,ho=!1,ec=0,Nt,Li,mi,Ea=id(""),Mo=ME(0),es=Xx({negative:!1,base10Value:"0"}),Os=[],_s=[],cr=[],lr=0,Zr=10,xt=[],Wt=[],Kt=[],Gi=[],di=[],Yi=[],ha=[],Jn=[],Cn=[],ja=[],qn=[],Qo=[],lo=[],Ms=[],qo=[],Ys=[],rs=[],xA=A.createDiagnosticCollection(),ve=A.createDiagnosticCollection(),Ue=kp(),et,jt,Ji=new A.Map,Dn=new A.Map,ta=new A.Map,qa=new A.Map,ro=new A.Map,Co=new A.Map,Ma=A.createSymbolTable();Ma.set($e.escapedName,$e);var Wa=[[".mts",".mjs"],[".ts",".js"],[".cts",".cjs"],[".mjs",".mjs"],[".js",".js"],[".cjs",".cjs"],[".tsx",tA.jsx===1?".jsx":".js"],[".jsx",".jsx"],[".json",".json"]];return yke(),ae;function gs(n){return n?Ur.get(n):void 0}function ts(n,u){return n&&Ur.set(n,u),u}function Us(n){if(n){var u=A.getSourceFileOfNode(n);if(u)if(A.isJsxOpeningFragment(n)){if(u.localJsxFragmentNamespace)return u.localJsxFragmentNamespace;var h=u.pragmas.get("jsxfrag");if(h){var D=A.isArray(h)?h[0]:h;if(u.localJsxFragmentFactory=A.parseIsolatedEntityName(D.arguments.factory,N),A.visitNode(u.localJsxFragmentFactory,jo),u.localJsxFragmentFactory)return u.localJsxFragmentNamespace=A.getFirstIdentifier(u.localJsxFragmentFactory).escapedText}var w=AAA(n);if(w)return u.localJsxFragmentFactory=w,u.localJsxFragmentNamespace=A.getFirstIdentifier(w).escapedText}else{var R=xl(u);if(R)return u.localJsxNamespace=R}}return et||(et="React",tA.jsxFactory?(jt=A.parseIsolatedEntityName(tA.jsxFactory,N),A.visitNode(jt,jo),jt&&(et=A.getFirstIdentifier(jt).escapedText)):tA.reactNamespace&&(et=A.escapeLeadingUnderscores(tA.reactNamespace))),jt||(jt=A.factory.createQualifiedName(A.factory.createIdentifier(A.unescapeLeadingUnderscores(et)),"createElement")),et}function xl(n){if(n.localJsxNamespace)return n.localJsxNamespace;var u=n.pragmas.get("jsx");if(u){var h=A.isArray(u)?u[0]:u;if(n.localJsxFactory=A.parseIsolatedEntityName(h.arguments.factory,N),A.visitNode(n.localJsxFactory,jo),n.localJsxFactory)return n.localJsxNamespace=A.getFirstIdentifier(n.localJsxFactory).escapedText}}function jo(n){return A.setTextRangePosEnd(n,-1,-1),A.visitEachChild(n,jo,A.nullTransformationContext)}function Cc(n,u){return L1A(n,u),ir}function Sf(n,u,h,D,w,R){var $=n?A.createDiagnosticForNode(n,u,h,D,w,R):A.createCompilerDiagnostic(u,h,D,w,R),DA=xA.lookup($);return DA||(xA.add($),$)}function Ed(n,u,h,D,w,R,$){var DA=pr(u,h,D,w,R,$);return DA.skippedOn=n,DA}function Pd(n,u,h,D,w,R){return n?A.createDiagnosticForNode(n,u,h,D,w,R):A.createCompilerDiagnostic(u,h,D,w,R)}function pr(n,u,h,D,w,R){var $=Pd(n,u,h,D,w,R);return xA.add($),$}function fd(n,u){n?xA.add(u):ve.add(pi(pi({},u),{category:A.DiagnosticCategory.Suggestion}))}function uu(n,u,h,D,w,R,$){if(u.pos<0||u.end<0){if(!n)return;var DA=A.getSourceFileOfNode(u);fd(n,"message"in h?A.createFileDiagnostic(DA,0,0,h,D,w,R,$):A.createDiagnosticForFileFromMessageChain(DA,h));return}fd(n,"message"in h?A.createDiagnosticForNode(u,h,D,w,R,$):A.createDiagnosticForNodeFromMessageChain(u,h))}function Bd(n,u,h,D,w,R,$){var DA=pr(n,h,D,w,R,$);if(u){var OA=A.createDiagnosticForNode(n,A.Diagnostics.Did_you_forget_to_use_await);A.addRelatedInfo(DA,OA)}return DA}function Zg(n,u){var h=Array.isArray(n)?A.forEach(n,A.getJSDocDeprecatedTag):A.getJSDocDeprecatedTag(n);return h&&A.addRelatedInfo(u,A.createDiagnosticForNode(h,A.Diagnostics.The_declaration_was_marked_as_deprecated_here)),ve.add(u),u}function vg(n){return!!(R9(n)&268435456)}function lg(n,u,h){var D=A.createDiagnosticForNode(n,A.Diagnostics._0_is_deprecated,h);return Zg(u,D)}function ZE(n,u,h,D){var w=h?A.createDiagnosticForNode(n,A.Diagnostics.The_signature_0_of_1_is_deprecated,D,h):A.createDiagnosticForNode(n,A.Diagnostics._0_is_deprecated,D);return Zg(u,w)}function Za(n,u,h){SA++;var D=new gA(n|33554432,u);return D.checkFlags=h||0,D}function dB(n){var u=0;return n&2&&(u|=111551),n&1&&(u|=111550),n&4&&(u|=0),n&8&&(u|=900095),n&16&&(u|=110991),n&32&&(u|=899503),n&64&&(u|=788872),n&256&&(u|=899327),n&128&&(u|=899967),n&512&&(u|=110735),n&8192&&(u|=103359),n&32768&&(u|=46015),n&65536&&(u|=78783),n&262144&&(u|=526824),n&524288&&(u|=788968),n&2097152&&(u|=2097152),u}function oE(n,u){u.mergeId||(u.mergeId=s,s++),xt[u.mergeId]=n}function pB(n){var u=Za(n.flags,n.escapedName);return u.declarations=n.declarations?n.declarations.slice():[],u.parent=n.parent,n.valueDeclaration&&(u.valueDeclaration=n.valueDeclaration),n.constEnumOnlyModule&&(u.constEnumOnlyModule=!0),n.members&&(u.members=new A.Map(n.members)),n.exports&&(u.exports=new A.Map(n.exports)),oE(u,n),u}function $E(n,u,h){if(h===void 0&&(h=!1),!(n.flags&dB(u.flags))||(u.flags|n.flags)&67108864){if(u===n)return n;if(!(n.flags&33554432)){var D=ds(n);if(D===Ar)return u;n=pB(D)}u.flags&512&&n.flags&512&&n.constEnumOnlyModule&&!u.constEnumOnlyModule&&(n.constEnumOnlyModule=!1),n.flags|=u.flags,u.valueDeclaration&&A.setValueDeclaration(n,u.valueDeclaration),A.addRange(n.declarations,u.declarations),u.members&&(n.members||(n.members=A.createSymbolTable()),vu(n.members,u.members,h)),u.exports&&(n.exports||(n.exports=A.createSymbolTable()),vu(n.exports,u.exports,h)),h||oE(n,u)}else if(n.flags&1024)n!==xr&&pr(u.declarations&&A.getNameOfDeclaration(u.declarations[0]),A.Diagnostics.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,Nn(n));else{var w=!!(n.flags&384||u.flags&384),R=!!(n.flags&2||u.flags&2),$=w?A.Diagnostics.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:R?A.Diagnostics.Cannot_redeclare_block_scoped_variable_0:A.Diagnostics.Duplicate_identifier_0,DA=u.declarations&&A.getSourceFileOfNode(u.declarations[0]),OA=n.declarations&&A.getSourceFileOfNode(n.declarations[0]),WA=A.isPlainJsFile(DA,tA.checkJs),Be=A.isPlainJsFile(OA,tA.checkJs),fe=Nn(u);if(DA&&OA&&ie&&!w&&DA!==OA){var me=A.comparePaths(DA.path,OA.path)===-1?DA:OA,Qe=me===DA?OA:DA,sr=A.getOrUpdate(ie,"".concat(me.path,"|").concat(Qe.path),function(){return{firstFile:me,secondFile:Qe,conflictingSymbols:new A.Map}}),yr=A.getOrUpdate(sr.conflictingSymbols,fe,function(){return{isBlockScoped:R,firstFileLocations:[],secondFileLocations:[]}});WA||At(yr.firstFileLocations,u),Be||At(yr.secondFileLocations,n)}else WA||EB(u,$,fe,n),Be||EB(n,$,fe,u)}return n;function At(Wr,ht){if(ht.declarations)for(var Dt=0,$t=ht.declarations;Dt<$t.length;Dt++){var Ei=$t[Dt];A.pushIfUnique(Wr,Ei)}}}function EB(n,u,h,D){A.forEach(n.declarations,function(w){Dp(w,u,h,D.declarations)})}function Dp(n,u,h,D){for(var w=(A.getExpandoInitializer(n,!1)?A.getNameOfExpando(n):A.getNameOfDeclaration(n))||n,R=Sf(w,u,h),$=function(Be){var fe=(A.getExpandoInitializer(Be,!1)?A.getNameOfExpando(Be):A.getNameOfDeclaration(Be))||Be;if(fe===w)return"continue";R.relatedInformation=R.relatedInformation||[];var me=A.createDiagnosticForNode(fe,A.Diagnostics._0_was_also_declared_here,h),Qe=A.createDiagnosticForNode(fe,A.Diagnostics.and_here);if(A.length(R.relatedInformation)>=5||A.some(R.relatedInformation,function(sr){return A.compareDiagnostics(sr,Qe)===0||A.compareDiagnostics(sr,me)===0}))return"continue";A.addRelatedInfo(R,A.length(R.relatedInformation)?Qe:me)},DA=0,OA=D||A.emptyArray;DA1);return}if(A.isGlobalScopeAugmentation(w))vu(mr,w.symbol.exports);else{var R=n.parent.parent.flags&16777216?void 0:A.Diagnostics.Invalid_module_name_in_augmentation_module_0_cannot_be_found,$=wd(n,n,R,!0);if(!$)return;if($=_c($),$.flags&1920)if(A.some(zr,function(sr){return $===sr.symbol})){var DA=$E(w.symbol,$,!0);Ft||(Ft=new A.Map),Ft.set(n.text,DA)}else{if(!((h=$.exports)===null||h===void 0)&&h.get("__export")&&(!((D=w.symbol.exports)===null||D===void 0)&&D.size))for(var OA=uv($,"resolvedExports"),WA=0,Be=A.arrayFrom(w.symbol.exports.entries());WAfe.end)return!1;var sr=A.findAncestor(me,function(yr){if(yr===fe)return"quit";switch(yr.kind){case 216:return!0;case 169:return Qe&&(A.isPropertyDeclaration(fe)&&yr.parent===fe.parent||A.isParameterPropertyDeclaration(fe,fe.parent)&&yr.parent===fe.parent.parent)?"quit":!0;case 238:switch(yr.parent.kind){case 174:case 171:case 175:return!0;default:return!1}default:return!1}});return sr===void 0}}function cE(n,u,h){var D=A.getEmitScriptTarget(tA),w=u;if(A.isParameter(h)&&w.body&&n.valueDeclaration&&n.valueDeclaration.pos>=w.body.pos&&n.valueDeclaration.end<=w.body.end&&D>=2){var R=qi(w);return R.declarationRequiresScopeChange===void 0&&(R.declarationRequiresScopeChange=A.forEach(w.parameters,$)||!1),!R.declarationRequiresScopeChange}return!1;function $(OA){return DA(OA.name)||!!OA.initializer&&DA(OA.initializer)}function DA(OA){switch(OA.kind){case 216:case 215:case 259:case 173:return!1;case 171:case 174:case 175:case 299:return DA(OA.name);case 169:return A.hasStaticModifier(OA)?D<99||!kA:DA(OA.name);default:return A.isNullishCoalesce(OA)||A.isOptionalChain(OA)?D<7:A.isBindingElement(OA)&&OA.dotDotDotToken&&A.isObjectBindingPattern(OA.parent)?D<4:A.isTypeNode(OA)?!1:A.forEachChild(OA,DA)||!1}}}function lh(n){return A.isAssertionExpression(n)&&A.isConstTypeReference(n.type)||A.isJSDocTypeTag(n)&&A.isConstTypeReference(n.typeExpression)}function Hs(n,u,h,D,w,R,$,DA){return $===void 0&&($=!1),DA===void 0&&(DA=!0),$h(n,u,h,D,w,R,$,DA,gu)}function $h(n,u,h,D,w,R,$,DA,OA){var WA,Be,fe,me=n,Qe,sr,yr,At,Wr,ht=!1,Dt=n,$t,Ei=!1;A:for(;n;){if(u==="const"&&lh(n))return;if(n.locals&&!Ro(n)&&(Qe=OA(n.locals,u,h))){var rn=!0;if(A.isFunctionLike(n)&&sr&&sr!==n.body?(h&Qe.flags&788968&&sr.kind!==323&&(rn=Qe.flags&262144?sr===n.type||sr.kind===166||sr.kind===343||sr.kind===344||sr.kind===165:!1),h&Qe.flags&3&&(cE(Qe,n,sr)?rn=!1:Qe.flags&1&&(rn=sr.kind===166||sr===n.type&&!!A.findAncestor(Qe.valueDeclaration,A.isParameter)))):n.kind===191&&(rn=sr===n.trueType),rn)break A;Qe=void 0}switch(ht=ht||$g(n,sr),n.kind){case 308:if(!A.isExternalOrCommonJsModule(n))break;Ei=!0;case 264:var Fi=((WA=hi(n))===null||WA===void 0?void 0:WA.exports)||RA;if(n.kind===308||A.isModuleDeclaration(n)&&n.flags&16777216&&!A.isGlobalScopeAugmentation(n)){if(Qe=Fi.get("default")){var Qa=A.getLocalSymbolForExportDefault(Qe);if(Qa&&Qe.flags&h&&Qa.escapedName===u)break A;Qe=void 0}var un=Fi.get(u);if(un&&un.flags===2097152&&(A.getDeclarationOfKind(un,278)||A.getDeclarationOfKind(un,277)))break}if(u!=="default"&&(Qe=OA(Fi,u,h&2623475)))if(A.isSourceFile(n)&&n.commonJsModuleIndicator&&!(!((Be=Qe.declarations)===null||Be===void 0)&&Be.some(A.isJSDocTypeAlias)))Qe=void 0;else break A;break;case 263:if(Qe=OA(((fe=hi(n))===null||fe===void 0?void 0:fe.exports)||RA,u,h&8))break A;break;case 169:if(!A.isStatic(n)){var ma=Mp(n.parent);ma&&ma.locals&&OA(ma.locals,u,h&111551)&&(A.Debug.assertNode(n,A.isPropertyDeclaration),At=n)}break;case 260:case 228:case 261:if(Qe=OA(hi(n).members||RA,u,h&788968)){if(!AQ(Qe,n)){Qe=void 0;break}if(sr&&A.isStatic(sr)){D&&pr(Dt,A.Diagnostics.Static_members_cannot_reference_class_type_parameters);return}break A}if(n.kind===228&&h&32){var Ca=n.name;if(Ca&&u===Ca.escapedText){Qe=n.symbol;break A}}break;case 230:if(sr===n.expression&&n.parent.token===94){var Sa=n.parent.parent;if(A.isClassLike(Sa)&&(Qe=OA(hi(Sa).members,u,h&788968))){D&&pr(Dt,A.Diagnostics.Base_class_expressions_cannot_reference_class_type_parameters);return}}break;case 164:if($t=n.parent.parent,(A.isClassLike($t)||$t.kind===261)&&(Qe=OA(hi($t).members,u,h&788968))){D&&pr(Dt,A.Diagnostics.A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type);return}break;case 216:if(A.getEmitScriptTarget(tA)>=2)break;case 171:case 173:case 174:case 175:case 259:if(h&3&&u==="arguments"){Qe=PA;break A}break;case 215:if(h&3&&u==="arguments"){Qe=PA;break A}if(h&16){var So=n.name;if(So&&u===So.escapedText){Qe=n.symbol;break A}}break;case 167:n.parent&&n.parent.kind===166&&(n=n.parent),n.parent&&(A.isClassElement(n.parent)||n.parent.kind===260)&&(n=n.parent);break;case 348:case 341:case 342:var Fo=A.getJSDocRoot(n);Fo&&(n=Fo.parent);break;case 166:sr&&(sr===n.initializer||sr===n.name&&A.isBindingPattern(sr))&&(Wr||(Wr=n));break;case 205:sr&&(sr===n.initializer||sr===n.name&&A.isBindingPattern(sr))&&A.isParameterDeclaration(n)&&!Wr&&(Wr=n);break;case 192:if(h&262144){var bo=n.typeParameter.name;if(bo&&u===bo.escapedText){Qe=n.typeParameter.symbol;break A}}break}Qd(n)&&(yr=n),sr=n,n=A.isJSDocTemplateTag(n)?A.getEffectiveContainerForJSDocTemplateTag(n)||n.parent:(A.isJSDocParameterTag(n)||A.isJSDocReturnTag(n))&&A.getHostSignatureFromJSDoc(n)||n.parent}if(R&&Qe&&(!yr||Qe!==yr.symbol)&&(Qe.isReferenced|=h),!Qe){if(sr&&(A.Debug.assert(sr.kind===308),sr.commonJsModuleIndicator&&u==="exports"&&h&sr.symbol.flags))return sr.symbol;$||(Qe=OA(mr,u,h))}if(!Qe&&me&&A.isInJSFile(me)&&me.parent&&A.isRequireCall(me.parent,!1))return we;function na(){return At&&!(kA&&A.getEmitScriptTarget(tA)>=9)?(pr(Dt,Dt&&At.type&&A.textRangeContainsPositionInclusive(At.type,Dt.pos)?A.Diagnostics.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:A.Diagnostics.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,A.declarationNameToString(At.name),wl(w)),!0):!1}if(Qe){if(D&&na())return}else{D&&_A(function(){if(!Dt||!cl(Dt,u,w)&&!na()&&!Gd(Dt)&&!md(Dt,u,h)&&!hB(Dt,u)&&!gh(Dt,u,h)&&!eQ(Dt,u,h)&&!uh(Dt,u,h)){var St=void 0,it=void 0;if(w&&(it=k7e(w),it&&pr(Dt,D,wl(w),it)),!it&&DA&&lrWr.pos&&En.parent.locals&&OA(En.parent.locals,zi.escapedName,h)===zi&&pr(Dt,A.Diagnostics.Parameter_0_cannot_reference_identifier_1_declared_after_it,A.declarationNameToString(Wr.name),A.declarationNameToString(Dt))}if(Qe&&Dt&&h&111551&&Qe.flags&2097152&&!(Qe.flags&111551)&&!A.isValidTypeOnlyAliasUseSite(Dt)){var zn=Rl(Qe,111551);if(zn){var xi=zn.kind===278?A.Diagnostics._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:A.Diagnostics._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,Oa=A.unescapeLeadingUnderscores(u);rc(pr(Dt,xi,Oa),zn,Oa)}}}),Qe}function rc(n,u,h){return u?A.addRelatedInfo(n,A.createDiagnosticForNode(u,u.kind===278?A.Diagnostics._0_was_exported_here:A.Diagnostics._0_was_imported_here,h)):n}function $g(n,u){return n.kind!==216&&n.kind!==215?A.isTypeQueryNode(n)||(A.isFunctionLikeDeclaration(n)||n.kind===169&&!A.isStatic(n))&&(!u||u!==n.name):u&&u===n.name?!1:n.asteriskToken||A.hasSyntacticModifier(n,512)?!0:!A.getImmediatelyInvokedFunctionExpression(n)}function Qd(n){switch(n.kind){case 259:case 260:case 261:case 263:case 262:case 264:return!0;default:return!1}}function wl(n){return A.isString(n)?A.unescapeLeadingUnderscores(n):A.declarationNameToString(n)}function AQ(n,u){if(n.declarations)for(var h=0,D=n.declarations;h=A.ModuleKind.ES2015?"allowSyntheticDefaultImports":"esModuleInterop",Be=n.exports.get("export="),fe=Be.valueDeclaration,me=pr(u.name,A.Diagnostics.Module_0_can_only_be_default_imported_using_the_1_flag,Nn(n),WA);fe&&A.addRelatedInfo(me,A.createDiagnosticForNode(fe,A.Diagnostics.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,WA))}else A.isImportClause(u)?uE(n,u):vl(n,n,u,A.isImportOrExportSpecifier(u)&&u.propertyName||u.name);else if(OA||DA){var Qe=_c(n,h)||ds(n,h);return Pc(u,n,Qe,!1),Qe}return Pc(u,w,void 0,!1),w}function Og(n){switch(n.kind){case 270:return n.parent.moduleSpecifier;case 268:return A.isExternalModuleReference(n.moduleReference)?n.moduleReference.expression:void 0;case 271:return n.parent.parent.moduleSpecifier;case 273:return n.parent.parent.parent.moduleSpecifier;case 278:return n.parent.parent.moduleSpecifier;default:return A.Debug.assertNever(n)}}function uE(n,u){var h,D,w;if(!((h=n.exports)===null||h===void 0)&&h.has(u.symbol.escapedName))pr(u.name,A.Diagnostics.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,Nn(n),Nn(u.symbol));else{var R=pr(u.name,A.Diagnostics.Module_0_has_no_default_export,Nn(n)),$=(D=n.exports)===null||D===void 0?void 0:D.get("__export");if($){var DA=(w=$.declarations)===null||w===void 0?void 0:w.find(function(OA){var WA,Be;return!!(A.isExportDeclaration(OA)&&OA.moduleSpecifier&&(!((Be=(WA=hc(OA,OA.moduleSpecifier))===null||WA===void 0?void 0:WA.exports)===null||Be===void 0)&&Be.has("default")))});DA&&A.addRelatedInfo(R,A.createDiagnosticForNode(DA,A.Diagnostics.export_Asterisk_does_not_re_export_a_default))}}}function Fl(n,u){var h=n.parent.parent.moduleSpecifier,D=hc(n,h),w=pu(D,h,u,!1);return Pc(n,D,w,!1),w}function $l(n,u){var h=n.parent.moduleSpecifier,D=h&&hc(n,h),w=h&&pu(D,h,u,!1);return Pc(n,D,w,!1),w}function ed(n,u){if(n===Ar&&u===Ar)return Ar;if(n.flags&790504)return n;var h=Za(n.flags|u.flags,n.escapedName);return h.declarations=A.deduplicate(A.concatenate(n.declarations,u.declarations),A.equateValues),h.parent=n.parent||u.parent,n.valueDeclaration&&(h.valueDeclaration=n.valueDeclaration),u.members&&(h.members=new A.Map(u.members)),n.exports&&(h.exports=new A.Map(n.exports)),h}function ug(n,u,h,D){if(n.flags&1536){var w=yl(n).get(u.escapedText),R=ds(w,D);return Pc(h,w,R,!1),R}}function gg(n,u){if(n.flags&3){var h=n.valueDeclaration.type;if(h)return ds(mn(Mn(h),u))}}function yu(n,u,h){var D;h===void 0&&(h=!1);var w=A.getExternalModuleRequireArgument(n)||n.moduleSpecifier,R=hc(n,w),$=!A.isPropertyAccessExpression(u)&&u.propertyName||u.name;if(A.isIdentifier($)){var DA=$.escapedText==="default"&&!!(tA.allowSyntheticDefaultImports||A.getESModuleInterop(tA)),OA=pu(R,w,!1,DA);if(OA&&$.escapedText){if(A.isShorthandAmbientModuleSymbol(R))return R;var WA=void 0;R&&R.exports&&R.exports.get("export=")?WA=mn(li(OA),$.escapedText,!0):WA=gg(OA,$.escapedText),WA=ds(WA,h);var Be=ug(OA,$,u,h);if(Be===void 0&&$.escapedText==="default"){var fe=(D=R.declarations)===null||D===void 0?void 0:D.find(A.isSourceFile);(Ad(w)||Sl(fe,R,h,w))&&(Be=_c(R,h)||ds(R,h))}var me=Be&&WA&&Be!==WA?ed(WA,Be):Be||WA;return me||vl(R,OA,n,$),me}}}function vl(n,u,h,D){var w,R=Nl(n,h),$=A.declarationNameToString(D),DA=G9(D,u);if(DA!==void 0){var OA=Nn(DA),WA=pr(D,A.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2,R,$,OA);DA.valueDeclaration&&A.addRelatedInfo(WA,A.createDiagnosticForNode(DA.valueDeclaration,A.Diagnostics._0_is_declared_here,OA))}else!((w=n.exports)===null||w===void 0)&&w.has("default")?pr(D,A.Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,R,$):ph(h,D,$,n,R)}function ph(n,u,h,D,w){var R,$,DA=($=(R=D.valueDeclaration)===null||R===void 0?void 0:R.locals)===null||$===void 0?void 0:$.get(u.escapedText),OA=D.exports;if(DA){var WA=OA?.get("export=");if(WA)dg(WA,DA)?mB(n,u,h,w):pr(u,A.Diagnostics.Module_0_has_no_exported_member_1,w,h);else{var Be=OA?A.find(rp(OA),function(me){return!!dg(me,DA)}):void 0,fe=Be?pr(u,A.Diagnostics.Module_0_declares_1_locally_but_it_is_exported_as_2,w,h,Nn(Be)):pr(u,A.Diagnostics.Module_0_declares_1_locally_but_it_is_not_exported,w,h);DA.declarations&&A.addRelatedInfo.apply(void 0,dt([fe],A.map(DA.declarations,function(me,Qe){return A.createDiagnosticForNode(me,Qe===0?A.Diagnostics._0_is_declared_here:A.Diagnostics.and_here,h)}),!1))}}else pr(u,A.Diagnostics.Module_0_has_no_exported_member_1,w,h)}function mB(n,u,h,D){if(nA>=A.ModuleKind.ES2015){var w=A.getESModuleInterop(tA)?A.Diagnostics._0_can_only_be_imported_by_using_a_default_import:A.Diagnostics._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;pr(u,w,h)}else if(A.isInJSFile(n)){var w=A.getESModuleInterop(tA)?A.Diagnostics._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:A.Diagnostics._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;pr(u,w,h)}else{var w=A.getESModuleInterop(tA)?A.Diagnostics._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:A.Diagnostics._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;pr(u,w,h,h,D)}}function tf(n,u){if(A.isImportSpecifier(n)&&A.idText(n.propertyName||n.name)==="default"){var h=Og(n),D=h&&hc(n,h);if(D)return vp(D,n,u)}var w=A.isBindingElement(n)?A.getRootDeclaration(n):n.parent.parent.parent,R=DB(w),$=yu(w,R||n,u),DA=n.propertyName||n.name;return R&&$&&A.isIdentifier(DA)?ds(mn(li($),DA.escapedText),u):(Pc(n,void 0,$,!1),$)}function DB(n){if(A.isVariableDeclaration(n)&&n.initializer&&A.isPropertyAccessExpression(n.initializer))return n.initializer}function Lo(n,u){var h=_c(n.parent.symbol,u);return Pc(n,void 0,h,!1),h}function Ic(n,u,h){if(A.idText(n.propertyName||n.name)==="default"){var D=Og(n),w=D&&hc(n,D);if(w)return vp(w,n,!!h)}var R=n.parent.parent.moduleSpecifier?yu(n.parent.parent,n,h):Ss(n.propertyName||n.name,u,!1,h);return Pc(n,void 0,R,!1),R}function Tf(n,u){var h=A.isExportAssignment(n)?n.expression:n.right,D=nf(h,u);return Pc(n,void 0,D,!1),D}function nf(n,u){if(A.isClassExpression(n))return sc(n).symbol;if(!(!A.isEntityName(n)&&!A.isEntityNameExpression(n))){var h=Ss(n,901119,!0,u);return h||(sc(n),qi(n).resolvedSymbol)}}function Fu(n,u){if(A.isBinaryExpression(n.parent)&&n.parent.left===n&&n.parent.operatorToken.kind===63)return nf(n.parent.right,u)}function Ud(n,u){switch(u===void 0&&(u=!1),n.kind){case 268:case 257:return Af(n,u);case 270:return bg(n,u);case 271:return Fl(n,u);case 277:return $l(n,u);case 273:case 205:return tf(n,u);case 278:return Ic(n,901119,u);case 274:case 223:return Tf(n,u);case 267:return Lo(n,u);case 300:return Ss(n.name,901119,!0,u);case 299:return nf(n.initializer,u);case 209:case 208:return Fu(n,u);default:return A.Debug.fail()}}function af(n,u){return u===void 0&&(u=901119),n?(n.flags&(2097152|u))===2097152||!!(n.flags&2097152&&n.flags&67108864):!1}function ds(n,u){return!u&&af(n)?oi(n):n}function oi(n){A.Debug.assert((n.flags&2097152)!==0,"Should only get Alias here.");var u=Tn(n);if(u.aliasTarget)u.aliasTarget===fr&&(u.aliasTarget=Ar);else{u.aliasTarget=fr;var h=Ig(n);if(!h)return A.Debug.fail();var D=Ud(h);u.aliasTarget===fr?u.aliasTarget=D||Ar:pr(h,A.Diagnostics.Circular_definition_of_import_alias_0,Nn(n))}return u.aliasTarget}function ss(n){var u=Tn(n);if(u.aliasTarget!==fr)return oi(n)}function Rn(n){for(var u=n.flags,h;n.flags&2097152;){var D=oi(n);if(D===Ar)return 67108863;if(D===n||h?.has(D))break;D.flags&2097152&&(h?h.add(D):h=new A.Set([n,D])),u|=D.flags,n=D}return u}function Pc(n,u,h,D){if(!n||A.isPropertyAccessExpression(n))return!1;var w=hi(n);if(A.isTypeOnlyImportOrExportDeclaration(n)){var R=Tn(w);return R.typeOnlyDeclaration=n,!0}var $=Tn(w);return _B($,u,D)||_B($,h,D)}function _B(n,u,h){var D,w,R;if(u&&(n.typeOnlyDeclaration===void 0||h&&n.typeOnlyDeclaration===!1)){var $=(w=(D=u.exports)===null||D===void 0?void 0:D.get("export="))!==null&&w!==void 0?w:u,DA=$.declarations&&A.find($.declarations,A.isTypeOnlyImportOrExportDeclaration);n.typeOnlyDeclaration=(R=DA??Tn($).typeOnlyDeclaration)!==null&&R!==void 0?R:!1}return!!n.typeOnlyDeclaration}function Rl(n,u){if(n.flags&2097152){var h=Tn(n);if(u===void 0)return h.typeOnlyDeclaration||void 0;if(h.typeOnlyDeclaration)return Rn(oi(h.typeOnlyDeclaration.symbol))&u?h.typeOnlyDeclaration:void 0}}function fi(n){var u=hi(n),h=oi(u);if(h){var D=h===Ar||Rn(h)&111551&&!XC(h)&&!Rl(u,111551);D&&Ru(u)}}function Ru(n){var u=Tn(n);if(!u.referenced){u.referenced=!0;var h=Ig(n);if(!h)return A.Debug.fail();A.isInternalModuleImportEqualsDeclaration(h)&&Rn(ds(n))&111551&&sc(h.moduleReference)}}function Tl(n){var u=Tn(n);u.constEnumReferenced||(u.constEnumReferenced=!0)}function cs(n,u){return n.kind===79&&A.isRightSideOfQualifiedNameOrPropertyAccess(n)&&(n=n.parent),n.kind===79||n.parent.kind===163?Ss(n,1920,!1,u):(A.Debug.assert(n.parent.kind===268),Ss(n,901119,!1,u))}function Nl(n,u){return n.parent?Nl(n.parent,u)+"."+Nn(n):Nn(n,u,void 0,36)}function du(n){for(;A.isQualifiedName(n.parent);)n=n.parent;return n}function yp(n){var u=A.getFirstIdentifier(n),h=Hs(u,u.escapedText,111551,void 0,u,!0);if(h){for(;A.isQualifiedName(u.parent);){var D=li(h);if(h=mn(D,u.parent.right.escapedText),!h)return;u=u.parent}return h}}function Ss(n,u,h,D,w){if(!A.nodeIsMissing(n)){var R=1920|(A.isInJSFile(n)?u&111551:0),$;if(n.kind===79){var DA=u===R||A.nodeIsSynthesized(n)?A.Diagnostics.Cannot_find_namespace_0:RQA(A.getFirstIdentifier(n)),OA=A.isInJSFile(n)&&!A.nodeIsSynthesized(n)?_d(n,u):void 0;if($=Pn(Hs(w||n,n.escapedText,u,h||OA?void 0:DA,n,!0,!1)),!$)return Pn(OA)}else if(n.kind===163||n.kind===208){var WA=n.kind===163?n.left:n.expression,Be=n.kind===163?n.right:n.name,fe=Ss(WA,R,h,!1,w);if(!fe||A.nodeIsMissing(Be))return;if(fe===Ar)return fe;if(fe.valueDeclaration&&A.isInJSFile(fe.valueDeclaration)&&A.isVariableDeclaration(fe.valueDeclaration)&&fe.valueDeclaration.initializer&&EmA(fe.valueDeclaration.initializer)){var me=fe.valueDeclaration.initializer.arguments[0],Qe=hc(me,me);if(Qe){var sr=_c(Qe);sr&&(fe=sr)}}if($=Pn(gu(yl(fe),Be.escapedText,u)),!$){if(!h){var yr=Nl(fe),At=A.declarationNameToString(Be),Wr=G9(Be,fe);if(Wr){pr(Be,A.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2,yr,At,Nn(Wr));return}var ht=A.isQualifiedName(n)&&du(n),Dt=Gt&&u&788968&&ht&&!A.isTypeOfExpression(ht.parent)&&yp(ht);if(Dt){pr(ht,A.Diagnostics._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,A.entityNameToString(ht));return}if(u&1920&&A.isQualifiedName(n.parent)){var $t=Pn(gu(yl(fe),Be.escapedText,788968));if($t){pr(n.parent.right,A.Diagnostics.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,Nn($t),A.unescapeLeadingUnderscores(n.parent.right.escapedText));return}}pr(Be,A.Diagnostics.Namespace_0_has_no_exported_member_1,yr,At)}return}}else throw A.Debug.assertNever(n,"Unknown entity name kind.");return A.Debug.assert((A.getCheckFlags($)&1)===0,"Should never get an instantiated symbol here."),!A.nodeIsSynthesized(n)&&A.isEntityName(n)&&($.flags&2097152||n.parent.kind===274)&&Pc(A.getAliasDeclarationFromName(n),$,void 0,!0),$.flags&u||D?$:oi($)}}function _d(n,u){if(EC(n.parent)){var h=Ld(n.parent);if(h)return Hs(h,n.escapedText,u,void 0,n,!0)}}function Ld(n){var u=A.findAncestor(n,function(R){return A.isJSDocNode(R)||R.flags&8388608?A.isJSDocTypeAlias(R):"quit"});if(!u){var h=A.getJSDocHost(n);if(h&&A.isExpressionStatement(h)&&A.isPrototypePropertyAssignment(h.expression)){var D=hi(h.expression.left);if(D)return of(D)}if(h&&A.isFunctionExpression(h)&&A.isPrototypePropertyAssignment(h.parent)&&A.isExpressionStatement(h.parent.parent)){var D=hi(h.parent.left);if(D)return of(D)}if(h&&(A.isObjectLiteralMethod(h)||A.isPropertyAssignment(h))&&A.isBinaryExpression(h.parent.parent)&&A.getAssignmentDeclarationKind(h.parent.parent)===6){var D=hi(h.parent.parent.left);if(D)return of(D)}var w=A.getEffectiveJSDocHost(n);if(w&&A.isFunctionLike(w)){var D=hi(w);return D&&D.valueDeclaration}}}function of(n){var u=n.parent.valueDeclaration;if(u){var h=A.isAssignmentDeclaration(u)?A.getAssignedExpandoInitializer(u):A.hasOnlyExpressionInitializer(u)?A.getDeclaredExpandoInitializer(u):void 0;return h||u}}function rd(n){var u=n.valueDeclaration;if(!(!u||!A.isInJSFile(u)||n.flags&524288||A.getExpandoInitializer(u,!1))){var h=A.isVariableDeclaration(u)?A.getDeclaredExpandoInitializer(u):A.getAssignedExpandoInitializer(u);if(h){var D=hi(h);if(D)return B$(D,n)}}}function hc(n,u,h){var D=A.getEmitModuleResolutionKind(tA)===A.ModuleResolutionKind.Classic,w=D?A.Diagnostics.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:A.Diagnostics.Cannot_find_module_0_or_its_corresponding_type_declarations;return wd(n,u,h?void 0:w)}function wd(n,u,h,D){return D===void 0&&(D=!1),A.isStringLiteralLike(u)?gE(n,u.text,h,u,D):void 0}function gE(n,u,h,D,w){var R,$,DA,OA,WA,Be,fe,me;if(w===void 0&&(w=!1),A.startsWith(u,"@types/")){var Qe=A.Diagnostics.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,sr=A.removePrefix(u,"@types/");pr(D,Qe,sr,u)}var yr=vD(u,!0);if(yr)return yr;var At=A.getSourceFileOfNode(n),Wr=A.isStringLiteralLike(n)?n:((R=A.findAncestor(n,A.isImportCall))===null||R===void 0?void 0:R.arguments[0])||(($=A.findAncestor(n,A.isImportDeclaration))===null||$===void 0?void 0:$.moduleSpecifier)||((DA=A.findAncestor(n,A.isExternalModuleImportEqualsDeclaration))===null||DA===void 0?void 0:DA.moduleReference.expression)||((OA=A.findAncestor(n,A.isExportDeclaration))===null||OA===void 0?void 0:OA.moduleSpecifier)||((WA=A.isModuleDeclaration(n)?n:n.parent&&A.isModuleDeclaration(n.parent)&&n.parent.name===n?n.parent:void 0)===null||WA===void 0?void 0:WA.name)||((Be=A.isLiteralImportTypeNode(n)?n:void 0)===null||Be===void 0?void 0:Be.argument.literal),ht=Wr&&A.isStringLiteralLike(Wr)?A.getModeForUsageLocation(At,Wr):At.impliedNodeFormat,Dt=A.getResolvedModule(At,u,ht),$t=Dt&&A.getResolutionDiagnostic(tA,Dt),Ei=Dt&&(!$t||$t===A.Diagnostics.Module_0_was_resolved_to_1_but_jsx_is_not_set)&&z.getSourceFile(Dt.resolvedFileName);if(Ei){if($t&&pr(D,$t,u,Dt.resolvedFileName),Ei.symbol){if(Dt.isExternalLibraryImport&&!A.resolutionExtensionIsTSOrJson(Dt.extension)&&Cp(!1,D,Dt,u),A.getEmitModuleResolutionKind(tA)===A.ModuleResolutionKind.Node16||A.getEmitModuleResolutionKind(tA)===A.ModuleResolutionKind.NodeNext){var rn=At.impliedNodeFormat===A.ModuleKind.CommonJS&&!A.findAncestor(n,A.isImportCall)||!!A.findAncestor(n,A.isImportEqualsDeclaration),Fi=A.findAncestor(n,function(Aa){return A.isImportTypeNode(Aa)||A.isExportDeclaration(Aa)||A.isImportDeclaration(Aa)}),Qa=Fi&&A.isImportTypeNode(Fi)?(fe=Fi.assertions)===null||fe===void 0?void 0:fe.assertClause:Fi?.assertClause;if(rn&&Ei.impliedNodeFormat===A.ModuleKind.ESNext&&!A.getResolutionModeOverrideForClause(Qa))if(A.findAncestor(n,A.isImportEqualsDeclaration))pr(D,A.Diagnostics.Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead,u);else{var un=void 0,ma=A.tryGetExtensionFromPath(At.fileName);if(ma===".ts"||ma===".js"||ma===".tsx"||ma===".jsx"){var Ca=At.packageJsonScope,Sa=ma===".ts"?".mts":ma===".js"?".mjs":void 0;Ca&&!Ca.contents.packageJsonContent.type?Sa?un=A.chainDiagnosticMessages(void 0,A.Diagnostics.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1,Sa,A.combinePaths(Ca.packageDirectory,"package.json")):un=A.chainDiagnosticMessages(void 0,A.Diagnostics.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0,A.combinePaths(Ca.packageDirectory,"package.json")):Sa?un=A.chainDiagnosticMessages(void 0,A.Diagnostics.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module,Sa):un=A.chainDiagnosticMessages(void 0,A.Diagnostics.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module)}xA.add(A.createDiagnosticForNodeFromMessageChain(D,A.chainDiagnosticMessages(un,A.Diagnostics.The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead,u)))}}return Pn(Ei.symbol)}h&&pr(D,A.Diagnostics.File_0_is_not_a_module,Ei.fileName);return}if(zr){var So=A.findBestPatternMatch(zr,function(Aa){return Aa.pattern},u);if(So){var Fo=Ft&&Ft.get(u);return Pn(Fo||So.symbol)}}if(Dt&&!A.resolutionExtensionIsTSOrJson(Dt.extension)&&$t===void 0||$t===A.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(w){var Qe=A.Diagnostics.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;pr(D,Qe,u,Dt.resolvedFileName)}else Cp(Ae&&!!h,D,Dt,u);return}if(h){if(Dt){var bo=z.getProjectReferenceRedirect(Dt.resolvedFileName);if(bo){pr(D,A.Diagnostics.Output_file_0_has_not_been_built_from_source_file_1,bo,Dt.resolvedFileName);return}}if($t)pr(D,$t,u,Dt.resolvedFileName);else{var na=A.tryExtractTSExtension(u),St=A.pathIsRelative(u)&&!A.hasExtension(u),it=A.getEmitModuleResolutionKind(tA),zi=it===A.ModuleResolutionKind.Node16||it===A.ModuleResolutionKind.NodeNext;if(na){var Qe=A.Diagnostics.An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead,En=A.removeExtension(u,na),zn=En;nA>=A.ModuleKind.ES2015&&(zn+=na===".mts"?".mjs":na===".cts"?".cjs":".js"),pr(D,Qe,na,zn)}else if(!tA.resolveJsonModule&&A.fileExtensionIs(u,".json")&&A.getEmitModuleResolutionKind(tA)!==A.ModuleResolutionKind.Classic&&A.hasJsonModuleEmitEnabled(tA))pr(D,A.Diagnostics.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,u);else if(ht===A.ModuleKind.ESNext&&zi&&St){var xi=A.getNormalizedAbsolutePath(u,A.getDirectoryPath(At.path)),Oa=(me=Wa.find(function(Aa){var Na=Aa[0],Pa=Aa[1];return z.fileExists(xi+Na)}))===null||me===void 0?void 0:me[1];Oa?pr(D,A.Diagnostics.Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0,u+Oa):pr(D,A.Diagnostics.Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path)}else pr(D,h,u)}}}function Cp(n,u,h,D){var w=h.packageId,R=h.resolvedFileName,$=!A.isExternalModuleNameRelative(D)&&w?jd(w.name)?A.chainDiagnosticMessages(void 0,A.Diagnostics.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,w.name,A.mangleScopedPackageName(w.name)):wB(w.name)?A.chainDiagnosticMessages(void 0,A.Diagnostics.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,w.name,D):A.chainDiagnosticMessages(void 0,A.Diagnostics.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,D,A.mangleScopedPackageName(w.name)):void 0;uu(n,u,A.chainDiagnosticMessages($,A.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,D,R))}function jd(n){return AA().has(A.getTypesPackageName(n))}function wB(n){return!!AA().get(n)}function _c(n,u){if(n?.exports){var h=ds(n.exports.get("export="),u),D=Wd(Pn(h),Pn(n));return Pn(D)||n}}function Wd(n,u){if(!n||n===Ar||n===u||u.exports.size===1||n.flags&2097152)return n;var h=Tn(n);if(h.cjsExportMerged)return h.cjsExportMerged;var D=n.flags&33554432?n:pB(n);return D.flags=D.flags|512,D.exports===void 0&&(D.exports=A.createSymbolTable()),u.exports.forEach(function(w,R){R!=="export="&&D.exports.set(R,D.exports.has(R)?$E(D.exports.get(R),w):w)}),Tn(D).cjsExportMerged=D,h.cjsExportMerged=D}function pu(n,u,h,D){var w,R=_c(n,h);if(!h&&R){if(!D&&!(R.flags&1539)&&!A.getDeclarationOfKind(R,308)){var $=nA>=A.ModuleKind.ES2015?"allowSyntheticDefaultImports":"esModuleInterop";return pr(u,A.Diagnostics.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,$),R}var DA=u.parent;if(A.isImportDeclaration(DA)&&A.getNamespaceDeclarationNode(DA)||A.isImportCall(DA)){var OA=A.isImportCall(DA)?DA.arguments[0]:DA.moduleSpecifier,WA=li(R),Be=dmA(WA,R,n,OA);if(Be)return sf(R,Be,DA);var fe=(w=n?.declarations)===null||w===void 0?void 0:w.find(A.isSourceFile),me=fe&&wp(Dd(OA),fe.impliedNodeFormat);if(A.getESModuleInterop(tA)||me){var Qe=qs(WA,0);if((!Qe||!Qe.length)&&(Qe=qs(WA,1)),Qe&&Qe.length||mn(WA,"default",!0)||me){var sr=pmA(WA,R,n,OA);return sf(R,sr,DA)}}}}return R}function sf(n,u,h){var D=Za(n.flags,n.escapedName);D.declarations=n.declarations?n.declarations.slice():[],D.parent=n.parent,D.target=n,D.originatingImport=h,n.valueDeclaration&&(D.valueDeclaration=n.valueDeclaration),n.constEnumOnlyModule&&(D.constEnumOnlyModule=!0),n.members&&(D.members=new A.Map(n.members)),n.exports&&(D.exports=new A.Map(n.exports));var w=Bg(u);return D.type=Vo(D,w.members,A.emptyArray,A.emptyArray,w.indexInfos),D}function Ip(n){return n.exports.get("export=")!==void 0}function Jd(n){return rp(lc(n))}function Nf(n){var u=Jd(n),h=_c(n);if(h!==n){var D=li(h);Js(D)&&A.addRange(u,co(D))}return u}function qd(n,u){var h=lc(n);h.forEach(function(R,$){xp($)||u(R,$)});var D=_c(n);if(D!==n){var w=li(D);Js(w)&&iC(w,function(R,$){u(R,$)})}}function Mg(n,u){var h=lc(u);if(h)return h.get(n)}function vB(n,u){var h=Mg(n,u);if(h)return h;var D=_c(u);if(D!==u){var w=li(D);return Js(w)?mn(w,n):void 0}}function Js(n){return!(n.flags&131068||A.getObjectFlags(n)&1||nd(n)||$a(n))}function yl(n){return n.flags&6256?uv(n,"resolvedExports"):n.flags&1536?lc(n):n.exports||RA}function lc(n){var u=Tn(n);return u.resolvedExports||(u.resolvedExports=dE(n))}function bp(n,u,h,D){u&&u.forEach(function(w,R){if(R!=="default"){var $=n.get(R);if(!$)n.set(R,w),h&&D&&h.set(R,{specifierText:A.getTextOfNode(D.moduleSpecifier)});else if(h&&D&&$&&ds($)!==ds(w)){var DA=h.get(R);DA.exportsWithDuplicate?DA.exportsWithDuplicate.push(D):DA.exportsWithDuplicate=[D]}}})}function dE(n){var u=[];return n=_c(n),h(n)||RA;function h(D){if(D&&D.exports&&A.pushIfUnique(u,D)){var w=new A.Map(D.exports),R=D.exports.get("__export");if(R){var $=A.createSymbolTable(),DA=new A.Map;if(R.declarations)for(var OA=0,WA=R.declarations;OA=Be?WA.substr(0,Be-3)+"...":WA}function Cd(n,u){var h=xg(n.symbol)?si(n,n.symbol.valueDeclaration):si(n),D=xg(u.symbol)?si(u,u.symbol.valueDeclaration):si(u);return h===D&&(h=bB(n),D=bB(u)),[h,D]}function bB(n){return si(n,void 0,64)}function xg(n){return n&&!!n.valueDeclaration&&A.isExpression(n.valueDeclaration)&&!Md(n.valueDeclaration)}function fu(n){return n===void 0&&(n=0),n&848330091}function Sp(n){return!!n.symbol&&!!(n.symbol.flags&32)&&(n===Yu(n.symbol)||!!(n.flags&524288)&&!!(A.getObjectFlags(n)&16777216))}function Bh(){return{typeToTypeNode:function(vr,Ne,ui,Rt){return u(Ne,ui,Rt,function(Si){return w(vr,Si)})},indexInfoToIndexSignatureDeclaration:function(vr,Ne,ui,Rt){return u(Ne,ui,Rt,function(Si){return fe(vr,Si,void 0)})},signatureToSignatureDeclaration:function(vr,Ne,ui,Rt,Si){return u(ui,Rt,Si,function(Ai){return me(vr,Ne,Ai)})},symbolToEntityName:function(vr,Ne,ui,Rt,Si){return u(ui,Rt,Si,function(Ai){return Sa(vr,Ai,Ne,!1)})},symbolToExpression:function(vr,Ne,ui,Rt,Si){return u(ui,Rt,Si,function(Ai){return So(vr,Ai,Ne)})},symbolToTypeParameterDeclarations:function(vr,Ne,ui,Rt){return u(Ne,ui,Rt,function(Si){return $t(vr,Si)})},symbolToParameterDeclaration:function(vr,Ne,ui,Rt){return u(Ne,ui,Rt,function(Si){return At(vr,Si)})},typeParameterToDeclaration:function(vr,Ne,ui,Rt){return u(Ne,ui,Rt,function(Si){return yr(vr,Si)})},symbolTableToDeclarationStatements:function(vr,Ne,ui,Rt,Si){return u(Ne,ui,Rt,function(Ai){return Pa(vr,Ai,Si)})},symbolToNode:function(vr,Ne,ui,Rt,Si){return u(ui,Rt,Si,function(Ai){return n(vr,Ai,Ne)})}};function n(vr,Ne,ui){if(Ne.flags&1073741824){if(vr.valueDeclaration){var Rt=A.getNameOfDeclaration(vr.valueDeclaration);if(Rt&&A.isComputedPropertyName(Rt))return Rt}var Si=Tn(vr).nameType;if(Si&&Si.flags&9216)return Ne.enclosingDeclaration=Si.symbol.valueDeclaration,A.factory.createComputedPropertyName(So(Si.symbol,Ne,ui))}return So(vr,Ne,ui)}function u(vr,Ne,ui,Rt){var Si,Ai;A.Debug.assert(vr===void 0||(vr.flags&8)===0);var gi={enclosingDeclaration:vr,flags:Ne||0,tracker:ui&&ui.trackSymbol?ui:{trackSymbol:function(){return!1},moduleResolverHost:Ne&134217728?{getCommonSourceDirectory:z.getCommonSourceDirectory?function(){return z.getCommonSourceDirectory()}:function(){return""},getCurrentDirectory:function(){return z.getCurrentDirectory()},getSymlinkCache:A.maybeBind(z,z.getSymlinkCache),getPackageJsonInfoCache:function(){var dr;return(dr=z.getPackageJsonInfoCache)===null||dr===void 0?void 0:dr.call(z)},useCaseSensitiveFileNames:A.maybeBind(z,z.useCaseSensitiveFileNames),redirectTargetsMap:z.redirectTargetsMap,getProjectReferenceRedirect:function(dr){return z.getProjectReferenceRedirect(dr)},isSourceOfProjectReferenceRedirect:function(dr){return z.isSourceOfProjectReferenceRedirect(dr)},fileExists:function(dr){return z.fileExists(dr)},getFileIncludeReasons:function(){return z.getFileIncludeReasons()},readFile:z.readFile?function(dr){return z.readFile(dr)}:void 0}:void 0},encounteredError:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0};gi.tracker=h(gi,gi.tracker);var nn=Rt(gi);return gi.truncating&&gi.flags&1&&((Ai=(Si=gi.tracker)===null||Si===void 0?void 0:Si.reportTruncationError)===null||Ai===void 0||Ai.call(Si)),gi.encounteredError?void 0:nn}function h(vr,Ne){var ui=Ne.trackSymbol;return pi(pi({},Ne),{reportCyclicStructureError:Rt(Ne.reportCyclicStructureError),reportInaccessibleThisError:Rt(Ne.reportInaccessibleThisError),reportInaccessibleUniqueSymbolError:Rt(Ne.reportInaccessibleUniqueSymbolError),reportLikelyUnsafeImportRequiredError:Rt(Ne.reportLikelyUnsafeImportRequiredError),reportNonlocalAugmentation:Rt(Ne.reportNonlocalAugmentation),reportPrivateInBaseOfClassExpression:Rt(Ne.reportPrivateInBaseOfClassExpression),reportNonSerializableProperty:Rt(Ne.reportNonSerializableProperty),trackSymbol:ui&&function(){for(var Si=[],Ai=0;Ai(vr.flags&1?A.noTruncationMaximumTruncationLength:A.defaultMaximumTruncationLength)}function w(vr,Ne){var ui=Ne.flags,Rt=R(vr,Ne);return Ne.flags=ui,Rt}function R(vr,Ne){fA&&fA.throwIfCancellationRequested&&fA.throwIfCancellationRequested();var ui=Ne.flags&8388608;if(Ne.flags&=-8388609,!vr){if(!(Ne.flags&262144)){Ne.encounteredError=!0;return}return Ne.approximateLength+=3,A.factory.createKeywordTypeNode(131)}if(Ne.flags&536870912||(vr=Wi(vr)),vr.flags&1)return vr.aliasSymbol?A.factory.createTypeReferenceNode(Qa(vr.aliasSymbol),WA(vr.aliasTypeArguments,Ne)):vr===pe?A.addSyntheticLeadingComment(A.factory.createKeywordTypeNode(131),3,"unresolved"):(Ne.approximateLength+=3,A.factory.createKeywordTypeNode(vr===Pe?139:131));if(vr.flags&2)return A.factory.createKeywordTypeNode(157);if(vr.flags&4)return Ne.approximateLength+=6,A.factory.createKeywordTypeNode(152);if(vr.flags&8)return Ne.approximateLength+=6,A.factory.createKeywordTypeNode(148);if(vr.flags&64)return Ne.approximateLength+=6,A.factory.createKeywordTypeNode(160);if(vr.flags&16&&!vr.aliasSymbol)return Ne.approximateLength+=7,A.factory.createKeywordTypeNode(134);if(vr.flags&1024&&!(vr.flags&1048576)){var Rt=Pl(vr.symbol),Si=un(Rt,Ne,788968);if(Hi(Rt)===vr)return Si;var Ai=A.symbolName(vr.symbol);return A.isIdentifierText(Ai,0)?Hr(Si,A.factory.createTypeReferenceNode(Ai,void 0)):A.isImportTypeNode(Si)?(Si.isTypeOf=!0,A.factory.createIndexedAccessTypeNode(Si,A.factory.createLiteralTypeNode(A.factory.createStringLiteral(Ai)))):A.isTypeReferenceNode(Si)?A.factory.createIndexedAccessTypeNode(A.factory.createTypeQueryNode(Si.typeName),A.factory.createLiteralTypeNode(A.factory.createStringLiteral(Ai))):A.Debug.fail("Unhandled type node kind returned from `symbolToTypeNode`.")}if(vr.flags&1056)return un(vr.symbol,Ne,788968);if(vr.flags&128)return Ne.approximateLength+=vr.value.length+2,A.factory.createLiteralTypeNode(A.setEmitFlags(A.factory.createStringLiteral(vr.value,!!(Ne.flags&268435456)),16777216));if(vr.flags&256){var gi=vr.value;return Ne.approximateLength+=(""+gi).length,A.factory.createLiteralTypeNode(gi<0?A.factory.createPrefixUnaryExpression(40,A.factory.createNumericLiteral(-gi)):A.factory.createNumericLiteral(gi))}if(vr.flags&2048)return Ne.approximateLength+=A.pseudoBigIntToString(vr.value).length+1,A.factory.createLiteralTypeNode(A.factory.createBigIntLiteral(vr.value));if(vr.flags&512)return Ne.approximateLength+=vr.intrinsicName.length,A.factory.createLiteralTypeNode(vr.intrinsicName==="true"?A.factory.createTrue():A.factory.createFalse());if(vr.flags&8192){if(!(Ne.flags&1048576)){if(Vd(vr.symbol,Ne.enclosingDeclaration))return Ne.approximateLength+=6,un(vr.symbol,Ne,111551);Ne.tracker.reportInaccessibleUniqueSymbolError&&Ne.tracker.reportInaccessibleUniqueSymbolError()}return Ne.approximateLength+=13,A.factory.createTypeOperatorNode(156,A.factory.createKeywordTypeNode(153))}if(vr.flags&16384)return Ne.approximateLength+=4,A.factory.createKeywordTypeNode(114);if(vr.flags&32768)return Ne.approximateLength+=9,A.factory.createKeywordTypeNode(155);if(vr.flags&65536)return Ne.approximateLength+=4,A.factory.createLiteralTypeNode(A.factory.createNull());if(vr.flags&131072)return Ne.approximateLength+=5,A.factory.createKeywordTypeNode(144);if(vr.flags&4096)return Ne.approximateLength+=6,A.factory.createKeywordTypeNode(153);if(vr.flags&67108864)return Ne.approximateLength+=6,A.factory.createKeywordTypeNode(149);if(A.isThisTypeParameter(vr))return Ne.flags&4194304&&(!Ne.encounteredError&&!(Ne.flags&32768)&&(Ne.encounteredError=!0),Ne.tracker.reportInaccessibleThisError&&Ne.tracker.reportInaccessibleThisError()),Ne.approximateLength+=4,A.factory.createThisTypeNode();if(!ui&&vr.aliasSymbol&&(Ne.flags&16384||fE(vr.aliasSymbol,Ne.enclosingDeclaration))){var nn=WA(vr.aliasTypeArguments,Ne);return xp(vr.aliasSymbol.escapedName)&&!(vr.aliasSymbol.flags&32)?A.factory.createTypeReferenceNode(A.factory.createIdentifier(""),nn):A.length(nn)===1&&vr.aliasSymbol===ra.symbol?A.factory.createArrayTypeNode(nn[0]):un(vr.aliasSymbol,Ne,788968,nn)}var dr=A.getObjectFlags(vr);if(dr&4)return A.Debug.assert(!!(vr.flags&524288)),vr.node?FE(vr,RE):RE(vr);if(vr.flags&262144||dr&3){if(vr.flags&262144&&A.contains(Ne.inferTypeParameters,vr)){Ne.approximateLength+=A.symbolName(vr.symbol).length+6;var st=void 0,Qt=$c(vr);if(Qt){var qt=wx(vr,!0);qt&&zf(Qt,qt)||(Ne.approximateLength+=9,st=Qt&&w(Qt,Ne))}return A.factory.createInferTypeNode(sr(vr,Ne,st))}if(Ne.flags&4&&vr.flags&262144&&!fE(vr.symbol,Ne.enclosingDeclaration)){var Vt=Ca(vr,Ne);return Ne.approximateLength+=A.idText(Vt).length,A.factory.createTypeReferenceNode(A.factory.createIdentifier(A.idText(Vt)),void 0)}if(vr.symbol)return un(vr.symbol,Ne,788968);var Oi=(vr===oo||vr===Xo)&&MA&&MA.symbol?(vr===Xo?"sub-":"super-")+A.symbolName(MA.symbol):"?";return A.factory.createTypeReferenceNode(A.factory.createIdentifier(Oi),void 0)}if(vr.flags&1048576&&vr.origin&&(vr=vr.origin),vr.flags&3145728){var dn=vr.flags&1048576?cf(vr.types):vr.types;if(A.length(dn)===1)return w(dn[0],Ne);var Hn=WA(dn,Ne,!0);if(Hn&&Hn.length>0)return vr.flags&1048576?A.factory.createUnionTypeNode(Hn):A.factory.createIntersectionTypeNode(Hn);!Ne.encounteredError&&!(Ne.flags&262144)&&(Ne.encounteredError=!0);return}if(dr&48)return A.Debug.assert(!!(vr.flags&524288)),f0(vr);if(vr.flags&4194304){var Ka=vr.type;Ne.approximateLength+=6;var Sn=w(Ka,Ne);return A.factory.createTypeOperatorNode(141,Sn)}if(vr.flags&134217728){var Oo=vr.texts,fo=vr.types,$o=A.factory.createTemplateHead(Oo[0]),Bl=A.factory.createNodeArray(A.map(fo,function(tt,Xt){return A.factory.createTemplateLiteralTypeSpan(w(tt,Ne),(Xt10)return $(Ne);Ne.symbolDepth.set(on,Ua+1)}Ne.visitedTypes.add(vi);var ko=Ne.approximateLength,La=Xt(tt),Es=Ne.approximateLength-ko;return!Ne.reportedDiagnostic&&!Ne.encounteredError&&(Ne.truncating&&(La.truncating=!0),La.addedLength=Es,(Ut=bn?.serializedTypes)===null||Ut===void 0||Ut.set(da,La)),Ne.visitedTypes.delete(vi),on&&Ne.symbolDepth.set(on,Ua),La;function ls(is){return!A.nodeIsSynthesized(is)&&A.getParseTreeNode(is)===is?is:A.setTextRange(A.factory.cloneNode(A.visitEachChild(is,ls,A.nullTransformationContext,au)),is)}function au(is,Ks,Vr,Di,On){return is&&is.length===0?A.setTextRange(A.factory.createNodeArray(void 0,is.hasTrailingComma),is):A.visitNodes(is,Ks,Vr,Di,On)}}function jB(tt){if(nu(tt)||tt.containsError)return E0(tt);var Xt=Bg(tt);if(!Xt.properties.length&&!Xt.indexInfos.length){if(!Xt.callSignatures.length&&!Xt.constructSignatures.length)return Ne.approximateLength+=2,A.setEmitFlags(A.factory.createTypeLiteralNode(void 0),1);if(Xt.callSignatures.length===1&&!Xt.constructSignatures.length){var _t=Xt.callSignatures[0],Ut=me(_t,181,Ne);return Ut}if(Xt.constructSignatures.length===1&&!Xt.callSignatures.length){var _t=Xt.constructSignatures[0],Ut=me(_t,182,Ne);return Ut}}var vi=A.filter(Xt.constructSignatures,function(Ua){return!!(Ua.flags&4)});if(A.some(vi)){var an=A.map(vi,W1),on=Xt.callSignatures.length+(Xt.constructSignatures.length-vi.length)+Xt.indexInfos.length+(Ne.flags&2048?A.countWhere(Xt.properties,function(Ua){return!(Ua.flags&4194304)}):A.length(Xt.properties));return on&&an.push(Eh(Xt)),w(xa(an),Ne)}var bn=Ne.flags;Ne.flags|=4194304;var da=bt(Xt);Ne.flags=bn;var oa=A.factory.createTypeLiteralNode(da);return Ne.approximateLength+=2,A.setEmitFlags(oa,Ne.flags&1024?0:1),oa}function RE(tt){var Xt=Po(tt);if(tt.target===ra||tt.target===Vn){if(Ne.flags&2){var _t=w(Xt[0],Ne);return A.factory.createTypeReferenceNode(tt.target===ra?"Array":"ReadonlyArray",[_t])}var Ut=w(Xt[0],Ne),vi=A.factory.createArrayTypeNode(Ut);return tt.target===ra?vi:A.factory.createTypeOperatorNode(146,vi)}else if(tt.target.objectFlags&8){if(Xt=A.sameMap(Xt,function(Ki,pn){return PD(Ki,!!(tt.target.elementFlags[pn]&2))}),Xt.length>0){var an=FB(tt),on=WA(Xt.slice(0,an),Ne);if(on){if(tt.target.labeledElementDeclarations)for(var bn=0;bn0){var Di=(tt.target.typeParameters||A.emptyArray).length;Vr=WA(Xt.slice(bn,Di),Ne)}var da=Ne.flags;Ne.flags|=16;var On=un(tt.symbol,Ne,788968,Vr);return Ne.flags=da,ko?Hr(ko,On):On}}function Hr(tt,Xt){if(A.isImportTypeNode(tt)){var _t=tt.typeArguments,Ut=tt.qualifier;Ut&&(A.isIdentifier(Ut)?Ut=A.factory.updateIdentifier(Ut,_t):Ut=A.factory.updateQualifiedName(Ut,Ut.left,A.factory.updateIdentifier(Ut.right,_t))),_t=Xt.typeArguments;for(var vi=Kr(Xt),an=0,on=vi;an2)return[w(vr[0],Ne),A.factory.createTypeReferenceNode("... ".concat(vr.length-2," more ..."),void 0),w(vr[vr.length-1],Ne)]}else return[A.factory.createTypeReferenceNode("...",void 0)];for(var Rt=!(Ne.flags&64),Si=Rt?A.createUnderscoreEscapedMultiMap():void 0,Ai=[],gi=0,nn=0,dr=vr;nn0)):Si=[vr],Si;function gi(nn,dr,st){var Qt=Tu(nn,Ne.enclosingDeclaration,dr,!!(Ne.flags&128)),qt;if(!Qt||EE(Qt[0],Ne.enclosingDeclaration,Qt.length===1?dr:Cu(dr))){var Vt=pE(Qt?Qt[0]:nn,Ne.enclosingDeclaration,dr);if(A.length(Vt)){qt=Vt.map(function($o){return A.some($o.declarations,Gc)?Fi($o,Ne):void 0});var Oi=Vt.map(function($o,Bl){return Bl});Oi.sort(fo);for(var dn=Oi.map(function($o){return Vt[$o]}),Hn=0,Ka=dn;Hn1?mg(dr,dr.length-1,1):void 0,qt=Rt||Ei(dr,0,Ne),Vt=A.getSourceFileOfNode(A.getOriginalNode(Ne.enclosingDeclaration)),Oi=A.getSourceFileOfModule(dr[0]),dn=void 0,Hn=void 0;if((A.getEmitModuleResolutionKind(tA)===A.ModuleResolutionKind.Node16||A.getEmitModuleResolutionKind(tA)===A.ModuleResolutionKind.NodeNext)&&Oi?.impliedNodeFormat===A.ModuleKind.ESNext&&Oi.impliedNodeFormat!==Vt?.impliedNodeFormat&&(dn=Fi(dr[0],Ne,A.ModuleKind.ESNext),Hn=A.factory.createImportTypeAssertionContainer(A.factory.createAssertClause(A.factory.createNodeArray([A.factory.createAssertEntry(A.factory.createStringLiteral("resolution-mode"),A.factory.createStringLiteral("import"))]))),(Ai=(Si=Ne.tracker).reportImportTypeNodeResolutionModeOverride)===null||Ai===void 0||Ai.call(Si)),dn||(dn=Fi(dr[0],Ne)),!(Ne.flags&67108864)&&A.getEmitModuleResolutionKind(tA)!==A.ModuleResolutionKind.Classic&&dn.indexOf("/node_modules/")>=0){var Ka=dn;if(A.getEmitModuleResolutionKind(tA)===A.ModuleResolutionKind.Node16||A.getEmitModuleResolutionKind(tA)===A.ModuleResolutionKind.NodeNext){var Sn=Vt?.impliedNodeFormat===A.ModuleKind.ESNext?A.ModuleKind.CommonJS:A.ModuleKind.ESNext;dn=Fi(dr[0],Ne,Sn),dn.indexOf("/node_modules/")>=0?dn=Ka:(Hn=A.factory.createImportTypeAssertionContainer(A.factory.createAssertClause(A.factory.createNodeArray([A.factory.createAssertEntry(A.factory.createStringLiteral("resolution-mode"),A.factory.createStringLiteral(Sn===A.ModuleKind.ESNext?"import":"require"))]))),(nn=(gi=Ne.tracker).reportImportTypeNodeResolutionModeOverride)===null||nn===void 0||nn.call(gi))}Hn||(Ne.encounteredError=!0,Ne.tracker.reportLikelyUnsafeImportRequiredError&&Ne.tracker.reportLikelyUnsafeImportRequiredError(Ka))}var Oo=A.factory.createLiteralTypeNode(A.factory.createStringLiteral(dn));if(Ne.tracker.trackExternalModuleSymbolOfImportTypeNode&&Ne.tracker.trackExternalModuleSymbolOfImportTypeNode(dr[0]),Ne.approximateLength+=dn.length+10,!Qt||A.isEntityName(Qt)){if(Qt){var fo=A.isIdentifier(Qt)?Qt:Qt.right;fo.typeArguments=void 0}return A.factory.createImportTypeNode(Oo,Hn,Qt,qt,st)}else{var $o=rn(Qt),Bl=$o.objectType.typeName;return A.factory.createIndexedAccessTypeNode(A.factory.createImportTypeNode(Oo,Hn,Bl,qt,st),$o.indexType)}}var hl=mg(dr,dr.length-1,0);if(A.isIndexedAccessTypeNode(hl))return hl;if(st)return A.factory.createTypeQueryNode(hl);var fo=A.isIdentifier(hl)?hl:hl.right,zs=fo.typeArguments;return fo.typeArguments=void 0,A.factory.createTypeReferenceNode(hl,zs);function mg(Cs,mf,E0){var f0=mf===Cs.length-1?Rt:Ei(Cs,mf,Ne),FE=Cs[mf],jB=Cs[mf-1],RE;if(mf===0)Ne.flags|=16777216,RE=ge(FE,Ne),Ne.approximateLength+=(RE?RE.length:0)+1,Ne.flags^=16777216;else if(jB&&yl(jB)){var Hr=yl(jB);A.forEachEntry(Hr,function(Xt,_t){if(dg(Xt,FE)&&!jf(_t)&&_t!=="export=")return RE=A.unescapeLeadingUnderscores(_t),!0})}if(RE===void 0){var Kr=A.firstDefined(FE.declarations,A.getNameOfDeclaration);if(Kr&&A.isComputedPropertyName(Kr)&&A.isEntityName(Kr.expression)){var bt=mg(Cs,mf-1,E0);return A.isEntityName(bt)?A.factory.createIndexedAccessTypeNode(A.factory.createParenthesizedType(A.factory.createTypeQueryNode(bt)),A.factory.createTypeQueryNode(Kr.expression)):bt}RE=ge(FE,Ne)}if(Ne.approximateLength+=RE.length+1,!(Ne.flags&16)&&jB&&Np(jB)&&Np(jB).get(FE.escapedName)&&dg(Np(jB).get(FE.escapedName),FE)){var bt=mg(Cs,mf-1,E0);return A.isIndexedAccessTypeNode(bt)?A.factory.createIndexedAccessTypeNode(bt,A.factory.createLiteralTypeNode(A.factory.createStringLiteral(RE))):A.factory.createIndexedAccessTypeNode(A.factory.createTypeReferenceNode(bt,f0),A.factory.createLiteralTypeNode(A.factory.createStringLiteral(RE)))}var tt=A.setEmitFlags(A.factory.createIdentifier(RE,f0),16777216);if(tt.symbol=FE,mf>E0){var bt=mg(Cs,mf-1,E0);return A.isEntityName(bt)?A.factory.createQualifiedName(bt,tt):A.Debug.fail("Impossible construct - an export of an indexed access cannot be reachable")}return tt}}function ma(vr,Ne,ui){var Rt=Hs(Ne.enclosingDeclaration,vr,788968,void 0,vr,!1);return Rt?!(Rt.flags&262144&&Rt===ui.symbol):!1}function Ca(vr,Ne){var ui,Rt;if(Ne.flags&4&&Ne.typeParameterNames){var Si=Ne.typeParameterNames.get(rl(vr));if(Si)return Si}var Ai=Sa(vr.symbol,Ne,788968,!0);if(!(Ai.kind&79))return A.factory.createIdentifier("(Missing type parameter)");if(Ne.flags&4){for(var gi=Ai.escapedText,nn=((ui=Ne.typeParameterNamesByTextNextNameCount)===null||ui===void 0?void 0:ui.get(gi))||0,dr=gi;!((Rt=Ne.typeParameterNamesByText)===null||Rt===void 0)&&Rt.has(dr)||ma(dr,Ne,vr);)nn++,dr="".concat(gi,"_").concat(nn);dr!==gi&&(Ai=A.factory.createIdentifier(dr,Ai.typeArguments)),(Ne.typeParameterNamesByTextNextNameCount||(Ne.typeParameterNamesByTextNextNameCount=new A.Map)).set(gi,nn),(Ne.typeParameterNames||(Ne.typeParameterNames=new A.Map)).set(rl(vr),Ai),(Ne.typeParameterNamesByText||(Ne.typeParameterNamesByText=new A.Set)).add(gi)}return Ai}function Sa(vr,Ne,ui,Rt){var Si=ht(vr,Ne,ui);return Rt&&Si.length!==1&&!Ne.encounteredError&&!(Ne.flags&65536)&&(Ne.encounteredError=!0),Ai(Si,Si.length-1);function Ai(gi,nn){var dr=Ei(gi,nn,Ne),st=gi[nn];nn===0&&(Ne.flags|=16777216);var Qt=ge(st,Ne);nn===0&&(Ne.flags^=16777216);var qt=A.setEmitFlags(A.factory.createIdentifier(Qt,dr),16777216);return qt.symbol=st,nn>0?A.factory.createQualifiedName(Ai(gi,nn-1),qt):qt}}function So(vr,Ne,ui){var Rt=ht(vr,Ne,ui);return Si(Rt,Rt.length-1);function Si(Ai,gi){var nn=Ei(Ai,gi,Ne),dr=Ai[gi];gi===0&&(Ne.flags|=16777216);var st=ge(dr,Ne);gi===0&&(Ne.flags^=16777216);var Qt=st.charCodeAt(0);if(A.isSingleOrDoubleQuote(Qt)&&A.some(dr.declarations,Gc))return A.factory.createStringLiteral(Fi(dr,Ne));var qt=Qt===35?st.length>1&&A.isIdentifierStart(st.charCodeAt(1),N):A.isIdentifierStart(Qt,N);if(gi===0||qt){var Vt=A.setEmitFlags(A.factory.createIdentifier(st,nn),16777216);return Vt.symbol=dr,gi>0?A.factory.createPropertyAccessExpression(Si(Ai,gi-1),Vt):Vt}else{Qt===91&&(st=st.substring(1,st.length-1),Qt=st.charCodeAt(0));var Oi=void 0;return A.isSingleOrDoubleQuote(Qt)&&!(dr.flags&8)?Oi=A.factory.createStringLiteral(A.stripQuotes(st).replace(/\\./g,function(dn){return dn.substring(1)}),Qt===39):""+ +st===st&&(Oi=A.factory.createNumericLiteral(+st)),Oi||(Oi=A.setEmitFlags(A.factory.createIdentifier(st,nn),16777216),Oi.symbol=dr),A.factory.createElementAccessExpression(Si(Ai,gi-1),Oi)}}}function Fo(vr){var Ne=A.getNameOfDeclaration(vr);return!!Ne&&A.isStringLiteral(Ne)}function bo(vr){var Ne=A.getNameOfDeclaration(vr);return!!(Ne&&A.isStringLiteral(Ne)&&(Ne.singleQuote||!A.nodeIsSynthesized(Ne)&&A.startsWith(A.getTextOfNode(Ne,!1),"'")))}function na(vr,Ne){var ui=!!A.length(vr.declarations)&&A.every(vr.declarations,bo),Rt=St(vr,Ne,ui);if(Rt)return Rt;var Si=A.unescapeLeadingUnderscores(vr.escapedName),Ai=!!A.length(vr.declarations)&&A.every(vr.declarations,Fo);return A.createPropertyNameNodeForIdentifierOrLiteral(Si,A.getEmitScriptTarget(tA),ui,Ai)}function St(vr,Ne,ui){var Rt=Tn(vr).nameType;if(Rt){if(Rt.flags&384){var Si=""+Rt.value;return!A.isIdentifierText(Si,A.getEmitScriptTarget(tA))&&!A.isNumericLiteralName(Si)?A.factory.createStringLiteral(Si,!!ui):A.isNumericLiteralName(Si)&&A.startsWith(Si,"-")?A.factory.createComputedPropertyName(A.factory.createNumericLiteral(+Si)):A.createPropertyNameNodeForIdentifierOrLiteral(Si,A.getEmitScriptTarget(tA))}if(Rt.flags&8192)return A.factory.createComputedPropertyName(So(Rt.symbol,Ne,111551))}}function it(vr){var Ne=pi({},vr);return Ne.typeParameterNames&&(Ne.typeParameterNames=new A.Map(Ne.typeParameterNames)),Ne.typeParameterNamesByText&&(Ne.typeParameterNamesByText=new A.Set(Ne.typeParameterNamesByText)),Ne.typeParameterSymbolList&&(Ne.typeParameterSymbolList=new A.Set(Ne.typeParameterSymbolList)),Ne.tracker=h(Ne,Ne.tracker),Ne}function zi(vr,Ne){return vr.declarations&&A.find(vr.declarations,function(ui){return!!A.getEffectiveTypeAnnotationNode(ui)&&(!Ne||!!A.findAncestor(ui,function(Rt){return Rt===Ne}))})}function En(vr,Ne){return!(A.getObjectFlags(Ne)&4)||!A.isTypeReferenceNode(vr)||A.length(vr.typeArguments)>=Ng(Ne.target.typeParameters)}function zn(vr,Ne,ui,Rt,Si,Ai){if(!$n(Ne)&&Rt){var gi=zi(ui,Rt);if(gi&&!A.isFunctionLikeDeclaration(gi)&&!A.isGetAccessorDeclaration(gi)){var nn=A.getEffectiveTypeAnnotationNode(gi);if(xi(nn,gi,Ne)&&En(nn,Ne)){var dr=Na(vr,nn,Si,Ai);if(dr)return dr}}}var st=vr.flags;Ne.flags&8192&&Ne.symbol===ui&&(!vr.enclosingDeclaration||A.some(ui.declarations,function(qt){return A.getSourceFileOfNode(qt)===A.getSourceFileOfNode(vr.enclosingDeclaration)}))&&(vr.flags|=1048576);var Qt=w(Ne,vr);return vr.flags=st,Qt}function xi(vr,Ne,ui){var Rt=Mn(vr);return Rt===ui?!0:A.isParameter(Ne)&&Ne.questionToken?Lg(ui,524288)===Rt:!1}function Oa(vr,Ne,ui,Rt,Si){if(!$n(Ne)&&vr.enclosingDeclaration){var Ai=ui.declaration&&A.getEffectiveReturnTypeNode(ui.declaration);if(A.findAncestor(Ai,function(st){return st===vr.enclosingDeclaration})&&Ai){var gi=Mn(Ai),nn=gi.flags&262144&&gi.isThisType?Kn(gi,ui.mapper):gi;if(nn===Ne&&En(Ai,Ne)){var dr=Na(vr,Ai,Rt,Si);if(dr)return dr}}}return w(Ne,vr)}function Aa(vr,Ne,ui){var Rt,Si,Ai=!1,gi=A.getFirstIdentifier(vr);if(A.isInJSFile(vr)&&(A.isExportsIdentifier(gi)||A.isModuleExportsAccessExpression(gi.parent)||A.isQualifiedName(gi.parent)&&A.isModuleIdentifier(gi.parent.left)&&A.isExportsIdentifier(gi.parent.right)))return Ai=!0,{introducesError:Ai,node:vr};var nn=Ss(gi,67108863,!0,!0);if(nn&&(zd(nn,Ne.enclosingDeclaration,67108863,!1).accessibility!==0?Ai=!0:((Si=(Rt=Ne.tracker)===null||Rt===void 0?void 0:Rt.trackSymbol)===null||Si===void 0||Si.call(Rt,nn,Ne.enclosingDeclaration,67108863),ui?.(nn)),A.isIdentifier(vr))){var dr=Hi(nn),st=nn.flags&262144&&!fE(dr.symbol,Ne.enclosingDeclaration)?Ca(dr,Ne):A.factory.cloneNode(vr);return st.symbol=nn,{introducesError:Ai,node:A.setEmitFlags(A.setOriginalNode(st,vr),16777216)}}return{introducesError:Ai,node:vr}}function Na(vr,Ne,ui,Rt){fA&&fA.throwIfCancellationRequested&&fA.throwIfCancellationRequested();var Si=!1,Ai=A.getSourceFileOfNode(Ne),gi=A.visitNode(Ne,nn);if(Si)return;return gi===Ne?A.setTextRange(A.factory.cloneNode(Ne),Ne):gi;function nn(dr){if(A.isJSDocAllType(dr)||dr.kind===322)return A.factory.createKeywordTypeNode(131);if(A.isJSDocUnknownType(dr))return A.factory.createKeywordTypeNode(157);if(A.isJSDocNullableType(dr))return A.factory.createUnionTypeNode([A.visitNode(dr.type,nn),A.factory.createLiteralTypeNode(A.factory.createNull())]);if(A.isJSDocOptionalType(dr))return A.factory.createUnionTypeNode([A.visitNode(dr.type,nn),A.factory.createKeywordTypeNode(155)]);if(A.isJSDocNonNullableType(dr))return A.visitNode(dr.type,nn);if(A.isJSDocVariadicType(dr))return A.factory.createArrayTypeNode(A.visitNode(dr.type,nn));if(A.isJSDocTypeLiteral(dr))return A.factory.createTypeLiteralNode(A.map(dr.jsDocPropertyTags,function(Sn){var Oo=A.isIdentifier(Sn.name)?Sn.name:Sn.name.right,fo=ya(Mn(dr),Oo.escapedText),$o=fo&&Sn.typeExpression&&Mn(Sn.typeExpression.type)!==fo?w(fo,vr):void 0;return A.factory.createPropertySignature(void 0,Oo,Sn.isBracketed||Sn.typeExpression&&A.isJSDocOptionalType(Sn.typeExpression.type)?A.factory.createToken(57):void 0,$o||Sn.typeExpression&&A.visitNode(Sn.typeExpression.type,nn)||A.factory.createKeywordTypeNode(131))}));if(A.isTypeReferenceNode(dr)&&A.isIdentifier(dr.typeName)&&dr.typeName.escapedText==="")return A.setOriginalNode(A.factory.createKeywordTypeNode(131),dr);if((A.isExpressionWithTypeArguments(dr)||A.isTypeReferenceNode(dr))&&A.isJSDocIndexSignature(dr))return A.factory.createTypeLiteralNode([A.factory.createIndexSignature(void 0,[A.factory.createParameterDeclaration(void 0,void 0,"x",void 0,A.visitNode(dr.typeArguments[0],nn))],A.visitNode(dr.typeArguments[1],nn))]);if(A.isJSDocFunctionType(dr))if(A.isJSDocConstructSignature(dr)){var st;return A.factory.createConstructorTypeNode(void 0,A.visitNodes(dr.typeParameters,nn),A.mapDefined(dr.parameters,function(Sn,Oo){return Sn.name&&A.isIdentifier(Sn.name)&&Sn.name.escapedText==="new"?(st=Sn.type,void 0):A.factory.createParameterDeclaration(void 0,dn(Sn),Hn(Sn,Oo),Sn.questionToken,A.visitNode(Sn.type,nn),void 0)}),A.visitNode(st||dr.type,nn)||A.factory.createKeywordTypeNode(131))}else return A.factory.createFunctionTypeNode(A.visitNodes(dr.typeParameters,nn),A.map(dr.parameters,function(Sn,Oo){return A.factory.createParameterDeclaration(void 0,dn(Sn),Hn(Sn,Oo),Sn.questionToken,A.visitNode(Sn.type,nn),void 0)}),A.visitNode(dr.type,nn)||A.factory.createKeywordTypeNode(131));if(A.isTypeReferenceNode(dr)&&A.isInJSDoc(dr)&&(!En(dr,Mn(dr))||kx(dr)||Ar===q1(dr,788968,!0)))return A.setOriginalNode(w(Mn(dr),vr),dr);if(A.isLiteralImportTypeNode(dr)){var Qt=qi(dr).resolvedSymbol;return A.isInJSDoc(dr)&&Qt&&(!dr.isTypeOf&&!(Qt.flags&788968)||!(A.length(dr.typeArguments)>=Ng(Tp(Qt))))?A.setOriginalNode(w(Mn(dr),vr),dr):A.factory.updateImportTypeNode(dr,A.factory.updateLiteralTypeNode(dr.argument,Ka(dr,dr.argument.literal)),dr.assertions,dr.qualifier,A.visitNodes(dr.typeArguments,nn,A.isTypeNode),dr.isTypeOf)}if(A.isEntityName(dr)||A.isEntityNameExpression(dr)){var qt=Aa(dr,vr,ui),Vt=qt.introducesError,Oi=qt.node;if(Si=Si||Vt,Oi!==dr)return Oi}return Ai&&A.isTupleTypeNode(dr)&&A.getLineAndCharacterOfPosition(Ai,dr.pos).line===A.getLineAndCharacterOfPosition(Ai,dr.end).line&&A.setEmitFlags(dr,1),A.visitEachChild(dr,nn,A.nullTransformationContext);function dn(Sn){return Sn.dotDotDotToken||(Sn.type&&A.isJSDocVariadicType(Sn.type)?A.factory.createToken(25):void 0)}function Hn(Sn,Oo){return Sn.name&&A.isIdentifier(Sn.name)&&Sn.name.escapedText==="this"?"this":dn(Sn)?"args":"arg".concat(Oo)}function Ka(Sn,Oo){if(Rt){if(vr.tracker&&vr.tracker.moduleResolverHost){var fo=eAA(Sn);if(fo){var $o=A.createGetCanonicalFileName(!!z.useCaseSensitiveFileNames),Bl={getCanonicalFileName:$o,getCurrentDirectory:function(){return vr.tracker.moduleResolverHost.getCurrentDirectory()},getCommonSourceDirectory:function(){return vr.tracker.moduleResolverHost.getCommonSourceDirectory()}},hl=A.getResolvedExternalModuleName(Bl,fo);return A.factory.createStringLiteral(hl)}}}else if(vr.tracker&&vr.tracker.trackExternalModuleSymbolOfImportTypeNode){var zs=wd(Oo,Oo,void 0);zs&&vr.tracker.trackExternalModuleSymbolOfImportTypeNode(zs)}return Oo}}}function Pa(vr,Ne,ui){var Rt=da(A.factory.createPropertyDeclaration,171,!0),Si=da(function(Vr,Di,On,Ki){return A.factory.createPropertySignature(Vr,Di,On,Ki)},170,!1),Ai=Ne.enclosingDeclaration,gi=[],nn=new A.Set,dr=[],st=Ne;Ne=pi(pi({},st),{usedSymbolNames:new A.Set(st.usedSymbolNames),remappedSymbolNames:new A.Map,tracker:pi(pi({},st.tracker),{trackSymbol:function(Vr,Di,On){var Ki=zd(Vr,Di,On,!1);if(Ki.accessibility===0){var pn=Dt(Vr,Ne,On);Vr.flags&4||zs(pn[0])}else if(st.tracker&&st.tracker.trackSymbol)return st.tracker.trackSymbol(Vr,Di,On);return!1}})}),Ne.tracker=h(Ne,Ne.tracker),A.forEachEntry(vr,function(Vr,Di){var On=A.unescapeLeadingUnderscores(Di);Ks(Vr,On)});var Qt=!ui,qt=vr.get("export=");return qt&&vr.size>1&&qt.flags&2097152&&(vr=A.createSymbolTable(),vr.set("export=",qt)),$o(vr),Sn(gi);function Vt(Vr){return!!Vr&&Vr.kind===79}function Oi(Vr){return A.isVariableStatement(Vr)?A.filter(A.map(Vr.declarationList.declarations,A.getNameOfDeclaration),Vt):A.filter([A.getNameOfDeclaration(Vr)],Vt)}function dn(Vr){var Di=A.find(Vr,A.isExportAssignment),On=A.findIndex(Vr,A.isModuleDeclaration),Ki=On!==-1?Vr[On]:void 0;if(Ki&&Di&&Di.isExportEquals&&A.isIdentifier(Di.expression)&&A.isIdentifier(Ki.name)&&A.idText(Ki.name)===A.idText(Di.expression)&&Ki.body&&A.isModuleBlock(Ki.body)){var pn=A.filter(Vr,function(Xn){return!!(A.getEffectiveModifierFlags(Xn)&1)}),Ga=Ki.name,ea=Ki.body;if(A.length(pn)&&(Ki=A.factory.updateModuleDeclaration(Ki,Ki.modifiers,Ki.name,ea=A.factory.updateModuleBlock(ea,A.factory.createNodeArray(dt(dt([],Ki.body.statements,!0),[A.factory.createExportDeclaration(void 0,!1,A.factory.createNamedExports(A.map(A.flatMap(pn,function(Xn){return Oi(Xn)}),function(Xn){return A.factory.createExportSpecifier(!1,void 0,Xn)})),void 0)],!1)))),Vr=dt(dt(dt([],Vr.slice(0,On),!0),[Ki],!1),Vr.slice(On+1),!0)),!A.find(Vr,function(Xn){return Xn!==Ki&&A.nodeHasName(Xn,Ga)})){gi=[];var Da=!A.some(ea.statements,function(Xn){return A.hasSyntacticModifier(Xn,1)||A.isExportAssignment(Xn)||A.isExportDeclaration(Xn)});A.forEach(ea.statements,function(Xn){Cs(Xn,Da?1:0)}),Vr=dt(dt([],A.filter(Vr,function(Xn){return Xn!==Ki&&Xn!==Di}),!0),gi,!0)}}return Vr}function Hn(Vr){var Di=A.filter(Vr,function(ga){return A.isExportDeclaration(ga)&&!ga.moduleSpecifier&&!!ga.exportClause&&A.isNamedExports(ga.exportClause)});if(A.length(Di)>1){var On=A.filter(Vr,function(ga){return!A.isExportDeclaration(ga)||!!ga.moduleSpecifier||!ga.exportClause});Vr=dt(dt([],On,!0),[A.factory.createExportDeclaration(void 0,!1,A.factory.createNamedExports(A.flatMap(Di,function(ga){return A.cast(ga.exportClause,A.isNamedExports).elements})),void 0)],!1)}var Ki=A.filter(Vr,function(ga){return A.isExportDeclaration(ga)&&!!ga.moduleSpecifier&&!!ga.exportClause&&A.isNamedExports(ga.exportClause)});if(A.length(Ki)>1){var pn=A.group(Ki,function(ga){return A.isStringLiteral(ga.moduleSpecifier)?">"+ga.moduleSpecifier.text:">"});if(pn.length!==Ki.length)for(var Ga=function(ga){ga.length>1&&(Vr=dt(dt([],A.filter(Vr,function(Ko){return ga.indexOf(Ko)===-1}),!0),[A.factory.createExportDeclaration(void 0,!1,A.factory.createNamedExports(A.flatMap(ga,function(Ko){return A.cast(Ko.exportClause,A.isNamedExports).elements})),ga[0].moduleSpecifier)],!1))},ea=0,Da=pn;ea=0){var On=Vr[Di],Ki=A.mapDefined(On.exportClause.elements,function(pn){if(!pn.propertyName){var Ga=A.indicesOf(Vr),ea=A.filter(Ga,function(Ko){return A.nodeHasName(Vr[Ko],pn.name)});if(A.length(ea)&&A.every(ea,function(Ko){return A.canHaveExportModifier(Vr[Ko])})){for(var Da=0,Xn=ea;Da0&&A.isSingleOrDoubleQuote(Ki.charCodeAt(0))?A.stripQuotes(Ki):Ki}return Di==="default"?Di="_default":Di==="export="&&(Di="_exports"),Di=A.isIdentifierText(Di,N)&&!A.isStringANonContextualKeyword(Di)?Di:"_"+Di.replace(/[^a-zA-Z0-9]/g,"_"),Di}function Ks(Vr,Di){var On=Y(Vr);return Ne.remappedSymbolNames.has(On)?Ne.remappedSymbolNames.get(On):(Di=is(Vr,Di),Ne.remappedSymbolNames.set(On,Di),Di)}}}function ul(n,u,h,D){return h===void 0&&(h=16384),D?w(D).getText():A.usingSingleLineStringWriter(w);function w(R){var $=A.factory.createTypePredicateNode(n.kind===2||n.kind===3?A.factory.createToken(129):void 0,n.kind===1||n.kind===3?A.factory.createIdentifier(n.parameterName):A.factory.createThisTypeNode(),n.type&&Ye.typeToTypeNode(n.type,u,fu(h)|70221824|512)),DA=A.createPrinter({removeComments:!0}),OA=u&&A.getSourceFileOfNode(u);return DA.writeNode(4,$,OA,R),R}}function cf(n){for(var u=[],h=0,D=0;D=0){for(var D=Os.length,w=h;w=0;h--){if(_n(Os[h],cr[h]))return-1;if(Os[h]===n&&cr[h]===u)return h}return-1}function _n(n,u){switch(u){case 0:return!!Tn(n).type;case 5:return!!qi(n).resolvedEnumType;case 2:return!!Tn(n).declaredType;case 1:return!!n.resolvedBaseConstructorType;case 3:return!!n.resolvedReturnType;case 4:return!!n.immediateBaseConstraint;case 6:return!!n.resolvedTypeArguments;case 7:return!!n.baseTypesResolved;case 8:return!!Tn(n).writeType}return A.Debug.assertNever(u)}function Bn(){return Os.pop(),cr.pop(),_s.pop()}function wa(n){return A.findAncestor(A.getRootDeclaration(n),function(u){switch(u.kind){case 257:case 258:case 273:case 272:case 271:case 270:return!1;default:return!0}}).parent}function Wo(n){var u=Hi(Pl(n));return u.typeParameters?qf(u,A.map(u.typeParameters,function(h){return UA})):u}function ya(n,u){var h=mn(n,u);return h?li(h):void 0}function Ul(n,u){var h;return ya(n,u)||((h=_h(n,u))===null||h===void 0?void 0:h.type)||He}function Ha(n){return n&&(n.flags&1)!==0}function $n(n){return n===HA||!!(n.flags&1&&n.aliasSymbol)}function ru(n,u){if(u!==0)return Id(n,!1,u);var h=hi(n);return h&&Tn(h).type||Id(n,!1,u)}function Xc(n,u,h){if(n=El(n,function(yr){return!(yr.flags&98304)}),n.flags&131072)return Mi;if(n.flags&1048576)return ks(n,function(yr){return Xc(yr,u,h)});for(var D=Br(A.map(u,Ih)),w=[],R=[],$=0,DA=co(n);$=2?wX(UA):$s;var $=A.map(D,function(Be){return A.isOmittedExpression(Be)?UA:Mt(Be,u,h)}),DA=A.findLastIndex(D,function(Be){return!(Be===R||A.isOmittedExpression(Be)||Sv(Be))},D.length-1)+1,OA=A.map(D,function(Be,fe){return Be===R?4:fe>=DA?2:1}),WA=tp($,OA);return u&&(WA=b7(WA),WA.pattern=n,WA.objectFlags|=131072),WA}function tn(n,u,h){return u===void 0&&(u=!1),h===void 0&&(h=!1),n.kind===203?Ni(n,u,h):$i(n,u,h)}function wn(n,u){return Io(Id(n,!0,0),n,u)}function ka(n){var u=hi(n),h=gX(!1);return h&&u&&u===h}function Io(n,u,h){return n?(n.flags&4096&&ka(u.parent)&&(n=GX(u)),h&&h9(u,n),n.flags&8192&&(A.isBindingElement(u)||!u.type)&&n.symbol!==hi(u)&&(n=JA),rg(n)):(n=A.isParameter(u)&&u.dotDotDotToken?$s:UA,h&&(Eo(u)||o0(u,n)),n)}function Eo(n){var u=A.getRootDeclaration(n),h=u.kind===166?u.parent:u;return yO(h)}function Go(n){var u=A.getEffectiveTypeAnnotationNode(n);if(u)return Mn(u)}function ic(n){var u=Tn(n);if(!u.type){var h=Zc(n);u.type||(u.type=h)}return u.type}function Zc(n){if(n.flags&4194304)return Wo(n);if(n===we)return UA;if(n.flags&134217728&&n.valueDeclaration){var u=hi(A.getSourceFileOfNode(n.valueDeclaration)),h=Za(u.flags,"exports");h.declarations=u.declarations?u.declarations.slice():[],h.parent=n,h.target=u,u.valueDeclaration&&(h.valueDeclaration=u.valueDeclaration),u.members&&(h.members=new A.Map(u.members)),u.exports&&(h.exports=new A.Map(u.exports));var D=A.createSymbolTable();return D.set("exports",h),Vo(n,D,A.emptyArray,A.emptyArray,A.emptyArray)}A.Debug.assertIsDefined(n.valueDeclaration);var w=n.valueDeclaration;if(A.isCatchClauseVariableDeclarationOrBindingElement(w)){var R=A.getEffectiveTypeAnnotationNode(w);if(R===void 0)return Ze?He:UA;var $=i4(R);return Ha($)||$===He?$:HA}if(A.isSourceFile(w)&&A.isJsonSourceFile(w))return w.statements.length?rg(a0(fa(w.statements[0].expression))):Mi;if(A.isAccessor(w))return Cl(n);if(!ki(n,0))return n.flags&512&&!(n.flags&67108864)?Fs(n):Ht(n);var DA;if(w.kind===274)DA=Io(Go(w)||sc(w.expression),w);else if(A.isBinaryExpression(w)||A.isInJSFile(w)&&(A.isCallExpression(w)||(A.isPropertyAccessExpression(w)||A.isBindableStaticElementAccessExpression(w))&&A.isBinaryExpression(w.parent)))DA=Hg(n);else if(A.isPropertyAccessExpression(w)||A.isElementAccessExpression(w)||A.isIdentifier(w)||A.isStringLiteralLike(w)||A.isNumericLiteral(w)||A.isClassDeclaration(w)||A.isFunctionDeclaration(w)||A.isMethodDeclaration(w)&&!A.isObjectLiteralMethod(w)||A.isMethodSignature(w)||A.isSourceFile(w)){if(n.flags&9136)return Fs(n);DA=A.isBinaryExpression(w.parent)?Hg(n):Go(w)||UA}else if(A.isPropertyAssignment(w))DA=Go(w)||TmA(w);else if(A.isJsxAttribute(w))DA=Go(w)||v0A(w);else if(A.isShorthandPropertyAssignment(w))DA=Go(w)||Gv(w.name,0);else if(A.isObjectLiteralMethod(w))DA=Go(w)||NmA(w,0);else if(A.isParameter(w)||A.isPropertyDeclaration(w)||A.isPropertySignature(w)||A.isVariableDeclaration(w)||A.isBindingElement(w)||A.isJSDocPropertyLikeTag(w))DA=wn(w,!0);else if(A.isEnumDeclaration(w))DA=Fs(n);else if(A.isEnumMember(w))DA=hA(n);else return A.Debug.fail("Unhandled declaration kind! "+A.Debug.formatSyntaxKind(w.kind)+" for "+A.Debug.formatSymbol(n));return Bn()?DA:n.flags&512&&!(n.flags&67108864)?Fs(n):Ht(n)}function ws(n){if(n)switch(n.kind){case 174:var u=A.getEffectiveReturnTypeNode(n);return u;case 175:var h=A.getEffectiveSetAccessorTypeAnnotationNode(n);return h;case 169:A.Debug.assert(A.hasAccessorModifier(n));var D=A.getEffectiveTypeAnnotationNode(n);return D}}function tu(n){var u=ws(n);return u&&Mn(u)}function Ll(n){var u=nAA(n);return u&&u.symbol}function bc(n){return pf(mo(n))}function Cl(n){var u=Tn(n);if(!u.type){if(!ki(n,0))return HA;var h=A.getDeclarationOfKind(n,174),D=A.getDeclarationOfKind(n,175),w=A.tryCast(A.getDeclarationOfKind(n,169),A.isAutoAccessorPropertyDeclaration),R=h&&A.isInJSFile(h)&&MB(h)||tu(h)||tu(D)||tu(w)||h&&h.body&&z9(h)||w&&w.initializer&&wn(w,!0);R||(D&&!yO(D)?uu(Ae,D,A.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,Nn(n)):h&&!yO(h)?uu(Ae,h,A.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,Nn(n)):w&&!yO(w)&&uu(Ae,w,A.Diagnostics.Member_0_implicitly_has_an_1_type,Nn(n),"any"),R=UA),Bn()||(ws(h)?pr(h,A.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,Nn(n)):ws(D)||ws(w)?pr(D,A.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,Nn(n)):h&&Ae&&pr(h,A.Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,Nn(n)),R=UA),u.type=R}return u.type}function Xu(n){var u,h=Tn(n);if(!h.writeType){if(!ki(n,8))return HA;var D=(u=A.getDeclarationOfKind(n,175))!==null&&u!==void 0?u:A.tryCast(A.getDeclarationOfKind(n,169),A.isAutoAccessorPropertyDeclaration),w=tu(D);Bn()||(ws(D)&&pr(D,A.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,Nn(n)),w=UA),h.writeType=w||Cl(n)}return h.writeType}function _E(n){var u=gl(Yu(n));return u.flags&8650752?u:u.flags&2097152?A.find(u.types,function(h){return!!(h.flags&8650752)}):void 0}function Fs(n){var u=Tn(n),h=u;if(!u.type){var D=n.valueDeclaration&&J9(n.valueDeclaration,!1);if(D){var w=B$(n,D);w&&(n=u=w)}h.type=u.type=L(n)}return u.type}function L(n){var u=n.valueDeclaration;if(n.flags&1536&&A.isShorthandAmbientModuleSymbol(n))return UA;if(u&&(u.kind===223||A.isAccessExpression(u)&&u.parent.kind===223))return Hg(n);if(n.flags&512&&u&&A.isSourceFile(u)&&u.commonJsModuleIndicator){var h=_c(n);if(h!==n){if(!ki(n,0))return HA;var D=Pn(n.exports.get("export=")),w=Hg(D,D===h?void 0:h);return Bn()?w:Ht(n)}}var R=Gl(16,n);if(n.flags&32){var $=_E(n);return $?xa([R,$]):R}else return TA&&n.flags&16777216?PB(R):R}function hA(n){var u=Tn(n);return u.type||(u.type=ii(n))}function NA(n){var u=Tn(n);if(!u.type){var h=oi(n),D=n.declarations&&Ud(Ig(n),!0),w=A.firstDefined(D?.declarations,function(R){return A.isExportAssignment(R)?Go(R):void 0});u.type=D?.declarations&&lH(D.declarations)&&n.declarations.length?qQ(D):lH(n.declarations)?Ee:w||(Rn(h)&111551?li(h):HA)}return u.type}function he(n){var u=Tn(n);return u.type||(u.type=Kn(li(u.target),u.mapper))}function Qr(n){var u=Tn(n);return u.writeType||(u.writeType=Kn(Qc(u.target),u.mapper))}function Ht(n){var u=n.valueDeclaration;return A.getEffectiveTypeAnnotationNode(u)?(pr(n.valueDeclaration,A.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,Nn(n)),HA):(Ae&&(u.kind!==166||u.initializer)&&pr(n.valueDeclaration,A.Diagnostics._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,Nn(n)),UA)}function Vi(n){var u=Tn(n);return u.type||(A.Debug.assertIsDefined(u.deferralParent),A.Debug.assertIsDefined(u.deferralConstituents),u.type=u.deferralParent.flags&1048576?Br(u.deferralConstituents):xa(u.deferralConstituents)),u.type}function Ra(n){var u=Tn(n);return!u.writeType&&u.deferralWriteConstituents&&(A.Debug.assertIsDefined(u.deferralParent),A.Debug.assertIsDefined(u.deferralConstituents),u.writeType=u.deferralParent.flags&1048576?Br(u.deferralWriteConstituents):xa(u.deferralWriteConstituents)),u.writeType}function Qc(n){var u=A.getCheckFlags(n);return n.flags&4?u&2?u&65536?Ra(n)||Vi(n):n.writeType||n.type:li(n):n.flags&98304?u&1?Qr(n):Xu(n):li(n)}function li(n){var u=A.getCheckFlags(n);return u&65536?Vi(n):u&1?he(n):u&262144?f7(n):u&8192?_5e(n):n.flags&7?ic(n):n.flags&9136?Fs(n):n.flags&8?hA(n):n.flags&98304?Cl(n):n.flags&2097152?NA(n):HA}function Sg(n){return PD(li(n),!!(n.flags&16777216))}function Zu(n,u){return n!==void 0&&u!==void 0&&(A.getObjectFlags(n)&4)!==0&&n.target===u}function wE(n){return A.getObjectFlags(n)&4?n.target:n}function vE(n,u){return h(n);function h(D){if(A.getObjectFlags(D)&7){var w=wE(D);return w===u||A.some(dc(w),h)}else if(D.flags&2097152)return A.some(D.types,h);return!1}}function zQ(n,u){for(var h=0,D=u;h0)return!0;if(n.flags&8650752){var u=dl(n);return!!u&&am(u)}return!1}function om(n){var u=A.getClassLikeDeclarationOfSymbol(n.symbol);return u&&A.getEffectiveBaseTypeNode(u)}function S1(n,u,h){var D=A.length(u),w=A.isInJSFile(h);return A.filter(ia(n,1),function(R){return(w||D>=Ng(R.typeParameters))&&D<=A.length(R.typeParameters)})}function XQ(n,u,h){var D=S1(n,u,h),w=A.map(u,Mn);return A.sameMap(D,function(R){return A.some(R.typeParameters)?CD(R,w,A.isInJSFile(h)):R})}function gl(n){if(!n.resolvedBaseConstructorType){var u=A.getClassLikeDeclarationOfSymbol(n.symbol),h=u&&A.getEffectiveBaseTypeNode(u),D=om(n);if(!D)return n.resolvedBaseConstructorType=or;if(!ki(n,1))return HA;var w=fa(D.expression);if(h&&D!==h&&(A.Debug.assert(!h.typeArguments),fa(h.expression)),w.flags&2621440&&Bg(w),!Bn())return pr(n.symbol.valueDeclaration,A.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,Nn(n.symbol)),n.resolvedBaseConstructorType=HA;if(!(w.flags&1)&&w!==gt&&!KQ(w)){var R=pr(D.expression,A.Diagnostics.Type_0_is_not_a_constructor_function_type,si(w));if(w.flags&262144){var $=J1(w),DA=He;if($){var OA=ia($,1);OA[0]&&(DA=No(OA[0]))}w.symbol.declarations&&A.addRelatedInfo(R,A.createDiagnosticForNode(w.symbol.declarations[0],A.Diagnostics.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,Nn(w.symbol),si(DA)))}return n.resolvedBaseConstructorType=HA}n.resolvedBaseConstructorType=w}return n.resolvedBaseConstructorType}function nv(n){var u=A.emptyArray;if(n.symbol.declarations)for(var h=0,D=n.symbol.declarations;h=Qe&&OA<=sr){var yr=sr?cC(me,Pg(DA,me.typeParameters,Qe,$)):um(me);yr.typeParameters=n.localTypeParameters,yr.resolvedReturnType=n,yr.flags=w?yr.flags|4:yr.flags&-5,WA.push(yr)}}return WA}function DD(n,u,h,D,w){for(var R=0,$=n;R<$.length;R++){var DA=$[R];if(Z7(DA,u,h,D,w,h?_be:yC))return DA}}function K2(n,u,h){if(u.typeParameters){if(h>0)return;for(var D=1;D1&&(h=h===void 0?D:-1);for(var w=0,R=n[D];w1){var WA=$.thisParameter,Be=A.forEach(DA,function(Dt){return Dt.thisParameter});if(Be){var fe=xa(A.mapDefined(DA,function(Dt){return Dt.thisParameter&&li(Dt.thisParameter)}));WA=A4(Be,fe)}OA=gv($,DA),OA.thisParameter=WA}(u||(u=[])).push(OA)}}}}if(!A.length(u)&&h!==-1){for(var me=n[h!==void 0?h:0],Qe=me.slice(),sr=function(Dt){if(Dt!==me){var $t=Dt[0];if(A.Debug.assert(!!$t,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),Qe=$t.typeParameters&&A.some(Qe,function(Ei){return!!Ei.typeParameters&&!X2($t.typeParameters,Ei.typeParameters)})?void 0:A.map(Qe,function(Ei){return Z2(Ei,$t)}),!Qe)return"break"}},yr=0,At=n;yr=w?n:u,$=R===n?u:n,DA=R===n?D:w,OA=SE(n)||SE(u),WA=OA&&!SE(R),Be=new Array(DA+(WA?1:0)),fe=0;fe=HE(R)&&fe>=HE($),Wr=fe>=D?void 0:Nv(n,fe),ht=fe>=w?void 0:Nv(u,fe),Dt=Wr===ht?Wr:Wr?ht?void 0:Wr:ht,$t=Za(1|(At&&!yr?16777216:0),Dt||"arg".concat(fe));$t.type=yr?el(sr):sr,Be[fe]=$t}if(WA){var Ei=Za(1,"args");Ei.type=el(ap($,DA)),$===u&&(Ei.type=Kn(Ei.type,h)),Be[DA]=Ei}return Be}function Z2(n,u){var h=n.typeParameters||u.typeParameters,D;n.typeParameters&&u.typeParameters&&(D=Ou(u.typeParameters,n.typeParameters));var w=n.declaration,R=g7(n,u,D),$=u7(n.thisParameter,u.thisParameter,D),DA=Math.max(n.minArgumentCount,u.minArgumentCount),OA=$d(w,h,$,R,void 0,void 0,DA,(n.flags|u.flags)&39);return OA.compositeKind=1048576,OA.compositeSignatures=A.concatenate(n.compositeKind!==2097152&&n.compositeSignatures||[n],[u]),D&&(OA.mapper=n.compositeKind!==2097152&&n.mapper&&n.compositeSignatures?uQ(n.mapper,D):D),OA}function $2(n){var u=Vs(n[0]);if(u){for(var h=[],D=function(DA){var OA=DA.keyType;A.every(n,function(WA){return!!hg(WA,OA)})&&h.push(Al(OA,Br(A.map(n,function(WA){return Lu(WA,OA)})),A.some(n,function(WA){return hg(WA,OA).isReadonly})))},w=0,R=u;w0}),h=A.map(n,am);if(u>0&&u===A.countWhere(h,function(w){return w})){var D=h.indexOf(!0);h[D]=!1}return h}function AC(n,u,h,D){for(var w=[],R=0;R0&&(fe=A.map(fe,function(me){var Qe=um(me);return Qe.resolvedReturnType=AC(No(me),w,R,WA),Qe})),h=Ev(h,fe)}u=Ev(u,ia(Be,0)),D=A.reduceLeft(Vs(Be),function(me,Qe){return G1(me,Qe,!1)},D)},OA=0;OA2?(it.checkFlags|=65536,it.deferralParent=n,it.deferralConstituents=Ca,it.deferralWriteConstituents=Sa):(it.type=OA?Br(Ca):xa(Ca),Sa&&(it.writeType=OA?Br(Sa):xa(Sa))),it}}function pt(n,u,h){var D,w,R=!((D=n.propertyCacheWithoutObjectFunctionPropertyAugment)===null||D===void 0)&&D.get(u)||!h?(w=n.propertyCache)===null||w===void 0?void 0:w.get(u):void 0;if(!R&&(R=gr(n,u,h),R)){var $=h?n.propertyCacheWithoutObjectFunctionPropertyAugment||(n.propertyCacheWithoutObjectFunctionPropertyAugment=A.createSymbolTable()):n.propertyCache||(n.propertyCache=A.createSymbolTable());$.set(u,R)}return R}function Ci(n){for(var u,h=function(DA){if(!DA.declarations)return{value:void 0};if(!u)return u=new A.Set(DA.declarations),"continue";if(u.forEach(function(OA){A.contains(DA.declarations,OA)||u.delete(OA)}),u.size===0)return{value:void 0}},D=0,w=n;D=0),h>=HE(u,3)}var D=A.getImmediatelyInvokedFunctionExpression(n.parent);return D?!n.type&&!n.dotDotDotToken&&n.parent.parameters.indexOf(n)>=D.arguments.length:!1}function wv(n){return A.isPropertyDeclaration(n)&&!A.hasAccessorModifier(n)&&n.questionToken}function yD(n){if(!A.isJSDocPropertyLikeTag(n))return!1;var u=n.isBracketed,h=n.typeExpression;return u||!!h&&h.type.kind===319}function j1(n,u,h,D){return{kind:n,parameterName:u,parameterIndex:h,type:D}}function Ng(n){var u=0;if(n)for(var h=0;h=h&&R<=w){for(var $=n?n.slice():[],DA=R;DADA.arguments.length&&!Qe||df(fe);yr||(w=h.length)}if((n.kind===174||n.kind===175)&&iQ(n)&&(!$||!R)){var At=n.kind===174?175:174,Wr=A.getDeclarationOfKind(hi(n),At);Wr&&(R=Ll(Wr))}var ht=n.kind===173?Yu(Pn(n.parent.symbol)):void 0,Dt=ht?ht.localTypeParameters:L1(n);(A.hasRestParameter(n)||A.isInJSFile(n)&&vv(n,h))&&(D|=1),(A.isConstructorTypeNode(n)&&A.hasSyntacticModifier(n,256)||A.isConstructorDeclaration(n)&&A.hasSyntacticModifier(n.parent,256))&&(D|=4),u.resolvedSignature=$d(n,Dt,R,h,void 0,void 0,w,D)}return u.resolvedSignature}function vv(n,u){if(A.isJSDocSignature(n)||!Oc(n))return!1;var h=A.lastOrUndefined(n.parameters),D=h?A.getJSDocParameterTags(h):A.getJSDocTags(n).filter(A.isJSDocParameterTag),w=A.firstDefined(D,function($){return $.typeExpression&&A.isJSDocVariadicType($.typeExpression.type)?$.typeExpression.type:void 0}),R=Za(3,"args",32768);return w?R.type=el(Mn(w.type)):(R.checkFlags|=65536,R.deferralParent=XA,R.deferralConstituents=[$s],R.deferralWriteConstituents=[$s]),w&&u.pop(),u.push(R),!0}function Gg(n){if(A.isInJSFile(n)&&A.isFunctionLikeDeclaration(n)){var u=A.getJSDocTypeTag(n);return u?.typeExpression&&r4(Mn(u.typeExpression))}}function sC(n,u){var h=Gg(n);if(h){var D=n.parameters.indexOf(u);return u.dotDotDotToken?GC(h,D):ap(h,D)}}function eX(n){var u=Gg(n);return u&&No(u)}function Oc(n){var u=qi(n);return u.containsArgumentsReference===void 0&&(u.flags&8192?u.containsArgumentsReference=!0:u.containsArgumentsReference=h(n.body)),u.containsArgumentsReference;function h(D){if(!D)return!1;switch(D.kind){case 79:return D.escapedText===PA.escapedName&&SO(D)===PA;case 169:case 171:case 174:case 175:return D.name.kind===164&&h(D.name);case 208:case 209:return h(D.expression);case 299:return h(D.initializer);default:return!A.nodeStartsNewLexicalEnvironment(D)&&!A.isPartOfTypeNode(D)&&!!A.forEachChild(D,h)}}}function vh(n){if(!n||!n.declarations)return A.emptyArray;for(var u=[],h=0;h0&&D.body){var w=n.declarations[h-1];if(D.parent===w.parent&&D.kind===w.kind&&D.pos===w.end)continue}u.push(!A.isFunctionExpressionOrArrowFunction(D)&&!A.isObjectLiteralMethod(D)&&Gg(D)||mo(D))}}return u}function _7(n){var u=hc(n,n);if(u){var h=_c(u);if(h)return li(h)}return UA}function pf(n){if(n.thisParameter)return li(n.thisParameter)}function Yg(n){if(!n.resolvedTypePredicate){if(n.target){var u=Yg(n.target);n.resolvedTypePredicate=u?ube(u,n.mapper):Bs}else if(n.compositeSignatures)n.resolvedTypePredicate=vt(n.compositeSignatures,n.compositeKind)||Bs;else{var h=n.declaration&&A.getEffectiveReturnTypeNode(n.declaration),D=void 0;if(!h){var w=Gg(n.declaration);w&&n!==w&&(D=Yg(w))}n.resolvedTypePredicate=h&&A.isTypePredicateNode(h)?rX(h,n):D||Bs}A.Debug.assert(!!n.resolvedTypePredicate)}return n.resolvedTypePredicate===Bs?void 0:n.resolvedTypePredicate}function rX(n,u){var h=n.parameterName,D=n.type&&Mn(n.type);return h.kind===194?j1(n.assertsModifier?2:0,void 0,void 0,D):j1(n.assertsModifier?3:1,h.escapedText,A.findIndex(u.parameters,function(w){return w.escapedName===h.escapedText}),D)}function Qx(n,u,h){return u!==2097152?Br(n,h):xa(n)}function No(n){if(!n.resolvedReturnType){if(!ki(n,3))return HA;var u=n.target?Kn(No(n.target),n.mapper):n.compositeSignatures?Kn(Qx(A.map(n.compositeSignatures,No),n.compositeKind,2),n.mapper):fm(n.declaration)||(A.nodeIsMissing(n.declaration.body)?UA:z9(n.declaration));if(n.flags&8?u=wQA(u):n.flags&16&&(u=PB(u)),!Bn()){if(n.declaration){var h=A.getEffectiveReturnTypeNode(n.declaration);if(h)pr(h,A.Diagnostics.Return_type_annotation_circularly_references_itself);else if(Ae){var D=n.declaration,w=A.getNameOfDeclaration(D);w?pr(w,A.Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,A.declarationNameToString(w)):pr(D,A.Diagnostics.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}u=UA}n.resolvedReturnType=u}return n.resolvedReturnType}function fm(n){if(n.kind===173)return Yu(Pn(n.parent.symbol));if(A.isJSDocConstructSignature(n))return Mn(n.parameters[0].type);var u=A.getEffectiveReturnTypeNode(n);if(u)return Mn(u);if(n.kind===174&&iQ(n)){var h=A.isInJSFile(n)&&MB(n);if(h)return h;var D=A.getDeclarationOfKind(hi(n),175),w=tu(D);if(w)return w}return eX(n)}function w7(n){return!n.resolvedReturnType&&sn(n,3)>=0}function tX(n){return mx(n)||UA}function mx(n){if(BA(n)){var u=li(n.parameters[n.parameters.length-1]),h=$a(u)?OC(u):u;return h&&Lu(h,Et)}}function CD(n,u,h,D){var w=v7(n,Pg(u,n.typeParameters,Ng(n.typeParameters),h));if(D){var R=X0A(No(w));if(R){var $=um(R);$.typeParameters=D;var DA=um(w);return DA.resolvedReturnType=W1($),DA}}return w}function v7(n,u){var h=n.instantiations||(n.instantiations=new A.Map),D=eg(u),w=h.get(D);return w||h.set(D,w=cC(n,u)),w}function cC(n,u){return RD(n,iX(n,u),!0)}function iX(n,u){return Ou(n.typeParameters,u)}function ID(n){return n.typeParameters?n.erasedSignatureCache||(n.erasedSignatureCache=y7(n)):n}function y7(n){return RD(n,XhA(n.typeParameters),!0)}function nX(n){return n.typeParameters?n.canonicalSignatureCache||(n.canonicalSignatureCache=C7(n)):n}function C7(n){return CD(n,A.map(n.typeParameters,function(u){return u.target&&!$c(u.target)?u.target:u}),A.isInJSFile(n.declaration))}function aX(n){var u=n.typeParameters;if(u){if(n.baseSignatureCache)return n.baseSignatureCache;for(var h=XhA(u),D=Ou(u,A.map(u,function($){return $c($)||He})),w=A.map(u,function($){return Kn($,D)||He}),R=0;R1&&(u+=":"+R),D+=R}return u}function Bm(n,u){return n?"@".concat(Y(n))+(u?":".concat(eg(u)):""):""}function gC(n,u){for(var h=0,D=0,w=n;DD.length)){var OA=$&&A.isExpressionWithTypeArguments(n)&&!A.isJSDocAugmentsTag(n.parent),WA=R===D.length?OA?A.Diagnostics.Expected_0_type_arguments_provide_these_with_an_extends_tag:A.Diagnostics.Generic_type_0_requires_1_type_argument_s:OA?A.Diagnostics.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:A.Diagnostics.Generic_type_0_requires_between_1_and_2_type_arguments,Be=si(h,void 0,2);if(pr(n,WA,Be,R,D.length),!$)return HA}if(n.kind===180&&Yx(n,A.length(n.typeArguments)!==D.length))return dC(h,n,void 0);var fe=A.concatenate(h.outerTypeParameters,Pg(fC(n),D,R,$));return qf(h,fe)}return yh(n,u)?h:HA}function hm(n,u,h,D){var w=Hi(n);if(w===Pe&&pA.has(n.escapedName)&&u&&u.length===1)return V1(n,u[0]);var R=Tn(n),$=R.typeParameters,DA=eg(u)+Bm(h,D),OA=R.instantiations.get(DA);return OA||R.instantiations.set(DA,OA=AQA(w,Ou($,Pg(u,$,Ng($),A.isInJSFile(n.valueDeclaration))),h,D)),OA}function bD(n,u){if(A.getCheckFlags(u)&1048576){var h=fC(n),D=Bm(u,h),w=Te.get(D);return w||(w=so(1,"error"),w.aliasSymbol=u,w.aliasTypeArguments=h,Te.set(D,w)),w}var R=Hi(u),$=Tn(u).typeParameters;if($){var DA=A.length(n.typeArguments),OA=Ng($);if(DA$.length)return pr(n,OA===$.length?A.Diagnostics.Generic_type_0_requires_1_type_argument_s:A.Diagnostics.Generic_type_0_requires_between_1_and_2_type_arguments,Nn(u),OA,$.length),HA;var WA=K1(n),Be=WA&&(Cx(u)||!Cx(WA))?WA:void 0;return hm(u,fC(n),Be,SD(Be))}return yh(n,u)?R:HA}function Cx(n){var u,h=(u=n.declarations)===null||u===void 0?void 0:u.find(A.isTypeAlias);return!!(h&&A.getContainingFunction(h))}function oX(n){switch(n.kind){case 180:return n.typeName;case 230:var u=n.expression;if(A.isEntityNameExpression(u))return u}}function Ix(n){return n.parent?"".concat(Ix(n.parent),".").concat(n.escapedName):n.escapedName}function pC(n){var u=n.kind===163?n.right:n.kind===208?n.name:n,h=u.escapedText;if(h){var D=n.kind===163?pC(n.left):n.kind===208?pC(n.expression):void 0,w=D?"".concat(Ix(D),".").concat(h):h,R=te.get(w);return R||(te.set(w,R=Za(524288,h,1048576)),R.parent=D,R.declaredType=pe),R}return Ar}function q1(n,u,h){var D=oX(n);if(!D)return Ar;var w=Ss(D,u,h);return w&&w!==Ar?w:h?Ar:pC(D)}function yv(n,u){if(u===Ar)return HA;if(u=rd(u)||u,u.flags&96)return yx(n,u);if(u.flags&524288)return bD(n,u);var h=ua(u);if(h)return yh(n,u)?bu(h):HA;if(u.flags&111551&&EC(n)){var D=bx(n,u);return D||(q1(n,788968),li(u))}return HA}function bx(n,u){var h=qi(n);if(!h.resolvedJSDocType){var D=li(u),w=D;if(u.valueDeclaration){var R=n.kind===202&&n.qualifier;D.symbol&&D.symbol!==u&&R&&(w=yv(n,D.symbol))}h.resolvedJSDocType=w}return h.resolvedJSDocType}function O7(n,u){if(u.flags&3||u===n||!z1(n)&&!z1(u))return n;var h="".concat(rl(n),">").concat(rl(u)),D=Or.get(h);if(D)return D;var w=Au(33554432);return w.baseType=n,w.constraint=u,Or.set(h,w),w}function M7(n){return xa([n.constraint,n.baseType])}function Ox(n){return n.kind===186&&n.elements.length===1}function Mx(n,u,h){return Ox(u)&&Ox(h)?Mx(n,u.elements[0],h.elements[0]):oQ(Mn(u))===oQ(n)?Mn(h):void 0}function sX(n,u){for(var h,D=!0;u&&!A.isStatement(u)&&u.kind!==323;){var w=u.parent;if(w.kind===166&&(D=!D),(D||n.flags&8650752)&&w.kind===191&&u===w.trueType){var R=Mx(n,w.checkType,w.extendsType);R&&(h=A.append(h,R))}else if(n.flags&262144&&w.kind===197&&u===w.type){var $=Mn(w);if(Eg($)===oQ(n)){var DA=t9($);if(DA){var R=$c(DA);R&&hf(R,Dm)&&(h=A.append(h,Br([Et,Ir])))}}}u=w}return h?O7(n,xa(h)):n}function EC(n){return!!(n.flags&8388608)&&(n.kind===180||n.kind===202)}function yh(n,u){return n.typeArguments?(pr(n,A.Diagnostics.Type_0_is_not_generic,u?Nn(u):n.typeName?A.declarationNameToString(n.typeName):t),!1):!0}function kx(n){if(A.isIdentifier(n.typeName)){var u=n.typeArguments;switch(n.typeName.escapedText){case"String":return yh(n),Pr;case"Number":return yh(n),Et;case"Boolean":return yh(n),Xr;case"Void":return yh(n),Ve;case"Undefined":return yh(n),or;case"Null":return yh(n),Lr;case"Function":case"function":return yh(n),Tt;case"array":return(!u||!u.length)&&!Ae?$s:void 0;case"promise":return(!u||!u.length)&&!Ae?hO(UA):void 0;case"Object":if(u&&u.length===2){if(A.isJSDocIndexSignature(n)){var h=Mn(u[0]),D=Mn(u[1]),w=h===Pr||h===Et?[Al(h,D,!1)]:A.emptyArray;return Vo(void 0,RA,A.emptyArray,A.emptyArray,w)}return UA}return yh(n),Ae?void 0:UA}}}function cX(n){var u=Mn(n.type);return TA?d9(u,65536):u}function Cv(n){var u=qi(n);if(!u.resolvedType){if(A.isConstTypeReference(n)&&A.isAssertionExpression(n.parent))return u.resolvedSymbol=Ar,u.resolvedType=sc(n.parent.expression);var h=void 0,D=void 0,w=788968;EC(n)&&(D=kx(n),D||(h=q1(n,w,!0),h===Ar?h=q1(n,w|111551):q1(n,w),D=yv(n,h))),D||(h=q1(n,w),D=yv(n,h)),u.resolvedSymbol=h,u.resolvedType=D}return u.resolvedType}function fC(n){return A.map(n.typeArguments,Mn)}function xx(n){var u=qi(n);if(!u.resolvedType){var h=hmA(n);u.resolvedType=bu(rg(h))}return u.resolvedType}function Hx(n,u){function h(w){var R=w.declarations;if(R)for(var $=0,DA=R;$=0)return ip(A.map(u,function(Wr,ht){return n.elementFlags[ht]&8?Wr:He}))?ks(u[R],function(Wr){return Lx(n,A.replaceElement(u,R,Wr))}):HA}for(var $=[],DA=[],OA=[],WA=-1,Be=-1,fe=-1,me=function(Wr){var ht=u[Wr],Dt=n.elementFlags[Wr];if(Dt&8)if(ht.flags&58982400||nu(ht))At(ht,8,(h=n.labeledElementDeclarations)===null||h===void 0?void 0:h[Wr]);else if($a(ht)){var $t=Po(ht);if($t.length+$.length>=1e4)return pr(ue,A.isPartOfTypeNode(ue)?A.Diagnostics.Type_produces_a_tuple_type_that_is_too_large_to_represent:A.Diagnostics.Expression_produces_a_tuple_type_that_is_too_large_to_represent),{value:HA};A.forEach($t,function(Ei,rn){var Fi;return At(Ei,ht.target.elementFlags[rn],(Fi=ht.target.labeledElementDeclarations)===null||Fi===void 0?void 0:Fi[rn])})}else At(dQ(ht)&&Lu(ht,Et)||HA,4,(D=n.labeledElementDeclarations)===null||D===void 0?void 0:D[Wr]);else At(ht,Dt,(w=n.labeledElementDeclarations)===null||w===void 0?void 0:w[Wr])},Qe=0;Qe=0&&BeD.fixedLength?i5e(n)||tp(A.emptyArray):tp(Po(n).slice(u,w),D.elementFlags.slice(u,w),!1,D.labeledElementDeclarations&&D.labeledElementDeclarations.slice(u,w))}function jx(n){return Br(A.append(A.arrayOf(n.target.fixedLength,function(u){return id(""+u)}),OE(n.target.readonly?Vn:ra)))}function Wx(n,u){var h=A.findIndex(n.elementFlags,function(D){return!(D&u)});return h>=0?h:n.elementFlags.length}function DC(n,u){return n.elementFlags.length-A.findLastIndex(n.elementFlags,function(h){return!(h&u)})-1}function IX(n){return tc(Mn(n.type),!0)}function rl(n){return n.id}function ff(n,u){return A.binarySearch(n,u,rl,A.compareValues)>=0}function U7(n,u){var h=A.binarySearch(n,u,rl,A.compareValues);return h<0?(n.splice(~h,0,u),!0):!1}function bX(n,u,h){var D=h.flags;if(D&1048576)return Jx(n,u|(zA(h)?1048576:0),h.types);if(!(D&131072))if(u|=D&205258751,D&465829888&&(u|=33554432),h===de&&(u|=8388608),!TA&&D&98304)A.getObjectFlags(h)&65536||(u|=4194304);else{var w=n.length,R=w&&h.id>n[w-1].id?~w:A.binarySearch(n,h,rl,A.compareValues);R<0&&n.splice(~R,0,h)}return u}function Jx(n,u,h){for(var D=0,w=h;D0;){$--;var OA=n[$];if(w||OA.flags&469499904)for(var WA=OA.flags&61603840?A.find(co(OA),function(At){return np(li(At))}):void 0,Be=WA&&bu(li(WA)),fe=0,me=n;fe1e6){A.tracing===null||A.tracing===void 0||A.tracing.instant("checkTypes","removeSubtypes_DepthLimit",{typeIds:n.map(function(At){return At.id})}),pr(ue,A.Diagnostics.Expression_produces_a_union_type_that_is_too_complex_to_represent);return}}if(DA++,WA&&Qe.flags&61603840){var yr=ya(Qe,WA.escapedName);if(yr&&np(yr)&&bu(yr)!==Be)continue}if(Bf(OA,Qe,Dn)&&(!(A.getObjectFlags(wE(OA))&1)||!(A.getObjectFlags(wE(Qe))&1)||Z1(OA,Qe))){A.orderedRemoveItemAt(n,$);break}}}}return tr.set(h,n),n}function j(n,u,h){for(var D=n.length;D>0;){D--;var w=n[D],R=w.flags,$=R&402653312&&u&4||R&256&&u&8||R&2048&&u&64||R&8192&&u&4096||h&&R&32768&&u&16384||t0(w)&&ff(n,w.regularType);$&&A.orderedRemoveItemAt(n,D)}}function dA(n){var u=A.filter(n,HD);if(u.length)for(var h=n.length,D=function(){h--;var w=n[h];w.flags&128&&A.some(u,function(R){return wZ(w,R)})&&A.orderedRemoveItemAt(n,h)};h>0;)D()}function zA(n){return!!(n.flags&1048576&&(n.aliasSymbol||n.origin))}function Fe(n,u){for(var h=0,D=u;h=0&&ff(R,or)&&A.orderedRemoveItemAt(R,DA)}if(($&402664320||$&16384&&$&32768)&&j(R,$,!!(u&2)),$&128&&$&134217728&&dA(R),u===2&&(R=OX(R,!!($&524288)),!R))return HA;if(R.length===0)return $&65536?$&4194304?Lr:gt:$&32768?$&4194304?or:Mr:XA}if(!w&&$&1048576){var OA=[];Fe(OA,n);for(var WA=[],Be=function(ht){A.some(OA,function(Dt){return ff(Dt.types,ht)})||WA.push(ht)},fe=0,me=R;fe0;){h--;var D=n[h],w=D.flags&4&&u&402653312||D.flags&8&&u&256||D.flags&64&&u&2048||D.flags&4096&&u&8192||D.flags&16384&&u&32768||n0(D)&&u&470302716;w&&A.orderedRemoveItemAt(n,h)}}function Do(n,u){for(var h=0,D=n;h0;){u--;var D=n[u];if(D.flags&134217728)for(var w=0,R=h;wCh($)?wr(2097152,$):void 0;OA=Br(Be,1,u,h,fe)}else OA=pc($,u,h);er.set(DA,OA)}return OA}function Pp(n){return A.reduceLeft(n,function(u,h){return h.flags&1048576?u*h.types.length:h.flags&131072?0:u},1)}function ip(n){var u=Pp(n);return u>=1e5?(A.tracing===null||A.tracing===void 0||A.tracing.instant("checkTypes","checkCrossProductUnion_DepthLimit",{typeIds:n.map(function(h){return h.id}),size:u}),pr(ue,A.Diagnostics.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1):!0}function Qg(n){for(var u=Pp(n),h=[],D=0;D=0;$--)if(n[$].flags&1048576){var DA=n[$].types,OA=DA.length;w[$]=DA[R%OA],R=Math.floor(R/OA)}var WA=xa(w);WA.flags&131072||h.push(WA)}return h}function RB(n){return!(n.flags&3145728)||n.aliasSymbol?1:n.flags&1048576&&n.origin?RB(n.origin):Ch(n.types)}function Ch(n){return A.reduceLeft(n,function(u,h){return u+RB(h)},0)}function qx(n){var u=qi(n);if(!u.resolvedType){var h=K1(n),D=A.map(n.types,Mn),w=D.length===2&&!!(D[0].flags&76)&&D[1]===Wn;u.resolvedType=xa(D,h,SD(h),w)}return u.resolvedType}function MhA(n,u){var h=Au(4194304);return h.type=n,h.stringsOnly=u,h}function HIe(n){var u=zu(4194304);return u.type=n,u}function khA(n,u){return u?n.resolvedStringIndexType||(n.resolvedStringIndexType=MhA(n,!0)):n.resolvedIndexType||(n.resolvedIndexType=MhA(n,!1))}function SIe(n,u,h){var D=Eg(n),w=Rg(n),R=yE(n.target||n);if(!R&&!h)return w;var $=[];if($Q(n)){if(nQ(w))return khA(n,u);var DA=vA(SB(n));U1(DA,8576,u,WA)}else vm(Y1(w),WA);nQ(w)&&vm(w,WA);var OA=h?El(Br($),function(Be){return!(Be.flags&5)}):Br($);if(OA.flags&1048576&&w.flags&1048576&&eg(OA.types)===eg(w.types))return w;return OA;function WA(Be){var fe=R?Kn(R,vC(n.mapper,D,Be)):Be;$.push(fe===Pr?Jr:fe)}}function FIe(n){var u=Eg(n);return h(yE(n)||u);function h(D){return D.flags&68157439?!0:D.flags&16777216?D.root.isDistributive&&D.checkType===u:D.flags&137363456?A.every(D.types,h):D.flags&8388608?h(D.objectType)&&h(D.indexType):D.flags&33554432?h(D.baseType)&&h(D.constraint):D.flags&268435456?h(D.type):!1}}function Ih(n){return A.isPrivateIdentifier(n)?XA:A.isIdentifier(n)?id(A.unescapeLeadingUnderscores(n.escapedText)):bu(A.isComputedPropertyName(n)?YB(n):fa(n))}function bv(n,u,h){if(h||!(A.getDeclarationModifierFlagsFromSymbol(n)&24)){var D=Tn(lm(n)).nameType;if(!D){var w=A.getNameOfDeclaration(n.valueDeclaration);D=n.escapedName==="default"?id("default"):w&&Ih(w)||(A.isKnownSymbol(n)?void 0:id(A.symbolName(n)))}if(D&&D.flags&u)return D}return XA}function xhA(n,u){return!!(n.flags&u||n.flags&2097152&&A.some(n.types,function(h){return xhA(h,u)}))}function RIe(n,u,h){var D=h&&(A.getObjectFlags(n)&7||n.aliasSymbol)?HIe(n):void 0,w=A.map(co(n),function($){return bv($,u)}),R=A.map(Vs(n),function($){return $!==Lt&&xhA($.keyType,u)?$.keyType===Pr&&u&8?Jr:$.keyType:XA});return Br(A.concatenate(w,R),1,void 0,void 0,D)}function TIe(n){var u=Qbe(n);return Wi(u)!==u}function HhA(n){return!!(n.flags&58982400||kv(n)||nu(n)&&!FIe(n)||n.flags&1048576&&A.some(n.types,TIe)||n.flags&2097152&&Rs(n,465829888)&&A.some(n.types,n0))}function OE(n,u,h){return u===void 0&&(u=Cr),n=Wi(n),HhA(n)?khA(n,u):n.flags&1048576?xa(A.map(n.types,function(D){return OE(D,u,h)})):n.flags&2097152?Br(A.map(n.types,function(D){return OE(D,u,h)})):A.getObjectFlags(n)&32?SIe(n,u,h):n===de?de:n.flags&2?XA:n.flags&131073?rt:RIe(n,(h?128:402653316)|(u?0:12584),u===Cr&&!h)}function ShA(n){if(Cr)return n;var u=R7();return u?hm(u,[n,Pr]):Pr}function NIe(n){var u=ShA(OE(n));return u.flags&131072?Pr:u}function PIe(n){var u=qi(n);if(!u.resolvedType)switch(n.operator){case 141:u.resolvedType=OE(Mn(n.type));break;case 156:u.resolvedType=n.type.kind===153?GX(A.walkUpParenthesizedTypes(n.parent)):HA;break;case 146:u.resolvedType=Mn(n.type);break;default:throw A.Debug.assertNever(n.operator)}return u.resolvedType}function GIe(n){var u=qi(n);return u.resolvedType||(u.resolvedType=Qm(dt([n.head.text],A.map(n.templateSpans,function(h){return h.literal.text}),!0),A.map(n.templateSpans,function(h){return Mn(h.type)}))),u.resolvedType}function Qm(n,u){var h=A.findIndex(u,function(WA){return!!(WA.flags&1179648)});if(h>=0)return ip(u)?ks(u[h],function(WA){return Qm(n,A.replaceElement(u,h,WA))}):HA;if(A.contains(u,de))return de;var D=[],w=[],R=n[0];if(!OA(n,u))return Pr;if(D.length===0)return id(R);if(w.push(R),A.every(w,function(WA){return WA===""})){if(A.every(D,function(WA){return!!(WA.flags&4)}))return Pr;if(D.length===1&&HD(D[0]))return D[0]}var $="".concat(eg(D),"|").concat(A.map(w,function(WA){return WA.length}).join(","),"|").concat(w.join("")),DA=Ge.get($);return DA||Ge.set($,DA=UIe(w,D)),DA;function OA(WA,Be){for(var fe=A.isArray(WA),me=0;me=0)return Ei(hg(u,Et)),ks(u,function(rn){var Fi=OC(rn)||or;return R&1?Br([Fi,or]):Fi})}}if(!(h.flags&98304)&&Mc(h,402665900)){if(u.flags&131073)return u;var sr=Em(u,h)||hg(u,Pr);if(sr){if(R&2&&sr.keyType!==Et){DA&&pr(DA,A.Diagnostics.Type_0_cannot_be_used_to_index_type_1,si(h),si(n));return}if(w&&sr.keyType===Pr&&!Mc(h,12)){var Qe=xX(w);return pr(Qe,A.Diagnostics.Type_0_cannot_be_used_as_an_index_type,si(h)),R&1?Br([sr.type,or]):sr.type}return Ei(sr),R&1&&!(u.symbol&&u.symbol.flags&384&&h.symbol&&h.flags&1024&&Pl(h.symbol)===u.symbol)?Br([sr.type,or]):sr.type}if(h.flags&131072)return XA;if(_C(u))return UA;if(DA&&!w$(u)){if(s0(u)){if(Ae&&h.flags&384)return xA.add(A.createDiagnosticForNode(DA,A.Diagnostics.Property_0_does_not_exist_on_type_1,h.value,si(u))),or;if(h.flags&12){var yr=A.map(u.properties,function(rn){return li(rn)});return Br(A.append(yr,or))}}if(u.symbol===xr&&OA!==void 0&&xr.exports.has(OA)&&xr.exports.get(OA).flags&418)pr(DA,A.Diagnostics.Property_0_does_not_exist_on_type_1,A.unescapeLeadingUnderscores(OA),si(u));else if(Ae&&!tA.suppressImplicitAnyIndexErrors&&!(R&128))if(OA!==void 0&&L0A(OA,u)){var At=si(u);pr(DA,A.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,OA,At,At+"["+A.getTextOfNode(DA.argumentExpression)+"]")}else if(Lu(u,Et))pr(DA.argumentExpression,A.Diagnostics.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{var Wr=void 0;if(OA!==void 0&&(Wr=a$(OA,u)))Wr!==void 0&&pr(DA.argumentExpression,A.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,OA,si(u),Wr);else{var ht=F7e(u,DA,h);if(ht!==void 0)pr(DA,A.Diagnostics.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,si(u),ht);else{var Dt=void 0;if(h.flags&1024)Dt=A.chainDiagnosticMessages(void 0,A.Diagnostics.Property_0_does_not_exist_on_type_1,"["+si(h)+"]",si(u));else if(h.flags&8192){var $t=Nl(h.symbol,DA);Dt=A.chainDiagnosticMessages(void 0,A.Diagnostics.Property_0_does_not_exist_on_type_1,"["+$t+"]",si(u))}else h.flags&128||h.flags&256?Dt=A.chainDiagnosticMessages(void 0,A.Diagnostics.Property_0_does_not_exist_on_type_1,h.value,si(u)):h.flags&12&&(Dt=A.chainDiagnosticMessages(void 0,A.Diagnostics.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,si(h),si(u)));Dt=A.chainDiagnosticMessages(Dt,A.Diagnostics.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,si(D),si(u)),xA.add(A.createDiagnosticForNodeFromMessageChain(DA,Dt))}}}return}}if(_C(u))return UA;if(w){var Qe=xX(w);h.flags&384?pr(Qe,A.Diagnostics.Property_0_does_not_exist_on_type_1,""+h.value,si(u)):h.flags&12?pr(Qe,A.Diagnostics.Type_0_has_no_matching_index_signature_for_type_1,si(u),si(h)):pr(Qe,A.Diagnostics.Type_0_cannot_be_used_as_an_index_type,si(h))}if(Ha(h))return h;return;function Ei(rn){rn&&rn.isReadonly&&DA&&(A.isAssignmentTarget(DA)||A.isDeleteTarget(DA))&&pr(DA,A.Diagnostics.Index_signature_in_type_0_only_permits_reading,si(u))}}function xX(n){return n.kind===209?n.argumentExpression:n.kind===196?n.indexType:n.kind===164?n.expression:n}function Vx(n){return!!(n.flags&77)||HD(n)}function HD(n){return!!(n.flags&134217728)&&A.every(n.types,Vx)||!!(n.flags&268435456)&&Vx(n.type)}function z1(n){return!!wC(n)}function e0(n){return!!(wC(n)&4194304)}function nQ(n){return!!(wC(n)&8388608)}function wC(n){return n.flags&3145728?(n.objectFlags&2097152||(n.objectFlags|=2097152|A.reduceLeft(n.types,function(u,h){return u|wC(h)},0)),n.objectFlags&12582912):n.flags&33554432?(n.objectFlags&2097152||(n.objectFlags|=2097152|wC(n.baseType)|wC(n.constraint)),n.objectFlags&12582912):(n.flags&58982400||nu(n)||kv(n)?4194304:0)|(n.flags&465829888&&!HD(n)?8388608:0)}function TB(n,u){return n.flags&8388608?qIe(n,u):n.flags&16777216?VIe(n,u):n}function NhA(n,u,h){if(n.flags&1048576||n.flags&2097152&&!HhA(n)){var D=A.map(n.types,function(w){return TB(ju(w,u),h)});return n.flags&2097152||h?xa(D):Br(D)}}function JIe(n,u,h){if(u.flags&1048576){var D=A.map(u.types,function(w){return TB(ju(n,w),h)});return h?xa(D):Br(D)}}function qIe(n,u){var h=u?"simplifiedForWriting":"simplifiedForReading";if(n[h])return n[h]===wi?n:n[h];n[h]=wi;var D=TB(n.objectType,u),w=TB(n.indexType,u),R=JIe(D,w,u);if(R)return n[h]=R;if(!(w.flags&465829888)){var $=NhA(D,w,u);if($)return n[h]=$}if(kv(D)&&w.flags&296){var DA=g9(D,w.flags&8?0:D.target.fixedLength,0,u);if(DA)return n[h]=DA}if(nu(D)){var OA=yE(D);if(!OA||uo(OA,Eg(D)))return n[h]=ks(zx(D,n.indexType),function(WA){return TB(WA,u)})}return n[h]=n}function VIe(n,u){var h=n.checkType,D=n.extendsType,w=sQ(n),R=cQ(n);if(R.flags&131072&&oQ(w)===oQ(h)){if(h.flags&1||uo(mm(h),mm(D)))return TB(w,u);if(PhA(h,D))return XA}else if(w.flags&131072&&oQ(R)===oQ(h)){if(!(h.flags&1)&&uo(mm(h),mm(D)))return XA;if(h.flags&1||PhA(h,D))return TB(R,u)}return n}function PhA(n,u){return!!(Br([HB(n,u),XA]).flags&131072)}function zx(n,u){var h=Ou([Eg(n)],[u]),D=uQ(n.mapper,h);return Kn(Tg(n.target||n),D)}function ju(n,u,h,D,w,R){return h===void 0&&(h=0),aQ(n,u,h,D,w,R)||(D?HA:He)}function GhA(n,u){return hf(n,function(h){if(h.flags&384){var D=Ag(h);if(A.isNumericLiteralName(D)){var w=+D;return w>=0&&w=5e6)return A.tracing===null||A.tracing===void 0||A.tracing.instant("checkTypes","instantiateType_DepthLimit",{typeId:n.id,instantiationDepth:$A,instantiationCount:KA}),pr(ue,A.Diagnostics.Type_instantiation_is_excessively_deep_and_possibly_infinite),HA;re++,KA++,$A++;var w=Bbe(n,u,h,D);return $A--,w}function Bbe(n,u,h,D){var w=n.flags;if(w&262144)return lQ(n,u);if(w&524288){var R=n.objectFlags;if(R&52){if(R&4&&!n.node){var $=n.resolvedTypeArguments,DA=NB($,u);return DA!==$?Y7(n.target,DA):n}return R&1024?hbe(n,u):gbe(n,u,h,D)}return n}if(w&3145728){var OA=n.flags&1048576?n.origin:void 0,WA=OA&&OA.flags&3145728?OA.types:n.types,Be=NB(WA,u);if(Be===WA&&h===n.aliasSymbol)return n;var fe=h||n.aliasSymbol,me=h?D:NB(n.aliasTypeArguments,u);return w&2097152||OA&&OA.flags&2097152?xa(Be,fe,me):Br(Be,1,fe,me)}if(w&4194304)return OE(Kn(n.type,u));if(w&134217728)return Qm(n.texts,NB(n.types,u));if(w&268435456)return V1(n.symbol,Kn(n.type,u));if(w&8388608){var fe=h||n.aliasSymbol,me=h?D:NB(n.aliasTypeArguments,u);return ju(Kn(n.objectType,u),Kn(n.indexType,u),n.accessFlags,void 0,fe,me)}if(w&16777216)return WX(n,uQ(n.mapper,u),h,D);if(w&33554432){var Qe=Kn(n.baseType,u),sr=Kn(n.constraint,u);return Qe.flags&8650752&&z1(sr)?O7(Qe,sr):sr.flags&3||uo(mm(Qe),mm(sr))?Qe:Qe.flags&8650752?O7(Qe,sr):xa([sr,Qe])}return n}function hbe(n,u){var h=Kn(n.mappedType,u);if(!(A.getObjectFlags(h)&32))return n;var D=Kn(n.constraintType,u);if(!(D.flags&4194304))return n;var w=OQA(Kn(n.source,u),h,D);return w||n}function Qbe(n){return n.flags&262143?n:n.uniqueLiteralFilledInstantiation||(n.uniqueLiteralFilledInstantiation=Kn(n,yi))}function i9(n){return n.flags&262143?n:n.permissiveInstantiation||(n.permissiveInstantiation=Kn(n,Ii))}function mm(n){return n.flags&262143?n:(n.restrictiveInstantiation||(n.restrictiveInstantiation=Kn(n,ut),n.restrictiveInstantiation.restrictiveInstantiation=n.restrictiveInstantiation),n.restrictiveInstantiation)}function mbe(n,u){return Al(n.keyType,Kn(n.type,u),n.isReadonly,n.declaration)}function Md(n){switch(A.Debug.assert(n.kind!==171||A.isObjectLiteralMethod(n)),n.kind){case 215:case 216:case 171:case 259:return eQA(n);case 207:return A.some(n.properties,Md);case 206:return A.some(n.elements,Md);case 224:return Md(n.whenTrue)||Md(n.whenFalse);case 223:return(n.operatorToken.kind===56||n.operatorToken.kind===60)&&(Md(n.left)||Md(n.right));case 299:return Md(n.initializer);case 214:return Md(n.expression);case 289:return A.some(n.properties,Md)||A.isJsxOpeningElement(n.parent)&&A.some(n.parent.parent.children,Md);case 288:{var u=n.initializer;return!!u&&Md(u)}case 291:{var h=n.expression;return!!h&&Md(h)}}return!1}function eQA(n){return A.hasContextSensitiveParameters(n)||Dbe(n)}function Dbe(n){return!n.typeParameters&&!A.getEffectiveReturnTypeNode(n)&&!!n.body&&n.body.kind!==238&&Md(n.body)}function JX(n){return(A.isFunctionExpressionOrArrowFunction(n)||A.isObjectLiteralMethod(n))&&eQA(n)}function rQA(n){if(n.flags&524288){var u=Bg(n);if(u.constructSignatures.length||u.callSignatures.length){var h=Gl(16,n.symbol);return h.members=u.members,h.properties=u.properties,h.callSignatures=A.emptyArray,h.constructSignatures=A.emptyArray,h.indexInfos=A.emptyArray,h}}else if(n.flags&2097152)return xa(A.map(n.types,rQA));return n}function zf(n,u){return Bf(n,u,ro)}function yC(n,u){return Bf(n,u,ro)?-1:0}function qX(n,u){return Bf(n,u,ta)?-1:0}function _be(n,u){return Bf(n,u,Ji)?-1:0}function gQ(n,u){return Bf(n,u,Ji)}function uo(n,u){return Bf(n,u,ta)}function Z1(n,u){return n.flags&1048576?A.every(n.types,function(h){return Z1(h,u)}):u.flags&1048576?A.some(u.types,function(h){return Z1(n,h)}):n.flags&58982400?Z1(dl(n)||He,u):u===Gt?!!(n.flags&67633152):u===Tt?!!(n.flags&524288)&&OZ(n):vE(n,wE(u))||nd(u)&&!Mv(u)&&Z1(n,Vn)}function CC(n,u){return Bf(n,u,qa)}function n9(n,u){return CC(n,u)||CC(u,n)}function Bu(n,u,h,D,w,R){return Gp(n,u,ta,h,D,w,R)}function bh(n,u,h,D,w,R){return VX(n,u,ta,h,D,w,R,void 0)}function VX(n,u,h,D,w,R,$,DA){return Bf(n,u,h)?!0:!D||!q7(w,n,u,h,R,$,DA)?Gp(n,u,h,D,R,$,DA):!1}function tQA(n){return!!(n.flags&16777216||n.flags&2097152&&A.some(n.types,tQA))}function q7(n,u,h,D,w,R,$){if(!n||tQA(h))return!1;if(!Gp(u,h,D,void 0)&&wbe(n,u,h,D,w,R,$))return!0;switch(n.kind){case 291:case 214:return q7(n.expression,u,h,D,w,R,$);case 223:switch(n.operatorToken.kind){case 63:case 27:return q7(n.right,u,h,D,w,R,$)}break;case 207:return xbe(n,u,h,D,R,$);case 206:return Mbe(n,u,h,D,R,$);case 289:return Obe(n,u,h,D,R,$);case 216:return vbe(n,u,h,D,R,$)}return!1}function wbe(n,u,h,D,w,R,$){for(var DA=ia(u,0),OA=ia(u,1),WA=0,Be=[OA,DA];WA1,yr=El(me,BQA),At=El(me,function(Fi){return!BQA(Fi)});if(sr){if(yr!==XA){var Wr=tp(S9(OA,0)),ht=bbe(OA,rn);$=IC(ht,Wr,yr,D,w,R)||$}else if(!Bf(ju(u,fe),me,D)){$=!0;var Dt=pr(OA.openingElement.tagName,A.Diagnostics.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,Be,si(me));R&&R.skipLogging&&(R.errors||(R.errors=[])).push(Dt)}}else if(At!==XA){var $t=Qe[0],Ei=iQA($t,fe,rn);Ei&&($=IC(function(){return n7(this,function(Fi){switch(Fi.label){case 0:return[4,Ei];case 1:return Fi.sent(),[2]}})}(),u,h,D,w,R)||$)}else if(!Bf(ju(u,fe),me,D)){$=!0;var Dt=pr(OA.openingElement.tagName,A.Diagnostics.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,Be,si(me));R&&R.skipLogging&&(R.errors||(R.errors=[])).push(Dt)}}return $;function rn(){if(!DA){var Fi=A.getTextOfNode(n.parent.tagName),Qa=F9(jD(n)),un=Qa===void 0?"children":A.unescapeLeadingUnderscores(Qa),ma=ju(h,id(un)),Ca=A.Diagnostics._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;DA=pi(pi({},Ca),{key:"!!ALREADY FORMATTED!!",message:A.formatMessage(void 0,Ca,Fi,un,si(ma))})}return DA}}function nQA(n,u){var h,D,w,R;return n7(this,function($){switch($.label){case 0:if(h=A.length(n.elements),!h)return[2];D=0,$.label=1;case 1:return DOA:HE(n)>OA);if(WA)return 0;n.typeParameters&&n.typeParameters!==u.typeParameters&&(u=nX(u),n=Z0A(n,u,void 0,$));var Be=tg(n),fe=UC(n),me=UC(u);(fe||me)&&Kn(fe||me,DA);var Qe=u.declaration?u.declaration.kind:0,sr=!(h&3)&&VA&&Qe!==171&&Qe!==170&&Qe!==173,yr=-1,At=pf(n);if(At&&At!==Ve){var Wr=pf(u);if(Wr){var ht=!sr&&$(At,Wr,!1)||$(Wr,At,D);if(!ht)return D&&w(A.Diagnostics.The_this_types_of_each_signature_are_incompatible),0;yr&=ht}}for(var Dt=fe||me?Math.min(Be,OA):Math.max(Be,OA),$t=fe||me?Dt-1:-1,Ei=0;Ei=HE(n)&&Ei=3&&u[0].flags&32768&&u[1].flags&65536&&A.some(u,n0)?67108864:0)}return!!(n.objectFlags&67108864)}return!1}function Ov(n){return!!((n.flags&1048576?n.types[0]:n).flags&32768)}function oQA(n){return n.flags&524288&&!nu(n)&&co(n).length===0&&Vs(n).length===1&&!!hg(n,Pr)||n.flags&3145728&&A.every(n.types,oQA)||!1}function XX(n,u,h){if(n===u)return!0;var D=Y(n)+","+Y(u),w=Co.get(D);if(w!==void 0&&!(!(w&4)&&w&2&&h))return!!(w&1);if(n.escapedName!==u.escapedName||!(n.flags&256)||!(u.flags&256))return Co.set(D,6),!1;for(var R=li(u),$=0,DA=co(li(n));$0||X$(Ut)),oa=!!(A.getObjectFlags(Ut)&2048);if(da&&!Gbe(Ut,vi,oa)){if(tt){var Ua=si(Hr.aliasSymbol?Hr:Ut),ko=si(Kr.aliasSymbol?Kr:vi),La=ia(Ut,0),Es=ia(Ut,1);La.length>0&&xi(No(La[0]),vi,1,!1)||Es.length>0&&xi(No(Es[0]),vi,1,!1)?na(A.Diagnostics.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,Ua,ko):na(A.Diagnostics.Type_0_has_no_properties_in_common_with_type_1,Ua,ko)}return 0}Aa(Ut,vi);var ls=Ut.flags&1048576&&Ut.types.length<4&&!(vi.flags&1048576)||vi.flags&1048576&&vi.types.length<4&&!(Ut.flags&469499904),au=ls?Ne(Ut,vi,tt,_t):st(Ut,vi,tt,_t,bt);if(au)return au}return tt&&Oa(Hr,Kr,Ut,vi,Xt),0}function Oa(Hr,Kr,bt,tt,Xt){var _t,Ut,vi=!!aZ(Hr),an=!!aZ(Kr);bt=Hr.aliasSymbol||vi?Hr:bt,tt=Kr.aliasSymbol||an?Kr:tt;var on=Wr>0;if(on&&Wr--,bt.flags&524288&&tt.flags&524288){var bn=DA;En(bt,tt,!0),DA!==bn&&(on=!!DA)}if(bt.flags&524288&&tt.flags&131068)zi(bt,tt);else if(bt.symbol&&bt.flags&524288&&Gt===bt)na(A.Diagnostics.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(A.getObjectFlags(bt)&2048&&tt.flags&2097152){var da=tt.types,oa=u0(sA.IntrinsicAttributes,D),Ua=u0(sA.IntrinsicClassAttributes,D);if(!$n(oa)&&!$n(Ua)&&(A.contains(da,oa)||A.contains(da,Ua)))return}else DA=Jo(DA,Kr);if(!Xt&&on){ht=[bt,tt];return}if(it(Xt,bt,tt),bt.flags&262144&&(!((Ut=(_t=bt.symbol)===null||_t===void 0?void 0:_t.declarations)===null||Ut===void 0)&&Ut[0])&&!IE(bt)){var ko=r9(bt);if(ko.constraint=Kn(tt,i0(bt,ko)),dm(ko)){var La=si(tt,bt.symbol.declarations[0]);St(A.createDiagnosticForNode(bt.symbol.declarations[0],A.Diagnostics.This_type_parameter_might_need_an_extends_0_constraint,La))}}}function Aa(Hr,Kr){if(A.tracing&&Hr.flags&3145728&&Kr.flags&3145728){var bt=Hr,tt=Kr;if(bt.objectFlags&tt.objectFlags&32768)return;var Xt=bt.types.length,_t=tt.types.length;Xt*_t>1e6&&A.tracing.instant("checkTypes","traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:Hr.id,sourceSize:Xt,targetId:Kr.id,targetSize:_t,pos:D?.pos,end:D?.end})}}function Na(Hr,Kr){var bt=function(tt,Xt){var _t;Xt=vA(Xt);var Ut=Xt.flags&3145728?Ti(Xt,Kr):Wf(Xt,Kr),vi=Ut&&li(Ut)||((_t=_h(Xt,Kr))===null||_t===void 0?void 0:_t.type)||or;return A.append(tt,vi)};return Br(A.reduceLeft(Hr,bt,void 0)||A.emptyArray)}function Pa(Hr,Kr,bt){var tt;if(!uO(Kr)||!Ae&&A.getObjectFlags(Kr)&4096)return!1;var Xt=!!(A.getObjectFlags(Hr)&2048);if((h===ta||h===qa)&&(rO(Gt,Kr)||!Xt&&Kf(Kr)))return!1;var _t=Kr,Ut;Kr.flags&1048576&&(_t=p4A(Hr,Kr,xi)||mxe(Kr),Ut=_t.flags&1048576?_t.types:[_t]);for(var vi=function(oa){if(vr(oa,Hr.symbol)&&!sQA(Hr,oa)){if(!ZZ(_t,oa.escapedName,Xt)){if(bt){var Ua=El(_t,uO);if(!D)return{value:A.Debug.fail()};if(A.isJsxAttributes(D)||A.isJsxOpeningLikeElement(D)||A.isJsxOpeningLikeElement(D.parent)){oa.valueDeclaration&&A.isJsxAttribute(oa.valueDeclaration)&&A.getSourceFileOfNode(D)===A.getSourceFileOfNode(oa.valueDeclaration.name)&&(D=oa.valueDeclaration.name);var ko=Nn(oa),La=W0A(ko,Ua),Es=La?Nn(La):void 0;Es?na(A.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,ko,si(Ua),Es):na(A.Diagnostics.Property_0_does_not_exist_on_type_1,ko,si(Ua))}else{var ls=((tt=Hr.symbol)===null||tt===void 0?void 0:tt.declarations)&&A.firstOrUndefined(Hr.symbol.declarations),Es=void 0;if(oa.valueDeclaration&&A.findAncestor(oa.valueDeclaration,function(Vr){return Vr===ls})&&A.getSourceFileOfNode(ls)===A.getSourceFileOfNode(D)){var au=oa.valueDeclaration;A.Debug.assertNode(au,A.isObjectLiteralElementLike),D=au;var is=au.name;A.isIdentifier(is)&&(Es=a$(is,Ua))}Es!==void 0?na(A.Diagnostics.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,Nn(oa),si(Ua),Es):na(A.Diagnostics.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,Nn(oa),si(Ua))}}return{value:!0}}if(Ut&&!xi(li(oa),Na(Ut,oa.escapedName),3,bt))return bt&&Fo(A.Diagnostics.Types_of_property_0_are_incompatible,Nn(oa)),{value:!0}}},an=0,on=co(Hr);an=Ut.types.length&&_t.length%Ut.types.length===0){var on=xi(an,Ut.types[vi%Ut.types.length],3,!1,void 0,tt);if(on){Xt&=on;continue}}var bn=xi(an,Kr,1,bt,void 0,tt);if(!bn)return 0;Xt&=bn}return Xt}function dr(Hr,Kr,bt,tt,Xt){if(Hr===void 0&&(Hr=A.emptyArray),Kr===void 0&&(Kr=A.emptyArray),bt===void 0&&(bt=A.emptyArray),Hr.length!==Kr.length&&h===ro)return 0;for(var _t=Hr.length<=Kr.length?Hr.length:Kr.length,Ut=-1,vi=0;vi<_t;vi++){var an=vi25)return A.tracing===null||A.tracing===void 0||A.tracing.instant("checkTypes","typeRelatedToDiscriminatedType_DepthLimit",{sourceId:Hr.id,targetId:Kr.id,numCombinations:Xt}),0}for(var an=new Array(tt.length),on=new A.Set,bn=0;bn5?na(A.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,si(Hr),si(Kr),A.map(on.slice(0,4),function(da){return Nn(da)}).join(", "),on.length-4):na(A.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,si(Hr),si(Kr),A.map(on,function(da){return Nn(da)}).join(", ")),Xt&&DA&&Wr++)}function Oo(Hr,Kr,bt,tt,Xt){if(h===ro)return fo(Hr,Kr,tt);var _t=-1;if($a(Kr)){if(Dm(Hr)){if(!Kr.target.readonly&&(Mv(Hr)||$a(Hr)&&Hr.target.readonly))return 0;var Ut=FB(Hr),vi=FB(Kr),an=$a(Hr)?Hr.target.combinedFlags&4:4,on=Kr.target.combinedFlags&4,bn=$a(Hr)?Hr.target.minLength:0,da=Kr.target.minLength;if(!an&&Ut=vi-La)?Hr.target.elementFlags[au]:4,Ks=Kr.target.elementFlags[ls];if(Ks&8&&!(is&8))return bt&&na(A.Diagnostics.Source_provides_no_match_for_variadic_element_at_position_0_in_target,ls),0;if(is&8&&!(Ks&12))return bt&&na(A.Diagnostics.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,au,ls),0;if(Ks&1&&!(is&1))return bt&&na(A.Diagnostics.Source_provides_no_match_for_required_element_at_position_0_in_target,ls),0;if(!(Es&&((is&12||Ks&12)&&(Es=!1),Es&&tt?.has(""+ls)))){var Vr=$a(Hr)?ls=vi-La?PD(oa[au],!!(is&Ks&2)):g9(Hr,ko,La)||XA:oa[0],Di=Ua[ls],On=is&8&&Ks&4?el(Di):PD(Di,!!(Ks&2)),Ki=xi(Vr,On,3,bt,void 0,Xt);if(!Ki)return bt&&(vi>1||Ut>1)&&(ls=vi-La||Ut-ko-La===1?Fo(A.Diagnostics.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,au,ls):Fo(A.Diagnostics.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,ko,Ut-La-1,ls)),0;_t&=Ki}}return _t}if(Kr.target.combinedFlags&12)return 0}var pn=(h===Ji||h===Dn)&&!s0(Hr)&&!u9(Hr)&&!$a(Hr),Ga=mZ(Hr,Kr,pn,!1);if(Ga)return bt&&Bl(Hr,Kr)&&Sn(Hr,Kr,Ga,pn),0;if(s0(Kr))for(var ea=0,Da=dn(co(Hr),tt);ea0&&A.every(u.properties,function(h){return!!(h.flags&16777216)})}return n.flags&2097152?A.every(n.types,uQA):!1}function Gbe(n,u,h){for(var D=0,w=co(n);D";continue}fe+="-"+sr.id}return fe}}function tZ(n,u,h,D,w){if(D===ro&&n.id>u.id){var R=n;n=u,u=R}var $=h?":"+h:"";return o9(n)&&o9(u)?jbe(n,u,$,w):"".concat(n.id,",").concat(u.id).concat($)}function X7(n,u){if(A.getCheckFlags(n)&6){for(var h=0,D=n.containingType.types;h=D)for(var w=bC(n),R=0,$=0,DA=0;DA=$&&(R++,R>=D))return!0;$=OA.id}}return!1}function bC(n){if(n.flags&524288&&!vZ(n)){if(A.getObjectFlags(n)&&n.node)return n.node;if(n.symbol&&!(A.getObjectFlags(n)&16&&n.symbol.flags&32))return n.symbol;if($a(n))return n.target}if(n.flags&262144)return n.symbol;if(n.flags&8388608){do n=n.objectType;while(n.flags&8388608);return n}return n.flags&16777216?n.root:n}function qbe(n,u){return iZ(n,u,yC)!==0}function iZ(n,u,h){if(n===u)return-1;var D=A.getDeclarationModifierFlagsFromSymbol(n)&24,w=A.getDeclarationModifierFlagsFromSymbol(u)&24;if(D!==w)return 0;if(D){if(KD(n)!==KD(u))return 0}else if((n.flags&16777216)!==(u.flags&16777216))return 0;return op(n)!==op(u)?0:h(li(n),li(u))}function Vbe(n,u,h){var D=tg(n),w=tg(u),R=HE(n),$=HE(u),DA=SE(n),OA=SE(u);return!!(D===w&&R===$&&DA===OA||h&&R<=$)}function Z7(n,u,h,D,w,R){if(n===u)return-1;if(!Vbe(n,u,h)||A.length(n.typeParameters)!==A.length(u.typeParameters))return 0;if(u.typeParameters){for(var $=Ou(n.typeParameters,u.typeParameters),DA=0;DAA.length(u.typeParameters)&&(w=iu(w,A.last(Po(n)))),n.objectFlags|=67108864,n.cachedEquivalentBaseType=w}}}function fQA(n){return TA?n===ot:n===Mr}function u9(n){var u=nZ(n);return!!u&&fQA(u)}function TD(n){return $a(n)||!!mn(n,"0")}function BQA(n){return dQ(n)||TD(n)}function $be(n,u){var h=ya(n,""+u);if(h)return h;if(hf(n,$a))return ks(n,function(D){return OC(D)||or})}function A5e(n){return!(n.flags&240512)}function np(n){return!!(n.flags&109440)}function hQA(n){var u=Jf(n);return u.flags&2097152?A.some(u.types,np):np(u)}function e5e(n){return n.flags&2097152&&A.find(n.types,np)||n}function ND(n){return n.flags&16?!0:n.flags&1048576?n.flags&1024?!0:A.every(n.types,np):np(n)}function kE(n){return n.flags&1024?cm(n):n.flags&402653312?Pr:n.flags&256?Et:n.flags&2048?Zt:n.flags&512?Xr:n.flags&1048576?r5e(n):n}function r5e(n){var u,h="B".concat(rl(n));return(u=gs(h))!==null&&u!==void 0?u:ts(h,ks(n,kE))}function a0(n){return n.flags&1024&&t0(n)?cm(n):n.flags&128&&t0(n)?Pr:n.flags&256&&t0(n)?Et:n.flags&2048&&t0(n)?Zt:n.flags&512&&t0(n)?Xr:n.flags&1048576?ks(n,a0):n}function QQA(n){return n.flags&8192?JA:n.flags&1048576?ks(n,QQA):n}function oZ(n,u){return X9(n,u)||(n=QQA(a0(n))),bu(n)}function t5e(n,u,h){if(n&&np(n)){var D=u?h?qC(u):u:void 0;n=oZ(n,D)}return n}function sZ(n,u,h,D){if(n&&np(n)){var w=u?d0(h,u,D):void 0;n=oZ(n,w)}return n}function $a(n){return!!(A.getObjectFlags(n)&4&&n.target.objectFlags&8)}function kv(n){return $a(n)&&!!(n.target.combinedFlags&8)}function mQA(n){return kv(n)&&n.target.elementFlags.length===1}function OC(n){return g9(n,n.target.fixedLength)}function i5e(n){var u=OC(n);return u&&el(u)}function g9(n,u,h,D){h===void 0&&(h=0),D===void 0&&(D=!1);var w=FB(n)-h;if(u-1&&(Hs(R,R.name.escapedText,788968,void 0,R.name.escapedText,!0)||R.name.originalKeywordKind&&A.isTypeNodeKind(R.name.originalKeywordKind))){var $="arg"+R.parent.parameters.indexOf(R),DA=A.declarationNameToString(R.name)+(R.dotDotDotToken?"[]":"");uu(Ae,n,A.Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,$,DA);return}w=n.dotDotDotToken?Ae?A.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type:A.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:Ae?A.Diagnostics.Parameter_0_implicitly_has_an_1_type:A.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 205:if(w=A.Diagnostics.Binding_element_0_implicitly_has_an_1_type,!Ae)return;break;case 320:pr(n,A.Diagnostics.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return;case 259:case 171:case 170:case 174:case 175:case 215:case 216:if(Ae&&!n.name){h===3?pr(n,A.Diagnostics.Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation,D):pr(n,A.Diagnostics.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,D);return}w=Ae?h===3?A.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:A.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:A.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 197:Ae&&pr(n,A.Diagnostics.Mapped_object_type_implicitly_has_an_any_template_type);return;default:w=Ae?A.Diagnostics.Variable_0_implicitly_has_an_1_type:A.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}uu(Ae,n,w,A.declarationNameToString(A.getNameOfDeclaration(n)),D)}}function h9(n,u,h){_A(function(){Ae&&A.getObjectFlags(u)&65536&&(!h||!WZ(n))&&(B9(u)||o0(n,u,h))})}function gZ(n,u,h){var D=tg(n),w=tg(u),R=YC(n),$=YC(u),DA=$?w-1:w,OA=R?DA:Math.min(D,DA),WA=pf(n);if(WA){var Be=pf(u);Be&&h(WA,Be)}for(var fe=0;fen.target.minLength||!u.target.hasRestElement&&(n.target.hasRestElement||u.target.fixedLength0){for(var At=me,Wr=Qe;Wr=ht(At).indexOf(yr,Wr),!(Wr>=0);){if(At++,At===n.length)return;Wr=0}Dt(At,Wr),Qe+=yr.length}else if(Qe0)for(var nn=0,dr=it;nn1){var u=A.filter(n,vZ);if(u.length){var h=Br(u,2);return A.concatenate(A.filter(n,function(D){return!vZ(D)}),[h])}}return n}function H5e(n){return n.priority&416?xa(n.contraCandidates):Zbe(n.contraCandidates)}function S5e(n,u){var h=x5e(n.candidates),D=k5e(n.typeParameter),w=!D&&n.topLevel&&(n.isFixed||!BZ(No(u),n.typeParameter)),R=D?A.sameMap(h,bu):w?A.sameMap(h,a0):h,$=n.priority&416?Br(R,2):Xbe(R);return rg($)}function yZ(n,u){var h=n.inferences[u];if(!h.inferredType){var D=void 0,w=n.signature;if(w){var R=h.candidates?S5e(h,w):void 0;if(h.contraCandidates)D=R&&!(R.flags&131072)&&A.some(h.contraCandidates,function(WA){return gQ(R,WA)})?R:H5e(h);else if(R)D=R;else if(n.flags&1)D=Gr;else{var $=bd(h.typeParameter);$&&(D=Kn($,cbe(sbe(n,u),n.nonFixingMapper)))}}else D=MQA(h);h.inferredType=D||CZ(!!(n.flags&2));var DA=$c(h.typeParameter);if(DA){var OA=Kn(DA,n.nonFixingMapper);(!D||!n.compareTypes(D,iu(OA,D)))&&(h.inferredType=D=OA)}}return h.inferredType}function CZ(n){return n?UA:He}function IZ(n){for(var u=[],h=0;h=10&&D*2>=n.length?h:void 0}function $7(n){var u=n.types;if(!(u.length<10||A.getObjectFlags(n)&32768||A.countWhere(u,function(w){return!!(w.flags&59506688)})<10)){if(n.keyPropertyName===void 0){var h=A.forEach(u,function(w){return w.flags&59506688?A.forEach(co(w),function(R){return np(li(R))?R.escapedName:void 0}):void 0}),D=h&&R5e(u,h);n.keyPropertyName=D?h:"",n.constituentMap=D}return n.keyPropertyName.length?n.keyPropertyName:void 0}}function AO(n,u){var h,D=(h=n.constituentMap)===null||h===void 0?void 0:h.get(rl(bu(u)));return D!==He?D:void 0}function GQA(n,u){var h=$7(n),D=h&&ya(u,h);return D&&AO(n,D)}function T5e(n,u){var h=$7(n),D=h&&A.find(u.properties,function(R){return R.symbol&&R.kind===299&&R.symbol.escapedName===h&&sO(R.initializer)}),w=D&&vO(D.initializer);return w&&AO(n,w)}function YQA(n,u){return tl(n,u)||NQA(n,u)}function UQA(n,u){if(n.arguments)for(var h=0,D=n.arguments;h=0&&Qt.parameterIndex=Qt&&Oi=2){var D=h.parent.parent;if(D.kind===257&&A.getCombinedNodeFlags(h)&2||D.kind===166){var w=qi(D);if(!(w.flags&268435456)){w.flags|=268435456;var R=ru(D,0),$=R&&ks(R,Jf);if(w.flags&=-268435457,$&&$.flags&1048576&&!(D.kind===166&&b9(n))){var DA=h.parent,OA=pQ(DA,$,$,void 0,u.flowNode);return OA.flags&131072?XA:mE(h,OA)}}}}if(A.isParameter(h)&&!h.type&&!h.initializer&&!h.dotDotDotToken){var WA=h.parent;if(WA.parameters.length>=2&&JX(WA)){var Be=TC(WA);if(Be&&Be.parameters.length===1&&BA(Be)){var fe=Ie(li(Be.parameters[0]));if(fe.flags&1048576&&hf(fe,$a)&&!b9(n)){var OA=pQ(WA,fe,fe,void 0,u.flowNode),me=WA.parameters.indexOf(h)-(A.getThisParameter(WA)?1:0);return ju(OA,ME(me))}}}}}return li(n)}function p3e(n,u){if(A.isThisInTypeQuery(n))return oO(n);var h=kd(n);if(h===Ar)return HA;if(h===PA){if(Y0A(n))return pr(n,A.Diagnostics.arguments_cannot_be_referenced_in_property_initializers),HA;var D=A.getContainingFunction(n);return N<2&&(D.kind===216?pr(n,A.Diagnostics.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression):A.hasSyntacticModifier(D,512)&&pr(n,A.Diagnostics.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method)),qi(D).flags|=8192,li(h)}f3e(n)&&O9(h,n);var w=Vu(h),R=R1A(w,n);vg(R)&&kX(n,R)&&R.declarations&&lg(n,R.declarations,n.escapedText);var $=w.valueDeclaration;if($&&w.flags&32){if($.kind===260&&A.nodeIsDecorated($))for(var D=A.getContainingClass(n);D!==void 0;){if(D===$&&D.name!==n){qi($).flags|=16777216,qi(n).flags|=33554432;break}D=A.getContainingClass(D)}else if($.kind===228)for(var D=A.getThisContainer(n,!1);D.kind!==308;){if(D.parent===$){(A.isPropertyDeclaration(D)&&A.isStatic(D)||A.isClassStaticBlockDeclaration(D))&&(qi($).flags|=16777216,qi(n).flags|=33554432);break}D=A.getThisContainer(D,!1)}}Q3e(n,h);var DA=d3e(w,n),OA=A.getAssignmentTargetKind(n);if(OA){if(!(w.flags&3)&&!(A.isInJSFile(n)&&w.flags&512)){var WA=w.flags&384?A.Diagnostics.Cannot_assign_to_0_because_it_is_an_enum:w.flags&32?A.Diagnostics.Cannot_assign_to_0_because_it_is_a_class:w.flags&1536?A.Diagnostics.Cannot_assign_to_0_because_it_is_a_namespace:w.flags&16?A.Diagnostics.Cannot_assign_to_0_because_it_is_a_function:w.flags&2097152?A.Diagnostics.Cannot_assign_to_0_because_it_is_an_import:A.Diagnostics.Cannot_assign_to_0_because_it_is_not_a_variable;return pr(n,WA,Nn(h)),HA}if(op(w))return w.flags&3?pr(n,A.Diagnostics.Cannot_assign_to_0_because_it_is_a_constant,Nn(h)):pr(n,A.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,Nn(h)),HA}var Be=w.flags&2097152;if(w.flags&3){if(OA===1)return DA}else if(Be)$=Ig(h);else return DA;if(!$)return DA;DA=HZ(DA,n,u);for(var fe=A.getRootDeclaration($).kind===166,me=FC($),Qe=FC(n),sr=Qe!==me,yr=n.parent&&n.parent.parent&&A.isSpreadAssignment(n.parent)&&kZ(n.parent.parent),At=h.flags&134217728;Qe!==me&&(Qe.kind===215||Qe.kind===216||A.isObjectLiteralOrClassExpressionMethodOrAccessor(Qe))&&(RC(w)&&DA!==ys||fe&&!b9(w));)Qe=FC(Qe);var Wr=fe||Be||sr||yr||At||E3e(n,$)||DA!==Ee&&DA!==ys&&(!TA||(DA.flags&16387)!==0||xv(n)||n.parent.kind===278)||n.parent.kind===232||$.kind===257&&$.exclamationToken||$.flags&16777216,ht=Wr?fe?l3e(DA,$):DA:DA===Ee||DA===ys?or:PB(DA),Dt=pQ(n,DA,ht,Qe);if(!e0A(n)&&(DA===Ee||DA===ys)){if(Dt===Ee||Dt===ys)return Ae&&(pr(A.getNameOfDeclaration($),A.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,Nn(h),si(Dt)),pr(n,A.Diagnostics.Variable_0_implicitly_has_an_1_type,Nn(h),si(Dt))),KC(Dt)}else if(!Wr&&!Ov(DA)&&Ov(Dt))return pr(n,A.Diagnostics.Variable_0_is_used_before_being_assigned,Nn(h)),DA;return OA?kE(Dt):Dt}function E3e(n,u){if(A.isBindingElement(u)){var h=A.findAncestor(n,A.isBindingElement);return h&&A.getRootDeclaration(h)===A.getRootDeclaration(u)}}function f3e(n){var u,h=n.parent;if(h){if(A.isPropertyAccessExpression(h)&&h.expression===n||A.isExportSpecifier(h)&&h.isTypeOnly)return!1;var D=(u=h.parent)===null||u===void 0?void 0:u.parent;if(D&&A.isExportDeclaration(D)&&D.isTypeOnly)return!1}return!0}function B3e(n,u){return!!A.findAncestor(n,function(h){return h===u?"quit":A.isFunctionLike(h)||h.parent&&A.isPropertyDeclaration(h.parent)&&!A.hasStaticModifier(h.parent)&&h.parent.initializer===h})}function h3e(n,u){return A.findAncestor(n,function(h){return h===u?"quit":h===u.initializer||h===u.condition||h===u.incrementor||h===u.statement})}function SZ(n){return A.findAncestor(n,function(u){return!u||A.nodeStartsNewLexicalEnvironment(u)?"quit":A.isIterationStatement(u,!1)})}function Q3e(n,u){if(!(N>=2||!(u.flags&34)||!u.valueDeclaration||A.isSourceFile(u.valueDeclaration)||u.valueDeclaration.parent.kind===295)){var h=A.getEnclosingBlockScopeContainer(u.valueDeclaration),D=B3e(n,h),w=SZ(h);if(w){if(D){var R=!0;if(A.isForStatement(h)){var $=A.getAncestor(u.valueDeclaration,258);if($&&$.parent===h){var DA=h3e(n.parent,h);if(DA){var OA=qi(DA);OA.flags|=131072;var WA=OA.capturedBlockScopeBindings||(OA.capturedBlockScopeBindings=[]);A.pushIfUnique(WA,u),DA===h.initializer&&(R=!1)}}}R&&(qi(w).flags|=65536)}if(A.isForStatement(h)){var $=A.getAncestor(u.valueDeclaration,258);$&&$.parent===h&&D3e(n,h)&&(qi(u.valueDeclaration).flags|=4194304)}qi(u.valueDeclaration).flags|=524288}D&&(qi(u.valueDeclaration).flags|=262144)}}function m3e(n,u){var h=qi(n);return!!h&&A.contains(h.capturedBlockScopeBindings,hi(u))}function D3e(n,u){for(var h=n;h.parent.kind===214;)h=h.parent;var D=!1;if(A.isAssignmentTarget(h))D=!0;else if(h.parent.kind===221||h.parent.kind===222){var w=h.parent;D=w.operator===45||w.operator===46}return D?!!A.findAncestor(h,function(R){return R===u?"quit":R===u.statement}):!1}function FZ(n,u){if(qi(n).flags|=2,u.kind===169||u.kind===173){var h=u.parent;qi(h).flags|=4}else qi(u).flags|=4}function s0A(n){return A.isSuperCall(n)?n:A.isFunctionLike(n)?void 0:A.forEachChild(n,s0A)}function c0A(n){var u=hi(n),h=Hi(u),D=gl(h);return D===gt}function l0A(n,u,h){var D=u.parent,w=A.getClassExtendsHeritageElement(D);w&&!c0A(D)&&n.flowNode&&!I9(n.flowNode,!1)&&pr(n,h)}function _3e(n,u){A.isPropertyDeclaration(u)&&A.hasStaticModifier(u)&&u.initializer&&A.textRangeContainsPositionInclusive(u.initializer,n.pos)&&A.hasDecorators(u.parent)&&pr(n,A.Diagnostics.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class)}function oO(n){var u=xv(n),h=A.getThisContainer(n,!0),D=!1;switch(h.kind===173&&l0A(n,h,A.Diagnostics.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class),h.kind===216&&(h=A.getThisContainer(h,!1),D=!0),_3e(n,h),h.kind){case 264:pr(n,A.Diagnostics.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 263:pr(n,A.Diagnostics.this_cannot_be_referenced_in_current_location);break;case 173:u0A(n,h)&&pr(n,A.Diagnostics.this_cannot_be_referenced_in_constructor_arguments);break;case 164:pr(n,A.Diagnostics.this_cannot_be_referenced_in_a_computed_property_name);break}!u&&D&&N<2&&FZ(n,h);var w=RZ(n,!0,h);if(Q){var R=li(xr);if(w===R&&D)pr(n,A.Diagnostics.The_containing_arrow_function_captures_the_global_value_of_this);else if(!w){var $=pr(n,A.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!A.isSourceFile(h)){var DA=RZ(h);DA&&DA!==R&&A.addRelatedInfo($,A.createDiagnosticForNode(h,A.Diagnostics.An_outer_value_of_this_is_shadowed_by_this_container))}}}return w||UA}function RZ(n,u,h){u===void 0&&(u=!0),h===void 0&&(h=A.getThisContainer(n,!1));var D=A.isInJSFile(n);if(A.isFunctionLike(h)&&(!PZ(n)||A.getThisParameter(h))){var w=bc(h)||D&&y3e(h);if(!w){var R=v3e(h);if(D&&R){var $=fa(R).symbol;$&&$.members&&$.flags&16&&(w=Hi($).thisType)}else Up(h)&&(w=Hi(Pn(h.symbol)).thisType);w||(w=d0A(h))}if(w)return pQ(n,w)}if(A.isClassLike(h.parent)){var DA=hi(h.parent),OA=A.isStatic(h)?li(DA):Hi(DA).thisType;return pQ(n,OA)}if(A.isSourceFile(h))if(h.commonJsModuleIndicator){var WA=hi(h);return WA&&li(WA)}else{if(h.externalModuleIndicator)return or;if(u)return li(xr)}}function w3e(n){var u=A.getThisContainer(n,!1);if(A.isFunctionLike(u)){var h=mo(u);if(h.thisParameter)return v9(h.thisParameter)}if(A.isClassLike(u.parent)){var D=hi(u.parent);return A.isStatic(u)?li(D):Hi(D).thisType}}function v3e(n){if(n.kind===215&&A.isBinaryExpression(n.parent)&&A.getAssignmentDeclarationKind(n.parent)===3)return n.parent.left.expression.expression;if(n.kind===171&&n.parent.kind===207&&A.isBinaryExpression(n.parent.parent)&&A.getAssignmentDeclarationKind(n.parent.parent)===6)return n.parent.parent.left.expression;if(n.kind===215&&n.parent.kind===299&&n.parent.parent.kind===207&&A.isBinaryExpression(n.parent.parent.parent)&&A.getAssignmentDeclarationKind(n.parent.parent.parent)===6)return n.parent.parent.parent.left.expression;if(n.kind===215&&A.isPropertyAssignment(n.parent)&&A.isIdentifier(n.parent.name)&&(n.parent.name.escapedText==="value"||n.parent.name.escapedText==="get"||n.parent.name.escapedText==="set")&&A.isObjectLiteralExpression(n.parent.parent)&&A.isCallExpression(n.parent.parent.parent)&&n.parent.parent.parent.arguments[2]===n.parent.parent&&A.getAssignmentDeclarationKind(n.parent.parent.parent)===9)return n.parent.parent.parent.arguments[0].expression;if(A.isMethodDeclaration(n)&&A.isIdentifier(n.name)&&(n.name.escapedText==="value"||n.name.escapedText==="get"||n.name.escapedText==="set")&&A.isObjectLiteralExpression(n.parent)&&A.isCallExpression(n.parent.parent)&&n.parent.parent.arguments[2]===n.parent&&A.getAssignmentDeclarationKind(n.parent.parent)===9)return n.parent.parent.arguments[0].expression}function y3e(n){var u=A.getJSDocType(n);if(u&&u.kind===320){var h=u;if(h.parameters.length>0&&h.parameters[0].name&&h.parameters[0].name.escapedText==="this")return Mn(h.parameters[0].type)}var D=A.getJSDocThisTag(n);if(D&&D.typeExpression)return Mn(D.typeExpression)}function u0A(n,u){return!!A.findAncestor(n,function(h){return A.isFunctionLikeDeclaration(h)?"quit":h.kind===166&&h.parent===u})}function TZ(n){var u=n.parent.kind===210&&n.parent.expression===n,h=A.getSuperContainer(n,!0),D=h,w=!1,R=!1;if(!u){for(;D&&D.kind===216;)A.hasSyntacticModifier(D,512)&&(R=!0),D=A.getSuperContainer(D,!0),w=N<2;D&&A.hasSyntacticModifier(D,512)&&(R=!0)}var $=me(D),DA=0;if(!$){var OA=A.findAncestor(n,function(Qe){return Qe===D?"quit":Qe.kind===164});return OA&&OA.kind===164?pr(n,A.Diagnostics.super_cannot_be_referenced_in_a_computed_property_name):u?pr(n,A.Diagnostics.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):!D||!D.parent||!(A.isClassLike(D.parent)||D.parent.kind===207)?pr(n,A.Diagnostics.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions):pr(n,A.Diagnostics.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class),HA}if(!u&&h.kind===173&&l0A(n,D,A.Diagnostics.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),A.isStatic(D)||u?(DA=512,!u&&N>=2&&N<=8&&(A.isPropertyDeclaration(D)||A.isClassStaticBlockDeclaration(D))&&A.forEachEnclosingBlockScopeContainer(n.parent,function(Qe){(!A.isSourceFile(Qe)||A.isExternalOrCommonJsModule(Qe))&&(qi(Qe).flags|=134217728)})):DA=256,qi(n).flags|=DA,D.kind===171&&R&&(A.isSuperProperty(n.parent)&&A.isAssignmentTarget(n.parent)?qi(D).flags|=4096:qi(D).flags|=2048),w&&FZ(n.parent,D),D.parent.kind===207)return N<2?(pr(n,A.Diagnostics.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),HA):UA;var WA=D.parent;if(!A.getClassExtendsHeritageElement(WA))return pr(n,A.Diagnostics.super_can_only_be_referenced_in_a_derived_class),HA;var Be=Hi(hi(WA)),fe=Be&&dc(Be)[0];if(!fe)return HA;if(D.kind===173&&u0A(n,D))return pr(n,A.Diagnostics.super_cannot_be_referenced_in_constructor_arguments),HA;return DA===512?gl(Be):iu(fe,Be.thisType);function me(Qe){return Qe?u?Qe.kind===173:A.isClassLike(Qe.parent)||Qe.parent.kind===207?A.isStatic(Qe)?Qe.kind===171||Qe.kind===170||Qe.kind===174||Qe.kind===175||Qe.kind===169||Qe.kind===172:Qe.kind===171||Qe.kind===170||Qe.kind===174||Qe.kind===175||Qe.kind===169||Qe.kind===168||Qe.kind===173:!1:!1}}function C3e(n){return(n.kind===171||n.kind===174||n.kind===175)&&n.parent.kind===207?n.parent:n.kind===215&&n.parent.kind===299?n.parent.parent:void 0}function g0A(n){return A.getObjectFlags(n)&4&&n.target===Vc?Po(n)[0]:void 0}function I3e(n){return ks(n,function(u){return u.flags&2097152?A.forEach(u.types,g0A):g0A(u)})}function d0A(n){if(n.kind!==216){if(JX(n)){var u=TC(n);if(u){var h=u.thisParameter;if(h)return li(h)}}var D=A.isInJSFile(n);if(Q||D){var w=C3e(n);if(w){for(var R=l0(w,void 0),$=w,DA=R;DA;){var OA=I3e(DA);if(OA)return Kn(OA,fZ(LD(w)));if($.parent.kind!==299)break;$=$.parent.parent,DA=l0($,void 0)}return rg(R?GB(R):sc(w))}var WA=A.walkUpParenthesizedExpressions(n.parent);if(WA.kind===223&&WA.operatorToken.kind===63){var Be=WA.left;if(A.isAccessExpression(Be)){var fe=Be.expression;if(D&&A.isIdentifier(fe)){var me=A.getSourceFileOfNode(WA);if(me.commonJsModuleIndicator&&kd(fe)===me.symbol)return}return rg(sc(fe))}}}}}function p0A(n){var u=n.parent;if(JX(u)){var h=A.getImmediatelyInvokedFunctionExpression(u);if(h&&h.arguments){var D=p$(h),w=u.parameters.indexOf(n);if(n.dotDotDotToken)return g$(D,w,D.length,UA,void 0,0);var R=qi(h),$=R.resolvedSignature;R.resolvedSignature=hs;var DA=w0)return tn(h.name,!0,!1)}}function k3e(n,u){var h=A.getContainingFunction(n);if(h){var D=GZ(h,u);if(D){var w=A.getFunctionFlags(h);if(w&1){var R=(w&2)!==0;D.flags&1048576&&(D=El(D,function(OA){return!!d0(1,OA,R)}));var $=d0(1,D,(w&2)!==0);if(!$)return;D=$}if(w&2){var DA=ks(D,UB);return DA&&Br([DA,wmA(DA)])}return D}}}function x3e(n,u){var h=Wu(n,u);if(h){var D=UB(h);return D&&Br([D,wmA(D)])}}function H3e(n,u){var h=A.getContainingFunction(n);if(h){var D=A.getFunctionFlags(h),w=GZ(h,u);if(w){var R=(D&2)!==0;return!n.asteriskToken&&w.flags&1048576&&(w=El(w,function($){return!!d0(1,$,R)})),n.asteriskToken?w:d0(0,w,R)}}}function PZ(n){for(var u=!1;n.parent&&!A.isFunctionLike(n.parent);){if(A.isParameter(n.parent)&&(u||n.parent.initializer===n))return!0;A.isBindingElement(n.parent)&&n.parent.initializer===n&&(u=!0),n=n.parent}return!1}function E0A(n,u){var h=!!(A.getFunctionFlags(u)&2),D=GZ(u,void 0);if(D)return d0(n,D,h)||void 0}function GZ(n,u){var h=fm(n);if(h)return h;var D=WZ(n);if(D&&!w7(D))return No(D);var w=A.getImmediatelyInvokedFunctionExpression(n);if(w)return Wu(w,u)}function f0A(n,u){var h=p$(n),D=h.indexOf(u);return D===-1?void 0:YZ(n,D)}function YZ(n,u){if(A.isImportCall(n))return u===0?Pr:u===1?Tx(!1):UA;var h=qi(n).resolvedSignature===xe?xe:JD(n);if(A.isJsxOpeningLikeElement(n)&&u===0)return H9(h,n);var D=h.parameters.length-1;return BA(h)&&u>=D?ju(li(h.parameters[D]),ME(u-D),256):ap(h,u)}function S3e(n,u){if(n.parent.kind===212)return f0A(n.parent,u)}function F3e(n,u){var h=n.parent,D=h.left,w=h.operatorToken,R=h.right;switch(w.kind){case 63:case 76:case 75:case 77:return n===R?T3e(h):void 0;case 56:case 60:var $=Wu(h,u);return n===R&&($&&$.pattern||!$&&!A.isDefaultedExpandoInitializer(h))?fl(D):$;case 55:case 27:return n===R?Wu(h,u):void 0;default:return}}function R3e(n){if(n.symbol)return n.symbol;if(A.isIdentifier(n))return kd(n);if(A.isPropertyAccessExpression(n)){var u=fl(n.expression);return A.isPrivateIdentifier(n.name)?D(u,n.name):mn(u,n.name.escapedText)}if(A.isElementAccessExpression(n)){var h=sc(n.argumentExpression);if(!$u(h))return;var u=fl(n.expression);return mn(u,Ag(h))}return;function D(w,R){var $=N9(R.escapedText,R);return $&&r$(w,$)}}function T3e(n){var u,h,D=A.getAssignmentDeclarationKind(n);switch(D){case 0:case 4:var w=R3e(n.left),R=w&&w.valueDeclaration;if(R&&(A.isPropertyDeclaration(R)||A.isPropertySignature(R))){var $=A.getEffectiveTypeAnnotationNode(R);return $&&Kn(Mn($),Tn(w).mapper)||(A.isPropertyDeclaration(R)?R.initializer&&fl(n.left):void 0)}return D===0?fl(n.left):B0A(n);case 5:if(M9(n,D))return B0A(n);if(n.left.symbol){var DA=n.left.symbol.valueDeclaration;if(!DA)return;var OA=A.cast(n.left,A.isAccessExpression),$=A.getEffectiveTypeAnnotationNode(DA);if($)return Mn($);if(A.isIdentifier(OA.expression)){var WA=OA.expression,Be=Hs(WA,WA.escapedText,111551,void 0,WA.escapedText,!0);if(Be){var fe=Be.valueDeclaration&&A.getEffectiveTypeAnnotationNode(Be.valueDeclaration);if(fe){var me=A.getElementOrPropertyAccessName(OA);if(me!==void 0)return Cm(Mn(fe),me)}return}}return A.isInJSFile(DA)?void 0:fl(n.left)}else return fl(n.left);case 1:case 6:case 3:case 2:var Qe=void 0;D!==2&&(Qe=(u=n.left.symbol)===null||u===void 0?void 0:u.valueDeclaration),Qe||(Qe=(h=n.symbol)===null||h===void 0?void 0:h.valueDeclaration);var sr=Qe&&A.getEffectiveTypeAnnotationNode(Qe);return sr?Mn(sr):void 0;case 7:case 8:case 9:return A.Debug.fail("Does not apply");default:return A.Debug.assertNever(D)}}function M9(n,u){if(u===void 0&&(u=A.getAssignmentDeclarationKind(n)),u===4)return!0;if(!A.isInJSFile(n)||u!==5||!A.isIdentifier(n.left.expression))return!1;var h=n.left.expression.escapedText,D=Hs(n.left,h,111551,void 0,void 0,!0,!0);return A.isThisInitializedDeclaration(D?.valueDeclaration)}function B0A(n){if(!n.symbol)return fl(n.left);if(n.symbol.valueDeclaration){var u=A.getEffectiveTypeAnnotationNode(n.symbol.valueDeclaration);if(u){var h=Mn(u);if(h)return h}}var D=A.cast(n.left,A.isAccessExpression);if(A.isObjectLiteralMethod(A.getThisContainer(D.expression,!1))){var w=oO(D.expression),R=A.getElementOrPropertyAccessName(D);return R!==void 0&&Cm(w,R)||void 0}}function N3e(n){return!!(A.getCheckFlags(n)&262144&&!n.type&&sn(n,0)>=0)}function Cm(n,u,h){return ks(n,function(D){var w;if(nu(D)&&!D.declaration.nameType){var R=Rg(D),$=dl(R)||R,DA=h||id(A.unescapeLeadingUnderscores(u));if(uo(DA,$))return zx(D,DA)}else if(D.flags&3670016){var OA=mn(D,u);if(OA)return N3e(OA)?void 0:li(OA);if($a(D)){var WA=OC(D);if(WA&&A.isNumericLiteralName(u)&&+u>=0)return WA}return(w=Od(A0(D),h||id(A.unescapeLeadingUnderscores(u))))===null||w===void 0?void 0:w.type}},!0)}function h0A(n,u){if(A.Debug.assert(A.isObjectLiteralMethod(n)),!(n.flags&33554432))return UZ(n,u)}function UZ(n,u){var h=n.parent,D=A.isPropertyAssignment(n)&&NZ(n,u);if(D)return D;var w=l0(h,u);if(w){if(iQ(n)){var R=hi(n);return Cm(w,R.escapedName,Tn(R).nameType)}if(n.name){var $=Ih(n.name);return ks(w,function(DA){var OA;return(OA=Od(A0(DA),$))===null||OA===void 0?void 0:OA.type},!0)}}}function LZ(n,u){return n&&(Cm(n,""+u)||ks(n,function(h){return N$(1,h,or,void 0,!1)},!0))}function P3e(n,u){var h=n.parent;return n===h.whenTrue||n===h.whenFalse?Wu(h,u):void 0}function G3e(n,u,h){var D=l0(n.openingElement.tagName,h),w=F9(jD(n));if(D&&!Ha(D)&&w&&w!==""){var R=A.getSemanticJsxChildren(n.children),$=R.indexOf(u),DA=Cm(D,w);return DA&&(R.length===1?DA:ks(DA,function(OA){return dQ(OA)?ju(OA,ME($)):OA},!0))}}function Y3e(n,u){var h=n.parent;return A.isJsxAttributeLike(h)?Wu(n,u):A.isJsxElement(h)?G3e(h,n,u):void 0}function Q0A(n,u){if(A.isJsxAttribute(n)){var h=l0(n.parent,u);return!h||Ha(h)?void 0:Cm(h,n.name.escapedText)}else return Wu(n.parent,u)}function sO(n){switch(n.kind){case 10:case 8:case 9:case 14:case 110:case 95:case 104:case 79:case 155:return!0;case 208:case 214:return sO(n.expression);case 291:return!n.expression||sO(n.expression)}return!1}function U3e(n,u){return T5e(u,n)||AZ(u,A.concatenate(A.map(A.filter(n.properties,function(h){return!!h.symbol&&h.kind===299&&sO(h.initializer)&&HC(u,h.symbol.escapedName)}),function(h){return[function(){return vO(h.initializer)},h.symbol.escapedName]}),A.map(A.filter(co(u),function(h){var D;return!!(h.flags&16777216)&&!!(!((D=n?.symbol)===null||D===void 0)&&D.members)&&!n.symbol.members.has(h.escapedName)&&HC(u,h.escapedName)}),function(h){return[function(){return or},h.escapedName]})),uo,u)}function L3e(n,u){return AZ(u,A.concatenate(A.map(A.filter(n.properties,function(h){return!!h.symbol&&h.kind===288&&HC(u,h.symbol.escapedName)&&(!h.initializer||sO(h.initializer))}),function(h){return[h.initializer?function(){return vO(h.initializer)}:function(){return ei},h.symbol.escapedName]}),A.map(A.filter(co(u),function(h){var D;return!!(h.flags&16777216)&&!!(!((D=n?.symbol)===null||D===void 0)&&D.members)&&!n.symbol.members.has(h.escapedName)&&HC(u,h.escapedName)}),function(h){return[function(){return or},h.escapedName]})),uo,u)}function l0(n,u){var h=A.isObjectLiteralMethod(n)?h0A(n,u):Wu(n,u),D=k9(h,n,u);if(D&&!(u&&u&2&&D.flags&8650752)){var w=ks(D,vA,!0);return w.flags&1048576&&A.isObjectLiteralExpression(n)?U3e(n,w):w.flags&1048576&&A.isJsxAttributes(n)?L3e(n,w):w}}function k9(n,u,h){if(n&&Rs(n,465829888)){var D=LD(u);if(D&&h&1&&A.some(D.inferences,a6e))return x9(n,D.nonFixingMapper);if(D?.returnMapper){var w=x9(n,D.returnMapper);return w.flags&1048576&&ff(w.types,_i)&&ff(w.types,Yt)?El(w,function(R){return R!==_i&&R!==Yt}):w}}return n}function x9(n,u){return n.flags&465829888?Kn(n,u):n.flags&1048576?Br(A.map(n.types,function(h){return x9(h,u)}),0):n.flags&2097152?xa(A.map(n.types,function(h){return x9(h,u)})):n}function Wu(n,u){if(n.flags&33554432)return;if(n.contextualType)return n.contextualType;var h=n.parent;switch(h.kind){case 257:case 166:case 169:case 168:case 205:return M3e(n,u);case 216:case 250:return k3e(n,u);case 226:return H3e(h,u);case 220:return x3e(h,u);case 210:case 211:return f0A(h,n);case 213:case 231:return A.isConstTypeReference(h.type)?$(h):Mn(h.type);case 223:return F3e(n,u);case 299:case 300:return UZ(h,u);case 301:return Wu(h.parent,u);case 206:{var D=h,w=l0(D,u);return LZ(w,A.indexOfNode(D.elements,n))}case 224:return P3e(n,u);case 236:return A.Debug.assert(h.parent.kind===225),S3e(h.parent,n);case 214:{var R=A.isInJSFile(h)?A.getJSDocTypeTag(h):void 0;return R?A.isJSDocTypeTag(R)&&A.isConstTypeReference(R.typeExpression.type)?$(h):Mn(R.typeExpression.type):Wu(h,u)}case 232:return Wu(h,u);case 235:return Mn(h.type);case 274:return Go(h);case 291:return Y3e(h,u);case 288:case 290:return Q0A(h,u);case 283:case 282:return j3e(h,u)}return;function $(DA){return Wu(DA,u)}}function LD(n){var u=A.findAncestor(n,function(h){return!!h.inferenceContext});return u&&u.inferenceContext}function j3e(n,u){return A.isJsxOpeningElement(n)&&n.parent.contextualType&&u!==4?n.parent.contextualType:YZ(n,0)}function H9(n,u){return emA(u)!==0?W3e(n,u):V3e(n,u)}function W3e(n,u){var h=m$(n,He);h=m0A(u,jD(u),h);var D=u0(sA.IntrinsicAttributes,u);return $n(D)||(h=HB(D,h)),h}function J3e(n,u){if(n.compositeSignatures){for(var h=[],D=0,w=n.compositeSignatures;D=2){var DA=Pg([R,h],$,2,A.isInJSFile(n));return hm(D,DA)}}if(A.length(w.typeParameters)>=2){var DA=Pg([R,h],w.typeParameters,2,A.isInJSFile(n));return qf(w,DA)}}return h}function V3e(n,u){var h=jD(u),D=p7e(h),w=D===void 0?m$(n,He):D===""?No(n):J3e(n,D);if(!w)return D&&A.length(u.attributes.properties)&&pr(u,A.Diagnostics.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,A.unescapeLeadingUnderscores(D)),He;if(w=m0A(u,h,w),Ha(w))return w;var R=w,$=u0(sA.IntrinsicClassAttributes,u);if(!$n($)){var DA=Tp($.symbol),OA=No(n),WA=void 0;if(DA){var Be=Pg([OA],DA,Ng(DA),A.isInJSFile(u));WA=Kn($,Ou(DA,Be))}else WA=$;R=HB(WA,R)}var fe=u0(sA.IntrinsicAttributes,u);return $n(fe)||(R=HB(fe,R)),R}function z3e(n){return A.getStrictOptionValue(tA,"noImplicitAny")?A.reduceLeft(n,function(u,h){return u===h||!u?u:X2(u.typeParameters,h.typeParameters)?Z3e(u,h):void 0}):void 0}function K3e(n,u,h){if(!n||!u)return n||u;var D=Br([li(n),Kn(li(u),h)]);return A4(n,D)}function X3e(n,u,h){for(var D=tg(n),w=tg(u),R=D>=w?n:u,$=R===n?u:n,DA=R===n?D:w,OA=SE(n)||SE(u),WA=OA&&!SE(R),Be=new Array(DA+(WA?1:0)),fe=0;fe=HE(R)&&fe>=HE($),Wr=fe>=D?void 0:Nv(n,fe),ht=fe>=w?void 0:Nv(u,fe),Dt=Wr===ht?Wr:Wr?ht?void 0:Wr:ht,$t=Za(1|(At&&!yr?16777216:0),Dt||"arg".concat(fe));$t.type=yr?el(sr):sr,Be[fe]=$t}if(WA){var Ei=Za(1,"args");Ei.type=el(ap($,DA)),$===u&&(Ei.type=Kn(Ei.type,h)),Be[DA]=Ei}return Be}function Z3e(n,u){var h=n.typeParameters||u.typeParameters,D;n.typeParameters&&u.typeParameters&&(D=Ou(u.typeParameters,n.typeParameters));var w=n.declaration,R=X3e(n,u,D),$=K3e(n.thisParameter,u.thisParameter,D),DA=Math.max(n.minArgumentCount,u.minArgumentCount),OA=$d(w,h,$,R,void 0,void 0,DA,(n.flags|u.flags)&39);return OA.compositeKind=2097152,OA.compositeSignatures=A.concatenate(n.compositeKind===2097152&&n.compositeSignatures||[n],[u]),D&&(OA.mapper=n.compositeKind===2097152&&n.mapper&&n.compositeSignatures?uQ(n.mapper,D):D),OA}function jZ(n,u){var h=ia(n,0),D=A.filter(h,function(w){return!$3e(w,u)});return D.length===1?D[0]:z3e(D)}function $3e(n,u){for(var h=0;h0&&($=r0($,Na(),n.symbol,sr,WA),R=[],w=A.createSymbolTable(),At=!1,Wr=!1,ht=!1);var Sa=Wi(fa(un.expression));if(cO(Sa)){var En=NX(Sa,WA);if(D&&y0A(En,D,un),rn=R.length,$n($))continue;$=r0($,En,n.symbol,sr,WA)}else pr(un,A.Diagnostics.Spread_types_may_only_be_created_from_object_types),$=HA;continue}else A.Debug.assert(un.kind===174||un.kind===175),Wv(un);Ca&&!(Ca.flags&8576)?uo(Ca,Yr)&&(uo(Ca,Et)?Wr=!0:uo(Ca,JA)?ht=!0:At=!0,h&&(yr=!0)):w.set(ma.escapedName,ma),R.push(ma)}if(OA){var zn=A.findAncestor(DA.pattern.parent,function(Pa){return Pa.kind===257||Pa.kind===223||Pa.kind===166}),xi=A.findAncestor(n,function(Pa){return Pa===zn||Pa.kind===301});if(xi.kind!==301)for(var Oa=0,Aa=co(DA);Oa0&&($=r0($,Na(),n.symbol,sr,WA),R=[],w=A.createSymbolTable(),At=!1,Wr=!1),ks($,function(Pa){return Pa===Mi?Na():Pa});return Na();function Na(){var Pa=[];At&&Pa.push(JZ(n,rn,R,Pr)),Wr&&Pa.push(JZ(n,rn,R,Et)),ht&&Pa.push(JZ(n,rn,R,JA));var vr=Vo(n.symbol,w,A.emptyArray,A.emptyArray,Pa);return vr.objectFlags|=sr|128|131072,Qe&&(vr.objectFlags|=4096),yr&&(vr.objectFlags|=512),h&&(vr.pattern=n),vr}}function cO(n){var u=_QA(ks(n,Jf));return!!(u.flags&126615553||u.flags&3145728&&A.every(u.types,cO))}function a7e(n){XZ(n)}function o7e(n,u){return Wv(n),lO(n)||UA}function s7e(n){XZ(n.openingElement),Fv(n.closingElement.tagName)?zZ(n.closingElement):fa(n.closingElement.tagName),S9(n)}function c7e(n,u){return Wv(n),lO(n)||UA}function l7e(n){XZ(n.openingFragment);var u=A.getSourceFileOfNode(n);return A.getJSXTransformEnabled(tA)&&(tA.jsxFactory||u.pragmas.has("jsx"))&&!tA.jsxFragmentFactory&&!u.pragmas.has("jsxfrag")&&pr(n,tA.jsxFactory?A.Diagnostics.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:A.Diagnostics.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),S9(n),lO(n)||UA}function VZ(n){return A.stringContains(n,"-")}function Fv(n){return n.kind===79&&A.isIntrinsicJsxName(n.escapedText)}function v0A(n,u){return n.initializer?Gv(n.initializer,u):ei}function u7e(n,u){for(var h=n.attributes,D=Wu(h,0),w=TA?A.createSymbolTable():void 0,R=A.createSymbolTable(),$=yt,DA=!1,OA,WA=!1,Be=2048,fe=F9(jD(n)),me=0,Qe=h.properties;me0&&($=r0($,un(),h.symbol,Be,!1),R=A.createSymbolTable());var At=Wi(sc(sr.expression,u));Ha(At)&&(DA=!0),cO(At)?($=r0($,At,h.symbol,Be,!1),w&&y0A(At,w,sr)):(pr(sr.expression,A.Diagnostics.Spread_types_may_only_be_created_from_object_types),OA=OA?xa([OA,At]):At)}}DA||R.size>0&&($=r0($,un(),h.symbol,Be,!1));var Dt=n.parent.kind===281?n.parent:void 0;if(Dt&&Dt.openingElement===n&&Dt.children.length>0){var $t=S9(Dt,u);if(!DA&&fe&&fe!==""){WA&&pr(h,A.Diagnostics._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,A.unescapeLeadingUnderscores(fe));var Ei=l0(n.attributes,void 0),rn=Ei&&Cm(Ei,fe),Fi=Za(4,fe);Fi.type=$t.length===1?$t[0]:rn&&Zf(rn,TD)?tp($t):el(Br($t)),Fi.valueDeclaration=A.factory.createPropertySignature(void 0,A.unescapeLeadingUnderscores(fe),void 0,void 0),A.setParent(Fi.valueDeclaration,h),Fi.valueDeclaration.symbol=Fi;var Qa=A.createSymbolTable();Qa.set(fe,Fi),$=r0($,Vo(h.symbol,Qa,A.emptyArray,A.emptyArray,A.emptyArray),h.symbol,Be,!1)}}if(DA)return UA;if(OA&&$!==yt)return xa([OA,$]);return OA||($===yt?un():$);function un(){Be|=be;var ma=Vo(h.symbol,R,A.emptyArray,A.emptyArray,A.emptyArray);return ma.objectFlags|=Be|128|131072,ma}}function S9(n,u){for(var h=[],D=0,w=n.children;D1&&h.declarations&&pr(h.declarations[0],A.Diagnostics.The_global_type_JSX_0_may_not_have_more_than_one_property,A.unescapeLeadingUnderscores(n))}}function d7e(n){return n&&gu(n.exports,sA.LibraryManagedAttributes,788968)}function p7e(n){return C0A(sA.ElementAttributesPropertyNameContainer,n)}function F9(n){return C0A(sA.ElementChildrenAttributeNameContainer,n)}function I0A(n,u){if(n.flags&4)return[hs];if(n.flags&128){var h=b0A(n,u);if(h){var D=W9(u,h);return[D]}else return pr(u,A.Diagnostics.Property_0_does_not_exist_on_type_1,n.value,"JSX."+sA.IntrinsicElements),A.emptyArray}var w=vA(n),R=ia(w,1);return R.length===0&&(R=ia(w,0)),R.length===0&&w.flags&1048576&&(R=dv(A.map(w.types,function($){return I0A($,u)}))),R}function b0A(n,u){var h=u0(sA.IntrinsicElements,u);if(!$n(h)){var D=n.value,w=mn(h,A.escapeLeadingUnderscores(D));if(w)return li(w);var R=Lu(h,Pr);return R||void 0}return UA}function E7e(n,u,h){if(n===1){var D=k0A(h);D&&Gp(u,D,ta,h.tagName,A.Diagnostics.Its_return_type_0_is_not_a_valid_JSX_element,$)}else if(n===0){var w=M0A(h);w&&Gp(u,w,ta,h.tagName,A.Diagnostics.Its_instance_type_0_is_not_a_valid_JSX_element,$)}else{var D=k0A(h),w=M0A(h);if(!D||!w)return;var R=Br([D,w]);Gp(u,R,ta,h.tagName,A.Diagnostics.Its_element_type_0_is_not_a_valid_JSX_element,$)}function $(){var DA=A.getTextOfNode(h.tagName);return A.chainDiagnosticMessages(void 0,A.Diagnostics._0_cannot_be_used_as_a_JSX_component,DA)}}function O0A(n){A.Debug.assert(Fv(n.tagName));var u=qi(n);if(!u.resolvedJsxElementAttributesType){var h=zZ(n);return u.jsxFlags&1?u.resolvedJsxElementAttributesType=li(h)||HA:u.jsxFlags&2?u.resolvedJsxElementAttributesType=Lu(u0(sA.IntrinsicElements,n),Pr)||HA:u.resolvedJsxElementAttributesType=HA}return u.resolvedJsxElementAttributesType}function M0A(n){var u=u0(sA.ElementClass,n);if(!$n(u))return u}function lO(n){return u0(sA.Element,n)}function k0A(n){var u=lO(n);if(u)return Br([u,Lr])}function f7e(n){var u=u0(sA.IntrinsicElements,n);return u?co(u):A.emptyArray}function B7e(n){(tA.jsx||0)===0&&pr(n,A.Diagnostics.Cannot_use_JSX_unless_the_jsx_flag_is_provided),lO(n)===void 0&&Ae&&pr(n,A.Diagnostics.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist)}function XZ(n){var u=A.isJsxOpeningLikeElement(n);if(u&&jke(n),B7e(n),!KZ(n)){var h=xA&&tA.jsx===2?A.Diagnostics.Cannot_find_name_0:void 0,D=Us(n),w=u?n.tagName:n,R=void 0;if(A.isJsxOpeningFragment(n)&&D==="null"||(R=Hs(w,D,111551,h,D,!0)),R&&(R.isReferenced=67108863,R.flags&2097152&&!Rl(R)&&Ru(R)),A.isJsxOpeningFragment(n)){var $=A.getSourceFileOfNode(n),DA=xl($);DA&&Hs(w,DA,111551,h,DA,!0)}}if(u){var OA=n,WA=JD(OA);q9(WA,n),E7e(emA(OA),No(WA),OA)}}function ZZ(n,u,h){if(n.flags&524288){if(Wf(n,u)||_h(n,u)||jf(u)&&hg(n,Pr)||h&&VZ(u))return!0}else if(n.flags&3145728&&uO(n))for(var D=0,w=n.types;D=1&&uo(h,ap(OA,0))}return!1}var w=A.isAssignmentTarget(u)?"set":"get";if(D(w)){var R=A.tryGetPropertyAccessOrIdentifierToString(u.expression);return R===void 0?R=w:R+="."+w,R}}function R7e(n,u){var h=u.types.filter(function(D){return!!(D.flags&128)});return A.getSpellingSuggestion(n.value,h,function(D){return D.value})}function gO(n,u,h){return A.getSpellingSuggestion(n,u,D);function D(w){var R=A.symbolName(w);if(!A.startsWith(R,'"')){if(w.flags&h)return R;if(w.flags&2097152){var $=ss(w);if($&&$.flags&h)return R}}}}function dO(n,u,h){var D=n&&n.flags&106500&&n.valueDeclaration;if(D){var w=A.hasEffectiveModifier(D,8),R=n.valueDeclaration&&A.isNamedDeclaration(n.valueDeclaration)&&A.isPrivateIdentifier(n.valueDeclaration.name);if(!(!w&&!R)&&!(u&&A.isWriteOnlyAccess(u)&&!(n.flags&65536))){if(h){var $=A.findAncestor(u,A.isFunctionLikeDeclaration);if($&&$.symbol===n)return}(A.getCheckFlags(n)&1?Tn(n).target:n).isReferenced=67108863}}}function J0A(n,u){return n.kind===108||!!u&&A.isEntityNameExpression(n)&&u===kd(A.getFirstIdentifier(n))}function T7e(n,u){switch(n.kind){case 208:return s$(n,n.expression.kind===106,u,rg(fa(n.expression)));case 163:return s$(n,!1,u,rg(fa(n.left)));case 202:return s$(n,!1,u,Mn(n))}}function q0A(n,u,h){return c$(n,n.kind===208&&n.expression.kind===106,!1,u,h)}function s$(n,u,h,D){if(Ha(D))return!0;var w=mn(D,h);return!!w&&c$(n,u,!1,D,w)}function c$(n,u,h,D,w){if(Ha(D))return!0;if(w.valueDeclaration&&A.isPrivateIdentifierClassElementDeclaration(w.valueDeclaration)){var R=A.getContainingClass(w.valueDeclaration);return!A.isOptionalChain(n)&&!!A.findAncestor(n,function($){return $===R})}return x0A(n,u,h,D,w)}function N7e(n){var u=n.initializer;if(u.kind===258){var h=u.declarations[0];if(h&&!A.isBindingPattern(h.name))return hi(h)}else if(u.kind===79)return kd(u)}function P7e(n){return Vs(n).length===1&&!!hg(n,Et)}function G7e(n){var u=A.skipParentheses(n);if(u.kind===79){var h=kd(u);if(h.flags&3)for(var D=n,w=n.parent;w;){if(w.kind===246&&D===w.statement&&N7e(w)===h&&P7e(fl(w.expression)))return!0;D=w,w=w.parent}}return!1}function Y7e(n,u){return n.flags&32?U7e(n,u):V0A(n,Rv(n.expression),u)}function U7e(n,u){var h=fa(n.expression),D=MC(h,n.expression);return p9(V0A(n,Yp(D,n.expression),u),n,D!==h)}function V0A(n,u,h){var D=A.getAssignmentTargetKind(n)!==0||N0A(n)?rg(u):u,w=n.argumentExpression,R=fa(w);if($n(D)||D===Gr)return D;if(w$(D)&&!A.isStringLiteralLike(w))return pr(w,A.Diagnostics.A_const_enum_member_can_only_be_accessed_using_a_string_literal),HA;var $=G7e(w)?Et:R,DA=A.isAssignmentTarget(n)?4|(e0(D)&&!A.isThisTypeParameter(D)?2:0):32,OA=aQ(D,$,DA,n)||HA;return XmA(G0A(n,qi(n).resolvedSymbol,OA,w,h),n)}function z0A(n){return A.isCallOrNewExpression(n)||A.isTaggedTemplateExpression(n)||A.isJsxOpeningLikeElement(n)}function WD(n){return z0A(n)&&A.forEach(n.typeArguments,to),n.kind===212?fa(n.template):A.isJsxOpeningLikeElement(n)?fa(n.attributes):n.kind!==167&&A.forEach(n.arguments,function(u){fa(u)}),hs}function xE(n){return WD(n),Va}function L7e(n,u,h){var D,w,R=0,$,DA=-1,OA;A.Debug.assert(!u.length);for(var WA=0,Be=n;WA=0)return Be>=HE(h)&&(SE(h)||Be$)return!1;if(R||w>=DA)return!0;for(var fe=w;fe=D&&u.length<=h}function r4(n){return NC(n,0,!1)}function X0A(n){return NC(n,0,!1)||NC(n,1,!1)}function NC(n,u,h){if(n.flags&524288){var D=Bg(n);if(h||D.properties.length===0&&D.indexInfos.length===0){if(u===0&&D.callSignatures.length===1&&D.constructSignatures.length===0)return D.callSignatures[0];if(u===1&&D.constructSignatures.length===1&&D.callSignatures.length===0)return D.constructSignatures[0]}}}function Z0A(n,u,h,D){var w=xC(n.typeParameters,n,0,D),R=YC(u),$=h&&(R&&R.flags&262144?h.nonFixingMapper:h.mapper),DA=$?RD(u,$):u;return gZ(DA,n,function(OA,WA){Xf(w.inferences,OA,WA)}),h||dZ(u,n,function(OA,WA){Xf(w.inferences,OA,WA,128)}),CD(n,IZ(w),A.isInJSFile(u.declaration))}function W7e(n,u,h,D){var w=H9(u,n),R=qD(n.attributes,w,D,h);return Xf(D.inferences,R,w),IZ(D)}function $0A(n){if(!n)return Ve;var u=fa(n);return A.isOptionalChainRoot(n.parent)?GB(u):A.isOptionalChain(n.parent)?cZ(u):u}function u$(n,u,h,D,w){if(A.isJsxOpeningLikeElement(n))return W7e(n,u,D,w);if(n.kind!==167){var R=A.every(u.typeParameters,function(ma){return!!bd(ma)}),$=Wu(n,R?8:0);if($){var DA=No(u);if(_m(DA)){var OA=LD(n),WA=!R&&Wu(n,8)!==$;if(!WA){var Be=fZ(E5e(OA,1)),fe=Kn($,Be),me=r4(fe),Qe=me&&me.typeParameters?W1(v7(me,me.typeParameters)):fe;Xf(w.inferences,Qe,DA,128)}var sr=xC(u.typeParameters,u,w.flags),yr=Kn($,OA&&OA.returnMapper);Xf(sr.inferences,yr,DA),w.returnMapper=A.some(sr.inferences,VD)?fZ(Q5e(sr)):void 0}}}var At=UC(u),Wr=At?Math.min(tg(u)-1,h.length):h.length;if(At&&At.flags&262144){var ht=A.find(w.inferences,function(ma){return ma.typeParameter===At});ht&&(ht.impliedArity=A.findIndex(h,Y9,Wr)<0?h.length-Wr:void 0)}var Dt=pf(u);if(Dt&&_m(Dt)){var $t=rmA(n);Xf(w.inferences,$0A($t),Dt)}for(var Ei=0;Ei=h-1){var $=n[h-1];if(Y9($))return AmA($.kind===234?$.type:qD($.expression,D,w,R))}for(var DA=[],OA=[],WA=[],Be=u;Beht&&(ht=Ca)}}if(!Wr)return!0;for(var Sa=1/0,So=0,Fo=me;So0||A.isJsxOpeningElement(n)&&n.parent.children.length>0?[n.attributes]:A.emptyArray;var D=n.arguments||A.emptyArray,w=U9(D);if(w>=0){for(var R=D.slice(0,w),$=function(OA){var WA=D[OA],Be=WA.kind===227&&(Kc?fa(WA.expression):sc(WA.expression));Be&&$a(Be)?A.forEach(Po(Be),function(fe,me){var Qe,sr=Be.target.elementFlags[me],yr=g0(WA,sr&4?el(fe):fe,!!(sr&12),(Qe=Be.target.labeledElementDeclarations)===null||Qe===void 0?void 0:Qe[me]);R.push(yr)}):R.push(WA)},DA=w;DA-1)return A.createDiagnosticForNode(h[w],A.Diagnostics.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);for(var R=Number.POSITIVE_INFINITY,$=Number.NEGATIVE_INFINITY,DA=Number.NEGATIVE_INFINITY,OA=Number.POSITIVE_INFINITY,WA,Be=0,fe=u;BeDA&&(DA=Qe),h.lengthD?OA=Math.min(OA,fe):$1&&(ht=ui(fe,Ji,Qe,Dt)),ht||(ht=ui(fe,ta,Qe,Dt)),ht)return ht;if(ht=K7e(n,fe,me,!!h,D),qi(n).resolvedSignature=ht,WA)if(yr)if(yr.length===1||yr.length>3){var $t=yr[yr.length-1],Ei;yr.length>3&&(Ei=A.chainDiagnosticMessages(Ei,A.Diagnostics.The_last_overload_gave_the_following_error),Ei=A.chainDiagnosticMessages(Ei,A.Diagnostics.No_overload_matches_this_call));var rn=pO(n,me,$t,ta,0,!0,function(){return Ei});if(rn)for(var Fi=0,Qa=rn;Fi3&&A.addRelatedInfo(un,A.createDiagnosticForNode($t.declaration,A.Diagnostics.The_last_overload_is_declared_here)),Ne($t,un),xA.add(un)}else A.Debug.fail("No error for last overload signature")}else{for(var ma=[],Ca=0,Sa=Number.MAX_VALUE,So=0,Fo=0,bo=function(Rt){var Si=function(){return A.chainDiagnosticMessages(void 0,A.Diagnostics.Overload_0_of_1_2_gave_the_following_error,Fo+1,fe.length,ll(Rt))},Ai=pO(n,me,Rt,ta,0,!0,Si);Ai?(Ai.length<=Sa&&(Sa=Ai.length,So=Fo),Ca=Math.max(Ca,Ai.length),ma.push(Ai)):A.Debug.fail("No error for 3 or fewer overload signatures"),Fo++},na=0,St=yr;na1?ma[So]:A.flatten(ma);A.Debug.assert(zi.length>0,"No errors reported for 3 or fewer overload signatures");var En=A.chainDiagnosticMessages(A.map(zi,A.createDiagnosticMessageChainFromDiagnostic),A.Diagnostics.No_overload_matches_this_call),zn=dt([],A.flatMap(zi,function(Rt){return Rt.relatedInformation}),!0),xi=void 0;if(A.every(zi,function(Rt){return Rt.start===zi[0].start&&Rt.length===zi[0].length&&Rt.file===zi[0].file})){var Oa=zi[0],Aa=Oa.file,Na=Oa.start,Pa=Oa.length;xi={file:Aa,start:Na,length:Pa,code:En.code,category:En.category,messageText:En,relatedInformation:zn}}else xi=A.createDiagnosticForNodeFromMessageChain(n,En,zn);Ne(yr[0],xi),xA.add(xi)}else if(At)xA.add(nmA(n,[At],me));else if(Wr)d$(Wr,n.typeArguments,!0,R);else{var vr=A.filter(u,function(Rt){return l$(Rt,Be)});vr.length===0?xA.add(z7e(n,u,Be)):DA?R&&xA.add(EO(n,R)):xA.add(nmA(n,vr,me))}return ht;function Ne(Rt,Si){var Ai,gi,nn=yr,dr=At,st=Wr,Qt=((gi=(Ai=Rt.declaration)===null||Ai===void 0?void 0:Ai.symbol)===null||gi===void 0?void 0:gi.declarations)||A.emptyArray,qt=Qt.length>1,Vt=qt?A.find(Qt,function(Hn){return A.isFunctionLikeDeclaration(Hn)&&A.nodeIsPresent(Hn.body)}):void 0;if(Vt){var Oi=mo(Vt),dn=!Oi.typeParameters;ui([Oi],ta,dn)&&A.addRelatedInfo(Si,A.createDiagnosticForNode(Vt,A.Diagnostics.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}yr=nn,At=dr,Wr=st}function ui(Rt,Si,Ai,gi){if(gi===void 0&&(gi=!1),yr=void 0,At=void 0,Wr=void 0,Ai){var nn=Rt[0];if(A.some(Be)||!L9(n,me,nn,gi))return;if(pO(n,me,nn,Si,0,!1,void 0)){yr=[nn];return}return nn}for(var dr=0;dr0),Wv(n),D||u.length===1||u.some(function(R){return!!R.typeParameters})?$7e(n,u,h,w):X7e(u)}function X7e(n){var u=A.mapDefined(n,function(me){return me.thisParameter}),h;u.length&&(h=amA(u,u.map(PC)));for(var D=A.minAndMax(n,Z7e),w=D.min,R=D.max,$=[],DA=function(me){var Qe=A.mapDefined(n,function(sr){return BA(sr)?meu.length;)D.pop();for(;D.length=u)return w;$>D&&(D=$,h=w)}return h}function tOe(n,u,h){if(n.expression.kind===106){var D=TZ(n.expression);if(Ha(D)){for(var w=0,R=n.arguments;w=0&&pr(n.arguments[D],A.Diagnostics.Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher)}var w=Rv(n.expression);if(w===Gr)return ze;if(w=vA(w),$n(w))return xE(n);if(Ha(w))return n.typeArguments&&pr(n,A.Diagnostics.Untyped_function_calls_may_not_accept_type_arguments),WD(n);var R=ia(w,1);if(R.length){if(!aOe(n,R[0]))return xE(n);if(smA(R,function(WA){return!!(WA.flags&4)}))return pr(n,A.Diagnostics.Cannot_create_an_instance_of_an_abstract_class),xE(n);var $=w.symbol&&A.getClassLikeDeclarationOfSymbol(w.symbol);return $&&A.hasSyntacticModifier($,256)?(pr(n,A.Diagnostics.Cannot_create_an_instance_of_an_abstract_class),xE(n)):Tv(n,R,u,h,0)}var DA=ia(w,0);if(DA.length){var OA=Tv(n,DA,u,h,0);return Ae||(OA.declaration&&!Up(OA.declaration)&&No(OA)!==Ve&&pr(n,A.Diagnostics.Only_a_void_function_can_be_called_with_the_new_keyword),pf(OA)===Ve&&pr(n,A.Diagnostics.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),OA}return f$(n.expression,w,1),xE(n)}function smA(n,u){return A.isArray(n)?A.some(n,function(h){return smA(h,u)}):n.compositeKind===1048576?A.some(n.compositeSignatures,u):u(n)}function E$(n,u){var h=dc(u);if(!A.length(h))return!1;var D=h[0];if(D.flags&2097152){for(var w=D.types,R=pv(w),$=0,DA=0,OA=D.types;DA0;if(u.flags&1048576){for(var DA=u.types,OA=!1,WA=0,Be=DA;WA1?sc(n.arguments[1]):void 0,w=2;w=h-1)return u===h-1?w:el(ju(w,Et));for(var R=[],$=[],DA=[],OA=u;OA0&&(w=n.parameters.length-1+DA)}}if(w===void 0){if(!h&&n.flags&32)return 0;w=n.minArgumentCount}if(D)return w;for(var OA=w-1;OA>=0;OA--){var WA=ap(n,OA);if(El(WA,K0A).flags&131072)break;w=OA}n.resolvedMinArgumentCount=w}return n.resolvedMinArgumentCount}function SE(n){if(BA(n)){var u=li(n.parameters[n.parameters.length-1]);return!$a(u)||u.target.hasRestElement}return!1}function YC(n){if(BA(n)){var u=li(n.parameters[n.parameters.length-1]);if(!$a(u))return u;if(u.target.hasRestElement)return xD(u,u.target.fixedLength)}}function UC(n){var u=YC(n);return u&&!nd(u)&&!Ha(u)&&!(Wi(u).flags&131072)?u:void 0}function Q$(n){return m$(n,XA)}function m$(n,u){return n.parameters.length>0?ap(n,0):u}function COe(n,u,h){for(var D=n.parameters.length-(BA(n)?1:0),w=0;w0&&(R=Br(WA,2)):OA=XA;var Be=MOe(n,u),fe=Be.yieldTypes,me=Be.nextTypes;$=A.some(fe)?Br(fe,2):void 0,DA=A.some(me)?xa(me):void 0}else{var Qe=OmA(n,u);if(!Qe)return h&2?QO(n,XA):XA;if(Qe.length===0)return h&2?QO(n,Ve):Ve;R=Br(Qe,2)}if(R||$||DA){if($&&h9(n,$,3),R&&h9(n,R,1),DA&&h9(n,DA,2),R&&np(R)||$&&np($)||DA&&np(DA)){var sr=WZ(n),yr=sr?sr===mo(n)?w?void 0:R:k9(No(sr),n,void 0):void 0;w?($=sZ($,yr,0,D),R=sZ(R,yr,1,D),DA=sZ(DA,yr,2,D)):R=t5e(R,yr,D)}$&&($=rg($)),R&&(R=rg(R)),DA&&(DA=rg(DA))}return w?vmA($||XA,R||OA,DA||E0A(2,n)||He,D):D?hO(R||OA):R||OA}function vmA(n,u,h,D){var w=D?qr:$r,R=w.getGlobalGeneratorType(!1);if(n=w.resolveIterationType(n,void 0)||He,u=w.resolveIterationType(u,void 0)||He,h=w.resolveIterationType(h,void 0)||He,R===_a){var $=w.getGlobalIterableIteratorType(!1),DA=$!==_a?f1A($,w):void 0,OA=DA?DA.returnType:UA,WA=DA?DA.nextType:or;return uo(u,OA)&&uo(WA,h)?$!==_a?kD($,[n]):(w.getGlobalIterableIteratorType(!0),Mi):(w.getGlobalGeneratorType(!0),Mi)}return kD(R,[n,u,h])}function MOe(n,u){var h=[],D=[],w=(A.getFunctionFlags(n)&2)!==0;return A.forEachYieldExpression(n.body,function(R){var $=R.expression?fa(R.expression,u):Mr;A.pushIfUnique(h,ymA(R,$,UA,w));var DA;if(R.asteriskToken){var OA=nH($,w?19:17,R.expression);DA=OA&&OA.nextType}else DA=Wu(R,void 0);DA&&A.pushIfUnique(D,DA)}),{yieldTypes:h,nextTypes:D}}function ymA(n,u,h,D){var w=n.expression||n,R=n.asteriskToken?Mh(D?19:17,u,h,w):u;return D?t4(R,w,n.asteriskToken?A.Diagnostics.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:A.Diagnostics.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):R}function CmA(n,u,h){for(var D=0,w=0;w=u?h[w]:void 0;D|=R!==void 0?_.get(R)||32768:0}return D}function ImA(n){var u=qi(n);if(u.isExhaustive===void 0){u.isExhaustive=0;var h=kOe(n);u.isExhaustive===0&&(u.isExhaustive=h)}else u.isExhaustive===0&&(u.isExhaustive=!1);return u.isExhaustive}function kOe(n){if(n.expression.kind===218){var u=XQA(n);if(!u)return!1;var h=Jf(sc(n.expression.expression)),D=CmA(0,0,u);return h.flags&3?(556800&D)===556800:!Zf(h,function($){return(Jl($)&D)===D})}var w=sc(n.expression);if(!ND(w))return!1;var R=_9(n);return!R.length||A.some(R,A5e)?!1:K5e(ks(w,bu),R)}function bmA(n){return n.endFlowNode&&nO(n.endFlowNode)}function OmA(n,u){var h=A.getFunctionFlags(n),D=[],w=bmA(n),R=!1;if(A.forEachReturnStatement(n.body,function($){var DA=$.expression;if(DA){var OA=sc(DA,u&&u&-9);h&2&&(OA=Yv(VC(OA,!1,n,A.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))),OA.flags&131072&&(R=!0),A.pushIfUnique(D,OA)}else w=!0}),!(D.length===0&&!w&&(R||xOe(n))))return TA&&D.length&&w&&!(Up(n)&&D.some(function($){return $.symbol===n.symbol}))&&A.pushIfUnique(D,or),D}function xOe(n){switch(n.kind){case 215:case 216:return!0;case 171:return n.parent.kind===207;default:return!1}}function D$(n,u){_A(h);return;function h(){var D=A.getFunctionFlags(n),w=u&&aH(u,D);if(!(w&&Rs(w,16385))&&!(n.kind===170||A.nodeIsMissing(n.body)||n.body.kind!==238||!bmA(n))){var R=n.flags&512,$=A.getEffectiveReturnTypeNode(n)||n;if(w&&w.flags&131072)pr($,A.Diagnostics.A_function_returning_never_cannot_have_a_reachable_end_point);else if(w&&!R)pr($,A.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value);else if(w&&TA&&!uo(or,w))pr($,A.Diagnostics.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(tA.noImplicitReturns){if(!w){if(!R)return;var DA=No(mo(n));if(w1A(n,DA))return}pr($,A.Diagnostics.Not_all_code_paths_return_a_value)}}}}function MmA(n,u){if(A.Debug.assert(n.kind!==171||A.isObjectLiteralMethod(n)),Wv(n),A.isFunctionExpression(n)&&Lv(n,n.name),u&&u&4&&Md(n)){if(!A.getEffectiveReturnTypeNode(n)&&!A.hasContextSensitiveParameters(n)){var h=TC(n);if(h&&_m(No(h))){var D=qi(n);if(D.contextFreeType)return D.contextFreeType;var w=z9(n,u),R=$d(void 0,void 0,void 0,A.emptyArray,w,void 0,0,0),$=Vo(n.symbol,RA,[R],A.emptyArray,A.emptyArray);return $.objectFlags|=262144,D.contextFreeType=$}}return yo}var DA=fH(n);return!DA&&n.kind===215&&tAA(n),HOe(n,u),li(hi(n))}function HOe(n,u){var h=qi(n);if(!(h.flags&1024)){var D=TC(n);if(!(h.flags&1024)){h.flags|=1024;var w=A.firstOrUndefined(ia(li(hi(n)),0));if(!w)return;if(Md(n))if(D){var R=LD(n),$=void 0;if(u&&u&2){COe(w,D,R);var DA=YC(D);DA&&DA.flags&262144&&($=RD(D,R.nonFixingMapper))}$||($=R?RD(D,R.mapper):D),IOe(w,$)}else bOe(w);if(D&&!fm(n)&&!w.resolvedReturnType){var OA=z9(n,u);w.resolvedReturnType||(w.resolvedReturnType=OA)}jC(n)}}}function SOe(n){A.Debug.assert(n.kind!==171||A.isObjectLiteralMethod(n));var u=A.getFunctionFlags(n),h=fm(n);if(D$(n,h),n.body)if(A.getEffectiveReturnTypeNode(n)||No(mo(n)),n.body.kind===238)to(n.body);else{var D=fa(n.body),w=h&&aH(h,u);if(w)if((u&3)===2){var R=VC(D,!1,n.body,A.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);bh(R,w,n.body,n.body)}else bh(D,w,n.body,n.body)}}function K9(n,u,h,D){if(D===void 0&&(D=!1),!uo(u,Bt)){var w=D&&JC(u);return Bd(n,!!w&&uo(w,Bt),h),!1}return!0}function FOe(n){if(!A.isCallExpression(n)||!A.isBindableObjectDefinePropertyCall(n))return!1;var u=sc(n.arguments[2]),h=ya(u,"value");if(h){var D=mn(u,"writable"),w=D&&li(D);if(!w||w===Ot||w===_i)return!0;if(D&&D.valueDeclaration&&A.isPropertyAssignment(D.valueDeclaration)){var R=D.valueDeclaration.initializer,$=fa(R);if($===Ot||$===_i)return!0}return!1}var DA=mn(u,"set");return!DA}function op(n){return!!(A.getCheckFlags(n)&8||n.flags&4&&A.getDeclarationModifierFlagsFromSymbol(n)&64||n.flags&3&&R9(n)&2||n.flags&98304&&!(n.flags&65536)||n.flags&8||A.some(n.declarations,FOe))}function kmA(n,u,h){var D,w;if(h===0)return!1;if(op(u)){if(u.flags&4&&A.isAccessExpression(n)&&n.expression.kind===108){var R=A.getContainingFunction(n);if(!(R&&(R.kind===173||Up(R))))return!0;if(u.valueDeclaration){var $=A.isBinaryExpression(u.valueDeclaration),DA=R.parent===u.valueDeclaration.parent,OA=R===u.valueDeclaration.parent,WA=$&&((D=u.parent)===null||D===void 0?void 0:D.valueDeclaration)===R.parent,Be=$&&((w=u.parent)===null||w===void 0?void 0:w.valueDeclaration)===R,fe=DA||OA||WA||Be;return!fe}}return!0}if(A.isAccessExpression(n)){var me=A.skipParentheses(n.expression);if(me.kind===79){var Qe=qi(me).resolvedSymbol;if(Qe.flags&2097152){var sr=Ig(Qe);return!!sr&&sr.kind===271}}}return!1}function LC(n,u,h){var D=A.skipOuterExpressions(n,7);return D.kind!==79&&!A.isAccessExpression(D)?(pr(n,u),!1):D.flags&32?(pr(n,h),!1):!0}function ROe(n){fa(n.expression);var u=A.skipParentheses(n.expression);if(!A.isAccessExpression(u))return pr(u,A.Diagnostics.The_operand_of_a_delete_operator_must_be_a_property_reference),Xr;A.isPropertyAccessExpression(u)&&A.isPrivateIdentifier(u.name)&&pr(u,A.Diagnostics.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);var h=qi(u),D=Vu(h.resolvedSymbol);return D&&(op(D)&&pr(u,A.Diagnostics.The_operand_of_a_delete_operator_cannot_be_a_read_only_property),TOe(u,D)),Xr}function TOe(n,u){var h=li(u);TA&&!(h.flags&131075)&&!(Me?u.flags&16777216:Jl(h)&16777216)&&pr(n,A.Diagnostics.The_operand_of_a_delete_operator_must_be_optional)}function NOe(n){return fa(n.expression),Ue}function POe(n){return fa(n.expression),Mr}function GOe(n){var u=A.getContainingFunctionOrClassStaticBlock(n);if(u&&A.isClassStaticBlockDeclaration(u))pr(n,A.Diagnostics.Await_expression_cannot_be_used_inside_a_class_static_block);else if(!(n.flags&32768))if(A.isInTopLevelContext(n)){var h=A.getSourceFileOfNode(n);if(!Om(h)){var D=void 0;if(!A.isEffectiveExternalModule(h,tA)){D??(D=A.getSpanOfTokenAtPosition(h,n.pos));var w=A.createFileDiagnostic(h,D.start,D.length,A.Diagnostics.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module);xA.add(w)}switch(nA){case A.ModuleKind.Node16:case A.ModuleKind.NodeNext:if(h.impliedNodeFormat===A.ModuleKind.CommonJS){D??(D=A.getSpanOfTokenAtPosition(h,n.pos)),xA.add(A.createFileDiagnostic(h,D.start,D.length,A.Diagnostics.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));break}case A.ModuleKind.ES2022:case A.ModuleKind.ESNext:case A.ModuleKind.System:if(N>=4)break;default:D??(D=A.getSpanOfTokenAtPosition(h,n.pos)),xA.add(A.createFileDiagnostic(h,D.start,D.length,A.Diagnostics.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_or_nodenext_and_the_target_option_is_set_to_es2017_or_higher));break}}}else{var h=A.getSourceFileOfNode(n);if(!Om(h)){var D=A.getSpanOfTokenAtPosition(h,n.pos),w=A.createFileDiagnostic(h,D.start,D.length,A.Diagnostics.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules);if(u&&u.kind!==173&&!(A.getFunctionFlags(u)&2)){var R=A.createDiagnosticForNode(u,A.Diagnostics.Did_you_mean_to_mark_this_function_as_async);A.addRelatedInfo(w,R)}xA.add(w)}}PZ(n)&&pr(n,A.Diagnostics.await_expressions_cannot_be_used_in_a_parameter_initializer)}function YOe(n){_A(function(){return GOe(n)});var u=fa(n.expression),h=VC(u,!0,n,A.Diagnostics.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return h===u&&!$n(h)&&!(u.flags&3)&&fd(!1,A.createDiagnosticForNode(n,A.Diagnostics.await_has_no_effect_on_the_type_of_this_expression)),h}function UOe(n){var u=fa(n.operand);if(u===Gr)return Gr;switch(n.operand.kind){case 8:switch(n.operator){case 40:return FD(ME(-n.operand.text));case 39:return FD(ME(+n.operand.text))}break;case 9:if(n.operator===40)return FD(Xx({negative:!0,base10Value:A.parsePseudoBigInt(n.operand.text)}))}switch(n.operator){case 39:case 40:case 54:return Yp(u,n.operand),mO(u,12288)&&pr(n.operand,A.Diagnostics.The_0_operator_cannot_be_applied_to_type_symbol,A.tokenToString(n.operator)),n.operator===39?(mO(u,2112)&&pr(n.operand,A.Diagnostics.Operator_0_cannot_be_applied_to_type_1,A.tokenToString(n.operator),si(kE(u))),Et):_$(u);case 53:zD(n.operand);var h=Jl(u)&12582912;return h===4194304?Ot:h===8388608?ei:Xr;case 45:case 46:var D=K9(n.operand,Yp(u,n.operand),A.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type);return D&&LC(n.operand,A.Diagnostics.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,A.Diagnostics.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),_$(u)}return HA}function LOe(n){var u=fa(n.operand);if(u===Gr)return Gr;var h=K9(n.operand,Yp(u,n.operand),A.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type);return h&&LC(n.operand,A.Diagnostics.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,A.Diagnostics.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),_$(u)}function _$(n){return Rs(n,2112)?Mc(n,3)||Rs(n,296)?Bt:Zt:Et}function mO(n,u){if(Rs(n,u))return!0;var h=Jf(n);return!!h&&Rs(h,u)}function Rs(n,u){if(n.flags&u)return!0;if(n.flags&3145728)for(var h=n.types,D=0,w=h;D1&&u.charCodeAt(h-1)>=48&&u.charCodeAt(h-1)<=57;)h--;for(var D=u.slice(0,h),w=1;;w++){var R=D+w;if(!I$(n,R))return R}}function YmA(n){var u=r4(n);if(u&&!u.typeParameters)return No(u)}function u6e(n){var u=fa(n.expression),h=MC(u,n.expression),D=YmA(u);return D&&p9(D,n,h!==u)}function fl(n){var u=UmA(n);if(u)return u;if(n.flags&134217728&&mi){var h=mi[eA(n)];if(h)return h}var D=ec,w=fa(n);if(ec!==D){var R=mi||(mi=[]);R[eA(n)]=w,A.setNodeFlags(n,n.flags|134217728)}return w}function UmA(n){var u=A.skipParentheses(n,!0);if(A.isJSDocTypeAssertion(u)){var h=A.getJSDocTypeAssertionType(u);if(!A.isConstTypeReference(h))return Mn(h)}if(u=A.skipParentheses(n),A.isCallExpression(u)&&u.expression.kind!==106&&!A.isRequireCall(u,!0)&&!umA(u)){var h=A.isCallChain(u)?u6e(u):YmA(Rv(u.expression));if(h)return h}else{if(A.isAssertionExpression(u)&&!A.isConstTypeReference(u.type))return Mn(u.type);if(n.kind===8||n.kind===10||n.kind===110||n.kind===95)return fa(n)}}function vO(n){var u=qi(n);if(u.contextFreeType)return u.contextFreeType;var h=n.contextualType;n.contextualType=UA;try{var D=u.contextFreeType=fa(n,4);return D}finally{n.contextualType=h}}function fa(n,u,h){A.tracing===null||A.tracing===void 0||A.tracing.push("check","checkExpression",{kind:n.kind,pos:n.pos,end:n.end,path:n.tracingPath});var D=ue;ue=n,KA=0;var w=p6e(n,u,h),R=PmA(n,w,u);return w$(R)&&g6e(n,R),ue=D,A.tracing===null||A.tracing===void 0||A.tracing.pop(),R}function g6e(n,u){var h=n.parent.kind===208&&n.parent.expression===n||n.parent.kind===209&&n.parent.expression===n||(n.kind===79||n.kind===163)&&uH(n)||n.parent.kind===183&&n.parent.exprName===n||n.parent.kind===278;if(h||pr(n,A.Diagnostics.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query),tA.isolatedModules){A.Debug.assert(!!(u.symbol.flags&128));var D=u.symbol.valueDeclaration;D.flags&16777216&&pr(n,A.Diagnostics.Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided)}}function d6e(n,u){if(A.hasJSDocNodes(n)&&A.isJSDocTypeAssertion(n)){var h=A.getJSDocTypeAssertionType(n);return BmA(h,h,n.expression,u)}return fa(n.expression,u)}function p6e(n,u,h){var D=n.kind;if(fA)switch(D){case 228:case 215:case 216:fA.throwIfCancellationRequested()}switch(D){case 79:return p3e(n,u);case 80:return y7e(n);case 108:return oO(n);case 106:return TZ(n);case 104:return gt;case 14:case 10:return FD(id(n.text));case 8:return oAA(n),FD(ME(+n.text));case 9:return uxe(n),FD(Xx({negative:!1,base10Value:A.parsePseudoBigInt(n.text)}));case 110:return ei;case 95:return Ot;case 225:return r6e(n);case 13:return Gs;case 206:return D0A(n,u,h);case 207:return n7e(n,u);case 208:return R0A(n,u);case 163:return T0A(n,u);case 209:return Y7e(n,u);case 210:if(n.expression.kind===100)return fOe(n);case 211:return EOe(n,u);case 212:return BOe(n);case 214:return d6e(n,u);case 228:return X8e(n);case 215:case 216:return MmA(n,u);case 218:return NOe(n);case 213:case 231:return hOe(n);case 232:return mOe(n);case 230:return hmA(n);case 235:return DOe(n);case 233:return _Oe(n);case 217:return ROe(n);case 219:return POe(n);case 220:return YOe(n);case 221:return UOe(n);case 222:return LOe(n);case 223:return Le(n,u);case 224:return e6e(n,u);case 227:return A7e(n,u);case 229:return Mr;case 226:return A6e(n);case 234:return e7e(n);case 291:return h7e(n,u);case 281:return c7e(n,u);case 282:return o7e(n,u);case 285:return l7e(n);case 289:return g7e(n,u);case 283:A.Debug.fail("Shouldn't ever directly check a JsxOpeningElement")}return HA}function LmA(n){e4A(n),n.expression&&il(n.expression,A.Diagnostics.Type_expected),to(n.constraint),to(n.default);var u=ln(hi(n));dl(u),vs(u)||pr(n.default,A.Diagnostics.Type_parameter_0_has_a_circular_default,si(u));var h=$c(u),D=bd(u);h&&D&&Bu(D,iu(Kn(h,i0(u,D)),D),n.default,A.Diagnostics.Type_0_does_not_satisfy_the_constraint_1),Wv(n),_A(function(){return jv(n.name,A.Diagnostics.Type_parameter_name_cannot_be_0)})}function E6e(n){if(A.isInterfaceDeclaration(n.parent)||A.isClassLike(n.parent)||A.isTypeAliasDeclaration(n.parent)){var u=ln(hi(n)),h=rZ(u);if(h){var D=hi(n.parent);if(A.isTypeAliasDeclaration(n.parent)&&!(A.getObjectFlags(Hi(D))&48))pr(n,A.Diagnostics.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);else if(h===32768||h===65536){A.tracing===null||A.tracing===void 0||A.tracing.push("checkTypes","checkTypeParameterDeferred",{parent:rl(Hi(D)),id:rl(u)});var w=K7(D,u,h===65536?Xo:oo),R=K7(D,u,h===65536?oo:Xo),$=u;MA=u,Bu(w,R,n,A.Diagnostics.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),MA=$,A.tracing===null||A.tracing===void 0||A.tracing.pop()}}}}function jmA(n){$f(n),tH(n);var u=A.getContainingFunction(n);A.hasSyntacticModifier(n,16476)&&(u.kind===173&&A.nodeIsPresent(u.body)||pr(n,A.Diagnostics.A_parameter_property_is_only_allowed_in_a_constructor_implementation),u.kind===173&&A.isIdentifier(n.name)&&n.name.escapedText==="constructor"&&pr(n.name,A.Diagnostics.constructor_cannot_be_used_as_a_parameter_property_name)),(n.questionToken||df(n))&&A.isBindingPattern(n.name)&&u.body&&pr(n,A.Diagnostics.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),n.name&&A.isIdentifier(n.name)&&(n.name.escapedText==="this"||n.name.escapedText==="new")&&(u.parameters.indexOf(n)!==0&&pr(n,A.Diagnostics.A_0_parameter_must_be_the_first_parameter,n.name.escapedText),(u.kind===173||u.kind===177||u.kind===182)&&pr(n,A.Diagnostics.A_constructor_cannot_have_a_this_parameter),u.kind===216&&pr(n,A.Diagnostics.An_arrow_function_cannot_have_a_this_parameter),(u.kind===174||u.kind===175)&&pr(n,A.Diagnostics.get_and_set_accessors_cannot_declare_this_parameters)),n.dotDotDotToken&&!A.isBindingPattern(n.name)&&!uo(Wi(li(n.symbol)),zc)&&pr(n,A.Diagnostics.A_rest_parameter_must_be_of_an_array_type)}function f6e(n){var u=B6e(n);if(!u){pr(n,A.Diagnostics.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}var h=mo(u),D=Yg(h);if(D){to(n.type);var w=n.parameterName;if(D.kind===0||D.kind===2)Zx(w);else if(D.parameterIndex>=0){if(BA(h)&&D.parameterIndex===h.parameters.length-1)pr(w,A.Diagnostics.A_type_predicate_cannot_reference_a_rest_parameter);else if(D.type){var R=function(){return A.chainDiagnosticMessages(void 0,A.Diagnostics.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type)};Bu(D.type,li(h.parameters[D.parameterIndex]),n.type,void 0,R)}}else if(w){for(var $=!1,DA=0,OA=u.parameters;DA0&&u.declarations[0]!==n)return}var h=Dx(hi(n));if(h?.declarations){for(var D=new A.Map,w=function(OA){OA.parameters.length===1&&OA.parameters[0].type&&vm(Mn(OA.parameters[0].type),function(WA){var Be=D.get(rl(WA));Be?Be.declarations.push(OA):D.set(rl(WA),{type:WA,declarations:[OA]})})},R=0,$=h.declarations;R<$.length;R++){var DA=$[R];w(DA)}D.forEach(function(OA){if(OA.declarations.length>1)for(var WA=0,Be=OA.declarations;WA1){var h=Tn(u);if(!h.typeParametersChecked){h.typeParametersChecked=!0;var D=ln(u),w=A.getDeclarationsOfKind(u,165);if(!C1A(w,[D],function(WA){return[WA]}))for(var R=Nn(u),$=0,DA=w;$0}function x$(n){var u;if(n.flags&16777216){var h=Iv(!1);return!!h&&n.aliasSymbol===h&&((u=n.aliasTypeArguments)===null||u===void 0?void 0:u.length)===1}return!1}function Yv(n){return n.flags&1048576?ks(n,Yv):x$(n)?n.aliasTypeArguments[0]:n}function $mA(n){if(Ha(n)||x$(n))return!1;if(e0(n)){var u=dl(n);if(u?u.flags&3||Kf(u)||Zf(u,ZmA):Rs(n,8650752))return!0}return!1}function W6e(n){var u=Iv(!0);if(u)return hm(u,[Yv(n)])}function J6e(n){if($mA(n)){var u=W6e(n);if(u)return u}return A.Debug.assert(qC(n)===void 0,"type provided should not be a non-generic 'promise'-like."),n}function t4(n,u,h,D){var w=UB(n,u,h,D);return w&&J6e(w)}function UB(n,u,h,D){if(Ha(n)||x$(n))return n;var w=n;if(w.awaitedTypeOfType)return w.awaitedTypeOfType;if(n.flags&1048576){if(rs.lastIndexOf(n.id)>=0){u&&pr(u,A.Diagnostics.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}var R=u?function(fe){return UB(fe,u,h,D)}:UB;rs.push(n.id);var $=ks(n,R);return rs.pop(),w.awaitedTypeOfType=$}if($mA(n))return w.awaitedTypeOfType=n;var DA={value:void 0},OA=qC(n,void 0,DA);if(OA){if(n.id===OA.id||rs.lastIndexOf(OA.id)>=0){u&&pr(u,A.Diagnostics.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}rs.push(n.id);var WA=UB(OA,u,h,D);return rs.pop(),WA?w.awaitedTypeOfType=WA:void 0}if(ZmA(n)){if(u){A.Debug.assertIsDefined(h);var Be=void 0;DA.value&&(Be=A.chainDiagnosticMessages(Be,A.Diagnostics.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,si(n),si(DA.value))),Be=A.chainDiagnosticMessages(Be,h,D),xA.add(A.createDiagnosticForNodeFromMessageChain(u,Be))}return}return w.awaitedTypeOfType=n}function q6e(n,u){var h=Mn(u);if(N>=2){if($n(h))return;var D=MD(!0);if(D!==_a&&!Zu(h,D)){pr(u,A.Diagnostics.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,si(UB(h)||Ve));return}}else{if(z6e(u),$n(h))return;var w=A.getEntityNameFromTypeNode(u);if(w===void 0){pr(u,A.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,si(h));return}var R=Ss(w,111551,!0),$=R?li(R):HA;if($n($)){w.kind===79&&w.escapedText==="Promise"&&wE(h)===MD(!1)?pr(u,A.Diagnostics.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):pr(u,A.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,A.entityNameToString(w));return}var DA=dX(!0);if(DA===Mi){pr(u,A.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,A.entityNameToString(w));return}if(!Bu($,DA,u,A.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value))return;var OA=w&&A.getFirstIdentifier(w),WA=gu(n.locals,OA.escapedText,111551);if(WA){pr(WA.valueDeclaration,A.Diagnostics.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,A.idText(OA),A.entityNameToString(w));return}}VC(h,!1,n,A.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)}function V6e(n){var u=JD(n);q9(u,n);var h=No(u);if(!(h.flags&1)){var D,w;switch(n.parent.kind){case 260:D=A.Diagnostics.Decorator_function_return_type_0_is_not_assignable_to_type_1;var R=hi(n.parent),$=li(R);w=Br([$,Ve]);break;case 169:case 166:D=A.Diagnostics.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any,w=Ve;break;case 171:case 174:case 175:D=A.Diagnostics.Decorator_function_return_type_0_is_not_assignable_to_type_1;var DA=i4(n.parent),OA=T7(DA);w=Br([OA,Ve]);break;default:return A.Debug.fail()}Bu(h,w,n,D)}}function z6e(n){A1A(n&&A.getEntityNameFromTypeNode(n),!1)}function A1A(n,u){if(n){var h=A.getFirstIdentifier(n),D=(n.kind===79?788968:1920)|2097152,w=Hs(h,h.escapedText,D,void 0,void 0,!0);if(w&&w.flags&2097152){if(td(w)&&!XC(oi(w))&&!Rl(w))Ru(w);else if(u&&tA.isolatedModules&&A.getEmitModuleKind(tA)>=A.ModuleKind.ES2015&&!td(w)&&!A.some(w.declarations,A.isTypeOnlyImportOrExportDeclaration)){var R=pr(n,A.Diagnostics.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled),$=A.find(w.declarations||A.emptyArray,_p);$&&A.addRelatedInfo(R,A.createDiagnosticForNode($,A.Diagnostics._0_was_imported_here,A.idText(h)))}}}}function Uv(n){var u=H$(n);u&&A.isEntityName(u)&&A1A(u,!0)}function H$(n){if(n)switch(n.kind){case 190:case 189:return e1A(n.types);case 191:return e1A([n.trueType,n.falseType]);case 193:case 199:return H$(n.type);case 180:return n.typeName}}function e1A(n){for(var u,h=0,D=n;h0),h.length>1&&pr(h[1],A.Diagnostics.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);var D=r1A(n.class.expression),w=A.getClassExtendsHeritageElement(u);if(w){var R=r1A(w.expression);R&&D.escapedText!==R.escapedText&&pr(D,A.Diagnostics.JSDoc_0_1_does_not_match_the_extends_2_clause,A.idText(n.tagName),A.idText(D),A.idText(R))}}function a8e(n){var u=A.getJSDocHost(n);u&&A.isPrivateIdentifierClassElementDeclaration(u)&&pr(n,A.Diagnostics.An_accessibility_modifier_cannot_be_used_with_a_private_identifier)}function r1A(n){switch(n.kind){case 79:return n;case 208:return n.name;default:return}}function t1A(n){var u;CO(n),jC(n);var h=A.getFunctionFlags(n);if(n.name&&n.name.kind===164&&YB(n.name),iQ(n)){var D=hi(n),w=n.localSymbol||D,R=(u=w.declarations)===null||u===void 0?void 0:u.find(function(WA){return WA.kind===n.kind&&!(WA.flags&262144)});n===R&&AH(w),D.parent&&AH(D)}var $=n.kind===170?void 0:n.body;if(to($),D$(n,fm(n)),_A(OA),A.isInJSFile(n)){var DA=A.getJSDocTypeTag(n);DA&&DA.typeExpression&&!jZ(Mn(DA.typeExpression),n)&&pr(DA.typeExpression.type,A.Diagnostics.The_type_of_a_function_declaration_must_match_the_function_s_signature)}function OA(){A.getEffectiveReturnTypeNode(n)||(A.nodeIsMissing($)&&!yO(n)&&o0(n,UA),h&1&&A.nodeIsPresent($)&&No(mo(n)))}}function Oh(n){_A(u);function u(){var h=A.getSourceFileOfNode(n),D=Xl.get(h.path);D||(D=[],Xl.set(h.path,D)),D.push(n)}}function i1A(n,u){for(var h=0,D=n;h=2||!A.hasRestParameter(n)||n.flags&16777216||A.nodeIsMissing(n.body)||A.forEach(n.parameters,function(u){u.name&&!A.isBindingPattern(u.name)&&u.name.escapedText===PA.escapedName&&Ed("noEmit",u,A.Diagnostics.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)})}function zC(n,u,h){if(u?.escapedText!==h||n.kind===169||n.kind===168||n.kind===171||n.kind===170||n.kind===174||n.kind===175||n.kind===299||n.flags&16777216||(A.isImportClause(n)||A.isImportEqualsDeclaration(n)||A.isImportSpecifier(n))&&A.isTypeOnlyImportOrExportDeclaration(n))return!1;var D=A.getRootDeclaration(n);return!(A.isParameter(D)&&A.nodeIsMissing(D.parent.body))}function d8e(n){A.findAncestor(n,function(u){if(XD(u)&4){var h=n.kind!==79;return h?pr(A.getNameOfDeclaration(n),A.Diagnostics.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):pr(n,A.Diagnostics.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0}return!1})}function p8e(n){A.findAncestor(n,function(u){if(XD(u)&8){var h=n.kind!==79;return h?pr(A.getNameOfDeclaration(n),A.Diagnostics.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):pr(n,A.Diagnostics.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0}return!1})}function E8e(n,u){if(!(nA>=A.ModuleKind.ES2015&&!(nA>=A.ModuleKind.Node16&&A.getSourceFileOfNode(n).impliedNodeFormat===A.ModuleKind.CommonJS))&&!(!u||!zC(n,u,"require")&&!zC(n,u,"exports"))&&!(A.isModuleDeclaration(n)&&A.getModuleInstanceState(n)!==1)){var h=wa(n);h.kind===308&&A.isExternalOrCommonJsModule(h)&&Ed("noEmit",u,A.Diagnostics.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,A.declarationNameToString(u),A.declarationNameToString(u))}}function f8e(n,u){if(!(!u||N>=4||!zC(n,u,"Promise"))&&!(A.isModuleDeclaration(n)&&A.getModuleInstanceState(n)!==1)){var h=wa(n);h.kind===308&&A.isExternalOrCommonJsModule(h)&&h.flags&2048&&Ed("noEmit",u,A.Diagnostics.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,A.declarationNameToString(u),A.declarationNameToString(u))}}function B8e(n,u){N<=8&&(zC(n,u,"WeakMap")||zC(n,u,"WeakSet"))&&Ms.push(n)}function h8e(n){var u=A.getEnclosingBlockScopeContainer(n);XD(u)&67108864&&(A.Debug.assert(A.isNamedDeclaration(n)&&A.isIdentifier(n.name)&&typeof n.name.escapedText=="string","The target of a WeakMap/WeakSet collision check should be an identifier"),Ed("noEmit",n,A.Diagnostics.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,n.name.escapedText))}function Q8e(n,u){u&&N>=2&&N<=8&&zC(n,u,"Reflect")&&qo.push(n)}function m8e(n){var u=!1;if(A.isClassExpression(n))for(var h=0,D=n.members;h1&&A.some(Qe.declarations,function(ht){return ht!==n&&A.isVariableLike(ht)&&!l1A(ht,n)})&&pr(n.name,A.Diagnostics.All_declarations_of_0_must_have_identical_modifiers,A.declarationNameToString(n.name))}else{var Wr=KC(wn(n));!$n(sr)&&!$n(Wr)&&!zf(sr,Wr)&&!(Qe.flags&67108864)&&c1A(Qe.valueDeclaration,sr,n,Wr),A.hasOnlyExpressionInitializer(n)&&n.initializer&&bh(sc(n.initializer),Wr,n,n.initializer,void 0),Qe.valueDeclaration&&!l1A(n,Qe.valueDeclaration)&&pr(n.name,A.Diagnostics.All_declarations_of_0_must_have_identical_modifiers,A.declarationNameToString(n.name))}n.kind!==169&&n.kind!==168&&(WC(n),(n.kind===257||n.kind===205)&&D8e(n),Lv(n,n.name))}}function c1A(n,u,h,D){var w=A.getNameOfDeclaration(h),R=h.kind===169||h.kind===168?A.Diagnostics.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:A.Diagnostics.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,$=A.declarationNameToString(w),DA=pr(w,R,$,si(u),si(D));n&&A.addRelatedInfo(DA,A.createDiagnosticForNode(n,A.Diagnostics._0_was_also_declared_here,$))}function l1A(n,u){if(n.kind===166&&u.kind===257||n.kind===257&&u.kind===166)return!0;if(A.hasQuestionToken(n)!==A.hasQuestionToken(u))return!1;var h=888;return A.getSelectedEffectiveModifierFlags(n,h)===A.getSelectedEffectiveModifierFlags(u,h)}function R$(n){A.tracing===null||A.tracing===void 0||A.tracing.push("check","checkVariableDeclaration",{kind:n.kind,pos:n.pos,end:n.end,path:n.tracingPath}),Axe(n),tH(n),A.tracing===null||A.tracing===void 0||A.tracing.pop()}function _8e(n){return Xke(n),tH(n)}function w8e(n){!$f(n)&&!aAA(n.declarationList)&&exe(n),A.forEach(n.declarationList.declarations,to)}function v8e(n){AB(n),fa(n.expression)}function y8e(n){AB(n);var u=zD(n.expression);T$(n.expression,u,n.thenStatement),to(n.thenStatement),n.thenStatement.kind===239&&pr(n.thenStatement,A.Diagnostics.The_body_of_an_if_statement_cannot_be_the_empty_statement),to(n.elseStatement)}function T$(n,u,h){if(!TA)return;for(D(n,h);A.isBinaryExpression(n)&&n.operatorToken.kind===56;)n=n.left,D(n,h);function D(w,R){var $=A.isBinaryExpression(w)&&(w.operatorToken.kind===56||w.operatorToken.kind===55)?w.right:w;if(!A.isModuleExportsAccessExpression($)){var DA=$===w?u:zD($),OA=A.isPropertyAccessExpression($)&&RmA($.expression);if(!(!(Jl(DA)&4194304)||OA)){var WA=ia(DA,0),Be=!!JC(DA);if(!(WA.length===0&&!Be)){var fe=A.isIdentifier($)?$:A.isPropertyAccessExpression($)?$.name:A.isBinaryExpression($)&&A.isIdentifier($.right)?$.right:void 0,me=fe&&xd(fe);if(!(!me&&!Be)){var Qe=me&&A.isBinaryExpression(w.parent)&&I8e(w.parent,me)||me&&R&&C8e(w,R,fe,me);Qe||(Be?Bd($,!0,A.Diagnostics.This_condition_will_always_return_true_since_this_0_is_always_defined,bB(DA)):pr($,A.Diagnostics.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead))}}}}}}function C8e(n,u,h,D){return!!A.forEachChild(u,function w(R){if(A.isIdentifier(R)){var $=xd(R);if($&&$===D){if(A.isIdentifier(n)||A.isIdentifier(h)&&A.isBinaryExpression(h.parent))return!0;for(var DA=h.parent,OA=R.parent;DA&&OA;){if(A.isIdentifier(DA)&&A.isIdentifier(OA)||DA.kind===108&&OA.kind===108)return xd(DA)===xd(OA);if(A.isPropertyAccessExpression(DA)&&A.isPropertyAccessExpression(OA)){if(xd(DA.name)!==xd(OA.name))return!1;OA=OA.expression,DA=DA.expression}else if(A.isCallExpression(DA)&&A.isCallExpression(OA))OA=OA.expression,DA=DA.expression;else return!1}}}return A.forEachChild(R,w)})}function I8e(n,u){for(;A.isBinaryExpression(n)&&n.operatorToken.kind===55;){var h=A.forEachChild(n.right,function D(w){if(A.isIdentifier(w)){var R=xd(w);if(R&&R===u)return!0}return A.forEachChild(w,D)});if(h)return!0;n=n.parent}return!1}function b8e(n){AB(n),to(n.statement),zD(n.expression)}function O8e(n){AB(n),zD(n.expression),to(n.statement)}function u1A(n,u){return n.flags&16384&&pr(u,A.Diagnostics.An_expression_of_type_void_cannot_be_tested_for_truthiness),n}function zD(n,u){return u1A(fa(n,u),n)}function M8e(n){AB(n)||n.initializer&&n.initializer.kind===258&&aAA(n.initializer),n.initializer&&(n.initializer.kind===258?A.forEach(n.initializer.declarations,R$):fa(n.initializer)),n.condition&&zD(n.condition),n.incrementor&&fa(n.incrementor),to(n.statement),n.locals&&Oh(n)}function k8e(n){a4A(n);var u=A.getContainingFunctionOrClassStaticBlock(n);if(n.awaitModifier)if(u&&A.isClassStaticBlockDeclaration(u))Jt(n.awaitModifier,A.Diagnostics.For_await_loops_cannot_be_used_inside_a_class_static_block);else{var h=A.getFunctionFlags(u);(h&6)===2&&N<99&&ql(n,16384)}else tA.downlevelIteration&&N<2&&ql(n,256);if(n.initializer.kind===258)g1A(n);else{var D=n.initializer,w=MO(n);if(D.kind===206||D.kind===207)bm(D,w||HA);else{var R=fa(D);LC(D,A.Diagnostics.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access,A.Diagnostics.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access),w&&bh(w,R,D,n.expression)}}to(n.statement),n.locals&&Oh(n)}function x8e(n){a4A(n);var u=e$(fa(n.expression));if(n.initializer.kind===258){var h=n.initializer.declarations[0];h&&A.isBindingPattern(h.name)&&pr(h.name,A.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern),g1A(n)}else{var D=n.initializer,w=fa(D);D.kind===206||D.kind===207?pr(D,A.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern):uo(NIe(u),w)?LC(D,A.Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access,A.Diagnostics.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access):pr(D,A.Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any)}(u===XA||!Mc(u,126091264))&&pr(n.expression,A.Diagnostics.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0,si(u)),to(n.statement),n.locals&&Oh(n)}function g1A(n){var u=n.initializer;if(u.declarations.length>=1){var h=u.declarations[0];R$(h)}}function MO(n){var u=n.awaitModifier?15:13;return Mh(u,Rv(n.expression),or,n.expression)}function Mh(n,u,h,D){return Ha(u)?u:N$(n,u,h,D,!0)||UA}function N$(n,u,h,D,w){var R=(n&2)!==0;if(u===XA){U$(D,u,R);return}var $=N>=2,DA=!$&&tA.downlevelIteration,OA=tA.noUncheckedIndexedAccess&&!!(n&128);if($||DA||R){var WA=nH(u,n,$?D:void 0);if(w&&WA){var Be=n&8?A.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:n&32?A.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:n&64?A.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:n&16?A.Diagnostics.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;Be&&Bu(h,WA.nextType,D,Be)}if(WA||$)return OA?SC(WA&&WA.yieldType):WA&&WA.yieldType}var fe=u,me=!1,Qe=!1;if(n&4){if(fe.flags&1048576){var sr=u.types,yr=A.filter(sr,function(rn){return!(rn.flags&402653316)});yr!==sr&&(fe=Br(yr,2))}else fe.flags&402653316&&(fe=XA);if(Qe=fe!==u,Qe&&(N<1&&D&&(pr(D,A.Diagnostics.Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher),me=!0),fe.flags&131072))return OA?SC(Pr):Pr}if(!dQ(fe)){if(D&&!me){var At=!!(n&4)&&!Qe,Wr=Ei(At,DA),ht=Wr[0],Dt=Wr[1];Bd(D,Dt&&!!JC(fe),ht,si(fe))}return Qe?OA?SC(Pr):Pr:void 0}var $t=Lu(fe,Et);if(Qe&&$t)return $t.flags&402653316&&!tA.noUncheckedIndexedAccess?Pr:Br(OA?[$t,Pr,or]:[$t,Pr],2);return n&128?SC($t):$t;function Ei(rn,Fi){var Qa;if(Fi)return rn?[A.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[A.Diagnostics.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0];var un=d1A(n,0,u,void 0);return un?[A.Diagnostics.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!1]:H8e((Qa=u.symbol)===null||Qa===void 0?void 0:Qa.escapedName)?[A.Diagnostics.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!0]:rn?[A.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type,!0]:[A.Diagnostics.Type_0_is_not_an_array_type,!0]}}function H8e(n){switch(n){case"Float32Array":case"Float64Array":case"Int16Array":case"Int32Array":case"Int8Array":case"NodeList":case"Uint16Array":case"Uint32Array":case"Uint8Array":case"Uint8ClampedArray":return!0}return!1}function d1A(n,u,h,D){if(!Ha(h)){var w=nH(h,n,D);return w&&w[uA(u)]}}function LB(n,u,h){if(n===void 0&&(n=XA),u===void 0&&(u=XA),h===void 0&&(h=He),n.flags&67359327&&u.flags&180227&&h.flags&180227){var D=eg([n,u,h]),w=en.get(D);return w||(w={yieldType:n,returnType:u,nextType:h},en.set(D,w)),w}return{yieldType:n,returnType:u,nextType:h}}function p1A(n){for(var u,h,D,w=0,R=n;w1)for(var me=0,Qe=D;me=1&&n.escapedText==="Object"&&(nAD)return!1;for(var Be=0;Be=D&&DA.pos<=w){var OA=A.factory.createPropertyAccessExpression(A.factory.createThis(),n);A.setParent(OA.expression,OA),A.setParent(OA,DA),OA.flowNode=DA.returnFlowNode;var WA=pQ(OA,u,PB(u));if(!Ov(WA))return!0}}return!1}function H1A(n,u,h){var D=A.isComputedPropertyName(n)?A.factory.createElementAccessExpression(A.factory.createThis(),n.expression):A.factory.createPropertyAccessExpression(A.factory.createThis(),n);A.setParent(D.expression,D),A.setParent(D,h),D.flowNode=h.returnFlowNode;var w=pQ(D,u,PB(u));return!Ov(w)}function cMe(n){$f(n)||Uke(n),kO(n.typeParameters),_A(function(){jv(n.name,A.Diagnostics.Interface_name_cannot_be_0),WC(n);var u=hi(n);y1A(u);var h=A.getDeclarationOfKind(u,261);if(n===h){var D=Hi(u),w=iu(D);if(aMe(D,n.name)){for(var R=0,$=dc(D);R<$.length;R++){var DA=$[R];Bu(w,iu(DA,D.thisType),n.name,A.Diagnostics.Interface_0_incorrectly_extends_interface_1)}oH(D,u)}}JmA(n)}),A.forEach(A.getInterfaceBaseTypeNodes(n),function(u){(!A.isEntityNameExpression(u.expression)||A.isOptionalChain(u.expression))&&pr(u.expression,A.Diagnostics.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),k$(u)}),A.forEach(n.members,to),_A(function(){b$(n),Oh(n)})}function lMe(n){$f(n),jv(n.name,A.Diagnostics.Type_alias_name_cannot_be_0),WC(n),kO(n.typeParameters),n.type.kind===139?(!pA.has(n.name.escapedText)||A.length(n.typeParameters)!==1)&&pr(n.type,A.Diagnostics.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types):(to(n.type),Oh(n))}function S1A(n){var u=qi(n);if(!(u.flags&16384)){u.flags|=16384;for(var h=0,D=0,w=n.members;D>fe;case 49:return Be>>>fe;case 47:return Be<1){var D=A.isEnumConst(n);A.forEach(u.declarations,function(R){A.isEnumDeclaration(R)&&A.isEnumConst(R)!==D&&pr(A.getNameOfDeclaration(R),A.Diagnostics.Enum_declarations_must_all_be_const_or_non_const)})}var w=!1;A.forEach(u.declarations,function(R){if(R.kind!==263)return!1;var $=R;if(!$.members.length)return!1;var DA=$.members[0];DA.initializer||(w?pr(DA.name,A.Diagnostics.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):w=!0)})}}function EMe(n){A.isPrivateIdentifier(n.name)&&pr(n,A.Diagnostics.An_enum_member_cannot_be_named_with_a_private_identifier)}function fMe(n){var u=n.declarations;if(u)for(var h=0,D=u;h1&&q(n,A.shouldPreserveConstEnums(tA))){var DA=fMe($);DA&&(A.getSourceFileOfNode(n)!==A.getSourceFileOfNode(DA)?pr(n.name,A.Diagnostics.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):n.pos=A.ModuleKind.ES2015&&A.getSourceFileOfNode(n).impliedNodeFormat===void 0&&!n.isTypeOnly&&!(n.flags&16777216)&&Jt(n,A.Diagnostics.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead)}function _Me(n){if(!xO(n,A.isInJSFile(n)?A.Diagnostics.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:A.Diagnostics.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!$f(n)&&A.hasSyntacticModifiers(n)&&il(n,A.Diagnostics.An_export_declaration_cannot_have_modifiers),n.moduleSpecifier&&n.exportClause&&A.isNamedExports(n.exportClause)&&A.length(n.exportClause.elements)&&N===0&&ql(n,4194304),wMe(n),!n.moduleSpecifier||J$(n))if(n.exportClause&&!A.isNamespaceExport(n.exportClause)){A.forEach(n.exportClause.elements,OMe);var u=n.parent.kind===265&&A.isAmbientModule(n.parent.parent),h=!u&&n.parent.kind===265&&!n.moduleSpecifier&&n.flags&16777216;n.parent.kind!==308&&!u&&!h&&pr(n,A.Diagnostics.Export_declarations_are_not_permitted_in_a_namespace)}else{var D=hc(n,n.moduleSpecifier);D&&Ip(D)?pr(n.moduleSpecifier,A.Diagnostics.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,Nn(D)):n.exportClause&&sH(n.exportClause),nA!==A.ModuleKind.System&&(nA=A.ModuleKind.ES2015&&A.getSourceFileOfNode(n).impliedNodeFormat!==A.ModuleKind.CommonJS?Jt(n,A.Diagnostics.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):nA===A.ModuleKind.System&&Jt(n,A.Diagnostics.Export_assignment_is_not_supported_when_module_flag_is_system))}}function kMe(n){return A.forEachEntry(n.exports,function(u,h){return h!=="export="})}function N1A(n){var u=hi(n),h=Tn(u);if(!h.exportsChecked){var D=u.exports.get("export=");if(D&&kMe(u)){var w=Ig(D)||D.valueDeclaration;w&&!Gf(w)&&!A.isInJSFile(w)&&pr(w,A.Diagnostics.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}var R=lc(u);R&&R.forEach(function($,DA){var OA=$.declarations,WA=$.flags;if(DA!=="__export"&&!(WA&1920)){var Be=A.countWhere(OA,A.and(S,A.not(A.isInterfaceDeclaration)));if(!(WA&524288&&Be<=2)&&Be>1&&!lH(OA))for(var fe=0,me=OA;fe1&&n.every(function(u){return A.isInJSFile(u)&&A.isAccessExpression(u)&&(A.isExportsIdentifier(u.expression)||A.isModuleExportsAccessExpression(u.expression))})}function to(n){if(n){var u=ue;ue=n,KA=0,xMe(n),ue=u}}function xMe(n){A.forEach(n.jsDoc,function(h){var D=h.comment,w=h.tags;P1A(D),A.forEach(w,function(R){P1A(R.comment),A.isInJSFile(n)&&to(R)})});var u=n.kind;if(fA)switch(u){case 264:case 260:case 261:case 259:fA.throwIfCancellationRequested()}switch(u>=240&&u<=256&&n.flowNode&&!nO(n.flowNode)&&uu(tA.allowUnreachableCode===!1,n,A.Diagnostics.Unreachable_code_detected),u){case 165:return LmA(n);case 166:return jmA(n);case 169:return qmA(n);case 168:return m6e(n);case 182:case 181:case 176:case 177:case 178:return jC(n);case 171:case 170:return D6e(n);case 172:return _6e(n);case 173:return w6e(n);case 174:case 175:return zmA(n);case 180:return k$(n);case 179:return f6e(n);case 183:return b6e(n);case 184:return O6e(n);case 185:return M6e(n);case 186:return k6e(n);case 189:case 190:return x6e(n);case 193:case 187:case 188:return to(n.type);case 194:return R6e(n);case 195:return T6e(n);case 191:return N6e(n);case 192:return P6e(n);case 200:return G6e(n);case 202:return Y6e(n);case 199:return U6e(n);case 331:return n8e(n);case 332:return i8e(n);case 348:case 341:case 342:return X6e(n);case 347:return Z6e(n);case 346:return $6e(n);case 327:case 328:case 329:return A8e(n);case 343:return e8e(n);case 350:return r8e(n);case 320:t8e(n);case 318:case 317:case 315:case 316:case 325:G1A(n),A.forEachChild(n,to);return;case 321:HMe(n);return;case 312:return to(n.type);case 336:case 338:case 337:return a8e(n);case 196:return H6e(n);case 197:return S6e(n);case 259:return K6e(n);case 238:case 265:return rH(n);case 240:return w8e(n);case 241:return v8e(n);case 242:return y8e(n);case 243:return b8e(n);case 244:return O8e(n);case 245:return M8e(n);case 246:return x8e(n);case 247:return k8e(n);case 248:case 249:return G8e(n);case 250:return Y8e(n);case 251:return U8e(n);case 252:return L8e(n);case 253:return j8e(n);case 254:return W8e(n);case 255:return J8e(n);case 257:return R$(n);case 205:return _8e(n);case 260:return $8e(n);case 261:return cMe(n);case 262:return lMe(n);case 263:return dMe(n);case 264:return hMe(n);case 269:return mMe(n);case 268:return DMe(n);case 275:return _Me(n);case 274:return MMe(n);case 239:case 256:AB(n);return;case 279:return y6e(n)}}function P1A(n){A.isArray(n)&&A.forEach(n,function(u){A.isJSDocLinkLike(u)&&to(u)})}function G1A(n){A.isInJSFile(n)||Jt(n,A.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments)}function HMe(n){G1A(n),to(n.type);var u=n.parent;if(A.isParameter(u)&&A.isJSDocFunctionType(u.parent)){A.last(u.parent.parameters)!==u&&pr(n,A.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list);return}A.isJSDocTypeExpression(u)||pr(n,A.Diagnostics.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);var h=n.parent.parent;if(!A.isJSDocParameterTag(h)){pr(n,A.Diagnostics.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);return}var D=A.getParameterSymbolFromJSDoc(h);if(D){var w=A.getHostSignatureFromJSDoc(h);(!w||A.last(w.parameters).symbol!==D)&&pr(n,A.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list)}}function SMe(n){var u=Mn(n.type),h=n.parent,D=n.parent.parent;if(A.isJSDocTypeExpression(n.parent)&&A.isJSDocParameterTag(D)){var w=A.getHostSignatureFromJSDoc(D),R=A.isJSDocCallbackTag(D.parent.parent);if(w||R){var $=R?A.lastOrUndefined(D.parent.parent.typeExpression.parameters):A.lastOrUndefined(w.parameters),DA=A.getParameterSymbolFromJSDoc(D);if(!$||DA&&$.symbol===DA&&A.isRestParameter($))return el(u)}}return A.isParameter(h)&&A.isJSDocFunctionType(h.parent)?el(u):tc(u)}function Wv(n){var u=A.getSourceFileOfNode(n),h=qi(u);h.flags&1||(h.deferredNodes||(h.deferredNodes=new A.Set),h.deferredNodes.add(n))}function FMe(n){var u=qi(n);u.deferredNodes&&u.deferredNodes.forEach(RMe)}function RMe(n){A.tracing===null||A.tracing===void 0||A.tracing.push("check","checkDeferredNode",{kind:n.kind,pos:n.pos,end:n.end,path:n.tracingPath});var u=ue;switch(ue=n,KA=0,n.kind){case 210:case 211:case 212:case 167:case 283:WD(n);break;case 215:case 216:case 171:case 170:SOe(n);break;case 174:case 175:zmA(n);break;case 228:Z8e(n);break;case 165:E6e(n);break;case 282:a7e(n);break;case 281:s7e(n);break}ue=u,A.tracing===null||A.tracing===void 0||A.tracing.pop()}function TMe(n){A.tracing===null||A.tracing===void 0||A.tracing.push("check","checkSourceFile",{path:n.path},!0),A.performance.mark("beforeCheck"),NMe(n),A.performance.mark("afterCheck"),A.performance.measure("Check","beforeCheck","afterCheck"),A.tracing===null||A.tracing===void 0||A.tracing.pop()}function Y1A(n,u){if(u)return!1;switch(n){case 0:return!!tA.noUnusedLocals;case 1:return!!tA.noUnusedParameters;default:return A.Debug.assertNever(n)}}function U1A(n){return Xl.get(n.path)||A.emptyArray}function NMe(n){var u=qi(n);if(!(u.flags&1)){if(A.skipTypeChecking(n,tA,z))return;cxe(n),A.clear(Qo),A.clear(lo),A.clear(Ms),A.clear(qo),A.clear(Ys),A.forEach(n.statements,to),to(n.endOfFileToken),FMe(n),A.isExternalOrCommonJsModule(n)&&Oh(n),_A(function(){!n.isDeclarationFile&&(tA.noUnusedLocals||tA.noUnusedParameters)&&i1A(U1A(n),function(h,D,w){!A.containsParseError(h)&&Y1A(D,!!(h.flags&16777216))&&xA.add(w)}),n.isDeclarationFile||l8e()}),tA.importsNotUsedAsValues===2&&!n.isDeclarationFile&&A.isExternalModule(n)&&bMe(n),A.isExternalOrCommonJsModule(n)&&N1A(n),Qo.length&&(A.forEach(Qo,d8e),A.clear(Qo)),lo.length&&(A.forEach(lo,p8e),A.clear(lo)),Ms.length&&(A.forEach(Ms,h8e),A.clear(Ms)),qo.length&&(A.forEach(qo,m8e),A.clear(qo)),u.flags|=1}}function L1A(n,u){try{return fA=u,PMe(n)}finally{fA=void 0}}function q$(){for(var n=0,u=iA;n0)return A.concatenate(w,D);return D}return A.forEach(z.getSourceFiles(),V$),xA.getDiagnostics()}function GMe(){return q$(),xA.getGlobalDiagnostics()}function YMe(n,u){if(n.flags&33554432)return[];var h=A.createSymbolTable(),D=!1;return w(),h.delete("this"),rp(h);function w(){for(;n;){switch(n.locals&&!Ro(n)&&$(n.locals,u),n.kind){case 308:if(!A.isExternalModule(n))break;case 264:DA(hi(n).exports,u&2623475);break;case 263:$(hi(n).exports,u&8);break;case 228:var OA=n.name;OA&&R(n.symbol,u);case 260:case 261:D||$(Np(hi(n)),u&788968);break;case 215:var WA=n.name;WA&&R(n.symbol,u);break}A.introducesArgumentsExoticObject(n)&&R(PA,u),D=A.isStatic(n),n=n.parent}$(mr,u)}function R(OA,WA){if(A.getCombinedLocalAndExportSymbolFlags(OA)&WA){var Be=OA.escapedName;h.has(Be)||h.set(Be,OA)}}function $(OA,WA){WA&&OA.forEach(function(Be){R(Be,WA)})}function DA(OA,WA){WA&&OA.forEach(function(Be){!A.getDeclarationOfKind(Be,278)&&!A.getDeclarationOfKind(Be,277)&&R(Be,WA)})}}function UMe(n){return n.kind===79&&A.isTypeDeclaration(n.parent)&&A.getNameOfDeclaration(n.parent)===n}function j1A(n){for(;n.parent.kind===163;)n=n.parent;return n.parent.kind===180}function LMe(n){for(;n.parent.kind===208;)n=n.parent;return n.parent.kind===230}function W1A(n,u){for(var h;n=A.getContainingClass(n),!(!n||(h=u(n))););return h}function jMe(n){return!!A.findAncestor(n,function(u){return A.isConstructorDeclaration(u)&&A.nodeIsPresent(u.body)||A.isPropertyDeclaration(u)?!0:A.isClassLike(u)||A.isFunctionLikeDeclaration(u)?"quit":!1})}function z$(n,u){return!!W1A(n,function(h){return h===u})}function WMe(n){for(;n.parent.kind===163;)n=n.parent;if(n.parent.kind===268)return n.parent.moduleReference===n?n.parent:void 0;if(n.parent.kind===274)return n.parent.expression===n?n.parent:void 0}function uH(n){return WMe(n)!==void 0}function JMe(n){var u=A.getAssignmentDeclarationKind(n.parent.parent);switch(u){case 1:case 3:return hi(n.parent);case 4:case 2:case 5:return hi(n.parent.parent)}}function qMe(n){for(var u=n.parent;A.isQualifiedName(u);)n=u,u=u.parent;if(u&&u.kind===202&&u.qualifier===n)return u}function J1A(n){if(A.isDeclarationName(n))return hi(n.parent);if(A.isInJSFile(n)&&n.parent.kind===208&&n.parent===n.parent.parent.left&&!A.isPrivateIdentifier(n)&&!A.isJSDocMemberName(n)){var u=JMe(n);if(u)return u}if(n.parent.kind===274&&A.isEntityNameExpression(n)){var h=Ss(n,2998271,!0);if(h&&h!==Ar)return h}else if(A.isEntityName(n)&&uH(n)){var D=A.getAncestor(n,268);return A.Debug.assert(D!==void 0),cs(n,!0)}if(A.isEntityName(n)){var w=qMe(n);if(w){Mn(w);var R=qi(n).resolvedSymbol;return R===Ar?void 0:R}}for(;A.isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName(n);)n=n.parent;if(LMe(n)){var $=0;n.parent.kind===230?($=788968,A.isExpressionWithTypeArgumentsInClassExtendsClause(n.parent)&&($|=111551)):$=1920,$|=2097152;var DA=A.isEntityNameExpression(n)?Ss(n,$):void 0;if(DA)return DA}if(n.parent.kind===343)return A.getParameterSymbolFromJSDoc(n.parent);if(n.parent.kind===165&&n.parent.parent.kind===347){A.Debug.assert(!A.isInJSFile(n));var OA=A.getTypeParameterFromJsDoc(n.parent);return OA&&OA.symbol}if(A.isExpressionNode(n)){if(A.nodeIsMissing(n))return;var WA=A.findAncestor(n,A.or(A.isJSDocLinkLike,A.isJSDocNameReference,A.isJSDocMemberName)),$=WA?901119:111551;if(n.kind===79){if(A.isJSXTagName(n)&&Fv(n)){var Be=zZ(n.parent);return Be===Ar?void 0:Be}var fe=Ss(n,$,!1,!0,A.getHostSignatureFromJSDoc(n));if(!fe&&WA){var me=A.findAncestor(n,A.or(A.isClassLike,A.isInterfaceDeclaration));if(me)return HO(n,!1,hi(me))}if(fe&&WA){var me=A.getJSDocHost(n);if(me&&A.isEnumMember(me)&&me===fe.valueDeclaration)return Ss(n,$,!0,!0,A.getSourceFileOfNode(me))||fe}return fe}else{if(A.isPrivateIdentifier(n))return P9(n);if(n.kind===208||n.kind===163){var Qe=qi(n);if(Qe.resolvedSymbol)return Qe.resolvedSymbol;if(n.kind===208){if(R0A(n,0),!Qe.resolvedSymbol){var sr=sc(n.expression),yr=pm(sr,Ih(n.name));if(yr.length&&sr.members){var At=Bg(sr),Be=At.members.get("__index");if(yr===Vs(sr))Qe.resolvedSymbol=Be;else if(Be){var Wr=Tn(Be),ht=A.mapDefined(yr,function(Fi){return Fi.declaration}),Dt=A.map(ht,eA).join(",");if(Wr.filteredIndexSymbolCache||(Wr.filteredIndexSymbolCache=new A.Map),Wr.filteredIndexSymbolCache.has(Dt))Qe.resolvedSymbol=Wr.filteredIndexSymbolCache.get(Dt);else{var $t=Za(131072,"__index");$t.declarations=A.mapDefined(yr,function(Fi){return Fi.declaration}),$t.parent=sr.aliasSymbol?sr.aliasSymbol:sr.symbol?sr.symbol:xd($t.declarations[0].parent),Wr.filteredIndexSymbolCache.set(Dt,$t),Qe.resolvedSymbol=Wr.filteredIndexSymbolCache.get(Dt)}}}}}else T0A(n,0);return!Qe.resolvedSymbol&&WA&&A.isQualifiedName(n)?HO(n):Qe.resolvedSymbol}else if(A.isJSDocMemberName(n))return HO(n)}}else if(j1A(n)){var $=n.parent.kind===180?788968:1920,Be=Ss(n,$,!1,!0);return Be&&Be!==Ar?Be:pC(n)}if(n.parent.kind===179)return Ss(n,1)}function HO(n,u,h){if(A.isEntityName(n)){var D=901119,w=Ss(n,D,u,!0,A.getHostSignatureFromJSDoc(n));if(!w&&A.isIdentifier(n)&&h&&(w=Pn(gu(yl(h),n.escapedText,D))),w)return w}var R=A.isIdentifier(n)?h:HO(n.left,u,h),$=A.isIdentifier(n)?n.escapedText:n.right.escapedText;if(R){var DA=R.flags&111551&&mn(li(R),"prototype"),OA=DA?li(DA):Hi(R);return mn(OA,$)}}function xd(n,u){if(n.kind===308)return A.isExternalModule(n)?Pn(n.symbol):void 0;var h=n.parent,D=h.parent;if(!(n.flags&33554432)){if(J(n)){var w=hi(h);return A.isImportOrExportSpecifier(n.parent)&&n.parent.propertyName===n?qZ(w):w}else if(A.isLiteralComputedPropertyDeclarationName(n))return hi(h.parent);if(n.kind===79){if(uH(n))return J1A(n);if(h.kind===205&&D.kind===203&&n===h.propertyName){var R=i4(D),$=mn(R,n.escapedText);if($)return $}else if(A.isMetaProperty(h)&&h.name===n)return h.keywordToken===103&&A.idText(n)==="target"?h$(h).symbol:h.keywordToken===100&&A.idText(n)==="meta"?Rx().members.get("meta"):void 0}switch(n.kind){case 79:case 80:case 208:case 163:if(!A.isThisInTypeQuery(n))return J1A(n);case 108:var DA=A.getThisContainer(n,!1);if(A.isFunctionLike(DA)){var OA=mo(DA);if(OA.thisParameter)return OA.thisParameter}if(A.isInExpressionContext(n))return fa(n).symbol;case 194:return Zx(n).symbol;case 106:return fa(n).symbol;case 135:var WA=n.parent;return WA&&WA.kind===173?WA.parent.symbol:void 0;case 10:case 14:if(A.isExternalModuleImportEqualsDeclaration(n.parent.parent)&&A.getExternalModuleImportEqualsDeclarationExpression(n.parent.parent)===n||(n.parent.kind===269||n.parent.kind===275)&&n.parent.moduleSpecifier===n||A.isInJSFile(n)&&A.isRequireCall(n.parent,!1)||A.isImportCall(n.parent)||A.isLiteralTypeNode(n.parent)&&A.isLiteralImportTypeNode(n.parent.parent)&&n.parent.parent.argument===n.parent)return hc(n,n,u);if(A.isCallExpression(h)&&A.isBindableObjectDefinePropertyCall(h)&&h.arguments[1]===n)return hi(h);case 8:var Be=A.isElementAccessExpression(h)?h.argumentExpression===n?fl(h.expression):void 0:A.isLiteralTypeNode(h)&&A.isIndexedAccessTypeNode(D)?Mn(D.objectType):void 0;return Be&&mn(Be,A.escapeLeadingUnderscores(n.text));case 88:case 98:case 38:case 84:return hi(n.parent);case 202:return A.isLiteralImportTypeNode(n)?xd(n.argument.literal,u):void 0;case 93:return A.isExportAssignment(n.parent)?A.Debug.checkDefined(n.parent.symbol):void 0;case 100:case 103:return A.isMetaProperty(n.parent)?QmA(n.parent).symbol:void 0;case 233:return fa(n).symbol;default:return}}}function VMe(n){if(A.isIdentifier(n)&&A.isPropertyAccessExpression(n.parent)&&n.parent.name===n){var u=Ih(n),h=fl(n.parent.expression),D=h.flags&1048576?h.types:[h];return A.flatMap(D,function(w){return A.filter(Vs(w),function(R){return ep(u,R.keyType)})})}}function zMe(n){if(n&&n.kind===300)return Ss(n.name,2208703)}function KMe(n){return A.isExportSpecifier(n)?n.parent.parent.moduleSpecifier?yu(n.parent.parent,n):Ss(n.propertyName||n.name,2998271):Ss(n,2998271)}function i4(n){if(A.isSourceFile(n)&&!A.isExternalModule(n)||n.flags&33554432)return HA;var u=A.tryGetClassImplementingOrExtendingExpressionWithTypeArguments(n),h=u&&Yu(hi(u.class));if(A.isPartOfTypeNode(n)){var D=Mn(n);return h?iu(D,h.thisType):D}if(A.isExpressionNode(n))return q1A(n);if(h&&!u.isImplements){var w=A.firstOrUndefined(dc(h));return w?iu(w,h.thisType):HA}if(A.isTypeDeclaration(n)){var R=hi(n);return Hi(R)}if(UMe(n)){var R=xd(n);return R?Hi(R):HA}if(A.isDeclaration(n)){var R=hi(n);return R?li(R):HA}if(J(n)){var R=xd(n);return R?li(R):HA}if(A.isBindingPattern(n))return Id(n.parent,!0,0)||HA;if(uH(n)){var R=xd(n);if(R){var $=Hi(R);return $n($)?li(R):$}}return A.isMetaProperty(n.parent)&&n.parent.keywordToken===n.kind?QmA(n.parent):HA}function gH(n){if(A.Debug.assert(n.kind===207||n.kind===206),n.parent.kind===247){var u=MO(n.parent);return bm(n,u||HA)}if(n.parent.kind===223){var u=fl(n.parent.right);return bm(n,u||HA)}if(n.parent.kind===299){var h=A.cast(n.parent.parent,A.isObjectLiteralExpression),D=gH(h)||HA,w=A.indexOfNode(h.properties,n.parent);return xmA(h,D,w)}var R=A.cast(n.parent,A.isArrayLiteralExpression),$=gH(R)||HA,DA=Mh(65,$,or,n.parent)||HA;return HmA(R,$,R.elements.indexOf(n),DA)}function XMe(n){var u=gH(A.cast(n.parent.parent,A.isAssignmentPattern));return u&&mn(u,n.escapedText)}function q1A(n){return A.isRightSideOfQualifiedNameOrPropertyAccess(n)&&(n=n.parent),bu(fl(n))}function ZMe(n){var u=hi(n.parent);return A.isStatic(n)?li(u):Hi(u)}function $Me(n){var u=n.name;switch(u.kind){case 79:return id(A.idText(u));case 8:case 10:return id(u.text);case 164:var h=YB(u);return Mc(h,12288)?h:Pr;default:return A.Debug.fail("Unsupported property name.")}}function K$(n){n=vA(n);var u=A.createSymbolTable(co(n)),h=ia(n,0).length?gn:ia(n,1).length?kn:void 0;return h&&A.forEach(co(h),function(D){u.has(D.escapedName)||u.set(D.escapedName,D)}),Hp(u)}function X$(n){return A.typeHasCallOrConstructSignatures(n,ae)}function V1A(n){var u=Ake(n);return u?A.flatMap(u,V1A):[n]}function Ake(n){if(A.getCheckFlags(n)&6)return A.mapDefined(Tn(n).containingType.types,function(R){return mn(R,n.escapedName)});if(n.flags&33554432){var u=n,h=u.leftSpread,D=u.rightSpread,w=u.syntheticOrigin;return h?[h,D]:w?[w]:A.singleElementArray(eke(n))}}function eke(n){for(var u,h=n;h=Tn(h).target;)u=h;return u}function rke(n){if(A.isGeneratedIdentifier(n))return!1;var u=A.getParseTreeNode(n,A.isIdentifier);if(!u)return!1;var h=u.parent;if(!h)return!1;var D=(A.isPropertyAccessExpression(h)||A.isPropertyAssignment(h))&&h.name===u;return!D&&SO(u)===PA}function tke(n){var u=hc(n.parent,n);if(!u||A.isShorthandAmbientModuleSymbol(u))return!0;var h=Ip(u);u=_c(u);var D=Tn(u);return D.exportsSomeValue===void 0&&(D.exportsSomeValue=h?!!(u.flags&111551):A.forEachEntry(lc(u),w)),D.exportsSomeValue;function w(R){return R=ds(R),R&&!!(Rn(R)&111551)}}function ike(n){return A.isModuleOrEnumDeclaration(n.parent)&&n===n.parent.name}function nke(n,u){var h,D=A.getParseTreeNode(n,A.isIdentifier);if(D){var w=SO(D,ike(D));if(w){if(w.flags&1048576){var R=Pn(w.exportSymbol);if(!u&&R.flags&944&&!(R.flags&3))return;w=R}var $=Pl(w);if($){if($.flags&512&&((h=$.valueDeclaration)===null||h===void 0?void 0:h.kind)===308){var DA=$.valueDeclaration,OA=A.getSourceFileOfNode(D),WA=DA!==OA;return WA?void 0:DA}return A.findAncestor(D.parent,function(Be){return A.isModuleOrEnumDeclaration(Be)&&hi(Be)===$})}}}}function ake(n){if(n.generatedImportReference)return n.generatedImportReference;var u=A.getParseTreeNode(n,A.isIdentifier);if(u){var h=Qke(u);if(af(h,111551)&&!Rl(h,111551))return Ig(h)}}function oke(n){return n.valueDeclaration&&A.isBindingElement(n.valueDeclaration)&&A.walkUpBindingElementsAndPatterns(n.valueDeclaration).parent.kind===295}function z1A(n){if(n.flags&418&&n.valueDeclaration&&!A.isSourceFile(n.valueDeclaration)){var u=Tn(n);if(u.isDeclarationWithCollidingName===void 0){var h=A.getEnclosingBlockScopeContainer(n.valueDeclaration);if(A.isStatementWithLocals(h)||oke(n)){var D=qi(n.valueDeclaration);if(Hs(h.parent,n.escapedName,111551,void 0,void 0,!1))u.isDeclarationWithCollidingName=!0;else if(D.flags&262144){var w=D.flags&524288,R=A.isIterationStatement(h,!1),$=h.kind===238&&A.isIterationStatement(h.parent,!1);u.isDeclarationWithCollidingName=!A.isBlockScopedContainerTopLevel(h)&&(!w||!R&&!$)}else u.isDeclarationWithCollidingName=!1}}return u.isDeclarationWithCollidingName}return!1}function ske(n){if(!A.isGeneratedIdentifier(n)){var u=A.getParseTreeNode(n,A.isIdentifier);if(u){var h=SO(u);if(h&&z1A(h))return h.valueDeclaration}}}function cke(n){var u=A.getParseTreeNode(n,A.isDeclaration);if(u){var h=hi(u);if(h)return z1A(h)}return!1}function K1A(n){switch(n.kind){case 268:return dH(hi(n));case 270:case 271:case 273:case 278:var u=hi(n);return!!u&&dH(u)&&!Rl(u,111551);case 275:var h=n.exportClause;return!!h&&(A.isNamespaceExport(h)||A.some(h.elements,K1A));case 274:return n.expression&&n.expression.kind===79?dH(hi(n)):!0}return!1}function lke(n){var u=A.getParseTreeNode(n,A.isImportEqualsDeclaration);if(u===void 0||u.parent.kind!==308||!A.isInternalModuleImportEqualsDeclaration(u))return!1;var h=dH(hi(u));return h&&u.moduleReference&&!A.nodeIsMissing(u.moduleReference)}function dH(n){var u;if(!n)return!1;var h=Vu(oi(n));return h===Ar?!0:!!(((u=Rn(h))!==null&&u!==void 0?u:-1)&111551)&&(A.shouldPreserveConstEnums(tA)||!XC(h))}function XC(n){return v$(n)||!!n.constEnumOnlyModule}function pH(n,u){if(_p(n)){var h=hi(n),D=h&&Tn(h);if(D?.referenced)return!0;var w=Tn(h).aliasTarget;if(w&&A.getEffectiveModifierFlags(n)&1&&Rn(w)&111551&&(A.shouldPreserveConstEnums(tA)||!XC(w)))return!0}return u?!!A.forEachChild(n,function(R){return pH(R,u)}):!1}function X1A(n){if(A.nodeIsPresent(n.body)){if(A.isGetAccessor(n)||A.isSetAccessor(n))return!1;var u=hi(n),h=vh(u);return h.length>1||h.length===1&&h[0].declaration!==n}return!1}function Z1A(n){return!!TA&&!wh(n)&&!A.isJSDocParameterTag(n)&&!!n.initializer&&!A.hasSyntacticModifier(n,16476)}function uke(n){return TA&&wh(n)&&!n.initializer&&A.hasSyntacticModifier(n,16476)}function gke(n){var u=A.getParseTreeNode(n,A.isFunctionDeclaration);if(!u)return!1;var h=hi(u);return!h||!(h.flags&16)?!1:!!A.forEachEntry(yl(h),function(D){return D.flags&111551&&D.valueDeclaration&&A.isPropertyAccessExpression(D.valueDeclaration)})}function dke(n){var u=A.getParseTreeNode(n,A.isFunctionDeclaration);if(!u)return A.emptyArray;var h=hi(u);return h&&co(li(h))||A.emptyArray}function XD(n){var u,h=n.id||0;return h<0||h>=Kt.length?0:((u=Kt[h])===null||u===void 0?void 0:u.flags)||0}function EH(n){return S1A(n.parent),qi(n).enumMemberValue}function $1A(n){switch(n.kind){case 302:case 208:case 209:return!0}return!1}function Z$(n){if(n.kind===302)return EH(n);var u=qi(n).resolvedSymbol;if(u&&u.flags&8){var h=u.valueDeclaration;if(A.isEnumConst(h.parent))return EH(h)}}function $$(n){return!!(n.flags&524288)&&ia(n,0).length>0}function pke(n,u){var h,D,w=A.getParseTreeNode(n,A.isEntityName);if(!w||u&&(u=A.getParseTreeNode(u),!u))return A.TypeReferenceSerializationKind.Unknown;var R=!1;if(A.isQualifiedName(w)){var $=Ss(A.getFirstIdentifier(w),111551,!0,!0,u);R=!!(!((h=$?.declarations)===null||h===void 0)&&h.every(A.isTypeOnlyImportOrExportDeclaration))}var DA=Ss(w,111551,!0,!0,u),OA=DA&&DA.flags&2097152?oi(DA):DA;R||(R=!!(!((D=DA?.declarations)===null||D===void 0)&&D.every(A.isTypeOnlyImportOrExportDeclaration)));var WA=Ss(w,788968,!0,!1,u);if(OA&&OA===WA){var Be=H7(!1);if(Be&&OA===Be)return A.TypeReferenceSerializationKind.Promise;var fe=li(OA);if(fe&&KQ(fe))return R?A.TypeReferenceSerializationKind.TypeWithCallSignature:A.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue}if(!WA)return R?A.TypeReferenceSerializationKind.ObjectType:A.TypeReferenceSerializationKind.Unknown;var me=Hi(WA);return $n(me)?R?A.TypeReferenceSerializationKind.ObjectType:A.TypeReferenceSerializationKind.Unknown:me.flags&3?A.TypeReferenceSerializationKind.ObjectType:Mc(me,245760)?A.TypeReferenceSerializationKind.VoidNullableOrNeverType:Mc(me,528)?A.TypeReferenceSerializationKind.BooleanType:Mc(me,296)?A.TypeReferenceSerializationKind.NumberLikeType:Mc(me,2112)?A.TypeReferenceSerializationKind.BigIntLikeType:Mc(me,402653316)?A.TypeReferenceSerializationKind.StringLikeType:$a(me)?A.TypeReferenceSerializationKind.ArrayLikeType:Mc(me,12288)?A.TypeReferenceSerializationKind.ESSymbolType:$$(me)?A.TypeReferenceSerializationKind.TypeWithCallSignature:nd(me)?A.TypeReferenceSerializationKind.ArrayLikeType:A.TypeReferenceSerializationKind.ObjectType}function Eke(n,u,h,D,w){var R=A.getParseTreeNode(n,A.isVariableLikeOrAccessor);if(!R)return A.factory.createToken(131);var $=hi(R),DA=$&&!($.flags&133120)?a0(li($)):HA;return DA.flags&8192&&DA.symbol===$&&(h|=1048576),w&&(DA=PB(DA)),Ye.typeToTypeNode(DA,u,h|1024,D)}function fke(n,u,h,D){var w=A.getParseTreeNode(n,A.isFunctionLike);if(!w)return A.factory.createToken(131);var R=mo(w);return Ye.typeToTypeNode(No(R),u,h|1024,D)}function Bke(n,u,h,D){var w=A.getParseTreeNode(n,A.isExpression);if(!w)return A.factory.createToken(131);var R=rg(q1A(w));return Ye.typeToTypeNode(R,u,h|1024,D)}function hke(n){return mr.has(A.escapeLeadingUnderscores(n))}function SO(n,u){var h=qi(n).resolvedSymbol;if(h)return h;var D=n;if(u){var w=n.parent;A.isDeclaration(w)&&n===w.name&&(D=wa(w))}return Hs(D,n.escapedText,3257279,void 0,void 0,!0)}function Qke(n){var u=qi(n).resolvedSymbol;return u&&u!==Ar?u:Hs(n,n.escapedText,3257279,void 0,void 0,!0,void 0,void 0)}function mke(n){if(!A.isGeneratedIdentifier(n)){var u=A.getParseTreeNode(n,A.isIdentifier);if(u){var h=SO(u);if(h)return Vu(h).valueDeclaration}}}function Dke(n){return A.isDeclarationReadonly(n)||A.isVariableDeclaration(n)&&A.isVarConst(n)?t0(li(hi(n))):!1}function _ke(n,u,h){var D=n.flags&1024?Ye.symbolToExpression(n.symbol,111551,u,void 0,h):n===ei?A.factory.createTrue():n===Ot&&A.factory.createFalse();if(D)return D;var w=n.value;return typeof w=="object"?A.factory.createBigIntLiteral(w):typeof w=="number"?A.factory.createNumericLiteral(w):A.factory.createStringLiteral(w)}function wke(n,u){var h=li(hi(n));return _ke(h,n,u)}function A4A(n){return n?(Us(n),A.getSourceFileOfNode(n).localJsxFactory||jt):jt}function AAA(n){if(n){var u=A.getSourceFileOfNode(n);if(u){if(u.localJsxFragmentFactory)return u.localJsxFragmentFactory;var h=u.pragmas.get("jsxfrag"),D=A.isArray(h)?h[0]:h;if(D)return u.localJsxFragmentFactory=A.parseIsolatedEntityName(D.arguments.factory,N),u.localJsxFragmentFactory}}if(tA.jsxFragmentFactory)return A.parseIsolatedEntityName(tA.jsxFragmentFactory,N)}function vke(){var n=z.getResolvedTypeReferenceDirectives(),u;return n&&(u=new A.Map,n.forEach(function(OA,WA,Be){if(!(!OA||!OA.resolvedFileName)){var fe=z.getSourceFile(OA.resolvedFileName);fe&&DA(fe,WA,Be)}})),{getReferencedExportContainer:nke,getReferencedImportDeclaration:ake,getReferencedDeclarationWithCollidingName:ske,isDeclarationWithCollidingName:cke,isValueAliasDeclaration:function(OA){var WA=A.getParseTreeNode(OA);return WA?K1A(WA):!0},hasGlobalName:hke,isReferencedAliasDeclaration:function(OA,WA){var Be=A.getParseTreeNode(OA);return Be?pH(Be,WA):!0},getNodeCheckFlags:function(OA){var WA=A.getParseTreeNode(OA);return WA?XD(WA):0},isTopLevelValueImportEqualsWithEntityName:lke,isDeclarationVisible:kr,isImplementationOfOverload:X1A,isRequiredInitializedParameter:Z1A,isOptionalUninitializedParameterProperty:uke,isExpandoFunctionDeclaration:gke,getPropertiesOfContainerFunction:dke,createTypeOfDeclaration:Eke,createReturnTypeOfSignatureDeclaration:fke,createTypeOfExpression:Bke,createLiteralConstValue:wke,isSymbolAccessible:zd,isEntityNameVisible:WQ,getConstantValue:function(OA){var WA=A.getParseTreeNode(OA,$1A);return WA?Z$(WA):void 0},collectLinkedAliases:ft,getReferencedValueDeclaration:mke,getTypeReferenceSerializationKind:pke,isOptionalParameter:wh,moduleExportsSomeValue:tke,isArgumentsLocalBinding:rke,getExternalModuleFileFromDeclaration:function(OA){var WA=A.getParseTreeNode(OA,A.hasPossibleExternalModuleReference);return WA&&eAA(WA)},getTypeReferenceDirectivesForEntityName:w,getTypeReferenceDirectivesForSymbol:R,isLiteralConstDeclaration:Dke,isLateBound:function(OA){var WA=A.getParseTreeNode(OA,A.isDeclaration),Be=WA&&hi(WA);return!!(Be&&A.getCheckFlags(Be)&4096)},getJsxFactoryEntity:A4A,getJsxFragmentFactoryEntity:AAA,getAllAccessorDeclarations:function(OA){OA=A.getParseTreeNode(OA,A.isGetOrSetAccessorDeclaration);var WA=OA.kind===175?174:175,Be=A.getDeclarationOfKind(hi(OA),WA),fe=Be&&Be.pos3})||pr(n,A.Diagnostics.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,A.externalHelpersModuleNameText,$,4):R&1048576?A.some(vh(DA),function(OA){return tg(OA)>4})||pr(n,A.Diagnostics.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,A.externalHelpersModuleNameText,$,5):R&1024&&(A.some(vh(DA),function(OA){return tg(OA)>2})||pr(n,A.Diagnostics.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,A.externalHelpersModuleNameText,$,3)):pr(n,A.Diagnostics.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,A.externalHelpersModuleNameText,$)}}M|=u}}}function Cke(n){switch(n){case 1:return"__extends";case 2:return"__assign";case 4:return"__rest";case 8:return"__decorate";case 16:return"__metadata";case 32:return"__param";case 64:return"__awaiter";case 128:return"__generator";case 256:return"__values";case 512:return"__read";case 1024:return"__spreadArray";case 2048:return"__await";case 4096:return"__asyncGenerator";case 8192:return"__asyncDelegator";case 16384:return"__asyncValues";case 32768:return"__exportStar";case 65536:return"__importStar";case 131072:return"__importDefault";case 262144:return"__makeTemplateObject";case 524288:return"__classPrivateFieldGet";case 1048576:return"__classPrivateFieldSet";case 2097152:return"__classPrivateFieldIn";case 4194304:return"__createBinding";default:return A.Debug.fail("Unrecognized helper")}}function Ike(n,u){return aA||(aA=gE(n,A.externalHelpersModuleNameText,A.Diagnostics.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,u)||Ar),aA}function $f(n){return bke(n)||e4A(n)}function bke(n){if(A.canHaveIllegalDecorators(n)&&A.some(n.illegalDecorators))return il(n,A.Diagnostics.Decorators_are_not_valid_here);if(!A.canHaveDecorators(n)||!A.hasDecorators(n))return!1;if(A.nodeCanBeDecorated(n,n.parent,n.parent.parent)){if(n.kind===174||n.kind===175){var u=A.getAllAccessorDeclarations(n.parent.members,n);if(A.hasDecorators(u.firstAccessor)&&n===u.secondAccessor)return il(n,A.Diagnostics.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}}else return n.kind===171&&!A.nodeIsPresent(n.body)?il(n,A.Diagnostics.A_decorator_can_only_decorate_a_method_implementation_not_an_overload):il(n,A.Diagnostics.Decorators_are_not_valid_here);return!1}function e4A(n){var u=Oke(n);if(u!==void 0)return u;for(var h,D,w,R,$=0,DA=0,OA=n.modifiers;DA=3){var u=n.body&&A.isBlock(n.body)&&A.findUseStrictPrologue(n.body.statements);if(u){var h=Hke(n.parameters);if(A.length(h)){A.forEach(h,function(w){A.addRelatedInfo(pr(w,A.Diagnostics.This_parameter_is_not_allowed_with_use_strict_directive),A.createDiagnosticForNode(u,A.Diagnostics.use_strict_directive_used_here))});var D=h.map(function(w,R){return R===0?A.createDiagnosticForNode(w,A.Diagnostics.Non_simple_parameter_declared_here):A.createDiagnosticForNode(w,A.Diagnostics.and_here)});return A.addRelatedInfo.apply(void 0,dt([pr(u,A.Diagnostics.use_strict_directive_cannot_be_used_with_non_simple_parameter_list)],D,!1)),!0}}}return!1}function fH(n){var u=A.getSourceFileOfNode(n);return $f(n)||r4A(n.typeParameters,u)||xke(n.parameters)||Rke(n,u)||A.isFunctionLikeDeclaration(n)&&Ske(n)}function Fke(n){var u=A.getSourceFileOfNode(n);return Yke(n)||r4A(n.typeParameters,u)}function Rke(n,u){if(!A.isArrowFunction(n))return!1;n.typeParameters&&!(A.length(n.typeParameters)>1||n.typeParameters.hasTrailingComma||n.typeParameters[0].constraint)&&u&&A.fileExtensionIsOneOf(u.fileName,[".mts",".cts"])&&Jt(n.typeParameters[0],A.Diagnostics.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);var h=n.equalsGreaterThanToken,D=A.getLineAndCharacterOfPosition(u,h.pos).line,w=A.getLineAndCharacterOfPosition(u,h.end).line;return D!==w&&Jt(h,A.Diagnostics.Line_terminator_not_permitted_before_arrow)}function Tke(n){var u=n.parameters[0];if(n.parameters.length!==1)return Jt(u?u.name:n,A.Diagnostics.An_index_signature_must_have_exactly_one_parameter);if(n4(n.parameters,A.Diagnostics.An_index_signature_cannot_have_a_trailing_comma),u.dotDotDotToken)return Jt(u.dotDotDotToken,A.Diagnostics.An_index_signature_cannot_have_a_rest_parameter);if(A.hasEffectiveModifiers(u))return Jt(u.name,A.Diagnostics.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(u.questionToken)return Jt(u.questionToken,A.Diagnostics.An_index_signature_parameter_cannot_have_a_question_mark);if(u.initializer)return Jt(u.name,A.Diagnostics.An_index_signature_parameter_cannot_have_an_initializer);if(!u.type)return Jt(u.name,A.Diagnostics.An_index_signature_parameter_must_have_a_type_annotation);var h=Mn(u.type);return Zf(h,function(D){return!!(D.flags&8576)})||z1(h)?Jt(u.name,A.Diagnostics.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead):hf(h,lC)?n.type?!1:Jt(n,A.Diagnostics.An_index_signature_must_have_a_type_annotation):Jt(u.name,A.Diagnostics.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type)}function Nke(n){return $f(n)||Tke(n)}function Pke(n,u){if(u&&u.length===0){var h=A.getSourceFileOfNode(n),D=u.pos-1,w=A.skipTrivia(h.text,u.end)+1;return p0(h,D,w-D,A.Diagnostics.Type_argument_list_cannot_be_empty)}return!1}function FO(n,u){return n4(u)||Pke(n,u)}function Gke(n){return n.questionDotToken||n.flags&32?Jt(n.template,A.Diagnostics.Tagged_template_expressions_are_not_permitted_in_an_optional_chain):!1}function t4A(n){var u=n.types;if(n4(u))return!0;if(u&&u.length===0){var h=A.tokenToString(n.token);return p0(n,u.pos,0,A.Diagnostics._0_list_cannot_be_empty,h)}return A.some(u,i4A)}function i4A(n){return A.isExpressionWithTypeArguments(n)&&A.isImportKeyword(n.expression)&&n.typeArguments?Jt(n,A.Diagnostics.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments):FO(n,n.typeArguments)}function Yke(n){var u=!1,h=!1;if(!$f(n)&&n.heritageClauses)for(var D=0,w=n.heritageClauses;D1)return il(R.types[1],A.Diagnostics.Classes_can_only_extend_a_single_class);u=!0}else{if(A.Debug.assert(R.token===117),h)return il(R,A.Diagnostics.implements_clause_already_seen);h=!0}t4A(R)}}function Uke(n){var u=!1;if(n.heritageClauses)for(var h=0,D=n.heritageClauses;h=4)break;default:xA.add(A.createDiagnosticForNode(n.awaitModifier,A.Diagnostics.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_or_nodenext_and_the_target_option_is_set_to_es2017_or_higher));break}}else if(!Om(u)){var h=A.createDiagnosticForNode(n.awaitModifier,A.Diagnostics.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),D=A.getContainingFunction(n);if(D&&D.kind!==173){A.Debug.assert((A.getFunctionFlags(D)&2)===0,"Enclosing function should never be an async function.");var w=A.createDiagnosticForNode(D,A.Diagnostics.Did_you_mean_to_mark_this_function_as_async);A.addRelatedInfo(h,w)}return xA.add(h),!0}return!1}if(A.isForOfStatement(n)&&!(n.flags&32768)&&A.isIdentifier(n.initializer)&&n.initializer.escapedText==="async")return Jt(n.initializer,A.Diagnostics.The_left_hand_side_of_a_for_of_statement_may_not_be_async),!1;if(n.initializer.kind===258){var R=n.initializer;if(!aAA(R)){var $=R.declarations;if(!$.length)return!1;if($.length>1){var h=n.kind===246?A.Diagnostics.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:A.Diagnostics.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return il(R.declarations[1],h)}var DA=$[0];if(DA.initializer){var h=n.kind===246?A.Diagnostics.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:A.Diagnostics.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return Jt(DA.name,h)}if(DA.type){var h=n.kind===246?A.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:A.Diagnostics.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation;return Jt(DA,h)}}}return!1}function qke(n){if(!(n.flags&16777216)&&n.parent.kind!==184&&n.parent.kind!==261){if(N<1)return Jt(n.name,A.Diagnostics.Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher);if(N<2&&A.isPrivateIdentifier(n.name))return Jt(n.name,A.Diagnostics.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(n.body===void 0&&!A.hasSyntacticModifier(n,256))return p0(n,n.end-1,1,A.Diagnostics._0_expected,"{")}if(n.body){if(A.hasSyntacticModifier(n,256))return Jt(n,A.Diagnostics.An_abstract_accessor_cannot_have_an_implementation);if(n.parent.kind===184||n.parent.kind===261)return Jt(n.body,A.Diagnostics.An_implementation_cannot_be_declared_in_ambient_contexts)}if(n.typeParameters)return Jt(n.name,A.Diagnostics.An_accessor_cannot_have_type_parameters);if(!Vke(n))return Jt(n.name,n.kind===174?A.Diagnostics.A_get_accessor_cannot_have_parameters:A.Diagnostics.A_set_accessor_must_have_exactly_one_parameter);if(n.kind===175){if(n.type)return Jt(n.name,A.Diagnostics.A_set_accessor_cannot_have_a_return_type_annotation);var u=A.Debug.checkDefined(A.getSetAccessorValueParameter(n),"Return value does not match parameter count assertion.");if(u.dotDotDotToken)return Jt(u.dotDotDotToken,A.Diagnostics.A_set_accessor_cannot_have_rest_parameter);if(u.questionToken)return Jt(u.questionToken,A.Diagnostics.A_set_accessor_cannot_have_an_optional_parameter);if(u.initializer)return Jt(n.name,A.Diagnostics.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}function Vke(n){return nAA(n)||n.parameters.length===(n.kind===174?0:1)}function nAA(n){if(n.parameters.length===(n.kind===174?1:2))return A.getThisParameter(n)}function zke(n){if(n.operator===156){if(n.type.kind!==153)return Jt(n.type,A.Diagnostics._0_expected,A.tokenToString(153));var u=A.walkUpParenthesizedTypes(n.parent);if(A.isInJSFile(u)&&A.isJSDocTypeExpression(u)){var h=A.getJSDocHost(u);h&&(u=A.getSingleVariableOfVariableStatement(h)||h)}switch(u.kind){case 257:var D=u;if(D.name.kind!==79)return Jt(n,A.Diagnostics.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!A.isVariableDeclarationInVariableStatement(D))return Jt(n,A.Diagnostics.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(D.parent.flags&2))return Jt(u.name,A.Diagnostics.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 169:if(!A.isStatic(u)||!A.hasEffectiveReadonlyModifier(u))return Jt(u.name,A.Diagnostics.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 168:if(!A.hasSyntacticModifier(u,64))return Jt(u.name,A.Diagnostics.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:return Jt(n,A.Diagnostics.unique_symbol_types_are_not_allowed_here)}}else if(n.operator===146&&n.type.kind!==185&&n.type.kind!==186)return il(n,A.Diagnostics.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,A.tokenToString(153))}function Jv(n,u){if(z2(n))return Jt(n,u)}function o4A(n){if(fH(n))return!0;if(n.kind===171){if(n.parent.kind===207){if(n.modifiers&&!(n.modifiers.length===1&&A.first(n.modifiers).kind===132))return il(n,A.Diagnostics.Modifiers_cannot_appear_here);if(iAA(n.questionToken,A.Diagnostics.An_object_member_cannot_be_declared_optional))return!0;if(n4A(n.exclamationToken,A.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(n.body===void 0)return p0(n,n.end-1,1,A.Diagnostics._0_expected,"{")}if(tAA(n))return!0}if(A.isClassLike(n.parent)){if(N<2&&A.isPrivateIdentifier(n.name))return Jt(n.name,A.Diagnostics.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(n.flags&16777216)return Jv(n.name,A.Diagnostics.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(n.kind===171&&!n.body)return Jv(n.name,A.Diagnostics.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(n.parent.kind===261)return Jv(n.name,A.Diagnostics.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(n.parent.kind===184)return Jv(n.name,A.Diagnostics.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function Kke(n){for(var u=n;u;){if(A.isFunctionLikeOrClassStaticBlockDeclaration(u))return Jt(n,A.Diagnostics.Jump_target_cannot_cross_function_boundary);switch(u.kind){case 253:if(n.label&&u.label.escapedText===n.label.escapedText){var h=n.kind===248&&!A.isIterationStatement(u.statement,!0);return h?Jt(n,A.Diagnostics.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):!1}break;case 252:if(n.kind===249&&!n.label)return!1;break;default:if(A.isIterationStatement(u,!1)&&!n.label)return!1;break}u=u.parent}if(n.label){var D=n.kind===249?A.Diagnostics.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:A.Diagnostics.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return Jt(n,D)}else{var D=n.kind===249?A.Diagnostics.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:A.Diagnostics.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return Jt(n,D)}}function Xke(n){if(n.dotDotDotToken){var u=n.parent.elements;if(n!==A.last(u))return Jt(n,A.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern);if(n4(u,A.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),n.propertyName)return Jt(n.name,A.Diagnostics.A_rest_element_cannot_have_a_property_name)}if(n.dotDotDotToken&&n.initializer)return p0(n,n.initializer.pos-1,1,A.Diagnostics.A_rest_element_cannot_have_an_initializer)}function s4A(n){return A.isStringOrNumericLiteralLike(n)||n.kind===221&&n.operator===40&&n.operand.kind===8}function Zke(n){return n.kind===9||n.kind===221&&n.operator===40&&n.operand.kind===9}function $ke(n){if((A.isPropertyAccessExpression(n)||A.isElementAccessExpression(n)&&s4A(n.argumentExpression))&&A.isEntityNameExpression(n.expression))return!!(sc(n).flags&1024)}function c4A(n){var u=n.initializer;if(u){var h=!(s4A(u)||$ke(u)||u.kind===110||u.kind===95||Zke(u)),D=A.isDeclarationReadonly(n)||A.isVariableDeclaration(n)&&A.isVarConst(n);if(D&&!n.type){if(h)return Jt(u,A.Diagnostics.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}else return Jt(u,A.Diagnostics.Initializers_are_not_allowed_in_ambient_contexts)}}function Axe(n){if(n.parent.parent.kind!==246&&n.parent.parent.kind!==247){if(n.flags&16777216)c4A(n);else if(!n.initializer){if(A.isBindingPattern(n.name)&&!A.isBindingPattern(n.parent))return Jt(n,A.Diagnostics.A_destructuring_declaration_must_have_an_initializer);if(A.isVarConst(n))return Jt(n,A.Diagnostics.const_declarations_must_be_initialized)}}if(n.exclamationToken&&(n.parent.parent.kind!==240||!n.type||n.initializer||n.flags&16777216)){var u=n.initializer?A.Diagnostics.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:n.type?A.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context:A.Diagnostics.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return Jt(n.exclamationToken,u)}(nA0}function il(n,u,h,D,w){var R=A.getSourceFileOfNode(n);if(!Om(R)){var $=A.getSpanOfTokenAtPosition(R,n.pos);return xA.add(A.createFileDiagnostic(R,$.start,$.length,u,h,D,w)),!0}return!1}function p0(n,u,h,D,w,R,$){var DA=A.getSourceFileOfNode(n);return Om(DA)?!1:(xA.add(A.createFileDiagnostic(DA,u,h,D,w,R,$)),!0)}function txe(n,u,h,D,w,R){var $=A.getSourceFileOfNode(u);return Om($)?!1:(Ed(n,u,h,D,w,R),!0)}function Jt(n,u,h,D,w){var R=A.getSourceFileOfNode(n);return Om(R)?!1:(xA.add(A.createDiagnosticForNode(n,u,h,D,w)),!0)}function ixe(n){var u=A.isInJSFile(n)?A.getJSDocTypeParameterDeclarations(n):void 0,h=n.typeParameters||u&&A.firstOrUndefined(u);if(h){var D=h.pos===h.end?h.pos:A.skipTrivia(A.getSourceFileOfNode(n).text,h.pos);return p0(n,D,h.end-D,A.Diagnostics.Type_parameters_cannot_appear_on_a_constructor_declaration)}}function nxe(n){var u=n.type||A.getEffectiveReturnTypeNode(n);if(u)return Jt(u,A.Diagnostics.Type_annotation_cannot_appear_on_a_constructor_declaration)}function axe(n){if(A.isComputedPropertyName(n.name)&&A.isBinaryExpression(n.name.expression)&&n.name.expression.operatorToken.kind===101)return Jt(n.parent.members[0],A.Diagnostics.A_mapped_type_may_not_declare_properties_or_methods);if(A.isClassLike(n.parent)){if(A.isStringLiteral(n.name)&&n.name.text==="constructor")return Jt(n.name,A.Diagnostics.Classes_may_not_have_a_field_named_constructor);if(Jv(n.name,A.Diagnostics.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type))return!0;if(N<2&&A.isPrivateIdentifier(n.name))return Jt(n.name,A.Diagnostics.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(N<2&&A.isAutoAccessorPropertyDeclaration(n))return Jt(n.name,A.Diagnostics.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(A.isAutoAccessorPropertyDeclaration(n)&&iAA(n.questionToken,A.Diagnostics.An_accessor_property_cannot_be_declared_optional))return!0}else if(n.parent.kind===261){if(Jv(n.name,A.Diagnostics.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(A.Debug.assertNode(n,A.isPropertySignature),n.initializer)return Jt(n.initializer,A.Diagnostics.An_interface_property_cannot_have_an_initializer)}else if(A.isTypeLiteralNode(n.parent)){if(Jv(n.name,A.Diagnostics.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(A.Debug.assertNode(n,A.isPropertySignature),n.initializer)return Jt(n.initializer,A.Diagnostics.A_type_literal_property_cannot_have_an_initializer)}if(n.flags&16777216&&c4A(n),A.isPropertyDeclaration(n)&&n.exclamationToken&&(!A.isClassLike(n.parent)||!n.type||n.initializer||n.flags&16777216||A.isStatic(n)||A.hasAbstractModifier(n))){var u=n.initializer?A.Diagnostics.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:n.type?A.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context:A.Diagnostics.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return Jt(n.exclamationToken,u)}}function oxe(n){return n.kind===261||n.kind===262||n.kind===269||n.kind===268||n.kind===275||n.kind===274||n.kind===267||A.hasSyntacticModifier(n,1027)?!1:il(n,A.Diagnostics.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function sxe(n){for(var u=0,h=n.statements;u=1?u=A.Diagnostics.Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:A.isChildOfNodeWithKind(n,198)?u=A.Diagnostics.Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:A.isChildOfNodeWithKind(n,302)&&(u=A.Diagnostics.Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0),u){var h=A.isPrefixUnaryExpression(n.parent)&&n.parent.operator===40,D=(h?"-":"")+"0o"+n.text;return Jt(h?n.parent:n,u,D)}}return lxe(n),!1}function lxe(n){var u=A.getTextOfNode(n).indexOf(".")!==-1,h=n.numericLiteralFlags&16;if(!(u||h)){var D=+n.text;D<=Math.pow(2,53)-1||fd(!1,A.createDiagnosticForNode(n,A.Diagnostics.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}}function uxe(n){var u=A.isLiteralTypeNode(n.parent)||A.isPrefixUnaryExpression(n.parent)&&A.isLiteralTypeNode(n.parent.parent);return!!(!u&&N<7&&Jt(n,A.Diagnostics.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))}function gxe(n,u,h,D,w){var R=A.getSourceFileOfNode(n);if(!Om(R)){var $=A.getSpanOfTokenAtPosition(R,n.pos);return xA.add(A.createFileDiagnostic(R,A.textSpanEnd($),0,u,h,D,w)),!0}return!1}function dxe(){return rr||(rr=[],mr.forEach(function(n,u){r.test(u)&&rr.push(n)})),rr}function pxe(n){var u;return n.isTypeOnly&&n.name&&n.namedBindings?Jt(n,A.Diagnostics.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both):n.isTypeOnly&&((u=n.namedBindings)===null||u===void 0?void 0:u.kind)===272?d4A(n.namedBindings):!1}function d4A(n){return!!A.forEach(n.elements,function(u){if(u.isTypeOnly)return il(u,u.kind===273?A.Diagnostics.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:A.Diagnostics.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement)})}function Exe(n){if(nA===A.ModuleKind.ES2015)return Jt(n,A.Diagnostics.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext);if(n.typeArguments)return Jt(n,A.Diagnostics.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);var u=n.arguments;if(nA!==A.ModuleKind.ESNext&&nA!==A.ModuleKind.NodeNext&&nA!==A.ModuleKind.Node16&&(n4(u),u.length>1)){var h=u[1];return Jt(h,A.Diagnostics.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nodenext)}if(u.length===0||u.length>2)return Jt(n,A.Diagnostics.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_assertion_as_arguments);var D=A.find(u,A.isSpreadElement);return D?Jt(D,A.Diagnostics.Argument_of_dynamic_import_cannot_be_spread_element):!1}function fxe(n,u){var h=A.getObjectFlags(n);if(h&20&&u.flags&1048576)return A.find(u.types,function(D){if(D.flags&524288){var w=h&A.getObjectFlags(D);if(w&4)return n.target===D.target;if(w&16)return!!n.aliasSymbol&&n.aliasSymbol===D.aliasSymbol}return!1})}function Bxe(n,u){if(A.getObjectFlags(n)&128&&Zf(u,dQ))return A.find(u.types,function(h){return!dQ(h)})}function hxe(n,u){var h=0,D=ia(n,h).length>0||(h=1,ia(n,h).length>0);if(D)return A.find(u.types,function(w){return ia(w,h).length>0})}function Qxe(n,u){var h;if(!(n.flags&406978556))for(var D=0,w=0,R=u.types;w=D&&(h=$,D=OA)}}}return h}function mxe(n){if(Rs(n,67108864)){var u=El(n,function(h){return!(h.flags&131068)});if(!(u.flags&131072))return u}return n}function p4A(n,u,h,D){if(u.flags&1048576&&n.flags&2621440){var w=GQA(u,n);if(w)return w;var R=co(n);if(R){var $=PQA(R,u);if($)return AZ(u,A.map($,function(DA){return[function(){return li(DA)},DA.escapedName]}),h,void 0,D)}}}}A.createTypeChecker=X;function Z(z){return!A.isAccessor(z)}function K(z){return z.kind!==259&&z.kind!==171||!!z.body}function J(z){switch(z.parent.kind){case 273:case 278:return A.isIdentifier(z);default:return A.isDeclarationName(z)}}var sA;(function(z){z.JSX="JSX",z.IntrinsicElements="IntrinsicElements",z.ElementClass="ElementClass",z.ElementAttributesPropertyNameContainer="ElementAttributesProperty",z.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",z.Element="Element",z.IntrinsicAttributes="IntrinsicAttributes",z.IntrinsicClassAttributes="IntrinsicClassAttributes",z.LibraryManagedAttributes="LibraryManagedAttributes"})(sA||(sA={}));function uA(z){switch(z){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function BA(z){return!!(z.flags&1)}A.signatureHasRestParameter=BA;function CA(z){return!!(z.flags&2)}A.signatureHasLiteralTypes=CA})(Oe||(Oe={}));var Oe;(function(A){var r;function t(T,v,F,y){if(T===void 0||v===void 0)return T;var S=v(T);if(S===T)return T;var U;if(S!==void 0)return A.isArray(S)?U=(y||H)(S):U=S,A.Debug.assertNode(U,F),U}A.visitNode=t;function i(T,v,F,y,S){if(T===void 0||v===void 0)return T;var U=T.length;(y===void 0||y<0)&&(y=0),(S===void 0||S>U-y)&&(S=U-y);var V,wA=-1,IA=-1;y>0||SU-y)&&(S=U-y),s(T,v,F,y,S)}A.visitArray=o;function s(T,v,F,y,S){var U,V=T.length;(y>0||S=2&&(S=p(S,F)),F.setLexicalEnvironmentFlags(1,!1)),F.suspendLexicalEnvironment(),S}A.visitParameterList=E;function p(T,v){for(var F,y=0;yVA||gA===VA&&QA>De)}function MA(TA,VA,De,_e,Ae,Q){A.Debug.assert(TA>=fA,"generatedLine cannot backtrack"),A.Debug.assert(VA>=0,"generatedCharacter cannot be negative"),A.Debug.assert(De===void 0||De>=0,"sourceIndex cannot be negative"),A.Debug.assert(_e===void 0||_e>=0,"sourceLine cannot be negative"),A.Debug.assert(Ae===void 0||Ae>=0,"sourceCharacter cannot be negative"),oA(),(jA(TA,VA)||ue(De,_e,Ae))&&(N(),fA=TA,M=VA,SA=!1,ce=!1,FA=!0),De!==void 0&&_e!==void 0&&Ae!==void 0&&(aA=De,gA=_e,QA=Ae,SA=!0,Q!==void 0&&(mA=Q,ce=!0)),cA()}function RA(TA,VA,De,_e,Ae,Q){A.Debug.assert(TA>=fA,"generatedLine cannot backtrack"),A.Debug.assert(VA>=0,"generatedCharacter cannot be negative"),oA();for(var Ze=[],Cr,be=B(De.mappings),Me=be.next();!Me.done;Me=be.next()){var Le=Me.value;if(Q&&(Le.generatedLine>Q.line||Le.generatedLine===Q.line&&Le.generatedCharacter>Q.character))break;if(!(Ae&&(Le.generatedLine=1024&&nA()}function N(){if(!(!FA||!lA())){if(oA(),uA0&&(sA+=String.fromCharCode.apply(void 0,J),J.length=0)}function kA(){return N(),nA(),{version:3,file:U,sourceRoot:V,sources:Y,names:Z,mappings:sA,sourcesContent:X}}function bA(TA){TA<0?TA=(-TA<<1)+1:TA=TA<<1;do{var VA=TA&31;TA=TA>>5,TA>0&&(VA=VA|32),tA(x(VA))}while(TA>0)}}A.createSourceMapGenerator=r;var t=/^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,i=/^\s*(\/\/[@#] .*)?$/;function o(S,U){return{getLineCount:function(){return U.length},getLineText:function(V){return S.substring(U[V],U[V+1])}}}A.getLineInfo=o;function s(S){for(var U=S.getLineCount()-1;U>=0;U--){var V=S.getLineText(U),wA=t.exec(V);if(wA)return A.trimStringEnd(wA[1]);if(!V.match(i))break}}A.tryGetSourceMappingURL=s;function g(S){return typeof S=="string"||S===null}function E(S){return S!==null&&typeof S=="object"&&S.version===3&&typeof S.file=="string"&&typeof S.mappings=="string"&&A.isArray(S.sources)&&A.every(S.sources,A.isString)&&(S.sourceRoot===void 0||S.sourceRoot===null||typeof S.sourceRoot=="string")&&(S.sourcesContent===void 0||S.sourcesContent===null||A.isArray(S.sourcesContent)&&A.every(S.sourcesContent,g))&&(S.names===void 0||S.names===null||A.isArray(S.names)&&A.every(S.names,A.isString))}A.isRawSourceMap=E;function p(S){try{var U=JSON.parse(S);if(E(U))return U}catch{}}A.tryParseRawSourceMap=p;function B(S){var U=!1,V=0,wA=0,IA=0,pA=0,oA=0,cA=0,eA=0,Y;return{get pos(){return V},get error(){return Y},get state(){return q(!0,!0)},next:function(){for(;!U&&V=S.length)return Z("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;var AA=O(S.charCodeAt(V));if(AA===-1)return Z("Invalid character in VLQ"),-1;BA=(AA&32)!==0,z=z|(AA&31)<>1,z=-z):z=z>>1,z}}A.decodeMappings=B;function m(S,U){return S===U||S.generatedLine===U.generatedLine&&S.generatedCharacter===U.generatedCharacter&&S.sourceIndex===U.sourceIndex&&S.sourceLine===U.sourceLine&&S.sourceCharacter===U.sourceCharacter&&S.nameIndex===U.nameIndex}A.sameMapping=m;function _(S){return S.sourceIndex!==void 0&&S.sourceLine!==void 0&&S.sourceCharacter!==void 0}A.isSourceMapping=_;function x(S){return S>=0&&S<26?65+S:S>=26&&S<52?97+S-26:S>=52&&S<62?48+S-52:S===62?43:S===63?47:A.Debug.fail("".concat(S,": not a base64 value"))}function O(S){return S>=65&&S<=90?S-65:S>=97&&S<=122?S-97+26:S>=48&&S<=57?S-48+52:S===43?62:S===47?63:-1}function k(S){return S.sourceIndex!==void 0&&S.sourcePosition!==void 0}function P(S,U){return S.generatedPosition===U.generatedPosition&&S.sourceIndex===U.sourceIndex&&S.sourcePosition===U.sourcePosition}function H(S,U){return A.Debug.assert(S.sourceIndex===U.sourceIndex),A.compareValues(S.sourcePosition,U.sourcePosition)}function T(S,U){return A.compareValues(S.generatedPosition,U.generatedPosition)}function v(S){return S.sourcePosition}function F(S){return S.generatedPosition}function y(S,U,V){var wA=A.getDirectoryPath(V),IA=U.sourceRoot?A.getNormalizedAbsolutePath(U.sourceRoot,wA):wA,pA=A.getNormalizedAbsolutePath(U.file,wA),oA=S.getSourceFileLike(pA),cA=U.sources.map(function(CA){return A.getNormalizedAbsolutePath(CA,IA)}),eA=new A.Map(cA.map(function(CA,z){return[S.getCanonicalFileName(CA),z]})),Y,q,X;return{getSourcePosition:BA,getGeneratedPosition:uA};function Z(CA){var z=oA!==void 0?A.getPositionOfLineAndCharacter(oA,CA.generatedLine,CA.generatedCharacter,!0):-1,AA,iA;if(_(CA)){var _A=S.getSourceFileLike(cA[CA.sourceIndex]);AA=U.sources[CA.sourceIndex],iA=_A!==void 0?A.getPositionOfLineAndCharacter(_A,CA.sourceLine,CA.sourceCharacter,!0):-1}return{generatedPosition:z,source:AA,sourceIndex:CA.sourceIndex,sourcePosition:iA,nameIndex:CA.nameIndex}}function K(){if(Y===void 0){var CA=B(U.mappings),z=A.arrayFrom(CA,Z);CA.error!==void 0?(S.log&&S.log("Encountered error while decoding sourcemap: ".concat(CA.error)),Y=A.emptyArray):Y=z}return Y}function J(CA){if(X===void 0){for(var z=[],AA=0,iA=K();AA0&&X!==q.elements.length||!!(q.elements.length-X)&&A.isDefaultImport(Y)}A.getImportNeedsImportStarHelper=g;function E(Y){return!g(Y)&&(A.isDefaultImport(Y)||!!Y.importClause&&A.isNamedImports(Y.importClause.namedBindings)&&t(Y.importClause.namedBindings))}A.getImportNeedsImportDefaultHelper=E;function p(Y,q,X,Z){for(var K=[],J=A.createMultiMap(),sA=[],uA=new A.Map,BA,CA=!1,z,AA=!1,iA=!1,_A=!1,fA=0,M=q.statements;fA=64&&Y<=78}A.isCompoundAssignment=O;function k(Y){switch(Y){case 64:return 39;case 65:return 40;case 66:return 41;case 67:return 42;case 68:return 43;case 69:return 44;case 70:return 47;case 71:return 48;case 72:return 49;case 73:return 50;case 74:return 51;case 78:return 52;case 75:return 56;case 76:return 55;case 77:return 60}}A.getNonAssignmentOperatorForCompoundAssignment=k;function P(Y){if(A.isExpressionStatement(Y)){var q=A.skipParentheses(Y.expression);return A.isSuperCall(q)?q:void 0}}A.getSuperCallFromStatement=P;function H(Y,q){for(var X=q;X0&&A.parameterIsThisKeyword(X[0]),K=Z?1:0,J=Z?X.length-1:X.length,sA=0;sA=1&&!(X.transformFlags&98304)&&!(A.getTargetOfBindingOrAssignmentElement(X).transformFlags&98304)&&!A.isComputedPropertyName(Z))eA=A.append(eA,A.visitNode(X,S.visitor));else{eA&&(S.emitBindingOrAssignment(S.createObjectBindingOrAssignmentPattern(eA),wA,IA,V),eA=void 0);var K=O(S,wA,Z);A.isComputedPropertyName(Z)&&(Y=A.append(Y,K.argumentExpression)),p(S,X,K,X)}}}eA&&S.emitBindingOrAssignment(S.createObjectBindingOrAssignmentPattern(eA),wA,IA,V)}function m(S,U,V,wA,IA){var pA=A.getElementsOfBindingOrAssignmentPattern(V),oA=pA.length;if(S.level<1&&S.downlevelIteration)wA=k(S,A.setTextRange(S.context.getEmitHelperFactory().createReadHelper(wA,oA>0&&A.getRestIndicatorOfBindingOrAssignmentElement(pA[oA-1])?void 0:oA),IA),!1,IA);else if(oA!==1&&(S.level<1||oA===0)||A.every(pA,A.isOmittedExpression)){var cA=!A.isDeclarationBindingElement(U)||oA!==0;wA=k(S,wA,cA,IA)}for(var eA,Y,q=0;q=1)if(X.transformFlags&65536||S.hasTransformedPriorElement&&!_(X)){S.hasTransformedPriorElement=!0;var Z=S.context.factory.createTempVariable(void 0);S.hoistTempVariables&&S.context.hoistVariableDeclaration(Z),Y=A.append(Y,[Z,X]),eA=A.append(eA,S.createArrayBindingOrAssignmentElement(Z))}else eA=A.append(eA,X);else{if(A.isOmittedExpression(X))continue;if(A.getRestIndicatorOfBindingOrAssignmentElement(X)){if(q===oA-1){var K=S.context.factory.createArraySliceCall(wA,q);p(S,X,K,X)}}else{var K=S.context.factory.createElementAccessExpression(wA,q);p(S,X,K,X)}}}if(eA&&S.emitBindingOrAssignment(S.createArrayBindingOrAssignmentPattern(eA),wA,IA,V),Y)for(var J=0,sA=Y;J=A.ModuleKind.ES2015)&&!A.isJsonSourceFile(le);return g.updateSourceFile(le,A.visitLexicalEnvironment(le.statements,K,s,0,Ir))}function aA(le){return g.updateObjectLiteralExpression(le,A.visitNodes(le.properties,AA(le),A.isObjectLiteralElement))}function gA(le,Ir){var ut=0;A.some(Ir)&&(ut|=1);var Ii=A.getEffectiveBaseTypeNode(le);return Ii&&A.skipOuterExpressions(Ii.expression).kind!==104&&(ut|=64),A.classOrConstructorParameterIsDecorated(le)&&(ut|=2),A.childIsDecorated(le)&&(ut|=4),Xe(le)?ut|=8:ar(le)?ut|=32:Mr(le)&&(ut|=16),k<=1&&ut&7&&(ut|=128),ut}function QA(le){return!!(le.transformFlags&8192)}function mA(le){return A.hasDecorators(le)||A.some(le.typeParameters)||A.some(le.heritageClauses,QA)||A.some(le.members,QA)}function FA(le){if(!mA(le)&&!(y&&A.hasSyntacticModifier(le,1)))return g.updateClassDeclaration(le,A.visitNodes(le.modifiers,_A,A.isModifier),le.name,void 0,A.visitNodes(le.heritageClauses,X,A.isHeritageClause),A.visitNodes(le.members,CA(le),A.isClassElement));var Ir=A.getProperties(le,!0,!0),ut=gA(le,Ir);ut&128&&s.startLexicalEnvironment();var Ii=le.name||(ut&5?g.getGeneratedNameForNode(le):void 0),Zi=A.getAllDecoratorsOfClass(le),yi=re(le,le,Zi),zt=ut&128?A.elideNodes(g,le.modifiers):A.visitNodes(le.modifiers,_A,A.isModifier),cn=g.updateClassDeclaration(le,A.concatenate(yi,zt),Ii,void 0,A.visitNodes(le.heritageClauses,X,A.isHeritageClause),ce(le)),Ui=A.getEmitFlags(le);ut&1&&(Ui|=32),A.setEmitFlags(cn,Ui);var Mi=[cn];if(ut&128){var yt=A.createTokenRange(A.skipTrivia(F.text,le.members.end),19),Ya=g.getInternalName(le),Wn=g.createPartiallyEmittedExpression(Ya);A.setTextRangeEnd(Wn,yt.end),A.setEmitFlags(Wn,1536);var jn=g.createReturnStatement(Wn);A.setTextRangePos(jn,yt.pos),A.setEmitFlags(jn,1920),Mi.push(jn),A.insertStatementsAfterStandardPrologue(Mi,s.endLexicalEnvironment());var Ho=g.createImmediatelyInvokedArrowFunction(Mi);A.setEmitFlags(Ho,33554432);var _a=g.createVariableStatement(void 0,g.createVariableDeclarationList([g.createVariableDeclaration(g.getLocalName(le,!1,!1),void 0,void 0,Ho)]));A.setOriginalNode(_a,le),A.setCommentRange(_a,le),A.setSourceMapRange(_a,A.moveRangePastDecorators(le)),A.startOnNewLine(_a),Mi=[_a]}return ut&8?lt(Mi,le):(ut&128||ut&2)&&(ut&32?Mi.push(g.createExportDefault(g.getLocalName(le,!1,!0))):ut&16&&Mi.push(g.createExternalModuleExport(g.getLocalName(le,!1,!0)))),Mi.length>1&&(Mi.push(g.createEndOfDeclarationMarker(le)),A.setEmitFlags(cn,A.getEmitFlags(cn)|4194304)),A.singleOrMany(Mi)}function SA(le){var Ir=A.getAllDecoratorsOfClass(le),ut=re(le,le,Ir);return g.updateClassExpression(le,ut,le.name,void 0,A.visitNodes(le.heritageClauses,X,A.isHeritageClause),mA(le)?ce(le):A.visitNodes(le.members,CA(le),A.isClassElement))}function ce(le){var Ir=[],ut=A.getFirstConstructorWithBody(le),Ii=ut&&A.filter(ut.parameters,function(cn){return A.isParameterPropertyDeclaration(cn,ut)});if(Ii)for(var Zi=0,yi=Ii;Zi=0&&A.addRange(Ii,A.visitNodes(le.statements,X,A.isStatement,Zi,yi+1-Zi));var zt=A.mapDefined(ut,_e);yi>=0?A.addRange(Ii,zt):Ii=dt(dt(dt([],Ii.slice(0,Zi),!0),zt,!0),Ii.slice(Zi),!0);var cn=yi>=0?yi+1:Zi;A.addRange(Ii,A.visitNodes(le.statements,X,A.isStatement,cn)),Ii=g.mergeLexicalEnvironment(Ii,m());var Ui=g.createBlock(A.setTextRange(g.createNodeArray(Ii),le.statements),!0);return A.setTextRange(Ui,le),A.setOriginalNode(Ui,le),Ui}function _e(le){var Ir=le.name;if(A.isIdentifier(Ir)){var ut=A.setParent(A.setTextRange(g.cloneNode(Ir),Ir),Ir.parent);A.setEmitFlags(ut,1584);var Ii=A.setParent(A.setTextRange(g.cloneNode(Ir),Ir),Ir.parent);return A.setEmitFlags(Ii,1536),A.startOnNewLine(A.removeAllComments(A.setTextRange(A.setOriginalNode(g.createExpressionStatement(g.createAssignment(A.setTextRange(g.createPropertyAccessExpression(g.createThis(),ut),le.name),Ii)),le),A.moveRangePos(le,-1))))}}function Ae(le,Ir){if(!(le.transformFlags&1))return le;if(bA(le)){var ut=A.isClassLike(Ir)?A.getAllDecoratorsOfClassElement(le,Ir):void 0,Ii=A.isClassLike(Ir)?re(le,Ir,ut):void 0;return g.updateMethodDeclaration(le,A.concatenate(Ii,A.visitNodes(le.modifiers,_A,A.isModifierLike)),le.asteriskToken,N(le),void 0,void 0,A.visitParameterList(le.parameters,X,s),void 0,A.visitFunctionBody(le.body,X,s))}}function Q(le){return!(A.nodeIsMissing(le.body)&&A.hasSyntacticModifier(le,256))}function Ze(le,Ir){if(!(le.transformFlags&1))return le;if(Q(le)){var ut=A.isClassLike(Ir)?re(le,Ir,A.getAllDecoratorsOfClassElement(le,Ir)):void 0;return g.updateGetAccessorDeclaration(le,A.concatenate(ut,A.visitNodes(le.modifiers,_A,A.isModifierLike)),N(le),A.visitParameterList(le.parameters,X,s),void 0,A.visitFunctionBody(le.body,X,s)||g.createBlock([]))}}function Cr(le,Ir){if(!(le.transformFlags&1))return le;if(Q(le)){var ut=A.isClassLike(Ir)?re(le,Ir,A.getAllDecoratorsOfClassElement(le,Ir)):void 0;return g.updateSetAccessorDeclaration(le,A.concatenate(ut,A.visitNodes(le.modifiers,_A,A.isModifierLike)),N(le),A.visitParameterList(le.parameters,X,s),A.visitFunctionBody(le.body,X,s)||g.createBlock([]))}}function be(le){if(!bA(le))return g.createNotEmittedStatement(le);var Ir=g.updateFunctionDeclaration(le,A.visitNodes(le.modifiers,_A,A.isModifier),le.asteriskToken,le.name,void 0,A.visitParameterList(le.parameters,X,s),void 0,A.visitFunctionBody(le.body,X,s)||g.createBlock([]));if(Xe(le)){var ut=[Ir];return lt(ut,le),ut}return Ir}function Me(le){if(!bA(le))return g.createOmittedExpression();var Ir=g.updateFunctionExpression(le,A.visitNodes(le.modifiers,_A,A.isModifier),le.asteriskToken,le.name,void 0,A.visitParameterList(le.parameters,X,s),void 0,A.visitFunctionBody(le.body,X,s)||g.createBlock([]));return Ir}function Le(le){var Ir=g.updateArrowFunction(le,A.visitNodes(le.modifiers,_A,A.isModifier),void 0,A.visitParameterList(le.parameters,X,s),void 0,le.equalsGreaterThanToken,A.visitFunctionBody(le.body,X,s));return Ir}function ir(le){if(!A.parameterIsThisKeyword(le)){var Ir=g.updateParameterDeclaration(le,A.elideNodes(g,le.modifiers),le.dotDotDotToken,A.visitNode(le.name,X,A.isBindingName),void 0,void 0,A.visitNode(le.initializer,X,A.isExpression));return Ir!==le&&(A.setCommentRange(Ir,le),A.setTextRange(Ir,A.moveRangePastModifiers(le)),A.setSourceMapRange(Ir,A.moveRangePastModifiers(le)),A.setEmitFlags(Ir.name,32)),Ir}}function Ye(le){if(Xe(le)){var Ir=A.getInitializedVariables(le.declarationList);return Ir.length===0?void 0:A.setTextRange(g.createExpressionStatement(g.inlineExpressions(A.map(Ir,mr))),le)}else return A.visitEachChild(le,X,s)}function mr(le){var Ir=le.name;return A.isBindingPattern(Ir)?A.flattenDestructuringAssignment(le,X,s,0,!1,gt):A.setTextRange(g.createAssignment(Pr(Ir),A.visitNode(le.initializer,X,A.isExpression)),le)}function $e(le){var Ir=g.updateVariableDeclaration(le,A.visitNode(le.name,X,A.isBindingName),void 0,void 0,A.visitNode(le.initializer,X,A.isExpression));return le.type&&A.setTypeNode(Ir.name,le.type),Ir}function xr(le){var Ir=A.skipOuterExpressions(le.expression,-7);if(A.isAssertionExpression(Ir)){var ut=A.visitNode(le.expression,X,A.isExpression);return g.createPartiallyEmittedExpression(ut,le)}return A.visitEachChild(le,X,s)}function PA(le){var Ir=A.visitNode(le.expression,X,A.isExpression);return g.createPartiallyEmittedExpression(Ir,le)}function we(le){var Ir=A.visitNode(le.expression,X,A.isLeftHandSideExpression);return g.createPartiallyEmittedExpression(Ir,le)}function LA(le){var Ir=A.visitNode(le.expression,X,A.isExpression);return g.createPartiallyEmittedExpression(Ir,le)}function ae(le){return g.updateCallExpression(le,A.visitNode(le.expression,X,A.isExpression),void 0,A.visitNodes(le.arguments,X,A.isExpression))}function We(le){return g.updateNewExpression(le,A.visitNode(le.expression,X,A.isExpression),void 0,A.visitNodes(le.arguments,X,A.isExpression))}function YA(le){return g.updateTaggedTemplateExpression(le,A.visitNode(le.tag,X,A.isExpression),void 0,A.visitNode(le.template,X,A.isExpression))}function Ce(le){return g.updateJsxSelfClosingElement(le,A.visitNode(le.tagName,X,A.isJsxTagNameExpression),void 0,A.visitNode(le.attributes,X,A.isJsxAttributes))}function Ke(le){return g.updateJsxOpeningElement(le,A.visitNode(le.tagName,X,A.isJsxTagNameExpression),void 0,A.visitNode(le.attributes,X,A.isJsxAttributes))}function er(le){return!A.isEnumConst(le)||A.shouldPreserveConstEnums(O)}function ur(le){if(!er(le))return g.createNotEmittedStatement(le);var Ir=[],ut=2,Ii=Ur(Ir,le);Ii&&(P!==A.ModuleKind.System||U!==F)&&(ut|=512);var Zi=Et(le),yi=Zt(le),zt=A.hasSyntacticModifier(le,1)?g.getExternalModuleOrNamespaceExportName(S,le,!1,!0):g.getLocalName(le,!1,!0),cn=g.createLogicalOr(zt,g.createAssignment(zt,g.createObjectLiteralExpression()));if(Ge(le)){var Ui=g.getLocalName(le,!1,!0);cn=g.createAssignment(Ui,cn)}var Mi=g.createExpressionStatement(g.createCallExpression(g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,Zi)],void 0,hr(le,yi)),void 0,[cn]));return A.setOriginalNode(Mi,le),Ii&&(A.setSyntheticLeadingComments(Mi,void 0),A.setSyntheticTrailingComments(Mi,void 0)),A.setTextRange(Mi,le),A.addEmitFlags(Mi,ut),Ir.push(Mi),Ir.push(g.createEndOfDeclarationMarker(le)),Ir}function hr(le,Ir){var ut=S;S=Ir;var Ii=[];p();var Zi=A.map(le.members,Fr);return A.insertStatementsAfterStandardPrologue(Ii,m()),A.addRange(Ii,Zi),S=ut,g.createBlock(A.setTextRange(g.createNodeArray(Ii),le.members),!0)}function Fr(le){var Ir=tA(le,!1),ut=qA(le),Ii=g.createAssignment(g.createElementAccessExpression(S,Ir),ut),Zi=ut.kind===10?Ii:g.createAssignment(g.createElementAccessExpression(S,Ii),Ir);return A.setTextRange(g.createExpressionStatement(A.setTextRange(Zi,le)),le)}function qA(le){var Ir=x.getConstantValue(le);return Ir!==void 0?typeof Ir=="string"?g.createStringLiteral(Ir):g.createNumericLiteral(Ir):(Ot(),le.initializer?A.visitNode(le.initializer,X,A.isExpression):g.createVoidZero())}function oe(le){var Ir=A.getParseTreeNode(le,A.isModuleDeclaration);return Ir?A.isInstantiatedModule(Ir,A.shouldPreserveConstEnums(O)):!0}function Ge(le){return Xe(le)||or(le)&&P!==A.ModuleKind.ES2015&&P!==A.ModuleKind.ES2020&&P!==A.ModuleKind.ES2022&&P!==A.ModuleKind.ESNext&&P!==A.ModuleKind.System}function nr(le){V||(V=new A.Map);var Ir=tr(le);V.has(Ir)||V.set(Ir,le)}function Or(le){if(V){var Ir=tr(le);return V.get(Ir)===le}return!0}function tr(le){return A.Debug.assertNode(le.name,A.isIdentifier),le.name.escapedText}function Ur(le,Ir){var ut=g.createVariableStatement(A.visitNodes(Ir.modifiers,_A,A.isModifier),g.createVariableDeclarationList([g.createVariableDeclaration(g.getLocalName(Ir,!1,!0))],U.kind===308?0:1));if(A.setOriginalNode(ut,Ir),nr(Ir),Or(Ir))return Ir.kind===263?A.setSourceMapRange(ut.declarationList,Ir):A.setSourceMapRange(ut,Ir),A.setCommentRange(ut,Ir),A.addEmitFlags(ut,4195328),le.push(ut),!0;var Ii=g.createMergeDeclarationMarker(ut);return A.setEmitFlags(Ii,4195840),le.push(Ii),!1}function nt(le){if(!oe(le))return g.createNotEmittedStatement(le);A.Debug.assertNode(le.name,A.isIdentifier,"A TypeScript namespace should have an Identifier name."),_i();var Ir=[],ut=2,Ii=Ur(Ir,le);Ii&&(P!==A.ModuleKind.System||U!==F)&&(ut|=512);var Zi=Et(le),yi=Zt(le),zt=A.hasSyntacticModifier(le,1)?g.getExternalModuleOrNamespaceExportName(S,le,!1,!0):g.getLocalName(le,!1,!0),cn=g.createLogicalOr(zt,g.createAssignment(zt,g.createObjectLiteralExpression()));if(Ge(le)){var Ui=g.getLocalName(le,!1,!0);cn=g.createAssignment(Ui,cn)}var Mi=g.createExpressionStatement(g.createCallExpression(g.createFunctionExpression(void 0,void 0,void 0,void 0,[g.createParameterDeclaration(void 0,void 0,Zi)],void 0,ke(le,yi)),void 0,[cn]));return A.setOriginalNode(Mi,le),Ii&&(A.setSyntheticLeadingComments(Mi,void 0),A.setSyntheticTrailingComments(Mi,void 0)),A.setTextRange(Mi,le),A.addEmitFlags(Mi,ut),Ir.push(Mi),Ir.push(g.createEndOfDeclarationMarker(le)),Ir}function ke(le,Ir){var ut=S,Ii=y,Zi=V;S=Ir,y=le,V=void 0;var yi=[];p();var zt,cn;if(le.body)if(le.body.kind===265)Y(le.body,function(Ya){return A.addRange(yi,A.visitNodes(Ya.statements,uA,A.isStatement))}),zt=le.body.statements,cn=le.body;else{var Ui=nt(le.body);Ui&&(A.isArray(Ui)?A.addRange(yi,Ui):yi.push(Ui));var Mi=Je(le).body;zt=A.moveRangePos(Mi.statements,-1)}A.insertStatementsAfterStandardPrologue(yi,m()),S=ut,y=Ii,V=Zi;var yt=g.createBlock(A.setTextRange(g.createNodeArray(yi),zt),!0);return A.setTextRange(yt,cn),(!le.body||le.body.kind!==265)&&A.setEmitFlags(yt,A.getEmitFlags(yt)|1536),yt}function Je(le){if(le.body.kind===264){var Ir=Je(le.body);return Ir||le.body}}function Ar(le){if(!le.importClause)return le;if(!le.importClause.isTypeOnly){var Ir=A.visitNode(le.importClause,fr,A.isImportClause);return Ir||O.importsNotUsedAsValues===1||O.importsNotUsedAsValues===2?g.updateImportDeclaration(le,void 0,Ir,le.moduleSpecifier,le.assertClause):void 0}}function fr(le){A.Debug.assert(!le.isTypeOnly);var Ir=Bt(le)?le.name:void 0,ut=A.visitNode(le.namedBindings,te,A.isNamedImportBindings);return Ir||ut?g.updateImportClause(le,!1,Ir,ut):void 0}function te(le){if(le.kind===271)return Bt(le)?le:void 0;var Ir=O.preserveValueImports&&(O.importsNotUsedAsValues===1||O.importsNotUsedAsValues===2),ut=A.visitNodes(le.elements,Te,A.isImportSpecifier);return Ir||A.some(ut)?g.updateNamedImports(le,ut):void 0}function Te(le){return!le.isTypeOnly&&Bt(le)?le:void 0}function UA(le){return x.isValueAliasDeclaration(le)?A.visitEachChild(le,X,s):void 0}function Ee(le){if(!le.isTypeOnly){if(!le.exportClause||A.isNamespaceExport(le.exportClause))return le;var Ir=!!le.moduleSpecifier&&(O.importsNotUsedAsValues===1||O.importsNotUsedAsValues===2),ut=A.visitNode(le.exportClause,function(Ii){return pe(Ii,Ir)},A.isNamedExportBindings);return ut?g.updateExportDeclaration(le,void 0,le.isTypeOnly,ut,le.moduleSpecifier,le.assertClause):void 0}}function de(le,Ir){var ut=A.visitNodes(le.elements,ee,A.isExportSpecifier);return Ir||A.some(ut)?g.updateNamedExports(le,ut):void 0}function HA(le){return g.updateNamespaceExport(le,A.visitNode(le.name,X,A.isIdentifier))}function pe(le,Ir){return A.isNamespaceExport(le)?HA(le):de(le,Ir)}function ee(le){return!le.isTypeOnly&&x.isValueAliasDeclaration(le)?le:void 0}function Pe(le){return Bt(le)||!A.isExternalModule(F)&&x.isTopLevelValueImportEqualsWithEntityName(le)}function He(le){if(!le.isTypeOnly){if(A.isExternalModuleImportEqualsDeclaration(le)){var Ir=Bt(le);return!Ir&&O.importsNotUsedAsValues===1?A.setOriginalNode(A.setTextRange(g.createImportDeclaration(void 0,void 0,le.moduleReference.expression,void 0),le),le):Ir?A.visitEachChild(le,X,s):void 0}if(Pe(le)){var ut=A.createExpressionFromEntityName(g,le.moduleReference);return A.setEmitFlags(ut,3584),Mr(le)||!Xe(le)?A.setOriginalNode(A.setTextRange(g.createVariableStatement(A.visitNodes(le.modifiers,_A,A.isModifier),g.createVariableDeclarationList([A.setOriginalNode(g.createVariableDeclaration(le.name,void 0,void 0,ut),le)])),le),le):A.setOriginalNode(Lr(le.name,ut,le),le)}}}function Xe(le){return y!==void 0&&A.hasSyntacticModifier(le,1)}function or(le){return y===void 0&&A.hasSyntacticModifier(le,1)}function Mr(le){return or(le)&&!A.hasSyntacticModifier(le,1024)}function ar(le){return or(le)&&A.hasSyntacticModifier(le,1024)}function lt(le,Ir){var ut=g.createAssignment(g.getExternalModuleOrNamespaceExportName(S,Ir,!1,!0),g.getLocalName(Ir));A.setSourceMapRange(ut,A.createRange(Ir.name?Ir.name.pos:Ir.pos,Ir.end));var Ii=g.createExpressionStatement(ut);A.setSourceMapRange(Ii,A.createRange(-1,Ir.end)),le.push(Ii)}function Lr(le,Ir,ut){return A.setTextRange(g.createExpressionStatement(g.createAssignment(g.getNamespaceMemberName(S,le,!1,!0),Ir)),ut)}function gt(le,Ir,ut){return A.setTextRange(g.createAssignment(Pr(le),Ir),ut)}function Pr(le){return g.getNamespaceMemberName(S,le,!1,!0)}function Et(le){var Ir=g.getGeneratedNameForNode(le);return A.setSourceMapRange(Ir,le.name),Ir}function Zt(le){return g.getGeneratedNameForNode(le)}function Ot(){IA&8||(IA|=8,s.enableSubstitution(79))}function _i(){IA&2||(IA|=2,s.enableSubstitution(79),s.enableSubstitution(300),s.enableEmitNotification(264))}function ei(le){return A.getOriginalNode(le).kind===264}function Yt(le){return A.getOriginalNode(le).kind===263}function Xr(le,Ir,ut){var Ii=pA,Zi=F;A.isSourceFile(Ir)&&(F=Ir),IA&2&&ei(Ir)&&(pA|=2),IA&8&&Yt(Ir)&&(pA|=8),T(le,Ir,ut),pA=Ii,F=Zi}function JA(le,Ir){return Ir=v(le,Ir),le===1?XA(Ir):A.isShorthandPropertyAssignment(Ir)?Ve(Ir):Ir}function Ve(le){if(IA&2){var Ir=le.name,ut=ot(Ir);if(ut){if(le.objectAssignmentInitializer){var Ii=g.createAssignment(ut,le.objectAssignmentInitializer);return A.setTextRange(g.createPropertyAssignment(Ir,Ii),le)}return A.setTextRange(g.createPropertyAssignment(Ir,ut),le)}}return le}function XA(le){switch(le.kind){case 79:return Gr(le);case 208:return Sr(le);case 209:return Dr(le)}return le}function Gr(le){return ot(le)||le}function ot(le){if(IA&pA&&!A.isGeneratedIdentifier(le)&&!A.isLocalName(le)){var Ir=x.getReferencedExportContainer(le,!1);if(Ir&&Ir.kind!==308){var ut=pA&2&&Ir.kind===264||pA&8&&Ir.kind===263;if(ut)return A.setTextRange(g.createPropertyAccessExpression(g.getGeneratedNameForNode(Ir),le),le)}}}function Sr(le){return Yr(le)}function Dr(le){return Yr(le)}function Jr(le){return le.replace(/\*\//g,"*_/")}function Yr(le){var Ir=rt(le);if(Ir!==void 0){A.setConstantValue(le,Ir);var ut=typeof Ir=="string"?g.createStringLiteral(Ir):g.createNumericLiteral(Ir);if(!O.removeComments){var Ii=A.getOriginalNode(le,A.isAccessExpression);A.addSyntheticTrailingComment(ut,3," ".concat(Jr(A.getTextOfNode(Ii))," "))}return ut}return le}function rt(le){if(!O.isolatedModules)return A.isPropertyAccessExpression(le)||A.isElementAccessExpression(le)?x.getConstantValue(le):void 0}function Bt(le){return A.isInJSFile(le)||(O.preserveValueImports?x.isValueAliasDeclaration(le):x.isReferencedAliasDeclaration(le))}}A.transformTypeScript=o})(Oe||(Oe={}));var Oe;(function(A){var r;(function(O){O[O.ClassAliases=1]="ClassAliases",O[O.ClassStaticThisOrSuperReference=2]="ClassStaticThisOrSuperReference"})(r||(r={}));var t;(function(O){O.Field="f",O.Method="m",O.Accessor="a"})(t=A.PrivateIdentifierKind||(A.PrivateIdentifierKind={}));var i;(function(O){O[O.None=0]="None",O[O.ClassWasDecorated=1]="ClassWasDecorated",O[O.NeedsClassConstructorReference=2]="NeedsClassConstructorReference",O[O.NeedsClassSuperReference=4]="NeedsClassSuperReference",O[O.NeedsSubstitutionForThisInClassStaticField=8]="NeedsSubstitutionForThisInClassStaticField"})(i||(i={}));function o(O){var k=O.factory,P=O.hoistVariableDeclaration,H=O.endLexicalEnvironment,T=O.startLexicalEnvironment,v=O.resumeLexicalEnvironment,F=O.addBlockScopedVariable,y=O.getEmitResolver(),S=O.getCompilerOptions(),U=A.getEmitScriptTarget(S),V=A.getUseDefineForClassFields(S),wA=!V,IA=V&&U<9,pA=wA||IA,oA=U<9,cA=U<99,eA=U<9,Y=eA&&U>=2,q=pA||oA||cA,X=O.onSubstituteNode;O.onSubstituteNode=Je;var Z=O.onEmitNode;O.onEmitNode=ke;var K,J,sA,uA,BA=[],CA=new A.Map,z,AA,iA,_A;return A.chainBundle(O,fA);function fA(JA){if(JA.isDeclarationFile||!q)return JA;var Ve=A.visitEachChild(JA,M,O);return A.addEmitHelpers(Ve,O.readEmitHelpers()),Ve}function M(JA){if(!(JA.transformFlags&16777216)&&!(JA.transformFlags&134234112))return JA;switch(JA.kind){case 127:return cA?void 0:JA;case 260:return we(JA);case 228:return ae(JA);case 172:return YA(JA);case 169:return bA(JA);case 240:return $A(JA);case 80:return ce(JA);case 208:return De(JA);case 209:return _e(JA);case 221:case 222:return Ae(JA,!1);case 223:return ir(JA,!1);case 210:return be(JA);case 241:return Ze(JA);case 212:return Me(JA);case 245:return Q(JA);case 259:case 215:case 173:case 171:case 174:case 175:return RA(void 0,aA,JA);default:return aA(JA)}}function aA(JA){return A.visitEachChild(JA,M,O)}function gA(JA){switch(JA.kind){case 221:case 222:return Ae(JA,!0);case 223:return ir(JA,!0);default:return M(JA)}}function QA(JA){switch(JA.kind){case 294:return A.visitEachChild(JA,QA,O);case 230:return xr(JA);default:return M(JA)}}function mA(JA){switch(JA.kind){case 207:case 206:return Xr(JA);default:return M(JA)}}function FA(JA){switch(JA.kind){case 173:return ue(JA);case 174:case 175:case 171:return RA(void 0,MA,JA);case 169:return RA(void 0,bA,JA);case 164:return jA(JA);case 237:return JA;default:return M(JA)}}function SA(JA){switch(JA.kind){case 169:return kA(JA);case 174:case 175:return FA(JA);default:A.Debug.assertMissingNode(JA,"Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration");break}}function ce(JA){return!oA||A.isStatement(JA.parent)?JA:A.setOriginalNode(k.createIdentifier(""),JA)}function re(JA){return A.isPrivateIdentifier(JA.left)&&JA.operatorToken.kind===101}function KA(JA){var Ve=Pr(JA.left);if(Ve){var XA=A.visitNode(JA.right,M,A.isExpression);return A.setOriginalNode(O.getEmitHelperFactory().createClassPrivateFieldInHelper(Ve.brandCheckIdentifier,XA),JA)}return A.visitEachChild(JA,M,O)}function $A(JA){var Ve=uA;uA=[];var XA=A.visitEachChild(JA,M,O),Gr=A.some(uA)?dt([XA],uA,!0):XA;return uA=Ve,Gr}function jA(JA){var Ve=A.visitNode(JA.expression,M,A.isExpression);return A.some(sA)&&(A.isParenthesizedExpression(Ve)?Ve=k.updateParenthesizedExpression(Ve,k.inlineExpressions(dt(dt([],sA,!0),[Ve.expression],!1))):Ve=k.inlineExpressions(dt(dt([],sA,!0),[Ve],!1)),sA=void 0),k.updateComputedPropertyName(JA,Ve)}function ue(JA){return AA?ur(JA,AA):aA(JA)}function MA(JA){if(A.Debug.assert(!A.hasDecorators(JA)),!oA||!A.isPrivateIdentifier(JA.name))return A.visitEachChild(JA,FA,O);var Ve=Pr(JA.name);if(A.Debug.assert(Ve,"Undeclared private name for property declaration."),!Ve.isValid)return JA;var XA=lA(JA);XA&&ee().push(k.createAssignment(XA,k.createFunctionExpression(A.filter(JA.modifiers,function(Gr){return A.isModifier(Gr)&&!A.isStaticModifier(Gr)&&!A.isAccessorModifier(Gr)}),JA.asteriskToken,XA,void 0,A.visitParameterList(JA.parameters,M,O),void 0,A.visitFunctionBody(JA.body,M,O))))}function RA(JA,Ve,XA){var Gr=_A;_A=JA;var ot=Ve(XA);return _A=Gr,ot}function lA(JA){A.Debug.assert(A.isPrivateIdentifier(JA.name));var Ve=Pr(JA.name);if(A.Debug.assert(Ve,"Undeclared private name for property declaration."),Ve.kind==="m")return Ve.methodName;if(Ve.kind==="a"){if(A.isGetAccessor(JA))return Ve.getterName;if(A.isSetAccessor(JA))return Ve.setterName}}function tA(JA){A.Debug.assertEachNode(JA.modifiers,A.isModifier);var Ve=A.getCommentRange(JA),XA=A.getSourceMapRange(JA),Gr=JA.name,ot=Gr,Sr=Gr;if(A.isComputedPropertyName(Gr)&&!A.isSimpleInlineableExpression(Gr.expression)){var Dr=k.createTempVariable(P);A.setSourceMapRange(Dr,Gr.expression);var Jr=A.visitNode(Gr.expression,M,A.isExpression),Yr=k.createAssignment(Dr,Jr);A.setSourceMapRange(Yr,Gr.expression),ot=k.updateComputedPropertyName(Gr,k.inlineExpressions([Yr,Dr])),Sr=k.updateComputedPropertyName(Gr,Dr)}var rt=A.createAccessorPropertyBackingField(k,JA,JA.modifiers,JA.initializer);A.setOriginalNode(rt,JA),A.setEmitFlags(rt,1536),A.setSourceMapRange(rt,XA);var Bt=A.createAccessorPropertyGetRedirector(k,JA,JA.modifiers,ot);A.setOriginalNode(Bt,JA),A.setCommentRange(Bt,Ve),A.setSourceMapRange(Bt,XA);var le=A.createAccessorPropertySetRedirector(k,JA,JA.modifiers,Sr);return A.setOriginalNode(le,JA),A.setEmitFlags(le,1536),A.setSourceMapRange(le,XA),A.visitArray([rt,Bt,le],SA,A.isClassElement)}function N(JA){if(oA){var Ve=Pr(JA.name);return A.Debug.assert(Ve,"Undeclared private name for property declaration."),Ve.isValid?void 0:JA}return wA&&!A.isStatic(JA)?k.updatePropertyDeclaration(JA,A.visitNodes(JA.modifiers,M,A.isModifierLike),JA.name,void 0,void 0,void 0):A.visitEachChild(JA,M,O)}function nA(JA){if(pA){var Ve=UA(JA.name,!!JA.initializer||V);if(Ve&&ee().push(Ve),A.isStatic(JA)&&!oA){var XA=qA(JA,k.createThis());if(XA){var Gr=k.createClassStaticBlockDeclaration(k.createBlock([XA]));return A.setOriginalNode(Gr,JA),A.setCommentRange(Gr,JA),A.setCommentRange(XA,{pos:-1,end:-1}),A.setSyntheticLeadingComments(XA,void 0),A.setSyntheticTrailingComments(XA,void 0),Gr}}return}return A.visitEachChild(JA,FA,O)}function kA(JA){return A.Debug.assert(!A.hasDecorators(JA),"Decorators should already have been transformed and elided."),A.isPrivateIdentifierClassElementDeclaration(JA)?N(JA):nA(JA)}function bA(JA){return cA&&A.isAutoAccessorPropertyDeclaration(JA)?tA(JA):kA(JA)}function TA(JA,Ve){return VA(JA,A.visitNode(Ve,M,A.isExpression))}function VA(JA,Ve){switch(A.setCommentRange(Ve,A.moveRangePos(Ve,-1)),JA.kind){case"a":return O.getEmitHelperFactory().createClassPrivateFieldGetHelper(Ve,JA.brandCheckIdentifier,JA.kind,JA.getterName);case"m":return O.getEmitHelperFactory().createClassPrivateFieldGetHelper(Ve,JA.brandCheckIdentifier,JA.kind,JA.methodName);case"f":return O.getEmitHelperFactory().createClassPrivateFieldGetHelper(Ve,JA.brandCheckIdentifier,JA.kind,JA.variableName);default:A.Debug.assertNever(JA,"Unknown private element type")}}function De(JA){if(oA&&A.isPrivateIdentifier(JA.name)){var Ve=Pr(JA.name);if(Ve)return A.setTextRange(A.setOriginalNode(TA(Ve,JA.expression),JA),JA)}if(Y&&A.isSuperProperty(JA)&&A.isIdentifier(JA.name)&&_A&&z){var XA=z.classConstructor,Gr=z.superClassReference,ot=z.facts;if(ot&1)return nt(JA);if(XA&&Gr){var Sr=k.createReflectGetCall(Gr,k.createStringLiteralFromNode(JA.name),XA);return A.setOriginalNode(Sr,JA.expression),A.setTextRange(Sr,JA.expression),Sr}}return A.visitEachChild(JA,M,O)}function _e(JA){if(Y&&A.isSuperProperty(JA)&&_A&&z){var Ve=z.classConstructor,XA=z.superClassReference,Gr=z.facts;if(Gr&1)return nt(JA);if(Ve&&XA){var ot=k.createReflectGetCall(XA,A.visitNode(JA.argumentExpression,M,A.isExpression),Ve);return A.setOriginalNode(ot,JA.expression),A.setTextRange(ot,JA.expression),ot}}return A.visitEachChild(JA,M,O)}function Ae(JA,Ve){if(JA.operator===45||JA.operator===46){var XA=A.skipParentheses(JA.operand);if(oA&&A.isPrivateIdentifierPropertyAccessExpression(XA)){var Gr=void 0;if(Gr=Pr(XA.name)){var ot=A.visitNode(XA.expression,M,A.isExpression),Sr=Cr(ot),Dr=Sr.readExpression,Jr=Sr.initializeExpression,Yr=TA(Gr,Dr),rt=A.isPrefixUnaryExpression(JA)||Ve?void 0:k.createTempVariable(P);return Yr=A.expandPreOrPostfixIncrementOrDecrementExpression(k,JA,Yr,P,rt),Yr=Ye(Gr,Jr||Dr,Yr,63),A.setOriginalNode(Yr,JA),A.setTextRange(Yr,JA),rt&&(Yr=k.createComma(Yr,rt),A.setTextRange(Yr,JA)),Yr}}else if(Y&&A.isSuperProperty(XA)&&_A&&z){var Bt=z.classConstructor,le=z.superClassReference,Ir=z.facts;if(Ir&1){var Yr=nt(XA);return A.isPrefixUnaryExpression(JA)?k.updatePrefixUnaryExpression(JA,Yr):k.updatePostfixUnaryExpression(JA,Yr)}if(Bt&&le){var ut=void 0,Ii=void 0;if(A.isPropertyAccessExpression(XA)?A.isIdentifier(XA.name)&&(Ii=ut=k.createStringLiteralFromNode(XA.name)):A.isSimpleInlineableExpression(XA.argumentExpression)?Ii=ut=XA.argumentExpression:(Ii=k.createTempVariable(P),ut=k.createAssignment(Ii,A.visitNode(XA.argumentExpression,M,A.isExpression))),ut&&Ii){var Yr=k.createReflectGetCall(le,Ii,Bt);A.setTextRange(Yr,XA);var rt=Ve?void 0:k.createTempVariable(P);return Yr=A.expandPreOrPostfixIncrementOrDecrementExpression(k,JA,Yr,P,rt),Yr=k.createReflectSetCall(le,ut,Yr,Bt),A.setOriginalNode(Yr,JA),A.setTextRange(Yr,JA),rt&&(Yr=k.createComma(Yr,rt),A.setTextRange(Yr,JA)),Yr}}}}return A.visitEachChild(JA,M,O)}function Q(JA){return k.updateForStatement(JA,A.visitNode(JA.initializer,gA,A.isForInitializer),A.visitNode(JA.condition,M,A.isExpression),A.visitNode(JA.incrementor,gA,A.isExpression),A.visitIterationBody(JA.statement,M,O))}function Ze(JA){return k.updateExpressionStatement(JA,A.visitNode(JA.expression,gA,A.isExpression))}function Cr(JA){var Ve=A.nodeIsSynthesized(JA)?JA:k.cloneNode(JA);if(A.isSimpleInlineableExpression(JA))return{readExpression:Ve,initializeExpression:void 0};var XA=k.createTempVariable(P),Gr=k.createAssignment(XA,Ve);return{readExpression:XA,initializeExpression:Gr}}function be(JA){if(oA&&A.isPrivateIdentifierPropertyAccessExpression(JA.expression)){var Ve=k.createCallBinding(JA.expression,P,U),XA=Ve.thisArg,Gr=Ve.target;return A.isCallChain(JA)?k.updateCallChain(JA,k.createPropertyAccessChain(A.visitNode(Gr,M),JA.questionDotToken,"call"),void 0,void 0,dt([A.visitNode(XA,M,A.isExpression)],A.visitNodes(JA.arguments,M,A.isExpression),!0)):k.updateCallExpression(JA,k.createPropertyAccessExpression(A.visitNode(Gr,M),"call"),void 0,dt([A.visitNode(XA,M,A.isExpression)],A.visitNodes(JA.arguments,M,A.isExpression),!0))}if(Y&&A.isSuperProperty(JA.expression)&&_A&&z?.classConstructor){var ot=k.createFunctionCallCall(A.visitNode(JA.expression,M,A.isExpression),z.classConstructor,A.visitNodes(JA.arguments,M,A.isExpression));return A.setOriginalNode(ot,JA),A.setTextRange(ot,JA),ot}return A.visitEachChild(JA,M,O)}function Me(JA){if(oA&&A.isPrivateIdentifierPropertyAccessExpression(JA.tag)){var Ve=k.createCallBinding(JA.tag,P,U),XA=Ve.thisArg,Gr=Ve.target;return k.updateTaggedTemplateExpression(JA,k.createCallExpression(k.createPropertyAccessExpression(A.visitNode(Gr,M),"bind"),void 0,[A.visitNode(XA,M,A.isExpression)]),void 0,A.visitNode(JA.template,M,A.isTemplateLiteral))}if(Y&&A.isSuperProperty(JA.tag)&&_A&&z?.classConstructor){var ot=k.createFunctionBindCall(A.visitNode(JA.tag,M,A.isExpression),z.classConstructor,[]);return A.setOriginalNode(ot,JA),A.setTextRange(ot,JA),k.updateTaggedTemplateExpression(JA,ot,void 0,A.visitNode(JA.template,M,A.isTemplateLiteral))}return A.visitEachChild(JA,M,O)}function Le(JA){if(oA){z&&CA.set(A.getOriginalNodeId(JA),z),T();var Ve=RA(JA,function(Gr){return A.visitNodes(Gr,M,A.isStatement)},JA.body.statements);Ve=k.mergeLexicalEnvironment(Ve,H());var XA=k.createImmediatelyInvokedArrowFunction(Ve);return A.setOriginalNode(XA,JA),A.setTextRange(XA,JA),A.addEmitFlags(XA,2),XA}}function ir(JA,Ve){if(A.isDestructuringAssignment(JA)){var XA=sA;sA=void 0,JA=k.updateBinaryExpression(JA,A.visitNode(JA.left,mA),JA.operatorToken,A.visitNode(JA.right,M));var Gr=A.some(sA)?k.inlineExpressions(A.compact(dt(dt([],sA,!0),[JA],!1))):JA;return sA=XA,Gr}if(A.isAssignmentExpression(JA)){if(oA&&A.isPrivateIdentifierPropertyAccessExpression(JA.left)){var ot=Pr(JA.left.name);if(ot)return A.setTextRange(A.setOriginalNode(Ye(ot,JA.left.expression,JA.right,JA.operatorToken.kind),JA),JA)}else if(Y&&A.isSuperProperty(JA.left)&&_A&&z){var Sr=z.classConstructor,Dr=z.superClassReference,Jr=z.facts;if(Jr&1)return k.updateBinaryExpression(JA,nt(JA.left),JA.operatorToken,A.visitNode(JA.right,M,A.isExpression));if(Sr&&Dr){var Yr=A.isElementAccessExpression(JA.left)?A.visitNode(JA.left.argumentExpression,M,A.isExpression):A.isIdentifier(JA.left.name)?k.createStringLiteralFromNode(JA.left.name):void 0;if(Yr){var rt=A.visitNode(JA.right,M,A.isExpression);if(A.isCompoundAssignment(JA.operatorToken.kind)){var Bt=Yr;A.isSimpleInlineableExpression(Yr)||(Bt=k.createTempVariable(P),Yr=k.createAssignment(Bt,Yr));var le=k.createReflectGetCall(Dr,Bt,Sr);A.setOriginalNode(le,JA.left),A.setTextRange(le,JA.left),rt=k.createBinaryExpression(le,A.getNonAssignmentOperatorForCompoundAssignment(JA.operatorToken.kind),rt),A.setTextRange(rt,JA)}var Ir=Ve?void 0:k.createTempVariable(P);return Ir&&(rt=k.createAssignment(Ir,rt),A.setTextRange(Ir,JA)),rt=k.createReflectSetCall(Dr,Yr,rt,Sr),A.setOriginalNode(rt,JA),A.setTextRange(rt,JA),Ir&&(rt=k.createComma(rt,Ir),A.setTextRange(rt,JA)),rt}}}}return oA&&re(JA)?KA(JA):A.visitEachChild(JA,M,O)}function Ye(JA,Ve,XA,Gr){if(Ve=A.visitNode(Ve,M,A.isExpression),XA=A.visitNode(XA,M,A.isExpression),A.isCompoundAssignment(Gr)){var ot=Cr(Ve),Sr=ot.readExpression,Dr=ot.initializeExpression;Ve=Dr||Sr,XA=k.createBinaryExpression(VA(JA,Sr),A.getNonAssignmentOperatorForCompoundAssignment(Gr),XA)}switch(A.setCommentRange(Ve,A.moveRangePos(Ve,-1)),JA.kind){case"a":return O.getEmitHelperFactory().createClassPrivateFieldSetHelper(Ve,JA.brandCheckIdentifier,XA,JA.kind,JA.setterName);case"m":return O.getEmitHelperFactory().createClassPrivateFieldSetHelper(Ve,JA.brandCheckIdentifier,XA,JA.kind,void 0);case"f":return O.getEmitHelperFactory().createClassPrivateFieldSetHelper(Ve,JA.brandCheckIdentifier,XA,JA.kind,JA.variableName);default:A.Debug.assertNever(JA,"Unknown private element type")}}function mr(JA){return A.filter(JA.members,A.isNonStaticMethodOrAccessorWithPrivateName)}function $e(JA){var Ve=0,XA=A.getOriginalNode(JA);A.isClassDeclaration(XA)&&A.classOrConstructorParameterIsDecorated(XA)&&(Ve|=1);for(var Gr=0,ot=JA.members;Gr=0?(rt=le+1,Ir=dt(dt(dt([],Ir.slice(0,Bt),!0),A.visitNodes(Ve.body.statements,M,A.isStatement,Bt,rt-Bt),!0),Ir.slice(Bt),!0)):Bt>=0&&(rt=Bt)),Yr&&Ir.push(k.createExpressionStatement(k.createCallExpression(k.createSuper(),void 0,[k.createSpreadElement(k.createIdentifier("arguments"))])));var ut=0;if(Ve?.body)if(V)Ir=Ir.filter(function(Ya){return!A.isParameterPropertyDeclaration(A.getOriginalNode(Ya),Ve)});else{for(var Ii=0,Zi=Ve.body.statements;Ii0){var zt=A.visitNodes(Ve.body.statements,M,A.isStatement,rt,ut);if(le>=0)A.addRange(Ir,zt);else{var cn=Bt;Yr&&cn++,Ir=dt(dt(dt([],Ir.slice(0,cn),!0),zt,!0),Ir.slice(cn),!0)}rt+=ut}}var Ui=k.createThis();if(Ur(Ir,Dr,Ui),Fr(Ir,Sr,Ui),Ve&&A.addRange(Ir,A.visitNodes(Ve.body.statements,yt,A.isStatement,rt)),Ir=k.mergeLexicalEnvironment(Ir,H()),Ir.length===0&&!Ve)return;var Mi=Ve?.body&&Ve.body.statements.length>=Ir.length&&(ot=Ve.body.multiLine)!==null&&ot!==void 0?ot:Ir.length>0;return A.setTextRange(k.createBlock(A.setTextRange(k.createNodeArray(Ir),Ve?Ve.body.statements:JA.members),Mi),Ve?Ve.body:void 0);function yt(Ya){if(!(V&&A.isParameterPropertyDeclaration(A.getOriginalNode(Ya),Ve)))return M(Ya)}}function Fr(JA,Ve,XA){for(var Gr=0,ot=Ve;Gr=0;--Gr){var ot=BA[Gr];if(ot&&ot.privateIdentifierEnvironment){var XA=JA(ot.privateIdentifierEnvironment,Ve);if(XA)return XA}}}function _i(JA){var Ve=k.getGeneratedNameForNode(JA),XA=Pr(JA.name);if(!XA)return A.visitEachChild(JA,M,O);var Gr=JA.expression;return(A.isThisProperty(JA)||A.isSuperProperty(JA)||!A.isSimpleCopiableExpression(JA.expression))&&(Gr=k.createTempVariable(P,!0),ee().push(k.createBinaryExpression(Gr,63,A.visitNode(JA.expression,M,A.isExpression)))),k.createAssignmentTargetWrapper(Ve,Ye(XA,Gr,Ve,63))}function ei(JA){var Ve=A.getTargetOfBindingOrAssignmentElement(JA);if(Ve){var XA=void 0;if(A.isPrivateIdentifierPropertyAccessExpression(Ve))XA=_i(Ve);else if(Y&&A.isSuperProperty(Ve)&&_A&&z){var Gr=z.classConstructor,ot=z.superClassReference,Sr=z.facts;if(Sr&1)XA=nt(Ve);else if(Gr&&ot){var Dr=A.isElementAccessExpression(Ve)?A.visitNode(Ve.argumentExpression,M,A.isExpression):A.isIdentifier(Ve.name)?k.createStringLiteralFromNode(Ve.name):void 0;if(Dr){var Jr=k.createTempVariable(void 0);XA=k.createAssignmentTargetWrapper(Jr,k.createReflectSetCall(ot,Dr,Jr,Gr))}}}if(XA)return A.isAssignmentExpression(JA)?k.updateBinaryExpression(JA,XA,JA.operatorToken,A.visitNode(JA.right,M,A.isExpression)):A.isSpreadElement(JA)?k.updateSpreadElement(JA,XA):XA}return A.visitNode(JA,mA)}function Yt(JA){if(A.isObjectBindingOrAssignmentElement(JA)&&!A.isShorthandPropertyAssignment(JA)){var Ve=A.getTargetOfBindingOrAssignmentElement(JA),XA=void 0;if(Ve){if(A.isPrivateIdentifierPropertyAccessExpression(Ve))XA=_i(Ve);else if(Y&&A.isSuperProperty(Ve)&&_A&&z){var Gr=z.classConstructor,ot=z.superClassReference,Sr=z.facts;if(Sr&1)XA=nt(Ve);else if(Gr&&ot){var Dr=A.isElementAccessExpression(Ve)?A.visitNode(Ve.argumentExpression,M,A.isExpression):A.isIdentifier(Ve.name)?k.createStringLiteralFromNode(Ve.name):void 0;if(Dr){var Jr=k.createTempVariable(void 0);XA=k.createAssignmentTargetWrapper(Jr,k.createReflectSetCall(ot,Dr,Jr,Gr))}}}}if(A.isPropertyAssignment(JA)){var Yr=A.getInitializerOfBindingOrAssignmentElement(JA);return k.updatePropertyAssignment(JA,A.visitNode(JA.name,M,A.isPropertyName),XA?Yr?k.createAssignment(XA,A.visitNode(Yr,M)):XA:A.visitNode(JA.initializer,mA,A.isExpression))}if(A.isSpreadAssignment(JA))return k.updateSpreadAssignment(JA,XA||A.visitNode(JA.expression,mA,A.isExpression));A.Debug.assert(XA===void 0,"Should not have generated a wrapped target")}return A.visitNode(JA,M)}function Xr(JA){return A.isArrayLiteralExpression(JA)?k.updateArrayLiteralExpression(JA,A.visitNodes(JA.elements,ei,A.isExpression)):k.updateObjectLiteralExpression(JA,A.visitNodes(JA.properties,Yt,A.isObjectLiteralElementLike))}}A.transformClassFields=o;function s(O,k){return A.factory.createAssignment(O,A.factory.createObjectLiteralExpression([A.factory.createPropertyAssignment("value",k||A.factory.createVoidZero())]))}function g(O,k,P){return A.factory.createCallExpression(A.factory.createPropertyAccessExpression(P,"set"),void 0,[O,k||A.factory.createVoidZero()])}function E(O,k){return A.factory.createCallExpression(A.factory.createPropertyAccessExpression(k,"add"),void 0,[O])}function p(O){return!A.isGeneratedPrivateIdentifier(O)&&O.escapedText==="#constructor"}function B(O,k){return A.isGeneratedPrivateIdentifier(k)?x(O,A.getNodeForGeneratedName(k)):_(O,k.escapedText)}function m(O,k,P){var H,T;A.isGeneratedPrivateIdentifier(k)?((H=O.generatedIdentifiers)!==null&&H!==void 0||(O.generatedIdentifiers=new A.Map),O.generatedIdentifiers.set(A.getNodeForGeneratedName(k),P)):((T=O.identifiers)!==null&&T!==void 0||(O.identifiers=new A.Map),O.identifiers.set(k.escapedText,P))}function _(O,k){var P;return(P=O.identifiers)===null||P===void 0?void 0:P.get(k)}function x(O,k){var P;return(P=O.generatedIdentifiers)===null||P===void 0?void 0:P.get(k)}})(Oe||(Oe={}));var Oe;(function(A){function r(t){var i=t.hoistVariableDeclaration,o=t.getEmitResolver(),s=t.getCompilerOptions(),g=A.getEmitScriptTarget(s),E=A.getStrictOptionValue(s,"strictNullChecks"),p,B;return{serializeTypeNode:function(oA,cA){return m(oA,H,cA)},serializeTypeOfNode:function(oA,cA){return m(oA,x,cA)},serializeParameterTypesOfNode:function(oA,cA,eA){return m(oA,O,cA,eA)},serializeReturnTypeOfNode:function(oA,cA){return m(oA,P,cA)}};function m(oA,cA,eA,Y){var q=p,X=B;p=oA.currentLexicalScope,B=oA.currentNameScope;var Z=Y===void 0?cA(eA):cA(eA,Y);return p=q,B=X,Z}function _(oA){var cA=o.getAllAccessorDeclarations(oA);return cA.setAccessor&&A.getSetAccessorTypeAnnotationNode(cA.setAccessor)||cA.getAccessor&&A.getEffectiveReturnTypeNode(cA.getAccessor)}function x(oA){switch(oA.kind){case 169:case 166:return H(oA.type);case 175:case 174:return H(_(oA));case 260:case 228:case 171:return A.factory.createIdentifier("Function");default:return A.factory.createVoidZero()}}function O(oA,cA){var eA=A.isClassLike(oA)?A.getFirstConstructorWithBody(oA):A.isFunctionLike(oA)&&A.nodeIsPresent(oA.body)?oA:void 0,Y=[];if(eA)for(var q=k(eA,cA),X=q.length,Z=0;Z1&&(mA.push(i.createEndOfDeclarationMarker(QA)),A.setEmitFlags(mA[0],A.getEmitFlags(mA[0])|4194304)),A.singleOrMany(mA)}function P(QA){return!!(QA.transformFlags&536870912)}function H(QA){return A.some(QA,P)}function T(QA){for(var mA=0,FA=QA.members;mA0?A.isPropertyDeclaration(mA)&&!A.hasAccessorModifier(mA)?i.createVoidZero():i.createNull():void 0,$A=o().createDecorateHelper(SA,ce,re,KA);return A.setEmitFlags($A,1536),A.setSourceMapRange($A,A.moveRangePastModifiers(mA)),$A}}function J(QA,mA){var FA=sA(mA);FA&&QA.push(A.setOriginalNode(i.createExpressionStatement(FA),mA))}function sA(QA){var mA=A.getAllDecoratorsOfClass(QA),FA=eA(mA);if(FA){var SA=m&&m[A.getOriginalNodeId(QA)],ce=p<=2?i.getInternalName(QA,!1,!0):i.getLocalName(QA,!1,!0),re=o().createDecorateHelper(FA,ce),KA=i.createAssignment(ce,SA?i.createAssignment(SA,re):re);return A.setEmitFlags(KA,1536),A.setSourceMapRange(KA,A.moveRangePastModifiers(QA)),KA}}function uA(QA){return A.visitNode(QA.expression,O,A.isExpression)}function BA(QA,mA){var FA;if(QA){FA=[];for(var SA=0,ce=QA;SA=2&&_.getNodeCheckFlags(bA)&6144&&(A.getFunctionFlags(_e)&3)!==3;if(Ae){if(jA(),T.size){var Q=o(g,_,bA,T);F[A.getNodeId(Q)]=!0;var Ze=De.statements.slice();A.insertStatementsAfterStandardPrologue(Ze,[Q]),De=g.updateBlock(De,Ze)}v&&(_.getNodeCheckFlags(bA)&4096?A.addEmitHelper(De,A.advancedAsyncSuperHelper):_.getNodeCheckFlags(bA)&2048&&A.addEmitHelper(De,A.asyncSuperHelper))}return T=TA,v=VA,De}function re(bA){p();var TA=A.getOriginalNode(bA,A.isFunctionLike),VA=TA.type,De=O<2?$A(VA):void 0,_e=bA.kind===216,Ae=(_.getNodeCheckFlags(bA)&8192)!==0,Q=H;H=new A.Set;for(var Ze=0,Cr=bA.parameters;Ze=2&&_.getNodeCheckFlags(bA)&6144;if($e&&(jA(),T.size)){var xr=o(g,_,bA,T);F[A.getNodeId(xr)]=!0,A.insertStatementsAfterStandardPrologue(Ye,[xr])}var PA=g.createBlock(Ye,!0);A.setTextRange(PA,bA.body),$e&&v&&(_.getNodeCheckFlags(bA)&4096?A.addEmitHelper(PA,A.advancedAsyncSuperHelper):_.getNodeCheckFlags(bA)&2048&&A.addEmitHelper(PA,A.asyncSuperHelper)),ir=PA}return H=Q,_e||(T=Me,v=Le),ir}function KA(bA,TA){return A.isBlock(bA)?g.updateBlock(bA,A.visitNodes(bA.statements,q,A.isStatement,TA)):g.converters.convertToFunctionBlock(A.visitNode(bA,q,A.isConciseBody))}function $A(bA){var TA=bA&&A.getEntityNameFromTypeNode(bA);if(TA&&A.isEntityName(TA)){var VA=_.getTypeReferenceSerializationKind(TA);if(VA===A.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue||VA===A.TypeReferenceSerializationKind.Unknown)return TA}}function jA(){k&1||(k|=1,s.enableSubstitution(210),s.enableSubstitution(208),s.enableSubstitution(209),s.enableEmitNotification(260),s.enableEmitNotification(171),s.enableEmitNotification(174),s.enableEmitNotification(175),s.enableEmitNotification(173),s.enableEmitNotification(240))}function ue(bA,TA,VA){if(k&1&&nA(TA)){var De=_.getNodeCheckFlags(TA)&6144;if(De!==P){var _e=P;P=De,S(bA,TA,VA),P=_e;return}}else if(k&&F[A.getNodeId(TA)]){var _e=P;P=0,S(bA,TA,VA),P=_e;return}S(bA,TA,VA)}function MA(bA,TA){return TA=U(bA,TA),bA===1&&P?RA(TA):TA}function RA(bA){switch(bA.kind){case 208:return lA(bA);case 209:return tA(bA);case 210:return N(bA)}return bA}function lA(bA){return bA.expression.kind===106?A.setTextRange(g.createPropertyAccessExpression(g.createUniqueName("_super",48),bA.name),bA):bA}function tA(bA){return bA.expression.kind===106?kA(bA.argumentExpression,bA):bA}function N(bA){var TA=bA.expression;if(A.isSuperProperty(TA)){var VA=A.isPropertyAccessExpression(TA)?lA(TA):tA(TA);return g.createCallExpression(g.createPropertyAccessExpression(VA,"call"),void 0,dt([g.createThis()],bA.arguments,!0))}return bA}function nA(bA){var TA=bA.kind;return TA===260||TA===173||TA===171||TA===174||TA===175}function kA(bA,TA){return P&4096?A.setTextRange(g.createPropertyAccessExpression(g.createCallExpression(g.createUniqueName("_superIndex",48),void 0,[bA]),"value"),TA):A.setTextRange(g.createCallExpression(g.createUniqueName("_superIndex",48),void 0,[bA]),TA)}}A.transformES2017=i;function o(s,g,E,p){var B=(g.getNodeCheckFlags(E)&4096)!==0,m=[];return p.forEach(function(_,x){var O=A.unescapeLeadingUnderscores(x),k=[];k.push(s.createPropertyAssignment("get",s.createArrowFunction(void 0,void 0,[],void 0,void 0,A.setEmitFlags(s.createPropertyAccessExpression(A.setEmitFlags(s.createSuper(),4),O),4)))),B&&k.push(s.createPropertyAssignment("set",s.createArrowFunction(void 0,void 0,[s.createParameterDeclaration(void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,s.createAssignment(A.setEmitFlags(s.createPropertyAccessExpression(A.setEmitFlags(s.createSuper(),4),O),4),s.createIdentifier("v"))))),m.push(s.createPropertyAssignment(O,s.createObjectLiteralExpression(k)))}),s.createVariableStatement(void 0,s.createVariableDeclarationList([s.createVariableDeclaration(s.createUniqueName("_super",48),void 0,void 0,s.createCallExpression(s.createPropertyAccessExpression(s.createIdentifier("Object"),"create"),void 0,[s.createNull(),s.createObjectLiteralExpression(m,!0)]))],2))}A.createSuperAccessVariableStatement=o})(Oe||(Oe={}));var Oe;(function(A){var r;(function(o){o[o.AsyncMethodsWithSuper=1]="AsyncMethodsWithSuper"})(r||(r={}));var t;(function(o){o[o.None=0]="None",o[o.HasLexicalThis=1]="HasLexicalThis",o[o.IterationContainer=2]="IterationContainer",o[o.AncestorFactsMask=3]="AncestorFactsMask",o[o.SourceFileIncludes=1]="SourceFileIncludes",o[o.SourceFileExcludes=2]="SourceFileExcludes",o[o.StrictModeSourceFileIncludes=0]="StrictModeSourceFileIncludes",o[o.ClassOrFunctionIncludes=1]="ClassOrFunctionIncludes",o[o.ClassOrFunctionExcludes=2]="ClassOrFunctionExcludes",o[o.ArrowFunctionIncludes=0]="ArrowFunctionIncludes",o[o.ArrowFunctionExcludes=2]="ArrowFunctionExcludes",o[o.IterationStatementIncludes=2]="IterationStatementIncludes",o[o.IterationStatementExcludes=0]="IterationStatementExcludes"})(t||(t={}));function i(o){var s=o.factory,g=o.getEmitHelperFactory,E=o.resumeLexicalEnvironment,p=o.endLexicalEnvironment,B=o.hoistVariableDeclaration,m=o.getEmitResolver(),_=o.getCompilerOptions(),x=A.getEmitScriptTarget(_),O=o.onEmitNode;o.onEmitNode=be;var k=o.onSubstituteNode;o.onSubstituteNode=Me;var P=!1,H,T,v,F=0,y=0,S,U,V,wA,IA=[];return A.chainBundle(o,Y);function pA(PA,we){return y!==(y&~PA|we)}function oA(PA,we){var LA=y;return y=(y&~PA|we)&3,LA}function cA(PA){y=PA}function eA(PA){U=A.append(U,s.createVariableDeclaration(PA))}function Y(PA){if(PA.isDeclarationFile)return PA;S=PA;var we=M(PA);return A.addEmitHelpers(we,o.readEmitHelpers()),S=void 0,U=void 0,we}function q(PA){return sA(PA,!1)}function X(PA){return sA(PA,!0)}function Z(PA){if(PA.kind!==132)return PA}function K(PA,we,LA,ae){if(pA(LA,ae)){var We=oA(LA,ae),YA=PA(we);return cA(We),YA}return PA(we)}function J(PA){return A.visitEachChild(PA,q,o)}function sA(PA,we){if(!(PA.transformFlags&128))return PA;switch(PA.kind){case 220:return uA(PA);case 226:return BA(PA);case 250:return CA(PA);case 253:return z(PA);case 207:return iA(PA);case 223:return gA(PA,we);case 354:return QA(PA,we);case 295:return mA(PA);case 240:return FA(PA);case 257:return SA(PA);case 243:case 244:case 246:return K(J,PA,0,2);case 247:return $A(PA,void 0);case 245:return K(re,PA,0,2);case 219:return KA(PA);case 173:return K(nA,PA,2,1);case 171:return K(TA,PA,2,1);case 174:return K(kA,PA,2,1);case 175:return K(bA,PA,2,1);case 259:return K(VA,PA,2,1);case 215:return K(_e,PA,2,1);case 216:return K(De,PA,2,0);case 166:return tA(PA);case 241:return _A(PA);case 214:return fA(PA,we);case 212:return aA(PA);case 208:return V&&A.isPropertyAccessExpression(PA)&&PA.expression.kind===106&&V.add(PA.name.escapedText),A.visitEachChild(PA,q,o);case 209:return V&&PA.expression.kind===106&&(wA=!0),A.visitEachChild(PA,q,o);case 260:case 228:return K(J,PA,2,1);default:return A.visitEachChild(PA,q,o)}}function uA(PA){return T&2&&T&1?A.setOriginalNode(A.setTextRange(s.createYieldExpression(void 0,g().createAwaitHelper(A.visitNode(PA.expression,q,A.isExpression))),PA),PA):A.visitEachChild(PA,q,o)}function BA(PA){if(T&2&&T&1){if(PA.asteriskToken){var we=A.visitNode(A.Debug.checkDefined(PA.expression),q,A.isExpression);return A.setOriginalNode(A.setTextRange(s.createYieldExpression(void 0,g().createAwaitHelper(s.updateYieldExpression(PA,PA.asteriskToken,A.setTextRange(g().createAsyncDelegatorHelper(A.setTextRange(g().createAsyncValuesHelper(we),we)),we)))),PA),PA)}return A.setOriginalNode(A.setTextRange(s.createYieldExpression(void 0,MA(PA.expression?A.visitNode(PA.expression,q,A.isExpression):s.createVoidZero())),PA),PA)}return A.visitEachChild(PA,q,o)}function CA(PA){return T&2&&T&1?s.updateReturnStatement(PA,MA(PA.expression?A.visitNode(PA.expression,q,A.isExpression):s.createVoidZero())):A.visitEachChild(PA,q,o)}function z(PA){if(T&2){var we=A.unwrapInnermostStatementOfLabel(PA);return we.kind===247&&we.awaitModifier?$A(we,PA):s.restoreEnclosingLabel(A.visitNode(we,q,A.isStatement,s.liftToBlock),PA)}return A.visitEachChild(PA,q,o)}function AA(PA){for(var we,LA=[],ae=0,We=PA;ae1){for(var ae=1;ae=2&&m.getNodeCheckFlags(PA)&6144;if(Ce){Cr();var Ke=A.createSuperAccessVariableStatement(s,m,PA,V);IA[A.getNodeId(Ke)]=!0,A.insertStatementsAfterStandardPrologue(we,[Ke])}we.push(YA),A.insertStatementsAfterStandardPrologue(we,p());var er=s.updateBlock(PA.body,we);return Ce&&wA&&(m.getNodeCheckFlags(PA)&4096?A.addEmitHelper(er,A.advancedAsyncSuperHelper):m.getNodeCheckFlags(PA)&2048&&A.addEmitHelper(er,A.asyncSuperHelper)),V=ae,wA=We,er}function Q(PA){var we;E();var LA=0,ae=[],We=(we=A.visitNode(PA.body,q,A.isConciseBody))!==null&&we!==void 0?we:s.createBlock([]);A.isBlock(We)&&(LA=s.copyPrologue(We.statements,ae,!1,q)),A.addRange(ae,Ze(void 0,PA));var YA=p();if(LA>0||A.some(ae)||A.some(YA)){var Ce=s.converters.convertToFunctionBlock(We,!0);return A.insertStatementsAfterStandardPrologue(ae,YA),A.addRange(ae,Ce.statements.slice(LA)),s.updateBlock(Ce,A.setTextRange(s.createNodeArray(ae),Ce.statements))}return We}function Ze(PA,we){for(var LA=!1,ae=0,We=we.parameters;ae0){var Ce=A.flattenDestructuringBinding(YA,q,o,0,s.getGeneratedNameForNode(YA));if(A.some(Ce)){var Ke=s.createVariableDeclarationList(Ce),er=s.createVariableStatement(void 0,Ke);A.setEmitFlags(er,1048576),PA=A.append(PA,er)}}else if(YA.initializer){var ur=s.getGeneratedNameForNode(YA),hr=A.visitNode(YA.initializer,q,A.isExpression),Fr=s.createAssignment(ur,hr),er=s.createExpressionStatement(Fr);A.setEmitFlags(er,1048576),PA=A.append(PA,er)}}else if(YA.initializer){var ur=s.cloneNode(YA.name);A.setTextRange(ur,YA.name),A.setEmitFlags(ur,48);var hr=A.visitNode(YA.initializer,q,A.isExpression);A.addEmitFlags(hr,1584);var Fr=s.createAssignment(ur,hr);A.setTextRange(Fr,YA),A.setEmitFlags(Fr,1536);var qA=s.createBlock([s.createExpressionStatement(Fr)]);A.setTextRange(qA,YA),A.setEmitFlags(qA,1953);var oe=s.createTypeCheck(s.cloneNode(YA.name),"undefined"),er=s.createIfStatement(oe,qA);A.startOnNewLine(er),A.setTextRange(er,YA),A.setEmitFlags(er,1050528),PA=A.append(PA,er)}}else if(YA.transformFlags&65536){LA=!0;var Ce=A.flattenDestructuringBinding(YA,q,o,1,s.getGeneratedNameForNode(YA),!1,!0);if(A.some(Ce)){var Ke=s.createVariableDeclarationList(Ce),er=s.createVariableStatement(void 0,Ke);A.setEmitFlags(er,1048576),PA=A.append(PA,er)}}}return PA}function Cr(){H&1||(H|=1,o.enableSubstitution(210),o.enableSubstitution(208),o.enableSubstitution(209),o.enableEmitNotification(260),o.enableEmitNotification(171),o.enableEmitNotification(174),o.enableEmitNotification(175),o.enableEmitNotification(173),o.enableEmitNotification(240))}function be(PA,we,LA){if(H&1&&$e(we)){var ae=m.getNodeCheckFlags(we)&6144;if(ae!==F){var We=F;F=ae,O(PA,we,LA),F=We;return}}else if(H&&IA[A.getNodeId(we)]){var We=F;F=0,O(PA,we,LA),F=We;return}O(PA,we,LA)}function Me(PA,we){return we=k(PA,we),PA===1&&F?Le(we):we}function Le(PA){switch(PA.kind){case 208:return ir(PA);case 209:return Ye(PA);case 210:return mr(PA)}return PA}function ir(PA){return PA.expression.kind===106?A.setTextRange(s.createPropertyAccessExpression(s.createUniqueName("_super",48),PA.name),PA):PA}function Ye(PA){return PA.expression.kind===106?xr(PA.argumentExpression,PA):PA}function mr(PA){var we=PA.expression;if(A.isSuperProperty(we)){var LA=A.isPropertyAccessExpression(we)?ir(we):Ye(we);return s.createCallExpression(s.createPropertyAccessExpression(LA,"call"),void 0,dt([s.createThis()],PA.arguments,!0))}return PA}function $e(PA){var we=PA.kind;return we===260||we===173||we===171||we===174||we===175}function xr(PA,we){return F&4096?A.setTextRange(s.createPropertyAccessExpression(s.createCallExpression(s.createIdentifier("_superIndex"),void 0,[PA]),"value"),we):A.setTextRange(s.createCallExpression(s.createIdentifier("_superIndex"),void 0,[PA]),we)}}A.transformES2018=i})(Oe||(Oe={}));var Oe;(function(A){function r(t){var i=t.factory;return A.chainBundle(t,o);function o(E){return E.isDeclarationFile?E:A.visitEachChild(E,s,t)}function s(E){if(!(E.transformFlags&64))return E;switch(E.kind){case 295:return g(E);default:return A.visitEachChild(E,s,t)}}function g(E){return E.variableDeclaration?A.visitEachChild(E,s,t):i.updateCatchClause(E,i.createVariableDeclaration(i.createTempVariable(void 0)),A.visitNode(E.block,s,A.isBlock))}}A.transformES2019=r})(Oe||(Oe={}));var Oe;(function(A){function r(t){var i=t.factory,o=t.hoistVariableDeclaration;return A.chainBundle(t,s);function s(H){return H.isDeclarationFile?H:A.visitEachChild(H,g,t)}function g(H){if(!(H.transformFlags&32))return H;switch(H.kind){case 210:{var T=m(H,!1);return A.Debug.assertNotNode(T,A.isSyntheticReference),T}case 208:case 209:if(A.isOptionalChain(H)){var T=x(H,!1,!1);return A.Debug.assertNotNode(T,A.isSyntheticReference),T}return A.visitEachChild(H,g,t);case 223:return H.operatorToken.kind===60?k(H):A.visitEachChild(H,g,t);case 217:return P(H);default:return A.visitEachChild(H,g,t)}}function E(H){A.Debug.assertNotNode(H,A.isNonNullChain);for(var T=[H];!H.questionDotToken&&!A.isTaggedTemplateExpression(H);)H=A.cast(A.skipPartiallyEmittedExpressions(H.expression),A.isOptionalChain),A.Debug.assertNotNode(H,A.isNonNullChain),T.unshift(H);return{expression:H.expression,chain:T}}function p(H,T,v){var F=_(H.expression,T,v);return A.isSyntheticReference(F)?i.createSyntheticReferenceExpression(i.updateParenthesizedExpression(H,F.expression),F.thisArg):i.updateParenthesizedExpression(H,F)}function B(H,T,v){if(A.isOptionalChain(H))return x(H,T,v);var F=A.visitNode(H.expression,g,A.isExpression);A.Debug.assertNotNode(F,A.isSyntheticReference);var y;return T&&(A.isSimpleCopiableExpression(F)?y=F:(y=i.createTempVariable(o),F=i.createAssignment(y,F))),F=H.kind===208?i.updatePropertyAccessExpression(H,F,A.visitNode(H.name,g,A.isIdentifier)):i.updateElementAccessExpression(H,F,A.visitNode(H.argumentExpression,g,A.isExpression)),y?i.createSyntheticReferenceExpression(F,y):F}function m(H,T){if(A.isOptionalChain(H))return x(H,T,!1);if(A.isParenthesizedExpression(H.expression)&&A.isOptionalChain(A.skipParentheses(H.expression))){var v=p(H.expression,!0,!1),F=A.visitNodes(H.arguments,g,A.isExpression);return A.isSyntheticReference(v)?A.setTextRange(i.createFunctionCallCall(v.expression,v.thisArg,F),H):i.updateCallExpression(H,v,void 0,F)}return A.visitEachChild(H,g,t)}function _(H,T,v){switch(H.kind){case 214:return p(H,T,v);case 208:case 209:return B(H,T,v);case 210:return m(H,T);default:return A.visitNode(H,g,A.isExpression)}}function x(H,T,v){var F=E(H),y=F.expression,S=F.chain,U=_(A.skipPartiallyEmittedExpressions(y),A.isCallChain(S[0]),!1),V=A.isSyntheticReference(U)?U.thisArg:void 0,wA=A.isSyntheticReference(U)?U.expression:U,IA=i.restoreOuterExpressions(y,wA,8);A.isSimpleCopiableExpression(wA)||(wA=i.createTempVariable(o),IA=i.createAssignment(wA,IA));for(var pA=wA,oA,cA=0;cA1||!!(!((SA=ce[0])===null||SA===void 0)&&SA.dotDotDotToken),KA=[M,aA];if(gA&&KA.push(sA(gA.initializer)),g.jsx===5){var $A=A.getOriginalNode(E);if($A&&A.isSourceFile($A)){gA===void 0&&KA.push(o.createVoidZero()),KA.push(re?o.createTrue():o.createFalse());var jA=A.getLineAndCharacterOfPosition($A,FA.pos);KA.push(o.createObjectLiteralExpression([o.createPropertyAssignment("fileName",B()),o.createPropertyAssignment("lineNumber",o.createNumericLiteral(jA.line+1)),o.createPropertyAssignment("columnNumber",o.createNumericLiteral(jA.character+1))])),KA.push(o.createThis())}}var ue=A.setTextRange(o.createCallExpression(_(re),void 0,KA),FA);return mA&&A.startOnNewLine(ue),ue}function oA(M,aA,gA,QA){var mA=iA(M),FA=M.attributes.properties,SA=A.length(FA)?q(FA):o.createNull(),ce=p.importSpecifier===void 0?A.createJsxFactoryExpression(o,i.getEmitResolver().getJsxFactoryEntity(E),g.reactNamespace,M):O("createElement"),re=A.createExpressionForJsxElement(o,ce,mA,SA,A.mapDefined(aA,T),QA);return gA&&A.startOnNewLine(re),re}function cA(M,aA,gA,QA){var mA;if(aA&&aA.length){var FA=V(aA);FA&&(mA=FA)}return pA(x(),mA||o.createObjectLiteralExpression([]),void 0,aA,gA,QA)}function eA(M,aA,gA,QA){var mA=A.createExpressionForJsxFragment(o,i.getEmitResolver().getJsxFactoryEntity(E),i.getEmitResolver().getJsxFragmentFactoryEntity(E),g.reactNamespace,A.mapDefined(aA,T),M,QA);return gA&&A.startOnNewLine(mA),mA}function Y(M){return o.createSpreadAssignment(A.visitNode(M.expression,P,A.isExpression))}function q(M,aA){var gA=A.getEmitScriptTarget(g);return gA&&gA>=5?o.createObjectLiteralExpression(X(M,aA)):Z(M,aA)}function X(M,aA){var gA=A.flatten(A.spanMap(M,A.isJsxSpreadAttribute,function(QA,mA){return A.map(QA,function(FA){return mA?Y(FA):J(FA)})}));return aA&&gA.push(aA),gA}function Z(M,aA){var gA=A.flatten(A.spanMap(M,A.isJsxSpreadAttribute,function(QA,mA){return mA?A.map(QA,K):o.createObjectLiteralExpression(A.map(QA,J))}));return A.isJsxSpreadAttribute(M[0])&&gA.unshift(o.createObjectLiteralExpression()),aA&&gA.push(o.createObjectLiteralExpression([aA])),A.singleOrUndefined(gA)||s().createAssignHelper(gA)}function K(M){return A.visitNode(M.expression,P,A.isExpression)}function J(M){var aA=_A(M),gA=sA(M.initializer);return o.createPropertyAssignment(aA,gA)}function sA(M){if(M===void 0)return o.createTrue();if(M.kind===10){var aA=M.singleQuote!==void 0?M.singleQuote:!A.isStringDoubleQuoted(M,E),gA=o.createStringLiteral(AA(M.text)||M.text,aA);return A.setTextRange(gA,M)}return M.kind===291?M.expression===void 0?o.createTrue():A.visitNode(M.expression,P,A.isExpression):A.isJsxElement(M)?y(M,!1):A.isJsxSelfClosingElement(M)?S(M,!1):A.isJsxFragment(M)?U(M,!1):A.Debug.failBadSyntaxKind(M)}function uA(M){var aA=BA(M.text);return aA===void 0?void 0:o.createStringLiteral(aA)}function BA(M){for(var aA,gA=0,QA=-1,mA=0;mA0?(A.insertStatementAfterCustomPrologue(ne,A.setEmitFlags(m.createVariableStatement(void 0,m.createVariableDeclarationList(A.flattenDestructuringBinding(_r,Z,B,0,m.getGeneratedNameForNode(_r)))),1048576)),!0):$r?(A.insertStatementAfterCustomPrologue(ne,A.setEmitFlags(m.createExpressionStatement(m.createAssignment(m.getGeneratedNameForNode(_r),A.visitNode($r,Z,A.isExpression))),1048576)),!0):!1}function kA(ne,_r,qr,$r){$r=A.visitNode($r,Z,A.isExpression);var ie=m.createIfStatement(m.createTypeCheck(m.cloneNode(qr),"undefined"),A.setEmitFlags(A.setTextRange(m.createBlock([m.createExpressionStatement(A.setEmitFlags(A.setTextRange(m.createAssignment(A.setEmitFlags(A.setParent(A.setTextRange(m.cloneNode(qr),qr),qr.parent),48),A.setEmitFlags($r,48|A.getEmitFlags($r)|1536)),_r),1536))]),_r),1953));A.startOnNewLine(ie),A.setTextRange(ie,_r),A.setEmitFlags(ie,1050528),A.insertStatementAfterCustomPrologue(ne,ie)}function bA(ne,_r){return!!(ne&&ne.dotDotDotToken&&!_r)}function TA(ne,_r,qr){var $r=[],ie=A.lastOrUndefined(_r.parameters);if(!bA(ie,qr))return!1;var ye=ie.name.kind===79?A.setParent(A.setTextRange(m.cloneNode(ie.name),ie.name),ie.name.parent):m.createTempVariable(void 0);A.setEmitFlags(ye,48);var Re=ie.name.kind===79?m.cloneNode(ie.name):ye,rr=_r.parameters.length-1,zr=m.createLoopVariable();$r.push(A.setEmitFlags(A.setTextRange(m.createVariableStatement(void 0,m.createVariableDeclarationList([m.createVariableDeclaration(ye,void 0,void 0,m.createArrayLiteralExpression([]))])),ie),1048576));var Ft=m.createForStatement(A.setTextRange(m.createVariableDeclarationList([m.createVariableDeclaration(zr,void 0,void 0,m.createNumericLiteral(rr))]),ie),A.setTextRange(m.createLessThan(zr,m.createPropertyAccessExpression(m.createIdentifier("arguments"),"length")),ie),A.setTextRange(m.createPostfixIncrement(zr),ie),m.createBlock([A.startOnNewLine(A.setTextRange(m.createExpressionStatement(m.createAssignment(m.createElementAccessExpression(Re,rr===0?zr:m.createSubtract(zr,m.createNumericLiteral(rr))),m.createElementAccessExpression(m.createIdentifier("arguments"),zr))),ie))]));return A.setEmitFlags(Ft,1048576),A.startOnNewLine(Ft),$r.push(Ft),ie.name.kind!==79&&$r.push(A.setEmitFlags(A.setTextRange(m.createVariableStatement(void 0,m.createVariableDeclarationList(A.flattenDestructuringBinding(ie,Z,B,0,Re))),ie),1048576)),A.insertStatementsAfterCustomPrologue(ne,$r),!0}function VA(ne,_r){return U&65536&&_r.kind!==216?(_e(ne,_r,m.createThis()),!0):!1}function De(ne,_r){Xo();var qr=m.createExpressionStatement(m.createBinaryExpression(m.createThis(),63,_r));A.insertStatementAfterCustomPrologue(ne,qr),A.setCommentRange(qr,A.getOriginalNode(_r).parent)}function _e(ne,_r,qr){Xo();var $r=m.createVariableStatement(void 0,m.createVariableDeclarationList([m.createVariableDeclaration(m.createUniqueName("_this",48),void 0,void 0,qr)]));A.setEmitFlags($r,1050112),A.setSourceMapRange($r,_r),A.insertStatementAfterCustomPrologue(ne,$r)}function Ae(ne,_r,qr){if(U&32768){var $r=void 0;switch(_r.kind){case 216:return ne;case 171:case 174:case 175:$r=m.createVoidZero();break;case 173:$r=m.createPropertyAccessExpression(A.setEmitFlags(m.createThis(),4),"constructor");break;case 259:case 215:$r=m.createConditionalExpression(m.createLogicalAnd(A.setEmitFlags(m.createThis(),4),m.createBinaryExpression(A.setEmitFlags(m.createThis(),4),102,m.getLocalName(_r))),void 0,m.createPropertyAccessExpression(A.setEmitFlags(m.createThis(),4),"constructor"),void 0,m.createVoidZero());break;default:return A.Debug.failBadSyntaxKind(_r)}var ie=m.createVariableStatement(void 0,m.createVariableDeclarationList([m.createVariableDeclaration(m.createUniqueName("_newTarget",48),void 0,void 0,$r)]));A.setEmitFlags(ie,1050112),qr&&(ne=ne.slice()),A.insertStatementAfterCustomPrologue(ne,ie)}return ne}function Q(ne,_r){for(var qr=0,$r=_r.members;qr<$r.length;qr++){var ie=$r[qr];switch(ie.kind){case 237:ne.push(Ze(ie));break;case 171:ne.push(Cr(hn(_r,ie),ie,_r));break;case 174:case 175:var ye=A.getAllAccessorDeclarations(_r.members,ie);ie===ye.firstAccessor&&ne.push(be(hn(_r,ie),ye,_r));break;case 173:case 172:break;default:A.Debug.failBadSyntaxKind(ie,y&&y.fileName);break}}}function Ze(ne){return A.setTextRange(m.createEmptyStatement(),ne)}function Cr(ne,_r,qr){var $r=A.getCommentRange(_r),ie=A.getSourceMapRange(_r),ye=mr(_r,_r,void 0,qr),Re=A.visitNode(_r.name,Z,A.isPropertyName),rr;if(!A.isPrivateIdentifier(Re)&&A.getUseDefineForClassFields(B.getCompilerOptions())){var zr=A.isComputedPropertyName(Re)?Re.expression:A.isIdentifier(Re)?m.createStringLiteral(A.unescapeLeadingUnderscores(Re.escapedText)):Re;rr=m.createObjectDefinePropertyCall(ne,zr,m.createPropertyDescriptor({value:ye,enumerable:!1,writable:!0,configurable:!0}))}else{var Ft=A.createMemberAccessForPropertyName(m,ne,Re,_r.name);rr=m.createAssignment(Ft,ye)}A.setEmitFlags(ye,1536),A.setSourceMapRange(ye,ie);var Gt=A.setTextRange(m.createExpressionStatement(rr),_r);return A.setOriginalNode(Gt,_r),A.setCommentRange(Gt,$r),A.setEmitFlags(Gt,48),Gt}function be(ne,_r,qr){var $r=m.createExpressionStatement(Me(ne,_r,qr,!1));return A.setEmitFlags($r,1536),A.setSourceMapRange($r,A.getSourceMapRange(_r.firstAccessor)),$r}function Me(ne,_r,qr,$r){var ie=_r.firstAccessor,ye=_r.getAccessor,Re=_r.setAccessor,rr=A.setParent(A.setTextRange(m.cloneNode(ne),ne),ne.parent);A.setEmitFlags(rr,1568),A.setSourceMapRange(rr,ie.name);var zr=A.visitNode(ie.name,Z,A.isPropertyName);if(A.isPrivateIdentifier(zr))return A.Debug.failBadSyntaxKind(zr,"Encountered unhandled private identifier while transforming ES2015.");var Ft=A.createExpressionForPropertyName(m,zr);A.setEmitFlags(Ft,1552),A.setSourceMapRange(Ft,ie.name);var Gt=[];if(ye){var Tt=mr(ye,void 0,void 0,qr);A.setSourceMapRange(Tt,A.getSourceMapRange(ye)),A.setEmitFlags(Tt,512);var gn=m.createPropertyAssignment("get",Tt);A.setCommentRange(gn,A.getCommentRange(ye)),Gt.push(gn)}if(Re){var kn=mr(Re,void 0,void 0,qr);A.setSourceMapRange(kn,A.getSourceMapRange(Re)),A.setEmitFlags(kn,512);var ra=m.createPropertyAssignment("set",kn);A.setCommentRange(ra,A.getCommentRange(Re)),Gt.push(ra)}Gt.push(m.createPropertyAssignment("enumerable",ye||Re?m.createFalse():m.createTrue()),m.createPropertyAssignment("configurable",m.createTrue()));var Vn=m.createCallExpression(m.createPropertyAccessExpression(m.createIdentifier("Object"),"defineProperty"),void 0,[rr,Ft,m.createObjectLiteralExpression(Gt,!0)]);return $r&&A.startOnNewLine(Vn),Vn}function Le(ne){ne.transformFlags&16384&&!(U&16384)&&(U|=65536);var _r=IA;IA=void 0;var qr=cA(15232,66),$r=m.createFunctionExpression(void 0,void 0,void 0,void 0,A.visitParameterList(ne.parameters,Z,B),void 0,$e(ne));return A.setTextRange($r,ne),A.setOriginalNode($r,ne),A.setEmitFlags($r,8),eA(qr,0,0),IA=_r,$r}function ir(ne){var _r=A.getEmitFlags(ne)&262144?cA(32662,69):cA(32670,65),qr=IA;IA=void 0;var $r=A.visitParameterList(ne.parameters,Z,B),ie=$e(ne),ye=U&32768?m.getLocalName(ne):ne.name;return eA(_r,98304,0),IA=qr,m.updateFunctionExpression(ne,void 0,ne.asteriskToken,ye,void 0,$r,void 0,ie)}function Ye(ne){var _r=IA;IA=void 0;var qr=cA(32670,65),$r=A.visitParameterList(ne.parameters,Z,B),ie=$e(ne),ye=U&32768?m.getLocalName(ne):ne.name;return eA(qr,98304,0),IA=_r,m.updateFunctionDeclaration(ne,A.visitNodes(ne.modifiers,Z,A.isModifier),ne.asteriskToken,ye,void 0,$r,void 0,ie)}function mr(ne,_r,qr,$r){var ie=IA;IA=void 0;var ye=$r&&A.isClassLike($r)&&!A.isStatic(ne)?cA(32670,73):cA(32670,65),Re=A.visitParameterList(ne.parameters,Z,B),rr=$e(ne);return U&32768&&!qr&&(ne.kind===259||ne.kind===215)&&(qr=m.getGeneratedNameForNode(ne)),eA(ye,98304,0),IA=ie,A.setOriginalNode(A.setTextRange(m.createFunctionExpression(void 0,ne.asteriskToken,qr,void 0,Re,void 0,rr),_r),ne)}function $e(ne){var _r=!1,qr=!1,$r,ie,ye=[],Re=[],rr=ne.body,zr;if(O(),A.isBlock(rr)&&(zr=m.copyStandardPrologue(rr.statements,ye,0,!1),zr=m.copyCustomPrologue(rr.statements,Re,zr,Z,A.isHoistedFunction),zr=m.copyCustomPrologue(rr.statements,Re,zr,Z,A.isHoistedVariableStatement)),_r=N(Re,ne)||_r,_r=TA(Re,ne,!1)||_r,A.isBlock(rr))zr=m.copyCustomPrologue(rr.statements,Re,zr,Z),$r=rr.statements,A.addRange(Re,A.visitNodes(rr.statements,Z,A.isStatement,zr)),!_r&&rr.multiLine&&(_r=!0);else{A.Debug.assert(ne.kind===216),$r=A.moveRangeEnd(rr,-1);var Ft=ne.equalsGreaterThanToken;!A.nodeIsSynthesized(Ft)&&!A.nodeIsSynthesized(rr)&&(A.rangeEndIsOnSameLineAsRangeStart(Ft,rr,y)?qr=!0:_r=!0);var Gt=A.visitNode(rr,Z,A.isExpression),Tt=m.createReturnStatement(Gt);A.setTextRange(Tt,rr),A.moveSyntheticComments(Tt,rr),A.setEmitFlags(Tt,1440),Re.push(Tt),ie=rr}if(m.mergeLexicalEnvironment(ye,k()),Ae(ye,ne,!1),VA(ye,ne),A.some(ye)&&(_r=!0),Re.unshift.apply(Re,ye),A.isBlock(rr)&&A.arrayIsEqualTo(Re,rr.statements))return rr;var gn=m.createBlock(A.setTextRange(m.createNodeArray(Re),$r),_r);return A.setTextRange(gn,ne.body),!_r&&qr&&A.setEmitFlags(gn,1),ie&&A.setTokenSourceMapRange(gn,19,ie),A.setOriginalNode(gn,ne.body),gn}function xr(ne,_r){if(_r)return A.visitEachChild(ne,Z,B);var qr=U&256?cA(7104,512):cA(6976,128),$r=A.visitEachChild(ne,Z,B);return eA(qr,0,0),$r}function PA(ne){return A.visitEachChild(ne,K,B)}function we(ne,_r){return A.visitEachChild(ne,_r?K:Z,B)}function LA(ne,_r){return A.isDestructuringAssignment(ne)?A.flattenDestructuringAssignment(ne,Z,B,0,!_r):ne.operatorToken.kind===27?m.updateBinaryExpression(ne,A.visitNode(ne.left,K,A.isExpression),ne.operatorToken,A.visitNode(ne.right,_r?K:Z,A.isExpression)):A.visitEachChild(ne,Z,B)}function ae(ne,_r){if(_r)return A.visitEachChild(ne,K,B);for(var qr,$r=0;$r0&&ye.push(m.createStringLiteral(ie.literal.text)),_r=m.createCallExpression(m.createPropertyAccessExpression(_r,"concat"),void 0,ye)}return A.setTextRange(_r,ne)}function ao(ne){return U&8&&!ne?m.createPropertyAccessExpression(m.createUniqueName("_super",48),"prototype"):m.createUniqueName("_super",48)}function Bo(ne){return ne.keywordToken===103&&ne.name.escapedText==="target"?(U|=32768,m.createUniqueName("_newTarget",48)):ne}function Uo(ne,_r,qr){if(pA&1&&A.isFunctionLike(_r)){var $r=cA(32670,A.getEmitFlags(_r)&8?81:65);F(ne,_r,qr),eA($r,0,0);return}F(ne,_r,qr)}function oo(){pA&2||(pA|=2,B.enableSubstitution(79))}function Xo(){pA&1||(pA|=1,B.enableSubstitution(108),B.enableEmitNotification(173),B.enableEmitNotification(171),B.enableEmitNotification(174),B.enableEmitNotification(175),B.enableEmitNotification(216),B.enableEmitNotification(215),B.enableEmitNotification(259))}function Bs(ne,_r){return _r=v(ne,_r),ne===1?xe(_r):A.isIdentifier(_r)?hs(_r):_r}function hs(ne){if(pA&2&&!A.isInternalName(ne)){var _r=A.getParseTreeNode(ne,A.isIdentifier);if(_r&&Va(_r))return A.setTextRange(m.getGeneratedNameForNode(_r),ne)}return ne}function Va(ne){switch(ne.parent.kind){case 205:case 260:case 263:case 257:return ne.parent.name===ne&&T.isDeclarationWithCollidingName(ne.parent)}return!1}function xe(ne){switch(ne.kind){case 79:return ze(ne);case 108:return en(ne)}return ne}function ze(ne){if(pA&2&&!A.isInternalName(ne)){var _r=T.getReferencedDeclarationWithCollidingName(ne);if(_r&&!(A.isClassLike(_r)&&Lt(_r,ne)))return A.setTextRange(m.getGeneratedNameForNode(A.getNameOfDeclaration(_r)),ne)}return ne}function Lt(ne,_r){var qr=A.getParseTreeNode(_r);if(!qr||qr===ne||qr.end<=ne.pos||qr.pos>=ne.end)return!1;for(var $r=A.getEnclosingBlockScopeContainer(ne);qr;){if(qr===$r||qr===ne)return!1;if(A.isClassElement(qr)&&qr.parent===ne)return!0;qr=qr.parent}return!1}function en(ne){return pA&1&&U&16?A.setTextRange(m.createUniqueName("_this",48),ne):ne}function hn(ne,_r){return A.isStatic(_r)?m.getInternalName(ne):m.createPropertyAccessExpression(m.getInternalName(ne),"prototype")}function Ia(ne,_r){if(!ne||!_r||A.some(ne.parameters))return!1;var qr=A.firstOrUndefined(ne.body.statements);if(!qr||!A.nodeIsSynthesized(qr)||qr.kind!==241)return!1;var $r=qr.expression;if(!A.nodeIsSynthesized($r)||$r.kind!==210)return!1;var ie=$r.expression;if(!A.nodeIsSynthesized(ie)||ie.kind!==106)return!1;var ye=A.singleOrUndefined($r.arguments);if(!ye||!A.nodeIsSynthesized(ye)||ye.kind!==227)return!1;var Re=ye.expression;return A.isIdentifier(Re)&&Re.escapedText==="arguments"}}A.transformES2015=p})(Oe||(Oe={}));var Oe;(function(A){function r(t){var i=t.factory,o=t.getCompilerOptions(),s,g;(o.jsx===1||o.jsx===3)&&(s=t.onEmitNode,t.onEmitNode=B,t.enableEmitNotification(283),t.enableEmitNotification(284),t.enableEmitNotification(282),g=[]);var E=t.onSubstituteNode;return t.onSubstituteNode=m,t.enableSubstitution(208),t.enableSubstitution(299),A.chainBundle(t,p);function p(k){return k}function B(k,P,H){switch(P.kind){case 283:case 284:case 282:var T=P.tagName;g[A.getOriginalNodeId(T)]=!0;break}s(k,P,H)}function m(k,P){return P.id&&g&&g[P.id]?E(k,P):(P=E(k,P),A.isPropertyAccessExpression(P)?_(P):A.isPropertyAssignment(P)?x(P):P)}function _(k){if(A.isPrivateIdentifier(k.name))return k;var P=O(k.name);return P?A.setTextRange(i.createElementAccessExpression(k.expression,P),k):k}function x(k){var P=A.isIdentifier(k.name)&&O(k.name);return P?i.updatePropertyAssignment(k,P,k.initializer):k}function O(k){var P=k.originalKeywordKind||(A.nodeIsSynthesized(k)?A.stringToToken(A.idText(k)):void 0);if(P!==void 0&&P>=81&&P<=116)return A.setTextRange(i.createStringLiteralFromNode(k),k)}}A.transformES5=r})(Oe||(Oe={}));var Oe;(function(A){var r;(function(p){p[p.Nop=0]="Nop",p[p.Statement=1]="Statement",p[p.Assign=2]="Assign",p[p.Break=3]="Break",p[p.BreakWhenTrue=4]="BreakWhenTrue",p[p.BreakWhenFalse=5]="BreakWhenFalse",p[p.Yield=6]="Yield",p[p.YieldStar=7]="YieldStar",p[p.Return=8]="Return",p[p.Throw=9]="Throw",p[p.Endfinally=10]="Endfinally"})(r||(r={}));var t;(function(p){p[p.Open=0]="Open",p[p.Close=1]="Close"})(t||(t={}));var i;(function(p){p[p.Exception=0]="Exception",p[p.With=1]="With",p[p.Switch=2]="Switch",p[p.Loop=3]="Loop",p[p.Labeled=4]="Labeled"})(i||(i={}));var o;(function(p){p[p.Try=0]="Try",p[p.Catch=1]="Catch",p[p.Finally=2]="Finally",p[p.Done=3]="Done"})(o||(o={}));var s;(function(p){p[p.Next=0]="Next",p[p.Throw=1]="Throw",p[p.Return=2]="Return",p[p.Break=3]="Break",p[p.Yield=4]="Yield",p[p.YieldStar=5]="YieldStar",p[p.Catch=6]="Catch",p[p.Endfinally=7]="Endfinally"})(s||(s={}));function g(p){switch(p){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}function E(p){var B=p.factory,m=p.getEmitHelperFactory,_=p.resumeLexicalEnvironment,x=p.endLexicalEnvironment,O=p.hoistFunctionDeclaration,k=p.hoistVariableDeclaration,P=p.getCompilerOptions(),H=A.getEmitScriptTarget(P),T=p.getEmitResolver(),v=p.onSubstituteNode;p.onSubstituteNode=nt;var F,y,S,U,V,wA,IA,pA,oA,cA,eA=1,Y,q,X,Z,K=0,J=0,sA,uA,BA,CA,z,AA,iA,_A;return A.chainBundle(p,fA);function fA(xe){if(xe.isDeclarationFile||!(xe.transformFlags&2048))return xe;var ze=A.visitEachChild(xe,M,p);return A.addEmitHelpers(ze,p.readEmitHelpers()),ze}function M(xe){var ze=xe.transformFlags;return U?aA(xe):S?gA(xe):A.isFunctionLikeDeclaration(xe)&&xe.asteriskToken?mA(xe):ze&2048?A.visitEachChild(xe,M,p):xe}function aA(xe){switch(xe.kind){case 243:return mr(xe);case 244:return xr(xe);case 252:return qA(xe);case 253:return Ge(xe);default:return gA(xe)}}function gA(xe){switch(xe.kind){case 259:return FA(xe);case 215:return SA(xe);case 174:case 175:return ce(xe);case 240:return KA(xe);case 245:return we(xe);case 246:return ae(xe);case 249:return Ke(xe);case 248:return YA(xe);case 250:return ur(xe);default:return xe.transformFlags&1048576?QA(xe):xe.transformFlags&4196352?A.visitEachChild(xe,M,p):xe}}function QA(xe){switch(xe.kind){case 223:return $A(xe);case 354:return RA(xe);case 224:return tA(xe);case 226:return N(xe);case 206:return nA(xe);case 207:return bA(xe);case 209:return TA(xe);case 210:return VA(xe);case 211:return De(xe);default:return A.visitEachChild(xe,M,p)}}function mA(xe){switch(xe.kind){case 259:return FA(xe);case 215:return SA(xe);default:return A.Debug.failBadSyntaxKind(xe)}}function FA(xe){if(xe.asteriskToken)xe=A.setOriginalNode(A.setTextRange(B.createFunctionDeclaration(xe.modifiers,void 0,xe.name,void 0,A.visitParameterList(xe.parameters,M,p),void 0,re(xe.body)),xe),xe);else{var ze=S,Lt=U;S=!1,U=!1,xe=A.visitEachChild(xe,M,p),S=ze,U=Lt}if(S){O(xe);return}else return xe}function SA(xe){if(xe.asteriskToken)xe=A.setOriginalNode(A.setTextRange(B.createFunctionExpression(void 0,void 0,xe.name,void 0,A.visitParameterList(xe.parameters,M,p),void 0,re(xe.body)),xe),xe);else{var ze=S,Lt=U;S=!1,U=!1,xe=A.visitEachChild(xe,M,p),S=ze,U=Lt}return xe}function ce(xe){var ze=S,Lt=U;return S=!1,U=!1,xe=A.visitEachChild(xe,M,p),S=ze,U=Lt,xe}function re(xe){var ze=[],Lt=S,en=U,hn=V,Ia=wA,ne=IA,_r=pA,qr=oA,$r=cA,ie=eA,ye=Y,Re=q,rr=X,zr=Z;S=!0,U=!1,V=void 0,wA=void 0,IA=void 0,pA=void 0,oA=void 0,cA=void 0,eA=1,Y=void 0,q=void 0,X=void 0,Z=B.createTempVariable(void 0),_();var Ft=B.copyPrologue(xe.statements,ze,!1,M);_e(xe.statements,Ft);var Gt=Ui();return A.insertStatementsAfterStandardPrologue(ze,x()),ze.push(B.createReturnStatement(Gt)),S=Lt,U=en,V=hn,wA=Ia,IA=ne,pA=_r,oA=qr,cA=$r,eA=ie,Y=ye,q=Re,X=rr,Z=zr,A.setTextRange(B.createBlock(ze,xe.multiLine),xe)}function KA(xe){if(xe.transformFlags&1048576){Me(xe.declarationList);return}else{if(A.getEmitFlags(xe)&1048576)return xe;for(var ze=0,Lt=xe.declarationList.declarations;ze0&&(cn(1,[B.createExpressionStatement(B.inlineExpressions(ze))]),ze=[]),ze.push(A.visitNode(en,M,A.isExpression)))}}function RA(xe){for(var ze=[],Lt=0,en=xe.elements;Lt0&&(cn(1,[B.createExpressionStatement(B.inlineExpressions(ze))]),ze=[]),ze.push(A.visitNode(hn,M,A.isExpression)))}return B.inlineExpressions(ze)}function lA(xe){var ze=te(),Lt=fr();return rt(Lt,A.visitNode(xe.left,M,A.isExpression),xe.left),xe.operatorToken.kind===55?Ir(ze,Lt,xe.left):le(ze,Lt,xe.left),rt(Lt,A.visitNode(xe.right,M,A.isExpression),xe.right),Te(ze),Lt}function tA(xe){if(tr(xe.whenTrue)||tr(xe.whenFalse)){var ze=te(),Lt=te(),en=fr();return Ir(ze,A.visitNode(xe.condition,M,A.isExpression),xe.condition),rt(en,A.visitNode(xe.whenTrue,M,A.isExpression),xe.whenTrue),Bt(Lt),Te(ze),rt(en,A.visitNode(xe.whenFalse,M,A.isExpression),xe.whenFalse),Te(Lt),en}return A.visitEachChild(xe,M,p)}function N(xe){var ze=te(),Lt=A.visitNode(xe.expression,M,A.isExpression);if(xe.asteriskToken){var en=A.getEmitFlags(xe.expression)&8388608?Lt:A.setTextRange(m().createValuesHelper(Lt),xe);ut(en,xe)}else Ii(Lt,xe);return Te(ze),Dr(xe)}function nA(xe){return kA(xe.elements,void 0,void 0,xe.multiLine)}function kA(xe,ze,Lt,en){var hn=Ur(xe),Ia;if(hn>0){Ia=fr();var ne=A.visitNodes(xe,M,A.isExpression,0,hn);rt(Ia,B.createArrayLiteralExpression(ze?dt([ze],ne,!0):ne)),ze=void 0}var _r=A.reduceLeft(xe,qr,[],hn);return Ia?B.createArrayConcatCall(Ia,[B.createArrayLiteralExpression(_r,en)]):A.setTextRange(B.createArrayLiteralExpression(ze?dt([ze],_r,!0):_r,en),Lt);function qr($r,ie){if(tr(ie)&&$r.length>0){var ye=Ia!==void 0;Ia||(Ia=fr()),rt(Ia,ye?B.createArrayConcatCall(Ia,[B.createArrayLiteralExpression($r,en)]):B.createArrayLiteralExpression(ze?dt([ze],$r,!0):$r,en)),ze=void 0,$r=[]}return $r.push(A.visitNode(ie,M,A.isExpression)),$r}}function bA(xe){var ze=xe.properties,Lt=xe.multiLine,en=Ur(ze),hn=fr();rt(hn,B.createObjectLiteralExpression(A.visitNodes(ze,M,A.isObjectLiteralElementLike,0,en),Lt));var Ia=A.reduceLeft(ze,ne,[],en);return Ia.push(Lt?A.startOnNewLine(A.setParent(A.setTextRange(B.cloneNode(hn),hn),hn.parent)):hn),B.inlineExpressions(Ia);function ne(_r,qr){tr(qr)&&_r.length>0&&(Yr(B.createExpressionStatement(B.inlineExpressions(_r))),_r=[]);var $r=A.createExpressionForObjectLiteralElementLike(B,xe,qr,hn),ie=A.visitNode($r,M,A.isExpression);return ie&&(Lt&&A.startOnNewLine(ie),_r.push(ie)),_r}}function TA(xe){return tr(xe.argumentExpression)?B.updateElementAccessExpression(xe,Ar(A.visitNode(xe.expression,M,A.isLeftHandSideExpression)),A.visitNode(xe.argumentExpression,M,A.isExpression)):A.visitEachChild(xe,M,p)}function VA(xe){if(!A.isImportCall(xe)&&A.forEach(xe.arguments,tr)){var ze=B.createCallBinding(xe.expression,k,H,!0),Lt=ze.target,en=ze.thisArg;return A.setOriginalNode(A.setTextRange(B.createFunctionApplyCall(Ar(A.visitNode(Lt,M,A.isLeftHandSideExpression)),en,kA(xe.arguments)),xe),xe)}return A.visitEachChild(xe,M,p)}function De(xe){if(A.forEach(xe.arguments,tr)){var ze=B.createCallBinding(B.createPropertyAccessExpression(xe.expression,"bind"),k),Lt=ze.target,en=ze.thisArg;return A.setOriginalNode(A.setTextRange(B.createNewExpression(B.createFunctionApplyCall(Ar(A.visitNode(Lt,M,A.isExpression)),en,kA(xe.arguments,B.createVoidZero())),void 0,[]),xe),xe)}return A.visitEachChild(xe,M,p)}function _e(xe,ze){ze===void 0&&(ze=0);for(var Lt=xe.length,en=ze;en0)break;qr.push(Le(en))}qr.length&&(Yr(B.createExpressionStatement(B.inlineExpressions(qr))),_r+=qr.length,qr=[])}}function Le(xe){return A.setSourceMapRange(B.createAssignment(A.setSourceMapRange(B.cloneNode(xe.name),xe.name),A.visitNode(xe.initializer,M,A.isExpression)),xe)}function ir(xe){if(tr(xe))if(tr(xe.thenStatement)||tr(xe.elseStatement)){var ze=te(),Lt=xe.elseStatement?te():void 0;Ir(xe.elseStatement?Lt:ze,A.visitNode(xe.expression,M,A.isExpression),xe.expression),Ae(xe.thenStatement),xe.elseStatement&&(Bt(ze),Te(Lt),Ae(xe.elseStatement)),Te(ze)}else Yr(A.visitNode(xe,M,A.isStatement));else Yr(A.visitNode(xe,M,A.isStatement))}function Ye(xe){if(tr(xe)){var ze=te(),Lt=te();ar(ze),Te(Lt),Ae(xe.statement),Te(ze),le(Lt,A.visitNode(xe.expression,M,A.isExpression)),lt()}else Yr(A.visitNode(xe,M,A.isStatement))}function mr(xe){return U?(Mr(),xe=A.visitEachChild(xe,M,p),lt(),xe):A.visitEachChild(xe,M,p)}function $e(xe){if(tr(xe)){var ze=te(),Lt=ar(ze);Te(ze),Ir(Lt,A.visitNode(xe.expression,M,A.isExpression)),Ae(xe.statement),Bt(ze),lt()}else Yr(A.visitNode(xe,M,A.isStatement))}function xr(xe){return U?(Mr(),xe=A.visitEachChild(xe,M,p),lt(),xe):A.visitEachChild(xe,M,p)}function PA(xe){if(tr(xe)){var ze=te(),Lt=te(),en=ar(Lt);if(xe.initializer){var hn=xe.initializer;A.isVariableDeclarationList(hn)?Me(hn):Yr(A.setTextRange(B.createExpressionStatement(A.visitNode(hn,M,A.isExpression)),hn))}Te(ze),xe.condition&&Ir(en,A.visitNode(xe.condition,M,A.isExpression)),Ae(xe.statement),Te(Lt),xe.incrementor&&Yr(A.setTextRange(B.createExpressionStatement(A.visitNode(xe.incrementor,M,A.isExpression)),xe.incrementor)),Bt(ze),lt()}else Yr(A.visitNode(xe,M,A.isStatement))}function we(xe){U&&Mr();var ze=xe.initializer;if(ze&&A.isVariableDeclarationList(ze)){for(var Lt=0,en=ze.declarations;Lt0?B.inlineExpressions(A.map(Ia,Le)):void 0,A.visitNode(xe.condition,M,A.isExpression),A.visitNode(xe.incrementor,M,A.isExpression),A.visitIterationBody(xe.statement,M,p))}else xe=A.visitEachChild(xe,M,p);return U&<(),xe}function LA(xe){if(tr(xe)){var ze=fr(),Lt=fr(),en=fr(),hn=B.createLoopVariable(),Ia=xe.initializer;k(hn),rt(ze,A.visitNode(xe.expression,M,A.isExpression)),rt(Lt,B.createArrayLiteralExpression()),Yr(B.createForInStatement(en,ze,B.createExpressionStatement(B.createCallExpression(B.createPropertyAccessExpression(Lt,"push"),void 0,[en])))),rt(hn,B.createNumericLiteral(0));var ne=te(),_r=te(),qr=ar(_r);Te(ne),Ir(qr,B.createLessThan(hn,B.createPropertyAccessExpression(Lt,"length"))),rt(en,B.createElementAccessExpression(Lt,hn)),Ir(_r,B.createBinaryExpression(en,101,ze));var $r=void 0;if(A.isVariableDeclarationList(Ia)){for(var ie=0,ye=Ia.declarations;ie0?Bt(ze,xe):Yr(xe)}function YA(xe){if(U){var ze=Ve(xe.label&&A.idText(xe.label));if(ze>0)return ot(ze,xe)}return A.visitEachChild(xe,M,p)}function Ce(xe){var ze=JA(xe.label?A.idText(xe.label):void 0);ze>0?Bt(ze,xe):Yr(xe)}function Ke(xe){if(U){var ze=JA(xe.label&&A.idText(xe.label));if(ze>0)return ot(ze,xe)}return A.visitEachChild(xe,M,p)}function er(xe){Zi(A.visitNode(xe.expression,M,A.isExpression),xe)}function ur(xe){return Sr(A.visitNode(xe.expression,M,A.isExpression),xe)}function hr(xe){tr(xe)?(pe(Ar(A.visitNode(xe.expression,M,A.isExpression))),Ae(xe.statement),ee()):Yr(A.visitNode(xe,M,A.isStatement))}function Fr(xe){if(tr(xe.caseBlock)){for(var ze=xe.caseBlock,Lt=ze.clauses.length,en=gt(),hn=Ar(A.visitNode(xe.expression,M,A.isExpression)),Ia=[],ne=-1,_r=0;_r0)break;ie.push(B.createCaseClause(A.visitNode(qr.expression,M,A.isExpression),[ot(Ia[_r],qr.expression)]))}else ye++}ie.length&&(Yr(B.createSwitchStatement(hn,B.createCaseBlock(ie))),$r+=ie.length,ie=[]),ye>0&&($r+=ye,ye=0)}ne>=0?Bt(Ia[ne]):Bt(en);for(var _r=0;_r=0;Lt--){var en=pA[Lt];if(ei(en)){if(en.labelText===xe)return!0}else break}return!1}function JA(xe){if(pA)if(xe)for(var ze=pA.length-1;ze>=0;ze--){var Lt=pA[ze];if(ei(Lt)&&Lt.labelText===xe)return Lt.breakLabel;if(_i(Lt)&&Xr(xe,ze-1))return Lt.breakLabel}else for(var ze=pA.length-1;ze>=0;ze--){var Lt=pA[ze];if(_i(Lt))return Lt.breakLabel}return 0}function Ve(xe){if(pA)if(xe)for(var ze=pA.length-1;ze>=0;ze--){var Lt=pA[ze];if(Yt(Lt)&&Xr(xe,ze-1))return Lt.continueLabel}else for(var ze=pA.length-1;ze>=0;ze--){var Lt=pA[ze];if(Yt(Lt))return Lt.continueLabel}return 0}function XA(xe){if(xe!==void 0&&xe>0){cA===void 0&&(cA=[]);var ze=B.createNumericLiteral(-1);return cA[xe]===void 0?cA[xe]=[ze]:cA[xe].push(ze),ze}return B.createOmittedExpression()}function Gr(xe){var ze=B.createNumericLiteral(xe);return A.addSyntheticTrailingComment(ze,3,g(xe)),ze}function ot(xe,ze){return A.Debug.assertLessThan(0,xe,"Invalid label"),A.setTextRange(B.createReturnStatement(B.createArrayLiteralExpression([Gr(3),XA(xe)])),ze)}function Sr(xe,ze){return A.setTextRange(B.createReturnStatement(B.createArrayLiteralExpression(xe?[Gr(2),xe]:[Gr(2)])),ze)}function Dr(xe){return A.setTextRange(B.createCallExpression(B.createPropertyAccessExpression(Z,"sent"),void 0,[]),xe)}function Jr(){cn(0)}function Yr(xe){xe?cn(1,[xe]):Jr()}function rt(xe,ze,Lt){cn(2,[xe,ze],Lt)}function Bt(xe,ze){cn(3,[xe],ze)}function le(xe,ze,Lt){cn(4,[xe,ze],Lt)}function Ir(xe,ze,Lt){cn(5,[xe,ze],Lt)}function ut(xe,ze){cn(7,[xe],ze)}function Ii(xe,ze){cn(6,[xe],ze)}function Zi(xe,ze){cn(8,[xe],ze)}function yi(xe,ze){cn(9,[xe],ze)}function zt(){cn(10)}function cn(xe,ze,Lt){Y===void 0&&(Y=[],q=[],X=[]),oA===void 0&&Te(te());var en=Y.length;Y[en]=xe,q[en]=ze,X[en]=Lt}function Ui(){K=0,J=0,sA=void 0,uA=!1,BA=!1,CA=void 0,z=void 0,AA=void 0,iA=void 0,_A=void 0;var xe=Mi();return m().createGeneratorHelper(A.setEmitFlags(B.createFunctionExpression(void 0,void 0,void 0,void 0,[B.createParameterDeclaration(void 0,void 0,Z)],void 0,B.createBlock(xe,xe.length>0)),524288))}function Mi(){if(Y){for(var xe=0;xe=0;ze--){var Lt=_A[ze];z=[B.createWithStatement(Lt.expression,B.createBlock(z))]}if(iA){var en=iA.startLabel,hn=iA.catchLabel,Ia=iA.finallyLabel,ne=iA.endLabel;z.unshift(B.createExpressionStatement(B.createCallExpression(B.createPropertyAccessExpression(B.createPropertyAccessExpression(Z,"trys"),"push"),void 0,[B.createArrayLiteralExpression([XA(en),XA(hn),XA(Ia),XA(ne)])]))),iA=void 0}xe&&z.push(B.createExpressionStatement(B.createAssignment(B.createPropertyAccessExpression(Z,"label"),B.createNumericLiteral(J+1))))}CA.push(B.createCaseClause(B.createNumericLiteral(J),z||[])),z=void 0}function Ho(xe){if(oA)for(var ze=0;ze(A.isExportName(PA)?1:0);return!1}function uA(PA,we){return sA(PA.left)?A.flattenDestructuringAssignment(PA,K,i,0,!we,ue):A.visitEachChild(PA,K,i)}function BA(PA){return s.updateForStatement(PA,A.visitNode(PA.initializer,J,A.isForInitializer),A.visitNode(PA.condition,K,A.isExpression),A.visitNode(PA.incrementor,J,A.isExpression),A.visitIterationBody(PA.statement,K,i))}function CA(PA){return s.updateExpressionStatement(PA,A.visitNode(PA.expression,J,A.isExpression))}function z(PA,we){return s.updateParenthesizedExpression(PA,A.visitNode(PA.expression,we?J:K,A.isExpression))}function AA(PA,we){return s.updatePartiallyEmittedExpression(PA,A.visitNode(PA.expression,we?J:K,A.isExpression))}function iA(PA,we){if((PA.operator===45||PA.operator===46)&&A.isIdentifier(PA.operand)&&!A.isGeneratedIdentifier(PA.operand)&&!A.isLocalName(PA.operand)&&!A.isDeclarationNameOfEnumOrNamespace(PA.operand)){var LA=xr(PA.operand);if(LA){var ae=void 0,We=A.visitNode(PA.operand,K,A.isExpression);A.isPrefixUnaryExpression(PA)?We=s.updatePrefixUnaryExpression(PA,We):(We=s.updatePostfixUnaryExpression(PA,We),we||(ae=s.createTempVariable(B),We=s.createAssignment(ae,We),A.setTextRange(We,PA)),We=s.createComma(We,s.cloneNode(PA.operand)),A.setTextRange(We,PA));for(var YA=0,Ce=LA;YA=2?Ce=s.createArrowFunction(void 0,void 0,We,void 0,void 0,YA):(Ce=s.createFunctionExpression(void 0,void 0,void 0,void 0,We,void 0,YA),we&&A.setEmitFlags(Ce,8));var Ke=s.createNewExpression(s.createIdentifier("Promise"),void 0,[Ce]);return A.getESModuleInterop(m)?s.createCallExpression(s.createPropertyAccessExpression(Ke,s.createIdentifier("then")),void 0,[g().createImportStarCallbackHelper()]):Ke}function aA(PA,we){var LA=PA&&!A.isSimpleInlineableExpression(PA)&&!we?s.createTempVariable(B):void 0,ae=s.createCallExpression(s.createPropertyAccessExpression(s.createIdentifier("Promise"),"resolve"),void 0,[]),We=s.createCallExpression(s.createIdentifier("require"),void 0,LA?[LA]:PA?[PA]:[]);A.getESModuleInterop(m)&&(We=g().createImportStarHelper(We));var YA;O>=2?YA=s.createArrowFunction(void 0,void 0,[],void 0,void 0,We):YA=s.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,s.createBlock([s.createReturnStatement(We)]));var Ce=s.createCallExpression(s.createPropertyAccessExpression(ae,"then"),void 0,[YA]);return LA===void 0?Ce:s.createCommaListExpression([s.createAssignment(LA,PA),Ce])}function gA(PA,we){return!A.getESModuleInterop(m)||A.getEmitFlags(PA)&67108864?we:A.getExportNeedsImportStarHelper(PA)?g().createImportStarHelper(we):we}function QA(PA,we){return!A.getESModuleInterop(m)||A.getEmitFlags(PA)&67108864?we:A.getImportNeedsImportStarHelper(PA)?g().createImportStarHelper(we):A.getImportNeedsImportDefaultHelper(PA)?g().createImportDefaultHelper(we):we}function mA(PA){var we,LA=A.getNamespaceDeclarationNode(PA);if(k!==A.ModuleKind.AMD)if(PA.importClause){var ae=[];LA&&!A.isDefaultImport(PA)?ae.push(s.createVariableDeclaration(s.cloneNode(LA.name),void 0,void 0,QA(PA,FA(PA)))):(ae.push(s.createVariableDeclaration(s.getGeneratedNameForNode(PA),void 0,void 0,QA(PA,FA(PA)))),LA&&A.isDefaultImport(PA)&&ae.push(s.createVariableDeclaration(s.cloneNode(LA.name),void 0,void 0,s.getGeneratedNameForNode(PA)))),we=A.append(we,A.setOriginalNode(A.setTextRange(s.createVariableStatement(void 0,s.createVariableDeclarationList(ae,O>=2?2:0)),PA),PA))}else return A.setOriginalNode(A.setTextRange(s.createExpressionStatement(FA(PA)),PA),PA);else LA&&A.isDefaultImport(PA)&&(we=A.append(we,s.createVariableStatement(void 0,s.createVariableDeclarationList([A.setOriginalNode(A.setTextRange(s.createVariableDeclaration(s.cloneNode(LA.name),void 0,void 0,s.getGeneratedNameForNode(PA)),PA),PA)],O>=2?2:0))));if(lA(PA)){var We=A.getOriginalNodeId(PA);v[We]=N(v[We],PA)}else we=N(we,PA);return A.singleOrMany(we)}function FA(PA){var we=A.getExternalModuleNameLiteral(s,PA,F,x,_,m),LA=[];return we&&LA.push(we),s.createCallExpression(s.createIdentifier("require"),void 0,LA)}function SA(PA){A.Debug.assert(A.isExternalModuleImportEqualsDeclaration(PA),"import= for internal module references should be handled in an earlier transformer.");var we;if(k!==A.ModuleKind.AMD?A.hasSyntacticModifier(PA,1)?we=A.append(we,A.setOriginalNode(A.setTextRange(s.createExpressionStatement(Q(PA.name,FA(PA))),PA),PA)):we=A.append(we,A.setOriginalNode(A.setTextRange(s.createVariableStatement(void 0,s.createVariableDeclarationList([s.createVariableDeclaration(s.cloneNode(PA.name),void 0,void 0,FA(PA))],O>=2?2:0)),PA),PA)):A.hasSyntacticModifier(PA,1)&&(we=A.append(we,A.setOriginalNode(A.setTextRange(s.createExpressionStatement(Q(s.getExportName(PA),s.getLocalName(PA))),PA),PA))),lA(PA)){var LA=A.getOriginalNodeId(PA);v[LA]=nA(v[LA],PA)}else we=nA(we,PA);return A.singleOrMany(we)}function ce(PA){if(PA.moduleSpecifier){var we=s.getGeneratedNameForNode(PA);if(PA.exportClause&&A.isNamedExports(PA.exportClause)){var LA=[];k!==A.ModuleKind.AMD&&LA.push(A.setOriginalNode(A.setTextRange(s.createVariableStatement(void 0,s.createVariableDeclarationList([s.createVariableDeclaration(we,void 0,void 0,FA(PA))])),PA),PA));for(var ae=0,We=PA.exportClause.elements;ae=A.ModuleKind.Node16?v(IA):void 0;case 274:return y(IA);case 275:var pA=IA;return S(pA)}return IA}function T(IA){var pA=A.getExternalModuleNameLiteral(i,IA,A.Debug.checkDefined(x),s,g,E),oA=[];if(pA&&oA.push(pA),!O){var cA=i.createUniqueName("_createRequire",48),eA=i.createImportDeclaration(void 0,i.createImportClause(!1,void 0,i.createNamedImports([i.createImportSpecifier(!1,i.createIdentifier("createRequire"),cA)])),i.createStringLiteral("module")),Y=i.createUniqueName("__require",48),q=i.createVariableStatement(void 0,i.createVariableDeclarationList([i.createVariableDeclaration(Y,void 0,void 0,i.createCallExpression(i.cloneNode(cA),void 0,[i.createPropertyAccessExpression(i.createMetaProperty(100,i.createIdentifier("meta")),i.createIdentifier("url"))]))],p>=2?2:0));O=[eA,q]}var X=O[1].declarationList.declarations[0].name;return A.Debug.assertNode(X,A.isIdentifier),i.createCallExpression(i.cloneNode(X),void 0,oA)}function v(IA){A.Debug.assert(A.isExternalModuleImportEqualsDeclaration(IA),"import= for internal module references should be handled in an earlier transformer.");var pA;return pA=A.append(pA,A.setOriginalNode(A.setTextRange(i.createVariableStatement(void 0,i.createVariableDeclarationList([i.createVariableDeclaration(i.cloneNode(IA.name),void 0,void 0,T(IA))],p>=2?2:0)),IA),IA)),pA=F(pA,IA),A.singleOrMany(pA)}function F(IA,pA){return A.hasSyntacticModifier(pA,1)&&(IA=A.append(IA,i.createExportDeclaration(void 0,pA.isTypeOnly,i.createNamedExports([i.createExportSpecifier(!1,void 0,A.idText(pA.name))])))),IA}function y(IA){return IA.isExportEquals?void 0:IA}function S(IA){if(E.module!==void 0&&E.module>A.ModuleKind.ES2015||!IA.exportClause||!A.isNamespaceExport(IA.exportClause)||!IA.moduleSpecifier)return IA;var pA=IA.exportClause.name,oA=i.getGeneratedNameForNode(pA),cA=i.createImportDeclaration(void 0,i.createImportClause(!1,void 0,i.createNamespaceImport(oA)),IA.moduleSpecifier,IA.assertClause);A.setOriginalNode(cA,IA.exportClause);var eA=A.isExportNamespaceAsDefaultDeclaration(IA)?i.createExportDefault(oA):i.createExportDeclaration(void 0,!1,i.createNamedExports([i.createExportSpecifier(!1,oA,pA)]));return A.setOriginalNode(eA,IA),[cA,eA]}function U(IA,pA,oA){A.isSourceFile(pA)?((A.isExternalModule(pA)||E.isolatedModules)&&E.importHelpers&&(_=new A.Map),B(IA,pA,oA),_=void 0):B(IA,pA,oA)}function V(IA,pA){return pA=m(IA,pA),_&&A.isIdentifier(pA)&&A.getEmitFlags(pA)&4096?wA(pA):pA}function wA(IA){var pA=A.idText(IA),oA=_.get(pA);return oA||_.set(pA,oA=i.createUniqueName(pA,48)),oA}}A.transformECMAScriptModule=r})(Oe||(Oe={}));var Oe;(function(A){function r(t){var i=t.onSubstituteNode,o=t.onEmitNode,s=A.transformECMAScriptModule(t),g=t.onSubstituteNode,E=t.onEmitNode;t.onSubstituteNode=i,t.onEmitNode=o;var p=A.transformModule(t),B=t.onSubstituteNode,m=t.onEmitNode;t.onSubstituteNode=x,t.onEmitNode=O,t.enableSubstitution(308),t.enableEmitNotification(308);var _;return H;function x(v,F){return A.isSourceFile(F)?(_=F,i(v,F)):_?_.impliedNodeFormat===A.ModuleKind.ESNext?g(v,F):B(v,F):i(v,F)}function O(v,F,y){return A.isSourceFile(F)&&(_=F),_?_.impliedNodeFormat===A.ModuleKind.ESNext?E(v,F,y):m(v,F,y):o(v,F,y)}function k(v){return v.impliedNodeFormat===A.ModuleKind.ESNext?s:p}function P(v){if(v.isDeclarationFile)return v;_=v;var F=k(v)(v);return _=void 0,A.Debug.assert(A.isSourceFile(F)),F}function H(v){return v.kind===308?P(v):T(v)}function T(v){return t.factory.createBundle(A.map(v.sourceFiles,P),v.prepends)}}A.transformNodeModule=r})(Oe||(Oe={}));var Oe;(function(A){function r(o){return A.isVariableDeclaration(o)||A.isPropertyDeclaration(o)||A.isPropertySignature(o)||A.isBindingElement(o)||A.isSetAccessor(o)||A.isGetAccessor(o)||A.isConstructSignatureDeclaration(o)||A.isCallSignatureDeclaration(o)||A.isMethodDeclaration(o)||A.isMethodSignature(o)||A.isFunctionDeclaration(o)||A.isParameter(o)||A.isTypeParameterDeclaration(o)||A.isExpressionWithTypeArguments(o)||A.isImportEqualsDeclaration(o)||A.isTypeAliasDeclaration(o)||A.isConstructorDeclaration(o)||A.isIndexSignatureDeclaration(o)||A.isPropertyAccessExpression(o)||A.isJSDocTypeAlias(o)}A.canProduceDiagnostics=r;function t(o){if(A.isSetAccessor(o)||A.isGetAccessor(o))return s;return A.isMethodSignature(o)||A.isMethodDeclaration(o)?E:i(o);function s(B){var m=g(B);return m!==void 0?{diagnosticMessage:m,errorNode:o,typeName:o.name}:void 0}function g(B){return A.isStatic(o)?B.errorModuleName?B.accessibility===2?A.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:o.parent.kind===260?B.errorModuleName?B.accessibility===2?A.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_private_name_1:B.errorModuleName?A.Diagnostics.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Property_0_of_exported_interface_has_or_is_using_private_name_1}function E(B){var m=p(B);return m!==void 0?{diagnosticMessage:m,errorNode:o,typeName:o.name}:void 0}function p(B){return A.isStatic(o)?B.errorModuleName?B.accessibility===2?A.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:o.parent.kind===260?B.errorModuleName?B.accessibility===2?A.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_private_name_1:B.errorModuleName?A.Diagnostics.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Method_0_of_exported_interface_has_or_is_using_private_name_1}}A.createGetSymbolAccessibilityDiagnosticForNodeName=t;function i(o){if(A.isVariableDeclaration(o)||A.isPropertyDeclaration(o)||A.isPropertySignature(o)||A.isPropertyAccessExpression(o)||A.isBindingElement(o)||A.isConstructorDeclaration(o))return g;return A.isSetAccessor(o)||A.isGetAccessor(o)?E:A.isConstructSignatureDeclaration(o)||A.isCallSignatureDeclaration(o)||A.isMethodDeclaration(o)||A.isMethodSignature(o)||A.isFunctionDeclaration(o)||A.isIndexSignatureDeclaration(o)?p:A.isParameter(o)?A.isParameterPropertyDeclaration(o,o.parent)&&A.hasSyntacticModifier(o.parent,8)?g:B:A.isTypeParameterDeclaration(o)?_:A.isExpressionWithTypeArguments(o)?x:A.isImportEqualsDeclaration(o)?O:A.isTypeAliasDeclaration(o)||A.isJSDocTypeAlias(o)?k:A.Debug.assertNever(o,"Attempted to set a declaration diagnostic context for unhandled node kind: ".concat(A.Debug.formatSyntaxKind(o.kind)));function s(P){if(o.kind===257||o.kind===205)return P.errorModuleName?P.accessibility===2?A.Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Exported_variable_0_has_or_is_using_private_name_1;if(o.kind===169||o.kind===208||o.kind===168||o.kind===166&&A.hasSyntacticModifier(o.parent,8))return A.isStatic(o)?P.errorModuleName?P.accessibility===2?A.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:o.parent.kind===260||o.kind===166?P.errorModuleName?P.accessibility===2?A.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_private_name_1:P.errorModuleName?A.Diagnostics.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Property_0_of_exported_interface_has_or_is_using_private_name_1}function g(P){var H=s(P);return H!==void 0?{diagnosticMessage:H,errorNode:o,typeName:o.name}:void 0}function E(P){var H;return o.kind===175?A.isStatic(o)?H=P.errorModuleName?A.Diagnostics.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:H=P.errorModuleName?A.Diagnostics.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:A.isStatic(o)?H=P.errorModuleName?P.accessibility===2?A.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:H=P.errorModuleName?P.accessibility===2?A.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1,{diagnosticMessage:H,errorNode:o.name,typeName:o.name}}function p(P){var H;switch(o.kind){case 177:H=P.errorModuleName?A.Diagnostics.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:A.Diagnostics.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 176:H=P.errorModuleName?A.Diagnostics.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:A.Diagnostics.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 178:H=P.errorModuleName?A.Diagnostics.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:A.Diagnostics.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 171:case 170:A.isStatic(o)?H=P.errorModuleName?P.accessibility===2?A.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:A.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:A.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:o.parent.kind===260?H=P.errorModuleName?P.accessibility===2?A.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:A.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:A.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:H=P.errorModuleName?A.Diagnostics.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:A.Diagnostics.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 259:H=P.errorModuleName?P.accessibility===2?A.Diagnostics.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:A.Diagnostics.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:A.Diagnostics.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return A.Debug.fail("This is unknown kind for signature: "+o.kind)}return{diagnosticMessage:H,errorNode:o.name||o}}function B(P){var H=m(P);return H!==void 0?{diagnosticMessage:H,errorNode:o,typeName:o.name}:void 0}function m(P){switch(o.parent.kind){case 173:return P.errorModuleName?P.accessibility===2?A.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 177:case 182:return P.errorModuleName?A.Diagnostics.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 176:return P.errorModuleName?A.Diagnostics.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 178:return P.errorModuleName?A.Diagnostics.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 171:case 170:return A.isStatic(o.parent)?P.errorModuleName?P.accessibility===2?A.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:o.parent.parent.kind===260?P.errorModuleName?P.accessibility===2?A.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:P.errorModuleName?A.Diagnostics.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 259:case 181:return P.errorModuleName?P.accessibility===2?A.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 175:case 174:return P.errorModuleName?P.accessibility===2?A.Diagnostics.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:A.Diagnostics.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:A.Diagnostics.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return A.Debug.fail("Unknown parent for parameter: ".concat(A.Debug.formatSyntaxKind(o.parent.kind)))}}function _(){var P;switch(o.parent.kind){case 260:P=A.Diagnostics.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 261:P=A.Diagnostics.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 197:P=A.Diagnostics.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 182:case 177:P=A.Diagnostics.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 176:P=A.Diagnostics.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 171:case 170:A.isStatic(o.parent)?P=A.Diagnostics.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:o.parent.parent.kind===260?P=A.Diagnostics.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:P=A.Diagnostics.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 181:case 259:P=A.Diagnostics.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 262:P=A.Diagnostics.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return A.Debug.fail("This is unknown parent for type parameter: "+o.parent.kind)}return{diagnosticMessage:P,errorNode:o,typeName:o.name}}function x(){var P;return A.isClassDeclaration(o.parent.parent)?P=A.isHeritageClause(o.parent)&&o.parent.token===117?A.Diagnostics.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:o.parent.parent.name?A.Diagnostics.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:A.Diagnostics.extends_clause_of_exported_class_has_or_is_using_private_name_0:P=A.Diagnostics.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1,{diagnosticMessage:P,errorNode:o,typeName:A.getNameOfDeclaration(o.parent.parent)}}function O(){return{diagnosticMessage:A.Diagnostics.Import_declaration_0_is_using_private_name_1,errorNode:o,typeName:o.name}}function k(P){return{diagnosticMessage:P.errorModuleName?A.Diagnostics.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:A.Diagnostics.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:A.isJSDocTypeAlias(o)?A.Debug.checkDefined(o.typeExpression):o.type,typeName:A.isJSDocTypeAlias(o)?A.getNameOfDeclaration(o):o.name}}}A.createGetSymbolAccessibilityDiagnosticForNode=i})(Oe||(Oe={}));var Oe;(function(A){function r(O,k,P){var H=O.getCompilerOptions(),T=A.transformNodes(k,O,A.factory,H,P?[P]:A.filter(O.getSourceFiles(),A.isSourceFileNotJson),[s],!1);return T.diagnostics}A.getDeclarationDiagnostics=r;function t(O,k){var P=k.text.substring(O.pos,O.end);return A.stringContains(P,"@internal")}function i(O,k){var P=A.getParseTreeNode(O);if(P&&P.kind===166){var H=P.parent.parameters.indexOf(P),T=H>0?P.parent.parameters[H-1]:void 0,v=k.text,F=T?A.concatenate(A.getTrailingCommentRanges(v,A.skipTrivia(v,T.end+1,!1,!0)),A.getLeadingCommentRanges(v,O.pos)):A.getTrailingCommentRanges(v,A.skipTrivia(v,O.pos,!1,!0));return F&&F.length&&t(A.last(F),k)}var y=P&&A.getLeadingCommentRangesOfNode(P,k);return!!A.forEach(y,function(S){return t(S,k)})}A.isInternalDeclaration=i;var o=531469;function s(O){var k=function(){return A.Debug.fail("Diagnostic emitted without context")},P=k,H=!0,T=!1,v=!1,F=!1,y=!1,S,U,V,wA,IA,pA,oA=O.factory,cA=O.getEmitHost(),eA={trackSymbol:fA,reportInaccessibleThisError:mA,reportInaccessibleUniqueSymbolError:gA,reportCyclicStructureError:QA,reportPrivateInBaseOfClassExpression:M,reportLikelyUnsafeImportRequiredError:FA,reportTruncationError:SA,moduleResolverHost:cA,trackReferencedAmbientModule:AA,trackExternalModuleSymbolOfImportTypeNode:_A,reportNonlocalAugmentation:ce,reportNonSerializableProperty:re,reportImportTypeNodeResolutionModeOverride:KA},Y,q,X,Z,K,J,sA=O.getEmitResolver(),uA=O.getCompilerOptions(),BA=uA.noResolve,CA=uA.stripInternal;return jA;function z(qA){if(qA){U=U||new A.Set;for(var oe=0,Ge=qA;oe0?O.parameters[0].type:void 0}function m(O){switch(O.kind){case 169:case 168:return!A.hasEffectiveModifier(O,8);case 166:case 257:return!0}return!1}function _(O){switch(O.kind){case 259:case 264:case 268:case 261:case 260:case 262:case 263:case 240:case 269:case 275:case 274:return!0}return!1}function x(O){switch(O.kind){case 177:case 173:case 171:case 174:case 175:case 169:case 168:case 170:case 176:case 178:case 257:case 165:case 230:case 180:case 191:case 181:case 182:case 202:return!0}return!1}})(Oe||(Oe={}));var Oe;(function(A){function r(k){switch(k){case A.ModuleKind.ESNext:case A.ModuleKind.ES2022:case A.ModuleKind.ES2020:case A.ModuleKind.ES2015:return A.transformECMAScriptModule;case A.ModuleKind.System:return A.transformSystemModule;case A.ModuleKind.Node16:case A.ModuleKind.NodeNext:return A.transformNodeModule;default:return A.transformModule}}var t;(function(k){k[k.Uninitialized=0]="Uninitialized",k[k.Initialized=1]="Initialized",k[k.Completed=2]="Completed",k[k.Disposed=3]="Disposed"})(t||(t={}));var i;(function(k){k[k.Substitution=1]="Substitution",k[k.EmitNotifications=2]="EmitNotifications"})(i||(i={})),A.noTransformers={scriptTransformers:A.emptyArray,declarationTransformers:A.emptyArray};function o(k,P,H){return{scriptTransformers:s(k,P,H),declarationTransformers:g(P)}}A.getTransformers=o;function s(k,P,H){if(H)return A.emptyArray;var T=A.getEmitScriptTarget(k),v=A.getEmitModuleKind(k),F=[];return A.addRange(F,P&&A.map(P.before,B)),F.push(A.transformTypeScript),F.push(A.transformLegacyDecorators),F.push(A.transformClassFields),A.getJSXTransformEnabled(k)&&F.push(A.transformJsx),T<99&&F.push(A.transformESNext),T<8&&F.push(A.transformES2021),T<7&&F.push(A.transformES2020),T<6&&F.push(A.transformES2019),T<5&&F.push(A.transformES2018),T<4&&F.push(A.transformES2017),T<3&&F.push(A.transformES2016),T<2&&(F.push(A.transformES2015),F.push(A.transformGenerators)),F.push(r(v)),T<1&&F.push(A.transformES5),A.addRange(F,P&&A.map(P.after,B)),F}function g(k){var P=[];return P.push(A.transformDeclarations),A.addRange(P,k&&A.map(k.afterDeclarations,m)),P}function E(k){return function(P){return A.isBundle(P)?k.transformBundle(P):k.transformSourceFile(P)}}function p(k,P){return function(H){var T=k(H);return typeof T=="function"?P(H,T):E(T)}}function B(k){return p(k,A.chainBundle)}function m(k){return p(k,function(P,H){return H})}function _(k,P){return P}A.noEmitSubstitution=_;function x(k,P,H){H(k,P)}A.noEmitNotification=x;function O(k,P,H,T,v,F,y){for(var S=new Array(358),U,V,wA,IA=0,pA=[],oA=[],cA=[],eA=[],Y=0,q=!1,X=[],Z=0,K,J,sA=_,uA=x,BA=0,CA=[],z={factory:H,getCompilerOptions:function(){return T},getEmitResolver:function(){return k},getEmitHost:function(){return P},getEmitHelperFactory:A.memoize(function(){return A.createEmitHelperFactory(z)}),startLexicalEnvironment:RA,suspendLexicalEnvironment:lA,resumeLexicalEnvironment:tA,endLexicalEnvironment:N,setLexicalEnvironmentFlags:nA,getLexicalEnvironmentFlags:kA,hoistVariableDeclaration:jA,hoistFunctionDeclaration:ue,addInitializationStatement:MA,startBlockScope:bA,endBlockScope:TA,addBlockScopedVariable:VA,requestEmitHelper:De,readEmitHelpers:_e,enableSubstitution:FA,enableEmitNotification:re,isSubstitutionEnabled:SA,isEmitNotificationEnabled:KA,get onSubstituteNode(){return sA},set onSubstituteNode(Q){A.Debug.assert(BA<1,"Cannot modify transformation hooks after initialization has completed."),A.Debug.assert(Q!==void 0,"Value must not be 'undefined'"),sA=Q},get onEmitNode(){return uA},set onEmitNode(Q){A.Debug.assert(BA<1,"Cannot modify transformation hooks after initialization has completed."),A.Debug.assert(Q!==void 0,"Value must not be 'undefined'"),uA=Q},addDiagnostic:function(Q){CA.push(Q)}},AA=0,iA=v;AA0,"Cannot modify the lexical environment during initialization."),A.Debug.assert(BA<2,"Cannot modify the lexical environment after transformation has completed.");var Ze=A.setEmitFlags(H.createVariableDeclaration(Q),64);U?U.push(Ze):U=[Ze],IA&1&&(IA|=2)}function ue(Q){A.Debug.assert(BA>0,"Cannot modify the lexical environment during initialization."),A.Debug.assert(BA<2,"Cannot modify the lexical environment after transformation has completed."),A.setEmitFlags(Q,1048576),V?V.push(Q):V=[Q]}function MA(Q){A.Debug.assert(BA>0,"Cannot modify the lexical environment during initialization."),A.Debug.assert(BA<2,"Cannot modify the lexical environment after transformation has completed."),A.setEmitFlags(Q,1048576),wA?wA.push(Q):wA=[Q]}function RA(){A.Debug.assert(BA>0,"Cannot modify the lexical environment during initialization."),A.Debug.assert(BA<2,"Cannot modify the lexical environment after transformation has completed."),A.Debug.assert(!q,"Lexical environment is suspended."),pA[Y]=U,oA[Y]=V,cA[Y]=wA,eA[Y]=IA,Y++,U=void 0,V=void 0,wA=void 0,IA=0}function lA(){A.Debug.assert(BA>0,"Cannot modify the lexical environment during initialization."),A.Debug.assert(BA<2,"Cannot modify the lexical environment after transformation has completed."),A.Debug.assert(!q,"Lexical environment is already suspended."),q=!0}function tA(){A.Debug.assert(BA>0,"Cannot modify the lexical environment during initialization."),A.Debug.assert(BA<2,"Cannot modify the lexical environment after transformation has completed."),A.Debug.assert(q,"Lexical environment is not suspended."),q=!1}function N(){A.Debug.assert(BA>0,"Cannot modify the lexical environment during initialization."),A.Debug.assert(BA<2,"Cannot modify the lexical environment after transformation has completed."),A.Debug.assert(!q,"Lexical environment is suspended.");var Q;if(U||V||wA){if(V&&(Q=dt([],V,!0)),U){var Ze=H.createVariableStatement(void 0,H.createVariableDeclarationList(U));A.setEmitFlags(Ze,1048576),Q?Q.push(Ze):Q=[Ze]}wA&&(Q?Q=dt(dt([],Q,!0),wA,!0):Q=dt([],wA,!0))}return Y--,U=pA[Y],V=oA[Y],wA=cA[Y],IA=eA[Y],Y===0&&(pA=[],oA=[],cA=[],eA=[]),Q}function nA(Q,Ze){IA=Ze?IA|Q:IA&~Q}function kA(){return IA}function bA(){A.Debug.assert(BA>0,"Cannot start a block scope during initialization."),A.Debug.assert(BA<2,"Cannot start a block scope after transformation has completed."),X[Z]=K,Z++,K=void 0}function TA(){A.Debug.assert(BA>0,"Cannot end a block scope during initialization."),A.Debug.assert(BA<2,"Cannot end a block scope after transformation has completed.");var Q=A.some(K)?[H.createVariableStatement(void 0,H.createVariableDeclarationList(K.map(function(Ze){return H.createVariableDeclaration(Ze)}),1))]:void 0;return Z--,K=X[Z],Z===0&&(X=[]),Q}function VA(Q){A.Debug.assert(Z>0,"Cannot add a block scoped variable outside of an iteration body."),(K||(K=[])).push(Q)}function De(Q){if(A.Debug.assert(BA>0,"Cannot modify the transformation context during initialization."),A.Debug.assert(BA<2,"Cannot modify the transformation context after transformation has completed."),A.Debug.assert(!Q.scoped,"Cannot request a scoped emit helper."),Q.dependencies)for(var Ze=0,Cr=Q.dependencies;Ze0,"Cannot modify the transformation context during initialization."),A.Debug.assert(BA<2,"Cannot modify the transformation context after transformation has completed.");var Q=J;return J=void 0,Q}function Ae(){if(BA<3){for(var Q=0,Ze=v;Q"),fi(),ar(rA.type),Mg(rA)}function xe(rA){Rn("function"),vl(rA,rA.parameters),oi(":"),ar(rA.type)}function ze(rA){oi("?"),ar(rA.type)}function Lt(rA){oi("!"),ar(rA.type)}function en(rA){ar(rA.type),oi("=")}function hn(rA){qd(rA),Sl(rA,rA.modifiers),Rn("new"),fi(),yu(rA,rA.typeParameters),vl(rA,rA.parameters),fi(),oi("=>"),fi(),ar(rA.type),Mg(rA)}function Ia(rA){Rn("typeof"),fi(),ar(rA.exprName),gg(rA,rA.typeArguments)}function ne(rA){oi("{");var ge=A.getEmitFlags(rA)&1?768:32897;Lo(rA,rA.members,ge|524288),oi("}")}function _r(rA){ar(rA.elementType,qA.parenthesizeNonArrayTypeOfPostfixType),oi("["),oi("]")}function qr(rA){oi("..."),ar(rA.type)}function $r(rA){lr(22,rA.pos,oi,rA);var ge=A.getEmitFlags(rA)&1?528:657;Lo(rA,rA.elements,ge|524288,qA.parenthesizeElementTypeOfTupleType),lr(23,rA.elements.end,oi,rA)}function ie(rA){ar(rA.dotDotDotToken),ar(rA.name),ar(rA.questionToken),lr(58,rA.name.end,oi,rA),fi(),ar(rA.type)}function ye(rA){ar(rA.type,qA.parenthesizeTypeOfOptionalType),oi("?")}function Re(rA){Lo(rA,rA.types,516,qA.parenthesizeConstituentTypeOfUnionType)}function rr(rA){Lo(rA,rA.types,520,qA.parenthesizeConstituentTypeOfIntersectionType)}function zr(rA){ar(rA.checkType,qA.parenthesizeCheckTypeOfConditionalType),fi(),Rn("extends"),fi(),ar(rA.extendsType,qA.parenthesizeExtendsTypeOfConditionalType),fi(),oi("?"),fi(),ar(rA.trueType),fi(),oi(":"),fi(),ar(rA.falseType)}function Ft(rA){Rn("infer"),fi(),ar(rA.typeParameter)}function Gt(rA){oi("("),ar(rA.type),oi(")")}function Tt(){Rn("this")}function gn(rA){_d(rA.operator,Rn),fi();var ge=rA.operator===146?qA.parenthesizeOperandOfReadonlyTypeOperator:qA.parenthesizeOperandOfTypeOperator;ar(rA.type,ge)}function kn(rA){ar(rA.objectType,qA.parenthesizeNonArrayTypeOfPostfixType),oi("["),ar(rA.indexType),oi("]")}function ra(rA){var ge=A.getEmitFlags(rA);oi("{"),ge&1?fi():(cs(),Nl()),rA.readonlyToken&&(ar(rA.readonlyToken),rA.readonlyToken.kind!==146&&Rn("readonly"),fi()),oi("["),Zt(3,rA.typeParameter),rA.nameType&&(fi(),Rn("as"),fi(),ar(rA.nameType)),oi("]"),rA.questionToken&&(ar(rA.questionToken),rA.questionToken.kind!==57&&oi("?")),oi(":"),fi(),ar(rA.type),ss(),ge&1?fi():(cs(),du()),Lo(rA,rA.members,2),oi("}")}function Vn(rA){Lr(rA.literal)}function ba(rA){ar(rA.head),Lo(rA,rA.templateSpans,262144)}function Ts(rA){if(rA.isTypeOf&&(Rn("typeof"),fi()),Rn("import"),oi("("),ar(rA.argument),rA.assertions){oi(","),fi(),oi("{"),fi(),Rn("assert"),oi(":"),fi();var ge=rA.assertions.assertClause.elements;Lo(rA.assertions.assertClause,ge,526226),fi(),oi("}")}oi(")"),rA.qualifier&&(oi("."),ar(rA.qualifier)),gg(rA,rA.typeArguments)}function Qs(rA){oi("{"),Lo(rA,rA.elements,525136),oi("}")}function Gs(rA){oi("["),Lo(rA,rA.elements,524880),oi("]")}function Vc(rA){ar(rA.dotDotDotToken),rA.propertyName&&(ar(rA.propertyName),oi(":"),fi()),ar(rA.name),vp(rA.initializer,rA.name.end,rA,qA.parenthesizeExpressionForDisallowedComma)}function $s(rA){var ge=rA.elements,kr=rA.multiLine?65536:0;Ic(rA,ge,8914|kr,qA.parenthesizeExpressionForDisallowedComma)}function ys(rA){A.forEach(rA.properties,yl);var ge=A.getEmitFlags(rA)&65536;ge&&Nl();var kr=rA.multiLine?65536:0,ft=re&&re.languageVersion>=1&&!A.isJsonSourceFile(re)?64:0;Lo(rA,rA.properties,526226|ft|kr),ge&&du()}function zc(rA){Lr(rA.expression,qA.parenthesizeLeftSideOfAccess);var ge=rA.questionDotToken||A.setTextRangePosEnd(A.factory.createToken(24),rA.expression.end,rA.name.pos),kr=pu(rA,rA.expression,ge),ft=pu(rA,ge,rA.name);rd(kr,!1);var ki=ge.kind!==28&&Rc(rA.expression)&&!VA.hasTrailingComment()&&!VA.hasTrailingWhitespace();ki&&oi("."),rA.questionDotToken?ar(ge):lr(ge.kind,rA.expression.end,oi,rA),rd(ft,!1),ar(rA.name),hc(kr,ft)}function Rc(rA){if(rA=A.skipPartiallyEmittedExpressions(rA),A.isNumericLiteral(rA)){var ge=Nf(rA,!0,!1);return!rA.numericLiteralFlags&&!A.stringContains(ge,A.tokenToString(24))}else if(A.isAccessExpression(rA)){var kr=A.getConstantValue(rA);return typeof kr=="number"&&isFinite(kr)&&Math.floor(kr)===kr}}function _l(rA){Lr(rA.expression,qA.parenthesizeLeftSideOfAccess),ar(rA.questionDotToken),lr(22,rA.expression.end,oi,rA),Lr(rA.argumentExpression),lr(23,rA.argumentExpression.end,oi,rA)}function Bc(rA){var ge=A.getEmitFlags(rA)&536870912;ge&&(oi("("),Fu("0"),oi(","),fi()),Lr(rA.expression,qA.parenthesizeLeftSideOfAccess),ge&&oi(")"),ar(rA.questionDotToken),gg(rA,rA.typeArguments),Ic(rA,rA.arguments,2576,qA.parenthesizeExpressionForDisallowedComma)}function sl(rA){lr(103,rA.pos,Rn,rA),fi(),Lr(rA.expression,qA.parenthesizeExpressionOfNew),gg(rA,rA.typeArguments),Ic(rA,rA.arguments,18960,qA.parenthesizeExpressionForDisallowedComma)}function ms(rA){var ge=A.getEmitFlags(rA)&536870912;ge&&(oi("("),Fu("0"),oi(","),fi()),Lr(rA.tag,qA.parenthesizeLeftSideOfAccess),ge&&oi(")"),gg(rA,rA.typeArguments),fi(),Lr(rA.template)}function kl(rA){oi("<"),ar(rA.type),oi(">"),Lr(rA.expression,qA.parenthesizeOperandOfPrefixUnary)}function bs(rA){var ge=lr(20,rA.pos,oi,rA),kr=wB(rA.expression,rA);Lr(rA.expression,void 0),_c(rA.expression,rA),hc(kr),lr(21,rA.expression?rA.expression.end:ge,oi,rA)}function Tc(rA){lc(rA.name),Ms(rA)}function xs(rA){Sl(rA,rA.modifiers),qo(rA,yA)}function yA(rA){yu(rA,rA.typeParameters),mB(rA,rA.parameters),bg(rA.type),fi(),ar(rA.equalsGreaterThanToken)}function je(rA){lr(89,rA.pos,Rn,rA),fi(),Lr(rA.expression,qA.parenthesizeOperandOfPrefixUnary)}function br(rA){lr(112,rA.pos,Rn,rA),fi(),Lr(rA.expression,qA.parenthesizeOperandOfPrefixUnary)}function mt(rA){lr(114,rA.pos,Rn,rA),fi(),Lr(rA.expression,qA.parenthesizeOperandOfPrefixUnary)}function ai(rA){lr(133,rA.pos,Rn,rA),fi(),Lr(rA.expression,qA.parenthesizeOperandOfPrefixUnary)}function Pi(rA){_d(rA.operator,Pc),Bi(rA)&&fi(),Lr(rA.operand,qA.parenthesizeOperandOfPrefixUnary)}function Bi(rA){var ge=rA.operand;return ge.kind===221&&(rA.operator===39&&(ge.operator===39||ge.operator===45)||rA.operator===40&&(ge.operator===40||ge.operator===46))}function ji(rA){Lr(rA.operand,qA.parenthesizeOperandOfPostfixUnary),_d(rA.operator,Pc)}function Fn(){return A.createBinaryExpressionTrampoline(rA,ge,kr,ft,ki,void 0);function rA(_n,Bn){if(Bn){Bn.stackIndex++,Bn.preserveSourceNewlinesStack[Bn.stackIndex]=bA,Bn.containerPosStack[Bn.stackIndex]=PA,Bn.containerEndStack[Bn.stackIndex]=we,Bn.declarationListContainerEndStack[Bn.stackIndex]=LA;var wa=Bn.shouldEmitCommentsStack[Bn.stackIndex]=Ot(_n),Wo=Bn.shouldEmitSourceMapsStack[Bn.stackIndex]=_i(_n);_A?.(_n),wa&&kp(_n),Wo&&fu(_n),Pr(_n)}else Bn={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return Bn}function ge(_n,Bn,wa){return sn(_n,wa,"left")}function kr(_n,Bn,wa){var Wo=_n.kind!==27,ya=pu(wa,wa.left,_n),Ul=pu(wa,_n,wa.right);rd(ya,Wo),Ku(_n.pos),Ss(_n,_n.kind===101?Rn:Pc),kg(_n.end,!0),rd(Ul,!0)}function ft(_n,Bn,wa){return sn(_n,wa,"right")}function ki(_n,Bn){var wa=pu(_n,_n.left,_n.operatorToken),Wo=pu(_n,_n.operatorToken,_n.right);if(hc(wa,Wo),Bn.stackIndex>0){var ya=Bn.preserveSourceNewlinesStack[Bn.stackIndex],Ul=Bn.containerPosStack[Bn.stackIndex],Ha=Bn.containerEndStack[Bn.stackIndex],$n=Bn.declarationListContainerEndStack[Bn.stackIndex],ru=Bn.shouldEmitCommentsStack[Bn.stackIndex],Xc=Bn.shouldEmitSourceMapsStack[Bn.stackIndex];Et(ya),Xc&&Sp(_n),ru&&eu(_n,Ul,Ha,$n),fA?.(_n),Bn.stackIndex--}}function sn(_n,Bn,wa){var Wo=wa==="left"?qA.getParenthesizeLeftSideOfBinaryForOperator(Bn.operatorToken.kind):qA.getParenthesizeRightSideOfBinaryForOperator(Bn.operatorToken.kind),ya=ei(0,1,_n);if(ya===Gr&&(A.Debug.assertIsDefined(Ke),_n=Wo(A.cast(Ke,A.isExpression)),ya=Yt(1,1,_n),Ke=void 0),(ya===Gl||ya===xg||ya===JA)&&A.isBinaryExpression(_n))return _n;er=Wo,ya(1,_n)}}function vn(rA){var ge=pu(rA,rA.condition,rA.questionToken),kr=pu(rA,rA.questionToken,rA.whenTrue),ft=pu(rA,rA.whenTrue,rA.colonToken),ki=pu(rA,rA.colonToken,rA.whenFalse);Lr(rA.condition,qA.parenthesizeConditionOfConditionalExpression),rd(ge,!0),ar(rA.questionToken),rd(kr,!0),Lr(rA.whenTrue,qA.parenthesizeBranchOfConditionalExpression),hc(ge,kr),rd(ft,!0),ar(rA.colonToken),rd(ki,!0),Lr(rA.whenFalse,qA.parenthesizeBranchOfConditionalExpression),hc(ft,ki)}function aa(rA){ar(rA.head),Lo(rA,rA.templateSpans,262144)}function se(rA){lr(125,rA.pos,Rn,rA),ar(rA.asteriskToken),Fl(rA.expression&&Wt(rA.expression),Kt)}function jr(rA){lr(25,rA.pos,oi,rA),Lr(rA.expression,qA.parenthesizeExpressionForDisallowedComma)}function qe(rA){lc(rA.name),jt(rA)}function la(rA){Lr(rA.expression,qA.parenthesizeLeftSideOfAccess),gg(rA,rA.typeArguments)}function Ba(rA){Lr(rA.expression,void 0),rA.type&&(fi(),Rn("as"),fi(),ar(rA.type))}function po(rA){Lr(rA.expression,qA.parenthesizeLeftSideOfAccess),Pc("!")}function Ds(rA){Lr(rA.expression,void 0),rA.type&&(fi(),Rn("satisfies"),fi(),ar(rA.type))}function Ac(rA){yp(rA.keywordToken,rA.pos,oi),oi("."),ar(rA.name)}function gc(rA){Lr(rA.expression),ar(rA.literal)}function Xl(rA){Nc(rA,!rA.multiLine&&sf(rA))}function Nc(rA,ge){lr(18,rA.pos,oi,rA);var kr=ge||A.getEmitFlags(rA)&1?768:129;Lo(rA,rA.statements,kr),lr(19,rA.statements.end,oi,rA,!!(kr&1))}function Kc(rA){Sl(rA,rA.modifiers),ar(rA.declarationList),ss()}function Zl(rA){rA?oi(";"):ss()}function ho(rA){Lr(rA.expression,qA.parenthesizeExpressionOfExpressionStatement),(!re||!A.isJsonSourceFile(re)||A.nodeIsSynthesized(rA.expression))&&ss()}function ec(rA){var ge=lr(99,rA.pos,Rn,rA);fi(),lr(20,ge,oi,rA),Lr(rA.expression),lr(21,rA.expression.end,oi,rA),ed(rA,rA.thenStatement),rA.elseStatement&&(Ld(rA,rA.thenStatement,rA.elseStatement),lr(91,rA.thenStatement.end,Rn,rA),rA.elseStatement.kind===242?(fi(),ar(rA.elseStatement)):ed(rA,rA.elseStatement))}function Nt(rA,ge){var kr=lr(115,ge,Rn,rA);fi(),lr(20,kr,oi,rA),Lr(rA.expression),lr(21,rA.expression.end,oi,rA)}function Li(rA){lr(90,rA.pos,Rn,rA),ed(rA,rA.statement),A.isBlock(rA.statement)&&!bA?fi():Ld(rA,rA.statement,rA.expression),Nt(rA,rA.statement.end),ss()}function mi(rA){Nt(rA,rA.pos),ed(rA,rA.statement)}function Ea(rA){var ge=lr(97,rA.pos,Rn,rA);fi();var kr=lr(20,ge,oi,rA);Os(rA.initializer),kr=lr(26,rA.initializer?rA.initializer.end:kr,oi,rA),Fl(rA.condition),kr=lr(26,rA.condition?rA.condition.end:kr,oi,rA),Fl(rA.incrementor),lr(21,rA.incrementor?rA.incrementor.end:kr,oi,rA),ed(rA,rA.statement)}function Mo(rA){var ge=lr(97,rA.pos,Rn,rA);fi(),lr(20,ge,oi,rA),Os(rA.initializer),fi(),lr(101,rA.initializer.end,Rn,rA),fi(),Lr(rA.expression),lr(21,rA.expression.end,oi,rA),ed(rA,rA.statement)}function es(rA){var ge=lr(97,rA.pos,Rn,rA);fi(),$l(rA.awaitModifier),lr(20,ge,oi,rA),Os(rA.initializer),fi(),lr(162,rA.initializer.end,Rn,rA),fi(),Lr(rA.expression),lr(21,rA.expression.end,oi,rA),ed(rA,rA.statement)}function Os(rA){rA!==void 0&&(rA.kind===258?ar(rA):Lr(rA))}function _s(rA){lr(86,rA.pos,Rn,rA),uE(rA.label),ss()}function cr(rA){lr(81,rA.pos,Rn,rA),uE(rA.label),ss()}function lr(rA,ge,kr,ft,ki){var sn=A.getParseTreeNode(ft),_n=sn&&sn.kind===ft.kind,Bn=ge;if(_n&&re&&(ge=A.skipTrivia(re.text,ge)),_n&&ft.pos!==Bn){var wa=ki&&re&&!A.positionsAreOnSameLine(Bn,ge,re);wa&&Nl(),Ku(Bn),wa&&du()}if(ge=_d(rA,kr,ge),_n&&ft.end!==ge){var Wo=ft.kind===291;kg(ge,!Wo,Wo)}return ge}function Zr(rA){return rA.kind===2||!!rA.hasTrailingNewLine}function xt(rA){return re?A.some(A.getLeadingCommentRanges(re.text,rA.pos),Zr)||A.some(A.getSyntheticLeadingComments(rA),Zr)?!0:A.isPartiallyEmittedExpression(rA)?rA.pos!==rA.expression.pos&&A.some(A.getTrailingCommentRanges(re.text,rA.expression.pos),Zr)?!0:xt(rA.expression):!1:!1}function Wt(rA){if(!Ce&&A.isPartiallyEmittedExpression(rA)&&xt(rA)){var ge=A.getParseTreeNode(rA);if(ge&&A.isParenthesizedExpression(ge)){var kr=A.factory.createParenthesizedExpression(rA.expression);return A.setOriginalNode(kr,rA),A.setTextRange(kr,ge),kr}return A.factory.createParenthesizedExpression(rA)}return rA}function Kt(rA){return Wt(qA.parenthesizeExpressionForDisallowedComma(rA))}function Gi(rA){lr(105,rA.pos,Rn,rA),Fl(rA.expression&&Wt(rA.expression),Wt),ss()}function di(rA){var ge=lr(116,rA.pos,Rn,rA);fi(),lr(20,ge,oi,rA),Lr(rA.expression),lr(21,rA.expression.end,oi,rA),ed(rA,rA.statement)}function Yi(rA){var ge=lr(107,rA.pos,Rn,rA);fi(),lr(20,ge,oi,rA),Lr(rA.expression),lr(21,rA.expression.end,oi,rA),fi(),ar(rA.caseBlock)}function ha(rA){ar(rA.label),lr(58,rA.label.end,oi,rA),fi(),ar(rA.statement)}function Jn(rA){lr(109,rA.pos,Rn,rA),Fl(Wt(rA.expression),Wt),ss()}function Cn(rA){lr(111,rA.pos,Rn,rA),fi(),ar(rA.tryBlock),rA.catchClause&&(Ld(rA,rA.tryBlock,rA.catchClause),ar(rA.catchClause)),rA.finallyBlock&&(Ld(rA,rA.catchClause||rA.tryBlock,rA.finallyBlock),lr(96,(rA.catchClause||rA.tryBlock).end,Rn,rA),fi(),ar(rA.finallyBlock))}function ja(rA){yp(87,rA.pos,Rn),ss()}function qn(rA){var ge,kr,ft,ki,sn;ar(rA.name),ar(rA.exclamationToken),bg(rA.type),vp(rA.initializer,(sn=(kr=(ge=rA.type)===null||ge===void 0?void 0:ge.end)!==null&&kr!==void 0?kr:(ki=(ft=rA.name.emitNode)===null||ft===void 0?void 0:ft.typeNode)===null||ki===void 0?void 0:ki.end)!==null&&sn!==void 0?sn:rA.name.end,rA,qA.parenthesizeExpressionForDisallowedComma)}function Qo(rA){Rn(A.isLet(rA)?"let":A.isVarConst(rA)?"const":"var"),fi(),Lo(rA,rA.declarations,528)}function lo(rA){Ms(rA)}function Ms(rA){Sl(rA,rA.modifiers),Rn("function"),ar(rA.asteriskToken),fi(),lt(rA.name),qo(rA,Ys)}function qo(rA,ge){var kr=rA.body;if(kr)if(A.isBlock(kr)){var ft=A.getEmitFlags(rA)&65536;ft&&Nl(),qd(rA),A.forEach(rA.parameters,Js),Js(rA.body),ge(rA),xA(kr),Mg(rA),ft&&du()}else ge(rA),fi(),Lr(kr,qA.parenthesizeConciseBodyOfArrowFunction);else ge(rA),ss()}function Ys(rA){yu(rA,rA.typeParameters),vl(rA,rA.parameters),bg(rA.type)}function rs(rA){if(A.getEmitFlags(rA)&1)return!0;if(rA.multiLine||!A.nodeIsSynthesized(rA)&&re&&!A.rangeIsOnSingleLine(rA,re)||wd(rA,A.firstOrUndefined(rA.statements),2)||Cp(rA,A.lastOrUndefined(rA.statements),2,rA.statements))return!1;for(var ge,kr=0,ft=rA.statements;kr0)return!1;ge=ki}return!0}function xA(rA){_A?.(rA),fi(),oi("{"),Nl();var ge=rs(rA)?ve:Ue;Eh(rA,rA.statements,ge),du(),yp(19,rA.statements.end,oi,rA),fA?.(rA)}function ve(rA){Ue(rA,!0)}function Ue(rA,ge){var kr=Af(rA.statements),ft=VA.getTextPos();Sr(rA),kr===0&&ft===VA.getTextPos()&&ge?(du(),Lo(rA,rA.statements,768),Nl()):Lo(rA,rA.statements,1,void 0,kr)}function et(rA){jt(rA)}function jt(rA){A.forEach(rA.members,yl),Ad(rA,rA.modifiers),Rn("class"),rA.name&&(fi(),lt(rA.name));var ge=A.getEmitFlags(rA)&65536;ge&&Nl(),yu(rA,rA.typeParameters),Lo(rA,rA.heritageClauses,0),fi(),oi("{"),Lo(rA,rA.members,129),oi("}"),ge&&du()}function Ji(rA){Sl(rA,rA.modifiers),Rn("interface"),fi(),ar(rA.name),yu(rA,rA.typeParameters),Lo(rA,rA.heritageClauses,512),fi(),oi("{"),Lo(rA,rA.members,129),oi("}")}function Dn(rA){Sl(rA,rA.modifiers),Rn("type"),fi(),ar(rA.name),yu(rA,rA.typeParameters),fi(),oi("="),fi(),ar(rA.type),ss()}function ta(rA){Sl(rA,rA.modifiers),Rn("enum"),fi(),ar(rA.name),fi(),oi("{"),Lo(rA,rA.members,145),oi("}")}function qa(rA){Sl(rA,rA.modifiers),~rA.flags&1024&&(Rn(rA.flags&16?"namespace":"module"),fi()),ar(rA.name);var ge=rA.body;if(!ge)return ss();for(;ge&&A.isModuleDeclaration(ge);)oi("."),ar(ge.name),ge=ge.body;fi(),ar(ge)}function ro(rA){qd(rA),A.forEach(rA.statements,Js),Nc(rA,sf(rA)),Mg(rA)}function Co(rA){lr(18,rA.pos,oi,rA),Lo(rA,rA.clauses,129),lr(19,rA.clauses.end,oi,rA,!0)}function Ma(rA){Sl(rA,rA.modifiers),lr(100,rA.modifiers?rA.modifiers.end:rA.pos,Rn,rA),fi(),rA.isTypeOnly&&(lr(154,rA.pos,Rn,rA),fi()),ar(rA.name),fi(),lr(63,rA.name.end,oi,rA),fi(),Wa(rA.moduleReference),ss()}function Wa(rA){rA.kind===79?Lr(rA):ar(rA)}function gs(rA){Sl(rA,rA.modifiers),lr(100,rA.modifiers?rA.modifiers.end:rA.pos,Rn,rA),fi(),rA.importClause&&(ar(rA.importClause),fi(),lr(158,rA.importClause.end,Rn,rA),fi()),Lr(rA.moduleSpecifier),rA.assertClause&&uE(rA.assertClause),ss()}function ts(rA){rA.isTypeOnly&&(lr(154,rA.pos,Rn,rA),fi()),ar(rA.name),rA.name&&rA.namedBindings&&(lr(27,rA.name.end,oi,rA),fi()),ar(rA.namedBindings)}function Us(rA){var ge=lr(41,rA.pos,oi,rA);fi(),lr(128,ge,Rn,rA),fi(),ar(rA.name)}function xl(rA){Zg(rA)}function jo(rA){vg(rA)}function Cc(rA){var ge=lr(93,rA.pos,Rn,rA);fi(),rA.isExportEquals?lr(63,ge,Pc,rA):lr(88,ge,Rn,rA),fi(),Lr(rA.expression,rA.isExportEquals?qA.getParenthesizeRightSideOfBinaryForOperator(63):qA.parenthesizeExpressionOfExportDefault),ss()}function Sf(rA){Sl(rA,rA.modifiers);var ge=lr(93,rA.pos,Rn,rA);if(fi(),rA.isTypeOnly&&(ge=lr(154,ge,Rn,rA),fi()),rA.exportClause?ar(rA.exportClause):ge=lr(41,ge,oi,rA),rA.moduleSpecifier){fi();var kr=rA.exportClause?rA.exportClause.end:ge;lr(158,kr,Rn,rA),fi(),Lr(rA.moduleSpecifier)}rA.assertClause&&uE(rA.assertClause),ss()}function Ed(rA){lr(130,rA.pos,Rn,rA),fi();var ge=rA.elements;Lo(rA,ge,526226)}function Pd(rA){ar(rA.name),oi(":"),fi();var ge=rA.value;if(!(A.getEmitFlags(ge)&512)){var kr=A.getCommentRange(ge);kg(kr.pos)}ar(ge)}function pr(rA){var ge=lr(93,rA.pos,Rn,rA);fi(),ge=lr(128,ge,Rn,rA),fi(),ge=lr(143,ge,Rn,rA),fi(),ar(rA.name),ss()}function fd(rA){var ge=lr(41,rA.pos,oi,rA);fi(),lr(128,ge,Rn,rA),fi(),ar(rA.name)}function uu(rA){Zg(rA)}function Bd(rA){vg(rA)}function Zg(rA){oi("{"),Lo(rA,rA.elements,525136),oi("}")}function vg(rA){rA.isTypeOnly&&(Rn("type"),fi()),rA.propertyName&&(ar(rA.propertyName),fi(),lr(128,rA.propertyName.end,Rn,rA),fi()),ar(rA.name)}function lg(rA){Rn("require"),oi("("),Lr(rA.expression),oi(")")}function ZE(rA){ar(rA.openingElement),Lo(rA,rA.children,262144),ar(rA.closingElement)}function Za(rA){oi("<"),qi(rA.tagName),gg(rA,rA.typeArguments),fi(),ar(rA.attributes),oi("/>")}function dB(rA){ar(rA.openingFragment),Lo(rA,rA.children,262144),ar(rA.closingFragment)}function oE(rA){if(oi("<"),A.isJsxOpeningElement(rA)){var ge=wB(rA.tagName,rA);qi(rA.tagName),gg(rA,rA.typeArguments),rA.attributes.properties&&rA.attributes.properties.length>0&&fi(),ar(rA.attributes),_c(rA.attributes,rA),hc(ge)}oi(">")}function pB(rA){VA.writeLiteral(rA.text)}function $E(rA){oi("")}function EB(rA){Lo(rA,rA.properties,262656)}function Dp(rA){ar(rA.name),Og("=",oi,rA.initializer,gt)}function yg(rA){oi("{..."),Lr(rA.expression),oi("}")}function vu(rA){var ge=!1;return A.forEachTrailingCommentRange(re?.text||"",rA+1,function(){return ge=!0}),ge}function Tr(rA){var ge=!1;return A.forEachLeadingCommentRange(re?.text||"",rA+1,function(){return ge=!0}),ge}function hd(rA){return vu(rA)||Tr(rA)}function Tn(rA){var ge;if(rA.expression||!Ce&&!A.nodeIsSynthesized(rA)&&hd(rA.pos)){var kr=re&&!A.nodeIsSynthesized(rA)&&A.getLineAndCharacterOfPosition(re,rA.pos).line!==A.getLineAndCharacterOfPosition(re,rA.end).line;kr&&VA.increaseIndent();var ft=lr(18,rA.pos,oi,rA);ar(rA.dotDotDotToken),Lr(rA.expression),lr(19,((ge=rA.expression)===null||ge===void 0?void 0:ge.end)||ft,oi,rA),kr&&VA.decreaseIndent()}}function qi(rA){rA.kind===79?Lr(rA):ar(rA)}function Ro(rA){lr(82,rA.pos,Rn,rA),fi(),Lr(rA.expression,qA.parenthesizeExpressionForDisallowedComma),fB(rA,rA.statements,rA.expression.end)}function gu(rA){var ge=lr(88,rA.pos,Rn,rA);fB(rA,rA.statements,ge)}function fB(rA,ge,kr){var ft=ge.length===1&&(!re||A.nodeIsSynthesized(rA)||A.nodeIsSynthesized(ge[0])||A.rangeStartPositionsAreOnSameLine(rA,ge[0],re)),ki=163969;ft?(yp(58,kr,oi,rA),fi(),ki&=-130):lr(58,kr,oi,rA),Lo(rA,ge,ki)}function sE(rA){fi(),_d(rA.token,Rn),fi(),Lo(rA,rA.types,528)}function cE(rA){var ge=lr(83,rA.pos,Rn,rA);fi(),rA.variableDeclaration&&(lr(20,ge,oi,rA),ar(rA.variableDeclaration),lr(21,rA.variableDeclaration.end,oi,rA),fi()),ar(rA.block)}function lh(rA){ar(rA.name),oi(":"),fi();var ge=rA.initializer;if(!(A.getEmitFlags(ge)&512)){var kr=A.getCommentRange(ge);kg(kr.pos)}Lr(ge,qA.parenthesizeExpressionForDisallowedComma)}function Hs(rA){ar(rA.name),rA.objectAssignmentInitializer&&(fi(),oi("="),fi(),Lr(rA.objectAssignmentInitializer,qA.parenthesizeExpressionForDisallowedComma))}function $h(rA){rA.expression&&(lr(25,rA.pos,oi,rA),Lr(rA.expression,qA.parenthesizeExpressionForDisallowedComma))}function rc(rA){ar(rA.name),vp(rA.initializer,rA.name.end,rA,qA.parenthesizeExpressionForDisallowedComma)}function $g(rA){if(_e("/**"),rA.comment){var ge=A.getTextOfJSDocComment(rA.comment);if(ge)for(var kr=ge.split(/\r\n?|\n/g),ft=0,ki=kr;ft'),Q&&Q.sections.push({pos:ki,end:VA.getTextPos(),kind:"no-default-lib"}),cs()}if(re&&re.moduleName&&(Rl('/// ')),cs()),re&&re.amdDependencies)for(var sn=0,_n=re.amdDependencies;sn<_n.length;sn++){var Bn=_n[sn];Bn.name?Rl('/// ')):Rl('/// ')),cs()}for(var wa=0,Wo=ge;wa')),Q&&Q.sections.push({pos:ki,end:VA.getTextPos(),kind:"reference",data:ya.fileName}),cs()}for(var Ul=0,Ha=kr;Ul")),Q&&Q.sections.push({pos:ki,end:VA.getTextPos(),kind:ya.resolutionMode?ya.resolutionMode===A.ModuleKind.ESNext?"type-import":"type-require":"type",data:ya.fileName}),cs()}for(var ru=0,Xc=ft;ru')),Q&&Q.sections.push({pos:ki,end:VA.getTextPos(),kind:"lib",data:ya.fileName}),cs()}}function Ig(rA){var ge=rA.statements;qd(rA),A.forEach(rA.statements,Js),Sr(rA);var kr=A.findIndex(ge,function(ft){return!A.isPrologueDirective(ft)});dh(rA),Lo(rA,ge,1,void 0,kr===-1?ge.length:kr),Mg(rA)}function _p(rA){var ge=A.getEmitFlags(rA);!(ge&512)&&rA.pos!==rA.expression.pos&&kg(rA.expression.pos),Lr(rA.expression),!(ge&1024)&&rA.end!==rA.expression.end&&Ku(rA.expression.end)}function QB(rA){Ic(rA,rA.elements,528,void 0)}function Af(rA,ge,kr,ft){for(var ki=!!ge,sn=0;sn=kr.length||_n===0;if(wa&&ft&32768){M?.(kr),aA?.(kr);return}ft&15360&&(oi(cA(ft)),wa&&kr&&kg(kr.pos,!0)),M?.(kr),wa?ft&1&&!(bA&&(!ge||re&&A.rangeIsOnSingleLine(ge,re)))?cs():ft&256&&!(ft&524288)&&fi():nf(rA,ge,kr,ft,ki,sn,_n,kr.hasTrailingComma,kr),aA?.(kr),ft&15360&&(wa&&kr&&Ku(kr.end),oi(eA(ft)))}}function nf(rA,ge,kr,ft,ki,sn,_n,Bn,wa){var Wo=(ft&262144)===0,ya=Wo,Ul=wd(ge,kr[sn],ft);Ul?(cs(Ul),ya=!1):ft&256&&fi(),ft&128&&Nl();for(var Ha=K(rA,ki),$n,ru,Xc=!1,Xd=0;Xd<_n;Xd++){var Pu=kr[sn+Xd];if(ft&32)cs(),DB(ft);else if($n){ft&60&&$n.end!==(ge?ge.end:-1)&&Ku($n.end),DB(ft),Te(ru);var hE=gE($n,Pu,ft);hE>0?(ft&131||(Nl(),Xc=!0),cs(hE),ya=!1):$n&&ft&512&&fi()}if(ru=te(Pu),ya){var uf=A.getCommentRange(Pu);kg(uf.pos)}else ya=Wo;TA=Pu.pos,Ha(Pu,rA,ki,Xd),Xc&&(du(),Xc=!1),$n=Pu}var Rp=$n?A.getEmitFlags($n):0,za=Ce||!!(Rp&1024),QE=Bn&&ft&64&&ft&16;QE&&($n&&!za?lr(27,$n.end,oi,$n):oi(",")),$n&&(ge?ge.end:-1)!==$n.end&&ft&60&&!za&&Ku(QE&&wa?.end?wa.end:$n.end),ft&128&&du(),Te(ru);var OB=Cp(ge,kr[sn+_n-1],ft,wa);OB?cs(OB):ft&2097408&&fi()}function Fu(rA){VA.writeLiteral(rA)}function Ud(rA){VA.writeStringLiteral(rA)}function af(rA){VA.write(rA)}function ds(rA,ge){VA.writeSymbol(rA,ge)}function oi(rA){VA.writePunctuation(rA)}function ss(){VA.writeTrailingSemicolon(";")}function Rn(rA){VA.writeKeyword(rA)}function Pc(rA){VA.writeOperator(rA)}function _B(rA){VA.writeParameter(rA)}function Rl(rA){VA.writeComment(rA)}function fi(){VA.writeSpace(" ")}function Ru(rA){VA.writeProperty(rA)}function Tl(rA){VA.nonEscapingWrite?VA.nonEscapingWrite(rA):VA.write(rA)}function cs(rA){rA===void 0&&(rA=1);for(var ge=0;ge0)}function Nl(){VA.increaseIndent()}function du(){VA.decreaseIndent()}function yp(rA,ge,kr,ft){return Le?_d(rA,kr,ge):Kd(ft,rA,kr,ge,_d)}function Ss(rA,ge){gA&&gA(rA),ge(A.tokenToString(rA.kind)),QA&&QA(rA)}function _d(rA,ge,kr){var ft=A.tokenToString(rA);return ge(ft),kr<0?kr:kr+ft.length}function Ld(rA,ge,kr){if(A.getEmitFlags(rA)&1)fi();else if(bA){var ft=pu(rA,ge,kr);ft?cs(ft):fi()}else cs()}function of(rA){for(var ge=rA.split(/\r\n?|\n/g),kr=A.guessIndentation(ge),ft=0,ki=ge;ft0&&ft.charCodeAt(0)===35&&(ft=ft.slice(1));var sn=A.formatGeneratedName(kr,ft,"",ki),_n=Pf(sn);if(rA&&!(_n&rA)){var Bn=rA===268435456?"_i":"_n",wa=A.formatGeneratedName(kr,ft,Bn,ki);if(Pn(wa))return _n|=rA,ge&&vB(wa),pE(sn,_n),wa}for(;;){var Wo=_n&268435455;if(_n++,Wo!==8&&Wo!==13){var Bn=Wo<26?"_"+String.fromCharCode(97+Wo):"_"+(Wo-26),wa=A.formatGeneratedName(kr,ft,Bn,ki);if(Pn(wa))return ge&&vB(wa),pE(sn,_n),wa}}}function vd(rA,ge,kr,ft,ki,sn,_n){if(ge===void 0&&(ge=Pn),rA.length>0&&rA.charCodeAt(0)===35&&(rA=rA.slice(1)),sn.length>0&&sn.charCodeAt(0)===35&&(sn=sn.slice(1)),kr){var Bn=A.formatGeneratedName(ki,sn,rA,_n);if(ge(Bn))return ft?vB(Bn):jA.add(Bn),Bn}rA.charCodeAt(rA.length-1)!==95&&(rA+="_");for(var wa=1;;){var Bn=A.formatGeneratedName(ki,sn,rA+wa,_n);if(ge(Bn))return ft?vB(Bn):jA.add(Bn),Bn;wa++}}function Eu(rA){return vd(rA,hi,!0,!1,!1,"","")}function dg(rA){var ge=Jd(rA.name);return Pl(ge,rA)?ge:vd(ge,Pn,!1,!1,!1,"","")}function Vu(rA){var ge=A.getExternalModuleName(rA),kr=A.isStringLiteral(ge)?A.makeIdentifierFromModuleName(ge.text):"module";return vd(kr,Pn,!1,!1,!1,"","")}function td(){return vd("default",Pn,!1,!1,!1,"","")}function Mp(){return vd("class",Pn,!1,!1,!1,"","")}function Au(rA,ge,kr,ft){return A.isIdentifier(rA.name)?dE(rA.name,ge):Op(0,!1,ge,kr,ft)}function zu(rA,ge,kr,ft,ki){switch(rA.kind){case 79:case 80:return vd(Jd(rA),Pn,!!(kr&16),!!(kr&8),ge,ft,ki);case 264:case 263:return A.Debug.assert(!ft&&!ki&&!ge),dg(rA);case 269:case 275:return A.Debug.assert(!ft&&!ki&&!ge),Vu(rA);case 259:case 260:case 274:return A.Debug.assert(!ft&&!ki&&!ge),td();case 228:return A.Debug.assert(!ft&&!ki&&!ge),Mp();case 171:case 174:case 175:return Au(rA,ge,ft,ki);case 164:return Op(0,!0,ge,ft,ki);default:return Op(0,!1,ge,ft,ki)}}function so(rA){var ge=A.formatGeneratedNamePart(rA.autoGeneratePrefix,bp),kr=A.formatGeneratedNamePart(rA.autoGenerateSuffix);switch(rA.autoGenerateFlags&7){case 1:return Op(0,!!(rA.autoGenerateFlags&8),A.isPrivateIdentifier(rA),ge,kr);case 2:return A.Debug.assertNode(rA,A.isIdentifier),Op(268435456,!!(rA.autoGenerateFlags&8),!1,ge,kr);case 3:return vd(A.idText(rA),rA.autoGenerateFlags&32?hi:Pn,!!(rA.autoGenerateFlags&16),!!(rA.autoGenerateFlags&8),A.isPrivateIdentifier(rA),ge,kr)}return A.Debug.fail("Unsupported GeneratedIdentifierKind: ".concat(A.Debug.formatEnum(rA.autoGenerateFlags&7,A.GeneratedIdentifierFlags,!0),"."))}function Gl(rA,ge){var kr=Yt(2,rA,ge),ft=PA,ki=we,sn=LA;kp(ge),kr(rA,ge),eu(ge,ft,ki,sn)}function kp(rA){var ge=A.getEmitFlags(rA),kr=A.getCommentRange(rA);xp(rA,ge,kr.pos,kr.end),ge&2048&&(Ce=!0)}function eu(rA,ge,kr,ft){var ki=A.getEmitFlags(rA),sn=A.getCommentRange(rA);ki&2048&&(Ce=!1),Hp(rA,ki,sn.pos,sn.end,ge,kr,ft);var _n=A.getTypeNode(rA);_n&&Hp(rA,ki,_n.pos,_n.end,ge,kr,ft)}function xp(rA,ge,kr,ft){hr(),YA=!1;var ki=kr<0||(ge&512)!==0||rA.kind===11,sn=ft<0||(ge&1024)!==0||rA.kind===11;(kr>0||ft>0)&&kr!==ft&&(ki||Tu(kr,rA.kind!==352),(!ki||kr>=0&&ge&512)&&(PA=kr),(!sn||ft>=0&&ge&1024)&&(we=ft,rA.kind===258&&(LA=ft))),A.forEach(A.getSyntheticLeadingComments(rA),yd),Fr()}function Hp(rA,ge,kr,ft,ki,sn,_n){hr();var Bn=ft<0||(ge&1024)!==0||rA.kind===11;A.forEach(A.getSyntheticTrailingComments(rA),yB),(kr>0||ft>0)&&kr!==ft&&(PA=ki,we=sn,LA=_n,!Bn&&rA.kind!==352&&fh(ft)),Fr()}function yd(rA){(rA.hasLeadingNewline||rA.kind===2)&&VA.writeLine(),Yl(rA),rA.hasTrailingNewLine||rA.kind===2?VA.writeLine():VA.writeSpace(" ")}function yB(rA){VA.isAtStartOfLine()||VA.writeSpace(" "),Yl(rA),rA.hasTrailingNewLine&&VA.writeLine()}function Yl(rA){var ge=Vo(rA),kr=rA.kind===3?A.computeLineStarts(ge):void 0;A.writeCommentRange(ge,kr,VA,0,ge.length,FA)}function Vo(rA){return rA.kind===3?"/*".concat(rA.text,"*/"):"//".concat(rA.text)}function Eh(rA,ge,kr){hr();var ft=ge.pos,ki=ge.end,sn=A.getEmitFlags(rA),_n=ft<0||(sn&512)!==0,Bn=Ce||ki<0||(sn&1024)!==0;_n||ll(ge),Fr(),sn&2048&&!Ce?(Ce=!0,kr(rA),Ce=!1):kr(rA),hr(),Bn||(Tu(ge.end,!0),YA&&!VA.isAtStartOfLine()&&VA.writeLine()),Fr()}function pg(rA,ge){return rA=A.getOriginalNode(rA),rA.parent&&rA.parent===A.getOriginalNode(ge).parent}function Cu(rA,ge){if(ge.pos-1&&ft.indexOf(ge)===ki+1}function Tu(rA,ge){YA=!1,ge?rA===0&&re?.isDeclarationFile?Gc(rA,CB):Gc(rA,Vd):rA===0&&Gc(rA,EE)}function EE(rA,ge,kr,ft,ki){Cd(rA,ge)&&Vd(rA,ge,kr,ft,ki)}function CB(rA,ge,kr,ft,ki){Cd(rA,ge)||Vd(rA,ge,kr,ft,ki)}function fE(rA,ge){return J.onlyPrintJsDocStyle?A.isJSDocLikeText(rA,ge)||A.isPinnedComment(rA,ge):!0}function Vd(rA,ge,kr,ft,ki){!re||!fE(re.text,rA)||(YA||(A.emitNewLineBeforeLeadingCommentOfPosition(Mr(),VA,ki,rA),YA=!0),ul(rA),A.writeCommentRange(re.text,Mr(),VA,rA,ge,FA),ul(ge),ft?VA.writeLine():kr===3&&VA.writeSpace(" "))}function Ku(rA){Ce||rA===-1||Tu(rA,!0)}function fh(rA){IB(rA,zd)}function zd(rA,ge,kr,ft){!re||!fE(re.text,rA)||(VA.isAtStartOfLine()||VA.writeSpace(" "),ul(rA),A.writeCommentRange(re.text,Mr(),VA,rA,ge,FA),ul(ge),ft&&VA.writeLine())}function kg(rA,ge,kr){Ce||(hr(),IB(rA,ge?zd:kr?BE:Nu),Fr())}function BE(rA,ge,kr){re&&(ul(rA),A.writeCommentRange(re.text,Mr(),VA,rA,ge,FA),ul(ge),kr===2&&VA.writeLine())}function Nu(rA,ge,kr,ft){re&&(ul(rA),A.writeCommentRange(re.text,Mr(),VA,rA,ge,FA),ul(ge),ft?VA.writeLine():VA.writeSpace(" "))}function Gc(rA,ge){re&&(PA===-1||rA!==PA)&&(WQ(rA)?Nn(ge):A.forEachLeadingCommentRange(re.text,rA,ge,rA))}function IB(rA,ge){re&&(we===-1||rA!==we&&rA!==LA)&&A.forEachTrailingCommentRange(re.text,rA,ge)}function WQ(rA){return We!==void 0&&A.last(We).nodePos===rA}function Nn(rA){if(re){var ge=A.last(We).detachedCommentEndPos;We.length-1?We.pop():We=void 0,A.forEachLeadingCommentRange(re.text,ge,rA,ge)}}function ll(rA){var ge=re&&A.emitDetachedComments(re.text,Mr(),VA,si,rA,FA,Ce);ge&&(We?We.push(ge):We=[ge])}function si(rA,ge,kr,ft,ki,sn){!re||!fE(re.text,ft)||(ul(ft),A.writeCommentRange(rA,ge,kr,ft,ki,sn),ul(ki))}function Cd(rA,ge){return!!re&&A.isRecognizedTripleSlashComment(re.text,rA,ge)}function bB(rA){return rA.parsedSourceMap===void 0&&rA.sourceMapText!==void 0&&(rA.parsedSourceMap=A.tryParseRawSourceMap(rA.sourceMapText)||!1),rA.parsedSourceMap||void 0}function xg(rA,ge){var kr=Yt(3,rA,ge);fu(ge),kr(rA,ge),Sp(ge)}function fu(rA){var ge=A.getEmitFlags(rA),kr=A.getSourceMapRange(rA);if(A.isUnparsedNode(rA)){A.Debug.assertIsDefined(rA.parent,"UnparsedNodes must have parent pointers");var ft=bB(rA.parent);ft&&ir&&ir.appendSourceMap(VA.getLine(),VA.getColumn(),ft,rA.parent.sourceMapPath,rA.parent.getLineAndCharacterOfPosition(rA.pos),rA.parent.getLineAndCharacterOfPosition(rA.end))}else{var ki=kr.source||Ye;rA.kind!==352&&!(ge&16)&&kr.pos>=0&&cf(kr.source||Ye,Bh(ki,kr.pos)),ge&64&&(Le=!0)}}function Sp(rA){var ge=A.getEmitFlags(rA),kr=A.getSourceMapRange(rA);A.isUnparsedNode(rA)||(ge&64&&(Le=!1),rA.kind!==352&&!(ge&32)&&kr.end>=0&&cf(kr.source||Ye,kr.end))}function Bh(rA,ge){return rA.skipTrivia?rA.skipTrivia(ge):A.skipTrivia(rA.text,ge)}function ul(rA){if(!(Le||A.positionIsSynthesized(rA)||Fp(Ye))){var ge=A.getLineAndCharacterOfPosition(Ye,rA),kr=ge.line,ft=ge.character;ir.addMapping(VA.getLine(),VA.getColumn(),mr,kr,ft,void 0)}}function cf(rA,ge){if(rA!==Ye){var kr=Ye,ft=mr;lf(rA),ul(ge),Gf(kr,ft)}else ul(ge)}function Kd(rA,ge,kr,ft,ki){if(Le||rA&&A.isInJsonFile(rA))return ki(ge,kr,ft);var sn=rA&&rA.emitNode,_n=sn&&sn.flags||0,Bn=sn&&sn.tokenSourceMapRanges&&sn.tokenSourceMapRanges[ge],wa=Bn&&Bn.source||Ye;return ft=Bh(wa,Bn?Bn.pos:ft),!(_n&128)&&ft>=0&&cf(wa,ft),ft=ki(ge,kr,ft),Bn&&(ft=Bn.end),!(_n&256)&&ft>=0&&cf(wa,ft),ft}function lf(rA){if(!Le){if(Ye=rA,rA===$e){mr=xr;return}Fp(rA)||(mr=ir.addSource(rA.fileName),J.inlineSources&&ir.setSourceContent(mr,rA.text),$e=rA,xr=mr)}}function Gf(rA,ge){Ye=rA,mr=ge}function Fp(rA){return A.fileExtensionIs(rA.fileName,".json")}}A.createPrinter=pA;function oA(){var J=[];return J[1024]=["{","}"],J[2048]=["(",")"],J[4096]=["<",">"],J[8192]=["[","]"],J}function cA(J){return r[J&15360][0]}function eA(J){return r[J&15360][1]}var Y;(function(J){J[J.Auto=0]="Auto",J[J.CountMask=268435455]="CountMask",J[J._i=268435456]="_i"})(Y||(Y={}));function q(J,sA,uA,BA){sA(J)}function X(J,sA,uA,BA){sA(J,uA.select(BA))}function Z(J,sA,uA,BA){sA(J,uA)}function K(J,sA){return J.length===1?q:typeof sA=="object"?X:Z}})(Oe||(Oe={}));var Oe;(function(A){function r(H,T,v){if(!H.getDirectories||!H.readDirectory)return;var F=new A.Map,y=A.createGetCanonicalFileName(v);return{useCaseSensitiveFileNames:v,fileExists:eA,readFile:function(CA,z){return H.readFile(CA,z)},directoryExists:H.directoryExists&&Y,getDirectories:X,readDirectory:Z,createDirectory:H.createDirectory&&q,writeFile:H.writeFile&&cA,addOrDeleteFileOrDirectory:J,addOrDeleteFile:sA,clearCache:BA,realpath:H.realpath&&K};function S(CA){return A.toPath(CA,T,y)}function U(CA){return F.get(A.ensureTrailingDirectorySeparator(CA))}function V(CA){var z=U(A.getDirectoryPath(CA));return z&&(z.sortedAndCanonicalizedFiles||(z.sortedAndCanonicalizedFiles=z.files.map(y).sort(),z.sortedAndCanonicalizedDirectories=z.directories.map(y).sort()),z)}function wA(CA){return A.getBaseFileName(A.normalizePath(CA))}function IA(CA,z){var AA;if(!H.realpath||A.ensureTrailingDirectorySeparator(S(H.realpath(CA)))===z){var iA={files:A.map(H.readDirectory(CA,void 0,void 0,["*.*"]),wA)||[],directories:H.getDirectories(CA)||[]};return F.set(A.ensureTrailingDirectorySeparator(z),iA),iA}if(!((AA=H.directoryExists)===null||AA===void 0)&&AA.call(H,CA))return F.set(z,!1),!1}function pA(CA,z){z=A.ensureTrailingDirectorySeparator(z);var AA=U(z);if(AA)return AA;try{return IA(CA,z)}catch{A.Debug.assert(!F.has(A.ensureTrailingDirectorySeparator(z)));return}}function oA(CA,z){var AA=A.binarySearch(CA,z,A.identity,A.compareStringsCaseSensitive);return AA>=0}function cA(CA,z,AA){var iA=S(CA),_A=V(iA);return _A&&uA(_A,wA(CA),!0),H.writeFile(CA,z,AA)}function eA(CA){var z=S(CA),AA=V(z);return AA&&oA(AA.sortedAndCanonicalizedFiles,y(wA(CA)))||H.fileExists(CA)}function Y(CA){var z=S(CA);return F.has(A.ensureTrailingDirectorySeparator(z))||H.directoryExists(CA)}function q(CA){var z=S(CA),AA=V(z);if(AA){var iA=wA(CA),_A=y(iA),fA=AA.sortedAndCanonicalizedDirectories;A.insertSorted(fA,_A,A.compareStringsCaseSensitive)&&AA.directories.push(iA)}H.createDirectory(CA)}function X(CA){var z=S(CA),AA=pA(CA,z);return AA?AA.directories.slice():H.getDirectories(CA)}function Z(CA,z,AA,iA,_A){var fA=S(CA),M=pA(CA,fA),aA;if(M!==void 0)return A.matchFiles(CA,z,AA,iA,v,T,_A,gA,K);return H.readDirectory(CA,z,AA,iA,_A);function gA(mA){var FA=S(mA);if(FA===fA)return M||QA(mA,FA);var SA=pA(mA,FA);return SA!==void 0?SA||QA(mA,FA):A.emptyFileSystemEntries}function QA(mA,FA){if(aA&&FA===fA)return aA;var SA={files:A.map(H.readDirectory(mA,void 0,void 0,["*.*"]),wA)||A.emptyArray,directories:H.getDirectories(mA)||A.emptyArray};return FA===fA&&(aA=SA),SA}}function K(CA){return H.realpath?H.realpath(CA):CA}function J(CA,z){var AA=U(z);if(AA!==void 0){BA();return}var iA=V(z);if(iA){if(!H.directoryExists){BA();return}var _A=wA(CA),fA={fileExists:H.fileExists(z),directoryExists:H.directoryExists(z)};return fA.directoryExists||oA(iA.sortedAndCanonicalizedDirectories,y(_A))?BA():uA(iA,_A,fA.fileExists),fA}}function sA(CA,z,AA){if(AA!==A.FileWatcherEventKind.Changed){var iA=V(z);iA&&uA(iA,wA(CA),AA===A.FileWatcherEventKind.Created)}}function uA(CA,z,AA){var iA=CA.sortedAndCanonicalizedFiles,_A=y(z);if(AA)A.insertSorted(iA,_A,A.compareStringsCaseSensitive)&&CA.files.push(z);else{var fA=A.binarySearch(iA,_A,A.identity,A.compareStringsCaseSensitive);if(fA>=0){iA.splice(fA,1);var M=CA.files.findIndex(function(aA){return y(aA)===_A});CA.files.splice(M,1)}}}function BA(){F.clear()}}A.createCachedDirectoryStructureHost=r;var t;(function(H){H[H.None=0]="None",H[H.Partial=1]="Partial",H[H.Full=2]="Full"})(t=A.ConfigFileProgramReloadLevel||(A.ConfigFileProgramReloadLevel={}));function i(H,T,v,F,y){var S,U=A.arrayToMap(((S=T?.configFile)===null||S===void 0?void 0:S.extendedSourceFiles)||A.emptyArray,y);v.forEach(function(V,wA){U.has(wA)||(V.projects.delete(H),V.close())}),U.forEach(function(V,wA){var IA=v.get(wA);IA?IA.projects.add(H):v.set(wA,{projects:new A.Set([H]),watcher:F(V,wA),close:function(){var pA=v.get(wA);!pA||pA.projects.size!==0||(pA.watcher.close(),v.delete(wA))}})})}A.updateSharedExtendedConfigFileWatcher=i;function o(H,T){T.forEach(function(v){v.projects.delete(H)&&v.close()})}A.clearSharedExtendedConfigFileWatcher=o;function s(H,T,v){H.delete(T)&&H.forEach(function(F,y){var S,U=F.extendedResult;!((S=U.extendedSourceFiles)===null||S===void 0)&&S.some(function(V){return v(V)===T})&&s(H,y,v)})}A.cleanExtendedConfigCache=s;function g(H,T,v){var F=new A.Map(H);A.mutateMap(T,F,{createNewValue:v,onDeleteValue:A.closeFileWatcher})}A.updatePackageJsonWatch=g;function E(H,T,v){var F=H.getMissingFilePaths(),y=A.arrayToMap(F,A.identity,A.returnTrue);A.mutateMap(T,y,{createNewValue:v,onDeleteValue:A.closeFileWatcher})}A.updateMissingFilePathsWatch=E;function p(H,T,v){A.mutateMap(H,T,{createNewValue:F,onDeleteValue:P,onExistingValue:y});function F(S,U){return{watcher:v(S,U),flags:U}}function y(S,U,V){S.flags!==U&&(S.watcher.close(),H.set(V,F(V,U)))}}A.updateWatchingWildcardDirectories=p;function B(H){var T=H.watchedDirPath,v=H.fileOrDirectory,F=H.fileOrDirectoryPath,y=H.configFileName,S=H.options,U=H.program,V=H.extraFileExtensions,wA=H.currentDirectory,IA=H.useCaseSensitiveFileNames,pA=H.writeLog,oA=H.toPath,cA=A.removeIgnoredPath(F);if(!cA)return pA("Project: ".concat(y," Detected ignored path: ").concat(v)),!0;if(F=cA,F===T)return!1;if(A.hasExtension(F)&&!A.isSupportedSourceFileName(v,S,V))return pA("Project: ".concat(y," Detected file add/remove of non supported extension: ").concat(v)),!0;if(A.isExcludedFile(v,S.configFile.configFileSpecs,A.getNormalizedAbsolutePath(A.getDirectoryPath(y),wA),IA,wA))return pA("Project: ".concat(y," Detected excluded file: ").concat(v)),!0;if(!U||A.outFile(S)||S.outDir)return!1;if(A.isDeclarationFileName(F)){if(S.declarationDir)return!1}else if(!A.fileExtensionIsOneOf(F,A.supportedJSExtensionsFlat))return!1;var eA=A.removeFileExtension(F),Y=A.isArray(U)?void 0:m(U)?U.getProgramOrUndefined():U,q=!Y&&!A.isArray(U)?U:void 0;if(X(eA+".ts")||X(eA+".tsx"))return pA("Project: ".concat(y," Detected output file: ").concat(v)),!0;return!1;function X(Z){return Y?!!Y.getSourceFileByPath(Z):q?q.getState().fileInfos.has(Z):!!A.find(U,function(K){return oA(K)===Z})}}A.isIgnoredFileFromWildCardWatching=B;function m(H){return!!H.getState}function _(H,T){return H?H.isEmittedFile(T):!1}A.isEmittedFileOfProgram=_;var x;(function(H){H[H.None=0]="None",H[H.TriggerOnly=1]="TriggerOnly",H[H.Verbose=2]="Verbose"})(x=A.WatchLogLevel||(A.WatchLogLevel={}));function O(H,T,v,F){A.setSysLog(T===x.Verbose?v:A.noop);var y={watchFile:function(q,X,Z,K){return H.watchFile(q,X,Z,K)},watchDirectory:function(q,X,Z,K){return H.watchDirectory(q,X,(Z&1)!==0,K)}},S=T!==x.None?{watchFile:eA("watchFile"),watchDirectory:eA("watchDirectory")}:void 0,U=T===x.Verbose?{watchFile:oA,watchDirectory:cA}:S||y,V=T===x.Verbose?pA:A.returnNoopFileWatcher;return{watchFile:wA("watchFile"),watchDirectory:wA("watchDirectory")};function wA(q){return function(X,Z,K,J,sA,uA){var BA;return A.matchesExclude(X,q==="watchFile"?J?.excludeFiles:J?.excludeDirectories,IA(),((BA=H.getCurrentDirectory)===null||BA===void 0?void 0:BA.call(H))||"")?V(X,K,J,sA,uA):U[q].call(void 0,X,Z,K,J,sA,uA)}}function IA(){return typeof H.useCaseSensitiveFileNames=="boolean"?H.useCaseSensitiveFileNames:H.useCaseSensitiveFileNames()}function pA(q,X,Z,K,J){return v("ExcludeWatcher:: Added:: ".concat(Y(q,X,Z,K,J,F))),{close:function(){return v("ExcludeWatcher:: Close:: ".concat(Y(q,X,Z,K,J,F)))}}}function oA(q,X,Z,K,J,sA){v("FileWatcher:: Added:: ".concat(Y(q,Z,K,J,sA,F)));var uA=S.watchFile(q,X,Z,K,J,sA);return{close:function(){v("FileWatcher:: Close:: ".concat(Y(q,Z,K,J,sA,F))),uA.close()}}}function cA(q,X,Z,K,J,sA){var uA="DirectoryWatcher:: Added:: ".concat(Y(q,Z,K,J,sA,F));v(uA);var BA=A.timestamp(),CA=S.watchDirectory(q,X,Z,K,J,sA),z=A.timestamp()-BA;return v("Elapsed:: ".concat(z,"ms ").concat(uA)),{close:function(){var AA="DirectoryWatcher:: Close:: ".concat(Y(q,Z,K,J,sA,F));v(AA);var iA=A.timestamp();CA.close();var _A=A.timestamp()-iA;v("Elapsed:: ".concat(_A,"ms ").concat(AA))}}}function eA(q){return function(X,Z,K,J,sA,uA){return y[q].call(void 0,X,function(){for(var BA=[],CA=0;CA=4,bA=(tA+1+"").length;kA&&(bA=Math.max(k.length,bA));for(var TA="",VA=MA;VA<=tA;VA++){TA+=jA.getNewLine(),kA&&MA+1=A.length(Zr?.imports)+A.length(Zr?.moduleAugmentations))return!1;var xA=A.getResolvedModule(Zr,Ys,Zr&&IA(Zr,rs)),ve=xA&&bA.getSourceFile(xA.resolvedFileName);if(xA&&ve)return!1;var Ue=Cr.get(Ys);return Ue?(A.isTraceEnabled(N,we)&&A.trace(we,A.Diagnostics.Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified,Ys,Ue),!0):!1}}function Ii(){return!q(bA.getProjectReferences(),bA.getResolvedProjectReferences(),function(cr,lr,Zr){var xt=(lr?lr.commandLine.projectReferences:kA)[Zr],Wt=se(xt);return cr?!Wt||Wt.sourceFile!==cr.sourceFile||!A.arrayIsEqualTo(cr.commandLine.fileNames,Wt.commandLine.fileNames):Wt!==void 0},function(cr,lr){var Zr=lr?je(lr.sourceFile.path).commandLine.projectReferences:kA;return!A.arrayIsEqualTo(cr,Zr,A.projectReferenceIsEqualTo)})}function Zi(){var cr,lr;if(!bA)return 0;var Zr=bA.getCompilerOptions();if(A.changesAffectModuleResolution(Zr,N))return 0;var xt=bA.getRootFileNames();if(!A.arrayIsEqualTo(xt,tA)||!Ii())return 0;kA&&(UA=kA.map(se));var Wt=[],Kt=[];if(ar=2,bA.getMissingFilePaths().some(function(jo){return we.fileExists(jo)}))return 0;var Gi=bA.getSourceFiles(),di;(function(jo){jo[jo.Exists=0]="Exists",jo[jo.Modified=1]="Modified"})(di||(di={}));for(var Yi=new A.Map,ha=0,Jn=Gi;ha=0;){if(lr.markUsed(Kt))return Kt;var Gi=Zr.text.slice(Wt[Kt],Wt[Kt+1]).trim();if(Gi!==""&&!/^(\s*)\/\/(.*)$/.test(Gi))return-1;Kt--}return-1}function _r(cr){return Va(function(){var lr=[];return Zr(cr,cr),A.forEachChildRecursively(cr,Zr,xt),lr;function Zr(di,Yi){switch(Yi.kind){case 166:case 169:case 171:if(Yi.questionToken===di)return lr.push(Gi(di,A.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 170:case 173:case 174:case 175:case 215:case 259:case 216:case 257:if(Yi.type===di)return lr.push(Gi(di,A.Diagnostics.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(di.kind){case 270:if(di.isTypeOnly)return lr.push(Gi(Yi,A.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 275:if(di.isTypeOnly)return lr.push(Gi(di,A.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 273:case 278:if(di.isTypeOnly)return lr.push(Gi(di,A.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,A.isImportSpecifier(di)?"import...type":"export...type")),"skip";break;case 268:return lr.push(Gi(di,A.Diagnostics.import_can_only_be_used_in_TypeScript_files)),"skip";case 274:if(di.isExportEquals)return lr.push(Gi(di,A.Diagnostics.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 294:var ha=di;if(ha.token===117)return lr.push(Gi(di,A.Diagnostics.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 261:var Jn=A.tokenToString(118);return A.Debug.assertIsDefined(Jn),lr.push(Gi(di,A.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,Jn)),"skip";case 264:var Cn=di.flags&16?A.tokenToString(143):A.tokenToString(142);return A.Debug.assertIsDefined(Cn),lr.push(Gi(di,A.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,Cn)),"skip";case 262:return lr.push(Gi(di,A.Diagnostics.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 263:var ja=A.Debug.checkDefined(A.tokenToString(92));return lr.push(Gi(di,A.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,ja)),"skip";case 232:return lr.push(Gi(di,A.Diagnostics.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 231:return lr.push(Gi(di.type,A.Diagnostics.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 235:return lr.push(Gi(di.type,A.Diagnostics.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 213:A.Debug.fail()}}function xt(di,Yi){switch(A.canHaveModifiers(Yi)&&Yi.modifiers===di&&A.some(di,A.isDecorator)&&!N.experimentalDecorators&&lr.push(Gi(Yi,A.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning)),Yi.kind){case 260:case 228:case 171:case 173:case 174:case 175:case 215:case 259:case 216:if(di===Yi.typeParameters)return lr.push(Kt(di,A.Diagnostics.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 240:if(di===Yi.modifiers)return Wt(Yi.modifiers,Yi.kind===240),"skip";break;case 169:if(di===Yi.modifiers){for(var ha=0,Jn=di;ha=1&&A.isStringLiteralLike(lo.arguments[0])?(A.setParentRecursive(lo,!1),xt=A.append(xt,lo.arguments[0])):A.isLiteralImportTypeNode(lo)&&(A.setParentRecursive(lo,!1),xt=A.append(xt,lo.argument.literal))}}function ja(qn,Qo){for(var lo=qn,Ms=function(Ys){if(Ys.pos<=Qo&&(Qo0),Object.defineProperties(Yi,{id:{get:function(){return this.redirectInfo.redirectTarget.id},set:function(ha){this.redirectInfo.redirectTarget.id=ha}},symbol:{get:function(){return this.redirectInfo.redirectTarget.symbol},set:function(ha){this.redirectInfo.redirectTarget.symbol=ha}}}),Yi}function ys(cr,lr,Zr,xt,Wt){A.tracing===null||A.tracing===void 0||A.tracing.push("program","findSourceFile",{fileName:cr,isDefaultLib:lr||void 0,fileIncludeKind:A.FileIncludeKind[xt.kind]});var Kt=Rc(cr,lr,Zr,xt,Wt);return A.tracing===null||A.tracing===void 0||A.tracing.pop(),Kt}function zc(cr,lr,Zr,xt){var Wt=BA(A.getNormalizedAbsolutePath(cr,Ke),lr?.getPackageJsonInfoCache(),Zr,xt),Kt=A.getEmitScriptTarget(xt),Gi=A.getSetExternalModuleIndicator(xt);return typeof Wt=="object"?pi(pi({},Wt),{languageVersion:Kt,setExternalModuleIndicator:Gi}):{languageVersion:Kt,impliedNodeFormat:Wt,setExternalModuleIndicator:Gi}}function Rc(cr,lr,Zr,xt,Wt){var Kt,Gi,di=Bt(cr);if(pe){var Yi=xs(di);if(!Yi&&we.realpath&&N.preserveSymlinks&&A.isDeclarationFileName(cr)&&A.stringContains(cr,A.nodeModulesPathPart)){var ha=Bt(we.realpath(cr));ha!==di&&(Yi=xs(ha))}if(Yi){var Jn=A.isString(Yi)?ys(Yi,lr,Zr,xt,Wt):void 0;return Jn&&Bc(Jn,di,void 0),Jn}}var Cn=cr;if(fr.has(di)){var ja=fr.get(di);if(_l(ja||void 0,xt),ja&&N.forceConsistentCasingInFileNames){var qn=ja.fileName,Qo=Bt(qn)!==Bt(cr);Qo&&(cr=sl(cr)||cr);var lo=A.getNormalizedAbsolutePathWithoutRoot(qn,Ke),Ms=A.getNormalizedAbsolutePathWithoutRoot(cr,Ke);lo!==Ms&&Vc(cr,ja,xt)}return ja&&PA.get(ja.path)&&$e===0?(PA.set(ja.path,!1),N.noResolve||(br(ja,lr),mt(ja)),N.noLib||ji(ja),xr.set(ja.path,!1),vn(ja)):ja&&xr.get(ja.path)&&$e0),ve.fileName=cr,ve.path=di,ve.resolvedPath=Bt(cr),ve.originalFileName=Cn,ve.packageJsonLocations=!((Gi=xA.packageJsonLocations)===null||Gi===void 0)&&Gi.length?xA.packageJsonLocations:void 0,ve.packageJsonScope=xA.packageJsonScope,_l(ve,xt),we.useCaseSensitiveFileNames()){var Ji=A.toFileNameLowerCase(di),Dn=Te.get(Ji);Dn?Vc(cr,Dn,xt):Te.set(Ji,ve)}ae=ae||ve.hasNoDefaultLib&&!Zr,N.noResolve||(br(ve,lr),mt(ve)),N.noLib||ji(ve),vn(ve),lr?TA.push(ve):VA.push(ve)}return ve}function _l(cr,lr){cr&&be.add(cr.path,lr)}function Bc(cr,lr,Zr){Zr?(fr.set(Zr,cr),fr.set(lr,cr||!1)):fr.set(lr,cr)}function sl(cr){var lr=ms(cr);return lr&&kl(lr,cr)}function ms(cr){if(!(!UA||!UA.length||A.isDeclarationFileName(cr)||A.fileExtensionIs(cr,".json")))return bs(cr)}function kl(cr,lr){var Zr=A.outFile(cr.commandLine.options);return Zr?A.changeExtension(Zr,".d.ts"):A.getOutputDeclarationFileName(lr,cr.commandLine,!we.useCaseSensitiveFileNames())}function bs(cr){de===void 0&&(de=new A.Map,Tc(function(Zr){Bt(N.configFilePath)!==Zr.sourceFile.path&&Zr.commandLine.fileNames.forEach(function(xt){return de.set(Bt(xt),Zr.sourceFile.path)})}));var lr=de.get(Bt(cr));return lr&&je(lr)}function Tc(cr){return A.forEachResolvedProjectReference(UA,cr)}function xs(cr){if(A.isDeclarationFileName(cr))return HA===void 0&&(HA=new A.Map,Tc(function(lr){var Zr=A.outFile(lr.commandLine.options);if(Zr){var xt=A.changeExtension(Zr,".d.ts");HA.set(Bt(xt),!0)}else{var Wt=A.memoize(function(){return A.getCommonSourceDirectoryOfConfig(lr.commandLine,!we.useCaseSensitiveFileNames())});A.forEach(lr.commandLine.fileNames,function(Kt){if(!A.isDeclarationFileName(Kt)&&!A.fileExtensionIs(Kt,".json")){var Gi=A.getOutputDeclarationFileName(Kt,lr.commandLine,!we.useCaseSensitiveFileNames(),Wt);HA.set(Bt(Gi),Kt)}})}})),HA.get(cr)}function yA(cr){return pe&&!!bs(cr)}function je(cr){if(Ee)return Ee.get(cr)||void 0}function br(cr,lr){A.forEach(cr.referencedFiles,function(Zr,xt){Qs(t(Zr.fileName,cr.fileName),lr,!1,void 0,{kind:A.FileIncludeKind.ReferenceFile,file:cr.path,index:xt})})}function mt(cr){var lr=cr.typeReferenceDirectives;if(lr)for(var Zr=ot(lr,cr),xt=0;xtmr,ja=Jn&&!QA(Wt,Gi)&&!Wt.noResolve&&Kt1})&&ho(A.Diagnostics.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}if(N.useDefineForClassFields&&Jn===0&&ho(A.Diagnostics.Option_0_cannot_be_specified_when_option_target_is_ES3,"useDefineForClassFields"),N.checkJs&&!A.getAllowJSCompilerOption(N)&&Ce.add(A.createCompilerDiagnostic(A.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs")),N.emitDeclarationOnly&&(A.getEmitDeclarations(N)||ho(A.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite"),N.noEmit&&ho(A.Diagnostics.Option_0_cannot_be_specified_with_option_1,"emitDeclarationOnly","noEmit")),N.emitDecoratorMetadata&&!N.experimentalDecorators&&ho(A.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators"),N.jsxFactory?(N.reactNamespace&&ho(A.Diagnostics.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),(N.jsx===4||N.jsx===5)&&ho(A.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",A.inverseJsxOptionMap.get(""+N.jsx)),A.parseIsolatedEntityName(N.jsxFactory,Jn)||ec("jsxFactory",A.Diagnostics.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,N.jsxFactory)):N.reactNamespace&&!A.isIdentifierText(N.reactNamespace,Jn)&&ec("reactNamespace",A.Diagnostics.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,N.reactNamespace),N.jsxFragmentFactory&&(N.jsxFactory||ho(A.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),(N.jsx===4||N.jsx===5)&&ho(A.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",A.inverseJsxOptionMap.get(""+N.jsx)),A.parseIsolatedEntityName(N.jsxFragmentFactory,Jn)||ec("jsxFragmentFactory",A.Diagnostics.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,N.jsxFragmentFactory)),N.reactNamespace&&(N.jsx===4||N.jsx===5)&&ho(A.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",A.inverseJsxOptionMap.get(""+N.jsx)),N.jsxImportSource&&N.jsx===2&&ho(A.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",A.inverseJsxOptionMap.get(""+N.jsx)),N.preserveValueImports&&A.getEmitModuleKind(N)Cn?A.createDiagnosticForNodeInSourceFile(Jn,ja.elements[Cn],cr.kind===A.FileIncludeKind.OutputFromProjectReference?A.Diagnostics.File_is_output_from_referenced_project_specified_here:A.Diagnostics.File_is_source_from_referenced_project_specified_here):void 0;case A.FileIncludeKind.AutomaticTypeDirectiveFile:if(!N.types)return;xt=Zl("types",cr.typeReference),Wt=A.Diagnostics.File_is_entry_point_of_type_library_specified_here;break;case A.FileIncludeKind.LibFile:if(cr.index!==void 0){xt=Zl("lib",N.lib[cr.index]),Wt=A.Diagnostics.File_is_library_specified_here;break}var qn=A.forEachEntry(A.targetOptionDeclaration.type,function(Qo,lo){return Qo===A.getEmitScriptTarget(N)?lo:void 0});xt=qn?Kc("target",qn):void 0,Wt=A.Diagnostics.File_is_default_library_for_target_specified_here;break;default:A.Debug.assertNever(cr)}return xt&&A.createDiagnosticForNodeInSourceFile(N.configFile,xt,Wt)}}function Ds(){var cr=N.suppressOutputPathCheck?void 0:A.getTsBuildInfoEmitOutputFilePath(N);q(kA,UA,function(lr,Zr,xt){var Wt=(Zr?Zr.commandLine.projectReferences:kA)[xt],Kt=Zr&&Zr.sourceFile;if(!lr){Nt(Kt,xt,A.Diagnostics.File_0_not_found,Wt.path);return}var Gi=lr.commandLine.options;if(!Gi.composite||Gi.noEmit){var di=Zr?Zr.commandLine.fileNames:tA;di.length&&(Gi.composite||Nt(Kt,xt,A.Diagnostics.Referenced_project_0_must_have_setting_composite_Colon_true,Wt.path),Gi.noEmit&&Nt(Kt,xt,A.Diagnostics.Referenced_project_0_may_not_disable_emit,Wt.path))}if(Wt.prepend){var Yi=A.outFile(Gi);Yi?we.fileExists(Yi)||Nt(Kt,xt,A.Diagnostics.Output_file_0_from_project_1_does_not_exist,Yi,Wt.path):Nt(Kt,xt,A.Diagnostics.Cannot_prepend_project_0_because_it_does_not_have_outFile_set,Wt.path)}!Zr&&cr&&cr===A.getTsBuildInfoEmitOutputFilePath(Gi)&&(Nt(Kt,xt,A.Diagnostics.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,cr,Wt.path),hr.set(Bt(cr),!0))})}function Ac(cr,lr,Zr,xt,Wt,Kt){for(var Gi=!0,di=Nc(),Yi=0,ha=di;Yilr&&(Ce.add(A.createDiagnosticForNodeInSourceFile(N.configFile,Qo.elements[lr],Zr,xt,Wt,Kt)),Gi=!1)}}Gi&&Ce.add(A.createCompilerDiagnostic(Zr,xt,Wt,Kt))}function gc(cr,lr,Zr,xt){for(var Wt=!0,Kt=Nc(),Gi=0,di=Kt;Gilr?Ce.add(A.createDiagnosticForNodeInSourceFile(cr||N.configFile,Kt.elements[lr],Zr,xt,Wt)):Ce.add(A.createCompilerDiagnostic(Zr,xt,Wt))}function Li(cr,lr,Zr,xt,Wt,Kt,Gi){var di=mi(),Yi=!di||!Ea(di,cr,lr,Zr,xt,Wt,Kt,Gi);Yi&&Ce.add(A.createCompilerDiagnostic(xt,Wt,Kt,Gi))}function mi(){if(Fr===void 0){Fr=!1;var cr=A.getTsConfigObjectLiteralExpression(N.configFile);if(cr)for(var lr=0,Zr=A.getPropertyAssignment(cr,"compilerOptions");lr0)for(var X=cA.getTypeChecker(),Z=0,K=eA.imports;Z0)for(var BA=0,CA=eA.referencedFiles;BA1&&mA(QA)}return q;function mA(SA){if(SA.declarations)for(var ce=0,re=SA.declarations;ce0;){var uA=sA.pop();if(!J.has(uA)){var BA=eA.getSourceFileByPath(uA);J.set(uA,BA),BA&&T(cA,eA,BA,q,X,Z)&&sA.push.apply(sA,S(cA,BA.resolvedPath))}}return A.arrayFrom(A.mapDefinedIterator(J.values(),function(CA){return CA}))}})(t=A.BuilderState||(A.BuilderState={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(iA){iA[iA.DtsOnly=0]="DtsOnly",iA[iA.Full=1]="Full"})(r=A.BuilderFileEmit||(A.BuilderFileEmit={}));function t(iA,_A){return iA===_A||iA!==void 0&&_A!==void 0&&iA.size===_A.size&&!A.forEachKey(iA,function(fA){return!_A.has(fA)})}function i(iA,_A,fA,M){var aA,gA,QA=A.BuilderState.create(iA,_A,fA,M);QA.program=iA;var mA=iA.getCompilerOptions();QA.compilerOptions=mA;var FA=A.outFile(mA);FA?mA.composite&&fA?.outSignature&&FA===A.outFile(fA?.compilerOptions)&&(QA.outSignature=fA?.outSignature):QA.semanticDiagnosticsPerFile=new A.Map,QA.changedFilesSet=new A.Set,QA.latestChangedDtsFile=mA.composite?fA?.latestChangedDtsFile:void 0;var SA=A.BuilderState.canReuseOldState(QA.referencedMap,fA),ce=SA?fA.compilerOptions:void 0,re=SA&&fA.semanticDiagnosticsPerFile&&!!QA.semanticDiagnosticsPerFile&&!A.compilerOptionsAffectSemanticDiagnostics(mA,ce),KA=mA.composite&&fA?.emitSignatures&&!FA&&!A.compilerOptionsAffectDeclarationPath(mA,fA.compilerOptions);SA&&((aA=fA.changedFilesSet)===null||aA===void 0||aA.forEach(function(RA){return QA.changedFilesSet.add(RA)}),!FA&&fA.affectedFilesPendingEmit&&(QA.affectedFilesPendingEmit=fA.affectedFilesPendingEmit.slice(),QA.affectedFilesPendingEmitKind=fA.affectedFilesPendingEmitKind&&new A.Map(fA.affectedFilesPendingEmitKind),QA.affectedFilesPendingEmitIndex=fA.affectedFilesPendingEmitIndex,QA.seenAffectedFiles=new A.Set));var $A=QA.referencedMap,jA=SA?fA.referencedMap:void 0,ue=re&&!mA.skipLibCheck==!ce.skipLibCheck,MA=ue&&!mA.skipDefaultLibCheck==!ce.skipDefaultLibCheck;return QA.fileInfos.forEach(function(RA,lA){var tA,N;if(!SA||!(tA=fA.fileInfos.get(lA))||tA.version!==RA.version||tA.impliedFormat!==RA.impliedFormat||!t(N=$A&&$A.getValues(lA),jA&&jA.getValues(lA))||N&&A.forEachKey(N,function(TA){return!QA.fileInfos.has(TA)&&fA.fileInfos.has(TA)}))QA.changedFilesSet.add(lA);else if(re){var nA=iA.getSourceFileByPath(lA);if(nA.isDeclarationFile&&!ue||nA.hasNoDefaultLib&&!MA)return;var kA=fA.semanticDiagnosticsPerFile.get(lA);kA&&(QA.semanticDiagnosticsPerFile.set(lA,fA.hasReusableDiagnostic?o(kA,iA,_A):kA),QA.semanticDiagnosticsFromOldState||(QA.semanticDiagnosticsFromOldState=new A.Set),QA.semanticDiagnosticsFromOldState.add(lA))}if(KA){var bA=fA.emitSignatures.get(lA);bA&&(QA.emitSignatures||(QA.emitSignatures=new A.Map)).set(lA,bA)}}),SA&&A.forEachEntry(fA.fileInfos,function(RA,lA){return RA.affectsGlobalScope&&!QA.fileInfos.has(lA)})?A.BuilderState.getAllFilesExcludingDefaultLibraryFile(QA,iA,void 0).forEach(function(RA){return QA.changedFilesSet.add(RA.resolvedPath)}):ce&&!FA&&A.compilerOptionsAffectEmit(mA,ce)&&(iA.getSourceFiles().forEach(function(RA){return uA(QA,RA.resolvedPath,1)}),A.Debug.assert(!QA.seenAffectedFiles||!QA.seenAffectedFiles.size),QA.seenAffectedFiles=QA.seenAffectedFiles||new A.Set),QA.buildInfoEmitPending=!SA||QA.changedFilesSet.size!==(((gA=fA.changedFilesSet)===null||gA===void 0?void 0:gA.size)||0),QA}function o(iA,_A,fA){if(!iA.length)return A.emptyArray;var M=A.getDirectoryPath(A.getNormalizedAbsolutePath(A.getTsBuildInfoEmitOutputFilePath(_A.getCompilerOptions()),_A.getCurrentDirectory()));return iA.map(function(gA){var QA=s(gA,_A,aA);QA.reportsUnnecessary=gA.reportsUnnecessary,QA.reportsDeprecated=gA.reportDeprecated,QA.source=gA.source,QA.skippedOn=gA.skippedOn;var mA=gA.relatedInformation;return QA.relatedInformation=mA?mA.length?mA.map(function(FA){return s(FA,_A,aA)}):[]:void 0,QA});function aA(gA){return A.toPath(gA,M,fA)}}function s(iA,_A,fA){var M=iA.file;return pi(pi({},iA),{file:M?_A.getSourceFileByPath(fA(M)):void 0})}function g(iA){A.BuilderState.releaseCache(iA),iA.program=void 0}function E(iA){var _A=A.outFile(iA.compilerOptions);return A.Debug.assert(!iA.changedFilesSet.size||_A),{affectedFilesPendingEmit:iA.affectedFilesPendingEmit&&iA.affectedFilesPendingEmit.slice(),affectedFilesPendingEmitKind:iA.affectedFilesPendingEmitKind&&new A.Map(iA.affectedFilesPendingEmitKind),affectedFilesPendingEmitIndex:iA.affectedFilesPendingEmitIndex,seenEmittedFiles:iA.seenEmittedFiles&&new A.Map(iA.seenEmittedFiles),programEmitComplete:iA.programEmitComplete,emitSignatures:iA.emitSignatures&&new A.Map(iA.emitSignatures),outSignature:iA.outSignature,latestChangedDtsFile:iA.latestChangedDtsFile,hasChangedEmitSignature:iA.hasChangedEmitSignature,changedFilesSet:_A?new A.Set(iA.changedFilesSet):void 0}}function p(iA,_A){iA.affectedFilesPendingEmit=_A.affectedFilesPendingEmit,iA.affectedFilesPendingEmitKind=_A.affectedFilesPendingEmitKind,iA.affectedFilesPendingEmitIndex=_A.affectedFilesPendingEmitIndex,iA.seenEmittedFiles=_A.seenEmittedFiles,iA.programEmitComplete=_A.programEmitComplete,iA.emitSignatures=_A.emitSignatures,iA.outSignature=_A.outSignature,iA.latestChangedDtsFile=_A.latestChangedDtsFile,iA.hasChangedEmitSignature=_A.hasChangedEmitSignature,_A.changedFilesSet&&(iA.changedFilesSet=_A.changedFilesSet)}function B(iA,_A){A.Debug.assert(!_A||!iA.affectedFiles||iA.affectedFiles[iA.affectedFilesIndex-1]!==_A||!iA.semanticDiagnosticsPerFile.has(_A.resolvedPath))}function m(iA,_A,fA,M,aA){for(var gA,QA;;){var mA=iA.affectedFiles;if(mA){for(var FA=iA.seenAffectedFiles,SA=iA.affectedFilesIndex;SA0;){var SA=FA.pop();if(!mA.has(SA)){if(mA.set(SA,!0),v(iA,SA,fA,M,aA,gA))return;if(P(iA,SA,fA,M,aA,gA),T(iA,SA)){var ce=A.Debug.checkDefined(iA.program).getSourceFileByPath(SA);FA.push.apply(FA,A.BuilderState.getReferencedByPaths(iA,ce.resolvedPath))}}}}var re=new A.Set;(QA=iA.exportedModulesMap.getKeys(_A.resolvedPath))===null||QA===void 0||QA.forEach(function(KA){if(v(iA,KA,fA,M,aA,gA))return!0;var $A=iA.referencedMap.getKeys(KA);return $A&&A.forEachKey($A,function(jA){return y(iA,jA,re,fA,M,aA,gA)})})}}function y(iA,_A,fA,M,aA,gA,QA){var mA,FA;if(A.tryAddToSet(fA,_A)){if(v(iA,_A,M,aA,gA,QA))return!0;P(iA,_A,M,aA,gA,QA),(mA=iA.exportedModulesMap.getKeys(_A))===null||mA===void 0||mA.forEach(function(SA){return y(iA,SA,fA,M,aA,gA,QA)}),(FA=iA.referencedMap.getKeys(_A))===null||FA===void 0||FA.forEach(function(SA){return!fA.has(SA)&&P(iA,SA,M,aA,gA,QA)})}}function S(iA,_A,fA,M,aA){aA?iA.buildInfoEmitPending=!1:_A===iA.program?(iA.changedFilesSet.clear(),iA.programEmitComplete=!0):(iA.seenAffectedFiles.add(_A.resolvedPath),iA.buildInfoEmitPending=!0,fA!==void 0&&(iA.seenEmittedFiles||(iA.seenEmittedFiles=new A.Map)).set(_A.resolvedPath,fA),M?iA.affectedFilesPendingEmitIndex++:iA.affectedFilesIndex++)}function U(iA,_A,fA){return S(iA,fA),{result:_A,affected:fA}}function V(iA,_A,fA,M,aA,gA){return S(iA,fA,M,aA,gA),{result:_A,affected:fA}}function wA(iA,_A,fA){return A.concatenate(IA(iA,_A,fA),A.Debug.checkDefined(iA.program).getProgramDiagnostics(_A))}function IA(iA,_A,fA){var M=_A.resolvedPath;if(iA.semanticDiagnosticsPerFile){var aA=iA.semanticDiagnosticsPerFile.get(M);if(aA)return A.filterSemanticDiagnostics(aA,iA.compilerOptions)}var gA=A.Debug.checkDefined(iA.program).getBindAndCheckDiagnostics(_A,fA);return iA.semanticDiagnosticsPerFile&&iA.semanticDiagnosticsPerFile.set(M,gA),A.filterSemanticDiagnostics(gA,iA.compilerOptions)}function pA(iA){return!!A.outFile(iA.options||{})}A.isProgramBundleEmitBuildInfo=pA;function oA(iA,_A){var fA=A.outFile(iA.compilerOptions);if(fA&&!iA.compilerOptions.composite)return;var M=A.Debug.checkDefined(iA.program).getCurrentDirectory(),aA=A.getDirectoryPath(A.getNormalizedAbsolutePath(A.getTsBuildInfoEmitOutputFilePath(iA.compilerOptions),M)),gA=iA.latestChangedDtsFile?Cr(iA.latestChangedDtsFile):void 0;if(fA){var QA=[],mA=[];iA.program.getRootFileNames().forEach(function(Ye){var mr=iA.program.getSourceFile(Ye);mr&&(QA.push(be(mr.resolvedPath)),mA.push(mr.version))});var FA={fileNames:QA,fileInfos:mA,options:ir(iA.compilerOptions,"affectsBundleEmitBuildInfo"),outSignature:iA.outSignature,latestChangedDtsFile:gA};return FA}var SA=[],ce=new A.Map,re,KA,$A,jA=A.arrayFrom(iA.fileInfos.entries(),function(Ye){var mr,$e,xr=Ye[0],PA=Ye[1],we=Me(xr);A.Debug.assert(SA[we-1]===be(xr));var LA=(mr=iA.oldSignatures)===null||mr===void 0?void 0:mr.get(xr),ae=LA!==void 0?LA||void 0:PA.signature;if(iA.compilerOptions.composite){var We=iA.program.getSourceFileByPath(xr);if(!A.isJsonSourceFile(We)&&A.sourceFileMayBeEmitted(We,iA.program)){var YA=($e=iA.emitSignatures)===null||$e===void 0?void 0:$e.get(xr);YA!==ae&&($A||($A=[])).push(YA===void 0?we:[we,YA])}}return PA.version===ae?PA.affectsGlobalScope||PA.impliedFormat?{version:PA.version,signature:void 0,affectsGlobalScope:PA.affectsGlobalScope,impliedFormat:PA.impliedFormat}:PA.version:ae!==void 0?LA===void 0?PA:{version:PA.version,signature:ae,affectsGlobalScope:PA.affectsGlobalScope,impliedFormat:PA.impliedFormat}:{version:PA.version,signature:!1,affectsGlobalScope:PA.affectsGlobalScope,impliedFormat:PA.impliedFormat}}),ue;iA.referencedMap&&(ue=A.arrayFrom(iA.referencedMap.keys()).sort(A.compareStringsCaseSensitive).map(function(Ye){return[Me(Ye),Le(iA.referencedMap.getValues(Ye))]}));var MA;iA.exportedModulesMap&&(MA=A.mapDefined(A.arrayFrom(iA.exportedModulesMap.keys()).sort(A.compareStringsCaseSensitive),function(Ye){var mr,$e=(mr=iA.oldExportedModulesMap)===null||mr===void 0?void 0:mr.get(Ye);if($e===void 0)return[Me(Ye),Le(iA.exportedModulesMap.getValues(Ye))];if($e)return[Me(Ye),Le($e)]}));var RA;if(iA.semanticDiagnosticsPerFile)for(var lA=0,tA=A.arrayFrom(iA.semanticDiagnosticsPerFile.keys()).sort(A.compareStringsCaseSensitive);lA1||s.charCodeAt(0)!==47;if(B&&s.search(/[a-zA-Z]:/)!==0&&p.search(/[a-zA-Z]\$\//)===0){if(E=s.indexOf(A.directorySeparator,E+1),E===-1)return!1;p=s.substring(g+p.length,E+1)}if(B&&p.search(/users\//i)!==0)return!0;for(var m=E+1,_=2;_>0;_--)if(m=s.indexOf(A.directorySeparator,m)+1,m===0)return!1;return!0}A.canWatchDirectoryOrFile=t;function i(s,g,E){var p,B,m,_=A.createMultiMap(),x=[],O=[],k=A.createMultiMap(),P=new A.Map,H=!1,T,v,F,y,S,U=A.memoize(function(){return s.getCurrentDirectory()}),V=s.getCachedDirectoryStructureHost(),wA=new A.Map,IA=A.createCacheWithRedirects(),pA=A.createCacheWithRedirects(),oA=A.createModuleResolutionCache(U(),s.getCanonicalFileName,void 0,IA,pA),cA=new A.Map,eA=A.createCacheWithRedirects(),Y=A.createTypeReferenceDirectiveResolutionCache(U(),s.getCanonicalFileName,void 0,oA.getPackageJsonInfoCache(),eA),q=[".ts",".tsx",".js",".jsx",".json"],X=new A.Map,Z=new A.Map,K=new A.Map,J=g&&A.removeTrailingDirectorySeparator(A.getNormalizedAbsolutePath(g,U())),sA=J&&s.toPath(J),uA=sA!==void 0?sA.split(A.directorySeparator).length:0,BA=new A.Map;return{getModuleResolutionCache:function(){return oA},startRecordingFilesWithChangedResolutions:_A,finishRecordingFilesWithChangedResolutions:fA,startCachingPerDirectoryResolution:gA,finishCachingPerDirectoryResolution:QA,resolveModuleNames:re,getResolvedModuleWithFailedLookupLocationsFromCache:KA,resolveTypeReferenceDirectives:ce,removeResolutionsFromProjectReferenceRedirects:_e,removeResolutionsOfFile:Ae,hasChangedAutomaticTypeDirectiveNames:function(){return H},invalidateResolutionOfFile:Ze,invalidateResolutionsOfFailedLookupLocations:Me,setFilesWithInvalidatedNonRelativeUnresolvedImports:Cr,createHasInvalidatedResolutions:aA,isFileWithInvalidatedNonRelativeUnresolvedImports:M,updateTypeRootsWatch:PA,closeTypeRootsWatch:mr,clear:iA};function CA(LA){return LA.resolvedModule}function z(LA){return LA.resolvedTypeReferenceDirective}function AA(LA,ae){return LA===void 0||ae.length<=LA.length?!1:A.startsWith(ae,LA)&&ae[LA.length]===A.directorySeparator}function iA(){A.clearMap(Z,A.closeFileWatcherOf),A.clearMap(K,A.closeFileWatcherOf),X.clear(),_.clear(),mr(),wA.clear(),cA.clear(),k.clear(),x.length=0,O.length=0,F=void 0,y=void 0,S=void 0,v=void 0,T=void 0,oA.clear(),Y.clear(),P.clear(),H=!1}function _A(){p=[]}function fA(){var LA=p;return p=void 0,LA}function M(LA){if(!m)return!1;var ae=m.get(LA);return!!ae&&!!ae.length}function aA(LA){Me();var ae=B;return B=void 0,function(We){return LA(We)||!!ae?.has(We)||M(We)}}function gA(){oA.clearAllExceptPackageJsonInfoCache(),Y.clearAllExceptPackageJsonInfoCache(),_.forEach(nA),_.clear()}function QA(LA,ae){m=void 0,_.forEach(nA),_.clear(),LA!==ae&&(LA?.getSourceFiles().forEach(function(We){for(var YA,Ce,Ke,er=A.isExternalOrCommonJsModule(We)&&(Ce=(YA=We.packageJsonLocations)===null||YA===void 0?void 0:YA.length)!==null&&Ce!==void 0?Ce:0,ur=(Ke=P.get(We.path))!==null&&Ke!==void 0?Ke:A.emptyArray,hr=ur.length;hrer)for(var hr=er;hruA+1?{dir:YA.slice(0,uA+1).join(A.directorySeparator),dirPath:We.slice(0,uA+1).join(A.directorySeparator)}:{dir:J,dirPath:sA,nonRecursive:!1}}return ue(A.getDirectoryPath(A.getNormalizedAbsolutePath(LA,U())),A.getDirectoryPath(ae))}function ue(LA,ae){for(;A.pathContainsNodeModules(ae);)LA=A.getDirectoryPath(LA),ae=A.getDirectoryPath(ae);if(A.isNodeModulesDirectory(ae))return t(A.getDirectoryPath(ae))?{dir:LA,dirPath:ae}:void 0;var We=!0,YA,Ce;if(sA!==void 0)for(;!AA(ae,sA);){var Ke=A.getDirectoryPath(ae);if(Ke===ae)break;We=!1,YA=ae,Ce=LA,ae=Ke,LA=A.getDirectoryPath(LA)}return t(ae)?{dir:Ce||LA,dirPath:YA||ae,nonRecursive:We}:void 0}function MA(LA){return A.fileExtensionIsOneOf(LA,q)}function RA(LA,ae,We,YA){if(ae.refCount)ae.refCount++,A.Debug.assertIsDefined(ae.files);else{ae.refCount=1,A.Debug.assert(A.length(ae.files)===0),A.isExternalModuleNameRelative(LA)?lA(ae):_.add(LA,ae);var Ce=YA(ae);Ce&&Ce.resolvedFileName&&k.add(s.toPath(Ce.resolvedFileName),ae)}(ae.files||(ae.files=[])).push(We)}function lA(LA){A.Debug.assert(!!LA.refCount);var ae=LA.failedLookupLocations,We=LA.affectingLocations;if(!(!ae.length&&!We.length)){ae.length&&x.push(LA);for(var YA=!1,Ce=0,Ke=ae;Ce1),X.set(qA,nr-1))),Ge===sA?er=!0:TA(Ge)}}er&&TA(sA)}else Ke.length&&A.unorderedRemoveItem(O,LA);for(var Or=0,tr=Ke;Or1&&$A.sort(U),gA.push.apply(gA,$A));var jA=A.getDirectoryPath(re);if(jA===re)return mA=re,"break";re=jA,mA=re},mA,FA=A.getDirectoryPath(AA);M.size!==0;){var SA=QA(FA);if(FA=mA,SA==="break")break}if(M.size){var ce=A.arrayFrom(M.values());ce.length>1&&ce.sort(U),gA.push.apply(gA,ce)}return gA}function oA(AA,iA){var _A,fA=(_A=AA.declarations)===null||_A===void 0?void 0:_A.find(function(gA){return A.isNonGlobalAmbientModule(gA)&&(!A.isExternalModuleAugmentation(gA)||!A.isExternalModuleNameRelative(A.getTextOfIdentifierOrLiteral(gA.name)))});if(fA)return fA.name.text;var M=A.mapDefined(AA.declarations,function(gA){var QA,mA,FA,SA;if(!A.isModuleDeclaration(gA))return;var ce=jA(gA);if(!(!((QA=ce?.parent)===null||QA===void 0)&&QA.parent&&A.isModuleBlock(ce.parent)&&A.isAmbientModule(ce.parent.parent)&&A.isSourceFile(ce.parent.parent.parent)))return;var re=(SA=(FA=(mA=ce.parent.parent.symbol.exports)===null||mA===void 0?void 0:mA.get("export="))===null||FA===void 0?void 0:FA.valueDeclaration)===null||SA===void 0?void 0:SA.expression;if(!re)return;var KA=iA.getSymbolAtLocation(re);if(!KA)return;var $A=KA?.flags&2097152?iA.getAliasedSymbol(KA):KA;if($A===gA.symbol)return ce.parent.parent;function jA(ue){for(;ue.flags&4;)ue=ue.parent;return ue}}),aA=M[0];if(aA)return aA.name.text}function cA(AA,iA,_A){if(A.getEmitModuleResolutionKind(iA)>=A.ModuleResolutionKind.Node16&&_A===A.ModuleKind.ESNext)return[2];switch(AA){case 2:return[2,0,1];case 1:return[1,0,2];case 0:return[0,1,2];default:A.Debug.assertNever(AA)}}function eA(AA,iA,_A,fA,M){for(var aA in iA)for(var gA=function(re){var KA=A.normalizePath(re),$A=KA.indexOf("*"),jA=_A.map(function(bA){return{ending:bA,value:sA(AA,bA,M)}});if(A.tryGetExtensionFromPath(KA)&&jA.push({ending:void 0,value:AA}),$A!==-1)for(var ue=KA.substring(0,$A),MA=KA.substring($A+1),RA=0,lA=jA;RA=ue.length+MA.length&&A.startsWith(nA,ue)&&A.endsWith(nA,MA)&&ce({ending:N,value:nA})){var kA=nA.substring(ue.length,nA.length-MA.length);return{value:aA.replace("*",kA)}}}else if(A.some(jA,function(bA){return bA.ending!==0&&KA===bA.value})||A.some(jA,function(bA){return bA.ending===0&&KA===bA.value&&ce(bA)}))return{value:aA}},QA=0,mA=iA[aA];QA=0||A.isApplicableVersionedTypesKey(aA,ue)){var MA=M[ue],RA=q(AA,iA,_A,fA,MA,aA);if(RA)return RA}}}}}function X(AA,iA,_A,fA,M,aA){var gA=J(iA,AA,fA);if(gA!==void 0){var QA=J(_A,AA,fA),mA=A.flatMap(QA,function(SA){return A.map(gA,function(ce){return A.ensurePathIsNonModuleName(A.getRelativePathFromDirectory(SA,ce,fA))})}),FA=A.min(mA,A.compareNumberOfDirectorySeparators);if(FA)return A.getEmitModuleResolutionKind(aA)===A.ModuleResolutionKind.NodeJs?sA(FA,M,aA):A.removeFileExtension(FA)}}function Z(AA,iA,_A,fA,M,aA,gA,QA){var mA=AA.path,FA=AA.isRedirect,SA=iA.getCanonicalFileName,ce=iA.sourceDirectory;if(!fA.fileExists||!fA.readFile)return;var re=A.getNodeModulePathParts(mA);if(!re)return;var KA=s(fA,aA,M,_A),$A=mA,jA=!1;if(!gA)for(var ue=re.packageRootIndex,MA=void 0;;){var RA=De(ue),lA=RA.moduleFileToTry,tA=RA.packageRootPath,N=RA.blockedByExports,nA=RA.verbatimFromExports;if(A.getEmitModuleResolutionKind(M)!==A.ModuleResolutionKind.Classic){if(N)return;if(nA)return lA}if(tA){$A=tA,jA=!0;break}if(MA||(MA=lA),ue=mA.indexOf(A.directorySeparator,ue+1),ue===-1){$A=sA(MA,KA.ending,M,fA);break}}if(FA&&!jA)return;var kA=fA.getGlobalTypingsCacheLocation&&fA.getGlobalTypingsCacheLocation(),bA=SA($A.substring(0,re.topLevelNodeModulesIndex));if(!(A.startsWith(ce,bA)||kA&&A.startsWith(SA(kA),bA)))return;var TA=$A.substring(re.topLevelPackageNameIndex+1),VA=A.getPackageNameFromTypesPackageName(TA);return A.getEmitModuleResolutionKind(M)===A.ModuleResolutionKind.Classic&&VA===TA?void 0:VA;function De(_e){var Ae,Q,Ze=mA.substring(0,_e),Cr=A.combinePaths(Ze,"package.json"),be=mA,Me=!1,Le=(Q=(Ae=fA.getPackageJsonInfoCache)===null||Ae===void 0?void 0:Ae.call(fA))===null||Q===void 0?void 0:Q.getPackageJsonInfo(Cr);if(typeof Le=="object"||Le===void 0&&fA.fileExists(Cr)){var ir=Le?.contents.packageJsonContent||JSON.parse(fA.readFile(Cr)),Ye=QA||_A.impliedNodeFormat;if(A.getEmitModuleResolutionKind(M)===A.ModuleResolutionKind.Node16||A.getEmitModuleResolutionKind(M)===A.ModuleResolutionKind.NodeNext){var mr=["node",Ye===A.ModuleKind.ESNext?"import":"require","types"],$e=ir.exports&&typeof ir.name=="string"?q(M,mA,Ze,A.getPackageNameFromTypesPackageName(ir.name),ir.exports,mr):void 0;if($e){var xr=A.hasTSFileExtension($e.moduleFileToTry)?{moduleFileToTry:A.removeFileExtension($e.moduleFileToTry)+BA($e.moduleFileToTry,M)}:$e;return pi(pi({},xr),{verbatimFromExports:!0})}if(ir.exports)return{moduleFileToTry:mA,blockedByExports:!0}}var PA=ir.typesVersions?A.getPackageJsonTypesVersionsPaths(ir.typesVersions):void 0;if(PA){var we=mA.slice(Ze.length+1),LA=eA(we,PA.paths,cA(KA.ending,M,Ye),fA,M);LA===void 0?Me=!0:be=A.combinePaths(Ze,LA)}var ae=ir.typings||ir.types||ir.main||"index.js";if(A.isString(ae)&&!(Me&&A.matchPatternOrExact(A.tryParsePatterns(PA.paths),ae))){var We=A.toPath(ae,Ze,SA);if(A.removeFileExtension(We)===A.removeFileExtension(SA(be)))return{packageRootPath:Ze,moduleFileToTry:be}}}else{var YA=SA(be.substring(re.packageRootIndex+1));if(YA==="index.d.ts"||YA==="index.js"||YA==="index.ts"||YA==="index.tsx")return{moduleFileToTry:be,packageRootPath:Ze}}return{moduleFileToTry:be}}}function K(AA,iA){if(AA.fileExists)for(var _A=A.flatten(A.getSupportedExtensions({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}])),fA=0,M=_A;fA1?O(BA,uA):"";return"".concat(sA).concat(A.flattenDiagnosticMessageText(AA.messageText,sA)).concat(sA).concat(sA).concat(iA)}A.getErrorSummaryText=x;function O(K,J){var sA=K.filter(function(M,aA,gA){return aA===gA.findIndex(function(QA){return QA?.fileName===M?.fileName})});if(sA.length===0)return"";var uA=function(M){return Math.log(M)*Math.LOG10E+1},BA=sA.map(function(M){return[M,A.countWhere(K,function(aA){return aA.fileName===M.fileName})]}),CA=BA.reduce(function(M,aA){return Math.max(M,aA[1]||0)},0),z=A.Diagnostics.Errors_Files.message,AA=z.split(" ")[0].length,iA=Math.max(AA,uA(CA)),_A=Math.max(uA(CA)-AA,0),fA="";return fA+=" ".repeat(_A)+z+` -`,BA.forEach(function(M){var aA=M[0],gA=M[1],QA=Math.log(gA)*Math.LOG10E+1|0,mA=QA0?A.ExitStatus.DiagnosticsPresent_OutputsSkipped:fA.length>0?A.ExitStatus.DiagnosticsPresent_OutputsGenerated:A.ExitStatus.Success}A.emitFilesAndReportErrorsAndGetExitStatus=V,A.noopFileWatcher={close:A.noop},A.returnNoopFileWatcher=function(){return A.noopFileWatcher};function wA(K,J){K===void 0&&(K=A.sys);var sA=J||g(K);return{onWatchStatusChange:sA,watchFile:A.maybeBind(K,K.watchFile)||A.returnNoopFileWatcher,watchDirectory:A.maybeBind(K,K.watchDirectory)||A.returnNoopFileWatcher,setTimeout:A.maybeBind(K,K.setTimeout)||A.noop,clearTimeout:A.maybeBind(K,K.clearTimeout)||A.noop}}A.createWatchHost=wA,A.WatchType={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",AffectingFileLocation:"File location affecting resolution",TypeRoots:"Type roots",ConfigFileOfReferencedProject:"Config file of referened project",ExtendedConfigOfReferencedProject:"Extended config file of referenced project",WildcardDirectoryOfReferencedProject:"Wild card directory of referenced project",PackageJson:"package.json file",ClosedScriptInfo:"Closed Script info",ConfigFileForInferredRoot:"Config file for the inferred project root",NodeModules:"node_modules for closed script infos and package.jsons affecting module specifier cache",MissingSourceMapFile:"Missing source map file",NoopConfigFileForInferredRoot:"Noop Config file for the inferred project root",MissingGeneratedFile:"Missing generated file",NodeModulesForModuleSpecifierCache:"node_modules for module specifier cache invalidation"};function IA(K,J){var sA=K.trace?J.extendedDiagnostics?A.WatchLogLevel.Verbose:J.diagnostics?A.WatchLogLevel.TriggerOnly:A.WatchLogLevel.None:A.WatchLogLevel.None,uA=sA!==A.WatchLogLevel.None?function(CA){return K.trace(CA)}:A.noop,BA=A.getWatchFactory(K,sA,uA);return BA.writeLog=uA,BA}A.createWatchFactory=IA;function pA(K,J,sA){sA===void 0&&(sA=K);var uA=K.useCaseSensitiveFileNames(),BA=A.memoize(function(){return K.getNewLine()}),CA={getSourceFile:function(AA,iA,_A){var fA;try{A.performance.mark("beforeIORead");var M=J().charset;fA=M?K.readFile(AA,M):CA.readFile(AA),A.performance.mark("afterIORead"),A.performance.measure("I/O Read","beforeIORead","afterIORead")}catch(aA){_A&&_A(aA.message),fA=""}return fA!==void 0?A.createSourceFile(AA,fA,iA):void 0},getDefaultLibLocation:A.maybeBind(K,K.getDefaultLibLocation),getDefaultLibFileName:function(AA){return K.getDefaultLibFileName(AA)},writeFile:z,getCurrentDirectory:A.memoize(function(){return K.getCurrentDirectory()}),useCaseSensitiveFileNames:function(){return uA},getCanonicalFileName:A.createGetCanonicalFileName(uA),getNewLine:function(){return A.getNewLineCharacter(J(),BA)},fileExists:function(AA){return K.fileExists(AA)},readFile:function(AA){return K.readFile(AA)},trace:A.maybeBind(K,K.trace),directoryExists:A.maybeBind(sA,sA.directoryExists),getDirectories:A.maybeBind(sA,sA.getDirectories),realpath:A.maybeBind(K,K.realpath),getEnvironmentVariable:A.maybeBind(K,K.getEnvironmentVariable)||function(){return""},createHash:A.maybeBind(K,K.createHash),readDirectory:A.maybeBind(K,K.readDirectory),disableUseFileVersionAsSignature:K.disableUseFileVersionAsSignature,storeFilesChangingSignatureDuringEmit:K.storeFilesChangingSignatureDuringEmit};return CA;function z(AA,iA,_A,fA){try{A.performance.mark("beforeIOWrite"),A.writeFileEnsuringDirectories(AA,iA,_A,function(M,aA,gA){return K.writeFile(M,aA,gA)},function(M){return K.createDirectory(M)},function(M){return K.directoryExists(M)}),A.performance.mark("afterIOWrite"),A.performance.measure("I/O Write","beforeIOWrite","afterIOWrite")}catch(M){fA&&fA(M.message)}}}A.createCompilerHostFromProgramHost=pA;function oA(K){var J=K.getSourceFile,sA=A.maybeBind(K,K.createHash)||A.generateDjb2Hash;K.getSourceFile=function(){for(var uA=[],BA=0;BAPe)}}}function uA(YA,Ce,Ke){var er=YA.options;return Ce.type!==A.UpToDateStatusType.OutOfDateWithPrepend||er.force?!0:Ke.fileNames.length===0||!!A.getConfigFileParsingDiagnostics(Ke).length||!A.isIncrementalCompilation(Ke.options)}function BA(YA,Ce,Ke){if(YA.projectPendingBuild.size&&!E(Ce))for(var er=YA.options,ur=YA.projectPendingBuild,hr=0;hrHA&&(de=He,HA=Xe)}if(!ke)for(var lt=A.getAllProjectOutputs(Ce,!nt.useCaseSensitiveFileNames()),Lr=QA(YA,Ke),gt=0,Pr=lt;gt=0}t.hasArgument=o;function s(E){var p=A.sys.args.indexOf(E);return p>=0&&pm)return 2;if(P.charCodeAt(0)===46)return 3;if(P.charCodeAt(0)===95)return 4;if(H){var T=/^@([^/]+)\/([^/]+)$/.exec(P);if(T){var v=x(T[1],!1);if(v!==0)return{name:T[1],isScopeName:!0,result:v};var F=x(T[2],!1);return F!==0?{name:T[2],isScopeName:!1,result:F}:0}}return encodeURIComponent(P)!==P?5:0}function O(P,H){return typeof P=="object"?k(H,P.result,P.name,P.isScopeName):k(H,P,H,!1)}t.renderPackageNameValidationFailure=O;function k(P,H,T,v){var F=v?"Scope":"Package";switch(H){case 1:return"'".concat(P,"':: ").concat(F," name '").concat(T,"' cannot be empty");case 2:return"'".concat(P,"':: ").concat(F," name '").concat(T,"' should be less than ").concat(m," characters");case 3:return"'".concat(P,"':: ").concat(F," name '").concat(T,"' cannot start with '.'");case 4:return"'".concat(P,"':: ").concat(F," name '").concat(T,"' cannot start with '_'");case 5:return"'".concat(P,"':: ").concat(F," name '").concat(T,"' contains non URI safe characters");case 0:return A.Debug.fail();default:throw A.Debug.assertNever(H)}}})(r=A.JsTyping||(A.JsTyping={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(V){var wA=function(){function pA(oA){this.text=oA}return pA.prototype.getText=function(oA,cA){return oA===0&&cA===this.text.length?this.text:this.text.substring(oA,cA)},pA.prototype.getLength=function(){return this.text.length},pA.prototype.getChangeRange=function(){},pA}();function IA(pA){return new wA(pA)}V.fromString=IA})(r=A.ScriptSnapshot||(A.ScriptSnapshot={}));var t;(function(V){V[V.Dependencies=1]="Dependencies",V[V.DevDependencies=2]="DevDependencies",V[V.PeerDependencies=4]="PeerDependencies",V[V.OptionalDependencies=8]="OptionalDependencies",V[V.All=15]="All"})(t=A.PackageJsonDependencyGroup||(A.PackageJsonDependencyGroup={}));var i;(function(V){V[V.Off=0]="Off",V[V.On=1]="On",V[V.Auto=2]="Auto"})(i=A.PackageJsonAutoImportPreference||(A.PackageJsonAutoImportPreference={}));var o;(function(V){V[V.Semantic=0]="Semantic",V[V.PartialSemantic=1]="PartialSemantic",V[V.Syntactic=2]="Syntactic"})(o=A.LanguageServiceMode||(A.LanguageServiceMode={})),A.emptyOptions={};var s;(function(V){V.Original="original",V.TwentyTwenty="2020"})(s=A.SemanticClassificationFormat||(A.SemanticClassificationFormat={}));var g;(function(V){V.All="All",V.SortAndCombine="SortAndCombine",V.RemoveUnused="RemoveUnused"})(g=A.OrganizeImportsMode||(A.OrganizeImportsMode={}));var E;(function(V){V[V.Invoked=1]="Invoked",V[V.TriggerCharacter=2]="TriggerCharacter",V[V.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions"})(E=A.CompletionTriggerKind||(A.CompletionTriggerKind={}));var p;(function(V){V.Type="Type",V.Parameter="Parameter",V.Enum="Enum"})(p=A.InlayHintKind||(A.InlayHintKind={}));var B;(function(V){V.none="none",V.definition="definition",V.reference="reference",V.writtenReference="writtenReference"})(B=A.HighlightSpanKind||(A.HighlightSpanKind={}));var m;(function(V){V[V.None=0]="None",V[V.Block=1]="Block",V[V.Smart=2]="Smart"})(m=A.IndentStyle||(A.IndentStyle={}));var _;(function(V){V.Ignore="ignore",V.Insert="insert",V.Remove="remove"})(_=A.SemicolonPreference||(A.SemicolonPreference={}));function x(V){return{indentSize:4,tabSize:4,newLineCharacter:V||` -`,convertTabsToSpaces:!0,indentStyle:m.Smart,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:_.Ignore,trimTrailingWhitespace:!0}}A.getDefaultFormatCodeSettings=x,A.testFormatSettings=x(` -`);var O;(function(V){V[V.aliasName=0]="aliasName",V[V.className=1]="className",V[V.enumName=2]="enumName",V[V.fieldName=3]="fieldName",V[V.interfaceName=4]="interfaceName",V[V.keyword=5]="keyword",V[V.lineBreak=6]="lineBreak",V[V.numericLiteral=7]="numericLiteral",V[V.stringLiteral=8]="stringLiteral",V[V.localName=9]="localName",V[V.methodName=10]="methodName",V[V.moduleName=11]="moduleName",V[V.operator=12]="operator",V[V.parameterName=13]="parameterName",V[V.propertyName=14]="propertyName",V[V.punctuation=15]="punctuation",V[V.space=16]="space",V[V.text=17]="text",V[V.typeParameterName=18]="typeParameterName",V[V.enumMemberName=19]="enumMemberName",V[V.functionName=20]="functionName",V[V.regularExpressionLiteral=21]="regularExpressionLiteral",V[V.link=22]="link",V[V.linkName=23]="linkName",V[V.linkText=24]="linkText"})(O=A.SymbolDisplayPartKind||(A.SymbolDisplayPartKind={}));var k;(function(V){V[V.None=0]="None",V[V.MayIncludeAutoImports=1]="MayIncludeAutoImports",V[V.IsImportStatementCompletion=2]="IsImportStatementCompletion",V[V.IsContinuation=4]="IsContinuation",V[V.ResolvedModuleSpecifiers=8]="ResolvedModuleSpecifiers",V[V.ResolvedModuleSpecifiersBeyondLimit=16]="ResolvedModuleSpecifiersBeyondLimit",V[V.MayIncludeMethodSnippets=32]="MayIncludeMethodSnippets"})(k=A.CompletionInfoFlags||(A.CompletionInfoFlags={}));var P;(function(V){V.Comment="comment",V.Region="region",V.Code="code",V.Imports="imports"})(P=A.OutliningSpanKind||(A.OutliningSpanKind={}));var H;(function(V){V[V.JavaScript=0]="JavaScript",V[V.SourceMap=1]="SourceMap",V[V.Declaration=2]="Declaration"})(H=A.OutputFileType||(A.OutputFileType={}));var T;(function(V){V[V.None=0]="None",V[V.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",V[V.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",V[V.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",V[V.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",V[V.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",V[V.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition"})(T=A.EndOfLineState||(A.EndOfLineState={}));var v;(function(V){V[V.Punctuation=0]="Punctuation",V[V.Keyword=1]="Keyword",V[V.Operator=2]="Operator",V[V.Comment=3]="Comment",V[V.Whitespace=4]="Whitespace",V[V.Identifier=5]="Identifier",V[V.NumberLiteral=6]="NumberLiteral",V[V.BigIntLiteral=7]="BigIntLiteral",V[V.StringLiteral=8]="StringLiteral",V[V.RegExpLiteral=9]="RegExpLiteral"})(v=A.TokenClass||(A.TokenClass={}));var F;(function(V){V.unknown="",V.warning="warning",V.keyword="keyword",V.scriptElement="script",V.moduleElement="module",V.classElement="class",V.localClassElement="local class",V.interfaceElement="interface",V.typeElement="type",V.enumElement="enum",V.enumMemberElement="enum member",V.variableElement="var",V.localVariableElement="local var",V.functionElement="function",V.localFunctionElement="local function",V.memberFunctionElement="method",V.memberGetAccessorElement="getter",V.memberSetAccessorElement="setter",V.memberVariableElement="property",V.memberAccessorVariableElement="accessor",V.constructorImplementationElement="constructor",V.callSignatureElement="call",V.indexSignatureElement="index",V.constructSignatureElement="construct",V.parameterElement="parameter",V.typeParameterElement="type parameter",V.primitiveType="primitive type",V.label="label",V.alias="alias",V.constElement="const",V.letElement="let",V.directory="directory",V.externalModuleName="external module name",V.jsxAttribute="JSX attribute",V.string="string",V.link="link",V.linkName="link name",V.linkText="link text"})(F=A.ScriptElementKind||(A.ScriptElementKind={}));var y;(function(V){V.none="",V.publicMemberModifier="public",V.privateMemberModifier="private",V.protectedMemberModifier="protected",V.exportedModifier="export",V.ambientModifier="declare",V.staticModifier="static",V.abstractModifier="abstract",V.optionalModifier="optional",V.deprecatedModifier="deprecated",V.dtsModifier=".d.ts",V.tsModifier=".ts",V.tsxModifier=".tsx",V.jsModifier=".js",V.jsxModifier=".jsx",V.jsonModifier=".json",V.dmtsModifier=".d.mts",V.mtsModifier=".mts",V.mjsModifier=".mjs",V.dctsModifier=".d.cts",V.ctsModifier=".cts",V.cjsModifier=".cjs"})(y=A.ScriptElementKindModifier||(A.ScriptElementKindModifier={}));var S;(function(V){V.comment="comment",V.identifier="identifier",V.keyword="keyword",V.numericLiteral="number",V.bigintLiteral="bigint",V.operator="operator",V.stringLiteral="string",V.whiteSpace="whitespace",V.text="text",V.punctuation="punctuation",V.className="class name",V.enumName="enum name",V.interfaceName="interface name",V.moduleName="module name",V.typeParameterName="type parameter name",V.typeAliasName="type alias name",V.parameterName="parameter name",V.docCommentTagName="doc comment tag name",V.jsxOpenTagName="jsx open tag name",V.jsxCloseTagName="jsx close tag name",V.jsxSelfClosingTagName="jsx self closing tag name",V.jsxAttribute="jsx attribute",V.jsxText="jsx text",V.jsxAttributeStringLiteralValue="jsx attribute string literal value"})(S=A.ClassificationTypeNames||(A.ClassificationTypeNames={}));var U;(function(V){V[V.comment=1]="comment",V[V.identifier=2]="identifier",V[V.keyword=3]="keyword",V[V.numericLiteral=4]="numericLiteral",V[V.operator=5]="operator",V[V.stringLiteral=6]="stringLiteral",V[V.regularExpressionLiteral=7]="regularExpressionLiteral",V[V.whiteSpace=8]="whiteSpace",V[V.text=9]="text",V[V.punctuation=10]="punctuation",V[V.className=11]="className",V[V.enumName=12]="enumName",V[V.interfaceName=13]="interfaceName",V[V.moduleName=14]="moduleName",V[V.typeParameterName=15]="typeParameterName",V[V.typeAliasName=16]="typeAliasName",V[V.parameterName=17]="parameterName",V[V.docCommentTagName=18]="docCommentTagName",V[V.jsxOpenTagName=19]="jsxOpenTagName",V[V.jsxCloseTagName=20]="jsxCloseTagName",V[V.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",V[V.jsxAttribute=22]="jsxAttribute",V[V.jsxText=23]="jsxText",V[V.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",V[V.bigintLiteral=25]="bigintLiteral"})(U=A.ClassificationType||(A.ClassificationType={}))})(Oe||(Oe={}));var Oe;(function(A){A.scanner=A.createScanner(99,!0);var r;(function(xA){xA[xA.None=0]="None",xA[xA.Value=1]="Value",xA[xA.Type=2]="Type",xA[xA.Namespace=4]="Namespace",xA[xA.All=7]="All"})(r=A.SemanticMeaning||(A.SemanticMeaning={}));function t(xA){switch(xA.kind){case 257:return A.isInJSFile(xA)&&A.getJSDocEnumTag(xA)?7:1;case 166:case 205:case 169:case 168:case 299:case 300:case 171:case 170:case 173:case 174:case 175:case 259:case 215:case 216:case 295:case 288:return 1;case 165:case 261:case 262:case 184:return 2;case 348:return xA.name===void 0?3:2;case 302:case 260:return 3;case 264:return A.isAmbientModule(xA)||A.getModuleInstanceState(xA)===1?5:4;case 263:case 272:case 273:case 268:case 269:case 274:case 275:return 7;case 308:return 5}return 7}A.getMeaningFromDeclaration=t;function i(xA){xA=De(xA);var ve=xA.parent;return xA.kind===308?1:A.isExportAssignment(ve)||A.isExportSpecifier(ve)||A.isExternalModuleReference(ve)||A.isImportSpecifier(ve)||A.isImportClause(ve)||A.isImportEqualsDeclaration(ve)&&xA===ve.name?7:s(xA)?o(xA):A.isDeclarationName(xA)?t(ve):A.isEntityName(xA)&&A.findAncestor(xA,A.or(A.isJSDocNameReference,A.isJSDocLinkLike,A.isJSDocMemberName))?7:B(xA)?2:g(xA)?4:A.isTypeParameterDeclaration(ve)?(A.Debug.assert(A.isJSDocTemplateTag(ve.parent)),2):A.isLiteralTypeNode(ve)?3:1}A.getMeaningFromLocation=i;function o(xA){var ve=xA.kind===163?xA:A.isQualifiedName(xA.parent)&&xA.parent.right===xA?xA.parent:void 0;return ve&&ve.parent.kind===268?7:4}function s(xA){for(;xA.parent.kind===163;)xA=xA.parent;return A.isInternalModuleImportEqualsDeclaration(xA.parent)&&xA.parent.moduleReference===xA}A.isInRightSideOfInternalImportEqualsDeclaration=s;function g(xA){return E(xA)||p(xA)}function E(xA){var ve=xA,Ue=!0;if(ve.parent.kind===163){for(;ve.parent&&ve.parent.kind===163;)ve=ve.parent;Ue=ve.right===xA}return ve.parent.kind===180&&!Ue}function p(xA){var ve=xA,Ue=!0;if(ve.parent.kind===208){for(;ve.parent&&ve.parent.kind===208;)ve=ve.parent;Ue=ve.name===xA}if(!Ue&&ve.parent.kind===230&&ve.parent.parent.kind===294){var et=ve.parent.parent.parent;return et.kind===260&&ve.parent.parent.token===117||et.kind===261&&ve.parent.parent.token===94}return!1}function B(xA){switch(A.isRightSideOfQualifiedNameOrPropertyAccess(xA)&&(xA=xA.parent),xA.kind){case 108:return!A.isExpressionNode(xA);case 194:return!0}switch(xA.parent.kind){case 180:return!0;case 202:return!xA.parent.isTypeOf;case 230:return A.isPartOfTypeNode(xA.parent)}return!1}function m(xA,ve,Ue){return ve===void 0&&(ve=!1),Ue===void 0&&(Ue=!1),F(xA,A.isCallExpression,H,ve,Ue)}A.isCallExpressionTarget=m;function _(xA,ve,Ue){return ve===void 0&&(ve=!1),Ue===void 0&&(Ue=!1),F(xA,A.isNewExpression,H,ve,Ue)}A.isNewExpressionTarget=_;function x(xA,ve,Ue){return ve===void 0&&(ve=!1),Ue===void 0&&(Ue=!1),F(xA,A.isCallOrNewExpression,H,ve,Ue)}A.isCallOrNewExpressionTarget=x;function O(xA,ve,Ue){return ve===void 0&&(ve=!1),Ue===void 0&&(Ue=!1),F(xA,A.isTaggedTemplateExpression,T,ve,Ue)}A.isTaggedTemplateTag=O;function k(xA,ve,Ue){return ve===void 0&&(ve=!1),Ue===void 0&&(Ue=!1),F(xA,A.isDecorator,H,ve,Ue)}A.isDecoratorTarget=k;function P(xA,ve,Ue){return ve===void 0&&(ve=!1),Ue===void 0&&(Ue=!1),F(xA,A.isJsxOpeningLikeElement,v,ve,Ue)}A.isJsxOpeningLikeElementTagName=P;function H(xA){return xA.expression}function T(xA){return xA.tag}function v(xA){return xA.tagName}function F(xA,ve,Ue,et,jt){var Ji=et?S(xA):y(xA);return jt&&(Ji=A.skipOuterExpressions(Ji)),!!Ji&&!!Ji.parent&&ve(Ji.parent)&&Ue(Ji.parent)===Ji}function y(xA){return eA(xA)?xA.parent:xA}A.climbPastPropertyAccess=y;function S(xA){return eA(xA)||Y(xA)?xA.parent:xA}A.climbPastPropertyOrElementAccess=S;function U(xA,ve){for(;xA;){if(xA.kind===253&&xA.label.escapedText===ve)return xA.label;xA=xA.parent}}A.getTargetLabel=U;function V(xA,ve){return A.isPropertyAccessExpression(xA.expression)?xA.expression.name.text===ve:!1}A.hasPropertyAccessExpressionWithName=V;function wA(xA){var ve;return A.isIdentifier(xA)&&((ve=A.tryCast(xA.parent,A.isBreakOrContinueStatement))===null||ve===void 0?void 0:ve.label)===xA}A.isJumpStatementTarget=wA;function IA(xA){var ve;return A.isIdentifier(xA)&&((ve=A.tryCast(xA.parent,A.isLabeledStatement))===null||ve===void 0?void 0:ve.label)===xA}A.isLabelOfLabeledStatement=IA;function pA(xA){return IA(xA)||wA(xA)}A.isLabelName=pA;function oA(xA){var ve;return((ve=A.tryCast(xA.parent,A.isJSDocTag))===null||ve===void 0?void 0:ve.tagName)===xA}A.isTagName=oA;function cA(xA){var ve;return((ve=A.tryCast(xA.parent,A.isQualifiedName))===null||ve===void 0?void 0:ve.right)===xA}A.isRightSideOfQualifiedName=cA;function eA(xA){var ve;return((ve=A.tryCast(xA.parent,A.isPropertyAccessExpression))===null||ve===void 0?void 0:ve.name)===xA}A.isRightSideOfPropertyAccess=eA;function Y(xA){var ve;return((ve=A.tryCast(xA.parent,A.isElementAccessExpression))===null||ve===void 0?void 0:ve.argumentExpression)===xA}A.isArgumentExpressionOfElementAccess=Y;function q(xA){var ve;return((ve=A.tryCast(xA.parent,A.isModuleDeclaration))===null||ve===void 0?void 0:ve.name)===xA}A.isNameOfModuleDeclaration=q;function X(xA){var ve;return A.isIdentifier(xA)&&((ve=A.tryCast(xA.parent,A.isFunctionLike))===null||ve===void 0?void 0:ve.name)===xA}A.isNameOfFunctionDeclaration=X;function Z(xA){switch(xA.parent.kind){case 169:case 168:case 299:case 302:case 171:case 170:case 174:case 175:case 264:return A.getNameOfDeclaration(xA.parent)===xA;case 209:return xA.parent.argumentExpression===xA;case 164:return!0;case 198:return xA.parent.parent.kind===196;default:return!1}}A.isLiteralNameOfPropertyDeclarationOrIndexAccess=Z;function K(xA){return A.isExternalModuleImportEqualsDeclaration(xA.parent.parent)&&A.getExternalModuleImportEqualsDeclarationExpression(xA.parent.parent)===xA}A.isExpressionOfExternalModuleImportEqualsDeclaration=K;function J(xA){for(A.isJSDocTypeAlias(xA)&&(xA=xA.parent.parent);;){if(xA=xA.parent,!xA)return;switch(xA.kind){case 308:case 171:case 170:case 259:case 215:case 174:case 175:case 260:case 261:case 263:case 264:return xA}}}A.getContainerNode=J;function sA(xA){switch(xA.kind){case 308:return A.isExternalModule(xA)?"module":"script";case 264:return"module";case 260:case 228:return"class";case 261:return"interface";case 262:case 341:case 348:return"type";case 263:return"enum";case 257:return Dn(xA);case 205:return Dn(A.getRootDeclaration(xA));case 216:case 259:case 215:return"function";case 174:return"getter";case 175:return"setter";case 171:case 170:return"method";case 299:var ve=xA.initializer;return A.isFunctionLike(ve)?"method":"property";case 169:case 168:case 300:case 301:return"property";case 178:return"index";case 177:return"construct";case 176:return"call";case 173:case 172:return"constructor";case 165:return"type parameter";case 302:return"enum member";case 166:return A.hasSyntacticModifier(xA,16476)?"property":"parameter";case 268:case 273:case 278:case 271:case 277:return"alias";case 223:var Ue=A.getAssignmentDeclarationKind(xA),et=xA.right;switch(Ue){case 7:case 8:case 9:case 0:return"";case 1:case 2:var jt=sA(et);return jt===""?"const":jt;case 3:return A.isFunctionExpression(et)?"method":"property";case 4:return"property";case 5:return A.isFunctionExpression(et)?"method":"property";case 6:return"local class";default:return A.assertType(Ue),""}case 79:return A.isImportClause(xA.parent)?"alias":"";case 274:var Ji=sA(xA.expression);return Ji===""?"const":Ji;default:return""}function Dn(ta){return A.isVarConst(ta)?"const":A.isLet(ta)?"let":"var"}}A.getNodeKind=sA;function uA(xA){switch(xA.kind){case 108:return!0;case 79:return A.identifierIsThisKeyword(xA)&&xA.parent.kind===166;default:return!1}}A.isThis=uA;var BA=/^\/\/\/\s*=Ue.end}A.startEndContainsRange=fA;function M(xA,ve,Ue){return xA.pos<=ve&&xA.end>=Ue}A.rangeContainsStartEnd=M;function aA(xA,ve,Ue){return QA(xA.pos,xA.end,ve,Ue)}A.rangeOverlapsWithStartEnd=aA;function gA(xA,ve,Ue,et){return QA(xA.getStart(ve),xA.end,Ue,et)}A.nodeOverlapsWithStartEnd=gA;function QA(xA,ve,Ue,et){var jt=Math.max(xA,Ue),Ji=Math.min(ve,et);return jtve?1:ro(Co[Wa],Us,ts)?Co[Wa-1]&&ro(Co[Wa-1])?1:0:et&&Us===ve&&Co[Wa-1]&&Co[Wa-1].getEnd()===ve&&ro(Co[Wa-1])?1:-1});return Dn?{value:Dn}:Ma>=0&&Co[Ma]?(Ji=Co[Ma],"continue-outer"):{value:Ji}};A:for(;;){var qa=ta();if(typeof qa=="object")return qa.value;switch(qa){case"continue-outer":continue A}}function ro(Co,Ma,Wa){if(Wa??(Wa=Co.getEnd()),Wave))return!1;if(veUe.getStart(xA)&&vexA.end||Ji.pos===xA.end;return Dn&&qA(Ji,Ue)?et(Ji):void 0})}}A.findNextToken=Le;function ir(xA,ve,Ue,et){var jt=Ji(Ue||ve);return A.Debug.assert(!(jt&&we(jt))),jt;function Ji(Dn){if(Ye(Dn)&&Dn.kind!==1)return Dn;var ta=Dn.getChildren(ve),qa=A.binarySearchKey(ta,xA,function(ts,Us){return Us},function(ts,Us){return xA=ta[ts-1].end?0:1:-1});if(qa>=0&&ta[qa]){var ro=ta[qa];if(xA=xA||!qA(ro,ve)||we(ro);if(Ma){var Wa=$e(ta,qa,ve,Dn.kind);return Wa&&mr(Wa,ve)}else return Ji(ro)}}A.Debug.assert(Ue!==void 0||Dn.kind===308||Dn.kind===1||A.isJSDocCommentContainingNode(Dn));var gs=$e(ta,ta.length,ve,Dn.kind);return gs&&mr(gs,ve)}}A.findPrecedingToken=ir;function Ye(xA){return A.isToken(xA)&&!we(xA)}function mr(xA,ve){if(Ye(xA))return xA;var Ue=xA.getChildren(ve);if(Ue.length===0)return xA;var et=$e(Ue,Ue.length,ve,xA.kind);return et&&mr(et,ve)}function $e(xA,ve,Ue,et){for(var jt=ve-1;jt>=0;jt--){var Ji=xA[jt];if(we(Ji))jt===0&&(et===11||et===282)&&A.Debug.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(qA(xA[jt],Ue))return xA[jt]}}function xr(xA,ve,Ue){if(Ue===void 0&&(Ue=ir(ve,xA)),Ue&&A.isStringTextContainingNode(Ue)){var et=Ue.getStart(xA),jt=Ue.getEnd();if(etUe.getStart(xA)}A.isInTemplateString=LA;function ae(xA,ve){var Ue=Ze(xA,ve);return!!(A.isJsxText(Ue)||Ue.kind===18&&A.isJsxExpression(Ue.parent)&&A.isJsxElement(Ue.parent.parent)||Ue.kind===29&&A.isJsxOpeningLikeElement(Ue.parent)&&A.isJsxElement(Ue.parent.parent))}A.isInJSXText=ae;function We(xA,ve){function Ue(et){for(;et;)if(et.kind>=282&&et.kind<=291||et.kind===11||et.kind===29||et.kind===31||et.kind===79||et.kind===19||et.kind===18||et.kind===43)et=et.parent;else if(et.kind===281){if(ve>et.getStart(xA))return!0;et=et.parent}else return!1;return!1}return Ue(Ze(xA,ve))}A.isInsideJsxElement=We;function YA(xA,ve,Ue){var et=A.tokenToString(xA.kind),jt=A.tokenToString(ve),Ji=xA.getFullStart(),Dn=Ue.text.lastIndexOf(jt,Ji);if(Dn!==-1){if(Ue.text.lastIndexOf(et,Ji-1)=ve})}A.getPossibleGenericSignatures=er;function ur(xA,ve){if(ve.text.lastIndexOf("<",xA?xA.pos:ve.text.length)!==-1)for(var Ue=xA,et=0,jt=0;Ue;){switch(Ue.kind){case 29:if(Ue=ir(Ue.getFullStart(),ve),Ue&&Ue.kind===28&&(Ue=ir(Ue.getFullStart(),ve)),!Ue||!A.isIdentifier(Ue))return;if(!et)return A.isDeclarationName(Ue)?void 0:{called:Ue,nTypeArguments:jt};et--;break;case 49:et=3;break;case 48:et=2;break;case 31:et++;break;case 19:if(Ue=YA(Ue,18,ve),!Ue)return;break;case 21:if(Ue=YA(Ue,20,ve),!Ue)return;break;case 23:if(Ue=YA(Ue,22,ve),!Ue)return;break;case 27:jt++;break;case 38:case 79:case 10:case 8:case 9:case 110:case 95:case 112:case 94:case 141:case 24:case 51:case 57:case 58:break;default:if(A.isTypeNode(Ue))break;return}Ue=ir(Ue.getFullStart(),ve)}}A.getPossibleTypeArgumentsInfo=ur;function hr(xA,ve,Ue){return A.formatting.getRangeOfEnclosingComment(xA,ve,void 0,Ue)}A.isInComment=hr;function Fr(xA,ve){var Ue=Ze(xA,ve);return!!A.findAncestor(Ue,A.isJSDoc)}A.hasDocComment=Fr;function qA(xA,ve){return xA.kind===1?!!xA.jsDoc:xA.getWidth(ve)!==0}function oe(xA,ve){ve===void 0&&(ve=0);var Ue=[],et=A.isDeclaration(xA)?A.getCombinedNodeFlagsAlwaysIncludeJSDoc(xA)&~ve:0;return et&8&&Ue.push("private"),et&16&&Ue.push("protected"),et&4&&Ue.push("public"),(et&32||A.isClassStaticBlockDeclaration(xA))&&Ue.push("static"),et&256&&Ue.push("abstract"),et&1&&Ue.push("export"),et&8192&&Ue.push("deprecated"),xA.flags&16777216&&Ue.push("declare"),xA.kind===274&&Ue.push("export"),Ue.length>0?Ue.join(","):""}A.getNodeModifiers=oe;function Ge(xA){if(xA.kind===180||xA.kind===210)return xA.typeArguments;if(A.isFunctionLike(xA)||xA.kind===260||xA.kind===261)return xA.typeParameters}A.getTypeArgumentOrTypeParameterList=Ge;function nr(xA){return xA===2||xA===3}A.isComment=nr;function Or(xA){return!!(xA===10||xA===13||A.isTemplateLiteralKind(xA))}A.isStringOrRegularExpressionOrTemplateLiteral=Or;function tr(xA){return 18<=xA&&xA<=78}A.isPunctuation=tr;function Ur(xA,ve,Ue){return A.isTemplateLiteralKind(xA.kind)&&xA.getStart(Ue)=2||!!xA.noEmit}A.compilerOptionsIndicateEsModules=Ot;function _i(xA,ve){return{fileExists:function(Ue){return xA.fileExists(Ue)},getCurrentDirectory:function(){return ve.getCurrentDirectory()},readFile:A.maybeBind(ve,ve.readFile),useCaseSensitiveFileNames:A.maybeBind(ve,ve.useCaseSensitiveFileNames),getSymlinkCache:A.maybeBind(ve,ve.getSymlinkCache)||xA.getSymlinkCache,getModuleSpecifierCache:A.maybeBind(ve,ve.getModuleSpecifierCache),getPackageJsonInfoCache:function(){var Ue;return(Ue=xA.getModuleResolutionCache())===null||Ue===void 0?void 0:Ue.getPackageJsonInfoCache()},getGlobalTypingsCacheLocation:A.maybeBind(ve,ve.getGlobalTypingsCacheLocation),redirectTargetsMap:xA.redirectTargetsMap,getProjectReferenceRedirect:function(Ue){return xA.getProjectReferenceRedirect(Ue)},isSourceOfProjectReferenceRedirect:function(Ue){return xA.isSourceOfProjectReferenceRedirect(Ue)},getNearestAncestorDirectoryWithPackageJson:A.maybeBind(ve,ve.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:function(){return xA.getFileIncludeReasons()}}}A.createModuleSpecifierResolutionHost=_i;function ei(xA,ve){return pi(pi({},_i(xA,ve)),{getCommonSourceDirectory:function(){return xA.getCommonSourceDirectory()}})}A.getModuleSpecifierResolverHost=ei;function Yt(xA){return xA>=A.ModuleResolutionKind.Node16&&xA<=A.ModuleResolutionKind.NodeNext}A.moduleResolutionRespectsExports=Yt;function Xr(xA){return xA===A.ModuleResolutionKind.NodeJs||xA>=A.ModuleResolutionKind.Node16&&xA<=A.ModuleResolutionKind.NodeNext}A.moduleResolutionUsesNodeModules=Xr;function JA(xA,ve,Ue,et){return xA||ve&&ve.length?Ve(xA,ve,Ue,et):void 0}A.makeImportIfNecessary=JA;function Ve(xA,ve,Ue,et,jt){return A.factory.createImportDeclaration(void 0,xA||ve?A.factory.createImportClause(!!jt,xA,ve&&ve.length?A.factory.createNamedImports(ve):void 0):void 0,typeof Ue=="string"?XA(Ue,et):Ue,void 0)}A.makeImport=Ve;function XA(xA,ve){return A.factory.createStringLiteral(xA,ve===0)}A.makeStringLiteral=XA;var Gr;(function(xA){xA[xA.Single=0]="Single",xA[xA.Double=1]="Double"})(Gr=A.QuotePreference||(A.QuotePreference={}));function ot(xA,ve){return A.isStringDoubleQuoted(xA,ve)?1:0}A.quotePreferenceFromString=ot;function Sr(xA,ve){if(ve.quotePreference&&ve.quotePreference!=="auto")return ve.quotePreference==="single"?0:1;var Ue=xA.imports&&A.find(xA.imports,function(et){return A.isStringLiteral(et)&&!A.nodeIsSynthesized(et.parent)});return Ue?ot(Ue,xA):1}A.getQuotePreference=Sr;function Dr(xA){switch(xA){case 0:return"'";case 1:return'"';default:return A.Debug.assertNever(xA)}}A.getQuoteFromPreference=Dr;function Jr(xA){var ve=Yr(xA);return ve===void 0?void 0:A.unescapeLeadingUnderscores(ve)}A.symbolNameNoDefault=Jr;function Yr(xA){return xA.escapedName!=="default"?xA.escapedName:A.firstDefined(xA.declarations,function(ve){var Ue=A.getNameOfDeclaration(ve);return Ue&&Ue.kind===79?Ue.escapedText:void 0})}A.symbolEscapedNameNoDefault=Yr;function rt(xA){return A.isStringLiteralLike(xA)&&(A.isExternalModuleReference(xA.parent)||A.isImportDeclaration(xA.parent)||A.isRequireCall(xA.parent,!1)&&xA.parent.arguments[0]===xA||A.isImportCall(xA.parent)&&xA.parent.arguments[0]===xA)}A.isModuleSpecifierLike=rt;function Bt(xA){return A.isBindingElement(xA)&&A.isObjectBindingPattern(xA.parent)&&A.isIdentifier(xA.name)&&!xA.propertyName}A.isObjectBindingElementWithoutPropertyName=Bt;function le(xA,ve){var Ue=xA.getTypeAtLocation(ve.parent);return Ue&&xA.getPropertyOfType(Ue,ve.name.text)}A.getPropertySymbolFromBindingElement=le;function Ir(xA,ve,Ue){if(xA)for(;xA.parent;){if(A.isSourceFile(xA.parent)||!ut(Ue,xA.parent,ve))return xA;xA=xA.parent}}A.getParentNodeInSpan=Ir;function ut(xA,ve,Ue){return A.textSpanContainsPosition(xA,ve.getStart(Ue))&&ve.getEnd()<=A.textSpanEnd(xA)}function Ii(xA,ve){return A.canHaveModifiers(xA)?A.find(xA.modifiers,function(Ue){return Ue.kind===ve}):void 0}A.findModifier=Ii;function Zi(xA,ve,Ue,et){var jt=A.isArray(Ue)?Ue[0]:Ue,Ji=jt.kind===240?A.isRequireVariableStatement:A.isAnyImportSyntax,Dn=A.filter(ve.statements,Ji),ta=A.isArray(Ue)?A.stableSort(Ue,A.OrganizeImports.compareImportsOrRequireStatements):[Ue];if(!Dn.length)xA.insertNodesAtTopOfFile(ve,ta,et);else if(Dn&&A.OrganizeImports.importsAreSorted(Dn))for(var qa=0,ro=ta;qaxA&&Ma&&Ma!=="..."&&(A.isWhiteSpaceLike(Ma.charCodeAt(Ma.length-1))||ve.push(va(" ",A.SymbolDisplayPartKind.space)),ve.push(va("...",A.SymbolDisplayPartKind.punctuation))),ve},writeKeyword:function(Ma){return ta(Ma,A.SymbolDisplayPartKind.keyword)},writeOperator:function(Ma){return ta(Ma,A.SymbolDisplayPartKind.operator)},writePunctuation:function(Ma){return ta(Ma,A.SymbolDisplayPartKind.punctuation)},writeTrailingSemicolon:function(Ma){return ta(Ma,A.SymbolDisplayPartKind.punctuation)},writeSpace:function(Ma){return ta(Ma,A.SymbolDisplayPartKind.space)},writeStringLiteral:function(Ma){return ta(Ma,A.SymbolDisplayPartKind.stringLiteral)},writeParameter:function(Ma){return ta(Ma,A.SymbolDisplayPartKind.parameterName)},writeProperty:function(Ma){return ta(Ma,A.SymbolDisplayPartKind.propertyName)},writeLiteral:function(Ma){return ta(Ma,A.SymbolDisplayPartKind.stringLiteral)},writeSymbol:qa,writeLine:ro,write:Ji,writeComment:Ji,getText:function(){return""},getTextPos:function(){return 0},getColumn:function(){return 0},getLine:function(){return 0},isAtStartOfLine:function(){return!1},hasTrailingWhitespace:function(){return!1},hasTrailingComment:function(){return!1},rawWrite:A.notImplemented,getIndent:function(){return et},increaseIndent:function(){et++},decreaseIndent:function(){et--},clear:Co,trackSymbol:function(){return!1},reportInaccessibleThisError:A.noop,reportInaccessibleUniqueSymbolError:A.noop,reportPrivateInBaseOfClassExpression:A.noop};function Dn(){if(!(jt>xA)&&Ue){var Ma=A.getIndentString(et);Ma&&(jt+=Ma.length,ve.push(va(Ma,A.SymbolDisplayPartKind.space))),Ue=!1}}function ta(Ma,Wa){jt>xA||(Dn(),jt+=Ma.length,ve.push(va(Ma,Wa)))}function qa(Ma,Wa){jt>xA||(Dn(),jt+=Ma.length,ve.push(yo(Ma,Wa)))}function ro(){jt>xA||(jt+=1,ve.push(qr()),Ue=!0)}function Co(){ve=[],Ue=!0,et=0,jt=0}}function yo(xA,ve){return va(xA,Ue(ve));function Ue(et){var jt=et.flags;return jt&3?jn(et)?A.SymbolDisplayPartKind.parameterName:A.SymbolDisplayPartKind.localName:jt&4||jt&32768||jt&65536?A.SymbolDisplayPartKind.propertyName:jt&8?A.SymbolDisplayPartKind.enumMemberName:jt&16?A.SymbolDisplayPartKind.functionName:jt&32?A.SymbolDisplayPartKind.className:jt&64?A.SymbolDisplayPartKind.interfaceName:jt&384?A.SymbolDisplayPartKind.enumName:jt&1536?A.SymbolDisplayPartKind.moduleName:jt&8192?A.SymbolDisplayPartKind.methodName:jt&262144?A.SymbolDisplayPartKind.typeParameterName:jt&524288||jt&2097152?A.SymbolDisplayPartKind.aliasName:A.SymbolDisplayPartKind.text}}A.symbolPart=yo;function va(xA,ve){return{text:xA,kind:A.SymbolDisplayPartKind[ve]}}A.displayPart=va;function wi(){return va(" ",A.SymbolDisplayPartKind.space)}A.spacePart=wi;function bi(xA){return va(A.tokenToString(xA),A.SymbolDisplayPartKind.keyword)}A.keywordPart=bi;function ao(xA){return va(A.tokenToString(xA),A.SymbolDisplayPartKind.punctuation)}A.punctuationPart=ao;function Bo(xA){return va(A.tokenToString(xA),A.SymbolDisplayPartKind.operator)}A.operatorPart=Bo;function Uo(xA){return va(xA,A.SymbolDisplayPartKind.parameterName)}A.parameterNamePart=Uo;function oo(xA){return va(xA,A.SymbolDisplayPartKind.propertyName)}A.propertyNamePart=oo;function Xo(xA){var ve=A.stringToToken(xA);return ve===void 0?Bs(xA):bi(ve)}A.textOrKeywordPart=Xo;function Bs(xA){return va(xA,A.SymbolDisplayPartKind.text)}A.textPart=Bs;function hs(xA){return va(xA,A.SymbolDisplayPartKind.aliasName)}A.typeAliasNamePart=hs;function Va(xA){return va(xA,A.SymbolDisplayPartKind.typeParameterName)}A.typeParameterNamePart=Va;function xe(xA){return va(xA,A.SymbolDisplayPartKind.linkText)}A.linkTextPart=xe;function ze(xA,ve){return{text:xA,kind:A.SymbolDisplayPartKind[A.SymbolDisplayPartKind.linkName],target:{fileName:A.getSourceFileOfNode(ve).fileName,textSpan:UA(ve)}}}A.linkNamePart=ze;function Lt(xA){return va(xA,A.SymbolDisplayPartKind.link)}A.linkPart=Lt;function en(xA,ve){var Ue,et=A.isJSDocLink(xA)?"link":A.isJSDocLinkCode(xA)?"linkcode":"linkplain",jt=[Lt("{@".concat(et," "))];if(!xA.name)xA.text&&jt.push(xe(xA.text));else{var Ji=ve?.getSymbolAtLocation(xA.name),Dn=Ia(xA.text),ta=A.getTextOfNode(xA.name)+xA.text.slice(0,Dn),qa=hn(xA.text.slice(Dn)),ro=Ji?.valueDeclaration||((Ue=Ji?.declarations)===null||Ue===void 0?void 0:Ue[0]);ro?(jt.push(ze(ta,ro)),qa&&jt.push(xe(qa))):jt.push(xe(ta+(Dn||qa.indexOf("://")===0?"":" ")+qa))}return jt.push(Lt("}")),jt}A.buildLinkParts=en;function hn(xA){var ve=0;if(xA.charCodeAt(ve++)===124){for(;ve"&&ve--,Ue++,!ve)return Ue;return 0}var ne=`\r -`;function _r(xA,ve){var Ue;return ve?.newLineCharacter||((Ue=xA.getNewLine)===null||Ue===void 0?void 0:Ue.call(xA))||ne}A.getNewLineOrDefaultFromHost=_r;function qr(){return va(` -`,A.SymbolDisplayPartKind.lineBreak)}A.lineBreakPart=qr;function $r(xA){try{return xA(Ho),Ho.displayParts()}finally{Ho.clear()}}A.mapToDisplayParts=$r;function ie(xA,ve,Ue,et){return et===void 0&&(et=0),$r(function(jt){xA.writeType(ve,Ue,et|1024|16384,jt)})}A.typeToDisplayParts=ie;function ye(xA,ve,Ue,et,jt){return jt===void 0&&(jt=0),$r(function(Ji){xA.writeSymbol(ve,Ue,et,jt|8,Ji)})}A.symbolToDisplayParts=ye;function Re(xA,ve,Ue,et){return et===void 0&&(et=0),et|=25632,$r(function(jt){xA.writeSignature(ve,Ue,et,void 0,jt)})}A.signatureToDisplayParts=Re;function rr(xA,ve){var Ue=ve.getSourceFile();return $r(function(et){var jt=A.createPrinter({removeComments:!0,omitTrailingSemicolon:!0});jt.writeNode(4,xA,Ue,et)})}A.nodeToDisplayParts=rr;function zr(xA){return!!xA.parent&&A.isImportOrExportSpecifier(xA.parent)&&xA.parent.propertyName===xA}A.isImportOrExportSpecifierName=zr;function Ft(xA,ve){return A.ensureScriptKind(xA,ve.getScriptKind&&ve.getScriptKind(xA))}A.getScriptKind=Ft;function Gt(xA,ve){for(var Ue=xA;gn(Ue)||Tt(Ue)&&Ue.target;)Tt(Ue)&&Ue.target?Ue=Ue.target:Ue=A.skipAlias(Ue,ve);return Ue}A.getSymbolTarget=Gt;function Tt(xA){return(xA.flags&33554432)!==0}function gn(xA){return(xA.flags&2097152)!==0}function kn(xA,ve){return A.getSymbolId(A.skipAlias(xA,ve))}A.getUniqueSymbolId=kn;function ra(xA,ve){for(;A.isWhiteSpaceLike(xA.charCodeAt(ve));)ve+=1;return ve}A.getFirstNonSpaceCharacterPosition=ra;function Vn(xA,ve){for(;ve>-1&&A.isWhiteSpaceSingleLine(xA.charCodeAt(ve));)ve-=1;return ve+1}A.getPrecedingNonSpaceCharacterPosition=Vn;function ba(xA,ve){ve===void 0&&(ve=!0);var Ue=xA&&Qs(xA);return Ue&&!ve&&$s(Ue),Ue}A.getSynthesizedDeepClone=ba;function Ts(xA,ve,Ue){var et=Ue(xA);return et?A.setOriginalNode(et,xA):et=Qs(xA,Ue),et&&!ve&&$s(et),et}A.getSynthesizedDeepCloneWithReplacements=Ts;function Qs(xA,ve){var Ue=ve?function(Dn){return Ts(Dn,!0,ve)}:ba,et=ve?function(Dn){return Dn&&Vc(Dn,!0,ve)}:function(Dn){return Dn&&Gs(Dn)},jt=A.visitEachChild(xA,Ue,A.nullTransformationContext,et,Ue);if(jt===xA){var Ji=A.isStringLiteral(xA)?A.setOriginalNode(A.factory.createStringLiteralFromNode(xA),xA):A.isNumericLiteral(xA)?A.setOriginalNode(A.factory.createNumericLiteral(xA.text,xA.numericLiteralFlags),xA):A.factory.cloneNode(xA);return A.setTextRange(Ji,xA)}return jt.parent=void 0,jt}function Gs(xA,ve){return ve===void 0&&(ve=!0),xA&&A.factory.createNodeArray(xA.map(function(Ue){return ba(Ue,ve)}),xA.hasTrailingComma)}A.getSynthesizedDeepClones=Gs;function Vc(xA,ve,Ue){return A.factory.createNodeArray(xA.map(function(et){return Ts(et,ve,Ue)}),xA.hasTrailingComma)}A.getSynthesizedDeepClonesWithReplacements=Vc;function $s(xA){ys(xA),zc(xA)}A.suppressLeadingAndTrailingTrivia=$s;function ys(xA){Bc(xA,512,sl)}A.suppressLeadingTrivia=ys;function zc(xA){Bc(xA,1024,A.getLastChild)}A.suppressTrailingTrivia=zc;function Rc(xA,ve){var Ue=xA.getSourceFile(),et=Ue.text;_l(xA,et)?bs(xA,ve,Ue):xs(xA,ve,Ue),Tc(xA,ve,Ue)}A.copyComments=Rc;function _l(xA,ve){for(var Ue=xA.getFullStart(),et=xA.getStart(),jt=Ue;jt=0),Ji}A.getRenameLocation=kl;function bs(xA,ve,Ue,et,jt){A.forEachLeadingCommentRange(Ue.text,xA.pos,yA(ve,Ue,et,jt,A.addSyntheticLeadingComment))}A.copyLeadingComments=bs;function Tc(xA,ve,Ue,et,jt){A.forEachTrailingCommentRange(Ue.text,xA.end,yA(ve,Ue,et,jt,A.addSyntheticTrailingComment))}A.copyTrailingComments=Tc;function xs(xA,ve,Ue,et,jt){A.forEachTrailingCommentRange(Ue.text,xA.pos,yA(ve,Ue,et,jt,A.addSyntheticLeadingComment))}A.copyTrailingAsLeadingComments=xs;function yA(xA,ve,Ue,et,jt){return function(Ji,Dn,ta,qa){ta===3?(Ji+=2,Dn-=2):Ji+=2,jt(xA,Ue||ta,ve.text.slice(Ji,Dn),et!==void 0?et:qa)}}function je(xA,ve){if(A.startsWith(xA,ve))return 0;var Ue=xA.indexOf(" "+ve);return Ue===-1&&(Ue=xA.indexOf("."+ve)),Ue===-1&&(Ue=xA.indexOf('"'+ve)),Ue===-1?-1:Ue+1}function br(xA){return A.isBinaryExpression(xA)&&xA.operatorToken.kind===27||A.isObjectLiteralExpression(xA)||A.isAsExpression(xA)&&A.isObjectLiteralExpression(xA.expression)}A.needsParentheses=br;function mt(xA,ve){var Ue=xA.parent;switch(Ue.kind){case 211:return ve.getContextualType(Ue);case 223:{var et=Ue,jt=et.left,Ji=et.operatorToken,Dn=et.right;return Pi(Ji.kind)?ve.getTypeAtLocation(xA===Dn?jt:Dn):ve.getContextualType(xA)}case 292:return Ue.expression===xA?Fn(Ue,ve):void 0;default:return ve.getContextualType(xA)}}A.getContextualTypeFromParent=mt;function ai(xA,ve,Ue){var et=Sr(xA,ve),jt=JSON.stringify(Ue);return et===0?"'".concat(A.stripQuotes(jt).replace(/'/g,"\\'").replace(/\\"/g,'"'),"'"):jt}A.quote=ai;function Pi(xA){switch(xA){case 36:case 34:case 37:case 35:return!0;default:return!1}}A.isEqualityOperatorKind=Pi;function Bi(xA){switch(xA.kind){case 10:case 14:case 225:case 212:return!0;default:return!1}}A.isStringLiteralOrTemplate=Bi;function ji(xA){return!!xA.getStringIndexType()||!!xA.getNumberIndexType()}A.hasIndexSignature=ji;function Fn(xA,ve){return ve.getTypeAtLocation(xA.parent.parent.expression)}A.getSwitchedType=Fn,A.ANONYMOUS="anonymous function";function vn(xA,ve,Ue,et){var jt=Ue.getTypeChecker(),Ji=!0,Dn=function(){return Ji=!1},ta=jt.typeToTypeNode(xA,ve,1,{trackSymbol:function(qa,ro,Co){return Ji=Ji&&jt.isSymbolAccessible(qa,ro,Co,!1).accessibility===0,!Ji},reportInaccessibleThisError:Dn,reportPrivateInBaseOfClassExpression:Dn,reportInaccessibleUniqueSymbolError:Dn,moduleResolverHost:ei(Ue,et)});return Ji?ta:void 0}A.getTypeNodeIfAccessible=vn;function aa(xA){return xA===176||xA===177||xA===178||xA===168||xA===170}function se(xA){return xA===259||xA===173||xA===171||xA===174||xA===175}function jr(xA){return xA===264}function qe(xA){return xA===240||xA===241||xA===243||xA===248||xA===249||xA===250||xA===254||xA===256||xA===169||xA===262||xA===269||xA===268||xA===275||xA===267||xA===274}A.syntaxRequiresTrailingSemicolonOrASI=qe,A.syntaxMayBeASICandidate=A.or(aa,se,jr,qe);function la(xA,ve){var Ue=xA.getLastToken(ve);if(Ue&&Ue.kind===26)return!1;if(aa(xA.kind)){if(Ue&&Ue.kind===27)return!1}else if(jr(xA.kind)){var et=A.last(xA.getChildren(ve));if(et&&A.isModuleBlock(et))return!1}else if(se(xA.kind)){var et=A.last(xA.getChildren(ve));if(et&&A.isFunctionBlock(et))return!1}else if(!qe(xA.kind))return!1;if(xA.kind===243)return!0;var jt=A.findAncestor(xA,function(qa){return!qa.parent}),Ji=Le(xA,jt,ve);if(!Ji||Ji.kind===19)return!0;var Dn=ve.getLineAndCharacterOfPosition(xA.getEnd()).line,ta=ve.getLineAndCharacterOfPosition(Ji.getStart(ve)).line;return Dn!==ta}function Ba(xA,ve,Ue){var et=A.findAncestor(ve,function(jt){return jt.end!==xA?"quit":A.syntaxMayBeASICandidate(jt.kind)});return!!et&&la(et,Ue)}A.positionIsASICandidate=Ba;function po(xA){var ve=0,Ue=0,et=5;return A.forEachChild(xA,function jt(Ji){if(qe(Ji.kind)){var Dn=Ji.getLastToken(xA);Dn?.kind===26?ve++:Ue++}else if(aa(Ji.kind)){var Dn=Ji.getLastToken(xA);if(Dn?.kind===26)ve++;else if(Dn&&Dn.kind!==27){var ta=A.getLineAndCharacterOfPosition(xA,Dn.getStart(xA)).line,qa=A.getLineAndCharacterOfPosition(xA,A.getSpanOfTokenAtPosition(xA,Dn.end).start).line;ta!==qa&&Ue++}}return ve+Ue>=et?!0:A.forEachChild(Ji,jt)}),ve===0&&Ue<=1?!0:ve/Ue>1/et}A.probablyUsesSemicolons=po;function Ds(xA,ve){return Kc(xA,xA.getDirectories,ve)||[]}A.tryGetDirectories=Ds;function Ac(xA,ve,Ue,et,jt){return Kc(xA,xA.readDirectory,ve,Ue,et,jt)||A.emptyArray}A.tryReadDirectory=Ac;function gc(xA,ve){return Kc(xA,xA.fileExists,ve)}A.tryFileExists=gc;function Xl(xA,ve){return Nc(function(){return A.directoryProbablyExists(ve,xA)})||!1}A.tryDirectoryExists=Xl;function Nc(xA){try{return xA()}catch{return}}A.tryAndIgnoreErrors=Nc;function Kc(xA,ve){for(var Ue=[],et=2;et"u")return!0;var xl=A.stripQuotes(Wa.getName());return ro(xl)?!0:Ji(Us)||Ji(xl)}function ta(Wa,gs){if(!et.length)return!0;var ts=Co(Wa.fileName,gs);return ts?Ji(ts):!0}function qa(Wa){return!et.length||ro(Wa)||A.pathIsRelative(Wa)||A.isRootedDiskPath(Wa)?!0:Ji(Wa)}function ro(Wa){return!!(A.isSourceFileJS(xA)&&A.JsTyping.nodeCoreModules.has(Wa)&&(jt===void 0&&(jt=Ea(xA)),jt))}function Co(Wa,gs){if(A.stringContains(Wa,"node_modules")){var ts=A.moduleSpecifiers.getNodeModulesPackageName(Ue.getCompilationSettings(),xA,Wa,gs,ve);if(ts&&!A.pathIsRelative(ts)&&!A.isRootedDiskPath(ts))return Ma(ts)}}function Ma(Wa){var gs=A.getPathComponents(A.getPackageNameFromTypesPackageName(Wa)).slice(1);return A.startsWith(gs[0],"@")?"".concat(gs[0],"/").concat(gs[1]):gs[0]}}A.createPackageJsonImportFilter=Li;function mi(xA){try{return JSON.parse(xA)}catch{return}}function Ea(xA){return A.some(xA.imports,function(ve){var Ue=ve.text;return A.JsTyping.nodeCoreModules.has(Ue)})}A.consumesNodeCoreModules=Ea;function Mo(xA){return A.contains(A.getPathComponents(xA),"node_modules")}A.isInsideNodeModules=Mo;function es(xA){return xA.file!==void 0&&xA.start!==void 0&&xA.length!==void 0}A.isDiagnosticWithLocation=es;function Os(xA,ve){var Ue=UA(xA),et=A.binarySearchKey(ve,Ue,A.identity,A.compareTextSpans);if(et>=0){var jt=ve[et];return A.Debug.assertEqual(jt.file,xA.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),A.cast(jt,es)}}A.findDiagnosticForNode=Os;function _s(xA,ve){var Ue,et=A.binarySearchKey(ve,xA.start,function(ta){return ta.start},A.compareValues);for(et<0&&(et=~et);((Ue=ve[et-1])===null||Ue===void 0?void 0:Ue.start)===xA.start;)et--;for(var jt=[],Ji=A.textSpanEnd(xA);;){var Dn=A.tryCast(ve[et],es);if(!Dn||Dn.start>Ji)break;A.textSpanContainsTextSpan(xA,Dn)&&jt.push(Dn),et++}return jt}A.getDiagnosticsWithinSpan=_s;function cr(xA){var ve=xA.startPosition,Ue=xA.endPosition;return A.createTextSpanFromBounds(ve,Ue===void 0?ve:Ue)}A.getRefactorContextSpan=cr;function lr(xA,ve){var Ue=Ze(xA,ve.start),et=A.findAncestor(Ue,function(jt){return jt.getStart(xA)A.textSpanEnd(ve)?"quit":A.isExpression(jt)&&zt(ve,UA(jt,xA))});return et}A.getFixableErrorSpanExpression=lr;function Zr(xA,ve,Ue){return Ue===void 0&&(Ue=A.identity),xA?A.isArray(xA)?Ue(A.map(xA,ve)):ve(xA,0):void 0}A.mapOneOrMany=Zr;function xt(xA){return A.isArray(xA)?A.first(xA):xA}A.firstOrOnly=xt;function Wt(xA,ve){if(Gi(xA)){var Ue=di(xA);if(Ue)return Ue;var et=A.codefix.moduleSymbolToValidIdentifier(Yi(xA),ve,!1),jt=A.codefix.moduleSymbolToValidIdentifier(Yi(xA),ve,!0);return et===jt?et:[et,jt]}return xA.name}A.getNamesForExportedSymbol=Wt;function Kt(xA,ve,Ue){return Gi(xA)?di(xA)||A.codefix.moduleSymbolToValidIdentifier(Yi(xA),ve,!!Ue):xA.name}A.getNameForExportedSymbol=Kt;function Gi(xA){return!(xA.flags&33554432)&&(xA.escapedName==="export="||xA.escapedName==="default")}function di(xA){return A.firstDefined(xA.declarations,function(ve){var Ue;return A.isExportAssignment(ve)?(Ue=A.tryCast(A.skipOuterExpressions(ve.expression),A.isIdentifier))===null||Ue===void 0?void 0:Ue.text:void 0})}function Yi(xA){var ve;return A.Debug.checkDefined(xA.parent,"Symbol parent was undefined. Flags: ".concat(A.Debug.formatSymbolFlags(xA.flags),". ")+"Declarations: ".concat((ve=xA.declarations)===null||ve===void 0?void 0:ve.map(function(Ue){var et=A.Debug.formatSyntaxKind(Ue.kind),jt=A.isInJSFile(Ue),Ji=Ue.expression;return(jt?"[JS]":"")+et+(Ji?" (expression: ".concat(A.Debug.formatSyntaxKind(Ji.kind),")"):"")}).join(", "),"."))}function ha(xA,ve,Ue){var et=ve.length;if(et+Ue>xA.length)return!1;for(var jt=0;jtiA&&v.set(J,AA)}else v.set(J,AA)}}}var _A=X===1,fA=_A&&A.getLocalSymbolForExportDefault(cA)||cA,M=X===0||A.isExternalModuleSymbol(fA)?A.unescapeLeadingUnderscores(eA):A.getNamesForExportedSymbol(fA,void 0),aA=typeof M=="string"?M:M[0],gA=typeof M=="string"?void 0:M[1],QA=A.stripQuotes(Y.name),mA=P++,FA=A.skipAlias(cA,K),SA=cA.flags&33554432?void 0:cA,ce=Y.flags&33554432?void 0:Y;(!SA||!ce)&&T.set(mA,[cA,Y]),H.add(U(aA,cA,A.isExternalModuleNameRelative(QA)?void 0:QA,K),{id:mA,symbolTableKey:eA,symbolName:aA,capitalizedSymbolName:gA,moduleName:QA,moduleFile:q,moduleFileName:q?.fileName,packageName:J,exportKind:X,targetFlags:FA.flags,isFromPackageJson:Z,symbol:SA,moduleSymbol:ce})},get:function(oA,cA){if(oA===F){var eA=H.get(cA);return eA?.map(S)}},search:function(oA,cA,eA,Y){if(oA===F)return A.forEachEntry(H,function(q,X){var Z=V(X),K=Z.symbolName,J=Z.ambientModuleName,sA=cA&&q[0].capitalizedSymbolName||K;if(eA(sA,q[0].targetFlags)){var uA=q.map(S),BA=uA.filter(function(z,AA){return pA(z,q[AA].packageName)});if(BA.length){var CA=Y(BA,sA,!!J,X);if(CA!==void 0)return CA}}})},releaseSymbols:function(){T.clear()},onFileChanged:function(oA,cA,eA){return wA(oA)&&wA(cA)?!1:F&&F!==cA.path||eA&&A.consumesNodeCoreModules(oA)!==A.consumesNodeCoreModules(cA)||!A.arrayIsEqualTo(oA.moduleAugmentations,cA.moduleAugmentations)||!IA(oA,cA)?(y.clear(),!0):(F=cA.path,!1)}};return A.Debug.isDebugging&&Object.defineProperty(y,"__cache",{get:function(){return H}}),y;function S(oA){if(oA.symbol&&oA.moduleSymbol)return oA;var cA=oA.id,eA=oA.exportKind,Y=oA.targetFlags,q=oA.isFromPackageJson,X=oA.moduleFileName,Z=T.get(cA)||A.emptyArray,K=Z[0],J=Z[1];if(K&&J)return{symbol:K,moduleSymbol:J,moduleFileName:X,exportKind:eA,targetFlags:Y,isFromPackageJson:q};var sA=(q?k.getPackageJsonAutoImportProvider():k.getCurrentProgram()).getTypeChecker(),uA=oA.moduleSymbol||J||A.Debug.checkDefined(oA.moduleFile?sA.getMergedSymbol(oA.moduleFile.symbol):sA.tryFindAmbientModule(oA.moduleName)),BA=oA.symbol||K||A.Debug.checkDefined(eA===2?sA.resolveExternalModuleSymbol(uA):sA.tryGetMemberInModuleExportsAndProperties(A.unescapeLeadingUnderscores(oA.symbolTableKey),uA),"Could not find symbol '".concat(oA.symbolName,"' by key '").concat(oA.symbolTableKey,"' in module ").concat(uA.name));return T.set(cA,[BA,uA]),{symbol:BA,moduleSymbol:uA,moduleFileName:X,exportKind:eA,targetFlags:Y,isFromPackageJson:q}}function U(oA,cA,eA,Y){var q=eA||"";return"".concat(oA,"|").concat(A.getSymbolId(A.skipAlias(cA,Y)),"|").concat(q)}function V(oA){var cA=oA.substring(0,oA.indexOf("|")),eA=oA.substring(oA.lastIndexOf("|")+1),Y=eA===""?void 0:eA;return{symbolName:cA,ambientModuleName:Y}}function wA(oA){return!oA.commonJsModuleIndicator&&!oA.externalModuleIndicator&&!oA.moduleAugmentations&&!oA.ambientModuleNames}function IA(oA,cA){if(!A.arrayIsEqualTo(oA.ambientModuleNames,cA.ambientModuleNames))return!1;for(var eA=-1,Y=-1,q=function(sA){var uA=function(BA){return A.isNonGlobalAmbientModule(BA)&&BA.name.text===sA};if(eA=A.findIndex(oA.statements,uA,eA+1),Y=A.findIndex(cA.statements,uA,Y+1),oA.statements[eA]!==cA.statements[Y])return{value:!1}},X=0,Z=cA.ambientModuleNames;X=wA.length){var BA=i(S,oA,A.lastOrUndefined(eA));BA!==void 0&&(K=BA)}}while(oA!==1);function CA(){switch(oA){case 43:case 68:!t[cA]&&S.reScanSlashToken()===13&&(oA=13);break;case 29:cA===79&&sA++;break;case 31:sA>0&&sA--;break;case 131:case 152:case 148:case 134:case 153:sA>0&&!pA&&(oA=79);break;case 15:eA.push(oA);break;case 18:eA.length>0&&eA.push(oA);break;case 19:if(eA.length>0){var z=A.lastOrUndefined(eA);z===15?(oA=S.reScanTemplateToken(!1),oA===17?eA.pop():A.Debug.assertEqual(oA,16,"Should have been a template middle.")):(A.Debug.assertEqual(z,18,"Should have been an open brace"),eA.pop())}break;default:if(!A.isKeyword(oA))break;(cA===24||A.isKeyword(cA)&&A.isKeyword(oA)&&!E(cA,oA))&&(oA=79)}}return{endOfLineState:K,spans:J}}return{getClassificationsForLine:U,getEncodedLexicalClassifications:V}}A.createClassifier=r;var t=A.arrayToNumericMap([79,10,8,9,13,108,45,46,21,23,19,110,95],function(S){return S},function(){return!0});function i(S,U,V){switch(U){case 10:{if(!S.isUnterminated())return;for(var wA=S.getTokenText(),IA=wA.length-1,pA=0;wA.charCodeAt(IA-pA)===92;)pA++;return pA&1?wA.charCodeAt(0)===34?3:2:void 0}case 3:return S.isUnterminated()?1:void 0;default:if(A.isTemplateLiteralKind(U)){if(!S.isUnterminated())return;switch(U){case 17:return 5;case 14:return 4;default:return A.Debug.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+U)}}return V===15?6:void 0}}function o(S,U,V,wA,IA){if(wA!==8){S===0&&V>0&&(S+=V);var pA=U-S;pA>0&&IA.push(S-V,pA,wA)}}function s(S,U){for(var V=[],wA=S.spans,IA=0,pA=0;pA=0){var Y=oA-IA;Y>0&&V.push({length:Y,classification:A.TokenClass.Whitespace})}V.push({length:cA,classification:g(eA)}),IA=oA+cA}var q=U.length-IA;return q>0&&V.push({length:q,classification:A.TokenClass.Whitespace}),{entries:V,finalLexState:S.endOfLineState}}function g(S){switch(S){case 1:return A.TokenClass.Comment;case 3:return A.TokenClass.Keyword;case 4:return A.TokenClass.NumberLiteral;case 25:return A.TokenClass.BigIntLiteral;case 5:return A.TokenClass.Operator;case 6:return A.TokenClass.StringLiteral;case 8:return A.TokenClass.Whitespace;case 10:return A.TokenClass.Punctuation;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return A.TokenClass.Identifier;default:return}}function E(S,U){if(!A.isAccessibilityModifier(S))return!0;switch(U){case 137:case 151:case 135:case 124:case 127:return!0;default:return!1}}function p(S){switch(S){case 3:return{prefix:`"\\ -`};case 2:return{prefix:`'\\ -`};case 1:return{prefix:`/* -`};case 4:return{prefix:"`\n"};case 5:return{prefix:`} -`,pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return A.Debug.assertNever(S)}}function B(S){switch(S){case 41:case 43:case 44:case 39:case 40:case 47:case 48:case 49:case 29:case 31:case 32:case 33:case 102:case 101:case 128:case 150:case 34:case 35:case 36:case 37:case 50:case 52:case 51:case 55:case 56:case 74:case 73:case 78:case 70:case 71:case 72:case 64:case 65:case 66:case 68:case 69:case 63:case 27:case 60:case 75:case 76:case 77:return!0;default:return!1}}function m(S){switch(S){case 39:case 40:case 54:case 53:case 45:case 46:return!0;default:return!1}}function _(S){if(A.isKeyword(S))return 3;if(B(S)||m(S))return 5;if(S>=18&&S<=78)return 10;switch(S){case 8:return 4;case 9:return 25;case 10:return 6;case 13:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;case 79:default:return A.isTemplateLiteralKind(S)?6:2}}function x(S,U,V,wA,IA){return v(k(S,U,V,wA,IA))}A.getSemanticClassifications=x;function O(S,U){switch(U){case 264:case 260:case 261:case 259:case 228:case 215:case 216:S.throwIfCancellationRequested()}}function k(S,U,V,wA,IA){var pA=[];return V.forEachChild(function cA(eA){if(!(!eA||!A.textSpanIntersectsWith(IA,eA.pos,eA.getFullWidth()))){if(O(U,eA.kind),A.isIdentifier(eA)&&!A.nodeIsMissing(eA)&&wA.has(eA.escapedText)){var Y=S.getSymbolAtLocation(eA),q=Y&&P(Y,A.getMeaningFromLocation(eA),S);q&&oA(eA.getStart(V),eA.getEnd(),q)}eA.forEachChild(cA)}}),{spans:pA,endOfLineState:0};function oA(cA,eA,Y){var q=eA-cA;A.Debug.assert(q>0,"Classification had non-positive length of ".concat(q)),pA.push(cA),pA.push(q),pA.push(Y)}}A.getEncodedSemanticClassifications=k;function P(S,U,V){var wA=S.getFlags();if(wA&2885600)return wA&32?11:wA&384?12:wA&524288?16:wA&1536?U&4||U&1&&H(S)?14:void 0:wA&2097152?P(V.getAliasedSymbol(S),U,V):U&2?wA&64?13:wA&262144?15:void 0:void 0}function H(S){return A.some(S.declarations,function(U){return A.isModuleDeclaration(U)&&A.getModuleInstanceState(U)===1})}function T(S){switch(S){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function v(S){A.Debug.assert(S.spans.length%3===0);for(var U=S.spans,V=[],wA=0;wA])*)(\/>)?)?/im,M=/(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/img,aA=U.text.substr(iA,_A),gA=fA.exec(aA);if(!gA||!gA[3]||!(gA[3]in A.commentPragmas))return!1;var QA=iA;X(QA,gA[1].length),QA+=gA[1].length,eA(QA,gA[2].length,10),QA+=gA[2].length,eA(QA,gA[3].length,21),QA+=gA[3].length;for(var mA=gA[4],FA=QA;;){var SA=M.exec(mA);if(!SA)break;var ce=QA+SA.index+SA[1].length;ce>FA&&(X(FA,ce-FA),FA=ce),eA(FA,SA[2].length,22),FA+=SA[2].length,SA[3].length&&(X(FA,SA[3].length),FA+=SA[3].length),eA(FA,SA[4].length,5),FA+=SA[4].length,SA[5].length&&(X(FA,SA[5].length),FA+=SA[5].length),eA(FA,SA[6].length,24),FA+=SA[6].length}QA+=gA[4].length,QA>FA&&X(FA,QA-FA),gA[5]&&(eA(QA,gA[5].length,10),QA+=gA[5].length);var re=iA+_A;return QA=0),M>0){var aA=_A||z(iA.kind,iA);aA&&eA(fA,M,aA)}return!0}function CA(iA){switch(iA.parent&&iA.parent.kind){case 283:if(iA.parent.tagName===iA)return 19;break;case 284:if(iA.parent.tagName===iA)return 20;break;case 282:if(iA.parent.tagName===iA)return 21;break;case 288:if(iA.parent.name===iA)return 22;break}}function z(iA,_A){if(A.isKeyword(iA))return 3;if((iA===29||iA===31)&&_A&&A.getTypeArgumentOrTypeParameterList(_A.parent))return 10;if(A.isPunctuation(iA)){if(_A){var fA=_A.parent;if(iA===63&&(fA.kind===257||fA.kind===169||fA.kind===166||fA.kind===288)||fA.kind===223||fA.kind===221||fA.kind===222||fA.kind===224)return 5}return 10}else{if(iA===8)return 4;if(iA===9)return 25;if(iA===10)return _A&&_A.parent.kind===288?24:6;if(iA===13)return 6;if(A.isTemplateLiteralKind(iA))return 6;if(iA===11)return 23;if(iA===79){if(_A){switch(_A.parent.kind){case 260:return _A.parent.name===_A?11:void 0;case 165:return _A.parent.name===_A?15:void 0;case 261:return _A.parent.name===_A?13:void 0;case 263:return _A.parent.name===_A?12:void 0;case 264:return _A.parent.name===_A?14:void 0;case 166:return _A.parent.name===_A?A.isThisIdentifier(_A)?3:17:void 0}if(A.isConstTypeReference(_A.parent))return 3}return 2}}}function AA(iA){if(iA&&A.decodedTextSpanIntersectsWith(wA,IA,iA.pos,iA.getFullWidth())){O(S,iA.kind);for(var _A=0,fA=iA.getChildren(U);_A0}))return 0;if(wA(function(IA){return IA.getCallSignatures().length>0})&&!wA(function(IA){return IA.getProperties().length>0})||T(S))return U===9?11:10}}return U}function k(y,S){return A.isBindingElement(y)&&(y=P(y)),A.isVariableDeclaration(y)?(!A.isSourceFile(y.parent.parent.parent)||A.isCatchClause(y.parent))&&y.getSourceFile()===S:A.isFunctionDeclaration(y)?!A.isSourceFile(y.parent)&&y.getSourceFile()===S:!1}function P(y){for(;;)if(A.isBindingElement(y.parent.parent))y=y.parent.parent;else return y.parent.parent}function H(y){var S=y.parent;return S&&(A.isImportClause(S)||A.isImportSpecifier(S)||A.isNamespaceImport(S))}function T(y){for(;v(y);)y=y.parent;return A.isCallExpression(y.parent)&&y.parent.expression===y}function v(y){return A.isQualifiedName(y.parent)&&y.parent.right===y||A.isPropertyAccessExpression(y.parent)&&y.parent.name===y}var F=new A.Map([[257,7],[166,6],[169,9],[264,3],[263,1],[302,8],[260,0],[171,11],[259,10],[215,10],[170,11],[174,9],[175,9],[168,9],[261,2],[262,5],[165,4],[299,9],[300,9]])})(i=t.v2020||(t.v2020={}))})(r=A.classifier||(A.classifier={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i;(function(o){var s,g=(s={},s.directory=0,s.script=1,s["external module name"]=2,s);function E(){var jA=new A.Map;function ue(MA){var RA=jA.get(MA.name);(!RA||g[RA.kind]bA.parameters.length)){var TA=bA.getTypeParameterAtPosition(MA.argumentIndex);if(A.isJsxOpeningLikeElement(jA)){var VA=RA.getTypeOfPropertyOfType(TA,nA.name.text);VA&&(TA=VA)}return lA=lA||!!(TA.flags&4),S(TA,tA)}});return A.length(kA)?{kind:2,types:kA,isNewIdentifier:lA}:void 0}function F(jA){return jA&&{kind:1,symbols:A.filter(jA.getApparentProperties(),function(ue){return!(ue.valueDeclaration&&A.isPrivateIdentifierClassElementDeclaration(ue.valueDeclaration))}),hasIndexSignature:A.hasIndexSignature(jA)}}function y(jA,ue){var MA=jA.getContextualType(ue);if(MA){var RA=jA.getContextualType(ue,4),lA=t.getPropertiesForObjectExpression(MA,RA,ue,jA);return{kind:1,symbols:lA,hasIndexSignature:A.hasIndexSignature(MA)}}}function S(jA,ue){return ue===void 0&&(ue=new A.Map),jA?(jA=A.skipConstraint(jA),jA.isUnion()?A.flatMap(jA.types,function(MA){return S(MA,ue)}):jA.isStringLiteral()&&!(jA.flags&1024)&&A.addToSeen(ue,jA.value)?[jA]:A.emptyArray):A.emptyArray}function U(jA,ue,MA){return{name:jA,kind:ue,extension:MA}}function V(jA){return U(jA,"directory",void 0)}function wA(jA,ue,MA){var RA=FA(jA,ue),lA=jA.length===0?void 0:A.createTextSpan(ue,jA.length);return MA.map(function(tA){var N=tA.name,nA=tA.kind,kA=tA.extension;return Math.max(N.indexOf(A.directorySeparator),N.indexOf(A.altDirectorySeparator))!==-1?{name:N,kind:nA,extension:kA,span:lA}:{name:N,kind:nA,extension:kA,span:RA}})}function IA(jA,ue,MA,RA,lA,tA){return wA(ue.text,ue.getStart(jA)+1,pA(jA,ue,MA,RA,lA,tA))}function pA(jA,ue,MA,RA,lA,tA){var N=A.normalizeSlashes(ue.text),nA=A.isStringLiteralLike(ue)?A.getModeForUsageLocation(jA,ue):void 0,kA=jA.path,bA=A.getDirectoryPath(kA);return SA(N)||!MA.baseUrl&&(A.isRootedDiskPath(N)||A.isUrl(N))?cA(N,bA,MA,RA,kA,TA()):CA(N,bA,nA,MA,RA,TA(),lA);function TA(){var VA=A.isStringLiteralLike(ue)?A.getModeForUsageLocation(jA,ue):void 0;return tA.importModuleSpecifierEnding==="js"||VA===A.ModuleKind.ESNext?2:0}}function oA(jA,ue){return ue===void 0&&(ue=0),{extensions:A.flatten(q(jA)),includeExtensionsOption:ue}}function cA(jA,ue,MA,RA,lA,tA){var N=oA(MA,tA);return MA.rootDirs?Z(MA.rootDirs,jA,ue,N,MA,RA,lA):A.arrayFrom(J(jA,ue,N,RA,lA).values())}function eA(jA){return A.getEmitModuleResolutionKind(jA)===A.ModuleResolutionKind.NodeJs||A.getEmitModuleResolutionKind(jA)===A.ModuleResolutionKind.Node16||A.getEmitModuleResolutionKind(jA)===A.ModuleResolutionKind.NodeNext}function Y(jA){return A.getEmitModuleResolutionKind(jA)===A.ModuleResolutionKind.Node16||A.getEmitModuleResolutionKind(jA)===A.ModuleResolutionKind.NodeNext}function q(jA){var ue=A.getSupportedExtensions(jA);return eA(jA)?A.getSupportedExtensionsWithJsonIfResolveJsonModule(jA,ue):ue}function X(jA,ue,MA,RA){jA=jA.map(function(tA){return A.normalizePath(A.isRootedDiskPath(tA)?tA:A.combinePaths(ue,tA))});var lA=A.firstDefined(jA,function(tA){return A.containsPath(tA,MA,ue,RA)?MA.substr(tA.length):void 0});return A.deduplicate(dt(dt([],jA.map(function(tA){return A.combinePaths(tA,lA)}),!0),[MA],!1),A.equateStringsCaseSensitive,A.compareStringsCaseSensitive)}function Z(jA,ue,MA,RA,lA,tA,N){var nA=lA.project||tA.getCurrentDirectory(),kA=!(tA.useCaseSensitiveFileNames&&tA.useCaseSensitiveFileNames()),bA=X(jA,nA,MA,kA);return A.flatMap(bA,function(TA){return A.arrayFrom(J(ue,TA,RA,tA,N).values())})}var K;(function(jA){jA[jA.Exclude=0]="Exclude",jA[jA.Include=1]="Include",jA[jA.ModuleSpecifierCompletion=2]="ModuleSpecifierCompletion"})(K||(K={}));function J(jA,ue,MA,RA,lA,tA){var N;tA===void 0&&(tA=E()),jA===void 0&&(jA=""),jA=A.normalizeSlashes(jA),A.hasTrailingDirectorySeparator(jA)||(jA=A.getDirectoryPath(jA)),jA===""&&(jA="."+A.directorySeparator),jA=A.ensureTrailingDirectorySeparator(jA);var nA=A.resolvePath(ue,jA),kA=A.hasTrailingDirectorySeparator(nA)?nA:A.getDirectoryPath(nA),bA=A.findPackageJson(kA,RA);if(bA){var TA=A.readJson(bA,RA),VA=TA.typesVersions;if(typeof VA=="object"){var De=(N=A.getPackageJsonTypesVersionsPaths(VA))===null||N===void 0?void 0:N.paths;if(De){var _e=A.getDirectoryPath(bA),Ae=nA.slice(A.ensureTrailingDirectorySeparator(_e).length);if(uA(tA,Ae,_e,MA,RA,De))return tA}}}var Q=!(RA.useCaseSensitiveFileNames&&RA.useCaseSensitiveFileNames());if(!A.tryDirectoryExists(RA,kA))return tA;var Ze=A.tryReadDirectory(RA,kA,MA.extensions,void 0,["./*"]);if(Ze)for(var Cr=0,be=Ze;Cr-1||A.isApplicableVersionedTypesKey(ue,MA)){var RA=jA[MA];return z(RA,ue)}}}function AA(jA){return KA(jA)?A.hasTrailingDirectorySeparator(jA)?jA:A.getDirectoryPath(jA):void 0}function iA(jA,ue,MA,RA,lA,tA){if(!A.endsWith(jA,"*"))return A.stringContains(jA,"*")?A.emptyArray:bA(jA,"script");var N=jA.slice(0,jA.length-1),nA=A.tryRemovePrefix(MA,N);if(nA===void 0){var kA=jA[jA.length-2]==="/";return kA?bA(N,"directory"):A.flatMap(ue,function(TA){var VA;return(VA=_A("",RA,TA,lA,tA))===null||VA===void 0?void 0:VA.map(function(De){var _e=De.name,Ae=ChA(De,["name"]);return pi({name:N+_e},Ae)})})}return A.flatMap(ue,function(TA){return _A(nA,RA,TA,lA,tA)});function bA(TA,VA){return A.startsWith(TA,MA)?[{name:A.removeTrailingDirectorySeparator(TA),kind:VA,extension:void 0}]:A.emptyArray}}function _A(jA,ue,MA,RA,lA){if(!lA.readDirectory)return;var tA=A.tryParsePattern(MA);if(tA===void 0||A.isString(tA))return;var N=A.resolvePath(tA.prefix),nA=A.hasTrailingDirectorySeparator(tA.prefix)?N:A.getDirectoryPath(N),kA=A.hasTrailingDirectorySeparator(tA.prefix)?"":A.getBaseFileName(N),bA=KA(jA),TA=bA?A.hasTrailingDirectorySeparator(jA)?jA:A.getDirectoryPath(jA):void 0,VA=bA?A.combinePaths(nA,kA+TA):nA,De=A.normalizePath(tA.suffix),_e=A.normalizePath(A.combinePaths(ue,VA)),Ae=bA?_e:A.ensureTrailingDirectorySeparator(_e)+kA,Q=De?"**/*"+De:"./*",Ze=A.mapDefined(A.tryReadDirectory(lA,_e,RA.extensions,void 0,[Q]),function(Me){var Le=be(Me);if(Le){if(KA(Le))return V(A.getPathComponents(M(Le))[1]);var ir=sA(Le,lA.getCompilationSettings(),RA.includeExtensionsOption),Ye=ir.name,mr=ir.extension;return U(Ye,"script",mr)}}),Cr=De?A.emptyArray:A.mapDefined(A.tryGetDirectories(lA,_e),function(Me){return Me==="node_modules"?void 0:V(Me)});return dt(dt([],Ze,!0),Cr,!0);function be(Me){var Le=fA(A.normalizePath(Me),Ae,De);return Le===void 0?void 0:M(Le)}}function fA(jA,ue,MA){return A.startsWith(jA,ue)&&A.endsWith(jA,MA)?jA.slice(ue.length,jA.length-MA.length):void 0}function M(jA){return jA[0]===A.directorySeparator?jA.slice(1):jA}function aA(jA,ue,MA){var RA=MA.getAmbientModules().map(function(N){return A.stripQuotes(N.name)}),lA=RA.filter(function(N){return A.startsWith(N,jA)});if(ue!==void 0){var tA=A.ensureTrailingDirectorySeparator(ue);return lA.map(function(N){return A.removePrefix(N,tA)})}return lA}function gA(jA,ue,MA,RA){var lA=A.getTokenAtPosition(jA,ue),tA=A.getLeadingCommentRanges(jA.text,lA.pos),N=tA&&A.find(tA,function(Ae){return ue>=Ae.pos&&ue<=Ae.end});if(N){var nA=jA.text.slice(N.pos,ue),kA=ce.exec(nA);if(kA){var bA=kA[1],TA=kA[2],VA=kA[3],De=A.getDirectoryPath(jA.path),_e=TA==="path"?J(VA,De,oA(MA,1),RA,jA.path):TA==="types"?QA(RA,MA,De,AA(VA),oA(MA)):A.Debug.fail();return wA(VA,N.pos+bA.length,A.arrayFrom(_e.values()))}}}function QA(jA,ue,MA,RA,lA,tA){tA===void 0&&(tA=E());for(var N=new A.Map,nA=A.tryAndIgnoreErrors(function(){return A.getEffectiveTypeRoots(ue,jA)})||A.emptyArray,kA=0,bA=nA;kA=2&&jA.charCodeAt(0)===46){var ue=jA.length>=3&&jA.charCodeAt(1)===46?2:1,MA=jA.charCodeAt(ue);return MA===47||MA===92}return!1}var ce=/^(\/\/\/\s*0},resolvedBeyondLimit:function(){return gt>t.moduleSpecifierResolutionLimit}}),Ot=Et?" (".concat((Pr/Et*100).toFixed(1),"% hit rate)"):"";return(He=Te.log)===null||He===void 0||He.call(Te,"".concat(te,": resolved ").concat(gt," module specifiers, plus ").concat(Lr," ambient and ").concat(Pr," from cache").concat(Ot)),(Xe=Te.log)===null||Xe===void 0||Xe.call(Te,"".concat(te,": response is ").concat(lt?"incomplete":"complete")),(or=Te.log)===null||or===void 0||or.call(Te,"".concat(te,": ").concat(A.timestamp()-Mr)),Zt;function _i(ei,Yt,Xr){if(Xr){var JA=UA.getModuleSpecifierForBestExportInfo(ei,Yt,de,ee);return JA&&Lr++,JA||"failed"}var Ve=ar||HA.allowIncompleteCompletions&>"),ee=A.createTextSpanFromNode(UA.tagName),Pe={name:pe,kind:"class",kindModifiers:void 0,sortText:t.SortText.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:ee,entries:[Pe]}}}function X(te,Te,UA,Ee,de){A.getNameTable(te).forEach(function(HA,pe){if(HA!==Te){var ee=A.unescapeLeadingUnderscores(pe);!UA.has(ee)&&A.isIdentifierText(ee,Ee)&&(UA.add(ee),A.insertSorted(de,{name:ee,kind:"warning",kindModifiers:"",sortText:t.SortText.JavascriptIdentifiers,isFromUncheckedFile:!0},F))}})}function Z(te,Te,UA){return typeof UA=="object"?A.pseudoBigIntToString(UA)+"n":A.isString(UA)?A.quote(te,Te,UA):JSON.stringify(UA)}function K(te,Te,UA){return{name:Z(te,Te,UA),kind:"string",kindModifiers:"",sortText:t.SortText.LocationPriority}}function J(te,Te,UA,Ee,de,HA,pe,ee,Pe,He,Xe,or,Mr,ar,lt,Lr,gt,Pr,Et,Zt,Ot,_i){var ei,Yt,Xr,JA=A.getReplacementSpanForContextToken(UA),Ve,XA,Gr=QA(Xe),ot,Sr,Dr,Jr=ee.getTypeChecker(),Yr=Xe&&x(Xe),rt=Xe&&g(Xe)||He;if(Xe&&s(Xe))Xr=He?"this".concat(Yr?"?.":"","[").concat(aA(HA,Pr,Pe),"]"):"this".concat(Yr?"?.":".").concat(Pe);else if((rt||Yr)&&Mr){Xr=rt?He?"[".concat(aA(HA,Pr,Pe),"]"):"[".concat(Pe,"]"):Pe,(Yr||Mr.questionDotToken)&&(Xr="?.".concat(Xr));var Bt=A.findChildOfKind(Mr,24,HA)||A.findChildOfKind(Mr,28,HA);if(!Bt)return;var le=A.startsWith(Pe,Mr.name.text)?Mr.name.end:Bt.end;JA=A.createTextSpanFromBounds(Bt.getStart(HA),le)}if(ar&&(Xr===void 0&&(Xr=Pe),Xr="{".concat(Xr,"}"),typeof ar!="boolean"&&(JA=A.createTextSpanFromNode(ar,HA))),Xe&&_(Xe)&&Mr){Xr===void 0&&(Xr=Pe);var Ir=A.findPrecedingToken(Mr.pos,HA),ut="";Ir&&A.positionIsASICandidate(Ir.end,Ir.parent,HA)&&(ut=";"),ut+="(await ".concat(Mr.expression.getText(),")"),Xr=He?"".concat(ut).concat(Xr):"".concat(ut).concat(Yr?"?.":".").concat(Xr),JA=A.createTextSpanFromBounds(Mr.getStart(HA),Mr.end)}if(p(Xe)&&(ot=[A.textPart(Xe.moduleSpecifier)],lt&&(ei=M(Pe,lt,Xe,Lr,HA,gt,Pr),Xr=ei.insertText,JA=ei.replacementSpan,XA=Pr.includeCompletionsWithSnippetText?!0:void 0)),Xe?.kind===64&&(Sr=!0),Pr.includeCompletionsWithClassMemberSnippets&&Pr.includeCompletionsWithInsertText&&Et===3&&sA(te,de,HA)){var Ii=void 0;Yt=uA(pe,ee,gt,Pr,Pe,te,de,Ee,Zt),Xr=Yt.insertText,XA=Yt.isSnippet,Ii=Yt.importAdder,JA=Yt.replacementSpan,Te=t.SortText.ClassMemberSnippets,Ii?.hasFixes()&&(Sr=!0,Gr=i.ClassMemberSnippet)}if(Xe&&k(Xe)&&(Xr=Xe.insertText,XA=Xe.isSnippet,Dr=Xe.labelDetails,Pr.useLabelDetailsInCompletionEntries||(Pe=Pe+Dr.detail,Dr=void 0),Gr=i.ObjectLiteralMethodSnippet,Te=t.SortText.SortBelow(Te)),Ot&&!_i&&Pr.includeCompletionsWithSnippetText&&Pr.jsxAttributeCompletionStyle&&Pr.jsxAttributeCompletionStyle!=="none"){var Zi=Pr.jsxAttributeCompletionStyle==="braces",yi=Jr.getTypeOfSymbolAtLocation(te,de);Pr.jsxAttributeCompletionStyle==="auto"&&!(yi.flags&528)&&!(yi.flags&1048576&&A.find(yi.types,function(zt){return!!(zt.flags&528)}))&&(yi.flags&402653316||yi.flags&1048576&&A.every(yi.types,function(zt){return!!(zt.flags&402686084)})?(Xr="".concat(A.escapeSnippetText(Pe),"=").concat(A.quote(HA,Pr,"$1")),XA=!0):Zi=!0),Zi&&(Xr="".concat(A.escapeSnippetText(Pe),"={$1}"),XA=!0)}if(!(Xr!==void 0&&!Pr.includeCompletionsWithInsertText))return(E(Xe)||p(Xe))&&(Ve=_A(Xe),Sr=!lt),{name:Pe,kind:A.SymbolDisplay.getSymbolKind(Jr,te,de),kindModifiers:A.SymbolDisplay.getSymbolModifiers(Jr,te),sortText:Te,source:Gr,hasAction:Sr?!0:void 0,isRecommended:gA(te,or,Jr)||void 0,insertText:Xr,replacementSpan:JA,sourceDisplay:ot,labelDetails:Dr,isSnippet:XA,isPackageJsonImport:m(Xe)||void 0,isImportStatementCompletion:!!lt||void 0,data:Ve}}function sA(te,Te,UA){if(A.isInJSFile(Te))return!1;var Ee=106500;return!!(te.flags&Ee)&&(A.isClassLike(Te)||Te.parent&&Te.parent.parent&&A.isClassElement(Te.parent)&&Te===Te.parent.name&&Te.parent.getLastToken(UA)===Te.parent.name&&A.isClassLike(Te.parent.parent)||Te.parent&&A.isSyntaxList(Te)&&A.isClassLike(Te.parent))}function uA(te,Te,UA,Ee,de,HA,pe,ee,Pe){var He=A.findAncestor(pe,A.isClassLike);if(!He)return{insertText:de};var Xe,or,Mr=de,ar=Te.getTypeChecker(),lt=pe.getSourceFile(),Lr=iA({removeComments:!0,module:UA.module,target:UA.target,omitTrailingSemicolon:!1,newLine:A.getNewLineKind(A.getNewLineCharacter(UA,A.maybeBind(te,te.getNewLine)))}),gt=A.codefix.createImportAdder(lt,Te,Ee,te),Pr;if(Ee.includeCompletionsWithSnippetText){Xe=!0;var Et=A.factory.createEmptyStatement();Pr=A.factory.createBlock([Et],!0),A.setSnippetElement(Et,{kind:0,order:0})}else Pr=A.factory.createBlock([],!0);var Zt=0,Ot=BA(ee),_i=Ot.modifiers,ei=Ot.span,Yt=!!(_i&256),Xr=[];if(A.codefix.addNewNodeForMemberSymbol(HA,He,lt,{program:Te,host:te},Ee,gt,function(Ve){var XA=0;Yt&&(XA|=256),A.isClassElement(Ve)&&ar.getMemberOverrideModifierStatus(He,Ve)===1&&(XA|=16384),Xr.length||(Zt=Ve.modifierFlagsCache|XA|_i),Ve=A.factory.updateModifiers(Ve,Zt),Xr.push(Ve)},Pr,2,Yt),Xr.length){var JA=131073;or=ei,Pe?Mr=Lr.printAndFormatSnippetList(JA,A.factory.createNodeArray(Xr),lt,Pe):Mr=Lr.printSnippetList(JA,A.factory.createNodeArray(Xr),lt)}return{insertText:Mr,isSnippet:Xe,importAdder:gt,replacementSpan:or}}function BA(te){if(!te)return{modifiers:0};var Te=0,UA,Ee;return(Ee=CA(te))&&(Te|=A.modifierToFlag(Ee),UA=A.createTextSpanFromNode(te)),A.isPropertyDeclaration(te.parent)&&(Te|=A.modifiersToFlags(te.parent.modifiers)&126975,UA=A.createTextSpanFromNode(te.parent)),{modifiers:Te,span:UA}}function CA(te){if(A.isModifier(te))return te.kind;if(A.isIdentifier(te)&&te.originalKeywordKind&&A.isModifierKind(te.originalKeywordKind))return te.originalKeywordKind}function z(te,Te,UA,Ee,de,HA,pe,ee){var Pe=pe.includeCompletionsWithSnippetText||void 0,He=Te,Xe=UA.getSourceFile(),or=AA(te,UA,Xe,Ee,de,pe);if(or){var Mr=iA({removeComments:!0,module:HA.module,target:HA.target,omitTrailingSemicolon:!1,newLine:A.getNewLineKind(A.getNewLineCharacter(HA,A.maybeBind(de,de.getNewLine)))});ee?He=Mr.printAndFormatSnippetList(80,A.factory.createNodeArray([or],!0),Xe,ee):He=Mr.printSnippetList(80,A.factory.createNodeArray([or],!0),Xe);var ar=A.createPrinter({removeComments:!0,module:HA.module,target:HA.target,omitTrailingSemicolon:!0}),lt=A.factory.createMethodSignature(void 0,"",or.questionToken,or.typeParameters,or.parameters,or.type),Lr={detail:ar.printNode(4,lt,Xe)};return{isSnippet:Pe,insertText:He,labelDetails:Lr}}}function AA(te,Te,UA,Ee,de,HA){var pe=te.getDeclarations();if(pe&&pe.length){var ee=Ee.getTypeChecker(),Pe=pe[0],He=A.getSynthesizedDeepClone(A.getNameOfDeclaration(Pe),!1),Xe=ee.getWidenedType(ee.getTypeOfSymbolAtLocation(te,Te)),or=A.getQuotePreference(UA,HA),Mr=33554432|(or===0?268435456:0);switch(Pe.kind){case 168:case 169:case 170:case 171:{var ar=Xe.flags&1048576&&Xe.types.length<10?ee.getUnionType(Xe.types,2):Xe;if(ar.flags&1048576){var lt=A.filter(ar.types,function(Ot){return ee.getSignaturesOfType(Ot,0).length>0});if(lt.length===1)ar=lt[0];else return}var Lr=ee.getSignaturesOfType(ar,0);if(Lr.length!==1)return;var gt=ee.typeToTypeNode(ar,Te,Mr,A.codefix.getNoopSymbolTrackerWithResolver({program:Ee,host:de}));if(!gt||!A.isFunctionTypeNode(gt))return;var Pr=void 0;if(HA.includeCompletionsWithSnippetText){var Et=A.factory.createEmptyStatement();Pr=A.factory.createBlock([Et],!0),A.setSnippetElement(Et,{kind:0,order:0})}else Pr=A.factory.createBlock([],!0);var Zt=gt.parameters.map(function(Ot){return A.factory.createParameterDeclaration(void 0,Ot.dotDotDotToken,Ot.name,void 0,void 0,Ot.initializer)});return A.factory.createMethodDeclaration(void 0,void 0,He,void 0,void 0,Zt,void 0,Pr)}default:return}}}function iA(te){var Te,UA=A.textChanges.createWriter(A.getNewLineCharacter(te)),Ee=A.createPrinter(te,UA),de=pi(pi({},UA),{write:function(He){return HA(He,function(){return UA.write(He)})},nonEscapingWrite:UA.write,writeLiteral:function(He){return HA(He,function(){return UA.writeLiteral(He)})},writeStringLiteral:function(He){return HA(He,function(){return UA.writeStringLiteral(He)})},writeSymbol:function(He,Xe){return HA(He,function(){return UA.writeSymbol(He,Xe)})},writeParameter:function(He){return HA(He,function(){return UA.writeParameter(He)})},writeComment:function(He){return HA(He,function(){return UA.writeComment(He)})},writeProperty:function(He){return HA(He,function(){return UA.writeProperty(He)})}});return{printSnippetList:pe,printAndFormatSnippetList:Pe};function HA(He,Xe){var or=A.escapeSnippetText(He);if(or!==He){var Mr=UA.getTextPos();Xe();var ar=UA.getTextPos();Te=A.append(Te||(Te=[]),{newText:or,span:{start:Mr,length:ar-Mr}})}else Xe()}function pe(He,Xe,or){var Mr=ee(He,Xe,or);return Te?A.textChanges.applyChanges(Mr,Te):Mr}function ee(He,Xe,or){return Te=void 0,de.clear(),Ee.writeList(He,Xe,or,de),de.getText()}function Pe(He,Xe,or,Mr){var ar={text:ee(He,Xe,or),getLineAndCharacterOfPosition:function(Pr){return A.getLineAndCharacterOfPosition(this,Pr)}},lt=A.getFormatCodeSettingsForWriting(Mr,or),Lr=A.flatMap(Xe,function(Pr){var Et=A.textChanges.assignPositionsToNode(Pr);return A.formatting.formatNodeGivenIndentation(Et,ar,or.languageVariant,0,0,pi(pi({},Mr),{options:lt}))}),gt=Te?A.stableSort(A.concatenate(Lr,Te),function(Pr,Et){return A.compareTextSpans(Pr.span,Et.span)}):Lr;return A.textChanges.applyChanges(ar.text,gt)}}function _A(te){var Te=te.fileName?void 0:A.stripQuotes(te.moduleSymbol.name),UA=te.isFromPackageJson?!0:void 0;if(p(te)){var Ee={exportName:te.exportName,moduleSpecifier:te.moduleSpecifier,ambientModuleName:Te,fileName:te.fileName,isPackageJsonImport:UA};return Ee}var de={exportName:te.exportName,exportMapKey:te.exportMapKey,fileName:te.fileName,ambientModuleName:te.fileName?void 0:A.stripQuotes(te.moduleSymbol.name),isPackageJsonImport:te.isFromPackageJson?!0:void 0};return de}function fA(te,Te,UA){var Ee=te.exportName==="default",de=!!te.isPackageJsonImport;if(y(te)){var HA={kind:32,exportName:te.exportName,moduleSpecifier:te.moduleSpecifier,symbolName:Te,fileName:te.fileName,moduleSymbol:UA,isDefaultExport:Ee,isFromPackageJson:de};return HA}var pe={kind:4,exportName:te.exportName,exportMapKey:te.exportMapKey,symbolName:Te,fileName:te.fileName,moduleSymbol:UA,isDefaultExport:Ee,isFromPackageJson:de};return pe}function M(te,Te,UA,Ee,de,HA,pe){var ee=Te.replacementSpan,Pe=A.quote(de,pe,UA.moduleSpecifier),He=UA.isDefaultExport?1:UA.exportName==="export="?2:0,Xe=pe.includeCompletionsWithSnippetText?"$1":"",or=A.codefix.getImportKind(de,He,HA,!0),Mr=Te.couldBeTypeOnlyImportSpecifier,ar=Te.isTopLevelTypeOnly?" ".concat(A.tokenToString(154)," "):" ",lt=Mr?"".concat(A.tokenToString(154)," "):"",Lr=Ee?";":"";switch(or){case 3:return{replacementSpan:ee,insertText:"import".concat(ar).concat(A.escapeSnippetText(te)).concat(Xe," = require(").concat(Pe,")").concat(Lr)};case 1:return{replacementSpan:ee,insertText:"import".concat(ar).concat(A.escapeSnippetText(te)).concat(Xe," from ").concat(Pe).concat(Lr)};case 2:return{replacementSpan:ee,insertText:"import".concat(ar,"* as ").concat(A.escapeSnippetText(te)," from ").concat(Pe).concat(Lr)};case 0:return{replacementSpan:ee,insertText:"import".concat(ar,"{ ").concat(lt).concat(A.escapeSnippetText(te)).concat(Xe," } from ").concat(Pe).concat(Lr)}}}function aA(te,Te,UA){return/^\d+$/.test(UA)?UA:A.quote(te,Te,UA)}function gA(te,Te,UA){return te===Te||!!(te.flags&1048576)&&UA.getExportSymbolOfSymbol(te)===Te}function QA(te){if(E(te))return A.stripQuotes(te.moduleSymbol.name);if(p(te))return te.moduleSpecifier;if(te?.kind===1)return i.ThisProperty;if(te?.kind===64)return i.TypeOnlyAlias}function mA(te,Te,UA,Ee,de,HA,pe,ee,Pe,He,Xe,or,Mr,ar,lt,Lr,gt,Pr,Et,Zt,Ot,_i,ei,Yt){for(var Xr,JA=A.timestamp(),Ve=Ur(de),XA=A.probablyUsesSemicolons(HA),Gr=ee.getTypeChecker(),ot=new A.Map,Sr=0;Sr90)?!1:pe?!0:Ar(aa,mt)},function(aa,se,jr,qe){var la;if(!(pe&&!A.some(aa,function(Nc){return pe.source===A.stripQuotes(Nc.moduleSymbol.name)}))){var Ba=A.find(aa,Fn);if(Ba){var po=vn.tryResolve(aa,se,jr)||{};if(po!=="failed"){var Ds=Ba,Ac;po!=="skipped"&&(la=po.exportInfo,Ds=la===void 0?Ba:la,Ac=po.moduleSpecifier);var gc=Ds.exportKind===1,Xl=gc&&A.getLocalSymbolForExportDefault(Ds.symbol)||Ds.symbol;$r(Xl,{kind:Ac?32:4,moduleSpecifier:Ac,symbolName:se,exportMapKey:qe,exportName:Ds.exportKind===2?"export=":Ds.symbol.name,fileName:Ds.moduleFileName,isDefaultExport:gc,moduleSymbol:Ds.moduleSymbol,isFromPackageJson:Ds.isFromPackageJson})}}}}),cn=vn.skippedAny(),le|=vn.resolvedAny()?8:0,le|=vn.resolvedBeyondLimit()?16:0});function Fn(vn){var aa=A.tryCast(vn.moduleSymbol.valueDeclaration,A.isSourceFile);if(!aa){var se=A.stripQuotes(vn.moduleSymbol.name);return A.JsTyping.nodeCoreModules.has(se)&&A.startsWith(se,"node:")!==A.shouldUseUriStyleNodeCoreModules(UA,te)?!1:ji?ji.allowsImportingAmbientModule(vn.moduleSymbol,Ho(vn.isFromPackageJson)):!0}return A.isImportableFile(vn.isFromPackageJson?Bi:te,UA,aa,HA,ji,Ho(vn.isFromPackageJson),ai)}}function $r(yA,je){var br=A.getSymbolId(yA);Ya[br]!==t.SortText.GlobalsOrKeywords&&(yt[Ui.length]=je,Ya[br]=Jr?t.SortText.LocationPriority:t.SortText.AutoImportSuggestions,Ui.push(yA))}function ie(yA,je){A.isInJSFile(Yr)||yA.forEach(function(br){if(ye(br)){var mt=_e(br,A.getEmitScriptTarget(Ee),void 0,0,!1);if(mt){var ai=mt.name,Pi=z(br,ai,je,te,ee,Ee,HA,Pe);if(Pi){var Bi=pi({kind:128},Pi);le|=32,yt[Ui.length]=Bi,Ui.push(br)}}}})}function ye(yA){return!!(yA.flags&8196)}function Re(yA,je,br){for(var mt=yA;mt&&!A.positionBelongsToNode(mt,je,br);)mt=mt.parent;return mt}function rr(yA){var je=A.timestamp(),br=Gt(yA)||Vc(yA)||zc(yA)||zr(yA)||A.isBigIntLiteral(yA);return Te("getCompletionsAtPosition: isCompletionListBlocker: "+(A.timestamp()-je)),br}function zr(yA){if(yA.kind===11)return!0;if(yA.kind===31&&yA.parent){if(Yr===yA.parent&&(Yr.kind===283||Yr.kind===282))return!1;if(yA.parent.kind===283)return Yr.parent.kind!==283;if(yA.parent.kind===284||yA.parent.kind===282)return!!yA.parent.parent&&yA.parent.parent.kind===281}return!1}function Ft(){if(Yt){var yA=Yt.parent.kind,je=Ye(Yt);switch(je){case 27:return yA===210||yA===173||yA===211||yA===206||yA===223||yA===181||yA===207;case 20:return yA===210||yA===173||yA===211||yA===214||yA===193;case 22:return yA===206||yA===178||yA===164;case 142:case 143:case 100:return!0;case 24:return yA===264;case 18:return yA===260||yA===207;case 63:return yA===257||yA===223;case 15:return yA===225;case 16:return yA===236;case 132:return yA===171||yA===300;case 41:return yA===171}if(Le(je))return!0}return!1}function Gt(yA){return(A.isRegularExpressionLiteral(yA)||A.isStringTextContainingNode(yA))&&(A.rangeContainsPositionExclusive(A.createTextRangeFromSpan(A.createTextSpanFromNode(yA)),de)||de===yA.end&&(!!yA.isUnterminated||A.isRegularExpressionLiteral(yA)))}function Tt(){var yA=We(Yt);if(!yA)return 0;var je=A.isIntersectionTypeNode(yA.parent)?yA.parent:void 0,br=je||yA,mt=YA(br,Xe);if(!mt)return 0;var ai=Xe.getTypeFromTypeNode(br),Pi=LA(mt,Xe),Bi=LA(ai,Xe),ji=new A.Set;return Bi.forEach(function(Fn){return ji.add(Fn.escapedName)}),Ui=A.concatenate(Ui,A.filter(Pi,function(Fn){return!ji.has(Fn.escapedName)})),yi=0,Bt=!0,1}function gn(){var yA=Ui.length,je=TA(Yt);if(!je)return 0;yi=0;var br,mt;if(je.kind===207){var ai=Fr(je,Xe);if(ai===void 0)return je.flags&33554432?2:(zt=!0,0);var Pi=Xe.getContextualType(je,4),Bi=(Pi||ai).getStringIndexType(),ji=(Pi||ai).getNumberIndexType();if(Bt=!!Bi||!!ji,br=xr(ai,Pi,je,Xe),mt=je.properties,br.length===0&&!ji)return zt=!0,0}else{A.Debug.assert(je.kind===203),Bt=!1;var Fn=A.getRootDeclaration(je.parent);if(!A.isVariableLike(Fn))return A.Debug.fail("Root declaration is not variable-like.");var vn=A.hasInitializer(Fn)||!!A.getEffectiveTypeAnnotationNode(Fn)||Fn.parent.parent.kind===247;if(!vn&&Fn.kind===166&&(A.isExpression(Fn.parent)?vn=!!Xe.getContextualType(Fn.parent):(Fn.parent.kind===171||Fn.parent.kind===175)&&(vn=A.isExpression(Fn.parent.parent)&&!!Xe.getContextualType(Fn.parent.parent))),vn){var aa=Xe.getTypeAtLocation(je);if(!aa)return 2;br=Xe.getPropertiesOfType(aa).filter(function(jr){return Xe.isPropertyAccessible(je,!1,!1,aa,jr)}),mt=je.elements}}if(br&&br.length>0){var se=_l(br,A.Debug.checkDefined(mt));Ui=A.concatenate(Ui,se),sl(),je.kind===207&&HA.includeCompletionsWithObjectLiteralMethodSnippets&&HA.includeCompletionsWithInsertText&&(kl(yA),ie(se,je))}return 1}function kn(){if(!Yt)return 0;var yA=Yt.kind===18||Yt.kind===27?A.tryCast(Yt.parent,A.isNamedImportsOrExports):A.isTypeKeywordTokenOrIdentifier(Yt)?A.tryCast(Yt.parent.parent,A.isNamedImportsOrExports):void 0;if(!yA)return 0;A.isTypeKeywordTokenOrIdentifier(Yt)||(rt=8);var je=(yA.kind===272?yA.parent.parent:yA.parent).moduleSpecifier;if(!je)return Bt=!0,yA.kind===272?2:0;var br=Xe.getSymbolAtLocation(je);if(!br)return Bt=!0,2;yi=3,Bt=!1;var mt=Xe.getExportsAndPropertiesOfModule(br),ai=new A.Set(yA.elements.filter(function(Bi){return!xs(Bi)}).map(function(Bi){return(Bi.propertyName||Bi.name).escapedText})),Pi=mt.filter(function(Bi){return Bi.escapedName!=="default"&&!ai.has(Bi.escapedName)});return Ui=A.concatenate(Ui,Pi),Pi.length||(rt=0),1}function ra(){var yA,je=Yt&&(Yt.kind===18||Yt.kind===27)?A.tryCast(Yt.parent,A.isNamedExports):void 0;if(!je)return 0;var br=A.findAncestor(je,A.or(A.isSourceFile,A.isModuleDeclaration));return yi=5,Bt=!1,(yA=br.locals)===null||yA===void 0||yA.forEach(function(mt,ai){var Pi,Bi;Ui.push(mt),!((Bi=(Pi=br.symbol)===null||Pi===void 0?void 0:Pi.exports)===null||Bi===void 0)&&Bi.has(ai)&&(Ya[A.getSymbolId(mt)]=t.SortText.OptionalMember)}),1}function Vn(){var yA=ae(UA,Yt,Yr,de);if(!yA)return 0;if(yi=3,Bt=!0,rt=Yt.kind===41?0:A.isClassLike(yA)?2:3,!A.isClassLike(yA))return 1;var je=Yt.kind===26?Yt.parent.parent:Yt.parent,br=A.isClassElement(je)?A.getEffectiveModifierFlags(je):0;if(Yt.kind===79&&!xs(Yt))switch(Yt.getText()){case"private":br=br|8;break;case"static":br=br|32;break;case"override":br=br|16384;break}if(A.isClassStaticBlockDeclaration(je)&&(br|=32),!(br&8)){var mt=A.isClassLike(yA)&&br&16384?A.singleElementArray(A.getEffectiveBaseTypeNode(yA)):A.getAllSuperTypeNodes(yA),ai=A.flatMap(mt,function(Pi){var Bi=Xe.getTypeAtLocation(Pi);return br&32?Bi?.symbol&&Xe.getPropertiesOfType(Xe.getTypeOfSymbolAtLocation(Bi.symbol,yA)):Bi&&Xe.getPropertiesOfType(Bi)});Ui=A.concatenate(Ui,bs(ai,yA.members,br))}return 1}function ba(yA){return!!yA.parent&&A.isParameter(yA.parent)&&A.isConstructorDeclaration(yA.parent.parent)&&(A.isParameterPropertyModifier(yA.kind)||A.isDeclarationName(yA))}function Ts(yA){if(yA){var je=yA.parent;switch(yA.kind){case 20:case 27:return A.isConstructorDeclaration(yA.parent)?yA.parent:void 0;default:if(ba(yA))return je.parent}}}function Qs(yA){if(yA){var je,br=A.findAncestor(yA.parent,function(mt){return A.isClassLike(mt)?"quit":A.isFunctionLikeDeclaration(mt)&&je===mt.body?!0:(je=mt,!1)});return br&&br}}function Gs(yA){if(yA){var je=yA.parent;switch(yA.kind){case 31:case 30:case 43:case 79:case 208:case 289:case 288:case 290:if(je&&(je.kind===282||je.kind===283)){if(yA.kind===31){var br=A.findPrecedingToken(yA.pos,UA,void 0);if(!je.typeArguments||br&&br.kind===43)break}return je}else if(je.kind===288)return je.parent.parent;break;case 10:if(je&&(je.kind===288||je.kind===290))return je.parent.parent;break;case 19:if(je&&je.kind===291&&je.parent&&je.parent.kind===288)return je.parent.parent.parent;if(je&&je.kind===290)return je.parent.parent;break}}}function Vc(yA){var je=yA.parent,br=je.kind;switch(yA.kind){case 27:return br===257||Rc(yA)||br===240||br===263||ys(br)||br===261||br===204||br===262||A.isClassLike(je)&&!!je.typeParameters&&je.typeParameters.end>=yA.pos;case 24:return br===204;case 58:return br===205;case 22:return br===204;case 20:return br===295||ys(br);case 18:return br===263;case 29:return br===260||br===228||br===261||br===262||A.isFunctionLikeKind(br);case 124:return br===169&&!A.isClassLike(je.parent);case 25:return br===166||!!je.parent&&je.parent.kind===204;case 123:case 121:case 122:return br===166&&!A.isConstructorDeclaration(je.parent);case 128:return br===273||br===278||br===271;case 137:case 151:return!Ce(yA);case 79:if(br===273&&yA===je.name&&yA.text==="type")return!1;break;case 84:case 92:case 118:case 98:case 113:case 100:case 119:case 85:case 138:return!0;case 154:return br!==273;case 41:return A.isFunctionLike(yA.parent)&&!A.isMethodDeclaration(yA.parent)}if(Le(Ye(yA))&&Ce(yA)||ba(yA)&&(!A.isIdentifier(yA)||A.isParameterPropertyModifier(Ye(yA))||xs(yA)))return!1;switch(Ye(yA)){case 126:case 84:case 85:case 136:case 92:case 98:case 118:case 119:case 121:case 122:case 123:case 124:case 113:return!0;case 132:return A.isPropertyDeclaration(yA.parent)}var mt=A.findAncestor(yA.parent,A.isClassLike);if(mt&&yA===ei&&$s(yA,de))return!1;var ai=A.getAncestor(yA.parent,169);if(ai&&yA!==ei&&A.isClassLike(ei.parent.parent)&&de<=ei.end){if($s(yA,ei.end))return!1;if(yA.kind!==63&&(A.isInitializedProperty(ai)||A.hasType(ai)))return!0}return A.isDeclarationName(yA)&&!A.isShorthandPropertyAssignment(yA.parent)&&!A.isJsxAttribute(yA.parent)&&!(A.isClassLike(yA.parent)&&(yA!==ei||de>ei.end))}function $s(yA,je){return yA.kind!==63&&(yA.kind===26||!A.positionsAreOnSameLine(yA.end,je,UA))}function ys(yA){return A.isFunctionLikeKind(yA)&&yA!==173}function zc(yA){if(yA.kind===8){var je=yA.getFullText();return je.charAt(je.length-1)==="."}return!1}function Rc(yA){return yA.parent.kind===258&&!A.isPossiblyTypeArgumentPosition(yA,UA,Xe)}function _l(yA,je){if(je.length===0)return yA;for(var br=new A.Set,mt=new A.Set,ai=0,Pi=je;ai=0&&!H(Y,q[X],115);X--);return A.forEach(m(eA.statement),function(Z){x(eA,Z)&&H(Y,Z.getFirstToken(),81,86)}),Y}function v(eA){var Y=O(eA);if(Y)switch(Y.kind){case 245:case 246:case 247:case 243:case 244:return T(Y);case 252:return F(Y)}}function F(eA){var Y=[];return H(Y,eA.getFirstToken(),107),A.forEach(eA.caseBlock.clauses,function(q){H(Y,q.getFirstToken(),82,88),A.forEach(m(q),function(X){x(eA,X)&&H(Y,X.getFirstToken(),81)})}),Y}function y(eA,Y){var q=[];if(H(q,eA.getFirstToken(),111),eA.catchClause&&H(q,eA.catchClause.getFirstToken(),83),eA.finallyBlock){var X=A.findChildOfKind(eA,96,Y);H(q,X,96)}return q}function S(eA,Y){var q=B(eA);if(q){var X=[];return A.forEach(p(q),function(Z){X.push(A.findChildOfKind(Z,109,Y))}),A.isFunctionBlock(q)&&A.forEachReturnStatement(q,function(Z){X.push(A.findChildOfKind(Z,105,Y))}),X}}function U(eA,Y){var q=A.getContainingFunction(eA);if(q){var X=[];return A.forEachReturnStatement(A.cast(q.body,A.isBlock),function(Z){X.push(A.findChildOfKind(Z,105,Y))}),A.forEach(p(q.body),function(Z){X.push(A.findChildOfKind(Z,109,Y))}),X}}function V(eA){var Y=A.getContainingFunction(eA);if(Y){var q=[];return Y.modifiers&&Y.modifiers.forEach(function(X){H(q,X,132)}),A.forEachChild(Y,function(X){IA(X,function(Z){A.isAwaitExpression(Z)&&H(q,Z.getFirstToken(),133)})}),q}}function wA(eA){var Y=A.getContainingFunction(eA);if(Y){var q=[];return A.forEachChild(Y,function(X){IA(X,function(Z){A.isYieldExpression(Z)&&H(q,Z.getFirstToken(),125)})}),q}}function IA(eA,Y){Y(eA),!A.isFunctionLike(eA)&&!A.isClassLike(eA)&&!A.isInterfaceDeclaration(eA)&&!A.isModuleDeclaration(eA)&&!A.isTypeAliasDeclaration(eA)&&!A.isTypeNode(eA)&&A.forEachChild(eA,function(q){return IA(q,Y)})}function pA(eA,Y){for(var q=oA(eA,Y),X=[],Z=0;Z=K.end;uA--)if(!A.isWhiteSpaceSingleLine(Y.text.charCodeAt(uA))){sA=!1;break}if(sA){X.push({fileName:Y.fileName,textSpan:A.createTextSpanFromBounds(K.getStart(),J.end),kind:"reference"}),Z++;continue}}X.push(o(q[Z],Y))}return X}function oA(eA,Y){for(var q=[];A.isIfStatement(eA.parent)&&eA.parent.elseStatement===eA;)eA=eA.parent;for(;;){var X=eA.getChildren(Y);H(q,X[0],99);for(var Z=X.length-1;Z>=0&&!H(q,X[Z],91);Z--);if(!eA.elseStatement||!A.isIfStatement(eA.elseStatement))break;eA=eA.elseStatement}return q}function cA(eA,Y){return!!A.findAncestor(eA.parent,function(q){return A.isLabeledStatement(q)?q.label.escapedText===Y:"quit"})}})(r=A.DocumentHighlights||(A.DocumentHighlights={}))})(Oe||(Oe={}));var Oe;(function(A){function r(E){return!!E.sourceFile}function t(E,p){return i(E,p)}A.createDocumentRegistry=t;function i(E,p,B){p===void 0&&(p="");var m=new A.Map,_=A.createGetCanonicalFileName(!!E);function x(){var V=A.arrayFrom(m.keys()).filter(function(wA){return wA&&wA.charAt(0)==="_"}).map(function(wA){var IA=m.get(wA),pA=[];return IA.forEach(function(oA,cA){r(oA)?pA.push({name:cA,scriptKind:oA.sourceFile.scriptKind,refCount:oA.languageServiceRefCount}):oA.forEach(function(eA,Y){return pA.push({name:cA,scriptKind:Y,refCount:eA.languageServiceRefCount})})}),pA.sort(function(oA,cA){return cA.refCount-oA.refCount}),{bucket:wA,sourceFiles:pA}});return JSON.stringify(V,void 0,2)}function O(V){return typeof V.getCompilationSettings=="function"?V.getCompilationSettings():V}function k(V,wA,IA,pA,oA,cA){var eA=A.toPath(V,p,_),Y=s(O(wA));return P(V,eA,wA,Y,IA,pA,oA,cA)}function P(V,wA,IA,pA,oA,cA,eA,Y){return F(V,wA,IA,pA,oA,cA,!0,eA,Y)}function H(V,wA,IA,pA,oA,cA){var eA=A.toPath(V,p,_),Y=s(O(wA));return T(V,eA,wA,Y,IA,pA,oA,cA)}function T(V,wA,IA,pA,oA,cA,eA,Y){return F(V,wA,O(IA),pA,oA,cA,!1,eA,Y)}function v(V,wA){var IA=r(V)?V:V.get(A.Debug.checkDefined(wA,"If there are more than one scriptKind's for same document the scriptKind should be provided"));return A.Debug.assert(wA===void 0||!IA||IA.sourceFile.scriptKind===wA,"Script kind should match provided ScriptKind:".concat(wA," and sourceFile.scriptKind: ").concat(IA?.sourceFile.scriptKind,", !entry: ").concat(!IA)),IA}function F(V,wA,IA,pA,oA,cA,eA,Y,q){var X,Z,K,J;Y=A.ensureScriptKind(V,Y);var sA=O(IA),uA=IA===sA?void 0:IA,BA=Y===6?100:A.getEmitScriptTarget(sA),CA=typeof q=="object"?q:{languageVersion:BA,impliedNodeFormat:uA&&A.getImpliedNodeFormatForFile(wA,(J=(K=(Z=(X=uA.getCompilerHost)===null||X===void 0?void 0:X.call(uA))===null||Z===void 0?void 0:Z.getModuleResolutionCache)===null||K===void 0?void 0:K.call(Z))===null||J===void 0?void 0:J.getPackageJsonInfoCache(),uA,sA),setExternalModuleIndicator:A.getSetExternalModuleIndicator(sA)};CA.languageVersion=BA;var z=m.size,AA=g(pA,CA.impliedNodeFormat),iA=A.getOrUpdate(m,AA,function(){return new A.Map});if(A.tracing){m.size>z&&A.tracing.instant("session","createdDocumentRegistryBucket",{configFilePath:sA.configFilePath,key:AA});var _A=!A.isDeclarationFileName(wA)&&A.forEachEntry(m,function(QA,mA){return mA!==AA&&QA.has(wA)&&mA});_A&&A.tracing.instant("session","documentRegistryBucketOverlap",{path:wA,key1:_A,key2:AA})}var fA=iA.get(wA),M=fA&&v(fA,Y);if(!M&&B){var aA=B.getDocument(AA,wA);aA&&(A.Debug.assert(eA),M={sourceFile:aA,languageServiceRefCount:0},gA())}if(M)M.sourceFile.version!==cA&&(M.sourceFile=A.updateLanguageServiceSourceFile(M.sourceFile,oA,cA,oA.getChangeRange(M.sourceFile.scriptSnapshot)),B&&B.setDocument(AA,wA,M.sourceFile)),eA&&M.languageServiceRefCount++;else{var aA=A.createLanguageServiceSourceFile(V,oA,CA,cA,!1,Y);B&&B.setDocument(AA,wA,aA),M={sourceFile:aA,languageServiceRefCount:1},gA()}return A.Debug.assert(M.languageServiceRefCount!==0),M.sourceFile;function gA(){if(!fA)iA.set(wA,M);else if(r(fA)){var QA=new A.Map;QA.set(fA.sourceFile.scriptKind,fA),QA.set(Y,M),iA.set(wA,QA)}else fA.set(Y,M)}}function y(V,wA,IA,pA){var oA=A.toPath(V,p,_),cA=s(wA);return S(oA,cA,IA,pA)}function S(V,wA,IA,pA){var oA=A.Debug.checkDefined(m.get(g(wA,pA))),cA=oA.get(V),eA=v(cA,IA);eA.languageServiceRefCount--,A.Debug.assert(eA.languageServiceRefCount>=0),eA.languageServiceRefCount===0&&(r(cA)?oA.delete(V):(cA.delete(IA),cA.size===1&&oA.set(V,A.firstDefinedIterator(cA.values(),A.identity))))}function U(V,wA){return A.arrayFrom(m.entries(),function(IA){var pA=IA[0],oA=IA[1],cA=oA.get(V),eA=cA&&v(cA,wA);return[pA,eA&&eA.languageServiceRefCount]})}return{acquireDocument:k,acquireDocumentWithKey:P,updateDocument:H,updateDocumentWithKey:T,releaseDocument:y,releaseDocumentWithKey:S,getLanguageServiceRefCounts:U,reportStats:x,getKeyForCompilationSettings:s}}A.createDocumentRegistryInternal=i;function o(E){var p;if(E===null||typeof E!="object")return""+E;if(A.isArray(E))return"[".concat((p=A.map(E,function(_){return o(_)}))===null||p===void 0?void 0:p.join(","),"]");var B="{";for(var m in E)A.hasProperty(E,m)&&(B+="".concat(m,": ").concat(o(E[m])));return B+"}"}function s(E){return A.sourceFileAffectingCompilerOptions.map(function(p){return o(A.getCompilerOptionValue(E,p))}).join("|")+(E.pathsBasePath?"|".concat(E.pathsBasePath):void 0)}function g(E,p){return p?"".concat(E,"|").concat(p):E}})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){function i(V,wA,IA,pA){var oA=m(V,IA,pA);return function(cA,eA,Y){var q=g(V,wA,oA,eA,IA,pA),X=q.directImports,Z=q.indirectUsers;return pi({indirectUsers:Z},E(X,cA,eA.exportKind,IA,Y))}}t.createImportTracker=i;var o;(function(V){V[V.Named=0]="Named",V[V.Default=1]="Default",V[V.ExportEquals=2]="ExportEquals"})(o=t.ExportKind||(t.ExportKind={}));var s;(function(V){V[V.Import=0]="Import",V[V.Export=1]="Export"})(s=t.ImportExport||(t.ImportExport={}));function g(V,wA,IA,pA,oA,cA){var eA=pA.exportingModuleSymbol,Y=pA.exportKind,q=A.nodeSeenTracker(),X=A.nodeSeenTracker(),Z=[],K=!!eA.globalExports,J=K?void 0:[];return uA(eA),{directImports:Z,indirectUsers:sA()};function sA(){if(K)return V;if(eA.declarations)for(var _A=0,fA=eA.declarations;_A2&&(A.Debug.assert(uA===void 0),BA+=1,CA-=1),A.createTextSpanFromBounds(BA,CA)}function Y(J){return J.kind===0?J.textSpan:eA(J.node,J.node.getSourceFile())}t.getTextSpanOfEntry=Y;function q(J){var sA=A.getDeclarationFromName(J);return!!sA&&Z(sA)||J.kind===88||A.isWriteAccess(J)}function X(J,sA){var uA;if(!sA)return!1;var BA=A.getDeclarationFromName(J)||(J.kind===88?J.parent:A.isLiteralComputedPropertyDeclarationName(J)||J.kind===135&&A.isConstructorDeclaration(J.parent)?J.parent.parent:void 0),CA=BA&&A.isBinaryExpression(BA)?BA.left:void 0;return!!(BA&&(!((uA=sA.declarations)===null||uA===void 0)&&uA.some(function(z){return z===BA||z===CA})))}t.isDeclarationOfSymbol=X;function Z(J){if(J.flags&16777216)return!0;switch(J.kind){case 223:case 205:case 260:case 228:case 88:case 263:case 302:case 278:case 270:case 268:case 273:case 261:case 341:case 348:case 288:case 264:case 267:case 271:case 277:case 166:case 300:case 262:case 165:return!0;case 299:return!A.isArrayLiteralOrObjectLiteralDestructuringPattern(J.parent);case 259:case 215:case 173:case 171:case 174:case 175:return!!J.body;case 257:case 169:return!!J.initializer||A.isCatchClause(J.parent);case 170:case 168:case 350:case 343:return!1;default:return A.Debug.failBadSyntaxKind(J)}}var K;(function(J){function sA(UA,Ee,de,HA,pe,ee,Pe){var He,Xe;if(ee===void 0&&(ee={}),Pe===void 0&&(Pe=new A.Set(HA.map(function(Yt){return Yt.fileName}))),Ee=uA(Ee,ee),A.isSourceFile(Ee)){var or=A.GoToDefinition.getReferenceAtPosition(Ee,UA,de);if(!or?.file)return;var Mr=de.getTypeChecker().getMergedSymbol(or.file.symbol);if(Mr)return fA(de,Mr,!1,HA,Pe);var ar=de.getFileIncludeReasons();return ar?[{definition:{type:5,reference:or.reference,file:Ee},references:CA(or.file,ar,de)||A.emptyArray}]:void 0}if(!ee.implementations){var lt=aA(Ee,HA,pe);if(lt)return lt}var Lr=de.getTypeChecker(),gt=Lr.getSymbolAtLocation(A.isConstructorDeclaration(Ee)&&Ee.parent.name||Ee);if(!gt){if(!ee.implementations&&A.isStringLiteralLike(Ee)){if(A.isModuleSpecifierLike(Ee)){var ar=de.getFileIncludeReasons(),Pr=(Xe=(He=Ee.getSourceFile().resolvedModules)===null||He===void 0?void 0:He.get(Ee.text,A.getModeForUsageLocation(Ee.getSourceFile(),Ee)))===null||Xe===void 0?void 0:Xe.resolvedFileName,Et=Pr?de.getSourceFile(Pr):void 0;if(Et)return[{definition:{type:4,node:Ee},references:CA(Et,ar,de)||A.emptyArray}]}return oe(Ee,HA,Lr,pe)}return}if(gt.escapedName==="export=")return fA(de,gt.parent,!1,HA,Pe);var Zt=AA(gt,de,HA,pe,ee,Pe);if(Zt&&!(gt.flags&33554432))return Zt;var Ot=z(Ee,gt,Lr),_i=Ot&&AA(Ot,de,HA,pe,ee,Pe),ei=gA(gt,Ee,HA,Pe,Lr,pe,ee);return iA(de,Zt,ei,_i)}J.getReferencedSymbolsForNode=sA;function uA(UA,Ee){return Ee.use===1?UA=A.getAdjustedReferenceLocation(UA):Ee.use===2&&(UA=A.getAdjustedRenameLocation(UA)),UA}J.getAdjustedNode=uA;function BA(UA,Ee,de,HA){var pe,ee;HA===void 0&&(HA=new A.Set(de.map(function(or){return or.fileName})));var Pe=(pe=Ee.getSourceFile(UA))===null||pe===void 0?void 0:pe.symbol;if(Pe)return((ee=fA(Ee,Pe,!1,de,HA)[0])===null||ee===void 0?void 0:ee.references)||A.emptyArray;var He=Ee.getFileIncludeReasons(),Xe=Ee.getSourceFile(UA);return Xe&&He&&CA(Xe,He,Ee)||A.emptyArray}J.getReferencesForFileName=BA;function CA(UA,Ee,de){for(var HA,pe=Ee.get(UA.path)||A.emptyArray,ee=0,Pe=pe;ee=0&&!(He>de.end);){var Xe=He+Pe;(He===0||!A.isIdentifierPart(pe.charCodeAt(He-1),99))&&(Xe===ee||!A.isIdentifierPart(pe.charCodeAt(Xe),99))&&HA.push(He),He=pe.indexOf(Ee,He+Pe+1)}return HA}function VA(UA,Ee){var de=UA.getSourceFile(),HA=Ee.text,pe=A.mapDefined(bA(de,HA,UA),function(ee){return ee===Ee||A.isJumpStatementTarget(ee)&&A.getTargetLabel(ee,HA)===Ee?s(ee):void 0});return[{definition:{type:1,node:Ee},references:pe}]}function De(UA,Ee){switch(UA.kind){case 80:if(A.isJSDocMemberName(UA.parent))return!0;case 79:return UA.text.length===Ee.length;case 14:case 10:{var de=UA;return(A.isLiteralNameOfPropertyDeclarationOrIndexAccess(de)||A.isNameOfModuleDeclaration(UA)||A.isExpressionOfExternalModuleImportEqualsDeclaration(UA)||A.isCallExpression(UA.parent)&&A.isBindableObjectDefinePropertyCall(UA.parent)&&UA.parent.arguments[1]===UA)&&de.text.length===Ee.length}case 8:return A.isLiteralNameOfPropertyDeclarationOrIndexAccess(UA)&&UA.text.length===Ee.length;case 88:return Ee.length===7;default:return!1}}function _e(UA,Ee){var de=A.flatMap(UA,function(HA){return Ee.throwIfCancellationRequested(),A.mapDefined(bA(HA,"meta",HA),function(pe){var ee=pe.parent;if(A.isImportMeta(ee))return s(ee)})});return de.length?[{definition:{type:2,node:de[0].node},references:de}]:void 0}function Ae(UA,Ee,de,HA){var pe=A.flatMap(UA,function(ee){return de.throwIfCancellationRequested(),A.mapDefined(bA(ee,A.tokenToString(Ee),ee),function(Pe){if(Pe.kind===Ee&&(!HA||HA(Pe)))return s(Pe)})});return pe.length?[{definition:{type:2,node:pe[0].node},references:pe}]:void 0}function Q(UA,Ee,de,HA){return HA===void 0&&(HA=!0),de.cancellationToken.throwIfCancellationRequested(),Ze(UA,UA,Ee,de,HA)}function Ze(UA,Ee,de,HA,pe){if(HA.markSearchedSymbols(Ee,de.allSearchSymbols))for(var ee=0,Pe=TA(Ee,de.text,UA);ee0;nA--){var tA=lA[nA];IA(MA,tA)}return[lA.length-1,lA[0]]}function IA(MA,RA){var lA=S(MA,RA);v(B,lA),p.push(B),m.push(_),_=void 0,B=lA}function pA(){B.children&&(q(B.children,B),z(B.children)),B=p.pop(),_=m.pop()}function oA(MA,RA,lA){IA(MA,lA),Y(RA),pA()}function cA(MA){MA.initializer&&jA(MA.initializer)?(IA(MA),A.forEachChild(MA.initializer,Y),pA()):oA(MA,MA.initializer)}function eA(MA){return!A.hasDynamicName(MA)||MA.kind!==223&&A.isPropertyAccessExpression(MA.name.expression)&&A.isIdentifier(MA.name.expression.expression)&&A.idText(MA.name.expression.expression)==="Symbol"}function Y(MA){var RA;if(g.throwIfCancellationRequested(),!(!MA||A.isToken(MA)))switch(MA.kind){case 173:var lA=MA;oA(lA,lA.body);for(var tA=0,N=lA.parameters;tA0&&(IA(mr,we),A.forEachChild(mr.right,Y),pA()):A.isFunctionExpression(mr.right)||A.isArrowFunction(mr.right)?oA(MA,mr.right,we):(IA(mr,we),oA(MA,mr.right,$e.name),pA()),V(PA);return}case 7:case 9:{var LA=MA,we=Ye===7?LA.arguments[0]:LA.arguments[0].expression,ae=LA.arguments[1],We=wA(MA,we),PA=We[0],YA=We[1];IA(MA,YA),IA(MA,A.setTextRange(A.factory.createIdentifier(ae.text),ae)),Y(MA.arguments[2]),pA(),pA(),V(PA);return}case 5:{var mr=MA,$e=mr.left,Ce=$e.expression;if(A.isIdentifier(Ce)&&A.getElementOrPropertyAccessName($e)!=="prototype"&&_&&_.has(Ce.text)){A.isFunctionExpression(mr.right)||A.isArrowFunction(mr.right)?oA(MA,mr.right,Ce):A.isBindableStaticAccessExpression($e)&&(IA(mr,Ce),oA(mr.left,mr.right,A.getNameOrArgument($e)),pA());return}break}case 4:case 0:case 8:break;default:A.Debug.assertNever(Ye)}}default:A.hasJSDocNodes(MA)&&A.forEach(MA.jsDoc,function(Ke){A.forEach(Ke.tags,function(er){A.isJSDocTypeAlias(er)&&y(er)})}),A.forEachChild(MA,Y)}}function q(MA,RA){var lA=new A.Map;A.filterMutate(MA,function(tA,N){var nA=tA.name||A.getNameOfDeclaration(tA.node),kA=nA&&H(nA);if(!kA)return!0;var bA=lA.get(kA);if(!bA)return lA.set(kA,tA),!0;if(bA instanceof Array){for(var TA=0,VA=bA;TA0)return ue(lA)}switch(MA.kind){case 308:var tA=MA;return A.isExternalModule(tA)?'"'.concat(A.escapeString(A.getBaseFileName(A.removeFileExtension(A.normalizePath(tA.fileName)))),'"'):"";case 274:return A.isExportAssignment(MA)&&MA.isExportEquals?"export=":"default";case 216:case 259:case 215:case 260:case 228:return A.getSyntacticModifierFlags(MA)&1024?"default":KA(MA);case 173:return"constructor";case 177:return"new()";case 176:return"()";case 178:return"[]";default:return""}}function fA(MA){var RA=[];function lA(N){if(tA(N)&&(RA.push(N),N.children))for(var nA=0,kA=N.children;nA0)return ue(A.declarationNameToString(MA.name));if(A.isVariableDeclaration(RA))return ue(A.declarationNameToString(RA.name));if(A.isBinaryExpression(RA)&&RA.operatorToken.kind===63)return H(RA.left).replace(o,"");if(A.isPropertyAssignment(RA))return H(RA.name);if(A.getSyntacticModifierFlags(MA)&1024)return"default";if(A.isClassLike(MA))return"";if(A.isCallExpression(RA)){var lA=$A(RA.expression);if(lA!==void 0){if(lA=ue(lA),lA.length>s)return"".concat(lA," callback");var tA=ue(A.mapDefined(RA.arguments,function(N){return A.isStringLiteralLike(N)?N.getText(E):void 0}).join(", "));return"".concat(lA,"(").concat(tA,") callback")}}return""}function $A(MA){if(A.isIdentifier(MA))return MA.text;if(A.isPropertyAccessExpression(MA)){var RA=$A(MA.expression),lA=MA.name.text;return RA===void 0?lA:"".concat(RA,".").concat(lA)}else return}function jA(MA){switch(MA.kind){case 216:case 215:case 228:return!0;default:return!1}}function ue(MA){return MA=MA.length>s?MA.substring(0,s)+"...":MA,MA.replace(/\\?(\r?\n|\r|\u2028|\u2029)/g,"")}})(r=A.NavigationBar||(A.NavigationBar={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){function i(oA,cA,eA,Y,q,X){var Z=A.textChanges.ChangeTracker.fromContext({host:eA,formatContext:cA,preferences:q}),K=X==="SortAndCombine"||X==="All",J=K,sA=X==="RemoveUnused"||X==="All",uA=sA?g:A.identity,BA=J?B:A.identity,CA=function(QA){var mA=BA(uA(QA,oA,Y));return K?A.stableSort(mA,function(FA,SA){return U(FA,SA)}):mA},z=o(oA,oA.statements.filter(A.isImportDeclaration));if(z.forEach(function(QA){return gA(QA,CA)}),X!=="RemoveUnused"){var AA=oA.statements.filter(A.isExportDeclaration);gA(AA,_)}for(var iA=0,_A=oA.statements.filter(A.isAmbientModule);iA<_A.length;iA++){var fA=_A[iA];if(fA.body){var M=o(oA,fA.body.statements.filter(A.isImportDeclaration));if(M.forEach(function(QA){return gA(QA,CA)}),X!=="RemoveUnused"){var aA=fA.body.statements.filter(A.isExportDeclaration);gA(aA,_)}}}return Z.getChanges();function gA(QA,mA){if(A.length(QA)!==0){A.suppressLeadingTrivia(QA[0]);var FA=J?A.group(QA,function($A){return p($A.moduleSpecifier)}):[QA],SA=K?A.stableSort(FA,function($A,jA){return P($A[0].moduleSpecifier,jA[0].moduleSpecifier)}):FA,ce=A.flatMap(SA,function($A){return p($A[0].moduleSpecifier)?mA($A):$A});if(ce.length===0)Z.deleteNodes(oA,QA,{trailingTriviaOption:A.textChanges.TrailingTriviaOption.Include},!0);else{var re={leadingTriviaOption:A.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:A.textChanges.TrailingTriviaOption.Include,suffix:A.getNewLineOrDefaultFromHost(eA,cA.options)};Z.replaceNodeWithNodes(oA,QA[0],ce,re);var KA=Z.nodeHasTrailingComment(oA,QA[0],re);Z.deleteNodes(oA,QA.slice(1),{trailingTriviaOption:A.textChanges.TrailingTriviaOption.Include},KA)}}}}t.organizeImports=i;function o(oA,cA){for(var eA=A.createScanner(oA.languageVersion,!1,oA.languageVariant),Y=[],q=0,X=0,Z=cA;X=2))return!0}return!1}function g(oA,cA,eA){for(var Y=eA.getTypeChecker(),q=eA.getCompilerOptions(),X=Y.getJsxNamespace(cA),Z=Y.getJsxFragmentFactory(cA),K=!!(cA.transformFlags&2),J=[],sA=0,uA=oA;sA0?BA[0]:z[0],ce=FA.length===0?aA?void 0:A.factory.createNamedImports(A.emptyArray):z.length===0?A.factory.createNamedImports(FA):A.factory.updateNamedImports(z[0].importClause.namedBindings,FA);uA&&aA&&ce?(Z.push(x(SA,aA,void 0)),Z.push(x((cA=z[0])!==null&&cA!==void 0?cA:SA,void 0,ce))):Z.push(x(SA,aA,ce))}}return Z}t.coalesceImports=B;function m(oA){for(var cA,eA={defaultImports:[],namespaceImports:[],namedImports:[]},Y={defaultImports:[],namespaceImports:[],namedImports:[]},q=0,X=oA;q1&&F.push(m(S,U,"comment"))}}function B(H,T,v,F){A.isJsxText(H)||p(H.pos,T,v,F)}function m(H,T,v){return k(A.createTextSpanFromBounds(H,T),v)}function _(H,T){switch(H.kind){case 238:if(A.isFunctionLike(H.parent))return x(H.parent,H,T);switch(H.parent.kind){case 243:case 246:case 247:case 245:case 242:case 244:case 251:case 295:return oA(H.parent);case 255:var v=H.parent;if(v.tryBlock===H)return oA(H.parent);if(v.finallyBlock===H){var F=A.findChildOfKind(v,96,T);if(F)return oA(F)}default:return k(A.createTextSpanFromNode(H,T),"code")}case 265:return oA(H.parent);case 260:case 228:case 261:case 263:case 266:case 184:case 203:return oA(H);case 186:return oA(H,!1,!A.isTupleTypeNode(H.parent),22);case 292:case 293:return cA(H.statements);case 207:return pA(H);case 206:return pA(H,22);case 281:return U(H);case 285:return V(H);case 282:case 283:return wA(H.attributes);case 225:case 14:return IA(H);case 204:return oA(H,!1,!A.isBindingElement(H.parent),22);case 216:return S(H);case 210:return y(H);case 214:return eA(H)}function y(Y){if(Y.arguments.length){var q=A.findChildOfKind(Y,20,T),X=A.findChildOfKind(Y,21,T);if(!(!q||!X||A.positionsAreOnSameLine(q.pos,X.pos,T)))return O(q,X,Y,T,!1,!0)}}function S(Y){if(!(A.isBlock(Y.body)||A.isParenthesizedExpression(Y.body)||A.positionsAreOnSameLine(Y.body.getFullStart(),Y.body.getEnd(),T))){var q=A.createTextSpanFromBounds(Y.body.getFullStart(),Y.body.getEnd());return k(q,"code",A.createTextSpanFromNode(Y))}}function U(Y){var q=A.createTextSpanFromBounds(Y.openingElement.getStart(T),Y.closingElement.getEnd()),X=Y.openingElement.tagName.getText(T),Z="<"+X+">...";return k(q,"code",q,!1,Z)}function V(Y){var q=A.createTextSpanFromBounds(Y.openingFragment.getStart(T),Y.closingFragment.getEnd()),X="<>...";return k(q,"code",q,!1,X)}function wA(Y){if(Y.properties.length!==0)return m(Y.getStart(T),Y.getEnd(),"code")}function IA(Y){if(!(Y.kind===14&&Y.text.length===0))return m(Y.getStart(T),Y.getEnd(),"code")}function pA(Y,q){return q===void 0&&(q=18),oA(Y,!1,!A.isArrayLiteralExpression(Y.parent)&&!A.isCallExpression(Y.parent),q)}function oA(Y,q,X,Z,K){q===void 0&&(q=!1),X===void 0&&(X=!0),Z===void 0&&(Z=18),K===void 0&&(K=Z===18?19:23);var J=A.findChildOfKind(H,Z,T),sA=A.findChildOfKind(H,K,T);return J&&sA&&O(J,sA,Y,T,q,X)}function cA(Y){return Y.length?k(A.createTextSpanFromRange(Y),"code"):void 0}function eA(Y){if(!A.positionsAreOnSameLine(Y.getStart(),Y.getEnd(),T)){var q=A.createTextSpanFromBounds(Y.getStart(),Y.getEnd());return k(q,"code",A.createTextSpanFromNode(Y))}}}function x(H,T,v){var F=P(H,T,v),y=A.findChildOfKind(T,19,v);return F&&y&&O(F,y,H,v,H.kind!==216)}function O(H,T,v,F,y,S){y===void 0&&(y=!1),S===void 0&&(S=!0);var U=A.createTextSpanFromBounds(S?H.getFullStart():H.getStart(F),T.getEnd());return k(U,"code",A.createTextSpanFromNode(v,F),y)}function k(H,T,v,F,y){return v===void 0&&(v=H),F===void 0&&(F=!1),y===void 0&&(y="..."),{textSpan:H,kind:T,hintSpan:v,bannerText:y,autoCollapse:F}}function P(H,T,v){if(A.isNodeArrayMultiLine(H.parameters,v)){var F=A.findChildOfKind(H,20,v);if(F)return F}return A.findChildOfKind(T,18,v)}})(r=A.OutliningElementsCollector||(A.OutliningElementsCollector={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(q){q[q.exact=0]="exact",q[q.prefix=1]="prefix",q[q.substring=2]="substring",q[q.camelCase=3]="camelCase"})(r=A.PatternMatchKind||(A.PatternMatchKind={}));function t(q,X){return{kind:q,isCaseSensitive:X}}function i(q){var X=new A.Map,Z=q.trim().split(".").map(function(K){return O(K.trim())});if(!Z.some(function(K){return!K.subWordTextChunks.length}))return{getFullMatch:function(K,J){return o(K,J,Z,X)},getMatchForLastSegmentOfPattern:function(K){return E(K,A.last(Z),X)},patternContainsDots:Z.length>1}}A.createPatternMatcher=i;function o(q,X,Z,K){var J=E(X,A.last(Z),K);if(J&&!(Z.length-1>q.length)){for(var sA,uA=Z.length-2,BA=q.length-1;uA>=0;uA-=1,BA-=1)sA=p(sA,E(q[BA],Z[uA],K));return sA}}function s(q,X){var Z=X.get(q);return Z||X.set(q,Z=V(q)),Z}function g(q,X,Z){var K=H(q,X.textLowerCase);if(K===0)return t(X.text.length===q.length?r.exact:r.prefix,A.startsWith(q,X.text));if(X.isLowerCase){if(K===-1)return;for(var J=s(q,Z),sA=0,uA=J;sA0)return t(r.substring,!0);if(X.characterSpans.length>0){var CA=s(q,Z),z=x(q,CA,X,!1)?!0:x(q,CA,X,!0)?!1:void 0;if(z!==void 0)return t(r.camelCase,z)}}}function E(q,X,Z){if(Y(X.totalTextChunk.text,function(z){return z!==32&&z!==42})){var K=g(q,X.totalTextChunk,Z);if(K)return K}for(var J=X.subWordTextChunks,sA,uA=0,BA=J;uA=65&&q<=90)return!0;if(q<127||!A.isUnicodeIdentifierStart(q,99))return!1;var X=String.fromCharCode(q);return X===X.toUpperCase()}function P(q){if(q>=97&&q<=122)return!0;if(q<127||!A.isUnicodeIdentifierStart(q,99))return!1;var X=String.fromCharCode(q);return X===X.toLowerCase()}function H(q,X){for(var Z=q.length-X.length,K=function(uA){if(Y(X,function(BA,CA){return T(q.charCodeAt(CA+uA))===BA}))return{value:uA}},J=0;J<=Z;J++){var sA=K(J);if(typeof sA=="object")return sA.value}return-1}function T(q){return q>=65&&q<=90?97+(q-65):q<127?q:String.fromCharCode(q).toLowerCase().charCodeAt(0)}function v(q){return q>=48&&q<=57}function F(q){return k(q)||P(q)||v(q)||q===95||q===36}function y(q){for(var X=[],Z=0,K=0,J=0;J0&&(X.push(S(q.substr(Z,K))),K=0)}return K>0&&X.push(S(q.substr(Z,K))),X}function S(q){var X=q.toLowerCase();return{text:q,textLowerCase:X,isLowerCase:q===X,characterSpans:U(q)}}function U(q){return wA(q,!1)}A.breakIntoCharacterSpans=U;function V(q){return wA(q,!0)}A.breakIntoWordSpans=V;function wA(q,X){for(var Z=[],K=0,J=1;JO)break A;var wA=A.singleOrUndefined(A.getTrailingCommentRanges(k.text,U.end));if(wA&&wA.kind===2&&X(wA.pos,wA.end),o(k,O,U)){if(A.isFunctionBody(U)&&A.isFunctionLikeDeclaration(v)&&!A.positionsAreOnSameLine(U.getStart(k),U.getEnd(),k)&&q(U.getStart(k),U.getEnd()),A.isBlock(U)||A.isTemplateSpan(U)||A.isTemplateHead(U)||A.isTemplateTail(U)||S&&A.isTemplateHead(S)||A.isVariableDeclarationList(U)&&A.isVariableStatement(v)||A.isSyntaxList(U)&&A.isVariableDeclarationList(v)||A.isVariableDeclaration(U)&&A.isSyntaxList(v)&&F.length===1||A.isJSDocTypeExpression(U)||A.isJSDocSignature(U)||A.isJSDocTypeLiteral(U)){v=U;break}if(A.isTemplateSpan(v)&&V&&A.isTemplateMiddleOrTemplateTail(V)){var IA=U.getFullStart()-2,pA=V.getStart()+1;q(IA,pA)}var oA=A.isSyntaxList(U)&&m(S)&&_(V)&&!A.positionsAreOnSameLine(S.getStart(),V.getStart(),k),cA=oA?S.getEnd():U.getStart(),eA=oA?V.getStart():x(k,U);if(A.hasJSDocNodes(U)&&(!((P=U.jsDoc)===null||P===void 0)&&P.length)&&q(A.first(U.jsDoc).getStart(),eA),A.isSyntaxList(U)){var Y=U.getChildren()[0];Y&&A.hasJSDocNodes(Y)&&(!((H=Y.jsDoc)===null||H===void 0)&&H.length)&&Y.getStart()!==U.pos&&(cA=Math.min(cA,A.first(Y.jsDoc).getStart()))}q(cA,eA),(A.isStringLiteral(U)||A.isTemplateLiteral(U))&&q(cA+1,eA-1),v=U;break}if(y===F.length-1)break A}}return T;function q(Z,K){if(Z!==K){var J=A.createTextSpanFromBounds(Z,K);(!T||!A.textSpansEqual(J,T.textSpan)&&A.textSpanIntersectsWithPosition(J,O))&&(T=pi({textSpan:J},T&&{parent:T}))}}function X(Z,K){q(Z,K);for(var J=Z;k.text.charCodeAt(J)===47;)J++;q(J,K)}}t.getSmartSelectionRange=i;function o(O,k,P){if(A.Debug.assert(P.pos<=k),k0&&A.last(_A).kind===27&&fA++,fA}function U(AA,iA,_A,fA){return A.Debug.assert(_A>=iA.getStart(),"Assumed 'position' could not occur before node."),A.isTemplateLiteralToken(iA)?A.isInsideTemplateLiteral(iA,_A,fA)?0:AA+2:AA+1}function V(AA,iA,_A){var fA=A.isNoSubstitutionTemplateLiteral(AA.template)?1:AA.template.templateSpans.length+1;return iA!==0&&A.Debug.assertLessThan(iA,fA),{isTypeParameterList:!1,invocation:{kind:0,node:AA},argumentsSpan:IA(AA,_A),argumentIndex:iA,argumentCount:fA}}function wA(AA,iA){var _A=AA.getFullStart(),fA=A.skipTrivia(iA.text,AA.getEnd(),!1);return A.createTextSpan(_A,fA-_A)}function IA(AA,iA){var _A=AA.template,fA=_A.getStart(),M=_A.getEnd();if(_A.kind===225){var aA=A.last(_A.templateSpans);aA.literal.getFullWidth()===0&&(M=A.skipTrivia(iA.text,M,!1))}return A.createTextSpan(fA,M-fA)}function pA(AA,iA,_A,fA,M){for(var aA=function(mA){A.Debug.assert(A.rangeContainsRange(mA.parent,mA),"Not a subspan",function(){return"Child: ".concat(A.Debug.formatSyntaxKind(mA.kind),", parent: ").concat(A.Debug.formatSyntaxKind(mA.parent.kind))});var FA=k(mA,iA,_A,fA);if(FA)return{value:FA}},gA=AA;!A.isSourceFile(gA)&&(M||!A.isBlock(gA));gA=gA.parent){var QA=aA(gA);if(typeof QA=="object")return QA.value}}function oA(AA,iA,_A){var fA=AA.getChildren(_A),M=fA.indexOf(iA);return A.Debug.assert(M>=0&&fA.length>M+1),fA[M+1]}function cA(AA){return AA.kind===0?A.getInvokedExpression(AA.node):AA.called}function eA(AA){return AA.kind===0?AA.node:AA.kind===1?AA.called:AA.node}var Y=70246400;function q(AA,iA,_A,fA,M,aA){var gA,QA=_A.isTypeParameterList,mA=_A.argumentCount,FA=_A.argumentsSpan,SA=_A.invocation,ce=_A.argumentIndex,re=eA(SA),KA=SA.kind===2?SA.symbol:M.getSymbolAtLocation(cA(SA))||aA&&((gA=iA.declaration)===null||gA===void 0?void 0:gA.symbol),$A=KA?A.symbolToDisplayParts(M,KA,aA?fA:void 0,void 0):A.emptyArray,jA=A.map(AA,function(De){return J(De,$A,QA,M,re,fA)});ce!==0&&A.Debug.assertLessThan(ce,mA);for(var ue=0,MA=0,RA=0;RA1))for(var tA=0,N=0,nA=lA;N=mA){ue=MA+tA;break}tA++}MA+=lA.length}A.Debug.assert(ue!==-1);var bA={items:A.flatMapToMutable(jA,A.identity),applicableSpan:FA,selectedItemIndex:ue,argumentIndex:ce,argumentCount:mA},TA=bA.items[ue];if(TA.isVariadic){var VA=A.findIndex(TA.parameters,function(De){return!!De.isRest});-1CA?BA.substr(0,CA-3)+"...":BA}function J(BA){var CA=71286784,z={removeComments:!0},AA=A.createPrinter(z);return A.usingSingleLineStringWriter(function(iA){var _A=H.typeToTypeNode(BA,void 0,CA,iA);A.Debug.assertIsDefined(_A,"should always get typenode"),AA.writeNode(4,_A,B,iA)})}function sA(BA){return BA==="undefined"}function uA(BA){if((A.isParameterDeclaration(BA)||A.isVariableDeclaration(BA)&&A.isVarConst(BA))&&BA.initializer){var CA=A.skipParentheses(BA.initializer);return!(eA(CA)||A.isNewExpression(CA)||A.isObjectLiteralExpression(CA)||A.isAssertionExpression(CA))}return!0}}t.provideInlayHints=E})(r=A.InlayHints||(A.InlayHints={}))})(Oe||(Oe={}));var Oe;(function(A){var r=/^data:(?:application\/json(?:;charset=[uU][tT][fF]-8);base64,([A-Za-z0-9+\/=]+)$)?/;function t(g){var E=A.createGetCanonicalFileName(g.useCaseSensitiveFileNames()),p=g.getCurrentDirectory(),B=new A.Map,m=new A.Map;return{tryGetSourcePosition:O,tryGetGeneratedPosition:k,toLineColumnOffset:v,clearCache:F};function _(y){return A.toPath(y,p,E)}function x(y,S){var U=_(y),V=m.get(U);if(V)return V;var wA;if(g.getDocumentPositionMapper)wA=g.getDocumentPositionMapper(y,S);else if(g.readFile){var IA=T(y);wA=IA&&A.getDocumentPositionMapper({getSourceFileLike:T,getCanonicalFileName:E,log:function(pA){return g.log(pA)}},y,A.getLineInfo(IA.text,A.getLineStarts(IA)),function(pA){return!g.fileExists||g.fileExists(pA)?g.readFile(pA):void 0})}return m.set(U,wA||A.identitySourceMapConsumer),wA||A.identitySourceMapConsumer}function O(y){if(A.isDeclarationFileName(y.fileName)){var S=P(y.fileName);if(S){var U=x(y.fileName).getSourcePosition(y);return!U||U===y?void 0:O(U)||U}}}function k(y){if(!A.isDeclarationFileName(y.fileName)){var S=P(y.fileName);if(S){var U=g.getProgram();if(!U.isSourceOfProjectReferenceRedirect(S.fileName)){var V=U.getCompilerOptions(),wA=A.outFile(V),IA=wA?A.removeFileExtension(wA)+".d.ts":A.getDeclarationEmitOutputFilePathWorker(y.fileName,U.getCompilerOptions(),p,U.getCommonSourceDirectory(),E);if(IA!==void 0){var pA=x(IA,y.fileName).getGeneratedPosition(y);return pA===y?void 0:pA}}}}}function P(y){var S=g.getProgram();if(S){var U=_(y),V=S.getSourceFileByPath(U);return V&&V.resolvedPath===U?V:void 0}}function H(y){var S=_(y),U=B.get(S);if(U!==void 0)return U||void 0;if(!g.readFile||g.fileExists&&!g.fileExists(S)){B.set(S,!1);return}var V=g.readFile(S),wA=V?s(V):!1;return B.set(S,wA),wA||void 0}function T(y){return g.getSourceFileLike?g.getSourceFileLike(y):P(y)||H(y)}function v(y,S){var U=T(y);return U.getLineAndCharacterOfPosition(S)}function F(){B.clear(),m.clear()}}A.getSourceMapper=t;function i(g,E,p,B){var m=A.tryGetSourceMappingURL(p);if(m){var _=r.exec(m);if(_){if(_[1]){var x=_[1];return o(g,A.base64decode(A.sys,x),E)}m=void 0}}var O=[];m&&O.push(m),O.push(E+".map");for(var k=m&&A.getNormalizedAbsolutePath(m,A.getDirectoryPath(E)),P=0,H=O;PS?!1:F.arguments.length0?A.arrayFrom(x.values()).join(","):""}t.getSymbolModifiers=E;function p(m,_,x,O,k,P,H){var T;P===void 0&&(P=A.getMeaningFromLocation(k));var v=[],F=[],y=[],S=A.getCombinedLocalAndExportSymbolFlags(_),U=P&1?s(m,_,k):"",V=!1,wA=k.kind===108&&A.isInExpressionContext(k)||A.isThisInTypeQuery(k),IA,pA,oA,cA,eA=!1;if(k.kind===108&&!wA)return{displayParts:[A.keywordPart(108)],documentation:[],symbolKind:"primitive type",tags:void 0};if(U!==""||S&32||S&2097152){if(U==="getter"||U==="setter"){var Y=A.find(_.declarations,function(kA){return kA.name===k});if(Y)switch(Y.kind){case 174:U="getter";break;case 175:U="setter";break;case 169:U="accessor";break;default:A.Debug.assertNever(Y)}else U="property"}var q=void 0;if(IA=wA?m.getTypeAtLocation(k):m.getTypeOfSymbolAtLocation(_,k),k.parent&&k.parent.kind===208){var X=k.parent.name;(X===k||X&&X.getFullWidth()===0)&&(k=k.parent)}var Z=void 0;if(A.isCallOrNewExpression(k)?Z=k:(A.isCallExpressionTarget(k)||A.isNewExpressionTarget(k)||k.parent&&(A.isJsxOpeningLikeElement(k.parent)||A.isTaggedTemplateExpression(k.parent))&&A.isFunctionLike(_.valueDeclaration))&&(Z=k.parent),Z){q=m.getResolvedSignature(Z);var K=Z.kind===211||A.isCallExpression(Z)&&Z.expression.kind===106,J=K?IA.getConstructSignatures():IA.getCallSignatures();if(q&&!A.contains(J,q.target)&&!A.contains(J,q)&&(q=J.length?J[0]:void 0),q){switch(K&&S&32?(U="constructor",lA(IA.symbol,U)):S&2097152?(U="alias",tA(U),v.push(A.spacePart()),K&&(q.flags&4&&(v.push(A.keywordPart(126)),v.push(A.spacePart())),v.push(A.keywordPart(103)),v.push(A.spacePart())),RA(_)):lA(_,U),U){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":v.push(A.punctuationPart(58)),v.push(A.spacePart()),!(A.getObjectFlags(IA)&16)&&IA.symbol&&(A.addRange(v,A.symbolToDisplayParts(m,IA.symbol,O,void 0,5)),v.push(A.lineBreakPart())),K&&(q.flags&4&&(v.push(A.keywordPart(126)),v.push(A.spacePart())),v.push(A.keywordPart(103)),v.push(A.spacePart())),N(q,J,262144);break;default:N(q,J)}V=!0,eA=J.length>1}}else if(A.isNameOfFunctionDeclaration(k)&&!(S&98304)||k.kind===135&&k.parent.kind===173){var sA=k.parent,uA=_.declarations&&A.find(_.declarations,function(kA){return kA===(k.kind===135?sA.parent:sA)});if(uA){var J=sA.kind===173?IA.getNonNullableType().getConstructSignatures():IA.getNonNullableType().getCallSignatures();m.isImplementationOfOverload(sA)?q=J[0]:q=m.getSignatureFromDeclaration(sA),sA.kind===173?(U="constructor",lA(IA.symbol,U)):lA(sA.kind===176&&!(IA.symbol.flags&2048||IA.symbol.flags&4096)?IA.symbol:_,U),q&&N(q,J),V=!0,eA=J.length>1}}}if(S&32&&!V&&!wA&&(ue(),A.getDeclarationOfKind(_,228)?tA("local class"):v.push(A.keywordPart(84)),v.push(A.spacePart()),RA(_),nA(_,x)),S&64&&P&2&&(jA(),v.push(A.keywordPart(118)),v.push(A.spacePart()),RA(_),nA(_,x)),S&524288&&P&2&&(jA(),v.push(A.keywordPart(154)),v.push(A.spacePart()),RA(_),nA(_,x),v.push(A.spacePart()),v.push(A.operatorPart(63)),v.push(A.spacePart()),A.addRange(v,A.typeToDisplayParts(m,A.isConstTypeReference(k.parent)?m.getTypeAtLocation(k.parent):m.getDeclaredTypeOfSymbol(_),O,8388608))),S&384&&(jA(),A.some(_.declarations,function(kA){return A.isEnumDeclaration(kA)&&A.isEnumConst(kA)})&&(v.push(A.keywordPart(85)),v.push(A.spacePart())),v.push(A.keywordPart(92)),v.push(A.spacePart()),RA(_)),S&1536&&!wA){jA();var Y=A.getDeclarationOfKind(_,264),BA=Y&&Y.name&&Y.name.kind===79;v.push(A.keywordPart(BA?143:142)),v.push(A.spacePart()),RA(_)}if(S&262144&&P&2)if(jA(),v.push(A.punctuationPart(20)),v.push(A.textPart("type parameter")),v.push(A.punctuationPart(21)),v.push(A.spacePart()),RA(_),_.parent)MA(),RA(_.parent,O),nA(_.parent,O);else{var CA=A.getDeclarationOfKind(_,165);if(CA===void 0)return A.Debug.fail();var Y=CA.parent;if(Y)if(A.isFunctionLikeKind(Y.kind)){MA();var q=m.getSignatureFromDeclaration(Y);Y.kind===177?(v.push(A.keywordPart(103)),v.push(A.spacePart())):Y.kind!==176&&Y.name&&RA(Y.symbol),A.addRange(v,A.signatureToDisplayParts(m,q,x,32))}else Y.kind===262&&(MA(),v.push(A.keywordPart(154)),v.push(A.spacePart()),RA(Y.symbol),nA(Y.symbol,x))}if(S&8){U="enum member",lA(_,"enum member");var Y=(T=_.declarations)===null||T===void 0?void 0:T[0];if(Y?.kind===302){var z=m.getConstantValue(Y);z!==void 0&&(v.push(A.spacePart()),v.push(A.operatorPart(63)),v.push(A.spacePart()),v.push(A.displayPart(A.getTextOfConstantValue(z),typeof z=="number"?A.SymbolDisplayPartKind.numericLiteral:A.SymbolDisplayPartKind.stringLiteral)))}}if(_.flags&2097152){if(jA(),!V){var AA=m.getAliasedSymbol(_);if(AA!==_&&AA.declarations&&AA.declarations.length>0){var iA=AA.declarations[0],_A=A.getNameOfDeclaration(iA);if(_A){var fA=A.isModuleWithStringLiteralName(iA)&&A.hasSyntacticModifier(iA,2),M=_.name!=="default"&&!fA,aA=p(m,AA,A.getSourceFileOfNode(iA),iA,_A,P,M?_:AA);v.push.apply(v,aA.displayParts),v.push(A.lineBreakPart()),oA=aA.documentation,cA=aA.tags}else oA=AA.getContextualDocumentationComment(iA,m),cA=AA.getJsDocTags(m)}}if(_.declarations)switch(_.declarations[0].kind){case 267:v.push(A.keywordPart(93)),v.push(A.spacePart()),v.push(A.keywordPart(143));break;case 274:v.push(A.keywordPart(93)),v.push(A.spacePart()),v.push(A.keywordPart(_.declarations[0].isExportEquals?63:88));break;case 278:v.push(A.keywordPart(93));break;default:v.push(A.keywordPart(100))}v.push(A.spacePart()),RA(_),A.forEach(_.declarations,function(kA){if(kA.kind===268){var bA=kA;if(A.isExternalModuleImportEqualsDeclaration(bA))v.push(A.spacePart()),v.push(A.operatorPart(63)),v.push(A.spacePart()),v.push(A.keywordPart(147)),v.push(A.punctuationPart(20)),v.push(A.displayPart(A.getTextOfNode(A.getExternalModuleImportEqualsDeclarationExpression(bA)),A.SymbolDisplayPartKind.stringLiteral)),v.push(A.punctuationPart(21));else{var TA=m.getSymbolAtLocation(bA.moduleReference);TA&&(v.push(A.spacePart()),v.push(A.operatorPart(63)),v.push(A.spacePart()),RA(TA,O))}return!0}})}if(!V)if(U!==""){if(IA){if(wA?(jA(),v.push(A.keywordPart(108))):lA(_,U),U==="property"||U==="accessor"||U==="getter"||U==="setter"||U==="JSX attribute"||S&3||U==="local var"||U==="index"||wA){if(v.push(A.punctuationPart(58)),v.push(A.spacePart()),IA.symbol&&IA.symbol.flags&262144&&U!=="index"){var gA=A.mapToDisplayParts(function(kA){var bA=m.typeParameterToDeclaration(IA,O,i);$A().writeNode(4,bA,A.getSourceFileOfNode(A.getParseTreeNode(O)),kA)});A.addRange(v,gA)}else A.addRange(v,A.typeToDisplayParts(m,IA,O));if(_.target&&_.target.tupleLabelDeclaration){var QA=_.target.tupleLabelDeclaration;A.Debug.assertNode(QA.name,A.isIdentifier),v.push(A.spacePart()),v.push(A.punctuationPart(20)),v.push(A.textPart(A.idText(QA.name))),v.push(A.punctuationPart(21))}}else if(S&16||S&8192||S&16384||S&131072||S&98304||U==="method"){var J=IA.getNonNullableType().getCallSignatures();J.length&&(N(J[0],J),eA=J.length>1)}}}else U=o(m,_,k);if(F.length===0&&!eA&&(F=_.getContextualDocumentationComment(O,m)),F.length===0&&S&4&&_.parent&&_.declarations&&A.forEach(_.parent.declarations,function(kA){return kA.kind===308}))for(var mA=0,FA=_.declarations;mA0))break}}if(F.length===0&&A.isIdentifier(k)&&_.valueDeclaration&&A.isBindingElement(_.valueDeclaration)){var Y=_.valueDeclaration,ce=Y.parent;if(A.isIdentifier(Y.name)&&A.isObjectBindingPattern(ce)){var re=A.getTextOfIdentifierOrLiteral(Y.name),KA=m.getTypeAtLocation(ce);F=A.firstDefined(KA.isUnion()?KA.types:[KA],function(bA){var TA=bA.getProperty(re);return TA?TA.getDocumentationComment(m):void 0})||A.emptyArray}}return y.length===0&&!eA&&(y=_.getContextualJsDocTags(O,m)),F.length===0&&oA&&(F=oA),y.length===0&&cA&&(y=cA),{displayParts:v,documentation:F,symbolKind:U,tags:y.length===0?void 0:y};function $A(){return pA||(pA=A.createPrinter({removeComments:!0})),pA}function jA(){v.length&&v.push(A.lineBreakPart()),ue()}function ue(){H&&(tA("alias"),v.push(A.spacePart()))}function MA(){v.push(A.spacePart()),v.push(A.keywordPart(101)),v.push(A.spacePart())}function RA(kA,bA){var TA;H&&kA===_&&(kA=H),U==="index"&&(TA=m.getIndexInfosOfIndexSymbol(kA));var VA=[];kA.flags&131072&&TA?(kA.parent&&(VA=A.symbolToDisplayParts(m,kA.parent)),VA.push(A.punctuationPart(22)),TA.forEach(function(De,_e){VA.push.apply(VA,A.typeToDisplayParts(m,De.keyType)),_e!==TA.length-1&&(VA.push(A.spacePart()),VA.push(A.punctuationPart(51)),VA.push(A.spacePart()))}),VA.push(A.punctuationPart(23))):VA=A.symbolToDisplayParts(m,kA,bA||x,void 0,7),A.addRange(v,VA),_.flags&16777216&&v.push(A.punctuationPart(57))}function lA(kA,bA){jA(),bA&&(tA(bA),kA&&!A.some(kA.declarations,function(TA){return A.isArrowFunction(TA)||(A.isFunctionExpression(TA)||A.isClassExpression(TA))&&!TA.name})&&(v.push(A.spacePart()),RA(kA)))}function tA(kA){switch(kA){case"var":case"function":case"let":case"const":case"constructor":v.push(A.textOrKeywordPart(kA));return;default:v.push(A.punctuationPart(20)),v.push(A.textOrKeywordPart(kA)),v.push(A.punctuationPart(21));return}}function N(kA,bA,TA){TA===void 0&&(TA=0),A.addRange(v,A.signatureToDisplayParts(m,kA,O,TA|32)),bA.length>1&&(v.push(A.spacePart()),v.push(A.punctuationPart(20)),v.push(A.operatorPart(39)),v.push(A.displayPart((bA.length-1).toString(),A.SymbolDisplayPartKind.numericLiteral)),v.push(A.spacePart()),v.push(A.textPart(bA.length===2?"overload":"overloads")),v.push(A.punctuationPart(21))),F=kA.getDocumentationComment(m),y=kA.getJsDocTags(),bA.length>1&&F.length===0&&y.length===0&&(F=bA[0].getDocumentationComment(m),y=bA[0].getJsDocTags().filter(function(VA){return VA.name!=="deprecated"}))}function nA(kA,bA){var TA=A.mapToDisplayParts(function(VA){var De=m.symbolToTypeParameterDeclarations(kA,bA,i);$A().writeList(53776,De,A.getSourceFileOfNode(A.getParseTreeNode(bA)),VA)});A.addRange(v,TA)}}t.getSymbolDisplayPartsDocumentationAndSymbolKind=p;function B(m){return m.parent?!1:A.forEach(m.declarations,function(_){if(_.kind===215)return!0;if(_.kind!==257&&_.kind!==259)return!1;for(var x=_.parent;!A.isFunctionBlock(x);x=x.parent)if(x.kind===308||x.kind===265)return!1;return!0})}})(r=A.SymbolDisplay||(A.SymbolDisplay={}))})(Oe||(Oe={}));var Oe;(function(A){function r(s,g){var E=[],p=g.compilerOptions?o(g.compilerOptions,E):{},B=A.getDefaultCompilerOptions();for(var m in B)A.hasProperty(B,m)&&p[m]===void 0&&(p[m]=B[m]);for(var _=0,x=A.transpileOptionValueCompilerOptions;_>=m;return F}function H(T,v){var F=(T>>v&_)+1;return A.Debug.assert((F&_)===F,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),T&~(_<=X.length)return!1;var sA=X[Z];if(J.end<=sA.start)return!1;if(A.startEndOverlapsWithStartEnd(J.pos,J.end,sA.start,sA.start+sA.length))return!0;Z++}};function K(){return!1}}function H(Y,q,X){var Z=Y.getStart(X);if(Z===q.pos&&Y.end===q.end)return Z;var K=A.findPrecedingToken(q.pos,X);return!K||K.end>=q.pos?Y.pos:K.end}function T(Y,q,X){for(var Z=-1,K;Y;){var J=X.getLineAndCharacterOfPosition(Y.getStart(X)).line;if(Z!==-1&&J!==Z)break;if(t.SmartIndenter.shouldIndentChildNode(q,Y,K,X))return q.indentSize;Z=J,K=Y,Y=Y.parent}return 0}function v(Y,q,X,Z,K,J){var sA={pos:Y.pos,end:Y.end};return t.getFormattingScanner(q.text,X,sA.pos,sA.end,function(uA){return S(sA,Y,Z,K,uA,J,1,function(BA){return!1},q)})}t.formatNodeGivenIndentation=v;function F(Y,q,X,Z){if(!Y)return[];var K={pos:A.getLineStartPositionForPosition(Y.getStart(q),q),end:Y.end};return y(K,q,X,Z)}function y(Y,q,X,Z){var K=k(Y,q);return t.getFormattingScanner(q.text,q.languageVariant,H(K,Y,q),Y.end,function(J){return S(Y,K,t.SmartIndenter.getIndentationForNode(K,Y,q,X.options),T(K,X.options,q),J,X,Z,P(q.parseDiagnostics,Y),q)})}function S(Y,q,X,Z,K,J,sA,uA,BA){var CA,z=J.options,AA=J.getRules,iA=J.host,_A=new t.FormattingContext(BA,sA,z),fA,M,aA,gA,QA,mA=-1,FA=[];if(K.advance(),K.isOnToken()){var SA=BA.getLineAndCharacterOfPosition(q.getStart(BA)).line,ce=SA;A.hasDecorators(q)&&(ce=BA.getLineAndCharacterOfPosition(A.getNonDecoratorTokenPosOfNode(q,BA)).line),tA(q,q,SA,ce,X,Z)}if(!K.isOnToken()){var re=t.SmartIndenter.nodeWillIndentChild(z,q,void 0,BA,!1)?X+z.indentSize:X,KA=K.getCurrentLeadingTrivia();KA&&(N(KA,re,!1,function(Ye){return kA(Ye,BA.getLineAndCharacterOfPosition(Ye.pos),q,q,void 0)}),z.trimTrailingWhitespace!==!1&&Ze(KA))}if(M&&K.getStartPos()>=Y.end){var $A=K.isOnEOF()?K.readEOFTokenRange():K.isOnToken()?K.readTokenInfo(q).token:void 0;if($A&&$A.pos===fA){var jA=((CA=A.findPrecedingToken($A.end,BA,q))===null||CA===void 0?void 0:CA.parent)||aA;bA($A,BA.getLineAndCharacterOfPosition($A.pos).line,jA,M,gA,aA,jA,void 0)}}return FA;function ue(Ye,mr,$e,xr,PA){if(A.rangeOverlapsWithStartEnd(xr,Ye,mr)||A.rangeContainsStartEnd(xr,Ye,mr)){if(PA!==-1)return PA}else{var we=BA.getLineAndCharacterOfPosition(Ye).line,LA=A.getLineStartPositionForPosition(Ye,BA),ae=t.SmartIndenter.findFirstNonWhitespaceColumn(LA,Ye,BA,z);if(we!==$e||Ye===ae){var We=t.SmartIndenter.getBaseIndentation(z);return We>ae?We:ae}}return-1}function MA(Ye,mr,$e,xr,PA,we){var LA=t.SmartIndenter.shouldIndentChildNode(z,Ye)?z.indentSize:0;return we===mr?{indentation:mr===QA?mA:PA.getIndentation(),delta:Math.min(z.indentSize,PA.getDelta(Ye)+LA)}:$e===-1?Ye.kind===20&&mr===QA?{indentation:mA,delta:PA.getDelta(Ye)}:t.SmartIndenter.childStartsOnTheSameLineWithElseInIfStatement(xr,Ye,mr,BA)||t.SmartIndenter.childIsUnindentedBranchOfConditionalExpression(xr,Ye,mr,BA)||t.SmartIndenter.argumentStartsOnSameLineAsPreviousArgument(xr,Ye,mr,BA)?{indentation:PA.getIndentation(),delta:LA}:{indentation:PA.getIndentation()+PA.getDelta(Ye),delta:LA}:{indentation:$e,delta:LA}}function RA(Ye){if(A.canHaveModifiers(Ye)){var mr=A.find(Ye.modifiers,A.isModifier,A.findIndex(Ye.modifiers,A.isDecorator));if(mr)return mr.kind}switch(Ye.kind){case 260:return 84;case 261:return 118;case 259:return 98;case 263:return 263;case 174:return 137;case 175:return 151;case 171:if(Ye.asteriskToken)return 41;case 169:case 166:var $e=A.getNameOfDeclaration(Ye);if($e)return $e.kind}}function lA(Ye,mr,$e,xr){return{getIndentationForComment:function(LA,ae,We){switch(LA){case 19:case 23:case 21:return $e+we(We)}return ae!==-1?ae:$e},getIndentationForToken:function(LA,ae,We,YA){return!YA&&PA(LA,ae,We)?$e+we(We):$e},getIndentation:function(){return $e},getDelta:we,recomputeIndentation:function(LA,ae){t.SmartIndenter.shouldIndentChildNode(z,ae,Ye,BA)&&($e+=LA?z.indentSize:-z.indentSize,xr=t.SmartIndenter.shouldIndentChildNode(z,Ye)?z.indentSize:0)}};function PA(LA,ae,We){switch(ae){case 18:case 19:case 21:case 91:case 115:case 59:return!1;case 43:case 31:switch(We.kind){case 283:case 284:case 282:return!1}break;case 22:case 23:if(We.kind!==197)return!1;break}return mr!==LA&&!(A.hasDecorators(Ye)&&ae===RA(Ye))}function we(LA){return t.SmartIndenter.nodeWillIndentChild(z,Ye,LA,BA,!0)?xr:0}}function tA(Ye,mr,$e,xr,PA,we){if(!A.rangeOverlapsWithStartEnd(Y,Ye.getStart(BA),Ye.getEnd()))return;var LA=lA(Ye,$e,PA,we),ae=mr;for(A.forEachChild(Ye,function(er){YA(er,-1,Ye,LA,$e,xr,!1)},function(er){Ce(er,Ye,$e,LA)});K.isOnToken()&&K.getStartPos()Math.min(Ye.end,Y.end))break;Ke(We,Ye,LA,Ye)}function YA(er,ur,hr,Fr,qA,oe,Ge,nr){if(A.Debug.assert(!A.nodeIsSynthesized(er)),A.nodeIsMissing(er))return ur;var Or=er.getStart(BA),tr=BA.getLineAndCharacterOfPosition(Or).line,Ur=tr;A.hasDecorators(er)&&(Ur=BA.getLineAndCharacterOfPosition(A.getNonDecoratorTokenPosOfNode(er,BA)).line);var nt=-1;if(Ge&&A.rangeContainsRange(Y,hr)&&(nt=ue(Or,er.end,qA,Y,ur),nt!==-1&&(ur=nt)),!A.rangeOverlapsWithStartEnd(Y,er.pos,er.end))return er.endY.end)return ur;if(ke.token.end>Or){ke.token.pos>Or&&K.skipToStartOf(er);break}Ke(ke,Ye,Fr,Ye)}if(!K.isOnToken()||K.getStartPos()>=Y.end)return ur;if(A.isToken(er)){var ke=K.readTokenInfo(er);if(er.kind!==11)return A.Debug.assert(ke.token.end===er.end,"Token end is child end"),Ke(ke,Ye,Fr,er),ur}var Je=er.kind===167?tr:oe,Ar=MA(er,tr,nt,Ye,Fr,Je);return tA(er,ae,tr,Ur,Ar.indentation,Ar.delta),ae=Ye,nr&&hr.kind===206&&ur===-1&&(ur=Ar.indentation),ur}function Ce(er,ur,hr,Fr){A.Debug.assert(A.isNodeArray(er)),A.Debug.assert(!A.nodeIsSynthesized(er));var qA=wA(ur,er),oe=Fr,Ge=hr;if(!A.rangeOverlapsWithStartEnd(Y,er.pos,er.end)){er.ender.pos)break;if(nr.token.kind===qA){Ge=BA.getLineAndCharacterOfPosition(nr.token.pos).line,Ke(nr,ur,Fr,ur);var Or=void 0;if(mA!==-1)Or=mA;else{var tr=A.getLineStartPositionForPosition(nr.token.pos,BA);Or=t.SmartIndenter.findFirstNonWhitespaceColumn(tr,nr.token.pos,BA,z)}oe=lA(ur,hr,Or,z.indentSize)}else Ke(nr,ur,Fr,ur)}for(var Ur=-1,nt=0;nt0){var Ge=eA(oe,z);Me(Fr,qA.character,Ge)}else be(Fr,qA.character)}}}function Ae(Ye,mr,$e){for(var xr=Ye;xrwe)){var LA=Q(PA,we);LA!==-1&&(A.Debug.assert(LA===PA||!A.isWhiteSpaceSingleLine(BA.text.charCodeAt(LA-1))),be(LA,we+1-LA))}}}function Q(Ye,mr){for(var $e=mr;$e>=Ye&&A.isWhiteSpaceSingleLine(BA.text.charCodeAt($e));)$e--;return $e!==mr?$e+1:-1}function Ze(Ye){for(var mr=M?M.end:Y.pos,$e=0,xr=Ye;$eBA.text.length)return _(CA);if(CA.indentStyle===A.IndentStyle.None)return 0;var AA=A.findPrecedingToken(uA,BA,void 0,!0),iA=t.getRangeOfEnclosingComment(BA,uA,AA||null);if(iA&&iA.kind===3)return E(BA,uA,CA,iA);if(!AA)return _(CA);var _A=A.isStringOrRegularExpressionOrTemplateLiteral(AA.kind);if(_A&&AA.getStart(BA)<=uA&&uA=0),AA<=iA)return X(A.getStartPositionOfLine(iA,uA),BA,uA,CA);var _A=A.getStartPositionOfLine(AA,uA),fA=q(_A,BA,uA,CA),M=fA.column,aA=fA.character;if(M===0)return M;var gA=uA.text.charCodeAt(_A+aA);return gA===42?M-1:M}function p(uA,BA,CA){for(var z=BA;z>0;){var AA=uA.text.charCodeAt(z);if(!A.isWhiteSpaceLike(AA))break;z--}var iA=A.getLineStartPositionForPosition(z,uA);return X(iA,z,uA,CA)}function B(uA,BA,CA,z,AA,iA){for(var _A,fA=CA;fA;){if(A.positionBelongsToNode(fA,BA,uA)&&J(iA,fA,_A,uA,!0)){var M=v(fA,uA),aA=T(CA,fA,z,uA),gA=aA!==0?AA&&aA===2?iA.indentSize:0:z!==M.line?iA.indentSize:0;return x(fA,M,void 0,gA,uA,!0,iA)}var QA=cA(fA,uA,iA,!0);if(QA!==-1)return QA;_A=fA,fA=fA.parent}return _(iA)}function m(uA,BA,CA,z){var AA=CA.getLineAndCharacterOfPosition(uA.getStart(CA));return x(uA,AA,BA,0,CA,!1,z)}o.getIndentationForNode=m;function _(uA){return uA.baseIndentSize||0}o.getBaseIndentation=_;function x(uA,BA,CA,z,AA,iA,_A){for(var fA,M=uA.parent;M;){var aA=!0;if(CA){var gA=uA.getStart(AA);aA=gACA.end}var QA=O(M,uA,AA),mA=QA.line===BA.line||y(M,uA,BA.line,AA);if(aA){var FA=(fA=V(uA,AA))===null||fA===void 0?void 0:fA[0],SA=!!FA&&v(FA,AA).line>QA.line,ce=cA(uA,AA,_A,SA);if(ce!==-1||(ce=P(uA,M,BA,mA,AA,_A),ce!==-1))return ce+z}J(_A,M,uA,AA,iA)&&!mA&&(z+=_A.indentSize);var re=F(M,uA,BA.line,AA);uA=M,M=uA.parent,BA=re?AA.getLineAndCharacterOfPosition(uA.getStart(AA)):QA}return z+_(_A)}function O(uA,BA,CA){var z=V(BA,CA),AA=z?z.pos:uA.getStart(CA);return CA.getLineAndCharacterOfPosition(AA)}function k(uA,BA,CA){var z=A.findListItemInfo(uA);return z&&z.listItemIndex>0?eA(z.list.getChildren(),z.listItemIndex-1,BA,CA):-1}function P(uA,BA,CA,z,AA,iA){var _A=(A.isDeclaration(uA)||A.isStatementButNotDeclaration(uA))&&(BA.kind===308||!z);return _A?Y(CA,AA,iA):-1}var H;(function(uA){uA[uA.Unknown=0]="Unknown",uA[uA.OpenBrace=1]="OpenBrace",uA[uA.CloseBrace=2]="CloseBrace"})(H||(H={}));function T(uA,BA,CA,z){var AA=A.findNextToken(uA,BA,z);if(!AA)return 0;if(AA.kind===18)return 1;if(AA.kind===19){var iA=v(AA,z).line;return CA===iA?2:0}return 0}function v(uA,BA){return BA.getLineAndCharacterOfPosition(uA.getStart(BA))}function F(uA,BA,CA,z){if(!(A.isCallExpression(uA)&&A.contains(uA.arguments,BA)))return!1;var AA=uA.expression.getEnd(),iA=A.getLineAndCharacterOfPosition(z,AA).line;return iA===CA}o.isArgumentAndStartLineOverlapsExpressionBeingCalled=F;function y(uA,BA,CA,z){if(uA.kind===242&&uA.elseStatement===BA){var AA=A.findChildOfKind(uA,91,z);A.Debug.assert(AA!==void 0);var iA=v(AA,z).line;return iA===CA}return!1}o.childStartsOnTheSameLineWithElseInIfStatement=y;function S(uA,BA,CA,z){if(A.isConditionalExpression(uA)&&(BA===uA.whenTrue||BA===uA.whenFalse)){var AA=A.getLineAndCharacterOfPosition(z,uA.condition.end).line;if(BA===uA.whenTrue)return CA===AA;var iA=v(uA.whenTrue,z).line,_A=A.getLineAndCharacterOfPosition(z,uA.whenTrue.end).line;return AA===iA&&_A===CA}return!1}o.childIsUnindentedBranchOfConditionalExpression=S;function U(uA,BA,CA,z){if(A.isCallOrNewExpression(uA)){if(!uA.arguments)return!1;var AA=A.find(uA.arguments,function(M){return M.pos===BA.pos});if(!AA)return!1;var iA=uA.arguments.indexOf(AA);if(iA===0)return!1;var _A=uA.arguments[iA-1],fA=A.getLineAndCharacterOfPosition(z,_A.getEnd()).line;if(CA===fA)return!0}return!1}o.argumentStartsOnSameLineAsPreviousArgument=U;function V(uA,BA){return uA.parent&&IA(uA.getStart(BA),uA.getEnd(),uA.parent,BA)}o.getContainingList=V;function wA(uA,BA,CA){return BA&&IA(uA,uA,BA,CA)}function IA(uA,BA,CA,z){switch(CA.kind){case 180:return AA(CA.typeArguments);case 207:return AA(CA.properties);case 206:return AA(CA.elements);case 184:return AA(CA.members);case 259:case 215:case 216:case 171:case 170:case 176:case 173:case 182:case 177:return AA(CA.typeParameters)||AA(CA.parameters);case 174:return AA(CA.parameters);case 260:case 228:case 261:case 262:case 347:return AA(CA.typeParameters);case 211:case 210:return AA(CA.typeArguments)||AA(CA.arguments);case 258:return AA(CA.declarations);case 272:case 276:return AA(CA.elements);case 203:case 204:return AA(CA.elements)}function AA(iA){return iA&&A.rangeContainsStartEnd(pA(CA,iA,z),uA,BA)?iA:void 0}}function pA(uA,BA,CA){for(var z=uA.getChildren(CA),AA=1;AA=0&&BA=0;_A--)if(uA[_A].kind!==27){var fA=CA.getLineAndCharacterOfPosition(uA[_A].end).line;if(fA!==iA.line)return Y(iA,CA,z);iA=v(uA[_A],CA)}return-1}function Y(uA,BA,CA){var z=BA.getPositionOfLineAndCharacter(uA.line,0);return X(z,z+uA.character,BA,CA)}function q(uA,BA,CA,z){for(var AA=0,iA=0,_A=uA;_A0?1:0,jA=A.getStartPositionOfLine(A.getLineOfLocalPosition(z,ce)+$A,z);return jA=B(z.text,jA),A.getStartPositionOfLine(A.getLineOfLocalPosition(z,jA),z)}function P(z,AA,iA){var _A=AA.end,fA=iA.trailingTriviaOption;if(fA===p.Include){var M=A.getTrailingCommentRanges(z.text,_A);if(M)for(var aA=A.getLineOfLocalPosition(z,AA.end),gA=0,QA=M;gAaA)break;var FA=A.getLineOfLocalPosition(z,mA.end);if(FA>aA)return A.skipTrivia(z.text,mA.end,!0,!0)}}}function H(z,AA,iA){var _A,fA=AA.end,M=iA.trailingTriviaOption;if(M===p.Exclude)return fA;if(M===p.ExcludeWhitespace){var aA=A.concatenate(A.getTrailingCommentRanges(z.text,fA),A.getLeadingCommentRanges(z.text,fA)),gA=(_A=aA?.[aA.length-1])===null||_A===void 0?void 0:_A.end;return gA||fA}var QA=P(z,AA,iA);if(QA)return QA;var mA=A.skipTrivia(z.text,fA,!0);return mA!==fA&&(M===p.Include||A.isLineBreak(z.text.charCodeAt(mA-1)))?mA:fA}function T(z,AA){return!!AA&&!!z.parent&&(AA.kind===27||AA.kind===26&&z.parent.kind===207)}function v(z){return A.isFunctionExpression(z)||A.isFunctionDeclaration(z)}t.isThisTypeAnnotatable=v;var F=function(){function z(AA,iA){this.newLineCharacter=AA,this.formatContext=iA,this.changes=[],this.newFiles=[],this.classesWithNodesInsertedAtStart=new A.Map,this.deletedNodes=[]}return z.fromContext=function(AA){return new z(A.getNewLineOrDefaultFromHost(AA.host,AA.formatContext.options),AA.formatContext)},z.with=function(AA,iA){var _A=z.fromContext(AA);return iA(_A),_A.getChanges()},z.prototype.pushRaw=function(AA,iA){A.Debug.assertEqual(AA.fileName,iA.fileName);for(var _A=0,fA=iA.textChanges;_A",joiner:", "})},z.prototype.getOptionsForInsertNodeBefore=function(AA,iA,_A){return A.isStatement(AA)||A.isClassElement(AA)?{suffix:_A?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:A.isVariableDeclaration(AA)?{suffix:", "}:A.isParameter(AA)?A.isParameter(iA)?{suffix:", "}:{}:A.isStringLiteral(AA)&&A.isImportDeclaration(AA.parent)||A.isNamedImports(AA)?{suffix:", "}:A.isImportSpecifier(AA)?{suffix:","+(_A?this.newLineCharacter:" ")}:A.Debug.failBadSyntaxKind(AA)},z.prototype.insertNodeAtConstructorStart=function(AA,iA,_A){var fA=A.firstOrUndefined(iA.body.statements);!fA||!iA.body.multiLine?this.replaceConstructorBody(AA,iA,dt([_A],iA.body.statements,!0)):this.insertNodeBefore(AA,fA,_A)},z.prototype.insertNodeAtConstructorStartAfterSuperCall=function(AA,iA,_A){var fA=A.find(iA.body.statements,function(M){return A.isExpressionStatement(M)&&A.isSuperCall(M.expression)});!fA||!iA.body.multiLine?this.replaceConstructorBody(AA,iA,dt(dt([],iA.body.statements,!0),[_A],!1)):this.insertNodeAfter(AA,fA,_A)},z.prototype.insertNodeAtConstructorEnd=function(AA,iA,_A){var fA=A.lastOrUndefined(iA.body.statements);!fA||!iA.body.multiLine?this.replaceConstructorBody(AA,iA,dt(dt([],iA.body.statements,!0),[_A],!1)):this.insertNodeAfter(AA,fA,_A)},z.prototype.replaceConstructorBody=function(AA,iA,_A){this.replaceNode(AA,iA.body,A.factory.createBlock(_A,!0))},z.prototype.insertNodeAtEndOfScope=function(AA,iA,_A){var fA=k(AA,iA.getLastToken(),{});this.insertNodeAt(AA,fA,_A,{prefix:A.isLineBreak(AA.text.charCodeAt(iA.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})},z.prototype.insertMemberAtStart=function(AA,iA,_A){this.insertNodeAtStartWorker(AA,iA,_A)},z.prototype.insertNodeAtObjectStart=function(AA,iA,_A){this.insertNodeAtStartWorker(AA,iA,_A)},z.prototype.insertNodeAtStartWorker=function(AA,iA,_A){var fA,M=(fA=this.guessIndentationFromExistingMembers(AA,iA))!==null&&fA!==void 0?fA:this.computeIndentationForNewMember(AA,iA);this.insertNodeAt(AA,IA(iA).pos,_A,this.getInsertNodeAtStartInsertOptions(AA,iA,M))},z.prototype.guessIndentationFromExistingMembers=function(AA,iA){for(var _A,fA=iA,M=0,aA=IA(iA);M0?{fileName:ce.fileName,textChanges:jA}:void 0})}z.getTextChangesFromChanges=AA;function iA(gA,QA,mA,FA,SA){var ce=_A(gA,A.getScriptKindFromFileName(QA),mA,FA,SA);return{fileName:QA,textChanges:[A.createTextChange(A.createTextSpan(0,0),ce)],isNewFile:!0}}z.newFileChanges=iA;function _A(gA,QA,mA,FA,SA){var ce=mA.map(function($A){return $A===4?"":aA($A,gA,FA).text}).join(FA),re=A.createSourceFile("any file name",ce,99,!0,QA),KA=A.formatting.formatDocument(re,SA);return cA(ce,KA)+FA}z.newFileChangesWorker=_A;function fA(gA,QA,mA,FA,SA){var ce;if(gA.kind===x.Remove)return"";if(gA.kind===x.Text)return gA.text;var re=gA.options,KA=re===void 0?{}:re,$A=gA.range.pos,jA=function(RA){return M(RA,QA,$A,KA,mA,FA,SA)},ue=gA.kind===x.ReplaceWithMultipleNodes?gA.nodes.map(function(RA){return A.removeSuffix(jA(RA),mA)}).join(((ce=gA.options)===null||ce===void 0?void 0:ce.joiner)||mA):jA(gA.node),MA=KA.indentation!==void 0||A.getLineStartPositionForPosition($A,QA)===$A?ue:ue.replace(/^\s+/,"");return(KA.prefix||"")+MA+(!KA.suffix||A.endsWith(MA,KA.suffix)?"":KA.suffix)}function M(gA,QA,mA,FA,SA,ce,re){var KA=FA.indentation,$A=FA.prefix,jA=FA.delta,ue=aA(gA,QA,SA),MA=ue.node,RA=ue.text;re&&re(MA,RA);var lA=A.getFormatCodeSettingsForWriting(ce,QA),tA=KA!==void 0?KA:A.formatting.SmartIndenter.getIndentation(mA,QA,lA,$A===SA||A.getLineStartPositionForPosition(mA,QA)===mA);jA===void 0&&(jA=A.formatting.SmartIndenter.shouldIndentChildNode(lA,gA)&&lA.indentSize||0);var N={text:RA,getLineAndCharacterOfPosition:function(kA){return A.getLineAndCharacterOfPosition(this,kA)}},nA=A.formatting.formatNodeGivenIndentation(MA,N,QA.languageVariant,tA,jA,pi(pi({},ce),{options:lA}));return cA(RA,nA)}function aA(gA,QA,mA){var FA=Z(mA),SA=A.getNewLineKind(mA);return A.createPrinter({newLine:SA,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},FA).writeNode(4,gA,QA,FA),{text:FA.getText(),node:q(gA)}}z.getNonformattedText=aA})(oA||(oA={}));function cA(z,AA){for(var iA=AA.length-1;iA>=0;iA--){var _A=AA[iA],fA=_A.span,M=_A.newText;z="".concat(z.substring(0,fA.start)).concat(M).concat(z.substring(A.textSpanEnd(fA)))}return z}t.applyChanges=cA;function eA(z){return A.skipTrivia(z,0)===z.length}var Y=pi(pi({},A.nullTransformationContext),{factory:A.createNodeFactory(A.nullTransformationContext.factory.flags|1,A.nullTransformationContext.factory.baseFactory)});function q(z){var AA=A.visitEachChild(z,q,Y,X,q),iA=A.nodeIsSynthesized(AA)?AA:Object.create(AA);return A.setTextRangePosEnd(iA,i(z),s(z)),iA}t.assignPositionsToNode=q;function X(z,AA,iA,_A,fA){var M=A.visitNodes(z,AA,iA,_A,fA);if(!M)return M;var aA=M===z?A.factory.createNodeArray(M.slice(0)):M;return A.setTextRangePosEnd(aA,i(z),s(z)),aA}function Z(z){var AA=0,iA=A.createTextWriter(z),_A=function(Cr){Cr&&o(Cr,AA)},fA=function(Cr){Cr&&g(Cr,AA)},M=function(Cr){Cr&&o(Cr,AA)},aA=function(Cr){Cr&&g(Cr,AA)},gA=function(Cr){Cr&&o(Cr,AA)},QA=function(Cr){Cr&&g(Cr,AA)};function mA(Cr,be){if(be||!eA(Cr)){AA=iA.getTextPos();for(var Me=0;A.isWhiteSpaceLike(Cr.charCodeAt(Cr.length-Me-1));)Me++;AA-=Me}}function FA(Cr){iA.write(Cr),mA(Cr,!1)}function SA(Cr){iA.writeComment(Cr)}function ce(Cr){iA.writeKeyword(Cr),mA(Cr,!1)}function re(Cr){iA.writeOperator(Cr),mA(Cr,!1)}function KA(Cr){iA.writePunctuation(Cr),mA(Cr,!1)}function $A(Cr){iA.writeTrailingSemicolon(Cr),mA(Cr,!1)}function jA(Cr){iA.writeParameter(Cr),mA(Cr,!1)}function ue(Cr){iA.writeProperty(Cr),mA(Cr,!1)}function MA(Cr){iA.writeSpace(Cr),mA(Cr,!1)}function RA(Cr){iA.writeStringLiteral(Cr),mA(Cr,!1)}function lA(Cr,be){iA.writeSymbol(Cr,be),mA(Cr,!1)}function tA(Cr){iA.writeLine(Cr)}function N(){iA.increaseIndent()}function nA(){iA.decreaseIndent()}function kA(){return iA.getText()}function bA(Cr){iA.rawWrite(Cr),mA(Cr,!1)}function TA(Cr){iA.writeLiteral(Cr),mA(Cr,!0)}function VA(){return iA.getTextPos()}function De(){return iA.getLine()}function _e(){return iA.getColumn()}function Ae(){return iA.getIndent()}function Q(){return iA.isAtStartOfLine()}function Ze(){iA.clear(),AA=0}return{onBeforeEmitNode:_A,onAfterEmitNode:fA,onBeforeEmitNodeArray:M,onAfterEmitNodeArray:aA,onBeforeEmitToken:gA,onAfterEmitToken:QA,write:FA,writeComment:SA,writeKeyword:ce,writeOperator:re,writePunctuation:KA,writeTrailingSemicolon:$A,writeParameter:jA,writeProperty:ue,writeSpace:MA,writeStringLiteral:RA,writeSymbol:lA,writeLine:tA,increaseIndent:N,decreaseIndent:nA,getText:kA,rawWrite:bA,writeLiteral:TA,getTextPos:VA,getLine:De,getColumn:_e,getIndent:Ae,isAtStartOfLine:Q,hasTrailingComment:function(){return iA.hasTrailingComment()},hasTrailingWhitespace:function(){return iA.hasTrailingWhitespace()},clear:Ze}}t.createWriter=Z;function K(z){for(var AA,iA=0,_A=z.statements;iA<_A.length;iA++){var fA=_A[iA];if(A.isPrologueDirective(fA))AA=fA;else break}var M=0,aA=z.text;if(AA)return M=AA.end,ue(),M;var gA=A.getShebang(aA);gA!==void 0&&(M=gA.length,ue());var QA=A.getLeadingCommentRanges(aA,M);if(!QA)return M;for(var mA,FA,SA=0,ce=QA;SA=$A+2)break}if(z.statements.length){FA===void 0&&(FA=z.getLineAndCharacterOfPosition(z.statements[0].getStart()).line);var jA=z.getLineAndCharacterOfPosition(re.end).line;if(FA1)break}var pA=U<2;return function(oA){var cA=oA.fixId,eA=oA.fixAllDescription,Y=ChA(oA,["fixId","fixAllDescription"]);return pA?Y:pi(pi({},Y),{fixId:cA,fixAllDescription:eA})}}function x(F){var y=v(F),S=i.get(String(F.errorCode));return A.flatMap(S,function(U){return A.map(U.getCodeActions(F),_(U,y))})}t.getFixes=x;function O(F){return o.get(A.cast(F.fixId,A.isString)).getAllCodeActions(F)}t.getAllFixes=O;function k(F,y){return{changes:F,commands:y}}t.createCombinedCodeActions=k;function P(F,y){return{fileName:F,textChanges:y}}t.createFileTextChanges=P;function H(F,y,S){var U=[],V=A.textChanges.ChangeTracker.with(F,function(wA){return T(F,y,function(IA){return S(wA,IA,U)})});return k(V,U.length===0?void 0:U)}t.codeFixAll=H;function T(F,y,S){for(var U=0,V=v(F);UA.textSpanEnd(m)?"quit":(A.isArrowFunction(O)||A.isMethodDeclaration(O)||A.isFunctionExpression(O)||A.isFunctionDeclaration(O))&&A.textSpansEqual(m,A.createTextSpanFromNode(O,B))});return x}}function p(B,m){return function(_){var x=_.start,O=_.length,k=_.relatedInformation,P=_.code;return A.isNumber(x)&&A.isNumber(O)&&A.textSpansEqual({start:x,length:O},B)&&P===m&&!!k&&A.some(k,function(H){return H.code===A.Diagnostics.Did_you_mean_to_mark_this_function_as_async.code})}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="addMissingAwait",o=A.Diagnostics.Property_0_does_not_exist_on_type_1.code,s=[A.Diagnostics.This_expression_is_not_callable.code,A.Diagnostics.This_expression_is_not_constructable.code],g=dt([A.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,A.Diagnostics.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,A.Diagnostics.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,A.Diagnostics.Operator_0_cannot_be_applied_to_type_1.code,A.Diagnostics.Operator_0_cannot_be_applied_to_types_1_and_2.code,A.Diagnostics.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,A.Diagnostics.This_condition_will_always_return_true_since_this_0_is_always_defined.code,A.Diagnostics.Type_0_is_not_an_array_type.code,A.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type.code,A.Diagnostics.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,A.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,A.Diagnostics.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,A.Diagnostics.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,A.Diagnostics.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,A.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,o],s,!0);t.registerCodeFix({fixIds:[i],errorCodes:g,getCodeActions:function(v){var F=v.sourceFile,y=v.errorCode,S=v.span,U=v.cancellationToken,V=v.program,wA=E(F,y,S,U,V);if(wA){var IA=v.program.getTypeChecker(),pA=function(oA){return A.textChanges.ChangeTracker.with(v,oA)};return A.compact([p(v,wA,y,IA,pA),B(v,wA,y,IA,pA)])}},getAllCodeActions:function(T){var v=T.sourceFile,F=T.program,y=T.cancellationToken,S=T.program.getTypeChecker(),U=new A.Set;return t.codeFixAll(T,g,function(V,wA){var IA=E(v,wA.code,wA,y,F);if(IA){var pA=function(oA){return oA(V),[]};return p(T,IA,wA.code,S,pA,U)||B(T,IA,wA.code,S,pA,U)}})}});function E(T,v,F,y,S){var U=A.getFixableErrorSpanExpression(T,F);return U&&m(T,v,F,y,S)&&k(U)?U:void 0}function p(T,v,F,y,S,U){var V=T.sourceFile,wA=T.program,IA=T.cancellationToken,pA=_(v,V,IA,wA,y);if(pA){var oA=S(function(cA){A.forEach(pA.initializers,function(eA){var Y=eA.expression;return P(cA,F,V,y,Y,U)}),U&&pA.needsSecondPassForFixAll&&P(cA,F,V,y,v,U)});return t.createCodeFixActionWithoutFixAll("addMissingAwaitToInitializer",oA,pA.initializers.length===1?[A.Diagnostics.Add_await_to_initializer_for_0,pA.initializers[0].declarationSymbol.name]:A.Diagnostics.Add_await_to_initializers)}}function B(T,v,F,y,S,U){var V=S(function(wA){return P(wA,F,T.sourceFile,y,v,U)});return t.createCodeFixAction(i,V,A.Diagnostics.Add_await,i,A.Diagnostics.Fix_all_expressions_possibly_missing_await)}function m(T,v,F,y,S){var U=S.getTypeChecker(),V=U.getDiagnostics(T,y);return A.some(V,function(wA){var IA=wA.start,pA=wA.length,oA=wA.relatedInformation,cA=wA.code;return A.isNumber(IA)&&A.isNumber(pA)&&A.textSpansEqual({start:IA,length:pA},F)&&cA===v&&!!oA&&A.some(oA,function(eA){return eA.code===A.Diagnostics.Did_you_forget_to_use_await.code})})}function _(T,v,F,y,S){var U=x(T,S);if(U){for(var V=U.isCompleteFix,wA,IA=function(eA){var Y=S.getSymbolAtLocation(eA);if(!Y)return"continue";var q=A.tryCast(Y.valueDeclaration,A.isVariableDeclaration),X=q&&A.tryCast(q.name,A.isIdentifier),Z=A.getAncestor(q,240);if(!q||!Z||q.type||!q.initializer||Z.getSourceFile()!==v||A.hasSyntacticModifier(Z,1)||!X||!k(q.initializer))return V=!1,"continue";var K=y.getSemanticDiagnostics(v,F),J=A.FindAllReferences.Core.eachSymbolReferenceInFile(X,S,v,function(sA){return eA!==sA&&!O(sA,K,v,S)});if(J)return V=!1,"continue";(wA||(wA=[])).push({expression:q.initializer,declarationSymbol:Y})},pA=0,oA=U.identifiers;pA0)return[t.createCodeFixAction(i,O,A.Diagnostics.Add_const_to_unresolved_variable,i,A.Diagnostics.Add_const_to_all_unresolved_variables)]},fixIds:[i],getAllCodeActions:function(_){var x=new A.Set;return t.codeFixAll(_,o,function(O,k){return s(O,k.file,k.start,_.program,x)})}});function s(_,x,O,k,P){var H=A.getTokenAtPosition(x,O),T=A.findAncestor(H,function(U){return A.isForInOrOfStatement(U.parent)?U.parent.initializer===U:E(U)?!1:"quit"});if(T)return g(_,T,x,P);var v=H.parent;if(A.isBinaryExpression(v)&&v.operatorToken.kind===63&&A.isExpressionStatement(v.parent))return g(_,H,x,P);if(A.isArrayLiteralExpression(v)){var F=k.getTypeChecker();return A.every(v.elements,function(U){return p(U,F)})?g(_,v,x,P):void 0}var y=A.findAncestor(H,function(U){return A.isExpressionStatement(U.parent)?!0:B(U)?!1:"quit"});if(y){var S=k.getTypeChecker();return m(y,S)?g(_,y,x,P):void 0}}function g(_,x,O,k){(!k||A.tryAddToSet(k,x))&&_.insertModifierBefore(O,85,x)}function E(_){switch(_.kind){case 79:case 206:case 207:case 299:case 300:return!0;default:return!1}}function p(_,x){var O=A.isIdentifier(_)?_:A.isAssignmentExpression(_,!0)&&A.isIdentifier(_.left)?_.left:void 0;return!!O&&!x.getSymbolAtLocation(O)}function B(_){switch(_.kind){case 79:case 223:case 27:return!0;default:return!1}}function m(_,x){return A.isBinaryExpression(_)?_.operatorToken.kind===27?A.every([_.left,_.right],function(O){return m(O,x)}):_.operatorToken.kind===63&&A.isIdentifier(_.left)&&!x.getSymbolAtLocation(_.left):!1}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="addMissingDeclareProperty",o=[A.Diagnostics.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(E){var p=A.textChanges.ChangeTracker.with(E,function(B){return s(B,E.sourceFile,E.span.start)});if(p.length>0)return[t.createCodeFixAction(i,p,A.Diagnostics.Prefix_with_declare,i,A.Diagnostics.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[i],getAllCodeActions:function(g){var E=new A.Set;return t.codeFixAll(g,o,function(p,B){return s(p,B.file,B.start,E)})}});function s(g,E,p,B){var m=A.getTokenAtPosition(E,p);if(A.isIdentifier(m)){var _=m.parent;_.kind===169&&(!B||A.tryAddToSet(B,_))&&g.insertModifierBefore(E,136,_)}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="addMissingInvocationForDecorator",o=[A.Diagnostics._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(E){var p=A.textChanges.ChangeTracker.with(E,function(B){return s(B,E.sourceFile,E.span.start)});return[t.createCodeFixAction(i,p,A.Diagnostics.Call_decorator_expression,i,A.Diagnostics.Add_to_all_uncalled_decorators)]},fixIds:[i],getAllCodeActions:function(g){return t.codeFixAll(g,o,function(E,p){return s(E,p.file,p.start)})}});function s(g,E,p){var B=A.getTokenAtPosition(E,p),m=A.findAncestor(B,A.isDecorator);A.Debug.assert(!!m,"Expected position to be owned by a decorator.");var _=A.factory.createCallExpression(m.expression,void 0,void 0);g.replaceNode(E,m.expression,_)}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="addNameToNamelessParameter",o=[A.Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(E){var p=A.textChanges.ChangeTracker.with(E,function(B){return s(B,E.sourceFile,E.span.start)});return[t.createCodeFixAction(i,p,A.Diagnostics.Add_parameter_name,i,A.Diagnostics.Add_names_to_all_parameters_without_names)]},fixIds:[i],getAllCodeActions:function(g){return t.codeFixAll(g,o,function(E,p){return s(E,p.file,p.start)})}});function s(g,E,p){var B=A.getTokenAtPosition(E,p),m=B.parent;if(!A.isParameter(m))return A.Debug.fail("Tried to add a parameter name to a non-parameter: "+A.Debug.formatSyntaxKind(B.kind));var _=m.parent.parameters.indexOf(m);A.Debug.assert(!m.type,"Tried to add a parameter name to a parameter that already had one."),A.Debug.assert(_>-1,"Parameter not found in parent parameter list.");var x=A.factory.createTypeReferenceNode(m.name,void 0),O=A.factory.createParameterDeclaration(m.modifiers,m.dotDotDotToken,"arg"+_,m.questionToken,m.dotDotDotToken?A.factory.createArrayTypeNode(x):x,m.initializer);g.replaceNode(E,m,O)}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="addOptionalPropertyUndefined",o=[A.Diagnostics.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,A.Diagnostics.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,A.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(B){var m=B.program.getTypeChecker(),_=s(B.sourceFile,B.span,m);if(_.length){var x=A.textChanges.ChangeTracker.with(B,function(O){return p(O,_)});return[t.createCodeFixActionWithoutFixAll(i,x,A.Diagnostics.Add_undefined_to_optional_property_type)]}},fixIds:[i]});function s(B,m,_){var x,O,k=E(A.getFixableErrorSpanExpression(B,m),_);if(!k)return A.emptyArray;var P=k.source,H=k.target,T=g(P,H,_)?_.getTypeAtLocation(H.expression):_.getTypeAtLocation(H);return!((O=(x=T.symbol)===null||x===void 0?void 0:x.declarations)===null||O===void 0)&&O.some(function(v){return A.getSourceFileOfNode(v).fileName.match(/\.d\.ts$/)})?A.emptyArray:_.getExactOptionalProperties(T)}function g(B,m,_){return A.isPropertyAccessExpression(m)&&!!_.getExactOptionalProperties(_.getTypeAtLocation(m.expression)).length&&_.getTypeAtLocation(B)===_.getUndefinedType()}function E(B,m){var _;if(B){if(A.isBinaryExpression(B.parent)&&B.parent.operatorToken.kind===63)return{source:B.parent.right,target:B.parent.left};if(A.isVariableDeclaration(B.parent)&&B.parent.initializer)return{source:B.parent.initializer,target:B.parent.name};if(A.isCallExpression(B.parent)){var x=m.getSymbolAtLocation(B.parent.expression);if(!x?.valueDeclaration||!A.isFunctionLikeKind(x.valueDeclaration.kind)||!A.isExpression(B))return;var O=B.parent.arguments.indexOf(B);if(O===-1)return;var k=x.valueDeclaration.parameters[O].name;if(A.isIdentifier(k))return{source:B,target:k}}else if(A.isPropertyAssignment(B.parent)&&A.isIdentifier(B.parent.name)||A.isShorthandPropertyAssignment(B.parent)){var P=E(B.parent.parent,m);if(!P)return;var H=m.getPropertyOfType(m.getTypeAtLocation(P.target),B.parent.name.text),T=(_=H?.declarations)===null||_===void 0?void 0:_[0];return T?{source:A.isPropertyAssignment(B.parent)?B.parent.initializer:B.parent.name,target:T}:void 0}}else return}function p(B,m){for(var _=0,x=m;_1?(B.delete(m,H),B.insertNodeAfter(m,v,T)):B.replaceNode(m,v,T)}function F(U){var V=[];return U.exports&&U.exports.forEach(function(pA){if(pA.name==="prototype"&&pA.declarations){var oA=pA.declarations[0];if(pA.declarations.length===1&&A.isPropertyAccessExpression(oA)&&A.isBinaryExpression(oA.parent)&&oA.parent.operatorToken.kind===63&&A.isObjectLiteralExpression(oA.parent.right)){var cA=oA.parent.right;IA(cA.symbol,void 0,V)}}else IA(pA,[A.factory.createToken(124)],V)}),U.members&&U.members.forEach(function(pA,oA){var cA,eA,Y,q;if(oA==="constructor"&&pA.valueDeclaration){var X=(q=(Y=(eA=(cA=U.exports)===null||cA===void 0?void 0:cA.get("prototype"))===null||eA===void 0?void 0:eA.declarations)===null||Y===void 0?void 0:Y[0])===null||q===void 0?void 0:q.parent;X&&A.isBinaryExpression(X)&&A.isObjectLiteralExpression(X.right)&&A.some(X.right.properties,E)||B.delete(m,pA.valueDeclaration.parent);return}IA(pA,void 0,V)}),V;function wA(pA,oA){return A.isAccessExpression(pA)?A.isPropertyAccessExpression(pA)&&E(pA)?!0:A.isFunctionLike(oA):A.every(pA.properties,function(cA){return!!(A.isMethodDeclaration(cA)||A.isGetOrSetAccessorDeclaration(cA)||A.isPropertyAssignment(cA)&&A.isFunctionExpression(cA.initializer)&&cA.name||E(cA))})}function IA(pA,oA,cA){if(!(pA.flags&8192)&&!(pA.flags&4096))return;var eA=pA.valueDeclaration,Y=eA.parent,q=Y.right;if(!wA(eA,q)||A.some(cA,function(CA){var z=A.getNameOfDeclaration(CA);return!!(z&&A.isIdentifier(z)&&A.idText(z)===A.symbolName(pA))}))return;var X=Y.parent&&Y.parent.kind===241?Y.parent:Y;if(B.delete(m,X),!q){cA.push(A.factory.createPropertyDeclaration(oA,pA.name,void 0,void 0,void 0));return}if(A.isAccessExpression(eA)&&(A.isFunctionExpression(q)||A.isArrowFunction(q))){var Z=A.getQuotePreference(m,O),K=p(eA,k,Z);K&&sA(cA,q,K);return}else if(A.isObjectLiteralExpression(q)){A.forEach(q.properties,function(CA){(A.isMethodDeclaration(CA)||A.isGetOrSetAccessorDeclaration(CA))&&cA.push(CA),A.isPropertyAssignment(CA)&&A.isFunctionExpression(CA.initializer)&&sA(cA,CA.initializer,CA.name),E(CA)});return}else{if(A.isSourceFileJS(m)||!A.isPropertyAccessExpression(eA))return;var J=A.factory.createPropertyDeclaration(oA,eA.name,void 0,void 0,q);A.copyLeadingComments(Y.parent,J,m),cA.push(J);return}function sA(CA,z,AA){return A.isFunctionExpression(z)?uA(CA,z,AA):BA(CA,z,AA)}function uA(CA,z,AA){var iA=A.concatenate(oA,g(z,132)),_A=A.factory.createMethodDeclaration(iA,void 0,AA,void 0,void 0,z.parameters,void 0,z.body);A.copyLeadingComments(Y,_A,m),CA.push(_A)}function BA(CA,z,AA){var iA=z.body,_A;iA.kind===238?_A=iA:_A=A.factory.createBlock([A.factory.createReturnStatement(iA)]);var fA=A.concatenate(oA,g(z,132)),M=A.factory.createMethodDeclaration(fA,void 0,AA,void 0,void 0,z.parameters,void 0,_A);A.copyLeadingComments(Y,M,m),CA.push(M)}}}function y(U){var V=U.initializer;if(!(!V||!A.isFunctionExpression(V)||!A.isIdentifier(U.name))){var wA=F(U.symbol);V.body&&wA.unshift(A.factory.createConstructorDeclaration(void 0,V.parameters,V.body));var IA=g(U.parent.parent,93),pA=A.factory.createClassDeclaration(IA,U.name,void 0,void 0,wA);return pA}}function S(U){var V=F(P);U.body&&V.unshift(A.factory.createConstructorDeclaration(void 0,U.parameters,U.body));var wA=g(U,93),IA=A.factory.createClassDeclaration(wA,U.name,void 0,void 0,V);return IA}}function g(B,m){return A.canHaveModifiers(B)?A.filter(B.modifiers,function(_){return _.kind===m}):void 0}function E(B){return B.name?!!(A.isIdentifier(B.name)&&B.name.text==="constructor"):!1}function p(B,m,_){if(A.isPropertyAccessExpression(B))return B.name;var x=B.argumentExpression;if(A.isNumericLiteral(x))return x;if(A.isStringLiteralLike(x))return A.isIdentifierText(x.text,A.getEmitScriptTarget(m))?A.factory.createIdentifier(x.text):A.isNoSubstitutionTemplateLiteral(x)?A.factory.createStringLiteral(x.text,_===0):x}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="convertToAsyncFunction",o=[A.Diagnostics.This_may_be_converted_to_an_async_function.code],s=!0;t.registerCodeFix({errorCodes:o,getCodeActions:function(M){s=!0;var aA=A.textChanges.ChangeTracker.with(M,function(gA){return E(gA,M.sourceFile,M.span.start,M.program.getTypeChecker())});return s?[t.createCodeFixAction(i,aA,A.Diagnostics.Convert_to_async_function,i,A.Diagnostics.Convert_all_to_async_functions)]:[]},fixIds:[i],getAllCodeActions:function(M){return t.codeFixAll(M,o,function(aA,gA){return E(aA,gA.file,gA.start,M.program.getTypeChecker())})}});var g;(function(M){M[M.Identifier=0]="Identifier",M[M.BindingPattern=1]="BindingPattern"})(g||(g={}));function E(M,aA,gA,QA){var mA=A.getTokenAtPosition(aA,gA),FA;if(A.isIdentifier(mA)&&A.isVariableDeclaration(mA.parent)&&mA.parent.initializer&&A.isFunctionLikeDeclaration(mA.parent.initializer)?FA=mA.parent.initializer:FA=A.tryCast(A.getContainingFunction(A.getTokenAtPosition(aA,gA)),A.canBeConvertedToAsync),!!FA){var SA=new A.Map,ce=A.isInJSFile(FA),re=B(FA,QA),KA=k(FA,QA,SA);if(A.returnsPromise(KA,QA)){var $A=KA.body&&A.isBlock(KA.body)?p(KA.body,QA):A.emptyArray,jA={checker:QA,synthNamesMap:SA,setOfExpressionsToReturn:re,isInJSFile:ce};if($A.length){var ue=A.skipTrivia(aA.text,A.moveRangePastModifiers(FA).pos);M.insertModifierAt(aA,ue,132,{suffix:" "});for(var MA=function(nA){if(A.forEachChild(nA,function kA(bA){if(A.isCallExpression(bA)){var TA=v(bA,bA,jA,!1);if(H())return!0;M.replaceNodeWithNodes(aA,nA,TA)}else if(!A.isFunctionLike(bA)&&(A.forEachChild(bA,kA),H()))return!0}),H())return{value:void 0}},RA=0,lA=$A;RA0)return bA;if(MA){var kA=Y(FA.checker,MA,ue);if(fA(mA,FA))return cA(kA,x(mA,M,FA.checker));var TA=oA(gA,kA,void 0);return gA&&gA.types.push(FA.checker.getAwaitedType(MA)||MA),TA}else return T()}}default:return T()}return A.emptyArray}function Y(M,aA,gA){var QA=A.getSynthesizedDeepClone(gA);return M.getPromisedTypeOfPromise(aA)?A.factory.createAwaitExpression(QA):QA}function q(M,aA){var gA=aA.getSignaturesOfType(M,0);return A.lastOrUndefined(gA)}function X(M,aA,gA,QA){for(var mA=[],FA=0,SA=M;FA0)return}else A.isFunctionLike(SA)||A.forEachChild(SA,FA)}),mA}function K(M,aA){var gA=[],QA;if(A.isFunctionLikeDeclaration(M)){if(M.parameters.length>0){var mA=M.parameters[0].name;QA=FA(mA)}}else A.isIdentifier(M)?QA=SA(M):A.isPropertyAccessExpression(M)&&A.isIdentifier(M.name)&&(QA=SA(M.name));if(!QA||"identifier"in QA&&QA.identifier.text==="undefined")return;return QA;function FA(KA){if(A.isIdentifier(KA))return SA(KA);var $A=A.flatMap(KA.elements,function(jA){return A.isOmittedExpression(jA)?[]:[FA(jA.name)]});return uA(KA,$A)}function SA(KA){var $A=re(KA),jA=ce($A);if(!jA)return sA(KA,gA);var ue=aA.synthNamesMap.get(A.getSymbolId(jA).toString());return ue||sA(KA,gA)}function ce(KA){return KA.symbol?KA.symbol:aA.checker.getSymbolAtLocation(KA)}function re(KA){return KA.original?KA.original:KA}}function J(M){return M?iA(M)?!M.identifier.text:A.every(M.elements,J):!0}function sA(M,aA){return aA===void 0&&(aA=[]),{kind:0,identifier:M,types:aA,hasBeenDeclared:!1,hasBeenReferenced:!1}}function uA(M,aA,gA){return aA===void 0&&(aA=A.emptyArray),gA===void 0&&(gA=[]),{kind:1,bindingPattern:M,elements:aA,types:gA}}function BA(M){return M.hasBeenReferenced=!0,M.identifier}function CA(M){return iA(M)?AA(M):z(M)}function z(M){for(var aA=0,gA=M.elements;aA1?[[P(J),H(J)],!0]:[[H(J)],!0]:[[P(J)],!1]}function P(Z){return q(void 0,Z)}function H(Z){return q([A.factory.createExportSpecifier(!1,void 0,"default")],Z)}function T(Z,K,J){var sA=Z.left,uA=Z.right,BA=Z.parent,CA=sA.name.text;if((A.isFunctionExpression(uA)||A.isArrowFunction(uA)||A.isClassExpression(uA))&&(!uA.name||uA.name.text===CA)){J.replaceRange(K,{pos:sA.getStart(K),end:uA.getStart(K)},A.factory.createToken(93),{suffix:" "}),uA.name||J.insertName(K,uA,CA);var z=A.findChildOfKind(BA,26,K);z&&J.delete(K,z)}else J.replaceNodeRangeWithNodes(K,sA.expression,A.findChildOfKind(sA,24,K),[A.factory.createToken(93),A.factory.createToken(85)],{joiner:" ",suffix:" "})}function v(Z,K,J){var sA=[A.factory.createToken(93)];switch(K.kind){case 215:{var uA=K.name;if(uA&&uA.text!==Z)return BA()}case 216:return pA(Z,sA,K,J);case 228:return oA(Z,sA,K,J);default:return BA()}function BA(){return Y(sA,A.factory.createIdentifier(Z),F(K,J))}}function F(Z,K){if(!K||!A.some(A.arrayFrom(K.keys()),function(sA){return A.rangeContainsRange(Z,sA)}))return Z;return A.isArray(Z)?A.getSynthesizedDeepClonesWithReplacements(Z,!0,J):A.getSynthesizedDeepCloneWithReplacements(Z,!0,J);function J(sA){if(sA.kind===208){var uA=K.get(sA);return K.delete(sA),uA}}}function y(Z,K,J,sA,uA,BA){switch(Z.kind){case 203:{var CA=A.mapAllOrFail(Z.elements,function(AA){return AA.dotDotDotToken||AA.initializer||AA.propertyName&&!A.isIdentifier(AA.propertyName)||!A.isIdentifier(AA.name)?void 0:eA(AA.propertyName&&AA.propertyName.text,AA.name.text)});if(CA)return X([A.makeImport(void 0,CA,K,BA)])}case 204:{var z=U(t.moduleSpecifierToValidIdentifier(K.text,uA),sA);return X([A.makeImport(A.factory.createIdentifier(z),void 0,K,BA),Y(void 0,A.getSynthesizedDeepClone(Z),A.factory.createIdentifier(z))])}case 79:return S(Z,K,J,sA,BA);default:return A.Debug.assertNever(Z,"Convert to ES module got invalid name kind ".concat(Z.kind))}}function S(Z,K,J,sA,uA){for(var BA=J.getSymbolAtLocation(Z),CA=new A.Map,z=!1,AA,iA=0,_A=sA.original.get(Z.text);iA<_A.length;iA++){var fA=_A[iA];if(!(J.getSymbolAtLocation(fA)!==BA||fA===Z)){var M=fA.parent;if(A.isPropertyAccessExpression(M)){var aA=M.name.text;if(aA==="default"){z=!0;var gA=fA.getText();(AA??(AA=new A.Map)).set(M,A.factory.createIdentifier(gA))}else{A.Debug.assert(M.expression===fA,"Didn't expect expression === use");var QA=CA.get(aA);QA===void 0&&(QA=U(aA,sA),CA.set(aA,QA)),(AA??(AA=new A.Map)).set(M,A.factory.createIdentifier(QA))}}else z=!0}}var mA=CA.size===0?void 0:A.arrayFrom(A.mapIterator(CA.entries(),function(FA){var SA=FA[0],ce=FA[1];return A.factory.createImportSpecifier(!1,SA===ce?void 0:A.factory.createIdentifier(SA),A.factory.createIdentifier(ce))}));return mA||(z=!0),X([A.makeImport(z?A.getSynthesizedDeepClone(Z):void 0,mA,K,uA)],AA)}function U(Z,K){for(;K.original.has(Z)||K.additional.has(Z);)Z="_".concat(Z);return K.additional.add(Z),Z}function V(Z){var K=A.createMultiMap();return wA(Z,function(J){return K.add(J.text,J)}),K}function wA(Z,K){A.isIdentifier(Z)&&IA(Z)&&K(Z),Z.forEachChild(function(J){return wA(J,K)})}function IA(Z){var K=Z.parent;switch(K.kind){case 208:return K.name!==Z;case 205:return K.propertyName!==Z;case 273:return K.propertyName!==Z;default:return!0}}function pA(Z,K,J,sA){return A.factory.createFunctionDeclaration(A.concatenate(K,A.getSynthesizedDeepClones(J.modifiers)),A.getSynthesizedDeepClone(J.asteriskToken),Z,A.getSynthesizedDeepClones(J.typeParameters),A.getSynthesizedDeepClones(J.parameters),A.getSynthesizedDeepClone(J.type),A.factory.converters.convertToFunctionBlock(F(J.body,sA)))}function oA(Z,K,J,sA){return A.factory.createClassDeclaration(A.concatenate(K,A.getSynthesizedDeepClones(J.modifiers)),Z,A.getSynthesizedDeepClones(J.typeParameters),A.getSynthesizedDeepClones(J.heritageClauses),F(J.members,sA))}function cA(Z,K,J,sA){return K==="default"?A.makeImport(A.factory.createIdentifier(Z),void 0,J,sA):A.makeImport(void 0,[eA(K,Z)],J,sA)}function eA(Z,K){return A.factory.createImportSpecifier(!1,Z!==void 0&&Z!==K?A.factory.createIdentifier(Z):void 0,A.factory.createIdentifier(K))}function Y(Z,K,J){return A.factory.createVariableStatement(Z,A.factory.createVariableDeclarationList([A.factory.createVariableDeclaration(K,void 0,void 0,J)],2))}function q(Z,K){return A.factory.createExportDeclaration(void 0,!1,Z&&A.factory.createNamedExports(Z),K===void 0?void 0:A.factory.createStringLiteral(K))}function X(Z,K){return{newImports:Z,useSitesToUnqualify:K}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="correctQualifiedNameToIndexedAccessType",o=[A.Diagnostics.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(E){var p=s(E.sourceFile,E.span.start);if(p){var B=A.textChanges.ChangeTracker.with(E,function(_){return g(_,E.sourceFile,p)}),m="".concat(p.left.text,'["').concat(p.right.text,'"]');return[t.createCodeFixAction(i,B,[A.Diagnostics.Rewrite_as_the_indexed_access_type_0,m],i,A.Diagnostics.Rewrite_all_as_indexed_access_types)]}},fixIds:[i],getAllCodeActions:function(E){return t.codeFixAll(E,o,function(p,B){var m=s(B.file,B.start);m&&g(p,B.file,m)})}});function s(E,p){var B=A.findAncestor(A.getTokenAtPosition(E,p),A.isQualifiedName);return A.Debug.assert(!!B,"Expected position to be owned by a qualified name."),A.isIdentifier(B.left)?B:void 0}function g(E,p,B){var m=B.right.text,_=A.factory.createIndexedAccessTypeNode(A.factory.createTypeReferenceNode(B.left,void 0),A.factory.createLiteralTypeNode(A.factory.createStringLiteral(m)));E.replaceNode(p,B,_)}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i=[A.Diagnostics.Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type.code],o="convertToTypeOnlyExport";t.registerCodeFix({errorCodes:i,getCodeActions:function(B){var m=A.textChanges.ChangeTracker.with(B,function(_){return g(_,s(B.span,B.sourceFile),B)});if(m.length)return[t.createCodeFixAction(o,m,A.Diagnostics.Convert_to_type_only_export,o,A.Diagnostics.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[o],getAllCodeActions:function(B){var m=new A.Map;return t.codeFixAll(B,i,function(_,x){var O=s(x,B.sourceFile);O&&A.addToSeen(m,A.getNodeId(O.parent.parent))&&g(_,O,B)})}});function s(p,B){return A.tryCast(A.getTokenAtPosition(B,p.start).parent,A.isExportSpecifier)}function g(p,B,m){if(B){var _=B.parent,x=_.parent,O=E(B,m);if(O.length===_.elements.length)p.insertModifierBefore(m.sourceFile,154,_);else{var k=A.factory.updateExportDeclaration(x,x.modifiers,!1,A.factory.updateNamedExports(_,A.filter(_.elements,function(H){return!A.contains(O,H)})),x.moduleSpecifier,void 0),P=A.factory.createExportDeclaration(void 0,!0,A.factory.createNamedExports(O),x.moduleSpecifier,void 0);p.replaceNode(m.sourceFile,x,k,{leadingTriviaOption:A.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:A.textChanges.TrailingTriviaOption.Exclude}),p.insertNodeAfter(m.sourceFile,x,P)}}}function E(p,B){var m=p.parent;if(m.elements.length===1)return m.elements;var _=A.getDiagnosticsWithinSpan(A.createTextSpanFromNode(m),B.program.getSemanticDiagnostics(B.sourceFile,B.cancellationToken));return A.filter(m.elements,function(x){var O;return x===p||((O=A.findDiagnosticForNode(x,_))===null||O===void 0?void 0:O.code)===i[0]})}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i=[A.Diagnostics.This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error.code],o="convertToTypeOnlyImport";t.registerCodeFix({errorCodes:i,getCodeActions:function(p){var B=A.textChanges.ChangeTracker.with(p,function(m){var _=s(p.span,p.sourceFile);g(m,_,p)});if(B.length)return[t.createCodeFixAction(o,B,A.Diagnostics.Convert_to_type_only_import,o,A.Diagnostics.Convert_all_imports_not_used_as_a_value_to_type_only_imports)]},fixIds:[o],getAllCodeActions:function(p){return t.codeFixAll(p,i,function(B,m){var _=s(m,p.sourceFile);g(B,_,p)})}});function s(E,p){return A.tryCast(A.getTokenAtPosition(p,E.start).parent,A.isImportDeclaration)}function g(E,p,B){if(p?.importClause){var m=p.importClause;E.insertText(B.sourceFile,p.getStart()+6," type"),m.name&&m.namedBindings&&(E.deleteNodeRangeExcludingEnd(B.sourceFile,m.name,p.importClause.namedBindings),E.insertNodeBefore(B.sourceFile,p,A.factory.updateImportDeclaration(p,void 0,A.factory.createImportClause(!0,m.name,void 0),p.moduleSpecifier,void 0)))}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="convertLiteralTypeToMappedType",o=[A.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(p){var B=p.sourceFile,m=p.span,_=s(B,m.start);if(_){var x=_.name,O=_.constraint,k=A.textChanges.ChangeTracker.with(p,function(P){return g(P,B,_)});return[t.createCodeFixAction(i,k,[A.Diagnostics.Convert_0_to_1_in_0,O,x],i,A.Diagnostics.Convert_all_type_literals_to_mapped_type)]}},fixIds:[i],getAllCodeActions:function(E){return t.codeFixAll(E,o,function(p,B){var m=s(B.file,B.start);m&&g(p,B.file,m)})}});function s(E,p){var B=A.getTokenAtPosition(E,p);if(A.isIdentifier(B)){var m=A.cast(B.parent.parent,A.isPropertySignature),_=B.getText(E);return{container:A.cast(m.parent,A.isTypeLiteralNode),typeNode:m.type,constraint:_,name:_==="K"?"P":"K"}}}function g(E,p,B){var m=B.container,_=B.typeNode,x=B.constraint,O=B.name;E.replaceNode(p,m,A.factory.createMappedTypeNode(void 0,A.factory.createTypeParameterDeclaration(void 0,O,A.factory.createTypeReferenceNode(x)),void 0,void 0,_,void 0))}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i=[A.Diagnostics.Class_0_incorrectly_implements_interface_1.code,A.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],o="fixClassIncorrectlyImplementsInterface";t.registerCodeFix({errorCodes:i,getCodeActions:function(B){var m=B.sourceFile,_=B.span,x=s(m,_.start);return A.mapDefined(A.getEffectiveImplementsTypeNodes(x),function(O){var k=A.textChanges.ChangeTracker.with(B,function(P){return E(B,O,m,x,P,B.preferences)});return k.length===0?void 0:t.createCodeFixAction(o,k,[A.Diagnostics.Implement_interface_0,O.getText(m)],o,A.Diagnostics.Implement_all_unimplemented_interfaces)})},fixIds:[o],getAllCodeActions:function(B){var m=new A.Map;return t.codeFixAll(B,i,function(_,x){var O=s(x.file,x.start);if(A.addToSeen(m,A.getNodeId(O)))for(var k=0,P=A.getEffectiveImplementsTypeNodes(O);k0||De.length>0||_e.size>0||Ae.size>0}}function E(lA,tA,N,nA){var kA=A.createPackageJsonImportFilter(lA,nA,N),bA=U(tA.getTypeChecker(),lA,tA.getCompilerOptions());return{getModuleSpecifierForBestExportInfo:TA};function TA(VA,De,_e,Ae,Q){var Ze=H(VA,{symbolName:De,position:_e},Ae,!1,tA,lA,N,nA,bA,Q),Cr=Ze.fixes,be=Ze.computedWithoutCacheCount,Me=Y(Cr,lA,tA,kA,N);return Me&&pi(pi({},Me),{computedWithoutCacheCount:be})}}t.createImportSpecifierResolver=E;var p;(function(lA){lA[lA.UseNamespace=0]="UseNamespace",lA[lA.JsdocTypeImport=1]="JsdocTypeImport",lA[lA.AddToExisting=2]="AddToExisting",lA[lA.AddNew=3]="AddNew",lA[lA.PromoteTypeOnly=4]="PromoteTypeOnly"})(p||(p={}));var B;(function(lA){lA[lA.Allowed=1]="Allowed",lA[lA.Required=2]="Required",lA[lA.NotAllowed=4]="NotAllowed"})(B||(B={}));function m(lA,tA,N,nA,kA,bA,TA,VA,De,_e,Ae){var Q=TA.getCompilerOptions(),Ze=A.pathIsBareSpecifier(A.stripQuotes(tA.name))?[P(lA,tA,TA,bA)]:k(N,lA,nA,kA,TA,bA,_e,Ae);A.Debug.assertIsDefined(Ze);var Cr=V(N,TA),be=A.isValidTypeOnlyAliasUseSite(A.getTokenAtPosition(N,De)),Me=A.Debug.checkDefined(x(N,Ze,tA,TA,{symbolName:nA,position:De},be,Cr,bA,_e));return{moduleSpecifier:Me.moduleSpecifier,codeAction:O(M({host:bA,formatContext:VA,preferences:_e},N,nA,Me,!1,A.getQuotePreference(N,_e),Q))}}t.getImportCompletionAction=m;function _(lA,tA,N,nA,kA,bA){var TA=N.getCompilerOptions(),VA=A.single(AA(lA,N.getTypeChecker(),tA,TA)),De=z(lA,tA,VA,N),_e=VA!==tA.text;return De&&O(M({host:nA,formatContext:kA,preferences:bA},lA,VA,De,_e,1,TA))}t.getPromoteTypeOnlyCompletionAction=_;function x(lA,tA,N,nA,kA,bA,TA,VA,De){A.Debug.assert(tA.some(function(Ae){return Ae.moduleSymbol===N||Ae.symbol.parent===N}),"Some exportInfo should match the specified moduleSymbol");var _e=A.createPackageJsonImportFilter(lA,De,VA);return Y(H(tA,kA,bA,TA,nA,lA,VA,De).fixes,lA,nA,_e,VA)}function O(lA){var tA=lA.description,N=lA.changes,nA=lA.commands;return{description:tA,changes:N,commands:nA}}function k(lA,tA,N,nA,kA,bA,TA,VA){var De=wA(kA,bA);return A.getExportInfoMap(lA,bA,kA,TA,VA).search(lA.path,nA,function(_e){return _e===N},function(_e){if(A.skipAlias(_e[0].symbol,De(_e[0].isFromPackageJson))===tA)return _e})}function P(lA,tA,N,nA){var kA,bA,TA=N.getCompilerOptions(),VA=_e(N.getTypeChecker(),!1);if(VA)return VA;var De=(bA=(kA=nA.getPackageJsonAutoImportProvider)===null||kA===void 0?void 0:kA.call(nA))===null||bA===void 0?void 0:bA.getTypeChecker();return A.Debug.checkDefined(De&&_e(De,!0),"Could not find symbol in specified module for code actions");function _e(Ae,Q){var Ze=A.getDefaultLikeExportInfo(tA,Ae,TA);if(Ze&&A.skipAlias(Ze.symbol,Ae)===lA)return{symbol:Ze.symbol,moduleSymbol:tA,moduleFileName:void 0,exportKind:Ze.exportKind,targetFlags:A.skipAlias(lA,Ae).flags,isFromPackageJson:Q};var Cr=Ae.tryGetMemberInModuleExportsAndProperties(lA.name,tA);if(Cr&&A.skipAlias(Cr,Ae)===lA)return{symbol:Cr,moduleSymbol:tA,moduleFileName:void 0,exportKind:0,targetFlags:A.skipAlias(lA,Ae).flags,isFromPackageJson:Q}}}function H(lA,tA,N,nA,kA,bA,TA,VA,De,_e){De===void 0&&(De=U(kA.getTypeChecker(),bA,kA.getCompilerOptions()));var Ae=kA.getTypeChecker(),Q=A.flatMap(lA,De.getImportsForExportInfo),Ze=tA&&T(Q,tA.symbolName,tA.position,Ae),Cr=S(Q,N,Ae,kA.getCompilerOptions());if(Cr)return{computedWithoutCacheCount:0,fixes:dt(dt([],Ze?[Ze]:A.emptyArray,!0),[Cr],!1)};var be=pA(lA,Q,kA,bA,tA?.position,N,nA,TA,VA,_e),Me=be.fixes,Le=be.computedWithoutCacheCount,ir=Le===void 0?0:Le;return{computedWithoutCacheCount:ir,fixes:dt(dt([],Ze?[Ze]:A.emptyArray,!0),Me,!0)}}function T(lA,tA,N,nA){return A.firstDefined(lA,function(kA){var bA,TA=kA.declaration,VA=F(TA),De=(bA=A.tryGetModuleSpecifierFromDeclaration(TA))===null||bA===void 0?void 0:bA.text;if(VA&&De){var _e=v(TA,nA);if(_e&&_e.exports.has(A.escapeLeadingUnderscores(tA)))return{kind:0,namespacePrefix:VA,position:N,moduleSpecifier:De}}})}function v(lA,tA){var N;switch(lA.kind){case 257:return tA.resolveExternalModuleName(lA.initializer.arguments[0]);case 268:return tA.getAliasedSymbol(lA.symbol);case 269:var nA=A.tryCast((N=lA.importClause)===null||N===void 0?void 0:N.namedBindings,A.isNamespaceImport);return nA&&tA.getAliasedSymbol(nA.symbol);default:return A.Debug.assertNever(lA)}}function F(lA){var tA,N,nA;switch(lA.kind){case 257:return(tA=A.tryCast(lA.name,A.isIdentifier))===null||tA===void 0?void 0:tA.text;case 268:return lA.name.text;case 269:return(nA=A.tryCast((N=lA.importClause)===null||N===void 0?void 0:N.namedBindings,A.isNamespaceImport))===null||nA===void 0?void 0:nA.name.text;default:return A.Debug.assertNever(lA)}}function y(lA,tA,N,nA,kA,bA){return lA?tA&&bA.importsNotUsedAsValues===2||bA.isolatedModules&&bA.preserveValueImports&&(!(nA&111551)||kA.getTypeOnlyAliasDeclaration(N))?2:1:4}function S(lA,tA,N,nA){return A.firstDefined(lA,function(kA){var bA=kA.declaration,TA=kA.importKind,VA=kA.symbol,De=kA.targetFlags;if(!(TA===3||TA===2||bA.kind===268)){if(bA.kind===257)return(TA===0||TA===1)&&bA.name.kind===203?{kind:2,importClauseOrBindingPattern:bA.name,importKind:TA,moduleSpecifier:bA.initializer.arguments[0].text,addAsTypeOnly:4}:void 0;var _e=bA.importClause;if(!(!_e||!A.isStringLiteralLike(bA.moduleSpecifier))){var Ae=_e.name,Q=_e.namedBindings;if(!(_e.isTypeOnly&&!(TA===0&&Q))){var Ze=y(tA,!1,VA,De,N,nA);if(!(TA===1&&(Ae||Ze===2&&Q))&&!(TA===0&&Q?.kind===271))return{kind:2,importClauseOrBindingPattern:_e,importKind:TA,moduleSpecifier:bA.moduleSpecifier.text,addAsTypeOnly:Ze}}}}})}function U(lA,tA,N){for(var nA,kA=0,bA=tA.imports;kA0}:{kind:3,moduleSpecifier:ae,importKind:uA(tA,ir.exportKind,Ae),useRequire:kA,addAsTypeOnly:LA,exportInfo:ir,isReExport:Ye>0}})});return{computedWithoutCacheCount:Me,fixes:Le}}function pA(lA,tA,N,nA,kA,bA,TA,VA,De,_e){var Ae=A.firstDefined(tA,function(Q){return oA(Q,bA,TA,N.getTypeChecker(),N.getCompilerOptions())});return Ae?{fixes:[Ae]}:IA(N,nA,kA,bA,TA,lA,VA,De,_e)}function oA(lA,tA,N,nA,kA){var bA,TA=lA.declaration,VA=lA.importKind,De=lA.symbol,_e=lA.targetFlags,Ae=(bA=A.tryGetModuleSpecifierFromDeclaration(TA))===null||bA===void 0?void 0:bA.text;if(Ae){var Q=N?4:y(tA,!0,De,_e,nA,kA);return{kind:3,moduleSpecifier:Ae,importKind:VA,addAsTypeOnly:Q,useRequire:N}}}function cA(lA,tA,N,nA){var kA=A.getTokenAtPosition(lA.sourceFile,N),bA;if(tA===A.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code)bA=J(lA,kA);else if(A.isIdentifier(kA))if(tA===A.Diagnostics._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code){var TA=A.single(AA(lA.sourceFile,lA.program.getTypeChecker(),kA,lA.program.getCompilerOptions())),VA=z(lA.sourceFile,kA,TA,lA.program);return VA&&[{fix:VA,symbolName:TA,errorIdentifierText:kA.text}]}else bA=CA(lA,kA,nA);else return;var De=A.createPackageJsonImportFilter(lA.sourceFile,lA.preferences,lA.host);return bA&&eA(bA,lA.sourceFile,lA.program,De,lA.host)}function eA(lA,tA,N,nA,kA){var bA=function(TA){return A.toPath(TA,kA.getCurrentDirectory(),A.hostGetCanonicalFileName(kA))};return A.sort(lA,function(TA,VA){return A.compareBooleans(!!TA.isJsxNamespaceFix,!!VA.isJsxNamespaceFix)||A.compareValues(TA.fix.kind,VA.fix.kind)||q(TA.fix,VA.fix,tA,N,nA.allowsImportingSpecifier,bA)})}function Y(lA,tA,N,nA,kA){if(A.some(lA))return lA[0].kind===0||lA[0].kind===2?lA[0]:lA.reduce(function(bA,TA){return q(TA,bA,tA,N,nA.allowsImportingSpecifier,function(VA){return A.toPath(VA,kA.getCurrentDirectory(),A.hostGetCanonicalFileName(kA))})===-1?TA:bA})}function q(lA,tA,N,nA,kA,bA){return lA.kind!==0&&tA.kind!==0?A.compareBooleans(kA(tA.moduleSpecifier),kA(lA.moduleSpecifier))||K(lA.moduleSpecifier,tA.moduleSpecifier,N,nA)||A.compareBooleans(X(lA,N,nA.getCompilerOptions(),bA),X(tA,N,nA.getCompilerOptions(),bA))||A.compareNumberOfDirectorySeparators(lA.moduleSpecifier,tA.moduleSpecifier):0}function X(lA,tA,N,nA){var kA;if(lA.isReExport&&(!((kA=lA.exportInfo)===null||kA===void 0)&&kA.moduleFileName)&&A.getEmitModuleResolutionKind(N)===A.ModuleResolutionKind.NodeJs&&Z(lA.exportInfo.moduleFileName)){var bA=nA(A.getDirectoryPath(lA.exportInfo.moduleFileName));return A.startsWith(tA.path,bA)}return!1}function Z(lA){return A.getBaseFileName(lA,[".js",".jsx",".d.ts",".ts",".tsx"],!0)==="index"}function K(lA,tA,N,nA){return A.startsWith(lA,"node:")&&!A.startsWith(tA,"node:")?A.shouldUseUriStyleNodeCoreModules(N,nA)?-1:1:A.startsWith(tA,"node:")&&!A.startsWith(lA,"node:")?A.shouldUseUriStyleNodeCoreModules(N,nA)?1:-1:0}function J(lA,tA){var N=lA.sourceFile,nA=lA.program,kA=lA.host,bA=lA.preferences,TA=nA.getTypeChecker(),VA=sA(tA,TA);if(VA){var De=TA.getAliasedSymbol(VA),_e=VA.name,Ae=[{symbol:VA,moduleSymbol:De,moduleFileName:void 0,exportKind:3,targetFlags:De.flags,isFromPackageJson:!1}],Q=V(N,nA),Ze=A.isIdentifier(tA)?tA.getStart(N):void 0,Cr=H(Ae,Ze?{position:Ze,symbolName:_e}:void 0,!1,Q,nA,N,kA,bA).fixes;return Cr.map(function(be){var Me;return{fix:be,symbolName:_e,errorIdentifierText:(Me=A.tryCast(tA,A.isIdentifier))===null||Me===void 0?void 0:Me.text}})}}function sA(lA,tA){var N=A.isIdentifier(lA)?tA.getSymbolAtLocation(lA):void 0;if(A.isUMDExportSymbol(N))return N;var nA=lA.parent;return A.isJsxOpeningLikeElement(nA)&&nA.tagName===lA||A.isJsxOpeningFragment(nA)?A.tryCast(tA.resolveName(tA.getJsxNamespace(nA),A.isJsxOpeningLikeElement(nA)?lA:nA,111551,!1),A.isUMDExportSymbol):void 0}function uA(lA,tA,N,nA){switch(tA){case 0:return 0;case 1:return 1;case 2:return fA(lA,N,!!nA);case 3:return BA(lA,N,!!nA);default:return A.Debug.assertNever(tA)}}t.getImportKind=uA;function BA(lA,tA,N){if(A.getAllowSyntheticDefaultImports(tA))return 1;var nA=A.getEmitModuleKind(tA);switch(nA){case A.ModuleKind.AMD:case A.ModuleKind.CommonJS:case A.ModuleKind.UMD:return A.isInJSFile(lA)&&(A.isExternalModule(lA)||N)?2:3;case A.ModuleKind.System:case A.ModuleKind.ES2015:case A.ModuleKind.ES2020:case A.ModuleKind.ES2022:case A.ModuleKind.ESNext:case A.ModuleKind.None:return 2;case A.ModuleKind.Node16:case A.ModuleKind.NodeNext:return lA.impliedNodeFormat===A.ModuleKind.ESNext?2:3;default:return A.Debug.assertNever(nA,"Unexpected moduleKind ".concat(nA))}}function CA(lA,tA,N){var nA=lA.sourceFile,kA=lA.program,bA=lA.cancellationToken,TA=lA.host,VA=lA.preferences,De=kA.getTypeChecker(),_e=kA.getCompilerOptions();return A.flatMap(AA(nA,De,tA,_e),function(Ae){if(Ae!=="default"){var Q=A.isValidTypeOnlyAliasUseSite(tA),Ze=V(nA,kA),Cr=_A(Ae,A.isJSXTagName(tA),A.getMeaningFromLocation(tA),bA,nA,kA,N,TA,VA),be=A.arrayFrom(A.flatMapIterator(Cr.entries(),function(Me){var Le=Me[0],ir=Me[1];return H(ir,{symbolName:Ae,position:tA.getStart(nA)},Q,Ze,kA,nA,TA,VA).fixes}));return be.map(function(Me){return{fix:Me,symbolName:Ae,errorIdentifierText:tA.text,isJsxNamespaceFix:Ae!==tA.text}})}})}function z(lA,tA,N,nA){var kA=nA.getTypeChecker(),bA=kA.resolveName(N,tA,111551,!0);if(bA){var TA=kA.getTypeOnlyAliasDeclaration(bA);if(!(!TA||A.getSourceFileOfNode(TA)!==lA))return{kind:4,typeOnlyAliasDeclaration:TA}}}function AA(lA,tA,N,nA){var kA=N.parent;if((A.isJsxOpeningLikeElement(kA)||A.isJsxClosingElement(kA))&&kA.tagName===N&&A.jsxModeNeedsExplicitImport(nA.jsx)){var bA=tA.getJsxNamespace(lA);if(iA(bA,N,tA)){var TA=!A.isIntrinsicJsxName(N.text)&&!tA.resolveName(N.text,N,111551,!1);return TA?[N.text,bA]:[bA]}}return[N.text]}function iA(lA,tA,N){if(A.isIntrinsicJsxName(tA.text))return!0;var nA=N.resolveName(lA,tA,111551,!0);return!nA||A.some(nA.declarations,A.isTypeOnlyImportOrExportDeclaration)&&!(nA.flags&111551)}function _A(lA,tA,N,nA,kA,bA,TA,VA,De){var _e,Ae=A.createMultiMap(),Q=A.createPackageJsonImportFilter(kA,De,VA),Ze=(_e=VA.getModuleSpecifierCache)===null||_e===void 0?void 0:_e.call(VA),Cr=A.memoizeOne(function(Me){return A.createModuleSpecifierResolutionHost(Me?VA.getPackageJsonAutoImportProvider():bA,VA)});function be(Me,Le,ir,Ye,mr,$e){var xr=Cr($e);if(Le&&A.isImportableFile(mr,kA,Le,De,Q,xr,Ze)||!Le&&Q.allowsImportingAmbientModule(Me,xr)){var PA=mr.getTypeChecker();Ae.add(A.getUniqueSymbolId(ir,PA).toString(),{symbol:ir,moduleSymbol:Me,moduleFileName:Le?.fileName,exportKind:Ye,targetFlags:A.skipAlias(ir,PA).flags,isFromPackageJson:$e})}}return A.forEachExternalModuleToImportFrom(bA,VA,De,TA,function(Me,Le,ir,Ye){var mr=ir.getTypeChecker();nA.throwIfCancellationRequested();var $e=ir.getCompilerOptions(),xr=A.getDefaultLikeExportInfo(Me,mr,$e);xr&&(xr.name===lA||MA(Me,A.getEmitScriptTarget($e),tA)===lA)&&ue(xr.symbolForMeaning,N)&&be(Me,Le,xr.symbol,xr.exportKind,ir,Ye);var PA=mr.tryGetMemberInModuleExportsAndProperties(lA,Me);PA&&ue(PA,N)&&be(Me,Le,PA,0,ir,Ye)}),Ae}function fA(lA,tA,N){var nA=A.getAllowSyntheticDefaultImports(tA),kA=A.isInJSFile(lA);if(!kA&&A.getEmitModuleKind(tA)>=A.ModuleKind.ES2015)return nA?1:2;if(kA)return A.isExternalModule(lA)||N?nA?1:2:3;for(var bA=0,TA=lA.statements;bA1&&A.OrganizeImports.importSpecifiersAreSorted(tA.parent.elements)){lA.delete(nA,tA);var bA=A.factory.updateImportSpecifier(tA,!1,tA.propertyName,tA.name),TA=A.OrganizeImports.getImportSpecifierInsertionIndex(tA.parent.elements,bA);lA.insertImportSpecifierAtIndex(nA,bA,tA.parent,TA)}else lA.deleteRange(nA,tA.getFirstToken());return tA}else return A.Debug.assert(tA.parent.parent.isTypeOnly),VA(tA.parent.parent),tA.parent.parent;case 270:return VA(tA),tA;case 271:return VA(tA.parent),tA.parent;case 268:return lA.deleteRange(nA,tA.getChildAt(1)),tA;default:A.Debug.failBadSyntaxKind(tA)}function VA(De){if(lA.delete(nA,A.getTypeKeywordOfTypeOnlyImport(De,nA)),kA){var _e=A.tryCast(De.namedBindings,A.isNamedImports);if(_e&&_e.elements.length>1){A.OrganizeImports.importSpecifiersAreSorted(_e.elements)&&tA.kind===273&&_e.elements.indexOf(tA)!==0&&(lA.delete(nA,tA),lA.insertImportSpecifierAtIndex(nA,tA,_e,0));for(var Ae=0,Q=_e.elements;Ae"),[A.Diagnostics.Convert_function_expression_0_to_arrow_function,O?O.text:A.ANONYMOUS]):(g.replaceNode(E,x,A.factory.createToken(85)),g.insertText(E,O.end," = "),g.insertText(E,k.pos," =>"),[A.Diagnostics.Convert_function_declaration_0_to_arrow_function,O.text])}}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="fixImportNonExportedMember",o=[A.Diagnostics.Module_0_declares_1_locally_but_it_is_not_exported.code];t.registerCodeFix({errorCodes:o,fixIds:[i],getCodeActions:function(O){var k=O.sourceFile,P=O.span,H=O.program,T=s(k,P.start,H);if(T!==void 0){var v=A.textChanges.ChangeTracker.with(O,function(F){return g(F,H,T)});return[t.createCodeFixAction(i,v,[A.Diagnostics.Export_0_from_module_1,T.exportName.node.text,T.moduleSpecifier],i,A.Diagnostics.Export_all_referenced_locals)]}},getAllCodeActions:function(O){var k=O.program;return t.createCombinedCodeActions(A.textChanges.ChangeTracker.with(O,function(P){var H=new A.Map;t.eachDiagnostic(O,o,function(T){var v=s(T.file,T.start,k);if(v!==void 0){var F=v.exportName,y=v.node,S=v.moduleSourceFile;if(p(S,F.isTypeOnly)===void 0&&A.canHaveExportModifier(y))P.insertExportModifier(S,y);else{var U=H.get(S)||{typeOnlyExports:[],exports:[]};F.isTypeOnly?U.typeOnlyExports.push(F):U.exports.push(F),H.set(S,U)}}}),H.forEach(function(T,v){var F=p(v,!0);F&&F.isTypeOnly?(E(P,k,v,T.typeOnlyExports,F),E(P,k,v,T.exports,p(v,!1))):E(P,k,v,dt(dt([],T.exports,!0),T.typeOnlyExports,!0),F)})}))}});function s(O,k,P){var H,T=A.getTokenAtPosition(O,k);if(A.isIdentifier(T)){var v=A.findAncestor(T,A.isImportDeclaration);if(v===void 0)return;var F=A.isStringLiteral(v.moduleSpecifier)?v.moduleSpecifier.text:void 0;if(F===void 0)return;var y=A.getResolvedModule(O,F,void 0);if(y===void 0)return;var S=P.getSourceFile(y.resolvedFileName);if(S===void 0||A.isSourceFileFromLibrary(P,S))return;var U=S.symbol,V=(H=U.valueDeclaration)===null||H===void 0?void 0:H.locals;if(V===void 0)return;var wA=V.get(T.escapedText);if(wA===void 0)return;var IA=x(wA);if(IA===void 0)return;var pA={node:T,isTypeOnly:A.isTypeDeclaration(IA)};return{exportName:pA,node:IA,moduleSourceFile:S,moduleSpecifier:F}}}function g(O,k,P){var H=P.exportName,T=P.node,v=P.moduleSourceFile,F=p(v,H.isTypeOnly);F?B(O,k,v,F,[H]):A.canHaveExportModifier(T)?O.insertExportModifier(v,T):m(O,k,v,[H])}function E(O,k,P,H,T){A.length(H)&&(T?B(O,k,P,T,H):m(O,k,P,H))}function p(O,k){var P=function(H){return A.isExportDeclaration(H)&&(k&&H.isTypeOnly||!H.isTypeOnly)};return A.findLast(O.statements,P)}function B(O,k,P,H,T){var v=H.exportClause&&A.isNamedExports(H.exportClause)?H.exportClause.elements:A.factory.createNodeArray([]),F=!H.isTypeOnly&&!!(k.getCompilerOptions().isolatedModules||A.find(v,function(y){return y.isTypeOnly}));O.replaceNode(P,H,A.factory.updateExportDeclaration(H,H.modifiers,H.isTypeOnly,A.factory.createNamedExports(A.factory.createNodeArray(dt(dt([],v,!0),_(T,F),!0),v.hasTrailingComma)),H.moduleSpecifier,H.assertClause))}function m(O,k,P,H){O.insertNodeAtEndOfScope(P,P,A.factory.createExportDeclaration(void 0,!1,A.factory.createNamedExports(_(H,!!k.getCompilerOptions().isolatedModules)),void 0,void 0))}function _(O,k){return A.factory.createNodeArray(A.map(O,function(P){return A.factory.createExportSpecifier(k&&P.isTypeOnly,void 0,P.node)}))}function x(O){if(O.valueDeclaration===void 0)return A.firstOrUndefined(O.declarations);var k=O.valueDeclaration,P=A.isVariableDeclaration(k)?A.tryCast(k.parent.parent,A.isVariableStatement):void 0;return P&&A.length(P.declarationList.declarations)===1?P:k}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="fixIncorrectNamedTupleSyntax",o=[A.Diagnostics.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,A.Diagnostics.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(p){var B=p.sourceFile,m=p.span,_=s(B,m.start),x=A.textChanges.ChangeTracker.with(p,function(O){return g(O,B,_)});return[t.createCodeFixAction(i,x,A.Diagnostics.Move_labeled_tuple_element_modifiers_to_labels,i,A.Diagnostics.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[i]});function s(E,p){var B=A.getTokenAtPosition(E,p);return A.findAncestor(B,function(m){return m.kind===199})}function g(E,p,B){if(B){for(var m=B.type,_=!1,x=!1;m.kind===187||m.kind===188||m.kind===193;)m.kind===187?_=!0:m.kind===188&&(x=!0),m=m.type;var O=A.factory.updateNamedTupleMember(B,B.dotDotDotToken||(x?A.factory.createToken(25):void 0),B.name,B.questionToken||(_?A.factory.createToken(57):void 0),m);O!==B&&E.replaceNode(p,B,O)}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="fixSpelling",o=[A.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,A.Diagnostics.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,A.Diagnostics.Cannot_find_name_0_Did_you_mean_1.code,A.Diagnostics.Could_not_find_name_0_Did_you_mean_1.code,A.Diagnostics.Cannot_find_namespace_0_Did_you_mean_1.code,A.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,A.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,A.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2.code,A.Diagnostics.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,A.Diagnostics.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,A.Diagnostics.No_overload_matches_this_call.code,A.Diagnostics.Type_0_is_not_assignable_to_type_1.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(B){var m=B.sourceFile,_=B.errorCode,x=s(m,B.span.start,B,_);if(x){var O=x.node,k=x.suggestedSymbol,P=A.getEmitScriptTarget(B.host.getCompilationSettings()),H=A.textChanges.ChangeTracker.with(B,function(T){return g(T,m,O,k,P)});return[t.createCodeFixAction("spelling",H,[A.Diagnostics.Change_spelling_to_0,A.symbolName(k)],i,A.Diagnostics.Fix_all_detected_spelling_errors)]}},fixIds:[i],getAllCodeActions:function(B){return t.codeFixAll(B,o,function(m,_){var x=s(_.file,_.start,B,_.code),O=A.getEmitScriptTarget(B.host.getCompilationSettings());x&&g(m,B.sourceFile,x.node,x.suggestedSymbol,O)})}});function s(B,m,_,x){var O=A.getTokenAtPosition(B,m),k=O.parent;if(!((x===A.Diagnostics.No_overload_matches_this_call.code||x===A.Diagnostics.Type_0_is_not_assignable_to_type_1.code)&&!A.isJsxAttribute(k))){var P=_.program.getTypeChecker(),H;if(A.isPropertyAccessExpression(k)&&k.name===O){A.Debug.assert(A.isMemberName(O),"Expected an identifier for spelling (property access)");var T=P.getTypeAtLocation(k.expression);k.flags&32&&(T=P.getNonNullableType(T)),H=P.getSuggestedSymbolForNonexistentProperty(O,T)}else if(A.isBinaryExpression(k)&&k.operatorToken.kind===101&&k.left===O&&A.isPrivateIdentifier(O)){var v=P.getTypeAtLocation(k.right);H=P.getSuggestedSymbolForNonexistentProperty(O,v)}else if(A.isQualifiedName(k)&&k.right===O){var F=P.getSymbolAtLocation(k.left);F&&F.flags&1536&&(H=P.getSuggestedSymbolForNonexistentModule(k.right,F))}else if(A.isImportSpecifier(k)&&k.name===O){A.Debug.assertNode(O,A.isIdentifier,"Expected an identifier for spelling (import)");var y=A.findAncestor(O,A.isImportDeclaration),S=p(B,_,y);S&&S.symbol&&(H=P.getSuggestedSymbolForNonexistentModule(O,S.symbol))}else if(A.isJsxAttribute(k)&&k.name===O){A.Debug.assertNode(O,A.isIdentifier,"Expected an identifier for JSX attribute");var U=A.findAncestor(O,A.isJsxOpeningLikeElement),V=P.getContextualTypeForArgumentAtIndex(U,0);H=P.getSuggestedSymbolForNonexistentJSXAttribute(O,V)}else if(A.hasSyntacticModifier(k,16384)&&A.isClassElement(k)&&k.name===O){var wA=A.findAncestor(O,A.isClassLike),IA=wA?A.getEffectiveBaseTypeNode(wA):void 0,pA=IA?P.getTypeAtLocation(IA):void 0;pA&&(H=P.getSuggestedSymbolForNonexistentClassMember(A.getTextOfNode(O),pA))}else{var oA=A.getMeaningFromLocation(O),cA=A.getTextOfNode(O);A.Debug.assert(cA!==void 0,"name should be defined"),H=P.getSuggestedSymbolForNonexistentSymbol(O,cA,E(oA))}return H===void 0?void 0:{node:O,suggestedSymbol:H}}}function g(B,m,_,x,O){var k=A.symbolName(x);if(!A.isIdentifierText(k,O)&&A.isPropertyAccessExpression(_.parent)){var P=x.valueDeclaration;P&&A.isNamedDeclaration(P)&&A.isPrivateIdentifier(P.name)?B.replaceNode(m,_,A.factory.createIdentifier(k)):B.replaceNode(m,_.parent,A.factory.createElementAccessExpression(_.parent.expression,A.factory.createStringLiteral(k)))}else B.replaceNode(m,_,A.factory.createIdentifier(k))}function E(B){var m=0;return B&4&&(m|=1920),B&2&&(m|=788968),B&1&&(m|=111551),m}function p(B,m,_){if(!(!_||!A.isStringLiteralLike(_.moduleSpecifier))){var x=A.getResolvedModule(B,_.moduleSpecifier.text,A.getModeForUsageLocation(B,_.moduleSpecifier));if(x)return m.program.getSourceFile(x.resolvedFileName)}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="returnValueCorrect",o="fixAddReturnStatement",s="fixRemoveBracesFromArrowFunctionBody",g="fixWrapTheBlockWithParen",E=[A.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value.code,A.Diagnostics.Type_0_is_not_assignable_to_type_1.code,A.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code],p;(function(y){y[y.MissingReturnStatement=0]="MissingReturnStatement",y[y.MissingParentheses=1]="MissingParentheses"})(p||(p={})),t.registerCodeFix({errorCodes:E,fixIds:[o,s,g],getCodeActions:function(S){var U=S.program,V=S.sourceFile,wA=S.span.start,IA=S.errorCode,pA=x(U.getTypeChecker(),V,wA,IA);if(pA)return pA.kind===p.MissingReturnStatement?A.append([T(S,pA.expression,pA.statement)],A.isArrowFunction(pA.declaration)?v(S,pA.declaration,pA.expression,pA.commentSource):void 0):[F(S,pA.declaration,pA.expression)]},getAllCodeActions:function(y){return t.codeFixAll(y,E,function(S,U){var V=x(y.program.getTypeChecker(),U.file,U.start,U.code);if(V)switch(y.fixId){case o:k(S,U.file,V.expression,V.statement);break;case s:if(!A.isArrowFunction(V.declaration))return;P(S,U.file,V.declaration,V.expression,V.commentSource,!1);break;case g:if(!A.isArrowFunction(V.declaration))return;H(S,U.file,V.declaration,V.expression);break;default:A.Debug.fail(JSON.stringify(y.fixId))}})}});function B(y,S,U){var V=y.createSymbol(4,S.escapedText);V.type=y.getTypeAtLocation(U);var wA=A.createSymbolTable([V]);return y.createAnonymousType(void 0,wA,[],[],[])}function m(y,S,U,V){if(!(!S.body||!A.isBlock(S.body)||A.length(S.body.statements)!==1)){var wA=A.first(S.body.statements);if(A.isExpressionStatement(wA)&&_(y,S,y.getTypeAtLocation(wA.expression),U,V))return{declaration:S,kind:p.MissingReturnStatement,expression:wA.expression,statement:wA,commentSource:wA.expression};if(A.isLabeledStatement(wA)&&A.isExpressionStatement(wA.statement)){var IA=A.factory.createObjectLiteralExpression([A.factory.createPropertyAssignment(wA.label,wA.statement.expression)]),pA=B(y,wA.label,wA.statement.expression);if(_(y,S,pA,U,V))return A.isArrowFunction(S)?{declaration:S,kind:p.MissingParentheses,expression:IA,statement:wA,commentSource:wA.statement.expression}:{declaration:S,kind:p.MissingReturnStatement,expression:IA,statement:wA,commentSource:wA.statement.expression}}else if(A.isBlock(wA)&&A.length(wA.statements)===1){var oA=A.first(wA.statements);if(A.isLabeledStatement(oA)&&A.isExpressionStatement(oA.statement)){var IA=A.factory.createObjectLiteralExpression([A.factory.createPropertyAssignment(oA.label,oA.statement.expression)]),pA=B(y,oA.label,oA.statement.expression);if(_(y,S,pA,U,V))return{declaration:S,kind:p.MissingReturnStatement,expression:IA,statement:wA,commentSource:oA}}}}}function _(y,S,U,V,wA){if(wA){var IA=y.getSignatureFromDeclaration(S);if(IA){A.hasSyntacticModifier(S,512)&&(U=y.createPromiseType(U));var pA=y.createSignature(S,IA.typeParameters,IA.thisParameter,IA.parameters,U,void 0,IA.minArgumentCount,IA.flags);U=y.createAnonymousType(void 0,A.createSymbolTable(),[pA],[],[])}else U=y.getAnyType()}return y.isTypeAssignableTo(U,V)}function x(y,S,U,V){var wA=A.getTokenAtPosition(S,U);if(wA.parent){var IA=A.findAncestor(wA.parent,A.isFunctionLikeDeclaration);switch(V){case A.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value.code:return!IA||!IA.body||!IA.type||!A.rangeContainsRange(IA.type,wA)?void 0:m(y,IA,y.getTypeFromTypeNode(IA.type),!1);case A.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!IA||!A.isCallExpression(IA.parent)||!IA.body)return;var pA=IA.parent.arguments.indexOf(IA),oA=y.getContextualTypeForArgumentAtIndex(IA.parent,pA);return oA?m(y,IA,oA,!0):void 0;case A.Diagnostics.Type_0_is_not_assignable_to_type_1.code:if(!A.isDeclarationName(wA)||!A.isVariableLike(wA.parent)&&!A.isJsxAttribute(wA.parent))return;var cA=O(wA.parent);return!cA||!A.isFunctionLikeDeclaration(cA)||!cA.body?void 0:m(y,cA,y.getTypeAtLocation(wA.parent),!0)}}}function O(y){switch(y.kind){case 257:case 166:case 205:case 169:case 299:return y.initializer;case 288:return y.initializer&&(A.isJsxExpression(y.initializer)?y.initializer.expression:void 0);case 300:case 168:case 302:case 350:case 343:return}}function k(y,S,U,V){A.suppressLeadingAndTrailingTrivia(U);var wA=A.probablyUsesSemicolons(S);y.replaceNode(S,V,A.factory.createReturnStatement(U),{leadingTriviaOption:A.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:A.textChanges.TrailingTriviaOption.Exclude,suffix:wA?";":void 0})}function P(y,S,U,V,wA,IA){var pA=IA||A.needsParentheses(V)?A.factory.createParenthesizedExpression(V):V;A.suppressLeadingAndTrailingTrivia(wA),A.copyComments(wA,pA),y.replaceNode(S,U.body,pA)}function H(y,S,U,V){y.replaceNode(S,U.body,A.factory.createParenthesizedExpression(V))}function T(y,S,U){var V=A.textChanges.ChangeTracker.with(y,function(wA){return k(wA,y.sourceFile,S,U)});return t.createCodeFixAction(i,V,A.Diagnostics.Add_a_return_statement,o,A.Diagnostics.Add_all_missing_return_statement)}function v(y,S,U,V){var wA=A.textChanges.ChangeTracker.with(y,function(IA){return P(IA,y.sourceFile,S,U,V,!1)});return t.createCodeFixAction(i,wA,A.Diagnostics.Remove_braces_from_arrow_function_body,s,A.Diagnostics.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}function F(y,S,U){var V=A.textChanges.ChangeTracker.with(y,function(wA){return H(wA,y.sourceFile,S,U)});return t.createCodeFixAction(i,V,A.Diagnostics.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,g,A.Diagnostics.Wrap_all_object_literal_with_parentheses)}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="fixMissingMember",o="fixMissingProperties",s="fixMissingAttributes",g="fixMissingFunctionDeclaration",E=[A.Diagnostics.Property_0_does_not_exist_on_type_1.code,A.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,A.Diagnostics.Property_0_is_missing_in_type_1_but_required_in_type_2.code,A.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,A.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,A.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,A.Diagnostics.Cannot_find_name_0.code],p;(function(X){X[X.TypeLikeDeclaration=0]="TypeLikeDeclaration",X[X.Enum=1]="Enum",X[X.Function=2]="Function",X[X.ObjectLiteral=3]="ObjectLiteral",X[X.JsxAttributes=4]="JsxAttributes",X[X.Signature=5]="Signature"})(p||(p={})),t.registerCodeFix({errorCodes:E,getCodeActions:function(X){var Z=X.program.getTypeChecker(),K=B(X.sourceFile,X.span.start,X.errorCode,Z,X.program);if(K){if(K.kind===p.ObjectLiteral){var J=A.textChanges.ChangeTracker.with(X,function(sA){return wA(sA,X,K)});return[t.createCodeFixAction(o,J,A.Diagnostics.Add_missing_properties,o,A.Diagnostics.Add_all_missing_properties)]}if(K.kind===p.JsxAttributes){var J=A.textChanges.ChangeTracker.with(X,function(uA){return V(uA,X,K)});return[t.createCodeFixAction(s,J,A.Diagnostics.Add_missing_attributes,s,A.Diagnostics.Add_all_missing_attributes)]}if(K.kind===p.Function||K.kind===p.Signature){var J=A.textChanges.ChangeTracker.with(X,function(uA){return U(uA,X,K)});return[t.createCodeFixAction(g,J,[A.Diagnostics.Add_missing_function_declaration_0,K.token.text],g,A.Diagnostics.Add_all_missing_function_declarations)]}if(K.kind===p.Enum){var J=A.textChanges.ChangeTracker.with(X,function(uA){return S(uA,X.program.getTypeChecker(),K)});return[t.createCodeFixAction(i,J,[A.Diagnostics.Add_missing_enum_member_0,K.token.text],i,A.Diagnostics.Add_all_missing_members)]}return A.concatenate(F(X,K),m(X,K))}},fixIds:[i,g,o,s],getAllCodeActions:function(X){var Z=X.program,K=X.fixId,J=Z.getTypeChecker(),sA=new A.Map,uA=new A.Map;return t.createCombinedCodeActions(A.textChanges.ChangeTracker.with(X,function(BA){t.eachDiagnostic(X,E,function(CA){var z=B(CA.file,CA.start,CA.code,J,X.program);if(!(!z||!A.addToSeen(sA,A.getNodeId(z.parentDeclaration)+"#"+z.token.text))){if(K===g&&(z.kind===p.Function||z.kind===p.Signature))U(BA,X,z);else if(K===o&&z.kind===p.ObjectLiteral)wA(BA,X,z);else if(K===s&&z.kind===p.JsxAttributes)V(BA,X,z);else if(z.kind===p.Enum&&S(BA,J,z),z.kind===p.TypeLikeDeclaration){var AA=z.parentDeclaration,iA=z.token,_A=A.getOrUpdate(uA,AA,function(){return[]});_A.some(function(fA){return fA.token.text===iA.text})||_A.push(z)}}}),uA.forEach(function(CA,z){for(var AA=A.isTypeLiteralNode(z)?void 0:t.getAllSupers(z,J),iA=function(aA){if(AA?.some(function(KA){var $A=uA.get(KA);return!!$A&&$A.some(function(jA){var ue=jA.token;return ue.text===aA.token.text})}))return"continue";var gA=aA.parentDeclaration,QA=aA.declSourceFile,mA=aA.modifierFlags,FA=aA.token,SA=aA.call,ce=aA.isJSFile;if(SA&&!A.isPrivateIdentifier(FA))y(X,BA,SA,FA,mA&32,gA,QA);else if(ce&&!A.isInterfaceDeclaration(gA)&&!A.isTypeLiteralNode(gA))x(BA,QA,gA,FA,!!(mA&32));else{var re=P(J,gA,FA);H(BA,QA,gA,FA.text,re,mA&32)}},_A=0,fA=CA;_A=A.ModuleKind.ES2015&&p99;if(x){var m=A.textChanges.ChangeTracker.with(o,function(k){var P=A.getTsConfigObjectLiteralExpression(g);if(P){var H=[["target",A.factory.createStringLiteral("es2017")]];p===A.ModuleKind.CommonJS&&H.push(["module",A.factory.createStringLiteral("commonjs")]),t.setJsonCompilerOptionValues(k,g,H)}});E.push(t.createCodeFixActionWithoutFixAll("fixTargetOption",m,[A.Diagnostics.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return E.length?E:void 0}}})})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="fixPropertyAssignment",o=[A.Diagnostics.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code];t.registerCodeFix({errorCodes:o,fixIds:[i],getCodeActions:function(E){var p=E.sourceFile,B=E.span,m=g(p,B.start),_=A.textChanges.ChangeTracker.with(E,function(x){return s(x,E.sourceFile,m)});return[t.createCodeFixAction(i,_,[A.Diagnostics.Change_0_to_1,"=",":"],i,[A.Diagnostics.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:function(E){return t.codeFixAll(E,o,function(p,B){return s(p,B.file,g(B.file,B.start))})}});function s(E,p,B){E.replaceNode(p,B,A.factory.createPropertyAssignment(B.name,B.objectAssignmentInitializer))}function g(E,p){return A.cast(A.getTokenAtPosition(E,p).parent,A.isShorthandPropertyAssignment)}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="extendsInterfaceBecomesImplements",o=[A.Diagnostics.Cannot_extend_an_interface_0_Did_you_mean_implements.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(E){var p=E.sourceFile,B=s(p,E.span.start);if(B){var m=B.extendsToken,_=B.heritageClauses,x=A.textChanges.ChangeTracker.with(E,function(O){return g(O,p,m,_)});return[t.createCodeFixAction(i,x,A.Diagnostics.Change_extends_to_implements,i,A.Diagnostics.Change_all_extended_interfaces_to_implements)]}},fixIds:[i],getAllCodeActions:function(E){return t.codeFixAll(E,o,function(p,B){var m=s(B.file,B.start);m&&g(p,B.file,m.extendsToken,m.heritageClauses)})}});function s(E,p){var B=A.getTokenAtPosition(E,p),m=A.getContainingClass(B).heritageClauses,_=m[0].getFirstToken();return _.kind===94?{extendsToken:_,heritageClauses:m}:void 0}function g(E,p,B,m){if(E.replaceNode(p,B,A.factory.createToken(117)),m.length===2&&m[0].token===94&&m[1].token===117){var _=m[1].getFirstToken(),x=_.getFullStart();E.replaceRange(p,{pos:x,end:x},A.factory.createToken(27));for(var O=p.text,k=_.end;k":">","}":"}"};function E(B){return A.hasProperty(g,B)}function p(B,m,_,x,O){var k=_.getText()[x];if(E(k)){var P=O?g[k]:"{".concat(A.quote(_,m,k),"}");B.replaceRangeWithText(_,{pos:x,end:x+1},P)}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="deleteUnmatchedParameter",o="renameUnmatchedParameter",s=[A.Diagnostics.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code];t.registerCodeFix({fixIds:[i,o],errorCodes:s,getCodeActions:function(m){var _=m.sourceFile,x=m.span,O=[],k=p(_,x.start);if(k)return A.append(O,g(m,k)),A.append(O,E(m,k)),O},getAllCodeActions:function(m){var _=new A.Map;return t.createCombinedCodeActions(A.textChanges.ChangeTracker.with(m,function(x){t.eachDiagnostic(m,s,function(O){var k=O.file,P=O.start,H=p(k,P);H&&_.set(H.signature,A.append(_.get(H.signature),H.jsDocParameterTag))}),_.forEach(function(O,k){if(m.fixId===i){var P=new A.Set(O);x.filterJSDocTags(k.getSourceFile(),k,function(H){return!P.has(H)})}})}))}});function g(B,m){var _=m.name,x=m.signature,O=m.jsDocParameterTag,k=A.textChanges.ChangeTracker.with(B,function(P){return P.filterJSDocTags(B.sourceFile,x,function(H){return H!==O})});return t.createCodeFixAction(i,k,[A.Diagnostics.Delete_unused_param_tag_0,_.getText(B.sourceFile)],i,A.Diagnostics.Delete_all_unused_param_tags)}function E(B,m){var _=m.name,x=m.signature,O=m.jsDocParameterTag;if(A.length(x.parameters)){for(var k=B.sourceFile,P=A.getJSDocTags(x),H=new A.Set,T=0,v=P;T1?A.Diagnostics.Remove_unused_declarations_for_Colon_0:A.Diagnostics.Remove_unused_declaration_for_Colon_0,A.map(BA,function(_A){return _A.getText(eA)}).join(", ")];return[m(A.textChanges.ChangeTracker.with(oA,function(_A){return H(_A,eA,K.parent)}),CA)]}return[m(A.textChanges.ChangeTracker.with(oA,function(_A){return _A.delete(eA,K.parent.parent)}),A.Diagnostics.Remove_unused_destructuring_declaration)]}if(k(eA,K))return[m(A.textChanges.ChangeTracker.with(oA,function(_A){return P(_A,eA,K.parent)}),A.Diagnostics.Remove_variable_statement)];var z=[];if(K.kind===138){var J=A.textChanges.ChangeTracker.with(oA,function(fA){return B(fA,eA,K)}),AA=A.cast(K.parent,A.isInferTypeNode).typeParameter.name.text;z.push(t.createCodeFixAction(i,J,[A.Diagnostics.Replace_infer_0_with_unknown,AA],E,A.Diagnostics.Replace_all_unused_infer_with_unknown))}else{var uA=A.textChanges.ChangeTracker.with(oA,function(fA){return F(eA,K,fA,X,Z,Y,q,!1)});if(uA.length){var AA=A.isComputedPropertyName(K.parent)?K.parent:K;z.push(m(uA,[A.Diagnostics.Remove_unused_declaration_for_Colon_0,AA.getText(eA)]))}}var iA=A.textChanges.ChangeTracker.with(oA,function(_A){return T(_A,cA,eA,K)});return iA.length&&z.push(t.createCodeFixAction(i,iA,[A.Diagnostics.Prefix_0_with_an_underscore,K.getText(eA)],o,A.Diagnostics.Prefix_all_unused_declarations_with_where_possible)),z},fixIds:[o,s,g,E],getAllCodeActions:function(oA){var cA=oA.sourceFile,eA=oA.program,Y=oA.cancellationToken,q=eA.getTypeChecker(),X=eA.getSourceFiles();return t.codeFixAll(oA,p,function(Z,K){var J=A.getTokenAtPosition(cA,K.start);switch(oA.fixId){case o:T(Z,K.code,cA,J);break;case g:{var sA=O(J);sA?Z.delete(cA,sA):x(J)&&F(cA,J,Z,q,X,eA,Y,!0);break}case s:{if(J.kind===138||x(J))break;if(A.isJSDocTemplateTag(J))Z.delete(cA,J);else if(J.kind===29)_(Z,cA,J);else if(A.isObjectBindingPattern(J.parent)){if(J.parent.parent.initializer)break;(!A.isParameter(J.parent.parent)||U(J.parent.parent,q,X))&&Z.delete(cA,J.parent.parent)}else{if(A.isArrayBindingPattern(J.parent.parent)&&J.parent.parent.parent.initializer)break;k(cA,J)?P(Z,cA,J.parent):F(cA,J,Z,q,X,eA,Y,!0)}break}case E:J.kind===138&&B(Z,cA,J);break;default:A.Debug.fail(JSON.stringify(oA.fixId))}})}});function B(oA,cA,eA){oA.replaceNode(cA,eA.parent,A.factory.createKeywordTypeNode(157))}function m(oA,cA){return t.createCodeFixAction(i,oA,cA,s,A.Diagnostics.Delete_all_unused_declarations)}function _(oA,cA,eA){oA.delete(cA,A.Debug.checkDefined(A.cast(eA.parent,A.isDeclarationWithTypeParameterChildren).typeParameters,"The type parameter to delete should exist"))}function x(oA){return oA.kind===100||oA.kind===79&&(oA.parent.kind===273||oA.parent.kind===270)}function O(oA){return oA.kind===100?A.tryCast(oA.parent,A.isImportDeclaration):void 0}function k(oA,cA){return A.isVariableDeclarationList(cA.parent)&&A.first(cA.parent.getChildren(oA))===cA}function P(oA,cA,eA){oA.delete(cA,eA.parent.kind===240?eA.parent:eA)}function H(oA,cA,eA){A.forEach(eA.elements,function(Y){return oA.delete(cA,Y)})}function T(oA,cA,eA,Y){cA!==A.Diagnostics.Property_0_is_declared_but_its_value_is_never_read.code&&(Y.kind===138&&(Y=A.cast(Y.parent,A.isInferTypeNode).typeParameter.name),A.isIdentifier(Y)&&v(Y)&&(oA.replaceNode(eA,Y,A.factory.createIdentifier("_".concat(Y.text))),A.isParameter(Y.parent)&&A.getJSDocParameterTags(Y.parent).forEach(function(q){A.isIdentifier(q.name)&&oA.replaceNode(eA,q.name,A.factory.createIdentifier("_".concat(q.name.text)))})))}function v(oA){switch(oA.parent.kind){case 166:case 165:return!0;case 257:{var cA=oA.parent;switch(cA.parent.parent.kind){case 247:case 246:return!0}}}return!1}function F(oA,cA,eA,Y,q,X,Z,K){y(cA,eA,oA,Y,q,X,Z,K),A.isIdentifier(cA)&&A.FindAllReferences.Core.eachSymbolReferenceInFile(cA,Y,oA,function(J){A.isPropertyAccessExpression(J.parent)&&J.parent.name===J&&(J=J.parent),!K&&pA(J)&&eA.delete(oA,J.parent.parent)})}function y(oA,cA,eA,Y,q,X,Z,K){var J=oA.parent;if(A.isParameter(J))S(cA,eA,J,Y,q,X,Z,K);else if(!(K&&A.isIdentifier(oA)&&A.FindAllReferences.Core.isSymbolReferencedInFile(oA,Y,eA))){var sA=A.isImportClause(J)?oA:A.isComputedPropertyName(J)?J.parent:J;A.Debug.assert(sA!==eA,"should not delete whole source file"),cA.delete(eA,sA)}}function S(oA,cA,eA,Y,q,X,Z,K){if(K===void 0&&(K=!1),V(Y,cA,eA,q,X,Z,K))if(eA.modifiers&&eA.modifiers.length>0&&(!A.isIdentifier(eA.name)||A.FindAllReferences.Core.isSymbolReferencedInFile(eA.name,Y,cA)))for(var J=0,sA=eA.modifiers;JY})}function V(oA,cA,eA,Y,q,X,Z){var K=eA.parent;switch(K.kind){case 171:case 173:var J=K.parameters.indexOf(eA),sA=A.isMethodDeclaration(K)?K.name:K,uA=A.FindAllReferences.Core.getReferencedSymbolsForNode(K.pos,sA,q,Y,X);if(uA)for(var BA=0,CA=uA;BAJ,M=A.isPropertyAccessExpression(_A.node.parent)&&A.isSuperKeyword(_A.node.parent.expression)&&A.isCallExpression(_A.node.parent.parent)&&_A.node.parent.parent.arguments.length>J,aA=(A.isMethodDeclaration(_A.node.parent)||A.isMethodSignature(_A.node.parent))&&_A.node.parent!==eA.parent&&_A.node.parent.parameters.length>J;if(fA||M||aA)return!1}}return!0;case 259:return K.name&&wA(oA,cA,K.name)?IA(K,eA,Z):!0;case 215:case 216:return IA(K,eA,Z);case 175:return!1;case 174:return!0;default:return A.Debug.failBadSyntaxKind(K)}}function wA(oA,cA,eA){return!!A.FindAllReferences.Core.eachSymbolReferenceInFile(eA,oA,cA,function(Y){return A.isIdentifier(Y)&&A.isCallExpression(Y.parent)&&Y.parent.arguments.indexOf(Y)>=0})}function IA(oA,cA,eA){var Y=oA.parameters,q=Y.indexOf(cA);return A.Debug.assert(q!==-1,"The parameter should already be in the list"),eA?Y.slice(q+1).every(function(X){return A.isIdentifier(X.name)&&!X.symbol.isReferenced}):q===Y.length-1}function pA(oA){return(A.isBinaryExpression(oA.parent)&&oA.parent.left===oA||(A.isPostfixUnaryExpression(oA.parent)||A.isPrefixUnaryExpression(oA.parent))&&oA.parent.operand===oA)&&A.isExpressionStatement(oA.parent.parent)}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="fixUnreachableCode",o=[A.Diagnostics.Unreachable_code_detected.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(E){var p=E.program.getSyntacticDiagnostics(E.sourceFile,E.cancellationToken);if(!p.length){var B=A.textChanges.ChangeTracker.with(E,function(m){return s(m,E.sourceFile,E.span.start,E.span.length,E.errorCode)});return[t.createCodeFixAction(i,B,A.Diagnostics.Remove_unreachable_code,i,A.Diagnostics.Remove_all_unreachable_code)]}},fixIds:[i],getAllCodeActions:function(E){return t.codeFixAll(E,o,function(p,B){return s(p,B.file,B.start,B.length,B.code)})}});function s(E,p,B,m,_){var x=A.getTokenAtPosition(p,B),O=A.findAncestor(x,A.isStatement);if(O.getStart(p)!==x.getStart(p)){var k=JSON.stringify({statementKind:A.Debug.formatSyntaxKind(O.kind),tokenKind:A.Debug.formatSyntaxKind(x.kind),errorCode:_,start:B,length:m});A.Debug.fail("Token and statement should start at the same point. "+k)}var P=(A.isBlock(O.parent)?O.parent:O).parent;if(!A.isBlock(O.parent)||O===A.first(O.parent.statements))switch(P.kind){case 242:if(P.elseStatement){if(A.isBlock(O.parent))break;E.replaceNode(p,O,A.factory.createBlock(A.emptyArray));return}case 244:case 245:E.delete(p,P);return}if(A.isBlock(O.parent)){var H=B+m,T=A.Debug.checkDefined(g(A.sliceAfter(O.parent.statements,O),function(v){return v.posbA.length){var TA=_A.getSignatureFromDeclaration(AA[AA.length-1]);_e(re,TA,mA,Ae(aA),Q(uA,re))}else A.Debug.assert(AA.length===bA.length,"Declarations and signatures should match count"),sA(T(_A,Z,q,bA,Ae(aA),SA&&!!(BA&1),mA,re,uA));break}function _e(Cr,be,Me,Le,ir){var Ye=E(171,Z,Cr,be,ir,Le,Me,SA&&!!(BA&1),q,J);Ye&&sA(Ye)}function Ae(Cr){return A.getSynthesizedDeepClone(Cr,!1)}function Q(Cr,be,Me){return Me?void 0:A.getSynthesizedDeepClone(Cr,!1)||y(be)}function Ze(Cr){return A.getSynthesizedDeepClone(Cr,!1)}}t.addNewNodeForMemberSymbol=g;function E(Y,q,X,Z,K,J,sA,uA,BA,CA){var z=q.program,AA=z.getTypeChecker(),iA=A.getEmitScriptTarget(z.getCompilerOptions()),_A=524545|(X===0?268435456:0),fA=AA.signatureToSignatureDeclaration(Z,Y,BA,_A,o(q));if(fA){var M=fA.typeParameters,aA=fA.parameters,gA=fA.type;if(CA){if(M){var QA=A.sameMap(M,function(re){var KA=re.constraint,$A=re.default;if(KA){var jA=pA(KA,iA);jA&&(KA=jA.typeNode,cA(CA,jA.symbols))}if($A){var jA=pA($A,iA);jA&&($A=jA.typeNode,cA(CA,jA.symbols))}return A.factory.updateTypeParameterDeclaration(re,re.modifiers,re.name,KA,$A)});M!==QA&&(M=A.setTextRange(A.factory.createNodeArray(QA,M.hasTrailingComma),M))}var mA=A.sameMap(aA,function(re){var KA=pA(re.type,iA),$A=re.type;return KA&&($A=KA.typeNode,cA(CA,KA.symbols)),A.factory.updateParameterDeclaration(re,re.modifiers,re.dotDotDotToken,re.name,re.questionToken,$A,re.initializer)});if(aA!==mA&&(aA=A.setTextRange(A.factory.createNodeArray(mA,aA.hasTrailingComma),aA)),gA){var FA=pA(gA,iA);FA&&(gA=FA.typeNode,cA(CA,FA.symbols))}}var SA=uA?A.factory.createToken(57):void 0,ce=fA.asteriskToken;if(A.isFunctionExpression(fA))return A.factory.updateFunctionExpression(fA,sA,fA.asteriskToken,A.tryCast(J,A.isIdentifier),M,aA,gA,K??fA.body);if(A.isArrowFunction(fA))return A.factory.updateArrowFunction(fA,sA,M,aA,gA,fA.equalsGreaterThanToken,K??fA.body);if(A.isMethodDeclaration(fA))return A.factory.updateMethodDeclaration(fA,sA,ce,J??A.factory.createIdentifier(""),SA,M,aA,gA,K);if(A.isFunctionDeclaration(fA))return A.factory.updateFunctionDeclaration(fA,sA,fA.asteriskToken,A.tryCast(J,A.isIdentifier),M,aA,gA,K??fA.body)}}t.createSignatureDeclarationFromSignature=E;function p(Y,q,X,Z,K,J,sA){var uA=A.getQuotePreference(q.sourceFile,q.preferences),BA=A.getEmitScriptTarget(q.program.getCompilerOptions()),CA=o(q),z=q.program.getTypeChecker(),AA=A.isInJSFile(sA),iA=Z.typeArguments,_A=Z.arguments,fA=Z.parent,M=AA?void 0:z.getContextualType(Z),aA=A.map(_A,function(jA){return A.isIdentifier(jA)?jA.text:A.isPropertyAccessExpression(jA)&&A.isIdentifier(jA.name)?jA.name.text:void 0}),gA=AA?[]:A.map(_A,function(jA){return z.getTypeAtLocation(jA)}),QA=O(z,X,gA,sA,BA,void 0,CA),mA=QA.argumentTypeNodes,FA=QA.argumentTypeParameters,SA=J?A.factory.createNodeArray(A.factory.createModifiersFromModifierFlags(J)):void 0,ce=A.isYieldExpression(fA)?A.factory.createToken(41):void 0,re=AA?void 0:B(z,FA,iA),KA=H(_A.length,aA,mA,void 0,AA),$A=AA||M===void 0?void 0:z.typeToTypeNode(M,sA,void 0,CA);switch(Y){case 171:return A.factory.createMethodDeclaration(SA,ce,K,void 0,re,KA,$A,y(uA));case 170:return A.factory.createMethodSignature(SA,K,void 0,re,KA,$A===void 0?A.factory.createKeywordTypeNode(157):$A);case 259:return A.factory.createFunctionDeclaration(SA,ce,K,re,KA,$A,S(A.Diagnostics.Function_not_implemented.message,uA));default:A.Debug.fail("Unexpected kind")}}t.createSignatureDeclarationFromCallExpression=p;function B(Y,q,X){var Z=new A.Set(q.map(function(BA){return BA[0]})),K=new A.Map(q);if(X)for(var J=X.filter(function(BA){return!q.some(function(CA){var z;return Y.getTypeAtLocation(BA)===((z=CA[1])===null||z===void 0?void 0:z.argumentType)})}),sA=Z.size+J.length,uA=0;Z.size=Z?A.factory.createToken(57):void 0,K?void 0:X?.[uA]||A.factory.createKeywordTypeNode(157),void 0);J.push(z)}return J}function T(Y,q,X,Z,K,J,sA,uA,BA){for(var CA=Z[0],z=Z[0].minArgumentCount,AA=!1,iA=0,_A=Z;iA<_A.length;iA++){var fA=_A[iA];z=Math.min(fA.minArgumentCount,z),A.signatureHasRestParameter(fA)&&(AA=!0),fA.parameters.length>=CA.parameters.length&&(!A.signatureHasRestParameter(fA)||A.signatureHasRestParameter(CA))&&(CA=fA)}var M=CA.parameters.length-(A.signatureHasRestParameter(CA)?1:0),aA=CA.parameters.map(function(mA){return mA.name}),gA=H(M,aA,void 0,z,!1);if(AA){var QA=A.factory.createParameterDeclaration(void 0,A.factory.createToken(25),aA[M]||"rest",M>=z?A.factory.createToken(57):void 0,A.factory.createArrayTypeNode(A.factory.createKeywordTypeNode(157)),void 0);gA.push(QA)}return F(sA,K,J,void 0,gA,v(Z,Y,q,X),uA,BA)}function v(Y,q,X,Z){if(A.length(Y)){var K=q.getUnionType(A.map(Y,q.getReturnTypeOfSignature));return q.typeToTypeNode(K,Z,void 0,o(X))}}function F(Y,q,X,Z,K,J,sA,uA){return A.factory.createMethodDeclaration(Y,void 0,q,X?A.factory.createToken(57):void 0,Z,K,J,uA||y(sA))}function y(Y){return S(A.Diagnostics.Method_not_implemented.message,Y)}function S(Y,q){return A.factory.createBlock([A.factory.createThrowStatement(A.factory.createNewExpression(A.factory.createIdentifier("Error"),void 0,[A.factory.createStringLiteral(Y,q===0)]))],!0)}t.createStubbedBody=S;function U(Y,q,X){var Z=A.getTsConfigObjectLiteralExpression(q);if(Z){var K=IA(Z,"compilerOptions");if(K===void 0){Y.insertNodeAtObjectStart(q,Z,wA("compilerOptions",A.factory.createObjectLiteralExpression(X.map(function(iA){var _A=iA[0],fA=iA[1];return wA(_A,fA)}),!0)));return}var J=K.initializer;if(A.isObjectLiteralExpression(J))for(var sA=0,uA=X;sA0)return[t.createCodeFixAction(i,p,A.Diagnostics.Convert_to_a_bigint_numeric_literal,i,A.Diagnostics.Convert_all_to_bigint_numeric_literals)]},fixIds:[i],getAllCodeActions:function(g){return t.codeFixAll(g,o,function(E,p){return s(E,p.file,p)})}});function s(g,E,p){var B=A.tryCast(A.getTokenAtPosition(E,p.start),A.isNumericLiteral);if(B){var m=B.getText(E)+"n";g.replaceNode(E,B,A.factory.createBigIntLiteral(m))}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="fixAddModuleReferTypeMissingTypeof",o=i,s=[A.Diagnostics.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];t.registerCodeFix({errorCodes:s,getCodeActions:function(B){var m=B.sourceFile,_=B.span,x=g(m,_.start),O=A.textChanges.ChangeTracker.with(B,function(k){return E(k,m,x)});return[t.createCodeFixAction(o,O,A.Diagnostics.Add_missing_typeof,o,A.Diagnostics.Add_missing_typeof)]},fixIds:[o],getAllCodeActions:function(p){return t.codeFixAll(p,s,function(B,m){return E(B,p.sourceFile,g(m.file,m.start))})}});function g(p,B){var m=A.getTokenAtPosition(p,B);return A.Debug.assert(m.kind===100,"This token should be an ImportKeyword"),A.Debug.assert(m.parent.kind===202,"Token parent should be an ImportType"),m.parent}function E(p,B,m){var _=A.factory.updateImportTypeNode(m,m.argument,m.assertions,m.qualifier,m.typeArguments,!0);p.replaceNode(B,m,_)}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="wrapJsxInFragment",o=[A.Diagnostics.JSX_expressions_must_have_one_parent_element.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(B){var m=B.sourceFile,_=B.span,x=s(m,_.start);if(x){var O=A.textChanges.ChangeTracker.with(B,function(k){return g(k,m,x)});return[t.createCodeFixAction(i,O,A.Diagnostics.Wrap_in_JSX_fragment,i,A.Diagnostics.Wrap_all_unparented_JSX_in_JSX_fragment)]}},fixIds:[i],getAllCodeActions:function(p){return t.codeFixAll(p,o,function(B,m){var _=s(p.sourceFile,m.start);_&&g(B,p.sourceFile,_)})}});function s(p,B){var m=A.getTokenAtPosition(p,B),_=m.parent,x=_.parent;if(!(!A.isBinaryExpression(x)&&(x=x.parent,!A.isBinaryExpression(x)))&&A.nodeIsMissing(x.operatorToken))return x}function g(p,B,m){var _=E(m);_&&p.replaceNode(B,m,A.factory.createJsxFragment(A.factory.createJsxOpeningFragment(),_,A.factory.createJsxJsxClosingFragment()))}function E(p){for(var B=[],m=p;;)if(A.isBinaryExpression(m)&&A.nodeIsMissing(m.operatorToken)&&m.operatorToken.kind===27){if(B.push(m.left),A.isJsxChild(m.right))return B.push(m.right),B;if(A.isBinaryExpression(m.right)){m=m.right;continue}else return}else return}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="fixConvertToMappedObjectType",o=[A.Diagnostics.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(B){var m=B.sourceFile,_=B.span,x=s(m,_.start);if(x){var O=A.textChanges.ChangeTracker.with(B,function(P){return E(P,m,x)}),k=A.idText(x.container.name);return[t.createCodeFixAction(i,O,[A.Diagnostics.Convert_0_to_mapped_object_type,k],i,[A.Diagnostics.Convert_0_to_mapped_object_type,k])]}},fixIds:[i],getAllCodeActions:function(p){return t.codeFixAll(p,o,function(B,m){var _=s(m.file,m.start);_&&E(B,m.file,_)})}});function s(p,B){var m=A.getTokenAtPosition(p,B),_=A.tryCast(m.parent.parent,A.isIndexSignatureDeclaration);if(_){var x=A.isInterfaceDeclaration(_.parent)?_.parent:A.tryCast(_.parent.parent,A.isTypeAliasDeclaration);if(x)return{indexSignature:_,container:x}}}function g(p,B){return A.factory.createTypeAliasDeclaration(p.modifiers,p.name,p.typeParameters,B)}function E(p,B,m){var _=m.indexSignature,x=m.container,O=A.isInterfaceDeclaration(x)?x.members:x.type.members,k=O.filter(function(F){return!A.isIndexSignatureDeclaration(F)}),P=A.first(_.parameters),H=A.factory.createTypeParameterDeclaration(void 0,A.cast(P.name,A.isIdentifier),P.type),T=A.factory.createMappedTypeNode(A.hasEffectiveReadonlyModifier(_)?A.factory.createModifier(146):void 0,H,void 0,_.questionToken,_.type,void 0),v=A.factory.createIntersectionTypeNode(dt(dt(dt([],A.getAllSuperTypeNodes(x),!0),[T],!1),k.length?[A.factory.createTypeLiteralNode(k)]:A.emptyArray,!0));p.replaceNode(B,x,g(x,v))}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="removeAccidentalCallParentheses",o=[A.Diagnostics.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(s){var g=A.findAncestor(A.getTokenAtPosition(s.sourceFile,s.span.start),A.isCallExpression);if(g){var E=A.textChanges.ChangeTracker.with(s,function(p){p.deleteRange(s.sourceFile,{pos:g.expression.end,end:g.end})});return[t.createCodeFixActionWithoutFixAll(i,E,A.Diagnostics.Remove_parentheses)]}},fixIds:[i]})})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="removeUnnecessaryAwait",o=[A.Diagnostics.await_has_no_effect_on_the_type_of_this_expression.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(E){var p=A.textChanges.ChangeTracker.with(E,function(B){return s(B,E.sourceFile,E.span)});if(p.length>0)return[t.createCodeFixAction(i,p,A.Diagnostics.Remove_unnecessary_await,i,A.Diagnostics.Remove_all_unnecessary_uses_of_await)]},fixIds:[i],getAllCodeActions:function(g){return t.codeFixAll(g,o,function(E,p){return s(E,p.file,p)})}});function s(g,E,p){var B=A.tryCast(A.getTokenAtPosition(E,p.start),function(P){return P.kind===133}),m=B&&A.tryCast(B.parent,A.isAwaitExpression);if(m){var _=m,x=A.isParenthesizedExpression(m.parent);if(x){var O=A.getLeftmostExpression(m.expression,!1);if(A.isIdentifier(O)){var k=A.findPrecedingToken(m.parent.pos,E);k&&k.kind!==103&&(_=m.parent)}}g.replaceNode(E,_,m.expression)}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i=[A.Diagnostics.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],o="splitTypeOnlyImport";t.registerCodeFix({errorCodes:i,fixIds:[o],getCodeActions:function(p){var B=A.textChanges.ChangeTracker.with(p,function(m){return g(m,s(p.sourceFile,p.span),p)});if(B.length)return[t.createCodeFixAction(o,B,A.Diagnostics.Split_into_two_separate_import_declarations,o,A.Diagnostics.Split_all_invalid_type_only_imports)]},getAllCodeActions:function(E){return t.codeFixAll(E,i,function(p,B){g(p,s(E.sourceFile,B),E)})}});function s(E,p){return A.findAncestor(A.getTokenAtPosition(E,p.start),A.isImportDeclaration)}function g(E,p,B){if(p){var m=A.Debug.checkDefined(p.importClause);E.replaceNode(B.sourceFile,p,A.factory.updateImportDeclaration(p,p.modifiers,A.factory.updateImportClause(m,m.isTypeOnly,m.name,void 0),p.moduleSpecifier,p.assertClause)),E.insertNodeAfter(B.sourceFile,p,A.factory.createImportDeclaration(void 0,A.factory.updateImportClause(m,m.isTypeOnly,void 0,m.namedBindings),p.moduleSpecifier,p.assertClause))}}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="fixConvertConstToLet",o=[A.Diagnostics.Cannot_assign_to_0_because_it_is_a_constant.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(p){var B=p.sourceFile,m=p.span,_=p.program,x=s(B,m.start,_);if(x!==void 0){var O=A.textChanges.ChangeTracker.with(p,function(k){return g(k,B,x.token)});return[t.createCodeFixActionMaybeFixAll(i,O,A.Diagnostics.Convert_const_to_let,i,A.Diagnostics.Convert_all_const_to_let)]}},getAllCodeActions:function(E){var p=E.program,B=new A.Map;return t.createCombinedCodeActions(A.textChanges.ChangeTracker.with(E,function(m){t.eachDiagnostic(E,o,function(_){var x=s(_.file,_.start,p);if(x&&A.addToSeen(B,A.getSymbolId(x.symbol)))return g(m,_.file,x.token)})}))},fixIds:[i]});function s(E,p,B){var m,_=B.getTypeChecker(),x=_.getSymbolAtLocation(A.getTokenAtPosition(E,p));if(x!==void 0){var O=A.tryCast((m=x?.valueDeclaration)===null||m===void 0?void 0:m.parent,A.isVariableDeclarationList);if(O!==void 0){var k=A.findChildOfKind(O,85,E);if(k!==void 0)return{symbol:x,token:k}}}}function g(E,p,B){E.replaceNode(p,B,A.factory.createToken(119))}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="fixExpectedComma",o=A.Diagnostics._0_expected.code,s=[o];t.registerCodeFix({errorCodes:s,getCodeActions:function(p){var B=p.sourceFile,m=g(B,p.span.start,p.errorCode);if(m){var _=A.textChanges.ChangeTracker.with(p,function(x){return E(x,B,m)});return[t.createCodeFixAction(i,_,[A.Diagnostics.Change_0_to_1,";",","],i,[A.Diagnostics.Change_0_to_1,";",","])]}},fixIds:[i],getAllCodeActions:function(p){return t.codeFixAll(p,s,function(B,m){var _=g(m.file,m.start,m.code);_&&E(B,p.sourceFile,_)})}});function g(p,B,m){var _=A.getTokenAtPosition(p,B);return _.kind===26&&_.parent&&(A.isObjectLiteralExpression(_.parent)||A.isArrayLiteralExpression(_.parent))?{node:_}:void 0}function E(p,B,m){var _=m.node,x=A.factory.createToken(27);p.replaceNode(B,_,x)}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="addVoidToPromise",o="addVoidToPromise",s=[A.Diagnostics.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code,A.Diagnostics.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];t.registerCodeFix({errorCodes:s,fixIds:[o],getCodeActions:function(p){var B=A.textChanges.ChangeTracker.with(p,function(m){return g(m,p.sourceFile,p.span,p.program)});if(B.length>0)return[t.createCodeFixAction(i,B,A.Diagnostics.Add_void_to_Promise_resolved_without_a_value,o,A.Diagnostics.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions:function(p){return t.codeFixAll(p,s,function(B,m){return g(B,m.file,m,p.program,new A.Set)})}});function g(p,B,m,_,x){var O=A.getTokenAtPosition(B,m.start);if(!(!A.isIdentifier(O)||!A.isCallExpression(O.parent)||O.parent.expression!==O||O.parent.arguments.length!==0)){var k=_.getTypeChecker(),P=k.getSymbolAtLocation(O),H=P?.valueDeclaration;if(!(!H||!A.isParameter(H)||!A.isNewExpression(H.parent.parent))&&!x?.has(H)){x?.add(H);var T=E(H.parent.parent);if(A.some(T)){var v=T[0],F=!A.isUnionTypeNode(v)&&!A.isParenthesizedTypeNode(v)&&A.isParenthesizedTypeNode(A.factory.createUnionTypeNode([v,A.factory.createKeywordTypeNode(114)]).types[0]);F&&p.insertText(B,v.pos,"("),p.insertText(B,v.end,F?") | void":" | void")}else{var y=k.getResolvedSignature(O.parent),S=y?.parameters[0],U=S&&k.getTypeOfSymbolAtLocation(S,H.parent.parent);A.isInJSFile(H)?(!U||U.flags&3)&&(p.insertText(B,H.parent.parent.end,")"),p.insertText(B,A.skipTrivia(B.text,H.parent.parent.pos),"/** @type {Promise} */(")):(!U||U.flags&2)&&p.insertText(B,H.parent.parent.expression.end,"")}}}}function E(p){var B;if(A.isInJSFile(p)){if(A.isParenthesizedExpression(p.parent)){var m=(B=A.getJSDocTypeTag(p.parent))===null||B===void 0?void 0:B.typeExpression.type;if(m&&A.isTypeReferenceNode(m)&&A.isIdentifier(m.typeName)&&A.idText(m.typeName)==="Promise")return m.typeArguments}}else return p.typeArguments}})(r=A.codefix||(A.codefix={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="Convert export",o={name:"Convert default export to named export",description:A.Diagnostics.Convert_default_export_to_named_export.message,kind:"refactor.rewrite.export.named"},s={name:"Convert named export to default export",description:A.Diagnostics.Convert_named_export_to_default_export.message,kind:"refactor.rewrite.export.default"};t.registerRefactor(i,{kinds:[o.kind,s.kind],getAvailableActions:function(H){var T=g(H,H.triggerReason==="invoked");if(!T)return A.emptyArray;if(!t.isRefactorErrorInfo(T)){var v=T.wasDefault?o:s;return[{name:i,description:v.description,actions:[v]}]}return H.preferences.provideRefactorNotApplicableReason?[{name:i,description:A.Diagnostics.Convert_default_export_to_named_export.message,actions:[pi(pi({},o),{notApplicableReason:T.error}),pi(pi({},s),{notApplicableReason:T.error})]}]:A.emptyArray},getEditsForAction:function(H,T){A.Debug.assert(T===o.name||T===s.name,"Unexpected action name");var v=g(H);A.Debug.assert(v&&!t.isRefactorErrorInfo(v),"Expected applicable refactor info");var F=A.textChanges.ChangeTracker.with(H,function(y){return E(H.file,H.program,v,y,H.cancellationToken)});return{edits:F,renameFilename:void 0,renameLocation:void 0}}});function g(P,H){H===void 0&&(H=!0);var T=P.file,v=P.program,F=A.getRefactorContextSpan(P),y=A.getTokenAtPosition(T,F.start),S=y.parent&&A.getSyntacticModifierFlags(y.parent)&1&&H?y.parent:A.getParentNodeInSpan(y,T,F);if(!S||!A.isSourceFile(S.parent)&&!(A.isModuleBlock(S.parent)&&A.isAmbientModule(S.parent.parent)))return{error:A.getLocaleSpecificMessage(A.Diagnostics.Could_not_find_export_statement)};var U=v.getTypeChecker(),V=k(S,U),wA=A.getSyntacticModifierFlags(S)||(A.isExportAssignment(S)&&!S.isExportEquals?1025:0),IA=!!(wA&1024);if(!(wA&1)||!IA&&V.exports.has("default"))return{error:A.getLocaleSpecificMessage(A.Diagnostics.This_file_already_has_a_default_export)};var pA=function(Y){return A.isIdentifier(Y)&&U.getSymbolAtLocation(Y)?void 0:{error:A.getLocaleSpecificMessage(A.Diagnostics.Can_only_convert_named_export)}};switch(S.kind){case 259:case 260:case 261:case 263:case 262:case 264:{var oA=S;return oA.name?pA(oA.name)||{exportNode:oA,exportName:oA.name,wasDefault:IA,exportingModuleSymbol:V}:void 0}case 240:{var cA=S;if(!(cA.declarationList.flags&2)||cA.declarationList.declarations.length!==1)return;var eA=A.first(cA.declarationList.declarations);return eA.initializer?(A.Debug.assert(!IA,"Can't have a default flag here"),pA(eA.name)||{exportNode:cA,exportName:eA.name,wasDefault:IA,exportingModuleSymbol:V}):void 0}case 274:{var oA=S;return oA.isExportEquals?void 0:pA(oA.expression)||{exportNode:oA,exportName:oA.expression,wasDefault:IA,exportingModuleSymbol:V}}default:return}}function E(P,H,T,v,F){p(P,T,v,H.getTypeChecker()),B(H,T,v,F)}function p(P,H,T,v){var F=H.wasDefault,y=H.exportNode,S=H.exportName;if(F)if(A.isExportAssignment(y)&&!y.isExportEquals){var U=y.expression,V=O(U.text,U.text);T.replaceNode(P,y,A.factory.createExportDeclaration(void 0,!1,A.factory.createNamedExports([V])))}else T.delete(P,A.Debug.checkDefined(A.findModifier(y,88),"Should find a default keyword in modifier list"));else{var wA=A.Debug.checkDefined(A.findModifier(y,93),"Should find an export keyword in modifier list");switch(y.kind){case 259:case 260:case 261:T.insertNodeAfter(P,wA,A.factory.createToken(88));break;case 240:var IA=A.first(y.declarationList.declarations);if(!A.FindAllReferences.Core.isSymbolReferencedInFile(S,v,P)&&!IA.type){T.replaceNode(P,y,A.factory.createExportDefault(A.Debug.checkDefined(IA.initializer,"Initializer was previously known to be present")));break}case 263:case 262:case 264:T.deleteModifier(P,wA),T.insertNodeAfter(P,y,A.factory.createExportDefault(A.factory.createIdentifier(S.text)));break;default:A.Debug.fail("Unexpected exportNode kind ".concat(y.kind))}}}function B(P,H,T,v){var F=H.wasDefault,y=H.exportName,S=H.exportingModuleSymbol,U=P.getTypeChecker(),V=A.Debug.checkDefined(U.getSymbolAtLocation(y),"Export name should resolve to a symbol");A.FindAllReferences.Core.eachExportReference(P.getSourceFiles(),U,v,V,S,y.text,F,function(wA){if(y!==wA){var IA=wA.getSourceFile();F?m(IA,wA,T,y.text):_(IA,wA,T)}})}function m(P,H,T,v){var F=H.parent;switch(F.kind){case 208:T.replaceNode(P,H,A.factory.createIdentifier(v));break;case 273:case 278:{var y=F;T.replaceNode(P,y,x(v,y.name.text));break}case 270:{var S=F;A.Debug.assert(S.name===H,"Import clause name should match provided ref");var y=x(v,H.text),U=S.namedBindings;if(!U)T.replaceNode(P,H,A.factory.createNamedImports([y]));else if(U.kind===271){T.deleteRange(P,{pos:H.getStart(P),end:U.getStart(P)});var V=A.isStringLiteral(S.parent.moduleSpecifier)?A.quotePreferenceFromString(S.parent.moduleSpecifier,P):1,wA=A.makeImport(void 0,[x(v,H.text)],S.parent.moduleSpecifier,V);T.insertNodeAfter(P,S.parent,wA)}else T.delete(P,H),T.insertNodeAtEndOfList(P,U.elements,y);break}case 202:var IA=F;T.replaceNode(P,F,A.factory.createImportTypeNode(IA.argument,IA.assertions,A.factory.createIdentifier(v),IA.typeArguments,IA.isTypeOf));break;default:A.Debug.failBadSyntaxKind(F)}}function _(P,H,T){var v=H.parent;switch(v.kind){case 208:T.replaceNode(P,H,A.factory.createIdentifier("default"));break;case 273:{var F=A.factory.createIdentifier(v.name.text);v.parent.elements.length===1?T.replaceNode(P,v.parent,F):(T.delete(P,v),T.insertNodeBefore(P,v.parent,F));break}case 278:{T.replaceNode(P,v,O("default",v.name.text));break}default:A.Debug.assertNever(v,"Unexpected parent kind ".concat(v.kind))}}function x(P,H){return A.factory.createImportSpecifier(!1,P===H?void 0:A.factory.createIdentifier(P),A.factory.createIdentifier(H))}function O(P,H){return A.factory.createExportSpecifier(!1,P===H?void 0:A.factory.createIdentifier(P),A.factory.createIdentifier(H))}function k(P,H){var T=P.parent;if(A.isSourceFile(T))return T.symbol;var v=T.parent.symbol;return v.valueDeclaration&&A.isExternalModuleAugmentation(v.valueDeclaration)?H.getMergedSymbol(v):v}})(r=A.refactor||(A.refactor={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i,o="Convert import",s=(i={},i[0]={name:"Convert namespace import to named imports",description:A.Diagnostics.Convert_namespace_import_to_named_imports.message,kind:"refactor.rewrite.import.named"},i[2]={name:"Convert named imports to namespace import",description:A.Diagnostics.Convert_named_imports_to_namespace_import.message,kind:"refactor.rewrite.import.namespace"},i[1]={name:"Convert named imports to default import",description:A.Diagnostics.Convert_named_imports_to_default_import.message,kind:"refactor.rewrite.import.default"},i);t.registerRefactor(o,{kinds:A.getOwnValues(s).map(function(P){return P.kind}),getAvailableActions:function(H){var T=g(H,H.triggerReason==="invoked");if(!T)return A.emptyArray;if(!t.isRefactorErrorInfo(T)){var v=s[T.convertTo];return[{name:o,description:v.description,actions:[v]}]}return H.preferences.provideRefactorNotApplicableReason?A.getOwnValues(s).map(function(F){return{name:o,description:F.description,actions:[pi(pi({},F),{notApplicableReason:T.error})]}}):A.emptyArray},getEditsForAction:function(H,T){A.Debug.assert(A.some(A.getOwnValues(s),function(y){return y.name===T}),"Unexpected action name");var v=g(H);A.Debug.assert(v&&!t.isRefactorErrorInfo(v),"Expected applicable refactor info");var F=A.textChanges.ChangeTracker.with(H,function(y){return p(H.file,H.program,y,v)});return{edits:F,renameFilename:void 0,renameLocation:void 0}}});function g(P,H){H===void 0&&(H=!0);var T=P.file,v=A.getRefactorContextSpan(P),F=A.getTokenAtPosition(T,v.start),y=H?A.findAncestor(F,A.isImportDeclaration):A.getParentNodeInSpan(F,T,v);if(!y||!A.isImportDeclaration(y))return{error:"Selection is not an import declaration."};var S=v.start+v.length,U=A.findNextToken(y,y.parent,T);if(!(U&&S>U.getStart())){var V=y.importClause;if(!V)return{error:A.getLocaleSpecificMessage(A.Diagnostics.Could_not_find_import_clause)};if(!V.namedBindings)return{error:A.getLocaleSpecificMessage(A.Diagnostics.Could_not_find_namespace_import_or_named_imports)};if(V.namedBindings.kind===271)return{convertTo:0,import:V.namedBindings};var wA=E(P.program,V);return wA?{convertTo:1,import:V.namedBindings}:{convertTo:2,import:V.namedBindings}}}function E(P,H){return A.getAllowSyntheticDefaultImports(P.getCompilerOptions())&&O(H.parent.moduleSpecifier,P.getTypeChecker())}function p(P,H,T,v){var F=H.getTypeChecker();v.convertTo===0?B(P,F,T,v.import,A.getAllowSyntheticDefaultImports(H.getCompilerOptions())):x(P,H,T,v.import,v.convertTo===1)}function B(P,H,T,v,F){var y=!1,S=[],U=new A.Map;A.FindAllReferences.Core.eachSymbolReferenceInFile(v.name,H,P,function(q){if(!A.isPropertyAccessOrQualifiedName(q.parent))y=!0;else{var X=m(q.parent).text;H.resolveName(X,q,67108863,!0)&&U.set(X,!0),A.Debug.assert(_(q.parent)===q,"Parent expression should match id"),S.push(q.parent)}});for(var V=new A.Map,wA=0,IA=S;wA=X.pos?Z.getEnd():X.getEnd()),J=q?S(X):y(X,K),sA=J&&x(J)?U(J):void 0;if(!sA)return{error:A.getLocaleSpecificMessage(A.Diagnostics.Could_not_find_convertible_access_expression)};var uA=eA.getTypeChecker();return A.isConditionalExpression(sA)?k(sA,uA):P(sA)}}function k(pA,oA){var cA=pA.condition,eA=V(pA.whenTrue);if(!eA||oA.isNullableType(oA.getTypeAtLocation(eA)))return{error:A.getLocaleSpecificMessage(A.Diagnostics.Could_not_find_convertible_access_expression)};if((A.isPropertyAccessExpression(cA)||A.isIdentifier(cA))&&T(cA,eA.expression))return{finalExpression:eA,occurrences:[cA],expression:pA};if(A.isBinaryExpression(cA)){var Y=H(eA.expression,cA);return Y?{finalExpression:eA,occurrences:Y,expression:pA}:{error:A.getLocaleSpecificMessage(A.Diagnostics.Could_not_find_matching_access_expressions)}}}function P(pA){if(pA.operatorToken.kind!==55)return{error:A.getLocaleSpecificMessage(A.Diagnostics.Can_only_convert_logical_AND_access_chains)};var oA=V(pA.right);if(!oA)return{error:A.getLocaleSpecificMessage(A.Diagnostics.Could_not_find_convertible_access_expression)};var cA=H(oA.expression,pA.left);return cA?{finalExpression:oA,occurrences:cA,expression:pA}:{error:A.getLocaleSpecificMessage(A.Diagnostics.Could_not_find_matching_access_expressions)}}function H(pA,oA){for(var cA=[];A.isBinaryExpression(oA)&&oA.operatorToken.kind===55;){var eA=T(A.skipParentheses(pA),A.skipParentheses(oA.right));if(!eA)break;cA.push(eA),pA=eA,oA=oA.left}var Y=T(pA,oA);return Y&&cA.push(Y),cA.length>0?cA:void 0}function T(pA,oA){if(!(!A.isIdentifier(oA)&&!A.isPropertyAccessExpression(oA)&&!A.isElementAccessExpression(oA)))return v(pA,oA)?oA:void 0}function v(pA,oA){for(;(A.isCallExpression(pA)||A.isPropertyAccessExpression(pA)||A.isElementAccessExpression(pA))&&F(pA)!==F(oA);)pA=pA.expression;for(;A.isPropertyAccessExpression(pA)&&A.isPropertyAccessExpression(oA)||A.isElementAccessExpression(pA)&&A.isElementAccessExpression(oA);){if(F(pA)!==F(oA))return!1;pA=pA.expression,oA=oA.expression}return A.isIdentifier(pA)&&A.isIdentifier(oA)&&pA.getText()===oA.getText()}function F(pA){if(A.isIdentifier(pA)||A.isStringOrNumericLiteralLike(pA))return pA.getText();if(A.isPropertyAccessExpression(pA))return F(pA.name);if(A.isElementAccessExpression(pA))return F(pA.argumentExpression)}function y(pA,oA){for(;pA.parent;){if(x(pA)&&oA.length!==0&&pA.end>=oA.start+oA.length)return pA;pA=pA.parent}}function S(pA){for(;pA.parent;){if(x(pA)&&!x(pA.parent))return pA;pA=pA.parent}}function U(pA){if(m(pA))return pA;if(A.isVariableStatement(pA)){var oA=A.getSingleVariableOfVariableStatement(pA),cA=oA?.initializer;return cA&&m(cA)?cA:void 0}return pA.expression&&m(pA.expression)?pA.expression:void 0}function V(pA){if(pA=A.skipParentheses(pA),A.isBinaryExpression(pA))return V(pA.left);if((A.isPropertyAccessExpression(pA)||A.isElementAccessExpression(pA)||A.isCallExpression(pA))&&!A.isOptionalChain(pA))return pA}function wA(pA,oA,cA){if(A.isPropertyAccessExpression(oA)||A.isElementAccessExpression(oA)||A.isCallExpression(oA)){var eA=wA(pA,oA.expression,cA),Y=cA.length>0?cA[cA.length-1]:void 0,q=Y?.getText()===oA.expression.getText();if(q&&cA.pop(),A.isCallExpression(oA))return q?A.factory.createCallChain(eA,A.factory.createToken(28),oA.typeArguments,oA.arguments):A.factory.createCallChain(eA,oA.questionDotToken,oA.typeArguments,oA.arguments);if(A.isPropertyAccessExpression(oA))return q?A.factory.createPropertyAccessChain(eA,A.factory.createToken(28),oA.name):A.factory.createPropertyAccessChain(eA,oA.questionDotToken,oA.name);if(A.isElementAccessExpression(oA))return q?A.factory.createElementAccessChain(eA,A.factory.createToken(28),oA.argumentExpression):A.factory.createElementAccessChain(eA,oA.questionDotToken,oA.argumentExpression)}return oA}function IA(pA,oA,cA,eA,Y){var q=eA.finalExpression,X=eA.occurrences,Z=eA.expression,K=X[X.length-1],J=wA(oA,q,X);J&&(A.isPropertyAccessExpression(J)||A.isElementAccessExpression(J)||A.isCallExpression(J))&&(A.isBinaryExpression(Z)?cA.replaceNodeRange(pA,K,q,J):A.isConditionalExpression(Z)&&cA.replaceNode(pA,Z,A.factory.createBinaryExpression(J,A.factory.createToken(60),Z.whenFalse)))}})(i=t.convertToOptionalChainExpression||(t.convertToOptionalChainExpression={}))})(r=A.refactor||(A.refactor={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i;(function(o){var s="Convert overload list to single signature",g=A.Diagnostics.Convert_overload_list_to_single_signature.message,E={name:s,description:g,kind:"refactor.rewrite.function.overloadList"};t.registerRefactor(s,{kinds:[E.kind],getEditsForAction:B,getAvailableActions:p});function p(x){var O=x.file,k=x.startPosition,P=x.program,H=_(O,k,P);return H?[{name:s,description:g,actions:[E]}]:A.emptyArray}function B(x){var O=x.file,k=x.startPosition,P=x.program,H=_(O,k,P);if(!H)return;var T=P.getTypeChecker(),v=H[H.length-1],F=v;switch(v.kind){case 170:{F=A.factory.updateMethodSignature(v,v.modifiers,v.name,v.questionToken,v.typeParameters,S(H),v.type);break}case 171:{F=A.factory.updateMethodDeclaration(v,v.modifiers,v.asteriskToken,v.name,v.questionToken,v.typeParameters,S(H),v.type,v.body);break}case 176:{F=A.factory.updateCallSignature(v,v.typeParameters,S(H),v.type);break}case 173:{F=A.factory.updateConstructorDeclaration(v,v.modifiers,S(H),v.body);break}case 177:{F=A.factory.updateConstructSignature(v,v.typeParameters,S(H),v.type);break}case 259:{F=A.factory.updateFunctionDeclaration(v,v.modifiers,v.asteriskToken,v.name,v.typeParameters,S(H),v.type,v.body);break}default:return A.Debug.failBadSyntaxKind(v,"Unhandled signature kind in overload list conversion refactoring")}if(F===v)return;var y=A.textChanges.ChangeTracker.with(x,function(wA){wA.replaceNodeRange(O,H[0],H[H.length-1],F)});return{renameFilename:void 0,renameLocation:void 0,edits:y};function S(wA){var IA=wA[wA.length-1];return A.isFunctionLikeDeclaration(IA)&&IA.body&&(wA=wA.slice(0,wA.length-1)),A.factory.createNodeArray([A.factory.createParameterDeclaration(void 0,A.factory.createToken(25),"args",void 0,A.factory.createUnionTypeNode(A.map(wA,U)))])}function U(wA){var IA=A.map(wA.parameters,V);return A.setEmitFlags(A.factory.createTupleTypeNode(IA),A.some(IA,function(pA){return!!A.length(A.getSyntheticLeadingComments(pA))})?0:1)}function V(wA){A.Debug.assert(A.isIdentifier(wA.name));var IA=A.setTextRange(A.factory.createNamedTupleMember(wA.dotDotDotToken,wA.name,wA.questionToken,wA.type||A.factory.createKeywordTypeNode(131)),wA),pA=wA.symbol&&wA.symbol.getDocumentationComment(T);if(pA){var oA=A.displayPartsToString(pA);oA.length&&A.setSyntheticLeadingComments(IA,[{text:`* -`.concat(oA.split(` -`).map(function(cA){return" * ".concat(cA)}).join(` -`),` - `),kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return IA}}function m(x){switch(x.kind){case 170:case 171:case 176:case 173:case 177:case 259:return!0}return!1}function _(x,O,k){var P=A.getTokenAtPosition(x,O),H=A.findAncestor(P,m);if(H&&!(A.isFunctionLikeDeclaration(H)&&H.body&&A.rangeContainsPosition(H.body,O))){var T=k.getTypeChecker(),v=H.symbol;if(v){var F=v.declarations;if(!(A.length(F)<=1)&&A.every(F,function(wA){return A.getSourceFileOfNode(wA)===x})&&m(F[0])){var y=F[0].kind;if(A.every(F,function(wA){return wA.kind===y})){var S=F;if(!A.some(S,function(wA){return!!wA.typeParameters||A.some(wA.parameters,function(IA){return!!IA.modifiers||!A.isIdentifier(IA.name)})})){var U=A.mapDefined(S,function(wA){return T.getSignatureFromDeclaration(wA)});if(A.length(U)===A.length(F)){var V=T.getReturnTypeOfSignature(U[0]);if(A.every(U,function(wA){return T.getReturnTypeOfSignature(wA)===V}))return S}}}}}}}})(i=t.addOrRemoveBracesToArrowFunction||(t.addOrRemoveBracesToArrowFunction={}))})(r=A.refactor||(A.refactor={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i;(function(o){var s="Extract Symbol",g={name:"Extract Constant",description:A.getLocaleSpecificMessage(A.Diagnostics.Extract_constant),kind:"refactor.extract.constant"},E={name:"Extract Function",description:A.getLocaleSpecificMessage(A.Diagnostics.Extract_function),kind:"refactor.extract.function"};t.registerRefactor(s,{kinds:[g.kind,E.kind],getEditsForAction:B,getAvailableActions:p});function p(mA){var FA=mA.kind,SA=x(mA.file,A.getRefactorContextSpan(mA),mA.triggerReason==="invoked"),ce=SA.targetRange;if(ce===void 0){if(!SA.errors||SA.errors.length===0||!mA.preferences.provideRefactorNotApplicableReason)return A.emptyArray;var re=[];return t.refactorKindBeginsWith(E.kind,FA)&&re.push({name:s,description:E.description,actions:[pi(pi({},E),{notApplicableReason:_e(SA.errors)})]}),t.refactorKindBeginsWith(g.kind,FA)&&re.push({name:s,description:g.description,actions:[pi(pi({},g),{notApplicableReason:_e(SA.errors)})]}),re}var KA=F(ce,mA);if(KA===void 0)return A.emptyArray;for(var $A=[],jA=new A.Map,ue,MA=[],RA=new A.Map,lA,tA=0,N=0,nA=KA;N=FA.start+FA.length)return(Me||(Me=[])).push(A.createDiagnosticForNode($e,m.cannotExtractSuper)),!0}else RA|=_.UsesThis,lA=$e;break;case 216:A.forEachChild($e,function ae(We){if(A.isThis(We))RA|=_.UsesThis,lA=$e;else{if(A.isClassLike(We)||A.isFunctionLike(We)&&!A.isArrowFunction(We))return!1;A.forEachChild(We,ae)}});case 260:case 259:A.isSourceFile($e.parent)&&$e.parent.externalModuleIndicator===void 0&&(Me||(Me=[])).push(A.createDiagnosticForNode($e,m.functionWillNotBeVisibleInTheNewScope));case 228:case 215:case 171:case 173:case 174:case 175:return!1}var we=Le;switch($e.kind){case 242:Le&=-5;break;case 255:Le=0;break;case 238:$e.parent&&$e.parent.kind===255&&$e.parent.finallyBlock===$e&&(Le=4);break;case 293:case 292:Le|=1;break;default:A.isIterationStatement($e,!1)&&(Le|=3);break}switch($e.kind){case 194:case 108:RA|=_.UsesThis,lA=$e;break;case 253:{var LA=$e.label;(ir||(ir=[])).push(LA.escapedText),A.forEachChild($e,mr),ir.pop();break}case 249:case 248:{var LA=$e.label;LA?A.contains(ir,LA.escapedText)||(Me||(Me=[])).push(A.createDiagnosticForNode($e,m.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):Le&($e.kind===249?1:2)||(Me||(Me=[])).push(A.createDiagnosticForNode($e,m.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break}case 220:RA|=_.IsAsyncFunction;break;case 226:RA|=_.IsGenerator;break;case 250:Le&4?RA|=_.HasReturn:(Me||(Me=[])).push(A.createDiagnosticForNode($e,m.cannotExtractRangeContainingConditionalReturnStatement));break;default:A.forEachChild($e,mr);break}Le=we}}}o.getRangeToExtract=x;function O(mA,FA,SA){var ce=mA.getStart(SA),re=FA.getEnd();return SA.text.charCodeAt(re)===59&&re++,{start:ce,length:re-ce}}function k(mA){if(A.isStatement(mA))return[mA];if(A.isExpressionNode(mA))return A.isExpressionStatement(mA.parent)?[mA.parent]:mA;if(QA(mA))return mA}function P(mA){return A.isArrowFunction(mA)?A.isFunctionBody(mA.body):A.isFunctionLikeDeclaration(mA)||A.isSourceFile(mA)||A.isModuleBlock(mA)||A.isClassLike(mA)}function H(mA){var FA=z(mA.range)?A.first(mA.range):mA.range;if(mA.facts&_.UsesThis&&!(mA.facts&_.UsesThisInFunction)){var SA=A.getContainingClass(FA);if(SA){var ce=A.findAncestor(FA,A.isFunctionLikeDeclaration);return ce?[ce,SA]:[SA]}}for(var re=[];;)if(FA=FA.parent,FA.kind===166&&(FA=A.findAncestor(FA,function(KA){return A.isFunctionLikeDeclaration(KA)}).parent),P(FA)&&(re.push(FA),FA.kind===308))return re}function T(mA,FA,SA){var ce=y(mA,FA),re=ce.scopes,KA=ce.readsAndWrites,$A=KA.target,jA=KA.usagesPerScope,ue=KA.functionErrorsPerScope,MA=KA.exposedVariableDeclarations;return A.Debug.assert(!ue[SA].length,"The extraction went missing? How?"),FA.cancellationToken.throwIfCancellationRequested(),oA($A,re[SA],jA[SA],MA,mA,FA)}function v(mA,FA,SA){var ce=y(mA,FA),re=ce.scopes,KA=ce.readsAndWrites,$A=KA.target,jA=KA.usagesPerScope,ue=KA.constantErrorsPerScope,MA=KA.exposedVariableDeclarations;A.Debug.assert(!ue[SA].length,"The extraction went missing? How?"),A.Debug.assert(MA.length===0,"Extract constant accepted a range containing a variable declaration?"),FA.cancellationToken.throwIfCancellationRequested();var RA=A.isExpression($A)?$A:$A.statements[0].expression;return cA(RA,re[SA],jA[SA],mA.facts,FA)}function F(mA,FA){var SA=y(mA,FA),ce=SA.scopes,re=SA.readsAndWrites,KA=re.functionErrorsPerScope,$A=re.constantErrorsPerScope,jA=ce.map(function(ue,MA){var RA=S(ue),lA=U(ue),tA=A.isFunctionLikeDeclaration(ue)?V(ue):A.isClassLike(ue)?wA(ue):IA(ue),N,nA;return tA===1?(N=A.formatStringFromArgs(A.getLocaleSpecificMessage(A.Diagnostics.Extract_to_0_in_1_scope),[RA,"global"]),nA=A.formatStringFromArgs(A.getLocaleSpecificMessage(A.Diagnostics.Extract_to_0_in_1_scope),[lA,"global"])):tA===0?(N=A.formatStringFromArgs(A.getLocaleSpecificMessage(A.Diagnostics.Extract_to_0_in_1_scope),[RA,"module"]),nA=A.formatStringFromArgs(A.getLocaleSpecificMessage(A.Diagnostics.Extract_to_0_in_1_scope),[lA,"module"])):(N=A.formatStringFromArgs(A.getLocaleSpecificMessage(A.Diagnostics.Extract_to_0_in_1),[RA,tA]),nA=A.formatStringFromArgs(A.getLocaleSpecificMessage(A.Diagnostics.Extract_to_0_in_1),[lA,tA])),MA===0&&!A.isClassLike(ue)&&(nA=A.formatStringFromArgs(A.getLocaleSpecificMessage(A.Diagnostics.Extract_to_0_in_enclosing_scope),[lA])),{functionExtraction:{description:N,errors:KA[MA]},constantExtraction:{description:nA,errors:$A[MA]}}});return jA}function y(mA,FA){var SA=FA.file,ce=H(mA),re=AA(mA,SA),KA=_A(mA,ce,re,SA,FA.program.getTypeChecker(),FA.cancellationToken);return{scopes:ce,readsAndWrites:KA}}function S(mA){return A.isFunctionLikeDeclaration(mA)?"inner function":A.isClassLike(mA)?"method":"function"}function U(mA){return A.isClassLike(mA)?"readonly field":"constant"}function V(mA){switch(mA.kind){case 173:return"constructor";case 215:case 259:return mA.name?"function '".concat(mA.name.text,"'"):A.ANONYMOUS;case 216:return"arrow function";case 171:return"method '".concat(mA.name.getText(),"'");case 174:return"'get ".concat(mA.name.getText(),"'");case 175:return"'set ".concat(mA.name.getText(),"'");default:throw A.Debug.assertNever(mA,"Unexpected scope kind ".concat(mA.kind))}}function wA(mA){return mA.kind===260?mA.name?"class '".concat(mA.name.text,"'"):"anonymous class declaration":mA.name?"class expression '".concat(mA.name.text,"'"):"anonymous class expression"}function IA(mA){return mA.kind===265?"namespace '".concat(mA.parent.name.getText(),"'"):mA.externalModuleIndicator?0:1}var pA;(function(mA){mA[mA.Module=0]="Module",mA[mA.Global=1]="Global"})(pA||(pA={}));function oA(mA,FA,SA,ce,re,KA){var $A=SA.usages,jA=SA.typeParameterUsages,ue=SA.substitutions,MA=KA.program.getTypeChecker(),RA=A.getEmitScriptTarget(KA.program.getCompilerOptions()),lA=A.codefix.createImportAdder(KA.file,KA.program,KA.preferences,KA.host),tA=FA.getSourceFile(),N=A.getUniqueName(A.isClassLike(FA)?"newMethod":"newFunction",tA),nA=A.isInJSFile(FA),kA=A.factory.createIdentifier(N),bA,TA=[],VA=[],De;$A.forEach(function(Ar,fr){var te;if(!nA){var Te=MA.getTypeOfSymbolAtLocation(Ar.symbol,Ar.node);Te=MA.getBaseTypeOfLiteralType(Te),te=A.codefix.typeToAutoImportableTypeNode(MA,lA,Te,FA,RA,1)}var UA=A.factory.createParameterDeclaration(void 0,void 0,fr,void 0,te);TA.push(UA),Ar.usage===2&&(De||(De=[])).push(Ar),VA.push(A.factory.createIdentifier(fr))});var _e=A.arrayFrom(jA.values()).map(function(Ar){return{type:Ar,declaration:Y(Ar)}}),Ae=_e.sort(q),Q=Ae.length===0?void 0:Ae.map(function(Ar){return Ar.declaration}),Ze=Q!==void 0?Q.map(function(Ar){return A.factory.createTypeReferenceNode(Ar.name,void 0)}):void 0;if(A.isExpression(mA)&&!nA){var Cr=MA.getContextualType(mA);bA=MA.typeToTypeNode(Cr,FA,1)}var be=Z(mA,ce,De,ue,!!(re.facts&_.HasReturn)),Me=be.body,Le=be.returnValueProperty;A.suppressLeadingAndTrailingTrivia(Me);var ir,Ye=!!(re.facts&_.UsesThisInFunction);if(A.isClassLike(FA)){var mr=nA?[]:[A.factory.createModifier(121)];re.facts&_.InStaticRegion&&mr.push(A.factory.createModifier(124)),re.facts&_.IsAsyncFunction&&mr.push(A.factory.createModifier(132)),ir=A.factory.createMethodDeclaration(mr.length?mr:void 0,re.facts&_.IsGenerator?A.factory.createToken(41):void 0,kA,void 0,Q,TA,bA,Me)}else Ye&&TA.unshift(A.factory.createParameterDeclaration(void 0,void 0,"this",void 0,MA.typeToTypeNode(MA.getTypeAtLocation(re.thisNode),FA,1),void 0)),ir=A.factory.createFunctionDeclaration(re.facts&_.IsAsyncFunction?[A.factory.createToken(132)]:void 0,re.facts&_.IsGenerator?A.factory.createToken(41):void 0,kA,Q,TA,bA,Me);var $e=A.textChanges.ChangeTracker.fromContext(KA),xr=(z(re.range)?A.last(re.range):re.range).end,PA=sA(xr,FA);PA?$e.insertNodeBefore(KA.file,PA,ir,!0):$e.insertNodeAtEndOfScope(KA.file,FA,ir),lA.writeFixes($e);var we=[],LA=X(FA,re,N);Ye&&VA.unshift(A.factory.createIdentifier("this"));var ae=A.factory.createCallExpression(Ye?A.factory.createPropertyAccessExpression(LA,"call"):LA,Ze,VA);if(re.facts&_.IsGenerator&&(ae=A.factory.createYieldExpression(A.factory.createToken(41),ae)),re.facts&_.IsAsyncFunction&&(ae=A.factory.createAwaitExpression(ae)),gA(mA)&&(ae=A.factory.createJsxExpression(void 0,ae)),ce.length&&!De)if(A.Debug.assert(!Le,"Expected no returnValueProperty"),A.Debug.assert(!(re.facts&_.HasReturn),"Expected RangeFacts.HasReturn flag to be unset"),ce.length===1){var We=ce[0];we.push(A.factory.createVariableStatement(void 0,A.factory.createVariableDeclarationList([A.factory.createVariableDeclaration(A.getSynthesizedDeepClone(We.name),void 0,A.getSynthesizedDeepClone(We.type),ae)],We.parent.flags)))}else{for(var YA=[],Ce=[],Ke=ce[0].parent.flags,er=!1,ur=0,hr=ce;ur1)return mA;SA=mA,mA=mA.parent}}function Y(mA){var FA,SA=mA.symbol;if(SA&&SA.declarations)for(var ce=0,re=SA.declarations;ce0;if(A.isBlock(mA)&&!KA&&ce.size===0)return{body:A.factory.createBlock(mA.statements,!0),returnValueProperty:void 0};var $A,jA=!1,ue=A.factory.createNodeArray(A.isBlock(mA)?mA.statements.slice(0):[A.isStatement(mA)?mA:A.factory.createReturnStatement(A.skipParentheses(mA))]);if(KA||ce.size){var MA=A.visitNodes(ue,lA).slice();if(KA&&!re&&A.isStatement(mA)){var RA=CA(FA,SA);RA.length===1?MA.push(A.factory.createReturnStatement(RA[0].name)):MA.push(A.factory.createReturnStatement(A.factory.createObjectLiteralExpression(RA)))}return{body:A.factory.createBlock(MA,!0),returnValueProperty:$A}}else return{body:A.factory.createBlock(ue,!0),returnValueProperty:void 0};function lA(tA){if(!jA&&A.isReturnStatement(tA)&&KA){var N=CA(FA,SA);return tA.expression&&($A||($A="__return"),N.unshift(A.factory.createPropertyAssignment($A,A.visitNode(tA.expression,lA)))),N.length===1?A.factory.createReturnStatement(N[0].name):A.factory.createReturnStatement(A.factory.createObjectLiteralExpression(N))}else{var nA=jA;jA=jA||A.isFunctionLikeDeclaration(tA)||A.isClassLike(tA);var kA=ce.get(A.getNodeId(tA).toString()),bA=kA?A.getSynthesizedDeepClone(kA):A.visitEachChild(tA,lA,A.nullTransformationContext);return jA=nA,bA}}}function K(mA,FA){return FA.size?SA(mA):mA;function SA(ce){var re=FA.get(A.getNodeId(ce).toString());return re?A.getSynthesizedDeepClone(re):A.visitEachChild(ce,SA,A.nullTransformationContext)}}function J(mA){if(A.isFunctionLikeDeclaration(mA)){var FA=mA.body;if(A.isBlock(FA))return FA.statements}else{if(A.isModuleBlock(mA)||A.isSourceFile(mA))return mA.statements;if(A.isClassLike(mA))return mA.members;A.assertType(mA)}return A.emptyArray}function sA(mA,FA){return A.find(J(FA),function(SA){return SA.pos>=mA&&A.isFunctionLikeDeclaration(SA)&&!A.isConstructorDeclaration(SA)})}function uA(mA,FA){var SA=FA.members;A.Debug.assert(SA.length>0,"Found no members");for(var ce,re=!0,KA=0,$A=SA;KA<$A.length;KA++){var jA=$A[KA];if(jA.pos>mA)return ce||SA[0];if(re&&!A.isPropertyDeclaration(jA)){if(ce!==void 0)return jA;re=!1}ce=jA}return ce===void 0?A.Debug.fail():ce}function BA(mA,FA){A.Debug.assert(!A.isClassLike(FA));for(var SA,ce=mA;ce!==FA;ce=ce.parent)P(ce)&&(SA=ce);for(var ce=(SA||mA).parent;;ce=ce.parent){if(aA(ce)){for(var re=void 0,KA=0,$A=ce.statements;KA<$A.length;KA++){var jA=$A[KA];if(jA.pos>mA.pos)break;re=jA}return!re&&A.isCaseClause(ce)?(A.Debug.assert(A.isSwitchStatement(ce.parent.parent),"Grandparent isn't a switch statement"),ce.parent.parent):A.Debug.checkDefined(re,"prevStatement failed to get set")}A.Debug.assert(ce!==FA,"Didn't encounter a block-like before encountering scope")}}function CA(mA,FA){var SA=A.map(mA,function(re){return A.factory.createShorthandPropertyAssignment(re.symbol.name)}),ce=A.map(FA,function(re){return A.factory.createShorthandPropertyAssignment(re.symbol.name)});return SA===void 0?ce:ce===void 0?SA:SA.concat(ce)}function z(mA){return A.isArray(mA)}function AA(mA,FA){return z(mA.range)?{pos:A.first(mA.range).getStart(FA),end:A.last(mA.range).getEnd()}:mA.range}var iA;(function(mA){mA[mA.Read=1]="Read",mA[mA.Write=2]="Write"})(iA||(iA={}));function _A(mA,FA,SA,ce,re,KA){var $A=new A.Map,jA=[],ue=[],MA=[],RA=[],lA=[],tA=new A.Map,N=[],nA,kA=z(mA.range)?mA.range.length===1&&A.isExpressionStatement(mA.range[0])?mA.range[0].expression:void 0:mA.range,bA;if(kA===void 0){var TA=mA.range,VA=A.first(TA).getStart(),De=A.last(TA).end;bA=A.createFileDiagnostic(ce,VA,De-VA,m.expressionExpected)}else re.getTypeAtLocation(kA).flags&147456&&(bA=A.createDiagnosticForNode(kA,m.uselessConstantType));for(var _e=0,Ae=FA;_e0){for(var Ye=new A.Map,mr=0,$e=Me;$e!==void 0&&mr0&&(nr.usages.size>0||nr.typeParameterUsages.size>0)){var Or=z(mA.range)?mA.range[0]:mA.range;RA[Ge].push(A.createDiagnosticForNode(Or,m.cannotAccessVariablesFromNestedScopes))}mA.facts&_.UsesThisInFunction&&A.isClassLike(FA[Ge])&&MA[Ge].push(A.createDiagnosticForNode(mA.thisNode,m.cannotExtractFunctionsContainingThisToMethod));var tr=!1,Ur;if(jA[Ge].usages.forEach(function(ke){ke.usage===2&&(tr=!0,ke.symbol.flags&106500&&ke.symbol.valueDeclaration&&A.hasEffectiveModifier(ke.symbol.valueDeclaration,64)&&(Ur=ke.symbol.valueDeclaration))}),A.Debug.assert(z(mA.range)||N.length===0,"No variable declarations expected if something was extracted"),tr&&!z(mA.range)){var nt=A.createDiagnosticForNode(mA.range,m.cannotWriteInExpression);MA[Ge].push(nt),RA[Ge].push(nt)}else if(Ur&&Ge>0){var nt=A.createDiagnosticForNode(Ur,m.cannotExtractReadonlyPropertyInitializerOutsideConstructor);MA[Ge].push(nt),RA[Ge].push(nt)}else if(nA){var nt=A.createDiagnosticForNode(nA,m.cannotExtractExportedEntity);MA[Ge].push(nt),RA[Ge].push(nt)}},YA=0;YA=nr)return Ur;if(Cr.set(Ur,nr),nt){for(var ke=0,Je=jA;ke=0)){var nr=A.isIdentifier(Ge)?qA(Ge):re.getSymbolAtLocation(Ge);if(nr){var Or=A.find(lA,function(Ur){return Ur.symbol===nr});if(Or)if(A.isVariableDeclaration(Or)){var tr=Or.symbol.id.toString();tA.has(tr)||(N.push(Or),tA.set(tr,!0))}else nA=nA||Or}A.forEachChild(Ge,Fr)}}function qA(Ge){return Ge.parent&&A.isShorthandPropertyAssignment(Ge.parent)&&Ge.parent.name===Ge?re.getShorthandAssignmentValueSymbol(Ge.parent):re.getSymbolAtLocation(Ge)}function oe(Ge,nr,Or){if(Ge){var tr=Ge.getDeclarations();if(tr&&tr.some(function(nt){return nt.parent===nr}))return A.factory.createIdentifier(Ge.name);var Ur=oe(Ge.parent,nr,Or);if(Ur!==void 0)return Or?A.factory.createQualifiedName(Ur,A.factory.createIdentifier(Ge.name)):A.factory.createPropertyAccessExpression(Ur,Ge.name)}}}function fA(mA){return A.findAncestor(mA,function(FA){return FA.parent&&M(FA)&&!A.isBinaryExpression(FA.parent)})}function M(mA){var FA=mA.parent;switch(FA.kind){case 302:return!1}switch(mA.kind){case 10:return FA.kind!==269&&FA.kind!==273;case 227:case 203:case 205:return!1;case 79:return FA.kind!==205&&FA.kind!==273&&FA.kind!==278}return!0}function aA(mA){switch(mA.kind){case 238:case 308:case 265:case 292:return!0;default:return!1}}function gA(mA){return QA(mA)||(A.isJsxElement(mA)||A.isJsxSelfClosingElement(mA)||A.isJsxFragment(mA))&&(A.isJsxElement(mA.parent)||A.isJsxFragment(mA.parent))}function QA(mA){return A.isStringLiteral(mA)&&mA.parent&&A.isJsxAttribute(mA.parent)}})(i=t.extractSymbol||(t.extractSymbol={}))})(r=A.refactor||(A.refactor={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i="Extract type",o={name:"Extract to type alias",description:A.getLocaleSpecificMessage(A.Diagnostics.Extract_to_type_alias),kind:"refactor.extract.type"},s={name:"Extract to interface",description:A.getLocaleSpecificMessage(A.Diagnostics.Extract_to_interface),kind:"refactor.extract.interface"},g={name:"Extract to typedef",description:A.getLocaleSpecificMessage(A.Diagnostics.Extract_to_typedef),kind:"refactor.extract.typedef"};t.registerRefactor(i,{kinds:[o.kind,s.kind,g.kind],getAvailableActions:function(P){var H=E(P,P.triggerReason==="invoked");return H?t.isRefactorErrorInfo(H)?P.preferences.provideRefactorNotApplicableReason?[{name:i,description:A.getLocaleSpecificMessage(A.Diagnostics.Extract_type),actions:[pi(pi({},g),{notApplicableReason:H.error}),pi(pi({},o),{notApplicableReason:H.error}),pi(pi({},s),{notApplicableReason:H.error})]}]:A.emptyArray:[{name:i,description:A.getLocaleSpecificMessage(A.Diagnostics.Extract_type),actions:H.isJS?[g]:A.append([o],H.typeElements&&s)}]:A.emptyArray},getEditsForAction:function(P,H){var T=P.file,v=E(P);A.Debug.assert(v&&!t.isRefactorErrorInfo(v),"Expected to find a range to extract");var F=A.getUniqueName("NewType",T),y=A.textChanges.ChangeTracker.with(P,function(V){switch(H){case o.name:return A.Debug.assert(!v.isJS,"Invalid actionName/JS combo"),_(V,T,F,v);case g.name:return A.Debug.assert(v.isJS,"Invalid actionName/JS combo"),O(V,T,F,v);case s.name:return A.Debug.assert(!v.isJS&&!!v.typeElements,"Invalid actionName/JS combo"),x(V,T,F,v);default:A.Debug.fail("Unexpected action name")}}),S=T.fileName,U=A.getRenameLocation(y,S,F,!1);return{edits:y,renameFilename:S,renameLocation:U}}});function E(k,P){P===void 0&&(P=!0);var H=k.file,T=k.startPosition,v=A.isSourceFileJS(H),F=A.getTokenAtPosition(H,T),y=A.createTextRangeFromSpan(A.getRefactorContextSpan(k)),S=y.pos===y.end&&P,U=A.findAncestor(F,function(oA){return oA.parent&&A.isTypeNode(oA)&&!B(y,oA.parent,H)&&(S||A.nodeOverlapsWithStartEnd(F,H,y.pos,y.end))});if(!U||!A.isTypeNode(U))return{error:A.getLocaleSpecificMessage(A.Diagnostics.Selection_is_not_a_valid_type_node)};var V=k.program.getTypeChecker(),wA=A.Debug.checkDefined(A.findAncestor(U,A.isStatement),"Should find a statement"),IA=m(V,U,wA,H);if(!IA)return{error:A.getLocaleSpecificMessage(A.Diagnostics.No_type_could_be_extracted_from_this_type_node)};var pA=p(V,U);return{isJS:v,selection:U,firstStatement:wA,typeParameters:IA,typeElements:pA}}function p(k,P){if(P)if(A.isIntersectionTypeNode(P)){for(var H=[],T=new A.Map,v=0,F=P.types;vue.pos});if(RA!==-1){var lA=MA[RA];if(A.isNamedDeclaration(lA)&&lA.name&&A.rangeContainsRange(lA.name,ue))return{toMove:[MA[RA]],afterLast:MA[RA+1]};if(!(ue.pos>lA.getStart(jA))){var tA=A.findIndex(MA,function(N){return N.end>ue.end},RA);if(!(tA!==-1&&(tA===0||MA[tA].getStart(jA)=g&&A.every(uA,function(CA){return pA(CA,BA)})}function pA(uA,BA){if(A.isRestParameter(uA)){var CA=BA.getTypeAtLocation(uA);if(!BA.isArrayType(CA)&&!BA.isTupleType(CA))return!1}return!uA.modifiers&&A.isIdentifier(uA.name)}function oA(uA){return A.isVariableDeclaration(uA)&&A.isVarConst(uA)&&A.isIdentifier(uA.name)&&!uA.type}function cA(uA){return uA.length>0&&A.isThis(uA[0].name)}function eA(uA){return cA(uA)?uA.length-1:uA.length}function Y(uA){return cA(uA)&&(uA=A.factory.createNodeArray(uA.slice(1),uA.hasTrailingComma)),uA}function q(uA,BA){return A.isIdentifier(BA)&&A.getTextOfIdentifierOrLiteral(BA)===uA?A.factory.createShorthandPropertyAssignment(uA):A.factory.createPropertyAssignment(uA,BA)}function X(uA,BA){var CA=Y(uA.parameters),z=A.isRestParameter(A.last(CA)),AA=z?BA.slice(0,CA.length-1):BA,iA=A.map(AA,function(aA,gA){var QA=K(CA[gA]),mA=q(QA,aA);return A.suppressLeadingAndTrailingTrivia(mA.name),A.isPropertyAssignment(mA)&&A.suppressLeadingAndTrailingTrivia(mA.initializer),A.copyComments(aA,mA),mA});if(z&&BA.length>=CA.length){var _A=BA.slice(CA.length-1),fA=A.factory.createPropertyAssignment(K(A.last(CA)),A.factory.createArrayLiteralExpression(_A));iA.push(fA)}var M=A.factory.createObjectLiteralExpression(iA,!1);return M}function Z(uA,BA,CA){var z=BA.getTypeChecker(),AA=Y(uA.parameters),iA=A.map(AA,mA),_A=A.factory.createObjectBindingPattern(iA),fA=FA(AA),M;A.every(AA,re)&&(M=A.factory.createObjectLiteralExpression());var aA=A.factory.createParameterDeclaration(void 0,void 0,_A,void 0,fA,M);if(cA(uA.parameters)){var gA=uA.parameters[0],QA=A.factory.createParameterDeclaration(void 0,void 0,gA.name,void 0,gA.type);return A.suppressLeadingAndTrailingTrivia(QA.name),A.copyComments(gA.name,QA.name),gA.type&&(A.suppressLeadingAndTrailingTrivia(QA.type),A.copyComments(gA.type,QA.type)),A.factory.createNodeArray([QA,aA])}return A.factory.createNodeArray([aA]);function mA(KA){var $A=A.factory.createBindingElement(void 0,void 0,K(KA),A.isRestParameter(KA)&&re(KA)?A.factory.createArrayLiteralExpression():KA.initializer);return A.suppressLeadingAndTrailingTrivia($A),KA.initializer&&$A.initializer&&A.copyComments(KA.initializer,$A.initializer),$A}function FA(KA){var $A=A.map(KA,SA),jA=A.addEmitFlags(A.factory.createTypeLiteralNode($A),1);return jA}function SA(KA){var $A=KA.type;!$A&&(KA.initializer||A.isRestParameter(KA))&&($A=ce(KA));var jA=A.factory.createPropertySignature(void 0,K(KA),re(KA)?A.factory.createToken(57):KA.questionToken,$A);return A.suppressLeadingAndTrailingTrivia(jA),A.copyComments(KA.name,jA.name),KA.type&&jA.type&&A.copyComments(KA.type,jA.type),jA}function ce(KA){var $A=z.getTypeAtLocation(KA);return A.getTypeNodeIfAccessible($A,KA,BA,CA)}function re(KA){if(A.isRestParameter(KA)){var $A=z.getTypeAtLocation(KA);return!z.isTupleType($A)}return z.isOptionalParameter(KA)}}function K(uA){return A.getTextOfIdentifierOrLiteral(uA.name)}function J(uA){switch(uA.parent.kind){case 260:var BA=uA.parent;if(BA.name)return[BA.name];var CA=A.Debug.checkDefined(A.findModifier(BA,88),"Nameless class declaration should be a default export");return[CA];case 228:var z=uA.parent,AA=uA.parent.parent,iA=z.name;return iA?[iA,AA.name]:[AA.name]}}function sA(uA){switch(uA.kind){case 259:if(uA.name)return[uA.name];var BA=A.Debug.checkDefined(A.findModifier(uA,88),"Nameless function declaration should be a default export");return[BA];case 171:return[uA.name];case 173:var CA=A.Debug.checkDefined(A.findChildOfKind(uA,135,uA.getSourceFile()),"Constructor declaration should have constructor keyword");if(uA.parent.kind===228){var z=uA.parent.parent;return[z.name,CA]}return[CA];case 216:return[uA.parent.name];case 215:return uA.name?[uA.name,uA.parent.name]:[uA.parent.name];default:return A.Debug.assertNever(uA,"Unexpected function declaration kind ".concat(uA.kind))}}})(i=t.convertParamsToDestructuredObject||(t.convertParamsToDestructuredObject={}))})(r=A.refactor||(A.refactor={}))})(Oe||(Oe={}));var Oe;(function(A){var r;(function(t){var i;(function(o){var s="Convert to template string",g=A.getLocaleSpecificMessage(A.Diagnostics.Convert_to_template_string),E={name:s,description:g,kind:"refactor.rewrite.string"};t.registerRefactor(s,{kinds:[E.kind],getEditsForAction:m,getAvailableActions:p});function p(V){var wA=V.file,IA=V.startPosition,pA=B(wA,IA),oA=O(pA),cA={name:s,description:g,actions:[]};return A.isBinaryExpression(oA)&&k(oA).isValidConcatenation?(cA.actions.push(E),[cA]):V.preferences.provideRefactorNotApplicableReason?(cA.actions.push(pi(pi({},E),{notApplicableReason:A.getLocaleSpecificMessage(A.Diagnostics.Can_only_convert_string_concatenation)})),[cA]):A.emptyArray}function B(V,wA){var IA=A.getTokenAtPosition(V,wA),pA=O(IA),oA=!k(pA).isValidConcatenation;return oA&&A.isParenthesizedExpression(pA.parent)&&A.isBinaryExpression(pA.parent.parent)?pA.parent.parent:IA}function m(V,wA){var IA=V.file,pA=V.startPosition,oA=B(IA,pA);switch(wA){case g:return{edits:_(V,oA)};default:return A.Debug.fail("invalid action")}}function _(V,wA){var IA=O(wA),pA=V.file,oA=y(k(IA),pA),cA=A.getTrailingCommentRanges(pA.text,IA.end);if(cA){var eA=cA[cA.length-1],Y={pos:cA[0].pos,end:eA.end};return A.textChanges.ChangeTracker.with(V,function(q){q.deleteRange(pA,Y),q.replaceNode(pA,IA,oA)})}else return A.textChanges.ChangeTracker.with(V,function(q){return q.replaceNode(pA,IA,oA)})}function x(V){return V.operatorToken.kind!==63}function O(V){var wA=A.findAncestor(V.parent,function(IA){switch(IA.kind){case 208:case 209:return!1;case 225:case 223:return!(A.isBinaryExpression(IA.parent)&&x(IA.parent));default:return"quit"}});return wA||V}function k(V){var wA=function(Y){if(!A.isBinaryExpression(Y))return{nodes:[Y],operators:[],validOperators:!0,hasString:A.isStringLiteral(Y)||A.isNoSubstitutionTemplateLiteral(Y)};var q=wA(Y.left),X=q.nodes,Z=q.operators,K=q.hasString,J=q.validOperators;if(!(K||A.isStringLiteral(Y.right)||A.isTemplateExpression(Y.right)))return{nodes:[Y],operators:[],hasString:!1,validOperators:!0};var sA=Y.operatorToken.kind===39,uA=J&&sA;return X.push(Y.right),Z.push(Y.operatorToken),{nodes:X,operators:Z,hasString:!0,validOperators:uA}},IA=wA(V),pA=IA.nodes,oA=IA.operators,cA=IA.validOperators,eA=IA.hasString;return{nodes:pA,operators:oA,isValidConcatenation:cA&&eA}}var P=function(V,wA){return function(IA,pA){IA0;){var cA=pA.shift();A.copyTrailingComments(V[cA],oA,wA,3,!1),IA(cA,oA)}}};function T(V){return V.replace(/\\.|[$`]/g,function(wA){return wA[0]==="\\"?wA:"\\"+wA})}function v(V){var wA=A.isTemplateHead(V)||A.isTemplateMiddle(V)?-2:-1;return A.getTextOfNode(V).slice(1,wA)}function F(V,wA){for(var IA=[],pA="",oA="";V1)return k.getUnionType(A.mapDefined(H,function(v){return v.getReturnType()}))}var T=k.getSignatureFromDeclaration(P);if(T)return k.getReturnTypeOfSignature(T)}})(i=t.inferFunctionReturnType||(t.inferFunctionReturnType={}))})(r=A.refactor||(A.refactor={}))})(Oe||(Oe={}));var Oe;(function(A){A.servicesVersion="0.8";function r(fA,M,aA,gA){var QA=A.isNodeKind(fA)?new t(fA,M,aA):fA===79?new B(79,M,aA):fA===80?new m(80,M,aA):new p(fA,M,aA);return QA.parent=gA,QA.flags=gA.flags&50720768,QA}var t=function(){function fA(M,aA,gA){this.pos=aA,this.end=gA,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.kind=M}return fA.prototype.assertHasRealPosition=function(M){A.Debug.assert(!A.positionIsSynthesized(this.pos)&&!A.positionIsSynthesized(this.end),M||"Node must have a real position for this operation")},fA.prototype.getSourceFile=function(){return A.getSourceFileOfNode(this)},fA.prototype.getStart=function(M,aA){return this.assertHasRealPosition(),A.getTokenPosOfNode(this,M,aA)},fA.prototype.getFullStart=function(){return this.assertHasRealPosition(),this.pos},fA.prototype.getEnd=function(){return this.assertHasRealPosition(),this.end},fA.prototype.getWidth=function(M){return this.assertHasRealPosition(),this.getEnd()-this.getStart(M)},fA.prototype.getFullWidth=function(){return this.assertHasRealPosition(),this.end-this.pos},fA.prototype.getLeadingTriviaWidth=function(M){return this.assertHasRealPosition(),this.getStart(M)-this.pos},fA.prototype.getFullText=function(M){return this.assertHasRealPosition(),(M||this.getSourceFile()).text.substring(this.pos,this.end)},fA.prototype.getText=function(M){return this.assertHasRealPosition(),M||(M=this.getSourceFile()),M.text.substring(this.getStart(M),this.getEnd())},fA.prototype.getChildCount=function(M){return this.getChildren(M).length},fA.prototype.getChildAt=function(M,aA){return this.getChildren(aA)[M]},fA.prototype.getChildren=function(M){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),this._children||(this._children=i(this,M))},fA.prototype.getFirstToken=function(M){this.assertHasRealPosition();var aA=this.getChildren(M);if(aA.length){var gA=A.find(aA,function(QA){return QA.kind<312||QA.kind>350});return gA.kind<163?gA:gA.getFirstToken(M)}},fA.prototype.getLastToken=function(M){this.assertHasRealPosition();var aA=this.getChildren(M),gA=A.lastOrUndefined(aA);if(gA)return gA.kind<163?gA:gA.getLastToken(M)},fA.prototype.forEachChild=function(M,aA){return A.forEachChild(this,M,aA)},fA}();function i(fA,M){if(!A.isNodeKind(fA.kind))return A.emptyArray;var aA=[];if(A.isJSDocCommentContainingNode(fA))return fA.forEachChild(function(FA){aA.push(FA)}),aA;A.scanner.setText((M||fA.getSourceFile()).text);var gA=fA.pos,QA=function(FA){o(aA,gA,FA.pos,fA),aA.push(FA),gA=FA.end},mA=function(FA){o(aA,gA,FA.pos,fA),aA.push(s(FA,fA)),gA=FA.end};return A.forEach(fA.jsDoc,QA),gA=fA.pos,fA.forEachChild(QA,mA),o(aA,gA,fA.end,fA),A.scanner.setText(void 0),aA}function o(fA,M,aA,gA){for(A.scanner.setTextPos(M);M=QA.length&&(mA=this.getEnd()),mA||(mA=QA[gA+1]-1);var FA=this.getFullText();return FA[mA]===` -`&&FA[mA-1]==="\r"?mA-1:mA},M.prototype.getNamedDeclarations=function(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations},M.prototype.computeNamedDeclarations=function(){var aA=A.createMultiMap();return this.forEachChild(FA),aA;function gA(SA){var ce=mA(SA);ce&&aA.add(ce,SA)}function QA(SA){var ce=aA.get(SA);return ce||aA.set(SA,ce=[]),ce}function mA(SA){var ce=A.getNonAssignedNameOfDeclaration(SA);return ce&&(A.isComputedPropertyName(ce)&&A.isPropertyAccessExpression(ce.expression)?ce.expression.name.text:A.isPropertyName(ce)?A.getNameFromPropertyName(ce):void 0)}function FA(SA){switch(SA.kind){case 259:case 215:case 171:case 170:var ce=SA,re=mA(ce);if(re){var KA=QA(re),$A=A.lastOrUndefined(KA);$A&&ce.parent===$A.parent&&ce.symbol===$A.symbol?ce.body&&!$A.body&&(KA[KA.length-1]=ce):KA.push(ce)}A.forEachChild(SA,FA);break;case 260:case 228:case 261:case 262:case 263:case 264:case 268:case 278:case 273:case 270:case 271:case 174:case 175:case 184:gA(SA),A.forEachChild(SA,FA);break;case 166:if(!A.hasSyntacticModifier(SA,16476))break;case 257:case 205:{var jA=SA;if(A.isBindingPattern(jA.name)){A.forEachChild(jA.name,FA);break}jA.initializer&&FA(jA.initializer)}case 302:case 169:case 168:gA(SA);break;case 275:var ue=SA;ue.exportClause&&(A.isNamedExports(ue.exportClause)?A.forEach(ue.exportClause.elements,FA):FA(ue.exportClause.name));break;case 269:var MA=SA.importClause;MA&&(MA.name&&gA(MA.name),MA.namedBindings&&(MA.namedBindings.kind===271?gA(MA.namedBindings):A.forEach(MA.namedBindings.elements,FA)));break;case 223:A.getAssignmentDeclarationKind(SA)!==0&&gA(SA);default:A.forEachChild(SA,FA)}}},M}(t),v=function(){function fA(M,aA,gA){this.fileName=M,this.text=aA,this.skipTrivia=gA}return fA.prototype.getLineAndCharacterOfPosition=function(M){return A.getLineAndCharacterOfPosition(this,M)},fA}();function F(){return{getNodeConstructor:function(){return t},getTokenConstructor:function(){return p},getIdentifierConstructor:function(){return B},getPrivateIdentifierConstructor:function(){return m},getSourceFileConstructor:function(){return T},getSymbolConstructor:function(){return E},getTypeConstructor:function(){return _},getSignatureConstructor:function(){return x},getSourceMapSourceConstructor:function(){return v}}}function y(fA){var M=!0;for(var aA in fA)if(A.hasProperty(fA,aA)&&!S(aA)){M=!1;break}if(M)return fA;var gA={};for(var aA in fA)if(A.hasProperty(fA,aA)){var QA=S(aA)?aA:aA.charAt(0).toLowerCase()+aA.substr(1);gA[QA]=fA[aA]}return gA}A.toEditorSettings=y;function S(fA){return!fA.length||fA.charAt(0)===fA.charAt(0).toLowerCase()}function U(fA){return fA?A.map(fA,function(M){return M.text}).join(""):""}A.displayPartsToString=U;function V(){return{target:1,jsx:1}}A.getDefaultCompilerOptions=V;function wA(){return A.codefix.getSupportedErrorCodes()}A.getSupportedCodeFixes=wA;var IA=function(){function fA(M){this.host=M}return fA.prototype.getCurrentSourceFile=function(M){var aA,gA,QA,mA,FA,SA,ce,re,KA=this.host.getScriptSnapshot(M);if(!KA)throw new Error("Could not find file: '"+M+"'.");var $A=A.getScriptKind(M,this.host),jA=this.host.getScriptVersion(M),ue;if(this.currentFileName!==M){var MA={languageVersion:99,impliedNodeFormat:A.getImpliedNodeFormatForFile(A.toPath(M,this.host.getCurrentDirectory(),((QA=(gA=(aA=this.host).getCompilerHost)===null||gA===void 0?void 0:gA.call(aA))===null||QA===void 0?void 0:QA.getCanonicalFileName)||A.hostGetCanonicalFileName(this.host)),(re=(ce=(SA=(FA=(mA=this.host).getCompilerHost)===null||FA===void 0?void 0:FA.call(mA))===null||SA===void 0?void 0:SA.getModuleResolutionCache)===null||ce===void 0?void 0:ce.call(SA))===null||re===void 0?void 0:re.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:A.getSetExternalModuleIndicator(this.host.getCompilationSettings())};ue=oA(M,KA,MA,jA,!0,$A)}else if(this.currentFileVersion!==jA){var RA=KA.getChangeRange(this.currentFileScriptSnapshot);ue=cA(this.currentSourceFile,KA,jA,RA)}return ue&&(this.currentFileVersion=jA,this.currentFileName=M,this.currentFileScriptSnapshot=KA,this.currentSourceFile=ue),this.currentSourceFile},fA}();function pA(fA,M,aA){fA.version=aA,fA.scriptSnapshot=M}function oA(fA,M,aA,gA,QA,mA){var FA=A.createSourceFile(fA,A.getSnapshotText(M),aA,QA,mA);return pA(FA,M,gA),FA}A.createLanguageServiceSourceFile=oA;function cA(fA,M,aA,gA,QA){if(gA&&aA!==fA.version){var mA=void 0,FA=gA.span.start!==0?fA.text.substr(0,gA.span.start):"",SA=A.textSpanEnd(gA.span)!==fA.text.length?fA.text.substr(A.textSpanEnd(gA.span)):"";if(gA.newLength===0)mA=FA&&SA?FA+SA:FA||SA;else{var ce=M.getText(gA.span.start,gA.span.start+gA.newLength);mA=FA&&SA?FA+ce+SA:FA?FA+ce:ce+SA}var re=A.updateSourceFile(fA,mA,gA,QA);return pA(re,M,aA),re.nameTable=void 0,fA!==re&&fA.scriptSnapshot&&(fA.scriptSnapshot.dispose&&fA.scriptSnapshot.dispose(),fA.scriptSnapshot=void 0),re}var KA={languageVersion:fA.languageVersion,impliedNodeFormat:fA.impliedNodeFormat,setExternalModuleIndicator:fA.setExternalModuleIndicator};return oA(fA.fileName,M,KA,aA,!0,fA.scriptKind)}A.updateLanguageServiceSourceFile=cA;var eA={isCancellationRequested:A.returnFalse,throwIfCancellationRequested:A.noop},Y=function(){function fA(M){this.cancellationToken=M}return fA.prototype.isCancellationRequested=function(){return this.cancellationToken.isCancellationRequested()},fA.prototype.throwIfCancellationRequested=function(){if(this.isCancellationRequested())throw A.tracing===null||A.tracing===void 0||A.tracing.instant("session","cancellationThrown",{kind:"CancellationTokenObject"}),new A.OperationCanceledException},fA}(),q=function(){function fA(M,aA){aA===void 0&&(aA=20),this.hostCancellationToken=M,this.throttleWaitMilliseconds=aA,this.lastCancellationCheckTime=0}return fA.prototype.isCancellationRequested=function(){var M=A.timestamp(),aA=Math.abs(M-this.lastCancellationCheckTime);return aA>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=M,this.hostCancellationToken.isCancellationRequested()):!1},fA.prototype.throwIfCancellationRequested=function(){if(this.isCancellationRequested())throw A.tracing===null||A.tracing===void 0||A.tracing.instant("session","cancellationThrown",{kind:"ThrottledCancellationToken"}),new A.OperationCanceledException},fA}();A.ThrottledCancellationToken=q;var X=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints"],Z=dt(dt([],X,!0),["getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getOccurrencesAtPosition","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors"],!1);function K(fA,M,aA){var gA,QA;M===void 0&&(M=A.createDocumentRegistry(fA.useCaseSensitiveFileNames&&fA.useCaseSensitiveFileNames(),fA.getCurrentDirectory()));var mA;aA===void 0?mA=A.LanguageServiceMode.Semantic:typeof aA=="boolean"?mA=aA?A.LanguageServiceMode.Syntactic:A.LanguageServiceMode.Semantic:mA=aA;var FA=new IA(fA),SA,ce,re=0,KA=fA.getCancellationToken?new Y(fA.getCancellationToken()):eA,$A=fA.getCurrentDirectory();A.maybeSetLocalizedDiagnosticMessages((QA=fA.getLocalizedDiagnosticMessages)===null||QA===void 0?void 0:QA.bind(fA));function jA(Dr){fA.log&&fA.log(Dr)}var ue=A.hostUsesCaseSensitiveFileNames(fA),MA=A.createGetCanonicalFileName(ue),RA=A.getSourceMapper({useCaseSensitiveFileNames:function(){return ue},getCurrentDirectory:function(){return $A},getProgram:N,fileExists:A.maybeBind(fA,fA.fileExists),readFile:A.maybeBind(fA,fA.readFile),getDocumentPositionMapper:A.maybeBind(fA,fA.getDocumentPositionMapper),getSourceFileLike:A.maybeBind(fA,fA.getSourceFileLike),log:jA});function lA(Dr){var Jr=SA.getSourceFile(Dr);if(!Jr){var Yr=new Error("Could not find source file: '".concat(Dr,"'."));throw Yr.ProgramFiles=SA.getSourceFiles().map(function(rt){return rt.fileName}),Yr}return Jr}function tA(){var Dr,Jr,Yr;if(A.Debug.assert(mA!==A.LanguageServiceMode.Syntactic),fA.getProjectVersion){var rt=fA.getProjectVersion();if(rt){if(ce===rt&&!(!((Dr=fA.hasChangedAutomaticTypeDirectiveNames)===null||Dr===void 0)&&Dr.call(fA)))return;ce=rt}}var Bt=fA.getTypeRootsVersion?fA.getTypeRootsVersion():0;re!==Bt&&(jA("TypeRoots version has changed; provide new program"),SA=void 0,re=Bt);var le=fA.getScriptFileNames().slice(),Ir=fA.getCompilationSettings()||V(),ut=fA.hasInvalidatedResolutions||A.returnFalse,Ii=A.maybeBind(fA,fA.hasChangedAutomaticTypeDirectiveNames),Zi=(Jr=fA.getProjectReferences)===null||Jr===void 0?void 0:Jr.call(fA),yi,zt={getSourceFile:yo,getSourceFileByPath:va,getCancellationToken:function(){return KA},getCanonicalFileName:MA,useCaseSensitiveFileNames:function(){return ue},getNewLine:function(){return A.getNewLineCharacter(Ir,function(){return A.getNewLineOrDefaultFromHost(fA)})},getDefaultLibFileName:function(wi){return fA.getDefaultLibFileName(wi)},writeFile:A.noop,getCurrentDirectory:function(){return $A},fileExists:function(wi){return fA.fileExists(wi)},readFile:function(wi){return fA.readFile&&fA.readFile(wi)},getSymlinkCache:A.maybeBind(fA,fA.getSymlinkCache),realpath:A.maybeBind(fA,fA.realpath),directoryExists:function(wi){return A.directoryProbablyExists(wi,fA)},getDirectories:function(wi){return fA.getDirectories?fA.getDirectories(wi):[]},readDirectory:function(wi,bi,ao,Bo,Uo){return A.Debug.checkDefined(fA.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),fA.readDirectory(wi,bi,ao,Bo,Uo)},onReleaseOldSourceFile:_a,onReleaseParsedCommandLine:Ho,hasInvalidatedResolutions:ut,hasChangedAutomaticTypeDirectiveNames:Ii,trace:A.maybeBind(fA,fA.trace),resolveModuleNames:A.maybeBind(fA,fA.resolveModuleNames),getModuleResolutionCache:A.maybeBind(fA,fA.getModuleResolutionCache),resolveTypeReferenceDirectives:A.maybeBind(fA,fA.resolveTypeReferenceDirectives),useSourceOfProjectReferenceRedirect:A.maybeBind(fA,fA.useSourceOfProjectReferenceRedirect),getParsedCommandLine:Wn},cn=zt.getSourceFile,Ui=A.changeCompilerHostLikeToUseCache(zt,function(wi){return A.toPath(wi,$A,MA)},function(){for(var wi=[],bi=0;bi")};var le=rt.kind===31&&A.isJsxOpeningFragment(rt.parent)?rt.parent.parent:A.isJsxText(rt)&&A.isJsxFragment(rt.parent)?rt.parent:void 0;if(le&>(le))return{newText:""}}}function Xe(Dr,Jr){return{lineStarts:Dr.getLineStarts(),firstLine:Dr.getLineAndCharacterOfPosition(Jr.pos).line,lastLine:Dr.getLineAndCharacterOfPosition(Jr.end).line}}function or(Dr,Jr,Yr){for(var rt=FA.getCurrentSourceFile(Dr),Bt=[],le=Xe(rt,Jr),Ir=le.lineStarts,ut=le.firstLine,Ii=le.lastLine,Zi=Yr||!1,yi=Number.MAX_VALUE,zt=new A.Map,cn=new RegExp(/\S/),Ui=A.isInsideJsxElement(rt,Ir[ut]),Mi=Ui?"{/*":"//",yt=ut;yt<=Ii;yt++){var Ya=rt.text.substring(Ir[yt],rt.getLineEndOfPosition(Ir[yt])),Wn=cn.exec(Ya);Wn&&(yi=Math.min(yi,Wn.index),zt.set(yt.toString(),Wn.index),Ya.substr(Wn.index,Mi.length)!==Mi&&(Zi=Yr===void 0||Yr))}for(var yt=ut;yt<=Ii;yt++)if(!(ut!==Ii&&Ir[yt]===Jr.end)){var jn=zt.get(yt.toString());jn!==void 0&&(Ui?Bt.push.apply(Bt,Mr(Dr,{pos:Ir[yt]+yi,end:rt.getLineEndOfPosition(Ir[yt])},Zi,Ui)):Zi?Bt.push({newText:Mi,span:{length:0,start:Ir[yt]+yi}}):rt.text.substr(Ir[yt]+jn,Mi.length)===Mi&&Bt.push({newText:"",span:{length:Mi.length,start:Ir[yt]+jn}}))}return Bt}function Mr(Dr,Jr,Yr,rt){for(var Bt,le=FA.getCurrentSourceFile(Dr),Ir=[],ut=le.text,Ii=!1,Zi=Yr||!1,yi=[],zt=Jr.pos,cn=rt!==void 0?rt:A.isInsideJsxElement(le,zt),Ui=cn?"{/*":"/*",Mi=cn?"*/}":"*/",yt=cn?"\\{\\/\\*":"\\/\\*",Ya=cn?"\\*\\/\\}":"\\*\\/";zt<=Jr.end;){var Wn=ut.substr(zt,Ui.length)===Ui?Ui.length:0,jn=A.isInComment(le,zt+Wn);if(jn)cn&&(jn.pos--,jn.end++),yi.push(jn.pos),jn.kind===3&&yi.push(jn.end),Ii=!0,zt=jn.end+1;else{var Ho=ut.substring(zt,Jr.end).search("(".concat(yt,")|(").concat(Ya,")"));Zi=Yr!==void 0?Yr:Zi||!A.isTextWhiteSpaceLike(ut,zt,Ho===-1?Jr.end:zt+Ho),zt=Ho===-1?Jr.end+1:zt+Ho+Mi.length}}if(Zi||!Ii){((Bt=A.isInComment(le,Jr.pos))===null||Bt===void 0?void 0:Bt.kind)!==2&&A.insertSorted(yi,Jr.pos,A.compareValues),A.insertSorted(yi,Jr.end,A.compareValues);var _a=yi[0];ut.substr(_a,Ui.length)!==Ui&&Ir.push({newText:Ui,span:{length:0,start:_a}});for(var yo=1;yo0?bi-Mi.length:0,Wn=ut.substr(ao,Mi.length)===Mi?Mi.length:0;Ir.push({newText:"",span:{length:Ui.length,start:bi-Wn}})}return Ir}function ar(Dr,Jr){var Yr=FA.getCurrentSourceFile(Dr),rt=Xe(Yr,Jr),Bt=rt.firstLine,le=rt.lastLine;return Bt===le&&Jr.pos!==Jr.end?Mr(Dr,Jr,!0):or(Dr,Jr,!0)}function lt(Dr,Jr){var Yr=FA.getCurrentSourceFile(Dr),rt=[],Bt=Jr.pos,le=Jr.end;Bt===le&&(le+=A.isInsideJsxElement(Yr,Bt)?2:1);for(var Ir=Bt;Ir<=le;Ir++){var ut=A.isInComment(Yr,Ir);if(ut){switch(ut.kind){case 2:rt.push.apply(rt,or(Dr,{end:ut.end,pos:ut.pos+1},!1));break;case 3:rt.push.apply(rt,Mr(Dr,{end:ut.end,pos:ut.pos+1},!1))}Ir=ut.end+1}}return rt}function Lr(Dr){var Jr=Dr.openingElement,Yr=Dr.closingElement,rt=Dr.parent;return!A.tagNamesAreEquivalent(Jr.tagName,Yr.tagName)||A.isJsxElement(rt)&&A.tagNamesAreEquivalent(Jr.tagName,rt.openingElement.tagName)&&Lr(rt)}function gt(Dr){var Jr=Dr.closingFragment,Yr=Dr.parent;return!!(Jr.flags&131072)||A.isJsxFragment(Yr)&>(Yr)}function Pr(Dr,Jr,Yr){var rt=FA.getCurrentSourceFile(Dr),Bt=A.formatting.getRangeOfEnclosingComment(rt,Jr);return Bt&&(!Yr||Bt.kind===3)?A.createTextSpanFromRange(Bt):void 0}function Et(Dr,Jr){tA();var Yr=lA(Dr);KA.throwIfCancellationRequested();var rt=Yr.text,Bt=[];if(Jr.length>0&&!Ya(Yr.fileName))for(var le=Mi(),Ir=void 0;Ir=le.exec(rt);){KA.throwIfCancellationRequested();var ut=3;A.Debug.assert(Ir.length===Jr.length+ut);var Ii=Ir[1],Zi=Ir.index+Ii.length;if(A.isInComment(Yr,Zi)){for(var yi=void 0,zt=0;zt=97&&Wn<=122||Wn>=65&&Wn<=90||Wn>=48&&Wn<=57}function Ya(Wn){return A.stringContains(Wn,"/node_modules/")}}function Zt(Dr,Jr,Yr){return tA(),A.Rename.getRenameInfo(SA,lA(Dr),Jr,Yr||{})}function Ot(Dr,Jr,Yr,rt,Bt,le){var Ir=typeof Jr=="number"?[Jr,void 0]:[Jr.pos,Jr.end],ut=Ir[0],Ii=Ir[1];return{file:Dr,startPosition:ut,endPosition:Ii,program:N(),host:fA,formatContext:A.formatting.getFormatContext(rt,fA),cancellationToken:KA,preferences:Yr,triggerReason:Bt,kind:le}}function _i(Dr,Jr,Yr){return{file:Dr,program:N(),host:fA,span:Jr,preferences:Yr,cancellationToken:KA}}function ei(Dr,Jr){return A.SmartSelectionRange.getSmartSelectionRange(Jr,FA.getCurrentSourceFile(Dr))}function Yt(Dr,Jr,Yr,rt,Bt){Yr===void 0&&(Yr=A.emptyOptions),tA();var le=lA(Dr);return A.refactor.getApplicableRefactors(Ot(le,Jr,Yr,A.emptyOptions,rt,Bt))}function Xr(Dr,Jr,Yr,rt,Bt,le){le===void 0&&(le=A.emptyOptions),tA();var Ir=lA(Dr);return A.refactor.getEditsForRefactor(Ot(Ir,Yr,le,Jr),rt,Bt)}function JA(Dr,Jr){return Jr===0?{line:0,character:0}:RA.toLineColumnOffset(Dr,Jr)}function Ve(Dr,Jr){tA();var Yr=A.CallHierarchy.resolveCallHierarchyDeclaration(SA,A.getTouchingPropertyName(lA(Dr),Jr));return Yr&&A.mapOneOrMany(Yr,function(rt){return A.CallHierarchy.createCallHierarchyItem(SA,rt)})}function XA(Dr,Jr){tA();var Yr=lA(Dr),rt=A.firstOrOnly(A.CallHierarchy.resolveCallHierarchyDeclaration(SA,Jr===0?Yr:A.getTouchingPropertyName(Yr,Jr)));return rt?A.CallHierarchy.getIncomingCalls(SA,rt,KA):[]}function Gr(Dr,Jr){tA();var Yr=lA(Dr),rt=A.firstOrOnly(A.CallHierarchy.resolveCallHierarchyDeclaration(SA,Jr===0?Yr:A.getTouchingPropertyName(Yr,Jr)));return rt?A.CallHierarchy.getOutgoingCalls(SA,rt):[]}function ot(Dr,Jr,Yr){Yr===void 0&&(Yr=A.emptyOptions),tA();var rt=lA(Dr);return A.InlayHints.provideInlayHints(_i(rt,Jr,Yr))}var Sr={dispose:TA,cleanupSemanticCache:bA,getSyntacticDiagnostics:VA,getSemanticDiagnostics:De,getSuggestionDiagnostics:_e,getCompilerOptionsDiagnostics:Ae,getSyntacticClassifications:Or,getSemanticClassifications:Ge,getEncodedSyntacticClassifications:tr,getEncodedSemanticClassifications:nr,getCompletionsAtPosition:Q,getCompletionEntryDetails:Ze,getCompletionEntrySymbol:Cr,getSignatureHelpItems:er,getQuickInfoAtPosition:be,getDefinitionAtPosition:ir,getDefinitionAndBoundSpan:Ye,getImplementationAtPosition:$e,getTypeDefinitionAtPosition:mr,getReferencesAtPosition:LA,findReferences:We,getFileReferences:YA,getOccurrencesAtPosition:xr,getDocumentHighlights:PA,getNameOrDottedNameSpan:hr,getBreakpointStatementAtPosition:Fr,getNavigateToItems:Ce,getRenameInfo:Zt,getSmartSelectionRange:ei,findRenameLocations:we,getNavigationBarItems:qA,getNavigationTree:oe,getOutliningSpans:Ur,getTodoComments:Et,getBraceMatchingAtPosition:ke,getIndentationAtPosition:Je,getFormattingEditsForRange:Ar,getFormattingEditsForDocument:fr,getFormattingEditsAfterKeystroke:te,getDocCommentTemplateAtPosition:ee,isValidBraceCompletionAtPosition:Pe,getJsxClosingTagAtPosition:He,getSpanOfEnclosingComment:Pr,getCodeFixesAtPosition:Te,getCombinedCodeFix:UA,applyCodeActionCommand:HA,organizeImports:Ee,getEditsForFileRename:de,getEmitOutput:Ke,getNonBoundSourceFile:ur,getProgram:N,getCurrentProgram:function(){return SA},getAutoImportProvider:nA,updateIsDefinitionOfReferencedSymbols:kA,getApplicableRefactors:Yt,getEditsForRefactor:Xr,toLineColumnOffset:JA,getSourceMapper:function(){return RA},clearSourceMapperCache:function(){return RA.clearCache()},prepareCallHierarchy:Ve,provideCallHierarchyIncomingCalls:XA,provideCallHierarchyOutgoingCalls:Gr,toggleLineComment:or,toggleMultilineComment:Mr,commentSelection:ar,uncommentSelection:lt,provideInlayHints:ot};switch(mA){case A.LanguageServiceMode.Semantic:break;case A.LanguageServiceMode.PartialSemantic:X.forEach(function(Dr){return Sr[Dr]=function(){throw new Error("LanguageService Operation: ".concat(Dr," not allowed in LanguageServiceMode.PartialSemantic"))}});break;case A.LanguageServiceMode.Syntactic:Z.forEach(function(Dr){return Sr[Dr]=function(){throw new Error("LanguageService Operation: ".concat(Dr," not allowed in LanguageServiceMode.Syntactic"))}});break;default:A.Debug.assertNever(mA)}return Sr}A.createLanguageService=K;function J(fA){return fA.nameTable||sA(fA),fA.nameTable}A.getNameTable=J;function sA(fA){var M=fA.nameTable=new A.Map;fA.forEachChild(function aA(gA){if(A.isIdentifier(gA)&&!A.isTagName(gA)&&gA.escapedText||A.isStringOrNumericLiteralLike(gA)&&uA(gA)){var QA=A.getEscapedTextOfIdentifierOrLiteral(gA);M.set(QA,M.get(QA)===void 0?gA.pos:-1)}else if(A.isPrivateIdentifier(gA)){var QA=gA.escapedText;M.set(QA,M.get(QA)===void 0?gA.pos:-1)}if(A.forEachChild(gA,aA),A.hasJSDocNodes(gA))for(var mA=0,FA=gA.jsDoc;mAE){var p=A.findPrecedingToken(g.pos,o);if(!p||o.getLineAndCharacterOfPosition(p.getEnd()).line!==E)return;g=p}if(g.flags&16777216)return;return P(g);function B(H,T){var v=A.canHaveDecorators(H)?A.findLast(H.modifiers,A.isDecorator):void 0,F=v?A.skipTrivia(o.text,v.end):H.getStart(o);return A.createTextSpanFromBounds(F,(T||H).getEnd())}function m(H,T){return B(H,A.findNextToken(T,T.parent,o))}function _(H,T){return H&&E===o.getLineAndCharacterOfPosition(H.getStart(o)).line?P(H):P(T)}function x(H,T,v){if(H){var F=H.indexOf(T);if(F>=0){for(var y=F,S=F+1;y>0&&v(H[y-1]);)y--;for(;S0)return P(aA.declarations[0])}else return P(M.initializer)}function Z(M){if(M.initializer)return X(M);if(M.condition)return B(M.condition);if(M.incrementor)return B(M.incrementor)}function K(M){var aA=A.forEach(M.elements,function(gA){return gA.kind!==229?gA:void 0});return aA?P(aA):M.parent.kind===205?B(M.parent):wA(M.parent)}function J(M){A.Debug.assert(M.kind!==204&&M.kind!==203);var aA=M.kind===206?M.elements:M.properties,gA=A.forEach(aA,function(QA){return QA.kind!==229?QA:void 0});return gA?P(gA):B(M.parent.kind===223?M.parent:M)}function sA(M){switch(M.parent.kind){case 263:var aA=M.parent;return _(A.findPrecedingToken(M.pos,o,M.parent),aA.members.length?aA.members[0]:aA.getLastToken(o));case 260:var gA=M.parent;return _(A.findPrecedingToken(M.pos,o,M.parent),gA.members.length?gA.members[0]:gA.getLastToken(o));case 266:return _(M.parent.parent,M.parent.clauses[0])}return P(M.parent)}function uA(M){switch(M.parent.kind){case 265:if(A.getModuleInstanceState(M.parent.parent)!==1)return;case 263:case 260:return B(M);case 238:if(A.isFunctionBlock(M.parent))return B(M);case 295:return P(A.lastOrUndefined(M.parent.statements));case 266:var aA=M.parent,gA=A.lastOrUndefined(aA.clauses);return gA?P(A.lastOrUndefined(gA.statements)):void 0;case 203:var QA=M.parent;return P(A.lastOrUndefined(QA.elements)||QA);default:if(A.isArrayLiteralOrObjectLiteralDestructuringPattern(M.parent)){var mA=M.parent;return B(A.lastOrUndefined(mA.properties)||mA)}return P(M.parent)}}function BA(M){switch(M.parent.kind){case 204:var aA=M.parent;return B(A.lastOrUndefined(aA.elements)||aA);default:if(A.isArrayLiteralOrObjectLiteralDestructuringPattern(M.parent)){var gA=M.parent;return B(A.lastOrUndefined(gA.elements)||gA)}return P(M.parent)}}function CA(M){return M.parent.kind===243||M.parent.kind===210||M.parent.kind===211?O(M):M.parent.kind===214?k(M):P(M.parent)}function z(M){switch(M.parent.kind){case 215:case 259:case 216:case 171:case 170:case 174:case 175:case 173:case 244:case 243:case 245:case 247:case 210:case 211:case 214:return O(M);default:return P(M.parent)}}function AA(M){return A.isFunctionLike(M.parent)||M.parent.kind===299||M.parent.kind===166?O(M):P(M.parent)}function iA(M){return M.parent.kind===213?k(M):P(M.parent)}function _A(M){return M.parent.kind===243?m(M,M.parent.expression):P(M.parent)}function fA(M){return M.parent.kind===247?k(M):P(M.parent)}}}t.spanInSourceFileAtLocation=i})(r=A.BreakpointResolver||(A.BreakpointResolver={}))})(Oe||(Oe={}));var Oe;(function(A){function r(t,i,o){var s=[];o=A.fixupCompilerOptions(o,s);var g=A.isArray(t)?t:[t],E=A.transformNodes(void 0,void 0,A.factory,o,g,i,!0);return E.diagnostics=A.concatenate(E.diagnostics,s),E}A.transform=r})(Oe||(Oe={}));var yhA=function(){return this}(),Oe;(function(A){function r(H,T){H&&H.log("*INTERNAL ERROR* - Exception in typescript services: "+T.message)}var t=function(){function H(T){this.scriptSnapshotShim=T}return H.prototype.getText=function(T,v){return this.scriptSnapshotShim.getText(T,v)},H.prototype.getLength=function(){return this.scriptSnapshotShim.getLength()},H.prototype.getChangeRange=function(T){var v=T,F=this.scriptSnapshotShim.getChangeRange(v.scriptSnapshotShim);if(F===null)return null;var y=JSON.parse(F);return A.createTextChangeRange(A.createTextSpan(y.span.start,y.span.length),y.newLength)},H.prototype.dispose=function(){"dispose"in this.scriptSnapshotShim&&this.scriptSnapshotShim.dispose()},H}(),i=function(){function H(T){var v=this;this.shimHost=T,this.loggingEnabled=!1,this.tracingEnabled=!1,"getModuleResolutionsForFile"in this.shimHost&&(this.resolveModuleNames=function(F,y){var S=JSON.parse(v.shimHost.getModuleResolutionsForFile(y));return A.map(F,function(U){var V=A.getProperty(S,U);return V?{resolvedFileName:V,extension:A.extensionFromPath(V),isExternalLibraryImport:!1}:void 0})}),"directoryExists"in this.shimHost&&(this.directoryExists=function(F){return v.shimHost.directoryExists(F)}),"getTypeReferenceDirectiveResolutionsForFile"in this.shimHost&&(this.resolveTypeReferenceDirectives=function(F,y){var S=JSON.parse(v.shimHost.getTypeReferenceDirectiveResolutionsForFile(y));return A.map(F,function(U){return A.getProperty(S,A.isString(U)?U:U.fileName.toLowerCase())})})}return H.prototype.log=function(T){this.loggingEnabled&&this.shimHost.log(T)},H.prototype.trace=function(T){this.tracingEnabled&&this.shimHost.trace(T)},H.prototype.error=function(T){this.shimHost.error(T)},H.prototype.getProjectVersion=function(){if(this.shimHost.getProjectVersion)return this.shimHost.getProjectVersion()},H.prototype.getTypeRootsVersion=function(){return this.shimHost.getTypeRootsVersion?this.shimHost.getTypeRootsVersion():0},H.prototype.useCaseSensitiveFileNames=function(){return this.shimHost.useCaseSensitiveFileNames?this.shimHost.useCaseSensitiveFileNames():!1},H.prototype.getCompilationSettings=function(){var T=this.shimHost.getCompilationSettings();if(T===null||T==="")throw Error("LanguageServiceShimHostAdapter.getCompilationSettings: empty compilationSettings");var v=JSON.parse(T);return v.allowNonTsExtensions=!0,v},H.prototype.getScriptFileNames=function(){var T=this.shimHost.getScriptFileNames();return JSON.parse(T)},H.prototype.getScriptSnapshot=function(T){var v=this.shimHost.getScriptSnapshot(T);return v&&new t(v)},H.prototype.getScriptKind=function(T){return"getScriptKind"in this.shimHost?this.shimHost.getScriptKind(T):0},H.prototype.getScriptVersion=function(T){return this.shimHost.getScriptVersion(T)},H.prototype.getLocalizedDiagnosticMessages=function(){var T=this.shimHost.getLocalizedDiagnosticMessages();if(T===null||T==="")return null;try{return JSON.parse(T)}catch(v){return this.log(v.description||"diagnosticMessages.generated.json has invalid JSON format"),null}},H.prototype.getCancellationToken=function(){var T=this.shimHost.getCancellationToken();return new A.ThrottledCancellationToken(T)},H.prototype.getCurrentDirectory=function(){return this.shimHost.getCurrentDirectory()},H.prototype.getDirectories=function(T){return JSON.parse(this.shimHost.getDirectories(T))},H.prototype.getDefaultLibFileName=function(T){return this.shimHost.getDefaultLibFileName(JSON.stringify(T))},H.prototype.readDirectory=function(T,v,F,y,S){var U=A.getFileMatcherPatterns(T,F,y,this.shimHost.useCaseSensitiveFileNames(),this.shimHost.getCurrentDirectory());return JSON.parse(this.shimHost.readDirectory(T,JSON.stringify(v),JSON.stringify(U.basePaths),U.excludePattern,U.includeFilePattern,U.includeDirectoryPattern,S))},H.prototype.readFile=function(T,v){return this.shimHost.readFile(T,v)},H.prototype.fileExists=function(T){return this.shimHost.fileExists(T)},H}();A.LanguageServiceShimHostAdapter=i;var o=function(){function H(T){var v=this;this.shimHost=T,this.useCaseSensitiveFileNames=this.shimHost.useCaseSensitiveFileNames?this.shimHost.useCaseSensitiveFileNames():!1,"directoryExists"in this.shimHost?this.directoryExists=function(F){return v.shimHost.directoryExists(F)}:this.directoryExists=void 0,"realpath"in this.shimHost?this.realpath=function(F){return v.shimHost.realpath(F)}:this.realpath=void 0}return H.prototype.readDirectory=function(T,v,F,y,S){var U=A.getFileMatcherPatterns(T,F,y,this.shimHost.useCaseSensitiveFileNames(),this.shimHost.getCurrentDirectory());return JSON.parse(this.shimHost.readDirectory(T,JSON.stringify(v),JSON.stringify(U.basePaths),U.excludePattern,U.includeFilePattern,U.includeDirectoryPattern,S))},H.prototype.fileExists=function(T){return this.shimHost.fileExists(T)},H.prototype.readFile=function(T){return this.shimHost.readFile(T)},H.prototype.getDirectories=function(T){return JSON.parse(this.shimHost.getDirectories(T))},H}();A.CoreServicesShimHostAdapter=o;function s(H,T,v,F){var y;F&&(H.log(T),y=A.timestamp());var S=v();if(F){var U=A.timestamp();if(H.log("".concat(T," completed in ").concat(U-y," msec")),A.isString(S)){var V=S;V.length>128&&(V=V.substring(0,128)+"..."),H.log(" result.length=".concat(V.length,", result='").concat(JSON.stringify(V),"'"))}}return S}function g(H,T,v,F){return E(H,T,!0,v,F)}function E(H,T,v,F,y){try{var S=s(H,T,F,y);return v?JSON.stringify({result:S}):S}catch(U){return U instanceof A.OperationCanceledException?JSON.stringify({canceled:!0}):(r(H,U),U.description=T,JSON.stringify({error:U}))}}var p=function(){function H(T){this.factory=T,T.registerShim(this)}return H.prototype.dispose=function(T){this.factory.unregisterShim(this)},H}();function B(H,T){return H.map(function(v){return m(v,T)})}A.realizeDiagnostics=B;function m(H,T){return{message:A.flattenDiagnosticMessageText(H.messageText,T),start:H.start,length:H.length,category:A.diagnosticCategoryName(H),code:H.code,reportsUnnecessary:H.reportsUnnecessary,reportsDeprecated:H.reportsDeprecated}}var _=function(H){q2(T,H);function T(v,F,y){var S=H.call(this,v)||this;return S.host=F,S.languageService=y,S.logPerformance=!1,S.logger=S.host,S}return T.prototype.forwardJSONCall=function(v,F){return g(this.logger,v,F,this.logPerformance)},T.prototype.dispose=function(v){this.logger.log("dispose()"),this.languageService.dispose(),this.languageService=null,yhA&&yhA.CollectGarbage&&(yhA.CollectGarbage(),this.logger.log("CollectGarbage()")),this.logger=null,H.prototype.dispose.call(this,v)},T.prototype.refresh=function(v){this.forwardJSONCall("refresh(".concat(v,")"),function(){return null})},T.prototype.cleanupSemanticCache=function(){var v=this;this.forwardJSONCall("cleanupSemanticCache()",function(){return v.languageService.cleanupSemanticCache(),null})},T.prototype.realizeDiagnostics=function(v){var F=A.getNewLineOrDefaultFromHost(this.host);return B(v,F)},T.prototype.getSyntacticClassifications=function(v,F,y){var S=this;return this.forwardJSONCall("getSyntacticClassifications('".concat(v,"', ").concat(F,", ").concat(y,")"),function(){return S.languageService.getSyntacticClassifications(v,A.createTextSpan(F,y))})},T.prototype.getSemanticClassifications=function(v,F,y){var S=this;return this.forwardJSONCall("getSemanticClassifications('".concat(v,"', ").concat(F,", ").concat(y,")"),function(){return S.languageService.getSemanticClassifications(v,A.createTextSpan(F,y))})},T.prototype.getEncodedSyntacticClassifications=function(v,F,y){var S=this;return this.forwardJSONCall("getEncodedSyntacticClassifications('".concat(v,"', ").concat(F,", ").concat(y,")"),function(){return x(S.languageService.getEncodedSyntacticClassifications(v,A.createTextSpan(F,y)))})},T.prototype.getEncodedSemanticClassifications=function(v,F,y){var S=this;return this.forwardJSONCall("getEncodedSemanticClassifications('".concat(v,"', ").concat(F,", ").concat(y,")"),function(){return x(S.languageService.getEncodedSemanticClassifications(v,A.createTextSpan(F,y)))})},T.prototype.getSyntacticDiagnostics=function(v){var F=this;return this.forwardJSONCall("getSyntacticDiagnostics('".concat(v,"')"),function(){var y=F.languageService.getSyntacticDiagnostics(v);return F.realizeDiagnostics(y)})},T.prototype.getSemanticDiagnostics=function(v){var F=this;return this.forwardJSONCall("getSemanticDiagnostics('".concat(v,"')"),function(){var y=F.languageService.getSemanticDiagnostics(v);return F.realizeDiagnostics(y)})},T.prototype.getSuggestionDiagnostics=function(v){var F=this;return this.forwardJSONCall("getSuggestionDiagnostics('".concat(v,"')"),function(){return F.realizeDiagnostics(F.languageService.getSuggestionDiagnostics(v))})},T.prototype.getCompilerOptionsDiagnostics=function(){var v=this;return this.forwardJSONCall("getCompilerOptionsDiagnostics()",function(){var F=v.languageService.getCompilerOptionsDiagnostics();return v.realizeDiagnostics(F)})},T.prototype.getQuickInfoAtPosition=function(v,F){var y=this;return this.forwardJSONCall("getQuickInfoAtPosition('".concat(v,"', ").concat(F,")"),function(){return y.languageService.getQuickInfoAtPosition(v,F)})},T.prototype.getNameOrDottedNameSpan=function(v,F,y){var S=this;return this.forwardJSONCall("getNameOrDottedNameSpan('".concat(v,"', ").concat(F,", ").concat(y,")"),function(){return S.languageService.getNameOrDottedNameSpan(v,F,y)})},T.prototype.getBreakpointStatementAtPosition=function(v,F){var y=this;return this.forwardJSONCall("getBreakpointStatementAtPosition('".concat(v,"', ").concat(F,")"),function(){return y.languageService.getBreakpointStatementAtPosition(v,F)})},T.prototype.getSignatureHelpItems=function(v,F,y){var S=this;return this.forwardJSONCall("getSignatureHelpItems('".concat(v,"', ").concat(F,")"),function(){return S.languageService.getSignatureHelpItems(v,F,y)})},T.prototype.getDefinitionAtPosition=function(v,F){var y=this;return this.forwardJSONCall("getDefinitionAtPosition('".concat(v,"', ").concat(F,")"),function(){return y.languageService.getDefinitionAtPosition(v,F)})},T.prototype.getDefinitionAndBoundSpan=function(v,F){var y=this;return this.forwardJSONCall("getDefinitionAndBoundSpan('".concat(v,"', ").concat(F,")"),function(){return y.languageService.getDefinitionAndBoundSpan(v,F)})},T.prototype.getTypeDefinitionAtPosition=function(v,F){var y=this;return this.forwardJSONCall("getTypeDefinitionAtPosition('".concat(v,"', ").concat(F,")"),function(){return y.languageService.getTypeDefinitionAtPosition(v,F)})},T.prototype.getImplementationAtPosition=function(v,F){var y=this;return this.forwardJSONCall("getImplementationAtPosition('".concat(v,"', ").concat(F,")"),function(){return y.languageService.getImplementationAtPosition(v,F)})},T.prototype.getRenameInfo=function(v,F,y){var S=this;return this.forwardJSONCall("getRenameInfo('".concat(v,"', ").concat(F,")"),function(){return S.languageService.getRenameInfo(v,F,y)})},T.prototype.getSmartSelectionRange=function(v,F){var y=this;return this.forwardJSONCall("getSmartSelectionRange('".concat(v,"', ").concat(F,")"),function(){return y.languageService.getSmartSelectionRange(v,F)})},T.prototype.findRenameLocations=function(v,F,y,S,U){var V=this;return this.forwardJSONCall("findRenameLocations('".concat(v,"', ").concat(F,", ").concat(y,", ").concat(S,", ").concat(U,")"),function(){return V.languageService.findRenameLocations(v,F,y,S,U)})},T.prototype.getBraceMatchingAtPosition=function(v,F){var y=this;return this.forwardJSONCall("getBraceMatchingAtPosition('".concat(v,"', ").concat(F,")"),function(){return y.languageService.getBraceMatchingAtPosition(v,F)})},T.prototype.isValidBraceCompletionAtPosition=function(v,F,y){var S=this;return this.forwardJSONCall("isValidBraceCompletionAtPosition('".concat(v,"', ").concat(F,", ").concat(y,")"),function(){return S.languageService.isValidBraceCompletionAtPosition(v,F,y)})},T.prototype.getSpanOfEnclosingComment=function(v,F,y){var S=this;return this.forwardJSONCall("getSpanOfEnclosingComment('".concat(v,"', ").concat(F,")"),function(){return S.languageService.getSpanOfEnclosingComment(v,F,y)})},T.prototype.getIndentationAtPosition=function(v,F,y){var S=this;return this.forwardJSONCall("getIndentationAtPosition('".concat(v,"', ").concat(F,")"),function(){var U=JSON.parse(y);return S.languageService.getIndentationAtPosition(v,F,U)})},T.prototype.getReferencesAtPosition=function(v,F){var y=this;return this.forwardJSONCall("getReferencesAtPosition('".concat(v,"', ").concat(F,")"),function(){return y.languageService.getReferencesAtPosition(v,F)})},T.prototype.findReferences=function(v,F){var y=this;return this.forwardJSONCall("findReferences('".concat(v,"', ").concat(F,")"),function(){return y.languageService.findReferences(v,F)})},T.prototype.getFileReferences=function(v){var F=this;return this.forwardJSONCall("getFileReferences('".concat(v,")"),function(){return F.languageService.getFileReferences(v)})},T.prototype.getOccurrencesAtPosition=function(v,F){var y=this;return this.forwardJSONCall("getOccurrencesAtPosition('".concat(v,"', ").concat(F,")"),function(){return y.languageService.getOccurrencesAtPosition(v,F)})},T.prototype.getDocumentHighlights=function(v,F,y){var S=this;return this.forwardJSONCall("getDocumentHighlights('".concat(v,"', ").concat(F,")"),function(){var U=S.languageService.getDocumentHighlights(v,F,JSON.parse(y)),V=A.toFileNameLowerCase(A.normalizeSlashes(v));return A.filter(U,function(wA){return A.toFileNameLowerCase(A.normalizeSlashes(wA.fileName))===V})})},T.prototype.getCompletionsAtPosition=function(v,F,y,S){var U=this;return this.forwardJSONCall("getCompletionsAtPosition('".concat(v,"', ").concat(F,", ").concat(y,", ").concat(S,")"),function(){return U.languageService.getCompletionsAtPosition(v,F,y,S)})},T.prototype.getCompletionEntryDetails=function(v,F,y,S,U,V,wA){var IA=this;return this.forwardJSONCall("getCompletionEntryDetails('".concat(v,"', ").concat(F,", '").concat(y,"')"),function(){var pA=S===void 0?void 0:JSON.parse(S);return IA.languageService.getCompletionEntryDetails(v,F,y,pA,U,V,wA)})},T.prototype.getFormattingEditsForRange=function(v,F,y,S){var U=this;return this.forwardJSONCall("getFormattingEditsForRange('".concat(v,"', ").concat(F,", ").concat(y,")"),function(){var V=JSON.parse(S);return U.languageService.getFormattingEditsForRange(v,F,y,V)})},T.prototype.getFormattingEditsForDocument=function(v,F){var y=this;return this.forwardJSONCall("getFormattingEditsForDocument('".concat(v,"')"),function(){var S=JSON.parse(F);return y.languageService.getFormattingEditsForDocument(v,S)})},T.prototype.getFormattingEditsAfterKeystroke=function(v,F,y,S){var U=this;return this.forwardJSONCall("getFormattingEditsAfterKeystroke('".concat(v,"', ").concat(F,", '").concat(y,"')"),function(){var V=JSON.parse(S);return U.languageService.getFormattingEditsAfterKeystroke(v,F,y,V)})},T.prototype.getDocCommentTemplateAtPosition=function(v,F,y){var S=this;return this.forwardJSONCall("getDocCommentTemplateAtPosition('".concat(v,"', ").concat(F,")"),function(){return S.languageService.getDocCommentTemplateAtPosition(v,F,y)})},T.prototype.getNavigateToItems=function(v,F,y){var S=this;return this.forwardJSONCall("getNavigateToItems('".concat(v,"', ").concat(F,", ").concat(y,")"),function(){return S.languageService.getNavigateToItems(v,F,y)})},T.prototype.getNavigationBarItems=function(v){var F=this;return this.forwardJSONCall("getNavigationBarItems('".concat(v,"')"),function(){return F.languageService.getNavigationBarItems(v)})},T.prototype.getNavigationTree=function(v){var F=this;return this.forwardJSONCall("getNavigationTree('".concat(v,"')"),function(){return F.languageService.getNavigationTree(v)})},T.prototype.getOutliningSpans=function(v){var F=this;return this.forwardJSONCall("getOutliningSpans('".concat(v,"')"),function(){return F.languageService.getOutliningSpans(v)})},T.prototype.getTodoComments=function(v,F){var y=this;return this.forwardJSONCall("getTodoComments('".concat(v,"')"),function(){return y.languageService.getTodoComments(v,JSON.parse(F))})},T.prototype.prepareCallHierarchy=function(v,F){var y=this;return this.forwardJSONCall("prepareCallHierarchy('".concat(v,"', ").concat(F,")"),function(){return y.languageService.prepareCallHierarchy(v,F)})},T.prototype.provideCallHierarchyIncomingCalls=function(v,F){var y=this;return this.forwardJSONCall("provideCallHierarchyIncomingCalls('".concat(v,"', ").concat(F,")"),function(){return y.languageService.provideCallHierarchyIncomingCalls(v,F)})},T.prototype.provideCallHierarchyOutgoingCalls=function(v,F){var y=this;return this.forwardJSONCall("provideCallHierarchyOutgoingCalls('".concat(v,"', ").concat(F,")"),function(){return y.languageService.provideCallHierarchyOutgoingCalls(v,F)})},T.prototype.provideInlayHints=function(v,F,y){var S=this;return this.forwardJSONCall("provideInlayHints('".concat(v,"', '").concat(JSON.stringify(F),"', ").concat(JSON.stringify(y),")"),function(){return S.languageService.provideInlayHints(v,F,y)})},T.prototype.getEmitOutput=function(v){var F=this;return this.forwardJSONCall("getEmitOutput('".concat(v,"')"),function(){var y=F.languageService.getEmitOutput(v),S=y.diagnostics,U=ChA(y,["diagnostics"]);return pi(pi({},U),{diagnostics:F.realizeDiagnostics(S)})})},T.prototype.getEmitOutputObject=function(v){var F=this;return E(this.logger,"getEmitOutput('".concat(v,"')"),!1,function(){return F.languageService.getEmitOutput(v)},this.logPerformance)},T.prototype.toggleLineComment=function(v,F){var y=this;return this.forwardJSONCall("toggleLineComment('".concat(v,"', '").concat(JSON.stringify(F),"')"),function(){return y.languageService.toggleLineComment(v,F)})},T.prototype.toggleMultilineComment=function(v,F){var y=this;return this.forwardJSONCall("toggleMultilineComment('".concat(v,"', '").concat(JSON.stringify(F),"')"),function(){return y.languageService.toggleMultilineComment(v,F)})},T.prototype.commentSelection=function(v,F){var y=this;return this.forwardJSONCall("commentSelection('".concat(v,"', '").concat(JSON.stringify(F),"')"),function(){return y.languageService.commentSelection(v,F)})},T.prototype.uncommentSelection=function(v,F){var y=this;return this.forwardJSONCall("uncommentSelection('".concat(v,"', '").concat(JSON.stringify(F),"')"),function(){return y.languageService.uncommentSelection(v,F)})},T}(p);function x(H){return{spans:H.spans.join(","),endOfLineState:H.endOfLineState}}var O=function(H){q2(T,H);function T(v,F){var y=H.call(this,v)||this;return y.logger=F,y.logPerformance=!1,y.classifier=A.createClassifier(),y}return T.prototype.getEncodedLexicalClassifications=function(v,F,y){var S=this;return y===void 0&&(y=!1),g(this.logger,"getEncodedLexicalClassifications",function(){return x(S.classifier.getEncodedLexicalClassifications(v,F,y))},this.logPerformance)},T.prototype.getClassificationsForLine=function(v,F,y){y===void 0&&(y=!1);for(var S=this.classifier.getClassificationsForLine(v,F,y),U="",V=0,wA=S.entries;V"u"&&(window.globalThis=window),delete Object.prototype.__magic__}catch{window.globalThis=window}})();(typeof process>"u"||process.browser)&&(globalThis.TypeScript=globalThis.TypeScript||{},globalThis.TypeScript.Services=globalThis.TypeScript.Services||{},globalThis.TypeScript.Services.TypeScriptServicesFactory=Oe.TypeScriptServicesFactory,globalThis.toolsVersion=Oe.versionMajorMinor);typeof hx<"u"&&hx.exports&&(hx.exports=Oe);var Oe;(function(A){function r(o,s,g,E){if(Object.defineProperty(O,"name",pi(pi({},Object.getOwnPropertyDescriptor(O,"name")),{value:o})),E)for(var p=0,B=Object.keys(E);p=1&&arguments.length<=3?A.factory.createVariableDeclaration(i,void 0,o,s):A.Debug.fail("Argument count mismatch")},r),A.updateVariableDeclaration=A.Debug.deprecate(function(i,o,s,g,E){return arguments.length===5?A.factory.updateVariableDeclaration(i,o,s,g,E):arguments.length===4?A.factory.updateVariableDeclaration(i,o,i.exclamationToken,s,g):A.Debug.fail("Argument count mismatch")},r),A.createImportClause=A.Debug.deprecate(function(i,o,s){return s===void 0&&(s=!1),A.factory.createImportClause(s,i,o)},r),A.updateImportClause=A.Debug.deprecate(function(i,o,s,g){return A.factory.updateImportClause(i,g,o,s)},r),A.createExportDeclaration=A.Debug.deprecate(function(i,o,s,g,E){return E===void 0&&(E=!1),A.factory.createExportDeclaration(i,o,E,s,g)},r),A.updateExportDeclaration=A.Debug.deprecate(function(i,o,s,g,E,p){return A.factory.updateExportDeclaration(i,o,s,p,g,E,i.assertClause)},r),A.createJSDocParamTag=A.Debug.deprecate(function(i,o,s,g){return A.factory.createJSDocParameterTag(void 0,i,o,s,!1,g?A.factory.createNodeArray([A.factory.createJSDocText(g)]):void 0)},r),A.createComma=A.Debug.deprecate(function(i,o){return A.factory.createComma(i,o)},r),A.createLessThan=A.Debug.deprecate(function(i,o){return A.factory.createLessThan(i,o)},r),A.createAssignment=A.Debug.deprecate(function(i,o){return A.factory.createAssignment(i,o)},r),A.createStrictEquality=A.Debug.deprecate(function(i,o){return A.factory.createStrictEquality(i,o)},r),A.createStrictInequality=A.Debug.deprecate(function(i,o){return A.factory.createStrictInequality(i,o)},r),A.createAdd=A.Debug.deprecate(function(i,o){return A.factory.createAdd(i,o)},r),A.createSubtract=A.Debug.deprecate(function(i,o){return A.factory.createSubtract(i,o)},r),A.createLogicalAnd=A.Debug.deprecate(function(i,o){return A.factory.createLogicalAnd(i,o)},r),A.createLogicalOr=A.Debug.deprecate(function(i,o){return A.factory.createLogicalOr(i,o)},r),A.createPostfixIncrement=A.Debug.deprecate(function(i){return A.factory.createPostfixIncrement(i)},r),A.createLogicalNot=A.Debug.deprecate(function(i){return A.factory.createLogicalNot(i)},r),A.createNode=A.Debug.deprecate(function(i,o,s){return o===void 0&&(o=0),s===void 0&&(s=0),A.setTextRangePosEnd(i===308?A.parseBaseNodeFactory.createBaseSourceFileNode(i):i===79?A.parseBaseNodeFactory.createBaseIdentifierNode(i):i===80?A.parseBaseNodeFactory.createBasePrivateIdentifierNode(i):A.isNodeKind(i)?A.parseBaseNodeFactory.createBaseNode(i):A.parseBaseNodeFactory.createBaseTokenNode(i),o,s)},{since:"4.0",warnAfter:"4.1",message:"Use an appropriate `factory` method instead."}),A.getMutableClone=A.Debug.deprecate(function(i){var o=A.factory.cloneNode(i);return A.setTextRange(o,i),A.setParent(o,i.parent),o},{since:"4.0",warnAfter:"4.1",message:"Use an appropriate `factory.update...` method instead, use `setCommentRange` or `setSourceMapRange`, and avoid setting `parent`."})})(Oe||(Oe={}));var Oe;(function(A){A.isTypeAssertion=A.Debug.deprecate(function(t){return t.kind===213},{since:"4.0",warnAfter:"4.1",message:"Use `isTypeAssertionExpression` instead."})})(Oe||(Oe={}));var Oe;(function(A){A.isIdentifierOrPrivateIdentifier=A.Debug.deprecate(function(t){return A.isMemberName(t)},{since:"4.2",warnAfter:"4.3",message:"Use `isMemberName` instead."})})(Oe||(Oe={}));var Oe;(function(A){function r(i){var o=i.createConstructorTypeNode,s=i.updateConstructorTypeNode;i.createConstructorTypeNode=A.buildOverload("createConstructorTypeNode").overload({0:function(g,E,p,B){return o(g,E,p,B)},1:function(g,E,p){return o(void 0,g,E,p)}}).bind({0:function(g){return g.length===4},1:function(g){return g.length===3}}).deprecate({1:{since:"4.2",warnAfter:"4.3",message:"Use the overload that accepts 'modifiers'"}}).finish(),i.updateConstructorTypeNode=A.buildOverload("updateConstructorTypeNode").overload({0:function(g,E,p,B,m){return s(g,E,p,B,m)},1:function(g,E,p,B){return s(g,g.modifiers,E,p,B)}}).bind({0:function(g){return g.length===5},1:function(g){return g.length===4}}).deprecate({1:{since:"4.2",warnAfter:"4.3",message:"Use the overload that accepts 'modifiers'"}}).finish()}var t=A.createNodeFactory;A.createNodeFactory=function(i,o){var s=t(i,o);return r(s),s},r(A.factory)})(Oe||(Oe={}));var Oe;(function(A){function r(i){var o=i.createImportTypeNode,s=i.updateImportTypeNode;i.createImportTypeNode=A.buildOverload("createImportTypeNode").overload({0:function(g,E,p,B,m){return o(g,E,p,B,m)},1:function(g,E,p,B){return o(g,void 0,E,p,B)}}).bind({0:function(g){var E=g[1],p=g[2],B=g[3],m=g[4];return(E===void 0||A.isImportTypeAssertionContainer(E))&&(p===void 0||!A.isArray(p))&&(B===void 0||A.isArray(B))&&(m===void 0||typeof m=="boolean")},1:function(g){var E=g[1],p=g[2],B=g[3],m=g[4];return m===void 0&&(E===void 0||A.isEntityName(E))&&(p===void 0||A.isArray(p))&&(B===void 0||typeof B=="boolean")}}).deprecate({1:{since:"4.6",warnAfter:"4.7",message:"Use the overload that accepts 'assertions'"}}).finish(),i.updateImportTypeNode=A.buildOverload("updateImportTypeNode").overload({0:function(g,E,p,B,m,_){return s(g,E,p,B,m,_)},1:function(g,E,p,B,m){return s(g,E,g.assertions,p,B,m)}}).bind({0:function(g){var E=g[2],p=g[3],B=g[4],m=g[5];return(E===void 0||A.isImportTypeAssertionContainer(E))&&(p===void 0||!A.isArray(p))&&(B===void 0||A.isArray(B))&&(m===void 0||typeof m=="boolean")},1:function(g){var E=g[2],p=g[3],B=g[4],m=g[5];return m===void 0&&(E===void 0||A.isEntityName(E))&&(p===void 0||A.isArray(p))&&(B===void 0||typeof B=="boolean")}}).deprecate({1:{since:"4.6",warnAfter:"4.7",message:"Use the overload that accepts 'assertions'"}}).finish()}var t=A.createNodeFactory;A.createNodeFactory=function(i,o){var s=t(i,o);return r(s),s},r(A.factory)})(Oe||(Oe={}));var Oe;(function(A){function r(i){var o=i.createTypeParameterDeclaration,s=i.updateTypeParameterDeclaration;i.createTypeParameterDeclaration=A.buildOverload("createTypeParameterDeclaration").overload({0:function(g,E,p,B){return o(g,E,p,B)},1:function(g,E,p){return o(void 0,g,E,p)}}).bind({0:function(g){var E=g[0];return E===void 0||A.isArray(E)},1:function(g){var E=g[0];return E!==void 0&&!A.isArray(E)}}).deprecate({1:{since:"4.7",warnAfter:"4.8",message:"Use the overload that accepts 'modifiers'"}}).finish(),i.updateTypeParameterDeclaration=A.buildOverload("updateTypeParameterDeclaration").overload({0:function(g,E,p,B,m){return s(g,E,p,B,m)},1:function(g,E,p,B){return s(g,g.modifiers,E,p,B)}}).bind({0:function(g){var E=g[1];return E===void 0||A.isArray(E)},1:function(g){var E=g[1];return E!==void 0&&!A.isArray(E)}}).deprecate({1:{since:"4.7",warnAfter:"4.8",message:"Use the overload that accepts 'modifiers'"}}).finish()}var t=A.createNodeFactory;A.createNodeFactory=function(i,o){var s=t(i,o);return r(s),s},r(A.factory)})(Oe||(Oe={}));var Oe;(function(A){var r={since:"4.8",warnAfter:"4.9.0-0",message:"Decorators have been combined with modifiers. Callers should switch to an overload that does not accept a 'decorators' parameter."},t={since:"4.8",warnAfter:"4.9.0-0",message:"Decorators are no longer supported for this function. Callers should switch to an overload that does not accept a 'decorators' parameter."},i={since:"4.8",warnAfter:"4.9.0-0",message:"Decorators and modifiers are no longer supported for this function. Callers should switch to an overload that does not accept the 'decorators' and 'modifiers' parameters."};function o(g){var E=g.createParameterDeclaration,p=g.updateParameterDeclaration,B=g.createPropertyDeclaration,m=g.updatePropertyDeclaration,_=g.createMethodDeclaration,x=g.updateMethodDeclaration,O=g.createConstructorDeclaration,k=g.updateConstructorDeclaration,P=g.createGetAccessorDeclaration,H=g.updateGetAccessorDeclaration,T=g.createSetAccessorDeclaration,v=g.updateSetAccessorDeclaration,F=g.createIndexSignature,y=g.updateIndexSignature,S=g.createClassStaticBlockDeclaration,U=g.updateClassStaticBlockDeclaration,V=g.createClassExpression,wA=g.updateClassExpression,IA=g.createFunctionDeclaration,pA=g.updateFunctionDeclaration,oA=g.createClassDeclaration,cA=g.updateClassDeclaration,eA=g.createInterfaceDeclaration,Y=g.updateInterfaceDeclaration,q=g.createTypeAliasDeclaration,X=g.updateTypeAliasDeclaration,Z=g.createEnumDeclaration,K=g.updateEnumDeclaration,J=g.createModuleDeclaration,sA=g.updateModuleDeclaration,uA=g.createImportEqualsDeclaration,BA=g.updateImportEqualsDeclaration,CA=g.createImportDeclaration,z=g.updateImportDeclaration,AA=g.createExportAssignment,iA=g.updateExportAssignment,_A=g.createExportDeclaration,fA=g.updateExportDeclaration;g.createParameterDeclaration=A.buildOverload("createParameterDeclaration").overload({0:function(M,aA,gA,QA,mA,FA){return E(M,aA,gA,QA,mA,FA)},1:function(M,aA,gA,QA,mA,FA,SA){return E(A.concatenate(M,aA),gA,QA,mA,FA,SA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5],SA=M[6];return SA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||typeof gA=="string"||A.isBindingName(gA))&&(QA===void 0||typeof QA=="object"&&A.isQuestionToken(QA))&&(mA===void 0||A.isTypeNode(mA))&&(FA===void 0||A.isExpression(FA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5],SA=M[6];return(aA===void 0||A.isArray(aA))&&(gA===void 0||typeof gA=="object"&&A.isDotDotDotToken(gA))&&(QA===void 0||typeof QA=="string"||A.isBindingName(QA))&&(mA===void 0||A.isQuestionToken(mA))&&(FA===void 0||A.isTypeNode(FA))&&(SA===void 0||A.isExpression(SA))}}).deprecate({1:r}).finish(),g.updateParameterDeclaration=A.buildOverload("updateParameterDeclaration").overload({0:function(M,aA,gA,QA,mA,FA,SA){return p(M,aA,gA,QA,mA,FA,SA)},1:function(M,aA,gA,QA,mA,FA,SA,ce){return p(M,A.concatenate(aA,gA),QA,mA,FA,SA,ce)}}).bind({0:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6],SA=M[7];return SA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||typeof gA=="string"||A.isBindingName(gA))&&(QA===void 0||typeof QA=="object"&&A.isQuestionToken(QA))&&(mA===void 0||A.isTypeNode(mA))&&(FA===void 0||A.isExpression(FA))},1:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6],SA=M[7];return(aA===void 0||A.isArray(aA))&&(gA===void 0||typeof gA=="object"&&A.isDotDotDotToken(gA))&&(QA===void 0||typeof QA=="string"||A.isBindingName(QA))&&(mA===void 0||A.isQuestionToken(mA))&&(FA===void 0||A.isTypeNode(FA))&&(SA===void 0||A.isExpression(SA))}}).deprecate({1:r}).finish(),g.createPropertyDeclaration=A.buildOverload("createPropertyDeclaration").overload({0:function(M,aA,gA,QA,mA){return B(M,aA,gA,QA,mA)},1:function(M,aA,gA,QA,mA,FA){return B(A.concatenate(M,aA),gA,QA,mA,FA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return FA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||typeof gA=="object"&&A.isQuestionOrExclamationToken(gA))&&(QA===void 0||A.isTypeNode(QA))&&(mA===void 0||A.isExpression(mA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return(aA===void 0||A.isArray(aA))&&(gA===void 0||typeof gA=="string"||A.isPropertyName(gA))&&(QA===void 0||A.isQuestionOrExclamationToken(QA))&&(mA===void 0||A.isTypeNode(mA))&&(FA===void 0||A.isExpression(FA))}}).deprecate({1:r}).finish(),g.updatePropertyDeclaration=A.buildOverload("updatePropertyDeclaration").overload({0:function(M,aA,gA,QA,mA,FA){return m(M,aA,gA,QA,mA,FA)},1:function(M,aA,gA,QA,mA,FA,SA){return m(M,A.concatenate(aA,gA),QA,mA,FA,SA)}}).bind({0:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6];return FA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||typeof gA=="object"&&A.isQuestionOrExclamationToken(gA))&&(QA===void 0||A.isTypeNode(QA))&&(mA===void 0||A.isExpression(mA))},1:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6];return(aA===void 0||A.isArray(aA))&&(gA===void 0||typeof gA=="string"||A.isPropertyName(gA))&&(QA===void 0||A.isQuestionOrExclamationToken(QA))&&(mA===void 0||A.isTypeNode(mA))&&(FA===void 0||A.isExpression(FA))}}).deprecate({1:r}).finish(),g.createMethodDeclaration=A.buildOverload("createMethodDeclaration").overload({0:function(M,aA,gA,QA,mA,FA,SA,ce){return _(M,aA,gA,QA,mA,FA,SA,ce)},1:function(M,aA,gA,QA,mA,FA,SA,ce,re){return _(A.concatenate(M,aA),gA,QA,mA,FA,SA,ce,re)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5],SA=M[6],ce=M[7],re=M[8];return re===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||typeof gA=="string"||A.isPropertyName(gA))&&(QA===void 0||typeof QA=="object"&&A.isQuestionToken(QA))&&(mA===void 0||A.isArray(mA))&&(FA===void 0||!A.some(FA,A.isTypeParameterDeclaration))&&(SA===void 0||!A.isArray(SA))&&(ce===void 0||A.isBlock(ce))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5],SA=M[6],ce=M[7],re=M[8];return(aA===void 0||A.isArray(aA))&&(gA===void 0||typeof gA=="object"&&A.isAsteriskToken(gA))&&(QA===void 0||typeof QA=="string"||A.isPropertyName(QA))&&(mA===void 0||!A.isArray(mA))&&(FA===void 0||!A.some(FA,A.isParameter))&&(SA===void 0||A.isArray(SA))&&(ce===void 0||A.isTypeNode(ce))&&(re===void 0||A.isBlock(re))}}).deprecate({1:r}).finish(),g.updateMethodDeclaration=A.buildOverload("updateMethodDeclaration").overload({0:function(M,aA,gA,QA,mA,FA,SA,ce,re){return x(M,aA,gA,QA,mA,FA,SA,ce,re)},1:function(M,aA,gA,QA,mA,FA,SA,ce,re,KA){return x(M,A.concatenate(aA,gA),QA,mA,FA,SA,ce,re,KA)}}).bind({0:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6],SA=M[7],ce=M[8],re=M[9];return re===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||typeof gA=="string"||A.isPropertyName(gA))&&(QA===void 0||typeof QA=="object"&&A.isQuestionToken(QA))&&(mA===void 0||A.isArray(mA))&&(FA===void 0||!A.some(FA,A.isTypeParameterDeclaration))&&(SA===void 0||!A.isArray(SA))&&(ce===void 0||A.isBlock(ce))},1:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6],SA=M[7],ce=M[8],re=M[9];return(aA===void 0||A.isArray(aA))&&(gA===void 0||typeof gA=="object"&&A.isAsteriskToken(gA))&&(QA===void 0||typeof QA=="string"||A.isPropertyName(QA))&&(mA===void 0||!A.isArray(mA))&&(FA===void 0||!A.some(FA,A.isParameter))&&(SA===void 0||A.isArray(SA))&&(ce===void 0||A.isTypeNode(ce))&&(re===void 0||A.isBlock(re))}}).deprecate({1:r}).finish(),g.createConstructorDeclaration=A.buildOverload("createConstructorDeclaration").overload({0:function(M,aA,gA){return O(M,aA,gA)},1:function(M,aA,gA,QA){return O(aA,gA,QA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3];return mA===void 0&&(aA===void 0||!A.some(aA,A.isDecorator))&&(gA===void 0||!A.some(gA,A.isModifier))&&(QA===void 0||!A.isArray(QA))},1:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3];return(aA===void 0||!A.some(aA,A.isModifier))&&(gA===void 0||!A.some(gA,A.isParameter))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.isBlock(mA))}}).deprecate({1:t}).finish(),g.updateConstructorDeclaration=A.buildOverload("updateConstructorDeclaration").overload({0:function(M,aA,gA,QA){return k(M,aA,gA,QA)},1:function(M,aA,gA,QA,mA){return k(M,gA,QA,mA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4];return mA===void 0&&(aA===void 0||!A.some(aA,A.isDecorator))&&(gA===void 0||!A.some(gA,A.isModifier))&&(QA===void 0||!A.isArray(QA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4];return(aA===void 0||!A.some(aA,A.isModifier))&&(gA===void 0||!A.some(gA,A.isParameter))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.isBlock(mA))}}).deprecate({1:t}).finish(),g.createGetAccessorDeclaration=A.buildOverload("createGetAccessorDeclaration").overload({0:function(M,aA,gA,QA,mA){return P(M,aA,gA,QA,mA)},1:function(M,aA,gA,QA,mA,FA){return P(A.concatenate(M,aA),gA,QA,mA,FA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return FA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||!A.isArray(QA))&&(mA===void 0||A.isBlock(mA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return(aA===void 0||A.isArray(aA))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.isTypeNode(mA))&&(FA===void 0||A.isBlock(FA))}}).deprecate({1:r}).finish(),g.updateGetAccessorDeclaration=A.buildOverload("updateGetAccessorDeclaration").overload({0:function(M,aA,gA,QA,mA,FA){return H(M,aA,gA,QA,mA,FA)},1:function(M,aA,gA,QA,mA,FA,SA){return H(M,A.concatenate(aA,gA),QA,mA,FA,SA)}}).bind({0:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6];return FA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||!A.isArray(QA))&&(mA===void 0||A.isBlock(mA))},1:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6];return(aA===void 0||A.isArray(aA))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.isTypeNode(mA))&&(FA===void 0||A.isBlock(FA))}}).deprecate({1:r}).finish(),g.createSetAccessorDeclaration=A.buildOverload("createSetAccessorDeclaration").overload({0:function(M,aA,gA,QA){return T(M,aA,gA,QA)},1:function(M,aA,gA,QA,mA){return T(A.concatenate(M,aA),gA,QA,mA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4];return mA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||!A.isArray(QA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4];return(aA===void 0||A.isArray(aA))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.isBlock(mA))}}).deprecate({1:r}).finish(),g.updateSetAccessorDeclaration=A.buildOverload("updateSetAccessorDeclaration").overload({0:function(M,aA,gA,QA,mA){return v(M,aA,gA,QA,mA)},1:function(M,aA,gA,QA,mA,FA){return v(M,A.concatenate(aA,gA),QA,mA,FA)}}).bind({0:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5];return mA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||!A.isArray(QA))},1:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5];return(aA===void 0||A.isArray(aA))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.isBlock(mA))}}).deprecate({1:r}).finish(),g.createIndexSignature=A.buildOverload("createIndexSignature").overload({0:function(M,aA,gA){return F(M,aA,gA)},1:function(M,aA,gA,QA){return F(aA,gA,QA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3];return mA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||A.every(gA,A.isParameter))&&(QA===void 0||!A.isArray(QA))},1:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.every(gA,A.isModifier))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.isTypeNode(mA))}}).deprecate({1:t}).finish(),g.updateIndexSignature=A.buildOverload("updateIndexSignature").overload({0:function(M,aA,gA,QA){return y(M,aA,gA,QA)},1:function(M,aA,gA,QA,mA){return y(M,gA,QA,mA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4];return mA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||A.every(gA,A.isParameter))&&(QA===void 0||!A.isArray(QA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.every(gA,A.isModifier))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.isTypeNode(mA))}}).deprecate({1:t}).finish(),g.createClassStaticBlockDeclaration=A.buildOverload("createClassStaticBlockDeclaration").overload({0:function(M){return S(M)},1:function(M,aA,gA){return S(gA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2];return gA===void 0&&QA===void 0&&(aA===void 0||!A.isArray(aA))},1:function(M){var aA=M[0],gA=M[1],QA=M[2];return(aA===void 0||A.isArray(aA))&&(gA===void 0||A.isArray(aA))&&(QA===void 0||A.isBlock(QA))}}).deprecate({1:i}).finish(),g.updateClassStaticBlockDeclaration=A.buildOverload("updateClassStaticBlockDeclaration").overload({0:function(M,aA){return U(M,aA)},1:function(M,aA,gA,QA){return U(M,QA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3];return gA===void 0&&QA===void 0&&(aA===void 0||!A.isArray(aA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3];return(aA===void 0||A.isArray(aA))&&(gA===void 0||A.isArray(aA))&&(QA===void 0||A.isBlock(QA))}}).deprecate({1:i}).finish(),g.createClassExpression=A.buildOverload("createClassExpression").overload({0:function(M,aA,gA,QA,mA){return V(M,aA,gA,QA,mA)},1:function(M,aA,gA,QA,mA,FA){return V(A.concatenate(M,aA),gA,QA,mA,FA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return FA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||A.every(QA,A.isHeritageClause))&&(mA===void 0||A.every(mA,A.isClassElement))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return(aA===void 0||A.isArray(aA))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.every(QA,A.isTypeParameterDeclaration))&&(mA===void 0||A.every(mA,A.isHeritageClause))&&(FA===void 0||A.isArray(FA))}}).deprecate({1:t}).finish(),g.updateClassExpression=A.buildOverload("updateClassExpression").overload({0:function(M,aA,gA,QA,mA,FA){return wA(M,aA,gA,QA,mA,FA)},1:function(M,aA,gA,QA,mA,FA,SA){return wA(M,A.concatenate(aA,gA),QA,mA,FA,SA)}}).bind({0:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6];return FA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||A.every(QA,A.isHeritageClause))&&(mA===void 0||A.every(mA,A.isClassElement))},1:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6];return(aA===void 0||A.isArray(aA))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.every(QA,A.isTypeParameterDeclaration))&&(mA===void 0||A.every(mA,A.isHeritageClause))&&(FA===void 0||A.isArray(FA))}}).deprecate({1:t}).finish(),g.createFunctionDeclaration=A.buildOverload("createFunctionDeclaration").overload({0:function(M,aA,gA,QA,mA,FA,SA){return IA(M,aA,gA,QA,mA,FA,SA)},1:function(M,aA,gA,QA,mA,FA,SA,ce){return IA(aA,gA,QA,mA,FA,SA,ce)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5],SA=M[6],ce=M[7];return ce===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||typeof gA=="string"||A.isIdentifier(gA))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.every(mA,A.isParameter))&&(FA===void 0||!A.isArray(FA))&&(SA===void 0||A.isBlock(SA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5],SA=M[6],ce=M[7];return(aA===void 0||A.isArray(aA))&&(gA===void 0||typeof gA!="string"&&A.isAsteriskToken(gA))&&(QA===void 0||!A.isArray(QA))&&(mA===void 0||A.every(mA,A.isTypeParameterDeclaration))&&(FA===void 0||A.isArray(FA))&&(SA===void 0||A.isTypeNode(SA))&&(ce===void 0||A.isBlock(ce))}}).deprecate({1:t}).finish(),g.updateFunctionDeclaration=A.buildOverload("updateFunctionDeclaration").overload({0:function(M,aA,gA,QA,mA,FA,SA,ce){return pA(M,aA,gA,QA,mA,FA,SA,ce)},1:function(M,aA,gA,QA,mA,FA,SA,ce,re){return pA(M,gA,QA,mA,FA,SA,ce,re)}}).bind({0:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6],SA=M[7],ce=M[8];return ce===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||A.isIdentifier(gA))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.every(mA,A.isParameter))&&(FA===void 0||!A.isArray(FA))&&(SA===void 0||A.isBlock(SA))},1:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6],SA=M[7],ce=M[8];return(aA===void 0||A.isArray(aA))&&(gA===void 0||typeof gA!="string"&&A.isAsteriskToken(gA))&&(QA===void 0||!A.isArray(QA))&&(mA===void 0||A.every(mA,A.isTypeParameterDeclaration))&&(FA===void 0||A.isArray(FA))&&(SA===void 0||A.isTypeNode(SA))&&(ce===void 0||A.isBlock(ce))}}).deprecate({1:t}).finish(),g.createClassDeclaration=A.buildOverload("createClassDeclaration").overload({0:function(M,aA,gA,QA,mA){return oA(M,aA,gA,QA,mA)},1:function(M,aA,gA,QA,mA,FA){return oA(A.concatenate(M,aA),gA,QA,mA,FA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return FA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||A.every(QA,A.isHeritageClause))&&(mA===void 0||A.every(mA,A.isClassElement))},1:function(){return!0}}).deprecate({1:r}).finish(),g.updateClassDeclaration=A.buildOverload("updateClassDeclaration").overload({0:function(M,aA,gA,QA,mA,FA){return cA(M,aA,gA,QA,mA,FA)},1:function(M,aA,gA,QA,mA,FA,SA){return cA(M,A.concatenate(aA,gA),QA,mA,FA,SA)}}).bind({0:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6];return FA===void 0&&(aA===void 0||!A.isArray(aA))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||A.every(QA,A.isHeritageClause))&&(mA===void 0||A.every(mA,A.isClassElement))},1:function(M){var aA=M[2],gA=M[3],QA=M[4],mA=M[5],FA=M[6];return(aA===void 0||A.isArray(aA))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.every(QA,A.isTypeParameterDeclaration))&&(mA===void 0||A.every(mA,A.isHeritageClause))&&(FA===void 0||A.isArray(FA))}}).deprecate({1:r}).finish(),g.createInterfaceDeclaration=A.buildOverload("createInterfaceDeclaration").overload({0:function(M,aA,gA,QA,mA){return eA(M,aA,gA,QA,mA)},1:function(M,aA,gA,QA,mA,FA){return eA(aA,gA,QA,mA,FA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4],SA=M[5];return SA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.every(mA,A.isHeritageClause))&&(FA===void 0||A.every(FA,A.isTypeElement))},1:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4],SA=M[5];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||!A.isArray(QA))&&(mA===void 0||A.every(mA,A.isTypeParameterDeclaration))&&(FA===void 0||A.every(FA,A.isHeritageClause))&&(SA===void 0||A.every(SA,A.isTypeElement))}}).deprecate({1:t}).finish(),g.updateInterfaceDeclaration=A.buildOverload("updateInterfaceDeclaration").overload({0:function(M,aA,gA,QA,mA,FA){return Y(M,aA,gA,QA,mA,FA)},1:function(M,aA,gA,QA,mA,FA,SA){return Y(M,gA,QA,mA,FA,SA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5],SA=M[6];return SA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||A.every(mA,A.isHeritageClause))&&(FA===void 0||A.every(FA,A.isTypeElement))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5],SA=M[6];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||!A.isArray(QA))&&(mA===void 0||A.every(mA,A.isTypeParameterDeclaration))&&(FA===void 0||A.every(FA,A.isHeritageClause))&&(SA===void 0||A.every(SA,A.isTypeElement))}}).deprecate({1:t}).finish(),g.createTypeAliasDeclaration=A.buildOverload("createTypeAliasDeclaration").overload({0:function(M,aA,gA,QA){return q(M,aA,gA,QA)},1:function(M,aA,gA,QA,mA){return q(aA,gA,QA,mA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4];return FA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||!A.isArray(mA))},1:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||!A.isArray(QA))&&(mA===void 0||A.isArray(mA))&&(FA===void 0||A.isTypeNode(FA))}}).deprecate({1:t}).finish(),g.updateTypeAliasDeclaration=A.buildOverload("updateTypeAliasDeclaration").overload({0:function(M,aA,gA,QA,mA){return X(M,aA,gA,QA,mA)},1:function(M,aA,gA,QA,mA,FA){return X(M,gA,QA,mA,FA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return FA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isArray(QA))&&(mA===void 0||!A.isArray(mA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||!A.isArray(QA))&&(mA===void 0||A.isArray(mA))&&(FA===void 0||A.isTypeNode(FA))}}).deprecate({1:t}).finish(),g.createEnumDeclaration=A.buildOverload("createEnumDeclaration").overload({0:function(M,aA,gA){return Z(M,aA,gA)},1:function(M,aA,gA,QA){return Z(aA,gA,QA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3];return mA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isArray(QA))},1:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||!A.isArray(QA))&&(mA===void 0||A.isArray(mA))}}).deprecate({1:t}).finish(),g.updateEnumDeclaration=A.buildOverload("updateEnumDeclaration").overload({0:function(M,aA,gA,QA){return K(M,aA,gA,QA)},1:function(M,aA,gA,QA,mA){return K(M,gA,QA,mA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4];return mA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isArray(QA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||!A.isArray(QA))&&(mA===void 0||A.isArray(mA))}}).deprecate({1:t}).finish(),g.createModuleDeclaration=A.buildOverload("createModuleDeclaration").overload({0:function(M,aA,gA,QA){return J(M,aA,gA,QA)},1:function(M,aA,gA,QA,mA){return J(aA,gA,QA,mA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4];return FA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&gA!==void 0&&!A.isArray(gA)&&(QA===void 0||A.isModuleBody(QA))&&(mA===void 0||typeof mA=="number")},1:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&QA!==void 0&&A.isModuleName(QA)&&(mA===void 0||typeof mA=="object")&&(FA===void 0||typeof FA=="number")}}).deprecate({1:t}).finish(),g.updateModuleDeclaration=A.buildOverload("updateModuleDeclaration").overload({0:function(M,aA,gA,QA){return sA(M,aA,gA,QA)},1:function(M,aA,gA,QA,mA){return sA(M,gA,QA,mA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4];return mA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isModuleBody(QA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&QA!==void 0&&A.isModuleName(QA)&&(mA===void 0||A.isModuleBody(mA))}}).deprecate({1:t}).finish(),g.createImportEqualsDeclaration=A.buildOverload("createImportEqualsDeclaration").overload({0:function(M,aA,gA,QA){return uA(M,aA,gA,QA)},1:function(M,aA,gA,QA,mA){return uA(aA,gA,QA,mA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4];return FA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||typeof gA=="boolean")&&typeof QA!="boolean"&&typeof mA!="string"},1:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||typeof QA=="boolean")&&(typeof mA=="string"||A.isIdentifier(mA))&&FA!==void 0&&A.isModuleReference(FA)}}).deprecate({1:t}).finish(),g.updateImportEqualsDeclaration=A.buildOverload("updateImportEqualsDeclaration").overload({0:function(M,aA,gA,QA,mA){return BA(M,aA,gA,QA,mA)},1:function(M,aA,gA,QA,mA,FA){return BA(M,gA,QA,mA,FA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return FA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||typeof gA=="boolean")&&typeof QA!="boolean"&&typeof mA!="string"},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||typeof QA=="boolean")&&(typeof mA=="string"||A.isIdentifier(mA))&&FA!==void 0&&A.isModuleReference(FA)}}).deprecate({1:t}).finish(),g.createImportDeclaration=A.buildOverload("createImportDeclaration").overload({0:function(M,aA,gA,QA){return CA(M,aA,gA,QA)},1:function(M,aA,gA,QA,mA){return CA(aA,gA,QA,mA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4];return FA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||!A.isArray(gA))&&QA!==void 0&&A.isExpression(QA)&&(mA===void 0||A.isAssertClause(mA))},1:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||A.isImportClause(QA))&&mA!==void 0&&A.isExpression(mA)&&(FA===void 0||A.isAssertClause(FA))}}).deprecate({1:t}).finish(),g.updateImportDeclaration=A.buildOverload("updateImportDeclaration").overload({0:function(M,aA,gA,QA,mA){return z(M,aA,gA,QA,mA)},1:function(M,aA,gA,QA,mA,FA){return z(M,gA,QA,mA,FA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return FA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||!A.isArray(gA))&&(QA===void 0||A.isExpression(QA))&&(mA===void 0||A.isAssertClause(mA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||A.isImportClause(QA))&&mA!==void 0&&A.isExpression(mA)&&(FA===void 0||A.isAssertClause(FA))}}).deprecate({1:t}).finish(),g.createExportAssignment=A.buildOverload("createExportAssignment").overload({0:function(M,aA,gA){return AA(M,aA,gA)},1:function(M,aA,gA,QA){return AA(aA,gA,QA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3];return mA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&(gA===void 0||typeof gA=="boolean")&&typeof QA=="object"},1:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&(QA===void 0||typeof QA=="boolean")&&mA!==void 0&&A.isExpression(mA)}}).deprecate({1:t}).finish(),g.updateExportAssignment=A.buildOverload("updateExportAssignment").overload({0:function(M,aA,gA){return iA(M,aA,gA)},1:function(M,aA,gA,QA){return iA(M,gA,QA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3];return QA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&gA!==void 0&&!A.isArray(gA)},1:function(M){var aA=M[1],gA=M[2],QA=M[3];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&QA!==void 0&&A.isExpression(QA)}}).deprecate({1:t}).finish(),g.createExportDeclaration=A.buildOverload("createExportDeclaration").overload({0:function(M,aA,gA,QA,mA){return _A(M,aA,gA,QA,mA)},1:function(M,aA,gA,QA,mA,FA){return _A(aA,gA,QA,mA,FA)}}).bind({0:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4],SA=M[5];return SA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&typeof gA=="boolean"&&typeof QA!="boolean"&&(mA===void 0||A.isExpression(mA))&&(FA===void 0||A.isAssertClause(FA))},1:function(M){var aA=M[0],gA=M[1],QA=M[2],mA=M[3],FA=M[4],SA=M[5];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&typeof QA=="boolean"&&(mA===void 0||A.isNamedExportBindings(mA))&&(FA===void 0||A.isExpression(FA))&&(SA===void 0||A.isAssertClause(SA))}}).deprecate({1:t}).finish(),g.updateExportDeclaration=A.buildOverload("updateExportDeclaration").overload({0:function(M,aA,gA,QA,mA,FA){return fA(M,aA,gA,QA,mA,FA)},1:function(M,aA,gA,QA,mA,FA,SA){return fA(M,gA,QA,mA,FA,SA)}}).bind({0:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5],SA=M[6];return SA===void 0&&(aA===void 0||A.every(aA,A.isModifier))&&typeof gA=="boolean"&&typeof QA!="boolean"&&(mA===void 0||A.isExpression(mA))&&(FA===void 0||A.isAssertClause(FA))},1:function(M){var aA=M[1],gA=M[2],QA=M[3],mA=M[4],FA=M[5],SA=M[6];return(aA===void 0||A.every(aA,A.isDecorator))&&(gA===void 0||A.isArray(gA))&&typeof QA=="boolean"&&(mA===void 0||A.isNamedExportBindings(mA))&&(FA===void 0||A.isExpression(FA))&&(SA===void 0||A.isAssertClause(SA))}}).deprecate({1:t}).finish()}var s=A.createNodeFactory;A.createNodeFactory=function(g,E){var p=s(g,E);return o(p),p},o(A.factory)})(Oe||(Oe={}));var Oe;(function(A){typeof console<"u"&&(A.Debug.loggingHost={log:function(r,t){switch(r){case A.LogLevel.Error:return console.error(t);case A.LogLevel.Warning:return console.warn(t);case A.LogLevel.Info:return console.log(t);case A.LogLevel.Verbose:return console.log(t)}}})})(Oe||(Oe={}))});var x4A=Yn(k4A(),1),{program:xFt,createCommand:HFt,createArgument:SFt,createOption:FFt,CommanderError:RFt,InvalidArgumentError:H4A,InvalidOptionArgumentError:TFt,Command:$C,Argument:NFt,Option:DH,Help:PFt}=x4A.default;var OIe=require("child_process"),hD=Yn(require("fs/promises")),XE=Yn(require("path"));var MIe=Yn(F4A());var eDA=Yn(q4A(),1);var NO=A=>{if(typeof A!="string")throw new TypeError("invalid pattern");if(A.length>65536)throw new TypeError("pattern is too long")};var t9e={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},PO=A=>A.replace(/[[\]\\-]/g,"\\$&"),i9e=A=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),V4A=A=>A.join(""),z4A=(A,r)=>{let t=r;if(A.charAt(t)!=="[")throw new Error("not in a brace expression");let i=[],o=[],s=t+1,g=!1,E=!1,p=!1,B=!1,m=t,_="";A:for(;s_?i.push(PO(_)+"-"+PO(P)):P===_&&i.push(PO(P)),_="",s++;continue}if(A.startsWith("-]",s+1)){i.push(PO(P+"-")),s+=2;continue}if(A.startsWith("-",s+1)){_=P,s+=2;continue}i.push(PO(P)),s++}if(mr?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");var n9e=new Set(["!","?","+","*","@"]),K4A=A=>n9e.has(A),a9e="(?!(?:^|/)\\.\\.?(?:$|/))",_H="(?!\\.)",o9e=new Set(["[","."]),s9e=new Set(["..","."]),c9e=new Set("().*{}+?[]^$\\!"),l9e=A=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),kAA="[^/]",X4A=kAA+"*?",Z4A=kAA+"+?",AI=class A{type;#A;#r;#n=!1;#t=[];#o;#c;#u;#s=!1;#a;#e;#E=!1;constructor(r,t,i={}){this.type=r,r&&(this.#r=!0),this.#o=t,this.#A=this.#o?this.#o.#A:this,this.#a=this.#A===this?i:this.#A.#a,this.#u=this.#A===this?[]:this.#A.#u,r==="!"&&!this.#A.#s&&this.#u.push(this),this.#c=this.#o?this.#o.#t.length:0}get hasMagic(){if(this.#r!==void 0)return this.#r;for(let r of this.#t)if(typeof r!="string"&&(r.type||r.hasMagic))return this.#r=!0;return this.#r}toString(){return this.#e!==void 0?this.#e:this.type?this.#e=this.type+"("+this.#t.map(r=>String(r)).join("|")+")":this.#e=this.#t.map(r=>String(r)).join("")}#B(){if(this!==this.#A)throw new Error("should only call on root");if(this.#s)return this;this.toString(),this.#s=!0;let r;for(;r=this.#u.pop();){if(r.type!=="!")continue;let t=r,i=t.#o;for(;i;){for(let o=t.#c+1;!i.type&&otypeof t=="string"?t:t.toJSON()):[this.type,...this.#t.map(t=>t.toJSON())];return this.isStart()&&!this.type&&r.unshift([]),this.isEnd()&&(this===this.#A||this.#A.#s&&this.#o?.type==="!")&&r.push({}),r}isStart(){if(this.#A===this)return!0;if(!this.#o?.isStart())return!1;if(this.#c===0)return!0;let r=this.#o;for(let t=0;t{let[k,P,H,T]=typeof O=="string"?A.#Q(O,this.#r,p):O.toRegExpSource(r);return this.#r=this.#r||H,this.#n=this.#n||T,k}).join(""),m="";if(this.isStart()&&typeof this.#t[0]=="string"&&!(this.#t.length===1&&s9e.has(this.#t[0]))){let k=o9e,P=t&&k.has(B.charAt(0))||B.startsWith("\\.")&&k.has(B.charAt(2))||B.startsWith("\\.\\.")&&k.has(B.charAt(4)),H=!t&&!r&&k.has(B.charAt(0));m=P?a9e:H?_H:""}let _="";return this.isEnd()&&this.#A.#s&&this.#o?.type==="!"&&(_="(?:$|\\/)"),[m+B+_,m0(B),this.#r=!!this.#r,this.#n]}let i=this.type==="*"||this.type==="+",o=this.type==="!"?"(?:(?!(?:":"(?:",s=this.#g(t);if(this.isStart()&&this.isEnd()&&!s&&this.type!=="!"){let p=this.toString();return this.#t=[p],this.type=null,this.#r=void 0,[p,m0(this.toString()),!1,!1]}let g=!i||r||t||!_H?"":this.#g(!0);g===s&&(g=""),g&&(s=`(?:${s})(?:${g})*?`);let E="";if(this.type==="!"&&this.#E)E=(this.isStart()&&!t?_H:"")+Z4A;else{let p=this.type==="!"?"))"+(this.isStart()&&!t&&!r?_H:"")+X4A+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&g?")":this.type==="*"&&g?")?":`)${this.type}`;E=o+s+p}return[E,m0(s),this.#r=!!this.#r,this.#n]}#g(r){return this.#t.map(t=>{if(typeof t=="string")throw new Error("string type in extglob ast??");let[i,o,s,g]=t.toRegExpSource(r);return this.#n=this.#n||g,i}).filter(t=>!(this.isStart()&&this.isEnd())||!!t).join("|")}static#Q(r,t,i=!1){let o=!1,s="",g=!1;for(let E=0;Er?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&");var Lp=(A,r,t={})=>(NO(r),!t.nocomment&&r.charAt(0)==="#"?!1:new xh(r,t).match(A)),u9e=/^\*+([^+@!?\*\[\(]*)$/,g9e=A=>r=>!r.startsWith(".")&&r.endsWith(A),d9e=A=>r=>r.endsWith(A),p9e=A=>(A=A.toLowerCase(),r=>!r.startsWith(".")&&r.toLowerCase().endsWith(A)),E9e=A=>(A=A.toLowerCase(),r=>r.toLowerCase().endsWith(A)),f9e=/^\*+\.\*+$/,B9e=A=>!A.startsWith(".")&&A.includes("."),h9e=A=>A!=="."&&A!==".."&&A.includes("."),Q9e=/^\.\*+$/,m9e=A=>A!=="."&&A!==".."&&A.startsWith("."),D9e=/^\*+$/,_9e=A=>A.length!==0&&!A.startsWith("."),w9e=A=>A.length!==0&&A!=="."&&A!=="..",v9e=/^\?+([^+@!?\*\[\(]*)?$/,y9e=([A,r=""])=>{let t=rDA([A]);return r?(r=r.toLowerCase(),i=>t(i)&&i.toLowerCase().endsWith(r)):t},C9e=([A,r=""])=>{let t=tDA([A]);return r?(r=r.toLowerCase(),i=>t(i)&&i.toLowerCase().endsWith(r)):t},I9e=([A,r=""])=>{let t=tDA([A]);return r?i=>t(i)&&i.endsWith(r):t},b9e=([A,r=""])=>{let t=rDA([A]);return r?i=>t(i)&&i.endsWith(r):t},rDA=([A])=>{let r=A.length;return t=>t.length===r&&!t.startsWith(".")},tDA=([A])=>{let r=A.length;return t=>t.length===r&&t!=="."&&t!==".."},iDA=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",$4A={win32:{sep:"\\"},posix:{sep:"/"}},O9e=iDA==="win32"?$4A.win32.sep:$4A.posix.sep;Lp.sep=O9e;var TE=Symbol("globstar **");Lp.GLOBSTAR=TE;var M9e="[^/]",k9e=M9e+"*?",x9e="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",H9e="(?:(?!(?:\\/|^)\\.).)*?",S9e=(A,r={})=>t=>Lp(t,A,r);Lp.filter=S9e;var BQ=(A,r={})=>Object.assign({},A,r),F9e=A=>{if(!A||typeof A!="object"||!Object.keys(A).length)return Lp;let r=Lp;return Object.assign((i,o,s={})=>r(i,o,BQ(A,s)),{Minimatch:class extends r.Minimatch{constructor(o,s={}){super(o,BQ(A,s))}static defaults(o){return r.defaults(BQ(A,o)).Minimatch}},AST:class extends r.AST{constructor(o,s,g={}){super(o,s,BQ(A,g))}static fromGlob(o,s={}){return r.AST.fromGlob(o,BQ(A,s))}},unescape:(i,o={})=>r.unescape(i,BQ(A,o)),escape:(i,o={})=>r.escape(i,BQ(A,o)),filter:(i,o={})=>r.filter(i,BQ(A,o)),defaults:i=>r.defaults(BQ(A,i)),makeRe:(i,o={})=>r.makeRe(i,BQ(A,o)),braceExpand:(i,o={})=>r.braceExpand(i,BQ(A,o)),match:(i,o,s={})=>r.match(i,o,BQ(A,s)),sep:r.sep,GLOBSTAR:TE})};Lp.defaults=F9e;var nDA=(A,r={})=>(NO(A),r.nobrace||!/\{(?:(?!\{).)*\}/.test(A)?[A]:(0,eDA.default)(A));Lp.braceExpand=nDA;var R9e=(A,r={})=>new xh(A,r).makeRe();Lp.makeRe=R9e;var T9e=(A,r,t={})=>{let i=new xh(r,t);return A=A.filter(o=>i.match(o)),i.options.nonull&&!A.length&&A.push(r),A};Lp.match=T9e;var ADA=/[?*]|[+@!]\(.*?\)|\[|\]/,N9e=A=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),xh=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(r,t={}){NO(r),t=t||{},this.options=t,this.pattern=r,this.platform=t.platform||iDA,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!t.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!t.nonegate,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=t.windowsNoMagicRoot!==void 0?t.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let r of this.set)for(let t of r)if(typeof t!="string")return!0;return!1}debug(...r){}make(){let r=this.pattern,t=this.options;if(!t.nocomment&&r.charAt(0)==="#"){this.comment=!0;return}if(!r){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],t.debug&&(this.debug=(...s)=>console.error(...s)),this.debug(this.pattern,this.globSet);let i=this.globSet.map(s=>this.slashSplit(s));this.globParts=this.preprocess(i),this.debug(this.pattern,this.globParts);let o=this.globParts.map((s,g,E)=>{if(this.isWindows&&this.windowsNoMagicRoot){let p=s[0]===""&&s[1]===""&&(s[2]==="?"||!ADA.test(s[2]))&&!ADA.test(s[3]),B=/^[a-z]:/i.test(s[0]);if(p)return[...s.slice(0,4),...s.slice(4).map(m=>this.parse(m))];if(B)return[s[0],...s.slice(1).map(m=>this.parse(m))]}return s.map(p=>this.parse(p))});if(this.debug(this.pattern,o),this.set=o.filter(s=>s.indexOf(!1)===-1),this.isWindows)for(let s=0;s=2?(r=this.firstPhasePreProcess(r),r=this.secondPhasePreProcess(r)):t>=1?r=this.levelOneOptimize(r):r=this.adjascentGlobstarOptimize(r),r}adjascentGlobstarOptimize(r){return r.map(t=>{let i=-1;for(;(i=t.indexOf("**",i+1))!==-1;){let o=i;for(;t[o+1]==="**";)o++;o!==i&&t.splice(i,o-i)}return t})}levelOneOptimize(r){return r.map(t=>(t=t.reduce((i,o)=>{let s=i[i.length-1];return o==="**"&&s==="**"?i:o===".."&&s&&s!==".."&&s!=="."&&s!=="**"?(i.pop(),i):(i.push(o),i)},[]),t.length===0?[""]:t))}levelTwoFileOptimize(r){Array.isArray(r)||(r=this.slashSplit(r));let t=!1;do{if(t=!1,!this.preserveMultipleSlashes){for(let o=1;oo&&i.splice(o+1,g-o);let E=i[o+1],p=i[o+2],B=i[o+3];if(E!==".."||!p||p==="."||p===".."||!B||B==="."||B==="..")continue;t=!0,i.splice(o,1);let m=i.slice(0);m[o]="**",r.push(m),o--}if(!this.preserveMultipleSlashes){for(let g=1;gt.length)}partsMatch(r,t,i=!1){let o=0,s=0,g=[],E="";for(;oF?t=t.slice(y):F>y&&(r=r.slice(F)))}}let{optimizationLevel:s=1}=this.options;s>=2&&(r=this.levelTwoFileOptimize(r)),this.debug("matchOne",this,{file:r,pattern:t}),this.debug("matchOne",r.length,t.length);for(var g=0,E=0,p=r.length,B=t.length;g>> no match, partial?`,r,x,t,O),x===p))}let P;if(typeof m=="string"?(P=_===m,this.debug("string match",m,_,P)):(P=m.test(_),this.debug("pattern match",m,_,P)),!P)return!1}if(g===p&&E===B)return!0;if(g===p)return i;if(E===B)return g===p-1&&r[g]==="";throw new Error("wtf?")}braceExpand(){return nDA(this.pattern,this.options)}parse(r){NO(r);let t=this.options;if(r==="**")return TE;if(r==="")return"";let i,o=null;(i=r.match(D9e))?o=t.dot?w9e:_9e:(i=r.match(u9e))?o=(t.nocase?t.dot?E9e:p9e:t.dot?d9e:g9e)(i[1]):(i=r.match(v9e))?o=(t.nocase?t.dot?C9e:y9e:t.dot?I9e:b9e)(i):(i=r.match(f9e))?o=t.dot?h9e:B9e:(i=r.match(Q9e))&&(o=m9e);let s=AI.fromGlob(r,this.options).toMMPattern();return o?Object.assign(s,{test:o}):s}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let r=this.set;if(!r.length)return this.regexp=!1,this.regexp;let t=this.options,i=t.noglobstar?k9e:t.dot?x9e:H9e,o=new Set(t.nocase?["i"]:[]),s=r.map(p=>{let B=p.map(m=>{if(m instanceof RegExp)for(let _ of m.flags.split(""))o.add(_);return typeof m=="string"?N9e(m):m===TE?TE:m._src});return B.forEach((m,_)=>{let x=B[_+1],O=B[_-1];m!==TE||O===TE||(O===void 0?x!==void 0&&x!==TE?B[_+1]="(?:\\/|"+i+"\\/)?"+x:B[_]=i:x===void 0?B[_-1]=O+"(?:\\/|"+i+")?":x!==TE&&(B[_-1]=O+"(?:\\/|\\/"+i+"\\/)"+x,B[_+1]=TE))}),B.filter(m=>m!==TE).join("/")}).join("|"),[g,E]=r.length>1?["(?:",")"]:["",""];s="^"+g+s+E+"$",this.negate&&(s="^(?!"+s+").+$");try{this.regexp=new RegExp(s,[...o].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(r){return this.preserveMultipleSlashes?r.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(r)?["",...r.split(/\/+/)]:r.split(/\/+/)}match(r,t=this.partial){if(this.debug("match",r,this.pattern),this.comment)return!1;if(this.empty)return r==="";if(r==="/"&&t)return!0;let i=this.options;this.isWindows&&(r=r.split("\\").join("/"));let o=this.slashSplit(r);this.debug(this.pattern,"split",o);let s=this.set;this.debug(this.pattern,"set",s);let g=o[o.length-1];if(!g)for(let E=o.length-2;!g&&E>=0;E--)g=o[E];for(let E=0;E{typeof xAA.emitWarning=="function"?xAA.emitWarning(A,r,t,i):console.error(`[${t}] ${r}: ${A}`)},wH=globalThis.AbortController,aDA=globalThis.AbortSignal;if(typeof wH>"u"){aDA=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(i,o){this._onabort.push(o)}},wH=class{constructor(){r()}signal=new aDA;abort(i){if(!this.signal.aborted){this.signal.reason=i,this.signal.aborted=!0;for(let o of this.signal._onabort)o(i);this.signal.onabort?.(i)}}};let A=xAA.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",r=()=>{A&&(A=!1,sDA("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",r))}}var P9e=A=>!oDA.has(A),sRt=Symbol("type"),$D=A=>A&&A===Math.floor(A)&&A>0&&isFinite(A),cDA=A=>$D(A)?A<=Math.pow(2,8)?Uint8Array:A<=Math.pow(2,16)?Uint16Array:A<=Math.pow(2,32)?Uint32Array:A<=Number.MAX_SAFE_INTEGER?rI:null:null,rI=class extends Array{constructor(r){super(r),this.fill(0)}},HAA=class A{heap;length;static#A=!1;static create(r){let t=cDA(r);if(!t)return[];A.#A=!0;let i=new A(r,t);return A.#A=!1,i}constructor(r,t){if(!A.#A)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new t(r),this.length=0}push(r){this.heap[this.length++]=r}pop(){return this.heap[--this.length]}},Wg=class A{#A;#r;#n;#t;#o;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#c;#u;#s;#a;#e;#E;#B;#d;#g;#Q;#f;#b;#O;#v;#m;#C;#p;static unsafeExposeInternals(r){return{starts:r.#O,ttls:r.#v,sizes:r.#b,keyMap:r.#s,keyList:r.#a,valList:r.#e,next:r.#E,prev:r.#B,get head(){return r.#d},get tail(){return r.#g},free:r.#Q,isBackgroundFetch:t=>r.#l(t),backgroundFetch:(t,i,o,s)=>r.#S(t,i,o,s),moveToTail:t=>r.#H(t),indexes:t=>r.#w(t),rindexes:t=>r.#I(t),isStale:t=>r.#h(t)}}get max(){return this.#A}get maxSize(){return this.#r}get calculatedSize(){return this.#u}get size(){return this.#c}get fetchMethod(){return this.#o}get dispose(){return this.#n}get disposeAfter(){return this.#t}constructor(r){let{max:t=0,ttl:i,ttlResolution:o=1,ttlAutopurge:s,updateAgeOnGet:g,updateAgeOnHas:E,allowStale:p,dispose:B,disposeAfter:m,noDisposeOnSet:_,noUpdateTTL:x,maxSize:O=0,maxEntrySize:k=0,sizeCalculation:P,fetchMethod:H,noDeleteOnFetchRejection:T,noDeleteOnStaleGet:v,allowStaleOnFetchRejection:F,allowStaleOnFetchAbort:y,ignoreFetchAbort:S}=r;if(t!==0&&!$D(t))throw new TypeError("max option must be a nonnegative integer");let U=t?cDA(t):Array;if(!U)throw new Error("invalid max value: "+t);if(this.#A=t,this.#r=O,this.maxEntrySize=k||this.#r,this.sizeCalculation=P,this.sizeCalculation){if(!this.#r&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(H!==void 0&&typeof H!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#o=H,this.#C=!!H,this.#s=new Map,this.#a=new Array(t).fill(void 0),this.#e=new Array(t).fill(void 0),this.#E=new U(t),this.#B=new U(t),this.#d=0,this.#g=0,this.#Q=HAA.create(t),this.#c=0,this.#u=0,typeof B=="function"&&(this.#n=B),typeof m=="function"?(this.#t=m,this.#f=[]):(this.#t=void 0,this.#f=void 0),this.#m=!!this.#n,this.#p=!!this.#t,this.noDisposeOnSet=!!_,this.noUpdateTTL=!!x,this.noDeleteOnFetchRejection=!!T,this.allowStaleOnFetchRejection=!!F,this.allowStaleOnFetchAbort=!!y,this.ignoreFetchAbort=!!S,this.maxEntrySize!==0){if(this.#r!==0&&!$D(this.#r))throw new TypeError("maxSize must be a positive integer if specified");if(!$D(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#k()}if(this.allowStale=!!p,this.noDeleteOnStaleGet=!!v,this.updateAgeOnGet=!!g,this.updateAgeOnHas=!!E,this.ttlResolution=$D(o)||o===0?o:1,this.ttlAutopurge=!!s,this.ttl=i||0,this.ttl){if(!$D(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#M()}if(this.#A===0&&this.ttl===0&&this.#r===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#A&&!this.#r){let V="LRU_CACHE_UNBOUNDED";P9e(V)&&(oDA.add(V),sDA("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",V,A))}}getRemainingTTL(r){return this.#s.has(r)?1/0:0}#M(){let r=new rI(this.#A),t=new rI(this.#A);this.#v=r,this.#O=t,this.#i=(s,g,E=GO.now())=>{if(t[s]=g!==0?E:0,r[s]=g,g!==0&&this.ttlAutopurge){let p=setTimeout(()=>{this.#h(s)&&this.delete(this.#a[s])},g+1);p.unref&&p.unref()}},this.#y=s=>{t[s]=r[s]!==0?GO.now():0},this.#D=(s,g)=>{if(r[g]){let E=r[g],p=t[g];s.ttl=E,s.start=p,s.now=i||o();let B=s.now-p;s.remainingTTL=E-B}};let i=0,o=()=>{let s=GO.now();if(this.ttlResolution>0){i=s;let g=setTimeout(()=>i=0,this.ttlResolution);g.unref&&g.unref()}return s};this.getRemainingTTL=s=>{let g=this.#s.get(s);if(g===void 0)return 0;let E=r[g],p=t[g];if(E===0||p===0)return 1/0;let B=(i||o())-p;return E-B},this.#h=s=>r[s]!==0&&t[s]!==0&&(i||o())-t[s]>r[s]}#y=()=>{};#D=()=>{};#i=()=>{};#h=()=>!1;#k(){let r=new rI(this.#A);this.#u=0,this.#b=r,this.#_=t=>{this.#u-=r[t],r[t]=0},this.#R=(t,i,o,s)=>{if(this.#l(i))return 0;if(!$D(o))if(s){if(typeof s!="function")throw new TypeError("sizeCalculation must be a function");if(o=s(i,t),!$D(o))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return o},this.#F=(t,i,o)=>{if(r[t]=i,this.#r){let s=this.#r-r[t];for(;this.#u>s;)this.#x(!0)}this.#u+=r[t],o&&(o.entrySize=i,o.totalCalculatedSize=this.#u)}}#_=r=>{};#F=(r,t,i)=>{};#R=(r,t,i,o)=>{if(i||o)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#w({allowStale:r=this.allowStale}={}){if(this.#c)for(let t=this.#g;!(!this.#T(t)||((r||!this.#h(t))&&(yield t),t===this.#d));)t=this.#B[t]}*#I({allowStale:r=this.allowStale}={}){if(this.#c)for(let t=this.#d;!(!this.#T(t)||((r||!this.#h(t))&&(yield t),t===this.#g));)t=this.#E[t]}#T(r){return r!==void 0&&this.#s.get(this.#a[r])===r}*entries(){for(let r of this.#w())this.#e[r]!==void 0&&this.#a[r]!==void 0&&!this.#l(this.#e[r])&&(yield[this.#a[r],this.#e[r]])}*rentries(){for(let r of this.#I())this.#e[r]!==void 0&&this.#a[r]!==void 0&&!this.#l(this.#e[r])&&(yield[this.#a[r],this.#e[r]])}*keys(){for(let r of this.#w()){let t=this.#a[r];t!==void 0&&!this.#l(this.#e[r])&&(yield t)}}*rkeys(){for(let r of this.#I()){let t=this.#a[r];t!==void 0&&!this.#l(this.#e[r])&&(yield t)}}*values(){for(let r of this.#w())this.#e[r]!==void 0&&!this.#l(this.#e[r])&&(yield this.#e[r])}*rvalues(){for(let r of this.#I())this.#e[r]!==void 0&&!this.#l(this.#e[r])&&(yield this.#e[r])}[Symbol.iterator](){return this.entries()}find(r,t={}){for(let i of this.#w()){let o=this.#e[i],s=this.#l(o)?o.__staleWhileFetching:o;if(s!==void 0&&r(s,this.#a[i],this))return this.get(this.#a[i],t)}}forEach(r,t=this){for(let i of this.#w()){let o=this.#e[i],s=this.#l(o)?o.__staleWhileFetching:o;s!==void 0&&r.call(t,s,this.#a[i],this)}}rforEach(r,t=this){for(let i of this.#I()){let o=this.#e[i],s=this.#l(o)?o.__staleWhileFetching:o;s!==void 0&&r.call(t,s,this.#a[i],this)}}purgeStale(){let r=!1;for(let t of this.#I({allowStale:!0}))this.#h(t)&&(this.delete(this.#a[t]),r=!0);return r}dump(){let r=[];for(let t of this.#w({allowStale:!0})){let i=this.#a[t],o=this.#e[t],s=this.#l(o)?o.__staleWhileFetching:o;if(s===void 0||i===void 0)continue;let g={value:s};if(this.#v&&this.#O){g.ttl=this.#v[t];let E=GO.now()-this.#O[t];g.start=Math.floor(Date.now()-E)}this.#b&&(g.size=this.#b[t]),r.unshift([i,g])}return r}load(r){this.clear();for(let[t,i]of r){if(i.start){let o=Date.now()-i.start;i.start=GO.now()-o}this.set(t,i.value,i)}}set(r,t,i={}){if(t===void 0)return this.delete(r),this;let{ttl:o=this.ttl,start:s,noDisposeOnSet:g=this.noDisposeOnSet,sizeCalculation:E=this.sizeCalculation,status:p}=i,{noUpdateTTL:B=this.noUpdateTTL}=i,m=this.#R(r,t,i.size||0,E);if(this.maxEntrySize&&m>this.maxEntrySize)return p&&(p.set="miss",p.maxEntrySizeExceeded=!0),this.delete(r),this;let _=this.#c===0?void 0:this.#s.get(r);if(_===void 0)_=this.#c===0?this.#g:this.#Q.length!==0?this.#Q.pop():this.#c===this.#A?this.#x(!1):this.#c,this.#a[_]=r,this.#e[_]=t,this.#s.set(r,_),this.#E[this.#g]=_,this.#B[_]=this.#g,this.#g=_,this.#c++,this.#F(_,m,p),p&&(p.set="add"),B=!1;else{this.#H(_);let x=this.#e[_];if(t!==x){if(this.#C&&this.#l(x)?x.__abortController.abort(new Error("replaced")):g||(this.#m&&this.#n?.(x,r,"set"),this.#p&&this.#f?.push([x,r,"set"])),this.#_(_),this.#F(_,m,p),this.#e[_]=t,p){p.set="replace";let O=x&&this.#l(x)?x.__staleWhileFetching:x;O!==void 0&&(p.oldValue=O)}}else p&&(p.set="update")}if(o!==0&&!this.#v&&this.#M(),this.#v&&(B||this.#i(_,o,s),p&&this.#D(p,_)),!g&&this.#p&&this.#f){let x=this.#f,O;for(;O=x?.shift();)this.#t?.(...O)}return this}pop(){try{for(;this.#c;){let r=this.#e[this.#d];if(this.#x(!0),this.#l(r)){if(r.__staleWhileFetching)return r.__staleWhileFetching}else if(r!==void 0)return r}}finally{if(this.#p&&this.#f){let r=this.#f,t;for(;t=r?.shift();)this.#t?.(...t)}}}#x(r){let t=this.#d,i=this.#a[t],o=this.#e[t];return this.#C&&this.#l(o)?o.__abortController.abort(new Error("evicted")):(this.#m||this.#p)&&(this.#m&&this.#n?.(o,i,"evict"),this.#p&&this.#f?.push([o,i,"evict"])),this.#_(t),r&&(this.#a[t]=void 0,this.#e[t]=void 0,this.#Q.push(t)),this.#c===1?(this.#d=this.#g=0,this.#Q.length=0):this.#d=this.#E[t],this.#s.delete(i),this.#c--,t}has(r,t={}){let{updateAgeOnHas:i=this.updateAgeOnHas,status:o}=t,s=this.#s.get(r);if(s!==void 0){let g=this.#e[s];if(this.#l(g)&&g.__staleWhileFetching===void 0)return!1;if(this.#h(s))o&&(o.has="stale",this.#D(o,s));else return i&&this.#y(s),o&&(o.has="hit",this.#D(o,s)),!0}else o&&(o.has="miss");return!1}peek(r,t={}){let{allowStale:i=this.allowStale}=t,o=this.#s.get(r);if(o!==void 0&&(i||!this.#h(o))){let s=this.#e[o];return this.#l(s)?s.__staleWhileFetching:s}}#S(r,t,i,o){let s=t===void 0?void 0:this.#e[t];if(this.#l(s))return s;let g=new wH,{signal:E}=i;E?.addEventListener("abort",()=>g.abort(E.reason),{signal:g.signal});let p={signal:g.signal,options:i,context:o},B=(P,H=!1)=>{let{aborted:T}=g.signal,v=i.ignoreFetchAbort&&P!==void 0;if(i.status&&(T&&!H?(i.status.fetchAborted=!0,i.status.fetchError=g.signal.reason,v&&(i.status.fetchAbortIgnored=!0)):i.status.fetchResolved=!0),T&&!v&&!H)return _(g.signal.reason);let F=O;return this.#e[t]===O&&(P===void 0?F.__staleWhileFetching?this.#e[t]=F.__staleWhileFetching:this.delete(r):(i.status&&(i.status.fetchUpdated=!0),this.set(r,P,p.options))),P},m=P=>(i.status&&(i.status.fetchRejected=!0,i.status.fetchError=P),_(P)),_=P=>{let{aborted:H}=g.signal,T=H&&i.allowStaleOnFetchAbort,v=T||i.allowStaleOnFetchRejection,F=v||i.noDeleteOnFetchRejection,y=O;if(this.#e[t]===O&&(!F||y.__staleWhileFetching===void 0?this.delete(r):T||(this.#e[t]=y.__staleWhileFetching)),v)return i.status&&y.__staleWhileFetching!==void 0&&(i.status.returnedStale=!0),y.__staleWhileFetching;if(y.__returned===y)throw P},x=(P,H)=>{let T=this.#o?.(r,s,p);T&&T instanceof Promise&&T.then(v=>P(v===void 0?void 0:v),H),g.signal.addEventListener("abort",()=>{(!i.ignoreFetchAbort||i.allowStaleOnFetchAbort)&&(P(void 0),i.allowStaleOnFetchAbort&&(P=v=>B(v,!0)))})};i.status&&(i.status.fetchDispatched=!0);let O=new Promise(x).then(B,m),k=Object.assign(O,{__abortController:g,__staleWhileFetching:s,__returned:void 0});return t===void 0?(this.set(r,k,{...p.options,status:void 0}),t=this.#s.get(r)):this.#e[t]=k,k}#l(r){if(!this.#C)return!1;let t=r;return!!t&&t instanceof Promise&&t.hasOwnProperty("__staleWhileFetching")&&t.__abortController instanceof wH}async fetch(r,t={}){let{allowStale:i=this.allowStale,updateAgeOnGet:o=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,ttl:g=this.ttl,noDisposeOnSet:E=this.noDisposeOnSet,size:p=0,sizeCalculation:B=this.sizeCalculation,noUpdateTTL:m=this.noUpdateTTL,noDeleteOnFetchRejection:_=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:x=this.allowStaleOnFetchRejection,ignoreFetchAbort:O=this.ignoreFetchAbort,allowStaleOnFetchAbort:k=this.allowStaleOnFetchAbort,context:P,forceRefresh:H=!1,status:T,signal:v}=t;if(!this.#C)return T&&(T.fetch="get"),this.get(r,{allowStale:i,updateAgeOnGet:o,noDeleteOnStaleGet:s,status:T});let F={allowStale:i,updateAgeOnGet:o,noDeleteOnStaleGet:s,ttl:g,noDisposeOnSet:E,size:p,sizeCalculation:B,noUpdateTTL:m,noDeleteOnFetchRejection:_,allowStaleOnFetchRejection:x,allowStaleOnFetchAbort:k,ignoreFetchAbort:O,status:T,signal:v},y=this.#s.get(r);if(y===void 0){T&&(T.fetch="miss");let S=this.#S(r,y,F,P);return S.__returned=S}else{let S=this.#e[y];if(this.#l(S)){let pA=i&&S.__staleWhileFetching!==void 0;return T&&(T.fetch="inflight",pA&&(T.returnedStale=!0)),pA?S.__staleWhileFetching:S.__returned=S}let U=this.#h(y);if(!H&&!U)return T&&(T.fetch="hit"),this.#H(y),o&&this.#y(y),T&&this.#D(T,y),S;let V=this.#S(r,y,F,P),IA=V.__staleWhileFetching!==void 0&&i;return T&&(T.fetch=U?"stale":"refresh",IA&&U&&(T.returnedStale=!0)),IA?V.__staleWhileFetching:V.__returned=V}}get(r,t={}){let{allowStale:i=this.allowStale,updateAgeOnGet:o=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,status:g}=t,E=this.#s.get(r);if(E!==void 0){let p=this.#e[E],B=this.#l(p);return g&&this.#D(g,E),this.#h(E)?(g&&(g.get="stale"),B?(g&&i&&p.__staleWhileFetching!==void 0&&(g.returnedStale=!0),i?p.__staleWhileFetching:void 0):(s||this.delete(r),g&&i&&(g.returnedStale=!0),i?p:void 0)):(g&&(g.get="hit"),B?p.__staleWhileFetching:(this.#H(E),o&&this.#y(E),p))}else g&&(g.get="miss")}#N(r,t){this.#B[t]=r,this.#E[r]=t}#H(r){r!==this.#g&&(r===this.#d?this.#d=this.#E[r]:this.#N(this.#B[r],this.#E[r]),this.#N(this.#g,r),this.#g=r)}delete(r){let t=!1;if(this.#c!==0){let i=this.#s.get(r);if(i!==void 0)if(t=!0,this.#c===1)this.clear();else{this.#_(i);let o=this.#e[i];this.#l(o)?o.__abortController.abort(new Error("deleted")):(this.#m||this.#p)&&(this.#m&&this.#n?.(o,r,"delete"),this.#p&&this.#f?.push([o,r,"delete"])),this.#s.delete(r),this.#a[i]=void 0,this.#e[i]=void 0,i===this.#g?this.#g=this.#B[i]:i===this.#d?this.#d=this.#E[i]:(this.#E[this.#B[i]]=this.#E[i],this.#B[this.#E[i]]=this.#B[i]),this.#c--,this.#Q.push(i)}}if(this.#p&&this.#f?.length){let i=this.#f,o;for(;o=i?.shift();)this.#t?.(...o)}return t}clear(){for(let r of this.#I({allowStale:!0})){let t=this.#e[r];if(this.#l(t))t.__abortController.abort(new Error("deleted"));else{let i=this.#a[r];this.#m&&this.#n?.(t,i,"delete"),this.#p&&this.#f?.push([t,i,"delete"])}}if(this.#s.clear(),this.#e.fill(void 0),this.#a.fill(void 0),this.#v&&this.#O&&(this.#v.fill(0),this.#O.fill(0)),this.#b&&this.#b.fill(0),this.#d=0,this.#g=0,this.#Q.length=0,this.#u=0,this.#c=0,this.#p&&this.#f){let r=this.#f,t;for(;t=r?.shift();)this.#t?.(...t)}}};var nI=require("path"),QDA=require("url"),z9e=Yn(require("fs"),1),xm=require("fs"),r_=require("fs/promises");var MH=require("events"),GAA=Yn(require("stream"),1),pDA=require("string_decoder"),lDA=typeof process=="object"&&process?process:{stdout:null,stderr:null},G9e=A=>!!A&&typeof A=="object"&&(A instanceof e_||A instanceof GAA.default||Y9e(A)||U9e(A)),Y9e=A=>!!A&&typeof A=="object"&&A instanceof MH.EventEmitter&&typeof A.pipe=="function"&&A.pipe!==GAA.default.Writable.prototype.pipe,U9e=A=>!!A&&typeof A=="object"&&A instanceof MH.EventEmitter&&typeof A.write=="function"&&typeof A.end=="function",c4=Symbol("EOF"),l4=Symbol("maybeEmitEnd"),A_=Symbol("emittedEnd"),vH=Symbol("emittingEnd"),YO=Symbol("emittedError"),yH=Symbol("closed"),uDA=Symbol("read"),CH=Symbol("flush"),gDA=Symbol("flushChunk"),D0=Symbol("encoding"),tI=Symbol("decoder"),jp=Symbol("flowing"),UO=Symbol("paused"),iI=Symbol("resume"),Wp=Symbol("buffer"),rB=Symbol("pipes"),Jp=Symbol("bufferLength"),SAA=Symbol("bufferPush"),IH=Symbol("bufferShift"),_f=Symbol("objectMode"),ad=Symbol("destroyed"),FAA=Symbol("error"),RAA=Symbol("emitData"),dDA=Symbol("emitEnd"),TAA=Symbol("emitEnd2"),Mm=Symbol("async"),NAA=Symbol("abort"),bH=Symbol("aborted"),LO=Symbol("signal"),zv=Symbol("dataListeners"),Hh=Symbol("discarded"),jO=A=>Promise.resolve().then(A),L9e=A=>A(),j9e=A=>A==="end"||A==="finish"||A==="prefinish",W9e=A=>A instanceof ArrayBuffer||!!A&&typeof A=="object"&&A.constructor&&A.constructor.name==="ArrayBuffer"&&A.byteLength>=0,J9e=A=>!Buffer.isBuffer(A)&&ArrayBuffer.isView(A),OH=class{src;dest;opts;ondrain;constructor(r,t,i){this.src=r,this.dest=t,this.opts=i,this.ondrain=()=>r[iI](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(r){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},PAA=class extends OH{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(r,t,i){super(r,t,i),this.proxyErrors=o=>t.emit("error",o),r.on("error",this.proxyErrors)}},q9e=A=>!!A.objectMode,V9e=A=>!A.objectMode&&!!A.encoding&&A.encoding!=="buffer",e_=class extends MH.EventEmitter{[jp]=!1;[UO]=!1;[rB]=[];[Wp]=[];[_f];[D0];[Mm];[tI];[c4]=!1;[A_]=!1;[vH]=!1;[yH]=!1;[YO]=null;[Jp]=0;[ad]=!1;[LO];[bH]=!1;[zv]=0;[Hh]=!1;writable=!0;readable=!0;constructor(...r){let t=r[0]||{};if(super(),t.objectMode&&typeof t.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");q9e(t)?(this[_f]=!0,this[D0]=null):V9e(t)?(this[D0]=t.encoding,this[_f]=!1):(this[_f]=!1,this[D0]=null),this[Mm]=!!t.async,this[tI]=this[D0]?new pDA.StringDecoder(this[D0]):null,t&&t.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[Wp]}),t&&t.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[rB]});let{signal:i}=t;i&&(this[LO]=i,i.aborted?this[NAA]():i.addEventListener("abort",()=>this[NAA]()))}get bufferLength(){return this[Jp]}get encoding(){return this[D0]}set encoding(r){throw new Error("Encoding must be set at instantiation time")}setEncoding(r){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[_f]}set objectMode(r){throw new Error("objectMode must be set at instantiation time")}get async(){return this[Mm]}set async(r){this[Mm]=this[Mm]||!!r}[NAA](){this[bH]=!0,this.emit("abort",this[LO]?.reason),this.destroy(this[LO]?.reason)}get aborted(){return this[bH]}set aborted(r){}write(r,t,i){if(this[bH])return!1;if(this[c4])throw new Error("write after end");if(this[ad])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof t=="function"&&(i=t,t="utf8"),t||(t="utf8");let o=this[Mm]?jO:L9e;if(!this[_f]&&!Buffer.isBuffer(r)){if(J9e(r))r=Buffer.from(r.buffer,r.byteOffset,r.byteLength);else if(W9e(r))r=Buffer.from(r);else if(typeof r!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[_f]?(this[jp]&&this[Jp]!==0&&this[CH](!0),this[jp]?this.emit("data",r):this[SAA](r),this[Jp]!==0&&this.emit("readable"),i&&o(i),this[jp]):r.length?(typeof r=="string"&&!(t===this[D0]&&!this[tI]?.lastNeed)&&(r=Buffer.from(r,t)),Buffer.isBuffer(r)&&this[D0]&&(r=this[tI].write(r)),this[jp]&&this[Jp]!==0&&this[CH](!0),this[jp]?this.emit("data",r):this[SAA](r),this[Jp]!==0&&this.emit("readable"),i&&o(i),this[jp]):(this[Jp]!==0&&this.emit("readable"),i&&o(i),this[jp])}read(r){if(this[ad])return null;if(this[Hh]=!1,this[Jp]===0||r===0||r&&r>this[Jp])return this[l4](),null;this[_f]&&(r=null),this[Wp].length>1&&!this[_f]&&(this[Wp]=[this[D0]?this[Wp].join(""):Buffer.concat(this[Wp],this[Jp])]);let t=this[uDA](r||null,this[Wp][0]);return this[l4](),t}[uDA](r,t){if(this[_f])this[IH]();else{let i=t;r===i.length||r===null?this[IH]():typeof i=="string"?(this[Wp][0]=i.slice(r),t=i.slice(0,r),this[Jp]-=r):(this[Wp][0]=i.subarray(r),t=i.subarray(0,r),this[Jp]-=r)}return this.emit("data",t),!this[Wp].length&&!this[c4]&&this.emit("drain"),t}end(r,t,i){return typeof r=="function"&&(i=r,r=void 0),typeof t=="function"&&(i=t,t="utf8"),r!==void 0&&this.write(r,t),i&&this.once("end",i),this[c4]=!0,this.writable=!1,(this[jp]||!this[UO])&&this[l4](),this}[iI](){this[ad]||(!this[zv]&&!this[rB].length&&(this[Hh]=!0),this[UO]=!1,this[jp]=!0,this.emit("resume"),this[Wp].length?this[CH]():this[c4]?this[l4]():this.emit("drain"))}resume(){return this[iI]()}pause(){this[jp]=!1,this[UO]=!0,this[Hh]=!1}get destroyed(){return this[ad]}get flowing(){return this[jp]}get paused(){return this[UO]}[SAA](r){this[_f]?this[Jp]+=1:this[Jp]+=r.length,this[Wp].push(r)}[IH](){return this[_f]?this[Jp]-=1:this[Jp]-=this[Wp][0].length,this[Wp].shift()}[CH](r=!1){do;while(this[gDA](this[IH]())&&this[Wp].length);!r&&!this[Wp].length&&!this[c4]&&this.emit("drain")}[gDA](r){return this.emit("data",r),this[jp]}pipe(r,t){if(this[ad])return r;this[Hh]=!1;let i=this[A_];return t=t||{},r===lDA.stdout||r===lDA.stderr?t.end=!1:t.end=t.end!==!1,t.proxyErrors=!!t.proxyErrors,i?t.end&&r.end():(this[rB].push(t.proxyErrors?new PAA(this,r,t):new OH(this,r,t)),this[Mm]?jO(()=>this[iI]()):this[iI]()),r}unpipe(r){let t=this[rB].find(i=>i.dest===r);t&&(this[rB].length===1?(this[jp]&&this[zv]===0&&(this[jp]=!1),this[rB]=[]):this[rB].splice(this[rB].indexOf(t),1),t.unpipe())}addListener(r,t){return this.on(r,t)}on(r,t){let i=super.on(r,t);if(r==="data")this[Hh]=!1,this[zv]++,!this[rB].length&&!this[jp]&&this[iI]();else if(r==="readable"&&this[Jp]!==0)super.emit("readable");else if(j9e(r)&&this[A_])super.emit(r),this.removeAllListeners(r);else if(r==="error"&&this[YO]){let o=t;this[Mm]?jO(()=>o.call(this,this[YO])):o.call(this,this[YO])}return i}removeListener(r,t){return this.off(r,t)}off(r,t){let i=super.off(r,t);return r==="data"&&(this[zv]=this.listeners("data").length,this[zv]===0&&!this[Hh]&&!this[rB].length&&(this[jp]=!1)),i}removeAllListeners(r){let t=super.removeAllListeners(r);return(r==="data"||r===void 0)&&(this[zv]=0,!this[Hh]&&!this[rB].length&&(this[jp]=!1)),t}get emittedEnd(){return this[A_]}[l4](){!this[vH]&&!this[A_]&&!this[ad]&&this[Wp].length===0&&this[c4]&&(this[vH]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[yH]&&this.emit("close"),this[vH]=!1)}emit(r,...t){let i=t[0];if(r!=="error"&&r!=="close"&&r!==ad&&this[ad])return!1;if(r==="data")return!this[_f]&&!i?!1:this[Mm]?(jO(()=>this[RAA](i)),!0):this[RAA](i);if(r==="end")return this[dDA]();if(r==="close"){if(this[yH]=!0,!this[A_]&&!this[ad])return!1;let s=super.emit("close");return this.removeAllListeners("close"),s}else if(r==="error"){this[YO]=i,super.emit(FAA,i);let s=!this[LO]||this.listeners("error").length?super.emit("error",i):!1;return this[l4](),s}else if(r==="resume"){let s=super.emit("resume");return this[l4](),s}else if(r==="finish"||r==="prefinish"){let s=super.emit(r);return this.removeAllListeners(r),s}let o=super.emit(r,...t);return this[l4](),o}[RAA](r){for(let i of this[rB])i.dest.write(r)===!1&&this.pause();let t=this[Hh]?!1:super.emit("data",r);return this[l4](),t}[dDA](){return this[A_]?!1:(this[A_]=!0,this.readable=!1,this[Mm]?(jO(()=>this[TAA]()),!0):this[TAA]())}[TAA](){if(this[tI]){let t=this[tI].end();if(t){for(let i of this[rB])i.dest.write(t);this[Hh]||super.emit("data",t)}}for(let t of this[rB])t.end();let r=super.emit("end");return this.removeAllListeners("end"),r}async collect(){let r=Object.assign([],{dataLength:0});this[_f]||(r.dataLength=0);let t=this.promise();return this.on("data",i=>{r.push(i),this[_f]||(r.dataLength+=i.length)}),await t,r}async concat(){if(this[_f])throw new Error("cannot concat in objectMode");let r=await this.collect();return this[D0]?r.join(""):Buffer.concat(r,r.dataLength)}async promise(){return new Promise((r,t)=>{this.on(ad,()=>t(new Error("stream destroyed"))),this.on("error",i=>t(i)),this.on("end",()=>r())})}[Symbol.asyncIterator](){this[Hh]=!1;let r=!1,t=async()=>(this.pause(),r=!0,{value:void 0,done:!0});return{next:()=>{if(r)return t();let o=this.read();if(o!==null)return Promise.resolve({done:!1,value:o});if(this[c4])return t();let s,g,E=_=>{this.off("data",p),this.off("end",B),this.off(ad,m),t(),g(_)},p=_=>{this.off("error",E),this.off("end",B),this.off(ad,m),this.pause(),s({value:_,done:!!this[c4]})},B=()=>{this.off("error",E),this.off("data",p),this.off(ad,m),t(),s({done:!0,value:void 0})},m=()=>E(new Error("stream destroyed"));return new Promise((_,x)=>{g=x,s=_,this.once(ad,m),this.once("error",E),this.once("end",B),this.once("data",p)})},throw:t,return:t,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[Hh]=!1;let r=!1,t=()=>(this.pause(),this.off(FAA,t),this.off(ad,t),this.off("end",t),r=!0,{done:!0,value:void 0}),i=()=>{if(r)return t();let o=this.read();return o===null?t():{done:!1,value:o}};return this.once("end",t),this.once(FAA,t),this.once(ad,t),{next:i,throw:t,return:t,[Symbol.iterator](){return this}}}destroy(r){if(this[ad])return r?this.emit("error",r):this.emit(ad),this;this[ad]=!0,this[Hh]=!0,this[Wp].length=0,this[Jp]=0;let t=this;return typeof t.close=="function"&&!this[yH]&&t.close(),r?this.emit("error",r):this.emit(ad),this}static get isStream(){return G9e}};var K9e=xm.realpathSync.native,JO={lstatSync:xm.lstatSync,readdir:xm.readdir,readdirSync:xm.readdirSync,readlinkSync:xm.readlinkSync,realpathSync:K9e,promises:{lstat:r_.lstat,readdir:r_.readdir,readlink:r_.readlink,realpath:r_.realpath}},mDA=A=>!A||A===JO||A===z9e?JO:{...JO,...A,promises:{...JO.promises,...A.promises||{}}},DDA=/^\\\\\?\\([a-z]:)\\?$/i,X9e=A=>A.replace(/\//g,"\\").replace(DDA,"$1\\"),Z9e=/[\\\/]/,QQ=0,_DA=1,wDA=2,km=4,vDA=6,yDA=8,Kv=10,CDA=12,hQ=15,WO=~hQ,YAA=16,EDA=32,qO=64,_0=128,kH=256,HH=512,fDA=qO|_0|HH,$9e=1023,UAA=A=>A.isFile()?yDA:A.isDirectory()?km:A.isSymbolicLink()?Kv:A.isCharacterDevice()?wDA:A.isBlockDevice()?vDA:A.isSocket()?CDA:A.isFIFO()?_DA:QQ,BDA=new Map,VO=A=>{let r=BDA.get(A);if(r)return r;let t=A.normalize("NFKD");return BDA.set(A,t),t},hDA=new Map,xH=A=>{let r=hDA.get(A);if(r)return r;let t=VO(A.toLowerCase());return hDA.set(A,t),t},SH=class extends Wg{constructor(){super({max:256})}},LAA=class extends Wg{constructor(r=16*1024){super({maxSize:r,sizeCalculation:t=>t.length+1})}},IDA=Symbol("PathScurry setAsCwd"),wf=class{name;root;roots;parent;nocase;#A;#r;get dev(){return this.#r}#n;get mode(){return this.#n}#t;get nlink(){return this.#t}#o;get uid(){return this.#o}#c;get gid(){return this.#c}#u;get rdev(){return this.#u}#s;get blksize(){return this.#s}#a;get ino(){return this.#a}#e;get size(){return this.#e}#E;get blocks(){return this.#E}#B;get atimeMs(){return this.#B}#d;get mtimeMs(){return this.#d}#g;get ctimeMs(){return this.#g}#Q;get birthtimeMs(){return this.#Q}#f;get atime(){return this.#f}#b;get mtime(){return this.#b}#O;get ctime(){return this.#O}#v;get birthtime(){return this.#v}#m;#C;#p;#M;#y;#D;#i;#h;#k;#_;get path(){return(this.parent||this).fullpath()}constructor(r,t=QQ,i,o,s,g,E){this.name=r,this.#m=s?xH(r):VO(r),this.#i=t&$9e,this.nocase=s,this.roots=o,this.root=i||this,this.#h=g,this.#p=E.fullpath,this.#y=E.relative,this.#D=E.relativePosix,this.parent=E.parent,this.parent?this.#A=this.parent.#A:this.#A=mDA(E.fs)}depth(){return this.#C!==void 0?this.#C:this.parent?this.#C=this.parent.depth()+1:this.#C=0}childrenCache(){return this.#h}resolve(r){if(!r)return this;let t=this.getRootString(r),o=r.substring(t.length).split(this.splitSep);return t?this.getRoot(t).#F(o):this.#F(o)}#F(r){let t=this;for(let i of r)t=t.child(i);return t}children(){let r=this.#h.get(this);if(r)return r;let t=Object.assign([],{provisional:0});return this.#h.set(this,t),this.#i&=~YAA,t}child(r,t){if(r===""||r===".")return this;if(r==="..")return this.parent||this;let i=this.children(),o=this.nocase?xH(r):VO(r);for(let p of i)if(p.#m===o)return p;let s=this.parent?this.sep:"",g=this.#p?this.#p+s+r:void 0,E=this.newChild(r,QQ,{...t,parent:this,fullpath:g});return this.canReaddir()||(E.#i|=_0),i.push(E),E}relative(){if(this.#y!==void 0)return this.#y;let r=this.name,t=this.parent;if(!t)return this.#y=this.name;let i=t.relative();return i+(!i||!t.parent?"":this.sep)+r}relativePosix(){if(this.sep==="/")return this.relative();if(this.#D!==void 0)return this.#D;let r=this.name,t=this.parent;if(!t)return this.#D=this.fullpathPosix();let i=t.relativePosix();return i+(!i||!t.parent?"":"/")+r}fullpath(){if(this.#p!==void 0)return this.#p;let r=this.name,t=this.parent;if(!t)return this.#p=this.name;let o=t.fullpath()+(t.parent?this.sep:"")+r;return this.#p=o}fullpathPosix(){if(this.#M!==void 0)return this.#M;if(this.sep==="/")return this.#M=this.fullpath();if(!this.parent){let o=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(o)?this.#M=`//?/${o}`:this.#M=o}let r=this.parent,t=r.fullpathPosix(),i=t+(!t||!r.parent?"":"/")+this.name;return this.#M=i}isUnknown(){return(this.#i&hQ)===QQ}isType(r){return this[`is${r}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#i&hQ)===yDA}isDirectory(){return(this.#i&hQ)===km}isCharacterDevice(){return(this.#i&hQ)===wDA}isBlockDevice(){return(this.#i&hQ)===vDA}isFIFO(){return(this.#i&hQ)===_DA}isSocket(){return(this.#i&hQ)===CDA}isSymbolicLink(){return(this.#i&Kv)===Kv}lstatCached(){return this.#i&EDA?this:void 0}readlinkCached(){return this.#k}realpathCached(){return this.#_}readdirCached(){let r=this.children();return r.slice(0,r.provisional)}canReadlink(){if(this.#k)return!0;if(!this.parent)return!1;let r=this.#i&hQ;return!(r!==QQ&&r!==Kv||this.#i&kH||this.#i&_0)}calledReaddir(){return!!(this.#i&YAA)}isENOENT(){return!!(this.#i&_0)}isNamed(r){return this.nocase?this.#m===xH(r):this.#m===VO(r)}async readlink(){let r=this.#k;if(r)return r;if(this.canReadlink()&&this.parent)try{let t=await this.#A.promises.readlink(this.fullpath()),i=this.parent.resolve(t);if(i)return this.#k=i}catch(t){this.#N(t.code);return}}readlinkSync(){let r=this.#k;if(r)return r;if(this.canReadlink()&&this.parent)try{let t=this.#A.readlinkSync(this.fullpath()),i=this.parent.resolve(t);if(i)return this.#k=i}catch(t){this.#N(t.code);return}}#R(r){this.#i|=YAA;for(let t=r.provisional;ti(null,r))}readdirCB(r,t=!1){if(!this.canReaddir()){t?r(null,[]):queueMicrotask(()=>r(null,[]));return}let i=this.children();if(this.calledReaddir()){let s=i.slice(0,i.provisional);t?r(null,s):queueMicrotask(()=>r(null,s));return}if(this.#G.push(r),this.#Y)return;this.#Y=!0;let o=this.fullpath();this.#A.readdir(o,{withFileTypes:!0},(s,g)=>{if(s)this.#S(s.code),i.provisional=0;else{for(let E of g)this.#H(E,i);this.#R(i)}this.#J(i.slice(0,i.provisional))})}#P;async readdir(){if(!this.canReaddir())return[];let r=this.children();if(this.calledReaddir())return r.slice(0,r.provisional);let t=this.fullpath();if(this.#P)await this.#P;else{let i=()=>{};this.#P=new Promise(o=>i=o);try{for(let o of await this.#A.promises.readdir(t,{withFileTypes:!0}))this.#H(o,r);this.#R(r)}catch(o){this.#S(o.code),r.provisional=0}this.#P=void 0,i()}return r.slice(0,r.provisional)}readdirSync(){if(!this.canReaddir())return[];let r=this.children();if(this.calledReaddir())return r.slice(0,r.provisional);let t=this.fullpath();try{for(let i of this.#A.readdirSync(t,{withFileTypes:!0}))this.#H(i,r);this.#R(r)}catch(i){this.#S(i.code),r.provisional=0}return r.slice(0,r.provisional)}canReaddir(){if(this.#i&fDA)return!1;let r=hQ&this.#i;return r===QQ||r===km||r===Kv}shouldWalk(r,t){return(this.#i&km)===km&&!(this.#i&fDA)&&!r.has(this)&&(!t||t(this))}async realpath(){if(this.#_)return this.#_;if(!((HH|kH|_0)&this.#i))try{let r=await this.#A.promises.realpath(this.fullpath());return this.#_=this.resolve(r)}catch{this.#T()}}realpathSync(){if(this.#_)return this.#_;if(!((HH|kH|_0)&this.#i))try{let r=this.#A.realpathSync(this.fullpath());return this.#_=this.resolve(r)}catch{this.#T()}}[IDA](r){if(r===this)return;let t=new Set([]),i=[],o=this;for(;o&&o.parent;)t.add(o),o.#y=i.join(this.sep),o.#D=i.join("/"),o=o.parent,i.push("..");for(o=r;o&&o.parent&&!t.has(o);)o.#y=void 0,o.#D=void 0,o=o.parent}},FH=class A extends wf{sep="\\";splitSep=Z9e;constructor(r,t=QQ,i,o,s,g,E){super(r,t,i,o,s,g,E)}newChild(r,t=QQ,i={}){return new A(r,t,this.root,this.roots,this.nocase,this.childrenCache(),i)}getRootString(r){return nI.win32.parse(r).root}getRoot(r){if(r=X9e(r.toUpperCase()),r===this.root.name)return this.root;for(let[t,i]of Object.entries(this.roots))if(this.sameRoot(r,t))return this.roots[r]=i;return this.roots[r]=new aI(r,this).root}sameRoot(r,t=this.root.name){return r=r.toUpperCase().replace(/\//g,"\\").replace(DDA,"$1\\"),r===t}},RH=class A extends wf{splitSep="/";sep="/";constructor(r,t=QQ,i,o,s,g,E){super(r,t,i,o,s,g,E)}getRootString(r){return r.startsWith("/")?"/":""}getRoot(r){return this.root}newChild(r,t=QQ,i={}){return new A(r,t,this.root,this.roots,this.nocase,this.childrenCache(),i)}},TH=class{root;rootPath;roots;cwd;#A;#r;#n;nocase;#t;constructor(r=process.cwd(),t,i,{nocase:o,childrenCacheSize:s=16*1024,fs:g=JO}={}){this.#t=mDA(g),(r instanceof URL||r.startsWith("file://"))&&(r=(0,QDA.fileURLToPath)(r));let E=t.resolve(r);this.roots=Object.create(null),this.rootPath=this.parseRootPath(E),this.#A=new SH,this.#r=new SH,this.#n=new LAA(s);let p=E.substring(this.rootPath.length).split(i);if(p.length===1&&!p[0]&&p.pop(),o===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=o,this.root=this.newRoot(this.#t),this.roots[this.rootPath]=this.root;let B=this.root,m=p.length-1,_=t.sep,x=this.rootPath,O=!1;for(let k of p){let P=m--;B=B.child(k,{relative:new Array(P).fill("..").join(_),relativePosix:new Array(P).fill("..").join("/"),fullpath:x+=(O?"":_)+k}),O=!0}this.cwd=B}depth(r=this.cwd){return typeof r=="string"&&(r=this.cwd.resolve(r)),r.depth()}childrenCache(){return this.#n}resolve(...r){let t="";for(let s=r.length-1;s>=0;s--){let g=r[s];if(!(!g||g===".")&&(t=t?`${g}/${t}`:g,this.isAbsolute(g)))break}let i=this.#A.get(t);if(i!==void 0)return i;let o=this.cwd.resolve(t).fullpath();return this.#A.set(t,o),o}resolvePosix(...r){let t="";for(let s=r.length-1;s>=0;s--){let g=r[s];if(!(!g||g===".")&&(t=t?`${g}/${t}`:g,this.isAbsolute(g)))break}let i=this.#r.get(t);if(i!==void 0)return i;let o=this.cwd.resolve(t).fullpathPosix();return this.#r.set(t,o),o}relative(r=this.cwd){return typeof r=="string"&&(r=this.cwd.resolve(r)),r.relative()}relativePosix(r=this.cwd){return typeof r=="string"&&(r=this.cwd.resolve(r)),r.relativePosix()}basename(r=this.cwd){return typeof r=="string"&&(r=this.cwd.resolve(r)),r.name}dirname(r=this.cwd){return typeof r=="string"&&(r=this.cwd.resolve(r)),(r.parent||r).fullpath()}async readdir(r=this.cwd,t={withFileTypes:!0}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r,r=this.cwd);let{withFileTypes:i}=t;if(r.canReaddir()){let o=await r.readdir();return i?o:o.map(s=>s.name)}else return[]}readdirSync(r=this.cwd,t={withFileTypes:!0}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r,r=this.cwd);let{withFileTypes:i=!0}=t;return r.canReaddir()?i?r.readdirSync():r.readdirSync().map(o=>o.name):[]}async lstat(r=this.cwd){return typeof r=="string"&&(r=this.cwd.resolve(r)),r.lstat()}lstatSync(r=this.cwd){return typeof r=="string"&&(r=this.cwd.resolve(r)),r.lstatSync()}async readlink(r=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r.withFileTypes,r=this.cwd);let i=await r.readlink();return t?i:i?.fullpath()}readlinkSync(r=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r.withFileTypes,r=this.cwd);let i=r.readlinkSync();return t?i:i?.fullpath()}async realpath(r=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r.withFileTypes,r=this.cwd);let i=await r.realpath();return t?i:i?.fullpath()}realpathSync(r=this.cwd,{withFileTypes:t}={withFileTypes:!1}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r.withFileTypes,r=this.cwd);let i=r.realpathSync();return t?i:i?.fullpath()}async walk(r=this.cwd,t={}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r,r=this.cwd);let{withFileTypes:i=!0,follow:o=!1,filter:s,walkFilter:g}=t,E=[];(!s||s(r))&&E.push(i?r:r.fullpath());let p=new Set,B=(_,x)=>{p.add(_),_.readdirCB((O,k)=>{if(O)return x(O);let P=k.length;if(!P)return x();let H=()=>{--P===0&&x()};for(let T of k)(!s||s(T))&&E.push(i?T:T.fullpath()),o&&T.isSymbolicLink()?T.realpath().then(v=>v?.isUnknown()?v.lstat():v).then(v=>v?.shouldWalk(p,g)?B(v,H):H()):T.shouldWalk(p,g)?B(T,H):H()},!0)},m=r;return new Promise((_,x)=>{B(m,O=>{if(O)return x(O);_(E)})})}walkSync(r=this.cwd,t={}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r,r=this.cwd);let{withFileTypes:i=!0,follow:o=!1,filter:s,walkFilter:g}=t,E=[];(!s||s(r))&&E.push(i?r:r.fullpath());let p=new Set([r]);for(let B of p){let m=B.readdirSync();for(let _ of m){(!s||s(_))&&E.push(i?_:_.fullpath());let x=_;if(_.isSymbolicLink()){if(!(o&&(x=_.realpathSync())))continue;x.isUnknown()&&x.lstatSync()}x.shouldWalk(p,g)&&p.add(x)}}return E}[Symbol.asyncIterator](){return this.iterate()}iterate(r=this.cwd,t={}){return typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r,r=this.cwd),this.stream(r,t)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(r=this.cwd,t={}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r,r=this.cwd);let{withFileTypes:i=!0,follow:o=!1,filter:s,walkFilter:g}=t;(!s||s(r))&&(yield i?r:r.fullpath());let E=new Set([r]);for(let p of E){let B=p.readdirSync();for(let m of B){(!s||s(m))&&(yield i?m:m.fullpath());let _=m;if(m.isSymbolicLink()){if(!(o&&(_=m.realpathSync())))continue;_.isUnknown()&&_.lstatSync()}_.shouldWalk(E,g)&&E.add(_)}}}stream(r=this.cwd,t={}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r,r=this.cwd);let{withFileTypes:i=!0,follow:o=!1,filter:s,walkFilter:g}=t,E=new e_({objectMode:!0});(!s||s(r))&&E.write(i?r:r.fullpath());let p=new Set,B=[r],m=0,_=()=>{let x=!1;for(;!x;){let O=B.shift();if(!O){m===0&&E.end();return}m++,p.add(O);let k=(H,T,v=!1)=>{if(H)return E.emit("error",H);if(o&&!v){let F=[];for(let y of T)y.isSymbolicLink()&&F.push(y.realpath().then(S=>S?.isUnknown()?S.lstat():S));if(F.length){Promise.all(F).then(()=>k(null,T,!0));return}}for(let F of T)F&&(!s||s(F))&&(E.write(i?F:F.fullpath())||(x=!0));m--;for(let F of T){let y=F.realpathCached()||F;y.shouldWalk(p,g)&&B.push(y)}x&&!E.flowing?E.once("drain",_):P||_()},P=!0;O.readdirCB(k,!0),P=!1}};return _(),E}streamSync(r=this.cwd,t={}){typeof r=="string"?r=this.cwd.resolve(r):r instanceof wf||(t=r,r=this.cwd);let{withFileTypes:i=!0,follow:o=!1,filter:s,walkFilter:g}=t,E=new e_({objectMode:!0}),p=new Set;(!s||s(r))&&E.write(i?r:r.fullpath());let B=[r],m=0,_=()=>{let x=!1;for(;!x;){let O=B.shift();if(!O){m===0&&E.end();return}m++,p.add(O);let k=O.readdirSync();for(let P of k)(!s||s(P))&&(E.write(i?P:P.fullpath())||(x=!0));m--;for(let P of k){let H=P;if(P.isSymbolicLink()){if(!(o&&(H=P.realpathSync())))continue;H.isUnknown()&&H.lstatSync()}H.shouldWalk(p,g)&&B.push(H)}}x&&!E.flowing&&E.once("drain",_)};return _(),E}chdir(r=this.cwd){let t=this.cwd;this.cwd=typeof r=="string"?this.cwd.resolve(r):r,this.cwd[IDA](t)}},aI=class extends TH{sep="\\";constructor(r=process.cwd(),t={}){let{nocase:i=!0}=t;super(r,nI.win32,"\\",{...t,nocase:i}),this.nocase=i;for(let o=this.cwd;o;o=o.parent)o.nocase=this.nocase}parseRootPath(r){return nI.win32.parse(r).root.toUpperCase()}newRoot(r){return new FH(this.rootPath,km,void 0,this.roots,this.nocase,this.childrenCache(),{fs:r})}isAbsolute(r){return r.startsWith("/")||r.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(r)}},oI=class extends TH{sep="/";constructor(r=process.cwd(),t={}){let{nocase:i=!1}=t;super(r,nI.posix,"/",{...t,nocase:i}),this.nocase=i}parseRootPath(r){return"/"}newRoot(r){return new RH(this.rootPath,km,void 0,this.roots,this.nocase,this.childrenCache(),{fs:r})}isAbsolute(r){return r.startsWith("/")}},zO=class extends oI{constructor(r=process.cwd(),t={}){let{nocase:i=!0}=t;super(r,{...t,nocase:i})}},dRt=process.platform==="win32"?FH:RH,bDA=process.platform==="win32"?aI:process.platform==="darwin"?zO:oI;var ODA=require("url");var AHe=A=>A.length>=1,eHe=A=>A.length>=1,sI=class A{#A;#r;#n;length;#t;#o;#c;#u;#s;#a;#e=!0;constructor(r,t,i,o){if(!AHe(r))throw new TypeError("empty pattern list");if(!eHe(t))throw new TypeError("empty glob list");if(t.length!==r.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=r.length,i<0||i>=this.length)throw new TypeError("index out of range");if(this.#A=r,this.#r=t,this.#n=i,this.#t=o,this.#n===0){if(this.isUNC()){let[s,g,E,p,...B]=this.#A,[m,_,x,O,...k]=this.#r;B[0]===""&&(B.shift(),k.shift());let P=[s,g,E,p,""].join("/"),H=[m,_,x,O,""].join("/");this.#A=[P,...B],this.#r=[H,...k],this.length=this.#A.length}else if(this.isDrive()||this.isAbsolute()){let[s,...g]=this.#A,[E,...p]=this.#r;g[0]===""&&(g.shift(),p.shift());let B=s+"/",m=E+"/";this.#A=[B,...g],this.#r=[m,...p],this.length=this.#A.length}}}pattern(){return this.#A[this.#n]}isString(){return typeof this.#A[this.#n]=="string"}isGlobstar(){return this.#A[this.#n]===TE}isRegExp(){return this.#A[this.#n]instanceof RegExp}globString(){return this.#c=this.#c||(this.#n===0?this.isAbsolute()?this.#r[0]+this.#r.slice(1).join("/"):this.#r.join("/"):this.#r.slice(this.#n).join("/"))}hasMore(){return this.length>this.#n+1}rest(){return this.#o!==void 0?this.#o:this.hasMore()?(this.#o=new A(this.#A,this.#r,this.#n+1,this.#t),this.#o.#a=this.#a,this.#o.#s=this.#s,this.#o.#u=this.#u,this.#o):this.#o=null}isUNC(){let r=this.#A;return this.#s!==void 0?this.#s:this.#s=this.#t==="win32"&&this.#n===0&&r[0]===""&&r[1]===""&&typeof r[2]=="string"&&!!r[2]&&typeof r[3]=="string"&&!!r[3]}isDrive(){let r=this.#A;return this.#u!==void 0?this.#u:this.#u=this.#t==="win32"&&this.#n===0&&this.length>1&&typeof r[0]=="string"&&/^[a-z]:$/i.test(r[0])}isAbsolute(){let r=this.#A;return this.#a!==void 0?this.#a:this.#a=r[0]===""&&r.length>1||this.isDrive()||this.isUNC()}root(){let r=this.#A[0];return typeof r=="string"&&this.isAbsolute()&&this.#n===0?r:""}checkFollowGlobstar(){return!(this.#n===0||!this.isGlobstar()||!this.#e)}markFollowGlobstar(){return this.#n===0||!this.isGlobstar()||!this.#e?!1:(this.#e=!1,!0)}};var rHe=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",KO=class{relative;relativeChildren;absolute;absoluteChildren;constructor(r,{nobrace:t,nocase:i,noext:o,noglobstar:s,platform:g=rHe}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[];let E={dot:!0,nobrace:t,nocase:i,noext:o,noglobstar:s,optimizationLevel:2,platform:g,nocomment:!0,nonegate:!0};for(let p of r){let B=new xh(p,E);for(let m=0;m[r,!!(t&2),!!(t&1)])}},JAA=class{store=new Map;add(r,t){if(!r.canReaddir())return;let i=this.store.get(r);i?i.find(o=>o.globString()===t.globString())||i.push(t):this.store.set(r,[t])}get(r){let t=this.store.get(r);if(!t)throw new Error("attempting to walk unknown path");return t}entries(){return this.keys().map(r=>[r,this.store.get(r)])}keys(){return[...this.store.keys()].filter(r=>r.canReaddir())}},XO=class A{hasWalkedCache;matches=new WAA;subwalks=new JAA;patterns;follow;dot;opts;constructor(r,t){this.opts=r,this.follow=!!r.follow,this.dot=!!r.dot,this.hasWalkedCache=t?t.copy():new jAA}processPatterns(r,t){this.patterns=t;let i=t.map(o=>[r,o]);for(let[o,s]of i){this.hasWalkedCache.storeWalked(o,s);let g=s.root(),E=s.isAbsolute()&&this.opts.absolute!==!1;if(g){o=o.resolve(g==="/"&&this.opts.root!==void 0?this.opts.root:g);let _=s.rest();if(_)s=_;else{this.matches.add(o,!0,!1);continue}}if(o.isENOENT())continue;let p,B,m=!1;for(;typeof(p=s.pattern())=="string"&&(B=s.rest());)o=o.resolve(p),s=B,m=!0;if(p=s.pattern(),B=s.rest(),m){if(this.hasWalkedCache.hasWalked(o,s))continue;this.hasWalkedCache.storeWalked(o,s)}if(typeof p=="string"){let _=p===".."||p===""||p===".";this.matches.add(o.resolve(p),E,_);continue}else if(p===TE){(!o.isSymbolicLink()||this.follow||s.checkFollowGlobstar())&&this.subwalks.add(o,s);let _=B?.pattern(),x=B?.rest();if(!B||(_===""||_===".")&&!x)this.matches.add(o,E,_===""||_===".");else if(_===".."){let O=o.parent||o;x?this.hasWalkedCache.hasWalked(O,x)||this.subwalks.add(O,x):this.matches.add(O,E,!0)}}else p instanceof RegExp&&this.subwalks.add(o,s)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new A(this.opts,this.hasWalkedCache)}filterEntries(r,t){let i=this.subwalks.get(r),o=this.child();for(let s of t)for(let g of i){let E=g.isAbsolute(),p=g.pattern(),B=g.rest();p===TE?o.testGlobstar(s,g,B,E):p instanceof RegExp?o.testRegExp(s,p,B,E):o.testString(s,p,B,E)}return o}testGlobstar(r,t,i,o){if((this.dot||!r.name.startsWith("."))&&(t.hasMore()||this.matches.add(r,o,!1),r.canReaddir()&&(this.follow||!r.isSymbolicLink()?this.subwalks.add(r,t):r.isSymbolicLink()&&(i&&t.checkFollowGlobstar()?this.subwalks.add(r,i):t.markFollowGlobstar()&&this.subwalks.add(r,t)))),i){let s=i.pattern();if(typeof s=="string"&&s!==".."&&s!==""&&s!==".")this.testString(r,s,i.rest(),o);else if(s===".."){let g=r.parent||r;this.subwalks.add(g,i)}else s instanceof RegExp&&this.testRegExp(r,s,i.rest(),o)}}testRegExp(r,t,i,o){t.test(r.name)&&(i?this.subwalks.add(r,i):this.matches.add(r,o,!1))}testString(r,t,i,o){r.isNamed(t)&&(i?this.subwalks.add(r,i):this.matches.add(r,o,!1))}};var tHe=(A,r)=>typeof A=="string"?new KO([A],r):Array.isArray(A)?new KO(A,r):A,NH=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#A=[];#r;#n;signal;maxDepth;constructor(r,t,i){this.patterns=r,this.path=t,this.opts=i,this.#n=!i.posix&&i.platform==="win32"?"\\":"/",i.ignore&&(this.#r=tHe(i.ignore,i)),this.maxDepth=i.maxDepth||1/0,i.signal&&(this.signal=i.signal,this.signal.addEventListener("abort",()=>{this.#A.length=0}))}#t(r){return this.seen.has(r)||!!this.#r?.ignored?.(r)}#o(r){return!!this.#r?.childrenIgnored?.(r)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let r;for(;!this.paused&&(r=this.#A.shift());)r()}onResume(r){this.signal?.aborted||(this.paused?this.#A.push(r):r())}async matchCheck(r,t){if(t&&this.opts.nodir)return;let i;if(this.opts.realpath){if(i=r.realpathCached()||await r.realpath(),!i)return;r=i}let o=r.isUnknown()||this.opts.stat;return this.matchCheckTest(o?await r.lstat():r,t)}matchCheckTest(r,t){return r&&(this.maxDepth===1/0||r.depth()<=this.maxDepth)&&(!t||r.canReaddir())&&(!this.opts.nodir||!r.isDirectory())&&!this.#t(r)?r:void 0}matchCheckSync(r,t){if(t&&this.opts.nodir)return;let i;if(this.opts.realpath){if(i=r.realpathCached()||r.realpathSync(),!i)return;r=i}let o=r.isUnknown()||this.opts.stat;return this.matchCheckTest(o?r.lstatSync():r,t)}matchFinish(r,t){if(this.#t(r))return;let i=this.opts.absolute===void 0?t:this.opts.absolute;this.seen.add(r);let o=this.opts.mark&&r.isDirectory()?this.#n:"";if(this.opts.withFileTypes)this.matchEmit(r);else if(i){let s=this.opts.posix?r.fullpathPosix():r.fullpath();this.matchEmit(s+o)}else{let s=this.opts.posix?r.relativePosix():r.relative(),g=this.opts.dotRelative&&!s.startsWith(".."+this.#n)?"."+this.#n:"";this.matchEmit(s?g+s+o:"."+o)}}async match(r,t,i){let o=await this.matchCheck(r,i);o&&this.matchFinish(o,t)}matchSync(r,t,i){let o=this.matchCheckSync(r,i);o&&this.matchFinish(o,t)}walkCB(r,t,i){this.signal?.aborted&&i(),this.walkCB2(r,t,new XO(this.opts),i)}walkCB2(r,t,i,o){if(this.#o(r))return o();if(this.signal?.aborted&&o(),this.paused){this.onResume(()=>this.walkCB2(r,t,i,o));return}i.processPatterns(r,t);let s=1,g=()=>{--s===0&&o()};for(let[E,p,B]of i.matches.entries())this.#t(E)||(s++,this.match(E,p,B).then(()=>g()));for(let E of i.subwalkTargets()){if(this.maxDepth!==1/0&&E.depth()>=this.maxDepth)continue;s++;let p=E.readdirCached();E.calledReaddir()?this.walkCB3(E,p,i,g):E.readdirCB((B,m)=>this.walkCB3(E,m,i,g),!0)}g()}walkCB3(r,t,i,o){i=i.filterEntries(r,t);let s=1,g=()=>{--s===0&&o()};for(let[E,p,B]of i.matches.entries())this.#t(E)||(s++,this.match(E,p,B).then(()=>g()));for(let[E,p]of i.subwalks.entries())s++,this.walkCB2(E,p,i.child(),g);g()}walkCBSync(r,t,i){this.signal?.aborted&&i(),this.walkCB2Sync(r,t,new XO(this.opts),i)}walkCB2Sync(r,t,i,o){if(this.#o(r))return o();if(this.signal?.aborted&&o(),this.paused){this.onResume(()=>this.walkCB2Sync(r,t,i,o));return}i.processPatterns(r,t);let s=1,g=()=>{--s===0&&o()};for(let[E,p,B]of i.matches.entries())this.#t(E)||this.matchSync(E,p,B);for(let E of i.subwalkTargets()){if(this.maxDepth!==1/0&&E.depth()>=this.maxDepth)continue;s++;let p=E.readdirSync();this.walkCB3Sync(E,p,i,g)}g()}walkCB3Sync(r,t,i,o){i=i.filterEntries(r,t);let s=1,g=()=>{--s===0&&o()};for(let[E,p,B]of i.matches.entries())this.#t(E)||this.matchSync(E,p,B);for(let[E,p]of i.subwalks.entries())s++,this.walkCB2Sync(E,p,i.child(),g);g()}},ZO=class extends NH{matches;constructor(r,t,i){super(r,t,i),this.matches=new Set}matchEmit(r){this.matches.add(r)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((r,t)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?t(this.signal.reason):r(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},$O=class extends NH{results;constructor(r,t,i){super(r,t,i),this.results=new e_({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(r){this.results.write(r),this.results.flowing||this.pause()}stream(){let r=this.path;return r.isUnknown()?r.lstat().then(()=>{this.walkCB(r,this.patterns,()=>this.results.end())}):this.walkCB(r,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};var iHe=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",w0=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;opts;patterns;constructor(r,t){if(!t)throw new TypeError("glob options required");if(this.withFileTypes=!!t.withFileTypes,this.signal=t.signal,this.follow=!!t.follow,this.dot=!!t.dot,this.dotRelative=!!t.dotRelative,this.nodir=!!t.nodir,this.mark=!!t.mark,t.cwd?(t.cwd instanceof URL||t.cwd.startsWith("file://"))&&(t.cwd=(0,ODA.fileURLToPath)(t.cwd)):this.cwd="",this.cwd=t.cwd||"",this.root=t.root,this.magicalBraces=!!t.magicalBraces,this.nobrace=!!t.nobrace,this.noext=!!t.noext,this.realpath=!!t.realpath,this.absolute=t.absolute,this.noglobstar=!!t.noglobstar,this.matchBase=!!t.matchBase,this.maxDepth=typeof t.maxDepth=="number"?t.maxDepth:1/0,this.stat=!!t.stat,this.ignore=t.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof r=="string"&&(r=[r]),this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(r=r.map(p=>p.replace(/\\/g,"/"))),this.matchBase){if(t.noglobstar)throw new TypeError("base matching requires globstar");r=r.map(p=>p.includes("/")?p:`./**/${p}`)}if(this.pattern=r,this.platform=t.platform||iHe,this.opts={...t,platform:this.platform},t.scurry){if(this.scurry=t.scurry,t.nocase!==void 0&&t.nocase!==t.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let p=t.platform==="win32"?aI:t.platform==="darwin"?zO:t.platform?oI:bDA;this.scurry=new p(this.cwd,{nocase:t.nocase,fs:t.fs})}this.nocase=this.scurry.nocase;let i=this.platform==="darwin"||this.platform==="win32",o={...t,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:i,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},s=this.pattern.map(p=>new xh(p,o)),[g,E]=s.reduce((p,B)=>(p[0].push(...B.set),p[1].push(...B.globParts),p),[[],[]]);this.patterns=g.map((p,B)=>{let m=E[B];if(!m)throw new Error("invalid pattern object");return new sI(p,m,0,this.platform)})}async walk(){return[...await new ZO(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase}).walk()]}walkSync(){return[...new ZO(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase}).walkSync()]}stream(){return new $O(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase}).stream()}streamSync(){return new $O(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};var qAA=(A,r={})=>{Array.isArray(A)||(A=[A]);for(let t of A)if(new xh(t,r).hasMagic())return!0;return!1};function GH(A,r={}){return new w0(A,r).streamSync()}function kDA(A,r={}){return new w0(A,r).stream()}function YH(A,r={}){return new w0(A,r).walkSync()}async function MDA(A,r={}){return new w0(A,r).walk()}function UH(A,r={}){return new w0(A,r).iterateSync()}function xDA(A,r={}){return new w0(A,r).iterate()}var nHe=GH,aHe=Object.assign(kDA,{sync:GH}),oHe=UH,sHe=Object.assign(xDA,{sync:UH}),cHe=Object.assign(YH,{stream:GH,iterate:UH}),PH=Object.assign(MDA,{glob:MDA,globSync:YH,sync:cHe,globStream:kDA,stream:aHe,globStreamSync:GH,streamSync:nHe,globIterate:xDA,iterate:sHe,globIterateSync:UH,iterateSync:oHe,Glob:w0,hasMagic:qAA,escape:eI,unescape:m0});PH.glob=PH;var t_=(A,r)=>typeof A>"u"||typeof A===r,HDA=A=>!!A&&typeof A=="object"&&t_(A.preserveRoot,"boolean")&&t_(A.tmp,"string")&&t_(A.maxRetries,"number")&&t_(A.retryDelay,"number")&&t_(A.backoff,"number")&&t_(A.maxBackoff,"number")&&(t_(A.glob,"boolean")||A.glob&&typeof A.glob=="object")&&t_(A.filter,"function"),SDA=A=>{if(!HDA(A))throw new Error("invalid rimraf options")},FDA=A=>{SDA(A);let{glob:r,...t}=A;if(!r)return t;let i=r===!0?A.signal?{signal:A.signal}:{}:A.signal?{signal:A.signal,...r}:r;return{...t,glob:{...i,absolute:!0,withFileTypes:!1}}},RDA=(A={})=>FDA(A),TDA=(A={})=>FDA(A);var A6=require("path"),NDA=require("util");var v0=process.env.__TESTING_RIMRAF_PLATFORM__||process.platform;var lHe=(A,r={})=>{let t=typeof A;if(t!=="string"){let o=A&&t==="object"&&A.constructor,g=`The "path" argument must be of type string. Received ${o&&o.name?`an instance of ${o.name}`:t==="object"?(0,NDA.inspect)(A):`type ${t} ${A}`}`;throw Object.assign(new TypeError(g),{path:A,code:"ERR_INVALID_ARG_TYPE"})}if(/\0/.test(A)){let o="path must be a string without null bytes";throw Object.assign(new TypeError(o),{path:A,code:"ERR_INVALID_ARG_VALUE"})}A=(0,A6.resolve)(A);let{root:i}=(0,A6.parse)(A);if(A===i&&r.preserveRoot!==!1){let o="refusing to remove root directory without preserveRoot:false";throw Object.assign(new Error(o),{path:A,code:"ERR_PRESERVE_ROOT"})}if(v0==="win32"){let o=/[*|"<>?:]/,{root:s}=(0,A6.parse)(A);if(o.test(A.substring(s.length)))throw Object.assign(new Error("Illegal characters in path."),{path:A,code:"EINVAL"})}return A},e6=lHe;var Hm=Yn(require("fs"),1),mc=require("fs"),PDA=require("fs"),GDA=A=>(0,PDA.readdirSync)(A,{withFileTypes:!0}),uHe=(A,r)=>new Promise((t,i)=>Hm.default.chmod(A,r,(o,...s)=>o?i(o):t(...s))),gHe=(A,r)=>new Promise((t,i)=>Hm.default.mkdir(A,r,(o,s)=>o?i(o):t(s))),dHe=A=>new Promise((r,t)=>Hm.default.readdir(A,{withFileTypes:!0},(i,o)=>i?t(i):r(o))),pHe=(A,r)=>new Promise((t,i)=>Hm.default.rename(A,r,(o,...s)=>o?i(o):t(...s))),EHe=(A,r)=>new Promise((t,i)=>Hm.default.rm(A,r,(o,...s)=>o?i(o):t(...s))),fHe=A=>new Promise((r,t)=>Hm.default.rmdir(A,(i,...o)=>i?t(i):r(...o))),BHe=A=>new Promise((r,t)=>Hm.default.stat(A,(i,o)=>i?t(i):r(o))),hHe=A=>new Promise((r,t)=>Hm.default.lstat(A,(i,o)=>i?t(i):r(o))),QHe=A=>new Promise((r,t)=>Hm.default.unlink(A,(i,...o)=>i?t(i):r(...o))),WB={chmod:uHe,mkdir:gHe,readdir:dHe,rename:pHe,rm:EHe,rmdir:fHe,stat:BHe,lstat:hHe,unlink:QHe};var uI=require("path");var{readdir:mHe}=WB,cI=A=>mHe(A).catch(r=>r),lI=A=>{try{return GDA(A)}catch(r){return r}};var u4=async A=>A.catch(r=>{if(r.code!=="ENOENT")throw r}),g4=A=>{try{return A()}catch(r){if(r?.code!=="ENOENT")throw r}};var{lstat:DHe,rmdir:_He,unlink:wHe}=WB,LH=async(A,r)=>{if(r?.signal?.aborted)throw r.signal.reason;try{return await YDA(A,r,await DHe(A))}catch(t){if(t?.code==="ENOENT")return!0;throw t}},jH=(A,r)=>{if(r?.signal?.aborted)throw r.signal.reason;try{return UDA(A,r,(0,mc.lstatSync)(A))}catch(t){if(t?.code==="ENOENT")return!0;throw t}},YDA=async(A,r,t)=>{if(r?.signal?.aborted)throw r.signal.reason;let i=t.isDirectory()?await cI(A):null;if(!Array.isArray(i)){if(i){if(i.code==="ENOENT")return!0;if(i.code!=="ENOTDIR")throw i}return r.filter&&!await r.filter(A,t)?!1:(await u4(wHe(A)),!0)}return!(await Promise.all(i.map(s=>YDA((0,uI.resolve)(A,s.name),r,s)))).reduce((s,g)=>s&&g,!0)||r.preserveRoot===!1&&A===(0,uI.parse)(A).root||r.filter&&!await r.filter(A,t)?!1:(await u4(_He(A)),!0)},UDA=(A,r,t)=>{if(r?.signal?.aborted)throw r.signal.reason;let i=t.isDirectory()?lI(A):null;if(!Array.isArray(i)){if(i){if(i.code==="ENOENT")return!0;if(i.code!=="ENOTDIR")throw i}return r.filter&&!r.filter(A,t)?!1:(g4(()=>(0,mc.unlinkSync)(A)),!0)}let o=!0;for(let s of i){let g=(0,uI.resolve)(A,s.name);o=UDA(g,r,s)&&o}return r.preserveRoot===!1&&A===(0,uI.parse)(A).root||!o||r.filter&&!r.filter(A,t)?!1:(g4(()=>(0,mc.rmdirSync)(A)),!0)};var gI=require("path");var{chmod:vHe}=WB,VAA=A=>async r=>{try{return await A(r)}catch(t){let i=t;if(i?.code==="ENOENT")return;if(i?.code==="EPERM"){try{await vHe(r,438)}catch(o){if(o?.code==="ENOENT")return;throw t}return await A(r)}throw t}},zAA=A=>r=>{try{return A(r)}catch(t){let i=t;if(i?.code==="ENOENT")return;if(i?.code==="EPERM"){try{(0,mc.chmodSync)(r,438)}catch(o){if(o?.code==="ENOENT")return;throw t}return A(r)}throw t}};var LDA=new Set(["EMFILE","ENFILE","EBUSY"]),KAA=A=>{let r=async(t,i,o=1,s=0)=>{let g=i.maxBackoff||200,E=i.backoff||1.2,p=i.maxRetries||10,B=0;for(;;)try{return await A(t)}catch(m){let _=m;if(_?.path===t&&_?.code&&LDA.has(_.code)){if(o=Math.ceil(o*E),s=o+s,s{setTimeout(()=>{r(t,i,o,s).then(x,O)},o)});if(B(t,i)=>{let o=i.maxRetries||10,s=0;for(;;)try{return A(t)}catch(g){let E=g;if(E?.path===t&&E?.code&&LDA.has(E.code)&&s{try{return(0,mc.statSync)(A).isDirectory()}catch{return!1}},IHe=A=>yHe(A).then(r=>r.isDirectory(),()=>!1),bHe=async A=>{let{root:r}=(0,i_.parse)(A),t=(0,r6.tmpdir)(),{root:i}=(0,i_.parse)(t);if(r.toLowerCase()===i.toLowerCase())return t;let o=(0,i_.resolve)(r,"/temp");return await IHe(o)?o:r},OHe=A=>{let{root:r}=(0,i_.parse)(A),t=(0,r6.tmpdir)(),{root:i}=(0,i_.parse)(t);if(r.toLowerCase()===i.toLowerCase())return t;let o=(0,i_.resolve)(r,"/temp");return CHe(o)?o:r},MHe=async()=>(0,r6.tmpdir)(),kHe=()=>(0,r6.tmpdir)(),jDA=v0==="win32"?bHe:MHe,WDA=v0==="win32"?OHe:kHe;var{lstat:xHe,rename:HHe,unlink:JDA,rmdir:SHe,chmod:FHe}=WB,zDA=A=>`.${(0,mQ.basename)(A)}.${Math.random()}`,RHe=async A=>JDA(A).catch(r=>{if(r.code==="EPERM")return FHe(A,438).then(()=>JDA(A),t=>{if(t.code!=="ENOENT")throw r});if(r.code==="ENOENT")return;throw r}),THe=A=>{try{(0,mc.unlinkSync)(A)}catch(r){if(r?.code==="EPERM")try{return(0,mc.chmodSync)(A,438)}catch(t){if(t?.code==="ENOENT")return;throw r}else if(r?.code==="ENOENT")return;throw r}},WH=async(A,r)=>{if(r?.signal?.aborted)throw r.signal.reason;try{return await ZAA(A,r,await xHe(A))}catch(t){if(t?.code==="ENOENT")return!0;throw t}},ZAA=async(A,r,t)=>{if(r?.signal?.aborted)throw r.signal.reason;if(!r.tmp)return ZAA(A,{...r,tmp:await jDA(A)},t);if(A===r.tmp&&(0,mQ.parse)(A).root!==A)throw new Error("cannot delete temp directory used for deletion");let i=t.isDirectory()?await cI(A):null;if(!Array.isArray(i)){if(i){if(i.code==="ENOENT")return!0;if(i.code!=="ENOTDIR")throw i}return r.filter&&!await r.filter(A,t)?!1:(await u4(qDA(A,r.tmp,RHe)),!0)}return!(await Promise.all(i.map(s=>ZAA((0,mQ.resolve)(A,s.name),r,s)))).reduce((s,g)=>s&&g,!0)||r.preserveRoot===!1&&A===(0,mQ.parse)(A).root||r.filter&&!await r.filter(A,t)?!1:(await u4(qDA(A,r.tmp,SHe)),!0)},qDA=async(A,r,t)=>{let i=(0,mQ.resolve)(r,zDA(A));return await HHe(A,i),await t(i)},JH=(A,r)=>{if(r?.signal?.aborted)throw r.signal.reason;try{return $AA(A,r,(0,mc.lstatSync)(A))}catch(t){if(t?.code==="ENOENT")return!0;throw t}},$AA=(A,r,t)=>{if(r?.signal?.aborted)throw r.signal.reason;if(!r.tmp)return $AA(A,{...r,tmp:WDA(A)},t);let i=r.tmp;if(A===r.tmp&&(0,mQ.parse)(A).root!==A)throw new Error("cannot delete temp directory used for deletion");let o=t.isDirectory()?lI(A):null;if(!Array.isArray(o)){if(o){if(o.code==="ENOENT")return!0;if(o.code!=="ENOTDIR")throw o}return r.filter&&!r.filter(A,t)?!1:(g4(()=>VDA(A,i,THe)),!0)}let s=!0;for(let g of o){let E=(0,mQ.resolve)(A,g.name);s=$AA(E,r,g)&&s}return!s||r.preserveRoot===!1&&A===(0,mQ.parse)(A).root||r.filter&&!r.filter(A,t)?!1:(g4(()=>VDA(A,i,mc.rmdirSync)),!0)},VDA=(A,r,t)=>{let i=(0,mQ.resolve)(r,zDA(A));return(0,mc.renameSync)(A,i),t(i)};var{unlink:NHe,rmdir:PHe,lstat:GHe}=WB,YHe=KAA(VAA(NHe)),UHe=XAA(zAA(mc.unlinkSync)),LHe=KAA(VAA(PHe)),jHe=XAA(zAA(mc.rmdirSync)),WHe=async(A,r)=>{if(r?.signal?.aborted)throw r.signal.reason;let{filter:t,...i}=r;try{return await LHe(A,i)}catch(o){if(o?.code==="ENOTEMPTY")return await WH(A,i);throw o}},JHe=(A,r)=>{if(r?.signal?.aborted)throw r.signal.reason;let{filter:t,...i}=r;try{return jHe(A,i)}catch(o){if(o?.code==="ENOTEMPTY")return JH(A,i);throw o}},n_=Symbol("start"),KDA=Symbol("child"),qH=Symbol("finish"),VH=async(A,r)=>{if(r?.signal?.aborted)throw r.signal.reason;try{return await AeA(A,r,await GHe(A),n_)}catch(t){if(t?.code==="ENOENT")return!0;throw t}},zH=(A,r)=>{if(r?.signal?.aborted)throw r.signal.reason;try{return eeA(A,r,(0,mc.lstatSync)(A),n_)}catch(t){if(t?.code==="ENOENT")return!0;throw t}},AeA=async(A,r,t,i=n_)=>{if(r?.signal?.aborted)throw r.signal.reason;let o=t.isDirectory()?await cI(A):null;if(!Array.isArray(o)){if(o){if(o.code==="ENOENT")return!0;if(o.code!=="ENOTDIR")throw o}return r.filter&&!await r.filter(A,t)?!1:(await u4(YHe(A,r)),!0)}let s=i===n_?KDA:i,g=(await Promise.all(o.map(E=>AeA((0,gI.resolve)(A,E.name),r,E,s)))).reduce((E,p)=>E&&p,!0);if(i===n_)return AeA(A,r,t,qH);if(i===qH){if(r.preserveRoot===!1&&A===(0,gI.parse)(A).root||!g||r.filter&&!await r.filter(A,t))return!1;await u4(WHe(A,r))}return!0},eeA=(A,r,t,i=n_)=>{let o=t.isDirectory()?lI(A):null;if(!Array.isArray(o)){if(o){if(o.code==="ENOENT")return!0;if(o.code!=="ENOTDIR")throw o}return r.filter&&!r.filter(A,t)?!1:(g4(()=>UHe(A,r)),!0)}let s=!0;for(let g of o){let E=i===n_?KDA:i,p=(0,gI.resolve)(A,g.name);s=eeA(p,r,g,E)&&s}if(i===n_)return eeA(A,r,t,qH);if(i===qH){if(r.preserveRoot===!1&&A===(0,gI.parse)(A).root||!s||r.filter&&!r.filter(A,t))return!1;g4(()=>{JHe(A,r)})}return!0};var reA=v0==="win32"?VH:LH,teA=v0==="win32"?zH:jH;var{rm:qHe}=WB,ieA=async(A,r)=>(await qHe(A,{...r,force:!0,recursive:!0}),!0),neA=(A,r)=>((0,mc.rmSync)(A,{...r,force:!0,recursive:!0}),!0);var VHe=process.env.__TESTING_RIMRAF_NODE_VERSION__||process.version,zHe=VHe.replace(/^v/,"").split("."),[XDA=0,KHe=0]=zHe.map(A=>parseInt(A,10)),ZDA=XDA>14||XDA===14&&KHe>=14,$DA=!ZDA||v0==="win32"?()=>!1:A=>!A?.signal&&!A?.filter,A_A=!ZDA||v0==="win32"?()=>!1:A=>!A?.signal&&!A?.filter;var dI=A=>async(r,t)=>{let i=RDA(t);return i.glob&&(r=await PH(r,i.glob)),Array.isArray(r)?!!(await Promise.all(r.map(o=>A(e6(o,i),i)))).reduce((o,s)=>o&&s,!0):!!await A(e6(r,i),i)},pI=A=>(r,t)=>{let i=TDA(t);return i.glob&&(r=YH(r,i.glob)),Array.isArray(r)?!!r.map(o=>A(e6(o,i),i)).reduce((o,s)=>o&&s,!0):!!A(e6(r,i),i)},t_A=pI(neA),XHe=Object.assign(dI(ieA),{sync:t_A}),i_A=pI(teA),ZHe=Object.assign(dI(reA),{sync:i_A}),n_A=pI(zH),$He=Object.assign(dI(VH),{sync:n_A}),a_A=pI(jH),ASe=Object.assign(dI(LH),{sync:a_A}),o_A=pI(JH),eSe=Object.assign(dI(WH),{sync:o_A}),e_A=pI((A,r)=>A_A(r)?neA(A,r):teA(A,r));var r_A=dI((A,r)=>$DA(r)?ieA(A,r):reA(A,r)),KH=Object.assign(r_A,{rimraf:r_A,sync:e_A,rimrafSync:e_A,manual:ZHe,manualSync:i_A,native:XHe,nativeSync:t_A,posix:ASe,posixSync:a_A,windows:$He,windowsSync:n_A,moveRemove:eSe,moveRemoveSync:o_A});KH.rimraf=KH;var l_A=require("child_process");var a_=Yn(i6()),Zn=class A{static parse(r,t){return new A(a_.URI.parse(r,t))}static file(r){return new A(a_.URI.file(r))}static joinPath(r,...t){return new A(a_.Utils.joinPath(r.uri,...t))}static from(r){return new A(a_.URI.from(r))}uri;constructor(r){r instanceof a_.URI?this.uri=r:this.uri=a_.URI.from(r)}get scheme(){return this.uri.scheme}get authority(){return this.uri.authority}get path(){return this.uri.path}get query(){return this.uri.query}get fragment(){return this.uri.fragment}get fsPath(){return this.uri.fsPath}with(r){return A.from({scheme:r.scheme||this.scheme,authority:r.authority||this.authority,path:r.path||this.path,query:r.query||this.query,fragment:r.fragment||this.fragment})}toString(r){return this.uri.toString(r)}toJSON(){return{scheme:this.scheme,authority:this.authority,path:this.path,query:this.query,fragment:this.fragment}}};var vf=class A{constructor(r){this.callOnDispose=r}static from(...r){return new A(()=>{for(let t of r)t.dispose()})}dispose(){this.callOnDispose()}},o6=(t=>(t[t.Invoke=0]="Invoke",t[t.Automatic=1]="Automatic",t))(o6||{});var ng=class{constructor(r,t){this.range=r;this.command=t}isResolved=!0},Hd=class{constructor(r){this.id=r}},y0=class A{constructor(r,t){this.id=r;this.color=t}static File=new A("file");static Folder=new A("folder")},Xv=class{constructor(r){this.value=r}isTrusted;supportThemeIcons;supportHtml;baseUri;appendText(){throw new Error("Method not implemented.")}appendMarkdown(){throw new Error("Method not implemented.")}appendCodeblock(){throw new Error("Method not implemented.")}};var Zv=class{constructor(r,t){this.title=r;this.kind=t}edit;diagnostics;command;isPreferred;disabled},d4=class A{constructor(r){this.value=r}static Empty=new A("Empty");static QuickFix=new A("");static Refactor=new A("");static RefactorExtract=new A("");static RefactorInline=new A("");static RefactorMove=new A("");static RefactorRewrite=new A("");static Source=new A("");static SourceOrganizeImports=new A("");static SourceFixAll=new A("")},n6=class{static Back={iconPath:Zn.parse("file://foobar")}},$v=class{constructor(r,t){this.resourceUri=r;this.collapsibleState=t}},p4=class{constructor(r,t){this.pattern=t;this.base=r.toString()}baseUri=Zn.parse("file:///foobar");base},Ao=class A{line;character;constructor(r,t){this.line=r,this.character=t}isAfter(r){return r.line=this.start.line&&r.line<=this.end.line&&r.character>=this.start.character&&r.character<=this.end.character;throw new Error("not implemented")}intersection(){throw new Error("not implemented")}union(){throw new Error("not implemented")}},od=class extends sa{constructor(t,i){super(t,i);this.anchor=t;this.active=i}isReversed=!1};var a6=class{insertText;range;constructor(r,t){this.insertText=r,this.range=t}},Sd=class{delete(r,t){return t}insert(r,t,i){return i}};function rSe(A,r){return A.thisArg?A.handler.bind(A.thisArg)(r):A.handler(r)}var tB=new vf(()=>{}),nl=class{on=()=>{};constructor(){this.on=()=>{}}listeners=new Set;event=(r,t)=>{let i={handler:r,thisArg:t};return this.listeners.add(i),new vf(()=>{this.listeners.delete(i)})};fire(r){for(let t of this.listeners)rSe(t,r)}dispose(){this.listeners.clear()}};var oeA=class{isCancellationRequested=!1;emitter=new nl;constructor(){this.emitter.event(()=>{this.isCancellationRequested=!0})}onCancellationRequested=this.emitter.event},DQ=class{token=new oeA;cancel(){this.token.isCancellationRequested||this.token.emitter.fire()}dispose(){this.token.emitter.dispose()}};function su(){return()=>tB}var XH=class{constructor(){this.all=[];this.activeTabGroup={activeTab:void 0,isActive:!0,tabs:[],viewColumn:1};this.onDidChangeTabGroups=su();this.onDidChangeTabs=su()}close(){throw new Error("Method not implemented.")}};var uSe={onDidChange:su(),onDidCreate:su(),onDidDelete:su(),ignoreChangeEvents:!0,ignoreCreateEvents:!0,ignoreDeleteEvents:!0,dispose(){}},$H;function u_A(A){$H=A}var qp;function g_A(A){qp=A}function d_A(A){return qp?qp.accessToken!==A.accessToken||qp.serverEndpoint!==A.serverEndpoint:!0}var gSe={has(A){return!0},get:(A,r)=>{let t=o=>({vscode:"VSCode",jetbrains:"JetBrains",emacs:"Emacs",neovim:"Neovim"})[o.toLowerCase()],i=qp?.customConfiguration?.[A];if(i!==void 0)return i;switch(A){case"cody.serverEndpoint":return qp?.serverEndpoint;case"cody.proxy":return qp?.proxy??null;case"cody.customHeaders":return qp?.customHeaders;case"cody.telemetry.level":return"off";case"cody.autocomplete.enabled":return!0;case"cody.autocomplete.advanced.provider":return qp?.autocompleteAdvancedProvider??null;case"cody.autocomplete.advanced.serverEndpoint":return qp?.autocompleteAdvancedServerEndpoint??null;case"cody.autocomplete.advanced.model":return qp?.autocompleteAdvancedModel??null;case"cody.autocomplete.advanced.accessToken":return qp?.autocompleteAdvancedAccessToken??null;case"cody.advanced.agent.running":return!0;case"cody.debug.enable":return qp?.debug??!1;case"cody.debug.verbose":return qp?.verboseDebug??!1;case"cody.autocomplete.experimental.syntacticPostProcessing":return!1;case"cody.codebase":return qp?.codebase;case"cody.advanced.agent.ide":return t($H?.name??"");default:return r}},update(A,r,t,i){return Promise.resolve()},inspect(A){}},peA=new nl,EeA=new nl,feA=new nl,BeA=new nl,heA=new nl,dSe=new nl,pSe=new nl,ESe=new nl,Ay;function p_A(A){Ay=A,A.workspaceRootUri&&E_A.push({name:"Workspace Root",uri:A.workspaceRootUri,index:0})}var E_A=[],fSe={openTextDocument:A=>{let r=A instanceof Zn?A.path:A?.toString()??"";return Ay?Ay.openTextDocument(r):"missingWorkspaceDocuments"},workspaceFolders:E_A,getWorkspaceFolder:()=>{if(Ay?.workspaceRootUri===void 0)throw new Error("workspaceDocuments is undefined. To fix this problem, make sure that the agent has been initialized.");return{uri:Ay.workspaceRootUri,index:0,name:Ay.workspaceRootUri?.path}},onDidChangeWorkspaceFolders:()=>({}),onDidOpenTextDocument:feA.event,onDidChangeConfiguration:EeA.event,onDidChangeTextDocument:BeA.event,onDidCloseTextDocument:heA.event,onDidSaveTextDocument:dSe.event,onDidRenameFiles:pSe.event,onDidDeleteFiles:ESe.event,registerTextDocumentContentProvider:()=>tB,asRelativePath:(A,r)=>A.toString(),createFileSystemWatcher:()=>uSe,getConfiguration:()=>gSe},ri=fSe,BSe={show:()=>{}},c6=[],QeA=new XH,Sh;function f_A(A){Sh=A}var hSe={createTreeView:()=>({visible:!1}),tabGroups:QeA,registerCustomEditorProvider:()=>tB,registerFileDecorationProvider:()=>tB,registerTerminalLinkProvider:()=>tB,registerTerminalProfileProvider:()=>tB,registerTreeDataProvider:()=>tB,registerWebviewPanelSerializer:()=>tB,onDidChangeTextEditorVisibleRanges:su(),onDidChangeActiveColorTheme:su(),onDidChangeActiveNotebookEditor:su(),onDidChangeActiveTerminal:su(),onDidChangeNotebookEditorSelection:su(),onDidChangeNotebookEditorVisibleRanges:su(),onDidChangeTerminalState:su(),onDidChangeTextEditorOptions:su(),onDidChangeTextEditorViewColumn:su(),onDidChangeVisibleNotebookEditors:su(),onDidChangeWindowState:su(),onDidCloseTerminal:su(),onDidOpenTerminal:su(),registerUriHandler:()=>tB,registerWebviewViewProvider:()=>tB,createStatusBarItem:()=>BSe,visibleTextEditors:c6,withProgress:(A,r)=>r({report:()=>{}},"window.withProgress.cancelationToken"),onDidChangeActiveTextEditor:peA.event,onDidChangeVisibleTextEditors:()=>({}),onDidChangeTextEditorSelection:()=>({}),showErrorMessage:(A,...r)=>(Sh&&Sh.notify("debug/message",{channel:"window.showErrorMessage",message:A}),Promise.resolve(void 0)),showWarningMessage:(A,...r)=>(Sh&&Sh.notify("debug/message",{channel:"window.showWarningMessage",message:A}),Promise.resolve(void 0)),showInformationMessage:(A,...r)=>(Sh&&Sh.notify("debug/message",{channel:"window.showInformationMessage",message:A}),Promise.resolve(void 0)),createOutputChannel:A=>({name:A,append:r=>{Sh&&Sh.notify("debug/message",{channel:A,message:r})},appendLine:r=>{Sh&&Sh.notify("debug/message",{channel:A,message:r})},replace:r=>{Sh&&Sh.notify("debug/message",{channel:A,message:r})},clear:()=>{},show:()=>{},hide:()=>{},dispose:()=>{}}),createTextEditorDecorationType:()=>({key:"foo",dispose:()=>{}})},ni=hSe,QSe=[];var mSe={isActive:!0,exports:{enabled:!0,onDidChangeEnablement:su(),getAPI(A){return{repositories:QSe,onDidChangeState:su(),onDidCloseRepository:su(),onDidOpenRepository:su(),onDidPublish:su(),getRepository(t){let i=Ay?.workspaceRootUri?.fsPath;if(!i)return null;try{let o=(0,l_A.execSync)("git rev-parse --show-toplevel",{cwd:i}).toString().trim();return{rootUri:Zn.file(o),state:{remotes:[]}}}catch{return null}}}}}},DSe={getExtension:A=>{if($H!==void 0&&$H?.capabilities?.git!=="disabled"&&A==="vscode.git")return mSe}},EI=DSe,ZH=new Map,_Se={registerCommand:(A,r,t)=>{let i={command:A,callback:r,thisArg:t};return ZH.set(A,i),new vf(()=>{ZH.get(A)===i&&ZH.delete(A)})},executeCommand:(A,r)=>{let t=ZH.get(A);if(t)try{return s_A(r?t.callback(...r):t.callback())}catch(i){console.error(i)}return Promise.resolve(void 0)}};function s_A(A){return A instanceof Promise?A:Promise.resolve(A)}var ti=_Se,wSe={uriScheme:"file",appRoot:process.cwd(),uiKind:2,language:process.env.language,clipboard:{readText:()=>Promise.resolve(""),writeText:()=>Promise.resolve()}},Ec=wSe,seA,B_A=()=>{},vSe=new Promise(A=>{B_A=A});function meA(){return seA?Promise.resolve(seA):vSe}var ySe={getLanguages:()=>Promise.resolve([]),registerCodeActionsProvider:()=>tB,registerCodeLensProvider:()=>tB,registerInlineCompletionItemProvider:(A,r)=>(seA=r,B_A(r),tB)},yf=ySe,CSe={createCommentThread(A,r,t){return"createCommentThread"},id:"commentController.id",label:"commentController.label",dispose:()=>{}},ISe={createCommentController:()=>CSe},h_A=ISe;var Q_A=Yn(require("fs")),AS=class A{constructor(r,t){this.path=r;this.text=t;this.lines=t.split(` -`)}lines;static fromFile(r){return new A(r,Q_A.readFileSync(r).toString())}format(r,t){let i=this.lines[r.start.line],o=" ".repeat(r.start.character),s=r.isSingleLine()?r.end.character-r.start.character:i.length-r.start.character,g=s<0?"":"^".repeat(s),E=r.isSingleLine()?"":` ${r.end.line}:${r.end.character}`,p=t?" "+t:"";return`${this.path}:${r.start.line}:${r.start.character}${p} -${i} -${o}${g}${E}`}log(r){console.log(this.format(r))}};var Ri=Yn(m_A()),fI;(v=>{let A;(y=>y[y.UnspecifiedProtocolVersion=0]="UnspecifiedProtocolVersion")(A=v.ProtocolVersion||={});let r;(U=>(U[U.UnspecifiedTextEncoding=0]="UnspecifiedTextEncoding",U[U.UTF8=1]="UTF8",U[U.UTF16=2]="UTF16"))(r=v.TextEncoding||={});let t;(pA=>(pA[pA.UnspecifiedSymbolRole=0]="UnspecifiedSymbolRole",pA[pA.Definition=1]="Definition",pA[pA.Import=2]="Import",pA[pA.WriteAccess=4]="WriteAccess",pA[pA.ReadAccess=8]="ReadAccess",pA[pA.Generated=16]="Generated",pA[pA.Test=32]="Test"))(t=v.SymbolRole||={});let i;(MA=>(MA[MA.UnspecifiedSyntaxKind=0]="UnspecifiedSyntaxKind",MA[MA.Comment=1]="Comment",MA[MA.PunctuationDelimiter=2]="PunctuationDelimiter",MA[MA.PunctuationBracket=3]="PunctuationBracket",MA[MA.Keyword=4]="Keyword",MA[MA.IdentifierKeyword=4]="IdentifierKeyword",MA[MA.IdentifierOperator=5]="IdentifierOperator",MA[MA.Identifier=6]="Identifier",MA[MA.IdentifierBuiltin=7]="IdentifierBuiltin",MA[MA.IdentifierNull=8]="IdentifierNull",MA[MA.IdentifierConstant=9]="IdentifierConstant",MA[MA.IdentifierMutableGlobal=10]="IdentifierMutableGlobal",MA[MA.IdentifierParameter=11]="IdentifierParameter",MA[MA.IdentifierLocal=12]="IdentifierLocal",MA[MA.IdentifierShadowed=13]="IdentifierShadowed",MA[MA.IdentifierNamespace=14]="IdentifierNamespace",MA[MA.IdentifierModule=14]="IdentifierModule",MA[MA.IdentifierFunction=15]="IdentifierFunction",MA[MA.IdentifierFunctionDefinition=16]="IdentifierFunctionDefinition",MA[MA.IdentifierMacro=17]="IdentifierMacro",MA[MA.IdentifierMacroDefinition=18]="IdentifierMacroDefinition",MA[MA.IdentifierType=19]="IdentifierType",MA[MA.IdentifierBuiltinType=20]="IdentifierBuiltinType",MA[MA.IdentifierAttribute=21]="IdentifierAttribute",MA[MA.RegexEscape=22]="RegexEscape",MA[MA.RegexRepeated=23]="RegexRepeated",MA[MA.RegexWildcard=24]="RegexWildcard",MA[MA.RegexDelimiter=25]="RegexDelimiter",MA[MA.RegexJoin=26]="RegexJoin",MA[MA.StringLiteral=27]="StringLiteral",MA[MA.StringLiteralEscape=28]="StringLiteralEscape",MA[MA.StringLiteralSpecial=29]="StringLiteralSpecial",MA[MA.StringLiteralKey=30]="StringLiteralKey",MA[MA.CharacterLiteral=31]="CharacterLiteral",MA[MA.NumericLiteral=32]="NumericLiteral",MA[MA.BooleanLiteral=33]="BooleanLiteral",MA[MA.Tag=34]="Tag",MA[MA.TagAttribute=35]="TagAttribute",MA[MA.TagDelimiter=36]="TagDelimiter"))(i=v.SyntaxKind||={});let o;(wA=>(wA[wA.UnspecifiedSeverity=0]="UnspecifiedSeverity",wA[wA.Error=1]="Error",wA[wA.Warning=2]="Warning",wA[wA.Information=3]="Information",wA[wA.Hint=4]="Hint"))(o=v.Severity||={});let s;(U=>(U[U.UnspecifiedDiagnosticTag=0]="UnspecifiedDiagnosticTag",U[U.Unnecessary=1]="Unnecessary",U[U.Deprecated=2]="Deprecated"))(s=v.DiagnosticTag||={});let g;(ee=>(ee[ee.UnspecifiedLanguage=0]="UnspecifiedLanguage",ee[ee.ABAP=60]="ABAP",ee[ee.APL=49]="APL",ee[ee.Ada=39]="Ada",ee[ee.Agda=45]="Agda",ee[ee.AsciiDoc=86]="AsciiDoc",ee[ee.Assembly=58]="Assembly",ee[ee.Awk=66]="Awk",ee[ee.Bat=68]="Bat",ee[ee.BibTeX=81]="BibTeX",ee[ee.C=34]="C",ee[ee.COBOL=59]="COBOL",ee[ee.CPP=35]="CPP",ee[ee.CSS=26]="CSS",ee[ee.CSharp=1]="CSharp",ee[ee.Clojure=8]="Clojure",ee[ee.Coffeescript=21]="Coffeescript",ee[ee.CommonLisp=9]="CommonLisp",ee[ee.Coq=47]="Coq",ee[ee.Dart=3]="Dart",ee[ee.Delphi=57]="Delphi",ee[ee.Diff=88]="Diff",ee[ee.Dockerfile=80]="Dockerfile",ee[ee.Dyalog=50]="Dyalog",ee[ee.Elixir=17]="Elixir",ee[ee.Erlang=18]="Erlang",ee[ee.FSharp=42]="FSharp",ee[ee.Fish=65]="Fish",ee[ee.Flow=24]="Flow",ee[ee.Fortran=56]="Fortran",ee[ee.Git_Commit=91]="Git_Commit",ee[ee.Git_Config=89]="Git_Config",ee[ee.Git_Rebase=92]="Git_Rebase",ee[ee.Go=33]="Go",ee[ee.Groovy=7]="Groovy",ee[ee.HTML=30]="HTML",ee[ee.Hack=20]="Hack",ee[ee.Handlebars=90]="Handlebars",ee[ee.Haskell=44]="Haskell",ee[ee.Idris=46]="Idris",ee[ee.Ini=72]="Ini",ee[ee.J=51]="J",ee[ee.JSON=75]="JSON",ee[ee.Java=6]="Java",ee[ee.JavaScript=22]="JavaScript",ee[ee.JavaScriptReact=93]="JavaScriptReact",ee[ee.Jsonnet=76]="Jsonnet",ee[ee.Julia=55]="Julia",ee[ee.Kotlin=4]="Kotlin",ee[ee.LaTeX=83]="LaTeX",ee[ee.Lean=48]="Lean",ee[ee.Less=27]="Less",ee[ee.Lua=12]="Lua",ee[ee.Makefile=79]="Makefile",ee[ee.Markdown=84]="Markdown",ee[ee.Matlab=52]="Matlab",ee[ee.Nix=77]="Nix",ee[ee.OCaml=41]="OCaml",ee[ee.Objective_C=36]="Objective_C",ee[ee.Objective_CPP=37]="Objective_CPP",ee[ee.PHP=19]="PHP",ee[ee.PLSQL=70]="PLSQL",ee[ee.Perl=13]="Perl",ee[ee.PowerShell=67]="PowerShell",ee[ee.Prolog=71]="Prolog",ee[ee.Python=15]="Python",ee[ee.R=54]="R",ee[ee.Racket=11]="Racket",ee[ee.Raku=14]="Raku",ee[ee.Razor=62]="Razor",ee[ee.ReST=85]="ReST",ee[ee.Ruby=16]="Ruby",ee[ee.Rust=40]="Rust",ee[ee.SAS=61]="SAS",ee[ee.SCSS=29]="SCSS",ee[ee.SML=43]="SML",ee[ee.SQL=69]="SQL",ee[ee.Sass=28]="Sass",ee[ee.Scala=5]="Scala",ee[ee.Scheme=10]="Scheme",ee[ee.ShellScript=64]="ShellScript",ee[ee.Skylark=78]="Skylark",ee[ee.Swift=2]="Swift",ee[ee.TOML=73]="TOML",ee[ee.TeX=82]="TeX",ee[ee.TypeScript=23]="TypeScript",ee[ee.TypeScriptReact=94]="TypeScriptReact",ee[ee.VisualBasic=63]="VisualBasic",ee[ee.Vue=25]="Vue",ee[ee.Wolfram=53]="Wolfram",ee[ee.XML=31]="XML",ee[ee.XSL=32]="XSL",ee[ee.YAML=74]="YAML",ee[ee.Zig=38]="Zig"))(g=v.Language||={});class E extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[2,3],[]),!Array.isArray(y)&&typeof y=="object"&&("metadata"in y&&y.metadata!=null&&(this.metadata=y.metadata),"documents"in y&&y.documents!=null&&(this.documents=y.documents),"external_symbols"in y&&y.external_symbols!=null&&(this.external_symbols=y.external_symbols))}get metadata(){return Ri.Message.getWrapperField(this,p,1)}set metadata(y){Ri.Message.setWrapperField(this,1,y)}get documents(){return Ri.Message.getRepeatedWrapperField(this,m,2)}set documents(y){Ri.Message.setRepeatedWrapperField(this,2,y)}get external_symbols(){return Ri.Message.getRepeatedWrapperField(this,k,3)}set external_symbols(y){Ri.Message.setRepeatedWrapperField(this,3,y)}static fromObject(y){let S=new E({});return y.metadata!=null&&(S.metadata=p.fromObject(y.metadata)),y.documents!=null&&(S.documents=y.documents.map(U=>m.fromObject(U))),y.external_symbols!=null&&(S.external_symbols=y.external_symbols.map(U=>k.fromObject(U))),S}toObject(){let y={};return this.metadata!=null&&(y.metadata=this.metadata.toObject()),this.documents!=null&&(y.documents=this.documents.map(S=>S.toObject())),this.external_symbols!=null&&(y.external_symbols=this.external_symbols.map(S=>S.toObject())),y}serialize(y){let S=y||new Ri.BinaryWriter;if(this.metadata!==void 0&&S.writeMessage(1,this.metadata,()=>this.metadata.serialize(S)),this.documents!==void 0&&S.writeRepeatedMessage(2,this.documents,U=>U.serialize(S)),this.external_symbols!==void 0&&S.writeRepeatedMessage(3,this.external_symbols,U=>U.serialize(S)),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new E;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 1:S.readMessage(U.metadata,()=>U.metadata=p.deserialize(S));break;case 2:S.readMessage(U.documents,()=>Ri.Message.addToRepeatedWrapperField(U,2,m.deserialize(S),m));break;case 3:S.readMessage(U.external_symbols,()=>Ri.Message.addToRepeatedWrapperField(U,3,k.deserialize(S),k));break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return E.deserialize(y)}}v.Index=E;class p extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[],[]),!Array.isArray(y)&&typeof y=="object"&&("version"in y&&y.version!=null&&(this.version=y.version),"tool_info"in y&&y.tool_info!=null&&(this.tool_info=y.tool_info),"project_root"in y&&y.project_root!=null&&(this.project_root=y.project_root),"text_document_encoding"in y&&y.text_document_encoding!=null&&(this.text_document_encoding=y.text_document_encoding))}get version(){return Ri.Message.getField(this,1)}set version(y){Ri.Message.setField(this,1,y)}get tool_info(){return Ri.Message.getWrapperField(this,B,2)}set tool_info(y){Ri.Message.setWrapperField(this,2,y)}get project_root(){return Ri.Message.getField(this,3)}set project_root(y){Ri.Message.setField(this,3,y)}get text_document_encoding(){return Ri.Message.getField(this,4)}set text_document_encoding(y){Ri.Message.setField(this,4,y)}static fromObject(y){let S=new p({});return y.version!=null&&(S.version=y.version),y.tool_info!=null&&(S.tool_info=B.fromObject(y.tool_info)),y.project_root!=null&&(S.project_root=y.project_root),y.text_document_encoding!=null&&(S.text_document_encoding=y.text_document_encoding),S}toObject(){let y={};return this.version!=null&&(y.version=this.version),this.tool_info!=null&&(y.tool_info=this.tool_info.toObject()),this.project_root!=null&&(y.project_root=this.project_root),this.text_document_encoding!=null&&(y.text_document_encoding=this.text_document_encoding),y}serialize(y){let S=y||new Ri.BinaryWriter;if(this.version!==void 0&&S.writeEnum(1,this.version),this.tool_info!==void 0&&S.writeMessage(2,this.tool_info,()=>this.tool_info.serialize(S)),typeof this.project_root=="string"&&this.project_root.length&&S.writeString(3,this.project_root),this.text_document_encoding!==void 0&&S.writeEnum(4,this.text_document_encoding),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new p;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 1:U.version=S.readEnum();break;case 2:S.readMessage(U.tool_info,()=>U.tool_info=B.deserialize(S));break;case 3:U.project_root=S.readString();break;case 4:U.text_document_encoding=S.readEnum();break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return p.deserialize(y)}}v.Metadata=p;class B extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[3],[]),!Array.isArray(y)&&typeof y=="object"&&("name"in y&&y.name!=null&&(this.name=y.name),"version"in y&&y.version!=null&&(this.version=y.version),"arguments"in y&&y.arguments!=null&&(this.arguments=y.arguments))}get name(){return Ri.Message.getField(this,1)}set name(y){Ri.Message.setField(this,1,y)}get version(){return Ri.Message.getField(this,2)}set version(y){Ri.Message.setField(this,2,y)}get arguments(){return Ri.Message.getField(this,3)}set arguments(y){Ri.Message.setField(this,3,y)}static fromObject(y){let S=new B({});return y.name!=null&&(S.name=y.name),y.version!=null&&(S.version=y.version),y.arguments!=null&&(S.arguments=y.arguments),S}toObject(){let y={};return this.name!=null&&(y.name=this.name),this.version!=null&&(y.version=this.version),this.arguments!=null&&(y.arguments=this.arguments),y}serialize(y){let S=y||new Ri.BinaryWriter;if(typeof this.name=="string"&&this.name.length&&S.writeString(1,this.name),typeof this.version=="string"&&this.version.length&&S.writeString(2,this.version),this.arguments!==void 0&&S.writeRepeatedString(3,this.arguments),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new B;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 1:U.name=S.readString();break;case 2:U.version=S.readString();break;case 3:Ri.Message.addToRepeatedField(U,3,S.readString());break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return B.deserialize(y)}}v.ToolInfo=B;class m extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[2,3],[]),!Array.isArray(y)&&typeof y=="object"&&("language"in y&&y.language!=null&&(this.language=y.language),"relative_path"in y&&y.relative_path!=null&&(this.relative_path=y.relative_path),"occurrences"in y&&y.occurrences!=null&&(this.occurrences=y.occurrences),"symbols"in y&&y.symbols!=null&&(this.symbols=y.symbols))}get language(){return Ri.Message.getField(this,4)}set language(y){Ri.Message.setField(this,4,y)}get relative_path(){return Ri.Message.getField(this,1)}set relative_path(y){Ri.Message.setField(this,1,y)}get occurrences(){return Ri.Message.getRepeatedWrapperField(this,H,2)}set occurrences(y){Ri.Message.setRepeatedWrapperField(this,2,y)}get symbols(){return Ri.Message.getRepeatedWrapperField(this,k,3)}set symbols(y){Ri.Message.setRepeatedWrapperField(this,3,y)}static fromObject(y){let S=new m({});return y.language!=null&&(S.language=y.language),y.relative_path!=null&&(S.relative_path=y.relative_path),y.occurrences!=null&&(S.occurrences=y.occurrences.map(U=>H.fromObject(U))),y.symbols!=null&&(S.symbols=y.symbols.map(U=>k.fromObject(U))),S}toObject(){let y={};return this.language!=null&&(y.language=this.language),this.relative_path!=null&&(y.relative_path=this.relative_path),this.occurrences!=null&&(y.occurrences=this.occurrences.map(S=>S.toObject())),this.symbols!=null&&(y.symbols=this.symbols.map(S=>S.toObject())),y}serialize(y){let S=y||new Ri.BinaryWriter;if(typeof this.language=="string"&&this.language.length&&S.writeString(4,this.language),typeof this.relative_path=="string"&&this.relative_path.length&&S.writeString(1,this.relative_path),this.occurrences!==void 0&&S.writeRepeatedMessage(2,this.occurrences,U=>U.serialize(S)),this.symbols!==void 0&&S.writeRepeatedMessage(3,this.symbols,U=>U.serialize(S)),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new m;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 4:U.language=S.readString();break;case 1:U.relative_path=S.readString();break;case 2:S.readMessage(U.occurrences,()=>Ri.Message.addToRepeatedWrapperField(U,2,H.deserialize(S),H));break;case 3:S.readMessage(U.symbols,()=>Ri.Message.addToRepeatedWrapperField(U,3,k.deserialize(S),k));break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return m.deserialize(y)}}v.Document=m;class _ extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[3],[]),!Array.isArray(y)&&typeof y=="object"&&("scheme"in y&&y.scheme!=null&&(this.scheme=y.scheme),"package"in y&&y.package!=null&&(this.package=y.package),"descriptors"in y&&y.descriptors!=null&&(this.descriptors=y.descriptors))}get scheme(){return Ri.Message.getField(this,1)}set scheme(y){Ri.Message.setField(this,1,y)}get package(){return Ri.Message.getWrapperField(this,x,2)}set package(y){Ri.Message.setWrapperField(this,2,y)}get descriptors(){return Ri.Message.getRepeatedWrapperField(this,O,3)}set descriptors(y){Ri.Message.setRepeatedWrapperField(this,3,y)}static fromObject(y){let S=new _({});return y.scheme!=null&&(S.scheme=y.scheme),y.package!=null&&(S.package=x.fromObject(y.package)),y.descriptors!=null&&(S.descriptors=y.descriptors.map(U=>O.fromObject(U))),S}toObject(){let y={};return this.scheme!=null&&(y.scheme=this.scheme),this.package!=null&&(y.package=this.package.toObject()),this.descriptors!=null&&(y.descriptors=this.descriptors.map(S=>S.toObject())),y}serialize(y){let S=y||new Ri.BinaryWriter;if(typeof this.scheme=="string"&&this.scheme.length&&S.writeString(1,this.scheme),this.package!==void 0&&S.writeMessage(2,this.package,()=>this.package.serialize(S)),this.descriptors!==void 0&&S.writeRepeatedMessage(3,this.descriptors,U=>U.serialize(S)),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new _;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 1:U.scheme=S.readString();break;case 2:S.readMessage(U.package,()=>U.package=x.deserialize(S));break;case 3:S.readMessage(U.descriptors,()=>Ri.Message.addToRepeatedWrapperField(U,3,O.deserialize(S),O));break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return _.deserialize(y)}}v.Symbol=_;class x extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[],[]),!Array.isArray(y)&&typeof y=="object"&&("manager"in y&&y.manager!=null&&(this.manager=y.manager),"name"in y&&y.name!=null&&(this.name=y.name),"version"in y&&y.version!=null&&(this.version=y.version))}get manager(){return Ri.Message.getField(this,1)}set manager(y){Ri.Message.setField(this,1,y)}get name(){return Ri.Message.getField(this,2)}set name(y){Ri.Message.setField(this,2,y)}get version(){return Ri.Message.getField(this,3)}set version(y){Ri.Message.setField(this,3,y)}static fromObject(y){let S=new x({});return y.manager!=null&&(S.manager=y.manager),y.name!=null&&(S.name=y.name),y.version!=null&&(S.version=y.version),S}toObject(){let y={};return this.manager!=null&&(y.manager=this.manager),this.name!=null&&(y.name=this.name),this.version!=null&&(y.version=this.version),y}serialize(y){let S=y||new Ri.BinaryWriter;if(typeof this.manager=="string"&&this.manager.length&&S.writeString(1,this.manager),typeof this.name=="string"&&this.name.length&&S.writeString(2,this.name),typeof this.version=="string"&&this.version.length&&S.writeString(3,this.version),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new x;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 1:U.manager=S.readString();break;case 2:U.name=S.readString();break;case 3:U.version=S.readString();break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return x.deserialize(y)}}v.Package=x;class O extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[],[]),!Array.isArray(y)&&typeof y=="object"&&("name"in y&&y.name!=null&&(this.name=y.name),"disambiguator"in y&&y.disambiguator!=null&&(this.disambiguator=y.disambiguator),"suffix"in y&&y.suffix!=null&&(this.suffix=y.suffix))}get name(){return Ri.Message.getField(this,1)}set name(y){Ri.Message.setField(this,1,y)}get disambiguator(){return Ri.Message.getField(this,2)}set disambiguator(y){Ri.Message.setField(this,2,y)}get suffix(){return Ri.Message.getField(this,3)}set suffix(y){Ri.Message.setField(this,3,y)}static fromObject(y){let S=new O({});return y.name!=null&&(S.name=y.name),y.disambiguator!=null&&(S.disambiguator=y.disambiguator),y.suffix!=null&&(S.suffix=y.suffix),S}toObject(){let y={};return this.name!=null&&(y.name=this.name),this.disambiguator!=null&&(y.disambiguator=this.disambiguator),this.suffix!=null&&(y.suffix=this.suffix),y}serialize(y){let S=y||new Ri.BinaryWriter;if(typeof this.name=="string"&&this.name.length&&S.writeString(1,this.name),typeof this.disambiguator=="string"&&this.disambiguator.length&&S.writeString(2,this.disambiguator),this.suffix!==void 0&&S.writeEnum(3,this.suffix),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new O;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 1:U.name=S.readString();break;case 2:U.disambiguator=S.readString();break;case 3:U.suffix=S.readEnum();break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return O.deserialize(y)}}v.Descriptor=O,(y=>{let F;(X=>(X[X.UnspecifiedSuffix=0]="UnspecifiedSuffix",X[X.Namespace=1]="Namespace",X[X.Package=1]="Package",X[X.Type=2]="Type",X[X.Term=3]="Term",X[X.Method=4]="Method",X[X.TypeParameter=5]="TypeParameter",X[X.Parameter=6]="Parameter",X[X.Macro=9]="Macro",X[X.Meta=7]="Meta",X[X.Local=8]="Local"))(F=y.Suffix||={})})(O=v.Descriptor||={});class k extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[3,4],[]),!Array.isArray(y)&&typeof y=="object"&&("symbol"in y&&y.symbol!=null&&(this.symbol=y.symbol),"documentation"in y&&y.documentation!=null&&(this.documentation=y.documentation),"relationships"in y&&y.relationships!=null&&(this.relationships=y.relationships))}get symbol(){return Ri.Message.getField(this,1)}set symbol(y){Ri.Message.setField(this,1,y)}get documentation(){return Ri.Message.getField(this,3)}set documentation(y){Ri.Message.setField(this,3,y)}get relationships(){return Ri.Message.getRepeatedWrapperField(this,P,4)}set relationships(y){Ri.Message.setRepeatedWrapperField(this,4,y)}static fromObject(y){let S=new k({});return y.symbol!=null&&(S.symbol=y.symbol),y.documentation!=null&&(S.documentation=y.documentation),y.relationships!=null&&(S.relationships=y.relationships.map(U=>P.fromObject(U))),S}toObject(){let y={};return this.symbol!=null&&(y.symbol=this.symbol),this.documentation!=null&&(y.documentation=this.documentation),this.relationships!=null&&(y.relationships=this.relationships.map(S=>S.toObject())),y}serialize(y){let S=y||new Ri.BinaryWriter;if(typeof this.symbol=="string"&&this.symbol.length&&S.writeString(1,this.symbol),this.documentation!==void 0&&S.writeRepeatedString(3,this.documentation),this.relationships!==void 0&&S.writeRepeatedMessage(4,this.relationships,U=>U.serialize(S)),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new k;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 1:U.symbol=S.readString();break;case 3:Ri.Message.addToRepeatedField(U,3,S.readString());break;case 4:S.readMessage(U.relationships,()=>Ri.Message.addToRepeatedWrapperField(U,4,P.deserialize(S),P));break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return k.deserialize(y)}}v.SymbolInformation=k;class P extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[],[]),!Array.isArray(y)&&typeof y=="object"&&("symbol"in y&&y.symbol!=null&&(this.symbol=y.symbol),"is_reference"in y&&y.is_reference!=null&&(this.is_reference=y.is_reference),"is_implementation"in y&&y.is_implementation!=null&&(this.is_implementation=y.is_implementation),"is_type_definition"in y&&y.is_type_definition!=null&&(this.is_type_definition=y.is_type_definition),"is_definition"in y&&y.is_definition!=null&&(this.is_definition=y.is_definition))}get symbol(){return Ri.Message.getField(this,1)}set symbol(y){Ri.Message.setField(this,1,y)}get is_reference(){return Ri.Message.getField(this,2)}set is_reference(y){Ri.Message.setField(this,2,y)}get is_implementation(){return Ri.Message.getField(this,3)}set is_implementation(y){Ri.Message.setField(this,3,y)}get is_type_definition(){return Ri.Message.getField(this,4)}set is_type_definition(y){Ri.Message.setField(this,4,y)}get is_definition(){return Ri.Message.getField(this,5)}set is_definition(y){Ri.Message.setField(this,5,y)}static fromObject(y){let S=new P({});return y.symbol!=null&&(S.symbol=y.symbol),y.is_reference!=null&&(S.is_reference=y.is_reference),y.is_implementation!=null&&(S.is_implementation=y.is_implementation),y.is_type_definition!=null&&(S.is_type_definition=y.is_type_definition),y.is_definition!=null&&(S.is_definition=y.is_definition),S}toObject(){let y={};return this.symbol!=null&&(y.symbol=this.symbol),this.is_reference!=null&&(y.is_reference=this.is_reference),this.is_implementation!=null&&(y.is_implementation=this.is_implementation),this.is_type_definition!=null&&(y.is_type_definition=this.is_type_definition),this.is_definition!=null&&(y.is_definition=this.is_definition),y}serialize(y){let S=y||new Ri.BinaryWriter;if(typeof this.symbol=="string"&&this.symbol.length&&S.writeString(1,this.symbol),this.is_reference!==void 0&&S.writeBool(2,this.is_reference),this.is_implementation!==void 0&&S.writeBool(3,this.is_implementation),this.is_type_definition!==void 0&&S.writeBool(4,this.is_type_definition),this.is_definition!==void 0&&S.writeBool(5,this.is_definition),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new P;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 1:U.symbol=S.readString();break;case 2:U.is_reference=S.readBool();break;case 3:U.is_implementation=S.readBool();break;case 4:U.is_type_definition=S.readBool();break;case 5:U.is_definition=S.readBool();break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return P.deserialize(y)}}v.Relationship=P;class H extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[1,4,6],[]),!Array.isArray(y)&&typeof y=="object"&&("range"in y&&y.range!=null&&(this.range=y.range),"symbol"in y&&y.symbol!=null&&(this.symbol=y.symbol),"symbol_roles"in y&&y.symbol_roles!=null&&(this.symbol_roles=y.symbol_roles),"override_documentation"in y&&y.override_documentation!=null&&(this.override_documentation=y.override_documentation),"syntax_kind"in y&&y.syntax_kind!=null&&(this.syntax_kind=y.syntax_kind),"diagnostics"in y&&y.diagnostics!=null&&(this.diagnostics=y.diagnostics))}get range(){return Ri.Message.getField(this,1)}set range(y){Ri.Message.setField(this,1,y)}get symbol(){return Ri.Message.getField(this,2)}set symbol(y){Ri.Message.setField(this,2,y)}get symbol_roles(){return Ri.Message.getField(this,3)}set symbol_roles(y){Ri.Message.setField(this,3,y)}get override_documentation(){return Ri.Message.getField(this,4)}set override_documentation(y){Ri.Message.setField(this,4,y)}get syntax_kind(){return Ri.Message.getField(this,5)}set syntax_kind(y){Ri.Message.setField(this,5,y)}get diagnostics(){return Ri.Message.getRepeatedWrapperField(this,T,6)}set diagnostics(y){Ri.Message.setRepeatedWrapperField(this,6,y)}static fromObject(y){let S=new H({});return y.range!=null&&(S.range=y.range),y.symbol!=null&&(S.symbol=y.symbol),y.symbol_roles!=null&&(S.symbol_roles=y.symbol_roles),y.override_documentation!=null&&(S.override_documentation=y.override_documentation),y.syntax_kind!=null&&(S.syntax_kind=y.syntax_kind),y.diagnostics!=null&&(S.diagnostics=y.diagnostics.map(U=>T.fromObject(U))),S}toObject(){let y={};return this.range!=null&&(y.range=this.range),this.symbol!=null&&(y.symbol=this.symbol),this.symbol_roles!=null&&(y.symbol_roles=this.symbol_roles),this.override_documentation!=null&&(y.override_documentation=this.override_documentation),this.syntax_kind!=null&&(y.syntax_kind=this.syntax_kind),this.diagnostics!=null&&(y.diagnostics=this.diagnostics.map(S=>S.toObject())),y}serialize(y){let S=y||new Ri.BinaryWriter;if(this.range!==void 0&&S.writePackedInt32(1,this.range),typeof this.symbol=="string"&&this.symbol.length&&S.writeString(2,this.symbol),this.symbol_roles!==void 0&&S.writeInt32(3,this.symbol_roles),this.override_documentation!==void 0&&S.writeRepeatedString(4,this.override_documentation),this.syntax_kind!==void 0&&S.writeEnum(5,this.syntax_kind),this.diagnostics!==void 0&&S.writeRepeatedMessage(6,this.diagnostics,U=>U.serialize(S)),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new H;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 1:U.range=S.readPackedInt32();break;case 2:U.symbol=S.readString();break;case 3:U.symbol_roles=S.readInt32();break;case 4:Ri.Message.addToRepeatedField(U,4,S.readString());break;case 5:U.syntax_kind=S.readEnum();break;case 6:S.readMessage(U.diagnostics,()=>Ri.Message.addToRepeatedWrapperField(U,6,T.deserialize(S),T));break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return H.deserialize(y)}}v.Occurrence=H;class T extends Ri.Message{constructor(y){super(),Ri.Message.initialize(this,Array.isArray(y)?y:[],0,-1,[5],[]),!Array.isArray(y)&&typeof y=="object"&&("severity"in y&&y.severity!=null&&(this.severity=y.severity),"code"in y&&y.code!=null&&(this.code=y.code),"message"in y&&y.message!=null&&(this.message=y.message),"source"in y&&y.source!=null&&(this.source=y.source),"tags"in y&&y.tags!=null&&(this.tags=y.tags))}get severity(){return Ri.Message.getField(this,1)}set severity(y){Ri.Message.setField(this,1,y)}get code(){return Ri.Message.getField(this,2)}set code(y){Ri.Message.setField(this,2,y)}get message(){return Ri.Message.getField(this,3)}set message(y){Ri.Message.setField(this,3,y)}get source(){return Ri.Message.getField(this,4)}set source(y){Ri.Message.setField(this,4,y)}get tags(){return Ri.Message.getField(this,5)}set tags(y){Ri.Message.setField(this,5,y)}static fromObject(y){let S=new T({});return y.severity!=null&&(S.severity=y.severity),y.code!=null&&(S.code=y.code),y.message!=null&&(S.message=y.message),y.source!=null&&(S.source=y.source),y.tags!=null&&(S.tags=y.tags),S}toObject(){let y={};return this.severity!=null&&(y.severity=this.severity),this.code!=null&&(y.code=this.code),this.message!=null&&(y.message=this.message),this.source!=null&&(y.source=this.source),this.tags!=null&&(y.tags=this.tags),y}serialize(y){let S=y||new Ri.BinaryWriter;if(this.severity!==void 0&&S.writeEnum(1,this.severity),typeof this.code=="string"&&this.code.length&&S.writeString(2,this.code),typeof this.message=="string"&&this.message.length&&S.writeString(3,this.message),typeof this.source=="string"&&this.source.length&&S.writeString(4,this.source),this.tags!==void 0&&S.writePackedEnum(5,this.tags),!y)return S.getResultBuffer()}static deserialize(y){let S=y instanceof Ri.BinaryReader?y:new Ri.BinaryReader(y),U=new T;for(;S.nextField()&&!S.isEndGroup();)switch(S.getFieldNumber()){case 1:U.severity=S.readEnum();break;case 2:U.code=S.readString();break;case 3:U.message=S.readString();break;case 4:U.source=S.readString();break;case 5:U.tags=S.readPackedEnum();break;default:S.skipField()}return U}serializeBinary(){return this.serialize()}static deserializeBinary(y){return T.deserialize(y)}}v.Diagnostic=T})(fI||={});var ey=(_=>(_.JavaScript="javascript",_.JSX="javascriptreact",_.TypeScript="typescript",_.TSX="typescriptreact",_.Java="java",_.Go="go",_.Python="python",_.Dart="dart",_.Cpp="cpp",_.CSharp="csharp",_.Php="php",_))(ey||{}),BI=A=>Object.entries(ey).find(([t,i])=>i===A)?A:null;var R_A=Yn(require("path"));var CeA=Yn(JB());var DeA=new Wg({max:10});function B4(A){let r=__A(A);if(!r)return null;let t=eS(r),i=A.uri.toString(),o=DeA.get(i);return!o||!t?null:{tree:o,parser:t,cacheKey:i}}async function bSe(A){let r=__A(A);if(!r)return;let t=await rS({language:r});OSe(A,t)}function OSe(A,r){let t=r.parse(A.getText());DeA.set(A.uri.toString(),t)}function __A(A){let r=BI(A.languageId);return A.lineCount<=1e4&&r?r:null}function w_A(A){let{document:r,contentChanges:t}=A;if(t.length===0)return;let i=B4(r);if(!i)return;let{tree:o,parser:s,cacheKey:g}=i;for(let p of t){let B=p.rangeOffset,m=p.rangeOffset+p.rangeLength,_=p.rangeOffset+p.text.length,x=r.positionAt(B),O=r.positionAt(m),k=r.positionAt(_),P=f4(x),H=f4(O),T=f4(k);o.edit({startIndex:B,oldEndIndex:m,newEndIndex:_,startPosition:P,oldEndPosition:H,newEndPosition:T})}let E=s.parse(r.getText(),o);DeA.set(g,E)}function f4(A){return{row:A.line,column:A.character}}function _eA(){for(let A of ni.visibleTextEditors)bSe(A.document)}var v_A=Yn(tS());var y_A={go:{singlelineTriggers:v_A.default` - (struct_type (field_declaration_list ("{") @block_start)) @trigger - (interface_type ("{") @block_start) @trigger - `,intents:""}};var QI=Yn(tS());var veA=QI.default` - ; Cursor dependent intents - ;-------------------------------- +// ../node_modules/.pnpm/webidl-conversions@3.0.1/node_modules/webidl-conversions/lib/index.js +var require_lib = __commonJS({ + "../node_modules/.pnpm/webidl-conversions@3.0.1/node_modules/webidl-conversions/lib/index.js"(exports2, module2) { + "use strict"; + var conversions = {}; + module2.exports = conversions; + function sign(x) { + return x < 0 ? -1 : 1; + } + function evenRound(x) { + if (x % 1 === 0.5 && (x & 1) === 0) { + return Math.floor(x); + } else { + return Math.round(x); + } + } + function createNumberConversion(bitLength, typeOpts) { + if (!typeOpts.unsigned) { + --bitLength; + } + const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength); + const upperBound = Math.pow(2, bitLength) - 1; + const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength); + const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1); + return function(V, opts) { + if (!opts) + opts = {}; + let x = +V; + if (opts.enforceRange) { + if (!Number.isFinite(x)) { + throw new TypeError("Argument is not a finite number"); + } + x = sign(x) * Math.floor(Math.abs(x)); + if (x < lowerBound || x > upperBound) { + throw new TypeError("Argument is not in byte range"); + } + return x; + } + if (!isNaN(x) && opts.clamp) { + x = evenRound(x); + if (x < lowerBound) + x = lowerBound; + if (x > upperBound) + x = upperBound; + return x; + } + if (!Number.isFinite(x) || x === 0) { + return 0; + } + x = sign(x) * Math.floor(Math.abs(x)); + x = x % moduloVal; + if (!typeOpts.unsigned && x >= moduloBound) { + return x - moduloVal; + } else if (typeOpts.unsigned) { + if (x < 0) { + x += moduloVal; + } else if (x === -0) { + return 0; + } + } + return x; + }; + } + conversions["void"] = function() { + return void 0; + }; + conversions["boolean"] = function(val) { + return !!val; + }; + conversions["byte"] = createNumberConversion(8, { unsigned: false }); + conversions["octet"] = createNumberConversion(8, { unsigned: true }); + conversions["short"] = createNumberConversion(16, { unsigned: false }); + conversions["unsigned short"] = createNumberConversion(16, { unsigned: true }); + conversions["long"] = createNumberConversion(32, { unsigned: false }); + conversions["unsigned long"] = createNumberConversion(32, { unsigned: true }); + conversions["long long"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 }); + conversions["unsigned long long"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 }); + conversions["double"] = function(V) { + const x = +V; + if (!Number.isFinite(x)) { + throw new TypeError("Argument is not a finite floating-point value"); + } + return x; + }; + conversions["unrestricted double"] = function(V) { + const x = +V; + if (isNaN(x)) { + throw new TypeError("Argument is NaN"); + } + return x; + }; + conversions["float"] = conversions["double"]; + conversions["unrestricted float"] = conversions["unrestricted double"]; + conversions["DOMString"] = function(V, opts) { + if (!opts) + opts = {}; + if (opts.treatNullAsEmptyString && V === null) { + return ""; + } + return String(V); + }; + conversions["ByteString"] = function(V, opts) { + const x = String(V); + let c = void 0; + for (let i = 0; (c = x.codePointAt(i)) !== void 0; ++i) { + if (c > 255) { + throw new TypeError("Argument is not a valid bytestring"); + } + } + return x; + }; + conversions["USVString"] = function(V) { + const S = String(V); + const n = S.length; + const U = []; + for (let i = 0; i < n; ++i) { + const c = S.charCodeAt(i); + if (c < 55296 || c > 57343) { + U.push(String.fromCodePoint(c)); + } else if (56320 <= c && c <= 57343) { + U.push(String.fromCodePoint(65533)); + } else { + if (i === n - 1) { + U.push(String.fromCodePoint(65533)); + } else { + const d = S.charCodeAt(i + 1); + if (56320 <= d && d <= 57343) { + const a = c & 1023; + const b = d & 1023; + U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b)); + ++i; + } else { + U.push(String.fromCodePoint(65533)); + } + } + } + } + return U.join(""); + }; + conversions["Date"] = function(V, opts) { + if (!(V instanceof Date)) { + throw new TypeError("Argument is not a Date object"); + } + if (isNaN(V)) { + return void 0; + } + return V; + }; + conversions["RegExp"] = function(V, opts) { + if (!(V instanceof RegExp)) { + V = new RegExp(V); + } + return V; + }; + } +}); - (function_declaration - name: (identifier) @function.name! - parameters: (formal_parameters ("(") @function.parameters.cursor) @function.parameters - body: (statement_block ("{") @function.body.cursor) @function.body) +// ../node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/utils.js +var require_utils = __commonJS({ + "../node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/utils.js"(exports2, module2) { + "use strict"; + module2.exports.mixin = function mixin(target, source2) { + const keys = Object.getOwnPropertyNames(source2); + for (let i = 0; i < keys.length; ++i) { + Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source2, keys[i])); + } + }; + module2.exports.wrapperSymbol = Symbol("wrapper"); + module2.exports.implSymbol = Symbol("impl"); + module2.exports.wrapperForImpl = function(impl) { + return impl[module2.exports.wrapperSymbol]; + }; + module2.exports.implForWrapper = function(wrapper) { + return wrapper[module2.exports.implSymbol]; + }; + } +}); - (function - name: (identifier) @function.name! - parameters: (formal_parameters ("(") @function.parameters.cursor) @function.parameters - body: (statement_block ("{") @function.body.cursor) @function.body) +// ../node_modules/.pnpm/tr46@0.0.3/node_modules/tr46/lib/mappingTable.json +var require_mappingTable = __commonJS({ + "../node_modules/.pnpm/tr46@0.0.3/node_modules/tr46/lib/mappingTable.json"(exports2, module2) { + module2.exports = [[[0, 44], "disallowed_STD3_valid"], [[45, 46], "valid"], [[47, 47], "disallowed_STD3_valid"], [[48, 57], "valid"], [[58, 64], "disallowed_STD3_valid"], [[65, 65], "mapped", [97]], [[66, 66], "mapped", [98]], [[67, 67], "mapped", [99]], [[68, 68], "mapped", [100]], [[69, 69], "mapped", [101]], [[70, 70], "mapped", [102]], [[71, 71], "mapped", [103]], [[72, 72], "mapped", [104]], [[73, 73], "mapped", [105]], [[74, 74], "mapped", [106]], [[75, 75], "mapped", [107]], [[76, 76], "mapped", [108]], [[77, 77], "mapped", [109]], [[78, 78], "mapped", [110]], [[79, 79], "mapped", [111]], [[80, 80], "mapped", [112]], [[81, 81], "mapped", [113]], [[82, 82], "mapped", [114]], [[83, 83], "mapped", [115]], [[84, 84], "mapped", [116]], [[85, 85], "mapped", [117]], [[86, 86], "mapped", [118]], [[87, 87], "mapped", [119]], [[88, 88], "mapped", [120]], [[89, 89], "mapped", [121]], [[90, 90], "mapped", [122]], [[91, 96], "disallowed_STD3_valid"], [[97, 122], "valid"], [[123, 127], "disallowed_STD3_valid"], [[128, 159], "disallowed"], [[160, 160], "disallowed_STD3_mapped", [32]], [[161, 167], "valid", [], "NV8"], [[168, 168], "disallowed_STD3_mapped", [32, 776]], [[169, 169], "valid", [], "NV8"], [[170, 170], "mapped", [97]], [[171, 172], "valid", [], "NV8"], [[173, 173], "ignored"], [[174, 174], "valid", [], "NV8"], [[175, 175], "disallowed_STD3_mapped", [32, 772]], [[176, 177], "valid", [], "NV8"], [[178, 178], "mapped", [50]], [[179, 179], "mapped", [51]], [[180, 180], "disallowed_STD3_mapped", [32, 769]], [[181, 181], "mapped", [956]], [[182, 182], "valid", [], "NV8"], [[183, 183], "valid"], [[184, 184], "disallowed_STD3_mapped", [32, 807]], [[185, 185], "mapped", [49]], [[186, 186], "mapped", [111]], [[187, 187], "valid", [], "NV8"], [[188, 188], "mapped", [49, 8260, 52]], [[189, 189], "mapped", [49, 8260, 50]], [[190, 190], "mapped", [51, 8260, 52]], [[191, 191], "valid", [], "NV8"], [[192, 192], "mapped", [224]], [[193, 193], "mapped", [225]], [[194, 194], "mapped", [226]], [[195, 195], "mapped", [227]], [[196, 196], "mapped", [228]], [[197, 197], "mapped", [229]], [[198, 198], "mapped", [230]], [[199, 199], "mapped", [231]], [[200, 200], "mapped", [232]], [[201, 201], "mapped", [233]], [[202, 202], "mapped", [234]], [[203, 203], "mapped", [235]], [[204, 204], "mapped", [236]], [[205, 205], "mapped", [237]], [[206, 206], "mapped", [238]], [[207, 207], "mapped", [239]], [[208, 208], "mapped", [240]], [[209, 209], "mapped", [241]], [[210, 210], "mapped", [242]], [[211, 211], "mapped", [243]], [[212, 212], "mapped", [244]], [[213, 213], "mapped", [245]], [[214, 214], "mapped", [246]], [[215, 215], "valid", [], "NV8"], [[216, 216], "mapped", [248]], [[217, 217], "mapped", [249]], [[218, 218], "mapped", [250]], [[219, 219], "mapped", [251]], [[220, 220], "mapped", [252]], [[221, 221], "mapped", [253]], [[222, 222], "mapped", [254]], [[223, 223], "deviation", [115, 115]], [[224, 246], "valid"], [[247, 247], "valid", [], "NV8"], [[248, 255], "valid"], [[256, 256], "mapped", [257]], [[257, 257], "valid"], [[258, 258], "mapped", [259]], [[259, 259], "valid"], [[260, 260], "mapped", [261]], [[261, 261], "valid"], [[262, 262], "mapped", [263]], [[263, 263], "valid"], [[264, 264], "mapped", [265]], [[265, 265], "valid"], [[266, 266], "mapped", [267]], [[267, 267], "valid"], [[268, 268], "mapped", [269]], [[269, 269], "valid"], [[270, 270], "mapped", [271]], [[271, 271], "valid"], [[272, 272], "mapped", [273]], [[273, 273], "valid"], [[274, 274], "mapped", [275]], [[275, 275], "valid"], [[276, 276], "mapped", [277]], [[277, 277], "valid"], [[278, 278], "mapped", [279]], [[279, 279], "valid"], [[280, 280], "mapped", [281]], [[281, 281], "valid"], [[282, 282], "mapped", [283]], [[283, 283], "valid"], [[284, 284], "mapped", [285]], [[285, 285], "valid"], [[286, 286], "mapped", [287]], [[287, 287], "valid"], [[288, 288], "mapped", [289]], [[289, 289], "valid"], [[290, 290], "mapped", [291]], [[291, 291], "valid"], [[292, 292], "mapped", [293]], [[293, 293], "valid"], [[294, 294], "mapped", [295]], [[295, 295], "valid"], [[296, 296], "mapped", [297]], [[297, 297], "valid"], [[298, 298], "mapped", [299]], [[299, 299], "valid"], [[300, 300], "mapped", [301]], [[301, 301], "valid"], [[302, 302], "mapped", [303]], [[303, 303], "valid"], [[304, 304], "mapped", [105, 775]], [[305, 305], "valid"], [[306, 307], "mapped", [105, 106]], [[308, 308], "mapped", [309]], [[309, 309], "valid"], [[310, 310], "mapped", [311]], [[311, 312], "valid"], [[313, 313], "mapped", [314]], [[314, 314], "valid"], [[315, 315], "mapped", [316]], [[316, 316], "valid"], [[317, 317], "mapped", [318]], [[318, 318], "valid"], [[319, 320], "mapped", [108, 183]], [[321, 321], "mapped", [322]], [[322, 322], "valid"], [[323, 323], "mapped", [324]], [[324, 324], "valid"], [[325, 325], "mapped", [326]], [[326, 326], "valid"], [[327, 327], "mapped", [328]], [[328, 328], "valid"], [[329, 329], "mapped", [700, 110]], [[330, 330], "mapped", [331]], [[331, 331], "valid"], [[332, 332], "mapped", [333]], [[333, 333], "valid"], [[334, 334], "mapped", [335]], [[335, 335], "valid"], [[336, 336], "mapped", [337]], [[337, 337], "valid"], [[338, 338], "mapped", [339]], [[339, 339], "valid"], [[340, 340], "mapped", [341]], [[341, 341], "valid"], [[342, 342], "mapped", [343]], [[343, 343], "valid"], [[344, 344], "mapped", [345]], [[345, 345], "valid"], [[346, 346], "mapped", [347]], [[347, 347], "valid"], [[348, 348], "mapped", [349]], [[349, 349], "valid"], [[350, 350], "mapped", [351]], [[351, 351], "valid"], [[352, 352], "mapped", [353]], [[353, 353], "valid"], [[354, 354], "mapped", [355]], [[355, 355], "valid"], [[356, 356], "mapped", [357]], [[357, 357], "valid"], [[358, 358], "mapped", [359]], [[359, 359], "valid"], [[360, 360], "mapped", [361]], [[361, 361], "valid"], [[362, 362], "mapped", [363]], [[363, 363], "valid"], [[364, 364], "mapped", [365]], [[365, 365], "valid"], [[366, 366], "mapped", [367]], [[367, 367], "valid"], [[368, 368], "mapped", [369]], [[369, 369], "valid"], [[370, 370], "mapped", [371]], [[371, 371], "valid"], [[372, 372], "mapped", [373]], [[373, 373], "valid"], [[374, 374], "mapped", [375]], [[375, 375], "valid"], [[376, 376], "mapped", [255]], [[377, 377], "mapped", [378]], [[378, 378], "valid"], [[379, 379], "mapped", [380]], [[380, 380], "valid"], [[381, 381], "mapped", [382]], [[382, 382], "valid"], [[383, 383], "mapped", [115]], [[384, 384], "valid"], [[385, 385], "mapped", [595]], [[386, 386], "mapped", [387]], [[387, 387], "valid"], [[388, 388], "mapped", [389]], [[389, 389], "valid"], [[390, 390], "mapped", [596]], [[391, 391], "mapped", [392]], [[392, 392], "valid"], [[393, 393], "mapped", [598]], [[394, 394], "mapped", [599]], [[395, 395], "mapped", [396]], [[396, 397], "valid"], [[398, 398], "mapped", [477]], [[399, 399], "mapped", [601]], [[400, 400], "mapped", [603]], [[401, 401], "mapped", [402]], [[402, 402], "valid"], [[403, 403], "mapped", [608]], [[404, 404], "mapped", [611]], [[405, 405], "valid"], [[406, 406], "mapped", [617]], [[407, 407], "mapped", [616]], [[408, 408], "mapped", [409]], [[409, 411], "valid"], [[412, 412], "mapped", [623]], [[413, 413], "mapped", [626]], [[414, 414], "valid"], [[415, 415], "mapped", [629]], [[416, 416], "mapped", [417]], [[417, 417], "valid"], [[418, 418], "mapped", [419]], [[419, 419], "valid"], [[420, 420], "mapped", [421]], [[421, 421], "valid"], [[422, 422], "mapped", [640]], [[423, 423], "mapped", [424]], [[424, 424], "valid"], [[425, 425], "mapped", [643]], [[426, 427], "valid"], [[428, 428], "mapped", [429]], [[429, 429], "valid"], [[430, 430], "mapped", [648]], [[431, 431], "mapped", [432]], [[432, 432], "valid"], [[433, 433], "mapped", [650]], [[434, 434], "mapped", [651]], [[435, 435], "mapped", [436]], [[436, 436], "valid"], [[437, 437], "mapped", [438]], [[438, 438], "valid"], [[439, 439], "mapped", [658]], [[440, 440], "mapped", [441]], [[441, 443], "valid"], [[444, 444], "mapped", [445]], [[445, 451], "valid"], [[452, 454], "mapped", [100, 382]], [[455, 457], "mapped", [108, 106]], [[458, 460], "mapped", [110, 106]], [[461, 461], "mapped", [462]], [[462, 462], "valid"], [[463, 463], "mapped", [464]], [[464, 464], "valid"], [[465, 465], "mapped", [466]], [[466, 466], "valid"], [[467, 467], "mapped", [468]], [[468, 468], "valid"], [[469, 469], "mapped", [470]], [[470, 470], "valid"], [[471, 471], "mapped", [472]], [[472, 472], "valid"], [[473, 473], "mapped", [474]], [[474, 474], "valid"], [[475, 475], "mapped", [476]], [[476, 477], "valid"], [[478, 478], "mapped", [479]], [[479, 479], "valid"], [[480, 480], "mapped", [481]], [[481, 481], "valid"], [[482, 482], "mapped", [483]], [[483, 483], "valid"], [[484, 484], "mapped", [485]], [[485, 485], "valid"], [[486, 486], "mapped", [487]], [[487, 487], "valid"], [[488, 488], "mapped", [489]], [[489, 489], "valid"], [[490, 490], "mapped", [491]], [[491, 491], "valid"], [[492, 492], "mapped", [493]], [[493, 493], "valid"], [[494, 494], "mapped", [495]], [[495, 496], "valid"], [[497, 499], "mapped", [100, 122]], [[500, 500], "mapped", [501]], [[501, 501], "valid"], [[502, 502], "mapped", [405]], [[503, 503], "mapped", [447]], [[504, 504], "mapped", [505]], [[505, 505], "valid"], [[506, 506], "mapped", [507]], [[507, 507], "valid"], [[508, 508], "mapped", [509]], [[509, 509], "valid"], [[510, 510], "mapped", [511]], [[511, 511], "valid"], [[512, 512], "mapped", [513]], [[513, 513], "valid"], [[514, 514], "mapped", [515]], [[515, 515], "valid"], [[516, 516], "mapped", [517]], [[517, 517], "valid"], [[518, 518], "mapped", [519]], [[519, 519], "valid"], [[520, 520], "mapped", [521]], [[521, 521], "valid"], [[522, 522], "mapped", [523]], [[523, 523], "valid"], [[524, 524], "mapped", [525]], [[525, 525], "valid"], [[526, 526], "mapped", [527]], [[527, 527], "valid"], [[528, 528], "mapped", [529]], [[529, 529], "valid"], [[530, 530], "mapped", [531]], [[531, 531], "valid"], [[532, 532], "mapped", [533]], [[533, 533], "valid"], [[534, 534], "mapped", [535]], [[535, 535], "valid"], [[536, 536], "mapped", [537]], [[537, 537], "valid"], [[538, 538], "mapped", [539]], [[539, 539], "valid"], [[540, 540], "mapped", [541]], [[541, 541], "valid"], [[542, 542], "mapped", [543]], [[543, 543], "valid"], [[544, 544], "mapped", [414]], [[545, 545], "valid"], [[546, 546], "mapped", [547]], [[547, 547], "valid"], [[548, 548], "mapped", [549]], [[549, 549], "valid"], [[550, 550], "mapped", [551]], [[551, 551], "valid"], [[552, 552], "mapped", [553]], [[553, 553], "valid"], [[554, 554], "mapped", [555]], [[555, 555], "valid"], [[556, 556], "mapped", [557]], [[557, 557], "valid"], [[558, 558], "mapped", [559]], [[559, 559], "valid"], [[560, 560], "mapped", [561]], [[561, 561], "valid"], [[562, 562], "mapped", [563]], [[563, 563], "valid"], [[564, 566], "valid"], [[567, 569], "valid"], [[570, 570], "mapped", [11365]], [[571, 571], "mapped", [572]], [[572, 572], "valid"], [[573, 573], "mapped", [410]], [[574, 574], "mapped", [11366]], [[575, 576], "valid"], [[577, 577], "mapped", [578]], [[578, 578], "valid"], [[579, 579], "mapped", [384]], [[580, 580], "mapped", [649]], [[581, 581], "mapped", [652]], [[582, 582], "mapped", [583]], [[583, 583], "valid"], [[584, 584], "mapped", [585]], [[585, 585], "valid"], [[586, 586], "mapped", [587]], [[587, 587], "valid"], [[588, 588], "mapped", [589]], [[589, 589], "valid"], [[590, 590], "mapped", [591]], [[591, 591], "valid"], [[592, 680], "valid"], [[681, 685], "valid"], [[686, 687], "valid"], [[688, 688], "mapped", [104]], [[689, 689], "mapped", [614]], [[690, 690], "mapped", [106]], [[691, 691], "mapped", [114]], [[692, 692], "mapped", [633]], [[693, 693], "mapped", [635]], [[694, 694], "mapped", [641]], [[695, 695], "mapped", [119]], [[696, 696], "mapped", [121]], [[697, 705], "valid"], [[706, 709], "valid", [], "NV8"], [[710, 721], "valid"], [[722, 727], "valid", [], "NV8"], [[728, 728], "disallowed_STD3_mapped", [32, 774]], [[729, 729], "disallowed_STD3_mapped", [32, 775]], [[730, 730], "disallowed_STD3_mapped", [32, 778]], [[731, 731], "disallowed_STD3_mapped", [32, 808]], [[732, 732], "disallowed_STD3_mapped", [32, 771]], [[733, 733], "disallowed_STD3_mapped", [32, 779]], [[734, 734], "valid", [], "NV8"], [[735, 735], "valid", [], "NV8"], [[736, 736], "mapped", [611]], [[737, 737], "mapped", [108]], [[738, 738], "mapped", [115]], [[739, 739], "mapped", [120]], [[740, 740], "mapped", [661]], [[741, 745], "valid", [], "NV8"], [[746, 747], "valid", [], "NV8"], [[748, 748], "valid"], [[749, 749], "valid", [], "NV8"], [[750, 750], "valid"], [[751, 767], "valid", [], "NV8"], [[768, 831], "valid"], [[832, 832], "mapped", [768]], [[833, 833], "mapped", [769]], [[834, 834], "valid"], [[835, 835], "mapped", [787]], [[836, 836], "mapped", [776, 769]], [[837, 837], "mapped", [953]], [[838, 846], "valid"], [[847, 847], "ignored"], [[848, 855], "valid"], [[856, 860], "valid"], [[861, 863], "valid"], [[864, 865], "valid"], [[866, 866], "valid"], [[867, 879], "valid"], [[880, 880], "mapped", [881]], [[881, 881], "valid"], [[882, 882], "mapped", [883]], [[883, 883], "valid"], [[884, 884], "mapped", [697]], [[885, 885], "valid"], [[886, 886], "mapped", [887]], [[887, 887], "valid"], [[888, 889], "disallowed"], [[890, 890], "disallowed_STD3_mapped", [32, 953]], [[891, 893], "valid"], [[894, 894], "disallowed_STD3_mapped", [59]], [[895, 895], "mapped", [1011]], [[896, 899], "disallowed"], [[900, 900], "disallowed_STD3_mapped", [32, 769]], [[901, 901], "disallowed_STD3_mapped", [32, 776, 769]], [[902, 902], "mapped", [940]], [[903, 903], "mapped", [183]], [[904, 904], "mapped", [941]], [[905, 905], "mapped", [942]], [[906, 906], "mapped", [943]], [[907, 907], "disallowed"], [[908, 908], "mapped", [972]], [[909, 909], "disallowed"], [[910, 910], "mapped", [973]], [[911, 911], "mapped", [974]], [[912, 912], "valid"], [[913, 913], "mapped", [945]], [[914, 914], "mapped", [946]], [[915, 915], "mapped", [947]], [[916, 916], "mapped", [948]], [[917, 917], "mapped", [949]], [[918, 918], "mapped", [950]], [[919, 919], "mapped", [951]], [[920, 920], "mapped", [952]], [[921, 921], "mapped", [953]], [[922, 922], "mapped", [954]], [[923, 923], "mapped", [955]], [[924, 924], "mapped", [956]], [[925, 925], "mapped", [957]], [[926, 926], "mapped", [958]], [[927, 927], "mapped", [959]], [[928, 928], "mapped", [960]], [[929, 929], "mapped", [961]], [[930, 930], "disallowed"], [[931, 931], "mapped", [963]], [[932, 932], "mapped", [964]], [[933, 933], "mapped", [965]], [[934, 934], "mapped", [966]], [[935, 935], "mapped", [967]], [[936, 936], "mapped", [968]], [[937, 937], "mapped", [969]], [[938, 938], "mapped", [970]], [[939, 939], "mapped", [971]], [[940, 961], "valid"], [[962, 962], "deviation", [963]], [[963, 974], "valid"], [[975, 975], "mapped", [983]], [[976, 976], "mapped", [946]], [[977, 977], "mapped", [952]], [[978, 978], "mapped", [965]], [[979, 979], "mapped", [973]], [[980, 980], "mapped", [971]], [[981, 981], "mapped", [966]], [[982, 982], "mapped", [960]], [[983, 983], "valid"], [[984, 984], "mapped", [985]], [[985, 985], "valid"], [[986, 986], "mapped", [987]], [[987, 987], "valid"], [[988, 988], "mapped", [989]], [[989, 989], "valid"], [[990, 990], "mapped", [991]], [[991, 991], "valid"], [[992, 992], "mapped", [993]], [[993, 993], "valid"], [[994, 994], "mapped", [995]], [[995, 995], "valid"], [[996, 996], "mapped", [997]], [[997, 997], "valid"], [[998, 998], "mapped", [999]], [[999, 999], "valid"], [[1e3, 1e3], "mapped", [1001]], [[1001, 1001], "valid"], [[1002, 1002], "mapped", [1003]], [[1003, 1003], "valid"], [[1004, 1004], "mapped", [1005]], [[1005, 1005], "valid"], [[1006, 1006], "mapped", [1007]], [[1007, 1007], "valid"], [[1008, 1008], "mapped", [954]], [[1009, 1009], "mapped", [961]], [[1010, 1010], "mapped", [963]], [[1011, 1011], "valid"], [[1012, 1012], "mapped", [952]], [[1013, 1013], "mapped", [949]], [[1014, 1014], "valid", [], "NV8"], [[1015, 1015], "mapped", [1016]], [[1016, 1016], "valid"], [[1017, 1017], "mapped", [963]], [[1018, 1018], "mapped", [1019]], [[1019, 1019], "valid"], [[1020, 1020], "valid"], [[1021, 1021], "mapped", [891]], [[1022, 1022], "mapped", [892]], [[1023, 1023], "mapped", [893]], [[1024, 1024], "mapped", [1104]], [[1025, 1025], "mapped", [1105]], [[1026, 1026], "mapped", [1106]], [[1027, 1027], "mapped", [1107]], [[1028, 1028], "mapped", [1108]], [[1029, 1029], "mapped", [1109]], [[1030, 1030], "mapped", [1110]], [[1031, 1031], "mapped", [1111]], [[1032, 1032], "mapped", [1112]], [[1033, 1033], "mapped", [1113]], [[1034, 1034], "mapped", [1114]], [[1035, 1035], "mapped", [1115]], [[1036, 1036], "mapped", [1116]], [[1037, 1037], "mapped", [1117]], [[1038, 1038], "mapped", [1118]], [[1039, 1039], "mapped", [1119]], [[1040, 1040], "mapped", [1072]], [[1041, 1041], "mapped", [1073]], [[1042, 1042], "mapped", [1074]], [[1043, 1043], "mapped", [1075]], [[1044, 1044], "mapped", [1076]], [[1045, 1045], "mapped", [1077]], [[1046, 1046], "mapped", [1078]], [[1047, 1047], "mapped", [1079]], [[1048, 1048], "mapped", [1080]], [[1049, 1049], "mapped", [1081]], [[1050, 1050], "mapped", [1082]], [[1051, 1051], "mapped", [1083]], [[1052, 1052], "mapped", [1084]], [[1053, 1053], "mapped", [1085]], [[1054, 1054], "mapped", [1086]], [[1055, 1055], "mapped", [1087]], [[1056, 1056], "mapped", [1088]], [[1057, 1057], "mapped", [1089]], [[1058, 1058], "mapped", [1090]], [[1059, 1059], "mapped", [1091]], [[1060, 1060], "mapped", [1092]], [[1061, 1061], "mapped", [1093]], [[1062, 1062], "mapped", [1094]], [[1063, 1063], "mapped", [1095]], [[1064, 1064], "mapped", [1096]], [[1065, 1065], "mapped", [1097]], [[1066, 1066], "mapped", [1098]], [[1067, 1067], "mapped", [1099]], [[1068, 1068], "mapped", [1100]], [[1069, 1069], "mapped", [1101]], [[1070, 1070], "mapped", [1102]], [[1071, 1071], "mapped", [1103]], [[1072, 1103], "valid"], [[1104, 1104], "valid"], [[1105, 1116], "valid"], [[1117, 1117], "valid"], [[1118, 1119], "valid"], [[1120, 1120], "mapped", [1121]], [[1121, 1121], "valid"], [[1122, 1122], "mapped", [1123]], [[1123, 1123], "valid"], [[1124, 1124], "mapped", [1125]], [[1125, 1125], "valid"], [[1126, 1126], "mapped", [1127]], [[1127, 1127], "valid"], [[1128, 1128], "mapped", [1129]], [[1129, 1129], "valid"], [[1130, 1130], "mapped", [1131]], [[1131, 1131], "valid"], [[1132, 1132], "mapped", [1133]], [[1133, 1133], "valid"], [[1134, 1134], "mapped", [1135]], [[1135, 1135], "valid"], [[1136, 1136], "mapped", [1137]], [[1137, 1137], "valid"], [[1138, 1138], "mapped", [1139]], [[1139, 1139], "valid"], [[1140, 1140], "mapped", [1141]], [[1141, 1141], "valid"], [[1142, 1142], "mapped", [1143]], [[1143, 1143], "valid"], [[1144, 1144], "mapped", [1145]], [[1145, 1145], "valid"], [[1146, 1146], "mapped", [1147]], [[1147, 1147], "valid"], [[1148, 1148], "mapped", [1149]], [[1149, 1149], "valid"], [[1150, 1150], "mapped", [1151]], [[1151, 1151], "valid"], [[1152, 1152], "mapped", [1153]], [[1153, 1153], "valid"], [[1154, 1154], "valid", [], "NV8"], [[1155, 1158], "valid"], [[1159, 1159], "valid"], [[1160, 1161], "valid", [], "NV8"], [[1162, 1162], "mapped", [1163]], [[1163, 1163], "valid"], [[1164, 1164], "mapped", [1165]], [[1165, 1165], "valid"], [[1166, 1166], "mapped", [1167]], [[1167, 1167], "valid"], [[1168, 1168], "mapped", [1169]], [[1169, 1169], "valid"], [[1170, 1170], "mapped", [1171]], [[1171, 1171], "valid"], [[1172, 1172], "mapped", [1173]], [[1173, 1173], "valid"], [[1174, 1174], "mapped", [1175]], [[1175, 1175], "valid"], [[1176, 1176], "mapped", [1177]], [[1177, 1177], "valid"], [[1178, 1178], "mapped", [1179]], [[1179, 1179], "valid"], [[1180, 1180], "mapped", [1181]], [[1181, 1181], "valid"], [[1182, 1182], "mapped", [1183]], [[1183, 1183], "valid"], [[1184, 1184], "mapped", [1185]], [[1185, 1185], "valid"], [[1186, 1186], "mapped", [1187]], [[1187, 1187], "valid"], [[1188, 1188], "mapped", [1189]], [[1189, 1189], "valid"], [[1190, 1190], "mapped", [1191]], [[1191, 1191], "valid"], [[1192, 1192], "mapped", [1193]], [[1193, 1193], "valid"], [[1194, 1194], "mapped", [1195]], [[1195, 1195], "valid"], [[1196, 1196], "mapped", [1197]], [[1197, 1197], "valid"], [[1198, 1198], "mapped", [1199]], [[1199, 1199], "valid"], [[1200, 1200], "mapped", [1201]], [[1201, 1201], "valid"], [[1202, 1202], "mapped", [1203]], [[1203, 1203], "valid"], [[1204, 1204], "mapped", [1205]], [[1205, 1205], "valid"], [[1206, 1206], "mapped", [1207]], [[1207, 1207], "valid"], [[1208, 1208], "mapped", [1209]], [[1209, 1209], "valid"], [[1210, 1210], "mapped", [1211]], [[1211, 1211], "valid"], [[1212, 1212], "mapped", [1213]], [[1213, 1213], "valid"], [[1214, 1214], "mapped", [1215]], [[1215, 1215], "valid"], [[1216, 1216], "disallowed"], [[1217, 1217], "mapped", [1218]], [[1218, 1218], "valid"], [[1219, 1219], "mapped", [1220]], [[1220, 1220], "valid"], [[1221, 1221], "mapped", [1222]], [[1222, 1222], "valid"], [[1223, 1223], "mapped", [1224]], [[1224, 1224], "valid"], [[1225, 1225], "mapped", [1226]], [[1226, 1226], "valid"], [[1227, 1227], "mapped", [1228]], [[1228, 1228], "valid"], [[1229, 1229], "mapped", [1230]], [[1230, 1230], "valid"], [[1231, 1231], "valid"], [[1232, 1232], "mapped", [1233]], [[1233, 1233], "valid"], [[1234, 1234], "mapped", [1235]], [[1235, 1235], "valid"], [[1236, 1236], "mapped", [1237]], [[1237, 1237], "valid"], [[1238, 1238], "mapped", [1239]], [[1239, 1239], "valid"], [[1240, 1240], "mapped", [1241]], [[1241, 1241], "valid"], [[1242, 1242], "mapped", [1243]], [[1243, 1243], "valid"], [[1244, 1244], "mapped", [1245]], [[1245, 1245], "valid"], [[1246, 1246], "mapped", [1247]], [[1247, 1247], "valid"], [[1248, 1248], "mapped", [1249]], [[1249, 1249], "valid"], [[1250, 1250], "mapped", [1251]], [[1251, 1251], "valid"], [[1252, 1252], "mapped", [1253]], [[1253, 1253], "valid"], [[1254, 1254], "mapped", [1255]], [[1255, 1255], "valid"], [[1256, 1256], "mapped", [1257]], [[1257, 1257], "valid"], [[1258, 1258], "mapped", [1259]], [[1259, 1259], "valid"], [[1260, 1260], "mapped", [1261]], [[1261, 1261], "valid"], [[1262, 1262], "mapped", [1263]], [[1263, 1263], "valid"], [[1264, 1264], "mapped", [1265]], [[1265, 1265], "valid"], [[1266, 1266], "mapped", [1267]], [[1267, 1267], "valid"], [[1268, 1268], "mapped", [1269]], [[1269, 1269], "valid"], [[1270, 1270], "mapped", [1271]], [[1271, 1271], "valid"], [[1272, 1272], "mapped", [1273]], [[1273, 1273], "valid"], [[1274, 1274], "mapped", [1275]], [[1275, 1275], "valid"], [[1276, 1276], "mapped", [1277]], [[1277, 1277], "valid"], [[1278, 1278], "mapped", [1279]], [[1279, 1279], "valid"], [[1280, 1280], "mapped", [1281]], [[1281, 1281], "valid"], [[1282, 1282], "mapped", [1283]], [[1283, 1283], "valid"], [[1284, 1284], "mapped", [1285]], [[1285, 1285], "valid"], [[1286, 1286], "mapped", [1287]], [[1287, 1287], "valid"], [[1288, 1288], "mapped", [1289]], [[1289, 1289], "valid"], [[1290, 1290], "mapped", [1291]], [[1291, 1291], "valid"], [[1292, 1292], "mapped", [1293]], [[1293, 1293], "valid"], [[1294, 1294], "mapped", [1295]], [[1295, 1295], "valid"], [[1296, 1296], "mapped", [1297]], [[1297, 1297], "valid"], [[1298, 1298], "mapped", [1299]], [[1299, 1299], "valid"], [[1300, 1300], "mapped", [1301]], [[1301, 1301], "valid"], [[1302, 1302], "mapped", [1303]], [[1303, 1303], "valid"], [[1304, 1304], "mapped", [1305]], [[1305, 1305], "valid"], [[1306, 1306], "mapped", [1307]], [[1307, 1307], "valid"], [[1308, 1308], "mapped", [1309]], [[1309, 1309], "valid"], [[1310, 1310], "mapped", [1311]], [[1311, 1311], "valid"], [[1312, 1312], "mapped", [1313]], [[1313, 1313], "valid"], [[1314, 1314], "mapped", [1315]], [[1315, 1315], "valid"], [[1316, 1316], "mapped", [1317]], [[1317, 1317], "valid"], [[1318, 1318], "mapped", [1319]], [[1319, 1319], "valid"], [[1320, 1320], "mapped", [1321]], [[1321, 1321], "valid"], [[1322, 1322], "mapped", [1323]], [[1323, 1323], "valid"], [[1324, 1324], "mapped", [1325]], [[1325, 1325], "valid"], [[1326, 1326], "mapped", [1327]], [[1327, 1327], "valid"], [[1328, 1328], "disallowed"], [[1329, 1329], "mapped", [1377]], [[1330, 1330], "mapped", [1378]], [[1331, 1331], "mapped", [1379]], [[1332, 1332], "mapped", [1380]], [[1333, 1333], "mapped", [1381]], [[1334, 1334], "mapped", [1382]], [[1335, 1335], "mapped", [1383]], [[1336, 1336], "mapped", [1384]], [[1337, 1337], "mapped", [1385]], [[1338, 1338], "mapped", [1386]], [[1339, 1339], "mapped", [1387]], [[1340, 1340], "mapped", [1388]], [[1341, 1341], "mapped", [1389]], [[1342, 1342], "mapped", [1390]], [[1343, 1343], "mapped", [1391]], [[1344, 1344], "mapped", [1392]], [[1345, 1345], "mapped", [1393]], [[1346, 1346], "mapped", [1394]], [[1347, 1347], "mapped", [1395]], [[1348, 1348], "mapped", [1396]], [[1349, 1349], "mapped", [1397]], [[1350, 1350], "mapped", [1398]], [[1351, 1351], "mapped", [1399]], [[1352, 1352], "mapped", [1400]], [[1353, 1353], "mapped", [1401]], [[1354, 1354], "mapped", [1402]], [[1355, 1355], "mapped", [1403]], [[1356, 1356], "mapped", [1404]], [[1357, 1357], "mapped", [1405]], [[1358, 1358], "mapped", [1406]], [[1359, 1359], "mapped", [1407]], [[1360, 1360], "mapped", [1408]], [[1361, 1361], "mapped", [1409]], [[1362, 1362], "mapped", [1410]], [[1363, 1363], "mapped", [1411]], [[1364, 1364], "mapped", [1412]], [[1365, 1365], "mapped", [1413]], [[1366, 1366], "mapped", [1414]], [[1367, 1368], "disallowed"], [[1369, 1369], "valid"], [[1370, 1375], "valid", [], "NV8"], [[1376, 1376], "disallowed"], [[1377, 1414], "valid"], [[1415, 1415], "mapped", [1381, 1410]], [[1416, 1416], "disallowed"], [[1417, 1417], "valid", [], "NV8"], [[1418, 1418], "valid", [], "NV8"], [[1419, 1420], "disallowed"], [[1421, 1422], "valid", [], "NV8"], [[1423, 1423], "valid", [], "NV8"], [[1424, 1424], "disallowed"], [[1425, 1441], "valid"], [[1442, 1442], "valid"], [[1443, 1455], "valid"], [[1456, 1465], "valid"], [[1466, 1466], "valid"], [[1467, 1469], "valid"], [[1470, 1470], "valid", [], "NV8"], [[1471, 1471], "valid"], [[1472, 1472], "valid", [], "NV8"], [[1473, 1474], "valid"], [[1475, 1475], "valid", [], "NV8"], [[1476, 1476], "valid"], [[1477, 1477], "valid"], [[1478, 1478], "valid", [], "NV8"], [[1479, 1479], "valid"], [[1480, 1487], "disallowed"], [[1488, 1514], "valid"], [[1515, 1519], "disallowed"], [[1520, 1524], "valid"], [[1525, 1535], "disallowed"], [[1536, 1539], "disallowed"], [[1540, 1540], "disallowed"], [[1541, 1541], "disallowed"], [[1542, 1546], "valid", [], "NV8"], [[1547, 1547], "valid", [], "NV8"], [[1548, 1548], "valid", [], "NV8"], [[1549, 1551], "valid", [], "NV8"], [[1552, 1557], "valid"], [[1558, 1562], "valid"], [[1563, 1563], "valid", [], "NV8"], [[1564, 1564], "disallowed"], [[1565, 1565], "disallowed"], [[1566, 1566], "valid", [], "NV8"], [[1567, 1567], "valid", [], "NV8"], [[1568, 1568], "valid"], [[1569, 1594], "valid"], [[1595, 1599], "valid"], [[1600, 1600], "valid", [], "NV8"], [[1601, 1618], "valid"], [[1619, 1621], "valid"], [[1622, 1624], "valid"], [[1625, 1630], "valid"], [[1631, 1631], "valid"], [[1632, 1641], "valid"], [[1642, 1645], "valid", [], "NV8"], [[1646, 1647], "valid"], [[1648, 1652], "valid"], [[1653, 1653], "mapped", [1575, 1652]], [[1654, 1654], "mapped", [1608, 1652]], [[1655, 1655], "mapped", [1735, 1652]], [[1656, 1656], "mapped", [1610, 1652]], [[1657, 1719], "valid"], [[1720, 1721], "valid"], [[1722, 1726], "valid"], [[1727, 1727], "valid"], [[1728, 1742], "valid"], [[1743, 1743], "valid"], [[1744, 1747], "valid"], [[1748, 1748], "valid", [], "NV8"], [[1749, 1756], "valid"], [[1757, 1757], "disallowed"], [[1758, 1758], "valid", [], "NV8"], [[1759, 1768], "valid"], [[1769, 1769], "valid", [], "NV8"], [[1770, 1773], "valid"], [[1774, 1775], "valid"], [[1776, 1785], "valid"], [[1786, 1790], "valid"], [[1791, 1791], "valid"], [[1792, 1805], "valid", [], "NV8"], [[1806, 1806], "disallowed"], [[1807, 1807], "disallowed"], [[1808, 1836], "valid"], [[1837, 1839], "valid"], [[1840, 1866], "valid"], [[1867, 1868], "disallowed"], [[1869, 1871], "valid"], [[1872, 1901], "valid"], [[1902, 1919], "valid"], [[1920, 1968], "valid"], [[1969, 1969], "valid"], [[1970, 1983], "disallowed"], [[1984, 2037], "valid"], [[2038, 2042], "valid", [], "NV8"], [[2043, 2047], "disallowed"], [[2048, 2093], "valid"], [[2094, 2095], "disallowed"], [[2096, 2110], "valid", [], "NV8"], [[2111, 2111], "disallowed"], [[2112, 2139], "valid"], [[2140, 2141], "disallowed"], [[2142, 2142], "valid", [], "NV8"], [[2143, 2207], "disallowed"], [[2208, 2208], "valid"], [[2209, 2209], "valid"], [[2210, 2220], "valid"], [[2221, 2226], "valid"], [[2227, 2228], "valid"], [[2229, 2274], "disallowed"], [[2275, 2275], "valid"], [[2276, 2302], "valid"], [[2303, 2303], "valid"], [[2304, 2304], "valid"], [[2305, 2307], "valid"], [[2308, 2308], "valid"], [[2309, 2361], "valid"], [[2362, 2363], "valid"], [[2364, 2381], "valid"], [[2382, 2382], "valid"], [[2383, 2383], "valid"], [[2384, 2388], "valid"], [[2389, 2389], "valid"], [[2390, 2391], "valid"], [[2392, 2392], "mapped", [2325, 2364]], [[2393, 2393], "mapped", [2326, 2364]], [[2394, 2394], "mapped", [2327, 2364]], [[2395, 2395], "mapped", [2332, 2364]], [[2396, 2396], "mapped", [2337, 2364]], [[2397, 2397], "mapped", [2338, 2364]], [[2398, 2398], "mapped", [2347, 2364]], [[2399, 2399], "mapped", [2351, 2364]], [[2400, 2403], "valid"], [[2404, 2405], "valid", [], "NV8"], [[2406, 2415], "valid"], [[2416, 2416], "valid", [], "NV8"], [[2417, 2418], "valid"], [[2419, 2423], "valid"], [[2424, 2424], "valid"], [[2425, 2426], "valid"], [[2427, 2428], "valid"], [[2429, 2429], "valid"], [[2430, 2431], "valid"], [[2432, 2432], "valid"], [[2433, 2435], "valid"], [[2436, 2436], "disallowed"], [[2437, 2444], "valid"], [[2445, 2446], "disallowed"], [[2447, 2448], "valid"], [[2449, 2450], "disallowed"], [[2451, 2472], "valid"], [[2473, 2473], "disallowed"], [[2474, 2480], "valid"], [[2481, 2481], "disallowed"], [[2482, 2482], "valid"], [[2483, 2485], "disallowed"], [[2486, 2489], "valid"], [[2490, 2491], "disallowed"], [[2492, 2492], "valid"], [[2493, 2493], "valid"], [[2494, 2500], "valid"], [[2501, 2502], "disallowed"], [[2503, 2504], "valid"], [[2505, 2506], "disallowed"], [[2507, 2509], "valid"], [[2510, 2510], "valid"], [[2511, 2518], "disallowed"], [[2519, 2519], "valid"], [[2520, 2523], "disallowed"], [[2524, 2524], "mapped", [2465, 2492]], [[2525, 2525], "mapped", [2466, 2492]], [[2526, 2526], "disallowed"], [[2527, 2527], "mapped", [2479, 2492]], [[2528, 2531], "valid"], [[2532, 2533], "disallowed"], [[2534, 2545], "valid"], [[2546, 2554], "valid", [], "NV8"], [[2555, 2555], "valid", [], "NV8"], [[2556, 2560], "disallowed"], [[2561, 2561], "valid"], [[2562, 2562], "valid"], [[2563, 2563], "valid"], [[2564, 2564], "disallowed"], [[2565, 2570], "valid"], [[2571, 2574], "disallowed"], [[2575, 2576], "valid"], [[2577, 2578], "disallowed"], [[2579, 2600], "valid"], [[2601, 2601], "disallowed"], [[2602, 2608], "valid"], [[2609, 2609], "disallowed"], [[2610, 2610], "valid"], [[2611, 2611], "mapped", [2610, 2620]], [[2612, 2612], "disallowed"], [[2613, 2613], "valid"], [[2614, 2614], "mapped", [2616, 2620]], [[2615, 2615], "disallowed"], [[2616, 2617], "valid"], [[2618, 2619], "disallowed"], [[2620, 2620], "valid"], [[2621, 2621], "disallowed"], [[2622, 2626], "valid"], [[2627, 2630], "disallowed"], [[2631, 2632], "valid"], [[2633, 2634], "disallowed"], [[2635, 2637], "valid"], [[2638, 2640], "disallowed"], [[2641, 2641], "valid"], [[2642, 2648], "disallowed"], [[2649, 2649], "mapped", [2582, 2620]], [[2650, 2650], "mapped", [2583, 2620]], [[2651, 2651], "mapped", [2588, 2620]], [[2652, 2652], "valid"], [[2653, 2653], "disallowed"], [[2654, 2654], "mapped", [2603, 2620]], [[2655, 2661], "disallowed"], [[2662, 2676], "valid"], [[2677, 2677], "valid"], [[2678, 2688], "disallowed"], [[2689, 2691], "valid"], [[2692, 2692], "disallowed"], [[2693, 2699], "valid"], [[2700, 2700], "valid"], [[2701, 2701], "valid"], [[2702, 2702], "disallowed"], [[2703, 2705], "valid"], [[2706, 2706], "disallowed"], [[2707, 2728], "valid"], [[2729, 2729], "disallowed"], [[2730, 2736], "valid"], [[2737, 2737], "disallowed"], [[2738, 2739], "valid"], [[2740, 2740], "disallowed"], [[2741, 2745], "valid"], [[2746, 2747], "disallowed"], [[2748, 2757], "valid"], [[2758, 2758], "disallowed"], [[2759, 2761], "valid"], [[2762, 2762], "disallowed"], [[2763, 2765], "valid"], [[2766, 2767], "disallowed"], [[2768, 2768], "valid"], [[2769, 2783], "disallowed"], [[2784, 2784], "valid"], [[2785, 2787], "valid"], [[2788, 2789], "disallowed"], [[2790, 2799], "valid"], [[2800, 2800], "valid", [], "NV8"], [[2801, 2801], "valid", [], "NV8"], [[2802, 2808], "disallowed"], [[2809, 2809], "valid"], [[2810, 2816], "disallowed"], [[2817, 2819], "valid"], [[2820, 2820], "disallowed"], [[2821, 2828], "valid"], [[2829, 2830], "disallowed"], [[2831, 2832], "valid"], [[2833, 2834], "disallowed"], [[2835, 2856], "valid"], [[2857, 2857], "disallowed"], [[2858, 2864], "valid"], [[2865, 2865], "disallowed"], [[2866, 2867], "valid"], [[2868, 2868], "disallowed"], [[2869, 2869], "valid"], [[2870, 2873], "valid"], [[2874, 2875], "disallowed"], [[2876, 2883], "valid"], [[2884, 2884], "valid"], [[2885, 2886], "disallowed"], [[2887, 2888], "valid"], [[2889, 2890], "disallowed"], [[2891, 2893], "valid"], [[2894, 2901], "disallowed"], [[2902, 2903], "valid"], [[2904, 2907], "disallowed"], [[2908, 2908], "mapped", [2849, 2876]], [[2909, 2909], "mapped", [2850, 2876]], [[2910, 2910], "disallowed"], [[2911, 2913], "valid"], [[2914, 2915], "valid"], [[2916, 2917], "disallowed"], [[2918, 2927], "valid"], [[2928, 2928], "valid", [], "NV8"], [[2929, 2929], "valid"], [[2930, 2935], "valid", [], "NV8"], [[2936, 2945], "disallowed"], [[2946, 2947], "valid"], [[2948, 2948], "disallowed"], [[2949, 2954], "valid"], [[2955, 2957], "disallowed"], [[2958, 2960], "valid"], [[2961, 2961], "disallowed"], [[2962, 2965], "valid"], [[2966, 2968], "disallowed"], [[2969, 2970], "valid"], [[2971, 2971], "disallowed"], [[2972, 2972], "valid"], [[2973, 2973], "disallowed"], [[2974, 2975], "valid"], [[2976, 2978], "disallowed"], [[2979, 2980], "valid"], [[2981, 2983], "disallowed"], [[2984, 2986], "valid"], [[2987, 2989], "disallowed"], [[2990, 2997], "valid"], [[2998, 2998], "valid"], [[2999, 3001], "valid"], [[3002, 3005], "disallowed"], [[3006, 3010], "valid"], [[3011, 3013], "disallowed"], [[3014, 3016], "valid"], [[3017, 3017], "disallowed"], [[3018, 3021], "valid"], [[3022, 3023], "disallowed"], [[3024, 3024], "valid"], [[3025, 3030], "disallowed"], [[3031, 3031], "valid"], [[3032, 3045], "disallowed"], [[3046, 3046], "valid"], [[3047, 3055], "valid"], [[3056, 3058], "valid", [], "NV8"], [[3059, 3066], "valid", [], "NV8"], [[3067, 3071], "disallowed"], [[3072, 3072], "valid"], [[3073, 3075], "valid"], [[3076, 3076], "disallowed"], [[3077, 3084], "valid"], [[3085, 3085], "disallowed"], [[3086, 3088], "valid"], [[3089, 3089], "disallowed"], [[3090, 3112], "valid"], [[3113, 3113], "disallowed"], [[3114, 3123], "valid"], [[3124, 3124], "valid"], [[3125, 3129], "valid"], [[3130, 3132], "disallowed"], [[3133, 3133], "valid"], [[3134, 3140], "valid"], [[3141, 3141], "disallowed"], [[3142, 3144], "valid"], [[3145, 3145], "disallowed"], [[3146, 3149], "valid"], [[3150, 3156], "disallowed"], [[3157, 3158], "valid"], [[3159, 3159], "disallowed"], [[3160, 3161], "valid"], [[3162, 3162], "valid"], [[3163, 3167], "disallowed"], [[3168, 3169], "valid"], [[3170, 3171], "valid"], [[3172, 3173], "disallowed"], [[3174, 3183], "valid"], [[3184, 3191], "disallowed"], [[3192, 3199], "valid", [], "NV8"], [[3200, 3200], "disallowed"], [[3201, 3201], "valid"], [[3202, 3203], "valid"], [[3204, 3204], "disallowed"], [[3205, 3212], "valid"], [[3213, 3213], "disallowed"], [[3214, 3216], "valid"], [[3217, 3217], "disallowed"], [[3218, 3240], "valid"], [[3241, 3241], "disallowed"], [[3242, 3251], "valid"], [[3252, 3252], "disallowed"], [[3253, 3257], "valid"], [[3258, 3259], "disallowed"], [[3260, 3261], "valid"], [[3262, 3268], "valid"], [[3269, 3269], "disallowed"], [[3270, 3272], "valid"], [[3273, 3273], "disallowed"], [[3274, 3277], "valid"], [[3278, 3284], "disallowed"], [[3285, 3286], "valid"], [[3287, 3293], "disallowed"], [[3294, 3294], "valid"], [[3295, 3295], "disallowed"], [[3296, 3297], "valid"], [[3298, 3299], "valid"], [[3300, 3301], "disallowed"], [[3302, 3311], "valid"], [[3312, 3312], "disallowed"], [[3313, 3314], "valid"], [[3315, 3328], "disallowed"], [[3329, 3329], "valid"], [[3330, 3331], "valid"], [[3332, 3332], "disallowed"], [[3333, 3340], "valid"], [[3341, 3341], "disallowed"], [[3342, 3344], "valid"], [[3345, 3345], "disallowed"], [[3346, 3368], "valid"], [[3369, 3369], "valid"], [[3370, 3385], "valid"], [[3386, 3386], "valid"], [[3387, 3388], "disallowed"], [[3389, 3389], "valid"], [[3390, 3395], "valid"], [[3396, 3396], "valid"], [[3397, 3397], "disallowed"], [[3398, 3400], "valid"], [[3401, 3401], "disallowed"], [[3402, 3405], "valid"], [[3406, 3406], "valid"], [[3407, 3414], "disallowed"], [[3415, 3415], "valid"], [[3416, 3422], "disallowed"], [[3423, 3423], "valid"], [[3424, 3425], "valid"], [[3426, 3427], "valid"], [[3428, 3429], "disallowed"], [[3430, 3439], "valid"], [[3440, 3445], "valid", [], "NV8"], [[3446, 3448], "disallowed"], [[3449, 3449], "valid", [], "NV8"], [[3450, 3455], "valid"], [[3456, 3457], "disallowed"], [[3458, 3459], "valid"], [[3460, 3460], "disallowed"], [[3461, 3478], "valid"], [[3479, 3481], "disallowed"], [[3482, 3505], "valid"], [[3506, 3506], "disallowed"], [[3507, 3515], "valid"], [[3516, 3516], "disallowed"], [[3517, 3517], "valid"], [[3518, 3519], "disallowed"], [[3520, 3526], "valid"], [[3527, 3529], "disallowed"], [[3530, 3530], "valid"], [[3531, 3534], "disallowed"], [[3535, 3540], "valid"], [[3541, 3541], "disallowed"], [[3542, 3542], "valid"], [[3543, 3543], "disallowed"], [[3544, 3551], "valid"], [[3552, 3557], "disallowed"], [[3558, 3567], "valid"], [[3568, 3569], "disallowed"], [[3570, 3571], "valid"], [[3572, 3572], "valid", [], "NV8"], [[3573, 3584], "disallowed"], [[3585, 3634], "valid"], [[3635, 3635], "mapped", [3661, 3634]], [[3636, 3642], "valid"], [[3643, 3646], "disallowed"], [[3647, 3647], "valid", [], "NV8"], [[3648, 3662], "valid"], [[3663, 3663], "valid", [], "NV8"], [[3664, 3673], "valid"], [[3674, 3675], "valid", [], "NV8"], [[3676, 3712], "disallowed"], [[3713, 3714], "valid"], [[3715, 3715], "disallowed"], [[3716, 3716], "valid"], [[3717, 3718], "disallowed"], [[3719, 3720], "valid"], [[3721, 3721], "disallowed"], [[3722, 3722], "valid"], [[3723, 3724], "disallowed"], [[3725, 3725], "valid"], [[3726, 3731], "disallowed"], [[3732, 3735], "valid"], [[3736, 3736], "disallowed"], [[3737, 3743], "valid"], [[3744, 3744], "disallowed"], [[3745, 3747], "valid"], [[3748, 3748], "disallowed"], [[3749, 3749], "valid"], [[3750, 3750], "disallowed"], [[3751, 3751], "valid"], [[3752, 3753], "disallowed"], [[3754, 3755], "valid"], [[3756, 3756], "disallowed"], [[3757, 3762], "valid"], [[3763, 3763], "mapped", [3789, 3762]], [[3764, 3769], "valid"], [[3770, 3770], "disallowed"], [[3771, 3773], "valid"], [[3774, 3775], "disallowed"], [[3776, 3780], "valid"], [[3781, 3781], "disallowed"], [[3782, 3782], "valid"], [[3783, 3783], "disallowed"], [[3784, 3789], "valid"], [[3790, 3791], "disallowed"], [[3792, 3801], "valid"], [[3802, 3803], "disallowed"], [[3804, 3804], "mapped", [3755, 3737]], [[3805, 3805], "mapped", [3755, 3745]], [[3806, 3807], "valid"], [[3808, 3839], "disallowed"], [[3840, 3840], "valid"], [[3841, 3850], "valid", [], "NV8"], [[3851, 3851], "valid"], [[3852, 3852], "mapped", [3851]], [[3853, 3863], "valid", [], "NV8"], [[3864, 3865], "valid"], [[3866, 3871], "valid", [], "NV8"], [[3872, 3881], "valid"], [[3882, 3892], "valid", [], "NV8"], [[3893, 3893], "valid"], [[3894, 3894], "valid", [], "NV8"], [[3895, 3895], "valid"], [[3896, 3896], "valid", [], "NV8"], [[3897, 3897], "valid"], [[3898, 3901], "valid", [], "NV8"], [[3902, 3906], "valid"], [[3907, 3907], "mapped", [3906, 4023]], [[3908, 3911], "valid"], [[3912, 3912], "disallowed"], [[3913, 3916], "valid"], [[3917, 3917], "mapped", [3916, 4023]], [[3918, 3921], "valid"], [[3922, 3922], "mapped", [3921, 4023]], [[3923, 3926], "valid"], [[3927, 3927], "mapped", [3926, 4023]], [[3928, 3931], "valid"], [[3932, 3932], "mapped", [3931, 4023]], [[3933, 3944], "valid"], [[3945, 3945], "mapped", [3904, 4021]], [[3946, 3946], "valid"], [[3947, 3948], "valid"], [[3949, 3952], "disallowed"], [[3953, 3954], "valid"], [[3955, 3955], "mapped", [3953, 3954]], [[3956, 3956], "valid"], [[3957, 3957], "mapped", [3953, 3956]], [[3958, 3958], "mapped", [4018, 3968]], [[3959, 3959], "mapped", [4018, 3953, 3968]], [[3960, 3960], "mapped", [4019, 3968]], [[3961, 3961], "mapped", [4019, 3953, 3968]], [[3962, 3968], "valid"], [[3969, 3969], "mapped", [3953, 3968]], [[3970, 3972], "valid"], [[3973, 3973], "valid", [], "NV8"], [[3974, 3979], "valid"], [[3980, 3983], "valid"], [[3984, 3986], "valid"], [[3987, 3987], "mapped", [3986, 4023]], [[3988, 3989], "valid"], [[3990, 3990], "valid"], [[3991, 3991], "valid"], [[3992, 3992], "disallowed"], [[3993, 3996], "valid"], [[3997, 3997], "mapped", [3996, 4023]], [[3998, 4001], "valid"], [[4002, 4002], "mapped", [4001, 4023]], [[4003, 4006], "valid"], [[4007, 4007], "mapped", [4006, 4023]], [[4008, 4011], "valid"], [[4012, 4012], "mapped", [4011, 4023]], [[4013, 4013], "valid"], [[4014, 4016], "valid"], [[4017, 4023], "valid"], [[4024, 4024], "valid"], [[4025, 4025], "mapped", [3984, 4021]], [[4026, 4028], "valid"], [[4029, 4029], "disallowed"], [[4030, 4037], "valid", [], "NV8"], [[4038, 4038], "valid"], [[4039, 4044], "valid", [], "NV8"], [[4045, 4045], "disallowed"], [[4046, 4046], "valid", [], "NV8"], [[4047, 4047], "valid", [], "NV8"], [[4048, 4049], "valid", [], "NV8"], [[4050, 4052], "valid", [], "NV8"], [[4053, 4056], "valid", [], "NV8"], [[4057, 4058], "valid", [], "NV8"], [[4059, 4095], "disallowed"], [[4096, 4129], "valid"], [[4130, 4130], "valid"], [[4131, 4135], "valid"], [[4136, 4136], "valid"], [[4137, 4138], "valid"], [[4139, 4139], "valid"], [[4140, 4146], "valid"], [[4147, 4149], "valid"], [[4150, 4153], "valid"], [[4154, 4159], "valid"], [[4160, 4169], "valid"], [[4170, 4175], "valid", [], "NV8"], [[4176, 4185], "valid"], [[4186, 4249], "valid"], [[4250, 4253], "valid"], [[4254, 4255], "valid", [], "NV8"], [[4256, 4293], "disallowed"], [[4294, 4294], "disallowed"], [[4295, 4295], "mapped", [11559]], [[4296, 4300], "disallowed"], [[4301, 4301], "mapped", [11565]], [[4302, 4303], "disallowed"], [[4304, 4342], "valid"], [[4343, 4344], "valid"], [[4345, 4346], "valid"], [[4347, 4347], "valid", [], "NV8"], [[4348, 4348], "mapped", [4316]], [[4349, 4351], "valid"], [[4352, 4441], "valid", [], "NV8"], [[4442, 4446], "valid", [], "NV8"], [[4447, 4448], "disallowed"], [[4449, 4514], "valid", [], "NV8"], [[4515, 4519], "valid", [], "NV8"], [[4520, 4601], "valid", [], "NV8"], [[4602, 4607], "valid", [], "NV8"], [[4608, 4614], "valid"], [[4615, 4615], "valid"], [[4616, 4678], "valid"], [[4679, 4679], "valid"], [[4680, 4680], "valid"], [[4681, 4681], "disallowed"], [[4682, 4685], "valid"], [[4686, 4687], "disallowed"], [[4688, 4694], "valid"], [[4695, 4695], "disallowed"], [[4696, 4696], "valid"], [[4697, 4697], "disallowed"], [[4698, 4701], "valid"], [[4702, 4703], "disallowed"], [[4704, 4742], "valid"], [[4743, 4743], "valid"], [[4744, 4744], "valid"], [[4745, 4745], "disallowed"], [[4746, 4749], "valid"], [[4750, 4751], "disallowed"], [[4752, 4782], "valid"], [[4783, 4783], "valid"], [[4784, 4784], "valid"], [[4785, 4785], "disallowed"], [[4786, 4789], "valid"], [[4790, 4791], "disallowed"], [[4792, 4798], "valid"], [[4799, 4799], "disallowed"], [[4800, 4800], "valid"], [[4801, 4801], "disallowed"], [[4802, 4805], "valid"], [[4806, 4807], "disallowed"], [[4808, 4814], "valid"], [[4815, 4815], "valid"], [[4816, 4822], "valid"], [[4823, 4823], "disallowed"], [[4824, 4846], "valid"], [[4847, 4847], "valid"], [[4848, 4878], "valid"], [[4879, 4879], "valid"], [[4880, 4880], "valid"], [[4881, 4881], "disallowed"], [[4882, 4885], "valid"], [[4886, 4887], "disallowed"], [[4888, 4894], "valid"], [[4895, 4895], "valid"], [[4896, 4934], "valid"], [[4935, 4935], "valid"], [[4936, 4954], "valid"], [[4955, 4956], "disallowed"], [[4957, 4958], "valid"], [[4959, 4959], "valid"], [[4960, 4960], "valid", [], "NV8"], [[4961, 4988], "valid", [], "NV8"], [[4989, 4991], "disallowed"], [[4992, 5007], "valid"], [[5008, 5017], "valid", [], "NV8"], [[5018, 5023], "disallowed"], [[5024, 5108], "valid"], [[5109, 5109], "valid"], [[5110, 5111], "disallowed"], [[5112, 5112], "mapped", [5104]], [[5113, 5113], "mapped", [5105]], [[5114, 5114], "mapped", [5106]], [[5115, 5115], "mapped", [5107]], [[5116, 5116], "mapped", [5108]], [[5117, 5117], "mapped", [5109]], [[5118, 5119], "disallowed"], [[5120, 5120], "valid", [], "NV8"], [[5121, 5740], "valid"], [[5741, 5742], "valid", [], "NV8"], [[5743, 5750], "valid"], [[5751, 5759], "valid"], [[5760, 5760], "disallowed"], [[5761, 5786], "valid"], [[5787, 5788], "valid", [], "NV8"], [[5789, 5791], "disallowed"], [[5792, 5866], "valid"], [[5867, 5872], "valid", [], "NV8"], [[5873, 5880], "valid"], [[5881, 5887], "disallowed"], [[5888, 5900], "valid"], [[5901, 5901], "disallowed"], [[5902, 5908], "valid"], [[5909, 5919], "disallowed"], [[5920, 5940], "valid"], [[5941, 5942], "valid", [], "NV8"], [[5943, 5951], "disallowed"], [[5952, 5971], "valid"], [[5972, 5983], "disallowed"], [[5984, 5996], "valid"], [[5997, 5997], "disallowed"], [[5998, 6e3], "valid"], [[6001, 6001], "disallowed"], [[6002, 6003], "valid"], [[6004, 6015], "disallowed"], [[6016, 6067], "valid"], [[6068, 6069], "disallowed"], [[6070, 6099], "valid"], [[6100, 6102], "valid", [], "NV8"], [[6103, 6103], "valid"], [[6104, 6107], "valid", [], "NV8"], [[6108, 6108], "valid"], [[6109, 6109], "valid"], [[6110, 6111], "disallowed"], [[6112, 6121], "valid"], [[6122, 6127], "disallowed"], [[6128, 6137], "valid", [], "NV8"], [[6138, 6143], "disallowed"], [[6144, 6149], "valid", [], "NV8"], [[6150, 6150], "disallowed"], [[6151, 6154], "valid", [], "NV8"], [[6155, 6157], "ignored"], [[6158, 6158], "disallowed"], [[6159, 6159], "disallowed"], [[6160, 6169], "valid"], [[6170, 6175], "disallowed"], [[6176, 6263], "valid"], [[6264, 6271], "disallowed"], [[6272, 6313], "valid"], [[6314, 6314], "valid"], [[6315, 6319], "disallowed"], [[6320, 6389], "valid"], [[6390, 6399], "disallowed"], [[6400, 6428], "valid"], [[6429, 6430], "valid"], [[6431, 6431], "disallowed"], [[6432, 6443], "valid"], [[6444, 6447], "disallowed"], [[6448, 6459], "valid"], [[6460, 6463], "disallowed"], [[6464, 6464], "valid", [], "NV8"], [[6465, 6467], "disallowed"], [[6468, 6469], "valid", [], "NV8"], [[6470, 6509], "valid"], [[6510, 6511], "disallowed"], [[6512, 6516], "valid"], [[6517, 6527], "disallowed"], [[6528, 6569], "valid"], [[6570, 6571], "valid"], [[6572, 6575], "disallowed"], [[6576, 6601], "valid"], [[6602, 6607], "disallowed"], [[6608, 6617], "valid"], [[6618, 6618], "valid", [], "XV8"], [[6619, 6621], "disallowed"], [[6622, 6623], "valid", [], "NV8"], [[6624, 6655], "valid", [], "NV8"], [[6656, 6683], "valid"], [[6684, 6685], "disallowed"], [[6686, 6687], "valid", [], "NV8"], [[6688, 6750], "valid"], [[6751, 6751], "disallowed"], [[6752, 6780], "valid"], [[6781, 6782], "disallowed"], [[6783, 6793], "valid"], [[6794, 6799], "disallowed"], [[6800, 6809], "valid"], [[6810, 6815], "disallowed"], [[6816, 6822], "valid", [], "NV8"], [[6823, 6823], "valid"], [[6824, 6829], "valid", [], "NV8"], [[6830, 6831], "disallowed"], [[6832, 6845], "valid"], [[6846, 6846], "valid", [], "NV8"], [[6847, 6911], "disallowed"], [[6912, 6987], "valid"], [[6988, 6991], "disallowed"], [[6992, 7001], "valid"], [[7002, 7018], "valid", [], "NV8"], [[7019, 7027], "valid"], [[7028, 7036], "valid", [], "NV8"], [[7037, 7039], "disallowed"], [[7040, 7082], "valid"], [[7083, 7085], "valid"], [[7086, 7097], "valid"], [[7098, 7103], "valid"], [[7104, 7155], "valid"], [[7156, 7163], "disallowed"], [[7164, 7167], "valid", [], "NV8"], [[7168, 7223], "valid"], [[7224, 7226], "disallowed"], [[7227, 7231], "valid", [], "NV8"], [[7232, 7241], "valid"], [[7242, 7244], "disallowed"], [[7245, 7293], "valid"], [[7294, 7295], "valid", [], "NV8"], [[7296, 7359], "disallowed"], [[7360, 7367], "valid", [], "NV8"], [[7368, 7375], "disallowed"], [[7376, 7378], "valid"], [[7379, 7379], "valid", [], "NV8"], [[7380, 7410], "valid"], [[7411, 7414], "valid"], [[7415, 7415], "disallowed"], [[7416, 7417], "valid"], [[7418, 7423], "disallowed"], [[7424, 7467], "valid"], [[7468, 7468], "mapped", [97]], [[7469, 7469], "mapped", [230]], [[7470, 7470], "mapped", [98]], [[7471, 7471], "valid"], [[7472, 7472], "mapped", [100]], [[7473, 7473], "mapped", [101]], [[7474, 7474], "mapped", [477]], [[7475, 7475], "mapped", [103]], [[7476, 7476], "mapped", [104]], [[7477, 7477], "mapped", [105]], [[7478, 7478], "mapped", [106]], [[7479, 7479], "mapped", [107]], [[7480, 7480], "mapped", [108]], [[7481, 7481], "mapped", [109]], [[7482, 7482], "mapped", [110]], [[7483, 7483], "valid"], [[7484, 7484], "mapped", [111]], [[7485, 7485], "mapped", [547]], [[7486, 7486], "mapped", [112]], [[7487, 7487], "mapped", [114]], [[7488, 7488], "mapped", [116]], [[7489, 7489], "mapped", [117]], [[7490, 7490], "mapped", [119]], [[7491, 7491], "mapped", [97]], [[7492, 7492], "mapped", [592]], [[7493, 7493], "mapped", [593]], [[7494, 7494], "mapped", [7426]], [[7495, 7495], "mapped", [98]], [[7496, 7496], "mapped", [100]], [[7497, 7497], "mapped", [101]], [[7498, 7498], "mapped", [601]], [[7499, 7499], "mapped", [603]], [[7500, 7500], "mapped", [604]], [[7501, 7501], "mapped", [103]], [[7502, 7502], "valid"], [[7503, 7503], "mapped", [107]], [[7504, 7504], "mapped", [109]], [[7505, 7505], "mapped", [331]], [[7506, 7506], "mapped", [111]], [[7507, 7507], "mapped", [596]], [[7508, 7508], "mapped", [7446]], [[7509, 7509], "mapped", [7447]], [[7510, 7510], "mapped", [112]], [[7511, 7511], "mapped", [116]], [[7512, 7512], "mapped", [117]], [[7513, 7513], "mapped", [7453]], [[7514, 7514], "mapped", [623]], [[7515, 7515], "mapped", [118]], [[7516, 7516], "mapped", [7461]], [[7517, 7517], "mapped", [946]], [[7518, 7518], "mapped", [947]], [[7519, 7519], "mapped", [948]], [[7520, 7520], "mapped", [966]], [[7521, 7521], "mapped", [967]], [[7522, 7522], "mapped", [105]], [[7523, 7523], "mapped", [114]], [[7524, 7524], "mapped", [117]], [[7525, 7525], "mapped", [118]], [[7526, 7526], "mapped", [946]], [[7527, 7527], "mapped", [947]], [[7528, 7528], "mapped", [961]], [[7529, 7529], "mapped", [966]], [[7530, 7530], "mapped", [967]], [[7531, 7531], "valid"], [[7532, 7543], "valid"], [[7544, 7544], "mapped", [1085]], [[7545, 7578], "valid"], [[7579, 7579], "mapped", [594]], [[7580, 7580], "mapped", [99]], [[7581, 7581], "mapped", [597]], [[7582, 7582], "mapped", [240]], [[7583, 7583], "mapped", [604]], [[7584, 7584], "mapped", [102]], [[7585, 7585], "mapped", [607]], [[7586, 7586], "mapped", [609]], [[7587, 7587], "mapped", [613]], [[7588, 7588], "mapped", [616]], [[7589, 7589], "mapped", [617]], [[7590, 7590], "mapped", [618]], [[7591, 7591], "mapped", [7547]], [[7592, 7592], "mapped", [669]], [[7593, 7593], "mapped", [621]], [[7594, 7594], "mapped", [7557]], [[7595, 7595], "mapped", [671]], [[7596, 7596], "mapped", [625]], [[7597, 7597], "mapped", [624]], [[7598, 7598], "mapped", [626]], [[7599, 7599], "mapped", [627]], [[7600, 7600], "mapped", [628]], [[7601, 7601], "mapped", [629]], [[7602, 7602], "mapped", [632]], [[7603, 7603], "mapped", [642]], [[7604, 7604], "mapped", [643]], [[7605, 7605], "mapped", [427]], [[7606, 7606], "mapped", [649]], [[7607, 7607], "mapped", [650]], [[7608, 7608], "mapped", [7452]], [[7609, 7609], "mapped", [651]], [[7610, 7610], "mapped", [652]], [[7611, 7611], "mapped", [122]], [[7612, 7612], "mapped", [656]], [[7613, 7613], "mapped", [657]], [[7614, 7614], "mapped", [658]], [[7615, 7615], "mapped", [952]], [[7616, 7619], "valid"], [[7620, 7626], "valid"], [[7627, 7654], "valid"], [[7655, 7669], "valid"], [[7670, 7675], "disallowed"], [[7676, 7676], "valid"], [[7677, 7677], "valid"], [[7678, 7679], "valid"], [[7680, 7680], "mapped", [7681]], [[7681, 7681], "valid"], [[7682, 7682], "mapped", [7683]], [[7683, 7683], "valid"], [[7684, 7684], "mapped", [7685]], [[7685, 7685], "valid"], [[7686, 7686], "mapped", [7687]], [[7687, 7687], "valid"], [[7688, 7688], "mapped", [7689]], [[7689, 7689], "valid"], [[7690, 7690], "mapped", [7691]], [[7691, 7691], "valid"], [[7692, 7692], "mapped", [7693]], [[7693, 7693], "valid"], [[7694, 7694], "mapped", [7695]], [[7695, 7695], "valid"], [[7696, 7696], "mapped", [7697]], [[7697, 7697], "valid"], [[7698, 7698], "mapped", [7699]], [[7699, 7699], "valid"], [[7700, 7700], "mapped", [7701]], [[7701, 7701], "valid"], [[7702, 7702], "mapped", [7703]], [[7703, 7703], "valid"], [[7704, 7704], "mapped", [7705]], [[7705, 7705], "valid"], [[7706, 7706], "mapped", [7707]], [[7707, 7707], "valid"], [[7708, 7708], "mapped", [7709]], [[7709, 7709], "valid"], [[7710, 7710], "mapped", [7711]], [[7711, 7711], "valid"], [[7712, 7712], "mapped", [7713]], [[7713, 7713], "valid"], [[7714, 7714], "mapped", [7715]], [[7715, 7715], "valid"], [[7716, 7716], "mapped", [7717]], [[7717, 7717], "valid"], [[7718, 7718], "mapped", [7719]], [[7719, 7719], "valid"], [[7720, 7720], "mapped", [7721]], [[7721, 7721], "valid"], [[7722, 7722], "mapped", [7723]], [[7723, 7723], "valid"], [[7724, 7724], "mapped", [7725]], [[7725, 7725], "valid"], [[7726, 7726], "mapped", [7727]], [[7727, 7727], "valid"], [[7728, 7728], "mapped", [7729]], [[7729, 7729], "valid"], [[7730, 7730], "mapped", [7731]], [[7731, 7731], "valid"], [[7732, 7732], "mapped", [7733]], [[7733, 7733], "valid"], [[7734, 7734], "mapped", [7735]], [[7735, 7735], "valid"], [[7736, 7736], "mapped", [7737]], [[7737, 7737], "valid"], [[7738, 7738], "mapped", [7739]], [[7739, 7739], "valid"], [[7740, 7740], "mapped", [7741]], [[7741, 7741], "valid"], [[7742, 7742], "mapped", [7743]], [[7743, 7743], "valid"], [[7744, 7744], "mapped", [7745]], [[7745, 7745], "valid"], [[7746, 7746], "mapped", [7747]], [[7747, 7747], "valid"], [[7748, 7748], "mapped", [7749]], [[7749, 7749], "valid"], [[7750, 7750], "mapped", [7751]], [[7751, 7751], "valid"], [[7752, 7752], "mapped", [7753]], [[7753, 7753], "valid"], [[7754, 7754], "mapped", [7755]], [[7755, 7755], "valid"], [[7756, 7756], "mapped", [7757]], [[7757, 7757], "valid"], [[7758, 7758], "mapped", [7759]], [[7759, 7759], "valid"], [[7760, 7760], "mapped", [7761]], [[7761, 7761], "valid"], [[7762, 7762], "mapped", [7763]], [[7763, 7763], "valid"], [[7764, 7764], "mapped", [7765]], [[7765, 7765], "valid"], [[7766, 7766], "mapped", [7767]], [[7767, 7767], "valid"], [[7768, 7768], "mapped", [7769]], [[7769, 7769], "valid"], [[7770, 7770], "mapped", [7771]], [[7771, 7771], "valid"], [[7772, 7772], "mapped", [7773]], [[7773, 7773], "valid"], [[7774, 7774], "mapped", [7775]], [[7775, 7775], "valid"], [[7776, 7776], "mapped", [7777]], [[7777, 7777], "valid"], [[7778, 7778], "mapped", [7779]], [[7779, 7779], "valid"], [[7780, 7780], "mapped", [7781]], [[7781, 7781], "valid"], [[7782, 7782], "mapped", [7783]], [[7783, 7783], "valid"], [[7784, 7784], "mapped", [7785]], [[7785, 7785], "valid"], [[7786, 7786], "mapped", [7787]], [[7787, 7787], "valid"], [[7788, 7788], "mapped", [7789]], [[7789, 7789], "valid"], [[7790, 7790], "mapped", [7791]], [[7791, 7791], "valid"], [[7792, 7792], "mapped", [7793]], [[7793, 7793], "valid"], [[7794, 7794], "mapped", [7795]], [[7795, 7795], "valid"], [[7796, 7796], "mapped", [7797]], [[7797, 7797], "valid"], [[7798, 7798], "mapped", [7799]], [[7799, 7799], "valid"], [[7800, 7800], "mapped", [7801]], [[7801, 7801], "valid"], [[7802, 7802], "mapped", [7803]], [[7803, 7803], "valid"], [[7804, 7804], "mapped", [7805]], [[7805, 7805], "valid"], [[7806, 7806], "mapped", [7807]], [[7807, 7807], "valid"], [[7808, 7808], "mapped", [7809]], [[7809, 7809], "valid"], [[7810, 7810], "mapped", [7811]], [[7811, 7811], "valid"], [[7812, 7812], "mapped", [7813]], [[7813, 7813], "valid"], [[7814, 7814], "mapped", [7815]], [[7815, 7815], "valid"], [[7816, 7816], "mapped", [7817]], [[7817, 7817], "valid"], [[7818, 7818], "mapped", [7819]], [[7819, 7819], "valid"], [[7820, 7820], "mapped", [7821]], [[7821, 7821], "valid"], [[7822, 7822], "mapped", [7823]], [[7823, 7823], "valid"], [[7824, 7824], "mapped", [7825]], [[7825, 7825], "valid"], [[7826, 7826], "mapped", [7827]], [[7827, 7827], "valid"], [[7828, 7828], "mapped", [7829]], [[7829, 7833], "valid"], [[7834, 7834], "mapped", [97, 702]], [[7835, 7835], "mapped", [7777]], [[7836, 7837], "valid"], [[7838, 7838], "mapped", [115, 115]], [[7839, 7839], "valid"], [[7840, 7840], "mapped", [7841]], [[7841, 7841], "valid"], [[7842, 7842], "mapped", [7843]], [[7843, 7843], "valid"], [[7844, 7844], "mapped", [7845]], [[7845, 7845], "valid"], [[7846, 7846], "mapped", [7847]], [[7847, 7847], "valid"], [[7848, 7848], "mapped", [7849]], [[7849, 7849], "valid"], [[7850, 7850], "mapped", [7851]], [[7851, 7851], "valid"], [[7852, 7852], "mapped", [7853]], [[7853, 7853], "valid"], [[7854, 7854], "mapped", [7855]], [[7855, 7855], "valid"], [[7856, 7856], "mapped", [7857]], [[7857, 7857], "valid"], [[7858, 7858], "mapped", [7859]], [[7859, 7859], "valid"], [[7860, 7860], "mapped", [7861]], [[7861, 7861], "valid"], [[7862, 7862], "mapped", [7863]], [[7863, 7863], "valid"], [[7864, 7864], "mapped", [7865]], [[7865, 7865], "valid"], [[7866, 7866], "mapped", [7867]], [[7867, 7867], "valid"], [[7868, 7868], "mapped", [7869]], [[7869, 7869], "valid"], [[7870, 7870], "mapped", [7871]], [[7871, 7871], "valid"], [[7872, 7872], "mapped", [7873]], [[7873, 7873], "valid"], [[7874, 7874], "mapped", [7875]], [[7875, 7875], "valid"], [[7876, 7876], "mapped", [7877]], [[7877, 7877], "valid"], [[7878, 7878], "mapped", [7879]], [[7879, 7879], "valid"], [[7880, 7880], "mapped", [7881]], [[7881, 7881], "valid"], [[7882, 7882], "mapped", [7883]], [[7883, 7883], "valid"], [[7884, 7884], "mapped", [7885]], [[7885, 7885], "valid"], [[7886, 7886], "mapped", [7887]], [[7887, 7887], "valid"], [[7888, 7888], "mapped", [7889]], [[7889, 7889], "valid"], [[7890, 7890], "mapped", [7891]], [[7891, 7891], "valid"], [[7892, 7892], "mapped", [7893]], [[7893, 7893], "valid"], [[7894, 7894], "mapped", [7895]], [[7895, 7895], "valid"], [[7896, 7896], "mapped", [7897]], [[7897, 7897], "valid"], [[7898, 7898], "mapped", [7899]], [[7899, 7899], "valid"], [[7900, 7900], "mapped", [7901]], [[7901, 7901], "valid"], [[7902, 7902], "mapped", [7903]], [[7903, 7903], "valid"], [[7904, 7904], "mapped", [7905]], [[7905, 7905], "valid"], [[7906, 7906], "mapped", [7907]], [[7907, 7907], "valid"], [[7908, 7908], "mapped", [7909]], [[7909, 7909], "valid"], [[7910, 7910], "mapped", [7911]], [[7911, 7911], "valid"], [[7912, 7912], "mapped", [7913]], [[7913, 7913], "valid"], [[7914, 7914], "mapped", [7915]], [[7915, 7915], "valid"], [[7916, 7916], "mapped", [7917]], [[7917, 7917], "valid"], [[7918, 7918], "mapped", [7919]], [[7919, 7919], "valid"], [[7920, 7920], "mapped", [7921]], [[7921, 7921], "valid"], [[7922, 7922], "mapped", [7923]], [[7923, 7923], "valid"], [[7924, 7924], "mapped", [7925]], [[7925, 7925], "valid"], [[7926, 7926], "mapped", [7927]], [[7927, 7927], "valid"], [[7928, 7928], "mapped", [7929]], [[7929, 7929], "valid"], [[7930, 7930], "mapped", [7931]], [[7931, 7931], "valid"], [[7932, 7932], "mapped", [7933]], [[7933, 7933], "valid"], [[7934, 7934], "mapped", [7935]], [[7935, 7935], "valid"], [[7936, 7943], "valid"], [[7944, 7944], "mapped", [7936]], [[7945, 7945], "mapped", [7937]], [[7946, 7946], "mapped", [7938]], [[7947, 7947], "mapped", [7939]], [[7948, 7948], "mapped", [7940]], [[7949, 7949], "mapped", [7941]], [[7950, 7950], "mapped", [7942]], [[7951, 7951], "mapped", [7943]], [[7952, 7957], "valid"], [[7958, 7959], "disallowed"], [[7960, 7960], "mapped", [7952]], [[7961, 7961], "mapped", [7953]], [[7962, 7962], "mapped", [7954]], [[7963, 7963], "mapped", [7955]], [[7964, 7964], "mapped", [7956]], [[7965, 7965], "mapped", [7957]], [[7966, 7967], "disallowed"], [[7968, 7975], "valid"], [[7976, 7976], "mapped", [7968]], [[7977, 7977], "mapped", [7969]], [[7978, 7978], "mapped", [7970]], [[7979, 7979], "mapped", [7971]], [[7980, 7980], "mapped", [7972]], [[7981, 7981], "mapped", [7973]], [[7982, 7982], "mapped", [7974]], [[7983, 7983], "mapped", [7975]], [[7984, 7991], "valid"], [[7992, 7992], "mapped", [7984]], [[7993, 7993], "mapped", [7985]], [[7994, 7994], "mapped", [7986]], [[7995, 7995], "mapped", [7987]], [[7996, 7996], "mapped", [7988]], [[7997, 7997], "mapped", [7989]], [[7998, 7998], "mapped", [7990]], [[7999, 7999], "mapped", [7991]], [[8e3, 8005], "valid"], [[8006, 8007], "disallowed"], [[8008, 8008], "mapped", [8e3]], [[8009, 8009], "mapped", [8001]], [[8010, 8010], "mapped", [8002]], [[8011, 8011], "mapped", [8003]], [[8012, 8012], "mapped", [8004]], [[8013, 8013], "mapped", [8005]], [[8014, 8015], "disallowed"], [[8016, 8023], "valid"], [[8024, 8024], "disallowed"], [[8025, 8025], "mapped", [8017]], [[8026, 8026], "disallowed"], [[8027, 8027], "mapped", [8019]], [[8028, 8028], "disallowed"], [[8029, 8029], "mapped", [8021]], [[8030, 8030], "disallowed"], [[8031, 8031], "mapped", [8023]], [[8032, 8039], "valid"], [[8040, 8040], "mapped", [8032]], [[8041, 8041], "mapped", [8033]], [[8042, 8042], "mapped", [8034]], [[8043, 8043], "mapped", [8035]], [[8044, 8044], "mapped", [8036]], [[8045, 8045], "mapped", [8037]], [[8046, 8046], "mapped", [8038]], [[8047, 8047], "mapped", [8039]], [[8048, 8048], "valid"], [[8049, 8049], "mapped", [940]], [[8050, 8050], "valid"], [[8051, 8051], "mapped", [941]], [[8052, 8052], "valid"], [[8053, 8053], "mapped", [942]], [[8054, 8054], "valid"], [[8055, 8055], "mapped", [943]], [[8056, 8056], "valid"], [[8057, 8057], "mapped", [972]], [[8058, 8058], "valid"], [[8059, 8059], "mapped", [973]], [[8060, 8060], "valid"], [[8061, 8061], "mapped", [974]], [[8062, 8063], "disallowed"], [[8064, 8064], "mapped", [7936, 953]], [[8065, 8065], "mapped", [7937, 953]], [[8066, 8066], "mapped", [7938, 953]], [[8067, 8067], "mapped", [7939, 953]], [[8068, 8068], "mapped", [7940, 953]], [[8069, 8069], "mapped", [7941, 953]], [[8070, 8070], "mapped", [7942, 953]], [[8071, 8071], "mapped", [7943, 953]], [[8072, 8072], "mapped", [7936, 953]], [[8073, 8073], "mapped", [7937, 953]], [[8074, 8074], "mapped", [7938, 953]], [[8075, 8075], "mapped", [7939, 953]], [[8076, 8076], "mapped", [7940, 953]], [[8077, 8077], "mapped", [7941, 953]], [[8078, 8078], "mapped", [7942, 953]], [[8079, 8079], "mapped", [7943, 953]], [[8080, 8080], "mapped", [7968, 953]], [[8081, 8081], "mapped", [7969, 953]], [[8082, 8082], "mapped", [7970, 953]], [[8083, 8083], "mapped", [7971, 953]], [[8084, 8084], "mapped", [7972, 953]], [[8085, 8085], "mapped", [7973, 953]], [[8086, 8086], "mapped", [7974, 953]], [[8087, 8087], "mapped", [7975, 953]], [[8088, 8088], "mapped", [7968, 953]], [[8089, 8089], "mapped", [7969, 953]], [[8090, 8090], "mapped", [7970, 953]], [[8091, 8091], "mapped", [7971, 953]], [[8092, 8092], "mapped", [7972, 953]], [[8093, 8093], "mapped", [7973, 953]], [[8094, 8094], "mapped", [7974, 953]], [[8095, 8095], "mapped", [7975, 953]], [[8096, 8096], "mapped", [8032, 953]], [[8097, 8097], "mapped", [8033, 953]], [[8098, 8098], "mapped", [8034, 953]], [[8099, 8099], "mapped", [8035, 953]], [[8100, 8100], "mapped", [8036, 953]], [[8101, 8101], "mapped", [8037, 953]], [[8102, 8102], "mapped", [8038, 953]], [[8103, 8103], "mapped", [8039, 953]], [[8104, 8104], "mapped", [8032, 953]], [[8105, 8105], "mapped", [8033, 953]], [[8106, 8106], "mapped", [8034, 953]], [[8107, 8107], "mapped", [8035, 953]], [[8108, 8108], "mapped", [8036, 953]], [[8109, 8109], "mapped", [8037, 953]], [[8110, 8110], "mapped", [8038, 953]], [[8111, 8111], "mapped", [8039, 953]], [[8112, 8113], "valid"], [[8114, 8114], "mapped", [8048, 953]], [[8115, 8115], "mapped", [945, 953]], [[8116, 8116], "mapped", [940, 953]], [[8117, 8117], "disallowed"], [[8118, 8118], "valid"], [[8119, 8119], "mapped", [8118, 953]], [[8120, 8120], "mapped", [8112]], [[8121, 8121], "mapped", [8113]], [[8122, 8122], "mapped", [8048]], [[8123, 8123], "mapped", [940]], [[8124, 8124], "mapped", [945, 953]], [[8125, 8125], "disallowed_STD3_mapped", [32, 787]], [[8126, 8126], "mapped", [953]], [[8127, 8127], "disallowed_STD3_mapped", [32, 787]], [[8128, 8128], "disallowed_STD3_mapped", [32, 834]], [[8129, 8129], "disallowed_STD3_mapped", [32, 776, 834]], [[8130, 8130], "mapped", [8052, 953]], [[8131, 8131], "mapped", [951, 953]], [[8132, 8132], "mapped", [942, 953]], [[8133, 8133], "disallowed"], [[8134, 8134], "valid"], [[8135, 8135], "mapped", [8134, 953]], [[8136, 8136], "mapped", [8050]], [[8137, 8137], "mapped", [941]], [[8138, 8138], "mapped", [8052]], [[8139, 8139], "mapped", [942]], [[8140, 8140], "mapped", [951, 953]], [[8141, 8141], "disallowed_STD3_mapped", [32, 787, 768]], [[8142, 8142], "disallowed_STD3_mapped", [32, 787, 769]], [[8143, 8143], "disallowed_STD3_mapped", [32, 787, 834]], [[8144, 8146], "valid"], [[8147, 8147], "mapped", [912]], [[8148, 8149], "disallowed"], [[8150, 8151], "valid"], [[8152, 8152], "mapped", [8144]], [[8153, 8153], "mapped", [8145]], [[8154, 8154], "mapped", [8054]], [[8155, 8155], "mapped", [943]], [[8156, 8156], "disallowed"], [[8157, 8157], "disallowed_STD3_mapped", [32, 788, 768]], [[8158, 8158], "disallowed_STD3_mapped", [32, 788, 769]], [[8159, 8159], "disallowed_STD3_mapped", [32, 788, 834]], [[8160, 8162], "valid"], [[8163, 8163], "mapped", [944]], [[8164, 8167], "valid"], [[8168, 8168], "mapped", [8160]], [[8169, 8169], "mapped", [8161]], [[8170, 8170], "mapped", [8058]], [[8171, 8171], "mapped", [973]], [[8172, 8172], "mapped", [8165]], [[8173, 8173], "disallowed_STD3_mapped", [32, 776, 768]], [[8174, 8174], "disallowed_STD3_mapped", [32, 776, 769]], [[8175, 8175], "disallowed_STD3_mapped", [96]], [[8176, 8177], "disallowed"], [[8178, 8178], "mapped", [8060, 953]], [[8179, 8179], "mapped", [969, 953]], [[8180, 8180], "mapped", [974, 953]], [[8181, 8181], "disallowed"], [[8182, 8182], "valid"], [[8183, 8183], "mapped", [8182, 953]], [[8184, 8184], "mapped", [8056]], [[8185, 8185], "mapped", [972]], [[8186, 8186], "mapped", [8060]], [[8187, 8187], "mapped", [974]], [[8188, 8188], "mapped", [969, 953]], [[8189, 8189], "disallowed_STD3_mapped", [32, 769]], [[8190, 8190], "disallowed_STD3_mapped", [32, 788]], [[8191, 8191], "disallowed"], [[8192, 8202], "disallowed_STD3_mapped", [32]], [[8203, 8203], "ignored"], [[8204, 8205], "deviation", []], [[8206, 8207], "disallowed"], [[8208, 8208], "valid", [], "NV8"], [[8209, 8209], "mapped", [8208]], [[8210, 8214], "valid", [], "NV8"], [[8215, 8215], "disallowed_STD3_mapped", [32, 819]], [[8216, 8227], "valid", [], "NV8"], [[8228, 8230], "disallowed"], [[8231, 8231], "valid", [], "NV8"], [[8232, 8238], "disallowed"], [[8239, 8239], "disallowed_STD3_mapped", [32]], [[8240, 8242], "valid", [], "NV8"], [[8243, 8243], "mapped", [8242, 8242]], [[8244, 8244], "mapped", [8242, 8242, 8242]], [[8245, 8245], "valid", [], "NV8"], [[8246, 8246], "mapped", [8245, 8245]], [[8247, 8247], "mapped", [8245, 8245, 8245]], [[8248, 8251], "valid", [], "NV8"], [[8252, 8252], "disallowed_STD3_mapped", [33, 33]], [[8253, 8253], "valid", [], "NV8"], [[8254, 8254], "disallowed_STD3_mapped", [32, 773]], [[8255, 8262], "valid", [], "NV8"], [[8263, 8263], "disallowed_STD3_mapped", [63, 63]], [[8264, 8264], "disallowed_STD3_mapped", [63, 33]], [[8265, 8265], "disallowed_STD3_mapped", [33, 63]], [[8266, 8269], "valid", [], "NV8"], [[8270, 8274], "valid", [], "NV8"], [[8275, 8276], "valid", [], "NV8"], [[8277, 8278], "valid", [], "NV8"], [[8279, 8279], "mapped", [8242, 8242, 8242, 8242]], [[8280, 8286], "valid", [], "NV8"], [[8287, 8287], "disallowed_STD3_mapped", [32]], [[8288, 8288], "ignored"], [[8289, 8291], "disallowed"], [[8292, 8292], "ignored"], [[8293, 8293], "disallowed"], [[8294, 8297], "disallowed"], [[8298, 8303], "disallowed"], [[8304, 8304], "mapped", [48]], [[8305, 8305], "mapped", [105]], [[8306, 8307], "disallowed"], [[8308, 8308], "mapped", [52]], [[8309, 8309], "mapped", [53]], [[8310, 8310], "mapped", [54]], [[8311, 8311], "mapped", [55]], [[8312, 8312], "mapped", [56]], [[8313, 8313], "mapped", [57]], [[8314, 8314], "disallowed_STD3_mapped", [43]], [[8315, 8315], "mapped", [8722]], [[8316, 8316], "disallowed_STD3_mapped", [61]], [[8317, 8317], "disallowed_STD3_mapped", [40]], [[8318, 8318], "disallowed_STD3_mapped", [41]], [[8319, 8319], "mapped", [110]], [[8320, 8320], "mapped", [48]], [[8321, 8321], "mapped", [49]], [[8322, 8322], "mapped", [50]], [[8323, 8323], "mapped", [51]], [[8324, 8324], "mapped", [52]], [[8325, 8325], "mapped", [53]], [[8326, 8326], "mapped", [54]], [[8327, 8327], "mapped", [55]], [[8328, 8328], "mapped", [56]], [[8329, 8329], "mapped", [57]], [[8330, 8330], "disallowed_STD3_mapped", [43]], [[8331, 8331], "mapped", [8722]], [[8332, 8332], "disallowed_STD3_mapped", [61]], [[8333, 8333], "disallowed_STD3_mapped", [40]], [[8334, 8334], "disallowed_STD3_mapped", [41]], [[8335, 8335], "disallowed"], [[8336, 8336], "mapped", [97]], [[8337, 8337], "mapped", [101]], [[8338, 8338], "mapped", [111]], [[8339, 8339], "mapped", [120]], [[8340, 8340], "mapped", [601]], [[8341, 8341], "mapped", [104]], [[8342, 8342], "mapped", [107]], [[8343, 8343], "mapped", [108]], [[8344, 8344], "mapped", [109]], [[8345, 8345], "mapped", [110]], [[8346, 8346], "mapped", [112]], [[8347, 8347], "mapped", [115]], [[8348, 8348], "mapped", [116]], [[8349, 8351], "disallowed"], [[8352, 8359], "valid", [], "NV8"], [[8360, 8360], "mapped", [114, 115]], [[8361, 8362], "valid", [], "NV8"], [[8363, 8363], "valid", [], "NV8"], [[8364, 8364], "valid", [], "NV8"], [[8365, 8367], "valid", [], "NV8"], [[8368, 8369], "valid", [], "NV8"], [[8370, 8373], "valid", [], "NV8"], [[8374, 8376], "valid", [], "NV8"], [[8377, 8377], "valid", [], "NV8"], [[8378, 8378], "valid", [], "NV8"], [[8379, 8381], "valid", [], "NV8"], [[8382, 8382], "valid", [], "NV8"], [[8383, 8399], "disallowed"], [[8400, 8417], "valid", [], "NV8"], [[8418, 8419], "valid", [], "NV8"], [[8420, 8426], "valid", [], "NV8"], [[8427, 8427], "valid", [], "NV8"], [[8428, 8431], "valid", [], "NV8"], [[8432, 8432], "valid", [], "NV8"], [[8433, 8447], "disallowed"], [[8448, 8448], "disallowed_STD3_mapped", [97, 47, 99]], [[8449, 8449], "disallowed_STD3_mapped", [97, 47, 115]], [[8450, 8450], "mapped", [99]], [[8451, 8451], "mapped", [176, 99]], [[8452, 8452], "valid", [], "NV8"], [[8453, 8453], "disallowed_STD3_mapped", [99, 47, 111]], [[8454, 8454], "disallowed_STD3_mapped", [99, 47, 117]], [[8455, 8455], "mapped", [603]], [[8456, 8456], "valid", [], "NV8"], [[8457, 8457], "mapped", [176, 102]], [[8458, 8458], "mapped", [103]], [[8459, 8462], "mapped", [104]], [[8463, 8463], "mapped", [295]], [[8464, 8465], "mapped", [105]], [[8466, 8467], "mapped", [108]], [[8468, 8468], "valid", [], "NV8"], [[8469, 8469], "mapped", [110]], [[8470, 8470], "mapped", [110, 111]], [[8471, 8472], "valid", [], "NV8"], [[8473, 8473], "mapped", [112]], [[8474, 8474], "mapped", [113]], [[8475, 8477], "mapped", [114]], [[8478, 8479], "valid", [], "NV8"], [[8480, 8480], "mapped", [115, 109]], [[8481, 8481], "mapped", [116, 101, 108]], [[8482, 8482], "mapped", [116, 109]], [[8483, 8483], "valid", [], "NV8"], [[8484, 8484], "mapped", [122]], [[8485, 8485], "valid", [], "NV8"], [[8486, 8486], "mapped", [969]], [[8487, 8487], "valid", [], "NV8"], [[8488, 8488], "mapped", [122]], [[8489, 8489], "valid", [], "NV8"], [[8490, 8490], "mapped", [107]], [[8491, 8491], "mapped", [229]], [[8492, 8492], "mapped", [98]], [[8493, 8493], "mapped", [99]], [[8494, 8494], "valid", [], "NV8"], [[8495, 8496], "mapped", [101]], [[8497, 8497], "mapped", [102]], [[8498, 8498], "disallowed"], [[8499, 8499], "mapped", [109]], [[8500, 8500], "mapped", [111]], [[8501, 8501], "mapped", [1488]], [[8502, 8502], "mapped", [1489]], [[8503, 8503], "mapped", [1490]], [[8504, 8504], "mapped", [1491]], [[8505, 8505], "mapped", [105]], [[8506, 8506], "valid", [], "NV8"], [[8507, 8507], "mapped", [102, 97, 120]], [[8508, 8508], "mapped", [960]], [[8509, 8510], "mapped", [947]], [[8511, 8511], "mapped", [960]], [[8512, 8512], "mapped", [8721]], [[8513, 8516], "valid", [], "NV8"], [[8517, 8518], "mapped", [100]], [[8519, 8519], "mapped", [101]], [[8520, 8520], "mapped", [105]], [[8521, 8521], "mapped", [106]], [[8522, 8523], "valid", [], "NV8"], [[8524, 8524], "valid", [], "NV8"], [[8525, 8525], "valid", [], "NV8"], [[8526, 8526], "valid"], [[8527, 8527], "valid", [], "NV8"], [[8528, 8528], "mapped", [49, 8260, 55]], [[8529, 8529], "mapped", [49, 8260, 57]], [[8530, 8530], "mapped", [49, 8260, 49, 48]], [[8531, 8531], "mapped", [49, 8260, 51]], [[8532, 8532], "mapped", [50, 8260, 51]], [[8533, 8533], "mapped", [49, 8260, 53]], [[8534, 8534], "mapped", [50, 8260, 53]], [[8535, 8535], "mapped", [51, 8260, 53]], [[8536, 8536], "mapped", [52, 8260, 53]], [[8537, 8537], "mapped", [49, 8260, 54]], [[8538, 8538], "mapped", [53, 8260, 54]], [[8539, 8539], "mapped", [49, 8260, 56]], [[8540, 8540], "mapped", [51, 8260, 56]], [[8541, 8541], "mapped", [53, 8260, 56]], [[8542, 8542], "mapped", [55, 8260, 56]], [[8543, 8543], "mapped", [49, 8260]], [[8544, 8544], "mapped", [105]], [[8545, 8545], "mapped", [105, 105]], [[8546, 8546], "mapped", [105, 105, 105]], [[8547, 8547], "mapped", [105, 118]], [[8548, 8548], "mapped", [118]], [[8549, 8549], "mapped", [118, 105]], [[8550, 8550], "mapped", [118, 105, 105]], [[8551, 8551], "mapped", [118, 105, 105, 105]], [[8552, 8552], "mapped", [105, 120]], [[8553, 8553], "mapped", [120]], [[8554, 8554], "mapped", [120, 105]], [[8555, 8555], "mapped", [120, 105, 105]], [[8556, 8556], "mapped", [108]], [[8557, 8557], "mapped", [99]], [[8558, 8558], "mapped", [100]], [[8559, 8559], "mapped", [109]], [[8560, 8560], "mapped", [105]], [[8561, 8561], "mapped", [105, 105]], [[8562, 8562], "mapped", [105, 105, 105]], [[8563, 8563], "mapped", [105, 118]], [[8564, 8564], "mapped", [118]], [[8565, 8565], "mapped", [118, 105]], [[8566, 8566], "mapped", [118, 105, 105]], [[8567, 8567], "mapped", [118, 105, 105, 105]], [[8568, 8568], "mapped", [105, 120]], [[8569, 8569], "mapped", [120]], [[8570, 8570], "mapped", [120, 105]], [[8571, 8571], "mapped", [120, 105, 105]], [[8572, 8572], "mapped", [108]], [[8573, 8573], "mapped", [99]], [[8574, 8574], "mapped", [100]], [[8575, 8575], "mapped", [109]], [[8576, 8578], "valid", [], "NV8"], [[8579, 8579], "disallowed"], [[8580, 8580], "valid"], [[8581, 8584], "valid", [], "NV8"], [[8585, 8585], "mapped", [48, 8260, 51]], [[8586, 8587], "valid", [], "NV8"], [[8588, 8591], "disallowed"], [[8592, 8682], "valid", [], "NV8"], [[8683, 8691], "valid", [], "NV8"], [[8692, 8703], "valid", [], "NV8"], [[8704, 8747], "valid", [], "NV8"], [[8748, 8748], "mapped", [8747, 8747]], [[8749, 8749], "mapped", [8747, 8747, 8747]], [[8750, 8750], "valid", [], "NV8"], [[8751, 8751], "mapped", [8750, 8750]], [[8752, 8752], "mapped", [8750, 8750, 8750]], [[8753, 8799], "valid", [], "NV8"], [[8800, 8800], "disallowed_STD3_valid"], [[8801, 8813], "valid", [], "NV8"], [[8814, 8815], "disallowed_STD3_valid"], [[8816, 8945], "valid", [], "NV8"], [[8946, 8959], "valid", [], "NV8"], [[8960, 8960], "valid", [], "NV8"], [[8961, 8961], "valid", [], "NV8"], [[8962, 9e3], "valid", [], "NV8"], [[9001, 9001], "mapped", [12296]], [[9002, 9002], "mapped", [12297]], [[9003, 9082], "valid", [], "NV8"], [[9083, 9083], "valid", [], "NV8"], [[9084, 9084], "valid", [], "NV8"], [[9085, 9114], "valid", [], "NV8"], [[9115, 9166], "valid", [], "NV8"], [[9167, 9168], "valid", [], "NV8"], [[9169, 9179], "valid", [], "NV8"], [[9180, 9191], "valid", [], "NV8"], [[9192, 9192], "valid", [], "NV8"], [[9193, 9203], "valid", [], "NV8"], [[9204, 9210], "valid", [], "NV8"], [[9211, 9215], "disallowed"], [[9216, 9252], "valid", [], "NV8"], [[9253, 9254], "valid", [], "NV8"], [[9255, 9279], "disallowed"], [[9280, 9290], "valid", [], "NV8"], [[9291, 9311], "disallowed"], [[9312, 9312], "mapped", [49]], [[9313, 9313], "mapped", [50]], [[9314, 9314], "mapped", [51]], [[9315, 9315], "mapped", [52]], [[9316, 9316], "mapped", [53]], [[9317, 9317], "mapped", [54]], [[9318, 9318], "mapped", [55]], [[9319, 9319], "mapped", [56]], [[9320, 9320], "mapped", [57]], [[9321, 9321], "mapped", [49, 48]], [[9322, 9322], "mapped", [49, 49]], [[9323, 9323], "mapped", [49, 50]], [[9324, 9324], "mapped", [49, 51]], [[9325, 9325], "mapped", [49, 52]], [[9326, 9326], "mapped", [49, 53]], [[9327, 9327], "mapped", [49, 54]], [[9328, 9328], "mapped", [49, 55]], [[9329, 9329], "mapped", [49, 56]], [[9330, 9330], "mapped", [49, 57]], [[9331, 9331], "mapped", [50, 48]], [[9332, 9332], "disallowed_STD3_mapped", [40, 49, 41]], [[9333, 9333], "disallowed_STD3_mapped", [40, 50, 41]], [[9334, 9334], "disallowed_STD3_mapped", [40, 51, 41]], [[9335, 9335], "disallowed_STD3_mapped", [40, 52, 41]], [[9336, 9336], "disallowed_STD3_mapped", [40, 53, 41]], [[9337, 9337], "disallowed_STD3_mapped", [40, 54, 41]], [[9338, 9338], "disallowed_STD3_mapped", [40, 55, 41]], [[9339, 9339], "disallowed_STD3_mapped", [40, 56, 41]], [[9340, 9340], "disallowed_STD3_mapped", [40, 57, 41]], [[9341, 9341], "disallowed_STD3_mapped", [40, 49, 48, 41]], [[9342, 9342], "disallowed_STD3_mapped", [40, 49, 49, 41]], [[9343, 9343], "disallowed_STD3_mapped", [40, 49, 50, 41]], [[9344, 9344], "disallowed_STD3_mapped", [40, 49, 51, 41]], [[9345, 9345], "disallowed_STD3_mapped", [40, 49, 52, 41]], [[9346, 9346], "disallowed_STD3_mapped", [40, 49, 53, 41]], [[9347, 9347], "disallowed_STD3_mapped", [40, 49, 54, 41]], [[9348, 9348], "disallowed_STD3_mapped", [40, 49, 55, 41]], [[9349, 9349], "disallowed_STD3_mapped", [40, 49, 56, 41]], [[9350, 9350], "disallowed_STD3_mapped", [40, 49, 57, 41]], [[9351, 9351], "disallowed_STD3_mapped", [40, 50, 48, 41]], [[9352, 9371], "disallowed"], [[9372, 9372], "disallowed_STD3_mapped", [40, 97, 41]], [[9373, 9373], "disallowed_STD3_mapped", [40, 98, 41]], [[9374, 9374], "disallowed_STD3_mapped", [40, 99, 41]], [[9375, 9375], "disallowed_STD3_mapped", [40, 100, 41]], [[9376, 9376], "disallowed_STD3_mapped", [40, 101, 41]], [[9377, 9377], "disallowed_STD3_mapped", [40, 102, 41]], [[9378, 9378], "disallowed_STD3_mapped", [40, 103, 41]], [[9379, 9379], "disallowed_STD3_mapped", [40, 104, 41]], [[9380, 9380], "disallowed_STD3_mapped", [40, 105, 41]], [[9381, 9381], "disallowed_STD3_mapped", [40, 106, 41]], [[9382, 9382], "disallowed_STD3_mapped", [40, 107, 41]], [[9383, 9383], "disallowed_STD3_mapped", [40, 108, 41]], [[9384, 9384], "disallowed_STD3_mapped", [40, 109, 41]], [[9385, 9385], "disallowed_STD3_mapped", [40, 110, 41]], [[9386, 9386], "disallowed_STD3_mapped", [40, 111, 41]], [[9387, 9387], "disallowed_STD3_mapped", [40, 112, 41]], [[9388, 9388], "disallowed_STD3_mapped", [40, 113, 41]], [[9389, 9389], "disallowed_STD3_mapped", [40, 114, 41]], [[9390, 9390], "disallowed_STD3_mapped", [40, 115, 41]], [[9391, 9391], "disallowed_STD3_mapped", [40, 116, 41]], [[9392, 9392], "disallowed_STD3_mapped", [40, 117, 41]], [[9393, 9393], "disallowed_STD3_mapped", [40, 118, 41]], [[9394, 9394], "disallowed_STD3_mapped", [40, 119, 41]], [[9395, 9395], "disallowed_STD3_mapped", [40, 120, 41]], [[9396, 9396], "disallowed_STD3_mapped", [40, 121, 41]], [[9397, 9397], "disallowed_STD3_mapped", [40, 122, 41]], [[9398, 9398], "mapped", [97]], [[9399, 9399], "mapped", [98]], [[9400, 9400], "mapped", [99]], [[9401, 9401], "mapped", [100]], [[9402, 9402], "mapped", [101]], [[9403, 9403], "mapped", [102]], [[9404, 9404], "mapped", [103]], [[9405, 9405], "mapped", [104]], [[9406, 9406], "mapped", [105]], [[9407, 9407], "mapped", [106]], [[9408, 9408], "mapped", [107]], [[9409, 9409], "mapped", [108]], [[9410, 9410], "mapped", [109]], [[9411, 9411], "mapped", [110]], [[9412, 9412], "mapped", [111]], [[9413, 9413], "mapped", [112]], [[9414, 9414], "mapped", [113]], [[9415, 9415], "mapped", [114]], [[9416, 9416], "mapped", [115]], [[9417, 9417], "mapped", [116]], [[9418, 9418], "mapped", [117]], [[9419, 9419], "mapped", [118]], [[9420, 9420], "mapped", [119]], [[9421, 9421], "mapped", [120]], [[9422, 9422], "mapped", [121]], [[9423, 9423], "mapped", [122]], [[9424, 9424], "mapped", [97]], [[9425, 9425], "mapped", [98]], [[9426, 9426], "mapped", [99]], [[9427, 9427], "mapped", [100]], [[9428, 9428], "mapped", [101]], [[9429, 9429], "mapped", [102]], [[9430, 9430], "mapped", [103]], [[9431, 9431], "mapped", [104]], [[9432, 9432], "mapped", [105]], [[9433, 9433], "mapped", [106]], [[9434, 9434], "mapped", [107]], [[9435, 9435], "mapped", [108]], [[9436, 9436], "mapped", [109]], [[9437, 9437], "mapped", [110]], [[9438, 9438], "mapped", [111]], [[9439, 9439], "mapped", [112]], [[9440, 9440], "mapped", [113]], [[9441, 9441], "mapped", [114]], [[9442, 9442], "mapped", [115]], [[9443, 9443], "mapped", [116]], [[9444, 9444], "mapped", [117]], [[9445, 9445], "mapped", [118]], [[9446, 9446], "mapped", [119]], [[9447, 9447], "mapped", [120]], [[9448, 9448], "mapped", [121]], [[9449, 9449], "mapped", [122]], [[9450, 9450], "mapped", [48]], [[9451, 9470], "valid", [], "NV8"], [[9471, 9471], "valid", [], "NV8"], [[9472, 9621], "valid", [], "NV8"], [[9622, 9631], "valid", [], "NV8"], [[9632, 9711], "valid", [], "NV8"], [[9712, 9719], "valid", [], "NV8"], [[9720, 9727], "valid", [], "NV8"], [[9728, 9747], "valid", [], "NV8"], [[9748, 9749], "valid", [], "NV8"], [[9750, 9751], "valid", [], "NV8"], [[9752, 9752], "valid", [], "NV8"], [[9753, 9753], "valid", [], "NV8"], [[9754, 9839], "valid", [], "NV8"], [[9840, 9841], "valid", [], "NV8"], [[9842, 9853], "valid", [], "NV8"], [[9854, 9855], "valid", [], "NV8"], [[9856, 9865], "valid", [], "NV8"], [[9866, 9873], "valid", [], "NV8"], [[9874, 9884], "valid", [], "NV8"], [[9885, 9885], "valid", [], "NV8"], [[9886, 9887], "valid", [], "NV8"], [[9888, 9889], "valid", [], "NV8"], [[9890, 9905], "valid", [], "NV8"], [[9906, 9906], "valid", [], "NV8"], [[9907, 9916], "valid", [], "NV8"], [[9917, 9919], "valid", [], "NV8"], [[9920, 9923], "valid", [], "NV8"], [[9924, 9933], "valid", [], "NV8"], [[9934, 9934], "valid", [], "NV8"], [[9935, 9953], "valid", [], "NV8"], [[9954, 9954], "valid", [], "NV8"], [[9955, 9955], "valid", [], "NV8"], [[9956, 9959], "valid", [], "NV8"], [[9960, 9983], "valid", [], "NV8"], [[9984, 9984], "valid", [], "NV8"], [[9985, 9988], "valid", [], "NV8"], [[9989, 9989], "valid", [], "NV8"], [[9990, 9993], "valid", [], "NV8"], [[9994, 9995], "valid", [], "NV8"], [[9996, 10023], "valid", [], "NV8"], [[10024, 10024], "valid", [], "NV8"], [[10025, 10059], "valid", [], "NV8"], [[10060, 10060], "valid", [], "NV8"], [[10061, 10061], "valid", [], "NV8"], [[10062, 10062], "valid", [], "NV8"], [[10063, 10066], "valid", [], "NV8"], [[10067, 10069], "valid", [], "NV8"], [[10070, 10070], "valid", [], "NV8"], [[10071, 10071], "valid", [], "NV8"], [[10072, 10078], "valid", [], "NV8"], [[10079, 10080], "valid", [], "NV8"], [[10081, 10087], "valid", [], "NV8"], [[10088, 10101], "valid", [], "NV8"], [[10102, 10132], "valid", [], "NV8"], [[10133, 10135], "valid", [], "NV8"], [[10136, 10159], "valid", [], "NV8"], [[10160, 10160], "valid", [], "NV8"], [[10161, 10174], "valid", [], "NV8"], [[10175, 10175], "valid", [], "NV8"], [[10176, 10182], "valid", [], "NV8"], [[10183, 10186], "valid", [], "NV8"], [[10187, 10187], "valid", [], "NV8"], [[10188, 10188], "valid", [], "NV8"], [[10189, 10189], "valid", [], "NV8"], [[10190, 10191], "valid", [], "NV8"], [[10192, 10219], "valid", [], "NV8"], [[10220, 10223], "valid", [], "NV8"], [[10224, 10239], "valid", [], "NV8"], [[10240, 10495], "valid", [], "NV8"], [[10496, 10763], "valid", [], "NV8"], [[10764, 10764], "mapped", [8747, 8747, 8747, 8747]], [[10765, 10867], "valid", [], "NV8"], [[10868, 10868], "disallowed_STD3_mapped", [58, 58, 61]], [[10869, 10869], "disallowed_STD3_mapped", [61, 61]], [[10870, 10870], "disallowed_STD3_mapped", [61, 61, 61]], [[10871, 10971], "valid", [], "NV8"], [[10972, 10972], "mapped", [10973, 824]], [[10973, 11007], "valid", [], "NV8"], [[11008, 11021], "valid", [], "NV8"], [[11022, 11027], "valid", [], "NV8"], [[11028, 11034], "valid", [], "NV8"], [[11035, 11039], "valid", [], "NV8"], [[11040, 11043], "valid", [], "NV8"], [[11044, 11084], "valid", [], "NV8"], [[11085, 11087], "valid", [], "NV8"], [[11088, 11092], "valid", [], "NV8"], [[11093, 11097], "valid", [], "NV8"], [[11098, 11123], "valid", [], "NV8"], [[11124, 11125], "disallowed"], [[11126, 11157], "valid", [], "NV8"], [[11158, 11159], "disallowed"], [[11160, 11193], "valid", [], "NV8"], [[11194, 11196], "disallowed"], [[11197, 11208], "valid", [], "NV8"], [[11209, 11209], "disallowed"], [[11210, 11217], "valid", [], "NV8"], [[11218, 11243], "disallowed"], [[11244, 11247], "valid", [], "NV8"], [[11248, 11263], "disallowed"], [[11264, 11264], "mapped", [11312]], [[11265, 11265], "mapped", [11313]], [[11266, 11266], "mapped", [11314]], [[11267, 11267], "mapped", [11315]], [[11268, 11268], "mapped", [11316]], [[11269, 11269], "mapped", [11317]], [[11270, 11270], "mapped", [11318]], [[11271, 11271], "mapped", [11319]], [[11272, 11272], "mapped", [11320]], [[11273, 11273], "mapped", [11321]], [[11274, 11274], "mapped", [11322]], [[11275, 11275], "mapped", [11323]], [[11276, 11276], "mapped", [11324]], [[11277, 11277], "mapped", [11325]], [[11278, 11278], "mapped", [11326]], [[11279, 11279], "mapped", [11327]], [[11280, 11280], "mapped", [11328]], [[11281, 11281], "mapped", [11329]], [[11282, 11282], "mapped", [11330]], [[11283, 11283], "mapped", [11331]], [[11284, 11284], "mapped", [11332]], [[11285, 11285], "mapped", [11333]], [[11286, 11286], "mapped", [11334]], [[11287, 11287], "mapped", [11335]], [[11288, 11288], "mapped", [11336]], [[11289, 11289], "mapped", [11337]], [[11290, 11290], "mapped", [11338]], [[11291, 11291], "mapped", [11339]], [[11292, 11292], "mapped", [11340]], [[11293, 11293], "mapped", [11341]], [[11294, 11294], "mapped", [11342]], [[11295, 11295], "mapped", [11343]], [[11296, 11296], "mapped", [11344]], [[11297, 11297], "mapped", [11345]], [[11298, 11298], "mapped", [11346]], [[11299, 11299], "mapped", [11347]], [[11300, 11300], "mapped", [11348]], [[11301, 11301], "mapped", [11349]], [[11302, 11302], "mapped", [11350]], [[11303, 11303], "mapped", [11351]], [[11304, 11304], "mapped", [11352]], [[11305, 11305], "mapped", [11353]], [[11306, 11306], "mapped", [11354]], [[11307, 11307], "mapped", [11355]], [[11308, 11308], "mapped", [11356]], [[11309, 11309], "mapped", [11357]], [[11310, 11310], "mapped", [11358]], [[11311, 11311], "disallowed"], [[11312, 11358], "valid"], [[11359, 11359], "disallowed"], [[11360, 11360], "mapped", [11361]], [[11361, 11361], "valid"], [[11362, 11362], "mapped", [619]], [[11363, 11363], "mapped", [7549]], [[11364, 11364], "mapped", [637]], [[11365, 11366], "valid"], [[11367, 11367], "mapped", [11368]], [[11368, 11368], "valid"], [[11369, 11369], "mapped", [11370]], [[11370, 11370], "valid"], [[11371, 11371], "mapped", [11372]], [[11372, 11372], "valid"], [[11373, 11373], "mapped", [593]], [[11374, 11374], "mapped", [625]], [[11375, 11375], "mapped", [592]], [[11376, 11376], "mapped", [594]], [[11377, 11377], "valid"], [[11378, 11378], "mapped", [11379]], [[11379, 11379], "valid"], [[11380, 11380], "valid"], [[11381, 11381], "mapped", [11382]], [[11382, 11383], "valid"], [[11384, 11387], "valid"], [[11388, 11388], "mapped", [106]], [[11389, 11389], "mapped", [118]], [[11390, 11390], "mapped", [575]], [[11391, 11391], "mapped", [576]], [[11392, 11392], "mapped", [11393]], [[11393, 11393], "valid"], [[11394, 11394], "mapped", [11395]], [[11395, 11395], "valid"], [[11396, 11396], "mapped", [11397]], [[11397, 11397], "valid"], [[11398, 11398], "mapped", [11399]], [[11399, 11399], "valid"], [[11400, 11400], "mapped", [11401]], [[11401, 11401], "valid"], [[11402, 11402], "mapped", [11403]], [[11403, 11403], "valid"], [[11404, 11404], "mapped", [11405]], [[11405, 11405], "valid"], [[11406, 11406], "mapped", [11407]], [[11407, 11407], "valid"], [[11408, 11408], "mapped", [11409]], [[11409, 11409], "valid"], [[11410, 11410], "mapped", [11411]], [[11411, 11411], "valid"], [[11412, 11412], "mapped", [11413]], [[11413, 11413], "valid"], [[11414, 11414], "mapped", [11415]], [[11415, 11415], "valid"], [[11416, 11416], "mapped", [11417]], [[11417, 11417], "valid"], [[11418, 11418], "mapped", [11419]], [[11419, 11419], "valid"], [[11420, 11420], "mapped", [11421]], [[11421, 11421], "valid"], [[11422, 11422], "mapped", [11423]], [[11423, 11423], "valid"], [[11424, 11424], "mapped", [11425]], [[11425, 11425], "valid"], [[11426, 11426], "mapped", [11427]], [[11427, 11427], "valid"], [[11428, 11428], "mapped", [11429]], [[11429, 11429], "valid"], [[11430, 11430], "mapped", [11431]], [[11431, 11431], "valid"], [[11432, 11432], "mapped", [11433]], [[11433, 11433], "valid"], [[11434, 11434], "mapped", [11435]], [[11435, 11435], "valid"], [[11436, 11436], "mapped", [11437]], [[11437, 11437], "valid"], [[11438, 11438], "mapped", [11439]], [[11439, 11439], "valid"], [[11440, 11440], "mapped", [11441]], [[11441, 11441], "valid"], [[11442, 11442], "mapped", [11443]], [[11443, 11443], "valid"], [[11444, 11444], "mapped", [11445]], [[11445, 11445], "valid"], [[11446, 11446], "mapped", [11447]], [[11447, 11447], "valid"], [[11448, 11448], "mapped", [11449]], [[11449, 11449], "valid"], [[11450, 11450], "mapped", [11451]], [[11451, 11451], "valid"], [[11452, 11452], "mapped", [11453]], [[11453, 11453], "valid"], [[11454, 11454], "mapped", [11455]], [[11455, 11455], "valid"], [[11456, 11456], "mapped", [11457]], [[11457, 11457], "valid"], [[11458, 11458], "mapped", [11459]], [[11459, 11459], "valid"], [[11460, 11460], "mapped", [11461]], [[11461, 11461], "valid"], [[11462, 11462], "mapped", [11463]], [[11463, 11463], "valid"], [[11464, 11464], "mapped", [11465]], [[11465, 11465], "valid"], [[11466, 11466], "mapped", [11467]], [[11467, 11467], "valid"], [[11468, 11468], "mapped", [11469]], [[11469, 11469], "valid"], [[11470, 11470], "mapped", [11471]], [[11471, 11471], "valid"], [[11472, 11472], "mapped", [11473]], [[11473, 11473], "valid"], [[11474, 11474], "mapped", [11475]], [[11475, 11475], "valid"], [[11476, 11476], "mapped", [11477]], [[11477, 11477], "valid"], [[11478, 11478], "mapped", [11479]], [[11479, 11479], "valid"], [[11480, 11480], "mapped", [11481]], [[11481, 11481], "valid"], [[11482, 11482], "mapped", [11483]], [[11483, 11483], "valid"], [[11484, 11484], "mapped", [11485]], [[11485, 11485], "valid"], [[11486, 11486], "mapped", [11487]], [[11487, 11487], "valid"], [[11488, 11488], "mapped", [11489]], [[11489, 11489], "valid"], [[11490, 11490], "mapped", [11491]], [[11491, 11492], "valid"], [[11493, 11498], "valid", [], "NV8"], [[11499, 11499], "mapped", [11500]], [[11500, 11500], "valid"], [[11501, 11501], "mapped", [11502]], [[11502, 11505], "valid"], [[11506, 11506], "mapped", [11507]], [[11507, 11507], "valid"], [[11508, 11512], "disallowed"], [[11513, 11519], "valid", [], "NV8"], [[11520, 11557], "valid"], [[11558, 11558], "disallowed"], [[11559, 11559], "valid"], [[11560, 11564], "disallowed"], [[11565, 11565], "valid"], [[11566, 11567], "disallowed"], [[11568, 11621], "valid"], [[11622, 11623], "valid"], [[11624, 11630], "disallowed"], [[11631, 11631], "mapped", [11617]], [[11632, 11632], "valid", [], "NV8"], [[11633, 11646], "disallowed"], [[11647, 11647], "valid"], [[11648, 11670], "valid"], [[11671, 11679], "disallowed"], [[11680, 11686], "valid"], [[11687, 11687], "disallowed"], [[11688, 11694], "valid"], [[11695, 11695], "disallowed"], [[11696, 11702], "valid"], [[11703, 11703], "disallowed"], [[11704, 11710], "valid"], [[11711, 11711], "disallowed"], [[11712, 11718], "valid"], [[11719, 11719], "disallowed"], [[11720, 11726], "valid"], [[11727, 11727], "disallowed"], [[11728, 11734], "valid"], [[11735, 11735], "disallowed"], [[11736, 11742], "valid"], [[11743, 11743], "disallowed"], [[11744, 11775], "valid"], [[11776, 11799], "valid", [], "NV8"], [[11800, 11803], "valid", [], "NV8"], [[11804, 11805], "valid", [], "NV8"], [[11806, 11822], "valid", [], "NV8"], [[11823, 11823], "valid"], [[11824, 11824], "valid", [], "NV8"], [[11825, 11825], "valid", [], "NV8"], [[11826, 11835], "valid", [], "NV8"], [[11836, 11842], "valid", [], "NV8"], [[11843, 11903], "disallowed"], [[11904, 11929], "valid", [], "NV8"], [[11930, 11930], "disallowed"], [[11931, 11934], "valid", [], "NV8"], [[11935, 11935], "mapped", [27597]], [[11936, 12018], "valid", [], "NV8"], [[12019, 12019], "mapped", [40863]], [[12020, 12031], "disallowed"], [[12032, 12032], "mapped", [19968]], [[12033, 12033], "mapped", [20008]], [[12034, 12034], "mapped", [20022]], [[12035, 12035], "mapped", [20031]], [[12036, 12036], "mapped", [20057]], [[12037, 12037], "mapped", [20101]], [[12038, 12038], "mapped", [20108]], [[12039, 12039], "mapped", [20128]], [[12040, 12040], "mapped", [20154]], [[12041, 12041], "mapped", [20799]], [[12042, 12042], "mapped", [20837]], [[12043, 12043], "mapped", [20843]], [[12044, 12044], "mapped", [20866]], [[12045, 12045], "mapped", [20886]], [[12046, 12046], "mapped", [20907]], [[12047, 12047], "mapped", [20960]], [[12048, 12048], "mapped", [20981]], [[12049, 12049], "mapped", [20992]], [[12050, 12050], "mapped", [21147]], [[12051, 12051], "mapped", [21241]], [[12052, 12052], "mapped", [21269]], [[12053, 12053], "mapped", [21274]], [[12054, 12054], "mapped", [21304]], [[12055, 12055], "mapped", [21313]], [[12056, 12056], "mapped", [21340]], [[12057, 12057], "mapped", [21353]], [[12058, 12058], "mapped", [21378]], [[12059, 12059], "mapped", [21430]], [[12060, 12060], "mapped", [21448]], [[12061, 12061], "mapped", [21475]], [[12062, 12062], "mapped", [22231]], [[12063, 12063], "mapped", [22303]], [[12064, 12064], "mapped", [22763]], [[12065, 12065], "mapped", [22786]], [[12066, 12066], "mapped", [22794]], [[12067, 12067], "mapped", [22805]], [[12068, 12068], "mapped", [22823]], [[12069, 12069], "mapped", [22899]], [[12070, 12070], "mapped", [23376]], [[12071, 12071], "mapped", [23424]], [[12072, 12072], "mapped", [23544]], [[12073, 12073], "mapped", [23567]], [[12074, 12074], "mapped", [23586]], [[12075, 12075], "mapped", [23608]], [[12076, 12076], "mapped", [23662]], [[12077, 12077], "mapped", [23665]], [[12078, 12078], "mapped", [24027]], [[12079, 12079], "mapped", [24037]], [[12080, 12080], "mapped", [24049]], [[12081, 12081], "mapped", [24062]], [[12082, 12082], "mapped", [24178]], [[12083, 12083], "mapped", [24186]], [[12084, 12084], "mapped", [24191]], [[12085, 12085], "mapped", [24308]], [[12086, 12086], "mapped", [24318]], [[12087, 12087], "mapped", [24331]], [[12088, 12088], "mapped", [24339]], [[12089, 12089], "mapped", [24400]], [[12090, 12090], "mapped", [24417]], [[12091, 12091], "mapped", [24435]], [[12092, 12092], "mapped", [24515]], [[12093, 12093], "mapped", [25096]], [[12094, 12094], "mapped", [25142]], [[12095, 12095], "mapped", [25163]], [[12096, 12096], "mapped", [25903]], [[12097, 12097], "mapped", [25908]], [[12098, 12098], "mapped", [25991]], [[12099, 12099], "mapped", [26007]], [[12100, 12100], "mapped", [26020]], [[12101, 12101], "mapped", [26041]], [[12102, 12102], "mapped", [26080]], [[12103, 12103], "mapped", [26085]], [[12104, 12104], "mapped", [26352]], [[12105, 12105], "mapped", [26376]], [[12106, 12106], "mapped", [26408]], [[12107, 12107], "mapped", [27424]], [[12108, 12108], "mapped", [27490]], [[12109, 12109], "mapped", [27513]], [[12110, 12110], "mapped", [27571]], [[12111, 12111], "mapped", [27595]], [[12112, 12112], "mapped", [27604]], [[12113, 12113], "mapped", [27611]], [[12114, 12114], "mapped", [27663]], [[12115, 12115], "mapped", [27668]], [[12116, 12116], "mapped", [27700]], [[12117, 12117], "mapped", [28779]], [[12118, 12118], "mapped", [29226]], [[12119, 12119], "mapped", [29238]], [[12120, 12120], "mapped", [29243]], [[12121, 12121], "mapped", [29247]], [[12122, 12122], "mapped", [29255]], [[12123, 12123], "mapped", [29273]], [[12124, 12124], "mapped", [29275]], [[12125, 12125], "mapped", [29356]], [[12126, 12126], "mapped", [29572]], [[12127, 12127], "mapped", [29577]], [[12128, 12128], "mapped", [29916]], [[12129, 12129], "mapped", [29926]], [[12130, 12130], "mapped", [29976]], [[12131, 12131], "mapped", [29983]], [[12132, 12132], "mapped", [29992]], [[12133, 12133], "mapped", [3e4]], [[12134, 12134], "mapped", [30091]], [[12135, 12135], "mapped", [30098]], [[12136, 12136], "mapped", [30326]], [[12137, 12137], "mapped", [30333]], [[12138, 12138], "mapped", [30382]], [[12139, 12139], "mapped", [30399]], [[12140, 12140], "mapped", [30446]], [[12141, 12141], "mapped", [30683]], [[12142, 12142], "mapped", [30690]], [[12143, 12143], "mapped", [30707]], [[12144, 12144], "mapped", [31034]], [[12145, 12145], "mapped", [31160]], [[12146, 12146], "mapped", [31166]], [[12147, 12147], "mapped", [31348]], [[12148, 12148], "mapped", [31435]], [[12149, 12149], "mapped", [31481]], [[12150, 12150], "mapped", [31859]], [[12151, 12151], "mapped", [31992]], [[12152, 12152], "mapped", [32566]], [[12153, 12153], "mapped", [32593]], [[12154, 12154], "mapped", [32650]], [[12155, 12155], "mapped", [32701]], [[12156, 12156], "mapped", [32769]], [[12157, 12157], "mapped", [32780]], [[12158, 12158], "mapped", [32786]], [[12159, 12159], "mapped", [32819]], [[12160, 12160], "mapped", [32895]], [[12161, 12161], "mapped", [32905]], [[12162, 12162], "mapped", [33251]], [[12163, 12163], "mapped", [33258]], [[12164, 12164], "mapped", [33267]], [[12165, 12165], "mapped", [33276]], [[12166, 12166], "mapped", [33292]], [[12167, 12167], "mapped", [33307]], [[12168, 12168], "mapped", [33311]], [[12169, 12169], "mapped", [33390]], [[12170, 12170], "mapped", [33394]], [[12171, 12171], "mapped", [33400]], [[12172, 12172], "mapped", [34381]], [[12173, 12173], "mapped", [34411]], [[12174, 12174], "mapped", [34880]], [[12175, 12175], "mapped", [34892]], [[12176, 12176], "mapped", [34915]], [[12177, 12177], "mapped", [35198]], [[12178, 12178], "mapped", [35211]], [[12179, 12179], "mapped", [35282]], [[12180, 12180], "mapped", [35328]], [[12181, 12181], "mapped", [35895]], [[12182, 12182], "mapped", [35910]], [[12183, 12183], "mapped", [35925]], [[12184, 12184], "mapped", [35960]], [[12185, 12185], "mapped", [35997]], [[12186, 12186], "mapped", [36196]], [[12187, 12187], "mapped", [36208]], [[12188, 12188], "mapped", [36275]], [[12189, 12189], "mapped", [36523]], [[12190, 12190], "mapped", [36554]], [[12191, 12191], "mapped", [36763]], [[12192, 12192], "mapped", [36784]], [[12193, 12193], "mapped", [36789]], [[12194, 12194], "mapped", [37009]], [[12195, 12195], "mapped", [37193]], [[12196, 12196], "mapped", [37318]], [[12197, 12197], "mapped", [37324]], [[12198, 12198], "mapped", [37329]], [[12199, 12199], "mapped", [38263]], [[12200, 12200], "mapped", [38272]], [[12201, 12201], "mapped", [38428]], [[12202, 12202], "mapped", [38582]], [[12203, 12203], "mapped", [38585]], [[12204, 12204], "mapped", [38632]], [[12205, 12205], "mapped", [38737]], [[12206, 12206], "mapped", [38750]], [[12207, 12207], "mapped", [38754]], [[12208, 12208], "mapped", [38761]], [[12209, 12209], "mapped", [38859]], [[12210, 12210], "mapped", [38893]], [[12211, 12211], "mapped", [38899]], [[12212, 12212], "mapped", [38913]], [[12213, 12213], "mapped", [39080]], [[12214, 12214], "mapped", [39131]], [[12215, 12215], "mapped", [39135]], [[12216, 12216], "mapped", [39318]], [[12217, 12217], "mapped", [39321]], [[12218, 12218], "mapped", [39340]], [[12219, 12219], "mapped", [39592]], [[12220, 12220], "mapped", [39640]], [[12221, 12221], "mapped", [39647]], [[12222, 12222], "mapped", [39717]], [[12223, 12223], "mapped", [39727]], [[12224, 12224], "mapped", [39730]], [[12225, 12225], "mapped", [39740]], [[12226, 12226], "mapped", [39770]], [[12227, 12227], "mapped", [40165]], [[12228, 12228], "mapped", [40565]], [[12229, 12229], "mapped", [40575]], [[12230, 12230], "mapped", [40613]], [[12231, 12231], "mapped", [40635]], [[12232, 12232], "mapped", [40643]], [[12233, 12233], "mapped", [40653]], [[12234, 12234], "mapped", [40657]], [[12235, 12235], "mapped", [40697]], [[12236, 12236], "mapped", [40701]], [[12237, 12237], "mapped", [40718]], [[12238, 12238], "mapped", [40723]], [[12239, 12239], "mapped", [40736]], [[12240, 12240], "mapped", [40763]], [[12241, 12241], "mapped", [40778]], [[12242, 12242], "mapped", [40786]], [[12243, 12243], "mapped", [40845]], [[12244, 12244], "mapped", [40860]], [[12245, 12245], "mapped", [40864]], [[12246, 12271], "disallowed"], [[12272, 12283], "disallowed"], [[12284, 12287], "disallowed"], [[12288, 12288], "disallowed_STD3_mapped", [32]], [[12289, 12289], "valid", [], "NV8"], [[12290, 12290], "mapped", [46]], [[12291, 12292], "valid", [], "NV8"], [[12293, 12295], "valid"], [[12296, 12329], "valid", [], "NV8"], [[12330, 12333], "valid"], [[12334, 12341], "valid", [], "NV8"], [[12342, 12342], "mapped", [12306]], [[12343, 12343], "valid", [], "NV8"], [[12344, 12344], "mapped", [21313]], [[12345, 12345], "mapped", [21316]], [[12346, 12346], "mapped", [21317]], [[12347, 12347], "valid", [], "NV8"], [[12348, 12348], "valid"], [[12349, 12349], "valid", [], "NV8"], [[12350, 12350], "valid", [], "NV8"], [[12351, 12351], "valid", [], "NV8"], [[12352, 12352], "disallowed"], [[12353, 12436], "valid"], [[12437, 12438], "valid"], [[12439, 12440], "disallowed"], [[12441, 12442], "valid"], [[12443, 12443], "disallowed_STD3_mapped", [32, 12441]], [[12444, 12444], "disallowed_STD3_mapped", [32, 12442]], [[12445, 12446], "valid"], [[12447, 12447], "mapped", [12424, 12426]], [[12448, 12448], "valid", [], "NV8"], [[12449, 12542], "valid"], [[12543, 12543], "mapped", [12467, 12488]], [[12544, 12548], "disallowed"], [[12549, 12588], "valid"], [[12589, 12589], "valid"], [[12590, 12592], "disallowed"], [[12593, 12593], "mapped", [4352]], [[12594, 12594], "mapped", [4353]], [[12595, 12595], "mapped", [4522]], [[12596, 12596], "mapped", [4354]], [[12597, 12597], "mapped", [4524]], [[12598, 12598], "mapped", [4525]], [[12599, 12599], "mapped", [4355]], [[12600, 12600], "mapped", [4356]], [[12601, 12601], "mapped", [4357]], [[12602, 12602], "mapped", [4528]], [[12603, 12603], "mapped", [4529]], [[12604, 12604], "mapped", [4530]], [[12605, 12605], "mapped", [4531]], [[12606, 12606], "mapped", [4532]], [[12607, 12607], "mapped", [4533]], [[12608, 12608], "mapped", [4378]], [[12609, 12609], "mapped", [4358]], [[12610, 12610], "mapped", [4359]], [[12611, 12611], "mapped", [4360]], [[12612, 12612], "mapped", [4385]], [[12613, 12613], "mapped", [4361]], [[12614, 12614], "mapped", [4362]], [[12615, 12615], "mapped", [4363]], [[12616, 12616], "mapped", [4364]], [[12617, 12617], "mapped", [4365]], [[12618, 12618], "mapped", [4366]], [[12619, 12619], "mapped", [4367]], [[12620, 12620], "mapped", [4368]], [[12621, 12621], "mapped", [4369]], [[12622, 12622], "mapped", [4370]], [[12623, 12623], "mapped", [4449]], [[12624, 12624], "mapped", [4450]], [[12625, 12625], "mapped", [4451]], [[12626, 12626], "mapped", [4452]], [[12627, 12627], "mapped", [4453]], [[12628, 12628], "mapped", [4454]], [[12629, 12629], "mapped", [4455]], [[12630, 12630], "mapped", [4456]], [[12631, 12631], "mapped", [4457]], [[12632, 12632], "mapped", [4458]], [[12633, 12633], "mapped", [4459]], [[12634, 12634], "mapped", [4460]], [[12635, 12635], "mapped", [4461]], [[12636, 12636], "mapped", [4462]], [[12637, 12637], "mapped", [4463]], [[12638, 12638], "mapped", [4464]], [[12639, 12639], "mapped", [4465]], [[12640, 12640], "mapped", [4466]], [[12641, 12641], "mapped", [4467]], [[12642, 12642], "mapped", [4468]], [[12643, 12643], "mapped", [4469]], [[12644, 12644], "disallowed"], [[12645, 12645], "mapped", [4372]], [[12646, 12646], "mapped", [4373]], [[12647, 12647], "mapped", [4551]], [[12648, 12648], "mapped", [4552]], [[12649, 12649], "mapped", [4556]], [[12650, 12650], "mapped", [4558]], [[12651, 12651], "mapped", [4563]], [[12652, 12652], "mapped", [4567]], [[12653, 12653], "mapped", [4569]], [[12654, 12654], "mapped", [4380]], [[12655, 12655], "mapped", [4573]], [[12656, 12656], "mapped", [4575]], [[12657, 12657], "mapped", [4381]], [[12658, 12658], "mapped", [4382]], [[12659, 12659], "mapped", [4384]], [[12660, 12660], "mapped", [4386]], [[12661, 12661], "mapped", [4387]], [[12662, 12662], "mapped", [4391]], [[12663, 12663], "mapped", [4393]], [[12664, 12664], "mapped", [4395]], [[12665, 12665], "mapped", [4396]], [[12666, 12666], "mapped", [4397]], [[12667, 12667], "mapped", [4398]], [[12668, 12668], "mapped", [4399]], [[12669, 12669], "mapped", [4402]], [[12670, 12670], "mapped", [4406]], [[12671, 12671], "mapped", [4416]], [[12672, 12672], "mapped", [4423]], [[12673, 12673], "mapped", [4428]], [[12674, 12674], "mapped", [4593]], [[12675, 12675], "mapped", [4594]], [[12676, 12676], "mapped", [4439]], [[12677, 12677], "mapped", [4440]], [[12678, 12678], "mapped", [4441]], [[12679, 12679], "mapped", [4484]], [[12680, 12680], "mapped", [4485]], [[12681, 12681], "mapped", [4488]], [[12682, 12682], "mapped", [4497]], [[12683, 12683], "mapped", [4498]], [[12684, 12684], "mapped", [4500]], [[12685, 12685], "mapped", [4510]], [[12686, 12686], "mapped", [4513]], [[12687, 12687], "disallowed"], [[12688, 12689], "valid", [], "NV8"], [[12690, 12690], "mapped", [19968]], [[12691, 12691], "mapped", [20108]], [[12692, 12692], "mapped", [19977]], [[12693, 12693], "mapped", [22235]], [[12694, 12694], "mapped", [19978]], [[12695, 12695], "mapped", [20013]], [[12696, 12696], "mapped", [19979]], [[12697, 12697], "mapped", [30002]], [[12698, 12698], "mapped", [20057]], [[12699, 12699], "mapped", [19993]], [[12700, 12700], "mapped", [19969]], [[12701, 12701], "mapped", [22825]], [[12702, 12702], "mapped", [22320]], [[12703, 12703], "mapped", [20154]], [[12704, 12727], "valid"], [[12728, 12730], "valid"], [[12731, 12735], "disallowed"], [[12736, 12751], "valid", [], "NV8"], [[12752, 12771], "valid", [], "NV8"], [[12772, 12783], "disallowed"], [[12784, 12799], "valid"], [[12800, 12800], "disallowed_STD3_mapped", [40, 4352, 41]], [[12801, 12801], "disallowed_STD3_mapped", [40, 4354, 41]], [[12802, 12802], "disallowed_STD3_mapped", [40, 4355, 41]], [[12803, 12803], "disallowed_STD3_mapped", [40, 4357, 41]], [[12804, 12804], "disallowed_STD3_mapped", [40, 4358, 41]], [[12805, 12805], "disallowed_STD3_mapped", [40, 4359, 41]], [[12806, 12806], "disallowed_STD3_mapped", [40, 4361, 41]], [[12807, 12807], "disallowed_STD3_mapped", [40, 4363, 41]], [[12808, 12808], "disallowed_STD3_mapped", [40, 4364, 41]], [[12809, 12809], "disallowed_STD3_mapped", [40, 4366, 41]], [[12810, 12810], "disallowed_STD3_mapped", [40, 4367, 41]], [[12811, 12811], "disallowed_STD3_mapped", [40, 4368, 41]], [[12812, 12812], "disallowed_STD3_mapped", [40, 4369, 41]], [[12813, 12813], "disallowed_STD3_mapped", [40, 4370, 41]], [[12814, 12814], "disallowed_STD3_mapped", [40, 44032, 41]], [[12815, 12815], "disallowed_STD3_mapped", [40, 45208, 41]], [[12816, 12816], "disallowed_STD3_mapped", [40, 45796, 41]], [[12817, 12817], "disallowed_STD3_mapped", [40, 46972, 41]], [[12818, 12818], "disallowed_STD3_mapped", [40, 47560, 41]], [[12819, 12819], "disallowed_STD3_mapped", [40, 48148, 41]], [[12820, 12820], "disallowed_STD3_mapped", [40, 49324, 41]], [[12821, 12821], "disallowed_STD3_mapped", [40, 50500, 41]], [[12822, 12822], "disallowed_STD3_mapped", [40, 51088, 41]], [[12823, 12823], "disallowed_STD3_mapped", [40, 52264, 41]], [[12824, 12824], "disallowed_STD3_mapped", [40, 52852, 41]], [[12825, 12825], "disallowed_STD3_mapped", [40, 53440, 41]], [[12826, 12826], "disallowed_STD3_mapped", [40, 54028, 41]], [[12827, 12827], "disallowed_STD3_mapped", [40, 54616, 41]], [[12828, 12828], "disallowed_STD3_mapped", [40, 51452, 41]], [[12829, 12829], "disallowed_STD3_mapped", [40, 50724, 51204, 41]], [[12830, 12830], "disallowed_STD3_mapped", [40, 50724, 54980, 41]], [[12831, 12831], "disallowed"], [[12832, 12832], "disallowed_STD3_mapped", [40, 19968, 41]], [[12833, 12833], "disallowed_STD3_mapped", [40, 20108, 41]], [[12834, 12834], "disallowed_STD3_mapped", [40, 19977, 41]], [[12835, 12835], "disallowed_STD3_mapped", [40, 22235, 41]], [[12836, 12836], "disallowed_STD3_mapped", [40, 20116, 41]], [[12837, 12837], "disallowed_STD3_mapped", [40, 20845, 41]], [[12838, 12838], "disallowed_STD3_mapped", [40, 19971, 41]], [[12839, 12839], "disallowed_STD3_mapped", [40, 20843, 41]], [[12840, 12840], "disallowed_STD3_mapped", [40, 20061, 41]], [[12841, 12841], "disallowed_STD3_mapped", [40, 21313, 41]], [[12842, 12842], "disallowed_STD3_mapped", [40, 26376, 41]], [[12843, 12843], "disallowed_STD3_mapped", [40, 28779, 41]], [[12844, 12844], "disallowed_STD3_mapped", [40, 27700, 41]], [[12845, 12845], "disallowed_STD3_mapped", [40, 26408, 41]], [[12846, 12846], "disallowed_STD3_mapped", [40, 37329, 41]], [[12847, 12847], "disallowed_STD3_mapped", [40, 22303, 41]], [[12848, 12848], "disallowed_STD3_mapped", [40, 26085, 41]], [[12849, 12849], "disallowed_STD3_mapped", [40, 26666, 41]], [[12850, 12850], "disallowed_STD3_mapped", [40, 26377, 41]], [[12851, 12851], "disallowed_STD3_mapped", [40, 31038, 41]], [[12852, 12852], "disallowed_STD3_mapped", [40, 21517, 41]], [[12853, 12853], "disallowed_STD3_mapped", [40, 29305, 41]], [[12854, 12854], "disallowed_STD3_mapped", [40, 36001, 41]], [[12855, 12855], "disallowed_STD3_mapped", [40, 31069, 41]], [[12856, 12856], "disallowed_STD3_mapped", [40, 21172, 41]], [[12857, 12857], "disallowed_STD3_mapped", [40, 20195, 41]], [[12858, 12858], "disallowed_STD3_mapped", [40, 21628, 41]], [[12859, 12859], "disallowed_STD3_mapped", [40, 23398, 41]], [[12860, 12860], "disallowed_STD3_mapped", [40, 30435, 41]], [[12861, 12861], "disallowed_STD3_mapped", [40, 20225, 41]], [[12862, 12862], "disallowed_STD3_mapped", [40, 36039, 41]], [[12863, 12863], "disallowed_STD3_mapped", [40, 21332, 41]], [[12864, 12864], "disallowed_STD3_mapped", [40, 31085, 41]], [[12865, 12865], "disallowed_STD3_mapped", [40, 20241, 41]], [[12866, 12866], "disallowed_STD3_mapped", [40, 33258, 41]], [[12867, 12867], "disallowed_STD3_mapped", [40, 33267, 41]], [[12868, 12868], "mapped", [21839]], [[12869, 12869], "mapped", [24188]], [[12870, 12870], "mapped", [25991]], [[12871, 12871], "mapped", [31631]], [[12872, 12879], "valid", [], "NV8"], [[12880, 12880], "mapped", [112, 116, 101]], [[12881, 12881], "mapped", [50, 49]], [[12882, 12882], "mapped", [50, 50]], [[12883, 12883], "mapped", [50, 51]], [[12884, 12884], "mapped", [50, 52]], [[12885, 12885], "mapped", [50, 53]], [[12886, 12886], "mapped", [50, 54]], [[12887, 12887], "mapped", [50, 55]], [[12888, 12888], "mapped", [50, 56]], [[12889, 12889], "mapped", [50, 57]], [[12890, 12890], "mapped", [51, 48]], [[12891, 12891], "mapped", [51, 49]], [[12892, 12892], "mapped", [51, 50]], [[12893, 12893], "mapped", [51, 51]], [[12894, 12894], "mapped", [51, 52]], [[12895, 12895], "mapped", [51, 53]], [[12896, 12896], "mapped", [4352]], [[12897, 12897], "mapped", [4354]], [[12898, 12898], "mapped", [4355]], [[12899, 12899], "mapped", [4357]], [[12900, 12900], "mapped", [4358]], [[12901, 12901], "mapped", [4359]], [[12902, 12902], "mapped", [4361]], [[12903, 12903], "mapped", [4363]], [[12904, 12904], "mapped", [4364]], [[12905, 12905], "mapped", [4366]], [[12906, 12906], "mapped", [4367]], [[12907, 12907], "mapped", [4368]], [[12908, 12908], "mapped", [4369]], [[12909, 12909], "mapped", [4370]], [[12910, 12910], "mapped", [44032]], [[12911, 12911], "mapped", [45208]], [[12912, 12912], "mapped", [45796]], [[12913, 12913], "mapped", [46972]], [[12914, 12914], "mapped", [47560]], [[12915, 12915], "mapped", [48148]], [[12916, 12916], "mapped", [49324]], [[12917, 12917], "mapped", [50500]], [[12918, 12918], "mapped", [51088]], [[12919, 12919], "mapped", [52264]], [[12920, 12920], "mapped", [52852]], [[12921, 12921], "mapped", [53440]], [[12922, 12922], "mapped", [54028]], [[12923, 12923], "mapped", [54616]], [[12924, 12924], "mapped", [52280, 44256]], [[12925, 12925], "mapped", [51452, 51032]], [[12926, 12926], "mapped", [50864]], [[12927, 12927], "valid", [], "NV8"], [[12928, 12928], "mapped", [19968]], [[12929, 12929], "mapped", [20108]], [[12930, 12930], "mapped", [19977]], [[12931, 12931], "mapped", [22235]], [[12932, 12932], "mapped", [20116]], [[12933, 12933], "mapped", [20845]], [[12934, 12934], "mapped", [19971]], [[12935, 12935], "mapped", [20843]], [[12936, 12936], "mapped", [20061]], [[12937, 12937], "mapped", [21313]], [[12938, 12938], "mapped", [26376]], [[12939, 12939], "mapped", [28779]], [[12940, 12940], "mapped", [27700]], [[12941, 12941], "mapped", [26408]], [[12942, 12942], "mapped", [37329]], [[12943, 12943], "mapped", [22303]], [[12944, 12944], "mapped", [26085]], [[12945, 12945], "mapped", [26666]], [[12946, 12946], "mapped", [26377]], [[12947, 12947], "mapped", [31038]], [[12948, 12948], "mapped", [21517]], [[12949, 12949], "mapped", [29305]], [[12950, 12950], "mapped", [36001]], [[12951, 12951], "mapped", [31069]], [[12952, 12952], "mapped", [21172]], [[12953, 12953], "mapped", [31192]], [[12954, 12954], "mapped", [30007]], [[12955, 12955], "mapped", [22899]], [[12956, 12956], "mapped", [36969]], [[12957, 12957], "mapped", [20778]], [[12958, 12958], "mapped", [21360]], [[12959, 12959], "mapped", [27880]], [[12960, 12960], "mapped", [38917]], [[12961, 12961], "mapped", [20241]], [[12962, 12962], "mapped", [20889]], [[12963, 12963], "mapped", [27491]], [[12964, 12964], "mapped", [19978]], [[12965, 12965], "mapped", [20013]], [[12966, 12966], "mapped", [19979]], [[12967, 12967], "mapped", [24038]], [[12968, 12968], "mapped", [21491]], [[12969, 12969], "mapped", [21307]], [[12970, 12970], "mapped", [23447]], [[12971, 12971], "mapped", [23398]], [[12972, 12972], "mapped", [30435]], [[12973, 12973], "mapped", [20225]], [[12974, 12974], "mapped", [36039]], [[12975, 12975], "mapped", [21332]], [[12976, 12976], "mapped", [22812]], [[12977, 12977], "mapped", [51, 54]], [[12978, 12978], "mapped", [51, 55]], [[12979, 12979], "mapped", [51, 56]], [[12980, 12980], "mapped", [51, 57]], [[12981, 12981], "mapped", [52, 48]], [[12982, 12982], "mapped", [52, 49]], [[12983, 12983], "mapped", [52, 50]], [[12984, 12984], "mapped", [52, 51]], [[12985, 12985], "mapped", [52, 52]], [[12986, 12986], "mapped", [52, 53]], [[12987, 12987], "mapped", [52, 54]], [[12988, 12988], "mapped", [52, 55]], [[12989, 12989], "mapped", [52, 56]], [[12990, 12990], "mapped", [52, 57]], [[12991, 12991], "mapped", [53, 48]], [[12992, 12992], "mapped", [49, 26376]], [[12993, 12993], "mapped", [50, 26376]], [[12994, 12994], "mapped", [51, 26376]], [[12995, 12995], "mapped", [52, 26376]], [[12996, 12996], "mapped", [53, 26376]], [[12997, 12997], "mapped", [54, 26376]], [[12998, 12998], "mapped", [55, 26376]], [[12999, 12999], "mapped", [56, 26376]], [[13e3, 13e3], "mapped", [57, 26376]], [[13001, 13001], "mapped", [49, 48, 26376]], [[13002, 13002], "mapped", [49, 49, 26376]], [[13003, 13003], "mapped", [49, 50, 26376]], [[13004, 13004], "mapped", [104, 103]], [[13005, 13005], "mapped", [101, 114, 103]], [[13006, 13006], "mapped", [101, 118]], [[13007, 13007], "mapped", [108, 116, 100]], [[13008, 13008], "mapped", [12450]], [[13009, 13009], "mapped", [12452]], [[13010, 13010], "mapped", [12454]], [[13011, 13011], "mapped", [12456]], [[13012, 13012], "mapped", [12458]], [[13013, 13013], "mapped", [12459]], [[13014, 13014], "mapped", [12461]], [[13015, 13015], "mapped", [12463]], [[13016, 13016], "mapped", [12465]], [[13017, 13017], "mapped", [12467]], [[13018, 13018], "mapped", [12469]], [[13019, 13019], "mapped", [12471]], [[13020, 13020], "mapped", [12473]], [[13021, 13021], "mapped", [12475]], [[13022, 13022], "mapped", [12477]], [[13023, 13023], "mapped", [12479]], [[13024, 13024], "mapped", [12481]], [[13025, 13025], "mapped", [12484]], [[13026, 13026], "mapped", [12486]], [[13027, 13027], "mapped", [12488]], [[13028, 13028], "mapped", [12490]], [[13029, 13029], "mapped", [12491]], [[13030, 13030], "mapped", [12492]], [[13031, 13031], "mapped", [12493]], [[13032, 13032], "mapped", [12494]], [[13033, 13033], "mapped", [12495]], [[13034, 13034], "mapped", [12498]], [[13035, 13035], "mapped", [12501]], [[13036, 13036], "mapped", [12504]], [[13037, 13037], "mapped", [12507]], [[13038, 13038], "mapped", [12510]], [[13039, 13039], "mapped", [12511]], [[13040, 13040], "mapped", [12512]], [[13041, 13041], "mapped", [12513]], [[13042, 13042], "mapped", [12514]], [[13043, 13043], "mapped", [12516]], [[13044, 13044], "mapped", [12518]], [[13045, 13045], "mapped", [12520]], [[13046, 13046], "mapped", [12521]], [[13047, 13047], "mapped", [12522]], [[13048, 13048], "mapped", [12523]], [[13049, 13049], "mapped", [12524]], [[13050, 13050], "mapped", [12525]], [[13051, 13051], "mapped", [12527]], [[13052, 13052], "mapped", [12528]], [[13053, 13053], "mapped", [12529]], [[13054, 13054], "mapped", [12530]], [[13055, 13055], "disallowed"], [[13056, 13056], "mapped", [12450, 12497, 12540, 12488]], [[13057, 13057], "mapped", [12450, 12523, 12501, 12449]], [[13058, 13058], "mapped", [12450, 12531, 12506, 12450]], [[13059, 13059], "mapped", [12450, 12540, 12523]], [[13060, 13060], "mapped", [12452, 12491, 12531, 12464]], [[13061, 13061], "mapped", [12452, 12531, 12481]], [[13062, 13062], "mapped", [12454, 12457, 12531]], [[13063, 13063], "mapped", [12456, 12473, 12463, 12540, 12489]], [[13064, 13064], "mapped", [12456, 12540, 12459, 12540]], [[13065, 13065], "mapped", [12458, 12531, 12473]], [[13066, 13066], "mapped", [12458, 12540, 12512]], [[13067, 13067], "mapped", [12459, 12452, 12522]], [[13068, 13068], "mapped", [12459, 12521, 12483, 12488]], [[13069, 13069], "mapped", [12459, 12525, 12522, 12540]], [[13070, 13070], "mapped", [12460, 12525, 12531]], [[13071, 13071], "mapped", [12460, 12531, 12510]], [[13072, 13072], "mapped", [12462, 12460]], [[13073, 13073], "mapped", [12462, 12491, 12540]], [[13074, 13074], "mapped", [12461, 12517, 12522, 12540]], [[13075, 13075], "mapped", [12462, 12523, 12480, 12540]], [[13076, 13076], "mapped", [12461, 12525]], [[13077, 13077], "mapped", [12461, 12525, 12464, 12521, 12512]], [[13078, 13078], "mapped", [12461, 12525, 12513, 12540, 12488, 12523]], [[13079, 13079], "mapped", [12461, 12525, 12527, 12483, 12488]], [[13080, 13080], "mapped", [12464, 12521, 12512]], [[13081, 13081], "mapped", [12464, 12521, 12512, 12488, 12531]], [[13082, 13082], "mapped", [12463, 12523, 12476, 12452, 12525]], [[13083, 13083], "mapped", [12463, 12525, 12540, 12493]], [[13084, 13084], "mapped", [12465, 12540, 12473]], [[13085, 13085], "mapped", [12467, 12523, 12490]], [[13086, 13086], "mapped", [12467, 12540, 12509]], [[13087, 13087], "mapped", [12469, 12452, 12463, 12523]], [[13088, 13088], "mapped", [12469, 12531, 12481, 12540, 12512]], [[13089, 13089], "mapped", [12471, 12522, 12531, 12464]], [[13090, 13090], "mapped", [12475, 12531, 12481]], [[13091, 13091], "mapped", [12475, 12531, 12488]], [[13092, 13092], "mapped", [12480, 12540, 12473]], [[13093, 13093], "mapped", [12487, 12471]], [[13094, 13094], "mapped", [12489, 12523]], [[13095, 13095], "mapped", [12488, 12531]], [[13096, 13096], "mapped", [12490, 12494]], [[13097, 13097], "mapped", [12494, 12483, 12488]], [[13098, 13098], "mapped", [12495, 12452, 12484]], [[13099, 13099], "mapped", [12497, 12540, 12475, 12531, 12488]], [[13100, 13100], "mapped", [12497, 12540, 12484]], [[13101, 13101], "mapped", [12496, 12540, 12524, 12523]], [[13102, 13102], "mapped", [12500, 12450, 12473, 12488, 12523]], [[13103, 13103], "mapped", [12500, 12463, 12523]], [[13104, 13104], "mapped", [12500, 12467]], [[13105, 13105], "mapped", [12499, 12523]], [[13106, 13106], "mapped", [12501, 12449, 12521, 12483, 12489]], [[13107, 13107], "mapped", [12501, 12451, 12540, 12488]], [[13108, 13108], "mapped", [12502, 12483, 12471, 12455, 12523]], [[13109, 13109], "mapped", [12501, 12521, 12531]], [[13110, 13110], "mapped", [12504, 12463, 12479, 12540, 12523]], [[13111, 13111], "mapped", [12506, 12477]], [[13112, 13112], "mapped", [12506, 12491, 12498]], [[13113, 13113], "mapped", [12504, 12523, 12484]], [[13114, 13114], "mapped", [12506, 12531, 12473]], [[13115, 13115], "mapped", [12506, 12540, 12472]], [[13116, 13116], "mapped", [12505, 12540, 12479]], [[13117, 13117], "mapped", [12509, 12452, 12531, 12488]], [[13118, 13118], "mapped", [12508, 12523, 12488]], [[13119, 13119], "mapped", [12507, 12531]], [[13120, 13120], "mapped", [12509, 12531, 12489]], [[13121, 13121], "mapped", [12507, 12540, 12523]], [[13122, 13122], "mapped", [12507, 12540, 12531]], [[13123, 13123], "mapped", [12510, 12452, 12463, 12525]], [[13124, 13124], "mapped", [12510, 12452, 12523]], [[13125, 13125], "mapped", [12510, 12483, 12495]], [[13126, 13126], "mapped", [12510, 12523, 12463]], [[13127, 13127], "mapped", [12510, 12531, 12471, 12519, 12531]], [[13128, 13128], "mapped", [12511, 12463, 12525, 12531]], [[13129, 13129], "mapped", [12511, 12522]], [[13130, 13130], "mapped", [12511, 12522, 12496, 12540, 12523]], [[13131, 13131], "mapped", [12513, 12460]], [[13132, 13132], "mapped", [12513, 12460, 12488, 12531]], [[13133, 13133], "mapped", [12513, 12540, 12488, 12523]], [[13134, 13134], "mapped", [12516, 12540, 12489]], [[13135, 13135], "mapped", [12516, 12540, 12523]], [[13136, 13136], "mapped", [12518, 12450, 12531]], [[13137, 13137], "mapped", [12522, 12483, 12488, 12523]], [[13138, 13138], "mapped", [12522, 12521]], [[13139, 13139], "mapped", [12523, 12500, 12540]], [[13140, 13140], "mapped", [12523, 12540, 12502, 12523]], [[13141, 13141], "mapped", [12524, 12512]], [[13142, 13142], "mapped", [12524, 12531, 12488, 12466, 12531]], [[13143, 13143], "mapped", [12527, 12483, 12488]], [[13144, 13144], "mapped", [48, 28857]], [[13145, 13145], "mapped", [49, 28857]], [[13146, 13146], "mapped", [50, 28857]], [[13147, 13147], "mapped", [51, 28857]], [[13148, 13148], "mapped", [52, 28857]], [[13149, 13149], "mapped", [53, 28857]], [[13150, 13150], "mapped", [54, 28857]], [[13151, 13151], "mapped", [55, 28857]], [[13152, 13152], "mapped", [56, 28857]], [[13153, 13153], "mapped", [57, 28857]], [[13154, 13154], "mapped", [49, 48, 28857]], [[13155, 13155], "mapped", [49, 49, 28857]], [[13156, 13156], "mapped", [49, 50, 28857]], [[13157, 13157], "mapped", [49, 51, 28857]], [[13158, 13158], "mapped", [49, 52, 28857]], [[13159, 13159], "mapped", [49, 53, 28857]], [[13160, 13160], "mapped", [49, 54, 28857]], [[13161, 13161], "mapped", [49, 55, 28857]], [[13162, 13162], "mapped", [49, 56, 28857]], [[13163, 13163], "mapped", [49, 57, 28857]], [[13164, 13164], "mapped", [50, 48, 28857]], [[13165, 13165], "mapped", [50, 49, 28857]], [[13166, 13166], "mapped", [50, 50, 28857]], [[13167, 13167], "mapped", [50, 51, 28857]], [[13168, 13168], "mapped", [50, 52, 28857]], [[13169, 13169], "mapped", [104, 112, 97]], [[13170, 13170], "mapped", [100, 97]], [[13171, 13171], "mapped", [97, 117]], [[13172, 13172], "mapped", [98, 97, 114]], [[13173, 13173], "mapped", [111, 118]], [[13174, 13174], "mapped", [112, 99]], [[13175, 13175], "mapped", [100, 109]], [[13176, 13176], "mapped", [100, 109, 50]], [[13177, 13177], "mapped", [100, 109, 51]], [[13178, 13178], "mapped", [105, 117]], [[13179, 13179], "mapped", [24179, 25104]], [[13180, 13180], "mapped", [26157, 21644]], [[13181, 13181], "mapped", [22823, 27491]], [[13182, 13182], "mapped", [26126, 27835]], [[13183, 13183], "mapped", [26666, 24335, 20250, 31038]], [[13184, 13184], "mapped", [112, 97]], [[13185, 13185], "mapped", [110, 97]], [[13186, 13186], "mapped", [956, 97]], [[13187, 13187], "mapped", [109, 97]], [[13188, 13188], "mapped", [107, 97]], [[13189, 13189], "mapped", [107, 98]], [[13190, 13190], "mapped", [109, 98]], [[13191, 13191], "mapped", [103, 98]], [[13192, 13192], "mapped", [99, 97, 108]], [[13193, 13193], "mapped", [107, 99, 97, 108]], [[13194, 13194], "mapped", [112, 102]], [[13195, 13195], "mapped", [110, 102]], [[13196, 13196], "mapped", [956, 102]], [[13197, 13197], "mapped", [956, 103]], [[13198, 13198], "mapped", [109, 103]], [[13199, 13199], "mapped", [107, 103]], [[13200, 13200], "mapped", [104, 122]], [[13201, 13201], "mapped", [107, 104, 122]], [[13202, 13202], "mapped", [109, 104, 122]], [[13203, 13203], "mapped", [103, 104, 122]], [[13204, 13204], "mapped", [116, 104, 122]], [[13205, 13205], "mapped", [956, 108]], [[13206, 13206], "mapped", [109, 108]], [[13207, 13207], "mapped", [100, 108]], [[13208, 13208], "mapped", [107, 108]], [[13209, 13209], "mapped", [102, 109]], [[13210, 13210], "mapped", [110, 109]], [[13211, 13211], "mapped", [956, 109]], [[13212, 13212], "mapped", [109, 109]], [[13213, 13213], "mapped", [99, 109]], [[13214, 13214], "mapped", [107, 109]], [[13215, 13215], "mapped", [109, 109, 50]], [[13216, 13216], "mapped", [99, 109, 50]], [[13217, 13217], "mapped", [109, 50]], [[13218, 13218], "mapped", [107, 109, 50]], [[13219, 13219], "mapped", [109, 109, 51]], [[13220, 13220], "mapped", [99, 109, 51]], [[13221, 13221], "mapped", [109, 51]], [[13222, 13222], "mapped", [107, 109, 51]], [[13223, 13223], "mapped", [109, 8725, 115]], [[13224, 13224], "mapped", [109, 8725, 115, 50]], [[13225, 13225], "mapped", [112, 97]], [[13226, 13226], "mapped", [107, 112, 97]], [[13227, 13227], "mapped", [109, 112, 97]], [[13228, 13228], "mapped", [103, 112, 97]], [[13229, 13229], "mapped", [114, 97, 100]], [[13230, 13230], "mapped", [114, 97, 100, 8725, 115]], [[13231, 13231], "mapped", [114, 97, 100, 8725, 115, 50]], [[13232, 13232], "mapped", [112, 115]], [[13233, 13233], "mapped", [110, 115]], [[13234, 13234], "mapped", [956, 115]], [[13235, 13235], "mapped", [109, 115]], [[13236, 13236], "mapped", [112, 118]], [[13237, 13237], "mapped", [110, 118]], [[13238, 13238], "mapped", [956, 118]], [[13239, 13239], "mapped", [109, 118]], [[13240, 13240], "mapped", [107, 118]], [[13241, 13241], "mapped", [109, 118]], [[13242, 13242], "mapped", [112, 119]], [[13243, 13243], "mapped", [110, 119]], [[13244, 13244], "mapped", [956, 119]], [[13245, 13245], "mapped", [109, 119]], [[13246, 13246], "mapped", [107, 119]], [[13247, 13247], "mapped", [109, 119]], [[13248, 13248], "mapped", [107, 969]], [[13249, 13249], "mapped", [109, 969]], [[13250, 13250], "disallowed"], [[13251, 13251], "mapped", [98, 113]], [[13252, 13252], "mapped", [99, 99]], [[13253, 13253], "mapped", [99, 100]], [[13254, 13254], "mapped", [99, 8725, 107, 103]], [[13255, 13255], "disallowed"], [[13256, 13256], "mapped", [100, 98]], [[13257, 13257], "mapped", [103, 121]], [[13258, 13258], "mapped", [104, 97]], [[13259, 13259], "mapped", [104, 112]], [[13260, 13260], "mapped", [105, 110]], [[13261, 13261], "mapped", [107, 107]], [[13262, 13262], "mapped", [107, 109]], [[13263, 13263], "mapped", [107, 116]], [[13264, 13264], "mapped", [108, 109]], [[13265, 13265], "mapped", [108, 110]], [[13266, 13266], "mapped", [108, 111, 103]], [[13267, 13267], "mapped", [108, 120]], [[13268, 13268], "mapped", [109, 98]], [[13269, 13269], "mapped", [109, 105, 108]], [[13270, 13270], "mapped", [109, 111, 108]], [[13271, 13271], "mapped", [112, 104]], [[13272, 13272], "disallowed"], [[13273, 13273], "mapped", [112, 112, 109]], [[13274, 13274], "mapped", [112, 114]], [[13275, 13275], "mapped", [115, 114]], [[13276, 13276], "mapped", [115, 118]], [[13277, 13277], "mapped", [119, 98]], [[13278, 13278], "mapped", [118, 8725, 109]], [[13279, 13279], "mapped", [97, 8725, 109]], [[13280, 13280], "mapped", [49, 26085]], [[13281, 13281], "mapped", [50, 26085]], [[13282, 13282], "mapped", [51, 26085]], [[13283, 13283], "mapped", [52, 26085]], [[13284, 13284], "mapped", [53, 26085]], [[13285, 13285], "mapped", [54, 26085]], [[13286, 13286], "mapped", [55, 26085]], [[13287, 13287], "mapped", [56, 26085]], [[13288, 13288], "mapped", [57, 26085]], [[13289, 13289], "mapped", [49, 48, 26085]], [[13290, 13290], "mapped", [49, 49, 26085]], [[13291, 13291], "mapped", [49, 50, 26085]], [[13292, 13292], "mapped", [49, 51, 26085]], [[13293, 13293], "mapped", [49, 52, 26085]], [[13294, 13294], "mapped", [49, 53, 26085]], [[13295, 13295], "mapped", [49, 54, 26085]], [[13296, 13296], "mapped", [49, 55, 26085]], [[13297, 13297], "mapped", [49, 56, 26085]], [[13298, 13298], "mapped", [49, 57, 26085]], [[13299, 13299], "mapped", [50, 48, 26085]], [[13300, 13300], "mapped", [50, 49, 26085]], [[13301, 13301], "mapped", [50, 50, 26085]], [[13302, 13302], "mapped", [50, 51, 26085]], [[13303, 13303], "mapped", [50, 52, 26085]], [[13304, 13304], "mapped", [50, 53, 26085]], [[13305, 13305], "mapped", [50, 54, 26085]], [[13306, 13306], "mapped", [50, 55, 26085]], [[13307, 13307], "mapped", [50, 56, 26085]], [[13308, 13308], "mapped", [50, 57, 26085]], [[13309, 13309], "mapped", [51, 48, 26085]], [[13310, 13310], "mapped", [51, 49, 26085]], [[13311, 13311], "mapped", [103, 97, 108]], [[13312, 19893], "valid"], [[19894, 19903], "disallowed"], [[19904, 19967], "valid", [], "NV8"], [[19968, 40869], "valid"], [[40870, 40891], "valid"], [[40892, 40899], "valid"], [[40900, 40907], "valid"], [[40908, 40908], "valid"], [[40909, 40917], "valid"], [[40918, 40959], "disallowed"], [[40960, 42124], "valid"], [[42125, 42127], "disallowed"], [[42128, 42145], "valid", [], "NV8"], [[42146, 42147], "valid", [], "NV8"], [[42148, 42163], "valid", [], "NV8"], [[42164, 42164], "valid", [], "NV8"], [[42165, 42176], "valid", [], "NV8"], [[42177, 42177], "valid", [], "NV8"], [[42178, 42180], "valid", [], "NV8"], [[42181, 42181], "valid", [], "NV8"], [[42182, 42182], "valid", [], "NV8"], [[42183, 42191], "disallowed"], [[42192, 42237], "valid"], [[42238, 42239], "valid", [], "NV8"], [[42240, 42508], "valid"], [[42509, 42511], "valid", [], "NV8"], [[42512, 42539], "valid"], [[42540, 42559], "disallowed"], [[42560, 42560], "mapped", [42561]], [[42561, 42561], "valid"], [[42562, 42562], "mapped", [42563]], [[42563, 42563], "valid"], [[42564, 42564], "mapped", [42565]], [[42565, 42565], "valid"], [[42566, 42566], "mapped", [42567]], [[42567, 42567], "valid"], [[42568, 42568], "mapped", [42569]], [[42569, 42569], "valid"], [[42570, 42570], "mapped", [42571]], [[42571, 42571], "valid"], [[42572, 42572], "mapped", [42573]], [[42573, 42573], "valid"], [[42574, 42574], "mapped", [42575]], [[42575, 42575], "valid"], [[42576, 42576], "mapped", [42577]], [[42577, 42577], "valid"], [[42578, 42578], "mapped", [42579]], [[42579, 42579], "valid"], [[42580, 42580], "mapped", [42581]], [[42581, 42581], "valid"], [[42582, 42582], "mapped", [42583]], [[42583, 42583], "valid"], [[42584, 42584], "mapped", [42585]], [[42585, 42585], "valid"], [[42586, 42586], "mapped", [42587]], [[42587, 42587], "valid"], [[42588, 42588], "mapped", [42589]], [[42589, 42589], "valid"], [[42590, 42590], "mapped", [42591]], [[42591, 42591], "valid"], [[42592, 42592], "mapped", [42593]], [[42593, 42593], "valid"], [[42594, 42594], "mapped", [42595]], [[42595, 42595], "valid"], [[42596, 42596], "mapped", [42597]], [[42597, 42597], "valid"], [[42598, 42598], "mapped", [42599]], [[42599, 42599], "valid"], [[42600, 42600], "mapped", [42601]], [[42601, 42601], "valid"], [[42602, 42602], "mapped", [42603]], [[42603, 42603], "valid"], [[42604, 42604], "mapped", [42605]], [[42605, 42607], "valid"], [[42608, 42611], "valid", [], "NV8"], [[42612, 42619], "valid"], [[42620, 42621], "valid"], [[42622, 42622], "valid", [], "NV8"], [[42623, 42623], "valid"], [[42624, 42624], "mapped", [42625]], [[42625, 42625], "valid"], [[42626, 42626], "mapped", [42627]], [[42627, 42627], "valid"], [[42628, 42628], "mapped", [42629]], [[42629, 42629], "valid"], [[42630, 42630], "mapped", [42631]], [[42631, 42631], "valid"], [[42632, 42632], "mapped", [42633]], [[42633, 42633], "valid"], [[42634, 42634], "mapped", [42635]], [[42635, 42635], "valid"], [[42636, 42636], "mapped", [42637]], [[42637, 42637], "valid"], [[42638, 42638], "mapped", [42639]], [[42639, 42639], "valid"], [[42640, 42640], "mapped", [42641]], [[42641, 42641], "valid"], [[42642, 42642], "mapped", [42643]], [[42643, 42643], "valid"], [[42644, 42644], "mapped", [42645]], [[42645, 42645], "valid"], [[42646, 42646], "mapped", [42647]], [[42647, 42647], "valid"], [[42648, 42648], "mapped", [42649]], [[42649, 42649], "valid"], [[42650, 42650], "mapped", [42651]], [[42651, 42651], "valid"], [[42652, 42652], "mapped", [1098]], [[42653, 42653], "mapped", [1100]], [[42654, 42654], "valid"], [[42655, 42655], "valid"], [[42656, 42725], "valid"], [[42726, 42735], "valid", [], "NV8"], [[42736, 42737], "valid"], [[42738, 42743], "valid", [], "NV8"], [[42744, 42751], "disallowed"], [[42752, 42774], "valid", [], "NV8"], [[42775, 42778], "valid"], [[42779, 42783], "valid"], [[42784, 42785], "valid", [], "NV8"], [[42786, 42786], "mapped", [42787]], [[42787, 42787], "valid"], [[42788, 42788], "mapped", [42789]], [[42789, 42789], "valid"], [[42790, 42790], "mapped", [42791]], [[42791, 42791], "valid"], [[42792, 42792], "mapped", [42793]], [[42793, 42793], "valid"], [[42794, 42794], "mapped", [42795]], [[42795, 42795], "valid"], [[42796, 42796], "mapped", [42797]], [[42797, 42797], "valid"], [[42798, 42798], "mapped", [42799]], [[42799, 42801], "valid"], [[42802, 42802], "mapped", [42803]], [[42803, 42803], "valid"], [[42804, 42804], "mapped", [42805]], [[42805, 42805], "valid"], [[42806, 42806], "mapped", [42807]], [[42807, 42807], "valid"], [[42808, 42808], "mapped", [42809]], [[42809, 42809], "valid"], [[42810, 42810], "mapped", [42811]], [[42811, 42811], "valid"], [[42812, 42812], "mapped", [42813]], [[42813, 42813], "valid"], [[42814, 42814], "mapped", [42815]], [[42815, 42815], "valid"], [[42816, 42816], "mapped", [42817]], [[42817, 42817], "valid"], [[42818, 42818], "mapped", [42819]], [[42819, 42819], "valid"], [[42820, 42820], "mapped", [42821]], [[42821, 42821], "valid"], [[42822, 42822], "mapped", [42823]], [[42823, 42823], "valid"], [[42824, 42824], "mapped", [42825]], [[42825, 42825], "valid"], [[42826, 42826], "mapped", [42827]], [[42827, 42827], "valid"], [[42828, 42828], "mapped", [42829]], [[42829, 42829], "valid"], [[42830, 42830], "mapped", [42831]], [[42831, 42831], "valid"], [[42832, 42832], "mapped", [42833]], [[42833, 42833], "valid"], [[42834, 42834], "mapped", [42835]], [[42835, 42835], "valid"], [[42836, 42836], "mapped", [42837]], [[42837, 42837], "valid"], [[42838, 42838], "mapped", [42839]], [[42839, 42839], "valid"], [[42840, 42840], "mapped", [42841]], [[42841, 42841], "valid"], [[42842, 42842], "mapped", [42843]], [[42843, 42843], "valid"], [[42844, 42844], "mapped", [42845]], [[42845, 42845], "valid"], [[42846, 42846], "mapped", [42847]], [[42847, 42847], "valid"], [[42848, 42848], "mapped", [42849]], [[42849, 42849], "valid"], [[42850, 42850], "mapped", [42851]], [[42851, 42851], "valid"], [[42852, 42852], "mapped", [42853]], [[42853, 42853], "valid"], [[42854, 42854], "mapped", [42855]], [[42855, 42855], "valid"], [[42856, 42856], "mapped", [42857]], [[42857, 42857], "valid"], [[42858, 42858], "mapped", [42859]], [[42859, 42859], "valid"], [[42860, 42860], "mapped", [42861]], [[42861, 42861], "valid"], [[42862, 42862], "mapped", [42863]], [[42863, 42863], "valid"], [[42864, 42864], "mapped", [42863]], [[42865, 42872], "valid"], [[42873, 42873], "mapped", [42874]], [[42874, 42874], "valid"], [[42875, 42875], "mapped", [42876]], [[42876, 42876], "valid"], [[42877, 42877], "mapped", [7545]], [[42878, 42878], "mapped", [42879]], [[42879, 42879], "valid"], [[42880, 42880], "mapped", [42881]], [[42881, 42881], "valid"], [[42882, 42882], "mapped", [42883]], [[42883, 42883], "valid"], [[42884, 42884], "mapped", [42885]], [[42885, 42885], "valid"], [[42886, 42886], "mapped", [42887]], [[42887, 42888], "valid"], [[42889, 42890], "valid", [], "NV8"], [[42891, 42891], "mapped", [42892]], [[42892, 42892], "valid"], [[42893, 42893], "mapped", [613]], [[42894, 42894], "valid"], [[42895, 42895], "valid"], [[42896, 42896], "mapped", [42897]], [[42897, 42897], "valid"], [[42898, 42898], "mapped", [42899]], [[42899, 42899], "valid"], [[42900, 42901], "valid"], [[42902, 42902], "mapped", [42903]], [[42903, 42903], "valid"], [[42904, 42904], "mapped", [42905]], [[42905, 42905], "valid"], [[42906, 42906], "mapped", [42907]], [[42907, 42907], "valid"], [[42908, 42908], "mapped", [42909]], [[42909, 42909], "valid"], [[42910, 42910], "mapped", [42911]], [[42911, 42911], "valid"], [[42912, 42912], "mapped", [42913]], [[42913, 42913], "valid"], [[42914, 42914], "mapped", [42915]], [[42915, 42915], "valid"], [[42916, 42916], "mapped", [42917]], [[42917, 42917], "valid"], [[42918, 42918], "mapped", [42919]], [[42919, 42919], "valid"], [[42920, 42920], "mapped", [42921]], [[42921, 42921], "valid"], [[42922, 42922], "mapped", [614]], [[42923, 42923], "mapped", [604]], [[42924, 42924], "mapped", [609]], [[42925, 42925], "mapped", [620]], [[42926, 42927], "disallowed"], [[42928, 42928], "mapped", [670]], [[42929, 42929], "mapped", [647]], [[42930, 42930], "mapped", [669]], [[42931, 42931], "mapped", [43859]], [[42932, 42932], "mapped", [42933]], [[42933, 42933], "valid"], [[42934, 42934], "mapped", [42935]], [[42935, 42935], "valid"], [[42936, 42998], "disallowed"], [[42999, 42999], "valid"], [[43e3, 43e3], "mapped", [295]], [[43001, 43001], "mapped", [339]], [[43002, 43002], "valid"], [[43003, 43007], "valid"], [[43008, 43047], "valid"], [[43048, 43051], "valid", [], "NV8"], [[43052, 43055], "disallowed"], [[43056, 43065], "valid", [], "NV8"], [[43066, 43071], "disallowed"], [[43072, 43123], "valid"], [[43124, 43127], "valid", [], "NV8"], [[43128, 43135], "disallowed"], [[43136, 43204], "valid"], [[43205, 43213], "disallowed"], [[43214, 43215], "valid", [], "NV8"], [[43216, 43225], "valid"], [[43226, 43231], "disallowed"], [[43232, 43255], "valid"], [[43256, 43258], "valid", [], "NV8"], [[43259, 43259], "valid"], [[43260, 43260], "valid", [], "NV8"], [[43261, 43261], "valid"], [[43262, 43263], "disallowed"], [[43264, 43309], "valid"], [[43310, 43311], "valid", [], "NV8"], [[43312, 43347], "valid"], [[43348, 43358], "disallowed"], [[43359, 43359], "valid", [], "NV8"], [[43360, 43388], "valid", [], "NV8"], [[43389, 43391], "disallowed"], [[43392, 43456], "valid"], [[43457, 43469], "valid", [], "NV8"], [[43470, 43470], "disallowed"], [[43471, 43481], "valid"], [[43482, 43485], "disallowed"], [[43486, 43487], "valid", [], "NV8"], [[43488, 43518], "valid"], [[43519, 43519], "disallowed"], [[43520, 43574], "valid"], [[43575, 43583], "disallowed"], [[43584, 43597], "valid"], [[43598, 43599], "disallowed"], [[43600, 43609], "valid"], [[43610, 43611], "disallowed"], [[43612, 43615], "valid", [], "NV8"], [[43616, 43638], "valid"], [[43639, 43641], "valid", [], "NV8"], [[43642, 43643], "valid"], [[43644, 43647], "valid"], [[43648, 43714], "valid"], [[43715, 43738], "disallowed"], [[43739, 43741], "valid"], [[43742, 43743], "valid", [], "NV8"], [[43744, 43759], "valid"], [[43760, 43761], "valid", [], "NV8"], [[43762, 43766], "valid"], [[43767, 43776], "disallowed"], [[43777, 43782], "valid"], [[43783, 43784], "disallowed"], [[43785, 43790], "valid"], [[43791, 43792], "disallowed"], [[43793, 43798], "valid"], [[43799, 43807], "disallowed"], [[43808, 43814], "valid"], [[43815, 43815], "disallowed"], [[43816, 43822], "valid"], [[43823, 43823], "disallowed"], [[43824, 43866], "valid"], [[43867, 43867], "valid", [], "NV8"], [[43868, 43868], "mapped", [42791]], [[43869, 43869], "mapped", [43831]], [[43870, 43870], "mapped", [619]], [[43871, 43871], "mapped", [43858]], [[43872, 43875], "valid"], [[43876, 43877], "valid"], [[43878, 43887], "disallowed"], [[43888, 43888], "mapped", [5024]], [[43889, 43889], "mapped", [5025]], [[43890, 43890], "mapped", [5026]], [[43891, 43891], "mapped", [5027]], [[43892, 43892], "mapped", [5028]], [[43893, 43893], "mapped", [5029]], [[43894, 43894], "mapped", [5030]], [[43895, 43895], "mapped", [5031]], [[43896, 43896], "mapped", [5032]], [[43897, 43897], "mapped", [5033]], [[43898, 43898], "mapped", [5034]], [[43899, 43899], "mapped", [5035]], [[43900, 43900], "mapped", [5036]], [[43901, 43901], "mapped", [5037]], [[43902, 43902], "mapped", [5038]], [[43903, 43903], "mapped", [5039]], [[43904, 43904], "mapped", [5040]], [[43905, 43905], "mapped", [5041]], [[43906, 43906], "mapped", [5042]], [[43907, 43907], "mapped", [5043]], [[43908, 43908], "mapped", [5044]], [[43909, 43909], "mapped", [5045]], [[43910, 43910], "mapped", [5046]], [[43911, 43911], "mapped", [5047]], [[43912, 43912], "mapped", [5048]], [[43913, 43913], "mapped", [5049]], [[43914, 43914], "mapped", [5050]], [[43915, 43915], "mapped", [5051]], [[43916, 43916], "mapped", [5052]], [[43917, 43917], "mapped", [5053]], [[43918, 43918], "mapped", [5054]], [[43919, 43919], "mapped", [5055]], [[43920, 43920], "mapped", [5056]], [[43921, 43921], "mapped", [5057]], [[43922, 43922], "mapped", [5058]], [[43923, 43923], "mapped", [5059]], [[43924, 43924], "mapped", [5060]], [[43925, 43925], "mapped", [5061]], [[43926, 43926], "mapped", [5062]], [[43927, 43927], "mapped", [5063]], [[43928, 43928], "mapped", [5064]], [[43929, 43929], "mapped", [5065]], [[43930, 43930], "mapped", [5066]], [[43931, 43931], "mapped", [5067]], [[43932, 43932], "mapped", [5068]], [[43933, 43933], "mapped", [5069]], [[43934, 43934], "mapped", [5070]], [[43935, 43935], "mapped", [5071]], [[43936, 43936], "mapped", [5072]], [[43937, 43937], "mapped", [5073]], [[43938, 43938], "mapped", [5074]], [[43939, 43939], "mapped", [5075]], [[43940, 43940], "mapped", [5076]], [[43941, 43941], "mapped", [5077]], [[43942, 43942], "mapped", [5078]], [[43943, 43943], "mapped", [5079]], [[43944, 43944], "mapped", [5080]], [[43945, 43945], "mapped", [5081]], [[43946, 43946], "mapped", [5082]], [[43947, 43947], "mapped", [5083]], [[43948, 43948], "mapped", [5084]], [[43949, 43949], "mapped", [5085]], [[43950, 43950], "mapped", [5086]], [[43951, 43951], "mapped", [5087]], [[43952, 43952], "mapped", [5088]], [[43953, 43953], "mapped", [5089]], [[43954, 43954], "mapped", [5090]], [[43955, 43955], "mapped", [5091]], [[43956, 43956], "mapped", [5092]], [[43957, 43957], "mapped", [5093]], [[43958, 43958], "mapped", [5094]], [[43959, 43959], "mapped", [5095]], [[43960, 43960], "mapped", [5096]], [[43961, 43961], "mapped", [5097]], [[43962, 43962], "mapped", [5098]], [[43963, 43963], "mapped", [5099]], [[43964, 43964], "mapped", [5100]], [[43965, 43965], "mapped", [5101]], [[43966, 43966], "mapped", [5102]], [[43967, 43967], "mapped", [5103]], [[43968, 44010], "valid"], [[44011, 44011], "valid", [], "NV8"], [[44012, 44013], "valid"], [[44014, 44015], "disallowed"], [[44016, 44025], "valid"], [[44026, 44031], "disallowed"], [[44032, 55203], "valid"], [[55204, 55215], "disallowed"], [[55216, 55238], "valid", [], "NV8"], [[55239, 55242], "disallowed"], [[55243, 55291], "valid", [], "NV8"], [[55292, 55295], "disallowed"], [[55296, 57343], "disallowed"], [[57344, 63743], "disallowed"], [[63744, 63744], "mapped", [35912]], [[63745, 63745], "mapped", [26356]], [[63746, 63746], "mapped", [36554]], [[63747, 63747], "mapped", [36040]], [[63748, 63748], "mapped", [28369]], [[63749, 63749], "mapped", [20018]], [[63750, 63750], "mapped", [21477]], [[63751, 63752], "mapped", [40860]], [[63753, 63753], "mapped", [22865]], [[63754, 63754], "mapped", [37329]], [[63755, 63755], "mapped", [21895]], [[63756, 63756], "mapped", [22856]], [[63757, 63757], "mapped", [25078]], [[63758, 63758], "mapped", [30313]], [[63759, 63759], "mapped", [32645]], [[63760, 63760], "mapped", [34367]], [[63761, 63761], "mapped", [34746]], [[63762, 63762], "mapped", [35064]], [[63763, 63763], "mapped", [37007]], [[63764, 63764], "mapped", [27138]], [[63765, 63765], "mapped", [27931]], [[63766, 63766], "mapped", [28889]], [[63767, 63767], "mapped", [29662]], [[63768, 63768], "mapped", [33853]], [[63769, 63769], "mapped", [37226]], [[63770, 63770], "mapped", [39409]], [[63771, 63771], "mapped", [20098]], [[63772, 63772], "mapped", [21365]], [[63773, 63773], "mapped", [27396]], [[63774, 63774], "mapped", [29211]], [[63775, 63775], "mapped", [34349]], [[63776, 63776], "mapped", [40478]], [[63777, 63777], "mapped", [23888]], [[63778, 63778], "mapped", [28651]], [[63779, 63779], "mapped", [34253]], [[63780, 63780], "mapped", [35172]], [[63781, 63781], "mapped", [25289]], [[63782, 63782], "mapped", [33240]], [[63783, 63783], "mapped", [34847]], [[63784, 63784], "mapped", [24266]], [[63785, 63785], "mapped", [26391]], [[63786, 63786], "mapped", [28010]], [[63787, 63787], "mapped", [29436]], [[63788, 63788], "mapped", [37070]], [[63789, 63789], "mapped", [20358]], [[63790, 63790], "mapped", [20919]], [[63791, 63791], "mapped", [21214]], [[63792, 63792], "mapped", [25796]], [[63793, 63793], "mapped", [27347]], [[63794, 63794], "mapped", [29200]], [[63795, 63795], "mapped", [30439]], [[63796, 63796], "mapped", [32769]], [[63797, 63797], "mapped", [34310]], [[63798, 63798], "mapped", [34396]], [[63799, 63799], "mapped", [36335]], [[63800, 63800], "mapped", [38706]], [[63801, 63801], "mapped", [39791]], [[63802, 63802], "mapped", [40442]], [[63803, 63803], "mapped", [30860]], [[63804, 63804], "mapped", [31103]], [[63805, 63805], "mapped", [32160]], [[63806, 63806], "mapped", [33737]], [[63807, 63807], "mapped", [37636]], [[63808, 63808], "mapped", [40575]], [[63809, 63809], "mapped", [35542]], [[63810, 63810], "mapped", [22751]], [[63811, 63811], "mapped", [24324]], [[63812, 63812], "mapped", [31840]], [[63813, 63813], "mapped", [32894]], [[63814, 63814], "mapped", [29282]], [[63815, 63815], "mapped", [30922]], [[63816, 63816], "mapped", [36034]], [[63817, 63817], "mapped", [38647]], [[63818, 63818], "mapped", [22744]], [[63819, 63819], "mapped", [23650]], [[63820, 63820], "mapped", [27155]], [[63821, 63821], "mapped", [28122]], [[63822, 63822], "mapped", [28431]], [[63823, 63823], "mapped", [32047]], [[63824, 63824], "mapped", [32311]], [[63825, 63825], "mapped", [38475]], [[63826, 63826], "mapped", [21202]], [[63827, 63827], "mapped", [32907]], [[63828, 63828], "mapped", [20956]], [[63829, 63829], "mapped", [20940]], [[63830, 63830], "mapped", [31260]], [[63831, 63831], "mapped", [32190]], [[63832, 63832], "mapped", [33777]], [[63833, 63833], "mapped", [38517]], [[63834, 63834], "mapped", [35712]], [[63835, 63835], "mapped", [25295]], [[63836, 63836], "mapped", [27138]], [[63837, 63837], "mapped", [35582]], [[63838, 63838], "mapped", [20025]], [[63839, 63839], "mapped", [23527]], [[63840, 63840], "mapped", [24594]], [[63841, 63841], "mapped", [29575]], [[63842, 63842], "mapped", [30064]], [[63843, 63843], "mapped", [21271]], [[63844, 63844], "mapped", [30971]], [[63845, 63845], "mapped", [20415]], [[63846, 63846], "mapped", [24489]], [[63847, 63847], "mapped", [19981]], [[63848, 63848], "mapped", [27852]], [[63849, 63849], "mapped", [25976]], [[63850, 63850], "mapped", [32034]], [[63851, 63851], "mapped", [21443]], [[63852, 63852], "mapped", [22622]], [[63853, 63853], "mapped", [30465]], [[63854, 63854], "mapped", [33865]], [[63855, 63855], "mapped", [35498]], [[63856, 63856], "mapped", [27578]], [[63857, 63857], "mapped", [36784]], [[63858, 63858], "mapped", [27784]], [[63859, 63859], "mapped", [25342]], [[63860, 63860], "mapped", [33509]], [[63861, 63861], "mapped", [25504]], [[63862, 63862], "mapped", [30053]], [[63863, 63863], "mapped", [20142]], [[63864, 63864], "mapped", [20841]], [[63865, 63865], "mapped", [20937]], [[63866, 63866], "mapped", [26753]], [[63867, 63867], "mapped", [31975]], [[63868, 63868], "mapped", [33391]], [[63869, 63869], "mapped", [35538]], [[63870, 63870], "mapped", [37327]], [[63871, 63871], "mapped", [21237]], [[63872, 63872], "mapped", [21570]], [[63873, 63873], "mapped", [22899]], [[63874, 63874], "mapped", [24300]], [[63875, 63875], "mapped", [26053]], [[63876, 63876], "mapped", [28670]], [[63877, 63877], "mapped", [31018]], [[63878, 63878], "mapped", [38317]], [[63879, 63879], "mapped", [39530]], [[63880, 63880], "mapped", [40599]], [[63881, 63881], "mapped", [40654]], [[63882, 63882], "mapped", [21147]], [[63883, 63883], "mapped", [26310]], [[63884, 63884], "mapped", [27511]], [[63885, 63885], "mapped", [36706]], [[63886, 63886], "mapped", [24180]], [[63887, 63887], "mapped", [24976]], [[63888, 63888], "mapped", [25088]], [[63889, 63889], "mapped", [25754]], [[63890, 63890], "mapped", [28451]], [[63891, 63891], "mapped", [29001]], [[63892, 63892], "mapped", [29833]], [[63893, 63893], "mapped", [31178]], [[63894, 63894], "mapped", [32244]], [[63895, 63895], "mapped", [32879]], [[63896, 63896], "mapped", [36646]], [[63897, 63897], "mapped", [34030]], [[63898, 63898], "mapped", [36899]], [[63899, 63899], "mapped", [37706]], [[63900, 63900], "mapped", [21015]], [[63901, 63901], "mapped", [21155]], [[63902, 63902], "mapped", [21693]], [[63903, 63903], "mapped", [28872]], [[63904, 63904], "mapped", [35010]], [[63905, 63905], "mapped", [35498]], [[63906, 63906], "mapped", [24265]], [[63907, 63907], "mapped", [24565]], [[63908, 63908], "mapped", [25467]], [[63909, 63909], "mapped", [27566]], [[63910, 63910], "mapped", [31806]], [[63911, 63911], "mapped", [29557]], [[63912, 63912], "mapped", [20196]], [[63913, 63913], "mapped", [22265]], [[63914, 63914], "mapped", [23527]], [[63915, 63915], "mapped", [23994]], [[63916, 63916], "mapped", [24604]], [[63917, 63917], "mapped", [29618]], [[63918, 63918], "mapped", [29801]], [[63919, 63919], "mapped", [32666]], [[63920, 63920], "mapped", [32838]], [[63921, 63921], "mapped", [37428]], [[63922, 63922], "mapped", [38646]], [[63923, 63923], "mapped", [38728]], [[63924, 63924], "mapped", [38936]], [[63925, 63925], "mapped", [20363]], [[63926, 63926], "mapped", [31150]], [[63927, 63927], "mapped", [37300]], [[63928, 63928], "mapped", [38584]], [[63929, 63929], "mapped", [24801]], [[63930, 63930], "mapped", [20102]], [[63931, 63931], "mapped", [20698]], [[63932, 63932], "mapped", [23534]], [[63933, 63933], "mapped", [23615]], [[63934, 63934], "mapped", [26009]], [[63935, 63935], "mapped", [27138]], [[63936, 63936], "mapped", [29134]], [[63937, 63937], "mapped", [30274]], [[63938, 63938], "mapped", [34044]], [[63939, 63939], "mapped", [36988]], [[63940, 63940], "mapped", [40845]], [[63941, 63941], "mapped", [26248]], [[63942, 63942], "mapped", [38446]], [[63943, 63943], "mapped", [21129]], [[63944, 63944], "mapped", [26491]], [[63945, 63945], "mapped", [26611]], [[63946, 63946], "mapped", [27969]], [[63947, 63947], "mapped", [28316]], [[63948, 63948], "mapped", [29705]], [[63949, 63949], "mapped", [30041]], [[63950, 63950], "mapped", [30827]], [[63951, 63951], "mapped", [32016]], [[63952, 63952], "mapped", [39006]], [[63953, 63953], "mapped", [20845]], [[63954, 63954], "mapped", [25134]], [[63955, 63955], "mapped", [38520]], [[63956, 63956], "mapped", [20523]], [[63957, 63957], "mapped", [23833]], [[63958, 63958], "mapped", [28138]], [[63959, 63959], "mapped", [36650]], [[63960, 63960], "mapped", [24459]], [[63961, 63961], "mapped", [24900]], [[63962, 63962], "mapped", [26647]], [[63963, 63963], "mapped", [29575]], [[63964, 63964], "mapped", [38534]], [[63965, 63965], "mapped", [21033]], [[63966, 63966], "mapped", [21519]], [[63967, 63967], "mapped", [23653]], [[63968, 63968], "mapped", [26131]], [[63969, 63969], "mapped", [26446]], [[63970, 63970], "mapped", [26792]], [[63971, 63971], "mapped", [27877]], [[63972, 63972], "mapped", [29702]], [[63973, 63973], "mapped", [30178]], [[63974, 63974], "mapped", [32633]], [[63975, 63975], "mapped", [35023]], [[63976, 63976], "mapped", [35041]], [[63977, 63977], "mapped", [37324]], [[63978, 63978], "mapped", [38626]], [[63979, 63979], "mapped", [21311]], [[63980, 63980], "mapped", [28346]], [[63981, 63981], "mapped", [21533]], [[63982, 63982], "mapped", [29136]], [[63983, 63983], "mapped", [29848]], [[63984, 63984], "mapped", [34298]], [[63985, 63985], "mapped", [38563]], [[63986, 63986], "mapped", [40023]], [[63987, 63987], "mapped", [40607]], [[63988, 63988], "mapped", [26519]], [[63989, 63989], "mapped", [28107]], [[63990, 63990], "mapped", [33256]], [[63991, 63991], "mapped", [31435]], [[63992, 63992], "mapped", [31520]], [[63993, 63993], "mapped", [31890]], [[63994, 63994], "mapped", [29376]], [[63995, 63995], "mapped", [28825]], [[63996, 63996], "mapped", [35672]], [[63997, 63997], "mapped", [20160]], [[63998, 63998], "mapped", [33590]], [[63999, 63999], "mapped", [21050]], [[64e3, 64e3], "mapped", [20999]], [[64001, 64001], "mapped", [24230]], [[64002, 64002], "mapped", [25299]], [[64003, 64003], "mapped", [31958]], [[64004, 64004], "mapped", [23429]], [[64005, 64005], "mapped", [27934]], [[64006, 64006], "mapped", [26292]], [[64007, 64007], "mapped", [36667]], [[64008, 64008], "mapped", [34892]], [[64009, 64009], "mapped", [38477]], [[64010, 64010], "mapped", [35211]], [[64011, 64011], "mapped", [24275]], [[64012, 64012], "mapped", [20800]], [[64013, 64013], "mapped", [21952]], [[64014, 64015], "valid"], [[64016, 64016], "mapped", [22618]], [[64017, 64017], "valid"], [[64018, 64018], "mapped", [26228]], [[64019, 64020], "valid"], [[64021, 64021], "mapped", [20958]], [[64022, 64022], "mapped", [29482]], [[64023, 64023], "mapped", [30410]], [[64024, 64024], "mapped", [31036]], [[64025, 64025], "mapped", [31070]], [[64026, 64026], "mapped", [31077]], [[64027, 64027], "mapped", [31119]], [[64028, 64028], "mapped", [38742]], [[64029, 64029], "mapped", [31934]], [[64030, 64030], "mapped", [32701]], [[64031, 64031], "valid"], [[64032, 64032], "mapped", [34322]], [[64033, 64033], "valid"], [[64034, 64034], "mapped", [35576]], [[64035, 64036], "valid"], [[64037, 64037], "mapped", [36920]], [[64038, 64038], "mapped", [37117]], [[64039, 64041], "valid"], [[64042, 64042], "mapped", [39151]], [[64043, 64043], "mapped", [39164]], [[64044, 64044], "mapped", [39208]], [[64045, 64045], "mapped", [40372]], [[64046, 64046], "mapped", [37086]], [[64047, 64047], "mapped", [38583]], [[64048, 64048], "mapped", [20398]], [[64049, 64049], "mapped", [20711]], [[64050, 64050], "mapped", [20813]], [[64051, 64051], "mapped", [21193]], [[64052, 64052], "mapped", [21220]], [[64053, 64053], "mapped", [21329]], [[64054, 64054], "mapped", [21917]], [[64055, 64055], "mapped", [22022]], [[64056, 64056], "mapped", [22120]], [[64057, 64057], "mapped", [22592]], [[64058, 64058], "mapped", [22696]], [[64059, 64059], "mapped", [23652]], [[64060, 64060], "mapped", [23662]], [[64061, 64061], "mapped", [24724]], [[64062, 64062], "mapped", [24936]], [[64063, 64063], "mapped", [24974]], [[64064, 64064], "mapped", [25074]], [[64065, 64065], "mapped", [25935]], [[64066, 64066], "mapped", [26082]], [[64067, 64067], "mapped", [26257]], [[64068, 64068], "mapped", [26757]], [[64069, 64069], "mapped", [28023]], [[64070, 64070], "mapped", [28186]], [[64071, 64071], "mapped", [28450]], [[64072, 64072], "mapped", [29038]], [[64073, 64073], "mapped", [29227]], [[64074, 64074], "mapped", [29730]], [[64075, 64075], "mapped", [30865]], [[64076, 64076], "mapped", [31038]], [[64077, 64077], "mapped", [31049]], [[64078, 64078], "mapped", [31048]], [[64079, 64079], "mapped", [31056]], [[64080, 64080], "mapped", [31062]], [[64081, 64081], "mapped", [31069]], [[64082, 64082], "mapped", [31117]], [[64083, 64083], "mapped", [31118]], [[64084, 64084], "mapped", [31296]], [[64085, 64085], "mapped", [31361]], [[64086, 64086], "mapped", [31680]], [[64087, 64087], "mapped", [32244]], [[64088, 64088], "mapped", [32265]], [[64089, 64089], "mapped", [32321]], [[64090, 64090], "mapped", [32626]], [[64091, 64091], "mapped", [32773]], [[64092, 64092], "mapped", [33261]], [[64093, 64094], "mapped", [33401]], [[64095, 64095], "mapped", [33879]], [[64096, 64096], "mapped", [35088]], [[64097, 64097], "mapped", [35222]], [[64098, 64098], "mapped", [35585]], [[64099, 64099], "mapped", [35641]], [[64100, 64100], "mapped", [36051]], [[64101, 64101], "mapped", [36104]], [[64102, 64102], "mapped", [36790]], [[64103, 64103], "mapped", [36920]], [[64104, 64104], "mapped", [38627]], [[64105, 64105], "mapped", [38911]], [[64106, 64106], "mapped", [38971]], [[64107, 64107], "mapped", [24693]], [[64108, 64108], "mapped", [148206]], [[64109, 64109], "mapped", [33304]], [[64110, 64111], "disallowed"], [[64112, 64112], "mapped", [20006]], [[64113, 64113], "mapped", [20917]], [[64114, 64114], "mapped", [20840]], [[64115, 64115], "mapped", [20352]], [[64116, 64116], "mapped", [20805]], [[64117, 64117], "mapped", [20864]], [[64118, 64118], "mapped", [21191]], [[64119, 64119], "mapped", [21242]], [[64120, 64120], "mapped", [21917]], [[64121, 64121], "mapped", [21845]], [[64122, 64122], "mapped", [21913]], [[64123, 64123], "mapped", [21986]], [[64124, 64124], "mapped", [22618]], [[64125, 64125], "mapped", [22707]], [[64126, 64126], "mapped", [22852]], [[64127, 64127], "mapped", [22868]], [[64128, 64128], "mapped", [23138]], [[64129, 64129], "mapped", [23336]], [[64130, 64130], "mapped", [24274]], [[64131, 64131], "mapped", [24281]], [[64132, 64132], "mapped", [24425]], [[64133, 64133], "mapped", [24493]], [[64134, 64134], "mapped", [24792]], [[64135, 64135], "mapped", [24910]], [[64136, 64136], "mapped", [24840]], [[64137, 64137], "mapped", [24974]], [[64138, 64138], "mapped", [24928]], [[64139, 64139], "mapped", [25074]], [[64140, 64140], "mapped", [25140]], [[64141, 64141], "mapped", [25540]], [[64142, 64142], "mapped", [25628]], [[64143, 64143], "mapped", [25682]], [[64144, 64144], "mapped", [25942]], [[64145, 64145], "mapped", [26228]], [[64146, 64146], "mapped", [26391]], [[64147, 64147], "mapped", [26395]], [[64148, 64148], "mapped", [26454]], [[64149, 64149], "mapped", [27513]], [[64150, 64150], "mapped", [27578]], [[64151, 64151], "mapped", [27969]], [[64152, 64152], "mapped", [28379]], [[64153, 64153], "mapped", [28363]], [[64154, 64154], "mapped", [28450]], [[64155, 64155], "mapped", [28702]], [[64156, 64156], "mapped", [29038]], [[64157, 64157], "mapped", [30631]], [[64158, 64158], "mapped", [29237]], [[64159, 64159], "mapped", [29359]], [[64160, 64160], "mapped", [29482]], [[64161, 64161], "mapped", [29809]], [[64162, 64162], "mapped", [29958]], [[64163, 64163], "mapped", [30011]], [[64164, 64164], "mapped", [30237]], [[64165, 64165], "mapped", [30239]], [[64166, 64166], "mapped", [30410]], [[64167, 64167], "mapped", [30427]], [[64168, 64168], "mapped", [30452]], [[64169, 64169], "mapped", [30538]], [[64170, 64170], "mapped", [30528]], [[64171, 64171], "mapped", [30924]], [[64172, 64172], "mapped", [31409]], [[64173, 64173], "mapped", [31680]], [[64174, 64174], "mapped", [31867]], [[64175, 64175], "mapped", [32091]], [[64176, 64176], "mapped", [32244]], [[64177, 64177], "mapped", [32574]], [[64178, 64178], "mapped", [32773]], [[64179, 64179], "mapped", [33618]], [[64180, 64180], "mapped", [33775]], [[64181, 64181], "mapped", [34681]], [[64182, 64182], "mapped", [35137]], [[64183, 64183], "mapped", [35206]], [[64184, 64184], "mapped", [35222]], [[64185, 64185], "mapped", [35519]], [[64186, 64186], "mapped", [35576]], [[64187, 64187], "mapped", [35531]], [[64188, 64188], "mapped", [35585]], [[64189, 64189], "mapped", [35582]], [[64190, 64190], "mapped", [35565]], [[64191, 64191], "mapped", [35641]], [[64192, 64192], "mapped", [35722]], [[64193, 64193], "mapped", [36104]], [[64194, 64194], "mapped", [36664]], [[64195, 64195], "mapped", [36978]], [[64196, 64196], "mapped", [37273]], [[64197, 64197], "mapped", [37494]], [[64198, 64198], "mapped", [38524]], [[64199, 64199], "mapped", [38627]], [[64200, 64200], "mapped", [38742]], [[64201, 64201], "mapped", [38875]], [[64202, 64202], "mapped", [38911]], [[64203, 64203], "mapped", [38923]], [[64204, 64204], "mapped", [38971]], [[64205, 64205], "mapped", [39698]], [[64206, 64206], "mapped", [40860]], [[64207, 64207], "mapped", [141386]], [[64208, 64208], "mapped", [141380]], [[64209, 64209], "mapped", [144341]], [[64210, 64210], "mapped", [15261]], [[64211, 64211], "mapped", [16408]], [[64212, 64212], "mapped", [16441]], [[64213, 64213], "mapped", [152137]], [[64214, 64214], "mapped", [154832]], [[64215, 64215], "mapped", [163539]], [[64216, 64216], "mapped", [40771]], [[64217, 64217], "mapped", [40846]], [[64218, 64255], "disallowed"], [[64256, 64256], "mapped", [102, 102]], [[64257, 64257], "mapped", [102, 105]], [[64258, 64258], "mapped", [102, 108]], [[64259, 64259], "mapped", [102, 102, 105]], [[64260, 64260], "mapped", [102, 102, 108]], [[64261, 64262], "mapped", [115, 116]], [[64263, 64274], "disallowed"], [[64275, 64275], "mapped", [1396, 1398]], [[64276, 64276], "mapped", [1396, 1381]], [[64277, 64277], "mapped", [1396, 1387]], [[64278, 64278], "mapped", [1406, 1398]], [[64279, 64279], "mapped", [1396, 1389]], [[64280, 64284], "disallowed"], [[64285, 64285], "mapped", [1497, 1460]], [[64286, 64286], "valid"], [[64287, 64287], "mapped", [1522, 1463]], [[64288, 64288], "mapped", [1506]], [[64289, 64289], "mapped", [1488]], [[64290, 64290], "mapped", [1491]], [[64291, 64291], "mapped", [1492]], [[64292, 64292], "mapped", [1499]], [[64293, 64293], "mapped", [1500]], [[64294, 64294], "mapped", [1501]], [[64295, 64295], "mapped", [1512]], [[64296, 64296], "mapped", [1514]], [[64297, 64297], "disallowed_STD3_mapped", [43]], [[64298, 64298], "mapped", [1513, 1473]], [[64299, 64299], "mapped", [1513, 1474]], [[64300, 64300], "mapped", [1513, 1468, 1473]], [[64301, 64301], "mapped", [1513, 1468, 1474]], [[64302, 64302], "mapped", [1488, 1463]], [[64303, 64303], "mapped", [1488, 1464]], [[64304, 64304], "mapped", [1488, 1468]], [[64305, 64305], "mapped", [1489, 1468]], [[64306, 64306], "mapped", [1490, 1468]], [[64307, 64307], "mapped", [1491, 1468]], [[64308, 64308], "mapped", [1492, 1468]], [[64309, 64309], "mapped", [1493, 1468]], [[64310, 64310], "mapped", [1494, 1468]], [[64311, 64311], "disallowed"], [[64312, 64312], "mapped", [1496, 1468]], [[64313, 64313], "mapped", [1497, 1468]], [[64314, 64314], "mapped", [1498, 1468]], [[64315, 64315], "mapped", [1499, 1468]], [[64316, 64316], "mapped", [1500, 1468]], [[64317, 64317], "disallowed"], [[64318, 64318], "mapped", [1502, 1468]], [[64319, 64319], "disallowed"], [[64320, 64320], "mapped", [1504, 1468]], [[64321, 64321], "mapped", [1505, 1468]], [[64322, 64322], "disallowed"], [[64323, 64323], "mapped", [1507, 1468]], [[64324, 64324], "mapped", [1508, 1468]], [[64325, 64325], "disallowed"], [[64326, 64326], "mapped", [1510, 1468]], [[64327, 64327], "mapped", [1511, 1468]], [[64328, 64328], "mapped", [1512, 1468]], [[64329, 64329], "mapped", [1513, 1468]], [[64330, 64330], "mapped", [1514, 1468]], [[64331, 64331], "mapped", [1493, 1465]], [[64332, 64332], "mapped", [1489, 1471]], [[64333, 64333], "mapped", [1499, 1471]], [[64334, 64334], "mapped", [1508, 1471]], [[64335, 64335], "mapped", [1488, 1500]], [[64336, 64337], "mapped", [1649]], [[64338, 64341], "mapped", [1659]], [[64342, 64345], "mapped", [1662]], [[64346, 64349], "mapped", [1664]], [[64350, 64353], "mapped", [1658]], [[64354, 64357], "mapped", [1663]], [[64358, 64361], "mapped", [1657]], [[64362, 64365], "mapped", [1700]], [[64366, 64369], "mapped", [1702]], [[64370, 64373], "mapped", [1668]], [[64374, 64377], "mapped", [1667]], [[64378, 64381], "mapped", [1670]], [[64382, 64385], "mapped", [1671]], [[64386, 64387], "mapped", [1677]], [[64388, 64389], "mapped", [1676]], [[64390, 64391], "mapped", [1678]], [[64392, 64393], "mapped", [1672]], [[64394, 64395], "mapped", [1688]], [[64396, 64397], "mapped", [1681]], [[64398, 64401], "mapped", [1705]], [[64402, 64405], "mapped", [1711]], [[64406, 64409], "mapped", [1715]], [[64410, 64413], "mapped", [1713]], [[64414, 64415], "mapped", [1722]], [[64416, 64419], "mapped", [1723]], [[64420, 64421], "mapped", [1728]], [[64422, 64425], "mapped", [1729]], [[64426, 64429], "mapped", [1726]], [[64430, 64431], "mapped", [1746]], [[64432, 64433], "mapped", [1747]], [[64434, 64449], "valid", [], "NV8"], [[64450, 64466], "disallowed"], [[64467, 64470], "mapped", [1709]], [[64471, 64472], "mapped", [1735]], [[64473, 64474], "mapped", [1734]], [[64475, 64476], "mapped", [1736]], [[64477, 64477], "mapped", [1735, 1652]], [[64478, 64479], "mapped", [1739]], [[64480, 64481], "mapped", [1733]], [[64482, 64483], "mapped", [1737]], [[64484, 64487], "mapped", [1744]], [[64488, 64489], "mapped", [1609]], [[64490, 64491], "mapped", [1574, 1575]], [[64492, 64493], "mapped", [1574, 1749]], [[64494, 64495], "mapped", [1574, 1608]], [[64496, 64497], "mapped", [1574, 1735]], [[64498, 64499], "mapped", [1574, 1734]], [[64500, 64501], "mapped", [1574, 1736]], [[64502, 64504], "mapped", [1574, 1744]], [[64505, 64507], "mapped", [1574, 1609]], [[64508, 64511], "mapped", [1740]], [[64512, 64512], "mapped", [1574, 1580]], [[64513, 64513], "mapped", [1574, 1581]], [[64514, 64514], "mapped", [1574, 1605]], [[64515, 64515], "mapped", [1574, 1609]], [[64516, 64516], "mapped", [1574, 1610]], [[64517, 64517], "mapped", [1576, 1580]], [[64518, 64518], "mapped", [1576, 1581]], [[64519, 64519], "mapped", [1576, 1582]], [[64520, 64520], "mapped", [1576, 1605]], [[64521, 64521], "mapped", [1576, 1609]], [[64522, 64522], "mapped", [1576, 1610]], [[64523, 64523], "mapped", [1578, 1580]], [[64524, 64524], "mapped", [1578, 1581]], [[64525, 64525], "mapped", [1578, 1582]], [[64526, 64526], "mapped", [1578, 1605]], [[64527, 64527], "mapped", [1578, 1609]], [[64528, 64528], "mapped", [1578, 1610]], [[64529, 64529], "mapped", [1579, 1580]], [[64530, 64530], "mapped", [1579, 1605]], [[64531, 64531], "mapped", [1579, 1609]], [[64532, 64532], "mapped", [1579, 1610]], [[64533, 64533], "mapped", [1580, 1581]], [[64534, 64534], "mapped", [1580, 1605]], [[64535, 64535], "mapped", [1581, 1580]], [[64536, 64536], "mapped", [1581, 1605]], [[64537, 64537], "mapped", [1582, 1580]], [[64538, 64538], "mapped", [1582, 1581]], [[64539, 64539], "mapped", [1582, 1605]], [[64540, 64540], "mapped", [1587, 1580]], [[64541, 64541], "mapped", [1587, 1581]], [[64542, 64542], "mapped", [1587, 1582]], [[64543, 64543], "mapped", [1587, 1605]], [[64544, 64544], "mapped", [1589, 1581]], [[64545, 64545], "mapped", [1589, 1605]], [[64546, 64546], "mapped", [1590, 1580]], [[64547, 64547], "mapped", [1590, 1581]], [[64548, 64548], "mapped", [1590, 1582]], [[64549, 64549], "mapped", [1590, 1605]], [[64550, 64550], "mapped", [1591, 1581]], [[64551, 64551], "mapped", [1591, 1605]], [[64552, 64552], "mapped", [1592, 1605]], [[64553, 64553], "mapped", [1593, 1580]], [[64554, 64554], "mapped", [1593, 1605]], [[64555, 64555], "mapped", [1594, 1580]], [[64556, 64556], "mapped", [1594, 1605]], [[64557, 64557], "mapped", [1601, 1580]], [[64558, 64558], "mapped", [1601, 1581]], [[64559, 64559], "mapped", [1601, 1582]], [[64560, 64560], "mapped", [1601, 1605]], [[64561, 64561], "mapped", [1601, 1609]], [[64562, 64562], "mapped", [1601, 1610]], [[64563, 64563], "mapped", [1602, 1581]], [[64564, 64564], "mapped", [1602, 1605]], [[64565, 64565], "mapped", [1602, 1609]], [[64566, 64566], "mapped", [1602, 1610]], [[64567, 64567], "mapped", [1603, 1575]], [[64568, 64568], "mapped", [1603, 1580]], [[64569, 64569], "mapped", [1603, 1581]], [[64570, 64570], "mapped", [1603, 1582]], [[64571, 64571], "mapped", [1603, 1604]], [[64572, 64572], "mapped", [1603, 1605]], [[64573, 64573], "mapped", [1603, 1609]], [[64574, 64574], "mapped", [1603, 1610]], [[64575, 64575], "mapped", [1604, 1580]], [[64576, 64576], "mapped", [1604, 1581]], [[64577, 64577], "mapped", [1604, 1582]], [[64578, 64578], "mapped", [1604, 1605]], [[64579, 64579], "mapped", [1604, 1609]], [[64580, 64580], "mapped", [1604, 1610]], [[64581, 64581], "mapped", [1605, 1580]], [[64582, 64582], "mapped", [1605, 1581]], [[64583, 64583], "mapped", [1605, 1582]], [[64584, 64584], "mapped", [1605, 1605]], [[64585, 64585], "mapped", [1605, 1609]], [[64586, 64586], "mapped", [1605, 1610]], [[64587, 64587], "mapped", [1606, 1580]], [[64588, 64588], "mapped", [1606, 1581]], [[64589, 64589], "mapped", [1606, 1582]], [[64590, 64590], "mapped", [1606, 1605]], [[64591, 64591], "mapped", [1606, 1609]], [[64592, 64592], "mapped", [1606, 1610]], [[64593, 64593], "mapped", [1607, 1580]], [[64594, 64594], "mapped", [1607, 1605]], [[64595, 64595], "mapped", [1607, 1609]], [[64596, 64596], "mapped", [1607, 1610]], [[64597, 64597], "mapped", [1610, 1580]], [[64598, 64598], "mapped", [1610, 1581]], [[64599, 64599], "mapped", [1610, 1582]], [[64600, 64600], "mapped", [1610, 1605]], [[64601, 64601], "mapped", [1610, 1609]], [[64602, 64602], "mapped", [1610, 1610]], [[64603, 64603], "mapped", [1584, 1648]], [[64604, 64604], "mapped", [1585, 1648]], [[64605, 64605], "mapped", [1609, 1648]], [[64606, 64606], "disallowed_STD3_mapped", [32, 1612, 1617]], [[64607, 64607], "disallowed_STD3_mapped", [32, 1613, 1617]], [[64608, 64608], "disallowed_STD3_mapped", [32, 1614, 1617]], [[64609, 64609], "disallowed_STD3_mapped", [32, 1615, 1617]], [[64610, 64610], "disallowed_STD3_mapped", [32, 1616, 1617]], [[64611, 64611], "disallowed_STD3_mapped", [32, 1617, 1648]], [[64612, 64612], "mapped", [1574, 1585]], [[64613, 64613], "mapped", [1574, 1586]], [[64614, 64614], "mapped", [1574, 1605]], [[64615, 64615], "mapped", [1574, 1606]], [[64616, 64616], "mapped", [1574, 1609]], [[64617, 64617], "mapped", [1574, 1610]], [[64618, 64618], "mapped", [1576, 1585]], [[64619, 64619], "mapped", [1576, 1586]], [[64620, 64620], "mapped", [1576, 1605]], [[64621, 64621], "mapped", [1576, 1606]], [[64622, 64622], "mapped", [1576, 1609]], [[64623, 64623], "mapped", [1576, 1610]], [[64624, 64624], "mapped", [1578, 1585]], [[64625, 64625], "mapped", [1578, 1586]], [[64626, 64626], "mapped", [1578, 1605]], [[64627, 64627], "mapped", [1578, 1606]], [[64628, 64628], "mapped", [1578, 1609]], [[64629, 64629], "mapped", [1578, 1610]], [[64630, 64630], "mapped", [1579, 1585]], [[64631, 64631], "mapped", [1579, 1586]], [[64632, 64632], "mapped", [1579, 1605]], [[64633, 64633], "mapped", [1579, 1606]], [[64634, 64634], "mapped", [1579, 1609]], [[64635, 64635], "mapped", [1579, 1610]], [[64636, 64636], "mapped", [1601, 1609]], [[64637, 64637], "mapped", [1601, 1610]], [[64638, 64638], "mapped", [1602, 1609]], [[64639, 64639], "mapped", [1602, 1610]], [[64640, 64640], "mapped", [1603, 1575]], [[64641, 64641], "mapped", [1603, 1604]], [[64642, 64642], "mapped", [1603, 1605]], [[64643, 64643], "mapped", [1603, 1609]], [[64644, 64644], "mapped", [1603, 1610]], [[64645, 64645], "mapped", [1604, 1605]], [[64646, 64646], "mapped", [1604, 1609]], [[64647, 64647], "mapped", [1604, 1610]], [[64648, 64648], "mapped", [1605, 1575]], [[64649, 64649], "mapped", [1605, 1605]], [[64650, 64650], "mapped", [1606, 1585]], [[64651, 64651], "mapped", [1606, 1586]], [[64652, 64652], "mapped", [1606, 1605]], [[64653, 64653], "mapped", [1606, 1606]], [[64654, 64654], "mapped", [1606, 1609]], [[64655, 64655], "mapped", [1606, 1610]], [[64656, 64656], "mapped", [1609, 1648]], [[64657, 64657], "mapped", [1610, 1585]], [[64658, 64658], "mapped", [1610, 1586]], [[64659, 64659], "mapped", [1610, 1605]], [[64660, 64660], "mapped", [1610, 1606]], [[64661, 64661], "mapped", [1610, 1609]], [[64662, 64662], "mapped", [1610, 1610]], [[64663, 64663], "mapped", [1574, 1580]], [[64664, 64664], "mapped", [1574, 1581]], [[64665, 64665], "mapped", [1574, 1582]], [[64666, 64666], "mapped", [1574, 1605]], [[64667, 64667], "mapped", [1574, 1607]], [[64668, 64668], "mapped", [1576, 1580]], [[64669, 64669], "mapped", [1576, 1581]], [[64670, 64670], "mapped", [1576, 1582]], [[64671, 64671], "mapped", [1576, 1605]], [[64672, 64672], "mapped", [1576, 1607]], [[64673, 64673], "mapped", [1578, 1580]], [[64674, 64674], "mapped", [1578, 1581]], [[64675, 64675], "mapped", [1578, 1582]], [[64676, 64676], "mapped", [1578, 1605]], [[64677, 64677], "mapped", [1578, 1607]], [[64678, 64678], "mapped", [1579, 1605]], [[64679, 64679], "mapped", [1580, 1581]], [[64680, 64680], "mapped", [1580, 1605]], [[64681, 64681], "mapped", [1581, 1580]], [[64682, 64682], "mapped", [1581, 1605]], [[64683, 64683], "mapped", [1582, 1580]], [[64684, 64684], "mapped", [1582, 1605]], [[64685, 64685], "mapped", [1587, 1580]], [[64686, 64686], "mapped", [1587, 1581]], [[64687, 64687], "mapped", [1587, 1582]], [[64688, 64688], "mapped", [1587, 1605]], [[64689, 64689], "mapped", [1589, 1581]], [[64690, 64690], "mapped", [1589, 1582]], [[64691, 64691], "mapped", [1589, 1605]], [[64692, 64692], "mapped", [1590, 1580]], [[64693, 64693], "mapped", [1590, 1581]], [[64694, 64694], "mapped", [1590, 1582]], [[64695, 64695], "mapped", [1590, 1605]], [[64696, 64696], "mapped", [1591, 1581]], [[64697, 64697], "mapped", [1592, 1605]], [[64698, 64698], "mapped", [1593, 1580]], [[64699, 64699], "mapped", [1593, 1605]], [[64700, 64700], "mapped", [1594, 1580]], [[64701, 64701], "mapped", [1594, 1605]], [[64702, 64702], "mapped", [1601, 1580]], [[64703, 64703], "mapped", [1601, 1581]], [[64704, 64704], "mapped", [1601, 1582]], [[64705, 64705], "mapped", [1601, 1605]], [[64706, 64706], "mapped", [1602, 1581]], [[64707, 64707], "mapped", [1602, 1605]], [[64708, 64708], "mapped", [1603, 1580]], [[64709, 64709], "mapped", [1603, 1581]], [[64710, 64710], "mapped", [1603, 1582]], [[64711, 64711], "mapped", [1603, 1604]], [[64712, 64712], "mapped", [1603, 1605]], [[64713, 64713], "mapped", [1604, 1580]], [[64714, 64714], "mapped", [1604, 1581]], [[64715, 64715], "mapped", [1604, 1582]], [[64716, 64716], "mapped", [1604, 1605]], [[64717, 64717], "mapped", [1604, 1607]], [[64718, 64718], "mapped", [1605, 1580]], [[64719, 64719], "mapped", [1605, 1581]], [[64720, 64720], "mapped", [1605, 1582]], [[64721, 64721], "mapped", [1605, 1605]], [[64722, 64722], "mapped", [1606, 1580]], [[64723, 64723], "mapped", [1606, 1581]], [[64724, 64724], "mapped", [1606, 1582]], [[64725, 64725], "mapped", [1606, 1605]], [[64726, 64726], "mapped", [1606, 1607]], [[64727, 64727], "mapped", [1607, 1580]], [[64728, 64728], "mapped", [1607, 1605]], [[64729, 64729], "mapped", [1607, 1648]], [[64730, 64730], "mapped", [1610, 1580]], [[64731, 64731], "mapped", [1610, 1581]], [[64732, 64732], "mapped", [1610, 1582]], [[64733, 64733], "mapped", [1610, 1605]], [[64734, 64734], "mapped", [1610, 1607]], [[64735, 64735], "mapped", [1574, 1605]], [[64736, 64736], "mapped", [1574, 1607]], [[64737, 64737], "mapped", [1576, 1605]], [[64738, 64738], "mapped", [1576, 1607]], [[64739, 64739], "mapped", [1578, 1605]], [[64740, 64740], "mapped", [1578, 1607]], [[64741, 64741], "mapped", [1579, 1605]], [[64742, 64742], "mapped", [1579, 1607]], [[64743, 64743], "mapped", [1587, 1605]], [[64744, 64744], "mapped", [1587, 1607]], [[64745, 64745], "mapped", [1588, 1605]], [[64746, 64746], "mapped", [1588, 1607]], [[64747, 64747], "mapped", [1603, 1604]], [[64748, 64748], "mapped", [1603, 1605]], [[64749, 64749], "mapped", [1604, 1605]], [[64750, 64750], "mapped", [1606, 1605]], [[64751, 64751], "mapped", [1606, 1607]], [[64752, 64752], "mapped", [1610, 1605]], [[64753, 64753], "mapped", [1610, 1607]], [[64754, 64754], "mapped", [1600, 1614, 1617]], [[64755, 64755], "mapped", [1600, 1615, 1617]], [[64756, 64756], "mapped", [1600, 1616, 1617]], [[64757, 64757], "mapped", [1591, 1609]], [[64758, 64758], "mapped", [1591, 1610]], [[64759, 64759], "mapped", [1593, 1609]], [[64760, 64760], "mapped", [1593, 1610]], [[64761, 64761], "mapped", [1594, 1609]], [[64762, 64762], "mapped", [1594, 1610]], [[64763, 64763], "mapped", [1587, 1609]], [[64764, 64764], "mapped", [1587, 1610]], [[64765, 64765], "mapped", [1588, 1609]], [[64766, 64766], "mapped", [1588, 1610]], [[64767, 64767], "mapped", [1581, 1609]], [[64768, 64768], "mapped", [1581, 1610]], [[64769, 64769], "mapped", [1580, 1609]], [[64770, 64770], "mapped", [1580, 1610]], [[64771, 64771], "mapped", [1582, 1609]], [[64772, 64772], "mapped", [1582, 1610]], [[64773, 64773], "mapped", [1589, 1609]], [[64774, 64774], "mapped", [1589, 1610]], [[64775, 64775], "mapped", [1590, 1609]], [[64776, 64776], "mapped", [1590, 1610]], [[64777, 64777], "mapped", [1588, 1580]], [[64778, 64778], "mapped", [1588, 1581]], [[64779, 64779], "mapped", [1588, 1582]], [[64780, 64780], "mapped", [1588, 1605]], [[64781, 64781], "mapped", [1588, 1585]], [[64782, 64782], "mapped", [1587, 1585]], [[64783, 64783], "mapped", [1589, 1585]], [[64784, 64784], "mapped", [1590, 1585]], [[64785, 64785], "mapped", [1591, 1609]], [[64786, 64786], "mapped", [1591, 1610]], [[64787, 64787], "mapped", [1593, 1609]], [[64788, 64788], "mapped", [1593, 1610]], [[64789, 64789], "mapped", [1594, 1609]], [[64790, 64790], "mapped", [1594, 1610]], [[64791, 64791], "mapped", [1587, 1609]], [[64792, 64792], "mapped", [1587, 1610]], [[64793, 64793], "mapped", [1588, 1609]], [[64794, 64794], "mapped", [1588, 1610]], [[64795, 64795], "mapped", [1581, 1609]], [[64796, 64796], "mapped", [1581, 1610]], [[64797, 64797], "mapped", [1580, 1609]], [[64798, 64798], "mapped", [1580, 1610]], [[64799, 64799], "mapped", [1582, 1609]], [[64800, 64800], "mapped", [1582, 1610]], [[64801, 64801], "mapped", [1589, 1609]], [[64802, 64802], "mapped", [1589, 1610]], [[64803, 64803], "mapped", [1590, 1609]], [[64804, 64804], "mapped", [1590, 1610]], [[64805, 64805], "mapped", [1588, 1580]], [[64806, 64806], "mapped", [1588, 1581]], [[64807, 64807], "mapped", [1588, 1582]], [[64808, 64808], "mapped", [1588, 1605]], [[64809, 64809], "mapped", [1588, 1585]], [[64810, 64810], "mapped", [1587, 1585]], [[64811, 64811], "mapped", [1589, 1585]], [[64812, 64812], "mapped", [1590, 1585]], [[64813, 64813], "mapped", [1588, 1580]], [[64814, 64814], "mapped", [1588, 1581]], [[64815, 64815], "mapped", [1588, 1582]], [[64816, 64816], "mapped", [1588, 1605]], [[64817, 64817], "mapped", [1587, 1607]], [[64818, 64818], "mapped", [1588, 1607]], [[64819, 64819], "mapped", [1591, 1605]], [[64820, 64820], "mapped", [1587, 1580]], [[64821, 64821], "mapped", [1587, 1581]], [[64822, 64822], "mapped", [1587, 1582]], [[64823, 64823], "mapped", [1588, 1580]], [[64824, 64824], "mapped", [1588, 1581]], [[64825, 64825], "mapped", [1588, 1582]], [[64826, 64826], "mapped", [1591, 1605]], [[64827, 64827], "mapped", [1592, 1605]], [[64828, 64829], "mapped", [1575, 1611]], [[64830, 64831], "valid", [], "NV8"], [[64832, 64847], "disallowed"], [[64848, 64848], "mapped", [1578, 1580, 1605]], [[64849, 64850], "mapped", [1578, 1581, 1580]], [[64851, 64851], "mapped", [1578, 1581, 1605]], [[64852, 64852], "mapped", [1578, 1582, 1605]], [[64853, 64853], "mapped", [1578, 1605, 1580]], [[64854, 64854], "mapped", [1578, 1605, 1581]], [[64855, 64855], "mapped", [1578, 1605, 1582]], [[64856, 64857], "mapped", [1580, 1605, 1581]], [[64858, 64858], "mapped", [1581, 1605, 1610]], [[64859, 64859], "mapped", [1581, 1605, 1609]], [[64860, 64860], "mapped", [1587, 1581, 1580]], [[64861, 64861], "mapped", [1587, 1580, 1581]], [[64862, 64862], "mapped", [1587, 1580, 1609]], [[64863, 64864], "mapped", [1587, 1605, 1581]], [[64865, 64865], "mapped", [1587, 1605, 1580]], [[64866, 64867], "mapped", [1587, 1605, 1605]], [[64868, 64869], "mapped", [1589, 1581, 1581]], [[64870, 64870], "mapped", [1589, 1605, 1605]], [[64871, 64872], "mapped", [1588, 1581, 1605]], [[64873, 64873], "mapped", [1588, 1580, 1610]], [[64874, 64875], "mapped", [1588, 1605, 1582]], [[64876, 64877], "mapped", [1588, 1605, 1605]], [[64878, 64878], "mapped", [1590, 1581, 1609]], [[64879, 64880], "mapped", [1590, 1582, 1605]], [[64881, 64882], "mapped", [1591, 1605, 1581]], [[64883, 64883], "mapped", [1591, 1605, 1605]], [[64884, 64884], "mapped", [1591, 1605, 1610]], [[64885, 64885], "mapped", [1593, 1580, 1605]], [[64886, 64887], "mapped", [1593, 1605, 1605]], [[64888, 64888], "mapped", [1593, 1605, 1609]], [[64889, 64889], "mapped", [1594, 1605, 1605]], [[64890, 64890], "mapped", [1594, 1605, 1610]], [[64891, 64891], "mapped", [1594, 1605, 1609]], [[64892, 64893], "mapped", [1601, 1582, 1605]], [[64894, 64894], "mapped", [1602, 1605, 1581]], [[64895, 64895], "mapped", [1602, 1605, 1605]], [[64896, 64896], "mapped", [1604, 1581, 1605]], [[64897, 64897], "mapped", [1604, 1581, 1610]], [[64898, 64898], "mapped", [1604, 1581, 1609]], [[64899, 64900], "mapped", [1604, 1580, 1580]], [[64901, 64902], "mapped", [1604, 1582, 1605]], [[64903, 64904], "mapped", [1604, 1605, 1581]], [[64905, 64905], "mapped", [1605, 1581, 1580]], [[64906, 64906], "mapped", [1605, 1581, 1605]], [[64907, 64907], "mapped", [1605, 1581, 1610]], [[64908, 64908], "mapped", [1605, 1580, 1581]], [[64909, 64909], "mapped", [1605, 1580, 1605]], [[64910, 64910], "mapped", [1605, 1582, 1580]], [[64911, 64911], "mapped", [1605, 1582, 1605]], [[64912, 64913], "disallowed"], [[64914, 64914], "mapped", [1605, 1580, 1582]], [[64915, 64915], "mapped", [1607, 1605, 1580]], [[64916, 64916], "mapped", [1607, 1605, 1605]], [[64917, 64917], "mapped", [1606, 1581, 1605]], [[64918, 64918], "mapped", [1606, 1581, 1609]], [[64919, 64920], "mapped", [1606, 1580, 1605]], [[64921, 64921], "mapped", [1606, 1580, 1609]], [[64922, 64922], "mapped", [1606, 1605, 1610]], [[64923, 64923], "mapped", [1606, 1605, 1609]], [[64924, 64925], "mapped", [1610, 1605, 1605]], [[64926, 64926], "mapped", [1576, 1582, 1610]], [[64927, 64927], "mapped", [1578, 1580, 1610]], [[64928, 64928], "mapped", [1578, 1580, 1609]], [[64929, 64929], "mapped", [1578, 1582, 1610]], [[64930, 64930], "mapped", [1578, 1582, 1609]], [[64931, 64931], "mapped", [1578, 1605, 1610]], [[64932, 64932], "mapped", [1578, 1605, 1609]], [[64933, 64933], "mapped", [1580, 1605, 1610]], [[64934, 64934], "mapped", [1580, 1581, 1609]], [[64935, 64935], "mapped", [1580, 1605, 1609]], [[64936, 64936], "mapped", [1587, 1582, 1609]], [[64937, 64937], "mapped", [1589, 1581, 1610]], [[64938, 64938], "mapped", [1588, 1581, 1610]], [[64939, 64939], "mapped", [1590, 1581, 1610]], [[64940, 64940], "mapped", [1604, 1580, 1610]], [[64941, 64941], "mapped", [1604, 1605, 1610]], [[64942, 64942], "mapped", [1610, 1581, 1610]], [[64943, 64943], "mapped", [1610, 1580, 1610]], [[64944, 64944], "mapped", [1610, 1605, 1610]], [[64945, 64945], "mapped", [1605, 1605, 1610]], [[64946, 64946], "mapped", [1602, 1605, 1610]], [[64947, 64947], "mapped", [1606, 1581, 1610]], [[64948, 64948], "mapped", [1602, 1605, 1581]], [[64949, 64949], "mapped", [1604, 1581, 1605]], [[64950, 64950], "mapped", [1593, 1605, 1610]], [[64951, 64951], "mapped", [1603, 1605, 1610]], [[64952, 64952], "mapped", [1606, 1580, 1581]], [[64953, 64953], "mapped", [1605, 1582, 1610]], [[64954, 64954], "mapped", [1604, 1580, 1605]], [[64955, 64955], "mapped", [1603, 1605, 1605]], [[64956, 64956], "mapped", [1604, 1580, 1605]], [[64957, 64957], "mapped", [1606, 1580, 1581]], [[64958, 64958], "mapped", [1580, 1581, 1610]], [[64959, 64959], "mapped", [1581, 1580, 1610]], [[64960, 64960], "mapped", [1605, 1580, 1610]], [[64961, 64961], "mapped", [1601, 1605, 1610]], [[64962, 64962], "mapped", [1576, 1581, 1610]], [[64963, 64963], "mapped", [1603, 1605, 1605]], [[64964, 64964], "mapped", [1593, 1580, 1605]], [[64965, 64965], "mapped", [1589, 1605, 1605]], [[64966, 64966], "mapped", [1587, 1582, 1610]], [[64967, 64967], "mapped", [1606, 1580, 1610]], [[64968, 64975], "disallowed"], [[64976, 65007], "disallowed"], [[65008, 65008], "mapped", [1589, 1604, 1746]], [[65009, 65009], "mapped", [1602, 1604, 1746]], [[65010, 65010], "mapped", [1575, 1604, 1604, 1607]], [[65011, 65011], "mapped", [1575, 1603, 1576, 1585]], [[65012, 65012], "mapped", [1605, 1581, 1605, 1583]], [[65013, 65013], "mapped", [1589, 1604, 1593, 1605]], [[65014, 65014], "mapped", [1585, 1587, 1608, 1604]], [[65015, 65015], "mapped", [1593, 1604, 1610, 1607]], [[65016, 65016], "mapped", [1608, 1587, 1604, 1605]], [[65017, 65017], "mapped", [1589, 1604, 1609]], [[65018, 65018], "disallowed_STD3_mapped", [1589, 1604, 1609, 32, 1575, 1604, 1604, 1607, 32, 1593, 1604, 1610, 1607, 32, 1608, 1587, 1604, 1605]], [[65019, 65019], "disallowed_STD3_mapped", [1580, 1604, 32, 1580, 1604, 1575, 1604, 1607]], [[65020, 65020], "mapped", [1585, 1740, 1575, 1604]], [[65021, 65021], "valid", [], "NV8"], [[65022, 65023], "disallowed"], [[65024, 65039], "ignored"], [[65040, 65040], "disallowed_STD3_mapped", [44]], [[65041, 65041], "mapped", [12289]], [[65042, 65042], "disallowed"], [[65043, 65043], "disallowed_STD3_mapped", [58]], [[65044, 65044], "disallowed_STD3_mapped", [59]], [[65045, 65045], "disallowed_STD3_mapped", [33]], [[65046, 65046], "disallowed_STD3_mapped", [63]], [[65047, 65047], "mapped", [12310]], [[65048, 65048], "mapped", [12311]], [[65049, 65049], "disallowed"], [[65050, 65055], "disallowed"], [[65056, 65059], "valid"], [[65060, 65062], "valid"], [[65063, 65069], "valid"], [[65070, 65071], "valid"], [[65072, 65072], "disallowed"], [[65073, 65073], "mapped", [8212]], [[65074, 65074], "mapped", [8211]], [[65075, 65076], "disallowed_STD3_mapped", [95]], [[65077, 65077], "disallowed_STD3_mapped", [40]], [[65078, 65078], "disallowed_STD3_mapped", [41]], [[65079, 65079], "disallowed_STD3_mapped", [123]], [[65080, 65080], "disallowed_STD3_mapped", [125]], [[65081, 65081], "mapped", [12308]], [[65082, 65082], "mapped", [12309]], [[65083, 65083], "mapped", [12304]], [[65084, 65084], "mapped", [12305]], [[65085, 65085], "mapped", [12298]], [[65086, 65086], "mapped", [12299]], [[65087, 65087], "mapped", [12296]], [[65088, 65088], "mapped", [12297]], [[65089, 65089], "mapped", [12300]], [[65090, 65090], "mapped", [12301]], [[65091, 65091], "mapped", [12302]], [[65092, 65092], "mapped", [12303]], [[65093, 65094], "valid", [], "NV8"], [[65095, 65095], "disallowed_STD3_mapped", [91]], [[65096, 65096], "disallowed_STD3_mapped", [93]], [[65097, 65100], "disallowed_STD3_mapped", [32, 773]], [[65101, 65103], "disallowed_STD3_mapped", [95]], [[65104, 65104], "disallowed_STD3_mapped", [44]], [[65105, 65105], "mapped", [12289]], [[65106, 65106], "disallowed"], [[65107, 65107], "disallowed"], [[65108, 65108], "disallowed_STD3_mapped", [59]], [[65109, 65109], "disallowed_STD3_mapped", [58]], [[65110, 65110], "disallowed_STD3_mapped", [63]], [[65111, 65111], "disallowed_STD3_mapped", [33]], [[65112, 65112], "mapped", [8212]], [[65113, 65113], "disallowed_STD3_mapped", [40]], [[65114, 65114], "disallowed_STD3_mapped", [41]], [[65115, 65115], "disallowed_STD3_mapped", [123]], [[65116, 65116], "disallowed_STD3_mapped", [125]], [[65117, 65117], "mapped", [12308]], [[65118, 65118], "mapped", [12309]], [[65119, 65119], "disallowed_STD3_mapped", [35]], [[65120, 65120], "disallowed_STD3_mapped", [38]], [[65121, 65121], "disallowed_STD3_mapped", [42]], [[65122, 65122], "disallowed_STD3_mapped", [43]], [[65123, 65123], "mapped", [45]], [[65124, 65124], "disallowed_STD3_mapped", [60]], [[65125, 65125], "disallowed_STD3_mapped", [62]], [[65126, 65126], "disallowed_STD3_mapped", [61]], [[65127, 65127], "disallowed"], [[65128, 65128], "disallowed_STD3_mapped", [92]], [[65129, 65129], "disallowed_STD3_mapped", [36]], [[65130, 65130], "disallowed_STD3_mapped", [37]], [[65131, 65131], "disallowed_STD3_mapped", [64]], [[65132, 65135], "disallowed"], [[65136, 65136], "disallowed_STD3_mapped", [32, 1611]], [[65137, 65137], "mapped", [1600, 1611]], [[65138, 65138], "disallowed_STD3_mapped", [32, 1612]], [[65139, 65139], "valid"], [[65140, 65140], "disallowed_STD3_mapped", [32, 1613]], [[65141, 65141], "disallowed"], [[65142, 65142], "disallowed_STD3_mapped", [32, 1614]], [[65143, 65143], "mapped", [1600, 1614]], [[65144, 65144], "disallowed_STD3_mapped", [32, 1615]], [[65145, 65145], "mapped", [1600, 1615]], [[65146, 65146], "disallowed_STD3_mapped", [32, 1616]], [[65147, 65147], "mapped", [1600, 1616]], [[65148, 65148], "disallowed_STD3_mapped", [32, 1617]], [[65149, 65149], "mapped", [1600, 1617]], [[65150, 65150], "disallowed_STD3_mapped", [32, 1618]], [[65151, 65151], "mapped", [1600, 1618]], [[65152, 65152], "mapped", [1569]], [[65153, 65154], "mapped", [1570]], [[65155, 65156], "mapped", [1571]], [[65157, 65158], "mapped", [1572]], [[65159, 65160], "mapped", [1573]], [[65161, 65164], "mapped", [1574]], [[65165, 65166], "mapped", [1575]], [[65167, 65170], "mapped", [1576]], [[65171, 65172], "mapped", [1577]], [[65173, 65176], "mapped", [1578]], [[65177, 65180], "mapped", [1579]], [[65181, 65184], "mapped", [1580]], [[65185, 65188], "mapped", [1581]], [[65189, 65192], "mapped", [1582]], [[65193, 65194], "mapped", [1583]], [[65195, 65196], "mapped", [1584]], [[65197, 65198], "mapped", [1585]], [[65199, 65200], "mapped", [1586]], [[65201, 65204], "mapped", [1587]], [[65205, 65208], "mapped", [1588]], [[65209, 65212], "mapped", [1589]], [[65213, 65216], "mapped", [1590]], [[65217, 65220], "mapped", [1591]], [[65221, 65224], "mapped", [1592]], [[65225, 65228], "mapped", [1593]], [[65229, 65232], "mapped", [1594]], [[65233, 65236], "mapped", [1601]], [[65237, 65240], "mapped", [1602]], [[65241, 65244], "mapped", [1603]], [[65245, 65248], "mapped", [1604]], [[65249, 65252], "mapped", [1605]], [[65253, 65256], "mapped", [1606]], [[65257, 65260], "mapped", [1607]], [[65261, 65262], "mapped", [1608]], [[65263, 65264], "mapped", [1609]], [[65265, 65268], "mapped", [1610]], [[65269, 65270], "mapped", [1604, 1570]], [[65271, 65272], "mapped", [1604, 1571]], [[65273, 65274], "mapped", [1604, 1573]], [[65275, 65276], "mapped", [1604, 1575]], [[65277, 65278], "disallowed"], [[65279, 65279], "ignored"], [[65280, 65280], "disallowed"], [[65281, 65281], "disallowed_STD3_mapped", [33]], [[65282, 65282], "disallowed_STD3_mapped", [34]], [[65283, 65283], "disallowed_STD3_mapped", [35]], [[65284, 65284], "disallowed_STD3_mapped", [36]], [[65285, 65285], "disallowed_STD3_mapped", [37]], [[65286, 65286], "disallowed_STD3_mapped", [38]], [[65287, 65287], "disallowed_STD3_mapped", [39]], [[65288, 65288], "disallowed_STD3_mapped", [40]], [[65289, 65289], "disallowed_STD3_mapped", [41]], [[65290, 65290], "disallowed_STD3_mapped", [42]], [[65291, 65291], "disallowed_STD3_mapped", [43]], [[65292, 65292], "disallowed_STD3_mapped", [44]], [[65293, 65293], "mapped", [45]], [[65294, 65294], "mapped", [46]], [[65295, 65295], "disallowed_STD3_mapped", [47]], [[65296, 65296], "mapped", [48]], [[65297, 65297], "mapped", [49]], [[65298, 65298], "mapped", [50]], [[65299, 65299], "mapped", [51]], [[65300, 65300], "mapped", [52]], [[65301, 65301], "mapped", [53]], [[65302, 65302], "mapped", [54]], [[65303, 65303], "mapped", [55]], [[65304, 65304], "mapped", [56]], [[65305, 65305], "mapped", [57]], [[65306, 65306], "disallowed_STD3_mapped", [58]], [[65307, 65307], "disallowed_STD3_mapped", [59]], [[65308, 65308], "disallowed_STD3_mapped", [60]], [[65309, 65309], "disallowed_STD3_mapped", [61]], [[65310, 65310], "disallowed_STD3_mapped", [62]], [[65311, 65311], "disallowed_STD3_mapped", [63]], [[65312, 65312], "disallowed_STD3_mapped", [64]], [[65313, 65313], "mapped", [97]], [[65314, 65314], "mapped", [98]], [[65315, 65315], "mapped", [99]], [[65316, 65316], "mapped", [100]], [[65317, 65317], "mapped", [101]], [[65318, 65318], "mapped", [102]], [[65319, 65319], "mapped", [103]], [[65320, 65320], "mapped", [104]], [[65321, 65321], "mapped", [105]], [[65322, 65322], "mapped", [106]], [[65323, 65323], "mapped", [107]], [[65324, 65324], "mapped", [108]], [[65325, 65325], "mapped", [109]], [[65326, 65326], "mapped", [110]], [[65327, 65327], "mapped", [111]], [[65328, 65328], "mapped", [112]], [[65329, 65329], "mapped", [113]], [[65330, 65330], "mapped", [114]], [[65331, 65331], "mapped", [115]], [[65332, 65332], "mapped", [116]], [[65333, 65333], "mapped", [117]], [[65334, 65334], "mapped", [118]], [[65335, 65335], "mapped", [119]], [[65336, 65336], "mapped", [120]], [[65337, 65337], "mapped", [121]], [[65338, 65338], "mapped", [122]], [[65339, 65339], "disallowed_STD3_mapped", [91]], [[65340, 65340], "disallowed_STD3_mapped", [92]], [[65341, 65341], "disallowed_STD3_mapped", [93]], [[65342, 65342], "disallowed_STD3_mapped", [94]], [[65343, 65343], "disallowed_STD3_mapped", [95]], [[65344, 65344], "disallowed_STD3_mapped", [96]], [[65345, 65345], "mapped", [97]], [[65346, 65346], "mapped", [98]], [[65347, 65347], "mapped", [99]], [[65348, 65348], "mapped", [100]], [[65349, 65349], "mapped", [101]], [[65350, 65350], "mapped", [102]], [[65351, 65351], "mapped", [103]], [[65352, 65352], "mapped", [104]], [[65353, 65353], "mapped", [105]], [[65354, 65354], "mapped", [106]], [[65355, 65355], "mapped", [107]], [[65356, 65356], "mapped", [108]], [[65357, 65357], "mapped", [109]], [[65358, 65358], "mapped", [110]], [[65359, 65359], "mapped", [111]], [[65360, 65360], "mapped", [112]], [[65361, 65361], "mapped", [113]], [[65362, 65362], "mapped", [114]], [[65363, 65363], "mapped", [115]], [[65364, 65364], "mapped", [116]], [[65365, 65365], "mapped", [117]], [[65366, 65366], "mapped", [118]], [[65367, 65367], "mapped", [119]], [[65368, 65368], "mapped", [120]], [[65369, 65369], "mapped", [121]], [[65370, 65370], "mapped", [122]], [[65371, 65371], "disallowed_STD3_mapped", [123]], [[65372, 65372], "disallowed_STD3_mapped", [124]], [[65373, 65373], "disallowed_STD3_mapped", [125]], [[65374, 65374], "disallowed_STD3_mapped", [126]], [[65375, 65375], "mapped", [10629]], [[65376, 65376], "mapped", [10630]], [[65377, 65377], "mapped", [46]], [[65378, 65378], "mapped", [12300]], [[65379, 65379], "mapped", [12301]], [[65380, 65380], "mapped", [12289]], [[65381, 65381], "mapped", [12539]], [[65382, 65382], "mapped", [12530]], [[65383, 65383], "mapped", [12449]], [[65384, 65384], "mapped", [12451]], [[65385, 65385], "mapped", [12453]], [[65386, 65386], "mapped", [12455]], [[65387, 65387], "mapped", [12457]], [[65388, 65388], "mapped", [12515]], [[65389, 65389], "mapped", [12517]], [[65390, 65390], "mapped", [12519]], [[65391, 65391], "mapped", [12483]], [[65392, 65392], "mapped", [12540]], [[65393, 65393], "mapped", [12450]], [[65394, 65394], "mapped", [12452]], [[65395, 65395], "mapped", [12454]], [[65396, 65396], "mapped", [12456]], [[65397, 65397], "mapped", [12458]], [[65398, 65398], "mapped", [12459]], [[65399, 65399], "mapped", [12461]], [[65400, 65400], "mapped", [12463]], [[65401, 65401], "mapped", [12465]], [[65402, 65402], "mapped", [12467]], [[65403, 65403], "mapped", [12469]], [[65404, 65404], "mapped", [12471]], [[65405, 65405], "mapped", [12473]], [[65406, 65406], "mapped", [12475]], [[65407, 65407], "mapped", [12477]], [[65408, 65408], "mapped", [12479]], [[65409, 65409], "mapped", [12481]], [[65410, 65410], "mapped", [12484]], [[65411, 65411], "mapped", [12486]], [[65412, 65412], "mapped", [12488]], [[65413, 65413], "mapped", [12490]], [[65414, 65414], "mapped", [12491]], [[65415, 65415], "mapped", [12492]], [[65416, 65416], "mapped", [12493]], [[65417, 65417], "mapped", [12494]], [[65418, 65418], "mapped", [12495]], [[65419, 65419], "mapped", [12498]], [[65420, 65420], "mapped", [12501]], [[65421, 65421], "mapped", [12504]], [[65422, 65422], "mapped", [12507]], [[65423, 65423], "mapped", [12510]], [[65424, 65424], "mapped", [12511]], [[65425, 65425], "mapped", [12512]], [[65426, 65426], "mapped", [12513]], [[65427, 65427], "mapped", [12514]], [[65428, 65428], "mapped", [12516]], [[65429, 65429], "mapped", [12518]], [[65430, 65430], "mapped", [12520]], [[65431, 65431], "mapped", [12521]], [[65432, 65432], "mapped", [12522]], [[65433, 65433], "mapped", [12523]], [[65434, 65434], "mapped", [12524]], [[65435, 65435], "mapped", [12525]], [[65436, 65436], "mapped", [12527]], [[65437, 65437], "mapped", [12531]], [[65438, 65438], "mapped", [12441]], [[65439, 65439], "mapped", [12442]], [[65440, 65440], "disallowed"], [[65441, 65441], "mapped", [4352]], [[65442, 65442], "mapped", [4353]], [[65443, 65443], "mapped", [4522]], [[65444, 65444], "mapped", [4354]], [[65445, 65445], "mapped", [4524]], [[65446, 65446], "mapped", [4525]], [[65447, 65447], "mapped", [4355]], [[65448, 65448], "mapped", [4356]], [[65449, 65449], "mapped", [4357]], [[65450, 65450], "mapped", [4528]], [[65451, 65451], "mapped", [4529]], [[65452, 65452], "mapped", [4530]], [[65453, 65453], "mapped", [4531]], [[65454, 65454], "mapped", [4532]], [[65455, 65455], "mapped", [4533]], [[65456, 65456], "mapped", [4378]], [[65457, 65457], "mapped", [4358]], [[65458, 65458], "mapped", [4359]], [[65459, 65459], "mapped", [4360]], [[65460, 65460], "mapped", [4385]], [[65461, 65461], "mapped", [4361]], [[65462, 65462], "mapped", [4362]], [[65463, 65463], "mapped", [4363]], [[65464, 65464], "mapped", [4364]], [[65465, 65465], "mapped", [4365]], [[65466, 65466], "mapped", [4366]], [[65467, 65467], "mapped", [4367]], [[65468, 65468], "mapped", [4368]], [[65469, 65469], "mapped", [4369]], [[65470, 65470], "mapped", [4370]], [[65471, 65473], "disallowed"], [[65474, 65474], "mapped", [4449]], [[65475, 65475], "mapped", [4450]], [[65476, 65476], "mapped", [4451]], [[65477, 65477], "mapped", [4452]], [[65478, 65478], "mapped", [4453]], [[65479, 65479], "mapped", [4454]], [[65480, 65481], "disallowed"], [[65482, 65482], "mapped", [4455]], [[65483, 65483], "mapped", [4456]], [[65484, 65484], "mapped", [4457]], [[65485, 65485], "mapped", [4458]], [[65486, 65486], "mapped", [4459]], [[65487, 65487], "mapped", [4460]], [[65488, 65489], "disallowed"], [[65490, 65490], "mapped", [4461]], [[65491, 65491], "mapped", [4462]], [[65492, 65492], "mapped", [4463]], [[65493, 65493], "mapped", [4464]], [[65494, 65494], "mapped", [4465]], [[65495, 65495], "mapped", [4466]], [[65496, 65497], "disallowed"], [[65498, 65498], "mapped", [4467]], [[65499, 65499], "mapped", [4468]], [[65500, 65500], "mapped", [4469]], [[65501, 65503], "disallowed"], [[65504, 65504], "mapped", [162]], [[65505, 65505], "mapped", [163]], [[65506, 65506], "mapped", [172]], [[65507, 65507], "disallowed_STD3_mapped", [32, 772]], [[65508, 65508], "mapped", [166]], [[65509, 65509], "mapped", [165]], [[65510, 65510], "mapped", [8361]], [[65511, 65511], "disallowed"], [[65512, 65512], "mapped", [9474]], [[65513, 65513], "mapped", [8592]], [[65514, 65514], "mapped", [8593]], [[65515, 65515], "mapped", [8594]], [[65516, 65516], "mapped", [8595]], [[65517, 65517], "mapped", [9632]], [[65518, 65518], "mapped", [9675]], [[65519, 65528], "disallowed"], [[65529, 65531], "disallowed"], [[65532, 65532], "disallowed"], [[65533, 65533], "disallowed"], [[65534, 65535], "disallowed"], [[65536, 65547], "valid"], [[65548, 65548], "disallowed"], [[65549, 65574], "valid"], [[65575, 65575], "disallowed"], [[65576, 65594], "valid"], [[65595, 65595], "disallowed"], [[65596, 65597], "valid"], [[65598, 65598], "disallowed"], [[65599, 65613], "valid"], [[65614, 65615], "disallowed"], [[65616, 65629], "valid"], [[65630, 65663], "disallowed"], [[65664, 65786], "valid"], [[65787, 65791], "disallowed"], [[65792, 65794], "valid", [], "NV8"], [[65795, 65798], "disallowed"], [[65799, 65843], "valid", [], "NV8"], [[65844, 65846], "disallowed"], [[65847, 65855], "valid", [], "NV8"], [[65856, 65930], "valid", [], "NV8"], [[65931, 65932], "valid", [], "NV8"], [[65933, 65935], "disallowed"], [[65936, 65947], "valid", [], "NV8"], [[65948, 65951], "disallowed"], [[65952, 65952], "valid", [], "NV8"], [[65953, 65999], "disallowed"], [[66e3, 66044], "valid", [], "NV8"], [[66045, 66045], "valid"], [[66046, 66175], "disallowed"], [[66176, 66204], "valid"], [[66205, 66207], "disallowed"], [[66208, 66256], "valid"], [[66257, 66271], "disallowed"], [[66272, 66272], "valid"], [[66273, 66299], "valid", [], "NV8"], [[66300, 66303], "disallowed"], [[66304, 66334], "valid"], [[66335, 66335], "valid"], [[66336, 66339], "valid", [], "NV8"], [[66340, 66351], "disallowed"], [[66352, 66368], "valid"], [[66369, 66369], "valid", [], "NV8"], [[66370, 66377], "valid"], [[66378, 66378], "valid", [], "NV8"], [[66379, 66383], "disallowed"], [[66384, 66426], "valid"], [[66427, 66431], "disallowed"], [[66432, 66461], "valid"], [[66462, 66462], "disallowed"], [[66463, 66463], "valid", [], "NV8"], [[66464, 66499], "valid"], [[66500, 66503], "disallowed"], [[66504, 66511], "valid"], [[66512, 66517], "valid", [], "NV8"], [[66518, 66559], "disallowed"], [[66560, 66560], "mapped", [66600]], [[66561, 66561], "mapped", [66601]], [[66562, 66562], "mapped", [66602]], [[66563, 66563], "mapped", [66603]], [[66564, 66564], "mapped", [66604]], [[66565, 66565], "mapped", [66605]], [[66566, 66566], "mapped", [66606]], [[66567, 66567], "mapped", [66607]], [[66568, 66568], "mapped", [66608]], [[66569, 66569], "mapped", [66609]], [[66570, 66570], "mapped", [66610]], [[66571, 66571], "mapped", [66611]], [[66572, 66572], "mapped", [66612]], [[66573, 66573], "mapped", [66613]], [[66574, 66574], "mapped", [66614]], [[66575, 66575], "mapped", [66615]], [[66576, 66576], "mapped", [66616]], [[66577, 66577], "mapped", [66617]], [[66578, 66578], "mapped", [66618]], [[66579, 66579], "mapped", [66619]], [[66580, 66580], "mapped", [66620]], [[66581, 66581], "mapped", [66621]], [[66582, 66582], "mapped", [66622]], [[66583, 66583], "mapped", [66623]], [[66584, 66584], "mapped", [66624]], [[66585, 66585], "mapped", [66625]], [[66586, 66586], "mapped", [66626]], [[66587, 66587], "mapped", [66627]], [[66588, 66588], "mapped", [66628]], [[66589, 66589], "mapped", [66629]], [[66590, 66590], "mapped", [66630]], [[66591, 66591], "mapped", [66631]], [[66592, 66592], "mapped", [66632]], [[66593, 66593], "mapped", [66633]], [[66594, 66594], "mapped", [66634]], [[66595, 66595], "mapped", [66635]], [[66596, 66596], "mapped", [66636]], [[66597, 66597], "mapped", [66637]], [[66598, 66598], "mapped", [66638]], [[66599, 66599], "mapped", [66639]], [[66600, 66637], "valid"], [[66638, 66717], "valid"], [[66718, 66719], "disallowed"], [[66720, 66729], "valid"], [[66730, 66815], "disallowed"], [[66816, 66855], "valid"], [[66856, 66863], "disallowed"], [[66864, 66915], "valid"], [[66916, 66926], "disallowed"], [[66927, 66927], "valid", [], "NV8"], [[66928, 67071], "disallowed"], [[67072, 67382], "valid"], [[67383, 67391], "disallowed"], [[67392, 67413], "valid"], [[67414, 67423], "disallowed"], [[67424, 67431], "valid"], [[67432, 67583], "disallowed"], [[67584, 67589], "valid"], [[67590, 67591], "disallowed"], [[67592, 67592], "valid"], [[67593, 67593], "disallowed"], [[67594, 67637], "valid"], [[67638, 67638], "disallowed"], [[67639, 67640], "valid"], [[67641, 67643], "disallowed"], [[67644, 67644], "valid"], [[67645, 67646], "disallowed"], [[67647, 67647], "valid"], [[67648, 67669], "valid"], [[67670, 67670], "disallowed"], [[67671, 67679], "valid", [], "NV8"], [[67680, 67702], "valid"], [[67703, 67711], "valid", [], "NV8"], [[67712, 67742], "valid"], [[67743, 67750], "disallowed"], [[67751, 67759], "valid", [], "NV8"], [[67760, 67807], "disallowed"], [[67808, 67826], "valid"], [[67827, 67827], "disallowed"], [[67828, 67829], "valid"], [[67830, 67834], "disallowed"], [[67835, 67839], "valid", [], "NV8"], [[67840, 67861], "valid"], [[67862, 67865], "valid", [], "NV8"], [[67866, 67867], "valid", [], "NV8"], [[67868, 67870], "disallowed"], [[67871, 67871], "valid", [], "NV8"], [[67872, 67897], "valid"], [[67898, 67902], "disallowed"], [[67903, 67903], "valid", [], "NV8"], [[67904, 67967], "disallowed"], [[67968, 68023], "valid"], [[68024, 68027], "disallowed"], [[68028, 68029], "valid", [], "NV8"], [[68030, 68031], "valid"], [[68032, 68047], "valid", [], "NV8"], [[68048, 68049], "disallowed"], [[68050, 68095], "valid", [], "NV8"], [[68096, 68099], "valid"], [[68100, 68100], "disallowed"], [[68101, 68102], "valid"], [[68103, 68107], "disallowed"], [[68108, 68115], "valid"], [[68116, 68116], "disallowed"], [[68117, 68119], "valid"], [[68120, 68120], "disallowed"], [[68121, 68147], "valid"], [[68148, 68151], "disallowed"], [[68152, 68154], "valid"], [[68155, 68158], "disallowed"], [[68159, 68159], "valid"], [[68160, 68167], "valid", [], "NV8"], [[68168, 68175], "disallowed"], [[68176, 68184], "valid", [], "NV8"], [[68185, 68191], "disallowed"], [[68192, 68220], "valid"], [[68221, 68223], "valid", [], "NV8"], [[68224, 68252], "valid"], [[68253, 68255], "valid", [], "NV8"], [[68256, 68287], "disallowed"], [[68288, 68295], "valid"], [[68296, 68296], "valid", [], "NV8"], [[68297, 68326], "valid"], [[68327, 68330], "disallowed"], [[68331, 68342], "valid", [], "NV8"], [[68343, 68351], "disallowed"], [[68352, 68405], "valid"], [[68406, 68408], "disallowed"], [[68409, 68415], "valid", [], "NV8"], [[68416, 68437], "valid"], [[68438, 68439], "disallowed"], [[68440, 68447], "valid", [], "NV8"], [[68448, 68466], "valid"], [[68467, 68471], "disallowed"], [[68472, 68479], "valid", [], "NV8"], [[68480, 68497], "valid"], [[68498, 68504], "disallowed"], [[68505, 68508], "valid", [], "NV8"], [[68509, 68520], "disallowed"], [[68521, 68527], "valid", [], "NV8"], [[68528, 68607], "disallowed"], [[68608, 68680], "valid"], [[68681, 68735], "disallowed"], [[68736, 68736], "mapped", [68800]], [[68737, 68737], "mapped", [68801]], [[68738, 68738], "mapped", [68802]], [[68739, 68739], "mapped", [68803]], [[68740, 68740], "mapped", [68804]], [[68741, 68741], "mapped", [68805]], [[68742, 68742], "mapped", [68806]], [[68743, 68743], "mapped", [68807]], [[68744, 68744], "mapped", [68808]], [[68745, 68745], "mapped", [68809]], [[68746, 68746], "mapped", [68810]], [[68747, 68747], "mapped", [68811]], [[68748, 68748], "mapped", [68812]], [[68749, 68749], "mapped", [68813]], [[68750, 68750], "mapped", [68814]], [[68751, 68751], "mapped", [68815]], [[68752, 68752], "mapped", [68816]], [[68753, 68753], "mapped", [68817]], [[68754, 68754], "mapped", [68818]], [[68755, 68755], "mapped", [68819]], [[68756, 68756], "mapped", [68820]], [[68757, 68757], "mapped", [68821]], [[68758, 68758], "mapped", [68822]], [[68759, 68759], "mapped", [68823]], [[68760, 68760], "mapped", [68824]], [[68761, 68761], "mapped", [68825]], [[68762, 68762], "mapped", [68826]], [[68763, 68763], "mapped", [68827]], [[68764, 68764], "mapped", [68828]], [[68765, 68765], "mapped", [68829]], [[68766, 68766], "mapped", [68830]], [[68767, 68767], "mapped", [68831]], [[68768, 68768], "mapped", [68832]], [[68769, 68769], "mapped", [68833]], [[68770, 68770], "mapped", [68834]], [[68771, 68771], "mapped", [68835]], [[68772, 68772], "mapped", [68836]], [[68773, 68773], "mapped", [68837]], [[68774, 68774], "mapped", [68838]], [[68775, 68775], "mapped", [68839]], [[68776, 68776], "mapped", [68840]], [[68777, 68777], "mapped", [68841]], [[68778, 68778], "mapped", [68842]], [[68779, 68779], "mapped", [68843]], [[68780, 68780], "mapped", [68844]], [[68781, 68781], "mapped", [68845]], [[68782, 68782], "mapped", [68846]], [[68783, 68783], "mapped", [68847]], [[68784, 68784], "mapped", [68848]], [[68785, 68785], "mapped", [68849]], [[68786, 68786], "mapped", [68850]], [[68787, 68799], "disallowed"], [[68800, 68850], "valid"], [[68851, 68857], "disallowed"], [[68858, 68863], "valid", [], "NV8"], [[68864, 69215], "disallowed"], [[69216, 69246], "valid", [], "NV8"], [[69247, 69631], "disallowed"], [[69632, 69702], "valid"], [[69703, 69709], "valid", [], "NV8"], [[69710, 69713], "disallowed"], [[69714, 69733], "valid", [], "NV8"], [[69734, 69743], "valid"], [[69744, 69758], "disallowed"], [[69759, 69759], "valid"], [[69760, 69818], "valid"], [[69819, 69820], "valid", [], "NV8"], [[69821, 69821], "disallowed"], [[69822, 69825], "valid", [], "NV8"], [[69826, 69839], "disallowed"], [[69840, 69864], "valid"], [[69865, 69871], "disallowed"], [[69872, 69881], "valid"], [[69882, 69887], "disallowed"], [[69888, 69940], "valid"], [[69941, 69941], "disallowed"], [[69942, 69951], "valid"], [[69952, 69955], "valid", [], "NV8"], [[69956, 69967], "disallowed"], [[69968, 70003], "valid"], [[70004, 70005], "valid", [], "NV8"], [[70006, 70006], "valid"], [[70007, 70015], "disallowed"], [[70016, 70084], "valid"], [[70085, 70088], "valid", [], "NV8"], [[70089, 70089], "valid", [], "NV8"], [[70090, 70092], "valid"], [[70093, 70093], "valid", [], "NV8"], [[70094, 70095], "disallowed"], [[70096, 70105], "valid"], [[70106, 70106], "valid"], [[70107, 70107], "valid", [], "NV8"], [[70108, 70108], "valid"], [[70109, 70111], "valid", [], "NV8"], [[70112, 70112], "disallowed"], [[70113, 70132], "valid", [], "NV8"], [[70133, 70143], "disallowed"], [[70144, 70161], "valid"], [[70162, 70162], "disallowed"], [[70163, 70199], "valid"], [[70200, 70205], "valid", [], "NV8"], [[70206, 70271], "disallowed"], [[70272, 70278], "valid"], [[70279, 70279], "disallowed"], [[70280, 70280], "valid"], [[70281, 70281], "disallowed"], [[70282, 70285], "valid"], [[70286, 70286], "disallowed"], [[70287, 70301], "valid"], [[70302, 70302], "disallowed"], [[70303, 70312], "valid"], [[70313, 70313], "valid", [], "NV8"], [[70314, 70319], "disallowed"], [[70320, 70378], "valid"], [[70379, 70383], "disallowed"], [[70384, 70393], "valid"], [[70394, 70399], "disallowed"], [[70400, 70400], "valid"], [[70401, 70403], "valid"], [[70404, 70404], "disallowed"], [[70405, 70412], "valid"], [[70413, 70414], "disallowed"], [[70415, 70416], "valid"], [[70417, 70418], "disallowed"], [[70419, 70440], "valid"], [[70441, 70441], "disallowed"], [[70442, 70448], "valid"], [[70449, 70449], "disallowed"], [[70450, 70451], "valid"], [[70452, 70452], "disallowed"], [[70453, 70457], "valid"], [[70458, 70459], "disallowed"], [[70460, 70468], "valid"], [[70469, 70470], "disallowed"], [[70471, 70472], "valid"], [[70473, 70474], "disallowed"], [[70475, 70477], "valid"], [[70478, 70479], "disallowed"], [[70480, 70480], "valid"], [[70481, 70486], "disallowed"], [[70487, 70487], "valid"], [[70488, 70492], "disallowed"], [[70493, 70499], "valid"], [[70500, 70501], "disallowed"], [[70502, 70508], "valid"], [[70509, 70511], "disallowed"], [[70512, 70516], "valid"], [[70517, 70783], "disallowed"], [[70784, 70853], "valid"], [[70854, 70854], "valid", [], "NV8"], [[70855, 70855], "valid"], [[70856, 70863], "disallowed"], [[70864, 70873], "valid"], [[70874, 71039], "disallowed"], [[71040, 71093], "valid"], [[71094, 71095], "disallowed"], [[71096, 71104], "valid"], [[71105, 71113], "valid", [], "NV8"], [[71114, 71127], "valid", [], "NV8"], [[71128, 71133], "valid"], [[71134, 71167], "disallowed"], [[71168, 71232], "valid"], [[71233, 71235], "valid", [], "NV8"], [[71236, 71236], "valid"], [[71237, 71247], "disallowed"], [[71248, 71257], "valid"], [[71258, 71295], "disallowed"], [[71296, 71351], "valid"], [[71352, 71359], "disallowed"], [[71360, 71369], "valid"], [[71370, 71423], "disallowed"], [[71424, 71449], "valid"], [[71450, 71452], "disallowed"], [[71453, 71467], "valid"], [[71468, 71471], "disallowed"], [[71472, 71481], "valid"], [[71482, 71487], "valid", [], "NV8"], [[71488, 71839], "disallowed"], [[71840, 71840], "mapped", [71872]], [[71841, 71841], "mapped", [71873]], [[71842, 71842], "mapped", [71874]], [[71843, 71843], "mapped", [71875]], [[71844, 71844], "mapped", [71876]], [[71845, 71845], "mapped", [71877]], [[71846, 71846], "mapped", [71878]], [[71847, 71847], "mapped", [71879]], [[71848, 71848], "mapped", [71880]], [[71849, 71849], "mapped", [71881]], [[71850, 71850], "mapped", [71882]], [[71851, 71851], "mapped", [71883]], [[71852, 71852], "mapped", [71884]], [[71853, 71853], "mapped", [71885]], [[71854, 71854], "mapped", [71886]], [[71855, 71855], "mapped", [71887]], [[71856, 71856], "mapped", [71888]], [[71857, 71857], "mapped", [71889]], [[71858, 71858], "mapped", [71890]], [[71859, 71859], "mapped", [71891]], [[71860, 71860], "mapped", [71892]], [[71861, 71861], "mapped", [71893]], [[71862, 71862], "mapped", [71894]], [[71863, 71863], "mapped", [71895]], [[71864, 71864], "mapped", [71896]], [[71865, 71865], "mapped", [71897]], [[71866, 71866], "mapped", [71898]], [[71867, 71867], "mapped", [71899]], [[71868, 71868], "mapped", [71900]], [[71869, 71869], "mapped", [71901]], [[71870, 71870], "mapped", [71902]], [[71871, 71871], "mapped", [71903]], [[71872, 71913], "valid"], [[71914, 71922], "valid", [], "NV8"], [[71923, 71934], "disallowed"], [[71935, 71935], "valid"], [[71936, 72383], "disallowed"], [[72384, 72440], "valid"], [[72441, 73727], "disallowed"], [[73728, 74606], "valid"], [[74607, 74648], "valid"], [[74649, 74649], "valid"], [[74650, 74751], "disallowed"], [[74752, 74850], "valid", [], "NV8"], [[74851, 74862], "valid", [], "NV8"], [[74863, 74863], "disallowed"], [[74864, 74867], "valid", [], "NV8"], [[74868, 74868], "valid", [], "NV8"], [[74869, 74879], "disallowed"], [[74880, 75075], "valid"], [[75076, 77823], "disallowed"], [[77824, 78894], "valid"], [[78895, 82943], "disallowed"], [[82944, 83526], "valid"], [[83527, 92159], "disallowed"], [[92160, 92728], "valid"], [[92729, 92735], "disallowed"], [[92736, 92766], "valid"], [[92767, 92767], "disallowed"], [[92768, 92777], "valid"], [[92778, 92781], "disallowed"], [[92782, 92783], "valid", [], "NV8"], [[92784, 92879], "disallowed"], [[92880, 92909], "valid"], [[92910, 92911], "disallowed"], [[92912, 92916], "valid"], [[92917, 92917], "valid", [], "NV8"], [[92918, 92927], "disallowed"], [[92928, 92982], "valid"], [[92983, 92991], "valid", [], "NV8"], [[92992, 92995], "valid"], [[92996, 92997], "valid", [], "NV8"], [[92998, 93007], "disallowed"], [[93008, 93017], "valid"], [[93018, 93018], "disallowed"], [[93019, 93025], "valid", [], "NV8"], [[93026, 93026], "disallowed"], [[93027, 93047], "valid"], [[93048, 93052], "disallowed"], [[93053, 93071], "valid"], [[93072, 93951], "disallowed"], [[93952, 94020], "valid"], [[94021, 94031], "disallowed"], [[94032, 94078], "valid"], [[94079, 94094], "disallowed"], [[94095, 94111], "valid"], [[94112, 110591], "disallowed"], [[110592, 110593], "valid"], [[110594, 113663], "disallowed"], [[113664, 113770], "valid"], [[113771, 113775], "disallowed"], [[113776, 113788], "valid"], [[113789, 113791], "disallowed"], [[113792, 113800], "valid"], [[113801, 113807], "disallowed"], [[113808, 113817], "valid"], [[113818, 113819], "disallowed"], [[113820, 113820], "valid", [], "NV8"], [[113821, 113822], "valid"], [[113823, 113823], "valid", [], "NV8"], [[113824, 113827], "ignored"], [[113828, 118783], "disallowed"], [[118784, 119029], "valid", [], "NV8"], [[119030, 119039], "disallowed"], [[119040, 119078], "valid", [], "NV8"], [[119079, 119080], "disallowed"], [[119081, 119081], "valid", [], "NV8"], [[119082, 119133], "valid", [], "NV8"], [[119134, 119134], "mapped", [119127, 119141]], [[119135, 119135], "mapped", [119128, 119141]], [[119136, 119136], "mapped", [119128, 119141, 119150]], [[119137, 119137], "mapped", [119128, 119141, 119151]], [[119138, 119138], "mapped", [119128, 119141, 119152]], [[119139, 119139], "mapped", [119128, 119141, 119153]], [[119140, 119140], "mapped", [119128, 119141, 119154]], [[119141, 119154], "valid", [], "NV8"], [[119155, 119162], "disallowed"], [[119163, 119226], "valid", [], "NV8"], [[119227, 119227], "mapped", [119225, 119141]], [[119228, 119228], "mapped", [119226, 119141]], [[119229, 119229], "mapped", [119225, 119141, 119150]], [[119230, 119230], "mapped", [119226, 119141, 119150]], [[119231, 119231], "mapped", [119225, 119141, 119151]], [[119232, 119232], "mapped", [119226, 119141, 119151]], [[119233, 119261], "valid", [], "NV8"], [[119262, 119272], "valid", [], "NV8"], [[119273, 119295], "disallowed"], [[119296, 119365], "valid", [], "NV8"], [[119366, 119551], "disallowed"], [[119552, 119638], "valid", [], "NV8"], [[119639, 119647], "disallowed"], [[119648, 119665], "valid", [], "NV8"], [[119666, 119807], "disallowed"], [[119808, 119808], "mapped", [97]], [[119809, 119809], "mapped", [98]], [[119810, 119810], "mapped", [99]], [[119811, 119811], "mapped", [100]], [[119812, 119812], "mapped", [101]], [[119813, 119813], "mapped", [102]], [[119814, 119814], "mapped", [103]], [[119815, 119815], "mapped", [104]], [[119816, 119816], "mapped", [105]], [[119817, 119817], "mapped", [106]], [[119818, 119818], "mapped", [107]], [[119819, 119819], "mapped", [108]], [[119820, 119820], "mapped", [109]], [[119821, 119821], "mapped", [110]], [[119822, 119822], "mapped", [111]], [[119823, 119823], "mapped", [112]], [[119824, 119824], "mapped", [113]], [[119825, 119825], "mapped", [114]], [[119826, 119826], "mapped", [115]], [[119827, 119827], "mapped", [116]], [[119828, 119828], "mapped", [117]], [[119829, 119829], "mapped", [118]], [[119830, 119830], "mapped", [119]], [[119831, 119831], "mapped", [120]], [[119832, 119832], "mapped", [121]], [[119833, 119833], "mapped", [122]], [[119834, 119834], "mapped", [97]], [[119835, 119835], "mapped", [98]], [[119836, 119836], "mapped", [99]], [[119837, 119837], "mapped", [100]], [[119838, 119838], "mapped", [101]], [[119839, 119839], "mapped", [102]], [[119840, 119840], "mapped", [103]], [[119841, 119841], "mapped", [104]], [[119842, 119842], "mapped", [105]], [[119843, 119843], "mapped", [106]], [[119844, 119844], "mapped", [107]], [[119845, 119845], "mapped", [108]], [[119846, 119846], "mapped", [109]], [[119847, 119847], "mapped", [110]], [[119848, 119848], "mapped", [111]], [[119849, 119849], "mapped", [112]], [[119850, 119850], "mapped", [113]], [[119851, 119851], "mapped", [114]], [[119852, 119852], "mapped", [115]], [[119853, 119853], "mapped", [116]], [[119854, 119854], "mapped", [117]], [[119855, 119855], "mapped", [118]], [[119856, 119856], "mapped", [119]], [[119857, 119857], "mapped", [120]], [[119858, 119858], "mapped", [121]], [[119859, 119859], "mapped", [122]], [[119860, 119860], "mapped", [97]], [[119861, 119861], "mapped", [98]], [[119862, 119862], "mapped", [99]], [[119863, 119863], "mapped", [100]], [[119864, 119864], "mapped", [101]], [[119865, 119865], "mapped", [102]], [[119866, 119866], "mapped", [103]], [[119867, 119867], "mapped", [104]], [[119868, 119868], "mapped", [105]], [[119869, 119869], "mapped", [106]], [[119870, 119870], "mapped", [107]], [[119871, 119871], "mapped", [108]], [[119872, 119872], "mapped", [109]], [[119873, 119873], "mapped", [110]], [[119874, 119874], "mapped", [111]], [[119875, 119875], "mapped", [112]], [[119876, 119876], "mapped", [113]], [[119877, 119877], "mapped", [114]], [[119878, 119878], "mapped", [115]], [[119879, 119879], "mapped", [116]], [[119880, 119880], "mapped", [117]], [[119881, 119881], "mapped", [118]], [[119882, 119882], "mapped", [119]], [[119883, 119883], "mapped", [120]], [[119884, 119884], "mapped", [121]], [[119885, 119885], "mapped", [122]], [[119886, 119886], "mapped", [97]], [[119887, 119887], "mapped", [98]], [[119888, 119888], "mapped", [99]], [[119889, 119889], "mapped", [100]], [[119890, 119890], "mapped", [101]], [[119891, 119891], "mapped", [102]], [[119892, 119892], "mapped", [103]], [[119893, 119893], "disallowed"], [[119894, 119894], "mapped", [105]], [[119895, 119895], "mapped", [106]], [[119896, 119896], "mapped", [107]], [[119897, 119897], "mapped", [108]], [[119898, 119898], "mapped", [109]], [[119899, 119899], "mapped", [110]], [[119900, 119900], "mapped", [111]], [[119901, 119901], "mapped", [112]], [[119902, 119902], "mapped", [113]], [[119903, 119903], "mapped", [114]], [[119904, 119904], "mapped", [115]], [[119905, 119905], "mapped", [116]], [[119906, 119906], "mapped", [117]], [[119907, 119907], "mapped", [118]], [[119908, 119908], "mapped", [119]], [[119909, 119909], "mapped", [120]], [[119910, 119910], "mapped", [121]], [[119911, 119911], "mapped", [122]], [[119912, 119912], "mapped", [97]], [[119913, 119913], "mapped", [98]], [[119914, 119914], "mapped", [99]], [[119915, 119915], "mapped", [100]], [[119916, 119916], "mapped", [101]], [[119917, 119917], "mapped", [102]], [[119918, 119918], "mapped", [103]], [[119919, 119919], "mapped", [104]], [[119920, 119920], "mapped", [105]], [[119921, 119921], "mapped", [106]], [[119922, 119922], "mapped", [107]], [[119923, 119923], "mapped", [108]], [[119924, 119924], "mapped", [109]], [[119925, 119925], "mapped", [110]], [[119926, 119926], "mapped", [111]], [[119927, 119927], "mapped", [112]], [[119928, 119928], "mapped", [113]], [[119929, 119929], "mapped", [114]], [[119930, 119930], "mapped", [115]], [[119931, 119931], "mapped", [116]], [[119932, 119932], "mapped", [117]], [[119933, 119933], "mapped", [118]], [[119934, 119934], "mapped", [119]], [[119935, 119935], "mapped", [120]], [[119936, 119936], "mapped", [121]], [[119937, 119937], "mapped", [122]], [[119938, 119938], "mapped", [97]], [[119939, 119939], "mapped", [98]], [[119940, 119940], "mapped", [99]], [[119941, 119941], "mapped", [100]], [[119942, 119942], "mapped", [101]], [[119943, 119943], "mapped", [102]], [[119944, 119944], "mapped", [103]], [[119945, 119945], "mapped", [104]], [[119946, 119946], "mapped", [105]], [[119947, 119947], "mapped", [106]], [[119948, 119948], "mapped", [107]], [[119949, 119949], "mapped", [108]], [[119950, 119950], "mapped", [109]], [[119951, 119951], "mapped", [110]], [[119952, 119952], "mapped", [111]], [[119953, 119953], "mapped", [112]], [[119954, 119954], "mapped", [113]], [[119955, 119955], "mapped", [114]], [[119956, 119956], "mapped", [115]], [[119957, 119957], "mapped", [116]], [[119958, 119958], "mapped", [117]], [[119959, 119959], "mapped", [118]], [[119960, 119960], "mapped", [119]], [[119961, 119961], "mapped", [120]], [[119962, 119962], "mapped", [121]], [[119963, 119963], "mapped", [122]], [[119964, 119964], "mapped", [97]], [[119965, 119965], "disallowed"], [[119966, 119966], "mapped", [99]], [[119967, 119967], "mapped", [100]], [[119968, 119969], "disallowed"], [[119970, 119970], "mapped", [103]], [[119971, 119972], "disallowed"], [[119973, 119973], "mapped", [106]], [[119974, 119974], "mapped", [107]], [[119975, 119976], "disallowed"], [[119977, 119977], "mapped", [110]], [[119978, 119978], "mapped", [111]], [[119979, 119979], "mapped", [112]], [[119980, 119980], "mapped", [113]], [[119981, 119981], "disallowed"], [[119982, 119982], "mapped", [115]], [[119983, 119983], "mapped", [116]], [[119984, 119984], "mapped", [117]], [[119985, 119985], "mapped", [118]], [[119986, 119986], "mapped", [119]], [[119987, 119987], "mapped", [120]], [[119988, 119988], "mapped", [121]], [[119989, 119989], "mapped", [122]], [[119990, 119990], "mapped", [97]], [[119991, 119991], "mapped", [98]], [[119992, 119992], "mapped", [99]], [[119993, 119993], "mapped", [100]], [[119994, 119994], "disallowed"], [[119995, 119995], "mapped", [102]], [[119996, 119996], "disallowed"], [[119997, 119997], "mapped", [104]], [[119998, 119998], "mapped", [105]], [[119999, 119999], "mapped", [106]], [[12e4, 12e4], "mapped", [107]], [[120001, 120001], "mapped", [108]], [[120002, 120002], "mapped", [109]], [[120003, 120003], "mapped", [110]], [[120004, 120004], "disallowed"], [[120005, 120005], "mapped", [112]], [[120006, 120006], "mapped", [113]], [[120007, 120007], "mapped", [114]], [[120008, 120008], "mapped", [115]], [[120009, 120009], "mapped", [116]], [[120010, 120010], "mapped", [117]], [[120011, 120011], "mapped", [118]], [[120012, 120012], "mapped", [119]], [[120013, 120013], "mapped", [120]], [[120014, 120014], "mapped", [121]], [[120015, 120015], "mapped", [122]], [[120016, 120016], "mapped", [97]], [[120017, 120017], "mapped", [98]], [[120018, 120018], "mapped", [99]], [[120019, 120019], "mapped", [100]], [[120020, 120020], "mapped", [101]], [[120021, 120021], "mapped", [102]], [[120022, 120022], "mapped", [103]], [[120023, 120023], "mapped", [104]], [[120024, 120024], "mapped", [105]], [[120025, 120025], "mapped", [106]], [[120026, 120026], "mapped", [107]], [[120027, 120027], "mapped", [108]], [[120028, 120028], "mapped", [109]], [[120029, 120029], "mapped", [110]], [[120030, 120030], "mapped", [111]], [[120031, 120031], "mapped", [112]], [[120032, 120032], "mapped", [113]], [[120033, 120033], "mapped", [114]], [[120034, 120034], "mapped", [115]], [[120035, 120035], "mapped", [116]], [[120036, 120036], "mapped", [117]], [[120037, 120037], "mapped", [118]], [[120038, 120038], "mapped", [119]], [[120039, 120039], "mapped", [120]], [[120040, 120040], "mapped", [121]], [[120041, 120041], "mapped", [122]], [[120042, 120042], "mapped", [97]], [[120043, 120043], "mapped", [98]], [[120044, 120044], "mapped", [99]], [[120045, 120045], "mapped", [100]], [[120046, 120046], "mapped", [101]], [[120047, 120047], "mapped", [102]], [[120048, 120048], "mapped", [103]], [[120049, 120049], "mapped", [104]], [[120050, 120050], "mapped", [105]], [[120051, 120051], "mapped", [106]], [[120052, 120052], "mapped", [107]], [[120053, 120053], "mapped", [108]], [[120054, 120054], "mapped", [109]], [[120055, 120055], "mapped", [110]], [[120056, 120056], "mapped", [111]], [[120057, 120057], "mapped", [112]], [[120058, 120058], "mapped", [113]], [[120059, 120059], "mapped", [114]], [[120060, 120060], "mapped", [115]], [[120061, 120061], "mapped", [116]], [[120062, 120062], "mapped", [117]], [[120063, 120063], "mapped", [118]], [[120064, 120064], "mapped", [119]], [[120065, 120065], "mapped", [120]], [[120066, 120066], "mapped", [121]], [[120067, 120067], "mapped", [122]], [[120068, 120068], "mapped", [97]], [[120069, 120069], "mapped", [98]], [[120070, 120070], "disallowed"], [[120071, 120071], "mapped", [100]], [[120072, 120072], "mapped", [101]], [[120073, 120073], "mapped", [102]], [[120074, 120074], "mapped", [103]], [[120075, 120076], "disallowed"], [[120077, 120077], "mapped", [106]], [[120078, 120078], "mapped", [107]], [[120079, 120079], "mapped", [108]], [[120080, 120080], "mapped", [109]], [[120081, 120081], "mapped", [110]], [[120082, 120082], "mapped", [111]], [[120083, 120083], "mapped", [112]], [[120084, 120084], "mapped", [113]], [[120085, 120085], "disallowed"], [[120086, 120086], "mapped", [115]], [[120087, 120087], "mapped", [116]], [[120088, 120088], "mapped", [117]], [[120089, 120089], "mapped", [118]], [[120090, 120090], "mapped", [119]], [[120091, 120091], "mapped", [120]], [[120092, 120092], "mapped", [121]], [[120093, 120093], "disallowed"], [[120094, 120094], "mapped", [97]], [[120095, 120095], "mapped", [98]], [[120096, 120096], "mapped", [99]], [[120097, 120097], "mapped", [100]], [[120098, 120098], "mapped", [101]], [[120099, 120099], "mapped", [102]], [[120100, 120100], "mapped", [103]], [[120101, 120101], "mapped", [104]], [[120102, 120102], "mapped", [105]], [[120103, 120103], "mapped", [106]], [[120104, 120104], "mapped", [107]], [[120105, 120105], "mapped", [108]], [[120106, 120106], "mapped", [109]], [[120107, 120107], "mapped", [110]], [[120108, 120108], "mapped", [111]], [[120109, 120109], "mapped", [112]], [[120110, 120110], "mapped", [113]], [[120111, 120111], "mapped", [114]], [[120112, 120112], "mapped", [115]], [[120113, 120113], "mapped", [116]], [[120114, 120114], "mapped", [117]], [[120115, 120115], "mapped", [118]], [[120116, 120116], "mapped", [119]], [[120117, 120117], "mapped", [120]], [[120118, 120118], "mapped", [121]], [[120119, 120119], "mapped", [122]], [[120120, 120120], "mapped", [97]], [[120121, 120121], "mapped", [98]], [[120122, 120122], "disallowed"], [[120123, 120123], "mapped", [100]], [[120124, 120124], "mapped", [101]], [[120125, 120125], "mapped", [102]], [[120126, 120126], "mapped", [103]], [[120127, 120127], "disallowed"], [[120128, 120128], "mapped", [105]], [[120129, 120129], "mapped", [106]], [[120130, 120130], "mapped", [107]], [[120131, 120131], "mapped", [108]], [[120132, 120132], "mapped", [109]], [[120133, 120133], "disallowed"], [[120134, 120134], "mapped", [111]], [[120135, 120137], "disallowed"], [[120138, 120138], "mapped", [115]], [[120139, 120139], "mapped", [116]], [[120140, 120140], "mapped", [117]], [[120141, 120141], "mapped", [118]], [[120142, 120142], "mapped", [119]], [[120143, 120143], "mapped", [120]], [[120144, 120144], "mapped", [121]], [[120145, 120145], "disallowed"], [[120146, 120146], "mapped", [97]], [[120147, 120147], "mapped", [98]], [[120148, 120148], "mapped", [99]], [[120149, 120149], "mapped", [100]], [[120150, 120150], "mapped", [101]], [[120151, 120151], "mapped", [102]], [[120152, 120152], "mapped", [103]], [[120153, 120153], "mapped", [104]], [[120154, 120154], "mapped", [105]], [[120155, 120155], "mapped", [106]], [[120156, 120156], "mapped", [107]], [[120157, 120157], "mapped", [108]], [[120158, 120158], "mapped", [109]], [[120159, 120159], "mapped", [110]], [[120160, 120160], "mapped", [111]], [[120161, 120161], "mapped", [112]], [[120162, 120162], "mapped", [113]], [[120163, 120163], "mapped", [114]], [[120164, 120164], "mapped", [115]], [[120165, 120165], "mapped", [116]], [[120166, 120166], "mapped", [117]], [[120167, 120167], "mapped", [118]], [[120168, 120168], "mapped", [119]], [[120169, 120169], "mapped", [120]], [[120170, 120170], "mapped", [121]], [[120171, 120171], "mapped", [122]], [[120172, 120172], "mapped", [97]], [[120173, 120173], "mapped", [98]], [[120174, 120174], "mapped", [99]], [[120175, 120175], "mapped", [100]], [[120176, 120176], "mapped", [101]], [[120177, 120177], "mapped", [102]], [[120178, 120178], "mapped", [103]], [[120179, 120179], "mapped", [104]], [[120180, 120180], "mapped", [105]], [[120181, 120181], "mapped", [106]], [[120182, 120182], "mapped", [107]], [[120183, 120183], "mapped", [108]], [[120184, 120184], "mapped", [109]], [[120185, 120185], "mapped", [110]], [[120186, 120186], "mapped", [111]], [[120187, 120187], "mapped", [112]], [[120188, 120188], "mapped", [113]], [[120189, 120189], "mapped", [114]], [[120190, 120190], "mapped", [115]], [[120191, 120191], "mapped", [116]], [[120192, 120192], "mapped", [117]], [[120193, 120193], "mapped", [118]], [[120194, 120194], "mapped", [119]], [[120195, 120195], "mapped", [120]], [[120196, 120196], "mapped", [121]], [[120197, 120197], "mapped", [122]], [[120198, 120198], "mapped", [97]], [[120199, 120199], "mapped", [98]], [[120200, 120200], "mapped", [99]], [[120201, 120201], "mapped", [100]], [[120202, 120202], "mapped", [101]], [[120203, 120203], "mapped", [102]], [[120204, 120204], "mapped", [103]], [[120205, 120205], "mapped", [104]], [[120206, 120206], "mapped", [105]], [[120207, 120207], "mapped", [106]], [[120208, 120208], "mapped", [107]], [[120209, 120209], "mapped", [108]], [[120210, 120210], "mapped", [109]], [[120211, 120211], "mapped", [110]], [[120212, 120212], "mapped", [111]], [[120213, 120213], "mapped", [112]], [[120214, 120214], "mapped", [113]], [[120215, 120215], "mapped", [114]], [[120216, 120216], "mapped", [115]], [[120217, 120217], "mapped", [116]], [[120218, 120218], "mapped", [117]], [[120219, 120219], "mapped", [118]], [[120220, 120220], "mapped", [119]], [[120221, 120221], "mapped", [120]], [[120222, 120222], "mapped", [121]], [[120223, 120223], "mapped", [122]], [[120224, 120224], "mapped", [97]], [[120225, 120225], "mapped", [98]], [[120226, 120226], "mapped", [99]], [[120227, 120227], "mapped", [100]], [[120228, 120228], "mapped", [101]], [[120229, 120229], "mapped", [102]], [[120230, 120230], "mapped", [103]], [[120231, 120231], "mapped", [104]], [[120232, 120232], "mapped", [105]], [[120233, 120233], "mapped", [106]], [[120234, 120234], "mapped", [107]], [[120235, 120235], "mapped", [108]], [[120236, 120236], "mapped", [109]], [[120237, 120237], "mapped", [110]], [[120238, 120238], "mapped", [111]], [[120239, 120239], "mapped", [112]], [[120240, 120240], "mapped", [113]], [[120241, 120241], "mapped", [114]], [[120242, 120242], "mapped", [115]], [[120243, 120243], "mapped", [116]], [[120244, 120244], "mapped", [117]], [[120245, 120245], "mapped", [118]], [[120246, 120246], "mapped", [119]], [[120247, 120247], "mapped", [120]], [[120248, 120248], "mapped", [121]], [[120249, 120249], "mapped", [122]], [[120250, 120250], "mapped", [97]], [[120251, 120251], "mapped", [98]], [[120252, 120252], "mapped", [99]], [[120253, 120253], "mapped", [100]], [[120254, 120254], "mapped", [101]], [[120255, 120255], "mapped", [102]], [[120256, 120256], "mapped", [103]], [[120257, 120257], "mapped", [104]], [[120258, 120258], "mapped", [105]], [[120259, 120259], "mapped", [106]], [[120260, 120260], "mapped", [107]], [[120261, 120261], "mapped", [108]], [[120262, 120262], "mapped", [109]], [[120263, 120263], "mapped", [110]], [[120264, 120264], "mapped", [111]], [[120265, 120265], "mapped", [112]], [[120266, 120266], "mapped", [113]], [[120267, 120267], "mapped", [114]], [[120268, 120268], "mapped", [115]], [[120269, 120269], "mapped", [116]], [[120270, 120270], "mapped", [117]], [[120271, 120271], "mapped", [118]], [[120272, 120272], "mapped", [119]], [[120273, 120273], "mapped", [120]], [[120274, 120274], "mapped", [121]], [[120275, 120275], "mapped", [122]], [[120276, 120276], "mapped", [97]], [[120277, 120277], "mapped", [98]], [[120278, 120278], "mapped", [99]], [[120279, 120279], "mapped", [100]], [[120280, 120280], "mapped", [101]], [[120281, 120281], "mapped", [102]], [[120282, 120282], "mapped", [103]], [[120283, 120283], "mapped", [104]], [[120284, 120284], "mapped", [105]], [[120285, 120285], "mapped", [106]], [[120286, 120286], "mapped", [107]], [[120287, 120287], "mapped", [108]], [[120288, 120288], "mapped", [109]], [[120289, 120289], "mapped", [110]], [[120290, 120290], "mapped", [111]], [[120291, 120291], "mapped", [112]], [[120292, 120292], "mapped", [113]], [[120293, 120293], "mapped", [114]], [[120294, 120294], "mapped", [115]], [[120295, 120295], "mapped", [116]], [[120296, 120296], "mapped", [117]], [[120297, 120297], "mapped", [118]], [[120298, 120298], "mapped", [119]], [[120299, 120299], "mapped", [120]], [[120300, 120300], "mapped", [121]], [[120301, 120301], "mapped", [122]], [[120302, 120302], "mapped", [97]], [[120303, 120303], "mapped", [98]], [[120304, 120304], "mapped", [99]], [[120305, 120305], "mapped", [100]], [[120306, 120306], "mapped", [101]], [[120307, 120307], "mapped", [102]], [[120308, 120308], "mapped", [103]], [[120309, 120309], "mapped", [104]], [[120310, 120310], "mapped", [105]], [[120311, 120311], "mapped", [106]], [[120312, 120312], "mapped", [107]], [[120313, 120313], "mapped", [108]], [[120314, 120314], "mapped", [109]], [[120315, 120315], "mapped", [110]], [[120316, 120316], "mapped", [111]], [[120317, 120317], "mapped", [112]], [[120318, 120318], "mapped", [113]], [[120319, 120319], "mapped", [114]], [[120320, 120320], "mapped", [115]], [[120321, 120321], "mapped", [116]], [[120322, 120322], "mapped", [117]], [[120323, 120323], "mapped", [118]], [[120324, 120324], "mapped", [119]], [[120325, 120325], "mapped", [120]], [[120326, 120326], "mapped", [121]], [[120327, 120327], "mapped", [122]], [[120328, 120328], "mapped", [97]], [[120329, 120329], "mapped", [98]], [[120330, 120330], "mapped", [99]], [[120331, 120331], "mapped", [100]], [[120332, 120332], "mapped", [101]], [[120333, 120333], "mapped", [102]], [[120334, 120334], "mapped", [103]], [[120335, 120335], "mapped", [104]], [[120336, 120336], "mapped", [105]], [[120337, 120337], "mapped", [106]], [[120338, 120338], "mapped", [107]], [[120339, 120339], "mapped", [108]], [[120340, 120340], "mapped", [109]], [[120341, 120341], "mapped", [110]], [[120342, 120342], "mapped", [111]], [[120343, 120343], "mapped", [112]], [[120344, 120344], "mapped", [113]], [[120345, 120345], "mapped", [114]], [[120346, 120346], "mapped", [115]], [[120347, 120347], "mapped", [116]], [[120348, 120348], "mapped", [117]], [[120349, 120349], "mapped", [118]], [[120350, 120350], "mapped", [119]], [[120351, 120351], "mapped", [120]], [[120352, 120352], "mapped", [121]], [[120353, 120353], "mapped", [122]], [[120354, 120354], "mapped", [97]], [[120355, 120355], "mapped", [98]], [[120356, 120356], "mapped", [99]], [[120357, 120357], "mapped", [100]], [[120358, 120358], "mapped", [101]], [[120359, 120359], "mapped", [102]], [[120360, 120360], "mapped", [103]], [[120361, 120361], "mapped", [104]], [[120362, 120362], "mapped", [105]], [[120363, 120363], "mapped", [106]], [[120364, 120364], "mapped", [107]], [[120365, 120365], "mapped", [108]], [[120366, 120366], "mapped", [109]], [[120367, 120367], "mapped", [110]], [[120368, 120368], "mapped", [111]], [[120369, 120369], "mapped", [112]], [[120370, 120370], "mapped", [113]], [[120371, 120371], "mapped", [114]], [[120372, 120372], "mapped", [115]], [[120373, 120373], "mapped", [116]], [[120374, 120374], "mapped", [117]], [[120375, 120375], "mapped", [118]], [[120376, 120376], "mapped", [119]], [[120377, 120377], "mapped", [120]], [[120378, 120378], "mapped", [121]], [[120379, 120379], "mapped", [122]], [[120380, 120380], "mapped", [97]], [[120381, 120381], "mapped", [98]], [[120382, 120382], "mapped", [99]], [[120383, 120383], "mapped", [100]], [[120384, 120384], "mapped", [101]], [[120385, 120385], "mapped", [102]], [[120386, 120386], "mapped", [103]], [[120387, 120387], "mapped", [104]], [[120388, 120388], "mapped", [105]], [[120389, 120389], "mapped", [106]], [[120390, 120390], "mapped", [107]], [[120391, 120391], "mapped", [108]], [[120392, 120392], "mapped", [109]], [[120393, 120393], "mapped", [110]], [[120394, 120394], "mapped", [111]], [[120395, 120395], "mapped", [112]], [[120396, 120396], "mapped", [113]], [[120397, 120397], "mapped", [114]], [[120398, 120398], "mapped", [115]], [[120399, 120399], "mapped", [116]], [[120400, 120400], "mapped", [117]], [[120401, 120401], "mapped", [118]], [[120402, 120402], "mapped", [119]], [[120403, 120403], "mapped", [120]], [[120404, 120404], "mapped", [121]], [[120405, 120405], "mapped", [122]], [[120406, 120406], "mapped", [97]], [[120407, 120407], "mapped", [98]], [[120408, 120408], "mapped", [99]], [[120409, 120409], "mapped", [100]], [[120410, 120410], "mapped", [101]], [[120411, 120411], "mapped", [102]], [[120412, 120412], "mapped", [103]], [[120413, 120413], "mapped", [104]], [[120414, 120414], "mapped", [105]], [[120415, 120415], "mapped", [106]], [[120416, 120416], "mapped", [107]], [[120417, 120417], "mapped", [108]], [[120418, 120418], "mapped", [109]], [[120419, 120419], "mapped", [110]], [[120420, 120420], "mapped", [111]], [[120421, 120421], "mapped", [112]], [[120422, 120422], "mapped", [113]], [[120423, 120423], "mapped", [114]], [[120424, 120424], "mapped", [115]], [[120425, 120425], "mapped", [116]], [[120426, 120426], "mapped", [117]], [[120427, 120427], "mapped", [118]], [[120428, 120428], "mapped", [119]], [[120429, 120429], "mapped", [120]], [[120430, 120430], "mapped", [121]], [[120431, 120431], "mapped", [122]], [[120432, 120432], "mapped", [97]], [[120433, 120433], "mapped", [98]], [[120434, 120434], "mapped", [99]], [[120435, 120435], "mapped", [100]], [[120436, 120436], "mapped", [101]], [[120437, 120437], "mapped", [102]], [[120438, 120438], "mapped", [103]], [[120439, 120439], "mapped", [104]], [[120440, 120440], "mapped", [105]], [[120441, 120441], "mapped", [106]], [[120442, 120442], "mapped", [107]], [[120443, 120443], "mapped", [108]], [[120444, 120444], "mapped", [109]], [[120445, 120445], "mapped", [110]], [[120446, 120446], "mapped", [111]], [[120447, 120447], "mapped", [112]], [[120448, 120448], "mapped", [113]], [[120449, 120449], "mapped", [114]], [[120450, 120450], "mapped", [115]], [[120451, 120451], "mapped", [116]], [[120452, 120452], "mapped", [117]], [[120453, 120453], "mapped", [118]], [[120454, 120454], "mapped", [119]], [[120455, 120455], "mapped", [120]], [[120456, 120456], "mapped", [121]], [[120457, 120457], "mapped", [122]], [[120458, 120458], "mapped", [97]], [[120459, 120459], "mapped", [98]], [[120460, 120460], "mapped", [99]], [[120461, 120461], "mapped", [100]], [[120462, 120462], "mapped", [101]], [[120463, 120463], "mapped", [102]], [[120464, 120464], "mapped", [103]], [[120465, 120465], "mapped", [104]], [[120466, 120466], "mapped", [105]], [[120467, 120467], "mapped", [106]], [[120468, 120468], "mapped", [107]], [[120469, 120469], "mapped", [108]], [[120470, 120470], "mapped", [109]], [[120471, 120471], "mapped", [110]], [[120472, 120472], "mapped", [111]], [[120473, 120473], "mapped", [112]], [[120474, 120474], "mapped", [113]], [[120475, 120475], "mapped", [114]], [[120476, 120476], "mapped", [115]], [[120477, 120477], "mapped", [116]], [[120478, 120478], "mapped", [117]], [[120479, 120479], "mapped", [118]], [[120480, 120480], "mapped", [119]], [[120481, 120481], "mapped", [120]], [[120482, 120482], "mapped", [121]], [[120483, 120483], "mapped", [122]], [[120484, 120484], "mapped", [305]], [[120485, 120485], "mapped", [567]], [[120486, 120487], "disallowed"], [[120488, 120488], "mapped", [945]], [[120489, 120489], "mapped", [946]], [[120490, 120490], "mapped", [947]], [[120491, 120491], "mapped", [948]], [[120492, 120492], "mapped", [949]], [[120493, 120493], "mapped", [950]], [[120494, 120494], "mapped", [951]], [[120495, 120495], "mapped", [952]], [[120496, 120496], "mapped", [953]], [[120497, 120497], "mapped", [954]], [[120498, 120498], "mapped", [955]], [[120499, 120499], "mapped", [956]], [[120500, 120500], "mapped", [957]], [[120501, 120501], "mapped", [958]], [[120502, 120502], "mapped", [959]], [[120503, 120503], "mapped", [960]], [[120504, 120504], "mapped", [961]], [[120505, 120505], "mapped", [952]], [[120506, 120506], "mapped", [963]], [[120507, 120507], "mapped", [964]], [[120508, 120508], "mapped", [965]], [[120509, 120509], "mapped", [966]], [[120510, 120510], "mapped", [967]], [[120511, 120511], "mapped", [968]], [[120512, 120512], "mapped", [969]], [[120513, 120513], "mapped", [8711]], [[120514, 120514], "mapped", [945]], [[120515, 120515], "mapped", [946]], [[120516, 120516], "mapped", [947]], [[120517, 120517], "mapped", [948]], [[120518, 120518], "mapped", [949]], [[120519, 120519], "mapped", [950]], [[120520, 120520], "mapped", [951]], [[120521, 120521], "mapped", [952]], [[120522, 120522], "mapped", [953]], [[120523, 120523], "mapped", [954]], [[120524, 120524], "mapped", [955]], [[120525, 120525], "mapped", [956]], [[120526, 120526], "mapped", [957]], [[120527, 120527], "mapped", [958]], [[120528, 120528], "mapped", [959]], [[120529, 120529], "mapped", [960]], [[120530, 120530], "mapped", [961]], [[120531, 120532], "mapped", [963]], [[120533, 120533], "mapped", [964]], [[120534, 120534], "mapped", [965]], [[120535, 120535], "mapped", [966]], [[120536, 120536], "mapped", [967]], [[120537, 120537], "mapped", [968]], [[120538, 120538], "mapped", [969]], [[120539, 120539], "mapped", [8706]], [[120540, 120540], "mapped", [949]], [[120541, 120541], "mapped", [952]], [[120542, 120542], "mapped", [954]], [[120543, 120543], "mapped", [966]], [[120544, 120544], "mapped", [961]], [[120545, 120545], "mapped", [960]], [[120546, 120546], "mapped", [945]], [[120547, 120547], "mapped", [946]], [[120548, 120548], "mapped", [947]], [[120549, 120549], "mapped", [948]], [[120550, 120550], "mapped", [949]], [[120551, 120551], "mapped", [950]], [[120552, 120552], "mapped", [951]], [[120553, 120553], "mapped", [952]], [[120554, 120554], "mapped", [953]], [[120555, 120555], "mapped", [954]], [[120556, 120556], "mapped", [955]], [[120557, 120557], "mapped", [956]], [[120558, 120558], "mapped", [957]], [[120559, 120559], "mapped", [958]], [[120560, 120560], "mapped", [959]], [[120561, 120561], "mapped", [960]], [[120562, 120562], "mapped", [961]], [[120563, 120563], "mapped", [952]], [[120564, 120564], "mapped", [963]], [[120565, 120565], "mapped", [964]], [[120566, 120566], "mapped", [965]], [[120567, 120567], "mapped", [966]], [[120568, 120568], "mapped", [967]], [[120569, 120569], "mapped", [968]], [[120570, 120570], "mapped", [969]], [[120571, 120571], "mapped", [8711]], [[120572, 120572], "mapped", [945]], [[120573, 120573], "mapped", [946]], [[120574, 120574], "mapped", [947]], [[120575, 120575], "mapped", [948]], [[120576, 120576], "mapped", [949]], [[120577, 120577], "mapped", [950]], [[120578, 120578], "mapped", [951]], [[120579, 120579], "mapped", [952]], [[120580, 120580], "mapped", [953]], [[120581, 120581], "mapped", [954]], [[120582, 120582], "mapped", [955]], [[120583, 120583], "mapped", [956]], [[120584, 120584], "mapped", [957]], [[120585, 120585], "mapped", [958]], [[120586, 120586], "mapped", [959]], [[120587, 120587], "mapped", [960]], [[120588, 120588], "mapped", [961]], [[120589, 120590], "mapped", [963]], [[120591, 120591], "mapped", [964]], [[120592, 120592], "mapped", [965]], [[120593, 120593], "mapped", [966]], [[120594, 120594], "mapped", [967]], [[120595, 120595], "mapped", [968]], [[120596, 120596], "mapped", [969]], [[120597, 120597], "mapped", [8706]], [[120598, 120598], "mapped", [949]], [[120599, 120599], "mapped", [952]], [[120600, 120600], "mapped", [954]], [[120601, 120601], "mapped", [966]], [[120602, 120602], "mapped", [961]], [[120603, 120603], "mapped", [960]], [[120604, 120604], "mapped", [945]], [[120605, 120605], "mapped", [946]], [[120606, 120606], "mapped", [947]], [[120607, 120607], "mapped", [948]], [[120608, 120608], "mapped", [949]], [[120609, 120609], "mapped", [950]], [[120610, 120610], "mapped", [951]], [[120611, 120611], "mapped", [952]], [[120612, 120612], "mapped", [953]], [[120613, 120613], "mapped", [954]], [[120614, 120614], "mapped", [955]], [[120615, 120615], "mapped", [956]], [[120616, 120616], "mapped", [957]], [[120617, 120617], "mapped", [958]], [[120618, 120618], "mapped", [959]], [[120619, 120619], "mapped", [960]], [[120620, 120620], "mapped", [961]], [[120621, 120621], "mapped", [952]], [[120622, 120622], "mapped", [963]], [[120623, 120623], "mapped", [964]], [[120624, 120624], "mapped", [965]], [[120625, 120625], "mapped", [966]], [[120626, 120626], "mapped", [967]], [[120627, 120627], "mapped", [968]], [[120628, 120628], "mapped", [969]], [[120629, 120629], "mapped", [8711]], [[120630, 120630], "mapped", [945]], [[120631, 120631], "mapped", [946]], [[120632, 120632], "mapped", [947]], [[120633, 120633], "mapped", [948]], [[120634, 120634], "mapped", [949]], [[120635, 120635], "mapped", [950]], [[120636, 120636], "mapped", [951]], [[120637, 120637], "mapped", [952]], [[120638, 120638], "mapped", [953]], [[120639, 120639], "mapped", [954]], [[120640, 120640], "mapped", [955]], [[120641, 120641], "mapped", [956]], [[120642, 120642], "mapped", [957]], [[120643, 120643], "mapped", [958]], [[120644, 120644], "mapped", [959]], [[120645, 120645], "mapped", [960]], [[120646, 120646], "mapped", [961]], [[120647, 120648], "mapped", [963]], [[120649, 120649], "mapped", [964]], [[120650, 120650], "mapped", [965]], [[120651, 120651], "mapped", [966]], [[120652, 120652], "mapped", [967]], [[120653, 120653], "mapped", [968]], [[120654, 120654], "mapped", [969]], [[120655, 120655], "mapped", [8706]], [[120656, 120656], "mapped", [949]], [[120657, 120657], "mapped", [952]], [[120658, 120658], "mapped", [954]], [[120659, 120659], "mapped", [966]], [[120660, 120660], "mapped", [961]], [[120661, 120661], "mapped", [960]], [[120662, 120662], "mapped", [945]], [[120663, 120663], "mapped", [946]], [[120664, 120664], "mapped", [947]], [[120665, 120665], "mapped", [948]], [[120666, 120666], "mapped", [949]], [[120667, 120667], "mapped", [950]], [[120668, 120668], "mapped", [951]], [[120669, 120669], "mapped", [952]], [[120670, 120670], "mapped", [953]], [[120671, 120671], "mapped", [954]], [[120672, 120672], "mapped", [955]], [[120673, 120673], "mapped", [956]], [[120674, 120674], "mapped", [957]], [[120675, 120675], "mapped", [958]], [[120676, 120676], "mapped", [959]], [[120677, 120677], "mapped", [960]], [[120678, 120678], "mapped", [961]], [[120679, 120679], "mapped", [952]], [[120680, 120680], "mapped", [963]], [[120681, 120681], "mapped", [964]], [[120682, 120682], "mapped", [965]], [[120683, 120683], "mapped", [966]], [[120684, 120684], "mapped", [967]], [[120685, 120685], "mapped", [968]], [[120686, 120686], "mapped", [969]], [[120687, 120687], "mapped", [8711]], [[120688, 120688], "mapped", [945]], [[120689, 120689], "mapped", [946]], [[120690, 120690], "mapped", [947]], [[120691, 120691], "mapped", [948]], [[120692, 120692], "mapped", [949]], [[120693, 120693], "mapped", [950]], [[120694, 120694], "mapped", [951]], [[120695, 120695], "mapped", [952]], [[120696, 120696], "mapped", [953]], [[120697, 120697], "mapped", [954]], [[120698, 120698], "mapped", [955]], [[120699, 120699], "mapped", [956]], [[120700, 120700], "mapped", [957]], [[120701, 120701], "mapped", [958]], [[120702, 120702], "mapped", [959]], [[120703, 120703], "mapped", [960]], [[120704, 120704], "mapped", [961]], [[120705, 120706], "mapped", [963]], [[120707, 120707], "mapped", [964]], [[120708, 120708], "mapped", [965]], [[120709, 120709], "mapped", [966]], [[120710, 120710], "mapped", [967]], [[120711, 120711], "mapped", [968]], [[120712, 120712], "mapped", [969]], [[120713, 120713], "mapped", [8706]], [[120714, 120714], "mapped", [949]], [[120715, 120715], "mapped", [952]], [[120716, 120716], "mapped", [954]], [[120717, 120717], "mapped", [966]], [[120718, 120718], "mapped", [961]], [[120719, 120719], "mapped", [960]], [[120720, 120720], "mapped", [945]], [[120721, 120721], "mapped", [946]], [[120722, 120722], "mapped", [947]], [[120723, 120723], "mapped", [948]], [[120724, 120724], "mapped", [949]], [[120725, 120725], "mapped", [950]], [[120726, 120726], "mapped", [951]], [[120727, 120727], "mapped", [952]], [[120728, 120728], "mapped", [953]], [[120729, 120729], "mapped", [954]], [[120730, 120730], "mapped", [955]], [[120731, 120731], "mapped", [956]], [[120732, 120732], "mapped", [957]], [[120733, 120733], "mapped", [958]], [[120734, 120734], "mapped", [959]], [[120735, 120735], "mapped", [960]], [[120736, 120736], "mapped", [961]], [[120737, 120737], "mapped", [952]], [[120738, 120738], "mapped", [963]], [[120739, 120739], "mapped", [964]], [[120740, 120740], "mapped", [965]], [[120741, 120741], "mapped", [966]], [[120742, 120742], "mapped", [967]], [[120743, 120743], "mapped", [968]], [[120744, 120744], "mapped", [969]], [[120745, 120745], "mapped", [8711]], [[120746, 120746], "mapped", [945]], [[120747, 120747], "mapped", [946]], [[120748, 120748], "mapped", [947]], [[120749, 120749], "mapped", [948]], [[120750, 120750], "mapped", [949]], [[120751, 120751], "mapped", [950]], [[120752, 120752], "mapped", [951]], [[120753, 120753], "mapped", [952]], [[120754, 120754], "mapped", [953]], [[120755, 120755], "mapped", [954]], [[120756, 120756], "mapped", [955]], [[120757, 120757], "mapped", [956]], [[120758, 120758], "mapped", [957]], [[120759, 120759], "mapped", [958]], [[120760, 120760], "mapped", [959]], [[120761, 120761], "mapped", [960]], [[120762, 120762], "mapped", [961]], [[120763, 120764], "mapped", [963]], [[120765, 120765], "mapped", [964]], [[120766, 120766], "mapped", [965]], [[120767, 120767], "mapped", [966]], [[120768, 120768], "mapped", [967]], [[120769, 120769], "mapped", [968]], [[120770, 120770], "mapped", [969]], [[120771, 120771], "mapped", [8706]], [[120772, 120772], "mapped", [949]], [[120773, 120773], "mapped", [952]], [[120774, 120774], "mapped", [954]], [[120775, 120775], "mapped", [966]], [[120776, 120776], "mapped", [961]], [[120777, 120777], "mapped", [960]], [[120778, 120779], "mapped", [989]], [[120780, 120781], "disallowed"], [[120782, 120782], "mapped", [48]], [[120783, 120783], "mapped", [49]], [[120784, 120784], "mapped", [50]], [[120785, 120785], "mapped", [51]], [[120786, 120786], "mapped", [52]], [[120787, 120787], "mapped", [53]], [[120788, 120788], "mapped", [54]], [[120789, 120789], "mapped", [55]], [[120790, 120790], "mapped", [56]], [[120791, 120791], "mapped", [57]], [[120792, 120792], "mapped", [48]], [[120793, 120793], "mapped", [49]], [[120794, 120794], "mapped", [50]], [[120795, 120795], "mapped", [51]], [[120796, 120796], "mapped", [52]], [[120797, 120797], "mapped", [53]], [[120798, 120798], "mapped", [54]], [[120799, 120799], "mapped", [55]], [[120800, 120800], "mapped", [56]], [[120801, 120801], "mapped", [57]], [[120802, 120802], "mapped", [48]], [[120803, 120803], "mapped", [49]], [[120804, 120804], "mapped", [50]], [[120805, 120805], "mapped", [51]], [[120806, 120806], "mapped", [52]], [[120807, 120807], "mapped", [53]], [[120808, 120808], "mapped", [54]], [[120809, 120809], "mapped", [55]], [[120810, 120810], "mapped", [56]], [[120811, 120811], "mapped", [57]], [[120812, 120812], "mapped", [48]], [[120813, 120813], "mapped", [49]], [[120814, 120814], "mapped", [50]], [[120815, 120815], "mapped", [51]], [[120816, 120816], "mapped", [52]], [[120817, 120817], "mapped", [53]], [[120818, 120818], "mapped", [54]], [[120819, 120819], "mapped", [55]], [[120820, 120820], "mapped", [56]], [[120821, 120821], "mapped", [57]], [[120822, 120822], "mapped", [48]], [[120823, 120823], "mapped", [49]], [[120824, 120824], "mapped", [50]], [[120825, 120825], "mapped", [51]], [[120826, 120826], "mapped", [52]], [[120827, 120827], "mapped", [53]], [[120828, 120828], "mapped", [54]], [[120829, 120829], "mapped", [55]], [[120830, 120830], "mapped", [56]], [[120831, 120831], "mapped", [57]], [[120832, 121343], "valid", [], "NV8"], [[121344, 121398], "valid"], [[121399, 121402], "valid", [], "NV8"], [[121403, 121452], "valid"], [[121453, 121460], "valid", [], "NV8"], [[121461, 121461], "valid"], [[121462, 121475], "valid", [], "NV8"], [[121476, 121476], "valid"], [[121477, 121483], "valid", [], "NV8"], [[121484, 121498], "disallowed"], [[121499, 121503], "valid"], [[121504, 121504], "disallowed"], [[121505, 121519], "valid"], [[121520, 124927], "disallowed"], [[124928, 125124], "valid"], [[125125, 125126], "disallowed"], [[125127, 125135], "valid", [], "NV8"], [[125136, 125142], "valid"], [[125143, 126463], "disallowed"], [[126464, 126464], "mapped", [1575]], [[126465, 126465], "mapped", [1576]], [[126466, 126466], "mapped", [1580]], [[126467, 126467], "mapped", [1583]], [[126468, 126468], "disallowed"], [[126469, 126469], "mapped", [1608]], [[126470, 126470], "mapped", [1586]], [[126471, 126471], "mapped", [1581]], [[126472, 126472], "mapped", [1591]], [[126473, 126473], "mapped", [1610]], [[126474, 126474], "mapped", [1603]], [[126475, 126475], "mapped", [1604]], [[126476, 126476], "mapped", [1605]], [[126477, 126477], "mapped", [1606]], [[126478, 126478], "mapped", [1587]], [[126479, 126479], "mapped", [1593]], [[126480, 126480], "mapped", [1601]], [[126481, 126481], "mapped", [1589]], [[126482, 126482], "mapped", [1602]], [[126483, 126483], "mapped", [1585]], [[126484, 126484], "mapped", [1588]], [[126485, 126485], "mapped", [1578]], [[126486, 126486], "mapped", [1579]], [[126487, 126487], "mapped", [1582]], [[126488, 126488], "mapped", [1584]], [[126489, 126489], "mapped", [1590]], [[126490, 126490], "mapped", [1592]], [[126491, 126491], "mapped", [1594]], [[126492, 126492], "mapped", [1646]], [[126493, 126493], "mapped", [1722]], [[126494, 126494], "mapped", [1697]], [[126495, 126495], "mapped", [1647]], [[126496, 126496], "disallowed"], [[126497, 126497], "mapped", [1576]], [[126498, 126498], "mapped", [1580]], [[126499, 126499], "disallowed"], [[126500, 126500], "mapped", [1607]], [[126501, 126502], "disallowed"], [[126503, 126503], "mapped", [1581]], [[126504, 126504], "disallowed"], [[126505, 126505], "mapped", [1610]], [[126506, 126506], "mapped", [1603]], [[126507, 126507], "mapped", [1604]], [[126508, 126508], "mapped", [1605]], [[126509, 126509], "mapped", [1606]], [[126510, 126510], "mapped", [1587]], [[126511, 126511], "mapped", [1593]], [[126512, 126512], "mapped", [1601]], [[126513, 126513], "mapped", [1589]], [[126514, 126514], "mapped", [1602]], [[126515, 126515], "disallowed"], [[126516, 126516], "mapped", [1588]], [[126517, 126517], "mapped", [1578]], [[126518, 126518], "mapped", [1579]], [[126519, 126519], "mapped", [1582]], [[126520, 126520], "disallowed"], [[126521, 126521], "mapped", [1590]], [[126522, 126522], "disallowed"], [[126523, 126523], "mapped", [1594]], [[126524, 126529], "disallowed"], [[126530, 126530], "mapped", [1580]], [[126531, 126534], "disallowed"], [[126535, 126535], "mapped", [1581]], [[126536, 126536], "disallowed"], [[126537, 126537], "mapped", [1610]], [[126538, 126538], "disallowed"], [[126539, 126539], "mapped", [1604]], [[126540, 126540], "disallowed"], [[126541, 126541], "mapped", [1606]], [[126542, 126542], "mapped", [1587]], [[126543, 126543], "mapped", [1593]], [[126544, 126544], "disallowed"], [[126545, 126545], "mapped", [1589]], [[126546, 126546], "mapped", [1602]], [[126547, 126547], "disallowed"], [[126548, 126548], "mapped", [1588]], [[126549, 126550], "disallowed"], [[126551, 126551], "mapped", [1582]], [[126552, 126552], "disallowed"], [[126553, 126553], "mapped", [1590]], [[126554, 126554], "disallowed"], [[126555, 126555], "mapped", [1594]], [[126556, 126556], "disallowed"], [[126557, 126557], "mapped", [1722]], [[126558, 126558], "disallowed"], [[126559, 126559], "mapped", [1647]], [[126560, 126560], "disallowed"], [[126561, 126561], "mapped", [1576]], [[126562, 126562], "mapped", [1580]], [[126563, 126563], "disallowed"], [[126564, 126564], "mapped", [1607]], [[126565, 126566], "disallowed"], [[126567, 126567], "mapped", [1581]], [[126568, 126568], "mapped", [1591]], [[126569, 126569], "mapped", [1610]], [[126570, 126570], "mapped", [1603]], [[126571, 126571], "disallowed"], [[126572, 126572], "mapped", [1605]], [[126573, 126573], "mapped", [1606]], [[126574, 126574], "mapped", [1587]], [[126575, 126575], "mapped", [1593]], [[126576, 126576], "mapped", [1601]], [[126577, 126577], "mapped", [1589]], [[126578, 126578], "mapped", [1602]], [[126579, 126579], "disallowed"], [[126580, 126580], "mapped", [1588]], [[126581, 126581], "mapped", [1578]], [[126582, 126582], "mapped", [1579]], [[126583, 126583], "mapped", [1582]], [[126584, 126584], "disallowed"], [[126585, 126585], "mapped", [1590]], [[126586, 126586], "mapped", [1592]], [[126587, 126587], "mapped", [1594]], [[126588, 126588], "mapped", [1646]], [[126589, 126589], "disallowed"], [[126590, 126590], "mapped", [1697]], [[126591, 126591], "disallowed"], [[126592, 126592], "mapped", [1575]], [[126593, 126593], "mapped", [1576]], [[126594, 126594], "mapped", [1580]], [[126595, 126595], "mapped", [1583]], [[126596, 126596], "mapped", [1607]], [[126597, 126597], "mapped", [1608]], [[126598, 126598], "mapped", [1586]], [[126599, 126599], "mapped", [1581]], [[126600, 126600], "mapped", [1591]], [[126601, 126601], "mapped", [1610]], [[126602, 126602], "disallowed"], [[126603, 126603], "mapped", [1604]], [[126604, 126604], "mapped", [1605]], [[126605, 126605], "mapped", [1606]], [[126606, 126606], "mapped", [1587]], [[126607, 126607], "mapped", [1593]], [[126608, 126608], "mapped", [1601]], [[126609, 126609], "mapped", [1589]], [[126610, 126610], "mapped", [1602]], [[126611, 126611], "mapped", [1585]], [[126612, 126612], "mapped", [1588]], [[126613, 126613], "mapped", [1578]], [[126614, 126614], "mapped", [1579]], [[126615, 126615], "mapped", [1582]], [[126616, 126616], "mapped", [1584]], [[126617, 126617], "mapped", [1590]], [[126618, 126618], "mapped", [1592]], [[126619, 126619], "mapped", [1594]], [[126620, 126624], "disallowed"], [[126625, 126625], "mapped", [1576]], [[126626, 126626], "mapped", [1580]], [[126627, 126627], "mapped", [1583]], [[126628, 126628], "disallowed"], [[126629, 126629], "mapped", [1608]], [[126630, 126630], "mapped", [1586]], [[126631, 126631], "mapped", [1581]], [[126632, 126632], "mapped", [1591]], [[126633, 126633], "mapped", [1610]], [[126634, 126634], "disallowed"], [[126635, 126635], "mapped", [1604]], [[126636, 126636], "mapped", [1605]], [[126637, 126637], "mapped", [1606]], [[126638, 126638], "mapped", [1587]], [[126639, 126639], "mapped", [1593]], [[126640, 126640], "mapped", [1601]], [[126641, 126641], "mapped", [1589]], [[126642, 126642], "mapped", [1602]], [[126643, 126643], "mapped", [1585]], [[126644, 126644], "mapped", [1588]], [[126645, 126645], "mapped", [1578]], [[126646, 126646], "mapped", [1579]], [[126647, 126647], "mapped", [1582]], [[126648, 126648], "mapped", [1584]], [[126649, 126649], "mapped", [1590]], [[126650, 126650], "mapped", [1592]], [[126651, 126651], "mapped", [1594]], [[126652, 126703], "disallowed"], [[126704, 126705], "valid", [], "NV8"], [[126706, 126975], "disallowed"], [[126976, 127019], "valid", [], "NV8"], [[127020, 127023], "disallowed"], [[127024, 127123], "valid", [], "NV8"], [[127124, 127135], "disallowed"], [[127136, 127150], "valid", [], "NV8"], [[127151, 127152], "disallowed"], [[127153, 127166], "valid", [], "NV8"], [[127167, 127167], "valid", [], "NV8"], [[127168, 127168], "disallowed"], [[127169, 127183], "valid", [], "NV8"], [[127184, 127184], "disallowed"], [[127185, 127199], "valid", [], "NV8"], [[127200, 127221], "valid", [], "NV8"], [[127222, 127231], "disallowed"], [[127232, 127232], "disallowed"], [[127233, 127233], "disallowed_STD3_mapped", [48, 44]], [[127234, 127234], "disallowed_STD3_mapped", [49, 44]], [[127235, 127235], "disallowed_STD3_mapped", [50, 44]], [[127236, 127236], "disallowed_STD3_mapped", [51, 44]], [[127237, 127237], "disallowed_STD3_mapped", [52, 44]], [[127238, 127238], "disallowed_STD3_mapped", [53, 44]], [[127239, 127239], "disallowed_STD3_mapped", [54, 44]], [[127240, 127240], "disallowed_STD3_mapped", [55, 44]], [[127241, 127241], "disallowed_STD3_mapped", [56, 44]], [[127242, 127242], "disallowed_STD3_mapped", [57, 44]], [[127243, 127244], "valid", [], "NV8"], [[127245, 127247], "disallowed"], [[127248, 127248], "disallowed_STD3_mapped", [40, 97, 41]], [[127249, 127249], "disallowed_STD3_mapped", [40, 98, 41]], [[127250, 127250], "disallowed_STD3_mapped", [40, 99, 41]], [[127251, 127251], "disallowed_STD3_mapped", [40, 100, 41]], [[127252, 127252], "disallowed_STD3_mapped", [40, 101, 41]], [[127253, 127253], "disallowed_STD3_mapped", [40, 102, 41]], [[127254, 127254], "disallowed_STD3_mapped", [40, 103, 41]], [[127255, 127255], "disallowed_STD3_mapped", [40, 104, 41]], [[127256, 127256], "disallowed_STD3_mapped", [40, 105, 41]], [[127257, 127257], "disallowed_STD3_mapped", [40, 106, 41]], [[127258, 127258], "disallowed_STD3_mapped", [40, 107, 41]], [[127259, 127259], "disallowed_STD3_mapped", [40, 108, 41]], [[127260, 127260], "disallowed_STD3_mapped", [40, 109, 41]], [[127261, 127261], "disallowed_STD3_mapped", [40, 110, 41]], [[127262, 127262], "disallowed_STD3_mapped", [40, 111, 41]], [[127263, 127263], "disallowed_STD3_mapped", [40, 112, 41]], [[127264, 127264], "disallowed_STD3_mapped", [40, 113, 41]], [[127265, 127265], "disallowed_STD3_mapped", [40, 114, 41]], [[127266, 127266], "disallowed_STD3_mapped", [40, 115, 41]], [[127267, 127267], "disallowed_STD3_mapped", [40, 116, 41]], [[127268, 127268], "disallowed_STD3_mapped", [40, 117, 41]], [[127269, 127269], "disallowed_STD3_mapped", [40, 118, 41]], [[127270, 127270], "disallowed_STD3_mapped", [40, 119, 41]], [[127271, 127271], "disallowed_STD3_mapped", [40, 120, 41]], [[127272, 127272], "disallowed_STD3_mapped", [40, 121, 41]], [[127273, 127273], "disallowed_STD3_mapped", [40, 122, 41]], [[127274, 127274], "mapped", [12308, 115, 12309]], [[127275, 127275], "mapped", [99]], [[127276, 127276], "mapped", [114]], [[127277, 127277], "mapped", [99, 100]], [[127278, 127278], "mapped", [119, 122]], [[127279, 127279], "disallowed"], [[127280, 127280], "mapped", [97]], [[127281, 127281], "mapped", [98]], [[127282, 127282], "mapped", [99]], [[127283, 127283], "mapped", [100]], [[127284, 127284], "mapped", [101]], [[127285, 127285], "mapped", [102]], [[127286, 127286], "mapped", [103]], [[127287, 127287], "mapped", [104]], [[127288, 127288], "mapped", [105]], [[127289, 127289], "mapped", [106]], [[127290, 127290], "mapped", [107]], [[127291, 127291], "mapped", [108]], [[127292, 127292], "mapped", [109]], [[127293, 127293], "mapped", [110]], [[127294, 127294], "mapped", [111]], [[127295, 127295], "mapped", [112]], [[127296, 127296], "mapped", [113]], [[127297, 127297], "mapped", [114]], [[127298, 127298], "mapped", [115]], [[127299, 127299], "mapped", [116]], [[127300, 127300], "mapped", [117]], [[127301, 127301], "mapped", [118]], [[127302, 127302], "mapped", [119]], [[127303, 127303], "mapped", [120]], [[127304, 127304], "mapped", [121]], [[127305, 127305], "mapped", [122]], [[127306, 127306], "mapped", [104, 118]], [[127307, 127307], "mapped", [109, 118]], [[127308, 127308], "mapped", [115, 100]], [[127309, 127309], "mapped", [115, 115]], [[127310, 127310], "mapped", [112, 112, 118]], [[127311, 127311], "mapped", [119, 99]], [[127312, 127318], "valid", [], "NV8"], [[127319, 127319], "valid", [], "NV8"], [[127320, 127326], "valid", [], "NV8"], [[127327, 127327], "valid", [], "NV8"], [[127328, 127337], "valid", [], "NV8"], [[127338, 127338], "mapped", [109, 99]], [[127339, 127339], "mapped", [109, 100]], [[127340, 127343], "disallowed"], [[127344, 127352], "valid", [], "NV8"], [[127353, 127353], "valid", [], "NV8"], [[127354, 127354], "valid", [], "NV8"], [[127355, 127356], "valid", [], "NV8"], [[127357, 127358], "valid", [], "NV8"], [[127359, 127359], "valid", [], "NV8"], [[127360, 127369], "valid", [], "NV8"], [[127370, 127373], "valid", [], "NV8"], [[127374, 127375], "valid", [], "NV8"], [[127376, 127376], "mapped", [100, 106]], [[127377, 127386], "valid", [], "NV8"], [[127387, 127461], "disallowed"], [[127462, 127487], "valid", [], "NV8"], [[127488, 127488], "mapped", [12411, 12363]], [[127489, 127489], "mapped", [12467, 12467]], [[127490, 127490], "mapped", [12469]], [[127491, 127503], "disallowed"], [[127504, 127504], "mapped", [25163]], [[127505, 127505], "mapped", [23383]], [[127506, 127506], "mapped", [21452]], [[127507, 127507], "mapped", [12487]], [[127508, 127508], "mapped", [20108]], [[127509, 127509], "mapped", [22810]], [[127510, 127510], "mapped", [35299]], [[127511, 127511], "mapped", [22825]], [[127512, 127512], "mapped", [20132]], [[127513, 127513], "mapped", [26144]], [[127514, 127514], "mapped", [28961]], [[127515, 127515], "mapped", [26009]], [[127516, 127516], "mapped", [21069]], [[127517, 127517], "mapped", [24460]], [[127518, 127518], "mapped", [20877]], [[127519, 127519], "mapped", [26032]], [[127520, 127520], "mapped", [21021]], [[127521, 127521], "mapped", [32066]], [[127522, 127522], "mapped", [29983]], [[127523, 127523], "mapped", [36009]], [[127524, 127524], "mapped", [22768]], [[127525, 127525], "mapped", [21561]], [[127526, 127526], "mapped", [28436]], [[127527, 127527], "mapped", [25237]], [[127528, 127528], "mapped", [25429]], [[127529, 127529], "mapped", [19968]], [[127530, 127530], "mapped", [19977]], [[127531, 127531], "mapped", [36938]], [[127532, 127532], "mapped", [24038]], [[127533, 127533], "mapped", [20013]], [[127534, 127534], "mapped", [21491]], [[127535, 127535], "mapped", [25351]], [[127536, 127536], "mapped", [36208]], [[127537, 127537], "mapped", [25171]], [[127538, 127538], "mapped", [31105]], [[127539, 127539], "mapped", [31354]], [[127540, 127540], "mapped", [21512]], [[127541, 127541], "mapped", [28288]], [[127542, 127542], "mapped", [26377]], [[127543, 127543], "mapped", [26376]], [[127544, 127544], "mapped", [30003]], [[127545, 127545], "mapped", [21106]], [[127546, 127546], "mapped", [21942]], [[127547, 127551], "disallowed"], [[127552, 127552], "mapped", [12308, 26412, 12309]], [[127553, 127553], "mapped", [12308, 19977, 12309]], [[127554, 127554], "mapped", [12308, 20108, 12309]], [[127555, 127555], "mapped", [12308, 23433, 12309]], [[127556, 127556], "mapped", [12308, 28857, 12309]], [[127557, 127557], "mapped", [12308, 25171, 12309]], [[127558, 127558], "mapped", [12308, 30423, 12309]], [[127559, 127559], "mapped", [12308, 21213, 12309]], [[127560, 127560], "mapped", [12308, 25943, 12309]], [[127561, 127567], "disallowed"], [[127568, 127568], "mapped", [24471]], [[127569, 127569], "mapped", [21487]], [[127570, 127743], "disallowed"], [[127744, 127776], "valid", [], "NV8"], [[127777, 127788], "valid", [], "NV8"], [[127789, 127791], "valid", [], "NV8"], [[127792, 127797], "valid", [], "NV8"], [[127798, 127798], "valid", [], "NV8"], [[127799, 127868], "valid", [], "NV8"], [[127869, 127869], "valid", [], "NV8"], [[127870, 127871], "valid", [], "NV8"], [[127872, 127891], "valid", [], "NV8"], [[127892, 127903], "valid", [], "NV8"], [[127904, 127940], "valid", [], "NV8"], [[127941, 127941], "valid", [], "NV8"], [[127942, 127946], "valid", [], "NV8"], [[127947, 127950], "valid", [], "NV8"], [[127951, 127955], "valid", [], "NV8"], [[127956, 127967], "valid", [], "NV8"], [[127968, 127984], "valid", [], "NV8"], [[127985, 127991], "valid", [], "NV8"], [[127992, 127999], "valid", [], "NV8"], [[128e3, 128062], "valid", [], "NV8"], [[128063, 128063], "valid", [], "NV8"], [[128064, 128064], "valid", [], "NV8"], [[128065, 128065], "valid", [], "NV8"], [[128066, 128247], "valid", [], "NV8"], [[128248, 128248], "valid", [], "NV8"], [[128249, 128252], "valid", [], "NV8"], [[128253, 128254], "valid", [], "NV8"], [[128255, 128255], "valid", [], "NV8"], [[128256, 128317], "valid", [], "NV8"], [[128318, 128319], "valid", [], "NV8"], [[128320, 128323], "valid", [], "NV8"], [[128324, 128330], "valid", [], "NV8"], [[128331, 128335], "valid", [], "NV8"], [[128336, 128359], "valid", [], "NV8"], [[128360, 128377], "valid", [], "NV8"], [[128378, 128378], "disallowed"], [[128379, 128419], "valid", [], "NV8"], [[128420, 128420], "disallowed"], [[128421, 128506], "valid", [], "NV8"], [[128507, 128511], "valid", [], "NV8"], [[128512, 128512], "valid", [], "NV8"], [[128513, 128528], "valid", [], "NV8"], [[128529, 128529], "valid", [], "NV8"], [[128530, 128532], "valid", [], "NV8"], [[128533, 128533], "valid", [], "NV8"], [[128534, 128534], "valid", [], "NV8"], [[128535, 128535], "valid", [], "NV8"], [[128536, 128536], "valid", [], "NV8"], [[128537, 128537], "valid", [], "NV8"], [[128538, 128538], "valid", [], "NV8"], [[128539, 128539], "valid", [], "NV8"], [[128540, 128542], "valid", [], "NV8"], [[128543, 128543], "valid", [], "NV8"], [[128544, 128549], "valid", [], "NV8"], [[128550, 128551], "valid", [], "NV8"], [[128552, 128555], "valid", [], "NV8"], [[128556, 128556], "valid", [], "NV8"], [[128557, 128557], "valid", [], "NV8"], [[128558, 128559], "valid", [], "NV8"], [[128560, 128563], "valid", [], "NV8"], [[128564, 128564], "valid", [], "NV8"], [[128565, 128576], "valid", [], "NV8"], [[128577, 128578], "valid", [], "NV8"], [[128579, 128580], "valid", [], "NV8"], [[128581, 128591], "valid", [], "NV8"], [[128592, 128639], "valid", [], "NV8"], [[128640, 128709], "valid", [], "NV8"], [[128710, 128719], "valid", [], "NV8"], [[128720, 128720], "valid", [], "NV8"], [[128721, 128735], "disallowed"], [[128736, 128748], "valid", [], "NV8"], [[128749, 128751], "disallowed"], [[128752, 128755], "valid", [], "NV8"], [[128756, 128767], "disallowed"], [[128768, 128883], "valid", [], "NV8"], [[128884, 128895], "disallowed"], [[128896, 128980], "valid", [], "NV8"], [[128981, 129023], "disallowed"], [[129024, 129035], "valid", [], "NV8"], [[129036, 129039], "disallowed"], [[129040, 129095], "valid", [], "NV8"], [[129096, 129103], "disallowed"], [[129104, 129113], "valid", [], "NV8"], [[129114, 129119], "disallowed"], [[129120, 129159], "valid", [], "NV8"], [[129160, 129167], "disallowed"], [[129168, 129197], "valid", [], "NV8"], [[129198, 129295], "disallowed"], [[129296, 129304], "valid", [], "NV8"], [[129305, 129407], "disallowed"], [[129408, 129412], "valid", [], "NV8"], [[129413, 129471], "disallowed"], [[129472, 129472], "valid", [], "NV8"], [[129473, 131069], "disallowed"], [[131070, 131071], "disallowed"], [[131072, 173782], "valid"], [[173783, 173823], "disallowed"], [[173824, 177972], "valid"], [[177973, 177983], "disallowed"], [[177984, 178205], "valid"], [[178206, 178207], "disallowed"], [[178208, 183969], "valid"], [[183970, 194559], "disallowed"], [[194560, 194560], "mapped", [20029]], [[194561, 194561], "mapped", [20024]], [[194562, 194562], "mapped", [20033]], [[194563, 194563], "mapped", [131362]], [[194564, 194564], "mapped", [20320]], [[194565, 194565], "mapped", [20398]], [[194566, 194566], "mapped", [20411]], [[194567, 194567], "mapped", [20482]], [[194568, 194568], "mapped", [20602]], [[194569, 194569], "mapped", [20633]], [[194570, 194570], "mapped", [20711]], [[194571, 194571], "mapped", [20687]], [[194572, 194572], "mapped", [13470]], [[194573, 194573], "mapped", [132666]], [[194574, 194574], "mapped", [20813]], [[194575, 194575], "mapped", [20820]], [[194576, 194576], "mapped", [20836]], [[194577, 194577], "mapped", [20855]], [[194578, 194578], "mapped", [132380]], [[194579, 194579], "mapped", [13497]], [[194580, 194580], "mapped", [20839]], [[194581, 194581], "mapped", [20877]], [[194582, 194582], "mapped", [132427]], [[194583, 194583], "mapped", [20887]], [[194584, 194584], "mapped", [20900]], [[194585, 194585], "mapped", [20172]], [[194586, 194586], "mapped", [20908]], [[194587, 194587], "mapped", [20917]], [[194588, 194588], "mapped", [168415]], [[194589, 194589], "mapped", [20981]], [[194590, 194590], "mapped", [20995]], [[194591, 194591], "mapped", [13535]], [[194592, 194592], "mapped", [21051]], [[194593, 194593], "mapped", [21062]], [[194594, 194594], "mapped", [21106]], [[194595, 194595], "mapped", [21111]], [[194596, 194596], "mapped", [13589]], [[194597, 194597], "mapped", [21191]], [[194598, 194598], "mapped", [21193]], [[194599, 194599], "mapped", [21220]], [[194600, 194600], "mapped", [21242]], [[194601, 194601], "mapped", [21253]], [[194602, 194602], "mapped", [21254]], [[194603, 194603], "mapped", [21271]], [[194604, 194604], "mapped", [21321]], [[194605, 194605], "mapped", [21329]], [[194606, 194606], "mapped", [21338]], [[194607, 194607], "mapped", [21363]], [[194608, 194608], "mapped", [21373]], [[194609, 194611], "mapped", [21375]], [[194612, 194612], "mapped", [133676]], [[194613, 194613], "mapped", [28784]], [[194614, 194614], "mapped", [21450]], [[194615, 194615], "mapped", [21471]], [[194616, 194616], "mapped", [133987]], [[194617, 194617], "mapped", [21483]], [[194618, 194618], "mapped", [21489]], [[194619, 194619], "mapped", [21510]], [[194620, 194620], "mapped", [21662]], [[194621, 194621], "mapped", [21560]], [[194622, 194622], "mapped", [21576]], [[194623, 194623], "mapped", [21608]], [[194624, 194624], "mapped", [21666]], [[194625, 194625], "mapped", [21750]], [[194626, 194626], "mapped", [21776]], [[194627, 194627], "mapped", [21843]], [[194628, 194628], "mapped", [21859]], [[194629, 194630], "mapped", [21892]], [[194631, 194631], "mapped", [21913]], [[194632, 194632], "mapped", [21931]], [[194633, 194633], "mapped", [21939]], [[194634, 194634], "mapped", [21954]], [[194635, 194635], "mapped", [22294]], [[194636, 194636], "mapped", [22022]], [[194637, 194637], "mapped", [22295]], [[194638, 194638], "mapped", [22097]], [[194639, 194639], "mapped", [22132]], [[194640, 194640], "mapped", [20999]], [[194641, 194641], "mapped", [22766]], [[194642, 194642], "mapped", [22478]], [[194643, 194643], "mapped", [22516]], [[194644, 194644], "mapped", [22541]], [[194645, 194645], "mapped", [22411]], [[194646, 194646], "mapped", [22578]], [[194647, 194647], "mapped", [22577]], [[194648, 194648], "mapped", [22700]], [[194649, 194649], "mapped", [136420]], [[194650, 194650], "mapped", [22770]], [[194651, 194651], "mapped", [22775]], [[194652, 194652], "mapped", [22790]], [[194653, 194653], "mapped", [22810]], [[194654, 194654], "mapped", [22818]], [[194655, 194655], "mapped", [22882]], [[194656, 194656], "mapped", [136872]], [[194657, 194657], "mapped", [136938]], [[194658, 194658], "mapped", [23020]], [[194659, 194659], "mapped", [23067]], [[194660, 194660], "mapped", [23079]], [[194661, 194661], "mapped", [23e3]], [[194662, 194662], "mapped", [23142]], [[194663, 194663], "mapped", [14062]], [[194664, 194664], "disallowed"], [[194665, 194665], "mapped", [23304]], [[194666, 194667], "mapped", [23358]], [[194668, 194668], "mapped", [137672]], [[194669, 194669], "mapped", [23491]], [[194670, 194670], "mapped", [23512]], [[194671, 194671], "mapped", [23527]], [[194672, 194672], "mapped", [23539]], [[194673, 194673], "mapped", [138008]], [[194674, 194674], "mapped", [23551]], [[194675, 194675], "mapped", [23558]], [[194676, 194676], "disallowed"], [[194677, 194677], "mapped", [23586]], [[194678, 194678], "mapped", [14209]], [[194679, 194679], "mapped", [23648]], [[194680, 194680], "mapped", [23662]], [[194681, 194681], "mapped", [23744]], [[194682, 194682], "mapped", [23693]], [[194683, 194683], "mapped", [138724]], [[194684, 194684], "mapped", [23875]], [[194685, 194685], "mapped", [138726]], [[194686, 194686], "mapped", [23918]], [[194687, 194687], "mapped", [23915]], [[194688, 194688], "mapped", [23932]], [[194689, 194689], "mapped", [24033]], [[194690, 194690], "mapped", [24034]], [[194691, 194691], "mapped", [14383]], [[194692, 194692], "mapped", [24061]], [[194693, 194693], "mapped", [24104]], [[194694, 194694], "mapped", [24125]], [[194695, 194695], "mapped", [24169]], [[194696, 194696], "mapped", [14434]], [[194697, 194697], "mapped", [139651]], [[194698, 194698], "mapped", [14460]], [[194699, 194699], "mapped", [24240]], [[194700, 194700], "mapped", [24243]], [[194701, 194701], "mapped", [24246]], [[194702, 194702], "mapped", [24266]], [[194703, 194703], "mapped", [172946]], [[194704, 194704], "mapped", [24318]], [[194705, 194706], "mapped", [140081]], [[194707, 194707], "mapped", [33281]], [[194708, 194709], "mapped", [24354]], [[194710, 194710], "mapped", [14535]], [[194711, 194711], "mapped", [144056]], [[194712, 194712], "mapped", [156122]], [[194713, 194713], "mapped", [24418]], [[194714, 194714], "mapped", [24427]], [[194715, 194715], "mapped", [14563]], [[194716, 194716], "mapped", [24474]], [[194717, 194717], "mapped", [24525]], [[194718, 194718], "mapped", [24535]], [[194719, 194719], "mapped", [24569]], [[194720, 194720], "mapped", [24705]], [[194721, 194721], "mapped", [14650]], [[194722, 194722], "mapped", [14620]], [[194723, 194723], "mapped", [24724]], [[194724, 194724], "mapped", [141012]], [[194725, 194725], "mapped", [24775]], [[194726, 194726], "mapped", [24904]], [[194727, 194727], "mapped", [24908]], [[194728, 194728], "mapped", [24910]], [[194729, 194729], "mapped", [24908]], [[194730, 194730], "mapped", [24954]], [[194731, 194731], "mapped", [24974]], [[194732, 194732], "mapped", [25010]], [[194733, 194733], "mapped", [24996]], [[194734, 194734], "mapped", [25007]], [[194735, 194735], "mapped", [25054]], [[194736, 194736], "mapped", [25074]], [[194737, 194737], "mapped", [25078]], [[194738, 194738], "mapped", [25104]], [[194739, 194739], "mapped", [25115]], [[194740, 194740], "mapped", [25181]], [[194741, 194741], "mapped", [25265]], [[194742, 194742], "mapped", [25300]], [[194743, 194743], "mapped", [25424]], [[194744, 194744], "mapped", [142092]], [[194745, 194745], "mapped", [25405]], [[194746, 194746], "mapped", [25340]], [[194747, 194747], "mapped", [25448]], [[194748, 194748], "mapped", [25475]], [[194749, 194749], "mapped", [25572]], [[194750, 194750], "mapped", [142321]], [[194751, 194751], "mapped", [25634]], [[194752, 194752], "mapped", [25541]], [[194753, 194753], "mapped", [25513]], [[194754, 194754], "mapped", [14894]], [[194755, 194755], "mapped", [25705]], [[194756, 194756], "mapped", [25726]], [[194757, 194757], "mapped", [25757]], [[194758, 194758], "mapped", [25719]], [[194759, 194759], "mapped", [14956]], [[194760, 194760], "mapped", [25935]], [[194761, 194761], "mapped", [25964]], [[194762, 194762], "mapped", [143370]], [[194763, 194763], "mapped", [26083]], [[194764, 194764], "mapped", [26360]], [[194765, 194765], "mapped", [26185]], [[194766, 194766], "mapped", [15129]], [[194767, 194767], "mapped", [26257]], [[194768, 194768], "mapped", [15112]], [[194769, 194769], "mapped", [15076]], [[194770, 194770], "mapped", [20882]], [[194771, 194771], "mapped", [20885]], [[194772, 194772], "mapped", [26368]], [[194773, 194773], "mapped", [26268]], [[194774, 194774], "mapped", [32941]], [[194775, 194775], "mapped", [17369]], [[194776, 194776], "mapped", [26391]], [[194777, 194777], "mapped", [26395]], [[194778, 194778], "mapped", [26401]], [[194779, 194779], "mapped", [26462]], [[194780, 194780], "mapped", [26451]], [[194781, 194781], "mapped", [144323]], [[194782, 194782], "mapped", [15177]], [[194783, 194783], "mapped", [26618]], [[194784, 194784], "mapped", [26501]], [[194785, 194785], "mapped", [26706]], [[194786, 194786], "mapped", [26757]], [[194787, 194787], "mapped", [144493]], [[194788, 194788], "mapped", [26766]], [[194789, 194789], "mapped", [26655]], [[194790, 194790], "mapped", [26900]], [[194791, 194791], "mapped", [15261]], [[194792, 194792], "mapped", [26946]], [[194793, 194793], "mapped", [27043]], [[194794, 194794], "mapped", [27114]], [[194795, 194795], "mapped", [27304]], [[194796, 194796], "mapped", [145059]], [[194797, 194797], "mapped", [27355]], [[194798, 194798], "mapped", [15384]], [[194799, 194799], "mapped", [27425]], [[194800, 194800], "mapped", [145575]], [[194801, 194801], "mapped", [27476]], [[194802, 194802], "mapped", [15438]], [[194803, 194803], "mapped", [27506]], [[194804, 194804], "mapped", [27551]], [[194805, 194805], "mapped", [27578]], [[194806, 194806], "mapped", [27579]], [[194807, 194807], "mapped", [146061]], [[194808, 194808], "mapped", [138507]], [[194809, 194809], "mapped", [146170]], [[194810, 194810], "mapped", [27726]], [[194811, 194811], "mapped", [146620]], [[194812, 194812], "mapped", [27839]], [[194813, 194813], "mapped", [27853]], [[194814, 194814], "mapped", [27751]], [[194815, 194815], "mapped", [27926]], [[194816, 194816], "mapped", [27966]], [[194817, 194817], "mapped", [28023]], [[194818, 194818], "mapped", [27969]], [[194819, 194819], "mapped", [28009]], [[194820, 194820], "mapped", [28024]], [[194821, 194821], "mapped", [28037]], [[194822, 194822], "mapped", [146718]], [[194823, 194823], "mapped", [27956]], [[194824, 194824], "mapped", [28207]], [[194825, 194825], "mapped", [28270]], [[194826, 194826], "mapped", [15667]], [[194827, 194827], "mapped", [28363]], [[194828, 194828], "mapped", [28359]], [[194829, 194829], "mapped", [147153]], [[194830, 194830], "mapped", [28153]], [[194831, 194831], "mapped", [28526]], [[194832, 194832], "mapped", [147294]], [[194833, 194833], "mapped", [147342]], [[194834, 194834], "mapped", [28614]], [[194835, 194835], "mapped", [28729]], [[194836, 194836], "mapped", [28702]], [[194837, 194837], "mapped", [28699]], [[194838, 194838], "mapped", [15766]], [[194839, 194839], "mapped", [28746]], [[194840, 194840], "mapped", [28797]], [[194841, 194841], "mapped", [28791]], [[194842, 194842], "mapped", [28845]], [[194843, 194843], "mapped", [132389]], [[194844, 194844], "mapped", [28997]], [[194845, 194845], "mapped", [148067]], [[194846, 194846], "mapped", [29084]], [[194847, 194847], "disallowed"], [[194848, 194848], "mapped", [29224]], [[194849, 194849], "mapped", [29237]], [[194850, 194850], "mapped", [29264]], [[194851, 194851], "mapped", [149e3]], [[194852, 194852], "mapped", [29312]], [[194853, 194853], "mapped", [29333]], [[194854, 194854], "mapped", [149301]], [[194855, 194855], "mapped", [149524]], [[194856, 194856], "mapped", [29562]], [[194857, 194857], "mapped", [29579]], [[194858, 194858], "mapped", [16044]], [[194859, 194859], "mapped", [29605]], [[194860, 194861], "mapped", [16056]], [[194862, 194862], "mapped", [29767]], [[194863, 194863], "mapped", [29788]], [[194864, 194864], "mapped", [29809]], [[194865, 194865], "mapped", [29829]], [[194866, 194866], "mapped", [29898]], [[194867, 194867], "mapped", [16155]], [[194868, 194868], "mapped", [29988]], [[194869, 194869], "mapped", [150582]], [[194870, 194870], "mapped", [30014]], [[194871, 194871], "mapped", [150674]], [[194872, 194872], "mapped", [30064]], [[194873, 194873], "mapped", [139679]], [[194874, 194874], "mapped", [30224]], [[194875, 194875], "mapped", [151457]], [[194876, 194876], "mapped", [151480]], [[194877, 194877], "mapped", [151620]], [[194878, 194878], "mapped", [16380]], [[194879, 194879], "mapped", [16392]], [[194880, 194880], "mapped", [30452]], [[194881, 194881], "mapped", [151795]], [[194882, 194882], "mapped", [151794]], [[194883, 194883], "mapped", [151833]], [[194884, 194884], "mapped", [151859]], [[194885, 194885], "mapped", [30494]], [[194886, 194887], "mapped", [30495]], [[194888, 194888], "mapped", [30538]], [[194889, 194889], "mapped", [16441]], [[194890, 194890], "mapped", [30603]], [[194891, 194891], "mapped", [16454]], [[194892, 194892], "mapped", [16534]], [[194893, 194893], "mapped", [152605]], [[194894, 194894], "mapped", [30798]], [[194895, 194895], "mapped", [30860]], [[194896, 194896], "mapped", [30924]], [[194897, 194897], "mapped", [16611]], [[194898, 194898], "mapped", [153126]], [[194899, 194899], "mapped", [31062]], [[194900, 194900], "mapped", [153242]], [[194901, 194901], "mapped", [153285]], [[194902, 194902], "mapped", [31119]], [[194903, 194903], "mapped", [31211]], [[194904, 194904], "mapped", [16687]], [[194905, 194905], "mapped", [31296]], [[194906, 194906], "mapped", [31306]], [[194907, 194907], "mapped", [31311]], [[194908, 194908], "mapped", [153980]], [[194909, 194910], "mapped", [154279]], [[194911, 194911], "disallowed"], [[194912, 194912], "mapped", [16898]], [[194913, 194913], "mapped", [154539]], [[194914, 194914], "mapped", [31686]], [[194915, 194915], "mapped", [31689]], [[194916, 194916], "mapped", [16935]], [[194917, 194917], "mapped", [154752]], [[194918, 194918], "mapped", [31954]], [[194919, 194919], "mapped", [17056]], [[194920, 194920], "mapped", [31976]], [[194921, 194921], "mapped", [31971]], [[194922, 194922], "mapped", [32e3]], [[194923, 194923], "mapped", [155526]], [[194924, 194924], "mapped", [32099]], [[194925, 194925], "mapped", [17153]], [[194926, 194926], "mapped", [32199]], [[194927, 194927], "mapped", [32258]], [[194928, 194928], "mapped", [32325]], [[194929, 194929], "mapped", [17204]], [[194930, 194930], "mapped", [156200]], [[194931, 194931], "mapped", [156231]], [[194932, 194932], "mapped", [17241]], [[194933, 194933], "mapped", [156377]], [[194934, 194934], "mapped", [32634]], [[194935, 194935], "mapped", [156478]], [[194936, 194936], "mapped", [32661]], [[194937, 194937], "mapped", [32762]], [[194938, 194938], "mapped", [32773]], [[194939, 194939], "mapped", [156890]], [[194940, 194940], "mapped", [156963]], [[194941, 194941], "mapped", [32864]], [[194942, 194942], "mapped", [157096]], [[194943, 194943], "mapped", [32880]], [[194944, 194944], "mapped", [144223]], [[194945, 194945], "mapped", [17365]], [[194946, 194946], "mapped", [32946]], [[194947, 194947], "mapped", [33027]], [[194948, 194948], "mapped", [17419]], [[194949, 194949], "mapped", [33086]], [[194950, 194950], "mapped", [23221]], [[194951, 194951], "mapped", [157607]], [[194952, 194952], "mapped", [157621]], [[194953, 194953], "mapped", [144275]], [[194954, 194954], "mapped", [144284]], [[194955, 194955], "mapped", [33281]], [[194956, 194956], "mapped", [33284]], [[194957, 194957], "mapped", [36766]], [[194958, 194958], "mapped", [17515]], [[194959, 194959], "mapped", [33425]], [[194960, 194960], "mapped", [33419]], [[194961, 194961], "mapped", [33437]], [[194962, 194962], "mapped", [21171]], [[194963, 194963], "mapped", [33457]], [[194964, 194964], "mapped", [33459]], [[194965, 194965], "mapped", [33469]], [[194966, 194966], "mapped", [33510]], [[194967, 194967], "mapped", [158524]], [[194968, 194968], "mapped", [33509]], [[194969, 194969], "mapped", [33565]], [[194970, 194970], "mapped", [33635]], [[194971, 194971], "mapped", [33709]], [[194972, 194972], "mapped", [33571]], [[194973, 194973], "mapped", [33725]], [[194974, 194974], "mapped", [33767]], [[194975, 194975], "mapped", [33879]], [[194976, 194976], "mapped", [33619]], [[194977, 194977], "mapped", [33738]], [[194978, 194978], "mapped", [33740]], [[194979, 194979], "mapped", [33756]], [[194980, 194980], "mapped", [158774]], [[194981, 194981], "mapped", [159083]], [[194982, 194982], "mapped", [158933]], [[194983, 194983], "mapped", [17707]], [[194984, 194984], "mapped", [34033]], [[194985, 194985], "mapped", [34035]], [[194986, 194986], "mapped", [34070]], [[194987, 194987], "mapped", [160714]], [[194988, 194988], "mapped", [34148]], [[194989, 194989], "mapped", [159532]], [[194990, 194990], "mapped", [17757]], [[194991, 194991], "mapped", [17761]], [[194992, 194992], "mapped", [159665]], [[194993, 194993], "mapped", [159954]], [[194994, 194994], "mapped", [17771]], [[194995, 194995], "mapped", [34384]], [[194996, 194996], "mapped", [34396]], [[194997, 194997], "mapped", [34407]], [[194998, 194998], "mapped", [34409]], [[194999, 194999], "mapped", [34473]], [[195e3, 195e3], "mapped", [34440]], [[195001, 195001], "mapped", [34574]], [[195002, 195002], "mapped", [34530]], [[195003, 195003], "mapped", [34681]], [[195004, 195004], "mapped", [34600]], [[195005, 195005], "mapped", [34667]], [[195006, 195006], "mapped", [34694]], [[195007, 195007], "disallowed"], [[195008, 195008], "mapped", [34785]], [[195009, 195009], "mapped", [34817]], [[195010, 195010], "mapped", [17913]], [[195011, 195011], "mapped", [34912]], [[195012, 195012], "mapped", [34915]], [[195013, 195013], "mapped", [161383]], [[195014, 195014], "mapped", [35031]], [[195015, 195015], "mapped", [35038]], [[195016, 195016], "mapped", [17973]], [[195017, 195017], "mapped", [35066]], [[195018, 195018], "mapped", [13499]], [[195019, 195019], "mapped", [161966]], [[195020, 195020], "mapped", [162150]], [[195021, 195021], "mapped", [18110]], [[195022, 195022], "mapped", [18119]], [[195023, 195023], "mapped", [35488]], [[195024, 195024], "mapped", [35565]], [[195025, 195025], "mapped", [35722]], [[195026, 195026], "mapped", [35925]], [[195027, 195027], "mapped", [162984]], [[195028, 195028], "mapped", [36011]], [[195029, 195029], "mapped", [36033]], [[195030, 195030], "mapped", [36123]], [[195031, 195031], "mapped", [36215]], [[195032, 195032], "mapped", [163631]], [[195033, 195033], "mapped", [133124]], [[195034, 195034], "mapped", [36299]], [[195035, 195035], "mapped", [36284]], [[195036, 195036], "mapped", [36336]], [[195037, 195037], "mapped", [133342]], [[195038, 195038], "mapped", [36564]], [[195039, 195039], "mapped", [36664]], [[195040, 195040], "mapped", [165330]], [[195041, 195041], "mapped", [165357]], [[195042, 195042], "mapped", [37012]], [[195043, 195043], "mapped", [37105]], [[195044, 195044], "mapped", [37137]], [[195045, 195045], "mapped", [165678]], [[195046, 195046], "mapped", [37147]], [[195047, 195047], "mapped", [37432]], [[195048, 195048], "mapped", [37591]], [[195049, 195049], "mapped", [37592]], [[195050, 195050], "mapped", [37500]], [[195051, 195051], "mapped", [37881]], [[195052, 195052], "mapped", [37909]], [[195053, 195053], "mapped", [166906]], [[195054, 195054], "mapped", [38283]], [[195055, 195055], "mapped", [18837]], [[195056, 195056], "mapped", [38327]], [[195057, 195057], "mapped", [167287]], [[195058, 195058], "mapped", [18918]], [[195059, 195059], "mapped", [38595]], [[195060, 195060], "mapped", [23986]], [[195061, 195061], "mapped", [38691]], [[195062, 195062], "mapped", [168261]], [[195063, 195063], "mapped", [168474]], [[195064, 195064], "mapped", [19054]], [[195065, 195065], "mapped", [19062]], [[195066, 195066], "mapped", [38880]], [[195067, 195067], "mapped", [168970]], [[195068, 195068], "mapped", [19122]], [[195069, 195069], "mapped", [169110]], [[195070, 195071], "mapped", [38923]], [[195072, 195072], "mapped", [38953]], [[195073, 195073], "mapped", [169398]], [[195074, 195074], "mapped", [39138]], [[195075, 195075], "mapped", [19251]], [[195076, 195076], "mapped", [39209]], [[195077, 195077], "mapped", [39335]], [[195078, 195078], "mapped", [39362]], [[195079, 195079], "mapped", [39422]], [[195080, 195080], "mapped", [19406]], [[195081, 195081], "mapped", [170800]], [[195082, 195082], "mapped", [39698]], [[195083, 195083], "mapped", [4e4]], [[195084, 195084], "mapped", [40189]], [[195085, 195085], "mapped", [19662]], [[195086, 195086], "mapped", [19693]], [[195087, 195087], "mapped", [40295]], [[195088, 195088], "mapped", [172238]], [[195089, 195089], "mapped", [19704]], [[195090, 195090], "mapped", [172293]], [[195091, 195091], "mapped", [172558]], [[195092, 195092], "mapped", [172689]], [[195093, 195093], "mapped", [40635]], [[195094, 195094], "mapped", [19798]], [[195095, 195095], "mapped", [40697]], [[195096, 195096], "mapped", [40702]], [[195097, 195097], "mapped", [40709]], [[195098, 195098], "mapped", [40719]], [[195099, 195099], "mapped", [40726]], [[195100, 195100], "mapped", [40763]], [[195101, 195101], "mapped", [173568]], [[195102, 196605], "disallowed"], [[196606, 196607], "disallowed"], [[196608, 262141], "disallowed"], [[262142, 262143], "disallowed"], [[262144, 327677], "disallowed"], [[327678, 327679], "disallowed"], [[327680, 393213], "disallowed"], [[393214, 393215], "disallowed"], [[393216, 458749], "disallowed"], [[458750, 458751], "disallowed"], [[458752, 524285], "disallowed"], [[524286, 524287], "disallowed"], [[524288, 589821], "disallowed"], [[589822, 589823], "disallowed"], [[589824, 655357], "disallowed"], [[655358, 655359], "disallowed"], [[655360, 720893], "disallowed"], [[720894, 720895], "disallowed"], [[720896, 786429], "disallowed"], [[786430, 786431], "disallowed"], [[786432, 851965], "disallowed"], [[851966, 851967], "disallowed"], [[851968, 917501], "disallowed"], [[917502, 917503], "disallowed"], [[917504, 917504], "disallowed"], [[917505, 917505], "disallowed"], [[917506, 917535], "disallowed"], [[917536, 917631], "disallowed"], [[917632, 917759], "disallowed"], [[917760, 917999], "ignored"], [[918e3, 983037], "disallowed"], [[983038, 983039], "disallowed"], [[983040, 1048573], "disallowed"], [[1048574, 1048575], "disallowed"], [[1048576, 1114109], "disallowed"], [[1114110, 1114111], "disallowed"]]; + } +}); - (arrow_function - parameters: (formal_parameters ("(") @function.parameters.cursor) @function.parameters - body: (statement_block ("{") @function.body.cursor) @function.body) +// ../node_modules/.pnpm/tr46@0.0.3/node_modules/tr46/index.js +var require_tr46 = __commonJS({ + "../node_modules/.pnpm/tr46@0.0.3/node_modules/tr46/index.js"(exports2, module2) { + "use strict"; + var punycode = require("punycode"); + var mappingTable = require_mappingTable(); + var PROCESSING_OPTIONS = { + TRANSITIONAL: 0, + NONTRANSITIONAL: 1 + }; + function normalize6(str) { + return str.split("\0").map(function(s) { + return s.normalize("NFC"); + }).join("\0"); + } + function findStatus(val) { + var start4 = 0; + var end = mappingTable.length - 1; + while (start4 <= end) { + var mid = Math.floor((start4 + end) / 2); + var target = mappingTable[mid]; + if (target[0][0] <= val && target[0][1] >= val) { + return target; + } else if (target[0][0] > val) { + end = mid - 1; + } else { + start4 = mid + 1; + } + } + return null; + } + var regexAstralSymbols = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g; + function countSymbols(string) { + return string.replace(regexAstralSymbols, "_").length; + } + function mapChars(domain_name, useSTD3, processing_option) { + var hasError = false; + var processed = ""; + var len = countSymbols(domain_name); + for (var i = 0; i < len; ++i) { + var codePoint = domain_name.codePointAt(i); + var status = findStatus(codePoint); + switch (status[1]) { + case "disallowed": + hasError = true; + processed += String.fromCodePoint(codePoint); + break; + case "ignored": + break; + case "mapped": + processed += String.fromCodePoint.apply(String, status[2]); + break; + case "deviation": + if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) { + processed += String.fromCodePoint.apply(String, status[2]); + } else { + processed += String.fromCodePoint(codePoint); + } + break; + case "valid": + processed += String.fromCodePoint(codePoint); + break; + case "disallowed_STD3_mapped": + if (useSTD3) { + hasError = true; + processed += String.fromCodePoint(codePoint); + } else { + processed += String.fromCodePoint.apply(String, status[2]); + } + break; + case "disallowed_STD3_valid": + if (useSTD3) { + hasError = true; + } + processed += String.fromCodePoint(codePoint); + break; + } + } + return { + string: processed, + error: hasError + }; + } + var combiningMarksRegex = /[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/; + function validateLabel(label, processing_option) { + if (label.substr(0, 4) === "xn--") { + label = punycode.toUnicode(label); + processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL; + } + var error = false; + if (normalize6(label) !== label || label[3] === "-" && label[4] === "-" || label[0] === "-" || label[label.length - 1] === "-" || label.indexOf(".") !== -1 || label.search(combiningMarksRegex) === 0) { + error = true; + } + var len = countSymbols(label); + for (var i = 0; i < len; ++i) { + var status = findStatus(label.codePointAt(i)); + if (processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== "valid" || processing === PROCESSING_OPTIONS.NONTRANSITIONAL && status[1] !== "valid" && status[1] !== "deviation") { + error = true; + break; + } + } + return { + label, + error + }; + } + function processing(domain_name, useSTD3, processing_option) { + var result = mapChars(domain_name, useSTD3, processing_option); + result.string = normalize6(result.string); + var labels = result.string.split("."); + for (var i = 0; i < labels.length; ++i) { + try { + var validation = validateLabel(labels[i]); + labels[i] = validation.label; + result.error = result.error || validation.error; + } catch (e) { + result.error = true; + } + } + return { + string: labels.join("."), + error: result.error + }; + } + module2.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) { + var result = processing(domain_name, useSTD3, processing_option); + var labels = result.string.split("."); + labels = labels.map(function(l2) { + try { + return punycode.toASCII(l2); + } catch (e) { + result.error = true; + return l2; + } + }); + if (verifyDnsLength) { + var total = labels.slice(0, labels.length - 1).join(".").length; + if (total.length > 253 || total.length === 0) { + result.error = true; + } + for (var i = 0; i < labels.length; ++i) { + if (labels.length > 63 || labels.length === 0) { + result.error = true; + break; + } + } + } + if (result.error) + return null; + return labels.join("."); + }; + module2.exports.toUnicode = function(domain_name, useSTD3) { + var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL); + return { + domain: result.string, + error: result.error + }; + }; + module2.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS; + } +}); - (class_declaration - name: (_) @class.name! - body: (class_body ("{") @class.body.cursor) @class.body) +// ../node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/url-state-machine.js +var require_url_state_machine = __commonJS({ + "../node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/url-state-machine.js"(exports2, module2) { + "use strict"; + var punycode = require("punycode"); + var tr46 = require_tr46(); + var specialSchemes = { + ftp: 21, + file: null, + gopher: 70, + http: 80, + https: 443, + ws: 80, + wss: 443 + }; + var failure = Symbol("failure"); + function countSymbols(str) { + return punycode.ucs2.decode(str).length; + } + function at(input, idx) { + const c = input[idx]; + return isNaN(c) ? void 0 : String.fromCodePoint(c); + } + function isASCIIDigit(c) { + return c >= 48 && c <= 57; + } + function isASCIIAlpha(c) { + return c >= 65 && c <= 90 || c >= 97 && c <= 122; + } + function isASCIIAlphanumeric(c) { + return isASCIIAlpha(c) || isASCIIDigit(c); + } + function isASCIIHex(c) { + return isASCIIDigit(c) || c >= 65 && c <= 70 || c >= 97 && c <= 102; + } + function isSingleDot(buffer2) { + return buffer2 === "." || buffer2.toLowerCase() === "%2e"; + } + function isDoubleDot(buffer2) { + buffer2 = buffer2.toLowerCase(); + return buffer2 === ".." || buffer2 === "%2e." || buffer2 === ".%2e" || buffer2 === "%2e%2e"; + } + function isWindowsDriveLetterCodePoints(cp1, cp2) { + return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124); + } + function isWindowsDriveLetterString(string) { + return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === ":" || string[1] === "|"); + } + function isNormalizedWindowsDriveLetterString(string) { + return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === ":"; + } + function containsForbiddenHostCodePoint(string) { + return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/) !== -1; + } + function containsForbiddenHostCodePointExcludingPercent(string) { + return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/) !== -1; + } + function isSpecialScheme(scheme) { + return specialSchemes[scheme] !== void 0; + } + function isSpecial(url2) { + return isSpecialScheme(url2.scheme); + } + function defaultPort(scheme) { + return specialSchemes[scheme]; + } + function percentEncode(c) { + let hex = c.toString(16).toUpperCase(); + if (hex.length === 1) { + hex = "0" + hex; + } + return "%" + hex; + } + function utf8PercentEncode(c) { + const buf = new Buffer(c); + let str = ""; + for (let i = 0; i < buf.length; ++i) { + str += percentEncode(buf[i]); + } + return str; + } + function utf8PercentDecode(str) { + const input = new Buffer(str); + const output = []; + for (let i = 0; i < input.length; ++i) { + if (input[i] !== 37) { + output.push(input[i]); + } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) { + output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16)); + i += 2; + } else { + output.push(input[i]); + } + } + return new Buffer(output).toString(); + } + function isC0ControlPercentEncode(c) { + return c <= 31 || c > 126; + } + var extraPathPercentEncodeSet = /* @__PURE__ */ new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]); + function isPathPercentEncode(c) { + return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c); + } + var extraUserinfoPercentEncodeSet = /* @__PURE__ */ new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]); + function isUserinfoPercentEncode(c) { + return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c); + } + function percentEncodeChar(c, encodeSetPredicate) { + const cStr = String.fromCodePoint(c); + if (encodeSetPredicate(c)) { + return utf8PercentEncode(cStr); + } + return cStr; + } + function parseIPv4Number(input) { + let R = 10; + if (input.length >= 2 && input.charAt(0) === "0" && input.charAt(1).toLowerCase() === "x") { + input = input.substring(2); + R = 16; + } else if (input.length >= 2 && input.charAt(0) === "0") { + input = input.substring(1); + R = 8; + } + if (input === "") { + return 0; + } + const regex = R === 10 ? /[^0-9]/ : R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/; + if (regex.test(input)) { + return failure; + } + return parseInt(input, R); + } + function parseIPv4(input) { + const parts = input.split("."); + if (parts[parts.length - 1] === "") { + if (parts.length > 1) { + parts.pop(); + } + } + if (parts.length > 4) { + return input; + } + const numbers = []; + for (const part of parts) { + if (part === "") { + return input; + } + const n = parseIPv4Number(part); + if (n === failure) { + return input; + } + numbers.push(n); + } + for (let i = 0; i < numbers.length - 1; ++i) { + if (numbers[i] > 255) { + return failure; + } + } + if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) { + return failure; + } + let ipv4 = numbers.pop(); + let counter = 0; + for (const n of numbers) { + ipv4 += n * Math.pow(256, 3 - counter); + ++counter; + } + return ipv4; + } + function serializeIPv4(address) { + let output = ""; + let n = address; + for (let i = 1; i <= 4; ++i) { + output = String(n % 256) + output; + if (i !== 4) { + output = "." + output; + } + n = Math.floor(n / 256); + } + return output; + } + function parseIPv6(input) { + const address = [0, 0, 0, 0, 0, 0, 0, 0]; + let pieceIndex = 0; + let compress = null; + let pointer = 0; + input = punycode.ucs2.decode(input); + if (input[pointer] === 58) { + if (input[pointer + 1] !== 58) { + return failure; + } + pointer += 2; + ++pieceIndex; + compress = pieceIndex; + } + while (pointer < input.length) { + if (pieceIndex === 8) { + return failure; + } + if (input[pointer] === 58) { + if (compress !== null) { + return failure; + } + ++pointer; + ++pieceIndex; + compress = pieceIndex; + continue; + } + let value = 0; + let length = 0; + while (length < 4 && isASCIIHex(input[pointer])) { + value = value * 16 + parseInt(at(input, pointer), 16); + ++pointer; + ++length; + } + if (input[pointer] === 46) { + if (length === 0) { + return failure; + } + pointer -= length; + if (pieceIndex > 6) { + return failure; + } + let numbersSeen = 0; + while (input[pointer] !== void 0) { + let ipv4Piece = null; + if (numbersSeen > 0) { + if (input[pointer] === 46 && numbersSeen < 4) { + ++pointer; + } else { + return failure; + } + } + if (!isASCIIDigit(input[pointer])) { + return failure; + } + while (isASCIIDigit(input[pointer])) { + const number = parseInt(at(input, pointer)); + if (ipv4Piece === null) { + ipv4Piece = number; + } else if (ipv4Piece === 0) { + return failure; + } else { + ipv4Piece = ipv4Piece * 10 + number; + } + if (ipv4Piece > 255) { + return failure; + } + ++pointer; + } + address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece; + ++numbersSeen; + if (numbersSeen === 2 || numbersSeen === 4) { + ++pieceIndex; + } + } + if (numbersSeen !== 4) { + return failure; + } + break; + } else if (input[pointer] === 58) { + ++pointer; + if (input[pointer] === void 0) { + return failure; + } + } else if (input[pointer] !== void 0) { + return failure; + } + address[pieceIndex] = value; + ++pieceIndex; + } + if (compress !== null) { + let swaps = pieceIndex - compress; + pieceIndex = 7; + while (pieceIndex !== 0 && swaps > 0) { + const temp = address[compress + swaps - 1]; + address[compress + swaps - 1] = address[pieceIndex]; + address[pieceIndex] = temp; + --pieceIndex; + --swaps; + } + } else if (compress === null && pieceIndex !== 8) { + return failure; + } + return address; + } + function serializeIPv6(address) { + let output = ""; + const seqResult = findLongestZeroSequence(address); + const compress = seqResult.idx; + let ignore0 = false; + for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) { + if (ignore0 && address[pieceIndex] === 0) { + continue; + } else if (ignore0) { + ignore0 = false; + } + if (compress === pieceIndex) { + const separator = pieceIndex === 0 ? "::" : ":"; + output += separator; + ignore0 = true; + continue; + } + output += address[pieceIndex].toString(16); + if (pieceIndex !== 7) { + output += ":"; + } + } + return output; + } + function parseHost(input, isSpecialArg) { + if (input[0] === "[") { + if (input[input.length - 1] !== "]") { + return failure; + } + return parseIPv6(input.substring(1, input.length - 1)); + } + if (!isSpecialArg) { + return parseOpaqueHost(input); + } + const domain2 = utf8PercentDecode(input); + const asciiDomain = tr46.toASCII(domain2, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false); + if (asciiDomain === null) { + return failure; + } + if (containsForbiddenHostCodePoint(asciiDomain)) { + return failure; + } + const ipv4Host = parseIPv4(asciiDomain); + if (typeof ipv4Host === "number" || ipv4Host === failure) { + return ipv4Host; + } + return asciiDomain; + } + function parseOpaqueHost(input) { + if (containsForbiddenHostCodePointExcludingPercent(input)) { + return failure; + } + let output = ""; + const decoded = punycode.ucs2.decode(input); + for (let i = 0; i < decoded.length; ++i) { + output += percentEncodeChar(decoded[i], isC0ControlPercentEncode); + } + return output; + } + function findLongestZeroSequence(arr) { + let maxIdx = null; + let maxLen = 1; + let currStart = null; + let currLen = 0; + for (let i = 0; i < arr.length; ++i) { + if (arr[i] !== 0) { + if (currLen > maxLen) { + maxIdx = currStart; + maxLen = currLen; + } + currStart = null; + currLen = 0; + } else { + if (currStart === null) { + currStart = i; + } + ++currLen; + } + } + if (currLen > maxLen) { + maxIdx = currStart; + maxLen = currLen; + } + return { + idx: maxIdx, + len: maxLen + }; + } + function serializeHost(host) { + if (typeof host === "number") { + return serializeIPv4(host); + } + if (host instanceof Array) { + return "[" + serializeIPv6(host) + "]"; + } + return host; + } + function trimControlChars(url2) { + return url2.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g, ""); + } + function trimTabAndNewline(url2) { + return url2.replace(/\u0009|\u000A|\u000D/g, ""); + } + function shortenPath(url2) { + const path30 = url2.path; + if (path30.length === 0) { + return; + } + if (url2.scheme === "file" && path30.length === 1 && isNormalizedWindowsDriveLetter(path30[0])) { + return; + } + path30.pop(); + } + function includesCredentials(url2) { + return url2.username !== "" || url2.password !== ""; + } + function cannotHaveAUsernamePasswordPort(url2) { + return url2.host === null || url2.host === "" || url2.cannotBeABaseURL || url2.scheme === "file"; + } + function isNormalizedWindowsDriveLetter(string) { + return /^[A-Za-z]:$/.test(string); + } + function URLStateMachine(input, base, encodingOverride, url2, stateOverride) { + this.pointer = 0; + this.input = input; + this.base = base || null; + this.encodingOverride = encodingOverride || "utf-8"; + this.stateOverride = stateOverride; + this.url = url2; + this.failure = false; + this.parseError = false; + if (!this.url) { + this.url = { + scheme: "", + username: "", + password: "", + host: null, + port: null, + path: [], + query: null, + fragment: null, + cannotBeABaseURL: false + }; + const res2 = trimControlChars(this.input); + if (res2 !== this.input) { + this.parseError = true; + } + this.input = res2; + } + const res = trimTabAndNewline(this.input); + if (res !== this.input) { + this.parseError = true; + } + this.input = res; + this.state = stateOverride || "scheme start"; + this.buffer = ""; + this.atFlag = false; + this.arrFlag = false; + this.passwordTokenSeenFlag = false; + this.input = punycode.ucs2.decode(this.input); + for (; this.pointer <= this.input.length; ++this.pointer) { + const c = this.input[this.pointer]; + const cStr = isNaN(c) ? void 0 : String.fromCodePoint(c); + const ret2 = this["parse " + this.state](c, cStr); + if (!ret2) { + break; + } else if (ret2 === failure) { + this.failure = true; + break; + } + } + } + URLStateMachine.prototype["parse scheme start"] = function parseSchemeStart(c, cStr) { + if (isASCIIAlpha(c)) { + this.buffer += cStr.toLowerCase(); + this.state = "scheme"; + } else if (!this.stateOverride) { + this.state = "no scheme"; + --this.pointer; + } else { + this.parseError = true; + return failure; + } + return true; + }; + URLStateMachine.prototype["parse scheme"] = function parseScheme(c, cStr) { + if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) { + this.buffer += cStr.toLowerCase(); + } else if (c === 58) { + if (this.stateOverride) { + if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) { + return false; + } + if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) { + return false; + } + if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === "file") { + return false; + } + if (this.url.scheme === "file" && (this.url.host === "" || this.url.host === null)) { + return false; + } + } + this.url.scheme = this.buffer; + this.buffer = ""; + if (this.stateOverride) { + return false; + } + if (this.url.scheme === "file") { + if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) { + this.parseError = true; + } + this.state = "file"; + } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) { + this.state = "special relative or authority"; + } else if (isSpecial(this.url)) { + this.state = "special authority slashes"; + } else if (this.input[this.pointer + 1] === 47) { + this.state = "path or authority"; + ++this.pointer; + } else { + this.url.cannotBeABaseURL = true; + this.url.path.push(""); + this.state = "cannot-be-a-base-URL path"; + } + } else if (!this.stateOverride) { + this.buffer = ""; + this.state = "no scheme"; + this.pointer = -1; + } else { + this.parseError = true; + return failure; + } + return true; + }; + URLStateMachine.prototype["parse no scheme"] = function parseNoScheme(c) { + if (this.base === null || this.base.cannotBeABaseURL && c !== 35) { + return failure; + } else if (this.base.cannotBeABaseURL && c === 35) { + this.url.scheme = this.base.scheme; + this.url.path = this.base.path.slice(); + this.url.query = this.base.query; + this.url.fragment = ""; + this.url.cannotBeABaseURL = true; + this.state = "fragment"; + } else if (this.base.scheme === "file") { + this.state = "file"; + --this.pointer; + } else { + this.state = "relative"; + --this.pointer; + } + return true; + }; + URLStateMachine.prototype["parse special relative or authority"] = function parseSpecialRelativeOrAuthority(c) { + if (c === 47 && this.input[this.pointer + 1] === 47) { + this.state = "special authority ignore slashes"; + ++this.pointer; + } else { + this.parseError = true; + this.state = "relative"; + --this.pointer; + } + return true; + }; + URLStateMachine.prototype["parse path or authority"] = function parsePathOrAuthority(c) { + if (c === 47) { + this.state = "authority"; + } else { + this.state = "path"; + --this.pointer; + } + return true; + }; + URLStateMachine.prototype["parse relative"] = function parseRelative(c) { + this.url.scheme = this.base.scheme; + if (isNaN(c)) { + this.url.username = this.base.username; + this.url.password = this.base.password; + this.url.host = this.base.host; + this.url.port = this.base.port; + this.url.path = this.base.path.slice(); + this.url.query = this.base.query; + } else if (c === 47) { + this.state = "relative slash"; + } else if (c === 63) { + this.url.username = this.base.username; + this.url.password = this.base.password; + this.url.host = this.base.host; + this.url.port = this.base.port; + this.url.path = this.base.path.slice(); + this.url.query = ""; + this.state = "query"; + } else if (c === 35) { + this.url.username = this.base.username; + this.url.password = this.base.password; + this.url.host = this.base.host; + this.url.port = this.base.port; + this.url.path = this.base.path.slice(); + this.url.query = this.base.query; + this.url.fragment = ""; + this.state = "fragment"; + } else if (isSpecial(this.url) && c === 92) { + this.parseError = true; + this.state = "relative slash"; + } else { + this.url.username = this.base.username; + this.url.password = this.base.password; + this.url.host = this.base.host; + this.url.port = this.base.port; + this.url.path = this.base.path.slice(0, this.base.path.length - 1); + this.state = "path"; + --this.pointer; + } + return true; + }; + URLStateMachine.prototype["parse relative slash"] = function parseRelativeSlash(c) { + if (isSpecial(this.url) && (c === 47 || c === 92)) { + if (c === 92) { + this.parseError = true; + } + this.state = "special authority ignore slashes"; + } else if (c === 47) { + this.state = "authority"; + } else { + this.url.username = this.base.username; + this.url.password = this.base.password; + this.url.host = this.base.host; + this.url.port = this.base.port; + this.state = "path"; + --this.pointer; + } + return true; + }; + URLStateMachine.prototype["parse special authority slashes"] = function parseSpecialAuthoritySlashes(c) { + if (c === 47 && this.input[this.pointer + 1] === 47) { + this.state = "special authority ignore slashes"; + ++this.pointer; + } else { + this.parseError = true; + this.state = "special authority ignore slashes"; + --this.pointer; + } + return true; + }; + URLStateMachine.prototype["parse special authority ignore slashes"] = function parseSpecialAuthorityIgnoreSlashes(c) { + if (c !== 47 && c !== 92) { + this.state = "authority"; + --this.pointer; + } else { + this.parseError = true; + } + return true; + }; + URLStateMachine.prototype["parse authority"] = function parseAuthority(c, cStr) { + if (c === 64) { + this.parseError = true; + if (this.atFlag) { + this.buffer = "%40" + this.buffer; + } + this.atFlag = true; + const len = countSymbols(this.buffer); + for (let pointer = 0; pointer < len; ++pointer) { + const codePoint = this.buffer.codePointAt(pointer); + if (codePoint === 58 && !this.passwordTokenSeenFlag) { + this.passwordTokenSeenFlag = true; + continue; + } + const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode); + if (this.passwordTokenSeenFlag) { + this.url.password += encodedCodePoints; + } else { + this.url.username += encodedCodePoints; + } + } + this.buffer = ""; + } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) { + if (this.atFlag && this.buffer === "") { + this.parseError = true; + return failure; + } + this.pointer -= countSymbols(this.buffer) + 1; + this.buffer = ""; + this.state = "host"; + } else { + this.buffer += cStr; + } + return true; + }; + URLStateMachine.prototype["parse hostname"] = URLStateMachine.prototype["parse host"] = function parseHostName(c, cStr) { + if (this.stateOverride && this.url.scheme === "file") { + --this.pointer; + this.state = "file host"; + } else if (c === 58 && !this.arrFlag) { + if (this.buffer === "") { + this.parseError = true; + return failure; + } + const host = parseHost(this.buffer, isSpecial(this.url)); + if (host === failure) { + return failure; + } + this.url.host = host; + this.buffer = ""; + this.state = "port"; + if (this.stateOverride === "hostname") { + return false; + } + } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92) { + --this.pointer; + if (isSpecial(this.url) && this.buffer === "") { + this.parseError = true; + return failure; + } else if (this.stateOverride && this.buffer === "" && (includesCredentials(this.url) || this.url.port !== null)) { + this.parseError = true; + return false; + } + const host = parseHost(this.buffer, isSpecial(this.url)); + if (host === failure) { + return failure; + } + this.url.host = host; + this.buffer = ""; + this.state = "path start"; + if (this.stateOverride) { + return false; + } + } else { + if (c === 91) { + this.arrFlag = true; + } else if (c === 93) { + this.arrFlag = false; + } + this.buffer += cStr; + } + return true; + }; + URLStateMachine.prototype["parse port"] = function parsePort(c, cStr) { + if (isASCIIDigit(c)) { + this.buffer += cStr; + } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || isSpecial(this.url) && c === 92 || this.stateOverride) { + if (this.buffer !== "") { + const port = parseInt(this.buffer); + if (port > Math.pow(2, 16) - 1) { + this.parseError = true; + return failure; + } + this.url.port = port === defaultPort(this.url.scheme) ? null : port; + this.buffer = ""; + } + if (this.stateOverride) { + return false; + } + this.state = "path start"; + --this.pointer; + } else { + this.parseError = true; + return failure; + } + return true; + }; + var fileOtherwiseCodePoints = /* @__PURE__ */ new Set([47, 92, 63, 35]); + URLStateMachine.prototype["parse file"] = function parseFile(c) { + this.url.scheme = "file"; + if (c === 47 || c === 92) { + if (c === 92) { + this.parseError = true; + } + this.state = "file slash"; + } else if (this.base !== null && this.base.scheme === "file") { + if (isNaN(c)) { + this.url.host = this.base.host; + this.url.path = this.base.path.slice(); + this.url.query = this.base.query; + } else if (c === 63) { + this.url.host = this.base.host; + this.url.path = this.base.path.slice(); + this.url.query = ""; + this.state = "query"; + } else if (c === 35) { + this.url.host = this.base.host; + this.url.path = this.base.path.slice(); + this.url.query = this.base.query; + this.url.fragment = ""; + this.state = "fragment"; + } else { + if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points + !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) || this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points + !fileOtherwiseCodePoints.has(this.input[this.pointer + 2])) { + this.url.host = this.base.host; + this.url.path = this.base.path.slice(); + shortenPath(this.url); + } else { + this.parseError = true; + } + this.state = "path"; + --this.pointer; + } + } else { + this.state = "path"; + --this.pointer; + } + return true; + }; + URLStateMachine.prototype["parse file slash"] = function parseFileSlash(c) { + if (c === 47 || c === 92) { + if (c === 92) { + this.parseError = true; + } + this.state = "file host"; + } else { + if (this.base !== null && this.base.scheme === "file") { + if (isNormalizedWindowsDriveLetterString(this.base.path[0])) { + this.url.path.push(this.base.path[0]); + } else { + this.url.host = this.base.host; + } + } + this.state = "path"; + --this.pointer; + } + return true; + }; + URLStateMachine.prototype["parse file host"] = function parseFileHost(c, cStr) { + if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) { + --this.pointer; + if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) { + this.parseError = true; + this.state = "path"; + } else if (this.buffer === "") { + this.url.host = ""; + if (this.stateOverride) { + return false; + } + this.state = "path start"; + } else { + let host = parseHost(this.buffer, isSpecial(this.url)); + if (host === failure) { + return failure; + } + if (host === "localhost") { + host = ""; + } + this.url.host = host; + if (this.stateOverride) { + return false; + } + this.buffer = ""; + this.state = "path start"; + } + } else { + this.buffer += cStr; + } + return true; + }; + URLStateMachine.prototype["parse path start"] = function parsePathStart(c) { + if (isSpecial(this.url)) { + if (c === 92) { + this.parseError = true; + } + this.state = "path"; + if (c !== 47 && c !== 92) { + --this.pointer; + } + } else if (!this.stateOverride && c === 63) { + this.url.query = ""; + this.state = "query"; + } else if (!this.stateOverride && c === 35) { + this.url.fragment = ""; + this.state = "fragment"; + } else if (c !== void 0) { + this.state = "path"; + if (c !== 47) { + --this.pointer; + } + } + return true; + }; + URLStateMachine.prototype["parse path"] = function parsePath(c) { + if (isNaN(c) || c === 47 || isSpecial(this.url) && c === 92 || !this.stateOverride && (c === 63 || c === 35)) { + if (isSpecial(this.url) && c === 92) { + this.parseError = true; + } + if (isDoubleDot(this.buffer)) { + shortenPath(this.url); + if (c !== 47 && !(isSpecial(this.url) && c === 92)) { + this.url.path.push(""); + } + } else if (isSingleDot(this.buffer) && c !== 47 && !(isSpecial(this.url) && c === 92)) { + this.url.path.push(""); + } else if (!isSingleDot(this.buffer)) { + if (this.url.scheme === "file" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) { + if (this.url.host !== "" && this.url.host !== null) { + this.parseError = true; + this.url.host = ""; + } + this.buffer = this.buffer[0] + ":"; + } + this.url.path.push(this.buffer); + } + this.buffer = ""; + if (this.url.scheme === "file" && (c === void 0 || c === 63 || c === 35)) { + while (this.url.path.length > 1 && this.url.path[0] === "") { + this.parseError = true; + this.url.path.shift(); + } + } + if (c === 63) { + this.url.query = ""; + this.state = "query"; + } + if (c === 35) { + this.url.fragment = ""; + this.state = "fragment"; + } + } else { + if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) { + this.parseError = true; + } + this.buffer += percentEncodeChar(c, isPathPercentEncode); + } + return true; + }; + URLStateMachine.prototype["parse cannot-be-a-base-URL path"] = function parseCannotBeABaseURLPath(c) { + if (c === 63) { + this.url.query = ""; + this.state = "query"; + } else if (c === 35) { + this.url.fragment = ""; + this.state = "fragment"; + } else { + if (!isNaN(c) && c !== 37) { + this.parseError = true; + } + if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) { + this.parseError = true; + } + if (!isNaN(c)) { + this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode); + } + } + return true; + }; + URLStateMachine.prototype["parse query"] = function parseQuery(c, cStr) { + if (isNaN(c) || !this.stateOverride && c === 35) { + if (!isSpecial(this.url) || this.url.scheme === "ws" || this.url.scheme === "wss") { + this.encodingOverride = "utf-8"; + } + const buffer2 = new Buffer(this.buffer); + for (let i = 0; i < buffer2.length; ++i) { + if (buffer2[i] < 33 || buffer2[i] > 126 || buffer2[i] === 34 || buffer2[i] === 35 || buffer2[i] === 60 || buffer2[i] === 62) { + this.url.query += percentEncode(buffer2[i]); + } else { + this.url.query += String.fromCodePoint(buffer2[i]); + } + } + this.buffer = ""; + if (c === 35) { + this.url.fragment = ""; + this.state = "fragment"; + } + } else { + if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) { + this.parseError = true; + } + this.buffer += cStr; + } + return true; + }; + URLStateMachine.prototype["parse fragment"] = function parseFragment(c) { + if (isNaN(c)) { + } else if (c === 0) { + this.parseError = true; + } else { + if (c === 37 && (!isASCIIHex(this.input[this.pointer + 1]) || !isASCIIHex(this.input[this.pointer + 2]))) { + this.parseError = true; + } + this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode); + } + return true; + }; + function serializeURL(url2, excludeFragment) { + let output = url2.scheme + ":"; + if (url2.host !== null) { + output += "//"; + if (url2.username !== "" || url2.password !== "") { + output += url2.username; + if (url2.password !== "") { + output += ":" + url2.password; + } + output += "@"; + } + output += serializeHost(url2.host); + if (url2.port !== null) { + output += ":" + url2.port; + } + } else if (url2.host === null && url2.scheme === "file") { + output += "//"; + } + if (url2.cannotBeABaseURL) { + output += url2.path[0]; + } else { + for (const string of url2.path) { + output += "/" + string; + } + } + if (url2.query !== null) { + output += "?" + url2.query; + } + if (!excludeFragment && url2.fragment !== null) { + output += "#" + url2.fragment; + } + return output; + } + function serializeOrigin(tuple) { + let result = tuple.scheme + "://"; + result += serializeHost(tuple.host); + if (tuple.port !== null) { + result += ":" + tuple.port; + } + return result; + } + module2.exports.serializeURL = serializeURL; + module2.exports.serializeURLOrigin = function(url2) { + switch (url2.scheme) { + case "blob": + try { + return module2.exports.serializeURLOrigin(module2.exports.parseURL(url2.path[0])); + } catch (e) { + return "null"; + } + case "ftp": + case "gopher": + case "http": + case "https": + case "ws": + case "wss": + return serializeOrigin({ + scheme: url2.scheme, + host: url2.host, + port: url2.port + }); + case "file": + return "file://"; + default: + return "null"; + } + }; + module2.exports.basicURLParse = function(input, options2) { + if (options2 === void 0) { + options2 = {}; + } + const usm = new URLStateMachine(input, options2.baseURL, options2.encodingOverride, options2.url, options2.stateOverride); + if (usm.failure) { + return "failure"; + } + return usm.url; + }; + module2.exports.setTheUsername = function(url2, username) { + url2.username = ""; + const decoded = punycode.ucs2.decode(username); + for (let i = 0; i < decoded.length; ++i) { + url2.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode); + } + }; + module2.exports.setThePassword = function(url2, password) { + url2.password = ""; + const decoded = punycode.ucs2.decode(password); + for (let i = 0; i < decoded.length; ++i) { + url2.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode); + } + }; + module2.exports.serializeHost = serializeHost; + module2.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort; + module2.exports.serializeInteger = function(integer) { + return String(integer); + }; + module2.exports.parseURL = function(input, options2) { + if (options2 === void 0) { + options2 = {}; + } + return module2.exports.basicURLParse(input, { baseURL: options2.baseURL, encodingOverride: options2.encodingOverride }); + }; + } +}); + +// ../node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/URL-impl.js +var require_URL_impl = __commonJS({ + "../node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/URL-impl.js"(exports2) { + "use strict"; + var usm = require_url_state_machine(); + exports2.implementation = class URLImpl { + constructor(constructorArgs) { + const url2 = constructorArgs[0]; + const base = constructorArgs[1]; + let parsedBase = null; + if (base !== void 0) { + parsedBase = usm.basicURLParse(base); + if (parsedBase === "failure") { + throw new TypeError("Invalid base URL"); + } + } + const parsedURL = usm.basicURLParse(url2, { baseURL: parsedBase }); + if (parsedURL === "failure") { + throw new TypeError("Invalid URL"); + } + this._url = parsedURL; + } + get href() { + return usm.serializeURL(this._url); + } + set href(v) { + const parsedURL = usm.basicURLParse(v); + if (parsedURL === "failure") { + throw new TypeError("Invalid URL"); + } + this._url = parsedURL; + } + get origin() { + return usm.serializeURLOrigin(this._url); + } + get protocol() { + return this._url.scheme + ":"; + } + set protocol(v) { + usm.basicURLParse(v + ":", { url: this._url, stateOverride: "scheme start" }); + } + get username() { + return this._url.username; + } + set username(v) { + if (usm.cannotHaveAUsernamePasswordPort(this._url)) { + return; + } + usm.setTheUsername(this._url, v); + } + get password() { + return this._url.password; + } + set password(v) { + if (usm.cannotHaveAUsernamePasswordPort(this._url)) { + return; + } + usm.setThePassword(this._url, v); + } + get host() { + const url2 = this._url; + if (url2.host === null) { + return ""; + } + if (url2.port === null) { + return usm.serializeHost(url2.host); + } + return usm.serializeHost(url2.host) + ":" + usm.serializeInteger(url2.port); + } + set host(v) { + if (this._url.cannotBeABaseURL) { + return; + } + usm.basicURLParse(v, { url: this._url, stateOverride: "host" }); + } + get hostname() { + if (this._url.host === null) { + return ""; + } + return usm.serializeHost(this._url.host); + } + set hostname(v) { + if (this._url.cannotBeABaseURL) { + return; + } + usm.basicURLParse(v, { url: this._url, stateOverride: "hostname" }); + } + get port() { + if (this._url.port === null) { + return ""; + } + return usm.serializeInteger(this._url.port); + } + set port(v) { + if (usm.cannotHaveAUsernamePasswordPort(this._url)) { + return; + } + if (v === "") { + this._url.port = null; + } else { + usm.basicURLParse(v, { url: this._url, stateOverride: "port" }); + } + } + get pathname() { + if (this._url.cannotBeABaseURL) { + return this._url.path[0]; + } + if (this._url.path.length === 0) { + return ""; + } + return "/" + this._url.path.join("/"); + } + set pathname(v) { + if (this._url.cannotBeABaseURL) { + return; + } + this._url.path = []; + usm.basicURLParse(v, { url: this._url, stateOverride: "path start" }); + } + get search() { + if (this._url.query === null || this._url.query === "") { + return ""; + } + return "?" + this._url.query; + } + set search(v) { + const url2 = this._url; + if (v === "") { + url2.query = null; + return; + } + const input = v[0] === "?" ? v.substring(1) : v; + url2.query = ""; + usm.basicURLParse(input, { url: url2, stateOverride: "query" }); + } + get hash() { + if (this._url.fragment === null || this._url.fragment === "") { + return ""; + } + return "#" + this._url.fragment; + } + set hash(v) { + if (v === "") { + this._url.fragment = null; + return; + } + const input = v[0] === "#" ? v.substring(1) : v; + this._url.fragment = ""; + usm.basicURLParse(input, { url: this._url, stateOverride: "fragment" }); + } + toJSON() { + return this.href; + } + }; + } +}); + +// ../node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/URL.js +var require_URL = __commonJS({ + "../node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/URL.js"(exports2, module2) { + "use strict"; + var conversions = require_lib(); + var utils = require_utils(); + var Impl = require_URL_impl(); + var impl = utils.implSymbol; + function URL2(url2) { + if (!this || this[impl] || !(this instanceof URL2)) { + throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function."); + } + if (arguments.length < 1) { + throw new TypeError("Failed to construct 'URL': 1 argument required, but only " + arguments.length + " present."); + } + const args3 = []; + for (let i = 0; i < arguments.length && i < 2; ++i) { + args3[i] = arguments[i]; + } + args3[0] = conversions["USVString"](args3[0]); + if (args3[1] !== void 0) { + args3[1] = conversions["USVString"](args3[1]); + } + module2.exports.setup(this, args3); + } + URL2.prototype.toJSON = function toJSON2() { + if (!this || !module2.exports.is(this)) { + throw new TypeError("Illegal invocation"); + } + const args3 = []; + for (let i = 0; i < arguments.length && i < 0; ++i) { + args3[i] = arguments[i]; + } + return this[impl].toJSON.apply(this[impl], args3); + }; + Object.defineProperty(URL2.prototype, "href", { + get() { + return this[impl].href; + }, + set(V) { + V = conversions["USVString"](V); + this[impl].href = V; + }, + enumerable: true, + configurable: true + }); + URL2.prototype.toString = function() { + if (!this || !module2.exports.is(this)) { + throw new TypeError("Illegal invocation"); + } + return this.href; + }; + Object.defineProperty(URL2.prototype, "origin", { + get() { + return this[impl].origin; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(URL2.prototype, "protocol", { + get() { + return this[impl].protocol; + }, + set(V) { + V = conversions["USVString"](V); + this[impl].protocol = V; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(URL2.prototype, "username", { + get() { + return this[impl].username; + }, + set(V) { + V = conversions["USVString"](V); + this[impl].username = V; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(URL2.prototype, "password", { + get() { + return this[impl].password; + }, + set(V) { + V = conversions["USVString"](V); + this[impl].password = V; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(URL2.prototype, "host", { + get() { + return this[impl].host; + }, + set(V) { + V = conversions["USVString"](V); + this[impl].host = V; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(URL2.prototype, "hostname", { + get() { + return this[impl].hostname; + }, + set(V) { + V = conversions["USVString"](V); + this[impl].hostname = V; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(URL2.prototype, "port", { + get() { + return this[impl].port; + }, + set(V) { + V = conversions["USVString"](V); + this[impl].port = V; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(URL2.prototype, "pathname", { + get() { + return this[impl].pathname; + }, + set(V) { + V = conversions["USVString"](V); + this[impl].pathname = V; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(URL2.prototype, "search", { + get() { + return this[impl].search; + }, + set(V) { + V = conversions["USVString"](V); + this[impl].search = V; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(URL2.prototype, "hash", { + get() { + return this[impl].hash; + }, + set(V) { + V = conversions["USVString"](V); + this[impl].hash = V; + }, + enumerable: true, + configurable: true + }); + module2.exports = { + is(obj2) { + return !!obj2 && obj2[impl] instanceof Impl.implementation; + }, + create(constructorArgs, privateData) { + let obj2 = Object.create(URL2.prototype); + this.setup(obj2, constructorArgs, privateData); + return obj2; + }, + setup(obj2, constructorArgs, privateData) { + if (!privateData) + privateData = {}; + privateData.wrapper = obj2; + obj2[impl] = new Impl.implementation(constructorArgs, privateData); + obj2[impl][utils.wrapperSymbol] = obj2; + }, + interface: URL2, + expose: { + Window: { URL: URL2 }, + Worker: { URL: URL2 } + } + }; + } +}); + +// ../node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/public-api.js +var require_public_api = __commonJS({ + "../node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/public-api.js"(exports2) { + "use strict"; + exports2.URL = require_URL().interface; + exports2.serializeURL = require_url_state_machine().serializeURL; + exports2.serializeURLOrigin = require_url_state_machine().serializeURLOrigin; + exports2.basicURLParse = require_url_state_machine().basicURLParse; + exports2.setTheUsername = require_url_state_machine().setTheUsername; + exports2.setThePassword = require_url_state_machine().setThePassword; + exports2.serializeHost = require_url_state_machine().serializeHost; + exports2.serializeInteger = require_url_state_machine().serializeInteger; + exports2.parseURL = require_url_state_machine().parseURL; + } +}); + +// ../node_modules/.pnpm/node-fetch@2.6.11/node_modules/node-fetch/lib/index.js +var require_lib2 = __commonJS({ + "../node_modules/.pnpm/node-fetch@2.6.11/node_modules/node-fetch/lib/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function _interopDefault(ex) { + return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex; + } + var Stream2 = _interopDefault(require("stream")); + var http4 = _interopDefault(require("http")); + var Url = _interopDefault(require("url")); + var whatwgUrl = _interopDefault(require_public_api()); + var https4 = _interopDefault(require("https")); + var zlib2 = _interopDefault(require("zlib")); + var Readable3 = Stream2.Readable; + var BUFFER2 = Symbol("buffer"); + var TYPE2 = Symbol("type"); + var Blob2 = class _Blob { + constructor() { + this[TYPE2] = ""; + const blobParts = arguments[0]; + const options2 = arguments[1]; + const buffers = []; + let size = 0; + if (blobParts) { + const a = blobParts; + const length = Number(a.length); + for (let i = 0; i < length; i++) { + const element = a[i]; + let buffer2; + if (element instanceof Buffer) { + buffer2 = element; + } else if (ArrayBuffer.isView(element)) { + buffer2 = Buffer.from(element.buffer, element.byteOffset, element.byteLength); + } else if (element instanceof ArrayBuffer) { + buffer2 = Buffer.from(element); + } else if (element instanceof _Blob) { + buffer2 = element[BUFFER2]; + } else { + buffer2 = Buffer.from(typeof element === "string" ? element : String(element)); + } + size += buffer2.length; + buffers.push(buffer2); + } + } + this[BUFFER2] = Buffer.concat(buffers); + let type2 = options2 && options2.type !== void 0 && String(options2.type).toLowerCase(); + if (type2 && !/[^\u0020-\u007E]/.test(type2)) { + this[TYPE2] = type2; + } + } + get size() { + return this[BUFFER2].length; + } + get type() { + return this[TYPE2]; + } + text() { + return Promise.resolve(this[BUFFER2].toString()); + } + arrayBuffer() { + const buf = this[BUFFER2]; + const ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength); + return Promise.resolve(ab); + } + stream() { + const readable = new Readable3(); + readable._read = function() { + }; + readable.push(this[BUFFER2]); + readable.push(null); + return readable; + } + toString() { + return "[object Blob]"; + } + slice() { + const size = this.size; + const start4 = arguments[0]; + const end = arguments[1]; + let relativeStart, relativeEnd; + if (start4 === void 0) { + relativeStart = 0; + } else if (start4 < 0) { + relativeStart = Math.max(size + start4, 0); + } else { + relativeStart = Math.min(start4, size); + } + if (end === void 0) { + relativeEnd = size; + } else if (end < 0) { + relativeEnd = Math.max(size + end, 0); + } else { + relativeEnd = Math.min(end, size); + } + const span = Math.max(relativeEnd - relativeStart, 0); + const buffer2 = this[BUFFER2]; + const slicedBuffer = buffer2.slice(relativeStart, relativeStart + span); + const blob = new _Blob([], { type: arguments[2] }); + blob[BUFFER2] = slicedBuffer; + return blob; + } + }; + Object.defineProperties(Blob2.prototype, { + size: { enumerable: true }, + type: { enumerable: true }, + slice: { enumerable: true } + }); + Object.defineProperty(Blob2.prototype, Symbol.toStringTag, { + value: "Blob", + writable: false, + enumerable: false, + configurable: true + }); + function FetchError(message, type2, systemError) { + Error.call(this, message); + this.message = message; + this.type = type2; + if (systemError) { + this.code = this.errno = systemError.code; + } + Error.captureStackTrace(this, this.constructor); + } + FetchError.prototype = Object.create(Error.prototype); + FetchError.prototype.constructor = FetchError; + FetchError.prototype.name = "FetchError"; + var convert; + try { + convert = require("encoding").convert; + } catch (e) { + } + var INTERNALS = Symbol("Body internals"); + var PassThrough = Stream2.PassThrough; + function Body(body2) { + var _this = this; + var _ref = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, _ref$size = _ref.size; + let size = _ref$size === void 0 ? 0 : _ref$size; + var _ref$timeout = _ref.timeout; + let timeout = _ref$timeout === void 0 ? 0 : _ref$timeout; + if (body2 == null) { + body2 = null; + } else if (isURLSearchParams2(body2)) { + body2 = Buffer.from(body2.toString()); + } else if (isBlob2(body2)) + ; + else if (Buffer.isBuffer(body2)) + ; + else if (Object.prototype.toString.call(body2) === "[object ArrayBuffer]") { + body2 = Buffer.from(body2); + } else if (ArrayBuffer.isView(body2)) { + body2 = Buffer.from(body2.buffer, body2.byteOffset, body2.byteLength); + } else if (body2 instanceof Stream2) + ; + else { + body2 = Buffer.from(String(body2)); + } + this[INTERNALS] = { + body: body2, + disturbed: false, + error: null + }; + this.size = size; + this.timeout = timeout; + if (body2 instanceof Stream2) { + body2.on("error", function(err2) { + const error = err2.name === "AbortError" ? err2 : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err2.message}`, "system", err2); + _this[INTERNALS].error = error; + }); + } + } + Body.prototype = { + get body() { + return this[INTERNALS].body; + }, + get bodyUsed() { + return this[INTERNALS].disturbed; + }, + /** + * Decode response as ArrayBuffer + * + * @return Promise + */ + arrayBuffer() { + return consumeBody.call(this).then(function(buf) { + return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength); + }); + }, + /** + * Return raw response as Blob + * + * @return Promise + */ + blob() { + let ct = this.headers && this.headers.get("content-type") || ""; + return consumeBody.call(this).then(function(buf) { + return Object.assign( + // Prevent copying + new Blob2([], { + type: ct.toLowerCase() + }), + { + [BUFFER2]: buf + } + ); + }); + }, + /** + * Decode response as json + * + * @return Promise + */ + json() { + var _this2 = this; + return consumeBody.call(this).then(function(buffer2) { + try { + return JSON.parse(buffer2.toString()); + } catch (err2) { + return Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err2.message}`, "invalid-json")); + } + }); + }, + /** + * Decode response as text + * + * @return Promise + */ + text() { + return consumeBody.call(this).then(function(buffer2) { + return buffer2.toString(); + }); + }, + /** + * Decode response as buffer (non-spec api) + * + * @return Promise + */ + buffer() { + return consumeBody.call(this); + }, + /** + * Decode response as text, while automatically detecting the encoding and + * trying to decode to UTF-8 (non-spec api) + * + * @return Promise + */ + textConverted() { + var _this3 = this; + return consumeBody.call(this).then(function(buffer2) { + return convertBody(buffer2, _this3.headers); + }); + } + }; + Object.defineProperties(Body.prototype, { + body: { enumerable: true }, + bodyUsed: { enumerable: true }, + arrayBuffer: { enumerable: true }, + blob: { enumerable: true }, + json: { enumerable: true }, + text: { enumerable: true } + }); + Body.mixIn = function(proto) { + for (const name of Object.getOwnPropertyNames(Body.prototype)) { + if (!(name in proto)) { + const desc = Object.getOwnPropertyDescriptor(Body.prototype, name); + Object.defineProperty(proto, name, desc); + } + } + }; + function consumeBody() { + var _this4 = this; + if (this[INTERNALS].disturbed) { + return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`)); + } + this[INTERNALS].disturbed = true; + if (this[INTERNALS].error) { + return Body.Promise.reject(this[INTERNALS].error); + } + let body2 = this.body; + if (body2 === null) { + return Body.Promise.resolve(Buffer.alloc(0)); + } + if (isBlob2(body2)) { + body2 = body2.stream(); + } + if (Buffer.isBuffer(body2)) { + return Body.Promise.resolve(body2); + } + if (!(body2 instanceof Stream2)) { + return Body.Promise.resolve(Buffer.alloc(0)); + } + let accum = []; + let accumBytes = 0; + let abort2 = false; + return new Body.Promise(function(resolve8, reject) { + let resTimeout; + if (_this4.timeout) { + resTimeout = setTimeout(function() { + abort2 = true; + reject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, "body-timeout")); + }, _this4.timeout); + } + body2.on("error", function(err2) { + if (err2.name === "AbortError") { + abort2 = true; + reject(err2); + } else { + reject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err2.message}`, "system", err2)); + } + }); + body2.on("data", function(chunk) { + if (abort2 || chunk === null) { + return; + } + if (_this4.size && accumBytes + chunk.length > _this4.size) { + abort2 = true; + reject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, "max-size")); + return; + } + accumBytes += chunk.length; + accum.push(chunk); + }); + body2.on("end", function() { + if (abort2) { + return; + } + clearTimeout(resTimeout); + try { + resolve8(Buffer.concat(accum, accumBytes)); + } catch (err2) { + reject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err2.message}`, "system", err2)); + } + }); + }); + } + function convertBody(buffer2, headers) { + if (typeof convert !== "function") { + throw new Error("The package `encoding` must be installed to use the textConverted() function"); + } + const ct = headers.get("content-type"); + let charset = "utf-8"; + let res, str; + if (ct) { + res = /charset=([^;]*)/i.exec(ct); + } + str = buffer2.slice(0, 1024).toString(); + if (!res && str) { + res = / 0 && arguments[0] !== void 0 ? arguments[0] : void 0; + this[MAP] = /* @__PURE__ */ Object.create(null); + if (init5 instanceof _Headers) { + const rawHeaders = init5.raw(); + const headerNames = Object.keys(rawHeaders); + for (const headerName of headerNames) { + for (const value of rawHeaders[headerName]) { + this.append(headerName, value); + } + } + return; + } + if (init5 == null) + ; + else if (typeof init5 === "object") { + const method = init5[Symbol.iterator]; + if (method != null) { + if (typeof method !== "function") { + throw new TypeError("Header pairs must be iterable"); + } + const pairs = []; + for (const pair of init5) { + if (typeof pair !== "object" || typeof pair[Symbol.iterator] !== "function") { + throw new TypeError("Each header pair must be iterable"); + } + pairs.push(Array.from(pair)); + } + for (const pair of pairs) { + if (pair.length !== 2) { + throw new TypeError("Each header pair must be a name/value tuple"); + } + this.append(pair[0], pair[1]); + } + } else { + for (const key of Object.keys(init5)) { + const value = init5[key]; + this.append(key, value); + } + } + } else { + throw new TypeError("Provided initializer must be an object"); + } + } + /** + * Return combined header value given name + * + * @param String name Header name + * @return Mixed + */ + get(name) { + name = `${name}`; + validateName(name); + const key = find(this[MAP], name); + if (key === void 0) { + return null; + } + return this[MAP][key].join(", "); + } + /** + * Iterate over all headers + * + * @param Function callback Executed for each item with parameters (value, name, thisArg) + * @param Boolean thisArg `this` context for callback function + * @return Void + */ + forEach(callback) { + let thisArg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : void 0; + let pairs = getHeaders(this); + let i = 0; + while (i < pairs.length) { + var _pairs$i = pairs[i]; + const name = _pairs$i[0], value = _pairs$i[1]; + callback.call(thisArg, value, name, this); + pairs = getHeaders(this); + i++; + } + } + /** + * Overwrite header values given name + * + * @param String name Header name + * @param String value Header value + * @return Void + */ + set(name, value) { + name = `${name}`; + value = `${value}`; + validateName(name); + validateValue(value); + const key = find(this[MAP], name); + this[MAP][key !== void 0 ? key : name] = [value]; + } + /** + * Append a value onto existing header + * + * @param String name Header name + * @param String value Header value + * @return Void + */ + append(name, value) { + name = `${name}`; + value = `${value}`; + validateName(name); + validateValue(value); + const key = find(this[MAP], name); + if (key !== void 0) { + this[MAP][key].push(value); + } else { + this[MAP][name] = [value]; + } + } + /** + * Check for header name existence + * + * @param String name Header name + * @return Boolean + */ + has(name) { + name = `${name}`; + validateName(name); + return find(this[MAP], name) !== void 0; + } + /** + * Delete all header values given name + * + * @param String name Header name + * @return Void + */ + delete(name) { + name = `${name}`; + validateName(name); + const key = find(this[MAP], name); + if (key !== void 0) { + delete this[MAP][key]; + } + } + /** + * Return raw headers (non-spec api) + * + * @return Object + */ + raw() { + return this[MAP]; + } + /** + * Get an iterator on keys. + * + * @return Iterator + */ + keys() { + return createHeadersIterator(this, "key"); + } + /** + * Get an iterator on values. + * + * @return Iterator + */ + values() { + return createHeadersIterator(this, "value"); + } + /** + * Get an iterator on entries. + * + * This is the default iterator of the Headers object. + * + * @return Iterator + */ + [Symbol.iterator]() { + return createHeadersIterator(this, "key+value"); + } + }; + Headers2.prototype.entries = Headers2.prototype[Symbol.iterator]; + Object.defineProperty(Headers2.prototype, Symbol.toStringTag, { + value: "Headers", + writable: false, + enumerable: false, + configurable: true + }); + Object.defineProperties(Headers2.prototype, { + get: { enumerable: true }, + forEach: { enumerable: true }, + set: { enumerable: true }, + append: { enumerable: true }, + has: { enumerable: true }, + delete: { enumerable: true }, + keys: { enumerable: true }, + values: { enumerable: true }, + entries: { enumerable: true } + }); + function getHeaders(headers) { + let kind = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "key+value"; + const keys = Object.keys(headers[MAP]).sort(); + return keys.map(kind === "key" ? function(k) { + return k.toLowerCase(); + } : kind === "value" ? function(k) { + return headers[MAP][k].join(", "); + } : function(k) { + return [k.toLowerCase(), headers[MAP][k].join(", ")]; + }); + } + var INTERNAL2 = Symbol("internal"); + function createHeadersIterator(target, kind) { + const iterator = Object.create(HeadersIteratorPrototype); + iterator[INTERNAL2] = { + target, + kind, + index: 0 + }; + return iterator; + } + var HeadersIteratorPrototype = Object.setPrototypeOf({ + next() { + if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) { + throw new TypeError("Value of `this` is not a HeadersIterator"); + } + var _INTERNAL = this[INTERNAL2]; + const target = _INTERNAL.target, kind = _INTERNAL.kind, index = _INTERNAL.index; + const values = getHeaders(target, kind); + const len = values.length; + if (index >= len) { + return { + value: void 0, + done: true + }; + } + this[INTERNAL2].index = index + 1; + return { + value: values[index], + done: false + }; + } + }, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()))); + Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, { + value: "HeadersIterator", + writable: false, + enumerable: false, + configurable: true + }); + function exportNodeCompatibleHeaders(headers) { + const obj2 = Object.assign({ __proto__: null }, headers[MAP]); + const hostHeaderKey = find(headers[MAP], "Host"); + if (hostHeaderKey !== void 0) { + obj2[hostHeaderKey] = obj2[hostHeaderKey][0]; + } + return obj2; + } + function createHeadersLenient(obj2) { + const headers = new Headers2(); + for (const name of Object.keys(obj2)) { + if (invalidTokenRegex.test(name)) { + continue; + } + if (Array.isArray(obj2[name])) { + for (const val of obj2[name]) { + if (invalidHeaderCharRegex.test(val)) { + continue; + } + if (headers[MAP][name] === void 0) { + headers[MAP][name] = [val]; + } else { + headers[MAP][name].push(val); + } + } + } else if (!invalidHeaderCharRegex.test(obj2[name])) { + headers[MAP][name] = [obj2[name]]; + } + } + return headers; + } + var INTERNALS$1 = Symbol("Response internals"); + var STATUS_CODES = http4.STATUS_CODES; + var Response2 = class _Response { + constructor() { + let body2 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null; + let opts = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; + Body.call(this, body2, opts); + const status = opts.status || 200; + const headers = new Headers2(opts.headers); + if (body2 != null && !headers.has("Content-Type")) { + const contentType = extractContentType(body2); + if (contentType) { + headers.append("Content-Type", contentType); + } + } + this[INTERNALS$1] = { + url: opts.url, + status, + statusText: opts.statusText || STATUS_CODES[status], + headers, + counter: opts.counter + }; + } + get url() { + return this[INTERNALS$1].url || ""; + } + get status() { + return this[INTERNALS$1].status; + } + /** + * Convenience property representing if the request ended normally + */ + get ok() { + return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300; + } + get redirected() { + return this[INTERNALS$1].counter > 0; + } + get statusText() { + return this[INTERNALS$1].statusText; + } + get headers() { + return this[INTERNALS$1].headers; + } + /** + * Clone this response + * + * @return Response + */ + clone() { + return new _Response(clone(this), { + url: this.url, + status: this.status, + statusText: this.statusText, + headers: this.headers, + ok: this.ok, + redirected: this.redirected + }); + } + }; + Body.mixIn(Response2.prototype); + Object.defineProperties(Response2.prototype, { + url: { enumerable: true }, + status: { enumerable: true }, + ok: { enumerable: true }, + redirected: { enumerable: true }, + statusText: { enumerable: true }, + headers: { enumerable: true }, + clone: { enumerable: true } + }); + Object.defineProperty(Response2.prototype, Symbol.toStringTag, { + value: "Response", + writable: false, + enumerable: false, + configurable: true + }); + var INTERNALS$2 = Symbol("Request internals"); + var URL2 = Url.URL || whatwgUrl.URL; + var parse_url = Url.parse; + var format_url = Url.format; + function parseURL(urlStr) { + if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) { + urlStr = new URL2(urlStr).toString(); + } + return parse_url(urlStr); + } + var streamDestructionSupported = "destroy" in Stream2.Readable.prototype; + function isRequest(input) { + return typeof input === "object" && typeof input[INTERNALS$2] === "object"; + } + function isAbortSignal(signal) { + const proto = signal && typeof signal === "object" && Object.getPrototypeOf(signal); + return !!(proto && proto.constructor.name === "AbortSignal"); + } + var Request2 = class _Request { + constructor(input) { + let init5 = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; + let parsedURL; + if (!isRequest(input)) { + if (input && input.href) { + parsedURL = parseURL(input.href); + } else { + parsedURL = parseURL(`${input}`); + } + input = {}; + } else { + parsedURL = parseURL(input.url); + } + let method = init5.method || input.method || "GET"; + method = method.toUpperCase(); + if ((init5.body != null || isRequest(input) && input.body !== null) && (method === "GET" || method === "HEAD")) { + throw new TypeError("Request with GET/HEAD method cannot have body"); + } + let inputBody = init5.body != null ? init5.body : isRequest(input) && input.body !== null ? clone(input) : null; + Body.call(this, inputBody, { + timeout: init5.timeout || input.timeout || 0, + size: init5.size || input.size || 0 + }); + const headers = new Headers2(init5.headers || input.headers || {}); + if (inputBody != null && !headers.has("Content-Type")) { + const contentType = extractContentType(inputBody); + if (contentType) { + headers.append("Content-Type", contentType); + } + } + let signal = isRequest(input) ? input.signal : null; + if ("signal" in init5) + signal = init5.signal; + if (signal != null && !isAbortSignal(signal)) { + throw new TypeError("Expected signal to be an instanceof AbortSignal"); + } + this[INTERNALS$2] = { + method, + redirect: init5.redirect || input.redirect || "follow", + headers, + parsedURL, + signal + }; + this.follow = init5.follow !== void 0 ? init5.follow : input.follow !== void 0 ? input.follow : 20; + this.compress = init5.compress !== void 0 ? init5.compress : input.compress !== void 0 ? input.compress : true; + this.counter = init5.counter || input.counter || 0; + this.agent = init5.agent || input.agent; + } + get method() { + return this[INTERNALS$2].method; + } + get url() { + return format_url(this[INTERNALS$2].parsedURL); + } + get headers() { + return this[INTERNALS$2].headers; + } + get redirect() { + return this[INTERNALS$2].redirect; + } + get signal() { + return this[INTERNALS$2].signal; + } + /** + * Clone this request + * + * @return Request + */ + clone() { + return new _Request(this); + } + }; + Body.mixIn(Request2.prototype); + Object.defineProperty(Request2.prototype, Symbol.toStringTag, { + value: "Request", + writable: false, + enumerable: false, + configurable: true + }); + Object.defineProperties(Request2.prototype, { + method: { enumerable: true }, + url: { enumerable: true }, + headers: { enumerable: true }, + redirect: { enumerable: true }, + clone: { enumerable: true }, + signal: { enumerable: true } + }); + function getNodeRequestOptions(request) { + const parsedURL = request[INTERNALS$2].parsedURL; + const headers = new Headers2(request[INTERNALS$2].headers); + if (!headers.has("Accept")) { + headers.set("Accept", "*/*"); + } + if (!parsedURL.protocol || !parsedURL.hostname) { + throw new TypeError("Only absolute URLs are supported"); + } + if (!/^https?:$/.test(parsedURL.protocol)) { + throw new TypeError("Only HTTP(S) protocols are supported"); + } + if (request.signal && request.body instanceof Stream2.Readable && !streamDestructionSupported) { + throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8"); + } + let contentLengthValue = null; + if (request.body == null && /^(POST|PUT)$/i.test(request.method)) { + contentLengthValue = "0"; + } + if (request.body != null) { + const totalBytes = getTotalBytes(request); + if (typeof totalBytes === "number") { + contentLengthValue = String(totalBytes); + } + } + if (contentLengthValue) { + headers.set("Content-Length", contentLengthValue); + } + if (!headers.has("User-Agent")) { + headers.set("User-Agent", "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)"); + } + if (request.compress && !headers.has("Accept-Encoding")) { + headers.set("Accept-Encoding", "gzip,deflate"); + } + let agent3 = request.agent; + if (typeof agent3 === "function") { + agent3 = agent3(parsedURL); + } + if (!headers.has("Connection") && !agent3) { + headers.set("Connection", "close"); + } + return Object.assign({}, parsedURL, { + method: request.method, + headers: exportNodeCompatibleHeaders(headers), + agent: agent3 + }); + } + function AbortError2(message) { + Error.call(this, message); + this.type = "aborted"; + this.message = message; + Error.captureStackTrace(this, this.constructor); + } + AbortError2.prototype = Object.create(Error.prototype); + AbortError2.prototype.constructor = AbortError2; + AbortError2.prototype.name = "AbortError"; + var URL$1 = Url.URL || whatwgUrl.URL; + var PassThrough$1 = Stream2.PassThrough; + var isDomainOrSubdomain = function isDomainOrSubdomain2(destination, original) { + const orig = new URL$1(original).hostname; + const dest = new URL$1(destination).hostname; + return orig === dest || orig[orig.length - dest.length - 1] === "." && orig.endsWith(dest); + }; + var isSameProtocol = function isSameProtocol2(destination, original) { + const orig = new URL$1(original).protocol; + const dest = new URL$1(destination).protocol; + return orig === dest; + }; + function fetch4(url2, opts) { + if (!fetch4.Promise) { + throw new Error("native promise missing, set fetch.Promise to your favorite alternative"); + } + Body.Promise = fetch4.Promise; + return new fetch4.Promise(function(resolve8, reject) { + const request = new Request2(url2, opts); + const options2 = getNodeRequestOptions(request); + const send = (options2.protocol === "https:" ? https4 : http4).request; + const signal = request.signal; + let response = null; + const abort2 = function abort3() { + let error = new AbortError2("The user aborted a request."); + reject(error); + if (request.body && request.body instanceof Stream2.Readable) { + destroyStream(request.body, error); + } + if (!response || !response.body) + return; + response.body.emit("error", error); + }; + if (signal && signal.aborted) { + abort2(); + return; + } + const abortAndFinalize = function abortAndFinalize2() { + abort2(); + finalize(); + }; + const req = send(options2); + let reqTimeout; + if (signal) { + signal.addEventListener("abort", abortAndFinalize); + } + function finalize() { + req.abort(); + if (signal) + signal.removeEventListener("abort", abortAndFinalize); + clearTimeout(reqTimeout); + } + if (request.timeout) { + req.once("socket", function(socket) { + reqTimeout = setTimeout(function() { + reject(new FetchError(`network timeout at: ${request.url}`, "request-timeout")); + finalize(); + }, request.timeout); + }); + } + req.on("error", function(err2) { + reject(new FetchError(`request to ${request.url} failed, reason: ${err2.message}`, "system", err2)); + if (response && response.body) { + destroyStream(response.body, err2); + } + finalize(); + }); + fixResponseChunkedTransferBadEnding(req, function(err2) { + if (signal && signal.aborted) { + return; + } + if (response && response.body) { + destroyStream(response.body, err2); + } + }); + if (parseInt(process.version.substring(1)) < 14) { + req.on("socket", function(s) { + s.addListener("close", function(hadError) { + const hasDataListener = s.listenerCount("data") > 0; + if (response && hasDataListener && !hadError && !(signal && signal.aborted)) { + const err2 = new Error("Premature close"); + err2.code = "ERR_STREAM_PREMATURE_CLOSE"; + response.body.emit("error", err2); + } + }); + }); + } + req.on("response", function(res) { + clearTimeout(reqTimeout); + const headers = createHeadersLenient(res.headers); + if (fetch4.isRedirect(res.statusCode)) { + const location = headers.get("Location"); + let locationURL = null; + try { + locationURL = location === null ? null : new URL$1(location, request.url).toString(); + } catch (err2) { + if (request.redirect !== "manual") { + reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, "invalid-redirect")); + finalize(); + return; + } + } + switch (request.redirect) { + case "error": + reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, "no-redirect")); + finalize(); + return; + case "manual": + if (locationURL !== null) { + try { + headers.set("Location", locationURL); + } catch (err2) { + reject(err2); + } + } + break; + case "follow": + if (locationURL === null) { + break; + } + if (request.counter >= request.follow) { + reject(new FetchError(`maximum redirect reached at: ${request.url}`, "max-redirect")); + finalize(); + return; + } + const requestOpts = { + headers: new Headers2(request.headers), + follow: request.follow, + counter: request.counter + 1, + agent: request.agent, + compress: request.compress, + method: request.method, + body: request.body, + signal: request.signal, + timeout: request.timeout, + size: request.size + }; + if (!isDomainOrSubdomain(request.url, locationURL) || !isSameProtocol(request.url, locationURL)) { + for (const name of ["authorization", "www-authenticate", "cookie", "cookie2"]) { + requestOpts.headers.delete(name); + } + } + if (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) { + reject(new FetchError("Cannot follow redirect with body being a readable stream", "unsupported-redirect")); + finalize(); + return; + } + if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === "POST") { + requestOpts.method = "GET"; + requestOpts.body = void 0; + requestOpts.headers.delete("content-length"); + } + resolve8(fetch4(new Request2(locationURL, requestOpts))); + finalize(); + return; + } + } + res.once("end", function() { + if (signal) + signal.removeEventListener("abort", abortAndFinalize); + }); + let body2 = res.pipe(new PassThrough$1()); + const response_options = { + url: request.url, + status: res.statusCode, + statusText: res.statusMessage, + headers, + size: request.size, + timeout: request.timeout, + counter: request.counter + }; + const codings = headers.get("Content-Encoding"); + if (!request.compress || request.method === "HEAD" || codings === null || res.statusCode === 204 || res.statusCode === 304) { + response = new Response2(body2, response_options); + resolve8(response); + return; + } + const zlibOptions2 = { + flush: zlib2.Z_SYNC_FLUSH, + finishFlush: zlib2.Z_SYNC_FLUSH + }; + if (codings == "gzip" || codings == "x-gzip") { + body2 = body2.pipe(zlib2.createGunzip(zlibOptions2)); + response = new Response2(body2, response_options); + resolve8(response); + return; + } + if (codings == "deflate" || codings == "x-deflate") { + const raw = res.pipe(new PassThrough$1()); + raw.once("data", function(chunk) { + if ((chunk[0] & 15) === 8) { + body2 = body2.pipe(zlib2.createInflate()); + } else { + body2 = body2.pipe(zlib2.createInflateRaw()); + } + response = new Response2(body2, response_options); + resolve8(response); + }); + raw.on("end", function() { + if (!response) { + response = new Response2(body2, response_options); + resolve8(response); + } + }); + return; + } + if (codings == "br" && typeof zlib2.createBrotliDecompress === "function") { + body2 = body2.pipe(zlib2.createBrotliDecompress()); + response = new Response2(body2, response_options); + resolve8(response); + return; + } + response = new Response2(body2, response_options); + resolve8(response); + }); + writeToStream(req, request); + }); + } + function fixResponseChunkedTransferBadEnding(request, errorCallback) { + let socket; + request.on("socket", function(s) { + socket = s; + }); + request.on("response", function(response) { + const headers = response.headers; + if (headers["transfer-encoding"] === "chunked" && !headers["content-length"]) { + response.once("close", function(hadError) { + const hasDataListener = socket.listenerCount("data") > 0; + if (hasDataListener && !hadError) { + const err2 = new Error("Premature close"); + err2.code = "ERR_STREAM_PREMATURE_CLOSE"; + errorCallback(err2); + } + }); + } + }); + } + function destroyStream(stream5, err2) { + if (stream5.destroy) { + stream5.destroy(err2); + } else { + stream5.emit("error", err2); + stream5.end(); + } + } + fetch4.isRedirect = function(code) { + return code === 301 || code === 302 || code === 303 || code === 307 || code === 308; + }; + fetch4.Promise = global.Promise; + module2.exports = exports2 = fetch4; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.default = exports2; + exports2.Headers = Headers2; + exports2.Request = Request2; + exports2.Response = Response2; + exports2.FetchError = FetchError; + } +}); + +// ../node_modules/.pnpm/isomorphic-fetch@3.0.0/node_modules/isomorphic-fetch/fetch-npm-node.js +var require_fetch_npm_node = __commonJS({ + "../node_modules/.pnpm/isomorphic-fetch@3.0.0/node_modules/isomorphic-fetch/fetch-npm-node.js"(exports2, module2) { + "use strict"; + var realFetch = require_lib2(); + module2.exports = function(url2, options2) { + if (/^\/\//.test(url2)) { + url2 = "https:" + url2; + } + return realFetch.call(this, url2, options2); + }; + if (!global.fetch) { + global.fetch = module2.exports; + global.Response = realFetch.Response; + global.Headers = realFetch.Headers; + global.Request = realFetch.Request; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js +var require_globalThis = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2._globalThis = void 0; + exports2._globalThis = typeof globalThis === "object" ? globalThis : global; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/platform/node/index.js +var require_node = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/platform/node/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_globalThis(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/platform/index.js +var require_platform = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/platform/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_node(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/version.js +var require_version = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/version.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VERSION = void 0; + exports2.VERSION = "1.7.0"; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/internal/semver.js +var require_semver = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/internal/semver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isCompatible = exports2._makeCompatibilityCheck = void 0; + var version_1 = require_version(); + var re = /^(\d+)\.(\d+)\.(\d+)(-(.+))?$/; + function _makeCompatibilityCheck(ownVersion) { + const acceptedVersions = /* @__PURE__ */ new Set([ownVersion]); + const rejectedVersions = /* @__PURE__ */ new Set(); + const myVersionMatch = ownVersion.match(re); + if (!myVersionMatch) { + return () => false; + } + const ownVersionParsed = { + major: +myVersionMatch[1], + minor: +myVersionMatch[2], + patch: +myVersionMatch[3], + prerelease: myVersionMatch[4] + }; + if (ownVersionParsed.prerelease != null) { + return function isExactmatch(globalVersion) { + return globalVersion === ownVersion; + }; + } + function _reject(v) { + rejectedVersions.add(v); + return false; + } + function _accept(v) { + acceptedVersions.add(v); + return true; + } + return function isCompatible(globalVersion) { + if (acceptedVersions.has(globalVersion)) { + return true; + } + if (rejectedVersions.has(globalVersion)) { + return false; + } + const globalVersionMatch = globalVersion.match(re); + if (!globalVersionMatch) { + return _reject(globalVersion); + } + const globalVersionParsed = { + major: +globalVersionMatch[1], + minor: +globalVersionMatch[2], + patch: +globalVersionMatch[3], + prerelease: globalVersionMatch[4] + }; + if (globalVersionParsed.prerelease != null) { + return _reject(globalVersion); + } + if (ownVersionParsed.major !== globalVersionParsed.major) { + return _reject(globalVersion); + } + if (ownVersionParsed.major === 0) { + if (ownVersionParsed.minor === globalVersionParsed.minor && ownVersionParsed.patch <= globalVersionParsed.patch) { + return _accept(globalVersion); + } + return _reject(globalVersion); + } + if (ownVersionParsed.minor <= globalVersionParsed.minor) { + return _accept(globalVersion); + } + return _reject(globalVersion); + }; + } + exports2._makeCompatibilityCheck = _makeCompatibilityCheck; + exports2.isCompatible = _makeCompatibilityCheck(version_1.VERSION); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/internal/global-utils.js +var require_global_utils = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/internal/global-utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.unregisterGlobal = exports2.getGlobal = exports2.registerGlobal = void 0; + var platform_1 = require_platform(); + var version_1 = require_version(); + var semver_1 = require_semver(); + var major2 = version_1.VERSION.split(".")[0]; + var GLOBAL_OPENTELEMETRY_API_KEY = Symbol.for(`opentelemetry.js.api.${major2}`); + var _global2 = platform_1._globalThis; + function registerGlobal(type2, instance2, diag, allowOverride = false) { + var _a; + const api = _global2[GLOBAL_OPENTELEMETRY_API_KEY] = (_a = _global2[GLOBAL_OPENTELEMETRY_API_KEY]) !== null && _a !== void 0 ? _a : { + version: version_1.VERSION + }; + if (!allowOverride && api[type2]) { + const err2 = new Error(`@opentelemetry/api: Attempted duplicate registration of API: ${type2}`); + diag.error(err2.stack || err2.message); + return false; + } + if (api.version !== version_1.VERSION) { + const err2 = new Error(`@opentelemetry/api: Registration of version v${api.version} for ${type2} does not match previously registered API v${version_1.VERSION}`); + diag.error(err2.stack || err2.message); + return false; + } + api[type2] = instance2; + diag.debug(`@opentelemetry/api: Registered a global for ${type2} v${version_1.VERSION}.`); + return true; + } + exports2.registerGlobal = registerGlobal; + function getGlobal(type2) { + var _a, _b; + const globalVersion = (_a = _global2[GLOBAL_OPENTELEMETRY_API_KEY]) === null || _a === void 0 ? void 0 : _a.version; + if (!globalVersion || !(0, semver_1.isCompatible)(globalVersion)) { + return; + } + return (_b = _global2[GLOBAL_OPENTELEMETRY_API_KEY]) === null || _b === void 0 ? void 0 : _b[type2]; + } + exports2.getGlobal = getGlobal; + function unregisterGlobal(type2, diag) { + diag.debug(`@opentelemetry/api: Unregistering a global for ${type2} v${version_1.VERSION}.`); + const api = _global2[GLOBAL_OPENTELEMETRY_API_KEY]; + if (api) { + delete api[type2]; + } + } + exports2.unregisterGlobal = unregisterGlobal; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js +var require_ComponentLogger = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DiagComponentLogger = void 0; + var global_utils_1 = require_global_utils(); + var DiagComponentLogger = class { + constructor(props) { + this._namespace = props.namespace || "DiagComponentLogger"; + } + debug(...args3) { + return logProxy("debug", this._namespace, args3); + } + error(...args3) { + return logProxy("error", this._namespace, args3); + } + info(...args3) { + return logProxy("info", this._namespace, args3); + } + warn(...args3) { + return logProxy("warn", this._namespace, args3); + } + verbose(...args3) { + return logProxy("verbose", this._namespace, args3); + } + }; + exports2.DiagComponentLogger = DiagComponentLogger; + function logProxy(funcName, namespace, args3) { + const logger2 = (0, global_utils_1.getGlobal)("diag"); + if (!logger2) { + return; + } + args3.unshift(namespace); + return logger2[funcName](...args3); + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/diag/types.js +var require_types = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/diag/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DiagLogLevel = void 0; + var DiagLogLevel; + (function(DiagLogLevel2) { + DiagLogLevel2[DiagLogLevel2["NONE"] = 0] = "NONE"; + DiagLogLevel2[DiagLogLevel2["ERROR"] = 30] = "ERROR"; + DiagLogLevel2[DiagLogLevel2["WARN"] = 50] = "WARN"; + DiagLogLevel2[DiagLogLevel2["INFO"] = 60] = "INFO"; + DiagLogLevel2[DiagLogLevel2["DEBUG"] = 70] = "DEBUG"; + DiagLogLevel2[DiagLogLevel2["VERBOSE"] = 80] = "VERBOSE"; + DiagLogLevel2[DiagLogLevel2["ALL"] = 9999] = "ALL"; + })(DiagLogLevel = exports2.DiagLogLevel || (exports2.DiagLogLevel = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js +var require_logLevelLogger = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createLogLevelDiagLogger = void 0; + var types_1 = require_types(); + function createLogLevelDiagLogger(maxLevel, logger2) { + if (maxLevel < types_1.DiagLogLevel.NONE) { + maxLevel = types_1.DiagLogLevel.NONE; + } else if (maxLevel > types_1.DiagLogLevel.ALL) { + maxLevel = types_1.DiagLogLevel.ALL; + } + logger2 = logger2 || {}; + function _filterFunc(funcName, theLevel) { + const theFunc = logger2[funcName]; + if (typeof theFunc === "function" && maxLevel >= theLevel) { + return theFunc.bind(logger2); + } + return function() { + }; + } + return { + error: _filterFunc("error", types_1.DiagLogLevel.ERROR), + warn: _filterFunc("warn", types_1.DiagLogLevel.WARN), + info: _filterFunc("info", types_1.DiagLogLevel.INFO), + debug: _filterFunc("debug", types_1.DiagLogLevel.DEBUG), + verbose: _filterFunc("verbose", types_1.DiagLogLevel.VERBOSE) + }; + } + exports2.createLogLevelDiagLogger = createLogLevelDiagLogger; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/api/diag.js +var require_diag = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/api/diag.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DiagAPI = void 0; + var ComponentLogger_1 = require_ComponentLogger(); + var logLevelLogger_1 = require_logLevelLogger(); + var types_1 = require_types(); + var global_utils_1 = require_global_utils(); + var API_NAME = "diag"; + var DiagAPI = class _DiagAPI { + /** + * Private internal constructor + * @private + */ + constructor() { + function _logProxy(funcName) { + return function(...args3) { + const logger2 = (0, global_utils_1.getGlobal)("diag"); + if (!logger2) + return; + return logger2[funcName](...args3); + }; + } + const self2 = this; + const setLogger = (logger2, optionsOrLogLevel = { logLevel: types_1.DiagLogLevel.INFO }) => { + var _a, _b, _c; + if (logger2 === self2) { + const err2 = new Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation"); + self2.error((_a = err2.stack) !== null && _a !== void 0 ? _a : err2.message); + return false; + } + if (typeof optionsOrLogLevel === "number") { + optionsOrLogLevel = { + logLevel: optionsOrLogLevel + }; + } + const oldLogger = (0, global_utils_1.getGlobal)("diag"); + const newLogger = (0, logLevelLogger_1.createLogLevelDiagLogger)((_b = optionsOrLogLevel.logLevel) !== null && _b !== void 0 ? _b : types_1.DiagLogLevel.INFO, logger2); + if (oldLogger && !optionsOrLogLevel.suppressOverrideMessage) { + const stack = (_c = new Error().stack) !== null && _c !== void 0 ? _c : ""; + oldLogger.warn(`Current logger will be overwritten from ${stack}`); + newLogger.warn(`Current logger will overwrite one already registered from ${stack}`); + } + return (0, global_utils_1.registerGlobal)("diag", newLogger, self2, true); + }; + self2.setLogger = setLogger; + self2.disable = () => { + (0, global_utils_1.unregisterGlobal)(API_NAME, self2); + }; + self2.createComponentLogger = (options2) => { + return new ComponentLogger_1.DiagComponentLogger(options2); + }; + self2.verbose = _logProxy("verbose"); + self2.debug = _logProxy("debug"); + self2.info = _logProxy("info"); + self2.warn = _logProxy("warn"); + self2.error = _logProxy("error"); + } + /** Get the singleton instance of the DiagAPI API */ + static instance() { + if (!this._instance) { + this._instance = new _DiagAPI(); + } + return this._instance; + } + }; + exports2.DiagAPI = DiagAPI; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js +var require_baggage_impl = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BaggageImpl = void 0; + var BaggageImpl = class _BaggageImpl { + constructor(entries) { + this._entries = entries ? new Map(entries) : /* @__PURE__ */ new Map(); + } + getEntry(key) { + const entry = this._entries.get(key); + if (!entry) { + return void 0; + } + return Object.assign({}, entry); + } + getAllEntries() { + return Array.from(this._entries.entries()).map(([k, v]) => [k, v]); + } + setEntry(key, entry) { + const newBaggage = new _BaggageImpl(this._entries); + newBaggage._entries.set(key, entry); + return newBaggage; + } + removeEntry(key) { + const newBaggage = new _BaggageImpl(this._entries); + newBaggage._entries.delete(key); + return newBaggage; + } + removeEntries(...keys) { + const newBaggage = new _BaggageImpl(this._entries); + for (const key of keys) { + newBaggage._entries.delete(key); + } + return newBaggage; + } + clear() { + return new _BaggageImpl(); + } + }; + exports2.BaggageImpl = BaggageImpl; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js +var require_symbol = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.baggageEntryMetadataSymbol = void 0; + exports2.baggageEntryMetadataSymbol = Symbol("BaggageEntryMetadata"); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/baggage/utils.js +var require_utils2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/baggage/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.baggageEntryMetadataFromString = exports2.createBaggage = void 0; + var diag_1 = require_diag(); + var baggage_impl_1 = require_baggage_impl(); + var symbol_1 = require_symbol(); + var diag = diag_1.DiagAPI.instance(); + function createBaggage(entries = {}) { + return new baggage_impl_1.BaggageImpl(new Map(Object.entries(entries))); + } + exports2.createBaggage = createBaggage; + function baggageEntryMetadataFromString(str) { + if (typeof str !== "string") { + diag.error(`Cannot create baggage metadata from unknown type: ${typeof str}`); + str = ""; + } + return { + __TYPE__: symbol_1.baggageEntryMetadataSymbol, + toString() { + return str; + } + }; + } + exports2.baggageEntryMetadataFromString = baggageEntryMetadataFromString; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/context/context.js +var require_context = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/context/context.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ROOT_CONTEXT = exports2.createContextKey = void 0; + function createContextKey(description) { + return Symbol.for(description); + } + exports2.createContextKey = createContextKey; + var BaseContext = class _BaseContext { + /** + * Construct a new context which inherits values from an optional parent context. + * + * @param parentContext a context from which to inherit values + */ + constructor(parentContext) { + const self2 = this; + self2._currentContext = parentContext ? new Map(parentContext) : /* @__PURE__ */ new Map(); + self2.getValue = (key) => self2._currentContext.get(key); + self2.setValue = (key, value) => { + const context2 = new _BaseContext(self2._currentContext); + context2._currentContext.set(key, value); + return context2; + }; + self2.deleteValue = (key) => { + const context2 = new _BaseContext(self2._currentContext); + context2._currentContext.delete(key); + return context2; + }; + } + }; + exports2.ROOT_CONTEXT = new BaseContext(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js +var require_consoleLogger = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DiagConsoleLogger = void 0; + var consoleMap = [ + { n: "error", c: "error" }, + { n: "warn", c: "warn" }, + { n: "info", c: "info" }, + { n: "debug", c: "debug" }, + { n: "verbose", c: "trace" } + ]; + var DiagConsoleLogger = class { + constructor() { + function _consoleFunc(funcName) { + return function(...args3) { + if (console) { + let theFunc = console[funcName]; + if (typeof theFunc !== "function") { + theFunc = console.log; + } + if (typeof theFunc === "function") { + return theFunc.apply(console, args3); + } + } + }; + } + for (let i = 0; i < consoleMap.length; i++) { + this[consoleMap[i].n] = _consoleFunc(consoleMap[i].c); + } + } + }; + exports2.DiagConsoleLogger = DiagConsoleLogger; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js +var require_NoopMeter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createNoopMeter = exports2.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC = exports2.NOOP_OBSERVABLE_GAUGE_METRIC = exports2.NOOP_OBSERVABLE_COUNTER_METRIC = exports2.NOOP_UP_DOWN_COUNTER_METRIC = exports2.NOOP_HISTOGRAM_METRIC = exports2.NOOP_COUNTER_METRIC = exports2.NOOP_METER = exports2.NoopObservableUpDownCounterMetric = exports2.NoopObservableGaugeMetric = exports2.NoopObservableCounterMetric = exports2.NoopObservableMetric = exports2.NoopHistogramMetric = exports2.NoopUpDownCounterMetric = exports2.NoopCounterMetric = exports2.NoopMetric = exports2.NoopMeter = void 0; + var NoopMeter = class { + constructor() { + } + /** + * @see {@link Meter.createHistogram} + */ + createHistogram(_name, _options) { + return exports2.NOOP_HISTOGRAM_METRIC; + } + /** + * @see {@link Meter.createCounter} + */ + createCounter(_name, _options) { + return exports2.NOOP_COUNTER_METRIC; + } + /** + * @see {@link Meter.createUpDownCounter} + */ + createUpDownCounter(_name, _options) { + return exports2.NOOP_UP_DOWN_COUNTER_METRIC; + } + /** + * @see {@link Meter.createObservableGauge} + */ + createObservableGauge(_name, _options) { + return exports2.NOOP_OBSERVABLE_GAUGE_METRIC; + } + /** + * @see {@link Meter.createObservableCounter} + */ + createObservableCounter(_name, _options) { + return exports2.NOOP_OBSERVABLE_COUNTER_METRIC; + } + /** + * @see {@link Meter.createObservableUpDownCounter} + */ + createObservableUpDownCounter(_name, _options) { + return exports2.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC; + } + /** + * @see {@link Meter.addBatchObservableCallback} + */ + addBatchObservableCallback(_callback, _observables) { + } + /** + * @see {@link Meter.removeBatchObservableCallback} + */ + removeBatchObservableCallback(_callback) { + } + }; + exports2.NoopMeter = NoopMeter; + var NoopMetric = class { + }; + exports2.NoopMetric = NoopMetric; + var NoopCounterMetric = class extends NoopMetric { + add(_value, _attributes) { + } + }; + exports2.NoopCounterMetric = NoopCounterMetric; + var NoopUpDownCounterMetric = class extends NoopMetric { + add(_value, _attributes) { + } + }; + exports2.NoopUpDownCounterMetric = NoopUpDownCounterMetric; + var NoopHistogramMetric = class extends NoopMetric { + record(_value, _attributes) { + } + }; + exports2.NoopHistogramMetric = NoopHistogramMetric; + var NoopObservableMetric = class { + addCallback(_callback) { + } + removeCallback(_callback) { + } + }; + exports2.NoopObservableMetric = NoopObservableMetric; + var NoopObservableCounterMetric = class extends NoopObservableMetric { + }; + exports2.NoopObservableCounterMetric = NoopObservableCounterMetric; + var NoopObservableGaugeMetric = class extends NoopObservableMetric { + }; + exports2.NoopObservableGaugeMetric = NoopObservableGaugeMetric; + var NoopObservableUpDownCounterMetric = class extends NoopObservableMetric { + }; + exports2.NoopObservableUpDownCounterMetric = NoopObservableUpDownCounterMetric; + exports2.NOOP_METER = new NoopMeter(); + exports2.NOOP_COUNTER_METRIC = new NoopCounterMetric(); + exports2.NOOP_HISTOGRAM_METRIC = new NoopHistogramMetric(); + exports2.NOOP_UP_DOWN_COUNTER_METRIC = new NoopUpDownCounterMetric(); + exports2.NOOP_OBSERVABLE_COUNTER_METRIC = new NoopObservableCounterMetric(); + exports2.NOOP_OBSERVABLE_GAUGE_METRIC = new NoopObservableGaugeMetric(); + exports2.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC = new NoopObservableUpDownCounterMetric(); + function createNoopMeter() { + return exports2.NOOP_METER; + } + exports2.createNoopMeter = createNoopMeter; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/metrics/Metric.js +var require_Metric = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/metrics/Metric.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ValueType = void 0; + var ValueType; + (function(ValueType2) { + ValueType2[ValueType2["INT"] = 0] = "INT"; + ValueType2[ValueType2["DOUBLE"] = 1] = "DOUBLE"; + })(ValueType = exports2.ValueType || (exports2.ValueType = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js +var require_TextMapPropagator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defaultTextMapSetter = exports2.defaultTextMapGetter = void 0; + exports2.defaultTextMapGetter = { + get(carrier, key) { + if (carrier == null) { + return void 0; + } + return carrier[key]; + }, + keys(carrier) { + if (carrier == null) { + return []; + } + return Object.keys(carrier); + } + }; + exports2.defaultTextMapSetter = { + set(carrier, key, value) { + if (carrier == null) { + return; + } + carrier[key] = value; + } + }; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js +var require_NoopContextManager = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NoopContextManager = void 0; + var context_1 = require_context(); + var NoopContextManager = class { + active() { + return context_1.ROOT_CONTEXT; + } + with(_context, fn, thisArg, ...args3) { + return fn.call(thisArg, ...args3); + } + bind(_context, target) { + return target; + } + enable() { + return this; + } + disable() { + return this; + } + }; + exports2.NoopContextManager = NoopContextManager; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/api/context.js +var require_context2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/api/context.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ContextAPI = void 0; + var NoopContextManager_1 = require_NoopContextManager(); + var global_utils_1 = require_global_utils(); + var diag_1 = require_diag(); + var API_NAME = "context"; + var NOOP_CONTEXT_MANAGER = new NoopContextManager_1.NoopContextManager(); + var ContextAPI = class _ContextAPI { + /** Empty private constructor prevents end users from constructing a new instance of the API */ + constructor() { + } + /** Get the singleton instance of the Context API */ + static getInstance() { + if (!this._instance) { + this._instance = new _ContextAPI(); + } + return this._instance; + } + /** + * Set the current context manager. + * + * @returns true if the context manager was successfully registered, else false + */ + setGlobalContextManager(contextManager) { + return (0, global_utils_1.registerGlobal)(API_NAME, contextManager, diag_1.DiagAPI.instance()); + } + /** + * Get the currently active context + */ + active() { + return this._getContextManager().active(); + } + /** + * Execute a function with an active context + * + * @param context context to be active during function execution + * @param fn function to execute in a context + * @param thisArg optional receiver to be used for calling fn + * @param args optional arguments forwarded to fn + */ + with(context2, fn, thisArg, ...args3) { + return this._getContextManager().with(context2, fn, thisArg, ...args3); + } + /** + * Bind a context to a target function or event emitter + * + * @param context context to bind to the event emitter or function. Defaults to the currently active context + * @param target function or event emitter to bind + */ + bind(context2, target) { + return this._getContextManager().bind(context2, target); + } + _getContextManager() { + return (0, global_utils_1.getGlobal)(API_NAME) || NOOP_CONTEXT_MANAGER; + } + /** Disable and remove the global context manager */ + disable() { + this._getContextManager().disable(); + (0, global_utils_1.unregisterGlobal)(API_NAME, diag_1.DiagAPI.instance()); + } + }; + exports2.ContextAPI = ContextAPI; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js +var require_trace_flags = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TraceFlags = void 0; + var TraceFlags; + (function(TraceFlags2) { + TraceFlags2[TraceFlags2["NONE"] = 0] = "NONE"; + TraceFlags2[TraceFlags2["SAMPLED"] = 1] = "SAMPLED"; + })(TraceFlags = exports2.TraceFlags || (exports2.TraceFlags = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js +var require_invalid_span_constants = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.INVALID_SPAN_CONTEXT = exports2.INVALID_TRACEID = exports2.INVALID_SPANID = void 0; + var trace_flags_1 = require_trace_flags(); + exports2.INVALID_SPANID = "0000000000000000"; + exports2.INVALID_TRACEID = "00000000000000000000000000000000"; + exports2.INVALID_SPAN_CONTEXT = { + traceId: exports2.INVALID_TRACEID, + spanId: exports2.INVALID_SPANID, + traceFlags: trace_flags_1.TraceFlags.NONE + }; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js +var require_NonRecordingSpan = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NonRecordingSpan = void 0; + var invalid_span_constants_1 = require_invalid_span_constants(); + var NonRecordingSpan = class { + constructor(_spanContext = invalid_span_constants_1.INVALID_SPAN_CONTEXT) { + this._spanContext = _spanContext; + } + // Returns a SpanContext. + spanContext() { + return this._spanContext; + } + // By default does nothing + setAttribute(_key, _value) { + return this; + } + // By default does nothing + setAttributes(_attributes) { + return this; + } + // By default does nothing + addEvent(_name, _attributes) { + return this; + } + // By default does nothing + setStatus(_status) { + return this; + } + // By default does nothing + updateName(_name) { + return this; + } + // By default does nothing + end(_endTime) { + } + // isRecording always returns false for NonRecordingSpan. + isRecording() { + return false; + } + // By default does nothing + recordException(_exception, _time) { + } + }; + exports2.NonRecordingSpan = NonRecordingSpan; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/context-utils.js +var require_context_utils = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/context-utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSpanContext = exports2.setSpanContext = exports2.deleteSpan = exports2.setSpan = exports2.getActiveSpan = exports2.getSpan = void 0; + var context_1 = require_context(); + var NonRecordingSpan_1 = require_NonRecordingSpan(); + var context_2 = require_context2(); + var SPAN_KEY = (0, context_1.createContextKey)("OpenTelemetry Context Key SPAN"); + function getSpan(context2) { + return context2.getValue(SPAN_KEY) || void 0; + } + exports2.getSpan = getSpan; + function getActiveSpan() { + return getSpan(context_2.ContextAPI.getInstance().active()); + } + exports2.getActiveSpan = getActiveSpan; + function setSpan(context2, span) { + return context2.setValue(SPAN_KEY, span); + } + exports2.setSpan = setSpan; + function deleteSpan(context2) { + return context2.deleteValue(SPAN_KEY); + } + exports2.deleteSpan = deleteSpan; + function setSpanContext(context2, spanContext) { + return setSpan(context2, new NonRecordingSpan_1.NonRecordingSpan(spanContext)); + } + exports2.setSpanContext = setSpanContext; + function getSpanContext(context2) { + var _a; + return (_a = getSpan(context2)) === null || _a === void 0 ? void 0 : _a.spanContext(); + } + exports2.getSpanContext = getSpanContext; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js +var require_spancontext_utils = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.wrapSpanContext = exports2.isSpanContextValid = exports2.isValidSpanId = exports2.isValidTraceId = void 0; + var invalid_span_constants_1 = require_invalid_span_constants(); + var NonRecordingSpan_1 = require_NonRecordingSpan(); + var VALID_TRACEID_REGEX = /^([0-9a-f]{32})$/i; + var VALID_SPANID_REGEX = /^[0-9a-f]{16}$/i; + function isValidTraceId(traceId) { + return VALID_TRACEID_REGEX.test(traceId) && traceId !== invalid_span_constants_1.INVALID_TRACEID; + } + exports2.isValidTraceId = isValidTraceId; + function isValidSpanId(spanId) { + return VALID_SPANID_REGEX.test(spanId) && spanId !== invalid_span_constants_1.INVALID_SPANID; + } + exports2.isValidSpanId = isValidSpanId; + function isSpanContextValid(spanContext) { + return isValidTraceId(spanContext.traceId) && isValidSpanId(spanContext.spanId); + } + exports2.isSpanContextValid = isSpanContextValid; + function wrapSpanContext(spanContext) { + return new NonRecordingSpan_1.NonRecordingSpan(spanContext); + } + exports2.wrapSpanContext = wrapSpanContext; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js +var require_NoopTracer = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NoopTracer = void 0; + var context_1 = require_context2(); + var context_utils_1 = require_context_utils(); + var NonRecordingSpan_1 = require_NonRecordingSpan(); + var spancontext_utils_1 = require_spancontext_utils(); + var contextApi = context_1.ContextAPI.getInstance(); + var NoopTracer = class { + // startSpan starts a noop span. + startSpan(name, options2, context2 = contextApi.active()) { + const root = Boolean(options2 === null || options2 === void 0 ? void 0 : options2.root); + if (root) { + return new NonRecordingSpan_1.NonRecordingSpan(); + } + const parentFromContext = context2 && (0, context_utils_1.getSpanContext)(context2); + if (isSpanContext(parentFromContext) && (0, spancontext_utils_1.isSpanContextValid)(parentFromContext)) { + return new NonRecordingSpan_1.NonRecordingSpan(parentFromContext); + } else { + return new NonRecordingSpan_1.NonRecordingSpan(); + } + } + startActiveSpan(name, arg2, arg3, arg4) { + let opts; + let ctx; + let fn; + if (arguments.length < 2) { + return; + } else if (arguments.length === 2) { + fn = arg2; + } else if (arguments.length === 3) { + opts = arg2; + fn = arg3; + } else { + opts = arg2; + ctx = arg3; + fn = arg4; + } + const parentContext = ctx !== null && ctx !== void 0 ? ctx : contextApi.active(); + const span = this.startSpan(name, opts, parentContext); + const contextWithSpanSet = (0, context_utils_1.setSpan)(parentContext, span); + return contextApi.with(contextWithSpanSet, fn, void 0, span); + } + }; + exports2.NoopTracer = NoopTracer; + function isSpanContext(spanContext) { + return typeof spanContext === "object" && typeof spanContext["spanId"] === "string" && typeof spanContext["traceId"] === "string" && typeof spanContext["traceFlags"] === "number"; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js +var require_ProxyTracer = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ProxyTracer = void 0; + var NoopTracer_1 = require_NoopTracer(); + var NOOP_TRACER = new NoopTracer_1.NoopTracer(); + var ProxyTracer = class { + constructor(_provider, name, version4, options2) { + this._provider = _provider; + this.name = name; + this.version = version4; + this.options = options2; + } + startSpan(name, options2, context2) { + return this._getTracer().startSpan(name, options2, context2); + } + startActiveSpan(_name, _options, _context, _fn) { + const tracer2 = this._getTracer(); + return Reflect.apply(tracer2.startActiveSpan, tracer2, arguments); + } + /** + * Try to get a tracer from the proxy tracer provider. + * If the proxy tracer provider has no delegate, return a noop tracer. + */ + _getTracer() { + if (this._delegate) { + return this._delegate; + } + const tracer2 = this._provider.getDelegateTracer(this.name, this.version, this.options); + if (!tracer2) { + return NOOP_TRACER; + } + this._delegate = tracer2; + return this._delegate; + } + }; + exports2.ProxyTracer = ProxyTracer; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js +var require_NoopTracerProvider = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NoopTracerProvider = void 0; + var NoopTracer_1 = require_NoopTracer(); + var NoopTracerProvider = class { + getTracer(_name, _version, _options) { + return new NoopTracer_1.NoopTracer(); + } + }; + exports2.NoopTracerProvider = NoopTracerProvider; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js +var require_ProxyTracerProvider = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ProxyTracerProvider = void 0; + var ProxyTracer_1 = require_ProxyTracer(); + var NoopTracerProvider_1 = require_NoopTracerProvider(); + var NOOP_TRACER_PROVIDER = new NoopTracerProvider_1.NoopTracerProvider(); + var ProxyTracerProvider = class { + /** + * Get a {@link ProxyTracer} + */ + getTracer(name, version4, options2) { + var _a; + return (_a = this.getDelegateTracer(name, version4, options2)) !== null && _a !== void 0 ? _a : new ProxyTracer_1.ProxyTracer(this, name, version4, options2); + } + getDelegate() { + var _a; + return (_a = this._delegate) !== null && _a !== void 0 ? _a : NOOP_TRACER_PROVIDER; + } + /** + * Set the delegate tracer provider + */ + setDelegate(delegate) { + this._delegate = delegate; + } + getDelegateTracer(name, version4, options2) { + var _a; + return (_a = this._delegate) === null || _a === void 0 ? void 0 : _a.getTracer(name, version4, options2); + } + }; + exports2.ProxyTracerProvider = ProxyTracerProvider; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js +var require_SamplingResult = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SamplingDecision = void 0; + var SamplingDecision; + (function(SamplingDecision2) { + SamplingDecision2[SamplingDecision2["NOT_RECORD"] = 0] = "NOT_RECORD"; + SamplingDecision2[SamplingDecision2["RECORD"] = 1] = "RECORD"; + SamplingDecision2[SamplingDecision2["RECORD_AND_SAMPLED"] = 2] = "RECORD_AND_SAMPLED"; + })(SamplingDecision = exports2.SamplingDecision || (exports2.SamplingDecision = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/span_kind.js +var require_span_kind = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/span_kind.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SpanKind = void 0; + var SpanKind; + (function(SpanKind2) { + SpanKind2[SpanKind2["INTERNAL"] = 0] = "INTERNAL"; + SpanKind2[SpanKind2["SERVER"] = 1] = "SERVER"; + SpanKind2[SpanKind2["CLIENT"] = 2] = "CLIENT"; + SpanKind2[SpanKind2["PRODUCER"] = 3] = "PRODUCER"; + SpanKind2[SpanKind2["CONSUMER"] = 4] = "CONSUMER"; + })(SpanKind = exports2.SpanKind || (exports2.SpanKind = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/status.js +var require_status = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/status.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SpanStatusCode = void 0; + var SpanStatusCode2; + (function(SpanStatusCode3) { + SpanStatusCode3[SpanStatusCode3["UNSET"] = 0] = "UNSET"; + SpanStatusCode3[SpanStatusCode3["OK"] = 1] = "OK"; + SpanStatusCode3[SpanStatusCode3["ERROR"] = 2] = "ERROR"; + })(SpanStatusCode2 = exports2.SpanStatusCode || (exports2.SpanStatusCode = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js +var require_tracestate_validators = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateValue = exports2.validateKey = void 0; + var VALID_KEY_CHAR_RANGE = "[_0-9a-z-*/]"; + var VALID_KEY = `[a-z]${VALID_KEY_CHAR_RANGE}{0,255}`; + var VALID_VENDOR_KEY = `[a-z0-9]${VALID_KEY_CHAR_RANGE}{0,240}@[a-z]${VALID_KEY_CHAR_RANGE}{0,13}`; + var VALID_KEY_REGEX = new RegExp(`^(?:${VALID_KEY}|${VALID_VENDOR_KEY})$`); + var VALID_VALUE_BASE_REGEX = /^[ -~]{0,255}[!-~]$/; + var INVALID_VALUE_COMMA_EQUAL_REGEX = /,|=/; + function validateKey(key) { + return VALID_KEY_REGEX.test(key); + } + exports2.validateKey = validateKey; + function validateValue(value) { + return VALID_VALUE_BASE_REGEX.test(value) && !INVALID_VALUE_COMMA_EQUAL_REGEX.test(value); + } + exports2.validateValue = validateValue; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js +var require_tracestate_impl = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TraceStateImpl = void 0; + var tracestate_validators_1 = require_tracestate_validators(); + var MAX_TRACE_STATE_ITEMS = 32; + var MAX_TRACE_STATE_LEN = 512; + var LIST_MEMBERS_SEPARATOR = ","; + var LIST_MEMBER_KEY_VALUE_SPLITTER = "="; + var TraceStateImpl = class _TraceStateImpl { + constructor(rawTraceState) { + this._internalState = /* @__PURE__ */ new Map(); + if (rawTraceState) + this._parse(rawTraceState); + } + set(key, value) { + const traceState = this._clone(); + if (traceState._internalState.has(key)) { + traceState._internalState.delete(key); + } + traceState._internalState.set(key, value); + return traceState; + } + unset(key) { + const traceState = this._clone(); + traceState._internalState.delete(key); + return traceState; + } + get(key) { + return this._internalState.get(key); + } + serialize() { + return this._keys().reduce((agg, key) => { + agg.push(key + LIST_MEMBER_KEY_VALUE_SPLITTER + this.get(key)); + return agg; + }, []).join(LIST_MEMBERS_SEPARATOR); + } + _parse(rawTraceState) { + if (rawTraceState.length > MAX_TRACE_STATE_LEN) + return; + this._internalState = rawTraceState.split(LIST_MEMBERS_SEPARATOR).reverse().reduce((agg, part) => { + const listMember = part.trim(); + const i = listMember.indexOf(LIST_MEMBER_KEY_VALUE_SPLITTER); + if (i !== -1) { + const key = listMember.slice(0, i); + const value = listMember.slice(i + 1, part.length); + if ((0, tracestate_validators_1.validateKey)(key) && (0, tracestate_validators_1.validateValue)(value)) { + agg.set(key, value); + } else { + } + } + return agg; + }, /* @__PURE__ */ new Map()); + if (this._internalState.size > MAX_TRACE_STATE_ITEMS) { + this._internalState = new Map(Array.from(this._internalState.entries()).reverse().slice(0, MAX_TRACE_STATE_ITEMS)); + } + } + _keys() { + return Array.from(this._internalState.keys()).reverse(); + } + _clone() { + const traceState = new _TraceStateImpl(); + traceState._internalState = new Map(this._internalState); + return traceState; + } + }; + exports2.TraceStateImpl = TraceStateImpl; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js +var require_utils3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createTraceState = void 0; + var tracestate_impl_1 = require_tracestate_impl(); + function createTraceState(rawTraceState) { + return new tracestate_impl_1.TraceStateImpl(rawTraceState); + } + exports2.createTraceState = createTraceState; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/context-api.js +var require_context_api = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/context-api.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.context = void 0; + var context_1 = require_context2(); + exports2.context = context_1.ContextAPI.getInstance(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/diag-api.js +var require_diag_api = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/diag-api.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.diag = void 0; + var diag_1 = require_diag(); + exports2.diag = diag_1.DiagAPI.instance(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js +var require_NoopMeterProvider = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NOOP_METER_PROVIDER = exports2.NoopMeterProvider = void 0; + var NoopMeter_1 = require_NoopMeter(); + var NoopMeterProvider = class { + getMeter(_name, _version, _options) { + return NoopMeter_1.NOOP_METER; + } + }; + exports2.NoopMeterProvider = NoopMeterProvider; + exports2.NOOP_METER_PROVIDER = new NoopMeterProvider(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/api/metrics.js +var require_metrics = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/api/metrics.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MetricsAPI = void 0; + var NoopMeterProvider_1 = require_NoopMeterProvider(); + var global_utils_1 = require_global_utils(); + var diag_1 = require_diag(); + var API_NAME = "metrics"; + var MetricsAPI = class _MetricsAPI { + /** Empty private constructor prevents end users from constructing a new instance of the API */ + constructor() { + } + /** Get the singleton instance of the Metrics API */ + static getInstance() { + if (!this._instance) { + this._instance = new _MetricsAPI(); + } + return this._instance; + } + /** + * Set the current global meter provider. + * Returns true if the meter provider was successfully registered, else false. + */ + setGlobalMeterProvider(provider) { + return (0, global_utils_1.registerGlobal)(API_NAME, provider, diag_1.DiagAPI.instance()); + } + /** + * Returns the global meter provider. + */ + getMeterProvider() { + return (0, global_utils_1.getGlobal)(API_NAME) || NoopMeterProvider_1.NOOP_METER_PROVIDER; + } + /** + * Returns a meter from the global meter provider. + */ + getMeter(name, version4, options2) { + return this.getMeterProvider().getMeter(name, version4, options2); + } + /** Remove the global meter provider */ + disable() { + (0, global_utils_1.unregisterGlobal)(API_NAME, diag_1.DiagAPI.instance()); + } + }; + exports2.MetricsAPI = MetricsAPI; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/metrics-api.js +var require_metrics_api = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/metrics-api.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.metrics = void 0; + var metrics_1 = require_metrics(); + exports2.metrics = metrics_1.MetricsAPI.getInstance(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js +var require_NoopTextMapPropagator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NoopTextMapPropagator = void 0; + var NoopTextMapPropagator = class { + /** Noop inject function does nothing */ + inject(_context, _carrier) { + } + /** Noop extract function does nothing and returns the input context */ + extract(context2, _carrier) { + return context2; + } + fields() { + return []; + } + }; + exports2.NoopTextMapPropagator = NoopTextMapPropagator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js +var require_context_helpers = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.deleteBaggage = exports2.setBaggage = exports2.getActiveBaggage = exports2.getBaggage = void 0; + var context_1 = require_context2(); + var context_2 = require_context(); + var BAGGAGE_KEY = (0, context_2.createContextKey)("OpenTelemetry Baggage Key"); + function getBaggage(context2) { + return context2.getValue(BAGGAGE_KEY) || void 0; + } + exports2.getBaggage = getBaggage; + function getActiveBaggage() { + return getBaggage(context_1.ContextAPI.getInstance().active()); + } + exports2.getActiveBaggage = getActiveBaggage; + function setBaggage(context2, baggage) { + return context2.setValue(BAGGAGE_KEY, baggage); + } + exports2.setBaggage = setBaggage; + function deleteBaggage(context2) { + return context2.deleteValue(BAGGAGE_KEY); + } + exports2.deleteBaggage = deleteBaggage; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/api/propagation.js +var require_propagation = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/api/propagation.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.PropagationAPI = void 0; + var global_utils_1 = require_global_utils(); + var NoopTextMapPropagator_1 = require_NoopTextMapPropagator(); + var TextMapPropagator_1 = require_TextMapPropagator(); + var context_helpers_1 = require_context_helpers(); + var utils_1 = require_utils2(); + var diag_1 = require_diag(); + var API_NAME = "propagation"; + var NOOP_TEXT_MAP_PROPAGATOR = new NoopTextMapPropagator_1.NoopTextMapPropagator(); + var PropagationAPI = class _PropagationAPI { + /** Empty private constructor prevents end users from constructing a new instance of the API */ + constructor() { + this.createBaggage = utils_1.createBaggage; + this.getBaggage = context_helpers_1.getBaggage; + this.getActiveBaggage = context_helpers_1.getActiveBaggage; + this.setBaggage = context_helpers_1.setBaggage; + this.deleteBaggage = context_helpers_1.deleteBaggage; + } + /** Get the singleton instance of the Propagator API */ + static getInstance() { + if (!this._instance) { + this._instance = new _PropagationAPI(); + } + return this._instance; + } + /** + * Set the current propagator. + * + * @returns true if the propagator was successfully registered, else false + */ + setGlobalPropagator(propagator) { + return (0, global_utils_1.registerGlobal)(API_NAME, propagator, diag_1.DiagAPI.instance()); + } + /** + * Inject context into a carrier to be propagated inter-process + * + * @param context Context carrying tracing data to inject + * @param carrier carrier to inject context into + * @param setter Function used to set values on the carrier + */ + inject(context2, carrier, setter = TextMapPropagator_1.defaultTextMapSetter) { + return this._getGlobalPropagator().inject(context2, carrier, setter); + } + /** + * Extract context from a carrier + * + * @param context Context which the newly created context will inherit from + * @param carrier Carrier to extract context from + * @param getter Function used to extract keys from a carrier + */ + extract(context2, carrier, getter = TextMapPropagator_1.defaultTextMapGetter) { + return this._getGlobalPropagator().extract(context2, carrier, getter); + } + /** + * Return a list of all fields which may be used by the propagator. + */ + fields() { + return this._getGlobalPropagator().fields(); + } + /** Remove the global propagator */ + disable() { + (0, global_utils_1.unregisterGlobal)(API_NAME, diag_1.DiagAPI.instance()); + } + _getGlobalPropagator() { + return (0, global_utils_1.getGlobal)(API_NAME) || NOOP_TEXT_MAP_PROPAGATOR; + } + }; + exports2.PropagationAPI = PropagationAPI; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/propagation-api.js +var require_propagation_api = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/propagation-api.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.propagation = void 0; + var propagation_1 = require_propagation(); + exports2.propagation = propagation_1.PropagationAPI.getInstance(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/api/trace.js +var require_trace = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/api/trace.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TraceAPI = void 0; + var global_utils_1 = require_global_utils(); + var ProxyTracerProvider_1 = require_ProxyTracerProvider(); + var spancontext_utils_1 = require_spancontext_utils(); + var context_utils_1 = require_context_utils(); + var diag_1 = require_diag(); + var API_NAME = "trace"; + var TraceAPI = class _TraceAPI { + /** Empty private constructor prevents end users from constructing a new instance of the API */ + constructor() { + this._proxyTracerProvider = new ProxyTracerProvider_1.ProxyTracerProvider(); + this.wrapSpanContext = spancontext_utils_1.wrapSpanContext; + this.isSpanContextValid = spancontext_utils_1.isSpanContextValid; + this.deleteSpan = context_utils_1.deleteSpan; + this.getSpan = context_utils_1.getSpan; + this.getActiveSpan = context_utils_1.getActiveSpan; + this.getSpanContext = context_utils_1.getSpanContext; + this.setSpan = context_utils_1.setSpan; + this.setSpanContext = context_utils_1.setSpanContext; + } + /** Get the singleton instance of the Trace API */ + static getInstance() { + if (!this._instance) { + this._instance = new _TraceAPI(); + } + return this._instance; + } + /** + * Set the current global tracer. + * + * @returns true if the tracer provider was successfully registered, else false + */ + setGlobalTracerProvider(provider) { + const success = (0, global_utils_1.registerGlobal)(API_NAME, this._proxyTracerProvider, diag_1.DiagAPI.instance()); + if (success) { + this._proxyTracerProvider.setDelegate(provider); + } + return success; + } + /** + * Returns the global tracer provider. + */ + getTracerProvider() { + return (0, global_utils_1.getGlobal)(API_NAME) || this._proxyTracerProvider; + } + /** + * Returns a tracer from the global tracer provider. + */ + getTracer(name, version4) { + return this.getTracerProvider().getTracer(name, version4); + } + /** Remove the global tracer provider */ + disable() { + (0, global_utils_1.unregisterGlobal)(API_NAME, diag_1.DiagAPI.instance()); + this._proxyTracerProvider = new ProxyTracerProvider_1.ProxyTracerProvider(); + } + }; + exports2.TraceAPI = TraceAPI; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace-api.js +var require_trace_api = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/trace-api.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.trace = void 0; + var trace_1 = require_trace(); + exports2.trace = trace_1.TraceAPI.getInstance(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/index.js +var require_src = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api@1.7.0/node_modules/@opentelemetry/api/build/src/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.trace = exports2.propagation = exports2.metrics = exports2.diag = exports2.context = exports2.INVALID_SPAN_CONTEXT = exports2.INVALID_TRACEID = exports2.INVALID_SPANID = exports2.isValidSpanId = exports2.isValidTraceId = exports2.isSpanContextValid = exports2.createTraceState = exports2.TraceFlags = exports2.SpanStatusCode = exports2.SpanKind = exports2.SamplingDecision = exports2.ProxyTracerProvider = exports2.ProxyTracer = exports2.defaultTextMapSetter = exports2.defaultTextMapGetter = exports2.ValueType = exports2.createNoopMeter = exports2.DiagLogLevel = exports2.DiagConsoleLogger = exports2.ROOT_CONTEXT = exports2.createContextKey = exports2.baggageEntryMetadataFromString = void 0; + var utils_1 = require_utils2(); + Object.defineProperty(exports2, "baggageEntryMetadataFromString", { enumerable: true, get: function() { + return utils_1.baggageEntryMetadataFromString; + } }); + var context_1 = require_context(); + Object.defineProperty(exports2, "createContextKey", { enumerable: true, get: function() { + return context_1.createContextKey; + } }); + Object.defineProperty(exports2, "ROOT_CONTEXT", { enumerable: true, get: function() { + return context_1.ROOT_CONTEXT; + } }); + var consoleLogger_1 = require_consoleLogger(); + Object.defineProperty(exports2, "DiagConsoleLogger", { enumerable: true, get: function() { + return consoleLogger_1.DiagConsoleLogger; + } }); + var types_1 = require_types(); + Object.defineProperty(exports2, "DiagLogLevel", { enumerable: true, get: function() { + return types_1.DiagLogLevel; + } }); + var NoopMeter_1 = require_NoopMeter(); + Object.defineProperty(exports2, "createNoopMeter", { enumerable: true, get: function() { + return NoopMeter_1.createNoopMeter; + } }); + var Metric_1 = require_Metric(); + Object.defineProperty(exports2, "ValueType", { enumerable: true, get: function() { + return Metric_1.ValueType; + } }); + var TextMapPropagator_1 = require_TextMapPropagator(); + Object.defineProperty(exports2, "defaultTextMapGetter", { enumerable: true, get: function() { + return TextMapPropagator_1.defaultTextMapGetter; + } }); + Object.defineProperty(exports2, "defaultTextMapSetter", { enumerable: true, get: function() { + return TextMapPropagator_1.defaultTextMapSetter; + } }); + var ProxyTracer_1 = require_ProxyTracer(); + Object.defineProperty(exports2, "ProxyTracer", { enumerable: true, get: function() { + return ProxyTracer_1.ProxyTracer; + } }); + var ProxyTracerProvider_1 = require_ProxyTracerProvider(); + Object.defineProperty(exports2, "ProxyTracerProvider", { enumerable: true, get: function() { + return ProxyTracerProvider_1.ProxyTracerProvider; + } }); + var SamplingResult_1 = require_SamplingResult(); + Object.defineProperty(exports2, "SamplingDecision", { enumerable: true, get: function() { + return SamplingResult_1.SamplingDecision; + } }); + var span_kind_1 = require_span_kind(); + Object.defineProperty(exports2, "SpanKind", { enumerable: true, get: function() { + return span_kind_1.SpanKind; + } }); + var status_1 = require_status(); + Object.defineProperty(exports2, "SpanStatusCode", { enumerable: true, get: function() { + return status_1.SpanStatusCode; + } }); + var trace_flags_1 = require_trace_flags(); + Object.defineProperty(exports2, "TraceFlags", { enumerable: true, get: function() { + return trace_flags_1.TraceFlags; + } }); + var utils_2 = require_utils3(); + Object.defineProperty(exports2, "createTraceState", { enumerable: true, get: function() { + return utils_2.createTraceState; + } }); + var spancontext_utils_1 = require_spancontext_utils(); + Object.defineProperty(exports2, "isSpanContextValid", { enumerable: true, get: function() { + return spancontext_utils_1.isSpanContextValid; + } }); + Object.defineProperty(exports2, "isValidTraceId", { enumerable: true, get: function() { + return spancontext_utils_1.isValidTraceId; + } }); + Object.defineProperty(exports2, "isValidSpanId", { enumerable: true, get: function() { + return spancontext_utils_1.isValidSpanId; + } }); + var invalid_span_constants_1 = require_invalid_span_constants(); + Object.defineProperty(exports2, "INVALID_SPANID", { enumerable: true, get: function() { + return invalid_span_constants_1.INVALID_SPANID; + } }); + Object.defineProperty(exports2, "INVALID_TRACEID", { enumerable: true, get: function() { + return invalid_span_constants_1.INVALID_TRACEID; + } }); + Object.defineProperty(exports2, "INVALID_SPAN_CONTEXT", { enumerable: true, get: function() { + return invalid_span_constants_1.INVALID_SPAN_CONTEXT; + } }); + var context_api_1 = require_context_api(); + Object.defineProperty(exports2, "context", { enumerable: true, get: function() { + return context_api_1.context; + } }); + var diag_api_1 = require_diag_api(); + Object.defineProperty(exports2, "diag", { enumerable: true, get: function() { + return diag_api_1.diag; + } }); + var metrics_api_1 = require_metrics_api(); + Object.defineProperty(exports2, "metrics", { enumerable: true, get: function() { + return metrics_api_1.metrics; + } }); + var propagation_api_1 = require_propagation_api(); + Object.defineProperty(exports2, "propagation", { enumerable: true, get: function() { + return propagation_api_1.propagation; + } }); + var trace_api_1 = require_trace_api(); + Object.defineProperty(exports2, "trace", { enumerable: true, get: function() { + return trace_api_1.trace; + } }); + exports2.default = { + context: context_api_1.context, + diag: diag_api_1.diag, + metrics: metrics_api_1.metrics, + propagation: propagation_api_1.propagation, + trace: trace_api_1.trace + }; + } +}); + +// ../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/lodash.js +var require_lodash = __commonJS({ + "../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/lodash.js"(exports2, module2) { + (function() { + var undefined2; + var VERSION4 = "4.17.21"; + var LARGE_ARRAY_SIZE = 200; + var CORE_ERROR_TEXT = "Unsupported core-js use. Try https://npms.io/search?q=ponyfill.", FUNC_ERROR_TEXT = "Expected a function", INVALID_TEMPL_VAR_ERROR_TEXT = "Invalid `variable` option passed into `_.template`"; + var HASH_UNDEFINED = "__lodash_hash_undefined__"; + var MAX_MEMOIZE_SIZE = 500; + var PLACEHOLDER = "__lodash_placeholder__"; + var CLONE_DEEP_FLAG = 1, CLONE_FLAT_FLAG = 2, CLONE_SYMBOLS_FLAG = 4; + var COMPARE_PARTIAL_FLAG = 1, COMPARE_UNORDERED_FLAG = 2; + var WRAP_BIND_FLAG = 1, WRAP_BIND_KEY_FLAG = 2, WRAP_CURRY_BOUND_FLAG = 4, WRAP_CURRY_FLAG = 8, WRAP_CURRY_RIGHT_FLAG = 16, WRAP_PARTIAL_FLAG = 32, WRAP_PARTIAL_RIGHT_FLAG = 64, WRAP_ARY_FLAG = 128, WRAP_REARG_FLAG = 256, WRAP_FLIP_FLAG = 512; + var DEFAULT_TRUNC_LENGTH = 30, DEFAULT_TRUNC_OMISSION = "..."; + var HOT_COUNT = 800, HOT_SPAN = 16; + var LAZY_FILTER_FLAG = 1, LAZY_MAP_FLAG = 2, LAZY_WHILE_FLAG = 3; + var INFINITY = 1 / 0, MAX_SAFE_INTEGER = 9007199254740991, MAX_INTEGER = 17976931348623157e292, NAN = 0 / 0; + var MAX_ARRAY_LENGTH = 4294967295, MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1, HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1; + var wrapFlags = [ + ["ary", WRAP_ARY_FLAG], + ["bind", WRAP_BIND_FLAG], + ["bindKey", WRAP_BIND_KEY_FLAG], + ["curry", WRAP_CURRY_FLAG], + ["curryRight", WRAP_CURRY_RIGHT_FLAG], + ["flip", WRAP_FLIP_FLAG], + ["partial", WRAP_PARTIAL_FLAG], + ["partialRight", WRAP_PARTIAL_RIGHT_FLAG], + ["rearg", WRAP_REARG_FLAG] + ]; + var argsTag = "[object Arguments]", arrayTag = "[object Array]", asyncTag = "[object AsyncFunction]", boolTag = "[object Boolean]", dateTag = "[object Date]", domExcTag = "[object DOMException]", errorTag = "[object Error]", funcTag = "[object Function]", genTag = "[object GeneratorFunction]", mapTag = "[object Map]", numberTag = "[object Number]", nullTag = "[object Null]", objectTag = "[object Object]", promiseTag = "[object Promise]", proxyTag = "[object Proxy]", regexpTag = "[object RegExp]", setTag = "[object Set]", stringTag = "[object String]", symbolTag = "[object Symbol]", undefinedTag = "[object Undefined]", weakMapTag = "[object WeakMap]", weakSetTag = "[object WeakSet]"; + var arrayBufferTag = "[object ArrayBuffer]", dataViewTag = "[object DataView]", float32Tag = "[object Float32Array]", float64Tag = "[object Float64Array]", int8Tag = "[object Int8Array]", int16Tag = "[object Int16Array]", int32Tag = "[object Int32Array]", uint8Tag = "[object Uint8Array]", uint8ClampedTag = "[object Uint8ClampedArray]", uint16Tag = "[object Uint16Array]", uint32Tag = "[object Uint32Array]"; + var reEmptyStringLeading = /\b__p \+= '';/g, reEmptyStringMiddle = /\b(__p \+=) '' \+/g, reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g; + var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g, reUnescapedHtml = /[&<>"']/g, reHasEscapedHtml = RegExp(reEscapedHtml.source), reHasUnescapedHtml = RegExp(reUnescapedHtml.source); + var reEscape = /<%-([\s\S]+?)%>/g, reEvaluate = /<%([\s\S]+?)%>/g, reInterpolate = /<%=([\s\S]+?)%>/g; + var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, reIsPlainProp = /^\w*$/, rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + var reRegExpChar = /[\\^$.*+?()[\]{}|]/g, reHasRegExpChar = RegExp(reRegExpChar.source); + var reTrimStart = /^\s+/; + var reWhitespace = /\s/; + var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/, reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, reSplitDetails = /,? & /; + var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; + var reForbiddenIdentifierChars = /[()=,{}\[\]\/\s]/; + var reEscapeChar = /\\(\\)?/g; + var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g; + var reFlags = /\w*$/; + var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + var reIsBinary = /^0b[01]+$/i; + var reIsHostCtor = /^\[object .+?Constructor\]$/; + var reIsOctal = /^0o[0-7]+$/i; + var reIsUint = /^(?:0|[1-9]\d*)$/; + var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; + var reNoMatch = /($^)/; + var reUnescapedString = /['\n\r\u2028\u2029\\]/g; + var rsAstralRange = "\\ud800-\\udfff", rsComboMarksRange = "\\u0300-\\u036f", reComboHalfMarksRange = "\\ufe20-\\ufe2f", rsComboSymbolsRange = "\\u20d0-\\u20ff", rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, rsDingbatRange = "\\u2700-\\u27bf", rsLowerRange = "a-z\\xdf-\\xf6\\xf8-\\xff", rsMathOpRange = "\\xac\\xb1\\xd7\\xf7", rsNonCharRange = "\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf", rsPunctuationRange = "\\u2000-\\u206f", rsSpaceRange = " \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000", rsUpperRange = "A-Z\\xc0-\\xd6\\xd8-\\xde", rsVarRange = "\\ufe0e\\ufe0f", rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; + var rsApos = "['\u2019]", rsAstral = "[" + rsAstralRange + "]", rsBreak = "[" + rsBreakRange + "]", rsCombo = "[" + rsComboRange + "]", rsDigits = "\\d+", rsDingbat = "[" + rsDingbatRange + "]", rsLower = "[" + rsLowerRange + "]", rsMisc = "[^" + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + "]", rsFitz = "\\ud83c[\\udffb-\\udfff]", rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")", rsNonAstral = "[^" + rsAstralRange + "]", rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}", rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]", rsUpper = "[" + rsUpperRange + "]", rsZWJ = "\\u200d"; + var rsMiscLower = "(?:" + rsLower + "|" + rsMisc + ")", rsMiscUpper = "(?:" + rsUpper + "|" + rsMisc + ")", rsOptContrLower = "(?:" + rsApos + "(?:d|ll|m|re|s|t|ve))?", rsOptContrUpper = "(?:" + rsApos + "(?:D|LL|M|RE|S|T|VE))?", reOptMod = rsModifier + "?", rsOptVar = "[" + rsVarRange + "]?", rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*", rsOrdLower = "\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])", rsOrdUpper = "\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])", rsSeq = rsOptVar + reOptMod + rsOptJoin, rsEmoji = "(?:" + [rsDingbat, rsRegional, rsSurrPair].join("|") + ")" + rsSeq, rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")"; + var reApos = RegExp(rsApos, "g"); + var reComboMark = RegExp(rsCombo, "g"); + var reUnicode = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g"); + var reUnicodeWord = RegExp([ + rsUpper + "?" + rsLower + "+" + rsOptContrLower + "(?=" + [rsBreak, rsUpper, "$"].join("|") + ")", + rsMiscUpper + "+" + rsOptContrUpper + "(?=" + [rsBreak, rsUpper + rsMiscLower, "$"].join("|") + ")", + rsUpper + "?" + rsMiscLower + "+" + rsOptContrLower, + rsUpper + "+" + rsOptContrUpper, + rsOrdUpper, + rsOrdLower, + rsDigits, + rsEmoji + ].join("|"), "g"); + var reHasUnicode = RegExp("[" + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + "]"); + var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; + var contextProps = [ + "Array", + "Buffer", + "DataView", + "Date", + "Error", + "Float32Array", + "Float64Array", + "Function", + "Int8Array", + "Int16Array", + "Int32Array", + "Map", + "Math", + "Object", + "Promise", + "RegExp", + "Set", + "String", + "Symbol", + "TypeError", + "Uint8Array", + "Uint8ClampedArray", + "Uint16Array", + "Uint32Array", + "WeakMap", + "_", + "clearTimeout", + "isFinite", + "parseInt", + "setTimeout" + ]; + var templateCounter = -1; + var typedArrayTags = {}; + typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true; + typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false; + var cloneableTags = {}; + cloneableTags[argsTag] = cloneableTags[arrayTag] = cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = cloneableTags[boolTag] = cloneableTags[dateTag] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag] = cloneableTags[numberTag] = cloneableTags[objectTag] = cloneableTags[regexpTag] = cloneableTags[setTag] = cloneableTags[stringTag] = cloneableTags[symbolTag] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; + cloneableTags[errorTag] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false; + var deburredLetters = { + // Latin-1 Supplement block. + "\xC0": "A", + "\xC1": "A", + "\xC2": "A", + "\xC3": "A", + "\xC4": "A", + "\xC5": "A", + "\xE0": "a", + "\xE1": "a", + "\xE2": "a", + "\xE3": "a", + "\xE4": "a", + "\xE5": "a", + "\xC7": "C", + "\xE7": "c", + "\xD0": "D", + "\xF0": "d", + "\xC8": "E", + "\xC9": "E", + "\xCA": "E", + "\xCB": "E", + "\xE8": "e", + "\xE9": "e", + "\xEA": "e", + "\xEB": "e", + "\xCC": "I", + "\xCD": "I", + "\xCE": "I", + "\xCF": "I", + "\xEC": "i", + "\xED": "i", + "\xEE": "i", + "\xEF": "i", + "\xD1": "N", + "\xF1": "n", + "\xD2": "O", + "\xD3": "O", + "\xD4": "O", + "\xD5": "O", + "\xD6": "O", + "\xD8": "O", + "\xF2": "o", + "\xF3": "o", + "\xF4": "o", + "\xF5": "o", + "\xF6": "o", + "\xF8": "o", + "\xD9": "U", + "\xDA": "U", + "\xDB": "U", + "\xDC": "U", + "\xF9": "u", + "\xFA": "u", + "\xFB": "u", + "\xFC": "u", + "\xDD": "Y", + "\xFD": "y", + "\xFF": "y", + "\xC6": "Ae", + "\xE6": "ae", + "\xDE": "Th", + "\xFE": "th", + "\xDF": "ss", + // Latin Extended-A block. + "\u0100": "A", + "\u0102": "A", + "\u0104": "A", + "\u0101": "a", + "\u0103": "a", + "\u0105": "a", + "\u0106": "C", + "\u0108": "C", + "\u010A": "C", + "\u010C": "C", + "\u0107": "c", + "\u0109": "c", + "\u010B": "c", + "\u010D": "c", + "\u010E": "D", + "\u0110": "D", + "\u010F": "d", + "\u0111": "d", + "\u0112": "E", + "\u0114": "E", + "\u0116": "E", + "\u0118": "E", + "\u011A": "E", + "\u0113": "e", + "\u0115": "e", + "\u0117": "e", + "\u0119": "e", + "\u011B": "e", + "\u011C": "G", + "\u011E": "G", + "\u0120": "G", + "\u0122": "G", + "\u011D": "g", + "\u011F": "g", + "\u0121": "g", + "\u0123": "g", + "\u0124": "H", + "\u0126": "H", + "\u0125": "h", + "\u0127": "h", + "\u0128": "I", + "\u012A": "I", + "\u012C": "I", + "\u012E": "I", + "\u0130": "I", + "\u0129": "i", + "\u012B": "i", + "\u012D": "i", + "\u012F": "i", + "\u0131": "i", + "\u0134": "J", + "\u0135": "j", + "\u0136": "K", + "\u0137": "k", + "\u0138": "k", + "\u0139": "L", + "\u013B": "L", + "\u013D": "L", + "\u013F": "L", + "\u0141": "L", + "\u013A": "l", + "\u013C": "l", + "\u013E": "l", + "\u0140": "l", + "\u0142": "l", + "\u0143": "N", + "\u0145": "N", + "\u0147": "N", + "\u014A": "N", + "\u0144": "n", + "\u0146": "n", + "\u0148": "n", + "\u014B": "n", + "\u014C": "O", + "\u014E": "O", + "\u0150": "O", + "\u014D": "o", + "\u014F": "o", + "\u0151": "o", + "\u0154": "R", + "\u0156": "R", + "\u0158": "R", + "\u0155": "r", + "\u0157": "r", + "\u0159": "r", + "\u015A": "S", + "\u015C": "S", + "\u015E": "S", + "\u0160": "S", + "\u015B": "s", + "\u015D": "s", + "\u015F": "s", + "\u0161": "s", + "\u0162": "T", + "\u0164": "T", + "\u0166": "T", + "\u0163": "t", + "\u0165": "t", + "\u0167": "t", + "\u0168": "U", + "\u016A": "U", + "\u016C": "U", + "\u016E": "U", + "\u0170": "U", + "\u0172": "U", + "\u0169": "u", + "\u016B": "u", + "\u016D": "u", + "\u016F": "u", + "\u0171": "u", + "\u0173": "u", + "\u0174": "W", + "\u0175": "w", + "\u0176": "Y", + "\u0177": "y", + "\u0178": "Y", + "\u0179": "Z", + "\u017B": "Z", + "\u017D": "Z", + "\u017A": "z", + "\u017C": "z", + "\u017E": "z", + "\u0132": "IJ", + "\u0133": "ij", + "\u0152": "Oe", + "\u0153": "oe", + "\u0149": "'n", + "\u017F": "s" + }; + var htmlEscapes = { + "&": "&", + "<": "<", + ">": ">", + '"': """, + "'": "'" + }; + var htmlUnescapes = { + "&": "&", + "<": "<", + ">": ">", + """: '"', + "'": "'" + }; + var stringEscapes = { + "\\": "\\", + "'": "'", + "\n": "n", + "\r": "r", + "\u2028": "u2028", + "\u2029": "u2029" + }; + var freeParseFloat = parseFloat, freeParseInt = parseInt; + var freeGlobal = typeof global == "object" && global && global.Object === Object && global; + var freeSelf = typeof self == "object" && self && self.Object === Object && self; + var root = freeGlobal || freeSelf || Function("return this")(); + var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; + var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; + var moduleExports2 = freeModule && freeModule.exports === freeExports; + var freeProcess = moduleExports2 && freeGlobal.process; + var nodeUtil = function() { + try { + var types2 = freeModule && freeModule.require && freeModule.require("util").types; + if (types2) { + return types2; + } + return freeProcess && freeProcess.binding && freeProcess.binding("util"); + } catch (e) { + } + }(); + var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer, nodeIsDate = nodeUtil && nodeUtil.isDate, nodeIsMap = nodeUtil && nodeUtil.isMap, nodeIsRegExp = nodeUtil && nodeUtil.isRegExp, nodeIsSet = nodeUtil && nodeUtil.isSet, nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; + function apply(func2, thisArg, args3) { + switch (args3.length) { + case 0: + return func2.call(thisArg); + case 1: + return func2.call(thisArg, args3[0]); + case 2: + return func2.call(thisArg, args3[0], args3[1]); + case 3: + return func2.call(thisArg, args3[0], args3[1], args3[2]); + } + return func2.apply(thisArg, args3); + } + function arrayAggregator(array, setter, iteratee, accumulator) { + var index = -1, length = array == null ? 0 : array.length; + while (++index < length) { + var value = array[index]; + setter(accumulator, value, iteratee(value), array); + } + return accumulator; + } + function arrayEach(array, iteratee) { + var index = -1, length = array == null ? 0 : array.length; + while (++index < length) { + if (iteratee(array[index], index, array) === false) { + break; + } + } + return array; + } + function arrayEachRight(array, iteratee) { + var length = array == null ? 0 : array.length; + while (length--) { + if (iteratee(array[length], length, array) === false) { + break; + } + } + return array; + } + function arrayEvery(array, predicate) { + var index = -1, length = array == null ? 0 : array.length; + while (++index < length) { + if (!predicate(array[index], index, array)) { + return false; + } + } + return true; + } + function arrayFilter(array, predicate) { + var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = []; + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result[resIndex++] = value; + } + } + return result; + } + function arrayIncludes(array, value) { + var length = array == null ? 0 : array.length; + return !!length && baseIndexOf(array, value, 0) > -1; + } + function arrayIncludesWith(array, value, comparator) { + var index = -1, length = array == null ? 0 : array.length; + while (++index < length) { + if (comparator(value, array[index])) { + return true; + } + } + return false; + } + function arrayMap(array, iteratee) { + var index = -1, length = array == null ? 0 : array.length, result = Array(length); + while (++index < length) { + result[index] = iteratee(array[index], index, array); + } + return result; + } + function arrayPush(array, values) { + var index = -1, length = values.length, offset = array.length; + while (++index < length) { + array[offset + index] = values[index]; + } + return array; + } + function arrayReduce(array, iteratee, accumulator, initAccum) { + var index = -1, length = array == null ? 0 : array.length; + if (initAccum && length) { + accumulator = array[++index]; + } + while (++index < length) { + accumulator = iteratee(accumulator, array[index], index, array); + } + return accumulator; + } + function arrayReduceRight(array, iteratee, accumulator, initAccum) { + var length = array == null ? 0 : array.length; + if (initAccum && length) { + accumulator = array[--length]; + } + while (length--) { + accumulator = iteratee(accumulator, array[length], length, array); + } + return accumulator; + } + function arraySome(array, predicate) { + var index = -1, length = array == null ? 0 : array.length; + while (++index < length) { + if (predicate(array[index], index, array)) { + return true; + } + } + return false; + } + var asciiSize = baseProperty("length"); + function asciiToArray(string) { + return string.split(""); + } + function asciiWords(string) { + return string.match(reAsciiWord) || []; + } + function baseFindKey(collection, predicate, eachFunc) { + var result; + eachFunc(collection, function(value, key, collection2) { + if (predicate(value, key, collection2)) { + result = key; + return false; + } + }); + return result; + } + function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, index = fromIndex + (fromRight ? 1 : -1); + while (fromRight ? index-- : ++index < length) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; + } + function baseIndexOf(array, value, fromIndex) { + return value === value ? strictIndexOf(array, value, fromIndex) : baseFindIndex(array, baseIsNaN, fromIndex); + } + function baseIndexOfWith(array, value, fromIndex, comparator) { + var index = fromIndex - 1, length = array.length; + while (++index < length) { + if (comparator(array[index], value)) { + return index; + } + } + return -1; + } + function baseIsNaN(value) { + return value !== value; + } + function baseMean(array, iteratee) { + var length = array == null ? 0 : array.length; + return length ? baseSum(array, iteratee) / length : NAN; + } + function baseProperty(key) { + return function(object) { + return object == null ? undefined2 : object[key]; + }; + } + function basePropertyOf(object) { + return function(key) { + return object == null ? undefined2 : object[key]; + }; + } + function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { + eachFunc(collection, function(value, index, collection2) { + accumulator = initAccum ? (initAccum = false, value) : iteratee(accumulator, value, index, collection2); + }); + return accumulator; + } + function baseSortBy(array, comparer) { + var length = array.length; + array.sort(comparer); + while (length--) { + array[length] = array[length].value; + } + return array; + } + function baseSum(array, iteratee) { + var result, index = -1, length = array.length; + while (++index < length) { + var current = iteratee(array[index]); + if (current !== undefined2) { + result = result === undefined2 ? current : result + current; + } + } + return result; + } + function baseTimes(n, iteratee) { + var index = -1, result = Array(n); + while (++index < n) { + result[index] = iteratee(index); + } + return result; + } + function baseToPairs(object, props) { + return arrayMap(props, function(key) { + return [key, object[key]]; + }); + } + function baseTrim(string) { + return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string; + } + function baseUnary(func2) { + return function(value) { + return func2(value); + }; + } + function baseValues(object, props) { + return arrayMap(props, function(key) { + return object[key]; + }); + } + function cacheHas(cache, key) { + return cache.has(key); + } + function charsStartIndex(strSymbols, chrSymbols) { + var index = -1, length = strSymbols.length; + while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) { + } + return index; + } + function charsEndIndex(strSymbols, chrSymbols) { + var index = strSymbols.length; + while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) { + } + return index; + } + function countHolders(array, placeholder) { + var length = array.length, result = 0; + while (length--) { + if (array[length] === placeholder) { + ++result; + } + } + return result; + } + var deburrLetter = basePropertyOf(deburredLetters); + var escapeHtmlChar = basePropertyOf(htmlEscapes); + function escapeStringChar(chr) { + return "\\" + stringEscapes[chr]; + } + function getValue2(object, key) { + return object == null ? undefined2 : object[key]; + } + function hasUnicode(string) { + return reHasUnicode.test(string); + } + function hasUnicodeWord(string) { + return reHasUnicodeWord.test(string); + } + function iteratorToArray(iterator) { + var data, result = []; + while (!(data = iterator.next()).done) { + result.push(data.value); + } + return result; + } + function mapToArray(map) { + var index = -1, result = Array(map.size); + map.forEach(function(value, key) { + result[++index] = [key, value]; + }); + return result; + } + function overArg(func2, transform) { + return function(arg) { + return func2(transform(arg)); + }; + } + function replaceHolders(array, placeholder) { + var index = -1, length = array.length, resIndex = 0, result = []; + while (++index < length) { + var value = array[index]; + if (value === placeholder || value === PLACEHOLDER) { + array[index] = PLACEHOLDER; + result[resIndex++] = index; + } + } + return result; + } + function setToArray(set) { + var index = -1, result = Array(set.size); + set.forEach(function(value) { + result[++index] = value; + }); + return result; + } + function setToPairs(set) { + var index = -1, result = Array(set.size); + set.forEach(function(value) { + result[++index] = [value, value]; + }); + return result; + } + function strictIndexOf(array, value, fromIndex) { + var index = fromIndex - 1, length = array.length; + while (++index < length) { + if (array[index] === value) { + return index; + } + } + return -1; + } + function strictLastIndexOf(array, value, fromIndex) { + var index = fromIndex + 1; + while (index--) { + if (array[index] === value) { + return index; + } + } + return index; + } + function stringSize(string) { + return hasUnicode(string) ? unicodeSize(string) : asciiSize(string); + } + function stringToArray(string) { + return hasUnicode(string) ? unicodeToArray(string) : asciiToArray(string); + } + function trimmedEndIndex(string) { + var index = string.length; + while (index-- && reWhitespace.test(string.charAt(index))) { + } + return index; + } + var unescapeHtmlChar = basePropertyOf(htmlUnescapes); + function unicodeSize(string) { + var result = reUnicode.lastIndex = 0; + while (reUnicode.test(string)) { + ++result; + } + return result; + } + function unicodeToArray(string) { + return string.match(reUnicode) || []; + } + function unicodeWords(string) { + return string.match(reUnicodeWord) || []; + } + var runInContext = function runInContext2(context2) { + context2 = context2 == null ? root : _.defaults(root.Object(), context2, _.pick(root, contextProps)); + var Array2 = context2.Array, Date2 = context2.Date, Error2 = context2.Error, Function2 = context2.Function, Math2 = context2.Math, Object2 = context2.Object, RegExp2 = context2.RegExp, String2 = context2.String, TypeError2 = context2.TypeError; + var arrayProto = Array2.prototype, funcProto = Function2.prototype, objectProto = Object2.prototype; + var coreJsData = context2["__core-js_shared__"]; + var funcToString = funcProto.toString; + var hasOwnProperty2 = objectProto.hasOwnProperty; + var idCounter = 0; + var maskSrcKey = function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); + return uid ? "Symbol(src)_1." + uid : ""; + }(); + var nativeObjectToString = objectProto.toString; + var objectCtorString = funcToString.call(Object2); + var oldDash = root._; + var reIsNative = RegExp2( + "^" + funcToString.call(hasOwnProperty2).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" + ); + var Buffer2 = moduleExports2 ? context2.Buffer : undefined2, Symbol2 = context2.Symbol, Uint8Array2 = context2.Uint8Array, allocUnsafe = Buffer2 ? Buffer2.allocUnsafe : undefined2, getPrototype = overArg(Object2.getPrototypeOf, Object2), objectCreate = Object2.create, propertyIsEnumerable = objectProto.propertyIsEnumerable, splice = arrayProto.splice, spreadableSymbol = Symbol2 ? Symbol2.isConcatSpreadable : undefined2, symIterator = Symbol2 ? Symbol2.iterator : undefined2, symToStringTag = Symbol2 ? Symbol2.toStringTag : undefined2; + var defineProperty = function() { + try { + var func2 = getNative(Object2, "defineProperty"); + func2({}, "", {}); + return func2; + } catch (e) { + } + }(); + var ctxClearTimeout = context2.clearTimeout !== root.clearTimeout && context2.clearTimeout, ctxNow = Date2 && Date2.now !== root.Date.now && Date2.now, ctxSetTimeout = context2.setTimeout !== root.setTimeout && context2.setTimeout; + var nativeCeil = Math2.ceil, nativeFloor = Math2.floor, nativeGetSymbols = Object2.getOwnPropertySymbols, nativeIsBuffer = Buffer2 ? Buffer2.isBuffer : undefined2, nativeIsFinite = context2.isFinite, nativeJoin = arrayProto.join, nativeKeys = overArg(Object2.keys, Object2), nativeMax = Math2.max, nativeMin = Math2.min, nativeNow = Date2.now, nativeParseInt = context2.parseInt, nativeRandom = Math2.random, nativeReverse = arrayProto.reverse; + var DataView2 = getNative(context2, "DataView"), Map2 = getNative(context2, "Map"), Promise2 = getNative(context2, "Promise"), Set2 = getNative(context2, "Set"), WeakMap2 = getNative(context2, "WeakMap"), nativeCreate = getNative(Object2, "create"); + var metaMap = WeakMap2 && new WeakMap2(); + var realNames = {}; + var dataViewCtorString = toSource(DataView2), mapCtorString = toSource(Map2), promiseCtorString = toSource(Promise2), setCtorString = toSource(Set2), weakMapCtorString = toSource(WeakMap2); + var symbolProto = Symbol2 ? Symbol2.prototype : undefined2, symbolValueOf = symbolProto ? symbolProto.valueOf : undefined2, symbolToString = symbolProto ? symbolProto.toString : undefined2; + function lodash(value) { + if (isObjectLike(value) && !isArray2(value) && !(value instanceof LazyWrapper)) { + if (value instanceof LodashWrapper) { + return value; + } + if (hasOwnProperty2.call(value, "__wrapped__")) { + return wrapperClone(value); + } + } + return new LodashWrapper(value); + } + var baseCreate = function() { + function object() { + } + return function(proto) { + if (!isObject3(proto)) { + return {}; + } + if (objectCreate) { + return objectCreate(proto); + } + object.prototype = proto; + var result2 = new object(); + object.prototype = undefined2; + return result2; + }; + }(); + function baseLodash() { + } + function LodashWrapper(value, chainAll) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__chain__ = !!chainAll; + this.__index__ = 0; + this.__values__ = undefined2; + } + lodash.templateSettings = { + /** + * Used to detect `data` property values to be HTML-escaped. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + "escape": reEscape, + /** + * Used to detect code to be evaluated. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + "evaluate": reEvaluate, + /** + * Used to detect `data` property values to inject. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + "interpolate": reInterpolate, + /** + * Used to reference the data object in the template text. + * + * @memberOf _.templateSettings + * @type {string} + */ + "variable": "", + /** + * Used to import variables into the compiled template. + * + * @memberOf _.templateSettings + * @type {Object} + */ + "imports": { + /** + * A reference to the `lodash` function. + * + * @memberOf _.templateSettings.imports + * @type {Function} + */ + "_": lodash + } + }; + lodash.prototype = baseLodash.prototype; + lodash.prototype.constructor = lodash; + LodashWrapper.prototype = baseCreate(baseLodash.prototype); + LodashWrapper.prototype.constructor = LodashWrapper; + function LazyWrapper(value) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__dir__ = 1; + this.__filtered__ = false; + this.__iteratees__ = []; + this.__takeCount__ = MAX_ARRAY_LENGTH; + this.__views__ = []; + } + function lazyClone() { + var result2 = new LazyWrapper(this.__wrapped__); + result2.__actions__ = copyArray(this.__actions__); + result2.__dir__ = this.__dir__; + result2.__filtered__ = this.__filtered__; + result2.__iteratees__ = copyArray(this.__iteratees__); + result2.__takeCount__ = this.__takeCount__; + result2.__views__ = copyArray(this.__views__); + return result2; + } + function lazyReverse() { + if (this.__filtered__) { + var result2 = new LazyWrapper(this); + result2.__dir__ = -1; + result2.__filtered__ = true; + } else { + result2 = this.clone(); + result2.__dir__ *= -1; + } + return result2; + } + function lazyValue() { + var array = this.__wrapped__.value(), dir = this.__dir__, isArr = isArray2(array), isRight = dir < 0, arrLength = isArr ? array.length : 0, view = getView(0, arrLength, this.__views__), start4 = view.start, end = view.end, length = end - start4, index = isRight ? end : start4 - 1, iteratees = this.__iteratees__, iterLength = iteratees.length, resIndex = 0, takeCount = nativeMin(length, this.__takeCount__); + if (!isArr || !isRight && arrLength == length && takeCount == length) { + return baseWrapperValue(array, this.__actions__); + } + var result2 = []; + outer: + while (length-- && resIndex < takeCount) { + index += dir; + var iterIndex = -1, value = array[index]; + while (++iterIndex < iterLength) { + var data = iteratees[iterIndex], iteratee2 = data.iteratee, type2 = data.type, computed = iteratee2(value); + if (type2 == LAZY_MAP_FLAG) { + value = computed; + } else if (!computed) { + if (type2 == LAZY_FILTER_FLAG) { + continue outer; + } else { + break outer; + } + } + } + result2[resIndex++] = value; + } + return result2; + } + LazyWrapper.prototype = baseCreate(baseLodash.prototype); + LazyWrapper.prototype.constructor = LazyWrapper; + function Hash(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + function hashClear() { + this.__data__ = nativeCreate ? nativeCreate(null) : {}; + this.size = 0; + } + function hashDelete(key) { + var result2 = this.has(key) && delete this.__data__[key]; + this.size -= result2 ? 1 : 0; + return result2; + } + function hashGet(key) { + var data = this.__data__; + if (nativeCreate) { + var result2 = data[key]; + return result2 === HASH_UNDEFINED ? undefined2 : result2; + } + return hasOwnProperty2.call(data, key) ? data[key] : undefined2; + } + function hashHas(key) { + var data = this.__data__; + return nativeCreate ? data[key] !== undefined2 : hasOwnProperty2.call(data, key); + } + function hashSet(key, value) { + var data = this.__data__; + this.size += this.has(key) ? 0 : 1; + data[key] = nativeCreate && value === undefined2 ? HASH_UNDEFINED : value; + return this; + } + Hash.prototype.clear = hashClear; + Hash.prototype["delete"] = hashDelete; + Hash.prototype.get = hashGet; + Hash.prototype.has = hashHas; + Hash.prototype.set = hashSet; + function ListCache(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + function listCacheClear() { + this.__data__ = []; + this.size = 0; + } + function listCacheDelete(key) { + var data = this.__data__, index = assocIndexOf(data, key); + if (index < 0) { + return false; + } + var lastIndex = data.length - 1; + if (index == lastIndex) { + data.pop(); + } else { + splice.call(data, index, 1); + } + --this.size; + return true; + } + function listCacheGet(key) { + var data = this.__data__, index = assocIndexOf(data, key); + return index < 0 ? undefined2 : data[index][1]; + } + function listCacheHas(key) { + return assocIndexOf(this.__data__, key) > -1; + } + function listCacheSet(key, value) { + var data = this.__data__, index = assocIndexOf(data, key); + if (index < 0) { + ++this.size; + data.push([key, value]); + } else { + data[index][1] = value; + } + return this; + } + ListCache.prototype.clear = listCacheClear; + ListCache.prototype["delete"] = listCacheDelete; + ListCache.prototype.get = listCacheGet; + ListCache.prototype.has = listCacheHas; + ListCache.prototype.set = listCacheSet; + function MapCache(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + function mapCacheClear() { + this.size = 0; + this.__data__ = { + "hash": new Hash(), + "map": new (Map2 || ListCache)(), + "string": new Hash() + }; + } + function mapCacheDelete(key) { + var result2 = getMapData(this, key)["delete"](key); + this.size -= result2 ? 1 : 0; + return result2; + } + function mapCacheGet(key) { + return getMapData(this, key).get(key); + } + function mapCacheHas(key) { + return getMapData(this, key).has(key); + } + function mapCacheSet(key, value) { + var data = getMapData(this, key), size2 = data.size; + data.set(key, value); + this.size += data.size == size2 ? 0 : 1; + return this; + } + MapCache.prototype.clear = mapCacheClear; + MapCache.prototype["delete"] = mapCacheDelete; + MapCache.prototype.get = mapCacheGet; + MapCache.prototype.has = mapCacheHas; + MapCache.prototype.set = mapCacheSet; + function SetCache(values2) { + var index = -1, length = values2 == null ? 0 : values2.length; + this.__data__ = new MapCache(); + while (++index < length) { + this.add(values2[index]); + } + } + function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED); + return this; + } + function setCacheHas(value) { + return this.__data__.has(value); + } + SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; + SetCache.prototype.has = setCacheHas; + function Stack2(entries) { + var data = this.__data__ = new ListCache(entries); + this.size = data.size; + } + function stackClear() { + this.__data__ = new ListCache(); + this.size = 0; + } + function stackDelete(key) { + var data = this.__data__, result2 = data["delete"](key); + this.size = data.size; + return result2; + } + function stackGet(key) { + return this.__data__.get(key); + } + function stackHas(key) { + return this.__data__.has(key); + } + function stackSet(key, value) { + var data = this.__data__; + if (data instanceof ListCache) { + var pairs = data.__data__; + if (!Map2 || pairs.length < LARGE_ARRAY_SIZE - 1) { + pairs.push([key, value]); + this.size = ++data.size; + return this; + } + data = this.__data__ = new MapCache(pairs); + } + data.set(key, value); + this.size = data.size; + return this; + } + Stack2.prototype.clear = stackClear; + Stack2.prototype["delete"] = stackDelete; + Stack2.prototype.get = stackGet; + Stack2.prototype.has = stackHas; + Stack2.prototype.set = stackSet; + function arrayLikeKeys(value, inherited) { + var isArr = isArray2(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer2(value), isType = !isArr && !isArg && !isBuff && isTypedArray2(value), skipIndexes = isArr || isArg || isBuff || isType, result2 = skipIndexes ? baseTimes(value.length, String2) : [], length = result2.length; + for (var key in value) { + if ((inherited || hasOwnProperty2.call(value, key)) && !(skipIndexes && // Safari 9 has enumerable `arguments.length` in strict mode. + (key == "length" || // Node.js 0.10 has enumerable non-index properties on buffers. + isBuff && (key == "offset" || key == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays. + isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || // Skip index properties. + isIndex(key, length)))) { + result2.push(key); + } + } + return result2; + } + function arraySample(array) { + var length = array.length; + return length ? array[baseRandom(0, length - 1)] : undefined2; + } + function arraySampleSize(array, n) { + return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length)); + } + function arrayShuffle(array) { + return shuffleSelf(copyArray(array)); + } + function assignMergeValue(object, key, value) { + if (value !== undefined2 && !eq(object[key], value) || value === undefined2 && !(key in object)) { + baseAssignValue(object, key, value); + } + } + function assignValue(object, key, value) { + var objValue = object[key]; + if (!(hasOwnProperty2.call(object, key) && eq(objValue, value)) || value === undefined2 && !(key in object)) { + baseAssignValue(object, key, value); + } + } + function assocIndexOf(array, key) { + var length = array.length; + while (length--) { + if (eq(array[length][0], key)) { + return length; + } + } + return -1; + } + function baseAggregator(collection, setter, iteratee2, accumulator) { + baseEach(collection, function(value, key, collection2) { + setter(accumulator, value, iteratee2(value), collection2); + }); + return accumulator; + } + function baseAssign(object, source2) { + return object && copyObject(source2, keys(source2), object); + } + function baseAssignIn(object, source2) { + return object && copyObject(source2, keysIn(source2), object); + } + function baseAssignValue(object, key, value) { + if (key == "__proto__" && defineProperty) { + defineProperty(object, key, { + "configurable": true, + "enumerable": true, + "value": value, + "writable": true + }); + } else { + object[key] = value; + } + } + function baseAt(object, paths) { + var index = -1, length = paths.length, result2 = Array2(length), skip = object == null; + while (++index < length) { + result2[index] = skip ? undefined2 : get(object, paths[index]); + } + return result2; + } + function baseClamp(number, lower, upper) { + if (number === number) { + if (upper !== undefined2) { + number = number <= upper ? number : upper; + } + if (lower !== undefined2) { + number = number >= lower ? number : lower; + } + } + return number; + } + function baseClone(value, bitmask, customizer, key, object, stack) { + var result2, isDeep = bitmask & CLONE_DEEP_FLAG, isFlat = bitmask & CLONE_FLAT_FLAG, isFull = bitmask & CLONE_SYMBOLS_FLAG; + if (customizer) { + result2 = object ? customizer(value, key, object, stack) : customizer(value); + } + if (result2 !== undefined2) { + return result2; + } + if (!isObject3(value)) { + return value; + } + var isArr = isArray2(value); + if (isArr) { + result2 = initCloneArray(value); + if (!isDeep) { + return copyArray(value, result2); + } + } else { + var tag = getTag(value), isFunc = tag == funcTag || tag == genTag; + if (isBuffer2(value)) { + return cloneBuffer(value, isDeep); + } + if (tag == objectTag || tag == argsTag || isFunc && !object) { + result2 = isFlat || isFunc ? {} : initCloneObject(value); + if (!isDeep) { + return isFlat ? copySymbolsIn(value, baseAssignIn(result2, value)) : copySymbols(value, baseAssign(result2, value)); + } + } else { + if (!cloneableTags[tag]) { + return object ? value : {}; + } + result2 = initCloneByTag(value, tag, isDeep); + } + } + stack || (stack = new Stack2()); + var stacked = stack.get(value); + if (stacked) { + return stacked; + } + stack.set(value, result2); + if (isSet(value)) { + value.forEach(function(subValue) { + result2.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); + }); + } else if (isMap(value)) { + value.forEach(function(subValue, key2) { + result2.set(key2, baseClone(subValue, bitmask, customizer, key2, value, stack)); + }); + } + var keysFunc = isFull ? isFlat ? getAllKeysIn : getAllKeys : isFlat ? keysIn : keys; + var props = isArr ? undefined2 : keysFunc(value); + arrayEach(props || value, function(subValue, key2) { + if (props) { + key2 = subValue; + subValue = value[key2]; + } + assignValue(result2, key2, baseClone(subValue, bitmask, customizer, key2, value, stack)); + }); + return result2; + } + function baseConforms(source2) { + var props = keys(source2); + return function(object) { + return baseConformsTo(object, source2, props); + }; + } + function baseConformsTo(object, source2, props) { + var length = props.length; + if (object == null) { + return !length; + } + object = Object2(object); + while (length--) { + var key = props[length], predicate = source2[key], value = object[key]; + if (value === undefined2 && !(key in object) || !predicate(value)) { + return false; + } + } + return true; + } + function baseDelay(func2, wait, args3) { + if (typeof func2 != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + return setTimeout2(function() { + func2.apply(undefined2, args3); + }, wait); + } + function baseDifference(array, values2, iteratee2, comparator) { + var index = -1, includes2 = arrayIncludes, isCommon = true, length = array.length, result2 = [], valuesLength = values2.length; + if (!length) { + return result2; + } + if (iteratee2) { + values2 = arrayMap(values2, baseUnary(iteratee2)); + } + if (comparator) { + includes2 = arrayIncludesWith; + isCommon = false; + } else if (values2.length >= LARGE_ARRAY_SIZE) { + includes2 = cacheHas; + isCommon = false; + values2 = new SetCache(values2); + } + outer: + while (++index < length) { + var value = array[index], computed = iteratee2 == null ? value : iteratee2(value); + value = comparator || value !== 0 ? value : 0; + if (isCommon && computed === computed) { + var valuesIndex = valuesLength; + while (valuesIndex--) { + if (values2[valuesIndex] === computed) { + continue outer; + } + } + result2.push(value); + } else if (!includes2(values2, computed, comparator)) { + result2.push(value); + } + } + return result2; + } + var baseEach = createBaseEach(baseForOwn); + var baseEachRight = createBaseEach(baseForOwnRight, true); + function baseEvery(collection, predicate) { + var result2 = true; + baseEach(collection, function(value, index, collection2) { + result2 = !!predicate(value, index, collection2); + return result2; + }); + return result2; + } + function baseExtremum(array, iteratee2, comparator) { + var index = -1, length = array.length; + while (++index < length) { + var value = array[index], current = iteratee2(value); + if (current != null && (computed === undefined2 ? current === current && !isSymbol(current) : comparator(current, computed))) { + var computed = current, result2 = value; + } + } + return result2; + } + function baseFill(array, value, start4, end) { + var length = array.length; + start4 = toInteger(start4); + if (start4 < 0) { + start4 = -start4 > length ? 0 : length + start4; + } + end = end === undefined2 || end > length ? length : toInteger(end); + if (end < 0) { + end += length; + } + end = start4 > end ? 0 : toLength(end); + while (start4 < end) { + array[start4++] = value; + } + return array; + } + function baseFilter(collection, predicate) { + var result2 = []; + baseEach(collection, function(value, index, collection2) { + if (predicate(value, index, collection2)) { + result2.push(value); + } + }); + return result2; + } + function baseFlatten(array, depth, predicate, isStrict, result2) { + var index = -1, length = array.length; + predicate || (predicate = isFlattenable); + result2 || (result2 = []); + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + baseFlatten(value, depth - 1, predicate, isStrict, result2); + } else { + arrayPush(result2, value); + } + } else if (!isStrict) { + result2[result2.length] = value; + } + } + return result2; + } + var baseFor = createBaseFor(); + var baseForRight = createBaseFor(true); + function baseForOwn(object, iteratee2) { + return object && baseFor(object, iteratee2, keys); + } + function baseForOwnRight(object, iteratee2) { + return object && baseForRight(object, iteratee2, keys); + } + function baseFunctions(object, props) { + return arrayFilter(props, function(key) { + return isFunction2(object[key]); + }); + } + function baseGet(object, path30) { + path30 = castPath(path30, object); + var index = 0, length = path30.length; + while (object != null && index < length) { + object = object[toKey(path30[index++])]; + } + return index && index == length ? object : undefined2; + } + function baseGetAllKeys(object, keysFunc, symbolsFunc) { + var result2 = keysFunc(object); + return isArray2(object) ? result2 : arrayPush(result2, symbolsFunc(object)); + } + function baseGetTag(value) { + if (value == null) { + return value === undefined2 ? undefinedTag : nullTag; + } + return symToStringTag && symToStringTag in Object2(value) ? getRawTag(value) : objectToString(value); + } + function baseGt(value, other) { + return value > other; + } + function baseHas(object, key) { + return object != null && hasOwnProperty2.call(object, key); + } + function baseHasIn(object, key) { + return object != null && key in Object2(object); + } + function baseInRange(number, start4, end) { + return number >= nativeMin(start4, end) && number < nativeMax(start4, end); + } + function baseIntersection(arrays, iteratee2, comparator) { + var includes2 = comparator ? arrayIncludesWith : arrayIncludes, length = arrays[0].length, othLength = arrays.length, othIndex = othLength, caches = Array2(othLength), maxLength = Infinity, result2 = []; + while (othIndex--) { + var array = arrays[othIndex]; + if (othIndex && iteratee2) { + array = arrayMap(array, baseUnary(iteratee2)); + } + maxLength = nativeMin(array.length, maxLength); + caches[othIndex] = !comparator && (iteratee2 || length >= 120 && array.length >= 120) ? new SetCache(othIndex && array) : undefined2; + } + array = arrays[0]; + var index = -1, seen = caches[0]; + outer: + while (++index < length && result2.length < maxLength) { + var value = array[index], computed = iteratee2 ? iteratee2(value) : value; + value = comparator || value !== 0 ? value : 0; + if (!(seen ? cacheHas(seen, computed) : includes2(result2, computed, comparator))) { + othIndex = othLength; + while (--othIndex) { + var cache = caches[othIndex]; + if (!(cache ? cacheHas(cache, computed) : includes2(arrays[othIndex], computed, comparator))) { + continue outer; + } + } + if (seen) { + seen.push(computed); + } + result2.push(value); + } + } + return result2; + } + function baseInverter(object, setter, iteratee2, accumulator) { + baseForOwn(object, function(value, key, object2) { + setter(accumulator, iteratee2(value), key, object2); + }); + return accumulator; + } + function baseInvoke(object, path30, args3) { + path30 = castPath(path30, object); + object = parent(object, path30); + var func2 = object == null ? object : object[toKey(last(path30))]; + return func2 == null ? undefined2 : apply(func2, object, args3); + } + function baseIsArguments(value) { + return isObjectLike(value) && baseGetTag(value) == argsTag; + } + function baseIsArrayBuffer(value) { + return isObjectLike(value) && baseGetTag(value) == arrayBufferTag; + } + function baseIsDate(value) { + return isObjectLike(value) && baseGetTag(value) == dateTag; + } + function baseIsEqual(value, other, bitmask, customizer, stack) { + if (value === other) { + return true; + } + if (value == null || other == null || !isObjectLike(value) && !isObjectLike(other)) { + return value !== value && other !== other; + } + return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); + } + function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { + var objIsArr = isArray2(object), othIsArr = isArray2(other), objTag = objIsArr ? arrayTag : getTag(object), othTag = othIsArr ? arrayTag : getTag(other); + objTag = objTag == argsTag ? objectTag : objTag; + othTag = othTag == argsTag ? objectTag : othTag; + var objIsObj = objTag == objectTag, othIsObj = othTag == objectTag, isSameTag = objTag == othTag; + if (isSameTag && isBuffer2(object)) { + if (!isBuffer2(other)) { + return false; + } + objIsArr = true; + objIsObj = false; + } + if (isSameTag && !objIsObj) { + stack || (stack = new Stack2()); + return objIsArr || isTypedArray2(object) ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); + } + if (!(bitmask & COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && hasOwnProperty2.call(object, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty2.call(other, "__wrapped__"); + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, othUnwrapped = othIsWrapped ? other.value() : other; + stack || (stack = new Stack2()); + return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); + } + } + if (!isSameTag) { + return false; + } + stack || (stack = new Stack2()); + return equalObjects(object, other, bitmask, customizer, equalFunc, stack); + } + function baseIsMap(value) { + return isObjectLike(value) && getTag(value) == mapTag; + } + function baseIsMatch(object, source2, matchData, customizer) { + var index = matchData.length, length = index, noCustomizer = !customizer; + if (object == null) { + return !length; + } + object = Object2(object); + while (index--) { + var data = matchData[index]; + if (noCustomizer && data[2] ? data[1] !== object[data[0]] : !(data[0] in object)) { + return false; + } + } + while (++index < length) { + data = matchData[index]; + var key = data[0], objValue = object[key], srcValue = data[1]; + if (noCustomizer && data[2]) { + if (objValue === undefined2 && !(key in object)) { + return false; + } + } else { + var stack = new Stack2(); + if (customizer) { + var result2 = customizer(objValue, srcValue, key, object, source2, stack); + } + if (!(result2 === undefined2 ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) : result2)) { + return false; + } + } + } + return true; + } + function baseIsNative(value) { + if (!isObject3(value) || isMasked(value)) { + return false; + } + var pattern = isFunction2(value) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); + } + function baseIsRegExp(value) { + return isObjectLike(value) && baseGetTag(value) == regexpTag; + } + function baseIsSet(value) { + return isObjectLike(value) && getTag(value) == setTag; + } + function baseIsTypedArray(value) { + return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; + } + function baseIteratee(value) { + if (typeof value == "function") { + return value; + } + if (value == null) { + return identity2; + } + if (typeof value == "object") { + return isArray2(value) ? baseMatchesProperty(value[0], value[1]) : baseMatches(value); + } + return property(value); + } + function baseKeys(object) { + if (!isPrototype(object)) { + return nativeKeys(object); + } + var result2 = []; + for (var key in Object2(object)) { + if (hasOwnProperty2.call(object, key) && key != "constructor") { + result2.push(key); + } + } + return result2; + } + function baseKeysIn(object) { + if (!isObject3(object)) { + return nativeKeysIn(object); + } + var isProto = isPrototype(object), result2 = []; + for (var key in object) { + if (!(key == "constructor" && (isProto || !hasOwnProperty2.call(object, key)))) { + result2.push(key); + } + } + return result2; + } + function baseLt(value, other) { + return value < other; + } + function baseMap(collection, iteratee2) { + var index = -1, result2 = isArrayLike(collection) ? Array2(collection.length) : []; + baseEach(collection, function(value, key, collection2) { + result2[++index] = iteratee2(value, key, collection2); + }); + return result2; + } + function baseMatches(source2) { + var matchData = getMatchData(source2); + if (matchData.length == 1 && matchData[0][2]) { + return matchesStrictComparable(matchData[0][0], matchData[0][1]); + } + return function(object) { + return object === source2 || baseIsMatch(object, source2, matchData); + }; + } + function baseMatchesProperty(path30, srcValue) { + if (isKey(path30) && isStrictComparable(srcValue)) { + return matchesStrictComparable(toKey(path30), srcValue); + } + return function(object) { + var objValue = get(object, path30); + return objValue === undefined2 && objValue === srcValue ? hasIn(object, path30) : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); + }; + } + function baseMerge(object, source2, srcIndex, customizer, stack) { + if (object === source2) { + return; + } + baseFor(source2, function(srcValue, key) { + stack || (stack = new Stack2()); + if (isObject3(srcValue)) { + baseMergeDeep(object, source2, key, srcIndex, baseMerge, customizer, stack); + } else { + var newValue = customizer ? customizer(safeGet(object, key), srcValue, key + "", object, source2, stack) : undefined2; + if (newValue === undefined2) { + newValue = srcValue; + } + assignMergeValue(object, key, newValue); + } + }, keysIn); + } + function baseMergeDeep(object, source2, key, srcIndex, mergeFunc, customizer, stack) { + var objValue = safeGet(object, key), srcValue = safeGet(source2, key), stacked = stack.get(srcValue); + if (stacked) { + assignMergeValue(object, key, stacked); + return; + } + var newValue = customizer ? customizer(objValue, srcValue, key + "", object, source2, stack) : undefined2; + var isCommon = newValue === undefined2; + if (isCommon) { + var isArr = isArray2(srcValue), isBuff = !isArr && isBuffer2(srcValue), isTyped = !isArr && !isBuff && isTypedArray2(srcValue); + newValue = srcValue; + if (isArr || isBuff || isTyped) { + if (isArray2(objValue)) { + newValue = objValue; + } else if (isArrayLikeObject(objValue)) { + newValue = copyArray(objValue); + } else if (isBuff) { + isCommon = false; + newValue = cloneBuffer(srcValue, true); + } else if (isTyped) { + isCommon = false; + newValue = cloneTypedArray(srcValue, true); + } else { + newValue = []; + } + } else if (isPlainObject2(srcValue) || isArguments(srcValue)) { + newValue = objValue; + if (isArguments(objValue)) { + newValue = toPlainObject(objValue); + } else if (!isObject3(objValue) || isFunction2(objValue)) { + newValue = initCloneObject(srcValue); + } + } else { + isCommon = false; + } + } + if (isCommon) { + stack.set(srcValue, newValue); + mergeFunc(newValue, srcValue, srcIndex, customizer, stack); + stack["delete"](srcValue); + } + assignMergeValue(object, key, newValue); + } + function baseNth(array, n) { + var length = array.length; + if (!length) { + return; + } + n += n < 0 ? length : 0; + return isIndex(n, length) ? array[n] : undefined2; + } + function baseOrderBy(collection, iteratees, orders) { + if (iteratees.length) { + iteratees = arrayMap(iteratees, function(iteratee2) { + if (isArray2(iteratee2)) { + return function(value) { + return baseGet(value, iteratee2.length === 1 ? iteratee2[0] : iteratee2); + }; + } + return iteratee2; + }); + } else { + iteratees = [identity2]; + } + var index = -1; + iteratees = arrayMap(iteratees, baseUnary(getIteratee())); + var result2 = baseMap(collection, function(value, key, collection2) { + var criteria = arrayMap(iteratees, function(iteratee2) { + return iteratee2(value); + }); + return { "criteria": criteria, "index": ++index, "value": value }; + }); + return baseSortBy(result2, function(object, other) { + return compareMultiple(object, other, orders); + }); + } + function basePick(object, paths) { + return basePickBy(object, paths, function(value, path30) { + return hasIn(object, path30); + }); + } + function basePickBy(object, paths, predicate) { + var index = -1, length = paths.length, result2 = {}; + while (++index < length) { + var path30 = paths[index], value = baseGet(object, path30); + if (predicate(value, path30)) { + baseSet(result2, castPath(path30, object), value); + } + } + return result2; + } + function basePropertyDeep(path30) { + return function(object) { + return baseGet(object, path30); + }; + } + function basePullAll(array, values2, iteratee2, comparator) { + var indexOf2 = comparator ? baseIndexOfWith : baseIndexOf, index = -1, length = values2.length, seen = array; + if (array === values2) { + values2 = copyArray(values2); + } + if (iteratee2) { + seen = arrayMap(array, baseUnary(iteratee2)); + } + while (++index < length) { + var fromIndex = 0, value = values2[index], computed = iteratee2 ? iteratee2(value) : value; + while ((fromIndex = indexOf2(seen, computed, fromIndex, comparator)) > -1) { + if (seen !== array) { + splice.call(seen, fromIndex, 1); + } + splice.call(array, fromIndex, 1); + } + } + return array; + } + function basePullAt(array, indexes) { + var length = array ? indexes.length : 0, lastIndex = length - 1; + while (length--) { + var index = indexes[length]; + if (length == lastIndex || index !== previous) { + var previous = index; + if (isIndex(index)) { + splice.call(array, index, 1); + } else { + baseUnset(array, index); + } + } + } + return array; + } + function baseRandom(lower, upper) { + return lower + nativeFloor(nativeRandom() * (upper - lower + 1)); + } + function baseRange(start4, end, step, fromRight) { + var index = -1, length = nativeMax(nativeCeil((end - start4) / (step || 1)), 0), result2 = Array2(length); + while (length--) { + result2[fromRight ? length : ++index] = start4; + start4 += step; + } + return result2; + } + function baseRepeat(string, n) { + var result2 = ""; + if (!string || n < 1 || n > MAX_SAFE_INTEGER) { + return result2; + } + do { + if (n % 2) { + result2 += string; + } + n = nativeFloor(n / 2); + if (n) { + string += string; + } + } while (n); + return result2; + } + function baseRest(func2, start4) { + return setToString(overRest(func2, start4, identity2), func2 + ""); + } + function baseSample(collection) { + return arraySample(values(collection)); + } + function baseSampleSize(collection, n) { + var array = values(collection); + return shuffleSelf(array, baseClamp(n, 0, array.length)); + } + function baseSet(object, path30, value, customizer) { + if (!isObject3(object)) { + return object; + } + path30 = castPath(path30, object); + var index = -1, length = path30.length, lastIndex = length - 1, nested = object; + while (nested != null && ++index < length) { + var key = toKey(path30[index]), newValue = value; + if (key === "__proto__" || key === "constructor" || key === "prototype") { + return object; + } + if (index != lastIndex) { + var objValue = nested[key]; + newValue = customizer ? customizer(objValue, key, nested) : undefined2; + if (newValue === undefined2) { + newValue = isObject3(objValue) ? objValue : isIndex(path30[index + 1]) ? [] : {}; + } + } + assignValue(nested, key, newValue); + nested = nested[key]; + } + return object; + } + var baseSetData = !metaMap ? identity2 : function(func2, data) { + metaMap.set(func2, data); + return func2; + }; + var baseSetToString = !defineProperty ? identity2 : function(func2, string) { + return defineProperty(func2, "toString", { + "configurable": true, + "enumerable": false, + "value": constant(string), + "writable": true + }); + }; + function baseShuffle(collection) { + return shuffleSelf(values(collection)); + } + function baseSlice(array, start4, end) { + var index = -1, length = array.length; + if (start4 < 0) { + start4 = -start4 > length ? 0 : length + start4; + } + end = end > length ? length : end; + if (end < 0) { + end += length; + } + length = start4 > end ? 0 : end - start4 >>> 0; + start4 >>>= 0; + var result2 = Array2(length); + while (++index < length) { + result2[index] = array[index + start4]; + } + return result2; + } + function baseSome(collection, predicate) { + var result2; + baseEach(collection, function(value, index, collection2) { + result2 = predicate(value, index, collection2); + return !result2; + }); + return !!result2; + } + function baseSortedIndex(array, value, retHighest) { + var low = 0, high = array == null ? low : array.length; + if (typeof value == "number" && value === value && high <= HALF_MAX_ARRAY_LENGTH) { + while (low < high) { + var mid = low + high >>> 1, computed = array[mid]; + if (computed !== null && !isSymbol(computed) && (retHighest ? computed <= value : computed < value)) { + low = mid + 1; + } else { + high = mid; + } + } + return high; + } + return baseSortedIndexBy(array, value, identity2, retHighest); + } + function baseSortedIndexBy(array, value, iteratee2, retHighest) { + var low = 0, high = array == null ? 0 : array.length; + if (high === 0) { + return 0; + } + value = iteratee2(value); + var valIsNaN = value !== value, valIsNull = value === null, valIsSymbol = isSymbol(value), valIsUndefined = value === undefined2; + while (low < high) { + var mid = nativeFloor((low + high) / 2), computed = iteratee2(array[mid]), othIsDefined = computed !== undefined2, othIsNull = computed === null, othIsReflexive = computed === computed, othIsSymbol = isSymbol(computed); + if (valIsNaN) { + var setLow = retHighest || othIsReflexive; + } else if (valIsUndefined) { + setLow = othIsReflexive && (retHighest || othIsDefined); + } else if (valIsNull) { + setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull); + } else if (valIsSymbol) { + setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol); + } else if (othIsNull || othIsSymbol) { + setLow = false; + } else { + setLow = retHighest ? computed <= value : computed < value; + } + if (setLow) { + low = mid + 1; + } else { + high = mid; + } + } + return nativeMin(high, MAX_ARRAY_INDEX); + } + function baseSortedUniq(array, iteratee2) { + var index = -1, length = array.length, resIndex = 0, result2 = []; + while (++index < length) { + var value = array[index], computed = iteratee2 ? iteratee2(value) : value; + if (!index || !eq(computed, seen)) { + var seen = computed; + result2[resIndex++] = value === 0 ? 0 : value; + } + } + return result2; + } + function baseToNumber(value) { + if (typeof value == "number") { + return value; + } + if (isSymbol(value)) { + return NAN; + } + return +value; + } + function baseToString(value) { + if (typeof value == "string") { + return value; + } + if (isArray2(value)) { + return arrayMap(value, baseToString) + ""; + } + if (isSymbol(value)) { + return symbolToString ? symbolToString.call(value) : ""; + } + var result2 = value + ""; + return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2; + } + function baseUniq(array, iteratee2, comparator) { + var index = -1, includes2 = arrayIncludes, length = array.length, isCommon = true, result2 = [], seen = result2; + if (comparator) { + isCommon = false; + includes2 = arrayIncludesWith; + } else if (length >= LARGE_ARRAY_SIZE) { + var set2 = iteratee2 ? null : createSet(array); + if (set2) { + return setToArray(set2); + } + isCommon = false; + includes2 = cacheHas; + seen = new SetCache(); + } else { + seen = iteratee2 ? [] : result2; + } + outer: + while (++index < length) { + var value = array[index], computed = iteratee2 ? iteratee2(value) : value; + value = comparator || value !== 0 ? value : 0; + if (isCommon && computed === computed) { + var seenIndex = seen.length; + while (seenIndex--) { + if (seen[seenIndex] === computed) { + continue outer; + } + } + if (iteratee2) { + seen.push(computed); + } + result2.push(value); + } else if (!includes2(seen, computed, comparator)) { + if (seen !== result2) { + seen.push(computed); + } + result2.push(value); + } + } + return result2; + } + function baseUnset(object, path30) { + path30 = castPath(path30, object); + object = parent(object, path30); + return object == null || delete object[toKey(last(path30))]; + } + function baseUpdate(object, path30, updater, customizer) { + return baseSet(object, path30, updater(baseGet(object, path30)), customizer); + } + function baseWhile(array, predicate, isDrop, fromRight) { + var length = array.length, index = fromRight ? length : -1; + while ((fromRight ? index-- : ++index < length) && predicate(array[index], index, array)) { + } + return isDrop ? baseSlice(array, fromRight ? 0 : index, fromRight ? index + 1 : length) : baseSlice(array, fromRight ? index + 1 : 0, fromRight ? length : index); + } + function baseWrapperValue(value, actions2) { + var result2 = value; + if (result2 instanceof LazyWrapper) { + result2 = result2.value(); + } + return arrayReduce(actions2, function(result3, action) { + return action.func.apply(action.thisArg, arrayPush([result3], action.args)); + }, result2); + } + function baseXor(arrays, iteratee2, comparator) { + var length = arrays.length; + if (length < 2) { + return length ? baseUniq(arrays[0]) : []; + } + var index = -1, result2 = Array2(length); + while (++index < length) { + var array = arrays[index], othIndex = -1; + while (++othIndex < length) { + if (othIndex != index) { + result2[index] = baseDifference(result2[index] || array, arrays[othIndex], iteratee2, comparator); + } + } + } + return baseUniq(baseFlatten(result2, 1), iteratee2, comparator); + } + function baseZipObject(props, values2, assignFunc) { + var index = -1, length = props.length, valsLength = values2.length, result2 = {}; + while (++index < length) { + var value = index < valsLength ? values2[index] : undefined2; + assignFunc(result2, props[index], value); + } + return result2; + } + function castArrayLikeObject(value) { + return isArrayLikeObject(value) ? value : []; + } + function castFunction(value) { + return typeof value == "function" ? value : identity2; + } + function castPath(value, object) { + if (isArray2(value)) { + return value; + } + return isKey(value, object) ? [value] : stringToPath(toString3(value)); + } + var castRest = baseRest; + function castSlice(array, start4, end) { + var length = array.length; + end = end === undefined2 ? length : end; + return !start4 && end >= length ? array : baseSlice(array, start4, end); + } + var clearTimeout2 = ctxClearTimeout || function(id) { + return root.clearTimeout(id); + }; + function cloneBuffer(buffer2, isDeep) { + if (isDeep) { + return buffer2.slice(); + } + var length = buffer2.length, result2 = allocUnsafe ? allocUnsafe(length) : new buffer2.constructor(length); + buffer2.copy(result2); + return result2; + } + function cloneArrayBuffer(arrayBuffer) { + var result2 = new arrayBuffer.constructor(arrayBuffer.byteLength); + new Uint8Array2(result2).set(new Uint8Array2(arrayBuffer)); + return result2; + } + function cloneDataView(dataView, isDeep) { + var buffer2 = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; + return new dataView.constructor(buffer2, dataView.byteOffset, dataView.byteLength); + } + function cloneRegExp(regexp) { + var result2 = new regexp.constructor(regexp.source, reFlags.exec(regexp)); + result2.lastIndex = regexp.lastIndex; + return result2; + } + function cloneSymbol(symbol) { + return symbolValueOf ? Object2(symbolValueOf.call(symbol)) : {}; + } + function cloneTypedArray(typedArray, isDeep) { + var buffer2 = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; + return new typedArray.constructor(buffer2, typedArray.byteOffset, typedArray.length); + } + function compareAscending(value, other) { + if (value !== other) { + var valIsDefined = value !== undefined2, valIsNull = value === null, valIsReflexive = value === value, valIsSymbol = isSymbol(value); + var othIsDefined = other !== undefined2, othIsNull = other === null, othIsReflexive = other === other, othIsSymbol = isSymbol(other); + if (!othIsNull && !othIsSymbol && !valIsSymbol && value > other || valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol || valIsNull && othIsDefined && othIsReflexive || !valIsDefined && othIsReflexive || !valIsReflexive) { + return 1; + } + if (!valIsNull && !valIsSymbol && !othIsSymbol && value < other || othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol || othIsNull && valIsDefined && valIsReflexive || !othIsDefined && valIsReflexive || !othIsReflexive) { + return -1; + } + } + return 0; + } + function compareMultiple(object, other, orders) { + var index = -1, objCriteria = object.criteria, othCriteria = other.criteria, length = objCriteria.length, ordersLength = orders.length; + while (++index < length) { + var result2 = compareAscending(objCriteria[index], othCriteria[index]); + if (result2) { + if (index >= ordersLength) { + return result2; + } + var order = orders[index]; + return result2 * (order == "desc" ? -1 : 1); + } + } + return object.index - other.index; + } + function composeArgs(args3, partials, holders, isCurried) { + var argsIndex = -1, argsLength = args3.length, holdersLength = holders.length, leftIndex = -1, leftLength = partials.length, rangeLength = nativeMax(argsLength - holdersLength, 0), result2 = Array2(leftLength + rangeLength), isUncurried = !isCurried; + while (++leftIndex < leftLength) { + result2[leftIndex] = partials[leftIndex]; + } + while (++argsIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result2[holders[argsIndex]] = args3[argsIndex]; + } + } + while (rangeLength--) { + result2[leftIndex++] = args3[argsIndex++]; + } + return result2; + } + function composeArgsRight(args3, partials, holders, isCurried) { + var argsIndex = -1, argsLength = args3.length, holdersIndex = -1, holdersLength = holders.length, rightIndex = -1, rightLength = partials.length, rangeLength = nativeMax(argsLength - holdersLength, 0), result2 = Array2(rangeLength + rightLength), isUncurried = !isCurried; + while (++argsIndex < rangeLength) { + result2[argsIndex] = args3[argsIndex]; + } + var offset = argsIndex; + while (++rightIndex < rightLength) { + result2[offset + rightIndex] = partials[rightIndex]; + } + while (++holdersIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result2[offset + holders[holdersIndex]] = args3[argsIndex++]; + } + } + return result2; + } + function copyArray(source2, array) { + var index = -1, length = source2.length; + array || (array = Array2(length)); + while (++index < length) { + array[index] = source2[index]; + } + return array; + } + function copyObject(source2, props, object, customizer) { + var isNew = !object; + object || (object = {}); + var index = -1, length = props.length; + while (++index < length) { + var key = props[index]; + var newValue = customizer ? customizer(object[key], source2[key], key, object, source2) : undefined2; + if (newValue === undefined2) { + newValue = source2[key]; + } + if (isNew) { + baseAssignValue(object, key, newValue); + } else { + assignValue(object, key, newValue); + } + } + return object; + } + function copySymbols(source2, object) { + return copyObject(source2, getSymbols(source2), object); + } + function copySymbolsIn(source2, object) { + return copyObject(source2, getSymbolsIn(source2), object); + } + function createAggregator(setter, initializer) { + return function(collection, iteratee2) { + var func2 = isArray2(collection) ? arrayAggregator : baseAggregator, accumulator = initializer ? initializer() : {}; + return func2(collection, setter, getIteratee(iteratee2, 2), accumulator); + }; + } + function createAssigner(assigner) { + return baseRest(function(object, sources) { + var index = -1, length = sources.length, customizer = length > 1 ? sources[length - 1] : undefined2, guard = length > 2 ? sources[2] : undefined2; + customizer = assigner.length > 3 && typeof customizer == "function" ? (length--, customizer) : undefined2; + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + customizer = length < 3 ? undefined2 : customizer; + length = 1; + } + object = Object2(object); + while (++index < length) { + var source2 = sources[index]; + if (source2) { + assigner(object, source2, index, customizer); + } + } + return object; + }); + } + function createBaseEach(eachFunc, fromRight) { + return function(collection, iteratee2) { + if (collection == null) { + return collection; + } + if (!isArrayLike(collection)) { + return eachFunc(collection, iteratee2); + } + var length = collection.length, index = fromRight ? length : -1, iterable = Object2(collection); + while (fromRight ? index-- : ++index < length) { + if (iteratee2(iterable[index], index, iterable) === false) { + break; + } + } + return collection; + }; + } + function createBaseFor(fromRight) { + return function(object, iteratee2, keysFunc) { + var index = -1, iterable = Object2(object), props = keysFunc(object), length = props.length; + while (length--) { + var key = props[fromRight ? length : ++index]; + if (iteratee2(iterable[key], key, iterable) === false) { + break; + } + } + return object; + }; + } + function createBind(func2, bitmask, thisArg) { + var isBind = bitmask & WRAP_BIND_FLAG, Ctor = createCtor(func2); + function wrapper() { + var fn = this && this !== root && this instanceof wrapper ? Ctor : func2; + return fn.apply(isBind ? thisArg : this, arguments); + } + return wrapper; + } + function createCaseFirst(methodName) { + return function(string) { + string = toString3(string); + var strSymbols = hasUnicode(string) ? stringToArray(string) : undefined2; + var chr = strSymbols ? strSymbols[0] : string.charAt(0); + var trailing = strSymbols ? castSlice(strSymbols, 1).join("") : string.slice(1); + return chr[methodName]() + trailing; + }; + } + function createCompounder(callback) { + return function(string) { + return arrayReduce(words(deburr(string).replace(reApos, "")), callback, ""); + }; + } + function createCtor(Ctor) { + return function() { + var args3 = arguments; + switch (args3.length) { + case 0: + return new Ctor(); + case 1: + return new Ctor(args3[0]); + case 2: + return new Ctor(args3[0], args3[1]); + case 3: + return new Ctor(args3[0], args3[1], args3[2]); + case 4: + return new Ctor(args3[0], args3[1], args3[2], args3[3]); + case 5: + return new Ctor(args3[0], args3[1], args3[2], args3[3], args3[4]); + case 6: + return new Ctor(args3[0], args3[1], args3[2], args3[3], args3[4], args3[5]); + case 7: + return new Ctor(args3[0], args3[1], args3[2], args3[3], args3[4], args3[5], args3[6]); + } + var thisBinding = baseCreate(Ctor.prototype), result2 = Ctor.apply(thisBinding, args3); + return isObject3(result2) ? result2 : thisBinding; + }; + } + function createCurry(func2, bitmask, arity2) { + var Ctor = createCtor(func2); + function wrapper() { + var length = arguments.length, args3 = Array2(length), index = length, placeholder = getHolder(wrapper); + while (index--) { + args3[index] = arguments[index]; + } + var holders = length < 3 && args3[0] !== placeholder && args3[length - 1] !== placeholder ? [] : replaceHolders(args3, placeholder); + length -= holders.length; + if (length < arity2) { + return createRecurry( + func2, + bitmask, + createHybrid, + wrapper.placeholder, + undefined2, + args3, + holders, + undefined2, + undefined2, + arity2 - length + ); + } + var fn = this && this !== root && this instanceof wrapper ? Ctor : func2; + return apply(fn, this, args3); + } + return wrapper; + } + function createFind(findIndexFunc) { + return function(collection, predicate, fromIndex) { + var iterable = Object2(collection); + if (!isArrayLike(collection)) { + var iteratee2 = getIteratee(predicate, 3); + collection = keys(collection); + predicate = function(key) { + return iteratee2(iterable[key], key, iterable); + }; + } + var index = findIndexFunc(collection, predicate, fromIndex); + return index > -1 ? iterable[iteratee2 ? collection[index] : index] : undefined2; + }; + } + function createFlow(fromRight) { + return flatRest(function(funcs) { + var length = funcs.length, index = length, prereq = LodashWrapper.prototype.thru; + if (fromRight) { + funcs.reverse(); + } + while (index--) { + var func2 = funcs[index]; + if (typeof func2 != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + if (prereq && !wrapper && getFuncName(func2) == "wrapper") { + var wrapper = new LodashWrapper([], true); + } + } + index = wrapper ? index : length; + while (++index < length) { + func2 = funcs[index]; + var funcName = getFuncName(func2), data = funcName == "wrapper" ? getData(func2) : undefined2; + if (data && isLaziable(data[0]) && data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && !data[4].length && data[9] == 1) { + wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); + } else { + wrapper = func2.length == 1 && isLaziable(func2) ? wrapper[funcName]() : wrapper.thru(func2); + } + } + return function() { + var args3 = arguments, value = args3[0]; + if (wrapper && args3.length == 1 && isArray2(value)) { + return wrapper.plant(value).value(); + } + var index2 = 0, result2 = length ? funcs[index2].apply(this, args3) : value; + while (++index2 < length) { + result2 = funcs[index2].call(this, result2); + } + return result2; + }; + }); + } + function createHybrid(func2, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary2, arity2) { + var isAry = bitmask & WRAP_ARY_FLAG, isBind = bitmask & WRAP_BIND_FLAG, isBindKey = bitmask & WRAP_BIND_KEY_FLAG, isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG), isFlip = bitmask & WRAP_FLIP_FLAG, Ctor = isBindKey ? undefined2 : createCtor(func2); + function wrapper() { + var length = arguments.length, args3 = Array2(length), index = length; + while (index--) { + args3[index] = arguments[index]; + } + if (isCurried) { + var placeholder = getHolder(wrapper), holdersCount = countHolders(args3, placeholder); + } + if (partials) { + args3 = composeArgs(args3, partials, holders, isCurried); + } + if (partialsRight) { + args3 = composeArgsRight(args3, partialsRight, holdersRight, isCurried); + } + length -= holdersCount; + if (isCurried && length < arity2) { + var newHolders = replaceHolders(args3, placeholder); + return createRecurry( + func2, + bitmask, + createHybrid, + wrapper.placeholder, + thisArg, + args3, + newHolders, + argPos, + ary2, + arity2 - length + ); + } + var thisBinding = isBind ? thisArg : this, fn = isBindKey ? thisBinding[func2] : func2; + length = args3.length; + if (argPos) { + args3 = reorder(args3, argPos); + } else if (isFlip && length > 1) { + args3.reverse(); + } + if (isAry && ary2 < length) { + args3.length = ary2; + } + if (this && this !== root && this instanceof wrapper) { + fn = Ctor || createCtor(fn); + } + return fn.apply(thisBinding, args3); + } + return wrapper; + } + function createInverter(setter, toIteratee) { + return function(object, iteratee2) { + return baseInverter(object, setter, toIteratee(iteratee2), {}); + }; + } + function createMathOperation(operator, defaultValue) { + return function(value, other) { + var result2; + if (value === undefined2 && other === undefined2) { + return defaultValue; + } + if (value !== undefined2) { + result2 = value; + } + if (other !== undefined2) { + if (result2 === undefined2) { + return other; + } + if (typeof value == "string" || typeof other == "string") { + value = baseToString(value); + other = baseToString(other); + } else { + value = baseToNumber(value); + other = baseToNumber(other); + } + result2 = operator(value, other); + } + return result2; + }; + } + function createOver(arrayFunc) { + return flatRest(function(iteratees) { + iteratees = arrayMap(iteratees, baseUnary(getIteratee())); + return baseRest(function(args3) { + var thisArg = this; + return arrayFunc(iteratees, function(iteratee2) { + return apply(iteratee2, thisArg, args3); + }); + }); + }); + } + function createPadding(length, chars) { + chars = chars === undefined2 ? " " : baseToString(chars); + var charsLength = chars.length; + if (charsLength < 2) { + return charsLength ? baseRepeat(chars, length) : chars; + } + var result2 = baseRepeat(chars, nativeCeil(length / stringSize(chars))); + return hasUnicode(chars) ? castSlice(stringToArray(result2), 0, length).join("") : result2.slice(0, length); + } + function createPartial(func2, bitmask, thisArg, partials) { + var isBind = bitmask & WRAP_BIND_FLAG, Ctor = createCtor(func2); + function wrapper() { + var argsIndex = -1, argsLength = arguments.length, leftIndex = -1, leftLength = partials.length, args3 = Array2(leftLength + argsLength), fn = this && this !== root && this instanceof wrapper ? Ctor : func2; + while (++leftIndex < leftLength) { + args3[leftIndex] = partials[leftIndex]; + } + while (argsLength--) { + args3[leftIndex++] = arguments[++argsIndex]; + } + return apply(fn, isBind ? thisArg : this, args3); + } + return wrapper; + } + function createRange(fromRight) { + return function(start4, end, step) { + if (step && typeof step != "number" && isIterateeCall(start4, end, step)) { + end = step = undefined2; + } + start4 = toFinite(start4); + if (end === undefined2) { + end = start4; + start4 = 0; + } else { + end = toFinite(end); + } + step = step === undefined2 ? start4 < end ? 1 : -1 : toFinite(step); + return baseRange(start4, end, step, fromRight); + }; + } + function createRelationalOperation(operator) { + return function(value, other) { + if (!(typeof value == "string" && typeof other == "string")) { + value = toNumber(value); + other = toNumber(other); + } + return operator(value, other); + }; + } + function createRecurry(func2, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary2, arity2) { + var isCurry = bitmask & WRAP_CURRY_FLAG, newHolders = isCurry ? holders : undefined2, newHoldersRight = isCurry ? undefined2 : holders, newPartials = isCurry ? partials : undefined2, newPartialsRight = isCurry ? undefined2 : partials; + bitmask |= isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG; + bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG); + if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) { + bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG); + } + var newData = [ + func2, + bitmask, + thisArg, + newPartials, + newHolders, + newPartialsRight, + newHoldersRight, + argPos, + ary2, + arity2 + ]; + var result2 = wrapFunc.apply(undefined2, newData); + if (isLaziable(func2)) { + setData(result2, newData); + } + result2.placeholder = placeholder; + return setWrapToString(result2, func2, bitmask); + } + function createRound(methodName) { + var func2 = Math2[methodName]; + return function(number, precision) { + number = toNumber(number); + precision = precision == null ? 0 : nativeMin(toInteger(precision), 292); + if (precision && nativeIsFinite(number)) { + var pair = (toString3(number) + "e").split("e"), value = func2(pair[0] + "e" + (+pair[1] + precision)); + pair = (toString3(value) + "e").split("e"); + return +(pair[0] + "e" + (+pair[1] - precision)); + } + return func2(number); + }; + } + var createSet = !(Set2 && 1 / setToArray(new Set2([, -0]))[1] == INFINITY) ? noop2 : function(values2) { + return new Set2(values2); + }; + function createToPairs(keysFunc) { + return function(object) { + var tag = getTag(object); + if (tag == mapTag) { + return mapToArray(object); + } + if (tag == setTag) { + return setToPairs(object); + } + return baseToPairs(object, keysFunc(object)); + }; + } + function createWrap(func2, bitmask, thisArg, partials, holders, argPos, ary2, arity2) { + var isBindKey = bitmask & WRAP_BIND_KEY_FLAG; + if (!isBindKey && typeof func2 != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + var length = partials ? partials.length : 0; + if (!length) { + bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG); + partials = holders = undefined2; + } + ary2 = ary2 === undefined2 ? ary2 : nativeMax(toInteger(ary2), 0); + arity2 = arity2 === undefined2 ? arity2 : toInteger(arity2); + length -= holders ? holders.length : 0; + if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) { + var partialsRight = partials, holdersRight = holders; + partials = holders = undefined2; + } + var data = isBindKey ? undefined2 : getData(func2); + var newData = [ + func2, + bitmask, + thisArg, + partials, + holders, + partialsRight, + holdersRight, + argPos, + ary2, + arity2 + ]; + if (data) { + mergeData(newData, data); + } + func2 = newData[0]; + bitmask = newData[1]; + thisArg = newData[2]; + partials = newData[3]; + holders = newData[4]; + arity2 = newData[9] = newData[9] === undefined2 ? isBindKey ? 0 : func2.length : nativeMax(newData[9] - length, 0); + if (!arity2 && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) { + bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG); + } + if (!bitmask || bitmask == WRAP_BIND_FLAG) { + var result2 = createBind(func2, bitmask, thisArg); + } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) { + result2 = createCurry(func2, bitmask, arity2); + } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) { + result2 = createPartial(func2, bitmask, thisArg, partials); + } else { + result2 = createHybrid.apply(undefined2, newData); + } + var setter = data ? baseSetData : setData; + return setWrapToString(setter(result2, newData), func2, bitmask); + } + function customDefaultsAssignIn(objValue, srcValue, key, object) { + if (objValue === undefined2 || eq(objValue, objectProto[key]) && !hasOwnProperty2.call(object, key)) { + return srcValue; + } + return objValue; + } + function customDefaultsMerge(objValue, srcValue, key, object, source2, stack) { + if (isObject3(objValue) && isObject3(srcValue)) { + stack.set(srcValue, objValue); + baseMerge(objValue, srcValue, undefined2, customDefaultsMerge, stack); + stack["delete"](srcValue); + } + return objValue; + } + function customOmitClone(value) { + return isPlainObject2(value) ? undefined2 : value; + } + function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, arrLength = array.length, othLength = other.length; + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; + } + var arrStacked = stack.get(array); + var othStacked = stack.get(other); + if (arrStacked && othStacked) { + return arrStacked == other && othStacked == array; + } + var index = -1, result2 = true, seen = bitmask & COMPARE_UNORDERED_FLAG ? new SetCache() : undefined2; + stack.set(array, other); + stack.set(other, array); + while (++index < arrLength) { + var arrValue = array[index], othValue = other[index]; + if (customizer) { + var compared = isPartial ? customizer(othValue, arrValue, index, other, array, stack) : customizer(arrValue, othValue, index, array, other, stack); + } + if (compared !== undefined2) { + if (compared) { + continue; + } + result2 = false; + break; + } + if (seen) { + if (!arraySome(other, function(othValue2, othIndex) { + if (!cacheHas(seen, othIndex) && (arrValue === othValue2 || equalFunc(arrValue, othValue2, bitmask, customizer, stack))) { + return seen.push(othIndex); + } + })) { + result2 = false; + break; + } + } else if (!(arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { + result2 = false; + break; + } + } + stack["delete"](array); + stack["delete"](other); + return result2; + } + function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { + switch (tag) { + case dataViewTag: + if (object.byteLength != other.byteLength || object.byteOffset != other.byteOffset) { + return false; + } + object = object.buffer; + other = other.buffer; + case arrayBufferTag: + if (object.byteLength != other.byteLength || !equalFunc(new Uint8Array2(object), new Uint8Array2(other))) { + return false; + } + return true; + case boolTag: + case dateTag: + case numberTag: + return eq(+object, +other); + case errorTag: + return object.name == other.name && object.message == other.message; + case regexpTag: + case stringTag: + return object == other + ""; + case mapTag: + var convert = mapToArray; + case setTag: + var isPartial = bitmask & COMPARE_PARTIAL_FLAG; + convert || (convert = setToArray); + if (object.size != other.size && !isPartial) { + return false; + } + var stacked = stack.get(object); + if (stacked) { + return stacked == other; + } + bitmask |= COMPARE_UNORDERED_FLAG; + stack.set(object, other); + var result2 = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); + stack["delete"](object); + return result2; + case symbolTag: + if (symbolValueOf) { + return symbolValueOf.call(object) == symbolValueOf.call(other); + } + } + return false; + } + function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, objProps = getAllKeys(object), objLength = objProps.length, othProps = getAllKeys(other), othLength = othProps.length; + if (objLength != othLength && !isPartial) { + return false; + } + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : hasOwnProperty2.call(other, key))) { + return false; + } + } + var objStacked = stack.get(object); + var othStacked = stack.get(other); + if (objStacked && othStacked) { + return objStacked == other && othStacked == object; + } + var result2 = true; + stack.set(object, other); + stack.set(other, object); + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], othValue = other[key]; + if (customizer) { + var compared = isPartial ? customizer(othValue, objValue, key, other, object, stack) : customizer(objValue, othValue, key, object, other, stack); + } + if (!(compared === undefined2 ? objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack) : compared)) { + result2 = false; + break; + } + skipCtor || (skipCtor = key == "constructor"); + } + if (result2 && !skipCtor) { + var objCtor = object.constructor, othCtor = other.constructor; + if (objCtor != othCtor && ("constructor" in object && "constructor" in other) && !(typeof objCtor == "function" && objCtor instanceof objCtor && typeof othCtor == "function" && othCtor instanceof othCtor)) { + result2 = false; + } + } + stack["delete"](object); + stack["delete"](other); + return result2; + } + function flatRest(func2) { + return setToString(overRest(func2, undefined2, flatten), func2 + ""); + } + function getAllKeys(object) { + return baseGetAllKeys(object, keys, getSymbols); + } + function getAllKeysIn(object) { + return baseGetAllKeys(object, keysIn, getSymbolsIn); + } + var getData = !metaMap ? noop2 : function(func2) { + return metaMap.get(func2); + }; + function getFuncName(func2) { + var result2 = func2.name + "", array = realNames[result2], length = hasOwnProperty2.call(realNames, result2) ? array.length : 0; + while (length--) { + var data = array[length], otherFunc = data.func; + if (otherFunc == null || otherFunc == func2) { + return data.name; + } + } + return result2; + } + function getHolder(func2) { + var object = hasOwnProperty2.call(lodash, "placeholder") ? lodash : func2; + return object.placeholder; + } + function getIteratee() { + var result2 = lodash.iteratee || iteratee; + result2 = result2 === iteratee ? baseIteratee : result2; + return arguments.length ? result2(arguments[0], arguments[1]) : result2; + } + function getMapData(map2, key) { + var data = map2.__data__; + return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; + } + function getMatchData(object) { + var result2 = keys(object), length = result2.length; + while (length--) { + var key = result2[length], value = object[key]; + result2[length] = [key, value, isStrictComparable(value)]; + } + return result2; + } + function getNative(object, key) { + var value = getValue2(object, key); + return baseIsNative(value) ? value : undefined2; + } + function getRawTag(value) { + var isOwn = hasOwnProperty2.call(value, symToStringTag), tag = value[symToStringTag]; + try { + value[symToStringTag] = undefined2; + var unmasked = true; + } catch (e) { + } + var result2 = nativeObjectToString.call(value); + if (unmasked) { + if (isOwn) { + value[symToStringTag] = tag; + } else { + delete value[symToStringTag]; + } + } + return result2; + } + var getSymbols = !nativeGetSymbols ? stubArray : function(object) { + if (object == null) { + return []; + } + object = Object2(object); + return arrayFilter(nativeGetSymbols(object), function(symbol) { + return propertyIsEnumerable.call(object, symbol); + }); + }; + var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { + var result2 = []; + while (object) { + arrayPush(result2, getSymbols(object)); + object = getPrototype(object); + } + return result2; + }; + var getTag = baseGetTag; + if (DataView2 && getTag(new DataView2(new ArrayBuffer(1))) != dataViewTag || Map2 && getTag(new Map2()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set2 && getTag(new Set2()) != setTag || WeakMap2 && getTag(new WeakMap2()) != weakMapTag) { + getTag = function(value) { + var result2 = baseGetTag(value), Ctor = result2 == objectTag ? value.constructor : undefined2, ctorString = Ctor ? toSource(Ctor) : ""; + if (ctorString) { + switch (ctorString) { + case dataViewCtorString: + return dataViewTag; + case mapCtorString: + return mapTag; + case promiseCtorString: + return promiseTag; + case setCtorString: + return setTag; + case weakMapCtorString: + return weakMapTag; + } + } + return result2; + }; + } + function getView(start4, end, transforms) { + var index = -1, length = transforms.length; + while (++index < length) { + var data = transforms[index], size2 = data.size; + switch (data.type) { + case "drop": + start4 += size2; + break; + case "dropRight": + end -= size2; + break; + case "take": + end = nativeMin(end, start4 + size2); + break; + case "takeRight": + start4 = nativeMax(start4, end - size2); + break; + } + } + return { "start": start4, "end": end }; + } + function getWrapDetails(source2) { + var match2 = source2.match(reWrapDetails); + return match2 ? match2[1].split(reSplitDetails) : []; + } + function hasPath(object, path30, hasFunc) { + path30 = castPath(path30, object); + var index = -1, length = path30.length, result2 = false; + while (++index < length) { + var key = toKey(path30[index]); + if (!(result2 = object != null && hasFunc(object, key))) { + break; + } + object = object[key]; + } + if (result2 || ++index != length) { + return result2; + } + length = object == null ? 0 : object.length; + return !!length && isLength(length) && isIndex(key, length) && (isArray2(object) || isArguments(object)); + } + function initCloneArray(array) { + var length = array.length, result2 = new array.constructor(length); + if (length && typeof array[0] == "string" && hasOwnProperty2.call(array, "index")) { + result2.index = array.index; + result2.input = array.input; + } + return result2; + } + function initCloneObject(object) { + return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {}; + } + function initCloneByTag(object, tag, isDeep) { + var Ctor = object.constructor; + switch (tag) { + case arrayBufferTag: + return cloneArrayBuffer(object); + case boolTag: + case dateTag: + return new Ctor(+object); + case dataViewTag: + return cloneDataView(object, isDeep); + case float32Tag: + case float64Tag: + case int8Tag: + case int16Tag: + case int32Tag: + case uint8Tag: + case uint8ClampedTag: + case uint16Tag: + case uint32Tag: + return cloneTypedArray(object, isDeep); + case mapTag: + return new Ctor(); + case numberTag: + case stringTag: + return new Ctor(object); + case regexpTag: + return cloneRegExp(object); + case setTag: + return new Ctor(); + case symbolTag: + return cloneSymbol(object); + } + } + function insertWrapDetails(source2, details) { + var length = details.length; + if (!length) { + return source2; + } + var lastIndex = length - 1; + details[lastIndex] = (length > 1 ? "& " : "") + details[lastIndex]; + details = details.join(length > 2 ? ", " : " "); + return source2.replace(reWrapComment, "{\n/* [wrapped with " + details + "] */\n"); + } + function isFlattenable(value) { + return isArray2(value) || isArguments(value) || !!(spreadableSymbol && value && value[spreadableSymbol]); + } + function isIndex(value, length) { + var type2 = typeof value; + length = length == null ? MAX_SAFE_INTEGER : length; + return !!length && (type2 == "number" || type2 != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); + } + function isIterateeCall(value, index, object) { + if (!isObject3(object)) { + return false; + } + var type2 = typeof index; + if (type2 == "number" ? isArrayLike(object) && isIndex(index, object.length) : type2 == "string" && index in object) { + return eq(object[index], value); + } + return false; + } + function isKey(value, object) { + if (isArray2(value)) { + return false; + } + var type2 = typeof value; + if (type2 == "number" || type2 == "symbol" || type2 == "boolean" || value == null || isSymbol(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || object != null && value in Object2(object); + } + function isKeyable(value) { + var type2 = typeof value; + return type2 == "string" || type2 == "number" || type2 == "symbol" || type2 == "boolean" ? value !== "__proto__" : value === null; + } + function isLaziable(func2) { + var funcName = getFuncName(func2), other = lodash[funcName]; + if (typeof other != "function" || !(funcName in LazyWrapper.prototype)) { + return false; + } + if (func2 === other) { + return true; + } + var data = getData(other); + return !!data && func2 === data[0]; + } + function isMasked(func2) { + return !!maskSrcKey && maskSrcKey in func2; + } + var isMaskable = coreJsData ? isFunction2 : stubFalse; + function isPrototype(value) { + var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto; + return value === proto; + } + function isStrictComparable(value) { + return value === value && !isObject3(value); + } + function matchesStrictComparable(key, srcValue) { + return function(object) { + if (object == null) { + return false; + } + return object[key] === srcValue && (srcValue !== undefined2 || key in Object2(object)); + }; + } + function memoizeCapped(func2) { + var result2 = memoize(func2, function(key) { + if (cache.size === MAX_MEMOIZE_SIZE) { + cache.clear(); + } + return key; + }); + var cache = result2.cache; + return result2; + } + function mergeData(data, source2) { + var bitmask = data[1], srcBitmask = source2[1], newBitmask = bitmask | srcBitmask, isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); + var isCombo = srcBitmask == WRAP_ARY_FLAG && bitmask == WRAP_CURRY_FLAG || srcBitmask == WRAP_ARY_FLAG && bitmask == WRAP_REARG_FLAG && data[7].length <= source2[8] || srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG) && source2[7].length <= source2[8] && bitmask == WRAP_CURRY_FLAG; + if (!(isCommon || isCombo)) { + return data; + } + if (srcBitmask & WRAP_BIND_FLAG) { + data[2] = source2[2]; + newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG; + } + var value = source2[3]; + if (value) { + var partials = data[3]; + data[3] = partials ? composeArgs(partials, value, source2[4]) : value; + data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source2[4]; + } + value = source2[5]; + if (value) { + partials = data[5]; + data[5] = partials ? composeArgsRight(partials, value, source2[6]) : value; + data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source2[6]; + } + value = source2[7]; + if (value) { + data[7] = value; + } + if (srcBitmask & WRAP_ARY_FLAG) { + data[8] = data[8] == null ? source2[8] : nativeMin(data[8], source2[8]); + } + if (data[9] == null) { + data[9] = source2[9]; + } + data[0] = source2[0]; + data[1] = newBitmask; + return data; + } + function nativeKeysIn(object) { + var result2 = []; + if (object != null) { + for (var key in Object2(object)) { + result2.push(key); + } + } + return result2; + } + function objectToString(value) { + return nativeObjectToString.call(value); + } + function overRest(func2, start4, transform2) { + start4 = nativeMax(start4 === undefined2 ? func2.length - 1 : start4, 0); + return function() { + var args3 = arguments, index = -1, length = nativeMax(args3.length - start4, 0), array = Array2(length); + while (++index < length) { + array[index] = args3[start4 + index]; + } + index = -1; + var otherArgs = Array2(start4 + 1); + while (++index < start4) { + otherArgs[index] = args3[index]; + } + otherArgs[start4] = transform2(array); + return apply(func2, this, otherArgs); + }; + } + function parent(object, path30) { + return path30.length < 2 ? object : baseGet(object, baseSlice(path30, 0, -1)); + } + function reorder(array, indexes) { + var arrLength = array.length, length = nativeMin(indexes.length, arrLength), oldArray = copyArray(array); + while (length--) { + var index = indexes[length]; + array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined2; + } + return array; + } + function safeGet(object, key) { + if (key === "constructor" && typeof object[key] === "function") { + return; + } + if (key == "__proto__") { + return; + } + return object[key]; + } + var setData = shortOut(baseSetData); + var setTimeout2 = ctxSetTimeout || function(func2, wait) { + return root.setTimeout(func2, wait); + }; + var setToString = shortOut(baseSetToString); + function setWrapToString(wrapper, reference, bitmask) { + var source2 = reference + ""; + return setToString(wrapper, insertWrapDetails(source2, updateWrapDetails(getWrapDetails(source2), bitmask))); + } + function shortOut(func2) { + var count = 0, lastCalled = 0; + return function() { + var stamp = nativeNow(), remaining = HOT_SPAN - (stamp - lastCalled); + lastCalled = stamp; + if (remaining > 0) { + if (++count >= HOT_COUNT) { + return arguments[0]; + } + } else { + count = 0; + } + return func2.apply(undefined2, arguments); + }; + } + function shuffleSelf(array, size2) { + var index = -1, length = array.length, lastIndex = length - 1; + size2 = size2 === undefined2 ? length : size2; + while (++index < size2) { + var rand = baseRandom(index, lastIndex), value = array[rand]; + array[rand] = array[index]; + array[index] = value; + } + array.length = size2; + return array; + } + var stringToPath = memoizeCapped(function(string) { + var result2 = []; + if (string.charCodeAt(0) === 46) { + result2.push(""); + } + string.replace(rePropName, function(match2, number, quote, subString) { + result2.push(quote ? subString.replace(reEscapeChar, "$1") : number || match2); + }); + return result2; + }); + function toKey(value) { + if (typeof value == "string" || isSymbol(value)) { + return value; + } + var result2 = value + ""; + return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2; + } + function toSource(func2) { + if (func2 != null) { + try { + return funcToString.call(func2); + } catch (e) { + } + try { + return func2 + ""; + } catch (e) { + } + } + return ""; + } + function updateWrapDetails(details, bitmask) { + arrayEach(wrapFlags, function(pair) { + var value = "_." + pair[0]; + if (bitmask & pair[1] && !arrayIncludes(details, value)) { + details.push(value); + } + }); + return details.sort(); + } + function wrapperClone(wrapper) { + if (wrapper instanceof LazyWrapper) { + return wrapper.clone(); + } + var result2 = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); + result2.__actions__ = copyArray(wrapper.__actions__); + result2.__index__ = wrapper.__index__; + result2.__values__ = wrapper.__values__; + return result2; + } + function chunk(array, size2, guard) { + if (guard ? isIterateeCall(array, size2, guard) : size2 === undefined2) { + size2 = 1; + } else { + size2 = nativeMax(toInteger(size2), 0); + } + var length = array == null ? 0 : array.length; + if (!length || size2 < 1) { + return []; + } + var index = 0, resIndex = 0, result2 = Array2(nativeCeil(length / size2)); + while (index < length) { + result2[resIndex++] = baseSlice(array, index, index += size2); + } + return result2; + } + function compact(array) { + var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result2 = []; + while (++index < length) { + var value = array[index]; + if (value) { + result2[resIndex++] = value; + } + } + return result2; + } + function concat() { + var length = arguments.length; + if (!length) { + return []; + } + var args3 = Array2(length - 1), array = arguments[0], index = length; + while (index--) { + args3[index - 1] = arguments[index]; + } + return arrayPush(isArray2(array) ? copyArray(array) : [array], baseFlatten(args3, 1)); + } + var difference = baseRest(function(array, values2) { + return isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values2, 1, isArrayLikeObject, true)) : []; + }); + var differenceBy = baseRest(function(array, values2) { + var iteratee2 = last(values2); + if (isArrayLikeObject(iteratee2)) { + iteratee2 = undefined2; + } + return isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values2, 1, isArrayLikeObject, true), getIteratee(iteratee2, 2)) : []; + }); + var differenceWith = baseRest(function(array, values2) { + var comparator = last(values2); + if (isArrayLikeObject(comparator)) { + comparator = undefined2; + } + return isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values2, 1, isArrayLikeObject, true), undefined2, comparator) : []; + }); + function drop(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = guard || n === undefined2 ? 1 : toInteger(n); + return baseSlice(array, n < 0 ? 0 : n, length); + } + function dropRight(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = guard || n === undefined2 ? 1 : toInteger(n); + n = length - n; + return baseSlice(array, 0, n < 0 ? 0 : n); + } + function dropRightWhile(array, predicate) { + return array && array.length ? baseWhile(array, getIteratee(predicate, 3), true, true) : []; + } + function dropWhile(array, predicate) { + return array && array.length ? baseWhile(array, getIteratee(predicate, 3), true) : []; + } + function fill(array, value, start4, end) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + if (start4 && typeof start4 != "number" && isIterateeCall(array, value, start4)) { + start4 = 0; + end = length; + } + return baseFill(array, value, start4, end); + } + function findIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseFindIndex(array, getIteratee(predicate, 3), index); + } + function findLastIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = length - 1; + if (fromIndex !== undefined2) { + index = toInteger(fromIndex); + index = fromIndex < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); + } + return baseFindIndex(array, getIteratee(predicate, 3), index, true); + } + function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, 1) : []; + } + function flattenDeep(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, INFINITY) : []; + } + function flattenDepth(array, depth) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + depth = depth === undefined2 ? 1 : toInteger(depth); + return baseFlatten(array, depth); + } + function fromPairs(pairs) { + var index = -1, length = pairs == null ? 0 : pairs.length, result2 = {}; + while (++index < length) { + var pair = pairs[index]; + result2[pair[0]] = pair[1]; + } + return result2; + } + function head(array) { + return array && array.length ? array[0] : undefined2; + } + function indexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseIndexOf(array, value, index); + } + function initial(array) { + var length = array == null ? 0 : array.length; + return length ? baseSlice(array, 0, -1) : []; + } + var intersection = baseRest(function(arrays) { + var mapped = arrayMap(arrays, castArrayLikeObject); + return mapped.length && mapped[0] === arrays[0] ? baseIntersection(mapped) : []; + }); + var intersectionBy = baseRest(function(arrays) { + var iteratee2 = last(arrays), mapped = arrayMap(arrays, castArrayLikeObject); + if (iteratee2 === last(mapped)) { + iteratee2 = undefined2; + } else { + mapped.pop(); + } + return mapped.length && mapped[0] === arrays[0] ? baseIntersection(mapped, getIteratee(iteratee2, 2)) : []; + }); + var intersectionWith = baseRest(function(arrays) { + var comparator = last(arrays), mapped = arrayMap(arrays, castArrayLikeObject); + comparator = typeof comparator == "function" ? comparator : undefined2; + if (comparator) { + mapped.pop(); + } + return mapped.length && mapped[0] === arrays[0] ? baseIntersection(mapped, undefined2, comparator) : []; + }); + function join9(array, separator) { + return array == null ? "" : nativeJoin.call(array, separator); + } + function last(array) { + var length = array == null ? 0 : array.length; + return length ? array[length - 1] : undefined2; + } + function lastIndexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = length; + if (fromIndex !== undefined2) { + index = toInteger(fromIndex); + index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); + } + return value === value ? strictLastIndexOf(array, value, index) : baseFindIndex(array, baseIsNaN, index, true); + } + function nth(array, n) { + return array && array.length ? baseNth(array, toInteger(n)) : undefined2; + } + var pull = baseRest(pullAll); + function pullAll(array, values2) { + return array && array.length && values2 && values2.length ? basePullAll(array, values2) : array; + } + function pullAllBy(array, values2, iteratee2) { + return array && array.length && values2 && values2.length ? basePullAll(array, values2, getIteratee(iteratee2, 2)) : array; + } + function pullAllWith(array, values2, comparator) { + return array && array.length && values2 && values2.length ? basePullAll(array, values2, undefined2, comparator) : array; + } + var pullAt = flatRest(function(array, indexes) { + var length = array == null ? 0 : array.length, result2 = baseAt(array, indexes); + basePullAt(array, arrayMap(indexes, function(index) { + return isIndex(index, length) ? +index : index; + }).sort(compareAscending)); + return result2; + }); + function remove(array, predicate) { + var result2 = []; + if (!(array && array.length)) { + return result2; + } + var index = -1, indexes = [], length = array.length; + predicate = getIteratee(predicate, 3); + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result2.push(value); + indexes.push(index); + } + } + basePullAt(array, indexes); + return result2; + } + function reverse(array) { + return array == null ? array : nativeReverse.call(array); + } + function slice(array, start4, end) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + if (end && typeof end != "number" && isIterateeCall(array, start4, end)) { + start4 = 0; + end = length; + } else { + start4 = start4 == null ? 0 : toInteger(start4); + end = end === undefined2 ? length : toInteger(end); + } + return baseSlice(array, start4, end); + } + function sortedIndex(array, value) { + return baseSortedIndex(array, value); + } + function sortedIndexBy(array, value, iteratee2) { + return baseSortedIndexBy(array, value, getIteratee(iteratee2, 2)); + } + function sortedIndexOf(array, value) { + var length = array == null ? 0 : array.length; + if (length) { + var index = baseSortedIndex(array, value); + if (index < length && eq(array[index], value)) { + return index; + } + } + return -1; + } + function sortedLastIndex(array, value) { + return baseSortedIndex(array, value, true); + } + function sortedLastIndexBy(array, value, iteratee2) { + return baseSortedIndexBy(array, value, getIteratee(iteratee2, 2), true); + } + function sortedLastIndexOf(array, value) { + var length = array == null ? 0 : array.length; + if (length) { + var index = baseSortedIndex(array, value, true) - 1; + if (eq(array[index], value)) { + return index; + } + } + return -1; + } + function sortedUniq(array) { + return array && array.length ? baseSortedUniq(array) : []; + } + function sortedUniqBy(array, iteratee2) { + return array && array.length ? baseSortedUniq(array, getIteratee(iteratee2, 2)) : []; + } + function tail(array) { + var length = array == null ? 0 : array.length; + return length ? baseSlice(array, 1, length) : []; + } + function take(array, n, guard) { + if (!(array && array.length)) { + return []; + } + n = guard || n === undefined2 ? 1 : toInteger(n); + return baseSlice(array, 0, n < 0 ? 0 : n); + } + function takeRight(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = guard || n === undefined2 ? 1 : toInteger(n); + n = length - n; + return baseSlice(array, n < 0 ? 0 : n, length); + } + function takeRightWhile(array, predicate) { + return array && array.length ? baseWhile(array, getIteratee(predicate, 3), false, true) : []; + } + function takeWhile(array, predicate) { + return array && array.length ? baseWhile(array, getIteratee(predicate, 3)) : []; + } + var union = baseRest(function(arrays) { + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true)); + }); + var unionBy = baseRest(function(arrays) { + var iteratee2 = last(arrays); + if (isArrayLikeObject(iteratee2)) { + iteratee2 = undefined2; + } + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee2, 2)); + }); + var unionWith = baseRest(function(arrays) { + var comparator = last(arrays); + comparator = typeof comparator == "function" ? comparator : undefined2; + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined2, comparator); + }); + function uniq2(array) { + return array && array.length ? baseUniq(array) : []; + } + function uniqBy(array, iteratee2) { + return array && array.length ? baseUniq(array, getIteratee(iteratee2, 2)) : []; + } + function uniqWith(array, comparator) { + comparator = typeof comparator == "function" ? comparator : undefined2; + return array && array.length ? baseUniq(array, undefined2, comparator) : []; + } + function unzip2(array) { + if (!(array && array.length)) { + return []; + } + var length = 0; + array = arrayFilter(array, function(group) { + if (isArrayLikeObject(group)) { + length = nativeMax(group.length, length); + return true; + } + }); + return baseTimes(length, function(index) { + return arrayMap(array, baseProperty(index)); + }); + } + function unzipWith(array, iteratee2) { + if (!(array && array.length)) { + return []; + } + var result2 = unzip2(array); + if (iteratee2 == null) { + return result2; + } + return arrayMap(result2, function(group) { + return apply(iteratee2, undefined2, group); + }); + } + var without = baseRest(function(array, values2) { + return isArrayLikeObject(array) ? baseDifference(array, values2) : []; + }); + var xor = baseRest(function(arrays) { + return baseXor(arrayFilter(arrays, isArrayLikeObject)); + }); + var xorBy = baseRest(function(arrays) { + var iteratee2 = last(arrays); + if (isArrayLikeObject(iteratee2)) { + iteratee2 = undefined2; + } + return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee2, 2)); + }); + var xorWith = baseRest(function(arrays) { + var comparator = last(arrays); + comparator = typeof comparator == "function" ? comparator : undefined2; + return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined2, comparator); + }); + var zip = baseRest(unzip2); + function zipObject(props, values2) { + return baseZipObject(props || [], values2 || [], assignValue); + } + function zipObjectDeep(props, values2) { + return baseZipObject(props || [], values2 || [], baseSet); + } + var zipWith = baseRest(function(arrays) { + var length = arrays.length, iteratee2 = length > 1 ? arrays[length - 1] : undefined2; + iteratee2 = typeof iteratee2 == "function" ? (arrays.pop(), iteratee2) : undefined2; + return unzipWith(arrays, iteratee2); + }); + function chain(value) { + var result2 = lodash(value); + result2.__chain__ = true; + return result2; + } + function tap(value, interceptor) { + interceptor(value); + return value; + } + function thru(value, interceptor) { + return interceptor(value); + } + var wrapperAt = flatRest(function(paths) { + var length = paths.length, start4 = length ? paths[0] : 0, value = this.__wrapped__, interceptor = function(object) { + return baseAt(object, paths); + }; + if (length > 1 || this.__actions__.length || !(value instanceof LazyWrapper) || !isIndex(start4)) { + return this.thru(interceptor); + } + value = value.slice(start4, +start4 + (length ? 1 : 0)); + value.__actions__.push({ + "func": thru, + "args": [interceptor], + "thisArg": undefined2 + }); + return new LodashWrapper(value, this.__chain__).thru(function(array) { + if (length && !array.length) { + array.push(undefined2); + } + return array; + }); + }); + function wrapperChain() { + return chain(this); + } + function wrapperCommit() { + return new LodashWrapper(this.value(), this.__chain__); + } + function wrapperNext() { + if (this.__values__ === undefined2) { + this.__values__ = toArray2(this.value()); + } + var done = this.__index__ >= this.__values__.length, value = done ? undefined2 : this.__values__[this.__index__++]; + return { "done": done, "value": value }; + } + function wrapperToIterator() { + return this; + } + function wrapperPlant(value) { + var result2, parent2 = this; + while (parent2 instanceof baseLodash) { + var clone2 = wrapperClone(parent2); + clone2.__index__ = 0; + clone2.__values__ = undefined2; + if (result2) { + previous.__wrapped__ = clone2; + } else { + result2 = clone2; + } + var previous = clone2; + parent2 = parent2.__wrapped__; + } + previous.__wrapped__ = value; + return result2; + } + function wrapperReverse() { + var value = this.__wrapped__; + if (value instanceof LazyWrapper) { + var wrapped = value; + if (this.__actions__.length) { + wrapped = new LazyWrapper(this); + } + wrapped = wrapped.reverse(); + wrapped.__actions__.push({ + "func": thru, + "args": [reverse], + "thisArg": undefined2 + }); + return new LodashWrapper(wrapped, this.__chain__); + } + return this.thru(reverse); + } + function wrapperValue() { + return baseWrapperValue(this.__wrapped__, this.__actions__); + } + var countBy = createAggregator(function(result2, value, key) { + if (hasOwnProperty2.call(result2, key)) { + ++result2[key]; + } else { + baseAssignValue(result2, key, 1); + } + }); + function every(collection, predicate, guard) { + var func2 = isArray2(collection) ? arrayEvery : baseEvery; + if (guard && isIterateeCall(collection, predicate, guard)) { + predicate = undefined2; + } + return func2(collection, getIteratee(predicate, 3)); + } + function filter3(collection, predicate) { + var func2 = isArray2(collection) ? arrayFilter : baseFilter; + return func2(collection, getIteratee(predicate, 3)); + } + var find = createFind(findIndex); + var findLast4 = createFind(findLastIndex); + function flatMap(collection, iteratee2) { + return baseFlatten(map(collection, iteratee2), 1); + } + function flatMapDeep(collection, iteratee2) { + return baseFlatten(map(collection, iteratee2), INFINITY); + } + function flatMapDepth(collection, iteratee2, depth) { + depth = depth === undefined2 ? 1 : toInteger(depth); + return baseFlatten(map(collection, iteratee2), depth); + } + function forEach2(collection, iteratee2) { + var func2 = isArray2(collection) ? arrayEach : baseEach; + return func2(collection, getIteratee(iteratee2, 3)); + } + function forEachRight(collection, iteratee2) { + var func2 = isArray2(collection) ? arrayEachRight : baseEachRight; + return func2(collection, getIteratee(iteratee2, 3)); + } + var groupBy = createAggregator(function(result2, value, key) { + if (hasOwnProperty2.call(result2, key)) { + result2[key].push(value); + } else { + baseAssignValue(result2, key, [value]); + } + }); + function includes(collection, value, fromIndex, guard) { + collection = isArrayLike(collection) ? collection : values(collection); + fromIndex = fromIndex && !guard ? toInteger(fromIndex) : 0; + var length = collection.length; + if (fromIndex < 0) { + fromIndex = nativeMax(length + fromIndex, 0); + } + return isString2(collection) ? fromIndex <= length && collection.indexOf(value, fromIndex) > -1 : !!length && baseIndexOf(collection, value, fromIndex) > -1; + } + var invokeMap = baseRest(function(collection, path30, args3) { + var index = -1, isFunc = typeof path30 == "function", result2 = isArrayLike(collection) ? Array2(collection.length) : []; + baseEach(collection, function(value) { + result2[++index] = isFunc ? apply(path30, value, args3) : baseInvoke(value, path30, args3); + }); + return result2; + }); + var keyBy = createAggregator(function(result2, value, key) { + baseAssignValue(result2, key, value); + }); + function map(collection, iteratee2) { + var func2 = isArray2(collection) ? arrayMap : baseMap; + return func2(collection, getIteratee(iteratee2, 3)); + } + function orderBy(collection, iteratees, orders, guard) { + if (collection == null) { + return []; + } + if (!isArray2(iteratees)) { + iteratees = iteratees == null ? [] : [iteratees]; + } + orders = guard ? undefined2 : orders; + if (!isArray2(orders)) { + orders = orders == null ? [] : [orders]; + } + return baseOrderBy(collection, iteratees, orders); + } + var partition = createAggregator(function(result2, value, key) { + result2[key ? 0 : 1].push(value); + }, function() { + return [[], []]; + }); + function reduce(collection, iteratee2, accumulator) { + var func2 = isArray2(collection) ? arrayReduce : baseReduce, initAccum = arguments.length < 3; + return func2(collection, getIteratee(iteratee2, 4), accumulator, initAccum, baseEach); + } + function reduceRight(collection, iteratee2, accumulator) { + var func2 = isArray2(collection) ? arrayReduceRight : baseReduce, initAccum = arguments.length < 3; + return func2(collection, getIteratee(iteratee2, 4), accumulator, initAccum, baseEachRight); + } + function reject(collection, predicate) { + var func2 = isArray2(collection) ? arrayFilter : baseFilter; + return func2(collection, negate(getIteratee(predicate, 3))); + } + function sample(collection) { + var func2 = isArray2(collection) ? arraySample : baseSample; + return func2(collection); + } + function sampleSize(collection, n, guard) { + if (guard ? isIterateeCall(collection, n, guard) : n === undefined2) { + n = 1; + } else { + n = toInteger(n); + } + var func2 = isArray2(collection) ? arraySampleSize : baseSampleSize; + return func2(collection, n); + } + function shuffle(collection) { + var func2 = isArray2(collection) ? arrayShuffle : baseShuffle; + return func2(collection); + } + function size(collection) { + if (collection == null) { + return 0; + } + if (isArrayLike(collection)) { + return isString2(collection) ? stringSize(collection) : collection.length; + } + var tag = getTag(collection); + if (tag == mapTag || tag == setTag) { + return collection.size; + } + return baseKeys(collection).length; + } + function some(collection, predicate, guard) { + var func2 = isArray2(collection) ? arraySome : baseSome; + if (guard && isIterateeCall(collection, predicate, guard)) { + predicate = undefined2; + } + return func2(collection, getIteratee(predicate, 3)); + } + var sortBy = baseRest(function(collection, iteratees) { + if (collection == null) { + return []; + } + var length = iteratees.length; + if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) { + iteratees = []; + } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) { + iteratees = [iteratees[0]]; + } + return baseOrderBy(collection, baseFlatten(iteratees, 1), []); + }); + var now = ctxNow || function() { + return root.Date.now(); + }; + function after(n, func2) { + if (typeof func2 != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n < 1) { + return func2.apply(this, arguments); + } + }; + } + function ary(func2, n, guard) { + n = guard ? undefined2 : n; + n = func2 && n == null ? func2.length : n; + return createWrap(func2, WRAP_ARY_FLAG, undefined2, undefined2, undefined2, undefined2, n); + } + function before(n, func2) { + var result2; + if (typeof func2 != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n > 0) { + result2 = func2.apply(this, arguments); + } + if (n <= 1) { + func2 = undefined2; + } + return result2; + }; + } + var bind2 = baseRest(function(func2, thisArg, partials) { + var bitmask = WRAP_BIND_FLAG; + if (partials.length) { + var holders = replaceHolders(partials, getHolder(bind2)); + bitmask |= WRAP_PARTIAL_FLAG; + } + return createWrap(func2, bitmask, thisArg, partials, holders); + }); + var bindKey = baseRest(function(object, key, partials) { + var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG; + if (partials.length) { + var holders = replaceHolders(partials, getHolder(bindKey)); + bitmask |= WRAP_PARTIAL_FLAG; + } + return createWrap(key, bitmask, object, partials, holders); + }); + function curry(func2, arity2, guard) { + arity2 = guard ? undefined2 : arity2; + var result2 = createWrap(func2, WRAP_CURRY_FLAG, undefined2, undefined2, undefined2, undefined2, undefined2, arity2); + result2.placeholder = curry.placeholder; + return result2; + } + function curryRight(func2, arity2, guard) { + arity2 = guard ? undefined2 : arity2; + var result2 = createWrap(func2, WRAP_CURRY_RIGHT_FLAG, undefined2, undefined2, undefined2, undefined2, undefined2, arity2); + result2.placeholder = curryRight.placeholder; + return result2; + } + function debounce4(func2, wait, options2) { + var lastArgs, lastThis, maxWait, result2, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true; + if (typeof func2 != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + wait = toNumber(wait) || 0; + if (isObject3(options2)) { + leading = !!options2.leading; + maxing = "maxWait" in options2; + maxWait = maxing ? nativeMax(toNumber(options2.maxWait) || 0, wait) : maxWait; + trailing = "trailing" in options2 ? !!options2.trailing : trailing; + } + function invokeFunc(time) { + var args3 = lastArgs, thisArg = lastThis; + lastArgs = lastThis = undefined2; + lastInvokeTime = time; + result2 = func2.apply(thisArg, args3); + return result2; + } + function leadingEdge(time) { + lastInvokeTime = time; + timerId = setTimeout2(timerExpired, wait); + return leading ? invokeFunc(time) : result2; + } + function remainingWait(time) { + var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall; + return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting; + } + function shouldInvoke(time) { + var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime; + return lastCallTime === undefined2 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait; + } + function timerExpired() { + var time = now(); + if (shouldInvoke(time)) { + return trailingEdge(time); + } + timerId = setTimeout2(timerExpired, remainingWait(time)); + } + function trailingEdge(time) { + timerId = undefined2; + if (trailing && lastArgs) { + return invokeFunc(time); + } + lastArgs = lastThis = undefined2; + return result2; + } + function cancel() { + if (timerId !== undefined2) { + clearTimeout2(timerId); + } + lastInvokeTime = 0; + lastArgs = lastCallTime = lastThis = timerId = undefined2; + } + function flush() { + return timerId === undefined2 ? result2 : trailingEdge(now()); + } + function debounced() { + var time = now(), isInvoking = shouldInvoke(time); + lastArgs = arguments; + lastThis = this; + lastCallTime = time; + if (isInvoking) { + if (timerId === undefined2) { + return leadingEdge(lastCallTime); + } + if (maxing) { + clearTimeout2(timerId); + timerId = setTimeout2(timerExpired, wait); + return invokeFunc(lastCallTime); + } + } + if (timerId === undefined2) { + timerId = setTimeout2(timerExpired, wait); + } + return result2; + } + debounced.cancel = cancel; + debounced.flush = flush; + return debounced; + } + var defer2 = baseRest(function(func2, args3) { + return baseDelay(func2, 1, args3); + }); + var delay = baseRest(function(func2, wait, args3) { + return baseDelay(func2, toNumber(wait) || 0, args3); + }); + function flip(func2) { + return createWrap(func2, WRAP_FLIP_FLAG); + } + function memoize(func2, resolver) { + if (typeof func2 != "function" || resolver != null && typeof resolver != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + var memoized = function() { + var args3 = arguments, key = resolver ? resolver.apply(this, args3) : args3[0], cache = memoized.cache; + if (cache.has(key)) { + return cache.get(key); + } + var result2 = func2.apply(this, args3); + memoized.cache = cache.set(key, result2) || cache; + return result2; + }; + memoized.cache = new (memoize.Cache || MapCache)(); + return memoized; + } + memoize.Cache = MapCache; + function negate(predicate) { + if (typeof predicate != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + return function() { + var args3 = arguments; + switch (args3.length) { + case 0: + return !predicate.call(this); + case 1: + return !predicate.call(this, args3[0]); + case 2: + return !predicate.call(this, args3[0], args3[1]); + case 3: + return !predicate.call(this, args3[0], args3[1], args3[2]); + } + return !predicate.apply(this, args3); + }; + } + function once(func2) { + return before(2, func2); + } + var overArgs = castRest(function(func2, transforms) { + transforms = transforms.length == 1 && isArray2(transforms[0]) ? arrayMap(transforms[0], baseUnary(getIteratee())) : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee())); + var funcsLength = transforms.length; + return baseRest(function(args3) { + var index = -1, length = nativeMin(args3.length, funcsLength); + while (++index < length) { + args3[index] = transforms[index].call(this, args3[index]); + } + return apply(func2, this, args3); + }); + }); + var partial = baseRest(function(func2, partials) { + var holders = replaceHolders(partials, getHolder(partial)); + return createWrap(func2, WRAP_PARTIAL_FLAG, undefined2, partials, holders); + }); + var partialRight = baseRest(function(func2, partials) { + var holders = replaceHolders(partials, getHolder(partialRight)); + return createWrap(func2, WRAP_PARTIAL_RIGHT_FLAG, undefined2, partials, holders); + }); + var rearg = flatRest(function(func2, indexes) { + return createWrap(func2, WRAP_REARG_FLAG, undefined2, undefined2, undefined2, indexes); + }); + function rest(func2, start4) { + if (typeof func2 != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + start4 = start4 === undefined2 ? start4 : toInteger(start4); + return baseRest(func2, start4); + } + function spread3(func2, start4) { + if (typeof func2 != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + start4 = start4 == null ? 0 : nativeMax(toInteger(start4), 0); + return baseRest(function(args3) { + var array = args3[start4], otherArgs = castSlice(args3, 0, start4); + if (array) { + arrayPush(otherArgs, array); + } + return apply(func2, this, otherArgs); + }); + } + function throttle5(func2, wait, options2) { + var leading = true, trailing = true; + if (typeof func2 != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + if (isObject3(options2)) { + leading = "leading" in options2 ? !!options2.leading : leading; + trailing = "trailing" in options2 ? !!options2.trailing : trailing; + } + return debounce4(func2, wait, { + "leading": leading, + "maxWait": wait, + "trailing": trailing + }); + } + function unary(func2) { + return ary(func2, 1); + } + function wrap2(value, wrapper) { + return partial(castFunction(wrapper), value); + } + function castArray() { + if (!arguments.length) { + return []; + } + var value = arguments[0]; + return isArray2(value) ? value : [value]; + } + function clone(value) { + return baseClone(value, CLONE_SYMBOLS_FLAG); + } + function cloneWith(value, customizer) { + customizer = typeof customizer == "function" ? customizer : undefined2; + return baseClone(value, CLONE_SYMBOLS_FLAG, customizer); + } + function cloneDeep(value) { + return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); + } + function cloneDeepWith(value, customizer) { + customizer = typeof customizer == "function" ? customizer : undefined2; + return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); + } + function conformsTo(object, source2) { + return source2 == null || baseConformsTo(object, source2, keys(source2)); + } + function eq(value, other) { + return value === other || value !== value && other !== other; + } + var gt = createRelationalOperation(baseGt); + var gte = createRelationalOperation(function(value, other) { + return value >= other; + }); + var isArguments = baseIsArguments(function() { + return arguments; + }()) ? baseIsArguments : function(value) { + return isObjectLike(value) && hasOwnProperty2.call(value, "callee") && !propertyIsEnumerable.call(value, "callee"); + }; + var isArray2 = Array2.isArray; + var isArrayBuffer2 = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer; + function isArrayLike(value) { + return value != null && isLength(value.length) && !isFunction2(value); + } + function isArrayLikeObject(value) { + return isObjectLike(value) && isArrayLike(value); + } + function isBoolean2(value) { + return value === true || value === false || isObjectLike(value) && baseGetTag(value) == boolTag; + } + var isBuffer2 = nativeIsBuffer || stubFalse; + var isDate2 = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate; + function isElement(value) { + return isObjectLike(value) && value.nodeType === 1 && !isPlainObject2(value); + } + function isEmpty(value) { + if (value == null) { + return true; + } + if (isArrayLike(value) && (isArray2(value) || typeof value == "string" || typeof value.splice == "function" || isBuffer2(value) || isTypedArray2(value) || isArguments(value))) { + return !value.length; + } + var tag = getTag(value); + if (tag == mapTag || tag == setTag) { + return !value.size; + } + if (isPrototype(value)) { + return !baseKeys(value).length; + } + for (var key in value) { + if (hasOwnProperty2.call(value, key)) { + return false; + } + } + return true; + } + function isEqual(value, other) { + return baseIsEqual(value, other); + } + function isEqualWith(value, other, customizer) { + customizer = typeof customizer == "function" ? customizer : undefined2; + var result2 = customizer ? customizer(value, other) : undefined2; + return result2 === undefined2 ? baseIsEqual(value, other, undefined2, customizer) : !!result2; + } + function isError4(value) { + if (!isObjectLike(value)) { + return false; + } + var tag = baseGetTag(value); + return tag == errorTag || tag == domExcTag || typeof value.message == "string" && typeof value.name == "string" && !isPlainObject2(value); + } + function isFinite2(value) { + return typeof value == "number" && nativeIsFinite(value); + } + function isFunction2(value) { + if (!isObject3(value)) { + return false; + } + var tag = baseGetTag(value); + return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; + } + function isInteger(value) { + return typeof value == "number" && value == toInteger(value); + } + function isLength(value) { + return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; + } + function isObject3(value) { + var type2 = typeof value; + return value != null && (type2 == "object" || type2 == "function"); + } + function isObjectLike(value) { + return value != null && typeof value == "object"; + } + var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; + function isMatch(object, source2) { + return object === source2 || baseIsMatch(object, source2, getMatchData(source2)); + } + function isMatchWith(object, source2, customizer) { + customizer = typeof customizer == "function" ? customizer : undefined2; + return baseIsMatch(object, source2, getMatchData(source2), customizer); + } + function isNaN2(value) { + return isNumber2(value) && value != +value; + } + function isNative(value) { + if (isMaskable(value)) { + throw new Error2(CORE_ERROR_TEXT); + } + return baseIsNative(value); + } + function isNull(value) { + return value === null; + } + function isNil(value) { + return value == null; + } + function isNumber2(value) { + return typeof value == "number" || isObjectLike(value) && baseGetTag(value) == numberTag; + } + function isPlainObject2(value) { + if (!isObjectLike(value) || baseGetTag(value) != objectTag) { + return false; + } + var proto = getPrototype(value); + if (proto === null) { + return true; + } + var Ctor = hasOwnProperty2.call(proto, "constructor") && proto.constructor; + return typeof Ctor == "function" && Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString; + } + var isRegExp2 = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; + function isSafeInteger(value) { + return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER; + } + var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; + function isString2(value) { + return typeof value == "string" || !isArray2(value) && isObjectLike(value) && baseGetTag(value) == stringTag; + } + function isSymbol(value) { + return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag; + } + var isTypedArray2 = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; + function isUndefined2(value) { + return value === undefined2; + } + function isWeakMap(value) { + return isObjectLike(value) && getTag(value) == weakMapTag; + } + function isWeakSet(value) { + return isObjectLike(value) && baseGetTag(value) == weakSetTag; + } + var lt = createRelationalOperation(baseLt); + var lte = createRelationalOperation(function(value, other) { + return value <= other; + }); + function toArray2(value) { + if (!value) { + return []; + } + if (isArrayLike(value)) { + return isString2(value) ? stringToArray(value) : copyArray(value); + } + if (symIterator && value[symIterator]) { + return iteratorToArray(value[symIterator]()); + } + var tag = getTag(value), func2 = tag == mapTag ? mapToArray : tag == setTag ? setToArray : values; + return func2(value); + } + function toFinite(value) { + if (!value) { + return value === 0 ? value : 0; + } + value = toNumber(value); + if (value === INFINITY || value === -INFINITY) { + var sign = value < 0 ? -1 : 1; + return sign * MAX_INTEGER; + } + return value === value ? value : 0; + } + function toInteger(value) { + var result2 = toFinite(value), remainder = result2 % 1; + return result2 === result2 ? remainder ? result2 - remainder : result2 : 0; + } + function toLength(value) { + return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0; + } + function toNumber(value) { + if (typeof value == "number") { + return value; + } + if (isSymbol(value)) { + return NAN; + } + if (isObject3(value)) { + var other = typeof value.valueOf == "function" ? value.valueOf() : value; + value = isObject3(other) ? other + "" : other; + } + if (typeof value != "string") { + return value === 0 ? value : +value; + } + value = baseTrim(value); + var isBinary = reIsBinary.test(value); + return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; + } + function toPlainObject(value) { + return copyObject(value, keysIn(value)); + } + function toSafeInteger(value) { + return value ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) : value === 0 ? value : 0; + } + function toString3(value) { + return value == null ? "" : baseToString(value); + } + var assign = createAssigner(function(object, source2) { + if (isPrototype(source2) || isArrayLike(source2)) { + copyObject(source2, keys(source2), object); + return; + } + for (var key in source2) { + if (hasOwnProperty2.call(source2, key)) { + assignValue(object, key, source2[key]); + } + } + }); + var assignIn = createAssigner(function(object, source2) { + copyObject(source2, keysIn(source2), object); + }); + var assignInWith = createAssigner(function(object, source2, srcIndex, customizer) { + copyObject(source2, keysIn(source2), object, customizer); + }); + var assignWith = createAssigner(function(object, source2, srcIndex, customizer) { + copyObject(source2, keys(source2), object, customizer); + }); + var at = flatRest(baseAt); + function create2(prototype3, properties2) { + var result2 = baseCreate(prototype3); + return properties2 == null ? result2 : baseAssign(result2, properties2); + } + var defaults4 = baseRest(function(object, sources) { + object = Object2(object); + var index = -1; + var length = sources.length; + var guard = length > 2 ? sources[2] : undefined2; + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + length = 1; + } + while (++index < length) { + var source2 = sources[index]; + var props = keysIn(source2); + var propsIndex = -1; + var propsLength = props.length; + while (++propsIndex < propsLength) { + var key = props[propsIndex]; + var value = object[key]; + if (value === undefined2 || eq(value, objectProto[key]) && !hasOwnProperty2.call(object, key)) { + object[key] = source2[key]; + } + } + } + return object; + }); + var defaultsDeep = baseRest(function(args3) { + args3.push(undefined2, customDefaultsMerge); + return apply(mergeWith, undefined2, args3); + }); + function findKey2(object, predicate) { + return baseFindKey(object, getIteratee(predicate, 3), baseForOwn); + } + function findLastKey(object, predicate) { + return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight); + } + function forIn(object, iteratee2) { + return object == null ? object : baseFor(object, getIteratee(iteratee2, 3), keysIn); + } + function forInRight(object, iteratee2) { + return object == null ? object : baseForRight(object, getIteratee(iteratee2, 3), keysIn); + } + function forOwn(object, iteratee2) { + return object && baseForOwn(object, getIteratee(iteratee2, 3)); + } + function forOwnRight(object, iteratee2) { + return object && baseForOwnRight(object, getIteratee(iteratee2, 3)); + } + function functions(object) { + return object == null ? [] : baseFunctions(object, keys(object)); + } + function functionsIn(object) { + return object == null ? [] : baseFunctions(object, keysIn(object)); + } + function get(object, path30, defaultValue) { + var result2 = object == null ? undefined2 : baseGet(object, path30); + return result2 === undefined2 ? defaultValue : result2; + } + function has(object, path30) { + return object != null && hasPath(object, path30, baseHas); + } + function hasIn(object, path30) { + return object != null && hasPath(object, path30, baseHasIn); + } + var invert = createInverter(function(result2, value, key) { + if (value != null && typeof value.toString != "function") { + value = nativeObjectToString.call(value); + } + result2[value] = key; + }, constant(identity2)); + var invertBy = createInverter(function(result2, value, key) { + if (value != null && typeof value.toString != "function") { + value = nativeObjectToString.call(value); + } + if (hasOwnProperty2.call(result2, value)) { + result2[value].push(key); + } else { + result2[value] = [key]; + } + }, getIteratee); + var invoke = baseRest(baseInvoke); + function keys(object) { + return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); + } + function keysIn(object) { + return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); + } + function mapKeys(object, iteratee2) { + var result2 = {}; + iteratee2 = getIteratee(iteratee2, 3); + baseForOwn(object, function(value, key, object2) { + baseAssignValue(result2, iteratee2(value, key, object2), value); + }); + return result2; + } + function mapValues(object, iteratee2) { + var result2 = {}; + iteratee2 = getIteratee(iteratee2, 3); + baseForOwn(object, function(value, key, object2) { + baseAssignValue(result2, key, iteratee2(value, key, object2)); + }); + return result2; + } + var merge3 = createAssigner(function(object, source2, srcIndex) { + baseMerge(object, source2, srcIndex); + }); + var mergeWith = createAssigner(function(object, source2, srcIndex, customizer) { + baseMerge(object, source2, srcIndex, customizer); + }); + var omit2 = flatRest(function(object, paths) { + var result2 = {}; + if (object == null) { + return result2; + } + var isDeep = false; + paths = arrayMap(paths, function(path30) { + path30 = castPath(path30, object); + isDeep || (isDeep = path30.length > 1); + return path30; + }); + copyObject(object, getAllKeysIn(object), result2); + if (isDeep) { + result2 = baseClone(result2, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone); + } + var length = paths.length; + while (length--) { + baseUnset(result2, paths[length]); + } + return result2; + }); + function omitBy(object, predicate) { + return pickBy(object, negate(getIteratee(predicate))); + } + var pick = flatRest(function(object, paths) { + return object == null ? {} : basePick(object, paths); + }); + function pickBy(object, predicate) { + if (object == null) { + return {}; + } + var props = arrayMap(getAllKeysIn(object), function(prop) { + return [prop]; + }); + predicate = getIteratee(predicate); + return basePickBy(object, props, function(value, path30) { + return predicate(value, path30[0]); + }); + } + function result(object, path30, defaultValue) { + path30 = castPath(path30, object); + var index = -1, length = path30.length; + if (!length) { + length = 1; + object = undefined2; + } + while (++index < length) { + var value = object == null ? undefined2 : object[toKey(path30[index])]; + if (value === undefined2) { + index = length; + value = defaultValue; + } + object = isFunction2(value) ? value.call(object) : value; + } + return object; + } + function set(object, path30, value) { + return object == null ? object : baseSet(object, path30, value); + } + function setWith(object, path30, value, customizer) { + customizer = typeof customizer == "function" ? customizer : undefined2; + return object == null ? object : baseSet(object, path30, value, customizer); + } + var toPairs = createToPairs(keys); + var toPairsIn = createToPairs(keysIn); + function transform(object, iteratee2, accumulator) { + var isArr = isArray2(object), isArrLike = isArr || isBuffer2(object) || isTypedArray2(object); + iteratee2 = getIteratee(iteratee2, 4); + if (accumulator == null) { + var Ctor = object && object.constructor; + if (isArrLike) { + accumulator = isArr ? new Ctor() : []; + } else if (isObject3(object)) { + accumulator = isFunction2(Ctor) ? baseCreate(getPrototype(object)) : {}; + } else { + accumulator = {}; + } + } + (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object2) { + return iteratee2(accumulator, value, index, object2); + }); + return accumulator; + } + function unset(object, path30) { + return object == null ? true : baseUnset(object, path30); + } + function update(object, path30, updater) { + return object == null ? object : baseUpdate(object, path30, castFunction(updater)); + } + function updateWith(object, path30, updater, customizer) { + customizer = typeof customizer == "function" ? customizer : undefined2; + return object == null ? object : baseUpdate(object, path30, castFunction(updater), customizer); + } + function values(object) { + return object == null ? [] : baseValues(object, keys(object)); + } + function valuesIn(object) { + return object == null ? [] : baseValues(object, keysIn(object)); + } + function clamp(number, lower, upper) { + if (upper === undefined2) { + upper = lower; + lower = undefined2; + } + if (upper !== undefined2) { + upper = toNumber(upper); + upper = upper === upper ? upper : 0; + } + if (lower !== undefined2) { + lower = toNumber(lower); + lower = lower === lower ? lower : 0; + } + return baseClamp(toNumber(number), lower, upper); + } + function inRange(number, start4, end) { + start4 = toFinite(start4); + if (end === undefined2) { + end = start4; + start4 = 0; + } else { + end = toFinite(end); + } + number = toNumber(number); + return baseInRange(number, start4, end); + } + function random(lower, upper, floating) { + if (floating && typeof floating != "boolean" && isIterateeCall(lower, upper, floating)) { + upper = floating = undefined2; + } + if (floating === undefined2) { + if (typeof upper == "boolean") { + floating = upper; + upper = undefined2; + } else if (typeof lower == "boolean") { + floating = lower; + lower = undefined2; + } + } + if (lower === undefined2 && upper === undefined2) { + lower = 0; + upper = 1; + } else { + lower = toFinite(lower); + if (upper === undefined2) { + upper = lower; + lower = 0; + } else { + upper = toFinite(upper); + } + } + if (lower > upper) { + var temp = lower; + lower = upper; + upper = temp; + } + if (floating || lower % 1 || upper % 1) { + var rand = nativeRandom(); + return nativeMin(lower + rand * (upper - lower + freeParseFloat("1e-" + ((rand + "").length - 1))), upper); + } + return baseRandom(lower, upper); + } + var camelCase2 = createCompounder(function(result2, word, index) { + word = word.toLowerCase(); + return result2 + (index ? capitalize(word) : word); + }); + function capitalize(string) { + return upperFirst(toString3(string).toLowerCase()); + } + function deburr(string) { + string = toString3(string); + return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ""); + } + function endsWith2(string, target, position) { + string = toString3(string); + target = baseToString(target); + var length = string.length; + position = position === undefined2 ? length : baseClamp(toInteger(position), 0, length); + var end = position; + position -= target.length; + return position >= 0 && string.slice(position, end) == target; + } + function escape4(string) { + string = toString3(string); + return string && reHasUnescapedHtml.test(string) ? string.replace(reUnescapedHtml, escapeHtmlChar) : string; + } + function escapeRegExp(string) { + string = toString3(string); + return string && reHasRegExpChar.test(string) ? string.replace(reRegExpChar, "\\$&") : string; + } + var kebabCase = createCompounder(function(result2, word, index) { + return result2 + (index ? "-" : "") + word.toLowerCase(); + }); + var lowerCase = createCompounder(function(result2, word, index) { + return result2 + (index ? " " : "") + word.toLowerCase(); + }); + var lowerFirst = createCaseFirst("toLowerCase"); + function pad(string, length, chars) { + string = toString3(string); + length = toInteger(length); + var strLength = length ? stringSize(string) : 0; + if (!length || strLength >= length) { + return string; + } + var mid = (length - strLength) / 2; + return createPadding(nativeFloor(mid), chars) + string + createPadding(nativeCeil(mid), chars); + } + function padEnd(string, length, chars) { + string = toString3(string); + length = toInteger(length); + var strLength = length ? stringSize(string) : 0; + return length && strLength < length ? string + createPadding(length - strLength, chars) : string; + } + function padStart(string, length, chars) { + string = toString3(string); + length = toInteger(length); + var strLength = length ? stringSize(string) : 0; + return length && strLength < length ? createPadding(length - strLength, chars) + string : string; + } + function parseInt2(string, radix, guard) { + if (guard || radix == null) { + radix = 0; + } else if (radix) { + radix = +radix; + } + return nativeParseInt(toString3(string).replace(reTrimStart, ""), radix || 0); + } + function repeat(string, n, guard) { + if (guard ? isIterateeCall(string, n, guard) : n === undefined2) { + n = 1; + } else { + n = toInteger(n); + } + return baseRepeat(toString3(string), n); + } + function replace() { + var args3 = arguments, string = toString3(args3[0]); + return args3.length < 3 ? string : string.replace(args3[1], args3[2]); + } + var snakeCase = createCompounder(function(result2, word, index) { + return result2 + (index ? "_" : "") + word.toLowerCase(); + }); + function split(string, separator, limit) { + if (limit && typeof limit != "number" && isIterateeCall(string, separator, limit)) { + separator = limit = undefined2; + } + limit = limit === undefined2 ? MAX_ARRAY_LENGTH : limit >>> 0; + if (!limit) { + return []; + } + string = toString3(string); + if (string && (typeof separator == "string" || separator != null && !isRegExp2(separator))) { + separator = baseToString(separator); + if (!separator && hasUnicode(string)) { + return castSlice(stringToArray(string), 0, limit); + } + } + return string.split(separator, limit); + } + var startCase = createCompounder(function(result2, word, index) { + return result2 + (index ? " " : "") + upperFirst(word); + }); + function startsWith(string, target, position) { + string = toString3(string); + position = position == null ? 0 : baseClamp(toInteger(position), 0, string.length); + target = baseToString(target); + return string.slice(position, position + target.length) == target; + } + function template(string, options2, guard) { + var settings = lodash.templateSettings; + if (guard && isIterateeCall(string, options2, guard)) { + options2 = undefined2; + } + string = toString3(string); + options2 = assignInWith({}, options2, settings, customDefaultsAssignIn); + var imports = assignInWith({}, options2.imports, settings.imports, customDefaultsAssignIn), importsKeys = keys(imports), importsValues = baseValues(imports, importsKeys); + var isEscaping, isEvaluating, index = 0, interpolate = options2.interpolate || reNoMatch, source2 = "__p += '"; + var reDelimiters = RegExp2( + (options2.escape || reNoMatch).source + "|" + interpolate.source + "|" + (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + "|" + (options2.evaluate || reNoMatch).source + "|$", + "g" + ); + var sourceURL = "//# sourceURL=" + (hasOwnProperty2.call(options2, "sourceURL") ? (options2.sourceURL + "").replace(/\s/g, " ") : "lodash.templateSources[" + ++templateCounter + "]") + "\n"; + string.replace(reDelimiters, function(match2, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) { + interpolateValue || (interpolateValue = esTemplateValue); + source2 += string.slice(index, offset).replace(reUnescapedString, escapeStringChar); + if (escapeValue) { + isEscaping = true; + source2 += "' +\n__e(" + escapeValue + ") +\n'"; + } + if (evaluateValue) { + isEvaluating = true; + source2 += "';\n" + evaluateValue + ";\n__p += '"; + } + if (interpolateValue) { + source2 += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'"; + } + index = offset + match2.length; + return match2; + }); + source2 += "';\n"; + var variable = hasOwnProperty2.call(options2, "variable") && options2.variable; + if (!variable) { + source2 = "with (obj) {\n" + source2 + "\n}\n"; + } else if (reForbiddenIdentifierChars.test(variable)) { + throw new Error2(INVALID_TEMPL_VAR_ERROR_TEXT); + } + source2 = (isEvaluating ? source2.replace(reEmptyStringLeading, "") : source2).replace(reEmptyStringMiddle, "$1").replace(reEmptyStringTrailing, "$1;"); + source2 = "function(" + (variable || "obj") + ") {\n" + (variable ? "" : "obj || (obj = {});\n") + "var __t, __p = ''" + (isEscaping ? ", __e = _.escape" : "") + (isEvaluating ? ", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n" : ";\n") + source2 + "return __p\n}"; + var result2 = attempt(function() { + return Function2(importsKeys, sourceURL + "return " + source2).apply(undefined2, importsValues); + }); + result2.source = source2; + if (isError4(result2)) { + throw result2; + } + return result2; + } + function toLower(value) { + return toString3(value).toLowerCase(); + } + function toUpper(value) { + return toString3(value).toUpperCase(); + } + function trim2(string, chars, guard) { + string = toString3(string); + if (string && (guard || chars === undefined2)) { + return baseTrim(string); + } + if (!string || !(chars = baseToString(chars))) { + return string; + } + var strSymbols = stringToArray(string), chrSymbols = stringToArray(chars), start4 = charsStartIndex(strSymbols, chrSymbols), end = charsEndIndex(strSymbols, chrSymbols) + 1; + return castSlice(strSymbols, start4, end).join(""); + } + function trimEnd2(string, chars, guard) { + string = toString3(string); + if (string && (guard || chars === undefined2)) { + return string.slice(0, trimmedEndIndex(string) + 1); + } + if (!string || !(chars = baseToString(chars))) { + return string; + } + var strSymbols = stringToArray(string), end = charsEndIndex(strSymbols, stringToArray(chars)) + 1; + return castSlice(strSymbols, 0, end).join(""); + } + function trimStart(string, chars, guard) { + string = toString3(string); + if (string && (guard || chars === undefined2)) { + return string.replace(reTrimStart, ""); + } + if (!string || !(chars = baseToString(chars))) { + return string; + } + var strSymbols = stringToArray(string), start4 = charsStartIndex(strSymbols, stringToArray(chars)); + return castSlice(strSymbols, start4).join(""); + } + function truncate(string, options2) { + var length = DEFAULT_TRUNC_LENGTH, omission = DEFAULT_TRUNC_OMISSION; + if (isObject3(options2)) { + var separator = "separator" in options2 ? options2.separator : separator; + length = "length" in options2 ? toInteger(options2.length) : length; + omission = "omission" in options2 ? baseToString(options2.omission) : omission; + } + string = toString3(string); + var strLength = string.length; + if (hasUnicode(string)) { + var strSymbols = stringToArray(string); + strLength = strSymbols.length; + } + if (length >= strLength) { + return string; + } + var end = length - stringSize(omission); + if (end < 1) { + return omission; + } + var result2 = strSymbols ? castSlice(strSymbols, 0, end).join("") : string.slice(0, end); + if (separator === undefined2) { + return result2 + omission; + } + if (strSymbols) { + end += result2.length - end; + } + if (isRegExp2(separator)) { + if (string.slice(end).search(separator)) { + var match2, substring = result2; + if (!separator.global) { + separator = RegExp2(separator.source, toString3(reFlags.exec(separator)) + "g"); + } + separator.lastIndex = 0; + while (match2 = separator.exec(substring)) { + var newEnd = match2.index; + } + result2 = result2.slice(0, newEnd === undefined2 ? end : newEnd); + } + } else if (string.indexOf(baseToString(separator), end) != end) { + var index = result2.lastIndexOf(separator); + if (index > -1) { + result2 = result2.slice(0, index); + } + } + return result2 + omission; + } + function unescape4(string) { + string = toString3(string); + return string && reHasEscapedHtml.test(string) ? string.replace(reEscapedHtml, unescapeHtmlChar) : string; + } + var upperCase = createCompounder(function(result2, word, index) { + return result2 + (index ? " " : "") + word.toUpperCase(); + }); + var upperFirst = createCaseFirst("toUpperCase"); + function words(string, pattern, guard) { + string = toString3(string); + pattern = guard ? undefined2 : pattern; + if (pattern === undefined2) { + return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string); + } + return string.match(pattern) || []; + } + var attempt = baseRest(function(func2, args3) { + try { + return apply(func2, undefined2, args3); + } catch (e) { + return isError4(e) ? e : new Error2(e); + } + }); + var bindAll = flatRest(function(object, methodNames) { + arrayEach(methodNames, function(key) { + key = toKey(key); + baseAssignValue(object, key, bind2(object[key], object)); + }); + return object; + }); + function cond(pairs) { + var length = pairs == null ? 0 : pairs.length, toIteratee = getIteratee(); + pairs = !length ? [] : arrayMap(pairs, function(pair) { + if (typeof pair[1] != "function") { + throw new TypeError2(FUNC_ERROR_TEXT); + } + return [toIteratee(pair[0]), pair[1]]; + }); + return baseRest(function(args3) { + var index = -1; + while (++index < length) { + var pair = pairs[index]; + if (apply(pair[0], this, args3)) { + return apply(pair[1], this, args3); + } + } + }); + } + function conforms(source2) { + return baseConforms(baseClone(source2, CLONE_DEEP_FLAG)); + } + function constant(value) { + return function() { + return value; + }; + } + function defaultTo(value, defaultValue) { + return value == null || value !== value ? defaultValue : value; + } + var flow = createFlow(); + var flowRight = createFlow(true); + function identity2(value) { + return value; + } + function iteratee(func2) { + return baseIteratee(typeof func2 == "function" ? func2 : baseClone(func2, CLONE_DEEP_FLAG)); + } + function matches(source2) { + return baseMatches(baseClone(source2, CLONE_DEEP_FLAG)); + } + function matchesProperty(path30, srcValue) { + return baseMatchesProperty(path30, baseClone(srcValue, CLONE_DEEP_FLAG)); + } + var method = baseRest(function(path30, args3) { + return function(object) { + return baseInvoke(object, path30, args3); + }; + }); + var methodOf = baseRest(function(object, args3) { + return function(path30) { + return baseInvoke(object, path30, args3); + }; + }); + function mixin(object, source2, options2) { + var props = keys(source2), methodNames = baseFunctions(source2, props); + if (options2 == null && !(isObject3(source2) && (methodNames.length || !props.length))) { + options2 = source2; + source2 = object; + object = this; + methodNames = baseFunctions(source2, keys(source2)); + } + var chain2 = !(isObject3(options2) && "chain" in options2) || !!options2.chain, isFunc = isFunction2(object); + arrayEach(methodNames, function(methodName) { + var func2 = source2[methodName]; + object[methodName] = func2; + if (isFunc) { + object.prototype[methodName] = function() { + var chainAll = this.__chain__; + if (chain2 || chainAll) { + var result2 = object(this.__wrapped__), actions2 = result2.__actions__ = copyArray(this.__actions__); + actions2.push({ "func": func2, "args": arguments, "thisArg": object }); + result2.__chain__ = chainAll; + return result2; + } + return func2.apply(object, arrayPush([this.value()], arguments)); + }; + } + }); + return object; + } + function noConflict() { + if (root._ === this) { + root._ = oldDash; + } + return this; + } + function noop2() { + } + function nthArg(n) { + n = toInteger(n); + return baseRest(function(args3) { + return baseNth(args3, n); + }); + } + var over = createOver(arrayMap); + var overEvery = createOver(arrayEvery); + var overSome = createOver(arraySome); + function property(path30) { + return isKey(path30) ? baseProperty(toKey(path30)) : basePropertyDeep(path30); + } + function propertyOf(object) { + return function(path30) { + return object == null ? undefined2 : baseGet(object, path30); + }; + } + var range = createRange(); + var rangeRight = createRange(true); + function stubArray() { + return []; + } + function stubFalse() { + return false; + } + function stubObject() { + return {}; + } + function stubString() { + return ""; + } + function stubTrue() { + return true; + } + function times(n, iteratee2) { + n = toInteger(n); + if (n < 1 || n > MAX_SAFE_INTEGER) { + return []; + } + var index = MAX_ARRAY_LENGTH, length = nativeMin(n, MAX_ARRAY_LENGTH); + iteratee2 = getIteratee(iteratee2); + n -= MAX_ARRAY_LENGTH; + var result2 = baseTimes(length, iteratee2); + while (++index < n) { + iteratee2(index); + } + return result2; + } + function toPath(value) { + if (isArray2(value)) { + return arrayMap(value, toKey); + } + return isSymbol(value) ? [value] : copyArray(stringToPath(toString3(value))); + } + function uniqueId(prefix) { + var id = ++idCounter; + return toString3(prefix) + id; + } + var add = createMathOperation(function(augend, addend) { + return augend + addend; + }, 0); + var ceil = createRound("ceil"); + var divide = createMathOperation(function(dividend, divisor) { + return dividend / divisor; + }, 1); + var floor = createRound("floor"); + function max(array) { + return array && array.length ? baseExtremum(array, identity2, baseGt) : undefined2; + } + function maxBy(array, iteratee2) { + return array && array.length ? baseExtremum(array, getIteratee(iteratee2, 2), baseGt) : undefined2; + } + function mean(array) { + return baseMean(array, identity2); + } + function meanBy(array, iteratee2) { + return baseMean(array, getIteratee(iteratee2, 2)); + } + function min(array) { + return array && array.length ? baseExtremum(array, identity2, baseLt) : undefined2; + } + function minBy(array, iteratee2) { + return array && array.length ? baseExtremum(array, getIteratee(iteratee2, 2), baseLt) : undefined2; + } + var multiply = createMathOperation(function(multiplier, multiplicand) { + return multiplier * multiplicand; + }, 1); + var round = createRound("round"); + var subtract = createMathOperation(function(minuend, subtrahend) { + return minuend - subtrahend; + }, 0); + function sum(array) { + return array && array.length ? baseSum(array, identity2) : 0; + } + function sumBy(array, iteratee2) { + return array && array.length ? baseSum(array, getIteratee(iteratee2, 2)) : 0; + } + lodash.after = after; + lodash.ary = ary; + lodash.assign = assign; + lodash.assignIn = assignIn; + lodash.assignInWith = assignInWith; + lodash.assignWith = assignWith; + lodash.at = at; + lodash.before = before; + lodash.bind = bind2; + lodash.bindAll = bindAll; + lodash.bindKey = bindKey; + lodash.castArray = castArray; + lodash.chain = chain; + lodash.chunk = chunk; + lodash.compact = compact; + lodash.concat = concat; + lodash.cond = cond; + lodash.conforms = conforms; + lodash.constant = constant; + lodash.countBy = countBy; + lodash.create = create2; + lodash.curry = curry; + lodash.curryRight = curryRight; + lodash.debounce = debounce4; + lodash.defaults = defaults4; + lodash.defaultsDeep = defaultsDeep; + lodash.defer = defer2; + lodash.delay = delay; + lodash.difference = difference; + lodash.differenceBy = differenceBy; + lodash.differenceWith = differenceWith; + lodash.drop = drop; + lodash.dropRight = dropRight; + lodash.dropRightWhile = dropRightWhile; + lodash.dropWhile = dropWhile; + lodash.fill = fill; + lodash.filter = filter3; + lodash.flatMap = flatMap; + lodash.flatMapDeep = flatMapDeep; + lodash.flatMapDepth = flatMapDepth; + lodash.flatten = flatten; + lodash.flattenDeep = flattenDeep; + lodash.flattenDepth = flattenDepth; + lodash.flip = flip; + lodash.flow = flow; + lodash.flowRight = flowRight; + lodash.fromPairs = fromPairs; + lodash.functions = functions; + lodash.functionsIn = functionsIn; + lodash.groupBy = groupBy; + lodash.initial = initial; + lodash.intersection = intersection; + lodash.intersectionBy = intersectionBy; + lodash.intersectionWith = intersectionWith; + lodash.invert = invert; + lodash.invertBy = invertBy; + lodash.invokeMap = invokeMap; + lodash.iteratee = iteratee; + lodash.keyBy = keyBy; + lodash.keys = keys; + lodash.keysIn = keysIn; + lodash.map = map; + lodash.mapKeys = mapKeys; + lodash.mapValues = mapValues; + lodash.matches = matches; + lodash.matchesProperty = matchesProperty; + lodash.memoize = memoize; + lodash.merge = merge3; + lodash.mergeWith = mergeWith; + lodash.method = method; + lodash.methodOf = methodOf; + lodash.mixin = mixin; + lodash.negate = negate; + lodash.nthArg = nthArg; + lodash.omit = omit2; + lodash.omitBy = omitBy; + lodash.once = once; + lodash.orderBy = orderBy; + lodash.over = over; + lodash.overArgs = overArgs; + lodash.overEvery = overEvery; + lodash.overSome = overSome; + lodash.partial = partial; + lodash.partialRight = partialRight; + lodash.partition = partition; + lodash.pick = pick; + lodash.pickBy = pickBy; + lodash.property = property; + lodash.propertyOf = propertyOf; + lodash.pull = pull; + lodash.pullAll = pullAll; + lodash.pullAllBy = pullAllBy; + lodash.pullAllWith = pullAllWith; + lodash.pullAt = pullAt; + lodash.range = range; + lodash.rangeRight = rangeRight; + lodash.rearg = rearg; + lodash.reject = reject; + lodash.remove = remove; + lodash.rest = rest; + lodash.reverse = reverse; + lodash.sampleSize = sampleSize; + lodash.set = set; + lodash.setWith = setWith; + lodash.shuffle = shuffle; + lodash.slice = slice; + lodash.sortBy = sortBy; + lodash.sortedUniq = sortedUniq; + lodash.sortedUniqBy = sortedUniqBy; + lodash.split = split; + lodash.spread = spread3; + lodash.tail = tail; + lodash.take = take; + lodash.takeRight = takeRight; + lodash.takeRightWhile = takeRightWhile; + lodash.takeWhile = takeWhile; + lodash.tap = tap; + lodash.throttle = throttle5; + lodash.thru = thru; + lodash.toArray = toArray2; + lodash.toPairs = toPairs; + lodash.toPairsIn = toPairsIn; + lodash.toPath = toPath; + lodash.toPlainObject = toPlainObject; + lodash.transform = transform; + lodash.unary = unary; + lodash.union = union; + lodash.unionBy = unionBy; + lodash.unionWith = unionWith; + lodash.uniq = uniq2; + lodash.uniqBy = uniqBy; + lodash.uniqWith = uniqWith; + lodash.unset = unset; + lodash.unzip = unzip2; + lodash.unzipWith = unzipWith; + lodash.update = update; + lodash.updateWith = updateWith; + lodash.values = values; + lodash.valuesIn = valuesIn; + lodash.without = without; + lodash.words = words; + lodash.wrap = wrap2; + lodash.xor = xor; + lodash.xorBy = xorBy; + lodash.xorWith = xorWith; + lodash.zip = zip; + lodash.zipObject = zipObject; + lodash.zipObjectDeep = zipObjectDeep; + lodash.zipWith = zipWith; + lodash.entries = toPairs; + lodash.entriesIn = toPairsIn; + lodash.extend = assignIn; + lodash.extendWith = assignInWith; + mixin(lodash, lodash); + lodash.add = add; + lodash.attempt = attempt; + lodash.camelCase = camelCase2; + lodash.capitalize = capitalize; + lodash.ceil = ceil; + lodash.clamp = clamp; + lodash.clone = clone; + lodash.cloneDeep = cloneDeep; + lodash.cloneDeepWith = cloneDeepWith; + lodash.cloneWith = cloneWith; + lodash.conformsTo = conformsTo; + lodash.deburr = deburr; + lodash.defaultTo = defaultTo; + lodash.divide = divide; + lodash.endsWith = endsWith2; + lodash.eq = eq; + lodash.escape = escape4; + lodash.escapeRegExp = escapeRegExp; + lodash.every = every; + lodash.find = find; + lodash.findIndex = findIndex; + lodash.findKey = findKey2; + lodash.findLast = findLast4; + lodash.findLastIndex = findLastIndex; + lodash.findLastKey = findLastKey; + lodash.floor = floor; + lodash.forEach = forEach2; + lodash.forEachRight = forEachRight; + lodash.forIn = forIn; + lodash.forInRight = forInRight; + lodash.forOwn = forOwn; + lodash.forOwnRight = forOwnRight; + lodash.get = get; + lodash.gt = gt; + lodash.gte = gte; + lodash.has = has; + lodash.hasIn = hasIn; + lodash.head = head; + lodash.identity = identity2; + lodash.includes = includes; + lodash.indexOf = indexOf; + lodash.inRange = inRange; + lodash.invoke = invoke; + lodash.isArguments = isArguments; + lodash.isArray = isArray2; + lodash.isArrayBuffer = isArrayBuffer2; + lodash.isArrayLike = isArrayLike; + lodash.isArrayLikeObject = isArrayLikeObject; + lodash.isBoolean = isBoolean2; + lodash.isBuffer = isBuffer2; + lodash.isDate = isDate2; + lodash.isElement = isElement; + lodash.isEmpty = isEmpty; + lodash.isEqual = isEqual; + lodash.isEqualWith = isEqualWith; + lodash.isError = isError4; + lodash.isFinite = isFinite2; + lodash.isFunction = isFunction2; + lodash.isInteger = isInteger; + lodash.isLength = isLength; + lodash.isMap = isMap; + lodash.isMatch = isMatch; + lodash.isMatchWith = isMatchWith; + lodash.isNaN = isNaN2; + lodash.isNative = isNative; + lodash.isNil = isNil; + lodash.isNull = isNull; + lodash.isNumber = isNumber2; + lodash.isObject = isObject3; + lodash.isObjectLike = isObjectLike; + lodash.isPlainObject = isPlainObject2; + lodash.isRegExp = isRegExp2; + lodash.isSafeInteger = isSafeInteger; + lodash.isSet = isSet; + lodash.isString = isString2; + lodash.isSymbol = isSymbol; + lodash.isTypedArray = isTypedArray2; + lodash.isUndefined = isUndefined2; + lodash.isWeakMap = isWeakMap; + lodash.isWeakSet = isWeakSet; + lodash.join = join9; + lodash.kebabCase = kebabCase; + lodash.last = last; + lodash.lastIndexOf = lastIndexOf; + lodash.lowerCase = lowerCase; + lodash.lowerFirst = lowerFirst; + lodash.lt = lt; + lodash.lte = lte; + lodash.max = max; + lodash.maxBy = maxBy; + lodash.mean = mean; + lodash.meanBy = meanBy; + lodash.min = min; + lodash.minBy = minBy; + lodash.stubArray = stubArray; + lodash.stubFalse = stubFalse; + lodash.stubObject = stubObject; + lodash.stubString = stubString; + lodash.stubTrue = stubTrue; + lodash.multiply = multiply; + lodash.nth = nth; + lodash.noConflict = noConflict; + lodash.noop = noop2; + lodash.now = now; + lodash.pad = pad; + lodash.padEnd = padEnd; + lodash.padStart = padStart; + lodash.parseInt = parseInt2; + lodash.random = random; + lodash.reduce = reduce; + lodash.reduceRight = reduceRight; + lodash.repeat = repeat; + lodash.replace = replace; + lodash.result = result; + lodash.round = round; + lodash.runInContext = runInContext2; + lodash.sample = sample; + lodash.size = size; + lodash.snakeCase = snakeCase; + lodash.some = some; + lodash.sortedIndex = sortedIndex; + lodash.sortedIndexBy = sortedIndexBy; + lodash.sortedIndexOf = sortedIndexOf; + lodash.sortedLastIndex = sortedLastIndex; + lodash.sortedLastIndexBy = sortedLastIndexBy; + lodash.sortedLastIndexOf = sortedLastIndexOf; + lodash.startCase = startCase; + lodash.startsWith = startsWith; + lodash.subtract = subtract; + lodash.sum = sum; + lodash.sumBy = sumBy; + lodash.template = template; + lodash.times = times; + lodash.toFinite = toFinite; + lodash.toInteger = toInteger; + lodash.toLength = toLength; + lodash.toLower = toLower; + lodash.toNumber = toNumber; + lodash.toSafeInteger = toSafeInteger; + lodash.toString = toString3; + lodash.toUpper = toUpper; + lodash.trim = trim2; + lodash.trimEnd = trimEnd2; + lodash.trimStart = trimStart; + lodash.truncate = truncate; + lodash.unescape = unescape4; + lodash.uniqueId = uniqueId; + lodash.upperCase = upperCase; + lodash.upperFirst = upperFirst; + lodash.each = forEach2; + lodash.eachRight = forEachRight; + lodash.first = head; + mixin(lodash, function() { + var source2 = {}; + baseForOwn(lodash, function(func2, methodName) { + if (!hasOwnProperty2.call(lodash.prototype, methodName)) { + source2[methodName] = func2; + } + }); + return source2; + }(), { "chain": false }); + lodash.VERSION = VERSION4; + arrayEach(["bind", "bindKey", "curry", "curryRight", "partial", "partialRight"], function(methodName) { + lodash[methodName].placeholder = lodash; + }); + arrayEach(["drop", "take"], function(methodName, index) { + LazyWrapper.prototype[methodName] = function(n) { + n = n === undefined2 ? 1 : nativeMax(toInteger(n), 0); + var result2 = this.__filtered__ && !index ? new LazyWrapper(this) : this.clone(); + if (result2.__filtered__) { + result2.__takeCount__ = nativeMin(n, result2.__takeCount__); + } else { + result2.__views__.push({ + "size": nativeMin(n, MAX_ARRAY_LENGTH), + "type": methodName + (result2.__dir__ < 0 ? "Right" : "") + }); + } + return result2; + }; + LazyWrapper.prototype[methodName + "Right"] = function(n) { + return this.reverse()[methodName](n).reverse(); + }; + }); + arrayEach(["filter", "map", "takeWhile"], function(methodName, index) { + var type2 = index + 1, isFilter = type2 == LAZY_FILTER_FLAG || type2 == LAZY_WHILE_FLAG; + LazyWrapper.prototype[methodName] = function(iteratee2) { + var result2 = this.clone(); + result2.__iteratees__.push({ + "iteratee": getIteratee(iteratee2, 3), + "type": type2 + }); + result2.__filtered__ = result2.__filtered__ || isFilter; + return result2; + }; + }); + arrayEach(["head", "last"], function(methodName, index) { + var takeName = "take" + (index ? "Right" : ""); + LazyWrapper.prototype[methodName] = function() { + return this[takeName](1).value()[0]; + }; + }); + arrayEach(["initial", "tail"], function(methodName, index) { + var dropName = "drop" + (index ? "" : "Right"); + LazyWrapper.prototype[methodName] = function() { + return this.__filtered__ ? new LazyWrapper(this) : this[dropName](1); + }; + }); + LazyWrapper.prototype.compact = function() { + return this.filter(identity2); + }; + LazyWrapper.prototype.find = function(predicate) { + return this.filter(predicate).head(); + }; + LazyWrapper.prototype.findLast = function(predicate) { + return this.reverse().find(predicate); + }; + LazyWrapper.prototype.invokeMap = baseRest(function(path30, args3) { + if (typeof path30 == "function") { + return new LazyWrapper(this); + } + return this.map(function(value) { + return baseInvoke(value, path30, args3); + }); + }); + LazyWrapper.prototype.reject = function(predicate) { + return this.filter(negate(getIteratee(predicate))); + }; + LazyWrapper.prototype.slice = function(start4, end) { + start4 = toInteger(start4); + var result2 = this; + if (result2.__filtered__ && (start4 > 0 || end < 0)) { + return new LazyWrapper(result2); + } + if (start4 < 0) { + result2 = result2.takeRight(-start4); + } else if (start4) { + result2 = result2.drop(start4); + } + if (end !== undefined2) { + end = toInteger(end); + result2 = end < 0 ? result2.dropRight(-end) : result2.take(end - start4); + } + return result2; + }; + LazyWrapper.prototype.takeRightWhile = function(predicate) { + return this.reverse().takeWhile(predicate).reverse(); + }; + LazyWrapper.prototype.toArray = function() { + return this.take(MAX_ARRAY_LENGTH); + }; + baseForOwn(LazyWrapper.prototype, function(func2, methodName) { + var checkIteratee = /^(?:filter|find|map|reject)|While$/.test(methodName), isTaker = /^(?:head|last)$/.test(methodName), lodashFunc = lodash[isTaker ? "take" + (methodName == "last" ? "Right" : "") : methodName], retUnwrapped = isTaker || /^find/.test(methodName); + if (!lodashFunc) { + return; + } + lodash.prototype[methodName] = function() { + var value = this.__wrapped__, args3 = isTaker ? [1] : arguments, isLazy = value instanceof LazyWrapper, iteratee2 = args3[0], useLazy = isLazy || isArray2(value); + var interceptor = function(value2) { + var result3 = lodashFunc.apply(lodash, arrayPush([value2], args3)); + return isTaker && chainAll ? result3[0] : result3; + }; + if (useLazy && checkIteratee && typeof iteratee2 == "function" && iteratee2.length != 1) { + isLazy = useLazy = false; + } + var chainAll = this.__chain__, isHybrid = !!this.__actions__.length, isUnwrapped = retUnwrapped && !chainAll, onlyLazy = isLazy && !isHybrid; + if (!retUnwrapped && useLazy) { + value = onlyLazy ? value : new LazyWrapper(this); + var result2 = func2.apply(value, args3); + result2.__actions__.push({ "func": thru, "args": [interceptor], "thisArg": undefined2 }); + return new LodashWrapper(result2, chainAll); + } + if (isUnwrapped && onlyLazy) { + return func2.apply(this, args3); + } + result2 = this.thru(interceptor); + return isUnwrapped ? isTaker ? result2.value()[0] : result2.value() : result2; + }; + }); + arrayEach(["pop", "push", "shift", "sort", "splice", "unshift"], function(methodName) { + var func2 = arrayProto[methodName], chainName = /^(?:push|sort|unshift)$/.test(methodName) ? "tap" : "thru", retUnwrapped = /^(?:pop|shift)$/.test(methodName); + lodash.prototype[methodName] = function() { + var args3 = arguments; + if (retUnwrapped && !this.__chain__) { + var value = this.value(); + return func2.apply(isArray2(value) ? value : [], args3); + } + return this[chainName](function(value2) { + return func2.apply(isArray2(value2) ? value2 : [], args3); + }); + }; + }); + baseForOwn(LazyWrapper.prototype, function(func2, methodName) { + var lodashFunc = lodash[methodName]; + if (lodashFunc) { + var key = lodashFunc.name + ""; + if (!hasOwnProperty2.call(realNames, key)) { + realNames[key] = []; + } + realNames[key].push({ "name": methodName, "func": lodashFunc }); + } + }); + realNames[createHybrid(undefined2, WRAP_BIND_KEY_FLAG).name] = [{ + "name": "wrapper", + "func": undefined2 + }]; + LazyWrapper.prototype.clone = lazyClone; + LazyWrapper.prototype.reverse = lazyReverse; + LazyWrapper.prototype.value = lazyValue; + lodash.prototype.at = wrapperAt; + lodash.prototype.chain = wrapperChain; + lodash.prototype.commit = wrapperCommit; + lodash.prototype.next = wrapperNext; + lodash.prototype.plant = wrapperPlant; + lodash.prototype.reverse = wrapperReverse; + lodash.prototype.toJSON = lodash.prototype.valueOf = lodash.prototype.value = wrapperValue; + lodash.prototype.first = lodash.prototype.head; + if (symIterator) { + lodash.prototype[symIterator] = wrapperToIterator; + } + return lodash; + }; + var _ = runInContext(); + if (typeof define == "function" && typeof define.amd == "object" && define.amd) { + root._ = _; + define(function() { + return _; + }); + } else if (freeModule) { + (freeModule.exports = _)._ = _; + freeExports._ = _; + } else { + root._ = _; + } + }).call(exports2); + } +}); + +// ../node_modules/.pnpm/vscode-uri@3.0.7/node_modules/vscode-uri/lib/umd/index.js +var require_umd = __commonJS({ + "../node_modules/.pnpm/vscode-uri@3.0.7/node_modules/vscode-uri/lib/umd/index.js"(exports2, module2) { + !function(t, e) { + if ("object" == typeof exports2 && "object" == typeof module2) + module2.exports = e(); + else if ("function" == typeof define && define.amd) + define([], e); + else { + var r = e(); + for (var n in r) + ("object" == typeof exports2 ? exports2 : t)[n] = r[n]; + } + }(exports2, () => (() => { + "use strict"; + var t = { 470: (t2) => { + function e2(t3) { + if ("string" != typeof t3) + throw new TypeError("Path must be a string. Received " + JSON.stringify(t3)); + } + function r2(t3, e3) { + for (var r3, n3 = "", o = 0, i = -1, a = 0, s = 0; s <= t3.length; ++s) { + if (s < t3.length) + r3 = t3.charCodeAt(s); + else { + if (47 === r3) + break; + r3 = 47; + } + if (47 === r3) { + if (i === s - 1 || 1 === a) + ; + else if (i !== s - 1 && 2 === a) { + if (n3.length < 2 || 2 !== o || 46 !== n3.charCodeAt(n3.length - 1) || 46 !== n3.charCodeAt(n3.length - 2)) { + if (n3.length > 2) { + var h = n3.lastIndexOf("/"); + if (h !== n3.length - 1) { + -1 === h ? (n3 = "", o = 0) : o = (n3 = n3.slice(0, h)).length - 1 - n3.lastIndexOf("/"), i = s, a = 0; + continue; + } + } else if (2 === n3.length || 1 === n3.length) { + n3 = "", o = 0, i = s, a = 0; + continue; + } + } + e3 && (n3.length > 0 ? n3 += "/.." : n3 = "..", o = 2); + } else + n3.length > 0 ? n3 += "/" + t3.slice(i + 1, s) : n3 = t3.slice(i + 1, s), o = s - i - 1; + i = s, a = 0; + } else + 46 === r3 && -1 !== a ? ++a : a = -1; + } + return n3; + } + var n2 = { resolve: function() { + for (var t3, n3 = "", o = false, i = arguments.length - 1; i >= -1 && !o; i--) { + var a; + i >= 0 ? a = arguments[i] : (void 0 === t3 && (t3 = process.cwd()), a = t3), e2(a), 0 !== a.length && (n3 = a + "/" + n3, o = 47 === a.charCodeAt(0)); + } + return n3 = r2(n3, !o), o ? n3.length > 0 ? "/" + n3 : "/" : n3.length > 0 ? n3 : "."; + }, normalize: function(t3) { + if (e2(t3), 0 === t3.length) + return "."; + var n3 = 47 === t3.charCodeAt(0), o = 47 === t3.charCodeAt(t3.length - 1); + return 0 !== (t3 = r2(t3, !n3)).length || n3 || (t3 = "."), t3.length > 0 && o && (t3 += "/"), n3 ? "/" + t3 : t3; + }, isAbsolute: function(t3) { + return e2(t3), t3.length > 0 && 47 === t3.charCodeAt(0); + }, join: function() { + if (0 === arguments.length) + return "."; + for (var t3, r3 = 0; r3 < arguments.length; ++r3) { + var o = arguments[r3]; + e2(o), o.length > 0 && (void 0 === t3 ? t3 = o : t3 += "/" + o); + } + return void 0 === t3 ? "." : n2.normalize(t3); + }, relative: function(t3, r3) { + if (e2(t3), e2(r3), t3 === r3) + return ""; + if ((t3 = n2.resolve(t3)) === (r3 = n2.resolve(r3))) + return ""; + for (var o = 1; o < t3.length && 47 === t3.charCodeAt(o); ++o) + ; + for (var i = t3.length, a = i - o, s = 1; s < r3.length && 47 === r3.charCodeAt(s); ++s) + ; + for (var h = r3.length - s, c = a < h ? a : h, f = -1, u = 0; u <= c; ++u) { + if (u === c) { + if (h > c) { + if (47 === r3.charCodeAt(s + u)) + return r3.slice(s + u + 1); + if (0 === u) + return r3.slice(s + u); + } else + a > c && (47 === t3.charCodeAt(o + u) ? f = u : 0 === u && (f = 0)); + break; + } + var l2 = t3.charCodeAt(o + u); + if (l2 !== r3.charCodeAt(s + u)) + break; + 47 === l2 && (f = u); + } + var p = ""; + for (u = o + f + 1; u <= i; ++u) + u !== i && 47 !== t3.charCodeAt(u) || (0 === p.length ? p += ".." : p += "/.."); + return p.length > 0 ? p + r3.slice(s + f) : (s += f, 47 === r3.charCodeAt(s) && ++s, r3.slice(s)); + }, _makeLong: function(t3) { + return t3; + }, dirname: function(t3) { + if (e2(t3), 0 === t3.length) + return "."; + for (var r3 = t3.charCodeAt(0), n3 = 47 === r3, o = -1, i = true, a = t3.length - 1; a >= 1; --a) + if (47 === (r3 = t3.charCodeAt(a))) { + if (!i) { + o = a; + break; + } + } else + i = false; + return -1 === o ? n3 ? "/" : "." : n3 && 1 === o ? "//" : t3.slice(0, o); + }, basename: function(t3, r3) { + if (void 0 !== r3 && "string" != typeof r3) + throw new TypeError('"ext" argument must be a string'); + e2(t3); + var n3, o = 0, i = -1, a = true; + if (void 0 !== r3 && r3.length > 0 && r3.length <= t3.length) { + if (r3.length === t3.length && r3 === t3) + return ""; + var s = r3.length - 1, h = -1; + for (n3 = t3.length - 1; n3 >= 0; --n3) { + var c = t3.charCodeAt(n3); + if (47 === c) { + if (!a) { + o = n3 + 1; + break; + } + } else + -1 === h && (a = false, h = n3 + 1), s >= 0 && (c === r3.charCodeAt(s) ? -1 == --s && (i = n3) : (s = -1, i = h)); + } + return o === i ? i = h : -1 === i && (i = t3.length), t3.slice(o, i); + } + for (n3 = t3.length - 1; n3 >= 0; --n3) + if (47 === t3.charCodeAt(n3)) { + if (!a) { + o = n3 + 1; + break; + } + } else + -1 === i && (a = false, i = n3 + 1); + return -1 === i ? "" : t3.slice(o, i); + }, extname: function(t3) { + e2(t3); + for (var r3 = -1, n3 = 0, o = -1, i = true, a = 0, s = t3.length - 1; s >= 0; --s) { + var h = t3.charCodeAt(s); + if (47 !== h) + -1 === o && (i = false, o = s + 1), 46 === h ? -1 === r3 ? r3 = s : 1 !== a && (a = 1) : -1 !== r3 && (a = -1); + else if (!i) { + n3 = s + 1; + break; + } + } + return -1 === r3 || -1 === o || 0 === a || 1 === a && r3 === o - 1 && r3 === n3 + 1 ? "" : t3.slice(r3, o); + }, format: function(t3) { + if (null === t3 || "object" != typeof t3) + throw new TypeError('The "pathObject" argument must be of type Object. Received type ' + typeof t3); + return function(t4, e3) { + var r3 = e3.dir || e3.root, n3 = e3.base || (e3.name || "") + (e3.ext || ""); + return r3 ? r3 === e3.root ? r3 + n3 : r3 + "/" + n3 : n3; + }(0, t3); + }, parse: function(t3) { + e2(t3); + var r3 = { root: "", dir: "", base: "", ext: "", name: "" }; + if (0 === t3.length) + return r3; + var n3, o = t3.charCodeAt(0), i = 47 === o; + i ? (r3.root = "/", n3 = 1) : n3 = 0; + for (var a = -1, s = 0, h = -1, c = true, f = t3.length - 1, u = 0; f >= n3; --f) + if (47 !== (o = t3.charCodeAt(f))) + -1 === h && (c = false, h = f + 1), 46 === o ? -1 === a ? a = f : 1 !== u && (u = 1) : -1 !== a && (u = -1); + else if (!c) { + s = f + 1; + break; + } + return -1 === a || -1 === h || 0 === u || 1 === u && a === h - 1 && a === s + 1 ? -1 !== h && (r3.base = r3.name = 0 === s && i ? t3.slice(1, h) : t3.slice(s, h)) : (0 === s && i ? (r3.name = t3.slice(1, a), r3.base = t3.slice(1, h)) : (r3.name = t3.slice(s, a), r3.base = t3.slice(s, h)), r3.ext = t3.slice(a, h)), s > 0 ? r3.dir = t3.slice(0, s - 1) : i && (r3.dir = "/"), r3; + }, sep: "/", delimiter: ":", win32: null, posix: null }; + n2.posix = n2, t2.exports = n2; + }, 674: (t2, e2) => { + if (Object.defineProperty(e2, "__esModule", { value: true }), e2.isWindows = void 0, "object" == typeof process) + e2.isWindows = "win32" === process.platform; + else if ("object" == typeof navigator) { + var r2 = navigator.userAgent; + e2.isWindows = r2.indexOf("Windows") >= 0; + } + }, 796: function(t2, e2, r2) { + var n2, o, i = this && this.__extends || (n2 = function(t3, e3) { + return n2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e4) { + t4.__proto__ = e4; + } || function(t4, e4) { + for (var r3 in e4) + Object.prototype.hasOwnProperty.call(e4, r3) && (t4[r3] = e4[r3]); + }, n2(t3, e3); + }, function(t3, e3) { + if ("function" != typeof e3 && null !== e3) + throw new TypeError("Class extends value " + String(e3) + " is not a constructor or null"); + function r3() { + this.constructor = t3; + } + n2(t3, e3), t3.prototype = null === e3 ? Object.create(e3) : (r3.prototype = e3.prototype, new r3()); + }); + Object.defineProperty(e2, "__esModule", { value: true }), e2.uriToFsPath = e2.URI = void 0; + var a = r2(674), s = /^\w[\w\d+.-]*$/, h = /^\//, c = /^\/\//; + function f(t3, e3) { + if (!t3.scheme && e3) + throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'.concat(t3.authority, '", path: "').concat(t3.path, '", query: "').concat(t3.query, '", fragment: "').concat(t3.fragment, '"}')); + if (t3.scheme && !s.test(t3.scheme)) + throw new Error("[UriError]: Scheme contains illegal characters."); + if (t3.path) { + if (t3.authority) { + if (!h.test(t3.path)) + throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character'); + } else if (c.test(t3.path)) + throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")'); + } + } + var u = "", l2 = "/", p = /^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/, d = function() { + function t3(t4, e3, r3, n3, o2, i2) { + void 0 === i2 && (i2 = false), "object" == typeof t4 ? (this.scheme = t4.scheme || u, this.authority = t4.authority || u, this.path = t4.path || u, this.query = t4.query || u, this.fragment = t4.fragment || u) : (this.scheme = function(t5, e4) { + return t5 || e4 ? t5 : "file"; + }(t4, i2), this.authority = e3 || u, this.path = function(t5, e4) { + switch (t5) { + case "https": + case "http": + case "file": + e4 ? e4[0] !== l2 && (e4 = l2 + e4) : e4 = l2; + } + return e4; + }(this.scheme, r3 || u), this.query = n3 || u, this.fragment = o2 || u, f(this, i2)); + } + return t3.isUri = function(e3) { + return e3 instanceof t3 || !!e3 && "string" == typeof e3.authority && "string" == typeof e3.fragment && "string" == typeof e3.path && "string" == typeof e3.query && "string" == typeof e3.scheme && "string" == typeof e3.fsPath && "function" == typeof e3.with && "function" == typeof e3.toString; + }, Object.defineProperty(t3.prototype, "fsPath", { get: function() { + return C2(this, false); + }, enumerable: false, configurable: true }), t3.prototype.with = function(t4) { + if (!t4) + return this; + var e3 = t4.scheme, r3 = t4.authority, n3 = t4.path, o2 = t4.query, i2 = t4.fragment; + return void 0 === e3 ? e3 = this.scheme : null === e3 && (e3 = u), void 0 === r3 ? r3 = this.authority : null === r3 && (r3 = u), void 0 === n3 ? n3 = this.path : null === n3 && (n3 = u), void 0 === o2 ? o2 = this.query : null === o2 && (o2 = u), void 0 === i2 ? i2 = this.fragment : null === i2 && (i2 = u), e3 === this.scheme && r3 === this.authority && n3 === this.path && o2 === this.query && i2 === this.fragment ? this : new v(e3, r3, n3, o2, i2); + }, t3.parse = function(t4, e3) { + void 0 === e3 && (e3 = false); + var r3 = p.exec(t4); + return r3 ? new v(r3[2] || u, x(r3[4] || u), x(r3[5] || u), x(r3[7] || u), x(r3[9] || u), e3) : new v(u, u, u, u, u); + }, t3.file = function(t4) { + var e3 = u; + if (a.isWindows && (t4 = t4.replace(/\\/g, l2)), t4[0] === l2 && t4[1] === l2) { + var r3 = t4.indexOf(l2, 2); + -1 === r3 ? (e3 = t4.substring(2), t4 = l2) : (e3 = t4.substring(2, r3), t4 = t4.substring(r3) || l2); + } + return new v("file", e3, t4, u, u); + }, t3.from = function(t4) { + var e3 = new v(t4.scheme, t4.authority, t4.path, t4.query, t4.fragment); + return f(e3, true), e3; + }, t3.prototype.toString = function(t4) { + return void 0 === t4 && (t4 = false), A(this, t4); + }, t3.prototype.toJSON = function() { + return this; + }, t3.revive = function(e3) { + if (e3) { + if (e3 instanceof t3) + return e3; + var r3 = new v(e3); + return r3._formatted = e3.external, r3._fsPath = e3._sep === g ? e3.fsPath : null, r3; + } + return e3; + }, t3; + }(); + e2.URI = d; + var g = a.isWindows ? 1 : void 0, v = function(t3) { + function e3() { + var e4 = null !== t3 && t3.apply(this, arguments) || this; + return e4._formatted = null, e4._fsPath = null, e4; + } + return i(e3, t3), Object.defineProperty(e3.prototype, "fsPath", { get: function() { + return this._fsPath || (this._fsPath = C2(this, false)), this._fsPath; + }, enumerable: false, configurable: true }), e3.prototype.toString = function(t4) { + return void 0 === t4 && (t4 = false), t4 ? A(this, true) : (this._formatted || (this._formatted = A(this, false)), this._formatted); + }, e3.prototype.toJSON = function() { + var t4 = { $mid: 1 }; + return this._fsPath && (t4.fsPath = this._fsPath, t4._sep = g), this._formatted && (t4.external = this._formatted), this.path && (t4.path = this.path), this.scheme && (t4.scheme = this.scheme), this.authority && (t4.authority = this.authority), this.query && (t4.query = this.query), this.fragment && (t4.fragment = this.fragment), t4; + }, e3; + }(d), y = ((o = {})[58] = "%3A", o[47] = "%2F", o[63] = "%3F", o[35] = "%23", o[91] = "%5B", o[93] = "%5D", o[64] = "%40", o[33] = "%21", o[36] = "%24", o[38] = "%26", o[39] = "%27", o[40] = "%28", o[41] = "%29", o[42] = "%2A", o[43] = "%2B", o[44] = "%2C", o[59] = "%3B", o[61] = "%3D", o[32] = "%20", o); + function m(t3, e3, r3) { + for (var n3 = void 0, o2 = -1, i2 = 0; i2 < t3.length; i2++) { + var a2 = t3.charCodeAt(i2); + if (a2 >= 97 && a2 <= 122 || a2 >= 65 && a2 <= 90 || a2 >= 48 && a2 <= 57 || 45 === a2 || 46 === a2 || 95 === a2 || 126 === a2 || e3 && 47 === a2 || r3 && 91 === a2 || r3 && 93 === a2 || r3 && 58 === a2) + -1 !== o2 && (n3 += encodeURIComponent(t3.substring(o2, i2)), o2 = -1), void 0 !== n3 && (n3 += t3.charAt(i2)); + else { + void 0 === n3 && (n3 = t3.substr(0, i2)); + var s2 = y[a2]; + void 0 !== s2 ? (-1 !== o2 && (n3 += encodeURIComponent(t3.substring(o2, i2)), o2 = -1), n3 += s2) : -1 === o2 && (o2 = i2); + } + } + return -1 !== o2 && (n3 += encodeURIComponent(t3.substring(o2))), void 0 !== n3 ? n3 : t3; + } + function b(t3) { + for (var e3 = void 0, r3 = 0; r3 < t3.length; r3++) { + var n3 = t3.charCodeAt(r3); + 35 === n3 || 63 === n3 ? (void 0 === e3 && (e3 = t3.substr(0, r3)), e3 += y[n3]) : void 0 !== e3 && (e3 += t3[r3]); + } + return void 0 !== e3 ? e3 : t3; + } + function C2(t3, e3) { + var r3; + return r3 = t3.authority && t3.path.length > 1 && "file" === t3.scheme ? "//".concat(t3.authority).concat(t3.path) : 47 === t3.path.charCodeAt(0) && (t3.path.charCodeAt(1) >= 65 && t3.path.charCodeAt(1) <= 90 || t3.path.charCodeAt(1) >= 97 && t3.path.charCodeAt(1) <= 122) && 58 === t3.path.charCodeAt(2) ? e3 ? t3.path.substr(1) : t3.path[1].toLowerCase() + t3.path.substr(2) : t3.path, a.isWindows && (r3 = r3.replace(/\//g, "\\")), r3; + } + function A(t3, e3) { + var r3 = e3 ? b : m, n3 = "", o2 = t3.scheme, i2 = t3.authority, a2 = t3.path, s2 = t3.query, h2 = t3.fragment; + if (o2 && (n3 += o2, n3 += ":"), (i2 || "file" === o2) && (n3 += l2, n3 += l2), i2) { + var c2 = i2.indexOf("@"); + if (-1 !== c2) { + var f2 = i2.substr(0, c2); + i2 = i2.substr(c2 + 1), -1 === (c2 = f2.lastIndexOf(":")) ? n3 += r3(f2, false, false) : (n3 += r3(f2.substr(0, c2), false, false), n3 += ":", n3 += r3(f2.substr(c2 + 1), false, true)), n3 += "@"; + } + -1 === (c2 = (i2 = i2.toLowerCase()).lastIndexOf(":")) ? n3 += r3(i2, false, true) : (n3 += r3(i2.substr(0, c2), false, true), n3 += i2.substr(c2)); + } + if (a2) { + if (a2.length >= 3 && 47 === a2.charCodeAt(0) && 58 === a2.charCodeAt(2)) + (u2 = a2.charCodeAt(1)) >= 65 && u2 <= 90 && (a2 = "/".concat(String.fromCharCode(u2 + 32), ":").concat(a2.substr(3))); + else if (a2.length >= 2 && 58 === a2.charCodeAt(1)) { + var u2; + (u2 = a2.charCodeAt(0)) >= 65 && u2 <= 90 && (a2 = "".concat(String.fromCharCode(u2 + 32), ":").concat(a2.substr(2))); + } + n3 += r3(a2, true, false); + } + return s2 && (n3 += "?", n3 += r3(s2, false, false)), h2 && (n3 += "#", n3 += e3 ? h2 : m(h2, false, false)), n3; + } + function w(t3) { + try { + return decodeURIComponent(t3); + } catch (e3) { + return t3.length > 3 ? t3.substr(0, 3) + w(t3.substr(3)) : t3; + } + } + e2.uriToFsPath = C2; + var _ = /(%[0-9A-Za-z][0-9A-Za-z])+/g; + function x(t3) { + return t3.match(_) ? t3.replace(_, function(t4) { + return w(t4); + }) : t3; + } + }, 679: function(t2, e2, r2) { + var n2 = this && this.__spreadArray || function(t3, e3, r3) { + if (r3 || 2 === arguments.length) + for (var n3, o2 = 0, i2 = e3.length; o2 < i2; o2++) + !n3 && o2 in e3 || (n3 || (n3 = Array.prototype.slice.call(e3, 0, o2)), n3[o2] = e3[o2]); + return t3.concat(n3 || Array.prototype.slice.call(e3)); + }; + Object.defineProperty(e2, "__esModule", { value: true }), e2.Utils = void 0; + var o, i = r2(470), a = i.posix || i, s = "/"; + (o = e2.Utils || (e2.Utils = {})).joinPath = function(t3) { + for (var e3 = [], r3 = 1; r3 < arguments.length; r3++) + e3[r3 - 1] = arguments[r3]; + return t3.with({ path: a.join.apply(a, n2([t3.path], e3, false)) }); + }, o.resolvePath = function(t3) { + for (var e3 = [], r3 = 1; r3 < arguments.length; r3++) + e3[r3 - 1] = arguments[r3]; + var o2 = t3.path, i2 = false; + o2[0] !== s && (o2 = s + o2, i2 = true); + var h = a.resolve.apply(a, n2([o2], e3, false)); + return i2 && h[0] === s && !t3.authority && (h = h.substring(1)), t3.with({ path: h }); + }, o.dirname = function(t3) { + if (0 === t3.path.length || t3.path === s) + return t3; + var e3 = a.dirname(t3.path); + return 1 === e3.length && 46 === e3.charCodeAt(0) && (e3 = ""), t3.with({ path: e3 }); + }, o.basename = function(t3) { + return a.basename(t3.path); + }, o.extname = function(t3) { + return a.extname(t3.path); + }; + } }, e = {}; + function r(n2) { + var o = e[n2]; + if (void 0 !== o) + return o.exports; + var i = e[n2] = { exports: {} }; + return t[n2].call(i.exports, i, i.exports, r), i.exports; + } + var n = {}; + return (() => { + var t2 = n; + Object.defineProperty(t2, "__esModule", { value: true }), t2.Utils = t2.URI = void 0; + var e2 = r(796); + Object.defineProperty(t2, "URI", { enumerable: true, get: function() { + return e2.URI; + } }); + var o = r(679); + Object.defineProperty(t2, "Utils", { enumerable: true, get: function() { + return o.Utils; + } }); + })(), n; + })()); + } +}); + +// ../node_modules/.pnpm/@microsoft+fetch-event-source@2.0.1/node_modules/@microsoft/fetch-event-source/lib/cjs/parse.js +var require_parse = __commonJS({ + "../node_modules/.pnpm/@microsoft+fetch-event-source@2.0.1/node_modules/@microsoft/fetch-event-source/lib/cjs/parse.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getMessages = exports2.getLines = exports2.getBytes = void 0; + async function getBytes(stream5, onChunk) { + const reader = stream5.getReader(); + let result; + while (!(result = await reader.read()).done) { + onChunk(result.value); + } + } + exports2.getBytes = getBytes; + function getLines(onLine) { + let buffer2; + let position; + let fieldLength; + let discardTrailingNewline = false; + return function onChunk(arr) { + if (buffer2 === void 0) { + buffer2 = arr; + position = 0; + fieldLength = -1; + } else { + buffer2 = concat(buffer2, arr); + } + const bufLength = buffer2.length; + let lineStart = 0; + while (position < bufLength) { + if (discardTrailingNewline) { + if (buffer2[position] === 10) { + lineStart = ++position; + } + discardTrailingNewline = false; + } + let lineEnd = -1; + for (; position < bufLength && lineEnd === -1; ++position) { + switch (buffer2[position]) { + case 58: + if (fieldLength === -1) { + fieldLength = position - lineStart; + } + break; + case 13: + discardTrailingNewline = true; + case 10: + lineEnd = position; + break; + } + } + if (lineEnd === -1) { + break; + } + onLine(buffer2.subarray(lineStart, lineEnd), fieldLength); + lineStart = position; + fieldLength = -1; + } + if (lineStart === bufLength) { + buffer2 = void 0; + } else if (lineStart !== 0) { + buffer2 = buffer2.subarray(lineStart); + position -= lineStart; + } + }; + } + exports2.getLines = getLines; + function getMessages(onId, onRetry, onMessage) { + let message = newMessage(); + const decoder = new TextDecoder(); + return function onLine(line, fieldLength) { + if (line.length === 0) { + onMessage === null || onMessage === void 0 ? void 0 : onMessage(message); + message = newMessage(); + } else if (fieldLength > 0) { + const field = decoder.decode(line.subarray(0, fieldLength)); + const valueOffset = fieldLength + (line[fieldLength + 1] === 32 ? 2 : 1); + const value = decoder.decode(line.subarray(valueOffset)); + switch (field) { + case "data": + message.data = message.data ? message.data + "\n" + value : value; + break; + case "event": + message.event = value; + break; + case "id": + onId(message.id = value); + break; + case "retry": + const retry = parseInt(value, 10); + if (!isNaN(retry)) { + onRetry(message.retry = retry); + } + break; + } + } + }; + } + exports2.getMessages = getMessages; + function concat(a, b) { + const res = new Uint8Array(a.length + b.length); + res.set(a); + res.set(b, a.length); + return res; + } + function newMessage() { + return { + data: "", + event: "", + id: "", + retry: void 0 + }; + } + } +}); + +// ../node_modules/.pnpm/@microsoft+fetch-event-source@2.0.1/node_modules/@microsoft/fetch-event-source/lib/cjs/fetch.js +var require_fetch = __commonJS({ + "../node_modules/.pnpm/@microsoft+fetch-event-source@2.0.1/node_modules/@microsoft/fetch-event-source/lib/cjs/fetch.js"(exports2) { + "use strict"; + var __rest = exports2 && exports2.__rest || function(s, e) { + var t = {}; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fetchEventSource = exports2.EventStreamContentType = void 0; + var parse_1 = require_parse(); + exports2.EventStreamContentType = "text/event-stream"; + var DefaultRetryInterval = 1e3; + var LastEventId = "last-event-id"; + function fetchEventSource2(input, _a) { + var { signal: inputSignal, headers: inputHeaders, onopen: inputOnOpen, onmessage, onclose, onerror, openWhenHidden, fetch: inputFetch } = _a, rest = __rest(_a, ["signal", "headers", "onopen", "onmessage", "onclose", "onerror", "openWhenHidden", "fetch"]); + return new Promise((resolve8, reject) => { + const headers = Object.assign({}, inputHeaders); + if (!headers.accept) { + headers.accept = exports2.EventStreamContentType; + } + let curRequestController; + function onVisibilityChange() { + curRequestController.abort(); + if (!document.hidden) { + create2(); + } + } + if (!openWhenHidden) { + document.addEventListener("visibilitychange", onVisibilityChange); + } + let retryInterval = DefaultRetryInterval; + let retryTimer = 0; + function dispose() { + document.removeEventListener("visibilitychange", onVisibilityChange); + window.clearTimeout(retryTimer); + curRequestController.abort(); + } + inputSignal === null || inputSignal === void 0 ? void 0 : inputSignal.addEventListener("abort", () => { + dispose(); + resolve8(); + }); + const fetch4 = inputFetch !== null && inputFetch !== void 0 ? inputFetch : window.fetch; + const onopen = inputOnOpen !== null && inputOnOpen !== void 0 ? inputOnOpen : defaultOnOpen; + async function create2() { + var _a2; + curRequestController = new AbortController(); + try { + const response = await fetch4(input, Object.assign(Object.assign({}, rest), { headers, signal: curRequestController.signal })); + await onopen(response); + await parse_1.getBytes(response.body, parse_1.getLines(parse_1.getMessages((id) => { + if (id) { + headers[LastEventId] = id; + } else { + delete headers[LastEventId]; + } + }, (retry) => { + retryInterval = retry; + }, onmessage))); + onclose === null || onclose === void 0 ? void 0 : onclose(); + dispose(); + resolve8(); + } catch (err2) { + if (!curRequestController.signal.aborted) { + try { + const interval = (_a2 = onerror === null || onerror === void 0 ? void 0 : onerror(err2)) !== null && _a2 !== void 0 ? _a2 : retryInterval; + window.clearTimeout(retryTimer); + retryTimer = window.setTimeout(create2, interval); + } catch (innerErr) { + dispose(); + reject(innerErr); + } + } + } + } + create2(); + }); + } + exports2.fetchEventSource = fetchEventSource2; + function defaultOnOpen(response) { + const contentType = response.headers.get("content-type"); + if (!(contentType === null || contentType === void 0 ? void 0 : contentType.startsWith(exports2.EventStreamContentType))) { + throw new Error(`Expected content-type to be ${exports2.EventStreamContentType}, Actual: ${contentType}`); + } + } + } +}); + +// ../node_modules/.pnpm/@microsoft+fetch-event-source@2.0.1/node_modules/@microsoft/fetch-event-source/lib/cjs/index.js +var require_cjs = __commonJS({ + "../node_modules/.pnpm/@microsoft+fetch-event-source@2.0.1/node_modules/@microsoft/fetch-event-source/lib/cjs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EventStreamContentType = exports2.fetchEventSource = void 0; + var fetch_1 = require_fetch(); + Object.defineProperty(exports2, "fetchEventSource", { enumerable: true, get: function() { + return fetch_1.fetchEventSource; + } }); + Object.defineProperty(exports2, "EventStreamContentType", { enumerable: true, get: function() { + return fetch_1.EventStreamContentType; + } }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isFunction.js +var require_isFunction = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isFunction.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isFunction = void 0; + function isFunction2(value) { + return typeof value === "function"; + } + exports2.isFunction = isFunction2; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js +var require_createErrorClass = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createErrorClass = void 0; + function createErrorClass(createImpl) { + var _super = function(instance2) { + Error.call(instance2); + instance2.stack = new Error().stack; + }; + var ctorFunc = createImpl(_super); + ctorFunc.prototype = Object.create(Error.prototype); + ctorFunc.prototype.constructor = ctorFunc; + return ctorFunc; + } + exports2.createErrorClass = createErrorClass; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js +var require_UnsubscriptionError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.UnsubscriptionError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.UnsubscriptionError = createErrorClass_1.createErrorClass(function(_super) { + return function UnsubscriptionErrorImpl(errors) { + _super(this); + this.message = errors ? errors.length + " errors occurred during unsubscription:\n" + errors.map(function(err2, i) { + return i + 1 + ") " + err2.toString(); + }).join("\n ") : ""; + this.name = "UnsubscriptionError"; + this.errors = errors; + }; + }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js +var require_arrRemove = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.arrRemove = void 0; + function arrRemove(arr, item) { + if (arr) { + var index = arr.indexOf(item); + 0 <= index && arr.splice(index, 1); + } + } + exports2.arrRemove = arrRemove; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subscription.js +var require_Subscription = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subscription.js"(exports2) { + "use strict"; + var __values = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isSubscription = exports2.EMPTY_SUBSCRIPTION = exports2.Subscription = void 0; + var isFunction_1 = require_isFunction(); + var UnsubscriptionError_1 = require_UnsubscriptionError(); + var arrRemove_1 = require_arrRemove(); + var Subscription = function() { + function Subscription2(initialTeardown) { + this.initialTeardown = initialTeardown; + this.closed = false; + this._parentage = null; + this._finalizers = null; + } + Subscription2.prototype.unsubscribe = function() { + var e_1, _a, e_2, _b; + var errors; + if (!this.closed) { + this.closed = true; + var _parentage = this._parentage; + if (_parentage) { + this._parentage = null; + if (Array.isArray(_parentage)) { + try { + for (var _parentage_1 = __values(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) { + var parent_1 = _parentage_1_1.value; + parent_1.remove(this); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) + _a.call(_parentage_1); + } finally { + if (e_1) + throw e_1.error; + } + } + } else { + _parentage.remove(this); + } + } + var initialFinalizer = this.initialTeardown; + if (isFunction_1.isFunction(initialFinalizer)) { + try { + initialFinalizer(); + } catch (e) { + errors = e instanceof UnsubscriptionError_1.UnsubscriptionError ? e.errors : [e]; + } + } + var _finalizers = this._finalizers; + if (_finalizers) { + this._finalizers = null; + try { + for (var _finalizers_1 = __values(_finalizers), _finalizers_1_1 = _finalizers_1.next(); !_finalizers_1_1.done; _finalizers_1_1 = _finalizers_1.next()) { + var finalizer = _finalizers_1_1.value; + try { + execFinalizer(finalizer); + } catch (err2) { + errors = errors !== null && errors !== void 0 ? errors : []; + if (err2 instanceof UnsubscriptionError_1.UnsubscriptionError) { + errors = __spreadArray(__spreadArray([], __read(errors)), __read(err2.errors)); + } else { + errors.push(err2); + } + } + } + } catch (e_2_1) { + e_2 = { error: e_2_1 }; + } finally { + try { + if (_finalizers_1_1 && !_finalizers_1_1.done && (_b = _finalizers_1.return)) + _b.call(_finalizers_1); + } finally { + if (e_2) + throw e_2.error; + } + } + } + if (errors) { + throw new UnsubscriptionError_1.UnsubscriptionError(errors); + } + } + }; + Subscription2.prototype.add = function(teardown) { + var _a; + if (teardown && teardown !== this) { + if (this.closed) { + execFinalizer(teardown); + } else { + if (teardown instanceof Subscription2) { + if (teardown.closed || teardown._hasParent(this)) { + return; + } + teardown._addParent(this); + } + (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown); + } + } + }; + Subscription2.prototype._hasParent = function(parent) { + var _parentage = this._parentage; + return _parentage === parent || Array.isArray(_parentage) && _parentage.includes(parent); + }; + Subscription2.prototype._addParent = function(parent) { + var _parentage = this._parentage; + this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent; + }; + Subscription2.prototype._removeParent = function(parent) { + var _parentage = this._parentage; + if (_parentage === parent) { + this._parentage = null; + } else if (Array.isArray(_parentage)) { + arrRemove_1.arrRemove(_parentage, parent); + } + }; + Subscription2.prototype.remove = function(teardown) { + var _finalizers = this._finalizers; + _finalizers && arrRemove_1.arrRemove(_finalizers, teardown); + if (teardown instanceof Subscription2) { + teardown._removeParent(this); + } + }; + Subscription2.EMPTY = function() { + var empty = new Subscription2(); + empty.closed = true; + return empty; + }(); + return Subscription2; + }(); + exports2.Subscription = Subscription; + exports2.EMPTY_SUBSCRIPTION = Subscription.EMPTY; + function isSubscription(value) { + return value instanceof Subscription || value && "closed" in value && isFunction_1.isFunction(value.remove) && isFunction_1.isFunction(value.add) && isFunction_1.isFunction(value.unsubscribe); + } + exports2.isSubscription = isSubscription; + function execFinalizer(finalizer) { + if (isFunction_1.isFunction(finalizer)) { + finalizer(); + } else { + finalizer.unsubscribe(); + } + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/config.js +var require_config = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/config.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.config = void 0; + exports2.config = { + onUnhandledError: null, + onStoppedNotification: null, + Promise: void 0, + useDeprecatedSynchronousErrorHandling: false, + useDeprecatedNextContext: false + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js +var require_timeoutProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.timeoutProvider = void 0; + exports2.timeoutProvider = { + setTimeout: function(handler, timeout) { + var args3 = []; + for (var _i = 2; _i < arguments.length; _i++) { + args3[_i - 2] = arguments[_i]; + } + var delegate = exports2.timeoutProvider.delegate; + if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) { + return delegate.setTimeout.apply(delegate, __spreadArray([handler, timeout], __read(args3))); + } + return setTimeout.apply(void 0, __spreadArray([handler, timeout], __read(args3))); + }, + clearTimeout: function(handle2) { + var delegate = exports2.timeoutProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle2); + }, + delegate: void 0 + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js +var require_reportUnhandledError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reportUnhandledError = void 0; + var config_1 = require_config(); + var timeoutProvider_1 = require_timeoutProvider(); + function reportUnhandledError(err2) { + timeoutProvider_1.timeoutProvider.setTimeout(function() { + var onUnhandledError = config_1.config.onUnhandledError; + if (onUnhandledError) { + onUnhandledError(err2); + } else { + throw err2; + } + }); + } + exports2.reportUnhandledError = reportUnhandledError; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/noop.js +var require_noop = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/noop.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.noop = void 0; + function noop2() { + } + exports2.noop = noop2; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js +var require_NotificationFactories = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createNotification = exports2.nextNotification = exports2.errorNotification = exports2.COMPLETE_NOTIFICATION = void 0; + exports2.COMPLETE_NOTIFICATION = function() { + return createNotification("C", void 0, void 0); + }(); + function errorNotification(error) { + return createNotification("E", void 0, error); + } + exports2.errorNotification = errorNotification; + function nextNotification(value) { + return createNotification("N", value, void 0); + } + exports2.nextNotification = nextNotification; + function createNotification(kind, value, error) { + return { + kind, + value, + error + }; + } + exports2.createNotification = createNotification; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/errorContext.js +var require_errorContext = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/errorContext.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.captureError = exports2.errorContext = void 0; + var config_1 = require_config(); + var context2 = null; + function errorContext(cb) { + if (config_1.config.useDeprecatedSynchronousErrorHandling) { + var isRoot = !context2; + if (isRoot) { + context2 = { errorThrown: false, error: null }; + } + cb(); + if (isRoot) { + var _a = context2, errorThrown = _a.errorThrown, error = _a.error; + context2 = null; + if (errorThrown) { + throw error; + } + } + } else { + cb(); + } + } + exports2.errorContext = errorContext; + function captureError(err2) { + if (config_1.config.useDeprecatedSynchronousErrorHandling && context2) { + context2.errorThrown = true; + context2.error = err2; + } + } + exports2.captureError = captureError; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subscriber.js +var require_Subscriber = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subscriber.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EMPTY_OBSERVER = exports2.SafeSubscriber = exports2.Subscriber = void 0; + var isFunction_1 = require_isFunction(); + var Subscription_1 = require_Subscription(); + var config_1 = require_config(); + var reportUnhandledError_1 = require_reportUnhandledError(); + var noop_1 = require_noop(); + var NotificationFactories_1 = require_NotificationFactories(); + var timeoutProvider_1 = require_timeoutProvider(); + var errorContext_1 = require_errorContext(); + var Subscriber = function(_super) { + __extends(Subscriber2, _super); + function Subscriber2(destination) { + var _this = _super.call(this) || this; + _this.isStopped = false; + if (destination) { + _this.destination = destination; + if (Subscription_1.isSubscription(destination)) { + destination.add(_this); + } + } else { + _this.destination = exports2.EMPTY_OBSERVER; + } + return _this; + } + Subscriber2.create = function(next, error, complete) { + return new SafeSubscriber(next, error, complete); + }; + Subscriber2.prototype.next = function(value) { + if (this.isStopped) { + handleStoppedNotification(NotificationFactories_1.nextNotification(value), this); + } else { + this._next(value); + } + }; + Subscriber2.prototype.error = function(err2) { + if (this.isStopped) { + handleStoppedNotification(NotificationFactories_1.errorNotification(err2), this); + } else { + this.isStopped = true; + this._error(err2); + } + }; + Subscriber2.prototype.complete = function() { + if (this.isStopped) { + handleStoppedNotification(NotificationFactories_1.COMPLETE_NOTIFICATION, this); + } else { + this.isStopped = true; + this._complete(); + } + }; + Subscriber2.prototype.unsubscribe = function() { + if (!this.closed) { + this.isStopped = true; + _super.prototype.unsubscribe.call(this); + this.destination = null; + } + }; + Subscriber2.prototype._next = function(value) { + this.destination.next(value); + }; + Subscriber2.prototype._error = function(err2) { + try { + this.destination.error(err2); + } finally { + this.unsubscribe(); + } + }; + Subscriber2.prototype._complete = function() { + try { + this.destination.complete(); + } finally { + this.unsubscribe(); + } + }; + return Subscriber2; + }(Subscription_1.Subscription); + exports2.Subscriber = Subscriber; + var _bind = Function.prototype.bind; + function bind2(fn, thisArg) { + return _bind.call(fn, thisArg); + } + var ConsumerObserver = function() { + function ConsumerObserver2(partialObserver) { + this.partialObserver = partialObserver; + } + ConsumerObserver2.prototype.next = function(value) { + var partialObserver = this.partialObserver; + if (partialObserver.next) { + try { + partialObserver.next(value); + } catch (error) { + handleUnhandledError(error); + } + } + }; + ConsumerObserver2.prototype.error = function(err2) { + var partialObserver = this.partialObserver; + if (partialObserver.error) { + try { + partialObserver.error(err2); + } catch (error) { + handleUnhandledError(error); + } + } else { + handleUnhandledError(err2); + } + }; + ConsumerObserver2.prototype.complete = function() { + var partialObserver = this.partialObserver; + if (partialObserver.complete) { + try { + partialObserver.complete(); + } catch (error) { + handleUnhandledError(error); + } + } + }; + return ConsumerObserver2; + }(); + var SafeSubscriber = function(_super) { + __extends(SafeSubscriber2, _super); + function SafeSubscriber2(observerOrNext, error, complete) { + var _this = _super.call(this) || this; + var partialObserver; + if (isFunction_1.isFunction(observerOrNext) || !observerOrNext) { + partialObserver = { + next: observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : void 0, + error: error !== null && error !== void 0 ? error : void 0, + complete: complete !== null && complete !== void 0 ? complete : void 0 + }; + } else { + var context_1; + if (_this && config_1.config.useDeprecatedNextContext) { + context_1 = Object.create(observerOrNext); + context_1.unsubscribe = function() { + return _this.unsubscribe(); + }; + partialObserver = { + next: observerOrNext.next && bind2(observerOrNext.next, context_1), + error: observerOrNext.error && bind2(observerOrNext.error, context_1), + complete: observerOrNext.complete && bind2(observerOrNext.complete, context_1) + }; + } else { + partialObserver = observerOrNext; + } + } + _this.destination = new ConsumerObserver(partialObserver); + return _this; + } + return SafeSubscriber2; + }(Subscriber); + exports2.SafeSubscriber = SafeSubscriber; + function handleUnhandledError(error) { + if (config_1.config.useDeprecatedSynchronousErrorHandling) { + errorContext_1.captureError(error); + } else { + reportUnhandledError_1.reportUnhandledError(error); + } + } + function defaultErrorHandler(err2) { + throw err2; + } + function handleStoppedNotification(notification, subscriber2) { + var onStoppedNotification = config_1.config.onStoppedNotification; + onStoppedNotification && timeoutProvider_1.timeoutProvider.setTimeout(function() { + return onStoppedNotification(notification, subscriber2); + }); + } + exports2.EMPTY_OBSERVER = { + closed: true, + next: noop_1.noop, + error: defaultErrorHandler, + complete: noop_1.noop + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/symbol/observable.js +var require_observable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/symbol/observable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.observable = void 0; + exports2.observable = function() { + return typeof Symbol === "function" && Symbol.observable || "@@observable"; + }(); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/identity.js +var require_identity = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/identity.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.identity = void 0; + function identity2(x) { + return x; + } + exports2.identity = identity2; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/pipe.js +var require_pipe = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/pipe.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pipeFromArray = exports2.pipe = void 0; + var identity_1 = require_identity(); + function pipe() { + var fns = []; + for (var _i = 0; _i < arguments.length; _i++) { + fns[_i] = arguments[_i]; + } + return pipeFromArray(fns); + } + exports2.pipe = pipe; + function pipeFromArray(fns) { + if (fns.length === 0) { + return identity_1.identity; + } + if (fns.length === 1) { + return fns[0]; + } + return function piped(input) { + return fns.reduce(function(prev, fn) { + return fn(prev); + }, input); + }; + } + exports2.pipeFromArray = pipeFromArray; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Observable.js +var require_Observable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Observable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Observable = void 0; + var Subscriber_1 = require_Subscriber(); + var Subscription_1 = require_Subscription(); + var observable_1 = require_observable(); + var pipe_1 = require_pipe(); + var config_1 = require_config(); + var isFunction_1 = require_isFunction(); + var errorContext_1 = require_errorContext(); + var Observable = function() { + function Observable2(subscribe) { + if (subscribe) { + this._subscribe = subscribe; + } + } + Observable2.prototype.lift = function(operator) { + var observable = new Observable2(); + observable.source = this; + observable.operator = operator; + return observable; + }; + Observable2.prototype.subscribe = function(observerOrNext, error, complete) { + var _this = this; + var subscriber2 = isSubscriber(observerOrNext) ? observerOrNext : new Subscriber_1.SafeSubscriber(observerOrNext, error, complete); + errorContext_1.errorContext(function() { + var _a = _this, operator = _a.operator, source2 = _a.source; + subscriber2.add(operator ? operator.call(subscriber2, source2) : source2 ? _this._subscribe(subscriber2) : _this._trySubscribe(subscriber2)); + }); + return subscriber2; + }; + Observable2.prototype._trySubscribe = function(sink) { + try { + return this._subscribe(sink); + } catch (err2) { + sink.error(err2); + } + }; + Observable2.prototype.forEach = function(next, promiseCtor) { + var _this = this; + promiseCtor = getPromiseCtor(promiseCtor); + return new promiseCtor(function(resolve8, reject) { + var subscriber2 = new Subscriber_1.SafeSubscriber({ + next: function(value) { + try { + next(value); + } catch (err2) { + reject(err2); + subscriber2.unsubscribe(); + } + }, + error: reject, + complete: resolve8 + }); + _this.subscribe(subscriber2); + }); + }; + Observable2.prototype._subscribe = function(subscriber2) { + var _a; + return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber2); + }; + Observable2.prototype[observable_1.observable] = function() { + return this; + }; + Observable2.prototype.pipe = function() { + var operations = []; + for (var _i = 0; _i < arguments.length; _i++) { + operations[_i] = arguments[_i]; + } + return pipe_1.pipeFromArray(operations)(this); + }; + Observable2.prototype.toPromise = function(promiseCtor) { + var _this = this; + promiseCtor = getPromiseCtor(promiseCtor); + return new promiseCtor(function(resolve8, reject) { + var value; + _this.subscribe(function(x) { + return value = x; + }, function(err2) { + return reject(err2); + }, function() { + return resolve8(value); + }); + }); + }; + Observable2.create = function(subscribe) { + return new Observable2(subscribe); + }; + return Observable2; + }(); + exports2.Observable = Observable; + function getPromiseCtor(promiseCtor) { + var _a; + return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config_1.config.Promise) !== null && _a !== void 0 ? _a : Promise; + } + function isObserver(value) { + return value && isFunction_1.isFunction(value.next) && isFunction_1.isFunction(value.error) && isFunction_1.isFunction(value.complete); + } + function isSubscriber(value) { + return value && value instanceof Subscriber_1.Subscriber || isObserver(value) && Subscription_1.isSubscription(value); + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/lift.js +var require_lift = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/lift.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.operate = exports2.hasLift = void 0; + var isFunction_1 = require_isFunction(); + function hasLift(source2) { + return isFunction_1.isFunction(source2 === null || source2 === void 0 ? void 0 : source2.lift); + } + exports2.hasLift = hasLift; + function operate(init5) { + return function(source2) { + if (hasLift(source2)) { + return source2.lift(function(liftedSource) { + try { + return init5(liftedSource, this); + } catch (err2) { + this.error(err2); + } + }); + } + throw new TypeError("Unable to lift unknown Observable type"); + }; + } + exports2.operate = operate; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js +var require_OperatorSubscriber = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OperatorSubscriber = exports2.createOperatorSubscriber = void 0; + var Subscriber_1 = require_Subscriber(); + function createOperatorSubscriber(destination, onNext, onComplete, onError, onFinalize) { + return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize); + } + exports2.createOperatorSubscriber = createOperatorSubscriber; + var OperatorSubscriber = function(_super) { + __extends(OperatorSubscriber2, _super); + function OperatorSubscriber2(destination, onNext, onComplete, onError, onFinalize, shouldUnsubscribe) { + var _this = _super.call(this, destination) || this; + _this.onFinalize = onFinalize; + _this.shouldUnsubscribe = shouldUnsubscribe; + _this._next = onNext ? function(value) { + try { + onNext(value); + } catch (err2) { + destination.error(err2); + } + } : _super.prototype._next; + _this._error = onError ? function(err2) { + try { + onError(err2); + } catch (err3) { + destination.error(err3); + } finally { + this.unsubscribe(); + } + } : _super.prototype._error; + _this._complete = onComplete ? function() { + try { + onComplete(); + } catch (err2) { + destination.error(err2); + } finally { + this.unsubscribe(); + } + } : _super.prototype._complete; + return _this; + } + OperatorSubscriber2.prototype.unsubscribe = function() { + var _a; + if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) { + var closed_1 = this.closed; + _super.prototype.unsubscribe.call(this); + !closed_1 && ((_a = this.onFinalize) === null || _a === void 0 ? void 0 : _a.call(this)); + } + }; + return OperatorSubscriber2; + }(Subscriber_1.Subscriber); + exports2.OperatorSubscriber = OperatorSubscriber; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/refCount.js +var require_refCount = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/refCount.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.refCount = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function refCount() { + return lift_1.operate(function(source2, subscriber2) { + var connection = null; + source2._refCount++; + var refCounter = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, void 0, void 0, void 0, function() { + if (!source2 || source2._refCount <= 0 || 0 < --source2._refCount) { + connection = null; + return; + } + var sharedConnection = source2._connection; + var conn = connection; + connection = null; + if (sharedConnection && (!conn || sharedConnection === conn)) { + sharedConnection.unsubscribe(); + } + subscriber2.unsubscribe(); + }); + source2.subscribe(refCounter); + if (!refCounter.closed) { + connection = source2.connect(); + } + }); + } + exports2.refCount = refCount; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js +var require_ConnectableObservable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ConnectableObservable = void 0; + var Observable_1 = require_Observable(); + var Subscription_1 = require_Subscription(); + var refCount_1 = require_refCount(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var lift_1 = require_lift(); + var ConnectableObservable = function(_super) { + __extends(ConnectableObservable2, _super); + function ConnectableObservable2(source2, subjectFactory) { + var _this = _super.call(this) || this; + _this.source = source2; + _this.subjectFactory = subjectFactory; + _this._subject = null; + _this._refCount = 0; + _this._connection = null; + if (lift_1.hasLift(source2)) { + _this.lift = source2.lift; + } + return _this; + } + ConnectableObservable2.prototype._subscribe = function(subscriber2) { + return this.getSubject().subscribe(subscriber2); + }; + ConnectableObservable2.prototype.getSubject = function() { + var subject = this._subject; + if (!subject || subject.isStopped) { + this._subject = this.subjectFactory(); + } + return this._subject; + }; + ConnectableObservable2.prototype._teardown = function() { + this._refCount = 0; + var _connection = this._connection; + this._subject = this._connection = null; + _connection === null || _connection === void 0 ? void 0 : _connection.unsubscribe(); + }; + ConnectableObservable2.prototype.connect = function() { + var _this = this; + var connection = this._connection; + if (!connection) { + connection = this._connection = new Subscription_1.Subscription(); + var subject_1 = this.getSubject(); + connection.add(this.source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subject_1, void 0, function() { + _this._teardown(); + subject_1.complete(); + }, function(err2) { + _this._teardown(); + subject_1.error(err2); + }, function() { + return _this._teardown(); + }))); + if (connection.closed) { + this._connection = null; + connection = Subscription_1.Subscription.EMPTY; + } + } + return connection; + }; + ConnectableObservable2.prototype.refCount = function() { + return refCount_1.refCount()(this); + }; + return ConnectableObservable2; + }(Observable_1.Observable); + exports2.ConnectableObservable = ConnectableObservable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js +var require_performanceTimestampProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.performanceTimestampProvider = void 0; + exports2.performanceTimestampProvider = { + now: function() { + return (exports2.performanceTimestampProvider.delegate || performance).now(); + }, + delegate: void 0 + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js +var require_animationFrameProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.animationFrameProvider = void 0; + var Subscription_1 = require_Subscription(); + exports2.animationFrameProvider = { + schedule: function(callback) { + var request = requestAnimationFrame; + var cancel = cancelAnimationFrame; + var delegate = exports2.animationFrameProvider.delegate; + if (delegate) { + request = delegate.requestAnimationFrame; + cancel = delegate.cancelAnimationFrame; + } + var handle2 = request(function(timestamp) { + cancel = void 0; + callback(timestamp); + }); + return new Subscription_1.Subscription(function() { + return cancel === null || cancel === void 0 ? void 0 : cancel(handle2); + }); + }, + requestAnimationFrame: function() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var delegate = exports2.animationFrameProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.requestAnimationFrame) || requestAnimationFrame).apply(void 0, __spreadArray([], __read(args3))); + }, + cancelAnimationFrame: function() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var delegate = exports2.animationFrameProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.cancelAnimationFrame) || cancelAnimationFrame).apply(void 0, __spreadArray([], __read(args3))); + }, + delegate: void 0 + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js +var require_animationFrames = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.animationFrames = void 0; + var Observable_1 = require_Observable(); + var performanceTimestampProvider_1 = require_performanceTimestampProvider(); + var animationFrameProvider_1 = require_animationFrameProvider(); + function animationFrames(timestampProvider) { + return timestampProvider ? animationFramesFactory(timestampProvider) : DEFAULT_ANIMATION_FRAMES; + } + exports2.animationFrames = animationFrames; + function animationFramesFactory(timestampProvider) { + return new Observable_1.Observable(function(subscriber2) { + var provider = timestampProvider || performanceTimestampProvider_1.performanceTimestampProvider; + var start4 = provider.now(); + var id = 0; + var run2 = function() { + if (!subscriber2.closed) { + id = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function(timestamp) { + id = 0; + var now = provider.now(); + subscriber2.next({ + timestamp: timestampProvider ? now : timestamp, + elapsed: now - start4 + }); + run2(); + }); + } + }; + run2(); + return function() { + if (id) { + animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id); + } + }; + }); + } + var DEFAULT_ANIMATION_FRAMES = animationFramesFactory(); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js +var require_ObjectUnsubscribedError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ObjectUnsubscribedError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.ObjectUnsubscribedError = createErrorClass_1.createErrorClass(function(_super) { + return function ObjectUnsubscribedErrorImpl() { + _super(this); + this.name = "ObjectUnsubscribedError"; + this.message = "object unsubscribed"; + }; + }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subject.js +var require_Subject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Subject.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + var __values = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AnonymousSubject = exports2.Subject = void 0; + var Observable_1 = require_Observable(); + var Subscription_1 = require_Subscription(); + var ObjectUnsubscribedError_1 = require_ObjectUnsubscribedError(); + var arrRemove_1 = require_arrRemove(); + var errorContext_1 = require_errorContext(); + var Subject = function(_super) { + __extends(Subject2, _super); + function Subject2() { + var _this = _super.call(this) || this; + _this.closed = false; + _this.currentObservers = null; + _this.observers = []; + _this.isStopped = false; + _this.hasError = false; + _this.thrownError = null; + return _this; + } + Subject2.prototype.lift = function(operator) { + var subject = new AnonymousSubject(this, this); + subject.operator = operator; + return subject; + }; + Subject2.prototype._throwIfClosed = function() { + if (this.closed) { + throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError(); + } + }; + Subject2.prototype.next = function(value) { + var _this = this; + errorContext_1.errorContext(function() { + var e_1, _a; + _this._throwIfClosed(); + if (!_this.isStopped) { + if (!_this.currentObservers) { + _this.currentObservers = Array.from(_this.observers); + } + try { + for (var _b = __values(_this.currentObservers), _c = _b.next(); !_c.done; _c = _b.next()) { + var observer = _c.value; + observer.next(value); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (_c && !_c.done && (_a = _b.return)) + _a.call(_b); + } finally { + if (e_1) + throw e_1.error; + } + } + } + }); + }; + Subject2.prototype.error = function(err2) { + var _this = this; + errorContext_1.errorContext(function() { + _this._throwIfClosed(); + if (!_this.isStopped) { + _this.hasError = _this.isStopped = true; + _this.thrownError = err2; + var observers = _this.observers; + while (observers.length) { + observers.shift().error(err2); + } + } + }); + }; + Subject2.prototype.complete = function() { + var _this = this; + errorContext_1.errorContext(function() { + _this._throwIfClosed(); + if (!_this.isStopped) { + _this.isStopped = true; + var observers = _this.observers; + while (observers.length) { + observers.shift().complete(); + } + } + }); + }; + Subject2.prototype.unsubscribe = function() { + this.isStopped = this.closed = true; + this.observers = this.currentObservers = null; + }; + Object.defineProperty(Subject2.prototype, "observed", { + get: function() { + var _a; + return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0; + }, + enumerable: false, + configurable: true + }); + Subject2.prototype._trySubscribe = function(subscriber2) { + this._throwIfClosed(); + return _super.prototype._trySubscribe.call(this, subscriber2); + }; + Subject2.prototype._subscribe = function(subscriber2) { + this._throwIfClosed(); + this._checkFinalizedStatuses(subscriber2); + return this._innerSubscribe(subscriber2); + }; + Subject2.prototype._innerSubscribe = function(subscriber2) { + var _this = this; + var _a = this, hasError = _a.hasError, isStopped = _a.isStopped, observers = _a.observers; + if (hasError || isStopped) { + return Subscription_1.EMPTY_SUBSCRIPTION; + } + this.currentObservers = null; + observers.push(subscriber2); + return new Subscription_1.Subscription(function() { + _this.currentObservers = null; + arrRemove_1.arrRemove(observers, subscriber2); + }); + }; + Subject2.prototype._checkFinalizedStatuses = function(subscriber2) { + var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, isStopped = _a.isStopped; + if (hasError) { + subscriber2.error(thrownError); + } else if (isStopped) { + subscriber2.complete(); + } + }; + Subject2.prototype.asObservable = function() { + var observable = new Observable_1.Observable(); + observable.source = this; + return observable; + }; + Subject2.create = function(destination, source2) { + return new AnonymousSubject(destination, source2); + }; + return Subject2; + }(Observable_1.Observable); + exports2.Subject = Subject; + var AnonymousSubject = function(_super) { + __extends(AnonymousSubject2, _super); + function AnonymousSubject2(destination, source2) { + var _this = _super.call(this) || this; + _this.destination = destination; + _this.source = source2; + return _this; + } + AnonymousSubject2.prototype.next = function(value) { + var _a, _b; + (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value); + }; + AnonymousSubject2.prototype.error = function(err2) { + var _a, _b; + (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err2); + }; + AnonymousSubject2.prototype.complete = function() { + var _a, _b; + (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a); + }; + AnonymousSubject2.prototype._subscribe = function(subscriber2) { + var _a, _b; + return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber2)) !== null && _b !== void 0 ? _b : Subscription_1.EMPTY_SUBSCRIPTION; + }; + return AnonymousSubject2; + }(Subject); + exports2.AnonymousSubject = AnonymousSubject; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js +var require_BehaviorSubject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BehaviorSubject = void 0; + var Subject_1 = require_Subject(); + var BehaviorSubject = function(_super) { + __extends(BehaviorSubject2, _super); + function BehaviorSubject2(_value) { + var _this = _super.call(this) || this; + _this._value = _value; + return _this; + } + Object.defineProperty(BehaviorSubject2.prototype, "value", { + get: function() { + return this.getValue(); + }, + enumerable: false, + configurable: true + }); + BehaviorSubject2.prototype._subscribe = function(subscriber2) { + var subscription = _super.prototype._subscribe.call(this, subscriber2); + !subscription.closed && subscriber2.next(this._value); + return subscription; + }; + BehaviorSubject2.prototype.getValue = function() { + var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, _value = _a._value; + if (hasError) { + throw thrownError; + } + this._throwIfClosed(); + return _value; + }; + BehaviorSubject2.prototype.next = function(value) { + _super.prototype.next.call(this, this._value = value); + }; + return BehaviorSubject2; + }(Subject_1.Subject); + exports2.BehaviorSubject = BehaviorSubject; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js +var require_dateTimestampProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.dateTimestampProvider = void 0; + exports2.dateTimestampProvider = { + now: function() { + return (exports2.dateTimestampProvider.delegate || Date).now(); + }, + delegate: void 0 + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js +var require_ReplaySubject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ReplaySubject = void 0; + var Subject_1 = require_Subject(); + var dateTimestampProvider_1 = require_dateTimestampProvider(); + var ReplaySubject = function(_super) { + __extends(ReplaySubject2, _super); + function ReplaySubject2(_bufferSize, _windowTime, _timestampProvider) { + if (_bufferSize === void 0) { + _bufferSize = Infinity; + } + if (_windowTime === void 0) { + _windowTime = Infinity; + } + if (_timestampProvider === void 0) { + _timestampProvider = dateTimestampProvider_1.dateTimestampProvider; + } + var _this = _super.call(this) || this; + _this._bufferSize = _bufferSize; + _this._windowTime = _windowTime; + _this._timestampProvider = _timestampProvider; + _this._buffer = []; + _this._infiniteTimeWindow = true; + _this._infiniteTimeWindow = _windowTime === Infinity; + _this._bufferSize = Math.max(1, _bufferSize); + _this._windowTime = Math.max(1, _windowTime); + return _this; + } + ReplaySubject2.prototype.next = function(value) { + var _a = this, isStopped = _a.isStopped, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow, _timestampProvider = _a._timestampProvider, _windowTime = _a._windowTime; + if (!isStopped) { + _buffer.push(value); + !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime); + } + this._trimBuffer(); + _super.prototype.next.call(this, value); + }; + ReplaySubject2.prototype._subscribe = function(subscriber2) { + this._throwIfClosed(); + this._trimBuffer(); + var subscription = this._innerSubscribe(subscriber2); + var _a = this, _infiniteTimeWindow = _a._infiniteTimeWindow, _buffer = _a._buffer; + var copy = _buffer.slice(); + for (var i = 0; i < copy.length && !subscriber2.closed; i += _infiniteTimeWindow ? 1 : 2) { + subscriber2.next(copy[i]); + } + this._checkFinalizedStatuses(subscriber2); + return subscription; + }; + ReplaySubject2.prototype._trimBuffer = function() { + var _a = this, _bufferSize = _a._bufferSize, _timestampProvider = _a._timestampProvider, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow; + var adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize; + _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize); + if (!_infiniteTimeWindow) { + var now = _timestampProvider.now(); + var last = 0; + for (var i = 1; i < _buffer.length && _buffer[i] <= now; i += 2) { + last = i; + } + last && _buffer.splice(0, last + 1); + } + }; + return ReplaySubject2; + }(Subject_1.Subject); + exports2.ReplaySubject = ReplaySubject; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js +var require_AsyncSubject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsyncSubject = void 0; + var Subject_1 = require_Subject(); + var AsyncSubject = function(_super) { + __extends(AsyncSubject2, _super); + function AsyncSubject2() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this._value = null; + _this._hasValue = false; + _this._isComplete = false; + return _this; + } + AsyncSubject2.prototype._checkFinalizedStatuses = function(subscriber2) { + var _a = this, hasError = _a.hasError, _hasValue = _a._hasValue, _value = _a._value, thrownError = _a.thrownError, isStopped = _a.isStopped, _isComplete = _a._isComplete; + if (hasError) { + subscriber2.error(thrownError); + } else if (isStopped || _isComplete) { + _hasValue && subscriber2.next(_value); + subscriber2.complete(); + } + }; + AsyncSubject2.prototype.next = function(value) { + if (!this.isStopped) { + this._value = value; + this._hasValue = true; + } + }; + AsyncSubject2.prototype.complete = function() { + var _a = this, _hasValue = _a._hasValue, _value = _a._value, _isComplete = _a._isComplete; + if (!_isComplete) { + this._isComplete = true; + _hasValue && _super.prototype.next.call(this, _value); + _super.prototype.complete.call(this); + } + }; + return AsyncSubject2; + }(Subject_1.Subject); + exports2.AsyncSubject = AsyncSubject; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js +var require_Action = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Action = void 0; + var Subscription_1 = require_Subscription(); + var Action = function(_super) { + __extends(Action2, _super); + function Action2(scheduler, work) { + return _super.call(this) || this; + } + Action2.prototype.schedule = function(state, delay) { + if (delay === void 0) { + delay = 0; + } + return this; + }; + return Action2; + }(Subscription_1.Subscription); + exports2.Action = Action; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js +var require_intervalProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.intervalProvider = void 0; + exports2.intervalProvider = { + setInterval: function(handler, timeout) { + var args3 = []; + for (var _i = 2; _i < arguments.length; _i++) { + args3[_i - 2] = arguments[_i]; + } + var delegate = exports2.intervalProvider.delegate; + if (delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) { + return delegate.setInterval.apply(delegate, __spreadArray([handler, timeout], __read(args3))); + } + return setInterval.apply(void 0, __spreadArray([handler, timeout], __read(args3))); + }, + clearInterval: function(handle2) { + var delegate = exports2.intervalProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle2); + }, + delegate: void 0 + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js +var require_AsyncAction = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsyncAction = void 0; + var Action_1 = require_Action(); + var intervalProvider_1 = require_intervalProvider(); + var arrRemove_1 = require_arrRemove(); + var AsyncAction = function(_super) { + __extends(AsyncAction2, _super); + function AsyncAction2(scheduler, work) { + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + _this.pending = false; + return _this; + } + AsyncAction2.prototype.schedule = function(state, delay) { + var _a; + if (delay === void 0) { + delay = 0; + } + if (this.closed) { + return this; + } + this.state = state; + var id = this.id; + var scheduler = this.scheduler; + if (id != null) { + this.id = this.recycleAsyncId(scheduler, id, delay); + } + this.pending = true; + this.delay = delay; + this.id = (_a = this.id) !== null && _a !== void 0 ? _a : this.requestAsyncId(scheduler, this.id, delay); + return this; + }; + AsyncAction2.prototype.requestAsyncId = function(scheduler, _id, delay) { + if (delay === void 0) { + delay = 0; + } + return intervalProvider_1.intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay); + }; + AsyncAction2.prototype.recycleAsyncId = function(_scheduler, id, delay) { + if (delay === void 0) { + delay = 0; + } + if (delay != null && this.delay === delay && this.pending === false) { + return id; + } + if (id != null) { + intervalProvider_1.intervalProvider.clearInterval(id); + } + return void 0; + }; + AsyncAction2.prototype.execute = function(state, delay) { + if (this.closed) { + return new Error("executing a cancelled action"); + } + this.pending = false; + var error = this._execute(state, delay); + if (error) { + return error; + } else if (this.pending === false && this.id != null) { + this.id = this.recycleAsyncId(this.scheduler, this.id, null); + } + }; + AsyncAction2.prototype._execute = function(state, _delay) { + var errored = false; + var errorValue; + try { + this.work(state); + } catch (e) { + errored = true; + errorValue = e ? e : new Error("Scheduled action threw falsy error"); + } + if (errored) { + this.unsubscribe(); + return errorValue; + } + }; + AsyncAction2.prototype.unsubscribe = function() { + if (!this.closed) { + var _a = this, id = _a.id, scheduler = _a.scheduler; + var actions2 = scheduler.actions; + this.work = this.state = this.scheduler = null; + this.pending = false; + arrRemove_1.arrRemove(actions2, this); + if (id != null) { + this.id = this.recycleAsyncId(scheduler, id, null); + } + this.delay = null; + _super.prototype.unsubscribe.call(this); + } + }; + return AsyncAction2; + }(Action_1.Action); + exports2.AsyncAction = AsyncAction; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/Immediate.js +var require_Immediate = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/Immediate.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TestTools = exports2.Immediate = void 0; + var nextHandle = 1; + var resolved; + var activeHandles = {}; + function findAndClearHandle(handle2) { + if (handle2 in activeHandles) { + delete activeHandles[handle2]; + return true; + } + return false; + } + exports2.Immediate = { + setImmediate: function(cb) { + var handle2 = nextHandle++; + activeHandles[handle2] = true; + if (!resolved) { + resolved = Promise.resolve(); + } + resolved.then(function() { + return findAndClearHandle(handle2) && cb(); + }); + return handle2; + }, + clearImmediate: function(handle2) { + findAndClearHandle(handle2); + } + }; + exports2.TestTools = { + pending: function() { + return Object.keys(activeHandles).length; + } + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js +var require_immediateProvider = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.immediateProvider = void 0; + var Immediate_1 = require_Immediate(); + var setImmediate2 = Immediate_1.Immediate.setImmediate; + var clearImmediate2 = Immediate_1.Immediate.clearImmediate; + exports2.immediateProvider = { + setImmediate: function() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var delegate = exports2.immediateProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.setImmediate) || setImmediate2).apply(void 0, __spreadArray([], __read(args3))); + }, + clearImmediate: function(handle2) { + var delegate = exports2.immediateProvider.delegate; + return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearImmediate) || clearImmediate2)(handle2); + }, + delegate: void 0 + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js +var require_AsapAction = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsapAction = void 0; + var AsyncAction_1 = require_AsyncAction(); + var immediateProvider_1 = require_immediateProvider(); + var AsapAction = function(_super) { + __extends(AsapAction2, _super); + function AsapAction2(scheduler, work) { + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + return _this; + } + AsapAction2.prototype.requestAsyncId = function(scheduler, id, delay) { + if (delay === void 0) { + delay = 0; + } + if (delay !== null && delay > 0) { + return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); + } + scheduler.actions.push(this); + return scheduler._scheduled || (scheduler._scheduled = immediateProvider_1.immediateProvider.setImmediate(scheduler.flush.bind(scheduler, void 0))); + }; + AsapAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { + var _a; + if (delay === void 0) { + delay = 0; + } + if (delay != null ? delay > 0 : this.delay > 0) { + return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay); + } + var actions2 = scheduler.actions; + if (id != null && ((_a = actions2[actions2.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) { + immediateProvider_1.immediateProvider.clearImmediate(id); + if (scheduler._scheduled === id) { + scheduler._scheduled = void 0; + } + } + return void 0; + }; + return AsapAction2; + }(AsyncAction_1.AsyncAction); + exports2.AsapAction = AsapAction; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Scheduler.js +var require_Scheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Scheduler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Scheduler = void 0; + var dateTimestampProvider_1 = require_dateTimestampProvider(); + var Scheduler = function() { + function Scheduler2(schedulerActionCtor, now) { + if (now === void 0) { + now = Scheduler2.now; + } + this.schedulerActionCtor = schedulerActionCtor; + this.now = now; + } + Scheduler2.prototype.schedule = function(work, delay, state) { + if (delay === void 0) { + delay = 0; + } + return new this.schedulerActionCtor(this, work).schedule(state, delay); + }; + Scheduler2.now = dateTimestampProvider_1.dateTimestampProvider.now; + return Scheduler2; + }(); + exports2.Scheduler = Scheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js +var require_AsyncScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsyncScheduler = void 0; + var Scheduler_1 = require_Scheduler(); + var AsyncScheduler = function(_super) { + __extends(AsyncScheduler2, _super); + function AsyncScheduler2(SchedulerAction, now) { + if (now === void 0) { + now = Scheduler_1.Scheduler.now; + } + var _this = _super.call(this, SchedulerAction, now) || this; + _this.actions = []; + _this._active = false; + return _this; + } + AsyncScheduler2.prototype.flush = function(action) { + var actions2 = this.actions; + if (this._active) { + actions2.push(action); + return; + } + var error; + this._active = true; + do { + if (error = action.execute(action.state, action.delay)) { + break; + } + } while (action = actions2.shift()); + this._active = false; + if (error) { + while (action = actions2.shift()) { + action.unsubscribe(); + } + throw error; + } + }; + return AsyncScheduler2; + }(Scheduler_1.Scheduler); + exports2.AsyncScheduler = AsyncScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js +var require_AsapScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsapScheduler = void 0; + var AsyncScheduler_1 = require_AsyncScheduler(); + var AsapScheduler = function(_super) { + __extends(AsapScheduler2, _super); + function AsapScheduler2() { + return _super !== null && _super.apply(this, arguments) || this; + } + AsapScheduler2.prototype.flush = function(action) { + this._active = true; + var flushId = this._scheduled; + this._scheduled = void 0; + var actions2 = this.actions; + var error; + action = action || actions2.shift(); + do { + if (error = action.execute(action.state, action.delay)) { + break; + } + } while ((action = actions2[0]) && action.id === flushId && actions2.shift()); + this._active = false; + if (error) { + while ((action = actions2[0]) && action.id === flushId && actions2.shift()) { + action.unsubscribe(); + } + throw error; + } + }; + return AsapScheduler2; + }(AsyncScheduler_1.AsyncScheduler); + exports2.AsapScheduler = AsapScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js +var require_asap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.asap = exports2.asapScheduler = void 0; + var AsapAction_1 = require_AsapAction(); + var AsapScheduler_1 = require_AsapScheduler(); + exports2.asapScheduler = new AsapScheduler_1.AsapScheduler(AsapAction_1.AsapAction); + exports2.asap = exports2.asapScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/async.js +var require_async = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.async = exports2.asyncScheduler = void 0; + var AsyncAction_1 = require_AsyncAction(); + var AsyncScheduler_1 = require_AsyncScheduler(); + exports2.asyncScheduler = new AsyncScheduler_1.AsyncScheduler(AsyncAction_1.AsyncAction); + exports2.async = exports2.asyncScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js +var require_QueueAction = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.QueueAction = void 0; + var AsyncAction_1 = require_AsyncAction(); + var QueueAction = function(_super) { + __extends(QueueAction2, _super); + function QueueAction2(scheduler, work) { + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + return _this; + } + QueueAction2.prototype.schedule = function(state, delay) { + if (delay === void 0) { + delay = 0; + } + if (delay > 0) { + return _super.prototype.schedule.call(this, state, delay); + } + this.delay = delay; + this.state = state; + this.scheduler.flush(this); + return this; + }; + QueueAction2.prototype.execute = function(state, delay) { + return delay > 0 || this.closed ? _super.prototype.execute.call(this, state, delay) : this._execute(state, delay); + }; + QueueAction2.prototype.requestAsyncId = function(scheduler, id, delay) { + if (delay === void 0) { + delay = 0; + } + if (delay != null && delay > 0 || delay == null && this.delay > 0) { + return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); + } + scheduler.flush(this); + return 0; + }; + return QueueAction2; + }(AsyncAction_1.AsyncAction); + exports2.QueueAction = QueueAction; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js +var require_QueueScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.QueueScheduler = void 0; + var AsyncScheduler_1 = require_AsyncScheduler(); + var QueueScheduler = function(_super) { + __extends(QueueScheduler2, _super); + function QueueScheduler2() { + return _super !== null && _super.apply(this, arguments) || this; + } + return QueueScheduler2; + }(AsyncScheduler_1.AsyncScheduler); + exports2.QueueScheduler = QueueScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js +var require_queue = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.queue = exports2.queueScheduler = void 0; + var QueueAction_1 = require_QueueAction(); + var QueueScheduler_1 = require_QueueScheduler(); + exports2.queueScheduler = new QueueScheduler_1.QueueScheduler(QueueAction_1.QueueAction); + exports2.queue = exports2.queueScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js +var require_AnimationFrameAction = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AnimationFrameAction = void 0; + var AsyncAction_1 = require_AsyncAction(); + var animationFrameProvider_1 = require_animationFrameProvider(); + var AnimationFrameAction = function(_super) { + __extends(AnimationFrameAction2, _super); + function AnimationFrameAction2(scheduler, work) { + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + return _this; + } + AnimationFrameAction2.prototype.requestAsyncId = function(scheduler, id, delay) { + if (delay === void 0) { + delay = 0; + } + if (delay !== null && delay > 0) { + return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); + } + scheduler.actions.push(this); + return scheduler._scheduled || (scheduler._scheduled = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function() { + return scheduler.flush(void 0); + })); + }; + AnimationFrameAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { + var _a; + if (delay === void 0) { + delay = 0; + } + if (delay != null ? delay > 0 : this.delay > 0) { + return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay); + } + var actions2 = scheduler.actions; + if (id != null && ((_a = actions2[actions2.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) { + animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id); + scheduler._scheduled = void 0; + } + return void 0; + }; + return AnimationFrameAction2; + }(AsyncAction_1.AsyncAction); + exports2.AnimationFrameAction = AnimationFrameAction; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js +var require_AnimationFrameScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AnimationFrameScheduler = void 0; + var AsyncScheduler_1 = require_AsyncScheduler(); + var AnimationFrameScheduler = function(_super) { + __extends(AnimationFrameScheduler2, _super); + function AnimationFrameScheduler2() { + return _super !== null && _super.apply(this, arguments) || this; + } + AnimationFrameScheduler2.prototype.flush = function(action) { + this._active = true; + var flushId = this._scheduled; + this._scheduled = void 0; + var actions2 = this.actions; + var error; + action = action || actions2.shift(); + do { + if (error = action.execute(action.state, action.delay)) { + break; + } + } while ((action = actions2[0]) && action.id === flushId && actions2.shift()); + this._active = false; + if (error) { + while ((action = actions2[0]) && action.id === flushId && actions2.shift()) { + action.unsubscribe(); + } + throw error; + } + }; + return AnimationFrameScheduler2; + }(AsyncScheduler_1.AsyncScheduler); + exports2.AnimationFrameScheduler = AnimationFrameScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js +var require_animationFrame = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.animationFrame = exports2.animationFrameScheduler = void 0; + var AnimationFrameAction_1 = require_AnimationFrameAction(); + var AnimationFrameScheduler_1 = require_AnimationFrameScheduler(); + exports2.animationFrameScheduler = new AnimationFrameScheduler_1.AnimationFrameScheduler(AnimationFrameAction_1.AnimationFrameAction); + exports2.animationFrame = exports2.animationFrameScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js +var require_VirtualTimeScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (Object.prototype.hasOwnProperty.call(b2, p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VirtualAction = exports2.VirtualTimeScheduler = void 0; + var AsyncAction_1 = require_AsyncAction(); + var Subscription_1 = require_Subscription(); + var AsyncScheduler_1 = require_AsyncScheduler(); + var VirtualTimeScheduler = function(_super) { + __extends(VirtualTimeScheduler2, _super); + function VirtualTimeScheduler2(schedulerActionCtor, maxFrames) { + if (schedulerActionCtor === void 0) { + schedulerActionCtor = VirtualAction; + } + if (maxFrames === void 0) { + maxFrames = Infinity; + } + var _this = _super.call(this, schedulerActionCtor, function() { + return _this.frame; + }) || this; + _this.maxFrames = maxFrames; + _this.frame = 0; + _this.index = -1; + return _this; + } + VirtualTimeScheduler2.prototype.flush = function() { + var _a = this, actions2 = _a.actions, maxFrames = _a.maxFrames; + var error; + var action; + while ((action = actions2[0]) && action.delay <= maxFrames) { + actions2.shift(); + this.frame = action.delay; + if (error = action.execute(action.state, action.delay)) { + break; + } + } + if (error) { + while (action = actions2.shift()) { + action.unsubscribe(); + } + throw error; + } + }; + VirtualTimeScheduler2.frameTimeFactor = 10; + return VirtualTimeScheduler2; + }(AsyncScheduler_1.AsyncScheduler); + exports2.VirtualTimeScheduler = VirtualTimeScheduler; + var VirtualAction = function(_super) { + __extends(VirtualAction2, _super); + function VirtualAction2(scheduler, work, index) { + if (index === void 0) { + index = scheduler.index += 1; + } + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + _this.index = index; + _this.active = true; + _this.index = scheduler.index = index; + return _this; + } + VirtualAction2.prototype.schedule = function(state, delay) { + if (delay === void 0) { + delay = 0; + } + if (Number.isFinite(delay)) { + if (!this.id) { + return _super.prototype.schedule.call(this, state, delay); + } + this.active = false; + var action = new VirtualAction2(this.scheduler, this.work); + this.add(action); + return action.schedule(state, delay); + } else { + return Subscription_1.Subscription.EMPTY; + } + }; + VirtualAction2.prototype.requestAsyncId = function(scheduler, id, delay) { + if (delay === void 0) { + delay = 0; + } + this.delay = scheduler.frame + delay; + var actions2 = scheduler.actions; + actions2.push(this); + actions2.sort(VirtualAction2.sortActions); + return 1; + }; + VirtualAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { + if (delay === void 0) { + delay = 0; + } + return void 0; + }; + VirtualAction2.prototype._execute = function(state, delay) { + if (this.active === true) { + return _super.prototype._execute.call(this, state, delay); + } + }; + VirtualAction2.sortActions = function(a, b) { + if (a.delay === b.delay) { + if (a.index === b.index) { + return 0; + } else if (a.index > b.index) { + return 1; + } else { + return -1; + } + } else if (a.delay > b.delay) { + return 1; + } else { + return -1; + } + }; + return VirtualAction2; + }(AsyncAction_1.AsyncAction); + exports2.VirtualAction = VirtualAction; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/empty.js +var require_empty = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/empty.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.empty = exports2.EMPTY = void 0; + var Observable_1 = require_Observable(); + exports2.EMPTY = new Observable_1.Observable(function(subscriber2) { + return subscriber2.complete(); + }); + function empty(scheduler) { + return scheduler ? emptyScheduled(scheduler) : exports2.EMPTY; + } + exports2.empty = empty; + function emptyScheduled(scheduler) { + return new Observable_1.Observable(function(subscriber2) { + return scheduler.schedule(function() { + return subscriber2.complete(); + }); + }); + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js +var require_isScheduler = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isScheduler = void 0; + var isFunction_1 = require_isFunction(); + function isScheduler(value) { + return value && isFunction_1.isFunction(value.schedule); + } + exports2.isScheduler = isScheduler; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/args.js +var require_args = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/args.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.popNumber = exports2.popScheduler = exports2.popResultSelector = void 0; + var isFunction_1 = require_isFunction(); + var isScheduler_1 = require_isScheduler(); + function last(arr) { + return arr[arr.length - 1]; + } + function popResultSelector(args3) { + return isFunction_1.isFunction(last(args3)) ? args3.pop() : void 0; + } + exports2.popResultSelector = popResultSelector; + function popScheduler(args3) { + return isScheduler_1.isScheduler(last(args3)) ? args3.pop() : void 0; + } + exports2.popScheduler = popScheduler; + function popNumber(args3, defaultValue) { + return typeof last(args3) === "number" ? args3.pop() : defaultValue; + } + exports2.popNumber = popNumber; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js +var require_isArrayLike = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isArrayLike = void 0; + exports2.isArrayLike = function(x) { + return x && typeof x.length === "number" && typeof x !== "function"; + }; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isPromise.js +var require_isPromise = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isPromise.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isPromise = void 0; + var isFunction_1 = require_isFunction(); + function isPromise(value) { + return isFunction_1.isFunction(value === null || value === void 0 ? void 0 : value.then); + } + exports2.isPromise = isPromise; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js +var require_isInteropObservable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isInteropObservable = void 0; + var observable_1 = require_observable(); + var isFunction_1 = require_isFunction(); + function isInteropObservable(input) { + return isFunction_1.isFunction(input[observable_1.observable]); + } + exports2.isInteropObservable = isInteropObservable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js +var require_isAsyncIterable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isAsyncIterable = void 0; + var isFunction_1 = require_isFunction(); + function isAsyncIterable(obj2) { + return Symbol.asyncIterator && isFunction_1.isFunction(obj2 === null || obj2 === void 0 ? void 0 : obj2[Symbol.asyncIterator]); + } + exports2.isAsyncIterable = isAsyncIterable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js +var require_throwUnobservableError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createInvalidObservableTypeError = void 0; + function createInvalidObservableTypeError(input) { + return new TypeError("You provided " + (input !== null && typeof input === "object" ? "an invalid object" : "'" + input + "'") + " where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable."); + } + exports2.createInvalidObservableTypeError = createInvalidObservableTypeError; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js +var require_iterator = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.iterator = exports2.getSymbolIterator = void 0; + function getSymbolIterator() { + if (typeof Symbol !== "function" || !Symbol.iterator) { + return "@@iterator"; + } + return Symbol.iterator; + } + exports2.getSymbolIterator = getSymbolIterator; + exports2.iterator = getSymbolIterator(); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isIterable.js +var require_isIterable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isIterable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isIterable = void 0; + var iterator_1 = require_iterator(); + var isFunction_1 = require_isFunction(); + function isIterable(input) { + return isFunction_1.isFunction(input === null || input === void 0 ? void 0 : input[iterator_1.iterator]); + } + exports2.isIterable = isIterable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js +var require_isReadableStreamLike = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js"(exports2) { + "use strict"; + var __generator = exports2 && exports2.__generator || function(thisArg, body2) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body2.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } + }; + var __await = exports2 && exports2.__await || function(v) { + return this instanceof __await ? (this.v = v, this) : new __await(v); + }; + var __asyncGenerator = exports2 && exports2.__asyncGenerator || function(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i; + function verb(n) { + if (g[n]) + i[n] = function(v) { + return new Promise(function(a, b) { + q.push([n, v, a, b]) > 1 || resume(n, v); + }); + }; + } + function resume(n, v) { + try { + step(g[n](v)); + } catch (e) { + settle2(q[0][3], e); + } + } + function step(r) { + r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle2(q[0][2], r); + } + function fulfill(value) { + resume("next", value); + } + function reject(value) { + resume("throw", value); + } + function settle2(f, v) { + if (f(v), q.shift(), q.length) + resume(q[0][0], q[0][1]); + } + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isReadableStreamLike = exports2.readableStreamLikeToAsyncGenerator = void 0; + var isFunction_1 = require_isFunction(); + function readableStreamLikeToAsyncGenerator(readableStream) { + return __asyncGenerator(this, arguments, function readableStreamLikeToAsyncGenerator_1() { + var reader, _a, value, done; + return __generator(this, function(_b) { + switch (_b.label) { + case 0: + reader = readableStream.getReader(); + _b.label = 1; + case 1: + _b.trys.push([1, , 9, 10]); + _b.label = 2; + case 2: + if (false) + return [3, 8]; + return [4, __await(reader.read())]; + case 3: + _a = _b.sent(), value = _a.value, done = _a.done; + if (!done) + return [3, 5]; + return [4, __await(void 0)]; + case 4: + return [2, _b.sent()]; + case 5: + return [4, __await(value)]; + case 6: + return [4, _b.sent()]; + case 7: + _b.sent(); + return [3, 2]; + case 8: + return [3, 10]; + case 9: + reader.releaseLock(); + return [7]; + case 10: + return [2]; + } + }); + }); + } + exports2.readableStreamLikeToAsyncGenerator = readableStreamLikeToAsyncGenerator; + function isReadableStreamLike(obj2) { + return isFunction_1.isFunction(obj2 === null || obj2 === void 0 ? void 0 : obj2.getReader); + } + exports2.isReadableStreamLike = isReadableStreamLike; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/innerFrom.js +var require_innerFrom = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/innerFrom.js"(exports2) { + "use strict"; + var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve8) { + resolve8(value); + }); + } + return new (P || (P = Promise))(function(resolve8, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve8(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __generator = exports2 && exports2.__generator || function(thisArg, body2) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body2.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } + }; + var __asyncValues = exports2 && exports2.__asyncValues || function(o) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i); + function verb(n) { + i[n] = o[n] && function(v) { + return new Promise(function(resolve8, reject) { + v = o[n](v), settle2(resolve8, reject, v.done, v.value); + }); + }; + } + function settle2(resolve8, reject, d, v) { + Promise.resolve(v).then(function(v2) { + resolve8({ value: v2, done: d }); + }, reject); + } + }; + var __values = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromReadableStreamLike = exports2.fromAsyncIterable = exports2.fromIterable = exports2.fromPromise = exports2.fromArrayLike = exports2.fromInteropObservable = exports2.innerFrom = void 0; + var isArrayLike_1 = require_isArrayLike(); + var isPromise_1 = require_isPromise(); + var Observable_1 = require_Observable(); + var isInteropObservable_1 = require_isInteropObservable(); + var isAsyncIterable_1 = require_isAsyncIterable(); + var throwUnobservableError_1 = require_throwUnobservableError(); + var isIterable_1 = require_isIterable(); + var isReadableStreamLike_1 = require_isReadableStreamLike(); + var isFunction_1 = require_isFunction(); + var reportUnhandledError_1 = require_reportUnhandledError(); + var observable_1 = require_observable(); + function innerFrom(input) { + if (input instanceof Observable_1.Observable) { + return input; + } + if (input != null) { + if (isInteropObservable_1.isInteropObservable(input)) { + return fromInteropObservable(input); + } + if (isArrayLike_1.isArrayLike(input)) { + return fromArrayLike(input); + } + if (isPromise_1.isPromise(input)) { + return fromPromise(input); + } + if (isAsyncIterable_1.isAsyncIterable(input)) { + return fromAsyncIterable(input); + } + if (isIterable_1.isIterable(input)) { + return fromIterable(input); + } + if (isReadableStreamLike_1.isReadableStreamLike(input)) { + return fromReadableStreamLike(input); + } + } + throw throwUnobservableError_1.createInvalidObservableTypeError(input); + } + exports2.innerFrom = innerFrom; + function fromInteropObservable(obj2) { + return new Observable_1.Observable(function(subscriber2) { + var obs = obj2[observable_1.observable](); + if (isFunction_1.isFunction(obs.subscribe)) { + return obs.subscribe(subscriber2); + } + throw new TypeError("Provided object does not correctly implement Symbol.observable"); + }); + } + exports2.fromInteropObservable = fromInteropObservable; + function fromArrayLike(array) { + return new Observable_1.Observable(function(subscriber2) { + for (var i = 0; i < array.length && !subscriber2.closed; i++) { + subscriber2.next(array[i]); + } + subscriber2.complete(); + }); + } + exports2.fromArrayLike = fromArrayLike; + function fromPromise(promise) { + return new Observable_1.Observable(function(subscriber2) { + promise.then(function(value) { + if (!subscriber2.closed) { + subscriber2.next(value); + subscriber2.complete(); + } + }, function(err2) { + return subscriber2.error(err2); + }).then(null, reportUnhandledError_1.reportUnhandledError); + }); + } + exports2.fromPromise = fromPromise; + function fromIterable(iterable) { + return new Observable_1.Observable(function(subscriber2) { + var e_1, _a; + try { + for (var iterable_1 = __values(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()) { + var value = iterable_1_1.value; + subscriber2.next(value); + if (subscriber2.closed) { + return; + } + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (iterable_1_1 && !iterable_1_1.done && (_a = iterable_1.return)) + _a.call(iterable_1); + } finally { + if (e_1) + throw e_1.error; + } + } + subscriber2.complete(); + }); + } + exports2.fromIterable = fromIterable; + function fromAsyncIterable(asyncIterable) { + return new Observable_1.Observable(function(subscriber2) { + process3(asyncIterable, subscriber2).catch(function(err2) { + return subscriber2.error(err2); + }); + }); + } + exports2.fromAsyncIterable = fromAsyncIterable; + function fromReadableStreamLike(readableStream) { + return fromAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(readableStream)); + } + exports2.fromReadableStreamLike = fromReadableStreamLike; + function process3(asyncIterable, subscriber2) { + var asyncIterable_1, asyncIterable_1_1; + var e_2, _a; + return __awaiter(this, void 0, void 0, function() { + var value, e_2_1; + return __generator(this, function(_b) { + switch (_b.label) { + case 0: + _b.trys.push([0, 5, 6, 11]); + asyncIterable_1 = __asyncValues(asyncIterable); + _b.label = 1; + case 1: + return [4, asyncIterable_1.next()]; + case 2: + if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) + return [3, 4]; + value = asyncIterable_1_1.value; + subscriber2.next(value); + if (subscriber2.closed) { + return [2]; + } + _b.label = 3; + case 3: + return [3, 1]; + case 4: + return [3, 11]; + case 5: + e_2_1 = _b.sent(); + e_2 = { error: e_2_1 }; + return [3, 11]; + case 6: + _b.trys.push([6, , 9, 10]); + if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) + return [3, 8]; + return [4, _a.call(asyncIterable_1)]; + case 7: + _b.sent(); + _b.label = 8; + case 8: + return [3, 10]; + case 9: + if (e_2) + throw e_2.error; + return [7]; + case 10: + return [7]; + case 11: + subscriber2.complete(); + return [2]; + } + }); + }); + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/executeSchedule.js +var require_executeSchedule = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/executeSchedule.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.executeSchedule = void 0; + function executeSchedule(parentSubscription, scheduler, work, delay, repeat) { + if (delay === void 0) { + delay = 0; + } + if (repeat === void 0) { + repeat = false; + } + var scheduleSubscription = scheduler.schedule(function() { + work(); + if (repeat) { + parentSubscription.add(this.schedule(null, delay)); + } else { + this.unsubscribe(); + } + }, delay); + parentSubscription.add(scheduleSubscription); + if (!repeat) { + return scheduleSubscription; + } + } + exports2.executeSchedule = executeSchedule; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js +var require_observeOn = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.observeOn = void 0; + var executeSchedule_1 = require_executeSchedule(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function observeOn(scheduler, delay) { + if (delay === void 0) { + delay = 0; + } + return lift_1.operate(function(source2, subscriber2) { + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + return executeSchedule_1.executeSchedule(subscriber2, scheduler, function() { + return subscriber2.next(value); + }, delay); + }, function() { + return executeSchedule_1.executeSchedule(subscriber2, scheduler, function() { + return subscriber2.complete(); + }, delay); + }, function(err2) { + return executeSchedule_1.executeSchedule(subscriber2, scheduler, function() { + return subscriber2.error(err2); + }, delay); + })); + }); + } + exports2.observeOn = observeOn; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js +var require_subscribeOn = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.subscribeOn = void 0; + var lift_1 = require_lift(); + function subscribeOn(scheduler, delay) { + if (delay === void 0) { + delay = 0; + } + return lift_1.operate(function(source2, subscriber2) { + subscriber2.add(scheduler.schedule(function() { + return source2.subscribe(subscriber2); + }, delay)); + }); + } + exports2.subscribeOn = subscribeOn; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js +var require_scheduleObservable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scheduleObservable = void 0; + var innerFrom_1 = require_innerFrom(); + var observeOn_1 = require_observeOn(); + var subscribeOn_1 = require_subscribeOn(); + function scheduleObservable(input, scheduler) { + return innerFrom_1.innerFrom(input).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler)); + } + exports2.scheduleObservable = scheduleObservable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js +var require_schedulePromise = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.schedulePromise = void 0; + var innerFrom_1 = require_innerFrom(); + var observeOn_1 = require_observeOn(); + var subscribeOn_1 = require_subscribeOn(); + function schedulePromise(input, scheduler) { + return innerFrom_1.innerFrom(input).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler)); + } + exports2.schedulePromise = schedulePromise; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js +var require_scheduleArray = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scheduleArray = void 0; + var Observable_1 = require_Observable(); + function scheduleArray(input, scheduler) { + return new Observable_1.Observable(function(subscriber2) { + var i = 0; + return scheduler.schedule(function() { + if (i === input.length) { + subscriber2.complete(); + } else { + subscriber2.next(input[i++]); + if (!subscriber2.closed) { + this.schedule(); + } + } + }); + }); + } + exports2.scheduleArray = scheduleArray; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js +var require_scheduleIterable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scheduleIterable = void 0; + var Observable_1 = require_Observable(); + var iterator_1 = require_iterator(); + var isFunction_1 = require_isFunction(); + var executeSchedule_1 = require_executeSchedule(); + function scheduleIterable(input, scheduler) { + return new Observable_1.Observable(function(subscriber2) { + var iterator; + executeSchedule_1.executeSchedule(subscriber2, scheduler, function() { + iterator = input[iterator_1.iterator](); + executeSchedule_1.executeSchedule(subscriber2, scheduler, function() { + var _a; + var value; + var done; + try { + _a = iterator.next(), value = _a.value, done = _a.done; + } catch (err2) { + subscriber2.error(err2); + return; + } + if (done) { + subscriber2.complete(); + } else { + subscriber2.next(value); + } + }, 0, true); + }); + return function() { + return isFunction_1.isFunction(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return(); + }; + }); + } + exports2.scheduleIterable = scheduleIterable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js +var require_scheduleAsyncIterable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scheduleAsyncIterable = void 0; + var Observable_1 = require_Observable(); + var executeSchedule_1 = require_executeSchedule(); + function scheduleAsyncIterable(input, scheduler) { + if (!input) { + throw new Error("Iterable cannot be null"); + } + return new Observable_1.Observable(function(subscriber2) { + executeSchedule_1.executeSchedule(subscriber2, scheduler, function() { + var iterator = input[Symbol.asyncIterator](); + executeSchedule_1.executeSchedule(subscriber2, scheduler, function() { + iterator.next().then(function(result) { + if (result.done) { + subscriber2.complete(); + } else { + subscriber2.next(result.value); + } + }); + }, 0, true); + }); + }); + } + exports2.scheduleAsyncIterable = scheduleAsyncIterable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js +var require_scheduleReadableStreamLike = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scheduleReadableStreamLike = void 0; + var scheduleAsyncIterable_1 = require_scheduleAsyncIterable(); + var isReadableStreamLike_1 = require_isReadableStreamLike(); + function scheduleReadableStreamLike(input, scheduler) { + return scheduleAsyncIterable_1.scheduleAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(input), scheduler); + } + exports2.scheduleReadableStreamLike = scheduleReadableStreamLike; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js +var require_scheduled = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scheduled = void 0; + var scheduleObservable_1 = require_scheduleObservable(); + var schedulePromise_1 = require_schedulePromise(); + var scheduleArray_1 = require_scheduleArray(); + var scheduleIterable_1 = require_scheduleIterable(); + var scheduleAsyncIterable_1 = require_scheduleAsyncIterable(); + var isInteropObservable_1 = require_isInteropObservable(); + var isPromise_1 = require_isPromise(); + var isArrayLike_1 = require_isArrayLike(); + var isIterable_1 = require_isIterable(); + var isAsyncIterable_1 = require_isAsyncIterable(); + var throwUnobservableError_1 = require_throwUnobservableError(); + var isReadableStreamLike_1 = require_isReadableStreamLike(); + var scheduleReadableStreamLike_1 = require_scheduleReadableStreamLike(); + function scheduled(input, scheduler) { + if (input != null) { + if (isInteropObservable_1.isInteropObservable(input)) { + return scheduleObservable_1.scheduleObservable(input, scheduler); + } + if (isArrayLike_1.isArrayLike(input)) { + return scheduleArray_1.scheduleArray(input, scheduler); + } + if (isPromise_1.isPromise(input)) { + return schedulePromise_1.schedulePromise(input, scheduler); + } + if (isAsyncIterable_1.isAsyncIterable(input)) { + return scheduleAsyncIterable_1.scheduleAsyncIterable(input, scheduler); + } + if (isIterable_1.isIterable(input)) { + return scheduleIterable_1.scheduleIterable(input, scheduler); + } + if (isReadableStreamLike_1.isReadableStreamLike(input)) { + return scheduleReadableStreamLike_1.scheduleReadableStreamLike(input, scheduler); + } + } + throw throwUnobservableError_1.createInvalidObservableTypeError(input); + } + exports2.scheduled = scheduled; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/from.js +var require_from = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/from.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.from = void 0; + var scheduled_1 = require_scheduled(); + var innerFrom_1 = require_innerFrom(); + function from(input, scheduler) { + return scheduler ? scheduled_1.scheduled(input, scheduler) : innerFrom_1.innerFrom(input); + } + exports2.from = from; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/of.js +var require_of = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/of.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.of = void 0; + var args_1 = require_args(); + var from_1 = require_from(); + function of() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var scheduler = args_1.popScheduler(args3); + return from_1.from(args3, scheduler); + } + exports2.of = of; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/throwError.js +var require_throwError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/throwError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.throwError = void 0; + var Observable_1 = require_Observable(); + var isFunction_1 = require_isFunction(); + function throwError(errorOrErrorFactory, scheduler) { + var errorFactory = isFunction_1.isFunction(errorOrErrorFactory) ? errorOrErrorFactory : function() { + return errorOrErrorFactory; + }; + var init5 = function(subscriber2) { + return subscriber2.error(errorFactory()); + }; + return new Observable_1.Observable(scheduler ? function(subscriber2) { + return scheduler.schedule(init5, 0, subscriber2); + } : init5); + } + exports2.throwError = throwError; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Notification.js +var require_Notification = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/Notification.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.observeNotification = exports2.Notification = exports2.NotificationKind = void 0; + var empty_1 = require_empty(); + var of_1 = require_of(); + var throwError_1 = require_throwError(); + var isFunction_1 = require_isFunction(); + var NotificationKind; + (function(NotificationKind2) { + NotificationKind2["NEXT"] = "N"; + NotificationKind2["ERROR"] = "E"; + NotificationKind2["COMPLETE"] = "C"; + })(NotificationKind = exports2.NotificationKind || (exports2.NotificationKind = {})); + var Notification = function() { + function Notification2(kind, value, error) { + this.kind = kind; + this.value = value; + this.error = error; + this.hasValue = kind === "N"; + } + Notification2.prototype.observe = function(observer) { + return observeNotification(this, observer); + }; + Notification2.prototype.do = function(nextHandler, errorHandler, completeHandler) { + var _a = this, kind = _a.kind, value = _a.value, error = _a.error; + return kind === "N" ? nextHandler === null || nextHandler === void 0 ? void 0 : nextHandler(value) : kind === "E" ? errorHandler === null || errorHandler === void 0 ? void 0 : errorHandler(error) : completeHandler === null || completeHandler === void 0 ? void 0 : completeHandler(); + }; + Notification2.prototype.accept = function(nextOrObserver, error, complete) { + var _a; + return isFunction_1.isFunction((_a = nextOrObserver) === null || _a === void 0 ? void 0 : _a.next) ? this.observe(nextOrObserver) : this.do(nextOrObserver, error, complete); + }; + Notification2.prototype.toObservable = function() { + var _a = this, kind = _a.kind, value = _a.value, error = _a.error; + var result = kind === "N" ? of_1.of(value) : kind === "E" ? throwError_1.throwError(function() { + return error; + }) : kind === "C" ? empty_1.EMPTY : 0; + if (!result) { + throw new TypeError("Unexpected notification kind " + kind); + } + return result; + }; + Notification2.createNext = function(value) { + return new Notification2("N", value); + }; + Notification2.createError = function(err2) { + return new Notification2("E", void 0, err2); + }; + Notification2.createComplete = function() { + return Notification2.completeNotification; + }; + Notification2.completeNotification = new Notification2("C"); + return Notification2; + }(); + exports2.Notification = Notification; + function observeNotification(notification, observer) { + var _a, _b, _c; + var _d = notification, kind = _d.kind, value = _d.value, error = _d.error; + if (typeof kind !== "string") { + throw new TypeError('Invalid notification, missing "kind"'); + } + kind === "N" ? (_a = observer.next) === null || _a === void 0 ? void 0 : _a.call(observer, value) : kind === "E" ? (_b = observer.error) === null || _b === void 0 ? void 0 : _b.call(observer, error) : (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer); + } + exports2.observeNotification = observeNotification; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isObservable.js +var require_isObservable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isObservable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isObservable = void 0; + var Observable_1 = require_Observable(); + var isFunction_1 = require_isFunction(); + function isObservable(obj2) { + return !!obj2 && (obj2 instanceof Observable_1.Observable || isFunction_1.isFunction(obj2.lift) && isFunction_1.isFunction(obj2.subscribe)); + } + exports2.isObservable = isObservable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js +var require_EmptyError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EmptyError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.EmptyError = createErrorClass_1.createErrorClass(function(_super) { + return function EmptyErrorImpl() { + _super(this); + this.name = "EmptyError"; + this.message = "no elements in sequence"; + }; + }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js +var require_lastValueFrom = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.lastValueFrom = void 0; + var EmptyError_1 = require_EmptyError(); + function lastValueFrom(source2, config) { + var hasConfig = typeof config === "object"; + return new Promise(function(resolve8, reject) { + var _hasValue = false; + var _value; + source2.subscribe({ + next: function(value) { + _value = value; + _hasValue = true; + }, + error: reject, + complete: function() { + if (_hasValue) { + resolve8(_value); + } else if (hasConfig) { + resolve8(config.defaultValue); + } else { + reject(new EmptyError_1.EmptyError()); + } + } + }); + }); + } + exports2.lastValueFrom = lastValueFrom; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js +var require_firstValueFrom = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.firstValueFrom = void 0; + var EmptyError_1 = require_EmptyError(); + var Subscriber_1 = require_Subscriber(); + function firstValueFrom(source2, config) { + var hasConfig = typeof config === "object"; + return new Promise(function(resolve8, reject) { + var subscriber2 = new Subscriber_1.SafeSubscriber({ + next: function(value) { + resolve8(value); + subscriber2.unsubscribe(); + }, + error: reject, + complete: function() { + if (hasConfig) { + resolve8(config.defaultValue); + } else { + reject(new EmptyError_1.EmptyError()); + } + } + }); + source2.subscribe(subscriber2); + }); + } + exports2.firstValueFrom = firstValueFrom; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js +var require_ArgumentOutOfRangeError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ArgumentOutOfRangeError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.ArgumentOutOfRangeError = createErrorClass_1.createErrorClass(function(_super) { + return function ArgumentOutOfRangeErrorImpl() { + _super(this); + this.name = "ArgumentOutOfRangeError"; + this.message = "argument out of range"; + }; + }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js +var require_NotFoundError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NotFoundError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.NotFoundError = createErrorClass_1.createErrorClass(function(_super) { + return function NotFoundErrorImpl(message) { + _super(this); + this.name = "NotFoundError"; + this.message = message; + }; + }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js +var require_SequenceError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SequenceError = void 0; + var createErrorClass_1 = require_createErrorClass(); + exports2.SequenceError = createErrorClass_1.createErrorClass(function(_super) { + return function SequenceErrorImpl(message) { + _super(this); + this.name = "SequenceError"; + this.message = message; + }; + }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isDate.js +var require_isDate = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/isDate.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isValidDate = void 0; + function isValidDate(value) { + return value instanceof Date && !isNaN(value); + } + exports2.isValidDate = isValidDate; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeout.js +var require_timeout = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeout.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.timeout = exports2.TimeoutError = void 0; + var async_1 = require_async(); + var isDate_1 = require_isDate(); + var lift_1 = require_lift(); + var innerFrom_1 = require_innerFrom(); + var createErrorClass_1 = require_createErrorClass(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var executeSchedule_1 = require_executeSchedule(); + exports2.TimeoutError = createErrorClass_1.createErrorClass(function(_super) { + return function TimeoutErrorImpl(info2) { + if (info2 === void 0) { + info2 = null; + } + _super(this); + this.message = "Timeout has occurred"; + this.name = "TimeoutError"; + this.info = info2; + }; + }); + function timeout(config, schedulerArg) { + var _a = isDate_1.isValidDate(config) ? { first: config } : typeof config === "number" ? { each: config } : config, first = _a.first, each = _a.each, _b = _a.with, _with = _b === void 0 ? timeoutErrorFactory : _b, _c = _a.scheduler, scheduler = _c === void 0 ? schedulerArg !== null && schedulerArg !== void 0 ? schedulerArg : async_1.asyncScheduler : _c, _d = _a.meta, meta = _d === void 0 ? null : _d; + if (first == null && each == null) { + throw new TypeError("No timeout provided."); + } + return lift_1.operate(function(source2, subscriber2) { + var originalSourceSubscription; + var timerSubscription; + var lastValue = null; + var seen = 0; + var startTimer = function(delay) { + timerSubscription = executeSchedule_1.executeSchedule(subscriber2, scheduler, function() { + try { + originalSourceSubscription.unsubscribe(); + innerFrom_1.innerFrom(_with({ + meta, + lastValue, + seen + })).subscribe(subscriber2); + } catch (err2) { + subscriber2.error(err2); + } + }, delay); + }; + originalSourceSubscription = source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe(); + seen++; + subscriber2.next(lastValue = value); + each > 0 && startTimer(each); + }, void 0, void 0, function() { + if (!(timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.closed)) { + timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe(); + } + lastValue = null; + })); + !seen && startTimer(first != null ? typeof first === "number" ? first : +first - scheduler.now() : each); + }); + } + exports2.timeout = timeout; + function timeoutErrorFactory(info2) { + throw new exports2.TimeoutError(info2); + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/map.js +var require_map = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/map.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.map = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function map(project, thisArg) { + return lift_1.operate(function(source2, subscriber2) { + var index = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + subscriber2.next(project.call(thisArg, value, index++)); + })); + }); + } + exports2.map = map; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js +var require_mapOneOrManyArgs = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mapOneOrManyArgs = void 0; + var map_1 = require_map(); + var isArray2 = Array.isArray; + function callOrApply(fn, args3) { + return isArray2(args3) ? fn.apply(void 0, __spreadArray([], __read(args3))) : fn(args3); + } + function mapOneOrManyArgs(fn) { + return map_1.map(function(args3) { + return callOrApply(fn, args3); + }); + } + exports2.mapOneOrManyArgs = mapOneOrManyArgs; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js +var require_bindCallbackInternals = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bindCallbackInternals = void 0; + var isScheduler_1 = require_isScheduler(); + var Observable_1 = require_Observable(); + var subscribeOn_1 = require_subscribeOn(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var observeOn_1 = require_observeOn(); + var AsyncSubject_1 = require_AsyncSubject(); + function bindCallbackInternals(isNodeStyle, callbackFunc, resultSelector, scheduler) { + if (resultSelector) { + if (isScheduler_1.isScheduler(resultSelector)) { + scheduler = resultSelector; + } else { + return function() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + return bindCallbackInternals(isNodeStyle, callbackFunc, scheduler).apply(this, args3).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); + }; + } + } + if (scheduler) { + return function() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + return bindCallbackInternals(isNodeStyle, callbackFunc).apply(this, args3).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler)); + }; + } + return function() { + var _this = this; + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var subject = new AsyncSubject_1.AsyncSubject(); + var uninitialized = true; + return new Observable_1.Observable(function(subscriber2) { + var subs = subject.subscribe(subscriber2); + if (uninitialized) { + uninitialized = false; + var isAsync_1 = false; + var isComplete_1 = false; + callbackFunc.apply(_this, __spreadArray(__spreadArray([], __read(args3)), [ + function() { + var results = []; + for (var _i2 = 0; _i2 < arguments.length; _i2++) { + results[_i2] = arguments[_i2]; + } + if (isNodeStyle) { + var err2 = results.shift(); + if (err2 != null) { + subject.error(err2); + return; + } + } + subject.next(1 < results.length ? results : results[0]); + isComplete_1 = true; + if (isAsync_1) { + subject.complete(); + } + } + ])); + if (isComplete_1) { + subject.complete(); + } + isAsync_1 = true; + } + return subs; + }); + }; + } + exports2.bindCallbackInternals = bindCallbackInternals; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js +var require_bindCallback = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bindCallback = void 0; + var bindCallbackInternals_1 = require_bindCallbackInternals(); + function bindCallback(callbackFunc, resultSelector, scheduler) { + return bindCallbackInternals_1.bindCallbackInternals(false, callbackFunc, resultSelector, scheduler); + } + exports2.bindCallback = bindCallback; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js +var require_bindNodeCallback = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bindNodeCallback = void 0; + var bindCallbackInternals_1 = require_bindCallbackInternals(); + function bindNodeCallback(callbackFunc, resultSelector, scheduler) { + return bindCallbackInternals_1.bindCallbackInternals(true, callbackFunc, resultSelector, scheduler); + } + exports2.bindNodeCallback = bindNodeCallback; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js +var require_argsArgArrayOrObject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.argsArgArrayOrObject = void 0; + var isArray2 = Array.isArray; + var getPrototypeOf2 = Object.getPrototypeOf; + var objectProto = Object.prototype; + var getKeys = Object.keys; + function argsArgArrayOrObject(args3) { + if (args3.length === 1) { + var first_1 = args3[0]; + if (isArray2(first_1)) { + return { args: first_1, keys: null }; + } + if (isPOJO(first_1)) { + var keys = getKeys(first_1); + return { + args: keys.map(function(key) { + return first_1[key]; + }), + keys + }; + } + } + return { args: args3, keys: null }; + } + exports2.argsArgArrayOrObject = argsArgArrayOrObject; + function isPOJO(obj2) { + return obj2 && typeof obj2 === "object" && getPrototypeOf2(obj2) === objectProto; + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/createObject.js +var require_createObject = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/createObject.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createObject = void 0; + function createObject(keys, values) { + return keys.reduce(function(result, key, i) { + return result[key] = values[i], result; + }, {}); + } + exports2.createObject = createObject; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js +var require_combineLatest = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.combineLatestInit = exports2.combineLatest = void 0; + var Observable_1 = require_Observable(); + var argsArgArrayOrObject_1 = require_argsArgArrayOrObject(); + var from_1 = require_from(); + var identity_1 = require_identity(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var args_1 = require_args(); + var createObject_1 = require_createObject(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var executeSchedule_1 = require_executeSchedule(); + function combineLatest() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var scheduler = args_1.popScheduler(args3); + var resultSelector = args_1.popResultSelector(args3); + var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args3), observables = _a.args, keys = _a.keys; + if (observables.length === 0) { + return from_1.from([], scheduler); + } + var result = new Observable_1.Observable(combineLatestInit(observables, scheduler, keys ? function(values) { + return createObject_1.createObject(keys, values); + } : identity_1.identity)); + return resultSelector ? result.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result; + } + exports2.combineLatest = combineLatest; + function combineLatestInit(observables, scheduler, valueTransform) { + if (valueTransform === void 0) { + valueTransform = identity_1.identity; + } + return function(subscriber2) { + maybeSchedule(scheduler, function() { + var length = observables.length; + var values = new Array(length); + var active = length; + var remainingFirstValues = length; + var _loop_1 = function(i2) { + maybeSchedule(scheduler, function() { + var source2 = from_1.from(observables[i2], scheduler); + var hasFirstValue = false; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + values[i2] = value; + if (!hasFirstValue) { + hasFirstValue = true; + remainingFirstValues--; + } + if (!remainingFirstValues) { + subscriber2.next(valueTransform(values.slice())); + } + }, function() { + if (!--active) { + subscriber2.complete(); + } + })); + }, subscriber2); + }; + for (var i = 0; i < length; i++) { + _loop_1(i); + } + }, subscriber2); + }; + } + exports2.combineLatestInit = combineLatestInit; + function maybeSchedule(scheduler, execute, subscription) { + if (scheduler) { + executeSchedule_1.executeSchedule(subscription, scheduler, execute); + } else { + execute(); + } + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js +var require_mergeInternals = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeInternals = void 0; + var innerFrom_1 = require_innerFrom(); + var executeSchedule_1 = require_executeSchedule(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function mergeInternals(source2, subscriber2, project, concurrent, onBeforeNext, expand2, innerSubScheduler, additionalFinalizer) { + var buffer2 = []; + var active = 0; + var index = 0; + var isComplete = false; + var checkComplete = function() { + if (isComplete && !buffer2.length && !active) { + subscriber2.complete(); + } + }; + var outerNext = function(value) { + return active < concurrent ? doInnerSub(value) : buffer2.push(value); + }; + var doInnerSub = function(value) { + expand2 && subscriber2.next(value); + active++; + var innerComplete = false; + innerFrom_1.innerFrom(project(value, index++)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(innerValue) { + onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue); + if (expand2) { + outerNext(innerValue); + } else { + subscriber2.next(innerValue); + } + }, function() { + innerComplete = true; + }, void 0, function() { + if (innerComplete) { + try { + active--; + var _loop_1 = function() { + var bufferedValue = buffer2.shift(); + if (innerSubScheduler) { + executeSchedule_1.executeSchedule(subscriber2, innerSubScheduler, function() { + return doInnerSub(bufferedValue); + }); + } else { + doInnerSub(bufferedValue); + } + }; + while (buffer2.length && active < concurrent) { + _loop_1(); + } + checkComplete(); + } catch (err2) { + subscriber2.error(err2); + } + } + })); + }; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, outerNext, function() { + isComplete = true; + checkComplete(); + })); + return function() { + additionalFinalizer === null || additionalFinalizer === void 0 ? void 0 : additionalFinalizer(); + }; + } + exports2.mergeInternals = mergeInternals; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js +var require_mergeMap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeMap = void 0; + var map_1 = require_map(); + var innerFrom_1 = require_innerFrom(); + var lift_1 = require_lift(); + var mergeInternals_1 = require_mergeInternals(); + var isFunction_1 = require_isFunction(); + function mergeMap(project, resultSelector, concurrent) { + if (concurrent === void 0) { + concurrent = Infinity; + } + if (isFunction_1.isFunction(resultSelector)) { + return mergeMap(function(a, i) { + return map_1.map(function(b, ii) { + return resultSelector(a, b, i, ii); + })(innerFrom_1.innerFrom(project(a, i))); + }, concurrent); + } else if (typeof resultSelector === "number") { + concurrent = resultSelector; + } + return lift_1.operate(function(source2, subscriber2) { + return mergeInternals_1.mergeInternals(source2, subscriber2, project, concurrent); + }); + } + exports2.mergeMap = mergeMap; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js +var require_mergeAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeAll = void 0; + var mergeMap_1 = require_mergeMap(); + var identity_1 = require_identity(); + function mergeAll(concurrent) { + if (concurrent === void 0) { + concurrent = Infinity; + } + return mergeMap_1.mergeMap(identity_1.identity, concurrent); + } + exports2.mergeAll = mergeAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js +var require_concatAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concatAll = void 0; + var mergeAll_1 = require_mergeAll(); + function concatAll() { + return mergeAll_1.mergeAll(1); + } + exports2.concatAll = concatAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/concat.js +var require_concat = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/concat.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concat = void 0; + var concatAll_1 = require_concatAll(); + var args_1 = require_args(); + var from_1 = require_from(); + function concat() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + return concatAll_1.concatAll()(from_1.from(args3, args_1.popScheduler(args3))); + } + exports2.concat = concat; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/defer.js +var require_defer = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/defer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defer = void 0; + var Observable_1 = require_Observable(); + var innerFrom_1 = require_innerFrom(); + function defer2(observableFactory) { + return new Observable_1.Observable(function(subscriber2) { + innerFrom_1.innerFrom(observableFactory()).subscribe(subscriber2); + }); + } + exports2.defer = defer2; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/connectable.js +var require_connectable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/connectable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.connectable = void 0; + var Subject_1 = require_Subject(); + var Observable_1 = require_Observable(); + var defer_1 = require_defer(); + var DEFAULT_CONFIG = { + connector: function() { + return new Subject_1.Subject(); + }, + resetOnDisconnect: true + }; + function connectable(source2, config) { + if (config === void 0) { + config = DEFAULT_CONFIG; + } + var connection = null; + var connector = config.connector, _a = config.resetOnDisconnect, resetOnDisconnect = _a === void 0 ? true : _a; + var subject = connector(); + var result = new Observable_1.Observable(function(subscriber2) { + return subject.subscribe(subscriber2); + }); + result.connect = function() { + if (!connection || connection.closed) { + connection = defer_1.defer(function() { + return source2; + }).subscribe(subject); + if (resetOnDisconnect) { + connection.add(function() { + return subject = connector(); + }); + } + } + return connection; + }; + return result; + } + exports2.connectable = connectable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js +var require_forkJoin = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.forkJoin = void 0; + var Observable_1 = require_Observable(); + var argsArgArrayOrObject_1 = require_argsArgArrayOrObject(); + var innerFrom_1 = require_innerFrom(); + var args_1 = require_args(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var createObject_1 = require_createObject(); + function forkJoin() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var resultSelector = args_1.popResultSelector(args3); + var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args3), sources = _a.args, keys = _a.keys; + var result = new Observable_1.Observable(function(subscriber2) { + var length = sources.length; + if (!length) { + subscriber2.complete(); + return; + } + var values = new Array(length); + var remainingCompletions = length; + var remainingEmissions = length; + var _loop_1 = function(sourceIndex2) { + var hasValue = false; + innerFrom_1.innerFrom(sources[sourceIndex2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + if (!hasValue) { + hasValue = true; + remainingEmissions--; + } + values[sourceIndex2] = value; + }, function() { + return remainingCompletions--; + }, void 0, function() { + if (!remainingCompletions || !hasValue) { + if (!remainingEmissions) { + subscriber2.next(keys ? createObject_1.createObject(keys, values) : values); + } + subscriber2.complete(); + } + })); + }; + for (var sourceIndex = 0; sourceIndex < length; sourceIndex++) { + _loop_1(sourceIndex); + } + }); + return resultSelector ? result.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result; + } + exports2.forkJoin = forkJoin; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js +var require_fromEvent = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromEvent = void 0; + var innerFrom_1 = require_innerFrom(); + var Observable_1 = require_Observable(); + var mergeMap_1 = require_mergeMap(); + var isArrayLike_1 = require_isArrayLike(); + var isFunction_1 = require_isFunction(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var nodeEventEmitterMethods = ["addListener", "removeListener"]; + var eventTargetMethods = ["addEventListener", "removeEventListener"]; + var jqueryMethods = ["on", "off"]; + function fromEvent(target, eventName, options2, resultSelector) { + if (isFunction_1.isFunction(options2)) { + resultSelector = options2; + options2 = void 0; + } + if (resultSelector) { + return fromEvent(target, eventName, options2).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); + } + var _a = __read(isEventTarget(target) ? eventTargetMethods.map(function(methodName) { + return function(handler) { + return target[methodName](eventName, handler, options2); + }; + }) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2), add = _a[0], remove = _a[1]; + if (!add) { + if (isArrayLike_1.isArrayLike(target)) { + return mergeMap_1.mergeMap(function(subTarget) { + return fromEvent(subTarget, eventName, options2); + })(innerFrom_1.innerFrom(target)); + } + } + if (!add) { + throw new TypeError("Invalid event target"); + } + return new Observable_1.Observable(function(subscriber2) { + var handler = function() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + return subscriber2.next(1 < args3.length ? args3 : args3[0]); + }; + add(handler); + return function() { + return remove(handler); + }; + }); + } + exports2.fromEvent = fromEvent; + function toCommonHandlerRegistry(target, eventName) { + return function(methodName) { + return function(handler) { + return target[methodName](eventName, handler); + }; + }; + } + function isNodeStyleEventEmitter(target) { + return isFunction_1.isFunction(target.addListener) && isFunction_1.isFunction(target.removeListener); + } + function isJQueryStyleEventEmitter(target) { + return isFunction_1.isFunction(target.on) && isFunction_1.isFunction(target.off); + } + function isEventTarget(target) { + return isFunction_1.isFunction(target.addEventListener) && isFunction_1.isFunction(target.removeEventListener); + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js +var require_fromEventPattern = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromEventPattern = void 0; + var Observable_1 = require_Observable(); + var isFunction_1 = require_isFunction(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + function fromEventPattern(addHandler, removeHandler, resultSelector) { + if (resultSelector) { + return fromEventPattern(addHandler, removeHandler).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); + } + return new Observable_1.Observable(function(subscriber2) { + var handler = function() { + var e = []; + for (var _i = 0; _i < arguments.length; _i++) { + e[_i] = arguments[_i]; + } + return subscriber2.next(e.length === 1 ? e[0] : e); + }; + var retValue = addHandler(handler); + return isFunction_1.isFunction(removeHandler) ? function() { + return removeHandler(handler, retValue); + } : void 0; + }); + } + exports2.fromEventPattern = fromEventPattern; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/generate.js +var require_generate = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/generate.js"(exports2) { + "use strict"; + var __generator = exports2 && exports2.__generator || function(thisArg, body2) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body2.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.generate = void 0; + var identity_1 = require_identity(); + var isScheduler_1 = require_isScheduler(); + var defer_1 = require_defer(); + var scheduleIterable_1 = require_scheduleIterable(); + function generate(initialStateOrOptions, condition, iterate2, resultSelectorOrScheduler, scheduler) { + var _a, _b; + var resultSelector; + var initialState; + if (arguments.length === 1) { + _a = initialStateOrOptions, initialState = _a.initialState, condition = _a.condition, iterate2 = _a.iterate, _b = _a.resultSelector, resultSelector = _b === void 0 ? identity_1.identity : _b, scheduler = _a.scheduler; + } else { + initialState = initialStateOrOptions; + if (!resultSelectorOrScheduler || isScheduler_1.isScheduler(resultSelectorOrScheduler)) { + resultSelector = identity_1.identity; + scheduler = resultSelectorOrScheduler; + } else { + resultSelector = resultSelectorOrScheduler; + } + } + function gen() { + var state; + return __generator(this, function(_a2) { + switch (_a2.label) { + case 0: + state = initialState; + _a2.label = 1; + case 1: + if (!(!condition || condition(state))) + return [3, 4]; + return [4, resultSelector(state)]; + case 2: + _a2.sent(); + _a2.label = 3; + case 3: + state = iterate2(state); + return [3, 1]; + case 4: + return [2]; + } + }); + } + return defer_1.defer(scheduler ? function() { + return scheduleIterable_1.scheduleIterable(gen(), scheduler); + } : gen); + } + exports2.generate = generate; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/iif.js +var require_iif = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/iif.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.iif = void 0; + var defer_1 = require_defer(); + function iif(condition, trueResult, falseResult) { + return defer_1.defer(function() { + return condition() ? trueResult : falseResult; + }); + } + exports2.iif = iif; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/timer.js +var require_timer = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/timer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.timer = void 0; + var Observable_1 = require_Observable(); + var async_1 = require_async(); + var isScheduler_1 = require_isScheduler(); + var isDate_1 = require_isDate(); + function timer(dueTime, intervalOrScheduler, scheduler) { + if (dueTime === void 0) { + dueTime = 0; + } + if (scheduler === void 0) { + scheduler = async_1.async; + } + var intervalDuration = -1; + if (intervalOrScheduler != null) { + if (isScheduler_1.isScheduler(intervalOrScheduler)) { + scheduler = intervalOrScheduler; + } else { + intervalDuration = intervalOrScheduler; + } + } + return new Observable_1.Observable(function(subscriber2) { + var due = isDate_1.isValidDate(dueTime) ? +dueTime - scheduler.now() : dueTime; + if (due < 0) { + due = 0; + } + var n = 0; + return scheduler.schedule(function() { + if (!subscriber2.closed) { + subscriber2.next(n++); + if (0 <= intervalDuration) { + this.schedule(void 0, intervalDuration); + } else { + subscriber2.complete(); + } + } + }, due); + }); + } + exports2.timer = timer; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/interval.js +var require_interval = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/interval.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.interval = void 0; + var async_1 = require_async(); + var timer_1 = require_timer(); + function interval(period, scheduler) { + if (period === void 0) { + period = 0; + } + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + if (period < 0) { + period = 0; + } + return timer_1.timer(period, period, scheduler); + } + exports2.interval = interval; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/merge.js +var require_merge = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/merge.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.merge = void 0; + var mergeAll_1 = require_mergeAll(); + var innerFrom_1 = require_innerFrom(); + var empty_1 = require_empty(); + var args_1 = require_args(); + var from_1 = require_from(); + function merge3() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var scheduler = args_1.popScheduler(args3); + var concurrent = args_1.popNumber(args3, Infinity); + var sources = args3; + return !sources.length ? empty_1.EMPTY : sources.length === 1 ? innerFrom_1.innerFrom(sources[0]) : mergeAll_1.mergeAll(concurrent)(from_1.from(sources, scheduler)); + } + exports2.merge = merge3; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/never.js +var require_never = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/never.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.never = exports2.NEVER = void 0; + var Observable_1 = require_Observable(); + var noop_1 = require_noop(); + exports2.NEVER = new Observable_1.Observable(noop_1.noop); + function never() { + return exports2.NEVER; + } + exports2.never = never; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js +var require_argsOrArgArray = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.argsOrArgArray = void 0; + var isArray2 = Array.isArray; + function argsOrArgArray(args3) { + return args3.length === 1 && isArray2(args3[0]) ? args3[0] : args3; + } + exports2.argsOrArgArray = argsOrArgArray; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js +var require_onErrorResumeNext = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.onErrorResumeNext = void 0; + var Observable_1 = require_Observable(); + var argsOrArgArray_1 = require_argsOrArgArray(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + var innerFrom_1 = require_innerFrom(); + function onErrorResumeNext() { + var sources = []; + for (var _i = 0; _i < arguments.length; _i++) { + sources[_i] = arguments[_i]; + } + var nextSources = argsOrArgArray_1.argsOrArgArray(sources); + return new Observable_1.Observable(function(subscriber2) { + var sourceIndex = 0; + var subscribeNext = function() { + if (sourceIndex < nextSources.length) { + var nextSource = void 0; + try { + nextSource = innerFrom_1.innerFrom(nextSources[sourceIndex++]); + } catch (err2) { + subscribeNext(); + return; + } + var innerSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber2, void 0, noop_1.noop, noop_1.noop); + nextSource.subscribe(innerSubscriber); + innerSubscriber.add(subscribeNext); + } else { + subscriber2.complete(); + } + }; + subscribeNext(); + }); + } + exports2.onErrorResumeNext = onErrorResumeNext; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/pairs.js +var require_pairs = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/pairs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pairs = void 0; + var from_1 = require_from(); + function pairs(obj2, scheduler) { + return from_1.from(Object.entries(obj2), scheduler); + } + exports2.pairs = pairs; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/not.js +var require_not = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/util/not.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.not = void 0; + function not(pred, thisArg) { + return function(value, index) { + return !pred.call(thisArg, value, index); + }; + } + exports2.not = not; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/filter.js +var require_filter = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/filter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.filter = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function filter3(predicate, thisArg) { + return lift_1.operate(function(source2, subscriber2) { + var index = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + return predicate.call(thisArg, value, index++) && subscriber2.next(value); + })); + }); + } + exports2.filter = filter3; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/partition.js +var require_partition = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/partition.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.partition = void 0; + var not_1 = require_not(); + var filter_1 = require_filter(); + var innerFrom_1 = require_innerFrom(); + function partition(source2, predicate, thisArg) { + return [filter_1.filter(predicate, thisArg)(innerFrom_1.innerFrom(source2)), filter_1.filter(not_1.not(predicate, thisArg))(innerFrom_1.innerFrom(source2))]; + } + exports2.partition = partition; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/race.js +var require_race = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/race.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.raceInit = exports2.race = void 0; + var Observable_1 = require_Observable(); + var innerFrom_1 = require_innerFrom(); + var argsOrArgArray_1 = require_argsOrArgArray(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function race() { + var sources = []; + for (var _i = 0; _i < arguments.length; _i++) { + sources[_i] = arguments[_i]; + } + sources = argsOrArgArray_1.argsOrArgArray(sources); + return sources.length === 1 ? innerFrom_1.innerFrom(sources[0]) : new Observable_1.Observable(raceInit(sources)); + } + exports2.race = race; + function raceInit(sources) { + return function(subscriber2) { + var subscriptions = []; + var _loop_1 = function(i2) { + subscriptions.push(innerFrom_1.innerFrom(sources[i2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + if (subscriptions) { + for (var s = 0; s < subscriptions.length; s++) { + s !== i2 && subscriptions[s].unsubscribe(); + } + subscriptions = null; + } + subscriber2.next(value); + }))); + }; + for (var i = 0; subscriptions && !subscriber2.closed && i < sources.length; i++) { + _loop_1(i); + } + }; + } + exports2.raceInit = raceInit; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/range.js +var require_range = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/range.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.range = void 0; + var Observable_1 = require_Observable(); + var empty_1 = require_empty(); + function range(start4, count, scheduler) { + if (count == null) { + count = start4; + start4 = 0; + } + if (count <= 0) { + return empty_1.EMPTY; + } + var end = count + start4; + return new Observable_1.Observable(scheduler ? function(subscriber2) { + var n = start4; + return scheduler.schedule(function() { + if (n < end) { + subscriber2.next(n++); + this.schedule(); + } else { + subscriber2.complete(); + } + }); + } : function(subscriber2) { + var n = start4; + while (n < end && !subscriber2.closed) { + subscriber2.next(n++); + } + subscriber2.complete(); + }); + } + exports2.range = range; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/using.js +var require_using = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/using.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.using = void 0; + var Observable_1 = require_Observable(); + var innerFrom_1 = require_innerFrom(); + var empty_1 = require_empty(); + function using(resourceFactory, observableFactory) { + return new Observable_1.Observable(function(subscriber2) { + var resource = resourceFactory(); + var result = observableFactory(resource); + var source2 = result ? innerFrom_1.innerFrom(result) : empty_1.EMPTY; + source2.subscribe(subscriber2); + return function() { + if (resource) { + resource.unsubscribe(); + } + }; + }); + } + exports2.using = using; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/zip.js +var require_zip = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/zip.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.zip = void 0; + var Observable_1 = require_Observable(); + var innerFrom_1 = require_innerFrom(); + var argsOrArgArray_1 = require_argsOrArgArray(); + var empty_1 = require_empty(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var args_1 = require_args(); + function zip() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var resultSelector = args_1.popResultSelector(args3); + var sources = argsOrArgArray_1.argsOrArgArray(args3); + return sources.length ? new Observable_1.Observable(function(subscriber2) { + var buffers = sources.map(function() { + return []; + }); + var completed = sources.map(function() { + return false; + }); + subscriber2.add(function() { + buffers = completed = null; + }); + var _loop_1 = function(sourceIndex2) { + innerFrom_1.innerFrom(sources[sourceIndex2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + buffers[sourceIndex2].push(value); + if (buffers.every(function(buffer2) { + return buffer2.length; + })) { + var result = buffers.map(function(buffer2) { + return buffer2.shift(); + }); + subscriber2.next(resultSelector ? resultSelector.apply(void 0, __spreadArray([], __read(result))) : result); + if (buffers.some(function(buffer2, i) { + return !buffer2.length && completed[i]; + })) { + subscriber2.complete(); + } + } + }, function() { + completed[sourceIndex2] = true; + !buffers[sourceIndex2].length && subscriber2.complete(); + })); + }; + for (var sourceIndex = 0; !subscriber2.closed && sourceIndex < sources.length; sourceIndex++) { + _loop_1(sourceIndex); + } + return function() { + buffers = completed = null; + }; + }) : empty_1.EMPTY; + } + exports2.zip = zip; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/types.js +var require_types2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/audit.js +var require_audit = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/audit.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.audit = void 0; + var lift_1 = require_lift(); + var innerFrom_1 = require_innerFrom(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function audit(durationSelector) { + return lift_1.operate(function(source2, subscriber2) { + var hasValue = false; + var lastValue = null; + var durationSubscriber = null; + var isComplete = false; + var endDuration = function() { + durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); + durationSubscriber = null; + if (hasValue) { + hasValue = false; + var value = lastValue; + lastValue = null; + subscriber2.next(value); + } + isComplete && subscriber2.complete(); + }; + var cleanupDuration = function() { + durationSubscriber = null; + isComplete && subscriber2.complete(); + }; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + hasValue = true; + lastValue = value; + if (!durationSubscriber) { + innerFrom_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, endDuration, cleanupDuration)); + } + }, function() { + isComplete = true; + (!hasValue || !durationSubscriber || durationSubscriber.closed) && subscriber2.complete(); + })); + }); + } + exports2.audit = audit; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js +var require_auditTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.auditTime = void 0; + var async_1 = require_async(); + var audit_1 = require_audit(); + var timer_1 = require_timer(); + function auditTime(duration, scheduler) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + return audit_1.audit(function() { + return timer_1.timer(duration, scheduler); + }); + } + exports2.auditTime = auditTime; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/buffer.js +var require_buffer = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/buffer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.buffer = void 0; + var lift_1 = require_lift(); + var noop_1 = require_noop(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function buffer2(closingNotifier) { + return lift_1.operate(function(source2, subscriber2) { + var currentBuffer = []; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + return currentBuffer.push(value); + }, function() { + subscriber2.next(currentBuffer); + subscriber2.complete(); + })); + innerFrom_1.innerFrom(closingNotifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + var b = currentBuffer; + currentBuffer = []; + subscriber2.next(b); + }, noop_1.noop)); + return function() { + currentBuffer = null; + }; + }); + } + exports2.buffer = buffer2; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js +var require_bufferCount = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js"(exports2) { + "use strict"; + var __values = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bufferCount = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var arrRemove_1 = require_arrRemove(); + function bufferCount(bufferSize, startBufferEvery) { + if (startBufferEvery === void 0) { + startBufferEvery = null; + } + startBufferEvery = startBufferEvery !== null && startBufferEvery !== void 0 ? startBufferEvery : bufferSize; + return lift_1.operate(function(source2, subscriber2) { + var buffers = []; + var count = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var e_1, _a, e_2, _b; + var toEmit = null; + if (count++ % startBufferEvery === 0) { + buffers.push([]); + } + try { + for (var buffers_1 = __values(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) { + var buffer2 = buffers_1_1.value; + buffer2.push(value); + if (bufferSize <= buffer2.length) { + toEmit = toEmit !== null && toEmit !== void 0 ? toEmit : []; + toEmit.push(buffer2); + } + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) + _a.call(buffers_1); + } finally { + if (e_1) + throw e_1.error; + } + } + if (toEmit) { + try { + for (var toEmit_1 = __values(toEmit), toEmit_1_1 = toEmit_1.next(); !toEmit_1_1.done; toEmit_1_1 = toEmit_1.next()) { + var buffer2 = toEmit_1_1.value; + arrRemove_1.arrRemove(buffers, buffer2); + subscriber2.next(buffer2); + } + } catch (e_2_1) { + e_2 = { error: e_2_1 }; + } finally { + try { + if (toEmit_1_1 && !toEmit_1_1.done && (_b = toEmit_1.return)) + _b.call(toEmit_1); + } finally { + if (e_2) + throw e_2.error; + } + } + } + }, function() { + var e_3, _a; + try { + for (var buffers_2 = __values(buffers), buffers_2_1 = buffers_2.next(); !buffers_2_1.done; buffers_2_1 = buffers_2.next()) { + var buffer2 = buffers_2_1.value; + subscriber2.next(buffer2); + } + } catch (e_3_1) { + e_3 = { error: e_3_1 }; + } finally { + try { + if (buffers_2_1 && !buffers_2_1.done && (_a = buffers_2.return)) + _a.call(buffers_2); + } finally { + if (e_3) + throw e_3.error; + } + } + subscriber2.complete(); + }, void 0, function() { + buffers = null; + })); + }); + } + exports2.bufferCount = bufferCount; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js +var require_bufferTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js"(exports2) { + "use strict"; + var __values = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bufferTime = void 0; + var Subscription_1 = require_Subscription(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var arrRemove_1 = require_arrRemove(); + var async_1 = require_async(); + var args_1 = require_args(); + var executeSchedule_1 = require_executeSchedule(); + function bufferTime(bufferTimeSpan) { + var _a, _b; + var otherArgs = []; + for (var _i = 1; _i < arguments.length; _i++) { + otherArgs[_i - 1] = arguments[_i]; + } + var scheduler = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler; + var bufferCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null; + var maxBufferSize = otherArgs[1] || Infinity; + return lift_1.operate(function(source2, subscriber2) { + var bufferRecords = []; + var restartOnEmit = false; + var emit = function(record) { + var buffer2 = record.buffer, subs = record.subs; + subs.unsubscribe(); + arrRemove_1.arrRemove(bufferRecords, record); + subscriber2.next(buffer2); + restartOnEmit && startBuffer(); + }; + var startBuffer = function() { + if (bufferRecords) { + var subs = new Subscription_1.Subscription(); + subscriber2.add(subs); + var buffer2 = []; + var record_1 = { + buffer: buffer2, + subs + }; + bufferRecords.push(record_1); + executeSchedule_1.executeSchedule(subs, scheduler, function() { + return emit(record_1); + }, bufferTimeSpan); + } + }; + if (bufferCreationInterval !== null && bufferCreationInterval >= 0) { + executeSchedule_1.executeSchedule(subscriber2, scheduler, startBuffer, bufferCreationInterval, true); + } else { + restartOnEmit = true; + } + startBuffer(); + var bufferTimeSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var e_1, _a2; + var recordsCopy = bufferRecords.slice(); + try { + for (var recordsCopy_1 = __values(recordsCopy), recordsCopy_1_1 = recordsCopy_1.next(); !recordsCopy_1_1.done; recordsCopy_1_1 = recordsCopy_1.next()) { + var record = recordsCopy_1_1.value; + var buffer2 = record.buffer; + buffer2.push(value); + maxBufferSize <= buffer2.length && emit(record); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (recordsCopy_1_1 && !recordsCopy_1_1.done && (_a2 = recordsCopy_1.return)) + _a2.call(recordsCopy_1); + } finally { + if (e_1) + throw e_1.error; + } + } + }, function() { + while (bufferRecords === null || bufferRecords === void 0 ? void 0 : bufferRecords.length) { + subscriber2.next(bufferRecords.shift().buffer); + } + bufferTimeSubscriber === null || bufferTimeSubscriber === void 0 ? void 0 : bufferTimeSubscriber.unsubscribe(); + subscriber2.complete(); + subscriber2.unsubscribe(); + }, void 0, function() { + return bufferRecords = null; + }); + source2.subscribe(bufferTimeSubscriber); + }); + } + exports2.bufferTime = bufferTime; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js +var require_bufferToggle = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js"(exports2) { + "use strict"; + var __values = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bufferToggle = void 0; + var Subscription_1 = require_Subscription(); + var lift_1 = require_lift(); + var innerFrom_1 = require_innerFrom(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + var arrRemove_1 = require_arrRemove(); + function bufferToggle(openings, closingSelector) { + return lift_1.operate(function(source2, subscriber2) { + var buffers = []; + innerFrom_1.innerFrom(openings).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(openValue) { + var buffer2 = []; + buffers.push(buffer2); + var closingSubscription = new Subscription_1.Subscription(); + var emitBuffer = function() { + arrRemove_1.arrRemove(buffers, buffer2); + subscriber2.next(buffer2); + closingSubscription.unsubscribe(); + }; + closingSubscription.add(innerFrom_1.innerFrom(closingSelector(openValue)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, emitBuffer, noop_1.noop))); + }, noop_1.noop)); + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var e_1, _a; + try { + for (var buffers_1 = __values(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) { + var buffer2 = buffers_1_1.value; + buffer2.push(value); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) + _a.call(buffers_1); + } finally { + if (e_1) + throw e_1.error; + } + } + }, function() { + while (buffers.length > 0) { + subscriber2.next(buffers.shift()); + } + subscriber2.complete(); + })); + }); + } + exports2.bufferToggle = bufferToggle; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js +var require_bufferWhen = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.bufferWhen = void 0; + var lift_1 = require_lift(); + var noop_1 = require_noop(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function bufferWhen(closingSelector) { + return lift_1.operate(function(source2, subscriber2) { + var buffer2 = null; + var closingSubscriber = null; + var openBuffer = function() { + closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); + var b = buffer2; + buffer2 = []; + b && subscriber2.next(b); + innerFrom_1.innerFrom(closingSelector()).subscribe(closingSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, openBuffer, noop_1.noop)); + }; + openBuffer(); + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + return buffer2 === null || buffer2 === void 0 ? void 0 : buffer2.push(value); + }, function() { + buffer2 && subscriber2.next(buffer2); + subscriber2.complete(); + }, void 0, function() { + return buffer2 = closingSubscriber = null; + })); + }); + } + exports2.bufferWhen = bufferWhen; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/catchError.js +var require_catchError = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/catchError.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.catchError = void 0; + var innerFrom_1 = require_innerFrom(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var lift_1 = require_lift(); + function catchError(selector) { + return lift_1.operate(function(source2, subscriber2) { + var innerSub = null; + var syncUnsub = false; + var handledResult; + innerSub = source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, void 0, void 0, function(err2) { + handledResult = innerFrom_1.innerFrom(selector(err2, catchError(selector)(source2))); + if (innerSub) { + innerSub.unsubscribe(); + innerSub = null; + handledResult.subscribe(subscriber2); + } else { + syncUnsub = true; + } + })); + if (syncUnsub) { + innerSub.unsubscribe(); + innerSub = null; + handledResult.subscribe(subscriber2); + } + }); + } + exports2.catchError = catchError; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js +var require_scanInternals = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scanInternals = void 0; + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function scanInternals(accumulator, seed, hasSeed, emitOnNext, emitBeforeComplete) { + return function(source2, subscriber2) { + var hasState = hasSeed; + var state = seed; + var index = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var i = index++; + state = hasState ? accumulator(state, value, i) : (hasState = true, value); + emitOnNext && subscriber2.next(state); + }, emitBeforeComplete && function() { + hasState && subscriber2.next(state); + subscriber2.complete(); + })); + }; + } + exports2.scanInternals = scanInternals; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/reduce.js +var require_reduce = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/reduce.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reduce = void 0; + var scanInternals_1 = require_scanInternals(); + var lift_1 = require_lift(); + function reduce(accumulator, seed) { + return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, false, true)); + } + exports2.reduce = reduce; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/toArray.js +var require_toArray = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/toArray.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toArray = void 0; + var reduce_1 = require_reduce(); + var lift_1 = require_lift(); + var arrReducer = function(arr, value) { + return arr.push(value), arr; + }; + function toArray2() { + return lift_1.operate(function(source2, subscriber2) { + reduce_1.reduce(arrReducer, [])(source2).subscribe(subscriber2); + }); + } + exports2.toArray = toArray2; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js +var require_joinAllInternals = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.joinAllInternals = void 0; + var identity_1 = require_identity(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var pipe_1 = require_pipe(); + var mergeMap_1 = require_mergeMap(); + var toArray_1 = require_toArray(); + function joinAllInternals(joinFn, project) { + return pipe_1.pipe(toArray_1.toArray(), mergeMap_1.mergeMap(function(sources) { + return joinFn(sources); + }), project ? mapOneOrManyArgs_1.mapOneOrManyArgs(project) : identity_1.identity); + } + exports2.joinAllInternals = joinAllInternals; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js +var require_combineLatestAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.combineLatestAll = void 0; + var combineLatest_1 = require_combineLatest(); + var joinAllInternals_1 = require_joinAllInternals(); + function combineLatestAll(project) { + return joinAllInternals_1.joinAllInternals(combineLatest_1.combineLatest, project); + } + exports2.combineLatestAll = combineLatestAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js +var require_combineAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.combineAll = void 0; + var combineLatestAll_1 = require_combineLatestAll(); + exports2.combineAll = combineLatestAll_1.combineLatestAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js +var require_combineLatest2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.combineLatest = void 0; + var combineLatest_1 = require_combineLatest(); + var lift_1 = require_lift(); + var argsOrArgArray_1 = require_argsOrArgArray(); + var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); + var pipe_1 = require_pipe(); + var args_1 = require_args(); + function combineLatest() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var resultSelector = args_1.popResultSelector(args3); + return resultSelector ? pipe_1.pipe(combineLatest.apply(void 0, __spreadArray([], __read(args3))), mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : lift_1.operate(function(source2, subscriber2) { + combineLatest_1.combineLatestInit(__spreadArray([source2], __read(argsOrArgArray_1.argsOrArgArray(args3))))(subscriber2); + }); + } + exports2.combineLatest = combineLatest; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js +var require_combineLatestWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.combineLatestWith = void 0; + var combineLatest_1 = require_combineLatest2(); + function combineLatestWith() { + var otherSources = []; + for (var _i = 0; _i < arguments.length; _i++) { + otherSources[_i] = arguments[_i]; + } + return combineLatest_1.combineLatest.apply(void 0, __spreadArray([], __read(otherSources))); + } + exports2.combineLatestWith = combineLatestWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js +var require_concatMap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concatMap = void 0; + var mergeMap_1 = require_mergeMap(); + var isFunction_1 = require_isFunction(); + function concatMap(project, resultSelector) { + return isFunction_1.isFunction(resultSelector) ? mergeMap_1.mergeMap(project, resultSelector, 1) : mergeMap_1.mergeMap(project, 1); + } + exports2.concatMap = concatMap; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js +var require_concatMapTo = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concatMapTo = void 0; + var concatMap_1 = require_concatMap(); + var isFunction_1 = require_isFunction(); + function concatMapTo(innerObservable, resultSelector) { + return isFunction_1.isFunction(resultSelector) ? concatMap_1.concatMap(function() { + return innerObservable; + }, resultSelector) : concatMap_1.concatMap(function() { + return innerObservable; + }); + } + exports2.concatMapTo = concatMapTo; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concat.js +var require_concat2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concat.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concat = void 0; + var lift_1 = require_lift(); + var concatAll_1 = require_concatAll(); + var args_1 = require_args(); + var from_1 = require_from(); + function concat() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var scheduler = args_1.popScheduler(args3); + return lift_1.operate(function(source2, subscriber2) { + concatAll_1.concatAll()(from_1.from(__spreadArray([source2], __read(args3)), scheduler)).subscribe(subscriber2); + }); + } + exports2.concat = concat; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js +var require_concatWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.concatWith = void 0; + var concat_1 = require_concat2(); + function concatWith() { + var otherSources = []; + for (var _i = 0; _i < arguments.length; _i++) { + otherSources[_i] = arguments[_i]; + } + return concat_1.concat.apply(void 0, __spreadArray([], __read(otherSources))); + } + exports2.concatWith = concatWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js +var require_fromSubscribable = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fromSubscribable = void 0; + var Observable_1 = require_Observable(); + function fromSubscribable(subscribable) { + return new Observable_1.Observable(function(subscriber2) { + return subscribable.subscribe(subscriber2); + }); + } + exports2.fromSubscribable = fromSubscribable; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/connect.js +var require_connect = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/connect.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.connect = void 0; + var Subject_1 = require_Subject(); + var innerFrom_1 = require_innerFrom(); + var lift_1 = require_lift(); + var fromSubscribable_1 = require_fromSubscribable(); + var DEFAULT_CONFIG = { + connector: function() { + return new Subject_1.Subject(); + } + }; + function connect(selector, config) { + if (config === void 0) { + config = DEFAULT_CONFIG; + } + var connector = config.connector; + return lift_1.operate(function(source2, subscriber2) { + var subject = connector(); + innerFrom_1.innerFrom(selector(fromSubscribable_1.fromSubscribable(subject))).subscribe(subscriber2); + subscriber2.add(source2.subscribe(subject)); + }); + } + exports2.connect = connect; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/count.js +var require_count = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/count.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.count = void 0; + var reduce_1 = require_reduce(); + function count(predicate) { + return reduce_1.reduce(function(total, value, i) { + return !predicate || predicate(value, i) ? total + 1 : total; + }, 0); + } + exports2.count = count; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/debounce.js +var require_debounce = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/debounce.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.debounce = void 0; + var lift_1 = require_lift(); + var noop_1 = require_noop(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function debounce4(durationSelector) { + return lift_1.operate(function(source2, subscriber2) { + var hasValue = false; + var lastValue = null; + var durationSubscriber = null; + var emit = function() { + durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); + durationSubscriber = null; + if (hasValue) { + hasValue = false; + var value = lastValue; + lastValue = null; + subscriber2.next(value); + } + }; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); + hasValue = true; + lastValue = value; + durationSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, emit, noop_1.noop); + innerFrom_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber); + }, function() { + emit(); + subscriber2.complete(); + }, void 0, function() { + lastValue = durationSubscriber = null; + })); + }); + } + exports2.debounce = debounce4; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js +var require_debounceTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.debounceTime = void 0; + var async_1 = require_async(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function debounceTime(dueTime, scheduler) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + return lift_1.operate(function(source2, subscriber2) { + var activeTask = null; + var lastValue = null; + var lastTime = null; + var emit = function() { + if (activeTask) { + activeTask.unsubscribe(); + activeTask = null; + var value = lastValue; + lastValue = null; + subscriber2.next(value); + } + }; + function emitWhenIdle() { + var targetTime = lastTime + dueTime; + var now = scheduler.now(); + if (now < targetTime) { + activeTask = this.schedule(void 0, targetTime - now); + subscriber2.add(activeTask); + return; + } + emit(); + } + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + lastValue = value; + lastTime = scheduler.now(); + if (!activeTask) { + activeTask = scheduler.schedule(emitWhenIdle, dueTime); + subscriber2.add(activeTask); + } + }, function() { + emit(); + subscriber2.complete(); + }, void 0, function() { + lastValue = activeTask = null; + })); + }); + } + exports2.debounceTime = debounceTime; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js +var require_defaultIfEmpty = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defaultIfEmpty = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function defaultIfEmpty(defaultValue) { + return lift_1.operate(function(source2, subscriber2) { + var hasValue = false; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + hasValue = true; + subscriber2.next(value); + }, function() { + if (!hasValue) { + subscriber2.next(defaultValue); + } + subscriber2.complete(); + })); + }); + } + exports2.defaultIfEmpty = defaultIfEmpty; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/take.js +var require_take = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/take.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.take = void 0; + var empty_1 = require_empty(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function take(count) { + return count <= 0 ? function() { + return empty_1.EMPTY; + } : lift_1.operate(function(source2, subscriber2) { + var seen = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + if (++seen <= count) { + subscriber2.next(value); + if (count <= seen) { + subscriber2.complete(); + } + } + })); + }); + } + exports2.take = take; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js +var require_ignoreElements = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ignoreElements = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + function ignoreElements() { + return lift_1.operate(function(source2, subscriber2) { + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, noop_1.noop)); + }); + } + exports2.ignoreElements = ignoreElements; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js +var require_mapTo = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mapTo = void 0; + var map_1 = require_map(); + function mapTo(value) { + return map_1.map(function() { + return value; + }); + } + exports2.mapTo = mapTo; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js +var require_delayWhen = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.delayWhen = void 0; + var concat_1 = require_concat(); + var take_1 = require_take(); + var ignoreElements_1 = require_ignoreElements(); + var mapTo_1 = require_mapTo(); + var mergeMap_1 = require_mergeMap(); + var innerFrom_1 = require_innerFrom(); + function delayWhen(delayDurationSelector, subscriptionDelay) { + if (subscriptionDelay) { + return function(source2) { + return concat_1.concat(subscriptionDelay.pipe(take_1.take(1), ignoreElements_1.ignoreElements()), source2.pipe(delayWhen(delayDurationSelector))); + }; + } + return mergeMap_1.mergeMap(function(value, index) { + return innerFrom_1.innerFrom(delayDurationSelector(value, index)).pipe(take_1.take(1), mapTo_1.mapTo(value)); + }); + } + exports2.delayWhen = delayWhen; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/delay.js +var require_delay = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/delay.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.delay = void 0; + var async_1 = require_async(); + var delayWhen_1 = require_delayWhen(); + var timer_1 = require_timer(); + function delay(due, scheduler) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + var duration = timer_1.timer(due, scheduler); + return delayWhen_1.delayWhen(function() { + return duration; + }); + } + exports2.delay = delay; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js +var require_dematerialize = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.dematerialize = void 0; + var Notification_1 = require_Notification(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function dematerialize() { + return lift_1.operate(function(source2, subscriber2) { + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(notification) { + return Notification_1.observeNotification(notification, subscriber2); + })); + }); + } + exports2.dematerialize = dematerialize; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinct.js +var require_distinct = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinct.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.distinct = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + var innerFrom_1 = require_innerFrom(); + function distinct(keySelector, flushes) { + return lift_1.operate(function(source2, subscriber2) { + var distinctKeys = /* @__PURE__ */ new Set(); + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var key = keySelector ? keySelector(value) : value; + if (!distinctKeys.has(key)) { + distinctKeys.add(key); + subscriber2.next(value); + } + })); + flushes && innerFrom_1.innerFrom(flushes).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + return distinctKeys.clear(); + }, noop_1.noop)); + }); + } + exports2.distinct = distinct; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js +var require_distinctUntilChanged = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.distinctUntilChanged = void 0; + var identity_1 = require_identity(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function distinctUntilChanged(comparator, keySelector) { + if (keySelector === void 0) { + keySelector = identity_1.identity; + } + comparator = comparator !== null && comparator !== void 0 ? comparator : defaultCompare; + return lift_1.operate(function(source2, subscriber2) { + var previousKey; + var first = true; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var currentKey = keySelector(value); + if (first || !comparator(previousKey, currentKey)) { + first = false; + previousKey = currentKey; + subscriber2.next(value); + } + })); + }); + } + exports2.distinctUntilChanged = distinctUntilChanged; + function defaultCompare(a, b) { + return a === b; + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js +var require_distinctUntilKeyChanged = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.distinctUntilKeyChanged = void 0; + var distinctUntilChanged_1 = require_distinctUntilChanged(); + function distinctUntilKeyChanged(key, compare) { + return distinctUntilChanged_1.distinctUntilChanged(function(x, y) { + return compare ? compare(x[key], y[key]) : x[key] === y[key]; + }); + } + exports2.distinctUntilKeyChanged = distinctUntilKeyChanged; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js +var require_throwIfEmpty = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.throwIfEmpty = void 0; + var EmptyError_1 = require_EmptyError(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function throwIfEmpty(errorFactory) { + if (errorFactory === void 0) { + errorFactory = defaultErrorFactory; + } + return lift_1.operate(function(source2, subscriber2) { + var hasValue = false; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + hasValue = true; + subscriber2.next(value); + }, function() { + return hasValue ? subscriber2.complete() : subscriber2.error(errorFactory()); + })); + }); + } + exports2.throwIfEmpty = throwIfEmpty; + function defaultErrorFactory() { + return new EmptyError_1.EmptyError(); + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js +var require_elementAt = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.elementAt = void 0; + var ArgumentOutOfRangeError_1 = require_ArgumentOutOfRangeError(); + var filter_1 = require_filter(); + var throwIfEmpty_1 = require_throwIfEmpty(); + var defaultIfEmpty_1 = require_defaultIfEmpty(); + var take_1 = require_take(); + function elementAt(index, defaultValue) { + if (index < 0) { + throw new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError(); + } + var hasDefaultValue = arguments.length >= 2; + return function(source2) { + return source2.pipe(filter_1.filter(function(v, i) { + return i === index; + }), take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { + return new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError(); + })); + }; + } + exports2.elementAt = elementAt; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/endWith.js +var require_endWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/endWith.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.endWith = void 0; + var concat_1 = require_concat(); + var of_1 = require_of(); + function endWith() { + var values = []; + for (var _i = 0; _i < arguments.length; _i++) { + values[_i] = arguments[_i]; + } + return function(source2) { + return concat_1.concat(source2, of_1.of.apply(void 0, __spreadArray([], __read(values)))); + }; + } + exports2.endWith = endWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/every.js +var require_every = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/every.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.every = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function every(predicate, thisArg) { + return lift_1.operate(function(source2, subscriber2) { + var index = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + if (!predicate.call(thisArg, value, index++, source2)) { + subscriber2.next(false); + subscriber2.complete(); + } + }, function() { + subscriber2.next(true); + subscriber2.complete(); + })); + }); + } + exports2.every = every; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js +var require_exhaustMap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.exhaustMap = void 0; + var map_1 = require_map(); + var innerFrom_1 = require_innerFrom(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function exhaustMap(project, resultSelector) { + if (resultSelector) { + return function(source2) { + return source2.pipe(exhaustMap(function(a, i) { + return innerFrom_1.innerFrom(project(a, i)).pipe(map_1.map(function(b, ii) { + return resultSelector(a, b, i, ii); + })); + })); + }; + } + return lift_1.operate(function(source2, subscriber2) { + var index = 0; + var innerSub = null; + var isComplete = false; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(outerValue) { + if (!innerSub) { + innerSub = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, void 0, function() { + innerSub = null; + isComplete && subscriber2.complete(); + }); + innerFrom_1.innerFrom(project(outerValue, index++)).subscribe(innerSub); + } + }, function() { + isComplete = true; + !innerSub && subscriber2.complete(); + })); + }); + } + exports2.exhaustMap = exhaustMap; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js +var require_exhaustAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.exhaustAll = void 0; + var exhaustMap_1 = require_exhaustMap(); + var identity_1 = require_identity(); + function exhaustAll() { + return exhaustMap_1.exhaustMap(identity_1.identity); + } + exports2.exhaustAll = exhaustAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js +var require_exhaust = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.exhaust = void 0; + var exhaustAll_1 = require_exhaustAll(); + exports2.exhaust = exhaustAll_1.exhaustAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/expand.js +var require_expand = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/expand.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.expand = void 0; + var lift_1 = require_lift(); + var mergeInternals_1 = require_mergeInternals(); + function expand2(project, concurrent, scheduler) { + if (concurrent === void 0) { + concurrent = Infinity; + } + concurrent = (concurrent || 0) < 1 ? Infinity : concurrent; + return lift_1.operate(function(source2, subscriber2) { + return mergeInternals_1.mergeInternals(source2, subscriber2, project, concurrent, void 0, true, scheduler); + }); + } + exports2.expand = expand2; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/finalize.js +var require_finalize = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/finalize.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.finalize = void 0; + var lift_1 = require_lift(); + function finalize(callback) { + return lift_1.operate(function(source2, subscriber2) { + try { + source2.subscribe(subscriber2); + } finally { + subscriber2.add(callback); + } + }); + } + exports2.finalize = finalize; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/find.js +var require_find = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/find.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createFind = exports2.find = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function find(predicate, thisArg) { + return lift_1.operate(createFind(predicate, thisArg, "value")); + } + exports2.find = find; + function createFind(predicate, thisArg, emit) { + var findIndex = emit === "index"; + return function(source2, subscriber2) { + var index = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var i = index++; + if (predicate.call(thisArg, value, i, source2)) { + subscriber2.next(findIndex ? i : value); + subscriber2.complete(); + } + }, function() { + subscriber2.next(findIndex ? -1 : void 0); + subscriber2.complete(); + })); + }; + } + exports2.createFind = createFind; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js +var require_findIndex = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.findIndex = void 0; + var lift_1 = require_lift(); + var find_1 = require_find(); + function findIndex(predicate, thisArg) { + return lift_1.operate(find_1.createFind(predicate, thisArg, "index")); + } + exports2.findIndex = findIndex; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/first.js +var require_first = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/first.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.first = void 0; + var EmptyError_1 = require_EmptyError(); + var filter_1 = require_filter(); + var take_1 = require_take(); + var defaultIfEmpty_1 = require_defaultIfEmpty(); + var throwIfEmpty_1 = require_throwIfEmpty(); + var identity_1 = require_identity(); + function first(predicate, defaultValue) { + var hasDefaultValue = arguments.length >= 2; + return function(source2) { + return source2.pipe(predicate ? filter_1.filter(function(v, i) { + return predicate(v, i, source2); + }) : identity_1.identity, take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { + return new EmptyError_1.EmptyError(); + })); + }; + } + exports2.first = first; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js +var require_groupBy = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.groupBy = void 0; + var Observable_1 = require_Observable(); + var innerFrom_1 = require_innerFrom(); + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function groupBy(keySelector, elementOrOptions, duration, connector) { + return lift_1.operate(function(source2, subscriber2) { + var element; + if (!elementOrOptions || typeof elementOrOptions === "function") { + element = elementOrOptions; + } else { + duration = elementOrOptions.duration, element = elementOrOptions.element, connector = elementOrOptions.connector; + } + var groups = /* @__PURE__ */ new Map(); + var notify = function(cb) { + groups.forEach(cb); + cb(subscriber2); + }; + var handleError = function(err2) { + return notify(function(consumer) { + return consumer.error(err2); + }); + }; + var activeGroups = 0; + var teardownAttempted = false; + var groupBySourceSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber2, function(value) { + try { + var key_1 = keySelector(value); + var group_1 = groups.get(key_1); + if (!group_1) { + groups.set(key_1, group_1 = connector ? connector() : new Subject_1.Subject()); + var grouped = createGroupedObservable(key_1, group_1); + subscriber2.next(grouped); + if (duration) { + var durationSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(group_1, function() { + group_1.complete(); + durationSubscriber_1 === null || durationSubscriber_1 === void 0 ? void 0 : durationSubscriber_1.unsubscribe(); + }, void 0, void 0, function() { + return groups.delete(key_1); + }); + groupBySourceSubscriber.add(innerFrom_1.innerFrom(duration(grouped)).subscribe(durationSubscriber_1)); + } + } + group_1.next(element ? element(value) : value); + } catch (err2) { + handleError(err2); + } + }, function() { + return notify(function(consumer) { + return consumer.complete(); + }); + }, handleError, function() { + return groups.clear(); + }, function() { + teardownAttempted = true; + return activeGroups === 0; + }); + source2.subscribe(groupBySourceSubscriber); + function createGroupedObservable(key, groupSubject) { + var result = new Observable_1.Observable(function(groupSubscriber) { + activeGroups++; + var innerSub = groupSubject.subscribe(groupSubscriber); + return function() { + innerSub.unsubscribe(); + --activeGroups === 0 && teardownAttempted && groupBySourceSubscriber.unsubscribe(); + }; + }); + result.key = key; + return result; + } + }); + } + exports2.groupBy = groupBy; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js +var require_isEmpty = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isEmpty = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function isEmpty() { + return lift_1.operate(function(source2, subscriber2) { + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + subscriber2.next(false); + subscriber2.complete(); + }, function() { + subscriber2.next(true); + subscriber2.complete(); + })); + }); + } + exports2.isEmpty = isEmpty; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js +var require_takeLast = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js"(exports2) { + "use strict"; + var __values = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.takeLast = void 0; + var empty_1 = require_empty(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function takeLast(count) { + return count <= 0 ? function() { + return empty_1.EMPTY; + } : lift_1.operate(function(source2, subscriber2) { + var buffer2 = []; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + buffer2.push(value); + count < buffer2.length && buffer2.shift(); + }, function() { + var e_1, _a; + try { + for (var buffer_1 = __values(buffer2), buffer_1_1 = buffer_1.next(); !buffer_1_1.done; buffer_1_1 = buffer_1.next()) { + var value = buffer_1_1.value; + subscriber2.next(value); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (buffer_1_1 && !buffer_1_1.done && (_a = buffer_1.return)) + _a.call(buffer_1); + } finally { + if (e_1) + throw e_1.error; + } + } + subscriber2.complete(); + }, void 0, function() { + buffer2 = null; + })); + }); + } + exports2.takeLast = takeLast; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/last.js +var require_last = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/last.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.last = void 0; + var EmptyError_1 = require_EmptyError(); + var filter_1 = require_filter(); + var takeLast_1 = require_takeLast(); + var throwIfEmpty_1 = require_throwIfEmpty(); + var defaultIfEmpty_1 = require_defaultIfEmpty(); + var identity_1 = require_identity(); + function last(predicate, defaultValue) { + var hasDefaultValue = arguments.length >= 2; + return function(source2) { + return source2.pipe(predicate ? filter_1.filter(function(v, i) { + return predicate(v, i, source2); + }) : identity_1.identity, takeLast_1.takeLast(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { + return new EmptyError_1.EmptyError(); + })); + }; + } + exports2.last = last; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/materialize.js +var require_materialize = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/materialize.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.materialize = void 0; + var Notification_1 = require_Notification(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function materialize() { + return lift_1.operate(function(source2, subscriber2) { + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + subscriber2.next(Notification_1.Notification.createNext(value)); + }, function() { + subscriber2.next(Notification_1.Notification.createComplete()); + subscriber2.complete(); + }, function(err2) { + subscriber2.next(Notification_1.Notification.createError(err2)); + subscriber2.complete(); + })); + }); + } + exports2.materialize = materialize; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/max.js +var require_max = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/max.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.max = void 0; + var reduce_1 = require_reduce(); + var isFunction_1 = require_isFunction(); + function max(comparer) { + return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x, y) { + return comparer(x, y) > 0 ? x : y; + } : function(x, y) { + return x > y ? x : y; + }); + } + exports2.max = max; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js +var require_flatMap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.flatMap = void 0; + var mergeMap_1 = require_mergeMap(); + exports2.flatMap = mergeMap_1.mergeMap; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js +var require_mergeMapTo = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeMapTo = void 0; + var mergeMap_1 = require_mergeMap(); + var isFunction_1 = require_isFunction(); + function mergeMapTo(innerObservable, resultSelector, concurrent) { + if (concurrent === void 0) { + concurrent = Infinity; + } + if (isFunction_1.isFunction(resultSelector)) { + return mergeMap_1.mergeMap(function() { + return innerObservable; + }, resultSelector, concurrent); + } + if (typeof resultSelector === "number") { + concurrent = resultSelector; + } + return mergeMap_1.mergeMap(function() { + return innerObservable; + }, concurrent); + } + exports2.mergeMapTo = mergeMapTo; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js +var require_mergeScan = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeScan = void 0; + var lift_1 = require_lift(); + var mergeInternals_1 = require_mergeInternals(); + function mergeScan(accumulator, seed, concurrent) { + if (concurrent === void 0) { + concurrent = Infinity; + } + return lift_1.operate(function(source2, subscriber2) { + var state = seed; + return mergeInternals_1.mergeInternals(source2, subscriber2, function(value, index) { + return accumulator(state, value, index); + }, concurrent, function(value) { + state = value; + }, false, void 0, function() { + return state = null; + }); + }); + } + exports2.mergeScan = mergeScan; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/merge.js +var require_merge2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/merge.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.merge = void 0; + var lift_1 = require_lift(); + var argsOrArgArray_1 = require_argsOrArgArray(); + var mergeAll_1 = require_mergeAll(); + var args_1 = require_args(); + var from_1 = require_from(); + function merge3() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + var scheduler = args_1.popScheduler(args3); + var concurrent = args_1.popNumber(args3, Infinity); + args3 = argsOrArgArray_1.argsOrArgArray(args3); + return lift_1.operate(function(source2, subscriber2) { + mergeAll_1.mergeAll(concurrent)(from_1.from(__spreadArray([source2], __read(args3)), scheduler)).subscribe(subscriber2); + }); + } + exports2.merge = merge3; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js +var require_mergeWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeWith = void 0; + var merge_1 = require_merge2(); + function mergeWith() { + var otherSources = []; + for (var _i = 0; _i < arguments.length; _i++) { + otherSources[_i] = arguments[_i]; + } + return merge_1.merge.apply(void 0, __spreadArray([], __read(otherSources))); + } + exports2.mergeWith = mergeWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/min.js +var require_min = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/min.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.min = void 0; + var reduce_1 = require_reduce(); + var isFunction_1 = require_isFunction(); + function min(comparer) { + return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x, y) { + return comparer(x, y) < 0 ? x : y; + } : function(x, y) { + return x < y ? x : y; + }); + } + exports2.min = min; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/multicast.js +var require_multicast = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/multicast.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.multicast = void 0; + var ConnectableObservable_1 = require_ConnectableObservable(); + var isFunction_1 = require_isFunction(); + var connect_1 = require_connect(); + function multicast(subjectOrSubjectFactory, selector) { + var subjectFactory = isFunction_1.isFunction(subjectOrSubjectFactory) ? subjectOrSubjectFactory : function() { + return subjectOrSubjectFactory; + }; + if (isFunction_1.isFunction(selector)) { + return connect_1.connect(selector, { + connector: subjectFactory + }); + } + return function(source2) { + return new ConnectableObservable_1.ConnectableObservable(source2, subjectFactory); + }; + } + exports2.multicast = multicast; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNextWith.js +var require_onErrorResumeNextWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNextWith.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.onErrorResumeNext = exports2.onErrorResumeNextWith = void 0; + var argsOrArgArray_1 = require_argsOrArgArray(); + var onErrorResumeNext_1 = require_onErrorResumeNext(); + function onErrorResumeNextWith() { + var sources = []; + for (var _i = 0; _i < arguments.length; _i++) { + sources[_i] = arguments[_i]; + } + var nextSources = argsOrArgArray_1.argsOrArgArray(sources); + return function(source2) { + return onErrorResumeNext_1.onErrorResumeNext.apply(void 0, __spreadArray([source2], __read(nextSources))); + }; + } + exports2.onErrorResumeNextWith = onErrorResumeNextWith; + exports2.onErrorResumeNext = onErrorResumeNextWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js +var require_pairwise = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pairwise = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function pairwise() { + return lift_1.operate(function(source2, subscriber2) { + var prev; + var hasPrev = false; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var p = prev; + prev = value; + hasPrev && subscriber2.next([p, value]); + hasPrev = true; + })); + }); + } + exports2.pairwise = pairwise; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/pluck.js +var require_pluck = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/pluck.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.pluck = void 0; + var map_1 = require_map(); + function pluck() { + var properties2 = []; + for (var _i = 0; _i < arguments.length; _i++) { + properties2[_i] = arguments[_i]; + } + var length = properties2.length; + if (length === 0) { + throw new Error("list of properties cannot be empty."); + } + return map_1.map(function(x) { + var currentProp = x; + for (var i = 0; i < length; i++) { + var p = currentProp === null || currentProp === void 0 ? void 0 : currentProp[properties2[i]]; + if (typeof p !== "undefined") { + currentProp = p; + } else { + return void 0; + } + } + return currentProp; + }); + } + exports2.pluck = pluck; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publish.js +var require_publish = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publish.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.publish = void 0; + var Subject_1 = require_Subject(); + var multicast_1 = require_multicast(); + var connect_1 = require_connect(); + function publish(selector) { + return selector ? function(source2) { + return connect_1.connect(selector)(source2); + } : function(source2) { + return multicast_1.multicast(new Subject_1.Subject())(source2); + }; + } + exports2.publish = publish; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js +var require_publishBehavior = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.publishBehavior = void 0; + var BehaviorSubject_1 = require_BehaviorSubject(); + var ConnectableObservable_1 = require_ConnectableObservable(); + function publishBehavior(initialValue) { + return function(source2) { + var subject = new BehaviorSubject_1.BehaviorSubject(initialValue); + return new ConnectableObservable_1.ConnectableObservable(source2, function() { + return subject; + }); + }; + } + exports2.publishBehavior = publishBehavior; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js +var require_publishLast = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.publishLast = void 0; + var AsyncSubject_1 = require_AsyncSubject(); + var ConnectableObservable_1 = require_ConnectableObservable(); + function publishLast() { + return function(source2) { + var subject = new AsyncSubject_1.AsyncSubject(); + return new ConnectableObservable_1.ConnectableObservable(source2, function() { + return subject; + }); + }; + } + exports2.publishLast = publishLast; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js +var require_publishReplay = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.publishReplay = void 0; + var ReplaySubject_1 = require_ReplaySubject(); + var multicast_1 = require_multicast(); + var isFunction_1 = require_isFunction(); + function publishReplay(bufferSize, windowTime, selectorOrScheduler, timestampProvider) { + if (selectorOrScheduler && !isFunction_1.isFunction(selectorOrScheduler)) { + timestampProvider = selectorOrScheduler; + } + var selector = isFunction_1.isFunction(selectorOrScheduler) ? selectorOrScheduler : void 0; + return function(source2) { + return multicast_1.multicast(new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, timestampProvider), selector)(source2); + }; + } + exports2.publishReplay = publishReplay; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js +var require_raceWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.raceWith = void 0; + var race_1 = require_race(); + var lift_1 = require_lift(); + var identity_1 = require_identity(); + function raceWith() { + var otherSources = []; + for (var _i = 0; _i < arguments.length; _i++) { + otherSources[_i] = arguments[_i]; + } + return !otherSources.length ? identity_1.identity : lift_1.operate(function(source2, subscriber2) { + race_1.raceInit(__spreadArray([source2], __read(otherSources)))(subscriber2); + }); + } + exports2.raceWith = raceWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/repeat.js +var require_repeat = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/repeat.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.repeat = void 0; + var empty_1 = require_empty(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + var timer_1 = require_timer(); + function repeat(countOrConfig) { + var _a; + var count = Infinity; + var delay; + if (countOrConfig != null) { + if (typeof countOrConfig === "object") { + _a = countOrConfig.count, count = _a === void 0 ? Infinity : _a, delay = countOrConfig.delay; + } else { + count = countOrConfig; + } + } + return count <= 0 ? function() { + return empty_1.EMPTY; + } : lift_1.operate(function(source2, subscriber2) { + var soFar = 0; + var sourceSub; + var resubscribe = function() { + sourceSub === null || sourceSub === void 0 ? void 0 : sourceSub.unsubscribe(); + sourceSub = null; + if (delay != null) { + var notifier = typeof delay === "number" ? timer_1.timer(delay) : innerFrom_1.innerFrom(delay(soFar)); + var notifierSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + notifierSubscriber_1.unsubscribe(); + subscribeToSource(); + }); + notifier.subscribe(notifierSubscriber_1); + } else { + subscribeToSource(); + } + }; + var subscribeToSource = function() { + var syncUnsub = false; + sourceSub = source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, void 0, function() { + if (++soFar < count) { + if (sourceSub) { + resubscribe(); + } else { + syncUnsub = true; + } + } else { + subscriber2.complete(); + } + })); + if (syncUnsub) { + resubscribe(); + } + }; + subscribeToSource(); + }); + } + exports2.repeat = repeat; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js +var require_repeatWhen = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.repeatWhen = void 0; + var innerFrom_1 = require_innerFrom(); + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function repeatWhen(notifier) { + return lift_1.operate(function(source2, subscriber2) { + var innerSub; + var syncResub = false; + var completions$; + var isNotifierComplete = false; + var isMainComplete = false; + var checkComplete = function() { + return isMainComplete && isNotifierComplete && (subscriber2.complete(), true); + }; + var getCompletionSubject = function() { + if (!completions$) { + completions$ = new Subject_1.Subject(); + innerFrom_1.innerFrom(notifier(completions$)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + if (innerSub) { + subscribeForRepeatWhen(); + } else { + syncResub = true; + } + }, function() { + isNotifierComplete = true; + checkComplete(); + })); + } + return completions$; + }; + var subscribeForRepeatWhen = function() { + isMainComplete = false; + innerSub = source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, void 0, function() { + isMainComplete = true; + !checkComplete() && getCompletionSubject().next(); + })); + if (syncResub) { + innerSub.unsubscribe(); + innerSub = null; + syncResub = false; + subscribeForRepeatWhen(); + } + }; + subscribeForRepeatWhen(); + }); + } + exports2.repeatWhen = repeatWhen; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/retry.js +var require_retry = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/retry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.retry = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var identity_1 = require_identity(); + var timer_1 = require_timer(); + var innerFrom_1 = require_innerFrom(); + function retry(configOrCount) { + if (configOrCount === void 0) { + configOrCount = Infinity; + } + var config; + if (configOrCount && typeof configOrCount === "object") { + config = configOrCount; + } else { + config = { + count: configOrCount + }; + } + var _a = config.count, count = _a === void 0 ? Infinity : _a, delay = config.delay, _b = config.resetOnSuccess, resetOnSuccess = _b === void 0 ? false : _b; + return count <= 0 ? identity_1.identity : lift_1.operate(function(source2, subscriber2) { + var soFar = 0; + var innerSub; + var subscribeForRetry = function() { + var syncUnsub = false; + innerSub = source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + if (resetOnSuccess) { + soFar = 0; + } + subscriber2.next(value); + }, void 0, function(err2) { + if (soFar++ < count) { + var resub_1 = function() { + if (innerSub) { + innerSub.unsubscribe(); + innerSub = null; + subscribeForRetry(); + } else { + syncUnsub = true; + } + }; + if (delay != null) { + var notifier = typeof delay === "number" ? timer_1.timer(delay) : innerFrom_1.innerFrom(delay(err2, soFar)); + var notifierSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + notifierSubscriber_1.unsubscribe(); + resub_1(); + }, function() { + subscriber2.complete(); + }); + notifier.subscribe(notifierSubscriber_1); + } else { + resub_1(); + } + } else { + subscriber2.error(err2); + } + })); + if (syncUnsub) { + innerSub.unsubscribe(); + innerSub = null; + subscribeForRetry(); + } + }; + subscribeForRetry(); + }); + } + exports2.retry = retry; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js +var require_retryWhen = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.retryWhen = void 0; + var innerFrom_1 = require_innerFrom(); + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function retryWhen(notifier) { + return lift_1.operate(function(source2, subscriber2) { + var innerSub; + var syncResub = false; + var errors$; + var subscribeForRetryWhen = function() { + innerSub = source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, void 0, void 0, function(err2) { + if (!errors$) { + errors$ = new Subject_1.Subject(); + innerFrom_1.innerFrom(notifier(errors$)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + return innerSub ? subscribeForRetryWhen() : syncResub = true; + })); + } + if (errors$) { + errors$.next(err2); + } + })); + if (syncResub) { + innerSub.unsubscribe(); + innerSub = null; + syncResub = false; + subscribeForRetryWhen(); + } + }; + subscribeForRetryWhen(); + }); + } + exports2.retryWhen = retryWhen; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sample.js +var require_sample = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sample.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.sample = void 0; + var innerFrom_1 = require_innerFrom(); + var lift_1 = require_lift(); + var noop_1 = require_noop(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function sample(notifier) { + return lift_1.operate(function(source2, subscriber2) { + var hasValue = false; + var lastValue = null; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + hasValue = true; + lastValue = value; + })); + innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + if (hasValue) { + hasValue = false; + var value = lastValue; + lastValue = null; + subscriber2.next(value); + } + }, noop_1.noop)); + }); + } + exports2.sample = sample; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js +var require_sampleTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.sampleTime = void 0; + var async_1 = require_async(); + var sample_1 = require_sample(); + var interval_1 = require_interval(); + function sampleTime(period, scheduler) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + return sample_1.sample(interval_1.interval(period, scheduler)); + } + exports2.sampleTime = sampleTime; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/scan.js +var require_scan = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/scan.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.scan = void 0; + var lift_1 = require_lift(); + var scanInternals_1 = require_scanInternals(); + function scan(accumulator, seed) { + return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, true)); + } + exports2.scan = scan; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js +var require_sequenceEqual = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.sequenceEqual = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function sequenceEqual(compareTo, comparator) { + if (comparator === void 0) { + comparator = function(a, b) { + return a === b; + }; + } + return lift_1.operate(function(source2, subscriber2) { + var aState = createState(); + var bState = createState(); + var emit = function(isEqual) { + subscriber2.next(isEqual); + subscriber2.complete(); + }; + var createSubscriber2 = function(selfState, otherState) { + var sequenceEqualSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(a) { + var buffer2 = otherState.buffer, complete = otherState.complete; + if (buffer2.length === 0) { + complete ? emit(false) : selfState.buffer.push(a); + } else { + !comparator(a, buffer2.shift()) && emit(false); + } + }, function() { + selfState.complete = true; + var complete = otherState.complete, buffer2 = otherState.buffer; + complete && emit(buffer2.length === 0); + sequenceEqualSubscriber === null || sequenceEqualSubscriber === void 0 ? void 0 : sequenceEqualSubscriber.unsubscribe(); + }); + return sequenceEqualSubscriber; + }; + source2.subscribe(createSubscriber2(aState, bState)); + innerFrom_1.innerFrom(compareTo).subscribe(createSubscriber2(bState, aState)); + }); + } + exports2.sequenceEqual = sequenceEqual; + function createState() { + return { + buffer: [], + complete: false + }; + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/share.js +var require_share = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/share.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.share = void 0; + var innerFrom_1 = require_innerFrom(); + var Subject_1 = require_Subject(); + var Subscriber_1 = require_Subscriber(); + var lift_1 = require_lift(); + function share(options2) { + if (options2 === void 0) { + options2 = {}; + } + var _a = options2.connector, connector = _a === void 0 ? function() { + return new Subject_1.Subject(); + } : _a, _b = options2.resetOnError, resetOnError = _b === void 0 ? true : _b, _c = options2.resetOnComplete, resetOnComplete = _c === void 0 ? true : _c, _d = options2.resetOnRefCountZero, resetOnRefCountZero = _d === void 0 ? true : _d; + return function(wrapperSource) { + var connection; + var resetConnection; + var subject; + var refCount = 0; + var hasCompleted = false; + var hasErrored = false; + var cancelReset = function() { + resetConnection === null || resetConnection === void 0 ? void 0 : resetConnection.unsubscribe(); + resetConnection = void 0; + }; + var reset = function() { + cancelReset(); + connection = subject = void 0; + hasCompleted = hasErrored = false; + }; + var resetAndUnsubscribe = function() { + var conn = connection; + reset(); + conn === null || conn === void 0 ? void 0 : conn.unsubscribe(); + }; + return lift_1.operate(function(source2, subscriber2) { + refCount++; + if (!hasErrored && !hasCompleted) { + cancelReset(); + } + var dest = subject = subject !== null && subject !== void 0 ? subject : connector(); + subscriber2.add(function() { + refCount--; + if (refCount === 0 && !hasErrored && !hasCompleted) { + resetConnection = handleReset(resetAndUnsubscribe, resetOnRefCountZero); + } + }); + dest.subscribe(subscriber2); + if (!connection && refCount > 0) { + connection = new Subscriber_1.SafeSubscriber({ + next: function(value) { + return dest.next(value); + }, + error: function(err2) { + hasErrored = true; + cancelReset(); + resetConnection = handleReset(reset, resetOnError, err2); + dest.error(err2); + }, + complete: function() { + hasCompleted = true; + cancelReset(); + resetConnection = handleReset(reset, resetOnComplete); + dest.complete(); + } + }); + innerFrom_1.innerFrom(source2).subscribe(connection); + } + })(wrapperSource); + }; + } + exports2.share = share; + function handleReset(reset, on) { + var args3 = []; + for (var _i = 2; _i < arguments.length; _i++) { + args3[_i - 2] = arguments[_i]; + } + if (on === true) { + reset(); + return; + } + if (on === false) { + return; + } + var onSubscriber = new Subscriber_1.SafeSubscriber({ + next: function() { + onSubscriber.unsubscribe(); + reset(); + } + }); + return innerFrom_1.innerFrom(on.apply(void 0, __spreadArray([], __read(args3)))).subscribe(onSubscriber); + } + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js +var require_shareReplay = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.shareReplay = void 0; + var ReplaySubject_1 = require_ReplaySubject(); + var share_1 = require_share(); + function shareReplay(configOrBufferSize, windowTime, scheduler) { + var _a, _b, _c; + var bufferSize; + var refCount = false; + if (configOrBufferSize && typeof configOrBufferSize === "object") { + _a = configOrBufferSize.bufferSize, bufferSize = _a === void 0 ? Infinity : _a, _b = configOrBufferSize.windowTime, windowTime = _b === void 0 ? Infinity : _b, _c = configOrBufferSize.refCount, refCount = _c === void 0 ? false : _c, scheduler = configOrBufferSize.scheduler; + } else { + bufferSize = configOrBufferSize !== null && configOrBufferSize !== void 0 ? configOrBufferSize : Infinity; + } + return share_1.share({ + connector: function() { + return new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, scheduler); + }, + resetOnError: true, + resetOnComplete: false, + resetOnRefCountZero: refCount + }); + } + exports2.shareReplay = shareReplay; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/single.js +var require_single = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/single.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.single = void 0; + var EmptyError_1 = require_EmptyError(); + var SequenceError_1 = require_SequenceError(); + var NotFoundError_1 = require_NotFoundError(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function single(predicate) { + return lift_1.operate(function(source2, subscriber2) { + var hasValue = false; + var singleValue; + var seenValue = false; + var index = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + seenValue = true; + if (!predicate || predicate(value, index++, source2)) { + hasValue && subscriber2.error(new SequenceError_1.SequenceError("Too many matching values")); + hasValue = true; + singleValue = value; + } + }, function() { + if (hasValue) { + subscriber2.next(singleValue); + subscriber2.complete(); + } else { + subscriber2.error(seenValue ? new NotFoundError_1.NotFoundError("No matching values") : new EmptyError_1.EmptyError()); + } + })); + }); + } + exports2.single = single; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skip.js +var require_skip = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skip.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.skip = void 0; + var filter_1 = require_filter(); + function skip(count) { + return filter_1.filter(function(_, index) { + return count <= index; + }); + } + exports2.skip = skip; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js +var require_skipLast = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.skipLast = void 0; + var identity_1 = require_identity(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function skipLast(skipCount) { + return skipCount <= 0 ? identity_1.identity : lift_1.operate(function(source2, subscriber2) { + var ring = new Array(skipCount); + var seen = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var valueIndex = seen++; + if (valueIndex < skipCount) { + ring[valueIndex] = value; + } else { + var index = valueIndex % skipCount; + var oldValue = ring[index]; + ring[index] = value; + subscriber2.next(oldValue); + } + })); + return function() { + ring = null; + }; + }); + } + exports2.skipLast = skipLast; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js +var require_skipUntil = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.skipUntil = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + var noop_1 = require_noop(); + function skipUntil(notifier) { + return lift_1.operate(function(source2, subscriber2) { + var taking = false; + var skipSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + skipSubscriber === null || skipSubscriber === void 0 ? void 0 : skipSubscriber.unsubscribe(); + taking = true; + }, noop_1.noop); + innerFrom_1.innerFrom(notifier).subscribe(skipSubscriber); + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + return taking && subscriber2.next(value); + })); + }); + } + exports2.skipUntil = skipUntil; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js +var require_skipWhile = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.skipWhile = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function skipWhile(predicate) { + return lift_1.operate(function(source2, subscriber2) { + var taking = false; + var index = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + return (taking || (taking = !predicate(value, index++))) && subscriber2.next(value); + })); + }); + } + exports2.skipWhile = skipWhile; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/startWith.js +var require_startWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/startWith.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.startWith = void 0; + var concat_1 = require_concat(); + var args_1 = require_args(); + var lift_1 = require_lift(); + function startWith() { + var values = []; + for (var _i = 0; _i < arguments.length; _i++) { + values[_i] = arguments[_i]; + } + var scheduler = args_1.popScheduler(values); + return lift_1.operate(function(source2, subscriber2) { + (scheduler ? concat_1.concat(values, source2, scheduler) : concat_1.concat(values, source2)).subscribe(subscriber2); + }); + } + exports2.startWith = startWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js +var require_switchMap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.switchMap = void 0; + var innerFrom_1 = require_innerFrom(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function switchMap(project, resultSelector) { + return lift_1.operate(function(source2, subscriber2) { + var innerSubscriber = null; + var index = 0; + var isComplete = false; + var checkComplete = function() { + return isComplete && !innerSubscriber && subscriber2.complete(); + }; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + innerSubscriber === null || innerSubscriber === void 0 ? void 0 : innerSubscriber.unsubscribe(); + var innerIndex = 0; + var outerIndex = index++; + innerFrom_1.innerFrom(project(value, outerIndex)).subscribe(innerSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(innerValue) { + return subscriber2.next(resultSelector ? resultSelector(value, innerValue, outerIndex, innerIndex++) : innerValue); + }, function() { + innerSubscriber = null; + checkComplete(); + })); + }, function() { + isComplete = true; + checkComplete(); + })); + }); + } + exports2.switchMap = switchMap; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js +var require_switchAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.switchAll = void 0; + var switchMap_1 = require_switchMap(); + var identity_1 = require_identity(); + function switchAll() { + return switchMap_1.switchMap(identity_1.identity); + } + exports2.switchAll = switchAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js +var require_switchMapTo = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.switchMapTo = void 0; + var switchMap_1 = require_switchMap(); + var isFunction_1 = require_isFunction(); + function switchMapTo(innerObservable, resultSelector) { + return isFunction_1.isFunction(resultSelector) ? switchMap_1.switchMap(function() { + return innerObservable; + }, resultSelector) : switchMap_1.switchMap(function() { + return innerObservable; + }); + } + exports2.switchMapTo = switchMapTo; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js +var require_switchScan = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.switchScan = void 0; + var switchMap_1 = require_switchMap(); + var lift_1 = require_lift(); + function switchScan(accumulator, seed) { + return lift_1.operate(function(source2, subscriber2) { + var state = seed; + switchMap_1.switchMap(function(value, index) { + return accumulator(state, value, index); + }, function(_, innerValue) { + return state = innerValue, innerValue; + })(source2).subscribe(subscriber2); + return function() { + state = null; + }; + }); + } + exports2.switchScan = switchScan; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js +var require_takeUntil = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.takeUntil = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + var noop_1 = require_noop(); + function takeUntil(notifier) { + return lift_1.operate(function(source2, subscriber2) { + innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + return subscriber2.complete(); + }, noop_1.noop)); + !subscriber2.closed && source2.subscribe(subscriber2); + }); + } + exports2.takeUntil = takeUntil; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js +var require_takeWhile = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.takeWhile = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function takeWhile(predicate, inclusive) { + if (inclusive === void 0) { + inclusive = false; + } + return lift_1.operate(function(source2, subscriber2) { + var index = 0; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var result = predicate(value, index++); + (result || inclusive) && subscriber2.next(value); + !result && subscriber2.complete(); + })); + }); + } + exports2.takeWhile = takeWhile; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/tap.js +var require_tap = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/tap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.tap = void 0; + var isFunction_1 = require_isFunction(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var identity_1 = require_identity(); + function tap(observerOrNext, error, complete) { + var tapObserver = isFunction_1.isFunction(observerOrNext) || error || complete ? { next: observerOrNext, error, complete } : observerOrNext; + return tapObserver ? lift_1.operate(function(source2, subscriber2) { + var _a; + (_a = tapObserver.subscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver); + var isUnsub = true; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var _a2; + (_a2 = tapObserver.next) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver, value); + subscriber2.next(value); + }, function() { + var _a2; + isUnsub = false; + (_a2 = tapObserver.complete) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver); + subscriber2.complete(); + }, function(err2) { + var _a2; + isUnsub = false; + (_a2 = tapObserver.error) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver, err2); + subscriber2.error(err2); + }, function() { + var _a2, _b; + if (isUnsub) { + (_a2 = tapObserver.unsubscribe) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver); + } + (_b = tapObserver.finalize) === null || _b === void 0 ? void 0 : _b.call(tapObserver); + })); + }) : identity_1.identity; + } + exports2.tap = tap; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throttle.js +var require_throttle = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throttle.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.throttle = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function throttle5(durationSelector, config) { + return lift_1.operate(function(source2, subscriber2) { + var _a = config !== null && config !== void 0 ? config : {}, _b = _a.leading, leading = _b === void 0 ? true : _b, _c = _a.trailing, trailing = _c === void 0 ? false : _c; + var hasValue = false; + var sendValue = null; + var throttled = null; + var isComplete = false; + var endThrottling = function() { + throttled === null || throttled === void 0 ? void 0 : throttled.unsubscribe(); + throttled = null; + if (trailing) { + send(); + isComplete && subscriber2.complete(); + } + }; + var cleanupThrottling = function() { + throttled = null; + isComplete && subscriber2.complete(); + }; + var startThrottle = function(value) { + return throttled = innerFrom_1.innerFrom(durationSelector(value)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, endThrottling, cleanupThrottling)); + }; + var send = function() { + if (hasValue) { + hasValue = false; + var value = sendValue; + sendValue = null; + subscriber2.next(value); + !isComplete && startThrottle(value); + } + }; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + hasValue = true; + sendValue = value; + !(throttled && !throttled.closed) && (leading ? send() : startThrottle(value)); + }, function() { + isComplete = true; + !(trailing && hasValue && throttled && !throttled.closed) && subscriber2.complete(); + })); + }); + } + exports2.throttle = throttle5; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js +var require_throttleTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.throttleTime = void 0; + var async_1 = require_async(); + var throttle_1 = require_throttle(); + var timer_1 = require_timer(); + function throttleTime(duration, scheduler, config) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + var duration$ = timer_1.timer(duration, scheduler); + return throttle_1.throttle(function() { + return duration$; + }, config); + } + exports2.throttleTime = throttleTime; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js +var require_timeInterval = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TimeInterval = exports2.timeInterval = void 0; + var async_1 = require_async(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function timeInterval(scheduler) { + if (scheduler === void 0) { + scheduler = async_1.asyncScheduler; + } + return lift_1.operate(function(source2, subscriber2) { + var last = scheduler.now(); + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var now = scheduler.now(); + var interval = now - last; + last = now; + subscriber2.next(new TimeInterval(value, interval)); + })); + }); + } + exports2.timeInterval = timeInterval; + var TimeInterval = function() { + function TimeInterval2(value, interval) { + this.value = value; + this.interval = interval; + } + return TimeInterval2; + }(); + exports2.TimeInterval = TimeInterval; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js +var require_timeoutWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.timeoutWith = void 0; + var async_1 = require_async(); + var isDate_1 = require_isDate(); + var timeout_1 = require_timeout(); + function timeoutWith(due, withObservable, scheduler) { + var first; + var each; + var _with; + scheduler = scheduler !== null && scheduler !== void 0 ? scheduler : async_1.async; + if (isDate_1.isValidDate(due)) { + first = due; + } else if (typeof due === "number") { + each = due; + } + if (withObservable) { + _with = function() { + return withObservable; + }; + } else { + throw new TypeError("No observable provided to switch to"); + } + if (first == null && each == null) { + throw new TypeError("No timeout provided."); + } + return timeout_1.timeout({ + first, + each, + scheduler, + with: _with + }); + } + exports2.timeoutWith = timeoutWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js +var require_timestamp = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.timestamp = void 0; + var dateTimestampProvider_1 = require_dateTimestampProvider(); + var map_1 = require_map(); + function timestamp(timestampProvider) { + if (timestampProvider === void 0) { + timestampProvider = dateTimestampProvider_1.dateTimestampProvider; + } + return map_1.map(function(value) { + return { value, timestamp: timestampProvider.now() }; + }); + } + exports2.timestamp = timestamp; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/window.js +var require_window = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/window.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.window = void 0; + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + var innerFrom_1 = require_innerFrom(); + function window3(windowBoundaries) { + return lift_1.operate(function(source2, subscriber2) { + var windowSubject = new Subject_1.Subject(); + subscriber2.next(windowSubject.asObservable()); + var errorHandler = function(err2) { + windowSubject.error(err2); + subscriber2.error(err2); + }; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + return windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.next(value); + }, function() { + windowSubject.complete(); + subscriber2.complete(); + }, errorHandler)); + innerFrom_1.innerFrom(windowBoundaries).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function() { + windowSubject.complete(); + subscriber2.next(windowSubject = new Subject_1.Subject()); + }, noop_1.noop, errorHandler)); + return function() { + windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.unsubscribe(); + windowSubject = null; + }; + }); + } + exports2.window = window3; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js +var require_windowCount = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js"(exports2) { + "use strict"; + var __values = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.windowCount = void 0; + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + function windowCount(windowSize, startWindowEvery) { + if (startWindowEvery === void 0) { + startWindowEvery = 0; + } + var startEvery = startWindowEvery > 0 ? startWindowEvery : windowSize; + return lift_1.operate(function(source2, subscriber2) { + var windows3 = [new Subject_1.Subject()]; + var starts = []; + var count = 0; + subscriber2.next(windows3[0].asObservable()); + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var e_1, _a; + try { + for (var windows_1 = __values(windows3), windows_1_1 = windows_1.next(); !windows_1_1.done; windows_1_1 = windows_1.next()) { + var window_1 = windows_1_1.value; + window_1.next(value); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (windows_1_1 && !windows_1_1.done && (_a = windows_1.return)) + _a.call(windows_1); + } finally { + if (e_1) + throw e_1.error; + } + } + var c = count - windowSize + 1; + if (c >= 0 && c % startEvery === 0) { + windows3.shift().complete(); + } + if (++count % startEvery === 0) { + var window_2 = new Subject_1.Subject(); + windows3.push(window_2); + subscriber2.next(window_2.asObservable()); + } + }, function() { + while (windows3.length > 0) { + windows3.shift().complete(); + } + subscriber2.complete(); + }, function(err2) { + while (windows3.length > 0) { + windows3.shift().error(err2); + } + subscriber2.error(err2); + }, function() { + starts = null; + windows3 = null; + })); + }); + } + exports2.windowCount = windowCount; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js +var require_windowTime = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.windowTime = void 0; + var Subject_1 = require_Subject(); + var async_1 = require_async(); + var Subscription_1 = require_Subscription(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var arrRemove_1 = require_arrRemove(); + var args_1 = require_args(); + var executeSchedule_1 = require_executeSchedule(); + function windowTime(windowTimeSpan) { + var _a, _b; + var otherArgs = []; + for (var _i = 1; _i < arguments.length; _i++) { + otherArgs[_i - 1] = arguments[_i]; + } + var scheduler = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler; + var windowCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null; + var maxWindowSize = otherArgs[1] || Infinity; + return lift_1.operate(function(source2, subscriber2) { + var windowRecords = []; + var restartOnClose = false; + var closeWindow = function(record) { + var window3 = record.window, subs = record.subs; + window3.complete(); + subs.unsubscribe(); + arrRemove_1.arrRemove(windowRecords, record); + restartOnClose && startWindow(); + }; + var startWindow = function() { + if (windowRecords) { + var subs = new Subscription_1.Subscription(); + subscriber2.add(subs); + var window_1 = new Subject_1.Subject(); + var record_1 = { + window: window_1, + subs, + seen: 0 + }; + windowRecords.push(record_1); + subscriber2.next(window_1.asObservable()); + executeSchedule_1.executeSchedule(subs, scheduler, function() { + return closeWindow(record_1); + }, windowTimeSpan); + } + }; + if (windowCreationInterval !== null && windowCreationInterval >= 0) { + executeSchedule_1.executeSchedule(subscriber2, scheduler, startWindow, windowCreationInterval, true); + } else { + restartOnClose = true; + } + startWindow(); + var loop = function(cb) { + return windowRecords.slice().forEach(cb); + }; + var terminate = function(cb) { + loop(function(_a2) { + var window3 = _a2.window; + return cb(window3); + }); + cb(subscriber2); + subscriber2.unsubscribe(); + }; + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + loop(function(record) { + record.window.next(value); + maxWindowSize <= ++record.seen && closeWindow(record); + }); + }, function() { + return terminate(function(consumer) { + return consumer.complete(); + }); + }, function(err2) { + return terminate(function(consumer) { + return consumer.error(err2); + }); + })); + return function() { + windowRecords = null; + }; + }); + } + exports2.windowTime = windowTime; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js +var require_windowToggle = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js"(exports2) { + "use strict"; + var __values = exports2 && exports2.__values || function(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.windowToggle = void 0; + var Subject_1 = require_Subject(); + var Subscription_1 = require_Subscription(); + var lift_1 = require_lift(); + var innerFrom_1 = require_innerFrom(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var noop_1 = require_noop(); + var arrRemove_1 = require_arrRemove(); + function windowToggle(openings, closingSelector) { + return lift_1.operate(function(source2, subscriber2) { + var windows3 = []; + var handleError = function(err2) { + while (0 < windows3.length) { + windows3.shift().error(err2); + } + subscriber2.error(err2); + }; + innerFrom_1.innerFrom(openings).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(openValue) { + var window3 = new Subject_1.Subject(); + windows3.push(window3); + var closingSubscription = new Subscription_1.Subscription(); + var closeWindow = function() { + arrRemove_1.arrRemove(windows3, window3); + window3.complete(); + closingSubscription.unsubscribe(); + }; + var closingNotifier; + try { + closingNotifier = innerFrom_1.innerFrom(closingSelector(openValue)); + } catch (err2) { + handleError(err2); + return; + } + subscriber2.next(window3.asObservable()); + closingSubscription.add(closingNotifier.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, closeWindow, noop_1.noop, handleError))); + }, noop_1.noop)); + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + var e_1, _a; + var windowsCopy = windows3.slice(); + try { + for (var windowsCopy_1 = __values(windowsCopy), windowsCopy_1_1 = windowsCopy_1.next(); !windowsCopy_1_1.done; windowsCopy_1_1 = windowsCopy_1.next()) { + var window_1 = windowsCopy_1_1.value; + window_1.next(value); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (windowsCopy_1_1 && !windowsCopy_1_1.done && (_a = windowsCopy_1.return)) + _a.call(windowsCopy_1); + } finally { + if (e_1) + throw e_1.error; + } + } + }, function() { + while (0 < windows3.length) { + windows3.shift().complete(); + } + subscriber2.complete(); + }, handleError, function() { + while (0 < windows3.length) { + windows3.shift().unsubscribe(); + } + })); + }); + } + exports2.windowToggle = windowToggle; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js +var require_windowWhen = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.windowWhen = void 0; + var Subject_1 = require_Subject(); + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + function windowWhen(closingSelector) { + return lift_1.operate(function(source2, subscriber2) { + var window3; + var closingSubscriber; + var handleError = function(err2) { + window3.error(err2); + subscriber2.error(err2); + }; + var openWindow = function() { + closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); + window3 === null || window3 === void 0 ? void 0 : window3.complete(); + window3 = new Subject_1.Subject(); + subscriber2.next(window3.asObservable()); + var closingNotifier; + try { + closingNotifier = innerFrom_1.innerFrom(closingSelector()); + } catch (err2) { + handleError(err2); + return; + } + closingNotifier.subscribe(closingSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber2, openWindow, openWindow, handleError)); + }; + openWindow(); + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + return window3.next(value); + }, function() { + window3.complete(); + subscriber2.complete(); + }, handleError, function() { + closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); + window3 = null; + })); + }); + } + exports2.windowWhen = windowWhen; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js +var require_withLatestFrom = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.withLatestFrom = void 0; + var lift_1 = require_lift(); + var OperatorSubscriber_1 = require_OperatorSubscriber(); + var innerFrom_1 = require_innerFrom(); + var identity_1 = require_identity(); + var noop_1 = require_noop(); + var args_1 = require_args(); + function withLatestFrom() { + var inputs = []; + for (var _i = 0; _i < arguments.length; _i++) { + inputs[_i] = arguments[_i]; + } + var project = args_1.popResultSelector(inputs); + return lift_1.operate(function(source2, subscriber2) { + var len = inputs.length; + var otherValues = new Array(len); + var hasValue = inputs.map(function() { + return false; + }); + var ready = false; + var _loop_1 = function(i2) { + innerFrom_1.innerFrom(inputs[i2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + otherValues[i2] = value; + if (!ready && !hasValue[i2]) { + hasValue[i2] = true; + (ready = hasValue.every(identity_1.identity)) && (hasValue = null); + } + }, noop_1.noop)); + }; + for (var i = 0; i < len; i++) { + _loop_1(i); + } + source2.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber2, function(value) { + if (ready) { + var values = __spreadArray([value], __read(otherValues)); + subscriber2.next(project ? project.apply(void 0, __spreadArray([], __read(values))) : values); + } + })); + }); + } + exports2.withLatestFrom = withLatestFrom; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js +var require_zipAll = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.zipAll = void 0; + var zip_1 = require_zip(); + var joinAllInternals_1 = require_joinAllInternals(); + function zipAll(project) { + return joinAllInternals_1.joinAllInternals(zip_1.zip, project); + } + exports2.zipAll = zipAll; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zip.js +var require_zip2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zip.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.zip = void 0; + var zip_1 = require_zip(); + var lift_1 = require_lift(); + function zip() { + var sources = []; + for (var _i = 0; _i < arguments.length; _i++) { + sources[_i] = arguments[_i]; + } + return lift_1.operate(function(source2, subscriber2) { + zip_1.zip.apply(void 0, __spreadArray([source2], __read(sources))).subscribe(subscriber2); + }); + } + exports2.zip = zip; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js +var require_zipWith = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.zipWith = void 0; + var zip_1 = require_zip2(); + function zipWith() { + var otherInputs = []; + for (var _i = 0; _i < arguments.length; _i++) { + otherInputs[_i] = arguments[_i]; + } + return zip_1.zip.apply(void 0, __spreadArray([], __read(otherInputs))); + } + exports2.zipWith = zipWith; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/index.js +var require_cjs2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.interval = exports2.iif = exports2.generate = exports2.fromEventPattern = exports2.fromEvent = exports2.from = exports2.forkJoin = exports2.empty = exports2.defer = exports2.connectable = exports2.concat = exports2.combineLatest = exports2.bindNodeCallback = exports2.bindCallback = exports2.UnsubscriptionError = exports2.TimeoutError = exports2.SequenceError = exports2.ObjectUnsubscribedError = exports2.NotFoundError = exports2.EmptyError = exports2.ArgumentOutOfRangeError = exports2.firstValueFrom = exports2.lastValueFrom = exports2.isObservable = exports2.identity = exports2.noop = exports2.pipe = exports2.NotificationKind = exports2.Notification = exports2.Subscriber = exports2.Subscription = exports2.Scheduler = exports2.VirtualAction = exports2.VirtualTimeScheduler = exports2.animationFrameScheduler = exports2.animationFrame = exports2.queueScheduler = exports2.queue = exports2.asyncScheduler = exports2.async = exports2.asapScheduler = exports2.asap = exports2.AsyncSubject = exports2.ReplaySubject = exports2.BehaviorSubject = exports2.Subject = exports2.animationFrames = exports2.observable = exports2.ConnectableObservable = exports2.Observable = void 0; + exports2.filter = exports2.expand = exports2.exhaustMap = exports2.exhaustAll = exports2.exhaust = exports2.every = exports2.endWith = exports2.elementAt = exports2.distinctUntilKeyChanged = exports2.distinctUntilChanged = exports2.distinct = exports2.dematerialize = exports2.delayWhen = exports2.delay = exports2.defaultIfEmpty = exports2.debounceTime = exports2.debounce = exports2.count = exports2.connect = exports2.concatWith = exports2.concatMapTo = exports2.concatMap = exports2.concatAll = exports2.combineLatestWith = exports2.combineLatestAll = exports2.combineAll = exports2.catchError = exports2.bufferWhen = exports2.bufferToggle = exports2.bufferTime = exports2.bufferCount = exports2.buffer = exports2.auditTime = exports2.audit = exports2.config = exports2.NEVER = exports2.EMPTY = exports2.scheduled = exports2.zip = exports2.using = exports2.timer = exports2.throwError = exports2.range = exports2.race = exports2.partition = exports2.pairs = exports2.onErrorResumeNext = exports2.of = exports2.never = exports2.merge = void 0; + exports2.switchMap = exports2.switchAll = exports2.subscribeOn = exports2.startWith = exports2.skipWhile = exports2.skipUntil = exports2.skipLast = exports2.skip = exports2.single = exports2.shareReplay = exports2.share = exports2.sequenceEqual = exports2.scan = exports2.sampleTime = exports2.sample = exports2.refCount = exports2.retryWhen = exports2.retry = exports2.repeatWhen = exports2.repeat = exports2.reduce = exports2.raceWith = exports2.publishReplay = exports2.publishLast = exports2.publishBehavior = exports2.publish = exports2.pluck = exports2.pairwise = exports2.onErrorResumeNextWith = exports2.observeOn = exports2.multicast = exports2.min = exports2.mergeWith = exports2.mergeScan = exports2.mergeMapTo = exports2.mergeMap = exports2.flatMap = exports2.mergeAll = exports2.max = exports2.materialize = exports2.mapTo = exports2.map = exports2.last = exports2.isEmpty = exports2.ignoreElements = exports2.groupBy = exports2.first = exports2.findIndex = exports2.find = exports2.finalize = void 0; + exports2.zipWith = exports2.zipAll = exports2.withLatestFrom = exports2.windowWhen = exports2.windowToggle = exports2.windowTime = exports2.windowCount = exports2.window = exports2.toArray = exports2.timestamp = exports2.timeoutWith = exports2.timeout = exports2.timeInterval = exports2.throwIfEmpty = exports2.throttleTime = exports2.throttle = exports2.tap = exports2.takeWhile = exports2.takeUntil = exports2.takeLast = exports2.take = exports2.switchScan = exports2.switchMapTo = void 0; + var Observable_1 = require_Observable(); + Object.defineProperty(exports2, "Observable", { enumerable: true, get: function() { + return Observable_1.Observable; + } }); + var ConnectableObservable_1 = require_ConnectableObservable(); + Object.defineProperty(exports2, "ConnectableObservable", { enumerable: true, get: function() { + return ConnectableObservable_1.ConnectableObservable; + } }); + var observable_1 = require_observable(); + Object.defineProperty(exports2, "observable", { enumerable: true, get: function() { + return observable_1.observable; + } }); + var animationFrames_1 = require_animationFrames(); + Object.defineProperty(exports2, "animationFrames", { enumerable: true, get: function() { + return animationFrames_1.animationFrames; + } }); + var Subject_1 = require_Subject(); + Object.defineProperty(exports2, "Subject", { enumerable: true, get: function() { + return Subject_1.Subject; + } }); + var BehaviorSubject_1 = require_BehaviorSubject(); + Object.defineProperty(exports2, "BehaviorSubject", { enumerable: true, get: function() { + return BehaviorSubject_1.BehaviorSubject; + } }); + var ReplaySubject_1 = require_ReplaySubject(); + Object.defineProperty(exports2, "ReplaySubject", { enumerable: true, get: function() { + return ReplaySubject_1.ReplaySubject; + } }); + var AsyncSubject_1 = require_AsyncSubject(); + Object.defineProperty(exports2, "AsyncSubject", { enumerable: true, get: function() { + return AsyncSubject_1.AsyncSubject; + } }); + var asap_1 = require_asap(); + Object.defineProperty(exports2, "asap", { enumerable: true, get: function() { + return asap_1.asap; + } }); + Object.defineProperty(exports2, "asapScheduler", { enumerable: true, get: function() { + return asap_1.asapScheduler; + } }); + var async_1 = require_async(); + Object.defineProperty(exports2, "async", { enumerable: true, get: function() { + return async_1.async; + } }); + Object.defineProperty(exports2, "asyncScheduler", { enumerable: true, get: function() { + return async_1.asyncScheduler; + } }); + var queue_1 = require_queue(); + Object.defineProperty(exports2, "queue", { enumerable: true, get: function() { + return queue_1.queue; + } }); + Object.defineProperty(exports2, "queueScheduler", { enumerable: true, get: function() { + return queue_1.queueScheduler; + } }); + var animationFrame_1 = require_animationFrame(); + Object.defineProperty(exports2, "animationFrame", { enumerable: true, get: function() { + return animationFrame_1.animationFrame; + } }); + Object.defineProperty(exports2, "animationFrameScheduler", { enumerable: true, get: function() { + return animationFrame_1.animationFrameScheduler; + } }); + var VirtualTimeScheduler_1 = require_VirtualTimeScheduler(); + Object.defineProperty(exports2, "VirtualTimeScheduler", { enumerable: true, get: function() { + return VirtualTimeScheduler_1.VirtualTimeScheduler; + } }); + Object.defineProperty(exports2, "VirtualAction", { enumerable: true, get: function() { + return VirtualTimeScheduler_1.VirtualAction; + } }); + var Scheduler_1 = require_Scheduler(); + Object.defineProperty(exports2, "Scheduler", { enumerable: true, get: function() { + return Scheduler_1.Scheduler; + } }); + var Subscription_1 = require_Subscription(); + Object.defineProperty(exports2, "Subscription", { enumerable: true, get: function() { + return Subscription_1.Subscription; + } }); + var Subscriber_1 = require_Subscriber(); + Object.defineProperty(exports2, "Subscriber", { enumerable: true, get: function() { + return Subscriber_1.Subscriber; + } }); + var Notification_1 = require_Notification(); + Object.defineProperty(exports2, "Notification", { enumerable: true, get: function() { + return Notification_1.Notification; + } }); + Object.defineProperty(exports2, "NotificationKind", { enumerable: true, get: function() { + return Notification_1.NotificationKind; + } }); + var pipe_1 = require_pipe(); + Object.defineProperty(exports2, "pipe", { enumerable: true, get: function() { + return pipe_1.pipe; + } }); + var noop_1 = require_noop(); + Object.defineProperty(exports2, "noop", { enumerable: true, get: function() { + return noop_1.noop; + } }); + var identity_1 = require_identity(); + Object.defineProperty(exports2, "identity", { enumerable: true, get: function() { + return identity_1.identity; + } }); + var isObservable_1 = require_isObservable(); + Object.defineProperty(exports2, "isObservable", { enumerable: true, get: function() { + return isObservable_1.isObservable; + } }); + var lastValueFrom_1 = require_lastValueFrom(); + Object.defineProperty(exports2, "lastValueFrom", { enumerable: true, get: function() { + return lastValueFrom_1.lastValueFrom; + } }); + var firstValueFrom_1 = require_firstValueFrom(); + Object.defineProperty(exports2, "firstValueFrom", { enumerable: true, get: function() { + return firstValueFrom_1.firstValueFrom; + } }); + var ArgumentOutOfRangeError_1 = require_ArgumentOutOfRangeError(); + Object.defineProperty(exports2, "ArgumentOutOfRangeError", { enumerable: true, get: function() { + return ArgumentOutOfRangeError_1.ArgumentOutOfRangeError; + } }); + var EmptyError_1 = require_EmptyError(); + Object.defineProperty(exports2, "EmptyError", { enumerable: true, get: function() { + return EmptyError_1.EmptyError; + } }); + var NotFoundError_1 = require_NotFoundError(); + Object.defineProperty(exports2, "NotFoundError", { enumerable: true, get: function() { + return NotFoundError_1.NotFoundError; + } }); + var ObjectUnsubscribedError_1 = require_ObjectUnsubscribedError(); + Object.defineProperty(exports2, "ObjectUnsubscribedError", { enumerable: true, get: function() { + return ObjectUnsubscribedError_1.ObjectUnsubscribedError; + } }); + var SequenceError_1 = require_SequenceError(); + Object.defineProperty(exports2, "SequenceError", { enumerable: true, get: function() { + return SequenceError_1.SequenceError; + } }); + var timeout_1 = require_timeout(); + Object.defineProperty(exports2, "TimeoutError", { enumerable: true, get: function() { + return timeout_1.TimeoutError; + } }); + var UnsubscriptionError_1 = require_UnsubscriptionError(); + Object.defineProperty(exports2, "UnsubscriptionError", { enumerable: true, get: function() { + return UnsubscriptionError_1.UnsubscriptionError; + } }); + var bindCallback_1 = require_bindCallback(); + Object.defineProperty(exports2, "bindCallback", { enumerable: true, get: function() { + return bindCallback_1.bindCallback; + } }); + var bindNodeCallback_1 = require_bindNodeCallback(); + Object.defineProperty(exports2, "bindNodeCallback", { enumerable: true, get: function() { + return bindNodeCallback_1.bindNodeCallback; + } }); + var combineLatest_1 = require_combineLatest(); + Object.defineProperty(exports2, "combineLatest", { enumerable: true, get: function() { + return combineLatest_1.combineLatest; + } }); + var concat_1 = require_concat(); + Object.defineProperty(exports2, "concat", { enumerable: true, get: function() { + return concat_1.concat; + } }); + var connectable_1 = require_connectable(); + Object.defineProperty(exports2, "connectable", { enumerable: true, get: function() { + return connectable_1.connectable; + } }); + var defer_1 = require_defer(); + Object.defineProperty(exports2, "defer", { enumerable: true, get: function() { + return defer_1.defer; + } }); + var empty_1 = require_empty(); + Object.defineProperty(exports2, "empty", { enumerable: true, get: function() { + return empty_1.empty; + } }); + var forkJoin_1 = require_forkJoin(); + Object.defineProperty(exports2, "forkJoin", { enumerable: true, get: function() { + return forkJoin_1.forkJoin; + } }); + var from_1 = require_from(); + Object.defineProperty(exports2, "from", { enumerable: true, get: function() { + return from_1.from; + } }); + var fromEvent_1 = require_fromEvent(); + Object.defineProperty(exports2, "fromEvent", { enumerable: true, get: function() { + return fromEvent_1.fromEvent; + } }); + var fromEventPattern_1 = require_fromEventPattern(); + Object.defineProperty(exports2, "fromEventPattern", { enumerable: true, get: function() { + return fromEventPattern_1.fromEventPattern; + } }); + var generate_1 = require_generate(); + Object.defineProperty(exports2, "generate", { enumerable: true, get: function() { + return generate_1.generate; + } }); + var iif_1 = require_iif(); + Object.defineProperty(exports2, "iif", { enumerable: true, get: function() { + return iif_1.iif; + } }); + var interval_1 = require_interval(); + Object.defineProperty(exports2, "interval", { enumerable: true, get: function() { + return interval_1.interval; + } }); + var merge_1 = require_merge(); + Object.defineProperty(exports2, "merge", { enumerable: true, get: function() { + return merge_1.merge; + } }); + var never_1 = require_never(); + Object.defineProperty(exports2, "never", { enumerable: true, get: function() { + return never_1.never; + } }); + var of_1 = require_of(); + Object.defineProperty(exports2, "of", { enumerable: true, get: function() { + return of_1.of; + } }); + var onErrorResumeNext_1 = require_onErrorResumeNext(); + Object.defineProperty(exports2, "onErrorResumeNext", { enumerable: true, get: function() { + return onErrorResumeNext_1.onErrorResumeNext; + } }); + var pairs_1 = require_pairs(); + Object.defineProperty(exports2, "pairs", { enumerable: true, get: function() { + return pairs_1.pairs; + } }); + var partition_1 = require_partition(); + Object.defineProperty(exports2, "partition", { enumerable: true, get: function() { + return partition_1.partition; + } }); + var race_1 = require_race(); + Object.defineProperty(exports2, "race", { enumerable: true, get: function() { + return race_1.race; + } }); + var range_1 = require_range(); + Object.defineProperty(exports2, "range", { enumerable: true, get: function() { + return range_1.range; + } }); + var throwError_1 = require_throwError(); + Object.defineProperty(exports2, "throwError", { enumerable: true, get: function() { + return throwError_1.throwError; + } }); + var timer_1 = require_timer(); + Object.defineProperty(exports2, "timer", { enumerable: true, get: function() { + return timer_1.timer; + } }); + var using_1 = require_using(); + Object.defineProperty(exports2, "using", { enumerable: true, get: function() { + return using_1.using; + } }); + var zip_1 = require_zip(); + Object.defineProperty(exports2, "zip", { enumerable: true, get: function() { + return zip_1.zip; + } }); + var scheduled_1 = require_scheduled(); + Object.defineProperty(exports2, "scheduled", { enumerable: true, get: function() { + return scheduled_1.scheduled; + } }); + var empty_2 = require_empty(); + Object.defineProperty(exports2, "EMPTY", { enumerable: true, get: function() { + return empty_2.EMPTY; + } }); + var never_2 = require_never(); + Object.defineProperty(exports2, "NEVER", { enumerable: true, get: function() { + return never_2.NEVER; + } }); + __exportStar(require_types2(), exports2); + var config_1 = require_config(); + Object.defineProperty(exports2, "config", { enumerable: true, get: function() { + return config_1.config; + } }); + var audit_1 = require_audit(); + Object.defineProperty(exports2, "audit", { enumerable: true, get: function() { + return audit_1.audit; + } }); + var auditTime_1 = require_auditTime(); + Object.defineProperty(exports2, "auditTime", { enumerable: true, get: function() { + return auditTime_1.auditTime; + } }); + var buffer_1 = require_buffer(); + Object.defineProperty(exports2, "buffer", { enumerable: true, get: function() { + return buffer_1.buffer; + } }); + var bufferCount_1 = require_bufferCount(); + Object.defineProperty(exports2, "bufferCount", { enumerable: true, get: function() { + return bufferCount_1.bufferCount; + } }); + var bufferTime_1 = require_bufferTime(); + Object.defineProperty(exports2, "bufferTime", { enumerable: true, get: function() { + return bufferTime_1.bufferTime; + } }); + var bufferToggle_1 = require_bufferToggle(); + Object.defineProperty(exports2, "bufferToggle", { enumerable: true, get: function() { + return bufferToggle_1.bufferToggle; + } }); + var bufferWhen_1 = require_bufferWhen(); + Object.defineProperty(exports2, "bufferWhen", { enumerable: true, get: function() { + return bufferWhen_1.bufferWhen; + } }); + var catchError_1 = require_catchError(); + Object.defineProperty(exports2, "catchError", { enumerable: true, get: function() { + return catchError_1.catchError; + } }); + var combineAll_1 = require_combineAll(); + Object.defineProperty(exports2, "combineAll", { enumerable: true, get: function() { + return combineAll_1.combineAll; + } }); + var combineLatestAll_1 = require_combineLatestAll(); + Object.defineProperty(exports2, "combineLatestAll", { enumerable: true, get: function() { + return combineLatestAll_1.combineLatestAll; + } }); + var combineLatestWith_1 = require_combineLatestWith(); + Object.defineProperty(exports2, "combineLatestWith", { enumerable: true, get: function() { + return combineLatestWith_1.combineLatestWith; + } }); + var concatAll_1 = require_concatAll(); + Object.defineProperty(exports2, "concatAll", { enumerable: true, get: function() { + return concatAll_1.concatAll; + } }); + var concatMap_1 = require_concatMap(); + Object.defineProperty(exports2, "concatMap", { enumerable: true, get: function() { + return concatMap_1.concatMap; + } }); + var concatMapTo_1 = require_concatMapTo(); + Object.defineProperty(exports2, "concatMapTo", { enumerable: true, get: function() { + return concatMapTo_1.concatMapTo; + } }); + var concatWith_1 = require_concatWith(); + Object.defineProperty(exports2, "concatWith", { enumerable: true, get: function() { + return concatWith_1.concatWith; + } }); + var connect_1 = require_connect(); + Object.defineProperty(exports2, "connect", { enumerable: true, get: function() { + return connect_1.connect; + } }); + var count_1 = require_count(); + Object.defineProperty(exports2, "count", { enumerable: true, get: function() { + return count_1.count; + } }); + var debounce_1 = require_debounce(); + Object.defineProperty(exports2, "debounce", { enumerable: true, get: function() { + return debounce_1.debounce; + } }); + var debounceTime_1 = require_debounceTime(); + Object.defineProperty(exports2, "debounceTime", { enumerable: true, get: function() { + return debounceTime_1.debounceTime; + } }); + var defaultIfEmpty_1 = require_defaultIfEmpty(); + Object.defineProperty(exports2, "defaultIfEmpty", { enumerable: true, get: function() { + return defaultIfEmpty_1.defaultIfEmpty; + } }); + var delay_1 = require_delay(); + Object.defineProperty(exports2, "delay", { enumerable: true, get: function() { + return delay_1.delay; + } }); + var delayWhen_1 = require_delayWhen(); + Object.defineProperty(exports2, "delayWhen", { enumerable: true, get: function() { + return delayWhen_1.delayWhen; + } }); + var dematerialize_1 = require_dematerialize(); + Object.defineProperty(exports2, "dematerialize", { enumerable: true, get: function() { + return dematerialize_1.dematerialize; + } }); + var distinct_1 = require_distinct(); + Object.defineProperty(exports2, "distinct", { enumerable: true, get: function() { + return distinct_1.distinct; + } }); + var distinctUntilChanged_1 = require_distinctUntilChanged(); + Object.defineProperty(exports2, "distinctUntilChanged", { enumerable: true, get: function() { + return distinctUntilChanged_1.distinctUntilChanged; + } }); + var distinctUntilKeyChanged_1 = require_distinctUntilKeyChanged(); + Object.defineProperty(exports2, "distinctUntilKeyChanged", { enumerable: true, get: function() { + return distinctUntilKeyChanged_1.distinctUntilKeyChanged; + } }); + var elementAt_1 = require_elementAt(); + Object.defineProperty(exports2, "elementAt", { enumerable: true, get: function() { + return elementAt_1.elementAt; + } }); + var endWith_1 = require_endWith(); + Object.defineProperty(exports2, "endWith", { enumerable: true, get: function() { + return endWith_1.endWith; + } }); + var every_1 = require_every(); + Object.defineProperty(exports2, "every", { enumerable: true, get: function() { + return every_1.every; + } }); + var exhaust_1 = require_exhaust(); + Object.defineProperty(exports2, "exhaust", { enumerable: true, get: function() { + return exhaust_1.exhaust; + } }); + var exhaustAll_1 = require_exhaustAll(); + Object.defineProperty(exports2, "exhaustAll", { enumerable: true, get: function() { + return exhaustAll_1.exhaustAll; + } }); + var exhaustMap_1 = require_exhaustMap(); + Object.defineProperty(exports2, "exhaustMap", { enumerable: true, get: function() { + return exhaustMap_1.exhaustMap; + } }); + var expand_1 = require_expand(); + Object.defineProperty(exports2, "expand", { enumerable: true, get: function() { + return expand_1.expand; + } }); + var filter_1 = require_filter(); + Object.defineProperty(exports2, "filter", { enumerable: true, get: function() { + return filter_1.filter; + } }); + var finalize_1 = require_finalize(); + Object.defineProperty(exports2, "finalize", { enumerable: true, get: function() { + return finalize_1.finalize; + } }); + var find_1 = require_find(); + Object.defineProperty(exports2, "find", { enumerable: true, get: function() { + return find_1.find; + } }); + var findIndex_1 = require_findIndex(); + Object.defineProperty(exports2, "findIndex", { enumerable: true, get: function() { + return findIndex_1.findIndex; + } }); + var first_1 = require_first(); + Object.defineProperty(exports2, "first", { enumerable: true, get: function() { + return first_1.first; + } }); + var groupBy_1 = require_groupBy(); + Object.defineProperty(exports2, "groupBy", { enumerable: true, get: function() { + return groupBy_1.groupBy; + } }); + var ignoreElements_1 = require_ignoreElements(); + Object.defineProperty(exports2, "ignoreElements", { enumerable: true, get: function() { + return ignoreElements_1.ignoreElements; + } }); + var isEmpty_1 = require_isEmpty(); + Object.defineProperty(exports2, "isEmpty", { enumerable: true, get: function() { + return isEmpty_1.isEmpty; + } }); + var last_1 = require_last(); + Object.defineProperty(exports2, "last", { enumerable: true, get: function() { + return last_1.last; + } }); + var map_1 = require_map(); + Object.defineProperty(exports2, "map", { enumerable: true, get: function() { + return map_1.map; + } }); + var mapTo_1 = require_mapTo(); + Object.defineProperty(exports2, "mapTo", { enumerable: true, get: function() { + return mapTo_1.mapTo; + } }); + var materialize_1 = require_materialize(); + Object.defineProperty(exports2, "materialize", { enumerable: true, get: function() { + return materialize_1.materialize; + } }); + var max_1 = require_max(); + Object.defineProperty(exports2, "max", { enumerable: true, get: function() { + return max_1.max; + } }); + var mergeAll_1 = require_mergeAll(); + Object.defineProperty(exports2, "mergeAll", { enumerable: true, get: function() { + return mergeAll_1.mergeAll; + } }); + var flatMap_1 = require_flatMap(); + Object.defineProperty(exports2, "flatMap", { enumerable: true, get: function() { + return flatMap_1.flatMap; + } }); + var mergeMap_1 = require_mergeMap(); + Object.defineProperty(exports2, "mergeMap", { enumerable: true, get: function() { + return mergeMap_1.mergeMap; + } }); + var mergeMapTo_1 = require_mergeMapTo(); + Object.defineProperty(exports2, "mergeMapTo", { enumerable: true, get: function() { + return mergeMapTo_1.mergeMapTo; + } }); + var mergeScan_1 = require_mergeScan(); + Object.defineProperty(exports2, "mergeScan", { enumerable: true, get: function() { + return mergeScan_1.mergeScan; + } }); + var mergeWith_1 = require_mergeWith(); + Object.defineProperty(exports2, "mergeWith", { enumerable: true, get: function() { + return mergeWith_1.mergeWith; + } }); + var min_1 = require_min(); + Object.defineProperty(exports2, "min", { enumerable: true, get: function() { + return min_1.min; + } }); + var multicast_1 = require_multicast(); + Object.defineProperty(exports2, "multicast", { enumerable: true, get: function() { + return multicast_1.multicast; + } }); + var observeOn_1 = require_observeOn(); + Object.defineProperty(exports2, "observeOn", { enumerable: true, get: function() { + return observeOn_1.observeOn; + } }); + var onErrorResumeNextWith_1 = require_onErrorResumeNextWith(); + Object.defineProperty(exports2, "onErrorResumeNextWith", { enumerable: true, get: function() { + return onErrorResumeNextWith_1.onErrorResumeNextWith; + } }); + var pairwise_1 = require_pairwise(); + Object.defineProperty(exports2, "pairwise", { enumerable: true, get: function() { + return pairwise_1.pairwise; + } }); + var pluck_1 = require_pluck(); + Object.defineProperty(exports2, "pluck", { enumerable: true, get: function() { + return pluck_1.pluck; + } }); + var publish_1 = require_publish(); + Object.defineProperty(exports2, "publish", { enumerable: true, get: function() { + return publish_1.publish; + } }); + var publishBehavior_1 = require_publishBehavior(); + Object.defineProperty(exports2, "publishBehavior", { enumerable: true, get: function() { + return publishBehavior_1.publishBehavior; + } }); + var publishLast_1 = require_publishLast(); + Object.defineProperty(exports2, "publishLast", { enumerable: true, get: function() { + return publishLast_1.publishLast; + } }); + var publishReplay_1 = require_publishReplay(); + Object.defineProperty(exports2, "publishReplay", { enumerable: true, get: function() { + return publishReplay_1.publishReplay; + } }); + var raceWith_1 = require_raceWith(); + Object.defineProperty(exports2, "raceWith", { enumerable: true, get: function() { + return raceWith_1.raceWith; + } }); + var reduce_1 = require_reduce(); + Object.defineProperty(exports2, "reduce", { enumerable: true, get: function() { + return reduce_1.reduce; + } }); + var repeat_1 = require_repeat(); + Object.defineProperty(exports2, "repeat", { enumerable: true, get: function() { + return repeat_1.repeat; + } }); + var repeatWhen_1 = require_repeatWhen(); + Object.defineProperty(exports2, "repeatWhen", { enumerable: true, get: function() { + return repeatWhen_1.repeatWhen; + } }); + var retry_1 = require_retry(); + Object.defineProperty(exports2, "retry", { enumerable: true, get: function() { + return retry_1.retry; + } }); + var retryWhen_1 = require_retryWhen(); + Object.defineProperty(exports2, "retryWhen", { enumerable: true, get: function() { + return retryWhen_1.retryWhen; + } }); + var refCount_1 = require_refCount(); + Object.defineProperty(exports2, "refCount", { enumerable: true, get: function() { + return refCount_1.refCount; + } }); + var sample_1 = require_sample(); + Object.defineProperty(exports2, "sample", { enumerable: true, get: function() { + return sample_1.sample; + } }); + var sampleTime_1 = require_sampleTime(); + Object.defineProperty(exports2, "sampleTime", { enumerable: true, get: function() { + return sampleTime_1.sampleTime; + } }); + var scan_1 = require_scan(); + Object.defineProperty(exports2, "scan", { enumerable: true, get: function() { + return scan_1.scan; + } }); + var sequenceEqual_1 = require_sequenceEqual(); + Object.defineProperty(exports2, "sequenceEqual", { enumerable: true, get: function() { + return sequenceEqual_1.sequenceEqual; + } }); + var share_1 = require_share(); + Object.defineProperty(exports2, "share", { enumerable: true, get: function() { + return share_1.share; + } }); + var shareReplay_1 = require_shareReplay(); + Object.defineProperty(exports2, "shareReplay", { enumerable: true, get: function() { + return shareReplay_1.shareReplay; + } }); + var single_1 = require_single(); + Object.defineProperty(exports2, "single", { enumerable: true, get: function() { + return single_1.single; + } }); + var skip_1 = require_skip(); + Object.defineProperty(exports2, "skip", { enumerable: true, get: function() { + return skip_1.skip; + } }); + var skipLast_1 = require_skipLast(); + Object.defineProperty(exports2, "skipLast", { enumerable: true, get: function() { + return skipLast_1.skipLast; + } }); + var skipUntil_1 = require_skipUntil(); + Object.defineProperty(exports2, "skipUntil", { enumerable: true, get: function() { + return skipUntil_1.skipUntil; + } }); + var skipWhile_1 = require_skipWhile(); + Object.defineProperty(exports2, "skipWhile", { enumerable: true, get: function() { + return skipWhile_1.skipWhile; + } }); + var startWith_1 = require_startWith(); + Object.defineProperty(exports2, "startWith", { enumerable: true, get: function() { + return startWith_1.startWith; + } }); + var subscribeOn_1 = require_subscribeOn(); + Object.defineProperty(exports2, "subscribeOn", { enumerable: true, get: function() { + return subscribeOn_1.subscribeOn; + } }); + var switchAll_1 = require_switchAll(); + Object.defineProperty(exports2, "switchAll", { enumerable: true, get: function() { + return switchAll_1.switchAll; + } }); + var switchMap_1 = require_switchMap(); + Object.defineProperty(exports2, "switchMap", { enumerable: true, get: function() { + return switchMap_1.switchMap; + } }); + var switchMapTo_1 = require_switchMapTo(); + Object.defineProperty(exports2, "switchMapTo", { enumerable: true, get: function() { + return switchMapTo_1.switchMapTo; + } }); + var switchScan_1 = require_switchScan(); + Object.defineProperty(exports2, "switchScan", { enumerable: true, get: function() { + return switchScan_1.switchScan; + } }); + var take_1 = require_take(); + Object.defineProperty(exports2, "take", { enumerable: true, get: function() { + return take_1.take; + } }); + var takeLast_1 = require_takeLast(); + Object.defineProperty(exports2, "takeLast", { enumerable: true, get: function() { + return takeLast_1.takeLast; + } }); + var takeUntil_1 = require_takeUntil(); + Object.defineProperty(exports2, "takeUntil", { enumerable: true, get: function() { + return takeUntil_1.takeUntil; + } }); + var takeWhile_1 = require_takeWhile(); + Object.defineProperty(exports2, "takeWhile", { enumerable: true, get: function() { + return takeWhile_1.takeWhile; + } }); + var tap_1 = require_tap(); + Object.defineProperty(exports2, "tap", { enumerable: true, get: function() { + return tap_1.tap; + } }); + var throttle_1 = require_throttle(); + Object.defineProperty(exports2, "throttle", { enumerable: true, get: function() { + return throttle_1.throttle; + } }); + var throttleTime_1 = require_throttleTime(); + Object.defineProperty(exports2, "throttleTime", { enumerable: true, get: function() { + return throttleTime_1.throttleTime; + } }); + var throwIfEmpty_1 = require_throwIfEmpty(); + Object.defineProperty(exports2, "throwIfEmpty", { enumerable: true, get: function() { + return throwIfEmpty_1.throwIfEmpty; + } }); + var timeInterval_1 = require_timeInterval(); + Object.defineProperty(exports2, "timeInterval", { enumerable: true, get: function() { + return timeInterval_1.timeInterval; + } }); + var timeout_2 = require_timeout(); + Object.defineProperty(exports2, "timeout", { enumerable: true, get: function() { + return timeout_2.timeout; + } }); + var timeoutWith_1 = require_timeoutWith(); + Object.defineProperty(exports2, "timeoutWith", { enumerable: true, get: function() { + return timeoutWith_1.timeoutWith; + } }); + var timestamp_1 = require_timestamp(); + Object.defineProperty(exports2, "timestamp", { enumerable: true, get: function() { + return timestamp_1.timestamp; + } }); + var toArray_1 = require_toArray(); + Object.defineProperty(exports2, "toArray", { enumerable: true, get: function() { + return toArray_1.toArray; + } }); + var window_1 = require_window(); + Object.defineProperty(exports2, "window", { enumerable: true, get: function() { + return window_1.window; + } }); + var windowCount_1 = require_windowCount(); + Object.defineProperty(exports2, "windowCount", { enumerable: true, get: function() { + return windowCount_1.windowCount; + } }); + var windowTime_1 = require_windowTime(); + Object.defineProperty(exports2, "windowTime", { enumerable: true, get: function() { + return windowTime_1.windowTime; + } }); + var windowToggle_1 = require_windowToggle(); + Object.defineProperty(exports2, "windowToggle", { enumerable: true, get: function() { + return windowToggle_1.windowToggle; + } }); + var windowWhen_1 = require_windowWhen(); + Object.defineProperty(exports2, "windowWhen", { enumerable: true, get: function() { + return windowWhen_1.windowWhen; + } }); + var withLatestFrom_1 = require_withLatestFrom(); + Object.defineProperty(exports2, "withLatestFrom", { enumerable: true, get: function() { + return withLatestFrom_1.withLatestFrom; + } }); + var zipAll_1 = require_zipAll(); + Object.defineProperty(exports2, "zipAll", { enumerable: true, get: function() { + return zipAll_1.zipAll; + } }); + var zipWith_1 = require_zipWith(); + Object.defineProperty(exports2, "zipWith", { enumerable: true, get: function() { + return zipWith_1.zipWith; + } }); + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/partition.js +var require_partition2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/partition.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.partition = void 0; + var not_1 = require_not(); + var filter_1 = require_filter(); + function partition(predicate, thisArg) { + return function(source2) { + return [filter_1.filter(predicate, thisArg)(source2), filter_1.filter(not_1.not(predicate, thisArg))(source2)]; + }; + } + exports2.partition = partition; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/race.js +var require_race2 = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/internal/operators/race.js"(exports2) { + "use strict"; + var __read = exports2 && exports2.__read || function(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { error }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; + }; + var __spreadArray = exports2 && exports2.__spreadArray || function(to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.race = void 0; + var argsOrArgArray_1 = require_argsOrArgArray(); + var raceWith_1 = require_raceWith(); + function race() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + return raceWith_1.raceWith.apply(void 0, __spreadArray([], __read(argsOrArgArray_1.argsOrArgArray(args3)))); + } + exports2.race = race; + } +}); + +// ../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/operators/index.js +var require_operators = __commonJS({ + "../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/cjs/operators/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mergeAll = exports2.merge = exports2.max = exports2.materialize = exports2.mapTo = exports2.map = exports2.last = exports2.isEmpty = exports2.ignoreElements = exports2.groupBy = exports2.first = exports2.findIndex = exports2.find = exports2.finalize = exports2.filter = exports2.expand = exports2.exhaustMap = exports2.exhaustAll = exports2.exhaust = exports2.every = exports2.endWith = exports2.elementAt = exports2.distinctUntilKeyChanged = exports2.distinctUntilChanged = exports2.distinct = exports2.dematerialize = exports2.delayWhen = exports2.delay = exports2.defaultIfEmpty = exports2.debounceTime = exports2.debounce = exports2.count = exports2.connect = exports2.concatWith = exports2.concatMapTo = exports2.concatMap = exports2.concatAll = exports2.concat = exports2.combineLatestWith = exports2.combineLatest = exports2.combineLatestAll = exports2.combineAll = exports2.catchError = exports2.bufferWhen = exports2.bufferToggle = exports2.bufferTime = exports2.bufferCount = exports2.buffer = exports2.auditTime = exports2.audit = void 0; + exports2.timeInterval = exports2.throwIfEmpty = exports2.throttleTime = exports2.throttle = exports2.tap = exports2.takeWhile = exports2.takeUntil = exports2.takeLast = exports2.take = exports2.switchScan = exports2.switchMapTo = exports2.switchMap = exports2.switchAll = exports2.subscribeOn = exports2.startWith = exports2.skipWhile = exports2.skipUntil = exports2.skipLast = exports2.skip = exports2.single = exports2.shareReplay = exports2.share = exports2.sequenceEqual = exports2.scan = exports2.sampleTime = exports2.sample = exports2.refCount = exports2.retryWhen = exports2.retry = exports2.repeatWhen = exports2.repeat = exports2.reduce = exports2.raceWith = exports2.race = exports2.publishReplay = exports2.publishLast = exports2.publishBehavior = exports2.publish = exports2.pluck = exports2.partition = exports2.pairwise = exports2.onErrorResumeNext = exports2.observeOn = exports2.multicast = exports2.min = exports2.mergeWith = exports2.mergeScan = exports2.mergeMapTo = exports2.mergeMap = exports2.flatMap = void 0; + exports2.zipWith = exports2.zipAll = exports2.zip = exports2.withLatestFrom = exports2.windowWhen = exports2.windowToggle = exports2.windowTime = exports2.windowCount = exports2.window = exports2.toArray = exports2.timestamp = exports2.timeoutWith = exports2.timeout = void 0; + var audit_1 = require_audit(); + Object.defineProperty(exports2, "audit", { enumerable: true, get: function() { + return audit_1.audit; + } }); + var auditTime_1 = require_auditTime(); + Object.defineProperty(exports2, "auditTime", { enumerable: true, get: function() { + return auditTime_1.auditTime; + } }); + var buffer_1 = require_buffer(); + Object.defineProperty(exports2, "buffer", { enumerable: true, get: function() { + return buffer_1.buffer; + } }); + var bufferCount_1 = require_bufferCount(); + Object.defineProperty(exports2, "bufferCount", { enumerable: true, get: function() { + return bufferCount_1.bufferCount; + } }); + var bufferTime_1 = require_bufferTime(); + Object.defineProperty(exports2, "bufferTime", { enumerable: true, get: function() { + return bufferTime_1.bufferTime; + } }); + var bufferToggle_1 = require_bufferToggle(); + Object.defineProperty(exports2, "bufferToggle", { enumerable: true, get: function() { + return bufferToggle_1.bufferToggle; + } }); + var bufferWhen_1 = require_bufferWhen(); + Object.defineProperty(exports2, "bufferWhen", { enumerable: true, get: function() { + return bufferWhen_1.bufferWhen; + } }); + var catchError_1 = require_catchError(); + Object.defineProperty(exports2, "catchError", { enumerable: true, get: function() { + return catchError_1.catchError; + } }); + var combineAll_1 = require_combineAll(); + Object.defineProperty(exports2, "combineAll", { enumerable: true, get: function() { + return combineAll_1.combineAll; + } }); + var combineLatestAll_1 = require_combineLatestAll(); + Object.defineProperty(exports2, "combineLatestAll", { enumerable: true, get: function() { + return combineLatestAll_1.combineLatestAll; + } }); + var combineLatest_1 = require_combineLatest2(); + Object.defineProperty(exports2, "combineLatest", { enumerable: true, get: function() { + return combineLatest_1.combineLatest; + } }); + var combineLatestWith_1 = require_combineLatestWith(); + Object.defineProperty(exports2, "combineLatestWith", { enumerable: true, get: function() { + return combineLatestWith_1.combineLatestWith; + } }); + var concat_1 = require_concat2(); + Object.defineProperty(exports2, "concat", { enumerable: true, get: function() { + return concat_1.concat; + } }); + var concatAll_1 = require_concatAll(); + Object.defineProperty(exports2, "concatAll", { enumerable: true, get: function() { + return concatAll_1.concatAll; + } }); + var concatMap_1 = require_concatMap(); + Object.defineProperty(exports2, "concatMap", { enumerable: true, get: function() { + return concatMap_1.concatMap; + } }); + var concatMapTo_1 = require_concatMapTo(); + Object.defineProperty(exports2, "concatMapTo", { enumerable: true, get: function() { + return concatMapTo_1.concatMapTo; + } }); + var concatWith_1 = require_concatWith(); + Object.defineProperty(exports2, "concatWith", { enumerable: true, get: function() { + return concatWith_1.concatWith; + } }); + var connect_1 = require_connect(); + Object.defineProperty(exports2, "connect", { enumerable: true, get: function() { + return connect_1.connect; + } }); + var count_1 = require_count(); + Object.defineProperty(exports2, "count", { enumerable: true, get: function() { + return count_1.count; + } }); + var debounce_1 = require_debounce(); + Object.defineProperty(exports2, "debounce", { enumerable: true, get: function() { + return debounce_1.debounce; + } }); + var debounceTime_1 = require_debounceTime(); + Object.defineProperty(exports2, "debounceTime", { enumerable: true, get: function() { + return debounceTime_1.debounceTime; + } }); + var defaultIfEmpty_1 = require_defaultIfEmpty(); + Object.defineProperty(exports2, "defaultIfEmpty", { enumerable: true, get: function() { + return defaultIfEmpty_1.defaultIfEmpty; + } }); + var delay_1 = require_delay(); + Object.defineProperty(exports2, "delay", { enumerable: true, get: function() { + return delay_1.delay; + } }); + var delayWhen_1 = require_delayWhen(); + Object.defineProperty(exports2, "delayWhen", { enumerable: true, get: function() { + return delayWhen_1.delayWhen; + } }); + var dematerialize_1 = require_dematerialize(); + Object.defineProperty(exports2, "dematerialize", { enumerable: true, get: function() { + return dematerialize_1.dematerialize; + } }); + var distinct_1 = require_distinct(); + Object.defineProperty(exports2, "distinct", { enumerable: true, get: function() { + return distinct_1.distinct; + } }); + var distinctUntilChanged_1 = require_distinctUntilChanged(); + Object.defineProperty(exports2, "distinctUntilChanged", { enumerable: true, get: function() { + return distinctUntilChanged_1.distinctUntilChanged; + } }); + var distinctUntilKeyChanged_1 = require_distinctUntilKeyChanged(); + Object.defineProperty(exports2, "distinctUntilKeyChanged", { enumerable: true, get: function() { + return distinctUntilKeyChanged_1.distinctUntilKeyChanged; + } }); + var elementAt_1 = require_elementAt(); + Object.defineProperty(exports2, "elementAt", { enumerable: true, get: function() { + return elementAt_1.elementAt; + } }); + var endWith_1 = require_endWith(); + Object.defineProperty(exports2, "endWith", { enumerable: true, get: function() { + return endWith_1.endWith; + } }); + var every_1 = require_every(); + Object.defineProperty(exports2, "every", { enumerable: true, get: function() { + return every_1.every; + } }); + var exhaust_1 = require_exhaust(); + Object.defineProperty(exports2, "exhaust", { enumerable: true, get: function() { + return exhaust_1.exhaust; + } }); + var exhaustAll_1 = require_exhaustAll(); + Object.defineProperty(exports2, "exhaustAll", { enumerable: true, get: function() { + return exhaustAll_1.exhaustAll; + } }); + var exhaustMap_1 = require_exhaustMap(); + Object.defineProperty(exports2, "exhaustMap", { enumerable: true, get: function() { + return exhaustMap_1.exhaustMap; + } }); + var expand_1 = require_expand(); + Object.defineProperty(exports2, "expand", { enumerable: true, get: function() { + return expand_1.expand; + } }); + var filter_1 = require_filter(); + Object.defineProperty(exports2, "filter", { enumerable: true, get: function() { + return filter_1.filter; + } }); + var finalize_1 = require_finalize(); + Object.defineProperty(exports2, "finalize", { enumerable: true, get: function() { + return finalize_1.finalize; + } }); + var find_1 = require_find(); + Object.defineProperty(exports2, "find", { enumerable: true, get: function() { + return find_1.find; + } }); + var findIndex_1 = require_findIndex(); + Object.defineProperty(exports2, "findIndex", { enumerable: true, get: function() { + return findIndex_1.findIndex; + } }); + var first_1 = require_first(); + Object.defineProperty(exports2, "first", { enumerable: true, get: function() { + return first_1.first; + } }); + var groupBy_1 = require_groupBy(); + Object.defineProperty(exports2, "groupBy", { enumerable: true, get: function() { + return groupBy_1.groupBy; + } }); + var ignoreElements_1 = require_ignoreElements(); + Object.defineProperty(exports2, "ignoreElements", { enumerable: true, get: function() { + return ignoreElements_1.ignoreElements; + } }); + var isEmpty_1 = require_isEmpty(); + Object.defineProperty(exports2, "isEmpty", { enumerable: true, get: function() { + return isEmpty_1.isEmpty; + } }); + var last_1 = require_last(); + Object.defineProperty(exports2, "last", { enumerable: true, get: function() { + return last_1.last; + } }); + var map_1 = require_map(); + Object.defineProperty(exports2, "map", { enumerable: true, get: function() { + return map_1.map; + } }); + var mapTo_1 = require_mapTo(); + Object.defineProperty(exports2, "mapTo", { enumerable: true, get: function() { + return mapTo_1.mapTo; + } }); + var materialize_1 = require_materialize(); + Object.defineProperty(exports2, "materialize", { enumerable: true, get: function() { + return materialize_1.materialize; + } }); + var max_1 = require_max(); + Object.defineProperty(exports2, "max", { enumerable: true, get: function() { + return max_1.max; + } }); + var merge_1 = require_merge2(); + Object.defineProperty(exports2, "merge", { enumerable: true, get: function() { + return merge_1.merge; + } }); + var mergeAll_1 = require_mergeAll(); + Object.defineProperty(exports2, "mergeAll", { enumerable: true, get: function() { + return mergeAll_1.mergeAll; + } }); + var flatMap_1 = require_flatMap(); + Object.defineProperty(exports2, "flatMap", { enumerable: true, get: function() { + return flatMap_1.flatMap; + } }); + var mergeMap_1 = require_mergeMap(); + Object.defineProperty(exports2, "mergeMap", { enumerable: true, get: function() { + return mergeMap_1.mergeMap; + } }); + var mergeMapTo_1 = require_mergeMapTo(); + Object.defineProperty(exports2, "mergeMapTo", { enumerable: true, get: function() { + return mergeMapTo_1.mergeMapTo; + } }); + var mergeScan_1 = require_mergeScan(); + Object.defineProperty(exports2, "mergeScan", { enumerable: true, get: function() { + return mergeScan_1.mergeScan; + } }); + var mergeWith_1 = require_mergeWith(); + Object.defineProperty(exports2, "mergeWith", { enumerable: true, get: function() { + return mergeWith_1.mergeWith; + } }); + var min_1 = require_min(); + Object.defineProperty(exports2, "min", { enumerable: true, get: function() { + return min_1.min; + } }); + var multicast_1 = require_multicast(); + Object.defineProperty(exports2, "multicast", { enumerable: true, get: function() { + return multicast_1.multicast; + } }); + var observeOn_1 = require_observeOn(); + Object.defineProperty(exports2, "observeOn", { enumerable: true, get: function() { + return observeOn_1.observeOn; + } }); + var onErrorResumeNextWith_1 = require_onErrorResumeNextWith(); + Object.defineProperty(exports2, "onErrorResumeNext", { enumerable: true, get: function() { + return onErrorResumeNextWith_1.onErrorResumeNext; + } }); + var pairwise_1 = require_pairwise(); + Object.defineProperty(exports2, "pairwise", { enumerable: true, get: function() { + return pairwise_1.pairwise; + } }); + var partition_1 = require_partition2(); + Object.defineProperty(exports2, "partition", { enumerable: true, get: function() { + return partition_1.partition; + } }); + var pluck_1 = require_pluck(); + Object.defineProperty(exports2, "pluck", { enumerable: true, get: function() { + return pluck_1.pluck; + } }); + var publish_1 = require_publish(); + Object.defineProperty(exports2, "publish", { enumerable: true, get: function() { + return publish_1.publish; + } }); + var publishBehavior_1 = require_publishBehavior(); + Object.defineProperty(exports2, "publishBehavior", { enumerable: true, get: function() { + return publishBehavior_1.publishBehavior; + } }); + var publishLast_1 = require_publishLast(); + Object.defineProperty(exports2, "publishLast", { enumerable: true, get: function() { + return publishLast_1.publishLast; + } }); + var publishReplay_1 = require_publishReplay(); + Object.defineProperty(exports2, "publishReplay", { enumerable: true, get: function() { + return publishReplay_1.publishReplay; + } }); + var race_1 = require_race2(); + Object.defineProperty(exports2, "race", { enumerable: true, get: function() { + return race_1.race; + } }); + var raceWith_1 = require_raceWith(); + Object.defineProperty(exports2, "raceWith", { enumerable: true, get: function() { + return raceWith_1.raceWith; + } }); + var reduce_1 = require_reduce(); + Object.defineProperty(exports2, "reduce", { enumerable: true, get: function() { + return reduce_1.reduce; + } }); + var repeat_1 = require_repeat(); + Object.defineProperty(exports2, "repeat", { enumerable: true, get: function() { + return repeat_1.repeat; + } }); + var repeatWhen_1 = require_repeatWhen(); + Object.defineProperty(exports2, "repeatWhen", { enumerable: true, get: function() { + return repeatWhen_1.repeatWhen; + } }); + var retry_1 = require_retry(); + Object.defineProperty(exports2, "retry", { enumerable: true, get: function() { + return retry_1.retry; + } }); + var retryWhen_1 = require_retryWhen(); + Object.defineProperty(exports2, "retryWhen", { enumerable: true, get: function() { + return retryWhen_1.retryWhen; + } }); + var refCount_1 = require_refCount(); + Object.defineProperty(exports2, "refCount", { enumerable: true, get: function() { + return refCount_1.refCount; + } }); + var sample_1 = require_sample(); + Object.defineProperty(exports2, "sample", { enumerable: true, get: function() { + return sample_1.sample; + } }); + var sampleTime_1 = require_sampleTime(); + Object.defineProperty(exports2, "sampleTime", { enumerable: true, get: function() { + return sampleTime_1.sampleTime; + } }); + var scan_1 = require_scan(); + Object.defineProperty(exports2, "scan", { enumerable: true, get: function() { + return scan_1.scan; + } }); + var sequenceEqual_1 = require_sequenceEqual(); + Object.defineProperty(exports2, "sequenceEqual", { enumerable: true, get: function() { + return sequenceEqual_1.sequenceEqual; + } }); + var share_1 = require_share(); + Object.defineProperty(exports2, "share", { enumerable: true, get: function() { + return share_1.share; + } }); + var shareReplay_1 = require_shareReplay(); + Object.defineProperty(exports2, "shareReplay", { enumerable: true, get: function() { + return shareReplay_1.shareReplay; + } }); + var single_1 = require_single(); + Object.defineProperty(exports2, "single", { enumerable: true, get: function() { + return single_1.single; + } }); + var skip_1 = require_skip(); + Object.defineProperty(exports2, "skip", { enumerable: true, get: function() { + return skip_1.skip; + } }); + var skipLast_1 = require_skipLast(); + Object.defineProperty(exports2, "skipLast", { enumerable: true, get: function() { + return skipLast_1.skipLast; + } }); + var skipUntil_1 = require_skipUntil(); + Object.defineProperty(exports2, "skipUntil", { enumerable: true, get: function() { + return skipUntil_1.skipUntil; + } }); + var skipWhile_1 = require_skipWhile(); + Object.defineProperty(exports2, "skipWhile", { enumerable: true, get: function() { + return skipWhile_1.skipWhile; + } }); + var startWith_1 = require_startWith(); + Object.defineProperty(exports2, "startWith", { enumerable: true, get: function() { + return startWith_1.startWith; + } }); + var subscribeOn_1 = require_subscribeOn(); + Object.defineProperty(exports2, "subscribeOn", { enumerable: true, get: function() { + return subscribeOn_1.subscribeOn; + } }); + var switchAll_1 = require_switchAll(); + Object.defineProperty(exports2, "switchAll", { enumerable: true, get: function() { + return switchAll_1.switchAll; + } }); + var switchMap_1 = require_switchMap(); + Object.defineProperty(exports2, "switchMap", { enumerable: true, get: function() { + return switchMap_1.switchMap; + } }); + var switchMapTo_1 = require_switchMapTo(); + Object.defineProperty(exports2, "switchMapTo", { enumerable: true, get: function() { + return switchMapTo_1.switchMapTo; + } }); + var switchScan_1 = require_switchScan(); + Object.defineProperty(exports2, "switchScan", { enumerable: true, get: function() { + return switchScan_1.switchScan; + } }); + var take_1 = require_take(); + Object.defineProperty(exports2, "take", { enumerable: true, get: function() { + return take_1.take; + } }); + var takeLast_1 = require_takeLast(); + Object.defineProperty(exports2, "takeLast", { enumerable: true, get: function() { + return takeLast_1.takeLast; + } }); + var takeUntil_1 = require_takeUntil(); + Object.defineProperty(exports2, "takeUntil", { enumerable: true, get: function() { + return takeUntil_1.takeUntil; + } }); + var takeWhile_1 = require_takeWhile(); + Object.defineProperty(exports2, "takeWhile", { enumerable: true, get: function() { + return takeWhile_1.takeWhile; + } }); + var tap_1 = require_tap(); + Object.defineProperty(exports2, "tap", { enumerable: true, get: function() { + return tap_1.tap; + } }); + var throttle_1 = require_throttle(); + Object.defineProperty(exports2, "throttle", { enumerable: true, get: function() { + return throttle_1.throttle; + } }); + var throttleTime_1 = require_throttleTime(); + Object.defineProperty(exports2, "throttleTime", { enumerable: true, get: function() { + return throttleTime_1.throttleTime; + } }); + var throwIfEmpty_1 = require_throwIfEmpty(); + Object.defineProperty(exports2, "throwIfEmpty", { enumerable: true, get: function() { + return throwIfEmpty_1.throwIfEmpty; + } }); + var timeInterval_1 = require_timeInterval(); + Object.defineProperty(exports2, "timeInterval", { enumerable: true, get: function() { + return timeInterval_1.timeInterval; + } }); + var timeout_1 = require_timeout(); + Object.defineProperty(exports2, "timeout", { enumerable: true, get: function() { + return timeout_1.timeout; + } }); + var timeoutWith_1 = require_timeoutWith(); + Object.defineProperty(exports2, "timeoutWith", { enumerable: true, get: function() { + return timeoutWith_1.timeoutWith; + } }); + var timestamp_1 = require_timestamp(); + Object.defineProperty(exports2, "timestamp", { enumerable: true, get: function() { + return timestamp_1.timestamp; + } }); + var toArray_1 = require_toArray(); + Object.defineProperty(exports2, "toArray", { enumerable: true, get: function() { + return toArray_1.toArray; + } }); + var window_1 = require_window(); + Object.defineProperty(exports2, "window", { enumerable: true, get: function() { + return window_1.window; + } }); + var windowCount_1 = require_windowCount(); + Object.defineProperty(exports2, "windowCount", { enumerable: true, get: function() { + return windowCount_1.windowCount; + } }); + var windowTime_1 = require_windowTime(); + Object.defineProperty(exports2, "windowTime", { enumerable: true, get: function() { + return windowTime_1.windowTime; + } }); + var windowToggle_1 = require_windowToggle(); + Object.defineProperty(exports2, "windowToggle", { enumerable: true, get: function() { + return windowToggle_1.windowToggle; + } }); + var windowWhen_1 = require_windowWhen(); + Object.defineProperty(exports2, "windowWhen", { enumerable: true, get: function() { + return windowWhen_1.windowWhen; + } }); + var withLatestFrom_1 = require_withLatestFrom(); + Object.defineProperty(exports2, "withLatestFrom", { enumerable: true, get: function() { + return withLatestFrom_1.withLatestFrom; + } }); + var zip_1 = require_zip2(); + Object.defineProperty(exports2, "zip", { enumerable: true, get: function() { + return zip_1.zip; + } }); + var zipAll_1 = require_zipAll(); + Object.defineProperty(exports2, "zipAll", { enumerable: true, get: function() { + return zipAll_1.zipAll; + } }); + var zipWith_1 = require_zipWith(); + Object.defineProperty(exports2, "zipWith", { enumerable: true, get: function() { + return zipWith_1.zipWith; + } }); + } +}); + +// ../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/exporters/console.js +var require_console = __commonJS({ + "../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/exporters/console.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ConsoleTelemetryExporter = void 0; + var ConsoleTelemetryExporter = class { + exportEvents(events) { + events.forEach((e) => { + console.log("export event", { e }); + }); + return Promise.resolve(); + } + }; + exports2.ConsoleTelemetryExporter = ConsoleTelemetryExporter; + } +}); + +// ../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/exporters/testing.js +var require_testing = __commonJS({ + "../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/exporters/testing.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TestTelemetryExporter = void 0; + var TestTelemetryExporter = class { + constructor() { + this.events = []; + } + exportEvents(events) { + this.events.push(...events); + return Promise.resolve(); + } + /** + * Retrieve all events that have been "exported" so far. + */ + getExported() { + return this.events; + } + }; + exports2.TestTelemetryExporter = TestTelemetryExporter; + } +}); + +// ../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/exporters/index.js +var require_exporters = __commonJS({ + "../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/exporters/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NoOpTelemetryExporter = void 0; + __exportStar(require_console(), exports2); + __exportStar(require_testing(), exports2); + var NoOpTelemetryExporter2 = class { + exportEvents(_events) { + return Promise.resolve(); + } + }; + exports2.NoOpTelemetryExporter = NoOpTelemetryExporter2; + } +}); + +// ../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/processors/billing.js +var require_billing = __commonJS({ + "../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/processors/billing.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BillingMetadataTelemetryProcessor = void 0; + var BillingMetadataTelemetryProcessor = class { + constructor(billingMetadata) { + this.billingMetadata = billingMetadata; + } + processEvent(event) { + if (!event.parameters.billingMetadata) { + event.parameters.billingMetadata = this.billingMetadata; + } + } + }; + exports2.BillingMetadataTelemetryProcessor = BillingMetadataTelemetryProcessor; + } +}); + +// ../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/processors/callback.js +var require_callback = __commonJS({ + "../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/processors/callback.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CallbackTelemetryProcessor = void 0; + var CallbackTelemetryProcessor2 = class { + constructor(callback) { + this.callback = callback; + } + processEvent(event) { + this.callback(Object.assign({}, event)); + } + }; + exports2.CallbackTelemetryProcessor = CallbackTelemetryProcessor2; + } +}); + +// ../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/processors/marketingTracking.js +var require_marketingTracking = __commonJS({ + "../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/processors/marketingTracking.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MarketingTrackingTelemetryProcessor = void 0; + var MarketingTrackingTelemetryProcessor2 = class { + constructor(provider) { + this.provider = provider; + } + processEvent(event) { + event.marketingTracking = this.provider.getMarketingTrackingMetadata() || void 0; + } + }; + exports2.MarketingTrackingTelemetryProcessor = MarketingTrackingTelemetryProcessor2; + } +}); + +// ../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/processors/index.js +var require_processors = __commonJS({ + "../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/processors/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_billing(), exports2); + __exportStar(require_callback(), exports2); + __exportStar(require_marketingTracking(), exports2); + } +}); + +// ../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/api/index.js +var require_api = __commonJS({ + "../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/api/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/index.js +var require_dist = __commonJS({ + "../node_modules/.pnpm/@sourcegraph+telemetry@0.13.0/node_modules/@sourcegraph/telemetry/dist/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TelemetryRecorderProvider = exports2.defaultEventRecordingOptions = void 0; + var rxjs_1 = require_cjs2(); + var operators_1 = require_operators(); + __exportStar(require_exporters(), exports2); + __exportStar(require_processors(), exports2); + __exportStar(require_api(), exports2); + exports2.defaultEventRecordingOptions = { + bufferTimeMs: 0, + bufferMaxSize: 10, + errorHandler: (error) => { + console.error("@sourcegraph/telemetry:", error); + } + }; + var TelemetryRecorderProvider3 = class { + constructor(source2, exporter, processors = [], options2 = exports2.defaultEventRecordingOptions) { + this.source = source2; + this.processors = processors; + this.submitter = options2.bufferTimeMs == 0 || options2.bufferMaxSize == 0 ? new SimpleSubmitter(exporter, options2) : new BatchSubmitter(exporter, options2); + } + /** + * Create a EventRecorder with the configured default processors and exporter. + * + * Additional processors can be passed to extend the defaults. + */ + getRecorder(additionalProcessors) { + return new EventRecorder(this.source, this.submitter, additionalProcessors ? this.processors.concat(additionalProcessors) : this.processors); + } + /** + * Clears any ongoing work and releases buffer resources. It must be + * called when the provider is no longer needed. + * + * Implements rxjs Unsubscribable. + */ + unsubscribe() { + this.submitter.unsubscribe(); + } + }; + exports2.TelemetryRecorderProvider = TelemetryRecorderProvider3; + var SimpleSubmitter = class { + constructor(exporter, options2) { + this.exporter = exporter; + this.options = options2; + } + submit(event) { + this.exporter.exportEvents([event]).catch((err2) => this.options.errorHandler(err2)).then(() => { + }); + } + unsubscribe() { + } + }; + var BatchSubmitter = class { + constructor(exporter, options2) { + this.exporter = exporter; + this.options = options2; + this.events = new rxjs_1.Subject(); + this.completeEvents = new rxjs_1.Subject(); + this.events.pipe((0, operators_1.takeUntil)(this.completeEvents), (0, operators_1.bufferTime)(options2.bufferTimeMs, null, options2.bufferMaxSize), (0, operators_1.concatMap)((events) => events.length > 0 ? exporter.exportEvents(events) : rxjs_1.EMPTY), (0, operators_1.catchError)((error) => { + options2.errorHandler(error); + return []; + })).subscribe(); + } + submit(event) { + if (!this.events.closed) { + this.events.next(event); + } else { + this.exporter.exportEvents([event]).catch((err2) => this.options.errorHandler(err2)).then(() => this.options.errorHandler("submitted event after complete")); + } + } + unsubscribe() { + this.completeEvents.next(); + this.events.complete(); + this.events.unsubscribe(); + } + }; + var EventRecorder = class { + constructor(source2, submitter, processors = []) { + this.source = source2; + this.submitter = submitter; + this.processors = processors; + } + /** + * Record an event. + */ + recordEvent(feature, action, parameters) { + let apiEvent = { + feature, + action, + source: this.source, + parameters: parameters ? { + version: parameters.version || 0, + metadata: parameters.metadata ? Object.entries(parameters.metadata).map(([key, value]) => ({ + key, + value: value || 0 + })) : void 0, + privateMetadata: parameters.privateMetadata, + billingMetadata: parameters.billingMetadata + } : { + version: 0 + } + }; + for (const processor of this.processors) { + processor.processEvent(apiEvent); + } + this.submitter.submit(apiEvent); + } + }; + } +}); + +// ../node_modules/.pnpm/delayed-stream@1.0.0/node_modules/delayed-stream/lib/delayed_stream.js +var require_delayed_stream = __commonJS({ + "../node_modules/.pnpm/delayed-stream@1.0.0/node_modules/delayed-stream/lib/delayed_stream.js"(exports2, module2) { + var Stream2 = require("stream").Stream; + var util2 = require("util"); + module2.exports = DelayedStream; + function DelayedStream() { + this.source = null; + this.dataSize = 0; + this.maxDataSize = 1024 * 1024; + this.pauseStream = true; + this._maxDataSizeExceeded = false; + this._released = false; + this._bufferedEvents = []; + } + util2.inherits(DelayedStream, Stream2); + DelayedStream.create = function(source2, options2) { + var delayedStream = new this(); + options2 = options2 || {}; + for (var option in options2) { + delayedStream[option] = options2[option]; + } + delayedStream.source = source2; + var realEmit = source2.emit; + source2.emit = function() { + delayedStream._handleEmit(arguments); + return realEmit.apply(source2, arguments); + }; + source2.on("error", function() { + }); + if (delayedStream.pauseStream) { + source2.pause(); + } + return delayedStream; + }; + Object.defineProperty(DelayedStream.prototype, "readable", { + configurable: true, + enumerable: true, + get: function() { + return this.source.readable; + } + }); + DelayedStream.prototype.setEncoding = function() { + return this.source.setEncoding.apply(this.source, arguments); + }; + DelayedStream.prototype.resume = function() { + if (!this._released) { + this.release(); + } + this.source.resume(); + }; + DelayedStream.prototype.pause = function() { + this.source.pause(); + }; + DelayedStream.prototype.release = function() { + this._released = true; + this._bufferedEvents.forEach(function(args3) { + this.emit.apply(this, args3); + }.bind(this)); + this._bufferedEvents = []; + }; + DelayedStream.prototype.pipe = function() { + var r = Stream2.prototype.pipe.apply(this, arguments); + this.resume(); + return r; + }; + DelayedStream.prototype._handleEmit = function(args3) { + if (this._released) { + this.emit.apply(this, args3); + return; + } + if (args3[0] === "data") { + this.dataSize += args3[1].length; + this._checkIfMaxDataSizeExceeded(); + } + this._bufferedEvents.push(args3); + }; + DelayedStream.prototype._checkIfMaxDataSizeExceeded = function() { + if (this._maxDataSizeExceeded) { + return; + } + if (this.dataSize <= this.maxDataSize) { + return; + } + this._maxDataSizeExceeded = true; + var message = "DelayedStream#maxDataSize of " + this.maxDataSize + " bytes exceeded."; + this.emit("error", new Error(message)); + }; + } +}); + +// ../node_modules/.pnpm/combined-stream@1.0.8/node_modules/combined-stream/lib/combined_stream.js +var require_combined_stream = __commonJS({ + "../node_modules/.pnpm/combined-stream@1.0.8/node_modules/combined-stream/lib/combined_stream.js"(exports2, module2) { + var util2 = require("util"); + var Stream2 = require("stream").Stream; + var DelayedStream = require_delayed_stream(); + module2.exports = CombinedStream; + function CombinedStream() { + this.writable = false; + this.readable = true; + this.dataSize = 0; + this.maxDataSize = 2 * 1024 * 1024; + this.pauseStreams = true; + this._released = false; + this._streams = []; + this._currentStream = null; + this._insideLoop = false; + this._pendingNext = false; + } + util2.inherits(CombinedStream, Stream2); + CombinedStream.create = function(options2) { + var combinedStream = new this(); + options2 = options2 || {}; + for (var option in options2) { + combinedStream[option] = options2[option]; + } + return combinedStream; + }; + CombinedStream.isStreamLike = function(stream5) { + return typeof stream5 !== "function" && typeof stream5 !== "string" && typeof stream5 !== "boolean" && typeof stream5 !== "number" && !Buffer.isBuffer(stream5); + }; + CombinedStream.prototype.append = function(stream5) { + var isStreamLike = CombinedStream.isStreamLike(stream5); + if (isStreamLike) { + if (!(stream5 instanceof DelayedStream)) { + var newStream = DelayedStream.create(stream5, { + maxDataSize: Infinity, + pauseStream: this.pauseStreams + }); + stream5.on("data", this._checkDataSize.bind(this)); + stream5 = newStream; + } + this._handleErrors(stream5); + if (this.pauseStreams) { + stream5.pause(); + } + } + this._streams.push(stream5); + return this; + }; + CombinedStream.prototype.pipe = function(dest, options2) { + Stream2.prototype.pipe.call(this, dest, options2); + this.resume(); + return dest; + }; + CombinedStream.prototype._getNext = function() { + this._currentStream = null; + if (this._insideLoop) { + this._pendingNext = true; + return; + } + this._insideLoop = true; + try { + do { + this._pendingNext = false; + this._realGetNext(); + } while (this._pendingNext); + } finally { + this._insideLoop = false; + } + }; + CombinedStream.prototype._realGetNext = function() { + var stream5 = this._streams.shift(); + if (typeof stream5 == "undefined") { + this.end(); + return; + } + if (typeof stream5 !== "function") { + this._pipeNext(stream5); + return; + } + var getStream = stream5; + getStream(function(stream6) { + var isStreamLike = CombinedStream.isStreamLike(stream6); + if (isStreamLike) { + stream6.on("data", this._checkDataSize.bind(this)); + this._handleErrors(stream6); + } + this._pipeNext(stream6); + }.bind(this)); + }; + CombinedStream.prototype._pipeNext = function(stream5) { + this._currentStream = stream5; + var isStreamLike = CombinedStream.isStreamLike(stream5); + if (isStreamLike) { + stream5.on("end", this._getNext.bind(this)); + stream5.pipe(this, { end: false }); + return; + } + var value = stream5; + this.write(value); + this._getNext(); + }; + CombinedStream.prototype._handleErrors = function(stream5) { + var self2 = this; + stream5.on("error", function(err2) { + self2._emitError(err2); + }); + }; + CombinedStream.prototype.write = function(data) { + this.emit("data", data); + }; + CombinedStream.prototype.pause = function() { + if (!this.pauseStreams) { + return; + } + if (this.pauseStreams && this._currentStream && typeof this._currentStream.pause == "function") + this._currentStream.pause(); + this.emit("pause"); + }; + CombinedStream.prototype.resume = function() { + if (!this._released) { + this._released = true; + this.writable = true; + this._getNext(); + } + if (this.pauseStreams && this._currentStream && typeof this._currentStream.resume == "function") + this._currentStream.resume(); + this.emit("resume"); + }; + CombinedStream.prototype.end = function() { + this._reset(); + this.emit("end"); + }; + CombinedStream.prototype.destroy = function() { + this._reset(); + this.emit("close"); + }; + CombinedStream.prototype._reset = function() { + this.writable = false; + this._streams = []; + this._currentStream = null; + }; + CombinedStream.prototype._checkDataSize = function() { + this._updateDataSize(); + if (this.dataSize <= this.maxDataSize) { + return; + } + var message = "DelayedStream#maxDataSize of " + this.maxDataSize + " bytes exceeded."; + this._emitError(new Error(message)); + }; + CombinedStream.prototype._updateDataSize = function() { + this.dataSize = 0; + var self2 = this; + this._streams.forEach(function(stream5) { + if (!stream5.dataSize) { + return; + } + self2.dataSize += stream5.dataSize; + }); + if (this._currentStream && this._currentStream.dataSize) { + this.dataSize += this._currentStream.dataSize; + } + }; + CombinedStream.prototype._emitError = function(err2) { + this._reset(); + this.emit("error", err2); + }; + } +}); + +// ../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json +var require_db = __commonJS({ + "../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json"(exports2, module2) { + module2.exports = { + "application/1d-interleaved-parityfec": { + source: "iana" + }, + "application/3gpdash-qoe-report+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/3gpp-ims+xml": { + source: "iana", + compressible: true + }, + "application/3gpphal+json": { + source: "iana", + compressible: true + }, + "application/3gpphalforms+json": { + source: "iana", + compressible: true + }, + "application/a2l": { + source: "iana" + }, + "application/ace+cbor": { + source: "iana" + }, + "application/activemessage": { + source: "iana" + }, + "application/activity+json": { + source: "iana", + compressible: true + }, + "application/alto-costmap+json": { + source: "iana", + compressible: true + }, + "application/alto-costmapfilter+json": { + source: "iana", + compressible: true + }, + "application/alto-directory+json": { + source: "iana", + compressible: true + }, + "application/alto-endpointcost+json": { + source: "iana", + compressible: true + }, + "application/alto-endpointcostparams+json": { + source: "iana", + compressible: true + }, + "application/alto-endpointprop+json": { + source: "iana", + compressible: true + }, + "application/alto-endpointpropparams+json": { + source: "iana", + compressible: true + }, + "application/alto-error+json": { + source: "iana", + compressible: true + }, + "application/alto-networkmap+json": { + source: "iana", + compressible: true + }, + "application/alto-networkmapfilter+json": { + source: "iana", + compressible: true + }, + "application/alto-updatestreamcontrol+json": { + source: "iana", + compressible: true + }, + "application/alto-updatestreamparams+json": { + source: "iana", + compressible: true + }, + "application/aml": { + source: "iana" + }, + "application/andrew-inset": { + source: "iana", + extensions: ["ez"] + }, + "application/applefile": { + source: "iana" + }, + "application/applixware": { + source: "apache", + extensions: ["aw"] + }, + "application/at+jwt": { + source: "iana" + }, + "application/atf": { + source: "iana" + }, + "application/atfx": { + source: "iana" + }, + "application/atom+xml": { + source: "iana", + compressible: true, + extensions: ["atom"] + }, + "application/atomcat+xml": { + source: "iana", + compressible: true, + extensions: ["atomcat"] + }, + "application/atomdeleted+xml": { + source: "iana", + compressible: true, + extensions: ["atomdeleted"] + }, + "application/atomicmail": { + source: "iana" + }, + "application/atomsvc+xml": { + source: "iana", + compressible: true, + extensions: ["atomsvc"] + }, + "application/atsc-dwd+xml": { + source: "iana", + compressible: true, + extensions: ["dwd"] + }, + "application/atsc-dynamic-event-message": { + source: "iana" + }, + "application/atsc-held+xml": { + source: "iana", + compressible: true, + extensions: ["held"] + }, + "application/atsc-rdt+json": { + source: "iana", + compressible: true + }, + "application/atsc-rsat+xml": { + source: "iana", + compressible: true, + extensions: ["rsat"] + }, + "application/atxml": { + source: "iana" + }, + "application/auth-policy+xml": { + source: "iana", + compressible: true + }, + "application/bacnet-xdd+zip": { + source: "iana", + compressible: false + }, + "application/batch-smtp": { + source: "iana" + }, + "application/bdoc": { + compressible: false, + extensions: ["bdoc"] + }, + "application/beep+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/calendar+json": { + source: "iana", + compressible: true + }, + "application/calendar+xml": { + source: "iana", + compressible: true, + extensions: ["xcs"] + }, + "application/call-completion": { + source: "iana" + }, + "application/cals-1840": { + source: "iana" + }, + "application/captive+json": { + source: "iana", + compressible: true + }, + "application/cbor": { + source: "iana" + }, + "application/cbor-seq": { + source: "iana" + }, + "application/cccex": { + source: "iana" + }, + "application/ccmp+xml": { + source: "iana", + compressible: true + }, + "application/ccxml+xml": { + source: "iana", + compressible: true, + extensions: ["ccxml"] + }, + "application/cdfx+xml": { + source: "iana", + compressible: true, + extensions: ["cdfx"] + }, + "application/cdmi-capability": { + source: "iana", + extensions: ["cdmia"] + }, + "application/cdmi-container": { + source: "iana", + extensions: ["cdmic"] + }, + "application/cdmi-domain": { + source: "iana", + extensions: ["cdmid"] + }, + "application/cdmi-object": { + source: "iana", + extensions: ["cdmio"] + }, + "application/cdmi-queue": { + source: "iana", + extensions: ["cdmiq"] + }, + "application/cdni": { + source: "iana" + }, + "application/cea": { + source: "iana" + }, + "application/cea-2018+xml": { + source: "iana", + compressible: true + }, + "application/cellml+xml": { + source: "iana", + compressible: true + }, + "application/cfw": { + source: "iana" + }, + "application/city+json": { + source: "iana", + compressible: true + }, + "application/clr": { + source: "iana" + }, + "application/clue+xml": { + source: "iana", + compressible: true + }, + "application/clue_info+xml": { + source: "iana", + compressible: true + }, + "application/cms": { + source: "iana" + }, + "application/cnrp+xml": { + source: "iana", + compressible: true + }, + "application/coap-group+json": { + source: "iana", + compressible: true + }, + "application/coap-payload": { + source: "iana" + }, + "application/commonground": { + source: "iana" + }, + "application/conference-info+xml": { + source: "iana", + compressible: true + }, + "application/cose": { + source: "iana" + }, + "application/cose-key": { + source: "iana" + }, + "application/cose-key-set": { + source: "iana" + }, + "application/cpl+xml": { + source: "iana", + compressible: true, + extensions: ["cpl"] + }, + "application/csrattrs": { + source: "iana" + }, + "application/csta+xml": { + source: "iana", + compressible: true + }, + "application/cstadata+xml": { + source: "iana", + compressible: true + }, + "application/csvm+json": { + source: "iana", + compressible: true + }, + "application/cu-seeme": { + source: "apache", + extensions: ["cu"] + }, + "application/cwt": { + source: "iana" + }, + "application/cybercash": { + source: "iana" + }, + "application/dart": { + compressible: true + }, + "application/dash+xml": { + source: "iana", + compressible: true, + extensions: ["mpd"] + }, + "application/dash-patch+xml": { + source: "iana", + compressible: true, + extensions: ["mpp"] + }, + "application/dashdelta": { + source: "iana" + }, + "application/davmount+xml": { + source: "iana", + compressible: true, + extensions: ["davmount"] + }, + "application/dca-rft": { + source: "iana" + }, + "application/dcd": { + source: "iana" + }, + "application/dec-dx": { + source: "iana" + }, + "application/dialog-info+xml": { + source: "iana", + compressible: true + }, + "application/dicom": { + source: "iana" + }, + "application/dicom+json": { + source: "iana", + compressible: true + }, + "application/dicom+xml": { + source: "iana", + compressible: true + }, + "application/dii": { + source: "iana" + }, + "application/dit": { + source: "iana" + }, + "application/dns": { + source: "iana" + }, + "application/dns+json": { + source: "iana", + compressible: true + }, + "application/dns-message": { + source: "iana" + }, + "application/docbook+xml": { + source: "apache", + compressible: true, + extensions: ["dbk"] + }, + "application/dots+cbor": { + source: "iana" + }, + "application/dskpp+xml": { + source: "iana", + compressible: true + }, + "application/dssc+der": { + source: "iana", + extensions: ["dssc"] + }, + "application/dssc+xml": { + source: "iana", + compressible: true, + extensions: ["xdssc"] + }, + "application/dvcs": { + source: "iana" + }, + "application/ecmascript": { + source: "iana", + compressible: true, + extensions: ["es", "ecma"] + }, + "application/edi-consent": { + source: "iana" + }, + "application/edi-x12": { + source: "iana", + compressible: false + }, + "application/edifact": { + source: "iana", + compressible: false + }, + "application/efi": { + source: "iana" + }, + "application/elm+json": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/elm+xml": { + source: "iana", + compressible: true + }, + "application/emergencycalldata.cap+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/emergencycalldata.comment+xml": { + source: "iana", + compressible: true + }, + "application/emergencycalldata.control+xml": { + source: "iana", + compressible: true + }, + "application/emergencycalldata.deviceinfo+xml": { + source: "iana", + compressible: true + }, + "application/emergencycalldata.ecall.msd": { + source: "iana" + }, + "application/emergencycalldata.providerinfo+xml": { + source: "iana", + compressible: true + }, + "application/emergencycalldata.serviceinfo+xml": { + source: "iana", + compressible: true + }, + "application/emergencycalldata.subscriberinfo+xml": { + source: "iana", + compressible: true + }, + "application/emergencycalldata.veds+xml": { + source: "iana", + compressible: true + }, + "application/emma+xml": { + source: "iana", + compressible: true, + extensions: ["emma"] + }, + "application/emotionml+xml": { + source: "iana", + compressible: true, + extensions: ["emotionml"] + }, + "application/encaprtp": { + source: "iana" + }, + "application/epp+xml": { + source: "iana", + compressible: true + }, + "application/epub+zip": { + source: "iana", + compressible: false, + extensions: ["epub"] + }, + "application/eshop": { + source: "iana" + }, + "application/exi": { + source: "iana", + extensions: ["exi"] + }, + "application/expect-ct-report+json": { + source: "iana", + compressible: true + }, + "application/express": { + source: "iana", + extensions: ["exp"] + }, + "application/fastinfoset": { + source: "iana" + }, + "application/fastsoap": { + source: "iana" + }, + "application/fdt+xml": { + source: "iana", + compressible: true, + extensions: ["fdt"] + }, + "application/fhir+json": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/fhir+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/fido.trusted-apps+json": { + compressible: true + }, + "application/fits": { + source: "iana" + }, + "application/flexfec": { + source: "iana" + }, + "application/font-sfnt": { + source: "iana" + }, + "application/font-tdpfr": { + source: "iana", + extensions: ["pfr"] + }, + "application/font-woff": { + source: "iana", + compressible: false + }, + "application/framework-attributes+xml": { + source: "iana", + compressible: true + }, + "application/geo+json": { + source: "iana", + compressible: true, + extensions: ["geojson"] + }, + "application/geo+json-seq": { + source: "iana" + }, + "application/geopackage+sqlite3": { + source: "iana" + }, + "application/geoxacml+xml": { + source: "iana", + compressible: true + }, + "application/gltf-buffer": { + source: "iana" + }, + "application/gml+xml": { + source: "iana", + compressible: true, + extensions: ["gml"] + }, + "application/gpx+xml": { + source: "apache", + compressible: true, + extensions: ["gpx"] + }, + "application/gxf": { + source: "apache", + extensions: ["gxf"] + }, + "application/gzip": { + source: "iana", + compressible: false, + extensions: ["gz"] + }, + "application/h224": { + source: "iana" + }, + "application/held+xml": { + source: "iana", + compressible: true + }, + "application/hjson": { + extensions: ["hjson"] + }, + "application/http": { + source: "iana" + }, + "application/hyperstudio": { + source: "iana", + extensions: ["stk"] + }, + "application/ibe-key-request+xml": { + source: "iana", + compressible: true + }, + "application/ibe-pkg-reply+xml": { + source: "iana", + compressible: true + }, + "application/ibe-pp-data": { + source: "iana" + }, + "application/iges": { + source: "iana" + }, + "application/im-iscomposing+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/index": { + source: "iana" + }, + "application/index.cmd": { + source: "iana" + }, + "application/index.obj": { + source: "iana" + }, + "application/index.response": { + source: "iana" + }, + "application/index.vnd": { + source: "iana" + }, + "application/inkml+xml": { + source: "iana", + compressible: true, + extensions: ["ink", "inkml"] + }, + "application/iotp": { + source: "iana" + }, + "application/ipfix": { + source: "iana", + extensions: ["ipfix"] + }, + "application/ipp": { + source: "iana" + }, + "application/isup": { + source: "iana" + }, + "application/its+xml": { + source: "iana", + compressible: true, + extensions: ["its"] + }, + "application/java-archive": { + source: "apache", + compressible: false, + extensions: ["jar", "war", "ear"] + }, + "application/java-serialized-object": { + source: "apache", + compressible: false, + extensions: ["ser"] + }, + "application/java-vm": { + source: "apache", + compressible: false, + extensions: ["class"] + }, + "application/javascript": { + source: "iana", + charset: "UTF-8", + compressible: true, + extensions: ["js", "mjs"] + }, + "application/jf2feed+json": { + source: "iana", + compressible: true + }, + "application/jose": { + source: "iana" + }, + "application/jose+json": { + source: "iana", + compressible: true + }, + "application/jrd+json": { + source: "iana", + compressible: true + }, + "application/jscalendar+json": { + source: "iana", + compressible: true + }, + "application/json": { + source: "iana", + charset: "UTF-8", + compressible: true, + extensions: ["json", "map"] + }, + "application/json-patch+json": { + source: "iana", + compressible: true + }, + "application/json-seq": { + source: "iana" + }, + "application/json5": { + extensions: ["json5"] + }, + "application/jsonml+json": { + source: "apache", + compressible: true, + extensions: ["jsonml"] + }, + "application/jwk+json": { + source: "iana", + compressible: true + }, + "application/jwk-set+json": { + source: "iana", + compressible: true + }, + "application/jwt": { + source: "iana" + }, + "application/kpml-request+xml": { + source: "iana", + compressible: true + }, + "application/kpml-response+xml": { + source: "iana", + compressible: true + }, + "application/ld+json": { + source: "iana", + compressible: true, + extensions: ["jsonld"] + }, + "application/lgr+xml": { + source: "iana", + compressible: true, + extensions: ["lgr"] + }, + "application/link-format": { + source: "iana" + }, + "application/load-control+xml": { + source: "iana", + compressible: true + }, + "application/lost+xml": { + source: "iana", + compressible: true, + extensions: ["lostxml"] + }, + "application/lostsync+xml": { + source: "iana", + compressible: true + }, + "application/lpf+zip": { + source: "iana", + compressible: false + }, + "application/lxf": { + source: "iana" + }, + "application/mac-binhex40": { + source: "iana", + extensions: ["hqx"] + }, + "application/mac-compactpro": { + source: "apache", + extensions: ["cpt"] + }, + "application/macwriteii": { + source: "iana" + }, + "application/mads+xml": { + source: "iana", + compressible: true, + extensions: ["mads"] + }, + "application/manifest+json": { + source: "iana", + charset: "UTF-8", + compressible: true, + extensions: ["webmanifest"] + }, + "application/marc": { + source: "iana", + extensions: ["mrc"] + }, + "application/marcxml+xml": { + source: "iana", + compressible: true, + extensions: ["mrcx"] + }, + "application/mathematica": { + source: "iana", + extensions: ["ma", "nb", "mb"] + }, + "application/mathml+xml": { + source: "iana", + compressible: true, + extensions: ["mathml"] + }, + "application/mathml-content+xml": { + source: "iana", + compressible: true + }, + "application/mathml-presentation+xml": { + source: "iana", + compressible: true + }, + "application/mbms-associated-procedure-description+xml": { + source: "iana", + compressible: true + }, + "application/mbms-deregister+xml": { + source: "iana", + compressible: true + }, + "application/mbms-envelope+xml": { + source: "iana", + compressible: true + }, + "application/mbms-msk+xml": { + source: "iana", + compressible: true + }, + "application/mbms-msk-response+xml": { + source: "iana", + compressible: true + }, + "application/mbms-protection-description+xml": { + source: "iana", + compressible: true + }, + "application/mbms-reception-report+xml": { + source: "iana", + compressible: true + }, + "application/mbms-register+xml": { + source: "iana", + compressible: true + }, + "application/mbms-register-response+xml": { + source: "iana", + compressible: true + }, + "application/mbms-schedule+xml": { + source: "iana", + compressible: true + }, + "application/mbms-user-service-description+xml": { + source: "iana", + compressible: true + }, + "application/mbox": { + source: "iana", + extensions: ["mbox"] + }, + "application/media-policy-dataset+xml": { + source: "iana", + compressible: true, + extensions: ["mpf"] + }, + "application/media_control+xml": { + source: "iana", + compressible: true + }, + "application/mediaservercontrol+xml": { + source: "iana", + compressible: true, + extensions: ["mscml"] + }, + "application/merge-patch+json": { + source: "iana", + compressible: true + }, + "application/metalink+xml": { + source: "apache", + compressible: true, + extensions: ["metalink"] + }, + "application/metalink4+xml": { + source: "iana", + compressible: true, + extensions: ["meta4"] + }, + "application/mets+xml": { + source: "iana", + compressible: true, + extensions: ["mets"] + }, + "application/mf4": { + source: "iana" + }, + "application/mikey": { + source: "iana" + }, + "application/mipc": { + source: "iana" + }, + "application/missing-blocks+cbor-seq": { + source: "iana" + }, + "application/mmt-aei+xml": { + source: "iana", + compressible: true, + extensions: ["maei"] + }, + "application/mmt-usd+xml": { + source: "iana", + compressible: true, + extensions: ["musd"] + }, + "application/mods+xml": { + source: "iana", + compressible: true, + extensions: ["mods"] + }, + "application/moss-keys": { + source: "iana" + }, + "application/moss-signature": { + source: "iana" + }, + "application/mosskey-data": { + source: "iana" + }, + "application/mosskey-request": { + source: "iana" + }, + "application/mp21": { + source: "iana", + extensions: ["m21", "mp21"] + }, + "application/mp4": { + source: "iana", + extensions: ["mp4s", "m4p"] + }, + "application/mpeg4-generic": { + source: "iana" + }, + "application/mpeg4-iod": { + source: "iana" + }, + "application/mpeg4-iod-xmt": { + source: "iana" + }, + "application/mrb-consumer+xml": { + source: "iana", + compressible: true + }, + "application/mrb-publish+xml": { + source: "iana", + compressible: true + }, + "application/msc-ivr+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/msc-mixer+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/msword": { + source: "iana", + compressible: false, + extensions: ["doc", "dot"] + }, + "application/mud+json": { + source: "iana", + compressible: true + }, + "application/multipart-core": { + source: "iana" + }, + "application/mxf": { + source: "iana", + extensions: ["mxf"] + }, + "application/n-quads": { + source: "iana", + extensions: ["nq"] + }, + "application/n-triples": { + source: "iana", + extensions: ["nt"] + }, + "application/nasdata": { + source: "iana" + }, + "application/news-checkgroups": { + source: "iana", + charset: "US-ASCII" + }, + "application/news-groupinfo": { + source: "iana", + charset: "US-ASCII" + }, + "application/news-transmission": { + source: "iana" + }, + "application/nlsml+xml": { + source: "iana", + compressible: true + }, + "application/node": { + source: "iana", + extensions: ["cjs"] + }, + "application/nss": { + source: "iana" + }, + "application/oauth-authz-req+jwt": { + source: "iana" + }, + "application/oblivious-dns-message": { + source: "iana" + }, + "application/ocsp-request": { + source: "iana" + }, + "application/ocsp-response": { + source: "iana" + }, + "application/octet-stream": { + source: "iana", + compressible: false, + extensions: ["bin", "dms", "lrf", "mar", "so", "dist", "distz", "pkg", "bpk", "dump", "elc", "deploy", "exe", "dll", "deb", "dmg", "iso", "img", "msi", "msp", "msm", "buffer"] + }, + "application/oda": { + source: "iana", + extensions: ["oda"] + }, + "application/odm+xml": { + source: "iana", + compressible: true + }, + "application/odx": { + source: "iana" + }, + "application/oebps-package+xml": { + source: "iana", + compressible: true, + extensions: ["opf"] + }, + "application/ogg": { + source: "iana", + compressible: false, + extensions: ["ogx"] + }, + "application/omdoc+xml": { + source: "apache", + compressible: true, + extensions: ["omdoc"] + }, + "application/onenote": { + source: "apache", + extensions: ["onetoc", "onetoc2", "onetmp", "onepkg"] + }, + "application/opc-nodeset+xml": { + source: "iana", + compressible: true + }, + "application/oscore": { + source: "iana" + }, + "application/oxps": { + source: "iana", + extensions: ["oxps"] + }, + "application/p21": { + source: "iana" + }, + "application/p21+zip": { + source: "iana", + compressible: false + }, + "application/p2p-overlay+xml": { + source: "iana", + compressible: true, + extensions: ["relo"] + }, + "application/parityfec": { + source: "iana" + }, + "application/passport": { + source: "iana" + }, + "application/patch-ops-error+xml": { + source: "iana", + compressible: true, + extensions: ["xer"] + }, + "application/pdf": { + source: "iana", + compressible: false, + extensions: ["pdf"] + }, + "application/pdx": { + source: "iana" + }, + "application/pem-certificate-chain": { + source: "iana" + }, + "application/pgp-encrypted": { + source: "iana", + compressible: false, + extensions: ["pgp"] + }, + "application/pgp-keys": { + source: "iana", + extensions: ["asc"] + }, + "application/pgp-signature": { + source: "iana", + extensions: ["asc", "sig"] + }, + "application/pics-rules": { + source: "apache", + extensions: ["prf"] + }, + "application/pidf+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/pidf-diff+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/pkcs10": { + source: "iana", + extensions: ["p10"] + }, + "application/pkcs12": { + source: "iana" + }, + "application/pkcs7-mime": { + source: "iana", + extensions: ["p7m", "p7c"] + }, + "application/pkcs7-signature": { + source: "iana", + extensions: ["p7s"] + }, + "application/pkcs8": { + source: "iana", + extensions: ["p8"] + }, + "application/pkcs8-encrypted": { + source: "iana" + }, + "application/pkix-attr-cert": { + source: "iana", + extensions: ["ac"] + }, + "application/pkix-cert": { + source: "iana", + extensions: ["cer"] + }, + "application/pkix-crl": { + source: "iana", + extensions: ["crl"] + }, + "application/pkix-pkipath": { + source: "iana", + extensions: ["pkipath"] + }, + "application/pkixcmp": { + source: "iana", + extensions: ["pki"] + }, + "application/pls+xml": { + source: "iana", + compressible: true, + extensions: ["pls"] + }, + "application/poc-settings+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/postscript": { + source: "iana", + compressible: true, + extensions: ["ai", "eps", "ps"] + }, + "application/ppsp-tracker+json": { + source: "iana", + compressible: true + }, + "application/problem+json": { + source: "iana", + compressible: true + }, + "application/problem+xml": { + source: "iana", + compressible: true + }, + "application/provenance+xml": { + source: "iana", + compressible: true, + extensions: ["provx"] + }, + "application/prs.alvestrand.titrax-sheet": { + source: "iana" + }, + "application/prs.cww": { + source: "iana", + extensions: ["cww"] + }, + "application/prs.cyn": { + source: "iana", + charset: "7-BIT" + }, + "application/prs.hpub+zip": { + source: "iana", + compressible: false + }, + "application/prs.nprend": { + source: "iana" + }, + "application/prs.plucker": { + source: "iana" + }, + "application/prs.rdf-xml-crypt": { + source: "iana" + }, + "application/prs.xsf+xml": { + source: "iana", + compressible: true + }, + "application/pskc+xml": { + source: "iana", + compressible: true, + extensions: ["pskcxml"] + }, + "application/pvd+json": { + source: "iana", + compressible: true + }, + "application/qsig": { + source: "iana" + }, + "application/raml+yaml": { + compressible: true, + extensions: ["raml"] + }, + "application/raptorfec": { + source: "iana" + }, + "application/rdap+json": { + source: "iana", + compressible: true + }, + "application/rdf+xml": { + source: "iana", + compressible: true, + extensions: ["rdf", "owl"] + }, + "application/reginfo+xml": { + source: "iana", + compressible: true, + extensions: ["rif"] + }, + "application/relax-ng-compact-syntax": { + source: "iana", + extensions: ["rnc"] + }, + "application/remote-printing": { + source: "iana" + }, + "application/reputon+json": { + source: "iana", + compressible: true + }, + "application/resource-lists+xml": { + source: "iana", + compressible: true, + extensions: ["rl"] + }, + "application/resource-lists-diff+xml": { + source: "iana", + compressible: true, + extensions: ["rld"] + }, + "application/rfc+xml": { + source: "iana", + compressible: true + }, + "application/riscos": { + source: "iana" + }, + "application/rlmi+xml": { + source: "iana", + compressible: true + }, + "application/rls-services+xml": { + source: "iana", + compressible: true, + extensions: ["rs"] + }, + "application/route-apd+xml": { + source: "iana", + compressible: true, + extensions: ["rapd"] + }, + "application/route-s-tsid+xml": { + source: "iana", + compressible: true, + extensions: ["sls"] + }, + "application/route-usd+xml": { + source: "iana", + compressible: true, + extensions: ["rusd"] + }, + "application/rpki-ghostbusters": { + source: "iana", + extensions: ["gbr"] + }, + "application/rpki-manifest": { + source: "iana", + extensions: ["mft"] + }, + "application/rpki-publication": { + source: "iana" + }, + "application/rpki-roa": { + source: "iana", + extensions: ["roa"] + }, + "application/rpki-updown": { + source: "iana" + }, + "application/rsd+xml": { + source: "apache", + compressible: true, + extensions: ["rsd"] + }, + "application/rss+xml": { + source: "apache", + compressible: true, + extensions: ["rss"] + }, + "application/rtf": { + source: "iana", + compressible: true, + extensions: ["rtf"] + }, + "application/rtploopback": { + source: "iana" + }, + "application/rtx": { + source: "iana" + }, + "application/samlassertion+xml": { + source: "iana", + compressible: true + }, + "application/samlmetadata+xml": { + source: "iana", + compressible: true + }, + "application/sarif+json": { + source: "iana", + compressible: true + }, + "application/sarif-external-properties+json": { + source: "iana", + compressible: true + }, + "application/sbe": { + source: "iana" + }, + "application/sbml+xml": { + source: "iana", + compressible: true, + extensions: ["sbml"] + }, + "application/scaip+xml": { + source: "iana", + compressible: true + }, + "application/scim+json": { + source: "iana", + compressible: true + }, + "application/scvp-cv-request": { + source: "iana", + extensions: ["scq"] + }, + "application/scvp-cv-response": { + source: "iana", + extensions: ["scs"] + }, + "application/scvp-vp-request": { + source: "iana", + extensions: ["spq"] + }, + "application/scvp-vp-response": { + source: "iana", + extensions: ["spp"] + }, + "application/sdp": { + source: "iana", + extensions: ["sdp"] + }, + "application/secevent+jwt": { + source: "iana" + }, + "application/senml+cbor": { + source: "iana" + }, + "application/senml+json": { + source: "iana", + compressible: true + }, + "application/senml+xml": { + source: "iana", + compressible: true, + extensions: ["senmlx"] + }, + "application/senml-etch+cbor": { + source: "iana" + }, + "application/senml-etch+json": { + source: "iana", + compressible: true + }, + "application/senml-exi": { + source: "iana" + }, + "application/sensml+cbor": { + source: "iana" + }, + "application/sensml+json": { + source: "iana", + compressible: true + }, + "application/sensml+xml": { + source: "iana", + compressible: true, + extensions: ["sensmlx"] + }, + "application/sensml-exi": { + source: "iana" + }, + "application/sep+xml": { + source: "iana", + compressible: true + }, + "application/sep-exi": { + source: "iana" + }, + "application/session-info": { + source: "iana" + }, + "application/set-payment": { + source: "iana" + }, + "application/set-payment-initiation": { + source: "iana", + extensions: ["setpay"] + }, + "application/set-registration": { + source: "iana" + }, + "application/set-registration-initiation": { + source: "iana", + extensions: ["setreg"] + }, + "application/sgml": { + source: "iana" + }, + "application/sgml-open-catalog": { + source: "iana" + }, + "application/shf+xml": { + source: "iana", + compressible: true, + extensions: ["shf"] + }, + "application/sieve": { + source: "iana", + extensions: ["siv", "sieve"] + }, + "application/simple-filter+xml": { + source: "iana", + compressible: true + }, + "application/simple-message-summary": { + source: "iana" + }, + "application/simplesymbolcontainer": { + source: "iana" + }, + "application/sipc": { + source: "iana" + }, + "application/slate": { + source: "iana" + }, + "application/smil": { + source: "iana" + }, + "application/smil+xml": { + source: "iana", + compressible: true, + extensions: ["smi", "smil"] + }, + "application/smpte336m": { + source: "iana" + }, + "application/soap+fastinfoset": { + source: "iana" + }, + "application/soap+xml": { + source: "iana", + compressible: true + }, + "application/sparql-query": { + source: "iana", + extensions: ["rq"] + }, + "application/sparql-results+xml": { + source: "iana", + compressible: true, + extensions: ["srx"] + }, + "application/spdx+json": { + source: "iana", + compressible: true + }, + "application/spirits-event+xml": { + source: "iana", + compressible: true + }, + "application/sql": { + source: "iana" + }, + "application/srgs": { + source: "iana", + extensions: ["gram"] + }, + "application/srgs+xml": { + source: "iana", + compressible: true, + extensions: ["grxml"] + }, + "application/sru+xml": { + source: "iana", + compressible: true, + extensions: ["sru"] + }, + "application/ssdl+xml": { + source: "apache", + compressible: true, + extensions: ["ssdl"] + }, + "application/ssml+xml": { + source: "iana", + compressible: true, + extensions: ["ssml"] + }, + "application/stix+json": { + source: "iana", + compressible: true + }, + "application/swid+xml": { + source: "iana", + compressible: true, + extensions: ["swidtag"] + }, + "application/tamp-apex-update": { + source: "iana" + }, + "application/tamp-apex-update-confirm": { + source: "iana" + }, + "application/tamp-community-update": { + source: "iana" + }, + "application/tamp-community-update-confirm": { + source: "iana" + }, + "application/tamp-error": { + source: "iana" + }, + "application/tamp-sequence-adjust": { + source: "iana" + }, + "application/tamp-sequence-adjust-confirm": { + source: "iana" + }, + "application/tamp-status-query": { + source: "iana" + }, + "application/tamp-status-response": { + source: "iana" + }, + "application/tamp-update": { + source: "iana" + }, + "application/tamp-update-confirm": { + source: "iana" + }, + "application/tar": { + compressible: true + }, + "application/taxii+json": { + source: "iana", + compressible: true + }, + "application/td+json": { + source: "iana", + compressible: true + }, + "application/tei+xml": { + source: "iana", + compressible: true, + extensions: ["tei", "teicorpus"] + }, + "application/tetra_isi": { + source: "iana" + }, + "application/thraud+xml": { + source: "iana", + compressible: true, + extensions: ["tfi"] + }, + "application/timestamp-query": { + source: "iana" + }, + "application/timestamp-reply": { + source: "iana" + }, + "application/timestamped-data": { + source: "iana", + extensions: ["tsd"] + }, + "application/tlsrpt+gzip": { + source: "iana" + }, + "application/tlsrpt+json": { + source: "iana", + compressible: true + }, + "application/tnauthlist": { + source: "iana" + }, + "application/token-introspection+jwt": { + source: "iana" + }, + "application/toml": { + compressible: true, + extensions: ["toml"] + }, + "application/trickle-ice-sdpfrag": { + source: "iana" + }, + "application/trig": { + source: "iana", + extensions: ["trig"] + }, + "application/ttml+xml": { + source: "iana", + compressible: true, + extensions: ["ttml"] + }, + "application/tve-trigger": { + source: "iana" + }, + "application/tzif": { + source: "iana" + }, + "application/tzif-leap": { + source: "iana" + }, + "application/ubjson": { + compressible: false, + extensions: ["ubj"] + }, + "application/ulpfec": { + source: "iana" + }, + "application/urc-grpsheet+xml": { + source: "iana", + compressible: true + }, + "application/urc-ressheet+xml": { + source: "iana", + compressible: true, + extensions: ["rsheet"] + }, + "application/urc-targetdesc+xml": { + source: "iana", + compressible: true, + extensions: ["td"] + }, + "application/urc-uisocketdesc+xml": { + source: "iana", + compressible: true + }, + "application/vcard+json": { + source: "iana", + compressible: true + }, + "application/vcard+xml": { + source: "iana", + compressible: true + }, + "application/vemmi": { + source: "iana" + }, + "application/vividence.scriptfile": { + source: "apache" + }, + "application/vnd.1000minds.decision-model+xml": { + source: "iana", + compressible: true, + extensions: ["1km"] + }, + "application/vnd.3gpp-prose+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp-prose-pc3ch+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp-v2x-local-service-information": { + source: "iana" + }, + "application/vnd.3gpp.5gnas": { + source: "iana" + }, + "application/vnd.3gpp.access-transfer-events+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.bsf+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.gmop+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.gtpc": { + source: "iana" + }, + "application/vnd.3gpp.interworking-data": { + source: "iana" + }, + "application/vnd.3gpp.lpp": { + source: "iana" + }, + "application/vnd.3gpp.mc-signalling-ear": { + source: "iana" + }, + "application/vnd.3gpp.mcdata-affiliation-command+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcdata-info+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcdata-payload": { + source: "iana" + }, + "application/vnd.3gpp.mcdata-service-config+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcdata-signalling": { + source: "iana" + }, + "application/vnd.3gpp.mcdata-ue-config+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcdata-user-profile+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcptt-affiliation-command+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcptt-floor-request+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcptt-info+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcptt-location-info+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcptt-mbms-usage-info+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcptt-service-config+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcptt-signed+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcptt-ue-config+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcptt-ue-init-config+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcptt-user-profile+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcvideo-affiliation-command+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcvideo-affiliation-info+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcvideo-info+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcvideo-location-info+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcvideo-mbms-usage-info+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcvideo-service-config+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcvideo-transmission-request+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcvideo-ue-config+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mcvideo-user-profile+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.mid-call+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.ngap": { + source: "iana" + }, + "application/vnd.3gpp.pfcp": { + source: "iana" + }, + "application/vnd.3gpp.pic-bw-large": { + source: "iana", + extensions: ["plb"] + }, + "application/vnd.3gpp.pic-bw-small": { + source: "iana", + extensions: ["psb"] + }, + "application/vnd.3gpp.pic-bw-var": { + source: "iana", + extensions: ["pvb"] + }, + "application/vnd.3gpp.s1ap": { + source: "iana" + }, + "application/vnd.3gpp.sms": { + source: "iana" + }, + "application/vnd.3gpp.sms+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.srvcc-ext+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.srvcc-info+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.state-and-event-info+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp.ussd+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp2.bcmcsinfo+xml": { + source: "iana", + compressible: true + }, + "application/vnd.3gpp2.sms": { + source: "iana" + }, + "application/vnd.3gpp2.tcap": { + source: "iana", + extensions: ["tcap"] + }, + "application/vnd.3lightssoftware.imagescal": { + source: "iana" + }, + "application/vnd.3m.post-it-notes": { + source: "iana", + extensions: ["pwn"] + }, + "application/vnd.accpac.simply.aso": { + source: "iana", + extensions: ["aso"] + }, + "application/vnd.accpac.simply.imp": { + source: "iana", + extensions: ["imp"] + }, + "application/vnd.acucobol": { + source: "iana", + extensions: ["acu"] + }, + "application/vnd.acucorp": { + source: "iana", + extensions: ["atc", "acutc"] + }, + "application/vnd.adobe.air-application-installer-package+zip": { + source: "apache", + compressible: false, + extensions: ["air"] + }, + "application/vnd.adobe.flash.movie": { + source: "iana" + }, + "application/vnd.adobe.formscentral.fcdt": { + source: "iana", + extensions: ["fcdt"] + }, + "application/vnd.adobe.fxp": { + source: "iana", + extensions: ["fxp", "fxpl"] + }, + "application/vnd.adobe.partial-upload": { + source: "iana" + }, + "application/vnd.adobe.xdp+xml": { + source: "iana", + compressible: true, + extensions: ["xdp"] + }, + "application/vnd.adobe.xfdf": { + source: "iana", + extensions: ["xfdf"] + }, + "application/vnd.aether.imp": { + source: "iana" + }, + "application/vnd.afpc.afplinedata": { + source: "iana" + }, + "application/vnd.afpc.afplinedata-pagedef": { + source: "iana" + }, + "application/vnd.afpc.cmoca-cmresource": { + source: "iana" + }, + "application/vnd.afpc.foca-charset": { + source: "iana" + }, + "application/vnd.afpc.foca-codedfont": { + source: "iana" + }, + "application/vnd.afpc.foca-codepage": { + source: "iana" + }, + "application/vnd.afpc.modca": { + source: "iana" + }, + "application/vnd.afpc.modca-cmtable": { + source: "iana" + }, + "application/vnd.afpc.modca-formdef": { + source: "iana" + }, + "application/vnd.afpc.modca-mediummap": { + source: "iana" + }, + "application/vnd.afpc.modca-objectcontainer": { + source: "iana" + }, + "application/vnd.afpc.modca-overlay": { + source: "iana" + }, + "application/vnd.afpc.modca-pagesegment": { + source: "iana" + }, + "application/vnd.age": { + source: "iana", + extensions: ["age"] + }, + "application/vnd.ah-barcode": { + source: "iana" + }, + "application/vnd.ahead.space": { + source: "iana", + extensions: ["ahead"] + }, + "application/vnd.airzip.filesecure.azf": { + source: "iana", + extensions: ["azf"] + }, + "application/vnd.airzip.filesecure.azs": { + source: "iana", + extensions: ["azs"] + }, + "application/vnd.amadeus+json": { + source: "iana", + compressible: true + }, + "application/vnd.amazon.ebook": { + source: "apache", + extensions: ["azw"] + }, + "application/vnd.amazon.mobi8-ebook": { + source: "iana" + }, + "application/vnd.americandynamics.acc": { + source: "iana", + extensions: ["acc"] + }, + "application/vnd.amiga.ami": { + source: "iana", + extensions: ["ami"] + }, + "application/vnd.amundsen.maze+xml": { + source: "iana", + compressible: true + }, + "application/vnd.android.ota": { + source: "iana" + }, + "application/vnd.android.package-archive": { + source: "apache", + compressible: false, + extensions: ["apk"] + }, + "application/vnd.anki": { + source: "iana" + }, + "application/vnd.anser-web-certificate-issue-initiation": { + source: "iana", + extensions: ["cii"] + }, + "application/vnd.anser-web-funds-transfer-initiation": { + source: "apache", + extensions: ["fti"] + }, + "application/vnd.antix.game-component": { + source: "iana", + extensions: ["atx"] + }, + "application/vnd.apache.arrow.file": { + source: "iana" + }, + "application/vnd.apache.arrow.stream": { + source: "iana" + }, + "application/vnd.apache.thrift.binary": { + source: "iana" + }, + "application/vnd.apache.thrift.compact": { + source: "iana" + }, + "application/vnd.apache.thrift.json": { + source: "iana" + }, + "application/vnd.api+json": { + source: "iana", + compressible: true + }, + "application/vnd.aplextor.warrp+json": { + source: "iana", + compressible: true + }, + "application/vnd.apothekende.reservation+json": { + source: "iana", + compressible: true + }, + "application/vnd.apple.installer+xml": { + source: "iana", + compressible: true, + extensions: ["mpkg"] + }, + "application/vnd.apple.keynote": { + source: "iana", + extensions: ["key"] + }, + "application/vnd.apple.mpegurl": { + source: "iana", + extensions: ["m3u8"] + }, + "application/vnd.apple.numbers": { + source: "iana", + extensions: ["numbers"] + }, + "application/vnd.apple.pages": { + source: "iana", + extensions: ["pages"] + }, + "application/vnd.apple.pkpass": { + compressible: false, + extensions: ["pkpass"] + }, + "application/vnd.arastra.swi": { + source: "iana" + }, + "application/vnd.aristanetworks.swi": { + source: "iana", + extensions: ["swi"] + }, + "application/vnd.artisan+json": { + source: "iana", + compressible: true + }, + "application/vnd.artsquare": { + source: "iana" + }, + "application/vnd.astraea-software.iota": { + source: "iana", + extensions: ["iota"] + }, + "application/vnd.audiograph": { + source: "iana", + extensions: ["aep"] + }, + "application/vnd.autopackage": { + source: "iana" + }, + "application/vnd.avalon+json": { + source: "iana", + compressible: true + }, + "application/vnd.avistar+xml": { + source: "iana", + compressible: true + }, + "application/vnd.balsamiq.bmml+xml": { + source: "iana", + compressible: true, + extensions: ["bmml"] + }, + "application/vnd.balsamiq.bmpr": { + source: "iana" + }, + "application/vnd.banana-accounting": { + source: "iana" + }, + "application/vnd.bbf.usp.error": { + source: "iana" + }, + "application/vnd.bbf.usp.msg": { + source: "iana" + }, + "application/vnd.bbf.usp.msg+json": { + source: "iana", + compressible: true + }, + "application/vnd.bekitzur-stech+json": { + source: "iana", + compressible: true + }, + "application/vnd.bint.med-content": { + source: "iana" + }, + "application/vnd.biopax.rdf+xml": { + source: "iana", + compressible: true + }, + "application/vnd.blink-idb-value-wrapper": { + source: "iana" + }, + "application/vnd.blueice.multipass": { + source: "iana", + extensions: ["mpm"] + }, + "application/vnd.bluetooth.ep.oob": { + source: "iana" + }, + "application/vnd.bluetooth.le.oob": { + source: "iana" + }, + "application/vnd.bmi": { + source: "iana", + extensions: ["bmi"] + }, + "application/vnd.bpf": { + source: "iana" + }, + "application/vnd.bpf3": { + source: "iana" + }, + "application/vnd.businessobjects": { + source: "iana", + extensions: ["rep"] + }, + "application/vnd.byu.uapi+json": { + source: "iana", + compressible: true + }, + "application/vnd.cab-jscript": { + source: "iana" + }, + "application/vnd.canon-cpdl": { + source: "iana" + }, + "application/vnd.canon-lips": { + source: "iana" + }, + "application/vnd.capasystems-pg+json": { + source: "iana", + compressible: true + }, + "application/vnd.cendio.thinlinc.clientconf": { + source: "iana" + }, + "application/vnd.century-systems.tcp_stream": { + source: "iana" + }, + "application/vnd.chemdraw+xml": { + source: "iana", + compressible: true, + extensions: ["cdxml"] + }, + "application/vnd.chess-pgn": { + source: "iana" + }, + "application/vnd.chipnuts.karaoke-mmd": { + source: "iana", + extensions: ["mmd"] + }, + "application/vnd.ciedi": { + source: "iana" + }, + "application/vnd.cinderella": { + source: "iana", + extensions: ["cdy"] + }, + "application/vnd.cirpack.isdn-ext": { + source: "iana" + }, + "application/vnd.citationstyles.style+xml": { + source: "iana", + compressible: true, + extensions: ["csl"] + }, + "application/vnd.claymore": { + source: "iana", + extensions: ["cla"] + }, + "application/vnd.cloanto.rp9": { + source: "iana", + extensions: ["rp9"] + }, + "application/vnd.clonk.c4group": { + source: "iana", + extensions: ["c4g", "c4d", "c4f", "c4p", "c4u"] + }, + "application/vnd.cluetrust.cartomobile-config": { + source: "iana", + extensions: ["c11amc"] + }, + "application/vnd.cluetrust.cartomobile-config-pkg": { + source: "iana", + extensions: ["c11amz"] + }, + "application/vnd.coffeescript": { + source: "iana" + }, + "application/vnd.collabio.xodocuments.document": { + source: "iana" + }, + "application/vnd.collabio.xodocuments.document-template": { + source: "iana" + }, + "application/vnd.collabio.xodocuments.presentation": { + source: "iana" + }, + "application/vnd.collabio.xodocuments.presentation-template": { + source: "iana" + }, + "application/vnd.collabio.xodocuments.spreadsheet": { + source: "iana" + }, + "application/vnd.collabio.xodocuments.spreadsheet-template": { + source: "iana" + }, + "application/vnd.collection+json": { + source: "iana", + compressible: true + }, + "application/vnd.collection.doc+json": { + source: "iana", + compressible: true + }, + "application/vnd.collection.next+json": { + source: "iana", + compressible: true + }, + "application/vnd.comicbook+zip": { + source: "iana", + compressible: false + }, + "application/vnd.comicbook-rar": { + source: "iana" + }, + "application/vnd.commerce-battelle": { + source: "iana" + }, + "application/vnd.commonspace": { + source: "iana", + extensions: ["csp"] + }, + "application/vnd.contact.cmsg": { + source: "iana", + extensions: ["cdbcmsg"] + }, + "application/vnd.coreos.ignition+json": { + source: "iana", + compressible: true + }, + "application/vnd.cosmocaller": { + source: "iana", + extensions: ["cmc"] + }, + "application/vnd.crick.clicker": { + source: "iana", + extensions: ["clkx"] + }, + "application/vnd.crick.clicker.keyboard": { + source: "iana", + extensions: ["clkk"] + }, + "application/vnd.crick.clicker.palette": { + source: "iana", + extensions: ["clkp"] + }, + "application/vnd.crick.clicker.template": { + source: "iana", + extensions: ["clkt"] + }, + "application/vnd.crick.clicker.wordbank": { + source: "iana", + extensions: ["clkw"] + }, + "application/vnd.criticaltools.wbs+xml": { + source: "iana", + compressible: true, + extensions: ["wbs"] + }, + "application/vnd.cryptii.pipe+json": { + source: "iana", + compressible: true + }, + "application/vnd.crypto-shade-file": { + source: "iana" + }, + "application/vnd.cryptomator.encrypted": { + source: "iana" + }, + "application/vnd.cryptomator.vault": { + source: "iana" + }, + "application/vnd.ctc-posml": { + source: "iana", + extensions: ["pml"] + }, + "application/vnd.ctct.ws+xml": { + source: "iana", + compressible: true + }, + "application/vnd.cups-pdf": { + source: "iana" + }, + "application/vnd.cups-postscript": { + source: "iana" + }, + "application/vnd.cups-ppd": { + source: "iana", + extensions: ["ppd"] + }, + "application/vnd.cups-raster": { + source: "iana" + }, + "application/vnd.cups-raw": { + source: "iana" + }, + "application/vnd.curl": { + source: "iana" + }, + "application/vnd.curl.car": { + source: "apache", + extensions: ["car"] + }, + "application/vnd.curl.pcurl": { + source: "apache", + extensions: ["pcurl"] + }, + "application/vnd.cyan.dean.root+xml": { + source: "iana", + compressible: true + }, + "application/vnd.cybank": { + source: "iana" + }, + "application/vnd.cyclonedx+json": { + source: "iana", + compressible: true + }, + "application/vnd.cyclonedx+xml": { + source: "iana", + compressible: true + }, + "application/vnd.d2l.coursepackage1p0+zip": { + source: "iana", + compressible: false + }, + "application/vnd.d3m-dataset": { + source: "iana" + }, + "application/vnd.d3m-problem": { + source: "iana" + }, + "application/vnd.dart": { + source: "iana", + compressible: true, + extensions: ["dart"] + }, + "application/vnd.data-vision.rdz": { + source: "iana", + extensions: ["rdz"] + }, + "application/vnd.datapackage+json": { + source: "iana", + compressible: true + }, + "application/vnd.dataresource+json": { + source: "iana", + compressible: true + }, + "application/vnd.dbf": { + source: "iana", + extensions: ["dbf"] + }, + "application/vnd.debian.binary-package": { + source: "iana" + }, + "application/vnd.dece.data": { + source: "iana", + extensions: ["uvf", "uvvf", "uvd", "uvvd"] + }, + "application/vnd.dece.ttml+xml": { + source: "iana", + compressible: true, + extensions: ["uvt", "uvvt"] + }, + "application/vnd.dece.unspecified": { + source: "iana", + extensions: ["uvx", "uvvx"] + }, + "application/vnd.dece.zip": { + source: "iana", + extensions: ["uvz", "uvvz"] + }, + "application/vnd.denovo.fcselayout-link": { + source: "iana", + extensions: ["fe_launch"] + }, + "application/vnd.desmume.movie": { + source: "iana" + }, + "application/vnd.dir-bi.plate-dl-nosuffix": { + source: "iana" + }, + "application/vnd.dm.delegation+xml": { + source: "iana", + compressible: true + }, + "application/vnd.dna": { + source: "iana", + extensions: ["dna"] + }, + "application/vnd.document+json": { + source: "iana", + compressible: true + }, + "application/vnd.dolby.mlp": { + source: "apache", + extensions: ["mlp"] + }, + "application/vnd.dolby.mobile.1": { + source: "iana" + }, + "application/vnd.dolby.mobile.2": { + source: "iana" + }, + "application/vnd.doremir.scorecloud-binary-document": { + source: "iana" + }, + "application/vnd.dpgraph": { + source: "iana", + extensions: ["dpg"] + }, + "application/vnd.dreamfactory": { + source: "iana", + extensions: ["dfac"] + }, + "application/vnd.drive+json": { + source: "iana", + compressible: true + }, + "application/vnd.ds-keypoint": { + source: "apache", + extensions: ["kpxx"] + }, + "application/vnd.dtg.local": { + source: "iana" + }, + "application/vnd.dtg.local.flash": { + source: "iana" + }, + "application/vnd.dtg.local.html": { + source: "iana" + }, + "application/vnd.dvb.ait": { + source: "iana", + extensions: ["ait"] + }, + "application/vnd.dvb.dvbisl+xml": { + source: "iana", + compressible: true + }, + "application/vnd.dvb.dvbj": { + source: "iana" + }, + "application/vnd.dvb.esgcontainer": { + source: "iana" + }, + "application/vnd.dvb.ipdcdftnotifaccess": { + source: "iana" + }, + "application/vnd.dvb.ipdcesgaccess": { + source: "iana" + }, + "application/vnd.dvb.ipdcesgaccess2": { + source: "iana" + }, + "application/vnd.dvb.ipdcesgpdd": { + source: "iana" + }, + "application/vnd.dvb.ipdcroaming": { + source: "iana" + }, + "application/vnd.dvb.iptv.alfec-base": { + source: "iana" + }, + "application/vnd.dvb.iptv.alfec-enhancement": { + source: "iana" + }, + "application/vnd.dvb.notif-aggregate-root+xml": { + source: "iana", + compressible: true + }, + "application/vnd.dvb.notif-container+xml": { + source: "iana", + compressible: true + }, + "application/vnd.dvb.notif-generic+xml": { + source: "iana", + compressible: true + }, + "application/vnd.dvb.notif-ia-msglist+xml": { + source: "iana", + compressible: true + }, + "application/vnd.dvb.notif-ia-registration-request+xml": { + source: "iana", + compressible: true + }, + "application/vnd.dvb.notif-ia-registration-response+xml": { + source: "iana", + compressible: true + }, + "application/vnd.dvb.notif-init+xml": { + source: "iana", + compressible: true + }, + "application/vnd.dvb.pfr": { + source: "iana" + }, + "application/vnd.dvb.service": { + source: "iana", + extensions: ["svc"] + }, + "application/vnd.dxr": { + source: "iana" + }, + "application/vnd.dynageo": { + source: "iana", + extensions: ["geo"] + }, + "application/vnd.dzr": { + source: "iana" + }, + "application/vnd.easykaraoke.cdgdownload": { + source: "iana" + }, + "application/vnd.ecdis-update": { + source: "iana" + }, + "application/vnd.ecip.rlp": { + source: "iana" + }, + "application/vnd.eclipse.ditto+json": { + source: "iana", + compressible: true + }, + "application/vnd.ecowin.chart": { + source: "iana", + extensions: ["mag"] + }, + "application/vnd.ecowin.filerequest": { + source: "iana" + }, + "application/vnd.ecowin.fileupdate": { + source: "iana" + }, + "application/vnd.ecowin.series": { + source: "iana" + }, + "application/vnd.ecowin.seriesrequest": { + source: "iana" + }, + "application/vnd.ecowin.seriesupdate": { + source: "iana" + }, + "application/vnd.efi.img": { + source: "iana" + }, + "application/vnd.efi.iso": { + source: "iana" + }, + "application/vnd.emclient.accessrequest+xml": { + source: "iana", + compressible: true + }, + "application/vnd.enliven": { + source: "iana", + extensions: ["nml"] + }, + "application/vnd.enphase.envoy": { + source: "iana" + }, + "application/vnd.eprints.data+xml": { + source: "iana", + compressible: true + }, + "application/vnd.epson.esf": { + source: "iana", + extensions: ["esf"] + }, + "application/vnd.epson.msf": { + source: "iana", + extensions: ["msf"] + }, + "application/vnd.epson.quickanime": { + source: "iana", + extensions: ["qam"] + }, + "application/vnd.epson.salt": { + source: "iana", + extensions: ["slt"] + }, + "application/vnd.epson.ssf": { + source: "iana", + extensions: ["ssf"] + }, + "application/vnd.ericsson.quickcall": { + source: "iana" + }, + "application/vnd.espass-espass+zip": { + source: "iana", + compressible: false + }, + "application/vnd.eszigno3+xml": { + source: "iana", + compressible: true, + extensions: ["es3", "et3"] + }, + "application/vnd.etsi.aoc+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.asic-e+zip": { + source: "iana", + compressible: false + }, + "application/vnd.etsi.asic-s+zip": { + source: "iana", + compressible: false + }, + "application/vnd.etsi.cug+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.iptvcommand+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.iptvdiscovery+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.iptvprofile+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.iptvsad-bc+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.iptvsad-cod+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.iptvsad-npvr+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.iptvservice+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.iptvsync+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.iptvueprofile+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.mcid+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.mheg5": { + source: "iana" + }, + "application/vnd.etsi.overload-control-policy-dataset+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.pstn+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.sci+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.simservs+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.timestamp-token": { + source: "iana" + }, + "application/vnd.etsi.tsl+xml": { + source: "iana", + compressible: true + }, + "application/vnd.etsi.tsl.der": { + source: "iana" + }, + "application/vnd.eu.kasparian.car+json": { + source: "iana", + compressible: true + }, + "application/vnd.eudora.data": { + source: "iana" + }, + "application/vnd.evolv.ecig.profile": { + source: "iana" + }, + "application/vnd.evolv.ecig.settings": { + source: "iana" + }, + "application/vnd.evolv.ecig.theme": { + source: "iana" + }, + "application/vnd.exstream-empower+zip": { + source: "iana", + compressible: false + }, + "application/vnd.exstream-package": { + source: "iana" + }, + "application/vnd.ezpix-album": { + source: "iana", + extensions: ["ez2"] + }, + "application/vnd.ezpix-package": { + source: "iana", + extensions: ["ez3"] + }, + "application/vnd.f-secure.mobile": { + source: "iana" + }, + "application/vnd.familysearch.gedcom+zip": { + source: "iana", + compressible: false + }, + "application/vnd.fastcopy-disk-image": { + source: "iana" + }, + "application/vnd.fdf": { + source: "iana", + extensions: ["fdf"] + }, + "application/vnd.fdsn.mseed": { + source: "iana", + extensions: ["mseed"] + }, + "application/vnd.fdsn.seed": { + source: "iana", + extensions: ["seed", "dataless"] + }, + "application/vnd.ffsns": { + source: "iana" + }, + "application/vnd.ficlab.flb+zip": { + source: "iana", + compressible: false + }, + "application/vnd.filmit.zfc": { + source: "iana" + }, + "application/vnd.fints": { + source: "iana" + }, + "application/vnd.firemonkeys.cloudcell": { + source: "iana" + }, + "application/vnd.flographit": { + source: "iana", + extensions: ["gph"] + }, + "application/vnd.fluxtime.clip": { + source: "iana", + extensions: ["ftc"] + }, + "application/vnd.font-fontforge-sfd": { + source: "iana" + }, + "application/vnd.framemaker": { + source: "iana", + extensions: ["fm", "frame", "maker", "book"] + }, + "application/vnd.frogans.fnc": { + source: "iana", + extensions: ["fnc"] + }, + "application/vnd.frogans.ltf": { + source: "iana", + extensions: ["ltf"] + }, + "application/vnd.fsc.weblaunch": { + source: "iana", + extensions: ["fsc"] + }, + "application/vnd.fujifilm.fb.docuworks": { + source: "iana" + }, + "application/vnd.fujifilm.fb.docuworks.binder": { + source: "iana" + }, + "application/vnd.fujifilm.fb.docuworks.container": { + source: "iana" + }, + "application/vnd.fujifilm.fb.jfi+xml": { + source: "iana", + compressible: true + }, + "application/vnd.fujitsu.oasys": { + source: "iana", + extensions: ["oas"] + }, + "application/vnd.fujitsu.oasys2": { + source: "iana", + extensions: ["oa2"] + }, + "application/vnd.fujitsu.oasys3": { + source: "iana", + extensions: ["oa3"] + }, + "application/vnd.fujitsu.oasysgp": { + source: "iana", + extensions: ["fg5"] + }, + "application/vnd.fujitsu.oasysprs": { + source: "iana", + extensions: ["bh2"] + }, + "application/vnd.fujixerox.art-ex": { + source: "iana" + }, + "application/vnd.fujixerox.art4": { + source: "iana" + }, + "application/vnd.fujixerox.ddd": { + source: "iana", + extensions: ["ddd"] + }, + "application/vnd.fujixerox.docuworks": { + source: "iana", + extensions: ["xdw"] + }, + "application/vnd.fujixerox.docuworks.binder": { + source: "iana", + extensions: ["xbd"] + }, + "application/vnd.fujixerox.docuworks.container": { + source: "iana" + }, + "application/vnd.fujixerox.hbpl": { + source: "iana" + }, + "application/vnd.fut-misnet": { + source: "iana" + }, + "application/vnd.futoin+cbor": { + source: "iana" + }, + "application/vnd.futoin+json": { + source: "iana", + compressible: true + }, + "application/vnd.fuzzysheet": { + source: "iana", + extensions: ["fzs"] + }, + "application/vnd.genomatix.tuxedo": { + source: "iana", + extensions: ["txd"] + }, + "application/vnd.gentics.grd+json": { + source: "iana", + compressible: true + }, + "application/vnd.geo+json": { + source: "iana", + compressible: true + }, + "application/vnd.geocube+xml": { + source: "iana", + compressible: true + }, + "application/vnd.geogebra.file": { + source: "iana", + extensions: ["ggb"] + }, + "application/vnd.geogebra.slides": { + source: "iana" + }, + "application/vnd.geogebra.tool": { + source: "iana", + extensions: ["ggt"] + }, + "application/vnd.geometry-explorer": { + source: "iana", + extensions: ["gex", "gre"] + }, + "application/vnd.geonext": { + source: "iana", + extensions: ["gxt"] + }, + "application/vnd.geoplan": { + source: "iana", + extensions: ["g2w"] + }, + "application/vnd.geospace": { + source: "iana", + extensions: ["g3w"] + }, + "application/vnd.gerber": { + source: "iana" + }, + "application/vnd.globalplatform.card-content-mgt": { + source: "iana" + }, + "application/vnd.globalplatform.card-content-mgt-response": { + source: "iana" + }, + "application/vnd.gmx": { + source: "iana", + extensions: ["gmx"] + }, + "application/vnd.google-apps.document": { + compressible: false, + extensions: ["gdoc"] + }, + "application/vnd.google-apps.presentation": { + compressible: false, + extensions: ["gslides"] + }, + "application/vnd.google-apps.spreadsheet": { + compressible: false, + extensions: ["gsheet"] + }, + "application/vnd.google-earth.kml+xml": { + source: "iana", + compressible: true, + extensions: ["kml"] + }, + "application/vnd.google-earth.kmz": { + source: "iana", + compressible: false, + extensions: ["kmz"] + }, + "application/vnd.gov.sk.e-form+xml": { + source: "iana", + compressible: true + }, + "application/vnd.gov.sk.e-form+zip": { + source: "iana", + compressible: false + }, + "application/vnd.gov.sk.xmldatacontainer+xml": { + source: "iana", + compressible: true + }, + "application/vnd.grafeq": { + source: "iana", + extensions: ["gqf", "gqs"] + }, + "application/vnd.gridmp": { + source: "iana" + }, + "application/vnd.groove-account": { + source: "iana", + extensions: ["gac"] + }, + "application/vnd.groove-help": { + source: "iana", + extensions: ["ghf"] + }, + "application/vnd.groove-identity-message": { + source: "iana", + extensions: ["gim"] + }, + "application/vnd.groove-injector": { + source: "iana", + extensions: ["grv"] + }, + "application/vnd.groove-tool-message": { + source: "iana", + extensions: ["gtm"] + }, + "application/vnd.groove-tool-template": { + source: "iana", + extensions: ["tpl"] + }, + "application/vnd.groove-vcard": { + source: "iana", + extensions: ["vcg"] + }, + "application/vnd.hal+json": { + source: "iana", + compressible: true + }, + "application/vnd.hal+xml": { + source: "iana", + compressible: true, + extensions: ["hal"] + }, + "application/vnd.handheld-entertainment+xml": { + source: "iana", + compressible: true, + extensions: ["zmm"] + }, + "application/vnd.hbci": { + source: "iana", + extensions: ["hbci"] + }, + "application/vnd.hc+json": { + source: "iana", + compressible: true + }, + "application/vnd.hcl-bireports": { + source: "iana" + }, + "application/vnd.hdt": { + source: "iana" + }, + "application/vnd.heroku+json": { + source: "iana", + compressible: true + }, + "application/vnd.hhe.lesson-player": { + source: "iana", + extensions: ["les"] + }, + "application/vnd.hl7cda+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/vnd.hl7v2+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/vnd.hp-hpgl": { + source: "iana", + extensions: ["hpgl"] + }, + "application/vnd.hp-hpid": { + source: "iana", + extensions: ["hpid"] + }, + "application/vnd.hp-hps": { + source: "iana", + extensions: ["hps"] + }, + "application/vnd.hp-jlyt": { + source: "iana", + extensions: ["jlt"] + }, + "application/vnd.hp-pcl": { + source: "iana", + extensions: ["pcl"] + }, + "application/vnd.hp-pclxl": { + source: "iana", + extensions: ["pclxl"] + }, + "application/vnd.httphone": { + source: "iana" + }, + "application/vnd.hydrostatix.sof-data": { + source: "iana", + extensions: ["sfd-hdstx"] + }, + "application/vnd.hyper+json": { + source: "iana", + compressible: true + }, + "application/vnd.hyper-item+json": { + source: "iana", + compressible: true + }, + "application/vnd.hyperdrive+json": { + source: "iana", + compressible: true + }, + "application/vnd.hzn-3d-crossword": { + source: "iana" + }, + "application/vnd.ibm.afplinedata": { + source: "iana" + }, + "application/vnd.ibm.electronic-media": { + source: "iana" + }, + "application/vnd.ibm.minipay": { + source: "iana", + extensions: ["mpy"] + }, + "application/vnd.ibm.modcap": { + source: "iana", + extensions: ["afp", "listafp", "list3820"] + }, + "application/vnd.ibm.rights-management": { + source: "iana", + extensions: ["irm"] + }, + "application/vnd.ibm.secure-container": { + source: "iana", + extensions: ["sc"] + }, + "application/vnd.iccprofile": { + source: "iana", + extensions: ["icc", "icm"] + }, + "application/vnd.ieee.1905": { + source: "iana" + }, + "application/vnd.igloader": { + source: "iana", + extensions: ["igl"] + }, + "application/vnd.imagemeter.folder+zip": { + source: "iana", + compressible: false + }, + "application/vnd.imagemeter.image+zip": { + source: "iana", + compressible: false + }, + "application/vnd.immervision-ivp": { + source: "iana", + extensions: ["ivp"] + }, + "application/vnd.immervision-ivu": { + source: "iana", + extensions: ["ivu"] + }, + "application/vnd.ims.imsccv1p1": { + source: "iana" + }, + "application/vnd.ims.imsccv1p2": { + source: "iana" + }, + "application/vnd.ims.imsccv1p3": { + source: "iana" + }, + "application/vnd.ims.lis.v2.result+json": { + source: "iana", + compressible: true + }, + "application/vnd.ims.lti.v2.toolconsumerprofile+json": { + source: "iana", + compressible: true + }, + "application/vnd.ims.lti.v2.toolproxy+json": { + source: "iana", + compressible: true + }, + "application/vnd.ims.lti.v2.toolproxy.id+json": { + source: "iana", + compressible: true + }, + "application/vnd.ims.lti.v2.toolsettings+json": { + source: "iana", + compressible: true + }, + "application/vnd.ims.lti.v2.toolsettings.simple+json": { + source: "iana", + compressible: true + }, + "application/vnd.informedcontrol.rms+xml": { + source: "iana", + compressible: true + }, + "application/vnd.informix-visionary": { + source: "iana" + }, + "application/vnd.infotech.project": { + source: "iana" + }, + "application/vnd.infotech.project+xml": { + source: "iana", + compressible: true + }, + "application/vnd.innopath.wamp.notification": { + source: "iana" + }, + "application/vnd.insors.igm": { + source: "iana", + extensions: ["igm"] + }, + "application/vnd.intercon.formnet": { + source: "iana", + extensions: ["xpw", "xpx"] + }, + "application/vnd.intergeo": { + source: "iana", + extensions: ["i2g"] + }, + "application/vnd.intertrust.digibox": { + source: "iana" + }, + "application/vnd.intertrust.nncp": { + source: "iana" + }, + "application/vnd.intu.qbo": { + source: "iana", + extensions: ["qbo"] + }, + "application/vnd.intu.qfx": { + source: "iana", + extensions: ["qfx"] + }, + "application/vnd.iptc.g2.catalogitem+xml": { + source: "iana", + compressible: true + }, + "application/vnd.iptc.g2.conceptitem+xml": { + source: "iana", + compressible: true + }, + "application/vnd.iptc.g2.knowledgeitem+xml": { + source: "iana", + compressible: true + }, + "application/vnd.iptc.g2.newsitem+xml": { + source: "iana", + compressible: true + }, + "application/vnd.iptc.g2.newsmessage+xml": { + source: "iana", + compressible: true + }, + "application/vnd.iptc.g2.packageitem+xml": { + source: "iana", + compressible: true + }, + "application/vnd.iptc.g2.planningitem+xml": { + source: "iana", + compressible: true + }, + "application/vnd.ipunplugged.rcprofile": { + source: "iana", + extensions: ["rcprofile"] + }, + "application/vnd.irepository.package+xml": { + source: "iana", + compressible: true, + extensions: ["irp"] + }, + "application/vnd.is-xpr": { + source: "iana", + extensions: ["xpr"] + }, + "application/vnd.isac.fcs": { + source: "iana", + extensions: ["fcs"] + }, + "application/vnd.iso11783-10+zip": { + source: "iana", + compressible: false + }, + "application/vnd.jam": { + source: "iana", + extensions: ["jam"] + }, + "application/vnd.japannet-directory-service": { + source: "iana" + }, + "application/vnd.japannet-jpnstore-wakeup": { + source: "iana" + }, + "application/vnd.japannet-payment-wakeup": { + source: "iana" + }, + "application/vnd.japannet-registration": { + source: "iana" + }, + "application/vnd.japannet-registration-wakeup": { + source: "iana" + }, + "application/vnd.japannet-setstore-wakeup": { + source: "iana" + }, + "application/vnd.japannet-verification": { + source: "iana" + }, + "application/vnd.japannet-verification-wakeup": { + source: "iana" + }, + "application/vnd.jcp.javame.midlet-rms": { + source: "iana", + extensions: ["rms"] + }, + "application/vnd.jisp": { + source: "iana", + extensions: ["jisp"] + }, + "application/vnd.joost.joda-archive": { + source: "iana", + extensions: ["joda"] + }, + "application/vnd.jsk.isdn-ngn": { + source: "iana" + }, + "application/vnd.kahootz": { + source: "iana", + extensions: ["ktz", "ktr"] + }, + "application/vnd.kde.karbon": { + source: "iana", + extensions: ["karbon"] + }, + "application/vnd.kde.kchart": { + source: "iana", + extensions: ["chrt"] + }, + "application/vnd.kde.kformula": { + source: "iana", + extensions: ["kfo"] + }, + "application/vnd.kde.kivio": { + source: "iana", + extensions: ["flw"] + }, + "application/vnd.kde.kontour": { + source: "iana", + extensions: ["kon"] + }, + "application/vnd.kde.kpresenter": { + source: "iana", + extensions: ["kpr", "kpt"] + }, + "application/vnd.kde.kspread": { + source: "iana", + extensions: ["ksp"] + }, + "application/vnd.kde.kword": { + source: "iana", + extensions: ["kwd", "kwt"] + }, + "application/vnd.kenameaapp": { + source: "iana", + extensions: ["htke"] + }, + "application/vnd.kidspiration": { + source: "iana", + extensions: ["kia"] + }, + "application/vnd.kinar": { + source: "iana", + extensions: ["kne", "knp"] + }, + "application/vnd.koan": { + source: "iana", + extensions: ["skp", "skd", "skt", "skm"] + }, + "application/vnd.kodak-descriptor": { + source: "iana", + extensions: ["sse"] + }, + "application/vnd.las": { + source: "iana" + }, + "application/vnd.las.las+json": { + source: "iana", + compressible: true + }, + "application/vnd.las.las+xml": { + source: "iana", + compressible: true, + extensions: ["lasxml"] + }, + "application/vnd.laszip": { + source: "iana" + }, + "application/vnd.leap+json": { + source: "iana", + compressible: true + }, + "application/vnd.liberty-request+xml": { + source: "iana", + compressible: true + }, + "application/vnd.llamagraphics.life-balance.desktop": { + source: "iana", + extensions: ["lbd"] + }, + "application/vnd.llamagraphics.life-balance.exchange+xml": { + source: "iana", + compressible: true, + extensions: ["lbe"] + }, + "application/vnd.logipipe.circuit+zip": { + source: "iana", + compressible: false + }, + "application/vnd.loom": { + source: "iana" + }, + "application/vnd.lotus-1-2-3": { + source: "iana", + extensions: ["123"] + }, + "application/vnd.lotus-approach": { + source: "iana", + extensions: ["apr"] + }, + "application/vnd.lotus-freelance": { + source: "iana", + extensions: ["pre"] + }, + "application/vnd.lotus-notes": { + source: "iana", + extensions: ["nsf"] + }, + "application/vnd.lotus-organizer": { + source: "iana", + extensions: ["org"] + }, + "application/vnd.lotus-screencam": { + source: "iana", + extensions: ["scm"] + }, + "application/vnd.lotus-wordpro": { + source: "iana", + extensions: ["lwp"] + }, + "application/vnd.macports.portpkg": { + source: "iana", + extensions: ["portpkg"] + }, + "application/vnd.mapbox-vector-tile": { + source: "iana", + extensions: ["mvt"] + }, + "application/vnd.marlin.drm.actiontoken+xml": { + source: "iana", + compressible: true + }, + "application/vnd.marlin.drm.conftoken+xml": { + source: "iana", + compressible: true + }, + "application/vnd.marlin.drm.license+xml": { + source: "iana", + compressible: true + }, + "application/vnd.marlin.drm.mdcf": { + source: "iana" + }, + "application/vnd.mason+json": { + source: "iana", + compressible: true + }, + "application/vnd.maxar.archive.3tz+zip": { + source: "iana", + compressible: false + }, + "application/vnd.maxmind.maxmind-db": { + source: "iana" + }, + "application/vnd.mcd": { + source: "iana", + extensions: ["mcd"] + }, + "application/vnd.medcalcdata": { + source: "iana", + extensions: ["mc1"] + }, + "application/vnd.mediastation.cdkey": { + source: "iana", + extensions: ["cdkey"] + }, + "application/vnd.meridian-slingshot": { + source: "iana" + }, + "application/vnd.mfer": { + source: "iana", + extensions: ["mwf"] + }, + "application/vnd.mfmp": { + source: "iana", + extensions: ["mfm"] + }, + "application/vnd.micro+json": { + source: "iana", + compressible: true + }, + "application/vnd.micrografx.flo": { + source: "iana", + extensions: ["flo"] + }, + "application/vnd.micrografx.igx": { + source: "iana", + extensions: ["igx"] + }, + "application/vnd.microsoft.portable-executable": { + source: "iana" + }, + "application/vnd.microsoft.windows.thumbnail-cache": { + source: "iana" + }, + "application/vnd.miele+json": { + source: "iana", + compressible: true + }, + "application/vnd.mif": { + source: "iana", + extensions: ["mif"] + }, + "application/vnd.minisoft-hp3000-save": { + source: "iana" + }, + "application/vnd.mitsubishi.misty-guard.trustweb": { + source: "iana" + }, + "application/vnd.mobius.daf": { + source: "iana", + extensions: ["daf"] + }, + "application/vnd.mobius.dis": { + source: "iana", + extensions: ["dis"] + }, + "application/vnd.mobius.mbk": { + source: "iana", + extensions: ["mbk"] + }, + "application/vnd.mobius.mqy": { + source: "iana", + extensions: ["mqy"] + }, + "application/vnd.mobius.msl": { + source: "iana", + extensions: ["msl"] + }, + "application/vnd.mobius.plc": { + source: "iana", + extensions: ["plc"] + }, + "application/vnd.mobius.txf": { + source: "iana", + extensions: ["txf"] + }, + "application/vnd.mophun.application": { + source: "iana", + extensions: ["mpn"] + }, + "application/vnd.mophun.certificate": { + source: "iana", + extensions: ["mpc"] + }, + "application/vnd.motorola.flexsuite": { + source: "iana" + }, + "application/vnd.motorola.flexsuite.adsi": { + source: "iana" + }, + "application/vnd.motorola.flexsuite.fis": { + source: "iana" + }, + "application/vnd.motorola.flexsuite.gotap": { + source: "iana" + }, + "application/vnd.motorola.flexsuite.kmr": { + source: "iana" + }, + "application/vnd.motorola.flexsuite.ttc": { + source: "iana" + }, + "application/vnd.motorola.flexsuite.wem": { + source: "iana" + }, + "application/vnd.motorola.iprm": { + source: "iana" + }, + "application/vnd.mozilla.xul+xml": { + source: "iana", + compressible: true, + extensions: ["xul"] + }, + "application/vnd.ms-3mfdocument": { + source: "iana" + }, + "application/vnd.ms-artgalry": { + source: "iana", + extensions: ["cil"] + }, + "application/vnd.ms-asf": { + source: "iana" + }, + "application/vnd.ms-cab-compressed": { + source: "iana", + extensions: ["cab"] + }, + "application/vnd.ms-color.iccprofile": { + source: "apache" + }, + "application/vnd.ms-excel": { + source: "iana", + compressible: false, + extensions: ["xls", "xlm", "xla", "xlc", "xlt", "xlw"] + }, + "application/vnd.ms-excel.addin.macroenabled.12": { + source: "iana", + extensions: ["xlam"] + }, + "application/vnd.ms-excel.sheet.binary.macroenabled.12": { + source: "iana", + extensions: ["xlsb"] + }, + "application/vnd.ms-excel.sheet.macroenabled.12": { + source: "iana", + extensions: ["xlsm"] + }, + "application/vnd.ms-excel.template.macroenabled.12": { + source: "iana", + extensions: ["xltm"] + }, + "application/vnd.ms-fontobject": { + source: "iana", + compressible: true, + extensions: ["eot"] + }, + "application/vnd.ms-htmlhelp": { + source: "iana", + extensions: ["chm"] + }, + "application/vnd.ms-ims": { + source: "iana", + extensions: ["ims"] + }, + "application/vnd.ms-lrm": { + source: "iana", + extensions: ["lrm"] + }, + "application/vnd.ms-office.activex+xml": { + source: "iana", + compressible: true + }, + "application/vnd.ms-officetheme": { + source: "iana", + extensions: ["thmx"] + }, + "application/vnd.ms-opentype": { + source: "apache", + compressible: true + }, + "application/vnd.ms-outlook": { + compressible: false, + extensions: ["msg"] + }, + "application/vnd.ms-package.obfuscated-opentype": { + source: "apache" + }, + "application/vnd.ms-pki.seccat": { + source: "apache", + extensions: ["cat"] + }, + "application/vnd.ms-pki.stl": { + source: "apache", + extensions: ["stl"] + }, + "application/vnd.ms-playready.initiator+xml": { + source: "iana", + compressible: true + }, + "application/vnd.ms-powerpoint": { + source: "iana", + compressible: false, + extensions: ["ppt", "pps", "pot"] + }, + "application/vnd.ms-powerpoint.addin.macroenabled.12": { + source: "iana", + extensions: ["ppam"] + }, + "application/vnd.ms-powerpoint.presentation.macroenabled.12": { + source: "iana", + extensions: ["pptm"] + }, + "application/vnd.ms-powerpoint.slide.macroenabled.12": { + source: "iana", + extensions: ["sldm"] + }, + "application/vnd.ms-powerpoint.slideshow.macroenabled.12": { + source: "iana", + extensions: ["ppsm"] + }, + "application/vnd.ms-powerpoint.template.macroenabled.12": { + source: "iana", + extensions: ["potm"] + }, + "application/vnd.ms-printdevicecapabilities+xml": { + source: "iana", + compressible: true + }, + "application/vnd.ms-printing.printticket+xml": { + source: "apache", + compressible: true + }, + "application/vnd.ms-printschematicket+xml": { + source: "iana", + compressible: true + }, + "application/vnd.ms-project": { + source: "iana", + extensions: ["mpp", "mpt"] + }, + "application/vnd.ms-tnef": { + source: "iana" + }, + "application/vnd.ms-windows.devicepairing": { + source: "iana" + }, + "application/vnd.ms-windows.nwprinting.oob": { + source: "iana" + }, + "application/vnd.ms-windows.printerpairing": { + source: "iana" + }, + "application/vnd.ms-windows.wsd.oob": { + source: "iana" + }, + "application/vnd.ms-wmdrm.lic-chlg-req": { + source: "iana" + }, + "application/vnd.ms-wmdrm.lic-resp": { + source: "iana" + }, + "application/vnd.ms-wmdrm.meter-chlg-req": { + source: "iana" + }, + "application/vnd.ms-wmdrm.meter-resp": { + source: "iana" + }, + "application/vnd.ms-word.document.macroenabled.12": { + source: "iana", + extensions: ["docm"] + }, + "application/vnd.ms-word.template.macroenabled.12": { + source: "iana", + extensions: ["dotm"] + }, + "application/vnd.ms-works": { + source: "iana", + extensions: ["wps", "wks", "wcm", "wdb"] + }, + "application/vnd.ms-wpl": { + source: "iana", + extensions: ["wpl"] + }, + "application/vnd.ms-xpsdocument": { + source: "iana", + compressible: false, + extensions: ["xps"] + }, + "application/vnd.msa-disk-image": { + source: "iana" + }, + "application/vnd.mseq": { + source: "iana", + extensions: ["mseq"] + }, + "application/vnd.msign": { + source: "iana" + }, + "application/vnd.multiad.creator": { + source: "iana" + }, + "application/vnd.multiad.creator.cif": { + source: "iana" + }, + "application/vnd.music-niff": { + source: "iana" + }, + "application/vnd.musician": { + source: "iana", + extensions: ["mus"] + }, + "application/vnd.muvee.style": { + source: "iana", + extensions: ["msty"] + }, + "application/vnd.mynfc": { + source: "iana", + extensions: ["taglet"] + }, + "application/vnd.nacamar.ybrid+json": { + source: "iana", + compressible: true + }, + "application/vnd.ncd.control": { + source: "iana" + }, + "application/vnd.ncd.reference": { + source: "iana" + }, + "application/vnd.nearst.inv+json": { + source: "iana", + compressible: true + }, + "application/vnd.nebumind.line": { + source: "iana" + }, + "application/vnd.nervana": { + source: "iana" + }, + "application/vnd.netfpx": { + source: "iana" + }, + "application/vnd.neurolanguage.nlu": { + source: "iana", + extensions: ["nlu"] + }, + "application/vnd.nimn": { + source: "iana" + }, + "application/vnd.nintendo.nitro.rom": { + source: "iana" + }, + "application/vnd.nintendo.snes.rom": { + source: "iana" + }, + "application/vnd.nitf": { + source: "iana", + extensions: ["ntf", "nitf"] + }, + "application/vnd.noblenet-directory": { + source: "iana", + extensions: ["nnd"] + }, + "application/vnd.noblenet-sealer": { + source: "iana", + extensions: ["nns"] + }, + "application/vnd.noblenet-web": { + source: "iana", + extensions: ["nnw"] + }, + "application/vnd.nokia.catalogs": { + source: "iana" + }, + "application/vnd.nokia.conml+wbxml": { + source: "iana" + }, + "application/vnd.nokia.conml+xml": { + source: "iana", + compressible: true + }, + "application/vnd.nokia.iptv.config+xml": { + source: "iana", + compressible: true + }, + "application/vnd.nokia.isds-radio-presets": { + source: "iana" + }, + "application/vnd.nokia.landmark+wbxml": { + source: "iana" + }, + "application/vnd.nokia.landmark+xml": { + source: "iana", + compressible: true + }, + "application/vnd.nokia.landmarkcollection+xml": { + source: "iana", + compressible: true + }, + "application/vnd.nokia.n-gage.ac+xml": { + source: "iana", + compressible: true, + extensions: ["ac"] + }, + "application/vnd.nokia.n-gage.data": { + source: "iana", + extensions: ["ngdat"] + }, + "application/vnd.nokia.n-gage.symbian.install": { + source: "iana", + extensions: ["n-gage"] + }, + "application/vnd.nokia.ncd": { + source: "iana" + }, + "application/vnd.nokia.pcd+wbxml": { + source: "iana" + }, + "application/vnd.nokia.pcd+xml": { + source: "iana", + compressible: true + }, + "application/vnd.nokia.radio-preset": { + source: "iana", + extensions: ["rpst"] + }, + "application/vnd.nokia.radio-presets": { + source: "iana", + extensions: ["rpss"] + }, + "application/vnd.novadigm.edm": { + source: "iana", + extensions: ["edm"] + }, + "application/vnd.novadigm.edx": { + source: "iana", + extensions: ["edx"] + }, + "application/vnd.novadigm.ext": { + source: "iana", + extensions: ["ext"] + }, + "application/vnd.ntt-local.content-share": { + source: "iana" + }, + "application/vnd.ntt-local.file-transfer": { + source: "iana" + }, + "application/vnd.ntt-local.ogw_remote-access": { + source: "iana" + }, + "application/vnd.ntt-local.sip-ta_remote": { + source: "iana" + }, + "application/vnd.ntt-local.sip-ta_tcp_stream": { + source: "iana" + }, + "application/vnd.oasis.opendocument.chart": { + source: "iana", + extensions: ["odc"] + }, + "application/vnd.oasis.opendocument.chart-template": { + source: "iana", + extensions: ["otc"] + }, + "application/vnd.oasis.opendocument.database": { + source: "iana", + extensions: ["odb"] + }, + "application/vnd.oasis.opendocument.formula": { + source: "iana", + extensions: ["odf"] + }, + "application/vnd.oasis.opendocument.formula-template": { + source: "iana", + extensions: ["odft"] + }, + "application/vnd.oasis.opendocument.graphics": { + source: "iana", + compressible: false, + extensions: ["odg"] + }, + "application/vnd.oasis.opendocument.graphics-template": { + source: "iana", + extensions: ["otg"] + }, + "application/vnd.oasis.opendocument.image": { + source: "iana", + extensions: ["odi"] + }, + "application/vnd.oasis.opendocument.image-template": { + source: "iana", + extensions: ["oti"] + }, + "application/vnd.oasis.opendocument.presentation": { + source: "iana", + compressible: false, + extensions: ["odp"] + }, + "application/vnd.oasis.opendocument.presentation-template": { + source: "iana", + extensions: ["otp"] + }, + "application/vnd.oasis.opendocument.spreadsheet": { + source: "iana", + compressible: false, + extensions: ["ods"] + }, + "application/vnd.oasis.opendocument.spreadsheet-template": { + source: "iana", + extensions: ["ots"] + }, + "application/vnd.oasis.opendocument.text": { + source: "iana", + compressible: false, + extensions: ["odt"] + }, + "application/vnd.oasis.opendocument.text-master": { + source: "iana", + extensions: ["odm"] + }, + "application/vnd.oasis.opendocument.text-template": { + source: "iana", + extensions: ["ott"] + }, + "application/vnd.oasis.opendocument.text-web": { + source: "iana", + extensions: ["oth"] + }, + "application/vnd.obn": { + source: "iana" + }, + "application/vnd.ocf+cbor": { + source: "iana" + }, + "application/vnd.oci.image.manifest.v1+json": { + source: "iana", + compressible: true + }, + "application/vnd.oftn.l10n+json": { + source: "iana", + compressible: true + }, + "application/vnd.oipf.contentaccessdownload+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oipf.contentaccessstreaming+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oipf.cspg-hexbinary": { + source: "iana" + }, + "application/vnd.oipf.dae.svg+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oipf.dae.xhtml+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oipf.mippvcontrolmessage+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oipf.pae.gem": { + source: "iana" + }, + "application/vnd.oipf.spdiscovery+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oipf.spdlist+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oipf.ueprofile+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oipf.userprofile+xml": { + source: "iana", + compressible: true + }, + "application/vnd.olpc-sugar": { + source: "iana", + extensions: ["xo"] + }, + "application/vnd.oma-scws-config": { + source: "iana" + }, + "application/vnd.oma-scws-http-request": { + source: "iana" + }, + "application/vnd.oma-scws-http-response": { + source: "iana" + }, + "application/vnd.oma.bcast.associated-procedure-parameter+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.bcast.drm-trigger+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.bcast.imd+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.bcast.ltkm": { + source: "iana" + }, + "application/vnd.oma.bcast.notification+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.bcast.provisioningtrigger": { + source: "iana" + }, + "application/vnd.oma.bcast.sgboot": { + source: "iana" + }, + "application/vnd.oma.bcast.sgdd+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.bcast.sgdu": { + source: "iana" + }, + "application/vnd.oma.bcast.simple-symbol-container": { + source: "iana" + }, + "application/vnd.oma.bcast.smartcard-trigger+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.bcast.sprov+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.bcast.stkm": { + source: "iana" + }, + "application/vnd.oma.cab-address-book+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.cab-feature-handler+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.cab-pcc+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.cab-subs-invite+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.cab-user-prefs+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.dcd": { + source: "iana" + }, + "application/vnd.oma.dcdc": { + source: "iana" + }, + "application/vnd.oma.dd2+xml": { + source: "iana", + compressible: true, + extensions: ["dd2"] + }, + "application/vnd.oma.drm.risd+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.group-usage-list+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.lwm2m+cbor": { + source: "iana" + }, + "application/vnd.oma.lwm2m+json": { + source: "iana", + compressible: true + }, + "application/vnd.oma.lwm2m+tlv": { + source: "iana" + }, + "application/vnd.oma.pal+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.poc.detailed-progress-report+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.poc.final-report+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.poc.groups+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.poc.invocation-descriptor+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.poc.optimized-progress-report+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.push": { + source: "iana" + }, + "application/vnd.oma.scidm.messages+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oma.xcap-directory+xml": { + source: "iana", + compressible: true + }, + "application/vnd.omads-email+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/vnd.omads-file+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/vnd.omads-folder+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/vnd.omaloc-supl-init": { + source: "iana" + }, + "application/vnd.onepager": { + source: "iana" + }, + "application/vnd.onepagertamp": { + source: "iana" + }, + "application/vnd.onepagertamx": { + source: "iana" + }, + "application/vnd.onepagertat": { + source: "iana" + }, + "application/vnd.onepagertatp": { + source: "iana" + }, + "application/vnd.onepagertatx": { + source: "iana" + }, + "application/vnd.openblox.game+xml": { + source: "iana", + compressible: true, + extensions: ["obgx"] + }, + "application/vnd.openblox.game-binary": { + source: "iana" + }, + "application/vnd.openeye.oeb": { + source: "iana" + }, + "application/vnd.openofficeorg.extension": { + source: "apache", + extensions: ["oxt"] + }, + "application/vnd.openstreetmap.data+xml": { + source: "iana", + compressible: true, + extensions: ["osm"] + }, + "application/vnd.opentimestamps.ots": { + source: "iana" + }, + "application/vnd.openxmlformats-officedocument.custom-properties+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.customxmlproperties+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.drawing+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.drawingml.chart+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.extended-properties+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.comments+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.presentation": { + source: "iana", + compressible: false, + extensions: ["pptx"] + }, + "application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.presprops+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.slide": { + source: "iana", + extensions: ["sldx"] + }, + "application/vnd.openxmlformats-officedocument.presentationml.slide+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.slideshow": { + source: "iana", + extensions: ["ppsx"] + }, + "application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.tags+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.template": { + source: "iana", + extensions: ["potx"] + }, + "application/vnd.openxmlformats-officedocument.presentationml.template.main+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { + source: "iana", + compressible: false, + extensions: ["xlsx"] + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.template": { + source: "iana", + extensions: ["xltx"] + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.theme+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.themeoverride+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.vmldrawing": { + source: "iana" + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.document": { + source: "iana", + compressible: false, + extensions: ["docx"] + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.template": { + source: "iana", + extensions: ["dotx"] + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-package.core-properties+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml": { + source: "iana", + compressible: true + }, + "application/vnd.openxmlformats-package.relationships+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oracle.resource+json": { + source: "iana", + compressible: true + }, + "application/vnd.orange.indata": { + source: "iana" + }, + "application/vnd.osa.netdeploy": { + source: "iana" + }, + "application/vnd.osgeo.mapguide.package": { + source: "iana", + extensions: ["mgp"] + }, + "application/vnd.osgi.bundle": { + source: "iana" + }, + "application/vnd.osgi.dp": { + source: "iana", + extensions: ["dp"] + }, + "application/vnd.osgi.subsystem": { + source: "iana", + extensions: ["esa"] + }, + "application/vnd.otps.ct-kip+xml": { + source: "iana", + compressible: true + }, + "application/vnd.oxli.countgraph": { + source: "iana" + }, + "application/vnd.pagerduty+json": { + source: "iana", + compressible: true + }, + "application/vnd.palm": { + source: "iana", + extensions: ["pdb", "pqa", "oprc"] + }, + "application/vnd.panoply": { + source: "iana" + }, + "application/vnd.paos.xml": { + source: "iana" + }, + "application/vnd.patentdive": { + source: "iana" + }, + "application/vnd.patientecommsdoc": { + source: "iana" + }, + "application/vnd.pawaafile": { + source: "iana", + extensions: ["paw"] + }, + "application/vnd.pcos": { + source: "iana" + }, + "application/vnd.pg.format": { + source: "iana", + extensions: ["str"] + }, + "application/vnd.pg.osasli": { + source: "iana", + extensions: ["ei6"] + }, + "application/vnd.piaccess.application-licence": { + source: "iana" + }, + "application/vnd.picsel": { + source: "iana", + extensions: ["efif"] + }, + "application/vnd.pmi.widget": { + source: "iana", + extensions: ["wg"] + }, + "application/vnd.poc.group-advertisement+xml": { + source: "iana", + compressible: true + }, + "application/vnd.pocketlearn": { + source: "iana", + extensions: ["plf"] + }, + "application/vnd.powerbuilder6": { + source: "iana", + extensions: ["pbd"] + }, + "application/vnd.powerbuilder6-s": { + source: "iana" + }, + "application/vnd.powerbuilder7": { + source: "iana" + }, + "application/vnd.powerbuilder7-s": { + source: "iana" + }, + "application/vnd.powerbuilder75": { + source: "iana" + }, + "application/vnd.powerbuilder75-s": { + source: "iana" + }, + "application/vnd.preminet": { + source: "iana" + }, + "application/vnd.previewsystems.box": { + source: "iana", + extensions: ["box"] + }, + "application/vnd.proteus.magazine": { + source: "iana", + extensions: ["mgz"] + }, + "application/vnd.psfs": { + source: "iana" + }, + "application/vnd.publishare-delta-tree": { + source: "iana", + extensions: ["qps"] + }, + "application/vnd.pvi.ptid1": { + source: "iana", + extensions: ["ptid"] + }, + "application/vnd.pwg-multiplexed": { + source: "iana" + }, + "application/vnd.pwg-xhtml-print+xml": { + source: "iana", + compressible: true + }, + "application/vnd.qualcomm.brew-app-res": { + source: "iana" + }, + "application/vnd.quarantainenet": { + source: "iana" + }, + "application/vnd.quark.quarkxpress": { + source: "iana", + extensions: ["qxd", "qxt", "qwd", "qwt", "qxl", "qxb"] + }, + "application/vnd.quobject-quoxdocument": { + source: "iana" + }, + "application/vnd.radisys.moml+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-audit+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-audit-conf+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-audit-conn+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-audit-dialog+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-audit-stream+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-conf+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-dialog+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-dialog-base+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-dialog-fax-detect+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-dialog-fax-sendrecv+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-dialog-group+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-dialog-speech+xml": { + source: "iana", + compressible: true + }, + "application/vnd.radisys.msml-dialog-transform+xml": { + source: "iana", + compressible: true + }, + "application/vnd.rainstor.data": { + source: "iana" + }, + "application/vnd.rapid": { + source: "iana" + }, + "application/vnd.rar": { + source: "iana", + extensions: ["rar"] + }, + "application/vnd.realvnc.bed": { + source: "iana", + extensions: ["bed"] + }, + "application/vnd.recordare.musicxml": { + source: "iana", + extensions: ["mxl"] + }, + "application/vnd.recordare.musicxml+xml": { + source: "iana", + compressible: true, + extensions: ["musicxml"] + }, + "application/vnd.renlearn.rlprint": { + source: "iana" + }, + "application/vnd.resilient.logic": { + source: "iana" + }, + "application/vnd.restful+json": { + source: "iana", + compressible: true + }, + "application/vnd.rig.cryptonote": { + source: "iana", + extensions: ["cryptonote"] + }, + "application/vnd.rim.cod": { + source: "apache", + extensions: ["cod"] + }, + "application/vnd.rn-realmedia": { + source: "apache", + extensions: ["rm"] + }, + "application/vnd.rn-realmedia-vbr": { + source: "apache", + extensions: ["rmvb"] + }, + "application/vnd.route66.link66+xml": { + source: "iana", + compressible: true, + extensions: ["link66"] + }, + "application/vnd.rs-274x": { + source: "iana" + }, + "application/vnd.ruckus.download": { + source: "iana" + }, + "application/vnd.s3sms": { + source: "iana" + }, + "application/vnd.sailingtracker.track": { + source: "iana", + extensions: ["st"] + }, + "application/vnd.sar": { + source: "iana" + }, + "application/vnd.sbm.cid": { + source: "iana" + }, + "application/vnd.sbm.mid2": { + source: "iana" + }, + "application/vnd.scribus": { + source: "iana" + }, + "application/vnd.sealed.3df": { + source: "iana" + }, + "application/vnd.sealed.csf": { + source: "iana" + }, + "application/vnd.sealed.doc": { + source: "iana" + }, + "application/vnd.sealed.eml": { + source: "iana" + }, + "application/vnd.sealed.mht": { + source: "iana" + }, + "application/vnd.sealed.net": { + source: "iana" + }, + "application/vnd.sealed.ppt": { + source: "iana" + }, + "application/vnd.sealed.tiff": { + source: "iana" + }, + "application/vnd.sealed.xls": { + source: "iana" + }, + "application/vnd.sealedmedia.softseal.html": { + source: "iana" + }, + "application/vnd.sealedmedia.softseal.pdf": { + source: "iana" + }, + "application/vnd.seemail": { + source: "iana", + extensions: ["see"] + }, + "application/vnd.seis+json": { + source: "iana", + compressible: true + }, + "application/vnd.sema": { + source: "iana", + extensions: ["sema"] + }, + "application/vnd.semd": { + source: "iana", + extensions: ["semd"] + }, + "application/vnd.semf": { + source: "iana", + extensions: ["semf"] + }, + "application/vnd.shade-save-file": { + source: "iana" + }, + "application/vnd.shana.informed.formdata": { + source: "iana", + extensions: ["ifm"] + }, + "application/vnd.shana.informed.formtemplate": { + source: "iana", + extensions: ["itp"] + }, + "application/vnd.shana.informed.interchange": { + source: "iana", + extensions: ["iif"] + }, + "application/vnd.shana.informed.package": { + source: "iana", + extensions: ["ipk"] + }, + "application/vnd.shootproof+json": { + source: "iana", + compressible: true + }, + "application/vnd.shopkick+json": { + source: "iana", + compressible: true + }, + "application/vnd.shp": { + source: "iana" + }, + "application/vnd.shx": { + source: "iana" + }, + "application/vnd.sigrok.session": { + source: "iana" + }, + "application/vnd.simtech-mindmapper": { + source: "iana", + extensions: ["twd", "twds"] + }, + "application/vnd.siren+json": { + source: "iana", + compressible: true + }, + "application/vnd.smaf": { + source: "iana", + extensions: ["mmf"] + }, + "application/vnd.smart.notebook": { + source: "iana" + }, + "application/vnd.smart.teacher": { + source: "iana", + extensions: ["teacher"] + }, + "application/vnd.snesdev-page-table": { + source: "iana" + }, + "application/vnd.software602.filler.form+xml": { + source: "iana", + compressible: true, + extensions: ["fo"] + }, + "application/vnd.software602.filler.form-xml-zip": { + source: "iana" + }, + "application/vnd.solent.sdkm+xml": { + source: "iana", + compressible: true, + extensions: ["sdkm", "sdkd"] + }, + "application/vnd.spotfire.dxp": { + source: "iana", + extensions: ["dxp"] + }, + "application/vnd.spotfire.sfs": { + source: "iana", + extensions: ["sfs"] + }, + "application/vnd.sqlite3": { + source: "iana" + }, + "application/vnd.sss-cod": { + source: "iana" + }, + "application/vnd.sss-dtf": { + source: "iana" + }, + "application/vnd.sss-ntf": { + source: "iana" + }, + "application/vnd.stardivision.calc": { + source: "apache", + extensions: ["sdc"] + }, + "application/vnd.stardivision.draw": { + source: "apache", + extensions: ["sda"] + }, + "application/vnd.stardivision.impress": { + source: "apache", + extensions: ["sdd"] + }, + "application/vnd.stardivision.math": { + source: "apache", + extensions: ["smf"] + }, + "application/vnd.stardivision.writer": { + source: "apache", + extensions: ["sdw", "vor"] + }, + "application/vnd.stardivision.writer-global": { + source: "apache", + extensions: ["sgl"] + }, + "application/vnd.stepmania.package": { + source: "iana", + extensions: ["smzip"] + }, + "application/vnd.stepmania.stepchart": { + source: "iana", + extensions: ["sm"] + }, + "application/vnd.street-stream": { + source: "iana" + }, + "application/vnd.sun.wadl+xml": { + source: "iana", + compressible: true, + extensions: ["wadl"] + }, + "application/vnd.sun.xml.calc": { + source: "apache", + extensions: ["sxc"] + }, + "application/vnd.sun.xml.calc.template": { + source: "apache", + extensions: ["stc"] + }, + "application/vnd.sun.xml.draw": { + source: "apache", + extensions: ["sxd"] + }, + "application/vnd.sun.xml.draw.template": { + source: "apache", + extensions: ["std"] + }, + "application/vnd.sun.xml.impress": { + source: "apache", + extensions: ["sxi"] + }, + "application/vnd.sun.xml.impress.template": { + source: "apache", + extensions: ["sti"] + }, + "application/vnd.sun.xml.math": { + source: "apache", + extensions: ["sxm"] + }, + "application/vnd.sun.xml.writer": { + source: "apache", + extensions: ["sxw"] + }, + "application/vnd.sun.xml.writer.global": { + source: "apache", + extensions: ["sxg"] + }, + "application/vnd.sun.xml.writer.template": { + source: "apache", + extensions: ["stw"] + }, + "application/vnd.sus-calendar": { + source: "iana", + extensions: ["sus", "susp"] + }, + "application/vnd.svd": { + source: "iana", + extensions: ["svd"] + }, + "application/vnd.swiftview-ics": { + source: "iana" + }, + "application/vnd.sycle+xml": { + source: "iana", + compressible: true + }, + "application/vnd.syft+json": { + source: "iana", + compressible: true + }, + "application/vnd.symbian.install": { + source: "apache", + extensions: ["sis", "sisx"] + }, + "application/vnd.syncml+xml": { + source: "iana", + charset: "UTF-8", + compressible: true, + extensions: ["xsm"] + }, + "application/vnd.syncml.dm+wbxml": { + source: "iana", + charset: "UTF-8", + extensions: ["bdm"] + }, + "application/vnd.syncml.dm+xml": { + source: "iana", + charset: "UTF-8", + compressible: true, + extensions: ["xdm"] + }, + "application/vnd.syncml.dm.notification": { + source: "iana" + }, + "application/vnd.syncml.dmddf+wbxml": { + source: "iana" + }, + "application/vnd.syncml.dmddf+xml": { + source: "iana", + charset: "UTF-8", + compressible: true, + extensions: ["ddf"] + }, + "application/vnd.syncml.dmtnds+wbxml": { + source: "iana" + }, + "application/vnd.syncml.dmtnds+xml": { + source: "iana", + charset: "UTF-8", + compressible: true + }, + "application/vnd.syncml.ds.notification": { + source: "iana" + }, + "application/vnd.tableschema+json": { + source: "iana", + compressible: true + }, + "application/vnd.tao.intent-module-archive": { + source: "iana", + extensions: ["tao"] + }, + "application/vnd.tcpdump.pcap": { + source: "iana", + extensions: ["pcap", "cap", "dmp"] + }, + "application/vnd.think-cell.ppttc+json": { + source: "iana", + compressible: true + }, + "application/vnd.tmd.mediaflex.api+xml": { + source: "iana", + compressible: true + }, + "application/vnd.tml": { + source: "iana" + }, + "application/vnd.tmobile-livetv": { + source: "iana", + extensions: ["tmo"] + }, + "application/vnd.tri.onesource": { + source: "iana" + }, + "application/vnd.trid.tpt": { + source: "iana", + extensions: ["tpt"] + }, + "application/vnd.triscape.mxs": { + source: "iana", + extensions: ["mxs"] + }, + "application/vnd.trueapp": { + source: "iana", + extensions: ["tra"] + }, + "application/vnd.truedoc": { + source: "iana" + }, + "application/vnd.ubisoft.webplayer": { + source: "iana" + }, + "application/vnd.ufdl": { + source: "iana", + extensions: ["ufd", "ufdl"] + }, + "application/vnd.uiq.theme": { + source: "iana", + extensions: ["utz"] + }, + "application/vnd.umajin": { + source: "iana", + extensions: ["umj"] + }, + "application/vnd.unity": { + source: "iana", + extensions: ["unityweb"] + }, + "application/vnd.uoml+xml": { + source: "iana", + compressible: true, + extensions: ["uoml"] + }, + "application/vnd.uplanet.alert": { + source: "iana" + }, + "application/vnd.uplanet.alert-wbxml": { + source: "iana" + }, + "application/vnd.uplanet.bearer-choice": { + source: "iana" + }, + "application/vnd.uplanet.bearer-choice-wbxml": { + source: "iana" + }, + "application/vnd.uplanet.cacheop": { + source: "iana" + }, + "application/vnd.uplanet.cacheop-wbxml": { + source: "iana" + }, + "application/vnd.uplanet.channel": { + source: "iana" + }, + "application/vnd.uplanet.channel-wbxml": { + source: "iana" + }, + "application/vnd.uplanet.list": { + source: "iana" + }, + "application/vnd.uplanet.list-wbxml": { + source: "iana" + }, + "application/vnd.uplanet.listcmd": { + source: "iana" + }, + "application/vnd.uplanet.listcmd-wbxml": { + source: "iana" + }, + "application/vnd.uplanet.signal": { + source: "iana" + }, + "application/vnd.uri-map": { + source: "iana" + }, + "application/vnd.valve.source.material": { + source: "iana" + }, + "application/vnd.vcx": { + source: "iana", + extensions: ["vcx"] + }, + "application/vnd.vd-study": { + source: "iana" + }, + "application/vnd.vectorworks": { + source: "iana" + }, + "application/vnd.vel+json": { + source: "iana", + compressible: true + }, + "application/vnd.verimatrix.vcas": { + source: "iana" + }, + "application/vnd.veritone.aion+json": { + source: "iana", + compressible: true + }, + "application/vnd.veryant.thin": { + source: "iana" + }, + "application/vnd.ves.encrypted": { + source: "iana" + }, + "application/vnd.vidsoft.vidconference": { + source: "iana" + }, + "application/vnd.visio": { + source: "iana", + extensions: ["vsd", "vst", "vss", "vsw"] + }, + "application/vnd.visionary": { + source: "iana", + extensions: ["vis"] + }, + "application/vnd.vividence.scriptfile": { + source: "iana" + }, + "application/vnd.vsf": { + source: "iana", + extensions: ["vsf"] + }, + "application/vnd.wap.sic": { + source: "iana" + }, + "application/vnd.wap.slc": { + source: "iana" + }, + "application/vnd.wap.wbxml": { + source: "iana", + charset: "UTF-8", + extensions: ["wbxml"] + }, + "application/vnd.wap.wmlc": { + source: "iana", + extensions: ["wmlc"] + }, + "application/vnd.wap.wmlscriptc": { + source: "iana", + extensions: ["wmlsc"] + }, + "application/vnd.webturbo": { + source: "iana", + extensions: ["wtb"] + }, + "application/vnd.wfa.dpp": { + source: "iana" + }, + "application/vnd.wfa.p2p": { + source: "iana" + }, + "application/vnd.wfa.wsc": { + source: "iana" + }, + "application/vnd.windows.devicepairing": { + source: "iana" + }, + "application/vnd.wmc": { + source: "iana" + }, + "application/vnd.wmf.bootstrap": { + source: "iana" + }, + "application/vnd.wolfram.mathematica": { + source: "iana" + }, + "application/vnd.wolfram.mathematica.package": { + source: "iana" + }, + "application/vnd.wolfram.player": { + source: "iana", + extensions: ["nbp"] + }, + "application/vnd.wordperfect": { + source: "iana", + extensions: ["wpd"] + }, + "application/vnd.wqd": { + source: "iana", + extensions: ["wqd"] + }, + "application/vnd.wrq-hp3000-labelled": { + source: "iana" + }, + "application/vnd.wt.stf": { + source: "iana", + extensions: ["stf"] + }, + "application/vnd.wv.csp+wbxml": { + source: "iana" + }, + "application/vnd.wv.csp+xml": { + source: "iana", + compressible: true + }, + "application/vnd.wv.ssp+xml": { + source: "iana", + compressible: true + }, + "application/vnd.xacml+json": { + source: "iana", + compressible: true + }, + "application/vnd.xara": { + source: "iana", + extensions: ["xar"] + }, + "application/vnd.xfdl": { + source: "iana", + extensions: ["xfdl"] + }, + "application/vnd.xfdl.webform": { + source: "iana" + }, + "application/vnd.xmi+xml": { + source: "iana", + compressible: true + }, + "application/vnd.xmpie.cpkg": { + source: "iana" + }, + "application/vnd.xmpie.dpkg": { + source: "iana" + }, + "application/vnd.xmpie.plan": { + source: "iana" + }, + "application/vnd.xmpie.ppkg": { + source: "iana" + }, + "application/vnd.xmpie.xlim": { + source: "iana" + }, + "application/vnd.yamaha.hv-dic": { + source: "iana", + extensions: ["hvd"] + }, + "application/vnd.yamaha.hv-script": { + source: "iana", + extensions: ["hvs"] + }, + "application/vnd.yamaha.hv-voice": { + source: "iana", + extensions: ["hvp"] + }, + "application/vnd.yamaha.openscoreformat": { + source: "iana", + extensions: ["osf"] + }, + "application/vnd.yamaha.openscoreformat.osfpvg+xml": { + source: "iana", + compressible: true, + extensions: ["osfpvg"] + }, + "application/vnd.yamaha.remote-setup": { + source: "iana" + }, + "application/vnd.yamaha.smaf-audio": { + source: "iana", + extensions: ["saf"] + }, + "application/vnd.yamaha.smaf-phrase": { + source: "iana", + extensions: ["spf"] + }, + "application/vnd.yamaha.through-ngn": { + source: "iana" + }, + "application/vnd.yamaha.tunnel-udpencap": { + source: "iana" + }, + "application/vnd.yaoweme": { + source: "iana" + }, + "application/vnd.yellowriver-custom-menu": { + source: "iana", + extensions: ["cmp"] + }, + "application/vnd.youtube.yt": { + source: "iana" + }, + "application/vnd.zul": { + source: "iana", + extensions: ["zir", "zirz"] + }, + "application/vnd.zzazz.deck+xml": { + source: "iana", + compressible: true, + extensions: ["zaz"] + }, + "application/voicexml+xml": { + source: "iana", + compressible: true, + extensions: ["vxml"] + }, + "application/voucher-cms+json": { + source: "iana", + compressible: true + }, + "application/vq-rtcpxr": { + source: "iana" + }, + "application/wasm": { + source: "iana", + compressible: true, + extensions: ["wasm"] + }, + "application/watcherinfo+xml": { + source: "iana", + compressible: true, + extensions: ["wif"] + }, + "application/webpush-options+json": { + source: "iana", + compressible: true + }, + "application/whoispp-query": { + source: "iana" + }, + "application/whoispp-response": { + source: "iana" + }, + "application/widget": { + source: "iana", + extensions: ["wgt"] + }, + "application/winhlp": { + source: "apache", + extensions: ["hlp"] + }, + "application/wita": { + source: "iana" + }, + "application/wordperfect5.1": { + source: "iana" + }, + "application/wsdl+xml": { + source: "iana", + compressible: true, + extensions: ["wsdl"] + }, + "application/wspolicy+xml": { + source: "iana", + compressible: true, + extensions: ["wspolicy"] + }, + "application/x-7z-compressed": { + source: "apache", + compressible: false, + extensions: ["7z"] + }, + "application/x-abiword": { + source: "apache", + extensions: ["abw"] + }, + "application/x-ace-compressed": { + source: "apache", + extensions: ["ace"] + }, + "application/x-amf": { + source: "apache" + }, + "application/x-apple-diskimage": { + source: "apache", + extensions: ["dmg"] + }, + "application/x-arj": { + compressible: false, + extensions: ["arj"] + }, + "application/x-authorware-bin": { + source: "apache", + extensions: ["aab", "x32", "u32", "vox"] + }, + "application/x-authorware-map": { + source: "apache", + extensions: ["aam"] + }, + "application/x-authorware-seg": { + source: "apache", + extensions: ["aas"] + }, + "application/x-bcpio": { + source: "apache", + extensions: ["bcpio"] + }, + "application/x-bdoc": { + compressible: false, + extensions: ["bdoc"] + }, + "application/x-bittorrent": { + source: "apache", + extensions: ["torrent"] + }, + "application/x-blorb": { + source: "apache", + extensions: ["blb", "blorb"] + }, + "application/x-bzip": { + source: "apache", + compressible: false, + extensions: ["bz"] + }, + "application/x-bzip2": { + source: "apache", + compressible: false, + extensions: ["bz2", "boz"] + }, + "application/x-cbr": { + source: "apache", + extensions: ["cbr", "cba", "cbt", "cbz", "cb7"] + }, + "application/x-cdlink": { + source: "apache", + extensions: ["vcd"] + }, + "application/x-cfs-compressed": { + source: "apache", + extensions: ["cfs"] + }, + "application/x-chat": { + source: "apache", + extensions: ["chat"] + }, + "application/x-chess-pgn": { + source: "apache", + extensions: ["pgn"] + }, + "application/x-chrome-extension": { + extensions: ["crx"] + }, + "application/x-cocoa": { + source: "nginx", + extensions: ["cco"] + }, + "application/x-compress": { + source: "apache" + }, + "application/x-conference": { + source: "apache", + extensions: ["nsc"] + }, + "application/x-cpio": { + source: "apache", + extensions: ["cpio"] + }, + "application/x-csh": { + source: "apache", + extensions: ["csh"] + }, + "application/x-deb": { + compressible: false + }, + "application/x-debian-package": { + source: "apache", + extensions: ["deb", "udeb"] + }, + "application/x-dgc-compressed": { + source: "apache", + extensions: ["dgc"] + }, + "application/x-director": { + source: "apache", + extensions: ["dir", "dcr", "dxr", "cst", "cct", "cxt", "w3d", "fgd", "swa"] + }, + "application/x-doom": { + source: "apache", + extensions: ["wad"] + }, + "application/x-dtbncx+xml": { + source: "apache", + compressible: true, + extensions: ["ncx"] + }, + "application/x-dtbook+xml": { + source: "apache", + compressible: true, + extensions: ["dtb"] + }, + "application/x-dtbresource+xml": { + source: "apache", + compressible: true, + extensions: ["res"] + }, + "application/x-dvi": { + source: "apache", + compressible: false, + extensions: ["dvi"] + }, + "application/x-envoy": { + source: "apache", + extensions: ["evy"] + }, + "application/x-eva": { + source: "apache", + extensions: ["eva"] + }, + "application/x-font-bdf": { + source: "apache", + extensions: ["bdf"] + }, + "application/x-font-dos": { + source: "apache" + }, + "application/x-font-framemaker": { + source: "apache" + }, + "application/x-font-ghostscript": { + source: "apache", + extensions: ["gsf"] + }, + "application/x-font-libgrx": { + source: "apache" + }, + "application/x-font-linux-psf": { + source: "apache", + extensions: ["psf"] + }, + "application/x-font-pcf": { + source: "apache", + extensions: ["pcf"] + }, + "application/x-font-snf": { + source: "apache", + extensions: ["snf"] + }, + "application/x-font-speedo": { + source: "apache" + }, + "application/x-font-sunos-news": { + source: "apache" + }, + "application/x-font-type1": { + source: "apache", + extensions: ["pfa", "pfb", "pfm", "afm"] + }, + "application/x-font-vfont": { + source: "apache" + }, + "application/x-freearc": { + source: "apache", + extensions: ["arc"] + }, + "application/x-futuresplash": { + source: "apache", + extensions: ["spl"] + }, + "application/x-gca-compressed": { + source: "apache", + extensions: ["gca"] + }, + "application/x-glulx": { + source: "apache", + extensions: ["ulx"] + }, + "application/x-gnumeric": { + source: "apache", + extensions: ["gnumeric"] + }, + "application/x-gramps-xml": { + source: "apache", + extensions: ["gramps"] + }, + "application/x-gtar": { + source: "apache", + extensions: ["gtar"] + }, + "application/x-gzip": { + source: "apache" + }, + "application/x-hdf": { + source: "apache", + extensions: ["hdf"] + }, + "application/x-httpd-php": { + compressible: true, + extensions: ["php"] + }, + "application/x-install-instructions": { + source: "apache", + extensions: ["install"] + }, + "application/x-iso9660-image": { + source: "apache", + extensions: ["iso"] + }, + "application/x-iwork-keynote-sffkey": { + extensions: ["key"] + }, + "application/x-iwork-numbers-sffnumbers": { + extensions: ["numbers"] + }, + "application/x-iwork-pages-sffpages": { + extensions: ["pages"] + }, + "application/x-java-archive-diff": { + source: "nginx", + extensions: ["jardiff"] + }, + "application/x-java-jnlp-file": { + source: "apache", + compressible: false, + extensions: ["jnlp"] + }, + "application/x-javascript": { + compressible: true + }, + "application/x-keepass2": { + extensions: ["kdbx"] + }, + "application/x-latex": { + source: "apache", + compressible: false, + extensions: ["latex"] + }, + "application/x-lua-bytecode": { + extensions: ["luac"] + }, + "application/x-lzh-compressed": { + source: "apache", + extensions: ["lzh", "lha"] + }, + "application/x-makeself": { + source: "nginx", + extensions: ["run"] + }, + "application/x-mie": { + source: "apache", + extensions: ["mie"] + }, + "application/x-mobipocket-ebook": { + source: "apache", + extensions: ["prc", "mobi"] + }, + "application/x-mpegurl": { + compressible: false + }, + "application/x-ms-application": { + source: "apache", + extensions: ["application"] + }, + "application/x-ms-shortcut": { + source: "apache", + extensions: ["lnk"] + }, + "application/x-ms-wmd": { + source: "apache", + extensions: ["wmd"] + }, + "application/x-ms-wmz": { + source: "apache", + extensions: ["wmz"] + }, + "application/x-ms-xbap": { + source: "apache", + extensions: ["xbap"] + }, + "application/x-msaccess": { + source: "apache", + extensions: ["mdb"] + }, + "application/x-msbinder": { + source: "apache", + extensions: ["obd"] + }, + "application/x-mscardfile": { + source: "apache", + extensions: ["crd"] + }, + "application/x-msclip": { + source: "apache", + extensions: ["clp"] + }, + "application/x-msdos-program": { + extensions: ["exe"] + }, + "application/x-msdownload": { + source: "apache", + extensions: ["exe", "dll", "com", "bat", "msi"] + }, + "application/x-msmediaview": { + source: "apache", + extensions: ["mvb", "m13", "m14"] + }, + "application/x-msmetafile": { + source: "apache", + extensions: ["wmf", "wmz", "emf", "emz"] + }, + "application/x-msmoney": { + source: "apache", + extensions: ["mny"] + }, + "application/x-mspublisher": { + source: "apache", + extensions: ["pub"] + }, + "application/x-msschedule": { + source: "apache", + extensions: ["scd"] + }, + "application/x-msterminal": { + source: "apache", + extensions: ["trm"] + }, + "application/x-mswrite": { + source: "apache", + extensions: ["wri"] + }, + "application/x-netcdf": { + source: "apache", + extensions: ["nc", "cdf"] + }, + "application/x-ns-proxy-autoconfig": { + compressible: true, + extensions: ["pac"] + }, + "application/x-nzb": { + source: "apache", + extensions: ["nzb"] + }, + "application/x-perl": { + source: "nginx", + extensions: ["pl", "pm"] + }, + "application/x-pilot": { + source: "nginx", + extensions: ["prc", "pdb"] + }, + "application/x-pkcs12": { + source: "apache", + compressible: false, + extensions: ["p12", "pfx"] + }, + "application/x-pkcs7-certificates": { + source: "apache", + extensions: ["p7b", "spc"] + }, + "application/x-pkcs7-certreqresp": { + source: "apache", + extensions: ["p7r"] + }, + "application/x-pki-message": { + source: "iana" + }, + "application/x-rar-compressed": { + source: "apache", + compressible: false, + extensions: ["rar"] + }, + "application/x-redhat-package-manager": { + source: "nginx", + extensions: ["rpm"] + }, + "application/x-research-info-systems": { + source: "apache", + extensions: ["ris"] + }, + "application/x-sea": { + source: "nginx", + extensions: ["sea"] + }, + "application/x-sh": { + source: "apache", + compressible: true, + extensions: ["sh"] + }, + "application/x-shar": { + source: "apache", + extensions: ["shar"] + }, + "application/x-shockwave-flash": { + source: "apache", + compressible: false, + extensions: ["swf"] + }, + "application/x-silverlight-app": { + source: "apache", + extensions: ["xap"] + }, + "application/x-sql": { + source: "apache", + extensions: ["sql"] + }, + "application/x-stuffit": { + source: "apache", + compressible: false, + extensions: ["sit"] + }, + "application/x-stuffitx": { + source: "apache", + extensions: ["sitx"] + }, + "application/x-subrip": { + source: "apache", + extensions: ["srt"] + }, + "application/x-sv4cpio": { + source: "apache", + extensions: ["sv4cpio"] + }, + "application/x-sv4crc": { + source: "apache", + extensions: ["sv4crc"] + }, + "application/x-t3vm-image": { + source: "apache", + extensions: ["t3"] + }, + "application/x-tads": { + source: "apache", + extensions: ["gam"] + }, + "application/x-tar": { + source: "apache", + compressible: true, + extensions: ["tar"] + }, + "application/x-tcl": { + source: "apache", + extensions: ["tcl", "tk"] + }, + "application/x-tex": { + source: "apache", + extensions: ["tex"] + }, + "application/x-tex-tfm": { + source: "apache", + extensions: ["tfm"] + }, + "application/x-texinfo": { + source: "apache", + extensions: ["texinfo", "texi"] + }, + "application/x-tgif": { + source: "apache", + extensions: ["obj"] + }, + "application/x-ustar": { + source: "apache", + extensions: ["ustar"] + }, + "application/x-virtualbox-hdd": { + compressible: true, + extensions: ["hdd"] + }, + "application/x-virtualbox-ova": { + compressible: true, + extensions: ["ova"] + }, + "application/x-virtualbox-ovf": { + compressible: true, + extensions: ["ovf"] + }, + "application/x-virtualbox-vbox": { + compressible: true, + extensions: ["vbox"] + }, + "application/x-virtualbox-vbox-extpack": { + compressible: false, + extensions: ["vbox-extpack"] + }, + "application/x-virtualbox-vdi": { + compressible: true, + extensions: ["vdi"] + }, + "application/x-virtualbox-vhd": { + compressible: true, + extensions: ["vhd"] + }, + "application/x-virtualbox-vmdk": { + compressible: true, + extensions: ["vmdk"] + }, + "application/x-wais-source": { + source: "apache", + extensions: ["src"] + }, + "application/x-web-app-manifest+json": { + compressible: true, + extensions: ["webapp"] + }, + "application/x-www-form-urlencoded": { + source: "iana", + compressible: true + }, + "application/x-x509-ca-cert": { + source: "iana", + extensions: ["der", "crt", "pem"] + }, + "application/x-x509-ca-ra-cert": { + source: "iana" + }, + "application/x-x509-next-ca-cert": { + source: "iana" + }, + "application/x-xfig": { + source: "apache", + extensions: ["fig"] + }, + "application/x-xliff+xml": { + source: "apache", + compressible: true, + extensions: ["xlf"] + }, + "application/x-xpinstall": { + source: "apache", + compressible: false, + extensions: ["xpi"] + }, + "application/x-xz": { + source: "apache", + extensions: ["xz"] + }, + "application/x-zmachine": { + source: "apache", + extensions: ["z1", "z2", "z3", "z4", "z5", "z6", "z7", "z8"] + }, + "application/x400-bp": { + source: "iana" + }, + "application/xacml+xml": { + source: "iana", + compressible: true + }, + "application/xaml+xml": { + source: "apache", + compressible: true, + extensions: ["xaml"] + }, + "application/xcap-att+xml": { + source: "iana", + compressible: true, + extensions: ["xav"] + }, + "application/xcap-caps+xml": { + source: "iana", + compressible: true, + extensions: ["xca"] + }, + "application/xcap-diff+xml": { + source: "iana", + compressible: true, + extensions: ["xdf"] + }, + "application/xcap-el+xml": { + source: "iana", + compressible: true, + extensions: ["xel"] + }, + "application/xcap-error+xml": { + source: "iana", + compressible: true + }, + "application/xcap-ns+xml": { + source: "iana", + compressible: true, + extensions: ["xns"] + }, + "application/xcon-conference-info+xml": { + source: "iana", + compressible: true + }, + "application/xcon-conference-info-diff+xml": { + source: "iana", + compressible: true + }, + "application/xenc+xml": { + source: "iana", + compressible: true, + extensions: ["xenc"] + }, + "application/xhtml+xml": { + source: "iana", + compressible: true, + extensions: ["xhtml", "xht"] + }, + "application/xhtml-voice+xml": { + source: "apache", + compressible: true + }, + "application/xliff+xml": { + source: "iana", + compressible: true, + extensions: ["xlf"] + }, + "application/xml": { + source: "iana", + compressible: true, + extensions: ["xml", "xsl", "xsd", "rng"] + }, + "application/xml-dtd": { + source: "iana", + compressible: true, + extensions: ["dtd"] + }, + "application/xml-external-parsed-entity": { + source: "iana" + }, + "application/xml-patch+xml": { + source: "iana", + compressible: true + }, + "application/xmpp+xml": { + source: "iana", + compressible: true + }, + "application/xop+xml": { + source: "iana", + compressible: true, + extensions: ["xop"] + }, + "application/xproc+xml": { + source: "apache", + compressible: true, + extensions: ["xpl"] + }, + "application/xslt+xml": { + source: "iana", + compressible: true, + extensions: ["xsl", "xslt"] + }, + "application/xspf+xml": { + source: "apache", + compressible: true, + extensions: ["xspf"] + }, + "application/xv+xml": { + source: "iana", + compressible: true, + extensions: ["mxml", "xhvml", "xvml", "xvm"] + }, + "application/yang": { + source: "iana", + extensions: ["yang"] + }, + "application/yang-data+json": { + source: "iana", + compressible: true + }, + "application/yang-data+xml": { + source: "iana", + compressible: true + }, + "application/yang-patch+json": { + source: "iana", + compressible: true + }, + "application/yang-patch+xml": { + source: "iana", + compressible: true + }, + "application/yin+xml": { + source: "iana", + compressible: true, + extensions: ["yin"] + }, + "application/zip": { + source: "iana", + compressible: false, + extensions: ["zip"] + }, + "application/zlib": { + source: "iana" + }, + "application/zstd": { + source: "iana" + }, + "audio/1d-interleaved-parityfec": { + source: "iana" + }, + "audio/32kadpcm": { + source: "iana" + }, + "audio/3gpp": { + source: "iana", + compressible: false, + extensions: ["3gpp"] + }, + "audio/3gpp2": { + source: "iana" + }, + "audio/aac": { + source: "iana" + }, + "audio/ac3": { + source: "iana" + }, + "audio/adpcm": { + source: "apache", + extensions: ["adp"] + }, + "audio/amr": { + source: "iana", + extensions: ["amr"] + }, + "audio/amr-wb": { + source: "iana" + }, + "audio/amr-wb+": { + source: "iana" + }, + "audio/aptx": { + source: "iana" + }, + "audio/asc": { + source: "iana" + }, + "audio/atrac-advanced-lossless": { + source: "iana" + }, + "audio/atrac-x": { + source: "iana" + }, + "audio/atrac3": { + source: "iana" + }, + "audio/basic": { + source: "iana", + compressible: false, + extensions: ["au", "snd"] + }, + "audio/bv16": { + source: "iana" + }, + "audio/bv32": { + source: "iana" + }, + "audio/clearmode": { + source: "iana" + }, + "audio/cn": { + source: "iana" + }, + "audio/dat12": { + source: "iana" + }, + "audio/dls": { + source: "iana" + }, + "audio/dsr-es201108": { + source: "iana" + }, + "audio/dsr-es202050": { + source: "iana" + }, + "audio/dsr-es202211": { + source: "iana" + }, + "audio/dsr-es202212": { + source: "iana" + }, + "audio/dv": { + source: "iana" + }, + "audio/dvi4": { + source: "iana" + }, + "audio/eac3": { + source: "iana" + }, + "audio/encaprtp": { + source: "iana" + }, + "audio/evrc": { + source: "iana" + }, + "audio/evrc-qcp": { + source: "iana" + }, + "audio/evrc0": { + source: "iana" + }, + "audio/evrc1": { + source: "iana" + }, + "audio/evrcb": { + source: "iana" + }, + "audio/evrcb0": { + source: "iana" + }, + "audio/evrcb1": { + source: "iana" + }, + "audio/evrcnw": { + source: "iana" + }, + "audio/evrcnw0": { + source: "iana" + }, + "audio/evrcnw1": { + source: "iana" + }, + "audio/evrcwb": { + source: "iana" + }, + "audio/evrcwb0": { + source: "iana" + }, + "audio/evrcwb1": { + source: "iana" + }, + "audio/evs": { + source: "iana" + }, + "audio/flexfec": { + source: "iana" + }, + "audio/fwdred": { + source: "iana" + }, + "audio/g711-0": { + source: "iana" + }, + "audio/g719": { + source: "iana" + }, + "audio/g722": { + source: "iana" + }, + "audio/g7221": { + source: "iana" + }, + "audio/g723": { + source: "iana" + }, + "audio/g726-16": { + source: "iana" + }, + "audio/g726-24": { + source: "iana" + }, + "audio/g726-32": { + source: "iana" + }, + "audio/g726-40": { + source: "iana" + }, + "audio/g728": { + source: "iana" + }, + "audio/g729": { + source: "iana" + }, + "audio/g7291": { + source: "iana" + }, + "audio/g729d": { + source: "iana" + }, + "audio/g729e": { + source: "iana" + }, + "audio/gsm": { + source: "iana" + }, + "audio/gsm-efr": { + source: "iana" + }, + "audio/gsm-hr-08": { + source: "iana" + }, + "audio/ilbc": { + source: "iana" + }, + "audio/ip-mr_v2.5": { + source: "iana" + }, + "audio/isac": { + source: "apache" + }, + "audio/l16": { + source: "iana" + }, + "audio/l20": { + source: "iana" + }, + "audio/l24": { + source: "iana", + compressible: false + }, + "audio/l8": { + source: "iana" + }, + "audio/lpc": { + source: "iana" + }, + "audio/melp": { + source: "iana" + }, + "audio/melp1200": { + source: "iana" + }, + "audio/melp2400": { + source: "iana" + }, + "audio/melp600": { + source: "iana" + }, + "audio/mhas": { + source: "iana" + }, + "audio/midi": { + source: "apache", + extensions: ["mid", "midi", "kar", "rmi"] + }, + "audio/mobile-xmf": { + source: "iana", + extensions: ["mxmf"] + }, + "audio/mp3": { + compressible: false, + extensions: ["mp3"] + }, + "audio/mp4": { + source: "iana", + compressible: false, + extensions: ["m4a", "mp4a"] + }, + "audio/mp4a-latm": { + source: "iana" + }, + "audio/mpa": { + source: "iana" + }, + "audio/mpa-robust": { + source: "iana" + }, + "audio/mpeg": { + source: "iana", + compressible: false, + extensions: ["mpga", "mp2", "mp2a", "mp3", "m2a", "m3a"] + }, + "audio/mpeg4-generic": { + source: "iana" + }, + "audio/musepack": { + source: "apache" + }, + "audio/ogg": { + source: "iana", + compressible: false, + extensions: ["oga", "ogg", "spx", "opus"] + }, + "audio/opus": { + source: "iana" + }, + "audio/parityfec": { + source: "iana" + }, + "audio/pcma": { + source: "iana" + }, + "audio/pcma-wb": { + source: "iana" + }, + "audio/pcmu": { + source: "iana" + }, + "audio/pcmu-wb": { + source: "iana" + }, + "audio/prs.sid": { + source: "iana" + }, + "audio/qcelp": { + source: "iana" + }, + "audio/raptorfec": { + source: "iana" + }, + "audio/red": { + source: "iana" + }, + "audio/rtp-enc-aescm128": { + source: "iana" + }, + "audio/rtp-midi": { + source: "iana" + }, + "audio/rtploopback": { + source: "iana" + }, + "audio/rtx": { + source: "iana" + }, + "audio/s3m": { + source: "apache", + extensions: ["s3m"] + }, + "audio/scip": { + source: "iana" + }, + "audio/silk": { + source: "apache", + extensions: ["sil"] + }, + "audio/smv": { + source: "iana" + }, + "audio/smv-qcp": { + source: "iana" + }, + "audio/smv0": { + source: "iana" + }, + "audio/sofa": { + source: "iana" + }, + "audio/sp-midi": { + source: "iana" + }, + "audio/speex": { + source: "iana" + }, + "audio/t140c": { + source: "iana" + }, + "audio/t38": { + source: "iana" + }, + "audio/telephone-event": { + source: "iana" + }, + "audio/tetra_acelp": { + source: "iana" + }, + "audio/tetra_acelp_bb": { + source: "iana" + }, + "audio/tone": { + source: "iana" + }, + "audio/tsvcis": { + source: "iana" + }, + "audio/uemclip": { + source: "iana" + }, + "audio/ulpfec": { + source: "iana" + }, + "audio/usac": { + source: "iana" + }, + "audio/vdvi": { + source: "iana" + }, + "audio/vmr-wb": { + source: "iana" + }, + "audio/vnd.3gpp.iufp": { + source: "iana" + }, + "audio/vnd.4sb": { + source: "iana" + }, + "audio/vnd.audiokoz": { + source: "iana" + }, + "audio/vnd.celp": { + source: "iana" + }, + "audio/vnd.cisco.nse": { + source: "iana" + }, + "audio/vnd.cmles.radio-events": { + source: "iana" + }, + "audio/vnd.cns.anp1": { + source: "iana" + }, + "audio/vnd.cns.inf1": { + source: "iana" + }, + "audio/vnd.dece.audio": { + source: "iana", + extensions: ["uva", "uvva"] + }, + "audio/vnd.digital-winds": { + source: "iana", + extensions: ["eol"] + }, + "audio/vnd.dlna.adts": { + source: "iana" + }, + "audio/vnd.dolby.heaac.1": { + source: "iana" + }, + "audio/vnd.dolby.heaac.2": { + source: "iana" + }, + "audio/vnd.dolby.mlp": { + source: "iana" + }, + "audio/vnd.dolby.mps": { + source: "iana" + }, + "audio/vnd.dolby.pl2": { + source: "iana" + }, + "audio/vnd.dolby.pl2x": { + source: "iana" + }, + "audio/vnd.dolby.pl2z": { + source: "iana" + }, + "audio/vnd.dolby.pulse.1": { + source: "iana" + }, + "audio/vnd.dra": { + source: "iana", + extensions: ["dra"] + }, + "audio/vnd.dts": { + source: "iana", + extensions: ["dts"] + }, + "audio/vnd.dts.hd": { + source: "iana", + extensions: ["dtshd"] + }, + "audio/vnd.dts.uhd": { + source: "iana" + }, + "audio/vnd.dvb.file": { + source: "iana" + }, + "audio/vnd.everad.plj": { + source: "iana" + }, + "audio/vnd.hns.audio": { + source: "iana" + }, + "audio/vnd.lucent.voice": { + source: "iana", + extensions: ["lvp"] + }, + "audio/vnd.ms-playready.media.pya": { + source: "iana", + extensions: ["pya"] + }, + "audio/vnd.nokia.mobile-xmf": { + source: "iana" + }, + "audio/vnd.nortel.vbk": { + source: "iana" + }, + "audio/vnd.nuera.ecelp4800": { + source: "iana", + extensions: ["ecelp4800"] + }, + "audio/vnd.nuera.ecelp7470": { + source: "iana", + extensions: ["ecelp7470"] + }, + "audio/vnd.nuera.ecelp9600": { + source: "iana", + extensions: ["ecelp9600"] + }, + "audio/vnd.octel.sbc": { + source: "iana" + }, + "audio/vnd.presonus.multitrack": { + source: "iana" + }, + "audio/vnd.qcelp": { + source: "iana" + }, + "audio/vnd.rhetorex.32kadpcm": { + source: "iana" + }, + "audio/vnd.rip": { + source: "iana", + extensions: ["rip"] + }, + "audio/vnd.rn-realaudio": { + compressible: false + }, + "audio/vnd.sealedmedia.softseal.mpeg": { + source: "iana" + }, + "audio/vnd.vmx.cvsd": { + source: "iana" + }, + "audio/vnd.wave": { + compressible: false + }, + "audio/vorbis": { + source: "iana", + compressible: false + }, + "audio/vorbis-config": { + source: "iana" + }, + "audio/wav": { + compressible: false, + extensions: ["wav"] + }, + "audio/wave": { + compressible: false, + extensions: ["wav"] + }, + "audio/webm": { + source: "apache", + compressible: false, + extensions: ["weba"] + }, + "audio/x-aac": { + source: "apache", + compressible: false, + extensions: ["aac"] + }, + "audio/x-aiff": { + source: "apache", + extensions: ["aif", "aiff", "aifc"] + }, + "audio/x-caf": { + source: "apache", + compressible: false, + extensions: ["caf"] + }, + "audio/x-flac": { + source: "apache", + extensions: ["flac"] + }, + "audio/x-m4a": { + source: "nginx", + extensions: ["m4a"] + }, + "audio/x-matroska": { + source: "apache", + extensions: ["mka"] + }, + "audio/x-mpegurl": { + source: "apache", + extensions: ["m3u"] + }, + "audio/x-ms-wax": { + source: "apache", + extensions: ["wax"] + }, + "audio/x-ms-wma": { + source: "apache", + extensions: ["wma"] + }, + "audio/x-pn-realaudio": { + source: "apache", + extensions: ["ram", "ra"] + }, + "audio/x-pn-realaudio-plugin": { + source: "apache", + extensions: ["rmp"] + }, + "audio/x-realaudio": { + source: "nginx", + extensions: ["ra"] + }, + "audio/x-tta": { + source: "apache" + }, + "audio/x-wav": { + source: "apache", + extensions: ["wav"] + }, + "audio/xm": { + source: "apache", + extensions: ["xm"] + }, + "chemical/x-cdx": { + source: "apache", + extensions: ["cdx"] + }, + "chemical/x-cif": { + source: "apache", + extensions: ["cif"] + }, + "chemical/x-cmdf": { + source: "apache", + extensions: ["cmdf"] + }, + "chemical/x-cml": { + source: "apache", + extensions: ["cml"] + }, + "chemical/x-csml": { + source: "apache", + extensions: ["csml"] + }, + "chemical/x-pdb": { + source: "apache" + }, + "chemical/x-xyz": { + source: "apache", + extensions: ["xyz"] + }, + "font/collection": { + source: "iana", + extensions: ["ttc"] + }, + "font/otf": { + source: "iana", + compressible: true, + extensions: ["otf"] + }, + "font/sfnt": { + source: "iana" + }, + "font/ttf": { + source: "iana", + compressible: true, + extensions: ["ttf"] + }, + "font/woff": { + source: "iana", + extensions: ["woff"] + }, + "font/woff2": { + source: "iana", + extensions: ["woff2"] + }, + "image/aces": { + source: "iana", + extensions: ["exr"] + }, + "image/apng": { + compressible: false, + extensions: ["apng"] + }, + "image/avci": { + source: "iana", + extensions: ["avci"] + }, + "image/avcs": { + source: "iana", + extensions: ["avcs"] + }, + "image/avif": { + source: "iana", + compressible: false, + extensions: ["avif"] + }, + "image/bmp": { + source: "iana", + compressible: true, + extensions: ["bmp"] + }, + "image/cgm": { + source: "iana", + extensions: ["cgm"] + }, + "image/dicom-rle": { + source: "iana", + extensions: ["drle"] + }, + "image/emf": { + source: "iana", + extensions: ["emf"] + }, + "image/fits": { + source: "iana", + extensions: ["fits"] + }, + "image/g3fax": { + source: "iana", + extensions: ["g3"] + }, + "image/gif": { + source: "iana", + compressible: false, + extensions: ["gif"] + }, + "image/heic": { + source: "iana", + extensions: ["heic"] + }, + "image/heic-sequence": { + source: "iana", + extensions: ["heics"] + }, + "image/heif": { + source: "iana", + extensions: ["heif"] + }, + "image/heif-sequence": { + source: "iana", + extensions: ["heifs"] + }, + "image/hej2k": { + source: "iana", + extensions: ["hej2"] + }, + "image/hsj2": { + source: "iana", + extensions: ["hsj2"] + }, + "image/ief": { + source: "iana", + extensions: ["ief"] + }, + "image/jls": { + source: "iana", + extensions: ["jls"] + }, + "image/jp2": { + source: "iana", + compressible: false, + extensions: ["jp2", "jpg2"] + }, + "image/jpeg": { + source: "iana", + compressible: false, + extensions: ["jpeg", "jpg", "jpe"] + }, + "image/jph": { + source: "iana", + extensions: ["jph"] + }, + "image/jphc": { + source: "iana", + extensions: ["jhc"] + }, + "image/jpm": { + source: "iana", + compressible: false, + extensions: ["jpm"] + }, + "image/jpx": { + source: "iana", + compressible: false, + extensions: ["jpx", "jpf"] + }, + "image/jxr": { + source: "iana", + extensions: ["jxr"] + }, + "image/jxra": { + source: "iana", + extensions: ["jxra"] + }, + "image/jxrs": { + source: "iana", + extensions: ["jxrs"] + }, + "image/jxs": { + source: "iana", + extensions: ["jxs"] + }, + "image/jxsc": { + source: "iana", + extensions: ["jxsc"] + }, + "image/jxsi": { + source: "iana", + extensions: ["jxsi"] + }, + "image/jxss": { + source: "iana", + extensions: ["jxss"] + }, + "image/ktx": { + source: "iana", + extensions: ["ktx"] + }, + "image/ktx2": { + source: "iana", + extensions: ["ktx2"] + }, + "image/naplps": { + source: "iana" + }, + "image/pjpeg": { + compressible: false + }, + "image/png": { + source: "iana", + compressible: false, + extensions: ["png"] + }, + "image/prs.btif": { + source: "iana", + extensions: ["btif"] + }, + "image/prs.pti": { + source: "iana", + extensions: ["pti"] + }, + "image/pwg-raster": { + source: "iana" + }, + "image/sgi": { + source: "apache", + extensions: ["sgi"] + }, + "image/svg+xml": { + source: "iana", + compressible: true, + extensions: ["svg", "svgz"] + }, + "image/t38": { + source: "iana", + extensions: ["t38"] + }, + "image/tiff": { + source: "iana", + compressible: false, + extensions: ["tif", "tiff"] + }, + "image/tiff-fx": { + source: "iana", + extensions: ["tfx"] + }, + "image/vnd.adobe.photoshop": { + source: "iana", + compressible: true, + extensions: ["psd"] + }, + "image/vnd.airzip.accelerator.azv": { + source: "iana", + extensions: ["azv"] + }, + "image/vnd.cns.inf2": { + source: "iana" + }, + "image/vnd.dece.graphic": { + source: "iana", + extensions: ["uvi", "uvvi", "uvg", "uvvg"] + }, + "image/vnd.djvu": { + source: "iana", + extensions: ["djvu", "djv"] + }, + "image/vnd.dvb.subtitle": { + source: "iana", + extensions: ["sub"] + }, + "image/vnd.dwg": { + source: "iana", + extensions: ["dwg"] + }, + "image/vnd.dxf": { + source: "iana", + extensions: ["dxf"] + }, + "image/vnd.fastbidsheet": { + source: "iana", + extensions: ["fbs"] + }, + "image/vnd.fpx": { + source: "iana", + extensions: ["fpx"] + }, + "image/vnd.fst": { + source: "iana", + extensions: ["fst"] + }, + "image/vnd.fujixerox.edmics-mmr": { + source: "iana", + extensions: ["mmr"] + }, + "image/vnd.fujixerox.edmics-rlc": { + source: "iana", + extensions: ["rlc"] + }, + "image/vnd.globalgraphics.pgb": { + source: "iana" + }, + "image/vnd.microsoft.icon": { + source: "iana", + compressible: true, + extensions: ["ico"] + }, + "image/vnd.mix": { + source: "iana" + }, + "image/vnd.mozilla.apng": { + source: "iana" + }, + "image/vnd.ms-dds": { + compressible: true, + extensions: ["dds"] + }, + "image/vnd.ms-modi": { + source: "iana", + extensions: ["mdi"] + }, + "image/vnd.ms-photo": { + source: "apache", + extensions: ["wdp"] + }, + "image/vnd.net-fpx": { + source: "iana", + extensions: ["npx"] + }, + "image/vnd.pco.b16": { + source: "iana", + extensions: ["b16"] + }, + "image/vnd.radiance": { + source: "iana" + }, + "image/vnd.sealed.png": { + source: "iana" + }, + "image/vnd.sealedmedia.softseal.gif": { + source: "iana" + }, + "image/vnd.sealedmedia.softseal.jpg": { + source: "iana" + }, + "image/vnd.svf": { + source: "iana" + }, + "image/vnd.tencent.tap": { + source: "iana", + extensions: ["tap"] + }, + "image/vnd.valve.source.texture": { + source: "iana", + extensions: ["vtf"] + }, + "image/vnd.wap.wbmp": { + source: "iana", + extensions: ["wbmp"] + }, + "image/vnd.xiff": { + source: "iana", + extensions: ["xif"] + }, + "image/vnd.zbrush.pcx": { + source: "iana", + extensions: ["pcx"] + }, + "image/webp": { + source: "apache", + extensions: ["webp"] + }, + "image/wmf": { + source: "iana", + extensions: ["wmf"] + }, + "image/x-3ds": { + source: "apache", + extensions: ["3ds"] + }, + "image/x-cmu-raster": { + source: "apache", + extensions: ["ras"] + }, + "image/x-cmx": { + source: "apache", + extensions: ["cmx"] + }, + "image/x-freehand": { + source: "apache", + extensions: ["fh", "fhc", "fh4", "fh5", "fh7"] + }, + "image/x-icon": { + source: "apache", + compressible: true, + extensions: ["ico"] + }, + "image/x-jng": { + source: "nginx", + extensions: ["jng"] + }, + "image/x-mrsid-image": { + source: "apache", + extensions: ["sid"] + }, + "image/x-ms-bmp": { + source: "nginx", + compressible: true, + extensions: ["bmp"] + }, + "image/x-pcx": { + source: "apache", + extensions: ["pcx"] + }, + "image/x-pict": { + source: "apache", + extensions: ["pic", "pct"] + }, + "image/x-portable-anymap": { + source: "apache", + extensions: ["pnm"] + }, + "image/x-portable-bitmap": { + source: "apache", + extensions: ["pbm"] + }, + "image/x-portable-graymap": { + source: "apache", + extensions: ["pgm"] + }, + "image/x-portable-pixmap": { + source: "apache", + extensions: ["ppm"] + }, + "image/x-rgb": { + source: "apache", + extensions: ["rgb"] + }, + "image/x-tga": { + source: "apache", + extensions: ["tga"] + }, + "image/x-xbitmap": { + source: "apache", + extensions: ["xbm"] + }, + "image/x-xcf": { + compressible: false + }, + "image/x-xpixmap": { + source: "apache", + extensions: ["xpm"] + }, + "image/x-xwindowdump": { + source: "apache", + extensions: ["xwd"] + }, + "message/cpim": { + source: "iana" + }, + "message/delivery-status": { + source: "iana" + }, + "message/disposition-notification": { + source: "iana", + extensions: [ + "disposition-notification" + ] + }, + "message/external-body": { + source: "iana" + }, + "message/feedback-report": { + source: "iana" + }, + "message/global": { + source: "iana", + extensions: ["u8msg"] + }, + "message/global-delivery-status": { + source: "iana", + extensions: ["u8dsn"] + }, + "message/global-disposition-notification": { + source: "iana", + extensions: ["u8mdn"] + }, + "message/global-headers": { + source: "iana", + extensions: ["u8hdr"] + }, + "message/http": { + source: "iana", + compressible: false + }, + "message/imdn+xml": { + source: "iana", + compressible: true + }, + "message/news": { + source: "iana" + }, + "message/partial": { + source: "iana", + compressible: false + }, + "message/rfc822": { + source: "iana", + compressible: true, + extensions: ["eml", "mime"] + }, + "message/s-http": { + source: "iana" + }, + "message/sip": { + source: "iana" + }, + "message/sipfrag": { + source: "iana" + }, + "message/tracking-status": { + source: "iana" + }, + "message/vnd.si.simp": { + source: "iana" + }, + "message/vnd.wfa.wsc": { + source: "iana", + extensions: ["wsc"] + }, + "model/3mf": { + source: "iana", + extensions: ["3mf"] + }, + "model/e57": { + source: "iana" + }, + "model/gltf+json": { + source: "iana", + compressible: true, + extensions: ["gltf"] + }, + "model/gltf-binary": { + source: "iana", + compressible: true, + extensions: ["glb"] + }, + "model/iges": { + source: "iana", + compressible: false, + extensions: ["igs", "iges"] + }, + "model/mesh": { + source: "iana", + compressible: false, + extensions: ["msh", "mesh", "silo"] + }, + "model/mtl": { + source: "iana", + extensions: ["mtl"] + }, + "model/obj": { + source: "iana", + extensions: ["obj"] + }, + "model/step": { + source: "iana" + }, + "model/step+xml": { + source: "iana", + compressible: true, + extensions: ["stpx"] + }, + "model/step+zip": { + source: "iana", + compressible: false, + extensions: ["stpz"] + }, + "model/step-xml+zip": { + source: "iana", + compressible: false, + extensions: ["stpxz"] + }, + "model/stl": { + source: "iana", + extensions: ["stl"] + }, + "model/vnd.collada+xml": { + source: "iana", + compressible: true, + extensions: ["dae"] + }, + "model/vnd.dwf": { + source: "iana", + extensions: ["dwf"] + }, + "model/vnd.flatland.3dml": { + source: "iana" + }, + "model/vnd.gdl": { + source: "iana", + extensions: ["gdl"] + }, + "model/vnd.gs-gdl": { + source: "apache" + }, + "model/vnd.gs.gdl": { + source: "iana" + }, + "model/vnd.gtw": { + source: "iana", + extensions: ["gtw"] + }, + "model/vnd.moml+xml": { + source: "iana", + compressible: true + }, + "model/vnd.mts": { + source: "iana", + extensions: ["mts"] + }, + "model/vnd.opengex": { + source: "iana", + extensions: ["ogex"] + }, + "model/vnd.parasolid.transmit.binary": { + source: "iana", + extensions: ["x_b"] + }, + "model/vnd.parasolid.transmit.text": { + source: "iana", + extensions: ["x_t"] + }, + "model/vnd.pytha.pyox": { + source: "iana" + }, + "model/vnd.rosette.annotated-data-model": { + source: "iana" + }, + "model/vnd.sap.vds": { + source: "iana", + extensions: ["vds"] + }, + "model/vnd.usdz+zip": { + source: "iana", + compressible: false, + extensions: ["usdz"] + }, + "model/vnd.valve.source.compiled-map": { + source: "iana", + extensions: ["bsp"] + }, + "model/vnd.vtu": { + source: "iana", + extensions: ["vtu"] + }, + "model/vrml": { + source: "iana", + compressible: false, + extensions: ["wrl", "vrml"] + }, + "model/x3d+binary": { + source: "apache", + compressible: false, + extensions: ["x3db", "x3dbz"] + }, + "model/x3d+fastinfoset": { + source: "iana", + extensions: ["x3db"] + }, + "model/x3d+vrml": { + source: "apache", + compressible: false, + extensions: ["x3dv", "x3dvz"] + }, + "model/x3d+xml": { + source: "iana", + compressible: true, + extensions: ["x3d", "x3dz"] + }, + "model/x3d-vrml": { + source: "iana", + extensions: ["x3dv"] + }, + "multipart/alternative": { + source: "iana", + compressible: false + }, + "multipart/appledouble": { + source: "iana" + }, + "multipart/byteranges": { + source: "iana" + }, + "multipart/digest": { + source: "iana" + }, + "multipart/encrypted": { + source: "iana", + compressible: false + }, + "multipart/form-data": { + source: "iana", + compressible: false + }, + "multipart/header-set": { + source: "iana" + }, + "multipart/mixed": { + source: "iana" + }, + "multipart/multilingual": { + source: "iana" + }, + "multipart/parallel": { + source: "iana" + }, + "multipart/related": { + source: "iana", + compressible: false + }, + "multipart/report": { + source: "iana" + }, + "multipart/signed": { + source: "iana", + compressible: false + }, + "multipart/vnd.bint.med-plus": { + source: "iana" + }, + "multipart/voice-message": { + source: "iana" + }, + "multipart/x-mixed-replace": { + source: "iana" + }, + "text/1d-interleaved-parityfec": { + source: "iana" + }, + "text/cache-manifest": { + source: "iana", + compressible: true, + extensions: ["appcache", "manifest"] + }, + "text/calendar": { + source: "iana", + extensions: ["ics", "ifb"] + }, + "text/calender": { + compressible: true + }, + "text/cmd": { + compressible: true + }, + "text/coffeescript": { + extensions: ["coffee", "litcoffee"] + }, + "text/cql": { + source: "iana" + }, + "text/cql-expression": { + source: "iana" + }, + "text/cql-identifier": { + source: "iana" + }, + "text/css": { + source: "iana", + charset: "UTF-8", + compressible: true, + extensions: ["css"] + }, + "text/csv": { + source: "iana", + compressible: true, + extensions: ["csv"] + }, + "text/csv-schema": { + source: "iana" + }, + "text/directory": { + source: "iana" + }, + "text/dns": { + source: "iana" + }, + "text/ecmascript": { + source: "iana" + }, + "text/encaprtp": { + source: "iana" + }, + "text/enriched": { + source: "iana" + }, + "text/fhirpath": { + source: "iana" + }, + "text/flexfec": { + source: "iana" + }, + "text/fwdred": { + source: "iana" + }, + "text/gff3": { + source: "iana" + }, + "text/grammar-ref-list": { + source: "iana" + }, + "text/html": { + source: "iana", + compressible: true, + extensions: ["html", "htm", "shtml"] + }, + "text/jade": { + extensions: ["jade"] + }, + "text/javascript": { + source: "iana", + compressible: true + }, + "text/jcr-cnd": { + source: "iana" + }, + "text/jsx": { + compressible: true, + extensions: ["jsx"] + }, + "text/less": { + compressible: true, + extensions: ["less"] + }, + "text/markdown": { + source: "iana", + compressible: true, + extensions: ["markdown", "md"] + }, + "text/mathml": { + source: "nginx", + extensions: ["mml"] + }, + "text/mdx": { + compressible: true, + extensions: ["mdx"] + }, + "text/mizar": { + source: "iana" + }, + "text/n3": { + source: "iana", + charset: "UTF-8", + compressible: true, + extensions: ["n3"] + }, + "text/parameters": { + source: "iana", + charset: "UTF-8" + }, + "text/parityfec": { + source: "iana" + }, + "text/plain": { + source: "iana", + compressible: true, + extensions: ["txt", "text", "conf", "def", "list", "log", "in", "ini"] + }, + "text/provenance-notation": { + source: "iana", + charset: "UTF-8" + }, + "text/prs.fallenstein.rst": { + source: "iana" + }, + "text/prs.lines.tag": { + source: "iana", + extensions: ["dsc"] + }, + "text/prs.prop.logic": { + source: "iana" + }, + "text/raptorfec": { + source: "iana" + }, + "text/red": { + source: "iana" + }, + "text/rfc822-headers": { + source: "iana" + }, + "text/richtext": { + source: "iana", + compressible: true, + extensions: ["rtx"] + }, + "text/rtf": { + source: "iana", + compressible: true, + extensions: ["rtf"] + }, + "text/rtp-enc-aescm128": { + source: "iana" + }, + "text/rtploopback": { + source: "iana" + }, + "text/rtx": { + source: "iana" + }, + "text/sgml": { + source: "iana", + extensions: ["sgml", "sgm"] + }, + "text/shaclc": { + source: "iana" + }, + "text/shex": { + source: "iana", + extensions: ["shex"] + }, + "text/slim": { + extensions: ["slim", "slm"] + }, + "text/spdx": { + source: "iana", + extensions: ["spdx"] + }, + "text/strings": { + source: "iana" + }, + "text/stylus": { + extensions: ["stylus", "styl"] + }, + "text/t140": { + source: "iana" + }, + "text/tab-separated-values": { + source: "iana", + compressible: true, + extensions: ["tsv"] + }, + "text/troff": { + source: "iana", + extensions: ["t", "tr", "roff", "man", "me", "ms"] + }, + "text/turtle": { + source: "iana", + charset: "UTF-8", + extensions: ["ttl"] + }, + "text/ulpfec": { + source: "iana" + }, + "text/uri-list": { + source: "iana", + compressible: true, + extensions: ["uri", "uris", "urls"] + }, + "text/vcard": { + source: "iana", + compressible: true, + extensions: ["vcard"] + }, + "text/vnd.a": { + source: "iana" + }, + "text/vnd.abc": { + source: "iana" + }, + "text/vnd.ascii-art": { + source: "iana" + }, + "text/vnd.curl": { + source: "iana", + extensions: ["curl"] + }, + "text/vnd.curl.dcurl": { + source: "apache", + extensions: ["dcurl"] + }, + "text/vnd.curl.mcurl": { + source: "apache", + extensions: ["mcurl"] + }, + "text/vnd.curl.scurl": { + source: "apache", + extensions: ["scurl"] + }, + "text/vnd.debian.copyright": { + source: "iana", + charset: "UTF-8" + }, + "text/vnd.dmclientscript": { + source: "iana" + }, + "text/vnd.dvb.subtitle": { + source: "iana", + extensions: ["sub"] + }, + "text/vnd.esmertec.theme-descriptor": { + source: "iana", + charset: "UTF-8" + }, + "text/vnd.familysearch.gedcom": { + source: "iana", + extensions: ["ged"] + }, + "text/vnd.ficlab.flt": { + source: "iana" + }, + "text/vnd.fly": { + source: "iana", + extensions: ["fly"] + }, + "text/vnd.fmi.flexstor": { + source: "iana", + extensions: ["flx"] + }, + "text/vnd.gml": { + source: "iana" + }, + "text/vnd.graphviz": { + source: "iana", + extensions: ["gv"] + }, + "text/vnd.hans": { + source: "iana" + }, + "text/vnd.hgl": { + source: "iana" + }, + "text/vnd.in3d.3dml": { + source: "iana", + extensions: ["3dml"] + }, + "text/vnd.in3d.spot": { + source: "iana", + extensions: ["spot"] + }, + "text/vnd.iptc.newsml": { + source: "iana" + }, + "text/vnd.iptc.nitf": { + source: "iana" + }, + "text/vnd.latex-z": { + source: "iana" + }, + "text/vnd.motorola.reflex": { + source: "iana" + }, + "text/vnd.ms-mediapackage": { + source: "iana" + }, + "text/vnd.net2phone.commcenter.command": { + source: "iana" + }, + "text/vnd.radisys.msml-basic-layout": { + source: "iana" + }, + "text/vnd.senx.warpscript": { + source: "iana" + }, + "text/vnd.si.uricatalogue": { + source: "iana" + }, + "text/vnd.sosi": { + source: "iana" + }, + "text/vnd.sun.j2me.app-descriptor": { + source: "iana", + charset: "UTF-8", + extensions: ["jad"] + }, + "text/vnd.trolltech.linguist": { + source: "iana", + charset: "UTF-8" + }, + "text/vnd.wap.si": { + source: "iana" + }, + "text/vnd.wap.sl": { + source: "iana" + }, + "text/vnd.wap.wml": { + source: "iana", + extensions: ["wml"] + }, + "text/vnd.wap.wmlscript": { + source: "iana", + extensions: ["wmls"] + }, + "text/vtt": { + source: "iana", + charset: "UTF-8", + compressible: true, + extensions: ["vtt"] + }, + "text/x-asm": { + source: "apache", + extensions: ["s", "asm"] + }, + "text/x-c": { + source: "apache", + extensions: ["c", "cc", "cxx", "cpp", "h", "hh", "dic"] + }, + "text/x-component": { + source: "nginx", + extensions: ["htc"] + }, + "text/x-fortran": { + source: "apache", + extensions: ["f", "for", "f77", "f90"] + }, + "text/x-gwt-rpc": { + compressible: true + }, + "text/x-handlebars-template": { + extensions: ["hbs"] + }, + "text/x-java-source": { + source: "apache", + extensions: ["java"] + }, + "text/x-jquery-tmpl": { + compressible: true + }, + "text/x-lua": { + extensions: ["lua"] + }, + "text/x-markdown": { + compressible: true, + extensions: ["mkd"] + }, + "text/x-nfo": { + source: "apache", + extensions: ["nfo"] + }, + "text/x-opml": { + source: "apache", + extensions: ["opml"] + }, + "text/x-org": { + compressible: true, + extensions: ["org"] + }, + "text/x-pascal": { + source: "apache", + extensions: ["p", "pas"] + }, + "text/x-processing": { + compressible: true, + extensions: ["pde"] + }, + "text/x-sass": { + extensions: ["sass"] + }, + "text/x-scss": { + extensions: ["scss"] + }, + "text/x-setext": { + source: "apache", + extensions: ["etx"] + }, + "text/x-sfv": { + source: "apache", + extensions: ["sfv"] + }, + "text/x-suse-ymp": { + compressible: true, + extensions: ["ymp"] + }, + "text/x-uuencode": { + source: "apache", + extensions: ["uu"] + }, + "text/x-vcalendar": { + source: "apache", + extensions: ["vcs"] + }, + "text/x-vcard": { + source: "apache", + extensions: ["vcf"] + }, + "text/xml": { + source: "iana", + compressible: true, + extensions: ["xml"] + }, + "text/xml-external-parsed-entity": { + source: "iana" + }, + "text/yaml": { + compressible: true, + extensions: ["yaml", "yml"] + }, + "video/1d-interleaved-parityfec": { + source: "iana" + }, + "video/3gpp": { + source: "iana", + extensions: ["3gp", "3gpp"] + }, + "video/3gpp-tt": { + source: "iana" + }, + "video/3gpp2": { + source: "iana", + extensions: ["3g2"] + }, + "video/av1": { + source: "iana" + }, + "video/bmpeg": { + source: "iana" + }, + "video/bt656": { + source: "iana" + }, + "video/celb": { + source: "iana" + }, + "video/dv": { + source: "iana" + }, + "video/encaprtp": { + source: "iana" + }, + "video/ffv1": { + source: "iana" + }, + "video/flexfec": { + source: "iana" + }, + "video/h261": { + source: "iana", + extensions: ["h261"] + }, + "video/h263": { + source: "iana", + extensions: ["h263"] + }, + "video/h263-1998": { + source: "iana" + }, + "video/h263-2000": { + source: "iana" + }, + "video/h264": { + source: "iana", + extensions: ["h264"] + }, + "video/h264-rcdo": { + source: "iana" + }, + "video/h264-svc": { + source: "iana" + }, + "video/h265": { + source: "iana" + }, + "video/iso.segment": { + source: "iana", + extensions: ["m4s"] + }, + "video/jpeg": { + source: "iana", + extensions: ["jpgv"] + }, + "video/jpeg2000": { + source: "iana" + }, + "video/jpm": { + source: "apache", + extensions: ["jpm", "jpgm"] + }, + "video/jxsv": { + source: "iana" + }, + "video/mj2": { + source: "iana", + extensions: ["mj2", "mjp2"] + }, + "video/mp1s": { + source: "iana" + }, + "video/mp2p": { + source: "iana" + }, + "video/mp2t": { + source: "iana", + extensions: ["ts"] + }, + "video/mp4": { + source: "iana", + compressible: false, + extensions: ["mp4", "mp4v", "mpg4"] + }, + "video/mp4v-es": { + source: "iana" + }, + "video/mpeg": { + source: "iana", + compressible: false, + extensions: ["mpeg", "mpg", "mpe", "m1v", "m2v"] + }, + "video/mpeg4-generic": { + source: "iana" + }, + "video/mpv": { + source: "iana" + }, + "video/nv": { + source: "iana" + }, + "video/ogg": { + source: "iana", + compressible: false, + extensions: ["ogv"] + }, + "video/parityfec": { + source: "iana" + }, + "video/pointer": { + source: "iana" + }, + "video/quicktime": { + source: "iana", + compressible: false, + extensions: ["qt", "mov"] + }, + "video/raptorfec": { + source: "iana" + }, + "video/raw": { + source: "iana" + }, + "video/rtp-enc-aescm128": { + source: "iana" + }, + "video/rtploopback": { + source: "iana" + }, + "video/rtx": { + source: "iana" + }, + "video/scip": { + source: "iana" + }, + "video/smpte291": { + source: "iana" + }, + "video/smpte292m": { + source: "iana" + }, + "video/ulpfec": { + source: "iana" + }, + "video/vc1": { + source: "iana" + }, + "video/vc2": { + source: "iana" + }, + "video/vnd.cctv": { + source: "iana" + }, + "video/vnd.dece.hd": { + source: "iana", + extensions: ["uvh", "uvvh"] + }, + "video/vnd.dece.mobile": { + source: "iana", + extensions: ["uvm", "uvvm"] + }, + "video/vnd.dece.mp4": { + source: "iana" + }, + "video/vnd.dece.pd": { + source: "iana", + extensions: ["uvp", "uvvp"] + }, + "video/vnd.dece.sd": { + source: "iana", + extensions: ["uvs", "uvvs"] + }, + "video/vnd.dece.video": { + source: "iana", + extensions: ["uvv", "uvvv"] + }, + "video/vnd.directv.mpeg": { + source: "iana" + }, + "video/vnd.directv.mpeg-tts": { + source: "iana" + }, + "video/vnd.dlna.mpeg-tts": { + source: "iana" + }, + "video/vnd.dvb.file": { + source: "iana", + extensions: ["dvb"] + }, + "video/vnd.fvt": { + source: "iana", + extensions: ["fvt"] + }, + "video/vnd.hns.video": { + source: "iana" + }, + "video/vnd.iptvforum.1dparityfec-1010": { + source: "iana" + }, + "video/vnd.iptvforum.1dparityfec-2005": { + source: "iana" + }, + "video/vnd.iptvforum.2dparityfec-1010": { + source: "iana" + }, + "video/vnd.iptvforum.2dparityfec-2005": { + source: "iana" + }, + "video/vnd.iptvforum.ttsavc": { + source: "iana" + }, + "video/vnd.iptvforum.ttsmpeg2": { + source: "iana" + }, + "video/vnd.motorola.video": { + source: "iana" + }, + "video/vnd.motorola.videop": { + source: "iana" + }, + "video/vnd.mpegurl": { + source: "iana", + extensions: ["mxu", "m4u"] + }, + "video/vnd.ms-playready.media.pyv": { + source: "iana", + extensions: ["pyv"] + }, + "video/vnd.nokia.interleaved-multimedia": { + source: "iana" + }, + "video/vnd.nokia.mp4vr": { + source: "iana" + }, + "video/vnd.nokia.videovoip": { + source: "iana" + }, + "video/vnd.objectvideo": { + source: "iana" + }, + "video/vnd.radgamettools.bink": { + source: "iana" + }, + "video/vnd.radgamettools.smacker": { + source: "iana" + }, + "video/vnd.sealed.mpeg1": { + source: "iana" + }, + "video/vnd.sealed.mpeg4": { + source: "iana" + }, + "video/vnd.sealed.swf": { + source: "iana" + }, + "video/vnd.sealedmedia.softseal.mov": { + source: "iana" + }, + "video/vnd.uvvu.mp4": { + source: "iana", + extensions: ["uvu", "uvvu"] + }, + "video/vnd.vivo": { + source: "iana", + extensions: ["viv"] + }, + "video/vnd.youtube.yt": { + source: "iana" + }, + "video/vp8": { + source: "iana" + }, + "video/vp9": { + source: "iana" + }, + "video/webm": { + source: "apache", + compressible: false, + extensions: ["webm"] + }, + "video/x-f4v": { + source: "apache", + extensions: ["f4v"] + }, + "video/x-fli": { + source: "apache", + extensions: ["fli"] + }, + "video/x-flv": { + source: "apache", + compressible: false, + extensions: ["flv"] + }, + "video/x-m4v": { + source: "apache", + extensions: ["m4v"] + }, + "video/x-matroska": { + source: "apache", + compressible: false, + extensions: ["mkv", "mk3d", "mks"] + }, + "video/x-mng": { + source: "apache", + extensions: ["mng"] + }, + "video/x-ms-asf": { + source: "apache", + extensions: ["asf", "asx"] + }, + "video/x-ms-vob": { + source: "apache", + extensions: ["vob"] + }, + "video/x-ms-wm": { + source: "apache", + extensions: ["wm"] + }, + "video/x-ms-wmv": { + source: "apache", + compressible: false, + extensions: ["wmv"] + }, + "video/x-ms-wmx": { + source: "apache", + extensions: ["wmx"] + }, + "video/x-ms-wvx": { + source: "apache", + extensions: ["wvx"] + }, + "video/x-msvideo": { + source: "apache", + extensions: ["avi"] + }, + "video/x-sgi-movie": { + source: "apache", + extensions: ["movie"] + }, + "video/x-smv": { + source: "apache", + extensions: ["smv"] + }, + "x-conference/x-cooltalk": { + source: "apache", + extensions: ["ice"] + }, + "x-shader/x-fragment": { + compressible: true + }, + "x-shader/x-vertex": { + compressible: true + } + }; + } +}); + +// ../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js +var require_mime_db = __commonJS({ + "../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js"(exports2, module2) { + module2.exports = require_db(); + } +}); + +// ../node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js +var require_mime_types = __commonJS({ + "../node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js"(exports2) { + "use strict"; + var db = require_mime_db(); + var extname2 = require("path").extname; + var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/; + var TEXT_TYPE_REGEXP = /^text\//i; + exports2.charset = charset; + exports2.charsets = { lookup: charset }; + exports2.contentType = contentType; + exports2.extension = extension; + exports2.extensions = /* @__PURE__ */ Object.create(null); + exports2.lookup = lookup; + exports2.types = /* @__PURE__ */ Object.create(null); + populateMaps(exports2.extensions, exports2.types); + function charset(type2) { + if (!type2 || typeof type2 !== "string") { + return false; + } + var match2 = EXTRACT_TYPE_REGEXP.exec(type2); + var mime = match2 && db[match2[1].toLowerCase()]; + if (mime && mime.charset) { + return mime.charset; + } + if (match2 && TEXT_TYPE_REGEXP.test(match2[1])) { + return "UTF-8"; + } + return false; + } + function contentType(str) { + if (!str || typeof str !== "string") { + return false; + } + var mime = str.indexOf("/") === -1 ? exports2.lookup(str) : str; + if (!mime) { + return false; + } + if (mime.indexOf("charset") === -1) { + var charset2 = exports2.charset(mime); + if (charset2) + mime += "; charset=" + charset2.toLowerCase(); + } + return mime; + } + function extension(type2) { + if (!type2 || typeof type2 !== "string") { + return false; + } + var match2 = EXTRACT_TYPE_REGEXP.exec(type2); + var exts = match2 && exports2.extensions[match2[1].toLowerCase()]; + if (!exts || !exts.length) { + return false; + } + return exts[0]; + } + function lookup(path30) { + if (!path30 || typeof path30 !== "string") { + return false; + } + var extension2 = extname2("x." + path30).toLowerCase().substr(1); + if (!extension2) { + return false; + } + return exports2.types[extension2] || false; + } + function populateMaps(extensions2, types2) { + var preference = ["nginx", "apache", void 0, "iana"]; + Object.keys(db).forEach(function forEachMimeType(type2) { + var mime = db[type2]; + var exts = mime.extensions; + if (!exts || !exts.length) { + return; + } + extensions2[type2] = exts; + for (var i = 0; i < exts.length; i++) { + var extension2 = exts[i]; + if (types2[extension2]) { + var from = preference.indexOf(db[types2[extension2]].source); + var to = preference.indexOf(mime.source); + if (types2[extension2] !== "application/octet-stream" && (from > to || from === to && types2[extension2].substr(0, 12) === "application/")) { + continue; + } + } + types2[extension2] = type2; + } + }); + } + } +}); + +// ../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/defer.js +var require_defer2 = __commonJS({ + "../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/defer.js"(exports2, module2) { + module2.exports = defer2; + function defer2(fn) { + var nextTick = typeof setImmediate == "function" ? setImmediate : typeof process == "object" && typeof process.nextTick == "function" ? process.nextTick : null; + if (nextTick) { + nextTick(fn); + } else { + setTimeout(fn, 0); + } + } + } +}); + +// ../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/async.js +var require_async2 = __commonJS({ + "../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/async.js"(exports2, module2) { + var defer2 = require_defer2(); + module2.exports = async; + function async(callback) { + var isAsync = false; + defer2(function() { + isAsync = true; + }); + return function async_callback(err2, result) { + if (isAsync) { + callback(err2, result); + } else { + defer2(function nextTick_callback() { + callback(err2, result); + }); + } + }; + } + } +}); + +// ../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/abort.js +var require_abort = __commonJS({ + "../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/abort.js"(exports2, module2) { + module2.exports = abort2; + function abort2(state) { + Object.keys(state.jobs).forEach(clean.bind(state)); + state.jobs = {}; + } + function clean(key) { + if (typeof this.jobs[key] == "function") { + this.jobs[key](); + } + } + } +}); + +// ../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/iterate.js +var require_iterate = __commonJS({ + "../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/iterate.js"(exports2, module2) { + var async = require_async2(); + var abort2 = require_abort(); + module2.exports = iterate2; + function iterate2(list, iterator, state, callback) { + var key = state["keyedList"] ? state["keyedList"][state.index] : state.index; + state.jobs[key] = runJob(iterator, key, list[key], function(error, output) { + if (!(key in state.jobs)) { + return; + } + delete state.jobs[key]; + if (error) { + abort2(state); + } else { + state.results[key] = output; + } + callback(error, state.results); + }); + } + function runJob(iterator, key, item, callback) { + var aborter; + if (iterator.length == 2) { + aborter = iterator(item, async(callback)); + } else { + aborter = iterator(item, key, async(callback)); + } + return aborter; + } + } +}); + +// ../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/state.js +var require_state = __commonJS({ + "../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/state.js"(exports2, module2) { + module2.exports = state; + function state(list, sortMethod) { + var isNamedList = !Array.isArray(list), initState = { + index: 0, + keyedList: isNamedList || sortMethod ? Object.keys(list) : null, + jobs: {}, + results: isNamedList ? {} : [], + size: isNamedList ? Object.keys(list).length : list.length + }; + if (sortMethod) { + initState.keyedList.sort(isNamedList ? sortMethod : function(a, b) { + return sortMethod(list[a], list[b]); + }); + } + return initState; + } + } +}); + +// ../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/terminator.js +var require_terminator = __commonJS({ + "../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/terminator.js"(exports2, module2) { + var abort2 = require_abort(); + var async = require_async2(); + module2.exports = terminator; + function terminator(callback) { + if (!Object.keys(this.jobs).length) { + return; + } + this.index = this.size; + abort2(this); + async(callback)(null, this.results); + } + } +}); + +// ../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/parallel.js +var require_parallel = __commonJS({ + "../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/parallel.js"(exports2, module2) { + var iterate2 = require_iterate(); + var initState = require_state(); + var terminator = require_terminator(); + module2.exports = parallel; + function parallel(list, iterator, callback) { + var state = initState(list); + while (state.index < (state["keyedList"] || list).length) { + iterate2(list, iterator, state, function(error, result) { + if (error) { + callback(error, result); + return; + } + if (Object.keys(state.jobs).length === 0) { + callback(null, state.results); + return; + } + }); + state.index++; + } + return terminator.bind(state, callback); + } + } +}); + +// ../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/serialOrdered.js +var require_serialOrdered = __commonJS({ + "../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/serialOrdered.js"(exports2, module2) { + var iterate2 = require_iterate(); + var initState = require_state(); + var terminator = require_terminator(); + module2.exports = serialOrdered; + module2.exports.ascending = ascending; + module2.exports.descending = descending; + function serialOrdered(list, iterator, sortMethod, callback) { + var state = initState(list, sortMethod); + iterate2(list, iterator, state, function iteratorHandler(error, result) { + if (error) { + callback(error, result); + return; + } + state.index++; + if (state.index < (state["keyedList"] || list).length) { + iterate2(list, iterator, state, iteratorHandler); + return; + } + callback(null, state.results); + }); + return terminator.bind(state, callback); + } + function ascending(a, b) { + return a < b ? -1 : a > b ? 1 : 0; + } + function descending(a, b) { + return -1 * ascending(a, b); + } + } +}); + +// ../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/serial.js +var require_serial = __commonJS({ + "../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/serial.js"(exports2, module2) { + var serialOrdered = require_serialOrdered(); + module2.exports = serial; + function serial(list, iterator, callback) { + return serialOrdered(list, iterator, null, callback); + } + } +}); + +// ../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/index.js +var require_asynckit = __commonJS({ + "../node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/index.js"(exports2, module2) { + module2.exports = { + parallel: require_parallel(), + serial: require_serial(), + serialOrdered: require_serialOrdered() + }; + } +}); + +// ../node_modules/.pnpm/form-data@4.0.0/node_modules/form-data/lib/populate.js +var require_populate = __commonJS({ + "../node_modules/.pnpm/form-data@4.0.0/node_modules/form-data/lib/populate.js"(exports2, module2) { + module2.exports = function(dst, src) { + Object.keys(src).forEach(function(prop) { + dst[prop] = dst[prop] || src[prop]; + }); + return dst; + }; + } +}); + +// ../node_modules/.pnpm/form-data@4.0.0/node_modules/form-data/lib/form_data.js +var require_form_data = __commonJS({ + "../node_modules/.pnpm/form-data@4.0.0/node_modules/form-data/lib/form_data.js"(exports2, module2) { + var CombinedStream = require_combined_stream(); + var util2 = require("util"); + var path30 = require("path"); + var http4 = require("http"); + var https4 = require("https"); + var parseUrl = require("url").parse; + var fs6 = require("fs"); + var Stream2 = require("stream").Stream; + var mime = require_mime_types(); + var asynckit = require_asynckit(); + var populate = require_populate(); + module2.exports = FormData3; + util2.inherits(FormData3, CombinedStream); + function FormData3(options2) { + if (!(this instanceof FormData3)) { + return new FormData3(options2); + } + this._overheadLength = 0; + this._valueLength = 0; + this._valuesToMeasure = []; + CombinedStream.call(this); + options2 = options2 || {}; + for (var option in options2) { + this[option] = options2[option]; + } + } + FormData3.LINE_BREAK = "\r\n"; + FormData3.DEFAULT_CONTENT_TYPE = "application/octet-stream"; + FormData3.prototype.append = function(field, value, options2) { + options2 = options2 || {}; + if (typeof options2 == "string") { + options2 = { filename: options2 }; + } + var append2 = CombinedStream.prototype.append.bind(this); + if (typeof value == "number") { + value = "" + value; + } + if (util2.isArray(value)) { + this._error(new Error("Arrays are not supported.")); + return; + } + var header = this._multiPartHeader(field, value, options2); + var footer = this._multiPartFooter(); + append2(header); + append2(value); + append2(footer); + this._trackLength(header, value, options2); + }; + FormData3.prototype._trackLength = function(header, value, options2) { + var valueLength = 0; + if (options2.knownLength != null) { + valueLength += +options2.knownLength; + } else if (Buffer.isBuffer(value)) { + valueLength = value.length; + } else if (typeof value === "string") { + valueLength = Buffer.byteLength(value); + } + this._valueLength += valueLength; + this._overheadLength += Buffer.byteLength(header) + FormData3.LINE_BREAK.length; + if (!value || !value.path && !(value.readable && value.hasOwnProperty("httpVersion")) && !(value instanceof Stream2)) { + return; + } + if (!options2.knownLength) { + this._valuesToMeasure.push(value); + } + }; + FormData3.prototype._lengthRetriever = function(value, callback) { + if (value.hasOwnProperty("fd")) { + if (value.end != void 0 && value.end != Infinity && value.start != void 0) { + callback(null, value.end + 1 - (value.start ? value.start : 0)); + } else { + fs6.stat(value.path, function(err2, stat7) { + var fileSize; + if (err2) { + callback(err2); + return; + } + fileSize = stat7.size - (value.start ? value.start : 0); + callback(null, fileSize); + }); + } + } else if (value.hasOwnProperty("httpVersion")) { + callback(null, +value.headers["content-length"]); + } else if (value.hasOwnProperty("httpModule")) { + value.on("response", function(response) { + value.pause(); + callback(null, +response.headers["content-length"]); + }); + value.resume(); + } else { + callback("Unknown stream"); + } + }; + FormData3.prototype._multiPartHeader = function(field, value, options2) { + if (typeof options2.header == "string") { + return options2.header; + } + var contentDisposition = this._getContentDisposition(value, options2); + var contentType = this._getContentType(value, options2); + var contents = ""; + var headers = { + // add custom disposition as third element or keep it two elements if not + "Content-Disposition": ["form-data", 'name="' + field + '"'].concat(contentDisposition || []), + // if no content type. allow it to be empty array + "Content-Type": [].concat(contentType || []) + }; + if (typeof options2.header == "object") { + populate(headers, options2.header); + } + var header; + for (var prop in headers) { + if (!headers.hasOwnProperty(prop)) + continue; + header = headers[prop]; + if (header == null) { + continue; + } + if (!Array.isArray(header)) { + header = [header]; + } + if (header.length) { + contents += prop + ": " + header.join("; ") + FormData3.LINE_BREAK; + } + } + return "--" + this.getBoundary() + FormData3.LINE_BREAK + contents + FormData3.LINE_BREAK; + }; + FormData3.prototype._getContentDisposition = function(value, options2) { + var filename, contentDisposition; + if (typeof options2.filepath === "string") { + filename = path30.normalize(options2.filepath).replace(/\\/g, "/"); + } else if (options2.filename || value.name || value.path) { + filename = path30.basename(options2.filename || value.name || value.path); + } else if (value.readable && value.hasOwnProperty("httpVersion")) { + filename = path30.basename(value.client._httpMessage.path || ""); + } + if (filename) { + contentDisposition = 'filename="' + filename + '"'; + } + return contentDisposition; + }; + FormData3.prototype._getContentType = function(value, options2) { + var contentType = options2.contentType; + if (!contentType && value.name) { + contentType = mime.lookup(value.name); + } + if (!contentType && value.path) { + contentType = mime.lookup(value.path); + } + if (!contentType && value.readable && value.hasOwnProperty("httpVersion")) { + contentType = value.headers["content-type"]; + } + if (!contentType && (options2.filepath || options2.filename)) { + contentType = mime.lookup(options2.filepath || options2.filename); + } + if (!contentType && typeof value == "object") { + contentType = FormData3.DEFAULT_CONTENT_TYPE; + } + return contentType; + }; + FormData3.prototype._multiPartFooter = function() { + return function(next) { + var footer = FormData3.LINE_BREAK; + var lastPart = this._streams.length === 0; + if (lastPart) { + footer += this._lastBoundary(); + } + next(footer); + }.bind(this); + }; + FormData3.prototype._lastBoundary = function() { + return "--" + this.getBoundary() + "--" + FormData3.LINE_BREAK; + }; + FormData3.prototype.getHeaders = function(userHeaders) { + var header; + var formHeaders = { + "content-type": "multipart/form-data; boundary=" + this.getBoundary() + }; + for (header in userHeaders) { + if (userHeaders.hasOwnProperty(header)) { + formHeaders[header.toLowerCase()] = userHeaders[header]; + } + } + return formHeaders; + }; + FormData3.prototype.setBoundary = function(boundary) { + this._boundary = boundary; + }; + FormData3.prototype.getBoundary = function() { + if (!this._boundary) { + this._generateBoundary(); + } + return this._boundary; + }; + FormData3.prototype.getBuffer = function() { + var dataBuffer = new Buffer.alloc(0); + var boundary = this.getBoundary(); + for (var i = 0, len = this._streams.length; i < len; i++) { + if (typeof this._streams[i] !== "function") { + if (Buffer.isBuffer(this._streams[i])) { + dataBuffer = Buffer.concat([dataBuffer, this._streams[i]]); + } else { + dataBuffer = Buffer.concat([dataBuffer, Buffer.from(this._streams[i])]); + } + if (typeof this._streams[i] !== "string" || this._streams[i].substring(2, boundary.length + 2) !== boundary) { + dataBuffer = Buffer.concat([dataBuffer, Buffer.from(FormData3.LINE_BREAK)]); + } + } + } + return Buffer.concat([dataBuffer, Buffer.from(this._lastBoundary())]); + }; + FormData3.prototype._generateBoundary = function() { + var boundary = "--------------------------"; + for (var i = 0; i < 24; i++) { + boundary += Math.floor(Math.random() * 10).toString(16); + } + this._boundary = boundary; + }; + FormData3.prototype.getLengthSync = function() { + var knownLength = this._overheadLength + this._valueLength; + if (this._streams.length) { + knownLength += this._lastBoundary().length; + } + if (!this.hasKnownLength()) { + this._error(new Error("Cannot calculate proper length in synchronous way.")); + } + return knownLength; + }; + FormData3.prototype.hasKnownLength = function() { + var hasKnownLength = true; + if (this._valuesToMeasure.length) { + hasKnownLength = false; + } + return hasKnownLength; + }; + FormData3.prototype.getLength = function(cb) { + var knownLength = this._overheadLength + this._valueLength; + if (this._streams.length) { + knownLength += this._lastBoundary().length; + } + if (!this._valuesToMeasure.length) { + process.nextTick(cb.bind(this, null, knownLength)); + return; + } + asynckit.parallel(this._valuesToMeasure, this._lengthRetriever, function(err2, values) { + if (err2) { + cb(err2); + return; + } + values.forEach(function(length) { + knownLength += length; + }); + cb(null, knownLength); + }); + }; + FormData3.prototype.submit = function(params, cb) { + var request, options2, defaults4 = { method: "post" }; + if (typeof params == "string") { + params = parseUrl(params); + options2 = populate({ + port: params.port, + path: params.pathname, + host: params.hostname, + protocol: params.protocol + }, defaults4); + } else { + options2 = populate(params, defaults4); + if (!options2.port) { + options2.port = options2.protocol == "https:" ? 443 : 80; + } + } + options2.headers = this.getHeaders(params.headers); + if (options2.protocol == "https:") { + request = https4.request(options2); + } else { + request = http4.request(options2); + } + this.getLength(function(err2, length) { + if (err2 && err2 !== "Unknown stream") { + this._error(err2); + return; + } + if (length) { + request.setHeader("Content-Length", length); + } + this.pipe(request); + if (cb) { + var onResponse; + var callback = function(error, responce) { + request.removeListener("error", callback); + request.removeListener("response", onResponse); + return cb.call(this, error, responce); + }; + onResponse = callback.bind(this, null); + request.on("error", callback); + request.on("response", onResponse); + } + }.bind(this)); + return request; + }; + FormData3.prototype._error = function(err2) { + if (!this.error) { + this.error = err2; + this.pause(); + this.emit("error", err2); + } + }; + FormData3.prototype.toString = function() { + return "[object FormData]"; + }; + } +}); + +// ../node_modules/.pnpm/proxy-from-env@1.1.0/node_modules/proxy-from-env/index.js +var require_proxy_from_env = __commonJS({ + "../node_modules/.pnpm/proxy-from-env@1.1.0/node_modules/proxy-from-env/index.js"(exports2) { + "use strict"; + var parseUrl = require("url").parse; + var DEFAULT_PORTS = { + ftp: 21, + gopher: 70, + http: 80, + https: 443, + ws: 80, + wss: 443 + }; + var stringEndsWith = String.prototype.endsWith || function(s) { + return s.length <= this.length && this.indexOf(s, this.length - s.length) !== -1; + }; + function getProxyForUrl2(url2) { + var parsedUrl = typeof url2 === "string" ? parseUrl(url2) : url2 || {}; + var proto = parsedUrl.protocol; + var hostname = parsedUrl.host; + var port = parsedUrl.port; + if (typeof hostname !== "string" || !hostname || typeof proto !== "string") { + return ""; + } + proto = proto.split(":", 1)[0]; + hostname = hostname.replace(/:\d*$/, ""); + port = parseInt(port) || DEFAULT_PORTS[proto] || 0; + if (!shouldProxy(hostname, port)) { + return ""; + } + var proxy2 = getEnv("npm_config_" + proto + "_proxy") || getEnv(proto + "_proxy") || getEnv("npm_config_proxy") || getEnv("all_proxy"); + if (proxy2 && proxy2.indexOf("://") === -1) { + proxy2 = proto + "://" + proxy2; + } + return proxy2; + } + function shouldProxy(hostname, port) { + var NO_PROXY = (getEnv("npm_config_no_proxy") || getEnv("no_proxy")).toLowerCase(); + if (!NO_PROXY) { + return true; + } + if (NO_PROXY === "*") { + return false; + } + return NO_PROXY.split(/[,\s]/).every(function(proxy2) { + if (!proxy2) { + return true; + } + var parsedProxy = proxy2.match(/^(.+):(\d+)$/); + var parsedProxyHostname = parsedProxy ? parsedProxy[1] : proxy2; + var parsedProxyPort = parsedProxy ? parseInt(parsedProxy[2]) : 0; + if (parsedProxyPort && parsedProxyPort !== port) { + return true; + } + if (!/^[.*]/.test(parsedProxyHostname)) { + return hostname !== parsedProxyHostname; + } + if (parsedProxyHostname.charAt(0) === "*") { + parsedProxyHostname = parsedProxyHostname.slice(1); + } + return !stringEndsWith.call(hostname, parsedProxyHostname); + }); + } + function getEnv(key) { + return process.env[key.toLowerCase()] || process.env[key.toUpperCase()] || ""; + } + exports2.getProxyForUrl = getProxyForUrl2; + } +}); + +// ../node_modules/.pnpm/follow-redirects@1.15.1/node_modules/follow-redirects/debug.js +var require_debug = __commonJS({ + "../node_modules/.pnpm/follow-redirects@1.15.1/node_modules/follow-redirects/debug.js"(exports2, module2) { + var debug; + module2.exports = function() { + if (!debug) { + try { + debug = require("debug")("follow-redirects"); + } catch (error) { + } + if (typeof debug !== "function") { + debug = function() { + }; + } + } + debug.apply(null, arguments); + }; + } +}); + +// ../node_modules/.pnpm/follow-redirects@1.15.1/node_modules/follow-redirects/index.js +var require_follow_redirects = __commonJS({ + "../node_modules/.pnpm/follow-redirects@1.15.1/node_modules/follow-redirects/index.js"(exports2, module2) { + var url2 = require("url"); + var URL2 = url2.URL; + var http4 = require("http"); + var https4 = require("https"); + var Writable2 = require("stream").Writable; + var assert2 = require("assert"); + var debug = require_debug(); + var events = ["abort", "aborted", "connect", "error", "socket", "timeout"]; + var eventHandlers = /* @__PURE__ */ Object.create(null); + events.forEach(function(event) { + eventHandlers[event] = function(arg1, arg2, arg3) { + this._redirectable.emit(event, arg1, arg2, arg3); + }; + }); + var RedirectionError = createErrorType( + "ERR_FR_REDIRECTION_FAILURE", + "Redirected request failed" + ); + var TooManyRedirectsError = createErrorType( + "ERR_FR_TOO_MANY_REDIRECTS", + "Maximum number of redirects exceeded" + ); + var MaxBodyLengthExceededError = createErrorType( + "ERR_FR_MAX_BODY_LENGTH_EXCEEDED", + "Request body larger than maxBodyLength limit" + ); + var WriteAfterEndError = createErrorType( + "ERR_STREAM_WRITE_AFTER_END", + "write after end" + ); + function RedirectableRequest(options2, responseCallback) { + Writable2.call(this); + this._sanitizeOptions(options2); + this._options = options2; + this._ended = false; + this._ending = false; + this._redirectCount = 0; + this._redirects = []; + this._requestBodyLength = 0; + this._requestBodyBuffers = []; + if (responseCallback) { + this.on("response", responseCallback); + } + var self2 = this; + this._onNativeResponse = function(response) { + self2._processResponse(response); + }; + this._performRequest(); + } + RedirectableRequest.prototype = Object.create(Writable2.prototype); + RedirectableRequest.prototype.abort = function() { + abortRequest(this._currentRequest); + this.emit("abort"); + }; + RedirectableRequest.prototype.write = function(data, encoding, callback) { + if (this._ending) { + throw new WriteAfterEndError(); + } + if (!(typeof data === "string" || typeof data === "object" && "length" in data)) { + throw new TypeError("data should be a string, Buffer or Uint8Array"); + } + if (typeof encoding === "function") { + callback = encoding; + encoding = null; + } + if (data.length === 0) { + if (callback) { + callback(); + } + return; + } + if (this._requestBodyLength + data.length <= this._options.maxBodyLength) { + this._requestBodyLength += data.length; + this._requestBodyBuffers.push({ data, encoding }); + this._currentRequest.write(data, encoding, callback); + } else { + this.emit("error", new MaxBodyLengthExceededError()); + this.abort(); + } + }; + RedirectableRequest.prototype.end = function(data, encoding, callback) { + if (typeof data === "function") { + callback = data; + data = encoding = null; + } else if (typeof encoding === "function") { + callback = encoding; + encoding = null; + } + if (!data) { + this._ended = this._ending = true; + this._currentRequest.end(null, null, callback); + } else { + var self2 = this; + var currentRequest = this._currentRequest; + this.write(data, encoding, function() { + self2._ended = true; + currentRequest.end(null, null, callback); + }); + this._ending = true; + } + }; + RedirectableRequest.prototype.setHeader = function(name, value) { + this._options.headers[name] = value; + this._currentRequest.setHeader(name, value); + }; + RedirectableRequest.prototype.removeHeader = function(name) { + delete this._options.headers[name]; + this._currentRequest.removeHeader(name); + }; + RedirectableRequest.prototype.setTimeout = function(msecs, callback) { + var self2 = this; + function destroyOnTimeout(socket) { + socket.setTimeout(msecs); + socket.removeListener("timeout", socket.destroy); + socket.addListener("timeout", socket.destroy); + } + function startTimer(socket) { + if (self2._timeout) { + clearTimeout(self2._timeout); + } + self2._timeout = setTimeout(function() { + self2.emit("timeout"); + clearTimer(); + }, msecs); + destroyOnTimeout(socket); + } + function clearTimer() { + if (self2._timeout) { + clearTimeout(self2._timeout); + self2._timeout = null; + } + self2.removeListener("abort", clearTimer); + self2.removeListener("error", clearTimer); + self2.removeListener("response", clearTimer); + if (callback) { + self2.removeListener("timeout", callback); + } + if (!self2.socket) { + self2._currentRequest.removeListener("socket", startTimer); + } + } + if (callback) { + this.on("timeout", callback); + } + if (this.socket) { + startTimer(this.socket); + } else { + this._currentRequest.once("socket", startTimer); + } + this.on("socket", destroyOnTimeout); + this.on("abort", clearTimer); + this.on("error", clearTimer); + this.on("response", clearTimer); + return this; + }; + [ + "flushHeaders", + "getHeader", + "setNoDelay", + "setSocketKeepAlive" + ].forEach(function(method) { + RedirectableRequest.prototype[method] = function(a, b) { + return this._currentRequest[method](a, b); + }; + }); + ["aborted", "connection", "socket"].forEach(function(property) { + Object.defineProperty(RedirectableRequest.prototype, property, { + get: function() { + return this._currentRequest[property]; + } + }); + }); + RedirectableRequest.prototype._sanitizeOptions = function(options2) { + if (!options2.headers) { + options2.headers = {}; + } + if (options2.host) { + if (!options2.hostname) { + options2.hostname = options2.host; + } + delete options2.host; + } + if (!options2.pathname && options2.path) { + var searchPos = options2.path.indexOf("?"); + if (searchPos < 0) { + options2.pathname = options2.path; + } else { + options2.pathname = options2.path.substring(0, searchPos); + options2.search = options2.path.substring(searchPos); + } + } + }; + RedirectableRequest.prototype._performRequest = function() { + var protocol2 = this._options.protocol; + var nativeProtocol = this._options.nativeProtocols[protocol2]; + if (!nativeProtocol) { + this.emit("error", new TypeError("Unsupported protocol " + protocol2)); + return; + } + if (this._options.agents) { + var scheme = protocol2.slice(0, -1); + this._options.agent = this._options.agents[scheme]; + } + var request = this._currentRequest = nativeProtocol.request(this._options, this._onNativeResponse); + request._redirectable = this; + for (var event of events) { + request.on(event, eventHandlers[event]); + } + this._currentUrl = /^\//.test(this._options.path) ? url2.format(this._options) : ( + // When making a request to a proxy, […] + // a client MUST send the target URI in absolute-form […]. + this._currentUrl = this._options.path + ); + if (this._isRedirect) { + var i = 0; + var self2 = this; + var buffers = this._requestBodyBuffers; + (function writeNext(error) { + if (request === self2._currentRequest) { + if (error) { + self2.emit("error", error); + } else if (i < buffers.length) { + var buffer2 = buffers[i++]; + if (!request.finished) { + request.write(buffer2.data, buffer2.encoding, writeNext); + } + } else if (self2._ended) { + request.end(); + } + } + })(); + } + }; + RedirectableRequest.prototype._processResponse = function(response) { + var statusCode = response.statusCode; + if (this._options.trackRedirects) { + this._redirects.push({ + url: this._currentUrl, + headers: response.headers, + statusCode + }); + } + var location = response.headers.location; + if (!location || this._options.followRedirects === false || statusCode < 300 || statusCode >= 400) { + response.responseUrl = this._currentUrl; + response.redirects = this._redirects; + this.emit("response", response); + this._requestBodyBuffers = []; + return; + } + abortRequest(this._currentRequest); + response.destroy(); + if (++this._redirectCount > this._options.maxRedirects) { + this.emit("error", new TooManyRedirectsError()); + return; + } + var requestHeaders; + var beforeRedirect = this._options.beforeRedirect; + if (beforeRedirect) { + requestHeaders = Object.assign({ + // The Host header was set by nativeProtocol.request + Host: response.req.getHeader("host") + }, this._options.headers); + } + var method = this._options.method; + if ((statusCode === 301 || statusCode === 302) && this._options.method === "POST" || // RFC7231§6.4.4: The 303 (See Other) status code indicates that + // the server is redirecting the user agent to a different resource […] + // A user agent can perform a retrieval request targeting that URI + // (a GET or HEAD request if using HTTP) […] + statusCode === 303 && !/^(?:GET|HEAD)$/.test(this._options.method)) { + this._options.method = "GET"; + this._requestBodyBuffers = []; + removeMatchingHeaders(/^content-/i, this._options.headers); + } + var currentHostHeader = removeMatchingHeaders(/^host$/i, this._options.headers); + var currentUrlParts = url2.parse(this._currentUrl); + var currentHost = currentHostHeader || currentUrlParts.host; + var currentUrl = /^\w+:/.test(location) ? this._currentUrl : url2.format(Object.assign(currentUrlParts, { host: currentHost })); + var redirectUrl; + try { + redirectUrl = url2.resolve(currentUrl, location); + } catch (cause) { + this.emit("error", new RedirectionError(cause)); + return; + } + debug("redirecting to", redirectUrl); + this._isRedirect = true; + var redirectUrlParts = url2.parse(redirectUrl); + Object.assign(this._options, redirectUrlParts); + if (redirectUrlParts.protocol !== currentUrlParts.protocol && redirectUrlParts.protocol !== "https:" || redirectUrlParts.host !== currentHost && !isSubdomain(redirectUrlParts.host, currentHost)) { + removeMatchingHeaders(/^(?:authorization|cookie)$/i, this._options.headers); + } + if (typeof beforeRedirect === "function") { + var responseDetails = { + headers: response.headers, + statusCode + }; + var requestDetails = { + url: currentUrl, + method, + headers: requestHeaders + }; + try { + beforeRedirect(this._options, responseDetails, requestDetails); + } catch (err2) { + this.emit("error", err2); + return; + } + this._sanitizeOptions(this._options); + } + try { + this._performRequest(); + } catch (cause) { + this.emit("error", new RedirectionError(cause)); + } + }; + function wrap2(protocols) { + var exports3 = { + maxRedirects: 21, + maxBodyLength: 10 * 1024 * 1024 + }; + var nativeProtocols = {}; + Object.keys(protocols).forEach(function(scheme) { + var protocol2 = scheme + ":"; + var nativeProtocol = nativeProtocols[protocol2] = protocols[scheme]; + var wrappedProtocol = exports3[scheme] = Object.create(nativeProtocol); + function request(input, options2, callback) { + if (typeof input === "string") { + var urlStr = input; + try { + input = urlToOptions(new URL2(urlStr)); + } catch (err2) { + input = url2.parse(urlStr); + } + } else if (URL2 && input instanceof URL2) { + input = urlToOptions(input); + } else { + callback = options2; + options2 = input; + input = { protocol: protocol2 }; + } + if (typeof options2 === "function") { + callback = options2; + options2 = null; + } + options2 = Object.assign({ + maxRedirects: exports3.maxRedirects, + maxBodyLength: exports3.maxBodyLength + }, input, options2); + options2.nativeProtocols = nativeProtocols; + assert2.equal(options2.protocol, protocol2, "protocol mismatch"); + debug("options", options2); + return new RedirectableRequest(options2, callback); + } + function get(input, options2, callback) { + var wrappedRequest = wrappedProtocol.request(input, options2, callback); + wrappedRequest.end(); + return wrappedRequest; + } + Object.defineProperties(wrappedProtocol, { + request: { value: request, configurable: true, enumerable: true, writable: true }, + get: { value: get, configurable: true, enumerable: true, writable: true } + }); + }); + return exports3; + } + function noop2() { + } + function urlToOptions(urlObject) { + var options2 = { + protocol: urlObject.protocol, + hostname: urlObject.hostname.startsWith("[") ? ( + /* istanbul ignore next */ + urlObject.hostname.slice(1, -1) + ) : urlObject.hostname, + hash: urlObject.hash, + search: urlObject.search, + pathname: urlObject.pathname, + path: urlObject.pathname + urlObject.search, + href: urlObject.href + }; + if (urlObject.port !== "") { + options2.port = Number(urlObject.port); + } + return options2; + } + function removeMatchingHeaders(regex, headers) { + var lastValue; + for (var header in headers) { + if (regex.test(header)) { + lastValue = headers[header]; + delete headers[header]; + } + } + return lastValue === null || typeof lastValue === "undefined" ? void 0 : String(lastValue).trim(); + } + function createErrorType(code, defaultMessage) { + function CustomError(cause) { + Error.captureStackTrace(this, this.constructor); + if (!cause) { + this.message = defaultMessage; + } else { + this.message = defaultMessage + ": " + cause.message; + this.cause = cause; + } + } + CustomError.prototype = new Error(); + CustomError.prototype.constructor = CustomError; + CustomError.prototype.name = "Error [" + code + "]"; + CustomError.prototype.code = code; + return CustomError; + } + function abortRequest(request) { + for (var event of events) { + request.removeListener(event, eventHandlers[event]); + } + request.on("error", noop2); + request.abort(); + } + function isSubdomain(subdomain, domain2) { + const dot = subdomain.length - domain2.length - 1; + return dot > 0 && subdomain[dot] === "." && subdomain.endsWith(domain2); + } + module2.exports = wrap2({ http: http4, https: https4 }); + module2.exports.wrap = wrap2; + } +}); + +// ../node_modules/.pnpm/listenercount@1.0.1/node_modules/listenercount/index.js +var require_listenercount = __commonJS({ + "../node_modules/.pnpm/listenercount@1.0.1/node_modules/listenercount/index.js"(exports2, module2) { + "use strict"; + var listenerCount = require("events").listenerCount; + listenerCount = listenerCount || function(ee, event) { + var listeners = ee && ee._events && ee._events[event]; + if (Array.isArray(listeners)) { + return listeners.length; + } else if (typeof listeners === "function") { + return 1; + } else { + return 0; + } + }; + module2.exports = listenerCount; + } +}); + +// ../node_modules/.pnpm/buffer-indexof-polyfill@1.0.2/node_modules/buffer-indexof-polyfill/init-buffer.js +var require_init_buffer = __commonJS({ + "../node_modules/.pnpm/buffer-indexof-polyfill@1.0.2/node_modules/buffer-indexof-polyfill/init-buffer.js"(exports2, module2) { + module2.exports = function initBuffer(val) { + var nodeVersion = process && process.version ? process.version : "v5.0.0"; + var major2 = nodeVersion.split(".")[0].replace("v", ""); + return major2 < 6 ? new Buffer(val) : Buffer.from(val); + }; + } +}); + +// ../node_modules/.pnpm/buffer-indexof-polyfill@1.0.2/node_modules/buffer-indexof-polyfill/index.js +var require_buffer_indexof_polyfill = __commonJS({ + "../node_modules/.pnpm/buffer-indexof-polyfill@1.0.2/node_modules/buffer-indexof-polyfill/index.js"() { + "use strict"; + var initBuffer = require_init_buffer(); + if (!Buffer.prototype.indexOf) { + Buffer.prototype.indexOf = function(value, offset) { + offset = offset || 0; + if (typeof value === "string" || value instanceof String) { + value = initBuffer(value); + } else if (typeof value === "number" || value instanceof Number) { + value = initBuffer([value]); + } + var len = value.length; + for (var i = offset; i <= this.length - len; i++) { + var mismatch = false; + for (var j = 0; j < len; j++) { + if (this[i + j] != value[j]) { + mismatch = true; + break; + } + } + if (!mismatch) { + return i; + } + } + return -1; + }; + } + function bufferLastIndexOf(value, offset) { + if (typeof value === "string" || value instanceof String) { + value = initBuffer(value); + } else if (typeof value === "number" || value instanceof Number) { + value = initBuffer([value]); + } + var len = value.length; + offset = offset || this.length - len; + for (var i = offset; i >= 0; i--) { + var mismatch = false; + for (var j = 0; j < len; j++) { + if (this[i + j] != value[j]) { + mismatch = true; + break; + } + } + if (!mismatch) { + return i; + } + } + return -1; + } + if (Buffer.prototype.lastIndexOf) { + if (initBuffer("ABC").lastIndexOf("ABC") === -1) + Buffer.prototype.lastIndexOf = bufferLastIndexOf; + } else { + Buffer.prototype.lastIndexOf = bufferLastIndexOf; + } + } +}); + +// ../node_modules/.pnpm/setimmediate@1.0.5/node_modules/setimmediate/setImmediate.js +var require_setImmediate = __commonJS({ + "../node_modules/.pnpm/setimmediate@1.0.5/node_modules/setimmediate/setImmediate.js"(exports2) { + (function(global2, undefined2) { + "use strict"; + if (global2.setImmediate) { + return; + } + var nextHandle = 1; + var tasksByHandle = {}; + var currentlyRunningATask = false; + var doc = global2.document; + var registerImmediate; + function setImmediate2(callback) { + if (typeof callback !== "function") { + callback = new Function("" + callback); + } + var args3 = new Array(arguments.length - 1); + for (var i = 0; i < args3.length; i++) { + args3[i] = arguments[i + 1]; + } + var task = { callback, args: args3 }; + tasksByHandle[nextHandle] = task; + registerImmediate(nextHandle); + return nextHandle++; + } + function clearImmediate2(handle2) { + delete tasksByHandle[handle2]; + } + function run2(task) { + var callback = task.callback; + var args3 = task.args; + switch (args3.length) { + case 0: + callback(); + break; + case 1: + callback(args3[0]); + break; + case 2: + callback(args3[0], args3[1]); + break; + case 3: + callback(args3[0], args3[1], args3[2]); + break; + default: + callback.apply(undefined2, args3); + break; + } + } + function runIfPresent(handle2) { + if (currentlyRunningATask) { + setTimeout(runIfPresent, 0, handle2); + } else { + var task = tasksByHandle[handle2]; + if (task) { + currentlyRunningATask = true; + try { + run2(task); + } finally { + clearImmediate2(handle2); + currentlyRunningATask = false; + } + } + } + } + function installNextTickImplementation() { + registerImmediate = function(handle2) { + process.nextTick(function() { + runIfPresent(handle2); + }); + }; + } + function canUsePostMessage() { + if (global2.postMessage && !global2.importScripts) { + var postMessageIsAsynchronous = true; + var oldOnMessage = global2.onmessage; + global2.onmessage = function() { + postMessageIsAsynchronous = false; + }; + global2.postMessage("", "*"); + global2.onmessage = oldOnMessage; + return postMessageIsAsynchronous; + } + } + function installPostMessageImplementation() { + var messagePrefix = "setImmediate$" + Math.random() + "$"; + var onGlobalMessage = function(event) { + if (event.source === global2 && typeof event.data === "string" && event.data.indexOf(messagePrefix) === 0) { + runIfPresent(+event.data.slice(messagePrefix.length)); + } + }; + if (global2.addEventListener) { + global2.addEventListener("message", onGlobalMessage, false); + } else { + global2.attachEvent("onmessage", onGlobalMessage); + } + registerImmediate = function(handle2) { + global2.postMessage(messagePrefix + handle2, "*"); + }; + } + function installMessageChannelImplementation() { + var channel = new MessageChannel(); + channel.port1.onmessage = function(event) { + var handle2 = event.data; + runIfPresent(handle2); + }; + registerImmediate = function(handle2) { + channel.port2.postMessage(handle2); + }; + } + function installReadyStateChangeImplementation() { + var html = doc.documentElement; + registerImmediate = function(handle2) { + var script = doc.createElement("script"); + script.onreadystatechange = function() { + runIfPresent(handle2); + script.onreadystatechange = null; + html.removeChild(script); + script = null; + }; + html.appendChild(script); + }; + } + function installSetTimeoutImplementation() { + registerImmediate = function(handle2) { + setTimeout(runIfPresent, 0, handle2); + }; + } + var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global2); + attachTo = attachTo && attachTo.setTimeout ? attachTo : global2; + if ({}.toString.call(global2.process) === "[object process]") { + installNextTickImplementation(); + } else if (canUsePostMessage()) { + installPostMessageImplementation(); + } else if (global2.MessageChannel) { + installMessageChannelImplementation(); + } else if (doc && "onreadystatechange" in doc.createElement("script")) { + installReadyStateChangeImplementation(); + } else { + installSetTimeoutImplementation(); + } + attachTo.setImmediate = setImmediate2; + attachTo.clearImmediate = clearImmediate2; + })(typeof self === "undefined" ? typeof global === "undefined" ? exports2 : global : self); + } +}); + +// ../node_modules/.pnpm/traverse@0.3.9/node_modules/traverse/index.js +var require_traverse = __commonJS({ + "../node_modules/.pnpm/traverse@0.3.9/node_modules/traverse/index.js"(exports2, module2) { + module2.exports = Traverse; + function Traverse(obj2) { + if (!(this instanceof Traverse)) + return new Traverse(obj2); + this.value = obj2; + } + Traverse.prototype.get = function(ps) { + var node = this.value; + for (var i = 0; i < ps.length; i++) { + var key = ps[i]; + if (!Object.hasOwnProperty.call(node, key)) { + node = void 0; + break; + } + node = node[key]; + } + return node; + }; + Traverse.prototype.set = function(ps, value) { + var node = this.value; + for (var i = 0; i < ps.length - 1; i++) { + var key = ps[i]; + if (!Object.hasOwnProperty.call(node, key)) + node[key] = {}; + node = node[key]; + } + node[ps[i]] = value; + return value; + }; + Traverse.prototype.map = function(cb) { + return walk(this.value, cb, true); + }; + Traverse.prototype.forEach = function(cb) { + this.value = walk(this.value, cb, false); + return this.value; + }; + Traverse.prototype.reduce = function(cb, init5) { + var skip = arguments.length === 1; + var acc = skip ? this.value : init5; + this.forEach(function(x) { + if (!this.isRoot || !skip) { + acc = cb.call(this, acc, x); + } + }); + return acc; + }; + Traverse.prototype.deepEqual = function(obj2) { + if (arguments.length !== 1) { + throw new Error( + "deepEqual requires exactly one object to compare against" + ); + } + var equal = true; + var node = obj2; + this.forEach(function(y) { + var notEqual = function() { + equal = false; + return void 0; + }.bind(this); + if (!this.isRoot) { + if (typeof node !== "object") + return notEqual(); + node = node[this.key]; + } + var x = node; + this.post(function() { + node = x; + }); + var toS = function(o) { + return Object.prototype.toString.call(o); + }; + if (this.circular) { + if (Traverse(obj2).get(this.circular.path) !== x) + notEqual(); + } else if (typeof x !== typeof y) { + notEqual(); + } else if (x === null || y === null || x === void 0 || y === void 0) { + if (x !== y) + notEqual(); + } else if (x.__proto__ !== y.__proto__) { + notEqual(); + } else if (x === y) { + } else if (typeof x === "function") { + if (x instanceof RegExp) { + if (x.toString() != y.toString()) + notEqual(); + } else if (x !== y) + notEqual(); + } else if (typeof x === "object") { + if (toS(y) === "[object Arguments]" || toS(x) === "[object Arguments]") { + if (toS(x) !== toS(y)) { + notEqual(); + } + } else if (x instanceof Date || y instanceof Date) { + if (!(x instanceof Date) || !(y instanceof Date) || x.getTime() !== y.getTime()) { + notEqual(); + } + } else { + var kx = Object.keys(x); + var ky = Object.keys(y); + if (kx.length !== ky.length) + return notEqual(); + for (var i = 0; i < kx.length; i++) { + var k = kx[i]; + if (!Object.hasOwnProperty.call(y, k)) { + notEqual(); + } + } + } + } + }); + return equal; + }; + Traverse.prototype.paths = function() { + var acc = []; + this.forEach(function(x) { + acc.push(this.path); + }); + return acc; + }; + Traverse.prototype.nodes = function() { + var acc = []; + this.forEach(function(x) { + acc.push(this.node); + }); + return acc; + }; + Traverse.prototype.clone = function() { + var parents = [], nodes = []; + return function clone(src) { + for (var i = 0; i < parents.length; i++) { + if (parents[i] === src) { + return nodes[i]; + } + } + if (typeof src === "object" && src !== null) { + var dst = copy(src); + parents.push(src); + nodes.push(dst); + Object.keys(src).forEach(function(key) { + dst[key] = clone(src[key]); + }); + parents.pop(); + nodes.pop(); + return dst; + } else { + return src; + } + }(this.value); + }; + function walk(root, cb, immutable) { + var path30 = []; + var parents = []; + var alive = true; + return function walker(node_) { + var node = immutable ? copy(node_) : node_; + var modifiers = {}; + var state = { + node, + node_, + path: [].concat(path30), + parent: parents.slice(-1)[0], + key: path30.slice(-1)[0], + isRoot: path30.length === 0, + level: path30.length, + circular: null, + update: function(x) { + if (!state.isRoot) { + state.parent.node[state.key] = x; + } + state.node = x; + }, + "delete": function() { + delete state.parent.node[state.key]; + }, + remove: function() { + if (Array.isArray(state.parent.node)) { + state.parent.node.splice(state.key, 1); + } else { + delete state.parent.node[state.key]; + } + }, + before: function(f) { + modifiers.before = f; + }, + after: function(f) { + modifiers.after = f; + }, + pre: function(f) { + modifiers.pre = f; + }, + post: function(f) { + modifiers.post = f; + }, + stop: function() { + alive = false; + } + }; + if (!alive) + return state; + if (typeof node === "object" && node !== null) { + state.isLeaf = Object.keys(node).length == 0; + for (var i = 0; i < parents.length; i++) { + if (parents[i].node_ === node_) { + state.circular = parents[i]; + break; + } + } + } else { + state.isLeaf = true; + } + state.notLeaf = !state.isLeaf; + state.notRoot = !state.isRoot; + var ret2 = cb.call(state, state.node); + if (ret2 !== void 0 && state.update) + state.update(ret2); + if (modifiers.before) + modifiers.before.call(state, state.node); + if (typeof state.node == "object" && state.node !== null && !state.circular) { + parents.push(state); + var keys = Object.keys(state.node); + keys.forEach(function(key, i2) { + path30.push(key); + if (modifiers.pre) + modifiers.pre.call(state, state.node[key], key); + var child = walker(state.node[key]); + if (immutable && Object.hasOwnProperty.call(state.node, key)) { + state.node[key] = child.node; + } + child.isLast = i2 == keys.length - 1; + child.isFirst = i2 == 0; + if (modifiers.post) + modifiers.post.call(state, child); + path30.pop(); + }); + parents.pop(); + } + if (modifiers.after) + modifiers.after.call(state, state.node); + return state; + }(root).node; + } + Object.keys(Traverse.prototype).forEach(function(key) { + Traverse[key] = function(obj2) { + var args3 = [].slice.call(arguments, 1); + var t = Traverse(obj2); + return t[key].apply(t, args3); + }; + }); + function copy(src) { + if (typeof src === "object" && src !== null) { + var dst; + if (Array.isArray(src)) { + dst = []; + } else if (src instanceof Date) { + dst = new Date(src); + } else if (src instanceof Boolean) { + dst = new Boolean(src); + } else if (src instanceof Number) { + dst = new Number(src); + } else if (src instanceof String) { + dst = new String(src); + } else { + dst = Object.create(Object.getPrototypeOf(src)); + } + Object.keys(src).forEach(function(key) { + dst[key] = src[key]; + }); + return dst; + } else + return src; + } + } +}); + +// ../node_modules/.pnpm/chainsaw@0.1.0/node_modules/chainsaw/index.js +var require_chainsaw = __commonJS({ + "../node_modules/.pnpm/chainsaw@0.1.0/node_modules/chainsaw/index.js"(exports2, module2) { + var Traverse = require_traverse(); + var EventEmitter4 = require("events").EventEmitter; + module2.exports = Chainsaw; + function Chainsaw(builder) { + var saw = Chainsaw.saw(builder, {}); + var r = builder.call(saw.handlers, saw); + if (r !== void 0) + saw.handlers = r; + saw.record(); + return saw.chain(); + } + Chainsaw.light = function ChainsawLight(builder) { + var saw = Chainsaw.saw(builder, {}); + var r = builder.call(saw.handlers, saw); + if (r !== void 0) + saw.handlers = r; + return saw.chain(); + }; + Chainsaw.saw = function(builder, handlers) { + var saw = new EventEmitter4(); + saw.handlers = handlers; + saw.actions = []; + saw.chain = function() { + var ch = Traverse(saw.handlers).map(function(node) { + if (this.isRoot) + return node; + var ps = this.path; + if (typeof node === "function") { + this.update(function() { + saw.actions.push({ + path: ps, + args: [].slice.call(arguments) + }); + return ch; + }); + } + }); + process.nextTick(function() { + saw.emit("begin"); + saw.next(); + }); + return ch; + }; + saw.pop = function() { + return saw.actions.shift(); + }; + saw.next = function() { + var action = saw.pop(); + if (!action) { + saw.emit("end"); + } else if (!action.trap) { + var node = saw.handlers; + action.path.forEach(function(key) { + node = node[key]; + }); + node.apply(saw.handlers, action.args); + } + }; + saw.nest = function(cb) { + var args3 = [].slice.call(arguments, 1); + var autonext = true; + if (typeof cb === "boolean") { + var autonext = cb; + cb = args3.shift(); + } + var s = Chainsaw.saw(builder, {}); + var r = builder.call(s.handlers, s); + if (r !== void 0) + s.handlers = r; + if ("undefined" !== typeof saw.step) { + s.record(); + } + cb.apply(s.chain(), args3); + if (autonext !== false) + s.on("end", saw.next); + }; + saw.record = function() { + upgradeChainsaw(saw); + }; + ["trap", "down", "jump"].forEach(function(method) { + saw[method] = function() { + throw new Error("To use the trap, down and jump features, please call record() first to start recording actions."); + }; + }); + return saw; + }; + function upgradeChainsaw(saw) { + saw.step = 0; + saw.pop = function() { + return saw.actions[saw.step++]; + }; + saw.trap = function(name, cb) { + var ps = Array.isArray(name) ? name : [name]; + saw.actions.push({ + path: ps, + step: saw.step, + cb, + trap: true + }); + }; + saw.down = function(name) { + var ps = (Array.isArray(name) ? name : [name]).join("/"); + var i = saw.actions.slice(saw.step).map(function(x) { + if (x.trap && x.step <= saw.step) + return false; + return x.path.join("/") == ps; + }).indexOf(true); + if (i >= 0) + saw.step += i; + else + saw.step = saw.actions.length; + var act = saw.actions[saw.step - 1]; + if (act && act.trap) { + saw.step = act.step; + act.cb(); + } else + saw.next(); + }; + saw.jump = function(step) { + saw.step = step; + saw.next(); + }; + } + } +}); + +// ../node_modules/.pnpm/buffers@0.1.1/node_modules/buffers/index.js +var require_buffers = __commonJS({ + "../node_modules/.pnpm/buffers@0.1.1/node_modules/buffers/index.js"(exports2, module2) { + module2.exports = Buffers; + function Buffers(bufs) { + if (!(this instanceof Buffers)) + return new Buffers(bufs); + this.buffers = bufs || []; + this.length = this.buffers.reduce(function(size, buf) { + return size + buf.length; + }, 0); + } + Buffers.prototype.push = function() { + for (var i = 0; i < arguments.length; i++) { + if (!Buffer.isBuffer(arguments[i])) { + throw new TypeError("Tried to push a non-buffer"); + } + } + for (var i = 0; i < arguments.length; i++) { + var buf = arguments[i]; + this.buffers.push(buf); + this.length += buf.length; + } + return this.length; + }; + Buffers.prototype.unshift = function() { + for (var i = 0; i < arguments.length; i++) { + if (!Buffer.isBuffer(arguments[i])) { + throw new TypeError("Tried to unshift a non-buffer"); + } + } + for (var i = 0; i < arguments.length; i++) { + var buf = arguments[i]; + this.buffers.unshift(buf); + this.length += buf.length; + } + return this.length; + }; + Buffers.prototype.copy = function(dst, dStart, start4, end) { + return this.slice(start4, end).copy(dst, dStart, 0, end - start4); + }; + Buffers.prototype.splice = function(i, howMany) { + var buffers = this.buffers; + var index = i >= 0 ? i : this.length - i; + var reps = [].slice.call(arguments, 2); + if (howMany === void 0) { + howMany = this.length - index; + } else if (howMany > this.length - index) { + howMany = this.length - index; + } + for (var i = 0; i < reps.length; i++) { + this.length += reps[i].length; + } + var removed = new Buffers(); + var bytes = 0; + var startBytes = 0; + for (var ii = 0; ii < buffers.length && startBytes + buffers[ii].length < index; ii++) { + startBytes += buffers[ii].length; + } + if (index - startBytes > 0) { + var start4 = index - startBytes; + if (start4 + howMany < buffers[ii].length) { + removed.push(buffers[ii].slice(start4, start4 + howMany)); + var orig = buffers[ii]; + var buf0 = new Buffer(start4); + for (var i = 0; i < start4; i++) { + buf0[i] = orig[i]; + } + var buf1 = new Buffer(orig.length - start4 - howMany); + for (var i = start4 + howMany; i < orig.length; i++) { + buf1[i - howMany - start4] = orig[i]; + } + if (reps.length > 0) { + var reps_ = reps.slice(); + reps_.unshift(buf0); + reps_.push(buf1); + buffers.splice.apply(buffers, [ii, 1].concat(reps_)); + ii += reps_.length; + reps = []; + } else { + buffers.splice(ii, 1, buf0, buf1); + ii += 2; + } + } else { + removed.push(buffers[ii].slice(start4)); + buffers[ii] = buffers[ii].slice(0, start4); + ii++; + } + } + if (reps.length > 0) { + buffers.splice.apply(buffers, [ii, 0].concat(reps)); + ii += reps.length; + } + while (removed.length < howMany) { + var buf = buffers[ii]; + var len = buf.length; + var take = Math.min(len, howMany - removed.length); + if (take === len) { + removed.push(buf); + buffers.splice(ii, 1); + } else { + removed.push(buf.slice(0, take)); + buffers[ii] = buffers[ii].slice(take); + } + } + this.length -= removed.length; + return removed; + }; + Buffers.prototype.slice = function(i, j) { + var buffers = this.buffers; + if (j === void 0) + j = this.length; + if (i === void 0) + i = 0; + if (j > this.length) + j = this.length; + var startBytes = 0; + for (var si = 0; si < buffers.length && startBytes + buffers[si].length <= i; si++) { + startBytes += buffers[si].length; + } + var target = new Buffer(j - i); + var ti = 0; + for (var ii = si; ti < j - i && ii < buffers.length; ii++) { + var len = buffers[ii].length; + var start4 = ti === 0 ? i - startBytes : 0; + var end = ti + len >= j - i ? Math.min(start4 + (j - i) - ti, len) : len; + buffers[ii].copy(target, ti, start4, end); + ti += end - start4; + } + return target; + }; + Buffers.prototype.pos = function(i) { + if (i < 0 || i >= this.length) + throw new Error("oob"); + var l2 = i, bi = 0, bu = null; + for (; ; ) { + bu = this.buffers[bi]; + if (l2 < bu.length) { + return { buf: bi, offset: l2 }; + } else { + l2 -= bu.length; + } + bi++; + } + }; + Buffers.prototype.get = function get(i) { + var pos = this.pos(i); + return this.buffers[pos.buf].get(pos.offset); + }; + Buffers.prototype.set = function set(i, b) { + var pos = this.pos(i); + return this.buffers[pos.buf].set(pos.offset, b); + }; + Buffers.prototype.indexOf = function(needle, offset) { + if ("string" === typeof needle) { + needle = new Buffer(needle); + } else if (needle instanceof Buffer) { + } else { + throw new Error("Invalid type for a search string"); + } + if (!needle.length) { + return 0; + } + if (!this.length) { + return -1; + } + var i = 0, j = 0, match2 = 0, mstart, pos = 0; + if (offset) { + var p = this.pos(offset); + i = p.buf; + j = p.offset; + pos = offset; + } + for (; ; ) { + while (j >= this.buffers[i].length) { + j = 0; + i++; + if (i >= this.buffers.length) { + return -1; + } + } + var char = this.buffers[i][j]; + if (char == needle[match2]) { + if (match2 == 0) { + mstart = { + i, + j, + pos + }; + } + match2++; + if (match2 == needle.length) { + return mstart.pos; + } + } else if (match2 != 0) { + i = mstart.i; + j = mstart.j; + pos = mstart.pos; + match2 = 0; + } + j++; + pos++; + } + }; + Buffers.prototype.toBuffer = function() { + return this.slice(); + }; + Buffers.prototype.toString = function(encoding, start4, end) { + return this.slice(start4, end).toString(encoding); + }; + } +}); + +// ../node_modules/.pnpm/binary@0.3.0/node_modules/binary/lib/vars.js +var require_vars = __commonJS({ + "../node_modules/.pnpm/binary@0.3.0/node_modules/binary/lib/vars.js"(exports2, module2) { + module2.exports = function(store) { + function getset(name, value) { + var node = vars.store; + var keys = name.split("."); + keys.slice(0, -1).forEach(function(k) { + if (node[k] === void 0) + node[k] = {}; + node = node[k]; + }); + var key = keys[keys.length - 1]; + if (arguments.length == 1) { + return node[key]; + } else { + return node[key] = value; + } + } + var vars = { + get: function(name) { + return getset(name); + }, + set: function(name, value) { + return getset(name, value); + }, + store: store || {} + }; + return vars; + }; + } +}); + +// ../node_modules/.pnpm/binary@0.3.0/node_modules/binary/index.js +var require_binary = __commonJS({ + "../node_modules/.pnpm/binary@0.3.0/node_modules/binary/index.js"(exports2, module2) { + var Chainsaw = require_chainsaw(); + var EventEmitter4 = require("events").EventEmitter; + var Buffers = require_buffers(); + var Vars = require_vars(); + var Stream2 = require("stream").Stream; + exports2 = module2.exports = function(bufOrEm, eventName) { + if (Buffer.isBuffer(bufOrEm)) { + return exports2.parse(bufOrEm); + } + var s = exports2.stream(); + if (bufOrEm && bufOrEm.pipe) { + bufOrEm.pipe(s); + } else if (bufOrEm) { + bufOrEm.on(eventName || "data", function(buf) { + s.write(buf); + }); + bufOrEm.on("end", function() { + s.end(); + }); + } + return s; + }; + exports2.stream = function(input) { + if (input) + return exports2.apply(null, arguments); + var pending = null; + function getBytes(bytes, cb, skip) { + pending = { + bytes, + skip, + cb: function(buf) { + pending = null; + cb(buf); + } + }; + dispatch(); + } + var offset = null; + function dispatch() { + if (!pending) { + if (caughtEnd) + done = true; + return; + } + if (typeof pending === "function") { + pending(); + } else { + var bytes = offset + pending.bytes; + if (buffers.length >= bytes) { + var buf; + if (offset == null) { + buf = buffers.splice(0, bytes); + if (!pending.skip) { + buf = buf.slice(); + } + } else { + if (!pending.skip) { + buf = buffers.slice(offset, bytes); + } + offset = bytes; + } + if (pending.skip) { + pending.cb(); + } else { + pending.cb(buf); + } + } + } + } + function builder(saw) { + function next() { + if (!done) + saw.next(); + } + var self2 = words(function(bytes, cb) { + return function(name) { + getBytes(bytes, function(buf) { + vars.set(name, cb(buf)); + next(); + }); + }; + }); + self2.tap = function(cb) { + saw.nest(cb, vars.store); + }; + self2.into = function(key, cb) { + if (!vars.get(key)) + vars.set(key, {}); + var parent = vars; + vars = Vars(parent.get(key)); + saw.nest(function() { + cb.apply(this, arguments); + this.tap(function() { + vars = parent; + }); + }, vars.store); + }; + self2.flush = function() { + vars.store = {}; + next(); + }; + self2.loop = function(cb) { + var end = false; + saw.nest(false, function loop() { + this.vars = vars.store; + cb.call(this, function() { + end = true; + next(); + }, vars.store); + this.tap(function() { + if (end) + saw.next(); + else + loop.call(this); + }.bind(this)); + }, vars.store); + }; + self2.buffer = function(name, bytes) { + if (typeof bytes === "string") { + bytes = vars.get(bytes); + } + getBytes(bytes, function(buf) { + vars.set(name, buf); + next(); + }); + }; + self2.skip = function(bytes) { + if (typeof bytes === "string") { + bytes = vars.get(bytes); + } + getBytes(bytes, function() { + next(); + }); + }; + self2.scan = function find(name, search) { + if (typeof search === "string") { + search = new Buffer(search); + } else if (!Buffer.isBuffer(search)) { + throw new Error("search must be a Buffer or a string"); + } + var taken = 0; + pending = function() { + var pos = buffers.indexOf(search, offset + taken); + var i = pos - offset - taken; + if (pos !== -1) { + pending = null; + if (offset != null) { + vars.set( + name, + buffers.slice(offset, offset + taken + i) + ); + offset += taken + i + search.length; + } else { + vars.set( + name, + buffers.slice(0, taken + i) + ); + buffers.splice(0, taken + i + search.length); + } + next(); + dispatch(); + } else { + i = Math.max(buffers.length - search.length - offset - taken, 0); + } + taken += i; + }; + dispatch(); + }; + self2.peek = function(cb) { + offset = 0; + saw.nest(function() { + cb.call(this, vars.store); + this.tap(function() { + offset = null; + }); + }); + }; + return self2; + } + ; + var stream5 = Chainsaw.light(builder); + stream5.writable = true; + var buffers = Buffers(); + stream5.write = function(buf) { + buffers.push(buf); + dispatch(); + }; + var vars = Vars(); + var done = false, caughtEnd = false; + stream5.end = function() { + caughtEnd = true; + }; + stream5.pipe = Stream2.prototype.pipe; + Object.getOwnPropertyNames(EventEmitter4.prototype).forEach(function(name) { + stream5[name] = EventEmitter4.prototype[name]; + }); + return stream5; + }; + exports2.parse = function parse7(buffer2) { + var self2 = words(function(bytes, cb) { + return function(name) { + if (offset + bytes <= buffer2.length) { + var buf = buffer2.slice(offset, offset + bytes); + offset += bytes; + vars.set(name, cb(buf)); + } else { + vars.set(name, null); + } + return self2; + }; + }); + var offset = 0; + var vars = Vars(); + self2.vars = vars.store; + self2.tap = function(cb) { + cb.call(self2, vars.store); + return self2; + }; + self2.into = function(key, cb) { + if (!vars.get(key)) { + vars.set(key, {}); + } + var parent = vars; + vars = Vars(parent.get(key)); + cb.call(self2, vars.store); + vars = parent; + return self2; + }; + self2.loop = function(cb) { + var end = false; + var ender = function() { + end = true; + }; + while (end === false) { + cb.call(self2, ender, vars.store); + } + return self2; + }; + self2.buffer = function(name, size) { + if (typeof size === "string") { + size = vars.get(size); + } + var buf = buffer2.slice(offset, Math.min(buffer2.length, offset + size)); + offset += size; + vars.set(name, buf); + return self2; + }; + self2.skip = function(bytes) { + if (typeof bytes === "string") { + bytes = vars.get(bytes); + } + offset += bytes; + return self2; + }; + self2.scan = function(name, search) { + if (typeof search === "string") { + search = new Buffer(search); + } else if (!Buffer.isBuffer(search)) { + throw new Error("search must be a Buffer or a string"); + } + vars.set(name, null); + for (var i = 0; i + offset <= buffer2.length - search.length + 1; i++) { + for (var j = 0; j < search.length && buffer2[offset + i + j] === search[j]; j++) + ; + if (j === search.length) + break; + } + vars.set(name, buffer2.slice(offset, offset + i)); + offset += i + search.length; + return self2; + }; + self2.peek = function(cb) { + var was = offset; + cb.call(self2, vars.store); + offset = was; + return self2; + }; + self2.flush = function() { + vars.store = {}; + return self2; + }; + self2.eof = function() { + return offset >= buffer2.length; + }; + return self2; + }; + function decodeLEu(bytes) { + var acc = 0; + for (var i = 0; i < bytes.length; i++) { + acc += Math.pow(256, i) * bytes[i]; + } + return acc; + } + function decodeBEu(bytes) { + var acc = 0; + for (var i = 0; i < bytes.length; i++) { + acc += Math.pow(256, bytes.length - i - 1) * bytes[i]; + } + return acc; + } + function decodeBEs(bytes) { + var val = decodeBEu(bytes); + if ((bytes[0] & 128) == 128) { + val -= Math.pow(256, bytes.length); + } + return val; + } + function decodeLEs(bytes) { + var val = decodeLEu(bytes); + if ((bytes[bytes.length - 1] & 128) == 128) { + val -= Math.pow(256, bytes.length); + } + return val; + } + function words(decode) { + var self2 = {}; + [1, 2, 4, 8].forEach(function(bytes) { + var bits = bytes * 8; + self2["word" + bits + "le"] = self2["word" + bits + "lu"] = decode(bytes, decodeLEu); + self2["word" + bits + "ls"] = decode(bytes, decodeLEs); + self2["word" + bits + "be"] = self2["word" + bits + "bu"] = decode(bytes, decodeBEu); + self2["word" + bits + "bs"] = decode(bytes, decodeBEs); + }); + self2.word8 = self2.word8u = self2.word8be; + self2.word8s = self2.word8bs; + return self2; + } + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/es5.js +var require_es5 = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/es5.js"(exports2, module2) { + var isES5 = function() { + "use strict"; + return this === void 0; + }(); + if (isES5) { + module2.exports = { + freeze: Object.freeze, + defineProperty: Object.defineProperty, + getDescriptor: Object.getOwnPropertyDescriptor, + keys: Object.keys, + names: Object.getOwnPropertyNames, + getPrototypeOf: Object.getPrototypeOf, + isArray: Array.isArray, + isES5, + propertyIsWritable: function(obj2, prop) { + var descriptor = Object.getOwnPropertyDescriptor(obj2, prop); + return !!(!descriptor || descriptor.writable || descriptor.set); + } + }; + } else { + has = {}.hasOwnProperty; + str = {}.toString; + proto = {}.constructor.prototype; + ObjectKeys = function(o) { + var ret2 = []; + for (var key in o) { + if (has.call(o, key)) { + ret2.push(key); + } + } + return ret2; + }; + ObjectGetDescriptor = function(o, key) { + return { value: o[key] }; + }; + ObjectDefineProperty = function(o, key, desc) { + o[key] = desc.value; + return o; + }; + ObjectFreeze = function(obj2) { + return obj2; + }; + ObjectGetPrototypeOf = function(obj2) { + try { + return Object(obj2).constructor.prototype; + } catch (e) { + return proto; + } + }; + ArrayIsArray = function(obj2) { + try { + return str.call(obj2) === "[object Array]"; + } catch (e) { + return false; + } + }; + module2.exports = { + isArray: ArrayIsArray, + keys: ObjectKeys, + names: ObjectKeys, + defineProperty: ObjectDefineProperty, + getDescriptor: ObjectGetDescriptor, + freeze: ObjectFreeze, + getPrototypeOf: ObjectGetPrototypeOf, + isES5, + propertyIsWritable: function() { + return true; + } + }; + } + var has; + var str; + var proto; + var ObjectKeys; + var ObjectGetDescriptor; + var ObjectDefineProperty; + var ObjectFreeze; + var ObjectGetPrototypeOf; + var ArrayIsArray; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/util.js +var require_util = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/util.js"(exports, module) { + "use strict"; + var es5 = require_es5(); + var canEvaluate = typeof navigator == "undefined"; + var errorObj = { e: {} }; + var tryCatchTarget; + var globalObject = typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : exports !== void 0 ? exports : null; + function tryCatcher() { + try { + var target = tryCatchTarget; + tryCatchTarget = null; + return target.apply(this, arguments); + } catch (e) { + errorObj.e = e; + return errorObj; + } + } + function tryCatch(fn) { + tryCatchTarget = fn; + return tryCatcher; + } + var inherits = function(Child, Parent) { + var hasProp = {}.hasOwnProperty; + function T() { + this.constructor = Child; + this.constructor$ = Parent; + for (var propertyName in Parent.prototype) { + if (hasProp.call(Parent.prototype, propertyName) && propertyName.charAt(propertyName.length - 1) !== "$") { + this[propertyName + "$"] = Parent.prototype[propertyName]; + } + } + } + T.prototype = Parent.prototype; + Child.prototype = new T(); + return Child.prototype; + }; + function isPrimitive(val) { + return val == null || val === true || val === false || typeof val === "string" || typeof val === "number"; + } + function isObject(value) { + return typeof value === "function" || typeof value === "object" && value !== null; + } + function maybeWrapAsError(maybeError) { + if (!isPrimitive(maybeError)) + return maybeError; + return new Error(safeToString(maybeError)); + } + function withAppended(target, appendee) { + var len = target.length; + var ret2 = new Array(len + 1); + var i; + for (i = 0; i < len; ++i) { + ret2[i] = target[i]; + } + ret2[i] = appendee; + return ret2; + } + function getDataPropertyOrDefault(obj2, key, defaultValue) { + if (es5.isES5) { + var desc = Object.getOwnPropertyDescriptor(obj2, key); + if (desc != null) { + return desc.get == null && desc.set == null ? desc.value : defaultValue; + } + } else { + return {}.hasOwnProperty.call(obj2, key) ? obj2[key] : void 0; + } + } + function notEnumerableProp(obj2, name, value) { + if (isPrimitive(obj2)) + return obj2; + var descriptor = { + value, + configurable: true, + enumerable: false, + writable: true + }; + es5.defineProperty(obj2, name, descriptor); + return obj2; + } + function thrower(r) { + throw r; + } + var inheritedDataKeys = function() { + var excludedPrototypes = [ + Array.prototype, + Object.prototype, + Function.prototype + ]; + var isExcludedProto = function(val) { + for (var i = 0; i < excludedPrototypes.length; ++i) { + if (excludedPrototypes[i] === val) { + return true; + } + } + return false; + }; + if (es5.isES5) { + var getKeys = Object.getOwnPropertyNames; + return function(obj2) { + var ret2 = []; + var visitedKeys = /* @__PURE__ */ Object.create(null); + while (obj2 != null && !isExcludedProto(obj2)) { + var keys; + try { + keys = getKeys(obj2); + } catch (e) { + return ret2; + } + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + if (visitedKeys[key]) + continue; + visitedKeys[key] = true; + var desc = Object.getOwnPropertyDescriptor(obj2, key); + if (desc != null && desc.get == null && desc.set == null) { + ret2.push(key); + } + } + obj2 = es5.getPrototypeOf(obj2); + } + return ret2; + }; + } else { + var hasProp = {}.hasOwnProperty; + return function(obj2) { + if (isExcludedProto(obj2)) + return []; + var ret2 = []; + enumeration: + for (var key in obj2) { + if (hasProp.call(obj2, key)) { + ret2.push(key); + } else { + for (var i = 0; i < excludedPrototypes.length; ++i) { + if (hasProp.call(excludedPrototypes[i], key)) { + continue enumeration; + } + } + ret2.push(key); + } + } + return ret2; + }; + } + }(); + var thisAssignmentPattern = /this\s*\.\s*\S+\s*=/; + function isClass(fn) { + try { + if (typeof fn === "function") { + var keys = es5.names(fn.prototype); + var hasMethods = es5.isES5 && keys.length > 1; + var hasMethodsOtherThanConstructor = keys.length > 0 && !(keys.length === 1 && keys[0] === "constructor"); + var hasThisAssignmentAndStaticMethods = thisAssignmentPattern.test(fn + "") && es5.names(fn).length > 0; + if (hasMethods || hasMethodsOtherThanConstructor || hasThisAssignmentAndStaticMethods) { + return true; + } + } + return false; + } catch (e) { + return false; + } + } + function toFastProperties(obj) { + function FakeConstructor() { + } + FakeConstructor.prototype = obj; + var l = 8; + while (l--) + new FakeConstructor(); + return obj; + eval(obj); + } + var rident = /^[a-z$_][a-z$_0-9]*$/i; + function isIdentifier(str) { + return rident.test(str); + } + function filledRange(count, prefix, suffix) { + var ret2 = new Array(count); + for (var i = 0; i < count; ++i) { + ret2[i] = prefix + i + suffix; + } + return ret2; + } + function safeToString(obj2) { + try { + return obj2 + ""; + } catch (e) { + return "[no string representation]"; + } + } + function isError(obj2) { + return obj2 !== null && typeof obj2 === "object" && typeof obj2.message === "string" && typeof obj2.name === "string"; + } + function markAsOriginatingFromRejection(e) { + try { + notEnumerableProp(e, "isOperational", true); + } catch (ignore) { + } + } + function originatesFromRejection(e) { + if (e == null) + return false; + return e instanceof Error["__BluebirdErrorTypes__"].OperationalError || e["isOperational"] === true; + } + function canAttachTrace(obj2) { + return isError(obj2) && es5.propertyIsWritable(obj2, "stack"); + } + var ensureErrorObject = function() { + if (!("stack" in new Error())) { + return function(value) { + if (canAttachTrace(value)) + return value; + try { + throw new Error(safeToString(value)); + } catch (err2) { + return err2; + } + }; + } else { + return function(value) { + if (canAttachTrace(value)) + return value; + return new Error(safeToString(value)); + }; + } + }(); + function classString(obj2) { + return {}.toString.call(obj2); + } + function copyDescriptors(from, to, filter3) { + var keys = es5.names(from); + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + if (filter3(key)) { + try { + es5.defineProperty(to, key, es5.getDescriptor(from, key)); + } catch (ignore) { + } + } + } + } + var asArray = function(v) { + if (es5.isArray(v)) { + return v; + } + return null; + }; + if (typeof Symbol !== "undefined" && Symbol.iterator) { + ArrayFrom = typeof Array.from === "function" ? function(v) { + return Array.from(v); + } : function(v) { + var ret2 = []; + var it = v[Symbol.iterator](); + var itResult; + while (!(itResult = it.next()).done) { + ret2.push(itResult.value); + } + return ret2; + }; + asArray = function(v) { + if (es5.isArray(v)) { + return v; + } else if (v != null && typeof v[Symbol.iterator] === "function") { + return ArrayFrom(v); + } + return null; + }; + } + var ArrayFrom; + var isNode = typeof process !== "undefined" && classString(process).toLowerCase() === "[object process]"; + var hasEnvVariables = typeof process !== "undefined" && typeof process.env !== "undefined"; + function env(key) { + return hasEnvVariables ? process.env[key] : void 0; + } + function getNativePromise() { + if (typeof Promise === "function") { + try { + var promise = new Promise(function() { + }); + if ({}.toString.call(promise) === "[object Promise]") { + return Promise; + } + } catch (e) { + } + } + } + function domainBind(self2, cb) { + return self2.bind(cb); + } + var ret = { + isClass, + isIdentifier, + inheritedDataKeys, + getDataPropertyOrDefault, + thrower, + isArray: es5.isArray, + asArray, + notEnumerableProp, + isPrimitive, + isObject, + isError, + canEvaluate, + errorObj, + tryCatch, + inherits, + withAppended, + maybeWrapAsError, + toFastProperties, + filledRange, + toString: safeToString, + canAttachTrace, + ensureErrorObject, + originatesFromRejection, + markAsOriginatingFromRejection, + classString, + copyDescriptors, + hasDevTools: typeof chrome !== "undefined" && chrome && typeof chrome.loadTimes === "function", + isNode, + hasEnvVariables, + env, + global: globalObject, + getNativePromise, + domainBind + }; + ret.isRecentNode = ret.isNode && function() { + var version4 = process.versions.node.split(".").map(Number); + return version4[0] === 0 && version4[1] > 10 || version4[0] > 0; + }(); + if (ret.isNode) + ret.toFastProperties(process); + try { + throw new Error(); + } catch (e) { + ret.lastLineError = e; + } + module.exports = ret; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/schedule.js +var require_schedule = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/schedule.js"(exports2, module2) { + "use strict"; + var util2 = require_util(); + var schedule; + var noAsyncScheduler = function() { + throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n"); + }; + var NativePromise = util2.getNativePromise(); + if (util2.isNode && typeof MutationObserver === "undefined") { + GlobalSetImmediate = global.setImmediate; + ProcessNextTick = process.nextTick; + schedule = util2.isRecentNode ? function(fn) { + GlobalSetImmediate.call(global, fn); + } : function(fn) { + ProcessNextTick.call(process, fn); + }; + } else if (typeof NativePromise === "function" && typeof NativePromise.resolve === "function") { + nativePromise = NativePromise.resolve(); + schedule = function(fn) { + nativePromise.then(fn); + }; + } else if (typeof MutationObserver !== "undefined" && !(typeof window !== "undefined" && window.navigator && (window.navigator.standalone || window.cordova))) { + schedule = function() { + var div = document.createElement("div"); + var opts = { attributes: true }; + var toggleScheduled = false; + var div2 = document.createElement("div"); + var o2 = new MutationObserver(function() { + div.classList.toggle("foo"); + toggleScheduled = false; + }); + o2.observe(div2, opts); + var scheduleToggle = function() { + if (toggleScheduled) + return; + toggleScheduled = true; + div2.classList.toggle("foo"); + }; + return function schedule2(fn) { + var o = new MutationObserver(function() { + o.disconnect(); + fn(); + }); + o.observe(div, opts); + scheduleToggle(); + }; + }(); + } else if (typeof setImmediate !== "undefined") { + schedule = function(fn) { + setImmediate(fn); + }; + } else if (typeof setTimeout !== "undefined") { + schedule = function(fn) { + setTimeout(fn, 0); + }; + } else { + schedule = noAsyncScheduler; + } + var GlobalSetImmediate; + var ProcessNextTick; + var nativePromise; + module2.exports = schedule; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/queue.js +var require_queue2 = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/queue.js"(exports2, module2) { + "use strict"; + function arrayMove(src, srcIndex, dst, dstIndex, len) { + for (var j = 0; j < len; ++j) { + dst[j + dstIndex] = src[j + srcIndex]; + src[j + srcIndex] = void 0; + } + } + function Queue(capacity) { + this._capacity = capacity; + this._length = 0; + this._front = 0; + } + Queue.prototype._willBeOverCapacity = function(size) { + return this._capacity < size; + }; + Queue.prototype._pushOne = function(arg) { + var length = this.length(); + this._checkCapacity(length + 1); + var i = this._front + length & this._capacity - 1; + this[i] = arg; + this._length = length + 1; + }; + Queue.prototype.push = function(fn, receiver, arg) { + var length = this.length() + 3; + if (this._willBeOverCapacity(length)) { + this._pushOne(fn); + this._pushOne(receiver); + this._pushOne(arg); + return; + } + var j = this._front + length - 3; + this._checkCapacity(length); + var wrapMask = this._capacity - 1; + this[j + 0 & wrapMask] = fn; + this[j + 1 & wrapMask] = receiver; + this[j + 2 & wrapMask] = arg; + this._length = length; + }; + Queue.prototype.shift = function() { + var front = this._front, ret2 = this[front]; + this[front] = void 0; + this._front = front + 1 & this._capacity - 1; + this._length--; + return ret2; + }; + Queue.prototype.length = function() { + return this._length; + }; + Queue.prototype._checkCapacity = function(size) { + if (this._capacity < size) { + this._resizeTo(this._capacity << 1); + } + }; + Queue.prototype._resizeTo = function(capacity) { + var oldCapacity = this._capacity; + this._capacity = capacity; + var front = this._front; + var length = this._length; + var moveItemsCount = front + length & oldCapacity - 1; + arrayMove(this, 0, this, oldCapacity, moveItemsCount); + }; + module2.exports = Queue; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/async.js +var require_async3 = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/async.js"(exports2, module2) { + "use strict"; + var firstLineError; + try { + throw new Error(); + } catch (e) { + firstLineError = e; + } + var schedule = require_schedule(); + var Queue = require_queue2(); + var util2 = require_util(); + function Async() { + this._customScheduler = false; + this._isTickUsed = false; + this._lateQueue = new Queue(16); + this._normalQueue = new Queue(16); + this._haveDrainedQueues = false; + this._trampolineEnabled = true; + var self2 = this; + this.drainQueues = function() { + self2._drainQueues(); + }; + this._schedule = schedule; + } + Async.prototype.setScheduler = function(fn) { + var prev = this._schedule; + this._schedule = fn; + this._customScheduler = true; + return prev; + }; + Async.prototype.hasCustomScheduler = function() { + return this._customScheduler; + }; + Async.prototype.enableTrampoline = function() { + this._trampolineEnabled = true; + }; + Async.prototype.disableTrampolineIfNecessary = function() { + if (util2.hasDevTools) { + this._trampolineEnabled = false; + } + }; + Async.prototype.haveItemsQueued = function() { + return this._isTickUsed || this._haveDrainedQueues; + }; + Async.prototype.fatalError = function(e, isNode2) { + if (isNode2) { + process.stderr.write("Fatal " + (e instanceof Error ? e.stack : e) + "\n"); + process.exit(2); + } else { + this.throwLater(e); + } + }; + Async.prototype.throwLater = function(fn, arg) { + if (arguments.length === 1) { + arg = fn; + fn = function() { + throw arg; + }; + } + if (typeof setTimeout !== "undefined") { + setTimeout(function() { + fn(arg); + }, 0); + } else + try { + this._schedule(function() { + fn(arg); + }); + } catch (e) { + throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n"); + } + }; + function AsyncInvokeLater(fn, receiver, arg) { + this._lateQueue.push(fn, receiver, arg); + this._queueTick(); + } + function AsyncInvoke(fn, receiver, arg) { + this._normalQueue.push(fn, receiver, arg); + this._queueTick(); + } + function AsyncSettlePromises(promise) { + this._normalQueue._pushOne(promise); + this._queueTick(); + } + if (!util2.hasDevTools) { + Async.prototype.invokeLater = AsyncInvokeLater; + Async.prototype.invoke = AsyncInvoke; + Async.prototype.settlePromises = AsyncSettlePromises; + } else { + Async.prototype.invokeLater = function(fn, receiver, arg) { + if (this._trampolineEnabled) { + AsyncInvokeLater.call(this, fn, receiver, arg); + } else { + this._schedule(function() { + setTimeout(function() { + fn.call(receiver, arg); + }, 100); + }); + } + }; + Async.prototype.invoke = function(fn, receiver, arg) { + if (this._trampolineEnabled) { + AsyncInvoke.call(this, fn, receiver, arg); + } else { + this._schedule(function() { + fn.call(receiver, arg); + }); + } + }; + Async.prototype.settlePromises = function(promise) { + if (this._trampolineEnabled) { + AsyncSettlePromises.call(this, promise); + } else { + this._schedule(function() { + promise._settlePromises(); + }); + } + }; + } + Async.prototype._drainQueue = function(queue) { + while (queue.length() > 0) { + var fn = queue.shift(); + if (typeof fn !== "function") { + fn._settlePromises(); + continue; + } + var receiver = queue.shift(); + var arg = queue.shift(); + fn.call(receiver, arg); + } + }; + Async.prototype._drainQueues = function() { + this._drainQueue(this._normalQueue); + this._reset(); + this._haveDrainedQueues = true; + this._drainQueue(this._lateQueue); + }; + Async.prototype._queueTick = function() { + if (!this._isTickUsed) { + this._isTickUsed = true; + this._schedule(this.drainQueues); + } + }; + Async.prototype._reset = function() { + this._isTickUsed = false; + }; + module2.exports = Async; + module2.exports.firstLineError = firstLineError; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/errors.js +var require_errors = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/errors.js"(exports2, module2) { + "use strict"; + var es52 = require_es5(); + var Objectfreeze = es52.freeze; + var util2 = require_util(); + var inherits3 = util2.inherits; + var notEnumerableProp2 = util2.notEnumerableProp; + function subError(nameProperty, defaultMessage) { + function SubError(message) { + if (!(this instanceof SubError)) + return new SubError(message); + notEnumerableProp2( + this, + "message", + typeof message === "string" ? message : defaultMessage + ); + notEnumerableProp2(this, "name", nameProperty); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } else { + Error.call(this); + } + } + inherits3(SubError, Error); + return SubError; + } + var _TypeError; + var _RangeError; + var Warning = subError("Warning", "warning"); + var CancellationError = subError("CancellationError", "cancellation error"); + var TimeoutError2 = subError("TimeoutError", "timeout error"); + var AggregateError2 = subError("AggregateError", "aggregate error"); + try { + _TypeError = TypeError; + _RangeError = RangeError; + } catch (e) { + _TypeError = subError("TypeError", "type error"); + _RangeError = subError("RangeError", "range error"); + } + var methods = "join pop push shift unshift slice filter forEach some every map indexOf lastIndexOf reduce reduceRight sort reverse".split(" "); + for (i = 0; i < methods.length; ++i) { + if (typeof Array.prototype[methods[i]] === "function") { + AggregateError2.prototype[methods[i]] = Array.prototype[methods[i]]; + } + } + var i; + es52.defineProperty(AggregateError2.prototype, "length", { + value: 0, + configurable: false, + writable: true, + enumerable: true + }); + AggregateError2.prototype["isOperational"] = true; + var level = 0; + AggregateError2.prototype.toString = function() { + var indent = Array(level * 4 + 1).join(" "); + var ret2 = "\n" + indent + "AggregateError of:\n"; + level++; + indent = Array(level * 4 + 1).join(" "); + for (var i2 = 0; i2 < this.length; ++i2) { + var str = this[i2] === this ? "[Circular AggregateError]" : this[i2] + ""; + var lines2 = str.split("\n"); + for (var j = 0; j < lines2.length; ++j) { + lines2[j] = indent + lines2[j]; + } + str = lines2.join("\n"); + ret2 += str + "\n"; + } + level--; + return ret2; + }; + function OperationalError(message) { + if (!(this instanceof OperationalError)) + return new OperationalError(message); + notEnumerableProp2(this, "name", "OperationalError"); + notEnumerableProp2(this, "message", message); + this.cause = message; + this["isOperational"] = true; + if (message instanceof Error) { + notEnumerableProp2(this, "message", message.message); + notEnumerableProp2(this, "stack", message.stack); + } else if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } + } + inherits3(OperationalError, Error); + var errorTypes = Error["__BluebirdErrorTypes__"]; + if (!errorTypes) { + errorTypes = Objectfreeze({ + CancellationError, + TimeoutError: TimeoutError2, + OperationalError, + RejectionError: OperationalError, + AggregateError: AggregateError2 + }); + es52.defineProperty(Error, "__BluebirdErrorTypes__", { + value: errorTypes, + writable: false, + enumerable: false, + configurable: false + }); + } + module2.exports = { + Error, + TypeError: _TypeError, + RangeError: _RangeError, + CancellationError: errorTypes.CancellationError, + OperationalError: errorTypes.OperationalError, + TimeoutError: errorTypes.TimeoutError, + AggregateError: errorTypes.AggregateError, + Warning + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/thenables.js +var require_thenables = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/thenables.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, INTERNAL2) { + var util2 = require_util(); + var errorObj2 = util2.errorObj; + var isObject3 = util2.isObject; + function tryConvertToPromise(obj2, context2) { + if (isObject3(obj2)) { + if (obj2 instanceof Promise2) + return obj2; + var then = getThen(obj2); + if (then === errorObj2) { + if (context2) + context2._pushContext(); + var ret2 = Promise2.reject(then.e); + if (context2) + context2._popContext(); + return ret2; + } else if (typeof then === "function") { + if (isAnyBluebirdPromise(obj2)) { + var ret2 = new Promise2(INTERNAL2); + obj2._then( + ret2._fulfill, + ret2._reject, + void 0, + ret2, + null + ); + return ret2; + } + return doThenable(obj2, then, context2); + } + } + return obj2; + } + function doGetThen(obj2) { + return obj2.then; + } + function getThen(obj2) { + try { + return doGetThen(obj2); + } catch (e) { + errorObj2.e = e; + return errorObj2; + } + } + var hasProp = {}.hasOwnProperty; + function isAnyBluebirdPromise(obj2) { + try { + return hasProp.call(obj2, "_promise0"); + } catch (e) { + return false; + } + } + function doThenable(x, then, context2) { + var promise = new Promise2(INTERNAL2); + var ret2 = promise; + if (context2) + context2._pushContext(); + promise._captureStackTrace(); + if (context2) + context2._popContext(); + var synchronous = true; + var result = util2.tryCatch(then).call(x, resolve8, reject); + synchronous = false; + if (promise && result === errorObj2) { + promise._rejectCallback(result.e, true, true); + promise = null; + } + function resolve8(value) { + if (!promise) + return; + promise._resolveCallback(value); + promise = null; + } + function reject(reason) { + if (!promise) + return; + promise._rejectCallback(reason, synchronous, true); + promise = null; + } + return ret2; + } + return tryConvertToPromise; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promise_array.js +var require_promise_array = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promise_array.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, INTERNAL2, tryConvertToPromise, apiRejection, Proxyable) { + var util2 = require_util(); + var isArray2 = util2.isArray; + function toResolutionValue(val) { + switch (val) { + case -2: + return []; + case -3: + return {}; + } + } + function PromiseArray(values) { + var promise = this._promise = new Promise2(INTERNAL2); + if (values instanceof Promise2) { + promise._propagateFrom(values, 3); + } + promise._setOnCancel(this); + this._values = values; + this._length = 0; + this._totalResolved = 0; + this._init(void 0, -2); + } + util2.inherits(PromiseArray, Proxyable); + PromiseArray.prototype.length = function() { + return this._length; + }; + PromiseArray.prototype.promise = function() { + return this._promise; + }; + PromiseArray.prototype._init = function init5(_, resolveValueIfEmpty) { + var values = tryConvertToPromise(this._values, this._promise); + if (values instanceof Promise2) { + values = values._target(); + var bitField = values._bitField; + ; + this._values = values; + if ((bitField & 50397184) === 0) { + this._promise._setAsyncGuaranteed(); + return values._then( + init5, + this._reject, + void 0, + this, + resolveValueIfEmpty + ); + } else if ((bitField & 33554432) !== 0) { + values = values._value(); + } else if ((bitField & 16777216) !== 0) { + return this._reject(values._reason()); + } else { + return this._cancel(); + } + } + values = util2.asArray(values); + if (values === null) { + var err2 = apiRejection( + "expecting an array or an iterable object but got " + util2.classString(values) + ).reason(); + this._promise._rejectCallback(err2, false); + return; + } + if (values.length === 0) { + if (resolveValueIfEmpty === -5) { + this._resolveEmptyArray(); + } else { + this._resolve(toResolutionValue(resolveValueIfEmpty)); + } + return; + } + this._iterate(values); + }; + PromiseArray.prototype._iterate = function(values) { + var len = this.getActualLength(values.length); + this._length = len; + this._values = this.shouldCopyValues() ? new Array(len) : this._values; + var result = this._promise; + var isResolved = false; + var bitField = null; + for (var i = 0; i < len; ++i) { + var maybePromise = tryConvertToPromise(values[i], result); + if (maybePromise instanceof Promise2) { + maybePromise = maybePromise._target(); + bitField = maybePromise._bitField; + } else { + bitField = null; + } + if (isResolved) { + if (bitField !== null) { + maybePromise.suppressUnhandledRejections(); + } + } else if (bitField !== null) { + if ((bitField & 50397184) === 0) { + maybePromise._proxy(this, i); + this._values[i] = maybePromise; + } else if ((bitField & 33554432) !== 0) { + isResolved = this._promiseFulfilled(maybePromise._value(), i); + } else if ((bitField & 16777216) !== 0) { + isResolved = this._promiseRejected(maybePromise._reason(), i); + } else { + isResolved = this._promiseCancelled(i); + } + } else { + isResolved = this._promiseFulfilled(maybePromise, i); + } + } + if (!isResolved) + result._setAsyncGuaranteed(); + }; + PromiseArray.prototype._isResolved = function() { + return this._values === null; + }; + PromiseArray.prototype._resolve = function(value) { + this._values = null; + this._promise._fulfill(value); + }; + PromiseArray.prototype._cancel = function() { + if (this._isResolved() || !this._promise._isCancellable()) + return; + this._values = null; + this._promise._cancel(); + }; + PromiseArray.prototype._reject = function(reason) { + this._values = null; + this._promise._rejectCallback(reason, false); + }; + PromiseArray.prototype._promiseFulfilled = function(value, index) { + this._values[index] = value; + var totalResolved = ++this._totalResolved; + if (totalResolved >= this._length) { + this._resolve(this._values); + return true; + } + return false; + }; + PromiseArray.prototype._promiseCancelled = function() { + this._cancel(); + return true; + }; + PromiseArray.prototype._promiseRejected = function(reason) { + this._totalResolved++; + this._reject(reason); + return true; + }; + PromiseArray.prototype._resultCancelled = function() { + if (this._isResolved()) + return; + var values = this._values; + this._cancel(); + if (values instanceof Promise2) { + values.cancel(); + } else { + for (var i = 0; i < values.length; ++i) { + if (values[i] instanceof Promise2) { + values[i].cancel(); + } + } + } + }; + PromiseArray.prototype.shouldCopyValues = function() { + return true; + }; + PromiseArray.prototype.getActualLength = function(len) { + return len; + }; + return PromiseArray; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/context.js +var require_context3 = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/context.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2) { + var longStackTraces = false; + var contextStack = []; + Promise2.prototype._promiseCreated = function() { + }; + Promise2.prototype._pushContext = function() { + }; + Promise2.prototype._popContext = function() { + return null; + }; + Promise2._peekContext = Promise2.prototype._peekContext = function() { + }; + function Context2() { + this._trace = new Context2.CapturedTrace(peekContext()); + } + Context2.prototype._pushContext = function() { + if (this._trace !== void 0) { + this._trace._promiseCreated = null; + contextStack.push(this._trace); + } + }; + Context2.prototype._popContext = function() { + if (this._trace !== void 0) { + var trace = contextStack.pop(); + var ret2 = trace._promiseCreated; + trace._promiseCreated = null; + return ret2; + } + return null; + }; + function createContext() { + if (longStackTraces) + return new Context2(); + } + function peekContext() { + var lastIndex = contextStack.length - 1; + if (lastIndex >= 0) { + return contextStack[lastIndex]; + } + return void 0; + } + Context2.CapturedTrace = null; + Context2.create = createContext; + Context2.deactivateLongStackTraces = function() { + }; + Context2.activateLongStackTraces = function() { + var Promise_pushContext = Promise2.prototype._pushContext; + var Promise_popContext = Promise2.prototype._popContext; + var Promise_PeekContext = Promise2._peekContext; + var Promise_peekContext = Promise2.prototype._peekContext; + var Promise_promiseCreated = Promise2.prototype._promiseCreated; + Context2.deactivateLongStackTraces = function() { + Promise2.prototype._pushContext = Promise_pushContext; + Promise2.prototype._popContext = Promise_popContext; + Promise2._peekContext = Promise_PeekContext; + Promise2.prototype._peekContext = Promise_peekContext; + Promise2.prototype._promiseCreated = Promise_promiseCreated; + longStackTraces = false; + }; + longStackTraces = true; + Promise2.prototype._pushContext = Context2.prototype._pushContext; + Promise2.prototype._popContext = Context2.prototype._popContext; + Promise2._peekContext = Promise2.prototype._peekContext = peekContext; + Promise2.prototype._promiseCreated = function() { + var ctx = this._peekContext(); + if (ctx && ctx._promiseCreated == null) + ctx._promiseCreated = this; + }; + }; + return Context2; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/debuggability.js +var require_debuggability = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/debuggability.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, Context2) { + var getDomain = Promise2._getDomain; + var async = Promise2._async; + var Warning = require_errors().Warning; + var util2 = require_util(); + var canAttachTrace2 = util2.canAttachTrace; + var unhandledRejectionHandled; + var possiblyUnhandledRejection; + var bluebirdFramePattern = /[\\\/]bluebird[\\\/]js[\\\/](release|debug|instrumented)/; + var nodeFramePattern = /\((?:timers\.js):\d+:\d+\)/; + var parseLinePattern = /[\/<\(](.+?):(\d+):(\d+)\)?\s*$/; + var stackFramePattern = null; + var formatStack = null; + var indentStackFrames = false; + var printWarning; + var debugging = !!(util2.env("BLUEBIRD_DEBUG") != 0 && (util2.env("BLUEBIRD_DEBUG") || util2.env("NODE_ENV") === "development")); + var warnings = !!(util2.env("BLUEBIRD_WARNINGS") != 0 && (debugging || util2.env("BLUEBIRD_WARNINGS"))); + var longStackTraces = !!(util2.env("BLUEBIRD_LONG_STACK_TRACES") != 0 && (debugging || util2.env("BLUEBIRD_LONG_STACK_TRACES"))); + var wForgottenReturn = util2.env("BLUEBIRD_W_FORGOTTEN_RETURN") != 0 && (warnings || !!util2.env("BLUEBIRD_W_FORGOTTEN_RETURN")); + Promise2.prototype.suppressUnhandledRejections = function() { + var target = this._target(); + target._bitField = target._bitField & ~1048576 | 524288; + }; + Promise2.prototype._ensurePossibleRejectionHandled = function() { + if ((this._bitField & 524288) !== 0) + return; + this._setRejectionIsUnhandled(); + async.invokeLater(this._notifyUnhandledRejection, this, void 0); + }; + Promise2.prototype._notifyUnhandledRejectionIsHandled = function() { + fireRejectionEvent( + "rejectionHandled", + unhandledRejectionHandled, + void 0, + this + ); + }; + Promise2.prototype._setReturnedNonUndefined = function() { + this._bitField = this._bitField | 268435456; + }; + Promise2.prototype._returnedNonUndefined = function() { + return (this._bitField & 268435456) !== 0; + }; + Promise2.prototype._notifyUnhandledRejection = function() { + if (this._isRejectionUnhandled()) { + var reason = this._settledValue(); + this._setUnhandledRejectionIsNotified(); + fireRejectionEvent( + "unhandledRejection", + possiblyUnhandledRejection, + reason, + this + ); + } + }; + Promise2.prototype._setUnhandledRejectionIsNotified = function() { + this._bitField = this._bitField | 262144; + }; + Promise2.prototype._unsetUnhandledRejectionIsNotified = function() { + this._bitField = this._bitField & ~262144; + }; + Promise2.prototype._isUnhandledRejectionNotified = function() { + return (this._bitField & 262144) > 0; + }; + Promise2.prototype._setRejectionIsUnhandled = function() { + this._bitField = this._bitField | 1048576; + }; + Promise2.prototype._unsetRejectionIsUnhandled = function() { + this._bitField = this._bitField & ~1048576; + if (this._isUnhandledRejectionNotified()) { + this._unsetUnhandledRejectionIsNotified(); + this._notifyUnhandledRejectionIsHandled(); + } + }; + Promise2.prototype._isRejectionUnhandled = function() { + return (this._bitField & 1048576) > 0; + }; + Promise2.prototype._warn = function(message, shouldUseOwnTrace, promise) { + return warn(message, shouldUseOwnTrace, promise || this); + }; + Promise2.onPossiblyUnhandledRejection = function(fn) { + var domain2 = getDomain(); + possiblyUnhandledRejection = typeof fn === "function" ? domain2 === null ? fn : util2.domainBind(domain2, fn) : void 0; + }; + Promise2.onUnhandledRejectionHandled = function(fn) { + var domain2 = getDomain(); + unhandledRejectionHandled = typeof fn === "function" ? domain2 === null ? fn : util2.domainBind(domain2, fn) : void 0; + }; + var disableLongStackTraces = function() { + }; + Promise2.longStackTraces = function() { + if (async.haveItemsQueued() && !config.longStackTraces) { + throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n"); + } + if (!config.longStackTraces && longStackTracesIsSupported()) { + var Promise_captureStackTrace = Promise2.prototype._captureStackTrace; + var Promise_attachExtraTrace = Promise2.prototype._attachExtraTrace; + config.longStackTraces = true; + disableLongStackTraces = function() { + if (async.haveItemsQueued() && !config.longStackTraces) { + throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n"); + } + Promise2.prototype._captureStackTrace = Promise_captureStackTrace; + Promise2.prototype._attachExtraTrace = Promise_attachExtraTrace; + Context2.deactivateLongStackTraces(); + async.enableTrampoline(); + config.longStackTraces = false; + }; + Promise2.prototype._captureStackTrace = longStackTracesCaptureStackTrace; + Promise2.prototype._attachExtraTrace = longStackTracesAttachExtraTrace; + Context2.activateLongStackTraces(); + async.disableTrampolineIfNecessary(); + } + }; + Promise2.hasLongStackTraces = function() { + return config.longStackTraces && longStackTracesIsSupported(); + }; + var fireDomEvent = function() { + try { + if (typeof CustomEvent === "function") { + var event = new CustomEvent("CustomEvent"); + util2.global.dispatchEvent(event); + return function(name, event2) { + var domEvent = new CustomEvent(name.toLowerCase(), { + detail: event2, + cancelable: true + }); + return !util2.global.dispatchEvent(domEvent); + }; + } else if (typeof Event === "function") { + var event = new Event("CustomEvent"); + util2.global.dispatchEvent(event); + return function(name, event2) { + var domEvent = new Event(name.toLowerCase(), { + cancelable: true + }); + domEvent.detail = event2; + return !util2.global.dispatchEvent(domEvent); + }; + } else { + var event = document.createEvent("CustomEvent"); + event.initCustomEvent("testingtheevent", false, true, {}); + util2.global.dispatchEvent(event); + return function(name, event2) { + var domEvent = document.createEvent("CustomEvent"); + domEvent.initCustomEvent( + name.toLowerCase(), + false, + true, + event2 + ); + return !util2.global.dispatchEvent(domEvent); + }; + } + } catch (e) { + } + return function() { + return false; + }; + }(); + var fireGlobalEvent = function() { + if (util2.isNode) { + return function() { + return process.emit.apply(process, arguments); + }; + } else { + if (!util2.global) { + return function() { + return false; + }; + } + return function(name) { + var methodName = "on" + name.toLowerCase(); + var method = util2.global[methodName]; + if (!method) + return false; + method.apply(util2.global, [].slice.call(arguments, 1)); + return true; + }; + } + }(); + function generatePromiseLifecycleEventObject(name, promise) { + return { promise }; + } + var eventToObjectGenerator = { + promiseCreated: generatePromiseLifecycleEventObject, + promiseFulfilled: generatePromiseLifecycleEventObject, + promiseRejected: generatePromiseLifecycleEventObject, + promiseResolved: generatePromiseLifecycleEventObject, + promiseCancelled: generatePromiseLifecycleEventObject, + promiseChained: function(name, promise, child) { + return { promise, child }; + }, + warning: function(name, warning) { + return { warning }; + }, + unhandledRejection: function(name, reason, promise) { + return { reason, promise }; + }, + rejectionHandled: generatePromiseLifecycleEventObject + }; + var activeFireEvent = function(name) { + var globalEventFired = false; + try { + globalEventFired = fireGlobalEvent.apply(null, arguments); + } catch (e) { + async.throwLater(e); + globalEventFired = true; + } + var domEventFired = false; + try { + domEventFired = fireDomEvent( + name, + eventToObjectGenerator[name].apply(null, arguments) + ); + } catch (e) { + async.throwLater(e); + domEventFired = true; + } + return domEventFired || globalEventFired; + }; + Promise2.config = function(opts) { + opts = Object(opts); + if ("longStackTraces" in opts) { + if (opts.longStackTraces) { + Promise2.longStackTraces(); + } else if (!opts.longStackTraces && Promise2.hasLongStackTraces()) { + disableLongStackTraces(); + } + } + if ("warnings" in opts) { + var warningsOption = opts.warnings; + config.warnings = !!warningsOption; + wForgottenReturn = config.warnings; + if (util2.isObject(warningsOption)) { + if ("wForgottenReturn" in warningsOption) { + wForgottenReturn = !!warningsOption.wForgottenReturn; + } + } + } + if ("cancellation" in opts && opts.cancellation && !config.cancellation) { + if (async.haveItemsQueued()) { + throw new Error( + "cannot enable cancellation after promises are in use" + ); + } + Promise2.prototype._clearCancellationData = cancellationClearCancellationData; + Promise2.prototype._propagateFrom = cancellationPropagateFrom; + Promise2.prototype._onCancel = cancellationOnCancel; + Promise2.prototype._setOnCancel = cancellationSetOnCancel; + Promise2.prototype._attachCancellationCallback = cancellationAttachCancellationCallback; + Promise2.prototype._execute = cancellationExecute; + propagateFromFunction = cancellationPropagateFrom; + config.cancellation = true; + } + if ("monitoring" in opts) { + if (opts.monitoring && !config.monitoring) { + config.monitoring = true; + Promise2.prototype._fireEvent = activeFireEvent; + } else if (!opts.monitoring && config.monitoring) { + config.monitoring = false; + Promise2.prototype._fireEvent = defaultFireEvent; + } + } + return Promise2; + }; + function defaultFireEvent() { + return false; + } + Promise2.prototype._fireEvent = defaultFireEvent; + Promise2.prototype._execute = function(executor, resolve8, reject) { + try { + executor(resolve8, reject); + } catch (e) { + return e; + } + }; + Promise2.prototype._onCancel = function() { + }; + Promise2.prototype._setOnCancel = function(handler) { + ; + }; + Promise2.prototype._attachCancellationCallback = function(onCancel) { + ; + }; + Promise2.prototype._captureStackTrace = function() { + }; + Promise2.prototype._attachExtraTrace = function() { + }; + Promise2.prototype._clearCancellationData = function() { + }; + Promise2.prototype._propagateFrom = function(parent, flags2) { + ; + ; + }; + function cancellationExecute(executor, resolve8, reject) { + var promise = this; + try { + executor(resolve8, reject, function(onCancel) { + if (typeof onCancel !== "function") { + throw new TypeError("onCancel must be a function, got: " + util2.toString(onCancel)); + } + promise._attachCancellationCallback(onCancel); + }); + } catch (e) { + return e; + } + } + function cancellationAttachCancellationCallback(onCancel) { + if (!this._isCancellable()) + return this; + var previousOnCancel = this._onCancel(); + if (previousOnCancel !== void 0) { + if (util2.isArray(previousOnCancel)) { + previousOnCancel.push(onCancel); + } else { + this._setOnCancel([previousOnCancel, onCancel]); + } + } else { + this._setOnCancel(onCancel); + } + } + function cancellationOnCancel() { + return this._onCancelField; + } + function cancellationSetOnCancel(onCancel) { + this._onCancelField = onCancel; + } + function cancellationClearCancellationData() { + this._cancellationParent = void 0; + this._onCancelField = void 0; + } + function cancellationPropagateFrom(parent, flags2) { + if ((flags2 & 1) !== 0) { + this._cancellationParent = parent; + var branchesRemainingToCancel = parent._branchesRemainingToCancel; + if (branchesRemainingToCancel === void 0) { + branchesRemainingToCancel = 0; + } + parent._branchesRemainingToCancel = branchesRemainingToCancel + 1; + } + if ((flags2 & 2) !== 0 && parent._isBound()) { + this._setBoundTo(parent._boundTo); + } + } + function bindingPropagateFrom(parent, flags2) { + if ((flags2 & 2) !== 0 && parent._isBound()) { + this._setBoundTo(parent._boundTo); + } + } + var propagateFromFunction = bindingPropagateFrom; + function boundValueFunction() { + var ret2 = this._boundTo; + if (ret2 !== void 0) { + if (ret2 instanceof Promise2) { + if (ret2.isFulfilled()) { + return ret2.value(); + } else { + return void 0; + } + } + } + return ret2; + } + function longStackTracesCaptureStackTrace() { + this._trace = new CapturedTrace(this._peekContext()); + } + function longStackTracesAttachExtraTrace(error, ignoreSelf) { + if (canAttachTrace2(error)) { + var trace = this._trace; + if (trace !== void 0) { + if (ignoreSelf) + trace = trace._parent; + } + if (trace !== void 0) { + trace.attachExtraTrace(error); + } else if (!error.__stackCleaned__) { + var parsed = parseStackAndMessage(error); + util2.notEnumerableProp( + error, + "stack", + parsed.message + "\n" + parsed.stack.join("\n") + ); + util2.notEnumerableProp(error, "__stackCleaned__", true); + } + } + } + function checkForgottenReturns(returnValue, promiseCreated, name, promise, parent) { + if (returnValue === void 0 && promiseCreated !== null && wForgottenReturn) { + if (parent !== void 0 && parent._returnedNonUndefined()) + return; + if ((promise._bitField & 65535) === 0) + return; + if (name) + name = name + " "; + var handlerLine = ""; + var creatorLine = ""; + if (promiseCreated._trace) { + var traceLines = promiseCreated._trace.stack.split("\n"); + var stack = cleanStack(traceLines); + for (var i = stack.length - 1; i >= 0; --i) { + var line = stack[i]; + if (!nodeFramePattern.test(line)) { + var lineMatches = line.match(parseLinePattern); + if (lineMatches) { + handlerLine = "at " + lineMatches[1] + ":" + lineMatches[2] + ":" + lineMatches[3] + " "; + } + break; + } + } + if (stack.length > 0) { + var firstUserLine = stack[0]; + for (var i = 0; i < traceLines.length; ++i) { + if (traceLines[i] === firstUserLine) { + if (i > 0) { + creatorLine = "\n" + traceLines[i - 1]; + } + break; + } + } + } + } + var msg = "a promise was created in a " + name + "handler " + handlerLine + "but was not returned from it, see http://goo.gl/rRqMUw" + creatorLine; + promise._warn(msg, true, promiseCreated); + } + } + function deprecated(name, replacement) { + var message = name + " is deprecated and will be removed in a future version."; + if (replacement) + message += " Use " + replacement + " instead."; + return warn(message); + } + function warn(message, shouldUseOwnTrace, promise) { + if (!config.warnings) + return; + var warning = new Warning(message); + var ctx; + if (shouldUseOwnTrace) { + promise._attachExtraTrace(warning); + } else if (config.longStackTraces && (ctx = Promise2._peekContext())) { + ctx.attachExtraTrace(warning); + } else { + var parsed = parseStackAndMessage(warning); + warning.stack = parsed.message + "\n" + parsed.stack.join("\n"); + } + if (!activeFireEvent("warning", warning)) { + formatAndLogError(warning, "", true); + } + } + function reconstructStack(message, stacks) { + for (var i = 0; i < stacks.length - 1; ++i) { + stacks[i].push("From previous event:"); + stacks[i] = stacks[i].join("\n"); + } + if (i < stacks.length) { + stacks[i] = stacks[i].join("\n"); + } + return message + "\n" + stacks.join("\n"); + } + function removeDuplicateOrEmptyJumps(stacks) { + for (var i = 0; i < stacks.length; ++i) { + if (stacks[i].length === 0 || i + 1 < stacks.length && stacks[i][0] === stacks[i + 1][0]) { + stacks.splice(i, 1); + i--; + } + } + } + function removeCommonRoots(stacks) { + var current = stacks[0]; + for (var i = 1; i < stacks.length; ++i) { + var prev = stacks[i]; + var currentLastIndex = current.length - 1; + var currentLastLine = current[currentLastIndex]; + var commonRootMeetPoint = -1; + for (var j = prev.length - 1; j >= 0; --j) { + if (prev[j] === currentLastLine) { + commonRootMeetPoint = j; + break; + } + } + for (var j = commonRootMeetPoint; j >= 0; --j) { + var line = prev[j]; + if (current[currentLastIndex] === line) { + current.pop(); + currentLastIndex--; + } else { + break; + } + } + current = prev; + } + } + function cleanStack(stack) { + var ret2 = []; + for (var i = 0; i < stack.length; ++i) { + var line = stack[i]; + var isTraceLine = " (No stack trace)" === line || stackFramePattern.test(line); + var isInternalFrame = isTraceLine && shouldIgnore(line); + if (isTraceLine && !isInternalFrame) { + if (indentStackFrames && line.charAt(0) !== " ") { + line = " " + line; + } + ret2.push(line); + } + } + return ret2; + } + function stackFramesAsArray(error) { + var stack = error.stack.replace(/\s+$/g, "").split("\n"); + for (var i = 0; i < stack.length; ++i) { + var line = stack[i]; + if (" (No stack trace)" === line || stackFramePattern.test(line)) { + break; + } + } + if (i > 0 && error.name != "SyntaxError") { + stack = stack.slice(i); + } + return stack; + } + function parseStackAndMessage(error) { + var stack = error.stack; + var message = error.toString(); + stack = typeof stack === "string" && stack.length > 0 ? stackFramesAsArray(error) : [" (No stack trace)"]; + return { + message, + stack: error.name == "SyntaxError" ? stack : cleanStack(stack) + }; + } + function formatAndLogError(error, title, isSoft) { + if (typeof console !== "undefined") { + var message; + if (util2.isObject(error)) { + var stack = error.stack; + message = title + formatStack(stack, error); + } else { + message = title + String(error); + } + if (typeof printWarning === "function") { + printWarning(message, isSoft); + } else if (typeof console.log === "function" || typeof console.log === "object") { + console.log(message); + } + } + } + function fireRejectionEvent(name, localHandler, reason, promise) { + var localEventFired = false; + try { + if (typeof localHandler === "function") { + localEventFired = true; + if (name === "rejectionHandled") { + localHandler(promise); + } else { + localHandler(reason, promise); + } + } + } catch (e) { + async.throwLater(e); + } + if (name === "unhandledRejection") { + if (!activeFireEvent(name, reason, promise) && !localEventFired) { + formatAndLogError(reason, "Unhandled rejection "); + } + } else { + activeFireEvent(name, promise); + } + } + function formatNonError(obj2) { + var str; + if (typeof obj2 === "function") { + str = "[function " + (obj2.name || "anonymous") + "]"; + } else { + str = obj2 && typeof obj2.toString === "function" ? obj2.toString() : util2.toString(obj2); + var ruselessToString = /\[object [a-zA-Z0-9$_]+\]/; + if (ruselessToString.test(str)) { + try { + var newStr = JSON.stringify(obj2); + str = newStr; + } catch (e) { + } + } + if (str.length === 0) { + str = "(empty array)"; + } + } + return "(<" + snip(str) + ">, no stack trace)"; + } + function snip(str) { + var maxChars = 41; + if (str.length < maxChars) { + return str; + } + return str.substr(0, maxChars - 3) + "..."; + } + function longStackTracesIsSupported() { + return typeof captureStackTrace === "function"; + } + var shouldIgnore = function() { + return false; + }; + var parseLineInfoRegex = /[\/<\(]([^:\/]+):(\d+):(?:\d+)\)?\s*$/; + function parseLineInfo(line) { + var matches = line.match(parseLineInfoRegex); + if (matches) { + return { + fileName: matches[1], + line: parseInt(matches[2], 10) + }; + } + } + function setBounds(firstLineError, lastLineError) { + if (!longStackTracesIsSupported()) + return; + var firstStackLines = firstLineError.stack.split("\n"); + var lastStackLines = lastLineError.stack.split("\n"); + var firstIndex = -1; + var lastIndex = -1; + var firstFileName; + var lastFileName; + for (var i = 0; i < firstStackLines.length; ++i) { + var result = parseLineInfo(firstStackLines[i]); + if (result) { + firstFileName = result.fileName; + firstIndex = result.line; + break; + } + } + for (var i = 0; i < lastStackLines.length; ++i) { + var result = parseLineInfo(lastStackLines[i]); + if (result) { + lastFileName = result.fileName; + lastIndex = result.line; + break; + } + } + if (firstIndex < 0 || lastIndex < 0 || !firstFileName || !lastFileName || firstFileName !== lastFileName || firstIndex >= lastIndex) { + return; + } + shouldIgnore = function(line) { + if (bluebirdFramePattern.test(line)) + return true; + var info2 = parseLineInfo(line); + if (info2) { + if (info2.fileName === firstFileName && (firstIndex <= info2.line && info2.line <= lastIndex)) { + return true; + } + } + return false; + }; + } + function CapturedTrace(parent) { + this._parent = parent; + this._promisesCreated = 0; + var length = this._length = 1 + (parent === void 0 ? 0 : parent._length); + captureStackTrace(this, CapturedTrace); + if (length > 32) + this.uncycle(); + } + util2.inherits(CapturedTrace, Error); + Context2.CapturedTrace = CapturedTrace; + CapturedTrace.prototype.uncycle = function() { + var length = this._length; + if (length < 2) + return; + var nodes = []; + var stackToIndex = {}; + for (var i = 0, node = this; node !== void 0; ++i) { + nodes.push(node); + node = node._parent; + } + length = this._length = i; + for (var i = length - 1; i >= 0; --i) { + var stack = nodes[i].stack; + if (stackToIndex[stack] === void 0) { + stackToIndex[stack] = i; + } + } + for (var i = 0; i < length; ++i) { + var currentStack = nodes[i].stack; + var index = stackToIndex[currentStack]; + if (index !== void 0 && index !== i) { + if (index > 0) { + nodes[index - 1]._parent = void 0; + nodes[index - 1]._length = 1; + } + nodes[i]._parent = void 0; + nodes[i]._length = 1; + var cycleEdgeNode = i > 0 ? nodes[i - 1] : this; + if (index < length - 1) { + cycleEdgeNode._parent = nodes[index + 1]; + cycleEdgeNode._parent.uncycle(); + cycleEdgeNode._length = cycleEdgeNode._parent._length + 1; + } else { + cycleEdgeNode._parent = void 0; + cycleEdgeNode._length = 1; + } + var currentChildLength = cycleEdgeNode._length + 1; + for (var j = i - 2; j >= 0; --j) { + nodes[j]._length = currentChildLength; + currentChildLength++; + } + return; + } + } + }; + CapturedTrace.prototype.attachExtraTrace = function(error) { + if (error.__stackCleaned__) + return; + this.uncycle(); + var parsed = parseStackAndMessage(error); + var message = parsed.message; + var stacks = [parsed.stack]; + var trace = this; + while (trace !== void 0) { + stacks.push(cleanStack(trace.stack.split("\n"))); + trace = trace._parent; + } + removeCommonRoots(stacks); + removeDuplicateOrEmptyJumps(stacks); + util2.notEnumerableProp(error, "stack", reconstructStack(message, stacks)); + util2.notEnumerableProp(error, "__stackCleaned__", true); + }; + var captureStackTrace = function stackDetection() { + var v8stackFramePattern = /^\s*at\s*/; + var v8stackFormatter = function(stack, error) { + if (typeof stack === "string") + return stack; + if (error.name !== void 0 && error.message !== void 0) { + return error.toString(); + } + return formatNonError(error); + }; + if (typeof Error.stackTraceLimit === "number" && typeof Error.captureStackTrace === "function") { + Error.stackTraceLimit += 6; + stackFramePattern = v8stackFramePattern; + formatStack = v8stackFormatter; + var captureStackTrace2 = Error.captureStackTrace; + shouldIgnore = function(line) { + return bluebirdFramePattern.test(line); + }; + return function(receiver, ignoreUntil) { + Error.stackTraceLimit += 6; + captureStackTrace2(receiver, ignoreUntil); + Error.stackTraceLimit -= 6; + }; + } + var err2 = new Error(); + if (typeof err2.stack === "string" && err2.stack.split("\n")[0].indexOf("stackDetection@") >= 0) { + stackFramePattern = /@/; + formatStack = v8stackFormatter; + indentStackFrames = true; + return function captureStackTrace3(o) { + o.stack = new Error().stack; + }; + } + var hasStackAfterThrow; + try { + throw new Error(); + } catch (e) { + hasStackAfterThrow = "stack" in e; + } + if (!("stack" in err2) && hasStackAfterThrow && typeof Error.stackTraceLimit === "number") { + stackFramePattern = v8stackFramePattern; + formatStack = v8stackFormatter; + return function captureStackTrace3(o) { + Error.stackTraceLimit += 6; + try { + throw new Error(); + } catch (e) { + o.stack = e.stack; + } + Error.stackTraceLimit -= 6; + }; + } + formatStack = function(stack, error) { + if (typeof stack === "string") + return stack; + if ((typeof error === "object" || typeof error === "function") && error.name !== void 0 && error.message !== void 0) { + return error.toString(); + } + return formatNonError(error); + }; + return null; + }([]); + if (typeof console !== "undefined" && typeof console.warn !== "undefined") { + printWarning = function(message) { + console.warn(message); + }; + if (util2.isNode && process.stderr.isTTY) { + printWarning = function(message, isSoft) { + var color = isSoft ? "\x1B[33m" : "\x1B[31m"; + console.warn(color + message + "\x1B[0m\n"); + }; + } else if (!util2.isNode && typeof new Error().stack === "string") { + printWarning = function(message, isSoft) { + console.warn( + "%c" + message, + isSoft ? "color: darkorange" : "color: red" + ); + }; + } + } + var config = { + warnings, + longStackTraces: false, + cancellation: false, + monitoring: false + }; + if (longStackTraces) + Promise2.longStackTraces(); + return { + longStackTraces: function() { + return config.longStackTraces; + }, + warnings: function() { + return config.warnings; + }, + cancellation: function() { + return config.cancellation; + }, + monitoring: function() { + return config.monitoring; + }, + propagateFromFunction: function() { + return propagateFromFunction; + }, + boundValueFunction: function() { + return boundValueFunction; + }, + checkForgottenReturns, + setBounds, + warn, + deprecated, + CapturedTrace, + fireDomEvent, + fireGlobalEvent + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/finally.js +var require_finally = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/finally.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, tryConvertToPromise) { + var util2 = require_util(); + var CancellationError = Promise2.CancellationError; + var errorObj2 = util2.errorObj; + function PassThroughHandlerContext(promise, type2, handler) { + this.promise = promise; + this.type = type2; + this.handler = handler; + this.called = false; + this.cancelPromise = null; + } + PassThroughHandlerContext.prototype.isFinallyHandler = function() { + return this.type === 0; + }; + function FinallyHandlerCancelReaction(finallyHandler2) { + this.finallyHandler = finallyHandler2; + } + FinallyHandlerCancelReaction.prototype._resultCancelled = function() { + checkCancel(this.finallyHandler); + }; + function checkCancel(ctx, reason) { + if (ctx.cancelPromise != null) { + if (arguments.length > 1) { + ctx.cancelPromise._reject(reason); + } else { + ctx.cancelPromise._cancel(); + } + ctx.cancelPromise = null; + return true; + } + return false; + } + function succeed() { + return finallyHandler.call(this, this.promise._target()._settledValue()); + } + function fail(reason) { + if (checkCancel(this, reason)) + return; + errorObj2.e = reason; + return errorObj2; + } + function finallyHandler(reasonOrValue) { + var promise = this.promise; + var handler = this.handler; + if (!this.called) { + this.called = true; + var ret2 = this.isFinallyHandler() ? handler.call(promise._boundValue()) : handler.call(promise._boundValue(), reasonOrValue); + if (ret2 !== void 0) { + promise._setReturnedNonUndefined(); + var maybePromise = tryConvertToPromise(ret2, promise); + if (maybePromise instanceof Promise2) { + if (this.cancelPromise != null) { + if (maybePromise._isCancelled()) { + var reason = new CancellationError("late cancellation observer"); + promise._attachExtraTrace(reason); + errorObj2.e = reason; + return errorObj2; + } else if (maybePromise.isPending()) { + maybePromise._attachCancellationCallback( + new FinallyHandlerCancelReaction(this) + ); + } + } + return maybePromise._then( + succeed, + fail, + void 0, + this, + void 0 + ); + } + } + } + if (promise.isRejected()) { + checkCancel(this); + errorObj2.e = reasonOrValue; + return errorObj2; + } else { + checkCancel(this); + return reasonOrValue; + } + } + Promise2.prototype._passThrough = function(handler, type2, success, fail2) { + if (typeof handler !== "function") + return this.then(); + return this._then( + success, + fail2, + void 0, + new PassThroughHandlerContext(this, type2, handler), + void 0 + ); + }; + Promise2.prototype.lastly = Promise2.prototype["finally"] = function(handler) { + return this._passThrough( + handler, + 0, + finallyHandler, + finallyHandler + ); + }; + Promise2.prototype.tap = function(handler) { + return this._passThrough(handler, 1, finallyHandler); + }; + return PassThroughHandlerContext; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/catch_filter.js +var require_catch_filter = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/catch_filter.js"(exports2, module2) { + "use strict"; + module2.exports = function(NEXT_FILTER) { + var util2 = require_util(); + var getKeys = require_es5().keys; + var tryCatch2 = util2.tryCatch; + var errorObj2 = util2.errorObj; + function catchFilter(instances, cb, promise) { + return function(e) { + var boundTo = promise._boundValue(); + predicateLoop: + for (var i = 0; i < instances.length; ++i) { + var item = instances[i]; + if (item === Error || item != null && item.prototype instanceof Error) { + if (e instanceof item) { + return tryCatch2(cb).call(boundTo, e); + } + } else if (typeof item === "function") { + var matchesPredicate = tryCatch2(item).call(boundTo, e); + if (matchesPredicate === errorObj2) { + return matchesPredicate; + } else if (matchesPredicate) { + return tryCatch2(cb).call(boundTo, e); + } + } else if (util2.isObject(e)) { + var keys = getKeys(item); + for (var j = 0; j < keys.length; ++j) { + var key = keys[j]; + if (item[key] != e[key]) { + continue predicateLoop; + } + } + return tryCatch2(cb).call(boundTo, e); + } + } + return NEXT_FILTER; + }; + } + return catchFilter; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/nodeback.js +var require_nodeback = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/nodeback.js"(exports2, module2) { + "use strict"; + var util2 = require_util(); + var maybeWrapAsError2 = util2.maybeWrapAsError; + var errors = require_errors(); + var OperationalError = errors.OperationalError; + var es52 = require_es5(); + function isUntypedError(obj2) { + return obj2 instanceof Error && es52.getPrototypeOf(obj2) === Error.prototype; + } + var rErrorKey = /^(?:name|message|stack|cause)$/; + function wrapAsOperationalError(obj2) { + var ret2; + if (isUntypedError(obj2)) { + ret2 = new OperationalError(obj2); + ret2.name = obj2.name; + ret2.message = obj2.message; + ret2.stack = obj2.stack; + var keys = es52.keys(obj2); + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + if (!rErrorKey.test(key)) { + ret2[key] = obj2[key]; + } + } + return ret2; + } + util2.markAsOriginatingFromRejection(obj2); + return obj2; + } + function nodebackForPromise(promise, multiArgs) { + return function(err2, value) { + if (promise === null) + return; + if (err2) { + var wrapped = wrapAsOperationalError(maybeWrapAsError2(err2)); + promise._attachExtraTrace(wrapped); + promise._reject(wrapped); + } else if (!multiArgs) { + promise._fulfill(value); + } else { + var $_len = arguments.length; + var args3 = new Array(Math.max($_len - 1, 0)); + for (var $_i = 1; $_i < $_len; ++$_i) { + args3[$_i - 1] = arguments[$_i]; + } + ; + promise._fulfill(args3); + } + promise = null; + }; + } + module2.exports = nodebackForPromise; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/method.js +var require_method = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/method.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, INTERNAL2, tryConvertToPromise, apiRejection, debug) { + var util2 = require_util(); + var tryCatch2 = util2.tryCatch; + Promise2.method = function(fn) { + if (typeof fn !== "function") { + throw new Promise2.TypeError("expecting a function but got " + util2.classString(fn)); + } + return function() { + var ret2 = new Promise2(INTERNAL2); + ret2._captureStackTrace(); + ret2._pushContext(); + var value = tryCatch2(fn).apply(this, arguments); + var promiseCreated = ret2._popContext(); + debug.checkForgottenReturns( + value, + promiseCreated, + "Promise.method", + ret2 + ); + ret2._resolveFromSyncValue(value); + return ret2; + }; + }; + Promise2.attempt = Promise2["try"] = function(fn) { + if (typeof fn !== "function") { + return apiRejection("expecting a function but got " + util2.classString(fn)); + } + var ret2 = new Promise2(INTERNAL2); + ret2._captureStackTrace(); + ret2._pushContext(); + var value; + if (arguments.length > 1) { + debug.deprecated("calling Promise.try with more than 1 argument"); + var arg = arguments[1]; + var ctx = arguments[2]; + value = util2.isArray(arg) ? tryCatch2(fn).apply(ctx, arg) : tryCatch2(fn).call(ctx, arg); + } else { + value = tryCatch2(fn)(); + } + var promiseCreated = ret2._popContext(); + debug.checkForgottenReturns( + value, + promiseCreated, + "Promise.try", + ret2 + ); + ret2._resolveFromSyncValue(value); + return ret2; + }; + Promise2.prototype._resolveFromSyncValue = function(value) { + if (value === util2.errorObj) { + this._rejectCallback(value.e, false); + } else { + this._resolveCallback(value, true); + } + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/bind.js +var require_bind = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/bind.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, INTERNAL2, tryConvertToPromise, debug) { + var calledBind = false; + var rejectThis = function(_, e) { + this._reject(e); + }; + var targetRejected = function(e, context2) { + context2.promiseRejectionQueued = true; + context2.bindingPromise._then(rejectThis, rejectThis, null, this, e); + }; + var bindingResolved = function(thisArg, context2) { + if ((this._bitField & 50397184) === 0) { + this._resolveCallback(context2.target); + } + }; + var bindingRejected = function(e, context2) { + if (!context2.promiseRejectionQueued) + this._reject(e); + }; + Promise2.prototype.bind = function(thisArg) { + if (!calledBind) { + calledBind = true; + Promise2.prototype._propagateFrom = debug.propagateFromFunction(); + Promise2.prototype._boundValue = debug.boundValueFunction(); + } + var maybePromise = tryConvertToPromise(thisArg); + var ret2 = new Promise2(INTERNAL2); + ret2._propagateFrom(this, 1); + var target = this._target(); + ret2._setBoundTo(maybePromise); + if (maybePromise instanceof Promise2) { + var context2 = { + promiseRejectionQueued: false, + promise: ret2, + target, + bindingPromise: maybePromise + }; + target._then(INTERNAL2, targetRejected, void 0, ret2, context2); + maybePromise._then( + bindingResolved, + bindingRejected, + void 0, + ret2, + context2 + ); + ret2._setOnCancel(maybePromise); + } else { + ret2._resolveCallback(target); + } + return ret2; + }; + Promise2.prototype._setBoundTo = function(obj2) { + if (obj2 !== void 0) { + this._bitField = this._bitField | 2097152; + this._boundTo = obj2; + } else { + this._bitField = this._bitField & ~2097152; + } + }; + Promise2.prototype._isBound = function() { + return (this._bitField & 2097152) === 2097152; + }; + Promise2.bind = function(thisArg, value) { + return Promise2.resolve(value).bind(thisArg); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/cancel.js +var require_cancel = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/cancel.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, PromiseArray, apiRejection, debug) { + var util2 = require_util(); + var tryCatch2 = util2.tryCatch; + var errorObj2 = util2.errorObj; + var async = Promise2._async; + Promise2.prototype["break"] = Promise2.prototype.cancel = function() { + if (!debug.cancellation()) + return this._warn("cancellation is disabled"); + var promise = this; + var child = promise; + while (promise._isCancellable()) { + if (!promise._cancelBy(child)) { + if (child._isFollowing()) { + child._followee().cancel(); + } else { + child._cancelBranched(); + } + break; + } + var parent = promise._cancellationParent; + if (parent == null || !parent._isCancellable()) { + if (promise._isFollowing()) { + promise._followee().cancel(); + } else { + promise._cancelBranched(); + } + break; + } else { + if (promise._isFollowing()) + promise._followee().cancel(); + promise._setWillBeCancelled(); + child = promise; + promise = parent; + } + } + }; + Promise2.prototype._branchHasCancelled = function() { + this._branchesRemainingToCancel--; + }; + Promise2.prototype._enoughBranchesHaveCancelled = function() { + return this._branchesRemainingToCancel === void 0 || this._branchesRemainingToCancel <= 0; + }; + Promise2.prototype._cancelBy = function(canceller) { + if (canceller === this) { + this._branchesRemainingToCancel = 0; + this._invokeOnCancel(); + return true; + } else { + this._branchHasCancelled(); + if (this._enoughBranchesHaveCancelled()) { + this._invokeOnCancel(); + return true; + } + } + return false; + }; + Promise2.prototype._cancelBranched = function() { + if (this._enoughBranchesHaveCancelled()) { + this._cancel(); + } + }; + Promise2.prototype._cancel = function() { + if (!this._isCancellable()) + return; + this._setCancelled(); + async.invoke(this._cancelPromises, this, void 0); + }; + Promise2.prototype._cancelPromises = function() { + if (this._length() > 0) + this._settlePromises(); + }; + Promise2.prototype._unsetOnCancel = function() { + this._onCancelField = void 0; + }; + Promise2.prototype._isCancellable = function() { + return this.isPending() && !this._isCancelled(); + }; + Promise2.prototype.isCancellable = function() { + return this.isPending() && !this.isCancelled(); + }; + Promise2.prototype._doInvokeOnCancel = function(onCancelCallback, internalOnly) { + if (util2.isArray(onCancelCallback)) { + for (var i = 0; i < onCancelCallback.length; ++i) { + this._doInvokeOnCancel(onCancelCallback[i], internalOnly); + } + } else if (onCancelCallback !== void 0) { + if (typeof onCancelCallback === "function") { + if (!internalOnly) { + var e = tryCatch2(onCancelCallback).call(this._boundValue()); + if (e === errorObj2) { + this._attachExtraTrace(e.e); + async.throwLater(e.e); + } + } + } else { + onCancelCallback._resultCancelled(this); + } + } + }; + Promise2.prototype._invokeOnCancel = function() { + var onCancelCallback = this._onCancel(); + this._unsetOnCancel(); + async.invoke(this._doInvokeOnCancel, this, onCancelCallback); + }; + Promise2.prototype._invokeInternalOnCancel = function() { + if (this._isCancellable()) { + this._doInvokeOnCancel(this._onCancel(), true); + this._unsetOnCancel(); + } + }; + Promise2.prototype._resultCancelled = function() { + this.cancel(); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/direct_resolve.js +var require_direct_resolve = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/direct_resolve.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2) { + function returner() { + return this.value; + } + function thrower2() { + throw this.reason; + } + Promise2.prototype["return"] = Promise2.prototype.thenReturn = function(value) { + if (value instanceof Promise2) + value.suppressUnhandledRejections(); + return this._then( + returner, + void 0, + void 0, + { value }, + void 0 + ); + }; + Promise2.prototype["throw"] = Promise2.prototype.thenThrow = function(reason) { + return this._then( + thrower2, + void 0, + void 0, + { reason }, + void 0 + ); + }; + Promise2.prototype.catchThrow = function(reason) { + if (arguments.length <= 1) { + return this._then( + void 0, + thrower2, + void 0, + { reason }, + void 0 + ); + } else { + var _reason = arguments[1]; + var handler = function() { + throw _reason; + }; + return this.caught(reason, handler); + } + }; + Promise2.prototype.catchReturn = function(value) { + if (arguments.length <= 1) { + if (value instanceof Promise2) + value.suppressUnhandledRejections(); + return this._then( + void 0, + returner, + void 0, + { value }, + void 0 + ); + } else { + var _value = arguments[1]; + if (_value instanceof Promise2) + _value.suppressUnhandledRejections(); + var handler = function() { + return _value; + }; + return this.caught(value, handler); + } + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/synchronous_inspection.js +var require_synchronous_inspection = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/synchronous_inspection.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2) { + function PromiseInspection(promise) { + if (promise !== void 0) { + promise = promise._target(); + this._bitField = promise._bitField; + this._settledValueField = promise._isFateSealed() ? promise._settledValue() : void 0; + } else { + this._bitField = 0; + this._settledValueField = void 0; + } + } + PromiseInspection.prototype._settledValue = function() { + return this._settledValueField; + }; + var value = PromiseInspection.prototype.value = function() { + if (!this.isFulfilled()) { + throw new TypeError("cannot get fulfillment value of a non-fulfilled promise\n\n See http://goo.gl/MqrFmX\n"); + } + return this._settledValue(); + }; + var reason = PromiseInspection.prototype.error = PromiseInspection.prototype.reason = function() { + if (!this.isRejected()) { + throw new TypeError("cannot get rejection reason of a non-rejected promise\n\n See http://goo.gl/MqrFmX\n"); + } + return this._settledValue(); + }; + var isFulfilled = PromiseInspection.prototype.isFulfilled = function() { + return (this._bitField & 33554432) !== 0; + }; + var isRejected = PromiseInspection.prototype.isRejected = function() { + return (this._bitField & 16777216) !== 0; + }; + var isPending = PromiseInspection.prototype.isPending = function() { + return (this._bitField & 50397184) === 0; + }; + var isResolved = PromiseInspection.prototype.isResolved = function() { + return (this._bitField & 50331648) !== 0; + }; + PromiseInspection.prototype.isCancelled = function() { + return (this._bitField & 8454144) !== 0; + }; + Promise2.prototype.__isCancelled = function() { + return (this._bitField & 65536) === 65536; + }; + Promise2.prototype._isCancelled = function() { + return this._target().__isCancelled(); + }; + Promise2.prototype.isCancelled = function() { + return (this._target()._bitField & 8454144) !== 0; + }; + Promise2.prototype.isPending = function() { + return isPending.call(this._target()); + }; + Promise2.prototype.isRejected = function() { + return isRejected.call(this._target()); + }; + Promise2.prototype.isFulfilled = function() { + return isFulfilled.call(this._target()); + }; + Promise2.prototype.isResolved = function() { + return isResolved.call(this._target()); + }; + Promise2.prototype.value = function() { + return value.call(this._target()); + }; + Promise2.prototype.reason = function() { + var target = this._target(); + target._unsetRejectionIsUnhandled(); + return reason.call(target); + }; + Promise2.prototype._value = function() { + return this._settledValue(); + }; + Promise2.prototype._reason = function() { + this._unsetRejectionIsUnhandled(); + return this._settledValue(); + }; + Promise2.PromiseInspection = PromiseInspection; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/join.js +var require_join = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/join.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, PromiseArray, tryConvertToPromise, INTERNAL2, async, getDomain) { + var util2 = require_util(); + var canEvaluate2 = util2.canEvaluate; + var tryCatch2 = util2.tryCatch; + var errorObj2 = util2.errorObj; + var reject; + if (true) { + if (canEvaluate2) { + var thenCallback = function(i2) { + return new Function("value", "holder", " \n 'use strict'; \n holder.pIndex = value; \n holder.checkFulfillment(this); \n ".replace(/Index/g, i2)); + }; + var promiseSetter = function(i2) { + return new Function("promise", "holder", " \n 'use strict'; \n holder.pIndex = promise; \n ".replace(/Index/g, i2)); + }; + var generateHolderClass = function(total) { + var props = new Array(total); + for (var i2 = 0; i2 < props.length; ++i2) { + props[i2] = "this.p" + (i2 + 1); + } + var assignment = props.join(" = ") + " = null;"; + var cancellationCode = "var promise;\n" + props.map(function(prop) { + return " \n promise = " + prop + "; \n if (promise instanceof Promise) { \n promise.cancel(); \n } \n "; + }).join("\n"); + var passedArguments = props.join(", "); + var name = "Holder$" + total; + var code = "return function(tryCatch, errorObj, Promise, async) { \n 'use strict'; \n function [TheName](fn) { \n [TheProperties] \n this.fn = fn; \n this.asyncNeeded = true; \n this.now = 0; \n } \n \n [TheName].prototype._callFunction = function(promise) { \n promise._pushContext(); \n var ret = tryCatch(this.fn)([ThePassedArguments]); \n promise._popContext(); \n if (ret === errorObj) { \n promise._rejectCallback(ret.e, false); \n } else { \n promise._resolveCallback(ret); \n } \n }; \n \n [TheName].prototype.checkFulfillment = function(promise) { \n var now = ++this.now; \n if (now === [TheTotal]) { \n if (this.asyncNeeded) { \n async.invoke(this._callFunction, this, promise); \n } else { \n this._callFunction(promise); \n } \n \n } \n }; \n \n [TheName].prototype._resultCancelled = function() { \n [CancellationCode] \n }; \n \n return [TheName]; \n }(tryCatch, errorObj, Promise, async); \n "; + code = code.replace(/\[TheName\]/g, name).replace(/\[TheTotal\]/g, total).replace(/\[ThePassedArguments\]/g, passedArguments).replace(/\[TheProperties\]/g, assignment).replace(/\[CancellationCode\]/g, cancellationCode); + return new Function("tryCatch", "errorObj", "Promise", "async", code)(tryCatch2, errorObj2, Promise2, async); + }; + var holderClasses = []; + var thenCallbacks = []; + var promiseSetters = []; + for (var i = 0; i < 8; ++i) { + holderClasses.push(generateHolderClass(i + 1)); + thenCallbacks.push(thenCallback(i + 1)); + promiseSetters.push(promiseSetter(i + 1)); + } + reject = function(reason) { + this._reject(reason); + }; + } + } + Promise2.join = function() { + var last = arguments.length - 1; + var fn; + if (last > 0 && typeof arguments[last] === "function") { + fn = arguments[last]; + if (true) { + if (last <= 8 && canEvaluate2) { + var ret2 = new Promise2(INTERNAL2); + ret2._captureStackTrace(); + var HolderClass = holderClasses[last - 1]; + var holder = new HolderClass(fn); + var callbacks = thenCallbacks; + for (var i2 = 0; i2 < last; ++i2) { + var maybePromise = tryConvertToPromise(arguments[i2], ret2); + if (maybePromise instanceof Promise2) { + maybePromise = maybePromise._target(); + var bitField = maybePromise._bitField; + ; + if ((bitField & 50397184) === 0) { + maybePromise._then( + callbacks[i2], + reject, + void 0, + ret2, + holder + ); + promiseSetters[i2](maybePromise, holder); + holder.asyncNeeded = false; + } else if ((bitField & 33554432) !== 0) { + callbacks[i2].call( + ret2, + maybePromise._value(), + holder + ); + } else if ((bitField & 16777216) !== 0) { + ret2._reject(maybePromise._reason()); + } else { + ret2._cancel(); + } + } else { + callbacks[i2].call(ret2, maybePromise, holder); + } + } + if (!ret2._isFateSealed()) { + if (holder.asyncNeeded) { + var domain2 = getDomain(); + if (domain2 !== null) { + holder.fn = util2.domainBind(domain2, holder.fn); + } + } + ret2._setAsyncGuaranteed(); + ret2._setOnCancel(holder); + } + return ret2; + } + } + } + var $_len = arguments.length; + var args3 = new Array($_len); + for (var $_i = 0; $_i < $_len; ++$_i) { + args3[$_i] = arguments[$_i]; + } + ; + if (fn) + args3.pop(); + var ret2 = new PromiseArray(args3).promise(); + return fn !== void 0 ? ret2.spread(fn) : ret2; + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/map.js +var require_map2 = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/map.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL2, debug) { + var getDomain = Promise2._getDomain; + var util2 = require_util(); + var tryCatch2 = util2.tryCatch; + var errorObj2 = util2.errorObj; + var async = Promise2._async; + function MappingPromiseArray(promises2, fn, limit, _filter) { + this.constructor$(promises2); + this._promise._captureStackTrace(); + var domain2 = getDomain(); + this._callback = domain2 === null ? fn : util2.domainBind(domain2, fn); + this._preservedValues = _filter === INTERNAL2 ? new Array(this.length()) : null; + this._limit = limit; + this._inFlight = 0; + this._queue = []; + async.invoke(this._asyncInit, this, void 0); + } + util2.inherits(MappingPromiseArray, PromiseArray); + MappingPromiseArray.prototype._asyncInit = function() { + this._init$(void 0, -2); + }; + MappingPromiseArray.prototype._init = function() { + }; + MappingPromiseArray.prototype._promiseFulfilled = function(value, index) { + var values = this._values; + var length = this.length(); + var preservedValues = this._preservedValues; + var limit = this._limit; + if (index < 0) { + index = index * -1 - 1; + values[index] = value; + if (limit >= 1) { + this._inFlight--; + this._drainQueue(); + if (this._isResolved()) + return true; + } + } else { + if (limit >= 1 && this._inFlight >= limit) { + values[index] = value; + this._queue.push(index); + return false; + } + if (preservedValues !== null) + preservedValues[index] = value; + var promise = this._promise; + var callback = this._callback; + var receiver = promise._boundValue(); + promise._pushContext(); + var ret2 = tryCatch2(callback).call(receiver, value, index, length); + var promiseCreated = promise._popContext(); + debug.checkForgottenReturns( + ret2, + promiseCreated, + preservedValues !== null ? "Promise.filter" : "Promise.map", + promise + ); + if (ret2 === errorObj2) { + this._reject(ret2.e); + return true; + } + var maybePromise = tryConvertToPromise(ret2, this._promise); + if (maybePromise instanceof Promise2) { + maybePromise = maybePromise._target(); + var bitField = maybePromise._bitField; + ; + if ((bitField & 50397184) === 0) { + if (limit >= 1) + this._inFlight++; + values[index] = maybePromise; + maybePromise._proxy(this, (index + 1) * -1); + return false; + } else if ((bitField & 33554432) !== 0) { + ret2 = maybePromise._value(); + } else if ((bitField & 16777216) !== 0) { + this._reject(maybePromise._reason()); + return true; + } else { + this._cancel(); + return true; + } + } + values[index] = ret2; + } + var totalResolved = ++this._totalResolved; + if (totalResolved >= length) { + if (preservedValues !== null) { + this._filter(values, preservedValues); + } else { + this._resolve(values); + } + return true; + } + return false; + }; + MappingPromiseArray.prototype._drainQueue = function() { + var queue = this._queue; + var limit = this._limit; + var values = this._values; + while (queue.length > 0 && this._inFlight < limit) { + if (this._isResolved()) + return; + var index = queue.pop(); + this._promiseFulfilled(values[index], index); + } + }; + MappingPromiseArray.prototype._filter = function(booleans, values) { + var len = values.length; + var ret2 = new Array(len); + var j = 0; + for (var i = 0; i < len; ++i) { + if (booleans[i]) + ret2[j++] = values[i]; + } + ret2.length = j; + this._resolve(ret2); + }; + MappingPromiseArray.prototype.preservedValues = function() { + return this._preservedValues; + }; + function map(promises2, fn, options2, _filter) { + if (typeof fn !== "function") { + return apiRejection("expecting a function but got " + util2.classString(fn)); + } + var limit = 0; + if (options2 !== void 0) { + if (typeof options2 === "object" && options2 !== null) { + if (typeof options2.concurrency !== "number") { + return Promise2.reject( + new TypeError("'concurrency' must be a number but it is " + util2.classString(options2.concurrency)) + ); + } + limit = options2.concurrency; + } else { + return Promise2.reject(new TypeError( + "options argument must be an object but it is " + util2.classString(options2) + )); + } + } + limit = typeof limit === "number" && isFinite(limit) && limit >= 1 ? limit : 0; + return new MappingPromiseArray(promises2, fn, limit, _filter).promise(); + } + Promise2.prototype.map = function(fn, options2) { + return map(this, fn, options2, null); + }; + Promise2.map = function(promises2, fn, options2, _filter) { + return map(promises2, fn, options2, _filter); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/call_get.js +var require_call_get = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/call_get.js"(exports2, module2) { + "use strict"; + var cr = Object.create; + if (cr) { + callerCache = cr(null); + getterCache = cr(null); + callerCache[" size"] = getterCache[" size"] = 0; + } + var callerCache; + var getterCache; + module2.exports = function(Promise2) { + var util2 = require_util(); + var canEvaluate2 = util2.canEvaluate; + var isIdentifier2 = util2.isIdentifier; + var getMethodCaller; + var getGetter; + if (true) { + var makeMethodCaller = function(methodName) { + return new Function("ensureMethod", " \n return function(obj) { \n 'use strict' \n var len = this.length; \n ensureMethod(obj, 'methodName'); \n switch(len) { \n case 1: return obj.methodName(this[0]); \n case 2: return obj.methodName(this[0], this[1]); \n case 3: return obj.methodName(this[0], this[1], this[2]); \n case 0: return obj.methodName(); \n default: \n return obj.methodName.apply(obj, this); \n } \n }; \n ".replace(/methodName/g, methodName))(ensureMethod); + }; + var makeGetter = function(propertyName) { + return new Function("obj", " \n 'use strict'; \n return obj.propertyName; \n ".replace("propertyName", propertyName)); + }; + var getCompiled = function(name, compiler, cache) { + var ret2 = cache[name]; + if (typeof ret2 !== "function") { + if (!isIdentifier2(name)) { + return null; + } + ret2 = compiler(name); + cache[name] = ret2; + cache[" size"]++; + if (cache[" size"] > 512) { + var keys = Object.keys(cache); + for (var i = 0; i < 256; ++i) + delete cache[keys[i]]; + cache[" size"] = keys.length - 256; + } + } + return ret2; + }; + getMethodCaller = function(name) { + return getCompiled(name, makeMethodCaller, callerCache); + }; + getGetter = function(name) { + return getCompiled(name, makeGetter, getterCache); + }; + } + function ensureMethod(obj2, methodName) { + var fn; + if (obj2 != null) + fn = obj2[methodName]; + if (typeof fn !== "function") { + var message = "Object " + util2.classString(obj2) + " has no method '" + util2.toString(methodName) + "'"; + throw new Promise2.TypeError(message); + } + return fn; + } + function caller(obj2) { + var methodName = this.pop(); + var fn = ensureMethod(obj2, methodName); + return fn.apply(obj2, this); + } + Promise2.prototype.call = function(methodName) { + var $_len = arguments.length; + var args3 = new Array(Math.max($_len - 1, 0)); + for (var $_i = 1; $_i < $_len; ++$_i) { + args3[$_i - 1] = arguments[$_i]; + } + ; + if (true) { + if (canEvaluate2) { + var maybeCaller = getMethodCaller(methodName); + if (maybeCaller !== null) { + return this._then( + maybeCaller, + void 0, + void 0, + args3, + void 0 + ); + } + } + } + args3.push(methodName); + return this._then(caller, void 0, void 0, args3, void 0); + }; + function namedGetter(obj2) { + return obj2[this]; + } + function indexedGetter(obj2) { + var index = +this; + if (index < 0) + index = Math.max(0, index + obj2.length); + return obj2[index]; + } + Promise2.prototype.get = function(propertyName) { + var isIndex = typeof propertyName === "number"; + var getter; + if (!isIndex) { + if (canEvaluate2) { + var maybeGetter = getGetter(propertyName); + getter = maybeGetter !== null ? maybeGetter : namedGetter; + } else { + getter = namedGetter; + } + } else { + getter = indexedGetter; + } + return this._then(getter, void 0, void 0, propertyName, void 0); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/using.js +var require_using2 = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/using.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, apiRejection, tryConvertToPromise, createContext, INTERNAL2, debug) { + var util2 = require_util(); + var TypeError2 = require_errors().TypeError; + var inherits3 = require_util().inherits; + var errorObj2 = util2.errorObj; + var tryCatch2 = util2.tryCatch; + var NULL = {}; + function thrower2(e) { + setTimeout(function() { + throw e; + }, 0); + } + function castPreservingDisposable(thenable) { + var maybePromise = tryConvertToPromise(thenable); + if (maybePromise !== thenable && typeof thenable._isDisposable === "function" && typeof thenable._getDisposer === "function" && thenable._isDisposable()) { + maybePromise._setDisposable(thenable._getDisposer()); + } + return maybePromise; + } + function dispose(resources, inspection) { + var i = 0; + var len = resources.length; + var ret2 = new Promise2(INTERNAL2); + function iterator() { + if (i >= len) + return ret2._fulfill(); + var maybePromise = castPreservingDisposable(resources[i++]); + if (maybePromise instanceof Promise2 && maybePromise._isDisposable()) { + try { + maybePromise = tryConvertToPromise( + maybePromise._getDisposer().tryDispose(inspection), + resources.promise + ); + } catch (e) { + return thrower2(e); + } + if (maybePromise instanceof Promise2) { + return maybePromise._then( + iterator, + thrower2, + null, + null, + null + ); + } + } + iterator(); + } + iterator(); + return ret2; + } + function Disposer(data, promise, context2) { + this._data = data; + this._promise = promise; + this._context = context2; + } + Disposer.prototype.data = function() { + return this._data; + }; + Disposer.prototype.promise = function() { + return this._promise; + }; + Disposer.prototype.resource = function() { + if (this.promise().isFulfilled()) { + return this.promise().value(); + } + return NULL; + }; + Disposer.prototype.tryDispose = function(inspection) { + var resource = this.resource(); + var context2 = this._context; + if (context2 !== void 0) + context2._pushContext(); + var ret2 = resource !== NULL ? this.doDispose(resource, inspection) : null; + if (context2 !== void 0) + context2._popContext(); + this._promise._unsetDisposable(); + this._data = null; + return ret2; + }; + Disposer.isDisposer = function(d) { + return d != null && typeof d.resource === "function" && typeof d.tryDispose === "function"; + }; + function FunctionDisposer(fn, promise, context2) { + this.constructor$(fn, promise, context2); + } + inherits3(FunctionDisposer, Disposer); + FunctionDisposer.prototype.doDispose = function(resource, inspection) { + var fn = this.data(); + return fn.call(resource, resource, inspection); + }; + function maybeUnwrapDisposer(value) { + if (Disposer.isDisposer(value)) { + this.resources[this.index]._setDisposable(value); + return value.promise(); + } + return value; + } + function ResourceList(length) { + this.length = length; + this.promise = null; + this[length - 1] = null; + } + ResourceList.prototype._resultCancelled = function() { + var len = this.length; + for (var i = 0; i < len; ++i) { + var item = this[i]; + if (item instanceof Promise2) { + item.cancel(); + } + } + }; + Promise2.using = function() { + var len = arguments.length; + if (len < 2) + return apiRejection( + "you must pass at least 2 arguments to Promise.using" + ); + var fn = arguments[len - 1]; + if (typeof fn !== "function") { + return apiRejection("expecting a function but got " + util2.classString(fn)); + } + var input; + var spreadArgs = true; + if (len === 2 && Array.isArray(arguments[0])) { + input = arguments[0]; + len = input.length; + spreadArgs = false; + } else { + input = arguments; + len--; + } + var resources = new ResourceList(len); + for (var i = 0; i < len; ++i) { + var resource = input[i]; + if (Disposer.isDisposer(resource)) { + var disposer = resource; + resource = resource.promise(); + resource._setDisposable(disposer); + } else { + var maybePromise = tryConvertToPromise(resource); + if (maybePromise instanceof Promise2) { + resource = maybePromise._then(maybeUnwrapDisposer, null, null, { + resources, + index: i + }, void 0); + } + } + resources[i] = resource; + } + var reflectedResources = new Array(resources.length); + for (var i = 0; i < reflectedResources.length; ++i) { + reflectedResources[i] = Promise2.resolve(resources[i]).reflect(); + } + var resultPromise = Promise2.all(reflectedResources).then(function(inspections) { + for (var i2 = 0; i2 < inspections.length; ++i2) { + var inspection = inspections[i2]; + if (inspection.isRejected()) { + errorObj2.e = inspection.error(); + return errorObj2; + } else if (!inspection.isFulfilled()) { + resultPromise.cancel(); + return; + } + inspections[i2] = inspection.value(); + } + promise._pushContext(); + fn = tryCatch2(fn); + var ret2 = spreadArgs ? fn.apply(void 0, inspections) : fn(inspections); + var promiseCreated = promise._popContext(); + debug.checkForgottenReturns( + ret2, + promiseCreated, + "Promise.using", + promise + ); + return ret2; + }); + var promise = resultPromise.lastly(function() { + var inspection = new Promise2.PromiseInspection(resultPromise); + return dispose(resources, inspection); + }); + resources.promise = promise; + promise._setOnCancel(resources); + return promise; + }; + Promise2.prototype._setDisposable = function(disposer) { + this._bitField = this._bitField | 131072; + this._disposer = disposer; + }; + Promise2.prototype._isDisposable = function() { + return (this._bitField & 131072) > 0; + }; + Promise2.prototype._getDisposer = function() { + return this._disposer; + }; + Promise2.prototype._unsetDisposable = function() { + this._bitField = this._bitField & ~131072; + this._disposer = void 0; + }; + Promise2.prototype.disposer = function(fn) { + if (typeof fn === "function") { + return new FunctionDisposer(fn, this, createContext()); + } + throw new TypeError2(); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/timers.js +var require_timers = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/timers.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, INTERNAL2, debug) { + var util2 = require_util(); + var TimeoutError2 = Promise2.TimeoutError; + function HandleWrapper(handle2) { + this.handle = handle2; + } + HandleWrapper.prototype._resultCancelled = function() { + clearTimeout(this.handle); + }; + var afterValue = function(value) { + return delay(+this).thenReturn(value); + }; + var delay = Promise2.delay = function(ms, value) { + var ret2; + var handle2; + if (value !== void 0) { + ret2 = Promise2.resolve(value)._then(afterValue, null, null, ms, void 0); + if (debug.cancellation() && value instanceof Promise2) { + ret2._setOnCancel(value); + } + } else { + ret2 = new Promise2(INTERNAL2); + handle2 = setTimeout(function() { + ret2._fulfill(); + }, +ms); + if (debug.cancellation()) { + ret2._setOnCancel(new HandleWrapper(handle2)); + } + ret2._captureStackTrace(); + } + ret2._setAsyncGuaranteed(); + return ret2; + }; + Promise2.prototype.delay = function(ms) { + return delay(ms, this); + }; + var afterTimeout = function(promise, message, parent) { + var err2; + if (typeof message !== "string") { + if (message instanceof Error) { + err2 = message; + } else { + err2 = new TimeoutError2("operation timed out"); + } + } else { + err2 = new TimeoutError2(message); + } + util2.markAsOriginatingFromRejection(err2); + promise._attachExtraTrace(err2); + promise._reject(err2); + if (parent != null) { + parent.cancel(); + } + }; + function successClear(value) { + clearTimeout(this.handle); + return value; + } + function failureClear(reason) { + clearTimeout(this.handle); + throw reason; + } + Promise2.prototype.timeout = function(ms, message) { + ms = +ms; + var ret2, parent; + var handleWrapper = new HandleWrapper(setTimeout(function timeoutTimeout() { + if (ret2.isPending()) { + afterTimeout(ret2, message, parent); + } + }, ms)); + if (debug.cancellation()) { + parent = this.then(); + ret2 = parent._then( + successClear, + failureClear, + void 0, + handleWrapper, + void 0 + ); + ret2._setOnCancel(handleWrapper); + } else { + ret2 = this._then( + successClear, + failureClear, + void 0, + handleWrapper, + void 0 + ); + } + return ret2; + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/generators.js +var require_generators = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/generators.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, apiRejection, INTERNAL2, tryConvertToPromise, Proxyable, debug) { + var errors = require_errors(); + var TypeError2 = errors.TypeError; + var util2 = require_util(); + var errorObj2 = util2.errorObj; + var tryCatch2 = util2.tryCatch; + var yieldHandlers = []; + function promiseFromYieldHandler(value, yieldHandlers2, traceParent) { + for (var i = 0; i < yieldHandlers2.length; ++i) { + traceParent._pushContext(); + var result = tryCatch2(yieldHandlers2[i])(value); + traceParent._popContext(); + if (result === errorObj2) { + traceParent._pushContext(); + var ret2 = Promise2.reject(errorObj2.e); + traceParent._popContext(); + return ret2; + } + var maybePromise = tryConvertToPromise(result, traceParent); + if (maybePromise instanceof Promise2) + return maybePromise; + } + return null; + } + function PromiseSpawn(generatorFunction, receiver, yieldHandler, stack) { + if (debug.cancellation()) { + var internal = new Promise2(INTERNAL2); + var _finallyPromise = this._finallyPromise = new Promise2(INTERNAL2); + this._promise = internal.lastly(function() { + return _finallyPromise; + }); + internal._captureStackTrace(); + internal._setOnCancel(this); + } else { + var promise = this._promise = new Promise2(INTERNAL2); + promise._captureStackTrace(); + } + this._stack = stack; + this._generatorFunction = generatorFunction; + this._receiver = receiver; + this._generator = void 0; + this._yieldHandlers = typeof yieldHandler === "function" ? [yieldHandler].concat(yieldHandlers) : yieldHandlers; + this._yieldedPromise = null; + this._cancellationPhase = false; + } + util2.inherits(PromiseSpawn, Proxyable); + PromiseSpawn.prototype._isResolved = function() { + return this._promise === null; + }; + PromiseSpawn.prototype._cleanup = function() { + this._promise = this._generator = null; + if (debug.cancellation() && this._finallyPromise !== null) { + this._finallyPromise._fulfill(); + this._finallyPromise = null; + } + }; + PromiseSpawn.prototype._promiseCancelled = function() { + if (this._isResolved()) + return; + var implementsReturn = typeof this._generator["return"] !== "undefined"; + var result; + if (!implementsReturn) { + var reason = new Promise2.CancellationError( + "generator .return() sentinel" + ); + Promise2.coroutine.returnSentinel = reason; + this._promise._attachExtraTrace(reason); + this._promise._pushContext(); + result = tryCatch2(this._generator["throw"]).call( + this._generator, + reason + ); + this._promise._popContext(); + } else { + this._promise._pushContext(); + result = tryCatch2(this._generator["return"]).call( + this._generator, + void 0 + ); + this._promise._popContext(); + } + this._cancellationPhase = true; + this._yieldedPromise = null; + this._continue(result); + }; + PromiseSpawn.prototype._promiseFulfilled = function(value) { + this._yieldedPromise = null; + this._promise._pushContext(); + var result = tryCatch2(this._generator.next).call(this._generator, value); + this._promise._popContext(); + this._continue(result); + }; + PromiseSpawn.prototype._promiseRejected = function(reason) { + this._yieldedPromise = null; + this._promise._attachExtraTrace(reason); + this._promise._pushContext(); + var result = tryCatch2(this._generator["throw"]).call(this._generator, reason); + this._promise._popContext(); + this._continue(result); + }; + PromiseSpawn.prototype._resultCancelled = function() { + if (this._yieldedPromise instanceof Promise2) { + var promise = this._yieldedPromise; + this._yieldedPromise = null; + promise.cancel(); + } + }; + PromiseSpawn.prototype.promise = function() { + return this._promise; + }; + PromiseSpawn.prototype._run = function() { + this._generator = this._generatorFunction.call(this._receiver); + this._receiver = this._generatorFunction = void 0; + this._promiseFulfilled(void 0); + }; + PromiseSpawn.prototype._continue = function(result) { + var promise = this._promise; + if (result === errorObj2) { + this._cleanup(); + if (this._cancellationPhase) { + return promise.cancel(); + } else { + return promise._rejectCallback(result.e, false); + } + } + var value = result.value; + if (result.done === true) { + this._cleanup(); + if (this._cancellationPhase) { + return promise.cancel(); + } else { + return promise._resolveCallback(value); + } + } else { + var maybePromise = tryConvertToPromise(value, this._promise); + if (!(maybePromise instanceof Promise2)) { + maybePromise = promiseFromYieldHandler( + maybePromise, + this._yieldHandlers, + this._promise + ); + if (maybePromise === null) { + this._promiseRejected( + new TypeError2( + "A value %s was yielded that could not be treated as a promise\n\n See http://goo.gl/MqrFmX\n\n".replace("%s", value) + "From coroutine:\n" + this._stack.split("\n").slice(1, -7).join("\n") + ) + ); + return; + } + } + maybePromise = maybePromise._target(); + var bitField = maybePromise._bitField; + ; + if ((bitField & 50397184) === 0) { + this._yieldedPromise = maybePromise; + maybePromise._proxy(this, null); + } else if ((bitField & 33554432) !== 0) { + Promise2._async.invoke( + this._promiseFulfilled, + this, + maybePromise._value() + ); + } else if ((bitField & 16777216) !== 0) { + Promise2._async.invoke( + this._promiseRejected, + this, + maybePromise._reason() + ); + } else { + this._promiseCancelled(); + } + } + }; + Promise2.coroutine = function(generatorFunction, options2) { + if (typeof generatorFunction !== "function") { + throw new TypeError2("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n"); + } + var yieldHandler = Object(options2).yieldHandler; + var PromiseSpawn$ = PromiseSpawn; + var stack = new Error().stack; + return function() { + var generator = generatorFunction.apply(this, arguments); + var spawn5 = new PromiseSpawn$( + void 0, + void 0, + yieldHandler, + stack + ); + var ret2 = spawn5.promise(); + spawn5._generator = generator; + spawn5._promiseFulfilled(void 0); + return ret2; + }; + }; + Promise2.coroutine.addYieldHandler = function(fn) { + if (typeof fn !== "function") { + throw new TypeError2("expecting a function but got " + util2.classString(fn)); + } + yieldHandlers.push(fn); + }; + Promise2.spawn = function(generatorFunction) { + debug.deprecated("Promise.spawn()", "Promise.coroutine()"); + if (typeof generatorFunction !== "function") { + return apiRejection("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n"); + } + var spawn5 = new PromiseSpawn(generatorFunction, this); + var ret2 = spawn5.promise(); + spawn5._run(Promise2.spawn); + return ret2; + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/nodeify.js +var require_nodeify = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/nodeify.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2) { + var util2 = require_util(); + var async = Promise2._async; + var tryCatch2 = util2.tryCatch; + var errorObj2 = util2.errorObj; + function spreadAdapter(val, nodeback) { + var promise = this; + if (!util2.isArray(val)) + return successAdapter.call(promise, val, nodeback); + var ret2 = tryCatch2(nodeback).apply(promise._boundValue(), [null].concat(val)); + if (ret2 === errorObj2) { + async.throwLater(ret2.e); + } + } + function successAdapter(val, nodeback) { + var promise = this; + var receiver = promise._boundValue(); + var ret2 = val === void 0 ? tryCatch2(nodeback).call(receiver, null) : tryCatch2(nodeback).call(receiver, null, val); + if (ret2 === errorObj2) { + async.throwLater(ret2.e); + } + } + function errorAdapter(reason, nodeback) { + var promise = this; + if (!reason) { + var newReason = new Error(reason + ""); + newReason.cause = reason; + reason = newReason; + } + var ret2 = tryCatch2(nodeback).call(promise._boundValue(), reason); + if (ret2 === errorObj2) { + async.throwLater(ret2.e); + } + } + Promise2.prototype.asCallback = Promise2.prototype.nodeify = function(nodeback, options2) { + if (typeof nodeback == "function") { + var adapter = successAdapter; + if (options2 !== void 0 && Object(options2).spread) { + adapter = spreadAdapter; + } + this._then( + adapter, + errorAdapter, + void 0, + this, + nodeback + ); + } + return this; + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promisify.js +var require_promisify = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promisify.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, INTERNAL2) { + var THIS = {}; + var util2 = require_util(); + var nodebackForPromise = require_nodeback(); + var withAppended2 = util2.withAppended; + var maybeWrapAsError2 = util2.maybeWrapAsError; + var canEvaluate2 = util2.canEvaluate; + var TypeError2 = require_errors().TypeError; + var defaultSuffix = "Async"; + var defaultPromisified = { __isPromisified__: true }; + var noCopyProps = [ + "arity", + "length", + "name", + "arguments", + "caller", + "callee", + "prototype", + "__isPromisified__" + ]; + var noCopyPropsPattern = new RegExp("^(?:" + noCopyProps.join("|") + ")$"); + var defaultFilter = function(name) { + return util2.isIdentifier(name) && name.charAt(0) !== "_" && name !== "constructor"; + }; + function propsFilter(key) { + return !noCopyPropsPattern.test(key); + } + function isPromisified(fn) { + try { + return fn.__isPromisified__ === true; + } catch (e) { + return false; + } + } + function hasPromisified(obj2, key, suffix) { + var val = util2.getDataPropertyOrDefault( + obj2, + key + suffix, + defaultPromisified + ); + return val ? isPromisified(val) : false; + } + function checkValid(ret2, suffix, suffixRegexp) { + for (var i = 0; i < ret2.length; i += 2) { + var key = ret2[i]; + if (suffixRegexp.test(key)) { + var keyWithoutAsyncSuffix = key.replace(suffixRegexp, ""); + for (var j = 0; j < ret2.length; j += 2) { + if (ret2[j] === keyWithoutAsyncSuffix) { + throw new TypeError2("Cannot promisify an API that has normal methods with '%s'-suffix\n\n See http://goo.gl/MqrFmX\n".replace("%s", suffix)); + } + } + } + } + } + function promisifiableMethods(obj2, suffix, suffixRegexp, filter3) { + var keys = util2.inheritedDataKeys(obj2); + var ret2 = []; + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + var value = obj2[key]; + var passesDefaultFilter = filter3 === defaultFilter ? true : defaultFilter(key, value, obj2); + if (typeof value === "function" && !isPromisified(value) && !hasPromisified(obj2, key, suffix) && filter3(key, value, obj2, passesDefaultFilter)) { + ret2.push(key, value); + } + } + checkValid(ret2, suffix, suffixRegexp); + return ret2; + } + var escapeIdentRegex = function(str) { + return str.replace(/([$])/, "\\$"); + }; + var makeNodePromisifiedEval; + if (true) { + var switchCaseArgumentOrder = function(likelyArgumentCount) { + var ret2 = [likelyArgumentCount]; + var min = Math.max(0, likelyArgumentCount - 1 - 3); + for (var i = likelyArgumentCount - 1; i >= min; --i) { + ret2.push(i); + } + for (var i = likelyArgumentCount + 1; i <= 3; ++i) { + ret2.push(i); + } + return ret2; + }; + var argumentSequence = function(argumentCount) { + return util2.filledRange(argumentCount, "_arg", ""); + }; + var parameterDeclaration = function(parameterCount2) { + return util2.filledRange( + Math.max(parameterCount2, 3), + "_arg", + "" + ); + }; + var parameterCount = function(fn) { + if (typeof fn.length === "number") { + return Math.max(Math.min(fn.length, 1023 + 1), 0); + } + return 0; + }; + makeNodePromisifiedEval = function(callback, receiver, originalName, fn, _, multiArgs) { + var newParameterCount = Math.max(0, parameterCount(fn) - 1); + var argumentOrder = switchCaseArgumentOrder(newParameterCount); + var shouldProxyThis = typeof callback === "string" || receiver === THIS; + function generateCallForArgumentCount(count) { + var args3 = argumentSequence(count).join(", "); + var comma = count > 0 ? ", " : ""; + var ret2; + if (shouldProxyThis) { + ret2 = "ret = callback.call(this, {{args}}, nodeback); break;\n"; + } else { + ret2 = receiver === void 0 ? "ret = callback({{args}}, nodeback); break;\n" : "ret = callback.call(receiver, {{args}}, nodeback); break;\n"; + } + return ret2.replace("{{args}}", args3).replace(", ", comma); + } + function generateArgumentSwitchCase() { + var ret2 = ""; + for (var i = 0; i < argumentOrder.length; ++i) { + ret2 += "case " + argumentOrder[i] + ":" + generateCallForArgumentCount(argumentOrder[i]); + } + ret2 += " \n default: \n var args = new Array(len + 1); \n var i = 0; \n for (var i = 0; i < len; ++i) { \n args[i] = arguments[i]; \n } \n args[i] = nodeback; \n [CodeForCall] \n break; \n ".replace("[CodeForCall]", shouldProxyThis ? "ret = callback.apply(this, args);\n" : "ret = callback.apply(receiver, args);\n"); + return ret2; + } + var getFunctionCode = typeof callback === "string" ? "this != null ? this['" + callback + "'] : fn" : "fn"; + var body2 = "'use strict'; \n var ret = function (Parameters) { \n 'use strict'; \n var len = arguments.length; \n var promise = new Promise(INTERNAL); \n promise._captureStackTrace(); \n var nodeback = nodebackForPromise(promise, " + multiArgs + "); \n var ret; \n var callback = tryCatch([GetFunctionCode]); \n switch(len) { \n [CodeForSwitchCase] \n } \n if (ret === errorObj) { \n promise._rejectCallback(maybeWrapAsError(ret.e), true, true);\n } \n if (!promise._isFateSealed()) promise._setAsyncGuaranteed(); \n return promise; \n }; \n notEnumerableProp(ret, '__isPromisified__', true); \n return ret; \n ".replace("[CodeForSwitchCase]", generateArgumentSwitchCase()).replace("[GetFunctionCode]", getFunctionCode); + body2 = body2.replace("Parameters", parameterDeclaration(newParameterCount)); + return new Function( + "Promise", + "fn", + "receiver", + "withAppended", + "maybeWrapAsError", + "nodebackForPromise", + "tryCatch", + "errorObj", + "notEnumerableProp", + "INTERNAL", + body2 + )( + Promise2, + fn, + receiver, + withAppended2, + maybeWrapAsError2, + nodebackForPromise, + util2.tryCatch, + util2.errorObj, + util2.notEnumerableProp, + INTERNAL2 + ); + }; + } + function makeNodePromisifiedClosure(callback, receiver, _, fn, __, multiArgs) { + var defaultThis = function() { + return this; + }(); + var method = callback; + if (typeof method === "string") { + callback = fn; + } + function promisified() { + var _receiver = receiver; + if (receiver === THIS) + _receiver = this; + var promise = new Promise2(INTERNAL2); + promise._captureStackTrace(); + var cb = typeof method === "string" && this !== defaultThis ? this[method] : callback; + var fn2 = nodebackForPromise(promise, multiArgs); + try { + cb.apply(_receiver, withAppended2(arguments, fn2)); + } catch (e) { + promise._rejectCallback(maybeWrapAsError2(e), true, true); + } + if (!promise._isFateSealed()) + promise._setAsyncGuaranteed(); + return promise; + } + util2.notEnumerableProp(promisified, "__isPromisified__", true); + return promisified; + } + var makeNodePromisified = canEvaluate2 ? makeNodePromisifiedEval : makeNodePromisifiedClosure; + function promisifyAll(obj2, suffix, filter3, promisifier, multiArgs) { + var suffixRegexp = new RegExp(escapeIdentRegex(suffix) + "$"); + var methods = promisifiableMethods(obj2, suffix, suffixRegexp, filter3); + for (var i = 0, len = methods.length; i < len; i += 2) { + var key = methods[i]; + var fn = methods[i + 1]; + var promisifiedKey = key + suffix; + if (promisifier === makeNodePromisified) { + obj2[promisifiedKey] = makeNodePromisified(key, THIS, key, fn, suffix, multiArgs); + } else { + var promisified = promisifier(fn, function() { + return makeNodePromisified( + key, + THIS, + key, + fn, + suffix, + multiArgs + ); + }); + util2.notEnumerableProp(promisified, "__isPromisified__", true); + obj2[promisifiedKey] = promisified; + } + } + util2.toFastProperties(obj2); + return obj2; + } + function promisify4(callback, receiver, multiArgs) { + return makeNodePromisified( + callback, + receiver, + void 0, + callback, + null, + multiArgs + ); + } + Promise2.promisify = function(fn, options2) { + if (typeof fn !== "function") { + throw new TypeError2("expecting a function but got " + util2.classString(fn)); + } + if (isPromisified(fn)) { + return fn; + } + options2 = Object(options2); + var receiver = options2.context === void 0 ? THIS : options2.context; + var multiArgs = !!options2.multiArgs; + var ret2 = promisify4(fn, receiver, multiArgs); + util2.copyDescriptors(fn, ret2, propsFilter); + return ret2; + }; + Promise2.promisifyAll = function(target, options2) { + if (typeof target !== "function" && typeof target !== "object") { + throw new TypeError2("the target of promisifyAll must be an object or a function\n\n See http://goo.gl/MqrFmX\n"); + } + options2 = Object(options2); + var multiArgs = !!options2.multiArgs; + var suffix = options2.suffix; + if (typeof suffix !== "string") + suffix = defaultSuffix; + var filter3 = options2.filter; + if (typeof filter3 !== "function") + filter3 = defaultFilter; + var promisifier = options2.promisifier; + if (typeof promisifier !== "function") + promisifier = makeNodePromisified; + if (!util2.isIdentifier(suffix)) { + throw new RangeError("suffix must be a valid identifier\n\n See http://goo.gl/MqrFmX\n"); + } + var keys = util2.inheritedDataKeys(target); + for (var i = 0; i < keys.length; ++i) { + var value = target[keys[i]]; + if (keys[i] !== "constructor" && util2.isClass(value)) { + promisifyAll( + value.prototype, + suffix, + filter3, + promisifier, + multiArgs + ); + promisifyAll(value, suffix, filter3, promisifier, multiArgs); + } + } + return promisifyAll(target, suffix, filter3, promisifier, multiArgs); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/props.js +var require_props = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/props.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, PromiseArray, tryConvertToPromise, apiRejection) { + var util2 = require_util(); + var isObject3 = util2.isObject; + var es52 = require_es5(); + var Es6Map; + if (typeof Map === "function") + Es6Map = Map; + var mapToEntries = function() { + var index = 0; + var size = 0; + function extractEntry(value, key) { + this[index] = value; + this[index + size] = key; + index++; + } + return function mapToEntries2(map) { + size = map.size; + index = 0; + var ret2 = new Array(map.size * 2); + map.forEach(extractEntry, ret2); + return ret2; + }; + }(); + var entriesToMap = function(entries) { + var ret2 = new Es6Map(); + var length = entries.length / 2 | 0; + for (var i = 0; i < length; ++i) { + var key = entries[length + i]; + var value = entries[i]; + ret2.set(key, value); + } + return ret2; + }; + function PropertiesPromiseArray(obj2) { + var isMap = false; + var entries; + if (Es6Map !== void 0 && obj2 instanceof Es6Map) { + entries = mapToEntries(obj2); + isMap = true; + } else { + var keys = es52.keys(obj2); + var len = keys.length; + entries = new Array(len * 2); + for (var i = 0; i < len; ++i) { + var key = keys[i]; + entries[i] = obj2[key]; + entries[i + len] = key; + } + } + this.constructor$(entries); + this._isMap = isMap; + this._init$(void 0, -3); + } + util2.inherits(PropertiesPromiseArray, PromiseArray); + PropertiesPromiseArray.prototype._init = function() { + }; + PropertiesPromiseArray.prototype._promiseFulfilled = function(value, index) { + this._values[index] = value; + var totalResolved = ++this._totalResolved; + if (totalResolved >= this._length) { + var val; + if (this._isMap) { + val = entriesToMap(this._values); + } else { + val = {}; + var keyOffset = this.length(); + for (var i = 0, len = this.length(); i < len; ++i) { + val[this._values[i + keyOffset]] = this._values[i]; + } + } + this._resolve(val); + return true; + } + return false; + }; + PropertiesPromiseArray.prototype.shouldCopyValues = function() { + return false; + }; + PropertiesPromiseArray.prototype.getActualLength = function(len) { + return len >> 1; + }; + function props(promises2) { + var ret2; + var castValue = tryConvertToPromise(promises2); + if (!isObject3(castValue)) { + return apiRejection("cannot await properties of a non-object\n\n See http://goo.gl/MqrFmX\n"); + } else if (castValue instanceof Promise2) { + ret2 = castValue._then( + Promise2.props, + void 0, + void 0, + void 0, + void 0 + ); + } else { + ret2 = new PropertiesPromiseArray(castValue).promise(); + } + if (castValue instanceof Promise2) { + ret2._propagateFrom(castValue, 2); + } + return ret2; + } + Promise2.prototype.props = function() { + return props(this); + }; + Promise2.props = function(promises2) { + return props(promises2); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/race.js +var require_race3 = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/race.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, INTERNAL2, tryConvertToPromise, apiRejection) { + var util2 = require_util(); + var raceLater = function(promise) { + return promise.then(function(array) { + return race(array, promise); + }); + }; + function race(promises2, parent) { + var maybePromise = tryConvertToPromise(promises2); + if (maybePromise instanceof Promise2) { + return raceLater(maybePromise); + } else { + promises2 = util2.asArray(promises2); + if (promises2 === null) + return apiRejection("expecting an array or an iterable object but got " + util2.classString(promises2)); + } + var ret2 = new Promise2(INTERNAL2); + if (parent !== void 0) { + ret2._propagateFrom(parent, 3); + } + var fulfill = ret2._fulfill; + var reject = ret2._reject; + for (var i = 0, len = promises2.length; i < len; ++i) { + var val = promises2[i]; + if (val === void 0 && !(i in promises2)) { + continue; + } + Promise2.cast(val)._then(fulfill, reject, void 0, ret2, null); + } + return ret2; + } + Promise2.race = function(promises2) { + return race(promises2, void 0); + }; + Promise2.prototype.race = function() { + return race(this, void 0); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/reduce.js +var require_reduce2 = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/reduce.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL2, debug) { + var getDomain = Promise2._getDomain; + var util2 = require_util(); + var tryCatch2 = util2.tryCatch; + function ReductionPromiseArray(promises2, fn, initialValue, _each) { + this.constructor$(promises2); + var domain2 = getDomain(); + this._fn = domain2 === null ? fn : util2.domainBind(domain2, fn); + if (initialValue !== void 0) { + initialValue = Promise2.resolve(initialValue); + initialValue._attachCancellationCallback(this); + } + this._initialValue = initialValue; + this._currentCancellable = null; + if (_each === INTERNAL2) { + this._eachValues = Array(this._length); + } else if (_each === 0) { + this._eachValues = null; + } else { + this._eachValues = void 0; + } + this._promise._captureStackTrace(); + this._init$(void 0, -5); + } + util2.inherits(ReductionPromiseArray, PromiseArray); + ReductionPromiseArray.prototype._gotAccum = function(accum) { + if (this._eachValues !== void 0 && this._eachValues !== null && accum !== INTERNAL2) { + this._eachValues.push(accum); + } + }; + ReductionPromiseArray.prototype._eachComplete = function(value) { + if (this._eachValues !== null) { + this._eachValues.push(value); + } + return this._eachValues; + }; + ReductionPromiseArray.prototype._init = function() { + }; + ReductionPromiseArray.prototype._resolveEmptyArray = function() { + this._resolve(this._eachValues !== void 0 ? this._eachValues : this._initialValue); + }; + ReductionPromiseArray.prototype.shouldCopyValues = function() { + return false; + }; + ReductionPromiseArray.prototype._resolve = function(value) { + this._promise._resolveCallback(value); + this._values = null; + }; + ReductionPromiseArray.prototype._resultCancelled = function(sender) { + if (sender === this._initialValue) + return this._cancel(); + if (this._isResolved()) + return; + this._resultCancelled$(); + if (this._currentCancellable instanceof Promise2) { + this._currentCancellable.cancel(); + } + if (this._initialValue instanceof Promise2) { + this._initialValue.cancel(); + } + }; + ReductionPromiseArray.prototype._iterate = function(values) { + this._values = values; + var value; + var i; + var length = values.length; + if (this._initialValue !== void 0) { + value = this._initialValue; + i = 0; + } else { + value = Promise2.resolve(values[0]); + i = 1; + } + this._currentCancellable = value; + if (!value.isRejected()) { + for (; i < length; ++i) { + var ctx = { + accum: null, + value: values[i], + index: i, + length, + array: this + }; + value = value._then(gotAccum, void 0, void 0, ctx, void 0); + } + } + if (this._eachValues !== void 0) { + value = value._then(this._eachComplete, void 0, void 0, this, void 0); + } + value._then(completed, completed, void 0, value, this); + }; + Promise2.prototype.reduce = function(fn, initialValue) { + return reduce(this, fn, initialValue, null); + }; + Promise2.reduce = function(promises2, fn, initialValue, _each) { + return reduce(promises2, fn, initialValue, _each); + }; + function completed(valueOrReason, array) { + if (this.isFulfilled()) { + array._resolve(valueOrReason); + } else { + array._reject(valueOrReason); + } + } + function reduce(promises2, fn, initialValue, _each) { + if (typeof fn !== "function") { + return apiRejection("expecting a function but got " + util2.classString(fn)); + } + var array = new ReductionPromiseArray(promises2, fn, initialValue, _each); + return array.promise(); + } + function gotAccum(accum) { + this.accum = accum; + this.array._gotAccum(accum); + var value = tryConvertToPromise(this.value, this.array._promise); + if (value instanceof Promise2) { + this.array._currentCancellable = value; + return value._then(gotValue, void 0, void 0, this, void 0); + } else { + return gotValue.call(this, value); + } + } + function gotValue(value) { + var array = this.array; + var promise = array._promise; + var fn = tryCatch2(array._fn); + promise._pushContext(); + var ret2; + if (array._eachValues !== void 0) { + ret2 = fn.call(promise._boundValue(), value, this.index, this.length); + } else { + ret2 = fn.call( + promise._boundValue(), + this.accum, + value, + this.index, + this.length + ); + } + if (ret2 instanceof Promise2) { + array._currentCancellable = ret2; + } + var promiseCreated = promise._popContext(); + debug.checkForgottenReturns( + ret2, + promiseCreated, + array._eachValues !== void 0 ? "Promise.each" : "Promise.reduce", + promise + ); + return ret2; + } + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/settle.js +var require_settle = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/settle.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, PromiseArray, debug) { + var PromiseInspection = Promise2.PromiseInspection; + var util2 = require_util(); + function SettledPromiseArray(values) { + this.constructor$(values); + } + util2.inherits(SettledPromiseArray, PromiseArray); + SettledPromiseArray.prototype._promiseResolved = function(index, inspection) { + this._values[index] = inspection; + var totalResolved = ++this._totalResolved; + if (totalResolved >= this._length) { + this._resolve(this._values); + return true; + } + return false; + }; + SettledPromiseArray.prototype._promiseFulfilled = function(value, index) { + var ret2 = new PromiseInspection(); + ret2._bitField = 33554432; + ret2._settledValueField = value; + return this._promiseResolved(index, ret2); + }; + SettledPromiseArray.prototype._promiseRejected = function(reason, index) { + var ret2 = new PromiseInspection(); + ret2._bitField = 16777216; + ret2._settledValueField = reason; + return this._promiseResolved(index, ret2); + }; + Promise2.settle = function(promises2) { + debug.deprecated(".settle()", ".reflect()"); + return new SettledPromiseArray(promises2).promise(); + }; + Promise2.prototype.settle = function() { + return Promise2.settle(this); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/some.js +var require_some = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/some.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, PromiseArray, apiRejection) { + var util2 = require_util(); + var RangeError2 = require_errors().RangeError; + var AggregateError2 = require_errors().AggregateError; + var isArray2 = util2.isArray; + var CANCELLATION = {}; + function SomePromiseArray(values) { + this.constructor$(values); + this._howMany = 0; + this._unwrap = false; + this._initialized = false; + } + util2.inherits(SomePromiseArray, PromiseArray); + SomePromiseArray.prototype._init = function() { + if (!this._initialized) { + return; + } + if (this._howMany === 0) { + this._resolve([]); + return; + } + this._init$(void 0, -5); + var isArrayResolved = isArray2(this._values); + if (!this._isResolved() && isArrayResolved && this._howMany > this._canPossiblyFulfill()) { + this._reject(this._getRangeError(this.length())); + } + }; + SomePromiseArray.prototype.init = function() { + this._initialized = true; + this._init(); + }; + SomePromiseArray.prototype.setUnwrap = function() { + this._unwrap = true; + }; + SomePromiseArray.prototype.howMany = function() { + return this._howMany; + }; + SomePromiseArray.prototype.setHowMany = function(count) { + this._howMany = count; + }; + SomePromiseArray.prototype._promiseFulfilled = function(value) { + this._addFulfilled(value); + if (this._fulfilled() === this.howMany()) { + this._values.length = this.howMany(); + if (this.howMany() === 1 && this._unwrap) { + this._resolve(this._values[0]); + } else { + this._resolve(this._values); + } + return true; + } + return false; + }; + SomePromiseArray.prototype._promiseRejected = function(reason) { + this._addRejected(reason); + return this._checkOutcome(); + }; + SomePromiseArray.prototype._promiseCancelled = function() { + if (this._values instanceof Promise2 || this._values == null) { + return this._cancel(); + } + this._addRejected(CANCELLATION); + return this._checkOutcome(); + }; + SomePromiseArray.prototype._checkOutcome = function() { + if (this.howMany() > this._canPossiblyFulfill()) { + var e = new AggregateError2(); + for (var i = this.length(); i < this._values.length; ++i) { + if (this._values[i] !== CANCELLATION) { + e.push(this._values[i]); + } + } + if (e.length > 0) { + this._reject(e); + } else { + this._cancel(); + } + return true; + } + return false; + }; + SomePromiseArray.prototype._fulfilled = function() { + return this._totalResolved; + }; + SomePromiseArray.prototype._rejected = function() { + return this._values.length - this.length(); + }; + SomePromiseArray.prototype._addRejected = function(reason) { + this._values.push(reason); + }; + SomePromiseArray.prototype._addFulfilled = function(value) { + this._values[this._totalResolved++] = value; + }; + SomePromiseArray.prototype._canPossiblyFulfill = function() { + return this.length() - this._rejected(); + }; + SomePromiseArray.prototype._getRangeError = function(count) { + var message = "Input array must contain at least " + this._howMany + " items but contains only " + count + " items"; + return new RangeError2(message); + }; + SomePromiseArray.prototype._resolveEmptyArray = function() { + this._reject(this._getRangeError(0)); + }; + function some(promises2, howMany) { + if ((howMany | 0) !== howMany || howMany < 0) { + return apiRejection("expecting a positive integer\n\n See http://goo.gl/MqrFmX\n"); + } + var ret2 = new SomePromiseArray(promises2); + var promise = ret2.promise(); + ret2.setHowMany(howMany); + ret2.init(); + return promise; + } + Promise2.some = function(promises2, howMany) { + return some(promises2, howMany); + }; + Promise2.prototype.some = function(howMany) { + return some(this, howMany); + }; + Promise2._SomePromiseArray = SomePromiseArray; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/filter.js +var require_filter2 = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/filter.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, INTERNAL2) { + var PromiseMap = Promise2.map; + Promise2.prototype.filter = function(fn, options2) { + return PromiseMap(this, fn, options2, INTERNAL2); + }; + Promise2.filter = function(promises2, fn, options2) { + return PromiseMap(promises2, fn, options2, INTERNAL2); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/each.js +var require_each = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/each.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2, INTERNAL2) { + var PromiseReduce = Promise2.reduce; + var PromiseAll = Promise2.all; + function promiseAllThis() { + return PromiseAll(this); + } + function PromiseMapSeries(promises2, fn) { + return PromiseReduce(promises2, fn, INTERNAL2, INTERNAL2); + } + Promise2.prototype.each = function(fn) { + return PromiseReduce(this, fn, INTERNAL2, 0)._then(promiseAllThis, void 0, void 0, this, void 0); + }; + Promise2.prototype.mapSeries = function(fn) { + return PromiseReduce(this, fn, INTERNAL2, INTERNAL2); + }; + Promise2.each = function(promises2, fn) { + return PromiseReduce(promises2, fn, INTERNAL2, 0)._then(promiseAllThis, void 0, void 0, promises2, void 0); + }; + Promise2.mapSeries = PromiseMapSeries; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/any.js +var require_any = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/any.js"(exports2, module2) { + "use strict"; + module2.exports = function(Promise2) { + var SomePromiseArray = Promise2._SomePromiseArray; + function any(promises2) { + var ret2 = new SomePromiseArray(promises2); + var promise = ret2.promise(); + ret2.setHowMany(1); + ret2.setUnwrap(); + ret2.init(); + return promise; + } + Promise2.any = function(promises2) { + return any(promises2); + }; + Promise2.prototype.any = function() { + return any(this); + }; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promise.js +var require_promise = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promise.js"(exports2, module2) { + "use strict"; + module2.exports = function() { + var makeSelfResolutionError = function() { + return new TypeError2("circular promise resolution chain\n\n See http://goo.gl/MqrFmX\n"); + }; + var reflectHandler = function() { + return new Promise2.PromiseInspection(this._target()); + }; + var apiRejection = function(msg) { + return Promise2.reject(new TypeError2(msg)); + }; + function Proxyable() { + } + var UNDEFINED_BINDING = {}; + var util2 = require_util(); + var getDomain; + if (util2.isNode) { + getDomain = function() { + var ret2 = process.domain; + if (ret2 === void 0) + ret2 = null; + return ret2; + }; + } else { + getDomain = function() { + return null; + }; + } + util2.notEnumerableProp(Promise2, "_getDomain", getDomain); + var es52 = require_es5(); + var Async = require_async3(); + var async = new Async(); + es52.defineProperty(Promise2, "_async", { value: async }); + var errors = require_errors(); + var TypeError2 = Promise2.TypeError = errors.TypeError; + Promise2.RangeError = errors.RangeError; + var CancellationError = Promise2.CancellationError = errors.CancellationError; + Promise2.TimeoutError = errors.TimeoutError; + Promise2.OperationalError = errors.OperationalError; + Promise2.RejectionError = errors.OperationalError; + Promise2.AggregateError = errors.AggregateError; + var INTERNAL2 = function() { + }; + var APPLY = {}; + var NEXT_FILTER = {}; + var tryConvertToPromise = require_thenables()(Promise2, INTERNAL2); + var PromiseArray = require_promise_array()( + Promise2, + INTERNAL2, + tryConvertToPromise, + apiRejection, + Proxyable + ); + var Context2 = require_context3()(Promise2); + var createContext = Context2.create; + var debug = require_debuggability()(Promise2, Context2); + var CapturedTrace = debug.CapturedTrace; + var PassThroughHandlerContext = require_finally()(Promise2, tryConvertToPromise); + var catchFilter = require_catch_filter()(NEXT_FILTER); + var nodebackForPromise = require_nodeback(); + var errorObj2 = util2.errorObj; + var tryCatch2 = util2.tryCatch; + function check(self2, executor) { + if (typeof executor !== "function") { + throw new TypeError2("expecting a function but got " + util2.classString(executor)); + } + if (self2.constructor !== Promise2) { + throw new TypeError2("the promise constructor cannot be invoked directly\n\n See http://goo.gl/MqrFmX\n"); + } + } + function Promise2(executor) { + this._bitField = 0; + this._fulfillmentHandler0 = void 0; + this._rejectionHandler0 = void 0; + this._promise0 = void 0; + this._receiver0 = void 0; + if (executor !== INTERNAL2) { + check(this, executor); + this._resolveFromExecutor(executor); + } + this._promiseCreated(); + this._fireEvent("promiseCreated", this); + } + Promise2.prototype.toString = function() { + return "[object Promise]"; + }; + Promise2.prototype.caught = Promise2.prototype["catch"] = function(fn) { + var len = arguments.length; + if (len > 1) { + var catchInstances = new Array(len - 1), j = 0, i; + for (i = 0; i < len - 1; ++i) { + var item = arguments[i]; + if (util2.isObject(item)) { + catchInstances[j++] = item; + } else { + return apiRejection("expecting an object but got A catch statement predicate " + util2.classString(item)); + } + } + catchInstances.length = j; + fn = arguments[i]; + return this.then(void 0, catchFilter(catchInstances, fn, this)); + } + return this.then(void 0, fn); + }; + Promise2.prototype.reflect = function() { + return this._then( + reflectHandler, + reflectHandler, + void 0, + this, + void 0 + ); + }; + Promise2.prototype.then = function(didFulfill, didReject) { + if (debug.warnings() && arguments.length > 0 && typeof didFulfill !== "function" && typeof didReject !== "function") { + var msg = ".then() only accepts functions but was passed: " + util2.classString(didFulfill); + if (arguments.length > 1) { + msg += ", " + util2.classString(didReject); + } + this._warn(msg); + } + return this._then(didFulfill, didReject, void 0, void 0, void 0); + }; + Promise2.prototype.done = function(didFulfill, didReject) { + var promise = this._then(didFulfill, didReject, void 0, void 0, void 0); + promise._setIsFinal(); + }; + Promise2.prototype.spread = function(fn) { + if (typeof fn !== "function") { + return apiRejection("expecting a function but got " + util2.classString(fn)); + } + return this.all()._then(fn, void 0, void 0, APPLY, void 0); + }; + Promise2.prototype.toJSON = function() { + var ret2 = { + isFulfilled: false, + isRejected: false, + fulfillmentValue: void 0, + rejectionReason: void 0 + }; + if (this.isFulfilled()) { + ret2.fulfillmentValue = this.value(); + ret2.isFulfilled = true; + } else if (this.isRejected()) { + ret2.rejectionReason = this.reason(); + ret2.isRejected = true; + } + return ret2; + }; + Promise2.prototype.all = function() { + if (arguments.length > 0) { + this._warn(".all() was passed arguments but it does not take any"); + } + return new PromiseArray(this).promise(); + }; + Promise2.prototype.error = function(fn) { + return this.caught(util2.originatesFromRejection, fn); + }; + Promise2.getNewLibraryCopy = module2.exports; + Promise2.is = function(val) { + return val instanceof Promise2; + }; + Promise2.fromNode = Promise2.fromCallback = function(fn) { + var ret2 = new Promise2(INTERNAL2); + ret2._captureStackTrace(); + var multiArgs = arguments.length > 1 ? !!Object(arguments[1]).multiArgs : false; + var result = tryCatch2(fn)(nodebackForPromise(ret2, multiArgs)); + if (result === errorObj2) { + ret2._rejectCallback(result.e, true); + } + if (!ret2._isFateSealed()) + ret2._setAsyncGuaranteed(); + return ret2; + }; + Promise2.all = function(promises2) { + return new PromiseArray(promises2).promise(); + }; + Promise2.cast = function(obj2) { + var ret2 = tryConvertToPromise(obj2); + if (!(ret2 instanceof Promise2)) { + ret2 = new Promise2(INTERNAL2); + ret2._captureStackTrace(); + ret2._setFulfilled(); + ret2._rejectionHandler0 = obj2; + } + return ret2; + }; + Promise2.resolve = Promise2.fulfilled = Promise2.cast; + Promise2.reject = Promise2.rejected = function(reason) { + var ret2 = new Promise2(INTERNAL2); + ret2._captureStackTrace(); + ret2._rejectCallback(reason, true); + return ret2; + }; + Promise2.setScheduler = function(fn) { + if (typeof fn !== "function") { + throw new TypeError2("expecting a function but got " + util2.classString(fn)); + } + return async.setScheduler(fn); + }; + Promise2.prototype._then = function(didFulfill, didReject, _, receiver, internalData) { + var haveInternalData = internalData !== void 0; + var promise = haveInternalData ? internalData : new Promise2(INTERNAL2); + var target = this._target(); + var bitField = target._bitField; + if (!haveInternalData) { + promise._propagateFrom(this, 3); + promise._captureStackTrace(); + if (receiver === void 0 && (this._bitField & 2097152) !== 0) { + if (!((bitField & 50397184) === 0)) { + receiver = this._boundValue(); + } else { + receiver = target === this ? void 0 : this._boundTo; + } + } + this._fireEvent("promiseChained", this, promise); + } + var domain2 = getDomain(); + if (!((bitField & 50397184) === 0)) { + var handler, value, settler = target._settlePromiseCtx; + if ((bitField & 33554432) !== 0) { + value = target._rejectionHandler0; + handler = didFulfill; + } else if ((bitField & 16777216) !== 0) { + value = target._fulfillmentHandler0; + handler = didReject; + target._unsetRejectionIsUnhandled(); + } else { + settler = target._settlePromiseLateCancellationObserver; + value = new CancellationError("late cancellation observer"); + target._attachExtraTrace(value); + handler = didReject; + } + async.invoke(settler, target, { + handler: domain2 === null ? handler : typeof handler === "function" && util2.domainBind(domain2, handler), + promise, + receiver, + value + }); + } else { + target._addCallbacks(didFulfill, didReject, promise, receiver, domain2); + } + return promise; + }; + Promise2.prototype._length = function() { + return this._bitField & 65535; + }; + Promise2.prototype._isFateSealed = function() { + return (this._bitField & 117506048) !== 0; + }; + Promise2.prototype._isFollowing = function() { + return (this._bitField & 67108864) === 67108864; + }; + Promise2.prototype._setLength = function(len) { + this._bitField = this._bitField & -65536 | len & 65535; + }; + Promise2.prototype._setFulfilled = function() { + this._bitField = this._bitField | 33554432; + this._fireEvent("promiseFulfilled", this); + }; + Promise2.prototype._setRejected = function() { + this._bitField = this._bitField | 16777216; + this._fireEvent("promiseRejected", this); + }; + Promise2.prototype._setFollowing = function() { + this._bitField = this._bitField | 67108864; + this._fireEvent("promiseResolved", this); + }; + Promise2.prototype._setIsFinal = function() { + this._bitField = this._bitField | 4194304; + }; + Promise2.prototype._isFinal = function() { + return (this._bitField & 4194304) > 0; + }; + Promise2.prototype._unsetCancelled = function() { + this._bitField = this._bitField & ~65536; + }; + Promise2.prototype._setCancelled = function() { + this._bitField = this._bitField | 65536; + this._fireEvent("promiseCancelled", this); + }; + Promise2.prototype._setWillBeCancelled = function() { + this._bitField = this._bitField | 8388608; + }; + Promise2.prototype._setAsyncGuaranteed = function() { + if (async.hasCustomScheduler()) + return; + this._bitField = this._bitField | 134217728; + }; + Promise2.prototype._receiverAt = function(index) { + var ret2 = index === 0 ? this._receiver0 : this[index * 4 - 4 + 3]; + if (ret2 === UNDEFINED_BINDING) { + return void 0; + } else if (ret2 === void 0 && this._isBound()) { + return this._boundValue(); + } + return ret2; + }; + Promise2.prototype._promiseAt = function(index) { + return this[index * 4 - 4 + 2]; + }; + Promise2.prototype._fulfillmentHandlerAt = function(index) { + return this[index * 4 - 4 + 0]; + }; + Promise2.prototype._rejectionHandlerAt = function(index) { + return this[index * 4 - 4 + 1]; + }; + Promise2.prototype._boundValue = function() { + }; + Promise2.prototype._migrateCallback0 = function(follower) { + var bitField = follower._bitField; + var fulfill = follower._fulfillmentHandler0; + var reject = follower._rejectionHandler0; + var promise = follower._promise0; + var receiver = follower._receiverAt(0); + if (receiver === void 0) + receiver = UNDEFINED_BINDING; + this._addCallbacks(fulfill, reject, promise, receiver, null); + }; + Promise2.prototype._migrateCallbackAt = function(follower, index) { + var fulfill = follower._fulfillmentHandlerAt(index); + var reject = follower._rejectionHandlerAt(index); + var promise = follower._promiseAt(index); + var receiver = follower._receiverAt(index); + if (receiver === void 0) + receiver = UNDEFINED_BINDING; + this._addCallbacks(fulfill, reject, promise, receiver, null); + }; + Promise2.prototype._addCallbacks = function(fulfill, reject, promise, receiver, domain2) { + var index = this._length(); + if (index >= 65535 - 4) { + index = 0; + this._setLength(0); + } + if (index === 0) { + this._promise0 = promise; + this._receiver0 = receiver; + if (typeof fulfill === "function") { + this._fulfillmentHandler0 = domain2 === null ? fulfill : util2.domainBind(domain2, fulfill); + } + if (typeof reject === "function") { + this._rejectionHandler0 = domain2 === null ? reject : util2.domainBind(domain2, reject); + } + } else { + var base = index * 4 - 4; + this[base + 2] = promise; + this[base + 3] = receiver; + if (typeof fulfill === "function") { + this[base + 0] = domain2 === null ? fulfill : util2.domainBind(domain2, fulfill); + } + if (typeof reject === "function") { + this[base + 1] = domain2 === null ? reject : util2.domainBind(domain2, reject); + } + } + this._setLength(index + 1); + return index; + }; + Promise2.prototype._proxy = function(proxyable, arg) { + this._addCallbacks(void 0, void 0, arg, proxyable, null); + }; + Promise2.prototype._resolveCallback = function(value, shouldBind) { + if ((this._bitField & 117506048) !== 0) + return; + if (value === this) + return this._rejectCallback(makeSelfResolutionError(), false); + var maybePromise = tryConvertToPromise(value, this); + if (!(maybePromise instanceof Promise2)) + return this._fulfill(value); + if (shouldBind) + this._propagateFrom(maybePromise, 2); + var promise = maybePromise._target(); + if (promise === this) { + this._reject(makeSelfResolutionError()); + return; + } + var bitField = promise._bitField; + if ((bitField & 50397184) === 0) { + var len = this._length(); + if (len > 0) + promise._migrateCallback0(this); + for (var i = 1; i < len; ++i) { + promise._migrateCallbackAt(this, i); + } + this._setFollowing(); + this._setLength(0); + this._setFollowee(promise); + } else if ((bitField & 33554432) !== 0) { + this._fulfill(promise._value()); + } else if ((bitField & 16777216) !== 0) { + this._reject(promise._reason()); + } else { + var reason = new CancellationError("late cancellation observer"); + promise._attachExtraTrace(reason); + this._reject(reason); + } + }; + Promise2.prototype._rejectCallback = function(reason, synchronous, ignoreNonErrorWarnings) { + var trace = util2.ensureErrorObject(reason); + var hasStack = trace === reason; + if (!hasStack && !ignoreNonErrorWarnings && debug.warnings()) { + var message = "a promise was rejected with a non-error: " + util2.classString(reason); + this._warn(message, true); + } + this._attachExtraTrace(trace, synchronous ? hasStack : false); + this._reject(reason); + }; + Promise2.prototype._resolveFromExecutor = function(executor) { + var promise = this; + this._captureStackTrace(); + this._pushContext(); + var synchronous = true; + var r = this._execute(executor, function(value) { + promise._resolveCallback(value); + }, function(reason) { + promise._rejectCallback(reason, synchronous); + }); + synchronous = false; + this._popContext(); + if (r !== void 0) { + promise._rejectCallback(r, true); + } + }; + Promise2.prototype._settlePromiseFromHandler = function(handler, receiver, value, promise) { + var bitField = promise._bitField; + if ((bitField & 65536) !== 0) + return; + promise._pushContext(); + var x; + if (receiver === APPLY) { + if (!value || typeof value.length !== "number") { + x = errorObj2; + x.e = new TypeError2("cannot .spread() a non-array: " + util2.classString(value)); + } else { + x = tryCatch2(handler).apply(this._boundValue(), value); + } + } else { + x = tryCatch2(handler).call(receiver, value); + } + var promiseCreated = promise._popContext(); + bitField = promise._bitField; + if ((bitField & 65536) !== 0) + return; + if (x === NEXT_FILTER) { + promise._reject(value); + } else if (x === errorObj2) { + promise._rejectCallback(x.e, false); + } else { + debug.checkForgottenReturns(x, promiseCreated, "", promise, this); + promise._resolveCallback(x); + } + }; + Promise2.prototype._target = function() { + var ret2 = this; + while (ret2._isFollowing()) + ret2 = ret2._followee(); + return ret2; + }; + Promise2.prototype._followee = function() { + return this._rejectionHandler0; + }; + Promise2.prototype._setFollowee = function(promise) { + this._rejectionHandler0 = promise; + }; + Promise2.prototype._settlePromise = function(promise, handler, receiver, value) { + var isPromise = promise instanceof Promise2; + var bitField = this._bitField; + var asyncGuaranteed = (bitField & 134217728) !== 0; + if ((bitField & 65536) !== 0) { + if (isPromise) + promise._invokeInternalOnCancel(); + if (receiver instanceof PassThroughHandlerContext && receiver.isFinallyHandler()) { + receiver.cancelPromise = promise; + if (tryCatch2(handler).call(receiver, value) === errorObj2) { + promise._reject(errorObj2.e); + } + } else if (handler === reflectHandler) { + promise._fulfill(reflectHandler.call(receiver)); + } else if (receiver instanceof Proxyable) { + receiver._promiseCancelled(promise); + } else if (isPromise || promise instanceof PromiseArray) { + promise._cancel(); + } else { + receiver.cancel(); + } + } else if (typeof handler === "function") { + if (!isPromise) { + handler.call(receiver, value, promise); + } else { + if (asyncGuaranteed) + promise._setAsyncGuaranteed(); + this._settlePromiseFromHandler(handler, receiver, value, promise); + } + } else if (receiver instanceof Proxyable) { + if (!receiver._isResolved()) { + if ((bitField & 33554432) !== 0) { + receiver._promiseFulfilled(value, promise); + } else { + receiver._promiseRejected(value, promise); + } + } + } else if (isPromise) { + if (asyncGuaranteed) + promise._setAsyncGuaranteed(); + if ((bitField & 33554432) !== 0) { + promise._fulfill(value); + } else { + promise._reject(value); + } + } + }; + Promise2.prototype._settlePromiseLateCancellationObserver = function(ctx) { + var handler = ctx.handler; + var promise = ctx.promise; + var receiver = ctx.receiver; + var value = ctx.value; + if (typeof handler === "function") { + if (!(promise instanceof Promise2)) { + handler.call(receiver, value, promise); + } else { + this._settlePromiseFromHandler(handler, receiver, value, promise); + } + } else if (promise instanceof Promise2) { + promise._reject(value); + } + }; + Promise2.prototype._settlePromiseCtx = function(ctx) { + this._settlePromise(ctx.promise, ctx.handler, ctx.receiver, ctx.value); + }; + Promise2.prototype._settlePromise0 = function(handler, value, bitField) { + var promise = this._promise0; + var receiver = this._receiverAt(0); + this._promise0 = void 0; + this._receiver0 = void 0; + this._settlePromise(promise, handler, receiver, value); + }; + Promise2.prototype._clearCallbackDataAtIndex = function(index) { + var base = index * 4 - 4; + this[base + 2] = this[base + 3] = this[base + 0] = this[base + 1] = void 0; + }; + Promise2.prototype._fulfill = function(value) { + var bitField = this._bitField; + if ((bitField & 117506048) >>> 16) + return; + if (value === this) { + var err2 = makeSelfResolutionError(); + this._attachExtraTrace(err2); + return this._reject(err2); + } + this._setFulfilled(); + this._rejectionHandler0 = value; + if ((bitField & 65535) > 0) { + if ((bitField & 134217728) !== 0) { + this._settlePromises(); + } else { + async.settlePromises(this); + } + } + }; + Promise2.prototype._reject = function(reason) { + var bitField = this._bitField; + if ((bitField & 117506048) >>> 16) + return; + this._setRejected(); + this._fulfillmentHandler0 = reason; + if (this._isFinal()) { + return async.fatalError(reason, util2.isNode); + } + if ((bitField & 65535) > 0) { + async.settlePromises(this); + } else { + this._ensurePossibleRejectionHandled(); + } + }; + Promise2.prototype._fulfillPromises = function(len, value) { + for (var i = 1; i < len; i++) { + var handler = this._fulfillmentHandlerAt(i); + var promise = this._promiseAt(i); + var receiver = this._receiverAt(i); + this._clearCallbackDataAtIndex(i); + this._settlePromise(promise, handler, receiver, value); + } + }; + Promise2.prototype._rejectPromises = function(len, reason) { + for (var i = 1; i < len; i++) { + var handler = this._rejectionHandlerAt(i); + var promise = this._promiseAt(i); + var receiver = this._receiverAt(i); + this._clearCallbackDataAtIndex(i); + this._settlePromise(promise, handler, receiver, reason); + } + }; + Promise2.prototype._settlePromises = function() { + var bitField = this._bitField; + var len = bitField & 65535; + if (len > 0) { + if ((bitField & 16842752) !== 0) { + var reason = this._fulfillmentHandler0; + this._settlePromise0(this._rejectionHandler0, reason, bitField); + this._rejectPromises(len, reason); + } else { + var value = this._rejectionHandler0; + this._settlePromise0(this._fulfillmentHandler0, value, bitField); + this._fulfillPromises(len, value); + } + this._setLength(0); + } + this._clearCancellationData(); + }; + Promise2.prototype._settledValue = function() { + var bitField = this._bitField; + if ((bitField & 33554432) !== 0) { + return this._rejectionHandler0; + } else if ((bitField & 16777216) !== 0) { + return this._fulfillmentHandler0; + } + }; + function deferResolve(v) { + this.promise._resolveCallback(v); + } + function deferReject(v) { + this.promise._rejectCallback(v, false); + } + Promise2.defer = Promise2.pending = function() { + debug.deprecated("Promise.defer", "new Promise"); + var promise = new Promise2(INTERNAL2); + return { + promise, + resolve: deferResolve, + reject: deferReject + }; + }; + util2.notEnumerableProp( + Promise2, + "_makeSelfResolutionError", + makeSelfResolutionError + ); + require_method()( + Promise2, + INTERNAL2, + tryConvertToPromise, + apiRejection, + debug + ); + require_bind()(Promise2, INTERNAL2, tryConvertToPromise, debug); + require_cancel()(Promise2, PromiseArray, apiRejection, debug); + require_direct_resolve()(Promise2); + require_synchronous_inspection()(Promise2); + require_join()( + Promise2, + PromiseArray, + tryConvertToPromise, + INTERNAL2, + async, + getDomain + ); + Promise2.Promise = Promise2; + Promise2.version = "3.4.7"; + require_map2()(Promise2, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL2, debug); + require_call_get()(Promise2); + require_using2()(Promise2, apiRejection, tryConvertToPromise, createContext, INTERNAL2, debug); + require_timers()(Promise2, INTERNAL2, debug); + require_generators()(Promise2, apiRejection, INTERNAL2, tryConvertToPromise, Proxyable, debug); + require_nodeify()(Promise2); + require_promisify()(Promise2, INTERNAL2); + require_props()(Promise2, PromiseArray, tryConvertToPromise, apiRejection); + require_race3()(Promise2, INTERNAL2, tryConvertToPromise, apiRejection); + require_reduce2()(Promise2, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL2, debug); + require_settle()(Promise2, PromiseArray, debug); + require_some()(Promise2, PromiseArray, apiRejection); + require_filter2()(Promise2, INTERNAL2); + require_each()(Promise2, INTERNAL2); + require_any()(Promise2); + util2.toFastProperties(Promise2); + util2.toFastProperties(Promise2.prototype); + function fillTypes(value) { + var p = new Promise2(INTERNAL2); + p._fulfillmentHandler0 = value; + p._rejectionHandler0 = value; + p._promise0 = value; + p._receiver0 = value; + } + fillTypes({ a: 1 }); + fillTypes({ b: 2 }); + fillTypes({ c: 3 }); + fillTypes(1); + fillTypes(function() { + }); + fillTypes(void 0); + fillTypes(false); + fillTypes(new Promise2(INTERNAL2)); + debug.setBounds(Async.firstLineError, util2.lastLineError); + return Promise2; + }; + } +}); + +// ../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/bluebird.js +var require_bluebird = __commonJS({ + "../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/bluebird.js"(exports2, module2) { + "use strict"; + var old; + if (typeof Promise !== "undefined") + old = Promise; + function noConflict() { + try { + if (Promise === bluebird) + Promise = old; + } catch (e) { + } + return bluebird; + } + var bluebird = require_promise()(); + bluebird.noConflict = noConflict; + module2.exports = bluebird; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Buffer.js +var require_Buffer = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Buffer.js"(exports2, module2) { + var Buffer2 = require("buffer").Buffer; + if (Buffer2.from === void 0) { + Buffer2.from = function(a, b, c) { + return new Buffer2(a, b, c); + }; + Buffer2.alloc = Buffer2.from; + } + module2.exports = Buffer2; + } +}); + +// ../node_modules/.pnpm/process-nextick-args@2.0.1/node_modules/process-nextick-args/index.js +var require_process_nextick_args = __commonJS({ + "../node_modules/.pnpm/process-nextick-args@2.0.1/node_modules/process-nextick-args/index.js"(exports2, module2) { + "use strict"; + if (typeof process === "undefined" || !process.version || process.version.indexOf("v0.") === 0 || process.version.indexOf("v1.") === 0 && process.version.indexOf("v1.8.") !== 0) { + module2.exports = { nextTick }; + } else { + module2.exports = process; + } + function nextTick(fn, arg1, arg2, arg3) { + if (typeof fn !== "function") { + throw new TypeError('"callback" argument must be a function'); + } + var len = arguments.length; + var args3, i; + switch (len) { + case 0: + case 1: + return process.nextTick(fn); + case 2: + return process.nextTick(function afterTickOne() { + fn.call(null, arg1); + }); + case 3: + return process.nextTick(function afterTickTwo() { + fn.call(null, arg1, arg2); + }); + case 4: + return process.nextTick(function afterTickThree() { + fn.call(null, arg1, arg2, arg3); + }); + default: + args3 = new Array(len - 1); + i = 0; + while (i < args3.length) { + args3[i++] = arguments[i]; + } + return process.nextTick(function afterTick() { + fn.apply(null, args3); + }); + } + } + } +}); + +// ../node_modules/.pnpm/isarray@1.0.0/node_modules/isarray/index.js +var require_isarray = __commonJS({ + "../node_modules/.pnpm/isarray@1.0.0/node_modules/isarray/index.js"(exports2, module2) { + var toString3 = {}.toString; + module2.exports = Array.isArray || function(arr) { + return toString3.call(arr) == "[object Array]"; + }; + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/stream.js +var require_stream = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/stream.js"(exports2, module2) { + module2.exports = require("stream"); + } +}); + +// ../node_modules/.pnpm/safe-buffer@5.1.2/node_modules/safe-buffer/index.js +var require_safe_buffer = __commonJS({ + "../node_modules/.pnpm/safe-buffer@5.1.2/node_modules/safe-buffer/index.js"(exports2, module2) { + var buffer2 = require("buffer"); + var Buffer2 = buffer2.Buffer; + function copyProps(src, dst) { + for (var key in src) { + dst[key] = src[key]; + } + } + if (Buffer2.from && Buffer2.alloc && Buffer2.allocUnsafe && Buffer2.allocUnsafeSlow) { + module2.exports = buffer2; + } else { + copyProps(buffer2, exports2); + exports2.Buffer = SafeBuffer; + } + function SafeBuffer(arg, encodingOrOffset, length) { + return Buffer2(arg, encodingOrOffset, length); + } + copyProps(Buffer2, SafeBuffer); + SafeBuffer.from = function(arg, encodingOrOffset, length) { + if (typeof arg === "number") { + throw new TypeError("Argument must not be a number"); + } + return Buffer2(arg, encodingOrOffset, length); + }; + SafeBuffer.alloc = function(size, fill, encoding) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + var buf = Buffer2(size); + if (fill !== void 0) { + if (typeof encoding === "string") { + buf.fill(fill, encoding); + } else { + buf.fill(fill); + } + } else { + buf.fill(0); + } + return buf; + }; + SafeBuffer.allocUnsafe = function(size) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + return Buffer2(size); + }; + SafeBuffer.allocUnsafeSlow = function(size) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + return buffer2.SlowBuffer(size); + }; + } +}); + +// ../node_modules/.pnpm/core-util-is@1.0.3/node_modules/core-util-is/lib/util.js +var require_util2 = __commonJS({ + "../node_modules/.pnpm/core-util-is@1.0.3/node_modules/core-util-is/lib/util.js"(exports2) { + function isArray2(arg) { + if (Array.isArray) { + return Array.isArray(arg); + } + return objectToString(arg) === "[object Array]"; + } + exports2.isArray = isArray2; + function isBoolean2(arg) { + return typeof arg === "boolean"; + } + exports2.isBoolean = isBoolean2; + function isNull(arg) { + return arg === null; + } + exports2.isNull = isNull; + function isNullOrUndefined(arg) { + return arg == null; + } + exports2.isNullOrUndefined = isNullOrUndefined; + function isNumber2(arg) { + return typeof arg === "number"; + } + exports2.isNumber = isNumber2; + function isString2(arg) { + return typeof arg === "string"; + } + exports2.isString = isString2; + function isSymbol(arg) { + return typeof arg === "symbol"; + } + exports2.isSymbol = isSymbol; + function isUndefined2(arg) { + return arg === void 0; + } + exports2.isUndefined = isUndefined2; + function isRegExp2(re) { + return objectToString(re) === "[object RegExp]"; + } + exports2.isRegExp = isRegExp2; + function isObject3(arg) { + return typeof arg === "object" && arg !== null; + } + exports2.isObject = isObject3; + function isDate2(d) { + return objectToString(d) === "[object Date]"; + } + exports2.isDate = isDate2; + function isError4(e) { + return objectToString(e) === "[object Error]" || e instanceof Error; + } + exports2.isError = isError4; + function isFunction2(arg) { + return typeof arg === "function"; + } + exports2.isFunction = isFunction2; + function isPrimitive2(arg) { + return arg === null || typeof arg === "boolean" || typeof arg === "number" || typeof arg === "string" || typeof arg === "symbol" || // ES6 symbol + typeof arg === "undefined"; + } + exports2.isPrimitive = isPrimitive2; + exports2.isBuffer = require("buffer").Buffer.isBuffer; + function objectToString(o) { + return Object.prototype.toString.call(o); + } + } +}); + +// ../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits_browser.js +var require_inherits_browser = __commonJS({ + "../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits_browser.js"(exports2, module2) { + if (typeof Object.create === "function") { + module2.exports = function inherits3(ctor, superCtor) { + if (superCtor) { + ctor.super_ = superCtor; + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }); + } + }; + } else { + module2.exports = function inherits3(ctor, superCtor) { + if (superCtor) { + ctor.super_ = superCtor; + var TempCtor = function() { + }; + TempCtor.prototype = superCtor.prototype; + ctor.prototype = new TempCtor(); + ctor.prototype.constructor = ctor; + } + }; + } + } +}); + +// ../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits.js +var require_inherits = __commonJS({ + "../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits.js"(exports2, module2) { + try { + util2 = require("util"); + if (typeof util2.inherits !== "function") + throw ""; + module2.exports = util2.inherits; + } catch (e) { + module2.exports = require_inherits_browser(); + } + var util2; + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/BufferList.js +var require_BufferList = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/BufferList.js"(exports2, module2) { + "use strict"; + function _classCallCheck(instance2, Constructor) { + if (!(instance2 instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + var Buffer2 = require_safe_buffer().Buffer; + var util2 = require("util"); + function copyBuffer(src, target, offset) { + src.copy(target, offset); + } + module2.exports = function() { + function BufferList() { + _classCallCheck(this, BufferList); + this.head = null; + this.tail = null; + this.length = 0; + } + BufferList.prototype.push = function push(v) { + var entry = { data: v, next: null }; + if (this.length > 0) + this.tail.next = entry; + else + this.head = entry; + this.tail = entry; + ++this.length; + }; + BufferList.prototype.unshift = function unshift(v) { + var entry = { data: v, next: this.head }; + if (this.length === 0) + this.tail = entry; + this.head = entry; + ++this.length; + }; + BufferList.prototype.shift = function shift() { + if (this.length === 0) + return; + var ret2 = this.head.data; + if (this.length === 1) + this.head = this.tail = null; + else + this.head = this.head.next; + --this.length; + return ret2; + }; + BufferList.prototype.clear = function clear() { + this.head = this.tail = null; + this.length = 0; + }; + BufferList.prototype.join = function join9(s) { + if (this.length === 0) + return ""; + var p = this.head; + var ret2 = "" + p.data; + while (p = p.next) { + ret2 += s + p.data; + } + return ret2; + }; + BufferList.prototype.concat = function concat(n) { + if (this.length === 0) + return Buffer2.alloc(0); + var ret2 = Buffer2.allocUnsafe(n >>> 0); + var p = this.head; + var i = 0; + while (p) { + copyBuffer(p.data, ret2, i); + i += p.data.length; + p = p.next; + } + return ret2; + }; + return BufferList; + }(); + if (util2 && util2.inspect && util2.inspect.custom) { + module2.exports.prototype[util2.inspect.custom] = function() { + var obj2 = util2.inspect({ length: this.length }); + return this.constructor.name + " " + obj2; + }; + } + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/destroy.js +var require_destroy = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports2, module2) { + "use strict"; + var pna = require_process_nextick_args(); + function destroy(err2, cb) { + var _this = this; + var readableDestroyed = this._readableState && this._readableState.destroyed; + var writableDestroyed = this._writableState && this._writableState.destroyed; + if (readableDestroyed || writableDestroyed) { + if (cb) { + cb(err2); + } else if (err2) { + if (!this._writableState) { + pna.nextTick(emitErrorNT, this, err2); + } else if (!this._writableState.errorEmitted) { + this._writableState.errorEmitted = true; + pna.nextTick(emitErrorNT, this, err2); + } + } + return this; + } + if (this._readableState) { + this._readableState.destroyed = true; + } + if (this._writableState) { + this._writableState.destroyed = true; + } + this._destroy(err2 || null, function(err3) { + if (!cb && err3) { + if (!_this._writableState) { + pna.nextTick(emitErrorNT, _this, err3); + } else if (!_this._writableState.errorEmitted) { + _this._writableState.errorEmitted = true; + pna.nextTick(emitErrorNT, _this, err3); + } + } else if (cb) { + cb(err3); + } + }); + return this; + } + function undestroy() { + if (this._readableState) { + this._readableState.destroyed = false; + this._readableState.reading = false; + this._readableState.ended = false; + this._readableState.endEmitted = false; + } + if (this._writableState) { + this._writableState.destroyed = false; + this._writableState.ended = false; + this._writableState.ending = false; + this._writableState.finalCalled = false; + this._writableState.prefinished = false; + this._writableState.finished = false; + this._writableState.errorEmitted = false; + } + } + function emitErrorNT(self2, err2) { + self2.emit("error", err2); + } + module2.exports = { + destroy, + undestroy + }; + } +}); + +// ../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js +var require_node2 = __commonJS({ + "../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js"(exports2, module2) { + module2.exports = require("util").deprecate; + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_writable.js +var require_stream_writable = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_writable.js"(exports2, module2) { + "use strict"; + var pna = require_process_nextick_args(); + module2.exports = Writable2; + function CorkedRequest(state) { + var _this = this; + this.next = null; + this.entry = null; + this.finish = function() { + onCorkedFinish(_this, state); + }; + } + var asyncWrite = !process.browser && ["v0.10", "v0.9."].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick; + var Duplex; + Writable2.WritableState = WritableState; + var util2 = Object.create(require_util2()); + util2.inherits = require_inherits(); + var internalUtil = { + deprecate: require_node2() + }; + var Stream2 = require_stream(); + var Buffer2 = require_safe_buffer().Buffer; + var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { + }; + function _uint8ArrayToBuffer(chunk) { + return Buffer2.from(chunk); + } + function _isUint8Array(obj2) { + return Buffer2.isBuffer(obj2) || obj2 instanceof OurUint8Array; + } + var destroyImpl = require_destroy(); + util2.inherits(Writable2, Stream2); + function nop() { + } + function WritableState(options2, stream5) { + Duplex = Duplex || require_stream_duplex(); + options2 = options2 || {}; + var isDuplex = stream5 instanceof Duplex; + this.objectMode = !!options2.objectMode; + if (isDuplex) + this.objectMode = this.objectMode || !!options2.writableObjectMode; + var hwm = options2.highWaterMark; + var writableHwm = options2.writableHighWaterMark; + var defaultHwm = this.objectMode ? 16 : 16 * 1024; + if (hwm || hwm === 0) + this.highWaterMark = hwm; + else if (isDuplex && (writableHwm || writableHwm === 0)) + this.highWaterMark = writableHwm; + else + this.highWaterMark = defaultHwm; + this.highWaterMark = Math.floor(this.highWaterMark); + this.finalCalled = false; + this.needDrain = false; + this.ending = false; + this.ended = false; + this.finished = false; + this.destroyed = false; + var noDecode = options2.decodeStrings === false; + this.decodeStrings = !noDecode; + this.defaultEncoding = options2.defaultEncoding || "utf8"; + this.length = 0; + this.writing = false; + this.corked = 0; + this.sync = true; + this.bufferProcessing = false; + this.onwrite = function(er) { + onwrite(stream5, er); + }; + this.writecb = null; + this.writelen = 0; + this.bufferedRequest = null; + this.lastBufferedRequest = null; + this.pendingcb = 0; + this.prefinished = false; + this.errorEmitted = false; + this.bufferedRequestCount = 0; + this.corkedRequestsFree = new CorkedRequest(this); + } + WritableState.prototype.getBuffer = function getBuffer() { + var current = this.bufferedRequest; + var out2 = []; + while (current) { + out2.push(current); + current = current.next; + } + return out2; + }; + (function() { + try { + Object.defineProperty(WritableState.prototype, "buffer", { + get: internalUtil.deprecate(function() { + return this.getBuffer(); + }, "_writableState.buffer is deprecated. Use _writableState.getBuffer instead.", "DEP0003") + }); + } catch (_) { + } + })(); + var realHasInstance; + if (typeof Symbol === "function" && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === "function") { + realHasInstance = Function.prototype[Symbol.hasInstance]; + Object.defineProperty(Writable2, Symbol.hasInstance, { + value: function(object) { + if (realHasInstance.call(this, object)) + return true; + if (this !== Writable2) + return false; + return object && object._writableState instanceof WritableState; + } + }); + } else { + realHasInstance = function(object) { + return object instanceof this; + }; + } + function Writable2(options2) { + Duplex = Duplex || require_stream_duplex(); + if (!realHasInstance.call(Writable2, this) && !(this instanceof Duplex)) { + return new Writable2(options2); + } + this._writableState = new WritableState(options2, this); + this.writable = true; + if (options2) { + if (typeof options2.write === "function") + this._write = options2.write; + if (typeof options2.writev === "function") + this._writev = options2.writev; + if (typeof options2.destroy === "function") + this._destroy = options2.destroy; + if (typeof options2.final === "function") + this._final = options2.final; + } + Stream2.call(this); + } + Writable2.prototype.pipe = function() { + this.emit("error", new Error("Cannot pipe, not readable")); + }; + function writeAfterEnd(stream5, cb) { + var er = new Error("write after end"); + stream5.emit("error", er); + pna.nextTick(cb, er); + } + function validChunk(stream5, state, chunk, cb) { + var valid = true; + var er = false; + if (chunk === null) { + er = new TypeError("May not write null values to stream"); + } else if (typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { + er = new TypeError("Invalid non-string/buffer chunk"); + } + if (er) { + stream5.emit("error", er); + pna.nextTick(cb, er); + valid = false; + } + return valid; + } + Writable2.prototype.write = function(chunk, encoding, cb) { + var state = this._writableState; + var ret2 = false; + var isBuf = !state.objectMode && _isUint8Array(chunk); + if (isBuf && !Buffer2.isBuffer(chunk)) { + chunk = _uint8ArrayToBuffer(chunk); + } + if (typeof encoding === "function") { + cb = encoding; + encoding = null; + } + if (isBuf) + encoding = "buffer"; + else if (!encoding) + encoding = state.defaultEncoding; + if (typeof cb !== "function") + cb = nop; + if (state.ended) + writeAfterEnd(this, cb); + else if (isBuf || validChunk(this, state, chunk, cb)) { + state.pendingcb++; + ret2 = writeOrBuffer(this, state, isBuf, chunk, encoding, cb); + } + return ret2; + }; + Writable2.prototype.cork = function() { + var state = this._writableState; + state.corked++; + }; + Writable2.prototype.uncork = function() { + var state = this._writableState; + if (state.corked) { + state.corked--; + if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) + clearBuffer(this, state); + } + }; + Writable2.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) { + if (typeof encoding === "string") + encoding = encoding.toLowerCase(); + if (!(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((encoding + "").toLowerCase()) > -1)) + throw new TypeError("Unknown encoding: " + encoding); + this._writableState.defaultEncoding = encoding; + return this; + }; + function decodeChunk(state, chunk, encoding) { + if (!state.objectMode && state.decodeStrings !== false && typeof chunk === "string") { + chunk = Buffer2.from(chunk, encoding); + } + return chunk; + } + Object.defineProperty(Writable2.prototype, "writableHighWaterMark", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function() { + return this._writableState.highWaterMark; + } + }); + function writeOrBuffer(stream5, state, isBuf, chunk, encoding, cb) { + if (!isBuf) { + var newChunk = decodeChunk(state, chunk, encoding); + if (chunk !== newChunk) { + isBuf = true; + encoding = "buffer"; + chunk = newChunk; + } + } + var len = state.objectMode ? 1 : chunk.length; + state.length += len; + var ret2 = state.length < state.highWaterMark; + if (!ret2) + state.needDrain = true; + if (state.writing || state.corked) { + var last = state.lastBufferedRequest; + state.lastBufferedRequest = { + chunk, + encoding, + isBuf, + callback: cb, + next: null + }; + if (last) { + last.next = state.lastBufferedRequest; + } else { + state.bufferedRequest = state.lastBufferedRequest; + } + state.bufferedRequestCount += 1; + } else { + doWrite(stream5, state, false, len, chunk, encoding, cb); + } + return ret2; + } + function doWrite(stream5, state, writev, len, chunk, encoding, cb) { + state.writelen = len; + state.writecb = cb; + state.writing = true; + state.sync = true; + if (writev) + stream5._writev(chunk, state.onwrite); + else + stream5._write(chunk, encoding, state.onwrite); + state.sync = false; + } + function onwriteError(stream5, state, sync2, er, cb) { + --state.pendingcb; + if (sync2) { + pna.nextTick(cb, er); + pna.nextTick(finishMaybe, stream5, state); + stream5._writableState.errorEmitted = true; + stream5.emit("error", er); + } else { + cb(er); + stream5._writableState.errorEmitted = true; + stream5.emit("error", er); + finishMaybe(stream5, state); + } + } + function onwriteStateUpdate(state) { + state.writing = false; + state.writecb = null; + state.length -= state.writelen; + state.writelen = 0; + } + function onwrite(stream5, er) { + var state = stream5._writableState; + var sync2 = state.sync; + var cb = state.writecb; + onwriteStateUpdate(state); + if (er) + onwriteError(stream5, state, sync2, er, cb); + else { + var finished = needFinish(state); + if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) { + clearBuffer(stream5, state); + } + if (sync2) { + asyncWrite(afterWrite, stream5, state, finished, cb); + } else { + afterWrite(stream5, state, finished, cb); + } + } + } + function afterWrite(stream5, state, finished, cb) { + if (!finished) + onwriteDrain(stream5, state); + state.pendingcb--; + cb(); + finishMaybe(stream5, state); + } + function onwriteDrain(stream5, state) { + if (state.length === 0 && state.needDrain) { + state.needDrain = false; + stream5.emit("drain"); + } + } + function clearBuffer(stream5, state) { + state.bufferProcessing = true; + var entry = state.bufferedRequest; + if (stream5._writev && entry && entry.next) { + var l2 = state.bufferedRequestCount; + var buffer2 = new Array(l2); + var holder = state.corkedRequestsFree; + holder.entry = entry; + var count = 0; + var allBuffers = true; + while (entry) { + buffer2[count] = entry; + if (!entry.isBuf) + allBuffers = false; + entry = entry.next; + count += 1; + } + buffer2.allBuffers = allBuffers; + doWrite(stream5, state, true, state.length, buffer2, "", holder.finish); + state.pendingcb++; + state.lastBufferedRequest = null; + if (holder.next) { + state.corkedRequestsFree = holder.next; + holder.next = null; + } else { + state.corkedRequestsFree = new CorkedRequest(state); + } + state.bufferedRequestCount = 0; + } else { + while (entry) { + var chunk = entry.chunk; + var encoding = entry.encoding; + var cb = entry.callback; + var len = state.objectMode ? 1 : chunk.length; + doWrite(stream5, state, false, len, chunk, encoding, cb); + entry = entry.next; + state.bufferedRequestCount--; + if (state.writing) { + break; + } + } + if (entry === null) + state.lastBufferedRequest = null; + } + state.bufferedRequest = entry; + state.bufferProcessing = false; + } + Writable2.prototype._write = function(chunk, encoding, cb) { + cb(new Error("_write() is not implemented")); + }; + Writable2.prototype._writev = null; + Writable2.prototype.end = function(chunk, encoding, cb) { + var state = this._writableState; + if (typeof chunk === "function") { + cb = chunk; + chunk = null; + encoding = null; + } else if (typeof encoding === "function") { + cb = encoding; + encoding = null; + } + if (chunk !== null && chunk !== void 0) + this.write(chunk, encoding); + if (state.corked) { + state.corked = 1; + this.uncork(); + } + if (!state.ending) + endWritable(this, state, cb); + }; + function needFinish(state) { + return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing; + } + function callFinal(stream5, state) { + stream5._final(function(err2) { + state.pendingcb--; + if (err2) { + stream5.emit("error", err2); + } + state.prefinished = true; + stream5.emit("prefinish"); + finishMaybe(stream5, state); + }); + } + function prefinish(stream5, state) { + if (!state.prefinished && !state.finalCalled) { + if (typeof stream5._final === "function") { + state.pendingcb++; + state.finalCalled = true; + pna.nextTick(callFinal, stream5, state); + } else { + state.prefinished = true; + stream5.emit("prefinish"); + } + } + } + function finishMaybe(stream5, state) { + var need = needFinish(state); + if (need) { + prefinish(stream5, state); + if (state.pendingcb === 0) { + state.finished = true; + stream5.emit("finish"); + } + } + return need; + } + function endWritable(stream5, state, cb) { + state.ending = true; + finishMaybe(stream5, state); + if (cb) { + if (state.finished) + pna.nextTick(cb); + else + stream5.once("finish", cb); + } + state.ended = true; + stream5.writable = false; + } + function onCorkedFinish(corkReq, state, err2) { + var entry = corkReq.entry; + corkReq.entry = null; + while (entry) { + var cb = entry.callback; + state.pendingcb--; + cb(err2); + entry = entry.next; + } + state.corkedRequestsFree.next = corkReq; + } + Object.defineProperty(Writable2.prototype, "destroyed", { + get: function() { + if (this._writableState === void 0) { + return false; + } + return this._writableState.destroyed; + }, + set: function(value) { + if (!this._writableState) { + return; + } + this._writableState.destroyed = value; + } + }); + Writable2.prototype.destroy = destroyImpl.destroy; + Writable2.prototype._undestroy = destroyImpl.undestroy; + Writable2.prototype._destroy = function(err2, cb) { + this.end(); + cb(err2); + }; + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_duplex.js +var require_stream_duplex = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_duplex.js"(exports2, module2) { + "use strict"; + var pna = require_process_nextick_args(); + var objectKeys = Object.keys || function(obj2) { + var keys2 = []; + for (var key in obj2) { + keys2.push(key); + } + return keys2; + }; + module2.exports = Duplex; + var util2 = Object.create(require_util2()); + util2.inherits = require_inherits(); + var Readable3 = require_stream_readable(); + var Writable2 = require_stream_writable(); + util2.inherits(Duplex, Readable3); + { + keys = objectKeys(Writable2.prototype); + for (v = 0; v < keys.length; v++) { + method = keys[v]; + if (!Duplex.prototype[method]) + Duplex.prototype[method] = Writable2.prototype[method]; + } + } + var keys; + var method; + var v; + function Duplex(options2) { + if (!(this instanceof Duplex)) + return new Duplex(options2); + Readable3.call(this, options2); + Writable2.call(this, options2); + if (options2 && options2.readable === false) + this.readable = false; + if (options2 && options2.writable === false) + this.writable = false; + this.allowHalfOpen = true; + if (options2 && options2.allowHalfOpen === false) + this.allowHalfOpen = false; + this.once("end", onend); + } + Object.defineProperty(Duplex.prototype, "writableHighWaterMark", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function() { + return this._writableState.highWaterMark; + } + }); + function onend() { + if (this.allowHalfOpen || this._writableState.ended) + return; + pna.nextTick(onEndNT, this); + } + function onEndNT(self2) { + self2.end(); + } + Object.defineProperty(Duplex.prototype, "destroyed", { + get: function() { + if (this._readableState === void 0 || this._writableState === void 0) { + return false; + } + return this._readableState.destroyed && this._writableState.destroyed; + }, + set: function(value) { + if (this._readableState === void 0 || this._writableState === void 0) { + return; + } + this._readableState.destroyed = value; + this._writableState.destroyed = value; + } + }); + Duplex.prototype._destroy = function(err2, cb) { + this.push(null); + this.end(); + pna.nextTick(cb, err2); + }; + } +}); + +// ../node_modules/.pnpm/string_decoder@1.1.1/node_modules/string_decoder/lib/string_decoder.js +var require_string_decoder = __commonJS({ + "../node_modules/.pnpm/string_decoder@1.1.1/node_modules/string_decoder/lib/string_decoder.js"(exports2) { + "use strict"; + var Buffer2 = require_safe_buffer().Buffer; + var isEncoding = Buffer2.isEncoding || function(encoding) { + encoding = "" + encoding; + switch (encoding && encoding.toLowerCase()) { + case "hex": + case "utf8": + case "utf-8": + case "ascii": + case "binary": + case "base64": + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + case "raw": + return true; + default: + return false; + } + }; + function _normalizeEncoding(enc) { + if (!enc) + return "utf8"; + var retried; + while (true) { + switch (enc) { + case "utf8": + case "utf-8": + return "utf8"; + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return "utf16le"; + case "latin1": + case "binary": + return "latin1"; + case "base64": + case "ascii": + case "hex": + return enc; + default: + if (retried) + return; + enc = ("" + enc).toLowerCase(); + retried = true; + } + } + } + function normalizeEncoding(enc) { + var nenc = _normalizeEncoding(enc); + if (typeof nenc !== "string" && (Buffer2.isEncoding === isEncoding || !isEncoding(enc))) + throw new Error("Unknown encoding: " + enc); + return nenc || enc; + } + exports2.StringDecoder = StringDecoder2; + function StringDecoder2(encoding) { + this.encoding = normalizeEncoding(encoding); + var nb; + switch (this.encoding) { + case "utf16le": + this.text = utf16Text; + this.end = utf16End; + nb = 4; + break; + case "utf8": + this.fillLast = utf8FillLast; + nb = 4; + break; + case "base64": + this.text = base64Text; + this.end = base64End; + nb = 3; + break; + default: + this.write = simpleWrite; + this.end = simpleEnd; + return; + } + this.lastNeed = 0; + this.lastTotal = 0; + this.lastChar = Buffer2.allocUnsafe(nb); + } + StringDecoder2.prototype.write = function(buf) { + if (buf.length === 0) + return ""; + var r; + var i; + if (this.lastNeed) { + r = this.fillLast(buf); + if (r === void 0) + return ""; + i = this.lastNeed; + this.lastNeed = 0; + } else { + i = 0; + } + if (i < buf.length) + return r ? r + this.text(buf, i) : this.text(buf, i); + return r || ""; + }; + StringDecoder2.prototype.end = utf8End; + StringDecoder2.prototype.text = utf8Text; + StringDecoder2.prototype.fillLast = function(buf) { + if (this.lastNeed <= buf.length) { + buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed); + return this.lastChar.toString(this.encoding, 0, this.lastTotal); + } + buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length); + this.lastNeed -= buf.length; + }; + function utf8CheckByte(byte) { + if (byte <= 127) + return 0; + else if (byte >> 5 === 6) + return 2; + else if (byte >> 4 === 14) + return 3; + else if (byte >> 3 === 30) + return 4; + return byte >> 6 === 2 ? -1 : -2; + } + function utf8CheckIncomplete(self2, buf, i) { + var j = buf.length - 1; + if (j < i) + return 0; + var nb = utf8CheckByte(buf[j]); + if (nb >= 0) { + if (nb > 0) + self2.lastNeed = nb - 1; + return nb; + } + if (--j < i || nb === -2) + return 0; + nb = utf8CheckByte(buf[j]); + if (nb >= 0) { + if (nb > 0) + self2.lastNeed = nb - 2; + return nb; + } + if (--j < i || nb === -2) + return 0; + nb = utf8CheckByte(buf[j]); + if (nb >= 0) { + if (nb > 0) { + if (nb === 2) + nb = 0; + else + self2.lastNeed = nb - 3; + } + return nb; + } + return 0; + } + function utf8CheckExtraBytes(self2, buf, p) { + if ((buf[0] & 192) !== 128) { + self2.lastNeed = 0; + return "\uFFFD"; + } + if (self2.lastNeed > 1 && buf.length > 1) { + if ((buf[1] & 192) !== 128) { + self2.lastNeed = 1; + return "\uFFFD"; + } + if (self2.lastNeed > 2 && buf.length > 2) { + if ((buf[2] & 192) !== 128) { + self2.lastNeed = 2; + return "\uFFFD"; + } + } + } + } + function utf8FillLast(buf) { + var p = this.lastTotal - this.lastNeed; + var r = utf8CheckExtraBytes(this, buf, p); + if (r !== void 0) + return r; + if (this.lastNeed <= buf.length) { + buf.copy(this.lastChar, p, 0, this.lastNeed); + return this.lastChar.toString(this.encoding, 0, this.lastTotal); + } + buf.copy(this.lastChar, p, 0, buf.length); + this.lastNeed -= buf.length; + } + function utf8Text(buf, i) { + var total = utf8CheckIncomplete(this, buf, i); + if (!this.lastNeed) + return buf.toString("utf8", i); + this.lastTotal = total; + var end = buf.length - (total - this.lastNeed); + buf.copy(this.lastChar, 0, end); + return buf.toString("utf8", i, end); + } + function utf8End(buf) { + var r = buf && buf.length ? this.write(buf) : ""; + if (this.lastNeed) + return r + "\uFFFD"; + return r; + } + function utf16Text(buf, i) { + if ((buf.length - i) % 2 === 0) { + var r = buf.toString("utf16le", i); + if (r) { + var c = r.charCodeAt(r.length - 1); + if (c >= 55296 && c <= 56319) { + this.lastNeed = 2; + this.lastTotal = 4; + this.lastChar[0] = buf[buf.length - 2]; + this.lastChar[1] = buf[buf.length - 1]; + return r.slice(0, -1); + } + } + return r; + } + this.lastNeed = 1; + this.lastTotal = 2; + this.lastChar[0] = buf[buf.length - 1]; + return buf.toString("utf16le", i, buf.length - 1); + } + function utf16End(buf) { + var r = buf && buf.length ? this.write(buf) : ""; + if (this.lastNeed) { + var end = this.lastTotal - this.lastNeed; + return r + this.lastChar.toString("utf16le", 0, end); + } + return r; + } + function base64Text(buf, i) { + var n = (buf.length - i) % 3; + if (n === 0) + return buf.toString("base64", i); + this.lastNeed = 3 - n; + this.lastTotal = 3; + if (n === 1) { + this.lastChar[0] = buf[buf.length - 1]; + } else { + this.lastChar[0] = buf[buf.length - 2]; + this.lastChar[1] = buf[buf.length - 1]; + } + return buf.toString("base64", i, buf.length - n); + } + function base64End(buf) { + var r = buf && buf.length ? this.write(buf) : ""; + if (this.lastNeed) + return r + this.lastChar.toString("base64", 0, 3 - this.lastNeed); + return r; + } + function simpleWrite(buf) { + return buf.toString(this.encoding); + } + function simpleEnd(buf) { + return buf && buf.length ? this.write(buf) : ""; + } + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_readable.js +var require_stream_readable = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_readable.js"(exports2, module2) { + "use strict"; + var pna = require_process_nextick_args(); + module2.exports = Readable3; + var isArray2 = require_isarray(); + var Duplex; + Readable3.ReadableState = ReadableState; + var EE = require("events").EventEmitter; + var EElistenerCount = function(emitter, type2) { + return emitter.listeners(type2).length; + }; + var Stream2 = require_stream(); + var Buffer2 = require_safe_buffer().Buffer; + var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { + }; + function _uint8ArrayToBuffer(chunk) { + return Buffer2.from(chunk); + } + function _isUint8Array(obj2) { + return Buffer2.isBuffer(obj2) || obj2 instanceof OurUint8Array; + } + var util2 = Object.create(require_util2()); + util2.inherits = require_inherits(); + var debugUtil = require("util"); + var debug = void 0; + if (debugUtil && debugUtil.debuglog) { + debug = debugUtil.debuglog("stream"); + } else { + debug = function() { + }; + } + var BufferList = require_BufferList(); + var destroyImpl = require_destroy(); + var StringDecoder2; + util2.inherits(Readable3, Stream2); + var kProxyEvents = ["error", "close", "destroy", "pause", "resume"]; + function prependListener(emitter, event, fn) { + if (typeof emitter.prependListener === "function") + return emitter.prependListener(event, fn); + if (!emitter._events || !emitter._events[event]) + emitter.on(event, fn); + else if (isArray2(emitter._events[event])) + emitter._events[event].unshift(fn); + else + emitter._events[event] = [fn, emitter._events[event]]; + } + function ReadableState(options2, stream5) { + Duplex = Duplex || require_stream_duplex(); + options2 = options2 || {}; + var isDuplex = stream5 instanceof Duplex; + this.objectMode = !!options2.objectMode; + if (isDuplex) + this.objectMode = this.objectMode || !!options2.readableObjectMode; + var hwm = options2.highWaterMark; + var readableHwm = options2.readableHighWaterMark; + var defaultHwm = this.objectMode ? 16 : 16 * 1024; + if (hwm || hwm === 0) + this.highWaterMark = hwm; + else if (isDuplex && (readableHwm || readableHwm === 0)) + this.highWaterMark = readableHwm; + else + this.highWaterMark = defaultHwm; + this.highWaterMark = Math.floor(this.highWaterMark); + this.buffer = new BufferList(); + this.length = 0; + this.pipes = null; + this.pipesCount = 0; + this.flowing = null; + this.ended = false; + this.endEmitted = false; + this.reading = false; + this.sync = true; + this.needReadable = false; + this.emittedReadable = false; + this.readableListening = false; + this.resumeScheduled = false; + this.destroyed = false; + this.defaultEncoding = options2.defaultEncoding || "utf8"; + this.awaitDrain = 0; + this.readingMore = false; + this.decoder = null; + this.encoding = null; + if (options2.encoding) { + if (!StringDecoder2) + StringDecoder2 = require_string_decoder().StringDecoder; + this.decoder = new StringDecoder2(options2.encoding); + this.encoding = options2.encoding; + } + } + function Readable3(options2) { + Duplex = Duplex || require_stream_duplex(); + if (!(this instanceof Readable3)) + return new Readable3(options2); + this._readableState = new ReadableState(options2, this); + this.readable = true; + if (options2) { + if (typeof options2.read === "function") + this._read = options2.read; + if (typeof options2.destroy === "function") + this._destroy = options2.destroy; + } + Stream2.call(this); + } + Object.defineProperty(Readable3.prototype, "destroyed", { + get: function() { + if (this._readableState === void 0) { + return false; + } + return this._readableState.destroyed; + }, + set: function(value) { + if (!this._readableState) { + return; + } + this._readableState.destroyed = value; + } + }); + Readable3.prototype.destroy = destroyImpl.destroy; + Readable3.prototype._undestroy = destroyImpl.undestroy; + Readable3.prototype._destroy = function(err2, cb) { + this.push(null); + cb(err2); + }; + Readable3.prototype.push = function(chunk, encoding) { + var state = this._readableState; + var skipChunkCheck; + if (!state.objectMode) { + if (typeof chunk === "string") { + encoding = encoding || state.defaultEncoding; + if (encoding !== state.encoding) { + chunk = Buffer2.from(chunk, encoding); + encoding = ""; + } + skipChunkCheck = true; + } + } else { + skipChunkCheck = true; + } + return readableAddChunk(this, chunk, encoding, false, skipChunkCheck); + }; + Readable3.prototype.unshift = function(chunk) { + return readableAddChunk(this, chunk, null, true, false); + }; + function readableAddChunk(stream5, chunk, encoding, addToFront, skipChunkCheck) { + var state = stream5._readableState; + if (chunk === null) { + state.reading = false; + onEofChunk(stream5, state); + } else { + var er; + if (!skipChunkCheck) + er = chunkInvalid(state, chunk); + if (er) { + stream5.emit("error", er); + } else if (state.objectMode || chunk && chunk.length > 0) { + if (typeof chunk !== "string" && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer2.prototype) { + chunk = _uint8ArrayToBuffer(chunk); + } + if (addToFront) { + if (state.endEmitted) + stream5.emit("error", new Error("stream.unshift() after end event")); + else + addChunk(stream5, state, chunk, true); + } else if (state.ended) { + stream5.emit("error", new Error("stream.push() after EOF")); + } else { + state.reading = false; + if (state.decoder && !encoding) { + chunk = state.decoder.write(chunk); + if (state.objectMode || chunk.length !== 0) + addChunk(stream5, state, chunk, false); + else + maybeReadMore(stream5, state); + } else { + addChunk(stream5, state, chunk, false); + } + } + } else if (!addToFront) { + state.reading = false; + } + } + return needMoreData(state); + } + function addChunk(stream5, state, chunk, addToFront) { + if (state.flowing && state.length === 0 && !state.sync) { + stream5.emit("data", chunk); + stream5.read(0); + } else { + state.length += state.objectMode ? 1 : chunk.length; + if (addToFront) + state.buffer.unshift(chunk); + else + state.buffer.push(chunk); + if (state.needReadable) + emitReadable(stream5); + } + maybeReadMore(stream5, state); + } + function chunkInvalid(state, chunk) { + var er; + if (!_isUint8Array(chunk) && typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { + er = new TypeError("Invalid non-string/buffer chunk"); + } + return er; + } + function needMoreData(state) { + return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0); + } + Readable3.prototype.isPaused = function() { + return this._readableState.flowing === false; + }; + Readable3.prototype.setEncoding = function(enc) { + if (!StringDecoder2) + StringDecoder2 = require_string_decoder().StringDecoder; + this._readableState.decoder = new StringDecoder2(enc); + this._readableState.encoding = enc; + return this; + }; + var MAX_HWM = 8388608; + function computeNewHighWaterMark(n) { + if (n >= MAX_HWM) { + n = MAX_HWM; + } else { + n--; + n |= n >>> 1; + n |= n >>> 2; + n |= n >>> 4; + n |= n >>> 8; + n |= n >>> 16; + n++; + } + return n; + } + function howMuchToRead(n, state) { + if (n <= 0 || state.length === 0 && state.ended) + return 0; + if (state.objectMode) + return 1; + if (n !== n) { + if (state.flowing && state.length) + return state.buffer.head.data.length; + else + return state.length; + } + if (n > state.highWaterMark) + state.highWaterMark = computeNewHighWaterMark(n); + if (n <= state.length) + return n; + if (!state.ended) { + state.needReadable = true; + return 0; + } + return state.length; + } + Readable3.prototype.read = function(n) { + debug("read", n); + n = parseInt(n, 10); + var state = this._readableState; + var nOrig = n; + if (n !== 0) + state.emittedReadable = false; + if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) { + debug("read: emitReadable", state.length, state.ended); + if (state.length === 0 && state.ended) + endReadable(this); + else + emitReadable(this); + return null; + } + n = howMuchToRead(n, state); + if (n === 0 && state.ended) { + if (state.length === 0) + endReadable(this); + return null; + } + var doRead = state.needReadable; + debug("need readable", doRead); + if (state.length === 0 || state.length - n < state.highWaterMark) { + doRead = true; + debug("length less than watermark", doRead); + } + if (state.ended || state.reading) { + doRead = false; + debug("reading or ended", doRead); + } else if (doRead) { + debug("do read"); + state.reading = true; + state.sync = true; + if (state.length === 0) + state.needReadable = true; + this._read(state.highWaterMark); + state.sync = false; + if (!state.reading) + n = howMuchToRead(nOrig, state); + } + var ret2; + if (n > 0) + ret2 = fromList(n, state); + else + ret2 = null; + if (ret2 === null) { + state.needReadable = true; + n = 0; + } else { + state.length -= n; + } + if (state.length === 0) { + if (!state.ended) + state.needReadable = true; + if (nOrig !== n && state.ended) + endReadable(this); + } + if (ret2 !== null) + this.emit("data", ret2); + return ret2; + }; + function onEofChunk(stream5, state) { + if (state.ended) + return; + if (state.decoder) { + var chunk = state.decoder.end(); + if (chunk && chunk.length) { + state.buffer.push(chunk); + state.length += state.objectMode ? 1 : chunk.length; + } + } + state.ended = true; + emitReadable(stream5); + } + function emitReadable(stream5) { + var state = stream5._readableState; + state.needReadable = false; + if (!state.emittedReadable) { + debug("emitReadable", state.flowing); + state.emittedReadable = true; + if (state.sync) + pna.nextTick(emitReadable_, stream5); + else + emitReadable_(stream5); + } + } + function emitReadable_(stream5) { + debug("emit readable"); + stream5.emit("readable"); + flow(stream5); + } + function maybeReadMore(stream5, state) { + if (!state.readingMore) { + state.readingMore = true; + pna.nextTick(maybeReadMore_, stream5, state); + } + } + function maybeReadMore_(stream5, state) { + var len = state.length; + while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) { + debug("maybeReadMore read 0"); + stream5.read(0); + if (len === state.length) + break; + else + len = state.length; + } + state.readingMore = false; + } + Readable3.prototype._read = function(n) { + this.emit("error", new Error("_read() is not implemented")); + }; + Readable3.prototype.pipe = function(dest, pipeOpts) { + var src = this; + var state = this._readableState; + switch (state.pipesCount) { + case 0: + state.pipes = dest; + break; + case 1: + state.pipes = [state.pipes, dest]; + break; + default: + state.pipes.push(dest); + break; + } + state.pipesCount += 1; + debug("pipe count=%d opts=%j", state.pipesCount, pipeOpts); + var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr; + var endFn = doEnd ? onend : unpipe; + if (state.endEmitted) + pna.nextTick(endFn); + else + src.once("end", endFn); + dest.on("unpipe", onunpipe); + function onunpipe(readable, unpipeInfo) { + debug("onunpipe"); + if (readable === src) { + if (unpipeInfo && unpipeInfo.hasUnpiped === false) { + unpipeInfo.hasUnpiped = true; + cleanup(); + } + } + } + function onend() { + debug("onend"); + dest.end(); + } + var ondrain = pipeOnDrain(src); + dest.on("drain", ondrain); + var cleanedUp = false; + function cleanup() { + debug("cleanup"); + dest.removeListener("close", onclose); + dest.removeListener("finish", onfinish); + dest.removeListener("drain", ondrain); + dest.removeListener("error", onerror); + dest.removeListener("unpipe", onunpipe); + src.removeListener("end", onend); + src.removeListener("end", unpipe); + src.removeListener("data", ondata); + cleanedUp = true; + if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) + ondrain(); + } + var increasedAwaitDrain = false; + src.on("data", ondata); + function ondata(chunk) { + debug("ondata"); + increasedAwaitDrain = false; + var ret2 = dest.write(chunk); + if (false === ret2 && !increasedAwaitDrain) { + if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { + debug("false write response, pause", state.awaitDrain); + state.awaitDrain++; + increasedAwaitDrain = true; + } + src.pause(); + } + } + function onerror(er) { + debug("onerror", er); + unpipe(); + dest.removeListener("error", onerror); + if (EElistenerCount(dest, "error") === 0) + dest.emit("error", er); + } + prependListener(dest, "error", onerror); + function onclose() { + dest.removeListener("finish", onfinish); + unpipe(); + } + dest.once("close", onclose); + function onfinish() { + debug("onfinish"); + dest.removeListener("close", onclose); + unpipe(); + } + dest.once("finish", onfinish); + function unpipe() { + debug("unpipe"); + src.unpipe(dest); + } + dest.emit("pipe", src); + if (!state.flowing) { + debug("pipe resume"); + src.resume(); + } + return dest; + }; + function pipeOnDrain(src) { + return function() { + var state = src._readableState; + debug("pipeOnDrain", state.awaitDrain); + if (state.awaitDrain) + state.awaitDrain--; + if (state.awaitDrain === 0 && EElistenerCount(src, "data")) { + state.flowing = true; + flow(src); + } + }; + } + Readable3.prototype.unpipe = function(dest) { + var state = this._readableState; + var unpipeInfo = { hasUnpiped: false }; + if (state.pipesCount === 0) + return this; + if (state.pipesCount === 1) { + if (dest && dest !== state.pipes) + return this; + if (!dest) + dest = state.pipes; + state.pipes = null; + state.pipesCount = 0; + state.flowing = false; + if (dest) + dest.emit("unpipe", this, unpipeInfo); + return this; + } + if (!dest) { + var dests = state.pipes; + var len = state.pipesCount; + state.pipes = null; + state.pipesCount = 0; + state.flowing = false; + for (var i = 0; i < len; i++) { + dests[i].emit("unpipe", this, { hasUnpiped: false }); + } + return this; + } + var index = indexOf(state.pipes, dest); + if (index === -1) + return this; + state.pipes.splice(index, 1); + state.pipesCount -= 1; + if (state.pipesCount === 1) + state.pipes = state.pipes[0]; + dest.emit("unpipe", this, unpipeInfo); + return this; + }; + Readable3.prototype.on = function(ev, fn) { + var res = Stream2.prototype.on.call(this, ev, fn); + if (ev === "data") { + if (this._readableState.flowing !== false) + this.resume(); + } else if (ev === "readable") { + var state = this._readableState; + if (!state.endEmitted && !state.readableListening) { + state.readableListening = state.needReadable = true; + state.emittedReadable = false; + if (!state.reading) { + pna.nextTick(nReadingNextTick, this); + } else if (state.length) { + emitReadable(this); + } + } + } + return res; + }; + Readable3.prototype.addListener = Readable3.prototype.on; + function nReadingNextTick(self2) { + debug("readable nexttick read 0"); + self2.read(0); + } + Readable3.prototype.resume = function() { + var state = this._readableState; + if (!state.flowing) { + debug("resume"); + state.flowing = true; + resume(this, state); + } + return this; + }; + function resume(stream5, state) { + if (!state.resumeScheduled) { + state.resumeScheduled = true; + pna.nextTick(resume_, stream5, state); + } + } + function resume_(stream5, state) { + if (!state.reading) { + debug("resume read 0"); + stream5.read(0); + } + state.resumeScheduled = false; + state.awaitDrain = 0; + stream5.emit("resume"); + flow(stream5); + if (state.flowing && !state.reading) + stream5.read(0); + } + Readable3.prototype.pause = function() { + debug("call pause flowing=%j", this._readableState.flowing); + if (false !== this._readableState.flowing) { + debug("pause"); + this._readableState.flowing = false; + this.emit("pause"); + } + return this; + }; + function flow(stream5) { + var state = stream5._readableState; + debug("flow", state.flowing); + while (state.flowing && stream5.read() !== null) { + } + } + Readable3.prototype.wrap = function(stream5) { + var _this = this; + var state = this._readableState; + var paused = false; + stream5.on("end", function() { + debug("wrapped end"); + if (state.decoder && !state.ended) { + var chunk = state.decoder.end(); + if (chunk && chunk.length) + _this.push(chunk); + } + _this.push(null); + }); + stream5.on("data", function(chunk) { + debug("wrapped data"); + if (state.decoder) + chunk = state.decoder.write(chunk); + if (state.objectMode && (chunk === null || chunk === void 0)) + return; + else if (!state.objectMode && (!chunk || !chunk.length)) + return; + var ret2 = _this.push(chunk); + if (!ret2) { + paused = true; + stream5.pause(); + } + }); + for (var i in stream5) { + if (this[i] === void 0 && typeof stream5[i] === "function") { + this[i] = function(method) { + return function() { + return stream5[method].apply(stream5, arguments); + }; + }(i); + } + } + for (var n = 0; n < kProxyEvents.length; n++) { + stream5.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n])); + } + this._read = function(n2) { + debug("wrapped _read", n2); + if (paused) { + paused = false; + stream5.resume(); + } + }; + return this; + }; + Object.defineProperty(Readable3.prototype, "readableHighWaterMark", { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function() { + return this._readableState.highWaterMark; + } + }); + Readable3._fromList = fromList; + function fromList(n, state) { + if (state.length === 0) + return null; + var ret2; + if (state.objectMode) + ret2 = state.buffer.shift(); + else if (!n || n >= state.length) { + if (state.decoder) + ret2 = state.buffer.join(""); + else if (state.buffer.length === 1) + ret2 = state.buffer.head.data; + else + ret2 = state.buffer.concat(state.length); + state.buffer.clear(); + } else { + ret2 = fromListPartial(n, state.buffer, state.decoder); + } + return ret2; + } + function fromListPartial(n, list, hasStrings) { + var ret2; + if (n < list.head.data.length) { + ret2 = list.head.data.slice(0, n); + list.head.data = list.head.data.slice(n); + } else if (n === list.head.data.length) { + ret2 = list.shift(); + } else { + ret2 = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list); + } + return ret2; + } + function copyFromBufferString(n, list) { + var p = list.head; + var c = 1; + var ret2 = p.data; + n -= ret2.length; + while (p = p.next) { + var str = p.data; + var nb = n > str.length ? str.length : n; + if (nb === str.length) + ret2 += str; + else + ret2 += str.slice(0, n); + n -= nb; + if (n === 0) { + if (nb === str.length) { + ++c; + if (p.next) + list.head = p.next; + else + list.head = list.tail = null; + } else { + list.head = p; + p.data = str.slice(nb); + } + break; + } + ++c; + } + list.length -= c; + return ret2; + } + function copyFromBuffer(n, list) { + var ret2 = Buffer2.allocUnsafe(n); + var p = list.head; + var c = 1; + p.data.copy(ret2); + n -= p.data.length; + while (p = p.next) { + var buf = p.data; + var nb = n > buf.length ? buf.length : n; + buf.copy(ret2, ret2.length - n, 0, nb); + n -= nb; + if (n === 0) { + if (nb === buf.length) { + ++c; + if (p.next) + list.head = p.next; + else + list.head = list.tail = null; + } else { + list.head = p; + p.data = buf.slice(nb); + } + break; + } + ++c; + } + list.length -= c; + return ret2; + } + function endReadable(stream5) { + var state = stream5._readableState; + if (state.length > 0) + throw new Error('"endReadable()" called on non-empty stream'); + if (!state.endEmitted) { + state.ended = true; + pna.nextTick(endReadableNT, state, stream5); + } + } + function endReadableNT(state, stream5) { + if (!state.endEmitted && state.length === 0) { + state.endEmitted = true; + stream5.readable = false; + stream5.emit("end"); + } + } + function indexOf(xs, x) { + for (var i = 0, l2 = xs.length; i < l2; i++) { + if (xs[i] === x) + return i; + } + return -1; + } + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_transform.js +var require_stream_transform = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_transform.js"(exports2, module2) { + "use strict"; + module2.exports = Transform; + var Duplex = require_stream_duplex(); + var util2 = Object.create(require_util2()); + util2.inherits = require_inherits(); + util2.inherits(Transform, Duplex); + function afterTransform(er, data) { + var ts = this._transformState; + ts.transforming = false; + var cb = ts.writecb; + if (!cb) { + return this.emit("error", new Error("write callback called multiple times")); + } + ts.writechunk = null; + ts.writecb = null; + if (data != null) + this.push(data); + cb(er); + var rs = this._readableState; + rs.reading = false; + if (rs.needReadable || rs.length < rs.highWaterMark) { + this._read(rs.highWaterMark); + } + } + function Transform(options2) { + if (!(this instanceof Transform)) + return new Transform(options2); + Duplex.call(this, options2); + this._transformState = { + afterTransform: afterTransform.bind(this), + needTransform: false, + transforming: false, + writecb: null, + writechunk: null, + writeencoding: null + }; + this._readableState.needReadable = true; + this._readableState.sync = false; + if (options2) { + if (typeof options2.transform === "function") + this._transform = options2.transform; + if (typeof options2.flush === "function") + this._flush = options2.flush; + } + this.on("prefinish", prefinish); + } + function prefinish() { + var _this = this; + if (typeof this._flush === "function") { + this._flush(function(er, data) { + done(_this, er, data); + }); + } else { + done(this, null, null); + } + } + Transform.prototype.push = function(chunk, encoding) { + this._transformState.needTransform = false; + return Duplex.prototype.push.call(this, chunk, encoding); + }; + Transform.prototype._transform = function(chunk, encoding, cb) { + throw new Error("_transform() is not implemented"); + }; + Transform.prototype._write = function(chunk, encoding, cb) { + var ts = this._transformState; + ts.writecb = cb; + ts.writechunk = chunk; + ts.writeencoding = encoding; + if (!ts.transforming) { + var rs = this._readableState; + if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) + this._read(rs.highWaterMark); + } + }; + Transform.prototype._read = function(n) { + var ts = this._transformState; + if (ts.writechunk !== null && ts.writecb && !ts.transforming) { + ts.transforming = true; + this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform); + } else { + ts.needTransform = true; + } + }; + Transform.prototype._destroy = function(err2, cb) { + var _this2 = this; + Duplex.prototype._destroy.call(this, err2, function(err22) { + cb(err22); + _this2.emit("close"); + }); + }; + function done(stream5, er, data) { + if (er) + return stream5.emit("error", er); + if (data != null) + stream5.push(data); + if (stream5._writableState.length) + throw new Error("Calling transform done when ws.length != 0"); + if (stream5._transformState.transforming) + throw new Error("Calling transform done when still transforming"); + return stream5.push(null); + } + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_passthrough.js +var require_stream_passthrough = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_passthrough.js"(exports2, module2) { + "use strict"; + module2.exports = PassThrough; + var Transform = require_stream_transform(); + var util2 = Object.create(require_util2()); + util2.inherits = require_inherits(); + util2.inherits(PassThrough, Transform); + function PassThrough(options2) { + if (!(this instanceof PassThrough)) + return new PassThrough(options2); + Transform.call(this, options2); + } + PassThrough.prototype._transform = function(chunk, encoding, cb) { + cb(null, chunk); + }; + } +}); + +// ../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/readable.js +var require_readable = __commonJS({ + "../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/readable.js"(exports2, module2) { + var Stream2 = require("stream"); + if (process.env.READABLE_STREAM === "disable" && Stream2) { + module2.exports = Stream2; + exports2 = module2.exports = Stream2.Readable; + exports2.Readable = Stream2.Readable; + exports2.Writable = Stream2.Writable; + exports2.Duplex = Stream2.Duplex; + exports2.Transform = Stream2.Transform; + exports2.PassThrough = Stream2.PassThrough; + exports2.Stream = Stream2; + } else { + exports2 = module2.exports = require_stream_readable(); + exports2.Stream = Stream2 || exports2; + exports2.Readable = exports2; + exports2.Writable = require_stream_writable(); + exports2.Duplex = require_stream_duplex(); + exports2.Transform = require_stream_transform(); + exports2.PassThrough = require_stream_passthrough(); + } + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/PullStream.js +var require_PullStream = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/PullStream.js"(exports2, module2) { + var Stream2 = require("stream"); + var Promise2 = require_bluebird(); + var util2 = require("util"); + var Buffer2 = require_Buffer(); + var strFunction = "function"; + if (!Stream2.Writable || !Stream2.Writable.prototype.destroy) + Stream2 = require_readable(); + function PullStream() { + if (!(this instanceof PullStream)) + return new PullStream(); + Stream2.Duplex.call(this, { decodeStrings: false, objectMode: true }); + this.buffer = Buffer2.from(""); + var self2 = this; + self2.on("finish", function() { + self2.finished = true; + self2.emit("chunk", false); + }); + } + util2.inherits(PullStream, Stream2.Duplex); + PullStream.prototype._write = function(chunk, e, cb) { + this.buffer = Buffer2.concat([this.buffer, chunk]); + this.cb = cb; + this.emit("chunk"); + }; + PullStream.prototype.stream = function(eof, includeEof) { + var p = Stream2.PassThrough(); + var done, self2 = this; + function cb() { + if (typeof self2.cb === strFunction) { + var callback = self2.cb; + self2.cb = void 0; + return callback(); + } + } + function pull() { + var packet; + if (self2.buffer && self2.buffer.length) { + if (typeof eof === "number") { + packet = self2.buffer.slice(0, eof); + self2.buffer = self2.buffer.slice(eof); + eof -= packet.length; + done = !eof; + } else { + var match2 = self2.buffer.indexOf(eof); + if (match2 !== -1) { + self2.match = match2; + if (includeEof) + match2 = match2 + eof.length; + packet = self2.buffer.slice(0, match2); + self2.buffer = self2.buffer.slice(match2); + done = true; + } else { + var len = self2.buffer.length - eof.length; + if (len <= 0) { + cb(); + } else { + packet = self2.buffer.slice(0, len); + self2.buffer = self2.buffer.slice(len); + } + } + } + if (packet) + p.write(packet, function() { + if (self2.buffer.length === 0 || eof.length && self2.buffer.length <= eof.length) + cb(); + }); + } + if (!done) { + if (self2.finished) { + self2.removeListener("chunk", pull); + self2.emit("error", new Error("FILE_ENDED")); + return; + } + } else { + self2.removeListener("chunk", pull); + p.end(); + } + } + self2.on("chunk", pull); + pull(); + return p; + }; + PullStream.prototype.pull = function(eof, includeEof) { + if (eof === 0) + return Promise2.resolve(""); + if (!isNaN(eof) && this.buffer.length > eof) { + var data = this.buffer.slice(0, eof); + this.buffer = this.buffer.slice(eof); + return Promise2.resolve(data); + } + var buffer2 = Buffer2.from(""), self2 = this; + var concatStream = Stream2.Transform(); + concatStream._transform = function(d, e, cb) { + buffer2 = Buffer2.concat([buffer2, d]); + cb(); + }; + var rejectHandler; + var pullStreamRejectHandler; + return new Promise2(function(resolve8, reject) { + rejectHandler = reject; + pullStreamRejectHandler = function(e) { + self2.__emittedError = e; + reject(e); + }; + if (self2.finished) + return reject(new Error("FILE_ENDED")); + self2.once("error", pullStreamRejectHandler); + self2.stream(eof, includeEof).on("error", reject).pipe(concatStream).on("finish", function() { + resolve8(buffer2); + }).on("error", reject); + }).finally(function() { + self2.removeListener("error", rejectHandler); + self2.removeListener("error", pullStreamRejectHandler); + }); + }; + PullStream.prototype._read = function() { + }; + module2.exports = PullStream; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/NoopStream.js +var require_NoopStream = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/NoopStream.js"(exports2, module2) { + var Stream2 = require("stream"); + var util2 = require("util"); + if (!Stream2.Writable || !Stream2.Writable.prototype.destroy) + Stream2 = require_readable(); + function NoopStream() { + if (!(this instanceof NoopStream)) { + return new NoopStream(); + } + Stream2.Transform.call(this); + } + util2.inherits(NoopStream, Stream2.Transform); + NoopStream.prototype._transform = function(d, e, cb) { + cb(); + }; + module2.exports = NoopStream; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/BufferStream.js +var require_BufferStream = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/BufferStream.js"(exports2, module2) { + var Promise2 = require_bluebird(); + var Stream2 = require("stream"); + var Buffer2 = require_Buffer(); + if (!Stream2.Writable || !Stream2.Writable.prototype.destroy) + Stream2 = require_readable(); + module2.exports = function(entry) { + return new Promise2(function(resolve8, reject) { + var chunks = []; + var bufferStream = Stream2.Transform().on("finish", function() { + resolve8(Buffer2.concat(chunks)); + }).on("error", reject); + bufferStream._transform = function(d, e, cb) { + chunks.push(d); + cb(); + }; + entry.on("error", reject).pipe(bufferStream); + }); + }; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseExtraField.js +var require_parseExtraField = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseExtraField.js"(exports2, module2) { + var binary2 = require_binary(); + module2.exports = function(extraField, vars) { + var extra; + while (!extra && extraField && extraField.length) { + var candidateExtra = binary2.parse(extraField).word16lu("signature").word16lu("partsize").word64lu("uncompressedSize").word64lu("compressedSize").word64lu("offset").word64lu("disknum").vars; + if (candidateExtra.signature === 1) { + extra = candidateExtra; + } else { + extraField = extraField.slice(candidateExtra.partsize + 4); + } + } + extra = extra || {}; + if (vars.compressedSize === 4294967295) + vars.compressedSize = extra.compressedSize; + if (vars.uncompressedSize === 4294967295) + vars.uncompressedSize = extra.uncompressedSize; + if (vars.offsetToLocalFileHeader === 4294967295) + vars.offsetToLocalFileHeader = extra.offset; + return extra; + }; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseDateTime.js +var require_parseDateTime = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseDateTime.js"(exports2, module2) { + module2.exports = function parseDateTime(date, time) { + const day = date & 31; + const month = date >> 5 & 15; + const year = (date >> 9 & 127) + 1980; + const seconds = time ? (time & 31) * 2 : 0; + const minutes = time ? time >> 5 & 63 : 0; + const hours = time ? time >> 11 : 0; + return new Date(Date.UTC(year, month - 1, day, hours, minutes, seconds)); + }; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parse.js +var require_parse2 = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parse.js"(exports2, module2) { + var util2 = require("util"); + var zlib2 = require("zlib"); + var Stream2 = require("stream"); + var binary2 = require_binary(); + var Promise2 = require_bluebird(); + var PullStream = require_PullStream(); + var NoopStream = require_NoopStream(); + var BufferStream = require_BufferStream(); + var parseExtraField = require_parseExtraField(); + var Buffer2 = require_Buffer(); + var parseDateTime = require_parseDateTime(); + if (!Stream2.Writable || !Stream2.Writable.prototype.destroy) + Stream2 = require_readable(); + var endDirectorySignature = Buffer2.alloc(4); + endDirectorySignature.writeUInt32LE(101010256, 0); + function Parse2(opts) { + if (!(this instanceof Parse2)) { + return new Parse2(opts); + } + var self2 = this; + self2._opts = opts || { verbose: false }; + PullStream.call(self2, self2._opts); + self2.on("finish", function() { + self2.emit("end"); + self2.emit("close"); + }); + self2._readRecord().catch(function(e) { + if (!self2.__emittedError || self2.__emittedError !== e) + self2.emit("error", e); + }); + } + util2.inherits(Parse2, PullStream); + Parse2.prototype._readRecord = function() { + var self2 = this; + return self2.pull(4).then(function(data) { + if (data.length === 0) + return; + var signature = data.readUInt32LE(0); + if (signature === 875721283) { + return self2._readCrxHeader(); + } + if (signature === 67324752) { + return self2._readFile(); + } else if (signature === 33639248) { + self2.reachedCD = true; + return self2._readCentralDirectoryFileHeader(); + } else if (signature === 101010256) { + return self2._readEndOfCentralDirectoryRecord(); + } else if (self2.reachedCD) { + var includeEof = true; + return self2.pull(endDirectorySignature, includeEof).then(function() { + return self2._readEndOfCentralDirectoryRecord(); + }); + } else + self2.emit("error", new Error("invalid signature: 0x" + signature.toString(16))); + }); + }; + Parse2.prototype._readCrxHeader = function() { + var self2 = this; + return self2.pull(12).then(function(data) { + self2.crxHeader = binary2.parse(data).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars; + return self2.pull(self2.crxHeader.pubKeyLength + self2.crxHeader.signatureLength); + }).then(function(data) { + self2.crxHeader.publicKey = data.slice(0, self2.crxHeader.pubKeyLength); + self2.crxHeader.signature = data.slice(self2.crxHeader.pubKeyLength); + self2.emit("crx-header", self2.crxHeader); + return self2._readRecord(); + }); + }; + Parse2.prototype._readFile = function() { + var self2 = this; + return self2.pull(26).then(function(data) { + var vars = binary2.parse(data).word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars; + vars.lastModifiedDateTime = parseDateTime(vars.lastModifiedDate, vars.lastModifiedTime); + if (self2.crxHeader) + vars.crxHeader = self2.crxHeader; + return self2.pull(vars.fileNameLength).then(function(fileNameBuffer) { + var fileName = fileNameBuffer.toString("utf8"); + var entry = Stream2.PassThrough(); + var __autodraining = false; + entry.autodrain = function() { + __autodraining = true; + var draining = entry.pipe(NoopStream()); + draining.promise = function() { + return new Promise2(function(resolve8, reject) { + draining.on("finish", resolve8); + draining.on("error", reject); + }); + }; + return draining; + }; + entry.buffer = function() { + return BufferStream(entry); + }; + entry.path = fileName; + entry.props = {}; + entry.props.path = fileName; + entry.props.pathBuffer = fileNameBuffer; + entry.props.flags = { + "isUnicode": (vars.flags & 2048) != 0 + }; + entry.type = vars.uncompressedSize === 0 && /[\/\\]$/.test(fileName) ? "Directory" : "File"; + if (self2._opts.verbose) { + if (entry.type === "Directory") { + console.log(" creating:", fileName); + } else if (entry.type === "File") { + if (vars.compressionMethod === 0) { + console.log(" extracting:", fileName); + } else { + console.log(" inflating:", fileName); + } + } + } + return self2.pull(vars.extraFieldLength).then(function(extraField) { + var extra = parseExtraField(extraField, vars); + entry.vars = vars; + entry.extra = extra; + if (self2._opts.forceStream) { + self2.push(entry); + } else { + self2.emit("entry", entry); + if (self2._readableState.pipesCount || self2._readableState.pipes && self2._readableState.pipes.length) + self2.push(entry); + } + if (self2._opts.verbose) + console.log({ + filename: fileName, + vars, + extra + }); + var fileSizeKnown = !(vars.flags & 8) || vars.compressedSize > 0, eof; + entry.__autodraining = __autodraining; + var inflater = vars.compressionMethod && !__autodraining ? zlib2.createInflateRaw() : Stream2.PassThrough(); + if (fileSizeKnown) { + entry.size = vars.uncompressedSize; + eof = vars.compressedSize; + } else { + eof = Buffer2.alloc(4); + eof.writeUInt32LE(134695760, 0); + } + return new Promise2(function(resolve8, reject) { + self2.stream(eof).pipe(inflater).on("error", function(err2) { + self2.emit("error", err2); + }).pipe(entry).on("finish", function() { + return fileSizeKnown ? self2._readRecord().then(resolve8).catch(reject) : self2._processDataDescriptor(entry).then(resolve8).catch(reject); + }); + }); + }); + }); + }); + }; + Parse2.prototype._processDataDescriptor = function(entry) { + var self2 = this; + return self2.pull(16).then(function(data) { + var vars = binary2.parse(data).word32lu("dataDescriptorSignature").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").vars; + entry.size = vars.uncompressedSize; + return self2._readRecord(); + }); + }; + Parse2.prototype._readCentralDirectoryFileHeader = function() { + var self2 = this; + return self2.pull(42).then(function(data) { + var vars = binary2.parse(data).word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars; + return self2.pull(vars.fileNameLength).then(function(fileName) { + vars.fileName = fileName.toString("utf8"); + return self2.pull(vars.extraFieldLength); + }).then(function(extraField) { + return self2.pull(vars.fileCommentLength); + }).then(function(fileComment) { + return self2._readRecord(); + }); + }); + }; + Parse2.prototype._readEndOfCentralDirectoryRecord = function() { + var self2 = this; + return self2.pull(18).then(function(data) { + var vars = binary2.parse(data).word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars; + return self2.pull(vars.commentLength).then(function(comment) { + comment = comment.toString("utf8"); + self2.end(); + self2.push(null); + }); + }); + }; + Parse2.prototype.promise = function() { + var self2 = this; + return new Promise2(function(resolve8, reject) { + self2.on("finish", resolve8); + self2.on("error", reject); + }); + }; + module2.exports = Parse2; + } +}); + +// ../node_modules/.pnpm/duplexer2@0.1.4/node_modules/duplexer2/index.js +var require_duplexer2 = __commonJS({ + "../node_modules/.pnpm/duplexer2@0.1.4/node_modules/duplexer2/index.js"(exports2, module2) { + "use strict"; + var stream5 = require_readable(); + function DuplexWrapper(options2, writable, readable) { + if (typeof readable === "undefined") { + readable = writable; + writable = options2; + options2 = null; + } + stream5.Duplex.call(this, options2); + if (typeof readable.read !== "function") { + readable = new stream5.Readable(options2).wrap(readable); + } + this._writable = writable; + this._readable = readable; + this._waiting = false; + var self2 = this; + writable.once("finish", function() { + self2.end(); + }); + this.once("finish", function() { + writable.end(); + }); + readable.on("readable", function() { + if (self2._waiting) { + self2._waiting = false; + self2._read(); + } + }); + readable.once("end", function() { + self2.push(null); + }); + if (!options2 || typeof options2.bubbleErrors === "undefined" || options2.bubbleErrors) { + writable.on("error", function(err2) { + self2.emit("error", err2); + }); + readable.on("error", function(err2) { + self2.emit("error", err2); + }); + } + } + DuplexWrapper.prototype = Object.create(stream5.Duplex.prototype, { constructor: { value: DuplexWrapper } }); + DuplexWrapper.prototype._write = function _write(input, encoding, done) { + this._writable.write(input, encoding, done); + }; + DuplexWrapper.prototype._read = function _read() { + var buf; + var reads = 0; + while ((buf = this._readable.read()) !== null) { + this.push(buf); + reads++; + } + if (reads === 0) { + this._waiting = true; + } + }; + module2.exports = function duplex2(options2, writable, readable) { + return new DuplexWrapper(options2, writable, readable); + }; + module2.exports.DuplexWrapper = DuplexWrapper; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseOne.js +var require_parseOne = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseOne.js"(exports2, module2) { + var Stream2 = require("stream"); + var Parse2 = require_parse2(); + var duplexer2 = require_duplexer2(); + var BufferStream = require_BufferStream(); + if (!Stream2.Writable || !Stream2.Writable.prototype.destroy) + Stream2 = require_readable(); + function parseOne(match2, opts) { + var inStream = Stream2.PassThrough({ objectMode: true }); + var outStream = Stream2.PassThrough(); + var transform = Stream2.Transform({ objectMode: true }); + var re = match2 instanceof RegExp ? match2 : match2 && new RegExp(match2); + var found; + transform._transform = function(entry, e, cb) { + if (found || re && !re.exec(entry.path)) { + entry.autodrain(); + return cb(); + } else { + found = true; + out2.emit("entry", entry); + entry.on("error", function(e2) { + outStream.emit("error", e2); + }); + entry.pipe(outStream).on("error", function(err2) { + cb(err2); + }).on("finish", function(d) { + cb(null, d); + }); + } + }; + inStream.pipe(Parse2(opts)).on("error", function(err2) { + outStream.emit("error", err2); + }).pipe(transform).on("error", Object).on("finish", function() { + if (!found) + outStream.emit("error", new Error("PATTERN_NOT_FOUND")); + else + outStream.end(); + }); + var out2 = duplexer2(inStream, outStream); + out2.buffer = function() { + return BufferStream(outStream); + }; + return out2; + } + module2.exports = parseOne; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/abstract.js +var require_abstract = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/abstract.js"(exports2, module2) { + module2.exports = Abstract; + var Stream2 = require("stream").Stream; + var inherits3 = require_inherits(); + function Abstract() { + Stream2.call(this); + } + inherits3(Abstract, Stream2); + Abstract.prototype.on = function(ev, fn) { + if (ev === "ready" && this.ready) { + process.nextTick(fn.bind(this)); + } else { + Stream2.prototype.on.call(this, ev, fn); + } + return this; + }; + Abstract.prototype.abort = function() { + this._aborted = true; + this.emit("abort"); + }; + Abstract.prototype.destroy = function() { + }; + Abstract.prototype.warn = function(msg, code) { + var self2 = this; + var er = decorate(msg, code, self2); + if (!self2.listeners("warn")) { + console.error( + "%s %s\npath = %s\nsyscall = %s\nfstream_type = %s\nfstream_path = %s\nfstream_unc_path = %s\nfstream_class = %s\nfstream_stack =\n%s\n", + code || "UNKNOWN", + er.stack, + er.path, + er.syscall, + er.fstream_type, + er.fstream_path, + er.fstream_unc_path, + er.fstream_class, + er.fstream_stack.join("\n") + ); + } else { + self2.emit("warn", er); + } + }; + Abstract.prototype.info = function(msg, code) { + this.emit("info", msg, code); + }; + Abstract.prototype.error = function(msg, code, th) { + var er = decorate(msg, code, this); + if (th) + throw er; + else + this.emit("error", er); + }; + function decorate(er, code, self2) { + if (!(er instanceof Error)) + er = new Error(er); + er.code = er.code || code; + er.path = er.path || self2.path; + er.fstream_type = er.fstream_type || self2.type; + er.fstream_path = er.fstream_path || self2.path; + if (self2._path !== self2.path) { + er.fstream_unc_path = er.fstream_unc_path || self2._path; + } + if (self2.linkpath) { + er.fstream_linkpath = er.fstream_linkpath || self2.linkpath; + } + er.fstream_class = er.fstream_class || self2.constructor.name; + er.fstream_stack = er.fstream_stack || new Error().stack.split(/\n/).slice(3).map(function(s) { + return s.replace(/^ {4}at /, ""); + }); + return er; + } + } +}); + +// ../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/polyfills.js +var require_polyfills = __commonJS({ + "../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/polyfills.js"(exports2, module2) { + var constants = require("constants"); + var origCwd = process.cwd; + var cwd = null; + var platform4 = process.env.GRACEFUL_FS_PLATFORM || process.platform; + process.cwd = function() { + if (!cwd) + cwd = origCwd.call(process); + return cwd; + }; + try { + process.cwd(); + } catch (er) { + } + if (typeof process.chdir === "function") { + chdir = process.chdir; + process.chdir = function(d) { + cwd = null; + chdir.call(process, d); + }; + if (Object.setPrototypeOf) + Object.setPrototypeOf(process.chdir, chdir); + } + var chdir; + module2.exports = patch; + function patch(fs6) { + if (constants.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) { + patchLchmod(fs6); + } + if (!fs6.lutimes) { + patchLutimes(fs6); + } + fs6.chown = chownFix(fs6.chown); + fs6.fchown = chownFix(fs6.fchown); + fs6.lchown = chownFix(fs6.lchown); + fs6.chmod = chmodFix(fs6.chmod); + fs6.fchmod = chmodFix(fs6.fchmod); + fs6.lchmod = chmodFix(fs6.lchmod); + fs6.chownSync = chownFixSync(fs6.chownSync); + fs6.fchownSync = chownFixSync(fs6.fchownSync); + fs6.lchownSync = chownFixSync(fs6.lchownSync); + fs6.chmodSync = chmodFixSync(fs6.chmodSync); + fs6.fchmodSync = chmodFixSync(fs6.fchmodSync); + fs6.lchmodSync = chmodFixSync(fs6.lchmodSync); + fs6.stat = statFix(fs6.stat); + fs6.fstat = statFix(fs6.fstat); + fs6.lstat = statFix(fs6.lstat); + fs6.statSync = statFixSync(fs6.statSync); + fs6.fstatSync = statFixSync(fs6.fstatSync); + fs6.lstatSync = statFixSync(fs6.lstatSync); + if (fs6.chmod && !fs6.lchmod) { + fs6.lchmod = function(path30, mode, cb) { + if (cb) + process.nextTick(cb); + }; + fs6.lchmodSync = function() { + }; + } + if (fs6.chown && !fs6.lchown) { + fs6.lchown = function(path30, uid, gid, cb) { + if (cb) + process.nextTick(cb); + }; + fs6.lchownSync = function() { + }; + } + if (platform4 === "win32") { + fs6.rename = typeof fs6.rename !== "function" ? fs6.rename : function(fs$rename) { + function rename4(from, to, cb) { + var start4 = Date.now(); + var backoff = 0; + fs$rename(from, to, function CB(er) { + if (er && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") && Date.now() - start4 < 6e4) { + setTimeout(function() { + fs6.stat(to, function(stater, st) { + if (stater && stater.code === "ENOENT") + fs$rename(from, to, CB); + else + cb(er); + }); + }, backoff); + if (backoff < 100) + backoff += 10; + return; + } + if (cb) + cb(er); + }); + } + if (Object.setPrototypeOf) + Object.setPrototypeOf(rename4, fs$rename); + return rename4; + }(fs6.rename); + } + fs6.read = typeof fs6.read !== "function" ? fs6.read : function(fs$read) { + function read(fd, buffer2, offset, length, position, callback_) { + var callback; + if (callback_ && typeof callback_ === "function") { + var eagCounter = 0; + callback = function(er, _, __) { + if (er && er.code === "EAGAIN" && eagCounter < 10) { + eagCounter++; + return fs$read.call(fs6, fd, buffer2, offset, length, position, callback); + } + callback_.apply(this, arguments); + }; + } + return fs$read.call(fs6, fd, buffer2, offset, length, position, callback); + } + if (Object.setPrototypeOf) + Object.setPrototypeOf(read, fs$read); + return read; + }(fs6.read); + fs6.readSync = typeof fs6.readSync !== "function" ? fs6.readSync : function(fs$readSync) { + return function(fd, buffer2, offset, length, position) { + var eagCounter = 0; + while (true) { + try { + return fs$readSync.call(fs6, fd, buffer2, offset, length, position); + } catch (er) { + if (er.code === "EAGAIN" && eagCounter < 10) { + eagCounter++; + continue; + } + throw er; + } + } + }; + }(fs6.readSync); + function patchLchmod(fs7) { + fs7.lchmod = function(path30, mode, callback) { + fs7.open( + path30, + constants.O_WRONLY | constants.O_SYMLINK, + mode, + function(err2, fd) { + if (err2) { + if (callback) + callback(err2); + return; + } + fs7.fchmod(fd, mode, function(err3) { + fs7.close(fd, function(err22) { + if (callback) + callback(err3 || err22); + }); + }); + } + ); + }; + fs7.lchmodSync = function(path30, mode) { + var fd = fs7.openSync(path30, constants.O_WRONLY | constants.O_SYMLINK, mode); + var threw = true; + var ret2; + try { + ret2 = fs7.fchmodSync(fd, mode); + threw = false; + } finally { + if (threw) { + try { + fs7.closeSync(fd); + } catch (er) { + } + } else { + fs7.closeSync(fd); + } + } + return ret2; + }; + } + function patchLutimes(fs7) { + if (constants.hasOwnProperty("O_SYMLINK") && fs7.futimes) { + fs7.lutimes = function(path30, at, mt, cb) { + fs7.open(path30, constants.O_SYMLINK, function(er, fd) { + if (er) { + if (cb) + cb(er); + return; + } + fs7.futimes(fd, at, mt, function(er2) { + fs7.close(fd, function(er22) { + if (cb) + cb(er2 || er22); + }); + }); + }); + }; + fs7.lutimesSync = function(path30, at, mt) { + var fd = fs7.openSync(path30, constants.O_SYMLINK); + var ret2; + var threw = true; + try { + ret2 = fs7.futimesSync(fd, at, mt); + threw = false; + } finally { + if (threw) { + try { + fs7.closeSync(fd); + } catch (er) { + } + } else { + fs7.closeSync(fd); + } + } + return ret2; + }; + } else if (fs7.futimes) { + fs7.lutimes = function(_a, _b, _c, cb) { + if (cb) + process.nextTick(cb); + }; + fs7.lutimesSync = function() { + }; + } + } + function chmodFix(orig) { + if (!orig) + return orig; + return function(target, mode, cb) { + return orig.call(fs6, target, mode, function(er) { + if (chownErOk(er)) + er = null; + if (cb) + cb.apply(this, arguments); + }); + }; + } + function chmodFixSync(orig) { + if (!orig) + return orig; + return function(target, mode) { + try { + return orig.call(fs6, target, mode); + } catch (er) { + if (!chownErOk(er)) + throw er; + } + }; + } + function chownFix(orig) { + if (!orig) + return orig; + return function(target, uid, gid, cb) { + return orig.call(fs6, target, uid, gid, function(er) { + if (chownErOk(er)) + er = null; + if (cb) + cb.apply(this, arguments); + }); + }; + } + function chownFixSync(orig) { + if (!orig) + return orig; + return function(target, uid, gid) { + try { + return orig.call(fs6, target, uid, gid); + } catch (er) { + if (!chownErOk(er)) + throw er; + } + }; + } + function statFix(orig) { + if (!orig) + return orig; + return function(target, options2, cb) { + if (typeof options2 === "function") { + cb = options2; + options2 = null; + } + function callback(er, stats) { + if (stats) { + if (stats.uid < 0) + stats.uid += 4294967296; + if (stats.gid < 0) + stats.gid += 4294967296; + } + if (cb) + cb.apply(this, arguments); + } + return options2 ? orig.call(fs6, target, options2, callback) : orig.call(fs6, target, callback); + }; + } + function statFixSync(orig) { + if (!orig) + return orig; + return function(target, options2) { + var stats = options2 ? orig.call(fs6, target, options2) : orig.call(fs6, target); + if (stats) { + if (stats.uid < 0) + stats.uid += 4294967296; + if (stats.gid < 0) + stats.gid += 4294967296; + } + return stats; + }; + } + function chownErOk(er) { + if (!er) + return true; + if (er.code === "ENOSYS") + return true; + var nonroot = !process.getuid || process.getuid() !== 0; + if (nonroot) { + if (er.code === "EINVAL" || er.code === "EPERM") + return true; + } + return false; + } + } + } +}); + +// ../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/legacy-streams.js +var require_legacy_streams = __commonJS({ + "../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) { + var Stream2 = require("stream").Stream; + module2.exports = legacy; + function legacy(fs6) { + return { + ReadStream, + WriteStream + }; + function ReadStream(path30, options2) { + if (!(this instanceof ReadStream)) + return new ReadStream(path30, options2); + Stream2.call(this); + var self2 = this; + this.path = path30; + this.fd = null; + this.readable = true; + this.paused = false; + this.flags = "r"; + this.mode = 438; + this.bufferSize = 64 * 1024; + options2 = options2 || {}; + var keys = Object.keys(options2); + for (var index = 0, length = keys.length; index < length; index++) { + var key = keys[index]; + this[key] = options2[key]; + } + if (this.encoding) + this.setEncoding(this.encoding); + if (this.start !== void 0) { + if ("number" !== typeof this.start) { + throw TypeError("start must be a Number"); + } + if (this.end === void 0) { + this.end = Infinity; + } else if ("number" !== typeof this.end) { + throw TypeError("end must be a Number"); + } + if (this.start > this.end) { + throw new Error("start must be <= end"); + } + this.pos = this.start; + } + if (this.fd !== null) { + process.nextTick(function() { + self2._read(); + }); + return; + } + fs6.open(this.path, this.flags, this.mode, function(err2, fd) { + if (err2) { + self2.emit("error", err2); + self2.readable = false; + return; + } + self2.fd = fd; + self2.emit("open", fd); + self2._read(); + }); + } + function WriteStream(path30, options2) { + if (!(this instanceof WriteStream)) + return new WriteStream(path30, options2); + Stream2.call(this); + this.path = path30; + this.fd = null; + this.writable = true; + this.flags = "w"; + this.encoding = "binary"; + this.mode = 438; + this.bytesWritten = 0; + options2 = options2 || {}; + var keys = Object.keys(options2); + for (var index = 0, length = keys.length; index < length; index++) { + var key = keys[index]; + this[key] = options2[key]; + } + if (this.start !== void 0) { + if ("number" !== typeof this.start) { + throw TypeError("start must be a Number"); + } + if (this.start < 0) { + throw new Error("start must be >= zero"); + } + this.pos = this.start; + } + this.busy = false; + this._queue = []; + if (this.fd === null) { + this._open = fs6.open; + this._queue.push([this._open, this.path, this.flags, this.mode, void 0]); + this.flush(); + } + } + } + } +}); + +// ../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/clone.js +var require_clone = __commonJS({ + "../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/clone.js"(exports2, module2) { + "use strict"; + module2.exports = clone; + var getPrototypeOf2 = Object.getPrototypeOf || function(obj2) { + return obj2.__proto__; + }; + function clone(obj2) { + if (obj2 === null || typeof obj2 !== "object") + return obj2; + if (obj2 instanceof Object) + var copy = { __proto__: getPrototypeOf2(obj2) }; + else + var copy = /* @__PURE__ */ Object.create(null); + Object.getOwnPropertyNames(obj2).forEach(function(key) { + Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj2, key)); + }); + return copy; + } + } +}); + +// ../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/graceful-fs.js +var require_graceful_fs = __commonJS({ + "../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) { + var fs6 = require("fs"); + var polyfills = require_polyfills(); + var legacy = require_legacy_streams(); + var clone = require_clone(); + var util2 = require("util"); + var gracefulQueue; + var previousSymbol; + if (typeof Symbol === "function" && typeof Symbol.for === "function") { + gracefulQueue = Symbol.for("graceful-fs.queue"); + previousSymbol = Symbol.for("graceful-fs.previous"); + } else { + gracefulQueue = "___graceful-fs.queue"; + previousSymbol = "___graceful-fs.previous"; + } + function noop2() { + } + function publishQueue(context2, queue2) { + Object.defineProperty(context2, gracefulQueue, { + get: function() { + return queue2; + } + }); + } + var debug = noop2; + if (util2.debuglog) + debug = util2.debuglog("gfs4"); + else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) + debug = function() { + var m = util2.format.apply(util2, arguments); + m = "GFS4: " + m.split(/\n/).join("\nGFS4: "); + console.error(m); + }; + if (!fs6[gracefulQueue]) { + queue = global[gracefulQueue] || []; + publishQueue(fs6, queue); + fs6.close = function(fs$close) { + function close(fd, cb) { + return fs$close.call(fs6, fd, function(err2) { + if (!err2) { + resetQueue(); + } + if (typeof cb === "function") + cb.apply(this, arguments); + }); + } + Object.defineProperty(close, previousSymbol, { + value: fs$close + }); + return close; + }(fs6.close); + fs6.closeSync = function(fs$closeSync) { + function closeSync(fd) { + fs$closeSync.apply(fs6, arguments); + resetQueue(); + } + Object.defineProperty(closeSync, previousSymbol, { + value: fs$closeSync + }); + return closeSync; + }(fs6.closeSync); + if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) { + process.on("exit", function() { + debug(fs6[gracefulQueue]); + require("assert").equal(fs6[gracefulQueue].length, 0); + }); + } + } + var queue; + if (!global[gracefulQueue]) { + publishQueue(global, fs6[gracefulQueue]); + } + module2.exports = patch(clone(fs6)); + if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs6.__patched) { + module2.exports = patch(fs6); + fs6.__patched = true; + } + function patch(fs7) { + polyfills(fs7); + fs7.gracefulify = patch; + fs7.createReadStream = createReadStream2; + fs7.createWriteStream = createWriteStream2; + var fs$readFile = fs7.readFile; + fs7.readFile = readFile5; + function readFile5(path30, options2, cb) { + if (typeof options2 === "function") + cb = options2, options2 = null; + return go$readFile(path30, options2, cb); + function go$readFile(path31, options3, cb2, startTime) { + return fs$readFile(path31, options3, function(err2) { + if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE")) + enqueue([go$readFile, [path31, options3, cb2], err2, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$writeFile = fs7.writeFile; + fs7.writeFile = writeFile4; + function writeFile4(path30, data, options2, cb) { + if (typeof options2 === "function") + cb = options2, options2 = null; + return go$writeFile(path30, data, options2, cb); + function go$writeFile(path31, data2, options3, cb2, startTime) { + return fs$writeFile(path31, data2, options3, function(err2) { + if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE")) + enqueue([go$writeFile, [path31, data2, options3, cb2], err2, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$appendFile = fs7.appendFile; + if (fs$appendFile) + fs7.appendFile = appendFile; + function appendFile(path30, data, options2, cb) { + if (typeof options2 === "function") + cb = options2, options2 = null; + return go$appendFile(path30, data, options2, cb); + function go$appendFile(path31, data2, options3, cb2, startTime) { + return fs$appendFile(path31, data2, options3, function(err2) { + if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE")) + enqueue([go$appendFile, [path31, data2, options3, cb2], err2, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$copyFile = fs7.copyFile; + if (fs$copyFile) + fs7.copyFile = copyFile; + function copyFile(src, dest, flags2, cb) { + if (typeof flags2 === "function") { + cb = flags2; + flags2 = 0; + } + return go$copyFile(src, dest, flags2, cb); + function go$copyFile(src2, dest2, flags3, cb2, startTime) { + return fs$copyFile(src2, dest2, flags3, function(err2) { + if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE")) + enqueue([go$copyFile, [src2, dest2, flags3, cb2], err2, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + var fs$readdir = fs7.readdir; + fs7.readdir = readdir4; + var noReaddirOptionVersions = /^v[0-5]\./; + function readdir4(path30, options2, cb) { + if (typeof options2 === "function") + cb = options2, options2 = null; + var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path31, options3, cb2, startTime) { + return fs$readdir(path31, fs$readdirCallback( + path31, + options3, + cb2, + startTime + )); + } : function go$readdir2(path31, options3, cb2, startTime) { + return fs$readdir(path31, options3, fs$readdirCallback( + path31, + options3, + cb2, + startTime + )); + }; + return go$readdir(path30, options2, cb); + function fs$readdirCallback(path31, options3, cb2, startTime) { + return function(err2, files) { + if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE")) + enqueue([ + go$readdir, + [path31, options3, cb2], + err2, + startTime || Date.now(), + Date.now() + ]); + else { + if (files && files.sort) + files.sort(); + if (typeof cb2 === "function") + cb2.call(this, err2, files); + } + }; + } + } + if (process.version.substr(0, 4) === "v0.8") { + var legStreams = legacy(fs7); + ReadStream = legStreams.ReadStream; + WriteStream = legStreams.WriteStream; + } + var fs$ReadStream = fs7.ReadStream; + if (fs$ReadStream) { + ReadStream.prototype = Object.create(fs$ReadStream.prototype); + ReadStream.prototype.open = ReadStream$open; + } + var fs$WriteStream = fs7.WriteStream; + if (fs$WriteStream) { + WriteStream.prototype = Object.create(fs$WriteStream.prototype); + WriteStream.prototype.open = WriteStream$open; + } + Object.defineProperty(fs7, "ReadStream", { + get: function() { + return ReadStream; + }, + set: function(val) { + ReadStream = val; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(fs7, "WriteStream", { + get: function() { + return WriteStream; + }, + set: function(val) { + WriteStream = val; + }, + enumerable: true, + configurable: true + }); + var FileReadStream = ReadStream; + Object.defineProperty(fs7, "FileReadStream", { + get: function() { + return FileReadStream; + }, + set: function(val) { + FileReadStream = val; + }, + enumerable: true, + configurable: true + }); + var FileWriteStream = WriteStream; + Object.defineProperty(fs7, "FileWriteStream", { + get: function() { + return FileWriteStream; + }, + set: function(val) { + FileWriteStream = val; + }, + enumerable: true, + configurable: true + }); + function ReadStream(path30, options2) { + if (this instanceof ReadStream) + return fs$ReadStream.apply(this, arguments), this; + else + return ReadStream.apply(Object.create(ReadStream.prototype), arguments); + } + function ReadStream$open() { + var that = this; + open(that.path, that.flags, that.mode, function(err2, fd) { + if (err2) { + if (that.autoClose) + that.destroy(); + that.emit("error", err2); + } else { + that.fd = fd; + that.emit("open", fd); + that.read(); + } + }); + } + function WriteStream(path30, options2) { + if (this instanceof WriteStream) + return fs$WriteStream.apply(this, arguments), this; + else + return WriteStream.apply(Object.create(WriteStream.prototype), arguments); + } + function WriteStream$open() { + var that = this; + open(that.path, that.flags, that.mode, function(err2, fd) { + if (err2) { + that.destroy(); + that.emit("error", err2); + } else { + that.fd = fd; + that.emit("open", fd); + } + }); + } + function createReadStream2(path30, options2) { + return new fs7.ReadStream(path30, options2); + } + function createWriteStream2(path30, options2) { + return new fs7.WriteStream(path30, options2); + } + var fs$open = fs7.open; + fs7.open = open; + function open(path30, flags2, mode, cb) { + if (typeof mode === "function") + cb = mode, mode = null; + return go$open(path30, flags2, mode, cb); + function go$open(path31, flags3, mode2, cb2, startTime) { + return fs$open(path31, flags3, mode2, function(err2, fd) { + if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE")) + enqueue([go$open, [path31, flags3, mode2, cb2], err2, startTime || Date.now(), Date.now()]); + else { + if (typeof cb2 === "function") + cb2.apply(this, arguments); + } + }); + } + } + return fs7; + } + function enqueue(elem) { + debug("ENQUEUE", elem[0].name, elem[1]); + fs6[gracefulQueue].push(elem); + retry(); + } + var retryTimer; + function resetQueue() { + var now = Date.now(); + for (var i = 0; i < fs6[gracefulQueue].length; ++i) { + if (fs6[gracefulQueue][i].length > 2) { + fs6[gracefulQueue][i][3] = now; + fs6[gracefulQueue][i][4] = now; + } + } + retry(); + } + function retry() { + clearTimeout(retryTimer); + retryTimer = void 0; + if (fs6[gracefulQueue].length === 0) + return; + var elem = fs6[gracefulQueue].shift(); + var fn = elem[0]; + var args3 = elem[1]; + var err2 = elem[2]; + var startTime = elem[3]; + var lastTime = elem[4]; + if (startTime === void 0) { + debug("RETRY", fn.name, args3); + fn.apply(null, args3); + } else if (Date.now() - startTime >= 6e4) { + debug("TIMEOUT", fn.name, args3); + var cb = args3.pop(); + if (typeof cb === "function") + cb.call(null, err2); + } else { + var sinceAttempt = Date.now() - lastTime; + var sinceStart = Math.max(lastTime - startTime, 1); + var desiredDelay = Math.min(sinceStart * 1.2, 100); + if (sinceAttempt >= desiredDelay) { + debug("RETRY", fn.name, args3); + fn.apply(null, args3.concat([startTime])); + } else { + fs6[gracefulQueue].push(elem); + } + } + if (retryTimer === void 0) { + retryTimer = setTimeout(retry, 0); + } + } + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/get-type.js +var require_get_type = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/get-type.js"(exports2, module2) { + module2.exports = getType; + function getType(st) { + var types2 = [ + "Directory", + "File", + "SymbolicLink", + "Link", + // special for hardlinks from tarballs + "BlockDevice", + "CharacterDevice", + "FIFO", + "Socket" + ]; + var type2; + if (st.type && types2.indexOf(st.type) !== -1) { + st[st.type] = true; + return st.type; + } + for (var i = 0, l2 = types2.length; i < l2; i++) { + type2 = types2[i]; + var is = st[type2] || st["is" + type2]; + if (typeof is === "function") + is = is.call(st); + if (is) { + st[type2] = true; + st.type = type2; + return type2; + } + } + return null; + } + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/link-reader.js +var require_link_reader = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/link-reader.js"(exports2, module2) { + module2.exports = LinkReader; + var fs6 = require_graceful_fs(); + var inherits3 = require_inherits(); + var Reader = require_reader(); + inherits3(LinkReader, Reader); + function LinkReader(props) { + var self2 = this; + if (!(self2 instanceof LinkReader)) { + throw new Error("LinkReader must be called as constructor."); + } + if (!(props.type === "Link" && props.Link || props.type === "SymbolicLink" && props.SymbolicLink)) { + throw new Error("Non-link type " + props.type); + } + Reader.call(self2, props); + } + LinkReader.prototype._stat = function(currentStat) { + var self2 = this; + fs6.readlink(self2._path, function(er, linkpath) { + if (er) + return self2.error(er); + self2.linkpath = self2.props.linkpath = linkpath; + self2.emit("linkpath", linkpath); + Reader.prototype._stat.call(self2, currentStat); + }); + }; + LinkReader.prototype._read = function() { + var self2 = this; + if (self2._paused) + return; + if (!self2._ended) { + self2.emit("end"); + self2.emit("close"); + self2._ended = true; + } + }; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/dir-reader.js +var require_dir_reader = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/dir-reader.js"(exports2, module2) { + module2.exports = DirReader; + var fs6 = require_graceful_fs(); + var inherits3 = require_inherits(); + var path30 = require("path"); + var Reader = require_reader(); + var assert2 = require("assert").ok; + inherits3(DirReader, Reader); + function DirReader(props) { + var self2 = this; + if (!(self2 instanceof DirReader)) { + throw new Error("DirReader must be called as constructor."); + } + if (props.type !== "Directory" || !props.Directory) { + throw new Error("Non-directory type " + props.type); + } + self2.entries = null; + self2._index = -1; + self2._paused = false; + self2._length = -1; + if (props.sort) { + this.sort = props.sort; + } + Reader.call(this, props); + } + DirReader.prototype._getEntries = function() { + var self2 = this; + if (self2._gotEntries) + return; + self2._gotEntries = true; + fs6.readdir(self2._path, function(er, entries) { + if (er) + return self2.error(er); + self2.entries = entries; + self2.emit("entries", entries); + if (self2._paused) + self2.once("resume", processEntries); + else + processEntries(); + function processEntries() { + self2._length = self2.entries.length; + if (typeof self2.sort === "function") { + self2.entries = self2.entries.sort(self2.sort.bind(self2)); + } + self2._read(); + } + }); + }; + DirReader.prototype._read = function() { + var self2 = this; + if (!self2.entries) + return self2._getEntries(); + if (self2._paused || self2._currentEntry || self2._aborted) { + return; + } + self2._index++; + if (self2._index >= self2.entries.length) { + if (!self2._ended) { + self2._ended = true; + self2.emit("end"); + self2.emit("close"); + } + return; + } + var p = path30.resolve(self2._path, self2.entries[self2._index]); + assert2(p !== self2._path); + assert2(self2.entries[self2._index]); + self2._currentEntry = p; + fs6[self2.props.follow ? "stat" : "lstat"](p, function(er, stat7) { + if (er) + return self2.error(er); + var who = self2._proxy || self2; + stat7.path = p; + stat7.basename = path30.basename(p); + stat7.dirname = path30.dirname(p); + var childProps = self2.getChildProps.call(who, stat7); + childProps.path = p; + childProps.basename = path30.basename(p); + childProps.dirname = path30.dirname(p); + var entry = Reader(childProps, stat7); + self2._currentEntry = entry; + entry.on("pause", function(who2) { + if (!self2._paused && !entry._disowned) { + self2.pause(who2); + } + }); + entry.on("resume", function(who2) { + if (self2._paused && !entry._disowned) { + self2.resume(who2); + } + }); + entry.on("stat", function(props) { + self2.emit("_entryStat", entry, props); + if (entry._aborted) + return; + if (entry._paused) { + entry.once("resume", function() { + self2.emit("entryStat", entry, props); + }); + } else + self2.emit("entryStat", entry, props); + }); + entry.on("ready", function EMITCHILD() { + if (self2._paused) { + entry.pause(self2); + return self2.once("resume", EMITCHILD); + } + if (entry.type === "Socket") { + self2.emit("socket", entry); + } else { + self2.emitEntry(entry); + } + }); + var ended = false; + entry.on("close", onend); + entry.on("disown", onend); + function onend() { + if (ended) + return; + ended = true; + self2.emit("childEnd", entry); + self2.emit("entryEnd", entry); + self2._currentEntry = null; + if (!self2._paused) { + self2._read(); + } + } + entry.on("error", function(er2) { + if (entry._swallowErrors) { + self2.warn(er2); + entry.emit("end"); + entry.emit("close"); + } else { + self2.emit("error", er2); + } + }); + [ + "child", + "childEnd", + "warn" + ].forEach(function(ev) { + entry.on(ev, self2.emit.bind(self2, ev)); + }); + }); + }; + DirReader.prototype.disown = function(entry) { + entry.emit("beforeDisown"); + entry._disowned = true; + entry.parent = entry.root = null; + if (entry === this._currentEntry) { + this._currentEntry = null; + } + entry.emit("disown"); + }; + DirReader.prototype.getChildProps = function() { + return { + depth: this.depth + 1, + root: this.root || this, + parent: this, + follow: this.follow, + filter: this.filter, + sort: this.props.sort, + hardlinks: this.props.hardlinks + }; + }; + DirReader.prototype.pause = function(who) { + var self2 = this; + if (self2._paused) + return; + who = who || self2; + self2._paused = true; + if (self2._currentEntry && self2._currentEntry.pause) { + self2._currentEntry.pause(who); + } + self2.emit("pause", who); + }; + DirReader.prototype.resume = function(who) { + var self2 = this; + if (!self2._paused) + return; + who = who || self2; + self2._paused = false; + self2.emit("resume", who); + if (self2._paused) { + return; + } + if (self2._currentEntry) { + if (self2._currentEntry.resume) + self2._currentEntry.resume(who); + } else + self2._read(); + }; + DirReader.prototype.emitEntry = function(entry) { + this.emit("entry", entry); + this.emit("child", entry); + }; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/file-reader.js +var require_file_reader = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/file-reader.js"(exports2, module2) { + module2.exports = FileReader2; + var fs6 = require_graceful_fs(); + var inherits3 = require_inherits(); + var Reader = require_reader(); + var EOF2 = { EOF: true }; + var CLOSE = { CLOSE: true }; + inherits3(FileReader2, Reader); + function FileReader2(props) { + var self2 = this; + if (!(self2 instanceof FileReader2)) { + throw new Error("FileReader must be called as constructor."); + } + if (!(props.type === "Link" && props.Link || props.type === "File" && props.File)) { + throw new Error("Non-file type " + props.type); + } + self2._buffer = []; + self2._bytesEmitted = 0; + Reader.call(self2, props); + } + FileReader2.prototype._getStream = function() { + var self2 = this; + var stream5 = self2._stream = fs6.createReadStream(self2._path, self2.props); + if (self2.props.blksize) { + stream5.bufferSize = self2.props.blksize; + } + stream5.on("open", self2.emit.bind(self2, "open")); + stream5.on("data", function(c) { + self2._bytesEmitted += c.length; + if (!c.length) { + return; + } else if (self2._paused || self2._buffer.length) { + self2._buffer.push(c); + self2._read(); + } else + self2.emit("data", c); + }); + stream5.on("end", function() { + if (self2._paused || self2._buffer.length) { + self2._buffer.push(EOF2); + self2._read(); + } else { + self2.emit("end"); + } + if (self2._bytesEmitted !== self2.props.size) { + self2.error("Didn't get expected byte count\nexpect: " + self2.props.size + "\nactual: " + self2._bytesEmitted); + } + }); + stream5.on("close", function() { + if (self2._paused || self2._buffer.length) { + self2._buffer.push(CLOSE); + self2._read(); + } else { + self2.emit("close"); + } + }); + stream5.on("error", function(e) { + self2.emit("error", e); + }); + self2._read(); + }; + FileReader2.prototype._read = function() { + var self2 = this; + if (self2._paused) { + return; + } + if (!self2._stream) { + return self2._getStream(); + } + if (self2._buffer.length) { + var buf = self2._buffer; + for (var i = 0, l2 = buf.length; i < l2; i++) { + var c = buf[i]; + if (c === EOF2) { + self2.emit("end"); + } else if (c === CLOSE) { + self2.emit("close"); + } else { + self2.emit("data", c); + } + if (self2._paused) { + self2._buffer = buf.slice(i); + return; + } + } + self2._buffer.length = 0; + } + }; + FileReader2.prototype.pause = function(who) { + var self2 = this; + if (self2._paused) + return; + who = who || self2; + self2._paused = true; + if (self2._stream) + self2._stream.pause(); + self2.emit("pause", who); + }; + FileReader2.prototype.resume = function(who) { + var self2 = this; + if (!self2._paused) + return; + who = who || self2; + self2.emit("resume", who); + self2._paused = false; + if (self2._stream) + self2._stream.resume(); + self2._read(); + }; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/socket-reader.js +var require_socket_reader = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/socket-reader.js"(exports2, module2) { + module2.exports = SocketReader; + var inherits3 = require_inherits(); + var Reader = require_reader(); + inherits3(SocketReader, Reader); + function SocketReader(props) { + var self2 = this; + if (!(self2 instanceof SocketReader)) { + throw new Error("SocketReader must be called as constructor."); + } + if (!(props.type === "Socket" && props.Socket)) { + throw new Error("Non-socket type " + props.type); + } + Reader.call(self2, props); + } + SocketReader.prototype._read = function() { + var self2 = this; + if (self2._paused) + return; + if (!self2._ended) { + self2.emit("end"); + self2.emit("close"); + self2._ended = true; + } + }; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/proxy-reader.js +var require_proxy_reader = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/proxy-reader.js"(exports2, module2) { + module2.exports = ProxyReader; + var Reader = require_reader(); + var getType = require_get_type(); + var inherits3 = require_inherits(); + var fs6 = require_graceful_fs(); + inherits3(ProxyReader, Reader); + function ProxyReader(props) { + var self2 = this; + if (!(self2 instanceof ProxyReader)) { + throw new Error("ProxyReader must be called as constructor."); + } + self2.props = props; + self2._buffer = []; + self2.ready = false; + Reader.call(self2, props); + } + ProxyReader.prototype._stat = function() { + var self2 = this; + var props = self2.props; + var stat7 = props.follow ? "stat" : "lstat"; + fs6[stat7](props.path, function(er, current) { + var type2; + if (er || !current) { + type2 = "File"; + } else { + type2 = getType(current); + } + props[type2] = true; + props.type = self2.type = type2; + self2._old = current; + self2._addProxy(Reader(props, current)); + }); + }; + ProxyReader.prototype._addProxy = function(proxy2) { + var self2 = this; + if (self2._proxyTarget) { + return self2.error("proxy already set"); + } + self2._proxyTarget = proxy2; + proxy2._proxy = self2; + [ + "error", + "data", + "end", + "close", + "linkpath", + "entry", + "entryEnd", + "child", + "childEnd", + "warn", + "stat" + ].forEach(function(ev) { + proxy2.on(ev, self2.emit.bind(self2, ev)); + }); + self2.emit("proxy", proxy2); + proxy2.on("ready", function() { + self2.ready = true; + self2.emit("ready"); + }); + var calls = self2._buffer; + self2._buffer.length = 0; + calls.forEach(function(c) { + proxy2[c[0]].apply(proxy2, c[1]); + }); + }; + ProxyReader.prototype.pause = function() { + return this._proxyTarget ? this._proxyTarget.pause() : false; + }; + ProxyReader.prototype.resume = function() { + return this._proxyTarget ? this._proxyTarget.resume() : false; + }; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/reader.js +var require_reader = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/reader.js"(exports2, module2) { + module2.exports = Reader; + var fs6 = require_graceful_fs(); + var Stream2 = require("stream").Stream; + var inherits3 = require_inherits(); + var path30 = require("path"); + var getType = require_get_type(); + var hardLinks = Reader.hardLinks = {}; + var Abstract = require_abstract(); + inherits3(Reader, Abstract); + var LinkReader = require_link_reader(); + function Reader(props, currentStat) { + var self2 = this; + if (!(self2 instanceof Reader)) + return new Reader(props, currentStat); + if (typeof props === "string") { + props = { path: props }; + } + var type2; + var ClassType; + if (props.type && typeof props.type === "function") { + type2 = props.type; + ClassType = type2; + } else { + type2 = getType(props); + ClassType = Reader; + } + if (currentStat && !type2) { + type2 = getType(currentStat); + props[type2] = true; + props.type = type2; + } + switch (type2) { + case "Directory": + ClassType = require_dir_reader(); + break; + case "Link": + case "File": + ClassType = require_file_reader(); + break; + case "SymbolicLink": + ClassType = LinkReader; + break; + case "Socket": + ClassType = require_socket_reader(); + break; + case null: + ClassType = require_proxy_reader(); + break; + } + if (!(self2 instanceof ClassType)) { + return new ClassType(props); + } + Abstract.call(self2); + if (!props.path) { + self2.error("Must provide a path", null, true); + } + self2.readable = true; + self2.writable = false; + self2.type = type2; + self2.props = props; + self2.depth = props.depth = props.depth || 0; + self2.parent = props.parent || null; + self2.root = props.root || props.parent && props.parent.root || self2; + self2._path = self2.path = path30.resolve(props.path); + if (process.platform === "win32") { + self2.path = self2._path = self2.path.replace(/\?/g, "_"); + if (self2._path.length >= 260) { + self2._swallowErrors = true; + self2._path = "\\\\?\\" + self2.path.replace(/\//g, "\\"); + } + } + self2.basename = props.basename = path30.basename(self2.path); + self2.dirname = props.dirname = path30.dirname(self2.path); + props.parent = props.root = null; + self2.size = props.size; + self2.filter = typeof props.filter === "function" ? props.filter : null; + if (props.sort === "alpha") + props.sort = alphasort; + self2._stat(currentStat); + } + function alphasort(a, b) { + return a === b ? 0 : a.toLowerCase() > b.toLowerCase() ? 1 : a.toLowerCase() < b.toLowerCase() ? -1 : a > b ? 1 : -1; + } + Reader.prototype._stat = function(currentStat) { + var self2 = this; + var props = self2.props; + var stat7 = props.follow ? "stat" : "lstat"; + if (currentStat) + process.nextTick(statCb.bind(null, null, currentStat)); + else + fs6[stat7](self2._path, statCb); + function statCb(er, props_) { + if (er) + return self2.error(er); + Object.keys(props_).forEach(function(k2) { + props[k2] = props_[k2]; + }); + if (void 0 !== self2.size && props.size !== self2.size) { + return self2.error("incorrect size"); + } + self2.size = props.size; + var type2 = getType(props); + var handleHardlinks = props.hardlinks !== false; + if (handleHardlinks && type2 !== "Directory" && props.nlink && props.nlink > 1) { + var k = props.dev + ":" + props.ino; + if (hardLinks[k] === self2._path || !hardLinks[k]) { + hardLinks[k] = self2._path; + } else { + type2 = self2.type = self2.props.type = "Link"; + self2.Link = self2.props.Link = true; + self2.linkpath = self2.props.linkpath = hardLinks[k]; + self2._stat = self2._read = LinkReader.prototype._read; + } + } + if (self2.type && self2.type !== type2) { + self2.error("Unexpected type: " + type2); + } + if (self2.filter) { + var who = self2._proxy || self2; + if (!self2.filter.call(who, who, props)) { + if (!self2._disowned) { + self2.abort(); + self2.emit("end"); + self2.emit("close"); + } + return; + } + } + var events = ["_stat", "stat", "ready"]; + var e = 0; + (function go() { + if (self2._aborted) { + self2.emit("end"); + self2.emit("close"); + return; + } + if (self2._paused && self2.type !== "Directory") { + self2.once("resume", go); + return; + } + var ev = events[e++]; + if (!ev) { + return self2._read(); + } + self2.emit(ev, props); + go(); + })(); + } + }; + Reader.prototype.pipe = function(dest) { + var self2 = this; + if (typeof dest.add === "function") { + self2.on("entry", function(entry) { + var ret2 = dest.add(entry); + if (ret2 === false) { + self2.pause(); + } + }); + } + return Stream2.prototype.pipe.apply(this, arguments); + }; + Reader.prototype.pause = function(who) { + this._paused = true; + who = who || this; + this.emit("pause", who); + if (this._stream) + this._stream.pause(who); + }; + Reader.prototype.resume = function(who) { + this._paused = false; + who = who || this; + this.emit("resume", who); + if (this._stream) + this._stream.resume(who); + this._read(); + }; + Reader.prototype._read = function() { + this.error("Cannot read unknown type: " + this.type); + }; + } +}); + +// ../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/old.js +var require_old = __commonJS({ + "../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/old.js"(exports2) { + var pathModule = require("path"); + var isWindows = process.platform === "win32"; + var fs6 = require("fs"); + var DEBUG = process.env.NODE_DEBUG && /fs/.test(process.env.NODE_DEBUG); + function rethrow() { + var callback; + if (DEBUG) { + var backtrace = new Error(); + callback = debugCallback; + } else + callback = missingCallback; + return callback; + function debugCallback(err2) { + if (err2) { + backtrace.message = err2.message; + err2 = backtrace; + missingCallback(err2); + } + } + function missingCallback(err2) { + if (err2) { + if (process.throwDeprecation) + throw err2; + else if (!process.noDeprecation) { + var msg = "fs: missing callback " + (err2.stack || err2.message); + if (process.traceDeprecation) + console.trace(msg); + else + console.error(msg); + } + } + } + } + function maybeCallback(cb) { + return typeof cb === "function" ? cb : rethrow(); + } + var normalize6 = pathModule.normalize; + if (isWindows) { + nextPartRe = /(.*?)(?:[\/\\]+|$)/g; + } else { + nextPartRe = /(.*?)(?:[\/]+|$)/g; + } + var nextPartRe; + if (isWindows) { + splitRootRe = /^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/; + } else { + splitRootRe = /^[\/]*/; + } + var splitRootRe; + exports2.realpathSync = function realpathSync2(p, cache) { + p = pathModule.resolve(p); + if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { + return cache[p]; + } + var original = p, seenLinks = {}, knownHard = {}; + var pos; + var current; + var base; + var previous; + start4(); + function start4() { + var m = splitRootRe.exec(p); + pos = m[0].length; + current = m[0]; + base = m[0]; + previous = ""; + if (isWindows && !knownHard[base]) { + fs6.lstatSync(base); + knownHard[base] = true; + } + } + while (pos < p.length) { + nextPartRe.lastIndex = pos; + var result = nextPartRe.exec(p); + previous = current; + current += result[0]; + base = previous + result[1]; + pos = nextPartRe.lastIndex; + if (knownHard[base] || cache && cache[base] === base) { + continue; + } + var resolvedLink; + if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { + resolvedLink = cache[base]; + } else { + var stat7 = fs6.lstatSync(base); + if (!stat7.isSymbolicLink()) { + knownHard[base] = true; + if (cache) + cache[base] = base; + continue; + } + var linkTarget = null; + if (!isWindows) { + var id = stat7.dev.toString(32) + ":" + stat7.ino.toString(32); + if (seenLinks.hasOwnProperty(id)) { + linkTarget = seenLinks[id]; + } + } + if (linkTarget === null) { + fs6.statSync(base); + linkTarget = fs6.readlinkSync(base); + } + resolvedLink = pathModule.resolve(previous, linkTarget); + if (cache) + cache[base] = resolvedLink; + if (!isWindows) + seenLinks[id] = linkTarget; + } + p = pathModule.resolve(resolvedLink, p.slice(pos)); + start4(); + } + if (cache) + cache[original] = p; + return p; + }; + exports2.realpath = function realpath2(p, cache, cb) { + if (typeof cb !== "function") { + cb = maybeCallback(cache); + cache = null; + } + p = pathModule.resolve(p); + if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { + return process.nextTick(cb.bind(null, null, cache[p])); + } + var original = p, seenLinks = {}, knownHard = {}; + var pos; + var current; + var base; + var previous; + start4(); + function start4() { + var m = splitRootRe.exec(p); + pos = m[0].length; + current = m[0]; + base = m[0]; + previous = ""; + if (isWindows && !knownHard[base]) { + fs6.lstat(base, function(err2) { + if (err2) + return cb(err2); + knownHard[base] = true; + LOOP(); + }); + } else { + process.nextTick(LOOP); + } + } + function LOOP() { + if (pos >= p.length) { + if (cache) + cache[original] = p; + return cb(null, p); + } + nextPartRe.lastIndex = pos; + var result = nextPartRe.exec(p); + previous = current; + current += result[0]; + base = previous + result[1]; + pos = nextPartRe.lastIndex; + if (knownHard[base] || cache && cache[base] === base) { + return process.nextTick(LOOP); + } + if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { + return gotResolvedLink(cache[base]); + } + return fs6.lstat(base, gotStat); + } + function gotStat(err2, stat7) { + if (err2) + return cb(err2); + if (!stat7.isSymbolicLink()) { + knownHard[base] = true; + if (cache) + cache[base] = base; + return process.nextTick(LOOP); + } + if (!isWindows) { + var id = stat7.dev.toString(32) + ":" + stat7.ino.toString(32); + if (seenLinks.hasOwnProperty(id)) { + return gotTarget(null, seenLinks[id], base); + } + } + fs6.stat(base, function(err3) { + if (err3) + return cb(err3); + fs6.readlink(base, function(err4, target) { + if (!isWindows) + seenLinks[id] = target; + gotTarget(err4, target); + }); + }); + } + function gotTarget(err2, target, base2) { + if (err2) + return cb(err2); + var resolvedLink = pathModule.resolve(previous, target); + if (cache) + cache[base2] = resolvedLink; + gotResolvedLink(resolvedLink); + } + function gotResolvedLink(resolvedLink) { + p = pathModule.resolve(resolvedLink, p.slice(pos)); + start4(); + } + }; + } +}); + +// ../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/index.js +var require_fs = __commonJS({ + "../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/index.js"(exports2, module2) { + module2.exports = realpath2; + realpath2.realpath = realpath2; + realpath2.sync = realpathSync2; + realpath2.realpathSync = realpathSync2; + realpath2.monkeypatch = monkeypatch; + realpath2.unmonkeypatch = unmonkeypatch; + var fs6 = require("fs"); + var origRealpath = fs6.realpath; + var origRealpathSync = fs6.realpathSync; + var version4 = process.version; + var ok = /^v[0-5]\./.test(version4); + var old = require_old(); + function newError(er) { + return er && er.syscall === "realpath" && (er.code === "ELOOP" || er.code === "ENOMEM" || er.code === "ENAMETOOLONG"); + } + function realpath2(p, cache, cb) { + if (ok) { + return origRealpath(p, cache, cb); + } + if (typeof cache === "function") { + cb = cache; + cache = null; + } + origRealpath(p, cache, function(er, result) { + if (newError(er)) { + old.realpath(p, cache, cb); + } else { + cb(er, result); + } + }); + } + function realpathSync2(p, cache) { + if (ok) { + return origRealpathSync(p, cache); + } + try { + return origRealpathSync(p, cache); + } catch (er) { + if (newError(er)) { + return old.realpathSync(p, cache); + } else { + throw er; + } + } + } + function monkeypatch() { + fs6.realpath = realpath2; + fs6.realpathSync = realpathSync2; + } + function unmonkeypatch() { + fs6.realpath = origRealpath; + fs6.realpathSync = origRealpathSync; + } + } +}); + +// ../node_modules/.pnpm/concat-map@0.0.1/node_modules/concat-map/index.js +var require_concat_map = __commonJS({ + "../node_modules/.pnpm/concat-map@0.0.1/node_modules/concat-map/index.js"(exports2, module2) { + module2.exports = function(xs, fn) { + var res = []; + for (var i = 0; i < xs.length; i++) { + var x = fn(xs[i], i); + if (isArray2(x)) + res.push.apply(res, x); + else + res.push(x); + } + return res; + }; + var isArray2 = Array.isArray || function(xs) { + return Object.prototype.toString.call(xs) === "[object Array]"; + }; + } +}); + +// ../node_modules/.pnpm/brace-expansion@1.1.11/node_modules/brace-expansion/index.js +var require_brace_expansion2 = __commonJS({ + "../node_modules/.pnpm/brace-expansion@1.1.11/node_modules/brace-expansion/index.js"(exports2, module2) { + var concatMap = require_concat_map(); + var balanced = require_balanced_match(); + module2.exports = expandTop; + var escSlash = "\0SLASH" + Math.random() + "\0"; + var escOpen = "\0OPEN" + Math.random() + "\0"; + var escClose = "\0CLOSE" + Math.random() + "\0"; + var escComma = "\0COMMA" + Math.random() + "\0"; + var escPeriod = "\0PERIOD" + Math.random() + "\0"; + function numeric(str) { + return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0); + } + function escapeBraces(str) { + return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod); + } + function unescapeBraces(str) { + return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join("."); + } + function parseCommaParts(str) { + if (!str) + return [""]; + var parts = []; + var m = balanced("{", "}", str); + if (!m) + return str.split(","); + var pre = m.pre; + var body2 = m.body; + var post = m.post; + var p = pre.split(","); + p[p.length - 1] += "{" + body2 + "}"; + var postParts = parseCommaParts(post); + if (post.length) { + p[p.length - 1] += postParts.shift(); + p.push.apply(p, postParts); + } + parts.push.apply(parts, p); + return parts; + } + function expandTop(str) { + if (!str) + return []; + if (str.substr(0, 2) === "{}") { + str = "\\{\\}" + str.substr(2); + } + return expand2(escapeBraces(str), true).map(unescapeBraces); + } + function embrace(str) { + return "{" + str + "}"; + } + function isPadded(el) { + return /^-?0\d/.test(el); + } + function lte(i, y) { + return i <= y; + } + function gte(i, y) { + return i >= y; + } + function expand2(str, isTop) { + var expansions = []; + var m = balanced("{", "}", str); + if (!m || /\$$/.test(m.pre)) + return [str]; + var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); + var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); + var isSequence = isNumericSequence || isAlphaSequence; + var isOptions = m.body.indexOf(",") >= 0; + if (!isSequence && !isOptions) { + if (m.post.match(/,.*\}/)) { + str = m.pre + "{" + m.body + escClose + m.post; + return expand2(str); + } + return [str]; + } + var n; + if (isSequence) { + n = m.body.split(/\.\./); + } else { + n = parseCommaParts(m.body); + if (n.length === 1) { + n = expand2(n[0], false).map(embrace); + if (n.length === 1) { + var post = m.post.length ? expand2(m.post, false) : [""]; + return post.map(function(p) { + return m.pre + n[0] + p; + }); + } + } + } + var pre = m.pre; + var post = m.post.length ? expand2(m.post, false) : [""]; + var N; + if (isSequence) { + var x = numeric(n[0]); + var y = numeric(n[1]); + var width = Math.max(n[0].length, n[1].length); + var incr = n.length == 3 ? Math.abs(numeric(n[2])) : 1; + var test = lte; + var reverse = y < x; + if (reverse) { + incr *= -1; + test = gte; + } + var pad = n.some(isPadded); + N = []; + for (var i = x; test(i, y); i += incr) { + var c; + if (isAlphaSequence) { + c = String.fromCharCode(i); + if (c === "\\") + c = ""; + } else { + c = String(i); + if (pad) { + var need = width - c.length; + if (need > 0) { + var z = new Array(need + 1).join("0"); + if (i < 0) + c = "-" + z + c.slice(1); + else + c = z + c; + } + } + } + N.push(c); + } + } else { + N = concatMap(n, function(el) { + return expand2(el, false); + }); + } + for (var j = 0; j < N.length; j++) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + N[j] + post[k]; + if (!isTop || isSequence || expansion) + expansions.push(expansion); + } + } + return expansions; + } + } +}); + +// ../node_modules/.pnpm/minimatch@3.1.2/node_modules/minimatch/minimatch.js +var require_minimatch = __commonJS({ + "../node_modules/.pnpm/minimatch@3.1.2/node_modules/minimatch/minimatch.js"(exports2, module2) { + module2.exports = minimatch2; + minimatch2.Minimatch = Minimatch2; + var path30 = function() { + try { + return require("path"); + } catch (e) { + } + }() || { + sep: "/" + }; + minimatch2.sep = path30.sep; + var GLOBSTAR2 = minimatch2.GLOBSTAR = Minimatch2.GLOBSTAR = {}; + var expand2 = require_brace_expansion2(); + var plTypes = { + "!": { open: "(?:(?!(?:", close: "))[^/]*?)" }, + "?": { open: "(?:", close: ")?" }, + "+": { open: "(?:", close: ")+" }, + "*": { open: "(?:", close: ")*" }, + "@": { open: "(?:", close: ")" } + }; + var qmark3 = "[^/]"; + var star3 = qmark3 + "*?"; + var twoStarDot2 = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; + var twoStarNoDot2 = "(?:(?!(?:\\/|^)\\.).)*?"; + var reSpecials2 = charSet("().*{}+?[]^$\\!"); + function charSet(s) { + return s.split("").reduce(function(set, c) { + set[c] = true; + return set; + }, {}); + } + var slashSplit = /\/+/; + minimatch2.filter = filter3; + function filter3(pattern, options2) { + options2 = options2 || {}; + return function(p, i, list) { + return minimatch2(p, pattern, options2); + }; + } + function ext2(a, b) { + b = b || {}; + var t = {}; + Object.keys(a).forEach(function(k) { + t[k] = a[k]; + }); + Object.keys(b).forEach(function(k) { + t[k] = b[k]; + }); + return t; + } + minimatch2.defaults = function(def) { + if (!def || typeof def !== "object" || !Object.keys(def).length) { + return minimatch2; + } + var orig = minimatch2; + var m = function minimatch3(p, pattern, options2) { + return orig(p, pattern, ext2(def, options2)); + }; + m.Minimatch = function Minimatch3(pattern, options2) { + return new orig.Minimatch(pattern, ext2(def, options2)); + }; + m.Minimatch.defaults = function defaults4(options2) { + return orig.defaults(ext2(def, options2)).Minimatch; + }; + m.filter = function filter4(pattern, options2) { + return orig.filter(pattern, ext2(def, options2)); + }; + m.defaults = function defaults4(options2) { + return orig.defaults(ext2(def, options2)); + }; + m.makeRe = function makeRe3(pattern, options2) { + return orig.makeRe(pattern, ext2(def, options2)); + }; + m.braceExpand = function braceExpand3(pattern, options2) { + return orig.braceExpand(pattern, ext2(def, options2)); + }; + m.match = function(list, pattern, options2) { + return orig.match(list, pattern, ext2(def, options2)); + }; + return m; + }; + Minimatch2.defaults = function(def) { + return minimatch2.defaults(def).Minimatch; + }; + function minimatch2(p, pattern, options2) { + assertValidPattern2(pattern); + if (!options2) + options2 = {}; + if (!options2.nocomment && pattern.charAt(0) === "#") { + return false; + } + return new Minimatch2(pattern, options2).match(p); + } + function Minimatch2(pattern, options2) { + if (!(this instanceof Minimatch2)) { + return new Minimatch2(pattern, options2); + } + assertValidPattern2(pattern); + if (!options2) + options2 = {}; + pattern = pattern.trim(); + if (!options2.allowWindowsEscape && path30.sep !== "/") { + pattern = pattern.split(path30.sep).join("/"); + } + this.options = options2; + this.set = []; + this.pattern = pattern; + this.regexp = null; + this.negate = false; + this.comment = false; + this.empty = false; + this.partial = !!options2.partial; + this.make(); + } + Minimatch2.prototype.debug = function() { + }; + Minimatch2.prototype.make = make; + function make() { + var pattern = this.pattern; + var options2 = this.options; + if (!options2.nocomment && pattern.charAt(0) === "#") { + this.comment = true; + return; + } + if (!pattern) { + this.empty = true; + return; + } + this.parseNegate(); + var set = this.globSet = this.braceExpand(); + if (options2.debug) + this.debug = function debug() { + console.error.apply(console, arguments); + }; + this.debug(this.pattern, set); + set = this.globParts = set.map(function(s) { + return s.split(slashSplit); + }); + this.debug(this.pattern, set); + set = set.map(function(s, si, set2) { + return s.map(this.parse, this); + }, this); + this.debug(this.pattern, set); + set = set.filter(function(s) { + return s.indexOf(false) === -1; + }); + this.debug(this.pattern, set); + this.set = set; + } + Minimatch2.prototype.parseNegate = parseNegate; + function parseNegate() { + var pattern = this.pattern; + var negate = false; + var options2 = this.options; + var negateOffset = 0; + if (options2.nonegate) + return; + for (var i = 0, l2 = pattern.length; i < l2 && pattern.charAt(i) === "!"; i++) { + negate = !negate; + negateOffset++; + } + if (negateOffset) + this.pattern = pattern.substr(negateOffset); + this.negate = negate; + } + minimatch2.braceExpand = function(pattern, options2) { + return braceExpand2(pattern, options2); + }; + Minimatch2.prototype.braceExpand = braceExpand2; + function braceExpand2(pattern, options2) { + if (!options2) { + if (this instanceof Minimatch2) { + options2 = this.options; + } else { + options2 = {}; + } + } + pattern = typeof pattern === "undefined" ? this.pattern : pattern; + assertValidPattern2(pattern); + if (options2.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) { + return [pattern]; + } + return expand2(pattern); + } + var MAX_PATTERN_LENGTH2 = 1024 * 64; + var assertValidPattern2 = function(pattern) { + if (typeof pattern !== "string") { + throw new TypeError("invalid pattern"); + } + if (pattern.length > MAX_PATTERN_LENGTH2) { + throw new TypeError("pattern is too long"); + } + }; + Minimatch2.prototype.parse = parse7; + var SUBPARSE = {}; + function parse7(pattern, isSub) { + assertValidPattern2(pattern); + var options2 = this.options; + if (pattern === "**") { + if (!options2.noglobstar) + return GLOBSTAR2; + else + pattern = "*"; + } + if (pattern === "") + return ""; + var re = ""; + var hasMagic2 = !!options2.nocase; + var escaping = false; + var patternListStack = []; + var negativeLists = []; + var stateChar; + var inClass = false; + var reClassStart = -1; + var classStart = -1; + var patternStart = pattern.charAt(0) === "." ? "" : options2.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)"; + var self2 = this; + function clearStateChar() { + if (stateChar) { + switch (stateChar) { + case "*": + re += star3; + hasMagic2 = true; + break; + case "?": + re += qmark3; + hasMagic2 = true; + break; + default: + re += "\\" + stateChar; + break; + } + self2.debug("clearStateChar %j %j", stateChar, re); + stateChar = false; + } + } + for (var i = 0, len = pattern.length, c; i < len && (c = pattern.charAt(i)); i++) { + this.debug("%s %s %s %j", pattern, i, re, c); + if (escaping && reSpecials2[c]) { + re += "\\" + c; + escaping = false; + continue; + } + switch (c) { + case "/": { + return false; + } + case "\\": + clearStateChar(); + escaping = true; + continue; + case "?": + case "*": + case "+": + case "@": + case "!": + this.debug("%s %s %s %j <-- stateChar", pattern, i, re, c); + if (inClass) { + this.debug(" in class"); + if (c === "!" && i === classStart + 1) + c = "^"; + re += c; + continue; + } + self2.debug("call clearStateChar %j", stateChar); + clearStateChar(); + stateChar = c; + if (options2.noext) + clearStateChar(); + continue; + case "(": + if (inClass) { + re += "("; + continue; + } + if (!stateChar) { + re += "\\("; + continue; + } + patternListStack.push({ + type: stateChar, + start: i - 1, + reStart: re.length, + open: plTypes[stateChar].open, + close: plTypes[stateChar].close + }); + re += stateChar === "!" ? "(?:(?!(?:" : "(?:"; + this.debug("plType %j %j", stateChar, re); + stateChar = false; + continue; + case ")": + if (inClass || !patternListStack.length) { + re += "\\)"; + continue; + } + clearStateChar(); + hasMagic2 = true; + var pl = patternListStack.pop(); + re += pl.close; + if (pl.type === "!") { + negativeLists.push(pl); + } + pl.reEnd = re.length; + continue; + case "|": + if (inClass || !patternListStack.length || escaping) { + re += "\\|"; + escaping = false; + continue; + } + clearStateChar(); + re += "|"; + continue; + case "[": + clearStateChar(); + if (inClass) { + re += "\\" + c; + continue; + } + inClass = true; + classStart = i; + reClassStart = re.length; + re += c; + continue; + case "]": + if (i === classStart + 1 || !inClass) { + re += "\\" + c; + escaping = false; + continue; + } + var cs = pattern.substring(classStart + 1, i); + try { + RegExp("[" + cs + "]"); + } catch (er) { + var sp = this.parse(cs, SUBPARSE); + re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]"; + hasMagic2 = hasMagic2 || sp[1]; + inClass = false; + continue; + } + hasMagic2 = true; + inClass = false; + re += c; + continue; + default: + clearStateChar(); + if (escaping) { + escaping = false; + } else if (reSpecials2[c] && !(c === "^" && inClass)) { + re += "\\"; + } + re += c; + } + } + if (inClass) { + cs = pattern.substr(classStart + 1); + sp = this.parse(cs, SUBPARSE); + re = re.substr(0, reClassStart) + "\\[" + sp[0]; + hasMagic2 = hasMagic2 || sp[1]; + } + for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { + var tail = re.slice(pl.reStart + pl.open.length); + this.debug("setting tail", re, pl); + tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, function(_, $1, $2) { + if (!$2) { + $2 = "\\"; + } + return $1 + $1 + $2 + "|"; + }); + this.debug("tail=%j\n %s", tail, tail, pl, re); + var t = pl.type === "*" ? star3 : pl.type === "?" ? qmark3 : "\\" + pl.type; + hasMagic2 = true; + re = re.slice(0, pl.reStart) + t + "\\(" + tail; + } + clearStateChar(); + if (escaping) { + re += "\\\\"; + } + var addPatternStart2 = false; + switch (re.charAt(0)) { + case "[": + case ".": + case "(": + addPatternStart2 = true; + } + for (var n = negativeLists.length - 1; n > -1; n--) { + var nl = negativeLists[n]; + var nlBefore = re.slice(0, nl.reStart); + var nlFirst = re.slice(nl.reStart, nl.reEnd - 8); + var nlLast = re.slice(nl.reEnd - 8, nl.reEnd); + var nlAfter = re.slice(nl.reEnd); + nlLast += nlAfter; + var openParensBefore = nlBefore.split("(").length - 1; + var cleanAfter = nlAfter; + for (i = 0; i < openParensBefore; i++) { + cleanAfter = cleanAfter.replace(/\)[+*?]?/, ""); + } + nlAfter = cleanAfter; + var dollar = ""; + if (nlAfter === "" && isSub !== SUBPARSE) { + dollar = "$"; + } + var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast; + re = newRe; + } + if (re !== "" && hasMagic2) { + re = "(?=.)" + re; + } + if (addPatternStart2) { + re = patternStart + re; + } + if (isSub === SUBPARSE) { + return [re, hasMagic2]; + } + if (!hasMagic2) { + return globUnescape(pattern); + } + var flags2 = options2.nocase ? "i" : ""; + try { + var regExp = new RegExp("^" + re + "$", flags2); + } catch (er) { + return new RegExp("$."); + } + regExp._glob = pattern; + regExp._src = re; + return regExp; + } + minimatch2.makeRe = function(pattern, options2) { + return new Minimatch2(pattern, options2 || {}).makeRe(); + }; + Minimatch2.prototype.makeRe = makeRe2; + function makeRe2() { + if (this.regexp || this.regexp === false) + return this.regexp; + var set = this.set; + if (!set.length) { + this.regexp = false; + return this.regexp; + } + var options2 = this.options; + var twoStar = options2.noglobstar ? star3 : options2.dot ? twoStarDot2 : twoStarNoDot2; + var flags2 = options2.nocase ? "i" : ""; + var re = set.map(function(pattern) { + return pattern.map(function(p) { + return p === GLOBSTAR2 ? twoStar : typeof p === "string" ? regExpEscape3(p) : p._src; + }).join("\\/"); + }).join("|"); + re = "^(?:" + re + ")$"; + if (this.negate) + re = "^(?!" + re + ").*$"; + try { + this.regexp = new RegExp(re, flags2); + } catch (ex) { + this.regexp = false; + } + return this.regexp; + } + minimatch2.match = function(list, pattern, options2) { + options2 = options2 || {}; + var mm = new Minimatch2(pattern, options2); + list = list.filter(function(f) { + return mm.match(f); + }); + if (mm.options.nonull && !list.length) { + list.push(pattern); + } + return list; + }; + Minimatch2.prototype.match = function match2(f, partial) { + if (typeof partial === "undefined") + partial = this.partial; + this.debug("match", f, this.pattern); + if (this.comment) + return false; + if (this.empty) + return f === ""; + if (f === "/" && partial) + return true; + var options2 = this.options; + if (path30.sep !== "/") { + f = f.split(path30.sep).join("/"); + } + f = f.split(slashSplit); + this.debug(this.pattern, "split", f); + var set = this.set; + this.debug(this.pattern, "set", set); + var filename; + var i; + for (i = f.length - 1; i >= 0; i--) { + filename = f[i]; + if (filename) + break; + } + for (i = 0; i < set.length; i++) { + var pattern = set[i]; + var file = f; + if (options2.matchBase && pattern.length === 1) { + file = [filename]; + } + var hit = this.matchOne(file, pattern, partial); + if (hit) { + if (options2.flipNegate) + return true; + return !this.negate; + } + } + if (options2.flipNegate) + return false; + return this.negate; + }; + Minimatch2.prototype.matchOne = function(file, pattern, partial) { + var options2 = this.options; + this.debug( + "matchOne", + { "this": this, file, pattern } + ); + this.debug("matchOne", file.length, pattern.length); + for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) { + this.debug("matchOne loop"); + var p = pattern[pi]; + var f = file[fi]; + this.debug(pattern, p, f); + if (p === false) + return false; + if (p === GLOBSTAR2) { + this.debug("GLOBSTAR", [pattern, p, f]); + var fr = fi; + var pr = pi + 1; + if (pr === pl) { + this.debug("** at the end"); + for (; fi < fl; fi++) { + if (file[fi] === "." || file[fi] === ".." || !options2.dot && file[fi].charAt(0) === ".") + return false; + } + return true; + } + while (fr < fl) { + var swallowee = file[fr]; + this.debug("\nglobstar while", file, fr, pattern, pr, swallowee); + if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) { + this.debug("globstar found match!", fr, fl, swallowee); + return true; + } else { + if (swallowee === "." || swallowee === ".." || !options2.dot && swallowee.charAt(0) === ".") { + this.debug("dot detected!", file, fr, pattern, pr); + break; + } + this.debug("globstar swallow a segment, and continue"); + fr++; + } + } + if (partial) { + this.debug("\n>>> no match, partial?", file, fr, pattern, pr); + if (fr === fl) + return true; + } + return false; + } + var hit; + if (typeof p === "string") { + hit = f === p; + this.debug("string match", p, f, hit); + } else { + hit = f.match(p); + this.debug("pattern match", p, f, hit); + } + if (!hit) + return false; + } + if (fi === fl && pi === pl) { + return true; + } else if (fi === fl) { + return partial; + } else if (pi === pl) { + return fi === fl - 1 && file[fi] === ""; + } + throw new Error("wtf?"); + }; + function globUnescape(s) { + return s.replace(/\\(.)/g, "$1"); + } + function regExpEscape3(s) { + return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); + } + } +}); + +// ../node_modules/.pnpm/path-is-absolute@1.0.1/node_modules/path-is-absolute/index.js +var require_path_is_absolute = __commonJS({ + "../node_modules/.pnpm/path-is-absolute@1.0.1/node_modules/path-is-absolute/index.js"(exports2, module2) { + "use strict"; + function posix3(path30) { + return path30.charAt(0) === "/"; + } + function win322(path30) { + var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; + var result = splitDeviceRe.exec(path30); + var device = result[1] || ""; + var isUnc = Boolean(device && device.charAt(1) !== ":"); + return Boolean(result[2] || isUnc); + } + module2.exports = process.platform === "win32" ? win322 : posix3; + module2.exports.posix = posix3; + module2.exports.win32 = win322; + } +}); + +// ../node_modules/.pnpm/glob@7.2.3/node_modules/glob/common.js +var require_common = __commonJS({ + "../node_modules/.pnpm/glob@7.2.3/node_modules/glob/common.js"(exports2) { + exports2.setopts = setopts; + exports2.ownProp = ownProp; + exports2.makeAbs = makeAbs; + exports2.finish = finish; + exports2.mark = mark; + exports2.isIgnored = isIgnored; + exports2.childrenIgnored = childrenIgnored; + function ownProp(obj2, field) { + return Object.prototype.hasOwnProperty.call(obj2, field); + } + var fs6 = require("fs"); + var path30 = require("path"); + var minimatch2 = require_minimatch(); + var isAbsolute = require_path_is_absolute(); + var Minimatch2 = minimatch2.Minimatch; + function alphasort(a, b) { + return a.localeCompare(b, "en"); + } + function setupIgnores(self2, options2) { + self2.ignore = options2.ignore || []; + if (!Array.isArray(self2.ignore)) + self2.ignore = [self2.ignore]; + if (self2.ignore.length) { + self2.ignore = self2.ignore.map(ignoreMap); + } + } + function ignoreMap(pattern) { + var gmatcher = null; + if (pattern.slice(-3) === "/**") { + var gpattern = pattern.replace(/(\/\*\*)+$/, ""); + gmatcher = new Minimatch2(gpattern, { dot: true }); + } + return { + matcher: new Minimatch2(pattern, { dot: true }), + gmatcher + }; + } + function setopts(self2, pattern, options2) { + if (!options2) + options2 = {}; + if (options2.matchBase && -1 === pattern.indexOf("/")) { + if (options2.noglobstar) { + throw new Error("base matching requires globstar"); + } + pattern = "**/" + pattern; + } + self2.silent = !!options2.silent; + self2.pattern = pattern; + self2.strict = options2.strict !== false; + self2.realpath = !!options2.realpath; + self2.realpathCache = options2.realpathCache || /* @__PURE__ */ Object.create(null); + self2.follow = !!options2.follow; + self2.dot = !!options2.dot; + self2.mark = !!options2.mark; + self2.nodir = !!options2.nodir; + if (self2.nodir) + self2.mark = true; + self2.sync = !!options2.sync; + self2.nounique = !!options2.nounique; + self2.nonull = !!options2.nonull; + self2.nosort = !!options2.nosort; + self2.nocase = !!options2.nocase; + self2.stat = !!options2.stat; + self2.noprocess = !!options2.noprocess; + self2.absolute = !!options2.absolute; + self2.fs = options2.fs || fs6; + self2.maxLength = options2.maxLength || Infinity; + self2.cache = options2.cache || /* @__PURE__ */ Object.create(null); + self2.statCache = options2.statCache || /* @__PURE__ */ Object.create(null); + self2.symlinks = options2.symlinks || /* @__PURE__ */ Object.create(null); + setupIgnores(self2, options2); + self2.changedCwd = false; + var cwd = process.cwd(); + if (!ownProp(options2, "cwd")) + self2.cwd = cwd; + else { + self2.cwd = path30.resolve(options2.cwd); + self2.changedCwd = self2.cwd !== cwd; + } + self2.root = options2.root || path30.resolve(self2.cwd, "/"); + self2.root = path30.resolve(self2.root); + if (process.platform === "win32") + self2.root = self2.root.replace(/\\/g, "/"); + self2.cwdAbs = isAbsolute(self2.cwd) ? self2.cwd : makeAbs(self2, self2.cwd); + if (process.platform === "win32") + self2.cwdAbs = self2.cwdAbs.replace(/\\/g, "/"); + self2.nomount = !!options2.nomount; + options2.nonegate = true; + options2.nocomment = true; + options2.allowWindowsEscape = false; + self2.minimatch = new Minimatch2(pattern, options2); + self2.options = self2.minimatch.options; + } + function finish(self2) { + var nou = self2.nounique; + var all3 = nou ? [] : /* @__PURE__ */ Object.create(null); + for (var i = 0, l2 = self2.matches.length; i < l2; i++) { + var matches = self2.matches[i]; + if (!matches || Object.keys(matches).length === 0) { + if (self2.nonull) { + var literal = self2.minimatch.globSet[i]; + if (nou) + all3.push(literal); + else + all3[literal] = true; + } + } else { + var m = Object.keys(matches); + if (nou) + all3.push.apply(all3, m); + else + m.forEach(function(m2) { + all3[m2] = true; + }); + } + } + if (!nou) + all3 = Object.keys(all3); + if (!self2.nosort) + all3 = all3.sort(alphasort); + if (self2.mark) { + for (var i = 0; i < all3.length; i++) { + all3[i] = self2._mark(all3[i]); + } + if (self2.nodir) { + all3 = all3.filter(function(e) { + var notDir = !/\/$/.test(e); + var c = self2.cache[e] || self2.cache[makeAbs(self2, e)]; + if (notDir && c) + notDir = c !== "DIR" && !Array.isArray(c); + return notDir; + }); + } + } + if (self2.ignore.length) + all3 = all3.filter(function(m2) { + return !isIgnored(self2, m2); + }); + self2.found = all3; + } + function mark(self2, p) { + var abs = makeAbs(self2, p); + var c = self2.cache[abs]; + var m = p; + if (c) { + var isDir2 = c === "DIR" || Array.isArray(c); + var slash = p.slice(-1) === "/"; + if (isDir2 && !slash) + m += "/"; + else if (!isDir2 && slash) + m = m.slice(0, -1); + if (m !== p) { + var mabs = makeAbs(self2, m); + self2.statCache[mabs] = self2.statCache[abs]; + self2.cache[mabs] = self2.cache[abs]; + } + } + return m; + } + function makeAbs(self2, f) { + var abs = f; + if (f.charAt(0) === "/") { + abs = path30.join(self2.root, f); + } else if (isAbsolute(f) || f === "") { + abs = f; + } else if (self2.changedCwd) { + abs = path30.resolve(self2.cwd, f); + } else { + abs = path30.resolve(f); + } + if (process.platform === "win32") + abs = abs.replace(/\\/g, "/"); + return abs; + } + function isIgnored(self2, path31) { + if (!self2.ignore.length) + return false; + return self2.ignore.some(function(item) { + return item.matcher.match(path31) || !!(item.gmatcher && item.gmatcher.match(path31)); + }); + } + function childrenIgnored(self2, path31) { + if (!self2.ignore.length) + return false; + return self2.ignore.some(function(item) { + return !!(item.gmatcher && item.gmatcher.match(path31)); + }); + } + } +}); + +// ../node_modules/.pnpm/glob@7.2.3/node_modules/glob/sync.js +var require_sync = __commonJS({ + "../node_modules/.pnpm/glob@7.2.3/node_modules/glob/sync.js"(exports2, module2) { + module2.exports = globSync2; + globSync2.GlobSync = GlobSync; + var rp = require_fs(); + var minimatch2 = require_minimatch(); + var Minimatch2 = minimatch2.Minimatch; + var Glob2 = require_glob().Glob; + var util2 = require("util"); + var path30 = require("path"); + var assert2 = require("assert"); + var isAbsolute = require_path_is_absolute(); + var common = require_common(); + var setopts = common.setopts; + var ownProp = common.ownProp; + var childrenIgnored = common.childrenIgnored; + var isIgnored = common.isIgnored; + function globSync2(pattern, options2) { + if (typeof options2 === "function" || arguments.length === 3) + throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); + return new GlobSync(pattern, options2).found; + } + function GlobSync(pattern, options2) { + if (!pattern) + throw new Error("must provide pattern"); + if (typeof options2 === "function" || arguments.length === 3) + throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); + if (!(this instanceof GlobSync)) + return new GlobSync(pattern, options2); + setopts(this, pattern, options2); + if (this.noprocess) + return this; + var n = this.minimatch.set.length; + this.matches = new Array(n); + for (var i = 0; i < n; i++) { + this._process(this.minimatch.set[i], i, false); + } + this._finish(); + } + GlobSync.prototype._finish = function() { + assert2.ok(this instanceof GlobSync); + if (this.realpath) { + var self2 = this; + this.matches.forEach(function(matchset, index) { + var set = self2.matches[index] = /* @__PURE__ */ Object.create(null); + for (var p in matchset) { + try { + p = self2._makeAbs(p); + var real = rp.realpathSync(p, self2.realpathCache); + set[real] = true; + } catch (er) { + if (er.syscall === "stat") + set[self2._makeAbs(p)] = true; + else + throw er; + } + } + }); + } + common.finish(this); + }; + GlobSync.prototype._process = function(pattern, index, inGlobStar) { + assert2.ok(this instanceof GlobSync); + var n = 0; + while (typeof pattern[n] === "string") { + n++; + } + var prefix; + switch (n) { + case pattern.length: + this._processSimple(pattern.join("/"), index); + return; + case 0: + prefix = null; + break; + default: + prefix = pattern.slice(0, n).join("/"); + break; + } + var remain = pattern.slice(n); + var read; + if (prefix === null) + read = "."; + else if (isAbsolute(prefix) || isAbsolute(pattern.map(function(p) { + return typeof p === "string" ? p : "[*]"; + }).join("/"))) { + if (!prefix || !isAbsolute(prefix)) + prefix = "/" + prefix; + read = prefix; + } else + read = prefix; + var abs = this._makeAbs(read); + if (childrenIgnored(this, read)) + return; + var isGlobStar = remain[0] === minimatch2.GLOBSTAR; + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar); + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar); + }; + GlobSync.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar); + if (!entries) + return; + var pn = remain[0]; + var negate = !!this.minimatch.negate; + var rawGlob = pn._glob; + var dotOk = this.dot || rawGlob.charAt(0) === "."; + var matchedEntries = []; + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (e.charAt(0) !== "." || dotOk) { + var m; + if (negate && !prefix) { + m = !e.match(pn); + } else { + m = e.match(pn); + } + if (m) + matchedEntries.push(e); + } + } + var len = matchedEntries.length; + if (len === 0) + return; + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + if (prefix) { + if (prefix.slice(-1) !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + if (e.charAt(0) === "/" && !this.nomount) { + e = path30.join(this.root, e); + } + this._emitMatch(index, e); + } + return; + } + remain.shift(); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + var newPattern; + if (prefix) + newPattern = [prefix, e]; + else + newPattern = [e]; + this._process(newPattern.concat(remain), index, inGlobStar); + } + }; + GlobSync.prototype._emitMatch = function(index, e) { + if (isIgnored(this, e)) + return; + var abs = this._makeAbs(e); + if (this.mark) + e = this._mark(e); + if (this.absolute) { + e = abs; + } + if (this.matches[index][e]) + return; + if (this.nodir) { + var c = this.cache[abs]; + if (c === "DIR" || Array.isArray(c)) + return; + } + this.matches[index][e] = true; + if (this.stat) + this._stat(e); + }; + GlobSync.prototype._readdirInGlobStar = function(abs) { + if (this.follow) + return this._readdir(abs, false); + var entries; + var lstat6; + var stat7; + try { + lstat6 = this.fs.lstatSync(abs); + } catch (er) { + if (er.code === "ENOENT") { + return null; + } + } + var isSym = lstat6 && lstat6.isSymbolicLink(); + this.symlinks[abs] = isSym; + if (!isSym && lstat6 && !lstat6.isDirectory()) + this.cache[abs] = "FILE"; + else + entries = this._readdir(abs, false); + return entries; + }; + GlobSync.prototype._readdir = function(abs, inGlobStar) { + var entries; + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs); + if (ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (!c || c === "FILE") + return null; + if (Array.isArray(c)) + return c; + } + try { + return this._readdirEntries(abs, this.fs.readdirSync(abs)); + } catch (er) { + this._readdirError(abs, er); + return null; + } + }; + GlobSync.prototype._readdirEntries = function(abs, entries) { + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (abs === "/") + e = abs + e; + else + e = abs + "/" + e; + this.cache[e] = true; + } + } + this.cache[abs] = entries; + return entries; + }; + GlobSync.prototype._readdirError = function(f, er) { + switch (er.code) { + case "ENOTSUP": + case "ENOTDIR": + var abs = this._makeAbs(f); + this.cache[abs] = "FILE"; + if (abs === this.cwdAbs) { + var error = new Error(er.code + " invalid cwd " + this.cwd); + error.path = this.cwd; + error.code = er.code; + throw error; + } + break; + case "ENOENT": + case "ELOOP": + case "ENAMETOOLONG": + case "UNKNOWN": + this.cache[this._makeAbs(f)] = false; + break; + default: + this.cache[this._makeAbs(f)] = false; + if (this.strict) + throw er; + if (!this.silent) + console.error("glob error", er); + break; + } + }; + GlobSync.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar); + if (!entries) + return; + var remainWithoutGlobStar = remain.slice(1); + var gspref = prefix ? [prefix] : []; + var noGlobStar = gspref.concat(remainWithoutGlobStar); + this._process(noGlobStar, index, false); + var len = entries.length; + var isSym = this.symlinks[abs]; + if (isSym && inGlobStar) + return; + for (var i = 0; i < len; i++) { + var e = entries[i]; + if (e.charAt(0) === "." && !this.dot) + continue; + var instead = gspref.concat(entries[i], remainWithoutGlobStar); + this._process(instead, index, true); + var below = gspref.concat(entries[i], remain); + this._process(below, index, true); + } + }; + GlobSync.prototype._processSimple = function(prefix, index) { + var exists = this._stat(prefix); + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + if (!exists) + return; + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix); + if (prefix.charAt(0) === "/") { + prefix = path30.join(this.root, prefix); + } else { + prefix = path30.resolve(this.root, prefix); + if (trail) + prefix += "/"; + } + } + if (process.platform === "win32") + prefix = prefix.replace(/\\/g, "/"); + this._emitMatch(index, prefix); + }; + GlobSync.prototype._stat = function(f) { + var abs = this._makeAbs(f); + var needDir = f.slice(-1) === "/"; + if (f.length > this.maxLength) + return false; + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (Array.isArray(c)) + c = "DIR"; + if (!needDir || c === "DIR") + return c; + if (needDir && c === "FILE") + return false; + } + var exists; + var stat7 = this.statCache[abs]; + if (!stat7) { + var lstat6; + try { + lstat6 = this.fs.lstatSync(abs); + } catch (er) { + if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { + this.statCache[abs] = false; + return false; + } + } + if (lstat6 && lstat6.isSymbolicLink()) { + try { + stat7 = this.fs.statSync(abs); + } catch (er) { + stat7 = lstat6; + } + } else { + stat7 = lstat6; + } + } + this.statCache[abs] = stat7; + var c = true; + if (stat7) + c = stat7.isDirectory() ? "DIR" : "FILE"; + this.cache[abs] = this.cache[abs] || c; + if (needDir && c === "FILE") + return false; + return c; + }; + GlobSync.prototype._mark = function(p) { + return common.mark(this, p); + }; + GlobSync.prototype._makeAbs = function(f) { + return common.makeAbs(this, f); + }; + } +}); + +// ../node_modules/.pnpm/wrappy@1.0.2/node_modules/wrappy/wrappy.js +var require_wrappy = __commonJS({ + "../node_modules/.pnpm/wrappy@1.0.2/node_modules/wrappy/wrappy.js"(exports2, module2) { + module2.exports = wrappy; + function wrappy(fn, cb) { + if (fn && cb) + return wrappy(fn)(cb); + if (typeof fn !== "function") + throw new TypeError("need wrapper function"); + Object.keys(fn).forEach(function(k) { + wrapper[k] = fn[k]; + }); + return wrapper; + function wrapper() { + var args3 = new Array(arguments.length); + for (var i = 0; i < args3.length; i++) { + args3[i] = arguments[i]; + } + var ret2 = fn.apply(this, args3); + var cb2 = args3[args3.length - 1]; + if (typeof ret2 === "function" && ret2 !== cb2) { + Object.keys(cb2).forEach(function(k) { + ret2[k] = cb2[k]; + }); + } + return ret2; + } + } + } +}); + +// ../node_modules/.pnpm/once@1.4.0/node_modules/once/once.js +var require_once = __commonJS({ + "../node_modules/.pnpm/once@1.4.0/node_modules/once/once.js"(exports2, module2) { + var wrappy = require_wrappy(); + module2.exports = wrappy(once); + module2.exports.strict = wrappy(onceStrict); + once.proto = once(function() { + Object.defineProperty(Function.prototype, "once", { + value: function() { + return once(this); + }, + configurable: true + }); + Object.defineProperty(Function.prototype, "onceStrict", { + value: function() { + return onceStrict(this); + }, + configurable: true + }); + }); + function once(fn) { + var f = function() { + if (f.called) + return f.value; + f.called = true; + return f.value = fn.apply(this, arguments); + }; + f.called = false; + return f; + } + function onceStrict(fn) { + var f = function() { + if (f.called) + throw new Error(f.onceError); + f.called = true; + return f.value = fn.apply(this, arguments); + }; + var name = fn.name || "Function wrapped with `once`"; + f.onceError = name + " shouldn't be called more than once"; + f.called = false; + return f; + } + } +}); + +// ../node_modules/.pnpm/inflight@1.0.6/node_modules/inflight/inflight.js +var require_inflight = __commonJS({ + "../node_modules/.pnpm/inflight@1.0.6/node_modules/inflight/inflight.js"(exports2, module2) { + var wrappy = require_wrappy(); + var reqs = /* @__PURE__ */ Object.create(null); + var once = require_once(); + module2.exports = wrappy(inflight); + function inflight(key, cb) { + if (reqs[key]) { + reqs[key].push(cb); + return null; + } else { + reqs[key] = [cb]; + return makeres(key); + } + } + function makeres(key) { + return once(function RES() { + var cbs = reqs[key]; + var len = cbs.length; + var args3 = slice(arguments); + try { + for (var i = 0; i < len; i++) { + cbs[i].apply(null, args3); + } + } finally { + if (cbs.length > len) { + cbs.splice(0, len); + process.nextTick(function() { + RES.apply(null, args3); + }); + } else { + delete reqs[key]; + } + } + }); + } + function slice(args3) { + var length = args3.length; + var array = []; + for (var i = 0; i < length; i++) + array[i] = args3[i]; + return array; + } + } +}); + +// ../node_modules/.pnpm/glob@7.2.3/node_modules/glob/glob.js +var require_glob = __commonJS({ + "../node_modules/.pnpm/glob@7.2.3/node_modules/glob/glob.js"(exports2, module2) { + module2.exports = glob2; + var rp = require_fs(); + var minimatch2 = require_minimatch(); + var Minimatch2 = minimatch2.Minimatch; + var inherits3 = require_inherits(); + var EE = require("events").EventEmitter; + var path30 = require("path"); + var assert2 = require("assert"); + var isAbsolute = require_path_is_absolute(); + var globSync2 = require_sync(); + var common = require_common(); + var setopts = common.setopts; + var ownProp = common.ownProp; + var inflight = require_inflight(); + var util2 = require("util"); + var childrenIgnored = common.childrenIgnored; + var isIgnored = common.isIgnored; + var once = require_once(); + function glob2(pattern, options2, cb) { + if (typeof options2 === "function") + cb = options2, options2 = {}; + if (!options2) + options2 = {}; + if (options2.sync) { + if (cb) + throw new TypeError("callback provided to sync glob"); + return globSync2(pattern, options2); + } + return new Glob2(pattern, options2, cb); + } + glob2.sync = globSync2; + var GlobSync = glob2.GlobSync = globSync2.GlobSync; + glob2.glob = glob2; + function extend2(origin, add) { + if (add === null || typeof add !== "object") { + return origin; + } + var keys = Object.keys(add); + var i = keys.length; + while (i--) { + origin[keys[i]] = add[keys[i]]; + } + return origin; + } + glob2.hasMagic = function(pattern, options_) { + var options2 = extend2({}, options_); + options2.noprocess = true; + var g = new Glob2(pattern, options2); + var set = g.minimatch.set; + if (!pattern) + return false; + if (set.length > 1) + return true; + for (var j = 0; j < set[0].length; j++) { + if (typeof set[0][j] !== "string") + return true; + } + return false; + }; + glob2.Glob = Glob2; + inherits3(Glob2, EE); + function Glob2(pattern, options2, cb) { + if (typeof options2 === "function") { + cb = options2; + options2 = null; + } + if (options2 && options2.sync) { + if (cb) + throw new TypeError("callback provided to sync glob"); + return new GlobSync(pattern, options2); + } + if (!(this instanceof Glob2)) + return new Glob2(pattern, options2, cb); + setopts(this, pattern, options2); + this._didRealPath = false; + var n = this.minimatch.set.length; + this.matches = new Array(n); + if (typeof cb === "function") { + cb = once(cb); + this.on("error", cb); + this.on("end", function(matches) { + cb(null, matches); + }); + } + var self2 = this; + this._processing = 0; + this._emitQueue = []; + this._processQueue = []; + this.paused = false; + if (this.noprocess) + return this; + if (n === 0) + return done(); + var sync2 = true; + for (var i = 0; i < n; i++) { + this._process(this.minimatch.set[i], i, false, done); + } + sync2 = false; + function done() { + --self2._processing; + if (self2._processing <= 0) { + if (sync2) { + process.nextTick(function() { + self2._finish(); + }); + } else { + self2._finish(); + } + } + } + } + Glob2.prototype._finish = function() { + assert2(this instanceof Glob2); + if (this.aborted) + return; + if (this.realpath && !this._didRealpath) + return this._realpath(); + common.finish(this); + this.emit("end", this.found); + }; + Glob2.prototype._realpath = function() { + if (this._didRealpath) + return; + this._didRealpath = true; + var n = this.matches.length; + if (n === 0) + return this._finish(); + var self2 = this; + for (var i = 0; i < this.matches.length; i++) + this._realpathSet(i, next); + function next() { + if (--n === 0) + self2._finish(); + } + }; + Glob2.prototype._realpathSet = function(index, cb) { + var matchset = this.matches[index]; + if (!matchset) + return cb(); + var found = Object.keys(matchset); + var self2 = this; + var n = found.length; + if (n === 0) + return cb(); + var set = this.matches[index] = /* @__PURE__ */ Object.create(null); + found.forEach(function(p, i) { + p = self2._makeAbs(p); + rp.realpath(p, self2.realpathCache, function(er, real) { + if (!er) + set[real] = true; + else if (er.syscall === "stat") + set[p] = true; + else + self2.emit("error", er); + if (--n === 0) { + self2.matches[index] = set; + cb(); + } + }); + }); + }; + Glob2.prototype._mark = function(p) { + return common.mark(this, p); + }; + Glob2.prototype._makeAbs = function(f) { + return common.makeAbs(this, f); + }; + Glob2.prototype.abort = function() { + this.aborted = true; + this.emit("abort"); + }; + Glob2.prototype.pause = function() { + if (!this.paused) { + this.paused = true; + this.emit("pause"); + } + }; + Glob2.prototype.resume = function() { + if (this.paused) { + this.emit("resume"); + this.paused = false; + if (this._emitQueue.length) { + var eq = this._emitQueue.slice(0); + this._emitQueue.length = 0; + for (var i = 0; i < eq.length; i++) { + var e = eq[i]; + this._emitMatch(e[0], e[1]); + } + } + if (this._processQueue.length) { + var pq = this._processQueue.slice(0); + this._processQueue.length = 0; + for (var i = 0; i < pq.length; i++) { + var p = pq[i]; + this._processing--; + this._process(p[0], p[1], p[2], p[3]); + } + } + } + }; + Glob2.prototype._process = function(pattern, index, inGlobStar, cb) { + assert2(this instanceof Glob2); + assert2(typeof cb === "function"); + if (this.aborted) + return; + this._processing++; + if (this.paused) { + this._processQueue.push([pattern, index, inGlobStar, cb]); + return; + } + var n = 0; + while (typeof pattern[n] === "string") { + n++; + } + var prefix; + switch (n) { + case pattern.length: + this._processSimple(pattern.join("/"), index, cb); + return; + case 0: + prefix = null; + break; + default: + prefix = pattern.slice(0, n).join("/"); + break; + } + var remain = pattern.slice(n); + var read; + if (prefix === null) + read = "."; + else if (isAbsolute(prefix) || isAbsolute(pattern.map(function(p) { + return typeof p === "string" ? p : "[*]"; + }).join("/"))) { + if (!prefix || !isAbsolute(prefix)) + prefix = "/" + prefix; + read = prefix; + } else + read = prefix; + var abs = this._makeAbs(read); + if (childrenIgnored(this, read)) + return cb(); + var isGlobStar = remain[0] === minimatch2.GLOBSTAR; + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb); + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb); + }; + Glob2.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar, cb) { + var self2 = this; + this._readdir(abs, inGlobStar, function(er, entries) { + return self2._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb); + }); + }; + Glob2.prototype._processReaddir2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { + if (!entries) + return cb(); + var pn = remain[0]; + var negate = !!this.minimatch.negate; + var rawGlob = pn._glob; + var dotOk = this.dot || rawGlob.charAt(0) === "."; + var matchedEntries = []; + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (e.charAt(0) !== "." || dotOk) { + var m; + if (negate && !prefix) { + m = !e.match(pn); + } else { + m = e.match(pn); + } + if (m) + matchedEntries.push(e); + } + } + var len = matchedEntries.length; + if (len === 0) + return cb(); + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + if (prefix) { + if (prefix !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + if (e.charAt(0) === "/" && !this.nomount) { + e = path30.join(this.root, e); + } + this._emitMatch(index, e); + } + return cb(); + } + remain.shift(); + for (var i = 0; i < len; i++) { + var e = matchedEntries[i]; + var newPattern; + if (prefix) { + if (prefix !== "/") + e = prefix + "/" + e; + else + e = prefix + e; + } + this._process([e].concat(remain), index, inGlobStar, cb); + } + cb(); + }; + Glob2.prototype._emitMatch = function(index, e) { + if (this.aborted) + return; + if (isIgnored(this, e)) + return; + if (this.paused) { + this._emitQueue.push([index, e]); + return; + } + var abs = isAbsolute(e) ? e : this._makeAbs(e); + if (this.mark) + e = this._mark(e); + if (this.absolute) + e = abs; + if (this.matches[index][e]) + return; + if (this.nodir) { + var c = this.cache[abs]; + if (c === "DIR" || Array.isArray(c)) + return; + } + this.matches[index][e] = true; + var st = this.statCache[abs]; + if (st) + this.emit("stat", e, st); + this.emit("match", e); + }; + Glob2.prototype._readdirInGlobStar = function(abs, cb) { + if (this.aborted) + return; + if (this.follow) + return this._readdir(abs, false, cb); + var lstatkey = "lstat\0" + abs; + var self2 = this; + var lstatcb = inflight(lstatkey, lstatcb_); + if (lstatcb) + self2.fs.lstat(abs, lstatcb); + function lstatcb_(er, lstat6) { + if (er && er.code === "ENOENT") + return cb(); + var isSym = lstat6 && lstat6.isSymbolicLink(); + self2.symlinks[abs] = isSym; + if (!isSym && lstat6 && !lstat6.isDirectory()) { + self2.cache[abs] = "FILE"; + cb(); + } else + self2._readdir(abs, false, cb); + } + }; + Glob2.prototype._readdir = function(abs, inGlobStar, cb) { + if (this.aborted) + return; + cb = inflight("readdir\0" + abs + "\0" + inGlobStar, cb); + if (!cb) + return; + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs, cb); + if (ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (!c || c === "FILE") + return cb(); + if (Array.isArray(c)) + return cb(null, c); + } + var self2 = this; + self2.fs.readdir(abs, readdirCb(this, abs, cb)); + }; + function readdirCb(self2, abs, cb) { + return function(er, entries) { + if (er) + self2._readdirError(abs, er, cb); + else + self2._readdirEntries(abs, entries, cb); + }; + } + Glob2.prototype._readdirEntries = function(abs, entries, cb) { + if (this.aborted) + return; + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i++) { + var e = entries[i]; + if (abs === "/") + e = abs + e; + else + e = abs + "/" + e; + this.cache[e] = true; + } + } + this.cache[abs] = entries; + return cb(null, entries); + }; + Glob2.prototype._readdirError = function(f, er, cb) { + if (this.aborted) + return; + switch (er.code) { + case "ENOTSUP": + case "ENOTDIR": + var abs = this._makeAbs(f); + this.cache[abs] = "FILE"; + if (abs === this.cwdAbs) { + var error = new Error(er.code + " invalid cwd " + this.cwd); + error.path = this.cwd; + error.code = er.code; + this.emit("error", error); + this.abort(); + } + break; + case "ENOENT": + case "ELOOP": + case "ENAMETOOLONG": + case "UNKNOWN": + this.cache[this._makeAbs(f)] = false; + break; + default: + this.cache[this._makeAbs(f)] = false; + if (this.strict) { + this.emit("error", er); + this.abort(); + } + if (!this.silent) + console.error("glob error", er); + break; + } + return cb(); + }; + Glob2.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar, cb) { + var self2 = this; + this._readdir(abs, inGlobStar, function(er, entries) { + self2._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb); + }); + }; + Glob2.prototype._processGlobStar2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { + if (!entries) + return cb(); + var remainWithoutGlobStar = remain.slice(1); + var gspref = prefix ? [prefix] : []; + var noGlobStar = gspref.concat(remainWithoutGlobStar); + this._process(noGlobStar, index, false, cb); + var isSym = this.symlinks[abs]; + var len = entries.length; + if (isSym && inGlobStar) + return cb(); + for (var i = 0; i < len; i++) { + var e = entries[i]; + if (e.charAt(0) === "." && !this.dot) + continue; + var instead = gspref.concat(entries[i], remainWithoutGlobStar); + this._process(instead, index, true, cb); + var below = gspref.concat(entries[i], remain); + this._process(below, index, true, cb); + } + cb(); + }; + Glob2.prototype._processSimple = function(prefix, index, cb) { + var self2 = this; + this._stat(prefix, function(er, exists) { + self2._processSimple2(prefix, index, er, exists, cb); + }); + }; + Glob2.prototype._processSimple2 = function(prefix, index, er, exists, cb) { + if (!this.matches[index]) + this.matches[index] = /* @__PURE__ */ Object.create(null); + if (!exists) + return cb(); + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix); + if (prefix.charAt(0) === "/") { + prefix = path30.join(this.root, prefix); + } else { + prefix = path30.resolve(this.root, prefix); + if (trail) + prefix += "/"; + } + } + if (process.platform === "win32") + prefix = prefix.replace(/\\/g, "/"); + this._emitMatch(index, prefix); + cb(); + }; + Glob2.prototype._stat = function(f, cb) { + var abs = this._makeAbs(f); + var needDir = f.slice(-1) === "/"; + if (f.length > this.maxLength) + return cb(); + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs]; + if (Array.isArray(c)) + c = "DIR"; + if (!needDir || c === "DIR") + return cb(null, c); + if (needDir && c === "FILE") + return cb(); + } + var exists; + var stat7 = this.statCache[abs]; + if (stat7 !== void 0) { + if (stat7 === false) + return cb(null, stat7); + else { + var type2 = stat7.isDirectory() ? "DIR" : "FILE"; + if (needDir && type2 === "FILE") + return cb(); + else + return cb(null, type2, stat7); + } + } + var self2 = this; + var statcb = inflight("stat\0" + abs, lstatcb_); + if (statcb) + self2.fs.lstat(abs, statcb); + function lstatcb_(er, lstat6) { + if (lstat6 && lstat6.isSymbolicLink()) { + return self2.fs.stat(abs, function(er2, stat8) { + if (er2) + self2._stat2(f, abs, null, lstat6, cb); + else + self2._stat2(f, abs, er2, stat8, cb); + }); + } else { + self2._stat2(f, abs, er, lstat6, cb); + } + } + }; + Glob2.prototype._stat2 = function(f, abs, er, stat7, cb) { + if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { + this.statCache[abs] = false; + return cb(); + } + var needDir = f.slice(-1) === "/"; + this.statCache[abs] = stat7; + if (abs.slice(-1) === "/" && stat7 && !stat7.isDirectory()) + return cb(null, false, stat7); + var c = true; + if (stat7) + c = stat7.isDirectory() ? "DIR" : "FILE"; + this.cache[abs] = this.cache[abs] || c; + if (needDir && c === "FILE") + return cb(); + return cb(null, c, stat7); + }; + } +}); + +// ../node_modules/.pnpm/rimraf@2.7.1/node_modules/rimraf/rimraf.js +var require_rimraf = __commonJS({ + "../node_modules/.pnpm/rimraf@2.7.1/node_modules/rimraf/rimraf.js"(exports2, module2) { + module2.exports = rimraf2; + rimraf2.sync = rimrafSync2; + var assert2 = require("assert"); + var path30 = require("path"); + var fs6 = require("fs"); + var glob2 = void 0; + try { + glob2 = require_glob(); + } catch (_err) { + } + var _0666 = parseInt("666", 8); + var defaultGlobOpts = { + nosort: true, + silent: true + }; + var timeout = 0; + var isWindows = process.platform === "win32"; + function defaults4(options2) { + var methods = [ + "unlink", + "chmod", + "stat", + "lstat", + "rmdir", + "readdir" + ]; + methods.forEach(function(m) { + options2[m] = options2[m] || fs6[m]; + m = m + "Sync"; + options2[m] = options2[m] || fs6[m]; + }); + options2.maxBusyTries = options2.maxBusyTries || 3; + options2.emfileWait = options2.emfileWait || 1e3; + if (options2.glob === false) { + options2.disableGlob = true; + } + if (options2.disableGlob !== true && glob2 === void 0) { + throw Error("glob dependency not found, set `options.disableGlob = true` if intentional"); + } + options2.disableGlob = options2.disableGlob || false; + options2.glob = options2.glob || defaultGlobOpts; + } + function rimraf2(p, options2, cb) { + if (typeof options2 === "function") { + cb = options2; + options2 = {}; + } + assert2(p, "rimraf: missing path"); + assert2.equal(typeof p, "string", "rimraf: path should be a string"); + assert2.equal(typeof cb, "function", "rimraf: callback function required"); + assert2(options2, "rimraf: invalid options argument provided"); + assert2.equal(typeof options2, "object", "rimraf: options should be object"); + defaults4(options2); + var busyTries = 0; + var errState = null; + var n = 0; + if (options2.disableGlob || !glob2.hasMagic(p)) + return afterGlob(null, [p]); + options2.lstat(p, function(er, stat7) { + if (!er) + return afterGlob(null, [p]); + glob2(p, options2.glob, afterGlob); + }); + function next(er) { + errState = errState || er; + if (--n === 0) + cb(errState); + } + function afterGlob(er, results) { + if (er) + return cb(er); + n = results.length; + if (n === 0) + return cb(); + results.forEach(function(p2) { + rimraf_2(p2, options2, function CB(er2) { + if (er2) { + if ((er2.code === "EBUSY" || er2.code === "ENOTEMPTY" || er2.code === "EPERM") && busyTries < options2.maxBusyTries) { + busyTries++; + var time = busyTries * 100; + return setTimeout(function() { + rimraf_2(p2, options2, CB); + }, time); + } + if (er2.code === "EMFILE" && timeout < options2.emfileWait) { + return setTimeout(function() { + rimraf_2(p2, options2, CB); + }, timeout++); + } + if (er2.code === "ENOENT") + er2 = null; + } + timeout = 0; + next(er2); + }); + }); + } + } + function rimraf_2(p, options2, cb) { + assert2(p); + assert2(options2); + assert2(typeof cb === "function"); + options2.lstat(p, function(er, st) { + if (er && er.code === "ENOENT") + return cb(null); + if (er && er.code === "EPERM" && isWindows) + fixWinEPERM(p, options2, er, cb); + if (st && st.isDirectory()) + return rmdir5(p, options2, er, cb); + options2.unlink(p, function(er2) { + if (er2) { + if (er2.code === "ENOENT") + return cb(null); + if (er2.code === "EPERM") + return isWindows ? fixWinEPERM(p, options2, er2, cb) : rmdir5(p, options2, er2, cb); + if (er2.code === "EISDIR") + return rmdir5(p, options2, er2, cb); + } + return cb(er2); + }); + }); + } + function fixWinEPERM(p, options2, er, cb) { + assert2(p); + assert2(options2); + assert2(typeof cb === "function"); + if (er) + assert2(er instanceof Error); + options2.chmod(p, _0666, function(er2) { + if (er2) + cb(er2.code === "ENOENT" ? null : er); + else + options2.stat(p, function(er3, stats) { + if (er3) + cb(er3.code === "ENOENT" ? null : er); + else if (stats.isDirectory()) + rmdir5(p, options2, er, cb); + else + options2.unlink(p, cb); + }); + }); + } + function fixWinEPERMSync(p, options2, er) { + assert2(p); + assert2(options2); + if (er) + assert2(er instanceof Error); + try { + options2.chmodSync(p, _0666); + } catch (er2) { + if (er2.code === "ENOENT") + return; + else + throw er; + } + try { + var stats = options2.statSync(p); + } catch (er3) { + if (er3.code === "ENOENT") + return; + else + throw er; + } + if (stats.isDirectory()) + rmdirSync2(p, options2, er); + else + options2.unlinkSync(p); + } + function rmdir5(p, options2, originalEr, cb) { + assert2(p); + assert2(options2); + if (originalEr) + assert2(originalEr instanceof Error); + assert2(typeof cb === "function"); + options2.rmdir(p, function(er) { + if (er && (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM")) + rmkids(p, options2, cb); + else if (er && er.code === "ENOTDIR") + cb(originalEr); + else + cb(er); + }); + } + function rmkids(p, options2, cb) { + assert2(p); + assert2(options2); + assert2(typeof cb === "function"); + options2.readdir(p, function(er, files) { + if (er) + return cb(er); + var n = files.length; + if (n === 0) + return options2.rmdir(p, cb); + var errState; + files.forEach(function(f) { + rimraf2(path30.join(p, f), options2, function(er2) { + if (errState) + return; + if (er2) + return cb(errState = er2); + if (--n === 0) + options2.rmdir(p, cb); + }); + }); + }); + } + function rimrafSync2(p, options2) { + options2 = options2 || {}; + defaults4(options2); + assert2(p, "rimraf: missing path"); + assert2.equal(typeof p, "string", "rimraf: path should be a string"); + assert2(options2, "rimraf: missing options"); + assert2.equal(typeof options2, "object", "rimraf: options should be object"); + var results; + if (options2.disableGlob || !glob2.hasMagic(p)) { + results = [p]; + } else { + try { + options2.lstatSync(p); + results = [p]; + } catch (er) { + results = glob2.sync(p, options2.glob); + } + } + if (!results.length) + return; + for (var i = 0; i < results.length; i++) { + var p = results[i]; + try { + var st = options2.lstatSync(p); + } catch (er) { + if (er.code === "ENOENT") + return; + if (er.code === "EPERM" && isWindows) + fixWinEPERMSync(p, options2, er); + } + try { + if (st && st.isDirectory()) + rmdirSync2(p, options2, null); + else + options2.unlinkSync(p); + } catch (er) { + if (er.code === "ENOENT") + return; + if (er.code === "EPERM") + return isWindows ? fixWinEPERMSync(p, options2, er) : rmdirSync2(p, options2, er); + if (er.code !== "EISDIR") + throw er; + rmdirSync2(p, options2, er); + } + } + } + function rmdirSync2(p, options2, originalEr) { + assert2(p); + assert2(options2); + if (originalEr) + assert2(originalEr instanceof Error); + try { + options2.rmdirSync(p); + } catch (er) { + if (er.code === "ENOENT") + return; + if (er.code === "ENOTDIR") + throw originalEr; + if (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM") + rmkidsSync(p, options2); + } + } + function rmkidsSync(p, options2) { + assert2(p); + assert2(options2); + options2.readdirSync(p).forEach(function(f) { + rimrafSync2(path30.join(p, f), options2); + }); + var retries = isWindows ? 100 : 1; + var i = 0; + do { + var threw = true; + try { + var ret2 = options2.rmdirSync(p, options2); + threw = false; + return ret2; + } finally { + if (++i < retries && threw) + continue; + } + } while (true); + } + } +}); + +// ../node_modules/.pnpm/mkdirp@0.5.6/node_modules/mkdirp/index.js +var require_mkdirp = __commonJS({ + "../node_modules/.pnpm/mkdirp@0.5.6/node_modules/mkdirp/index.js"(exports2, module2) { + var path30 = require("path"); + var fs6 = require("fs"); + var _0777 = parseInt("0777", 8); + module2.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP; + function mkdirP(p, opts, f, made) { + if (typeof opts === "function") { + f = opts; + opts = {}; + } else if (!opts || typeof opts !== "object") { + opts = { mode: opts }; + } + var mode = opts.mode; + var xfs = opts.fs || fs6; + if (mode === void 0) { + mode = _0777; + } + if (!made) + made = null; + var cb = f || /* istanbul ignore next */ + function() { + }; + p = path30.resolve(p); + xfs.mkdir(p, mode, function(er) { + if (!er) { + made = made || p; + return cb(null, made); + } + switch (er.code) { + case "ENOENT": + if (path30.dirname(p) === p) + return cb(er); + mkdirP(path30.dirname(p), opts, function(er2, made2) { + if (er2) + cb(er2, made2); + else + mkdirP(p, opts, cb, made2); + }); + break; + default: + xfs.stat(p, function(er2, stat7) { + if (er2 || !stat7.isDirectory()) + cb(er, made); + else + cb(null, made); + }); + break; + } + }); + } + mkdirP.sync = function sync2(p, opts, made) { + if (!opts || typeof opts !== "object") { + opts = { mode: opts }; + } + var mode = opts.mode; + var xfs = opts.fs || fs6; + if (mode === void 0) { + mode = _0777; + } + if (!made) + made = null; + p = path30.resolve(p); + try { + xfs.mkdirSync(p, mode); + made = made || p; + } catch (err0) { + switch (err0.code) { + case "ENOENT": + made = sync2(path30.dirname(p), opts, made); + sync2(p, opts, made); + break; + default: + var stat7; + try { + stat7 = xfs.statSync(p); + } catch (err1) { + throw err0; + } + if (!stat7.isDirectory()) + throw err0; + break; + } + } + return made; + }; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/collect.js +var require_collect = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/collect.js"(exports2, module2) { + module2.exports = collect; + function collect(stream5) { + if (stream5._collected) + return; + if (stream5._paused) + return stream5.on("resume", collect.bind(null, stream5)); + stream5._collected = true; + stream5.pause(); + stream5.on("data", save); + stream5.on("end", save); + var buf = []; + function save(b) { + if (typeof b === "string") + b = new Buffer(b); + if (Buffer.isBuffer(b) && !b.length) + return; + buf.push(b); + } + stream5.on("entry", saveEntry); + var entryBuffer = []; + function saveEntry(e) { + collect(e); + entryBuffer.push(e); + } + stream5.on("proxy", proxyPause); + function proxyPause(p) { + p.pause(); + } + stream5.pipe = function(orig) { + return function(dest) { + var e = 0; + (function unblockEntry() { + var entry = entryBuffer[e++]; + if (!entry) + return resume(); + entry.on("end", unblockEntry); + if (dest) + dest.add(entry); + else + stream5.emit("entry", entry); + })(); + function resume() { + stream5.removeListener("entry", saveEntry); + stream5.removeListener("data", save); + stream5.removeListener("end", save); + stream5.pipe = orig; + if (dest) + stream5.pipe(dest); + buf.forEach(function(b) { + if (b) + stream5.emit("data", b); + else + stream5.emit("end"); + }); + stream5.resume(); + } + return dest; + }; + }(stream5.pipe); + } + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/dir-writer.js +var require_dir_writer = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/dir-writer.js"(exports2, module2) { + module2.exports = DirWriter; + var Writer = require_writer(); + var inherits3 = require_inherits(); + var mkdir6 = require_mkdirp(); + var path30 = require("path"); + var collect = require_collect(); + inherits3(DirWriter, Writer); + function DirWriter(props) { + var self2 = this; + if (!(self2 instanceof DirWriter)) { + self2.error("DirWriter must be called as constructor.", null, true); + } + if (props.type !== "Directory" || !props.Directory) { + self2.error("Non-directory type " + props.type + " " + JSON.stringify(props), null, true); + } + Writer.call(this, props); + } + DirWriter.prototype._create = function() { + var self2 = this; + mkdir6(self2._path, Writer.dirmode, function(er) { + if (er) + return self2.error(er); + self2.ready = true; + self2.emit("ready"); + self2._process(); + }); + }; + DirWriter.prototype.write = function() { + return true; + }; + DirWriter.prototype.end = function() { + this._ended = true; + this._process(); + }; + DirWriter.prototype.add = function(entry) { + var self2 = this; + collect(entry); + if (!self2.ready || self2._currentEntry) { + self2._buffer.push(entry); + return false; + } + if (self2._ended) { + return self2.error("add after end"); + } + self2._buffer.push(entry); + self2._process(); + return this._buffer.length === 0; + }; + DirWriter.prototype._process = function() { + var self2 = this; + if (self2._processing) + return; + var entry = self2._buffer.shift(); + if (!entry) { + self2.emit("drain"); + if (self2._ended) + self2._finish(); + return; + } + self2._processing = true; + self2.emit("entry", entry); + var p = entry; + var pp; + do { + pp = p._path || p.path; + if (pp === self2.root._path || pp === self2._path || pp && pp.indexOf(self2._path) === 0) { + self2._processing = false; + if (entry._collected) + entry.pipe(); + return self2._process(); + } + p = p.parent; + } while (p); + var props = { + parent: self2, + root: self2.root || self2, + type: entry.type, + depth: self2.depth + 1 + }; + pp = entry._path || entry.path || entry.props.path; + if (entry.parent) { + pp = pp.substr(entry.parent._path.length + 1); + } + props.path = path30.join(self2.path, path30.join("/", pp)); + props.filter = self2.filter; + Object.keys(entry.props).forEach(function(k) { + if (!props.hasOwnProperty(k)) { + props[k] = entry.props[k]; + } + }); + var child = self2._currentChild = new Writer(props); + child.on("ready", function() { + entry.pipe(child); + entry.resume(); + }); + child.on("error", function(er) { + if (child._swallowErrors) { + self2.warn(er); + child.emit("end"); + child.emit("close"); + } else { + self2.emit("error", er); + } + }); + child.on("close", onend); + var ended = false; + function onend() { + if (ended) + return; + ended = true; + self2._currentChild = null; + self2._processing = false; + self2._process(); + } + }; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/link-writer.js +var require_link_writer = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/link-writer.js"(exports2, module2) { + module2.exports = LinkWriter; + var fs6 = require_graceful_fs(); + var Writer = require_writer(); + var inherits3 = require_inherits(); + var path30 = require("path"); + var rimraf2 = require_rimraf(); + inherits3(LinkWriter, Writer); + function LinkWriter(props) { + var self2 = this; + if (!(self2 instanceof LinkWriter)) { + throw new Error("LinkWriter must be called as constructor."); + } + if (!(props.type === "Link" && props.Link || props.type === "SymbolicLink" && props.SymbolicLink)) { + throw new Error("Non-link type " + props.type); + } + if (props.linkpath === "") + props.linkpath = "."; + if (!props.linkpath) { + self2.error("Need linkpath property to create " + props.type); + } + Writer.call(this, props); + } + LinkWriter.prototype._create = function() { + var self2 = this; + var hard = self2.type === "Link" || process.platform === "win32"; + var link = hard ? "link" : "symlink"; + var lp = hard ? path30.resolve(self2.dirname, self2.linkpath) : self2.linkpath; + if (hard) + return clobber(self2, lp, link); + fs6.readlink(self2._path, function(er, p) { + if (p && p === lp) + return finish(self2); + clobber(self2, lp, link); + }); + }; + function clobber(self2, lp, link) { + rimraf2(self2._path, function(er) { + if (er) + return self2.error(er); + create2(self2, lp, link); + }); + } + function create2(self2, lp, link) { + fs6[link](lp, self2._path, function(er) { + if (er) { + if ((er.code === "ENOENT" || er.code === "EACCES" || er.code === "EPERM") && process.platform === "win32") { + self2.ready = true; + self2.emit("ready"); + self2.emit("end"); + self2.emit("close"); + self2.end = self2._finish = function() { + }; + } else + return self2.error(er); + } + finish(self2); + }); + } + function finish(self2) { + self2.ready = true; + self2.emit("ready"); + if (self2._ended && !self2._finished) + self2._finish(); + } + LinkWriter.prototype.end = function() { + this._ended = true; + if (this.ready) { + this._finished = true; + this._finish(); + } + }; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/file-writer.js +var require_file_writer = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/file-writer.js"(exports2, module2) { + module2.exports = FileWriter; + var fs6 = require_graceful_fs(); + var Writer = require_writer(); + var inherits3 = require_inherits(); + var EOF2 = {}; + inherits3(FileWriter, Writer); + function FileWriter(props) { + var self2 = this; + if (!(self2 instanceof FileWriter)) { + throw new Error("FileWriter must be called as constructor."); + } + if (props.type !== "File" || !props.File) { + throw new Error("Non-file type " + props.type); + } + self2._buffer = []; + self2._bytesWritten = 0; + Writer.call(this, props); + } + FileWriter.prototype._create = function() { + var self2 = this; + if (self2._stream) + return; + var so = {}; + if (self2.props.flags) + so.flags = self2.props.flags; + so.mode = Writer.filemode; + if (self2._old && self2._old.blksize) + so.bufferSize = self2._old.blksize; + self2._stream = fs6.createWriteStream(self2._path, so); + self2._stream.on("open", function() { + self2.ready = true; + self2._buffer.forEach(function(c) { + if (c === EOF2) + self2._stream.end(); + else + self2._stream.write(c); + }); + self2.emit("ready"); + self2.emit("drain"); + }); + self2._stream.on("error", function(er) { + self2.emit("error", er); + }); + self2._stream.on("drain", function() { + self2.emit("drain"); + }); + self2._stream.on("close", function() { + self2._finish(); + }); + }; + FileWriter.prototype.write = function(c) { + var self2 = this; + self2._bytesWritten += c.length; + if (!self2.ready) { + if (!Buffer.isBuffer(c) && typeof c !== "string") { + throw new Error("invalid write data"); + } + self2._buffer.push(c); + return false; + } + var ret2 = self2._stream.write(c); + if (ret2 === false && self2._stream._queue) { + return self2._stream._queue.length <= 2; + } else { + return ret2; + } + }; + FileWriter.prototype.end = function(c) { + var self2 = this; + if (c) + self2.write(c); + if (!self2.ready) { + self2._buffer.push(EOF2); + return false; + } + return self2._stream.end(); + }; + FileWriter.prototype._finish = function() { + var self2 = this; + if (typeof self2.size === "number" && self2._bytesWritten !== self2.size) { + self2.error( + "Did not get expected byte count.\nexpect: " + self2.size + "\nactual: " + self2._bytesWritten + ); + } + Writer.prototype._finish.call(self2); + }; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/proxy-writer.js +var require_proxy_writer = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/proxy-writer.js"(exports2, module2) { + module2.exports = ProxyWriter; + var Writer = require_writer(); + var getType = require_get_type(); + var inherits3 = require_inherits(); + var collect = require_collect(); + var fs6 = require("fs"); + inherits3(ProxyWriter, Writer); + function ProxyWriter(props) { + var self2 = this; + if (!(self2 instanceof ProxyWriter)) { + throw new Error("ProxyWriter must be called as constructor."); + } + self2.props = props; + self2._needDrain = false; + Writer.call(self2, props); + } + ProxyWriter.prototype._stat = function() { + var self2 = this; + var props = self2.props; + var stat7 = props.follow ? "stat" : "lstat"; + fs6[stat7](props.path, function(er, current) { + var type2; + if (er || !current) { + type2 = "File"; + } else { + type2 = getType(current); + } + props[type2] = true; + props.type = self2.type = type2; + self2._old = current; + self2._addProxy(Writer(props, current)); + }); + }; + ProxyWriter.prototype._addProxy = function(proxy2) { + var self2 = this; + if (self2._proxy) { + return self2.error("proxy already set"); + } + self2._proxy = proxy2; + [ + "ready", + "error", + "close", + "pipe", + "drain", + "warn" + ].forEach(function(ev) { + proxy2.on(ev, self2.emit.bind(self2, ev)); + }); + self2.emit("proxy", proxy2); + var calls = self2._buffer; + calls.forEach(function(c) { + proxy2[c[0]].apply(proxy2, c[1]); + }); + self2._buffer.length = 0; + if (self2._needsDrain) + self2.emit("drain"); + }; + ProxyWriter.prototype.add = function(entry) { + collect(entry); + if (!this._proxy) { + this._buffer.push(["add", [entry]]); + this._needDrain = true; + return false; + } + return this._proxy.add(entry); + }; + ProxyWriter.prototype.write = function(c) { + if (!this._proxy) { + this._buffer.push(["write", [c]]); + this._needDrain = true; + return false; + } + return this._proxy.write(c); + }; + ProxyWriter.prototype.end = function(c) { + if (!this._proxy) { + this._buffer.push(["end", [c]]); + return false; + } + return this._proxy.end(c); + }; + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/writer.js +var require_writer = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/writer.js"(exports2, module2) { + module2.exports = Writer; + var fs6 = require_graceful_fs(); + var inherits3 = require_inherits(); + var rimraf2 = require_rimraf(); + var mkdir6 = require_mkdirp(); + var path30 = require("path"); + var umask = process.platform === "win32" ? 0 : process.umask(); + var getType = require_get_type(); + var Abstract = require_abstract(); + inherits3(Writer, Abstract); + Writer.dirmode = parseInt("0777", 8) & ~umask; + Writer.filemode = parseInt("0666", 8) & ~umask; + var DirWriter = require_dir_writer(); + var LinkWriter = require_link_writer(); + var FileWriter = require_file_writer(); + var ProxyWriter = require_proxy_writer(); + function Writer(props, current) { + var self2 = this; + if (typeof props === "string") { + props = { path: props }; + } + var type2 = getType(props); + var ClassType = Writer; + switch (type2) { + case "Directory": + ClassType = DirWriter; + break; + case "File": + ClassType = FileWriter; + break; + case "Link": + case "SymbolicLink": + ClassType = LinkWriter; + break; + case null: + default: + ClassType = ProxyWriter; + break; + } + if (!(self2 instanceof ClassType)) + return new ClassType(props); + Abstract.call(self2); + if (!props.path) + self2.error("Must provide a path", null, true); + self2.type = props.type; + self2.props = props; + self2.depth = props.depth || 0; + self2.clobber = props.clobber === false ? props.clobber : true; + self2.parent = props.parent || null; + self2.root = props.root || props.parent && props.parent.root || self2; + self2._path = self2.path = path30.resolve(props.path); + if (process.platform === "win32") { + self2.path = self2._path = self2.path.replace(/\?/g, "_"); + if (self2._path.length >= 260) { + self2._swallowErrors = true; + self2._path = "\\\\?\\" + self2.path.replace(/\//g, "\\"); + } + } + self2.basename = path30.basename(props.path); + self2.dirname = path30.dirname(props.path); + self2.linkpath = props.linkpath || null; + props.parent = props.root = null; + self2.size = props.size; + if (typeof props.mode === "string") { + props.mode = parseInt(props.mode, 8); + } + self2.readable = false; + self2.writable = true; + self2._buffer = []; + self2.ready = false; + self2.filter = typeof props.filter === "function" ? props.filter : null; + self2._stat(current); + } + Writer.prototype._create = function() { + var self2 = this; + fs6[self2.props.follow ? "stat" : "lstat"](self2._path, function(er) { + if (er) { + return self2.warn("Cannot create " + self2._path + "\nUnsupported type: " + self2.type, "ENOTSUP"); + } + self2._finish(); + }); + }; + Writer.prototype._stat = function(current) { + var self2 = this; + var props = self2.props; + var stat7 = props.follow ? "stat" : "lstat"; + var who = self2._proxy || self2; + if (current) + statCb(null, current); + else + fs6[stat7](self2._path, statCb); + function statCb(er, current2) { + if (self2.filter && !self2.filter.call(who, who, current2)) { + self2._aborted = true; + self2.emit("end"); + self2.emit("close"); + return; + } + if (er || !current2) { + return create2(self2); + } + self2._old = current2; + var currentType = getType(current2); + if (currentType !== self2.type || self2.type === "File" && current2.nlink > 1) { + return rimraf2(self2._path, function(er2) { + if (er2) + return self2.error(er2); + self2._old = null; + create2(self2); + }); + } + create2(self2); + } + }; + function create2(self2) { + mkdir6(path30.dirname(self2._path), Writer.dirmode, function(er, made) { + if (er) + return self2.error(er); + self2._madeDir = made; + return self2._create(); + }); + } + function endChmod(self2, want, current, path31, cb) { + var wantMode = want.mode; + var chmod4 = want.follow || self2.type !== "SymbolicLink" ? "chmod" : "lchmod"; + if (!fs6[chmod4]) + return cb(); + if (typeof wantMode !== "number") + return cb(); + var curMode = current.mode & parseInt("0777", 8); + wantMode = wantMode & parseInt("0777", 8); + if (wantMode === curMode) + return cb(); + fs6[chmod4](path31, wantMode, cb); + } + function endChown(self2, want, current, path31, cb) { + if (process.platform === "win32") + return cb(); + if (!process.getuid || process.getuid() !== 0) + return cb(); + if (typeof want.uid !== "number" && typeof want.gid !== "number") + return cb(); + if (current.uid === want.uid && current.gid === want.gid) + return cb(); + var chown = self2.props.follow || self2.type !== "SymbolicLink" ? "chown" : "lchown"; + if (!fs6[chown]) + return cb(); + if (typeof want.uid !== "number") + want.uid = current.uid; + if (typeof want.gid !== "number") + want.gid = current.gid; + fs6[chown](path31, want.uid, want.gid, cb); + } + function endUtimes(self2, want, current, path31, cb) { + if (!fs6.utimes || process.platform === "win32") + return cb(); + var utimes = want.follow || self2.type !== "SymbolicLink" ? "utimes" : "lutimes"; + if (utimes === "lutimes" && !fs6[utimes]) { + utimes = "utimes"; + } + if (!fs6[utimes]) + return cb(); + var curA = current.atime; + var curM = current.mtime; + var meA = want.atime; + var meM = want.mtime; + if (meA === void 0) + meA = curA; + if (meM === void 0) + meM = curM; + if (!isDate2(meA)) + meA = new Date(meA); + if (!isDate2(meM)) + meA = new Date(meM); + if (meA.getTime() === curA.getTime() && meM.getTime() === curM.getTime()) + return cb(); + fs6[utimes](path31, meA, meM, cb); + } + Writer.prototype._finish = function() { + var self2 = this; + if (self2._finishing) + return; + self2._finishing = true; + var todo = 0; + var errState = null; + var done = false; + if (self2._old) { + self2._old.atime = /* @__PURE__ */ new Date(0); + self2._old.mtime = /* @__PURE__ */ new Date(0); + setProps(self2._old); + } else { + var stat7 = self2.props.follow ? "stat" : "lstat"; + fs6[stat7](self2._path, function(er, current) { + if (er) { + if (er.code === "ENOENT" && (self2.type === "Link" || self2.type === "SymbolicLink") && process.platform === "win32") { + self2.ready = true; + self2.emit("ready"); + self2.emit("end"); + self2.emit("close"); + self2.end = self2._finish = function() { + }; + return; + } else + return self2.error(er); + } + setProps(self2._old = current); + }); + } + return; + function setProps(current) { + todo += 3; + endChmod(self2, self2.props, current, self2._path, next("chmod")); + endChown(self2, self2.props, current, self2._path, next("chown")); + endUtimes(self2, self2.props, current, self2._path, next("utimes")); + } + function next(what) { + return function(er) { + if (errState) + return; + if (er) { + er.fstream_finish_call = what; + return self2.error(errState = er); + } + if (--todo > 0) + return; + if (done) + return; + done = true; + if (!self2._madeDir) + return end(); + else + endMadeDir(self2, self2._path, end); + function end(er2) { + if (er2) { + er2.fstream_finish_call = "setupMadeDir"; + return self2.error(er2); + } + self2.emit("end"); + self2.emit("close"); + } + }; + } + }; + function endMadeDir(self2, p, cb) { + var made = self2._madeDir; + var d = path30.dirname(p); + endMadeDir_(self2, d, function(er) { + if (er) + return cb(er); + if (d === made) { + return cb(); + } + endMadeDir(self2, d, cb); + }); + } + function endMadeDir_(self2, p, cb) { + var dirProps = {}; + Object.keys(self2.props).forEach(function(k) { + dirProps[k] = self2.props[k]; + if (k === "mode" && self2.type !== "Directory") { + dirProps[k] = dirProps[k] | parseInt("0111", 8); + } + }); + var todo = 3; + var errState = null; + fs6.stat(p, function(er, current) { + if (er) + return cb(errState = er); + endChmod(self2, dirProps, current, p, next); + endChown(self2, dirProps, current, p, next); + endUtimes(self2, dirProps, current, p, next); + }); + function next(er) { + if (errState) + return; + if (er) + return cb(errState = er); + if (--todo === 0) + return cb(); + } + } + Writer.prototype.pipe = function() { + this.error("Can't pipe from writable stream"); + }; + Writer.prototype.add = function() { + this.error("Can't add to non-Directory type"); + }; + Writer.prototype.write = function() { + return true; + }; + function objectToString(d) { + return Object.prototype.toString.call(d); + } + function isDate2(d) { + return typeof d === "object" && objectToString(d) === "[object Date]"; + } + } +}); + +// ../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/fstream.js +var require_fstream = __commonJS({ + "../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/fstream.js"(exports2) { + exports2.Abstract = require_abstract(); + exports2.Reader = require_reader(); + exports2.Writer = require_writer(); + exports2.File = { + Reader: require_file_reader(), + Writer: require_file_writer() + }; + exports2.Dir = { + Reader: require_dir_reader(), + Writer: require_dir_writer() + }; + exports2.Link = { + Reader: require_link_reader(), + Writer: require_link_writer() + }; + exports2.Proxy = { + Reader: require_proxy_reader(), + Writer: require_proxy_writer() + }; + exports2.Reader.Dir = exports2.DirReader = exports2.Dir.Reader; + exports2.Reader.File = exports2.FileReader = exports2.File.Reader; + exports2.Reader.Link = exports2.LinkReader = exports2.Link.Reader; + exports2.Reader.Proxy = exports2.ProxyReader = exports2.Proxy.Reader; + exports2.Writer.Dir = exports2.DirWriter = exports2.Dir.Writer; + exports2.Writer.File = exports2.FileWriter = exports2.File.Writer; + exports2.Writer.Link = exports2.LinkWriter = exports2.Link.Writer; + exports2.Writer.Proxy = exports2.ProxyWriter = exports2.Proxy.Writer; + exports2.collect = require_collect(); + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/extract.js +var require_extract = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/extract.js"(exports2, module2) { + module2.exports = Extract2; + var Parse2 = require_parse2(); + var Writer = require_fstream().Writer; + var path30 = require("path"); + var stream5 = require("stream"); + var duplexer2 = require_duplexer2(); + var Promise2 = require_bluebird(); + function Extract2(opts) { + opts.path = path30.resolve(path30.normalize(opts.path)); + var parser2 = new Parse2(opts); + var outStream = new stream5.Writable({ objectMode: true }); + outStream._write = function(entry, encoding, cb) { + if (entry.type == "Directory") + return cb(); + var extractPath = path30.join(opts.path, entry.path); + if (extractPath.indexOf(opts.path) != 0) { + return cb(); + } + const writer = opts.getWriter ? opts.getWriter({ path: extractPath }) : Writer({ path: extractPath }); + entry.pipe(writer).on("error", cb).on("close", cb); + }; + var extract = duplexer2(parser2, outStream); + parser2.once("crx-header", function(crxHeader) { + extract.crxHeader = crxHeader; + }); + parser2.pipe(outStream).on("finish", function() { + extract.emit("close"); + }); + extract.promise = function() { + return new Promise2(function(resolve8, reject) { + extract.on("close", resolve8); + extract.on("error", reject); + }); + }; + return extract; + } + } +}); + +// ../node_modules/.pnpm/big-integer@1.6.51/node_modules/big-integer/BigInteger.js +var require_BigInteger = __commonJS({ + "../node_modules/.pnpm/big-integer@1.6.51/node_modules/big-integer/BigInteger.js"(exports2, module2) { + var bigInt = function(undefined2) { + "use strict"; + var BASE = 1e7, LOG_BASE = 7, MAX_INT = 9007199254740992, MAX_INT_ARR = smallToArray(MAX_INT), DEFAULT_ALPHABET = "0123456789abcdefghijklmnopqrstuvwxyz"; + var supportsNativeBigInt = typeof BigInt === "function"; + function Integer(v, radix, alphabet, caseSensitive) { + if (typeof v === "undefined") + return Integer[0]; + if (typeof radix !== "undefined") + return +radix === 10 && !alphabet ? parseValue(v) : parseBase(v, radix, alphabet, caseSensitive); + return parseValue(v); + } + function BigInteger(value, sign) { + this.value = value; + this.sign = sign; + this.isSmall = false; + } + BigInteger.prototype = Object.create(Integer.prototype); + function SmallInteger(value) { + this.value = value; + this.sign = value < 0; + this.isSmall = true; + } + SmallInteger.prototype = Object.create(Integer.prototype); + function NativeBigInt(value) { + this.value = value; + } + NativeBigInt.prototype = Object.create(Integer.prototype); + function isPrecise(n) { + return -MAX_INT < n && n < MAX_INT; + } + function smallToArray(n) { + if (n < 1e7) + return [n]; + if (n < 1e14) + return [n % 1e7, Math.floor(n / 1e7)]; + return [n % 1e7, Math.floor(n / 1e7) % 1e7, Math.floor(n / 1e14)]; + } + function arrayToSmall(arr) { + trim2(arr); + var length = arr.length; + if (length < 4 && compareAbs(arr, MAX_INT_ARR) < 0) { + switch (length) { + case 0: + return 0; + case 1: + return arr[0]; + case 2: + return arr[0] + arr[1] * BASE; + default: + return arr[0] + (arr[1] + arr[2] * BASE) * BASE; + } + } + return arr; + } + function trim2(v) { + var i2 = v.length; + while (v[--i2] === 0) + ; + v.length = i2 + 1; + } + function createArray(length) { + var x = new Array(length); + var i2 = -1; + while (++i2 < length) { + x[i2] = 0; + } + return x; + } + function truncate(n) { + if (n > 0) + return Math.floor(n); + return Math.ceil(n); + } + function add(a, b) { + var l_a = a.length, l_b = b.length, r = new Array(l_a), carry = 0, base = BASE, sum, i2; + for (i2 = 0; i2 < l_b; i2++) { + sum = a[i2] + b[i2] + carry; + carry = sum >= base ? 1 : 0; + r[i2] = sum - carry * base; + } + while (i2 < l_a) { + sum = a[i2] + carry; + carry = sum === base ? 1 : 0; + r[i2++] = sum - carry * base; + } + if (carry > 0) + r.push(carry); + return r; + } + function addAny(a, b) { + if (a.length >= b.length) + return add(a, b); + return add(b, a); + } + function addSmall(a, carry) { + var l2 = a.length, r = new Array(l2), base = BASE, sum, i2; + for (i2 = 0; i2 < l2; i2++) { + sum = a[i2] - base + carry; + carry = Math.floor(sum / base); + r[i2] = sum - carry * base; + carry += 1; + } + while (carry > 0) { + r[i2++] = carry % base; + carry = Math.floor(carry / base); + } + return r; + } + BigInteger.prototype.add = function(v) { + var n = parseValue(v); + if (this.sign !== n.sign) { + return this.subtract(n.negate()); + } + var a = this.value, b = n.value; + if (n.isSmall) { + return new BigInteger(addSmall(a, Math.abs(b)), this.sign); + } + return new BigInteger(addAny(a, b), this.sign); + }; + BigInteger.prototype.plus = BigInteger.prototype.add; + SmallInteger.prototype.add = function(v) { + var n = parseValue(v); + var a = this.value; + if (a < 0 !== n.sign) { + return this.subtract(n.negate()); + } + var b = n.value; + if (n.isSmall) { + if (isPrecise(a + b)) + return new SmallInteger(a + b); + b = smallToArray(Math.abs(b)); + } + return new BigInteger(addSmall(b, Math.abs(a)), a < 0); + }; + SmallInteger.prototype.plus = SmallInteger.prototype.add; + NativeBigInt.prototype.add = function(v) { + return new NativeBigInt(this.value + parseValue(v).value); + }; + NativeBigInt.prototype.plus = NativeBigInt.prototype.add; + function subtract(a, b) { + var a_l = a.length, b_l = b.length, r = new Array(a_l), borrow = 0, base = BASE, i2, difference; + for (i2 = 0; i2 < b_l; i2++) { + difference = a[i2] - borrow - b[i2]; + if (difference < 0) { + difference += base; + borrow = 1; + } else + borrow = 0; + r[i2] = difference; + } + for (i2 = b_l; i2 < a_l; i2++) { + difference = a[i2] - borrow; + if (difference < 0) + difference += base; + else { + r[i2++] = difference; + break; + } + r[i2] = difference; + } + for (; i2 < a_l; i2++) { + r[i2] = a[i2]; + } + trim2(r); + return r; + } + function subtractAny(a, b, sign) { + var value; + if (compareAbs(a, b) >= 0) { + value = subtract(a, b); + } else { + value = subtract(b, a); + sign = !sign; + } + value = arrayToSmall(value); + if (typeof value === "number") { + if (sign) + value = -value; + return new SmallInteger(value); + } + return new BigInteger(value, sign); + } + function subtractSmall(a, b, sign) { + var l2 = a.length, r = new Array(l2), carry = -b, base = BASE, i2, difference; + for (i2 = 0; i2 < l2; i2++) { + difference = a[i2] + carry; + carry = Math.floor(difference / base); + difference %= base; + r[i2] = difference < 0 ? difference + base : difference; + } + r = arrayToSmall(r); + if (typeof r === "number") { + if (sign) + r = -r; + return new SmallInteger(r); + } + return new BigInteger(r, sign); + } + BigInteger.prototype.subtract = function(v) { + var n = parseValue(v); + if (this.sign !== n.sign) { + return this.add(n.negate()); + } + var a = this.value, b = n.value; + if (n.isSmall) + return subtractSmall(a, Math.abs(b), this.sign); + return subtractAny(a, b, this.sign); + }; + BigInteger.prototype.minus = BigInteger.prototype.subtract; + SmallInteger.prototype.subtract = function(v) { + var n = parseValue(v); + var a = this.value; + if (a < 0 !== n.sign) { + return this.add(n.negate()); + } + var b = n.value; + if (n.isSmall) { + return new SmallInteger(a - b); + } + return subtractSmall(b, Math.abs(a), a >= 0); + }; + SmallInteger.prototype.minus = SmallInteger.prototype.subtract; + NativeBigInt.prototype.subtract = function(v) { + return new NativeBigInt(this.value - parseValue(v).value); + }; + NativeBigInt.prototype.minus = NativeBigInt.prototype.subtract; + BigInteger.prototype.negate = function() { + return new BigInteger(this.value, !this.sign); + }; + SmallInteger.prototype.negate = function() { + var sign = this.sign; + var small = new SmallInteger(-this.value); + small.sign = !sign; + return small; + }; + NativeBigInt.prototype.negate = function() { + return new NativeBigInt(-this.value); + }; + BigInteger.prototype.abs = function() { + return new BigInteger(this.value, false); + }; + SmallInteger.prototype.abs = function() { + return new SmallInteger(Math.abs(this.value)); + }; + NativeBigInt.prototype.abs = function() { + return new NativeBigInt(this.value >= 0 ? this.value : -this.value); + }; + function multiplyLong(a, b) { + var a_l = a.length, b_l = b.length, l2 = a_l + b_l, r = createArray(l2), base = BASE, product, carry, i2, a_i, b_j; + for (i2 = 0; i2 < a_l; ++i2) { + a_i = a[i2]; + for (var j = 0; j < b_l; ++j) { + b_j = b[j]; + product = a_i * b_j + r[i2 + j]; + carry = Math.floor(product / base); + r[i2 + j] = product - carry * base; + r[i2 + j + 1] += carry; + } + } + trim2(r); + return r; + } + function multiplySmall(a, b) { + var l2 = a.length, r = new Array(l2), base = BASE, carry = 0, product, i2; + for (i2 = 0; i2 < l2; i2++) { + product = a[i2] * b + carry; + carry = Math.floor(product / base); + r[i2] = product - carry * base; + } + while (carry > 0) { + r[i2++] = carry % base; + carry = Math.floor(carry / base); + } + return r; + } + function shiftLeft(x, n) { + var r = []; + while (n-- > 0) + r.push(0); + return r.concat(x); + } + function multiplyKaratsuba(x, y) { + var n = Math.max(x.length, y.length); + if (n <= 30) + return multiplyLong(x, y); + n = Math.ceil(n / 2); + var b = x.slice(n), a = x.slice(0, n), d = y.slice(n), c = y.slice(0, n); + var ac = multiplyKaratsuba(a, c), bd = multiplyKaratsuba(b, d), abcd = multiplyKaratsuba(addAny(a, b), addAny(c, d)); + var product = addAny(addAny(ac, shiftLeft(subtract(subtract(abcd, ac), bd), n)), shiftLeft(bd, 2 * n)); + trim2(product); + return product; + } + function useKaratsuba(l1, l2) { + return -0.012 * l1 - 0.012 * l2 + 15e-6 * l1 * l2 > 0; + } + BigInteger.prototype.multiply = function(v) { + var n = parseValue(v), a = this.value, b = n.value, sign = this.sign !== n.sign, abs; + if (n.isSmall) { + if (b === 0) + return Integer[0]; + if (b === 1) + return this; + if (b === -1) + return this.negate(); + abs = Math.abs(b); + if (abs < BASE) { + return new BigInteger(multiplySmall(a, abs), sign); + } + b = smallToArray(abs); + } + if (useKaratsuba(a.length, b.length)) + return new BigInteger(multiplyKaratsuba(a, b), sign); + return new BigInteger(multiplyLong(a, b), sign); + }; + BigInteger.prototype.times = BigInteger.prototype.multiply; + function multiplySmallAndArray(a, b, sign) { + if (a < BASE) { + return new BigInteger(multiplySmall(b, a), sign); + } + return new BigInteger(multiplyLong(b, smallToArray(a)), sign); + } + SmallInteger.prototype._multiplyBySmall = function(a) { + if (isPrecise(a.value * this.value)) { + return new SmallInteger(a.value * this.value); + } + return multiplySmallAndArray(Math.abs(a.value), smallToArray(Math.abs(this.value)), this.sign !== a.sign); + }; + BigInteger.prototype._multiplyBySmall = function(a) { + if (a.value === 0) + return Integer[0]; + if (a.value === 1) + return this; + if (a.value === -1) + return this.negate(); + return multiplySmallAndArray(Math.abs(a.value), this.value, this.sign !== a.sign); + }; + SmallInteger.prototype.multiply = function(v) { + return parseValue(v)._multiplyBySmall(this); + }; + SmallInteger.prototype.times = SmallInteger.prototype.multiply; + NativeBigInt.prototype.multiply = function(v) { + return new NativeBigInt(this.value * parseValue(v).value); + }; + NativeBigInt.prototype.times = NativeBigInt.prototype.multiply; + function square(a) { + var l2 = a.length, r = createArray(l2 + l2), base = BASE, product, carry, i2, a_i, a_j; + for (i2 = 0; i2 < l2; i2++) { + a_i = a[i2]; + carry = 0 - a_i * a_i; + for (var j = i2; j < l2; j++) { + a_j = a[j]; + product = 2 * (a_i * a_j) + r[i2 + j] + carry; + carry = Math.floor(product / base); + r[i2 + j] = product - carry * base; + } + r[i2 + l2] = carry; + } + trim2(r); + return r; + } + BigInteger.prototype.square = function() { + return new BigInteger(square(this.value), false); + }; + SmallInteger.prototype.square = function() { + var value = this.value * this.value; + if (isPrecise(value)) + return new SmallInteger(value); + return new BigInteger(square(smallToArray(Math.abs(this.value))), false); + }; + NativeBigInt.prototype.square = function(v) { + return new NativeBigInt(this.value * this.value); + }; + function divMod1(a, b) { + var a_l = a.length, b_l = b.length, base = BASE, result = createArray(b.length), divisorMostSignificantDigit = b[b_l - 1], lambda = Math.ceil(base / (2 * divisorMostSignificantDigit)), remainder = multiplySmall(a, lambda), divisor = multiplySmall(b, lambda), quotientDigit, shift, carry, borrow, i2, l2, q; + if (remainder.length <= a_l) + remainder.push(0); + divisor.push(0); + divisorMostSignificantDigit = divisor[b_l - 1]; + for (shift = a_l - b_l; shift >= 0; shift--) { + quotientDigit = base - 1; + if (remainder[shift + b_l] !== divisorMostSignificantDigit) { + quotientDigit = Math.floor((remainder[shift + b_l] * base + remainder[shift + b_l - 1]) / divisorMostSignificantDigit); + } + carry = 0; + borrow = 0; + l2 = divisor.length; + for (i2 = 0; i2 < l2; i2++) { + carry += quotientDigit * divisor[i2]; + q = Math.floor(carry / base); + borrow += remainder[shift + i2] - (carry - q * base); + carry = q; + if (borrow < 0) { + remainder[shift + i2] = borrow + base; + borrow = -1; + } else { + remainder[shift + i2] = borrow; + borrow = 0; + } + } + while (borrow !== 0) { + quotientDigit -= 1; + carry = 0; + for (i2 = 0; i2 < l2; i2++) { + carry += remainder[shift + i2] - base + divisor[i2]; + if (carry < 0) { + remainder[shift + i2] = carry + base; + carry = 0; + } else { + remainder[shift + i2] = carry; + carry = 1; + } + } + borrow += carry; + } + result[shift] = quotientDigit; + } + remainder = divModSmall(remainder, lambda)[0]; + return [arrayToSmall(result), arrayToSmall(remainder)]; + } + function divMod2(a, b) { + var a_l = a.length, b_l = b.length, result = [], part = [], base = BASE, guess, xlen, highx, highy, check; + while (a_l) { + part.unshift(a[--a_l]); + trim2(part); + if (compareAbs(part, b) < 0) { + result.push(0); + continue; + } + xlen = part.length; + highx = part[xlen - 1] * base + part[xlen - 2]; + highy = b[b_l - 1] * base + b[b_l - 2]; + if (xlen > b_l) { + highx = (highx + 1) * base; + } + guess = Math.ceil(highx / highy); + do { + check = multiplySmall(b, guess); + if (compareAbs(check, part) <= 0) + break; + guess--; + } while (guess); + result.push(guess); + part = subtract(part, check); + } + result.reverse(); + return [arrayToSmall(result), arrayToSmall(part)]; + } + function divModSmall(value, lambda) { + var length = value.length, quotient = createArray(length), base = BASE, i2, q, remainder, divisor; + remainder = 0; + for (i2 = length - 1; i2 >= 0; --i2) { + divisor = remainder * base + value[i2]; + q = truncate(divisor / lambda); + remainder = divisor - q * lambda; + quotient[i2] = q | 0; + } + return [quotient, remainder | 0]; + } + function divModAny(self2, v) { + var value, n = parseValue(v); + if (supportsNativeBigInt) { + return [new NativeBigInt(self2.value / n.value), new NativeBigInt(self2.value % n.value)]; + } + var a = self2.value, b = n.value; + var quotient; + if (b === 0) + throw new Error("Cannot divide by zero"); + if (self2.isSmall) { + if (n.isSmall) { + return [new SmallInteger(truncate(a / b)), new SmallInteger(a % b)]; + } + return [Integer[0], self2]; + } + if (n.isSmall) { + if (b === 1) + return [self2, Integer[0]]; + if (b == -1) + return [self2.negate(), Integer[0]]; + var abs = Math.abs(b); + if (abs < BASE) { + value = divModSmall(a, abs); + quotient = arrayToSmall(value[0]); + var remainder = value[1]; + if (self2.sign) + remainder = -remainder; + if (typeof quotient === "number") { + if (self2.sign !== n.sign) + quotient = -quotient; + return [new SmallInteger(quotient), new SmallInteger(remainder)]; + } + return [new BigInteger(quotient, self2.sign !== n.sign), new SmallInteger(remainder)]; + } + b = smallToArray(abs); + } + var comparison = compareAbs(a, b); + if (comparison === -1) + return [Integer[0], self2]; + if (comparison === 0) + return [Integer[self2.sign === n.sign ? 1 : -1], Integer[0]]; + if (a.length + b.length <= 200) + value = divMod1(a, b); + else + value = divMod2(a, b); + quotient = value[0]; + var qSign = self2.sign !== n.sign, mod2 = value[1], mSign = self2.sign; + if (typeof quotient === "number") { + if (qSign) + quotient = -quotient; + quotient = new SmallInteger(quotient); + } else + quotient = new BigInteger(quotient, qSign); + if (typeof mod2 === "number") { + if (mSign) + mod2 = -mod2; + mod2 = new SmallInteger(mod2); + } else + mod2 = new BigInteger(mod2, mSign); + return [quotient, mod2]; + } + BigInteger.prototype.divmod = function(v) { + var result = divModAny(this, v); + return { + quotient: result[0], + remainder: result[1] + }; + }; + NativeBigInt.prototype.divmod = SmallInteger.prototype.divmod = BigInteger.prototype.divmod; + BigInteger.prototype.divide = function(v) { + return divModAny(this, v)[0]; + }; + NativeBigInt.prototype.over = NativeBigInt.prototype.divide = function(v) { + return new NativeBigInt(this.value / parseValue(v).value); + }; + SmallInteger.prototype.over = SmallInteger.prototype.divide = BigInteger.prototype.over = BigInteger.prototype.divide; + BigInteger.prototype.mod = function(v) { + return divModAny(this, v)[1]; + }; + NativeBigInt.prototype.mod = NativeBigInt.prototype.remainder = function(v) { + return new NativeBigInt(this.value % parseValue(v).value); + }; + SmallInteger.prototype.remainder = SmallInteger.prototype.mod = BigInteger.prototype.remainder = BigInteger.prototype.mod; + BigInteger.prototype.pow = function(v) { + var n = parseValue(v), a = this.value, b = n.value, value, x, y; + if (b === 0) + return Integer[1]; + if (a === 0) + return Integer[0]; + if (a === 1) + return Integer[1]; + if (a === -1) + return n.isEven() ? Integer[1] : Integer[-1]; + if (n.sign) { + return Integer[0]; + } + if (!n.isSmall) + throw new Error("The exponent " + n.toString() + " is too large."); + if (this.isSmall) { + if (isPrecise(value = Math.pow(a, b))) + return new SmallInteger(truncate(value)); + } + x = this; + y = Integer[1]; + while (true) { + if (b & true) { + y = y.times(x); + --b; + } + if (b === 0) + break; + b /= 2; + x = x.square(); + } + return y; + }; + SmallInteger.prototype.pow = BigInteger.prototype.pow; + NativeBigInt.prototype.pow = function(v) { + var n = parseValue(v); + var a = this.value, b = n.value; + var _0 = BigInt(0), _1 = BigInt(1), _2 = BigInt(2); + if (b === _0) + return Integer[1]; + if (a === _0) + return Integer[0]; + if (a === _1) + return Integer[1]; + if (a === BigInt(-1)) + return n.isEven() ? Integer[1] : Integer[-1]; + if (n.isNegative()) + return new NativeBigInt(_0); + var x = this; + var y = Integer[1]; + while (true) { + if ((b & _1) === _1) { + y = y.times(x); + --b; + } + if (b === _0) + break; + b /= _2; + x = x.square(); + } + return y; + }; + BigInteger.prototype.modPow = function(exp, mod2) { + exp = parseValue(exp); + mod2 = parseValue(mod2); + if (mod2.isZero()) + throw new Error("Cannot take modPow with modulus 0"); + var r = Integer[1], base = this.mod(mod2); + if (exp.isNegative()) { + exp = exp.multiply(Integer[-1]); + base = base.modInv(mod2); + } + while (exp.isPositive()) { + if (base.isZero()) + return Integer[0]; + if (exp.isOdd()) + r = r.multiply(base).mod(mod2); + exp = exp.divide(2); + base = base.square().mod(mod2); + } + return r; + }; + NativeBigInt.prototype.modPow = SmallInteger.prototype.modPow = BigInteger.prototype.modPow; + function compareAbs(a, b) { + if (a.length !== b.length) { + return a.length > b.length ? 1 : -1; + } + for (var i2 = a.length - 1; i2 >= 0; i2--) { + if (a[i2] !== b[i2]) + return a[i2] > b[i2] ? 1 : -1; + } + return 0; + } + BigInteger.prototype.compareAbs = function(v) { + var n = parseValue(v), a = this.value, b = n.value; + if (n.isSmall) + return 1; + return compareAbs(a, b); + }; + SmallInteger.prototype.compareAbs = function(v) { + var n = parseValue(v), a = Math.abs(this.value), b = n.value; + if (n.isSmall) { + b = Math.abs(b); + return a === b ? 0 : a > b ? 1 : -1; + } + return -1; + }; + NativeBigInt.prototype.compareAbs = function(v) { + var a = this.value; + var b = parseValue(v).value; + a = a >= 0 ? a : -a; + b = b >= 0 ? b : -b; + return a === b ? 0 : a > b ? 1 : -1; + }; + BigInteger.prototype.compare = function(v) { + if (v === Infinity) { + return -1; + } + if (v === -Infinity) { + return 1; + } + var n = parseValue(v), a = this.value, b = n.value; + if (this.sign !== n.sign) { + return n.sign ? 1 : -1; + } + if (n.isSmall) { + return this.sign ? -1 : 1; + } + return compareAbs(a, b) * (this.sign ? -1 : 1); + }; + BigInteger.prototype.compareTo = BigInteger.prototype.compare; + SmallInteger.prototype.compare = function(v) { + if (v === Infinity) { + return -1; + } + if (v === -Infinity) { + return 1; + } + var n = parseValue(v), a = this.value, b = n.value; + if (n.isSmall) { + return a == b ? 0 : a > b ? 1 : -1; + } + if (a < 0 !== n.sign) { + return a < 0 ? -1 : 1; + } + return a < 0 ? 1 : -1; + }; + SmallInteger.prototype.compareTo = SmallInteger.prototype.compare; + NativeBigInt.prototype.compare = function(v) { + if (v === Infinity) { + return -1; + } + if (v === -Infinity) { + return 1; + } + var a = this.value; + var b = parseValue(v).value; + return a === b ? 0 : a > b ? 1 : -1; + }; + NativeBigInt.prototype.compareTo = NativeBigInt.prototype.compare; + BigInteger.prototype.equals = function(v) { + return this.compare(v) === 0; + }; + NativeBigInt.prototype.eq = NativeBigInt.prototype.equals = SmallInteger.prototype.eq = SmallInteger.prototype.equals = BigInteger.prototype.eq = BigInteger.prototype.equals; + BigInteger.prototype.notEquals = function(v) { + return this.compare(v) !== 0; + }; + NativeBigInt.prototype.neq = NativeBigInt.prototype.notEquals = SmallInteger.prototype.neq = SmallInteger.prototype.notEquals = BigInteger.prototype.neq = BigInteger.prototype.notEquals; + BigInteger.prototype.greater = function(v) { + return this.compare(v) > 0; + }; + NativeBigInt.prototype.gt = NativeBigInt.prototype.greater = SmallInteger.prototype.gt = SmallInteger.prototype.greater = BigInteger.prototype.gt = BigInteger.prototype.greater; + BigInteger.prototype.lesser = function(v) { + return this.compare(v) < 0; + }; + NativeBigInt.prototype.lt = NativeBigInt.prototype.lesser = SmallInteger.prototype.lt = SmallInteger.prototype.lesser = BigInteger.prototype.lt = BigInteger.prototype.lesser; + BigInteger.prototype.greaterOrEquals = function(v) { + return this.compare(v) >= 0; + }; + NativeBigInt.prototype.geq = NativeBigInt.prototype.greaterOrEquals = SmallInteger.prototype.geq = SmallInteger.prototype.greaterOrEquals = BigInteger.prototype.geq = BigInteger.prototype.greaterOrEquals; + BigInteger.prototype.lesserOrEquals = function(v) { + return this.compare(v) <= 0; + }; + NativeBigInt.prototype.leq = NativeBigInt.prototype.lesserOrEquals = SmallInteger.prototype.leq = SmallInteger.prototype.lesserOrEquals = BigInteger.prototype.leq = BigInteger.prototype.lesserOrEquals; + BigInteger.prototype.isEven = function() { + return (this.value[0] & 1) === 0; + }; + SmallInteger.prototype.isEven = function() { + return (this.value & 1) === 0; + }; + NativeBigInt.prototype.isEven = function() { + return (this.value & BigInt(1)) === BigInt(0); + }; + BigInteger.prototype.isOdd = function() { + return (this.value[0] & 1) === 1; + }; + SmallInteger.prototype.isOdd = function() { + return (this.value & 1) === 1; + }; + NativeBigInt.prototype.isOdd = function() { + return (this.value & BigInt(1)) === BigInt(1); + }; + BigInteger.prototype.isPositive = function() { + return !this.sign; + }; + SmallInteger.prototype.isPositive = function() { + return this.value > 0; + }; + NativeBigInt.prototype.isPositive = SmallInteger.prototype.isPositive; + BigInteger.prototype.isNegative = function() { + return this.sign; + }; + SmallInteger.prototype.isNegative = function() { + return this.value < 0; + }; + NativeBigInt.prototype.isNegative = SmallInteger.prototype.isNegative; + BigInteger.prototype.isUnit = function() { + return false; + }; + SmallInteger.prototype.isUnit = function() { + return Math.abs(this.value) === 1; + }; + NativeBigInt.prototype.isUnit = function() { + return this.abs().value === BigInt(1); + }; + BigInteger.prototype.isZero = function() { + return false; + }; + SmallInteger.prototype.isZero = function() { + return this.value === 0; + }; + NativeBigInt.prototype.isZero = function() { + return this.value === BigInt(0); + }; + BigInteger.prototype.isDivisibleBy = function(v) { + var n = parseValue(v); + if (n.isZero()) + return false; + if (n.isUnit()) + return true; + if (n.compareAbs(2) === 0) + return this.isEven(); + return this.mod(n).isZero(); + }; + NativeBigInt.prototype.isDivisibleBy = SmallInteger.prototype.isDivisibleBy = BigInteger.prototype.isDivisibleBy; + function isBasicPrime(v) { + var n = v.abs(); + if (n.isUnit()) + return false; + if (n.equals(2) || n.equals(3) || n.equals(5)) + return true; + if (n.isEven() || n.isDivisibleBy(3) || n.isDivisibleBy(5)) + return false; + if (n.lesser(49)) + return true; + } + function millerRabinTest(n, a) { + var nPrev = n.prev(), b = nPrev, r = 0, d, t, i2, x; + while (b.isEven()) + b = b.divide(2), r++; + next: + for (i2 = 0; i2 < a.length; i2++) { + if (n.lesser(a[i2])) + continue; + x = bigInt(a[i2]).modPow(b, n); + if (x.isUnit() || x.equals(nPrev)) + continue; + for (d = r - 1; d != 0; d--) { + x = x.square().mod(n); + if (x.isUnit()) + return false; + if (x.equals(nPrev)) + continue next; + } + return false; + } + return true; + } + BigInteger.prototype.isPrime = function(strict) { + var isPrime = isBasicPrime(this); + if (isPrime !== undefined2) + return isPrime; + var n = this.abs(); + var bits = n.bitLength(); + if (bits <= 64) + return millerRabinTest(n, [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37]); + var logN = Math.log(2) * bits.toJSNumber(); + var t = Math.ceil(strict === true ? 2 * Math.pow(logN, 2) : logN); + for (var a = [], i2 = 0; i2 < t; i2++) { + a.push(bigInt(i2 + 2)); + } + return millerRabinTest(n, a); + }; + NativeBigInt.prototype.isPrime = SmallInteger.prototype.isPrime = BigInteger.prototype.isPrime; + BigInteger.prototype.isProbablePrime = function(iterations, rng2) { + var isPrime = isBasicPrime(this); + if (isPrime !== undefined2) + return isPrime; + var n = this.abs(); + var t = iterations === undefined2 ? 5 : iterations; + for (var a = [], i2 = 0; i2 < t; i2++) { + a.push(bigInt.randBetween(2, n.minus(2), rng2)); + } + return millerRabinTest(n, a); + }; + NativeBigInt.prototype.isProbablePrime = SmallInteger.prototype.isProbablePrime = BigInteger.prototype.isProbablePrime; + BigInteger.prototype.modInv = function(n) { + var t = bigInt.zero, newT = bigInt.one, r = parseValue(n), newR = this.abs(), q, lastT, lastR; + while (!newR.isZero()) { + q = r.divide(newR); + lastT = t; + lastR = r; + t = newT; + r = newR; + newT = lastT.subtract(q.multiply(newT)); + newR = lastR.subtract(q.multiply(newR)); + } + if (!r.isUnit()) + throw new Error(this.toString() + " and " + n.toString() + " are not co-prime"); + if (t.compare(0) === -1) { + t = t.add(n); + } + if (this.isNegative()) { + return t.negate(); + } + return t; + }; + NativeBigInt.prototype.modInv = SmallInteger.prototype.modInv = BigInteger.prototype.modInv; + BigInteger.prototype.next = function() { + var value = this.value; + if (this.sign) { + return subtractSmall(value, 1, this.sign); + } + return new BigInteger(addSmall(value, 1), this.sign); + }; + SmallInteger.prototype.next = function() { + var value = this.value; + if (value + 1 < MAX_INT) + return new SmallInteger(value + 1); + return new BigInteger(MAX_INT_ARR, false); + }; + NativeBigInt.prototype.next = function() { + return new NativeBigInt(this.value + BigInt(1)); + }; + BigInteger.prototype.prev = function() { + var value = this.value; + if (this.sign) { + return new BigInteger(addSmall(value, 1), true); + } + return subtractSmall(value, 1, this.sign); + }; + SmallInteger.prototype.prev = function() { + var value = this.value; + if (value - 1 > -MAX_INT) + return new SmallInteger(value - 1); + return new BigInteger(MAX_INT_ARR, true); + }; + NativeBigInt.prototype.prev = function() { + return new NativeBigInt(this.value - BigInt(1)); + }; + var powersOfTwo = [1]; + while (2 * powersOfTwo[powersOfTwo.length - 1] <= BASE) + powersOfTwo.push(2 * powersOfTwo[powersOfTwo.length - 1]); + var powers2Length = powersOfTwo.length, highestPower2 = powersOfTwo[powers2Length - 1]; + function shift_isSmall(n) { + return Math.abs(n) <= BASE; + } + BigInteger.prototype.shiftLeft = function(v) { + var n = parseValue(v).toJSNumber(); + if (!shift_isSmall(n)) { + throw new Error(String(n) + " is too large for shifting."); + } + if (n < 0) + return this.shiftRight(-n); + var result = this; + if (result.isZero()) + return result; + while (n >= powers2Length) { + result = result.multiply(highestPower2); + n -= powers2Length - 1; + } + return result.multiply(powersOfTwo[n]); + }; + NativeBigInt.prototype.shiftLeft = SmallInteger.prototype.shiftLeft = BigInteger.prototype.shiftLeft; + BigInteger.prototype.shiftRight = function(v) { + var remQuo; + var n = parseValue(v).toJSNumber(); + if (!shift_isSmall(n)) { + throw new Error(String(n) + " is too large for shifting."); + } + if (n < 0) + return this.shiftLeft(-n); + var result = this; + while (n >= powers2Length) { + if (result.isZero() || result.isNegative() && result.isUnit()) + return result; + remQuo = divModAny(result, highestPower2); + result = remQuo[1].isNegative() ? remQuo[0].prev() : remQuo[0]; + n -= powers2Length - 1; + } + remQuo = divModAny(result, powersOfTwo[n]); + return remQuo[1].isNegative() ? remQuo[0].prev() : remQuo[0]; + }; + NativeBigInt.prototype.shiftRight = SmallInteger.prototype.shiftRight = BigInteger.prototype.shiftRight; + function bitwise(x, y, fn) { + y = parseValue(y); + var xSign = x.isNegative(), ySign = y.isNegative(); + var xRem = xSign ? x.not() : x, yRem = ySign ? y.not() : y; + var xDigit = 0, yDigit = 0; + var xDivMod = null, yDivMod = null; + var result = []; + while (!xRem.isZero() || !yRem.isZero()) { + xDivMod = divModAny(xRem, highestPower2); + xDigit = xDivMod[1].toJSNumber(); + if (xSign) { + xDigit = highestPower2 - 1 - xDigit; + } + yDivMod = divModAny(yRem, highestPower2); + yDigit = yDivMod[1].toJSNumber(); + if (ySign) { + yDigit = highestPower2 - 1 - yDigit; + } + xRem = xDivMod[0]; + yRem = yDivMod[0]; + result.push(fn(xDigit, yDigit)); + } + var sum = fn(xSign ? 1 : 0, ySign ? 1 : 0) !== 0 ? bigInt(-1) : bigInt(0); + for (var i2 = result.length - 1; i2 >= 0; i2 -= 1) { + sum = sum.multiply(highestPower2).add(bigInt(result[i2])); + } + return sum; + } + BigInteger.prototype.not = function() { + return this.negate().prev(); + }; + NativeBigInt.prototype.not = SmallInteger.prototype.not = BigInteger.prototype.not; + BigInteger.prototype.and = function(n) { + return bitwise(this, n, function(a, b) { + return a & b; + }); + }; + NativeBigInt.prototype.and = SmallInteger.prototype.and = BigInteger.prototype.and; + BigInteger.prototype.or = function(n) { + return bitwise(this, n, function(a, b) { + return a | b; + }); + }; + NativeBigInt.prototype.or = SmallInteger.prototype.or = BigInteger.prototype.or; + BigInteger.prototype.xor = function(n) { + return bitwise(this, n, function(a, b) { + return a ^ b; + }); + }; + NativeBigInt.prototype.xor = SmallInteger.prototype.xor = BigInteger.prototype.xor; + var LOBMASK_I = 1 << 30, LOBMASK_BI = (BASE & -BASE) * (BASE & -BASE) | LOBMASK_I; + function roughLOB(n) { + var v = n.value, x = typeof v === "number" ? v | LOBMASK_I : typeof v === "bigint" ? v | BigInt(LOBMASK_I) : v[0] + v[1] * BASE | LOBMASK_BI; + return x & -x; + } + function integerLogarithm(value, base) { + if (base.compareTo(value) <= 0) { + var tmp = integerLogarithm(value, base.square(base)); + var p = tmp.p; + var e = tmp.e; + var t = p.multiply(base); + return t.compareTo(value) <= 0 ? { p: t, e: e * 2 + 1 } : { p, e: e * 2 }; + } + return { p: bigInt(1), e: 0 }; + } + BigInteger.prototype.bitLength = function() { + var n = this; + if (n.compareTo(bigInt(0)) < 0) { + n = n.negate().subtract(bigInt(1)); + } + if (n.compareTo(bigInt(0)) === 0) { + return bigInt(0); + } + return bigInt(integerLogarithm(n, bigInt(2)).e).add(bigInt(1)); + }; + NativeBigInt.prototype.bitLength = SmallInteger.prototype.bitLength = BigInteger.prototype.bitLength; + function max(a, b) { + a = parseValue(a); + b = parseValue(b); + return a.greater(b) ? a : b; + } + function min(a, b) { + a = parseValue(a); + b = parseValue(b); + return a.lesser(b) ? a : b; + } + function gcd(a, b) { + a = parseValue(a).abs(); + b = parseValue(b).abs(); + if (a.equals(b)) + return a; + if (a.isZero()) + return b; + if (b.isZero()) + return a; + var c = Integer[1], d, t; + while (a.isEven() && b.isEven()) { + d = min(roughLOB(a), roughLOB(b)); + a = a.divide(d); + b = b.divide(d); + c = c.multiply(d); + } + while (a.isEven()) { + a = a.divide(roughLOB(a)); + } + do { + while (b.isEven()) { + b = b.divide(roughLOB(b)); + } + if (a.greater(b)) { + t = b; + b = a; + a = t; + } + b = b.subtract(a); + } while (!b.isZero()); + return c.isUnit() ? a : a.multiply(c); + } + function lcm(a, b) { + a = parseValue(a).abs(); + b = parseValue(b).abs(); + return a.divide(gcd(a, b)).multiply(b); + } + function randBetween(a, b, rng2) { + a = parseValue(a); + b = parseValue(b); + var usedRNG = rng2 || Math.random; + var low = min(a, b), high = max(a, b); + var range = high.subtract(low).add(1); + if (range.isSmall) + return low.add(Math.floor(usedRNG() * range)); + var digits = toBase(range, BASE).value; + var result = [], restricted = true; + for (var i2 = 0; i2 < digits.length; i2++) { + var top = restricted ? digits[i2] + (i2 + 1 < digits.length ? digits[i2 + 1] / BASE : 0) : BASE; + var digit = truncate(usedRNG() * top); + result.push(digit); + if (digit < digits[i2]) + restricted = false; + } + return low.add(Integer.fromArray(result, BASE, false)); + } + var parseBase = function(text, base, alphabet, caseSensitive) { + alphabet = alphabet || DEFAULT_ALPHABET; + text = String(text); + if (!caseSensitive) { + text = text.toLowerCase(); + alphabet = alphabet.toLowerCase(); + } + var length = text.length; + var i2; + var absBase = Math.abs(base); + var alphabetValues = {}; + for (i2 = 0; i2 < alphabet.length; i2++) { + alphabetValues[alphabet[i2]] = i2; + } + for (i2 = 0; i2 < length; i2++) { + var c = text[i2]; + if (c === "-") + continue; + if (c in alphabetValues) { + if (alphabetValues[c] >= absBase) { + if (c === "1" && absBase === 1) + continue; + throw new Error(c + " is not a valid digit in base " + base + "."); + } + } + } + base = parseValue(base); + var digits = []; + var isNegative = text[0] === "-"; + for (i2 = isNegative ? 1 : 0; i2 < text.length; i2++) { + var c = text[i2]; + if (c in alphabetValues) + digits.push(parseValue(alphabetValues[c])); + else if (c === "<") { + var start4 = i2; + do { + i2++; + } while (text[i2] !== ">" && i2 < text.length); + digits.push(parseValue(text.slice(start4 + 1, i2))); + } else + throw new Error(c + " is not a valid character"); + } + return parseBaseFromArray(digits, base, isNegative); + }; + function parseBaseFromArray(digits, base, isNegative) { + var val = Integer[0], pow = Integer[1], i2; + for (i2 = digits.length - 1; i2 >= 0; i2--) { + val = val.add(digits[i2].times(pow)); + pow = pow.times(base); + } + return isNegative ? val.negate() : val; + } + function stringify(digit, alphabet) { + alphabet = alphabet || DEFAULT_ALPHABET; + if (digit < alphabet.length) { + return alphabet[digit]; + } + return "<" + digit + ">"; + } + function toBase(n, base) { + base = bigInt(base); + if (base.isZero()) { + if (n.isZero()) + return { value: [0], isNegative: false }; + throw new Error("Cannot convert nonzero numbers to base 0."); + } + if (base.equals(-1)) { + if (n.isZero()) + return { value: [0], isNegative: false }; + if (n.isNegative()) + return { + value: [].concat.apply( + [], + Array.apply(null, Array(-n.toJSNumber())).map(Array.prototype.valueOf, [1, 0]) + ), + isNegative: false + }; + var arr = Array.apply(null, Array(n.toJSNumber() - 1)).map(Array.prototype.valueOf, [0, 1]); + arr.unshift([1]); + return { + value: [].concat.apply([], arr), + isNegative: false + }; + } + var neg = false; + if (n.isNegative() && base.isPositive()) { + neg = true; + n = n.abs(); + } + if (base.isUnit()) { + if (n.isZero()) + return { value: [0], isNegative: false }; + return { + value: Array.apply(null, Array(n.toJSNumber())).map(Number.prototype.valueOf, 1), + isNegative: neg + }; + } + var out2 = []; + var left = n, divmod; + while (left.isNegative() || left.compareAbs(base) >= 0) { + divmod = left.divmod(base); + left = divmod.quotient; + var digit = divmod.remainder; + if (digit.isNegative()) { + digit = base.minus(digit).abs(); + left = left.next(); + } + out2.push(digit.toJSNumber()); + } + out2.push(left.toJSNumber()); + return { value: out2.reverse(), isNegative: neg }; + } + function toBaseString(n, base, alphabet) { + var arr = toBase(n, base); + return (arr.isNegative ? "-" : "") + arr.value.map(function(x) { + return stringify(x, alphabet); + }).join(""); + } + BigInteger.prototype.toArray = function(radix) { + return toBase(this, radix); + }; + SmallInteger.prototype.toArray = function(radix) { + return toBase(this, radix); + }; + NativeBigInt.prototype.toArray = function(radix) { + return toBase(this, radix); + }; + BigInteger.prototype.toString = function(radix, alphabet) { + if (radix === undefined2) + radix = 10; + if (radix !== 10) + return toBaseString(this, radix, alphabet); + var v = this.value, l2 = v.length, str = String(v[--l2]), zeros = "0000000", digit; + while (--l2 >= 0) { + digit = String(v[l2]); + str += zeros.slice(digit.length) + digit; + } + var sign = this.sign ? "-" : ""; + return sign + str; + }; + SmallInteger.prototype.toString = function(radix, alphabet) { + if (radix === undefined2) + radix = 10; + if (radix != 10) + return toBaseString(this, radix, alphabet); + return String(this.value); + }; + NativeBigInt.prototype.toString = SmallInteger.prototype.toString; + NativeBigInt.prototype.toJSON = BigInteger.prototype.toJSON = SmallInteger.prototype.toJSON = function() { + return this.toString(); + }; + BigInteger.prototype.valueOf = function() { + return parseInt(this.toString(), 10); + }; + BigInteger.prototype.toJSNumber = BigInteger.prototype.valueOf; + SmallInteger.prototype.valueOf = function() { + return this.value; + }; + SmallInteger.prototype.toJSNumber = SmallInteger.prototype.valueOf; + NativeBigInt.prototype.valueOf = NativeBigInt.prototype.toJSNumber = function() { + return parseInt(this.toString(), 10); + }; + function parseStringValue(v) { + if (isPrecise(+v)) { + var x = +v; + if (x === truncate(x)) + return supportsNativeBigInt ? new NativeBigInt(BigInt(x)) : new SmallInteger(x); + throw new Error("Invalid integer: " + v); + } + var sign = v[0] === "-"; + if (sign) + v = v.slice(1); + var split = v.split(/e/i); + if (split.length > 2) + throw new Error("Invalid integer: " + split.join("e")); + if (split.length === 2) { + var exp = split[1]; + if (exp[0] === "+") + exp = exp.slice(1); + exp = +exp; + if (exp !== truncate(exp) || !isPrecise(exp)) + throw new Error("Invalid integer: " + exp + " is not a valid exponent."); + var text = split[0]; + var decimalPlace = text.indexOf("."); + if (decimalPlace >= 0) { + exp -= text.length - decimalPlace - 1; + text = text.slice(0, decimalPlace) + text.slice(decimalPlace + 1); + } + if (exp < 0) + throw new Error("Cannot include negative exponent part for integers"); + text += new Array(exp + 1).join("0"); + v = text; + } + var isValid = /^([0-9][0-9]*)$/.test(v); + if (!isValid) + throw new Error("Invalid integer: " + v); + if (supportsNativeBigInt) { + return new NativeBigInt(BigInt(sign ? "-" + v : v)); + } + var r = [], max2 = v.length, l2 = LOG_BASE, min2 = max2 - l2; + while (max2 > 0) { + r.push(+v.slice(min2, max2)); + min2 -= l2; + if (min2 < 0) + min2 = 0; + max2 -= l2; + } + trim2(r); + return new BigInteger(r, sign); + } + function parseNumberValue(v) { + if (supportsNativeBigInt) { + return new NativeBigInt(BigInt(v)); + } + if (isPrecise(v)) { + if (v !== truncate(v)) + throw new Error(v + " is not an integer."); + return new SmallInteger(v); + } + return parseStringValue(v.toString()); + } + function parseValue(v) { + if (typeof v === "number") { + return parseNumberValue(v); + } + if (typeof v === "string") { + return parseStringValue(v); + } + if (typeof v === "bigint") { + return new NativeBigInt(v); + } + return v; + } + for (var i = 0; i < 1e3; i++) { + Integer[i] = parseValue(i); + if (i > 0) + Integer[-i] = parseValue(-i); + } + Integer.one = Integer[1]; + Integer.zero = Integer[0]; + Integer.minusOne = Integer[-1]; + Integer.max = max; + Integer.min = min; + Integer.gcd = gcd; + Integer.lcm = lcm; + Integer.isInstance = function(x) { + return x instanceof BigInteger || x instanceof SmallInteger || x instanceof NativeBigInt; + }; + Integer.randBetween = randBetween; + Integer.fromArray = function(digits, base, isNegative) { + return parseBaseFromArray(digits.map(parseValue), parseValue(base || 10), isNegative); + }; + return Integer; + }(); + if (typeof module2 !== "undefined" && module2.hasOwnProperty("exports")) { + module2.exports = bigInt; + } + if (typeof define === "function" && define.amd) { + define(function() { + return bigInt; + }); + } + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Decrypt.js +var require_Decrypt = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Decrypt.js"(exports2, module2) { + var bigInt = require_BigInteger(); + var Stream2 = require("stream"); + if (!Stream2.Writable || !Stream2.Writable.prototype.destroy) + Stream2 = require_readable(); + var table; + function generateTable() { + var poly = 3988292384, c, n, k; + table = []; + for (n = 0; n < 256; n++) { + c = n; + for (k = 0; k < 8; k++) + c = c & 1 ? poly ^ c >>> 1 : c = c >>> 1; + table[n] = c >>> 0; + } + } + function crc(ch, crc2) { + if (!table) + generateTable(); + if (ch.charCodeAt) + ch = ch.charCodeAt(0); + return bigInt(crc2).shiftRight(8).and(16777215).xor(table[bigInt(crc2).xor(ch).and(255)]).value; + } + function Decrypt() { + if (!(this instanceof Decrypt)) + return new Decrypt(); + this.key0 = 305419896; + this.key1 = 591751049; + this.key2 = 878082192; + } + Decrypt.prototype.update = function(h) { + this.key0 = crc(h, this.key0); + this.key1 = bigInt(this.key0).and(255).and(4294967295).add(this.key1); + this.key1 = bigInt(this.key1).multiply(134775813).add(1).and(4294967295).value; + this.key2 = crc(bigInt(this.key1).shiftRight(24).and(255), this.key2); + }; + Decrypt.prototype.decryptByte = function(c) { + var k = bigInt(this.key2).or(2); + c = c ^ bigInt(k).multiply(bigInt(k ^ 1)).shiftRight(8).and(255); + this.update(c); + return c; + }; + Decrypt.prototype.stream = function() { + var stream5 = Stream2.Transform(), self2 = this; + stream5._transform = function(d, e, cb) { + for (var i = 0; i < d.length; i++) { + d[i] = self2.decryptByte(d[i]); + } + this.push(d); + cb(); + }; + return stream5; + }; + module2.exports = Decrypt; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/unzip.js +var require_unzip = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/unzip.js"(exports2, module2) { + var Promise2 = require_bluebird(); + var Decrypt = require_Decrypt(); + var PullStream = require_PullStream(); + var Stream2 = require("stream"); + var binary2 = require_binary(); + var zlib2 = require("zlib"); + var parseExtraField = require_parseExtraField(); + var Buffer2 = require_Buffer(); + var parseDateTime = require_parseDateTime(); + if (!Stream2.Writable || !Stream2.Writable.prototype.destroy) + Stream2 = require_readable(); + module2.exports = function unzip2(source2, offset, _password, directoryVars) { + var file = PullStream(), entry = Stream2.PassThrough(); + var req = source2.stream(offset); + req.pipe(file).on("error", function(e) { + entry.emit("error", e); + }); + entry.vars = file.pull(30).then(function(data) { + var vars = binary2.parse(data).word32lu("signature").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars; + vars.lastModifiedDateTime = parseDateTime(vars.lastModifiedDate, vars.lastModifiedTime); + return file.pull(vars.fileNameLength).then(function(fileName) { + vars.fileName = fileName.toString("utf8"); + return file.pull(vars.extraFieldLength); + }).then(function(extraField) { + var checkEncryption; + vars.extra = parseExtraField(extraField, vars); + if (directoryVars && directoryVars.compressedSize) + vars = directoryVars; + if (vars.flags & 1) + checkEncryption = file.pull(12).then(function(header) { + if (!_password) + throw new Error("MISSING_PASSWORD"); + var decrypt = Decrypt(); + String(_password).split("").forEach(function(d) { + decrypt.update(d); + }); + for (var i = 0; i < header.length; i++) + header[i] = decrypt.decryptByte(header[i]); + vars.decrypt = decrypt; + vars.compressedSize -= 12; + var check = vars.flags & 8 ? vars.lastModifiedTime >> 8 & 255 : vars.crc32 >> 24 & 255; + if (header[11] !== check) + throw new Error("BAD_PASSWORD"); + return vars; + }); + return Promise2.resolve(checkEncryption).then(function() { + entry.emit("vars", vars); + return vars; + }); + }); + }); + entry.vars.then(function(vars) { + var fileSizeKnown = !(vars.flags & 8) || vars.compressedSize > 0, eof; + var inflater = vars.compressionMethod ? zlib2.createInflateRaw() : Stream2.PassThrough(); + if (fileSizeKnown) { + entry.size = vars.uncompressedSize; + eof = vars.compressedSize; + } else { + eof = Buffer2.alloc(4); + eof.writeUInt32LE(134695760, 0); + } + var stream5 = file.stream(eof); + if (vars.decrypt) + stream5 = stream5.pipe(vars.decrypt.stream()); + stream5.pipe(inflater).on("error", function(err2) { + entry.emit("error", err2); + }).pipe(entry).on("finish", function() { + if (req.destroy) + req.destroy(); + else if (req.abort) + req.abort(); + else if (req.close) + req.close(); + else if (req.push) + req.push(); + else + console.log("warning - unable to close stream"); + }); + }).catch(function(e) { + entry.emit("error", e); + }); + return entry; + }; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/directory.js +var require_directory = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/directory.js"(exports2, module2) { + var binary2 = require_binary(); + var PullStream = require_PullStream(); + var unzip2 = require_unzip(); + var Promise2 = require_bluebird(); + var BufferStream = require_BufferStream(); + var parseExtraField = require_parseExtraField(); + var Buffer2 = require_Buffer(); + var path30 = require("path"); + var Writer = require_fstream().Writer; + var parseDateTime = require_parseDateTime(); + var signature = Buffer2.alloc(4); + signature.writeUInt32LE(101010256, 0); + function getCrxHeader(source2) { + var sourceStream = source2.stream(0).pipe(PullStream()); + return sourceStream.pull(4).then(function(data) { + var signature2 = data.readUInt32LE(0); + if (signature2 === 875721283) { + var crxHeader; + return sourceStream.pull(12).then(function(data2) { + crxHeader = binary2.parse(data2).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars; + }).then(function() { + return sourceStream.pull(crxHeader.pubKeyLength + crxHeader.signatureLength); + }).then(function(data2) { + crxHeader.publicKey = data2.slice(0, crxHeader.pubKeyLength); + crxHeader.signature = data2.slice(crxHeader.pubKeyLength); + crxHeader.size = 16 + crxHeader.pubKeyLength + crxHeader.signatureLength; + return crxHeader; + }); + } + }); + } + function getZip64CentralDirectory(source2, zip64CDL) { + var d64loc = binary2.parse(zip64CDL).word32lu("signature").word32lu("diskNumber").word64lu("offsetToStartOfCentralDirectory").word32lu("numberOfDisks").vars; + if (d64loc.signature != 117853008) { + throw new Error("invalid zip64 end of central dir locator signature (0x07064b50): 0x" + d64loc.signature.toString(16)); + } + var dir64 = PullStream(); + source2.stream(d64loc.offsetToStartOfCentralDirectory).pipe(dir64); + return dir64.pull(56); + } + function parseZip64DirRecord(dir64record) { + var vars = binary2.parse(dir64record).word32lu("signature").word64lu("sizeOfCentralDirectory").word16lu("version").word16lu("versionsNeededToExtract").word32lu("diskNumber").word32lu("diskStart").word64lu("numberOfRecordsOnDisk").word64lu("numberOfRecords").word64lu("sizeOfCentralDirectory").word64lu("offsetToStartOfCentralDirectory").vars; + if (vars.signature != 101075792) { + throw new Error("invalid zip64 end of central dir locator signature (0x06064b50): 0x0" + vars.signature.toString(16)); + } + return vars; + } + module2.exports = function centralDirectory(source2, options2) { + var endDir = PullStream(), records = PullStream(), tailSize = options2 && options2.tailSize || 80, sourceSize, crxHeader, startOffset, vars; + if (options2 && options2.crx) + crxHeader = getCrxHeader(source2); + return source2.size().then(function(size) { + sourceSize = size; + source2.stream(Math.max(0, size - tailSize)).on("error", function(error) { + endDir.emit("error", error); + }).pipe(endDir); + return endDir.pull(signature); + }).then(function() { + return Promise2.props({ directory: endDir.pull(22), crxHeader }); + }).then(function(d) { + var data = d.directory; + startOffset = d.crxHeader && d.crxHeader.size || 0; + vars = binary2.parse(data).word32lu("signature").word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars; + if (vars.numberOfRecords == 65535 || vars.numberOfRecords == 65535 || vars.offsetToStartOfCentralDirectory == 4294967295) { + const zip64CDLSize = 20; + const zip64CDLOffset = sourceSize - (tailSize - endDir.match + zip64CDLSize); + const zip64CDLStream = PullStream(); + source2.stream(zip64CDLOffset).pipe(zip64CDLStream); + return zip64CDLStream.pull(zip64CDLSize).then(function(d2) { + return getZip64CentralDirectory(source2, d2); + }).then(function(dir64record) { + vars = parseZip64DirRecord(dir64record); + }); + } else { + vars.offsetToStartOfCentralDirectory += startOffset; + } + }).then(function() { + if (vars.commentLength) + return endDir.pull(vars.commentLength).then(function(comment) { + vars.comment = comment.toString("utf8"); + }); + }).then(function() { + source2.stream(vars.offsetToStartOfCentralDirectory).pipe(records); + vars.extract = function(opts) { + if (!opts || !opts.path) + throw new Error("PATH_MISSING"); + opts.path = path30.resolve(path30.normalize(opts.path)); + return vars.files.then(function(files) { + return Promise2.map(files, function(entry) { + if (entry.type == "Directory") + return; + var extractPath = path30.join(opts.path, entry.path); + if (extractPath.indexOf(opts.path) != 0) { + return; + } + var writer = opts.getWriter ? opts.getWriter({ path: extractPath }) : Writer({ path: extractPath }); + return new Promise2(function(resolve8, reject) { + entry.stream(opts.password).on("error", reject).pipe(writer).on("close", resolve8).on("error", reject); + }); + }, { concurrency: opts.concurrency > 1 ? opts.concurrency : 1 }); + }); + }; + vars.files = Promise2.mapSeries(Array(vars.numberOfRecords), function() { + return records.pull(46).then(function(data) { + var vars2 = binary2.parse(data).word32lu("signature").word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars; + vars2.offsetToLocalFileHeader += startOffset; + vars2.lastModifiedDateTime = parseDateTime(vars2.lastModifiedDate, vars2.lastModifiedTime); + return records.pull(vars2.fileNameLength).then(function(fileNameBuffer) { + vars2.pathBuffer = fileNameBuffer; + vars2.path = fileNameBuffer.toString("utf8"); + vars2.isUnicode = (vars2.flags & 2048) != 0; + return records.pull(vars2.extraFieldLength); + }).then(function(extraField) { + vars2.extra = parseExtraField(extraField, vars2); + return records.pull(vars2.fileCommentLength); + }).then(function(comment) { + vars2.comment = comment; + vars2.type = vars2.uncompressedSize === 0 && /[\/\\]$/.test(vars2.path) ? "Directory" : "File"; + vars2.stream = function(_password) { + return unzip2(source2, vars2.offsetToLocalFileHeader, _password, vars2); + }; + vars2.buffer = function(_password) { + return BufferStream(vars2.stream(_password)); + }; + return vars2; + }); + }); + }); + return Promise2.props(vars); + }); + }; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/index.js +var require_Open = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/index.js"(exports2, module2) { + var fs6 = require_graceful_fs(); + var Promise2 = require_bluebird(); + var directory = require_directory(); + var Stream2 = require("stream"); + if (!Stream2.Writable || !Stream2.Writable.prototype.destroy) + Stream2 = require_readable(); + module2.exports = { + buffer: function(buffer2, options2) { + var source2 = { + stream: function(offset, length) { + var stream5 = Stream2.PassThrough(); + stream5.end(buffer2.slice(offset, length)); + return stream5; + }, + size: function() { + return Promise2.resolve(buffer2.length); + } + }; + return directory(source2, options2); + }, + file: function(filename, options2) { + var source2 = { + stream: function(offset, length) { + return fs6.createReadStream(filename, { start: offset, end: length && offset + length }); + }, + size: function() { + return new Promise2(function(resolve8, reject) { + fs6.stat(filename, function(err2, d) { + if (err2) + reject(err2); + else + resolve8(d.size); + }); + }); + } + }; + return directory(source2, options2); + }, + url: function(request, params, options2) { + if (typeof params === "string") + params = { url: params }; + if (!params.url) + throw "URL missing"; + params.headers = params.headers || {}; + var source2 = { + stream: function(offset, length) { + var options3 = Object.create(params); + options3.headers = Object.create(params.headers); + options3.headers.range = "bytes=" + offset + "-" + (length ? length : ""); + return request(options3); + }, + size: function() { + return new Promise2(function(resolve8, reject) { + var req = request(params); + req.on("response", function(d) { + req.abort(); + if (!d.headers["content-length"]) + reject(new Error("Missing content length header")); + else + resolve8(d.headers["content-length"]); + }).on("error", reject); + }); + } + }; + return directory(source2, options2); + }, + s3: function(client, params, options2) { + var source2 = { + size: function() { + return new Promise2(function(resolve8, reject) { + client.headObject(params, function(err2, d) { + if (err2) + reject(err2); + else + resolve8(d.ContentLength); + }); + }); + }, + stream: function(offset, length) { + var d = {}; + for (var key in params) + d[key] = params[key]; + d.Range = "bytes=" + offset + "-" + (length ? length : ""); + return client.getObject(d).createReadStream(); + } + }; + return directory(source2, options2); + }, + custom: function(source2, options2) { + return directory(source2, options2); + } + }; + } +}); + +// ../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/unzip.js +var require_unzip2 = __commonJS({ + "../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/unzip.js"(exports2) { + "use strict"; + require_listenercount(); + require_buffer_indexof_polyfill(); + require_setImmediate(); + exports2.Parse = require_parse2(); + exports2.ParseOne = require_parseOne(); + exports2.Extract = require_extract(); + exports2.Open = require_Open(); + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/is.js +var require_is = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/is.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var objectToString = Object.prototype.toString; + function isError4(wat) { + switch (objectToString.call(wat)) { + case "[object Error]": + case "[object Exception]": + case "[object DOMException]": + return true; + default: + return isInstanceOf(wat, Error); + } + } + function isBuiltin(wat, className) { + return objectToString.call(wat) === `[object ${className}]`; + } + function isErrorEvent(wat) { + return isBuiltin(wat, "ErrorEvent"); + } + function isDOMError(wat) { + return isBuiltin(wat, "DOMError"); + } + function isDOMException(wat) { + return isBuiltin(wat, "DOMException"); + } + function isString2(wat) { + return isBuiltin(wat, "String"); + } + function isPrimitive2(wat) { + return wat === null || typeof wat !== "object" && typeof wat !== "function"; + } + function isPlainObject2(wat) { + return isBuiltin(wat, "Object"); + } + function isEvent(wat) { + return typeof Event !== "undefined" && isInstanceOf(wat, Event); + } + function isElement(wat) { + return typeof Element !== "undefined" && isInstanceOf(wat, Element); + } + function isRegExp2(wat) { + return isBuiltin(wat, "RegExp"); + } + function isThenable(wat) { + return Boolean(wat && wat.then && typeof wat.then === "function"); + } + function isSyntheticEvent(wat) { + return isPlainObject2(wat) && "nativeEvent" in wat && "preventDefault" in wat && "stopPropagation" in wat; + } + function isNaN2(wat) { + return typeof wat === "number" && wat !== wat; + } + function isInstanceOf(wat, base) { + try { + return wat instanceof base; + } catch (_e) { + return false; + } + } + exports2.isDOMError = isDOMError; + exports2.isDOMException = isDOMException; + exports2.isElement = isElement; + exports2.isError = isError4; + exports2.isErrorEvent = isErrorEvent; + exports2.isEvent = isEvent; + exports2.isInstanceOf = isInstanceOf; + exports2.isNaN = isNaN2; + exports2.isPlainObject = isPlainObject2; + exports2.isPrimitive = isPrimitive2; + exports2.isRegExp = isRegExp2; + exports2.isString = isString2; + exports2.isSyntheticEvent = isSyntheticEvent; + exports2.isThenable = isThenable; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/string.js +var require_string = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/string.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var is = require_is(); + function truncate(str, max = 0) { + if (typeof str !== "string" || max === 0) { + return str; + } + return str.length <= max ? str : `${str.slice(0, max)}...`; + } + function snipLine(line, colno) { + let newLine = line; + const lineLength = newLine.length; + if (lineLength <= 150) { + return newLine; + } + if (colno > lineLength) { + colno = lineLength; + } + let start4 = Math.max(colno - 60, 0); + if (start4 < 5) { + start4 = 0; + } + let end = Math.min(start4 + 140, lineLength); + if (end > lineLength - 5) { + end = lineLength; + } + if (end === lineLength) { + start4 = Math.max(end - 140, 0); + } + newLine = newLine.slice(start4, end); + if (start4 > 0) { + newLine = `'{snip} ${newLine}`; + } + if (end < lineLength) { + newLine += " {snip}"; + } + return newLine; + } + function safeJoin(input, delimiter) { + if (!Array.isArray(input)) { + return ""; + } + const output = []; + for (let i = 0; i < input.length; i++) { + const value = input[i]; + try { + output.push(String(value)); + } catch (e) { + output.push("[value cannot be serialized]"); + } + } + return output.join(delimiter); + } + function isMatchingPattern(value, pattern, requireExactStringMatch = false) { + if (!is.isString(value)) { + return false; + } + if (is.isRegExp(pattern)) { + return pattern.test(value); + } + if (is.isString(pattern)) { + return requireExactStringMatch ? value === pattern : value.includes(pattern); + } + return false; + } + function stringMatchesSomePattern(testString, patterns = [], requireExactStringMatch = false) { + return patterns.some((pattern) => isMatchingPattern(testString, pattern, requireExactStringMatch)); + } + exports2.isMatchingPattern = isMatchingPattern; + exports2.safeJoin = safeJoin; + exports2.snipLine = snipLine; + exports2.stringMatchesSomePattern = stringMatchesSomePattern; + exports2.truncate = truncate; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/aggregate-errors.js +var require_aggregate_errors = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/aggregate-errors.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var is = require_is(); + var string = require_string(); + function applyAggregateErrorsToEvent(exceptionFromErrorImplementation, parser2, maxValueLimit = 250, key, limit, event, hint) { + if (!event.exception || !event.exception.values || !hint || !is.isInstanceOf(hint.originalException, Error)) { + return; + } + const originalException = event.exception.values.length > 0 ? event.exception.values[event.exception.values.length - 1] : void 0; + if (originalException) { + event.exception.values = truncateAggregateExceptions( + aggregateExceptionsFromError( + exceptionFromErrorImplementation, + parser2, + limit, + hint.originalException, + key, + event.exception.values, + originalException, + 0 + ), + maxValueLimit + ); + } + } + function aggregateExceptionsFromError(exceptionFromErrorImplementation, parser2, limit, error, key, prevExceptions, exception, exceptionId) { + if (prevExceptions.length >= limit + 1) { + return prevExceptions; + } + let newExceptions = [...prevExceptions]; + if (is.isInstanceOf(error[key], Error)) { + applyExceptionGroupFieldsForParentException(exception, exceptionId); + const newException = exceptionFromErrorImplementation(parser2, error[key]); + const newExceptionId = newExceptions.length; + applyExceptionGroupFieldsForChildException(newException, key, newExceptionId, exceptionId); + newExceptions = aggregateExceptionsFromError( + exceptionFromErrorImplementation, + parser2, + limit, + error[key], + key, + [newException, ...newExceptions], + newException, + newExceptionId + ); + } + if (Array.isArray(error.errors)) { + error.errors.forEach((childError, i) => { + if (is.isInstanceOf(childError, Error)) { + applyExceptionGroupFieldsForParentException(exception, exceptionId); + const newException = exceptionFromErrorImplementation(parser2, childError); + const newExceptionId = newExceptions.length; + applyExceptionGroupFieldsForChildException(newException, `errors[${i}]`, newExceptionId, exceptionId); + newExceptions = aggregateExceptionsFromError( + exceptionFromErrorImplementation, + parser2, + limit, + childError, + key, + [newException, ...newExceptions], + newException, + newExceptionId + ); + } + }); + } + return newExceptions; + } + function applyExceptionGroupFieldsForParentException(exception, exceptionId) { + exception.mechanism = exception.mechanism || { type: "generic", handled: true }; + exception.mechanism = { + ...exception.mechanism, + is_exception_group: true, + exception_id: exceptionId + }; + } + function applyExceptionGroupFieldsForChildException(exception, source2, exceptionId, parentId) { + exception.mechanism = exception.mechanism || { type: "generic", handled: true }; + exception.mechanism = { + ...exception.mechanism, + type: "chained", + source: source2, + exception_id: exceptionId, + parent_id: parentId + }; + } + function truncateAggregateExceptions(exceptions, maxValueLength) { + return exceptions.map((exception) => { + if (exception.value) { + exception.value = string.truncate(exception.value, maxValueLength); + } + return exception; + }); + } + exports2.applyAggregateErrorsToEvent = applyAggregateErrorsToEvent; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/worldwide.js +var require_worldwide = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/worldwide.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function isGlobalObj(obj2) { + return obj2 && obj2.Math == Math ? obj2 : void 0; + } + var GLOBAL_OBJ = typeof globalThis == "object" && isGlobalObj(globalThis) || // eslint-disable-next-line no-restricted-globals + typeof window == "object" && isGlobalObj(window) || typeof self == "object" && isGlobalObj(self) || typeof global == "object" && isGlobalObj(global) || function() { + return this; + }() || {}; + function getGlobalObject() { + return GLOBAL_OBJ; + } + function getGlobalSingleton(name, creator, obj2) { + const gbl = obj2 || GLOBAL_OBJ; + const __SENTRY__ = gbl.__SENTRY__ = gbl.__SENTRY__ || {}; + const singleton = __SENTRY__[name] || (__SENTRY__[name] = creator()); + return singleton; + } + exports2.GLOBAL_OBJ = GLOBAL_OBJ; + exports2.getGlobalObject = getGlobalObject; + exports2.getGlobalSingleton = getGlobalSingleton; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/browser.js +var require_browser = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/browser.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var is = require_is(); + var worldwide = require_worldwide(); + var WINDOW = worldwide.getGlobalObject(); + var DEFAULT_MAX_STRING_LENGTH = 80; + function htmlTreeAsString(elem, options2 = {}) { + try { + let currentElem = elem; + const MAX_TRAVERSE_HEIGHT = 5; + const out2 = []; + let height = 0; + let len = 0; + const separator = " > "; + const sepLength = separator.length; + let nextStr; + const keyAttrs = Array.isArray(options2) ? options2 : options2.keyAttrs; + const maxStringLength = !Array.isArray(options2) && options2.maxStringLength || DEFAULT_MAX_STRING_LENGTH; + while (currentElem && height++ < MAX_TRAVERSE_HEIGHT) { + nextStr = _htmlElementAsString(currentElem, keyAttrs); + if (nextStr === "html" || height > 1 && len + out2.length * sepLength + nextStr.length >= maxStringLength) { + break; + } + out2.push(nextStr); + len += nextStr.length; + currentElem = currentElem.parentNode; + } + return out2.reverse().join(separator); + } catch (_oO) { + return ""; + } + } + function _htmlElementAsString(el, keyAttrs) { + const elem = el; + const out2 = []; + let className; + let classes; + let key; + let attr; + let i; + if (!elem || !elem.tagName) { + return ""; + } + out2.push(elem.tagName.toLowerCase()); + const keyAttrPairs = keyAttrs && keyAttrs.length ? keyAttrs.filter((keyAttr) => elem.getAttribute(keyAttr)).map((keyAttr) => [keyAttr, elem.getAttribute(keyAttr)]) : null; + if (keyAttrPairs && keyAttrPairs.length) { + keyAttrPairs.forEach((keyAttrPair) => { + out2.push(`[${keyAttrPair[0]}="${keyAttrPair[1]}"]`); + }); + } else { + if (elem.id) { + out2.push(`#${elem.id}`); + } + className = elem.className; + if (className && is.isString(className)) { + classes = className.split(/\s+/); + for (i = 0; i < classes.length; i++) { + out2.push(`.${classes[i]}`); + } + } + } + const allowedAttrs = ["aria-label", "type", "name", "title", "alt"]; + for (i = 0; i < allowedAttrs.length; i++) { + key = allowedAttrs[i]; + attr = elem.getAttribute(key); + if (attr) { + out2.push(`[${key}="${attr}"]`); + } + } + return out2.join(""); + } + function getLocationHref() { + try { + return WINDOW.document.location.href; + } catch (oO) { + return ""; + } + } + function getDomElement(selector) { + if (WINDOW.document && WINDOW.document.querySelector) { + return WINDOW.document.querySelector(selector); + } + return null; + } + exports2.getDomElement = getDomElement; + exports2.getLocationHref = getLocationHref; + exports2.htmlTreeAsString = htmlTreeAsString; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/logger.js +var require_logger = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/logger.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var worldwide = require_worldwide(); + var PREFIX = "Sentry Logger "; + var CONSOLE_LEVELS = ["debug", "info", "warn", "error", "log", "assert", "trace"]; + function consoleSandbox(callback) { + if (!("console" in worldwide.GLOBAL_OBJ)) { + return callback(); + } + const originalConsole = worldwide.GLOBAL_OBJ.console; + const wrappedLevels = {}; + CONSOLE_LEVELS.forEach((level) => { + const originalWrappedFunc = originalConsole[level] && originalConsole[level].__sentry_original__; + if (level in originalConsole && originalWrappedFunc) { + wrappedLevels[level] = originalConsole[level]; + originalConsole[level] = originalWrappedFunc; + } + }); + try { + return callback(); + } finally { + Object.keys(wrappedLevels).forEach((level) => { + originalConsole[level] = wrappedLevels[level]; + }); + } + } + function makeLogger() { + let enabled = false; + const logger2 = { + enable: () => { + enabled = true; + }, + disable: () => { + enabled = false; + } + }; + if (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) { + CONSOLE_LEVELS.forEach((name) => { + logger2[name] = (...args3) => { + if (enabled) { + consoleSandbox(() => { + worldwide.GLOBAL_OBJ.console[name](`${PREFIX}[${name}]:`, ...args3); + }); + } + }; + }); + } else { + CONSOLE_LEVELS.forEach((name) => { + logger2[name] = () => void 0; + }); + } + return logger2; + } + exports2.logger = void 0; + if (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) { + exports2.logger = worldwide.getGlobalSingleton("logger", makeLogger); + } else { + exports2.logger = makeLogger(); + } + exports2.CONSOLE_LEVELS = CONSOLE_LEVELS; + exports2.consoleSandbox = consoleSandbox; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/dsn.js +var require_dsn = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/dsn.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var logger2 = require_logger(); + var DSN_REGEX = /^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/; + function isValidProtocol(protocol2) { + return protocol2 === "http" || protocol2 === "https"; + } + function dsnToString(dsn, withPassword = false) { + const { host, path: path30, pass, port, projectId, protocol: protocol2, publicKey } = dsn; + return `${protocol2}://${publicKey}${withPassword && pass ? `:${pass}` : ""}@${host}${port ? `:${port}` : ""}/${path30 ? `${path30}/` : path30}${projectId}`; + } + function dsnFromString(str) { + const match2 = DSN_REGEX.exec(str); + if (!match2) { + console.error(`Invalid Sentry Dsn: ${str}`); + return void 0; + } + const [protocol2, publicKey, pass = "", host, port = "", lastPath] = match2.slice(1); + let path30 = ""; + let projectId = lastPath; + const split = projectId.split("/"); + if (split.length > 1) { + path30 = split.slice(0, -1).join("/"); + projectId = split.pop(); + } + if (projectId) { + const projectMatch = projectId.match(/^\d+/); + if (projectMatch) { + projectId = projectMatch[0]; + } + } + return dsnFromComponents({ host, pass, path: path30, projectId, port, protocol: protocol2, publicKey }); + } + function dsnFromComponents(components) { + return { + protocol: components.protocol, + publicKey: components.publicKey || "", + pass: components.pass || "", + host: components.host, + port: components.port || "", + path: components.path || "", + projectId: components.projectId + }; + } + function validateDsn(dsn) { + if (!(typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__)) { + return true; + } + const { port, projectId, protocol: protocol2 } = dsn; + const requiredComponents = ["protocol", "publicKey", "host", "projectId"]; + const hasMissingRequiredComponent = requiredComponents.find((component) => { + if (!dsn[component]) { + logger2.logger.error(`Invalid Sentry Dsn: ${component} missing`); + return true; + } + return false; + }); + if (hasMissingRequiredComponent) { + return false; + } + if (!projectId.match(/^\d+$/)) { + logger2.logger.error(`Invalid Sentry Dsn: Invalid projectId ${projectId}`); + return false; + } + if (!isValidProtocol(protocol2)) { + logger2.logger.error(`Invalid Sentry Dsn: Invalid protocol ${protocol2}`); + return false; + } + if (port && isNaN(parseInt(port, 10))) { + logger2.logger.error(`Invalid Sentry Dsn: Invalid port ${port}`); + return false; + } + return true; + } + function makeDsn(from) { + const components = typeof from === "string" ? dsnFromString(from) : dsnFromComponents(from); + if (!components || !validateDsn(components)) { + return void 0; + } + return components; + } + exports2.dsnFromString = dsnFromString; + exports2.dsnToString = dsnToString; + exports2.makeDsn = makeDsn; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/error.js +var require_error2 = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/error.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var SentryError = class extends Error { + /** Display name of this error instance. */ + constructor(message, logLevel = "warn") { + super(message); + this.message = message; + this.name = new.target.prototype.constructor.name; + Object.setPrototypeOf(this, new.target.prototype); + this.logLevel = logLevel; + } + }; + exports2.SentryError = SentryError; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/object.js +var require_object = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/object.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var browser = require_browser(); + var is = require_is(); + var string = require_string(); + function fill(source2, name, replacementFactory) { + if (!(name in source2)) { + return; + } + const original = source2[name]; + const wrapped = replacementFactory(original); + if (typeof wrapped === "function") { + try { + markFunctionWrapped(wrapped, original); + } catch (_Oo) { + } + } + source2[name] = wrapped; + } + function addNonEnumerableProperty(obj2, name, value) { + Object.defineProperty(obj2, name, { + // enumerable: false, // the default, so we can save on bundle size by not explicitly setting it + value, + writable: true, + configurable: true + }); + } + function markFunctionWrapped(wrapped, original) { + const proto = original.prototype || {}; + wrapped.prototype = original.prototype = proto; + addNonEnumerableProperty(wrapped, "__sentry_original__", original); + } + function getOriginalFunction(func2) { + return func2.__sentry_original__; + } + function urlEncode(object) { + return Object.keys(object).map((key) => `${encodeURIComponent(key)}=${encodeURIComponent(object[key])}`).join("&"); + } + function convertToPlainObject(value) { + if (is.isError(value)) { + return { + message: value.message, + name: value.name, + stack: value.stack, + ...getOwnProperties(value) + }; + } else if (is.isEvent(value)) { + const newObj = { + type: value.type, + target: serializeEventTarget(value.target), + currentTarget: serializeEventTarget(value.currentTarget), + ...getOwnProperties(value) + }; + if (typeof CustomEvent !== "undefined" && is.isInstanceOf(value, CustomEvent)) { + newObj.detail = value.detail; + } + return newObj; + } else { + return value; + } + } + function serializeEventTarget(target) { + try { + return is.isElement(target) ? browser.htmlTreeAsString(target) : Object.prototype.toString.call(target); + } catch (_oO) { + return ""; + } + } + function getOwnProperties(obj2) { + if (typeof obj2 === "object" && obj2 !== null) { + const extractedProps = {}; + for (const property in obj2) { + if (Object.prototype.hasOwnProperty.call(obj2, property)) { + extractedProps[property] = obj2[property]; + } + } + return extractedProps; + } else { + return {}; + } + } + function extractExceptionKeysForMessage(exception, maxLength = 40) { + const keys = Object.keys(convertToPlainObject(exception)); + keys.sort(); + if (!keys.length) { + return "[object has no keys]"; + } + if (keys[0].length >= maxLength) { + return string.truncate(keys[0], maxLength); + } + for (let includedKeys = keys.length; includedKeys > 0; includedKeys--) { + const serialized = keys.slice(0, includedKeys).join(", "); + if (serialized.length > maxLength) { + continue; + } + if (includedKeys === keys.length) { + return serialized; + } + return string.truncate(serialized, maxLength); + } + return ""; + } + function dropUndefinedKeys(inputValue) { + const memoizationMap = /* @__PURE__ */ new Map(); + return _dropUndefinedKeys(inputValue, memoizationMap); + } + function _dropUndefinedKeys(inputValue, memoizationMap) { + if (is.isPlainObject(inputValue)) { + const memoVal = memoizationMap.get(inputValue); + if (memoVal !== void 0) { + return memoVal; + } + const returnValue = {}; + memoizationMap.set(inputValue, returnValue); + for (const key of Object.keys(inputValue)) { + if (typeof inputValue[key] !== "undefined") { + returnValue[key] = _dropUndefinedKeys(inputValue[key], memoizationMap); + } + } + return returnValue; + } + if (Array.isArray(inputValue)) { + const memoVal = memoizationMap.get(inputValue); + if (memoVal !== void 0) { + return memoVal; + } + const returnValue = []; + memoizationMap.set(inputValue, returnValue); + inputValue.forEach((item) => { + returnValue.push(_dropUndefinedKeys(item, memoizationMap)); + }); + return returnValue; + } + return inputValue; + } + function objectify(wat) { + let objectified; + switch (true) { + case (wat === void 0 || wat === null): + objectified = new String(wat); + break; + case (typeof wat === "symbol" || typeof wat === "bigint"): + objectified = Object(wat); + break; + case is.isPrimitive(wat): + objectified = new wat.constructor(wat); + break; + default: + objectified = wat; + break; + } + return objectified; + } + exports2.addNonEnumerableProperty = addNonEnumerableProperty; + exports2.convertToPlainObject = convertToPlainObject; + exports2.dropUndefinedKeys = dropUndefinedKeys; + exports2.extractExceptionKeysForMessage = extractExceptionKeysForMessage; + exports2.fill = fill; + exports2.getOriginalFunction = getOriginalFunction; + exports2.markFunctionWrapped = markFunctionWrapped; + exports2.objectify = objectify; + exports2.urlEncode = urlEncode; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/node-stack-trace.js +var require_node_stack_trace = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/node-stack-trace.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function node(getModule) { + const FILENAME_MATCH = /^\s*[-]{4,}$/; + const FULL_MATCH = /at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/; + return (line) => { + const lineMatch = line.match(FULL_MATCH); + if (lineMatch) { + let object; + let method; + let functionName; + let typeName; + let methodName; + if (lineMatch[1]) { + functionName = lineMatch[1]; + let methodStart = functionName.lastIndexOf("."); + if (functionName[methodStart - 1] === ".") { + methodStart--; + } + if (methodStart > 0) { + object = functionName.slice(0, methodStart); + method = functionName.slice(methodStart + 1); + const objectEnd = object.indexOf(".Module"); + if (objectEnd > 0) { + functionName = functionName.slice(objectEnd + 1); + object = object.slice(0, objectEnd); + } + } + typeName = void 0; + } + if (method) { + typeName = object; + methodName = method; + } + if (method === "") { + methodName = void 0; + functionName = void 0; + } + if (functionName === void 0) { + methodName = methodName || ""; + functionName = typeName ? `${typeName}.${methodName}` : methodName; + } + let filename = lineMatch[2] && lineMatch[2].startsWith("file://") ? lineMatch[2].slice(7) : lineMatch[2]; + const isNative = lineMatch[5] === "native"; + if (!filename && lineMatch[5] && !isNative) { + filename = lineMatch[5]; + } + const isInternal = isNative || filename && // It's not internal if it's an absolute linux path + !filename.startsWith("/") && // It's not internal if it's an absolute windows path + !filename.includes(":\\") && // It's not internal if the path is starting with a dot + !filename.startsWith(".") && // It's not internal if the frame has a protocol. In node, this is usually the case if the file got pre-processed with a bundler like webpack + !filename.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//); + const in_app = !isInternal && filename !== void 0 && !filename.includes("node_modules/"); + return { + filename, + module: getModule ? getModule(filename) : void 0, + function: functionName, + lineno: parseInt(lineMatch[3], 10) || void 0, + colno: parseInt(lineMatch[4], 10) || void 0, + in_app + }; + } + if (line.match(FILENAME_MATCH)) { + return { + filename: line + }; + } + return void 0; + }; + } + exports2.node = node; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/stacktrace.js +var require_stacktrace = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/stacktrace.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var nodeStackTrace = require_node_stack_trace(); + var STACKTRACE_FRAME_LIMIT = 50; + var WEBPACK_ERROR_REGEXP = /\(error: (.*)\)/; + var STRIP_FRAME_REGEXP = /captureMessage|captureException/; + function createStackParser(...parsers) { + const sortedParsers = parsers.sort((a, b) => a[0] - b[0]).map((p) => p[1]); + return (stack, skipFirst = 0) => { + const frames = []; + const lines2 = stack.split("\n"); + for (let i = skipFirst; i < lines2.length; i++) { + const line = lines2[i]; + if (line.length > 1024) { + continue; + } + const cleanedLine = WEBPACK_ERROR_REGEXP.test(line) ? line.replace(WEBPACK_ERROR_REGEXP, "$1") : line; + if (cleanedLine.match(/\S*Error: /)) { + continue; + } + for (const parser2 of sortedParsers) { + const frame = parser2(cleanedLine); + if (frame) { + frames.push(frame); + break; + } + } + if (frames.length >= STACKTRACE_FRAME_LIMIT) { + break; + } + } + return stripSentryFramesAndReverse(frames); + }; + } + function stackParserFromStackParserOptions(stackParser) { + if (Array.isArray(stackParser)) { + return createStackParser(...stackParser); + } + return stackParser; + } + function stripSentryFramesAndReverse(stack) { + if (!stack.length) { + return []; + } + const localStack = Array.from(stack); + if (/sentryWrapped/.test(localStack[localStack.length - 1].function || "")) { + localStack.pop(); + } + localStack.reverse(); + if (STRIP_FRAME_REGEXP.test(localStack[localStack.length - 1].function || "")) { + localStack.pop(); + if (STRIP_FRAME_REGEXP.test(localStack[localStack.length - 1].function || "")) { + localStack.pop(); + } + } + return localStack.slice(0, STACKTRACE_FRAME_LIMIT).map((frame) => ({ + ...frame, + filename: frame.filename || localStack[localStack.length - 1].filename, + function: frame.function || "?" + })); + } + var defaultFunctionName = ""; + function getFunctionName(fn) { + try { + if (!fn || typeof fn !== "function") { + return defaultFunctionName; + } + return fn.name || defaultFunctionName; + } catch (e) { + return defaultFunctionName; + } + } + function nodeStackLineParser(getModule) { + return [90, nodeStackTrace.node(getModule)]; + } + exports2.createStackParser = createStackParser; + exports2.getFunctionName = getFunctionName; + exports2.nodeStackLineParser = nodeStackLineParser; + exports2.stackParserFromStackParserOptions = stackParserFromStackParserOptions; + exports2.stripSentryFramesAndReverse = stripSentryFramesAndReverse; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/supports.js +var require_supports = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/supports.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var logger2 = require_logger(); + var worldwide = require_worldwide(); + var WINDOW = worldwide.getGlobalObject(); + function supportsErrorEvent() { + try { + new ErrorEvent(""); + return true; + } catch (e) { + return false; + } + } + function supportsDOMError() { + try { + new DOMError(""); + return true; + } catch (e) { + return false; + } + } + function supportsDOMException() { + try { + new DOMException(""); + return true; + } catch (e) { + return false; + } + } + function supportsFetch() { + if (!("fetch" in WINDOW)) { + return false; + } + try { + new Headers(); + new Request("http://www.example.com"); + new Response(); + return true; + } catch (e) { + return false; + } + } + function isNativeFetch(func2) { + return func2 && /^function fetch\(\)\s+\{\s+\[native code\]\s+\}$/.test(func2.toString()); + } + function supportsNativeFetch() { + if (!supportsFetch()) { + return false; + } + if (isNativeFetch(WINDOW.fetch)) { + return true; + } + let result = false; + const doc = WINDOW.document; + if (doc && typeof doc.createElement === "function") { + try { + const sandbox = doc.createElement("iframe"); + sandbox.hidden = true; + doc.head.appendChild(sandbox); + if (sandbox.contentWindow && sandbox.contentWindow.fetch) { + result = isNativeFetch(sandbox.contentWindow.fetch); + } + doc.head.removeChild(sandbox); + } catch (err2) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && logger2.logger.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ", err2); + } + } + return result; + } + function supportsReportingObserver() { + return "ReportingObserver" in WINDOW; + } + function supportsReferrerPolicy() { + if (!supportsFetch()) { + return false; + } + try { + new Request("_", { + referrerPolicy: "origin" + }); + return true; + } catch (e) { + return false; + } + } + exports2.isNativeFetch = isNativeFetch; + exports2.supportsDOMError = supportsDOMError; + exports2.supportsDOMException = supportsDOMException; + exports2.supportsErrorEvent = supportsErrorEvent; + exports2.supportsFetch = supportsFetch; + exports2.supportsNativeFetch = supportsNativeFetch; + exports2.supportsReferrerPolicy = supportsReferrerPolicy; + exports2.supportsReportingObserver = supportsReportingObserver; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/vendor/supportsHistory.js +var require_supportsHistory = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/vendor/supportsHistory.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var worldwide = require_worldwide(); + var WINDOW = worldwide.getGlobalObject(); + function supportsHistory() { + const chrome2 = WINDOW.chrome; + const isChromePackagedApp = chrome2 && chrome2.app && chrome2.app.runtime; + const hasHistoryApi = "history" in WINDOW && !!WINDOW.history.pushState && !!WINDOW.history.replaceState; + return !isChromePackagedApp && hasHistoryApi; + } + exports2.supportsHistory = supportsHistory; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/instrument.js +var require_instrument = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/instrument.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var is = require_is(); + var logger2 = require_logger(); + var object = require_object(); + var stacktrace = require_stacktrace(); + var supports = require_supports(); + var worldwide = require_worldwide(); + var supportsHistory = require_supportsHistory(); + var WINDOW = worldwide.getGlobalObject(); + var SENTRY_XHR_DATA_KEY = "__sentry_xhr_v2__"; + var handlers = {}; + var instrumented = {}; + function instrument(type2) { + if (instrumented[type2]) { + return; + } + instrumented[type2] = true; + switch (type2) { + case "console": + instrumentConsole(); + break; + case "dom": + instrumentDOM(); + break; + case "xhr": + instrumentXHR(); + break; + case "fetch": + instrumentFetch(); + break; + case "history": + instrumentHistory(); + break; + case "error": + instrumentError(); + break; + case "unhandledrejection": + instrumentUnhandledRejection(); + break; + default: + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && logger2.logger.warn("unknown instrumentation type:", type2); + return; + } + } + function addInstrumentationHandler(type2, callback) { + handlers[type2] = handlers[type2] || []; + handlers[type2].push(callback); + instrument(type2); + } + function triggerHandlers(type2, data) { + if (!type2 || !handlers[type2]) { + return; + } + for (const handler of handlers[type2] || []) { + try { + handler(data); + } catch (e) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && logger2.logger.error( + `Error while triggering instrumentation handler. +Type: ${type2} +Name: ${stacktrace.getFunctionName(handler)} +Error:`, + e + ); + } + } + } + var originalConsoleMethods = {}; + function instrumentConsole() { + if (!("console" in worldwide.GLOBAL_OBJ)) { + return; + } + logger2.CONSOLE_LEVELS.forEach(function(level) { + if (!(level in worldwide.GLOBAL_OBJ.console)) { + return; + } + object.fill(worldwide.GLOBAL_OBJ.console, level, function(originalConsoleMethod) { + originalConsoleMethods[level] = originalConsoleMethod; + return function(...args3) { + triggerHandlers("console", { args: args3, level }); + const log2 = originalConsoleMethods[level]; + log2 && log2.apply(worldwide.GLOBAL_OBJ.console, args3); + }; + }); + }); + } + function instrumentFetch() { + if (!supports.supportsNativeFetch()) { + return; + } + object.fill(worldwide.GLOBAL_OBJ, "fetch", function(originalFetch) { + return function(...args3) { + const { method, url: url2 } = parseFetchArgs(args3); + const handlerData = { + args: args3, + fetchData: { + method, + url: url2 + }, + startTimestamp: Date.now() + }; + triggerHandlers("fetch", { + ...handlerData + }); + return originalFetch.apply(worldwide.GLOBAL_OBJ, args3).then( + (response) => { + triggerHandlers("fetch", { + ...handlerData, + endTimestamp: Date.now(), + response + }); + return response; + }, + (error) => { + triggerHandlers("fetch", { + ...handlerData, + endTimestamp: Date.now(), + error + }); + throw error; + } + ); + }; + }); + } + function hasProp(obj2, prop) { + return !!obj2 && typeof obj2 === "object" && !!obj2[prop]; + } + function getUrlFromResource(resource) { + if (typeof resource === "string") { + return resource; + } + if (!resource) { + return ""; + } + if (hasProp(resource, "url")) { + return resource.url; + } + if (resource.toString) { + return resource.toString(); + } + return ""; + } + function parseFetchArgs(fetchArgs) { + if (fetchArgs.length === 0) { + return { method: "GET", url: "" }; + } + if (fetchArgs.length === 2) { + const [url2, options2] = fetchArgs; + return { + url: getUrlFromResource(url2), + method: hasProp(options2, "method") ? String(options2.method).toUpperCase() : "GET" + }; + } + const arg = fetchArgs[0]; + return { + url: getUrlFromResource(arg), + method: hasProp(arg, "method") ? String(arg.method).toUpperCase() : "GET" + }; + } + function instrumentXHR() { + if (!("XMLHttpRequest" in WINDOW)) { + return; + } + const xhrproto = XMLHttpRequest.prototype; + object.fill(xhrproto, "open", function(originalOpen) { + return function(...args3) { + const url2 = args3[1]; + const xhrInfo = this[SENTRY_XHR_DATA_KEY] = { + // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access + method: is.isString(args3[0]) ? args3[0].toUpperCase() : args3[0], + url: args3[1], + request_headers: {} + }; + if (is.isString(url2) && xhrInfo.method === "POST" && url2.match(/sentry_key/)) { + this.__sentry_own_request__ = true; + } + const onreadystatechangeHandler = () => { + const xhrInfo2 = this[SENTRY_XHR_DATA_KEY]; + if (!xhrInfo2) { + return; + } + if (this.readyState === 4) { + try { + xhrInfo2.status_code = this.status; + } catch (e) { + } + triggerHandlers("xhr", { + args: args3, + endTimestamp: Date.now(), + startTimestamp: Date.now(), + xhr: this + }); + } + }; + if ("onreadystatechange" in this && typeof this.onreadystatechange === "function") { + object.fill(this, "onreadystatechange", function(original) { + return function(...readyStateArgs) { + onreadystatechangeHandler(); + return original.apply(this, readyStateArgs); + }; + }); + } else { + this.addEventListener("readystatechange", onreadystatechangeHandler); + } + object.fill(this, "setRequestHeader", function(original) { + return function(...setRequestHeaderArgs) { + const [header, value] = setRequestHeaderArgs; + const xhrInfo2 = this[SENTRY_XHR_DATA_KEY]; + if (xhrInfo2) { + xhrInfo2.request_headers[header.toLowerCase()] = value; + } + return original.apply(this, setRequestHeaderArgs); + }; + }); + return originalOpen.apply(this, args3); + }; + }); + object.fill(xhrproto, "send", function(originalSend) { + return function(...args3) { + const sentryXhrData = this[SENTRY_XHR_DATA_KEY]; + if (sentryXhrData && args3[0] !== void 0) { + sentryXhrData.body = args3[0]; + } + triggerHandlers("xhr", { + args: args3, + startTimestamp: Date.now(), + xhr: this + }); + return originalSend.apply(this, args3); + }; + }); + } + var lastHref; + function instrumentHistory() { + if (!supportsHistory.supportsHistory()) { + return; + } + const oldOnPopState = WINDOW.onpopstate; + WINDOW.onpopstate = function(...args3) { + const to = WINDOW.location.href; + const from = lastHref; + lastHref = to; + triggerHandlers("history", { + from, + to + }); + if (oldOnPopState) { + try { + return oldOnPopState.apply(this, args3); + } catch (_oO) { + } + } + }; + function historyReplacementFunction(originalHistoryFunction) { + return function(...args3) { + const url2 = args3.length > 2 ? args3[2] : void 0; + if (url2) { + const from = lastHref; + const to = String(url2); + lastHref = to; + triggerHandlers("history", { + from, + to + }); + } + return originalHistoryFunction.apply(this, args3); + }; + } + object.fill(WINDOW.history, "pushState", historyReplacementFunction); + object.fill(WINDOW.history, "replaceState", historyReplacementFunction); + } + var debounceDuration = 1e3; + var debounceTimerID; + var lastCapturedEvent; + function shouldShortcircuitPreviousDebounce(previous, current) { + if (!previous) { + return true; + } + if (previous.type !== current.type) { + return true; + } + try { + if (previous.target !== current.target) { + return true; + } + } catch (e) { + } + return false; + } + function shouldSkipDOMEvent(event) { + if (event.type !== "keypress") { + return false; + } + try { + const target = event.target; + if (!target || !target.tagName) { + return true; + } + if (target.tagName === "INPUT" || target.tagName === "TEXTAREA" || target.isContentEditable) { + return false; + } + } catch (e) { + } + return true; + } + function makeDOMEventHandler(handler, globalListener = false) { + return (event) => { + if (!event || lastCapturedEvent === event) { + return; + } + if (shouldSkipDOMEvent(event)) { + return; + } + const name = event.type === "keypress" ? "input" : event.type; + if (debounceTimerID === void 0) { + handler({ + event, + name, + global: globalListener + }); + lastCapturedEvent = event; + } else if (shouldShortcircuitPreviousDebounce(lastCapturedEvent, event)) { + handler({ + event, + name, + global: globalListener + }); + lastCapturedEvent = event; + } + clearTimeout(debounceTimerID); + debounceTimerID = WINDOW.setTimeout(() => { + debounceTimerID = void 0; + }, debounceDuration); + }; + } + function instrumentDOM() { + if (!("document" in WINDOW)) { + return; + } + const triggerDOMHandler = triggerHandlers.bind(null, "dom"); + const globalDOMEventHandler = makeDOMEventHandler(triggerDOMHandler, true); + WINDOW.document.addEventListener("click", globalDOMEventHandler, false); + WINDOW.document.addEventListener("keypress", globalDOMEventHandler, false); + ["EventTarget", "Node"].forEach((target) => { + const proto = WINDOW[target] && WINDOW[target].prototype; + if (!proto || !proto.hasOwnProperty || !proto.hasOwnProperty("addEventListener")) { + return; + } + object.fill(proto, "addEventListener", function(originalAddEventListener) { + return function(type2, listener, options2) { + if (type2 === "click" || type2 == "keypress") { + try { + const el = this; + const handlers2 = el.__sentry_instrumentation_handlers__ = el.__sentry_instrumentation_handlers__ || {}; + const handlerForType = handlers2[type2] = handlers2[type2] || { refCount: 0 }; + if (!handlerForType.handler) { + const handler = makeDOMEventHandler(triggerDOMHandler); + handlerForType.handler = handler; + originalAddEventListener.call(this, type2, handler, options2); + } + handlerForType.refCount++; + } catch (e) { + } + } + return originalAddEventListener.call(this, type2, listener, options2); + }; + }); + object.fill( + proto, + "removeEventListener", + function(originalRemoveEventListener) { + return function(type2, listener, options2) { + if (type2 === "click" || type2 == "keypress") { + try { + const el = this; + const handlers2 = el.__sentry_instrumentation_handlers__ || {}; + const handlerForType = handlers2[type2]; + if (handlerForType) { + handlerForType.refCount--; + if (handlerForType.refCount <= 0) { + originalRemoveEventListener.call(this, type2, handlerForType.handler, options2); + handlerForType.handler = void 0; + delete handlers2[type2]; + } + if (Object.keys(handlers2).length === 0) { + delete el.__sentry_instrumentation_handlers__; + } + } + } catch (e) { + } + } + return originalRemoveEventListener.call(this, type2, listener, options2); + }; + } + ); + }); + } + var _oldOnErrorHandler = null; + function instrumentError() { + _oldOnErrorHandler = WINDOW.onerror; + WINDOW.onerror = function(msg, url2, line, column, error) { + triggerHandlers("error", { + column, + error, + line, + msg, + url: url2 + }); + if (_oldOnErrorHandler && !_oldOnErrorHandler.__SENTRY_LOADER__) { + return _oldOnErrorHandler.apply(this, arguments); + } + return false; + }; + WINDOW.onerror.__SENTRY_INSTRUMENTED__ = true; + } + var _oldOnUnhandledRejectionHandler = null; + function instrumentUnhandledRejection() { + _oldOnUnhandledRejectionHandler = WINDOW.onunhandledrejection; + WINDOW.onunhandledrejection = function(e) { + triggerHandlers("unhandledrejection", e); + if (_oldOnUnhandledRejectionHandler && !_oldOnUnhandledRejectionHandler.__SENTRY_LOADER__) { + return _oldOnUnhandledRejectionHandler.apply(this, arguments); + } + return true; + }; + WINDOW.onunhandledrejection.__SENTRY_INSTRUMENTED__ = true; + } + exports2.SENTRY_XHR_DATA_KEY = SENTRY_XHR_DATA_KEY; + exports2.addInstrumentationHandler = addInstrumentationHandler; + exports2.originalConsoleMethods = originalConsoleMethods; + exports2.parseFetchArgs = parseFetchArgs; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/memo.js +var require_memo = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/memo.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function memoBuilder() { + const hasWeakSet = typeof WeakSet === "function"; + const inner = hasWeakSet ? /* @__PURE__ */ new WeakSet() : []; + function memoize(obj2) { + if (hasWeakSet) { + if (inner.has(obj2)) { + return true; + } + inner.add(obj2); + return false; + } + for (let i = 0; i < inner.length; i++) { + const value = inner[i]; + if (value === obj2) { + return true; + } + } + inner.push(obj2); + return false; + } + function unmemoize(obj2) { + if (hasWeakSet) { + inner.delete(obj2); + } else { + for (let i = 0; i < inner.length; i++) { + if (inner[i] === obj2) { + inner.splice(i, 1); + break; + } + } + } + } + return [memoize, unmemoize]; + } + exports2.memoBuilder = memoBuilder; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/misc.js +var require_misc = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/misc.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var object = require_object(); + var string = require_string(); + var worldwide = require_worldwide(); + function uuid4() { + const gbl = worldwide.GLOBAL_OBJ; + const crypto3 = gbl.crypto || gbl.msCrypto; + if (crypto3 && crypto3.randomUUID) { + return crypto3.randomUUID().replace(/-/g, ""); + } + const getRandomByte = crypto3 && crypto3.getRandomValues ? () => crypto3.getRandomValues(new Uint8Array(1))[0] : () => Math.random() * 16; + return ([1e7] + 1e3 + 4e3 + 8e3 + 1e11).replace( + /[018]/g, + (c) => ( + // eslint-disable-next-line no-bitwise + (c ^ (getRandomByte() & 15) >> c / 4).toString(16) + ) + ); + } + function getFirstException(event) { + return event.exception && event.exception.values ? event.exception.values[0] : void 0; + } + function getEventDescription(event) { + const { message, event_id: eventId } = event; + if (message) { + return message; + } + const firstException = getFirstException(event); + if (firstException) { + if (firstException.type && firstException.value) { + return `${firstException.type}: ${firstException.value}`; + } + return firstException.type || firstException.value || eventId || ""; + } + return eventId || ""; + } + function addExceptionTypeValue(event, value, type2) { + const exception = event.exception = event.exception || {}; + const values = exception.values = exception.values || []; + const firstException = values[0] = values[0] || {}; + if (!firstException.value) { + firstException.value = value || ""; + } + if (!firstException.type) { + firstException.type = type2 || "Error"; + } + } + function addExceptionMechanism(event, newMechanism) { + const firstException = getFirstException(event); + if (!firstException) { + return; + } + const defaultMechanism = { type: "generic", handled: true }; + const currentMechanism = firstException.mechanism; + firstException.mechanism = { ...defaultMechanism, ...currentMechanism, ...newMechanism }; + if (newMechanism && "data" in newMechanism) { + const mergedData = { ...currentMechanism && currentMechanism.data, ...newMechanism.data }; + firstException.mechanism.data = mergedData; + } + } + var SEMVER_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/; + function parseSemver(input) { + const match2 = input.match(SEMVER_REGEXP) || []; + const major2 = parseInt(match2[1], 10); + const minor2 = parseInt(match2[2], 10); + const patch = parseInt(match2[3], 10); + return { + buildmetadata: match2[5], + major: isNaN(major2) ? void 0 : major2, + minor: isNaN(minor2) ? void 0 : minor2, + patch: isNaN(patch) ? void 0 : patch, + prerelease: match2[4] + }; + } + function addContextToFrame(lines2, frame, linesOfContext = 5) { + if (frame.lineno === void 0) { + return; + } + const maxLines = lines2.length; + const sourceLine = Math.max(Math.min(maxLines - 1, frame.lineno - 1), 0); + frame.pre_context = lines2.slice(Math.max(0, sourceLine - linesOfContext), sourceLine).map((line) => string.snipLine(line, 0)); + frame.context_line = string.snipLine(lines2[Math.min(maxLines - 1, sourceLine)], frame.colno || 0); + frame.post_context = lines2.slice(Math.min(sourceLine + 1, maxLines), sourceLine + 1 + linesOfContext).map((line) => string.snipLine(line, 0)); + } + function checkOrSetAlreadyCaught(exception) { + if (exception && exception.__sentry_captured__) { + return true; + } + try { + object.addNonEnumerableProperty(exception, "__sentry_captured__", true); + } catch (err2) { + } + return false; + } + function arrayify(maybeArray) { + return Array.isArray(maybeArray) ? maybeArray : [maybeArray]; + } + exports2.addContextToFrame = addContextToFrame; + exports2.addExceptionMechanism = addExceptionMechanism; + exports2.addExceptionTypeValue = addExceptionTypeValue; + exports2.arrayify = arrayify; + exports2.checkOrSetAlreadyCaught = checkOrSetAlreadyCaught; + exports2.getEventDescription = getEventDescription; + exports2.parseSemver = parseSemver; + exports2.uuid4 = uuid4; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/env.js +var require_env = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/env.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function isBrowserBundle() { + return typeof __SENTRY_BROWSER_BUNDLE__ !== "undefined" && !!__SENTRY_BROWSER_BUNDLE__; + } + function getSDKSource() { + return "npm"; + } + exports2.getSDKSource = getSDKSource; + exports2.isBrowserBundle = isBrowserBundle; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/node.js +var require_node3 = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/node.js"(exports2, module2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var env4 = require_env(); + function isNodeEnv() { + return !env4.isBrowserBundle() && Object.prototype.toString.call(typeof process !== "undefined" ? process : 0) === "[object process]"; + } + function dynamicRequire(mod2, request) { + return mod2.require(request); + } + function loadModule2(moduleName2) { + let mod2; + try { + mod2 = dynamicRequire(module2, moduleName2); + } catch (e) { + } + try { + const { cwd } = dynamicRequire(module2, "process"); + mod2 = dynamicRequire(module2, `${cwd()}/node_modules/${moduleName2}`); + } catch (e) { + } + return mod2; + } + exports2.dynamicRequire = dynamicRequire; + exports2.isNodeEnv = isNodeEnv; + exports2.loadModule = loadModule2; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/normalize.js +var require_normalize = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/normalize.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var is = require_is(); + var memo = require_memo(); + var object = require_object(); + var stacktrace = require_stacktrace(); + function normalize6(input, depth = 100, maxProperties = Infinity) { + try { + return visit("", input, depth, maxProperties); + } catch (err2) { + return { ERROR: `**non-serializable** (${err2})` }; + } + } + function normalizeToSize(object2, depth = 3, maxSize = 100 * 1024) { + const normalized = normalize6(object2, depth); + if (jsonSize(normalized) > maxSize) { + return normalizeToSize(object2, depth - 1, maxSize); + } + return normalized; + } + function visit(key, value, depth = Infinity, maxProperties = Infinity, memo$1 = memo.memoBuilder()) { + const [memoize, unmemoize] = memo$1; + if (value == null || // this matches null and undefined -> eqeq not eqeqeq + ["number", "boolean", "string"].includes(typeof value) && !is.isNaN(value)) { + return value; + } + const stringified = stringifyValue(key, value); + if (!stringified.startsWith("[object ")) { + return stringified; + } + if (value["__sentry_skip_normalization__"]) { + return value; + } + const remainingDepth = typeof value["__sentry_override_normalization_depth__"] === "number" ? value["__sentry_override_normalization_depth__"] : depth; + if (remainingDepth === 0) { + return stringified.replace("object ", ""); + } + if (memoize(value)) { + return "[Circular ~]"; + } + const valueWithToJSON = value; + if (valueWithToJSON && typeof valueWithToJSON.toJSON === "function") { + try { + const jsonValue = valueWithToJSON.toJSON(); + return visit("", jsonValue, remainingDepth - 1, maxProperties, memo$1); + } catch (err2) { + } + } + const normalized = Array.isArray(value) ? [] : {}; + let numAdded = 0; + const visitable = object.convertToPlainObject(value); + for (const visitKey in visitable) { + if (!Object.prototype.hasOwnProperty.call(visitable, visitKey)) { + continue; + } + if (numAdded >= maxProperties) { + normalized[visitKey] = "[MaxProperties ~]"; + break; + } + const visitValue = visitable[visitKey]; + normalized[visitKey] = visit(visitKey, visitValue, remainingDepth - 1, maxProperties, memo$1); + numAdded++; + } + unmemoize(value); + return normalized; + } + function stringifyValue(key, value) { + try { + if (key === "domain" && value && typeof value === "object" && value._events) { + return "[Domain]"; + } + if (key === "domainEmitter") { + return "[DomainEmitter]"; + } + if (typeof global !== "undefined" && value === global) { + return "[Global]"; + } + if (typeof window !== "undefined" && value === window) { + return "[Window]"; + } + if (typeof document !== "undefined" && value === document) { + return "[Document]"; + } + if (is.isSyntheticEvent(value)) { + return "[SyntheticEvent]"; + } + if (typeof value === "number" && value !== value) { + return "[NaN]"; + } + if (typeof value === "function") { + return `[Function: ${stacktrace.getFunctionName(value)}]`; + } + if (typeof value === "symbol") { + return `[${String(value)}]`; + } + if (typeof value === "bigint") { + return `[BigInt: ${String(value)}]`; + } + const objName = getConstructorName(value); + if (/^HTML(\w*)Element$/.test(objName)) { + return `[HTMLElement: ${objName}]`; + } + return `[object ${objName}]`; + } catch (err2) { + return `**non-serializable** (${err2})`; + } + } + function getConstructorName(value) { + const prototype3 = Object.getPrototypeOf(value); + return prototype3 ? prototype3.constructor.name : "null prototype"; + } + function utf8Length(value) { + return ~-encodeURI(value).split(/%..|./).length; + } + function jsonSize(value) { + return utf8Length(JSON.stringify(value)); + } + exports2.normalize = normalize6; + exports2.normalizeToSize = normalizeToSize; + exports2.walk = visit; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/path.js +var require_path = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/path.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function normalizeArray(parts, allowAboveRoot) { + let up = 0; + for (let i = parts.length - 1; i >= 0; i--) { + const last = parts[i]; + if (last === ".") { + parts.splice(i, 1); + } else if (last === "..") { + parts.splice(i, 1); + up++; + } else if (up) { + parts.splice(i, 1); + up--; + } + } + if (allowAboveRoot) { + for (; up--; up) { + parts.unshift(".."); + } + } + return parts; + } + var splitPathRe = /^(\S+:\\|\/?)([\s\S]*?)((?:\.{1,2}|[^/\\]+?|)(\.[^./\\]*|))(?:[/\\]*)$/; + function splitPath(filename) { + const truncated = filename.length > 1024 ? `${filename.slice(-1024)}` : filename; + const parts = splitPathRe.exec(truncated); + return parts ? parts.slice(1) : []; + } + function resolve8(...args3) { + let resolvedPath = ""; + let resolvedAbsolute = false; + for (let i = args3.length - 1; i >= -1 && !resolvedAbsolute; i--) { + const path30 = i >= 0 ? args3[i] : "/"; + if (!path30) { + continue; + } + resolvedPath = `${path30}/${resolvedPath}`; + resolvedAbsolute = path30.charAt(0) === "/"; + } + resolvedPath = normalizeArray( + resolvedPath.split("/").filter((p) => !!p), + !resolvedAbsolute + ).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "."; + } + function trim2(arr) { + let start4 = 0; + for (; start4 < arr.length; start4++) { + if (arr[start4] !== "") { + break; + } + } + let end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") { + break; + } + } + if (start4 > end) { + return []; + } + return arr.slice(start4, end - start4 + 1); + } + function relative3(from, to) { + from = resolve8(from).slice(1); + to = resolve8(to).slice(1); + const fromParts = trim2(from.split("/")); + const toParts = trim2(to.split("/")); + const length = Math.min(fromParts.length, toParts.length); + let samePartsLength = length; + for (let i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break; + } + } + let outputParts = []; + for (let i = samePartsLength; i < fromParts.length; i++) { + outputParts.push(".."); + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/"); + } + function normalizePath(path30) { + const isPathAbsolute = isAbsolute(path30); + const trailingSlash = path30.slice(-1) === "/"; + let normalizedPath = normalizeArray( + path30.split("/").filter((p) => !!p), + !isPathAbsolute + ).join("/"); + if (!normalizedPath && !isPathAbsolute) { + normalizedPath = "."; + } + if (normalizedPath && trailingSlash) { + normalizedPath += "/"; + } + return (isPathAbsolute ? "/" : "") + normalizedPath; + } + function isAbsolute(path30) { + return path30.charAt(0) === "/"; + } + function join9(...args3) { + return normalizePath(args3.join("/")); + } + function dirname9(path30) { + const result = splitPath(path30); + const root = result[0]; + let dir = result[1]; + if (!root && !dir) { + return "."; + } + if (dir) { + dir = dir.slice(0, dir.length - 1); + } + return root + dir; + } + function basename9(path30, ext2) { + let f = splitPath(path30)[2]; + if (ext2 && f.slice(ext2.length * -1) === ext2) { + f = f.slice(0, f.length - ext2.length); + } + return f; + } + exports2.basename = basename9; + exports2.dirname = dirname9; + exports2.isAbsolute = isAbsolute; + exports2.join = join9; + exports2.normalizePath = normalizePath; + exports2.relative = relative3; + exports2.resolve = resolve8; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/syncpromise.js +var require_syncpromise = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/syncpromise.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var is = require_is(); + var States; + (function(States2) { + const PENDING = 0; + States2[States2["PENDING"] = PENDING] = "PENDING"; + const RESOLVED = 1; + States2[States2["RESOLVED"] = RESOLVED] = "RESOLVED"; + const REJECTED = 2; + States2[States2["REJECTED"] = REJECTED] = "REJECTED"; + })(States || (States = {})); + function resolvedSyncPromise(value) { + return new SyncPromise((resolve8) => { + resolve8(value); + }); + } + function rejectedSyncPromise(reason) { + return new SyncPromise((_, reject) => { + reject(reason); + }); + } + var SyncPromise = class _SyncPromise { + constructor(executor) { + _SyncPromise.prototype.__init.call(this); + _SyncPromise.prototype.__init2.call(this); + _SyncPromise.prototype.__init3.call(this); + _SyncPromise.prototype.__init4.call(this); + this._state = States.PENDING; + this._handlers = []; + try { + executor(this._resolve, this._reject); + } catch (e) { + this._reject(e); + } + } + /** JSDoc */ + then(onfulfilled, onrejected) { + return new _SyncPromise((resolve8, reject) => { + this._handlers.push([ + false, + (result) => { + if (!onfulfilled) { + resolve8(result); + } else { + try { + resolve8(onfulfilled(result)); + } catch (e) { + reject(e); + } + } + }, + (reason) => { + if (!onrejected) { + reject(reason); + } else { + try { + resolve8(onrejected(reason)); + } catch (e) { + reject(e); + } + } + } + ]); + this._executeHandlers(); + }); + } + /** JSDoc */ + catch(onrejected) { + return this.then((val) => val, onrejected); + } + /** JSDoc */ + finally(onfinally) { + return new _SyncPromise((resolve8, reject) => { + let val; + let isRejected; + return this.then( + (value) => { + isRejected = false; + val = value; + if (onfinally) { + onfinally(); + } + }, + (reason) => { + isRejected = true; + val = reason; + if (onfinally) { + onfinally(); + } + } + ).then(() => { + if (isRejected) { + reject(val); + return; + } + resolve8(val); + }); + }); + } + /** JSDoc */ + __init() { + this._resolve = (value) => { + this._setResult(States.RESOLVED, value); + }; + } + /** JSDoc */ + __init2() { + this._reject = (reason) => { + this._setResult(States.REJECTED, reason); + }; + } + /** JSDoc */ + __init3() { + this._setResult = (state, value) => { + if (this._state !== States.PENDING) { + return; + } + if (is.isThenable(value)) { + void value.then(this._resolve, this._reject); + return; + } + this._state = state; + this._value = value; + this._executeHandlers(); + }; + } + /** JSDoc */ + __init4() { + this._executeHandlers = () => { + if (this._state === States.PENDING) { + return; + } + const cachedHandlers = this._handlers.slice(); + this._handlers = []; + cachedHandlers.forEach((handler) => { + if (handler[0]) { + return; + } + if (this._state === States.RESOLVED) { + handler[1](this._value); + } + if (this._state === States.REJECTED) { + handler[2](this._value); + } + handler[0] = true; + }); + }; + } + }; + exports2.SyncPromise = SyncPromise; + exports2.rejectedSyncPromise = rejectedSyncPromise; + exports2.resolvedSyncPromise = resolvedSyncPromise; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/promisebuffer.js +var require_promisebuffer = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/promisebuffer.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var error = require_error2(); + var syncpromise = require_syncpromise(); + function makePromiseBuffer(limit) { + const buffer2 = []; + function isReady() { + return limit === void 0 || buffer2.length < limit; + } + function remove(task) { + return buffer2.splice(buffer2.indexOf(task), 1)[0]; + } + function add(taskProducer) { + if (!isReady()) { + return syncpromise.rejectedSyncPromise(new error.SentryError("Not adding Promise because buffer limit was reached.")); + } + const task = taskProducer(); + if (buffer2.indexOf(task) === -1) { + buffer2.push(task); + } + void task.then(() => remove(task)).then( + null, + () => remove(task).then(null, () => { + }) + ); + return task; + } + function drain(timeout) { + return new syncpromise.SyncPromise((resolve8, reject) => { + let counter = buffer2.length; + if (!counter) { + return resolve8(true); + } + const capturedSetTimeout = setTimeout(() => { + if (timeout && timeout > 0) { + resolve8(false); + } + }, timeout); + buffer2.forEach((item) => { + void syncpromise.resolvedSyncPromise(item).then(() => { + if (!--counter) { + clearTimeout(capturedSetTimeout); + resolve8(true); + } + }, reject); + }); + }); + } + return { + $: buffer2, + add, + drain + }; + } + exports2.makePromiseBuffer = makePromiseBuffer; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/url.js +var require_url = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/url.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function parseUrl(url2) { + if (!url2) { + return {}; + } + const match2 = url2.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/); + if (!match2) { + return {}; + } + const query = match2[6] || ""; + const fragment = match2[8] || ""; + return { + host: match2[4], + path: match2[5], + protocol: match2[2], + search: query, + hash: fragment, + relative: match2[5] + query + fragment + // everything minus origin + }; + } + function stripUrlQueryAndFragment(urlPath) { + return urlPath.split(/[\?#]/, 1)[0]; + } + function getNumberOfUrlSegments(url2) { + return url2.split(/\\?\//).filter((s) => s.length > 0 && s !== ",").length; + } + function getSanitizedUrlString(url2) { + const { protocol: protocol2, host, path: path30 } = url2; + const filteredHost = host && host.replace(/^.*@/, "[filtered]:[filtered]@").replace(":80", "").replace(":443", "") || ""; + return `${protocol2 ? `${protocol2}://` : ""}${filteredHost}${path30}`; + } + exports2.getNumberOfUrlSegments = getNumberOfUrlSegments; + exports2.getSanitizedUrlString = getSanitizedUrlString; + exports2.parseUrl = parseUrl; + exports2.stripUrlQueryAndFragment = stripUrlQueryAndFragment; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/requestdata.js +var require_requestdata = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/requestdata.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var is = require_is(); + var normalize6 = require_normalize(); + var url2 = require_url(); + var DEFAULT_INCLUDES = { + ip: false, + request: true, + transaction: true, + user: true + }; + var DEFAULT_REQUEST_INCLUDES = ["cookies", "data", "headers", "method", "query_string", "url"]; + var DEFAULT_USER_INCLUDES = ["id", "username", "email"]; + function addRequestDataToTransaction(transaction, req, deps) { + if (!transaction) + return; + if (!transaction.metadata.source || transaction.metadata.source === "url") { + transaction.setName(...extractPathForTransaction(req, { path: true, method: true })); + } + transaction.setData("url", req.originalUrl || req.url); + if (req.baseUrl) { + transaction.setData("baseUrl", req.baseUrl); + } + transaction.setData("query", extractQueryParams(req, deps)); + } + function extractPathForTransaction(req, options2 = {}) { + const method = req.method && req.method.toUpperCase(); + let path30 = ""; + let source2 = "url"; + if (options2.customRoute || req.route) { + path30 = options2.customRoute || `${req.baseUrl || ""}${req.route && req.route.path}`; + source2 = "route"; + } else if (req.originalUrl || req.url) { + path30 = url2.stripUrlQueryAndFragment(req.originalUrl || req.url || ""); + } + let name = ""; + if (options2.method && method) { + name += method; + } + if (options2.method && options2.path) { + name += " "; + } + if (options2.path && path30) { + name += path30; + } + return [name, source2]; + } + function extractTransaction(req, type2) { + switch (type2) { + case "path": { + return extractPathForTransaction(req, { path: true })[0]; + } + case "handler": { + return req.route && req.route.stack && req.route.stack[0] && req.route.stack[0].name || ""; + } + case "methodPath": + default: { + return extractPathForTransaction(req, { path: true, method: true })[0]; + } + } + } + function extractUserData(user, keys) { + const extractedUser = {}; + const attributes = Array.isArray(keys) ? keys : DEFAULT_USER_INCLUDES; + attributes.forEach((key) => { + if (user && key in user) { + extractedUser[key] = user[key]; + } + }); + return extractedUser; + } + function extractRequestData(req, options2) { + const { include = DEFAULT_REQUEST_INCLUDES, deps } = options2 || {}; + const requestData = {}; + const headers = req.headers || {}; + const method = req.method; + const host = req.hostname || req.host || headers.host || ""; + const protocol2 = req.protocol === "https" || req.socket && req.socket.encrypted ? "https" : "http"; + const originalUrl = req.originalUrl || req.url || ""; + const absoluteUrl = `${protocol2}://${host}${originalUrl}`; + include.forEach((key) => { + switch (key) { + case "headers": { + requestData.headers = headers; + break; + } + case "method": { + requestData.method = method; + break; + } + case "url": { + requestData.url = absoluteUrl; + break; + } + case "cookies": { + requestData.cookies = // TODO (v8 / #5257): We're only sending the empty object for backwards compatibility, so the last bit can + // come off in v8 + req.cookies || headers.cookie && deps && deps.cookie && deps.cookie.parse(headers.cookie) || {}; + break; + } + case "query_string": { + requestData.query_string = extractQueryParams(req, deps); + break; + } + case "data": { + if (method === "GET" || method === "HEAD") { + break; + } + if (req.body !== void 0) { + requestData.data = is.isString(req.body) ? req.body : JSON.stringify(normalize6.normalize(req.body)); + } + break; + } + default: { + if ({}.hasOwnProperty.call(req, key)) { + requestData[key] = req[key]; + } + } + } + }); + return requestData; + } + function addRequestDataToEvent(event, req, options2) { + const include = { + ...DEFAULT_INCLUDES, + ...options2 && options2.include + }; + if (include.request) { + const extractedRequestData = Array.isArray(include.request) ? extractRequestData(req, { include: include.request, deps: options2 && options2.deps }) : extractRequestData(req, { deps: options2 && options2.deps }); + event.request = { + ...event.request, + ...extractedRequestData + }; + } + if (include.user) { + const extractedUser = req.user && is.isPlainObject(req.user) ? extractUserData(req.user, include.user) : {}; + if (Object.keys(extractedUser).length) { + event.user = { + ...event.user, + ...extractedUser + }; + } + } + if (include.ip) { + const ip = req.ip || req.socket && req.socket.remoteAddress; + if (ip) { + event.user = { + ...event.user, + ip_address: ip + }; + } + } + if (include.transaction && !event.transaction) { + event.transaction = extractTransaction(req, include.transaction); + } + return event; + } + function extractQueryParams(req, deps) { + let originalUrl = req.originalUrl || req.url || ""; + if (!originalUrl) { + return; + } + if (originalUrl.startsWith("/")) { + originalUrl = `http://dogs.are.great${originalUrl}`; + } + return req.query || typeof URL !== void 0 && new URL(originalUrl).search.replace("?", "") || // In Node 8, `URL` isn't in the global scope, so we have to use the built-in module from Node + deps && deps.url && deps.url.parse(originalUrl).query || void 0; + } + exports2.addRequestDataToEvent = addRequestDataToEvent; + exports2.addRequestDataToTransaction = addRequestDataToTransaction; + exports2.extractPathForTransaction = extractPathForTransaction; + exports2.extractRequestData = extractRequestData; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/severity.js +var require_severity = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/severity.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var validSeverityLevels = ["fatal", "error", "warning", "log", "info", "debug"]; + function severityFromString(level) { + return severityLevelFromString(level); + } + function severityLevelFromString(level) { + return level === "warn" ? "warning" : validSeverityLevels.includes(level) ? level : "log"; + } + exports2.severityFromString = severityFromString; + exports2.severityLevelFromString = severityLevelFromString; + exports2.validSeverityLevels = validSeverityLevels; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/time.js +var require_time = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/time.js"(exports2, module2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var node = require_node3(); + var worldwide = require_worldwide(); + var WINDOW = worldwide.getGlobalObject(); + var dateTimestampSource = { + nowSeconds: () => Date.now() / 1e3 + }; + function getBrowserPerformance() { + const { performance: performance2 } = WINDOW; + if (!performance2 || !performance2.now) { + return void 0; + } + const timeOrigin = Date.now() - performance2.now(); + return { + now: () => performance2.now(), + timeOrigin + }; + } + function getNodePerformance() { + try { + const perfHooks = node.dynamicRequire(module2, "perf_hooks"); + return perfHooks.performance; + } catch (_) { + return void 0; + } + } + var platformPerformance = node.isNodeEnv() ? getNodePerformance() : getBrowserPerformance(); + var timestampSource = platformPerformance === void 0 ? dateTimestampSource : { + nowSeconds: () => (platformPerformance.timeOrigin + platformPerformance.now()) / 1e3 + }; + var dateTimestampInSeconds = dateTimestampSource.nowSeconds.bind(dateTimestampSource); + var timestampInSeconds = timestampSource.nowSeconds.bind(timestampSource); + var timestampWithMs = timestampInSeconds; + var usingPerformanceAPI = platformPerformance !== void 0; + exports2._browserPerformanceTimeOriginMode = void 0; + var browserPerformanceTimeOrigin = (() => { + const { performance: performance2 } = WINDOW; + if (!performance2 || !performance2.now) { + exports2._browserPerformanceTimeOriginMode = "none"; + return void 0; + } + const threshold = 3600 * 1e3; + const performanceNow = performance2.now(); + const dateNow = Date.now(); + const timeOriginDelta = performance2.timeOrigin ? Math.abs(performance2.timeOrigin + performanceNow - dateNow) : threshold; + const timeOriginIsReliable = timeOriginDelta < threshold; + const navigationStart = performance2.timing && performance2.timing.navigationStart; + const hasNavigationStart = typeof navigationStart === "number"; + const navigationStartDelta = hasNavigationStart ? Math.abs(navigationStart + performanceNow - dateNow) : threshold; + const navigationStartIsReliable = navigationStartDelta < threshold; + if (timeOriginIsReliable || navigationStartIsReliable) { + if (timeOriginDelta <= navigationStartDelta) { + exports2._browserPerformanceTimeOriginMode = "timeOrigin"; + return performance2.timeOrigin; + } else { + exports2._browserPerformanceTimeOriginMode = "navigationStart"; + return navigationStart; + } + } + exports2._browserPerformanceTimeOriginMode = "dateNow"; + return dateNow; + })(); + exports2.browserPerformanceTimeOrigin = browserPerformanceTimeOrigin; + exports2.dateTimestampInSeconds = dateTimestampInSeconds; + exports2.timestampInSeconds = timestampInSeconds; + exports2.timestampWithMs = timestampWithMs; + exports2.usingPerformanceAPI = usingPerformanceAPI; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/baggage.js +var require_baggage = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/baggage.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var is = require_is(); + var logger2 = require_logger(); + var BAGGAGE_HEADER_NAME = "baggage"; + var SENTRY_BAGGAGE_KEY_PREFIX = "sentry-"; + var SENTRY_BAGGAGE_KEY_PREFIX_REGEX = /^sentry-/; + var MAX_BAGGAGE_STRING_LENGTH = 8192; + function baggageHeaderToDynamicSamplingContext(baggageHeader) { + if (!is.isString(baggageHeader) && !Array.isArray(baggageHeader)) { + return void 0; + } + let baggageObject = {}; + if (Array.isArray(baggageHeader)) { + baggageObject = baggageHeader.reduce((acc, curr) => { + const currBaggageObject = baggageHeaderToObject(curr); + return { + ...acc, + ...currBaggageObject + }; + }, {}); + } else { + if (!baggageHeader) { + return void 0; + } + baggageObject = baggageHeaderToObject(baggageHeader); + } + const dynamicSamplingContext = Object.entries(baggageObject).reduce((acc, [key, value]) => { + if (key.match(SENTRY_BAGGAGE_KEY_PREFIX_REGEX)) { + const nonPrefixedKey = key.slice(SENTRY_BAGGAGE_KEY_PREFIX.length); + acc[nonPrefixedKey] = value; + } + return acc; + }, {}); + if (Object.keys(dynamicSamplingContext).length > 0) { + return dynamicSamplingContext; + } else { + return void 0; + } + } + function dynamicSamplingContextToSentryBaggageHeader(dynamicSamplingContext) { + if (!dynamicSamplingContext) { + return void 0; + } + const sentryPrefixedDSC = Object.entries(dynamicSamplingContext).reduce( + (acc, [dscKey, dscValue]) => { + if (dscValue) { + acc[`${SENTRY_BAGGAGE_KEY_PREFIX}${dscKey}`] = dscValue; + } + return acc; + }, + {} + ); + return objectToBaggageHeader(sentryPrefixedDSC); + } + function baggageHeaderToObject(baggageHeader) { + return baggageHeader.split(",").map((baggageEntry) => baggageEntry.split("=").map((keyOrValue) => decodeURIComponent(keyOrValue.trim()))).reduce((acc, [key, value]) => { + acc[key] = value; + return acc; + }, {}); + } + function objectToBaggageHeader(object) { + if (Object.keys(object).length === 0) { + return void 0; + } + return Object.entries(object).reduce((baggageHeader, [objectKey, objectValue], currentIndex) => { + const baggageEntry = `${encodeURIComponent(objectKey)}=${encodeURIComponent(objectValue)}`; + const newBaggageHeader = currentIndex === 0 ? baggageEntry : `${baggageHeader},${baggageEntry}`; + if (newBaggageHeader.length > MAX_BAGGAGE_STRING_LENGTH) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && logger2.logger.warn( + `Not adding key: ${objectKey} with val: ${objectValue} to baggage header due to exceeding baggage size limits.` + ); + return baggageHeader; + } else { + return newBaggageHeader; + } + }, ""); + } + exports2.BAGGAGE_HEADER_NAME = BAGGAGE_HEADER_NAME; + exports2.MAX_BAGGAGE_STRING_LENGTH = MAX_BAGGAGE_STRING_LENGTH; + exports2.SENTRY_BAGGAGE_KEY_PREFIX = SENTRY_BAGGAGE_KEY_PREFIX; + exports2.SENTRY_BAGGAGE_KEY_PREFIX_REGEX = SENTRY_BAGGAGE_KEY_PREFIX_REGEX; + exports2.baggageHeaderToDynamicSamplingContext = baggageHeaderToDynamicSamplingContext; + exports2.dynamicSamplingContextToSentryBaggageHeader = dynamicSamplingContextToSentryBaggageHeader; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/tracing.js +var require_tracing = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/tracing.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var baggage = require_baggage(); + var misc = require_misc(); + var TRACEPARENT_REGEXP = new RegExp( + "^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$" + // whitespace + ); + function extractTraceparentData(traceparent) { + if (!traceparent) { + return void 0; + } + const matches = traceparent.match(TRACEPARENT_REGEXP); + if (!matches) { + return void 0; + } + let parentSampled; + if (matches[3] === "1") { + parentSampled = true; + } else if (matches[3] === "0") { + parentSampled = false; + } + return { + traceId: matches[1], + parentSampled, + parentSpanId: matches[2] + }; + } + function tracingContextFromHeaders(sentryTrace, baggage$1) { + const traceparentData = extractTraceparentData(sentryTrace); + const dynamicSamplingContext = baggage.baggageHeaderToDynamicSamplingContext(baggage$1); + const { traceId, parentSpanId, parentSampled } = traceparentData || {}; + const propagationContext = { + traceId: traceId || misc.uuid4(), + spanId: misc.uuid4().substring(16), + sampled: parentSampled + }; + if (parentSpanId) { + propagationContext.parentSpanId = parentSpanId; + } + if (dynamicSamplingContext) { + propagationContext.dsc = dynamicSamplingContext; + } + return { + traceparentData, + dynamicSamplingContext, + propagationContext + }; + } + function generateSentryTraceHeader(traceId = misc.uuid4(), spanId = misc.uuid4().substring(16), sampled) { + let sampledString = ""; + if (sampled !== void 0) { + sampledString = sampled ? "-1" : "-0"; + } + return `${traceId}-${spanId}${sampledString}`; + } + exports2.TRACEPARENT_REGEXP = TRACEPARENT_REGEXP; + exports2.extractTraceparentData = extractTraceparentData; + exports2.generateSentryTraceHeader = generateSentryTraceHeader; + exports2.tracingContextFromHeaders = tracingContextFromHeaders; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/envelope.js +var require_envelope = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/envelope.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var dsn = require_dsn(); + var normalize6 = require_normalize(); + var object = require_object(); + function createEnvelope(headers, items = []) { + return [headers, items]; + } + function addItemToEnvelope(envelope, newItem) { + const [headers, items] = envelope; + return [headers, [...items, newItem]]; + } + function forEachEnvelopeItem(envelope, callback) { + const envelopeItems = envelope[1]; + for (const envelopeItem of envelopeItems) { + const envelopeItemType = envelopeItem[0].type; + const result = callback(envelopeItem, envelopeItemType); + if (result) { + return true; + } + } + return false; + } + function envelopeContainsItemType(envelope, types2) { + return forEachEnvelopeItem(envelope, (_, type2) => types2.includes(type2)); + } + function encodeUTF8(input, textEncoder2) { + const utf8 = textEncoder2 || new TextEncoder(); + return utf8.encode(input); + } + function serializeEnvelope(envelope, textEncoder2) { + const [envHeaders, items] = envelope; + let parts = JSON.stringify(envHeaders); + function append2(next) { + if (typeof parts === "string") { + parts = typeof next === "string" ? parts + next : [encodeUTF8(parts, textEncoder2), next]; + } else { + parts.push(typeof next === "string" ? encodeUTF8(next, textEncoder2) : next); + } + } + for (const item of items) { + const [itemHeaders, payload] = item; + append2(` +${JSON.stringify(itemHeaders)} +`); + if (typeof payload === "string" || payload instanceof Uint8Array) { + append2(payload); + } else { + let stringifiedPayload; + try { + stringifiedPayload = JSON.stringify(payload); + } catch (e) { + stringifiedPayload = JSON.stringify(normalize6.normalize(payload)); + } + append2(stringifiedPayload); + } + } + return typeof parts === "string" ? parts : concatBuffers(parts); + } + function concatBuffers(buffers) { + const totalLength = buffers.reduce((acc, buf) => acc + buf.length, 0); + const merged = new Uint8Array(totalLength); + let offset = 0; + for (const buffer2 of buffers) { + merged.set(buffer2, offset); + offset += buffer2.length; + } + return merged; + } + function parseEnvelope(env4, textEncoder2, textDecoder) { + let buffer2 = typeof env4 === "string" ? textEncoder2.encode(env4) : env4; + function readBinary2(length) { + const bin = buffer2.subarray(0, length); + buffer2 = buffer2.subarray(length + 1); + return bin; + } + function readJson() { + let i = buffer2.indexOf(10); + if (i < 0) { + i = buffer2.length; + } + return JSON.parse(textDecoder.decode(readBinary2(i))); + } + const envelopeHeader = readJson(); + const items = []; + while (buffer2.length) { + const itemHeader = readJson(); + const binaryLength = typeof itemHeader.length === "number" ? itemHeader.length : void 0; + items.push([itemHeader, binaryLength ? readBinary2(binaryLength) : readJson()]); + } + return [envelopeHeader, items]; + } + function createAttachmentEnvelopeItem(attachment, textEncoder2) { + const buffer2 = typeof attachment.data === "string" ? encodeUTF8(attachment.data, textEncoder2) : attachment.data; + return [ + object.dropUndefinedKeys({ + type: "attachment", + length: buffer2.length, + filename: attachment.filename, + content_type: attachment.contentType, + attachment_type: attachment.attachmentType + }), + buffer2 + ]; + } + var ITEM_TYPE_TO_DATA_CATEGORY_MAP = { + session: "session", + sessions: "session", + attachment: "attachment", + transaction: "transaction", + event: "error", + client_report: "internal", + user_report: "default", + profile: "profile", + replay_event: "replay", + replay_recording: "replay", + check_in: "monitor" + }; + function envelopeItemTypeToDataCategory(type2) { + return ITEM_TYPE_TO_DATA_CATEGORY_MAP[type2]; + } + function getSdkMetadataForEnvelopeHeader(metadataOrEvent) { + if (!metadataOrEvent || !metadataOrEvent.sdk) { + return; + } + const { name, version: version4 } = metadataOrEvent.sdk; + return { name, version: version4 }; + } + function createEventEnvelopeHeaders(event, sdkInfo, tunnel, dsn$1) { + const dynamicSamplingContext = event.sdkProcessingMetadata && event.sdkProcessingMetadata.dynamicSamplingContext; + return { + event_id: event.event_id, + sent_at: (/* @__PURE__ */ new Date()).toISOString(), + ...sdkInfo && { sdk: sdkInfo }, + ...!!tunnel && { dsn: dsn.dsnToString(dsn$1) }, + ...dynamicSamplingContext && { + trace: object.dropUndefinedKeys({ ...dynamicSamplingContext }) + } + }; + } + exports2.addItemToEnvelope = addItemToEnvelope; + exports2.createAttachmentEnvelopeItem = createAttachmentEnvelopeItem; + exports2.createEnvelope = createEnvelope; + exports2.createEventEnvelopeHeaders = createEventEnvelopeHeaders; + exports2.envelopeContainsItemType = envelopeContainsItemType; + exports2.envelopeItemTypeToDataCategory = envelopeItemTypeToDataCategory; + exports2.forEachEnvelopeItem = forEachEnvelopeItem; + exports2.getSdkMetadataForEnvelopeHeader = getSdkMetadataForEnvelopeHeader; + exports2.parseEnvelope = parseEnvelope; + exports2.serializeEnvelope = serializeEnvelope; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/clientreport.js +var require_clientreport = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/clientreport.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var envelope = require_envelope(); + var time = require_time(); + function createClientReportEnvelope(discarded_events, dsn, timestamp) { + const clientReportItem = [ + { type: "client_report" }, + { + timestamp: timestamp || time.dateTimestampInSeconds(), + discarded_events + } + ]; + return envelope.createEnvelope(dsn ? { dsn } : {}, [clientReportItem]); + } + exports2.createClientReportEnvelope = createClientReportEnvelope; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/ratelimit.js +var require_ratelimit = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/ratelimit.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var DEFAULT_RETRY_AFTER = 60 * 1e3; + function parseRetryAfterHeader(header, now = Date.now()) { + const headerDelay = parseInt(`${header}`, 10); + if (!isNaN(headerDelay)) { + return headerDelay * 1e3; + } + const headerDate = Date.parse(`${header}`); + if (!isNaN(headerDate)) { + return headerDate - now; + } + return DEFAULT_RETRY_AFTER; + } + function disabledUntil(limits, category) { + return limits[category] || limits.all || 0; + } + function isRateLimited(limits, category, now = Date.now()) { + return disabledUntil(limits, category) > now; + } + function updateRateLimits(limits, { statusCode, headers }, now = Date.now()) { + const updatedRateLimits = { + ...limits + }; + const rateLimitHeader = headers && headers["x-sentry-rate-limits"]; + const retryAfterHeader = headers && headers["retry-after"]; + if (rateLimitHeader) { + for (const limit of rateLimitHeader.trim().split(",")) { + const [retryAfter, categories] = limit.split(":", 2); + const headerDelay = parseInt(retryAfter, 10); + const delay = (!isNaN(headerDelay) ? headerDelay : 60) * 1e3; + if (!categories) { + updatedRateLimits.all = now + delay; + } else { + for (const category of categories.split(";")) { + updatedRateLimits[category] = now + delay; + } + } + } + } else if (retryAfterHeader) { + updatedRateLimits.all = now + parseRetryAfterHeader(retryAfterHeader, now); + } else if (statusCode === 429) { + updatedRateLimits.all = now + 60 * 1e3; + } + return updatedRateLimits; + } + exports2.DEFAULT_RETRY_AFTER = DEFAULT_RETRY_AFTER; + exports2.disabledUntil = disabledUntil; + exports2.isRateLimited = isRateLimited; + exports2.parseRetryAfterHeader = parseRetryAfterHeader; + exports2.updateRateLimits = updateRateLimits; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/userIntegrations.js +var require_userIntegrations = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/userIntegrations.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function setNestedKey(obj2, keyPath, value) { + const match2 = keyPath.match(/([a-z_]+)\.(.*)/i); + if (match2 === null) { + obj2[keyPath] = value; + } else { + const innerObj = obj2[match2[1]]; + setNestedKey(innerObj, match2[2], value); + } + } + function addOrUpdateIntegration(defaultIntegrationInstance, userIntegrations, forcedOptions = {}) { + return Array.isArray(userIntegrations) ? addOrUpdateIntegrationInArray(defaultIntegrationInstance, userIntegrations, forcedOptions) : addOrUpdateIntegrationInFunction( + defaultIntegrationInstance, + // Somehow TS can't figure out that not being an array makes this necessarily a function + userIntegrations, + forcedOptions + ); + } + function addOrUpdateIntegrationInArray(defaultIntegrationInstance, userIntegrations, forcedOptions) { + const userInstance = userIntegrations.find((integration) => integration.name === defaultIntegrationInstance.name); + if (userInstance) { + for (const [keyPath, value] of Object.entries(forcedOptions)) { + setNestedKey(userInstance, keyPath, value); + } + return userIntegrations; + } + return [...userIntegrations, defaultIntegrationInstance]; + } + function addOrUpdateIntegrationInFunction(defaultIntegrationInstance, userIntegrationsFunc, forcedOptions) { + const wrapper = (defaultIntegrations) => { + const userFinalIntegrations = userIntegrationsFunc(defaultIntegrations); + if (defaultIntegrationInstance.allowExclusionByUser) { + const userFinalInstance = userFinalIntegrations.find( + (integration) => integration.name === defaultIntegrationInstance.name + ); + if (!userFinalInstance) { + return userFinalIntegrations; + } + } + return addOrUpdateIntegrationInArray(defaultIntegrationInstance, userFinalIntegrations, forcedOptions); + }; + return wrapper; + } + exports2.addOrUpdateIntegration = addOrUpdateIntegration; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/cache.js +var require_cache = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/cache.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function makeFifoCache(size) { + let evictionOrder = []; + let cache = {}; + return { + add(key, value) { + while (evictionOrder.length >= size) { + const evictCandidate = evictionOrder.shift(); + if (evictCandidate !== void 0) { + delete cache[evictCandidate]; + } + } + if (cache[key]) { + this.delete(key); + } + evictionOrder.push(key); + cache[key] = value; + }, + clear() { + cache = {}; + evictionOrder = []; + }, + get(key) { + return cache[key]; + }, + size() { + return evictionOrder.length; + }, + // Delete cache key and return true if it existed, false otherwise. + delete(key) { + if (!cache[key]) { + return false; + } + delete cache[key]; + for (let i = 0; i < evictionOrder.length; i++) { + if (evictionOrder[i] === key) { + evictionOrder.splice(i, 1); + break; + } + } + return true; + } + }; + } + exports2.makeFifoCache = makeFifoCache; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/vendor/escapeStringForRegex.js +var require_escapeStringForRegex = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/vendor/escapeStringForRegex.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function escapeStringForRegex(regexString) { + return regexString.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d"); + } + exports2.escapeStringForRegex = escapeStringForRegex; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/index.js +var require_cjs3 = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var aggregateErrors = require_aggregate_errors(); + var browser = require_browser(); + var dsn = require_dsn(); + var error = require_error2(); + var worldwide = require_worldwide(); + var instrument = require_instrument(); + var is = require_is(); + var logger2 = require_logger(); + var memo = require_memo(); + var misc = require_misc(); + var node = require_node3(); + var normalize6 = require_normalize(); + var object = require_object(); + var path30 = require_path(); + var promisebuffer = require_promisebuffer(); + var requestdata = require_requestdata(); + var severity = require_severity(); + var stacktrace = require_stacktrace(); + var string = require_string(); + var supports = require_supports(); + var syncpromise = require_syncpromise(); + var time = require_time(); + var tracing = require_tracing(); + var env4 = require_env(); + var envelope = require_envelope(); + var clientreport = require_clientreport(); + var ratelimit = require_ratelimit(); + var baggage = require_baggage(); + var url2 = require_url(); + var userIntegrations = require_userIntegrations(); + var cache = require_cache(); + var escapeStringForRegex = require_escapeStringForRegex(); + var supportsHistory = require_supportsHistory(); + exports2.applyAggregateErrorsToEvent = aggregateErrors.applyAggregateErrorsToEvent; + exports2.getDomElement = browser.getDomElement; + exports2.getLocationHref = browser.getLocationHref; + exports2.htmlTreeAsString = browser.htmlTreeAsString; + exports2.dsnFromString = dsn.dsnFromString; + exports2.dsnToString = dsn.dsnToString; + exports2.makeDsn = dsn.makeDsn; + exports2.SentryError = error.SentryError; + exports2.GLOBAL_OBJ = worldwide.GLOBAL_OBJ; + exports2.getGlobalObject = worldwide.getGlobalObject; + exports2.getGlobalSingleton = worldwide.getGlobalSingleton; + exports2.SENTRY_XHR_DATA_KEY = instrument.SENTRY_XHR_DATA_KEY; + exports2.addInstrumentationHandler = instrument.addInstrumentationHandler; + exports2.originalConsoleMethods = instrument.originalConsoleMethods; + exports2.parseFetchArgs = instrument.parseFetchArgs; + exports2.isDOMError = is.isDOMError; + exports2.isDOMException = is.isDOMException; + exports2.isElement = is.isElement; + exports2.isError = is.isError; + exports2.isErrorEvent = is.isErrorEvent; + exports2.isEvent = is.isEvent; + exports2.isInstanceOf = is.isInstanceOf; + exports2.isNaN = is.isNaN; + exports2.isPlainObject = is.isPlainObject; + exports2.isPrimitive = is.isPrimitive; + exports2.isRegExp = is.isRegExp; + exports2.isString = is.isString; + exports2.isSyntheticEvent = is.isSyntheticEvent; + exports2.isThenable = is.isThenable; + exports2.CONSOLE_LEVELS = logger2.CONSOLE_LEVELS; + exports2.consoleSandbox = logger2.consoleSandbox; + Object.defineProperty(exports2, "logger", { + enumerable: true, + get: () => logger2.logger + }); + exports2.memoBuilder = memo.memoBuilder; + exports2.addContextToFrame = misc.addContextToFrame; + exports2.addExceptionMechanism = misc.addExceptionMechanism; + exports2.addExceptionTypeValue = misc.addExceptionTypeValue; + exports2.arrayify = misc.arrayify; + exports2.checkOrSetAlreadyCaught = misc.checkOrSetAlreadyCaught; + exports2.getEventDescription = misc.getEventDescription; + exports2.parseSemver = misc.parseSemver; + exports2.uuid4 = misc.uuid4; + exports2.dynamicRequire = node.dynamicRequire; + exports2.isNodeEnv = node.isNodeEnv; + exports2.loadModule = node.loadModule; + exports2.normalize = normalize6.normalize; + exports2.normalizeToSize = normalize6.normalizeToSize; + exports2.walk = normalize6.walk; + exports2.addNonEnumerableProperty = object.addNonEnumerableProperty; + exports2.convertToPlainObject = object.convertToPlainObject; + exports2.dropUndefinedKeys = object.dropUndefinedKeys; + exports2.extractExceptionKeysForMessage = object.extractExceptionKeysForMessage; + exports2.fill = object.fill; + exports2.getOriginalFunction = object.getOriginalFunction; + exports2.markFunctionWrapped = object.markFunctionWrapped; + exports2.objectify = object.objectify; + exports2.urlEncode = object.urlEncode; + exports2.basename = path30.basename; + exports2.dirname = path30.dirname; + exports2.isAbsolute = path30.isAbsolute; + exports2.join = path30.join; + exports2.normalizePath = path30.normalizePath; + exports2.relative = path30.relative; + exports2.resolve = path30.resolve; + exports2.makePromiseBuffer = promisebuffer.makePromiseBuffer; + exports2.addRequestDataToEvent = requestdata.addRequestDataToEvent; + exports2.addRequestDataToTransaction = requestdata.addRequestDataToTransaction; + exports2.extractPathForTransaction = requestdata.extractPathForTransaction; + exports2.extractRequestData = requestdata.extractRequestData; + exports2.severityFromString = severity.severityFromString; + exports2.severityLevelFromString = severity.severityLevelFromString; + exports2.validSeverityLevels = severity.validSeverityLevels; + exports2.createStackParser = stacktrace.createStackParser; + exports2.getFunctionName = stacktrace.getFunctionName; + exports2.nodeStackLineParser = stacktrace.nodeStackLineParser; + exports2.stackParserFromStackParserOptions = stacktrace.stackParserFromStackParserOptions; + exports2.stripSentryFramesAndReverse = stacktrace.stripSentryFramesAndReverse; + exports2.isMatchingPattern = string.isMatchingPattern; + exports2.safeJoin = string.safeJoin; + exports2.snipLine = string.snipLine; + exports2.stringMatchesSomePattern = string.stringMatchesSomePattern; + exports2.truncate = string.truncate; + exports2.isNativeFetch = supports.isNativeFetch; + exports2.supportsDOMError = supports.supportsDOMError; + exports2.supportsDOMException = supports.supportsDOMException; + exports2.supportsErrorEvent = supports.supportsErrorEvent; + exports2.supportsFetch = supports.supportsFetch; + exports2.supportsNativeFetch = supports.supportsNativeFetch; + exports2.supportsReferrerPolicy = supports.supportsReferrerPolicy; + exports2.supportsReportingObserver = supports.supportsReportingObserver; + exports2.SyncPromise = syncpromise.SyncPromise; + exports2.rejectedSyncPromise = syncpromise.rejectedSyncPromise; + exports2.resolvedSyncPromise = syncpromise.resolvedSyncPromise; + Object.defineProperty(exports2, "_browserPerformanceTimeOriginMode", { + enumerable: true, + get: () => time._browserPerformanceTimeOriginMode + }); + exports2.browserPerformanceTimeOrigin = time.browserPerformanceTimeOrigin; + exports2.dateTimestampInSeconds = time.dateTimestampInSeconds; + exports2.timestampInSeconds = time.timestampInSeconds; + exports2.timestampWithMs = time.timestampWithMs; + exports2.usingPerformanceAPI = time.usingPerformanceAPI; + exports2.TRACEPARENT_REGEXP = tracing.TRACEPARENT_REGEXP; + exports2.extractTraceparentData = tracing.extractTraceparentData; + exports2.generateSentryTraceHeader = tracing.generateSentryTraceHeader; + exports2.tracingContextFromHeaders = tracing.tracingContextFromHeaders; + exports2.getSDKSource = env4.getSDKSource; + exports2.isBrowserBundle = env4.isBrowserBundle; + exports2.addItemToEnvelope = envelope.addItemToEnvelope; + exports2.createAttachmentEnvelopeItem = envelope.createAttachmentEnvelopeItem; + exports2.createEnvelope = envelope.createEnvelope; + exports2.createEventEnvelopeHeaders = envelope.createEventEnvelopeHeaders; + exports2.envelopeContainsItemType = envelope.envelopeContainsItemType; + exports2.envelopeItemTypeToDataCategory = envelope.envelopeItemTypeToDataCategory; + exports2.forEachEnvelopeItem = envelope.forEachEnvelopeItem; + exports2.getSdkMetadataForEnvelopeHeader = envelope.getSdkMetadataForEnvelopeHeader; + exports2.parseEnvelope = envelope.parseEnvelope; + exports2.serializeEnvelope = envelope.serializeEnvelope; + exports2.createClientReportEnvelope = clientreport.createClientReportEnvelope; + exports2.DEFAULT_RETRY_AFTER = ratelimit.DEFAULT_RETRY_AFTER; + exports2.disabledUntil = ratelimit.disabledUntil; + exports2.isRateLimited = ratelimit.isRateLimited; + exports2.parseRetryAfterHeader = ratelimit.parseRetryAfterHeader; + exports2.updateRateLimits = ratelimit.updateRateLimits; + exports2.BAGGAGE_HEADER_NAME = baggage.BAGGAGE_HEADER_NAME; + exports2.MAX_BAGGAGE_STRING_LENGTH = baggage.MAX_BAGGAGE_STRING_LENGTH; + exports2.SENTRY_BAGGAGE_KEY_PREFIX = baggage.SENTRY_BAGGAGE_KEY_PREFIX; + exports2.SENTRY_BAGGAGE_KEY_PREFIX_REGEX = baggage.SENTRY_BAGGAGE_KEY_PREFIX_REGEX; + exports2.baggageHeaderToDynamicSamplingContext = baggage.baggageHeaderToDynamicSamplingContext; + exports2.dynamicSamplingContextToSentryBaggageHeader = baggage.dynamicSamplingContextToSentryBaggageHeader; + exports2.getNumberOfUrlSegments = url2.getNumberOfUrlSegments; + exports2.getSanitizedUrlString = url2.getSanitizedUrlString; + exports2.parseUrl = url2.parseUrl; + exports2.stripUrlQueryAndFragment = url2.stripUrlQueryAndFragment; + exports2.addOrUpdateIntegration = userIntegrations.addOrUpdateIntegration; + exports2.makeFifoCache = cache.makeFifoCache; + exports2.escapeStringForRegex = escapeStringForRegex.escapeStringForRegex; + exports2.supportsHistory = supportsHistory.supportsHistory; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/constants.js +var require_constants = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/constants.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var DEFAULT_ENVIRONMENT = "production"; + exports2.DEFAULT_ENVIRONMENT = DEFAULT_ENVIRONMENT; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/session.js +var require_session = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/session.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + function makeSession(context2) { + const startingTime = utils.timestampInSeconds(); + const session = { + sid: utils.uuid4(), + init: true, + timestamp: startingTime, + started: startingTime, + duration: 0, + status: "ok", + errors: 0, + ignoreDuration: false, + toJSON: () => sessionToJSON(session) + }; + if (context2) { + updateSession(session, context2); + } + return session; + } + function updateSession(session, context2 = {}) { + if (context2.user) { + if (!session.ipAddress && context2.user.ip_address) { + session.ipAddress = context2.user.ip_address; + } + if (!session.did && !context2.did) { + session.did = context2.user.id || context2.user.email || context2.user.username; + } + } + session.timestamp = context2.timestamp || utils.timestampInSeconds(); + if (context2.ignoreDuration) { + session.ignoreDuration = context2.ignoreDuration; + } + if (context2.sid) { + session.sid = context2.sid.length === 32 ? context2.sid : utils.uuid4(); + } + if (context2.init !== void 0) { + session.init = context2.init; + } + if (!session.did && context2.did) { + session.did = `${context2.did}`; + } + if (typeof context2.started === "number") { + session.started = context2.started; + } + if (session.ignoreDuration) { + session.duration = void 0; + } else if (typeof context2.duration === "number") { + session.duration = context2.duration; + } else { + const duration = session.timestamp - session.started; + session.duration = duration >= 0 ? duration : 0; + } + if (context2.release) { + session.release = context2.release; + } + if (context2.environment) { + session.environment = context2.environment; + } + if (!session.ipAddress && context2.ipAddress) { + session.ipAddress = context2.ipAddress; + } + if (!session.userAgent && context2.userAgent) { + session.userAgent = context2.userAgent; + } + if (typeof context2.errors === "number") { + session.errors = context2.errors; + } + if (context2.status) { + session.status = context2.status; + } + } + function closeSession(session, status) { + let context2 = {}; + if (status) { + context2 = { status }; + } else if (session.status === "ok") { + context2 = { status: "exited" }; + } + updateSession(session, context2); + } + function sessionToJSON(session) { + return utils.dropUndefinedKeys({ + sid: `${session.sid}`, + init: session.init, + // Make sure that sec is converted to ms for date constructor + started: new Date(session.started * 1e3).toISOString(), + timestamp: new Date(session.timestamp * 1e3).toISOString(), + status: session.status, + errors: session.errors, + did: typeof session.did === "number" || typeof session.did === "string" ? `${session.did}` : void 0, + duration: session.duration, + attrs: { + release: session.release, + environment: session.environment, + ip_address: session.ipAddress, + user_agent: session.userAgent + } + }); + } + exports2.closeSession = closeSession; + exports2.makeSession = makeSession; + exports2.updateSession = updateSession; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/scope.js +var require_scope = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/scope.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var session = require_session(); + var DEFAULT_MAX_BREADCRUMBS = 100; + var Scope = class _Scope { + /** Flag if notifying is happening. */ + /** Callback for client to receive scope changes. */ + /** Callback list that will be called after {@link applyToEvent}. */ + /** Array of breadcrumbs. */ + /** User */ + /** Tags */ + /** Extra */ + /** Contexts */ + /** Attachments */ + /** Propagation Context for distributed tracing */ + /** + * A place to stash data which is needed at some point in the SDK's event processing pipeline but which shouldn't get + * sent to Sentry + */ + /** Fingerprint */ + /** Severity */ + // eslint-disable-next-line deprecation/deprecation + /** Transaction Name */ + /** Span */ + /** Session */ + /** Request Mode Session Status */ + // NOTE: Any field which gets added here should get added not only to the constructor but also to the `clone` method. + constructor() { + this._notifyingListeners = false; + this._scopeListeners = []; + this._eventProcessors = []; + this._breadcrumbs = []; + this._attachments = []; + this._user = {}; + this._tags = {}; + this._extra = {}; + this._contexts = {}; + this._sdkProcessingMetadata = {}; + this._propagationContext = generatePropagationContext(); + } + /** + * Inherit values from the parent scope. + * @param scope to clone. + */ + static clone(scope) { + const newScope = new _Scope(); + if (scope) { + newScope._breadcrumbs = [...scope._breadcrumbs]; + newScope._tags = { ...scope._tags }; + newScope._extra = { ...scope._extra }; + newScope._contexts = { ...scope._contexts }; + newScope._user = scope._user; + newScope._level = scope._level; + newScope._span = scope._span; + newScope._session = scope._session; + newScope._transactionName = scope._transactionName; + newScope._fingerprint = scope._fingerprint; + newScope._eventProcessors = [...scope._eventProcessors]; + newScope._requestSession = scope._requestSession; + newScope._attachments = [...scope._attachments]; + newScope._sdkProcessingMetadata = { ...scope._sdkProcessingMetadata }; + newScope._propagationContext = { ...scope._propagationContext }; + } + return newScope; + } + /** + * Add internal on change listener. Used for sub SDKs that need to store the scope. + * @hidden + */ + addScopeListener(callback) { + this._scopeListeners.push(callback); + } + /** + * @inheritDoc + */ + addEventProcessor(callback) { + this._eventProcessors.push(callback); + return this; + } + /** + * @inheritDoc + */ + setUser(user) { + this._user = user || {}; + if (this._session) { + session.updateSession(this._session, { user }); + } + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + getUser() { + return this._user; + } + /** + * @inheritDoc + */ + getRequestSession() { + return this._requestSession; + } + /** + * @inheritDoc + */ + setRequestSession(requestSession) { + this._requestSession = requestSession; + return this; + } + /** + * @inheritDoc + */ + setTags(tags) { + this._tags = { + ...this._tags, + ...tags + }; + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + setTag(key, value) { + this._tags = { ...this._tags, [key]: value }; + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + setExtras(extras) { + this._extra = { + ...this._extra, + ...extras + }; + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + setExtra(key, extra) { + this._extra = { ...this._extra, [key]: extra }; + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + setFingerprint(fingerprint) { + this._fingerprint = fingerprint; + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + setLevel(level) { + this._level = level; + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + setTransactionName(name) { + this._transactionName = name; + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + setContext(key, context2) { + if (context2 === null) { + delete this._contexts[key]; + } else { + this._contexts[key] = context2; + } + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + setSpan(span) { + this._span = span; + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + getSpan() { + return this._span; + } + /** + * @inheritDoc + */ + getTransaction() { + const span = this.getSpan(); + return span && span.transaction; + } + /** + * @inheritDoc + */ + setSession(session2) { + if (!session2) { + delete this._session; + } else { + this._session = session2; + } + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + getSession() { + return this._session; + } + /** + * @inheritDoc + */ + update(captureContext) { + if (!captureContext) { + return this; + } + if (typeof captureContext === "function") { + const updatedScope = captureContext(this); + return updatedScope instanceof _Scope ? updatedScope : this; + } + if (captureContext instanceof _Scope) { + this._tags = { ...this._tags, ...captureContext._tags }; + this._extra = { ...this._extra, ...captureContext._extra }; + this._contexts = { ...this._contexts, ...captureContext._contexts }; + if (captureContext._user && Object.keys(captureContext._user).length) { + this._user = captureContext._user; + } + if (captureContext._level) { + this._level = captureContext._level; + } + if (captureContext._fingerprint) { + this._fingerprint = captureContext._fingerprint; + } + if (captureContext._requestSession) { + this._requestSession = captureContext._requestSession; + } + if (captureContext._propagationContext) { + this._propagationContext = captureContext._propagationContext; + } + } else if (utils.isPlainObject(captureContext)) { + captureContext = captureContext; + this._tags = { ...this._tags, ...captureContext.tags }; + this._extra = { ...this._extra, ...captureContext.extra }; + this._contexts = { ...this._contexts, ...captureContext.contexts }; + if (captureContext.user) { + this._user = captureContext.user; + } + if (captureContext.level) { + this._level = captureContext.level; + } + if (captureContext.fingerprint) { + this._fingerprint = captureContext.fingerprint; + } + if (captureContext.requestSession) { + this._requestSession = captureContext.requestSession; + } + if (captureContext.propagationContext) { + this._propagationContext = captureContext.propagationContext; + } + } + return this; + } + /** + * @inheritDoc + */ + clear() { + this._breadcrumbs = []; + this._tags = {}; + this._extra = {}; + this._user = {}; + this._contexts = {}; + this._level = void 0; + this._transactionName = void 0; + this._fingerprint = void 0; + this._requestSession = void 0; + this._span = void 0; + this._session = void 0; + this._notifyScopeListeners(); + this._attachments = []; + this._propagationContext = generatePropagationContext(); + return this; + } + /** + * @inheritDoc + */ + addBreadcrumb(breadcrumb, maxBreadcrumbs) { + const maxCrumbs = typeof maxBreadcrumbs === "number" ? maxBreadcrumbs : DEFAULT_MAX_BREADCRUMBS; + if (maxCrumbs <= 0) { + return this; + } + const mergedBreadcrumb = { + timestamp: utils.dateTimestampInSeconds(), + ...breadcrumb + }; + this._breadcrumbs = [...this._breadcrumbs, mergedBreadcrumb].slice(-maxCrumbs); + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + getLastBreadcrumb() { + return this._breadcrumbs[this._breadcrumbs.length - 1]; + } + /** + * @inheritDoc + */ + clearBreadcrumbs() { + this._breadcrumbs = []; + this._notifyScopeListeners(); + return this; + } + /** + * @inheritDoc + */ + addAttachment(attachment) { + this._attachments.push(attachment); + return this; + } + /** + * @inheritDoc + */ + getAttachments() { + return this._attachments; + } + /** + * @inheritDoc + */ + clearAttachments() { + this._attachments = []; + return this; + } + /** + * Applies data from the scope to the event and runs all event processors on it. + * + * @param event Event + * @param hint Object containing additional information about the original exception, for use by the event processors. + * @hidden + */ + applyToEvent(event, hint = {}) { + if (this._extra && Object.keys(this._extra).length) { + event.extra = { ...this._extra, ...event.extra }; + } + if (this._tags && Object.keys(this._tags).length) { + event.tags = { ...this._tags, ...event.tags }; + } + if (this._user && Object.keys(this._user).length) { + event.user = { ...this._user, ...event.user }; + } + if (this._contexts && Object.keys(this._contexts).length) { + event.contexts = { ...this._contexts, ...event.contexts }; + } + if (this._level) { + event.level = this._level; + } + if (this._transactionName) { + event.transaction = this._transactionName; + } + if (this._span) { + event.contexts = { trace: this._span.getTraceContext(), ...event.contexts }; + const transaction = this._span.transaction; + if (transaction) { + event.sdkProcessingMetadata = { + dynamicSamplingContext: transaction.getDynamicSamplingContext(), + ...event.sdkProcessingMetadata + }; + const transactionName = transaction.name; + if (transactionName) { + event.tags = { transaction: transactionName, ...event.tags }; + } + } + } + this._applyFingerprint(event); + event.breadcrumbs = [...event.breadcrumbs || [], ...this._breadcrumbs]; + event.breadcrumbs = event.breadcrumbs.length > 0 ? event.breadcrumbs : void 0; + event.sdkProcessingMetadata = { + ...event.sdkProcessingMetadata, + ...this._sdkProcessingMetadata, + propagationContext: this._propagationContext + }; + return this._notifyEventProcessors([...getGlobalEventProcessors(), ...this._eventProcessors], event, hint); + } + /** + * Add data which will be accessible during event processing but won't get sent to Sentry + */ + setSDKProcessingMetadata(newData) { + this._sdkProcessingMetadata = { ...this._sdkProcessingMetadata, ...newData }; + return this; + } + /** + * @inheritDoc + */ + setPropagationContext(context2) { + this._propagationContext = context2; + return this; + } + /** + * @inheritDoc + */ + getPropagationContext() { + return this._propagationContext; + } + /** + * This will be called after {@link applyToEvent} is finished. + */ + _notifyEventProcessors(processors, event, hint, index = 0) { + return new utils.SyncPromise((resolve8, reject) => { + const processor = processors[index]; + if (event === null || typeof processor !== "function") { + resolve8(event); + } else { + const result = processor({ ...event }, hint); + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && processor.id && result === null && utils.logger.log(`Event processor "${processor.id}" dropped event`); + if (utils.isThenable(result)) { + void result.then((final) => this._notifyEventProcessors(processors, final, hint, index + 1).then(resolve8)).then(null, reject); + } else { + void this._notifyEventProcessors(processors, result, hint, index + 1).then(resolve8).then(null, reject); + } + } + }); + } + /** + * This will be called on every set call. + */ + _notifyScopeListeners() { + if (!this._notifyingListeners) { + this._notifyingListeners = true; + this._scopeListeners.forEach((callback) => { + callback(this); + }); + this._notifyingListeners = false; + } + } + /** + * Applies fingerprint from the scope to the event if there's one, + * uses message if there's one instead or get rid of empty fingerprint + */ + _applyFingerprint(event) { + event.fingerprint = event.fingerprint ? utils.arrayify(event.fingerprint) : []; + if (this._fingerprint) { + event.fingerprint = event.fingerprint.concat(this._fingerprint); + } + if (event.fingerprint && !event.fingerprint.length) { + delete event.fingerprint; + } + } + }; + function getGlobalEventProcessors() { + return utils.getGlobalSingleton("globalEventProcessors", () => []); + } + function addGlobalEventProcessor(callback) { + getGlobalEventProcessors().push(callback); + } + function generatePropagationContext() { + return { + traceId: utils.uuid4(), + spanId: utils.uuid4().substring(16) + }; + } + exports2.Scope = Scope; + exports2.addGlobalEventProcessor = addGlobalEventProcessor; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/hub.js +var require_hub = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/hub.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var constants = require_constants(); + var scope = require_scope(); + var session = require_session(); + var API_VERSION = 4; + var DEFAULT_BREADCRUMBS = 100; + var Hub = class { + /** Is a {@link Layer}[] containing the client and scope */ + /** Contains the last event id of a captured event. */ + /** + * Creates a new instance of the hub, will push one {@link Layer} into the + * internal stack on creation. + * + * @param client bound to the hub. + * @param scope bound to the hub. + * @param version number, higher number means higher priority. + */ + constructor(client, scope$1 = new scope.Scope(), _version = API_VERSION) { + this._version = _version; + this._stack = [{ scope: scope$1 }]; + if (client) { + this.bindClient(client); + } + } + /** + * @inheritDoc + */ + isOlderThan(version4) { + return this._version < version4; + } + /** + * @inheritDoc + */ + bindClient(client) { + const top = this.getStackTop(); + top.client = client; + if (client && client.setupIntegrations) { + client.setupIntegrations(); + } + } + /** + * @inheritDoc + */ + pushScope() { + const scope$1 = scope.Scope.clone(this.getScope()); + this.getStack().push({ + client: this.getClient(), + scope: scope$1 + }); + return scope$1; + } + /** + * @inheritDoc + */ + popScope() { + if (this.getStack().length <= 1) + return false; + return !!this.getStack().pop(); + } + /** + * @inheritDoc + */ + withScope(callback) { + const scope2 = this.pushScope(); + try { + callback(scope2); + } finally { + this.popScope(); + } + } + /** + * @inheritDoc + */ + getClient() { + return this.getStackTop().client; + } + /** Returns the scope of the top stack. */ + getScope() { + return this.getStackTop().scope; + } + /** Returns the scope stack for domains or the process. */ + getStack() { + return this._stack; + } + /** Returns the topmost scope layer in the order domain > local > process. */ + getStackTop() { + return this._stack[this._stack.length - 1]; + } + /** + * @inheritDoc + */ + captureException(exception, hint) { + const eventId = this._lastEventId = hint && hint.event_id ? hint.event_id : utils.uuid4(); + const syntheticException = new Error("Sentry syntheticException"); + this._withClient((client, scope2) => { + client.captureException( + exception, + { + originalException: exception, + syntheticException, + ...hint, + event_id: eventId + }, + scope2 + ); + }); + return eventId; + } + /** + * @inheritDoc + */ + captureMessage(message, level, hint) { + const eventId = this._lastEventId = hint && hint.event_id ? hint.event_id : utils.uuid4(); + const syntheticException = new Error(message); + this._withClient((client, scope2) => { + client.captureMessage( + message, + level, + { + originalException: message, + syntheticException, + ...hint, + event_id: eventId + }, + scope2 + ); + }); + return eventId; + } + /** + * @inheritDoc + */ + captureEvent(event, hint) { + const eventId = hint && hint.event_id ? hint.event_id : utils.uuid4(); + if (!event.type) { + this._lastEventId = eventId; + } + this._withClient((client, scope2) => { + client.captureEvent(event, { ...hint, event_id: eventId }, scope2); + }); + return eventId; + } + /** + * @inheritDoc + */ + lastEventId() { + return this._lastEventId; + } + /** + * @inheritDoc + */ + addBreadcrumb(breadcrumb, hint) { + const { scope: scope2, client } = this.getStackTop(); + if (!client) + return; + const { beforeBreadcrumb = null, maxBreadcrumbs = DEFAULT_BREADCRUMBS } = client.getOptions && client.getOptions() || {}; + if (maxBreadcrumbs <= 0) + return; + const timestamp = utils.dateTimestampInSeconds(); + const mergedBreadcrumb = { timestamp, ...breadcrumb }; + const finalBreadcrumb = beforeBreadcrumb ? utils.consoleSandbox(() => beforeBreadcrumb(mergedBreadcrumb, hint)) : mergedBreadcrumb; + if (finalBreadcrumb === null) + return; + if (client.emit) { + client.emit("beforeAddBreadcrumb", finalBreadcrumb, hint); + } + scope2.addBreadcrumb(finalBreadcrumb, maxBreadcrumbs); + } + /** + * @inheritDoc + */ + setUser(user) { + this.getScope().setUser(user); + } + /** + * @inheritDoc + */ + setTags(tags) { + this.getScope().setTags(tags); + } + /** + * @inheritDoc + */ + setExtras(extras) { + this.getScope().setExtras(extras); + } + /** + * @inheritDoc + */ + setTag(key, value) { + this.getScope().setTag(key, value); + } + /** + * @inheritDoc + */ + setExtra(key, extra) { + this.getScope().setExtra(key, extra); + } + /** + * @inheritDoc + */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any + setContext(name, context2) { + this.getScope().setContext(name, context2); + } + /** + * @inheritDoc + */ + configureScope(callback) { + const { scope: scope2, client } = this.getStackTop(); + if (client) { + callback(scope2); + } + } + /** + * @inheritDoc + */ + run(callback) { + const oldHub = makeMain(this); + try { + callback(this); + } finally { + makeMain(oldHub); + } + } + /** + * @inheritDoc + */ + getIntegration(integration) { + const client = this.getClient(); + if (!client) + return null; + try { + return client.getIntegration(integration); + } catch (_oO) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn(`Cannot retrieve integration ${integration.id} from the current Hub`); + return null; + } + } + /** + * @inheritDoc + */ + startTransaction(context2, customSamplingContext) { + const result = this._callExtensionMethod("startTransaction", context2, customSamplingContext); + if ((typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && !result) { + const client = this.getClient(); + if (!client) { + console.warn( + "Tracing extension 'startTransaction' is missing. You should 'init' the SDK before calling 'startTransaction'" + ); + } else { + console.warn(`Tracing extension 'startTransaction' has not been added. Call 'addTracingExtensions' before calling 'init': +Sentry.addTracingExtensions(); +Sentry.init({...}); +`); + } + } + return result; + } + /** + * @inheritDoc + */ + traceHeaders() { + return this._callExtensionMethod("traceHeaders"); + } + /** + * @inheritDoc + */ + captureSession(endSession = false) { + if (endSession) { + return this.endSession(); + } + this._sendSessionUpdate(); + } + /** + * @inheritDoc + */ + endSession() { + const layer = this.getStackTop(); + const scope2 = layer.scope; + const session$1 = scope2.getSession(); + if (session$1) { + session.closeSession(session$1); + } + this._sendSessionUpdate(); + scope2.setSession(); + } + /** + * @inheritDoc + */ + startSession(context2) { + const { scope: scope2, client } = this.getStackTop(); + const { release, environment = constants.DEFAULT_ENVIRONMENT } = client && client.getOptions() || {}; + const { userAgent } = utils.GLOBAL_OBJ.navigator || {}; + const session$1 = session.makeSession({ + release, + environment, + user: scope2.getUser(), + ...userAgent && { userAgent }, + ...context2 + }); + const currentSession = scope2.getSession && scope2.getSession(); + if (currentSession && currentSession.status === "ok") { + session.updateSession(currentSession, { status: "exited" }); + } + this.endSession(); + scope2.setSession(session$1); + return session$1; + } + /** + * Returns if default PII should be sent to Sentry and propagated in ourgoing requests + * when Tracing is used. + */ + shouldSendDefaultPii() { + const client = this.getClient(); + const options2 = client && client.getOptions(); + return Boolean(options2 && options2.sendDefaultPii); + } + /** + * Sends the current Session on the scope + */ + _sendSessionUpdate() { + const { scope: scope2, client } = this.getStackTop(); + const session2 = scope2.getSession(); + if (session2 && client && client.captureSession) { + client.captureSession(session2); + } + } + /** + * Internal helper function to call a method on the top client if it exists. + * + * @param method The method to call on the client. + * @param args Arguments to pass to the client function. + */ + _withClient(callback) { + const { scope: scope2, client } = this.getStackTop(); + if (client) { + callback(client, scope2); + } + } + /** + * Calls global extension method and binding current instance to the function call + */ + // @ts-ignore Function lacks ending return statement and return type does not include 'undefined'. ts(2366) + // eslint-disable-next-line @typescript-eslint/no-explicit-any + _callExtensionMethod(method, ...args3) { + const carrier = getMainCarrier(); + const sentry = carrier.__SENTRY__; + if (sentry && sentry.extensions && typeof sentry.extensions[method] === "function") { + return sentry.extensions[method].apply(this, args3); + } + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn(`Extension method ${method} couldn't be found, doing nothing.`); + } + }; + function getMainCarrier() { + utils.GLOBAL_OBJ.__SENTRY__ = utils.GLOBAL_OBJ.__SENTRY__ || { + extensions: {}, + hub: void 0 + }; + return utils.GLOBAL_OBJ; + } + function makeMain(hub) { + const registry = getMainCarrier(); + const oldHub = getHubFromCarrier(registry); + setHubOnCarrier(registry, hub); + return oldHub; + } + function getCurrentHub() { + const registry = getMainCarrier(); + if (registry.__SENTRY__ && registry.__SENTRY__.acs) { + const hub = registry.__SENTRY__.acs.getCurrentHub(); + if (hub) { + return hub; + } + } + return getGlobalHub(registry); + } + function getGlobalHub(registry = getMainCarrier()) { + if (!hasHubOnCarrier(registry) || getHubFromCarrier(registry).isOlderThan(API_VERSION)) { + setHubOnCarrier(registry, new Hub()); + } + return getHubFromCarrier(registry); + } + function ensureHubOnCarrier(carrier, parent = getGlobalHub()) { + if (!hasHubOnCarrier(carrier) || getHubFromCarrier(carrier).isOlderThan(API_VERSION)) { + const globalHubTopStack = parent.getStackTop(); + setHubOnCarrier(carrier, new Hub(globalHubTopStack.client, scope.Scope.clone(globalHubTopStack.scope))); + } + } + function setAsyncContextStrategy(strategy) { + const registry = getMainCarrier(); + registry.__SENTRY__ = registry.__SENTRY__ || {}; + registry.__SENTRY__.acs = strategy; + } + function runWithAsyncContext(callback, options2 = {}) { + const registry = getMainCarrier(); + if (registry.__SENTRY__ && registry.__SENTRY__.acs) { + return registry.__SENTRY__.acs.runWithAsyncContext(callback, options2); + } + return callback(); + } + function hasHubOnCarrier(carrier) { + return !!(carrier && carrier.__SENTRY__ && carrier.__SENTRY__.hub); + } + function getHubFromCarrier(carrier) { + return utils.getGlobalSingleton("hub", () => new Hub(), carrier); + } + function setHubOnCarrier(carrier, hub) { + if (!carrier) + return false; + const __SENTRY__ = carrier.__SENTRY__ = carrier.__SENTRY__ || {}; + __SENTRY__.hub = hub; + return true; + } + exports2.API_VERSION = API_VERSION; + exports2.Hub = Hub; + exports2.ensureHubOnCarrier = ensureHubOnCarrier; + exports2.getCurrentHub = getCurrentHub; + exports2.getHubFromCarrier = getHubFromCarrier; + exports2.getMainCarrier = getMainCarrier; + exports2.makeMain = makeMain; + exports2.runWithAsyncContext = runWithAsyncContext; + exports2.setAsyncContextStrategy = setAsyncContextStrategy; + exports2.setHubOnCarrier = setHubOnCarrier; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/utils/hasTracingEnabled.js +var require_hasTracingEnabled = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/utils/hasTracingEnabled.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var hub = require_hub(); + function hasTracingEnabled(maybeOptions) { + if (typeof __SENTRY_TRACING__ === "boolean" && !__SENTRY_TRACING__) { + return false; + } + const client = hub.getCurrentHub().getClient(); + const options2 = maybeOptions || client && client.getOptions(); + return !!options2 && (options2.enableTracing || "tracesSampleRate" in options2 || "tracesSampler" in options2); + } + exports2.hasTracingEnabled = hasTracingEnabled; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/utils.js +var require_utils4 = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/utils.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var hub = require_hub(); + var utils = require_cjs3(); + function getActiveTransaction(maybeHub) { + const hub$1 = maybeHub || hub.getCurrentHub(); + const scope = hub$1.getScope(); + return scope.getTransaction(); + } + exports2.TRACEPARENT_REGEXP = utils.TRACEPARENT_REGEXP; + exports2.extractTraceparentData = utils.extractTraceparentData; + exports2.stripUrlQueryAndFragment = utils.stripUrlQueryAndFragment; + exports2.getActiveTransaction = getActiveTransaction; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/errors.js +var require_errors2 = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/errors.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var utils$1 = require_utils4(); + var errorsInstrumented = false; + function registerErrorInstrumentation() { + if (errorsInstrumented) { + return; + } + errorsInstrumented = true; + utils.addInstrumentationHandler("error", errorCallback); + utils.addInstrumentationHandler("unhandledrejection", errorCallback); + } + function errorCallback() { + const activeTransaction = utils$1.getActiveTransaction(); + if (activeTransaction) { + const status = "internal_error"; + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`[Tracing] Transaction: ${status} -> Global error occured`); + activeTransaction.setStatus(status); + } + } + errorCallback.tag = "sentry_tracingErrorCallback"; + exports2.registerErrorInstrumentation = registerErrorInstrumentation; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/span.js +var require_span = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/span.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var SpanRecorder = class { + constructor(maxlen = 1e3) { + this._maxlen = maxlen; + this.spans = []; + } + /** + * This is just so that we don't run out of memory while recording a lot + * of spans. At some point we just stop and flush out the start of the + * trace tree (i.e.the first n spans with the smallest + * start_timestamp). + */ + add(span) { + if (this.spans.length > this._maxlen) { + span.spanRecorder = void 0; + } else { + this.spans.push(span); + } + } + }; + var Span = class _Span { + /** + * @inheritDoc + */ + /** + * @inheritDoc + */ + /** + * @inheritDoc + */ + /** + * Internal keeper of the status + */ + /** + * @inheritDoc + */ + /** + * Timestamp in seconds when the span was created. + */ + /** + * Timestamp in seconds when the span ended. + */ + /** + * @inheritDoc + */ + /** + * @inheritDoc + */ + /** + * @inheritDoc + */ + /** + * @inheritDoc + */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any + /** + * List of spans that were finalized + */ + /** + * @inheritDoc + */ + /** + * The instrumenter that created this span. + */ + /** + * The origin of the span, giving context about what created the span. + */ + /** + * You should never call the constructor manually, always use `Sentry.startTransaction()` + * or call `startChild()` on an existing span. + * @internal + * @hideconstructor + * @hidden + */ + constructor(spanContext = {}) { + this.traceId = spanContext.traceId || utils.uuid4(); + this.spanId = spanContext.spanId || utils.uuid4().substring(16); + this.startTimestamp = spanContext.startTimestamp || utils.timestampInSeconds(); + this.tags = spanContext.tags || {}; + this.data = spanContext.data || {}; + this.instrumenter = spanContext.instrumenter || "sentry"; + this.origin = spanContext.origin || "manual"; + if (spanContext.parentSpanId) { + this.parentSpanId = spanContext.parentSpanId; + } + if ("sampled" in spanContext) { + this.sampled = spanContext.sampled; + } + if (spanContext.op) { + this.op = spanContext.op; + } + if (spanContext.description) { + this.description = spanContext.description; + } + if (spanContext.name) { + this.description = spanContext.name; + } + if (spanContext.status) { + this.status = spanContext.status; + } + if (spanContext.endTimestamp) { + this.endTimestamp = spanContext.endTimestamp; + } + } + /** + * @inheritDoc + */ + startChild(spanContext) { + const childSpan = new _Span({ + ...spanContext, + parentSpanId: this.spanId, + sampled: this.sampled, + traceId: this.traceId + }); + childSpan.spanRecorder = this.spanRecorder; + if (childSpan.spanRecorder) { + childSpan.spanRecorder.add(childSpan); + } + childSpan.transaction = this.transaction; + if ((typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && childSpan.transaction) { + const opStr = spanContext && spanContext.op || "< unknown op >"; + const nameStr = childSpan.transaction.name || "< unknown name >"; + const idStr = childSpan.transaction.spanId; + const logMessage = `[Tracing] Starting '${opStr}' span on transaction '${nameStr}' (${idStr}).`; + childSpan.transaction.metadata.spanMetadata[childSpan.spanId] = { logMessage }; + utils.logger.log(logMessage); + } + return childSpan; + } + /** + * @inheritDoc + */ + setTag(key, value) { + this.tags = { ...this.tags, [key]: value }; + return this; + } + /** + * @inheritDoc + */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types + setData(key, value) { + this.data = { ...this.data, [key]: value }; + return this; + } + /** + * @inheritDoc + */ + setStatus(value) { + this.status = value; + return this; + } + /** + * @inheritDoc + */ + setHttpStatus(httpStatus) { + this.setTag("http.status_code", String(httpStatus)); + this.setData("http.response.status_code", httpStatus); + const spanStatus = spanStatusfromHttpCode(httpStatus); + if (spanStatus !== "unknown_error") { + this.setStatus(spanStatus); + } + return this; + } + /** + * @inheritDoc + */ + setName(name) { + this.description = name; + } + /** + * @inheritDoc + */ + isSuccess() { + return this.status === "ok"; + } + /** + * @inheritDoc + */ + finish(endTimestamp) { + if ((typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && // Don't call this for transactions + this.transaction && this.transaction.spanId !== this.spanId) { + const { logMessage } = this.transaction.metadata.spanMetadata[this.spanId]; + if (logMessage) { + utils.logger.log(logMessage.replace("Starting", "Finishing")); + } + } + this.endTimestamp = typeof endTimestamp === "number" ? endTimestamp : utils.timestampInSeconds(); + } + /** + * @inheritDoc + */ + toTraceparent() { + return utils.generateSentryTraceHeader(this.traceId, this.spanId, this.sampled); + } + /** + * @inheritDoc + */ + toContext() { + return utils.dropUndefinedKeys({ + data: this.data, + description: this.description, + endTimestamp: this.endTimestamp, + op: this.op, + parentSpanId: this.parentSpanId, + sampled: this.sampled, + spanId: this.spanId, + startTimestamp: this.startTimestamp, + status: this.status, + tags: this.tags, + traceId: this.traceId + }); + } + /** + * @inheritDoc + */ + updateWithContext(spanContext) { + this.data = spanContext.data || {}; + this.description = spanContext.description; + this.endTimestamp = spanContext.endTimestamp; + this.op = spanContext.op; + this.parentSpanId = spanContext.parentSpanId; + this.sampled = spanContext.sampled; + this.spanId = spanContext.spanId || this.spanId; + this.startTimestamp = spanContext.startTimestamp || this.startTimestamp; + this.status = spanContext.status; + this.tags = spanContext.tags || {}; + this.traceId = spanContext.traceId || this.traceId; + return this; + } + /** + * @inheritDoc + */ + getTraceContext() { + return utils.dropUndefinedKeys({ + data: Object.keys(this.data).length > 0 ? this.data : void 0, + description: this.description, + op: this.op, + parent_span_id: this.parentSpanId, + span_id: this.spanId, + status: this.status, + tags: Object.keys(this.tags).length > 0 ? this.tags : void 0, + trace_id: this.traceId + }); + } + /** + * @inheritDoc + */ + toJSON() { + return utils.dropUndefinedKeys({ + data: Object.keys(this.data).length > 0 ? this.data : void 0, + description: this.description, + op: this.op, + parent_span_id: this.parentSpanId, + span_id: this.spanId, + start_timestamp: this.startTimestamp, + status: this.status, + tags: Object.keys(this.tags).length > 0 ? this.tags : void 0, + timestamp: this.endTimestamp, + trace_id: this.traceId, + origin: this.origin + }); + } + }; + function spanStatusfromHttpCode(httpStatus) { + if (httpStatus < 400 && httpStatus >= 100) { + return "ok"; + } + if (httpStatus >= 400 && httpStatus < 500) { + switch (httpStatus) { + case 401: + return "unauthenticated"; + case 403: + return "permission_denied"; + case 404: + return "not_found"; + case 409: + return "already_exists"; + case 413: + return "failed_precondition"; + case 429: + return "resource_exhausted"; + default: + return "invalid_argument"; + } + } + if (httpStatus >= 500 && httpStatus < 600) { + switch (httpStatus) { + case 501: + return "unimplemented"; + case 503: + return "unavailable"; + case 504: + return "deadline_exceeded"; + default: + return "internal_error"; + } + } + return "unknown_error"; + } + exports2.Span = Span; + exports2.SpanRecorder = SpanRecorder; + exports2.spanStatusfromHttpCode = spanStatusfromHttpCode; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/dynamicSamplingContext.js +var require_dynamicSamplingContext = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/dynamicSamplingContext.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var constants = require_constants(); + function getDynamicSamplingContextFromClient(trace_id, client, scope) { + const options2 = client.getOptions(); + const { publicKey: public_key } = client.getDsn() || {}; + const { segment: user_segment } = scope && scope.getUser() || {}; + const dsc = utils.dropUndefinedKeys({ + environment: options2.environment || constants.DEFAULT_ENVIRONMENT, + release: options2.release, + user_segment, + public_key, + trace_id + }); + client.emit && client.emit("createDsc", dsc); + return dsc; + } + exports2.getDynamicSamplingContextFromClient = getDynamicSamplingContextFromClient; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/transaction.js +var require_transaction = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/transaction.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var hub = require_hub(); + var dynamicSamplingContext = require_dynamicSamplingContext(); + var span = require_span(); + var Transaction = class extends span.Span { + /** + * The reference to the current hub. + */ + /** + * This constructor should never be called manually. Those instrumenting tracing should use + * `Sentry.startTransaction()`, and internal methods should use `hub.startTransaction()`. + * @internal + * @hideconstructor + * @hidden + */ + constructor(transactionContext, hub$1) { + super(transactionContext); + delete this.description; + this._measurements = {}; + this._contexts = {}; + this._hub = hub$1 || hub.getCurrentHub(); + this._name = transactionContext.name || ""; + this.metadata = { + source: "custom", + ...transactionContext.metadata, + spanMetadata: {} + }; + this._trimEnd = transactionContext.trimEnd; + this.transaction = this; + const incomingDynamicSamplingContext = this.metadata.dynamicSamplingContext; + if (incomingDynamicSamplingContext) { + this._frozenDynamicSamplingContext = { ...incomingDynamicSamplingContext }; + } + } + /** Getter for `name` property */ + get name() { + return this._name; + } + /** Setter for `name` property, which also sets `source` as custom */ + set name(newName) { + this.setName(newName); + } + /** + * JSDoc + */ + setName(name, source2 = "custom") { + this._name = name; + this.metadata.source = source2; + } + /** + * Attaches SpanRecorder to the span itself + * @param maxlen maximum number of spans that can be recorded + */ + initSpanRecorder(maxlen = 1e3) { + if (!this.spanRecorder) { + this.spanRecorder = new span.SpanRecorder(maxlen); + } + this.spanRecorder.add(this); + } + /** + * @inheritDoc + */ + setContext(key, context2) { + if (context2 === null) { + delete this._contexts[key]; + } else { + this._contexts[key] = context2; + } + } + /** + * @inheritDoc + */ + setMeasurement(name, value, unit = "") { + this._measurements[name] = { value, unit }; + } + /** + * @inheritDoc + */ + setMetadata(newMetadata) { + this.metadata = { ...this.metadata, ...newMetadata }; + } + /** + * @inheritDoc + */ + finish(endTimestamp) { + if (this.endTimestamp !== void 0) { + return void 0; + } + if (!this.name) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("Transaction has no name, falling back to ``."); + this.name = ""; + } + super.finish(endTimestamp); + const client = this._hub.getClient(); + if (client && client.emit) { + client.emit("finishTransaction", this); + } + if (this.sampled !== true) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Tracing] Discarding transaction because its trace was not chosen to be sampled."); + if (client) { + client.recordDroppedEvent("sample_rate", "transaction"); + } + return void 0; + } + const finishedSpans = this.spanRecorder ? this.spanRecorder.spans.filter((s) => s !== this && s.endTimestamp) : []; + if (this._trimEnd && finishedSpans.length > 0) { + this.endTimestamp = finishedSpans.reduce((prev, current) => { + if (prev.endTimestamp && current.endTimestamp) { + return prev.endTimestamp > current.endTimestamp ? prev : current; + } + return prev; + }).endTimestamp; + } + const metadata2 = this.metadata; + const transaction = { + contexts: { + ...this._contexts, + // We don't want to override trace context + trace: this.getTraceContext() + }, + spans: finishedSpans, + start_timestamp: this.startTimestamp, + tags: this.tags, + timestamp: this.endTimestamp, + transaction: this.name, + type: "transaction", + sdkProcessingMetadata: { + ...metadata2, + dynamicSamplingContext: this.getDynamicSamplingContext() + }, + ...metadata2.source && { + transaction_info: { + source: metadata2.source + } + } + }; + const hasMeasurements = Object.keys(this._measurements).length > 0; + if (hasMeasurements) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log( + "[Measurements] Adding measurements to transaction", + JSON.stringify(this._measurements, void 0, 2) + ); + transaction.measurements = this._measurements; + } + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`[Tracing] Finishing ${this.op} transaction: ${this.name}.`); + return this._hub.captureEvent(transaction); + } + /** + * @inheritDoc + */ + toContext() { + const spanContext = super.toContext(); + return utils.dropUndefinedKeys({ + ...spanContext, + name: this.name, + trimEnd: this._trimEnd + }); + } + /** + * @inheritDoc + */ + updateWithContext(transactionContext) { + super.updateWithContext(transactionContext); + this.name = transactionContext.name || ""; + this._trimEnd = transactionContext.trimEnd; + return this; + } + /** + * @inheritdoc + * + * @experimental + */ + getDynamicSamplingContext() { + if (this._frozenDynamicSamplingContext) { + return this._frozenDynamicSamplingContext; + } + const hub$1 = this._hub || hub.getCurrentHub(); + const client = hub$1.getClient(); + if (!client) + return {}; + const scope = hub$1.getScope(); + const dsc = dynamicSamplingContext.getDynamicSamplingContextFromClient(this.traceId, client, scope); + const maybeSampleRate = this.metadata.sampleRate; + if (maybeSampleRate !== void 0) { + dsc.sample_rate = `${maybeSampleRate}`; + } + const source2 = this.metadata.source; + if (source2 && source2 !== "url") { + dsc.transaction = this.name; + } + if (this.sampled !== void 0) { + dsc.sampled = String(this.sampled); + } + return dsc; + } + /** + * Override the current hub with a new one. + * Used if you want another hub to finish the transaction. + * + * @internal + */ + setHub(hub2) { + this._hub = hub2; + } + }; + exports2.Transaction = Transaction; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/idletransaction.js +var require_idletransaction = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/idletransaction.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var span = require_span(); + var transaction = require_transaction(); + var TRACING_DEFAULTS = { + idleTimeout: 1e3, + finalTimeout: 3e4, + heartbeatInterval: 5e3 + }; + var FINISH_REASON_TAG = "finishReason"; + var IDLE_TRANSACTION_FINISH_REASONS = [ + "heartbeatFailed", + "idleTimeout", + "documentHidden", + "finalTimeout", + "externalFinish", + "cancelled" + ]; + var IdleTransactionSpanRecorder = class extends span.SpanRecorder { + constructor(_pushActivity, _popActivity, transactionSpanId, maxlen) { + super(maxlen); + this._pushActivity = _pushActivity; + this._popActivity = _popActivity; + this.transactionSpanId = transactionSpanId; + } + /** + * @inheritDoc + */ + add(span2) { + if (span2.spanId !== this.transactionSpanId) { + span2.finish = (endTimestamp) => { + span2.endTimestamp = typeof endTimestamp === "number" ? endTimestamp : utils.timestampInSeconds(); + this._popActivity(span2.spanId); + }; + if (span2.endTimestamp === void 0) { + this._pushActivity(span2.spanId); + } + } + super.add(span2); + } + }; + var IdleTransaction = class extends transaction.Transaction { + // Activities store a list of active spans + // Track state of activities in previous heartbeat + // Amount of times heartbeat has counted. Will cause transaction to finish after 3 beats. + // We should not use heartbeat if we finished a transaction + // Idle timeout was canceled and we should finish the transaction with the last span end. + /** + * Timer that tracks Transaction idleTimeout + */ + constructor(transactionContext, _idleHub, _idleTimeout = TRACING_DEFAULTS.idleTimeout, _finalTimeout = TRACING_DEFAULTS.finalTimeout, _heartbeatInterval = TRACING_DEFAULTS.heartbeatInterval, _onScope = false) { + super(transactionContext, _idleHub); + this._idleHub = _idleHub; + this._idleTimeout = _idleTimeout; + this._finalTimeout = _finalTimeout; + this._heartbeatInterval = _heartbeatInterval; + this._onScope = _onScope; + this.activities = {}; + this._heartbeatCounter = 0; + this._finished = false; + this._idleTimeoutCanceledPermanently = false; + this._beforeFinishCallbacks = []; + this._finishReason = IDLE_TRANSACTION_FINISH_REASONS[4]; + if (_onScope) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`Setting idle transaction on scope. Span ID: ${this.spanId}`); + _idleHub.configureScope((scope) => scope.setSpan(this)); + } + this._restartIdleTimeout(); + setTimeout(() => { + if (!this._finished) { + this.setStatus("deadline_exceeded"); + this._finishReason = IDLE_TRANSACTION_FINISH_REASONS[3]; + this.finish(); + } + }, this._finalTimeout); + } + /** {@inheritDoc} */ + finish(endTimestamp = utils.timestampInSeconds()) { + this._finished = true; + this.activities = {}; + if (this.op === "ui.action.click") { + this.setTag(FINISH_REASON_TAG, this._finishReason); + } + if (this.spanRecorder) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Tracing] finishing IdleTransaction", new Date(endTimestamp * 1e3).toISOString(), this.op); + for (const callback of this._beforeFinishCallbacks) { + callback(this, endTimestamp); + } + this.spanRecorder.spans = this.spanRecorder.spans.filter((span2) => { + if (span2.spanId === this.spanId) { + return true; + } + if (!span2.endTimestamp) { + span2.endTimestamp = endTimestamp; + span2.setStatus("cancelled"); + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Tracing] cancelling span since transaction ended early", JSON.stringify(span2, void 0, 2)); + } + const spanStartedBeforeTransactionFinish = span2.startTimestamp < endTimestamp; + const timeoutWithMarginOfError = (this._finalTimeout + this._idleTimeout) / 1e3; + const spanEndedBeforeFinalTimeout = span2.endTimestamp - this.startTimestamp < timeoutWithMarginOfError; + if (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) { + const stringifiedSpan = JSON.stringify(span2, void 0, 2); + if (!spanStartedBeforeTransactionFinish) { + utils.logger.log("[Tracing] discarding Span since it happened after Transaction was finished", stringifiedSpan); + } else if (!spanEndedBeforeFinalTimeout) { + utils.logger.log("[Tracing] discarding Span since it finished after Transaction final timeout", stringifiedSpan); + } + } + return spanStartedBeforeTransactionFinish && spanEndedBeforeFinalTimeout; + }); + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Tracing] flushing IdleTransaction"); + } else { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Tracing] No active IdleTransaction"); + } + if (this._onScope) { + const scope = this._idleHub.getScope(); + if (scope.getTransaction() === this) { + scope.setSpan(void 0); + } + } + return super.finish(endTimestamp); + } + /** + * Register a callback function that gets excecuted before the transaction finishes. + * Useful for cleanup or if you want to add any additional spans based on current context. + * + * This is exposed because users have no other way of running something before an idle transaction + * finishes. + */ + registerBeforeFinishCallback(callback) { + this._beforeFinishCallbacks.push(callback); + } + /** + * @inheritDoc + */ + initSpanRecorder(maxlen) { + if (!this.spanRecorder) { + const pushActivity = (id) => { + if (this._finished) { + return; + } + this._pushActivity(id); + }; + const popActivity = (id) => { + if (this._finished) { + return; + } + this._popActivity(id); + }; + this.spanRecorder = new IdleTransactionSpanRecorder(pushActivity, popActivity, this.spanId, maxlen); + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("Starting heartbeat"); + this._pingHeartbeat(); + } + this.spanRecorder.add(this); + } + /** + * Cancels the existing idle timeout, if there is one. + * @param restartOnChildSpanChange Default is `true`. + * If set to false the transaction will end + * with the last child span. + */ + cancelIdleTimeout(endTimestamp, { + restartOnChildSpanChange + } = { + restartOnChildSpanChange: true + }) { + this._idleTimeoutCanceledPermanently = restartOnChildSpanChange === false; + if (this._idleTimeoutID) { + clearTimeout(this._idleTimeoutID); + this._idleTimeoutID = void 0; + if (Object.keys(this.activities).length === 0 && this._idleTimeoutCanceledPermanently) { + this._finishReason = IDLE_TRANSACTION_FINISH_REASONS[5]; + this.finish(endTimestamp); + } + } + } + /** + * Temporary method used to externally set the transaction's `finishReason` + * + * ** WARNING** + * This is for the purpose of experimentation only and will be removed in the near future, do not use! + * + * @internal + * + */ + setFinishReason(reason) { + this._finishReason = reason; + } + /** + * Restarts idle timeout, if there is no running idle timeout it will start one. + */ + _restartIdleTimeout(endTimestamp) { + this.cancelIdleTimeout(); + this._idleTimeoutID = setTimeout(() => { + if (!this._finished && Object.keys(this.activities).length === 0) { + this._finishReason = IDLE_TRANSACTION_FINISH_REASONS[1]; + this.finish(endTimestamp); + } + }, this._idleTimeout); + } + /** + * Start tracking a specific activity. + * @param spanId The span id that represents the activity + */ + _pushActivity(spanId) { + this.cancelIdleTimeout(void 0, { restartOnChildSpanChange: !this._idleTimeoutCanceledPermanently }); + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`[Tracing] pushActivity: ${spanId}`); + this.activities[spanId] = true; + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Tracing] new activities count", Object.keys(this.activities).length); + } + /** + * Remove an activity from usage + * @param spanId The span id that represents the activity + */ + _popActivity(spanId) { + if (this.activities[spanId]) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`[Tracing] popActivity ${spanId}`); + delete this.activities[spanId]; + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Tracing] new activities count", Object.keys(this.activities).length); + } + if (Object.keys(this.activities).length === 0) { + const endTimestamp = utils.timestampInSeconds(); + if (this._idleTimeoutCanceledPermanently) { + this._finishReason = IDLE_TRANSACTION_FINISH_REASONS[5]; + this.finish(endTimestamp); + } else { + this._restartIdleTimeout(endTimestamp + this._idleTimeout / 1e3); + } + } + } + /** + * Checks when entries of this.activities are not changing for 3 beats. + * If this occurs we finish the transaction. + */ + _beat() { + if (this._finished) { + return; + } + const heartbeatString = Object.keys(this.activities).join(""); + if (heartbeatString === this._prevHeartbeatString) { + this._heartbeatCounter++; + } else { + this._heartbeatCounter = 1; + } + this._prevHeartbeatString = heartbeatString; + if (this._heartbeatCounter >= 3) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Tracing] Transaction finished because of no change for 3 heart beats"); + this.setStatus("deadline_exceeded"); + this._finishReason = IDLE_TRANSACTION_FINISH_REASONS[0]; + this.finish(); + } else { + this._pingHeartbeat(); + } + } + /** + * Pings the heartbeat + */ + _pingHeartbeat() { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`pinging Heartbeat -> current counter: ${this._heartbeatCounter}`); + setTimeout(() => { + this._beat(); + }, this._heartbeatInterval); + } + }; + exports2.IdleTransaction = IdleTransaction; + exports2.IdleTransactionSpanRecorder = IdleTransactionSpanRecorder; + exports2.TRACING_DEFAULTS = TRACING_DEFAULTS; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/hubextensions.js +var require_hubextensions = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/hubextensions.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var hub = require_hub(); + var hasTracingEnabled = require_hasTracingEnabled(); + var errors = require_errors2(); + var idletransaction = require_idletransaction(); + var transaction = require_transaction(); + function traceHeaders() { + const scope = this.getScope(); + const span = scope.getSpan(); + return span ? { + "sentry-trace": span.toTraceparent() + } : {}; + } + function sample(transaction2, options2, samplingContext) { + if (!hasTracingEnabled.hasTracingEnabled(options2)) { + transaction2.sampled = false; + return transaction2; + } + if (transaction2.sampled !== void 0) { + transaction2.setMetadata({ + sampleRate: Number(transaction2.sampled) + }); + return transaction2; + } + let sampleRate; + if (typeof options2.tracesSampler === "function") { + sampleRate = options2.tracesSampler(samplingContext); + transaction2.setMetadata({ + sampleRate: Number(sampleRate) + }); + } else if (samplingContext.parentSampled !== void 0) { + sampleRate = samplingContext.parentSampled; + } else if (typeof options2.tracesSampleRate !== "undefined") { + sampleRate = options2.tracesSampleRate; + transaction2.setMetadata({ + sampleRate: Number(sampleRate) + }); + } else { + sampleRate = 1; + transaction2.setMetadata({ + sampleRate + }); + } + if (!isValidSampleRate(sampleRate)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("[Tracing] Discarding transaction because of invalid sample rate."); + transaction2.sampled = false; + return transaction2; + } + if (!sampleRate) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log( + `[Tracing] Discarding transaction because ${typeof options2.tracesSampler === "function" ? "tracesSampler returned 0 or false" : "a negative sampling decision was inherited or tracesSampleRate is set to 0"}` + ); + transaction2.sampled = false; + return transaction2; + } + transaction2.sampled = Math.random() < sampleRate; + if (!transaction2.sampled) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log( + `[Tracing] Discarding transaction because it's not included in the random sample (sampling rate = ${Number( + sampleRate + )})` + ); + return transaction2; + } + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`[Tracing] starting ${transaction2.op} transaction - ${transaction2.name}`); + return transaction2; + } + function isValidSampleRate(rate) { + if (utils.isNaN(rate) || !(typeof rate === "number" || typeof rate === "boolean")) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn( + `[Tracing] Given sample rate is invalid. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify( + rate + )} of type ${JSON.stringify(typeof rate)}.` + ); + return false; + } + if (rate < 0 || rate > 1) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn(`[Tracing] Given sample rate is invalid. Sample rate must be between 0 and 1. Got ${rate}.`); + return false; + } + return true; + } + function _startTransaction(transactionContext, customSamplingContext) { + const client = this.getClient(); + const options2 = client && client.getOptions() || {}; + const configInstrumenter = options2.instrumenter || "sentry"; + const transactionInstrumenter = transactionContext.instrumenter || "sentry"; + if (configInstrumenter !== transactionInstrumenter) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error( + `A transaction was started with instrumenter=\`${transactionInstrumenter}\`, but the SDK is configured with the \`${configInstrumenter}\` instrumenter. +The transaction will not be sampled. Please use the ${configInstrumenter} instrumentation to start transactions.` + ); + transactionContext.sampled = false; + } + let transaction$1 = new transaction.Transaction(transactionContext, this); + transaction$1 = sample(transaction$1, options2, { + parentSampled: transactionContext.parentSampled, + transactionContext, + ...customSamplingContext + }); + if (transaction$1.sampled) { + transaction$1.initSpanRecorder(options2._experiments && options2._experiments.maxSpans); + } + if (client && client.emit) { + client.emit("startTransaction", transaction$1); + } + return transaction$1; + } + function startIdleTransaction(hub2, transactionContext, idleTimeout, finalTimeout, onScope, customSamplingContext, heartbeatInterval) { + const client = hub2.getClient(); + const options2 = client && client.getOptions() || {}; + let transaction2 = new idletransaction.IdleTransaction(transactionContext, hub2, idleTimeout, finalTimeout, heartbeatInterval, onScope); + transaction2 = sample(transaction2, options2, { + parentSampled: transactionContext.parentSampled, + transactionContext, + ...customSamplingContext + }); + if (transaction2.sampled) { + transaction2.initSpanRecorder(options2._experiments && options2._experiments.maxSpans); + } + if (client && client.emit) { + client.emit("startTransaction", transaction2); + } + return transaction2; + } + function addTracingExtensions() { + const carrier = hub.getMainCarrier(); + if (!carrier.__SENTRY__) { + return; + } + carrier.__SENTRY__.extensions = carrier.__SENTRY__.extensions || {}; + if (!carrier.__SENTRY__.extensions.startTransaction) { + carrier.__SENTRY__.extensions.startTransaction = _startTransaction; + } + if (!carrier.__SENTRY__.extensions.traceHeaders) { + carrier.__SENTRY__.extensions.traceHeaders = traceHeaders; + } + errors.registerErrorInstrumentation(); + } + exports2.addTracingExtensions = addTracingExtensions; + exports2.startIdleTransaction = startIdleTransaction; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/spanstatus.js +var require_spanstatus = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/spanstatus.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SpanStatus = void 0; + (function(SpanStatus) { + const Ok = "ok"; + SpanStatus["Ok"] = Ok; + const DeadlineExceeded = "deadline_exceeded"; + SpanStatus["DeadlineExceeded"] = DeadlineExceeded; + const Unauthenticated = "unauthenticated"; + SpanStatus["Unauthenticated"] = Unauthenticated; + const PermissionDenied = "permission_denied"; + SpanStatus["PermissionDenied"] = PermissionDenied; + const NotFound = "not_found"; + SpanStatus["NotFound"] = NotFound; + const ResourceExhausted = "resource_exhausted"; + SpanStatus["ResourceExhausted"] = ResourceExhausted; + const InvalidArgument = "invalid_argument"; + SpanStatus["InvalidArgument"] = InvalidArgument; + const Unimplemented = "unimplemented"; + SpanStatus["Unimplemented"] = Unimplemented; + const Unavailable = "unavailable"; + SpanStatus["Unavailable"] = Unavailable; + const InternalError = "internal_error"; + SpanStatus["InternalError"] = InternalError; + const UnknownError = "unknown_error"; + SpanStatus["UnknownError"] = UnknownError; + const Cancelled = "cancelled"; + SpanStatus["Cancelled"] = Cancelled; + const AlreadyExists = "already_exists"; + SpanStatus["AlreadyExists"] = AlreadyExists; + const FailedPrecondition = "failed_precondition"; + SpanStatus["FailedPrecondition"] = FailedPrecondition; + const Aborted = "aborted"; + SpanStatus["Aborted"] = Aborted; + const OutOfRange = "out_of_range"; + SpanStatus["OutOfRange"] = OutOfRange; + const DataLoss = "data_loss"; + SpanStatus["DataLoss"] = DataLoss; + })(exports2.SpanStatus || (exports2.SpanStatus = {})); + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/trace.js +var require_trace2 = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/trace.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var hub = require_hub(); + var hasTracingEnabled = require_hasTracingEnabled(); + function trace(context2, callback, onError = () => { + }) { + const ctx = { ...context2 }; + if (ctx.name !== void 0 && ctx.description === void 0) { + ctx.description = ctx.name; + } + const hub$1 = hub.getCurrentHub(); + const scope = hub$1.getScope(); + const parentSpan = scope.getSpan(); + function startActiveSpan2() { + if (!hasTracingEnabled.hasTracingEnabled()) { + return void 0; + } + return parentSpan ? parentSpan.startChild(ctx) : hub$1.startTransaction(ctx); + } + const activeSpan = startActiveSpan2(); + scope.setSpan(activeSpan); + function finishAndSetSpan() { + activeSpan && activeSpan.finish(); + hub$1.getScope().setSpan(parentSpan); + } + let maybePromiseResult; + try { + maybePromiseResult = callback(activeSpan); + } catch (e) { + activeSpan && activeSpan.setStatus("internal_error"); + onError(e); + finishAndSetSpan(); + throw e; + } + if (utils.isThenable(maybePromiseResult)) { + Promise.resolve(maybePromiseResult).then( + () => { + finishAndSetSpan(); + }, + (e) => { + activeSpan && activeSpan.setStatus("internal_error"); + onError(e); + finishAndSetSpan(); + } + ); + } else { + finishAndSetSpan(); + } + return maybePromiseResult; + } + function startActiveSpan(context2, callback) { + const ctx = { ...context2 }; + if (ctx.name !== void 0 && ctx.description === void 0) { + ctx.description = ctx.name; + } + const hub$1 = hub.getCurrentHub(); + const scope = hub$1.getScope(); + const parentSpan = scope.getSpan(); + function startActiveSpan2() { + if (!hasTracingEnabled.hasTracingEnabled()) { + return void 0; + } + return parentSpan ? parentSpan.startChild(ctx) : hub$1.startTransaction(ctx); + } + const activeSpan = startActiveSpan2(); + scope.setSpan(activeSpan); + function finishAndSetSpan() { + activeSpan && activeSpan.finish(); + hub$1.getScope().setSpan(parentSpan); + } + let maybePromiseResult; + try { + maybePromiseResult = callback(activeSpan); + } catch (e) { + activeSpan && activeSpan.setStatus("internal_error"); + finishAndSetSpan(); + throw e; + } + if (utils.isThenable(maybePromiseResult)) { + Promise.resolve(maybePromiseResult).then( + () => { + finishAndSetSpan(); + }, + () => { + activeSpan && activeSpan.setStatus("internal_error"); + finishAndSetSpan(); + } + ); + } else { + finishAndSetSpan(); + } + return maybePromiseResult; + } + function startSpan(context2) { + if (!hasTracingEnabled.hasTracingEnabled()) { + return void 0; + } + const ctx = { ...context2 }; + if (ctx.name !== void 0 && ctx.description === void 0) { + ctx.description = ctx.name; + } + const hub$1 = hub.getCurrentHub(); + const parentSpan = getActiveSpan(); + return parentSpan ? parentSpan.startChild(ctx) : hub$1.startTransaction(ctx); + } + function getActiveSpan() { + return hub.getCurrentHub().getScope().getSpan(); + } + exports2.getActiveSpan = getActiveSpan; + exports2.startActiveSpan = startActiveSpan; + exports2.startSpan = startSpan; + exports2.trace = trace; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/measurement.js +var require_measurement = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/tracing/measurement.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_utils4(); + function setMeasurement(name, value, unit) { + const transaction = utils.getActiveTransaction(); + if (transaction) { + transaction.setMeasurement(name, value, unit); + } + } + exports2.setMeasurement = setMeasurement; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/exports.js +var require_exports = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/exports.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var hub = require_hub(); + function captureException7(exception, captureContext) { + return hub.getCurrentHub().captureException(exception, { captureContext }); + } + function captureMessage(message, captureContext) { + const level = typeof captureContext === "string" ? captureContext : void 0; + const context2 = typeof captureContext !== "string" ? { captureContext } : void 0; + return hub.getCurrentHub().captureMessage(message, level, context2); + } + function captureEvent(event, hint) { + return hub.getCurrentHub().captureEvent(event, hint); + } + function configureScope(callback) { + hub.getCurrentHub().configureScope(callback); + } + function addBreadcrumb(breadcrumb) { + hub.getCurrentHub().addBreadcrumb(breadcrumb); + } + function setContext(name, context2) { + hub.getCurrentHub().setContext(name, context2); + } + function setExtras(extras) { + hub.getCurrentHub().setExtras(extras); + } + function setExtra(key, extra) { + hub.getCurrentHub().setExtra(key, extra); + } + function setTags(tags) { + hub.getCurrentHub().setTags(tags); + } + function setTag(key, value) { + hub.getCurrentHub().setTag(key, value); + } + function setUser(user) { + hub.getCurrentHub().setUser(user); + } + function withScope(callback) { + hub.getCurrentHub().withScope(callback); + } + function startTransaction(context2, customSamplingContext) { + return hub.getCurrentHub().startTransaction({ ...context2 }, customSamplingContext); + } + function captureCheckIn(checkIn, upsertMonitorConfig) { + const hub$1 = hub.getCurrentHub(); + const scope = hub$1.getScope(); + const client = hub$1.getClient(); + if (!client) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("Cannot capture check-in. No client defined."); + } else if (!client.captureCheckIn) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("Cannot capture check-in. Client does not support sending check-ins."); + } else { + return client.captureCheckIn(checkIn, upsertMonitorConfig, scope); + } + return utils.uuid4(); + } + async function flush(timeout) { + const client = hub.getCurrentHub().getClient(); + if (client) { + return client.flush(timeout); + } + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("Cannot flush events. No client defined."); + return Promise.resolve(false); + } + async function close(timeout) { + const client = hub.getCurrentHub().getClient(); + if (client) { + return client.close(timeout); + } + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("Cannot flush events and disable SDK. No client defined."); + return Promise.resolve(false); + } + function lastEventId() { + return hub.getCurrentHub().lastEventId(); + } + exports2.addBreadcrumb = addBreadcrumb; + exports2.captureCheckIn = captureCheckIn; + exports2.captureEvent = captureEvent; + exports2.captureException = captureException7; + exports2.captureMessage = captureMessage; + exports2.close = close; + exports2.configureScope = configureScope; + exports2.flush = flush; + exports2.lastEventId = lastEventId; + exports2.setContext = setContext; + exports2.setExtra = setExtra; + exports2.setExtras = setExtras; + exports2.setTag = setTag; + exports2.setTags = setTags; + exports2.setUser = setUser; + exports2.startTransaction = startTransaction; + exports2.withScope = withScope; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/sessionflusher.js +var require_sessionflusher = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/sessionflusher.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var hub = require_hub(); + var SessionFlusher = class { + constructor(client, attrs) { + this._client = client; + this.flushTimeout = 60; + this._pendingAggregates = {}; + this._isEnabled = true; + this._intervalId = setInterval(() => this.flush(), this.flushTimeout * 1e3); + this._sessionAttrs = attrs; + } + /** Checks if `pendingAggregates` has entries, and if it does flushes them by calling `sendSession` */ + flush() { + const sessionAggregates = this.getSessionAggregates(); + if (sessionAggregates.aggregates.length === 0) { + return; + } + this._pendingAggregates = {}; + this._client.sendSession(sessionAggregates); + } + /** Massages the entries in `pendingAggregates` and returns aggregated sessions */ + getSessionAggregates() { + const aggregates = Object.keys(this._pendingAggregates).map((key) => { + return this._pendingAggregates[parseInt(key)]; + }); + const sessionAggregates = { + attrs: this._sessionAttrs, + aggregates + }; + return utils.dropUndefinedKeys(sessionAggregates); + } + /** JSDoc */ + close() { + clearInterval(this._intervalId); + this._isEnabled = false; + this.flush(); + } + /** + * Wrapper function for _incrementSessionStatusCount that checks if the instance of SessionFlusher is enabled then + * fetches the session status of the request from `Scope.getRequestSession().status` on the scope and passes them to + * `_incrementSessionStatusCount` along with the start date + */ + incrementSessionStatusCount() { + if (!this._isEnabled) { + return; + } + const scope = hub.getCurrentHub().getScope(); + const requestSession = scope.getRequestSession(); + if (requestSession && requestSession.status) { + this._incrementSessionStatusCount(requestSession.status, /* @__PURE__ */ new Date()); + scope.setRequestSession(void 0); + } + } + /** + * Increments status bucket in pendingAggregates buffer (internal state) corresponding to status of + * the session received + */ + _incrementSessionStatusCount(status, date) { + const sessionStartedTrunc = new Date(date).setSeconds(0, 0); + this._pendingAggregates[sessionStartedTrunc] = this._pendingAggregates[sessionStartedTrunc] || {}; + const aggregationCounts = this._pendingAggregates[sessionStartedTrunc]; + if (!aggregationCounts.started) { + aggregationCounts.started = new Date(sessionStartedTrunc).toISOString(); + } + switch (status) { + case "errored": + aggregationCounts.errored = (aggregationCounts.errored || 0) + 1; + return aggregationCounts.errored; + case "ok": + aggregationCounts.exited = (aggregationCounts.exited || 0) + 1; + return aggregationCounts.exited; + default: + aggregationCounts.crashed = (aggregationCounts.crashed || 0) + 1; + return aggregationCounts.crashed; + } + } + }; + exports2.SessionFlusher = SessionFlusher; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/api.js +var require_api2 = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/api.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var SENTRY_API_VERSION = "7"; + function getBaseApiEndpoint(dsn) { + const protocol2 = dsn.protocol ? `${dsn.protocol}:` : ""; + const port = dsn.port ? `:${dsn.port}` : ""; + return `${protocol2}//${dsn.host}${port}${dsn.path ? `/${dsn.path}` : ""}/api/`; + } + function _getIngestEndpoint(dsn) { + return `${getBaseApiEndpoint(dsn)}${dsn.projectId}/envelope/`; + } + function _encodedAuth(dsn, sdkInfo) { + return utils.urlEncode({ + // We send only the minimum set of required information. See + // https://github.com/getsentry/sentry-javascript/issues/2572. + sentry_key: dsn.publicKey, + sentry_version: SENTRY_API_VERSION, + ...sdkInfo && { sentry_client: `${sdkInfo.name}/${sdkInfo.version}` } + }); + } + function getEnvelopeEndpointWithUrlEncodedAuth(dsn, tunnelOrOptions = {}) { + const tunnel = typeof tunnelOrOptions === "string" ? tunnelOrOptions : tunnelOrOptions.tunnel; + const sdkInfo = typeof tunnelOrOptions === "string" || !tunnelOrOptions._metadata ? void 0 : tunnelOrOptions._metadata.sdk; + return tunnel ? tunnel : `${_getIngestEndpoint(dsn)}?${_encodedAuth(dsn, sdkInfo)}`; + } + function getReportDialogEndpoint(dsnLike, dialogOptions) { + const dsn = utils.makeDsn(dsnLike); + if (!dsn) { + return ""; + } + const endpoint = `${getBaseApiEndpoint(dsn)}embed/error-page/`; + let encodedOptions = `dsn=${utils.dsnToString(dsn)}`; + for (const key in dialogOptions) { + if (key === "dsn") { + continue; + } + if (key === "user") { + const user = dialogOptions.user; + if (!user) { + continue; + } + if (user.name) { + encodedOptions += `&name=${encodeURIComponent(user.name)}`; + } + if (user.email) { + encodedOptions += `&email=${encodeURIComponent(user.email)}`; + } + } else { + encodedOptions += `&${encodeURIComponent(key)}=${encodeURIComponent(dialogOptions[key])}`; + } + } + return `${endpoint}?${encodedOptions}`; + } + exports2.getEnvelopeEndpointWithUrlEncodedAuth = getEnvelopeEndpointWithUrlEncodedAuth; + exports2.getReportDialogEndpoint = getReportDialogEndpoint; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/envelope.js +var require_envelope2 = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/envelope.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + function enhanceEventWithSdkInfo(event, sdkInfo) { + if (!sdkInfo) { + return event; + } + event.sdk = event.sdk || {}; + event.sdk.name = event.sdk.name || sdkInfo.name; + event.sdk.version = event.sdk.version || sdkInfo.version; + event.sdk.integrations = [...event.sdk.integrations || [], ...sdkInfo.integrations || []]; + event.sdk.packages = [...event.sdk.packages || [], ...sdkInfo.packages || []]; + return event; + } + function createSessionEnvelope(session, dsn, metadata2, tunnel) { + const sdkInfo = utils.getSdkMetadataForEnvelopeHeader(metadata2); + const envelopeHeaders = { + sent_at: (/* @__PURE__ */ new Date()).toISOString(), + ...sdkInfo && { sdk: sdkInfo }, + ...!!tunnel && { dsn: utils.dsnToString(dsn) } + }; + const envelopeItem = "aggregates" in session ? [{ type: "sessions" }, session] : [{ type: "session" }, session.toJSON()]; + return utils.createEnvelope(envelopeHeaders, [envelopeItem]); + } + function createEventEnvelope(event, dsn, metadata2, tunnel) { + const sdkInfo = utils.getSdkMetadataForEnvelopeHeader(metadata2); + const eventType = event.type && event.type !== "replay_event" ? event.type : "event"; + enhanceEventWithSdkInfo(event, metadata2 && metadata2.sdk); + const envelopeHeaders = utils.createEventEnvelopeHeaders(event, sdkInfo, tunnel, dsn); + delete event.sdkProcessingMetadata; + const eventItem = [{ type: eventType }, event]; + return utils.createEnvelope(envelopeHeaders, [eventItem]); + } + exports2.createEventEnvelope = createEventEnvelope; + exports2.createSessionEnvelope = createSessionEnvelope; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/integration.js +var require_integration = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/integration.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var hub = require_hub(); + var scope = require_scope(); + var installedIntegrations = []; + function filterDuplicates(integrations) { + const integrationsByName = {}; + integrations.forEach((currentInstance) => { + const { name } = currentInstance; + const existingInstance = integrationsByName[name]; + if (existingInstance && !existingInstance.isDefaultInstance && currentInstance.isDefaultInstance) { + return; + } + integrationsByName[name] = currentInstance; + }); + return Object.keys(integrationsByName).map((k) => integrationsByName[k]); + } + function getIntegrationsToSetup(options2) { + const defaultIntegrations = options2.defaultIntegrations || []; + const userIntegrations = options2.integrations; + defaultIntegrations.forEach((integration) => { + integration.isDefaultInstance = true; + }); + let integrations; + if (Array.isArray(userIntegrations)) { + integrations = [...defaultIntegrations, ...userIntegrations]; + } else if (typeof userIntegrations === "function") { + integrations = utils.arrayify(userIntegrations(defaultIntegrations)); + } else { + integrations = defaultIntegrations; + } + const finalIntegrations = filterDuplicates(integrations); + const debugIndex = findIndex(finalIntegrations, (integration) => integration.name === "Debug"); + if (debugIndex !== -1) { + const [debugInstance] = finalIntegrations.splice(debugIndex, 1); + finalIntegrations.push(debugInstance); + } + return finalIntegrations; + } + function setupIntegrations(integrations) { + const integrationIndex = {}; + integrations.forEach((integration) => { + if (integration) { + setupIntegration(integration, integrationIndex); + } + }); + return integrationIndex; + } + function setupIntegration(integration, integrationIndex) { + integrationIndex[integration.name] = integration; + if (installedIntegrations.indexOf(integration.name) === -1) { + integration.setupOnce(scope.addGlobalEventProcessor, hub.getCurrentHub); + installedIntegrations.push(integration.name); + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`Integration installed: ${integration.name}`); + } + } + function findIndex(arr, callback) { + for (let i = 0; i < arr.length; i++) { + if (callback(arr[i]) === true) { + return i; + } + } + return -1; + } + exports2.getIntegrationsToSetup = getIntegrationsToSetup; + exports2.installedIntegrations = installedIntegrations; + exports2.setupIntegration = setupIntegration; + exports2.setupIntegrations = setupIntegrations; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/utils/prepareEvent.js +var require_prepareEvent = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/utils/prepareEvent.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var constants = require_constants(); + var scope = require_scope(); + function prepareEvent(options2, event, hint, scope$1) { + const { normalizeDepth = 3, normalizeMaxBreadth = 1e3 } = options2; + const prepared = { + ...event, + event_id: event.event_id || hint.event_id || utils.uuid4(), + timestamp: event.timestamp || utils.dateTimestampInSeconds() + }; + const integrations = hint.integrations || options2.integrations.map((i) => i.name); + applyClientOptions(prepared, options2); + applyIntegrationsMetadata(prepared, integrations); + if (event.type === void 0) { + applyDebugIds(prepared, options2.stackParser); + } + let finalScope = scope$1; + if (hint.captureContext) { + finalScope = scope.Scope.clone(finalScope).update(hint.captureContext); + } + let result = utils.resolvedSyncPromise(prepared); + if (finalScope) { + if (finalScope.getAttachments) { + const attachments = [...hint.attachments || [], ...finalScope.getAttachments()]; + if (attachments.length) { + hint.attachments = attachments; + } + } + result = finalScope.applyToEvent(prepared, hint); + } + return result.then((evt) => { + if (evt) { + applyDebugMeta(evt); + } + if (typeof normalizeDepth === "number" && normalizeDepth > 0) { + return normalizeEvent(evt, normalizeDepth, normalizeMaxBreadth); + } + return evt; + }); + } + function applyClientOptions(event, options2) { + const { environment, release, dist, maxValueLength = 250 } = options2; + if (!("environment" in event)) { + event.environment = "environment" in options2 ? environment : constants.DEFAULT_ENVIRONMENT; + } + if (event.release === void 0 && release !== void 0) { + event.release = release; + } + if (event.dist === void 0 && dist !== void 0) { + event.dist = dist; + } + if (event.message) { + event.message = utils.truncate(event.message, maxValueLength); + } + const exception = event.exception && event.exception.values && event.exception.values[0]; + if (exception && exception.value) { + exception.value = utils.truncate(exception.value, maxValueLength); + } + const request = event.request; + if (request && request.url) { + request.url = utils.truncate(request.url, maxValueLength); + } + } + var debugIdStackParserCache = /* @__PURE__ */ new WeakMap(); + function applyDebugIds(event, stackParser) { + const debugIdMap = utils.GLOBAL_OBJ._sentryDebugIds; + if (!debugIdMap) { + return; + } + let debugIdStackFramesCache; + const cachedDebugIdStackFrameCache = debugIdStackParserCache.get(stackParser); + if (cachedDebugIdStackFrameCache) { + debugIdStackFramesCache = cachedDebugIdStackFrameCache; + } else { + debugIdStackFramesCache = /* @__PURE__ */ new Map(); + debugIdStackParserCache.set(stackParser, debugIdStackFramesCache); + } + const filenameDebugIdMap = Object.keys(debugIdMap).reduce((acc, debugIdStackTrace) => { + let parsedStack; + const cachedParsedStack = debugIdStackFramesCache.get(debugIdStackTrace); + if (cachedParsedStack) { + parsedStack = cachedParsedStack; + } else { + parsedStack = stackParser(debugIdStackTrace); + debugIdStackFramesCache.set(debugIdStackTrace, parsedStack); + } + for (let i = parsedStack.length - 1; i >= 0; i--) { + const stackFrame = parsedStack[i]; + if (stackFrame.filename) { + acc[stackFrame.filename] = debugIdMap[debugIdStackTrace]; + break; + } + } + return acc; + }, {}); + try { + event.exception.values.forEach((exception) => { + exception.stacktrace.frames.forEach((frame) => { + if (frame.filename) { + frame.debug_id = filenameDebugIdMap[frame.filename]; + } + }); + }); + } catch (e) { + } + } + function applyDebugMeta(event) { + const filenameDebugIdMap = {}; + try { + event.exception.values.forEach((exception) => { + exception.stacktrace.frames.forEach((frame) => { + if (frame.debug_id) { + if (frame.abs_path) { + filenameDebugIdMap[frame.abs_path] = frame.debug_id; + } else if (frame.filename) { + filenameDebugIdMap[frame.filename] = frame.debug_id; + } + delete frame.debug_id; + } + }); + }); + } catch (e) { + } + if (Object.keys(filenameDebugIdMap).length === 0) { + return; + } + event.debug_meta = event.debug_meta || {}; + event.debug_meta.images = event.debug_meta.images || []; + const images = event.debug_meta.images; + Object.keys(filenameDebugIdMap).forEach((filename) => { + images.push({ + type: "sourcemap", + code_file: filename, + debug_id: filenameDebugIdMap[filename] + }); + }); + } + function applyIntegrationsMetadata(event, integrationNames) { + if (integrationNames.length > 0) { + event.sdk = event.sdk || {}; + event.sdk.integrations = [...event.sdk.integrations || [], ...integrationNames]; + } + } + function normalizeEvent(event, depth, maxBreadth) { + if (!event) { + return null; + } + const normalized = { + ...event, + ...event.breadcrumbs && { + breadcrumbs: event.breadcrumbs.map((b) => ({ + ...b, + ...b.data && { + data: utils.normalize(b.data, depth, maxBreadth) + } + })) + }, + ...event.user && { + user: utils.normalize(event.user, depth, maxBreadth) + }, + ...event.contexts && { + contexts: utils.normalize(event.contexts, depth, maxBreadth) + }, + ...event.extra && { + extra: utils.normalize(event.extra, depth, maxBreadth) + } + }; + if (event.contexts && event.contexts.trace && normalized.contexts) { + normalized.contexts.trace = event.contexts.trace; + if (event.contexts.trace.data) { + normalized.contexts.trace.data = utils.normalize(event.contexts.trace.data, depth, maxBreadth); + } + } + if (event.spans) { + normalized.spans = event.spans.map((span) => { + if (span.data) { + span.data = utils.normalize(span.data, depth, maxBreadth); + } + return span; + }); + } + return normalized; + } + exports2.applyDebugIds = applyDebugIds; + exports2.applyDebugMeta = applyDebugMeta; + exports2.prepareEvent = prepareEvent; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/baseclient.js +var require_baseclient = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/baseclient.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var api = require_api2(); + var envelope = require_envelope2(); + var integration = require_integration(); + var session = require_session(); + var dynamicSamplingContext = require_dynamicSamplingContext(); + var prepareEvent = require_prepareEvent(); + var ALREADY_SEEN_ERROR = "Not capturing exception because it's already been captured."; + var BaseClient = class { + /** Options passed to the SDK. */ + /** The client Dsn, if specified in options. Without this Dsn, the SDK will be disabled. */ + /** Array of set up integrations. */ + /** Indicates whether this client's integrations have been set up. */ + /** Number of calls being processed */ + /** Holds flushable */ + // eslint-disable-next-line @typescript-eslint/ban-types + /** + * Initializes this client instance. + * + * @param options Options for the client. + */ + constructor(options2) { + this._options = options2; + this._integrations = {}; + this._integrationsInitialized = false; + this._numProcessing = 0; + this._outcomes = {}; + this._hooks = {}; + if (options2.dsn) { + this._dsn = utils.makeDsn(options2.dsn); + } else { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("No DSN provided, client will not do anything."); + } + if (this._dsn) { + const url2 = api.getEnvelopeEndpointWithUrlEncodedAuth(this._dsn, options2); + this._transport = options2.transport({ + recordDroppedEvent: this.recordDroppedEvent.bind(this), + ...options2.transportOptions, + url: url2 + }); + } + } + /** + * @inheritDoc + */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types + captureException(exception, hint, scope) { + if (utils.checkOrSetAlreadyCaught(exception)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(ALREADY_SEEN_ERROR); + return; + } + let eventId = hint && hint.event_id; + this._process( + this.eventFromException(exception, hint).then((event) => this._captureEvent(event, hint, scope)).then((result) => { + eventId = result; + }) + ); + return eventId; + } + /** + * @inheritDoc + */ + captureMessage(message, level, hint, scope) { + let eventId = hint && hint.event_id; + const promisedEvent = utils.isPrimitive(message) ? this.eventFromMessage(String(message), level, hint) : this.eventFromException(message, hint); + this._process( + promisedEvent.then((event) => this._captureEvent(event, hint, scope)).then((result) => { + eventId = result; + }) + ); + return eventId; + } + /** + * @inheritDoc + */ + captureEvent(event, hint, scope) { + if (hint && hint.originalException && utils.checkOrSetAlreadyCaught(hint.originalException)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(ALREADY_SEEN_ERROR); + return; + } + let eventId = hint && hint.event_id; + this._process( + this._captureEvent(event, hint, scope).then((result) => { + eventId = result; + }) + ); + return eventId; + } + /** + * @inheritDoc + */ + captureSession(session$1) { + if (!this._isEnabled()) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("SDK not enabled, will not capture session."); + return; + } + if (!(typeof session$1.release === "string")) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("Discarded session because of missing or non-string release"); + } else { + this.sendSession(session$1); + session.updateSession(session$1, { init: false }); + } + } + /** + * @inheritDoc + */ + getDsn() { + return this._dsn; + } + /** + * @inheritDoc + */ + getOptions() { + return this._options; + } + /** + * @see SdkMetadata in @sentry/types + * + * @return The metadata of the SDK + */ + getSdkMetadata() { + return this._options._metadata; + } + /** + * @inheritDoc + */ + getTransport() { + return this._transport; + } + /** + * @inheritDoc + */ + flush(timeout) { + const transport = this._transport; + if (transport) { + return this._isClientDoneProcessing(timeout).then((clientFinished) => { + return transport.flush(timeout).then((transportFlushed) => clientFinished && transportFlushed); + }); + } else { + return utils.resolvedSyncPromise(true); + } + } + /** + * @inheritDoc + */ + close(timeout) { + return this.flush(timeout).then((result) => { + this.getOptions().enabled = false; + return result; + }); + } + /** + * Sets up the integrations + */ + setupIntegrations() { + if (this._isEnabled() && !this._integrationsInitialized) { + this._integrations = integration.setupIntegrations(this._options.integrations); + this._integrationsInitialized = true; + } + } + /** + * Gets an installed integration by its `id`. + * + * @returns The installed integration or `undefined` if no integration with that `id` was installed. + */ + getIntegrationById(integrationId) { + return this._integrations[integrationId]; + } + /** + * @inheritDoc + */ + getIntegration(integration2) { + try { + return this._integrations[integration2.id] || null; + } catch (_oO) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn(`Cannot retrieve integration ${integration2.id} from the current Client`); + return null; + } + } + /** + * @inheritDoc + */ + addIntegration(integration$1) { + integration.setupIntegration(integration$1, this._integrations); + } + /** + * @inheritDoc + */ + sendEvent(event, hint = {}) { + this.emit("beforeSendEvent", event, hint); + if (this._dsn) { + let env4 = envelope.createEventEnvelope(event, this._dsn, this._options._metadata, this._options.tunnel); + for (const attachment of hint.attachments || []) { + env4 = utils.addItemToEnvelope( + env4, + utils.createAttachmentEnvelopeItem( + attachment, + this._options.transportOptions && this._options.transportOptions.textEncoder + ) + ); + } + const promise = this._sendEnvelope(env4); + if (promise) { + promise.then((sendResponse) => this.emit("afterSendEvent", event, sendResponse), null); + } + } + } + /** + * @inheritDoc + */ + sendSession(session2) { + if (this._dsn) { + const env4 = envelope.createSessionEnvelope(session2, this._dsn, this._options._metadata, this._options.tunnel); + void this._sendEnvelope(env4); + } + } + /** + * @inheritDoc + */ + recordDroppedEvent(reason, category, _event) { + if (this._options.sendClientReports) { + const key = `${reason}:${category}`; + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`Adding outcome: "${key}"`); + this._outcomes[key] = this._outcomes[key] + 1 || 1; + } + } + // Keep on() & emit() signatures in sync with types' client.ts interface + /** @inheritdoc */ + /** @inheritdoc */ + on(hook, callback) { + if (!this._hooks[hook]) { + this._hooks[hook] = []; + } + this._hooks[hook].push(callback); + } + /** @inheritdoc */ + /** @inheritdoc */ + emit(hook, ...rest) { + if (this._hooks[hook]) { + this._hooks[hook].forEach((callback) => callback(...rest)); + } + } + /** Updates existing session based on the provided event */ + _updateSessionFromEvent(session$1, event) { + let crashed = false; + let errored = false; + const exceptions = event.exception && event.exception.values; + if (exceptions) { + errored = true; + for (const ex of exceptions) { + const mechanism = ex.mechanism; + if (mechanism && mechanism.handled === false) { + crashed = true; + break; + } + } + } + const sessionNonTerminal = session$1.status === "ok"; + const shouldUpdateAndSend = sessionNonTerminal && session$1.errors === 0 || sessionNonTerminal && crashed; + if (shouldUpdateAndSend) { + session.updateSession(session$1, { + ...crashed && { status: "crashed" }, + errors: session$1.errors || Number(errored || crashed) + }); + this.captureSession(session$1); + } + } + /** + * Determine if the client is finished processing. Returns a promise because it will wait `timeout` ms before saying + * "no" (resolving to `false`) in order to give the client a chance to potentially finish first. + * + * @param timeout The time, in ms, after which to resolve to `false` if the client is still busy. Passing `0` (or not + * passing anything) will make the promise wait as long as it takes for processing to finish before resolving to + * `true`. + * @returns A promise which will resolve to `true` if processing is already done or finishes before the timeout, and + * `false` otherwise + */ + _isClientDoneProcessing(timeout) { + return new utils.SyncPromise((resolve8) => { + let ticked = 0; + const tick = 1; + const interval = setInterval(() => { + if (this._numProcessing == 0) { + clearInterval(interval); + resolve8(true); + } else { + ticked += tick; + if (timeout && ticked >= timeout) { + clearInterval(interval); + resolve8(false); + } + } + }, tick); + }); + } + /** Determines whether this SDK is enabled and a valid Dsn is present. */ + _isEnabled() { + return this.getOptions().enabled !== false && this._dsn !== void 0; + } + /** + * Adds common information to events. + * + * The information includes release and environment from `options`, + * breadcrumbs and context (extra, tags and user) from the scope. + * + * Information that is already present in the event is never overwritten. For + * nested objects, such as the context, keys are merged. + * + * @param event The original event. + * @param hint May contain additional information about the original exception. + * @param scope A scope containing event metadata. + * @returns A new event with more information. + */ + _prepareEvent(event, hint, scope) { + const options2 = this.getOptions(); + const integrations = Object.keys(this._integrations); + if (!hint.integrations && integrations.length > 0) { + hint.integrations = integrations; + } + return prepareEvent.prepareEvent(options2, event, hint, scope).then((evt) => { + if (evt === null) { + return evt; + } + const { propagationContext } = evt.sdkProcessingMetadata || {}; + const trace = evt.contexts && evt.contexts.trace; + if (!trace && propagationContext) { + const { traceId: trace_id, spanId, parentSpanId, dsc } = propagationContext; + evt.contexts = { + trace: { + trace_id, + span_id: spanId, + parent_span_id: parentSpanId + }, + ...evt.contexts + }; + const dynamicSamplingContext$1 = dsc ? dsc : dynamicSamplingContext.getDynamicSamplingContextFromClient(trace_id, this, scope); + evt.sdkProcessingMetadata = { + dynamicSamplingContext: dynamicSamplingContext$1, + ...evt.sdkProcessingMetadata + }; + } + return evt; + }); + } + /** + * Processes the event and logs an error in case of rejection + * @param event + * @param hint + * @param scope + */ + _captureEvent(event, hint = {}, scope) { + return this._processEvent(event, hint, scope).then( + (finalEvent) => { + return finalEvent.event_id; + }, + (reason) => { + if (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) { + const sentryError = reason; + if (sentryError.logLevel === "log") { + utils.logger.log(sentryError.message); + } else { + utils.logger.warn(sentryError); + } + } + return void 0; + } + ); + } + /** + * Processes an event (either error or message) and sends it to Sentry. + * + * This also adds breadcrumbs and context information to the event. However, + * platform specific meta data (such as the User's IP address) must be added + * by the SDK implementor. + * + * + * @param event The event to send to Sentry. + * @param hint May contain additional information about the original exception. + * @param scope A scope containing event metadata. + * @returns A SyncPromise that resolves with the event or rejects in case event was/will not be send. + */ + _processEvent(event, hint, scope) { + const options2 = this.getOptions(); + const { sampleRate } = options2; + if (!this._isEnabled()) { + return utils.rejectedSyncPromise(new utils.SentryError("SDK not enabled, will not capture event.", "log")); + } + const isTransaction = isTransactionEvent(event); + const isError4 = isErrorEvent(event); + const eventType = event.type || "error"; + const beforeSendLabel = `before send for type \`${eventType}\``; + if (isError4 && typeof sampleRate === "number" && Math.random() > sampleRate) { + this.recordDroppedEvent("sample_rate", "error", event); + return utils.rejectedSyncPromise( + new utils.SentryError( + `Discarding event because it's not included in the random sample (sampling rate = ${sampleRate})`, + "log" + ) + ); + } + const dataCategory = eventType === "replay_event" ? "replay" : eventType; + return this._prepareEvent(event, hint, scope).then((prepared) => { + if (prepared === null) { + this.recordDroppedEvent("event_processor", dataCategory, event); + throw new utils.SentryError("An event processor returned `null`, will not send event.", "log"); + } + const isInternalException = hint.data && hint.data.__sentry__ === true; + if (isInternalException) { + return prepared; + } + const result = processBeforeSend(options2, prepared, hint); + return _validateBeforeSendResult(result, beforeSendLabel); + }).then((processedEvent) => { + if (processedEvent === null) { + this.recordDroppedEvent("before_send", dataCategory, event); + throw new utils.SentryError(`${beforeSendLabel} returned \`null\`, will not send event.`, "log"); + } + const session2 = scope && scope.getSession(); + if (!isTransaction && session2) { + this._updateSessionFromEvent(session2, processedEvent); + } + const transactionInfo = processedEvent.transaction_info; + if (isTransaction && transactionInfo && processedEvent.transaction !== event.transaction) { + const source2 = "custom"; + processedEvent.transaction_info = { + ...transactionInfo, + source: source2 + }; + } + this.sendEvent(processedEvent, hint); + return processedEvent; + }).then(null, (reason) => { + if (reason instanceof utils.SentryError) { + throw reason; + } + this.captureException(reason, { + data: { + __sentry__: true + }, + originalException: reason + }); + throw new utils.SentryError( + `Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. +Reason: ${reason}` + ); + }); + } + /** + * Occupies the client with processing and event + */ + _process(promise) { + this._numProcessing++; + void promise.then( + (value) => { + this._numProcessing--; + return value; + }, + (reason) => { + this._numProcessing--; + return reason; + } + ); + } + /** + * @inheritdoc + */ + _sendEnvelope(envelope2) { + if (this._transport && this._dsn) { + this.emit("beforeEnvelope", envelope2); + return this._transport.send(envelope2).then(null, (reason) => { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("Error while sending event:", reason); + }); + } else { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("Transport disabled"); + } + } + /** + * Clears outcomes on this client and returns them. + */ + _clearOutcomes() { + const outcomes = this._outcomes; + this._outcomes = {}; + return Object.keys(outcomes).map((key) => { + const [reason, category] = key.split(":"); + return { + reason, + category, + quantity: outcomes[key] + }; + }); + } + /** + * @inheritDoc + */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types + }; + function _validateBeforeSendResult(beforeSendResult, beforeSendLabel) { + const invalidValueError = `${beforeSendLabel} must return \`null\` or a valid event.`; + if (utils.isThenable(beforeSendResult)) { + return beforeSendResult.then( + (event) => { + if (!utils.isPlainObject(event) && event !== null) { + throw new utils.SentryError(invalidValueError); + } + return event; + }, + (e) => { + throw new utils.SentryError(`${beforeSendLabel} rejected with ${e}`); + } + ); + } else if (!utils.isPlainObject(beforeSendResult) && beforeSendResult !== null) { + throw new utils.SentryError(invalidValueError); + } + return beforeSendResult; + } + function processBeforeSend(options2, event, hint) { + const { beforeSend, beforeSendTransaction } = options2; + if (isErrorEvent(event) && beforeSend) { + return beforeSend(event, hint); + } + if (isTransactionEvent(event) && beforeSendTransaction) { + return beforeSendTransaction(event, hint); + } + return event; + } + function isErrorEvent(event) { + return event.type === void 0; + } + function isTransactionEvent(event) { + return event.type === "transaction"; + } + exports2.BaseClient = BaseClient; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/sdk.js +var require_sdk = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/sdk.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var hub = require_hub(); + function initAndBind(clientClass, options2) { + if (options2.debug === true) { + if (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) { + utils.logger.enable(); + } else { + console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle."); + } + } + const hub$1 = hub.getCurrentHub(); + const scope = hub$1.getScope(); + scope.update(options2.initialScope); + const client = new clientClass(options2); + hub$1.bindClient(client); + } + exports2.initAndBind = initAndBind; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/transports/base.js +var require_base = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/transports/base.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var DEFAULT_TRANSPORT_BUFFER_SIZE = 30; + function createTransport(options2, makeRequest, buffer2 = utils.makePromiseBuffer( + options2.bufferSize || DEFAULT_TRANSPORT_BUFFER_SIZE + )) { + let rateLimits = {}; + const flush = (timeout) => buffer2.drain(timeout); + function send(envelope) { + const filteredEnvelopeItems = []; + utils.forEachEnvelopeItem(envelope, (item, type2) => { + const envelopeItemDataCategory = utils.envelopeItemTypeToDataCategory(type2); + if (utils.isRateLimited(rateLimits, envelopeItemDataCategory)) { + const event = getEventForEnvelopeItem(item, type2); + options2.recordDroppedEvent("ratelimit_backoff", envelopeItemDataCategory, event); + } else { + filteredEnvelopeItems.push(item); + } + }); + if (filteredEnvelopeItems.length === 0) { + return utils.resolvedSyncPromise(); + } + const filteredEnvelope = utils.createEnvelope(envelope[0], filteredEnvelopeItems); + const recordEnvelopeLoss = (reason) => { + utils.forEachEnvelopeItem(filteredEnvelope, (item, type2) => { + const event = getEventForEnvelopeItem(item, type2); + options2.recordDroppedEvent(reason, utils.envelopeItemTypeToDataCategory(type2), event); + }); + }; + const requestTask = () => makeRequest({ body: utils.serializeEnvelope(filteredEnvelope, options2.textEncoder) }).then( + (response) => { + if (response.statusCode !== void 0 && (response.statusCode < 200 || response.statusCode >= 300)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn(`Sentry responded with status code ${response.statusCode} to sent event.`); + } + rateLimits = utils.updateRateLimits(rateLimits, response); + return response; + }, + (error) => { + recordEnvelopeLoss("network_error"); + throw error; + } + ); + return buffer2.add(requestTask).then( + (result) => result, + (error) => { + if (error instanceof utils.SentryError) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("Skipped sending event because buffer is full."); + recordEnvelopeLoss("queue_overflow"); + return utils.resolvedSyncPromise(); + } else { + throw error; + } + } + ); + } + send.__sentry__baseTransport__ = true; + return { + send, + flush + }; + } + function getEventForEnvelopeItem(item, type2) { + if (type2 !== "event" && type2 !== "transaction") { + return void 0; + } + return Array.isArray(item) ? item[1] : void 0; + } + exports2.DEFAULT_TRANSPORT_BUFFER_SIZE = DEFAULT_TRANSPORT_BUFFER_SIZE; + exports2.createTransport = createTransport; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/transports/offline.js +var require_offline = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/transports/offline.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var MIN_DELAY = 100; + var START_DELAY = 5e3; + var MAX_DELAY = 36e5; + function log2(msg, error) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.info(`[Offline]: ${msg}`, error); + } + function makeOfflineTransport(createTransport) { + return (options2) => { + const transport = createTransport(options2); + const store = options2.createStore ? options2.createStore(options2) : void 0; + let retryDelay = START_DELAY; + let flushTimer; + function shouldQueue(env4, error, retryDelay2) { + if (utils.envelopeContainsItemType(env4, ["replay_event", "replay_recording", "client_report"])) { + return false; + } + if (options2.shouldStore) { + return options2.shouldStore(env4, error, retryDelay2); + } + return true; + } + function flushIn(delay) { + if (!store) { + return; + } + if (flushTimer) { + clearTimeout(flushTimer); + } + flushTimer = setTimeout(async () => { + flushTimer = void 0; + const found = await store.pop(); + if (found) { + log2("Attempting to send previously queued event"); + void send(found).catch((e) => { + log2("Failed to retry sending", e); + }); + } + }, delay); + if (typeof flushTimer !== "number" && flushTimer.unref) { + flushTimer.unref(); + } + } + function flushWithBackOff() { + if (flushTimer) { + return; + } + flushIn(retryDelay); + retryDelay = Math.min(retryDelay * 2, MAX_DELAY); + } + async function send(envelope) { + try { + const result = await transport.send(envelope); + let delay = MIN_DELAY; + if (result) { + if (result.headers && result.headers["retry-after"]) { + delay = utils.parseRetryAfterHeader(result.headers["retry-after"]); + } else if ((result.statusCode || 0) >= 400) { + return result; + } + } + flushIn(delay); + retryDelay = START_DELAY; + return result; + } catch (e) { + if (store && await shouldQueue(envelope, e, retryDelay)) { + await store.insert(envelope); + flushWithBackOff(); + log2("Error sending. Event queued", e); + return {}; + } else { + throw e; + } + } + } + if (options2.flushAtStartup) { + flushWithBackOff(); + } + return { + send, + flush: (t) => transport.flush(t) + }; + }; + } + exports2.MIN_DELAY = MIN_DELAY; + exports2.START_DELAY = START_DELAY; + exports2.makeOfflineTransport = makeOfflineTransport; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/transports/multiplexed.js +var require_multiplexed = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/transports/multiplexed.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var api = require_api2(); + function eventFromEnvelope(env4, types2) { + let event; + utils.forEachEnvelopeItem(env4, (item, type2) => { + if (types2.includes(type2)) { + event = Array.isArray(item) ? item[1] : void 0; + } + return !!event; + }); + return event; + } + function makeOverrideReleaseTransport(createTransport, release) { + return (options2) => { + const transport = createTransport(options2); + return { + send: async (envelope) => { + const event = eventFromEnvelope(envelope, ["event", "transaction", "profile", "replay_event"]); + if (event) { + event.release = release; + } + return transport.send(envelope); + }, + flush: (timeout) => transport.flush(timeout) + }; + }; + } + function makeMultiplexedTransport(createTransport, matcher) { + return (options2) => { + const fallbackTransport = createTransport(options2); + const otherTransports = {}; + function getTransport(dsn, release) { + const key = release ? `${dsn}:${release}` : dsn; + if (!otherTransports[key]) { + const validatedDsn = utils.dsnFromString(dsn); + if (!validatedDsn) { + return void 0; + } + const url2 = api.getEnvelopeEndpointWithUrlEncodedAuth(validatedDsn); + otherTransports[key] = release ? makeOverrideReleaseTransport(createTransport, release)({ ...options2, url: url2 }) : createTransport({ ...options2, url: url2 }); + } + return otherTransports[key]; + } + async function send(envelope) { + function getEvent(types2) { + const eventTypes = types2 && types2.length ? types2 : ["event"]; + return eventFromEnvelope(envelope, eventTypes); + } + const transports = matcher({ envelope, getEvent }).map((result) => { + if (typeof result === "string") { + return getTransport(result, void 0); + } else { + return getTransport(result.dsn, result.release); + } + }).filter((t) => !!t); + if (transports.length === 0) { + transports.push(fallbackTransport); + } + const results = await Promise.all(transports.map((transport) => transport.send(envelope))); + return results[0]; + } + async function flush(timeout) { + const allTransports = [...Object.keys(otherTransports).map((dsn) => otherTransports[dsn]), fallbackTransport]; + const results = await Promise.all(allTransports.map((transport) => transport.flush(timeout))); + return results.every((r) => r); + } + return { + send, + flush + }; + }; + } + exports2.eventFromEnvelope = eventFromEnvelope; + exports2.makeMultiplexedTransport = makeMultiplexedTransport; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/version.js +var require_version2 = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/version.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var SDK_VERSION = "7.66.0"; + exports2.SDK_VERSION = SDK_VERSION; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/integrations/functiontostring.js +var require_functiontostring = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/integrations/functiontostring.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var originalFunctionToString; + var FunctionToString = class _FunctionToString { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "FunctionToString"; + } + /** + * @inheritDoc + */ + constructor() { + this.name = _FunctionToString.id; + } + /** + * @inheritDoc + */ + setupOnce() { + originalFunctionToString = Function.prototype.toString; + try { + Function.prototype.toString = function(...args3) { + const context2 = utils.getOriginalFunction(this) || this; + return originalFunctionToString.apply(context2, args3); + }; + } catch (e) { + } + } + }; + FunctionToString.__initStatic(); + exports2.FunctionToString = FunctionToString; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/integrations/inboundfilters.js +var require_inboundfilters = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/integrations/inboundfilters.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var DEFAULT_IGNORE_ERRORS = [/^Script error\.?$/, /^Javascript error: Script error\.? on line 0$/]; + var DEFAULT_IGNORE_TRANSACTIONS = [ + /^.*healthcheck.*$/, + /^.*healthy.*$/, + /^.*live.*$/, + /^.*ready.*$/, + /^.*heartbeat.*$/, + /^.*\/health$/, + /^.*\/healthz$/ + ]; + var InboundFilters = class _InboundFilters { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "InboundFilters"; + } + /** + * @inheritDoc + */ + constructor(options2 = {}) { + this.name = _InboundFilters.id; + this._options = options2; + } + /** + * @inheritDoc + */ + setupOnce(addGlobalEventProcessor, getCurrentHub) { + const eventProcess = (event) => { + const hub = getCurrentHub(); + if (hub) { + const self2 = hub.getIntegration(_InboundFilters); + if (self2) { + const client = hub.getClient(); + const clientOptions = client ? client.getOptions() : {}; + const options2 = _mergeOptions(self2._options, clientOptions); + return _shouldDropEvent(event, options2) ? null : event; + } + } + return event; + }; + eventProcess.id = this.name; + addGlobalEventProcessor(eventProcess); + } + }; + InboundFilters.__initStatic(); + function _mergeOptions(internalOptions = {}, clientOptions = {}) { + return { + allowUrls: [...internalOptions.allowUrls || [], ...clientOptions.allowUrls || []], + denyUrls: [...internalOptions.denyUrls || [], ...clientOptions.denyUrls || []], + ignoreErrors: [ + ...internalOptions.ignoreErrors || [], + ...clientOptions.ignoreErrors || [], + ...internalOptions.disableErrorDefaults ? [] : DEFAULT_IGNORE_ERRORS + ], + ignoreTransactions: [ + ...internalOptions.ignoreTransactions || [], + ...clientOptions.ignoreTransactions || [], + ...internalOptions.disableTransactionDefaults ? [] : DEFAULT_IGNORE_TRANSACTIONS + ], + ignoreInternal: internalOptions.ignoreInternal !== void 0 ? internalOptions.ignoreInternal : true + }; + } + function _shouldDropEvent(event, options2) { + if (options2.ignoreInternal && _isSentryError(event)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn(`Event dropped due to being internal Sentry Error. +Event: ${utils.getEventDescription(event)}`); + return true; + } + if (_isIgnoredError(event, options2.ignoreErrors)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn( + `Event dropped due to being matched by \`ignoreErrors\` option. +Event: ${utils.getEventDescription(event)}` + ); + return true; + } + if (_isIgnoredTransaction(event, options2.ignoreTransactions)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn( + `Event dropped due to being matched by \`ignoreTransactions\` option. +Event: ${utils.getEventDescription(event)}` + ); + return true; + } + if (_isDeniedUrl(event, options2.denyUrls)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn( + `Event dropped due to being matched by \`denyUrls\` option. +Event: ${utils.getEventDescription( + event + )}. +Url: ${_getEventFilterUrl(event)}` + ); + return true; + } + if (!_isAllowedUrl(event, options2.allowUrls)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn( + `Event dropped due to not being matched by \`allowUrls\` option. +Event: ${utils.getEventDescription( + event + )}. +Url: ${_getEventFilterUrl(event)}` + ); + return true; + } + return false; + } + function _isIgnoredError(event, ignoreErrors) { + if (event.type || !ignoreErrors || !ignoreErrors.length) { + return false; + } + return _getPossibleEventMessages(event).some((message) => utils.stringMatchesSomePattern(message, ignoreErrors)); + } + function _isIgnoredTransaction(event, ignoreTransactions) { + if (event.type !== "transaction" || !ignoreTransactions || !ignoreTransactions.length) { + return false; + } + const name = event.transaction; + return name ? utils.stringMatchesSomePattern(name, ignoreTransactions) : false; + } + function _isDeniedUrl(event, denyUrls) { + if (!denyUrls || !denyUrls.length) { + return false; + } + const url2 = _getEventFilterUrl(event); + return !url2 ? false : utils.stringMatchesSomePattern(url2, denyUrls); + } + function _isAllowedUrl(event, allowUrls) { + if (!allowUrls || !allowUrls.length) { + return true; + } + const url2 = _getEventFilterUrl(event); + return !url2 ? true : utils.stringMatchesSomePattern(url2, allowUrls); + } + function _getPossibleEventMessages(event) { + if (event.message) { + return [event.message]; + } + if (event.exception) { + const { values } = event.exception; + try { + const { type: type2 = "", value = "" } = values && values[values.length - 1] || {}; + return [`${value}`, `${type2}: ${value}`]; + } catch (oO) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error(`Cannot extract message for event ${utils.getEventDescription(event)}`); + return []; + } + } + return []; + } + function _isSentryError(event) { + try { + return event.exception.values[0].type === "SentryError"; + } catch (e) { + } + return false; + } + function _getLastValidUrl(frames = []) { + for (let i = frames.length - 1; i >= 0; i--) { + const frame = frames[i]; + if (frame && frame.filename !== "" && frame.filename !== "[native code]") { + return frame.filename || null; + } + } + return null; + } + function _getEventFilterUrl(event) { + try { + let frames; + try { + frames = event.exception.values[0].stacktrace.frames; + } catch (e) { + } + return frames ? _getLastValidUrl(frames) : null; + } catch (oO) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error(`Cannot extract url for event ${utils.getEventDescription(event)}`); + return null; + } + } + exports2.InboundFilters = InboundFilters; + exports2._mergeOptions = _mergeOptions; + exports2._shouldDropEvent = _shouldDropEvent; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/integrations/index.js +var require_integrations = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/integrations/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var functiontostring = require_functiontostring(); + var inboundfilters = require_inboundfilters(); + exports2.FunctionToString = functiontostring.FunctionToString; + exports2.InboundFilters = inboundfilters.InboundFilters; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/checkin.js +var require_checkin = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/checkin.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + function createCheckInEnvelope(checkIn, dynamicSamplingContext, metadata2, tunnel, dsn) { + const headers = { + sent_at: (/* @__PURE__ */ new Date()).toISOString() + }; + if (metadata2 && metadata2.sdk) { + headers.sdk = { + name: metadata2.sdk.name, + version: metadata2.sdk.version + }; + } + if (!!tunnel && !!dsn) { + headers.dsn = utils.dsnToString(dsn); + } + if (dynamicSamplingContext) { + headers.trace = utils.dropUndefinedKeys(dynamicSamplingContext); + } + const item = createCheckInEnvelopeItem(checkIn); + return utils.createEnvelope(headers, [item]); + } + function createCheckInEnvelopeItem(checkIn) { + const checkInHeaders = { + type: "check_in" + }; + return [checkInHeaders, checkIn]; + } + exports2.createCheckInEnvelope = createCheckInEnvelope; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/metadata.js +var require_metadata = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/metadata.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var filenameMetadataMap = /* @__PURE__ */ new Map(); + var parsedStacks = /* @__PURE__ */ new Set(); + function ensureMetadataStacksAreParsed(parser2) { + if (!utils.GLOBAL_OBJ._sentryModuleMetadata) { + return; + } + for (const stack of Object.keys(utils.GLOBAL_OBJ._sentryModuleMetadata)) { + const metadata2 = utils.GLOBAL_OBJ._sentryModuleMetadata[stack]; + if (parsedStacks.has(stack)) { + continue; + } + parsedStacks.add(stack); + const frames = parser2(stack); + for (const frame of frames.reverse()) { + if (frame.filename) { + filenameMetadataMap.set(frame.filename, metadata2); + break; + } + } + } + } + function getMetadataForUrl(parser2, filename) { + ensureMetadataStacksAreParsed(parser2); + return filenameMetadataMap.get(filename); + } + function addMetadataToStackFrames(parser2, event) { + try { + event.exception.values.forEach((exception) => { + if (!exception.stacktrace) { + return; + } + for (const frame of exception.stacktrace.frames || []) { + if (!frame.filename) { + continue; + } + const metadata2 = getMetadataForUrl(parser2, frame.filename); + if (metadata2) { + frame.module_metadata = metadata2; + } + } + }); + } catch (_) { + } + } + function stripMetadataFromStackFrames(event) { + try { + event.exception.values.forEach((exception) => { + if (!exception.stacktrace) { + return; + } + for (const frame of exception.stacktrace.frames || []) { + delete frame.module_metadata; + } + }); + } catch (_) { + } + } + exports2.addMetadataToStackFrames = addMetadataToStackFrames; + exports2.getMetadataForUrl = getMetadataForUrl; + exports2.stripMetadataFromStackFrames = stripMetadataFromStackFrames; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/integrations/metadata.js +var require_metadata2 = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/integrations/metadata.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var metadata2 = require_metadata(); + var ModuleMetadata = class _ModuleMetadata { + /* + * @inheritDoc + */ + static __initStatic() { + this.id = "ModuleMetadata"; + } + /** + * @inheritDoc + */ + constructor() { + this.name = _ModuleMetadata.id; + } + /** + * @inheritDoc + */ + setupOnce(addGlobalEventProcessor, getCurrentHub) { + const client = getCurrentHub().getClient(); + if (!client || typeof client.on !== "function") { + return; + } + client.on("beforeEnvelope", (envelope) => { + utils.forEachEnvelopeItem(envelope, (item, type2) => { + if (type2 === "event") { + const event = Array.isArray(item) ? item[1] : void 0; + if (event) { + metadata2.stripMetadataFromStackFrames(event); + item[1] = event; + } + } + }); + }); + const stackParser = client.getOptions().stackParser; + addGlobalEventProcessor((event) => { + metadata2.addMetadataToStackFrames(stackParser, event); + return event; + }); + } + }; + ModuleMetadata.__initStatic(); + exports2.ModuleMetadata = ModuleMetadata; + } +}); + +// ../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/index.js +var require_cjs4 = __commonJS({ + "../node_modules/.pnpm/@sentry+core@7.66.0/node_modules/@sentry/core/cjs/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var hubextensions = require_hubextensions(); + var idletransaction = require_idletransaction(); + var span = require_span(); + var transaction = require_transaction(); + var utils$1 = require_utils4(); + var spanstatus = require_spanstatus(); + var trace = require_trace2(); + var dynamicSamplingContext = require_dynamicSamplingContext(); + var measurement = require_measurement(); + var exports$1 = require_exports(); + var hub = require_hub(); + var session = require_session(); + var sessionflusher = require_sessionflusher(); + var scope = require_scope(); + var api = require_api2(); + var baseclient = require_baseclient(); + var sdk = require_sdk(); + var base = require_base(); + var offline = require_offline(); + var multiplexed = require_multiplexed(); + var version4 = require_version2(); + var integration = require_integration(); + var index = require_integrations(); + var prepareEvent = require_prepareEvent(); + var checkin = require_checkin(); + var hasTracingEnabled = require_hasTracingEnabled(); + var constants = require_constants(); + var metadata2 = require_metadata2(); + var functiontostring = require_functiontostring(); + var inboundfilters = require_inboundfilters(); + var utils = require_cjs3(); + exports2.addTracingExtensions = hubextensions.addTracingExtensions; + exports2.startIdleTransaction = hubextensions.startIdleTransaction; + exports2.IdleTransaction = idletransaction.IdleTransaction; + exports2.TRACING_DEFAULTS = idletransaction.TRACING_DEFAULTS; + exports2.Span = span.Span; + exports2.spanStatusfromHttpCode = span.spanStatusfromHttpCode; + exports2.Transaction = transaction.Transaction; + exports2.getActiveTransaction = utils$1.getActiveTransaction; + Object.defineProperty(exports2, "SpanStatus", { + enumerable: true, + get: () => spanstatus.SpanStatus + }); + exports2.getActiveSpan = trace.getActiveSpan; + exports2.startActiveSpan = trace.startActiveSpan; + exports2.startSpan = trace.startSpan; + exports2.trace = trace.trace; + exports2.getDynamicSamplingContextFromClient = dynamicSamplingContext.getDynamicSamplingContextFromClient; + exports2.setMeasurement = measurement.setMeasurement; + exports2.addBreadcrumb = exports$1.addBreadcrumb; + exports2.captureCheckIn = exports$1.captureCheckIn; + exports2.captureEvent = exports$1.captureEvent; + exports2.captureException = exports$1.captureException; + exports2.captureMessage = exports$1.captureMessage; + exports2.close = exports$1.close; + exports2.configureScope = exports$1.configureScope; + exports2.flush = exports$1.flush; + exports2.lastEventId = exports$1.lastEventId; + exports2.setContext = exports$1.setContext; + exports2.setExtra = exports$1.setExtra; + exports2.setExtras = exports$1.setExtras; + exports2.setTag = exports$1.setTag; + exports2.setTags = exports$1.setTags; + exports2.setUser = exports$1.setUser; + exports2.startTransaction = exports$1.startTransaction; + exports2.withScope = exports$1.withScope; + exports2.Hub = hub.Hub; + exports2.ensureHubOnCarrier = hub.ensureHubOnCarrier; + exports2.getCurrentHub = hub.getCurrentHub; + exports2.getHubFromCarrier = hub.getHubFromCarrier; + exports2.getMainCarrier = hub.getMainCarrier; + exports2.makeMain = hub.makeMain; + exports2.runWithAsyncContext = hub.runWithAsyncContext; + exports2.setAsyncContextStrategy = hub.setAsyncContextStrategy; + exports2.setHubOnCarrier = hub.setHubOnCarrier; + exports2.closeSession = session.closeSession; + exports2.makeSession = session.makeSession; + exports2.updateSession = session.updateSession; + exports2.SessionFlusher = sessionflusher.SessionFlusher; + exports2.Scope = scope.Scope; + exports2.addGlobalEventProcessor = scope.addGlobalEventProcessor; + exports2.getEnvelopeEndpointWithUrlEncodedAuth = api.getEnvelopeEndpointWithUrlEncodedAuth; + exports2.getReportDialogEndpoint = api.getReportDialogEndpoint; + exports2.BaseClient = baseclient.BaseClient; + exports2.initAndBind = sdk.initAndBind; + exports2.createTransport = base.createTransport; + exports2.makeOfflineTransport = offline.makeOfflineTransport; + exports2.makeMultiplexedTransport = multiplexed.makeMultiplexedTransport; + exports2.SDK_VERSION = version4.SDK_VERSION; + exports2.getIntegrationsToSetup = integration.getIntegrationsToSetup; + exports2.Integrations = index; + exports2.prepareEvent = prepareEvent.prepareEvent; + exports2.createCheckInEnvelope = checkin.createCheckInEnvelope; + exports2.hasTracingEnabled = hasTracingEnabled.hasTracingEnabled; + exports2.DEFAULT_ENVIRONMENT = constants.DEFAULT_ENVIRONMENT; + exports2.ModuleMetadata = metadata2.ModuleMetadata; + exports2.FunctionToString = functiontostring.FunctionToString; + exports2.InboundFilters = inboundfilters.InboundFilters; + exports2.extractTraceparentData = utils.extractTraceparentData; + } +}); + +// ../node_modules/.pnpm/web-tree-sitter@0.20.8/node_modules/web-tree-sitter/tree-sitter.js +var require_tree_sitter = __commonJS({ + "../node_modules/.pnpm/web-tree-sitter@0.20.8/node_modules/web-tree-sitter/tree-sitter.js"(exports, module) { + var Module = void 0 !== Module ? Module : {}; + var TreeSitter = function() { + var initPromise, document = "object" == typeof window ? { currentScript: window.document.currentScript } : null; + class Parser { + constructor() { + this.initialize(); + } + initialize() { + throw new Error("cannot construct a Parser before calling `init()`"); + } + static init(moduleOptions) { + return initPromise || (Module = Object.assign({}, Module, moduleOptions), initPromise = new Promise((resolveInitPromise) => { + var moduleOverrides = Object.assign({}, Module), arguments_ = [], thisProgram = "./this.program", quit_ = (e, t) => { + throw t; + }, ENVIRONMENT_IS_WEB = "object" == typeof window, ENVIRONMENT_IS_WORKER = "function" == typeof importScripts, ENVIRONMENT_IS_NODE = "object" == typeof process && "object" == typeof process.versions && "string" == typeof process.versions.node, scriptDirectory = "", read_, readAsync, readBinary, setWindowTitle; + function locateFile(e) { + return Module.locateFile ? Module.locateFile(e, scriptDirectory) : scriptDirectory + e; + } + function logExceptionOnExit(e) { + if (e instanceof ExitStatus) + return; + err("exiting due to exception: " + e); + } + if (ENVIRONMENT_IS_NODE) { + var fs = require("fs"), nodePath = require("path"); + scriptDirectory = ENVIRONMENT_IS_WORKER ? nodePath.dirname(scriptDirectory) + "/" : __dirname + "/", read_ = (e, t) => (e = isFileURI(e) ? new URL(e) : nodePath.normalize(e), fs.readFileSync(e, t ? void 0 : "utf8")), readBinary = (e) => { + var t = read_(e, true); + return t.buffer || (t = new Uint8Array(t)), t; + }, readAsync = (e, t, r) => { + e = isFileURI(e) ? new URL(e) : nodePath.normalize(e), fs.readFile(e, function(e2, _) { + e2 ? r(e2) : t(_.buffer); + }); + }, process.argv.length > 1 && (thisProgram = process.argv[1].replace(/\\/g, "/")), arguments_ = process.argv.slice(2), "undefined" != typeof module && (module.exports = Module), quit_ = (e, t) => { + if (keepRuntimeAlive()) + throw process.exitCode = e, t; + logExceptionOnExit(t), process.exit(e); + }, Module.inspect = function() { + return "[Emscripten Module object]"; + }; + } else + (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && (ENVIRONMENT_IS_WORKER ? scriptDirectory = self.location.href : void 0 !== document && document.currentScript && (scriptDirectory = document.currentScript.src), scriptDirectory = 0 !== scriptDirectory.indexOf("blob:") ? scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, "").lastIndexOf("/") + 1) : "", read_ = (e) => { + var t = new XMLHttpRequest(); + return t.open("GET", e, false), t.send(null), t.responseText; + }, ENVIRONMENT_IS_WORKER && (readBinary = (e) => { + var t = new XMLHttpRequest(); + return t.open("GET", e, false), t.responseType = "arraybuffer", t.send(null), new Uint8Array(t.response); + }), readAsync = (e, t, r) => { + var _ = new XMLHttpRequest(); + _.open("GET", e, true), _.responseType = "arraybuffer", _.onload = () => { + 200 == _.status || 0 == _.status && _.response ? t(_.response) : r(); + }, _.onerror = r, _.send(null); + }, setWindowTitle = (e) => document.title = e); + var out = Module.print || console.log.bind(console), err = Module.printErr || console.warn.bind(console); + Object.assign(Module, moduleOverrides), moduleOverrides = null, Module.arguments && (arguments_ = Module.arguments), Module.thisProgram && (thisProgram = Module.thisProgram), Module.quit && (quit_ = Module.quit); + var STACK_ALIGN = 16, dynamicLibraries = Module.dynamicLibraries || [], wasmBinary; + Module.wasmBinary && (wasmBinary = Module.wasmBinary); + var noExitRuntime = Module.noExitRuntime || true, wasmMemory; + "object" != typeof WebAssembly && abort("no native wasm support detected"); + var ABORT = false, EXITSTATUS, UTF8Decoder = "undefined" != typeof TextDecoder ? new TextDecoder("utf8") : void 0, buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; + function UTF8ArrayToString(e, t, r) { + for (var _ = t + r, n = t; e[n] && !(n >= _); ) + ++n; + if (n - t > 16 && e.buffer && UTF8Decoder) + return UTF8Decoder.decode(e.subarray(t, n)); + for (var s = ""; t < n; ) { + var a = e[t++]; + if (128 & a) { + var o = 63 & e[t++]; + if (192 != (224 & a)) { + var i = 63 & e[t++]; + if ((a = 224 == (240 & a) ? (15 & a) << 12 | o << 6 | i : (7 & a) << 18 | o << 12 | i << 6 | 63 & e[t++]) < 65536) + s += String.fromCharCode(a); + else { + var l2 = a - 65536; + s += String.fromCharCode(55296 | l2 >> 10, 56320 | 1023 & l2); + } + } else + s += String.fromCharCode((31 & a) << 6 | o); + } else + s += String.fromCharCode(a); + } + return s; + } + function UTF8ToString(e, t) { + return e ? UTF8ArrayToString(HEAPU8, e, t) : ""; + } + function stringToUTF8Array(e, t, r, _) { + if (!(_ > 0)) + return 0; + for (var n = r, s = r + _ - 1, a = 0; a < e.length; ++a) { + var o = e.charCodeAt(a); + if (o >= 55296 && o <= 57343) + o = 65536 + ((1023 & o) << 10) | 1023 & e.charCodeAt(++a); + if (o <= 127) { + if (r >= s) + break; + t[r++] = o; + } else if (o <= 2047) { + if (r + 1 >= s) + break; + t[r++] = 192 | o >> 6, t[r++] = 128 | 63 & o; + } else if (o <= 65535) { + if (r + 2 >= s) + break; + t[r++] = 224 | o >> 12, t[r++] = 128 | o >> 6 & 63, t[r++] = 128 | 63 & o; + } else { + if (r + 3 >= s) + break; + t[r++] = 240 | o >> 18, t[r++] = 128 | o >> 12 & 63, t[r++] = 128 | o >> 6 & 63, t[r++] = 128 | 63 & o; + } + } + return t[r] = 0, r - n; + } + function stringToUTF8(e, t, r) { + return stringToUTF8Array(e, HEAPU8, t, r); + } + function lengthBytesUTF8(e) { + for (var t = 0, r = 0; r < e.length; ++r) { + var _ = e.charCodeAt(r); + _ <= 127 ? t++ : _ <= 2047 ? t += 2 : _ >= 55296 && _ <= 57343 ? (t += 4, ++r) : t += 3; + } + return t; + } + function updateGlobalBufferAndViews(e) { + buffer = e, Module.HEAP8 = HEAP8 = new Int8Array(e), Module.HEAP16 = HEAP16 = new Int16Array(e), Module.HEAP32 = HEAP32 = new Int32Array(e), Module.HEAPU8 = HEAPU8 = new Uint8Array(e), Module.HEAPU16 = HEAPU16 = new Uint16Array(e), Module.HEAPU32 = HEAPU32 = new Uint32Array(e), Module.HEAPF32 = HEAPF32 = new Float32Array(e), Module.HEAPF64 = HEAPF64 = new Float64Array(e); + } + var INITIAL_MEMORY = Module.INITIAL_MEMORY || 33554432; + wasmMemory = Module.wasmMemory ? Module.wasmMemory : new WebAssembly.Memory({ initial: INITIAL_MEMORY / 65536, maximum: 32768 }), wasmMemory && (buffer = wasmMemory.buffer), INITIAL_MEMORY = buffer.byteLength, updateGlobalBufferAndViews(buffer); + var wasmTable = new WebAssembly.Table({ initial: 20, element: "anyfunc" }), __ATPRERUN__ = [], __ATINIT__ = [], __ATMAIN__ = [], __ATPOSTRUN__ = [], __RELOC_FUNCS__ = [], runtimeInitialized = false; + function keepRuntimeAlive() { + return noExitRuntime; + } + function preRun() { + if (Module.preRun) + for ("function" == typeof Module.preRun && (Module.preRun = [Module.preRun]); Module.preRun.length; ) + addOnPreRun(Module.preRun.shift()); + callRuntimeCallbacks(__ATPRERUN__); + } + function initRuntime() { + runtimeInitialized = true, callRuntimeCallbacks(__RELOC_FUNCS__), callRuntimeCallbacks(__ATINIT__); + } + function preMain() { + callRuntimeCallbacks(__ATMAIN__); + } + function postRun() { + if (Module.postRun) + for ("function" == typeof Module.postRun && (Module.postRun = [Module.postRun]); Module.postRun.length; ) + addOnPostRun(Module.postRun.shift()); + callRuntimeCallbacks(__ATPOSTRUN__); + } + function addOnPreRun(e) { + __ATPRERUN__.unshift(e); + } + function addOnInit(e) { + __ATINIT__.unshift(e); + } + function addOnPostRun(e) { + __ATPOSTRUN__.unshift(e); + } + var runDependencies = 0, runDependencyWatcher = null, dependenciesFulfilled = null; + function addRunDependency(e) { + runDependencies++, Module.monitorRunDependencies && Module.monitorRunDependencies(runDependencies); + } + function removeRunDependency(e) { + if (runDependencies--, Module.monitorRunDependencies && Module.monitorRunDependencies(runDependencies), 0 == runDependencies && (null !== runDependencyWatcher && (clearInterval(runDependencyWatcher), runDependencyWatcher = null), dependenciesFulfilled)) { + var t = dependenciesFulfilled; + dependenciesFulfilled = null, t(); + } + } + function abort(e) { + throw Module.onAbort && Module.onAbort(e), err(e = "Aborted(" + e + ")"), ABORT = true, EXITSTATUS = 1, e += ". Build with -sASSERTIONS for more info.", new WebAssembly.RuntimeError(e); + } + var dataURIPrefix = "data:application/octet-stream;base64,", wasmBinaryFile, tempDouble, tempI64; + function isDataURI(e) { + return e.startsWith(dataURIPrefix); + } + function isFileURI(e) { + return e.startsWith("file://"); + } + function getBinary(e) { + try { + if (e == wasmBinaryFile && wasmBinary) + return new Uint8Array(wasmBinary); + if (readBinary) + return readBinary(e); + throw "both async and sync fetching of the wasm failed"; + } catch (e2) { + abort(e2); + } + } + function getBinaryPromise() { + if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) { + if ("function" == typeof fetch && !isFileURI(wasmBinaryFile)) + return fetch(wasmBinaryFile, { credentials: "same-origin" }).then(function(e) { + if (!e.ok) + throw "failed to load wasm binary file at '" + wasmBinaryFile + "'"; + return e.arrayBuffer(); + }).catch(function() { + return getBinary(wasmBinaryFile); + }); + if (readAsync) + return new Promise(function(e, t) { + readAsync(wasmBinaryFile, function(t2) { + e(new Uint8Array(t2)); + }, t); + }); + } + return Promise.resolve().then(function() { + return getBinary(wasmBinaryFile); + }); + } + function createWasm() { + var e = { env: asmLibraryArg, wasi_snapshot_preview1: asmLibraryArg, "GOT.mem": new Proxy(asmLibraryArg, GOTHandler), "GOT.func": new Proxy(asmLibraryArg, GOTHandler) }; + function t(e2, t2) { + var r2 = e2.exports; + r2 = relocateExports(r2, 1024); + var _2 = getDylinkMetadata(t2); + _2.neededDynlibs && (dynamicLibraries = _2.neededDynlibs.concat(dynamicLibraries)), mergeLibSymbols(r2, "main"), Module.asm = r2, addOnInit(Module.asm.__wasm_call_ctors), __RELOC_FUNCS__.push(Module.asm.__wasm_apply_data_relocs), removeRunDependency("wasm-instantiate"); + } + function r(e2) { + t(e2.instance, e2.module); + } + function _(t2) { + return getBinaryPromise().then(function(t3) { + return WebAssembly.instantiate(t3, e); + }).then(function(e2) { + return e2; + }).then(t2, function(e2) { + err("failed to asynchronously prepare wasm: " + e2), abort(e2); + }); + } + if (addRunDependency("wasm-instantiate"), Module.instantiateWasm) + try { + return Module.instantiateWasm(e, t); + } catch (e2) { + return err("Module.instantiateWasm callback failed with error: " + e2), false; + } + return wasmBinary || "function" != typeof WebAssembly.instantiateStreaming || isDataURI(wasmBinaryFile) || isFileURI(wasmBinaryFile) || ENVIRONMENT_IS_NODE || "function" != typeof fetch ? _(r) : fetch(wasmBinaryFile, { credentials: "same-origin" }).then(function(t2) { + return WebAssembly.instantiateStreaming(t2, e).then(r, function(e2) { + return err("wasm streaming compile failed: " + e2), err("falling back to ArrayBuffer instantiation"), _(r); + }); + }), {}; + } + wasmBinaryFile = "tree-sitter.wasm", isDataURI(wasmBinaryFile) || (wasmBinaryFile = locateFile(wasmBinaryFile)); + var ASM_CONSTS = {}; + function ExitStatus(e) { + this.name = "ExitStatus", this.message = "Program terminated with exit(" + e + ")", this.status = e; + } + var GOT = {}, CurrentModuleWeakSymbols = /* @__PURE__ */ new Set([]), GOTHandler = { get: function(e, t) { + var r = GOT[t]; + return r || (r = GOT[t] = new WebAssembly.Global({ value: "i32", mutable: true })), CurrentModuleWeakSymbols.has(t) || (r.required = true), r; + } }; + function callRuntimeCallbacks(e) { + for (; e.length > 0; ) + e.shift()(Module); + } + function getDylinkMetadata(e) { + var t = 0, r = 0; + function _() { + for (var r2 = 0, _2 = 1; ; ) { + var n2 = e[t++]; + if (r2 += (127 & n2) * _2, _2 *= 128, !(128 & n2)) + break; + } + return r2; + } + function n() { + var r2 = _(); + return UTF8ArrayToString(e, (t += r2) - r2, r2); + } + function s(e2, t2) { + if (e2) + throw new Error(t2); + } + var a = "dylink.0"; + if (e instanceof WebAssembly.Module) { + var o = WebAssembly.Module.customSections(e, a); + 0 === o.length && (a = "dylink", o = WebAssembly.Module.customSections(e, a)), s(0 === o.length, "need dylink section"), r = (e = new Uint8Array(o[0])).length; + } else { + s(!(1836278016 == new Uint32Array(new Uint8Array(e.subarray(0, 24)).buffer)[0]), "need to see wasm magic number"), s(0 !== e[8], "need the dylink section to be first"), t = 9; + var i = _(); + r = t + i, a = n(); + } + var l2 = { neededDynlibs: [], tlsExports: /* @__PURE__ */ new Set(), weakImports: /* @__PURE__ */ new Set() }; + if ("dylink" == a) { + l2.memorySize = _(), l2.memoryAlign = _(), l2.tableSize = _(), l2.tableAlign = _(); + for (var u = _(), d = 0; d < u; ++d) { + var c = n(); + l2.neededDynlibs.push(c); + } + } else { + s("dylink.0" !== a); + for (; t < r; ) { + var m = e[t++], p = _(); + if (1 === m) + l2.memorySize = _(), l2.memoryAlign = _(), l2.tableSize = _(), l2.tableAlign = _(); + else if (2 === m) + for (u = _(), d = 0; d < u; ++d) + c = n(), l2.neededDynlibs.push(c); + else if (3 === m) + for (var f = _(); f--; ) { + var h = n(); + 256 & _() && l2.tlsExports.add(h); + } + else if (4 === m) + for (f = _(); f--; ) { + n(), h = n(); + 1 == (3 & _()) && l2.weakImports.add(h); + } + else + t += p; + } + } + return l2; + } + function getValue(e, t = "i8") { + switch (t.endsWith("*") && (t = "*"), t) { + case "i1": + case "i8": + return HEAP8[e >> 0]; + case "i16": + return HEAP16[e >> 1]; + case "i32": + case "i64": + return HEAP32[e >> 2]; + case "float": + return HEAPF32[e >> 2]; + case "double": + return HEAPF64[e >> 3]; + case "*": + return HEAPU32[e >> 2]; + default: + abort("invalid type for getValue: " + t); + } + return null; + } + function asmjsMangle(e) { + return 0 == e.indexOf("dynCall_") || ["stackAlloc", "stackSave", "stackRestore", "getTempRet0", "setTempRet0"].includes(e) ? e : "_" + e; + } + function mergeLibSymbols(e, t) { + for (var r in e) + if (e.hasOwnProperty(r)) { + asmLibraryArg.hasOwnProperty(r) || (asmLibraryArg[r] = e[r]); + var _ = asmjsMangle(r); + Module.hasOwnProperty(_) || (Module[_] = e[r]), "__main_argc_argv" == r && (Module._main = e[r]); + } + } + var LDSO = { loadedLibsByName: {}, loadedLibsByHandle: {} }; + function dynCallLegacy(e, t, r) { + var _ = Module["dynCall_" + e]; + return r && r.length ? _.apply(null, [t].concat(r)) : _.call(null, t); + } + var wasmTableMirror = []; + function getWasmTableEntry(e) { + var t = wasmTableMirror[e]; + return t || (e >= wasmTableMirror.length && (wasmTableMirror.length = e + 1), wasmTableMirror[e] = t = wasmTable.get(e)), t; + } + function dynCall(e, t, r) { + return e.includes("j") ? dynCallLegacy(e, t, r) : getWasmTableEntry(t).apply(null, r); + } + function createInvokeFunction(e) { + return function() { + var t = stackSave(); + try { + return dynCall(e, arguments[0], Array.prototype.slice.call(arguments, 1)); + } catch (e2) { + if (stackRestore(t), e2 !== e2 + 0) + throw e2; + _setThrew(1, 0); + } + }; + } + var ___heap_base = 78144; + function zeroMemory(e, t) { + return HEAPU8.fill(0, e, e + t), e; + } + function getMemory(e) { + if (runtimeInitialized) + return zeroMemory(_malloc(e), e); + var t = ___heap_base, r = t + e + 15 & -16; + return ___heap_base = r, GOT.__heap_base.value = r, t; + } + function isInternalSym(e) { + return ["__cpp_exception", "__c_longjmp", "__wasm_apply_data_relocs", "__dso_handle", "__tls_size", "__tls_align", "__set_stack_limits", "_emscripten_tls_init", "__wasm_init_tls", "__wasm_call_ctors", "__start_em_asm", "__stop_em_asm"].includes(e); + } + function uleb128Encode(e, t) { + e < 128 ? t.push(e) : t.push(e % 128 | 128, e >> 7); + } + function sigToWasmTypes(e) { + for (var t = { i: "i32", j: "i32", f: "f32", d: "f64", p: "i32" }, r = { parameters: [], results: "v" == e[0] ? [] : [t[e[0]]] }, _ = 1; _ < e.length; ++_) + r.parameters.push(t[e[_]]), "j" === e[_] && r.parameters.push("i32"); + return r; + } + function generateFuncType(e, t) { + var r = e.slice(0, 1), _ = e.slice(1), n = { i: 127, p: 127, j: 126, f: 125, d: 124 }; + t.push(96), uleb128Encode(_.length, t); + for (var s = 0; s < _.length; ++s) + t.push(n[_[s]]); + "v" == r ? t.push(0) : t.push(1, n[r]); + } + function convertJsFunctionToWasm(e, t) { + if ("function" == typeof WebAssembly.Function) + return new WebAssembly.Function(sigToWasmTypes(t), e); + var r = [1]; + generateFuncType(t, r); + var _ = [0, 97, 115, 109, 1, 0, 0, 0, 1]; + uleb128Encode(r.length, _), _.push.apply(_, r), _.push(2, 7, 1, 1, 101, 1, 102, 0, 0, 7, 5, 1, 1, 102, 0, 0); + var n = new WebAssembly.Module(new Uint8Array(_)); + return new WebAssembly.Instance(n, { e: { f: e } }).exports.f; + } + function updateTableMap(e, t) { + if (functionsInTableMap) + for (var r = e; r < e + t; r++) { + var _ = getWasmTableEntry(r); + _ && functionsInTableMap.set(_, r); + } + } + var functionsInTableMap = void 0, freeTableIndexes = []; + function getEmptyTableSlot() { + if (freeTableIndexes.length) + return freeTableIndexes.pop(); + try { + wasmTable.grow(1); + } catch (e) { + if (!(e instanceof RangeError)) + throw e; + throw "Unable to grow wasm table. Set ALLOW_TABLE_GROWTH."; + } + return wasmTable.length - 1; + } + function setWasmTableEntry(e, t) { + wasmTable.set(e, t), wasmTableMirror[e] = wasmTable.get(e); + } + function addFunction(e, t) { + if (functionsInTableMap || (functionsInTableMap = /* @__PURE__ */ new WeakMap(), updateTableMap(0, wasmTable.length)), functionsInTableMap.has(e)) + return functionsInTableMap.get(e); + var r = getEmptyTableSlot(); + try { + setWasmTableEntry(r, e); + } catch (_) { + if (!(_ instanceof TypeError)) + throw _; + setWasmTableEntry(r, convertJsFunctionToWasm(e, t)); + } + return functionsInTableMap.set(e, r), r; + } + function updateGOT(e, t) { + for (var r in e) + if (!isInternalSym(r)) { + var _ = e[r]; + r.startsWith("orig$") && (r = r.split("$")[1], t = true), GOT[r] || (GOT[r] = new WebAssembly.Global({ value: "i32", mutable: true })), (t || 0 == GOT[r].value) && ("function" == typeof _ ? GOT[r].value = addFunction(_) : "number" == typeof _ ? GOT[r].value = _ : err("unhandled export type for `" + r + "`: " + typeof _)); + } + } + function relocateExports(e, t, r) { + var _ = {}; + for (var n in e) { + var s = e[n]; + "object" == typeof s && (s = s.value), "number" == typeof s && (s += t), _[n] = s; + } + return updateGOT(_, r), _; + } + function resolveGlobalSymbol(e, t) { + var r; + return t && (r = asmLibraryArg["orig$" + e]), r || (r = asmLibraryArg[e]) && r.stub && (r = void 0), r || (r = Module[asmjsMangle(e)]), !r && e.startsWith("invoke_") && (r = createInvokeFunction(e.split("_")[1])), r; + } + function alignMemory(e, t) { + return Math.ceil(e / t) * t; + } + function loadWebAssemblyModule(binary, flags, handle) { + var metadata = getDylinkMetadata(binary); + function loadModule() { + var firstLoad = !handle || !HEAP8[handle + 12 >> 0]; + if (firstLoad) { + var memAlign = Math.pow(2, metadata.memoryAlign); + memAlign = Math.max(memAlign, STACK_ALIGN); + var memoryBase = metadata.memorySize ? alignMemory(getMemory(metadata.memorySize + memAlign), memAlign) : 0, tableBase = metadata.tableSize ? wasmTable.length : 0; + handle && (HEAP8[handle + 12 >> 0] = 1, HEAPU32[handle + 16 >> 2] = memoryBase, HEAP32[handle + 20 >> 2] = metadata.memorySize, HEAPU32[handle + 24 >> 2] = tableBase, HEAP32[handle + 28 >> 2] = metadata.tableSize); + } else + memoryBase = HEAPU32[handle + 16 >> 2], tableBase = HEAPU32[handle + 24 >> 2]; + var tableGrowthNeeded = tableBase + metadata.tableSize - wasmTable.length, moduleExports; + function resolveSymbol(e) { + var t = resolveGlobalSymbol(e, false); + return t || (t = moduleExports[e]), t; + } + tableGrowthNeeded > 0 && wasmTable.grow(tableGrowthNeeded); + var proxyHandler = { get: function(e, t) { + switch (t) { + case "__memory_base": + return memoryBase; + case "__table_base": + return tableBase; + } + if (t in asmLibraryArg) + return asmLibraryArg[t]; + var r; + t in e || (e[t] = function() { + return r || (r = resolveSymbol(t)), r.apply(null, arguments); + }); + return e[t]; + } }, proxy = new Proxy({}, proxyHandler), info = { "GOT.mem": new Proxy({}, GOTHandler), "GOT.func": new Proxy({}, GOTHandler), env: proxy, wasi_snapshot_preview1: proxy }; + function postInstantiation(instance) { + function addEmAsm(addr, body) { + for (var args = [], arity = 0; arity < 16 && -1 != body.indexOf("$" + arity); arity++) + args.push("$" + arity); + args = args.join(","); + var func = "(" + args + " ) => { " + body + "};"; + ASM_CONSTS[start] = eval(func); + } + if (updateTableMap(tableBase, metadata.tableSize), moduleExports = relocateExports(instance.exports, memoryBase), flags.allowUndefined || reportUndefinedSymbols(), "__start_em_asm" in moduleExports) + for (var start = moduleExports.__start_em_asm, stop = moduleExports.__stop_em_asm; start < stop; ) { + var jsString = UTF8ToString(start); + addEmAsm(start, jsString), start = HEAPU8.indexOf(0, start) + 1; + } + var applyRelocs = moduleExports.__wasm_apply_data_relocs; + applyRelocs && (runtimeInitialized ? applyRelocs() : __RELOC_FUNCS__.push(applyRelocs)); + var init = moduleExports.__wasm_call_ctors; + return init && (runtimeInitialized ? init() : __ATINIT__.push(init)), moduleExports; + } + if (flags.loadAsync) { + if (binary instanceof WebAssembly.Module) { + var instance = new WebAssembly.Instance(binary, info); + return Promise.resolve(postInstantiation(instance)); + } + return WebAssembly.instantiate(binary, info).then(function(e) { + return postInstantiation(e.instance); + }); + } + var module = binary instanceof WebAssembly.Module ? binary : new WebAssembly.Module(binary), instance = new WebAssembly.Instance(module, info); + return postInstantiation(instance); + } + return CurrentModuleWeakSymbols = metadata.weakImports, flags.loadAsync ? metadata.neededDynlibs.reduce(function(e, t) { + return e.then(function() { + return loadDynamicLibrary(t, flags); + }); + }, Promise.resolve()).then(function() { + return loadModule(); + }) : (metadata.neededDynlibs.forEach(function(e) { + loadDynamicLibrary(e, flags); + }), loadModule()); + } + function loadDynamicLibrary(e, t, r) { + t = t || { global: true, nodelete: true }; + var _ = LDSO.loadedLibsByName[e]; + if (_) + return t.global && !_.global && (_.global = true, "loading" !== _.module && mergeLibSymbols(_.module, e)), t.nodelete && _.refcount !== 1 / 0 && (_.refcount = 1 / 0), _.refcount++, r && (LDSO.loadedLibsByHandle[r] = _), !t.loadAsync || Promise.resolve(true); + function n(e2) { + if (t.fs && t.fs.findObject(e2)) { + var r2 = t.fs.readFile(e2, { encoding: "binary" }); + return r2 instanceof Uint8Array || (r2 = new Uint8Array(r2)), t.loadAsync ? Promise.resolve(r2) : r2; + } + if (e2 = locateFile(e2), t.loadAsync) + return new Promise(function(t2, r3) { + readAsync(e2, (e3) => t2(new Uint8Array(e3)), r3); + }); + if (!readBinary) + throw new Error(e2 + ": file not found, and synchronous loading of external files is not available"); + return readBinary(e2); + } + function s() { + if ("undefined" != typeof preloadedWasm && preloadedWasm[e]) { + var _2 = preloadedWasm[e]; + return t.loadAsync ? Promise.resolve(_2) : _2; + } + return t.loadAsync ? n(e).then(function(e2) { + return loadWebAssemblyModule(e2, t, r); + }) : loadWebAssemblyModule(n(e), t, r); + } + function a(t2) { + _.global && mergeLibSymbols(t2, e), _.module = t2; + } + return _ = { refcount: t.nodelete ? 1 / 0 : 1, name: e, module: "loading", global: t.global }, LDSO.loadedLibsByName[e] = _, r && (LDSO.loadedLibsByHandle[r] = _), t.loadAsync ? s().then(function(e2) { + return a(e2), true; + }) : (a(s()), true); + } + function reportUndefinedSymbols() { + for (var e in GOT) + if (0 == GOT[e].value) { + var t = resolveGlobalSymbol(e, true); + if (!t && !GOT[e].required) + continue; + if ("function" == typeof t) + GOT[e].value = addFunction(t, t.sig); + else { + if ("number" != typeof t) + throw new Error("bad export type for `" + e + "`: " + typeof t); + GOT[e].value = t; + } + } + } + function preloadDylibs() { + dynamicLibraries.length ? (addRunDependency("preloadDylibs"), dynamicLibraries.reduce(function(e, t) { + return e.then(function() { + return loadDynamicLibrary(t, { loadAsync: true, global: true, nodelete: true, allowUndefined: true }); + }); + }, Promise.resolve()).then(function() { + reportUndefinedSymbols(), removeRunDependency("preloadDylibs"); + })) : reportUndefinedSymbols(); + } + function setValue(e, t, r = "i8") { + switch (r.endsWith("*") && (r = "*"), r) { + case "i1": + case "i8": + HEAP8[e >> 0] = t; + break; + case "i16": + HEAP16[e >> 1] = t; + break; + case "i32": + HEAP32[e >> 2] = t; + break; + case "i64": + tempI64 = [t >>> 0, (tempDouble = t, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (0 | Math.min(+Math.floor(tempDouble / 4294967296), 4294967295)) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[e >> 2] = tempI64[0], HEAP32[e + 4 >> 2] = tempI64[1]; + break; + case "float": + HEAPF32[e >> 2] = t; + break; + case "double": + HEAPF64[e >> 3] = t; + break; + case "*": + HEAPU32[e >> 2] = t; + break; + default: + abort("invalid type for setValue: " + r); + } + } + var ___memory_base = new WebAssembly.Global({ value: "i32", mutable: false }, 1024), ___stack_pointer = new WebAssembly.Global({ value: "i32", mutable: true }, 78144), ___table_base = new WebAssembly.Global({ value: "i32", mutable: false }, 1), nowIsMonotonic = true, _emscripten_get_now; + function __emscripten_get_now_is_monotonic() { + return nowIsMonotonic; + } + function _abort() { + abort(""); + } + function _emscripten_date_now() { + return Date.now(); + } + function _emscripten_memcpy_big(e, t, r) { + HEAPU8.copyWithin(e, t, t + r); + } + function getHeapMax() { + return 2147483648; + } + function emscripten_realloc_buffer(e) { + try { + return wasmMemory.grow(e - buffer.byteLength + 65535 >>> 16), updateGlobalBufferAndViews(wasmMemory.buffer), 1; + } catch (e2) { + } + } + function _emscripten_resize_heap(e) { + var t = HEAPU8.length; + e >>>= 0; + var r = getHeapMax(); + if (e > r) + return false; + for (var _ = 1; _ <= 4; _ *= 2) { + var n = t * (1 + 0.2 / _); + if (n = Math.min(n, e + 100663296), emscripten_realloc_buffer(Math.min(r, (s = Math.max(e, n)) + ((a = 65536) - s % a) % a))) + return true; + } + var s, a; + return false; + } + __emscripten_get_now_is_monotonic.sig = "i", Module._abort = _abort, _abort.sig = "v", _emscripten_date_now.sig = "d", _emscripten_get_now = ENVIRONMENT_IS_NODE ? () => { + var e = process.hrtime(); + return 1e3 * e[0] + e[1] / 1e6; + } : () => performance.now(), _emscripten_get_now.sig = "d", _emscripten_memcpy_big.sig = "vppp", _emscripten_resize_heap.sig = "ip"; + var SYSCALLS = { DEFAULT_POLLMASK: 5, calculateAt: function(e, t, r) { + if (PATH.isAbs(t)) + return t; + var _; + -100 === e ? _ = FS.cwd() : _ = SYSCALLS.getStreamFromFD(e).path; + if (0 == t.length) { + if (!r) + throw new FS.ErrnoError(44); + return _; + } + return PATH.join2(_, t); + }, doStat: function(e, t, r) { + try { + var _ = e(t); + } catch (e2) { + if (e2 && e2.node && PATH.normalize(t) !== PATH.normalize(FS.getPath(e2.node))) + return -54; + throw e2; + } + HEAP32[r >> 2] = _.dev, HEAP32[r + 8 >> 2] = _.ino, HEAP32[r + 12 >> 2] = _.mode, HEAPU32[r + 16 >> 2] = _.nlink, HEAP32[r + 20 >> 2] = _.uid, HEAP32[r + 24 >> 2] = _.gid, HEAP32[r + 28 >> 2] = _.rdev, tempI64 = [_.size >>> 0, (tempDouble = _.size, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (0 | Math.min(+Math.floor(tempDouble / 4294967296), 4294967295)) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[r + 40 >> 2] = tempI64[0], HEAP32[r + 44 >> 2] = tempI64[1], HEAP32[r + 48 >> 2] = 4096, HEAP32[r + 52 >> 2] = _.blocks; + var n = _.atime.getTime(), s = _.mtime.getTime(), a = _.ctime.getTime(); + return tempI64 = [Math.floor(n / 1e3) >>> 0, (tempDouble = Math.floor(n / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (0 | Math.min(+Math.floor(tempDouble / 4294967296), 4294967295)) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[r + 56 >> 2] = tempI64[0], HEAP32[r + 60 >> 2] = tempI64[1], HEAPU32[r + 64 >> 2] = n % 1e3 * 1e3, tempI64 = [Math.floor(s / 1e3) >>> 0, (tempDouble = Math.floor(s / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (0 | Math.min(+Math.floor(tempDouble / 4294967296), 4294967295)) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[r + 72 >> 2] = tempI64[0], HEAP32[r + 76 >> 2] = tempI64[1], HEAPU32[r + 80 >> 2] = s % 1e3 * 1e3, tempI64 = [Math.floor(a / 1e3) >>> 0, (tempDouble = Math.floor(a / 1e3), +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (0 | Math.min(+Math.floor(tempDouble / 4294967296), 4294967295)) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[r + 88 >> 2] = tempI64[0], HEAP32[r + 92 >> 2] = tempI64[1], HEAPU32[r + 96 >> 2] = a % 1e3 * 1e3, tempI64 = [_.ino >>> 0, (tempDouble = _.ino, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (0 | Math.min(+Math.floor(tempDouble / 4294967296), 4294967295)) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[r + 104 >> 2] = tempI64[0], HEAP32[r + 108 >> 2] = tempI64[1], 0; + }, doMsync: function(e, t, r, _, n) { + if (!FS.isFile(t.node.mode)) + throw new FS.ErrnoError(43); + if (2 & _) + return 0; + var s = HEAPU8.slice(e, e + r); + FS.msync(t, s, n, r, _); + }, varargs: void 0, get: function() { + return SYSCALLS.varargs += 4, HEAP32[SYSCALLS.varargs - 4 >> 2]; + }, getStr: function(e) { + return UTF8ToString(e); + }, getStreamFromFD: function(e) { + var t = FS.getStream(e); + if (!t) + throw new FS.ErrnoError(8); + return t; + } }; + function _proc_exit(e) { + EXITSTATUS = e, keepRuntimeAlive() || (Module.onExit && Module.onExit(e), ABORT = true), quit_(e, new ExitStatus(e)); + } + function exitJS(e, t) { + EXITSTATUS = e, _proc_exit(e); + } + _proc_exit.sig = "vi"; + var _exit = exitJS; + function _fd_close(e) { + try { + var t = SYSCALLS.getStreamFromFD(e); + return FS.close(t), 0; + } catch (e2) { + if ("undefined" == typeof FS || !(e2 instanceof FS.ErrnoError)) + throw e2; + return e2.errno; + } + } + function convertI32PairToI53Checked(e, t) { + return t + 2097152 >>> 0 < 4194305 - !!e ? (e >>> 0) + 4294967296 * t : NaN; + } + function _fd_seek(e, t, r, _, n) { + try { + var s = convertI32PairToI53Checked(t, r); + if (isNaN(s)) + return 61; + var a = SYSCALLS.getStreamFromFD(e); + return FS.llseek(a, s, _), tempI64 = [a.position >>> 0, (tempDouble = a.position, +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? (0 | Math.min(+Math.floor(tempDouble / 4294967296), 4294967295)) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[n >> 2] = tempI64[0], HEAP32[n + 4 >> 2] = tempI64[1], a.getdents && 0 === s && 0 === _ && (a.getdents = null), 0; + } catch (e2) { + if ("undefined" == typeof FS || !(e2 instanceof FS.ErrnoError)) + throw e2; + return e2.errno; + } + } + function doWritev(e, t, r, _) { + for (var n = 0, s = 0; s < r; s++) { + var a = HEAPU32[t >> 2], o = HEAPU32[t + 4 >> 2]; + t += 8; + var i = FS.write(e, HEAP8, a, o, _); + if (i < 0) + return -1; + n += i, void 0 !== _ && (_ += i); + } + return n; + } + function _fd_write(e, t, r, _) { + try { + var n = doWritev(SYSCALLS.getStreamFromFD(e), t, r); + return HEAPU32[_ >> 2] = n, 0; + } catch (e2) { + if ("undefined" == typeof FS || !(e2 instanceof FS.ErrnoError)) + throw e2; + return e2.errno; + } + } + function _tree_sitter_log_callback(e, t) { + if (currentLogCallback) { + const r = UTF8ToString(t); + currentLogCallback(r, 0 !== e); + } + } + function _tree_sitter_parse_callback(e, t, r, _, n) { + var s = currentParseCallback(t, { row: r, column: _ }); + "string" == typeof s ? (setValue(n, s.length, "i32"), stringToUTF16(s, e, 10240)) : setValue(n, 0, "i32"); + } + function handleException(e) { + if (e instanceof ExitStatus || "unwind" == e) + return EXITSTATUS; + quit_(1, e); + } + function allocateUTF8OnStack(e) { + var t = lengthBytesUTF8(e) + 1, r = stackAlloc(t); + return stringToUTF8Array(e, HEAP8, r, t), r; + } + function stringToUTF16(e, t, r) { + if (void 0 === r && (r = 2147483647), r < 2) + return 0; + for (var _ = t, n = (r -= 2) < 2 * e.length ? r / 2 : e.length, s = 0; s < n; ++s) { + var a = e.charCodeAt(s); + HEAP16[t >> 1] = a, t += 2; + } + return HEAP16[t >> 1] = 0, t - _; + } + function AsciiToString(e) { + for (var t = ""; ; ) { + var r = HEAPU8[e++ >> 0]; + if (!r) + return t; + t += String.fromCharCode(r); + } + } + _exit.sig = "vi", _fd_close.sig = "ii", _fd_seek.sig = "iijip", _fd_write.sig = "iippp"; + var asmLibraryArg = { __heap_base: ___heap_base, __indirect_function_table: wasmTable, __memory_base: ___memory_base, __stack_pointer: ___stack_pointer, __table_base: ___table_base, _emscripten_get_now_is_monotonic: __emscripten_get_now_is_monotonic, abort: _abort, emscripten_get_now: _emscripten_get_now, emscripten_memcpy_big: _emscripten_memcpy_big, emscripten_resize_heap: _emscripten_resize_heap, exit: _exit, fd_close: _fd_close, fd_seek: _fd_seek, fd_write: _fd_write, memory: wasmMemory, tree_sitter_log_callback: _tree_sitter_log_callback, tree_sitter_parse_callback: _tree_sitter_parse_callback }, asm = createWasm(), ___wasm_call_ctors = Module.___wasm_call_ctors = function() { + return (___wasm_call_ctors = Module.___wasm_call_ctors = Module.asm.__wasm_call_ctors).apply(null, arguments); + }, ___wasm_apply_data_relocs = Module.___wasm_apply_data_relocs = function() { + return (___wasm_apply_data_relocs = Module.___wasm_apply_data_relocs = Module.asm.__wasm_apply_data_relocs).apply(null, arguments); + }, _malloc = Module._malloc = function() { + return (_malloc = Module._malloc = Module.asm.malloc).apply(null, arguments); + }, _calloc = Module._calloc = function() { + return (_calloc = Module._calloc = Module.asm.calloc).apply(null, arguments); + }, _realloc = Module._realloc = function() { + return (_realloc = Module._realloc = Module.asm.realloc).apply(null, arguments); + }, _free = Module._free = function() { + return (_free = Module._free = Module.asm.free).apply(null, arguments); + }, _ts_language_symbol_count = Module._ts_language_symbol_count = function() { + return (_ts_language_symbol_count = Module._ts_language_symbol_count = Module.asm.ts_language_symbol_count).apply(null, arguments); + }, _ts_language_version = Module._ts_language_version = function() { + return (_ts_language_version = Module._ts_language_version = Module.asm.ts_language_version).apply(null, arguments); + }, _ts_language_field_count = Module._ts_language_field_count = function() { + return (_ts_language_field_count = Module._ts_language_field_count = Module.asm.ts_language_field_count).apply(null, arguments); + }, _ts_language_symbol_name = Module._ts_language_symbol_name = function() { + return (_ts_language_symbol_name = Module._ts_language_symbol_name = Module.asm.ts_language_symbol_name).apply(null, arguments); + }, _ts_language_symbol_for_name = Module._ts_language_symbol_for_name = function() { + return (_ts_language_symbol_for_name = Module._ts_language_symbol_for_name = Module.asm.ts_language_symbol_for_name).apply(null, arguments); + }, _ts_language_symbol_type = Module._ts_language_symbol_type = function() { + return (_ts_language_symbol_type = Module._ts_language_symbol_type = Module.asm.ts_language_symbol_type).apply(null, arguments); + }, _ts_language_field_name_for_id = Module._ts_language_field_name_for_id = function() { + return (_ts_language_field_name_for_id = Module._ts_language_field_name_for_id = Module.asm.ts_language_field_name_for_id).apply(null, arguments); + }, _memset = Module._memset = function() { + return (_memset = Module._memset = Module.asm.memset).apply(null, arguments); + }, _memcpy = Module._memcpy = function() { + return (_memcpy = Module._memcpy = Module.asm.memcpy).apply(null, arguments); + }, _ts_parser_delete = Module._ts_parser_delete = function() { + return (_ts_parser_delete = Module._ts_parser_delete = Module.asm.ts_parser_delete).apply(null, arguments); + }, _ts_parser_reset = Module._ts_parser_reset = function() { + return (_ts_parser_reset = Module._ts_parser_reset = Module.asm.ts_parser_reset).apply(null, arguments); + }, _ts_parser_set_language = Module._ts_parser_set_language = function() { + return (_ts_parser_set_language = Module._ts_parser_set_language = Module.asm.ts_parser_set_language).apply(null, arguments); + }, _ts_parser_timeout_micros = Module._ts_parser_timeout_micros = function() { + return (_ts_parser_timeout_micros = Module._ts_parser_timeout_micros = Module.asm.ts_parser_timeout_micros).apply(null, arguments); + }, _ts_parser_set_timeout_micros = Module._ts_parser_set_timeout_micros = function() { + return (_ts_parser_set_timeout_micros = Module._ts_parser_set_timeout_micros = Module.asm.ts_parser_set_timeout_micros).apply(null, arguments); + }, _memmove = Module._memmove = function() { + return (_memmove = Module._memmove = Module.asm.memmove).apply(null, arguments); + }, _memcmp = Module._memcmp = function() { + return (_memcmp = Module._memcmp = Module.asm.memcmp).apply(null, arguments); + }, _ts_query_new = Module._ts_query_new = function() { + return (_ts_query_new = Module._ts_query_new = Module.asm.ts_query_new).apply(null, arguments); + }, _ts_query_delete = Module._ts_query_delete = function() { + return (_ts_query_delete = Module._ts_query_delete = Module.asm.ts_query_delete).apply(null, arguments); + }, _iswspace = Module._iswspace = function() { + return (_iswspace = Module._iswspace = Module.asm.iswspace).apply(null, arguments); + }, _iswalnum = Module._iswalnum = function() { + return (_iswalnum = Module._iswalnum = Module.asm.iswalnum).apply(null, arguments); + }, _ts_query_pattern_count = Module._ts_query_pattern_count = function() { + return (_ts_query_pattern_count = Module._ts_query_pattern_count = Module.asm.ts_query_pattern_count).apply(null, arguments); + }, _ts_query_capture_count = Module._ts_query_capture_count = function() { + return (_ts_query_capture_count = Module._ts_query_capture_count = Module.asm.ts_query_capture_count).apply(null, arguments); + }, _ts_query_string_count = Module._ts_query_string_count = function() { + return (_ts_query_string_count = Module._ts_query_string_count = Module.asm.ts_query_string_count).apply(null, arguments); + }, _ts_query_capture_name_for_id = Module._ts_query_capture_name_for_id = function() { + return (_ts_query_capture_name_for_id = Module._ts_query_capture_name_for_id = Module.asm.ts_query_capture_name_for_id).apply(null, arguments); + }, _ts_query_string_value_for_id = Module._ts_query_string_value_for_id = function() { + return (_ts_query_string_value_for_id = Module._ts_query_string_value_for_id = Module.asm.ts_query_string_value_for_id).apply(null, arguments); + }, _ts_query_predicates_for_pattern = Module._ts_query_predicates_for_pattern = function() { + return (_ts_query_predicates_for_pattern = Module._ts_query_predicates_for_pattern = Module.asm.ts_query_predicates_for_pattern).apply(null, arguments); + }, _ts_tree_copy = Module._ts_tree_copy = function() { + return (_ts_tree_copy = Module._ts_tree_copy = Module.asm.ts_tree_copy).apply(null, arguments); + }, _ts_tree_delete = Module._ts_tree_delete = function() { + return (_ts_tree_delete = Module._ts_tree_delete = Module.asm.ts_tree_delete).apply(null, arguments); + }, _ts_init = Module._ts_init = function() { + return (_ts_init = Module._ts_init = Module.asm.ts_init).apply(null, arguments); + }, _ts_parser_new_wasm = Module._ts_parser_new_wasm = function() { + return (_ts_parser_new_wasm = Module._ts_parser_new_wasm = Module.asm.ts_parser_new_wasm).apply(null, arguments); + }, _ts_parser_enable_logger_wasm = Module._ts_parser_enable_logger_wasm = function() { + return (_ts_parser_enable_logger_wasm = Module._ts_parser_enable_logger_wasm = Module.asm.ts_parser_enable_logger_wasm).apply(null, arguments); + }, _ts_parser_parse_wasm = Module._ts_parser_parse_wasm = function() { + return (_ts_parser_parse_wasm = Module._ts_parser_parse_wasm = Module.asm.ts_parser_parse_wasm).apply(null, arguments); + }, _ts_language_type_is_named_wasm = Module._ts_language_type_is_named_wasm = function() { + return (_ts_language_type_is_named_wasm = Module._ts_language_type_is_named_wasm = Module.asm.ts_language_type_is_named_wasm).apply(null, arguments); + }, _ts_language_type_is_visible_wasm = Module._ts_language_type_is_visible_wasm = function() { + return (_ts_language_type_is_visible_wasm = Module._ts_language_type_is_visible_wasm = Module.asm.ts_language_type_is_visible_wasm).apply(null, arguments); + }, _ts_tree_root_node_wasm = Module._ts_tree_root_node_wasm = function() { + return (_ts_tree_root_node_wasm = Module._ts_tree_root_node_wasm = Module.asm.ts_tree_root_node_wasm).apply(null, arguments); + }, _ts_tree_edit_wasm = Module._ts_tree_edit_wasm = function() { + return (_ts_tree_edit_wasm = Module._ts_tree_edit_wasm = Module.asm.ts_tree_edit_wasm).apply(null, arguments); + }, _ts_tree_get_changed_ranges_wasm = Module._ts_tree_get_changed_ranges_wasm = function() { + return (_ts_tree_get_changed_ranges_wasm = Module._ts_tree_get_changed_ranges_wasm = Module.asm.ts_tree_get_changed_ranges_wasm).apply(null, arguments); + }, _ts_tree_cursor_new_wasm = Module._ts_tree_cursor_new_wasm = function() { + return (_ts_tree_cursor_new_wasm = Module._ts_tree_cursor_new_wasm = Module.asm.ts_tree_cursor_new_wasm).apply(null, arguments); + }, _ts_tree_cursor_delete_wasm = Module._ts_tree_cursor_delete_wasm = function() { + return (_ts_tree_cursor_delete_wasm = Module._ts_tree_cursor_delete_wasm = Module.asm.ts_tree_cursor_delete_wasm).apply(null, arguments); + }, _ts_tree_cursor_reset_wasm = Module._ts_tree_cursor_reset_wasm = function() { + return (_ts_tree_cursor_reset_wasm = Module._ts_tree_cursor_reset_wasm = Module.asm.ts_tree_cursor_reset_wasm).apply(null, arguments); + }, _ts_tree_cursor_goto_first_child_wasm = Module._ts_tree_cursor_goto_first_child_wasm = function() { + return (_ts_tree_cursor_goto_first_child_wasm = Module._ts_tree_cursor_goto_first_child_wasm = Module.asm.ts_tree_cursor_goto_first_child_wasm).apply(null, arguments); + }, _ts_tree_cursor_goto_next_sibling_wasm = Module._ts_tree_cursor_goto_next_sibling_wasm = function() { + return (_ts_tree_cursor_goto_next_sibling_wasm = Module._ts_tree_cursor_goto_next_sibling_wasm = Module.asm.ts_tree_cursor_goto_next_sibling_wasm).apply(null, arguments); + }, _ts_tree_cursor_goto_parent_wasm = Module._ts_tree_cursor_goto_parent_wasm = function() { + return (_ts_tree_cursor_goto_parent_wasm = Module._ts_tree_cursor_goto_parent_wasm = Module.asm.ts_tree_cursor_goto_parent_wasm).apply(null, arguments); + }, _ts_tree_cursor_current_node_type_id_wasm = Module._ts_tree_cursor_current_node_type_id_wasm = function() { + return (_ts_tree_cursor_current_node_type_id_wasm = Module._ts_tree_cursor_current_node_type_id_wasm = Module.asm.ts_tree_cursor_current_node_type_id_wasm).apply(null, arguments); + }, _ts_tree_cursor_current_node_is_named_wasm = Module._ts_tree_cursor_current_node_is_named_wasm = function() { + return (_ts_tree_cursor_current_node_is_named_wasm = Module._ts_tree_cursor_current_node_is_named_wasm = Module.asm.ts_tree_cursor_current_node_is_named_wasm).apply(null, arguments); + }, _ts_tree_cursor_current_node_is_missing_wasm = Module._ts_tree_cursor_current_node_is_missing_wasm = function() { + return (_ts_tree_cursor_current_node_is_missing_wasm = Module._ts_tree_cursor_current_node_is_missing_wasm = Module.asm.ts_tree_cursor_current_node_is_missing_wasm).apply(null, arguments); + }, _ts_tree_cursor_current_node_id_wasm = Module._ts_tree_cursor_current_node_id_wasm = function() { + return (_ts_tree_cursor_current_node_id_wasm = Module._ts_tree_cursor_current_node_id_wasm = Module.asm.ts_tree_cursor_current_node_id_wasm).apply(null, arguments); + }, _ts_tree_cursor_start_position_wasm = Module._ts_tree_cursor_start_position_wasm = function() { + return (_ts_tree_cursor_start_position_wasm = Module._ts_tree_cursor_start_position_wasm = Module.asm.ts_tree_cursor_start_position_wasm).apply(null, arguments); + }, _ts_tree_cursor_end_position_wasm = Module._ts_tree_cursor_end_position_wasm = function() { + return (_ts_tree_cursor_end_position_wasm = Module._ts_tree_cursor_end_position_wasm = Module.asm.ts_tree_cursor_end_position_wasm).apply(null, arguments); + }, _ts_tree_cursor_start_index_wasm = Module._ts_tree_cursor_start_index_wasm = function() { + return (_ts_tree_cursor_start_index_wasm = Module._ts_tree_cursor_start_index_wasm = Module.asm.ts_tree_cursor_start_index_wasm).apply(null, arguments); + }, _ts_tree_cursor_end_index_wasm = Module._ts_tree_cursor_end_index_wasm = function() { + return (_ts_tree_cursor_end_index_wasm = Module._ts_tree_cursor_end_index_wasm = Module.asm.ts_tree_cursor_end_index_wasm).apply(null, arguments); + }, _ts_tree_cursor_current_field_id_wasm = Module._ts_tree_cursor_current_field_id_wasm = function() { + return (_ts_tree_cursor_current_field_id_wasm = Module._ts_tree_cursor_current_field_id_wasm = Module.asm.ts_tree_cursor_current_field_id_wasm).apply(null, arguments); + }, _ts_tree_cursor_current_node_wasm = Module._ts_tree_cursor_current_node_wasm = function() { + return (_ts_tree_cursor_current_node_wasm = Module._ts_tree_cursor_current_node_wasm = Module.asm.ts_tree_cursor_current_node_wasm).apply(null, arguments); + }, _ts_node_symbol_wasm = Module._ts_node_symbol_wasm = function() { + return (_ts_node_symbol_wasm = Module._ts_node_symbol_wasm = Module.asm.ts_node_symbol_wasm).apply(null, arguments); + }, _ts_node_child_count_wasm = Module._ts_node_child_count_wasm = function() { + return (_ts_node_child_count_wasm = Module._ts_node_child_count_wasm = Module.asm.ts_node_child_count_wasm).apply(null, arguments); + }, _ts_node_named_child_count_wasm = Module._ts_node_named_child_count_wasm = function() { + return (_ts_node_named_child_count_wasm = Module._ts_node_named_child_count_wasm = Module.asm.ts_node_named_child_count_wasm).apply(null, arguments); + }, _ts_node_child_wasm = Module._ts_node_child_wasm = function() { + return (_ts_node_child_wasm = Module._ts_node_child_wasm = Module.asm.ts_node_child_wasm).apply(null, arguments); + }, _ts_node_named_child_wasm = Module._ts_node_named_child_wasm = function() { + return (_ts_node_named_child_wasm = Module._ts_node_named_child_wasm = Module.asm.ts_node_named_child_wasm).apply(null, arguments); + }, _ts_node_child_by_field_id_wasm = Module._ts_node_child_by_field_id_wasm = function() { + return (_ts_node_child_by_field_id_wasm = Module._ts_node_child_by_field_id_wasm = Module.asm.ts_node_child_by_field_id_wasm).apply(null, arguments); + }, _ts_node_next_sibling_wasm = Module._ts_node_next_sibling_wasm = function() { + return (_ts_node_next_sibling_wasm = Module._ts_node_next_sibling_wasm = Module.asm.ts_node_next_sibling_wasm).apply(null, arguments); + }, _ts_node_prev_sibling_wasm = Module._ts_node_prev_sibling_wasm = function() { + return (_ts_node_prev_sibling_wasm = Module._ts_node_prev_sibling_wasm = Module.asm.ts_node_prev_sibling_wasm).apply(null, arguments); + }, _ts_node_next_named_sibling_wasm = Module._ts_node_next_named_sibling_wasm = function() { + return (_ts_node_next_named_sibling_wasm = Module._ts_node_next_named_sibling_wasm = Module.asm.ts_node_next_named_sibling_wasm).apply(null, arguments); + }, _ts_node_prev_named_sibling_wasm = Module._ts_node_prev_named_sibling_wasm = function() { + return (_ts_node_prev_named_sibling_wasm = Module._ts_node_prev_named_sibling_wasm = Module.asm.ts_node_prev_named_sibling_wasm).apply(null, arguments); + }, _ts_node_parent_wasm = Module._ts_node_parent_wasm = function() { + return (_ts_node_parent_wasm = Module._ts_node_parent_wasm = Module.asm.ts_node_parent_wasm).apply(null, arguments); + }, _ts_node_descendant_for_index_wasm = Module._ts_node_descendant_for_index_wasm = function() { + return (_ts_node_descendant_for_index_wasm = Module._ts_node_descendant_for_index_wasm = Module.asm.ts_node_descendant_for_index_wasm).apply(null, arguments); + }, _ts_node_named_descendant_for_index_wasm = Module._ts_node_named_descendant_for_index_wasm = function() { + return (_ts_node_named_descendant_for_index_wasm = Module._ts_node_named_descendant_for_index_wasm = Module.asm.ts_node_named_descendant_for_index_wasm).apply(null, arguments); + }, _ts_node_descendant_for_position_wasm = Module._ts_node_descendant_for_position_wasm = function() { + return (_ts_node_descendant_for_position_wasm = Module._ts_node_descendant_for_position_wasm = Module.asm.ts_node_descendant_for_position_wasm).apply(null, arguments); + }, _ts_node_named_descendant_for_position_wasm = Module._ts_node_named_descendant_for_position_wasm = function() { + return (_ts_node_named_descendant_for_position_wasm = Module._ts_node_named_descendant_for_position_wasm = Module.asm.ts_node_named_descendant_for_position_wasm).apply(null, arguments); + }, _ts_node_start_point_wasm = Module._ts_node_start_point_wasm = function() { + return (_ts_node_start_point_wasm = Module._ts_node_start_point_wasm = Module.asm.ts_node_start_point_wasm).apply(null, arguments); + }, _ts_node_end_point_wasm = Module._ts_node_end_point_wasm = function() { + return (_ts_node_end_point_wasm = Module._ts_node_end_point_wasm = Module.asm.ts_node_end_point_wasm).apply(null, arguments); + }, _ts_node_start_index_wasm = Module._ts_node_start_index_wasm = function() { + return (_ts_node_start_index_wasm = Module._ts_node_start_index_wasm = Module.asm.ts_node_start_index_wasm).apply(null, arguments); + }, _ts_node_end_index_wasm = Module._ts_node_end_index_wasm = function() { + return (_ts_node_end_index_wasm = Module._ts_node_end_index_wasm = Module.asm.ts_node_end_index_wasm).apply(null, arguments); + }, _ts_node_to_string_wasm = Module._ts_node_to_string_wasm = function() { + return (_ts_node_to_string_wasm = Module._ts_node_to_string_wasm = Module.asm.ts_node_to_string_wasm).apply(null, arguments); + }, _ts_node_children_wasm = Module._ts_node_children_wasm = function() { + return (_ts_node_children_wasm = Module._ts_node_children_wasm = Module.asm.ts_node_children_wasm).apply(null, arguments); + }, _ts_node_named_children_wasm = Module._ts_node_named_children_wasm = function() { + return (_ts_node_named_children_wasm = Module._ts_node_named_children_wasm = Module.asm.ts_node_named_children_wasm).apply(null, arguments); + }, _ts_node_descendants_of_type_wasm = Module._ts_node_descendants_of_type_wasm = function() { + return (_ts_node_descendants_of_type_wasm = Module._ts_node_descendants_of_type_wasm = Module.asm.ts_node_descendants_of_type_wasm).apply(null, arguments); + }, _ts_node_is_named_wasm = Module._ts_node_is_named_wasm = function() { + return (_ts_node_is_named_wasm = Module._ts_node_is_named_wasm = Module.asm.ts_node_is_named_wasm).apply(null, arguments); + }, _ts_node_has_changes_wasm = Module._ts_node_has_changes_wasm = function() { + return (_ts_node_has_changes_wasm = Module._ts_node_has_changes_wasm = Module.asm.ts_node_has_changes_wasm).apply(null, arguments); + }, _ts_node_has_error_wasm = Module._ts_node_has_error_wasm = function() { + return (_ts_node_has_error_wasm = Module._ts_node_has_error_wasm = Module.asm.ts_node_has_error_wasm).apply(null, arguments); + }, _ts_node_is_missing_wasm = Module._ts_node_is_missing_wasm = function() { + return (_ts_node_is_missing_wasm = Module._ts_node_is_missing_wasm = Module.asm.ts_node_is_missing_wasm).apply(null, arguments); + }, _ts_query_matches_wasm = Module._ts_query_matches_wasm = function() { + return (_ts_query_matches_wasm = Module._ts_query_matches_wasm = Module.asm.ts_query_matches_wasm).apply(null, arguments); + }, _ts_query_captures_wasm = Module._ts_query_captures_wasm = function() { + return (_ts_query_captures_wasm = Module._ts_query_captures_wasm = Module.asm.ts_query_captures_wasm).apply(null, arguments); + }, ___cxa_atexit = Module.___cxa_atexit = function() { + return (___cxa_atexit = Module.___cxa_atexit = Module.asm.__cxa_atexit).apply(null, arguments); + }, _iswdigit = Module._iswdigit = function() { + return (_iswdigit = Module._iswdigit = Module.asm.iswdigit).apply(null, arguments); + }, _iswalpha = Module._iswalpha = function() { + return (_iswalpha = Module._iswalpha = Module.asm.iswalpha).apply(null, arguments); + }, _iswlower = Module._iswlower = function() { + return (_iswlower = Module._iswlower = Module.asm.iswlower).apply(null, arguments); + }, _memchr = Module._memchr = function() { + return (_memchr = Module._memchr = Module.asm.memchr).apply(null, arguments); + }, _strlen = Module._strlen = function() { + return (_strlen = Module._strlen = Module.asm.strlen).apply(null, arguments); + }, _towupper = Module._towupper = function() { + return (_towupper = Module._towupper = Module.asm.towupper).apply(null, arguments); + }, _setThrew = Module._setThrew = function() { + return (_setThrew = Module._setThrew = Module.asm.setThrew).apply(null, arguments); + }, stackSave = Module.stackSave = function() { + return (stackSave = Module.stackSave = Module.asm.stackSave).apply(null, arguments); + }, stackRestore = Module.stackRestore = function() { + return (stackRestore = Module.stackRestore = Module.asm.stackRestore).apply(null, arguments); + }, stackAlloc = Module.stackAlloc = function() { + return (stackAlloc = Module.stackAlloc = Module.asm.stackAlloc).apply(null, arguments); + }, __Znwm = Module.__Znwm = function() { + return (__Znwm = Module.__Znwm = Module.asm._Znwm).apply(null, arguments); + }, __ZdlPv = Module.__ZdlPv = function() { + return (__ZdlPv = Module.__ZdlPv = Module.asm._ZdlPv).apply(null, arguments); + }, __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev = Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev = function() { + return (__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev = Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev = Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev).apply(null, arguments); + }, __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm = Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm = function() { + return (__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm = Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm = Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm).apply(null, arguments); + }, __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm = Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm = function() { + return (__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm = Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm = Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm).apply(null, arguments); + }, __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm = Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm = function() { + return (__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm = Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm = Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm).apply(null, arguments); + }, __ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm = Module.__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm = function() { + return (__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm = Module.__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm = Module.asm._ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm).apply(null, arguments); + }, __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc = Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc = function() { + return (__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc = Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc = Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc).apply(null, arguments); + }, __ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev = Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev = function() { + return (__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev = Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev = Module.asm._ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev).apply(null, arguments); + }, __ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw = Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw = function() { + return (__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw = Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw = Module.asm._ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw).apply(null, arguments); + }, __ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6resizeEmw = Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6resizeEmw = function() { + return (__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6resizeEmw = Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6resizeEmw = Module.asm._ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6resizeEmw).apply(null, arguments); + }, dynCall_jiji = Module.dynCall_jiji = function() { + return (dynCall_jiji = Module.dynCall_jiji = Module.asm.dynCall_jiji).apply(null, arguments); + }, _orig$ts_parser_timeout_micros = Module._orig$ts_parser_timeout_micros = function() { + return (_orig$ts_parser_timeout_micros = Module._orig$ts_parser_timeout_micros = Module.asm.orig$ts_parser_timeout_micros).apply(null, arguments); + }, _orig$ts_parser_set_timeout_micros = Module._orig$ts_parser_set_timeout_micros = function() { + return (_orig$ts_parser_set_timeout_micros = Module._orig$ts_parser_set_timeout_micros = Module.asm.orig$ts_parser_set_timeout_micros).apply(null, arguments); + }, calledRun; + function callMain(e) { + var t = Module._main; + if (t) { + (e = e || []).unshift(thisProgram); + var r = e.length, _ = stackAlloc(4 * (r + 1)), n = _ >> 2; + e.forEach((e2) => { + HEAP32[n++] = allocateUTF8OnStack(e2); + }), HEAP32[n] = 0; + try { + var s = t(r, _); + return exitJS(s, true), s; + } catch (e2) { + return handleException(e2); + } + } + } + Module.AsciiToString = AsciiToString, Module.stringToUTF16 = stringToUTF16, dependenciesFulfilled = function e() { + calledRun || run(), calledRun || (dependenciesFulfilled = e); + }; + var dylibsLoaded = false; + function run(e) { + function t() { + calledRun || (calledRun = true, Module.calledRun = true, ABORT || (initRuntime(), preMain(), Module.onRuntimeInitialized && Module.onRuntimeInitialized(), shouldRunNow && callMain(e), postRun())); + } + e = e || arguments_, runDependencies > 0 || !dylibsLoaded && (preloadDylibs(), dylibsLoaded = true, runDependencies > 0) || (preRun(), runDependencies > 0 || (Module.setStatus ? (Module.setStatus("Running..."), setTimeout(function() { + setTimeout(function() { + Module.setStatus(""); + }, 1), t(); + }, 1)) : t())); + } + if (Module.preInit) + for ("function" == typeof Module.preInit && (Module.preInit = [Module.preInit]); Module.preInit.length > 0; ) + Module.preInit.pop()(); + var shouldRunNow = true; + Module.noInitialRun && (shouldRunNow = false), run(); + const C = Module, INTERNAL = {}, SIZE_OF_INT = 4, SIZE_OF_NODE = 5 * SIZE_OF_INT, SIZE_OF_POINT = 2 * SIZE_OF_INT, SIZE_OF_RANGE = 2 * SIZE_OF_INT + 2 * SIZE_OF_POINT, ZERO_POINT = { row: 0, column: 0 }, QUERY_WORD_REGEX = /[\w-.]*/g, PREDICATE_STEP_TYPE_CAPTURE = 1, PREDICATE_STEP_TYPE_STRING = 2, LANGUAGE_FUNCTION_REGEX = /^_?tree_sitter_\w+/; + var VERSION, MIN_COMPATIBLE_VERSION, TRANSFER_BUFFER, currentParseCallback, currentLogCallback; + class ParserImpl { + static init() { + TRANSFER_BUFFER = C._ts_init(), VERSION = getValue(TRANSFER_BUFFER, "i32"), MIN_COMPATIBLE_VERSION = getValue(TRANSFER_BUFFER + SIZE_OF_INT, "i32"); + } + initialize() { + C._ts_parser_new_wasm(), this[0] = getValue(TRANSFER_BUFFER, "i32"), this[1] = getValue(TRANSFER_BUFFER + SIZE_OF_INT, "i32"); + } + delete() { + C._ts_parser_delete(this[0]), C._free(this[1]), this[0] = 0, this[1] = 0; + } + setLanguage(e) { + let t; + if (e) { + if (e.constructor !== Language) + throw new Error("Argument must be a Language"); + { + t = e[0]; + const r = C._ts_language_version(t); + if (r < MIN_COMPATIBLE_VERSION || VERSION < r) + throw new Error(`Incompatible language version ${r}. Compatibility range ${MIN_COMPATIBLE_VERSION} through ${VERSION}.`); + } + } else + t = 0, e = null; + return this.language = e, C._ts_parser_set_language(this[0], t), this; + } + getLanguage() { + return this.language; + } + parse(e, t, r) { + if ("string" == typeof e) + currentParseCallback = (t2, r2, _2) => e.slice(t2, _2); + else { + if ("function" != typeof e) + throw new Error("Argument must be a string or a function"); + currentParseCallback = e; + } + this.logCallback ? (currentLogCallback = this.logCallback, C._ts_parser_enable_logger_wasm(this[0], 1)) : (currentLogCallback = null, C._ts_parser_enable_logger_wasm(this[0], 0)); + let _ = 0, n = 0; + if (r && r.includedRanges) { + _ = r.includedRanges.length, n = C._calloc(_, SIZE_OF_RANGE); + let e2 = n; + for (let t2 = 0; t2 < _; t2++) + marshalRange(e2, r.includedRanges[t2]), e2 += SIZE_OF_RANGE; + } + const s = C._ts_parser_parse_wasm(this[0], this[1], t ? t[0] : 0, n, _); + if (!s) + throw currentParseCallback = null, currentLogCallback = null, new Error("Parsing failed"); + const a = new Tree(INTERNAL, s, this.language, currentParseCallback); + return currentParseCallback = null, currentLogCallback = null, a; + } + reset() { + C._ts_parser_reset(this[0]); + } + setTimeoutMicros(e) { + C._ts_parser_set_timeout_micros(this[0], e); + } + getTimeoutMicros() { + return C._ts_parser_timeout_micros(this[0]); + } + setLogger(e) { + if (e) { + if ("function" != typeof e) + throw new Error("Logger callback must be a function"); + } else + e = null; + return this.logCallback = e, this; + } + getLogger() { + return this.logCallback; + } + } + class Tree { + constructor(e, t, r, _) { + assertInternal(e), this[0] = t, this.language = r, this.textCallback = _; + } + copy() { + const e = C._ts_tree_copy(this[0]); + return new Tree(INTERNAL, e, this.language, this.textCallback); + } + delete() { + C._ts_tree_delete(this[0]), this[0] = 0; + } + edit(e) { + marshalEdit(e), C._ts_tree_edit_wasm(this[0]); + } + get rootNode() { + return C._ts_tree_root_node_wasm(this[0]), unmarshalNode(this); + } + getLanguage() { + return this.language; + } + walk() { + return this.rootNode.walk(); + } + getChangedRanges(e) { + if (e.constructor !== Tree) + throw new TypeError("Argument must be a Tree"); + C._ts_tree_get_changed_ranges_wasm(this[0], e[0]); + const t = getValue(TRANSFER_BUFFER, "i32"), r = getValue(TRANSFER_BUFFER + SIZE_OF_INT, "i32"), _ = new Array(t); + if (t > 0) { + let e2 = r; + for (let r2 = 0; r2 < t; r2++) + _[r2] = unmarshalRange(e2), e2 += SIZE_OF_RANGE; + C._free(r); + } + return _; + } + } + class Node { + constructor(e, t) { + assertInternal(e), this.tree = t; + } + get typeId() { + return marshalNode(this), C._ts_node_symbol_wasm(this.tree[0]); + } + get type() { + return this.tree.language.types[this.typeId] || "ERROR"; + } + get endPosition() { + return marshalNode(this), C._ts_node_end_point_wasm(this.tree[0]), unmarshalPoint(TRANSFER_BUFFER); + } + get endIndex() { + return marshalNode(this), C._ts_node_end_index_wasm(this.tree[0]); + } + get text() { + return getText(this.tree, this.startIndex, this.endIndex); + } + isNamed() { + return marshalNode(this), 1 === C._ts_node_is_named_wasm(this.tree[0]); + } + hasError() { + return marshalNode(this), 1 === C._ts_node_has_error_wasm(this.tree[0]); + } + hasChanges() { + return marshalNode(this), 1 === C._ts_node_has_changes_wasm(this.tree[0]); + } + isMissing() { + return marshalNode(this), 1 === C._ts_node_is_missing_wasm(this.tree[0]); + } + equals(e) { + return this.id === e.id; + } + child(e) { + return marshalNode(this), C._ts_node_child_wasm(this.tree[0], e), unmarshalNode(this.tree); + } + namedChild(e) { + return marshalNode(this), C._ts_node_named_child_wasm(this.tree[0], e), unmarshalNode(this.tree); + } + childForFieldId(e) { + return marshalNode(this), C._ts_node_child_by_field_id_wasm(this.tree[0], e), unmarshalNode(this.tree); + } + childForFieldName(e) { + const t = this.tree.language.fields.indexOf(e); + if (-1 !== t) + return this.childForFieldId(t); + } + get childCount() { + return marshalNode(this), C._ts_node_child_count_wasm(this.tree[0]); + } + get namedChildCount() { + return marshalNode(this), C._ts_node_named_child_count_wasm(this.tree[0]); + } + get firstChild() { + return this.child(0); + } + get firstNamedChild() { + return this.namedChild(0); + } + get lastChild() { + return this.child(this.childCount - 1); + } + get lastNamedChild() { + return this.namedChild(this.namedChildCount - 1); + } + get children() { + if (!this._children) { + marshalNode(this), C._ts_node_children_wasm(this.tree[0]); + const e = getValue(TRANSFER_BUFFER, "i32"), t = getValue(TRANSFER_BUFFER + SIZE_OF_INT, "i32"); + if (this._children = new Array(e), e > 0) { + let r = t; + for (let t2 = 0; t2 < e; t2++) + this._children[t2] = unmarshalNode(this.tree, r), r += SIZE_OF_NODE; + C._free(t); + } + } + return this._children; + } + get namedChildren() { + if (!this._namedChildren) { + marshalNode(this), C._ts_node_named_children_wasm(this.tree[0]); + const e = getValue(TRANSFER_BUFFER, "i32"), t = getValue(TRANSFER_BUFFER + SIZE_OF_INT, "i32"); + if (this._namedChildren = new Array(e), e > 0) { + let r = t; + for (let t2 = 0; t2 < e; t2++) + this._namedChildren[t2] = unmarshalNode(this.tree, r), r += SIZE_OF_NODE; + C._free(t); + } + } + return this._namedChildren; + } + descendantsOfType(e, t, r) { + Array.isArray(e) || (e = [e]), t || (t = ZERO_POINT), r || (r = ZERO_POINT); + const _ = [], n = this.tree.language.types; + for (let t2 = 0, r2 = n.length; t2 < r2; t2++) + e.includes(n[t2]) && _.push(t2); + const s = C._malloc(SIZE_OF_INT * _.length); + for (let e2 = 0, t2 = _.length; e2 < t2; e2++) + setValue(s + e2 * SIZE_OF_INT, _[e2], "i32"); + marshalNode(this), C._ts_node_descendants_of_type_wasm(this.tree[0], s, _.length, t.row, t.column, r.row, r.column); + const a = getValue(TRANSFER_BUFFER, "i32"), o = getValue(TRANSFER_BUFFER + SIZE_OF_INT, "i32"), i = new Array(a); + if (a > 0) { + let e2 = o; + for (let t2 = 0; t2 < a; t2++) + i[t2] = unmarshalNode(this.tree, e2), e2 += SIZE_OF_NODE; + } + return C._free(o), C._free(s), i; + } + get nextSibling() { + return marshalNode(this), C._ts_node_next_sibling_wasm(this.tree[0]), unmarshalNode(this.tree); + } + get previousSibling() { + return marshalNode(this), C._ts_node_prev_sibling_wasm(this.tree[0]), unmarshalNode(this.tree); + } + get nextNamedSibling() { + return marshalNode(this), C._ts_node_next_named_sibling_wasm(this.tree[0]), unmarshalNode(this.tree); + } + get previousNamedSibling() { + return marshalNode(this), C._ts_node_prev_named_sibling_wasm(this.tree[0]), unmarshalNode(this.tree); + } + get parent() { + return marshalNode(this), C._ts_node_parent_wasm(this.tree[0]), unmarshalNode(this.tree); + } + descendantForIndex(e, t = e) { + if ("number" != typeof e || "number" != typeof t) + throw new Error("Arguments must be numbers"); + marshalNode(this); + let r = TRANSFER_BUFFER + SIZE_OF_NODE; + return setValue(r, e, "i32"), setValue(r + SIZE_OF_INT, t, "i32"), C._ts_node_descendant_for_index_wasm(this.tree[0]), unmarshalNode(this.tree); + } + namedDescendantForIndex(e, t = e) { + if ("number" != typeof e || "number" != typeof t) + throw new Error("Arguments must be numbers"); + marshalNode(this); + let r = TRANSFER_BUFFER + SIZE_OF_NODE; + return setValue(r, e, "i32"), setValue(r + SIZE_OF_INT, t, "i32"), C._ts_node_named_descendant_for_index_wasm(this.tree[0]), unmarshalNode(this.tree); + } + descendantForPosition(e, t = e) { + if (!isPoint(e) || !isPoint(t)) + throw new Error("Arguments must be {row, column} objects"); + marshalNode(this); + let r = TRANSFER_BUFFER + SIZE_OF_NODE; + return marshalPoint(r, e), marshalPoint(r + SIZE_OF_POINT, t), C._ts_node_descendant_for_position_wasm(this.tree[0]), unmarshalNode(this.tree); + } + namedDescendantForPosition(e, t = e) { + if (!isPoint(e) || !isPoint(t)) + throw new Error("Arguments must be {row, column} objects"); + marshalNode(this); + let r = TRANSFER_BUFFER + SIZE_OF_NODE; + return marshalPoint(r, e), marshalPoint(r + SIZE_OF_POINT, t), C._ts_node_named_descendant_for_position_wasm(this.tree[0]), unmarshalNode(this.tree); + } + walk() { + return marshalNode(this), C._ts_tree_cursor_new_wasm(this.tree[0]), new TreeCursor(INTERNAL, this.tree); + } + toString() { + marshalNode(this); + const e = C._ts_node_to_string_wasm(this.tree[0]), t = AsciiToString(e); + return C._free(e), t; + } + } + class TreeCursor { + constructor(e, t) { + assertInternal(e), this.tree = t, unmarshalTreeCursor(this); + } + delete() { + marshalTreeCursor(this), C._ts_tree_cursor_delete_wasm(this.tree[0]), this[0] = this[1] = this[2] = 0; + } + reset(e) { + marshalNode(e), marshalTreeCursor(this, TRANSFER_BUFFER + SIZE_OF_NODE), C._ts_tree_cursor_reset_wasm(this.tree[0]), unmarshalTreeCursor(this); + } + get nodeType() { + return this.tree.language.types[this.nodeTypeId] || "ERROR"; + } + get nodeTypeId() { + return marshalTreeCursor(this), C._ts_tree_cursor_current_node_type_id_wasm(this.tree[0]); + } + get nodeId() { + return marshalTreeCursor(this), C._ts_tree_cursor_current_node_id_wasm(this.tree[0]); + } + get nodeIsNamed() { + return marshalTreeCursor(this), 1 === C._ts_tree_cursor_current_node_is_named_wasm(this.tree[0]); + } + get nodeIsMissing() { + return marshalTreeCursor(this), 1 === C._ts_tree_cursor_current_node_is_missing_wasm(this.tree[0]); + } + get nodeText() { + marshalTreeCursor(this); + const e = C._ts_tree_cursor_start_index_wasm(this.tree[0]), t = C._ts_tree_cursor_end_index_wasm(this.tree[0]); + return getText(this.tree, e, t); + } + get startPosition() { + return marshalTreeCursor(this), C._ts_tree_cursor_start_position_wasm(this.tree[0]), unmarshalPoint(TRANSFER_BUFFER); + } + get endPosition() { + return marshalTreeCursor(this), C._ts_tree_cursor_end_position_wasm(this.tree[0]), unmarshalPoint(TRANSFER_BUFFER); + } + get startIndex() { + return marshalTreeCursor(this), C._ts_tree_cursor_start_index_wasm(this.tree[0]); + } + get endIndex() { + return marshalTreeCursor(this), C._ts_tree_cursor_end_index_wasm(this.tree[0]); + } + currentNode() { + return marshalTreeCursor(this), C._ts_tree_cursor_current_node_wasm(this.tree[0]), unmarshalNode(this.tree); + } + currentFieldId() { + return marshalTreeCursor(this), C._ts_tree_cursor_current_field_id_wasm(this.tree[0]); + } + currentFieldName() { + return this.tree.language.fields[this.currentFieldId()]; + } + gotoFirstChild() { + marshalTreeCursor(this); + const e = C._ts_tree_cursor_goto_first_child_wasm(this.tree[0]); + return unmarshalTreeCursor(this), 1 === e; + } + gotoNextSibling() { + marshalTreeCursor(this); + const e = C._ts_tree_cursor_goto_next_sibling_wasm(this.tree[0]); + return unmarshalTreeCursor(this), 1 === e; + } + gotoParent() { + marshalTreeCursor(this); + const e = C._ts_tree_cursor_goto_parent_wasm(this.tree[0]); + return unmarshalTreeCursor(this), 1 === e; + } + } + class Language { + constructor(e, t) { + assertInternal(e), this[0] = t, this.types = new Array(C._ts_language_symbol_count(this[0])); + for (let e2 = 0, t2 = this.types.length; e2 < t2; e2++) + C._ts_language_symbol_type(this[0], e2) < 2 && (this.types[e2] = UTF8ToString(C._ts_language_symbol_name(this[0], e2))); + this.fields = new Array(C._ts_language_field_count(this[0]) + 1); + for (let e2 = 0, t2 = this.fields.length; e2 < t2; e2++) { + const t3 = C._ts_language_field_name_for_id(this[0], e2); + this.fields[e2] = 0 !== t3 ? UTF8ToString(t3) : null; + } + } + get version() { + return C._ts_language_version(this[0]); + } + get fieldCount() { + return this.fields.length - 1; + } + fieldIdForName(e) { + const t = this.fields.indexOf(e); + return -1 !== t ? t : null; + } + fieldNameForId(e) { + return this.fields[e] || null; + } + idForNodeType(e, t) { + const r = lengthBytesUTF8(e), _ = C._malloc(r + 1); + stringToUTF8(e, _, r + 1); + const n = C._ts_language_symbol_for_name(this[0], _, r, t); + return C._free(_), n || null; + } + get nodeTypeCount() { + return C._ts_language_symbol_count(this[0]); + } + nodeTypeForId(e) { + const t = C._ts_language_symbol_name(this[0], e); + return t ? UTF8ToString(t) : null; + } + nodeTypeIsNamed(e) { + return !!C._ts_language_type_is_named_wasm(this[0], e); + } + nodeTypeIsVisible(e) { + return !!C._ts_language_type_is_visible_wasm(this[0], e); + } + query(e) { + const t = lengthBytesUTF8(e), r = C._malloc(t + 1); + stringToUTF8(e, r, t + 1); + const _ = C._ts_query_new(this[0], r, t, TRANSFER_BUFFER, TRANSFER_BUFFER + SIZE_OF_INT); + if (!_) { + const t2 = getValue(TRANSFER_BUFFER + SIZE_OF_INT, "i32"), _2 = UTF8ToString(r, getValue(TRANSFER_BUFFER, "i32")).length, n2 = e.substr(_2, 100).split("\n")[0]; + let s2, a2 = n2.match(QUERY_WORD_REGEX)[0]; + switch (t2) { + case 2: + s2 = new RangeError(`Bad node name '${a2}'`); + break; + case 3: + s2 = new RangeError(`Bad field name '${a2}'`); + break; + case 4: + s2 = new RangeError(`Bad capture name @${a2}`); + break; + case 5: + s2 = new TypeError(`Bad pattern structure at offset ${_2}: '${n2}'...`), a2 = ""; + break; + default: + s2 = new SyntaxError(`Bad syntax at offset ${_2}: '${n2}'...`), a2 = ""; + } + throw s2.index = _2, s2.length = a2.length, C._free(r), s2; + } + const n = C._ts_query_string_count(_), s = C._ts_query_capture_count(_), a = C._ts_query_pattern_count(_), o = new Array(s), i = new Array(n); + for (let e2 = 0; e2 < s; e2++) { + const t2 = C._ts_query_capture_name_for_id(_, e2, TRANSFER_BUFFER), r2 = getValue(TRANSFER_BUFFER, "i32"); + o[e2] = UTF8ToString(t2, r2); + } + for (let e2 = 0; e2 < n; e2++) { + const t2 = C._ts_query_string_value_for_id(_, e2, TRANSFER_BUFFER), r2 = getValue(TRANSFER_BUFFER, "i32"); + i[e2] = UTF8ToString(t2, r2); + } + const l2 = new Array(a), u = new Array(a), d = new Array(a), c = new Array(a), m = new Array(a); + for (let e2 = 0; e2 < a; e2++) { + const t2 = C._ts_query_predicates_for_pattern(_, e2, TRANSFER_BUFFER), r2 = getValue(TRANSFER_BUFFER, "i32"); + c[e2] = [], m[e2] = []; + const n2 = []; + let s2 = t2; + for (let t3 = 0; t3 < r2; t3++) { + const t4 = getValue(s2, "i32"); + s2 += SIZE_OF_INT; + const r3 = getValue(s2, "i32"); + if (s2 += SIZE_OF_INT, t4 === PREDICATE_STEP_TYPE_CAPTURE) + n2.push({ type: "capture", name: o[r3] }); + else if (t4 === PREDICATE_STEP_TYPE_STRING) + n2.push({ type: "string", value: i[r3] }); + else if (n2.length > 0) { + if ("string" !== n2[0].type) + throw new Error("Predicates must begin with a literal value"); + const t5 = n2[0].value; + let r4 = true; + switch (t5) { + case "not-eq?": + r4 = false; + case "eq?": + if (3 !== n2.length) + throw new Error("Wrong number of arguments to `#eq?` predicate. Expected 2, got " + (n2.length - 1)); + if ("capture" !== n2[1].type) + throw new Error(`First argument of \`#eq?\` predicate must be a capture. Got "${n2[1].value}"`); + if ("capture" === n2[2].type) { + const t6 = n2[1].name, _3 = n2[2].name; + m[e2].push(function(e3) { + let n3, s4; + for (const r5 of e3) + r5.name === t6 && (n3 = r5.node), r5.name === _3 && (s4 = r5.node); + return void 0 === n3 || void 0 === s4 || n3.text === s4.text === r4; + }); + } else { + const t6 = n2[1].name, _3 = n2[2].value; + m[e2].push(function(e3) { + for (const n3 of e3) + if (n3.name === t6) + return n3.node.text === _3 === r4; + return true; + }); + } + break; + case "not-match?": + r4 = false; + case "match?": + if (3 !== n2.length) + throw new Error(`Wrong number of arguments to \`#match?\` predicate. Expected 2, got ${n2.length - 1}.`); + if ("capture" !== n2[1].type) + throw new Error(`First argument of \`#match?\` predicate must be a capture. Got "${n2[1].value}".`); + if ("string" !== n2[2].type) + throw new Error(`Second argument of \`#match?\` predicate must be a string. Got @${n2[2].value}.`); + const _2 = n2[1].name, s3 = new RegExp(n2[2].value); + m[e2].push(function(e3) { + for (const t6 of e3) + if (t6.name === _2) + return s3.test(t6.node.text) === r4; + return true; + }); + break; + case "set!": + if (n2.length < 2 || n2.length > 3) + throw new Error(`Wrong number of arguments to \`#set!\` predicate. Expected 1 or 2. Got ${n2.length - 1}.`); + if (n2.some((e3) => "string" !== e3.type)) + throw new Error('Arguments to `#set!` predicate must be a strings.".'); + l2[e2] || (l2[e2] = {}), l2[e2][n2[1].value] = n2[2] ? n2[2].value : null; + break; + case "is?": + case "is-not?": + if (n2.length < 2 || n2.length > 3) + throw new Error(`Wrong number of arguments to \`#${t5}\` predicate. Expected 1 or 2. Got ${n2.length - 1}.`); + if (n2.some((e3) => "string" !== e3.type)) + throw new Error(`Arguments to \`#${t5}\` predicate must be a strings.".`); + const a2 = "is?" === t5 ? u : d; + a2[e2] || (a2[e2] = {}), a2[e2][n2[1].value] = n2[2] ? n2[2].value : null; + break; + default: + c[e2].push({ operator: t5, operands: n2.slice(1) }); + } + n2.length = 0; + } + } + Object.freeze(l2[e2]), Object.freeze(u[e2]), Object.freeze(d[e2]); + } + return C._free(r), new Query(INTERNAL, _, o, m, c, Object.freeze(l2), Object.freeze(u), Object.freeze(d)); + } + static load(e) { + let t; + if (e instanceof Uint8Array) + t = Promise.resolve(e); + else { + const r2 = e; + if ("undefined" != typeof process && process.versions && process.versions.node) { + const e2 = require("fs"); + t = Promise.resolve(e2.readFileSync(r2)); + } else + t = fetch(r2).then((e2) => e2.arrayBuffer().then((t2) => { + if (e2.ok) + return new Uint8Array(t2); + { + const r3 = new TextDecoder("utf-8").decode(t2); + throw new Error(`Language.load failed with status ${e2.status}. + +${r3}`); + } + })); + } + const r = "function" == typeof loadSideModule ? loadSideModule : loadWebAssemblyModule; + return t.then((e2) => r(e2, { loadAsync: true })).then((e2) => { + const t2 = Object.keys(e2), r2 = t2.find((e3) => LANGUAGE_FUNCTION_REGEX.test(e3) && !e3.includes("external_scanner_")); + r2 || console.log(`Couldn't find language function in WASM file. Symbols: +${JSON.stringify(t2, null, 2)}`); + const _ = e2[r2](); + return new Language(INTERNAL, _); + }); + } + } + class Query { + constructor(e, t, r, _, n, s, a, o) { + assertInternal(e), this[0] = t, this.captureNames = r, this.textPredicates = _, this.predicates = n, this.setProperties = s, this.assertedProperties = a, this.refutedProperties = o, this.exceededMatchLimit = false; + } + delete() { + C._ts_query_delete(this[0]), this[0] = 0; + } + matches(e, t, r, _) { + t || (t = ZERO_POINT), r || (r = ZERO_POINT), _ || (_ = {}); + let n = _.matchLimit; + if (void 0 === n) + n = 0; + else if ("number" != typeof n) + throw new Error("Arguments must be numbers"); + marshalNode(e), C._ts_query_matches_wasm(this[0], e.tree[0], t.row, t.column, r.row, r.column, n); + const s = getValue(TRANSFER_BUFFER, "i32"), a = getValue(TRANSFER_BUFFER + SIZE_OF_INT, "i32"), o = getValue(TRANSFER_BUFFER + 2 * SIZE_OF_INT, "i32"), i = new Array(s); + this.exceededMatchLimit = !!o; + let l2 = 0, u = a; + for (let t2 = 0; t2 < s; t2++) { + const r2 = getValue(u, "i32"); + u += SIZE_OF_INT; + const _2 = getValue(u, "i32"); + u += SIZE_OF_INT; + const n2 = new Array(_2); + if (u = unmarshalCaptures(this, e.tree, u, n2), this.textPredicates[r2].every((e2) => e2(n2))) { + i[l2++] = { pattern: r2, captures: n2 }; + const e2 = this.setProperties[r2]; + e2 && (i[t2].setProperties = e2); + const _3 = this.assertedProperties[r2]; + _3 && (i[t2].assertedProperties = _3); + const s2 = this.refutedProperties[r2]; + s2 && (i[t2].refutedProperties = s2); + } + } + return i.length = l2, C._free(a), i; + } + captures(e, t, r, _) { + t || (t = ZERO_POINT), r || (r = ZERO_POINT), _ || (_ = {}); + let n = _.matchLimit; + if (void 0 === n) + n = 0; + else if ("number" != typeof n) + throw new Error("Arguments must be numbers"); + marshalNode(e), C._ts_query_captures_wasm(this[0], e.tree[0], t.row, t.column, r.row, r.column, n); + const s = getValue(TRANSFER_BUFFER, "i32"), a = getValue(TRANSFER_BUFFER + SIZE_OF_INT, "i32"), o = getValue(TRANSFER_BUFFER + 2 * SIZE_OF_INT, "i32"), i = []; + this.exceededMatchLimit = !!o; + const l2 = []; + let u = a; + for (let t2 = 0; t2 < s; t2++) { + const t3 = getValue(u, "i32"); + u += SIZE_OF_INT; + const r2 = getValue(u, "i32"); + u += SIZE_OF_INT; + const _2 = getValue(u, "i32"); + if (u += SIZE_OF_INT, l2.length = r2, u = unmarshalCaptures(this, e.tree, u, l2), this.textPredicates[t3].every((e2) => e2(l2))) { + const e2 = l2[_2], r3 = this.setProperties[t3]; + r3 && (e2.setProperties = r3); + const n2 = this.assertedProperties[t3]; + n2 && (e2.assertedProperties = n2); + const s2 = this.refutedProperties[t3]; + s2 && (e2.refutedProperties = s2), i.push(e2); + } + } + return C._free(a), i; + } + predicatesForPattern(e) { + return this.predicates[e]; + } + didExceedMatchLimit() { + return this.exceededMatchLimit; + } + } + function getText(e, t, r) { + const _ = r - t; + let n = e.textCallback(t, null, r); + for (t += n.length; t < r; ) { + const _2 = e.textCallback(t, null, r); + if (!(_2 && _2.length > 0)) + break; + t += _2.length, n += _2; + } + return t > r && (n = n.slice(0, _)), n; + } + function unmarshalCaptures(e, t, r, _) { + for (let n = 0, s = _.length; n < s; n++) { + const s2 = getValue(r, "i32"), a = unmarshalNode(t, r += SIZE_OF_INT); + r += SIZE_OF_NODE, _[n] = { name: e.captureNames[s2], node: a }; + } + return r; + } + function assertInternal(e) { + if (e !== INTERNAL) + throw new Error("Illegal constructor"); + } + function isPoint(e) { + return e && "number" == typeof e.row && "number" == typeof e.column; + } + function marshalNode(e) { + let t = TRANSFER_BUFFER; + setValue(t, e.id, "i32"), t += SIZE_OF_INT, setValue(t, e.startIndex, "i32"), t += SIZE_OF_INT, setValue(t, e.startPosition.row, "i32"), t += SIZE_OF_INT, setValue(t, e.startPosition.column, "i32"), t += SIZE_OF_INT, setValue(t, e[0], "i32"); + } + function unmarshalNode(e, t = TRANSFER_BUFFER) { + const r = getValue(t, "i32"); + if (0 === r) + return null; + const _ = getValue(t += SIZE_OF_INT, "i32"), n = getValue(t += SIZE_OF_INT, "i32"), s = getValue(t += SIZE_OF_INT, "i32"), a = getValue(t += SIZE_OF_INT, "i32"), o = new Node(INTERNAL, e); + return o.id = r, o.startIndex = _, o.startPosition = { row: n, column: s }, o[0] = a, o; + } + function marshalTreeCursor(e, t = TRANSFER_BUFFER) { + setValue(t + 0 * SIZE_OF_INT, e[0], "i32"), setValue(t + 1 * SIZE_OF_INT, e[1], "i32"), setValue(t + 2 * SIZE_OF_INT, e[2], "i32"); + } + function unmarshalTreeCursor(e) { + e[0] = getValue(TRANSFER_BUFFER + 0 * SIZE_OF_INT, "i32"), e[1] = getValue(TRANSFER_BUFFER + 1 * SIZE_OF_INT, "i32"), e[2] = getValue(TRANSFER_BUFFER + 2 * SIZE_OF_INT, "i32"); + } + function marshalPoint(e, t) { + setValue(e, t.row, "i32"), setValue(e + SIZE_OF_INT, t.column, "i32"); + } + function unmarshalPoint(e) { + return { row: getValue(e, "i32"), column: getValue(e + SIZE_OF_INT, "i32") }; + } + function marshalRange(e, t) { + marshalPoint(e, t.startPosition), marshalPoint(e += SIZE_OF_POINT, t.endPosition), setValue(e += SIZE_OF_POINT, t.startIndex, "i32"), setValue(e += SIZE_OF_INT, t.endIndex, "i32"), e += SIZE_OF_INT; + } + function unmarshalRange(e) { + const t = {}; + return t.startPosition = unmarshalPoint(e), e += SIZE_OF_POINT, t.endPosition = unmarshalPoint(e), e += SIZE_OF_POINT, t.startIndex = getValue(e, "i32"), e += SIZE_OF_INT, t.endIndex = getValue(e, "i32"), t; + } + function marshalEdit(e) { + let t = TRANSFER_BUFFER; + marshalPoint(t, e.startPosition), t += SIZE_OF_POINT, marshalPoint(t, e.oldEndPosition), t += SIZE_OF_POINT, marshalPoint(t, e.newEndPosition), t += SIZE_OF_POINT, setValue(t, e.startIndex, "i32"), t += SIZE_OF_INT, setValue(t, e.oldEndIndex, "i32"), t += SIZE_OF_INT, setValue(t, e.newEndIndex, "i32"), t += SIZE_OF_INT; + } + for (const e of Object.getOwnPropertyNames(ParserImpl.prototype)) + Object.defineProperty(Parser.prototype, e, { value: ParserImpl.prototype[e], enumerable: false, writable: false }); + Parser.Language = Language, Module.onRuntimeInitialized = () => { + ParserImpl.init(), resolveInitPromise(); + }; + })); + } + } + return Parser; + }(); + "object" == typeof exports && (module.exports = TreeSitter); + } +}); + +// ../node_modules/.pnpm/dedent@0.7.0/node_modules/dedent/dist/dedent.js +var require_dedent = __commonJS({ + "../node_modules/.pnpm/dedent@0.7.0/node_modules/dedent/dist/dedent.js"(exports2, module2) { + "use strict"; + function dedent4(strings) { + var raw = void 0; + if (typeof strings === "string") { + raw = [strings]; + } else { + raw = strings.raw; + } + var result = ""; + for (var i = 0; i < raw.length; i++) { + result += raw[i].replace(/\\\n[ \t]*/g, "").replace(/\\`/g, "`"); + if (i < (arguments.length <= 1 ? 0 : arguments.length - 1)) { + result += arguments.length <= i + 1 ? void 0 : arguments[i + 1]; + } + } + var lines2 = result.split("\n"); + var mindent = null; + lines2.forEach(function(l2) { + var m = l2.match(/^(\s+)\S+/); + if (m) { + var indent = m[1].length; + if (!mindent) { + mindent = indent; + } else { + mindent = Math.min(mindent, indent); + } + } + }); + if (mindent !== null) { + result = lines2.map(function(l2) { + return l2[0] === " " ? l2.slice(mindent) : l2; + }).join("\n"); + } + result = result.trim(); + return result.replace(/\\n/g, "\n"); + } + if (typeof module2 !== "undefined") { + module2.exports = dedent4; + } + } +}); + +// ../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/conventions.js +var require_conventions = __commonJS({ + "../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/conventions.js"(exports2) { + "use strict"; + function find(list, predicate, ac) { + if (ac === void 0) { + ac = Array.prototype; + } + if (list && typeof ac.find === "function") { + return ac.find.call(list, predicate); + } + for (var i = 0; i < list.length; i++) { + if (Object.prototype.hasOwnProperty.call(list, i)) { + var item = list[i]; + if (predicate.call(void 0, item, i, list)) { + return item; + } + } + } + } + function freeze(object, oc) { + if (oc === void 0) { + oc = Object; + } + return oc && typeof oc.freeze === "function" ? oc.freeze(object) : object; + } + function assign(target, source2) { + if (target === null || typeof target !== "object") { + throw new TypeError("target is not an object"); + } + for (var key in source2) { + if (Object.prototype.hasOwnProperty.call(source2, key)) { + target[key] = source2[key]; + } + } + return target; + } + var MIME_TYPE = freeze({ + /** + * `text/html`, the only mime type that triggers treating an XML document as HTML. + * + * @see DOMParser.SupportedType.isHTML + * @see https://www.iana.org/assignments/media-types/text/html IANA MimeType registration + * @see https://en.wikipedia.org/wiki/HTML Wikipedia + * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMParser/parseFromString MDN + * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-domparser-parsefromstring WHATWG HTML Spec + */ + HTML: "text/html", + /** + * Helper method to check a mime type if it indicates an HTML document + * + * @param {string} [value] + * @returns {boolean} + * + * @see https://www.iana.org/assignments/media-types/text/html IANA MimeType registration + * @see https://en.wikipedia.org/wiki/HTML Wikipedia + * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMParser/parseFromString MDN + * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-domparser-parsefromstring */ + isHTML: function(value) { + return value === MIME_TYPE.HTML; + }, + /** + * `application/xml`, the standard mime type for XML documents. + * + * @see https://www.iana.org/assignments/media-types/application/xml IANA MimeType registration + * @see https://tools.ietf.org/html/rfc7303#section-9.1 RFC 7303 + * @see https://en.wikipedia.org/wiki/XML_and_MIME Wikipedia + */ + XML_APPLICATION: "application/xml", + /** + * `text/html`, an alias for `application/xml`. + * + * @see https://tools.ietf.org/html/rfc7303#section-9.2 RFC 7303 + * @see https://www.iana.org/assignments/media-types/text/xml IANA MimeType registration + * @see https://en.wikipedia.org/wiki/XML_and_MIME Wikipedia + */ + XML_TEXT: "text/xml", + /** + * `application/xhtml+xml`, indicates an XML document that has the default HTML namespace, + * but is parsed as an XML document. + * + * @see https://www.iana.org/assignments/media-types/application/xhtml+xml IANA MimeType registration + * @see https://dom.spec.whatwg.org/#dom-domimplementation-createdocument WHATWG DOM Spec + * @see https://en.wikipedia.org/wiki/XHTML Wikipedia + */ + XML_XHTML_APPLICATION: "application/xhtml+xml", + /** + * `image/svg+xml`, + * + * @see https://www.iana.org/assignments/media-types/image/svg+xml IANA MimeType registration + * @see https://www.w3.org/TR/SVG11/ W3C SVG 1.1 + * @see https://en.wikipedia.org/wiki/Scalable_Vector_Graphics Wikipedia + */ + XML_SVG_IMAGE: "image/svg+xml" + }); + var NAMESPACE = freeze({ + /** + * The XHTML namespace. + * + * @see http://www.w3.org/1999/xhtml + */ + HTML: "http://www.w3.org/1999/xhtml", + /** + * Checks if `uri` equals `NAMESPACE.HTML`. + * + * @param {string} [uri] + * + * @see NAMESPACE.HTML + */ + isHTML: function(uri) { + return uri === NAMESPACE.HTML; + }, + /** + * The SVG namespace. + * + * @see http://www.w3.org/2000/svg + */ + SVG: "http://www.w3.org/2000/svg", + /** + * The `xml:` namespace. + * + * @see http://www.w3.org/XML/1998/namespace + */ + XML: "http://www.w3.org/XML/1998/namespace", + /** + * The `xmlns:` namespace + * + * @see https://www.w3.org/2000/xmlns/ + */ + XMLNS: "http://www.w3.org/2000/xmlns/" + }); + exports2.assign = assign; + exports2.find = find; + exports2.freeze = freeze; + exports2.MIME_TYPE = MIME_TYPE; + exports2.NAMESPACE = NAMESPACE; + } +}); + +// ../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/dom.js +var require_dom = __commonJS({ + "../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/dom.js"(exports2) { + var conventions = require_conventions(); + var find = conventions.find; + var NAMESPACE = conventions.NAMESPACE; + function notEmptyString(input) { + return input !== ""; + } + function splitOnASCIIWhitespace(input) { + return input ? input.split(/[\t\n\f\r ]+/).filter(notEmptyString) : []; + } + function orderedSetReducer(current, element) { + if (!current.hasOwnProperty(element)) { + current[element] = true; + } + return current; + } + function toOrderedSet(input) { + if (!input) + return []; + var list = splitOnASCIIWhitespace(input); + return Object.keys(list.reduce(orderedSetReducer, {})); + } + function arrayIncludes(list) { + return function(element) { + return list && list.indexOf(element) !== -1; + }; + } + function copy(src, dest) { + for (var p in src) { + if (Object.prototype.hasOwnProperty.call(src, p)) { + dest[p] = src[p]; + } + } + } + function _extends(Class, Super) { + var pt = Class.prototype; + if (!(pt instanceof Super)) { + let t2 = function() { + }; + var t = t2; + ; + t2.prototype = Super.prototype; + t2 = new t2(); + copy(pt, t2); + Class.prototype = pt = t2; + } + if (pt.constructor != Class) { + if (typeof Class != "function") { + console.error("unknown Class:" + Class); + } + pt.constructor = Class; + } + } + var NodeType = {}; + var ELEMENT_NODE = NodeType.ELEMENT_NODE = 1; + var ATTRIBUTE_NODE = NodeType.ATTRIBUTE_NODE = 2; + var TEXT_NODE = NodeType.TEXT_NODE = 3; + var CDATA_SECTION_NODE = NodeType.CDATA_SECTION_NODE = 4; + var ENTITY_REFERENCE_NODE = NodeType.ENTITY_REFERENCE_NODE = 5; + var ENTITY_NODE = NodeType.ENTITY_NODE = 6; + var PROCESSING_INSTRUCTION_NODE = NodeType.PROCESSING_INSTRUCTION_NODE = 7; + var COMMENT_NODE = NodeType.COMMENT_NODE = 8; + var DOCUMENT_NODE = NodeType.DOCUMENT_NODE = 9; + var DOCUMENT_TYPE_NODE = NodeType.DOCUMENT_TYPE_NODE = 10; + var DOCUMENT_FRAGMENT_NODE = NodeType.DOCUMENT_FRAGMENT_NODE = 11; + var NOTATION_NODE = NodeType.NOTATION_NODE = 12; + var ExceptionCode = {}; + var ExceptionMessage = {}; + var INDEX_SIZE_ERR = ExceptionCode.INDEX_SIZE_ERR = (ExceptionMessage[1] = "Index size error", 1); + var DOMSTRING_SIZE_ERR = ExceptionCode.DOMSTRING_SIZE_ERR = (ExceptionMessage[2] = "DOMString size error", 2); + var HIERARCHY_REQUEST_ERR = ExceptionCode.HIERARCHY_REQUEST_ERR = (ExceptionMessage[3] = "Hierarchy request error", 3); + var WRONG_DOCUMENT_ERR = ExceptionCode.WRONG_DOCUMENT_ERR = (ExceptionMessage[4] = "Wrong document", 4); + var INVALID_CHARACTER_ERR = ExceptionCode.INVALID_CHARACTER_ERR = (ExceptionMessage[5] = "Invalid character", 5); + var NO_DATA_ALLOWED_ERR = ExceptionCode.NO_DATA_ALLOWED_ERR = (ExceptionMessage[6] = "No data allowed", 6); + var NO_MODIFICATION_ALLOWED_ERR = ExceptionCode.NO_MODIFICATION_ALLOWED_ERR = (ExceptionMessage[7] = "No modification allowed", 7); + var NOT_FOUND_ERR = ExceptionCode.NOT_FOUND_ERR = (ExceptionMessage[8] = "Not found", 8); + var NOT_SUPPORTED_ERR = ExceptionCode.NOT_SUPPORTED_ERR = (ExceptionMessage[9] = "Not supported", 9); + var INUSE_ATTRIBUTE_ERR = ExceptionCode.INUSE_ATTRIBUTE_ERR = (ExceptionMessage[10] = "Attribute in use", 10); + var INVALID_STATE_ERR = ExceptionCode.INVALID_STATE_ERR = (ExceptionMessage[11] = "Invalid state", 11); + var SYNTAX_ERR = ExceptionCode.SYNTAX_ERR = (ExceptionMessage[12] = "Syntax error", 12); + var INVALID_MODIFICATION_ERR = ExceptionCode.INVALID_MODIFICATION_ERR = (ExceptionMessage[13] = "Invalid modification", 13); + var NAMESPACE_ERR = ExceptionCode.NAMESPACE_ERR = (ExceptionMessage[14] = "Invalid namespace", 14); + var INVALID_ACCESS_ERR = ExceptionCode.INVALID_ACCESS_ERR = (ExceptionMessage[15] = "Invalid access", 15); + function DOMException2(code, message) { + if (message instanceof Error) { + var error = message; + } else { + error = this; + Error.call(this, ExceptionMessage[code]); + this.message = ExceptionMessage[code]; + if (Error.captureStackTrace) + Error.captureStackTrace(this, DOMException2); + } + error.code = code; + if (message) + this.message = this.message + ": " + message; + return error; + } + DOMException2.prototype = Error.prototype; + copy(ExceptionCode, DOMException2); + function NodeList() { + } + NodeList.prototype = { + /** + * The number of nodes in the list. The range of valid child node indices is 0 to length-1 inclusive. + * @standard level1 + */ + length: 0, + /** + * Returns the indexth item in the collection. If index is greater than or equal to the number of nodes in the list, this returns null. + * @standard level1 + * @param index unsigned long + * Index into the collection. + * @return Node + * The node at the indexth position in the NodeList, or null if that is not a valid index. + */ + item: function(index) { + return index >= 0 && index < this.length ? this[index] : null; + }, + toString: function(isHTML, nodeFilter) { + for (var buf = [], i = 0; i < this.length; i++) { + serializeToString(this[i], buf, isHTML, nodeFilter); + } + return buf.join(""); + }, + /** + * @private + * @param {function (Node):boolean} predicate + * @returns {Node[]} + */ + filter: function(predicate) { + return Array.prototype.filter.call(this, predicate); + }, + /** + * @private + * @param {Node} item + * @returns {number} + */ + indexOf: function(item) { + return Array.prototype.indexOf.call(this, item); + } + }; + function LiveNodeList(node, refresh) { + this._node = node; + this._refresh = refresh; + _updateLiveList(this); + } + function _updateLiveList(list) { + var inc = list._node._inc || list._node.ownerDocument._inc; + if (list._inc !== inc) { + var ls = list._refresh(list._node); + __set__(list, "length", ls.length); + if (!list.$$length || ls.length < list.$$length) { + for (var i = ls.length; i in list; i++) { + if (Object.prototype.hasOwnProperty.call(list, i)) { + delete list[i]; + } + } + } + copy(ls, list); + list._inc = inc; + } + } + LiveNodeList.prototype.item = function(i) { + _updateLiveList(this); + return this[i] || null; + }; + _extends(LiveNodeList, NodeList); + function NamedNodeMap() { + } + function _findNodeIndex(list, node) { + var i = list.length; + while (i--) { + if (list[i] === node) { + return i; + } + } + } + function _addNamedNode(el, list, newAttr, oldAttr) { + if (oldAttr) { + list[_findNodeIndex(list, oldAttr)] = newAttr; + } else { + list[list.length++] = newAttr; + } + if (el) { + newAttr.ownerElement = el; + var doc = el.ownerDocument; + if (doc) { + oldAttr && _onRemoveAttribute(doc, el, oldAttr); + _onAddAttribute(doc, el, newAttr); + } + } + } + function _removeNamedNode(el, list, attr) { + var i = _findNodeIndex(list, attr); + if (i >= 0) { + var lastIndex = list.length - 1; + while (i < lastIndex) { + list[i] = list[++i]; + } + list.length = lastIndex; + if (el) { + var doc = el.ownerDocument; + if (doc) { + _onRemoveAttribute(doc, el, attr); + attr.ownerElement = null; + } + } + } else { + throw new DOMException2(NOT_FOUND_ERR, new Error(el.tagName + "@" + attr)); + } + } + NamedNodeMap.prototype = { + length: 0, + item: NodeList.prototype.item, + getNamedItem: function(key) { + var i = this.length; + while (i--) { + var attr = this[i]; + if (attr.nodeName == key) { + return attr; + } + } + }, + setNamedItem: function(attr) { + var el = attr.ownerElement; + if (el && el != this._ownerElement) { + throw new DOMException2(INUSE_ATTRIBUTE_ERR); + } + var oldAttr = this.getNamedItem(attr.nodeName); + _addNamedNode(this._ownerElement, this, attr, oldAttr); + return oldAttr; + }, + /* returns Node */ + setNamedItemNS: function(attr) { + var el = attr.ownerElement, oldAttr; + if (el && el != this._ownerElement) { + throw new DOMException2(INUSE_ATTRIBUTE_ERR); + } + oldAttr = this.getNamedItemNS(attr.namespaceURI, attr.localName); + _addNamedNode(this._ownerElement, this, attr, oldAttr); + return oldAttr; + }, + /* returns Node */ + removeNamedItem: function(key) { + var attr = this.getNamedItem(key); + _removeNamedNode(this._ownerElement, this, attr); + return attr; + }, + // raises: NOT_FOUND_ERR,NO_MODIFICATION_ALLOWED_ERR + //for level2 + removeNamedItemNS: function(namespaceURI, localName) { + var attr = this.getNamedItemNS(namespaceURI, localName); + _removeNamedNode(this._ownerElement, this, attr); + return attr; + }, + getNamedItemNS: function(namespaceURI, localName) { + var i = this.length; + while (i--) { + var node = this[i]; + if (node.localName == localName && node.namespaceURI == namespaceURI) { + return node; + } + } + return null; + } + }; + function DOMImplementation() { + } + DOMImplementation.prototype = { + /** + * The DOMImplementation.hasFeature() method returns a Boolean flag indicating if a given feature is supported. + * The different implementations fairly diverged in what kind of features were reported. + * The latest version of the spec settled to force this method to always return true, where the functionality was accurate and in use. + * + * @deprecated It is deprecated and modern browsers return true in all cases. + * + * @param {string} feature + * @param {string} [version] + * @returns {boolean} always true + * + * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation/hasFeature MDN + * @see https://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html#ID-5CED94D7 DOM Level 1 Core + * @see https://dom.spec.whatwg.org/#dom-domimplementation-hasfeature DOM Living Standard + */ + hasFeature: function(feature, version4) { + return true; + }, + /** + * Creates an XML Document object of the specified type with its document element. + * + * __It behaves slightly different from the description in the living standard__: + * - There is no interface/class `XMLDocument`, it returns a `Document` instance. + * - `contentType`, `encoding`, `mode`, `origin`, `url` fields are currently not declared. + * - this implementation is not validating names or qualified names + * (when parsing XML strings, the SAX parser takes care of that) + * + * @param {string|null} namespaceURI + * @param {string} qualifiedName + * @param {DocumentType=null} doctype + * @returns {Document} + * + * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation/createDocument MDN + * @see https://www.w3.org/TR/DOM-Level-2-Core/core.html#Level-2-Core-DOM-createDocument DOM Level 2 Core (initial) + * @see https://dom.spec.whatwg.org/#dom-domimplementation-createdocument DOM Level 2 Core + * + * @see https://dom.spec.whatwg.org/#validate-and-extract DOM: Validate and extract + * @see https://www.w3.org/TR/xml/#NT-NameStartChar XML Spec: Names + * @see https://www.w3.org/TR/xml-names/#ns-qualnames XML Namespaces: Qualified names + */ + createDocument: function(namespaceURI, qualifiedName, doctype) { + var doc = new Document(); + doc.implementation = this; + doc.childNodes = new NodeList(); + doc.doctype = doctype || null; + if (doctype) { + doc.appendChild(doctype); + } + if (qualifiedName) { + var root = doc.createElementNS(namespaceURI, qualifiedName); + doc.appendChild(root); + } + return doc; + }, + /** + * Returns a doctype, with the given `qualifiedName`, `publicId`, and `systemId`. + * + * __This behavior is slightly different from the in the specs__: + * - this implementation is not validating names or qualified names + * (when parsing XML strings, the SAX parser takes care of that) + * + * @param {string} qualifiedName + * @param {string} [publicId] + * @param {string} [systemId] + * @returns {DocumentType} which can either be used with `DOMImplementation.createDocument` upon document creation + * or can be put into the document via methods like `Node.insertBefore()` or `Node.replaceChild()` + * + * @see https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation/createDocumentType MDN + * @see https://www.w3.org/TR/DOM-Level-2-Core/core.html#Level-2-Core-DOM-createDocType DOM Level 2 Core + * @see https://dom.spec.whatwg.org/#dom-domimplementation-createdocumenttype DOM Living Standard + * + * @see https://dom.spec.whatwg.org/#validate-and-extract DOM: Validate and extract + * @see https://www.w3.org/TR/xml/#NT-NameStartChar XML Spec: Names + * @see https://www.w3.org/TR/xml-names/#ns-qualnames XML Namespaces: Qualified names + */ + createDocumentType: function(qualifiedName, publicId, systemId) { + var node = new DocumentType(); + node.name = qualifiedName; + node.nodeName = qualifiedName; + node.publicId = publicId || ""; + node.systemId = systemId || ""; + return node; + } + }; + function Node2() { + } + Node2.prototype = { + firstChild: null, + lastChild: null, + previousSibling: null, + nextSibling: null, + attributes: null, + parentNode: null, + childNodes: null, + ownerDocument: null, + nodeValue: null, + namespaceURI: null, + prefix: null, + localName: null, + // Modified in DOM Level 2: + insertBefore: function(newChild, refChild) { + return _insertBefore(this, newChild, refChild); + }, + replaceChild: function(newChild, oldChild) { + _insertBefore(this, newChild, oldChild, assertPreReplacementValidityInDocument); + if (oldChild) { + this.removeChild(oldChild); + } + }, + removeChild: function(oldChild) { + return _removeChild(this, oldChild); + }, + appendChild: function(newChild) { + return this.insertBefore(newChild, null); + }, + hasChildNodes: function() { + return this.firstChild != null; + }, + cloneNode: function(deep) { + return cloneNode(this.ownerDocument || this, this, deep); + }, + // Modified in DOM Level 2: + normalize: function() { + var child = this.firstChild; + while (child) { + var next = child.nextSibling; + if (next && next.nodeType == TEXT_NODE && child.nodeType == TEXT_NODE) { + this.removeChild(next); + child.appendData(next.data); + } else { + child.normalize(); + child = next; + } + } + }, + // Introduced in DOM Level 2: + isSupported: function(feature, version4) { + return this.ownerDocument.implementation.hasFeature(feature, version4); + }, + // Introduced in DOM Level 2: + hasAttributes: function() { + return this.attributes.length > 0; + }, + /** + * Look up the prefix associated to the given namespace URI, starting from this node. + * **The default namespace declarations are ignored by this method.** + * See Namespace Prefix Lookup for details on the algorithm used by this method. + * + * _Note: The implementation seems to be incomplete when compared to the algorithm described in the specs._ + * + * @param {string | null} namespaceURI + * @returns {string | null} + * @see https://www.w3.org/TR/DOM-Level-3-Core/core.html#Node3-lookupNamespacePrefix + * @see https://www.w3.org/TR/DOM-Level-3-Core/namespaces-algorithms.html#lookupNamespacePrefixAlgo + * @see https://dom.spec.whatwg.org/#dom-node-lookupprefix + * @see https://github.com/xmldom/xmldom/issues/322 + */ + lookupPrefix: function(namespaceURI) { + var el = this; + while (el) { + var map = el._nsMap; + if (map) { + for (var n in map) { + if (Object.prototype.hasOwnProperty.call(map, n) && map[n] === namespaceURI) { + return n; + } + } + } + el = el.nodeType == ATTRIBUTE_NODE ? el.ownerDocument : el.parentNode; + } + return null; + }, + // Introduced in DOM Level 3: + lookupNamespaceURI: function(prefix) { + var el = this; + while (el) { + var map = el._nsMap; + if (map) { + if (Object.prototype.hasOwnProperty.call(map, prefix)) { + return map[prefix]; + } + } + el = el.nodeType == ATTRIBUTE_NODE ? el.ownerDocument : el.parentNode; + } + return null; + }, + // Introduced in DOM Level 3: + isDefaultNamespace: function(namespaceURI) { + var prefix = this.lookupPrefix(namespaceURI); + return prefix == null; + } + }; + function _xmlEncoder(c) { + return c == "<" && "<" || c == ">" && ">" || c == "&" && "&" || c == '"' && """ || "&#" + c.charCodeAt() + ";"; + } + copy(NodeType, Node2); + copy(NodeType, Node2.prototype); + function _visitNode(node, callback) { + if (callback(node)) { + return true; + } + if (node = node.firstChild) { + do { + if (_visitNode(node, callback)) { + return true; + } + } while (node = node.nextSibling); + } + } + function Document() { + this.ownerDocument = this; + } + function _onAddAttribute(doc, el, newAttr) { + doc && doc._inc++; + var ns = newAttr.namespaceURI; + if (ns === NAMESPACE.XMLNS) { + el._nsMap[newAttr.prefix ? newAttr.localName : ""] = newAttr.value; + } + } + function _onRemoveAttribute(doc, el, newAttr, remove) { + doc && doc._inc++; + var ns = newAttr.namespaceURI; + if (ns === NAMESPACE.XMLNS) { + delete el._nsMap[newAttr.prefix ? newAttr.localName : ""]; + } + } + function _onUpdateChild(doc, el, newChild) { + if (doc && doc._inc) { + doc._inc++; + var cs = el.childNodes; + if (newChild) { + cs[cs.length++] = newChild; + } else { + var child = el.firstChild; + var i = 0; + while (child) { + cs[i++] = child; + child = child.nextSibling; + } + cs.length = i; + delete cs[cs.length]; + } + } + } + function _removeChild(parentNode, child) { + var previous = child.previousSibling; + var next = child.nextSibling; + if (previous) { + previous.nextSibling = next; + } else { + parentNode.firstChild = next; + } + if (next) { + next.previousSibling = previous; + } else { + parentNode.lastChild = previous; + } + child.parentNode = null; + child.previousSibling = null; + child.nextSibling = null; + _onUpdateChild(parentNode.ownerDocument, parentNode); + return child; + } + function hasValidParentNodeType(node) { + return node && (node.nodeType === Node2.DOCUMENT_NODE || node.nodeType === Node2.DOCUMENT_FRAGMENT_NODE || node.nodeType === Node2.ELEMENT_NODE); + } + function hasInsertableNodeType(node) { + return node && (isElementNode(node) || isTextNode(node) || isDocTypeNode(node) || node.nodeType === Node2.DOCUMENT_FRAGMENT_NODE || node.nodeType === Node2.COMMENT_NODE || node.nodeType === Node2.PROCESSING_INSTRUCTION_NODE); + } + function isDocTypeNode(node) { + return node && node.nodeType === Node2.DOCUMENT_TYPE_NODE; + } + function isElementNode(node) { + return node && node.nodeType === Node2.ELEMENT_NODE; + } + function isTextNode(node) { + return node && node.nodeType === Node2.TEXT_NODE; + } + function isElementInsertionPossible(doc, child) { + var parentChildNodes = doc.childNodes || []; + if (find(parentChildNodes, isElementNode) || isDocTypeNode(child)) { + return false; + } + var docTypeNode = find(parentChildNodes, isDocTypeNode); + return !(child && docTypeNode && parentChildNodes.indexOf(docTypeNode) > parentChildNodes.indexOf(child)); + } + function isElementReplacementPossible(doc, child) { + var parentChildNodes = doc.childNodes || []; + function hasElementChildThatIsNotChild(node) { + return isElementNode(node) && node !== child; + } + if (find(parentChildNodes, hasElementChildThatIsNotChild)) { + return false; + } + var docTypeNode = find(parentChildNodes, isDocTypeNode); + return !(child && docTypeNode && parentChildNodes.indexOf(docTypeNode) > parentChildNodes.indexOf(child)); + } + function assertPreInsertionValidity1to5(parent, node, child) { + if (!hasValidParentNodeType(parent)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "Unexpected parent node type " + parent.nodeType); + } + if (child && child.parentNode !== parent) { + throw new DOMException2(NOT_FOUND_ERR, "child not in parent"); + } + if ( + // 4. If `node` is not a DocumentFragment, DocumentType, Element, or CharacterData node, then throw a "HierarchyRequestError" DOMException. + !hasInsertableNodeType(node) || // 5. If either `node` is a Text node and `parent` is a document, + // the sax parser currently adds top level text nodes, this will be fixed in 0.9.0 + // || (node.nodeType === Node.TEXT_NODE && parent.nodeType === Node.DOCUMENT_NODE) + // or `node` is a doctype and `parent` is not a document, then throw a "HierarchyRequestError" DOMException. + isDocTypeNode(node) && parent.nodeType !== Node2.DOCUMENT_NODE + ) { + throw new DOMException2( + HIERARCHY_REQUEST_ERR, + "Unexpected node type " + node.nodeType + " for parent node type " + parent.nodeType + ); + } + } + function assertPreInsertionValidityInDocument(parent, node, child) { + var parentChildNodes = parent.childNodes || []; + var nodeChildNodes = node.childNodes || []; + if (node.nodeType === Node2.DOCUMENT_FRAGMENT_NODE) { + var nodeChildElements = nodeChildNodes.filter(isElementNode); + if (nodeChildElements.length > 1 || find(nodeChildNodes, isTextNode)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "More than one element or text in fragment"); + } + if (nodeChildElements.length === 1 && !isElementInsertionPossible(parent, child)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "Element in fragment can not be inserted before doctype"); + } + } + if (isElementNode(node)) { + if (!isElementInsertionPossible(parent, child)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "Only one element can be added and only after doctype"); + } + } + if (isDocTypeNode(node)) { + if (find(parentChildNodes, isDocTypeNode)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "Only one doctype is allowed"); + } + var parentElementChild = find(parentChildNodes, isElementNode); + if (child && parentChildNodes.indexOf(parentElementChild) < parentChildNodes.indexOf(child)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "Doctype can only be inserted before an element"); + } + if (!child && parentElementChild) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "Doctype can not be appended since element is present"); + } + } + } + function assertPreReplacementValidityInDocument(parent, node, child) { + var parentChildNodes = parent.childNodes || []; + var nodeChildNodes = node.childNodes || []; + if (node.nodeType === Node2.DOCUMENT_FRAGMENT_NODE) { + var nodeChildElements = nodeChildNodes.filter(isElementNode); + if (nodeChildElements.length > 1 || find(nodeChildNodes, isTextNode)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "More than one element or text in fragment"); + } + if (nodeChildElements.length === 1 && !isElementReplacementPossible(parent, child)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "Element in fragment can not be inserted before doctype"); + } + } + if (isElementNode(node)) { + if (!isElementReplacementPossible(parent, child)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "Only one element can be added and only after doctype"); + } + } + if (isDocTypeNode(node)) { + let hasDoctypeChildThatIsNotChild2 = function(node2) { + return isDocTypeNode(node2) && node2 !== child; + }; + var hasDoctypeChildThatIsNotChild = hasDoctypeChildThatIsNotChild2; + if (find(parentChildNodes, hasDoctypeChildThatIsNotChild2)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "Only one doctype is allowed"); + } + var parentElementChild = find(parentChildNodes, isElementNode); + if (child && parentChildNodes.indexOf(parentElementChild) < parentChildNodes.indexOf(child)) { + throw new DOMException2(HIERARCHY_REQUEST_ERR, "Doctype can only be inserted before an element"); + } + } + } + function _insertBefore(parent, node, child, _inDocumentAssertion) { + assertPreInsertionValidity1to5(parent, node, child); + if (parent.nodeType === Node2.DOCUMENT_NODE) { + (_inDocumentAssertion || assertPreInsertionValidityInDocument)(parent, node, child); + } + var cp = node.parentNode; + if (cp) { + cp.removeChild(node); + } + if (node.nodeType === DOCUMENT_FRAGMENT_NODE) { + var newFirst = node.firstChild; + if (newFirst == null) { + return node; + } + var newLast = node.lastChild; + } else { + newFirst = newLast = node; + } + var pre = child ? child.previousSibling : parent.lastChild; + newFirst.previousSibling = pre; + newLast.nextSibling = child; + if (pre) { + pre.nextSibling = newFirst; + } else { + parent.firstChild = newFirst; + } + if (child == null) { + parent.lastChild = newLast; + } else { + child.previousSibling = newLast; + } + do { + newFirst.parentNode = parent; + } while (newFirst !== newLast && (newFirst = newFirst.nextSibling)); + _onUpdateChild(parent.ownerDocument || parent, parent); + if (node.nodeType == DOCUMENT_FRAGMENT_NODE) { + node.firstChild = node.lastChild = null; + } + return node; + } + function _appendSingleChild(parentNode, newChild) { + if (newChild.parentNode) { + newChild.parentNode.removeChild(newChild); + } + newChild.parentNode = parentNode; + newChild.previousSibling = parentNode.lastChild; + newChild.nextSibling = null; + if (newChild.previousSibling) { + newChild.previousSibling.nextSibling = newChild; + } else { + parentNode.firstChild = newChild; + } + parentNode.lastChild = newChild; + _onUpdateChild(parentNode.ownerDocument, parentNode, newChild); + return newChild; + } + Document.prototype = { + //implementation : null, + nodeName: "#document", + nodeType: DOCUMENT_NODE, + /** + * The DocumentType node of the document. + * + * @readonly + * @type DocumentType + */ + doctype: null, + documentElement: null, + _inc: 1, + insertBefore: function(newChild, refChild) { + if (newChild.nodeType == DOCUMENT_FRAGMENT_NODE) { + var child = newChild.firstChild; + while (child) { + var next = child.nextSibling; + this.insertBefore(child, refChild); + child = next; + } + return newChild; + } + _insertBefore(this, newChild, refChild); + newChild.ownerDocument = this; + if (this.documentElement === null && newChild.nodeType === ELEMENT_NODE) { + this.documentElement = newChild; + } + return newChild; + }, + removeChild: function(oldChild) { + if (this.documentElement == oldChild) { + this.documentElement = null; + } + return _removeChild(this, oldChild); + }, + replaceChild: function(newChild, oldChild) { + _insertBefore(this, newChild, oldChild, assertPreReplacementValidityInDocument); + newChild.ownerDocument = this; + if (oldChild) { + this.removeChild(oldChild); + } + if (isElementNode(newChild)) { + this.documentElement = newChild; + } + }, + // Introduced in DOM Level 2: + importNode: function(importedNode, deep) { + return importNode(this, importedNode, deep); + }, + // Introduced in DOM Level 2: + getElementById: function(id) { + var rtv = null; + _visitNode(this.documentElement, function(node) { + if (node.nodeType == ELEMENT_NODE) { + if (node.getAttribute("id") == id) { + rtv = node; + return true; + } + } + }); + return rtv; + }, + /** + * The `getElementsByClassName` method of `Document` interface returns an array-like object + * of all child elements which have **all** of the given class name(s). + * + * Returns an empty list if `classeNames` is an empty string or only contains HTML white space characters. + * + * + * Warning: This is a live LiveNodeList. + * Changes in the DOM will reflect in the array as the changes occur. + * If an element selected by this array no longer qualifies for the selector, + * it will automatically be removed. Be aware of this for iteration purposes. + * + * @param {string} classNames is a string representing the class name(s) to match; multiple class names are separated by (ASCII-)whitespace + * + * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementsByClassName + * @see https://dom.spec.whatwg.org/#concept-getelementsbyclassname + */ + getElementsByClassName: function(classNames) { + var classNamesSet = toOrderedSet(classNames); + return new LiveNodeList(this, function(base) { + var ls = []; + if (classNamesSet.length > 0) { + _visitNode(base.documentElement, function(node) { + if (node !== base && node.nodeType === ELEMENT_NODE) { + var nodeClassNames = node.getAttribute("class"); + if (nodeClassNames) { + var matches = classNames === nodeClassNames; + if (!matches) { + var nodeClassNamesSet = toOrderedSet(nodeClassNames); + matches = classNamesSet.every(arrayIncludes(nodeClassNamesSet)); + } + if (matches) { + ls.push(node); + } + } + } + }); + } + return ls; + }); + }, + //document factory method: + createElement: function(tagName) { + var node = new Element2(); + node.ownerDocument = this; + node.nodeName = tagName; + node.tagName = tagName; + node.localName = tagName; + node.childNodes = new NodeList(); + var attrs = node.attributes = new NamedNodeMap(); + attrs._ownerElement = node; + return node; + }, + createDocumentFragment: function() { + var node = new DocumentFragment(); + node.ownerDocument = this; + node.childNodes = new NodeList(); + return node; + }, + createTextNode: function(data) { + var node = new Text(); + node.ownerDocument = this; + node.appendData(data); + return node; + }, + createComment: function(data) { + var node = new Comment3(); + node.ownerDocument = this; + node.appendData(data); + return node; + }, + createCDATASection: function(data) { + var node = new CDATASection(); + node.ownerDocument = this; + node.appendData(data); + return node; + }, + createProcessingInstruction: function(target, data) { + var node = new ProcessingInstruction(); + node.ownerDocument = this; + node.tagName = node.nodeName = node.target = target; + node.nodeValue = node.data = data; + return node; + }, + createAttribute: function(name) { + var node = new Attr(); + node.ownerDocument = this; + node.name = name; + node.nodeName = name; + node.localName = name; + node.specified = true; + return node; + }, + createEntityReference: function(name) { + var node = new EntityReference(); + node.ownerDocument = this; + node.nodeName = name; + return node; + }, + // Introduced in DOM Level 2: + createElementNS: function(namespaceURI, qualifiedName) { + var node = new Element2(); + var pl = qualifiedName.split(":"); + var attrs = node.attributes = new NamedNodeMap(); + node.childNodes = new NodeList(); + node.ownerDocument = this; + node.nodeName = qualifiedName; + node.tagName = qualifiedName; + node.namespaceURI = namespaceURI; + if (pl.length == 2) { + node.prefix = pl[0]; + node.localName = pl[1]; + } else { + node.localName = qualifiedName; + } + attrs._ownerElement = node; + return node; + }, + // Introduced in DOM Level 2: + createAttributeNS: function(namespaceURI, qualifiedName) { + var node = new Attr(); + var pl = qualifiedName.split(":"); + node.ownerDocument = this; + node.nodeName = qualifiedName; + node.name = qualifiedName; + node.namespaceURI = namespaceURI; + node.specified = true; + if (pl.length == 2) { + node.prefix = pl[0]; + node.localName = pl[1]; + } else { + node.localName = qualifiedName; + } + return node; + } + }; + _extends(Document, Node2); + function Element2() { + this._nsMap = {}; + } + Element2.prototype = { + nodeType: ELEMENT_NODE, + hasAttribute: function(name) { + return this.getAttributeNode(name) != null; + }, + getAttribute: function(name) { + var attr = this.getAttributeNode(name); + return attr && attr.value || ""; + }, + getAttributeNode: function(name) { + return this.attributes.getNamedItem(name); + }, + setAttribute: function(name, value) { + var attr = this.ownerDocument.createAttribute(name); + attr.value = attr.nodeValue = "" + value; + this.setAttributeNode(attr); + }, + removeAttribute: function(name) { + var attr = this.getAttributeNode(name); + attr && this.removeAttributeNode(attr); + }, + //four real opeartion method + appendChild: function(newChild) { + if (newChild.nodeType === DOCUMENT_FRAGMENT_NODE) { + return this.insertBefore(newChild, null); + } else { + return _appendSingleChild(this, newChild); + } + }, + setAttributeNode: function(newAttr) { + return this.attributes.setNamedItem(newAttr); + }, + setAttributeNodeNS: function(newAttr) { + return this.attributes.setNamedItemNS(newAttr); + }, + removeAttributeNode: function(oldAttr) { + return this.attributes.removeNamedItem(oldAttr.nodeName); + }, + //get real attribute name,and remove it by removeAttributeNode + removeAttributeNS: function(namespaceURI, localName) { + var old = this.getAttributeNodeNS(namespaceURI, localName); + old && this.removeAttributeNode(old); + }, + hasAttributeNS: function(namespaceURI, localName) { + return this.getAttributeNodeNS(namespaceURI, localName) != null; + }, + getAttributeNS: function(namespaceURI, localName) { + var attr = this.getAttributeNodeNS(namespaceURI, localName); + return attr && attr.value || ""; + }, + setAttributeNS: function(namespaceURI, qualifiedName, value) { + var attr = this.ownerDocument.createAttributeNS(namespaceURI, qualifiedName); + attr.value = attr.nodeValue = "" + value; + this.setAttributeNode(attr); + }, + getAttributeNodeNS: function(namespaceURI, localName) { + return this.attributes.getNamedItemNS(namespaceURI, localName); + }, + getElementsByTagName: function(tagName) { + return new LiveNodeList(this, function(base) { + var ls = []; + _visitNode(base, function(node) { + if (node !== base && node.nodeType == ELEMENT_NODE && (tagName === "*" || node.tagName == tagName)) { + ls.push(node); + } + }); + return ls; + }); + }, + getElementsByTagNameNS: function(namespaceURI, localName) { + return new LiveNodeList(this, function(base) { + var ls = []; + _visitNode(base, function(node) { + if (node !== base && node.nodeType === ELEMENT_NODE && (namespaceURI === "*" || node.namespaceURI === namespaceURI) && (localName === "*" || node.localName == localName)) { + ls.push(node); + } + }); + return ls; + }); + } + }; + Document.prototype.getElementsByTagName = Element2.prototype.getElementsByTagName; + Document.prototype.getElementsByTagNameNS = Element2.prototype.getElementsByTagNameNS; + _extends(Element2, Node2); + function Attr() { + } + Attr.prototype.nodeType = ATTRIBUTE_NODE; + _extends(Attr, Node2); + function CharacterData() { + } + CharacterData.prototype = { + data: "", + substringData: function(offset, count) { + return this.data.substring(offset, offset + count); + }, + appendData: function(text) { + text = this.data + text; + this.nodeValue = this.data = text; + this.length = text.length; + }, + insertData: function(offset, text) { + this.replaceData(offset, 0, text); + }, + appendChild: function(newChild) { + throw new Error(ExceptionMessage[HIERARCHY_REQUEST_ERR]); + }, + deleteData: function(offset, count) { + this.replaceData(offset, count, ""); + }, + replaceData: function(offset, count, text) { + var start4 = this.data.substring(0, offset); + var end = this.data.substring(offset + count); + text = start4 + text + end; + this.nodeValue = this.data = text; + this.length = text.length; + } + }; + _extends(CharacterData, Node2); + function Text() { + } + Text.prototype = { + nodeName: "#text", + nodeType: TEXT_NODE, + splitText: function(offset) { + var text = this.data; + var newText = text.substring(offset); + text = text.substring(0, offset); + this.data = this.nodeValue = text; + this.length = text.length; + var newNode = this.ownerDocument.createTextNode(newText); + if (this.parentNode) { + this.parentNode.insertBefore(newNode, this.nextSibling); + } + return newNode; + } + }; + _extends(Text, CharacterData); + function Comment3() { + } + Comment3.prototype = { + nodeName: "#comment", + nodeType: COMMENT_NODE + }; + _extends(Comment3, CharacterData); + function CDATASection() { + } + CDATASection.prototype = { + nodeName: "#cdata-section", + nodeType: CDATA_SECTION_NODE + }; + _extends(CDATASection, CharacterData); + function DocumentType() { + } + DocumentType.prototype.nodeType = DOCUMENT_TYPE_NODE; + _extends(DocumentType, Node2); + function Notation() { + } + Notation.prototype.nodeType = NOTATION_NODE; + _extends(Notation, Node2); + function Entity() { + } + Entity.prototype.nodeType = ENTITY_NODE; + _extends(Entity, Node2); + function EntityReference() { + } + EntityReference.prototype.nodeType = ENTITY_REFERENCE_NODE; + _extends(EntityReference, Node2); + function DocumentFragment() { + } + DocumentFragment.prototype.nodeName = "#document-fragment"; + DocumentFragment.prototype.nodeType = DOCUMENT_FRAGMENT_NODE; + _extends(DocumentFragment, Node2); + function ProcessingInstruction() { + } + ProcessingInstruction.prototype.nodeType = PROCESSING_INSTRUCTION_NODE; + _extends(ProcessingInstruction, Node2); + function XMLSerializer() { + } + XMLSerializer.prototype.serializeToString = function(node, isHtml, nodeFilter) { + return nodeSerializeToString.call(node, isHtml, nodeFilter); + }; + Node2.prototype.toString = nodeSerializeToString; + function nodeSerializeToString(isHtml, nodeFilter) { + var buf = []; + var refNode = this.nodeType == 9 && this.documentElement || this; + var prefix = refNode.prefix; + var uri = refNode.namespaceURI; + if (uri && prefix == null) { + var prefix = refNode.lookupPrefix(uri); + if (prefix == null) { + var visibleNamespaces = [ + { namespace: uri, prefix: null } + //{namespace:uri,prefix:''} + ]; + } + } + serializeToString(this, buf, isHtml, nodeFilter, visibleNamespaces); + return buf.join(""); + } + function needNamespaceDefine(node, isHTML, visibleNamespaces) { + var prefix = node.prefix || ""; + var uri = node.namespaceURI; + if (!uri) { + return false; + } + if (prefix === "xml" && uri === NAMESPACE.XML || uri === NAMESPACE.XMLNS) { + return false; + } + var i = visibleNamespaces.length; + while (i--) { + var ns = visibleNamespaces[i]; + if (ns.prefix === prefix) { + return ns.namespace !== uri; + } + } + return true; + } + function addSerializedAttribute(buf, qualifiedName, value) { + buf.push(" ", qualifiedName, '="', value.replace(/[<>&"\t\n\r]/g, _xmlEncoder), '"'); + } + function serializeToString(node, buf, isHTML, nodeFilter, visibleNamespaces) { + if (!visibleNamespaces) { + visibleNamespaces = []; + } + if (nodeFilter) { + node = nodeFilter(node); + if (node) { + if (typeof node == "string") { + buf.push(node); + return; + } + } else { + return; + } + } + switch (node.nodeType) { + case ELEMENT_NODE: + var attrs = node.attributes; + var len = attrs.length; + var child = node.firstChild; + var nodeName = node.tagName; + isHTML = NAMESPACE.isHTML(node.namespaceURI) || isHTML; + var prefixedNodeName = nodeName; + if (!isHTML && !node.prefix && node.namespaceURI) { + var defaultNS; + for (var ai = 0; ai < attrs.length; ai++) { + if (attrs.item(ai).name === "xmlns") { + defaultNS = attrs.item(ai).value; + break; + } + } + if (!defaultNS) { + for (var nsi = visibleNamespaces.length - 1; nsi >= 0; nsi--) { + var namespace = visibleNamespaces[nsi]; + if (namespace.prefix === "" && namespace.namespace === node.namespaceURI) { + defaultNS = namespace.namespace; + break; + } + } + } + if (defaultNS !== node.namespaceURI) { + for (var nsi = visibleNamespaces.length - 1; nsi >= 0; nsi--) { + var namespace = visibleNamespaces[nsi]; + if (namespace.namespace === node.namespaceURI) { + if (namespace.prefix) { + prefixedNodeName = namespace.prefix + ":" + nodeName; + } + break; + } + } + } + } + buf.push("<", prefixedNodeName); + for (var i = 0; i < len; i++) { + var attr = attrs.item(i); + if (attr.prefix == "xmlns") { + visibleNamespaces.push({ prefix: attr.localName, namespace: attr.value }); + } else if (attr.nodeName == "xmlns") { + visibleNamespaces.push({ prefix: "", namespace: attr.value }); + } + } + for (var i = 0; i < len; i++) { + var attr = attrs.item(i); + if (needNamespaceDefine(attr, isHTML, visibleNamespaces)) { + var prefix = attr.prefix || ""; + var uri = attr.namespaceURI; + addSerializedAttribute(buf, prefix ? "xmlns:" + prefix : "xmlns", uri); + visibleNamespaces.push({ prefix, namespace: uri }); + } + serializeToString(attr, buf, isHTML, nodeFilter, visibleNamespaces); + } + if (nodeName === prefixedNodeName && needNamespaceDefine(node, isHTML, visibleNamespaces)) { + var prefix = node.prefix || ""; + var uri = node.namespaceURI; + addSerializedAttribute(buf, prefix ? "xmlns:" + prefix : "xmlns", uri); + visibleNamespaces.push({ prefix, namespace: uri }); + } + if (child || isHTML && !/^(?:meta|link|img|br|hr|input)$/i.test(nodeName)) { + buf.push(">"); + if (isHTML && /^script$/i.test(nodeName)) { + while (child) { + if (child.data) { + buf.push(child.data); + } else { + serializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces.slice()); + } + child = child.nextSibling; + } + } else { + while (child) { + serializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces.slice()); + child = child.nextSibling; + } + } + buf.push(""); + } else { + buf.push("/>"); + } + return; + case DOCUMENT_NODE: + case DOCUMENT_FRAGMENT_NODE: + var child = node.firstChild; + while (child) { + serializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces.slice()); + child = child.nextSibling; + } + return; + case ATTRIBUTE_NODE: + return addSerializedAttribute(buf, node.name, node.value); + case TEXT_NODE: + return buf.push( + node.data.replace(/[<&>]/g, _xmlEncoder) + ); + case CDATA_SECTION_NODE: + return buf.push(""); + case COMMENT_NODE: + return buf.push(""); + case DOCUMENT_TYPE_NODE: + var pubid = node.publicId; + var sysid = node.systemId; + buf.push(""); + } else if (sysid && sysid != ".") { + buf.push(" SYSTEM ", sysid, ">"); + } else { + var sub = node.internalSubset; + if (sub) { + buf.push(" [", sub, "]"); + } + buf.push(">"); + } + return; + case PROCESSING_INSTRUCTION_NODE: + return buf.push(""); + case ENTITY_REFERENCE_NODE: + return buf.push("&", node.nodeName, ";"); + default: + buf.push("??", node.nodeName); + } + } + function importNode(doc, node, deep) { + var node2; + switch (node.nodeType) { + case ELEMENT_NODE: + node2 = node.cloneNode(false); + node2.ownerDocument = doc; + case DOCUMENT_FRAGMENT_NODE: + break; + case ATTRIBUTE_NODE: + deep = true; + break; + } + if (!node2) { + node2 = node.cloneNode(false); + } + node2.ownerDocument = doc; + node2.parentNode = null; + if (deep) { + var child = node.firstChild; + while (child) { + node2.appendChild(importNode(doc, child, deep)); + child = child.nextSibling; + } + } + return node2; + } + function cloneNode(doc, node, deep) { + var node2 = new node.constructor(); + for (var n in node) { + if (Object.prototype.hasOwnProperty.call(node, n)) { + var v = node[n]; + if (typeof v != "object") { + if (v != node2[n]) { + node2[n] = v; + } + } + } + } + if (node.childNodes) { + node2.childNodes = new NodeList(); + } + node2.ownerDocument = doc; + switch (node2.nodeType) { + case ELEMENT_NODE: + var attrs = node.attributes; + var attrs2 = node2.attributes = new NamedNodeMap(); + var len = attrs.length; + attrs2._ownerElement = node2; + for (var i = 0; i < len; i++) { + node2.setAttributeNode(cloneNode(doc, attrs.item(i), true)); + } + break; + ; + case ATTRIBUTE_NODE: + deep = true; + } + if (deep) { + var child = node.firstChild; + while (child) { + node2.appendChild(cloneNode(doc, child, deep)); + child = child.nextSibling; + } + } + return node2; + } + function __set__(object, key, value) { + object[key] = value; + } + try { + if (Object.defineProperty) { + let getTextContent2 = function(node) { + switch (node.nodeType) { + case ELEMENT_NODE: + case DOCUMENT_FRAGMENT_NODE: + var buf = []; + node = node.firstChild; + while (node) { + if (node.nodeType !== 7 && node.nodeType !== 8) { + buf.push(getTextContent2(node)); + } + node = node.nextSibling; + } + return buf.join(""); + default: + return node.nodeValue; + } + }; + getTextContent = getTextContent2; + Object.defineProperty(LiveNodeList.prototype, "length", { + get: function() { + _updateLiveList(this); + return this.$$length; + } + }); + Object.defineProperty(Node2.prototype, "textContent", { + get: function() { + return getTextContent2(this); + }, + set: function(data) { + switch (this.nodeType) { + case ELEMENT_NODE: + case DOCUMENT_FRAGMENT_NODE: + while (this.firstChild) { + this.removeChild(this.firstChild); + } + if (data || String(data)) { + this.appendChild(this.ownerDocument.createTextNode(data)); + } + break; + default: + this.data = data; + this.value = data; + this.nodeValue = data; + } + } + }); + __set__ = function(object, key, value) { + object["$$" + key] = value; + }; + } + } catch (e) { + } + var getTextContent; + exports2.DocumentType = DocumentType; + exports2.DOMException = DOMException2; + exports2.DOMImplementation = DOMImplementation; + exports2.Element = Element2; + exports2.Node = Node2; + exports2.NodeList = NodeList; + exports2.XMLSerializer = XMLSerializer; + } +}); + +// ../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/entities.js +var require_entities = __commonJS({ + "../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/entities.js"(exports2) { + "use strict"; + var freeze = require_conventions().freeze; + exports2.XML_ENTITIES = freeze({ + amp: "&", + apos: "'", + gt: ">", + lt: "<", + quot: '"' + }); + exports2.HTML_ENTITIES = freeze({ + Aacute: "\xC1", + aacute: "\xE1", + Abreve: "\u0102", + abreve: "\u0103", + ac: "\u223E", + acd: "\u223F", + acE: "\u223E\u0333", + Acirc: "\xC2", + acirc: "\xE2", + acute: "\xB4", + Acy: "\u0410", + acy: "\u0430", + AElig: "\xC6", + aelig: "\xE6", + af: "\u2061", + Afr: "\u{1D504}", + afr: "\u{1D51E}", + Agrave: "\xC0", + agrave: "\xE0", + alefsym: "\u2135", + aleph: "\u2135", + Alpha: "\u0391", + alpha: "\u03B1", + Amacr: "\u0100", + amacr: "\u0101", + amalg: "\u2A3F", + AMP: "&", + amp: "&", + And: "\u2A53", + and: "\u2227", + andand: "\u2A55", + andd: "\u2A5C", + andslope: "\u2A58", + andv: "\u2A5A", + ang: "\u2220", + ange: "\u29A4", + angle: "\u2220", + angmsd: "\u2221", + angmsdaa: "\u29A8", + angmsdab: "\u29A9", + angmsdac: "\u29AA", + angmsdad: "\u29AB", + angmsdae: "\u29AC", + angmsdaf: "\u29AD", + angmsdag: "\u29AE", + angmsdah: "\u29AF", + angrt: "\u221F", + angrtvb: "\u22BE", + angrtvbd: "\u299D", + angsph: "\u2222", + angst: "\xC5", + angzarr: "\u237C", + Aogon: "\u0104", + aogon: "\u0105", + Aopf: "\u{1D538}", + aopf: "\u{1D552}", + ap: "\u2248", + apacir: "\u2A6F", + apE: "\u2A70", + ape: "\u224A", + apid: "\u224B", + apos: "'", + ApplyFunction: "\u2061", + approx: "\u2248", + approxeq: "\u224A", + Aring: "\xC5", + aring: "\xE5", + Ascr: "\u{1D49C}", + ascr: "\u{1D4B6}", + Assign: "\u2254", + ast: "*", + asymp: "\u2248", + asympeq: "\u224D", + Atilde: "\xC3", + atilde: "\xE3", + Auml: "\xC4", + auml: "\xE4", + awconint: "\u2233", + awint: "\u2A11", + backcong: "\u224C", + backepsilon: "\u03F6", + backprime: "\u2035", + backsim: "\u223D", + backsimeq: "\u22CD", + Backslash: "\u2216", + Barv: "\u2AE7", + barvee: "\u22BD", + Barwed: "\u2306", + barwed: "\u2305", + barwedge: "\u2305", + bbrk: "\u23B5", + bbrktbrk: "\u23B6", + bcong: "\u224C", + Bcy: "\u0411", + bcy: "\u0431", + bdquo: "\u201E", + becaus: "\u2235", + Because: "\u2235", + because: "\u2235", + bemptyv: "\u29B0", + bepsi: "\u03F6", + bernou: "\u212C", + Bernoullis: "\u212C", + Beta: "\u0392", + beta: "\u03B2", + beth: "\u2136", + between: "\u226C", + Bfr: "\u{1D505}", + bfr: "\u{1D51F}", + bigcap: "\u22C2", + bigcirc: "\u25EF", + bigcup: "\u22C3", + bigodot: "\u2A00", + bigoplus: "\u2A01", + bigotimes: "\u2A02", + bigsqcup: "\u2A06", + bigstar: "\u2605", + bigtriangledown: "\u25BD", + bigtriangleup: "\u25B3", + biguplus: "\u2A04", + bigvee: "\u22C1", + bigwedge: "\u22C0", + bkarow: "\u290D", + blacklozenge: "\u29EB", + blacksquare: "\u25AA", + blacktriangle: "\u25B4", + blacktriangledown: "\u25BE", + blacktriangleleft: "\u25C2", + blacktriangleright: "\u25B8", + blank: "\u2423", + blk12: "\u2592", + blk14: "\u2591", + blk34: "\u2593", + block: "\u2588", + bne: "=\u20E5", + bnequiv: "\u2261\u20E5", + bNot: "\u2AED", + bnot: "\u2310", + Bopf: "\u{1D539}", + bopf: "\u{1D553}", + bot: "\u22A5", + bottom: "\u22A5", + bowtie: "\u22C8", + boxbox: "\u29C9", + boxDL: "\u2557", + boxDl: "\u2556", + boxdL: "\u2555", + boxdl: "\u2510", + boxDR: "\u2554", + boxDr: "\u2553", + boxdR: "\u2552", + boxdr: "\u250C", + boxH: "\u2550", + boxh: "\u2500", + boxHD: "\u2566", + boxHd: "\u2564", + boxhD: "\u2565", + boxhd: "\u252C", + boxHU: "\u2569", + boxHu: "\u2567", + boxhU: "\u2568", + boxhu: "\u2534", + boxminus: "\u229F", + boxplus: "\u229E", + boxtimes: "\u22A0", + boxUL: "\u255D", + boxUl: "\u255C", + boxuL: "\u255B", + boxul: "\u2518", + boxUR: "\u255A", + boxUr: "\u2559", + boxuR: "\u2558", + boxur: "\u2514", + boxV: "\u2551", + boxv: "\u2502", + boxVH: "\u256C", + boxVh: "\u256B", + boxvH: "\u256A", + boxvh: "\u253C", + boxVL: "\u2563", + boxVl: "\u2562", + boxvL: "\u2561", + boxvl: "\u2524", + boxVR: "\u2560", + boxVr: "\u255F", + boxvR: "\u255E", + boxvr: "\u251C", + bprime: "\u2035", + Breve: "\u02D8", + breve: "\u02D8", + brvbar: "\xA6", + Bscr: "\u212C", + bscr: "\u{1D4B7}", + bsemi: "\u204F", + bsim: "\u223D", + bsime: "\u22CD", + bsol: "\\", + bsolb: "\u29C5", + bsolhsub: "\u27C8", + bull: "\u2022", + bullet: "\u2022", + bump: "\u224E", + bumpE: "\u2AAE", + bumpe: "\u224F", + Bumpeq: "\u224E", + bumpeq: "\u224F", + Cacute: "\u0106", + cacute: "\u0107", + Cap: "\u22D2", + cap: "\u2229", + capand: "\u2A44", + capbrcup: "\u2A49", + capcap: "\u2A4B", + capcup: "\u2A47", + capdot: "\u2A40", + CapitalDifferentialD: "\u2145", + caps: "\u2229\uFE00", + caret: "\u2041", + caron: "\u02C7", + Cayleys: "\u212D", + ccaps: "\u2A4D", + Ccaron: "\u010C", + ccaron: "\u010D", + Ccedil: "\xC7", + ccedil: "\xE7", + Ccirc: "\u0108", + ccirc: "\u0109", + Cconint: "\u2230", + ccups: "\u2A4C", + ccupssm: "\u2A50", + Cdot: "\u010A", + cdot: "\u010B", + cedil: "\xB8", + Cedilla: "\xB8", + cemptyv: "\u29B2", + cent: "\xA2", + CenterDot: "\xB7", + centerdot: "\xB7", + Cfr: "\u212D", + cfr: "\u{1D520}", + CHcy: "\u0427", + chcy: "\u0447", + check: "\u2713", + checkmark: "\u2713", + Chi: "\u03A7", + chi: "\u03C7", + cir: "\u25CB", + circ: "\u02C6", + circeq: "\u2257", + circlearrowleft: "\u21BA", + circlearrowright: "\u21BB", + circledast: "\u229B", + circledcirc: "\u229A", + circleddash: "\u229D", + CircleDot: "\u2299", + circledR: "\xAE", + circledS: "\u24C8", + CircleMinus: "\u2296", + CirclePlus: "\u2295", + CircleTimes: "\u2297", + cirE: "\u29C3", + cire: "\u2257", + cirfnint: "\u2A10", + cirmid: "\u2AEF", + cirscir: "\u29C2", + ClockwiseContourIntegral: "\u2232", + CloseCurlyDoubleQuote: "\u201D", + CloseCurlyQuote: "\u2019", + clubs: "\u2663", + clubsuit: "\u2663", + Colon: "\u2237", + colon: ":", + Colone: "\u2A74", + colone: "\u2254", + coloneq: "\u2254", + comma: ",", + commat: "@", + comp: "\u2201", + compfn: "\u2218", + complement: "\u2201", + complexes: "\u2102", + cong: "\u2245", + congdot: "\u2A6D", + Congruent: "\u2261", + Conint: "\u222F", + conint: "\u222E", + ContourIntegral: "\u222E", + Copf: "\u2102", + copf: "\u{1D554}", + coprod: "\u2210", + Coproduct: "\u2210", + COPY: "\xA9", + copy: "\xA9", + copysr: "\u2117", + CounterClockwiseContourIntegral: "\u2233", + crarr: "\u21B5", + Cross: "\u2A2F", + cross: "\u2717", + Cscr: "\u{1D49E}", + cscr: "\u{1D4B8}", + csub: "\u2ACF", + csube: "\u2AD1", + csup: "\u2AD0", + csupe: "\u2AD2", + ctdot: "\u22EF", + cudarrl: "\u2938", + cudarrr: "\u2935", + cuepr: "\u22DE", + cuesc: "\u22DF", + cularr: "\u21B6", + cularrp: "\u293D", + Cup: "\u22D3", + cup: "\u222A", + cupbrcap: "\u2A48", + CupCap: "\u224D", + cupcap: "\u2A46", + cupcup: "\u2A4A", + cupdot: "\u228D", + cupor: "\u2A45", + cups: "\u222A\uFE00", + curarr: "\u21B7", + curarrm: "\u293C", + curlyeqprec: "\u22DE", + curlyeqsucc: "\u22DF", + curlyvee: "\u22CE", + curlywedge: "\u22CF", + curren: "\xA4", + curvearrowleft: "\u21B6", + curvearrowright: "\u21B7", + cuvee: "\u22CE", + cuwed: "\u22CF", + cwconint: "\u2232", + cwint: "\u2231", + cylcty: "\u232D", + Dagger: "\u2021", + dagger: "\u2020", + daleth: "\u2138", + Darr: "\u21A1", + dArr: "\u21D3", + darr: "\u2193", + dash: "\u2010", + Dashv: "\u2AE4", + dashv: "\u22A3", + dbkarow: "\u290F", + dblac: "\u02DD", + Dcaron: "\u010E", + dcaron: "\u010F", + Dcy: "\u0414", + dcy: "\u0434", + DD: "\u2145", + dd: "\u2146", + ddagger: "\u2021", + ddarr: "\u21CA", + DDotrahd: "\u2911", + ddotseq: "\u2A77", + deg: "\xB0", + Del: "\u2207", + Delta: "\u0394", + delta: "\u03B4", + demptyv: "\u29B1", + dfisht: "\u297F", + Dfr: "\u{1D507}", + dfr: "\u{1D521}", + dHar: "\u2965", + dharl: "\u21C3", + dharr: "\u21C2", + DiacriticalAcute: "\xB4", + DiacriticalDot: "\u02D9", + DiacriticalDoubleAcute: "\u02DD", + DiacriticalGrave: "`", + DiacriticalTilde: "\u02DC", + diam: "\u22C4", + Diamond: "\u22C4", + diamond: "\u22C4", + diamondsuit: "\u2666", + diams: "\u2666", + die: "\xA8", + DifferentialD: "\u2146", + digamma: "\u03DD", + disin: "\u22F2", + div: "\xF7", + divide: "\xF7", + divideontimes: "\u22C7", + divonx: "\u22C7", + DJcy: "\u0402", + djcy: "\u0452", + dlcorn: "\u231E", + dlcrop: "\u230D", + dollar: "$", + Dopf: "\u{1D53B}", + dopf: "\u{1D555}", + Dot: "\xA8", + dot: "\u02D9", + DotDot: "\u20DC", + doteq: "\u2250", + doteqdot: "\u2251", + DotEqual: "\u2250", + dotminus: "\u2238", + dotplus: "\u2214", + dotsquare: "\u22A1", + doublebarwedge: "\u2306", + DoubleContourIntegral: "\u222F", + DoubleDot: "\xA8", + DoubleDownArrow: "\u21D3", + DoubleLeftArrow: "\u21D0", + DoubleLeftRightArrow: "\u21D4", + DoubleLeftTee: "\u2AE4", + DoubleLongLeftArrow: "\u27F8", + DoubleLongLeftRightArrow: "\u27FA", + DoubleLongRightArrow: "\u27F9", + DoubleRightArrow: "\u21D2", + DoubleRightTee: "\u22A8", + DoubleUpArrow: "\u21D1", + DoubleUpDownArrow: "\u21D5", + DoubleVerticalBar: "\u2225", + DownArrow: "\u2193", + Downarrow: "\u21D3", + downarrow: "\u2193", + DownArrowBar: "\u2913", + DownArrowUpArrow: "\u21F5", + DownBreve: "\u0311", + downdownarrows: "\u21CA", + downharpoonleft: "\u21C3", + downharpoonright: "\u21C2", + DownLeftRightVector: "\u2950", + DownLeftTeeVector: "\u295E", + DownLeftVector: "\u21BD", + DownLeftVectorBar: "\u2956", + DownRightTeeVector: "\u295F", + DownRightVector: "\u21C1", + DownRightVectorBar: "\u2957", + DownTee: "\u22A4", + DownTeeArrow: "\u21A7", + drbkarow: "\u2910", + drcorn: "\u231F", + drcrop: "\u230C", + Dscr: "\u{1D49F}", + dscr: "\u{1D4B9}", + DScy: "\u0405", + dscy: "\u0455", + dsol: "\u29F6", + Dstrok: "\u0110", + dstrok: "\u0111", + dtdot: "\u22F1", + dtri: "\u25BF", + dtrif: "\u25BE", + duarr: "\u21F5", + duhar: "\u296F", + dwangle: "\u29A6", + DZcy: "\u040F", + dzcy: "\u045F", + dzigrarr: "\u27FF", + Eacute: "\xC9", + eacute: "\xE9", + easter: "\u2A6E", + Ecaron: "\u011A", + ecaron: "\u011B", + ecir: "\u2256", + Ecirc: "\xCA", + ecirc: "\xEA", + ecolon: "\u2255", + Ecy: "\u042D", + ecy: "\u044D", + eDDot: "\u2A77", + Edot: "\u0116", + eDot: "\u2251", + edot: "\u0117", + ee: "\u2147", + efDot: "\u2252", + Efr: "\u{1D508}", + efr: "\u{1D522}", + eg: "\u2A9A", + Egrave: "\xC8", + egrave: "\xE8", + egs: "\u2A96", + egsdot: "\u2A98", + el: "\u2A99", + Element: "\u2208", + elinters: "\u23E7", + ell: "\u2113", + els: "\u2A95", + elsdot: "\u2A97", + Emacr: "\u0112", + emacr: "\u0113", + empty: "\u2205", + emptyset: "\u2205", + EmptySmallSquare: "\u25FB", + emptyv: "\u2205", + EmptyVerySmallSquare: "\u25AB", + emsp: "\u2003", + emsp13: "\u2004", + emsp14: "\u2005", + ENG: "\u014A", + eng: "\u014B", + ensp: "\u2002", + Eogon: "\u0118", + eogon: "\u0119", + Eopf: "\u{1D53C}", + eopf: "\u{1D556}", + epar: "\u22D5", + eparsl: "\u29E3", + eplus: "\u2A71", + epsi: "\u03B5", + Epsilon: "\u0395", + epsilon: "\u03B5", + epsiv: "\u03F5", + eqcirc: "\u2256", + eqcolon: "\u2255", + eqsim: "\u2242", + eqslantgtr: "\u2A96", + eqslantless: "\u2A95", + Equal: "\u2A75", + equals: "=", + EqualTilde: "\u2242", + equest: "\u225F", + Equilibrium: "\u21CC", + equiv: "\u2261", + equivDD: "\u2A78", + eqvparsl: "\u29E5", + erarr: "\u2971", + erDot: "\u2253", + Escr: "\u2130", + escr: "\u212F", + esdot: "\u2250", + Esim: "\u2A73", + esim: "\u2242", + Eta: "\u0397", + eta: "\u03B7", + ETH: "\xD0", + eth: "\xF0", + Euml: "\xCB", + euml: "\xEB", + euro: "\u20AC", + excl: "!", + exist: "\u2203", + Exists: "\u2203", + expectation: "\u2130", + ExponentialE: "\u2147", + exponentiale: "\u2147", + fallingdotseq: "\u2252", + Fcy: "\u0424", + fcy: "\u0444", + female: "\u2640", + ffilig: "\uFB03", + fflig: "\uFB00", + ffllig: "\uFB04", + Ffr: "\u{1D509}", + ffr: "\u{1D523}", + filig: "\uFB01", + FilledSmallSquare: "\u25FC", + FilledVerySmallSquare: "\u25AA", + fjlig: "fj", + flat: "\u266D", + fllig: "\uFB02", + fltns: "\u25B1", + fnof: "\u0192", + Fopf: "\u{1D53D}", + fopf: "\u{1D557}", + ForAll: "\u2200", + forall: "\u2200", + fork: "\u22D4", + forkv: "\u2AD9", + Fouriertrf: "\u2131", + fpartint: "\u2A0D", + frac12: "\xBD", + frac13: "\u2153", + frac14: "\xBC", + frac15: "\u2155", + frac16: "\u2159", + frac18: "\u215B", + frac23: "\u2154", + frac25: "\u2156", + frac34: "\xBE", + frac35: "\u2157", + frac38: "\u215C", + frac45: "\u2158", + frac56: "\u215A", + frac58: "\u215D", + frac78: "\u215E", + frasl: "\u2044", + frown: "\u2322", + Fscr: "\u2131", + fscr: "\u{1D4BB}", + gacute: "\u01F5", + Gamma: "\u0393", + gamma: "\u03B3", + Gammad: "\u03DC", + gammad: "\u03DD", + gap: "\u2A86", + Gbreve: "\u011E", + gbreve: "\u011F", + Gcedil: "\u0122", + Gcirc: "\u011C", + gcirc: "\u011D", + Gcy: "\u0413", + gcy: "\u0433", + Gdot: "\u0120", + gdot: "\u0121", + gE: "\u2267", + ge: "\u2265", + gEl: "\u2A8C", + gel: "\u22DB", + geq: "\u2265", + geqq: "\u2267", + geqslant: "\u2A7E", + ges: "\u2A7E", + gescc: "\u2AA9", + gesdot: "\u2A80", + gesdoto: "\u2A82", + gesdotol: "\u2A84", + gesl: "\u22DB\uFE00", + gesles: "\u2A94", + Gfr: "\u{1D50A}", + gfr: "\u{1D524}", + Gg: "\u22D9", + gg: "\u226B", + ggg: "\u22D9", + gimel: "\u2137", + GJcy: "\u0403", + gjcy: "\u0453", + gl: "\u2277", + gla: "\u2AA5", + glE: "\u2A92", + glj: "\u2AA4", + gnap: "\u2A8A", + gnapprox: "\u2A8A", + gnE: "\u2269", + gne: "\u2A88", + gneq: "\u2A88", + gneqq: "\u2269", + gnsim: "\u22E7", + Gopf: "\u{1D53E}", + gopf: "\u{1D558}", + grave: "`", + GreaterEqual: "\u2265", + GreaterEqualLess: "\u22DB", + GreaterFullEqual: "\u2267", + GreaterGreater: "\u2AA2", + GreaterLess: "\u2277", + GreaterSlantEqual: "\u2A7E", + GreaterTilde: "\u2273", + Gscr: "\u{1D4A2}", + gscr: "\u210A", + gsim: "\u2273", + gsime: "\u2A8E", + gsiml: "\u2A90", + Gt: "\u226B", + GT: ">", + gt: ">", + gtcc: "\u2AA7", + gtcir: "\u2A7A", + gtdot: "\u22D7", + gtlPar: "\u2995", + gtquest: "\u2A7C", + gtrapprox: "\u2A86", + gtrarr: "\u2978", + gtrdot: "\u22D7", + gtreqless: "\u22DB", + gtreqqless: "\u2A8C", + gtrless: "\u2277", + gtrsim: "\u2273", + gvertneqq: "\u2269\uFE00", + gvnE: "\u2269\uFE00", + Hacek: "\u02C7", + hairsp: "\u200A", + half: "\xBD", + hamilt: "\u210B", + HARDcy: "\u042A", + hardcy: "\u044A", + hArr: "\u21D4", + harr: "\u2194", + harrcir: "\u2948", + harrw: "\u21AD", + Hat: "^", + hbar: "\u210F", + Hcirc: "\u0124", + hcirc: "\u0125", + hearts: "\u2665", + heartsuit: "\u2665", + hellip: "\u2026", + hercon: "\u22B9", + Hfr: "\u210C", + hfr: "\u{1D525}", + HilbertSpace: "\u210B", + hksearow: "\u2925", + hkswarow: "\u2926", + hoarr: "\u21FF", + homtht: "\u223B", + hookleftarrow: "\u21A9", + hookrightarrow: "\u21AA", + Hopf: "\u210D", + hopf: "\u{1D559}", + horbar: "\u2015", + HorizontalLine: "\u2500", + Hscr: "\u210B", + hscr: "\u{1D4BD}", + hslash: "\u210F", + Hstrok: "\u0126", + hstrok: "\u0127", + HumpDownHump: "\u224E", + HumpEqual: "\u224F", + hybull: "\u2043", + hyphen: "\u2010", + Iacute: "\xCD", + iacute: "\xED", + ic: "\u2063", + Icirc: "\xCE", + icirc: "\xEE", + Icy: "\u0418", + icy: "\u0438", + Idot: "\u0130", + IEcy: "\u0415", + iecy: "\u0435", + iexcl: "\xA1", + iff: "\u21D4", + Ifr: "\u2111", + ifr: "\u{1D526}", + Igrave: "\xCC", + igrave: "\xEC", + ii: "\u2148", + iiiint: "\u2A0C", + iiint: "\u222D", + iinfin: "\u29DC", + iiota: "\u2129", + IJlig: "\u0132", + ijlig: "\u0133", + Im: "\u2111", + Imacr: "\u012A", + imacr: "\u012B", + image: "\u2111", + ImaginaryI: "\u2148", + imagline: "\u2110", + imagpart: "\u2111", + imath: "\u0131", + imof: "\u22B7", + imped: "\u01B5", + Implies: "\u21D2", + in: "\u2208", + incare: "\u2105", + infin: "\u221E", + infintie: "\u29DD", + inodot: "\u0131", + Int: "\u222C", + int: "\u222B", + intcal: "\u22BA", + integers: "\u2124", + Integral: "\u222B", + intercal: "\u22BA", + Intersection: "\u22C2", + intlarhk: "\u2A17", + intprod: "\u2A3C", + InvisibleComma: "\u2063", + InvisibleTimes: "\u2062", + IOcy: "\u0401", + iocy: "\u0451", + Iogon: "\u012E", + iogon: "\u012F", + Iopf: "\u{1D540}", + iopf: "\u{1D55A}", + Iota: "\u0399", + iota: "\u03B9", + iprod: "\u2A3C", + iquest: "\xBF", + Iscr: "\u2110", + iscr: "\u{1D4BE}", + isin: "\u2208", + isindot: "\u22F5", + isinE: "\u22F9", + isins: "\u22F4", + isinsv: "\u22F3", + isinv: "\u2208", + it: "\u2062", + Itilde: "\u0128", + itilde: "\u0129", + Iukcy: "\u0406", + iukcy: "\u0456", + Iuml: "\xCF", + iuml: "\xEF", + Jcirc: "\u0134", + jcirc: "\u0135", + Jcy: "\u0419", + jcy: "\u0439", + Jfr: "\u{1D50D}", + jfr: "\u{1D527}", + jmath: "\u0237", + Jopf: "\u{1D541}", + jopf: "\u{1D55B}", + Jscr: "\u{1D4A5}", + jscr: "\u{1D4BF}", + Jsercy: "\u0408", + jsercy: "\u0458", + Jukcy: "\u0404", + jukcy: "\u0454", + Kappa: "\u039A", + kappa: "\u03BA", + kappav: "\u03F0", + Kcedil: "\u0136", + kcedil: "\u0137", + Kcy: "\u041A", + kcy: "\u043A", + Kfr: "\u{1D50E}", + kfr: "\u{1D528}", + kgreen: "\u0138", + KHcy: "\u0425", + khcy: "\u0445", + KJcy: "\u040C", + kjcy: "\u045C", + Kopf: "\u{1D542}", + kopf: "\u{1D55C}", + Kscr: "\u{1D4A6}", + kscr: "\u{1D4C0}", + lAarr: "\u21DA", + Lacute: "\u0139", + lacute: "\u013A", + laemptyv: "\u29B4", + lagran: "\u2112", + Lambda: "\u039B", + lambda: "\u03BB", + Lang: "\u27EA", + lang: "\u27E8", + langd: "\u2991", + langle: "\u27E8", + lap: "\u2A85", + Laplacetrf: "\u2112", + laquo: "\xAB", + Larr: "\u219E", + lArr: "\u21D0", + larr: "\u2190", + larrb: "\u21E4", + larrbfs: "\u291F", + larrfs: "\u291D", + larrhk: "\u21A9", + larrlp: "\u21AB", + larrpl: "\u2939", + larrsim: "\u2973", + larrtl: "\u21A2", + lat: "\u2AAB", + lAtail: "\u291B", + latail: "\u2919", + late: "\u2AAD", + lates: "\u2AAD\uFE00", + lBarr: "\u290E", + lbarr: "\u290C", + lbbrk: "\u2772", + lbrace: "{", + lbrack: "[", + lbrke: "\u298B", + lbrksld: "\u298F", + lbrkslu: "\u298D", + Lcaron: "\u013D", + lcaron: "\u013E", + Lcedil: "\u013B", + lcedil: "\u013C", + lceil: "\u2308", + lcub: "{", + Lcy: "\u041B", + lcy: "\u043B", + ldca: "\u2936", + ldquo: "\u201C", + ldquor: "\u201E", + ldrdhar: "\u2967", + ldrushar: "\u294B", + ldsh: "\u21B2", + lE: "\u2266", + le: "\u2264", + LeftAngleBracket: "\u27E8", + LeftArrow: "\u2190", + Leftarrow: "\u21D0", + leftarrow: "\u2190", + LeftArrowBar: "\u21E4", + LeftArrowRightArrow: "\u21C6", + leftarrowtail: "\u21A2", + LeftCeiling: "\u2308", + LeftDoubleBracket: "\u27E6", + LeftDownTeeVector: "\u2961", + LeftDownVector: "\u21C3", + LeftDownVectorBar: "\u2959", + LeftFloor: "\u230A", + leftharpoondown: "\u21BD", + leftharpoonup: "\u21BC", + leftleftarrows: "\u21C7", + LeftRightArrow: "\u2194", + Leftrightarrow: "\u21D4", + leftrightarrow: "\u2194", + leftrightarrows: "\u21C6", + leftrightharpoons: "\u21CB", + leftrightsquigarrow: "\u21AD", + LeftRightVector: "\u294E", + LeftTee: "\u22A3", + LeftTeeArrow: "\u21A4", + LeftTeeVector: "\u295A", + leftthreetimes: "\u22CB", + LeftTriangle: "\u22B2", + LeftTriangleBar: "\u29CF", + LeftTriangleEqual: "\u22B4", + LeftUpDownVector: "\u2951", + LeftUpTeeVector: "\u2960", + LeftUpVector: "\u21BF", + LeftUpVectorBar: "\u2958", + LeftVector: "\u21BC", + LeftVectorBar: "\u2952", + lEg: "\u2A8B", + leg: "\u22DA", + leq: "\u2264", + leqq: "\u2266", + leqslant: "\u2A7D", + les: "\u2A7D", + lescc: "\u2AA8", + lesdot: "\u2A7F", + lesdoto: "\u2A81", + lesdotor: "\u2A83", + lesg: "\u22DA\uFE00", + lesges: "\u2A93", + lessapprox: "\u2A85", + lessdot: "\u22D6", + lesseqgtr: "\u22DA", + lesseqqgtr: "\u2A8B", + LessEqualGreater: "\u22DA", + LessFullEqual: "\u2266", + LessGreater: "\u2276", + lessgtr: "\u2276", + LessLess: "\u2AA1", + lesssim: "\u2272", + LessSlantEqual: "\u2A7D", + LessTilde: "\u2272", + lfisht: "\u297C", + lfloor: "\u230A", + Lfr: "\u{1D50F}", + lfr: "\u{1D529}", + lg: "\u2276", + lgE: "\u2A91", + lHar: "\u2962", + lhard: "\u21BD", + lharu: "\u21BC", + lharul: "\u296A", + lhblk: "\u2584", + LJcy: "\u0409", + ljcy: "\u0459", + Ll: "\u22D8", + ll: "\u226A", + llarr: "\u21C7", + llcorner: "\u231E", + Lleftarrow: "\u21DA", + llhard: "\u296B", + lltri: "\u25FA", + Lmidot: "\u013F", + lmidot: "\u0140", + lmoust: "\u23B0", + lmoustache: "\u23B0", + lnap: "\u2A89", + lnapprox: "\u2A89", + lnE: "\u2268", + lne: "\u2A87", + lneq: "\u2A87", + lneqq: "\u2268", + lnsim: "\u22E6", + loang: "\u27EC", + loarr: "\u21FD", + lobrk: "\u27E6", + LongLeftArrow: "\u27F5", + Longleftarrow: "\u27F8", + longleftarrow: "\u27F5", + LongLeftRightArrow: "\u27F7", + Longleftrightarrow: "\u27FA", + longleftrightarrow: "\u27F7", + longmapsto: "\u27FC", + LongRightArrow: "\u27F6", + Longrightarrow: "\u27F9", + longrightarrow: "\u27F6", + looparrowleft: "\u21AB", + looparrowright: "\u21AC", + lopar: "\u2985", + Lopf: "\u{1D543}", + lopf: "\u{1D55D}", + loplus: "\u2A2D", + lotimes: "\u2A34", + lowast: "\u2217", + lowbar: "_", + LowerLeftArrow: "\u2199", + LowerRightArrow: "\u2198", + loz: "\u25CA", + lozenge: "\u25CA", + lozf: "\u29EB", + lpar: "(", + lparlt: "\u2993", + lrarr: "\u21C6", + lrcorner: "\u231F", + lrhar: "\u21CB", + lrhard: "\u296D", + lrm: "\u200E", + lrtri: "\u22BF", + lsaquo: "\u2039", + Lscr: "\u2112", + lscr: "\u{1D4C1}", + Lsh: "\u21B0", + lsh: "\u21B0", + lsim: "\u2272", + lsime: "\u2A8D", + lsimg: "\u2A8F", + lsqb: "[", + lsquo: "\u2018", + lsquor: "\u201A", + Lstrok: "\u0141", + lstrok: "\u0142", + Lt: "\u226A", + LT: "<", + lt: "<", + ltcc: "\u2AA6", + ltcir: "\u2A79", + ltdot: "\u22D6", + lthree: "\u22CB", + ltimes: "\u22C9", + ltlarr: "\u2976", + ltquest: "\u2A7B", + ltri: "\u25C3", + ltrie: "\u22B4", + ltrif: "\u25C2", + ltrPar: "\u2996", + lurdshar: "\u294A", + luruhar: "\u2966", + lvertneqq: "\u2268\uFE00", + lvnE: "\u2268\uFE00", + macr: "\xAF", + male: "\u2642", + malt: "\u2720", + maltese: "\u2720", + Map: "\u2905", + map: "\u21A6", + mapsto: "\u21A6", + mapstodown: "\u21A7", + mapstoleft: "\u21A4", + mapstoup: "\u21A5", + marker: "\u25AE", + mcomma: "\u2A29", + Mcy: "\u041C", + mcy: "\u043C", + mdash: "\u2014", + mDDot: "\u223A", + measuredangle: "\u2221", + MediumSpace: "\u205F", + Mellintrf: "\u2133", + Mfr: "\u{1D510}", + mfr: "\u{1D52A}", + mho: "\u2127", + micro: "\xB5", + mid: "\u2223", + midast: "*", + midcir: "\u2AF0", + middot: "\xB7", + minus: "\u2212", + minusb: "\u229F", + minusd: "\u2238", + minusdu: "\u2A2A", + MinusPlus: "\u2213", + mlcp: "\u2ADB", + mldr: "\u2026", + mnplus: "\u2213", + models: "\u22A7", + Mopf: "\u{1D544}", + mopf: "\u{1D55E}", + mp: "\u2213", + Mscr: "\u2133", + mscr: "\u{1D4C2}", + mstpos: "\u223E", + Mu: "\u039C", + mu: "\u03BC", + multimap: "\u22B8", + mumap: "\u22B8", + nabla: "\u2207", + Nacute: "\u0143", + nacute: "\u0144", + nang: "\u2220\u20D2", + nap: "\u2249", + napE: "\u2A70\u0338", + napid: "\u224B\u0338", + napos: "\u0149", + napprox: "\u2249", + natur: "\u266E", + natural: "\u266E", + naturals: "\u2115", + nbsp: "\xA0", + nbump: "\u224E\u0338", + nbumpe: "\u224F\u0338", + ncap: "\u2A43", + Ncaron: "\u0147", + ncaron: "\u0148", + Ncedil: "\u0145", + ncedil: "\u0146", + ncong: "\u2247", + ncongdot: "\u2A6D\u0338", + ncup: "\u2A42", + Ncy: "\u041D", + ncy: "\u043D", + ndash: "\u2013", + ne: "\u2260", + nearhk: "\u2924", + neArr: "\u21D7", + nearr: "\u2197", + nearrow: "\u2197", + nedot: "\u2250\u0338", + NegativeMediumSpace: "\u200B", + NegativeThickSpace: "\u200B", + NegativeThinSpace: "\u200B", + NegativeVeryThinSpace: "\u200B", + nequiv: "\u2262", + nesear: "\u2928", + nesim: "\u2242\u0338", + NestedGreaterGreater: "\u226B", + NestedLessLess: "\u226A", + NewLine: "\n", + nexist: "\u2204", + nexists: "\u2204", + Nfr: "\u{1D511}", + nfr: "\u{1D52B}", + ngE: "\u2267\u0338", + nge: "\u2271", + ngeq: "\u2271", + ngeqq: "\u2267\u0338", + ngeqslant: "\u2A7E\u0338", + nges: "\u2A7E\u0338", + nGg: "\u22D9\u0338", + ngsim: "\u2275", + nGt: "\u226B\u20D2", + ngt: "\u226F", + ngtr: "\u226F", + nGtv: "\u226B\u0338", + nhArr: "\u21CE", + nharr: "\u21AE", + nhpar: "\u2AF2", + ni: "\u220B", + nis: "\u22FC", + nisd: "\u22FA", + niv: "\u220B", + NJcy: "\u040A", + njcy: "\u045A", + nlArr: "\u21CD", + nlarr: "\u219A", + nldr: "\u2025", + nlE: "\u2266\u0338", + nle: "\u2270", + nLeftarrow: "\u21CD", + nleftarrow: "\u219A", + nLeftrightarrow: "\u21CE", + nleftrightarrow: "\u21AE", + nleq: "\u2270", + nleqq: "\u2266\u0338", + nleqslant: "\u2A7D\u0338", + nles: "\u2A7D\u0338", + nless: "\u226E", + nLl: "\u22D8\u0338", + nlsim: "\u2274", + nLt: "\u226A\u20D2", + nlt: "\u226E", + nltri: "\u22EA", + nltrie: "\u22EC", + nLtv: "\u226A\u0338", + nmid: "\u2224", + NoBreak: "\u2060", + NonBreakingSpace: "\xA0", + Nopf: "\u2115", + nopf: "\u{1D55F}", + Not: "\u2AEC", + not: "\xAC", + NotCongruent: "\u2262", + NotCupCap: "\u226D", + NotDoubleVerticalBar: "\u2226", + NotElement: "\u2209", + NotEqual: "\u2260", + NotEqualTilde: "\u2242\u0338", + NotExists: "\u2204", + NotGreater: "\u226F", + NotGreaterEqual: "\u2271", + NotGreaterFullEqual: "\u2267\u0338", + NotGreaterGreater: "\u226B\u0338", + NotGreaterLess: "\u2279", + NotGreaterSlantEqual: "\u2A7E\u0338", + NotGreaterTilde: "\u2275", + NotHumpDownHump: "\u224E\u0338", + NotHumpEqual: "\u224F\u0338", + notin: "\u2209", + notindot: "\u22F5\u0338", + notinE: "\u22F9\u0338", + notinva: "\u2209", + notinvb: "\u22F7", + notinvc: "\u22F6", + NotLeftTriangle: "\u22EA", + NotLeftTriangleBar: "\u29CF\u0338", + NotLeftTriangleEqual: "\u22EC", + NotLess: "\u226E", + NotLessEqual: "\u2270", + NotLessGreater: "\u2278", + NotLessLess: "\u226A\u0338", + NotLessSlantEqual: "\u2A7D\u0338", + NotLessTilde: "\u2274", + NotNestedGreaterGreater: "\u2AA2\u0338", + NotNestedLessLess: "\u2AA1\u0338", + notni: "\u220C", + notniva: "\u220C", + notnivb: "\u22FE", + notnivc: "\u22FD", + NotPrecedes: "\u2280", + NotPrecedesEqual: "\u2AAF\u0338", + NotPrecedesSlantEqual: "\u22E0", + NotReverseElement: "\u220C", + NotRightTriangle: "\u22EB", + NotRightTriangleBar: "\u29D0\u0338", + NotRightTriangleEqual: "\u22ED", + NotSquareSubset: "\u228F\u0338", + NotSquareSubsetEqual: "\u22E2", + NotSquareSuperset: "\u2290\u0338", + NotSquareSupersetEqual: "\u22E3", + NotSubset: "\u2282\u20D2", + NotSubsetEqual: "\u2288", + NotSucceeds: "\u2281", + NotSucceedsEqual: "\u2AB0\u0338", + NotSucceedsSlantEqual: "\u22E1", + NotSucceedsTilde: "\u227F\u0338", + NotSuperset: "\u2283\u20D2", + NotSupersetEqual: "\u2289", + NotTilde: "\u2241", + NotTildeEqual: "\u2244", + NotTildeFullEqual: "\u2247", + NotTildeTilde: "\u2249", + NotVerticalBar: "\u2224", + npar: "\u2226", + nparallel: "\u2226", + nparsl: "\u2AFD\u20E5", + npart: "\u2202\u0338", + npolint: "\u2A14", + npr: "\u2280", + nprcue: "\u22E0", + npre: "\u2AAF\u0338", + nprec: "\u2280", + npreceq: "\u2AAF\u0338", + nrArr: "\u21CF", + nrarr: "\u219B", + nrarrc: "\u2933\u0338", + nrarrw: "\u219D\u0338", + nRightarrow: "\u21CF", + nrightarrow: "\u219B", + nrtri: "\u22EB", + nrtrie: "\u22ED", + nsc: "\u2281", + nsccue: "\u22E1", + nsce: "\u2AB0\u0338", + Nscr: "\u{1D4A9}", + nscr: "\u{1D4C3}", + nshortmid: "\u2224", + nshortparallel: "\u2226", + nsim: "\u2241", + nsime: "\u2244", + nsimeq: "\u2244", + nsmid: "\u2224", + nspar: "\u2226", + nsqsube: "\u22E2", + nsqsupe: "\u22E3", + nsub: "\u2284", + nsubE: "\u2AC5\u0338", + nsube: "\u2288", + nsubset: "\u2282\u20D2", + nsubseteq: "\u2288", + nsubseteqq: "\u2AC5\u0338", + nsucc: "\u2281", + nsucceq: "\u2AB0\u0338", + nsup: "\u2285", + nsupE: "\u2AC6\u0338", + nsupe: "\u2289", + nsupset: "\u2283\u20D2", + nsupseteq: "\u2289", + nsupseteqq: "\u2AC6\u0338", + ntgl: "\u2279", + Ntilde: "\xD1", + ntilde: "\xF1", + ntlg: "\u2278", + ntriangleleft: "\u22EA", + ntrianglelefteq: "\u22EC", + ntriangleright: "\u22EB", + ntrianglerighteq: "\u22ED", + Nu: "\u039D", + nu: "\u03BD", + num: "#", + numero: "\u2116", + numsp: "\u2007", + nvap: "\u224D\u20D2", + nVDash: "\u22AF", + nVdash: "\u22AE", + nvDash: "\u22AD", + nvdash: "\u22AC", + nvge: "\u2265\u20D2", + nvgt: ">\u20D2", + nvHarr: "\u2904", + nvinfin: "\u29DE", + nvlArr: "\u2902", + nvle: "\u2264\u20D2", + nvlt: "<\u20D2", + nvltrie: "\u22B4\u20D2", + nvrArr: "\u2903", + nvrtrie: "\u22B5\u20D2", + nvsim: "\u223C\u20D2", + nwarhk: "\u2923", + nwArr: "\u21D6", + nwarr: "\u2196", + nwarrow: "\u2196", + nwnear: "\u2927", + Oacute: "\xD3", + oacute: "\xF3", + oast: "\u229B", + ocir: "\u229A", + Ocirc: "\xD4", + ocirc: "\xF4", + Ocy: "\u041E", + ocy: "\u043E", + odash: "\u229D", + Odblac: "\u0150", + odblac: "\u0151", + odiv: "\u2A38", + odot: "\u2299", + odsold: "\u29BC", + OElig: "\u0152", + oelig: "\u0153", + ofcir: "\u29BF", + Ofr: "\u{1D512}", + ofr: "\u{1D52C}", + ogon: "\u02DB", + Ograve: "\xD2", + ograve: "\xF2", + ogt: "\u29C1", + ohbar: "\u29B5", + ohm: "\u03A9", + oint: "\u222E", + olarr: "\u21BA", + olcir: "\u29BE", + olcross: "\u29BB", + oline: "\u203E", + olt: "\u29C0", + Omacr: "\u014C", + omacr: "\u014D", + Omega: "\u03A9", + omega: "\u03C9", + Omicron: "\u039F", + omicron: "\u03BF", + omid: "\u29B6", + ominus: "\u2296", + Oopf: "\u{1D546}", + oopf: "\u{1D560}", + opar: "\u29B7", + OpenCurlyDoubleQuote: "\u201C", + OpenCurlyQuote: "\u2018", + operp: "\u29B9", + oplus: "\u2295", + Or: "\u2A54", + or: "\u2228", + orarr: "\u21BB", + ord: "\u2A5D", + order: "\u2134", + orderof: "\u2134", + ordf: "\xAA", + ordm: "\xBA", + origof: "\u22B6", + oror: "\u2A56", + orslope: "\u2A57", + orv: "\u2A5B", + oS: "\u24C8", + Oscr: "\u{1D4AA}", + oscr: "\u2134", + Oslash: "\xD8", + oslash: "\xF8", + osol: "\u2298", + Otilde: "\xD5", + otilde: "\xF5", + Otimes: "\u2A37", + otimes: "\u2297", + otimesas: "\u2A36", + Ouml: "\xD6", + ouml: "\xF6", + ovbar: "\u233D", + OverBar: "\u203E", + OverBrace: "\u23DE", + OverBracket: "\u23B4", + OverParenthesis: "\u23DC", + par: "\u2225", + para: "\xB6", + parallel: "\u2225", + parsim: "\u2AF3", + parsl: "\u2AFD", + part: "\u2202", + PartialD: "\u2202", + Pcy: "\u041F", + pcy: "\u043F", + percnt: "%", + period: ".", + permil: "\u2030", + perp: "\u22A5", + pertenk: "\u2031", + Pfr: "\u{1D513}", + pfr: "\u{1D52D}", + Phi: "\u03A6", + phi: "\u03C6", + phiv: "\u03D5", + phmmat: "\u2133", + phone: "\u260E", + Pi: "\u03A0", + pi: "\u03C0", + pitchfork: "\u22D4", + piv: "\u03D6", + planck: "\u210F", + planckh: "\u210E", + plankv: "\u210F", + plus: "+", + plusacir: "\u2A23", + plusb: "\u229E", + pluscir: "\u2A22", + plusdo: "\u2214", + plusdu: "\u2A25", + pluse: "\u2A72", + PlusMinus: "\xB1", + plusmn: "\xB1", + plussim: "\u2A26", + plustwo: "\u2A27", + pm: "\xB1", + Poincareplane: "\u210C", + pointint: "\u2A15", + Popf: "\u2119", + popf: "\u{1D561}", + pound: "\xA3", + Pr: "\u2ABB", + pr: "\u227A", + prap: "\u2AB7", + prcue: "\u227C", + prE: "\u2AB3", + pre: "\u2AAF", + prec: "\u227A", + precapprox: "\u2AB7", + preccurlyeq: "\u227C", + Precedes: "\u227A", + PrecedesEqual: "\u2AAF", + PrecedesSlantEqual: "\u227C", + PrecedesTilde: "\u227E", + preceq: "\u2AAF", + precnapprox: "\u2AB9", + precneqq: "\u2AB5", + precnsim: "\u22E8", + precsim: "\u227E", + Prime: "\u2033", + prime: "\u2032", + primes: "\u2119", + prnap: "\u2AB9", + prnE: "\u2AB5", + prnsim: "\u22E8", + prod: "\u220F", + Product: "\u220F", + profalar: "\u232E", + profline: "\u2312", + profsurf: "\u2313", + prop: "\u221D", + Proportion: "\u2237", + Proportional: "\u221D", + propto: "\u221D", + prsim: "\u227E", + prurel: "\u22B0", + Pscr: "\u{1D4AB}", + pscr: "\u{1D4C5}", + Psi: "\u03A8", + psi: "\u03C8", + puncsp: "\u2008", + Qfr: "\u{1D514}", + qfr: "\u{1D52E}", + qint: "\u2A0C", + Qopf: "\u211A", + qopf: "\u{1D562}", + qprime: "\u2057", + Qscr: "\u{1D4AC}", + qscr: "\u{1D4C6}", + quaternions: "\u210D", + quatint: "\u2A16", + quest: "?", + questeq: "\u225F", + QUOT: '"', + quot: '"', + rAarr: "\u21DB", + race: "\u223D\u0331", + Racute: "\u0154", + racute: "\u0155", + radic: "\u221A", + raemptyv: "\u29B3", + Rang: "\u27EB", + rang: "\u27E9", + rangd: "\u2992", + range: "\u29A5", + rangle: "\u27E9", + raquo: "\xBB", + Rarr: "\u21A0", + rArr: "\u21D2", + rarr: "\u2192", + rarrap: "\u2975", + rarrb: "\u21E5", + rarrbfs: "\u2920", + rarrc: "\u2933", + rarrfs: "\u291E", + rarrhk: "\u21AA", + rarrlp: "\u21AC", + rarrpl: "\u2945", + rarrsim: "\u2974", + Rarrtl: "\u2916", + rarrtl: "\u21A3", + rarrw: "\u219D", + rAtail: "\u291C", + ratail: "\u291A", + ratio: "\u2236", + rationals: "\u211A", + RBarr: "\u2910", + rBarr: "\u290F", + rbarr: "\u290D", + rbbrk: "\u2773", + rbrace: "}", + rbrack: "]", + rbrke: "\u298C", + rbrksld: "\u298E", + rbrkslu: "\u2990", + Rcaron: "\u0158", + rcaron: "\u0159", + Rcedil: "\u0156", + rcedil: "\u0157", + rceil: "\u2309", + rcub: "}", + Rcy: "\u0420", + rcy: "\u0440", + rdca: "\u2937", + rdldhar: "\u2969", + rdquo: "\u201D", + rdquor: "\u201D", + rdsh: "\u21B3", + Re: "\u211C", + real: "\u211C", + realine: "\u211B", + realpart: "\u211C", + reals: "\u211D", + rect: "\u25AD", + REG: "\xAE", + reg: "\xAE", + ReverseElement: "\u220B", + ReverseEquilibrium: "\u21CB", + ReverseUpEquilibrium: "\u296F", + rfisht: "\u297D", + rfloor: "\u230B", + Rfr: "\u211C", + rfr: "\u{1D52F}", + rHar: "\u2964", + rhard: "\u21C1", + rharu: "\u21C0", + rharul: "\u296C", + Rho: "\u03A1", + rho: "\u03C1", + rhov: "\u03F1", + RightAngleBracket: "\u27E9", + RightArrow: "\u2192", + Rightarrow: "\u21D2", + rightarrow: "\u2192", + RightArrowBar: "\u21E5", + RightArrowLeftArrow: "\u21C4", + rightarrowtail: "\u21A3", + RightCeiling: "\u2309", + RightDoubleBracket: "\u27E7", + RightDownTeeVector: "\u295D", + RightDownVector: "\u21C2", + RightDownVectorBar: "\u2955", + RightFloor: "\u230B", + rightharpoondown: "\u21C1", + rightharpoonup: "\u21C0", + rightleftarrows: "\u21C4", + rightleftharpoons: "\u21CC", + rightrightarrows: "\u21C9", + rightsquigarrow: "\u219D", + RightTee: "\u22A2", + RightTeeArrow: "\u21A6", + RightTeeVector: "\u295B", + rightthreetimes: "\u22CC", + RightTriangle: "\u22B3", + RightTriangleBar: "\u29D0", + RightTriangleEqual: "\u22B5", + RightUpDownVector: "\u294F", + RightUpTeeVector: "\u295C", + RightUpVector: "\u21BE", + RightUpVectorBar: "\u2954", + RightVector: "\u21C0", + RightVectorBar: "\u2953", + ring: "\u02DA", + risingdotseq: "\u2253", + rlarr: "\u21C4", + rlhar: "\u21CC", + rlm: "\u200F", + rmoust: "\u23B1", + rmoustache: "\u23B1", + rnmid: "\u2AEE", + roang: "\u27ED", + roarr: "\u21FE", + robrk: "\u27E7", + ropar: "\u2986", + Ropf: "\u211D", + ropf: "\u{1D563}", + roplus: "\u2A2E", + rotimes: "\u2A35", + RoundImplies: "\u2970", + rpar: ")", + rpargt: "\u2994", + rppolint: "\u2A12", + rrarr: "\u21C9", + Rrightarrow: "\u21DB", + rsaquo: "\u203A", + Rscr: "\u211B", + rscr: "\u{1D4C7}", + Rsh: "\u21B1", + rsh: "\u21B1", + rsqb: "]", + rsquo: "\u2019", + rsquor: "\u2019", + rthree: "\u22CC", + rtimes: "\u22CA", + rtri: "\u25B9", + rtrie: "\u22B5", + rtrif: "\u25B8", + rtriltri: "\u29CE", + RuleDelayed: "\u29F4", + ruluhar: "\u2968", + rx: "\u211E", + Sacute: "\u015A", + sacute: "\u015B", + sbquo: "\u201A", + Sc: "\u2ABC", + sc: "\u227B", + scap: "\u2AB8", + Scaron: "\u0160", + scaron: "\u0161", + sccue: "\u227D", + scE: "\u2AB4", + sce: "\u2AB0", + Scedil: "\u015E", + scedil: "\u015F", + Scirc: "\u015C", + scirc: "\u015D", + scnap: "\u2ABA", + scnE: "\u2AB6", + scnsim: "\u22E9", + scpolint: "\u2A13", + scsim: "\u227F", + Scy: "\u0421", + scy: "\u0441", + sdot: "\u22C5", + sdotb: "\u22A1", + sdote: "\u2A66", + searhk: "\u2925", + seArr: "\u21D8", + searr: "\u2198", + searrow: "\u2198", + sect: "\xA7", + semi: ";", + seswar: "\u2929", + setminus: "\u2216", + setmn: "\u2216", + sext: "\u2736", + Sfr: "\u{1D516}", + sfr: "\u{1D530}", + sfrown: "\u2322", + sharp: "\u266F", + SHCHcy: "\u0429", + shchcy: "\u0449", + SHcy: "\u0428", + shcy: "\u0448", + ShortDownArrow: "\u2193", + ShortLeftArrow: "\u2190", + shortmid: "\u2223", + shortparallel: "\u2225", + ShortRightArrow: "\u2192", + ShortUpArrow: "\u2191", + shy: "\xAD", + Sigma: "\u03A3", + sigma: "\u03C3", + sigmaf: "\u03C2", + sigmav: "\u03C2", + sim: "\u223C", + simdot: "\u2A6A", + sime: "\u2243", + simeq: "\u2243", + simg: "\u2A9E", + simgE: "\u2AA0", + siml: "\u2A9D", + simlE: "\u2A9F", + simne: "\u2246", + simplus: "\u2A24", + simrarr: "\u2972", + slarr: "\u2190", + SmallCircle: "\u2218", + smallsetminus: "\u2216", + smashp: "\u2A33", + smeparsl: "\u29E4", + smid: "\u2223", + smile: "\u2323", + smt: "\u2AAA", + smte: "\u2AAC", + smtes: "\u2AAC\uFE00", + SOFTcy: "\u042C", + softcy: "\u044C", + sol: "/", + solb: "\u29C4", + solbar: "\u233F", + Sopf: "\u{1D54A}", + sopf: "\u{1D564}", + spades: "\u2660", + spadesuit: "\u2660", + spar: "\u2225", + sqcap: "\u2293", + sqcaps: "\u2293\uFE00", + sqcup: "\u2294", + sqcups: "\u2294\uFE00", + Sqrt: "\u221A", + sqsub: "\u228F", + sqsube: "\u2291", + sqsubset: "\u228F", + sqsubseteq: "\u2291", + sqsup: "\u2290", + sqsupe: "\u2292", + sqsupset: "\u2290", + sqsupseteq: "\u2292", + squ: "\u25A1", + Square: "\u25A1", + square: "\u25A1", + SquareIntersection: "\u2293", + SquareSubset: "\u228F", + SquareSubsetEqual: "\u2291", + SquareSuperset: "\u2290", + SquareSupersetEqual: "\u2292", + SquareUnion: "\u2294", + squarf: "\u25AA", + squf: "\u25AA", + srarr: "\u2192", + Sscr: "\u{1D4AE}", + sscr: "\u{1D4C8}", + ssetmn: "\u2216", + ssmile: "\u2323", + sstarf: "\u22C6", + Star: "\u22C6", + star: "\u2606", + starf: "\u2605", + straightepsilon: "\u03F5", + straightphi: "\u03D5", + strns: "\xAF", + Sub: "\u22D0", + sub: "\u2282", + subdot: "\u2ABD", + subE: "\u2AC5", + sube: "\u2286", + subedot: "\u2AC3", + submult: "\u2AC1", + subnE: "\u2ACB", + subne: "\u228A", + subplus: "\u2ABF", + subrarr: "\u2979", + Subset: "\u22D0", + subset: "\u2282", + subseteq: "\u2286", + subseteqq: "\u2AC5", + SubsetEqual: "\u2286", + subsetneq: "\u228A", + subsetneqq: "\u2ACB", + subsim: "\u2AC7", + subsub: "\u2AD5", + subsup: "\u2AD3", + succ: "\u227B", + succapprox: "\u2AB8", + succcurlyeq: "\u227D", + Succeeds: "\u227B", + SucceedsEqual: "\u2AB0", + SucceedsSlantEqual: "\u227D", + SucceedsTilde: "\u227F", + succeq: "\u2AB0", + succnapprox: "\u2ABA", + succneqq: "\u2AB6", + succnsim: "\u22E9", + succsim: "\u227F", + SuchThat: "\u220B", + Sum: "\u2211", + sum: "\u2211", + sung: "\u266A", + Sup: "\u22D1", + sup: "\u2283", + sup1: "\xB9", + sup2: "\xB2", + sup3: "\xB3", + supdot: "\u2ABE", + supdsub: "\u2AD8", + supE: "\u2AC6", + supe: "\u2287", + supedot: "\u2AC4", + Superset: "\u2283", + SupersetEqual: "\u2287", + suphsol: "\u27C9", + suphsub: "\u2AD7", + suplarr: "\u297B", + supmult: "\u2AC2", + supnE: "\u2ACC", + supne: "\u228B", + supplus: "\u2AC0", + Supset: "\u22D1", + supset: "\u2283", + supseteq: "\u2287", + supseteqq: "\u2AC6", + supsetneq: "\u228B", + supsetneqq: "\u2ACC", + supsim: "\u2AC8", + supsub: "\u2AD4", + supsup: "\u2AD6", + swarhk: "\u2926", + swArr: "\u21D9", + swarr: "\u2199", + swarrow: "\u2199", + swnwar: "\u292A", + szlig: "\xDF", + Tab: " ", + target: "\u2316", + Tau: "\u03A4", + tau: "\u03C4", + tbrk: "\u23B4", + Tcaron: "\u0164", + tcaron: "\u0165", + Tcedil: "\u0162", + tcedil: "\u0163", + Tcy: "\u0422", + tcy: "\u0442", + tdot: "\u20DB", + telrec: "\u2315", + Tfr: "\u{1D517}", + tfr: "\u{1D531}", + there4: "\u2234", + Therefore: "\u2234", + therefore: "\u2234", + Theta: "\u0398", + theta: "\u03B8", + thetasym: "\u03D1", + thetav: "\u03D1", + thickapprox: "\u2248", + thicksim: "\u223C", + ThickSpace: "\u205F\u200A", + thinsp: "\u2009", + ThinSpace: "\u2009", + thkap: "\u2248", + thksim: "\u223C", + THORN: "\xDE", + thorn: "\xFE", + Tilde: "\u223C", + tilde: "\u02DC", + TildeEqual: "\u2243", + TildeFullEqual: "\u2245", + TildeTilde: "\u2248", + times: "\xD7", + timesb: "\u22A0", + timesbar: "\u2A31", + timesd: "\u2A30", + tint: "\u222D", + toea: "\u2928", + top: "\u22A4", + topbot: "\u2336", + topcir: "\u2AF1", + Topf: "\u{1D54B}", + topf: "\u{1D565}", + topfork: "\u2ADA", + tosa: "\u2929", + tprime: "\u2034", + TRADE: "\u2122", + trade: "\u2122", + triangle: "\u25B5", + triangledown: "\u25BF", + triangleleft: "\u25C3", + trianglelefteq: "\u22B4", + triangleq: "\u225C", + triangleright: "\u25B9", + trianglerighteq: "\u22B5", + tridot: "\u25EC", + trie: "\u225C", + triminus: "\u2A3A", + TripleDot: "\u20DB", + triplus: "\u2A39", + trisb: "\u29CD", + tritime: "\u2A3B", + trpezium: "\u23E2", + Tscr: "\u{1D4AF}", + tscr: "\u{1D4C9}", + TScy: "\u0426", + tscy: "\u0446", + TSHcy: "\u040B", + tshcy: "\u045B", + Tstrok: "\u0166", + tstrok: "\u0167", + twixt: "\u226C", + twoheadleftarrow: "\u219E", + twoheadrightarrow: "\u21A0", + Uacute: "\xDA", + uacute: "\xFA", + Uarr: "\u219F", + uArr: "\u21D1", + uarr: "\u2191", + Uarrocir: "\u2949", + Ubrcy: "\u040E", + ubrcy: "\u045E", + Ubreve: "\u016C", + ubreve: "\u016D", + Ucirc: "\xDB", + ucirc: "\xFB", + Ucy: "\u0423", + ucy: "\u0443", + udarr: "\u21C5", + Udblac: "\u0170", + udblac: "\u0171", + udhar: "\u296E", + ufisht: "\u297E", + Ufr: "\u{1D518}", + ufr: "\u{1D532}", + Ugrave: "\xD9", + ugrave: "\xF9", + uHar: "\u2963", + uharl: "\u21BF", + uharr: "\u21BE", + uhblk: "\u2580", + ulcorn: "\u231C", + ulcorner: "\u231C", + ulcrop: "\u230F", + ultri: "\u25F8", + Umacr: "\u016A", + umacr: "\u016B", + uml: "\xA8", + UnderBar: "_", + UnderBrace: "\u23DF", + UnderBracket: "\u23B5", + UnderParenthesis: "\u23DD", + Union: "\u22C3", + UnionPlus: "\u228E", + Uogon: "\u0172", + uogon: "\u0173", + Uopf: "\u{1D54C}", + uopf: "\u{1D566}", + UpArrow: "\u2191", + Uparrow: "\u21D1", + uparrow: "\u2191", + UpArrowBar: "\u2912", + UpArrowDownArrow: "\u21C5", + UpDownArrow: "\u2195", + Updownarrow: "\u21D5", + updownarrow: "\u2195", + UpEquilibrium: "\u296E", + upharpoonleft: "\u21BF", + upharpoonright: "\u21BE", + uplus: "\u228E", + UpperLeftArrow: "\u2196", + UpperRightArrow: "\u2197", + Upsi: "\u03D2", + upsi: "\u03C5", + upsih: "\u03D2", + Upsilon: "\u03A5", + upsilon: "\u03C5", + UpTee: "\u22A5", + UpTeeArrow: "\u21A5", + upuparrows: "\u21C8", + urcorn: "\u231D", + urcorner: "\u231D", + urcrop: "\u230E", + Uring: "\u016E", + uring: "\u016F", + urtri: "\u25F9", + Uscr: "\u{1D4B0}", + uscr: "\u{1D4CA}", + utdot: "\u22F0", + Utilde: "\u0168", + utilde: "\u0169", + utri: "\u25B5", + utrif: "\u25B4", + uuarr: "\u21C8", + Uuml: "\xDC", + uuml: "\xFC", + uwangle: "\u29A7", + vangrt: "\u299C", + varepsilon: "\u03F5", + varkappa: "\u03F0", + varnothing: "\u2205", + varphi: "\u03D5", + varpi: "\u03D6", + varpropto: "\u221D", + vArr: "\u21D5", + varr: "\u2195", + varrho: "\u03F1", + varsigma: "\u03C2", + varsubsetneq: "\u228A\uFE00", + varsubsetneqq: "\u2ACB\uFE00", + varsupsetneq: "\u228B\uFE00", + varsupsetneqq: "\u2ACC\uFE00", + vartheta: "\u03D1", + vartriangleleft: "\u22B2", + vartriangleright: "\u22B3", + Vbar: "\u2AEB", + vBar: "\u2AE8", + vBarv: "\u2AE9", + Vcy: "\u0412", + vcy: "\u0432", + VDash: "\u22AB", + Vdash: "\u22A9", + vDash: "\u22A8", + vdash: "\u22A2", + Vdashl: "\u2AE6", + Vee: "\u22C1", + vee: "\u2228", + veebar: "\u22BB", + veeeq: "\u225A", + vellip: "\u22EE", + Verbar: "\u2016", + verbar: "|", + Vert: "\u2016", + vert: "|", + VerticalBar: "\u2223", + VerticalLine: "|", + VerticalSeparator: "\u2758", + VerticalTilde: "\u2240", + VeryThinSpace: "\u200A", + Vfr: "\u{1D519}", + vfr: "\u{1D533}", + vltri: "\u22B2", + vnsub: "\u2282\u20D2", + vnsup: "\u2283\u20D2", + Vopf: "\u{1D54D}", + vopf: "\u{1D567}", + vprop: "\u221D", + vrtri: "\u22B3", + Vscr: "\u{1D4B1}", + vscr: "\u{1D4CB}", + vsubnE: "\u2ACB\uFE00", + vsubne: "\u228A\uFE00", + vsupnE: "\u2ACC\uFE00", + vsupne: "\u228B\uFE00", + Vvdash: "\u22AA", + vzigzag: "\u299A", + Wcirc: "\u0174", + wcirc: "\u0175", + wedbar: "\u2A5F", + Wedge: "\u22C0", + wedge: "\u2227", + wedgeq: "\u2259", + weierp: "\u2118", + Wfr: "\u{1D51A}", + wfr: "\u{1D534}", + Wopf: "\u{1D54E}", + wopf: "\u{1D568}", + wp: "\u2118", + wr: "\u2240", + wreath: "\u2240", + Wscr: "\u{1D4B2}", + wscr: "\u{1D4CC}", + xcap: "\u22C2", + xcirc: "\u25EF", + xcup: "\u22C3", + xdtri: "\u25BD", + Xfr: "\u{1D51B}", + xfr: "\u{1D535}", + xhArr: "\u27FA", + xharr: "\u27F7", + Xi: "\u039E", + xi: "\u03BE", + xlArr: "\u27F8", + xlarr: "\u27F5", + xmap: "\u27FC", + xnis: "\u22FB", + xodot: "\u2A00", + Xopf: "\u{1D54F}", + xopf: "\u{1D569}", + xoplus: "\u2A01", + xotime: "\u2A02", + xrArr: "\u27F9", + xrarr: "\u27F6", + Xscr: "\u{1D4B3}", + xscr: "\u{1D4CD}", + xsqcup: "\u2A06", + xuplus: "\u2A04", + xutri: "\u25B3", + xvee: "\u22C1", + xwedge: "\u22C0", + Yacute: "\xDD", + yacute: "\xFD", + YAcy: "\u042F", + yacy: "\u044F", + Ycirc: "\u0176", + ycirc: "\u0177", + Ycy: "\u042B", + ycy: "\u044B", + yen: "\xA5", + Yfr: "\u{1D51C}", + yfr: "\u{1D536}", + YIcy: "\u0407", + yicy: "\u0457", + Yopf: "\u{1D550}", + yopf: "\u{1D56A}", + Yscr: "\u{1D4B4}", + yscr: "\u{1D4CE}", + YUcy: "\u042E", + yucy: "\u044E", + Yuml: "\u0178", + yuml: "\xFF", + Zacute: "\u0179", + zacute: "\u017A", + Zcaron: "\u017D", + zcaron: "\u017E", + Zcy: "\u0417", + zcy: "\u0437", + Zdot: "\u017B", + zdot: "\u017C", + zeetrf: "\u2128", + ZeroWidthSpace: "\u200B", + Zeta: "\u0396", + zeta: "\u03B6", + Zfr: "\u2128", + zfr: "\u{1D537}", + ZHcy: "\u0416", + zhcy: "\u0436", + zigrarr: "\u21DD", + Zopf: "\u2124", + zopf: "\u{1D56B}", + Zscr: "\u{1D4B5}", + zscr: "\u{1D4CF}", + zwj: "\u200D", + zwnj: "\u200C" + }); + exports2.entityMap = exports2.HTML_ENTITIES; + } +}); + +// ../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/sax.js +var require_sax = __commonJS({ + "../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/sax.js"(exports2) { + var NAMESPACE = require_conventions().NAMESPACE; + var nameStartChar = /[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/; + var nameChar = new RegExp("[\\-\\.0-9" + nameStartChar.source.slice(1, -1) + "\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"); + var tagNamePattern = new RegExp("^" + nameStartChar.source + nameChar.source + "*(?::" + nameStartChar.source + nameChar.source + "*)?$"); + var S_TAG = 0; + var S_ATTR = 1; + var S_ATTR_SPACE = 2; + var S_EQ = 3; + var S_ATTR_NOQUOT_VALUE = 4; + var S_ATTR_END = 5; + var S_TAG_SPACE = 6; + var S_TAG_CLOSE = 7; + function ParseError(message, locator) { + this.message = message; + this.locator = locator; + if (Error.captureStackTrace) + Error.captureStackTrace(this, ParseError); + } + ParseError.prototype = new Error(); + ParseError.prototype.name = ParseError.name; + function XMLReader() { + } + XMLReader.prototype = { + parse: function(source2, defaultNSMap, entityMap) { + var domBuilder = this.domBuilder; + domBuilder.startDocument(); + _copy(defaultNSMap, defaultNSMap = {}); + parse7( + source2, + defaultNSMap, + entityMap, + domBuilder, + this.errorHandler + ); + domBuilder.endDocument(); + } + }; + function parse7(source2, defaultNSMapCopy, entityMap, domBuilder, errorHandler) { + function fixedFromCharCode(code) { + if (code > 65535) { + code -= 65536; + var surrogate1 = 55296 + (code >> 10), surrogate2 = 56320 + (code & 1023); + return String.fromCharCode(surrogate1, surrogate2); + } else { + return String.fromCharCode(code); + } + } + function entityReplacer(a2) { + var k = a2.slice(1, -1); + if (Object.hasOwnProperty.call(entityMap, k)) { + return entityMap[k]; + } else if (k.charAt(0) === "#") { + return fixedFromCharCode(parseInt(k.substr(1).replace("x", "0x"))); + } else { + errorHandler.error("entity not found:" + a2); + return a2; + } + } + function appendText(end2) { + if (end2 > start4) { + var xt = source2.substring(start4, end2).replace(/&#?\w+;/g, entityReplacer); + locator && position(start4); + domBuilder.characters(xt, 0, end2 - start4); + start4 = end2; + } + } + function position(p, m) { + while (p >= lineEnd && (m = linePattern.exec(source2))) { + lineStart = m.index; + lineEnd = lineStart + m[0].length; + locator.lineNumber++; + } + locator.columnNumber = p - lineStart + 1; + } + var lineStart = 0; + var lineEnd = 0; + var linePattern = /.*(?:\r\n?|\n)|.*$/g; + var locator = domBuilder.locator; + var parseStack = [{ currentNSMap: defaultNSMapCopy }]; + var closeMap = {}; + var start4 = 0; + while (true) { + try { + var tagStart = source2.indexOf("<", start4); + if (tagStart < 0) { + if (!source2.substr(start4).match(/^\s*$/)) { + var doc = domBuilder.doc; + var text = doc.createTextNode(source2.substr(start4)); + doc.appendChild(text); + domBuilder.currentElement = text; + } + return; + } + if (tagStart > start4) { + appendText(tagStart); + } + switch (source2.charAt(tagStart + 1)) { + case "/": + var end = source2.indexOf(">", tagStart + 3); + var tagName = source2.substring(tagStart + 2, end).replace(/[ \t\n\r]+$/g, ""); + var config = parseStack.pop(); + if (end < 0) { + tagName = source2.substring(tagStart + 2).replace(/[\s<].*/, ""); + errorHandler.error("end tag name: " + tagName + " is not complete:" + config.tagName); + end = tagStart + 1 + tagName.length; + } else if (tagName.match(/\s start4) { + start4 = end; + } else { + appendText(Math.max(tagStart, start4) + 1); + } + } + } + function copyLocator(f, t) { + t.lineNumber = f.lineNumber; + t.columnNumber = f.columnNumber; + return t; + } + function parseElementStartPart(source2, start4, el, currentNSMap, entityReplacer, errorHandler) { + function addAttribute(qname, value2, startIndex) { + if (el.attributeNames.hasOwnProperty(qname)) { + errorHandler.fatalError("Attribute " + qname + " redefined"); + } + el.addValue( + qname, + // @see https://www.w3.org/TR/xml/#AVNormalize + // since the xmldom sax parser does not "interpret" DTD the following is not implemented: + // - recursive replacement of (DTD) entity references + // - trimming and collapsing multiple spaces into a single one for attributes that are not of type CDATA + value2.replace(/[\t\n\r]/g, " ").replace(/&#?\w+;/g, entityReplacer), + startIndex + ); + } + var attrName; + var value; + var p = ++start4; + var s = S_TAG; + while (true) { + var c = source2.charAt(p); + switch (c) { + case "=": + if (s === S_ATTR) { + attrName = source2.slice(start4, p); + s = S_EQ; + } else if (s === S_ATTR_SPACE) { + s = S_EQ; + } else { + throw new Error("attribute equal must after attrName"); + } + break; + case "'": + case '"': + if (s === S_EQ || s === S_ATTR) { + if (s === S_ATTR) { + errorHandler.warning('attribute value must after "="'); + attrName = source2.slice(start4, p); + } + start4 = p + 1; + p = source2.indexOf(c, start4); + if (p > 0) { + value = source2.slice(start4, p); + addAttribute(attrName, value, start4 - 1); + s = S_ATTR_END; + } else { + throw new Error("attribute value no end '" + c + "' match"); + } + } else if (s == S_ATTR_NOQUOT_VALUE) { + value = source2.slice(start4, p); + addAttribute(attrName, value, start4); + errorHandler.warning('attribute "' + attrName + '" missed start quot(' + c + ")!!"); + start4 = p + 1; + s = S_ATTR_END; + } else { + throw new Error('attribute value must after "="'); + } + break; + case "/": + switch (s) { + case S_TAG: + el.setTagName(source2.slice(start4, p)); + case S_ATTR_END: + case S_TAG_SPACE: + case S_TAG_CLOSE: + s = S_TAG_CLOSE; + el.closed = true; + case S_ATTR_NOQUOT_VALUE: + case S_ATTR: + break; + case S_ATTR_SPACE: + el.closed = true; + break; + default: + throw new Error("attribute invalid close char('/')"); + } + break; + case "": + errorHandler.error("unexpected end of input"); + if (s == S_TAG) { + el.setTagName(source2.slice(start4, p)); + } + return p; + case ">": + switch (s) { + case S_TAG: + el.setTagName(source2.slice(start4, p)); + case S_ATTR_END: + case S_TAG_SPACE: + case S_TAG_CLOSE: + break; + case S_ATTR_NOQUOT_VALUE: + case S_ATTR: + value = source2.slice(start4, p); + if (value.slice(-1) === "/") { + el.closed = true; + value = value.slice(0, -1); + } + case S_ATTR_SPACE: + if (s === S_ATTR_SPACE) { + value = attrName; + } + if (s == S_ATTR_NOQUOT_VALUE) { + errorHandler.warning('attribute "' + value + '" missed quot(")!'); + addAttribute(attrName, value, start4); + } else { + if (!NAMESPACE.isHTML(currentNSMap[""]) || !value.match(/^(?:disabled|checked|selected)$/i)) { + errorHandler.warning('attribute "' + value + '" missed value!! "' + value + '" instead!!'); + } + addAttribute(value, value, start4); + } + break; + case S_EQ: + throw new Error("attribute value missed!!"); + } + return p; + case "\x80": + c = " "; + default: + if (c <= " ") { + switch (s) { + case S_TAG: + el.setTagName(source2.slice(start4, p)); + s = S_TAG_SPACE; + break; + case S_ATTR: + attrName = source2.slice(start4, p); + s = S_ATTR_SPACE; + break; + case S_ATTR_NOQUOT_VALUE: + var value = source2.slice(start4, p); + errorHandler.warning('attribute "' + value + '" missed quot(")!!'); + addAttribute(attrName, value, start4); + case S_ATTR_END: + s = S_TAG_SPACE; + break; + } + } else { + switch (s) { + case S_ATTR_SPACE: + var tagName = el.tagName; + if (!NAMESPACE.isHTML(currentNSMap[""]) || !attrName.match(/^(?:disabled|checked|selected)$/i)) { + errorHandler.warning('attribute "' + attrName + '" missed value!! "' + attrName + '" instead2!!'); + } + addAttribute(attrName, attrName, start4); + start4 = p; + s = S_ATTR; + break; + case S_ATTR_END: + errorHandler.warning('attribute space is required"' + attrName + '"!!'); + case S_TAG_SPACE: + s = S_ATTR; + start4 = p; + break; + case S_EQ: + s = S_ATTR_NOQUOT_VALUE; + start4 = p; + break; + case S_TAG_CLOSE: + throw new Error("elements closed character '/' and '>' must be connected to"); + } + } + } + p++; + } + } + function appendElement(el, domBuilder, currentNSMap) { + var tagName = el.tagName; + var localNSMap = null; + var i = el.length; + while (i--) { + var a = el[i]; + var qName = a.qName; + var value = a.value; + var nsp = qName.indexOf(":"); + if (nsp > 0) { + var prefix = a.prefix = qName.slice(0, nsp); + var localName = qName.slice(nsp + 1); + var nsPrefix = prefix === "xmlns" && localName; + } else { + localName = qName; + prefix = null; + nsPrefix = qName === "xmlns" && ""; + } + a.localName = localName; + if (nsPrefix !== false) { + if (localNSMap == null) { + localNSMap = {}; + _copy(currentNSMap, currentNSMap = {}); + } + currentNSMap[nsPrefix] = localNSMap[nsPrefix] = value; + a.uri = NAMESPACE.XMLNS; + domBuilder.startPrefixMapping(nsPrefix, value); + } + } + var i = el.length; + while (i--) { + a = el[i]; + var prefix = a.prefix; + if (prefix) { + if (prefix === "xml") { + a.uri = NAMESPACE.XML; + } + if (prefix !== "xmlns") { + a.uri = currentNSMap[prefix || ""]; + } + } + } + var nsp = tagName.indexOf(":"); + if (nsp > 0) { + prefix = el.prefix = tagName.slice(0, nsp); + localName = el.localName = tagName.slice(nsp + 1); + } else { + prefix = null; + localName = el.localName = tagName; + } + var ns = el.uri = currentNSMap[prefix || ""]; + domBuilder.startElement(ns, localName, tagName, el); + if (el.closed) { + domBuilder.endElement(ns, localName, tagName); + if (localNSMap) { + for (prefix in localNSMap) { + if (Object.prototype.hasOwnProperty.call(localNSMap, prefix)) { + domBuilder.endPrefixMapping(prefix); + } + } + } + } else { + el.currentNSMap = currentNSMap; + el.localNSMap = localNSMap; + return true; + } + } + function parseHtmlSpecialContent(source2, elStartEnd, tagName, entityReplacer, domBuilder) { + if (/^(?:script|textarea)$/i.test(tagName)) { + var elEndStart = source2.indexOf("", elStartEnd); + var text = source2.substring(elStartEnd + 1, elEndStart); + if (/[&<]/.test(text)) { + if (/^script$/i.test(tagName)) { + domBuilder.characters(text, 0, text.length); + return elEndStart; + } + text = text.replace(/&#?\w+;/g, entityReplacer); + domBuilder.characters(text, 0, text.length); + return elEndStart; + } + } + return elStartEnd + 1; + } + function fixSelfClosed(source2, elStartEnd, tagName, closeMap) { + var pos = closeMap[tagName]; + if (pos == null) { + pos = source2.lastIndexOf(""); + if (pos < elStartEnd) { + pos = source2.lastIndexOf("", start4 + 4); + if (end > start4) { + domBuilder.comment(source2, start4 + 4, end - start4 - 4); + return end + 3; + } else { + errorHandler.error("Unclosed comment"); + return -1; + } + } else { + return -1; + } + default: + if (source2.substr(start4 + 3, 6) == "CDATA[") { + var end = source2.indexOf("]]>", start4 + 9); + domBuilder.startCDATA(); + domBuilder.characters(source2, start4 + 9, end - start4 - 9); + domBuilder.endCDATA(); + return end + 3; + } + var matchs = split(source2, start4); + var len = matchs.length; + if (len > 1 && /!doctype/i.test(matchs[0][0])) { + var name = matchs[1][0]; + var pubid = false; + var sysid = false; + if (len > 3) { + if (/^public$/i.test(matchs[2][0])) { + pubid = matchs[3][0]; + sysid = len > 4 && matchs[4][0]; + } else if (/^system$/i.test(matchs[2][0])) { + sysid = matchs[3][0]; + } + } + var lastMatch = matchs[len - 1]; + domBuilder.startDTD(name, pubid, sysid); + domBuilder.endDTD(); + return lastMatch.index + lastMatch[0].length; + } + } + return -1; + } + function parseInstruction(source2, start4, domBuilder) { + var end = source2.indexOf("?>", start4); + if (end) { + var match2 = source2.substring(start4, end).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/); + if (match2) { + var len = match2[0].length; + domBuilder.processingInstruction(match2[1], match2[2]); + return end + 2; + } else { + return -1; + } + } + return -1; + } + function ElementAttributes() { + this.attributeNames = {}; + } + ElementAttributes.prototype = { + setTagName: function(tagName) { + if (!tagNamePattern.test(tagName)) { + throw new Error("invalid tagName:" + tagName); + } + this.tagName = tagName; + }, + addValue: function(qName, value, offset) { + if (!tagNamePattern.test(qName)) { + throw new Error("invalid attribute:" + qName); + } + this.attributeNames[qName] = this.length; + this[this.length++] = { qName, value, offset }; + }, + length: 0, + getLocalName: function(i) { + return this[i].localName; + }, + getLocator: function(i) { + return this[i].locator; + }, + getQName: function(i) { + return this[i].qName; + }, + getURI: function(i) { + return this[i].uri; + }, + getValue: function(i) { + return this[i].value; + } + // ,getIndex:function(uri, localName)){ + // if(localName){ + // + // }else{ + // var qName = uri + // } + // }, + // getValue:function(){return this.getValue(this.getIndex.apply(this,arguments))}, + // getType:function(uri,localName){} + // getType:function(i){}, + }; + function split(source2, start4) { + var match2; + var buf = []; + var reg = /'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g; + reg.lastIndex = start4; + reg.exec(source2); + while (match2 = reg.exec(source2)) { + buf.push(match2); + if (match2[1]) + return buf; + } + } + exports2.XMLReader = XMLReader; + exports2.ParseError = ParseError; + } +}); + +// ../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/dom-parser.js +var require_dom_parser = __commonJS({ + "../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/dom-parser.js"(exports2) { + var conventions = require_conventions(); + var dom = require_dom(); + var entities = require_entities(); + var sax = require_sax(); + var DOMImplementation = dom.DOMImplementation; + var NAMESPACE = conventions.NAMESPACE; + var ParseError = sax.ParseError; + var XMLReader = sax.XMLReader; + function normalizeLineEndings(input) { + return input.replace(/\r[\n\u0085]/g, "\n").replace(/[\r\u0085\u2028]/g, "\n"); + } + function DOMParser(options2) { + this.options = options2 || { locator: {} }; + } + DOMParser.prototype.parseFromString = function(source2, mimeType) { + var options2 = this.options; + var sax2 = new XMLReader(); + var domBuilder = options2.domBuilder || new DOMHandler(); + var errorHandler = options2.errorHandler; + var locator = options2.locator; + var defaultNSMap = options2.xmlns || {}; + var isHTML = /\/x?html?$/.test(mimeType); + var entityMap = isHTML ? entities.HTML_ENTITIES : entities.XML_ENTITIES; + if (locator) { + domBuilder.setDocumentLocator(locator); + } + sax2.errorHandler = buildErrorHandler(errorHandler, domBuilder, locator); + sax2.domBuilder = options2.domBuilder || domBuilder; + if (isHTML) { + defaultNSMap[""] = NAMESPACE.HTML; + } + defaultNSMap.xml = defaultNSMap.xml || NAMESPACE.XML; + var normalize6 = options2.normalizeLineEndings || normalizeLineEndings; + if (source2 && typeof source2 === "string") { + sax2.parse( + normalize6(source2), + defaultNSMap, + entityMap + ); + } else { + sax2.errorHandler.error("invalid doc source"); + } + return domBuilder.doc; + }; + function buildErrorHandler(errorImpl, domBuilder, locator) { + if (!errorImpl) { + if (domBuilder instanceof DOMHandler) { + return domBuilder; + } + errorImpl = domBuilder; + } + var errorHandler = {}; + var isCallback = errorImpl instanceof Function; + locator = locator || {}; + function build(key) { + var fn = errorImpl[key]; + if (!fn && isCallback) { + fn = errorImpl.length == 2 ? function(msg) { + errorImpl(key, msg); + } : errorImpl; + } + errorHandler[key] = fn && function(msg) { + fn("[xmldom " + key + "] " + msg + _locator(locator)); + } || function() { + }; + } + build("warning"); + build("error"); + build("fatalError"); + return errorHandler; + } + function DOMHandler() { + this.cdata = false; + } + function position(locator, node) { + node.lineNumber = locator.lineNumber; + node.columnNumber = locator.columnNumber; + } + DOMHandler.prototype = { + startDocument: function() { + this.doc = new DOMImplementation().createDocument(null, null, null); + if (this.locator) { + this.doc.documentURI = this.locator.systemId; + } + }, + startElement: function(namespaceURI, localName, qName, attrs) { + var doc = this.doc; + var el = doc.createElementNS(namespaceURI, qName || localName); + var len = attrs.length; + appendElement(this, el); + this.currentElement = el; + this.locator && position(this.locator, el); + for (var i = 0; i < len; i++) { + var namespaceURI = attrs.getURI(i); + var value = attrs.getValue(i); + var qName = attrs.getQName(i); + var attr = doc.createAttributeNS(namespaceURI, qName); + this.locator && position(attrs.getLocator(i), attr); + attr.value = attr.nodeValue = value; + el.setAttributeNode(attr); + } + }, + endElement: function(namespaceURI, localName, qName) { + var current = this.currentElement; + var tagName = current.tagName; + this.currentElement = current.parentNode; + }, + startPrefixMapping: function(prefix, uri) { + }, + endPrefixMapping: function(prefix) { + }, + processingInstruction: function(target, data) { + var ins = this.doc.createProcessingInstruction(target, data); + this.locator && position(this.locator, ins); + appendElement(this, ins); + }, + ignorableWhitespace: function(ch, start4, length) { + }, + characters: function(chars, start4, length) { + chars = _toString.apply(this, arguments); + if (chars) { + if (this.cdata) { + var charNode = this.doc.createCDATASection(chars); + } else { + var charNode = this.doc.createTextNode(chars); + } + if (this.currentElement) { + this.currentElement.appendChild(charNode); + } else if (/^\s*$/.test(chars)) { + this.doc.appendChild(charNode); + } + this.locator && position(this.locator, charNode); + } + }, + skippedEntity: function(name) { + }, + endDocument: function() { + this.doc.normalize(); + }, + setDocumentLocator: function(locator) { + if (this.locator = locator) { + locator.lineNumber = 0; + } + }, + //LexicalHandler + comment: function(chars, start4, length) { + chars = _toString.apply(this, arguments); + var comm = this.doc.createComment(chars); + this.locator && position(this.locator, comm); + appendElement(this, comm); + }, + startCDATA: function() { + this.cdata = true; + }, + endCDATA: function() { + this.cdata = false; + }, + startDTD: function(name, publicId, systemId) { + var impl = this.doc.implementation; + if (impl && impl.createDocumentType) { + var dt = impl.createDocumentType(name, publicId, systemId); + this.locator && position(this.locator, dt); + appendElement(this, dt); + this.doc.doctype = dt; + } + }, + /** + * @see org.xml.sax.ErrorHandler + * @link http://www.saxproject.org/apidoc/org/xml/sax/ErrorHandler.html + */ + warning: function(error) { + console.warn("[xmldom warning] " + error, _locator(this.locator)); + }, + error: function(error) { + console.error("[xmldom error] " + error, _locator(this.locator)); + }, + fatalError: function(error) { + throw new ParseError(error, this.locator); + } + }; + function _locator(l2) { + if (l2) { + return "\n@" + (l2.systemId || "") + "#[line:" + l2.lineNumber + ",col:" + l2.columnNumber + "]"; + } + } + function _toString(chars, start4, length) { + if (typeof chars == "string") { + return chars.substr(start4, length); + } else { + if (chars.length >= start4 + length || start4) { + return new java.lang.String(chars, start4, length) + ""; + } + return chars; + } + } + "endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g, function(key) { + DOMHandler.prototype[key] = function() { + return null; + }; + }); + function appendElement(hander, node) { + if (!hander.currentElement) { + hander.doc.appendChild(node); + } else { + hander.currentElement.appendChild(node); + } + } + exports2.__DOMHandler = DOMHandler; + exports2.normalizeLineEndings = normalizeLineEndings; + exports2.DOMParser = DOMParser; + } +}); + +// ../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/index.js +var require_lib3 = __commonJS({ + "../node_modules/.pnpm/@xmldom+xmldom@0.8.10/node_modules/@xmldom/xmldom/lib/index.js"(exports2) { + var dom = require_dom(); + exports2.DOMImplementation = dom.DOMImplementation; + exports2.XMLSerializer = dom.XMLSerializer; + exports2.DOMParser = require_dom_parser().DOMParser; + } +}); + +// ../node_modules/.pnpm/x2js@3.4.4/node_modules/x2js/x2js.js +var require_x2js = __commonJS({ + "../node_modules/.pnpm/x2js@3.4.4/node_modules/x2js/x2js.js"(exports2, module2) { + (function(root, factory) { + "use strict"; + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof module2 === "object" && module2.exports) { + module2.exports = factory(require_lib3().DOMParser); + } else { + root.X2JS = factory(); + } + })(exports2, function(CustomDOMParser) { + "use strict"; + return function X2JS(config) { + var VERSION4 = "3.4.4"; + config = config || {}; + function initConfigDefaults() { + config.arrayAccessForm = config.arrayAccessForm || "none"; + config.emptyNodeForm = config.emptyNodeForm || "text"; + config.jsAttributeFilter = config.jsAttributeFilter; + config.jsAttributeConverter = config.jsAttributeConverter; + config.attributeConverters = config.attributeConverters || []; + config.datetimeAccessFormPaths = config.datetimeAccessFormPaths || []; + config.arrayAccessFormPaths = config.arrayAccessFormPaths || []; + config.xmldomOptions = config.xmldomOptions || {}; + if (config.enableToStringFunc === void 0) { + config.enableToStringFunc = true; + } + if (config.skipEmptyTextNodesForObj === void 0) { + config.skipEmptyTextNodesForObj = true; + } + if (config.stripWhitespaces === void 0) { + config.stripWhitespaces = true; + } + if (config.useDoubleQuotes === void 0) { + config.useDoubleQuotes = true; + } + if (config.ignoreRoot === void 0) { + config.ignoreRoot = false; + } + if (config.escapeMode === void 0) { + config.escapeMode = true; + } + if (config.attributePrefix === void 0) { + config.attributePrefix = "_"; + } + if (config.selfClosingElements === void 0) { + config.selfClosingElements = true; + } + if (config.keepCData === void 0) { + config.keepCData = false; + } + if (config.keepText === void 0) { + config.keepText = false; + } + if (config.jsDateUTC === void 0) { + config.jsDateUTC = false; + } + } + function initRequiredPolyfills() { + function pad(number) { + var r = String(number); + if (r.length === 1) { + r = "0" + r; + } + return r; + } + if (typeof String.prototype.trim !== "function") { + String.prototype.trim = function trim2() { + return this.replace(/^\s+|^\n+|(\s|\n)+$/g, ""); + }; + } + if (typeof Date.prototype.toISOString !== "function") { + Date.prototype.toISOString = function toISOString() { + var MS_IN_S = 1e3; + return this.getUTCFullYear() + "-" + pad(this.getUTCMonth() + 1) + "-" + pad(this.getUTCDate()) + "T" + pad(this.getUTCHours()) + ":" + pad(this.getUTCMinutes()) + ":" + pad(this.getUTCSeconds()) + "." + String((this.getUTCMilliseconds() / MS_IN_S).toFixed(3)).slice(2, 5) + "Z"; + }; + } + } + initConfigDefaults(); + initRequiredPolyfills(); + var DOMNodeTypes = { + "ELEMENT_NODE": 1, + "TEXT_NODE": 3, + "CDATA_SECTION_NODE": 4, + "COMMENT_NODE": 8, + "DOCUMENT_NODE": 9 + }; + function getDomNodeLocalName(domNode) { + var localName = domNode.localName; + if (localName == null) { + localName = domNode.baseName; + } + if (localName == null || localName === "") { + localName = domNode.nodeName; + } + return localName; + } + function getDomNodeNamespacePrefix(node) { + return node.prefix; + } + function escapeXmlChars(str) { + if (typeof str === "string") + return str.replace(/&/g, "&").replace(//g, ">").replace(/"/g, """).replace(/'/g, "'"); + else + return str; + } + function unescapeXmlChars(str) { + return str.replace(/</g, "<").replace(/>/g, ">").replace(/"/g, '"').replace(/'/g, "'").replace(/&/g, "&"); + } + function ensureProperArrayAccessForm(element, childName, elementPath) { + switch (config.arrayAccessForm) { + case "property": + if (!(element[childName] instanceof Array)) + element[childName + "_asArray"] = [element[childName]]; + else + element[childName + "_asArray"] = element[childName]; + break; + } + if (!(element[childName] instanceof Array) && config.arrayAccessFormPaths.length > 0) { + var match2 = false; + for (var i = 0; i < config.arrayAccessFormPaths.length; i++) { + var arrayPath = config.arrayAccessFormPaths[i]; + if (typeof arrayPath === "string") { + if (arrayPath === elementPath) { + match2 = true; + break; + } + } else if (arrayPath instanceof RegExp) { + if (arrayPath.test(elementPath)) { + match2 = true; + break; + } + } else if (typeof arrayPath === "function") { + if (arrayPath(childName, elementPath)) { + match2 = true; + break; + } + } + } + if (match2) + element[childName] = [element[childName]]; + } + } + function xmlDateTimeToDate(prop) { + var MINUTES_PER_HOUR = 60; + var bits = prop.split(/[-T:+Z]/g); + var d = new Date(bits[0], bits[1] - 1, bits[2]); + var secondBits = bits[5].split("."); + d.setHours(bits[3], bits[4], secondBits[0]); + if (secondBits.length > 1) + d.setMilliseconds(secondBits[1]); + if (bits[6] && bits[7]) { + var offsetMinutes = bits[6] * MINUTES_PER_HOUR + Number(bits[7]); + var sign = /\d\d-\d\d:\d\d$/.test(prop) ? "-" : "+"; + offsetMinutes = 0 + (sign === "-" ? -1 * offsetMinutes : offsetMinutes); + d.setMinutes(d.getMinutes() - offsetMinutes - d.getTimezoneOffset()); + } else if (prop.indexOf("Z", prop.length - 1) !== -1) { + d = new Date(Date.UTC(d.getFullYear(), d.getMonth(), d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds(), d.getMilliseconds())); + } + return d; + } + function convertToDateIfRequired(value, childName, fullPath) { + if (config.datetimeAccessFormPaths.length > 0) { + var pathWithoutTextNode = fullPath.split(".#")[0]; + for (var i = 0; i < config.datetimeAccessFormPaths.length; i++) { + var candidatePath = config.datetimeAccessFormPaths[i]; + if (typeof candidatePath === "string") { + if (candidatePath === pathWithoutTextNode) + return xmlDateTimeToDate(value); + } else if (candidatePath instanceof RegExp) { + if (candidatePath.test(pathWithoutTextNode)) + return xmlDateTimeToDate(value); + } else if (typeof candidatePath === "function") { + if (candidatePath(pathWithoutTextNode)) + return xmlDateTimeToDate(value); + } + } + } + return value; + } + function deserializeRootElementChildren(rootElement) { + var result = {}; + var children = rootElement.childNodes; + for (var i = 0; i < children.length; i++) { + var child = children.item(i); + if (child.nodeType === DOMNodeTypes.ELEMENT_NODE) { + var childName = getDomNodeLocalName(child); + if (config.ignoreRoot) + result = deserializeDomChildren(child, childName); + else + result[childName] = deserializeDomChildren(child, childName); + } + } + return result; + } + function deserializeElementChildren(element, elementPath) { + var result = {}; + result.__cnt = 0; + var nodeChildren = element.childNodes; + for (var iChild = 0; iChild < nodeChildren.length; iChild++) { + var child = nodeChildren.item(iChild); + var childName = getDomNodeLocalName(child); + if (child.nodeType === DOMNodeTypes.COMMENT_NODE) + continue; + result.__cnt++; + if (result[childName] == null) { + result[childName] = deserializeDomChildren(child, elementPath + "." + childName); + ensureProperArrayAccessForm(result, childName, elementPath + "." + childName); + } else { + if (!(result[childName] instanceof Array)) { + result[childName] = [result[childName]]; + ensureProperArrayAccessForm(result, childName, elementPath + "." + childName); + } + result[childName][result[childName].length] = deserializeDomChildren(child, elementPath + "." + childName); + } + } + for (var iAttribute = 0; iAttribute < element.attributes.length; iAttribute++) { + var attribute = element.attributes.item(iAttribute); + result.__cnt++; + var adjustedValue = attribute.value; + for (var iConverter = 0; iConverter < config.attributeConverters.length; iConverter++) { + var converter = config.attributeConverters[iConverter]; + if (converter.test.call(null, attribute.name, attribute.value)) + adjustedValue = converter.convert.call(null, attribute.name, attribute.value); + } + result[config.attributePrefix + attribute.name] = adjustedValue; + } + var namespacePrefix = getDomNodeNamespacePrefix(element); + if (namespacePrefix) { + result.__cnt++; + result.__prefix = namespacePrefix; + } + if (result["#text"]) { + result.__text = result["#text"]; + if (result.__text instanceof Array) { + result.__text = result.__text.join("\n"); + } + if (config.escapeMode) + result.__text = unescapeXmlChars(result.__text); + if (config.stripWhitespaces) + result.__text = result.__text.trim(); + delete result["#text"]; + if (config.arrayAccessForm === "property") + delete result["#text_asArray"]; + result.__text = convertToDateIfRequired(result.__text, "#text", elementPath + ".#text"); + } + if (result.hasOwnProperty("#cdata-section")) { + result.__cdata = result["#cdata-section"]; + delete result["#cdata-section"]; + if (config.arrayAccessForm === "property") + delete result["#cdata-section_asArray"]; + } + if (result.__cnt === 1 && result.__text && !config.keepText) { + result = result.__text; + } else if (result.__cnt === 0 && config.emptyNodeForm === "text") { + result = ""; + } else if (result.__cnt > 1 && result.__text !== void 0 && config.skipEmptyTextNodesForObj) { + if (config.stripWhitespaces && result.__text === "" || result.__text.trim() === "") { + delete result.__text; + } + } + delete result.__cnt; + if (!config.keepCData && (!result.hasOwnProperty("__text") && result.hasOwnProperty("__cdata") && Object.keys(result).length === 1)) { + return result.__cdata ? result.__cdata : ""; + } + if (config.enableToStringFunc && (result.__text || result.__cdata)) { + result.toString = function toString3() { + return (this.__text ? this.__text : "") + (this.__cdata ? this.__cdata : ""); + }; + } + return result; + } + function deserializeDomChildren(node, parentPath) { + if (node.nodeType === DOMNodeTypes.DOCUMENT_NODE) { + return deserializeRootElementChildren(node); + } else if (node.nodeType === DOMNodeTypes.ELEMENT_NODE) { + return deserializeElementChildren(node, parentPath); + } else if (node.nodeType === DOMNodeTypes.TEXT_NODE || node.nodeType === DOMNodeTypes.CDATA_SECTION_NODE) { + return node.nodeValue; + } else { + return null; + } + } + function serializeStartTag(jsObject, elementName, attributeNames, selfClosing) { + var resultStr = "<" + (jsObject && jsObject.__prefix ? jsObject.__prefix + ":" : "") + elementName; + if (attributeNames) { + for (var i = 0; i < attributeNames.length; i++) { + var attributeName = attributeNames[i]; + var attributeValue = jsObject[attributeName]; + if (config.escapeMode) + attributeValue = escapeXmlChars(attributeValue); + resultStr += " " + attributeName.substr(config.attributePrefix.length) + "="; + if (config.useDoubleQuotes) + resultStr += '"' + attributeValue + '"'; + else + resultStr += "'" + attributeValue + "'"; + } + } + if (!selfClosing) + resultStr += ">"; + else + resultStr += " />"; + return resultStr; + } + function serializeEndTag(jsObject, elementName) { + return ""; + } + function endsWith2(str, suffix) { + return str.indexOf(suffix, str.length - suffix.length) !== -1; + } + function isSpecialProperty(jsonObj, propertyName) { + if (config.arrayAccessForm === "property" && endsWith2(propertyName.toString(), "_asArray") || propertyName.toString().indexOf(config.attributePrefix) === 0 || propertyName.toString().indexOf("__") === 0 || jsonObj[propertyName] instanceof Function) + return true; + else + return false; + } + function getDataElementCount(jsObject) { + var count = 0; + if (jsObject instanceof Object) { + for (var propertyName in jsObject) { + if (isSpecialProperty(jsObject, propertyName)) + continue; + count++; + } + } + return count; + } + function getDataAttributeNames(jsObject) { + var names = []; + if (jsObject instanceof Object) { + for (var attributeName in jsObject) { + if (attributeName.toString().indexOf("__") === -1 && attributeName.toString().indexOf(config.attributePrefix) === 0) { + names.push(attributeName); + } + } + } + return names; + } + function serializeComplexTextNodeContents(textNode) { + var result = ""; + if (textNode.__cdata) { + result += ""; + } + if (textNode.__text || typeof textNode.__text === "number" || typeof textNode.__text === "boolean") { + if (config.escapeMode) + result += escapeXmlChars(textNode.__text); + else + result += textNode.__text; + } + return result; + } + function serializeTextNodeContents(textNode) { + var result = ""; + if (textNode instanceof Object) { + result += serializeComplexTextNodeContents(textNode); + } else if (textNode !== null) { + if (config.escapeMode) + result += escapeXmlChars(textNode); + else + result += textNode; + } + return result; + } + function serializeArray(elementArray, elementName, attributes) { + var result = ""; + if (elementArray.length === 0) { + result += serializeStartTag(elementArray, elementName, attributes, true); + } else { + for (var i = 0; i < elementArray.length; i++) { + result += serializeJavaScriptObject(elementArray[i], elementName, getDataAttributeNames(elementArray[i])); + } + } + return result; + } + function serializeJavaScriptObject(element, elementName, attributes) { + var result = ""; + if (config.jsAttributeFilter && config.jsAttributeFilter.call(null, elementName, element)) { + return result; + } + if (config.jsAttributeConverter) { + element = config.jsAttributeConverter.call(null, elementName, element); + } + if ((element === void 0 || element === null || element === "") && config.selfClosingElements) { + result += serializeStartTag(element, elementName, attributes, true); + } else if (typeof element === "object") { + if (Object.prototype.toString.call(element) === "[object Array]") { + result += serializeArray(element, elementName, attributes); + } else if (element instanceof Date) { + result += serializeStartTag(element, elementName, attributes, false); + result += config.jsDateUTC ? element.toUTCString() : element.toISOString(); + result += serializeEndTag(element, elementName); + } else { + var childElementCount = getDataElementCount(element); + if (childElementCount > 0 || typeof element.__text === "number" || typeof element.__text === "boolean" || element.__text || element.__cdata) { + result += serializeStartTag(element, elementName, attributes, false); + result += serializeJavaScriptObjectChildren(element); + result += serializeEndTag(element, elementName); + } else if (config.selfClosingElements) { + result += serializeStartTag(element, elementName, attributes, true); + } else { + result += serializeStartTag(element, elementName, attributes, false); + result += serializeEndTag(element, elementName); + } + } + } else { + result += serializeStartTag(element, elementName, attributes, false); + result += serializeTextNodeContents(element); + result += serializeEndTag(element, elementName); + } + return result; + } + function serializeJavaScriptObjectChildren(jsObject) { + var result = ""; + var elementCount = getDataElementCount(jsObject); + if (elementCount > 0) { + for (var elementName in jsObject) { + if (isSpecialProperty(jsObject, elementName)) + continue; + var element = jsObject[elementName]; + var attributes = getDataAttributeNames(element); + result += serializeJavaScriptObject(element, elementName, attributes); + } + } + result += serializeTextNodeContents(jsObject); + return result; + } + function parseXml(xml) { + if (xml === void 0) { + return null; + } + if (typeof xml !== "string") { + return null; + } + var parser2 = null; + var domNode = null; + if (CustomDOMParser) { + parser2 = new CustomDOMParser(config.xmldomOptions); + domNode = parser2.parseFromString(xml, "text/xml"); + } else if (window && window.DOMParser) { + parser2 = new window.DOMParser(); + var parsererrorNS = null; + var isIEParser = window.ActiveXObject || "ActiveXObject" in window; + if (!isIEParser && document.all && !document.addEventListener) { + try { + parsererrorNS = parser2.parseFromString("INVALID", "text/xml").childNodes[0].namespaceURI; + } catch (err2) { + parsererrorNS = null; + } + } + try { + domNode = parser2.parseFromString(xml, "text/xml"); + if (parsererrorNS !== null && domNode.getElementsByTagNameNS(parsererrorNS, "parsererror").length > 0) { + domNode = null; + } + } catch (err2) { + domNode = null; + } + } else { + if (xml.indexOf("") + 2); + } + domNode = new ActiveXObject("Microsoft.XMLDOM"); + domNode.async = "false"; + domNode.loadXML(xml); + } + return domNode; + } + this.asArray = function asArray2(prop) { + if (prop === void 0 || prop === null) { + return []; + } else if (prop instanceof Array) { + return prop; + } else { + return [prop]; + } + }; + this.toXmlDateTime = function toXmlDateTime(dt) { + if (dt instanceof Date) { + return dt.toISOString(); + } else if (typeof dt === "number") { + return new Date(dt).toISOString(); + } else { + return null; + } + }; + this.asDateTime = function asDateTime(prop) { + if (typeof prop === "string") { + return xmlDateTimeToDate(prop); + } else { + return prop; + } + }; + this.xml2dom = function xml2dom(xml) { + return parseXml(xml); + }; + this.dom2js = function dom2js(domNode) { + return deserializeDomChildren(domNode, null); + }; + this.js2dom = function js2dom(jsObject) { + var xml = this.js2xml(jsObject); + return parseXml(xml); + }; + this.xml2js = function xml2js(xml) { + var domNode = parseXml(xml); + if (domNode != null) + return this.dom2js(domNode); + else + return null; + }; + this.js2xml = function js2xml(jsObject) { + return serializeJavaScriptObjectChildren(jsObject); + }; + this.getVersion = function getVersion() { + return VERSION4; + }; + }; + }); + } +}); + +// ../node_modules/.pnpm/fuzzysort@2.0.4/node_modules/fuzzysort/fuzzysort.js +var require_fuzzysort = __commonJS({ + "../node_modules/.pnpm/fuzzysort@2.0.4/node_modules/fuzzysort/fuzzysort.js"(exports2, module2) { + ((root, UMD) => { + if (typeof define === "function" && define.amd) + define([], UMD); + else if (typeof module2 === "object" && module2.exports) + module2.exports = UMD(); + else + root["fuzzysort"] = UMD(); + })(exports2, (_) => { + "use strict"; + var single = (search, target) => { + if (search == "farzher") + return { target: "farzher was here (^-^*)/", score: 0, _indexes: [0] }; + if (!search || !target) + return NULL; + var preparedSearch = getPreparedSearch(search); + if (!isObj(target)) + target = getPrepared(target); + var searchBitflags = preparedSearch.bitflags; + if ((searchBitflags & target._bitflags) !== searchBitflags) + return NULL; + return algorithm(preparedSearch, target); + }; + var go = (search, targets, options2) => { + if (search == "farzher") + return [{ target: "farzher was here (^-^*)/", score: 0, _indexes: [0], obj: targets ? targets[0] : NULL }]; + if (!search) + return options2 && options2.all ? all3(search, targets, options2) : noResults; + var preparedSearch = getPreparedSearch(search); + var searchBitflags = preparedSearch.bitflags; + var containsSpace = preparedSearch.containsSpace; + var threshold = options2 && options2.threshold || INT_MIN; + var limit = options2 && options2["limit"] || INT_MAX; + var resultsLen = 0; + var limitedCount = 0; + var targetsLen = targets.length; + if (options2 && options2.key) { + var key = options2.key; + for (var i = 0; i < targetsLen; ++i) { + var obj2 = targets[i]; + var target = getValue2(obj2, key); + if (!target) + continue; + if (!isObj(target)) + target = getPrepared(target); + if ((searchBitflags & target._bitflags) !== searchBitflags) + continue; + var result = algorithm(preparedSearch, target); + if (result === NULL) + continue; + if (result.score < threshold) + continue; + result = { target: result.target, _targetLower: "", _targetLowerCodes: NULL, _nextBeginningIndexes: NULL, _bitflags: 0, score: result.score, _indexes: result._indexes, obj: obj2 }; + if (resultsLen < limit) { + q.add(result); + ++resultsLen; + } else { + ++limitedCount; + if (result.score > q.peek().score) + q.replaceTop(result); + } + } + } else if (options2 && options2.keys) { + var scoreFn = options2["scoreFn"] || defaultScoreFn; + var keys = options2.keys; + var keysLen = keys.length; + for (var i = 0; i < targetsLen; ++i) { + var obj2 = targets[i]; + var objResults = new Array(keysLen); + for (var keyI = 0; keyI < keysLen; ++keyI) { + var key = keys[keyI]; + var target = getValue2(obj2, key); + if (!target) { + objResults[keyI] = NULL; + continue; + } + if (!isObj(target)) + target = getPrepared(target); + if ((searchBitflags & target._bitflags) !== searchBitflags) + objResults[keyI] = NULL; + else + objResults[keyI] = algorithm(preparedSearch, target); + } + objResults.obj = obj2; + var score = scoreFn(objResults); + if (score === NULL) + continue; + if (score < threshold) + continue; + objResults.score = score; + if (resultsLen < limit) { + q.add(objResults); + ++resultsLen; + } else { + ++limitedCount; + if (score > q.peek().score) + q.replaceTop(objResults); + } + } + } else { + for (var i = 0; i < targetsLen; ++i) { + var target = targets[i]; + if (!target) + continue; + if (!isObj(target)) + target = getPrepared(target); + if ((searchBitflags & target._bitflags) !== searchBitflags) + continue; + var result = algorithm(preparedSearch, target); + if (result === NULL) + continue; + if (result.score < threshold) + continue; + if (resultsLen < limit) { + q.add(result); + ++resultsLen; + } else { + ++limitedCount; + if (result.score > q.peek().score) + q.replaceTop(result); + } + } + } + if (resultsLen === 0) + return noResults; + var results = new Array(resultsLen); + for (var i = resultsLen - 1; i >= 0; --i) + results[i] = q.poll(); + results.total = resultsLen + limitedCount; + return results; + }; + var highlight2 = (result, hOpen, hClose) => { + if (typeof hOpen === "function") + return highlightCallback(result, hOpen); + if (result === NULL) + return NULL; + if (hOpen === void 0) + hOpen = ""; + if (hClose === void 0) + hClose = ""; + var highlighted = ""; + var matchesIndex = 0; + var opened = false; + var target = result.target; + var targetLen = target.length; + var indexes2 = result._indexes; + indexes2 = indexes2.slice(0, indexes2.len).sort((a, b) => a - b); + for (var i = 0; i < targetLen; ++i) { + var char = target[i]; + if (indexes2[matchesIndex] === i) { + ++matchesIndex; + if (!opened) { + opened = true; + highlighted += hOpen; + } + if (matchesIndex === indexes2.length) { + highlighted += char + hClose + target.substr(i + 1); + break; + } + } else { + if (opened) { + opened = false; + highlighted += hClose; + } + } + highlighted += char; + } + return highlighted; + }; + var highlightCallback = (result, cb) => { + if (result === NULL) + return NULL; + var target = result.target; + var targetLen = target.length; + var indexes2 = result._indexes; + indexes2 = indexes2.slice(0, indexes2.len).sort((a, b) => a - b); + var highlighted = ""; + var matchI = 0; + var indexesI = 0; + var opened = false; + var result = []; + for (var i = 0; i < targetLen; ++i) { + var char = target[i]; + if (indexes2[indexesI] === i) { + ++indexesI; + if (!opened) { + opened = true; + result.push(highlighted); + highlighted = ""; + } + if (indexesI === indexes2.length) { + highlighted += char; + result.push(cb(highlighted, matchI++)); + highlighted = ""; + result.push(target.substr(i + 1)); + break; + } + } else { + if (opened) { + opened = false; + result.push(cb(highlighted, matchI++)); + highlighted = ""; + } + } + highlighted += char; + } + return result; + }; + var indexes = (result) => result._indexes.slice(0, result._indexes.len).sort((a, b) => a - b); + var prepare = (target) => { + if (typeof target !== "string") + target = ""; + var info2 = prepareLowerInfo(target); + return { "target": target, _targetLower: info2._lower, _targetLowerCodes: info2.lowerCodes, _nextBeginningIndexes: NULL, _bitflags: info2.bitflags, "score": NULL, _indexes: [0], "obj": NULL }; + }; + var prepareSearch = (search) => { + if (typeof search !== "string") + search = ""; + search = search.trim(); + var info2 = prepareLowerInfo(search); + var spaceSearches = []; + if (info2.containsSpace) { + var searches = search.split(/\s+/); + searches = [...new Set(searches)]; + for (var i = 0; i < searches.length; i++) { + if (searches[i] === "") + continue; + var _info = prepareLowerInfo(searches[i]); + spaceSearches.push({ lowerCodes: _info.lowerCodes, _lower: searches[i].toLowerCase(), containsSpace: false }); + } + } + return { lowerCodes: info2.lowerCodes, bitflags: info2.bitflags, containsSpace: info2.containsSpace, _lower: info2._lower, spaceSearches }; + }; + var getPrepared = (target) => { + if (target.length > 999) + return prepare(target); + var targetPrepared = preparedCache.get(target); + if (targetPrepared !== void 0) + return targetPrepared; + targetPrepared = prepare(target); + preparedCache.set(target, targetPrepared); + return targetPrepared; + }; + var getPreparedSearch = (search) => { + if (search.length > 999) + return prepareSearch(search); + var searchPrepared = preparedSearchCache.get(search); + if (searchPrepared !== void 0) + return searchPrepared; + searchPrepared = prepareSearch(search); + preparedSearchCache.set(search, searchPrepared); + return searchPrepared; + }; + var all3 = (search, targets, options2) => { + var results = []; + results.total = targets.length; + var limit = options2 && options2.limit || INT_MAX; + if (options2 && options2.key) { + for (var i = 0; i < targets.length; i++) { + var obj2 = targets[i]; + var target = getValue2(obj2, options2.key); + if (!target) + continue; + if (!isObj(target)) + target = getPrepared(target); + target.score = INT_MIN; + target._indexes.len = 0; + var result = target; + result = { target: result.target, _targetLower: "", _targetLowerCodes: NULL, _nextBeginningIndexes: NULL, _bitflags: 0, score: target.score, _indexes: NULL, obj: obj2 }; + results.push(result); + if (results.length >= limit) + return results; + } + } else if (options2 && options2.keys) { + for (var i = 0; i < targets.length; i++) { + var obj2 = targets[i]; + var objResults = new Array(options2.keys.length); + for (var keyI = options2.keys.length - 1; keyI >= 0; --keyI) { + var target = getValue2(obj2, options2.keys[keyI]); + if (!target) { + objResults[keyI] = NULL; + continue; + } + if (!isObj(target)) + target = getPrepared(target); + target.score = INT_MIN; + target._indexes.len = 0; + objResults[keyI] = target; + } + objResults.obj = obj2; + objResults.score = INT_MIN; + results.push(objResults); + if (results.length >= limit) + return results; + } + } else { + for (var i = 0; i < targets.length; i++) { + var target = targets[i]; + if (!target) + continue; + if (!isObj(target)) + target = getPrepared(target); + target.score = INT_MIN; + target._indexes.len = 0; + results.push(target); + if (results.length >= limit) + return results; + } + } + return results; + }; + var algorithm = (preparedSearch, prepared, allowSpaces = false) => { + if (allowSpaces === false && preparedSearch.containsSpace) + return algorithmSpaces(preparedSearch, prepared); + var searchLower = preparedSearch._lower; + var searchLowerCodes = preparedSearch.lowerCodes; + var searchLowerCode = searchLowerCodes[0]; + var targetLowerCodes = prepared._targetLowerCodes; + var searchLen = searchLowerCodes.length; + var targetLen = targetLowerCodes.length; + var searchI = 0; + var targetI = 0; + var matchesSimpleLen = 0; + for (; ; ) { + var isMatch = searchLowerCode === targetLowerCodes[targetI]; + if (isMatch) { + matchesSimple[matchesSimpleLen++] = targetI; + ++searchI; + if (searchI === searchLen) + break; + searchLowerCode = searchLowerCodes[searchI]; + } + ++targetI; + if (targetI >= targetLen) + return NULL; + } + var searchI = 0; + var successStrict = false; + var matchesStrictLen = 0; + var nextBeginningIndexes = prepared._nextBeginningIndexes; + if (nextBeginningIndexes === NULL) + nextBeginningIndexes = prepared._nextBeginningIndexes = prepareNextBeginningIndexes(prepared.target); + var firstPossibleI = targetI = matchesSimple[0] === 0 ? 0 : nextBeginningIndexes[matchesSimple[0] - 1]; + var backtrackCount = 0; + if (targetI !== targetLen) + for (; ; ) { + if (targetI >= targetLen) { + if (searchI <= 0) + break; + ++backtrackCount; + if (backtrackCount > 200) + break; + --searchI; + var lastMatch = matchesStrict[--matchesStrictLen]; + targetI = nextBeginningIndexes[lastMatch]; + } else { + var isMatch = searchLowerCodes[searchI] === targetLowerCodes[targetI]; + if (isMatch) { + matchesStrict[matchesStrictLen++] = targetI; + ++searchI; + if (searchI === searchLen) { + successStrict = true; + break; + } + ++targetI; + } else { + targetI = nextBeginningIndexes[targetI]; + } + } + } + var substringIndex = prepared._targetLower.indexOf(searchLower, matchesSimple[0]); + var isSubstring = ~substringIndex; + if (isSubstring && !successStrict) { + for (var i = 0; i < matchesSimpleLen; ++i) + matchesSimple[i] = substringIndex + i; + } + var isSubstringBeginning = false; + if (isSubstring) { + isSubstringBeginning = prepared._nextBeginningIndexes[substringIndex - 1] === substringIndex; + } + { + if (successStrict) { + var matchesBest = matchesStrict; + var matchesBestLen = matchesStrictLen; + } else { + var matchesBest = matchesSimple; + var matchesBestLen = matchesSimpleLen; + } + var score = 0; + var extraMatchGroupCount = 0; + for (var i = 1; i < searchLen; ++i) { + if (matchesBest[i] - matchesBest[i - 1] !== 1) { + score -= matchesBest[i]; + ++extraMatchGroupCount; + } + } + var unmatchedDistance = matchesBest[searchLen - 1] - matchesBest[0] - (searchLen - 1); + score -= (12 + unmatchedDistance) * extraMatchGroupCount; + if (matchesBest[0] !== 0) + score -= matchesBest[0] * matchesBest[0] * 0.2; + if (!successStrict) { + score *= 1e3; + } else { + var uniqueBeginningIndexes = 1; + for (var i = nextBeginningIndexes[0]; i < targetLen; i = nextBeginningIndexes[i]) + ++uniqueBeginningIndexes; + if (uniqueBeginningIndexes > 24) + score *= (uniqueBeginningIndexes - 24) * 10; + } + if (isSubstring) + score /= 1 + searchLen * searchLen * 1; + if (isSubstringBeginning) + score /= 1 + searchLen * searchLen * 1; + score -= targetLen - searchLen; + prepared.score = score; + for (var i = 0; i < matchesBestLen; ++i) + prepared._indexes[i] = matchesBest[i]; + prepared._indexes.len = matchesBestLen; + return prepared; + } + }; + var algorithmSpaces = (preparedSearch, target) => { + var seen_indexes = /* @__PURE__ */ new Set(); + var score = 0; + var result = NULL; + var first_seen_index_last_search = 0; + var searches = preparedSearch.spaceSearches; + for (var i = 0; i < searches.length; ++i) { + var search = searches[i]; + result = algorithm(search, target); + if (result === NULL) + return NULL; + score += result.score; + if (result._indexes[0] < first_seen_index_last_search) { + score -= first_seen_index_last_search - result._indexes[0]; + } + first_seen_index_last_search = result._indexes[0]; + for (var j = 0; j < result._indexes.len; ++j) + seen_indexes.add(result._indexes[j]); + } + var allowSpacesResult = algorithm( + preparedSearch, + target, + /*allowSpaces=*/ + true + ); + if (allowSpacesResult !== NULL && allowSpacesResult.score > score) { + return allowSpacesResult; + } + result.score = score; + var i = 0; + for (let index of seen_indexes) + result._indexes[i++] = index; + result._indexes.len = i; + return result; + }; + var prepareLowerInfo = (str) => { + var strLen = str.length; + var lower = str.toLowerCase(); + var lowerCodes = []; + var bitflags = 0; + var containsSpace = false; + for (var i = 0; i < strLen; ++i) { + var lowerCode = lowerCodes[i] = lower.charCodeAt(i); + if (lowerCode === 32) { + containsSpace = true; + continue; + } + var bit = lowerCode >= 97 && lowerCode <= 122 ? lowerCode - 97 : lowerCode >= 48 && lowerCode <= 57 ? 26 : lowerCode <= 127 ? 30 : 31; + bitflags |= 1 << bit; + } + return { lowerCodes, bitflags, containsSpace, _lower: lower }; + }; + var prepareBeginningIndexes = (target) => { + var targetLen = target.length; + var beginningIndexes = []; + var beginningIndexesLen = 0; + var wasUpper = false; + var wasAlphanum = false; + for (var i = 0; i < targetLen; ++i) { + var targetCode = target.charCodeAt(i); + var isUpper = targetCode >= 65 && targetCode <= 90; + var isAlphanum = isUpper || targetCode >= 97 && targetCode <= 122 || targetCode >= 48 && targetCode <= 57; + var isBeginning = isUpper && !wasUpper || !wasAlphanum || !isAlphanum; + wasUpper = isUpper; + wasAlphanum = isAlphanum; + if (isBeginning) + beginningIndexes[beginningIndexesLen++] = i; + } + return beginningIndexes; + }; + var prepareNextBeginningIndexes = (target) => { + var targetLen = target.length; + var beginningIndexes = prepareBeginningIndexes(target); + var nextBeginningIndexes = []; + var lastIsBeginning = beginningIndexes[0]; + var lastIsBeginningI = 0; + for (var i = 0; i < targetLen; ++i) { + if (lastIsBeginning > i) { + nextBeginningIndexes[i] = lastIsBeginning; + } else { + lastIsBeginning = beginningIndexes[++lastIsBeginningI]; + nextBeginningIndexes[i] = lastIsBeginning === void 0 ? targetLen : lastIsBeginning; + } + } + return nextBeginningIndexes; + }; + var cleanup = () => { + preparedCache.clear(); + preparedSearchCache.clear(); + matchesSimple = []; + matchesStrict = []; + }; + var preparedCache = /* @__PURE__ */ new Map(); + var preparedSearchCache = /* @__PURE__ */ new Map(); + var matchesSimple = []; + var matchesStrict = []; + var defaultScoreFn = (a) => { + var max = INT_MIN; + var len = a.length; + for (var i = 0; i < len; ++i) { + var result = a[i]; + if (result === NULL) + continue; + var score = result.score; + if (score > max) + max = score; + } + if (max === INT_MIN) + return NULL; + return max; + }; + var getValue2 = (obj2, prop) => { + var tmp = obj2[prop]; + if (tmp !== void 0) + return tmp; + var segs = prop; + if (!Array.isArray(prop)) + segs = prop.split("."); + var len = segs.length; + var i = -1; + while (obj2 && ++i < len) + obj2 = obj2[segs[i]]; + return obj2; + }; + var isObj = (x) => { + return typeof x === "object"; + }; + var INT_MAX = Infinity; + var INT_MIN = -INT_MAX; + var noResults = []; + noResults.total = 0; + var NULL = null; + var fastpriorityqueue = (r) => { + var e = [], o = 0, a = {}, v = (r2) => { + for (var a2 = 0, v2 = e[a2], c = 1; c < o; ) { + var s = c + 1; + a2 = c, s < o && e[s].score < e[c].score && (a2 = s), e[a2 - 1 >> 1] = e[a2], c = 1 + (a2 << 1); + } + for (var f = a2 - 1 >> 1; a2 > 0 && v2.score < e[f].score; f = (a2 = f) - 1 >> 1) + e[a2] = e[f]; + e[a2] = v2; + }; + return a.add = (r2) => { + var a2 = o; + e[o++] = r2; + for (var v2 = a2 - 1 >> 1; a2 > 0 && r2.score < e[v2].score; v2 = (a2 = v2) - 1 >> 1) + e[a2] = e[v2]; + e[a2] = r2; + }, a.poll = (r2) => { + if (0 !== o) { + var a2 = e[0]; + return e[0] = e[--o], v(), a2; + } + }, a.peek = (r2) => { + if (0 !== o) + return e[0]; + }, a.replaceTop = (r2) => { + e[0] = r2, v(); + }, a; + }; + var q = fastpriorityqueue(); + return { "single": single, "go": go, "highlight": highlight2, "prepare": prepare, "indexes": indexes, "cleanup": cleanup }; + }); + } +}); + +// ../node_modules/.pnpm/dompurify@3.0.4/node_modules/dompurify/dist/purify.cjs.js +var require_purify_cjs = __commonJS({ + "../node_modules/.pnpm/dompurify@3.0.4/node_modules/dompurify/dist/purify.cjs.js"(exports2, module2) { + "use strict"; + var { + entries, + setPrototypeOf, + isFrozen, + getPrototypeOf: getPrototypeOf2, + getOwnPropertyDescriptor + } = Object; + var { + freeze, + seal, + create: create2 + } = Object; + var { + apply, + construct + } = typeof Reflect !== "undefined" && Reflect; + if (!apply) { + apply = function apply2(fun, thisValue, args3) { + return fun.apply(thisValue, args3); + }; + } + if (!freeze) { + freeze = function freeze2(x) { + return x; + }; + } + if (!seal) { + seal = function seal2(x) { + return x; + }; + } + if (!construct) { + construct = function construct2(Func, args3) { + return new Func(...args3); + }; + } + var arrayForEach = unapply(Array.prototype.forEach); + var arrayPop = unapply(Array.prototype.pop); + var arrayPush = unapply(Array.prototype.push); + var stringToLowerCase = unapply(String.prototype.toLowerCase); + var stringToString = unapply(String.prototype.toString); + var stringMatch = unapply(String.prototype.match); + var stringReplace = unapply(String.prototype.replace); + var stringIndexOf = unapply(String.prototype.indexOf); + var stringTrim = unapply(String.prototype.trim); + var regExpTest = unapply(RegExp.prototype.test); + var typeErrorCreate = unconstruct(TypeError); + function unapply(func2) { + return function(thisArg) { + for (var _len = arguments.length, args3 = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args3[_key - 1] = arguments[_key]; + } + return apply(func2, thisArg, args3); + }; + } + function unconstruct(func2) { + return function() { + for (var _len2 = arguments.length, args3 = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { + args3[_key2] = arguments[_key2]; + } + return construct(func2, args3); + }; + } + function addToSet(set, array, transformCaseFunc) { + var _transformCaseFunc; + transformCaseFunc = (_transformCaseFunc = transformCaseFunc) !== null && _transformCaseFunc !== void 0 ? _transformCaseFunc : stringToLowerCase; + if (setPrototypeOf) { + setPrototypeOf(set, null); + } + let l2 = array.length; + while (l2--) { + let element = array[l2]; + if (typeof element === "string") { + const lcElement = transformCaseFunc(element); + if (lcElement !== element) { + if (!isFrozen(array)) { + array[l2] = lcElement; + } + element = lcElement; + } + } + set[element] = true; + } + return set; + } + function clone(object) { + const newObject = create2(null); + for (const [property, value] of entries(object)) { + newObject[property] = value; + } + return newObject; + } + function lookupGetter(object, prop) { + while (object !== null) { + const desc = getOwnPropertyDescriptor(object, prop); + if (desc) { + if (desc.get) { + return unapply(desc.get); + } + if (typeof desc.value === "function") { + return unapply(desc.value); + } + } + object = getPrototypeOf2(object); + } + function fallbackValue(element) { + console.warn("fallback value for", element); + return null; + } + return fallbackValue; + } + var html$1 = freeze(["a", "abbr", "acronym", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "content", "data", "datalist", "dd", "decorator", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "element", "em", "fieldset", "figcaption", "figure", "font", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "marquee", "menu", "menuitem", "meter", "nav", "nobr", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "section", "select", "shadow", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "track", "tt", "u", "ul", "var", "video", "wbr"]); + var svg$1 = freeze(["svg", "a", "altglyph", "altglyphdef", "altglyphitem", "animatecolor", "animatemotion", "animatetransform", "circle", "clippath", "defs", "desc", "ellipse", "filter", "font", "g", "glyph", "glyphref", "hkern", "image", "line", "lineargradient", "marker", "mask", "metadata", "mpath", "path", "pattern", "polygon", "polyline", "radialgradient", "rect", "stop", "style", "switch", "symbol", "text", "textpath", "title", "tref", "tspan", "view", "vkern"]); + var svgFilters = freeze(["feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence"]); + var svgDisallowed = freeze(["animate", "color-profile", "cursor", "discard", "font-face", "font-face-format", "font-face-name", "font-face-src", "font-face-uri", "foreignobject", "hatch", "hatchpath", "mesh", "meshgradient", "meshpatch", "meshrow", "missing-glyph", "script", "set", "solidcolor", "unknown", "use"]); + var mathMl$1 = freeze(["math", "menclose", "merror", "mfenced", "mfrac", "mglyph", "mi", "mlabeledtr", "mmultiscripts", "mn", "mo", "mover", "mpadded", "mphantom", "mroot", "mrow", "ms", "mspace", "msqrt", "mstyle", "msub", "msup", "msubsup", "mtable", "mtd", "mtext", "mtr", "munder", "munderover", "mprescripts"]); + var mathMlDisallowed = freeze(["maction", "maligngroup", "malignmark", "mlongdiv", "mscarries", "mscarry", "msgroup", "mstack", "msline", "msrow", "semantics", "annotation", "annotation-xml", "mprescripts", "none"]); + var text = freeze(["#text"]); + var html = freeze(["accept", "action", "align", "alt", "autocapitalize", "autocomplete", "autopictureinpicture", "autoplay", "background", "bgcolor", "border", "capture", "cellpadding", "cellspacing", "checked", "cite", "class", "clear", "color", "cols", "colspan", "controls", "controlslist", "coords", "crossorigin", "datetime", "decoding", "default", "dir", "disabled", "disablepictureinpicture", "disableremoteplayback", "download", "draggable", "enctype", "enterkeyhint", "face", "for", "headers", "height", "hidden", "high", "href", "hreflang", "id", "inputmode", "integrity", "ismap", "kind", "label", "lang", "list", "loading", "loop", "low", "max", "maxlength", "media", "method", "min", "minlength", "multiple", "muted", "name", "nonce", "noshade", "novalidate", "nowrap", "open", "optimum", "pattern", "placeholder", "playsinline", "poster", "preload", "pubdate", "radiogroup", "readonly", "rel", "required", "rev", "reversed", "role", "rows", "rowspan", "spellcheck", "scope", "selected", "shape", "size", "sizes", "span", "srclang", "start", "src", "srcset", "step", "style", "summary", "tabindex", "title", "translate", "type", "usemap", "valign", "value", "width", "xmlns", "slot"]); + var svg = freeze(["accent-height", "accumulate", "additive", "alignment-baseline", "ascent", "attributename", "attributetype", "azimuth", "basefrequency", "baseline-shift", "begin", "bias", "by", "class", "clip", "clippathunits", "clip-path", "clip-rule", "color", "color-interpolation", "color-interpolation-filters", "color-profile", "color-rendering", "cx", "cy", "d", "dx", "dy", "diffuseconstant", "direction", "display", "divisor", "dur", "edgemode", "elevation", "end", "fill", "fill-opacity", "fill-rule", "filter", "filterunits", "flood-color", "flood-opacity", "font-family", "font-size", "font-size-adjust", "font-stretch", "font-style", "font-variant", "font-weight", "fx", "fy", "g1", "g2", "glyph-name", "glyphref", "gradientunits", "gradienttransform", "height", "href", "id", "image-rendering", "in", "in2", "k", "k1", "k2", "k3", "k4", "kerning", "keypoints", "keysplines", "keytimes", "lang", "lengthadjust", "letter-spacing", "kernelmatrix", "kernelunitlength", "lighting-color", "local", "marker-end", "marker-mid", "marker-start", "markerheight", "markerunits", "markerwidth", "maskcontentunits", "maskunits", "max", "mask", "media", "method", "mode", "min", "name", "numoctaves", "offset", "operator", "opacity", "order", "orient", "orientation", "origin", "overflow", "paint-order", "path", "pathlength", "patterncontentunits", "patterntransform", "patternunits", "points", "preservealpha", "preserveaspectratio", "primitiveunits", "r", "rx", "ry", "radius", "refx", "refy", "repeatcount", "repeatdur", "restart", "result", "rotate", "scale", "seed", "shape-rendering", "specularconstant", "specularexponent", "spreadmethod", "startoffset", "stddeviation", "stitchtiles", "stop-color", "stop-opacity", "stroke-dasharray", "stroke-dashoffset", "stroke-linecap", "stroke-linejoin", "stroke-miterlimit", "stroke-opacity", "stroke", "stroke-width", "style", "surfacescale", "systemlanguage", "tabindex", "targetx", "targety", "transform", "transform-origin", "text-anchor", "text-decoration", "text-rendering", "textlength", "type", "u1", "u2", "unicode", "values", "viewbox", "visibility", "version", "vert-adv-y", "vert-origin-x", "vert-origin-y", "width", "word-spacing", "wrap", "writing-mode", "xchannelselector", "ychannelselector", "x", "x1", "x2", "xmlns", "y", "y1", "y2", "z", "zoomandpan"]); + var mathMl = freeze(["accent", "accentunder", "align", "bevelled", "close", "columnsalign", "columnlines", "columnspan", "denomalign", "depth", "dir", "display", "displaystyle", "encoding", "fence", "frame", "height", "href", "id", "largeop", "length", "linethickness", "lspace", "lquote", "mathbackground", "mathcolor", "mathsize", "mathvariant", "maxsize", "minsize", "movablelimits", "notation", "numalign", "open", "rowalign", "rowlines", "rowspacing", "rowspan", "rspace", "rquote", "scriptlevel", "scriptminsize", "scriptsizemultiplier", "selection", "separator", "separators", "stretchy", "subscriptshift", "supscriptshift", "symmetric", "voffset", "width", "xmlns"]); + var xml = freeze(["xlink:href", "xml:id", "xlink:title", "xml:space", "xmlns:xlink"]); + var MUSTACHE_EXPR = seal(/\{\{[\w\W]*|[\w\W]*\}\}/gm); + var ERB_EXPR = seal(/<%[\w\W]*|[\w\W]*%>/gm); + var TMPLIT_EXPR = seal(/\${[\w\W]*}/gm); + var DATA_ATTR = seal(/^data-[\-\w.\u00B7-\uFFFF]/); + var ARIA_ATTR = seal(/^aria-[\-\w]+$/); + var IS_ALLOWED_URI = seal( + /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i + // eslint-disable-line no-useless-escape + ); + var IS_SCRIPT_OR_DATA = seal(/^(?:\w+script|data):/i); + var ATTR_WHITESPACE = seal( + /[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g + // eslint-disable-line no-control-regex + ); + var DOCTYPE_NAME = seal(/^html$/i); + var EXPRESSIONS = /* @__PURE__ */ Object.freeze({ + __proto__: null, + MUSTACHE_EXPR, + ERB_EXPR, + TMPLIT_EXPR, + DATA_ATTR, + ARIA_ATTR, + IS_ALLOWED_URI, + IS_SCRIPT_OR_DATA, + ATTR_WHITESPACE, + DOCTYPE_NAME + }); + var getGlobal = () => typeof window === "undefined" ? null : window; + var _createTrustedTypesPolicy = function _createTrustedTypesPolicy2(trustedTypes, purifyHostElement) { + if (typeof trustedTypes !== "object" || typeof trustedTypes.createPolicy !== "function") { + return null; + } + let suffix = null; + const ATTR_NAME = "data-tt-policy-suffix"; + if (purifyHostElement && purifyHostElement.hasAttribute(ATTR_NAME)) { + suffix = purifyHostElement.getAttribute(ATTR_NAME); + } + const policyName = "dompurify" + (suffix ? "#" + suffix : ""); + try { + return trustedTypes.createPolicy(policyName, { + createHTML(html2) { + return html2; + }, + createScriptURL(scriptUrl) { + return scriptUrl; + } + }); + } catch (_) { + console.warn("TrustedTypes policy " + policyName + " could not be created."); + return null; + } + }; + function createDOMPurify() { + let window3 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : getGlobal(); + const DOMPurify2 = (root) => createDOMPurify(root); + DOMPurify2.version = "3.0.4"; + DOMPurify2.removed = []; + if (!window3 || !window3.document || window3.document.nodeType !== 9) { + DOMPurify2.isSupported = false; + return DOMPurify2; + } + const originalDocument = window3.document; + const currentScript = originalDocument.currentScript; + let { + document: document2 + } = window3; + const { + DocumentFragment, + HTMLTemplateElement, + Node: Node2, + Element: Element2, + NodeFilter, + NamedNodeMap = window3.NamedNodeMap || window3.MozNamedAttrMap, + HTMLFormElement, + DOMParser, + trustedTypes + } = window3; + const ElementPrototype = Element2.prototype; + const cloneNode = lookupGetter(ElementPrototype, "cloneNode"); + const getNextSibling = lookupGetter(ElementPrototype, "nextSibling"); + const getChildNodes = lookupGetter(ElementPrototype, "childNodes"); + const getParentNode = lookupGetter(ElementPrototype, "parentNode"); + if (typeof HTMLTemplateElement === "function") { + const template = document2.createElement("template"); + if (template.content && template.content.ownerDocument) { + document2 = template.content.ownerDocument; + } + } + let trustedTypesPolicy; + let emptyHTML = ""; + const { + implementation, + createNodeIterator, + createDocumentFragment, + getElementsByTagName + } = document2; + const { + importNode + } = originalDocument; + let hooks = {}; + DOMPurify2.isSupported = typeof entries === "function" && typeof getParentNode === "function" && implementation && implementation.createHTMLDocument !== void 0; + const { + MUSTACHE_EXPR: MUSTACHE_EXPR2, + ERB_EXPR: ERB_EXPR2, + TMPLIT_EXPR: TMPLIT_EXPR2, + DATA_ATTR: DATA_ATTR2, + ARIA_ATTR: ARIA_ATTR2, + IS_SCRIPT_OR_DATA: IS_SCRIPT_OR_DATA2, + ATTR_WHITESPACE: ATTR_WHITESPACE2 + } = EXPRESSIONS; + let { + IS_ALLOWED_URI: IS_ALLOWED_URI$1 + } = EXPRESSIONS; + let ALLOWED_TAGS = null; + const DEFAULT_ALLOWED_TAGS = addToSet({}, [...html$1, ...svg$1, ...svgFilters, ...mathMl$1, ...text]); + let ALLOWED_ATTR = null; + const DEFAULT_ALLOWED_ATTR = addToSet({}, [...html, ...svg, ...mathMl, ...xml]); + let CUSTOM_ELEMENT_HANDLING = Object.seal(Object.create(null, { + tagNameCheck: { + writable: true, + configurable: false, + enumerable: true, + value: null + }, + attributeNameCheck: { + writable: true, + configurable: false, + enumerable: true, + value: null + }, + allowCustomizedBuiltInElements: { + writable: true, + configurable: false, + enumerable: true, + value: false + } + })); + let FORBID_TAGS = null; + let FORBID_ATTR = null; + let ALLOW_ARIA_ATTR = true; + let ALLOW_DATA_ATTR = true; + let ALLOW_UNKNOWN_PROTOCOLS = false; + let ALLOW_SELF_CLOSE_IN_ATTR = true; + let SAFE_FOR_TEMPLATES = false; + let WHOLE_DOCUMENT = false; + let SET_CONFIG = false; + let FORCE_BODY = false; + let RETURN_DOM = false; + let RETURN_DOM_FRAGMENT = false; + let RETURN_TRUSTED_TYPE = false; + let SANITIZE_DOM = true; + let SANITIZE_NAMED_PROPS = false; + const SANITIZE_NAMED_PROPS_PREFIX = "user-content-"; + let KEEP_CONTENT = true; + let IN_PLACE = false; + let USE_PROFILES = {}; + let FORBID_CONTENTS = null; + const DEFAULT_FORBID_CONTENTS = addToSet({}, ["annotation-xml", "audio", "colgroup", "desc", "foreignobject", "head", "iframe", "math", "mi", "mn", "mo", "ms", "mtext", "noembed", "noframes", "noscript", "plaintext", "script", "style", "svg", "template", "thead", "title", "video", "xmp"]); + let DATA_URI_TAGS = null; + const DEFAULT_DATA_URI_TAGS = addToSet({}, ["audio", "video", "img", "source", "image", "track"]); + let URI_SAFE_ATTRIBUTES = null; + const DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, ["alt", "class", "for", "id", "label", "name", "pattern", "placeholder", "role", "summary", "title", "value", "style", "xmlns"]); + const MATHML_NAMESPACE = "http://www.w3.org/1998/Math/MathML"; + const SVG_NAMESPACE = "http://www.w3.org/2000/svg"; + const HTML_NAMESPACE = "http://www.w3.org/1999/xhtml"; + let NAMESPACE = HTML_NAMESPACE; + let IS_EMPTY_INPUT = false; + let ALLOWED_NAMESPACES = null; + const DEFAULT_ALLOWED_NAMESPACES = addToSet({}, [MATHML_NAMESPACE, SVG_NAMESPACE, HTML_NAMESPACE], stringToString); + let PARSER_MEDIA_TYPE; + const SUPPORTED_PARSER_MEDIA_TYPES = ["application/xhtml+xml", "text/html"]; + const DEFAULT_PARSER_MEDIA_TYPE = "text/html"; + let transformCaseFunc; + let CONFIG = null; + const formElement = document2.createElement("form"); + const isRegexOrFunction = function isRegexOrFunction2(testValue) { + return testValue instanceof RegExp || testValue instanceof Function; + }; + const _parseConfig = function _parseConfig2(cfg) { + if (CONFIG && CONFIG === cfg) { + return; + } + if (!cfg || typeof cfg !== "object") { + cfg = {}; + } + cfg = clone(cfg); + PARSER_MEDIA_TYPE = // eslint-disable-next-line unicorn/prefer-includes + SUPPORTED_PARSER_MEDIA_TYPES.indexOf(cfg.PARSER_MEDIA_TYPE) === -1 ? PARSER_MEDIA_TYPE = DEFAULT_PARSER_MEDIA_TYPE : PARSER_MEDIA_TYPE = cfg.PARSER_MEDIA_TYPE; + transformCaseFunc = PARSER_MEDIA_TYPE === "application/xhtml+xml" ? stringToString : stringToLowerCase; + ALLOWED_TAGS = "ALLOWED_TAGS" in cfg ? addToSet({}, cfg.ALLOWED_TAGS, transformCaseFunc) : DEFAULT_ALLOWED_TAGS; + ALLOWED_ATTR = "ALLOWED_ATTR" in cfg ? addToSet({}, cfg.ALLOWED_ATTR, transformCaseFunc) : DEFAULT_ALLOWED_ATTR; + ALLOWED_NAMESPACES = "ALLOWED_NAMESPACES" in cfg ? addToSet({}, cfg.ALLOWED_NAMESPACES, stringToString) : DEFAULT_ALLOWED_NAMESPACES; + URI_SAFE_ATTRIBUTES = "ADD_URI_SAFE_ATTR" in cfg ? addToSet( + clone(DEFAULT_URI_SAFE_ATTRIBUTES), + // eslint-disable-line indent + cfg.ADD_URI_SAFE_ATTR, + // eslint-disable-line indent + transformCaseFunc + // eslint-disable-line indent + ) : DEFAULT_URI_SAFE_ATTRIBUTES; + DATA_URI_TAGS = "ADD_DATA_URI_TAGS" in cfg ? addToSet( + clone(DEFAULT_DATA_URI_TAGS), + // eslint-disable-line indent + cfg.ADD_DATA_URI_TAGS, + // eslint-disable-line indent + transformCaseFunc + // eslint-disable-line indent + ) : DEFAULT_DATA_URI_TAGS; + FORBID_CONTENTS = "FORBID_CONTENTS" in cfg ? addToSet({}, cfg.FORBID_CONTENTS, transformCaseFunc) : DEFAULT_FORBID_CONTENTS; + FORBID_TAGS = "FORBID_TAGS" in cfg ? addToSet({}, cfg.FORBID_TAGS, transformCaseFunc) : {}; + FORBID_ATTR = "FORBID_ATTR" in cfg ? addToSet({}, cfg.FORBID_ATTR, transformCaseFunc) : {}; + USE_PROFILES = "USE_PROFILES" in cfg ? cfg.USE_PROFILES : false; + ALLOW_ARIA_ATTR = cfg.ALLOW_ARIA_ATTR !== false; + ALLOW_DATA_ATTR = cfg.ALLOW_DATA_ATTR !== false; + ALLOW_UNKNOWN_PROTOCOLS = cfg.ALLOW_UNKNOWN_PROTOCOLS || false; + ALLOW_SELF_CLOSE_IN_ATTR = cfg.ALLOW_SELF_CLOSE_IN_ATTR !== false; + SAFE_FOR_TEMPLATES = cfg.SAFE_FOR_TEMPLATES || false; + WHOLE_DOCUMENT = cfg.WHOLE_DOCUMENT || false; + RETURN_DOM = cfg.RETURN_DOM || false; + RETURN_DOM_FRAGMENT = cfg.RETURN_DOM_FRAGMENT || false; + RETURN_TRUSTED_TYPE = cfg.RETURN_TRUSTED_TYPE || false; + FORCE_BODY = cfg.FORCE_BODY || false; + SANITIZE_DOM = cfg.SANITIZE_DOM !== false; + SANITIZE_NAMED_PROPS = cfg.SANITIZE_NAMED_PROPS || false; + KEEP_CONTENT = cfg.KEEP_CONTENT !== false; + IN_PLACE = cfg.IN_PLACE || false; + IS_ALLOWED_URI$1 = cfg.ALLOWED_URI_REGEXP || IS_ALLOWED_URI; + NAMESPACE = cfg.NAMESPACE || HTML_NAMESPACE; + CUSTOM_ELEMENT_HANDLING = cfg.CUSTOM_ELEMENT_HANDLING || {}; + if (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck)) { + CUSTOM_ELEMENT_HANDLING.tagNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck; + } + if (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)) { + CUSTOM_ELEMENT_HANDLING.attributeNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck; + } + if (cfg.CUSTOM_ELEMENT_HANDLING && typeof cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements === "boolean") { + CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements = cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements; + } + if (SAFE_FOR_TEMPLATES) { + ALLOW_DATA_ATTR = false; + } + if (RETURN_DOM_FRAGMENT) { + RETURN_DOM = true; + } + if (USE_PROFILES) { + ALLOWED_TAGS = addToSet({}, [...text]); + ALLOWED_ATTR = []; + if (USE_PROFILES.html === true) { + addToSet(ALLOWED_TAGS, html$1); + addToSet(ALLOWED_ATTR, html); + } + if (USE_PROFILES.svg === true) { + addToSet(ALLOWED_TAGS, svg$1); + addToSet(ALLOWED_ATTR, svg); + addToSet(ALLOWED_ATTR, xml); + } + if (USE_PROFILES.svgFilters === true) { + addToSet(ALLOWED_TAGS, svgFilters); + addToSet(ALLOWED_ATTR, svg); + addToSet(ALLOWED_ATTR, xml); + } + if (USE_PROFILES.mathMl === true) { + addToSet(ALLOWED_TAGS, mathMl$1); + addToSet(ALLOWED_ATTR, mathMl); + addToSet(ALLOWED_ATTR, xml); + } + } + if (cfg.ADD_TAGS) { + if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) { + ALLOWED_TAGS = clone(ALLOWED_TAGS); + } + addToSet(ALLOWED_TAGS, cfg.ADD_TAGS, transformCaseFunc); + } + if (cfg.ADD_ATTR) { + if (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) { + ALLOWED_ATTR = clone(ALLOWED_ATTR); + } + addToSet(ALLOWED_ATTR, cfg.ADD_ATTR, transformCaseFunc); + } + if (cfg.ADD_URI_SAFE_ATTR) { + addToSet(URI_SAFE_ATTRIBUTES, cfg.ADD_URI_SAFE_ATTR, transformCaseFunc); + } + if (cfg.FORBID_CONTENTS) { + if (FORBID_CONTENTS === DEFAULT_FORBID_CONTENTS) { + FORBID_CONTENTS = clone(FORBID_CONTENTS); + } + addToSet(FORBID_CONTENTS, cfg.FORBID_CONTENTS, transformCaseFunc); + } + if (KEEP_CONTENT) { + ALLOWED_TAGS["#text"] = true; + } + if (WHOLE_DOCUMENT) { + addToSet(ALLOWED_TAGS, ["html", "head", "body"]); + } + if (ALLOWED_TAGS.table) { + addToSet(ALLOWED_TAGS, ["tbody"]); + delete FORBID_TAGS.tbody; + } + if (cfg.TRUSTED_TYPES_POLICY) { + if (typeof cfg.TRUSTED_TYPES_POLICY.createHTML !== "function") { + throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.'); + } + if (typeof cfg.TRUSTED_TYPES_POLICY.createScriptURL !== "function") { + throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.'); + } + trustedTypesPolicy = cfg.TRUSTED_TYPES_POLICY; + emptyHTML = trustedTypesPolicy.createHTML(""); + } else { + if (trustedTypesPolicy === void 0) { + trustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, currentScript); + } + if (trustedTypesPolicy !== null && typeof emptyHTML === "string") { + emptyHTML = trustedTypesPolicy.createHTML(""); + } + } + if (freeze) { + freeze(cfg); + } + CONFIG = cfg; + }; + const MATHML_TEXT_INTEGRATION_POINTS = addToSet({}, ["mi", "mo", "mn", "ms", "mtext"]); + const HTML_INTEGRATION_POINTS = addToSet({}, ["foreignobject", "desc", "title", "annotation-xml"]); + const COMMON_SVG_AND_HTML_ELEMENTS = addToSet({}, ["title", "style", "font", "a", "script"]); + const ALL_SVG_TAGS = addToSet({}, svg$1); + addToSet(ALL_SVG_TAGS, svgFilters); + addToSet(ALL_SVG_TAGS, svgDisallowed); + const ALL_MATHML_TAGS = addToSet({}, mathMl$1); + addToSet(ALL_MATHML_TAGS, mathMlDisallowed); + const _checkValidNamespace = function _checkValidNamespace2(element) { + let parent = getParentNode(element); + if (!parent || !parent.tagName) { + parent = { + namespaceURI: NAMESPACE, + tagName: "template" + }; + } + const tagName = stringToLowerCase(element.tagName); + const parentTagName = stringToLowerCase(parent.tagName); + if (!ALLOWED_NAMESPACES[element.namespaceURI]) { + return false; + } + if (element.namespaceURI === SVG_NAMESPACE) { + if (parent.namespaceURI === HTML_NAMESPACE) { + return tagName === "svg"; + } + if (parent.namespaceURI === MATHML_NAMESPACE) { + return tagName === "svg" && (parentTagName === "annotation-xml" || MATHML_TEXT_INTEGRATION_POINTS[parentTagName]); + } + return Boolean(ALL_SVG_TAGS[tagName]); + } + if (element.namespaceURI === MATHML_NAMESPACE) { + if (parent.namespaceURI === HTML_NAMESPACE) { + return tagName === "math"; + } + if (parent.namespaceURI === SVG_NAMESPACE) { + return tagName === "math" && HTML_INTEGRATION_POINTS[parentTagName]; + } + return Boolean(ALL_MATHML_TAGS[tagName]); + } + if (element.namespaceURI === HTML_NAMESPACE) { + if (parent.namespaceURI === SVG_NAMESPACE && !HTML_INTEGRATION_POINTS[parentTagName]) { + return false; + } + if (parent.namespaceURI === MATHML_NAMESPACE && !MATHML_TEXT_INTEGRATION_POINTS[parentTagName]) { + return false; + } + return !ALL_MATHML_TAGS[tagName] && (COMMON_SVG_AND_HTML_ELEMENTS[tagName] || !ALL_SVG_TAGS[tagName]); + } + if (PARSER_MEDIA_TYPE === "application/xhtml+xml" && ALLOWED_NAMESPACES[element.namespaceURI]) { + return true; + } + return false; + }; + const _forceRemove = function _forceRemove2(node) { + arrayPush(DOMPurify2.removed, { + element: node + }); + try { + node.parentNode.removeChild(node); + } catch (_) { + node.remove(); + } + }; + const _removeAttribute = function _removeAttribute2(name, node) { + try { + arrayPush(DOMPurify2.removed, { + attribute: node.getAttributeNode(name), + from: node + }); + } catch (_) { + arrayPush(DOMPurify2.removed, { + attribute: null, + from: node + }); + } + node.removeAttribute(name); + if (name === "is" && !ALLOWED_ATTR[name]) { + if (RETURN_DOM || RETURN_DOM_FRAGMENT) { + try { + _forceRemove(node); + } catch (_) { + } + } else { + try { + node.setAttribute(name, ""); + } catch (_) { + } + } + } + }; + const _initDocument = function _initDocument2(dirty) { + let doc; + let leadingWhitespace; + if (FORCE_BODY) { + dirty = "" + dirty; + } else { + const matches = stringMatch(dirty, /^[\r\n\t ]+/); + leadingWhitespace = matches && matches[0]; + } + if (PARSER_MEDIA_TYPE === "application/xhtml+xml" && NAMESPACE === HTML_NAMESPACE) { + dirty = '' + dirty + ""; + } + const dirtyPayload = trustedTypesPolicy ? trustedTypesPolicy.createHTML(dirty) : dirty; + if (NAMESPACE === HTML_NAMESPACE) { + try { + doc = new DOMParser().parseFromString(dirtyPayload, PARSER_MEDIA_TYPE); + } catch (_) { + } + } + if (!doc || !doc.documentElement) { + doc = implementation.createDocument(NAMESPACE, "template", null); + try { + doc.documentElement.innerHTML = IS_EMPTY_INPUT ? emptyHTML : dirtyPayload; + } catch (_) { + } + } + const body2 = doc.body || doc.documentElement; + if (dirty && leadingWhitespace) { + body2.insertBefore(document2.createTextNode(leadingWhitespace), body2.childNodes[0] || null); + } + if (NAMESPACE === HTML_NAMESPACE) { + return getElementsByTagName.call(doc, WHOLE_DOCUMENT ? "html" : "body")[0]; + } + return WHOLE_DOCUMENT ? doc.documentElement : body2; + }; + const _createIterator = function _createIterator2(root) { + return createNodeIterator.call( + root.ownerDocument || root, + root, + // eslint-disable-next-line no-bitwise + NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT, + null, + false + ); + }; + const _isClobbered = function _isClobbered2(elm) { + return elm instanceof HTMLFormElement && (typeof elm.nodeName !== "string" || typeof elm.textContent !== "string" || typeof elm.removeChild !== "function" || !(elm.attributes instanceof NamedNodeMap) || typeof elm.removeAttribute !== "function" || typeof elm.setAttribute !== "function" || typeof elm.namespaceURI !== "string" || typeof elm.insertBefore !== "function" || typeof elm.hasChildNodes !== "function"); + }; + const _isNode = function _isNode2(object) { + return typeof Node2 === "object" ? object instanceof Node2 : object && typeof object === "object" && typeof object.nodeType === "number" && typeof object.nodeName === "string"; + }; + const _executeHook = function _executeHook2(entryPoint, currentNode, data) { + if (!hooks[entryPoint]) { + return; + } + arrayForEach(hooks[entryPoint], (hook) => { + hook.call(DOMPurify2, currentNode, data, CONFIG); + }); + }; + const _sanitizeElements = function _sanitizeElements2(currentNode) { + let content; + _executeHook("beforeSanitizeElements", currentNode, null); + if (_isClobbered(currentNode)) { + _forceRemove(currentNode); + return true; + } + const tagName = transformCaseFunc(currentNode.nodeName); + _executeHook("uponSanitizeElement", currentNode, { + tagName, + allowedTags: ALLOWED_TAGS + }); + if (currentNode.hasChildNodes() && !_isNode(currentNode.firstElementChild) && (!_isNode(currentNode.content) || !_isNode(currentNode.content.firstElementChild)) && regExpTest(/<[/\w]/g, currentNode.innerHTML) && regExpTest(/<[/\w]/g, currentNode.textContent)) { + _forceRemove(currentNode); + return true; + } + if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) { + if (!FORBID_TAGS[tagName] && _basicCustomElementTest(tagName)) { + if (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, tagName)) + return false; + if (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(tagName)) + return false; + } + if (KEEP_CONTENT && !FORBID_CONTENTS[tagName]) { + const parentNode = getParentNode(currentNode) || currentNode.parentNode; + const childNodes = getChildNodes(currentNode) || currentNode.childNodes; + if (childNodes && parentNode) { + const childCount = childNodes.length; + for (let i = childCount - 1; i >= 0; --i) { + parentNode.insertBefore(cloneNode(childNodes[i], true), getNextSibling(currentNode)); + } + } + } + _forceRemove(currentNode); + return true; + } + if (currentNode instanceof Element2 && !_checkValidNamespace(currentNode)) { + _forceRemove(currentNode); + return true; + } + if ((tagName === "noscript" || tagName === "noembed" || tagName === "noframes") && regExpTest(/<\/no(script|embed|frames)/i, currentNode.innerHTML)) { + _forceRemove(currentNode); + return true; + } + if (SAFE_FOR_TEMPLATES && currentNode.nodeType === 3) { + content = currentNode.textContent; + content = stringReplace(content, MUSTACHE_EXPR2, " "); + content = stringReplace(content, ERB_EXPR2, " "); + content = stringReplace(content, TMPLIT_EXPR2, " "); + if (currentNode.textContent !== content) { + arrayPush(DOMPurify2.removed, { + element: currentNode.cloneNode() + }); + currentNode.textContent = content; + } + } + _executeHook("afterSanitizeElements", currentNode, null); + return false; + }; + const _isValidAttribute = function _isValidAttribute2(lcTag, lcName, value) { + if (SANITIZE_DOM && (lcName === "id" || lcName === "name") && (value in document2 || value in formElement)) { + return false; + } + if (ALLOW_DATA_ATTR && !FORBID_ATTR[lcName] && regExpTest(DATA_ATTR2, lcName)) + ; + else if (ALLOW_ARIA_ATTR && regExpTest(ARIA_ATTR2, lcName)) + ; + else if (!ALLOWED_ATTR[lcName] || FORBID_ATTR[lcName]) { + if ( + // First condition does a very basic check if a) it's basically a valid custom element tagname AND + // b) if the tagName passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck + // and c) if the attribute name passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.attributeNameCheck + _basicCustomElementTest(lcTag) && (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, lcTag) || CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(lcTag)) && (CUSTOM_ELEMENT_HANDLING.attributeNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.attributeNameCheck, lcName) || CUSTOM_ELEMENT_HANDLING.attributeNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.attributeNameCheck(lcName)) || // Alternative, second condition checks if it's an `is`-attribute, AND + // the value passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck + lcName === "is" && CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements && (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, value) || CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(value)) + ) + ; + else { + return false; + } + } else if (URI_SAFE_ATTRIBUTES[lcName]) + ; + else if (regExpTest(IS_ALLOWED_URI$1, stringReplace(value, ATTR_WHITESPACE2, ""))) + ; + else if ((lcName === "src" || lcName === "xlink:href" || lcName === "href") && lcTag !== "script" && stringIndexOf(value, "data:") === 0 && DATA_URI_TAGS[lcTag]) + ; + else if (ALLOW_UNKNOWN_PROTOCOLS && !regExpTest(IS_SCRIPT_OR_DATA2, stringReplace(value, ATTR_WHITESPACE2, ""))) + ; + else if (value) { + return false; + } else + ; + return true; + }; + const _basicCustomElementTest = function _basicCustomElementTest2(tagName) { + return tagName.indexOf("-") > 0; + }; + const _sanitizeAttributes = function _sanitizeAttributes2(currentNode) { + let attr; + let value; + let lcName; + let l2; + _executeHook("beforeSanitizeAttributes", currentNode, null); + const { + attributes + } = currentNode; + if (!attributes) { + return; + } + const hookEvent = { + attrName: "", + attrValue: "", + keepAttr: true, + allowedAttributes: ALLOWED_ATTR + }; + l2 = attributes.length; + while (l2--) { + attr = attributes[l2]; + const { + name, + namespaceURI + } = attr; + value = name === "value" ? attr.value : stringTrim(attr.value); + lcName = transformCaseFunc(name); + hookEvent.attrName = lcName; + hookEvent.attrValue = value; + hookEvent.keepAttr = true; + hookEvent.forceKeepAttr = void 0; + _executeHook("uponSanitizeAttribute", currentNode, hookEvent); + value = hookEvent.attrValue; + if (hookEvent.forceKeepAttr) { + continue; + } + _removeAttribute(name, currentNode); + if (!hookEvent.keepAttr) { + continue; + } + if (!ALLOW_SELF_CLOSE_IN_ATTR && regExpTest(/\/>/i, value)) { + _removeAttribute(name, currentNode); + continue; + } + if (SAFE_FOR_TEMPLATES) { + value = stringReplace(value, MUSTACHE_EXPR2, " "); + value = stringReplace(value, ERB_EXPR2, " "); + value = stringReplace(value, TMPLIT_EXPR2, " "); + } + const lcTag = transformCaseFunc(currentNode.nodeName); + if (!_isValidAttribute(lcTag, lcName, value)) { + continue; + } + if (SANITIZE_NAMED_PROPS && (lcName === "id" || lcName === "name")) { + _removeAttribute(name, currentNode); + value = SANITIZE_NAMED_PROPS_PREFIX + value; + } + if (trustedTypesPolicy && typeof trustedTypes === "object" && typeof trustedTypes.getAttributeType === "function") { + if (namespaceURI) + ; + else { + switch (trustedTypes.getAttributeType(lcTag, lcName)) { + case "TrustedHTML": { + value = trustedTypesPolicy.createHTML(value); + break; + } + case "TrustedScriptURL": { + value = trustedTypesPolicy.createScriptURL(value); + break; + } + } + } + } + try { + if (namespaceURI) { + currentNode.setAttributeNS(namespaceURI, name, value); + } else { + currentNode.setAttribute(name, value); + } + arrayPop(DOMPurify2.removed); + } catch (_) { + } + } + _executeHook("afterSanitizeAttributes", currentNode, null); + }; + const _sanitizeShadowDOM = function _sanitizeShadowDOM2(fragment) { + let shadowNode; + const shadowIterator = _createIterator(fragment); + _executeHook("beforeSanitizeShadowDOM", fragment, null); + while (shadowNode = shadowIterator.nextNode()) { + _executeHook("uponSanitizeShadowNode", shadowNode, null); + if (_sanitizeElements(shadowNode)) { + continue; + } + if (shadowNode.content instanceof DocumentFragment) { + _sanitizeShadowDOM2(shadowNode.content); + } + _sanitizeAttributes(shadowNode); + } + _executeHook("afterSanitizeShadowDOM", fragment, null); + }; + DOMPurify2.sanitize = function(dirty) { + let cfg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; + let body2; + let importedNode; + let currentNode; + let returnNode; + IS_EMPTY_INPUT = !dirty; + if (IS_EMPTY_INPUT) { + dirty = ""; + } + if (typeof dirty !== "string" && !_isNode(dirty)) { + if (typeof dirty.toString === "function") { + dirty = dirty.toString(); + if (typeof dirty !== "string") { + throw typeErrorCreate("dirty is not a string, aborting"); + } + } else { + throw typeErrorCreate("toString is not a function"); + } + } + if (!DOMPurify2.isSupported) { + return dirty; + } + if (!SET_CONFIG) { + _parseConfig(cfg); + } + DOMPurify2.removed = []; + if (typeof dirty === "string") { + IN_PLACE = false; + } + if (IN_PLACE) { + if (dirty.nodeName) { + const tagName = transformCaseFunc(dirty.nodeName); + if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) { + throw typeErrorCreate("root node is forbidden and cannot be sanitized in-place"); + } + } + } else if (dirty instanceof Node2) { + body2 = _initDocument(""); + importedNode = body2.ownerDocument.importNode(dirty, true); + if (importedNode.nodeType === 1 && importedNode.nodeName === "BODY") { + body2 = importedNode; + } else if (importedNode.nodeName === "HTML") { + body2 = importedNode; + } else { + body2.appendChild(importedNode); + } + } else { + if (!RETURN_DOM && !SAFE_FOR_TEMPLATES && !WHOLE_DOCUMENT && // eslint-disable-next-line unicorn/prefer-includes + dirty.indexOf("<") === -1) { + return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(dirty) : dirty; + } + body2 = _initDocument(dirty); + if (!body2) { + return RETURN_DOM ? null : RETURN_TRUSTED_TYPE ? emptyHTML : ""; + } + } + if (body2 && FORCE_BODY) { + _forceRemove(body2.firstChild); + } + const nodeIterator = _createIterator(IN_PLACE ? dirty : body2); + while (currentNode = nodeIterator.nextNode()) { + if (_sanitizeElements(currentNode)) { + continue; + } + if (currentNode.content instanceof DocumentFragment) { + _sanitizeShadowDOM(currentNode.content); + } + _sanitizeAttributes(currentNode); + } + if (IN_PLACE) { + return dirty; + } + if (RETURN_DOM) { + if (RETURN_DOM_FRAGMENT) { + returnNode = createDocumentFragment.call(body2.ownerDocument); + while (body2.firstChild) { + returnNode.appendChild(body2.firstChild); + } + } else { + returnNode = body2; + } + if (ALLOWED_ATTR.shadowroot || ALLOWED_ATTR.shadowrootmode) { + returnNode = importNode.call(originalDocument, returnNode, true); + } + return returnNode; + } + let serializedHTML = WHOLE_DOCUMENT ? body2.outerHTML : body2.innerHTML; + if (WHOLE_DOCUMENT && ALLOWED_TAGS["!doctype"] && body2.ownerDocument && body2.ownerDocument.doctype && body2.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, body2.ownerDocument.doctype.name)) { + serializedHTML = "\n" + serializedHTML; + } + if (SAFE_FOR_TEMPLATES) { + serializedHTML = stringReplace(serializedHTML, MUSTACHE_EXPR2, " "); + serializedHTML = stringReplace(serializedHTML, ERB_EXPR2, " "); + serializedHTML = stringReplace(serializedHTML, TMPLIT_EXPR2, " "); + } + return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(serializedHTML) : serializedHTML; + }; + DOMPurify2.setConfig = function(cfg) { + _parseConfig(cfg); + SET_CONFIG = true; + }; + DOMPurify2.clearConfig = function() { + CONFIG = null; + SET_CONFIG = false; + }; + DOMPurify2.isValidAttribute = function(tag, attr, value) { + if (!CONFIG) { + _parseConfig({}); + } + const lcTag = transformCaseFunc(tag); + const lcName = transformCaseFunc(attr); + return _isValidAttribute(lcTag, lcName, value); + }; + DOMPurify2.addHook = function(entryPoint, hookFunction) { + if (typeof hookFunction !== "function") { + return; + } + hooks[entryPoint] = hooks[entryPoint] || []; + arrayPush(hooks[entryPoint], hookFunction); + }; + DOMPurify2.removeHook = function(entryPoint) { + if (hooks[entryPoint]) { + return arrayPop(hooks[entryPoint]); + } + }; + DOMPurify2.removeHooks = function(entryPoint) { + if (hooks[entryPoint]) { + hooks[entryPoint] = []; + } + }; + DOMPurify2.removeAllHooks = function() { + hooks = {}; + }; + return DOMPurify2; + } + var purify = createDOMPurify(); + module2.exports = purify; + } +}); + +// ../node_modules/.pnpm/highlight.js@10.7.3/node_modules/highlight.js/lib/core.js +var require_core = __commonJS({ + "../node_modules/.pnpm/highlight.js@10.7.3/node_modules/highlight.js/lib/core.js"(exports2, module2) { + function deepFreeze(obj2) { + if (obj2 instanceof Map) { + obj2.clear = obj2.delete = obj2.set = function() { + throw new Error("map is read-only"); + }; + } else if (obj2 instanceof Set) { + obj2.add = obj2.clear = obj2.delete = function() { + throw new Error("set is read-only"); + }; + } + Object.freeze(obj2); + Object.getOwnPropertyNames(obj2).forEach(function(name) { + var prop = obj2[name]; + if (typeof prop == "object" && !Object.isFrozen(prop)) { + deepFreeze(prop); + } + }); + return obj2; + } + var deepFreezeEs6 = deepFreeze; + var _default = deepFreeze; + deepFreezeEs6.default = _default; + var Response2 = class { + /** + * @param {CompiledMode} mode + */ + constructor(mode) { + if (mode.data === void 0) + mode.data = {}; + this.data = mode.data; + this.isMatchIgnored = false; + } + ignoreMatch() { + this.isMatchIgnored = true; + } + }; + function escapeHTML2(value) { + return value.replace(/&/g, "&").replace(//g, ">").replace(/"/g, """).replace(/'/g, "'"); + } + function inherit(original, ...objects) { + const result = /* @__PURE__ */ Object.create(null); + for (const key in original) { + result[key] = original[key]; + } + objects.forEach(function(obj2) { + for (const key in obj2) { + result[key] = obj2[key]; + } + }); + return ( + /** @type {T} */ + result + ); + } + var SPAN_CLOSE = "
"; + var emitsWrappingTags = (node) => { + return !!node.kind; + }; + var HTMLRenderer = class { + /** + * Creates a new HTMLRenderer + * + * @param {Tree} parseTree - the parse tree (must support `walk` API) + * @param {{classPrefix: string}} options + */ + constructor(parseTree, options2) { + this.buffer = ""; + this.classPrefix = options2.classPrefix; + parseTree.walk(this); + } + /** + * Adds texts to the output stream + * + * @param {string} text */ + addText(text) { + this.buffer += escapeHTML2(text); + } + /** + * Adds a node open to the output stream (if needed) + * + * @param {Node} node */ + openNode(node) { + if (!emitsWrappingTags(node)) + return; + let className = node.kind; + if (!node.sublanguage) { + className = `${this.classPrefix}${className}`; + } + this.span(className); + } + /** + * Adds a node close to the output stream (if needed) + * + * @param {Node} node */ + closeNode(node) { + if (!emitsWrappingTags(node)) + return; + this.buffer += SPAN_CLOSE; + } + /** + * returns the accumulated buffer + */ + value() { + return this.buffer; + } + // helpers + /** + * Builds a span element + * + * @param {string} className */ + span(className) { + this.buffer += ``; + } + }; + var TokenTree = class _TokenTree { + constructor() { + this.rootNode = { children: [] }; + this.stack = [this.rootNode]; + } + get top() { + return this.stack[this.stack.length - 1]; + } + get root() { + return this.rootNode; + } + /** @param {Node} node */ + add(node) { + this.top.children.push(node); + } + /** @param {string} kind */ + openNode(kind) { + const node = { kind, children: [] }; + this.add(node); + this.stack.push(node); + } + closeNode() { + if (this.stack.length > 1) { + return this.stack.pop(); + } + return void 0; + } + closeAllNodes() { + while (this.closeNode()) + ; + } + toJSON() { + return JSON.stringify(this.rootNode, null, 4); + } + /** + * @typedef { import("./html_renderer").Renderer } Renderer + * @param {Renderer} builder + */ + walk(builder) { + return this.constructor._walk(builder, this.rootNode); + } + /** + * @param {Renderer} builder + * @param {Node} node + */ + static _walk(builder, node) { + if (typeof node === "string") { + builder.addText(node); + } else if (node.children) { + builder.openNode(node); + node.children.forEach((child) => this._walk(builder, child)); + builder.closeNode(node); + } + return builder; + } + /** + * @param {Node} node + */ + static _collapse(node) { + if (typeof node === "string") + return; + if (!node.children) + return; + if (node.children.every((el) => typeof el === "string")) { + node.children = [node.children.join("")]; + } else { + node.children.forEach((child) => { + _TokenTree._collapse(child); + }); + } + } + }; + var TokenTreeEmitter = class extends TokenTree { + /** + * @param {*} options + */ + constructor(options2) { + super(); + this.options = options2; + } + /** + * @param {string} text + * @param {string} kind + */ + addKeyword(text, kind) { + if (text === "") { + return; + } + this.openNode(kind); + this.addText(text); + this.closeNode(); + } + /** + * @param {string} text + */ + addText(text) { + if (text === "") { + return; + } + this.add(text); + } + /** + * @param {Emitter & {root: DataNode}} emitter + * @param {string} name + */ + addSublanguage(emitter, name) { + const node = emitter.root; + node.kind = name; + node.sublanguage = true; + this.add(node); + } + toHTML() { + const renderer = new HTMLRenderer(this, this.options); + return renderer.value(); + } + finalize() { + return true; + } + }; + function escape4(value) { + return new RegExp(value.replace(/[-/\\^$*+?.()|[\]{}]/g, "\\$&"), "m"); + } + function source2(re) { + if (!re) + return null; + if (typeof re === "string") + return re; + return re.source; + } + function concat(...args3) { + const joined = args3.map((x) => source2(x)).join(""); + return joined; + } + function either(...args3) { + const joined = "(" + args3.map((x) => source2(x)).join("|") + ")"; + return joined; + } + function countMatchGroups(re) { + return new RegExp(re.toString() + "|").exec("").length - 1; + } + function startsWith(re, lexeme) { + const match2 = re && re.exec(lexeme); + return match2 && match2.index === 0; + } + var BACKREF_RE = /\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./; + function join9(regexps, separator = "|") { + let numCaptures = 0; + return regexps.map((regex) => { + numCaptures += 1; + const offset = numCaptures; + let re = source2(regex); + let out2 = ""; + while (re.length > 0) { + const match2 = BACKREF_RE.exec(re); + if (!match2) { + out2 += re; + break; + } + out2 += re.substring(0, match2.index); + re = re.substring(match2.index + match2[0].length); + if (match2[0][0] === "\\" && match2[1]) { + out2 += "\\" + String(Number(match2[1]) + offset); + } else { + out2 += match2[0]; + if (match2[0] === "(") { + numCaptures++; + } + } + } + return out2; + }).map((re) => `(${re})`).join(separator); + } + var MATCH_NOTHING_RE = /\b\B/; + var IDENT_RE = "[a-zA-Z]\\w*"; + var UNDERSCORE_IDENT_RE = "[a-zA-Z_]\\w*"; + var NUMBER_RE = "\\b\\d+(\\.\\d+)?"; + var C_NUMBER_RE = "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)"; + var BINARY_NUMBER_RE = "\\b(0b[01]+)"; + var RE_STARTERS_RE = "!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~"; + var SHEBANG = (opts = {}) => { + const beginShebang = /^#![ ]*\//; + if (opts.binary) { + opts.begin = concat( + beginShebang, + /.*\b/, + opts.binary, + /\b.*/ + ); + } + return inherit({ + className: "meta", + begin: beginShebang, + end: /$/, + relevance: 0, + /** @type {ModeCallback} */ + "on:begin": (m, resp) => { + if (m.index !== 0) + resp.ignoreMatch(); + } + }, opts); + }; + var BACKSLASH_ESCAPE = { + begin: "\\\\[\\s\\S]", + relevance: 0 + }; + var APOS_STRING_MODE = { + className: "string", + begin: "'", + end: "'", + illegal: "\\n", + contains: [BACKSLASH_ESCAPE] + }; + var QUOTE_STRING_MODE = { + className: "string", + begin: '"', + end: '"', + illegal: "\\n", + contains: [BACKSLASH_ESCAPE] + }; + var PHRASAL_WORDS_MODE = { + begin: /\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ + }; + var COMMENT = function(begin, end, modeOptions = {}) { + const mode = inherit( + { + className: "comment", + begin, + end, + contains: [] + }, + modeOptions + ); + mode.contains.push(PHRASAL_WORDS_MODE); + mode.contains.push({ + className: "doctag", + begin: "(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):", + relevance: 0 + }); + return mode; + }; + var C_LINE_COMMENT_MODE = COMMENT("//", "$"); + var C_BLOCK_COMMENT_MODE = COMMENT("/\\*", "\\*/"); + var HASH_COMMENT_MODE = COMMENT("#", "$"); + var NUMBER_MODE = { + className: "number", + begin: NUMBER_RE, + relevance: 0 + }; + var C_NUMBER_MODE = { + className: "number", + begin: C_NUMBER_RE, + relevance: 0 + }; + var BINARY_NUMBER_MODE = { + className: "number", + begin: BINARY_NUMBER_RE, + relevance: 0 + }; + var CSS_NUMBER_MODE = { + className: "number", + begin: NUMBER_RE + "(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", + relevance: 0 + }; + var REGEXP_MODE = { + // this outer rule makes sure we actually have a WHOLE regex and not simply + // an expression such as: + // + // 3 / something + // + // (which will then blow up when regex's `illegal` sees the newline) + begin: /(?=\/[^/\n]*\/)/, + contains: [{ + className: "regexp", + begin: /\//, + end: /\/[gimuy]*/, + illegal: /\n/, + contains: [ + BACKSLASH_ESCAPE, + { + begin: /\[/, + end: /\]/, + relevance: 0, + contains: [BACKSLASH_ESCAPE] + } + ] + }] + }; + var TITLE_MODE = { + className: "title", + begin: IDENT_RE, + relevance: 0 + }; + var UNDERSCORE_TITLE_MODE = { + className: "title", + begin: UNDERSCORE_IDENT_RE, + relevance: 0 + }; + var METHOD_GUARD = { + // excludes method names from keyword processing + begin: "\\.\\s*" + UNDERSCORE_IDENT_RE, + relevance: 0 + }; + var END_SAME_AS_BEGIN = function(mode) { + return Object.assign( + mode, + { + /** @type {ModeCallback} */ + "on:begin": (m, resp) => { + resp.data._beginMatch = m[1]; + }, + /** @type {ModeCallback} */ + "on:end": (m, resp) => { + if (resp.data._beginMatch !== m[1]) + resp.ignoreMatch(); + } + } + ); + }; + var MODES = /* @__PURE__ */ Object.freeze({ + __proto__: null, + MATCH_NOTHING_RE, + IDENT_RE, + UNDERSCORE_IDENT_RE, + NUMBER_RE, + C_NUMBER_RE, + BINARY_NUMBER_RE, + RE_STARTERS_RE, + SHEBANG, + BACKSLASH_ESCAPE, + APOS_STRING_MODE, + QUOTE_STRING_MODE, + PHRASAL_WORDS_MODE, + COMMENT, + C_LINE_COMMENT_MODE, + C_BLOCK_COMMENT_MODE, + HASH_COMMENT_MODE, + NUMBER_MODE, + C_NUMBER_MODE, + BINARY_NUMBER_MODE, + CSS_NUMBER_MODE, + REGEXP_MODE, + TITLE_MODE, + UNDERSCORE_TITLE_MODE, + METHOD_GUARD, + END_SAME_AS_BEGIN + }); + function skipIfhasPrecedingDot(match2, response) { + const before = match2.input[match2.index - 1]; + if (before === ".") { + response.ignoreMatch(); + } + } + function beginKeywords(mode, parent) { + if (!parent) + return; + if (!mode.beginKeywords) + return; + mode.begin = "\\b(" + mode.beginKeywords.split(" ").join("|") + ")(?!\\.)(?=\\b|\\s)"; + mode.__beforeBegin = skipIfhasPrecedingDot; + mode.keywords = mode.keywords || mode.beginKeywords; + delete mode.beginKeywords; + if (mode.relevance === void 0) + mode.relevance = 0; + } + function compileIllegal(mode, _parent) { + if (!Array.isArray(mode.illegal)) + return; + mode.illegal = either(...mode.illegal); + } + function compileMatch(mode, _parent) { + if (!mode.match) + return; + if (mode.begin || mode.end) + throw new Error("begin & end are not supported with match"); + mode.begin = mode.match; + delete mode.match; + } + function compileRelevance(mode, _parent) { + if (mode.relevance === void 0) + mode.relevance = 1; + } + var COMMON_KEYWORDS = [ + "of", + "and", + "for", + "in", + "not", + "or", + "if", + "then", + "parent", + // common variable name + "list", + // common variable name + "value" + // common variable name + ]; + var DEFAULT_KEYWORD_CLASSNAME = "keyword"; + function compileKeywords(rawKeywords, caseInsensitive, className = DEFAULT_KEYWORD_CLASSNAME) { + const compiledKeywords = {}; + if (typeof rawKeywords === "string") { + compileList(className, rawKeywords.split(" ")); + } else if (Array.isArray(rawKeywords)) { + compileList(className, rawKeywords); + } else { + Object.keys(rawKeywords).forEach(function(className2) { + Object.assign( + compiledKeywords, + compileKeywords(rawKeywords[className2], caseInsensitive, className2) + ); + }); + } + return compiledKeywords; + function compileList(className2, keywordList) { + if (caseInsensitive) { + keywordList = keywordList.map((x) => x.toLowerCase()); + } + keywordList.forEach(function(keyword) { + const pair = keyword.split("|"); + compiledKeywords[pair[0]] = [className2, scoreForKeyword(pair[0], pair[1])]; + }); + } + } + function scoreForKeyword(keyword, providedScore) { + if (providedScore) { + return Number(providedScore); + } + return commonKeyword(keyword) ? 0 : 1; + } + function commonKeyword(keyword) { + return COMMON_KEYWORDS.includes(keyword.toLowerCase()); + } + function compileLanguage(language, { plugins }) { + function langRe(value, global2) { + return new RegExp( + source2(value), + "m" + (language.case_insensitive ? "i" : "") + (global2 ? "g" : "") + ); + } + class MultiRegex { + constructor() { + this.matchIndexes = {}; + this.regexes = []; + this.matchAt = 1; + this.position = 0; + } + // @ts-ignore + addRule(re, opts) { + opts.position = this.position++; + this.matchIndexes[this.matchAt] = opts; + this.regexes.push([opts, re]); + this.matchAt += countMatchGroups(re) + 1; + } + compile() { + if (this.regexes.length === 0) { + this.exec = () => null; + } + const terminators = this.regexes.map((el) => el[1]); + this.matcherRe = langRe(join9(terminators), true); + this.lastIndex = 0; + } + /** @param {string} s */ + exec(s) { + this.matcherRe.lastIndex = this.lastIndex; + const match2 = this.matcherRe.exec(s); + if (!match2) { + return null; + } + const i = match2.findIndex((el, i2) => i2 > 0 && el !== void 0); + const matchData = this.matchIndexes[i]; + match2.splice(0, i); + return Object.assign(match2, matchData); + } + } + class ResumableMultiRegex { + constructor() { + this.rules = []; + this.multiRegexes = []; + this.count = 0; + this.lastIndex = 0; + this.regexIndex = 0; + } + // @ts-ignore + getMatcher(index) { + if (this.multiRegexes[index]) + return this.multiRegexes[index]; + const matcher = new MultiRegex(); + this.rules.slice(index).forEach(([re, opts]) => matcher.addRule(re, opts)); + matcher.compile(); + this.multiRegexes[index] = matcher; + return matcher; + } + resumingScanAtSamePosition() { + return this.regexIndex !== 0; + } + considerAll() { + this.regexIndex = 0; + } + // @ts-ignore + addRule(re, opts) { + this.rules.push([re, opts]); + if (opts.type === "begin") + this.count++; + } + /** @param {string} s */ + exec(s) { + const m = this.getMatcher(this.regexIndex); + m.lastIndex = this.lastIndex; + let result = m.exec(s); + if (this.resumingScanAtSamePosition()) { + if (result && result.index === this.lastIndex) + ; + else { + const m2 = this.getMatcher(0); + m2.lastIndex = this.lastIndex + 1; + result = m2.exec(s); + } + } + if (result) { + this.regexIndex += result.position + 1; + if (this.regexIndex === this.count) { + this.considerAll(); + } + } + return result; + } + } + function buildModeRegex(mode) { + const mm = new ResumableMultiRegex(); + mode.contains.forEach((term) => mm.addRule(term.begin, { rule: term, type: "begin" })); + if (mode.terminatorEnd) { + mm.addRule(mode.terminatorEnd, { type: "end" }); + } + if (mode.illegal) { + mm.addRule(mode.illegal, { type: "illegal" }); + } + return mm; + } + function compileMode(mode, parent) { + const cmode = ( + /** @type CompiledMode */ + mode + ); + if (mode.isCompiled) + return cmode; + [ + // do this early so compiler extensions generally don't have to worry about + // the distinction between match/begin + compileMatch + ].forEach((ext2) => ext2(mode, parent)); + language.compilerExtensions.forEach((ext2) => ext2(mode, parent)); + mode.__beforeBegin = null; + [ + beginKeywords, + // do this later so compiler extensions that come earlier have access to the + // raw array if they wanted to perhaps manipulate it, etc. + compileIllegal, + // default to 1 relevance if not specified + compileRelevance + ].forEach((ext2) => ext2(mode, parent)); + mode.isCompiled = true; + let keywordPattern = null; + if (typeof mode.keywords === "object") { + keywordPattern = mode.keywords.$pattern; + delete mode.keywords.$pattern; + } + if (mode.keywords) { + mode.keywords = compileKeywords(mode.keywords, language.case_insensitive); + } + if (mode.lexemes && keywordPattern) { + throw new Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) "); + } + keywordPattern = keywordPattern || mode.lexemes || /\w+/; + cmode.keywordPatternRe = langRe(keywordPattern, true); + if (parent) { + if (!mode.begin) + mode.begin = /\B|\b/; + cmode.beginRe = langRe(mode.begin); + if (mode.endSameAsBegin) + mode.end = mode.begin; + if (!mode.end && !mode.endsWithParent) + mode.end = /\B|\b/; + if (mode.end) + cmode.endRe = langRe(mode.end); + cmode.terminatorEnd = source2(mode.end) || ""; + if (mode.endsWithParent && parent.terminatorEnd) { + cmode.terminatorEnd += (mode.end ? "|" : "") + parent.terminatorEnd; + } + } + if (mode.illegal) + cmode.illegalRe = langRe( + /** @type {RegExp | string} */ + mode.illegal + ); + if (!mode.contains) + mode.contains = []; + mode.contains = [].concat(...mode.contains.map(function(c) { + return expandOrCloneMode(c === "self" ? mode : c); + })); + mode.contains.forEach(function(c) { + compileMode( + /** @type Mode */ + c, + cmode + ); + }); + if (mode.starts) { + compileMode(mode.starts, parent); + } + cmode.matcher = buildModeRegex(cmode); + return cmode; + } + if (!language.compilerExtensions) + language.compilerExtensions = []; + if (language.contains && language.contains.includes("self")) { + throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation."); + } + language.classNameAliases = inherit(language.classNameAliases || {}); + return compileMode( + /** @type Mode */ + language + ); + } + function dependencyOnParent(mode) { + if (!mode) + return false; + return mode.endsWithParent || dependencyOnParent(mode.starts); + } + function expandOrCloneMode(mode) { + if (mode.variants && !mode.cachedVariants) { + mode.cachedVariants = mode.variants.map(function(variant) { + return inherit(mode, { variants: null }, variant); + }); + } + if (mode.cachedVariants) { + return mode.cachedVariants; + } + if (dependencyOnParent(mode)) { + return inherit(mode, { starts: mode.starts ? inherit(mode.starts) : null }); + } + if (Object.isFrozen(mode)) { + return inherit(mode); + } + return mode; + } + var version4 = "10.7.3"; + function hasValueOrEmptyAttribute(value) { + return Boolean(value || value === ""); + } + function BuildVuePlugin(hljs) { + const Component = { + props: ["language", "code", "autodetect"], + data: function() { + return { + detectedLanguage: "", + unknownLanguage: false + }; + }, + computed: { + className() { + if (this.unknownLanguage) + return ""; + return "hljs " + this.detectedLanguage; + }, + highlighted() { + if (!this.autoDetect && !hljs.getLanguage(this.language)) { + console.warn(`The language "${this.language}" you specified could not be found.`); + this.unknownLanguage = true; + return escapeHTML2(this.code); + } + let result = {}; + if (this.autoDetect) { + result = hljs.highlightAuto(this.code); + this.detectedLanguage = result.language; + } else { + result = hljs.highlight(this.language, this.code, this.ignoreIllegals); + this.detectedLanguage = this.language; + } + return result.value; + }, + autoDetect() { + return !this.language || hasValueOrEmptyAttribute(this.autodetect); + }, + ignoreIllegals() { + return true; + } + }, + // this avoids needing to use a whole Vue compilation pipeline just + // to build Highlight.js + render(createElement) { + return createElement("pre", {}, [ + createElement("code", { + class: this.className, + domProps: { innerHTML: this.highlighted } + }) + ]); + } + // template: `
` + }; + const VuePlugin = { + install(Vue) { + Vue.component("highlightjs", Component); + } + }; + return { Component, VuePlugin }; + } + var mergeHTMLPlugin = { + "after:highlightElement": ({ el, result, text }) => { + const originalStream = nodeStream(el); + if (!originalStream.length) + return; + const resultNode = document.createElement("div"); + resultNode.innerHTML = result.value; + result.value = mergeStreams(originalStream, nodeStream(resultNode), text); + } + }; + function tag(node) { + return node.nodeName.toLowerCase(); + } + function nodeStream(node) { + const result = []; + (function _nodeStream(node2, offset) { + for (let child = node2.firstChild; child; child = child.nextSibling) { + if (child.nodeType === 3) { + offset += child.nodeValue.length; + } else if (child.nodeType === 1) { + result.push({ + event: "start", + offset, + node: child + }); + offset = _nodeStream(child, offset); + if (!tag(child).match(/br|hr|img|input/)) { + result.push({ + event: "stop", + offset, + node: child + }); + } + } + } + return offset; + })(node, 0); + return result; + } + function mergeStreams(original, highlighted, value) { + let processed = 0; + let result = ""; + const nodeStack = []; + function selectStream() { + if (!original.length || !highlighted.length) { + return original.length ? original : highlighted; + } + if (original[0].offset !== highlighted[0].offset) { + return original[0].offset < highlighted[0].offset ? original : highlighted; + } + return highlighted[0].event === "start" ? original : highlighted; + } + function open(node) { + function attributeString(attr) { + return " " + attr.nodeName + '="' + escapeHTML2(attr.value) + '"'; + } + result += "<" + tag(node) + [].map.call(node.attributes, attributeString).join("") + ">"; + } + function close(node) { + result += ""; + } + function render(event) { + (event.event === "start" ? open : close)(event.node); + } + while (original.length || highlighted.length) { + let stream5 = selectStream(); + result += escapeHTML2(value.substring(processed, stream5[0].offset)); + processed = stream5[0].offset; + if (stream5 === original) { + nodeStack.reverse().forEach(close); + do { + render(stream5.splice(0, 1)[0]); + stream5 = selectStream(); + } while (stream5 === original && stream5.length && stream5[0].offset === processed); + nodeStack.reverse().forEach(open); + } else { + if (stream5[0].event === "start") { + nodeStack.push(stream5[0].node); + } else { + nodeStack.pop(); + } + render(stream5.splice(0, 1)[0]); + } + } + return result + escapeHTML2(value.substr(processed)); + } + var seenDeprecations = {}; + var error = (message) => { + console.error(message); + }; + var warn = (message, ...args3) => { + console.log(`WARN: ${message}`, ...args3); + }; + var deprecated = (version5, message) => { + if (seenDeprecations[`${version5}/${message}`]) + return; + console.log(`Deprecated as of ${version5}. ${message}`); + seenDeprecations[`${version5}/${message}`] = true; + }; + var escape$1 = escapeHTML2; + var inherit$1 = inherit; + var NO_MATCH = Symbol("nomatch"); + var HLJS = function(hljs) { + const languages3 = /* @__PURE__ */ Object.create(null); + const aliases = /* @__PURE__ */ Object.create(null); + const plugins = []; + let SAFE_MODE = true; + const fixMarkupRe = /(^(<[^>]+>|\t|)+|\n)/gm; + const LANGUAGE_NOT_FOUND = "Could not find the language '{}', did you forget to load/include a language module?"; + const PLAINTEXT_LANGUAGE = { disableAutodetect: true, name: "Plain text", contains: [] }; + let options2 = { + noHighlightRe: /^(no-?highlight)$/i, + languageDetectRe: /\blang(?:uage)?-([\w-]+)\b/i, + classPrefix: "hljs-", + tabReplace: null, + useBR: false, + languages: null, + // beta configuration options, subject to change, welcome to discuss + // https://github.com/highlightjs/highlight.js/issues/1086 + __emitter: TokenTreeEmitter + }; + function shouldNotHighlight(languageName) { + return options2.noHighlightRe.test(languageName); + } + function blockLanguage(block2) { + let classes = block2.className + " "; + classes += block2.parentNode ? block2.parentNode.className : ""; + const match2 = options2.languageDetectRe.exec(classes); + if (match2) { + const language = getLanguage(match2[1]); + if (!language) { + warn(LANGUAGE_NOT_FOUND.replace("{}", match2[1])); + warn("Falling back to no-highlight mode for this block.", block2); + } + return language ? match2[1] : "no-highlight"; + } + return classes.split(/\s+/).find((_class) => shouldNotHighlight(_class) || getLanguage(_class)); + } + function highlight3(codeOrlanguageName, optionsOrCode, ignoreIllegals, continuation) { + let code = ""; + let languageName = ""; + if (typeof optionsOrCode === "object") { + code = codeOrlanguageName; + ignoreIllegals = optionsOrCode.ignoreIllegals; + languageName = optionsOrCode.language; + continuation = void 0; + } else { + deprecated("10.7.0", "highlight(lang, code, ...args) has been deprecated."); + deprecated("10.7.0", "Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"); + languageName = codeOrlanguageName; + code = optionsOrCode; + } + const context2 = { + code, + language: languageName + }; + fire("before:highlight", context2); + const result = context2.result ? context2.result : _highlight(context2.language, context2.code, ignoreIllegals, continuation); + result.code = context2.code; + fire("after:highlight", result); + return result; + } + function _highlight(languageName, codeToHighlight, ignoreIllegals, continuation) { + function keywordData(mode, match2) { + const matchText = language.case_insensitive ? match2[0].toLowerCase() : match2[0]; + return Object.prototype.hasOwnProperty.call(mode.keywords, matchText) && mode.keywords[matchText]; + } + function processKeywords() { + if (!top.keywords) { + emitter.addText(modeBuffer); + return; + } + let lastIndex = 0; + top.keywordPatternRe.lastIndex = 0; + let match2 = top.keywordPatternRe.exec(modeBuffer); + let buf = ""; + while (match2) { + buf += modeBuffer.substring(lastIndex, match2.index); + const data = keywordData(top, match2); + if (data) { + const [kind, keywordRelevance] = data; + emitter.addText(buf); + buf = ""; + relevance += keywordRelevance; + if (kind.startsWith("_")) { + buf += match2[0]; + } else { + const cssClass = language.classNameAliases[kind] || kind; + emitter.addKeyword(match2[0], cssClass); + } + } else { + buf += match2[0]; + } + lastIndex = top.keywordPatternRe.lastIndex; + match2 = top.keywordPatternRe.exec(modeBuffer); + } + buf += modeBuffer.substr(lastIndex); + emitter.addText(buf); + } + function processSubLanguage() { + if (modeBuffer === "") + return; + let result2 = null; + if (typeof top.subLanguage === "string") { + if (!languages3[top.subLanguage]) { + emitter.addText(modeBuffer); + return; + } + result2 = _highlight(top.subLanguage, modeBuffer, true, continuations[top.subLanguage]); + continuations[top.subLanguage] = /** @type {CompiledMode} */ + result2.top; + } else { + result2 = highlightAuto2(modeBuffer, top.subLanguage.length ? top.subLanguage : null); + } + if (top.relevance > 0) { + relevance += result2.relevance; + } + emitter.addSublanguage(result2.emitter, result2.language); + } + function processBuffer() { + if (top.subLanguage != null) { + processSubLanguage(); + } else { + processKeywords(); + } + modeBuffer = ""; + } + function startNewMode(mode) { + if (mode.className) { + emitter.openNode(language.classNameAliases[mode.className] || mode.className); + } + top = Object.create(mode, { parent: { value: top } }); + return top; + } + function endOfMode(mode, match2, matchPlusRemainder) { + let matched = startsWith(mode.endRe, matchPlusRemainder); + if (matched) { + if (mode["on:end"]) { + const resp = new Response2(mode); + mode["on:end"](match2, resp); + if (resp.isMatchIgnored) + matched = false; + } + if (matched) { + while (mode.endsParent && mode.parent) { + mode = mode.parent; + } + return mode; + } + } + if (mode.endsWithParent) { + return endOfMode(mode.parent, match2, matchPlusRemainder); + } + } + function doIgnore(lexeme) { + if (top.matcher.regexIndex === 0) { + modeBuffer += lexeme[0]; + return 1; + } else { + resumeScanAtSamePosition = true; + return 0; + } + } + function doBeginMatch(match2) { + const lexeme = match2[0]; + const newMode = match2.rule; + const resp = new Response2(newMode); + const beforeCallbacks = [newMode.__beforeBegin, newMode["on:begin"]]; + for (const cb of beforeCallbacks) { + if (!cb) + continue; + cb(match2, resp); + if (resp.isMatchIgnored) + return doIgnore(lexeme); + } + if (newMode && newMode.endSameAsBegin) { + newMode.endRe = escape4(lexeme); + } + if (newMode.skip) { + modeBuffer += lexeme; + } else { + if (newMode.excludeBegin) { + modeBuffer += lexeme; + } + processBuffer(); + if (!newMode.returnBegin && !newMode.excludeBegin) { + modeBuffer = lexeme; + } + } + startNewMode(newMode); + return newMode.returnBegin ? 0 : lexeme.length; + } + function doEndMatch(match2) { + const lexeme = match2[0]; + const matchPlusRemainder = codeToHighlight.substr(match2.index); + const endMode = endOfMode(top, match2, matchPlusRemainder); + if (!endMode) { + return NO_MATCH; + } + const origin = top; + if (origin.skip) { + modeBuffer += lexeme; + } else { + if (!(origin.returnEnd || origin.excludeEnd)) { + modeBuffer += lexeme; + } + processBuffer(); + if (origin.excludeEnd) { + modeBuffer = lexeme; + } + } + do { + if (top.className) { + emitter.closeNode(); + } + if (!top.skip && !top.subLanguage) { + relevance += top.relevance; + } + top = top.parent; + } while (top !== endMode.parent); + if (endMode.starts) { + if (endMode.endSameAsBegin) { + endMode.starts.endRe = endMode.endRe; + } + startNewMode(endMode.starts); + } + return origin.returnEnd ? 0 : lexeme.length; + } + function processContinuations() { + const list = []; + for (let current = top; current !== language; current = current.parent) { + if (current.className) { + list.unshift(current.className); + } + } + list.forEach((item) => emitter.openNode(item)); + } + let lastMatch = {}; + function processLexeme(textBeforeMatch, match2) { + const lexeme = match2 && match2[0]; + modeBuffer += textBeforeMatch; + if (lexeme == null) { + processBuffer(); + return 0; + } + if (lastMatch.type === "begin" && match2.type === "end" && lastMatch.index === match2.index && lexeme === "") { + modeBuffer += codeToHighlight.slice(match2.index, match2.index + 1); + if (!SAFE_MODE) { + const err2 = new Error("0 width match regex"); + err2.languageName = languageName; + err2.badRule = lastMatch.rule; + throw err2; + } + return 1; + } + lastMatch = match2; + if (match2.type === "begin") { + return doBeginMatch(match2); + } else if (match2.type === "illegal" && !ignoreIllegals) { + const err2 = new Error('Illegal lexeme "' + lexeme + '" for mode "' + (top.className || "") + '"'); + err2.mode = top; + throw err2; + } else if (match2.type === "end") { + const processed = doEndMatch(match2); + if (processed !== NO_MATCH) { + return processed; + } + } + if (match2.type === "illegal" && lexeme === "") { + return 1; + } + if (iterations > 1e5 && iterations > match2.index * 3) { + const err2 = new Error("potential infinite loop, way more iterations than matches"); + throw err2; + } + modeBuffer += lexeme; + return lexeme.length; + } + const language = getLanguage(languageName); + if (!language) { + error(LANGUAGE_NOT_FOUND.replace("{}", languageName)); + throw new Error('Unknown language: "' + languageName + '"'); + } + const md = compileLanguage(language, { plugins }); + let result = ""; + let top = continuation || md; + const continuations = {}; + const emitter = new options2.__emitter(options2); + processContinuations(); + let modeBuffer = ""; + let relevance = 0; + let index = 0; + let iterations = 0; + let resumeScanAtSamePosition = false; + try { + top.matcher.considerAll(); + for (; ; ) { + iterations++; + if (resumeScanAtSamePosition) { + resumeScanAtSamePosition = false; + } else { + top.matcher.considerAll(); + } + top.matcher.lastIndex = index; + const match2 = top.matcher.exec(codeToHighlight); + if (!match2) + break; + const beforeMatch = codeToHighlight.substring(index, match2.index); + const processedCount = processLexeme(beforeMatch, match2); + index = match2.index + processedCount; + } + processLexeme(codeToHighlight.substr(index)); + emitter.closeAllNodes(); + emitter.finalize(); + result = emitter.toHTML(); + return { + // avoid possible breakage with v10 clients expecting + // this to always be an integer + relevance: Math.floor(relevance), + value: result, + language: languageName, + illegal: false, + emitter, + top + }; + } catch (err2) { + if (err2.message && err2.message.includes("Illegal")) { + return { + illegal: true, + illegalBy: { + msg: err2.message, + context: codeToHighlight.slice(index - 100, index + 100), + mode: err2.mode + }, + sofar: result, + relevance: 0, + value: escape$1(codeToHighlight), + emitter + }; + } else if (SAFE_MODE) { + return { + illegal: false, + relevance: 0, + value: escape$1(codeToHighlight), + emitter, + language: languageName, + top, + errorRaised: err2 + }; + } else { + throw err2; + } + } + } + function justTextHighlightResult(code) { + const result = { + relevance: 0, + emitter: new options2.__emitter(options2), + value: escape$1(code), + illegal: false, + top: PLAINTEXT_LANGUAGE + }; + result.emitter.addText(code); + return result; + } + function highlightAuto2(code, languageSubset) { + languageSubset = languageSubset || options2.languages || Object.keys(languages3); + const plaintext = justTextHighlightResult(code); + const results = languageSubset.filter(getLanguage).filter(autoDetection).map( + (name) => _highlight(name, code, false) + ); + results.unshift(plaintext); + const sorted = results.sort((a, b) => { + if (a.relevance !== b.relevance) + return b.relevance - a.relevance; + if (a.language && b.language) { + if (getLanguage(a.language).supersetOf === b.language) { + return 1; + } else if (getLanguage(b.language).supersetOf === a.language) { + return -1; + } + } + return 0; + }); + const [best, secondBest] = sorted; + const result = best; + result.second_best = secondBest; + return result; + } + function fixMarkup(html) { + if (!(options2.tabReplace || options2.useBR)) { + return html; + } + return html.replace(fixMarkupRe, (match2) => { + if (match2 === "\n") { + return options2.useBR ? "
" : match2; + } else if (options2.tabReplace) { + return match2.replace(/\t/g, options2.tabReplace); + } + return match2; + }); + } + function updateClassName(element, currentLang, resultLang) { + const language = currentLang ? aliases[currentLang] : resultLang; + element.classList.add("hljs"); + if (language) + element.classList.add(language); + } + const brPlugin = { + "before:highlightElement": ({ el }) => { + if (options2.useBR) { + el.innerHTML = el.innerHTML.replace(/\n/g, "").replace(//g, "\n"); + } + }, + "after:highlightElement": ({ result }) => { + if (options2.useBR) { + result.value = result.value.replace(/\n/g, "
"); + } + } + }; + const TAB_REPLACE_RE = /^(<[^>]+>|\t)+/gm; + const tabReplacePlugin = { + "after:highlightElement": ({ result }) => { + if (options2.tabReplace) { + result.value = result.value.replace( + TAB_REPLACE_RE, + (m) => m.replace(/\t/g, options2.tabReplace) + ); + } + } + }; + function highlightElement(element) { + let node = null; + const language = blockLanguage(element); + if (shouldNotHighlight(language)) + return; + fire( + "before:highlightElement", + { el: element, language } + ); + node = element; + const text = node.textContent; + const result = language ? highlight3(text, { language, ignoreIllegals: true }) : highlightAuto2(text); + fire("after:highlightElement", { el: element, result, text }); + element.innerHTML = result.value; + updateClassName(element, language, result.language); + element.result = { + language: result.language, + // TODO: remove with version 11.0 + re: result.relevance, + relavance: result.relevance + }; + if (result.second_best) { + element.second_best = { + language: result.second_best.language, + // TODO: remove with version 11.0 + re: result.second_best.relevance, + relavance: result.second_best.relevance + }; + } + } + function configure(userOptions) { + if (userOptions.useBR) { + deprecated("10.3.0", "'useBR' will be removed entirely in v11.0"); + deprecated("10.3.0", "Please see https://github.com/highlightjs/highlight.js/issues/2559"); + } + options2 = inherit$1(options2, userOptions); + } + const initHighlighting = () => { + if (initHighlighting.called) + return; + initHighlighting.called = true; + deprecated("10.6.0", "initHighlighting() is deprecated. Use highlightAll() instead."); + const blocks = document.querySelectorAll("pre code"); + blocks.forEach(highlightElement); + }; + function initHighlightingOnLoad() { + deprecated("10.6.0", "initHighlightingOnLoad() is deprecated. Use highlightAll() instead."); + wantsHighlight = true; + } + let wantsHighlight = false; + function highlightAll() { + if (document.readyState === "loading") { + wantsHighlight = true; + return; + } + const blocks = document.querySelectorAll("pre code"); + blocks.forEach(highlightElement); + } + function boot() { + if (wantsHighlight) + highlightAll(); + } + if (typeof window !== "undefined" && window.addEventListener) { + window.addEventListener("DOMContentLoaded", boot, false); + } + function registerLanguage(languageName, languageDefinition) { + let lang = null; + try { + lang = languageDefinition(hljs); + } catch (error$1) { + error("Language definition for '{}' could not be registered.".replace("{}", languageName)); + if (!SAFE_MODE) { + throw error$1; + } else { + error(error$1); + } + lang = PLAINTEXT_LANGUAGE; + } + if (!lang.name) + lang.name = languageName; + languages3[languageName] = lang; + lang.rawDefinition = languageDefinition.bind(null, hljs); + if (lang.aliases) { + registerAliases(lang.aliases, { languageName }); + } + } + function unregisterLanguage(languageName) { + delete languages3[languageName]; + for (const alias of Object.keys(aliases)) { + if (aliases[alias] === languageName) { + delete aliases[alias]; + } + } + } + function listLanguages() { + return Object.keys(languages3); + } + function requireLanguage(name) { + deprecated("10.4.0", "requireLanguage will be removed entirely in v11."); + deprecated("10.4.0", "Please see https://github.com/highlightjs/highlight.js/pull/2844"); + const lang = getLanguage(name); + if (lang) { + return lang; + } + const err2 = new Error("The '{}' language is required, but not loaded.".replace("{}", name)); + throw err2; + } + function getLanguage(name) { + name = (name || "").toLowerCase(); + return languages3[name] || languages3[aliases[name]]; + } + function registerAliases(aliasList, { languageName }) { + if (typeof aliasList === "string") { + aliasList = [aliasList]; + } + aliasList.forEach((alias) => { + aliases[alias.toLowerCase()] = languageName; + }); + } + function autoDetection(name) { + const lang = getLanguage(name); + return lang && !lang.disableAutodetect; + } + function upgradePluginAPI(plugin) { + if (plugin["before:highlightBlock"] && !plugin["before:highlightElement"]) { + plugin["before:highlightElement"] = (data) => { + plugin["before:highlightBlock"]( + Object.assign({ block: data.el }, data) + ); + }; + } + if (plugin["after:highlightBlock"] && !plugin["after:highlightElement"]) { + plugin["after:highlightElement"] = (data) => { + plugin["after:highlightBlock"]( + Object.assign({ block: data.el }, data) + ); + }; + } + } + function addPlugin(plugin) { + upgradePluginAPI(plugin); + plugins.push(plugin); + } + function fire(event, args3) { + const cb = event; + plugins.forEach(function(plugin) { + if (plugin[cb]) { + plugin[cb](args3); + } + }); + } + function deprecateFixMarkup(arg) { + deprecated("10.2.0", "fixMarkup will be removed entirely in v11.0"); + deprecated("10.2.0", "Please see https://github.com/highlightjs/highlight.js/issues/2534"); + return fixMarkup(arg); + } + function deprecateHighlightBlock(el) { + deprecated("10.7.0", "highlightBlock will be removed entirely in v12.0"); + deprecated("10.7.0", "Please use highlightElement now."); + return highlightElement(el); + } + Object.assign(hljs, { + highlight: highlight3, + highlightAuto: highlightAuto2, + highlightAll, + fixMarkup: deprecateFixMarkup, + highlightElement, + // TODO: Remove with v12 API + highlightBlock: deprecateHighlightBlock, + configure, + initHighlighting, + initHighlightingOnLoad, + registerLanguage, + unregisterLanguage, + listLanguages, + getLanguage, + registerAliases, + requireLanguage, + autoDetection, + inherit: inherit$1, + addPlugin, + // plugins for frameworks + vuePlugin: BuildVuePlugin(hljs).VuePlugin + }); + hljs.debugMode = function() { + SAFE_MODE = false; + }; + hljs.safeMode = function() { + SAFE_MODE = true; + }; + hljs.versionString = version4; + for (const key in MODES) { + if (typeof MODES[key] === "object") { + deepFreezeEs6(MODES[key]); + } + } + Object.assign(hljs, MODES); + hljs.addPlugin(brPlugin); + hljs.addPlugin(mergeHTMLPlugin); + hljs.addPlugin(tabReplacePlugin); + return hljs; + }; + var highlight2 = HLJS({}); + module2.exports = highlight2; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/interopRequireDefault.js +var require_interopRequireDefault = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/interopRequireDefault.js"(exports2, module2) { + function _interopRequireDefault(obj2) { + return obj2 && obj2.__esModule ? obj2 : { + "default": obj2 + }; + } + module2.exports = _interopRequireDefault, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/typeof.js +var require_typeof = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/typeof.js"(exports2, module2) { + function _typeof(obj2) { + "@babel/helpers - typeof"; + return module2.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(obj3) { + return typeof obj3; + } : function(obj3) { + return obj3 && "function" == typeof Symbol && obj3.constructor === Symbol && obj3 !== Symbol.prototype ? "symbol" : typeof obj3; + }, module2.exports.__esModule = true, module2.exports["default"] = module2.exports, _typeof(obj2); + } + module2.exports = _typeof, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/toInteger/index.js +var require_toInteger = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/toInteger/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = toInteger; + function toInteger(dirtyNumber) { + if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) { + return NaN; + } + var number = Number(dirtyNumber); + if (isNaN(number)) { + return number; + } + return number < 0 ? Math.ceil(number) : Math.floor(number); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/requiredArgs/index.js +var require_requiredArgs = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/requiredArgs/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = requiredArgs; + function requiredArgs(required, args3) { + if (args3.length < required) { + throw new TypeError(required + " argument" + (required > 1 ? "s" : "") + " required, but only " + args3.length + " present"); + } + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/toDate/index.js +var require_toDate = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/toDate/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = toDate; + var _typeof2 = _interopRequireDefault(require_typeof()); + var _index = _interopRequireDefault(require_requiredArgs()); + function toDate(argument) { + (0, _index.default)(1, arguments); + var argStr = Object.prototype.toString.call(argument); + if (argument instanceof Date || (0, _typeof2.default)(argument) === "object" && argStr === "[object Date]") { + return new Date(argument.getTime()); + } else if (typeof argument === "number" || argStr === "[object Number]") { + return new Date(argument); + } else { + if ((typeof argument === "string" || argStr === "[object String]") && typeof console !== "undefined") { + console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"); + console.warn(new Error().stack); + } + return /* @__PURE__ */ new Date(NaN); + } + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addDays/index.js +var require_addDays = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addDays/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addDays; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function addDays(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var amount = (0, _index.default)(dirtyAmount); + if (isNaN(amount)) { + return /* @__PURE__ */ new Date(NaN); + } + if (!amount) { + return date; + } + date.setDate(date.getDate() + amount); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addMonths/index.js +var require_addMonths = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addMonths/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addMonths; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function addMonths(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var amount = (0, _index.default)(dirtyAmount); + if (isNaN(amount)) { + return /* @__PURE__ */ new Date(NaN); + } + if (!amount) { + return date; + } + var dayOfMonth = date.getDate(); + var endOfDesiredMonth = new Date(date.getTime()); + endOfDesiredMonth.setMonth(date.getMonth() + amount + 1, 0); + var daysInMonth = endOfDesiredMonth.getDate(); + if (dayOfMonth >= daysInMonth) { + return endOfDesiredMonth; + } else { + date.setFullYear(endOfDesiredMonth.getFullYear(), endOfDesiredMonth.getMonth(), dayOfMonth); + return date; + } + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/add/index.js +var require_add = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/add/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = add; + var _typeof2 = _interopRequireDefault(require_typeof()); + var _index = _interopRequireDefault(require_addDays()); + var _index2 = _interopRequireDefault(require_addMonths()); + var _index3 = _interopRequireDefault(require_toDate()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + var _index5 = _interopRequireDefault(require_toInteger()); + function add(dirtyDate, duration) { + (0, _index4.default)(2, arguments); + if (!duration || (0, _typeof2.default)(duration) !== "object") + return /* @__PURE__ */ new Date(NaN); + var years = duration.years ? (0, _index5.default)(duration.years) : 0; + var months = duration.months ? (0, _index5.default)(duration.months) : 0; + var weeks = duration.weeks ? (0, _index5.default)(duration.weeks) : 0; + var days = duration.days ? (0, _index5.default)(duration.days) : 0; + var hours = duration.hours ? (0, _index5.default)(duration.hours) : 0; + var minutes = duration.minutes ? (0, _index5.default)(duration.minutes) : 0; + var seconds = duration.seconds ? (0, _index5.default)(duration.seconds) : 0; + var date = (0, _index3.default)(dirtyDate); + var dateWithMonths = months || years ? (0, _index2.default)(date, months + years * 12) : date; + var dateWithDays = days || weeks ? (0, _index.default)(dateWithMonths, days + weeks * 7) : dateWithMonths; + var minutesToAdd = minutes + hours * 60; + var secondsToAdd = seconds + minutesToAdd * 60; + var msToAdd = secondsToAdd * 1e3; + var finalDate = new Date(dateWithDays.getTime() + msToAdd); + return finalDate; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isWeekend/index.js +var require_isWeekend = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isWeekend/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isWeekend; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isWeekend(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var day = date.getDay(); + return day === 0 || day === 6; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSunday/index.js +var require_isSunday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSunday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSunday; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSunday(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate).getDay() === 0; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSaturday/index.js +var require_isSaturday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSaturday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSaturday; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSaturday(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate).getDay() === 6; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addBusinessDays/index.js +var require_addBusinessDays = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addBusinessDays/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addBusinessDays; + var _index = _interopRequireDefault(require_isWeekend()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_toInteger()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + var _index5 = _interopRequireDefault(require_isSunday()); + var _index6 = _interopRequireDefault(require_isSaturday()); + function addBusinessDays(dirtyDate, dirtyAmount) { + (0, _index4.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var startedOnWeekend = (0, _index.default)(date); + var amount = (0, _index3.default)(dirtyAmount); + if (isNaN(amount)) + return /* @__PURE__ */ new Date(NaN); + var hours = date.getHours(); + var sign = amount < 0 ? -1 : 1; + var fullWeeks = (0, _index3.default)(amount / 5); + date.setDate(date.getDate() + fullWeeks * 7); + var restDays = Math.abs(amount % 5); + while (restDays > 0) { + date.setDate(date.getDate() + sign); + if (!(0, _index.default)(date)) + restDays -= 1; + } + if (startedOnWeekend && (0, _index.default)(date) && amount !== 0) { + if ((0, _index6.default)(date)) + date.setDate(date.getDate() + (sign < 0 ? 2 : -1)); + if ((0, _index5.default)(date)) + date.setDate(date.getDate() + (sign < 0 ? 1 : -2)); + } + date.setHours(hours); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addMilliseconds/index.js +var require_addMilliseconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addMilliseconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addMilliseconds; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function addMilliseconds(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var timestamp = (0, _index2.default)(dirtyDate).getTime(); + var amount = (0, _index.default)(dirtyAmount); + return new Date(timestamp + amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addHours/index.js +var require_addHours = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addHours/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addHours; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addMilliseconds()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_HOUR = 36e5; + function addHours(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + return (0, _index2.default)(dirtyDate, amount * MILLISECONDS_IN_HOUR); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/defaultOptions/index.js +var require_defaultOptions = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/defaultOptions/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.getDefaultOptions = getDefaultOptions; + exports2.setDefaultOptions = setDefaultOptions; + var defaultOptions = {}; + function getDefaultOptions() { + return defaultOptions; + } + function setDefaultOptions(newOptions) { + defaultOptions = newOptions; + } + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfWeek/index.js +var require_startOfWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfWeek; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_toInteger()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var _index4 = require_defaultOptions(); + function startOfWeek(dirtyDate, options2) { + var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index3.default)(1, arguments); + var defaultOptions = (0, _index4.getDefaultOptions)(); + var weekStartsOn = (0, _index2.default)((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options2 === null || options2 === void 0 ? void 0 : options2.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); + if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) { + throw new RangeError("weekStartsOn must be between 0 and 6 inclusively"); + } + var date = (0, _index.default)(dirtyDate); + var day = date.getDay(); + var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn; + date.setDate(date.getDate() - diff); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfISOWeek/index.js +var require_startOfISOWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfISOWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfISOWeek; + var _index = _interopRequireDefault(require_startOfWeek()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function startOfISOWeek(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate, { + weekStartsOn: 1 + }); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getISOWeekYear/index.js +var require_getISOWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getISOWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getISOWeekYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_startOfISOWeek()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function getISOWeekYear(dirtyDate) { + (0, _index3.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getFullYear(); + var fourthOfJanuaryOfNextYear = /* @__PURE__ */ new Date(0); + fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4); + fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0); + var startOfNextYear = (0, _index2.default)(fourthOfJanuaryOfNextYear); + var fourthOfJanuaryOfThisYear = /* @__PURE__ */ new Date(0); + fourthOfJanuaryOfThisYear.setFullYear(year, 0, 4); + fourthOfJanuaryOfThisYear.setHours(0, 0, 0, 0); + var startOfThisYear = (0, _index2.default)(fourthOfJanuaryOfThisYear); + if (date.getTime() >= startOfNextYear.getTime()) { + return year + 1; + } else if (date.getTime() >= startOfThisYear.getTime()) { + return year; + } else { + return year - 1; + } + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfISOWeekYear/index.js +var require_startOfISOWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfISOWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfISOWeekYear; + var _index = _interopRequireDefault(require_getISOWeekYear()); + var _index2 = _interopRequireDefault(require_startOfISOWeek()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function startOfISOWeekYear(dirtyDate) { + (0, _index3.default)(1, arguments); + var year = (0, _index.default)(dirtyDate); + var fourthOfJanuary = /* @__PURE__ */ new Date(0); + fourthOfJanuary.setFullYear(year, 0, 4); + fourthOfJanuary.setHours(0, 0, 0, 0); + var date = (0, _index2.default)(fourthOfJanuary); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds/index.js +var require_getTimezoneOffsetInMilliseconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getTimezoneOffsetInMilliseconds; + function getTimezoneOffsetInMilliseconds(date) { + var utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds())); + utcDate.setUTCFullYear(date.getFullYear()); + return date.getTime() - utcDate.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfDay/index.js +var require_startOfDay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfDay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfDay; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function startOfDay(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarDays/index.js +var require_differenceInCalendarDays = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarDays/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInCalendarDays; + var _index = _interopRequireDefault(require_getTimezoneOffsetInMilliseconds()); + var _index2 = _interopRequireDefault(require_startOfDay()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_DAY = 864e5; + function differenceInCalendarDays(dirtyDateLeft, dirtyDateRight) { + (0, _index3.default)(2, arguments); + var startOfDayLeft = (0, _index2.default)(dirtyDateLeft); + var startOfDayRight = (0, _index2.default)(dirtyDateRight); + var timestampLeft = startOfDayLeft.getTime() - (0, _index.default)(startOfDayLeft); + var timestampRight = startOfDayRight.getTime() - (0, _index.default)(startOfDayRight); + return Math.round((timestampLeft - timestampRight) / MILLISECONDS_IN_DAY); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setISOWeekYear/index.js +var require_setISOWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setISOWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setISOWeekYear; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_startOfISOWeekYear()); + var _index4 = _interopRequireDefault(require_differenceInCalendarDays()); + var _index5 = _interopRequireDefault(require_requiredArgs()); + function setISOWeekYear(dirtyDate, dirtyISOWeekYear) { + (0, _index5.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var isoWeekYear = (0, _index.default)(dirtyISOWeekYear); + var diff = (0, _index4.default)(date, (0, _index3.default)(date)); + var fourthOfJanuary = /* @__PURE__ */ new Date(0); + fourthOfJanuary.setFullYear(isoWeekYear, 0, 4); + fourthOfJanuary.setHours(0, 0, 0, 0); + date = (0, _index3.default)(fourthOfJanuary); + date.setDate(date.getDate() + diff); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addISOWeekYears/index.js +var require_addISOWeekYears = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addISOWeekYears/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addISOWeekYears; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_getISOWeekYear()); + var _index3 = _interopRequireDefault(require_setISOWeekYear()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function addISOWeekYears(dirtyDate, dirtyAmount) { + (0, _index4.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + return (0, _index3.default)(dirtyDate, (0, _index2.default)(dirtyDate) + amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addMinutes/index.js +var require_addMinutes = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addMinutes/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addMinutes; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addMilliseconds()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_MINUTE = 6e4; + function addMinutes(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + return (0, _index2.default)(dirtyDate, amount * MILLISECONDS_IN_MINUTE); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addQuarters/index.js +var require_addQuarters = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addQuarters/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addQuarters; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addMonths()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function addQuarters(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + var months = amount * 3; + return (0, _index2.default)(dirtyDate, months); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addSeconds/index.js +var require_addSeconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addSeconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addSeconds; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addMilliseconds()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function addSeconds(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + return (0, _index2.default)(dirtyDate, amount * 1e3); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addWeeks/index.js +var require_addWeeks = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addWeeks/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addWeeks; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addDays()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function addWeeks(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + var days = amount * 7; + return (0, _index2.default)(dirtyDate, days); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addYears/index.js +var require_addYears = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/addYears/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addYears; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addMonths()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function addYears(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + return (0, _index2.default)(dirtyDate, amount * 12); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/areIntervalsOverlapping/index.js +var require_areIntervalsOverlapping = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/areIntervalsOverlapping/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = areIntervalsOverlapping; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function areIntervalsOverlapping(intervalLeft, intervalRight, options2) { + (0, _index2.default)(2, arguments); + var leftStartTime = (0, _index.default)(intervalLeft === null || intervalLeft === void 0 ? void 0 : intervalLeft.start).getTime(); + var leftEndTime = (0, _index.default)(intervalLeft === null || intervalLeft === void 0 ? void 0 : intervalLeft.end).getTime(); + var rightStartTime = (0, _index.default)(intervalRight === null || intervalRight === void 0 ? void 0 : intervalRight.start).getTime(); + var rightEndTime = (0, _index.default)(intervalRight === null || intervalRight === void 0 ? void 0 : intervalRight.end).getTime(); + if (!(leftStartTime <= leftEndTime && rightStartTime <= rightEndTime)) { + throw new RangeError("Invalid interval"); + } + if (options2 !== null && options2 !== void 0 && options2.inclusive) { + return leftStartTime <= rightEndTime && rightStartTime <= leftEndTime; + } + return leftStartTime < rightEndTime && rightStartTime < leftEndTime; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/max/index.js +var require_max2 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/max/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = max; + var _typeof2 = _interopRequireDefault(require_typeof()); + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function max(dirtyDatesArray) { + (0, _index2.default)(1, arguments); + var datesArray; + if (dirtyDatesArray && typeof dirtyDatesArray.forEach === "function") { + datesArray = dirtyDatesArray; + } else if ((0, _typeof2.default)(dirtyDatesArray) === "object" && dirtyDatesArray !== null) { + datesArray = Array.prototype.slice.call(dirtyDatesArray); + } else { + return /* @__PURE__ */ new Date(NaN); + } + var result; + datesArray.forEach(function(dirtyDate) { + var currentDate = (0, _index.default)(dirtyDate); + if (result === void 0 || result < currentDate || isNaN(Number(currentDate))) { + result = currentDate; + } + }); + return result || /* @__PURE__ */ new Date(NaN); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/min/index.js +var require_min2 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/min/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = min; + var _typeof2 = _interopRequireDefault(require_typeof()); + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function min(dirtyDatesArray) { + (0, _index2.default)(1, arguments); + var datesArray; + if (dirtyDatesArray && typeof dirtyDatesArray.forEach === "function") { + datesArray = dirtyDatesArray; + } else if ((0, _typeof2.default)(dirtyDatesArray) === "object" && dirtyDatesArray !== null) { + datesArray = Array.prototype.slice.call(dirtyDatesArray); + } else { + return /* @__PURE__ */ new Date(NaN); + } + var result; + datesArray.forEach(function(dirtyDate) { + var currentDate = (0, _index.default)(dirtyDate); + if (result === void 0 || result > currentDate || isNaN(currentDate.getDate())) { + result = currentDate; + } + }); + return result || /* @__PURE__ */ new Date(NaN); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/clamp/index.js +var require_clamp = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/clamp/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = clamp; + var _index = _interopRequireDefault(require_max2()); + var _index2 = _interopRequireDefault(require_min2()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function clamp(date, _ref) { + var start4 = _ref.start, end = _ref.end; + (0, _index3.default)(2, arguments); + return (0, _index2.default)([(0, _index.default)([date, start4]), end]); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/closestIndexTo/index.js +var require_closestIndexTo = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/closestIndexTo/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = closestIndexTo; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function closestIndexTo(dirtyDateToCompare, dirtyDatesArray) { + (0, _index2.default)(2, arguments); + var dateToCompare = (0, _index.default)(dirtyDateToCompare); + if (isNaN(Number(dateToCompare))) + return NaN; + var timeToCompare = dateToCompare.getTime(); + var datesArray; + if (dirtyDatesArray == null) { + datesArray = []; + } else if (typeof dirtyDatesArray.forEach === "function") { + datesArray = dirtyDatesArray; + } else { + datesArray = Array.prototype.slice.call(dirtyDatesArray); + } + var result; + var minDistance; + datesArray.forEach(function(dirtyDate, index) { + var currentDate = (0, _index.default)(dirtyDate); + if (isNaN(Number(currentDate))) { + result = NaN; + minDistance = NaN; + return; + } + var distance = Math.abs(timeToCompare - currentDate.getTime()); + if (result == null || distance < Number(minDistance)) { + result = index; + minDistance = distance; + } + }); + return result; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/closestTo/index.js +var require_closestTo = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/closestTo/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = closestTo; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function closestTo(dirtyDateToCompare, dirtyDatesArray) { + (0, _index2.default)(2, arguments); + var dateToCompare = (0, _index.default)(dirtyDateToCompare); + if (isNaN(Number(dateToCompare))) + return /* @__PURE__ */ new Date(NaN); + var timeToCompare = dateToCompare.getTime(); + var datesArray; + if (dirtyDatesArray == null) { + datesArray = []; + } else if (typeof dirtyDatesArray.forEach === "function") { + datesArray = dirtyDatesArray; + } else { + datesArray = Array.prototype.slice.call(dirtyDatesArray); + } + var result; + var minDistance; + datesArray.forEach(function(dirtyDate) { + var currentDate = (0, _index.default)(dirtyDate); + if (isNaN(Number(currentDate))) { + result = /* @__PURE__ */ new Date(NaN); + minDistance = NaN; + return; + } + var distance = Math.abs(timeToCompare - currentDate.getTime()); + if (result == null || distance < Number(minDistance)) { + result = currentDate; + minDistance = distance; + } + }); + return result; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/compareAsc/index.js +var require_compareAsc = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/compareAsc/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = compareAsc; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function compareAsc(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyDateLeft); + var dateRight = (0, _index.default)(dirtyDateRight); + var diff = dateLeft.getTime() - dateRight.getTime(); + if (diff < 0) { + return -1; + } else if (diff > 0) { + return 1; + } else { + return diff; + } + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/compareDesc/index.js +var require_compareDesc = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/compareDesc/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = compareDesc; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function compareDesc(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyDateLeft); + var dateRight = (0, _index.default)(dirtyDateRight); + var diff = dateLeft.getTime() - dateRight.getTime(); + if (diff > 0) { + return -1; + } else if (diff < 0) { + return 1; + } else { + return diff; + } + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/constants/index.js +var require_constants2 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/constants/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.secondsInYear = exports2.secondsInWeek = exports2.secondsInQuarter = exports2.secondsInMonth = exports2.secondsInMinute = exports2.secondsInHour = exports2.secondsInDay = exports2.quartersInYear = exports2.monthsInYear = exports2.monthsInQuarter = exports2.minutesInHour = exports2.minTime = exports2.millisecondsInSecond = exports2.millisecondsInMinute = exports2.millisecondsInHour = exports2.maxTime = exports2.daysInYear = exports2.daysInWeek = void 0; + var daysInWeek = 7; + exports2.daysInWeek = daysInWeek; + var daysInYear = 365.2425; + exports2.daysInYear = daysInYear; + var maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1e3; + exports2.maxTime = maxTime; + var millisecondsInMinute = 6e4; + exports2.millisecondsInMinute = millisecondsInMinute; + var millisecondsInHour = 36e5; + exports2.millisecondsInHour = millisecondsInHour; + var millisecondsInSecond = 1e3; + exports2.millisecondsInSecond = millisecondsInSecond; + var minTime = -maxTime; + exports2.minTime = minTime; + var minutesInHour = 60; + exports2.minutesInHour = minutesInHour; + var monthsInQuarter = 3; + exports2.monthsInQuarter = monthsInQuarter; + var monthsInYear = 12; + exports2.monthsInYear = monthsInYear; + var quartersInYear = 4; + exports2.quartersInYear = quartersInYear; + var secondsInHour = 3600; + exports2.secondsInHour = secondsInHour; + var secondsInMinute = 60; + exports2.secondsInMinute = secondsInMinute; + var secondsInDay = secondsInHour * 24; + exports2.secondsInDay = secondsInDay; + var secondsInWeek = secondsInDay * 7; + exports2.secondsInWeek = secondsInWeek; + var secondsInYear = secondsInDay * daysInYear; + exports2.secondsInYear = secondsInYear; + var secondsInMonth = secondsInYear / 12; + exports2.secondsInMonth = secondsInMonth; + var secondsInQuarter = secondsInMonth * 3; + exports2.secondsInQuarter = secondsInQuarter; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/daysToWeeks/index.js +var require_daysToWeeks = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/daysToWeeks/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = daysToWeeks; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function daysToWeeks(days) { + (0, _index.default)(1, arguments); + var weeks = days / _index2.daysInWeek; + return Math.floor(weeks); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameDay/index.js +var require_isSameDay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameDay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSameDay; + var _index = _interopRequireDefault(require_startOfDay()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSameDay(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeftStartOfDay = (0, _index.default)(dirtyDateLeft); + var dateRightStartOfDay = (0, _index.default)(dirtyDateRight); + return dateLeftStartOfDay.getTime() === dateRightStartOfDay.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isDate/index.js +var require_isDate2 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isDate/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isDate2; + var _typeof2 = _interopRequireDefault(require_typeof()); + var _index = _interopRequireDefault(require_requiredArgs()); + function isDate2(value) { + (0, _index.default)(1, arguments); + return value instanceof Date || (0, _typeof2.default)(value) === "object" && Object.prototype.toString.call(value) === "[object Date]"; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isValid/index.js +var require_isValid = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isValid/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isValid; + var _index = _interopRequireDefault(require_isDate2()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function isValid(dirtyDate) { + (0, _index3.default)(1, arguments); + if (!(0, _index.default)(dirtyDate) && typeof dirtyDate !== "number") { + return false; + } + var date = (0, _index2.default)(dirtyDate); + return !isNaN(Number(date)); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInBusinessDays/index.js +var require_differenceInBusinessDays = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInBusinessDays/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInBusinessDays; + var _index = _interopRequireDefault(require_addDays()); + var _index2 = _interopRequireDefault(require_differenceInCalendarDays()); + var _index3 = _interopRequireDefault(require_isSameDay()); + var _index4 = _interopRequireDefault(require_isValid()); + var _index5 = _interopRequireDefault(require_isWeekend()); + var _index6 = _interopRequireDefault(require_toDate()); + var _index7 = _interopRequireDefault(require_requiredArgs()); + var _index8 = _interopRequireDefault(require_toInteger()); + function differenceInBusinessDays(dirtyDateLeft, dirtyDateRight) { + (0, _index7.default)(2, arguments); + var dateLeft = (0, _index6.default)(dirtyDateLeft); + var dateRight = (0, _index6.default)(dirtyDateRight); + if (!(0, _index4.default)(dateLeft) || !(0, _index4.default)(dateRight)) + return NaN; + var calendarDifference = (0, _index2.default)(dateLeft, dateRight); + var sign = calendarDifference < 0 ? -1 : 1; + var weeks = (0, _index8.default)(calendarDifference / 7); + var result = weeks * 5; + dateRight = (0, _index.default)(dateRight, weeks * 7); + while (!(0, _index3.default)(dateLeft, dateRight)) { + result += (0, _index5.default)(dateRight) ? 0 : sign; + dateRight = (0, _index.default)(dateRight, sign); + } + return result === 0 ? 0 : result; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarISOWeekYears/index.js +var require_differenceInCalendarISOWeekYears = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarISOWeekYears/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInCalendarISOWeekYears; + var _index = _interopRequireDefault(require_getISOWeekYear()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function differenceInCalendarISOWeekYears(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + return (0, _index.default)(dirtyDateLeft) - (0, _index.default)(dirtyDateRight); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarISOWeeks/index.js +var require_differenceInCalendarISOWeeks = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarISOWeeks/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInCalendarISOWeeks; + var _index = _interopRequireDefault(require_getTimezoneOffsetInMilliseconds()); + var _index2 = _interopRequireDefault(require_startOfISOWeek()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_WEEK = 6048e5; + function differenceInCalendarISOWeeks(dirtyDateLeft, dirtyDateRight) { + (0, _index3.default)(2, arguments); + var startOfISOWeekLeft = (0, _index2.default)(dirtyDateLeft); + var startOfISOWeekRight = (0, _index2.default)(dirtyDateRight); + var timestampLeft = startOfISOWeekLeft.getTime() - (0, _index.default)(startOfISOWeekLeft); + var timestampRight = startOfISOWeekRight.getTime() - (0, _index.default)(startOfISOWeekRight); + return Math.round((timestampLeft - timestampRight) / MILLISECONDS_IN_WEEK); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarMonths/index.js +var require_differenceInCalendarMonths = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarMonths/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInCalendarMonths; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function differenceInCalendarMonths(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyDateLeft); + var dateRight = (0, _index.default)(dirtyDateRight); + var yearDiff = dateLeft.getFullYear() - dateRight.getFullYear(); + var monthDiff = dateLeft.getMonth() - dateRight.getMonth(); + return yearDiff * 12 + monthDiff; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getQuarter/index.js +var require_getQuarter = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getQuarter/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getQuarter; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getQuarter(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var quarter = Math.floor(date.getMonth() / 3) + 1; + return quarter; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarQuarters/index.js +var require_differenceInCalendarQuarters = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarQuarters/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInCalendarQuarters; + var _index = _interopRequireDefault(require_getQuarter()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function differenceInCalendarQuarters(dirtyDateLeft, dirtyDateRight) { + (0, _index3.default)(2, arguments); + var dateLeft = (0, _index2.default)(dirtyDateLeft); + var dateRight = (0, _index2.default)(dirtyDateRight); + var yearDiff = dateLeft.getFullYear() - dateRight.getFullYear(); + var quarterDiff = (0, _index.default)(dateLeft) - (0, _index.default)(dateRight); + return yearDiff * 4 + quarterDiff; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarWeeks/index.js +var require_differenceInCalendarWeeks = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarWeeks/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInCalendarWeeks; + var _index = _interopRequireDefault(require_startOfWeek()); + var _index2 = _interopRequireDefault(require_getTimezoneOffsetInMilliseconds()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_WEEK = 6048e5; + function differenceInCalendarWeeks(dirtyDateLeft, dirtyDateRight, options2) { + (0, _index3.default)(2, arguments); + var startOfWeekLeft = (0, _index.default)(dirtyDateLeft, options2); + var startOfWeekRight = (0, _index.default)(dirtyDateRight, options2); + var timestampLeft = startOfWeekLeft.getTime() - (0, _index2.default)(startOfWeekLeft); + var timestampRight = startOfWeekRight.getTime() - (0, _index2.default)(startOfWeekRight); + return Math.round((timestampLeft - timestampRight) / MILLISECONDS_IN_WEEK); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarYears/index.js +var require_differenceInCalendarYears = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInCalendarYears/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInCalendarYears; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function differenceInCalendarYears(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyDateLeft); + var dateRight = (0, _index.default)(dirtyDateRight); + return dateLeft.getFullYear() - dateRight.getFullYear(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInDays/index.js +var require_differenceInDays = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInDays/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInDays; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_differenceInCalendarDays()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function compareLocalAsc(dateLeft, dateRight) { + var diff = dateLeft.getFullYear() - dateRight.getFullYear() || dateLeft.getMonth() - dateRight.getMonth() || dateLeft.getDate() - dateRight.getDate() || dateLeft.getHours() - dateRight.getHours() || dateLeft.getMinutes() - dateRight.getMinutes() || dateLeft.getSeconds() - dateRight.getSeconds() || dateLeft.getMilliseconds() - dateRight.getMilliseconds(); + if (diff < 0) { + return -1; + } else if (diff > 0) { + return 1; + } else { + return diff; + } + } + function differenceInDays(dirtyDateLeft, dirtyDateRight) { + (0, _index3.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyDateLeft); + var dateRight = (0, _index.default)(dirtyDateRight); + var sign = compareLocalAsc(dateLeft, dateRight); + var difference = Math.abs((0, _index2.default)(dateLeft, dateRight)); + dateLeft.setDate(dateLeft.getDate() - sign * difference); + var isLastDayNotFull = Number(compareLocalAsc(dateLeft, dateRight) === -sign); + var result = sign * (difference - isLastDayNotFull); + return result === 0 ? 0 : result; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInMilliseconds/index.js +var require_differenceInMilliseconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInMilliseconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInMilliseconds; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function differenceInMilliseconds(dateLeft, dateRight) { + (0, _index2.default)(2, arguments); + return (0, _index.default)(dateLeft).getTime() - (0, _index.default)(dateRight).getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/roundingMethods/index.js +var require_roundingMethods = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/roundingMethods/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.getRoundingMethod = getRoundingMethod; + var roundingMap = { + ceil: Math.ceil, + round: Math.round, + floor: Math.floor, + trunc: function trunc(value) { + return value < 0 ? Math.ceil(value) : Math.floor(value); + } + // Math.trunc is not supported by IE + }; + var defaultRoundingMethod = "trunc"; + function getRoundingMethod(method) { + return method ? roundingMap[method] : roundingMap[defaultRoundingMethod]; + } + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInHours/index.js +var require_differenceInHours = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInHours/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInHours; + var _index = require_constants2(); + var _index2 = _interopRequireDefault(require_differenceInMilliseconds()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var _index4 = require_roundingMethods(); + function differenceInHours(dateLeft, dateRight, options2) { + (0, _index3.default)(2, arguments); + var diff = (0, _index2.default)(dateLeft, dateRight) / _index.millisecondsInHour; + return (0, _index4.getRoundingMethod)(options2 === null || options2 === void 0 ? void 0 : options2.roundingMethod)(diff); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subISOWeekYears/index.js +var require_subISOWeekYears = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subISOWeekYears/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subISOWeekYears; + var _index = _interopRequireDefault(require_addISOWeekYears()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_toInteger()); + function subISOWeekYears(dirtyDate, dirtyAmount) { + (0, _index2.default)(2, arguments); + var amount = (0, _index3.default)(dirtyAmount); + return (0, _index.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInISOWeekYears/index.js +var require_differenceInISOWeekYears = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInISOWeekYears/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInISOWeekYears; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_differenceInCalendarISOWeekYears()); + var _index3 = _interopRequireDefault(require_compareAsc()); + var _index4 = _interopRequireDefault(require_subISOWeekYears()); + var _index5 = _interopRequireDefault(require_requiredArgs()); + function differenceInISOWeekYears(dirtyDateLeft, dirtyDateRight) { + (0, _index5.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyDateLeft); + var dateRight = (0, _index.default)(dirtyDateRight); + var sign = (0, _index3.default)(dateLeft, dateRight); + var difference = Math.abs((0, _index2.default)(dateLeft, dateRight)); + dateLeft = (0, _index4.default)(dateLeft, sign * difference); + var isLastISOWeekYearNotFull = Number((0, _index3.default)(dateLeft, dateRight) === -sign); + var result = sign * (difference - isLastISOWeekYearNotFull); + return result === 0 ? 0 : result; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInMinutes/index.js +var require_differenceInMinutes = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInMinutes/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInMinutes; + var _index = require_constants2(); + var _index2 = _interopRequireDefault(require_differenceInMilliseconds()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var _index4 = require_roundingMethods(); + function differenceInMinutes(dateLeft, dateRight, options2) { + (0, _index3.default)(2, arguments); + var diff = (0, _index2.default)(dateLeft, dateRight) / _index.millisecondsInMinute; + return (0, _index4.getRoundingMethod)(options2 === null || options2 === void 0 ? void 0 : options2.roundingMethod)(diff); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfDay/index.js +var require_endOfDay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfDay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfDay; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function endOfDay(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + date.setHours(23, 59, 59, 999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfMonth/index.js +var require_endOfMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfMonth; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function endOfMonth(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var month = date.getMonth(); + date.setFullYear(date.getFullYear(), month + 1, 0); + date.setHours(23, 59, 59, 999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isLastDayOfMonth/index.js +var require_isLastDayOfMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isLastDayOfMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isLastDayOfMonth; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_endOfDay()); + var _index3 = _interopRequireDefault(require_endOfMonth()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function isLastDayOfMonth(dirtyDate) { + (0, _index4.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + return (0, _index2.default)(date).getTime() === (0, _index3.default)(date).getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInMonths/index.js +var require_differenceInMonths = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInMonths/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInMonths; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_differenceInCalendarMonths()); + var _index3 = _interopRequireDefault(require_compareAsc()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + var _index5 = _interopRequireDefault(require_isLastDayOfMonth()); + function differenceInMonths(dirtyDateLeft, dirtyDateRight) { + (0, _index4.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyDateLeft); + var dateRight = (0, _index.default)(dirtyDateRight); + var sign = (0, _index3.default)(dateLeft, dateRight); + var difference = Math.abs((0, _index2.default)(dateLeft, dateRight)); + var result; + if (difference < 1) { + result = 0; + } else { + if (dateLeft.getMonth() === 1 && dateLeft.getDate() > 27) { + dateLeft.setDate(30); + } + dateLeft.setMonth(dateLeft.getMonth() - sign * difference); + var isLastMonthNotFull = (0, _index3.default)(dateLeft, dateRight) === -sign; + if ((0, _index5.default)((0, _index.default)(dirtyDateLeft)) && difference === 1 && (0, _index3.default)(dirtyDateLeft, dateRight) === 1) { + isLastMonthNotFull = false; + } + result = sign * (difference - Number(isLastMonthNotFull)); + } + return result === 0 ? 0 : result; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInQuarters/index.js +var require_differenceInQuarters = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInQuarters/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInQuarters; + var _index = _interopRequireDefault(require_differenceInMonths()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = require_roundingMethods(); + function differenceInQuarters(dateLeft, dateRight, options2) { + (0, _index2.default)(2, arguments); + var diff = (0, _index.default)(dateLeft, dateRight) / 3; + return (0, _index3.getRoundingMethod)(options2 === null || options2 === void 0 ? void 0 : options2.roundingMethod)(diff); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInSeconds/index.js +var require_differenceInSeconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInSeconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInSeconds; + var _index = _interopRequireDefault(require_differenceInMilliseconds()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = require_roundingMethods(); + function differenceInSeconds(dateLeft, dateRight, options2) { + (0, _index2.default)(2, arguments); + var diff = (0, _index.default)(dateLeft, dateRight) / 1e3; + return (0, _index3.getRoundingMethod)(options2 === null || options2 === void 0 ? void 0 : options2.roundingMethod)(diff); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInWeeks/index.js +var require_differenceInWeeks = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInWeeks/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInWeeks; + var _index = _interopRequireDefault(require_differenceInDays()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = require_roundingMethods(); + function differenceInWeeks(dateLeft, dateRight, options2) { + (0, _index2.default)(2, arguments); + var diff = (0, _index.default)(dateLeft, dateRight) / 7; + return (0, _index3.getRoundingMethod)(options2 === null || options2 === void 0 ? void 0 : options2.roundingMethod)(diff); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInYears/index.js +var require_differenceInYears = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/differenceInYears/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = differenceInYears; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_differenceInCalendarYears()); + var _index3 = _interopRequireDefault(require_compareAsc()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function differenceInYears(dirtyDateLeft, dirtyDateRight) { + (0, _index4.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyDateLeft); + var dateRight = (0, _index.default)(dirtyDateRight); + var sign = (0, _index3.default)(dateLeft, dateRight); + var difference = Math.abs((0, _index2.default)(dateLeft, dateRight)); + dateLeft.setFullYear(1584); + dateRight.setFullYear(1584); + var isLastYearNotFull = (0, _index3.default)(dateLeft, dateRight) === -sign; + var result = sign * (difference - Number(isLastYearNotFull)); + return result === 0 ? 0 : result; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachDayOfInterval/index.js +var require_eachDayOfInterval = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachDayOfInterval/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = eachDayOfInterval; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function eachDayOfInterval(dirtyInterval, options2) { + var _options$step; + (0, _index2.default)(1, arguments); + var interval = dirtyInterval || {}; + var startDate = (0, _index.default)(interval.start); + var endDate = (0, _index.default)(interval.end); + var endTime = endDate.getTime(); + if (!(startDate.getTime() <= endTime)) { + throw new RangeError("Invalid interval"); + } + var dates = []; + var currentDate = startDate; + currentDate.setHours(0, 0, 0, 0); + var step = Number((_options$step = options2 === null || options2 === void 0 ? void 0 : options2.step) !== null && _options$step !== void 0 ? _options$step : 1); + if (step < 1 || isNaN(step)) + throw new RangeError("`options.step` must be a number greater than 1"); + while (currentDate.getTime() <= endTime) { + dates.push((0, _index.default)(currentDate)); + currentDate.setDate(currentDate.getDate() + step); + currentDate.setHours(0, 0, 0, 0); + } + return dates; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachHourOfInterval/index.js +var require_eachHourOfInterval = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachHourOfInterval/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = eachHourOfInterval; + var _index = _interopRequireDefault(require_addHours()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function eachHourOfInterval(dirtyInterval, options2) { + var _options$step; + (0, _index3.default)(1, arguments); + var interval = dirtyInterval || {}; + var startDate = (0, _index2.default)(interval.start); + var endDate = (0, _index2.default)(interval.end); + var startTime = startDate.getTime(); + var endTime = endDate.getTime(); + if (!(startTime <= endTime)) { + throw new RangeError("Invalid interval"); + } + var dates = []; + var currentDate = startDate; + currentDate.setMinutes(0, 0, 0); + var step = Number((_options$step = options2 === null || options2 === void 0 ? void 0 : options2.step) !== null && _options$step !== void 0 ? _options$step : 1); + if (step < 1 || isNaN(step)) + throw new RangeError("`options.step` must be a number greater than 1"); + while (currentDate.getTime() <= endTime) { + dates.push((0, _index2.default)(currentDate)); + currentDate = (0, _index.default)(currentDate, step); + } + return dates; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfMinute/index.js +var require_startOfMinute = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfMinute/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfMinute; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function startOfMinute(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + date.setSeconds(0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachMinuteOfInterval/index.js +var require_eachMinuteOfInterval = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachMinuteOfInterval/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = eachMinuteOfInterval; + var _index = _interopRequireDefault(require_addMinutes()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_startOfMinute()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function eachMinuteOfInterval(interval, options2) { + var _options$step; + (0, _index4.default)(1, arguments); + var startDate = (0, _index3.default)((0, _index2.default)(interval.start)); + var endDate = (0, _index2.default)(interval.end); + var startTime = startDate.getTime(); + var endTime = endDate.getTime(); + if (startTime >= endTime) { + throw new RangeError("Invalid interval"); + } + var dates = []; + var currentDate = startDate; + var step = Number((_options$step = options2 === null || options2 === void 0 ? void 0 : options2.step) !== null && _options$step !== void 0 ? _options$step : 1); + if (step < 1 || isNaN(step)) + throw new RangeError("`options.step` must be a number equal to or greater than 1"); + while (currentDate.getTime() <= endTime) { + dates.push((0, _index2.default)(currentDate)); + currentDate = (0, _index.default)(currentDate, step); + } + return dates; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachMonthOfInterval/index.js +var require_eachMonthOfInterval = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachMonthOfInterval/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = eachMonthOfInterval; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function eachMonthOfInterval(dirtyInterval) { + (0, _index2.default)(1, arguments); + var interval = dirtyInterval || {}; + var startDate = (0, _index.default)(interval.start); + var endDate = (0, _index.default)(interval.end); + var endTime = endDate.getTime(); + var dates = []; + if (!(startDate.getTime() <= endTime)) { + throw new RangeError("Invalid interval"); + } + var currentDate = startDate; + currentDate.setHours(0, 0, 0, 0); + currentDate.setDate(1); + while (currentDate.getTime() <= endTime) { + dates.push((0, _index.default)(currentDate)); + currentDate.setMonth(currentDate.getMonth() + 1); + } + return dates; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfQuarter/index.js +var require_startOfQuarter = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfQuarter/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfQuarter; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function startOfQuarter(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var currentMonth = date.getMonth(); + var month = currentMonth - currentMonth % 3; + date.setMonth(month, 1); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachQuarterOfInterval/index.js +var require_eachQuarterOfInterval = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachQuarterOfInterval/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = eachQuarterOfInterval; + var _index = _interopRequireDefault(require_addQuarters()); + var _index2 = _interopRequireDefault(require_startOfQuarter()); + var _index3 = _interopRequireDefault(require_toDate()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function eachQuarterOfInterval(dirtyInterval) { + (0, _index4.default)(1, arguments); + var interval = dirtyInterval || {}; + var startDate = (0, _index3.default)(interval.start); + var endDate = (0, _index3.default)(interval.end); + var endTime = endDate.getTime(); + if (!(startDate.getTime() <= endTime)) { + throw new RangeError("Invalid interval"); + } + var startDateQuarter = (0, _index2.default)(startDate); + var endDateQuarter = (0, _index2.default)(endDate); + endTime = endDateQuarter.getTime(); + var quarters = []; + var currentQuarter = startDateQuarter; + while (currentQuarter.getTime() <= endTime) { + quarters.push((0, _index3.default)(currentQuarter)); + currentQuarter = (0, _index.default)(currentQuarter, 1); + } + return quarters; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachWeekOfInterval/index.js +var require_eachWeekOfInterval = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachWeekOfInterval/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = eachWeekOfInterval; + var _index = _interopRequireDefault(require_addWeeks()); + var _index2 = _interopRequireDefault(require_startOfWeek()); + var _index3 = _interopRequireDefault(require_toDate()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function eachWeekOfInterval(dirtyInterval, options2) { + (0, _index4.default)(1, arguments); + var interval = dirtyInterval || {}; + var startDate = (0, _index3.default)(interval.start); + var endDate = (0, _index3.default)(interval.end); + var endTime = endDate.getTime(); + if (!(startDate.getTime() <= endTime)) { + throw new RangeError("Invalid interval"); + } + var startDateWeek = (0, _index2.default)(startDate, options2); + var endDateWeek = (0, _index2.default)(endDate, options2); + startDateWeek.setHours(15); + endDateWeek.setHours(15); + endTime = endDateWeek.getTime(); + var weeks = []; + var currentWeek = startDateWeek; + while (currentWeek.getTime() <= endTime) { + currentWeek.setHours(0); + weeks.push((0, _index3.default)(currentWeek)); + currentWeek = (0, _index.default)(currentWeek, 1); + currentWeek.setHours(15); + } + return weeks; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachWeekendOfInterval/index.js +var require_eachWeekendOfInterval = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachWeekendOfInterval/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = eachWeekendOfInterval; + var _index = _interopRequireDefault(require_eachDayOfInterval()); + var _index2 = _interopRequireDefault(require_isSunday()); + var _index3 = _interopRequireDefault(require_isWeekend()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function eachWeekendOfInterval(interval) { + (0, _index4.default)(1, arguments); + var dateInterval = (0, _index.default)(interval); + var weekends = []; + var index = 0; + while (index < dateInterval.length) { + var date = dateInterval[index++]; + if ((0, _index3.default)(date)) { + weekends.push(date); + if ((0, _index2.default)(date)) + index = index + 5; + } + } + return weekends; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfMonth/index.js +var require_startOfMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfMonth; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function startOfMonth(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + date.setDate(1); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachWeekendOfMonth/index.js +var require_eachWeekendOfMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachWeekendOfMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = eachWeekendOfMonth; + var _index = _interopRequireDefault(require_eachWeekendOfInterval()); + var _index2 = _interopRequireDefault(require_startOfMonth()); + var _index3 = _interopRequireDefault(require_endOfMonth()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function eachWeekendOfMonth(dirtyDate) { + (0, _index4.default)(1, arguments); + var startDate = (0, _index2.default)(dirtyDate); + if (isNaN(startDate.getTime())) + throw new RangeError("The passed date is invalid"); + var endDate = (0, _index3.default)(dirtyDate); + return (0, _index.default)({ + start: startDate, + end: endDate + }); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfYear/index.js +var require_endOfYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function endOfYear(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getFullYear(); + date.setFullYear(year + 1, 0, 0); + date.setHours(23, 59, 59, 999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfYear/index.js +var require_startOfYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function startOfYear(dirtyDate) { + (0, _index2.default)(1, arguments); + var cleanDate = (0, _index.default)(dirtyDate); + var date = /* @__PURE__ */ new Date(0); + date.setFullYear(cleanDate.getFullYear(), 0, 1); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachWeekendOfYear/index.js +var require_eachWeekendOfYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachWeekendOfYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = eachWeekendOfYear; + var _index = _interopRequireDefault(require_eachWeekendOfInterval()); + var _index2 = _interopRequireDefault(require_endOfYear()); + var _index3 = _interopRequireDefault(require_startOfYear()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function eachWeekendOfYear(dirtyDate) { + (0, _index4.default)(1, arguments); + var startDate = (0, _index3.default)(dirtyDate); + var endDate = (0, _index2.default)(dirtyDate); + return (0, _index.default)({ + start: startDate, + end: endDate + }); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachYearOfInterval/index.js +var require_eachYearOfInterval = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/eachYearOfInterval/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = eachYearOfInterval; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function eachYearOfInterval(dirtyInterval) { + (0, _index2.default)(1, arguments); + var interval = dirtyInterval || {}; + var startDate = (0, _index.default)(interval.start); + var endDate = (0, _index.default)(interval.end); + var endTime = endDate.getTime(); + if (!(startDate.getTime() <= endTime)) { + throw new RangeError("Invalid interval"); + } + var dates = []; + var currentDate = startDate; + currentDate.setHours(0, 0, 0, 0); + currentDate.setMonth(0, 1); + while (currentDate.getTime() <= endTime) { + dates.push((0, _index.default)(currentDate)); + currentDate.setFullYear(currentDate.getFullYear() + 1); + } + return dates; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfDecade/index.js +var require_endOfDecade = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfDecade/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfDecade; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function endOfDecade(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getFullYear(); + var decade = 9 + Math.floor(year / 10) * 10; + date.setFullYear(decade, 11, 31); + date.setHours(23, 59, 59, 999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfHour/index.js +var require_endOfHour = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfHour/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfHour; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function endOfHour(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + date.setMinutes(59, 59, 999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfWeek/index.js +var require_endOfWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfWeek; + var _index = require_defaultOptions(); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_toInteger()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function endOfWeek(dirtyDate, options2) { + var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index4.default)(1, arguments); + var defaultOptions = (0, _index.getDefaultOptions)(); + var weekStartsOn = (0, _index3.default)((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options2 === null || options2 === void 0 ? void 0 : options2.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); + if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) { + throw new RangeError("weekStartsOn must be between 0 and 6 inclusively"); + } + var date = (0, _index2.default)(dirtyDate); + var day = date.getDay(); + var diff = (day < weekStartsOn ? -7 : 0) + 6 - (day - weekStartsOn); + date.setDate(date.getDate() + diff); + date.setHours(23, 59, 59, 999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfISOWeek/index.js +var require_endOfISOWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfISOWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfISOWeek; + var _index = _interopRequireDefault(require_endOfWeek()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function endOfISOWeek(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate, { + weekStartsOn: 1 + }); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfISOWeekYear/index.js +var require_endOfISOWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfISOWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfISOWeekYear; + var _index = _interopRequireDefault(require_getISOWeekYear()); + var _index2 = _interopRequireDefault(require_startOfISOWeek()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function endOfISOWeekYear(dirtyDate) { + (0, _index3.default)(1, arguments); + var year = (0, _index.default)(dirtyDate); + var fourthOfJanuaryOfNextYear = /* @__PURE__ */ new Date(0); + fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4); + fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0); + var date = (0, _index2.default)(fourthOfJanuaryOfNextYear); + date.setMilliseconds(date.getMilliseconds() - 1); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfMinute/index.js +var require_endOfMinute = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfMinute/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfMinute; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function endOfMinute(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + date.setSeconds(59, 999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfQuarter/index.js +var require_endOfQuarter = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfQuarter/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfQuarter; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function endOfQuarter(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var currentMonth = date.getMonth(); + var month = currentMonth - currentMonth % 3 + 3; + date.setMonth(month, 0); + date.setHours(23, 59, 59, 999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfSecond/index.js +var require_endOfSecond = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfSecond/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfSecond; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function endOfSecond(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + date.setMilliseconds(999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfToday/index.js +var require_endOfToday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfToday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfToday; + var _index = _interopRequireDefault(require_endOfDay()); + function endOfToday() { + return (0, _index.default)(Date.now()); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfTomorrow/index.js +var require_endOfTomorrow = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfTomorrow/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfTomorrow; + function endOfTomorrow() { + var now = /* @__PURE__ */ new Date(); + var year = now.getFullYear(); + var month = now.getMonth(); + var day = now.getDate(); + var date = /* @__PURE__ */ new Date(0); + date.setFullYear(year, month, day + 1); + date.setHours(23, 59, 59, 999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfYesterday/index.js +var require_endOfYesterday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/endOfYesterday/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = endOfYesterday; + function endOfYesterday() { + var now = /* @__PURE__ */ new Date(); + var year = now.getFullYear(); + var month = now.getMonth(); + var day = now.getDate(); + var date = /* @__PURE__ */ new Date(0); + date.setFullYear(year, month, day - 1); + date.setHours(23, 59, 59, 999); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subMilliseconds/index.js +var require_subMilliseconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subMilliseconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subMilliseconds; + var _index = _interopRequireDefault(require_addMilliseconds()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_toInteger()); + function subMilliseconds(dirtyDate, dirtyAmount) { + (0, _index2.default)(2, arguments); + var amount = (0, _index3.default)(dirtyAmount); + return (0, _index.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getUTCDayOfYear/index.js +var require_getUTCDayOfYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getUTCDayOfYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getUTCDayOfYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_DAY = 864e5; + function getUTCDayOfYear(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var timestamp = date.getTime(); + date.setUTCMonth(0, 1); + date.setUTCHours(0, 0, 0, 0); + var startOfYearTimestamp = date.getTime(); + var difference = timestamp - startOfYearTimestamp; + return Math.floor(difference / MILLISECONDS_IN_DAY) + 1; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/startOfUTCISOWeek/index.js +var require_startOfUTCISOWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/startOfUTCISOWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfUTCISOWeek; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function startOfUTCISOWeek(dirtyDate) { + (0, _index2.default)(1, arguments); + var weekStartsOn = 1; + var date = (0, _index.default)(dirtyDate); + var day = date.getUTCDay(); + var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn; + date.setUTCDate(date.getUTCDate() - diff); + date.setUTCHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getUTCISOWeekYear/index.js +var require_getUTCISOWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getUTCISOWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getUTCISOWeekYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_startOfUTCISOWeek()); + function getUTCISOWeekYear(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getUTCFullYear(); + var fourthOfJanuaryOfNextYear = /* @__PURE__ */ new Date(0); + fourthOfJanuaryOfNextYear.setUTCFullYear(year + 1, 0, 4); + fourthOfJanuaryOfNextYear.setUTCHours(0, 0, 0, 0); + var startOfNextYear = (0, _index3.default)(fourthOfJanuaryOfNextYear); + var fourthOfJanuaryOfThisYear = /* @__PURE__ */ new Date(0); + fourthOfJanuaryOfThisYear.setUTCFullYear(year, 0, 4); + fourthOfJanuaryOfThisYear.setUTCHours(0, 0, 0, 0); + var startOfThisYear = (0, _index3.default)(fourthOfJanuaryOfThisYear); + if (date.getTime() >= startOfNextYear.getTime()) { + return year + 1; + } else if (date.getTime() >= startOfThisYear.getTime()) { + return year; + } else { + return year - 1; + } + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/startOfUTCISOWeekYear/index.js +var require_startOfUTCISOWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/startOfUTCISOWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfUTCISOWeekYear; + var _index = _interopRequireDefault(require_getUTCISOWeekYear()); + var _index2 = _interopRequireDefault(require_startOfUTCISOWeek()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function startOfUTCISOWeekYear(dirtyDate) { + (0, _index3.default)(1, arguments); + var year = (0, _index.default)(dirtyDate); + var fourthOfJanuary = /* @__PURE__ */ new Date(0); + fourthOfJanuary.setUTCFullYear(year, 0, 4); + fourthOfJanuary.setUTCHours(0, 0, 0, 0); + var date = (0, _index2.default)(fourthOfJanuary); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getUTCISOWeek/index.js +var require_getUTCISOWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getUTCISOWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getUTCISOWeek; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_startOfUTCISOWeek()); + var _index3 = _interopRequireDefault(require_startOfUTCISOWeekYear()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_WEEK = 6048e5; + function getUTCISOWeek(dirtyDate) { + (0, _index4.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var diff = (0, _index2.default)(date).getTime() - (0, _index3.default)(date).getTime(); + return Math.round(diff / MILLISECONDS_IN_WEEK) + 1; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/startOfUTCWeek/index.js +var require_startOfUTCWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/startOfUTCWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfUTCWeek; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_toInteger()); + var _index4 = require_defaultOptions(); + function startOfUTCWeek(dirtyDate, options2) { + var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index2.default)(1, arguments); + var defaultOptions = (0, _index4.getDefaultOptions)(); + var weekStartsOn = (0, _index3.default)((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options2 === null || options2 === void 0 ? void 0 : options2.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); + if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) { + throw new RangeError("weekStartsOn must be between 0 and 6 inclusively"); + } + var date = (0, _index.default)(dirtyDate); + var day = date.getUTCDay(); + var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn; + date.setUTCDate(date.getUTCDate() - diff); + date.setUTCHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getUTCWeekYear/index.js +var require_getUTCWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getUTCWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getUTCWeekYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_startOfUTCWeek()); + var _index4 = _interopRequireDefault(require_toInteger()); + var _index5 = require_defaultOptions(); + function getUTCWeekYear(dirtyDate, options2) { + var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getUTCFullYear(); + var defaultOptions = (0, _index5.getDefaultOptions)(); + var firstWeekContainsDate = (0, _index4.default)((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options2 === null || options2 === void 0 ? void 0 : options2.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1); + if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) { + throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively"); + } + var firstWeekOfNextYear = /* @__PURE__ */ new Date(0); + firstWeekOfNextYear.setUTCFullYear(year + 1, 0, firstWeekContainsDate); + firstWeekOfNextYear.setUTCHours(0, 0, 0, 0); + var startOfNextYear = (0, _index3.default)(firstWeekOfNextYear, options2); + var firstWeekOfThisYear = /* @__PURE__ */ new Date(0); + firstWeekOfThisYear.setUTCFullYear(year, 0, firstWeekContainsDate); + firstWeekOfThisYear.setUTCHours(0, 0, 0, 0); + var startOfThisYear = (0, _index3.default)(firstWeekOfThisYear, options2); + if (date.getTime() >= startOfNextYear.getTime()) { + return year + 1; + } else if (date.getTime() >= startOfThisYear.getTime()) { + return year; + } else { + return year - 1; + } + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/startOfUTCWeekYear/index.js +var require_startOfUTCWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/startOfUTCWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfUTCWeekYear; + var _index = _interopRequireDefault(require_getUTCWeekYear()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_startOfUTCWeek()); + var _index4 = _interopRequireDefault(require_toInteger()); + var _index5 = require_defaultOptions(); + function startOfUTCWeekYear(dirtyDate, options2) { + var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index2.default)(1, arguments); + var defaultOptions = (0, _index5.getDefaultOptions)(); + var firstWeekContainsDate = (0, _index4.default)((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options2 === null || options2 === void 0 ? void 0 : options2.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1); + var year = (0, _index.default)(dirtyDate, options2); + var firstWeek = /* @__PURE__ */ new Date(0); + firstWeek.setUTCFullYear(year, 0, firstWeekContainsDate); + firstWeek.setUTCHours(0, 0, 0, 0); + var date = (0, _index3.default)(firstWeek, options2); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getUTCWeek/index.js +var require_getUTCWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/getUTCWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getUTCWeek; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_startOfUTCWeek()); + var _index3 = _interopRequireDefault(require_startOfUTCWeekYear()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_WEEK = 6048e5; + function getUTCWeek(dirtyDate, options2) { + (0, _index4.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var diff = (0, _index2.default)(date, options2).getTime() - (0, _index3.default)(date, options2).getTime(); + return Math.round(diff / MILLISECONDS_IN_WEEK) + 1; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/addLeadingZeros/index.js +var require_addLeadingZeros = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/addLeadingZeros/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = addLeadingZeros; + function addLeadingZeros(number, targetLength) { + var sign = number < 0 ? "-" : ""; + var output = Math.abs(number).toString(); + while (output.length < targetLength) { + output = "0" + output; + } + return sign + output; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/format/lightFormatters/index.js +var require_lightFormatters = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/format/lightFormatters/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = void 0; + var _index = _interopRequireDefault(require_addLeadingZeros()); + var formatters = { + // Year + y: function y(date, token) { + var signedYear = date.getUTCFullYear(); + var year = signedYear > 0 ? signedYear : 1 - signedYear; + return (0, _index.default)(token === "yy" ? year % 100 : year, token.length); + }, + // Month + M: function M(date, token) { + var month = date.getUTCMonth(); + return token === "M" ? String(month + 1) : (0, _index.default)(month + 1, 2); + }, + // Day of the month + d: function d(date, token) { + return (0, _index.default)(date.getUTCDate(), token.length); + }, + // AM or PM + a: function a(date, token) { + var dayPeriodEnumValue = date.getUTCHours() / 12 >= 1 ? "pm" : "am"; + switch (token) { + case "a": + case "aa": + return dayPeriodEnumValue.toUpperCase(); + case "aaa": + return dayPeriodEnumValue; + case "aaaaa": + return dayPeriodEnumValue[0]; + case "aaaa": + default: + return dayPeriodEnumValue === "am" ? "a.m." : "p.m."; + } + }, + // Hour [1-12] + h: function h(date, token) { + return (0, _index.default)(date.getUTCHours() % 12 || 12, token.length); + }, + // Hour [0-23] + H: function H(date, token) { + return (0, _index.default)(date.getUTCHours(), token.length); + }, + // Minute + m: function m(date, token) { + return (0, _index.default)(date.getUTCMinutes(), token.length); + }, + // Second + s: function s(date, token) { + return (0, _index.default)(date.getUTCSeconds(), token.length); + }, + // Fraction of second + S: function S(date, token) { + var numberOfDigits = token.length; + var milliseconds = date.getUTCMilliseconds(); + var fractionalSeconds = Math.floor(milliseconds * Math.pow(10, numberOfDigits - 3)); + return (0, _index.default)(fractionalSeconds, token.length); + } + }; + var _default = formatters; + exports2.default = _default; + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/format/formatters/index.js +var require_formatters = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/format/formatters/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = void 0; + var _index = _interopRequireDefault(require_getUTCDayOfYear()); + var _index2 = _interopRequireDefault(require_getUTCISOWeek()); + var _index3 = _interopRequireDefault(require_getUTCISOWeekYear()); + var _index4 = _interopRequireDefault(require_getUTCWeek()); + var _index5 = _interopRequireDefault(require_getUTCWeekYear()); + var _index6 = _interopRequireDefault(require_addLeadingZeros()); + var _index7 = _interopRequireDefault(require_lightFormatters()); + var dayPeriodEnum = { + am: "am", + pm: "pm", + midnight: "midnight", + noon: "noon", + morning: "morning", + afternoon: "afternoon", + evening: "evening", + night: "night" + }; + var formatters = { + // Era + G: function G(date, token, localize) { + var era = date.getUTCFullYear() > 0 ? 1 : 0; + switch (token) { + case "G": + case "GG": + case "GGG": + return localize.era(era, { + width: "abbreviated" + }); + case "GGGGG": + return localize.era(era, { + width: "narrow" + }); + case "GGGG": + default: + return localize.era(era, { + width: "wide" + }); + } + }, + // Year + y: function y(date, token, localize) { + if (token === "yo") { + var signedYear = date.getUTCFullYear(); + var year = signedYear > 0 ? signedYear : 1 - signedYear; + return localize.ordinalNumber(year, { + unit: "year" + }); + } + return _index7.default.y(date, token); + }, + // Local week-numbering year + Y: function Y(date, token, localize, options2) { + var signedWeekYear = (0, _index5.default)(date, options2); + var weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear; + if (token === "YY") { + var twoDigitYear = weekYear % 100; + return (0, _index6.default)(twoDigitYear, 2); + } + if (token === "Yo") { + return localize.ordinalNumber(weekYear, { + unit: "year" + }); + } + return (0, _index6.default)(weekYear, token.length); + }, + // ISO week-numbering year + R: function R(date, token) { + var isoWeekYear = (0, _index3.default)(date); + return (0, _index6.default)(isoWeekYear, token.length); + }, + // Extended year. This is a single number designating the year of this calendar system. + // The main difference between `y` and `u` localizers are B.C. years: + // | Year | `y` | `u` | + // |------|-----|-----| + // | AC 1 | 1 | 1 | + // | BC 1 | 1 | 0 | + // | BC 2 | 2 | -1 | + // Also `yy` always returns the last two digits of a year, + // while `uu` pads single digit years to 2 characters and returns other years unchanged. + u: function u(date, token) { + var year = date.getUTCFullYear(); + return (0, _index6.default)(year, token.length); + }, + // Quarter + Q: function Q(date, token, localize) { + var quarter = Math.ceil((date.getUTCMonth() + 1) / 3); + switch (token) { + case "Q": + return String(quarter); + case "QQ": + return (0, _index6.default)(quarter, 2); + case "Qo": + return localize.ordinalNumber(quarter, { + unit: "quarter" + }); + case "QQQ": + return localize.quarter(quarter, { + width: "abbreviated", + context: "formatting" + }); + case "QQQQQ": + return localize.quarter(quarter, { + width: "narrow", + context: "formatting" + }); + case "QQQQ": + default: + return localize.quarter(quarter, { + width: "wide", + context: "formatting" + }); + } + }, + // Stand-alone quarter + q: function q(date, token, localize) { + var quarter = Math.ceil((date.getUTCMonth() + 1) / 3); + switch (token) { + case "q": + return String(quarter); + case "qq": + return (0, _index6.default)(quarter, 2); + case "qo": + return localize.ordinalNumber(quarter, { + unit: "quarter" + }); + case "qqq": + return localize.quarter(quarter, { + width: "abbreviated", + context: "standalone" + }); + case "qqqqq": + return localize.quarter(quarter, { + width: "narrow", + context: "standalone" + }); + case "qqqq": + default: + return localize.quarter(quarter, { + width: "wide", + context: "standalone" + }); + } + }, + // Month + M: function M(date, token, localize) { + var month = date.getUTCMonth(); + switch (token) { + case "M": + case "MM": + return _index7.default.M(date, token); + case "Mo": + return localize.ordinalNumber(month + 1, { + unit: "month" + }); + case "MMM": + return localize.month(month, { + width: "abbreviated", + context: "formatting" + }); + case "MMMMM": + return localize.month(month, { + width: "narrow", + context: "formatting" + }); + case "MMMM": + default: + return localize.month(month, { + width: "wide", + context: "formatting" + }); + } + }, + // Stand-alone month + L: function L(date, token, localize) { + var month = date.getUTCMonth(); + switch (token) { + case "L": + return String(month + 1); + case "LL": + return (0, _index6.default)(month + 1, 2); + case "Lo": + return localize.ordinalNumber(month + 1, { + unit: "month" + }); + case "LLL": + return localize.month(month, { + width: "abbreviated", + context: "standalone" + }); + case "LLLLL": + return localize.month(month, { + width: "narrow", + context: "standalone" + }); + case "LLLL": + default: + return localize.month(month, { + width: "wide", + context: "standalone" + }); + } + }, + // Local week of year + w: function w(date, token, localize, options2) { + var week = (0, _index4.default)(date, options2); + if (token === "wo") { + return localize.ordinalNumber(week, { + unit: "week" + }); + } + return (0, _index6.default)(week, token.length); + }, + // ISO week of year + I: function I(date, token, localize) { + var isoWeek = (0, _index2.default)(date); + if (token === "Io") { + return localize.ordinalNumber(isoWeek, { + unit: "week" + }); + } + return (0, _index6.default)(isoWeek, token.length); + }, + // Day of the month + d: function d(date, token, localize) { + if (token === "do") { + return localize.ordinalNumber(date.getUTCDate(), { + unit: "date" + }); + } + return _index7.default.d(date, token); + }, + // Day of year + D: function D(date, token, localize) { + var dayOfYear = (0, _index.default)(date); + if (token === "Do") { + return localize.ordinalNumber(dayOfYear, { + unit: "dayOfYear" + }); + } + return (0, _index6.default)(dayOfYear, token.length); + }, + // Day of week + E: function E(date, token, localize) { + var dayOfWeek = date.getUTCDay(); + switch (token) { + case "E": + case "EE": + case "EEE": + return localize.day(dayOfWeek, { + width: "abbreviated", + context: "formatting" + }); + case "EEEEE": + return localize.day(dayOfWeek, { + width: "narrow", + context: "formatting" + }); + case "EEEEEE": + return localize.day(dayOfWeek, { + width: "short", + context: "formatting" + }); + case "EEEE": + default: + return localize.day(dayOfWeek, { + width: "wide", + context: "formatting" + }); + } + }, + // Local day of week + e: function e(date, token, localize, options2) { + var dayOfWeek = date.getUTCDay(); + var localDayOfWeek = (dayOfWeek - options2.weekStartsOn + 8) % 7 || 7; + switch (token) { + case "e": + return String(localDayOfWeek); + case "ee": + return (0, _index6.default)(localDayOfWeek, 2); + case "eo": + return localize.ordinalNumber(localDayOfWeek, { + unit: "day" + }); + case "eee": + return localize.day(dayOfWeek, { + width: "abbreviated", + context: "formatting" + }); + case "eeeee": + return localize.day(dayOfWeek, { + width: "narrow", + context: "formatting" + }); + case "eeeeee": + return localize.day(dayOfWeek, { + width: "short", + context: "formatting" + }); + case "eeee": + default: + return localize.day(dayOfWeek, { + width: "wide", + context: "formatting" + }); + } + }, + // Stand-alone local day of week + c: function c(date, token, localize, options2) { + var dayOfWeek = date.getUTCDay(); + var localDayOfWeek = (dayOfWeek - options2.weekStartsOn + 8) % 7 || 7; + switch (token) { + case "c": + return String(localDayOfWeek); + case "cc": + return (0, _index6.default)(localDayOfWeek, token.length); + case "co": + return localize.ordinalNumber(localDayOfWeek, { + unit: "day" + }); + case "ccc": + return localize.day(dayOfWeek, { + width: "abbreviated", + context: "standalone" + }); + case "ccccc": + return localize.day(dayOfWeek, { + width: "narrow", + context: "standalone" + }); + case "cccccc": + return localize.day(dayOfWeek, { + width: "short", + context: "standalone" + }); + case "cccc": + default: + return localize.day(dayOfWeek, { + width: "wide", + context: "standalone" + }); + } + }, + // ISO day of week + i: function i(date, token, localize) { + var dayOfWeek = date.getUTCDay(); + var isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek; + switch (token) { + case "i": + return String(isoDayOfWeek); + case "ii": + return (0, _index6.default)(isoDayOfWeek, token.length); + case "io": + return localize.ordinalNumber(isoDayOfWeek, { + unit: "day" + }); + case "iii": + return localize.day(dayOfWeek, { + width: "abbreviated", + context: "formatting" + }); + case "iiiii": + return localize.day(dayOfWeek, { + width: "narrow", + context: "formatting" + }); + case "iiiiii": + return localize.day(dayOfWeek, { + width: "short", + context: "formatting" + }); + case "iiii": + default: + return localize.day(dayOfWeek, { + width: "wide", + context: "formatting" + }); + } + }, + // AM or PM + a: function a(date, token, localize) { + var hours = date.getUTCHours(); + var dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am"; + switch (token) { + case "a": + case "aa": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "abbreviated", + context: "formatting" + }); + case "aaa": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "abbreviated", + context: "formatting" + }).toLowerCase(); + case "aaaaa": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "narrow", + context: "formatting" + }); + case "aaaa": + default: + return localize.dayPeriod(dayPeriodEnumValue, { + width: "wide", + context: "formatting" + }); + } + }, + // AM, PM, midnight, noon + b: function b(date, token, localize) { + var hours = date.getUTCHours(); + var dayPeriodEnumValue; + if (hours === 12) { + dayPeriodEnumValue = dayPeriodEnum.noon; + } else if (hours === 0) { + dayPeriodEnumValue = dayPeriodEnum.midnight; + } else { + dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am"; + } + switch (token) { + case "b": + case "bb": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "abbreviated", + context: "formatting" + }); + case "bbb": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "abbreviated", + context: "formatting" + }).toLowerCase(); + case "bbbbb": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "narrow", + context: "formatting" + }); + case "bbbb": + default: + return localize.dayPeriod(dayPeriodEnumValue, { + width: "wide", + context: "formatting" + }); + } + }, + // in the morning, in the afternoon, in the evening, at night + B: function B(date, token, localize) { + var hours = date.getUTCHours(); + var dayPeriodEnumValue; + if (hours >= 17) { + dayPeriodEnumValue = dayPeriodEnum.evening; + } else if (hours >= 12) { + dayPeriodEnumValue = dayPeriodEnum.afternoon; + } else if (hours >= 4) { + dayPeriodEnumValue = dayPeriodEnum.morning; + } else { + dayPeriodEnumValue = dayPeriodEnum.night; + } + switch (token) { + case "B": + case "BB": + case "BBB": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "abbreviated", + context: "formatting" + }); + case "BBBBB": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "narrow", + context: "formatting" + }); + case "BBBB": + default: + return localize.dayPeriod(dayPeriodEnumValue, { + width: "wide", + context: "formatting" + }); + } + }, + // Hour [1-12] + h: function h(date, token, localize) { + if (token === "ho") { + var hours = date.getUTCHours() % 12; + if (hours === 0) + hours = 12; + return localize.ordinalNumber(hours, { + unit: "hour" + }); + } + return _index7.default.h(date, token); + }, + // Hour [0-23] + H: function H(date, token, localize) { + if (token === "Ho") { + return localize.ordinalNumber(date.getUTCHours(), { + unit: "hour" + }); + } + return _index7.default.H(date, token); + }, + // Hour [0-11] + K: function K(date, token, localize) { + var hours = date.getUTCHours() % 12; + if (token === "Ko") { + return localize.ordinalNumber(hours, { + unit: "hour" + }); + } + return (0, _index6.default)(hours, token.length); + }, + // Hour [1-24] + k: function k(date, token, localize) { + var hours = date.getUTCHours(); + if (hours === 0) + hours = 24; + if (token === "ko") { + return localize.ordinalNumber(hours, { + unit: "hour" + }); + } + return (0, _index6.default)(hours, token.length); + }, + // Minute + m: function m(date, token, localize) { + if (token === "mo") { + return localize.ordinalNumber(date.getUTCMinutes(), { + unit: "minute" + }); + } + return _index7.default.m(date, token); + }, + // Second + s: function s(date, token, localize) { + if (token === "so") { + return localize.ordinalNumber(date.getUTCSeconds(), { + unit: "second" + }); + } + return _index7.default.s(date, token); + }, + // Fraction of second + S: function S(date, token) { + return _index7.default.S(date, token); + }, + // Timezone (ISO-8601. If offset is 0, output is always `'Z'`) + X: function X(date, token, _localize, options2) { + var originalDate = options2._originalDate || date; + var timezoneOffset = originalDate.getTimezoneOffset(); + if (timezoneOffset === 0) { + return "Z"; + } + switch (token) { + case "X": + return formatTimezoneWithOptionalMinutes(timezoneOffset); + case "XXXX": + case "XX": + return formatTimezone(timezoneOffset); + case "XXXXX": + case "XXX": + default: + return formatTimezone(timezoneOffset, ":"); + } + }, + // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent) + x: function x(date, token, _localize, options2) { + var originalDate = options2._originalDate || date; + var timezoneOffset = originalDate.getTimezoneOffset(); + switch (token) { + case "x": + return formatTimezoneWithOptionalMinutes(timezoneOffset); + case "xxxx": + case "xx": + return formatTimezone(timezoneOffset); + case "xxxxx": + case "xxx": + default: + return formatTimezone(timezoneOffset, ":"); + } + }, + // Timezone (GMT) + O: function O(date, token, _localize, options2) { + var originalDate = options2._originalDate || date; + var timezoneOffset = originalDate.getTimezoneOffset(); + switch (token) { + case "O": + case "OO": + case "OOO": + return "GMT" + formatTimezoneShort(timezoneOffset, ":"); + case "OOOO": + default: + return "GMT" + formatTimezone(timezoneOffset, ":"); + } + }, + // Timezone (specific non-location) + z: function z(date, token, _localize, options2) { + var originalDate = options2._originalDate || date; + var timezoneOffset = originalDate.getTimezoneOffset(); + switch (token) { + case "z": + case "zz": + case "zzz": + return "GMT" + formatTimezoneShort(timezoneOffset, ":"); + case "zzzz": + default: + return "GMT" + formatTimezone(timezoneOffset, ":"); + } + }, + // Seconds timestamp + t: function t(date, token, _localize, options2) { + var originalDate = options2._originalDate || date; + var timestamp = Math.floor(originalDate.getTime() / 1e3); + return (0, _index6.default)(timestamp, token.length); + }, + // Milliseconds timestamp + T: function T(date, token, _localize, options2) { + var originalDate = options2._originalDate || date; + var timestamp = originalDate.getTime(); + return (0, _index6.default)(timestamp, token.length); + } + }; + function formatTimezoneShort(offset, dirtyDelimiter) { + var sign = offset > 0 ? "-" : "+"; + var absOffset = Math.abs(offset); + var hours = Math.floor(absOffset / 60); + var minutes = absOffset % 60; + if (minutes === 0) { + return sign + String(hours); + } + var delimiter = dirtyDelimiter || ""; + return sign + String(hours) + delimiter + (0, _index6.default)(minutes, 2); + } + function formatTimezoneWithOptionalMinutes(offset, dirtyDelimiter) { + if (offset % 60 === 0) { + var sign = offset > 0 ? "-" : "+"; + return sign + (0, _index6.default)(Math.abs(offset) / 60, 2); + } + return formatTimezone(offset, dirtyDelimiter); + } + function formatTimezone(offset, dirtyDelimiter) { + var delimiter = dirtyDelimiter || ""; + var sign = offset > 0 ? "-" : "+"; + var absOffset = Math.abs(offset); + var hours = (0, _index6.default)(Math.floor(absOffset / 60), 2); + var minutes = (0, _index6.default)(absOffset % 60, 2); + return sign + hours + delimiter + minutes; + } + var _default = formatters; + exports2.default = _default; + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/format/longFormatters/index.js +var require_longFormatters = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/format/longFormatters/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = void 0; + var dateLongFormatter = function dateLongFormatter2(pattern, formatLong) { + switch (pattern) { + case "P": + return formatLong.date({ + width: "short" + }); + case "PP": + return formatLong.date({ + width: "medium" + }); + case "PPP": + return formatLong.date({ + width: "long" + }); + case "PPPP": + default: + return formatLong.date({ + width: "full" + }); + } + }; + var timeLongFormatter = function timeLongFormatter2(pattern, formatLong) { + switch (pattern) { + case "p": + return formatLong.time({ + width: "short" + }); + case "pp": + return formatLong.time({ + width: "medium" + }); + case "ppp": + return formatLong.time({ + width: "long" + }); + case "pppp": + default: + return formatLong.time({ + width: "full" + }); + } + }; + var dateTimeLongFormatter = function dateTimeLongFormatter2(pattern, formatLong) { + var matchResult = pattern.match(/(P+)(p+)?/) || []; + var datePattern = matchResult[1]; + var timePattern = matchResult[2]; + if (!timePattern) { + return dateLongFormatter(pattern, formatLong); + } + var dateTimeFormat; + switch (datePattern) { + case "P": + dateTimeFormat = formatLong.dateTime({ + width: "short" + }); + break; + case "PP": + dateTimeFormat = formatLong.dateTime({ + width: "medium" + }); + break; + case "PPP": + dateTimeFormat = formatLong.dateTime({ + width: "long" + }); + break; + case "PPPP": + default: + dateTimeFormat = formatLong.dateTime({ + width: "full" + }); + break; + } + return dateTimeFormat.replace("{{date}}", dateLongFormatter(datePattern, formatLong)).replace("{{time}}", timeLongFormatter(timePattern, formatLong)); + }; + var longFormatters = { + p: timeLongFormatter, + P: dateTimeLongFormatter + }; + var _default = longFormatters; + exports2.default = _default; + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/protectedTokens/index.js +var require_protectedTokens = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/protectedTokens/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.isProtectedDayOfYearToken = isProtectedDayOfYearToken; + exports2.isProtectedWeekYearToken = isProtectedWeekYearToken; + exports2.throwProtectedError = throwProtectedError; + var protectedDayOfYearTokens = ["D", "DD"]; + var protectedWeekYearTokens = ["YY", "YYYY"]; + function isProtectedDayOfYearToken(token) { + return protectedDayOfYearTokens.indexOf(token) !== -1; + } + function isProtectedWeekYearToken(token) { + return protectedWeekYearTokens.indexOf(token) !== -1; + } + function throwProtectedError(token, format, input) { + if (token === "YYYY") { + throw new RangeError("Use `yyyy` instead of `YYYY` (in `".concat(format, "`) for formatting years to the input `").concat(input, "`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md")); + } else if (token === "YY") { + throw new RangeError("Use `yy` instead of `YY` (in `".concat(format, "`) for formatting years to the input `").concat(input, "`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md")); + } else if (token === "D") { + throw new RangeError("Use `d` instead of `D` (in `".concat(format, "`) for formatting days of the month to the input `").concat(input, "`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md")); + } else if (token === "DD") { + throw new RangeError("Use `dd` instead of `DD` (in `".concat(format, "`) for formatting days of the month to the input `").concat(input, "`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md")); + } + } + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/_lib/formatDistance/index.js +var require_formatDistance = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/_lib/formatDistance/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = void 0; + var formatDistanceLocale = { + lessThanXSeconds: { + one: "less than a second", + other: "less than {{count}} seconds" + }, + xSeconds: { + one: "1 second", + other: "{{count}} seconds" + }, + halfAMinute: "half a minute", + lessThanXMinutes: { + one: "less than a minute", + other: "less than {{count}} minutes" + }, + xMinutes: { + one: "1 minute", + other: "{{count}} minutes" + }, + aboutXHours: { + one: "about 1 hour", + other: "about {{count}} hours" + }, + xHours: { + one: "1 hour", + other: "{{count}} hours" + }, + xDays: { + one: "1 day", + other: "{{count}} days" + }, + aboutXWeeks: { + one: "about 1 week", + other: "about {{count}} weeks" + }, + xWeeks: { + one: "1 week", + other: "{{count}} weeks" + }, + aboutXMonths: { + one: "about 1 month", + other: "about {{count}} months" + }, + xMonths: { + one: "1 month", + other: "{{count}} months" + }, + aboutXYears: { + one: "about 1 year", + other: "about {{count}} years" + }, + xYears: { + one: "1 year", + other: "{{count}} years" + }, + overXYears: { + one: "over 1 year", + other: "over {{count}} years" + }, + almostXYears: { + one: "almost 1 year", + other: "almost {{count}} years" + } + }; + var formatDistance2 = function formatDistance3(token, count, options2) { + var result; + var tokenValue = formatDistanceLocale[token]; + if (typeof tokenValue === "string") { + result = tokenValue; + } else if (count === 1) { + result = tokenValue.one; + } else { + result = tokenValue.other.replace("{{count}}", count.toString()); + } + if (options2 !== null && options2 !== void 0 && options2.addSuffix) { + if (options2.comparison && options2.comparison > 0) { + return "in " + result; + } else { + return result + " ago"; + } + } + return result; + }; + var _default = formatDistance2; + exports2.default = _default; + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/_lib/buildFormatLongFn/index.js +var require_buildFormatLongFn = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/_lib/buildFormatLongFn/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = buildFormatLongFn; + function buildFormatLongFn(args3) { + return function() { + var options2 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}; + var width = options2.width ? String(options2.width) : args3.defaultWidth; + var format = args3.formats[width] || args3.formats[args3.defaultWidth]; + return format; + }; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/_lib/formatLong/index.js +var require_formatLong = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/_lib/formatLong/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = void 0; + var _index = _interopRequireDefault(require_buildFormatLongFn()); + var dateFormats = { + full: "EEEE, MMMM do, y", + long: "MMMM do, y", + medium: "MMM d, y", + short: "MM/dd/yyyy" + }; + var timeFormats = { + full: "h:mm:ss a zzzz", + long: "h:mm:ss a z", + medium: "h:mm:ss a", + short: "h:mm a" + }; + var dateTimeFormats = { + full: "{{date}} 'at' {{time}}", + long: "{{date}} 'at' {{time}}", + medium: "{{date}}, {{time}}", + short: "{{date}}, {{time}}" + }; + var formatLong = { + date: (0, _index.default)({ + formats: dateFormats, + defaultWidth: "full" + }), + time: (0, _index.default)({ + formats: timeFormats, + defaultWidth: "full" + }), + dateTime: (0, _index.default)({ + formats: dateTimeFormats, + defaultWidth: "full" + }) + }; + var _default = formatLong; + exports2.default = _default; + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/_lib/formatRelative/index.js +var require_formatRelative = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/_lib/formatRelative/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = void 0; + var formatRelativeLocale = { + lastWeek: "'last' eeee 'at' p", + yesterday: "'yesterday at' p", + today: "'today at' p", + tomorrow: "'tomorrow at' p", + nextWeek: "eeee 'at' p", + other: "P" + }; + var formatRelative = function formatRelative2(token, _date, _baseDate, _options) { + return formatRelativeLocale[token]; + }; + var _default = formatRelative; + exports2.default = _default; + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/_lib/buildLocalizeFn/index.js +var require_buildLocalizeFn = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/_lib/buildLocalizeFn/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = buildLocalizeFn; + function buildLocalizeFn(args3) { + return function(dirtyIndex, options2) { + var context2 = options2 !== null && options2 !== void 0 && options2.context ? String(options2.context) : "standalone"; + var valuesArray; + if (context2 === "formatting" && args3.formattingValues) { + var defaultWidth = args3.defaultFormattingWidth || args3.defaultWidth; + var width = options2 !== null && options2 !== void 0 && options2.width ? String(options2.width) : defaultWidth; + valuesArray = args3.formattingValues[width] || args3.formattingValues[defaultWidth]; + } else { + var _defaultWidth = args3.defaultWidth; + var _width = options2 !== null && options2 !== void 0 && options2.width ? String(options2.width) : args3.defaultWidth; + valuesArray = args3.values[_width] || args3.values[_defaultWidth]; + } + var index = args3.argumentCallback ? args3.argumentCallback(dirtyIndex) : dirtyIndex; + return valuesArray[index]; + }; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/_lib/localize/index.js +var require_localize = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/_lib/localize/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = void 0; + var _index = _interopRequireDefault(require_buildLocalizeFn()); + var eraValues = { + narrow: ["B", "A"], + abbreviated: ["BC", "AD"], + wide: ["Before Christ", "Anno Domini"] + }; + var quarterValues = { + narrow: ["1", "2", "3", "4"], + abbreviated: ["Q1", "Q2", "Q3", "Q4"], + wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"] + }; + var monthValues = { + narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"], + abbreviated: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], + wide: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"] + }; + var dayValues = { + narrow: ["S", "M", "T", "W", "T", "F", "S"], + short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"], + abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], + wide: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"] + }; + var dayPeriodValues = { + narrow: { + am: "a", + pm: "p", + midnight: "mi", + noon: "n", + morning: "morning", + afternoon: "afternoon", + evening: "evening", + night: "night" + }, + abbreviated: { + am: "AM", + pm: "PM", + midnight: "midnight", + noon: "noon", + morning: "morning", + afternoon: "afternoon", + evening: "evening", + night: "night" + }, + wide: { + am: "a.m.", + pm: "p.m.", + midnight: "midnight", + noon: "noon", + morning: "morning", + afternoon: "afternoon", + evening: "evening", + night: "night" + } + }; + var formattingDayPeriodValues = { + narrow: { + am: "a", + pm: "p", + midnight: "mi", + noon: "n", + morning: "in the morning", + afternoon: "in the afternoon", + evening: "in the evening", + night: "at night" + }, + abbreviated: { + am: "AM", + pm: "PM", + midnight: "midnight", + noon: "noon", + morning: "in the morning", + afternoon: "in the afternoon", + evening: "in the evening", + night: "at night" + }, + wide: { + am: "a.m.", + pm: "p.m.", + midnight: "midnight", + noon: "noon", + morning: "in the morning", + afternoon: "in the afternoon", + evening: "in the evening", + night: "at night" + } + }; + var ordinalNumber = function ordinalNumber2(dirtyNumber, _options) { + var number = Number(dirtyNumber); + var rem100 = number % 100; + if (rem100 > 20 || rem100 < 10) { + switch (rem100 % 10) { + case 1: + return number + "st"; + case 2: + return number + "nd"; + case 3: + return number + "rd"; + } + } + return number + "th"; + }; + var localize = { + ordinalNumber, + era: (0, _index.default)({ + values: eraValues, + defaultWidth: "wide" + }), + quarter: (0, _index.default)({ + values: quarterValues, + defaultWidth: "wide", + argumentCallback: function argumentCallback(quarter) { + return quarter - 1; + } + }), + month: (0, _index.default)({ + values: monthValues, + defaultWidth: "wide" + }), + day: (0, _index.default)({ + values: dayValues, + defaultWidth: "wide" + }), + dayPeriod: (0, _index.default)({ + values: dayPeriodValues, + defaultWidth: "wide", + formattingValues: formattingDayPeriodValues, + defaultFormattingWidth: "wide" + }) + }; + var _default = localize; + exports2.default = _default; + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/_lib/buildMatchFn/index.js +var require_buildMatchFn = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/_lib/buildMatchFn/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = buildMatchFn; + function buildMatchFn(args3) { + return function(string) { + var options2 = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; + var width = options2.width; + var matchPattern = width && args3.matchPatterns[width] || args3.matchPatterns[args3.defaultMatchWidth]; + var matchResult = string.match(matchPattern); + if (!matchResult) { + return null; + } + var matchedString = matchResult[0]; + var parsePatterns = width && args3.parsePatterns[width] || args3.parsePatterns[args3.defaultParseWidth]; + var key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, function(pattern) { + return pattern.test(matchedString); + }) : findKey2(parsePatterns, function(pattern) { + return pattern.test(matchedString); + }); + var value; + value = args3.valueCallback ? args3.valueCallback(key) : key; + value = options2.valueCallback ? options2.valueCallback(value) : value; + var rest = string.slice(matchedString.length); + return { + value, + rest + }; + }; + } + function findKey2(object, predicate) { + for (var key in object) { + if (object.hasOwnProperty(key) && predicate(object[key])) { + return key; + } + } + return void 0; + } + function findIndex(array, predicate) { + for (var key = 0; key < array.length; key++) { + if (predicate(array[key])) { + return key; + } + } + return void 0; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/_lib/buildMatchPatternFn/index.js +var require_buildMatchPatternFn = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/_lib/buildMatchPatternFn/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = buildMatchPatternFn; + function buildMatchPatternFn(args3) { + return function(string) { + var options2 = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; + var matchResult = string.match(args3.matchPattern); + if (!matchResult) + return null; + var matchedString = matchResult[0]; + var parseResult = string.match(args3.parsePattern); + if (!parseResult) + return null; + var value = args3.valueCallback ? args3.valueCallback(parseResult[0]) : parseResult[0]; + value = options2.valueCallback ? options2.valueCallback(value) : value; + var rest = string.slice(matchedString.length); + return { + value, + rest + }; + }; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/_lib/match/index.js +var require_match = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/_lib/match/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = void 0; + var _index = _interopRequireDefault(require_buildMatchFn()); + var _index2 = _interopRequireDefault(require_buildMatchPatternFn()); + var matchOrdinalNumberPattern = /^(\d+)(th|st|nd|rd)?/i; + var parseOrdinalNumberPattern = /\d+/i; + var matchEraPatterns = { + narrow: /^(b|a)/i, + abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i, + wide: /^(before christ|before common era|anno domini|common era)/i + }; + var parseEraPatterns = { + any: [/^b/i, /^(a|c)/i] + }; + var matchQuarterPatterns = { + narrow: /^[1234]/i, + abbreviated: /^q[1234]/i, + wide: /^[1234](th|st|nd|rd)? quarter/i + }; + var parseQuarterPatterns = { + any: [/1/i, /2/i, /3/i, /4/i] + }; + var matchMonthPatterns = { + narrow: /^[jfmasond]/i, + abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i, + wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i + }; + var parseMonthPatterns = { + narrow: [/^j/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i], + any: [/^ja/i, /^f/i, /^mar/i, /^ap/i, /^may/i, /^jun/i, /^jul/i, /^au/i, /^s/i, /^o/i, /^n/i, /^d/i] + }; + var matchDayPatterns = { + narrow: /^[smtwf]/i, + short: /^(su|mo|tu|we|th|fr|sa)/i, + abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i, + wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i + }; + var parseDayPatterns = { + narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i], + any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i] + }; + var matchDayPeriodPatterns = { + narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i, + any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i + }; + var parseDayPeriodPatterns = { + any: { + am: /^a/i, + pm: /^p/i, + midnight: /^mi/i, + noon: /^no/i, + morning: /morning/i, + afternoon: /afternoon/i, + evening: /evening/i, + night: /night/i + } + }; + var match2 = { + ordinalNumber: (0, _index2.default)({ + matchPattern: matchOrdinalNumberPattern, + parsePattern: parseOrdinalNumberPattern, + valueCallback: function valueCallback(value) { + return parseInt(value, 10); + } + }), + era: (0, _index.default)({ + matchPatterns: matchEraPatterns, + defaultMatchWidth: "wide", + parsePatterns: parseEraPatterns, + defaultParseWidth: "any" + }), + quarter: (0, _index.default)({ + matchPatterns: matchQuarterPatterns, + defaultMatchWidth: "wide", + parsePatterns: parseQuarterPatterns, + defaultParseWidth: "any", + valueCallback: function valueCallback(index) { + return index + 1; + } + }), + month: (0, _index.default)({ + matchPatterns: matchMonthPatterns, + defaultMatchWidth: "wide", + parsePatterns: parseMonthPatterns, + defaultParseWidth: "any" + }), + day: (0, _index.default)({ + matchPatterns: matchDayPatterns, + defaultMatchWidth: "wide", + parsePatterns: parseDayPatterns, + defaultParseWidth: "any" + }), + dayPeriod: (0, _index.default)({ + matchPatterns: matchDayPeriodPatterns, + defaultMatchWidth: "any", + parsePatterns: parseDayPeriodPatterns, + defaultParseWidth: "any" + }) + }; + var _default = match2; + exports2.default = _default; + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/index.js +var require_en_US = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/locale/en-US/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = void 0; + var _index = _interopRequireDefault(require_formatDistance()); + var _index2 = _interopRequireDefault(require_formatLong()); + var _index3 = _interopRequireDefault(require_formatRelative()); + var _index4 = _interopRequireDefault(require_localize()); + var _index5 = _interopRequireDefault(require_match()); + var locale = { + code: "en-US", + formatDistance: _index.default, + formatLong: _index2.default, + formatRelative: _index3.default, + localize: _index4.default, + match: _index5.default, + options: { + weekStartsOn: 0, + firstWeekContainsDate: 1 + } + }; + var _default = locale; + exports2.default = _default; + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/defaultLocale/index.js +var require_defaultLocale = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/defaultLocale/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = void 0; + var _index = _interopRequireDefault(require_en_US()); + var _default = _index.default; + exports2.default = _default; + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/format/index.js +var require_format = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/format/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = format; + var _index = _interopRequireDefault(require_isValid()); + var _index2 = _interopRequireDefault(require_subMilliseconds()); + var _index3 = _interopRequireDefault(require_toDate()); + var _index4 = _interopRequireDefault(require_formatters()); + var _index5 = _interopRequireDefault(require_longFormatters()); + var _index6 = _interopRequireDefault(require_getTimezoneOffsetInMilliseconds()); + var _index7 = require_protectedTokens(); + var _index8 = _interopRequireDefault(require_toInteger()); + var _index9 = _interopRequireDefault(require_requiredArgs()); + var _index10 = require_defaultOptions(); + var _index11 = _interopRequireDefault(require_defaultLocale()); + var formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g; + var longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g; + var escapedStringRegExp = /^'([^]*?)'?$/; + var doubleQuoteRegExp = /''/g; + var unescapedLatinCharacterRegExp = /[a-zA-Z]/; + function format(dirtyDate, dirtyFormatStr, options2) { + var _ref, _options$locale, _ref2, _ref3, _ref4, _options$firstWeekCon, _options$locale2, _options$locale2$opti, _defaultOptions$local, _defaultOptions$local2, _ref5, _ref6, _ref7, _options$weekStartsOn, _options$locale3, _options$locale3$opti, _defaultOptions$local3, _defaultOptions$local4; + (0, _index9.default)(2, arguments); + var formatStr = String(dirtyFormatStr); + var defaultOptions = (0, _index10.getDefaultOptions)(); + var locale = (_ref = (_options$locale = options2 === null || options2 === void 0 ? void 0 : options2.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions.locale) !== null && _ref !== void 0 ? _ref : _index11.default; + var firstWeekContainsDate = (0, _index8.default)((_ref2 = (_ref3 = (_ref4 = (_options$firstWeekCon = options2 === null || options2 === void 0 ? void 0 : options2.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options2 === null || options2 === void 0 ? void 0 : (_options$locale2 = options2.locale) === null || _options$locale2 === void 0 ? void 0 : (_options$locale2$opti = _options$locale2.options) === null || _options$locale2$opti === void 0 ? void 0 : _options$locale2$opti.firstWeekContainsDate) !== null && _ref4 !== void 0 ? _ref4 : defaultOptions.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : 1); + if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) { + throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively"); + } + var weekStartsOn = (0, _index8.default)((_ref5 = (_ref6 = (_ref7 = (_options$weekStartsOn = options2 === null || options2 === void 0 ? void 0 : options2.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options2 === null || options2 === void 0 ? void 0 : (_options$locale3 = options2.locale) === null || _options$locale3 === void 0 ? void 0 : (_options$locale3$opti = _options$locale3.options) === null || _options$locale3$opti === void 0 ? void 0 : _options$locale3$opti.weekStartsOn) !== null && _ref7 !== void 0 ? _ref7 : defaultOptions.weekStartsOn) !== null && _ref6 !== void 0 ? _ref6 : (_defaultOptions$local3 = defaultOptions.locale) === null || _defaultOptions$local3 === void 0 ? void 0 : (_defaultOptions$local4 = _defaultOptions$local3.options) === null || _defaultOptions$local4 === void 0 ? void 0 : _defaultOptions$local4.weekStartsOn) !== null && _ref5 !== void 0 ? _ref5 : 0); + if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) { + throw new RangeError("weekStartsOn must be between 0 and 6 inclusively"); + } + if (!locale.localize) { + throw new RangeError("locale must contain localize property"); + } + if (!locale.formatLong) { + throw new RangeError("locale must contain formatLong property"); + } + var originalDate = (0, _index3.default)(dirtyDate); + if (!(0, _index.default)(originalDate)) { + throw new RangeError("Invalid time value"); + } + var timezoneOffset = (0, _index6.default)(originalDate); + var utcDate = (0, _index2.default)(originalDate, timezoneOffset); + var formatterOptions = { + firstWeekContainsDate, + weekStartsOn, + locale, + _originalDate: originalDate + }; + var result = formatStr.match(longFormattingTokensRegExp).map(function(substring) { + var firstCharacter = substring[0]; + if (firstCharacter === "p" || firstCharacter === "P") { + var longFormatter = _index5.default[firstCharacter]; + return longFormatter(substring, locale.formatLong); + } + return substring; + }).join("").match(formattingTokensRegExp).map(function(substring) { + if (substring === "''") { + return "'"; + } + var firstCharacter = substring[0]; + if (firstCharacter === "'") { + return cleanEscapedString(substring); + } + var formatter = _index4.default[firstCharacter]; + if (formatter) { + if (!(options2 !== null && options2 !== void 0 && options2.useAdditionalWeekYearTokens) && (0, _index7.isProtectedWeekYearToken)(substring)) { + (0, _index7.throwProtectedError)(substring, dirtyFormatStr, String(dirtyDate)); + } + if (!(options2 !== null && options2 !== void 0 && options2.useAdditionalDayOfYearTokens) && (0, _index7.isProtectedDayOfYearToken)(substring)) { + (0, _index7.throwProtectedError)(substring, dirtyFormatStr, String(dirtyDate)); + } + return formatter(utcDate, substring, locale.localize, formatterOptions); + } + if (firstCharacter.match(unescapedLatinCharacterRegExp)) { + throw new RangeError("Format string contains an unescaped latin alphabet character `" + firstCharacter + "`"); + } + return substring; + }).join(""); + return result; + } + function cleanEscapedString(input) { + var matched = input.match(escapedStringRegExp); + if (!matched) { + return input; + } + return matched[1].replace(doubleQuoteRegExp, "'"); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/assign/index.js +var require_assign = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/assign/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = assign; + function assign(target, object) { + if (target == null) { + throw new TypeError("assign requires that input parameter not be null or undefined"); + } + for (var property in object) { + if (Object.prototype.hasOwnProperty.call(object, property)) { + ; + target[property] = object[property]; + } + } + return target; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/cloneObject/index.js +var require_cloneObject = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/cloneObject/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = cloneObject; + var _index = _interopRequireDefault(require_assign()); + function cloneObject(object) { + return (0, _index.default)({}, object); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatDistance/index.js +var require_formatDistance2 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatDistance/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatDistance2; + var _index = require_defaultOptions(); + var _index2 = _interopRequireDefault(require_compareAsc()); + var _index3 = _interopRequireDefault(require_differenceInMonths()); + var _index4 = _interopRequireDefault(require_differenceInSeconds()); + var _index5 = _interopRequireDefault(require_defaultLocale()); + var _index6 = _interopRequireDefault(require_toDate()); + var _index7 = _interopRequireDefault(require_cloneObject()); + var _index8 = _interopRequireDefault(require_assign()); + var _index9 = _interopRequireDefault(require_getTimezoneOffsetInMilliseconds()); + var _index10 = _interopRequireDefault(require_requiredArgs()); + var MINUTES_IN_DAY = 1440; + var MINUTES_IN_ALMOST_TWO_DAYS = 2520; + var MINUTES_IN_MONTH = 43200; + var MINUTES_IN_TWO_MONTHS = 86400; + function formatDistance2(dirtyDate, dirtyBaseDate, options2) { + var _ref, _options$locale; + (0, _index10.default)(2, arguments); + var defaultOptions = (0, _index.getDefaultOptions)(); + var locale = (_ref = (_options$locale = options2 === null || options2 === void 0 ? void 0 : options2.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions.locale) !== null && _ref !== void 0 ? _ref : _index5.default; + if (!locale.formatDistance) { + throw new RangeError("locale must contain formatDistance property"); + } + var comparison = (0, _index2.default)(dirtyDate, dirtyBaseDate); + if (isNaN(comparison)) { + throw new RangeError("Invalid time value"); + } + var localizeOptions = (0, _index8.default)((0, _index7.default)(options2), { + addSuffix: Boolean(options2 === null || options2 === void 0 ? void 0 : options2.addSuffix), + comparison + }); + var dateLeft; + var dateRight; + if (comparison > 0) { + dateLeft = (0, _index6.default)(dirtyBaseDate); + dateRight = (0, _index6.default)(dirtyDate); + } else { + dateLeft = (0, _index6.default)(dirtyDate); + dateRight = (0, _index6.default)(dirtyBaseDate); + } + var seconds = (0, _index4.default)(dateRight, dateLeft); + var offsetInSeconds = ((0, _index9.default)(dateRight) - (0, _index9.default)(dateLeft)) / 1e3; + var minutes = Math.round((seconds - offsetInSeconds) / 60); + var months; + if (minutes < 2) { + if (options2 !== null && options2 !== void 0 && options2.includeSeconds) { + if (seconds < 5) { + return locale.formatDistance("lessThanXSeconds", 5, localizeOptions); + } else if (seconds < 10) { + return locale.formatDistance("lessThanXSeconds", 10, localizeOptions); + } else if (seconds < 20) { + return locale.formatDistance("lessThanXSeconds", 20, localizeOptions); + } else if (seconds < 40) { + return locale.formatDistance("halfAMinute", 0, localizeOptions); + } else if (seconds < 60) { + return locale.formatDistance("lessThanXMinutes", 1, localizeOptions); + } else { + return locale.formatDistance("xMinutes", 1, localizeOptions); + } + } else { + if (minutes === 0) { + return locale.formatDistance("lessThanXMinutes", 1, localizeOptions); + } else { + return locale.formatDistance("xMinutes", minutes, localizeOptions); + } + } + } else if (minutes < 45) { + return locale.formatDistance("xMinutes", minutes, localizeOptions); + } else if (minutes < 90) { + return locale.formatDistance("aboutXHours", 1, localizeOptions); + } else if (minutes < MINUTES_IN_DAY) { + var hours = Math.round(minutes / 60); + return locale.formatDistance("aboutXHours", hours, localizeOptions); + } else if (minutes < MINUTES_IN_ALMOST_TWO_DAYS) { + return locale.formatDistance("xDays", 1, localizeOptions); + } else if (minutes < MINUTES_IN_MONTH) { + var days = Math.round(minutes / MINUTES_IN_DAY); + return locale.formatDistance("xDays", days, localizeOptions); + } else if (minutes < MINUTES_IN_TWO_MONTHS) { + months = Math.round(minutes / MINUTES_IN_MONTH); + return locale.formatDistance("aboutXMonths", months, localizeOptions); + } + months = (0, _index3.default)(dateRight, dateLeft); + if (months < 12) { + var nearestMonth = Math.round(minutes / MINUTES_IN_MONTH); + return locale.formatDistance("xMonths", nearestMonth, localizeOptions); + } else { + var monthsSinceStartOfYear = months % 12; + var years = Math.floor(months / 12); + if (monthsSinceStartOfYear < 3) { + return locale.formatDistance("aboutXYears", years, localizeOptions); + } else if (monthsSinceStartOfYear < 9) { + return locale.formatDistance("overXYears", years, localizeOptions); + } else { + return locale.formatDistance("almostXYears", years + 1, localizeOptions); + } + } + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatDistanceStrict/index.js +var require_formatDistanceStrict = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatDistanceStrict/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatDistanceStrict; + var _index = require_defaultOptions(); + var _index2 = _interopRequireDefault(require_getTimezoneOffsetInMilliseconds()); + var _index3 = _interopRequireDefault(require_compareAsc()); + var _index4 = _interopRequireDefault(require_toDate()); + var _index5 = _interopRequireDefault(require_cloneObject()); + var _index6 = _interopRequireDefault(require_assign()); + var _index7 = _interopRequireDefault(require_defaultLocale()); + var _index8 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_MINUTE = 1e3 * 60; + var MINUTES_IN_DAY = 60 * 24; + var MINUTES_IN_MONTH = MINUTES_IN_DAY * 30; + var MINUTES_IN_YEAR = MINUTES_IN_DAY * 365; + function formatDistanceStrict(dirtyDate, dirtyBaseDate, options2) { + var _ref, _options$locale, _options$roundingMeth; + (0, _index8.default)(2, arguments); + var defaultOptions = (0, _index.getDefaultOptions)(); + var locale = (_ref = (_options$locale = options2 === null || options2 === void 0 ? void 0 : options2.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions.locale) !== null && _ref !== void 0 ? _ref : _index7.default; + if (!locale.formatDistance) { + throw new RangeError("locale must contain localize.formatDistance property"); + } + var comparison = (0, _index3.default)(dirtyDate, dirtyBaseDate); + if (isNaN(comparison)) { + throw new RangeError("Invalid time value"); + } + var localizeOptions = (0, _index6.default)((0, _index5.default)(options2), { + addSuffix: Boolean(options2 === null || options2 === void 0 ? void 0 : options2.addSuffix), + comparison + }); + var dateLeft; + var dateRight; + if (comparison > 0) { + dateLeft = (0, _index4.default)(dirtyBaseDate); + dateRight = (0, _index4.default)(dirtyDate); + } else { + dateLeft = (0, _index4.default)(dirtyDate); + dateRight = (0, _index4.default)(dirtyBaseDate); + } + var roundingMethod = String((_options$roundingMeth = options2 === null || options2 === void 0 ? void 0 : options2.roundingMethod) !== null && _options$roundingMeth !== void 0 ? _options$roundingMeth : "round"); + var roundingMethodFn; + if (roundingMethod === "floor") { + roundingMethodFn = Math.floor; + } else if (roundingMethod === "ceil") { + roundingMethodFn = Math.ceil; + } else if (roundingMethod === "round") { + roundingMethodFn = Math.round; + } else { + throw new RangeError("roundingMethod must be 'floor', 'ceil' or 'round'"); + } + var milliseconds = dateRight.getTime() - dateLeft.getTime(); + var minutes = milliseconds / MILLISECONDS_IN_MINUTE; + var timezoneOffset = (0, _index2.default)(dateRight) - (0, _index2.default)(dateLeft); + var dstNormalizedMinutes = (milliseconds - timezoneOffset) / MILLISECONDS_IN_MINUTE; + var defaultUnit = options2 === null || options2 === void 0 ? void 0 : options2.unit; + var unit; + if (!defaultUnit) { + if (minutes < 1) { + unit = "second"; + } else if (minutes < 60) { + unit = "minute"; + } else if (minutes < MINUTES_IN_DAY) { + unit = "hour"; + } else if (dstNormalizedMinutes < MINUTES_IN_MONTH) { + unit = "day"; + } else if (dstNormalizedMinutes < MINUTES_IN_YEAR) { + unit = "month"; + } else { + unit = "year"; + } + } else { + unit = String(defaultUnit); + } + if (unit === "second") { + var seconds = roundingMethodFn(milliseconds / 1e3); + return locale.formatDistance("xSeconds", seconds, localizeOptions); + } else if (unit === "minute") { + var roundedMinutes = roundingMethodFn(minutes); + return locale.formatDistance("xMinutes", roundedMinutes, localizeOptions); + } else if (unit === "hour") { + var hours = roundingMethodFn(minutes / 60); + return locale.formatDistance("xHours", hours, localizeOptions); + } else if (unit === "day") { + var days = roundingMethodFn(dstNormalizedMinutes / MINUTES_IN_DAY); + return locale.formatDistance("xDays", days, localizeOptions); + } else if (unit === "month") { + var months = roundingMethodFn(dstNormalizedMinutes / MINUTES_IN_MONTH); + return months === 12 && defaultUnit !== "month" ? locale.formatDistance("xYears", 1, localizeOptions) : locale.formatDistance("xMonths", months, localizeOptions); + } else if (unit === "year") { + var years = roundingMethodFn(dstNormalizedMinutes / MINUTES_IN_YEAR); + return locale.formatDistance("xYears", years, localizeOptions); + } + throw new RangeError("unit must be 'second', 'minute', 'hour', 'day', 'month' or 'year'"); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatDistanceToNow/index.js +var require_formatDistanceToNow = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatDistanceToNow/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatDistanceToNow; + var _index = _interopRequireDefault(require_formatDistance2()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function formatDistanceToNow(dirtyDate, options2) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate, Date.now(), options2); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatDistanceToNowStrict/index.js +var require_formatDistanceToNowStrict = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatDistanceToNowStrict/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatDistanceToNowStrict; + var _index = _interopRequireDefault(require_formatDistanceStrict()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function formatDistanceToNowStrict(dirtyDate, options2) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate, Date.now(), options2); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatDuration/index.js +var require_formatDuration = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatDuration/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatDuration; + var _index = require_defaultOptions(); + var _index2 = _interopRequireDefault(require_defaultLocale()); + var defaultFormat = ["years", "months", "weeks", "days", "hours", "minutes", "seconds"]; + function formatDuration(duration, options2) { + var _ref, _options$locale, _options$format, _options$zero, _options$delimiter; + if (arguments.length < 1) { + throw new TypeError("1 argument required, but only ".concat(arguments.length, " present")); + } + var defaultOptions = (0, _index.getDefaultOptions)(); + var locale = (_ref = (_options$locale = options2 === null || options2 === void 0 ? void 0 : options2.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions.locale) !== null && _ref !== void 0 ? _ref : _index2.default; + var format = (_options$format = options2 === null || options2 === void 0 ? void 0 : options2.format) !== null && _options$format !== void 0 ? _options$format : defaultFormat; + var zero = (_options$zero = options2 === null || options2 === void 0 ? void 0 : options2.zero) !== null && _options$zero !== void 0 ? _options$zero : false; + var delimiter = (_options$delimiter = options2 === null || options2 === void 0 ? void 0 : options2.delimiter) !== null && _options$delimiter !== void 0 ? _options$delimiter : " "; + if (!locale.formatDistance) { + return ""; + } + var result = format.reduce(function(acc, unit) { + var token = "x".concat(unit.replace(/(^.)/, function(m) { + return m.toUpperCase(); + })); + var value = duration[unit]; + if (typeof value === "number" && (zero || duration[unit])) { + return acc.concat(locale.formatDistance(token, value)); + } + return acc; + }, []).join(delimiter); + return result; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatISO/index.js +var require_formatISO = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatISO/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatISO; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_addLeadingZeros()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function formatISO(date, options2) { + var _options$format, _options$representati; + (0, _index3.default)(1, arguments); + var originalDate = (0, _index.default)(date); + if (isNaN(originalDate.getTime())) { + throw new RangeError("Invalid time value"); + } + var format = String((_options$format = options2 === null || options2 === void 0 ? void 0 : options2.format) !== null && _options$format !== void 0 ? _options$format : "extended"); + var representation = String((_options$representati = options2 === null || options2 === void 0 ? void 0 : options2.representation) !== null && _options$representati !== void 0 ? _options$representati : "complete"); + if (format !== "extended" && format !== "basic") { + throw new RangeError("format must be 'extended' or 'basic'"); + } + if (representation !== "date" && representation !== "time" && representation !== "complete") { + throw new RangeError("representation must be 'date', 'time', or 'complete'"); + } + var result = ""; + var tzOffset = ""; + var dateDelimiter = format === "extended" ? "-" : ""; + var timeDelimiter = format === "extended" ? ":" : ""; + if (representation !== "time") { + var day = (0, _index2.default)(originalDate.getDate(), 2); + var month = (0, _index2.default)(originalDate.getMonth() + 1, 2); + var year = (0, _index2.default)(originalDate.getFullYear(), 4); + result = "".concat(year).concat(dateDelimiter).concat(month).concat(dateDelimiter).concat(day); + } + if (representation !== "date") { + var offset = originalDate.getTimezoneOffset(); + if (offset !== 0) { + var absoluteOffset = Math.abs(offset); + var hourOffset = (0, _index2.default)(Math.floor(absoluteOffset / 60), 2); + var minuteOffset = (0, _index2.default)(absoluteOffset % 60, 2); + var sign = offset < 0 ? "+" : "-"; + tzOffset = "".concat(sign).concat(hourOffset, ":").concat(minuteOffset); + } else { + tzOffset = "Z"; + } + var hour = (0, _index2.default)(originalDate.getHours(), 2); + var minute = (0, _index2.default)(originalDate.getMinutes(), 2); + var second = (0, _index2.default)(originalDate.getSeconds(), 2); + var separator = result === "" ? "" : "T"; + var time = [hour, minute, second].join(timeDelimiter); + result = "".concat(result).concat(separator).concat(time).concat(tzOffset); + } + return result; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatISO9075/index.js +var require_formatISO9075 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatISO9075/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatISO9075; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_isValid()); + var _index3 = _interopRequireDefault(require_addLeadingZeros()); + function formatISO9075(dirtyDate, options2) { + var _options$format, _options$representati; + if (arguments.length < 1) { + throw new TypeError("1 argument required, but only ".concat(arguments.length, " present")); + } + var originalDate = (0, _index.default)(dirtyDate); + if (!(0, _index2.default)(originalDate)) { + throw new RangeError("Invalid time value"); + } + var format = String((_options$format = options2 === null || options2 === void 0 ? void 0 : options2.format) !== null && _options$format !== void 0 ? _options$format : "extended"); + var representation = String((_options$representati = options2 === null || options2 === void 0 ? void 0 : options2.representation) !== null && _options$representati !== void 0 ? _options$representati : "complete"); + if (format !== "extended" && format !== "basic") { + throw new RangeError("format must be 'extended' or 'basic'"); + } + if (representation !== "date" && representation !== "time" && representation !== "complete") { + throw new RangeError("representation must be 'date', 'time', or 'complete'"); + } + var result = ""; + var dateDelimiter = format === "extended" ? "-" : ""; + var timeDelimiter = format === "extended" ? ":" : ""; + if (representation !== "time") { + var day = (0, _index3.default)(originalDate.getDate(), 2); + var month = (0, _index3.default)(originalDate.getMonth() + 1, 2); + var year = (0, _index3.default)(originalDate.getFullYear(), 4); + result = "".concat(year).concat(dateDelimiter).concat(month).concat(dateDelimiter).concat(day); + } + if (representation !== "date") { + var hour = (0, _index3.default)(originalDate.getHours(), 2); + var minute = (0, _index3.default)(originalDate.getMinutes(), 2); + var second = (0, _index3.default)(originalDate.getSeconds(), 2); + var separator = result === "" ? "" : " "; + result = "".concat(result).concat(separator).concat(hour).concat(timeDelimiter).concat(minute).concat(timeDelimiter).concat(second); + } + return result; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatISODuration/index.js +var require_formatISODuration = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatISODuration/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatISODuration; + var _typeof2 = _interopRequireDefault(require_typeof()); + var _index = _interopRequireDefault(require_requiredArgs()); + function formatISODuration(duration) { + (0, _index.default)(1, arguments); + if ((0, _typeof2.default)(duration) !== "object") + throw new Error("Duration must be an object"); + var _duration$years = duration.years, years = _duration$years === void 0 ? 0 : _duration$years, _duration$months = duration.months, months = _duration$months === void 0 ? 0 : _duration$months, _duration$days = duration.days, days = _duration$days === void 0 ? 0 : _duration$days, _duration$hours = duration.hours, hours = _duration$hours === void 0 ? 0 : _duration$hours, _duration$minutes = duration.minutes, minutes = _duration$minutes === void 0 ? 0 : _duration$minutes, _duration$seconds = duration.seconds, seconds = _duration$seconds === void 0 ? 0 : _duration$seconds; + return "P".concat(years, "Y").concat(months, "M").concat(days, "DT").concat(hours, "H").concat(minutes, "M").concat(seconds, "S"); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatRFC3339/index.js +var require_formatRFC3339 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatRFC3339/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatRFC3339; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_isValid()); + var _index3 = _interopRequireDefault(require_addLeadingZeros()); + var _index4 = _interopRequireDefault(require_toInteger()); + function formatRFC3339(dirtyDate, options2) { + var _options$fractionDigi; + if (arguments.length < 1) { + throw new TypeError("1 arguments required, but only ".concat(arguments.length, " present")); + } + var originalDate = (0, _index.default)(dirtyDate); + if (!(0, _index2.default)(originalDate)) { + throw new RangeError("Invalid time value"); + } + var fractionDigits = Number((_options$fractionDigi = options2 === null || options2 === void 0 ? void 0 : options2.fractionDigits) !== null && _options$fractionDigi !== void 0 ? _options$fractionDigi : 0); + if (!(fractionDigits >= 0 && fractionDigits <= 3)) { + throw new RangeError("fractionDigits must be between 0 and 3 inclusively"); + } + var day = (0, _index3.default)(originalDate.getDate(), 2); + var month = (0, _index3.default)(originalDate.getMonth() + 1, 2); + var year = originalDate.getFullYear(); + var hour = (0, _index3.default)(originalDate.getHours(), 2); + var minute = (0, _index3.default)(originalDate.getMinutes(), 2); + var second = (0, _index3.default)(originalDate.getSeconds(), 2); + var fractionalSecond = ""; + if (fractionDigits > 0) { + var milliseconds = originalDate.getMilliseconds(); + var fractionalSeconds = Math.floor(milliseconds * Math.pow(10, fractionDigits - 3)); + fractionalSecond = "." + (0, _index3.default)(fractionalSeconds, fractionDigits); + } + var offset = ""; + var tzOffset = originalDate.getTimezoneOffset(); + if (tzOffset !== 0) { + var absoluteOffset = Math.abs(tzOffset); + var hourOffset = (0, _index3.default)((0, _index4.default)(absoluteOffset / 60), 2); + var minuteOffset = (0, _index3.default)(absoluteOffset % 60, 2); + var sign = tzOffset < 0 ? "+" : "-"; + offset = "".concat(sign).concat(hourOffset, ":").concat(minuteOffset); + } else { + offset = "Z"; + } + return "".concat(year, "-").concat(month, "-").concat(day, "T").concat(hour, ":").concat(minute, ":").concat(second).concat(fractionalSecond).concat(offset); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatRFC7231/index.js +var require_formatRFC7231 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatRFC7231/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatRFC7231; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_isValid()); + var _index3 = _interopRequireDefault(require_addLeadingZeros()); + var days = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]; + var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; + function formatRFC7231(dirtyDate) { + if (arguments.length < 1) { + throw new TypeError("1 arguments required, but only ".concat(arguments.length, " present")); + } + var originalDate = (0, _index.default)(dirtyDate); + if (!(0, _index2.default)(originalDate)) { + throw new RangeError("Invalid time value"); + } + var dayName = days[originalDate.getUTCDay()]; + var dayOfMonth = (0, _index3.default)(originalDate.getUTCDate(), 2); + var monthName = months[originalDate.getUTCMonth()]; + var year = originalDate.getUTCFullYear(); + var hour = (0, _index3.default)(originalDate.getUTCHours(), 2); + var minute = (0, _index3.default)(originalDate.getUTCMinutes(), 2); + var second = (0, _index3.default)(originalDate.getUTCSeconds(), 2); + return "".concat(dayName, ", ").concat(dayOfMonth, " ").concat(monthName, " ").concat(year, " ").concat(hour, ":").concat(minute, ":").concat(second, " GMT"); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatRelative/index.js +var require_formatRelative2 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/formatRelative/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = formatRelative; + var _index = require_defaultOptions(); + var _index2 = _interopRequireDefault(require_differenceInCalendarDays()); + var _index3 = _interopRequireDefault(require_format()); + var _index4 = _interopRequireDefault(require_defaultLocale()); + var _index5 = _interopRequireDefault(require_subMilliseconds()); + var _index6 = _interopRequireDefault(require_toDate()); + var _index7 = _interopRequireDefault(require_getTimezoneOffsetInMilliseconds()); + var _index8 = _interopRequireDefault(require_requiredArgs()); + var _index9 = _interopRequireDefault(require_toInteger()); + function formatRelative(dirtyDate, dirtyBaseDate, options2) { + var _ref, _options$locale, _ref2, _ref3, _ref4, _options$weekStartsOn, _options$locale2, _options$locale2$opti, _defaultOptions$local, _defaultOptions$local2; + (0, _index8.default)(2, arguments); + var date = (0, _index6.default)(dirtyDate); + var baseDate = (0, _index6.default)(dirtyBaseDate); + var defaultOptions = (0, _index.getDefaultOptions)(); + var locale = (_ref = (_options$locale = options2 === null || options2 === void 0 ? void 0 : options2.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions.locale) !== null && _ref !== void 0 ? _ref : _index4.default; + var weekStartsOn = (0, _index9.default)((_ref2 = (_ref3 = (_ref4 = (_options$weekStartsOn = options2 === null || options2 === void 0 ? void 0 : options2.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options2 === null || options2 === void 0 ? void 0 : (_options$locale2 = options2.locale) === null || _options$locale2 === void 0 ? void 0 : (_options$locale2$opti = _options$locale2.options) === null || _options$locale2$opti === void 0 ? void 0 : _options$locale2$opti.weekStartsOn) !== null && _ref4 !== void 0 ? _ref4 : defaultOptions.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : 0); + if (!locale.localize) { + throw new RangeError("locale must contain localize property"); + } + if (!locale.formatLong) { + throw new RangeError("locale must contain formatLong property"); + } + if (!locale.formatRelative) { + throw new RangeError("locale must contain formatRelative property"); + } + var diff = (0, _index2.default)(date, baseDate); + if (isNaN(diff)) { + throw new RangeError("Invalid time value"); + } + var token; + if (diff < -6) { + token = "other"; + } else if (diff < -1) { + token = "lastWeek"; + } else if (diff < 0) { + token = "yesterday"; + } else if (diff < 1) { + token = "today"; + } else if (diff < 2) { + token = "tomorrow"; + } else if (diff < 7) { + token = "nextWeek"; + } else { + token = "other"; + } + var utcDate = (0, _index5.default)(date, (0, _index7.default)(date)); + var utcBaseDate = (0, _index5.default)(baseDate, (0, _index7.default)(baseDate)); + var formatStr = locale.formatRelative(token, utcDate, utcBaseDate, { + locale, + weekStartsOn + }); + return (0, _index3.default)(date, formatStr, { + locale, + weekStartsOn + }); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/fromUnixTime/index.js +var require_fromUnixTime = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/fromUnixTime/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = fromUnixTime; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_toInteger()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function fromUnixTime(dirtyUnixTime) { + (0, _index3.default)(1, arguments); + var unixTime = (0, _index2.default)(dirtyUnixTime); + return (0, _index.default)(unixTime * 1e3); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDate/index.js +var require_getDate = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDate/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getDate; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getDate(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var dayOfMonth = date.getDate(); + return dayOfMonth; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDay/index.js +var require_getDay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getDay; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getDay(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var day = date.getDay(); + return day; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDayOfYear/index.js +var require_getDayOfYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDayOfYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getDayOfYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_startOfYear()); + var _index3 = _interopRequireDefault(require_differenceInCalendarDays()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function getDayOfYear(dirtyDate) { + (0, _index4.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var diff = (0, _index3.default)(date, (0, _index2.default)(date)); + var dayOfYear = diff + 1; + return dayOfYear; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDaysInMonth/index.js +var require_getDaysInMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDaysInMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getDaysInMonth; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getDaysInMonth(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getFullYear(); + var monthIndex = date.getMonth(); + var lastDayOfMonth = /* @__PURE__ */ new Date(0); + lastDayOfMonth.setFullYear(year, monthIndex + 1, 0); + lastDayOfMonth.setHours(0, 0, 0, 0); + return lastDayOfMonth.getDate(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isLeapYear/index.js +var require_isLeapYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isLeapYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isLeapYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isLeapYear(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getFullYear(); + return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDaysInYear/index.js +var require_getDaysInYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDaysInYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getDaysInYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_isLeapYear()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function getDaysInYear(dirtyDate) { + (0, _index3.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + if (String(new Date(date)) === "Invalid Date") { + return NaN; + } + return (0, _index2.default)(date) ? 366 : 365; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDecade/index.js +var require_getDecade = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDecade/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getDecade; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getDecade(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getFullYear(); + var decade = Math.floor(year / 10) * 10; + return decade; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDefaultOptions/index.js +var require_getDefaultOptions = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getDefaultOptions/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getDefaultOptions; + var _index = require_defaultOptions(); + var _index2 = _interopRequireDefault(require_assign()); + function getDefaultOptions() { + return (0, _index2.default)({}, (0, _index.getDefaultOptions)()); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getHours/index.js +var require_getHours = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getHours/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getHours; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getHours(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var hours = date.getHours(); + return hours; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getISODay/index.js +var require_getISODay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getISODay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getISODay; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getISODay(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var day = date.getDay(); + if (day === 0) { + day = 7; + } + return day; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getISOWeek/index.js +var require_getISOWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getISOWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getISOWeek; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_startOfISOWeek()); + var _index3 = _interopRequireDefault(require_startOfISOWeekYear()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_WEEK = 6048e5; + function getISOWeek(dirtyDate) { + (0, _index4.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var diff = (0, _index2.default)(date).getTime() - (0, _index3.default)(date).getTime(); + return Math.round(diff / MILLISECONDS_IN_WEEK) + 1; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getISOWeeksInYear/index.js +var require_getISOWeeksInYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getISOWeeksInYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getISOWeeksInYear; + var _index = _interopRequireDefault(require_startOfISOWeekYear()); + var _index2 = _interopRequireDefault(require_addWeeks()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_WEEK = 6048e5; + function getISOWeeksInYear(dirtyDate) { + (0, _index3.default)(1, arguments); + var thisYear = (0, _index.default)(dirtyDate); + var nextYear = (0, _index.default)((0, _index2.default)(thisYear, 60)); + var diff = nextYear.valueOf() - thisYear.valueOf(); + return Math.round(diff / MILLISECONDS_IN_WEEK); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getMilliseconds/index.js +var require_getMilliseconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getMilliseconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getMilliseconds; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getMilliseconds(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var milliseconds = date.getMilliseconds(); + return milliseconds; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getMinutes/index.js +var require_getMinutes = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getMinutes/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getMinutes; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getMinutes(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var minutes = date.getMinutes(); + return minutes; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getMonth/index.js +var require_getMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getMonth; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getMonth(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var month = date.getMonth(); + return month; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getOverlappingDaysInIntervals/index.js +var require_getOverlappingDaysInIntervals = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getOverlappingDaysInIntervals/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getOverlappingDaysInIntervals; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_DAY = 24 * 60 * 60 * 1e3; + function getOverlappingDaysInIntervals(dirtyIntervalLeft, dirtyIntervalRight) { + (0, _index2.default)(2, arguments); + var intervalLeft = dirtyIntervalLeft || {}; + var intervalRight = dirtyIntervalRight || {}; + var leftStartTime = (0, _index.default)(intervalLeft.start).getTime(); + var leftEndTime = (0, _index.default)(intervalLeft.end).getTime(); + var rightStartTime = (0, _index.default)(intervalRight.start).getTime(); + var rightEndTime = (0, _index.default)(intervalRight.end).getTime(); + if (!(leftStartTime <= leftEndTime && rightStartTime <= rightEndTime)) { + throw new RangeError("Invalid interval"); + } + var isOverlapping = leftStartTime < rightEndTime && rightStartTime < leftEndTime; + if (!isOverlapping) { + return 0; + } + var overlapStartDate = rightStartTime < leftStartTime ? leftStartTime : rightStartTime; + var overlapEndDate = rightEndTime > leftEndTime ? leftEndTime : rightEndTime; + var differenceInMs = overlapEndDate - overlapStartDate; + return Math.ceil(differenceInMs / MILLISECONDS_IN_DAY); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getSeconds/index.js +var require_getSeconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getSeconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getSeconds; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getSeconds(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var seconds = date.getSeconds(); + return seconds; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getTime/index.js +var require_getTime = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getTime/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getTime; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getTime(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var timestamp = date.getTime(); + return timestamp; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getUnixTime/index.js +var require_getUnixTime = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getUnixTime/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getUnixTime; + var _index = _interopRequireDefault(require_getTime()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getUnixTime(dirtyDate) { + (0, _index2.default)(1, arguments); + return Math.floor((0, _index.default)(dirtyDate) / 1e3); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getWeekYear/index.js +var require_getWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getWeekYear; + var _index = _interopRequireDefault(require_startOfWeek()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_toInteger()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + var _index5 = require_defaultOptions(); + function getWeekYear(dirtyDate, options2) { + var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index4.default)(1, arguments); + var date = (0, _index2.default)(dirtyDate); + var year = date.getFullYear(); + var defaultOptions = (0, _index5.getDefaultOptions)(); + var firstWeekContainsDate = (0, _index3.default)((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options2 === null || options2 === void 0 ? void 0 : options2.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1); + if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) { + throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively"); + } + var firstWeekOfNextYear = /* @__PURE__ */ new Date(0); + firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate); + firstWeekOfNextYear.setHours(0, 0, 0, 0); + var startOfNextYear = (0, _index.default)(firstWeekOfNextYear, options2); + var firstWeekOfThisYear = /* @__PURE__ */ new Date(0); + firstWeekOfThisYear.setFullYear(year, 0, firstWeekContainsDate); + firstWeekOfThisYear.setHours(0, 0, 0, 0); + var startOfThisYear = (0, _index.default)(firstWeekOfThisYear, options2); + if (date.getTime() >= startOfNextYear.getTime()) { + return year + 1; + } else if (date.getTime() >= startOfThisYear.getTime()) { + return year; + } else { + return year - 1; + } + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfWeekYear/index.js +var require_startOfWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfWeekYear; + var _index = _interopRequireDefault(require_getWeekYear()); + var _index2 = _interopRequireDefault(require_startOfWeek()); + var _index3 = _interopRequireDefault(require_toInteger()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + var _index5 = require_defaultOptions(); + function startOfWeekYear(dirtyDate, options2) { + var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index4.default)(1, arguments); + var defaultOptions = (0, _index5.getDefaultOptions)(); + var firstWeekContainsDate = (0, _index3.default)((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options2 === null || options2 === void 0 ? void 0 : options2.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1); + var year = (0, _index.default)(dirtyDate, options2); + var firstWeek = /* @__PURE__ */ new Date(0); + firstWeek.setFullYear(year, 0, firstWeekContainsDate); + firstWeek.setHours(0, 0, 0, 0); + var date = (0, _index2.default)(firstWeek, options2); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getWeek/index.js +var require_getWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getWeek; + var _index = _interopRequireDefault(require_startOfWeek()); + var _index2 = _interopRequireDefault(require_startOfWeekYear()); + var _index3 = _interopRequireDefault(require_toDate()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + var MILLISECONDS_IN_WEEK = 6048e5; + function getWeek(dirtyDate, options2) { + (0, _index4.default)(1, arguments); + var date = (0, _index3.default)(dirtyDate); + var diff = (0, _index.default)(date, options2).getTime() - (0, _index2.default)(date, options2).getTime(); + return Math.round(diff / MILLISECONDS_IN_WEEK) + 1; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getWeekOfMonth/index.js +var require_getWeekOfMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getWeekOfMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getWeekOfMonth; + var _index = require_defaultOptions(); + var _index2 = _interopRequireDefault(require_getDate()); + var _index3 = _interopRequireDefault(require_getDay()); + var _index4 = _interopRequireDefault(require_startOfMonth()); + var _index5 = _interopRequireDefault(require_requiredArgs()); + var _index6 = _interopRequireDefault(require_toInteger()); + function getWeekOfMonth(date, options2) { + var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index5.default)(1, arguments); + var defaultOptions = (0, _index.getDefaultOptions)(); + var weekStartsOn = (0, _index6.default)((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options2 === null || options2 === void 0 ? void 0 : options2.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); + if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) { + throw new RangeError("weekStartsOn must be between 0 and 6 inclusively"); + } + var currentDayOfMonth = (0, _index2.default)(date); + if (isNaN(currentDayOfMonth)) + return NaN; + var startWeekDay = (0, _index3.default)((0, _index4.default)(date)); + var lastDayOfFirstWeek = weekStartsOn - startWeekDay; + if (lastDayOfFirstWeek <= 0) + lastDayOfFirstWeek += 7; + var remainingDaysAfterFirstWeek = currentDayOfMonth - lastDayOfFirstWeek; + return Math.ceil(remainingDaysAfterFirstWeek / 7) + 1; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfMonth/index.js +var require_lastDayOfMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = lastDayOfMonth; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function lastDayOfMonth(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var month = date.getMonth(); + date.setFullYear(date.getFullYear(), month + 1, 0); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getWeeksInMonth/index.js +var require_getWeeksInMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getWeeksInMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getWeeksInMonth; + var _index = _interopRequireDefault(require_differenceInCalendarWeeks()); + var _index2 = _interopRequireDefault(require_lastDayOfMonth()); + var _index3 = _interopRequireDefault(require_startOfMonth()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function getWeeksInMonth(date, options2) { + (0, _index4.default)(1, arguments); + return (0, _index.default)((0, _index2.default)(date), (0, _index3.default)(date), options2) + 1; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getYear/index.js +var require_getYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/getYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = getYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function getYear(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate).getFullYear(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/hoursToMilliseconds/index.js +var require_hoursToMilliseconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/hoursToMilliseconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = hoursToMilliseconds; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function hoursToMilliseconds(hours) { + (0, _index.default)(1, arguments); + return Math.floor(hours * _index2.millisecondsInHour); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/hoursToMinutes/index.js +var require_hoursToMinutes = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/hoursToMinutes/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = hoursToMinutes; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function hoursToMinutes(hours) { + (0, _index.default)(1, arguments); + return Math.floor(hours * _index2.minutesInHour); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/hoursToSeconds/index.js +var require_hoursToSeconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/hoursToSeconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = hoursToSeconds; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function hoursToSeconds(hours) { + (0, _index.default)(1, arguments); + return Math.floor(hours * _index2.secondsInHour); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/intervalToDuration/index.js +var require_intervalToDuration = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/intervalToDuration/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = intervalToDuration; + var _index = _interopRequireDefault(require_compareAsc()); + var _index2 = _interopRequireDefault(require_add()); + var _index3 = _interopRequireDefault(require_differenceInDays()); + var _index4 = _interopRequireDefault(require_differenceInHours()); + var _index5 = _interopRequireDefault(require_differenceInMinutes()); + var _index6 = _interopRequireDefault(require_differenceInMonths()); + var _index7 = _interopRequireDefault(require_differenceInSeconds()); + var _index8 = _interopRequireDefault(require_differenceInYears()); + var _index9 = _interopRequireDefault(require_toDate()); + var _index10 = _interopRequireDefault(require_requiredArgs()); + function intervalToDuration(interval) { + (0, _index10.default)(1, arguments); + var start4 = (0, _index9.default)(interval.start); + var end = (0, _index9.default)(interval.end); + if (isNaN(start4.getTime())) + throw new RangeError("Start Date is invalid"); + if (isNaN(end.getTime())) + throw new RangeError("End Date is invalid"); + var duration = {}; + duration.years = Math.abs((0, _index8.default)(end, start4)); + var sign = (0, _index.default)(end, start4); + var remainingMonths = (0, _index2.default)(start4, { + years: sign * duration.years + }); + duration.months = Math.abs((0, _index6.default)(end, remainingMonths)); + var remainingDays = (0, _index2.default)(remainingMonths, { + months: sign * duration.months + }); + duration.days = Math.abs((0, _index3.default)(end, remainingDays)); + var remainingHours = (0, _index2.default)(remainingDays, { + days: sign * duration.days + }); + duration.hours = Math.abs((0, _index4.default)(end, remainingHours)); + var remainingMinutes = (0, _index2.default)(remainingHours, { + hours: sign * duration.hours + }); + duration.minutes = Math.abs((0, _index5.default)(end, remainingMinutes)); + var remainingSeconds = (0, _index2.default)(remainingMinutes, { + minutes: sign * duration.minutes + }); + duration.seconds = Math.abs((0, _index7.default)(end, remainingSeconds)); + return duration; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/intlFormat/index.js +var require_intlFormat = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/intlFormat/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = intlFormat; + var _index = _interopRequireDefault(require_requiredArgs()); + function intlFormat(date, formatOrLocale, localeOptions) { + var _localeOptions; + (0, _index.default)(1, arguments); + var formatOptions; + if (isFormatOptions(formatOrLocale)) { + formatOptions = formatOrLocale; + } else { + localeOptions = formatOrLocale; + } + return new Intl.DateTimeFormat((_localeOptions = localeOptions) === null || _localeOptions === void 0 ? void 0 : _localeOptions.locale, formatOptions).format(date); + } + function isFormatOptions(opts) { + return opts !== void 0 && !("locale" in opts); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/intlFormatDistance/index.js +var require_intlFormatDistance = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/intlFormatDistance/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = intlFormatDistance; + var _index = require_constants2(); + var _index2 = _interopRequireDefault(require_differenceInCalendarDays()); + var _index3 = _interopRequireDefault(require_differenceInCalendarMonths()); + var _index4 = _interopRequireDefault(require_differenceInCalendarQuarters()); + var _index5 = _interopRequireDefault(require_differenceInCalendarWeeks()); + var _index6 = _interopRequireDefault(require_differenceInCalendarYears()); + var _index7 = _interopRequireDefault(require_differenceInHours()); + var _index8 = _interopRequireDefault(require_differenceInMinutes()); + var _index9 = _interopRequireDefault(require_differenceInSeconds()); + var _index10 = _interopRequireDefault(require_toDate()); + var _index11 = _interopRequireDefault(require_requiredArgs()); + function intlFormatDistance(date, baseDate, options2) { + (0, _index11.default)(2, arguments); + var value = 0; + var unit; + var dateLeft = (0, _index10.default)(date); + var dateRight = (0, _index10.default)(baseDate); + if (!(options2 !== null && options2 !== void 0 && options2.unit)) { + var diffInSeconds = (0, _index9.default)(dateLeft, dateRight); + if (Math.abs(diffInSeconds) < _index.secondsInMinute) { + value = (0, _index9.default)(dateLeft, dateRight); + unit = "second"; + } else if (Math.abs(diffInSeconds) < _index.secondsInHour) { + value = (0, _index8.default)(dateLeft, dateRight); + unit = "minute"; + } else if (Math.abs(diffInSeconds) < _index.secondsInDay && Math.abs((0, _index2.default)(dateLeft, dateRight)) < 1) { + value = (0, _index7.default)(dateLeft, dateRight); + unit = "hour"; + } else if (Math.abs(diffInSeconds) < _index.secondsInWeek && (value = (0, _index2.default)(dateLeft, dateRight)) && Math.abs(value) < 7) { + unit = "day"; + } else if (Math.abs(diffInSeconds) < _index.secondsInMonth) { + value = (0, _index5.default)(dateLeft, dateRight); + unit = "week"; + } else if (Math.abs(diffInSeconds) < _index.secondsInQuarter) { + value = (0, _index3.default)(dateLeft, dateRight); + unit = "month"; + } else if (Math.abs(diffInSeconds) < _index.secondsInYear) { + if ((0, _index4.default)(dateLeft, dateRight) < 4) { + value = (0, _index4.default)(dateLeft, dateRight); + unit = "quarter"; + } else { + value = (0, _index6.default)(dateLeft, dateRight); + unit = "year"; + } + } else { + value = (0, _index6.default)(dateLeft, dateRight); + unit = "year"; + } + } else { + unit = options2 === null || options2 === void 0 ? void 0 : options2.unit; + if (unit === "second") { + value = (0, _index9.default)(dateLeft, dateRight); + } else if (unit === "minute") { + value = (0, _index8.default)(dateLeft, dateRight); + } else if (unit === "hour") { + value = (0, _index7.default)(dateLeft, dateRight); + } else if (unit === "day") { + value = (0, _index2.default)(dateLeft, dateRight); + } else if (unit === "week") { + value = (0, _index5.default)(dateLeft, dateRight); + } else if (unit === "month") { + value = (0, _index3.default)(dateLeft, dateRight); + } else if (unit === "quarter") { + value = (0, _index4.default)(dateLeft, dateRight); + } else if (unit === "year") { + value = (0, _index6.default)(dateLeft, dateRight); + } + } + var rtf = new Intl.RelativeTimeFormat(options2 === null || options2 === void 0 ? void 0 : options2.locale, { + localeMatcher: options2 === null || options2 === void 0 ? void 0 : options2.localeMatcher, + numeric: (options2 === null || options2 === void 0 ? void 0 : options2.numeric) || "auto", + style: options2 === null || options2 === void 0 ? void 0 : options2.style + }); + return rtf.format(value, unit); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isAfter/index.js +var require_isAfter = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isAfter/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isAfter; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isAfter(dirtyDate, dirtyDateToCompare) { + (0, _index2.default)(2, arguments); + var date = (0, _index.default)(dirtyDate); + var dateToCompare = (0, _index.default)(dirtyDateToCompare); + return date.getTime() > dateToCompare.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isBefore/index.js +var require_isBefore = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isBefore/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isBefore; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isBefore(dirtyDate, dirtyDateToCompare) { + (0, _index2.default)(2, arguments); + var date = (0, _index.default)(dirtyDate); + var dateToCompare = (0, _index.default)(dirtyDateToCompare); + return date.getTime() < dateToCompare.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isEqual/index.js +var require_isEqual = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isEqual/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isEqual; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isEqual(dirtyLeftDate, dirtyRightDate) { + (0, _index2.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyLeftDate); + var dateRight = (0, _index.default)(dirtyRightDate); + return dateLeft.getTime() === dateRight.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isExists/index.js +var require_isExists = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isExists/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isExists; + function isExists(year, month, day) { + if (arguments.length < 3) { + throw new TypeError("3 argument required, but only " + arguments.length + " present"); + } + var date = new Date(year, month, day); + return date.getFullYear() === year && date.getMonth() === month && date.getDate() === day; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isFirstDayOfMonth/index.js +var require_isFirstDayOfMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isFirstDayOfMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isFirstDayOfMonth; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isFirstDayOfMonth(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate).getDate() === 1; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isFriday/index.js +var require_isFriday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isFriday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isFriday; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isFriday(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate).getDay() === 5; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isFuture/index.js +var require_isFuture = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isFuture/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isFuture; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isFuture(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate).getTime() > Date.now(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/arrayLikeToArray.js +var require_arrayLikeToArray = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/arrayLikeToArray.js"(exports2, module2) { + function _arrayLikeToArray(arr, len) { + if (len == null || len > arr.length) + len = arr.length; + for (var i = 0, arr2 = new Array(len); i < len; i++) + arr2[i] = arr[i]; + return arr2; + } + module2.exports = _arrayLikeToArray, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js +var require_unsupportedIterableToArray = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js"(exports2, module2) { + var arrayLikeToArray = require_arrayLikeToArray(); + function _unsupportedIterableToArray(o, minLen) { + if (!o) + return; + if (typeof o === "string") + return arrayLikeToArray(o, minLen); + var n = Object.prototype.toString.call(o).slice(8, -1); + if (n === "Object" && o.constructor) + n = o.constructor.name; + if (n === "Map" || n === "Set") + return Array.from(o); + if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) + return arrayLikeToArray(o, minLen); + } + module2.exports = _unsupportedIterableToArray, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js +var require_createForOfIteratorHelper = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js"(exports2, module2) { + var unsupportedIterableToArray = require_unsupportedIterableToArray(); + function _createForOfIteratorHelper(o, allowArrayLike) { + var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; + if (!it) { + if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { + if (it) + o = it; + var i = 0; + var F = function F2() { + }; + return { + s: F, + n: function n() { + if (i >= o.length) + return { + done: true + }; + return { + done: false, + value: o[i++] + }; + }, + e: function e(_e) { + throw _e; + }, + f: F + }; + } + throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); + } + var normalCompletion = true, didErr = false, err2; + return { + s: function s() { + it = it.call(o); + }, + n: function n() { + var step = it.next(); + normalCompletion = step.done; + return step; + }, + e: function e(_e2) { + didErr = true; + err2 = _e2; + }, + f: function f() { + try { + if (!normalCompletion && it["return"] != null) + it["return"](); + } finally { + if (didErr) + throw err2; + } + } + }; + } + module2.exports = _createForOfIteratorHelper, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/assertThisInitialized.js +var require_assertThisInitialized = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/assertThisInitialized.js"(exports2, module2) { + function _assertThisInitialized(self2) { + if (self2 === void 0) { + throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + } + return self2; + } + module2.exports = _assertThisInitialized, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/setPrototypeOf.js +var require_setPrototypeOf = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/setPrototypeOf.js"(exports2, module2) { + function _setPrototypeOf(o, p) { + module2.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf2(o2, p2) { + o2.__proto__ = p2; + return o2; + }, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + return _setPrototypeOf(o, p); + } + module2.exports = _setPrototypeOf, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/inherits.js +var require_inherits2 = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/inherits.js"(exports2, module2) { + var setPrototypeOf = require_setPrototypeOf(); + function _inherits(subClass, superClass) { + if (typeof superClass !== "function" && superClass !== null) { + throw new TypeError("Super expression must either be null or a function"); + } + subClass.prototype = Object.create(superClass && superClass.prototype, { + constructor: { + value: subClass, + writable: true, + configurable: true + } + }); + Object.defineProperty(subClass, "prototype", { + writable: false + }); + if (superClass) + setPrototypeOf(subClass, superClass); + } + module2.exports = _inherits, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/getPrototypeOf.js +var require_getPrototypeOf = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/getPrototypeOf.js"(exports2, module2) { + function _getPrototypeOf(o) { + module2.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf2(o2) { + return o2.__proto__ || Object.getPrototypeOf(o2); + }, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + return _getPrototypeOf(o); + } + module2.exports = _getPrototypeOf, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js +var require_isNativeReflectConstruct = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js"(exports2, module2) { + function _isNativeReflectConstruct() { + if (typeof Reflect === "undefined" || !Reflect.construct) + return false; + if (Reflect.construct.sham) + return false; + if (typeof Proxy === "function") + return true; + try { + Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() { + })); + return true; + } catch (e) { + return false; + } + } + module2.exports = _isNativeReflectConstruct, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js +var require_possibleConstructorReturn = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"(exports2, module2) { + var _typeof = require_typeof()["default"]; + var assertThisInitialized = require_assertThisInitialized(); + function _possibleConstructorReturn(self2, call) { + if (call && (_typeof(call) === "object" || typeof call === "function")) { + return call; + } else if (call !== void 0) { + throw new TypeError("Derived constructors may only return object or undefined"); + } + return assertThisInitialized(self2); + } + module2.exports = _possibleConstructorReturn, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/createSuper.js +var require_createSuper = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/createSuper.js"(exports2, module2) { + var getPrototypeOf2 = require_getPrototypeOf(); + var isNativeReflectConstruct = require_isNativeReflectConstruct(); + var possibleConstructorReturn = require_possibleConstructorReturn(); + function _createSuper(Derived) { + var hasNativeReflectConstruct = isNativeReflectConstruct(); + return function _createSuperInternal() { + var Super = getPrototypeOf2(Derived), result; + if (hasNativeReflectConstruct) { + var NewTarget = getPrototypeOf2(this).constructor; + result = Reflect.construct(Super, arguments, NewTarget); + } else { + result = Super.apply(this, arguments); + } + return possibleConstructorReturn(this, result); + }; + } + module2.exports = _createSuper, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/classCallCheck.js +var require_classCallCheck = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/classCallCheck.js"(exports2, module2) { + function _classCallCheck(instance2, Constructor) { + if (!(instance2 instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + module2.exports = _classCallCheck, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/toPrimitive.js +var require_toPrimitive = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/toPrimitive.js"(exports2, module2) { + var _typeof = require_typeof()["default"]; + function _toPrimitive(input, hint) { + if (_typeof(input) !== "object" || input === null) + return input; + var prim = input[Symbol.toPrimitive]; + if (prim !== void 0) { + var res = prim.call(input, hint || "default"); + if (_typeof(res) !== "object") + return res; + throw new TypeError("@@toPrimitive must return a primitive value."); + } + return (hint === "string" ? String : Number)(input); + } + module2.exports = _toPrimitive, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/toPropertyKey.js +var require_toPropertyKey = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/toPropertyKey.js"(exports2, module2) { + var _typeof = require_typeof()["default"]; + var toPrimitive = require_toPrimitive(); + function _toPropertyKey(arg) { + var key = toPrimitive(arg, "string"); + return _typeof(key) === "symbol" ? key : String(key); + } + module2.exports = _toPropertyKey, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/createClass.js +var require_createClass = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/createClass.js"(exports2, module2) { + var toPropertyKey = require_toPropertyKey(); + function _defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) + descriptor.writable = true; + Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor); + } + } + function _createClass(Constructor, protoProps, staticProps) { + if (protoProps) + _defineProperties(Constructor.prototype, protoProps); + if (staticProps) + _defineProperties(Constructor, staticProps); + Object.defineProperty(Constructor, "prototype", { + writable: false + }); + return Constructor; + } + module2.exports = _createClass, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/defineProperty.js +var require_defineProperty = __commonJS({ + "../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/defineProperty.js"(exports2, module2) { + var toPropertyKey = require_toPropertyKey(); + function _defineProperty(obj2, key, value) { + key = toPropertyKey(key); + if (key in obj2) { + Object.defineProperty(obj2, key, { + value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj2[key] = value; + } + return obj2; + } + module2.exports = _defineProperty, module2.exports.__esModule = true, module2.exports["default"] = module2.exports; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/Setter.js +var require_Setter = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/Setter.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.ValueSetter = exports2.Setter = exports2.DateToSystemTimezoneSetter = void 0; + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var TIMEZONE_UNIT_PRIORITY = 10; + var Setter = /* @__PURE__ */ function() { + function Setter2() { + (0, _classCallCheck2.default)(this, Setter2); + (0, _defineProperty2.default)(this, "priority", void 0); + (0, _defineProperty2.default)(this, "subPriority", 0); + } + (0, _createClass2.default)(Setter2, [{ + key: "validate", + value: function validate(_utcDate, _options) { + return true; + } + }]); + return Setter2; + }(); + exports2.Setter = Setter; + var ValueSetter = /* @__PURE__ */ function(_Setter) { + (0, _inherits2.default)(ValueSetter2, _Setter); + var _super = (0, _createSuper2.default)(ValueSetter2); + function ValueSetter2(value, validateValue, setValue2, priority, subPriority) { + var _this; + (0, _classCallCheck2.default)(this, ValueSetter2); + _this = _super.call(this); + _this.value = value; + _this.validateValue = validateValue; + _this.setValue = setValue2; + _this.priority = priority; + if (subPriority) { + _this.subPriority = subPriority; + } + return _this; + } + (0, _createClass2.default)(ValueSetter2, [{ + key: "validate", + value: function validate(utcDate, options2) { + return this.validateValue(utcDate, this.value, options2); + } + }, { + key: "set", + value: function set(utcDate, flags2, options2) { + return this.setValue(utcDate, flags2, this.value, options2); + } + }]); + return ValueSetter2; + }(Setter); + exports2.ValueSetter = ValueSetter; + var DateToSystemTimezoneSetter = /* @__PURE__ */ function(_Setter2) { + (0, _inherits2.default)(DateToSystemTimezoneSetter2, _Setter2); + var _super2 = (0, _createSuper2.default)(DateToSystemTimezoneSetter2); + function DateToSystemTimezoneSetter2() { + var _this2; + (0, _classCallCheck2.default)(this, DateToSystemTimezoneSetter2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this2 = _super2.call.apply(_super2, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this2), "priority", TIMEZONE_UNIT_PRIORITY); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this2), "subPriority", -1); + return _this2; + } + (0, _createClass2.default)(DateToSystemTimezoneSetter2, [{ + key: "set", + value: function set(date, flags2) { + if (flags2.timestampIsSet) { + return date; + } + var convertedDate = /* @__PURE__ */ new Date(0); + convertedDate.setFullYear(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate()); + convertedDate.setHours(date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds(), date.getUTCMilliseconds()); + return convertedDate; + } + }]); + return DateToSystemTimezoneSetter2; + }(Setter); + exports2.DateToSystemTimezoneSetter = DateToSystemTimezoneSetter; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/Parser.js +var require_Parser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/Parser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.Parser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Setter = require_Setter(); + var Parser3 = /* @__PURE__ */ function() { + function Parser4() { + (0, _classCallCheck2.default)(this, Parser4); + (0, _defineProperty2.default)(this, "incompatibleTokens", void 0); + (0, _defineProperty2.default)(this, "priority", void 0); + (0, _defineProperty2.default)(this, "subPriority", void 0); + } + (0, _createClass2.default)(Parser4, [{ + key: "run", + value: function run2(dateString, token, match2, options2) { + var result = this.parse(dateString, token, match2, options2); + if (!result) { + return null; + } + return { + setter: new _Setter.ValueSetter(result.value, this.validate, this.set, this.priority, this.subPriority), + rest: result.rest + }; + } + }, { + key: "validate", + value: function validate(_utcDate, _value, _options) { + return true; + } + }]); + return Parser4; + }(); + exports2.Parser = Parser3; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/EraParser.js +var require_EraParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/EraParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.EraParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var EraParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(EraParser2, _Parser3); + var _super = (0, _createSuper2.default)(EraParser2); + function EraParser2() { + var _this; + (0, _classCallCheck2.default)(this, EraParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 140); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["R", "u", "t", "T"]); + return _this; + } + (0, _createClass2.default)(EraParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "G": + case "GG": + case "GGG": + return match2.era(dateString, { + width: "abbreviated" + }) || match2.era(dateString, { + width: "narrow" + }); + case "GGGGG": + return match2.era(dateString, { + width: "narrow" + }); + case "GGGG": + default: + return match2.era(dateString, { + width: "wide" + }) || match2.era(dateString, { + width: "abbreviated" + }) || match2.era(dateString, { + width: "narrow" + }); + } + } + }, { + key: "set", + value: function set(date, flags2, value) { + flags2.era = value; + date.setUTCFullYear(value, 0, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return EraParser2; + }(_Parser2.Parser); + exports2.EraParser = EraParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/constants.js +var require_constants3 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.timezonePatterns = exports2.numericPatterns = void 0; + var numericPatterns = { + month: /^(1[0-2]|0?\d)/, + // 0 to 12 + date: /^(3[0-1]|[0-2]?\d)/, + // 0 to 31 + dayOfYear: /^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/, + // 0 to 366 + week: /^(5[0-3]|[0-4]?\d)/, + // 0 to 53 + hour23h: /^(2[0-3]|[0-1]?\d)/, + // 0 to 23 + hour24h: /^(2[0-4]|[0-1]?\d)/, + // 0 to 24 + hour11h: /^(1[0-1]|0?\d)/, + // 0 to 11 + hour12h: /^(1[0-2]|0?\d)/, + // 0 to 12 + minute: /^[0-5]?\d/, + // 0 to 59 + second: /^[0-5]?\d/, + // 0 to 59 + singleDigit: /^\d/, + // 0 to 9 + twoDigits: /^\d{1,2}/, + // 0 to 99 + threeDigits: /^\d{1,3}/, + // 0 to 999 + fourDigits: /^\d{1,4}/, + // 0 to 9999 + anyDigitsSigned: /^-?\d+/, + singleDigitSigned: /^-?\d/, + // 0 to 9, -0 to -9 + twoDigitsSigned: /^-?\d{1,2}/, + // 0 to 99, -0 to -99 + threeDigitsSigned: /^-?\d{1,3}/, + // 0 to 999, -0 to -999 + fourDigitsSigned: /^-?\d{1,4}/ + // 0 to 9999, -0 to -9999 + }; + exports2.numericPatterns = numericPatterns; + var timezonePatterns = { + basicOptionalMinutes: /^([+-])(\d{2})(\d{2})?|Z/, + basic: /^([+-])(\d{2})(\d{2})|Z/, + basicOptionalSeconds: /^([+-])(\d{2})(\d{2})((\d{2}))?|Z/, + extended: /^([+-])(\d{2}):(\d{2})|Z/, + extendedOptionalSeconds: /^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/ + }; + exports2.timezonePatterns = timezonePatterns; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/utils.js +var require_utils5 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.dayPeriodEnumToHours = dayPeriodEnumToHours; + exports2.isLeapYearIndex = isLeapYearIndex; + exports2.mapValue = mapValue; + exports2.normalizeTwoDigitYear = normalizeTwoDigitYear; + exports2.parseAnyDigitsSigned = parseAnyDigitsSigned; + exports2.parseNDigits = parseNDigits; + exports2.parseNDigitsSigned = parseNDigitsSigned; + exports2.parseNumericPattern = parseNumericPattern; + exports2.parseTimezonePattern = parseTimezonePattern; + var _index = require_constants2(); + var _constants = require_constants3(); + function mapValue(parseFnResult, mapFn) { + if (!parseFnResult) { + return parseFnResult; + } + return { + value: mapFn(parseFnResult.value), + rest: parseFnResult.rest + }; + } + function parseNumericPattern(pattern, dateString) { + var matchResult = dateString.match(pattern); + if (!matchResult) { + return null; + } + return { + value: parseInt(matchResult[0], 10), + rest: dateString.slice(matchResult[0].length) + }; + } + function parseTimezonePattern(pattern, dateString) { + var matchResult = dateString.match(pattern); + if (!matchResult) { + return null; + } + if (matchResult[0] === "Z") { + return { + value: 0, + rest: dateString.slice(1) + }; + } + var sign = matchResult[1] === "+" ? 1 : -1; + var hours = matchResult[2] ? parseInt(matchResult[2], 10) : 0; + var minutes = matchResult[3] ? parseInt(matchResult[3], 10) : 0; + var seconds = matchResult[5] ? parseInt(matchResult[5], 10) : 0; + return { + value: sign * (hours * _index.millisecondsInHour + minutes * _index.millisecondsInMinute + seconds * _index.millisecondsInSecond), + rest: dateString.slice(matchResult[0].length) + }; + } + function parseAnyDigitsSigned(dateString) { + return parseNumericPattern(_constants.numericPatterns.anyDigitsSigned, dateString); + } + function parseNDigits(n, dateString) { + switch (n) { + case 1: + return parseNumericPattern(_constants.numericPatterns.singleDigit, dateString); + case 2: + return parseNumericPattern(_constants.numericPatterns.twoDigits, dateString); + case 3: + return parseNumericPattern(_constants.numericPatterns.threeDigits, dateString); + case 4: + return parseNumericPattern(_constants.numericPatterns.fourDigits, dateString); + default: + return parseNumericPattern(new RegExp("^\\d{1," + n + "}"), dateString); + } + } + function parseNDigitsSigned(n, dateString) { + switch (n) { + case 1: + return parseNumericPattern(_constants.numericPatterns.singleDigitSigned, dateString); + case 2: + return parseNumericPattern(_constants.numericPatterns.twoDigitsSigned, dateString); + case 3: + return parseNumericPattern(_constants.numericPatterns.threeDigitsSigned, dateString); + case 4: + return parseNumericPattern(_constants.numericPatterns.fourDigitsSigned, dateString); + default: + return parseNumericPattern(new RegExp("^-?\\d{1," + n + "}"), dateString); + } + } + function dayPeriodEnumToHours(dayPeriod) { + switch (dayPeriod) { + case "morning": + return 4; + case "evening": + return 17; + case "pm": + case "noon": + case "afternoon": + return 12; + case "am": + case "midnight": + case "night": + default: + return 0; + } + } + function normalizeTwoDigitYear(twoDigitYear, currentYear) { + var isCommonEra = currentYear > 0; + var absCurrentYear = isCommonEra ? currentYear : 1 - currentYear; + var result; + if (absCurrentYear <= 50) { + result = twoDigitYear || 100; + } else { + var rangeEnd = absCurrentYear + 50; + var rangeEndCentury = Math.floor(rangeEnd / 100) * 100; + var isPreviousCentury = twoDigitYear >= rangeEnd % 100; + result = twoDigitYear + rangeEndCentury - (isPreviousCentury ? 100 : 0); + } + return isCommonEra ? result : 1 - result; + } + function isLeapYearIndex(year) { + return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0; + } + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/YearParser.js +var require_YearParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/YearParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.YearParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var YearParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(YearParser2, _Parser3); + var _super = (0, _createSuper2.default)(YearParser2); + function YearParser2() { + var _this; + (0, _classCallCheck2.default)(this, YearParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 130); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["Y", "R", "u", "w", "I", "i", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(YearParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + var valueCallback = function valueCallback2(year) { + return { + year, + isTwoDigitYear: token === "yy" + }; + }; + switch (token) { + case "y": + return (0, _utils.mapValue)((0, _utils.parseNDigits)(4, dateString), valueCallback); + case "yo": + return (0, _utils.mapValue)(match2.ordinalNumber(dateString, { + unit: "year" + }), valueCallback); + default: + return (0, _utils.mapValue)((0, _utils.parseNDigits)(token.length, dateString), valueCallback); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value.isTwoDigitYear || value.year > 0; + } + }, { + key: "set", + value: function set(date, flags2, value) { + var currentYear = date.getUTCFullYear(); + if (value.isTwoDigitYear) { + var normalizedTwoDigitYear = (0, _utils.normalizeTwoDigitYear)(value.year, currentYear); + date.setUTCFullYear(normalizedTwoDigitYear, 0, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + var year = !("era" in flags2) || flags2.era === 1 ? value.year : 1 - value.year; + date.setUTCFullYear(year, 0, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return YearParser2; + }(_Parser2.Parser); + exports2.YearParser = YearParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js +var require_LocalWeekYearParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.LocalWeekYearParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var _index = _interopRequireDefault(require_getUTCWeekYear()); + var _index2 = _interopRequireDefault(require_startOfUTCWeek()); + var LocalWeekYearParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(LocalWeekYearParser2, _Parser3); + var _super = (0, _createSuper2.default)(LocalWeekYearParser2); + function LocalWeekYearParser2() { + var _this; + (0, _classCallCheck2.default)(this, LocalWeekYearParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 130); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["y", "R", "u", "Q", "q", "M", "L", "I", "d", "D", "i", "t", "T"]); + return _this; + } + (0, _createClass2.default)(LocalWeekYearParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + var valueCallback = function valueCallback2(year) { + return { + year, + isTwoDigitYear: token === "YY" + }; + }; + switch (token) { + case "Y": + return (0, _utils.mapValue)((0, _utils.parseNDigits)(4, dateString), valueCallback); + case "Yo": + return (0, _utils.mapValue)(match2.ordinalNumber(dateString, { + unit: "year" + }), valueCallback); + default: + return (0, _utils.mapValue)((0, _utils.parseNDigits)(token.length, dateString), valueCallback); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value.isTwoDigitYear || value.year > 0; + } + }, { + key: "set", + value: function set(date, flags2, value, options2) { + var currentYear = (0, _index.default)(date, options2); + if (value.isTwoDigitYear) { + var normalizedTwoDigitYear = (0, _utils.normalizeTwoDigitYear)(value.year, currentYear); + date.setUTCFullYear(normalizedTwoDigitYear, 0, options2.firstWeekContainsDate); + date.setUTCHours(0, 0, 0, 0); + return (0, _index2.default)(date, options2); + } + var year = !("era" in flags2) || flags2.era === 1 ? value.year : 1 - value.year; + date.setUTCFullYear(year, 0, options2.firstWeekContainsDate); + date.setUTCHours(0, 0, 0, 0); + return (0, _index2.default)(date, options2); + } + }]); + return LocalWeekYearParser2; + }(_Parser2.Parser); + exports2.LocalWeekYearParser = LocalWeekYearParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js +var require_ISOWeekYearParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.ISOWeekYearParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var _index = _interopRequireDefault(require_startOfUTCISOWeek()); + var ISOWeekYearParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(ISOWeekYearParser2, _Parser3); + var _super = (0, _createSuper2.default)(ISOWeekYearParser2); + function ISOWeekYearParser2() { + var _this; + (0, _classCallCheck2.default)(this, ISOWeekYearParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 130); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["G", "y", "Y", "u", "Q", "q", "M", "L", "w", "d", "D", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(ISOWeekYearParser2, [{ + key: "parse", + value: function parse7(dateString, token) { + if (token === "R") { + return (0, _utils.parseNDigitsSigned)(4, dateString); + } + return (0, _utils.parseNDigitsSigned)(token.length, dateString); + } + }, { + key: "set", + value: function set(_date, _flags, value) { + var firstWeekOfYear = /* @__PURE__ */ new Date(0); + firstWeekOfYear.setUTCFullYear(value, 0, 4); + firstWeekOfYear.setUTCHours(0, 0, 0, 0); + return (0, _index.default)(firstWeekOfYear); + } + }]); + return ISOWeekYearParser2; + }(_Parser2.Parser); + exports2.ISOWeekYearParser = ISOWeekYearParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js +var require_ExtendedYearParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.ExtendedYearParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var ExtendedYearParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(ExtendedYearParser2, _Parser3); + var _super = (0, _createSuper2.default)(ExtendedYearParser2); + function ExtendedYearParser2() { + var _this; + (0, _classCallCheck2.default)(this, ExtendedYearParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 130); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["G", "y", "Y", "R", "w", "I", "i", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(ExtendedYearParser2, [{ + key: "parse", + value: function parse7(dateString, token) { + if (token === "u") { + return (0, _utils.parseNDigitsSigned)(4, dateString); + } + return (0, _utils.parseNDigitsSigned)(token.length, dateString); + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCFullYear(value, 0, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return ExtendedYearParser2; + }(_Parser2.Parser); + exports2.ExtendedYearParser = ExtendedYearParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js +var require_QuarterParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.QuarterParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var QuarterParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(QuarterParser2, _Parser3); + var _super = (0, _createSuper2.default)(QuarterParser2); + function QuarterParser2() { + var _this; + (0, _classCallCheck2.default)(this, QuarterParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 120); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["Y", "R", "q", "M", "L", "w", "I", "d", "D", "i", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(QuarterParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "Q": + case "QQ": + return (0, _utils.parseNDigits)(token.length, dateString); + case "Qo": + return match2.ordinalNumber(dateString, { + unit: "quarter" + }); + case "QQQ": + return match2.quarter(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.quarter(dateString, { + width: "narrow", + context: "formatting" + }); + case "QQQQQ": + return match2.quarter(dateString, { + width: "narrow", + context: "formatting" + }); + case "QQQQ": + default: + return match2.quarter(dateString, { + width: "wide", + context: "formatting" + }) || match2.quarter(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.quarter(dateString, { + width: "narrow", + context: "formatting" + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 4; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMonth((value - 1) * 3, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return QuarterParser2; + }(_Parser2.Parser); + exports2.QuarterParser = QuarterParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js +var require_StandAloneQuarterParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.StandAloneQuarterParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var StandAloneQuarterParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(StandAloneQuarterParser2, _Parser3); + var _super = (0, _createSuper2.default)(StandAloneQuarterParser2); + function StandAloneQuarterParser2() { + var _this; + (0, _classCallCheck2.default)(this, StandAloneQuarterParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 120); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["Y", "R", "Q", "M", "L", "w", "I", "d", "D", "i", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(StandAloneQuarterParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "q": + case "qq": + return (0, _utils.parseNDigits)(token.length, dateString); + case "qo": + return match2.ordinalNumber(dateString, { + unit: "quarter" + }); + case "qqq": + return match2.quarter(dateString, { + width: "abbreviated", + context: "standalone" + }) || match2.quarter(dateString, { + width: "narrow", + context: "standalone" + }); + case "qqqqq": + return match2.quarter(dateString, { + width: "narrow", + context: "standalone" + }); + case "qqqq": + default: + return match2.quarter(dateString, { + width: "wide", + context: "standalone" + }) || match2.quarter(dateString, { + width: "abbreviated", + context: "standalone" + }) || match2.quarter(dateString, { + width: "narrow", + context: "standalone" + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 4; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMonth((value - 1) * 3, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return StandAloneQuarterParser2; + }(_Parser2.Parser); + exports2.StandAloneQuarterParser = StandAloneQuarterParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/MonthParser.js +var require_MonthParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/MonthParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.MonthParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _utils = require_utils5(); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var MonthParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(MonthParser2, _Parser3); + var _super = (0, _createSuper2.default)(MonthParser2); + function MonthParser2() { + var _this; + (0, _classCallCheck2.default)(this, MonthParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["Y", "R", "q", "Q", "L", "w", "I", "D", "i", "e", "c", "t", "T"]); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 110); + return _this; + } + (0, _createClass2.default)(MonthParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + var valueCallback = function valueCallback2(value) { + return value - 1; + }; + switch (token) { + case "M": + return (0, _utils.mapValue)((0, _utils.parseNumericPattern)(_constants.numericPatterns.month, dateString), valueCallback); + case "MM": + return (0, _utils.mapValue)((0, _utils.parseNDigits)(2, dateString), valueCallback); + case "Mo": + return (0, _utils.mapValue)(match2.ordinalNumber(dateString, { + unit: "month" + }), valueCallback); + case "MMM": + return match2.month(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.month(dateString, { + width: "narrow", + context: "formatting" + }); + case "MMMMM": + return match2.month(dateString, { + width: "narrow", + context: "formatting" + }); + case "MMMM": + default: + return match2.month(dateString, { + width: "wide", + context: "formatting" + }) || match2.month(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.month(dateString, { + width: "narrow", + context: "formatting" + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 11; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMonth(value, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return MonthParser2; + }(_Parser2.Parser); + exports2.MonthParser = MonthParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js +var require_StandAloneMonthParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.StandAloneMonthParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var StandAloneMonthParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(StandAloneMonthParser2, _Parser3); + var _super = (0, _createSuper2.default)(StandAloneMonthParser2); + function StandAloneMonthParser2() { + var _this; + (0, _classCallCheck2.default)(this, StandAloneMonthParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 110); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["Y", "R", "q", "Q", "M", "w", "I", "D", "i", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(StandAloneMonthParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + var valueCallback = function valueCallback2(value) { + return value - 1; + }; + switch (token) { + case "L": + return (0, _utils.mapValue)((0, _utils.parseNumericPattern)(_constants.numericPatterns.month, dateString), valueCallback); + case "LL": + return (0, _utils.mapValue)((0, _utils.parseNDigits)(2, dateString), valueCallback); + case "Lo": + return (0, _utils.mapValue)(match2.ordinalNumber(dateString, { + unit: "month" + }), valueCallback); + case "LLL": + return match2.month(dateString, { + width: "abbreviated", + context: "standalone" + }) || match2.month(dateString, { + width: "narrow", + context: "standalone" + }); + case "LLLLL": + return match2.month(dateString, { + width: "narrow", + context: "standalone" + }); + case "LLLL": + default: + return match2.month(dateString, { + width: "wide", + context: "standalone" + }) || match2.month(dateString, { + width: "abbreviated", + context: "standalone" + }) || match2.month(dateString, { + width: "narrow", + context: "standalone" + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 11; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMonth(value, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return StandAloneMonthParser2; + }(_Parser2.Parser); + exports2.StandAloneMonthParser = StandAloneMonthParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/setUTCWeek/index.js +var require_setUTCWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/setUTCWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setUTCWeek; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_getUTCWeek()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function setUTCWeek(dirtyDate, dirtyWeek, options2) { + (0, _index4.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var week = (0, _index.default)(dirtyWeek); + var diff = (0, _index3.default)(date, options2) - week; + date.setUTCDate(date.getUTCDate() - diff * 7); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js +var require_LocalWeekParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.LocalWeekParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var _index = _interopRequireDefault(require_setUTCWeek()); + var _index2 = _interopRequireDefault(require_startOfUTCWeek()); + var LocalWeekParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(LocalWeekParser2, _Parser3); + var _super = (0, _createSuper2.default)(LocalWeekParser2); + function LocalWeekParser2() { + var _this; + (0, _classCallCheck2.default)(this, LocalWeekParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 100); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["y", "R", "u", "q", "Q", "M", "L", "I", "d", "D", "i", "t", "T"]); + return _this; + } + (0, _createClass2.default)(LocalWeekParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "w": + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.week, dateString); + case "wo": + return match2.ordinalNumber(dateString, { + unit: "week" + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 53; + } + }, { + key: "set", + value: function set(date, _flags, value, options2) { + return (0, _index2.default)((0, _index.default)(date, value, options2), options2); + } + }]); + return LocalWeekParser2; + }(_Parser2.Parser); + exports2.LocalWeekParser = LocalWeekParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/setUTCISOWeek/index.js +var require_setUTCISOWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/setUTCISOWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setUTCISOWeek; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_getUTCISOWeek()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function setUTCISOWeek(dirtyDate, dirtyISOWeek) { + (0, _index4.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var isoWeek = (0, _index.default)(dirtyISOWeek); + var diff = (0, _index3.default)(date) - isoWeek; + date.setUTCDate(date.getUTCDate() - diff * 7); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js +var require_ISOWeekParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.ISOWeekParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var _index = _interopRequireDefault(require_setUTCISOWeek()); + var _index2 = _interopRequireDefault(require_startOfUTCISOWeek()); + var ISOWeekParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(ISOWeekParser2, _Parser3); + var _super = (0, _createSuper2.default)(ISOWeekParser2); + function ISOWeekParser2() { + var _this; + (0, _classCallCheck2.default)(this, ISOWeekParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 100); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["y", "Y", "u", "q", "Q", "M", "L", "w", "d", "D", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(ISOWeekParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "I": + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.week, dateString); + case "Io": + return match2.ordinalNumber(dateString, { + unit: "week" + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 53; + } + }, { + key: "set", + value: function set(date, _flags, value) { + return (0, _index2.default)((0, _index.default)(date, value)); + } + }]); + return ISOWeekParser2; + }(_Parser2.Parser); + exports2.ISOWeekParser = ISOWeekParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/DateParser.js +var require_DateParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/DateParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.DateParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _utils = require_utils5(); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + var DAYS_IN_MONTH_LEAP_YEAR = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + var DateParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(DateParser2, _Parser3); + var _super = (0, _createSuper2.default)(DateParser2); + function DateParser2() { + var _this; + (0, _classCallCheck2.default)(this, DateParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "subPriority", 1); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["Y", "R", "q", "Q", "w", "I", "D", "i", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(DateParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "d": + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.date, dateString); + case "do": + return match2.ordinalNumber(dateString, { + unit: "date" + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(date, value) { + var year = date.getUTCFullYear(); + var isLeapYear = (0, _utils.isLeapYearIndex)(year); + var month = date.getUTCMonth(); + if (isLeapYear) { + return value >= 1 && value <= DAYS_IN_MONTH_LEAP_YEAR[month]; + } else { + return value >= 1 && value <= DAYS_IN_MONTH[month]; + } + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCDate(value); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return DateParser2; + }(_Parser2.Parser); + exports2.DateParser = DateParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js +var require_DayOfYearParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.DayOfYearParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var DayOfYearParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(DayOfYearParser2, _Parser3); + var _super = (0, _createSuper2.default)(DayOfYearParser2); + function DayOfYearParser2() { + var _this; + (0, _classCallCheck2.default)(this, DayOfYearParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "subpriority", 1); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["Y", "R", "q", "Q", "M", "L", "w", "I", "d", "E", "i", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(DayOfYearParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "D": + case "DD": + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.dayOfYear, dateString); + case "Do": + return match2.ordinalNumber(dateString, { + unit: "date" + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(date, value) { + var year = date.getUTCFullYear(); + var isLeapYear = (0, _utils.isLeapYearIndex)(year); + if (isLeapYear) { + return value >= 1 && value <= 366; + } else { + return value >= 1 && value <= 365; + } + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMonth(0, value); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return DayOfYearParser2; + }(_Parser2.Parser); + exports2.DayOfYearParser = DayOfYearParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/setUTCDay/index.js +var require_setUTCDay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/setUTCDay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setUTCDay; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_toInteger()); + var _index4 = require_defaultOptions(); + function setUTCDay(dirtyDate, dirtyDay, options2) { + var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index2.default)(2, arguments); + var defaultOptions = (0, _index4.getDefaultOptions)(); + var weekStartsOn = (0, _index3.default)((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options2 === null || options2 === void 0 ? void 0 : options2.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); + if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) { + throw new RangeError("weekStartsOn must be between 0 and 6 inclusively"); + } + var date = (0, _index.default)(dirtyDate); + var day = (0, _index3.default)(dirtyDay); + var currentDay = date.getUTCDay(); + var remainder = day % 7; + var dayIndex = (remainder + 7) % 7; + var diff = (dayIndex < weekStartsOn ? 7 : 0) + day - currentDay; + date.setUTCDate(date.getUTCDate() + diff); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/DayParser.js +var require_DayParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/DayParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.DayParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _index = _interopRequireDefault(require_setUTCDay()); + var DayParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(DayParser2, _Parser3); + var _super = (0, _createSuper2.default)(DayParser2); + function DayParser2() { + var _this; + (0, _classCallCheck2.default)(this, DayParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["D", "i", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(DayParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "E": + case "EE": + case "EEE": + return match2.day(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.day(dateString, { + width: "short", + context: "formatting" + }) || match2.day(dateString, { + width: "narrow", + context: "formatting" + }); + case "EEEEE": + return match2.day(dateString, { + width: "narrow", + context: "formatting" + }); + case "EEEEEE": + return match2.day(dateString, { + width: "short", + context: "formatting" + }) || match2.day(dateString, { + width: "narrow", + context: "formatting" + }); + case "EEEE": + default: + return match2.day(dateString, { + width: "wide", + context: "formatting" + }) || match2.day(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.day(dateString, { + width: "short", + context: "formatting" + }) || match2.day(dateString, { + width: "narrow", + context: "formatting" + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 6; + } + }, { + key: "set", + value: function set(date, _flags, value, options2) { + date = (0, _index.default)(date, value, options2); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return DayParser2; + }(_Parser2.Parser); + exports2.DayParser = DayParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js +var require_LocalDayParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.LocalDayParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var _index = _interopRequireDefault(require_setUTCDay()); + var LocalDayParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(LocalDayParser2, _Parser3); + var _super = (0, _createSuper2.default)(LocalDayParser2); + function LocalDayParser2() { + var _this; + (0, _classCallCheck2.default)(this, LocalDayParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["y", "R", "u", "q", "Q", "M", "L", "I", "d", "D", "E", "i", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(LocalDayParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2, options2) { + var valueCallback = function valueCallback2(value) { + var wholeWeekDays = Math.floor((value - 1) / 7) * 7; + return (value + options2.weekStartsOn + 6) % 7 + wholeWeekDays; + }; + switch (token) { + case "e": + case "ee": + return (0, _utils.mapValue)((0, _utils.parseNDigits)(token.length, dateString), valueCallback); + case "eo": + return (0, _utils.mapValue)(match2.ordinalNumber(dateString, { + unit: "day" + }), valueCallback); + case "eee": + return match2.day(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.day(dateString, { + width: "short", + context: "formatting" + }) || match2.day(dateString, { + width: "narrow", + context: "formatting" + }); + case "eeeee": + return match2.day(dateString, { + width: "narrow", + context: "formatting" + }); + case "eeeeee": + return match2.day(dateString, { + width: "short", + context: "formatting" + }) || match2.day(dateString, { + width: "narrow", + context: "formatting" + }); + case "eeee": + default: + return match2.day(dateString, { + width: "wide", + context: "formatting" + }) || match2.day(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.day(dateString, { + width: "short", + context: "formatting" + }) || match2.day(dateString, { + width: "narrow", + context: "formatting" + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 6; + } + }, { + key: "set", + value: function set(date, _flags, value, options2) { + date = (0, _index.default)(date, value, options2); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return LocalDayParser2; + }(_Parser2.Parser); + exports2.LocalDayParser = LocalDayParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js +var require_StandAloneLocalDayParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.StandAloneLocalDayParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var _index = _interopRequireDefault(require_setUTCDay()); + var StandAloneLocalDayParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(StandAloneLocalDayParser2, _Parser3); + var _super = (0, _createSuper2.default)(StandAloneLocalDayParser2); + function StandAloneLocalDayParser2() { + var _this; + (0, _classCallCheck2.default)(this, StandAloneLocalDayParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["y", "R", "u", "q", "Q", "M", "L", "I", "d", "D", "E", "i", "e", "t", "T"]); + return _this; + } + (0, _createClass2.default)(StandAloneLocalDayParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2, options2) { + var valueCallback = function valueCallback2(value) { + var wholeWeekDays = Math.floor((value - 1) / 7) * 7; + return (value + options2.weekStartsOn + 6) % 7 + wholeWeekDays; + }; + switch (token) { + case "c": + case "cc": + return (0, _utils.mapValue)((0, _utils.parseNDigits)(token.length, dateString), valueCallback); + case "co": + return (0, _utils.mapValue)(match2.ordinalNumber(dateString, { + unit: "day" + }), valueCallback); + case "ccc": + return match2.day(dateString, { + width: "abbreviated", + context: "standalone" + }) || match2.day(dateString, { + width: "short", + context: "standalone" + }) || match2.day(dateString, { + width: "narrow", + context: "standalone" + }); + case "ccccc": + return match2.day(dateString, { + width: "narrow", + context: "standalone" + }); + case "cccccc": + return match2.day(dateString, { + width: "short", + context: "standalone" + }) || match2.day(dateString, { + width: "narrow", + context: "standalone" + }); + case "cccc": + default: + return match2.day(dateString, { + width: "wide", + context: "standalone" + }) || match2.day(dateString, { + width: "abbreviated", + context: "standalone" + }) || match2.day(dateString, { + width: "short", + context: "standalone" + }) || match2.day(dateString, { + width: "narrow", + context: "standalone" + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 6; + } + }, { + key: "set", + value: function set(date, _flags, value, options2) { + date = (0, _index.default)(date, value, options2); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return StandAloneLocalDayParser2; + }(_Parser2.Parser); + exports2.StandAloneLocalDayParser = StandAloneLocalDayParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/setUTCISODay/index.js +var require_setUTCISODay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/_lib/setUTCISODay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setUTCISODay; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_toInteger()); + function setUTCISODay(dirtyDate, dirtyDay) { + (0, _index2.default)(2, arguments); + var day = (0, _index3.default)(dirtyDay); + if (day % 7 === 0) { + day = day - 7; + } + var weekStartsOn = 1; + var date = (0, _index.default)(dirtyDate); + var currentDay = date.getUTCDay(); + var remainder = day % 7; + var dayIndex = (remainder + 7) % 7; + var diff = (dayIndex < weekStartsOn ? 7 : 0) + day - currentDay; + date.setUTCDate(date.getUTCDate() + diff); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js +var require_ISODayParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.ISODayParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var _index = _interopRequireDefault(require_setUTCISODay()); + var ISODayParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(ISODayParser2, _Parser3); + var _super = (0, _createSuper2.default)(ISODayParser2); + function ISODayParser2() { + var _this; + (0, _classCallCheck2.default)(this, ISODayParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["y", "Y", "u", "q", "Q", "M", "L", "w", "d", "D", "E", "e", "c", "t", "T"]); + return _this; + } + (0, _createClass2.default)(ISODayParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + var valueCallback = function valueCallback2(value) { + if (value === 0) { + return 7; + } + return value; + }; + switch (token) { + case "i": + case "ii": + return (0, _utils.parseNDigits)(token.length, dateString); + case "io": + return match2.ordinalNumber(dateString, { + unit: "day" + }); + case "iii": + return (0, _utils.mapValue)(match2.day(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.day(dateString, { + width: "short", + context: "formatting" + }) || match2.day(dateString, { + width: "narrow", + context: "formatting" + }), valueCallback); + case "iiiii": + return (0, _utils.mapValue)(match2.day(dateString, { + width: "narrow", + context: "formatting" + }), valueCallback); + case "iiiiii": + return (0, _utils.mapValue)(match2.day(dateString, { + width: "short", + context: "formatting" + }) || match2.day(dateString, { + width: "narrow", + context: "formatting" + }), valueCallback); + case "iiii": + default: + return (0, _utils.mapValue)(match2.day(dateString, { + width: "wide", + context: "formatting" + }) || match2.day(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.day(dateString, { + width: "short", + context: "formatting" + }) || match2.day(dateString, { + width: "narrow", + context: "formatting" + }), valueCallback); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 7; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date = (0, _index.default)(date, value); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return ISODayParser2; + }(_Parser2.Parser); + exports2.ISODayParser = ISODayParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js +var require_AMPMParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.AMPMParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var AMPMParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(AMPMParser2, _Parser3); + var _super = (0, _createSuper2.default)(AMPMParser2); + function AMPMParser2() { + var _this; + (0, _classCallCheck2.default)(this, AMPMParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 80); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["b", "B", "H", "k", "t", "T"]); + return _this; + } + (0, _createClass2.default)(AMPMParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "a": + case "aa": + case "aaa": + return match2.dayPeriod(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.dayPeriod(dateString, { + width: "narrow", + context: "formatting" + }); + case "aaaaa": + return match2.dayPeriod(dateString, { + width: "narrow", + context: "formatting" + }); + case "aaaa": + default: + return match2.dayPeriod(dateString, { + width: "wide", + context: "formatting" + }) || match2.dayPeriod(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.dayPeriod(dateString, { + width: "narrow", + context: "formatting" + }); + } + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCHours((0, _utils.dayPeriodEnumToHours)(value), 0, 0, 0); + return date; + } + }]); + return AMPMParser2; + }(_Parser2.Parser); + exports2.AMPMParser = AMPMParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js +var require_AMPMMidnightParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.AMPMMidnightParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var AMPMMidnightParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(AMPMMidnightParser2, _Parser3); + var _super = (0, _createSuper2.default)(AMPMMidnightParser2); + function AMPMMidnightParser2() { + var _this; + (0, _classCallCheck2.default)(this, AMPMMidnightParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 80); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["a", "B", "H", "k", "t", "T"]); + return _this; + } + (0, _createClass2.default)(AMPMMidnightParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "b": + case "bb": + case "bbb": + return match2.dayPeriod(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.dayPeriod(dateString, { + width: "narrow", + context: "formatting" + }); + case "bbbbb": + return match2.dayPeriod(dateString, { + width: "narrow", + context: "formatting" + }); + case "bbbb": + default: + return match2.dayPeriod(dateString, { + width: "wide", + context: "formatting" + }) || match2.dayPeriod(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.dayPeriod(dateString, { + width: "narrow", + context: "formatting" + }); + } + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCHours((0, _utils.dayPeriodEnumToHours)(value), 0, 0, 0); + return date; + } + }]); + return AMPMMidnightParser2; + }(_Parser2.Parser); + exports2.AMPMMidnightParser = AMPMMidnightParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js +var require_DayPeriodParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.DayPeriodParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var DayPeriodParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(DayPeriodParser2, _Parser3); + var _super = (0, _createSuper2.default)(DayPeriodParser2); + function DayPeriodParser2() { + var _this; + (0, _classCallCheck2.default)(this, DayPeriodParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 80); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["a", "b", "t", "T"]); + return _this; + } + (0, _createClass2.default)(DayPeriodParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "B": + case "BB": + case "BBB": + return match2.dayPeriod(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.dayPeriod(dateString, { + width: "narrow", + context: "formatting" + }); + case "BBBBB": + return match2.dayPeriod(dateString, { + width: "narrow", + context: "formatting" + }); + case "BBBB": + default: + return match2.dayPeriod(dateString, { + width: "wide", + context: "formatting" + }) || match2.dayPeriod(dateString, { + width: "abbreviated", + context: "formatting" + }) || match2.dayPeriod(dateString, { + width: "narrow", + context: "formatting" + }); + } + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCHours((0, _utils.dayPeriodEnumToHours)(value), 0, 0, 0); + return date; + } + }]); + return DayPeriodParser2; + }(_Parser2.Parser); + exports2.DayPeriodParser = DayPeriodParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js +var require_Hour1to12Parser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.Hour1to12Parser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var Hour1to12Parser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(Hour1to12Parser2, _Parser3); + var _super = (0, _createSuper2.default)(Hour1to12Parser2); + function Hour1to12Parser2() { + var _this; + (0, _classCallCheck2.default)(this, Hour1to12Parser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 70); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["H", "K", "k", "t", "T"]); + return _this; + } + (0, _createClass2.default)(Hour1to12Parser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "h": + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.hour12h, dateString); + case "ho": + return match2.ordinalNumber(dateString, { + unit: "hour" + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 12; + } + }, { + key: "set", + value: function set(date, _flags, value) { + var isPM = date.getUTCHours() >= 12; + if (isPM && value < 12) { + date.setUTCHours(value + 12, 0, 0, 0); + } else if (!isPM && value === 12) { + date.setUTCHours(0, 0, 0, 0); + } else { + date.setUTCHours(value, 0, 0, 0); + } + return date; + } + }]); + return Hour1to12Parser2; + }(_Parser2.Parser); + exports2.Hour1to12Parser = Hour1to12Parser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js +var require_Hour0to23Parser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.Hour0to23Parser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var Hour0to23Parser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(Hour0to23Parser2, _Parser3); + var _super = (0, _createSuper2.default)(Hour0to23Parser2); + function Hour0to23Parser2() { + var _this; + (0, _classCallCheck2.default)(this, Hour0to23Parser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 70); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["a", "b", "h", "K", "k", "t", "T"]); + return _this; + } + (0, _createClass2.default)(Hour0to23Parser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "H": + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.hour23h, dateString); + case "Ho": + return match2.ordinalNumber(dateString, { + unit: "hour" + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 23; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCHours(value, 0, 0, 0); + return date; + } + }]); + return Hour0to23Parser2; + }(_Parser2.Parser); + exports2.Hour0to23Parser = Hour0to23Parser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js +var require_Hour0To11Parser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.Hour0To11Parser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var Hour0To11Parser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(Hour0To11Parser2, _Parser3); + var _super = (0, _createSuper2.default)(Hour0To11Parser2); + function Hour0To11Parser2() { + var _this; + (0, _classCallCheck2.default)(this, Hour0To11Parser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 70); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["h", "H", "k", "t", "T"]); + return _this; + } + (0, _createClass2.default)(Hour0To11Parser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "K": + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.hour11h, dateString); + case "Ko": + return match2.ordinalNumber(dateString, { + unit: "hour" + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 11; + } + }, { + key: "set", + value: function set(date, _flags, value) { + var isPM = date.getUTCHours() >= 12; + if (isPM && value < 12) { + date.setUTCHours(value + 12, 0, 0, 0); + } else { + date.setUTCHours(value, 0, 0, 0); + } + return date; + } + }]); + return Hour0To11Parser2; + }(_Parser2.Parser); + exports2.Hour0To11Parser = Hour0To11Parser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js +var require_Hour1To24Parser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.Hour1To24Parser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var Hour1To24Parser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(Hour1To24Parser2, _Parser3); + var _super = (0, _createSuper2.default)(Hour1To24Parser2); + function Hour1To24Parser2() { + var _this; + (0, _classCallCheck2.default)(this, Hour1To24Parser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 70); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["a", "b", "h", "H", "K", "t", "T"]); + return _this; + } + (0, _createClass2.default)(Hour1To24Parser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "k": + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.hour24h, dateString); + case "ko": + return match2.ordinalNumber(dateString, { + unit: "hour" + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 24; + } + }, { + key: "set", + value: function set(date, _flags, value) { + var hours = value <= 24 ? value % 24 : value; + date.setUTCHours(hours, 0, 0, 0); + return date; + } + }]); + return Hour1To24Parser2; + }(_Parser2.Parser); + exports2.Hour1To24Parser = Hour1To24Parser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js +var require_MinuteParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.MinuteParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var MinuteParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(MinuteParser2, _Parser3); + var _super = (0, _createSuper2.default)(MinuteParser2); + function MinuteParser2() { + var _this; + (0, _classCallCheck2.default)(this, MinuteParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 60); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["t", "T"]); + return _this; + } + (0, _createClass2.default)(MinuteParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "m": + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.minute, dateString); + case "mo": + return match2.ordinalNumber(dateString, { + unit: "minute" + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 59; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMinutes(value, 0, 0); + return date; + } + }]); + return MinuteParser2; + }(_Parser2.Parser); + exports2.MinuteParser = MinuteParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/SecondParser.js +var require_SecondParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/SecondParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.SecondParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var SecondParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(SecondParser2, _Parser3); + var _super = (0, _createSuper2.default)(SecondParser2); + function SecondParser2() { + var _this; + (0, _classCallCheck2.default)(this, SecondParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 50); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["t", "T"]); + return _this; + } + (0, _createClass2.default)(SecondParser2, [{ + key: "parse", + value: function parse7(dateString, token, match2) { + switch (token) { + case "s": + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.second, dateString); + case "so": + return match2.ordinalNumber(dateString, { + unit: "second" + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 59; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCSeconds(value, 0); + return date; + } + }]); + return SecondParser2; + }(_Parser2.Parser); + exports2.SecondParser = SecondParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js +var require_FractionOfSecondParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.FractionOfSecondParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var FractionOfSecondParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(FractionOfSecondParser2, _Parser3); + var _super = (0, _createSuper2.default)(FractionOfSecondParser2); + function FractionOfSecondParser2() { + var _this; + (0, _classCallCheck2.default)(this, FractionOfSecondParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 30); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["t", "T"]); + return _this; + } + (0, _createClass2.default)(FractionOfSecondParser2, [{ + key: "parse", + value: function parse7(dateString, token) { + var valueCallback = function valueCallback2(value) { + return Math.floor(value * Math.pow(10, -token.length + 3)); + }; + return (0, _utils.mapValue)((0, _utils.parseNDigits)(token.length, dateString), valueCallback); + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMilliseconds(value); + return date; + } + }]); + return FractionOfSecondParser2; + }(_Parser2.Parser); + exports2.FractionOfSecondParser = FractionOfSecondParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js +var require_ISOTimezoneWithZParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.ISOTimezoneWithZParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var ISOTimezoneWithZParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(ISOTimezoneWithZParser2, _Parser3); + var _super = (0, _createSuper2.default)(ISOTimezoneWithZParser2); + function ISOTimezoneWithZParser2() { + var _this; + (0, _classCallCheck2.default)(this, ISOTimezoneWithZParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 10); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["t", "T", "x"]); + return _this; + } + (0, _createClass2.default)(ISOTimezoneWithZParser2, [{ + key: "parse", + value: function parse7(dateString, token) { + switch (token) { + case "X": + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basicOptionalMinutes, dateString); + case "XX": + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basic, dateString); + case "XXXX": + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basicOptionalSeconds, dateString); + case "XXXXX": + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.extendedOptionalSeconds, dateString); + case "XXX": + default: + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.extended, dateString); + } + } + }, { + key: "set", + value: function set(date, flags2, value) { + if (flags2.timestampIsSet) { + return date; + } + return new Date(date.getTime() - value); + } + }]); + return ISOTimezoneWithZParser2; + }(_Parser2.Parser); + exports2.ISOTimezoneWithZParser = ISOTimezoneWithZParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js +var require_ISOTimezoneParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.ISOTimezoneParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _constants = require_constants3(); + var _utils = require_utils5(); + var ISOTimezoneParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(ISOTimezoneParser2, _Parser3); + var _super = (0, _createSuper2.default)(ISOTimezoneParser2); + function ISOTimezoneParser2() { + var _this; + (0, _classCallCheck2.default)(this, ISOTimezoneParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 10); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ["t", "T", "X"]); + return _this; + } + (0, _createClass2.default)(ISOTimezoneParser2, [{ + key: "parse", + value: function parse7(dateString, token) { + switch (token) { + case "x": + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basicOptionalMinutes, dateString); + case "xx": + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basic, dateString); + case "xxxx": + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basicOptionalSeconds, dateString); + case "xxxxx": + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.extendedOptionalSeconds, dateString); + case "xxx": + default: + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.extended, dateString); + } + } + }, { + key: "set", + value: function set(date, flags2, value) { + if (flags2.timestampIsSet) { + return date; + } + return new Date(date.getTime() - value); + } + }]); + return ISOTimezoneParser2; + }(_Parser2.Parser); + exports2.ISOTimezoneParser = ISOTimezoneParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js +var require_TimestampSecondsParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.TimestampSecondsParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var TimestampSecondsParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(TimestampSecondsParser2, _Parser3); + var _super = (0, _createSuper2.default)(TimestampSecondsParser2); + function TimestampSecondsParser2() { + var _this; + (0, _classCallCheck2.default)(this, TimestampSecondsParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 40); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", "*"); + return _this; + } + (0, _createClass2.default)(TimestampSecondsParser2, [{ + key: "parse", + value: function parse7(dateString) { + return (0, _utils.parseAnyDigitsSigned)(dateString); + } + }, { + key: "set", + value: function set(_date, _flags, value) { + return [new Date(value * 1e3), { + timestampIsSet: true + }]; + } + }]); + return TimestampSecondsParser2; + }(_Parser2.Parser); + exports2.TimestampSecondsParser = TimestampSecondsParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js +var require_TimestampMillisecondsParser = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.TimestampMillisecondsParser = void 0; + var _classCallCheck2 = _interopRequireDefault(require_classCallCheck()); + var _createClass2 = _interopRequireDefault(require_createClass()); + var _assertThisInitialized2 = _interopRequireDefault(require_assertThisInitialized()); + var _inherits2 = _interopRequireDefault(require_inherits2()); + var _createSuper2 = _interopRequireDefault(require_createSuper()); + var _defineProperty2 = _interopRequireDefault(require_defineProperty()); + var _Parser2 = require_Parser(); + var _utils = require_utils5(); + var TimestampMillisecondsParser = /* @__PURE__ */ function(_Parser3) { + (0, _inherits2.default)(TimestampMillisecondsParser2, _Parser3); + var _super = (0, _createSuper2.default)(TimestampMillisecondsParser2); + function TimestampMillisecondsParser2() { + var _this; + (0, _classCallCheck2.default)(this, TimestampMillisecondsParser2); + for (var _len = arguments.length, args3 = new Array(_len), _key = 0; _key < _len; _key++) { + args3[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args3)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 20); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", "*"); + return _this; + } + (0, _createClass2.default)(TimestampMillisecondsParser2, [{ + key: "parse", + value: function parse7(dateString) { + return (0, _utils.parseAnyDigitsSigned)(dateString); + } + }, { + key: "set", + value: function set(_date, _flags, value) { + return [new Date(value), { + timestampIsSet: true + }]; + } + }]); + return TimestampMillisecondsParser2; + }(_Parser2.Parser); + exports2.TimestampMillisecondsParser = TimestampMillisecondsParser; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/index.js +var require_parsers = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/_lib/parsers/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.parsers = void 0; + var _EraParser = require_EraParser(); + var _YearParser = require_YearParser(); + var _LocalWeekYearParser = require_LocalWeekYearParser(); + var _ISOWeekYearParser = require_ISOWeekYearParser(); + var _ExtendedYearParser = require_ExtendedYearParser(); + var _QuarterParser = require_QuarterParser(); + var _StandAloneQuarterParser = require_StandAloneQuarterParser(); + var _MonthParser = require_MonthParser(); + var _StandAloneMonthParser = require_StandAloneMonthParser(); + var _LocalWeekParser = require_LocalWeekParser(); + var _ISOWeekParser = require_ISOWeekParser(); + var _DateParser = require_DateParser(); + var _DayOfYearParser = require_DayOfYearParser(); + var _DayParser = require_DayParser(); + var _LocalDayParser = require_LocalDayParser(); + var _StandAloneLocalDayParser = require_StandAloneLocalDayParser(); + var _ISODayParser = require_ISODayParser(); + var _AMPMParser = require_AMPMParser(); + var _AMPMMidnightParser = require_AMPMMidnightParser(); + var _DayPeriodParser = require_DayPeriodParser(); + var _Hour1to12Parser = require_Hour1to12Parser(); + var _Hour0to23Parser = require_Hour0to23Parser(); + var _Hour0To11Parser = require_Hour0To11Parser(); + var _Hour1To24Parser = require_Hour1To24Parser(); + var _MinuteParser = require_MinuteParser(); + var _SecondParser = require_SecondParser(); + var _FractionOfSecondParser = require_FractionOfSecondParser(); + var _ISOTimezoneWithZParser = require_ISOTimezoneWithZParser(); + var _ISOTimezoneParser = require_ISOTimezoneParser(); + var _TimestampSecondsParser = require_TimestampSecondsParser(); + var _TimestampMillisecondsParser = require_TimestampMillisecondsParser(); + var parsers = { + G: new _EraParser.EraParser(), + y: new _YearParser.YearParser(), + Y: new _LocalWeekYearParser.LocalWeekYearParser(), + R: new _ISOWeekYearParser.ISOWeekYearParser(), + u: new _ExtendedYearParser.ExtendedYearParser(), + Q: new _QuarterParser.QuarterParser(), + q: new _StandAloneQuarterParser.StandAloneQuarterParser(), + M: new _MonthParser.MonthParser(), + L: new _StandAloneMonthParser.StandAloneMonthParser(), + w: new _LocalWeekParser.LocalWeekParser(), + I: new _ISOWeekParser.ISOWeekParser(), + d: new _DateParser.DateParser(), + D: new _DayOfYearParser.DayOfYearParser(), + E: new _DayParser.DayParser(), + e: new _LocalDayParser.LocalDayParser(), + c: new _StandAloneLocalDayParser.StandAloneLocalDayParser(), + i: new _ISODayParser.ISODayParser(), + a: new _AMPMParser.AMPMParser(), + b: new _AMPMMidnightParser.AMPMMidnightParser(), + B: new _DayPeriodParser.DayPeriodParser(), + h: new _Hour1to12Parser.Hour1to12Parser(), + H: new _Hour0to23Parser.Hour0to23Parser(), + K: new _Hour0To11Parser.Hour0To11Parser(), + k: new _Hour1To24Parser.Hour1To24Parser(), + m: new _MinuteParser.MinuteParser(), + s: new _SecondParser.SecondParser(), + S: new _FractionOfSecondParser.FractionOfSecondParser(), + X: new _ISOTimezoneWithZParser.ISOTimezoneWithZParser(), + x: new _ISOTimezoneParser.ISOTimezoneParser(), + t: new _TimestampSecondsParser.TimestampSecondsParser(), + T: new _TimestampMillisecondsParser.TimestampMillisecondsParser() + }; + exports2.parsers = parsers; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/index.js +var require_parse3 = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parse/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = parse7; + var _typeof2 = _interopRequireDefault(require_typeof()); + var _createForOfIteratorHelper2 = _interopRequireDefault(require_createForOfIteratorHelper()); + var _index = _interopRequireDefault(require_defaultLocale()); + var _index2 = _interopRequireDefault(require_subMilliseconds()); + var _index3 = _interopRequireDefault(require_toDate()); + var _index4 = _interopRequireDefault(require_assign()); + var _index5 = _interopRequireDefault(require_longFormatters()); + var _index6 = _interopRequireDefault(require_getTimezoneOffsetInMilliseconds()); + var _index7 = require_protectedTokens(); + var _index8 = _interopRequireDefault(require_toInteger()); + var _index9 = _interopRequireDefault(require_requiredArgs()); + var _Setter = require_Setter(); + var _index10 = require_parsers(); + var _index11 = require_defaultOptions(); + var formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g; + var longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g; + var escapedStringRegExp = /^'([^]*?)'?$/; + var doubleQuoteRegExp = /''/g; + var notWhitespaceRegExp = /\S/; + var unescapedLatinCharacterRegExp = /[a-zA-Z]/; + function parse7(dirtyDateString, dirtyFormatString, dirtyReferenceDate, options2) { + var _ref, _options$locale, _ref2, _ref3, _ref4, _options$firstWeekCon, _options$locale2, _options$locale2$opti, _defaultOptions$local, _defaultOptions$local2, _ref5, _ref6, _ref7, _options$weekStartsOn, _options$locale3, _options$locale3$opti, _defaultOptions$local3, _defaultOptions$local4; + (0, _index9.default)(3, arguments); + var dateString = String(dirtyDateString); + var formatString = String(dirtyFormatString); + var defaultOptions = (0, _index11.getDefaultOptions)(); + var locale = (_ref = (_options$locale = options2 === null || options2 === void 0 ? void 0 : options2.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions.locale) !== null && _ref !== void 0 ? _ref : _index.default; + if (!locale.match) { + throw new RangeError("locale must contain match property"); + } + var firstWeekContainsDate = (0, _index8.default)((_ref2 = (_ref3 = (_ref4 = (_options$firstWeekCon = options2 === null || options2 === void 0 ? void 0 : options2.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options2 === null || options2 === void 0 ? void 0 : (_options$locale2 = options2.locale) === null || _options$locale2 === void 0 ? void 0 : (_options$locale2$opti = _options$locale2.options) === null || _options$locale2$opti === void 0 ? void 0 : _options$locale2$opti.firstWeekContainsDate) !== null && _ref4 !== void 0 ? _ref4 : defaultOptions.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : 1); + if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) { + throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively"); + } + var weekStartsOn = (0, _index8.default)((_ref5 = (_ref6 = (_ref7 = (_options$weekStartsOn = options2 === null || options2 === void 0 ? void 0 : options2.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options2 === null || options2 === void 0 ? void 0 : (_options$locale3 = options2.locale) === null || _options$locale3 === void 0 ? void 0 : (_options$locale3$opti = _options$locale3.options) === null || _options$locale3$opti === void 0 ? void 0 : _options$locale3$opti.weekStartsOn) !== null && _ref7 !== void 0 ? _ref7 : defaultOptions.weekStartsOn) !== null && _ref6 !== void 0 ? _ref6 : (_defaultOptions$local3 = defaultOptions.locale) === null || _defaultOptions$local3 === void 0 ? void 0 : (_defaultOptions$local4 = _defaultOptions$local3.options) === null || _defaultOptions$local4 === void 0 ? void 0 : _defaultOptions$local4.weekStartsOn) !== null && _ref5 !== void 0 ? _ref5 : 0); + if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) { + throw new RangeError("weekStartsOn must be between 0 and 6 inclusively"); + } + if (formatString === "") { + if (dateString === "") { + return (0, _index3.default)(dirtyReferenceDate); + } else { + return /* @__PURE__ */ new Date(NaN); + } + } + var subFnOptions = { + firstWeekContainsDate, + weekStartsOn, + locale + }; + var setters = [new _Setter.DateToSystemTimezoneSetter()]; + var tokens = formatString.match(longFormattingTokensRegExp).map(function(substring) { + var firstCharacter = substring[0]; + if (firstCharacter in _index5.default) { + var longFormatter = _index5.default[firstCharacter]; + return longFormatter(substring, locale.formatLong); + } + return substring; + }).join("").match(formattingTokensRegExp); + var usedTokens = []; + var _iterator = (0, _createForOfIteratorHelper2.default)(tokens), _step; + try { + var _loop = function _loop2() { + var token = _step.value; + if (!(options2 !== null && options2 !== void 0 && options2.useAdditionalWeekYearTokens) && (0, _index7.isProtectedWeekYearToken)(token)) { + (0, _index7.throwProtectedError)(token, formatString, dirtyDateString); + } + if (!(options2 !== null && options2 !== void 0 && options2.useAdditionalDayOfYearTokens) && (0, _index7.isProtectedDayOfYearToken)(token)) { + (0, _index7.throwProtectedError)(token, formatString, dirtyDateString); + } + var firstCharacter = token[0]; + var parser2 = _index10.parsers[firstCharacter]; + if (parser2) { + var incompatibleTokens = parser2.incompatibleTokens; + if (Array.isArray(incompatibleTokens)) { + var incompatibleToken = usedTokens.find(function(usedToken) { + return incompatibleTokens.includes(usedToken.token) || usedToken.token === firstCharacter; + }); + if (incompatibleToken) { + throw new RangeError("The format string mustn't contain `".concat(incompatibleToken.fullToken, "` and `").concat(token, "` at the same time")); + } + } else if (parser2.incompatibleTokens === "*" && usedTokens.length > 0) { + throw new RangeError("The format string mustn't contain `".concat(token, "` and any other token at the same time")); + } + usedTokens.push({ + token: firstCharacter, + fullToken: token + }); + var parseResult = parser2.run(dateString, token, locale.match, subFnOptions); + if (!parseResult) { + return { + v: /* @__PURE__ */ new Date(NaN) + }; + } + setters.push(parseResult.setter); + dateString = parseResult.rest; + } else { + if (firstCharacter.match(unescapedLatinCharacterRegExp)) { + throw new RangeError("Format string contains an unescaped latin alphabet character `" + firstCharacter + "`"); + } + if (token === "''") { + token = "'"; + } else if (firstCharacter === "'") { + token = cleanEscapedString(token); + } + if (dateString.indexOf(token) === 0) { + dateString = dateString.slice(token.length); + } else { + return { + v: /* @__PURE__ */ new Date(NaN) + }; + } + } + }; + for (_iterator.s(); !(_step = _iterator.n()).done; ) { + var _ret = _loop(); + if ((0, _typeof2.default)(_ret) === "object") + return _ret.v; + } + } catch (err2) { + _iterator.e(err2); + } finally { + _iterator.f(); + } + if (dateString.length > 0 && notWhitespaceRegExp.test(dateString)) { + return /* @__PURE__ */ new Date(NaN); + } + var uniquePrioritySetters = setters.map(function(setter2) { + return setter2.priority; + }).sort(function(a, b) { + return b - a; + }).filter(function(priority, index, array) { + return array.indexOf(priority) === index; + }).map(function(priority) { + return setters.filter(function(setter2) { + return setter2.priority === priority; + }).sort(function(a, b) { + return b.subPriority - a.subPriority; + }); + }).map(function(setterArray) { + return setterArray[0]; + }); + var date = (0, _index3.default)(dirtyReferenceDate); + if (isNaN(date.getTime())) { + return /* @__PURE__ */ new Date(NaN); + } + var utcDate = (0, _index2.default)(date, (0, _index6.default)(date)); + var flags2 = {}; + var _iterator2 = (0, _createForOfIteratorHelper2.default)(uniquePrioritySetters), _step2; + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done; ) { + var setter = _step2.value; + if (!setter.validate(utcDate, subFnOptions)) { + return /* @__PURE__ */ new Date(NaN); + } + var result = setter.set(utcDate, flags2, subFnOptions); + if (Array.isArray(result)) { + utcDate = result[0]; + (0, _index4.default)(flags2, result[1]); + } else { + utcDate = result; + } + } + } catch (err2) { + _iterator2.e(err2); + } finally { + _iterator2.f(); + } + return utcDate; + } + function cleanEscapedString(input) { + return input.match(escapedStringRegExp)[1].replace(doubleQuoteRegExp, "'"); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isMatch/index.js +var require_isMatch = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isMatch/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isMatch; + var _index = _interopRequireDefault(require_parse3()); + var _index2 = _interopRequireDefault(require_isValid()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function isMatch(dateString, formatString, options2) { + (0, _index3.default)(2, arguments); + return (0, _index2.default)((0, _index.default)(dateString, formatString, /* @__PURE__ */ new Date(), options2)); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isMonday/index.js +var require_isMonday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isMonday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isMonday; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isMonday(date) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(date).getDay() === 1; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isPast/index.js +var require_isPast = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isPast/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isPast; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isPast(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate).getTime() < Date.now(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfHour/index.js +var require_startOfHour = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfHour/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfHour; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function startOfHour(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + date.setMinutes(0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameHour/index.js +var require_isSameHour = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameHour/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSameHour; + var _index = _interopRequireDefault(require_startOfHour()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSameHour(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeftStartOfHour = (0, _index.default)(dirtyDateLeft); + var dateRightStartOfHour = (0, _index.default)(dirtyDateRight); + return dateLeftStartOfHour.getTime() === dateRightStartOfHour.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameWeek/index.js +var require_isSameWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSameWeek; + var _index = _interopRequireDefault(require_startOfWeek()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSameWeek(dirtyDateLeft, dirtyDateRight, options2) { + (0, _index2.default)(2, arguments); + var dateLeftStartOfWeek = (0, _index.default)(dirtyDateLeft, options2); + var dateRightStartOfWeek = (0, _index.default)(dirtyDateRight, options2); + return dateLeftStartOfWeek.getTime() === dateRightStartOfWeek.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameISOWeek/index.js +var require_isSameISOWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameISOWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSameISOWeek; + var _index = _interopRequireDefault(require_isSameWeek()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSameISOWeek(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + return (0, _index.default)(dirtyDateLeft, dirtyDateRight, { + weekStartsOn: 1 + }); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameISOWeekYear/index.js +var require_isSameISOWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameISOWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSameISOWeekYear; + var _index = _interopRequireDefault(require_startOfISOWeekYear()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSameISOWeekYear(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeftStartOfYear = (0, _index.default)(dirtyDateLeft); + var dateRightStartOfYear = (0, _index.default)(dirtyDateRight); + return dateLeftStartOfYear.getTime() === dateRightStartOfYear.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameMinute/index.js +var require_isSameMinute = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameMinute/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSameMinute; + var _index = _interopRequireDefault(require_startOfMinute()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSameMinute(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeftStartOfMinute = (0, _index.default)(dirtyDateLeft); + var dateRightStartOfMinute = (0, _index.default)(dirtyDateRight); + return dateLeftStartOfMinute.getTime() === dateRightStartOfMinute.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameMonth/index.js +var require_isSameMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSameMonth; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSameMonth(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyDateLeft); + var dateRight = (0, _index.default)(dirtyDateRight); + return dateLeft.getFullYear() === dateRight.getFullYear() && dateLeft.getMonth() === dateRight.getMonth(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameQuarter/index.js +var require_isSameQuarter = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameQuarter/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSameQuarter; + var _index = _interopRequireDefault(require_startOfQuarter()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSameQuarter(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeftStartOfQuarter = (0, _index.default)(dirtyDateLeft); + var dateRightStartOfQuarter = (0, _index.default)(dirtyDateRight); + return dateLeftStartOfQuarter.getTime() === dateRightStartOfQuarter.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfSecond/index.js +var require_startOfSecond = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfSecond/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfSecond; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function startOfSecond(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + date.setMilliseconds(0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameSecond/index.js +var require_isSameSecond = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameSecond/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSameSecond; + var _index = _interopRequireDefault(require_startOfSecond()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSameSecond(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeftStartOfSecond = (0, _index.default)(dirtyDateLeft); + var dateRightStartOfSecond = (0, _index.default)(dirtyDateRight); + return dateLeftStartOfSecond.getTime() === dateRightStartOfSecond.getTime(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameYear/index.js +var require_isSameYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isSameYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isSameYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isSameYear(dirtyDateLeft, dirtyDateRight) { + (0, _index2.default)(2, arguments); + var dateLeft = (0, _index.default)(dirtyDateLeft); + var dateRight = (0, _index.default)(dirtyDateRight); + return dateLeft.getFullYear() === dateRight.getFullYear(); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisHour/index.js +var require_isThisHour = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisHour/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isThisHour; + var _index = _interopRequireDefault(require_isSameHour()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isThisHour(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(Date.now(), dirtyDate); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisISOWeek/index.js +var require_isThisISOWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisISOWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isThisISOWeek; + var _index = _interopRequireDefault(require_isSameISOWeek()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isThisISOWeek(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate, Date.now()); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisMinute/index.js +var require_isThisMinute = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisMinute/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isThisMinute; + var _index = _interopRequireDefault(require_isSameMinute()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isThisMinute(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(Date.now(), dirtyDate); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisMonth/index.js +var require_isThisMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isThisMonth; + var _index = _interopRequireDefault(require_isSameMonth()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isThisMonth(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(Date.now(), dirtyDate); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisQuarter/index.js +var require_isThisQuarter = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisQuarter/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isThisQuarter; + var _index = _interopRequireDefault(require_isSameQuarter()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isThisQuarter(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(Date.now(), dirtyDate); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisSecond/index.js +var require_isThisSecond = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisSecond/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isThisSecond; + var _index = _interopRequireDefault(require_isSameSecond()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isThisSecond(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(Date.now(), dirtyDate); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisWeek/index.js +var require_isThisWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isThisWeek; + var _index = _interopRequireDefault(require_isSameWeek()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isThisWeek(dirtyDate, options2) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate, Date.now(), options2); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisYear/index.js +var require_isThisYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThisYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isThisYear; + var _index = _interopRequireDefault(require_isSameYear()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isThisYear(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate, Date.now()); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThursday/index.js +var require_isThursday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isThursday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isThursday; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isThursday(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate).getDay() === 4; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isToday/index.js +var require_isToday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isToday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isToday; + var _index = _interopRequireDefault(require_isSameDay()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isToday(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate, Date.now()); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isTomorrow/index.js +var require_isTomorrow = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isTomorrow/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isTomorrow; + var _index = _interopRequireDefault(require_addDays()); + var _index2 = _interopRequireDefault(require_isSameDay()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function isTomorrow(dirtyDate) { + (0, _index3.default)(1, arguments); + return (0, _index2.default)(dirtyDate, (0, _index.default)(Date.now(), 1)); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isTuesday/index.js +var require_isTuesday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isTuesday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isTuesday; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isTuesday(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate).getDay() === 2; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isWednesday/index.js +var require_isWednesday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isWednesday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isWednesday; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isWednesday(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate).getDay() === 3; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isWithinInterval/index.js +var require_isWithinInterval = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isWithinInterval/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isWithinInterval; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function isWithinInterval(dirtyDate, interval) { + (0, _index2.default)(2, arguments); + var time = (0, _index.default)(dirtyDate).getTime(); + var startTime = (0, _index.default)(interval.start).getTime(); + var endTime = (0, _index.default)(interval.end).getTime(); + if (!(startTime <= endTime)) { + throw new RangeError("Invalid interval"); + } + return time >= startTime && time <= endTime; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subDays/index.js +var require_subDays = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subDays/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subDays; + var _index = _interopRequireDefault(require_addDays()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_toInteger()); + function subDays(dirtyDate, dirtyAmount) { + (0, _index2.default)(2, arguments); + var amount = (0, _index3.default)(dirtyAmount); + return (0, _index.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isYesterday/index.js +var require_isYesterday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/isYesterday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = isYesterday; + var _index = _interopRequireDefault(require_isSameDay()); + var _index2 = _interopRequireDefault(require_subDays()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function isYesterday(dirtyDate) { + (0, _index3.default)(1, arguments); + return (0, _index.default)(dirtyDate, (0, _index2.default)(Date.now(), 1)); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfDecade/index.js +var require_lastDayOfDecade = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfDecade/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = lastDayOfDecade; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function lastDayOfDecade(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getFullYear(); + var decade = 9 + Math.floor(year / 10) * 10; + date.setFullYear(decade + 1, 0, 0); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfWeek/index.js +var require_lastDayOfWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = lastDayOfWeek; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_toInteger()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var _index4 = require_defaultOptions(); + function lastDayOfWeek(dirtyDate, options2) { + var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index3.default)(1, arguments); + var defaultOptions = (0, _index4.getDefaultOptions)(); + var weekStartsOn = (0, _index2.default)((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options2 === null || options2 === void 0 ? void 0 : options2.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); + if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) { + throw new RangeError("weekStartsOn must be between 0 and 6"); + } + var date = (0, _index.default)(dirtyDate); + var day = date.getDay(); + var diff = (day < weekStartsOn ? -7 : 0) + 6 - (day - weekStartsOn); + date.setHours(0, 0, 0, 0); + date.setDate(date.getDate() + diff); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfISOWeek/index.js +var require_lastDayOfISOWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfISOWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = lastDayOfISOWeek; + var _index = _interopRequireDefault(require_lastDayOfWeek()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function lastDayOfISOWeek(dirtyDate) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(dirtyDate, { + weekStartsOn: 1 + }); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfISOWeekYear/index.js +var require_lastDayOfISOWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfISOWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = lastDayOfISOWeekYear; + var _index = _interopRequireDefault(require_getISOWeekYear()); + var _index2 = _interopRequireDefault(require_startOfISOWeek()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function lastDayOfISOWeekYear(dirtyDate) { + (0, _index3.default)(1, arguments); + var year = (0, _index.default)(dirtyDate); + var fourthOfJanuary = /* @__PURE__ */ new Date(0); + fourthOfJanuary.setFullYear(year + 1, 0, 4); + fourthOfJanuary.setHours(0, 0, 0, 0); + var date = (0, _index2.default)(fourthOfJanuary); + date.setDate(date.getDate() - 1); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfQuarter/index.js +var require_lastDayOfQuarter = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfQuarter/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = lastDayOfQuarter; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function lastDayOfQuarter(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var currentMonth = date.getMonth(); + var month = currentMonth - currentMonth % 3 + 3; + date.setMonth(month, 0); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfYear/index.js +var require_lastDayOfYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lastDayOfYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = lastDayOfYear; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function lastDayOfYear(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getFullYear(); + date.setFullYear(year + 1, 0, 0); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lightFormat/index.js +var require_lightFormat = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/lightFormat/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = lightFormat; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_lightFormatters()); + var _index3 = _interopRequireDefault(require_getTimezoneOffsetInMilliseconds()); + var _index4 = _interopRequireDefault(require_isValid()); + var _index5 = _interopRequireDefault(require_subMilliseconds()); + var _index6 = _interopRequireDefault(require_requiredArgs()); + var formattingTokensRegExp = /(\w)\1*|''|'(''|[^'])+('|$)|./g; + var escapedStringRegExp = /^'([^]*?)'?$/; + var doubleQuoteRegExp = /''/g; + var unescapedLatinCharacterRegExp = /[a-zA-Z]/; + function lightFormat(dirtyDate, formatStr) { + (0, _index6.default)(2, arguments); + var originalDate = (0, _index.default)(dirtyDate); + if (!(0, _index4.default)(originalDate)) { + throw new RangeError("Invalid time value"); + } + var timezoneOffset = (0, _index3.default)(originalDate); + var utcDate = (0, _index5.default)(originalDate, timezoneOffset); + var tokens = formatStr.match(formattingTokensRegExp); + if (!tokens) + return ""; + var result = tokens.map(function(substring) { + if (substring === "''") { + return "'"; + } + var firstCharacter = substring[0]; + if (firstCharacter === "'") { + return cleanEscapedString(substring); + } + var formatter = _index2.default[firstCharacter]; + if (formatter) { + return formatter(utcDate, substring); + } + if (firstCharacter.match(unescapedLatinCharacterRegExp)) { + throw new RangeError("Format string contains an unescaped latin alphabet character `" + firstCharacter + "`"); + } + return substring; + }).join(""); + return result; + } + function cleanEscapedString(input) { + var matches = input.match(escapedStringRegExp); + if (!matches) { + return input; + } + return matches[1].replace(doubleQuoteRegExp, "'"); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/milliseconds/index.js +var require_milliseconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/milliseconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = milliseconds; + var _index = _interopRequireDefault(require_requiredArgs()); + var daysInYear = 365.2425; + function milliseconds(_ref) { + var years = _ref.years, months = _ref.months, weeks = _ref.weeks, days = _ref.days, hours = _ref.hours, minutes = _ref.minutes, seconds = _ref.seconds; + (0, _index.default)(1, arguments); + var totalDays = 0; + if (years) + totalDays += years * daysInYear; + if (months) + totalDays += months * (daysInYear / 12); + if (weeks) + totalDays += weeks * 7; + if (days) + totalDays += days; + var totalSeconds = totalDays * 24 * 60 * 60; + if (hours) + totalSeconds += hours * 60 * 60; + if (minutes) + totalSeconds += minutes * 60; + if (seconds) + totalSeconds += seconds; + return Math.round(totalSeconds * 1e3); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/millisecondsToHours/index.js +var require_millisecondsToHours = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/millisecondsToHours/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = millisecondsToHours; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function millisecondsToHours(milliseconds) { + (0, _index.default)(1, arguments); + var hours = milliseconds / _index2.millisecondsInHour; + return Math.floor(hours); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/millisecondsToMinutes/index.js +var require_millisecondsToMinutes = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/millisecondsToMinutes/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = millisecondsToMinutes; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function millisecondsToMinutes(milliseconds) { + (0, _index.default)(1, arguments); + var minutes = milliseconds / _index2.millisecondsInMinute; + return Math.floor(minutes); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/millisecondsToSeconds/index.js +var require_millisecondsToSeconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/millisecondsToSeconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = millisecondsToSeconds; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function millisecondsToSeconds(milliseconds) { + (0, _index.default)(1, arguments); + var seconds = milliseconds / _index2.millisecondsInSecond; + return Math.floor(seconds); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/minutesToHours/index.js +var require_minutesToHours = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/minutesToHours/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = minutesToHours; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function minutesToHours(minutes) { + (0, _index.default)(1, arguments); + var hours = minutes / _index2.minutesInHour; + return Math.floor(hours); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/minutesToMilliseconds/index.js +var require_minutesToMilliseconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/minutesToMilliseconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = minutesToMilliseconds; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function minutesToMilliseconds(minutes) { + (0, _index.default)(1, arguments); + return Math.floor(minutes * _index2.millisecondsInMinute); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/minutesToSeconds/index.js +var require_minutesToSeconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/minutesToSeconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = minutesToSeconds; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function minutesToSeconds(minutes) { + (0, _index.default)(1, arguments); + return Math.floor(minutes * _index2.secondsInMinute); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/monthsToQuarters/index.js +var require_monthsToQuarters = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/monthsToQuarters/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = monthsToQuarters; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function monthsToQuarters(months) { + (0, _index.default)(1, arguments); + var quarters = months / _index2.monthsInQuarter; + return Math.floor(quarters); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/monthsToYears/index.js +var require_monthsToYears = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/monthsToYears/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = monthsToYears; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function monthsToYears(months) { + (0, _index.default)(1, arguments); + var years = months / _index2.monthsInYear; + return Math.floor(years); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextDay/index.js +var require_nextDay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextDay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = nextDay; + var _index = _interopRequireDefault(require_addDays()); + var _index2 = _interopRequireDefault(require_getDay()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function nextDay(date, day) { + (0, _index3.default)(2, arguments); + var delta = day - (0, _index2.default)(date); + if (delta <= 0) + delta += 7; + return (0, _index.default)(date, delta); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextFriday/index.js +var require_nextFriday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextFriday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = nextFriday; + var _index = _interopRequireDefault(require_nextDay()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function nextFriday(date) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(date, 5); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextMonday/index.js +var require_nextMonday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextMonday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = nextMonday; + var _index = _interopRequireDefault(require_nextDay()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function nextMonday(date) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(date, 1); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextSaturday/index.js +var require_nextSaturday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextSaturday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = nextSaturday; + var _index = _interopRequireDefault(require_nextDay()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function nextSaturday(date) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(date, 6); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextSunday/index.js +var require_nextSunday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextSunday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = nextSunday; + var _index = _interopRequireDefault(require_nextDay()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function nextSunday(date) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(date, 0); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextThursday/index.js +var require_nextThursday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextThursday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = nextThursday; + var _index = _interopRequireDefault(require_nextDay()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function nextThursday(date) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(date, 4); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextTuesday/index.js +var require_nextTuesday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextTuesday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = nextTuesday; + var _index = _interopRequireDefault(require_nextDay()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function nextTuesday(date) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(date, 2); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextWednesday/index.js +var require_nextWednesday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/nextWednesday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = nextWednesday; + var _index = _interopRequireDefault(require_nextDay()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function nextWednesday(date) { + (0, _index2.default)(1, arguments); + return (0, _index.default)(date, 3); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parseISO/index.js +var require_parseISO = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parseISO/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = parseISO; + var _index = require_constants2(); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_toInteger()); + function parseISO(argument, options2) { + var _options$additionalDi; + (0, _index2.default)(1, arguments); + var additionalDigits = (0, _index3.default)((_options$additionalDi = options2 === null || options2 === void 0 ? void 0 : options2.additionalDigits) !== null && _options$additionalDi !== void 0 ? _options$additionalDi : 2); + if (additionalDigits !== 2 && additionalDigits !== 1 && additionalDigits !== 0) { + throw new RangeError("additionalDigits must be 0, 1 or 2"); + } + if (!(typeof argument === "string" || Object.prototype.toString.call(argument) === "[object String]")) { + return /* @__PURE__ */ new Date(NaN); + } + var dateStrings = splitDateString(argument); + var date; + if (dateStrings.date) { + var parseYearResult = parseYear(dateStrings.date, additionalDigits); + date = parseDate(parseYearResult.restDateString, parseYearResult.year); + } + if (!date || isNaN(date.getTime())) { + return /* @__PURE__ */ new Date(NaN); + } + var timestamp = date.getTime(); + var time = 0; + var offset; + if (dateStrings.time) { + time = parseTime(dateStrings.time); + if (isNaN(time)) { + return /* @__PURE__ */ new Date(NaN); + } + } + if (dateStrings.timezone) { + offset = parseTimezone(dateStrings.timezone); + if (isNaN(offset)) { + return /* @__PURE__ */ new Date(NaN); + } + } else { + var dirtyDate = new Date(timestamp + time); + var result = /* @__PURE__ */ new Date(0); + result.setFullYear(dirtyDate.getUTCFullYear(), dirtyDate.getUTCMonth(), dirtyDate.getUTCDate()); + result.setHours(dirtyDate.getUTCHours(), dirtyDate.getUTCMinutes(), dirtyDate.getUTCSeconds(), dirtyDate.getUTCMilliseconds()); + return result; + } + return new Date(timestamp + time + offset); + } + var patterns = { + dateTimeDelimiter: /[T ]/, + timeZoneDelimiter: /[Z ]/i, + timezone: /([Z+-].*)$/ + }; + var dateRegex = /^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/; + var timeRegex = /^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/; + var timezoneRegex = /^([+-])(\d{2})(?::?(\d{2}))?$/; + function splitDateString(dateString) { + var dateStrings = {}; + var array = dateString.split(patterns.dateTimeDelimiter); + var timeString; + if (array.length > 2) { + return dateStrings; + } + if (/:/.test(array[0])) { + timeString = array[0]; + } else { + dateStrings.date = array[0]; + timeString = array[1]; + if (patterns.timeZoneDelimiter.test(dateStrings.date)) { + dateStrings.date = dateString.split(patterns.timeZoneDelimiter)[0]; + timeString = dateString.substr(dateStrings.date.length, dateString.length); + } + } + if (timeString) { + var token = patterns.timezone.exec(timeString); + if (token) { + dateStrings.time = timeString.replace(token[1], ""); + dateStrings.timezone = token[1]; + } else { + dateStrings.time = timeString; + } + } + return dateStrings; + } + function parseYear(dateString, additionalDigits) { + var regex = new RegExp("^(?:(\\d{4}|[+-]\\d{" + (4 + additionalDigits) + "})|(\\d{2}|[+-]\\d{" + (2 + additionalDigits) + "})$)"); + var captures = dateString.match(regex); + if (!captures) + return { + year: NaN, + restDateString: "" + }; + var year = captures[1] ? parseInt(captures[1]) : null; + var century = captures[2] ? parseInt(captures[2]) : null; + return { + year: century === null ? year : century * 100, + restDateString: dateString.slice((captures[1] || captures[2]).length) + }; + } + function parseDate(dateString, year) { + if (year === null) + return /* @__PURE__ */ new Date(NaN); + var captures = dateString.match(dateRegex); + if (!captures) + return /* @__PURE__ */ new Date(NaN); + var isWeekDate = !!captures[4]; + var dayOfYear = parseDateUnit(captures[1]); + var month = parseDateUnit(captures[2]) - 1; + var day = parseDateUnit(captures[3]); + var week = parseDateUnit(captures[4]); + var dayOfWeek = parseDateUnit(captures[5]) - 1; + if (isWeekDate) { + if (!validateWeekDate(year, week, dayOfWeek)) { + return /* @__PURE__ */ new Date(NaN); + } + return dayOfISOWeekYear(year, week, dayOfWeek); + } else { + var date = /* @__PURE__ */ new Date(0); + if (!validateDate(year, month, day) || !validateDayOfYearDate(year, dayOfYear)) { + return /* @__PURE__ */ new Date(NaN); + } + date.setUTCFullYear(year, month, Math.max(dayOfYear, day)); + return date; + } + } + function parseDateUnit(value) { + return value ? parseInt(value) : 1; + } + function parseTime(timeString) { + var captures = timeString.match(timeRegex); + if (!captures) + return NaN; + var hours = parseTimeUnit(captures[1]); + var minutes = parseTimeUnit(captures[2]); + var seconds = parseTimeUnit(captures[3]); + if (!validateTime(hours, minutes, seconds)) { + return NaN; + } + return hours * _index.millisecondsInHour + minutes * _index.millisecondsInMinute + seconds * 1e3; + } + function parseTimeUnit(value) { + return value && parseFloat(value.replace(",", ".")) || 0; + } + function parseTimezone(timezoneString) { + if (timezoneString === "Z") + return 0; + var captures = timezoneString.match(timezoneRegex); + if (!captures) + return 0; + var sign = captures[1] === "+" ? -1 : 1; + var hours = parseInt(captures[2]); + var minutes = captures[3] && parseInt(captures[3]) || 0; + if (!validateTimezone(hours, minutes)) { + return NaN; + } + return sign * (hours * _index.millisecondsInHour + minutes * _index.millisecondsInMinute); + } + function dayOfISOWeekYear(isoWeekYear, week, day) { + var date = /* @__PURE__ */ new Date(0); + date.setUTCFullYear(isoWeekYear, 0, 4); + var fourthOfJanuaryDay = date.getUTCDay() || 7; + var diff = (week - 1) * 7 + day + 1 - fourthOfJanuaryDay; + date.setUTCDate(date.getUTCDate() + diff); + return date; + } + var daysInMonths = [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + function isLeapYearIndex(year) { + return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0; + } + function validateDate(year, month, date) { + return month >= 0 && month <= 11 && date >= 1 && date <= (daysInMonths[month] || (isLeapYearIndex(year) ? 29 : 28)); + } + function validateDayOfYearDate(year, dayOfYear) { + return dayOfYear >= 1 && dayOfYear <= (isLeapYearIndex(year) ? 366 : 365); + } + function validateWeekDate(_year, week, day) { + return week >= 1 && week <= 53 && day >= 0 && day <= 6; + } + function validateTime(hours, minutes, seconds) { + if (hours === 24) { + return minutes === 0 && seconds === 0; + } + return seconds >= 0 && seconds < 60 && minutes >= 0 && minutes < 60 && hours >= 0 && hours < 25; + } + function validateTimezone(_hours, minutes) { + return minutes >= 0 && minutes <= 59; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parseJSON/index.js +var require_parseJSON = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/parseJSON/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = parseJSON2; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function parseJSON2(argument) { + (0, _index2.default)(1, arguments); + if (typeof argument === "string") { + var parts = argument.match(/(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2}):(\d{2})(?:\.(\d{0,7}))?(?:Z|(.)(\d{2}):?(\d{2})?)?/); + if (parts) { + return new Date(Date.UTC(+parts[1], +parts[2] - 1, +parts[3], +parts[4] - (+parts[9] || 0) * (parts[8] == "-" ? -1 : 1), +parts[5] - (+parts[10] || 0) * (parts[8] == "-" ? -1 : 1), +parts[6], +((parts[7] || "0") + "00").substring(0, 3))); + } + return /* @__PURE__ */ new Date(NaN); + } + return (0, _index.default)(argument); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousDay/index.js +var require_previousDay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousDay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = previousDay; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = _interopRequireDefault(require_getDay()); + var _index3 = _interopRequireDefault(require_subDays()); + function previousDay(date, day) { + (0, _index.default)(2, arguments); + var delta = (0, _index2.default)(date) - day; + if (delta <= 0) + delta += 7; + return (0, _index3.default)(date, delta); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousFriday/index.js +var require_previousFriday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousFriday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = previousFriday; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = _interopRequireDefault(require_previousDay()); + function previousFriday(date) { + (0, _index.default)(1, arguments); + return (0, _index2.default)(date, 5); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousMonday/index.js +var require_previousMonday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousMonday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = previousMonday; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = _interopRequireDefault(require_previousDay()); + function previousMonday(date) { + (0, _index.default)(1, arguments); + return (0, _index2.default)(date, 1); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousSaturday/index.js +var require_previousSaturday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousSaturday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = previousSaturday; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = _interopRequireDefault(require_previousDay()); + function previousSaturday(date) { + (0, _index.default)(1, arguments); + return (0, _index2.default)(date, 6); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousSunday/index.js +var require_previousSunday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousSunday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = previousSunday; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = _interopRequireDefault(require_previousDay()); + function previousSunday(date) { + (0, _index.default)(1, arguments); + return (0, _index2.default)(date, 0); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousThursday/index.js +var require_previousThursday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousThursday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = previousThursday; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = _interopRequireDefault(require_previousDay()); + function previousThursday(date) { + (0, _index.default)(1, arguments); + return (0, _index2.default)(date, 4); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousTuesday/index.js +var require_previousTuesday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousTuesday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = previousTuesday; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = _interopRequireDefault(require_previousDay()); + function previousTuesday(date) { + (0, _index.default)(1, arguments); + return (0, _index2.default)(date, 2); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousWednesday/index.js +var require_previousWednesday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/previousWednesday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = previousWednesday; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = _interopRequireDefault(require_previousDay()); + function previousWednesday(date) { + (0, _index.default)(1, arguments); + return (0, _index2.default)(date, 3); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/quartersToMonths/index.js +var require_quartersToMonths = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/quartersToMonths/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = quartersToMonths; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function quartersToMonths(quarters) { + (0, _index.default)(1, arguments); + return Math.floor(quarters * _index2.monthsInQuarter); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/quartersToYears/index.js +var require_quartersToYears = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/quartersToYears/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = quartersToYears; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function quartersToYears(quarters) { + (0, _index.default)(1, arguments); + var years = quarters / _index2.quartersInYear; + return Math.floor(years); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/roundToNearestMinutes/index.js +var require_roundToNearestMinutes = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/roundToNearestMinutes/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = roundToNearestMinutes; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = require_roundingMethods(); + var _index3 = _interopRequireDefault(require_toInteger()); + function roundToNearestMinutes(dirtyDate, options2) { + var _options$nearestTo; + if (arguments.length < 1) { + throw new TypeError("1 argument required, but only none provided present"); + } + var nearestTo = (0, _index3.default)((_options$nearestTo = options2 === null || options2 === void 0 ? void 0 : options2.nearestTo) !== null && _options$nearestTo !== void 0 ? _options$nearestTo : 1); + if (nearestTo < 1 || nearestTo > 30) { + throw new RangeError("`options.nearestTo` must be between 1 and 30"); + } + var date = (0, _index.default)(dirtyDate); + var seconds = date.getSeconds(); + var minutes = date.getMinutes() + seconds / 60; + var roundingMethod = (0, _index2.getRoundingMethod)(options2 === null || options2 === void 0 ? void 0 : options2.roundingMethod); + var roundedMinutes = roundingMethod(minutes / nearestTo) * nearestTo; + var remainderMinutes = minutes % nearestTo; + var addedMinutes = Math.round(remainderMinutes / nearestTo) * nearestTo; + return new Date(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), roundedMinutes + addedMinutes); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/secondsToHours/index.js +var require_secondsToHours = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/secondsToHours/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = secondsToHours; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function secondsToHours(seconds) { + (0, _index.default)(1, arguments); + var hours = seconds / _index2.secondsInHour; + return Math.floor(hours); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/secondsToMilliseconds/index.js +var require_secondsToMilliseconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/secondsToMilliseconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = secondsToMilliseconds; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function secondsToMilliseconds(seconds) { + (0, _index.default)(1, arguments); + return seconds * _index2.millisecondsInSecond; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/secondsToMinutes/index.js +var require_secondsToMinutes = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/secondsToMinutes/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = secondsToMinutes; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function secondsToMinutes(seconds) { + (0, _index.default)(1, arguments); + var minutes = seconds / _index2.secondsInMinute; + return Math.floor(minutes); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setMonth/index.js +var require_setMonth = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setMonth/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setMonth; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_getDaysInMonth()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function setMonth(dirtyDate, dirtyMonth) { + (0, _index4.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var month = (0, _index.default)(dirtyMonth); + var year = date.getFullYear(); + var day = date.getDate(); + var dateWithDesiredMonth = /* @__PURE__ */ new Date(0); + dateWithDesiredMonth.setFullYear(year, month, 15); + dateWithDesiredMonth.setHours(0, 0, 0, 0); + var daysInMonth = (0, _index3.default)(dateWithDesiredMonth); + date.setMonth(month, Math.min(day, daysInMonth)); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/set/index.js +var require_set = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/set/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = set; + var _typeof2 = _interopRequireDefault(require_typeof()); + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_setMonth()); + var _index3 = _interopRequireDefault(require_toInteger()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function set(dirtyDate, values) { + (0, _index4.default)(2, arguments); + if ((0, _typeof2.default)(values) !== "object" || values === null) { + throw new RangeError("values parameter must be an object"); + } + var date = (0, _index.default)(dirtyDate); + if (isNaN(date.getTime())) { + return /* @__PURE__ */ new Date(NaN); + } + if (values.year != null) { + date.setFullYear(values.year); + } + if (values.month != null) { + date = (0, _index2.default)(date, values.month); + } + if (values.date != null) { + date.setDate((0, _index3.default)(values.date)); + } + if (values.hours != null) { + date.setHours((0, _index3.default)(values.hours)); + } + if (values.minutes != null) { + date.setMinutes((0, _index3.default)(values.minutes)); + } + if (values.seconds != null) { + date.setSeconds((0, _index3.default)(values.seconds)); + } + if (values.milliseconds != null) { + date.setMilliseconds((0, _index3.default)(values.milliseconds)); + } + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setDate/index.js +var require_setDate = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setDate/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setDate; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function setDate(dirtyDate, dirtyDayOfMonth) { + (0, _index3.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var dayOfMonth = (0, _index.default)(dirtyDayOfMonth); + date.setDate(dayOfMonth); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setDay/index.js +var require_setDay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setDay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setDay; + var _index = _interopRequireDefault(require_addDays()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_toInteger()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + var _index5 = require_defaultOptions(); + function setDay(dirtyDate, dirtyDay, options2) { + var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index4.default)(2, arguments); + var defaultOptions = (0, _index5.getDefaultOptions)(); + var weekStartsOn = (0, _index3.default)((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options2 === null || options2 === void 0 ? void 0 : options2.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); + if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) { + throw new RangeError("weekStartsOn must be between 0 and 6 inclusively"); + } + var date = (0, _index2.default)(dirtyDate); + var day = (0, _index3.default)(dirtyDay); + var currentDay = date.getDay(); + var remainder = day % 7; + var dayIndex = (remainder + 7) % 7; + var delta = 7 - weekStartsOn; + var diff = day < 0 || day > 6 ? day - (currentDay + delta) % 7 : (dayIndex + delta) % 7 - (currentDay + delta) % 7; + return (0, _index.default)(date, diff); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setDayOfYear/index.js +var require_setDayOfYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setDayOfYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setDayOfYear; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function setDayOfYear(dirtyDate, dirtyDayOfYear) { + (0, _index3.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var dayOfYear = (0, _index.default)(dirtyDayOfYear); + date.setMonth(0); + date.setDate(dayOfYear); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setDefaultOptions/index.js +var require_setDefaultOptions = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setDefaultOptions/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setDefaultOptions; + var _index = require_defaultOptions(); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function setDefaultOptions(newOptions) { + (0, _index2.default)(1, arguments); + var result = {}; + var defaultOptions = (0, _index.getDefaultOptions)(); + for (var property in defaultOptions) { + if (Object.prototype.hasOwnProperty.call(defaultOptions, property)) { + ; + result[property] = defaultOptions[property]; + } + } + for (var _property in newOptions) { + if (Object.prototype.hasOwnProperty.call(newOptions, _property)) { + if (newOptions[_property] === void 0) { + delete result[_property]; + } else { + ; + result[_property] = newOptions[_property]; + } + } + } + (0, _index.setDefaultOptions)(result); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setHours/index.js +var require_setHours = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setHours/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setHours; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function setHours(dirtyDate, dirtyHours) { + (0, _index3.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var hours = (0, _index.default)(dirtyHours); + date.setHours(hours); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setISODay/index.js +var require_setISODay = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setISODay/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setISODay; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_addDays()); + var _index4 = _interopRequireDefault(require_getISODay()); + var _index5 = _interopRequireDefault(require_requiredArgs()); + function setISODay(dirtyDate, dirtyDay) { + (0, _index5.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var day = (0, _index.default)(dirtyDay); + var currentDay = (0, _index4.default)(date); + var diff = day - currentDay; + return (0, _index3.default)(date, diff); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setISOWeek/index.js +var require_setISOWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setISOWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setISOWeek; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_getISOWeek()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function setISOWeek(dirtyDate, dirtyISOWeek) { + (0, _index4.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var isoWeek = (0, _index.default)(dirtyISOWeek); + var diff = (0, _index3.default)(date) - isoWeek; + date.setDate(date.getDate() - diff * 7); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setMilliseconds/index.js +var require_setMilliseconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setMilliseconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setMilliseconds; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function setMilliseconds(dirtyDate, dirtyMilliseconds) { + (0, _index3.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var milliseconds = (0, _index.default)(dirtyMilliseconds); + date.setMilliseconds(milliseconds); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setMinutes/index.js +var require_setMinutes = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setMinutes/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setMinutes; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function setMinutes(dirtyDate, dirtyMinutes) { + (0, _index3.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var minutes = (0, _index.default)(dirtyMinutes); + date.setMinutes(minutes); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setQuarter/index.js +var require_setQuarter = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setQuarter/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setQuarter; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_setMonth()); + var _index4 = _interopRequireDefault(require_requiredArgs()); + function setQuarter(dirtyDate, dirtyQuarter) { + (0, _index4.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var quarter = (0, _index.default)(dirtyQuarter); + var oldQuarter = Math.floor(date.getMonth() / 3) + 1; + var diff = quarter - oldQuarter; + return (0, _index3.default)(date, date.getMonth() + diff * 3); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setSeconds/index.js +var require_setSeconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setSeconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setSeconds; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function setSeconds(dirtyDate, dirtySeconds) { + (0, _index3.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var seconds = (0, _index.default)(dirtySeconds); + date.setSeconds(seconds); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setWeek/index.js +var require_setWeek = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setWeek/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setWeek; + var _index = _interopRequireDefault(require_getWeek()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var _index4 = _interopRequireDefault(require_toInteger()); + function setWeek(dirtyDate, dirtyWeek, options2) { + (0, _index3.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var week = (0, _index4.default)(dirtyWeek); + var diff = (0, _index.default)(date, options2) - week; + date.setDate(date.getDate() - diff * 7); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setWeekYear/index.js +var require_setWeekYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setWeekYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setWeekYear; + var _index = _interopRequireDefault(require_differenceInCalendarDays()); + var _index2 = _interopRequireDefault(require_startOfWeekYear()); + var _index3 = _interopRequireDefault(require_toDate()); + var _index4 = _interopRequireDefault(require_toInteger()); + var _index5 = _interopRequireDefault(require_requiredArgs()); + var _index6 = require_defaultOptions(); + function setWeekYear(dirtyDate, dirtyWeekYear, options2) { + var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2; + (0, _index5.default)(2, arguments); + var defaultOptions = (0, _index6.getDefaultOptions)(); + var firstWeekContainsDate = (0, _index4.default)((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options2 === null || options2 === void 0 ? void 0 : options2.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options2 === null || options2 === void 0 ? void 0 : (_options$locale = options2.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1); + var date = (0, _index3.default)(dirtyDate); + var weekYear = (0, _index4.default)(dirtyWeekYear); + var diff = (0, _index.default)(date, (0, _index2.default)(date, options2)); + var firstWeek = /* @__PURE__ */ new Date(0); + firstWeek.setFullYear(weekYear, 0, firstWeekContainsDate); + firstWeek.setHours(0, 0, 0, 0); + date = (0, _index2.default)(firstWeek, options2); + date.setDate(date.getDate() + diff); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setYear/index.js +var require_setYear = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/setYear/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = setYear; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_toDate()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function setYear(dirtyDate, dirtyYear) { + (0, _index3.default)(2, arguments); + var date = (0, _index2.default)(dirtyDate); + var year = (0, _index.default)(dirtyYear); + if (isNaN(date.getTime())) { + return /* @__PURE__ */ new Date(NaN); + } + date.setFullYear(year); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfDecade/index.js +var require_startOfDecade = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfDecade/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfDecade; + var _index = _interopRequireDefault(require_toDate()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + function startOfDecade(dirtyDate) { + (0, _index2.default)(1, arguments); + var date = (0, _index.default)(dirtyDate); + var year = date.getFullYear(); + var decade = Math.floor(year / 10) * 10; + date.setFullYear(decade, 0, 1); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfToday/index.js +var require_startOfToday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfToday/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfToday; + var _index = _interopRequireDefault(require_startOfDay()); + function startOfToday() { + return (0, _index.default)(Date.now()); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfTomorrow/index.js +var require_startOfTomorrow = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfTomorrow/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfTomorrow; + function startOfTomorrow() { + var now = /* @__PURE__ */ new Date(); + var year = now.getFullYear(); + var month = now.getMonth(); + var day = now.getDate(); + var date = /* @__PURE__ */ new Date(0); + date.setFullYear(year, month, day + 1); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfYesterday/index.js +var require_startOfYesterday = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/startOfYesterday/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = startOfYesterday; + function startOfYesterday() { + var now = /* @__PURE__ */ new Date(); + var year = now.getFullYear(); + var month = now.getMonth(); + var day = now.getDate(); + var date = /* @__PURE__ */ new Date(0); + date.setFullYear(year, month, day - 1); + date.setHours(0, 0, 0, 0); + return date; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subMonths/index.js +var require_subMonths = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subMonths/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subMonths; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addMonths()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function subMonths(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + return (0, _index2.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/sub/index.js +var require_sub = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/sub/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = sub; + var _typeof2 = _interopRequireDefault(require_typeof()); + var _index = _interopRequireDefault(require_subDays()); + var _index2 = _interopRequireDefault(require_subMonths()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + var _index4 = _interopRequireDefault(require_toInteger()); + function sub(date, duration) { + (0, _index3.default)(2, arguments); + if (!duration || (0, _typeof2.default)(duration) !== "object") + return /* @__PURE__ */ new Date(NaN); + var years = duration.years ? (0, _index4.default)(duration.years) : 0; + var months = duration.months ? (0, _index4.default)(duration.months) : 0; + var weeks = duration.weeks ? (0, _index4.default)(duration.weeks) : 0; + var days = duration.days ? (0, _index4.default)(duration.days) : 0; + var hours = duration.hours ? (0, _index4.default)(duration.hours) : 0; + var minutes = duration.minutes ? (0, _index4.default)(duration.minutes) : 0; + var seconds = duration.seconds ? (0, _index4.default)(duration.seconds) : 0; + var dateWithoutMonths = (0, _index2.default)(date, months + years * 12); + var dateWithoutDays = (0, _index.default)(dateWithoutMonths, days + weeks * 7); + var minutestoSub = minutes + hours * 60; + var secondstoSub = seconds + minutestoSub * 60; + var mstoSub = secondstoSub * 1e3; + var finalDate = new Date(dateWithoutDays.getTime() - mstoSub); + return finalDate; + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subBusinessDays/index.js +var require_subBusinessDays = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subBusinessDays/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subBusinessDays; + var _index = _interopRequireDefault(require_addBusinessDays()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_toInteger()); + function subBusinessDays(dirtyDate, dirtyAmount) { + (0, _index2.default)(2, arguments); + var amount = (0, _index3.default)(dirtyAmount); + return (0, _index.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subHours/index.js +var require_subHours = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subHours/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subHours; + var _index = _interopRequireDefault(require_addHours()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_toInteger()); + function subHours(dirtyDate, dirtyAmount) { + (0, _index2.default)(2, arguments); + var amount = (0, _index3.default)(dirtyAmount); + return (0, _index.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subMinutes/index.js +var require_subMinutes = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subMinutes/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subMinutes; + var _index = _interopRequireDefault(require_addMinutes()); + var _index2 = _interopRequireDefault(require_requiredArgs()); + var _index3 = _interopRequireDefault(require_toInteger()); + function subMinutes(dirtyDate, dirtyAmount) { + (0, _index2.default)(2, arguments); + var amount = (0, _index3.default)(dirtyAmount); + return (0, _index.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subQuarters/index.js +var require_subQuarters = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subQuarters/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subQuarters; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addQuarters()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function subQuarters(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + return (0, _index2.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subSeconds/index.js +var require_subSeconds = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subSeconds/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subSeconds; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addSeconds()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function subSeconds(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + return (0, _index2.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subWeeks/index.js +var require_subWeeks = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subWeeks/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subWeeks; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addWeeks()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function subWeeks(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + return (0, _index2.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subYears/index.js +var require_subYears = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/subYears/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = subYears; + var _index = _interopRequireDefault(require_toInteger()); + var _index2 = _interopRequireDefault(require_addYears()); + var _index3 = _interopRequireDefault(require_requiredArgs()); + function subYears(dirtyDate, dirtyAmount) { + (0, _index3.default)(2, arguments); + var amount = (0, _index.default)(dirtyAmount); + return (0, _index2.default)(dirtyDate, -amount); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/weeksToDays/index.js +var require_weeksToDays = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/weeksToDays/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = weeksToDays; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function weeksToDays(weeks) { + (0, _index.default)(1, arguments); + return Math.floor(weeks * _index2.daysInWeek); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/yearsToMonths/index.js +var require_yearsToMonths = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/yearsToMonths/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = yearsToMonths; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function yearsToMonths(years) { + (0, _index.default)(1, arguments); + return Math.floor(years * _index2.monthsInYear); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/yearsToQuarters/index.js +var require_yearsToQuarters = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/yearsToQuarters/index.js"(exports2, module2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = yearsToQuarters; + var _index = _interopRequireDefault(require_requiredArgs()); + var _index2 = require_constants2(); + function yearsToQuarters(years) { + (0, _index.default)(1, arguments); + return Math.floor(years * _index2.quartersInYear); + } + module2.exports = exports2.default; + } +}); + +// ../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/index.js +var require_date_fns = __commonJS({ + "../node_modules/.pnpm/date-fns@2.30.0/node_modules/date-fns/index.js"(exports2) { + "use strict"; + var _interopRequireDefault = require_interopRequireDefault().default; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var _exportNames = { + add: true, + addBusinessDays: true, + addDays: true, + addHours: true, + addISOWeekYears: true, + addMilliseconds: true, + addMinutes: true, + addMonths: true, + addQuarters: true, + addSeconds: true, + addWeeks: true, + addYears: true, + areIntervalsOverlapping: true, + clamp: true, + closestIndexTo: true, + closestTo: true, + compareAsc: true, + compareDesc: true, + daysToWeeks: true, + differenceInBusinessDays: true, + differenceInCalendarDays: true, + differenceInCalendarISOWeekYears: true, + differenceInCalendarISOWeeks: true, + differenceInCalendarMonths: true, + differenceInCalendarQuarters: true, + differenceInCalendarWeeks: true, + differenceInCalendarYears: true, + differenceInDays: true, + differenceInHours: true, + differenceInISOWeekYears: true, + differenceInMilliseconds: true, + differenceInMinutes: true, + differenceInMonths: true, + differenceInQuarters: true, + differenceInSeconds: true, + differenceInWeeks: true, + differenceInYears: true, + eachDayOfInterval: true, + eachHourOfInterval: true, + eachMinuteOfInterval: true, + eachMonthOfInterval: true, + eachQuarterOfInterval: true, + eachWeekOfInterval: true, + eachWeekendOfInterval: true, + eachWeekendOfMonth: true, + eachWeekendOfYear: true, + eachYearOfInterval: true, + endOfDay: true, + endOfDecade: true, + endOfHour: true, + endOfISOWeek: true, + endOfISOWeekYear: true, + endOfMinute: true, + endOfMonth: true, + endOfQuarter: true, + endOfSecond: true, + endOfToday: true, + endOfTomorrow: true, + endOfWeek: true, + endOfYear: true, + endOfYesterday: true, + format: true, + formatDistance: true, + formatDistanceStrict: true, + formatDistanceToNow: true, + formatDistanceToNowStrict: true, + formatDuration: true, + formatISO: true, + formatISO9075: true, + formatISODuration: true, + formatRFC3339: true, + formatRFC7231: true, + formatRelative: true, + fromUnixTime: true, + getDate: true, + getDay: true, + getDayOfYear: true, + getDaysInMonth: true, + getDaysInYear: true, + getDecade: true, + getDefaultOptions: true, + getHours: true, + getISODay: true, + getISOWeek: true, + getISOWeekYear: true, + getISOWeeksInYear: true, + getMilliseconds: true, + getMinutes: true, + getMonth: true, + getOverlappingDaysInIntervals: true, + getQuarter: true, + getSeconds: true, + getTime: true, + getUnixTime: true, + getWeek: true, + getWeekOfMonth: true, + getWeekYear: true, + getWeeksInMonth: true, + getYear: true, + hoursToMilliseconds: true, + hoursToMinutes: true, + hoursToSeconds: true, + intervalToDuration: true, + intlFormat: true, + intlFormatDistance: true, + isAfter: true, + isBefore: true, + isDate: true, + isEqual: true, + isExists: true, + isFirstDayOfMonth: true, + isFriday: true, + isFuture: true, + isLastDayOfMonth: true, + isLeapYear: true, + isMatch: true, + isMonday: true, + isPast: true, + isSameDay: true, + isSameHour: true, + isSameISOWeek: true, + isSameISOWeekYear: true, + isSameMinute: true, + isSameMonth: true, + isSameQuarter: true, + isSameSecond: true, + isSameWeek: true, + isSameYear: true, + isSaturday: true, + isSunday: true, + isThisHour: true, + isThisISOWeek: true, + isThisMinute: true, + isThisMonth: true, + isThisQuarter: true, + isThisSecond: true, + isThisWeek: true, + isThisYear: true, + isThursday: true, + isToday: true, + isTomorrow: true, + isTuesday: true, + isValid: true, + isWednesday: true, + isWeekend: true, + isWithinInterval: true, + isYesterday: true, + lastDayOfDecade: true, + lastDayOfISOWeek: true, + lastDayOfISOWeekYear: true, + lastDayOfMonth: true, + lastDayOfQuarter: true, + lastDayOfWeek: true, + lastDayOfYear: true, + lightFormat: true, + max: true, + milliseconds: true, + millisecondsToHours: true, + millisecondsToMinutes: true, + millisecondsToSeconds: true, + min: true, + minutesToHours: true, + minutesToMilliseconds: true, + minutesToSeconds: true, + monthsToQuarters: true, + monthsToYears: true, + nextDay: true, + nextFriday: true, + nextMonday: true, + nextSaturday: true, + nextSunday: true, + nextThursday: true, + nextTuesday: true, + nextWednesday: true, + parse: true, + parseISO: true, + parseJSON: true, + previousDay: true, + previousFriday: true, + previousMonday: true, + previousSaturday: true, + previousSunday: true, + previousThursday: true, + previousTuesday: true, + previousWednesday: true, + quartersToMonths: true, + quartersToYears: true, + roundToNearestMinutes: true, + secondsToHours: true, + secondsToMilliseconds: true, + secondsToMinutes: true, + set: true, + setDate: true, + setDay: true, + setDayOfYear: true, + setDefaultOptions: true, + setHours: true, + setISODay: true, + setISOWeek: true, + setISOWeekYear: true, + setMilliseconds: true, + setMinutes: true, + setMonth: true, + setQuarter: true, + setSeconds: true, + setWeek: true, + setWeekYear: true, + setYear: true, + startOfDay: true, + startOfDecade: true, + startOfHour: true, + startOfISOWeek: true, + startOfISOWeekYear: true, + startOfMinute: true, + startOfMonth: true, + startOfQuarter: true, + startOfSecond: true, + startOfToday: true, + startOfTomorrow: true, + startOfWeek: true, + startOfWeekYear: true, + startOfYear: true, + startOfYesterday: true, + sub: true, + subBusinessDays: true, + subDays: true, + subHours: true, + subISOWeekYears: true, + subMilliseconds: true, + subMinutes: true, + subMonths: true, + subQuarters: true, + subSeconds: true, + subWeeks: true, + subYears: true, + toDate: true, + weeksToDays: true, + yearsToMonths: true, + yearsToQuarters: true + }; + Object.defineProperty(exports2, "add", { + enumerable: true, + get: function get() { + return _index.default; + } + }); + Object.defineProperty(exports2, "addBusinessDays", { + enumerable: true, + get: function get() { + return _index2.default; + } + }); + Object.defineProperty(exports2, "addDays", { + enumerable: true, + get: function get() { + return _index3.default; + } + }); + Object.defineProperty(exports2, "addHours", { + enumerable: true, + get: function get() { + return _index4.default; + } + }); + Object.defineProperty(exports2, "addISOWeekYears", { + enumerable: true, + get: function get() { + return _index5.default; + } + }); + Object.defineProperty(exports2, "addMilliseconds", { + enumerable: true, + get: function get() { + return _index6.default; + } + }); + Object.defineProperty(exports2, "addMinutes", { + enumerable: true, + get: function get() { + return _index7.default; + } + }); + Object.defineProperty(exports2, "addMonths", { + enumerable: true, + get: function get() { + return _index8.default; + } + }); + Object.defineProperty(exports2, "addQuarters", { + enumerable: true, + get: function get() { + return _index9.default; + } + }); + Object.defineProperty(exports2, "addSeconds", { + enumerable: true, + get: function get() { + return _index10.default; + } + }); + Object.defineProperty(exports2, "addWeeks", { + enumerable: true, + get: function get() { + return _index11.default; + } + }); + Object.defineProperty(exports2, "addYears", { + enumerable: true, + get: function get() { + return _index12.default; + } + }); + Object.defineProperty(exports2, "areIntervalsOverlapping", { + enumerable: true, + get: function get() { + return _index13.default; + } + }); + Object.defineProperty(exports2, "clamp", { + enumerable: true, + get: function get() { + return _index14.default; + } + }); + Object.defineProperty(exports2, "closestIndexTo", { + enumerable: true, + get: function get() { + return _index15.default; + } + }); + Object.defineProperty(exports2, "closestTo", { + enumerable: true, + get: function get() { + return _index16.default; + } + }); + Object.defineProperty(exports2, "compareAsc", { + enumerable: true, + get: function get() { + return _index17.default; + } + }); + Object.defineProperty(exports2, "compareDesc", { + enumerable: true, + get: function get() { + return _index18.default; + } + }); + Object.defineProperty(exports2, "daysToWeeks", { + enumerable: true, + get: function get() { + return _index19.default; + } + }); + Object.defineProperty(exports2, "differenceInBusinessDays", { + enumerable: true, + get: function get() { + return _index20.default; + } + }); + Object.defineProperty(exports2, "differenceInCalendarDays", { + enumerable: true, + get: function get() { + return _index21.default; + } + }); + Object.defineProperty(exports2, "differenceInCalendarISOWeekYears", { + enumerable: true, + get: function get() { + return _index22.default; + } + }); + Object.defineProperty(exports2, "differenceInCalendarISOWeeks", { + enumerable: true, + get: function get() { + return _index23.default; + } + }); + Object.defineProperty(exports2, "differenceInCalendarMonths", { + enumerable: true, + get: function get() { + return _index24.default; + } + }); + Object.defineProperty(exports2, "differenceInCalendarQuarters", { + enumerable: true, + get: function get() { + return _index25.default; + } + }); + Object.defineProperty(exports2, "differenceInCalendarWeeks", { + enumerable: true, + get: function get() { + return _index26.default; + } + }); + Object.defineProperty(exports2, "differenceInCalendarYears", { + enumerable: true, + get: function get() { + return _index27.default; + } + }); + Object.defineProperty(exports2, "differenceInDays", { + enumerable: true, + get: function get() { + return _index28.default; + } + }); + Object.defineProperty(exports2, "differenceInHours", { + enumerable: true, + get: function get() { + return _index29.default; + } + }); + Object.defineProperty(exports2, "differenceInISOWeekYears", { + enumerable: true, + get: function get() { + return _index30.default; + } + }); + Object.defineProperty(exports2, "differenceInMilliseconds", { + enumerable: true, + get: function get() { + return _index31.default; + } + }); + Object.defineProperty(exports2, "differenceInMinutes", { + enumerable: true, + get: function get() { + return _index32.default; + } + }); + Object.defineProperty(exports2, "differenceInMonths", { + enumerable: true, + get: function get() { + return _index33.default; + } + }); + Object.defineProperty(exports2, "differenceInQuarters", { + enumerable: true, + get: function get() { + return _index34.default; + } + }); + Object.defineProperty(exports2, "differenceInSeconds", { + enumerable: true, + get: function get() { + return _index35.default; + } + }); + Object.defineProperty(exports2, "differenceInWeeks", { + enumerable: true, + get: function get() { + return _index36.default; + } + }); + Object.defineProperty(exports2, "differenceInYears", { + enumerable: true, + get: function get() { + return _index37.default; + } + }); + Object.defineProperty(exports2, "eachDayOfInterval", { + enumerable: true, + get: function get() { + return _index38.default; + } + }); + Object.defineProperty(exports2, "eachHourOfInterval", { + enumerable: true, + get: function get() { + return _index39.default; + } + }); + Object.defineProperty(exports2, "eachMinuteOfInterval", { + enumerable: true, + get: function get() { + return _index40.default; + } + }); + Object.defineProperty(exports2, "eachMonthOfInterval", { + enumerable: true, + get: function get() { + return _index41.default; + } + }); + Object.defineProperty(exports2, "eachQuarterOfInterval", { + enumerable: true, + get: function get() { + return _index42.default; + } + }); + Object.defineProperty(exports2, "eachWeekOfInterval", { + enumerable: true, + get: function get() { + return _index43.default; + } + }); + Object.defineProperty(exports2, "eachWeekendOfInterval", { + enumerable: true, + get: function get() { + return _index44.default; + } + }); + Object.defineProperty(exports2, "eachWeekendOfMonth", { + enumerable: true, + get: function get() { + return _index45.default; + } + }); + Object.defineProperty(exports2, "eachWeekendOfYear", { + enumerable: true, + get: function get() { + return _index46.default; + } + }); + Object.defineProperty(exports2, "eachYearOfInterval", { + enumerable: true, + get: function get() { + return _index47.default; + } + }); + Object.defineProperty(exports2, "endOfDay", { + enumerable: true, + get: function get() { + return _index48.default; + } + }); + Object.defineProperty(exports2, "endOfDecade", { + enumerable: true, + get: function get() { + return _index49.default; + } + }); + Object.defineProperty(exports2, "endOfHour", { + enumerable: true, + get: function get() { + return _index50.default; + } + }); + Object.defineProperty(exports2, "endOfISOWeek", { + enumerable: true, + get: function get() { + return _index51.default; + } + }); + Object.defineProperty(exports2, "endOfISOWeekYear", { + enumerable: true, + get: function get() { + return _index52.default; + } + }); + Object.defineProperty(exports2, "endOfMinute", { + enumerable: true, + get: function get() { + return _index53.default; + } + }); + Object.defineProperty(exports2, "endOfMonth", { + enumerable: true, + get: function get() { + return _index54.default; + } + }); + Object.defineProperty(exports2, "endOfQuarter", { + enumerable: true, + get: function get() { + return _index55.default; + } + }); + Object.defineProperty(exports2, "endOfSecond", { + enumerable: true, + get: function get() { + return _index56.default; + } + }); + Object.defineProperty(exports2, "endOfToday", { + enumerable: true, + get: function get() { + return _index57.default; + } + }); + Object.defineProperty(exports2, "endOfTomorrow", { + enumerable: true, + get: function get() { + return _index58.default; + } + }); + Object.defineProperty(exports2, "endOfWeek", { + enumerable: true, + get: function get() { + return _index59.default; + } + }); + Object.defineProperty(exports2, "endOfYear", { + enumerable: true, + get: function get() { + return _index60.default; + } + }); + Object.defineProperty(exports2, "endOfYesterday", { + enumerable: true, + get: function get() { + return _index61.default; + } + }); + Object.defineProperty(exports2, "format", { + enumerable: true, + get: function get() { + return _index62.default; + } + }); + Object.defineProperty(exports2, "formatDistance", { + enumerable: true, + get: function get() { + return _index63.default; + } + }); + Object.defineProperty(exports2, "formatDistanceStrict", { + enumerable: true, + get: function get() { + return _index64.default; + } + }); + Object.defineProperty(exports2, "formatDistanceToNow", { + enumerable: true, + get: function get() { + return _index65.default; + } + }); + Object.defineProperty(exports2, "formatDistanceToNowStrict", { + enumerable: true, + get: function get() { + return _index66.default; + } + }); + Object.defineProperty(exports2, "formatDuration", { + enumerable: true, + get: function get() { + return _index67.default; + } + }); + Object.defineProperty(exports2, "formatISO", { + enumerable: true, + get: function get() { + return _index68.default; + } + }); + Object.defineProperty(exports2, "formatISO9075", { + enumerable: true, + get: function get() { + return _index69.default; + } + }); + Object.defineProperty(exports2, "formatISODuration", { + enumerable: true, + get: function get() { + return _index70.default; + } + }); + Object.defineProperty(exports2, "formatRFC3339", { + enumerable: true, + get: function get() { + return _index71.default; + } + }); + Object.defineProperty(exports2, "formatRFC7231", { + enumerable: true, + get: function get() { + return _index72.default; + } + }); + Object.defineProperty(exports2, "formatRelative", { + enumerable: true, + get: function get() { + return _index73.default; + } + }); + Object.defineProperty(exports2, "fromUnixTime", { + enumerable: true, + get: function get() { + return _index74.default; + } + }); + Object.defineProperty(exports2, "getDate", { + enumerable: true, + get: function get() { + return _index75.default; + } + }); + Object.defineProperty(exports2, "getDay", { + enumerable: true, + get: function get() { + return _index76.default; + } + }); + Object.defineProperty(exports2, "getDayOfYear", { + enumerable: true, + get: function get() { + return _index77.default; + } + }); + Object.defineProperty(exports2, "getDaysInMonth", { + enumerable: true, + get: function get() { + return _index78.default; + } + }); + Object.defineProperty(exports2, "getDaysInYear", { + enumerable: true, + get: function get() { + return _index79.default; + } + }); + Object.defineProperty(exports2, "getDecade", { + enumerable: true, + get: function get() { + return _index80.default; + } + }); + Object.defineProperty(exports2, "getDefaultOptions", { + enumerable: true, + get: function get() { + return _index81.default; + } + }); + Object.defineProperty(exports2, "getHours", { + enumerable: true, + get: function get() { + return _index82.default; + } + }); + Object.defineProperty(exports2, "getISODay", { + enumerable: true, + get: function get() { + return _index83.default; + } + }); + Object.defineProperty(exports2, "getISOWeek", { + enumerable: true, + get: function get() { + return _index84.default; + } + }); + Object.defineProperty(exports2, "getISOWeekYear", { + enumerable: true, + get: function get() { + return _index85.default; + } + }); + Object.defineProperty(exports2, "getISOWeeksInYear", { + enumerable: true, + get: function get() { + return _index86.default; + } + }); + Object.defineProperty(exports2, "getMilliseconds", { + enumerable: true, + get: function get() { + return _index87.default; + } + }); + Object.defineProperty(exports2, "getMinutes", { + enumerable: true, + get: function get() { + return _index88.default; + } + }); + Object.defineProperty(exports2, "getMonth", { + enumerable: true, + get: function get() { + return _index89.default; + } + }); + Object.defineProperty(exports2, "getOverlappingDaysInIntervals", { + enumerable: true, + get: function get() { + return _index90.default; + } + }); + Object.defineProperty(exports2, "getQuarter", { + enumerable: true, + get: function get() { + return _index91.default; + } + }); + Object.defineProperty(exports2, "getSeconds", { + enumerable: true, + get: function get() { + return _index92.default; + } + }); + Object.defineProperty(exports2, "getTime", { + enumerable: true, + get: function get() { + return _index93.default; + } + }); + Object.defineProperty(exports2, "getUnixTime", { + enumerable: true, + get: function get() { + return _index94.default; + } + }); + Object.defineProperty(exports2, "getWeek", { + enumerable: true, + get: function get() { + return _index95.default; + } + }); + Object.defineProperty(exports2, "getWeekOfMonth", { + enumerable: true, + get: function get() { + return _index96.default; + } + }); + Object.defineProperty(exports2, "getWeekYear", { + enumerable: true, + get: function get() { + return _index97.default; + } + }); + Object.defineProperty(exports2, "getWeeksInMonth", { + enumerable: true, + get: function get() { + return _index98.default; + } + }); + Object.defineProperty(exports2, "getYear", { + enumerable: true, + get: function get() { + return _index99.default; + } + }); + Object.defineProperty(exports2, "hoursToMilliseconds", { + enumerable: true, + get: function get() { + return _index100.default; + } + }); + Object.defineProperty(exports2, "hoursToMinutes", { + enumerable: true, + get: function get() { + return _index101.default; + } + }); + Object.defineProperty(exports2, "hoursToSeconds", { + enumerable: true, + get: function get() { + return _index102.default; + } + }); + Object.defineProperty(exports2, "intervalToDuration", { + enumerable: true, + get: function get() { + return _index103.default; + } + }); + Object.defineProperty(exports2, "intlFormat", { + enumerable: true, + get: function get() { + return _index104.default; + } + }); + Object.defineProperty(exports2, "intlFormatDistance", { + enumerable: true, + get: function get() { + return _index105.default; + } + }); + Object.defineProperty(exports2, "isAfter", { + enumerable: true, + get: function get() { + return _index106.default; + } + }); + Object.defineProperty(exports2, "isBefore", { + enumerable: true, + get: function get() { + return _index107.default; + } + }); + Object.defineProperty(exports2, "isDate", { + enumerable: true, + get: function get() { + return _index108.default; + } + }); + Object.defineProperty(exports2, "isEqual", { + enumerable: true, + get: function get() { + return _index109.default; + } + }); + Object.defineProperty(exports2, "isExists", { + enumerable: true, + get: function get() { + return _index110.default; + } + }); + Object.defineProperty(exports2, "isFirstDayOfMonth", { + enumerable: true, + get: function get() { + return _index111.default; + } + }); + Object.defineProperty(exports2, "isFriday", { + enumerable: true, + get: function get() { + return _index112.default; + } + }); + Object.defineProperty(exports2, "isFuture", { + enumerable: true, + get: function get() { + return _index113.default; + } + }); + Object.defineProperty(exports2, "isLastDayOfMonth", { + enumerable: true, + get: function get() { + return _index114.default; + } + }); + Object.defineProperty(exports2, "isLeapYear", { + enumerable: true, + get: function get() { + return _index115.default; + } + }); + Object.defineProperty(exports2, "isMatch", { + enumerable: true, + get: function get() { + return _index116.default; + } + }); + Object.defineProperty(exports2, "isMonday", { + enumerable: true, + get: function get() { + return _index117.default; + } + }); + Object.defineProperty(exports2, "isPast", { + enumerable: true, + get: function get() { + return _index118.default; + } + }); + Object.defineProperty(exports2, "isSameDay", { + enumerable: true, + get: function get() { + return _index119.default; + } + }); + Object.defineProperty(exports2, "isSameHour", { + enumerable: true, + get: function get() { + return _index120.default; + } + }); + Object.defineProperty(exports2, "isSameISOWeek", { + enumerable: true, + get: function get() { + return _index121.default; + } + }); + Object.defineProperty(exports2, "isSameISOWeekYear", { + enumerable: true, + get: function get() { + return _index122.default; + } + }); + Object.defineProperty(exports2, "isSameMinute", { + enumerable: true, + get: function get() { + return _index123.default; + } + }); + Object.defineProperty(exports2, "isSameMonth", { + enumerable: true, + get: function get() { + return _index124.default; + } + }); + Object.defineProperty(exports2, "isSameQuarter", { + enumerable: true, + get: function get() { + return _index125.default; + } + }); + Object.defineProperty(exports2, "isSameSecond", { + enumerable: true, + get: function get() { + return _index126.default; + } + }); + Object.defineProperty(exports2, "isSameWeek", { + enumerable: true, + get: function get() { + return _index127.default; + } + }); + Object.defineProperty(exports2, "isSameYear", { + enumerable: true, + get: function get() { + return _index128.default; + } + }); + Object.defineProperty(exports2, "isSaturday", { + enumerable: true, + get: function get() { + return _index129.default; + } + }); + Object.defineProperty(exports2, "isSunday", { + enumerable: true, + get: function get() { + return _index130.default; + } + }); + Object.defineProperty(exports2, "isThisHour", { + enumerable: true, + get: function get() { + return _index131.default; + } + }); + Object.defineProperty(exports2, "isThisISOWeek", { + enumerable: true, + get: function get() { + return _index132.default; + } + }); + Object.defineProperty(exports2, "isThisMinute", { + enumerable: true, + get: function get() { + return _index133.default; + } + }); + Object.defineProperty(exports2, "isThisMonth", { + enumerable: true, + get: function get() { + return _index134.default; + } + }); + Object.defineProperty(exports2, "isThisQuarter", { + enumerable: true, + get: function get() { + return _index135.default; + } + }); + Object.defineProperty(exports2, "isThisSecond", { + enumerable: true, + get: function get() { + return _index136.default; + } + }); + Object.defineProperty(exports2, "isThisWeek", { + enumerable: true, + get: function get() { + return _index137.default; + } + }); + Object.defineProperty(exports2, "isThisYear", { + enumerable: true, + get: function get() { + return _index138.default; + } + }); + Object.defineProperty(exports2, "isThursday", { + enumerable: true, + get: function get() { + return _index139.default; + } + }); + Object.defineProperty(exports2, "isToday", { + enumerable: true, + get: function get() { + return _index140.default; + } + }); + Object.defineProperty(exports2, "isTomorrow", { + enumerable: true, + get: function get() { + return _index141.default; + } + }); + Object.defineProperty(exports2, "isTuesday", { + enumerable: true, + get: function get() { + return _index142.default; + } + }); + Object.defineProperty(exports2, "isValid", { + enumerable: true, + get: function get() { + return _index143.default; + } + }); + Object.defineProperty(exports2, "isWednesday", { + enumerable: true, + get: function get() { + return _index144.default; + } + }); + Object.defineProperty(exports2, "isWeekend", { + enumerable: true, + get: function get() { + return _index145.default; + } + }); + Object.defineProperty(exports2, "isWithinInterval", { + enumerable: true, + get: function get() { + return _index146.default; + } + }); + Object.defineProperty(exports2, "isYesterday", { + enumerable: true, + get: function get() { + return _index147.default; + } + }); + Object.defineProperty(exports2, "lastDayOfDecade", { + enumerable: true, + get: function get() { + return _index148.default; + } + }); + Object.defineProperty(exports2, "lastDayOfISOWeek", { + enumerable: true, + get: function get() { + return _index149.default; + } + }); + Object.defineProperty(exports2, "lastDayOfISOWeekYear", { + enumerable: true, + get: function get() { + return _index150.default; + } + }); + Object.defineProperty(exports2, "lastDayOfMonth", { + enumerable: true, + get: function get() { + return _index151.default; + } + }); + Object.defineProperty(exports2, "lastDayOfQuarter", { + enumerable: true, + get: function get() { + return _index152.default; + } + }); + Object.defineProperty(exports2, "lastDayOfWeek", { + enumerable: true, + get: function get() { + return _index153.default; + } + }); + Object.defineProperty(exports2, "lastDayOfYear", { + enumerable: true, + get: function get() { + return _index154.default; + } + }); + Object.defineProperty(exports2, "lightFormat", { + enumerable: true, + get: function get() { + return _index155.default; + } + }); + Object.defineProperty(exports2, "max", { + enumerable: true, + get: function get() { + return _index156.default; + } + }); + Object.defineProperty(exports2, "milliseconds", { + enumerable: true, + get: function get() { + return _index157.default; + } + }); + Object.defineProperty(exports2, "millisecondsToHours", { + enumerable: true, + get: function get() { + return _index158.default; + } + }); + Object.defineProperty(exports2, "millisecondsToMinutes", { + enumerable: true, + get: function get() { + return _index159.default; + } + }); + Object.defineProperty(exports2, "millisecondsToSeconds", { + enumerable: true, + get: function get() { + return _index160.default; + } + }); + Object.defineProperty(exports2, "min", { + enumerable: true, + get: function get() { + return _index161.default; + } + }); + Object.defineProperty(exports2, "minutesToHours", { + enumerable: true, + get: function get() { + return _index162.default; + } + }); + Object.defineProperty(exports2, "minutesToMilliseconds", { + enumerable: true, + get: function get() { + return _index163.default; + } + }); + Object.defineProperty(exports2, "minutesToSeconds", { + enumerable: true, + get: function get() { + return _index164.default; + } + }); + Object.defineProperty(exports2, "monthsToQuarters", { + enumerable: true, + get: function get() { + return _index165.default; + } + }); + Object.defineProperty(exports2, "monthsToYears", { + enumerable: true, + get: function get() { + return _index166.default; + } + }); + Object.defineProperty(exports2, "nextDay", { + enumerable: true, + get: function get() { + return _index167.default; + } + }); + Object.defineProperty(exports2, "nextFriday", { + enumerable: true, + get: function get() { + return _index168.default; + } + }); + Object.defineProperty(exports2, "nextMonday", { + enumerable: true, + get: function get() { + return _index169.default; + } + }); + Object.defineProperty(exports2, "nextSaturday", { + enumerable: true, + get: function get() { + return _index170.default; + } + }); + Object.defineProperty(exports2, "nextSunday", { + enumerable: true, + get: function get() { + return _index171.default; + } + }); + Object.defineProperty(exports2, "nextThursday", { + enumerable: true, + get: function get() { + return _index172.default; + } + }); + Object.defineProperty(exports2, "nextTuesday", { + enumerable: true, + get: function get() { + return _index173.default; + } + }); + Object.defineProperty(exports2, "nextWednesday", { + enumerable: true, + get: function get() { + return _index174.default; + } + }); + Object.defineProperty(exports2, "parse", { + enumerable: true, + get: function get() { + return _index175.default; + } + }); + Object.defineProperty(exports2, "parseISO", { + enumerable: true, + get: function get() { + return _index176.default; + } + }); + Object.defineProperty(exports2, "parseJSON", { + enumerable: true, + get: function get() { + return _index177.default; + } + }); + Object.defineProperty(exports2, "previousDay", { + enumerable: true, + get: function get() { + return _index178.default; + } + }); + Object.defineProperty(exports2, "previousFriday", { + enumerable: true, + get: function get() { + return _index179.default; + } + }); + Object.defineProperty(exports2, "previousMonday", { + enumerable: true, + get: function get() { + return _index180.default; + } + }); + Object.defineProperty(exports2, "previousSaturday", { + enumerable: true, + get: function get() { + return _index181.default; + } + }); + Object.defineProperty(exports2, "previousSunday", { + enumerable: true, + get: function get() { + return _index182.default; + } + }); + Object.defineProperty(exports2, "previousThursday", { + enumerable: true, + get: function get() { + return _index183.default; + } + }); + Object.defineProperty(exports2, "previousTuesday", { + enumerable: true, + get: function get() { + return _index184.default; + } + }); + Object.defineProperty(exports2, "previousWednesday", { + enumerable: true, + get: function get() { + return _index185.default; + } + }); + Object.defineProperty(exports2, "quartersToMonths", { + enumerable: true, + get: function get() { + return _index186.default; + } + }); + Object.defineProperty(exports2, "quartersToYears", { + enumerable: true, + get: function get() { + return _index187.default; + } + }); + Object.defineProperty(exports2, "roundToNearestMinutes", { + enumerable: true, + get: function get() { + return _index188.default; + } + }); + Object.defineProperty(exports2, "secondsToHours", { + enumerable: true, + get: function get() { + return _index189.default; + } + }); + Object.defineProperty(exports2, "secondsToMilliseconds", { + enumerable: true, + get: function get() { + return _index190.default; + } + }); + Object.defineProperty(exports2, "secondsToMinutes", { + enumerable: true, + get: function get() { + return _index191.default; + } + }); + Object.defineProperty(exports2, "set", { + enumerable: true, + get: function get() { + return _index192.default; + } + }); + Object.defineProperty(exports2, "setDate", { + enumerable: true, + get: function get() { + return _index193.default; + } + }); + Object.defineProperty(exports2, "setDay", { + enumerable: true, + get: function get() { + return _index194.default; + } + }); + Object.defineProperty(exports2, "setDayOfYear", { + enumerable: true, + get: function get() { + return _index195.default; + } + }); + Object.defineProperty(exports2, "setDefaultOptions", { + enumerable: true, + get: function get() { + return _index196.default; + } + }); + Object.defineProperty(exports2, "setHours", { + enumerable: true, + get: function get() { + return _index197.default; + } + }); + Object.defineProperty(exports2, "setISODay", { + enumerable: true, + get: function get() { + return _index198.default; + } + }); + Object.defineProperty(exports2, "setISOWeek", { + enumerable: true, + get: function get() { + return _index199.default; + } + }); + Object.defineProperty(exports2, "setISOWeekYear", { + enumerable: true, + get: function get() { + return _index200.default; + } + }); + Object.defineProperty(exports2, "setMilliseconds", { + enumerable: true, + get: function get() { + return _index201.default; + } + }); + Object.defineProperty(exports2, "setMinutes", { + enumerable: true, + get: function get() { + return _index202.default; + } + }); + Object.defineProperty(exports2, "setMonth", { + enumerable: true, + get: function get() { + return _index203.default; + } + }); + Object.defineProperty(exports2, "setQuarter", { + enumerable: true, + get: function get() { + return _index204.default; + } + }); + Object.defineProperty(exports2, "setSeconds", { + enumerable: true, + get: function get() { + return _index205.default; + } + }); + Object.defineProperty(exports2, "setWeek", { + enumerable: true, + get: function get() { + return _index206.default; + } + }); + Object.defineProperty(exports2, "setWeekYear", { + enumerable: true, + get: function get() { + return _index207.default; + } + }); + Object.defineProperty(exports2, "setYear", { + enumerable: true, + get: function get() { + return _index208.default; + } + }); + Object.defineProperty(exports2, "startOfDay", { + enumerable: true, + get: function get() { + return _index209.default; + } + }); + Object.defineProperty(exports2, "startOfDecade", { + enumerable: true, + get: function get() { + return _index210.default; + } + }); + Object.defineProperty(exports2, "startOfHour", { + enumerable: true, + get: function get() { + return _index211.default; + } + }); + Object.defineProperty(exports2, "startOfISOWeek", { + enumerable: true, + get: function get() { + return _index212.default; + } + }); + Object.defineProperty(exports2, "startOfISOWeekYear", { + enumerable: true, + get: function get() { + return _index213.default; + } + }); + Object.defineProperty(exports2, "startOfMinute", { + enumerable: true, + get: function get() { + return _index214.default; + } + }); + Object.defineProperty(exports2, "startOfMonth", { + enumerable: true, + get: function get() { + return _index215.default; + } + }); + Object.defineProperty(exports2, "startOfQuarter", { + enumerable: true, + get: function get() { + return _index216.default; + } + }); + Object.defineProperty(exports2, "startOfSecond", { + enumerable: true, + get: function get() { + return _index217.default; + } + }); + Object.defineProperty(exports2, "startOfToday", { + enumerable: true, + get: function get() { + return _index218.default; + } + }); + Object.defineProperty(exports2, "startOfTomorrow", { + enumerable: true, + get: function get() { + return _index219.default; + } + }); + Object.defineProperty(exports2, "startOfWeek", { + enumerable: true, + get: function get() { + return _index220.default; + } + }); + Object.defineProperty(exports2, "startOfWeekYear", { + enumerable: true, + get: function get() { + return _index221.default; + } + }); + Object.defineProperty(exports2, "startOfYear", { + enumerable: true, + get: function get() { + return _index222.default; + } + }); + Object.defineProperty(exports2, "startOfYesterday", { + enumerable: true, + get: function get() { + return _index223.default; + } + }); + Object.defineProperty(exports2, "sub", { + enumerable: true, + get: function get() { + return _index224.default; + } + }); + Object.defineProperty(exports2, "subBusinessDays", { + enumerable: true, + get: function get() { + return _index225.default; + } + }); + Object.defineProperty(exports2, "subDays", { + enumerable: true, + get: function get() { + return _index226.default; + } + }); + Object.defineProperty(exports2, "subHours", { + enumerable: true, + get: function get() { + return _index227.default; + } + }); + Object.defineProperty(exports2, "subISOWeekYears", { + enumerable: true, + get: function get() { + return _index228.default; + } + }); + Object.defineProperty(exports2, "subMilliseconds", { + enumerable: true, + get: function get() { + return _index229.default; + } + }); + Object.defineProperty(exports2, "subMinutes", { + enumerable: true, + get: function get() { + return _index230.default; + } + }); + Object.defineProperty(exports2, "subMonths", { + enumerable: true, + get: function get() { + return _index231.default; + } + }); + Object.defineProperty(exports2, "subQuarters", { + enumerable: true, + get: function get() { + return _index232.default; + } + }); + Object.defineProperty(exports2, "subSeconds", { + enumerable: true, + get: function get() { + return _index233.default; + } + }); + Object.defineProperty(exports2, "subWeeks", { + enumerable: true, + get: function get() { + return _index234.default; + } + }); + Object.defineProperty(exports2, "subYears", { + enumerable: true, + get: function get() { + return _index235.default; + } + }); + Object.defineProperty(exports2, "toDate", { + enumerable: true, + get: function get() { + return _index236.default; + } + }); + Object.defineProperty(exports2, "weeksToDays", { + enumerable: true, + get: function get() { + return _index237.default; + } + }); + Object.defineProperty(exports2, "yearsToMonths", { + enumerable: true, + get: function get() { + return _index238.default; + } + }); + Object.defineProperty(exports2, "yearsToQuarters", { + enumerable: true, + get: function get() { + return _index239.default; + } + }); + var _index = _interopRequireDefault(require_add()); + var _index2 = _interopRequireDefault(require_addBusinessDays()); + var _index3 = _interopRequireDefault(require_addDays()); + var _index4 = _interopRequireDefault(require_addHours()); + var _index5 = _interopRequireDefault(require_addISOWeekYears()); + var _index6 = _interopRequireDefault(require_addMilliseconds()); + var _index7 = _interopRequireDefault(require_addMinutes()); + var _index8 = _interopRequireDefault(require_addMonths()); + var _index9 = _interopRequireDefault(require_addQuarters()); + var _index10 = _interopRequireDefault(require_addSeconds()); + var _index11 = _interopRequireDefault(require_addWeeks()); + var _index12 = _interopRequireDefault(require_addYears()); + var _index13 = _interopRequireDefault(require_areIntervalsOverlapping()); + var _index14 = _interopRequireDefault(require_clamp()); + var _index15 = _interopRequireDefault(require_closestIndexTo()); + var _index16 = _interopRequireDefault(require_closestTo()); + var _index17 = _interopRequireDefault(require_compareAsc()); + var _index18 = _interopRequireDefault(require_compareDesc()); + var _index19 = _interopRequireDefault(require_daysToWeeks()); + var _index20 = _interopRequireDefault(require_differenceInBusinessDays()); + var _index21 = _interopRequireDefault(require_differenceInCalendarDays()); + var _index22 = _interopRequireDefault(require_differenceInCalendarISOWeekYears()); + var _index23 = _interopRequireDefault(require_differenceInCalendarISOWeeks()); + var _index24 = _interopRequireDefault(require_differenceInCalendarMonths()); + var _index25 = _interopRequireDefault(require_differenceInCalendarQuarters()); + var _index26 = _interopRequireDefault(require_differenceInCalendarWeeks()); + var _index27 = _interopRequireDefault(require_differenceInCalendarYears()); + var _index28 = _interopRequireDefault(require_differenceInDays()); + var _index29 = _interopRequireDefault(require_differenceInHours()); + var _index30 = _interopRequireDefault(require_differenceInISOWeekYears()); + var _index31 = _interopRequireDefault(require_differenceInMilliseconds()); + var _index32 = _interopRequireDefault(require_differenceInMinutes()); + var _index33 = _interopRequireDefault(require_differenceInMonths()); + var _index34 = _interopRequireDefault(require_differenceInQuarters()); + var _index35 = _interopRequireDefault(require_differenceInSeconds()); + var _index36 = _interopRequireDefault(require_differenceInWeeks()); + var _index37 = _interopRequireDefault(require_differenceInYears()); + var _index38 = _interopRequireDefault(require_eachDayOfInterval()); + var _index39 = _interopRequireDefault(require_eachHourOfInterval()); + var _index40 = _interopRequireDefault(require_eachMinuteOfInterval()); + var _index41 = _interopRequireDefault(require_eachMonthOfInterval()); + var _index42 = _interopRequireDefault(require_eachQuarterOfInterval()); + var _index43 = _interopRequireDefault(require_eachWeekOfInterval()); + var _index44 = _interopRequireDefault(require_eachWeekendOfInterval()); + var _index45 = _interopRequireDefault(require_eachWeekendOfMonth()); + var _index46 = _interopRequireDefault(require_eachWeekendOfYear()); + var _index47 = _interopRequireDefault(require_eachYearOfInterval()); + var _index48 = _interopRequireDefault(require_endOfDay()); + var _index49 = _interopRequireDefault(require_endOfDecade()); + var _index50 = _interopRequireDefault(require_endOfHour()); + var _index51 = _interopRequireDefault(require_endOfISOWeek()); + var _index52 = _interopRequireDefault(require_endOfISOWeekYear()); + var _index53 = _interopRequireDefault(require_endOfMinute()); + var _index54 = _interopRequireDefault(require_endOfMonth()); + var _index55 = _interopRequireDefault(require_endOfQuarter()); + var _index56 = _interopRequireDefault(require_endOfSecond()); + var _index57 = _interopRequireDefault(require_endOfToday()); + var _index58 = _interopRequireDefault(require_endOfTomorrow()); + var _index59 = _interopRequireDefault(require_endOfWeek()); + var _index60 = _interopRequireDefault(require_endOfYear()); + var _index61 = _interopRequireDefault(require_endOfYesterday()); + var _index62 = _interopRequireDefault(require_format()); + var _index63 = _interopRequireDefault(require_formatDistance2()); + var _index64 = _interopRequireDefault(require_formatDistanceStrict()); + var _index65 = _interopRequireDefault(require_formatDistanceToNow()); + var _index66 = _interopRequireDefault(require_formatDistanceToNowStrict()); + var _index67 = _interopRequireDefault(require_formatDuration()); + var _index68 = _interopRequireDefault(require_formatISO()); + var _index69 = _interopRequireDefault(require_formatISO9075()); + var _index70 = _interopRequireDefault(require_formatISODuration()); + var _index71 = _interopRequireDefault(require_formatRFC3339()); + var _index72 = _interopRequireDefault(require_formatRFC7231()); + var _index73 = _interopRequireDefault(require_formatRelative2()); + var _index74 = _interopRequireDefault(require_fromUnixTime()); + var _index75 = _interopRequireDefault(require_getDate()); + var _index76 = _interopRequireDefault(require_getDay()); + var _index77 = _interopRequireDefault(require_getDayOfYear()); + var _index78 = _interopRequireDefault(require_getDaysInMonth()); + var _index79 = _interopRequireDefault(require_getDaysInYear()); + var _index80 = _interopRequireDefault(require_getDecade()); + var _index81 = _interopRequireDefault(require_getDefaultOptions()); + var _index82 = _interopRequireDefault(require_getHours()); + var _index83 = _interopRequireDefault(require_getISODay()); + var _index84 = _interopRequireDefault(require_getISOWeek()); + var _index85 = _interopRequireDefault(require_getISOWeekYear()); + var _index86 = _interopRequireDefault(require_getISOWeeksInYear()); + var _index87 = _interopRequireDefault(require_getMilliseconds()); + var _index88 = _interopRequireDefault(require_getMinutes()); + var _index89 = _interopRequireDefault(require_getMonth()); + var _index90 = _interopRequireDefault(require_getOverlappingDaysInIntervals()); + var _index91 = _interopRequireDefault(require_getQuarter()); + var _index92 = _interopRequireDefault(require_getSeconds()); + var _index93 = _interopRequireDefault(require_getTime()); + var _index94 = _interopRequireDefault(require_getUnixTime()); + var _index95 = _interopRequireDefault(require_getWeek()); + var _index96 = _interopRequireDefault(require_getWeekOfMonth()); + var _index97 = _interopRequireDefault(require_getWeekYear()); + var _index98 = _interopRequireDefault(require_getWeeksInMonth()); + var _index99 = _interopRequireDefault(require_getYear()); + var _index100 = _interopRequireDefault(require_hoursToMilliseconds()); + var _index101 = _interopRequireDefault(require_hoursToMinutes()); + var _index102 = _interopRequireDefault(require_hoursToSeconds()); + var _index103 = _interopRequireDefault(require_intervalToDuration()); + var _index104 = _interopRequireDefault(require_intlFormat()); + var _index105 = _interopRequireDefault(require_intlFormatDistance()); + var _index106 = _interopRequireDefault(require_isAfter()); + var _index107 = _interopRequireDefault(require_isBefore()); + var _index108 = _interopRequireDefault(require_isDate2()); + var _index109 = _interopRequireDefault(require_isEqual()); + var _index110 = _interopRequireDefault(require_isExists()); + var _index111 = _interopRequireDefault(require_isFirstDayOfMonth()); + var _index112 = _interopRequireDefault(require_isFriday()); + var _index113 = _interopRequireDefault(require_isFuture()); + var _index114 = _interopRequireDefault(require_isLastDayOfMonth()); + var _index115 = _interopRequireDefault(require_isLeapYear()); + var _index116 = _interopRequireDefault(require_isMatch()); + var _index117 = _interopRequireDefault(require_isMonday()); + var _index118 = _interopRequireDefault(require_isPast()); + var _index119 = _interopRequireDefault(require_isSameDay()); + var _index120 = _interopRequireDefault(require_isSameHour()); + var _index121 = _interopRequireDefault(require_isSameISOWeek()); + var _index122 = _interopRequireDefault(require_isSameISOWeekYear()); + var _index123 = _interopRequireDefault(require_isSameMinute()); + var _index124 = _interopRequireDefault(require_isSameMonth()); + var _index125 = _interopRequireDefault(require_isSameQuarter()); + var _index126 = _interopRequireDefault(require_isSameSecond()); + var _index127 = _interopRequireDefault(require_isSameWeek()); + var _index128 = _interopRequireDefault(require_isSameYear()); + var _index129 = _interopRequireDefault(require_isSaturday()); + var _index130 = _interopRequireDefault(require_isSunday()); + var _index131 = _interopRequireDefault(require_isThisHour()); + var _index132 = _interopRequireDefault(require_isThisISOWeek()); + var _index133 = _interopRequireDefault(require_isThisMinute()); + var _index134 = _interopRequireDefault(require_isThisMonth()); + var _index135 = _interopRequireDefault(require_isThisQuarter()); + var _index136 = _interopRequireDefault(require_isThisSecond()); + var _index137 = _interopRequireDefault(require_isThisWeek()); + var _index138 = _interopRequireDefault(require_isThisYear()); + var _index139 = _interopRequireDefault(require_isThursday()); + var _index140 = _interopRequireDefault(require_isToday()); + var _index141 = _interopRequireDefault(require_isTomorrow()); + var _index142 = _interopRequireDefault(require_isTuesday()); + var _index143 = _interopRequireDefault(require_isValid()); + var _index144 = _interopRequireDefault(require_isWednesday()); + var _index145 = _interopRequireDefault(require_isWeekend()); + var _index146 = _interopRequireDefault(require_isWithinInterval()); + var _index147 = _interopRequireDefault(require_isYesterday()); + var _index148 = _interopRequireDefault(require_lastDayOfDecade()); + var _index149 = _interopRequireDefault(require_lastDayOfISOWeek()); + var _index150 = _interopRequireDefault(require_lastDayOfISOWeekYear()); + var _index151 = _interopRequireDefault(require_lastDayOfMonth()); + var _index152 = _interopRequireDefault(require_lastDayOfQuarter()); + var _index153 = _interopRequireDefault(require_lastDayOfWeek()); + var _index154 = _interopRequireDefault(require_lastDayOfYear()); + var _index155 = _interopRequireDefault(require_lightFormat()); + var _index156 = _interopRequireDefault(require_max2()); + var _index157 = _interopRequireDefault(require_milliseconds()); + var _index158 = _interopRequireDefault(require_millisecondsToHours()); + var _index159 = _interopRequireDefault(require_millisecondsToMinutes()); + var _index160 = _interopRequireDefault(require_millisecondsToSeconds()); + var _index161 = _interopRequireDefault(require_min2()); + var _index162 = _interopRequireDefault(require_minutesToHours()); + var _index163 = _interopRequireDefault(require_minutesToMilliseconds()); + var _index164 = _interopRequireDefault(require_minutesToSeconds()); + var _index165 = _interopRequireDefault(require_monthsToQuarters()); + var _index166 = _interopRequireDefault(require_monthsToYears()); + var _index167 = _interopRequireDefault(require_nextDay()); + var _index168 = _interopRequireDefault(require_nextFriday()); + var _index169 = _interopRequireDefault(require_nextMonday()); + var _index170 = _interopRequireDefault(require_nextSaturday()); + var _index171 = _interopRequireDefault(require_nextSunday()); + var _index172 = _interopRequireDefault(require_nextThursday()); + var _index173 = _interopRequireDefault(require_nextTuesday()); + var _index174 = _interopRequireDefault(require_nextWednesday()); + var _index175 = _interopRequireDefault(require_parse3()); + var _index176 = _interopRequireDefault(require_parseISO()); + var _index177 = _interopRequireDefault(require_parseJSON()); + var _index178 = _interopRequireDefault(require_previousDay()); + var _index179 = _interopRequireDefault(require_previousFriday()); + var _index180 = _interopRequireDefault(require_previousMonday()); + var _index181 = _interopRequireDefault(require_previousSaturday()); + var _index182 = _interopRequireDefault(require_previousSunday()); + var _index183 = _interopRequireDefault(require_previousThursday()); + var _index184 = _interopRequireDefault(require_previousTuesday()); + var _index185 = _interopRequireDefault(require_previousWednesday()); + var _index186 = _interopRequireDefault(require_quartersToMonths()); + var _index187 = _interopRequireDefault(require_quartersToYears()); + var _index188 = _interopRequireDefault(require_roundToNearestMinutes()); + var _index189 = _interopRequireDefault(require_secondsToHours()); + var _index190 = _interopRequireDefault(require_secondsToMilliseconds()); + var _index191 = _interopRequireDefault(require_secondsToMinutes()); + var _index192 = _interopRequireDefault(require_set()); + var _index193 = _interopRequireDefault(require_setDate()); + var _index194 = _interopRequireDefault(require_setDay()); + var _index195 = _interopRequireDefault(require_setDayOfYear()); + var _index196 = _interopRequireDefault(require_setDefaultOptions()); + var _index197 = _interopRequireDefault(require_setHours()); + var _index198 = _interopRequireDefault(require_setISODay()); + var _index199 = _interopRequireDefault(require_setISOWeek()); + var _index200 = _interopRequireDefault(require_setISOWeekYear()); + var _index201 = _interopRequireDefault(require_setMilliseconds()); + var _index202 = _interopRequireDefault(require_setMinutes()); + var _index203 = _interopRequireDefault(require_setMonth()); + var _index204 = _interopRequireDefault(require_setQuarter()); + var _index205 = _interopRequireDefault(require_setSeconds()); + var _index206 = _interopRequireDefault(require_setWeek()); + var _index207 = _interopRequireDefault(require_setWeekYear()); + var _index208 = _interopRequireDefault(require_setYear()); + var _index209 = _interopRequireDefault(require_startOfDay()); + var _index210 = _interopRequireDefault(require_startOfDecade()); + var _index211 = _interopRequireDefault(require_startOfHour()); + var _index212 = _interopRequireDefault(require_startOfISOWeek()); + var _index213 = _interopRequireDefault(require_startOfISOWeekYear()); + var _index214 = _interopRequireDefault(require_startOfMinute()); + var _index215 = _interopRequireDefault(require_startOfMonth()); + var _index216 = _interopRequireDefault(require_startOfQuarter()); + var _index217 = _interopRequireDefault(require_startOfSecond()); + var _index218 = _interopRequireDefault(require_startOfToday()); + var _index219 = _interopRequireDefault(require_startOfTomorrow()); + var _index220 = _interopRequireDefault(require_startOfWeek()); + var _index221 = _interopRequireDefault(require_startOfWeekYear()); + var _index222 = _interopRequireDefault(require_startOfYear()); + var _index223 = _interopRequireDefault(require_startOfYesterday()); + var _index224 = _interopRequireDefault(require_sub()); + var _index225 = _interopRequireDefault(require_subBusinessDays()); + var _index226 = _interopRequireDefault(require_subDays()); + var _index227 = _interopRequireDefault(require_subHours()); + var _index228 = _interopRequireDefault(require_subISOWeekYears()); + var _index229 = _interopRequireDefault(require_subMilliseconds()); + var _index230 = _interopRequireDefault(require_subMinutes()); + var _index231 = _interopRequireDefault(require_subMonths()); + var _index232 = _interopRequireDefault(require_subQuarters()); + var _index233 = _interopRequireDefault(require_subSeconds()); + var _index234 = _interopRequireDefault(require_subWeeks()); + var _index235 = _interopRequireDefault(require_subYears()); + var _index236 = _interopRequireDefault(require_toDate()); + var _index237 = _interopRequireDefault(require_weeksToDays()); + var _index238 = _interopRequireDefault(require_yearsToMonths()); + var _index239 = _interopRequireDefault(require_yearsToQuarters()); + var _index240 = require_constants2(); + Object.keys(_index240).forEach(function(key) { + if (key === "default" || key === "__esModule") + return; + if (Object.prototype.hasOwnProperty.call(_exportNames, key)) + return; + if (key in exports2 && exports2[key] === _index240[key]) + return; + Object.defineProperty(exports2, key, { + enumerable: true, + get: function get() { + return _index240[key]; + } + }); + }); + } +}); + +// ../node_modules/.pnpm/wink-porter2-stemmer@2.0.1/node_modules/wink-porter2-stemmer/src/wink-porter2-stemmer.js +var require_wink_porter2_stemmer = __commonJS({ + "../node_modules/.pnpm/wink-porter2-stemmer@2.0.1/node_modules/wink-porter2-stemmer/src/wink-porter2-stemmer.js"(exports2, module2) { + var rgxDouble = /(bb|dd|ff|gg|mm|nn|pp|rr|tt)$/; + var rgxSFXsses = /(.+)(sses)$/; + var rgxSFXiedORies2 = /(.{2,})(ied|ies)$/; + var rgxSFXiedORies1 = /(.{1})(ied|ies)$/; + var rgxSFXusORss = /(.+)(us|ss)$/; + var rgxSFXs = /(.+)(s)$/; + var rgxSFXeedlyOReed = /(.*)(eedly|eed)$/; + var rgxSFXedORedlyORinglyORing = /([aeiouy].*)(ed|edly|ingly|ing)$/; + var rgxSFXatORblORiz = /(at|bl|iz)$/; + var rgxSFXyOR3 = /(.+[^aeiouy])([y3])$/; + var rgxSFXstep2 = /(ization|ational|fulness|ousness|iveness|tional|biliti|lessli|entli|ation|alism|aliti|ousli|iviti|fulli|enci|anci|abli|izer|ator|alli|bli|ogi|li)$/; + var rgxSFXstep2WithReplacements = [ + // Length 7. + { rgx: /ational$/, replacement: "ate" }, + { rgx: /ization$/, replacement: "ize" }, + { rgx: /fulness$/, replacement: "ful" }, + { rgx: /ousness$/, replacement: "ous" }, + { rgx: /iveness$/, replacement: "ive" }, + // Length 6. + { rgx: /tional$/, replacement: "tion" }, + { rgx: /biliti$/, replacement: "ble" }, + { rgx: /lessli$/, replacement: "less" }, + // Length 5. + { rgx: /iviti$/, replacement: "ive" }, + { rgx: /ousli$/, replacement: "ous" }, + { rgx: /ation$/, replacement: "ate" }, + { rgx: /entli$/, replacement: "ent" }, + { rgx: /(.*)(alism|aliti)$/, replacement: "$1al" }, + { rgx: /fulli$/, replacement: "ful" }, + // Length 4. + { rgx: /alli$/, replacement: "al" }, + { rgx: /ator$/, replacement: "ate" }, + { rgx: /izer$/, replacement: "ize" }, + { rgx: /enci$/, replacement: "ence" }, + { rgx: /anci$/, replacement: "ance" }, + { rgx: /abli$/, replacement: "able" }, + // Length 3. + { rgx: /bli$/, replacement: "ble" }, + { rgx: /(.*)(l)(ogi)$/, replacement: "$1$2og" }, + // Length 2. + { rgx: /(.*)([cdeghkmnrt])(li)$/, replacement: "$1$2" } + ]; + var rgxSFXstep3 = /(ational|tional|alize|icate|iciti|ative|ical|ness|ful)$/; + var rgxSFXstep3WithReplacements = [ + { rgx: /ational$/, replacement: "ate" }, + { rgx: /tional$/, replacement: "tion" }, + { rgx: /alize$/, replacement: "al" }, + { rgx: /(.*)(icate|iciti|ical)$/, replacement: "$1ic" }, + { rgx: /(ness|ful)$/, replacement: "" } + ]; + var rgxSFXstep4 = /(ement|ance|ence|able|ible|ment|ant|ent|ism|ate|iti|ous|ive|ize|al|er|ic)$/; + var rgxSFXstep4Full = /(ement|ance|ence|able|ible|ment|ant|ent|ism|ate|iti|ous|ive|ize|ion|al|er|ic)$/; + var rgxSFXstep4ion = /(.*)(s|t)(ion)$/; + var exceptions1 = /* @__PURE__ */ Object.create(null); + exceptions1.skis = "ski"; + exceptions1.skies = "sky"; + exceptions1.dying = "die"; + exceptions1.lying = "lie"; + exceptions1.tying = "tie"; + exceptions1.idly = "idl"; + exceptions1.gently = "gentl"; + exceptions1.ugly = "ugli"; + exceptions1.early = "earli"; + exceptions1.only = "onli"; + exceptions1.singly = "singl"; + exceptions1.sky = "sky"; + exceptions1.news = "news"; + exceptions1.atlas = "atlas"; + exceptions1.cosmos = "cosmos"; + exceptions1.bias = "bias"; + exceptions1.andes = "andes"; + var rgxException2 = /^(inning|outing|canning|herring|proceed|exceed|succeed|earring)$/; + var prelude = function(s) { + return s.replace(/^y/, "3").replace(/([aeiou])y/, "$13").replace(/\’s$|\'s$/, "").replace(/s\’$|s\'$/, "").replace(/[\’\']$/, ""); + }; + var isShort = function(s) { + return /[^aeiouy][aeiouy][^aeiouywx3]$/.test(s) || /^[aeiouy][^aeiouy]{0,1}$/.test(s); + }; + var markRegions = function(s) { + var m1, m2; + var rgxRegions = /[aeiouy]+([^aeiouy]{1}.+)/; + m1 = rgxRegions.exec(s); + if (!m1) + return { r1: "", r2: "" }; + m1 = m1[1].slice(1); + m1 = /^(gener|commun|arsen)/.test(s) ? s.replace(/^(gener|commun|arsen)(.*)/, "$2") : m1; + m2 = rgxRegions.exec(m1); + if (!m2) + return { r1: m1, r2: "" }; + m2 = m2[1].slice(1); + return { r1: m1, r2: m2 }; + }; + var step1a = function(s) { + var wordPart; + if (rgxSFXsses.test(s)) + return s.replace(rgxSFXsses, "$1ss"); + if (rgxSFXiedORies2.test(s)) + return s.replace(rgxSFXiedORies2, "$1i"); + if (rgxSFXiedORies1.test(s)) + return s.replace(rgxSFXiedORies1, "$1ie"); + if (rgxSFXusORss.test(s)) + return s; + wordPart = s.replace(rgxSFXs, "$1"); + if (/[aeiuouy](.+)$/.test(wordPart)) + return s.replace(rgxSFXs, "$1"); + return s; + }; + var step1b = function(s) { + var rgn = markRegions(s), sd; + if (rgxSFXeedlyOReed.test(s)) + return rgxSFXeedlyOReed.test(rgn.r1) ? s.replace(rgxSFXeedlyOReed, "$1ee") : s; + if (rgxSFXedORedlyORinglyORing.test(s)) { + sd = s.replace(rgxSFXedORedlyORinglyORing, "$1"); + rgn = markRegions(sd); + return rgxSFXatORblORiz.test(sd) ? sd + "e" : ( + // or + rgxDouble.test(sd) ? sd.replace(/.$/, "") : ( + // or + isShort(sd) && rgn.r1 === "" ? sd + "e" : ( + // or + sd + ) + ) + ); + } + return s; + }; + var step1c = function(s) { + return s.replace(rgxSFXyOR3, "$1i"); + }; + var step2 = function(s) { + var i, imax, rgn = markRegions(s), us; + var match2 = s.match(rgxSFXstep2); + match2 = match2 === null ? "$$$$$" : match2[1]; + if (rgn.r1.indexOf(match2) !== -1) { + for (i = 0, imax = rgxSFXstep2WithReplacements.length; i < imax; i += 1) { + us = s.replace(rgxSFXstep2WithReplacements[i].rgx, rgxSFXstep2WithReplacements[i].replacement); + if (s !== us) + return us; + } + } + return s; + }; + var step3 = function(s) { + var i, imax, rgn = markRegions(s), us; + var match2 = s.match(rgxSFXstep3); + match2 = match2 === null ? "$$$$$" : match2[1]; + if (rgn.r1.indexOf(match2) !== -1) { + for (i = 0, imax = rgxSFXstep3WithReplacements.length; i < imax; i += 1) { + us = s.replace(rgxSFXstep3WithReplacements[i].rgx, rgxSFXstep3WithReplacements[i].replacement); + if (s !== us) + return us; + } + if (/ative/.test(rgn.r2)) + return s.replace(/ative$/, ""); + } + return s; + }; + var step4 = function(s) { + var rgn = markRegions(s); + var match2 = s.match(rgxSFXstep4Full); + match2 = match2 === null ? "$$$$$" : match2[1]; + if (rgxSFXstep4Full.test(s) && rgn.r2.indexOf(match2) !== -1) { + return rgxSFXstep4.test(s) ? s.replace(rgxSFXstep4, "") : rgxSFXstep4ion.test(s) ? s.replace(rgxSFXstep4ion, "$1$2") : s; + } + return s; + }; + var step5 = function(s) { + var preceding, rgn; + rgn = markRegions(s); + if (/e$/i.test(s)) { + preceding = s.replace(/e$/, ""); + return ( + // Found: delete if in R2, or in R1 and not preceded by a short syllable + /e/.test(rgn.r2) || /e/.test(rgn.r1) && !isShort(preceding) ? preceding : s + ); + } + if (/l$/.test(s)) { + rgn = markRegions(s); + return rgn.r2 && /l$/.test(rgn.r2) ? s.replace(/ll$/, "l") : s; + } + return s; + }; + var stem = function(word) { + var str = word.toLowerCase(); + if (str.length < 3) + return str; + if (exceptions1[str]) + return exceptions1[str]; + str = prelude(str); + str = step1a(str); + if (!rgxException2.test(str)) { + str = step1b(str); + str = step1c(str); + str = step2(str); + str = step3(str); + str = step4(str); + str = step5(str); + } + str = str.replace(/3/g, "y"); + return str; + }; + module2.exports = stem; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/helper-return-words-filter.js +var require_helper_return_words_filter = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/helper-return-words-filter.js"(exports2, module2) { + var returnWordsFilter = function(words, mappers) { + var mappedWords = words; + var givenMappers = mappers || []; + givenMappers.forEach(function(m) { + mappedWords = mappedWords.map(m); + }); + mappedWords = new Set(mappedWords); + var exclude = function(t) { + return !mappedWords.has(t); + }; + var set = function() { + return mappedWords; + }; + return { + set, + exclude + }; + }; + module2.exports = returnWordsFilter; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/helper-return-indexer.js +var require_helper_return_indexer = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/helper-return-indexer.js"(exports2, module2) { + var returnIndexer = function() { + var theIndex = /* @__PURE__ */ Object.create(null); + var methods = /* @__PURE__ */ Object.create(null); + var build = function(element, itsIndex) { + theIndex[element] = theIndex[element] || []; + theIndex[element].push(itsIndex); + return true; + }; + var result = function() { + return theIndex; + }; + methods.build = build; + methods.result = result; + return methods; + }; + module2.exports = returnIndexer; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/helper-return-quoted-text-extractor.js +var require_helper_return_quoted_text_extractor = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/helper-return-quoted-text-extractor.js"(exports2, module2) { + var returnQuotedTextExtractor = function(lq, rq) { + var i, lq1 = lq && typeof lq === "string" ? lq : '"', lqLen = lq1.length, regex = null, rgxStr = "", rq1 = rq && typeof rq === "string" ? rq : lq1, rqLen = rq1.length; + for (i = 0; i < lqLen; i += 1) + rgxStr += "\\" + lq1.charAt(i); + rgxStr += ".*?"; + for (i = 0; i < rqLen; i += 1) + rgxStr += "\\" + rq1.charAt(i); + regex = new RegExp(rgxStr, "g"); + return function(s) { + if (!s || typeof s !== "string") + return null; + var elements = [], matches = s.match(regex); + if (!matches || matches.length === 0) + return null; + for (var k = 0, kmax = matches.length; k < kmax; k += 1) { + elements.push(matches[k].substr(lqLen, matches[k].length - (rqLen + lqLen))); + } + return elements; + }; + }; + module2.exports = returnQuotedTextExtractor; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-lower-case.js +var require_string_lower_case = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-lower-case.js"(exports2, module2) { + var lowerCase = function(str) { + return str.toLowerCase(); + }; + module2.exports = lowerCase; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-upper-case.js +var require_string_upper_case = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-upper-case.js"(exports2, module2) { + var upperCase = function(str) { + return str.toUpperCase(); + }; + module2.exports = upperCase; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-trim.js +var require_string_trim = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-trim.js"(exports2, module2) { + var trim2 = function(str) { + return str.trim(); + }; + module2.exports = trim2; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/util_regexes.js +var require_util_regexes = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/util_regexes.js"(exports2, module2) { + var rgx = /* @__PURE__ */ Object.create(null); + rgx.punctuations = /[\’\'\‘\’\`\“\”\"\[\]\(\)\{\}\…\,\.\!\;\?\/\-\:]/ig; + rgx.eosPunctuations = /([\.\?\!])\s*(?=[a-z]|\s+\d)/gi; + rgx.splChars = /[\*\+\%\#\@\^\=\~\|\\]/ig; + rgx.elisionsSpl = /(\b)(it|let|that|who|what|here|there|when|where|why|how)(\'s)\b/gi; + rgx.elisions1 = /([a-z])(\'d|\'m)\b/gi; + rgx.elisions2 = /([a-z])(\'ll|\'ve|\'re|n\'t)\b/gi; + rgx.notElision = /([a-z])(n\'t)\b/gi; + rgx.cannot = /\b(can)(not)\b/gi; + rgx.spaces = /\s+/ig; + rgx.notSpace = /\S/g; + rgx.alphaSpace = /[a-z\s]/ig; + rgx.alphaNumericSpace = /[a-z0-9\s]/ig; + rgx.notAlpha = /[^a-z]/ig; + rgx.notAlphaNumeric = /[^a-z0-9]/ig; + rgx.nonWords = /\W+/ig; + rgx.negations = /^(never|none|not|no)$/i; + rgx.rocWords = /(?:\b[A-Z][A-Za-z]*\s*){2,}/g; + rgx.number = /[0-9]*\.[0-9]+e[\+\-]{1}[0-9]+|[0-9]*\.[0-9]+|[0-9]+/ig; + rgx.timeIn12HrAMPM = /(?:[0-9]|0[0-9]|1[0-2])((:?:[0-5][0-9])){0,1}\s?(?:[aApP][mM])/ig; + rgx.htmlTags = /(?:<[^>]*>)/g; + rgx.htmlEscSeq1 = /(?:&[a-z]{2,6};)/gi; + rgx.htmlEscSeq2 = /(?:&#[0-9]{2,4};)/gi; + rgx.mobileIndian = /^(0|\+91)?[789]\d{9}$/; + rgx.email = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; + rgx.separateNumAndText = /([0-9]*\.[0-9]+e[\+\-]{1}[0-9]+|[0-9]*\.[0-9]+|[0-9]+)[\s]*(.*)/i; + rgx.date = /(\d+)/ig; + rgx.nonNumPunctuations = /[\.\,\-](?=\D)/gi; + rgx.otherPunctuations = /[\’\'\‘\’\`\“\”\"\[\]\(\)\{\}\…\!\;\?\/\:]/ig; + rgx.currency = /[\$\£\¥\€]/ig; + module2.exports = rgx; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-remove-extra-spaces.js +var require_string_remove_extra_spaces = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-remove-extra-spaces.js"(exports2, module2) { + var rgx = require_util_regexes(); + var removeExtraSpaces = function(str) { + return str.trim().replace(rgx.spaces, " "); + }; + module2.exports = removeExtraSpaces; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-retain-alpha-nums.js +var require_string_retain_alpha_nums = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-retain-alpha-nums.js"(exports2, module2) { + var rgx = require_util_regexes(); + var retainAlphaNums = function(str) { + return str.replace(rgx.notAlphaNumeric, " ").replace(rgx.spaces, " ").trim(); + }; + module2.exports = retainAlphaNums; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/name_cleaner_regexes.js +var require_name_cleaner_regexes = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/name_cleaner_regexes.js"(exports2, module2) { + var degrees = [ + /\bm\.?\s*a\b/i, + /\bb\.?\s*a\b/i, + /\bb\.?\s*tech\b/i, + /\bm\.?\s*tech\b/i, + /\bb\.?\s*des\b/i, + /\bm\.?\s*des\b/i, + /\bm\.?\s*b\.?\s*a\b/i, + /\bm\.?\s*c\.?\s*a\b/i, + /\bb\.?\s*c\.?\s*a\b/i, + /\bl\.?\s*l\.?\s*b\b/i, + /\bl\.?\s*l\.?\s*m\b/i, + /\bm\.?\s*b\.?\s*b\.?\s*s\b/i, + /\bm\.?\s*d\b/i, + /\bd\.?\s*m\b/i, + /\bm\.?\s*s\b/i, + /\bd\.?\s*n\.?\s*b\b/i, + /\bd\.?\s*g\.?\s*o\b/i, + /\bd\.?\s*l\.?\s*o\b/i, + /\bb\.?\s*d\.?\s*s\b/i, + /\bb\.?\s*h\.?\s*m\.?\s*s\b/i, + /\bb\.?\s*a\.?\s*m\.?\s*s\b/i, + /\bf\.?\s*i\.?\s*c\.?\s*s\b/i, + /\bm\.?\s*n\.?\s*a\.?\s*m\.?\s*s\b/i, + /\bb\.?\s*e\.?\s*m\.?\s*s\b/i, + /\bd\.?\s*c\.?\s*h\b/i, + /\bm\.?\s*c\.?\s*h\b/i, + /\bf\.?\s*r\.?\s*c\.?\s*s\b/i, + /\bm\.?\s*r\.?\s*c\.?\s*p\b/i, + /\bf\.?\s*i\.?\s*a\.?\s*c\.?\s*m\b/i, + /\bf\.?\s*i\.?\s*m\.?\s*s\.?\s*a\b/i, + /\bp\.?\s*h\.?\s*d\b/i + ]; + var titleNames = ["mr", "mrs", "miss", "ms", "master", "er", "dr", "shri", "shrimati", "sir"]; + var titles = new RegExp("^(?:" + titleNames.join("|") + ")$", "i"); + module2.exports = { + degrees, + titles + }; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-extract-persons-name.js +var require_string_extract_persons_name = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-extract-persons-name.js"(exports2, module2) { + var rgx = require_util_regexes(); + var ncrgx = require_name_cleaner_regexes(); + var extractPersonsName = function(str) { + var indexes = ncrgx.degrees.map(function(r) { + var m = r.exec(str); + return m ? m.index : 999999; + }); + var sp = Math.min.apply(null, indexes); + var aeen = str.slice(0, sp).replace(rgx.notAlpha, " ").replace(rgx.spaces, " ").trim().split(" "); + while (aeen.length && ncrgx.titles.test(aeen[0])) + aeen.shift(); + return aeen.join(" "); + }; + module2.exports = extractPersonsName; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-extract-run-of-capital-words.js +var require_string_extract_run_of_capital_words = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-extract-run-of-capital-words.js"(exports2, module2) { + var rgx = require_util_regexes(); + var trim2 = require_string_trim(); + var extractRunOfCapitalWords = function(str) { + var m = str.match(rgx.rocWords); + return m ? m.map(trim2) : m; + }; + module2.exports = extractRunOfCapitalWords; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-remove-punctuations.js +var require_string_remove_punctuations = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-remove-punctuations.js"(exports2, module2) { + var rgx = require_util_regexes(); + var removePunctuations = function(str) { + return str.replace(rgx.punctuations, " "); + }; + module2.exports = removePunctuations; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-remove-spl-chars.js +var require_string_remove_spl_chars = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-remove-spl-chars.js"(exports2, module2) { + var rgx = require_util_regexes(); + var removeSplChars = function(str) { + return str.replace(rgx.splChars, " "); + }; + module2.exports = removeSplChars; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-remove-html-tags.js +var require_string_remove_html_tags = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-remove-html-tags.js"(exports2, module2) { + var rgx = require_util_regexes(); + var removeHTMLTags = function(str) { + return str.replace(rgx.htmlTags, " ").replace(rgx.htmlEscSeq1, " ").replace(rgx.htmlEscSeq2, " "); + }; + module2.exports = removeHTMLTags; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-remove-elisions.js +var require_string_remove_elisions = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-remove-elisions.js"(exports2, module2) { + var rgx = require_util_regexes(); + var removeElisions = function(str) { + return str.replace(rgx.elisionsSpl, "$2").replace(rgx.elisions1, "$1").replace(rgx.elisions2, "$1"); + }; + module2.exports = removeElisions; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-split-elisions.js +var require_string_split_elisions = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-split-elisions.js"(exports2, module2) { + var rgx = require_util_regexes(); + var splitElisions = function(str) { + return str.replace(rgx.elisionsSpl, "$2 $3").replace(rgx.elisions1, "$1 $2").replace(rgx.elisions2, "$1 $2"); + }; + module2.exports = splitElisions; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-amplify-not-elision.js +var require_string_amplify_not_elision = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-amplify-not-elision.js"(exports2, module2) { + var rgx = require_util_regexes(); + var amplifyNotElision = function(str) { + return str.replace(rgx.notElision, "$1 not"); + }; + module2.exports = amplifyNotElision; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-marker.js +var require_string_marker = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-marker.js"(exports2, module2) { + var marker = function(str) { + var uniqChars = /* @__PURE__ */ Object.create(null); + for (var i = 0, imax = str.length; i < imax; i += 1) { + uniqChars[str[i]] = true; + } + return Object.keys(uniqChars).sort().join(""); + }; + module2.exports = marker; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-soc.js +var require_string_soc = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-soc.js"(exports2, module2) { + var setOfChars = function(str, ifn, idx) { + var cset = new Set(str); + if (typeof ifn === "function") { + ifn(str[0], idx); + } + return cset; + }; + module2.exports = setOfChars; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-ngram.js +var require_string_ngram = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-ngram.js"(exports2, module2) { + var ngram = function(str, size) { + var ng = size || 2, ngramz = [], tg; + for (var i = 0, imax = str.length; i < imax; i += 1) { + tg = str.slice(i, i + ng); + if (tg.length === ng) + ngramz.push(tg); + } + return ngramz; + }; + module2.exports = ngram; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-edge-ngrams.js +var require_string_edge_ngrams = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-edge-ngrams.js"(exports2, module2) { + var edgeNGrams = function(str, min, max, delta, ifn, idx) { + var dlta = delta || 2, eg, egs = [], imax = Math.min(max || 8, str.length) + 1, start4 = min || 2; + for (var i = start4; i < imax; i += dlta) { + eg = str.slice(0, i); + egs.push(eg); + if (typeof ifn === "function") { + ifn(eg, idx); + } + } + return egs; + }; + module2.exports = edgeNGrams; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-bong.js +var require_string_bong = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-bong.js"(exports2, module2) { + var bagOfNGrams = function(str, size, ifn, idx) { + var ng = size || 2, ngBOW = /* @__PURE__ */ Object.create(null), tg; + for (var i = 0, imax = str.length; i < imax; i += 1) { + tg = str.slice(i, i + ng); + if (tg.length === ng) { + if (typeof ifn === "function" && !ngBOW[tg]) { + ifn(tg, idx); + } + ngBOW[tg] = 1 + (ngBOW[tg] || 0); + } + } + return ngBOW; + }; + module2.exports = bagOfNGrams; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-song.js +var require_string_song = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-song.js"(exports2, module2) { + var setOfNGrams = function(str, size, ifn, idx) { + var ng = size || 2, ngSet = /* @__PURE__ */ new Set(), tg; + for (var i = 0, imax = str.length; i < imax; i += 1) { + tg = str.slice(i, i + ng); + if (tg.length === ng) { + if (typeof ifn === "function" && !ngSet.has(tg)) { + ifn(tg, idx); + } + ngSet.add(tg); + } + } + return ngSet; + }; + module2.exports = setOfNGrams; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/constants.js +var require_constants4 = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/constants.js"(exports2, module2) { + var consts = /* @__PURE__ */ Object.create(null); + consts.UNK = 0; + consts.bits4PrecedingSpace = 16; + consts.bits4lemma = 20; + consts.posMask = 66060288; + consts.psMask = 65535; + consts.xnMask = 1073676288; + consts.lemmaMask = 1048575; + consts.tkSize = 4; + consts.xpSize = 4; + consts.xcMask = 31; + consts.bits4xpPointer = 14; + consts.negationFlag = Math.pow(2, 31); + module2.exports = consts; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/dd-wrapper.js +var require_dd_wrapper = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/dd-wrapper.js"(exports2, module2) { + var constants = require_constants4(); + var bits4PrecedingSpace = constants.bits4PrecedingSpace; + var xpSize = constants.xpSize; + var bits4lemma = constants.bits4lemma; + var UNK = constants.UNK; + var docDataWrapper = function(data) { + var cache = data.cache; + var tokens = data.tokens; + var methods = /* @__PURE__ */ Object.create(null); + var addToken = function(text, category, precedingSpaces) { + tokens.push(cache.add(text, category), precedingSpaces, 0, 0); + return true; + }; + var addTokenIfInCache = function(text, precedingSpaces) { + var tokenIndex = cache.lookup(text); + var ps; + var lemma, pos; + if (tokenIndex === null) + return UNK; + if (tokenIndex.length === 1) { + tokens.push(tokenIndex[0], precedingSpaces, 0, 0); + } else { + for (let k = 0; k < tokenIndex.length; k += xpSize) { + ps = k === 0 ? precedingSpaces : 0; + ps |= tokenIndex[k + 1] << bits4PrecedingSpace; + lemma = tokenIndex[k + 2]; + pos = tokenIndex[k + 3]; + tokens.push(tokenIndex[k], ps, lemma | pos << bits4lemma, 0); + } + } + return 99; + }; + var isLexeme = function(text) { + return cache.lookup(text); + }; + var clean = function() { + tokens = null; + cache = null; + }; + methods._addToken = addToken; + methods._addTokenIfInCache = addTokenIfInCache; + methods.isLexeme = isLexeme; + methods.clean = clean; + return methods; + }; + module2.exports = docDataWrapper; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/locate.js +var require_locate = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/locate.js"(exports2, module2) { + var locate = function(token, spans) { + var minIndex = 0; + var maxIndex = spans.length - 1; + var currIndex; + var leftToken; + var rightToken; + var edge = -1; + var sf = 0.5; + while (minIndex <= maxIndex) { + currIndex = (minIndex + maxIndex) / 2 | 0; + leftToken = spans[currIndex][0]; + rightToken = spans[currIndex][1]; + if (token > rightToken) { + minIndex = currIndex + 1; + edge = currIndex + sf; + } else if (token < leftToken) { + maxIndex = currIndex - 1; + edge = currIndex - sf; + } else + return currIndex; + } + return edge; + }; + module2.exports = locate; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/contained-entities.js +var require_contained_entities = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/contained-entities.js"(exports2, module2) { + var locate = require_locate(); + var containedEntities = function(entities, sentenceStart, sentenceEnd) { + var left = locate(sentenceStart, entities); + var right = locate(sentenceEnd, entities); + var maxIndex = entities.length - 1; + var contained = []; + var kl, kr; + var i; + if (left < 0 && right < 0 || left > maxIndex && right > maxIndex) { + return contained; + } + kl = left < 0 ? 0 : Math.ceil(left); + if (left === right && kl !== left) { + return contained; + } + kr = Math.floor(right); + for (i = kl; i <= kr; i += 1) { + contained.push(i); + } + return contained; + }; + module2.exports = containedEntities; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/search.js +var require_search = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/search.js"(exports2, module2) { + var search = function(token, spans) { + var minIndex = 0; + var maxIndex = spans.length - 1; + var currIndex; + var leftToken; + var rightToken; + while (minIndex <= maxIndex) { + currIndex = (minIndex + maxIndex) / 2 | 0; + leftToken = spans[currIndex][0]; + rightToken = spans[currIndex][1]; + if (token > rightToken) { + minIndex = currIndex + 1; + } else if (token < leftToken) { + maxIndex = currIndex - 1; + } else + return currIndex; + } + return null; + }; + module2.exports = search; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/get-parent-item.js +var require_get_parent_item = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/get-parent-item.js"(exports2, module2) { + var search = require_search(); + var getParentItem = function(currItemIndex, parentCollection, parentItemFn) { + var k = search(currItemIndex, parentCollection); + if (k === null) + return void 0; + return parentItemFn(k); + }; + module2.exports = getParentItem; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-get-item.js +var require_col_get_item = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-get-item.js"(exports2, module2) { + var colGetItemAt = function(k, start4, end, itemFn) { + var ak = k + start4; + return ak < start4 || ak > end ? void 0 : itemFn(ak); + }; + module2.exports = colGetItemAt; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/sel-get-item.js +var require_sel_get_item = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/sel-get-item.js"(exports2, module2) { + var selGetItemAt = function(k, selection, itemFn) { + return k < 0 || k >= selection.length ? void 0 : itemFn(selection[k]); + }; + module2.exports = selGetItemAt; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-each.js +var require_col_each = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-each.js"(exports2, module2) { + var colEach = function(f, start4, end, itemFn) { + for (let k = start4; k <= end; k += 1) { + f(itemFn(k), k - start4); + } + }; + module2.exports = colEach; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/sel-each.js +var require_sel_each = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/sel-each.js"(exports2, module2) { + var selEach = function(f, selection, itemFn) { + for (let k = 0; k < selection.length; k += 1) { + f(itemFn(selection[k]), k); + } + }; + module2.exports = selEach; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-filter.js +var require_col_filter = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-filter.js"(exports2, module2) { + var colFilter = function(f, start4, end, itemFn, colSelectedFn) { + var filtered = []; + for (let k = start4; k <= end; k += 1) { + if (f(itemFn(k), k - start4)) + filtered.push(k); + } + return colSelectedFn(filtered); + }; + module2.exports = colFilter; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/sel-filter.js +var require_sel_filter = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/sel-filter.js"(exports2, module2) { + var selFilter = function(f, selection, itemFn, colSelectedFn) { + var filtered = []; + for (let k = 0; k < selection.length; k += 1) { + if (f(itemFn(selection[k]), k)) + filtered.push(selection[k]); + } + return colSelectedFn(filtered); + }; + module2.exports = selFilter; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/sort4FT.js +var require_sort4FT = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/sort4FT.js"(exports2, module2) { + module2.exports = (a, b) => { + if (b[1] > a[1]) { + return 1; + } else if (b[1] < a[1]) { + return -1; + } else if (a[0] > b[0]) + return 1; + return -1; + }; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/its.js +var require_its = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/its.js"(exports2, module2) { + var sort4FT = require_sort4FT(); + var constants = require_constants4(); + var caseMap = ["other", "lowerCase", "upperCase", "titleCase"]; + var tkSize = constants.tkSize; + var bits4lemma = constants.bits4lemma; + var posMask = constants.posMask; + var psMask = constants.psMask; + var lemmaMask = constants.lemmaMask; + var its = /* @__PURE__ */ Object.create(null); + its.case = function(index, tokens, cache) { + return caseMap[cache.property(tokens[index * tkSize], "lutCase")]; + }; + its.uniqueId = function(index, tokens) { + return tokens[index * tkSize]; + }; + its.negationFlag = function(index, tokens) { + return tokens[index * tkSize + 3] >= constants.negationFlag; + }; + its.normal = function(index, tokens, cache) { + return tokens[index * tkSize + 1] > 65535 ? cache.value(cache.nox(tokens[index * tkSize + 1])) : cache.value(cache.normal(tokens[index * tkSize])); + }; + its.contractionFlag = function(index, tokens) { + return tokens[index * tkSize + 1] > 65535; + }; + its.pos = function(index, tokens, cache) { + return cache.valueOf("pos", (tokens[index * tkSize + 2] & posMask) >>> bits4lemma); + }; + its.precedingSpaces = function(index, tokens) { + var token = tokens[index * tkSize + 1]; + var count = token & psMask; + return "".padEnd(count); + }; + its.prefix = function(index, tokens, cache) { + return cache.property(tokens[index * tkSize], "prefix"); + }; + its.shape = function(index, tokens, cache) { + return cache.property(tokens[index * tkSize], "shape"); + }; + its.stopWordFlag = function(index, tokens, cache) { + var normal = tokens[index * tkSize + 1] > 65535 ? cache.nox(tokens[index * tkSize + 1]) : cache.normal(tokens[index * tkSize]); + return cache.property(normal, "isStopWord") === 1; + }; + its.abbrevFlag = function(index, tokens, cache) { + return cache.property(tokens[index * tkSize], "isAbbrev") === 1; + }; + its.suffix = function(index, tokens, cache) { + return cache.property(tokens[index * tkSize], "suffix"); + }; + its.type = function(index, tokens, cache) { + return cache.property(tokens[index * tkSize], "tokenType"); + }; + its.value = function(index, tokens, cache) { + return cache.value(tokens[index * tkSize]); + }; + its.stem = function(index, tokens, cache, addons) { + return addons.stem(cache.value(tokens[index * tkSize])); + }; + its.lemma = function(index, tokens, cache, addons) { + if (tokens[index * tkSize + 1] > 65535) { + return cache.value(tokens[index * tkSize + 2] & lemmaMask); + } + const mappedIdx = cache.mappedSpelling(tokens[index * tkSize]); + if (cache.property(mappedIdx, "isSLemma") === 1) { + return cache.value(cache.property(mappedIdx, "lemma")); + } + const pos = its.pos(index, tokens, cache); + const value = cache.value(cache.normal(tokens[index * tkSize])); + return addons.lemmatize(value, pos, cache); + }; + its.vector = function() { + return new Array(100).fill(0); + }; + its.detail = function() { + return true; + }; + its.markedUpText = function(index, tokens, cache) { + return its.value(index, tokens, cache); + }; + its.span = function(spanItem) { + return spanItem.slice(0, 2); + }; + its.sentiment = function(spanItem) { + return spanItem[3]; + }; + its.readabilityStats = function(rdd, addons) { + return addons.readabilityStats(rdd, its); + }; + its.terms = function(tf2, idf2, terms) { + return terms; + }; + its.docTermMatrix = function(tf2, idf2, terms) { + const dtm = new Array(tf2.length); + for (let id = 0; id < tf2.length; id += 1) { + dtm[id] = []; + for (let i = 0; i < terms.length; i += 1) { + dtm[id].push(tf2[id][terms[i]] || 0); + } + } + return dtm; + }; + its.docBOWArray = function(tf2) { + return tf2; + }; + its.bow = function(tf2) { + return tf2; + }; + its.idf = function(tf2, idf2) { + var arr = []; + for (const t in idf2) { + arr.push([t, idf2[t]]); + } + return arr.sort(sort4FT); + }; + its.tf = function(tf2) { + const arr = []; + for (const t in tf2) { + arr.push([t, tf2[t]]); + } + return arr.sort(sort4FT); + }; + its.modelJSON = function(tf2, idf2, terms, docId, sumOfAllDLs) { + return JSON.stringify({ + uid: "WinkNLP-BM25Vectorizer-Model/1.0.0", + tf: tf2, + idf: idf2, + terms, + docId, + sumOfAllDLs + }); + }; + module2.exports = its; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/contained-markings.js +var require_contained_markings = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/contained-markings.js"(exports2, module2) { + var locate = require_locate(); + var containedMarkings = function(markings, start4, end) { + if (markings === void 0 || start4 === void 0 || end === void 0) { + return null; + } + var left = locate(start4, markings); + var right = locate(end, markings); + var maxIndex = markings.length - 1; + var kl, kr; + if (left < 0 && right < 0 || left > maxIndex && right > maxIndex) { + return null; + } + kl = left < 0 ? 0 : Math.ceil(left); + if (left === right && kl !== left) { + return null; + } + kr = Math.floor(right); + if (markings[kl][0] < start4) + kl += 1; + if (markings[kr][1] > end) + kr -= 1; + if (kl > kr) { + return null; + } + var range = /* @__PURE__ */ Object.create(null); + range.left = kl; + range.right = kr; + return range; + }; + module2.exports = containedMarkings; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/as.js +var require_as = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/as.js"(exports2, module2) { + var sort4FT = require_sort4FT(); + var containedMarkings = require_contained_markings(); + var as = /* @__PURE__ */ Object.create(null); + as.array = function(tokens) { + return tokens; + }; + as.set = function(tokens) { + return new Set(tokens); + }; + as.bow = function(tokens) { + var bow = /* @__PURE__ */ Object.create(null); + var t; + for (let i = 0; i < tokens.length; i += 1) { + t = tokens[i]; + bow[t] = 1 + (bow[t] || 0); + } + return bow; + }; + as.freqTable = function(tokens) { + var bow = as.bow(tokens); + var keys = Object.keys(bow); + var length = keys.length; + var table = new Array(length); + for (var i = 0; i < length; i += 1) { + table[i] = [keys[i], bow[keys[i]]]; + } + return table.sort(sort4FT); + }; + as.bigrams = function(tokens) { + var bgs = []; + var i, imax; + for (i = 0, imax = tokens.length - 1; i < imax; i += 1) { + bgs.push([tokens[i], tokens[i + 1]]); + } + return bgs; + }; + as.unique = function(tokens) { + return Array.from(new Set(tokens)); + }; + as.text = function(twps) { + return twps.join("").trim(); + }; + as.markedUpText = function(twps, markings, start4, end) { + var offset = start4 * 2; + var range = containedMarkings(markings, start4, end); + if (range === null) { + return twps.join("").trim(); + } + for (let i = range.left; i <= range.right; i += 1) { + const first = markings[i][0] * 2 - offset + 1; + const last = markings[i][1] * 2 - offset + 1; + const beginMarker = markings[i][2] === void 0 ? "" : markings[i][2]; + const endMarker = markings[i][3] === void 0 ? "" : markings[i][3]; + twps[first] = beginMarker + twps[first]; + twps[last] += endMarker; + } + return twps.join("").trim(); + }; + module2.exports = as; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/allowed.js +var require_allowed = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/allowed.js"(exports2, module2) { + var its = require_its(); + var as = require_as(); + var allowed = /* @__PURE__ */ Object.create(null); + allowed.its4token = /* @__PURE__ */ new Set([ + its.case, + its.uniqueId, + its.negationFlag, + its.normal, + its.contractionFlag, + its.pos, + its.precedingSpaces, + its.prefix, + its.shape, + its.stopWordFlag, + its.abbrevFlag, + its.suffix, + its.type, + its.value, + its.stem, + its.lemma + ]); + allowed.its4tokens = allowed.its4token; + allowed.its4selTokens = allowed.its4token; + allowed.as4tokens = /* @__PURE__ */ new Set([ + as.array, + as.set, + as.text, + as.bow, + as.freqTable, + as.bigrams, + as.unique, + as.markedUpText + ]); + allowed.as4selTokens = /* @__PURE__ */ new Set([ + as.array, + as.set, + as.text, + as.bow, + as.freqTable, + as.bigrams, + as.unique + ]); + allowed.its4entity = /* @__PURE__ */ new Set([ + its.value, + its.normal, + its.type, + its.detail, + its.span + ]); + allowed.as4entities = /* @__PURE__ */ new Set([ + as.array, + as.set, + as.bow, + as.freqTable, + as.unique + ]); + allowed.as4selEntities = allowed.as4entities; + allowed.its4sentence = /* @__PURE__ */ new Set([ + its.value, + its.normal, + its.span, + its.markedUpText, + its.negationFlag, + its.sentiment, + its.stem + ]); + allowed.its4document = /* @__PURE__ */ new Set([ + its.value, + its.normal, + its.span, + its.markedUpText, + its.negationFlag, + its.sentiment, + its.stem, + its.readabilityStats + ]); + module2.exports = allowed; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/itm-token-out.js +var require_itm_token_out = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/itm-token-out.js"(exports2, module2) { + var its = require_its(); + var allowed = require_allowed(); + var itmTokenOut = function(index, rdd, itsf, addons) { + if (itsf === its.vector) { + return its.vector(index, rdd, addons); + } + var f = allowed.its4token.has(itsf) ? itsf : its.value; + return f(index, rdd.tokens, rdd.cache, addons); + }; + module2.exports = itmTokenOut; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-tokens-out.js +var require_col_tokens_out = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-tokens-out.js"(exports2, module2) { + var its = require_its(); + var as = require_as(); + var allowed = require_allowed(); + var constants = require_constants4(); + var tkSize = constants.tkSize; + var psMask = constants.psMask; + var colTokensOut = function(start4, end, rdd, itsf, asf, addons) { + if (itsf === its.vector) { + return its.vector(start4, end, rdd.tokens, addons); + } + var mappedTkns = []; + var itsfn = itsf && allowed.its4tokens.has(itsf) ? itsf : its.value; + var asfn = asf && allowed.as4tokens.has(asf) ? asf : as.array; + if (asfn === as.text || asfn === as.markedUpText) { + for (let i = start4; i <= end; i += 1) { + mappedTkns.push("".padEnd(rdd.tokens[i * tkSize + 1] & psMask), itsf(i, rdd.tokens, rdd.cache, addons)); + } + } else { + for (let i = start4; i <= end; i += 1) { + mappedTkns.push(itsfn(i, rdd.tokens, rdd.cache, addons)); + } + } + return asfn(mappedTkns, rdd.markings, start4, end); + }; + module2.exports = colTokensOut; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/sel-tokens-out.js +var require_sel_tokens_out = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/sel-tokens-out.js"(exports2, module2) { + var its = require_its(); + var as = require_as(); + var allowed = require_allowed(); + var constants = require_constants4(); + var tkSize = constants.tkSize; + var psMask = constants.psMask; + var selTokensOut = function(selTokens, rdd, itsf, asf, addons) { + if (itsf === its.vector) { + return its.vector(selTokens, rdd.tokens, addons); + } + var mappedTkns = []; + var itsfn = itsf && allowed.its4selTokens.has(itsf) ? itsf : its.value; + var asfn = asf && allowed.as4selTokens.has(asf) ? asf : as.array; + if (asfn === as.text) { + for (let i = 0; i < selTokens.length; i += 1) { + mappedTkns.push("".padEnd(rdd.tokens[selTokens[i] * tkSize + 1] & psMask), itsf(selTokens[i], rdd.tokens, rdd.cache, addons)); + } + } else { + for (let i = 0; i < selTokens.length; i += 1) { + mappedTkns.push(itsfn(selTokens[i], rdd.tokens, rdd.cache, addons)); + } + } + return asfn(mappedTkns); + }; + module2.exports = selTokensOut; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/itm-entity-out.js +var require_itm_entity_out = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/itm-entity-out.js"(exports2, module2) { + var its = require_its(); + var as = require_as(); + var allowed = require_allowed(); + var colTokensOut = require_col_tokens_out(); + var itmEntityOut = function(index, entities, rdd, itsf) { + var entity = entities[index]; + var itsfn = itsf && allowed.its4entity.has(itsf) ? itsf : its.value; + var detail; + if (itsfn === its.detail) { + detail = /* @__PURE__ */ Object.create(null); + detail.value = colTokensOut(entity[0], entity[1], rdd, its.value, as.text); + detail.type = entity[2]; + return detail; + } + if (itsfn === its.type) { + return entity[2]; + } + if (itsfn === its.span) { + return its.span(entity); + } + return colTokensOut(entity[0], entity[1], rdd, itsfn, as.text); + }; + module2.exports = itmEntityOut; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-entities-out.js +var require_col_entities_out = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-entities-out.js"(exports2, module2) { + var its = require_its(); + var as = require_as(); + var allowed = require_allowed(); + var itmEntityOut = require_itm_entity_out(); + var colEntitiesOut = function(entities, rdd, itsf, asf) { + var ents = []; + for (let i = 0; i < entities.length; i += 1) { + ents.push(itmEntityOut(i, entities, rdd, itsf)); + } + var asfn = allowed.as4entities.has(asf) && itsf !== its.detail && itsf !== its.span ? asf : as.array; + return asfn(ents); + }; + module2.exports = colEntitiesOut; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/sel-entities-out.js +var require_sel_entities_out = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/sel-entities-out.js"(exports2, module2) { + var its = require_its(); + var as = require_as(); + var allowed = require_allowed(); + var itmEntityOut = require_itm_entity_out(); + var selEntitiesOut = function(selEntities, entities, rdd, itsf, asf) { + var ents = []; + for (let i = 0; i < selEntities.length; i += 1) { + ents.push(itmEntityOut(selEntities[i], entities, rdd, itsf)); + } + var asfn = allowed.as4selEntities.has(asf) && itsf !== its.detail && itsf !== its.span ? asf : as.array; + return asfn(ents); + }; + module2.exports = selEntitiesOut; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/itm-sentence-out.js +var require_itm_sentence_out = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/itm-sentence-out.js"(exports2, module2) { + var its = require_its(); + var as = require_as(); + var allowed = require_allowed(); + var colTokensOut = require_col_tokens_out(); + var itmSentenceOut = function(index, rdd, itsf, addons) { + var sentence = rdd.sentences[index]; + if (itsf === its.vector) { + return its.vector(sentence, rdd, addons); + } + var itsfn = itsf && allowed.its4sentence.has(itsf) ? itsf : its.value; + if (itsfn === its.span || itsfn === its.sentiment) { + return itsfn(sentence); + } + if (itsfn === its.negationFlag) { + return sentence[2] === 1; + } + var asfn = itsfn === its.markedUpText ? as.markedUpText : as.text; + return colTokensOut(sentence[0], sentence[1], rdd, itsfn, asfn, addons); + }; + module2.exports = itmSentenceOut; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-sentences-out.js +var require_col_sentences_out = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/col-sentences-out.js"(exports2, module2) { + var itmSentenceOut = require_itm_sentence_out(); + var colSentencesOut = function(rdd, itsf, addons) { + var sents = []; + for (let i = 0; i < rdd.sentences.length; i += 1) { + sents.push(itmSentenceOut(i, rdd, itsf, addons)); + } + return sents; + }; + module2.exports = colSentencesOut; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/itm-document-out.js +var require_itm_document_out = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/itm-document-out.js"(exports2, module2) { + var its = require_its(); + var as = require_as(); + var allowed = require_allowed(); + var colTokensOut = require_col_tokens_out(); + var itmDocumentOut = function(rdd, itsf, addons) { + var document2 = rdd.document; + if (itsf === its.vector) { + return its.vector(document2, rdd, addons); + } + var itsfn = itsf && allowed.its4document.has(itsf) ? itsf : its.value; + if (itsfn === its.span || itsfn === its.sentiment) { + return itsfn(document2); + } + if (itsfn === its.negationFlag) { + return document2[2] === 1; + } + if (itsfn === its.readabilityStats) { + return itsfn(rdd, addons); + } + var asfn = itsfn === its.markedUpText ? as.markedUpText : as.text; + return colTokensOut(document2[0], document2[1], rdd, itsfn, asfn, addons); + }; + module2.exports = itmDocumentOut; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/print-tokens.js +var require_print_tokens = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/api/print-tokens.js"(exports2, module2) { + var constants = require_constants4(); + var tkSize = constants.tkSize; + var psMask = constants.psMask; + var bits4lemma = constants.bits4lemma; + var posMask = constants.posMask; + var printTokens = function(tokens, cache) { + var imax = tokens.length; + var i, j; + var t, tv; + var pad = " "; + var str; + var props = ["prefix", "suffix", "shape", "lutCase", "nerHint", "tokenType"]; + console.log("\n\ntoken p-spaces prefix suffix shape case nerHint type normal/pos"); + console.log("\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014"); + for (i = 0; i < imax; i += tkSize) { + str = ""; + t = tokens[i]; + tv = cache.value(t); + str += (JSON.stringify(tv).replace(/"/g, "") + pad).slice(0, 18); + str += ((tokens[i + 1] & psMask) + pad).slice(0, 4); + for (j = 0; j < props.length; j += 1) { + str += (JSON.stringify(cache.property(t, props[j])).replace(/"/g, "") + pad).slice(0, 8); + } + if (tokens[i + 1] > 65535) { + str += " " + cache.value(cache.nox(tokens[i + 1])); + str += " / " + cache.valueOf("pos", (tokens[i + 2] & posMask) >>> bits4lemma); + } else { + str += " " + JSON.stringify(cache.value(cache.normal(t))).replace(/"/g, ""); + str += " / " + cache.property(t, "pos"); + } + console.log(str); + str += " / " + cache.valueOf("pos", (tokens[i + 2] & posMask) >>> bits4lemma); + } + console.log("\n\ntotal number of tokens: %d", tokens.length / tkSize); + }; + module2.exports = printTokens; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/doc-v2.js +var require_doc_v2 = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/doc-v2.js"(exports2, module2) { + var containedEntities = require_contained_entities(); + var getParentItem = require_get_parent_item(); + var colGetItemAt = require_col_get_item(); + var selGetItemAt = require_sel_get_item(); + var colEach = require_col_each(); + var selEach = require_sel_each(); + var colFilter = require_col_filter(); + var selFilter = require_sel_filter(); + var itmTokenOut = require_itm_token_out(); + var colTokensOut = require_col_tokens_out(); + var selTokensOut = require_sel_tokens_out(); + var itmEntityOut = require_itm_entity_out(); + var colEntitiesOut = require_col_entities_out(); + var selEntitiesOut = require_sel_entities_out(); + var itmSentenceOut = require_itm_sentence_out(); + var colSentencesOut = require_col_sentences_out(); + var itmDocumentOut = require_itm_document_out(); + var printTokens = require_print_tokens(); + var doc = function(docData, addons) { + var cache = docData.cache; + var tokens = docData.tokens; + var entities = docData.entities; + var customEntities = docData.customEntities; + var sentences = docData.sentences; + var markings = docData.markings; + var colEntities; + var colCustomEntities; + var colTokens; + var colSentences; + var colSelectedEntities; + var colSelectedCustomEntities; + var colSelectedTokens; + var itemToken; + var itemEntity; + var itemCustomEntity; + var itemSentence; + var isLexeme = cache.lookup; + var methods = /* @__PURE__ */ Object.create(null); + itemToken = function(index) { + var api = /* @__PURE__ */ Object.create(null); + api.parentDocument = () => methods; + api.parentEntity = () => getParentItem(index, entities, itemEntity); + api.parentCustomEntity = () => getParentItem(index, customEntities, itemCustomEntity); + api.markup = (beginMarker, endMarker) => markings.push([index, index, beginMarker, endMarker]); + api.out = (f) => itmTokenOut(index, docData, f, addons); + api.parentSentence = () => getParentItem(index, sentences, itemSentence); + api.index = () => index; + return api; + }; + colSelectedTokens = function(selectedTokens) { + var api = /* @__PURE__ */ Object.create(null); + api.each = (f) => selEach(f, selectedTokens, itemToken); + api.filter = (f) => selFilter(f, selectedTokens, itemToken, colSelectedTokens); + api.itemAt = (k) => selGetItemAt(k, selectedTokens, itemToken); + api.length = () => selectedTokens.length; + api.out = (f, g) => selTokensOut(selectedTokens, docData, f, g, addons); + return api; + }; + colTokens = function(start4, end) { + return function() { + var api = /* @__PURE__ */ Object.create(null); + api.each = (f) => colEach(f, start4, end, itemToken); + api.filter = (f) => colFilter(f, start4, end, itemToken, colSelectedTokens); + api.itemAt = (k) => colGetItemAt(k, start4, end, itemToken); + api.length = () => end - start4 + 1; + api.out = (f, g) => colTokensOut(start4, end, docData, f, g, addons); + return api; + }; + }; + itemEntity = function(index) { + var api = /* @__PURE__ */ Object.create(null); + api.parentDocument = () => methods; + api.markup = (beginMarker, endMarker) => markings.push([entities[index][0], entities[index][1], beginMarker, endMarker]); + api.out = (f) => itmEntityOut(index, entities, docData, f); + api.parentSentence = () => getParentItem(entities[index][0], sentences, itemSentence); + api.tokens = colTokens(entities[index][0], entities[index][1]); + api.index = () => index; + return api; + }; + colSelectedEntities = function(selectedEntities) { + var api = /* @__PURE__ */ Object.create(null); + api.each = (f) => selEach(f, selectedEntities, itemEntity); + api.filter = (f) => selFilter(f, selectedEntities, itemEntity, colSelectedEntities); + api.itemAt = (k) => selGetItemAt(k, selectedEntities, itemEntity); + api.length = () => selectedEntities.length; + api.out = (f, g) => selEntitiesOut(selectedEntities, entities, docData, f, g); + return api; + }; + colEntities = function() { + var api = /* @__PURE__ */ Object.create(null); + api.each = (f) => colEach(f, 0, entities.length - 1, itemEntity); + api.filter = (f) => colFilter(f, 0, entities.length - 1, itemEntity, colSelectedEntities); + api.itemAt = (k) => colGetItemAt(k, 0, entities.length - 1, itemEntity); + api.length = () => entities.length; + api.out = (f, g) => colEntitiesOut(entities, docData, f, g); + return api; + }; + itemCustomEntity = function(index) { + var api = /* @__PURE__ */ Object.create(null); + api.parentDocument = () => methods; + api.markup = (beginMarker, endMarker) => markings.push([customEntities[index][0], customEntities[index][1], beginMarker, endMarker]); + api.out = (f) => itmEntityOut(index, customEntities, docData, f); + api.parentSentence = () => getParentItem(customEntities[index][0], sentences, itemSentence); + api.tokens = colTokens(customEntities[index][0], customEntities[index][1]); + api.index = () => index; + return api; + }; + colSelectedCustomEntities = function(selectedCustomEntities) { + var api = /* @__PURE__ */ Object.create(null); + api.each = (f) => selEach(f, selectedCustomEntities, itemCustomEntity); + api.filter = (f) => selFilter(f, selectedCustomEntities, itemCustomEntity, colSelectedCustomEntities); + api.itemAt = (k) => selGetItemAt(k, selectedCustomEntities, itemCustomEntity); + api.length = () => selectedCustomEntities.length; + api.out = (f, g) => selEntitiesOut(selectedCustomEntities, customEntities, docData, f, g); + return api; + }; + colCustomEntities = function() { + var api = /* @__PURE__ */ Object.create(null); + api.each = (f) => colEach(f, 0, customEntities.length - 1, itemCustomEntity); + api.filter = (f) => colFilter(f, 0, customEntities.length - 1, itemCustomEntity, colSelectedCustomEntities); + api.itemAt = (k) => colGetItemAt(k, 0, customEntities.length - 1, itemCustomEntity); + api.length = () => customEntities.length; + api.out = (f, g) => colEntitiesOut(customEntities, docData, f, g); + return api; + }; + itemSentence = function(index) { + var api = /* @__PURE__ */ Object.create(null); + api.parentDocument = () => methods; + api.markup = (beginMarker, endMarker) => markings.push([sentences[index][0], sentences[index][1], beginMarker, endMarker]); + api.out = (f) => itmSentenceOut(index, docData, f, addons); + api.entities = () => colSelectedEntities(containedEntities(entities, sentences[index][0], sentences[index][1])); + api.customEntities = () => colSelectedCustomEntities(containedEntities(customEntities, sentences[index][0], sentences[index][1])); + api.tokens = colTokens(sentences[index][0], sentences[index][1]); + api.index = () => index; + return api; + }; + colSentences = function() { + var api = /* @__PURE__ */ Object.create(null); + api.each = (f) => colEach(f, 0, sentences.length - 1, itemSentence); + api.itemAt = (k) => colGetItemAt(k, 0, sentences.length - 1, itemSentence); + api.length = () => sentences.length; + api.out = (f) => colSentencesOut(docData, f, addons); + return api; + }; + methods.entities = colEntities; + methods.customEntities = colCustomEntities; + methods.isLexeme = isLexeme; + methods.isOOV = cache.isOOV; + methods.out = (f) => itmDocumentOut(docData, f, addons); + methods.sentences = colSentences; + methods.tokens = colTokens(0, docData.numOfTokens - 1); + methods.printTokens = () => printTokens(tokens, cache); + methods.pipeConfig = () => JSON.parse(JSON.stringify(docData.currPipe)); + return methods; + }; + module2.exports = doc; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/cache.js +var require_cache2 = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/cache.js"(exports2, module2) { + var constants = require_constants4(); + var xnMask = constants.xnMask; + var bits4PrecedingSpace = constants.bits4PrecedingSpace; + var xcMask = constants.xcMask; + var bits4xpPointer = constants.bits4xpPointer; + var cache = function(model, featureFn) { + const fTokenType = "tokenType"; + var methods = /* @__PURE__ */ Object.create(null); + var lexemesHash = model.features.lexeme.hash; + var lxm = model.features.lexeme; + var lexemeIntrinsicSize = model.features.lexeme.intrinsicSize; + var layout = model.packing.layout; + var pkSize = model.packing.size; + var efSize = model.packing.efSize; + var efList = model.packing.efList; + var efListSize = efList.length; + var lexicon = model.lexicon; + var xpansions = model.xpansions; + var posClusters = model.features.posClusters.list; + var extrinsicLexicon = []; + var elBasePackingSize = 2; + var elPackingSize = 2 + efSize; + var efArray = new Uint32Array(efSize); + var feature = featureFn(model.packing.config); + var efHash = /* @__PURE__ */ Object.create(null); + efHash.tokenType = true; + efList.forEach((ef) => efHash[ef] = true); + var getFeaturesIndex = function(name, value2) { + var f = model.features[name]; + var h = f.hash; + var l2 = f.list; + var isNewValue = 0; + var index = h[value2]; + if (index === void 0) { + index = h[value2] = f.index; + f.index = l2.push(value2); + isNewValue = 1; + } + return [isNewValue, index]; + }; + var add = function(text, category) { + var normText = text.toLowerCase(); + var textIndex = getFeaturesIndex("lexeme", text); + var normIndex = normText === text ? textIndex : getFeaturesIndex("lexeme", normText); + var cfg, f, fv, fv4p, k; + if (textIndex[0]) { + efArray.fill(0); + for (k = 0; k < efListSize; k += 1) { + f = efList[k]; + cfg = layout[f]; + fv = feature[f](text, category, methods); + fv4p = cfg[3] ? fv : getFeaturesIndex(f, fv)[1]; + efArray[cfg[0]] |= fv4p << cfg[2]; + } + f = fTokenType; + cfg = layout[f]; + efArray[cfg[0]] |= category << cfg[2]; + extrinsicLexicon.push(normIndex[1], normIndex[1], ...efArray); + } + if (textIndex[1] !== normIndex[1]) { + if (normIndex[0]) { + efArray.fill(0); + for (k = 0; k < efListSize; k += 1) { + f = efList[k]; + cfg = layout[f]; + fv = feature[f](normText, category, methods); + fv4p = cfg[3] ? fv : getFeaturesIndex(f, fv)[1]; + efArray[cfg[0]] |= fv4p << cfg[2]; + } + f = fTokenType; + cfg = layout[f]; + efArray[cfg[0]] |= category << cfg[2]; + extrinsicLexicon.push(normIndex[1], normIndex[1], ...efArray); + } + } + return textIndex[1]; + }; + var lookup = function(text) { + var layout4isContraction = layout.isContraction; + var layout4lemma = layout.lemma; + var index = lexemesHash[text]; + var lemma; + var cc, cx, cxi; + if (index === void 0) + return null; + var tokens = []; + var isContraction; + if (index < lexemeIntrinsicSize) { + isContraction = (lexicon[layout4isContraction[0] + index * pkSize] & layout4isContraction[1]) >>> layout4isContraction[2]; + if (isContraction) { + lemma = (lexicon[layout4lemma[0] + index * pkSize] & layout4lemma[1]) >>> layout4lemma[2]; + cx = lemma & 16383; + cc = (lemma & xcMask << bits4xpPointer) >> bits4xpPointer; + for (cxi = 0; cxi < cc; cxi += 4) { + tokens.push( + xpansions[cx + cxi], + // lexeme + cx + cxi + 1, + // normal (pointer to xpansion & not to lexicon) + xpansions[cx + cxi + 2], + // lemma + xpansions[cx + cxi + 3] + // pos + ); + } + } else { + tokens.push(index); + } + } else { + tokens.push(index); + } + return tokens; + }; + var value = function(index) { + return lxm.list[index]; + }; + var normal = function(index) { + var layout4normal = layout.normal; + var layout4mapped = layout.isSpellingMapped; + var layout4lemma = layout.lemma; + var isSpellingMapped; + var oovIdx; + var normIndex; + if (index < lexemeIntrinsicSize) { + normIndex = (lexicon[layout4normal[0] + index * pkSize] & layout4normal[1]) >>> layout4normal[2]; + isSpellingMapped = (lexicon[layout4mapped[0] + index * pkSize] & layout4mapped[1]) >>> layout4mapped[2]; + if (isSpellingMapped) { + normIndex = (lexicon[layout4lemma[0] + index * pkSize] & layout4lemma[1]) >>> layout4lemma[2]; + } else { + normIndex += index; + } + } else { + oovIdx = index - lexemeIntrinsicSize; + normIndex = extrinsicLexicon[oovIdx * elPackingSize]; + if (normIndex < lexemeIntrinsicSize) { + isSpellingMapped = (lexicon[layout4mapped[0] + normIndex * pkSize] & layout4mapped[1]) >>> layout4mapped[2]; + if (isSpellingMapped) { + normIndex = (lexicon[layout4lemma[0] + normIndex * pkSize] & layout4lemma[1]) >>> layout4lemma[2]; + } + } + } + return normIndex; + }; + var mappedSpelling = function(index) { + var layout4mapped = layout.isSpellingMapped; + var layout4lemma = layout.lemma; + var isSpellingMapped; + var mappedIndex = index; + if (index < lexemeIntrinsicSize) { + isSpellingMapped = (lexicon[layout4mapped[0] + index * pkSize] & layout4mapped[1]) >>> layout4mapped[2]; + if (isSpellingMapped) { + mappedIndex = (lexicon[layout4lemma[0] + index * pkSize] & layout4lemma[1]) >>> layout4lemma[2]; + } + } + return mappedIndex; + }; + var nox = function(binaryWord) { + return xpansions[(binaryWord & xnMask) >>> bits4PrecedingSpace]; + }; + var property = function(index, prop) { + var propValue; + var oovIdx; + var layout4Prop; + if (index < lexemeIntrinsicSize) { + layout4Prop = layout[prop]; + if (layout4Prop === void 0) + return null; + propValue = (lexicon[layout4Prop[0] + index * pkSize] & layout4Prop[1]) >>> layout4Prop[2]; + if (layout4Prop[3] === 0 || layout4Prop[5] === 1) + propValue = model.features[prop].list[propValue]; + } else { + if (!efHash[prop]) + return 0; + oovIdx = index - lexemeIntrinsicSize; + layout4Prop = layout[prop]; + propValue = (extrinsicLexicon[oovIdx * elPackingSize + elBasePackingSize + layout4Prop[0]] & layout4Prop[1]) >>> layout4Prop[2]; + if (layout4Prop[3] === 0 || layout4Prop[5] === 1) + propValue = model.features[prop].list[propValue]; + } + return propValue; + }; + var isMemberPOS = function(lexemeIdx, posIdx) { + return posClusters[property(lexemeIdx, "lexemeCID")].has(+posIdx); + }; + var posOf = function(index) { + var posValue; + var oovIdx; + var layout4Prop; + if (index < lexemeIntrinsicSize) { + layout4Prop = layout.pos; + posValue = (lexicon[layout4Prop[0] + index * pkSize] & layout4Prop[1]) >>> layout4Prop[2]; + } else { + oovIdx = index - lexemeIntrinsicSize; + layout4Prop = layout.pos; + posValue = (extrinsicLexicon[oovIdx * elPackingSize + elBasePackingSize + layout4Prop[0]] & layout4Prop[1]) >>> layout4Prop[2]; + } + return posValue; + }; + var valueOf = function(prop, index) { + return model.features[prop].list[index]; + }; + var currentSize = function() { + return lxm.list.length - 1; + }; + var intrinsicSize = function() { + return lexemeIntrinsicSize; + }; + var hasSamePOS = function(text, pos) { + var textIndex = lookup(text); + if (!textIndex) + return false; + if (textIndex.length > 1) + return false; + if (textIndex[0] >= lexemeIntrinsicSize) + return false; + if (property(textIndex, "isBaseForm") === 0) + return false; + return isMemberPOS(textIndex[0], model.pos.hash[pos]); + }; + var isOOV = function(text) { + var textIndex = lookup(text); + if (!textIndex) + return true; + if (textIndex.length > 1) + return false; + if (textIndex[0] >= lexemeIntrinsicSize) + return true; + return false; + }; + methods.add = add; + methods.lookup = lookup; + methods.value = value; + methods.property = property; + methods.normal = normal; + methods.nox = nox; + methods.posOf = posOf; + methods.valueOf = valueOf; + methods.currentSize = currentSize; + methods.intrinsicSize = intrinsicSize; + methods.isOOV = isOOV; + methods.isMemberPOS = isMemberPOS; + methods.hasSamePOS = hasSamePOS; + methods.mappedSpelling = mappedSpelling; + return methods; + }; + module2.exports = cache; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/recursive-tokenizer.js +var require_recursive_tokenizer = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/recursive-tokenizer.js"(exports2, module2) { + var RGX = 0; + var CAT = 1; + var rgxShortFormDot = /^(?:(?:[A-Z])(?:\.))+$/i; + var rgxShortForm = /^(?:(?:[A-Z])(?:\.))+[a-z]?$/i; + var rgxHyphens = /[\-\–\—]/gi; + var rgxPeriod = /[\.]/gi; + var rgxNumber = /[0-9]/; + var tokenizer = function(categories, preserve) { + var addToken; + var addTokenIfInCache; + var isLexeme; + var ps = 0; + var pushHyphenatedToken = function(tkn, tokens) { + var words; + var hyphens; + var i, k, last; + if (isLexeme(tkn) || rgxNumber.test(tkn)) { + tokens.push([tkn, categories.word]); + return; + } + hyphens = tkn.match(rgxHyphens); + if (hyphens === null) { + tokens.push([tkn, categories.word]); + return; + } + words = tkn.split(rgxHyphens); + last = words.length - 1; + if (preserve.prefix[words[0]] || preserve.suffix[words[last]]) { + tokens.push([tkn, categories.word]); + return; + } + k = 0; + for (i = 0; i < words.length; i += 1) { + if (words[i] !== "") { + tokens.push([words[i], categories.word]); + } + if (k < hyphens.length) { + tokens.push([hyphens[k], categories.punctuation]); + } + k += 1; + } + }; + var pushWordToken = function(tkn, tokens) { + var words; + var periods; + var i, k; + var currBuild = ""; + var nextBuild = ""; + if (isLexeme(tkn) || rgxShortFormDot.test(tkn)) { + tokens.push([tkn, categories.word]); + return; + } + periods = tkn.match(rgxPeriod); + if (periods === null) { + pushHyphenatedToken(tkn, tokens); + return; + } + words = tkn.split(rgxPeriod); + k = 0; + for (i = 0; i < words.length; i += 1) { + nextBuild = currBuild + words[i]; + if (rgxShortForm.test(nextBuild) || isLexeme(nextBuild) && nextBuild.length > 2 || currBuild === "") { + currBuild = nextBuild; + } else { + pushHyphenatedToken(currBuild, tokens); + currBuild = words[i]; + nextBuild = ""; + } + if (k < periods.length) { + nextBuild = currBuild + periods[k]; + if (rgxShortForm.test(nextBuild) || isLexeme(nextBuild) && nextBuild.length > 2) { + currBuild = nextBuild; + } else { + pushHyphenatedToken(currBuild, tokens); + tokens.push([periods[k], categories.punctuation]); + currBuild = ""; + nextBuild = ""; + } + } + k += 1; + } + if (currBuild !== "") + pushHyphenatedToken(currBuild, tokens); + }; + var tokenizeTextUnit = function(text, rgxSplit) { + var matches = text.match(rgxSplit[RGX]); + var balance = text.split(rgxSplit[RGX]); + var tokens = []; + var tag = rgxSplit[CAT]; + var i, imax, k, t; + matches = matches ? matches : []; + k = 0; + for (i = 0, imax = balance.length; i < imax; i += 1) { + t = balance[i]; + t = t.trim(); + if (t) + tokens.push(t); + if (k < matches.length) { + if (tag === categories.word) { + pushWordToken(matches[k], tokens); + } else { + tokens.push([matches[k], tag]); + } + } + k += 1; + } + return tokens; + }; + var tokenizeTextRecursively = function(text, regexes) { + var sentence = text.trim(); + var tokens = []; + var i, imax; + var cat; + if (!regexes.length) { + addToken(text, categories.unk, ps); + ps = 0; + return; + } + var rgx = regexes[0]; + tokens = tokenizeTextUnit(sentence, rgx); + for (i = 0, imax = tokens.length; i < imax; i += 1) { + if (typeof tokens[i] === "string") { + tokenizeTextRecursively(tokens[i], regexes.slice(1)); + } else { + cat = addTokenIfInCache(tokens[i][0], ps); + if (cat === categories.unk) + addToken(tokens[i][0], tokens[i][1], ps); + ps = 0; + } + } + }; + var tokenize = function(rgxs, text, precedingSpaces, doc) { + addToken = doc._addToken; + addTokenIfInCache = doc._addTokenIfInCache; + isLexeme = doc.isLexeme; + ps = precedingSpaces; + tokenizeTextRecursively(text, rgxs, precedingSpaces); + }; + return tokenize; + }; + module2.exports = tokenizer; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/tokenizer.js +var require_tokenizer = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/tokenizer.js"(exports2, module2) { + var recTokenizer = require_recursive_tokenizer(); + var tokenizer = function(trex, categories, preserve) { + var maxPrecedingSpaces = 65535; + var processFunctions = []; + var rgxCatDetectors = trex.ltc; + var tokenizeRecursively = recTokenizer(categories, preserve); + var rgxAnyWithRP = trex.helpers.anyWithRP; + var rgxAnyWithLP = trex.helpers.anyWithLP; + var rgxLPanyRP = trex.helpers.LPanyRP; + var rgxSplitter = trex.helpers.splitter; + var detectTokenCategory = function(token) { + var cat; + for (cat = 0; cat < rgxCatDetectors.length; cat += 1) { + if (rgxCatDetectors[cat][0].test(token)) + return rgxCatDetectors[cat][1]; + } + return categories.unk; + }; + var processUnk = function(text, cat, precedingSpaces, doc) { + var match2; + var splitCat; + match2 = text.match(rgxAnyWithRP); + if (match2) { + splitCat = doc._addTokenIfInCache(match2[1], precedingSpaces); + if (splitCat === categories.unk) { + splitCat = detectTokenCategory(match2[1]); + if (splitCat === categories.unk) { + tokenizeRecursively(trex.rtc, text, precedingSpaces, doc); + } else { + processFunctions[splitCat](match2[1], splitCat, precedingSpaces, doc); + doc._addToken(match2[2], categories.punctuation, 0); + } + } else { + doc._addToken(match2[2], categories.punctuation, 0); + } + return; + } + match2 = text.match(rgxAnyWithLP); + if (match2) { + if (doc.isLexeme(match2[2])) { + doc._addToken(match2[1], categories.punctuation, precedingSpaces); + doc._addTokenIfInCache(match2[2], 0); + } else { + splitCat = detectTokenCategory(match2[2]); + if (splitCat === categories.unk) { + tokenizeRecursively(trex.rtc, text, precedingSpaces, doc); + } else { + doc._addToken(match2[1], categories.punctuation, precedingSpaces); + processFunctions[splitCat](match2[2], splitCat, 0, doc); + } + } + return; + } + match2 = text.match(rgxLPanyRP); + if (match2) { + if (doc.isLexeme(match2[2])) { + doc._addToken(match2[1], categories.punctuation, precedingSpaces); + doc._addTokenIfInCache(match2[2], 0); + doc._addToken(match2[3], categories.punctuation, 0); + } else { + splitCat = detectTokenCategory(match2[2]); + if (splitCat === categories.unk) { + tokenizeRecursively(trex.rtc, text, precedingSpaces, doc); + } else { + doc._addToken(match2[1], categories.punctuation, precedingSpaces); + processFunctions[splitCat](match2[2], splitCat, 0, doc); + doc._addToken(match2[3], categories.punctuation, 0); + } + } + return; + } + tokenizeRecursively(trex.rtc, text, precedingSpaces, doc); + }; + var processWordRP = function(token, cat, precedingSpaces, doc) { + var tl = token.length; + if (tl > 2) { + doc._addToken(token.slice(0, -1), categories.word, precedingSpaces); + doc._addToken(token.slice(-1), categories.punctuation, 0); + } else if (tl === 2 && token[tl - 1] === ".") { + doc._addToken(token, categories.word, precedingSpaces); + } else { + doc._addToken(token.slice(0, -1), categories.word, precedingSpaces); + doc._addToken(token.slice(-1), categories.punctuation, 0); + } + }; + var processDefault = function(token, cat, precedingSpaces, doc) { + doc._addToken(token, cat, precedingSpaces); + }; + var tokenize = function(doc, text) { + var rawTokens = []; + var precedingSpaces = 0; + var p; + var cat; + var t; + rawTokens = text.split(rgxSplitter); + for (p = 0; p < rawTokens.length; p += 1) { + t = rawTokens[p]; + if (!t) + continue; + if (t[0] === " ") { + precedingSpaces = t.length; + if (precedingSpaces > maxPrecedingSpaces) + precedingSpaces = maxPrecedingSpaces; + } else { + cat = doc._addTokenIfInCache(t, precedingSpaces); + if (cat === categories.unk) { + cat = detectTokenCategory(t); + processFunctions[cat](t, cat, precedingSpaces, doc); + } + precedingSpaces = 0; + } + } + }; + processFunctions[categories.unk] = processUnk; + processFunctions[categories.wordRP] = processWordRP; + processFunctions[categories.emoji] = processDefault; + processFunctions[categories.word] = processDefault; + processFunctions[categories.shortForm] = processDefault; + processFunctions[categories.number] = processDefault; + processFunctions[categories.url] = processDefault; + processFunctions[categories.email] = processDefault; + processFunctions[categories.mention] = processDefault; + processFunctions[categories.hashtag] = processDefault; + processFunctions[categories.emoticon] = processDefault; + processFunctions[categories.time] = processDefault; + processFunctions[categories.ordinal] = processDefault; + processFunctions[categories.currency] = processDefault; + processFunctions[categories.punctuation] = processDefault; + processFunctions[categories.symbol] = processDefault; + processFunctions[categories.tabCRLF] = processDefault; + processFunctions[categories.apos] = processDefault; + processFunctions[categories.alpha] = processDefault; + processFunctions[categories.decade] = processDefault; + return tokenize; + }; + module2.exports = tokenizer; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/compile-trex.js +var require_compile_trex = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/compile-trex.js"(exports2, module2) { + var makeRegexes = function(config) { + var rgx = []; + var imax = config.length; + var i; + for (i = 0; i < imax; i += 1) { + rgx.push([new RegExp(config[i][0], config[i][1]), config[i][2]]); + } + return rgx; + }; + var compileTRex = function(trex) { + var rtc; + var ltc; + var helpers = /* @__PURE__ */ Object.create(null); + try { + rtc = makeRegexes(trex.rtc); + ltc = makeRegexes(trex.ltc); + for (const h in trex.helpers) { + helpers[h] = new RegExp(trex.helpers[h][0], trex.helpers[h][1]); + } + } catch (ex) { + throw Error("wink-nlp: Invalid trex.\n\nDetails:\n" + ex.message); + } + return { rtc, ltc, helpers }; + }; + module2.exports = compileTRex; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/tokens-mappers.js +var require_tokens_mappers = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/tokens-mappers.js"(exports2, module2) { + var constants = require_constants4(); + var tkSize = constants.tkSize; + var bits4lemma = constants.bits4lemma; + var posMask = constants.posMask; + var mappers = /* @__PURE__ */ Object.create(null); + var mapRawTokens2UIdOfNormal = function(rdd) { + var tokens = rdd.tokens; + var cache = rdd.cache; + var mappedTokens = new Array(rdd.numOfTokens); + var i, k; + for (i = 0; i < tokens.length; i += tkSize) { + k = i + 1; + mappedTokens[i / tkSize] = tokens[k] > 65535 ? ( + // Handle contraction's expansion. + cache.nox(tokens[k]) + ) : ( + // Handle all other words. + cache.normal(tokens[i]) + ); + } + return mappedTokens; + }; + var mapRawTokens2UIdOfValue = function(rdd) { + var tokens = rdd.tokens; + var cache = rdd.cache; + var mappedTokens = new Array(rdd.numOfTokens); + var i; + for (i = 0; i < tokens.length; i += tkSize) { + mappedTokens[i / tkSize] = cache.mappedSpelling(tokens[i]); + } + return mappedTokens; + }; + var mapRawTokens2UIdOfDefaultPOS = function(rdd) { + var tokens = rdd.tokens; + var cache = rdd.cache; + var posTags = new Array(rdd.numOfTokens); + let pk = 0; + for (let i = 0; i < tokens.length; i += tkSize, pk += 1) { + posTags[pk] = tokens[i + 2] === 0 ? ( + // Make UNK to NOUN to handle the remote possibility of ML POS being undefined! + // Also use mapped spelling — this ensure correct pos tagging & lemmatization etc. + // as mapped spelling is the gold spelling. + cache.posOf(cache.mappedSpelling(tokens[i])) || 8 + ) : (tokens[i + 2] & posMask) >>> bits4lemma; + } + return posTags; + }; + mappers.mapRawTokens2UIdOfNormal = mapRawTokens2UIdOfNormal; + mappers.mapRawTokens2UIdOfValue = mapRawTokens2UIdOfValue; + mappers.mapRawTokens2UIdOfDefaultPOS = mapRawTokens2UIdOfDefaultPOS; + module2.exports = mappers; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/compose-patterns.js +var require_compose_patterns = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/compose-patterns.js"(exports2, module2) { + var regex = /\[.*?\]/g; + var extractEnclosedText = function(text) { + var elements = [], matches = text.match(regex); + if (!matches || matches.length === 0) + return null; + for (var k = 0, kmax = matches.length; k < kmax; k += 1) { + elements.push(matches[k].substr(1, matches[k].length - 2)); + } + return elements; + }; + var productReducer = function(prev, curr) { + var c, cmax = curr.length; + var p, pmax = prev.length; + var result = []; + for (p = 0; p < pmax; p += 1) { + for (c = 0; c < cmax; c += 1) { + result.push(prev[p].concat(curr[c])); + } + } + return result; + }; + var product = function(a) { + return a.reduce(productReducer, [[]]); + }; + var composePatterns = function(str) { + if (!str || typeof str !== "string") + return []; + const LIMIT1 = 512; + const LIMIT2 = 65536; + var quotedTextElems = extractEnclosedText(str); + var patterns = []; + var finalPatterns = []; + if (!quotedTextElems) + return [[str]]; + quotedTextElems.forEach(function(e) { + patterns.push(e.split("|")); + }); + const size = patterns.reduce((prev, curr) => prev * curr.length, 1); + if (size > LIMIT1 && size < LIMIT2) { + console.warn("winkNLP: complex pattern detected, consider simplifying it!"); + } else if (size > LIMIT2) + console.error( + "winkNLP: very complex pattern detected, please review and simplify.\n === It may slow down further execution! ===\n\n" + ); + product(patterns).forEach(function(e) { + finalPatterns.push(e.join(" ").trim().split(/\s+/)); + }); + return finalPatterns; + }; + module2.exports = composePatterns; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/identify-marked-area.js +var require_identify_marked_area = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/identify-marked-area.js"(exports2, module2) { + var identifyMarkedArea = function(mark, length) { + const lm1 = length - 1; + let [firstIndex, lastIndex] = mark; + if (firstIndex < 0) + firstIndex += length; + firstIndex = Math.max(firstIndex, 0); + if (firstIndex > lm1) + firstIndex = 0; + if (lastIndex < 0) + lastIndex += length; + lastIndex = Math.min(lastIndex, lm1); + if (lastIndex < firstIndex) + lastIndex = lm1; + lastIndex = length - lastIndex - 1; + return [firstIndex, lastIndex]; + }; + module2.exports = identifyMarkedArea; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/automaton.js +var require_automaton = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/automaton.js"(exports2, module2) { + var composePatterns = require_compose_patterns(); + var identifyMarkedArea = require_identify_marked_area(); + var eosTokenN = 207e4; + var eosTokenX = "$%^EoS^%$"; + var otherwiseN = 2070003; + var otherwiseX = " otherwise"; + var simpleFSM = function(cache, token2Ignore) { + var methods = /* @__PURE__ */ Object.create(null); + var fsm = /* @__PURE__ */ Object.create(null); + const root = 0; + var lastUsedState = 0; + var terminalStates = /* @__PURE__ */ Object.create(null); + var markedStates = /* @__PURE__ */ Object.create(null); + var customPropertyAtStates = /* @__PURE__ */ Object.create(null); + var substitutions; + var onPatternDetectionFn; + const toBeIgnoredToken = token2Ignore === void 0 ? "\n" : token2Ignore; + const keyLF = cache === void 0 || cache === null ? toBeIgnoredToken : cache.lookup(toBeIgnoredToken)[0]; + const eosToken = cache === void 0 || cache === null ? eosTokenX : eosTokenN; + const otherwise = cache === void 0 ? otherwiseX : otherwiseN; + var getNextState = function(index, last, target) { + if (index === last && target) + return target; + lastUsedState += 1; + return lastUsedState; + }; + var learnSinglePattern = function(name, pattern, mark, customProperty) { + const length = pattern.length; + const last = length - 1; + const target = void 0; + let state = root; + let goBackTo = root; + let ev, nextState; + for (let k = 0; k < length; k += 1) { + ev = pattern[k]; + if (fsm[state] === void 0) { + fsm[state] = /* @__PURE__ */ Object.create(null); + fsm[state][otherwise] = goBackTo; + } + if (fsm[state][ev] === void 0) { + nextState = getNextState(k, last, target); + fsm[state][ev] = nextState; + state = nextState; + } else if (terminalStates[fsm[state][ev]]) { + if (fsm[state][otherwise] === root) + fsm[state][otherwise] = goBackTo; + goBackTo = fsm[state][ev]; + nextState = getNextState(k, last, target); + fsm[state][ev] = nextState; + state = nextState; + } else if (k === last) { + nextState = getNextState(k, last, target); + fsm[fsm[state][ev]][otherwise] = nextState; + state = nextState; + } else { + state = fsm[state][ev]; + } + } + terminalStates[state] = name; + if (mark) { + markedStates[state] = identifyMarkedArea(mark, length); + } + if (customProperty !== void 0) { + customPropertyAtStates[state] = customProperty; + } + }; + var learn = function(patterns) { + var obj2 = /* @__PURE__ */ Object.create(null); + var cp = []; + for (let i = 0; i < patterns.length; i += 1) { + const pi = patterns[i]; + if (typeof pi.pattern === "string") { + const all3 = composePatterns(pi.pattern); + for (let j = 0; j < all3.length; j += 1) + cp.push({ name: pi.name, pattern: all3[j], mark: pi.mark, customProperty: pi.customProperty }); + } else + cp.push({ name: pi.name, pattern: pi.pattern, mark: pi.mark, customProperty: pi.customProperty }); + } + cp.sort((a, b) => b.pattern.length - a.pattern.length); + for (let i = 0; i < cp.length; i += 1) { + learnSinglePattern(cp[i].name, cp[i].pattern, cp[i].mark, cp[i].customProperty); + } + for (const ts in terminalStates) + obj2[terminalStates[ts]] = true; + return Object.keys(obj2).length; + }; + var setOnPatternDetectionFn = function(f) { + if (typeof f === "function") { + onPatternDetectionFn = f; + return true; + } + return false; + }; + var pushMatch2Patterns = function(patterns, match2) { + var m0 = match2[2]; + if (terminalStates[m0] === "0") + return; + var mark = markedStates[m0]; + var customProperty = customPropertyAtStates[m0]; + if (mark) { + match2[0] += mark[0]; + match2[1] -= mark[1]; + } + if (onPatternDetectionFn) + onPatternDetectionFn(match2, customProperty); + match2[2] = terminalStates[m0]; + patterns.push(match2); + }; + var setPatternSwap = function(patterns) { + if (!patterns || !Array.isArray(patterns)) { + substitutions = void 0; + return; + } + substitutions = /* @__PURE__ */ Object.create(null); + patterns.sort((a, b) => a[0] > b[0]); + patterns.forEach((e) => substitutions[e[0]] = [e[1], e[2]]); + }; + var recognize = function(tokens, transformToken, param) { + const length = tokens.length; + var transformTokenFn = typeof transformToken === "function" ? transformToken : null; + var patterns = []; + var first = 0; + var state = root; + var ns = root; + var p = null; + var lastOtherwiseIndex; + var lastOtherwiseState; + var t; + var delta = 1; + for (let i = 0; i <= length; i += 1) { + for (let j = i; j <= length; j += delta) { + t = j === length ? eosToken : tokens[j]; + if (t === keyLF) + continue; + if (substitutions && substitutions[j]) { + t = substitutions[j][1]; + delta = substitutions[j][0] - j + 1; + } else + delta = 1; + if (transformTokenFn && j < length) + t = transformTokenFn(t, cache, param, j); + ns = fsm[state][t] || root; + if (!state && ns) + first = j; + if (terminalStates[ns]) { + p = [first, j + delta - 1, ns]; + pushMatch2Patterns(patterns, p); + i = j; + j = length + 100; + ns = root; + lastOtherwiseState = root; + } else if (ns === root) { + if (lastOtherwiseState) { + p = [first, lastOtherwiseIndex, lastOtherwiseState]; + pushMatch2Patterns(patterns, p); + i = lastOtherwiseIndex; + j = length + 100; + ns = root; + lastOtherwiseState = root; + } else { + j = length + 100; + } + } + state = ns; + if (fsm[state][otherwise]) { + lastOtherwiseIndex = j + delta - 1; + lastOtherwiseState = fsm[state][otherwise]; + } + } + } + return patterns; + }; + var exportJSON = function() { + return JSON.stringify( + [100, lastUsedState, fsm, terminalStates, markedStates, customPropertyAtStates] + ); + }; + var emptyModelJSON = function() { + const m0 = /* @__PURE__ */ Object.create(null); + m0[0] = /* @__PURE__ */ Object.create(null); + return JSON.stringify( + [ + 100, + 0, + // `lastUsedState`. + m0, + // `fsm`, + /* @__PURE__ */ Object.create(null), + // `terminalStates`, + /* @__PURE__ */ Object.create(null), + // `markedStates`, + /* @__PURE__ */ Object.create(null) + // `customPropertyAtStates` + ] + ); + }; + var importJSON = function(json) { + var model = JSON.parse(json); + lastUsedState = model[1]; + fsm = model[2]; + terminalStates = model[3]; + markedStates = model[4]; + customPropertyAtStates = model[5]; + }; + var printModel = function() { + console.log("State Machine:"); + console.log(JSON.stringify(fsm, null, 2)); + console.log(); + console.log("Terminal States:"); + console.log(JSON.stringify(terminalStates, null, 2)); + console.log(); + console.log("Marked States:"); + console.log(JSON.stringify(markedStates, null, 2)); + console.log(); + console.log("customProperty States:"); + console.log(JSON.stringify(customPropertyAtStates, null, 2)); + }; + methods.learn = learn; + methods.recognize = recognize; + methods.setPatternSwap = setPatternSwap; + methods.setOnPatternDetectionFn = setOnPatternDetectionFn; + methods.exportJSON = exportJSON; + methods.importJSON = importJSON; + methods.emptyModelJSON = emptyModelJSON; + methods.printModel = printModel; + getNextState(0, 0, 99); + return methods; + }; + module2.exports = simpleFSM; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/examples-compiler.js +var require_examples_compiler = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/examples-compiler.js"(exports2, module2) { + var DocDataWrapper = require_dd_wrapper(); + var Automata = require_automaton(); + var mappers = require_tokens_mappers(); + var mapRawTokens2UIdOfValue = mappers.mapRawTokens2UIdOfValue; + var mapRawTokens2UIdOfNormal = mappers.mapRawTokens2UIdOfNormal; + var cerAutomata = Automata(); + var rgxOr = /^\[((?:[^| ]+\|)+?|(?:\|[^| ]+)+?|(?:[^| ]+\|[^| ]+)+?|(?:[^| ]+))\]$/; + var rgxPipe = /\|/g; + var mergeSplitsAndMatches = function(splts, mtchs) { + const [s0, ...splits] = splts; + return s0 === void 0 ? mtchs : [s0, ...mergeSplitsAndMatches(mtchs, splits)]; + }; + var compiler = function(cerModel, cache, tokenize, matchValue) { + var methods = /* @__PURE__ */ Object.create(null); + var preserve; + cerAutomata.importJSON(cerModel); + cerAutomata.setOnPatternDetectionFn((match2, customProperty) => match2.push(customProperty)); + var hasOrPattern = function(tokens) { + return tokens.findIndex((e) => rgxOr.test(e)) !== -1; + }; + var encloseInSquareBracket = function(e) { + return "[" + e + "]"; + }; + var tokenizeText = function(text) { + var rdd = /* @__PURE__ */ Object.create(null); + rdd.cache = cache; + rdd.tokens = []; + var wrappedDocData = DocDataWrapper(rdd); + tokenize(wrappedDocData, text); + const tokens = []; + const values = mapRawTokens2UIdOfValue(rdd).map((t) => cache.value(t)); + const normals = mapRawTokens2UIdOfNormal(rdd).map((t) => cache.value(t)); + for (let i = 0; i < values.length; i += 1) + tokens.push({ value: values[i], normal: normals[i] }); + return tokens; + }; + var compileSimplePattern = function(text) { + const cp = []; + const tokens = tokenizeText(text); + const spans = cerAutomata.recognize(tokens.map((t) => t.value)); + const replacements = /* @__PURE__ */ Object.create(null); + spans.forEach((e) => replacements[e[0]] = [e[1], e[2], e[3]]); + for (let i = 0; i < tokens.length; i += 1) { + if (replacements[i]) { + if (replacements[i][1] !== "") { + if (replacements[i][2].preserve) { + const tri0 = matchValue ? tokens[replacements[i][0]].value : tokens[replacements[i][0]].normal; + const ri1 = matchValue ? replacements[i][1] : replacements[i][1].toLowerCase(); + preserve[tri0] = ri1; + cp.push(ri1); + } else { + cp.push(replacements[i][1]); + } + } + i = replacements[i][0]; + } else { + const ti = matchValue ? tokens[i].value : tokens[i].normal; + cp.push(ti); + preserve[ti] = ti; + } + } + return cp; + }; + var compileOrPattern = function(tokens) { + const pattern = []; + for (let i = 0; i < tokens.length; i += 1) { + if (rgxOr.test(tokens[i])) { + const ti = tokens[i].substring(1, tokens[i].length - 1); + const matches = ti.match(rgxPipe) || []; + const splits = ti.split(rgxPipe); + for (let j = 0; j < splits.length; j += 1) { + const st = splits[j] === "" ? [""] : compileSimplePattern(splits[j]); + if (st.length > 1) { + throw Error(`wink-nlp: incorrect token "${st.join("")}" encountered in examples of learnCustomEntities() API.`); + } + splits[j] = st[0]; + } + pattern.push(encloseInSquareBracket(mergeSplitsAndMatches(splits, matches).join(""))); + } else { + compileSimplePattern(tokens[i]).forEach((t) => pattern.push(encloseInSquareBracket(t))); + } + } + return pattern.join(" "); + }; + var compileSinglePattern = function(text) { + const atoms = text.trim().split(/\s+/); + if (hasOrPattern(atoms)) { + return compileOrPattern(atoms); + } + return compileSimplePattern(text); + }; + var run2 = function(examples) { + const ces = []; + preserve = /* @__PURE__ */ Object.create(null); + for (let i = 0; i < examples.length; i += 1) { + const example = examples[i]; + const patterns = example.patterns; + for (let j = 0; j < patterns.length; j += 1) { + const cp = compileSinglePattern(patterns[j]); + const ce = /* @__PURE__ */ Object.create(null); + ce.name = example.name; + ce.pattern = cp; + if (example.mark) + ce.mark = example.mark; + ces.push(ce); + } + } + return { examples: ces, preserve }; + }; + methods.run = run2; + return methods; + }; + module2.exports = compiler; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/helper.js +var require_helper = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/helper.js"(exports2, module2) { + var helper = /* @__PURE__ */ Object.create(null); + helper.isObject = function(v) { + return Object.prototype.toString.call(v) === "[object Object]"; + }; + helper.isArray = function(v) { + return Object.prototype.toString.call(v) === "[object Array]"; + }; + helper.isFiniteInteger = function(n) { + return typeof n === "number" && !isNaN(n) && isFinite(n) && n === Math.round(n); + }; + helper.isIntegerArray = function(a) { + if (!helper.isArray(a)) + return false; + if (a.length === 0) + return false; + for (let i = 0; i < a.length; i += 1) { + if (!helper.isFiniteInteger(a[i])) + return false; + } + return true; + }; + module2.exports = helper; + } +}); + +// ../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/wink-nlp.js +var require_wink_nlp = __commonJS({ + "../node_modules/.pnpm/wink-nlp@1.13.1/node_modules/wink-nlp/src/wink-nlp.js"(exports2, module2) { + var DocDataWrapper = require_dd_wrapper(); + var Doc = require_doc_v2(); + var Cache = require_cache2(); + var tokenizer = require_tokenizer(); + var compileTRex = require_compile_trex(); + var mappers = require_tokens_mappers(); + var itsHelpers = require_its(); + var asHelpers = require_as(); + var mapRawTokens2UIdOfNormal = mappers.mapRawTokens2UIdOfNormal; + var mapRawTokens2UIdOfDefaultPOS = mappers.mapRawTokens2UIdOfDefaultPOS; + var Compiler = require_examples_compiler(); + var constants = require_constants4(); + var fsm = require_automaton(); + var search = require_search(); + var locate = require_locate(); + var helper = require_helper(); + var tkSize = constants.tkSize; + var nlp = function(theModel, pipe) { + var methods = /* @__PURE__ */ Object.create(null); + var trex; + var model; + var cache; + var tokenize; + var nerAutomata; + var nerTransformers; + var sbdAutomata; + var sbdTransformers; + var sbdSetter; + var negAutomata; + var negSetter; + var saAutomata; + var saSetter; + var posAutomata; + var posTransformers; + var posSetter; + var posUpdater; + var cerAutomata; + var cerTransformer; + var cerLearnings = 0; + var cerPreserve; + var cerConfig; + var compiler; + var cerMetaModel; + var validAnnotations = /* @__PURE__ */ Object.create(null); + var currPipe = /* @__PURE__ */ Object.create(null); + var onlyTokenization = true; + var load = function() { + model = theModel.core(); + cache = Cache(model, theModel.featureFn); + trex = compileTRex(model.trex); + tokenize = tokenizer(trex, model.tcat.hash, model.preserve); + var sbdModel = theModel.sbd(); + sbdAutomata = new Array(sbdModel.machines.length); + sbdTransformers = new Array(sbdModel.machines.length); + for (let i = 0; i < sbdModel.machines.length; i += 1) { + sbdAutomata[i] = fsm(cache); + sbdAutomata[i].importJSON(sbdModel.machines[i]); + sbdTransformers[i] = sbdModel.transformers[i]; + } + sbdSetter = sbdModel.setter; + var nerModel = theModel.ner(); + nerAutomata = new Array(nerModel.machines.length); + nerTransformers = new Array(nerModel.machines.length); + for (let i = 0; i < nerModel.machines.length; i += 1) { + nerAutomata[i] = fsm(cache); + nerAutomata[i].importJSON(nerModel.machines[i]); + nerTransformers[i] = nerModel.transformers[i]; + } + var negModel = theModel.negation(); + negAutomata = fsm(cache); + negAutomata.importJSON(negModel.machines[0]); + negSetter = negModel.setter; + var saModel = theModel.sa(); + saAutomata = fsm(cache); + saAutomata.importJSON(saModel.machines[0]); + saSetter = saModel.setter; + var posModel = theModel.pos(); + posAutomata = new Array(posModel.machines.length); + posTransformers = new Array(nerModel.machines.length); + for (let i = 0; i < posModel.machines.length; i += 1) { + posAutomata[i] = fsm(cache, cache.value(0)); + posAutomata[i].importJSON(posModel.machines[i]); + posTransformers[i] = posModel.transformers[i]; + } + posSetter = posModel.setter; + posUpdater = posModel.updater; + var cmModel = theModel.metaCER(); + cerMetaModel = cmModel.machines; + cerTransformer = cmModel.transformers[0]; + }; + var readDoc = function(text) { + if (typeof text !== "string") { + throw Error(`wink-nlp: expecting a valid Javascript string, instead found "${typeof text}".`); + } + var rdd = /* @__PURE__ */ Object.create(null); + rdd.cache = cache; + rdd.tokens = []; + rdd.sentences = []; + rdd.markings = []; + rdd.currPipe = currPipe; + var wrappedDocData = DocDataWrapper(rdd); + tokenize(wrappedDocData, text); + rdd.numOfTokens = rdd.tokens.length / tkSize; + rdd.document = [0, rdd.numOfTokens - 1, 0, 0]; + var tokens4Automata = onlyTokenization ? null : mapRawTokens2UIdOfNormal(rdd); + var px; + if (currPipe.sbd) { + px = null; + for (let i = 0; i < sbdAutomata.length; i += 1) { + sbdAutomata[i].setPatternSwap(px); + px = sbdAutomata[i].recognize(tokens4Automata, sbdTransformers[i], rdd.tokens); + } + sbdSetter(px, rdd); + rdd.numOfSentences = rdd.sentences.length; + } else { + rdd.numOfSentences = 1; + rdd.sentences = [[0, rdd.numOfTokens - 1, 0, 0]]; + } + if (currPipe.ner) { + px = null; + for (let i = 0; i < nerAutomata.length; i += 1) { + nerAutomata[i].setPatternSwap(px); + px = nerAutomata[i].recognize(tokens4Automata, nerTransformers[i]); + } + rdd.entities = px; + } else { + rdd.entities = []; + } + if (currPipe.negation) { + px = null; + px = negAutomata.recognize(tokens4Automata); + negSetter(px, rdd, constants, search); + } + if (currPipe.sentiment) { + px = null; + px = saAutomata.recognize(tokens4Automata); + saSetter(px, rdd, constants, locate); + } + if (currPipe.pos) { + const posTags = mapRawTokens2UIdOfDefaultPOS(rdd); + px = null; + for (let i = 0; i < posAutomata.length; i += 1) { + px = posAutomata[i].recognize(posTags, posTransformers[0], rdd.tokens); + posUpdater(px, cache, posTags, tokens4Automata); + } + posSetter(rdd, posTags, tkSize, constants.bits4lemma); + } + if (currPipe.cer) { + px = null; + if (cerAutomata !== void 0 && cerLearnings > 0) { + cerConfig.rdd = rdd; + cerConfig.preserve = cerPreserve; + cerConfig.constants = constants; + if (cerConfig.useEntity) + cerAutomata.setPatternSwap(rdd.entities); + px = cerAutomata.recognize(tokens4Automata, cerTransformer, cerConfig); + } + rdd.customEntities = px || []; + } else + rdd.customEntities = []; + var doc = Doc(rdd, theModel.addons); + wrappedDocData.clean(); + return doc; + }; + var learnCustomEntities = function(examples, config) { + if (helper.isArray(examples)) { + examples.forEach((ex) => { + if (helper.isObject(ex)) { + if (typeof ex.name !== "string" || ex.name === "") { + throw Error(`wink-nlp: name should be a string, instead found "${ex.name}": + +${JSON.stringify(ex, null, 2)}`); + } else if (helper.isArray(ex.patterns)) { + for (let k = 0; k < ex.patterns.length; k += 1) { + const p = ex.patterns[k]; + if (typeof p !== "string" || p === "") { + throw Error(`wink-nlp: each pattern should be a string, instead found "${p}": + +${JSON.stringify(ex, null, 2)}`); + } + } + } else { + throw Error(`wink-nlp: patterns should be an array, instead found "${typeof ex.patterns}": + +${JSON.stringify(ex, null, 2)}`); + } + if (ex.mark !== void 0 && (!helper.isIntegerArray(ex.mark) || ex.mark.length !== 2 || ex.mark.length === 2 && ex.mark[0] > ex.mark[1])) { + throw Error(`wink-nlp: mark should be an array containing start & end indexes, instead found: + +${JSON.stringify(ex.mark, null, 2)}`); + } + } else { + throw Error(`wink-nlp: each example should be an object, instead found a "${typeof ex}": + +${JSON.stringify(ex, null, 2)}`); + } + }); + } else { + throw Error(`wink-nlp: examples should be an array, instead found "${typeof examples}".`); + } + cerConfig = config === void 0 || config === null ? /* @__PURE__ */ Object.create(null) : JSON.parse(JSON.stringify(config)); + if (!helper.isObject(cerConfig)) { + throw Error(`wink-nlp: config should be an object, instead found "${typeof cerConfig}".`); + } + cerConfig.matchValue = !!cerConfig.matchValue; + cerConfig.usePOS = cerConfig.usePOS === void 0 ? true : !!cerConfig.usePOS; + cerConfig.useEntity = cerConfig.useEntity === void 0 ? true : !!cerConfig.useEntity; + compiler = Compiler(cerMetaModel, cache, tokenize, cerConfig.matchValue); + cerAutomata = null; + cerLearnings = 0; + cerAutomata = fsm(); + const compiled = compiler.run(examples); + cerPreserve = compiled.preserve; + cerLearnings = cerAutomata.learn(compiled.examples); + return cerLearnings; + }; + if (helper.isObject(theModel)) { + if (typeof theModel.core !== "function") { + throw Error("wink-nlp: invalid model used."); + } + } else { + throw Error("wink-nlp: invalid model used."); + } + validAnnotations.sbd = typeof theModel.sbd === "function"; + validAnnotations.negation = typeof theModel.negation === "function"; + validAnnotations.sentiment = typeof theModel.sa === "function"; + validAnnotations.pos = typeof theModel.pos === "function"; + validAnnotations.ner = typeof theModel.ner === "function"; + validAnnotations.cer = typeof theModel.metaCER === "function"; + const tempPipe = pipe === void 0 ? Object.keys(validAnnotations) : pipe; + if (helper.isArray(tempPipe)) { + tempPipe.forEach((at) => { + if (!validAnnotations[at]) + throw Error(`wink-nlp: invalid pipe annotation "${at}" found.`); + currPipe[at] = true; + onlyTokenization = false; + }); + } else + throw Error(`wink-nlp: invalid pipe, it must be an array instead found a "${typeof pipe}".`); + load(); + methods.readDoc = readDoc; + methods.learnCustomEntities = learnCustomEntities; + methods.its = itsHelpers; + methods.as = asHelpers; + return methods; + }; + module2.exports = nlp; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-core-web-model.json +var require_eng_core_web_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-core-web-model.json"(exports2, module2) { + module2.exports = { header: { "0": 0, "1": 8, "2": 690, "3": 1400176, "4": 1048640, "5": 431, "6": 320, "7": 5950, "8": 29280, "9": 1762, "10": 0, "11": 0, "12": 0, "13": 0, "14": 0, "15": 0, "16": 0, "17": 0, "18": 0, "19": 0, "20": 0, "21": 0, "22": 0, "23": 0, "24": 0, "25": 0, "26": 0, "27": 0, "28": 0, "29": 0, "30": 0, "31": 0, "32": 0, "33": 0, "34": 0, "35": 0, "36": 0, "37": 0, "38": 0, "39": 0, "40": 0, "41": 0, "42": 0, "43": 0, "44": 0, "45": 0, "46": 0, "47": 0 }, packing: { size: 4, efSize: 3, layout: { prefix: [0, 8191, 0, 0, 1, 0], suffix: [0, -8192, 13, 0, 1, 0], lutCase: [1, 3, 0, 1, 1, 0], shape: [1, 65532, 2, 0, 1, 0], isAbbrev: [1, 65536, 16, 1, 1, 0], lexemeCID: [1, 66977792, 17, 1, 0, 0], pos: [1, -67108864, 26, 1, 1, 1], tokenType: [2, 31, 0, 1, 0, 1], nerHint: [2, 8160, 5, 1, 0, 0], sbdHint: [2, 2088960, 13, 1, 0, 0], posHint: [2, 534773760, 21, 1, 0, 0], lemma: [3, 1048575, 0, 1, 0, 0], normal: [3, 15728640, 20, 1, 0, 0], isSPoS: [3, 16777216, 24, 1, 0, 0], isBaseForm: [3, 33554432, 25, 1, 0, 0], isSLemma: [3, 67108864, 26, 1, 0, 0], isContraction: [3, 134217728, 27, 1, 0, 0], isStopWord: [3, 268435456, 28, 1, 0, 0], isNonEOS: [3, 536870912, 29, 1, 0, 0], isSpellingMapped: [3, 1073741824, 30, 1, 0, 0] }, config: { suffix: 3, prefix: 2 } }, lexicon: "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AQAAAMS6AAcyYm8A4QEiBAEAAADFugAGMkIrAOEBDCABAAAAw7oABTIiKQDhASIgYQQAAMe6AAYyoiQA4QEcDAEAAADIugAHMmIbAOEBDCABAAAAyboABzICGgDhAQwgYQQAAMe6AAcyYkYA4QEMIAEAAADLugAHMoI8AOEBDCABAAAAy7oABTJicwDhAQwgAQAAAM26AAcyAo0A4QEMIAEAAADOugAHMqLvAOEBDCABAAAAzroABTJCKwDhAQwgAQAAANG6AAUyIhwA4QEMIAEAAADRugAHMiIaAOEBIgABAAAA0roABjLiawDhAQwgAQAAANO6AAcyImwA2QEMIAEAAADUugAFMoIuAOEBDCABAAAA1roABTKiPADhAQwgAQAAANa6AAUyIn0A4QEMIAEAAADXugAHMgJYAOEBDCABAAAA17oABTJiHADhARYEAQAAANm6AAcyoioA4QEcDAEAAADaugAHMuI6AOEBDCABAAAA27oABzKCSQDhAQwgAQAAANy6AAcyYjoA4QEeIAEAAADdugAGMmIfAOEBIEABAAAA3boAAjICIQDhAR4AAQAAAN26AAQygucA4QEMIAEAAADUugAHMsIuAOEBDCABAAAA4boABzKiIwDhAQwgAQAAAOK6AAcywlYA4QEWBAEAAADlugAFMsJKAOEBFgQBAAAA5boABTKilwDhARYEAQAAAOW6AAcyogEB4QEeQAEAAADmugAGMmIfAOEBIEABAAAA5roAAjIiVwDhARYEAQAAAOi6AAcyoh8A4QEaQAEAAADmugAFMiJOAOEBDCABAAAA6roABzKiigDhARYEAQAAAOu6AAcywhoA4QEcDAEAAADsugAHMmIbAOEBDCABAAAA7boABzJiGwDhARYEAQAAAO66AAcywlcA4QEWBAEAAADvugAHMmIbAOEBGkABAAAA8LoABzLiIADhAQwgAQAAAPG6AAcyoicA4QEaQAEAAADyugAHMkIrAOEBGkABAAAA8roABTLiXwDhARpAAQAAAPS6AAcywhgA4QEMIAEAAAD1ugAHMiIeAOEBDCABAAAA9roABzLCGgDhARpAAQAAAPe6AAcyQmQA4QEMIAEAAAD4ugAHMiI8AOEBFgQBAAAA+boABzKCHADhARYEAQAAAPq6AAcyYiAA4QEMIAEAAAD7ugAHMmJkAOEBDCABAAAA/LoABzICGQDhAQwgAQAAAP26AAcygjEA4QEaQAEAAAAAuwAFMiIgAOEBGkABAAAAALsABTJCbwDhARpAAQAAAAC7AAcyYj8A4QEaQAEAAAABuwAHMgIZAOEBDCABAAAAArsABzKCFwDhARpAAQAAAAO7AAcy4hkA4QEWBAEAAAAEuwAHMgIaAOEBGkABAAAAA7sABTLiFQDhARpAAQAAAAO7AAUyAhkA4QEMIAEAAAAHuwAHMgKIAOEBFgQBAAAACLsABzKCWADhARYEAQAAAAm7AAcy4hYA4QEaQAEAAAAKuwAHMmIpAOEBGkABAAAACrsABTKCFgDhARpAAQAAAAq7AAUy4hUA4QEaQAEAAAAKuwAFMgJ6AOEBDCABAAAADrsABzKibQDhAQwgAQAAAA67AEcy4jYA4QEaQAEAAAAQuwAHMoIpAOEBDCABAAAAEbsABzICbgDhARpAAQAAABK7AAUyQiUA4QEWBAEAAAATuwAHMuIVAOEBGkABAAAAErsABTLCvwDhARYEAQAAACW7AEUyghcA4QEaQAEAAAAWuwAHMuIZAOEBGkABAAAAFrsABTICGgDhARpAAQAAABa7AAUy4hUA4QEaQAEAAAAWuwAFMgIZAOEBDCABAAAAGrsABzLCAgDhARpAAQAAABu7AAcy4joA4QEMIAEAAAAcuwAHMoIxAOEBGkABAAAAH7sABTIiIADhARpAAQAAAB+7AAUywqYA4QEaQAEAAAAfuwAHMmImAOEBGkABAAAAILsABzKCFwDhARpAAQAAACG7AAcy4hUA4QEaQAEAAAAhuwAFMgIZAOEBDCABAAAAI7sABzKCWwDhAQwgAQAAACS7AAcyYhwA4QEWBAEAAAAluwAHMqIxAOEBDCABAAAAJrsABzIiHgDhAQwgAQAAACe7AAcyorQA4QEMIAEAAAAouwAHMsK0AOEBDCABAAAAKLsABTJiHADhARYEAQAAACq7AAcyoioA4QEcDAEAAAAruwAHMmIbAOEBDCABAAAALLsABzLCGQDhARYEAQAAAC27AAcygjEA4QEaQAEAAAAwuwAFMiIgAOEBGkABAAAAMLsABTLCNQDhARpAAQAAADC7AAUygiEA4QEaQAEAAAAxuwAHMgIZAOEBDCABAAAAMrsABzLiHADhAR4gAQAAADO7AAYy4hkA4QEaQAEAAAAzuwAFMuIVAOEBGkABAAAAM7sABTICHQDhAR4AAQAAADO7AAQyIjAA4QEMIAEAAAA3uwAHMgIZAOEBDCABAAAAOLsABzICMwDhARpAAQAAADm7AAcyYjIA4QEeAAEAAAA6uwAGMuIVAOEBGkABAAAAOrsABTJiHgDhAQwEAQAAADy7AAcyghcA4QEaQAEAAAA9uwAHMgIZAOEBDCABAAAAPrsABzICmADhAQwgAQAAAD+7AAcyghcA4QEaQAEAAABAuwAHMuIVAOEBDCABAAAAQbsABzJCawDhAR4AAQAAAEK7AAYyolIA4QEMIAEAAABDuwAHMsKwAOEBDCABAAAAQ7sABTKCKQDhARpAAQAAAEW7AAcyAioA4QEaQAEAAABFuwAFMoI2AOEBGkABAAAAR7sABzKiXwDhAQwgAQAAAEi7AAcyoh8A4QEMIAEAAABIuwAFMqJtAOEBDCABAAAASLsARzKCaQDhAQwgAQAAAEm7AEUyok0A4QEaQAEAAABHuwAFMqIgAOEBGkABAAAATbsABzLiFQDhARpAAQAAAE27AAUyAhkA4QEMIAEAAABPuwAHMgIdAOEBGkABAAAATbsABTLiowHhARpAAQAAAFG7AAcyIisA4QEMIAEAAABSuwAHMsIZAOEBFgQBAAAAU7sABzJiGwDhAQwgAQAAAFS7AAcygiIA4QEcDAEAAABVuwAHMmIbAOEBDCABAAAAVrsABzIiegDhARYEAQAAAFe7AAcyAkYA4QEMIAEAAABYuwAHMoIXAOEBGkABAAAAWbsABzICGQDhAQwgAQAAAFq7AAcyIh4A4QEMIAEAAABbuwAHMmI6AOEBHgABAAAAXLsABjICIQDhARpAAQAAAFy7AAUy4hUA4QEaQAEAAABcuwAFMmKyAOEBHgABAAAAX7sABjLCMgDhARpAAQAAAF+7AAUy4hkA4QEaQAEAAABfuwAFMuIVAOEBGkABAAAAX7sABTKCFwDhARYEAQAAAGO7AAcyIoEA4QEMIAEAAABkuwAHMgIZAOEBGkABAAAAZbsABzLiGADhARpAAQAAAGW7AAUywusA4QEaQAEAAABnuwAHMuImAOEBGkABAAAAZ7sABTKCIQDhARpAAQAAAGm7AAcyghYA4QEaQAEAAABpuwAFMuIVAOEBHgABAAAAabsAAjIikgDhARpAAQAAAGy7AAcywhgA4QEMIAEAAABtuwAHMsIfAOEBGkABAAAAbrsABzJCJQDhASAEAQAAAG67AAIy4h8A4QEaQAEAAABuuwAFMuI/AOEBGkABAAAAcbsABzICQADhARpAAQAAAHG7AAUyAlgA4QEaQAEAAABxuwAFMuIVAOEBGkABAAAAcbsABTIC7wDhAQwgAQAAAHW7AAcyohUA4QEMIAEAAAB2uwAHMkI8AOEBDCABAAAAd7sABzICgADhARpAAQAAAHi7AAUywjIA4QEaQAEAAAB4uwAFMuIVAOEBGkABAAAAeLsABTJCGQDhAQwgAQAAAHu7AAcyohEB4QEMIAEAAAB8uwAHMoKjAeEBDCABAAAAfbsABzJiXgDhARYEAQAAAH67AAcyYqAA4QEMIAEAAAB8uwAFMmIwAeEBDCABAAAAgLsABzJi5ADhAQwgAQAAAIG7AAcyIiAA4QEaQAEAAACDuwAFMsI1AOEBGkABAAAAg7sABzLiFQDhARpAAQAAAIO7AAUyQjkA4QEaQAEAAACFuwAHMgIZAOEBDCABAAAAhrsABzJCMQDhARpAAQAAAIW7AAUy4hUA4QEaQAEAAACFuwAFMgJaAOEBGkABAAAAhbsABTJCVADhARpAAQAAAIq7AAcyAhkA4QEMIAEAAACLuwAHMuIZAOEBGkABAAAAirsABTLiFQDhARpAAQAAAIq7AAUyYpEA4QEaQAEAAACKuwAFMoImAOEBGkABAAAAj7sABzKiJgDhARpAAQAAAI+7AAUy4iYA4QEaQAEAAACPuwAFMuIVAOEBGkABAAAAj7sABTICQADhARYEAQAAAJO7AAcy4kwA4QEgQAEAAACUuwACMuJhAOEBGkABAAAAlbsABzIiQADhARpAAQAAAJa7AAcyQiUA4QEMIAEAAACXuwAFMiImAOEBDCABAAAAmLsABzLiFQDhASAEAQAAAJa7AAIyYjEA4QEcDAEAAACauwAHMoJFAOEBGkABAAAAlrsABTICQADhARpAAQAAAJa7AAUy4joA4QEaQAEAAACduwAHMsIYAOEBDCABAAAAnrsABzLiJgDhARpAAQAAAJ27AAUy4hUA4QEaQAEAAACduwAFMsKmAOEBGkABAAAAobsABzIioQDhAR4gAQAAAKK7AAYyYhkA4QEWBAEAAACjuwAHMsIjAOEBDCABAAAAorsABTLiFQDhARpAAQAAAKK7AAUyghcA4QEaQAEAAACmuwAHMuIZAOEBFgQBAAAAp7sABzICTADhARpAAQAAAKi7AAcyQkoA4QEMIAEAAACpuwAHMgKkAeEBDCABAAAAqrsABzKCWwDhAQwgAQAAAKu7AAcyYiAA4QEMIAEAAACsuwAHMqJjAOEBDCABAAAArbsABzJiLgDhARYEAQAAAK67AAcy4iEA4QEMIAEAAACvuwAHMmIgAOEBDCABAAAAsLsABzIiGgDhARYEAQAAALG7AAcyYhwA4QEWBAEAAACyuwAHMkJzAOEBDCABAAAAs7sABzJCSQDhAQwgAQAAALS7AAcy4iEA4QEMIAEAAAC1uwAHMoIuAOEBDCABAAAAtrsABzKCIQDhARpAAQAAALe7AAcyot0A4QEMIAEAAAC4uwAHMsIzAOEBGkABAAAAubsABzJCOgDhASBAAQAAALm7AAIywhgA4QEMIAEAAAC7uwAHMmIoAOEBGkABAAAAubsABTLiFQDhARpAAQAAALm7AAUy4mEA4QEeAAEAAAC+uwAGMiJAAOEBGkABAAAAv7sABTICQADhARpAAQAAAL+7AAUy4hUA4QEeAAEAAADBuwAEMgI6AOEBHgABAAAAwrsABjICMADhAR4AAQAAAMK7AAQyIh4A4QEaQAEAAADEuwAHMmIoAOEBGkABAAAAxLsABTLiFQDhARpAAQAAAMS7AAUyAhkA4QEMIAEAAADHuwAHMgIZAOEBDCABAAAAyLsABzIiLwDhAR4AAQAAAMm7AAYy4hUA4QEaQAEAAADJuwAFMiJAAOEBGkABAAAAy7sABzLiFQDhAR4AAQAAAMu7AAIygkUA4QEaQAEAAADLuwAFMuIVAOEBDCABAAAAzrsABzLiGQDhARYEAQAAAM+7AAcy4ikA4QEaQAEAAADQuwAHMuIVAOEBGkABAAAA0LsABTICKgDhARpAAQAAANC7AAUygiQA4QEeAAEAAADTuwAEMuIZAOEBGkABAAAA07sABTLiFQDhAR4AAQAAANO7AAQywiQA4QEaQAEAAADTuwAFMsIYAOEBGkABAAAA17sABzICGQDhAQwgAQAAANi7AAcy4hgA4QEMIAEAAADYuwAFMuIZAOEBIEABAAAA17sAAjLiFQDhARpAAQAAANe7AAUyAjAA4QEaQAEAAADXuwAFMmJvAOEBDCABAAAA3bsABzJCbADhARpAAQAAAN67AAcwIpoBTgIZMAEAAADxuyAFMUKaAVMCGTABIAEA8bsQBTJCmgEZAhkwAQABAPG7AAUy4iMA4QEMIAEAAADiuwAHMoInAOEBIEABAAAA3rsAAjJCKwDhARpAAQAAAN67AAUyIpAA4QEWBAEAAADluwAHMmIbAOEBDCABAAAA5rsABzJCOADhAQwgAQAAAOe7AAcyAlgA4QEMIAEAAADnuwAFMuIVAOEBIEABAAAA3rsAAjICGQDhAQwgAQAAAOq7AAcywhcA4QEWBAEAAADruwAHMiIgAOEBDCABAAAA7bsABTJiIgDhASIEAQAAAO27AAYyYioA4QEMIAEAAADuuwAHMuIYAOEBDCABAAAA6rsABTIiHADhAQwgAQAAAPC7AAcyIqQB4QEYMAEAAADxuwAHMoIhAOEBDCABAAAA8rsABzIC/QDhARgwAQAAAPO7AAcy4q4A4QEaQAEAAAD0uwAHMuIVAOEBGkABAAAA9LsABTKCzwDhARpAAQAAAPS7AAUy4mkA4QEaQAEAAAD3uwAHMgJAAOEBGkABAAAA97sABTLiFQDhAR4AAQAAAPe7AAIy4oEA4QEaQAEAAAD3uwAFMiK1AOEBGkABAAAA+LsARTJiPwDhARpAAQAAAPy7AAcy4hUA4QEaQAEAAAD8uwAFMmIlAOEBGkABAAAA/LsABTLCGADhARpAAQAAAPy7AAUyghcA4QEaQAEAAAAAvAAHMuIZAOEBGkABAAAAALwABTLCGADhAQwgAQAAAAK8AAcyAhoA4QEaQAEAAAAAvAAFMuIVAOEBGkABAAAAALwABTICBAHhAQwgAQAAAAW8AAcy4tsA4QEMIAEAAAAGvAAHMgLMAOEBDCABAAAAB7wABzJiIADhAR4gAQAAAAi8AAYywhkA4QEWBAEAAAAJvAAHMuJVAOEBHiABAAAACrwABjJCWADhASAEAQAAAAq8AAIyglwA4QEcDAEAAAAMvAAHMsKaAOEBDCABAAAACrwABTLiFQDhAR4AAQAAAAq8AAIy4ngA4QEMIAEAAAAPvAAHMsJWAOEBFgQBAAAAKrwABTLCSgDhARYEAQAAACq8AAUy4lYA4QEcDAEAAAASvAAHMsJ1AOEBGkABAAAAE7wABzLiFQDhAQwgAQAAABS8AAcyYhsA4QEMIAEAAAAVvAAHMuIVAOEBGkABAAAACLwABTKCWgHhAQwgAQAAABe8AAcyQiQA4QEMIAEAAAAYvAAHMoIXAOEBGkABAAAAGbwABzICGgDhARpAAQAAABm8AAUy4hUA4QEaQAEAAAAZvAAFMgIZAOEBDCABAAAAHLwABzICoADhARpAAQAAAB28AAcy4hkA4QEWBAEAAAAevAAHMuIVAOEBGkABAAAAHbwABTLCGADhAQwgAQAAACC8AAcygokA4QEaQAEAAAAdvAAFMmIbAOEBDCABAAAAIrwABzKiGgDhAQwgAQAAACO8AAcyokIA4QEeIAEAAAAkvAAGMqKKAOEBFgQBAAAAJbwABzLCGgDhARwMAQAAACa8AAcy4hUA4QEaQAEAAAAkvAAFMqI9AOEBGkABAAAAJLwABTKiPQDhAR4gAQAAAAi8AAQyQhwA4QEWBAEAAAAqvAAHMgJuAOEBGkABAAAAK7wABzLiFQDhAR4AAQAAACu8AAIyYiUA4QEaQAEAAAArvAAFMiJGAOEBIAABAAAAK7wAAjLCKgDhAR4gAQAAAC+8AAYygicA4QEgQAEAAAAvvAACMkIrAOEBHgABAAAAL7wABDLiFQDhARpAAQAAAC+8AAUyQkMA2QEMIAEAAAAzvAAHMmI3AOEBDCABAAAANLwABzLiHgDhAR4AAQAAADW8AAYy4hUA4QEaQAEAAAA1vAAFMgIqAOEBHiABAAAANbwABDKCJADhAQwgAQAAADi8AAcyIksA4QEMIAEAAAA5vAAHMkKkAeEBDCABAAAAOrwABzKCNwDhAQwgAQAAADu8AAcyYl4A4QEWBAEAAAA8vAAHMuIhAOEBDCABAAAAPbwABzIiGgDhARYEAQAAAD68AAcygjcA4QEMIAEAAAA/vAAHMsIZAOEBFgQBAAAAQLwABzKCFwDhARpAAQAAAEG8AAcy4hkA4QEWBAEAAABCvAAHMgIaAOEBGkABAAAAQbwABTLiFQDhARoEAQAAAEG8AAUyAhkA4QEMIAEAAABFvAAHMoIhAOEBFgQBAAAARrwABzKiKQDhARYEAQAAAEe8AAcyAiIA4QEMIAEAAABJvAAFMgIZAOEBDCABAAAASbwABzKCOwDhAQwgAQAAAEq8AAcygjcA4QEMIAEAAABLvAAHMiIcAOEBDCABAAAATLwABzIiGgDhARYEAQAAAE28AAcyQiQA4QEWBAEAAABOvAAHMoIyAOEBDCABAAAANbwARzICIQDhAQwgAQAAADe8AEUygiQA4QEMIAEAAABRvAAHMuJ6AeEBDCABAAAAUrwABzKingDhAQwgAQAAAFO8AAcyYqQB4QEMIAEAAABUvAAHMoJYAOEBDCABAAAAVbwABzLiegHhAQwgAQAAAFa8AAcyYqAA4QEMIAEAAABWvAAFMmJDANkBHiABAAAAWLwABjLCGQDhARYEAQAAAFm8AAcygkoA4QEgBAEAAABYvAACMiLFAOEBDCABAAAAW7wABzKiSgDhARpAAQAAAFi8AAUy4hUA4QEeAAEAAABYvAACMmIgAOEBDCABAAAAXrwABzJCSQDhAQwgAQAAAF+8AAcy4iAA4QEMIAEAAABgvAAHMgIhAOEBDCABAAAAYLwABTKCsADhAQwgAQAAAGK8AAcyYiYA4QEMIAEAAABjvAAHMoKwAOEBDCABAAAAZLwABzJiJgDhAQwgAQAAAGW8AAcyIqYA4QEeAAEAAABmvAAGM4KkAdkBDCABAAAAZ7wABzSipAHVAQwgAQAAAGi8AAU0op4A4QEMIAEAAABpvAAHNcKkAdUBDCABAAAAarwABTUiYwHhAQwgAQAAAGu8AAc2Yi4A4QEiAAEAAABsvAAGNmIgAOEBDCABAAAAbbwABzZiLgDhARYEAQAAAG68AAc2ghwA4QEWBAEAAABvvAAHN+KkAdUBDCABAAAAcLwABTgCpQFyAhkwAQAAAPO7IAU5IqUBdwIZMAEAAADzuxAFN0KlAXkCGTABAAAA87sABTdipQHZAQwgAQAAAHS8AAc3Yj0A4QEeQAEAAAB1vAAGN6IYAOEBGkABAAAAdbwABTdiKgDhAQwgAQAAAHe8AAc34hUA4QEaQAEAAAB1vAAFN6JNAOEBHkABAAAAdbwABDeiTADhAQwgAQAAAHq8AAc34hkA4QEWBAEAAAB7vAAHN8IXAdkBHiABAAAAfLwABjcCawDhAQwgAQAAAH28AAc3gh0A4QEaQAEAAAB8vAAFN+IVAOEBGkABAAAAfLwABTeiIwDhARYEAQAAAIC8AAc3Qr8A4QEMIAEAAACBvAAHN0I4AOEBFgQBAAAAgrwABzcCGQDhAQwgAQAAAIm8AEc3oicA4QEaQAEAAACKvABHN4InAOEBGkABAAAAi7wARTdCKwDhARpAAQAAAIy8AEU34hUA4QEaQAEAAACNvABFN0IgAOEBDCABAAAAiLwABzcCGQDhAQwgAQAAAIm8AAc3gjAA4QEaQAEAAACKvAAHN6IwAOEBGkABAAAAirwABTfCMADhARpAAQAAAIq8AAU34hUA4QEaQAEAAACKvAAFNyJXAOEBFgQBAAAAjrwABzciGwDhAQwgAQAAAI+8AAc34h4A4QEMIAEAAACQvAAHNwIqAOEBDCABAAAAkLwABTcidADhAQwgAQAAAJK8AAc3wj0A4QEMIAEAAACTvAAHN8I9AOEBDCABAAAAlLwABzdi5ADhAQwgAQAAAJW8AAc3Ak8A4QEuBAEAAACWvAAGNwKGAOEBGkABAAAAlrwABTeCTADhAQwgAQAAAJi8AAc3IrEA4QEMIAEAAACZvAAHNwJGAOEBDCABAAAAmrwABzfiFQDhASAAAQAAAJa8AAI3onkA4QEMIAEAAACcvAAHN2IxAOEBHAwBAAAAnbwABzciZQDhAR4AAQAAAJa8AAQ3gqUB2QEiAAEAAACfvAAGN4IvAOEBIgABAAAAoLwABjciIADhAQwgAQAAAKK8AAU3QiAA4QEMIAEAAACivAAHNyIjAOEBDCABAAAAo7wABzdikADhAS4gAQAAAKS8AAY3AkAA4QEgQAEAAACkvAACN0IoAOEBDCABAAAAprwABzcCKgDhAQwgAQAAAKa8AAU34hUA4QEeQAEAAACkvAACNwJAAOEBGkABAAAApbwARTdCKADhAQwgAQAAAKa8AEc3AioA4QEMIAEAAACnvABFN+IVAOEBHgABAAAAqLwAQjdCdADhAR4gAQAAAKS8AAQ3IhkB4QEMIAEAAACuvAAHN4IXAOEBLgQBAAAAr7wABjfiGQDhARpAAQAAAK+8AAU3oiQA4QEcDAEAAACxvAAHN2IbAOEBDCABAAAAsrwABzcCGgDhAR4gAQAAAK+8AAQ34hUA4QEgQAEAAACvvAACNwIZAOEBDCABAAAAtbwABzfiIQDhAQwgAQAAALa8AAc3YiAA4QEMIAEAAAC3vAAHN+IhAOEBDCABAAAAuLwABzei5wDhARYEAQAAALm8AAc3YhoA4QEMIAEAAAC6vAAHNyItAOEBDCABAAAAu7wABzcikgDhASIEAQAAALy8AAY3wlUA4QEWBAEAAAC9vAAHNwIZAOEBDCABAAAAvrwABzeiJwDhARpAAQAAAMi8AEc3gicA4QEWBAEAAADJvABHN0IrAOEBGkABAAAAyrwARTfiFQDhARpAAQAAAMu8AEU34iEA4QEMIAEAAADDvAAHN2IgAOEBDAQBAAAAxLwABzciGgDhARYEAQAAAMW8AAc3QiAA4QEMIAEAAADGvAAHNwIZAOEBDCABAAAAx7wABzeCMADhARpAAQAAAMi8AAc3ojAA4QEgBAEAAADIvAACN8IwAOEBGkABAAAAyLwABTfiFQDhARpAAQAAAMi8AAU3YhsA4QEMIAEAAADMvAAHN+IfAOEBDCABAAAAo7wABTfCSgDhARYEAQAAAM68AAc3wiAA4QEcDAEAAADPvAAHN2IbAOEBDCABAAAA0LwABzdCHADhAQwgAQAAANG8AAc3wnQA4QEMIAEAAADSvAAHN8IZAOEBFgQBAAAA07wABzcCGQDhAQwgAQAAANS8AAc34hgA4QEMIAEAAADUvAAFN4IxAOEBIEABAAAA1rwAAjfCVgDhAQwgAQAAANe8AAc3IiAA4QEaQAEAAADZvAAFN8I1AOEBGkABAAAA2bwABzfiFQDhARpAAQAAANm8AAU3AhkA4QEMIAEAAADbvAAHN6JVAOEBDCABAAAA3bwABTfiNADhAQwgAQAAAN28AAc3oiMA4QEWBAEAAADevAAHN2JpAOEBHAwBAAAA37wABzdiGwDhAQwgAQAAAOC8AAc3Ik8A4QEMIAEAAADhvAAHNwI0AOEBFgQBAAAA4rwABzeCFwDhARpAAQAAAOO8AAc34hkA4QEWBAEAAADkvAAHNwIaAOEBGkABAAAA47wABTfiFQDhARpAAQAAAOO8AAU3AhkA4QEMIAEAAADnvAAHN2JvAOEBDCABAAAA6LwABzcCWADhAQwgAQAAAOi8AAU3wmcA4QEMIAEAAADrvAAFN+I0AOEBDCABAAAA67wABzfCzgDhAQwgAQAAAOy8AAc3oqUB4QEMIAEAAADtvAAHN8KlAeEBDCABAAAA7rwABzeCWwHhAQwgAQAAAO68AAU3wkkA4QEMIAEAAADwvAAHN8JdAeEBDCABAAAA8bwABzfCdgDhARYEAQAAAPK8AAc34iEA4QEMIAEAAADzvAAHN8JIAOEBDCABAAAA9LwABzdi/QDhAQwgAQAAAPW8AAc3IiAA4QEMIAEAAAD3vAAFN4J+AOEBDCABAAAA97wABzeiSADhARpAAQAAAPi8AAc3IlIA4QEMIAEAAAD5vAAHN2I6AOEBIgABAAAA+rwABjdiIADhARYEAQAAAPu8AAc3glgA4QEaQAEAAAD8vAAHN2IqAOEBDCABAAAA/bwABzfiFQDhAQwgAQAAAP68AAc3wiAA4QEcDAEAAAD/vAAHN2IbAOEBDCABAAAAAL0ABzfiIADhAQwgAQAAAAG9AAc3oicA4QEaQAEAAAAIvQBHN4InAOEBGkABAAAACb0ARTciKwDhAQwgAQAAAAq9AEU3AioA4QEMIAEAAAALvQBFN0IrAOEBGkABAAAADL0ARTfiFQDhARpAAQAAAA29AEU3gjAA4QEaQAEAAAAIvQAHN6IwAOEBGkABAAAACL0ABTeiRgDhAQwgAQAAAAq9AAU3AioA4QEMIAEAAAAKvQAFN8IwAOEBGkABAAAACL0ABTfiFQDhARpAAQAAAAi9AAU3IiYB4QEMIAEAAAAOvQAHN+KlAeEBDCABAAAAD70ABzdCjADhAQwgAQAAABC9AAc3AqYB4QEMIAEAAAARvQAHNwJBAdkBDCABAAAAEr0ABzeiNADhAQwgAQAAABO9AAc3ojcB4QEWBAEAAAAUvQAHN0IgAOEBDCABAAAAFb0ABzcCNADhASIAAQAAABa9AAY3QiAA4QEMIAEAAAAXvQAHN0IrAOEBDCABAAAAGL0ABzeCOQDhAR4gAQAAABm9AAY3whkA4QEWBAEAAAAavQAHNwJDAOEBDCABAAAAG70ABzcCIwDhAQwgAQAAABy9AAc3QiUA4QEgQAEAAAAZvQACNyImAOEBGkABAAAAHr0ABzdiHwDhARpAAQAAAB69AAU34hUA4QEaQAEAAAAevQAFNwIqAOEBGkABAAAAHr0ABTfCVgDhARYEAQAAACm9AAU3wkoA4QEWBAEAAAApvQAFN2IbAOEBDCABAAAAJL0ABzfiFQDhAQwgAQAAACW9AAc3IqcA4QEMIAEAAAAlvQAFNyKUAOEBFgQBAAAAJ70ABzeCswDhAR5AAQAAABm9AAQ3QqQA4QEWBAEAAAApvQAHNyJuAOEBDCABAAAAKr0ABzcCsQDhAQwgAQAAACu9AAc3AjQA4QEWBAEAAAAsvQAHN2JvAOEBDCABAAAALb0ABzcCWADhAQwgAQAAAC29AAU3YnoA4QEMIAEAAAAvvQAHN8JYAOEBDCABAAAAML0ABzfCSgDhARpAAQAAADG9AAc3AhkA4QEMIAEAAAAyvQAHN+IeAOEBDCABAAAAM70ABzfiFQDhARpAAQAAADG9AAU3oj0A4QEaQAEAAAAxvQAFNyIYAOEBDCABAAAANr0ABzdilADhAQwgAQAAADe9AAc34pwA4QEMIAEAAAA4vQAHN0JpAOEBDCABAAAAOb0ABzeCtADhAQwgAQAAADq9AAc3AhkA4QEMIAEAAAA7vQAHN4IxAOEBGkABAAAAPr0ABTciIADhARpAAQAAAD69AAU3wjUA4QEaQAEAAAA+vQAHN+IVAOEBGkABAAAAPr0ABTcipgHhAQwgAQAAAEK9AEc3wnQA4QEMIAEAAABBvQAHN6LSAOEBDCABAAAAQr0ABzfCGgDhAQwgAQAAAEO9AAc34j8A4QEeAAEAAABEvQAGN0IoAOEBDCABAAAARb0ABzfiFQDhARpAAQAAAES9AAU3wkkB4QEMIAEAAABHvQAHN6LRAOEBDCABAAAASL0ABzeiKwDhAR4AAQAAAEm9AAY34hkA4QEaQAEAAABJvQAFN4JYAOEBFgQBAAAAS70ABzfiHgDhAQwgAQAAAEy9AAc34hUA4QEeAAEAAABJvQACN6JnAOEBHAwBAAAATr0ABzdCRgDhAR5AAQAAAEm9AAQ3YjcA4QEMIAEAAABQvQAHNwJoAOEBDCABAAAAUb0ABzfi5ADZAQwgAQAAAFK9AAc3oo4A4QEMIAEAAABTvQAHN8IYAOEBDCABAAAAVL0ABzcCeQDhAQwgAQAAAF69AAU3YhwA4QEWBAEAAABWvQAHN+JWAOEBHAwBAAAAV70ABzdiIgDhARYEAQAAAFi9AAc3wiAA4QEcDAEAAABZvQAHN2IcAOEBFgQBAAAAWr0ABzeiKgDhARwMAQAAAFu9AAc3YhsA4QEMIAEAAABcvQAHNwIwAOEBDCABAAAAVL0ABTciNgDhAQwgAQAAAF69AAc3QqYB4QEMIAEAAABmvQAFN+IhAOEBDCABAAAAYL0ABzficADhAQwgAQAAAGG9AAc3ItIA4QEMIAEAAABivQAHN+JHAOEBDCABAAAAY70ABzeCtgDhAQwgAQAAAGS9AAc3gpQA4QEMIAEAAABSvQAFN+J1AOEBDCABAAAAZr0ABzcibQDZARgwwQMAAGe9AAc4wmQBCgIZMAEAAABqvSAFOWJ4AA8CGTABAAAAar0QBTdieAARAhkwwQMAAGq9AAU3AooA4QEMIAEAAABrvQAHN4JNAOEBIgABAAAAbL0ABjcCDAHhAQwgAQAAAG29AAc34h8A4QEMIAEAAABtvQAFN8IXAOEBDCABAAAAb70ABzdiHADhARYEAQAAAHC9AAc3Aq0A4QEMIAEAAABxvQAHN4KFAOEBDCABAAAAcr0ABzfCgADhARYEAQAAAHO9AAc3wjwA4QEWBAEAAAB0vQAHN4IcAOEBFgQBAAAAdb0ABzfiIQDhAQwgAQAAAHa9AAc3YiAA4QEMIAEAAAB3vQAHN2KXAOEBDCABAAAAcr0ABTeiNwDhAQwgAQAAAHm9AAc3ooYA4QEMIAEAAAB6vQAHNyIgAOEBDCABAAAAfL0ABTcCRgDhAQwgAQAAAHy9AAc3IhoA4QEiAAEAAAB9vQAGN4IcAOEBFgQBAAAAfr0ABzfiIQDhAQwgAQAAAH+9AAc3Ai0A4QEWBAEAAACAvQAHN2LoAOEBDCABAAAAgb0ABzdCJADhARYEAQAAAIK9AAc3whoA4QEcDAEAAACDvQAHN2I3AOEBDCABAAAAhL0ABzeitQDhARgwwQMAAIW9AAc3YhwA4QEWBAEAAACGvQAHNyJ0AOEBFgQBAAAAh70ABzfiYADhASIAAQAAAIi9AAY3olQA4QEMIAEAAACJvQAHN2IcAOEBFgQBAAAAir0ABzfiIQDhAQwgAQAAAIu9AAc3YiAA4QEMIAEAAACMvQAHN2IiAOEBFgQBAAAAjb0ABzcCGQDhAQwgAQAAAI69AAc3oicA4QEaQAEAAACPvQAHNwIZAOEBDCABAAAAkL0ABzeCMADhARpAAQAAAJG9AAc3YpUA4QEMIAEAAACSvQAHN6InACECFgQBAAAAk70ABTciogDhAQwgAQAAAJS9AAc3AmIA4QEWBAEAAACVvQAHNyJiAOEBDCABAAAAlr0ABzfiKQDhAQwgAQAAAJe9AAc3IiYA4QEMIAEAAACYvQAHN2IbAOEBFgQBAAAAmb0ABzeCTADhAQwgAQAAAJq9AAc34hUA4QEiAAEAAACbvQAGN8JCAOEBDCABAAAAnL0ABzeCJADhAQwgAQAAAJ29AAc3wiYA4QEeAAEAAACevQAGN+IVAOEBGkABAAAAnr0ABTfCHwHhAQwgAQAAAKC9AAc34rsA4QEMIAEAAAChvQAHNwJRAeEBFgQBAAAAor0ABznCHQDnARgwAQAAAKO9EAU3wh0A4QEYMAEAAACjvQAHN0IdAOEBFgQBAAAApb0ABzfiIQDhAQwgAQAAAKa9AAc3AiUA4QEMIAEAAACnvQAHN+IhAOEBDCABAAAAqL0ABzciLgDhASIAAQAAAKm9AAY3wjQA4QEMIAEAAACqvQAHNyKCAOEBDCABAAAAq70ABzeiJwDhARpAAQAAAKy9AAc3QisA4QEaQAEAAACsvQAFN4IwAOEBGkABAAAArr0ABzfCMADhARpAAQAAAK69AAU3gjEA4QEWBAEAAACwvQAHN4JMAOEBDCABAAAAsb0ABzfCHQDhAQwgAQAAALK9AAc3IhwA4QEMIAEAAACzvQAHN6IjAOEBGkABAAAAtL0ABzfiIQDhAQwgAQAAALW9AAc3gqEA4QEMIAEAAAC2vQAHNyIaAOEBFgQBAAAAt70ABzcCGQDhAQwgAQAAALi9AAc3YhoA4QEeQAEAAAC5vQAGN2IfAOEBGkABAAAAub0ABTfiFQDhAR4gAQAAALm9AAI3oh8A4QEeIAEAAAC5vQAEN6IpAOEBFgQBAAAAvb0ABzfCMQDhAQwgAQAAAL69AAc34sgA4QEMIAEAAAC/vQAHN4L0AOEBHiABAAAAwL0ABjcCPQDhAQwgAQAAAMG9AAc3AmMA4QEMIAEAAADAvQAFN6IjAOEBDCABAAAAw70ABzfCIwDhAQwgAQAAAMO9AAU3oiMA4QEWBAEAAADFvQAHN4KnAOEBDCABAAAAv70ABTciRgDhAQwgAQAAAMe9AAc3IoUB4QEiAAEAAADIvQAGN2IkAOEBDCABAAAAyb0ABzcCLQDhARYEAQAAAMq9AAc3YiYA4QEMIAEAAADLvQAHNwIlAOEBFgQBAAAAzL0ABzfCFgDhAQwgAQAAAM29AAc3IjwA4QEWBAEAAADOvQAHN4IZAOEBDCABAAAA0L0ABTeiPADhAQwgAQAAANC9AAU3IhsA4QEMIAEAAADRvQAHN4KBAOEBDCABAAAA0r0ABzcicgDhAQwgAQAAANO9AAc3IhoA4QEWBAEAAADUvQAHN+IhAOEBDCABAAAA1b0ABzdCJwDhASIEAQAAANa9AAY3oh4A4QEMIAEAAADXvQAHNwItAOEBFgQBAAAA2L0ABzdiHADhARYEAQAAANm9AAc3In0A4QEMIAEAAADavQAHNwJAAOEBFgQBAAAA270ABzfCFwDhARYEAQAAANy9AAc3YiQA4QEMIAEAAADdvQAHN2IuAOEBFgQBAAAA3r0ABzdiHADhARYEAQAAAN+9AAc3whcA4QEiAAEAAADgvQAGNyKDAOEBDCABAAAA4b0ABzeCGADhAQwgAQAAAOK9AAc3QmgA4QEMIAEAAADjvQAHN2IcAOEBFgQBAAAA5L0ABzciGwDhAQwgAQAAAOW9AAc34iAA4QEMIAEAAADmvQAHNyJ9AOEBDCABAAAA570ABzcCLgDhAQwgAQAAAOi9AAc3AhoA4QEMIAEAAADovQAFNyIcAOEBDCABAAAA6r0ABzfiNwDhARYEAQAAAOu9AAc3ghwA4QEWBAEAAADsvQAHN0IUAOEBDCABAAAA7b0ABzdiHADhARYEAQAAAO69AAc3YhwA4QEWBAEAAADvvQAHN2IgAOEBDCABAAAA8L0ABzdiHADhARYEAQAAAPG9AAc3YhsA4QEMIAEAAADyvQAHN6JjAOEBDCABAAAA870ABzciHADhAQwgAQAAAPS9AAc3Yi4A4QEWBAEAAAD1vQAHN8JIAOEBDCABAAAA9r0ABzdiQADhAQwgAQAAAPe9AAc3Yi4A4QEWBAEAAAD4vQAHN2IgAOEBDCABAAAA+b0ABzdiHADhARYEAQAAAPq9AAc3QnMA4QEMIAEAAAD7vQAHN8IuAOEBDCABAAAA/L0ABzeCFwDhAQwgAQAAAP29AAc3YhwA4QEWBAEAAAD+vQAHNwI4AOEBDCABAAAA/70ABzciMADhASIAAQAAAAC+AAY3whoA4QEcDAEAAAABvgAHN+KLAOEBDCABAAAAAr4ABzfCPADhARYEAQAAAAO+AAc3AnEA4QEMIAEAAAAEvgAFN2IgAOEBDCABAAAABb4ABzcicQDhAQwgAQAAAAS+AAU34lIA4QEMIAEAAAAEvgBHN0IzAOEBDCABAAAABr4ARTeiJwDhARpAAQAAAAm+AAc3QisA4QEaQAEAAAAJvgAFN4IwAOEBGkABAAAAC74ABzfCMADhARpAAQAAAAu+AAU3giwA4QEMIAEAAAANvgAHN4JsAOEBDCABAAAADr4ABzeCHADhARYEAQAAAA++AAc3QkoA4QEMIAEAAAAQvgAHNwIlAOEBFgQBAAAAEb4ABzcCLQDhARYEAQAAABK+AAc3IkEA4QEMIAEAAAATvgAHN4I9AOEBFgQBAAAAFL4ABzeCFwDhARYEAQAAABW+AAc3IhwA4QEMIAEAAAAWvgAHN2IuAOEBFgQBAAAAF74ABzciOwDhAQwgAQAAABi+AAc34kcA4QEMIAEAAAAZvgAHN2I3AOEBFgQBAAAAGr4ABzciGgDhARYEAQAAABu+AAc3YkkA4QEMIAEAAAAcvgAHN4JIAOEBDCABAAAAHb4ABzciLgDhARYEAQAAAB6+AAc3gi4A4QEMIAEAAAAgvgAFN6I8AOEBDCABAAAAIL4ABTciIADhAQwgAQAAADC+AAU3AhkA4QEMIAEAAAAqvgBHN6InAOEBGkABAAAAK74ARzeCJwDhARpAAQAAACy+AEU3IisA4QEMIAEAAAAlvgAHN0IrAOEBGkABAAAALr4ARTfiFQDhARpAAQAAAC++AEU3YiAA4QEMIAEAAAAovgAHNyIaAOEBFgQBAAAAKb4ABzcCGQDhAQwgAQAAACq+AAc3gjAA4QEaQAEAAAArvgAHN6IwAOEBGkABAAAAK74ABTeiRgDhAQwgAQAAAC2+AAc3wjAA4QEaQAEAAAArvgAFN+IVAOEBGkABAAAAK74ABTdCbgDhAQwgAQAAADC+AAc3IjsA4QEMIAEAAAAxvgAHN2I5AOEBDCABAAAANb4ABTdCJADhARYEAQAAADO+AAc3op8B4QEMIAEAAAA2vgAFN6JUAOEBDCABAAAANb4ABTeC/wDhAQwgAQAAADa+AAU3YlEA4QEMIAEAAAA3vgAHN+IhAOEBDCABAAAAOL4ABzfiIQDhAQwgAQAAADm+AAc3wh8A4QEMIAEAAAA6vgAHN8I0AOEBDCABAAAAO74ABzdiHADhARYEAQAAADy+AAc3Yi0A4QEMIAEAAAA9vgAHNwJBAOEBDCABAAAAPr4ABzeCNADhARYEAQAAAD++AAc3whoA4QEcDAEAAABAvgAHN8IZAOEBDCABAAAAQb4ABzfiIQDhAQwgAQAAAEK+AAc3YiAA4QEMIAEAAABDvgAHNyIaAOEBFgQBAAAARL4ABzciGADhASIAAQAAAEW+AAY3Yi4A4QEWBAEAAABGvgAHN2IcAOEBFgQBAAAAR74ABzeiKgDhARwMAQAAAEi+AAc3IjsA4QEMIAEAAABJvgAHN+IsAOEBDCABAAAASr4ABzfifQDhAQwgAQAAAEu+AAc3IjwA4QEWBAEAAABMvgAHN+IZAOEBFgQBAAAATb4ABzfCGADhARYEAQAAAE6+AAc3AjQA4QEWBAEAAABPvgAHN8IfAOEBDCABAAAAUL4ABzciGgDhARYEAQAAAFG+AAc3QjIA4QEMIAEAAABSvgAFN0IyAOEBDCABAAAAU74ABzeiXwDhAQwgAQAAAFS+AAc3gjAB4QEMIAEAAABUvgAFN8JOAOEBDCABAAAAVr4ABzfiHgDhAQwgAQAAAFe+AAc3YjkA4QEMIAEAAABYvgAHNwIqAOEBDCABAAAAV74ABTciHgDhAQwgAQAAAFq+AAc3QiAA4QEMIAEAAABbvgAHN2IcAOEBFgQBAAAAXL4ABzeiKgDhARwMAQAAAF2+AAc4YqYBTgIZMAEAAABiviAFOQI+AVMCGTABAAAAYr4QBTcCPgEZAhkwAQAAAGK+AAU34joA4QEMIAEAAABhvgAHNwJ/AOEBGDABAAAAYr4ABzdiSQDhARYEAQAAAGO+AAc3AnMA4QEMIAEAAABkvgAHOcJQAOcBGDABAAAAZb4QBTfCUADhARgwAQAAAGW+AAc34igA4QEMIKEEAABnvgAHNyJQAOEBFgQBAAAAaL4ABzdiaQDhATAEAQAAAGm+AAY3gqsA4QEMIIEEAABnvgAFN0IdAOEBFgQBAAAAa74ABzfCGADhAQwgAQAAAGy+AAc3wh4A4QEWBAEAAABtvgAHN6InAOEBGkABAAAAbr4ABzeCMADhARpAAQAAAG++AAc3AjAA4QEMIAEAAABsvgAFN4KmAdkBHgABAAAAcb4ABjei0QDhAR4AAQAAAHK+AAY3gkMA4QEMIAEAAABzvgAHNyJGAOEBDCABAAAAdL4ABzfCVgDhARYEAQAAAHq+AAU3wkoA4QEWBAEAAAB6vgAFN+JWAOEBHAwBAAAAd74ABzdiGwDhAQwgAQAAAHi+AAc3YqEA4QEMIAEAAAB0vgAFN0IUAOEBIgABAAAAer4ABjfiFQDhARpAAQAAAHG+AAU34pwA4QEMIAEAAAB8vgAHN8JOAOEBHiABAAAAfb4ABjciHQDhAQwgAQAAAH6+AAc3YrMA4QEMIAEAAAB/vgAFN4IWAOEBDCABAAAAf74ABTciugDhAQwgAQAAAIG+AAc3oiMA4QEMIAEAAACCvgAHN8IjAOEBDCABAAAAgr4ABTfieADhAQwgAQAAAIS+AAc3IlAA4QEMIAEAAACFvgAHN8JWAOEBFgQBAAAAmb4ABTfCSgDhARYEAQAAAJm+AAU34lYA4QEcDAEAAACIvgAHN+IVAOEBGkABAAAAfb4ABTdiGwDhARYEAQAAAIq+AAc3AksA4QEeAAEAAACLvgAGN+IeAOEBDCABAAAAjL4ABzfiFQDhARogAQAAAIu+AAU3wl8A4QEaQAEAAACLvgAFNyJXAOEBFgQBAAAAj74ABzei+ADhARYEAQAAAJC+AAc3olIA4QEMIAEAAACRvgAHN+JpAOEBDCABAAAAkr4ABzdiJADhAR4AAQAAAJO+AAY3YioA4QEMIAEAAACUvgAHNyIYAOEBDCABAAAAlb4ABzeibwDhARYEAQAAAJa+AAc3gp8A4QEMIAEAAACXvgAHN4IkAOEBDCABAAAAmL4ABzciOwDhARYEAQAAAJm+AAc3gqAA4QEaQAEAAACavgAHN+I6AOEBDCABAAAAm74ABzeieQDhAQwgAQAAAJy+AAc3Ak8A4QEMIAEAAACdvgAHN0KrAOEBDCABAAAAnr4ABzcCTADhAQwgAQAAAJ++AAc3gjUA4QEMIAEAAACgvgAHN+IVAOEBHgABAAAAmr4AAjeiIwDhARYEAQAAAKK+AAc3Am4A4QEMIAEAAACjvgAHN6IfAOEBGkABAAAAmr4ABTeCJADhAQwgAQAAAKW+AAc3wjQA4QEMIAEAAACmvgAHNyJGAOEBDCABAAAAp74ABzfCTADhAS4EAQAAAKi+AAY34hUA4QEaQAEAAACovgAFNyJgAOEBHgABAAAAqL4ABDdiJgHZAR5AAQAAAKu+AAY3AiMA4QEMIAEAAACsvgAHN0JkAOEBHgABAAAArb4ABjdiVgDhAQwgAQAAAK6+AAc34hUA4QEaQAEAAACrvgAFN2JWAOEBGkABAAAAq74ABTeCfwDhAQwgAQAAALG+AAc3YuYA4QEMIAEAAACyvgAHN+IVAOEBHkABAAAAq74AAjcCeADhAR4AAQAAAKu+AAQ3YlQA4QEMIAEAAAC1vgAHNwJSAOEBDCABAAAAtr4ABTdiHADhARYEAQAAALe+AAc3IlIA4QEMIAEAAAC2vgAFN2IkAOEBDCABAAAAub4ABzdCJADhASIEAQAAALq+AAY3wlwA4QEMIAEAAAC7vgAHNwIZAOEBDCABAAAAvL4ABzeiJwDhARpAAQAAAMa+AEc3gicA4QEaQAEAAADHvgBFN0IrAOEBGkABAAAAyL4ARTfiFQDhARpAAQAAAMm+AEU34iEA4QEMIAEAAADBvgAHN2IgAOEBDCABAAAAwr4ABzciGgDhARYEAQAAAMO+AAc3QiAA4QEMIAEAAADEvgAHNwIZAOEBDCABAAAAxb4ABzeCMADhARpAAQAAAMa+AAc3ojAA4QEaQAEAAADGvgAFN8IwAOEBGkABAAAAxr4ABTfiFQDhAR4AAQAAAMa+AAI3whoA4QEcDAEAAADKvgAHN6J1AOEBDCABAAAAur4ABzfiQgDhAQwgAQAAAMy+AAc3AiIA4QEMIAEAAADOvgAFN6I8AOEBDCABAAAAzr4ABzdCHQDhARYEAQAAAM++AAc34koA4QEMIAEAAADQvgAHN4K5AOEBFgQBAAAA0b4ABzdCIADhAQwgAQAAANK+AAc3wigA4QEcDAEAAADTvgAHN2IbAOEBDCABAAAA1L4ABzfCewDhARYEAQAAANW+AAc3QpAA4QEMIAEAAADWvgAHN0I5AOEBFgQBAAAA174ABzdiIwDhAQwgAQAAANi+AAc3giMA4QEMIAEAAADYvgAFN2IcAOEBFgQBAAAA2r4ABzeiKgDhARwMAQAAANu+AAc3QiAA4QEMIAEAAADcvgAHN2IeAOEBIgABAAAA3b4ABjdiPQHhAQwgAQAAAN6+AAc3Qh0A4QEMIAEAAADfvgAHOYJEAPsBFgQBQAEA4b4QBTeCRADhASwEAQAAAOG+ABY3YqQA4QEMIAEAAADivgAHNyKCAOEBDCABAAAA474ABzeCigDhAQwgAQAAAOS+AAc5gikA5wEcDAFAAQDmvhAFN4IpAOEBHAwBAAAA5r4AFzfCXQDhAQwgAQAAAOe+AAU3QnsA4QEMIAEAAADnvgAFNyJ0AOEBFgQBAAAA6b4ABzciGgDhARYEAQAAAOq+AAc3YjcA4QEMIAEAAADrvgAHN4I7AOEBDCABAAAA7L4ABzfiUgDhAQwgAQAAAO2+AAc3IiUA4QEWBAEAAADuvgAHNwIZAOEBDCABAAAA774ABzfCXQDhAQwgAQAAAPC+AAU3QnsA4QEMIAEAAADwvgAFNyJtAOEBFgQBAAAA8r4ABzfCOQDhAQwgAQAAAPO+AAc34hUA4QEMIAEAAAD0vgAHNyKnAOEBDCABAAAA9L4ABTeCTQDhARYEAQAAAPa+AAc5oqYB5wEYMAEAAAD3vhAFN6KmAeEBGDABAAAA974ABzeiVADhAQwgAQAAAPm+AAc3Yi4A4QEWBAEAAAD6vgAHN0IgAOEBDCABAAAA+74ABzfiGADhAQwgAQAAAPm+AAU3wjQA4QEWBAEAAAD9vgAHN6IkAOEBHAwBAAAA/r4ABzdiGwDhAQwgAQAAAP++AAc3opgA4QEMIAEAAAAAvwAHN4JiAOEBGkABAAAAAb8ABzeiSgDhAQwgAQAAAAO/AAU3Yi8A4QEMIAEAAAADvwAHN0JnAOEBDCABAAAABL8ABzfiLADhAQwgAQAAAAW/AAc3Ai0A4QEWBAEAAAAGvwAHN+IlAOEBDCABAAAAB78ABzdiJADhAQwgAQAAAAi/AAc34hUA4QEaQAEAAAABvwAFNyIcAOEBDCABAAAACr8ABzfiRADhARYEAQAAAAu/AAc3ghwA4QEWBAEAAAAMvwAHN8IaAOEBHAwBAAAADb8ABzdCSQDhAQwgAQAAAA6/AAc34iwA4QEMIAEAAAAPvwAHNwItAOEBFgQBAAAAEL8ABzdCLQDhAQwgAQAAABG/AAc3QkkA4QEMIAEAAAASvwAHN0IrAOEBDCABAAAAFL8ABTciHADhAQwgAQAAABS/AAU3QpgA4QEaQAEAAAABvwAFN8KmAeEBDCABAAAAFr8ABzfCiwDhAQwgAQAAABe/AAc3YjMA4QEMIAEAAAAYvwAHNyLmAOEBDCABAAAAGb8ABzdCKwDhAQwgAQAAABi/AAU3wh4A4QEiAAEAAAAbvwAGN0IgAOEBDCABAAAAHL8ABzfCGgDhARwMAQAAAB2/AAc3onUA4QEMIAEAAAAbvwAFN+JmAOEBHgABAAAAH78ABjcCIwDhAQwgAQAAACC/AAc34hUA4QEaQAEAAAAfvwAFN+I6AOEBHiABAAAAIr8ABjeiJgDhASAAAQAAACK/AAI3AoEA4QEMIAEAAAAkvwAHN8ImAOEBDCABAAAAJb8ABzfiJgDhAR4gAQAAACK/AAQ34hUA4QEaQAEAAAAivwAFN+L2AOEBDCABAAAAKL8ABzfCMQDhAR4AAQAAACm/AAY3Qh0A4QEMIAEAAAAqvwAHNwIZAOEBDCABAAAAK78ABzeCMQDhASAAAQAAACy/AAI3IiAA4QEaQAEAAAAuvwAFN8I1AOEBGkABAAAALr8ABzfiFQDhASAAAQAAAC6/AAI3oicA4QEeAAEAAAAwvwAGN0IqAOEBDCABAAAAMb8ABzdiIgDhASIAAQAAADK/AAY3AjUA4QEMIAEAAAAzvwAHN8JZAOEBDCABAAAAM78ABTdiXgDhASIAAQAAADW/AAY34iEA4QEMIAEAAAA2vwAHN0ItAOEBDCABAAAANb8ABTcC/QDhAQwgAQAAADm/AAU3Ai8A4QEMIAEAAAA5vwAFN+L0AOEBGkABAAAAOr8ABzfCywDhARpAAQAAADu/AAc34qYB4QEMIAEAAAA8vwAHNwKnAeEBDCABAAAAPL8ABTfiFQDhARpAAQAAADu/AAU3wvcA4QEiAAEAAAA/vwAGNwJ0AOEBDCABAAAAP78ABTfiVADhAQwgAQAAAD+/AAU3InQA4QEMIAEAAABCvwAHN0IzAOEBDCABAAAAQr8ABTfCyADhAQwgAQAAAES/AAc3QnsA4QEMIAEAAABEvwAFN6IjAOEBDCABAAAARr8ABzdCPADhAQwgAQAAAEe/AAc3ohcA4QEMIAEAAABIvwAHNyIYAOEBFgQBAAAASb8ABzcCzADhARYEAQAAAEq/AAc5IjIA+wEsBAFAAQBMvxAENyIyAOEBLAwBAOAATL8AFjeiVQDhAQwgAQAAAE2/AAc3wiAA4QEcDAEAAABOvwAXN4K2ANkBDCABAAAAT78ABzciLwDhAQwgAQAAAFC/AAc3IowA4QEMIAEAAABRvwAHNyKnAeEBDCABAAAAUr8ABzdioADhAQwgAQAAAFO/AAc3wgIA4QEeAAEAAABUvwAGN4JDAOEBHiAhBQAAVb8ABjeCdgDhAQwgAQAAAFa/AAc3gkwA4QEMIAEAAABXvwAHN+IVAOEBFgQBAAAAWL8ABTciRgDhAQwgAQAAAFm/AAc34hUA4QEaQAEAAABVvwAFNwJuAOEBDCABAAAAW78ABzdiGwDhARYEAQAAAFy/AAc3IlcA4QEWBAEAAABdvwAHN2IbAOEBDCABAAAAXr8ABzciegDhASwAAQAAAF+/AAY3AioA4QEeIAEFAABVvwAEN4IkAOEBDCABAAAAYb8ABzfCVgDhARYEAQAAAGW/AAU3wkoA4QEWBAEAAABlvwAFNwJdAOEBIAABAAAAZL8ABjciQQDhARYEAQAAAGW/AAc3wn8A4QEMIAEAAABmvwAHN0KnAeEBDCABAAAAZr8ABTdCOADhASIAAQAAAGi/AAY3wkQA4QEMIAEAAABpvwAHN0IgAOEBDCABAAAAar8ABzcCGQDhAR4gAQAAAGu/AAY3whcA4QEWBAEAAABsvwAHN+IVAOEBGkABAAAAa78ABTdiGwDhARYEAQAAAG6/AAc3oioA4QEcDAEAAABvvwAHN2IbAOEBDCABAAAAcL8ABzfiGADhAR4gAQAAAGu/AAQ3ghcA4QEaQAEAAAByvwAHN+IZAOEBIEABAAAAcr8AAjcCGgDhARpAAQAAAHK/AAU34hUA4QEuQAEAAAByvwACNwIZAOEBDCABAAAAdr8ABzfCFwDhARYEAQAAAHe/AAc34hgA4QEMIAEAAAB2vwAFN4IhAOEBFgQBAAAAeb8ABzdiGgDhAQwgAQAAAHq/AAc3giEA4QEiIAEAAAB7vwAGN2IbAOEBFgQBAAAAfL8ABzeCFgDhAQwgAQAAAHu/AAU3QiAA4QEMIAEAAAB+vwAHN+JiAOEBLgABAAAAf78ABjeCtgDhAQwgAQAAAIC/AAc3olQA4QEMIAEAAACBvwAHN2IaAOEBLiABAAAAgr8ABjciVwDhAR4gAQAAAIO/AAY3okwA4QEeAAEAAACEvwAGNyJWAOEBDCABAAAAhb8ABzcCJgDhAQwgAQAAAIa/AAc3gs0A4QEMIAEAAACHvwAHNwInAOEBDCABAAAAiL8ABzcifQDhAR4gAQAAAIm/AAY34hUA4QEeAAEAAACJvwACN2IgAOEBDCABAAAAi78ABzdiHwDhARYEAQAAAIy/AAc3ohoA4QEWBAEAAACNvwAHN+IVAOEBHgABAAAAgr8AAjcCGQDhAQwgAQAAAI+/AAc3oicA4QEaQAEAAACQvwAHN4InAOEBFgQBAAAAlr8ARzdiIADhAQwgAQAAAJK/AAc3oj0A4QEMIAEAAACSvwAFNwIZAOEBDCABAAAAlL8ABzeCMADhARpAAQAAAJW/AAc3ojAA4QEgQAEAAACVvwACN8IwAOEBGkABAAAAlb8ABTdiGwDhARYEAQAAAJi/AAc3wkIA4QEMIAEAAACZvwAHN4JjAOEBDCABAAAAmr8ABzeiHwDhAQwgAQAAAIK/AAU3om8A4QEMIAEAAACcvwAHN6JXAOEBDCABAAAAnb8ABzeioADhAQwgAQAAAJ6/AAc3gmAA4QEMIAEAAACfvwAHNyKsAOEBHgABAAAAoL8ABjcCQADhARYEAQAAAKG/AAc34hUA4QEMIAEAAACivwAHN2JiAOEBDCABAAAAo78ABzdCewDhAQwgAQAAAKO/AAU3YqcB4QEMIAEAAAClvwAHN8LMAOEBDCABAAAApr8ABzfCzADhAQwgAQAAAKe/AAc3gqcB4QEMIAEAAACovwAHN6KwAOEBDCABAAAAqb8ABzeilgDhAR4AAQAAABm9AEY3AiMA4QEMIAEAAACrvwAHN0IlAOEBGkABAAAAHb0ARTciJgDhARpAAQAAAB69AEc3Yh8A4QEaQAEAAAAfvQBFN+IVAOEBGkABAAAAIL0ARTcCKgDhARpAAQAAACG9AEU3wlYA4QEWBAEAAAAivQBFN8JKAOEBFgQBAAAAI70ARTfiFQDhAR4AAQAAACW9AEI3IqcA4QEaIAEAAAAmvQBFN4KzAOEBHkABAAAAKL0ARDdCpADhARYEAQAAACm9AEc3wkQA4QEMIAEAAAC3vwAHN+JFAOEBHgABAAAASb0ARjfiGQDhARpAAQAAAEq9AEU34h4A4QEMIAEAAAC6vwAHN+IVAOEBHgABAAAATb0AQjdCRgDhAR5AAQAAAE+9AEQ3IiUA4QEeIAEAAAC9vwAGN2IlAOEBDCABAAAAvb8ABTliMgDnAVQwAQAAAL+/EAA3YjIA4QEeQAEAAADAvwAGN0IqAOEBDCABAAAAwb8ABzciawDhAR4AAQAAAMK/AAY34hUA4QEeAAEAAADCvwACNwIqAOEBGkABAAAAwr8ABTdiHADhARYEAQAAAMW/AAc3gioA4QEMIAEAAADBvwAFN8IfAOEBDCABAAAAx78ABzeifQDhAQwgAQAAAMi/AAc34hkA4QEgQAEAAADAvwACN+IeAOEBDCABAAAAyr8ABzfiFQDhAR5AAQAAAMC/AAI3AjAA4QEeQAEAAADAvwAEN0JCAOEBGkABAAAAzb8ABzeiGADhARpAAQAAAM2/AAU3YioA4QEMIAEAAADPvwAHNwIqAOEBDCABAAAAz78ABTeiigDhARYEAQAAANG/AAc3whoA4QEcDAEAAADSvwAHN2IbAOEBDCABAAAA078ABzfiFQDhAS5AAQAAAM2/AAI3YkIA4QEaQAEAAADNvwAFN8IqAOEBHiABAAAA1r8ABjciVwDhARYEAQAAANe/AAc3AkAB4QEMIAEAAADYvwAHNyIrAOEBDCABAAAA2b8ABzcCygDhAQwgAQAAANq/AAc34vQA4QEWBAEAAADbvwAHN8JWAOEBFgQBAAAA578ABTfCSgDhARYEAQAAAOe/AAU34hUA4QEaQAEAAADWvwAFN+JZAeEBDCABAAAA378ABzdCogDhAR4gAQAAAOC/AAY34ssA4QEMIAEAAADhvwAHN8I2AOEBDCABAAAAqMEARzdiGQDhARYEAQAAAKnBAEU3wiMA4QEMIAEAAACqwQBFN4I8AeEBDCABAAAA5b8ABzcCpQDhARYEAQAAAKzBAEU3wtkA4QEWBAEAAADnvwAHN4JjAOEBHiABAAAA6L8ABjciJgDhAQwgAQAAAOm/AAc3YhkA4QEaQAEAAADovwAFN6KKAOEBDCABAAAA678ABzfCVgDhARYEAQAAAPW/AAU3wkoA4QEWBAEAAAD1vwAFN+IVAOEBGkABAAAA6L8ABTdiGwDhARYEAQAAAO+/AAc3IlcA4QEWBAEAAADwvwAHN0J/AOEBDCABAAAA8b8ABzfiTgDhAQwgAQAAAPK/AAc3gqsA4QEMIAEAAADovwAFN0IZAOEBDCABAAAA9L8ABzciQQDhARYEAQAAAPW/AAU3AlwA4QEMIAEAAAD2vwAHN0IgAOEBDCABAAAA978ABzfCGQDhASIAAQAAAPi/AAY3YhsA4QEMIAEAAAD5vwAHN6IlAOEBHiABAAAA+r8AFjfCGQDhARYEAQAAAPu/AAc3YikA4QEgQAEAAAD6vwACN8IYAOEBDCABAAAA/b8ABzcCMADhAQwgAQAAAP2/AAU3gikA4QEMIAEAAAD/vwAHNwIqAOEBDCABAAAA/78ABTeCFgDhAR4gAQAAAPq/AAQ3oqcB4QEMIAEAAAACwAAHNwLGAOEBDCABAAAAA8AABzcCKgDhAQwgAQAAAAPAAAU34hUA4QEMIAEAAAAFwAAHNyIgAOEBDCABAAAAAsAABTfiFQDhASBAAQAAAPq/AAI3YjEA4QEcDAEAAAAIwAAHN0JcAdkBHkABAAAACcAABjfieADhAQwgAQAAAArAAAc34hUA4QEaQAEAAAAJwAAFN6KgAOEBFgQBAAAADMAABzdCYwDhAR4AAQAAAAnAAAQ3IskA4QEMIAEAAAAOwAAHN4JNAOEBFgQBAAAAD8AABzkidADnARgwAQAAABDAEAU3InQA4QEYMAEAAAAQwAAHN4I2AOEBFgQBAAAAEsAABzdCHQDhARYEAQAAABPAAAc3Il4A4QEMIAEAAAAUwAAHOsKnAdUBDCABAAAAFcAABTripwHhAQwgAQAAABbAAAc6YtYA2QEMIAEAAAAXwAAHOwKoAXICGTABAAAAGsAgBTwiqAF3AhkwASABABrAEAU9QqgBeQIZMAEAAQAawAAFPWKoAdkBDCABAAAAG8AABz1C6ADhAQwgAQAAABzAAAc9wj4B2QEMIAEAAAAdwAAHPcJxAOEBDCABAAAAHsAABz1ihwDhAQwgAQAAAB7AAAU7Yp8BCgIZMAEAAAAiwCAFPIKfAQ8CGTABIAEAIsAQBT2CnwERAhkwAQABACLAAAU94n4A4QEMIAEAAAAjwAAHPoKoAXICGTABAAAAJsAgBT+iqAF3AhkwASABACbAEAVAwqgBeQIZMAEAAQAmwAAFQAKjAOEBDCABAAAAJ8AAB0DiqAHZAQwgAQAAACjAAAdAAqkB2QEMIAEAAAApwAAHQGKGAOEBDCABAAAAKsAAB0AiqQHZAQwgAQAAACvAAAdAQqkB2QEMIAEAAAAswAAHQGKpAdkBDCABAAAALcAAB0HCoAFyAg0gAQAAADDAIAVCgqkBdwINIAEgAQAwwBAFQ+KgAXkCDSABAAEAMMAABUQCRQDhAQwgAQAAADHAAAdE4mMB4QEMIAEAAAAywAAHROKZAOEBMAQBAAAAM8AAFkRiGwDhAQwgAQAAADTAAAdEYhwA4QEWBAEAAAA1wAAHROI6AOEBDCABAAAANsAAB0RiHADhARYEAQAAADfAAAdEgjcA4QEMIAEAAAA4wAAHRCIuAOEBFgQBAAAAOcAAB0RiHADhARYEAQAAADrAAAdEom8A4QEeIAEAAAA7wAAGRAKGAOEBGkABAAAAO8AABUTC7wDhAQwgAQAAAD3AAAdEYnoA4QEMIAEAAAA+wAAHRMJWAOEBFgQBAAAASMAABUTCSgDhARYEAQAAAEjAAAVE4hUA4QEaQAEAAAA7wAAFRAJ2AOEBDCABAAAAQsAAB0TiVQDhARpAAQAAAEPAAAdEgkwA4QEMIAEAAABEwAAHRMKaAOEBGkABAAAAQ8AABUTiFQDhAR4AAQAAAEPAAAJEImUA4QEaQAEAAAA7wAAFRALCAOEBFgQBAAAASMAAB0RiHADhARYEAQAAAEnAAAdEIi4A4QEiAAEAAABKwAAGRIIvAOEBFgQBAAAAS8AAB0TCHwDhAQwgAQAAAEzAAAdEIhwA4QEMIAEAAABNwAAHRMIYAOEBFgQBAAAATsAAB0QiFgHhAQwgAQAAAE/AAAdEIg4B4QEMIAEAAABQwAAHROInAOEBDCABAAAAUMAABUTiIwDhARYEAQAAAFLAAAdEwjQA4QEWBAEAAABTwAAHRGIcAOEBFgQBAAAAVMAAB0QiHADhAQwgAQAAAFXAAAdEggoB4QEMIAEAAABWwAAFRCI3AOEBDCABAAAAVsAABUSimQDhAQwgAQAAAFjAAAdE4hcA4QEMIAEAAABZwAAHRKKpAdkBHiABAAAAWsAABkQirwDhAQwgAQAAAFvAAAdEQiUA4QEaQAEAAABawAAFRCImAOEBDCABAAAAXcAAB0SCMQDhASBAAQAAAF7AAAJEwlYA4QEWBAEAAABpwAAFRCIgAOEBGkABAAAAacAABUTCSgDhARYEAQAAAGnAAAVEYhsA4QEMIAEAAABiwAAHROIVAOEBGkABAAAAWsAABUTiPwDhAR4AAQAAAGTAAAZEAkAA4QEgAAEAAABkwAACREIlAOEBFgQBAAAAZsAAB0QCWADhARpAAQAAAGTAAAVE4hUA4QEaQAEAAABkwAAFRKK5AOEBIAABAAAAacAABkTiFQDhARpAAQAAAGnAAAVEIlgA4QEMIAEAAABrwAAFRAIhAOEBDCABAAAAa8AABUSiIwDhAQwgAQAAAG3AAAVEwiMA4QEMIAEAAABtwAAFRAIjAOEBDCABAAAAb8AAB0TCqQHhAQwgAQAAAHDAAAdEYuAA4QEMIAEAAABxwAAHRIJ/AOEBDCABAAAAcsAAB0TCHwDhAQwgAQAAAHPAAAdEwiYA4QEMIAEAAAB0wAAHRMImAOEBDCABAAAAdcAAB0QirADhARpAAQAAAHbAAAdEgjUA4QEMIAEAAAB3wAAHROKpAeEBDCABAAAAeMAAB0TiYwHhAQwgAQAAAHnAAAdEgsMA4QEeAAEAAAB6wAAGRGLDAOEBDCABAAAAe8AAB0SCKgDhAQwgAQAAAHvAAAVEAqIA4QEeAAEAAAB9wAAGRAJAAOEBIEABAAAAfcAAAkRCKADhAQwgAQAAAH/AAAdEAlgA4QEaQAEAAAB9wAAFROIVAOEBGkABAAAAfcAABUQCqgHhAQwgAQAAAILAAAdEIqoB2QEeAAEAAACDwAAGRKKKAOEBDCABAAAAhMAAB0SiJgDhARpAAQAAAIPAAAVEAoEA4QEMIAEAAACGwAAHRMImAOEBDCABAAAAh8AAB0TCVgDhARYEAQAAAI3AAAVEwkoA4QEWBAEAAACNwAAFRGIbAOEBDCABAAAAisAAB0TiFQDhAR4AAQAAAIPAAAJEgioA4QEMIAEAAACMwAAHRGKiAOEBFgQBAAAAjcAAB0Ti1ADhAR4AAQAAAIPAAAREQsIA4QEMIAEAAACPwAAHRIIkAOEBDCABAAAAkMAAB0TCXQHhAQwgAQAAAJHAAAdEwnYA4QEiAAEAAACSwAAGROIhAOEBDCABAAAAk8AAB0TCdgDhAQwgAQAAAJTAAAdEIloA4QEMIAEAAACVwAAHRAIoAOEBDCABAAAAlsAAB0RipADhAQwgAQAAAJfAAAdEojsA4QEMIAEAAACYwAAHRAI2AOEBDCABAAAAmcAAB0RipADhAQwgAQAAAJrAAAdEAjYA4QEMIAEAAACbwAAHRGKAAOEBDCABAAAAnMAAB0RipADhAQwgAQAAAJ3AAAdEAjYA4QEMIAEAAACewAAHRIKnAeEBDCABAAAAn8AAB0RC7QDhAQwgAQAAAKDAAAdEQqoB4QEMIAEAAAChwAAHRKKwAOEBDCABAAAAosAAB0RiYgDhAQwgAQAAAKPAAAdEQnsA4QEMIAEAAACjwAAFRMKmAOEBDCABAAAApcAAB0QitADhAR4AAQAAAKbAAAZE4hUA4QEaQAEAAACmwAAFRGKqAeEBHgABAAAAqMAABkRibwDhAQwgAQAAAKnAAAdEImsA4QEMIAEAAACqwAAHREIgAOEBDCABAAAAq8AAB0SiIwDhARYEAQAAAKzAAAdEYmkA4QEcDAEAAACtwAAHRGIbAOEBDCABAAAArsAAB0QCtQDhARpAAQAAAK/AAAdEIl4A4QEMIAEAAACwwAAHRKI7AOEBDCABAAAAscAAB0RCUQDhAQwgAQAAALLAAAdEYnsA4QEMIAEAAACzwAAHRIKbAOEBDCABAAAAtMAAB0TiFQDhARpAAQAAAK/AAAVEAhkA4QEMIAEAAAC2wAAHRKIYAOEBFgQBAAAAt8AAB0SiVwDhAQwgAQAAALjAAAdE4oEA4QEaQAEAAACvwAAFREIeACECFgQBAAAAusAABUTimAAhAhYEAQAAALvAAAVEwh4AIQIWBAEAAAC8wAAFROJWACECFgQBAAAAvcAABUSCPQAhAhYEAQAAAL7AAAVEYh8AIQIWBAEAAAC/wAAFRAIZAOEBAiQBAAAAwMAABUQCNADhARYEAQAAAMHAAAdEQiAA4QEMIAEAAADCwAAHROKfAOEBFgQBAAAAw8AAB0RiHwDhARYEAQAAAMTAAAdEom0A4QEWBAEAAADFwAAHRGIfAOEBFgQBAAAAxMAAR0RCJADhARYEAQAAAMfAAAdE4iEA4QEMIAEAAADIwAAHRMIXAOEBFgQBAAAAycAAB0RiLgDhARYEAQAAAMrAAAdE4hkA4QEWBAEAAADLwAAHRKIaAOEBFgQBAAAAzMAAB0RiHADhARYEAQAAAM3AAAdEoioA4QEcDAEAAADOwAAHRGIbAOEBDCABAAAAz8AAB0QCUgDhAQwgAQAAANDAAAdEQjkA4QEWBAEAAADRwAAHRGJJAOEBFgQBAAAA0sAAB0RCJADhARYEAQAAANPAAAdEwhoA4QEcDAEAAADUwAAHRCK4AOEBFgQBAAAA1cAAB0QiMADhARYEAQAAANbAAAdEgi4A4QEMIAEAAADXwAAHRAIZAOEBAgQBAAAA2MAABUTCFwDhARYEAQAAANnAAAdEohoA4QEiAAEAAADawAAGRIIXAOEBFgQBAAAA28AAB0SiiADhAQwgAQAAANzAAAVEIlIA4QEMIAEAAADcwAAFRGIcAOEBFgQBAAAA3sAAB0RiNwDhARYEAQAAAN/AAAdEIhkA4QEWBAEAAADgwAAHRCJFAOEBIgQBAAAA4cAABkQCWADhAQwgAQAAAOHAAAVEYvYA4QEiAAEAAADjwAAGRCLFAOEBDCABAAAA5MAAB0QCbgDhAQwgAQAAAOXAAAdEAhkA4QEMIAEAAADmwAAHRIIhAOEBFgQBAAAA58AAB0SiJADhARwMAQAAAOjAAAdEQiAA4QEMIAEAAADpwAAHRIIxAOEBIEABAAAA6sAAAkTCVgDhAQwgAQAAAOvAAAdEIiAA4QEaQAEAAADtwAAFREJvAOEBXEABAAAA7cAABkTiFQDhARpAAQAAAO3AAAVEwhgA4QEWBAEAAADvwAAHROIVAOEBDCABAAAA8MAAB0TiRgDhAQwgAQAAAPHAAAdE4hUA4QEMIAEAAADywAAHRMI0AOEBFgQBAAAA88AAB0SiGgDhARYEAQAAAPTAAAdE4joA4QEMIAEAAAD1wAAHRAL/AOEBFgQBAAAA9sAAB0SCMQDhARYEAQAAAPfAAAdEoikA4QEWBAEAAAD4wAAHRMJkAOEBDCABAAAA+cAAB0RiHADhARYEAQAAAPrAAAdEYhsA4QEMIAEAAAD7wAAHRCIeAOEBDCABAAAA/MAAB0RCHgDhAQwgAQAAAP3AAAdEwhgA4QEWBAEAAAD+wAAHRIIXAOEBFgQBAAAA/8AAB0RCIADhAQwgAQAAAADBAAdEQkEA4QEMIAEAAAABwQAHRIKqAeEBDCABAAAAAsEAB0QC5QDZAS4EAQAAAFK9AEZEwhkA4QEeAAEAAAAEwQAGRAJAAOEBGkABAAAABMEABURCKADhAQwgAQAAAAbBAAdEAlgA4QEaQAEAAAAEwQAFROIVAOEBHgABAAAABMEAAkRCMQDhARpAAQAAAAPBAAVEQkoA4QEMIAEAAAAKwQAHRAJGAOEBDCABAAAAC8EAB0QCVAHhAQwgAQAAAAzBAAdEAhkA4QEMIAEAAAANwQAHRIIxAOEBGkABAAAAEMEABUQiIADhARpAAQAAABDBAAVEwjUA4QEaQAEAAAAQwQAHROIVAOEBGkABAAAAA8EABUQi0gDhAQwgAQAAAGK9AEdEoiMA4QEWBAEAAAATwQAFRILWAOEBDCABAAAAFMEAB0TidQDhAQwgAQAAABXBAAdEIqAA4QEaQAEAAAAWwQAHRAKJAOEBDCABAAAAF8EAB0RiKgDhAQwgAQAAABjBAAdEgkMA4QEMIAEAAAAZwQAHRMIjAOEBGkABAAAAFsEABUTiFQDhARpAAQAAABbBAAVEYkkA4QEWBAEAAAAcwQAHRKIkAOEBHAwBAAAAHcEAB0RiGwDhAQwgAQAAAB7BAAdEQiAA4QEMIAEAAAAfwQAHRAKEAOEBDCABAAAAIMEAB0TCHwHhAQwgAQAAACHBAAdEwoEA4QEWBAEAAAAiwQAHREIgAOEBDCABAAAAI8EAB0TCGgDhARwMAQAAACTBAAdEIh4A4QEMIAEAAAAlwQAHRMIYAOEBFgQBAAAAJsEAB0TCIADhARwMAQAAACfBAAdEAjAA4QEMIAEAAAAowQAHRAIZAOEBHgABAAAAKcEABkSiqgHhAQwgAQAAACrBAAdEwkgB4QEMIAEAAAArwQAHRCKyAOEBDCABAAAALMEAB0TCqgHhAQwgAQAAAC3BAAdE4qoB4QEMIAEAAAAuwQAHROJ8AOEBDCABAAAAL8EAB0RCJADhASIgAQAAADDBAAZEYiAA4QEMIAEAAAAxwQAHRKJ1AOEBDCABAAAAMMEABUQiGQDhAQwgAQAAADPBAAdEIiYA4QEeIAEAAAA0wQAGRGIfAOEBIEABAAAANMEAAkSCUgDhAQwgAQAAADbBAAdEgh8A4QEMIAEAAAA3wQAHRAIqAOEBDCABAAAAN8EABURiGwDhAQwgAQAAADnBAAdE4hUA4QEaQAEAAAA0wQAFRGIcAOEBFgQBAAAAO8EAB0SiKgDhARwMAQAAADzBAAdEYhsA4QEMIAEAAAA9wQAHRAIqAOEBHiABAAAANMEABEQi6wDhAQwgAQAAAD/BAAVEYigA4QEMIAEAAAA/wQAFRGIkAOEBIgABAAAAQcEABkRCeQDhAQwgAQAAAELBAAdEopQB4QEeAAEAAABDwQAGRMJWAOEBFgQBAAAASMEABUTCSgDhARYEAQAAAEjBAAVE4lYA4QEcDAEAAABGwQAHRGIbAOEBDCABAAAAR8EAB0SilwDhARYEAQAAAEjBAAdE4hcB4QEeAAEAAABJwQAGRAIZAOEBDCABAAAASsEAB0SCHwDhAQwgAQAAAEvBAAdE4hUA4QEuAAEAAABJwQACRGIcAOEBFgQBAAAATcEAB0SCaQDhARpAAQAAAEnBAAVEgiAA4QEMIAEAAABPwQAHREIqAOEBDCABAAAAUMEAB0RCvgDhAQwgAQAAAFHBAAdEYpAA4QEMIAEAAABSwQAHREJpAOEBDCABAAAAU8EAB0RiJADhAQwgAQAAAFTBAAdEIowA4QEMIAEAAABVwQAHROKNAOEBDCABAAAAVsEAB0QifQDhAR4gAQAAAFfBAAZEIiYA4QEMIAEAAABYwQAHROIVAOEBDCABAAAAWcEAB0QCQADhARpAAQAAAFfBAAVEwkIA4QEMIAEAAABbwQAHRAJYAOEBDCABAAAAV8EABUTiFQDhARpAAQAAAFfBAAVEYjcA4QEWBAEAAABewQAHRAI0AOEBFgQBAAAAX8EAB0RCIADhAQwgAQAAAGDBAAdE4iAA4QEMIAEAAABhwQAHRMIeAOEBFgQBAAAAYsEAB0TiNADhAQwgAQAAAGPBAAdE4m8A4QEMIAEAAABkwQAHRMIqAOEBGiABAAAAZcEAB0QiKwDhAQwgAQAAAGbBAAdEQisA4QEaIAEAAABlwQAFRGJUAOEBDCABAAAAaMEAB0SikwDhAQwgAQAAAGnBAAdEwlsA4QEMIAEAAABpwQAFRAKrAeEBDCABAAAAa8EAB0QCVgDhAR4AAQAAAGzBAAZEgkMA4QEMIAEAAABtwQAHRMJWAOEBFgQBAAAAdcEABUTCSgDhARYEAQAAAHXBAAVEYhsA4QEMIAEAAABwwQAHRCIiAOEBHiABAAAAccEABkRCMQDhARpAAQAAAHHBAAVE4hUA4QEaQAEAAABxwQAFRIKUAOEBHiABAAAAccEABERCjwDhARYEAQAAAHXBAAdEohkA4QEMIAEAAAB2wQAHRIIcAOEBIgQBAAAAd8EABkRCIADhAQwgAQAAAHjBAAdEwhoA4QEcDAEAAAB5wQAHRGIbAOEBDCABAAAAesEAB0SidQDhAQwgAQAAAHfBAAVEQh0A4QEMIAEAAAB8wQAHRKJNAOEBDCABAAAAfMEABUQiLQDhAQwgAQAAAH7BAAdEghwA4QEWBAEAAAB/wQAHRMIaAOEBHAwBAAAAgMEAB0RiIADhAQwgAQAAAIHBAAdEQkkA4QEMIAEAAACCwQAHROIVAOEBLgABAAAAZcEAAkRiMQDhARwMAQAAAITBAAdEIqcA4QEMIAEAAACDwQAFROKZAeEBDCABAAAAhsEAB0Si0gDhAQwgAQAAAIfBAAdEYosA4QEMIAEAAACKwQAFRGKBAeEBDCABAAAAicEAB0RiiwDhAQwgAQAAAIrBAAdEoqoA4QEMIAEAAACLwQAHRCJrAOEBDCABAAAAjMEAB0QCOADhAQwgAQAAAI3BAAdEwlYA4QEWBAEAAACVwQAFRMJKAOEBFgQBAAAAlcEABURiGwDhAQwgAQAAAJDBAAdEwswA4QEMIAEAAACRwQAHRII2AOEBDCABAAAAksEAB0RiiQDhAQwgAQAAAJPBAAdEIkYA4QEMIAEAAACUwQAHROLLAOEBFgQBAAAAlcEAB0QCdADhARYEAQAAAJbBAAdE4iEA4QEMIAEAAACXwQAHRMJEAOEBDCABAAAAmMEAB0QiqwHhAQwgAQAAAJnBAAdE4i4A4QEMIAEAAACawQAHREIZAOEBDCABAAAAm8EAB0TCwwDhARpAAQAAAJzBAAdEIuYA4QEMIAEAAACdwQAHRGIbAOEBDCABAAAAnsEAB0SCFwDhARpAAQAAAJ/BAAdEAhkA4QEMIAEAAACgwQAHRALMAOEBFgQBAAAAocEAB0VCqwHeARAQAQAAAKTBIAVGokIA+wEQEAFAAQCkwRAFRKJCAOEBeBABAIABpMEAFkWCBAB8AhAQAQAAAPgUIg1GogQA8AIQEAEAAACACxINRKIEAIQCEBABAAAACAICDUTCNgDhAQwgAQAAAKjBAAdEYhkA4QEWBAEAAACpwQAHRMIjAOEBDCABAAAAqMEABUSCPAHhAQwgAQAAAKvBAAdEAqUA4QEWBAEAAACswQAHRGKrAeEBDCABAAAArcEAB0TCcwDhAQwgAQAAAK7BAAdEAiMA4QEMIAEAAACvwQAHRKI1AOEBDCABAAAAsMEAB0RiJADhAQwgAQAAALHBAAdE4h4A4QEeIAEAAACywQAGROIVAOEBGkABAAAAssEABUQCKgDhARpAAQAAALLBAAVEgqsB4QEMIAEAAAC1wQAHRMJWAOEBFgQBAAAAy8EABUTCSgDhARYEAQAAAMvBAAVEYhsA4QEMIAEAAAC4wQAHRQJVADQCEBABAAAAQBMiDUYiVQCIAhAQAQAAAMgJEg1EIlUAPAIQEAEAAABQAAINRYIEAIwCEBABAAAAWBgjDUaiBACQAhAQAQAAAOAOEw1EogQAlAIQEAEAAABoBQMNRcKiAd4BEBABAAAASBMiDUbiogHnARAQAQAAANAJEg1E4qIB4QEQEAEAAABYAAINRWJVAEACEBABAAAAyBgiDUaCVQCYAhAQAQAAAFAPEg1EglUASAIQEAEAAADYBQINRaIGAZwCEBABAAAAIBwjDUbCBgGgAhAQAQAAAKgSEw1EwgYBpAIQEAEAAAAwCQMNRQKjAd4BEBABAAAAABUiDUYiowHnARAQAQAAAIgLEg1EIqMB4QEQEAEAAAAQAgINREIcAOEBFgQBAAAAy8EAB0WiBgGoAhAQAQAAAKgZIg1GwgYB9AIQEAEAAAAwEBINRMIGAbACEBABAAAAuAYCDURCIADhAQwgAQAAAM/BAAdEwhkA4QEWBAEAAADQwQAHRGIbAOEBDCABAAAA0cEAB0TCGADhARYEAQAAANLBAAdEgjsA4QEMIAEAAADTwQAHRCIcAOEBDCABAAAA1MEAB0RiLgDhARYEAQAAANXBAAdEgjcA4QEMIAEAAADWwQAHRGIeAOEBIgQBAAAA18EABkQCMADhAQwgAQAAANfBAAVEghcA4QEaQAEAAADZwQAHROIZAOEBGkABAAAA2cEABUTiFQDhARpAAQAAANnBAAVEAhkA4QEMIAEAAADcwQAHRMIXAOEBFgQBAAAA3cEAB0TiGADhAQwgAQAAANzBAAVEgiEA4QEWBAEAAADfwQAHROIYAeEBDCABAAAA4MEAB0TCWADhAQwgAQAAAOHBAAdEIikA4QEuBAEAAADiwQAGROIZAOEBIAQBAAAA4sEAAkSiJADhARwMAQAAAOTBAAdEYhsA4QEMIAEAAADlwQAHRAIaAOEBGkABAAAA4sEABUSCFwDhARpAAQAAAOfBAAdE4hkA4QEgAAEAAADnwQACRAIaAOEBGkABAAAA58EABUTiFQDhARpAAQAAAOfBAAVEAhkA4QEMIAEAAADrwQAHRGIaAOEBDCABAAAA7MEAB0QiawDhAQwgAQAAAO3BAAdE4hUA4QEaQAEAAADiwQAFRIIxAOEBGkABAAAA8cEABURiHADhARYEAQAAAPDBAAdEQsEA4QEeAAEAAADxwQAGRIIZAOEBDCABAAAA8sEAB0TiIQDhAQwgAQAAAPPBAAdEAlwA4QEMIAEAAAD0wQAHRMLIAOEBDCABAAAA9cEAB0QC2gDhAQwgAQAAAPbBAAdE4h4A4QEeAAEAAAD3wQAGRIIfAOEBDCABAAAA+MEAB0TiFQDhAR4AAQAAAPfBAAJEAioA4QEaIAEAAAD3wQAFRAJcAOEBDCABAAAA+8EAB0SiIwDhAQwgAQAAAPzBAAdEIkAA4QEMIAEAAAD9wQAHRCIwAOEBFgQBAAAA/sEAB0TiIQDhAQwgAQAAAP/BAAdEYiAA4QEWBAEAAAAAwgAHREIgAOEBDCABAAAAAcIAB0TCGgDhARwMAQAAAALCAAdEYhsA4QEMIAEAAAADwgAHRKKrAeEBDCABAAAABMIAB0QCggDhAQwgAQAAAAXCAAdEgqcB4QEMIAEAAAAGwgAHRGKrAeEBDCABAAAAB8IAB0TCVgDhARYEAQAAAA3CAAVEwkoA4QEWBAEAAAANwgAFRCKmAOEBHgABAAAACsIABkRCKADhAQwgAQAAAAvCAAdEAlgA4QEeQAEAAAAKwgAERIIdAeEBFgQBAAAADcIAB0fCqwHVAQwgAQAAAA7CAAVH4qsB2QEMIAEAAAAPwgAHSAKsAesBFCwBQIEDEcIQBUkirAHVARQsAQCAAxHCABVJgkgA4QEMIAEAAAASwgAHSeJEAOEBFgQBAAAAE8IAB0hCEgHnARgwAQAAABTCEAVJQhIB4QEYMAEAAAAUwgAHSYIsAOEBDCABAAAAFsIAB0nCHQDhAQwgAQAAABjCAAVJojwA4QEMIAEAAAAYwgAHSYI2AOEBFgQBAAAAGcIAB0lCLgDhAQwgAQAAABrCAAVJ4kAA4QEMIAEAAAAawgAFSQIiAOEBDCABAAAAHcIAB0miPADhAQwgAQAAAB3CAAdJYiAA4QEMIAEAAAAewgAHSUJJAOEBDCABAAAAH8IAB0mCNwDhAQwgAQAAACDCAAdJ4joA4QEMIAEAAAAhwgAHSWIgAOEBDCABAAAAIsIAB0miegDhAQwgAQAAACPCAAdJ4jkA4QEMIAEAAAAkwgAHScKjAOEBDCABAAAAJcIABUki7gDhAQwgAQAAACXCAAVJIhwA4QEMIAEAAAAnwgAHSeI1AOEBDCABAAAAKMIAB0lCTADhAQwgAQAAACnCAAdJIhwA4QEMIAEAAAAqwgAHSSIaAOEBDCABAAAAK8IAB0nCHQDhAQwgAQAAACzCAAdJYlkA4QEMIAEAAAAuwgAFScLMAOEBDCABAAAALsIAB0kCJQDhARYEAQAAAC/CAAdJwkQA4QEMIAEAAAAwwgAHSeIZAOEBFgQBAAAAMcIAB0liJADhAQwgAQAAADLCAAdJYi4A4QEWBAEAAAAzwgAHSQIZAOEBDCABAAAANMIAB0kCGQDhAQwgAQAAADXCAAdJQhoA4QEMIAEAAAA2wgAHSWImAOEBDCABAAAAN8IAB0kCLgDhAQwgAQAAADjCAAdJIhwA4QEMIAEAAAA5wgAHScJIAOEBDCABAAAAOsIAB0mCIADhAQwgAQAAADvCAAdJIi4A4QEWBAEAAAA8wgAHSUIuAOEBDCABAAAAPcIAB0miHQDhAQwgAQAAAD7CAAdJQqwB2QEMIAEAAAA/wgAHSUIrAOEBDCABAAAAQcIABUkiHADhAQwgAQAAAEHCAAdJwogA4QEMIAEAAABCwgAHSYIYAOEBDCABAAAAQ8IAB0kC5gDhAQwgAQAAAETCAAdJYqwB2QEMIAEAAABFwgAHSWJqAOEBDCABAAAARsIAB0mCowHhAQwgAQAAAEfCAAdJgi4A4QEMIAEAAABMwgAFSaIaAOEBFgQBAAAAScIAB0kiQQDhAQwgAQAAAErCAAdJQhoA4QEMIAEAAABLwgAHSaI8AOEBDCABAAAATMIAB0nCOADhAQwgAQAAAE3CAAdJgiwA4QEMIAEAAABOwgAHSUKDAOEBDCABAAAAT8IAB0kiXgDhAQwgAQAAAFDCAAdJwlkA4QEMIAEAAABQwgAFSaKOAOEBDCABAAAAUsIAB0kCIgDhAQwgAQAAAFPCAAdJwkgA4QEMIAEAAABUwgAHSSIuAOEBFgQBAAAAVcIAB0lCSQDhAQwgAQAAAFbCAAdJQi4A4QEMIAEAAABXwgAHSeJAAOEBDCABAAAAV8IABUlCGgDhAQwgAQAAAFnCAAdJojwA4QEMIAEAAABawgAHSSIcAOEBDCABAAAAW8IAB0nCPADhARYEAQAAAFzCAAdJIkEA4QEMIAEAAABdwgAHSUJkAOEBDCABAAAAXsIAB0lCagDhAQwgAQAAAF/CAAdJIjwA4QEWBAEAAABgwgAHSUIuAOEBDCABAAAAYcIAB0lCKwDhAQwgAQAAAGXCAAVJwj0A4QEMIAEAAABjwgAHSYIqAOEBDCABAAAAY8IABUkiHADhAQwgAQAAAGXCAAdJQhoA4QEMIAEAAABmwgAHSSIaAOEBIgABAAAAZ8IABkkCQQDhAQwgAQAAAGjCAAdJgiwA4QEMIAEAAABpwgAHSWIuAOEBFgQBAAAAasIAB0nCLADhAQwgAQAAAGvCAAdJIo4A4QEiBAEAAABswgAGScJIAOEBDCABAAAAbcIAB0niHgDhAQwgAQAAAG7CAAdJgjIA4QEMIAEAAABvwgAHSQI9AOEBDCABAAAAcMIAB0ni/ADhAQwgAQAAAHHCAAdJQnUA4QEMIAEAAABywgAHSQJBAOEBDCABAAAAc8IAB0lCHADhAQwgAQAAAHTCAAdJAkEA4QEMIAEAAAB1wgAHSWIcAOEBFgQBAAAAdsIAB0lCOADhAQwgAQAAAHfCAAdJYhwA4QEWBAEAAAB4wgAHSQIuAOEBDCABAAAAecIAB0kiGgDhARYEAQAAAHrCAAdJghgA4QEMIAEAAAB7wgAHSSI3AOEBDCABAAAAe8IABUniLQDhAQwgAQAAAH3CAAdJAugA4QEMIAEAAAB+wgAHSSKsAOEBDCABAAAAf8IAB0niyQDhARQsAQAAAIDCABVJAq0A4QEMIAEAAACBwgAHSWIkAOEBDCABAAAAgsIAB0nCHQDhAQwgAQAAAIPCAAdJ4i4A4QEMIAEAAACEwgAHSYI0AOEBFgQBAAAAhcIAB0kiIADhAQwgAQAAAInCAAVJYhwA4QEWBAEAAACHwgAHSaIqAOEBHAwBAAAAiMIAB0kCRgDhAQwgAQAAAInCAAdJIhoA4QEiAAEAAACKwgAGSYIcAOEBFgQBAAAAi8IAB0nCGgDhARwMAQAAAIzCAAdJ4iEA4QEMIAEAAACNwgAHSQIZAOEBDCABAAAAjsIAB0mCMQDhASAAAQAAAI/CAAJJwlYA4QEMIAEAAACQwgAHSSIgAOEBGkABAAAAksIABUnCNQDhARpAAQAAAJLCAAdJ4hUA4QEgAAEAAACSwgACSSJ0AOEBDCABAAAAlMIAB0mCrAHhAQwgAQAAAJXCAAdJwjwA4QEWBAEAAACWwgAHSYIcAOEBFgQBAAAAl8IAB0miJwDhARpAAQAAAJjCAAdJQisA4QEaQAEAAACYwgAFSYIwAOEBGkABAAAAmsIAB0nCMADhARpAAQAAAJrCAAVJwoMB4QEMIAEAAAClwgAFSeJEAOEBFgQBAAAAncIAB0mCHADhARYEAQAAAJ7CAAdJAhkA4QEMIAEAAACfwgAHSaInAOEBGkABAAAAoMIAB0liIADhAQwgAQAAAKHCAAdJAhkA4QEMIAEAAACiwgAHSYIwAOEBGkABAAAAo8IAB0lCSQDhAQwgAQAAAKTCAAdJYqsA4QEMIAEAAAClwgAFSYKrAOEBDCABAAAAlcIABUliNgDhAQwgAQAAAKfCAAdJojUA4QEMIAEAAACowgAHSWJyAOEBDCABAAAAqcIAB0lCDwHhAQwgAQAAAKrCAAdJAqwA4QEMIAEAAACrwgAHSeIeAOEBDCABAAAArMIAB0kCWADhAQwgAQAAAK3CAAdJAiIA4QEMIAEAAACuwgAHSWJjAOEBDCABAAAAr8IAB0kCWADhAQwgAQAAALDCAAdJojwA4QEMIAEAAACxwgAHSWJyAOEBDCABAAAAssIAB0lCLgDhAQwgAQAAALPCAAdJ4kAA4QEMIAEAAACzwgAFSSIcAOEBDCABAAAAtcIAB0niMgDhAQwgAQAAALbCAAdJQh0A4QEMIAEAAAC3wgAHSQIvAOEBDCABAAAAuMIAB0oCVQA0A3ooAQAAAN3JEAVLIlUAPAN6KAEAAALdyQAFTMKdAMoBGTABAAAAvMIQBU3inQDNARkwAQAAALzCAAVMoqwB5gMZMAEAAAC/wiAFTMKsAegDGTABAAAAv8IQBU3CrAHtAxkwAQAAAL/CAAVM4qwBygEZMAEAAADBwhAFTQKtAc0BGTABAAAAwcIABUwirQHKARkwAQAAAMPCEAVNQq0BzQEZMAEAAADDwgAFTGKtAeYDGTABAAAAxsIgBUyCrQHoAxkwAQAAAMbCEAVNgq0B7QMZMAEAAADGwgAFTKKtAcoBGTABAAAAyMIQBU3CrQHNARkwAQAAAMjCAAVO4q0B8AMMIAEAAADJwgAFTwKuAesBeigBAAAAy8IQBVAirgHVAXooAQAAAMvCAAVQ4uEA4QEMIAEAAADMwgAHUEKuAdkBGkABAAAAzcIAB1CCHQDhARpAAQAAAM3CAAVQ4hUA4QEaQAEAAADNwgAFUALFAOEBDCABAAAA0MIAB1AiIgDhAQwgAQAAANHCAAdQIr8A4QEaQAEAAADNwgAFUCIYAOEBDCABAAAA08IAB1ACZQDZAQwgAQAAANTCAAdQQmkA4QEMIAEAAADVwgAHUOIwAOEBDCABAAAA1sIAB1DCOgDhAQwgAQAAANfCAAdQYhwA4QEWBAEAAADYwgAHUAIMAdkBDCABAAAA2cIAB1CCPgDhAQwgAQAAANrCAAdQYq4B4QEMIAEAAADbwgAHUOIzAOEBDCABAAAA3MIAB1CiRADhAQwgAQAAAN3CAAdQYo8B4QEMIAEAAADfwgAFUCL3AOEBDCABAAAA38IABVAC9ADhAQwgAQAAAODCAAdQwkQA4QEMIAEAAADhwgAHUIKuAeEBDCABAAAA4sIAB1AiRQHhAQwgAQAAAOPCAAdQoq4B2QEeAAEAAADkwgAGUELfAOEBDCABAAAA5cIAB1CiLgDhAQwgAQAAAObCAAdQoiYA4QEaQAEAAADkwgAFUMImAOEBDCABAAAA6MIAB1DiFQDhASAEAQAAAOTCAAJQwn0A4QEMIAEAAADqwgAHUKKiAOEBGiABAAAA5MIABVCCowHZAQ4YAQAAAEbHAEVQIo4A4QEMIAEAAADtwgAHUOIfAOEBDCABAAAA7cIABVBiHgDhARYEAQAAAO/CAAdQwq4B4QEiAAEAAADwwgAGUGJRAOEBHiABAAAA8cIABlACVgDhAQwgAQAAAPLCAAdQAkAA4QEaQAEAAADxwgAFUEIoAOEBDCABAAAA9MIAB1BCOADhAQwgAQAAAPXCAAdQIkAA4QEMIAEAAAD2wgAHUOIVAOEBGkABAAAA8cIABVCCiADhAQwgAQAAAPjCAAdQwlQA4QEeAAEAAADxwgAEUKJ7AOEBDCABAAAA+sIAB1BCNwDhAQwgAQAAAPvCAAdQgiEA4QEWBAEAAAD8wgAHUKIkAOEBHAwBAAAA/cIAB1BiGwDhAQwgAQAAAP7CAAdQ4jIA4QEMIAEAAAD/wgAHUIJ+AOEBDCABAAAAIMQAR1BiYwDhAQwgAQAAAAHDAAdQ4q4B4QEMIAEAAAACwwAHUAKGAOEBFgQBAAAAA8MAB1DCKADhARwMAQAAAATDAAdQYhsA4QEMIAEAAAAFwwAHUCJGAOEBDCABAAAABsMAB1DC8QDhAQwgAQAAAAfDAAdQYiQA4QEMIAEAAAAIwwAHUGIkAOEBDCABAAAACcMAB1AiGADhAQwgAQAAAArDAAdQIhgA4QEMIAEAAAALwwAHUAJMAOEBHiABAAAADMMAFlBCMQDhARpAAQAAAAzDAAVQIlEA4QEaQAEAAAAOwwAHUOIVAOEBGkABAAAADMMABVACrwHhAQwgAQAAABDDAAdQYhsA4QEWBAEAAAARwwAHUGIbAOEBDCABAAAAEsMAB1CiJADhARwMAQAAABPDABdQghcA4QEMIAEAAAAUwwAHUEJKAOEBDCABAAAAFcMAB1ACSQDhAR4gAQAAAAzDAAZQ4lUA4QEMIAEAAAAXwwAHT+IuAOcBGDABAAAAGMMQBVDiLgDhARgwAQAAABjDAAdQQh0A4QEWBAEAAAAawwAHUOIVAOEBLkABAAAADMMAAlDCXQHhAQwgAQAAABzDAAdQIq8B4QEMIAEAAAAdwwAHUCIeAOEBDCABAAAAHsMAB1AiGADhAQwgAQAAAB/DAAdQ4j8B4QEMIAEAAAAgwwAHUOIhAOEBDCABAAAAIcMAB1BipADhAQwgAQAAACLDAAdQ4hUA4QEMIAEAAAAjwwAHUGLAAOEBDCABAAAAJMMAB1ACJQDhARYEAQAAACXDAAdQQjQA4QEMIAEAAAAmwwAHUMJIAOEBDCABAAAAJ8MAB1DiHgDhAQwgAQAAACjDAAdQgjIA4QEMIAEAAAApwwAHUKIeAOEBDCABAAAAKsMAB1DiRwDhAQwgAQAAACvDAAdQAigA4QEMIAEAAAAswwAHUEJJAOEBDCABAAAALcMAB1CiwgDhAQwgAQAAAC7DAAdQoisA4QEMIAEAAAAvwwAHUMI4AOEBDCABAAAAMMMAB1BimAHhAQwgAQAAADLDAAVQ4u4A4QEMIAEAAAAywwAFUALPANkBHgABAAAAM8MABlDilADhAQwgAQAAADTDAAdQQqUA4QEMIAEAAAA1wwAHUOJPAOEBDCABAAAANsMAB1ACRgDhAQwgAQAAADfDAAdQYiQA4QEMIAEAAAA4wwAHUIItAOEBDCABAAAAOcMAB1BiNgDhAQwgAQAAADrDAAdQQlwA4QEMIAEAAAA7wwAHUCIYAOEBDCABAAAAPMMAB1DCWADhAQwgAQAAAD3DAAdQYi4A4QEWBAEAAAA+wwAHUKJVAOEBDCABAAAAP8MAB1BiVgDhASAAAQAAADPDAAJQwlYA4QEWBAEAAABEwwAFUMJKAOEBFgQBAAAARMMABVDiFQDhASAAAQAAADPDAAJQovIA4QEiAAEAAABEwwAGUKJOAOEBDCABAAAARcMAB1AiQQDhAQwgAQAAAEbDAAdQQq8B4QEMIAEAAABHwwAHUGJMAOEBDCABAAAASMMAB1Di4wDhAR4AAQAAADPDAARQYq8B4QEMIAEAAABKwwAHUMKDAOEBDCABAAAAS8MAB1CiiADhAQwgAQAAAEzDAAdQIl4A4QEMIAEAAABNwwAHUEKFAOEBDCABAAAATsMAB1CCTQDhAQwgAQAAAE/DAAdQ4iEA4QEMIAEAAABQwwAHUMKqAOEBDCABAAAAVcMABVDiIQDhAQwgAQAAAFLDAAdQYiAA4QEMIAEAAABTwwAHUCIaAOEBFgQBAAAAVMMAB1Di2wDhAQwgAQAAAFXDAAdQYiAA4QEMIAEAAABWwwAHUIKYAOEBDCABAAAAV8MAB1AiGgDhASIAAQAAAFjDAAZQIhwA4QEMIAEAAABZwwAHUOIhAOEBDCABAAAAWsMAB1AiGgDhASIAAQAAAFvDAAZQQi0A4QEMIAEAAABbwwAFUKInAOEBGkABAAAAXcMAB1CCJwDhARYEAQAAAF7DAAdQ4hUA4QEWBAEAAABfwwAHUIIwAOEBGkABAAAAYMMAB1CiMADhARYEAQAAAGHDAAdQwjAA4QEaQAEAAABgwwAFUOIVAOEBIAABAAAAYMMAAlDCewDhAQwgAQAAAGTDAAdQAiMA4QEMIAEAAABlwwAHUAIRAeEBDCABAAAAZsMAB1AiWQHhAQwgAQAAAGfDAAdQ4mIB4QEMIAEAAABowwAHUAIhAOEBDCABAAAAbcMABVBCOADhAQwgAQAAAGrDAAdQgq8B4QEMIAEAAABrwwAHUKIaAOEBFgQBAAAAbMMAB1ACagDhAQwgAQAAAG3DAAdQQhYA4QEeAAEAAABuwwAGUIIXAOEBGkABAAAAb8MAB1ACGgDhARpAAQAAAG/DAAVQ4hUA4QEaQAEAAABvwwAFUAIZAOEBDCABAAAAcsMAB1CCIQDhASIgAQAAAHPDAAZQghYA4QEMIAEAAABzwwAFUGIaAOEBDCABAAAAdcMAB1DCiwDhAS4EAQAAAHbDAAZQokwA4QEMIAEAAAB3wwAHUIJkAOEBIEABAAAAdsMAAlDieADhARYEAQAAAHbDAAVQwkoA4QEWBAEAAAB2wwAFUOIVAOEBLiABAAAAdsMAAlBCCQHhARwMAQAAAHzDAAdQYhsA4QEMIAEAAAB9wwAHUEJjAOEBGkABAAAAdsMABVBCYQHhAQwgAQAAAH/DAAdQIpoA4QEMIAEAAACAwwAHUMKAAOEBDCABAAAAgcMAB1DCXADhAQwgAQAAAILDAAdQYiIA4QEWBAEAAACDwwAHUAKjAOEBGDABAAAAhMMAB1DiIwDhASIAAQAAAIXDAAZQwlwA4QEaQAEAAACGwwAHUAIZAOEBDCABAAAAh8MAB1CiJwDhARpAAQAAAIjDAAdQQiAA4QEMIAEAAACJwwAHUAIZAOEBDCABAAAAisMAB1CCMADhARpAAQAAAIvDAAdQwhoA4QEcDAEAAACMwwAHUCIeAOEBDCABAAAAjcMAB1BCHgDhAQwgAQAAAI7DAAdQwhgA4QEWBAEAAACPwwAHUaKvAd4BGDABAAAAkMMQBVDCrwHhAQwgAQAAAJHDAAdQAhkA4QEMIAEAAACSwwAHUEJrAOEBFgQBAAAAk8MAB1DiJgDhAQwgAQAAAJXDAAVQwosB4QEMIAEAAACVwwAHUMJWAOEBFgQBAAAAm8MABVDCSgDhARYEAQAAAJvDAAVQ4lYA4QEcDAEAAACYwwAHUGIbAOEBDCABAAAAmcMAB1CiPADhAQwgAQAAAJrDAAdQQhwA4QEWBAEAAACbwwAHUMIeAOEBFgQBAAAAnMMAB1BCIADhAQwgAQAAAJ3DAAdQAhkA4QEMIAEAAACewwAHUGIaAOEBDCABAAAAn8MAB1ACIgDhAQwgAQAAAKHDAAVQojwA4QEMIAEAAAChwwAHUAIaAOEBDCABAAAAosMAB1ACGQDhAQwgAQAAAKPDAAdQwhcA4QEiBAEAAACkwwAGUAIZAOEBDCABAAAAscMAR1DiGADhAQwgAQAAALLDAEVQoicA4QEaQAEAAACzwwBHUIInAOEBFgQBAAAAtMMARVBCKwDhARpAAQAAALXDAEVQ4hUA4QEaQAEAAAC2wwBFUOIhAOEBDCABAAAAq8MAB1BiIADhASIEAQAAAKzDAAZQIhoA4QEWBAEAAACtwwAHUKI9AOEBDCABAAAArMMABVAiIADhAQwgAQAAALDDAAVQQiAA4QEMIAEAAACwwwAHUAIZAOEBDCABAAAAscMAB1DiGADhAQwgAQAAALHDAAVQgjAA4QEaQAEAAACzwwAHUKIwAOEBGkABAAAAs8MABVDCMADhARpAAQAAALPDAAVQ4hUA4QEaQAEAAACzwwAFUMIaAOEBHAwBAAAAt8MAB1CidQDhAQwgAQAAAKTDAAVQIkYA4QEMIAEAAAC5wwAHUOIYAOEBDCABAAAAo8MABVDCHwDhASwEAQAAALvDAAZQgiEA4QEiBAEAAAC8wwAGUGIbAOEBDCABAAAAvcMAB1CCFgDhAQwgAQAAALzDAAVQ4iEA4QEMIAEAAAC/wwAHUGIgAOEBIgABAAAAwMMABlAiGgDhARYEAQAAAMHDAAdQQiAA4QEMIAEAAADCwwAHUKLnAOEBDCABAAAAw8MAB1AiHADhAQwgAQAAAMTDAAdQIhoA4QEWBAEAAADFwwAHUGI3AOEBDCABAAAAxsMAB1DiHgDhARpAAQAAAMfDAAdQ4hUA4QEaQAEAAADHwwAFUKIXAOEBDCABAAAAycMAB1ACKgDhARpAAQAAAMfDAAVQwlYA4QEWBAEAAADPwwAFUMJKAOEBFgQBAAAAz8MABVDiVgDhARwMAQAAAM3DAAdQYhsA4QEMIAEAAADOwwAHUIKsAOEBFgQBAAAAz8MAB1BCJADhASIEAQAAANDDAAZQAhkA4QEMIAEAAADZwwBHUKInAOEBGkABAAAA2sMAR1CCJwDhARYEAQAAANvDAEdQQisA4QEaQAEAAADcwwBFUOIVAOEBGkABAAAA3cMARVDiIQDhAQwgAQAAANbDAAdQYiAA4QEMIAEAAADXwwAHUCIaAOEBFgQBAAAA2MMAB1ACGQDhAQwgAQAAANnDAAdQgjAA4QEaQAEAAADawwAHUKIwAOEBFgQBAAAA28MAB1DCMADhARpAAQAAANrDAAVQ4hUA4QEaQAEAAADawwAFUMIaAOEBHAwBAAAA3sMAB1BiGwDhAQwgAQAAAN/DAAdQ4iAA4QEMIAEAAADgwwAHUOIhAOEBDCABAAAA4cMAB1BiIADhAQwgAQAAAOLDAAdQIhoA4QEWBAEAAADjwwAHUKJOAOEBDCABAAAA5MMAB1AiQQDhAQwgAQAAAOXDAAdQ4pkA4QEMIAEAAADmwwAHUAJLAOEBDCABAAAA58MAB1DCVgDhARYEAQAAAOzDAAVQwkoA4QEWBAEAAADswwAFUOJWAOEBHAwBAAAA6sMAB1BiGwDhAQwgAQAAAOvDAAdQYmUA4QEWBAEAAADswwAHUOIlAOEBDCABAAAA7cMAB1CCPADhAQwgAQAAAO3DAAVQojcA4QEMIAEAAADvwwAHUOIlAOEBDCABAAAA8MMAB1ACFgDhAQwgAQAAAPLDAAVQYh0A4QEMIAEAAADywwAFTyJWAecBGDABAAAA88MQBVAiVgHhARgwAQAAAPPDAAdQgnwA4QEWBAEAAAD1wwAHUKJ0AOEBDCABAAAA9sMAB1BiHgDhAQwgAQAAAPfDAAdQghcA4QEaQAEAAAD4wwAHUOIZAOEBFgQBAAAA+cMAB1ACGgDhARpAAQAAAPjDAAVQ4hUA4QEgAAEAAAD4wwACUGIbAOEBDCABAAAA/MMAB1BiHADhARYEAQAAAP3DAAdQIqEA4QEMIAEAAAD+wwAHUIIcAOEBFgQBAAAA/8MAB1Ai8gDhAQwgAQAAAAHEAAVQ4jQA4QEMIAEAAAABxAAHUOKvAeEBDCABAAAAAsQAB1BCewDhAQwgAQAAAALEAAVQArAB4QEMIAEAAAAExAAHUEJ7AOEBDCABAAAABMQABVACQgDhARYEAQAAAAbEAAdQYkkA4QEMIAEAAAAHxAAHUOIWAOEBDCABAAAACMQAB1AiuADhAQwgAQAAAAnEAAdQAjQA4QEiAAEAAAAKxAAGUEIgAOEBDCABAAAAC8QAB1DCGQDhARYEAQAAAAzEAAdQghcA4QEaQAEAAAANxAAHUAIaAOEBGkABAAAADcQABVDiFQDhARpAAQAAAA3EAAVQAhkA4QEMIAEAAAAQxAAHUMIXAOEBFgQBAAAAEcQAB1BiGgDhAQwgAQAAABLEAAdQQrgA4QEMIAEAAAATxAAHUELpAOEBDCABAAAAFMQAB1AisAHhAQwgAQAAABXEAAdQQrAB4QEMIAEAAAAWxAAHUGKwAdkBMgABAAAAF8QABlAiYgDhAQwgAQAAABjEAAdQ4hUA4QEMIAEAAAAZxAAHUGI2AOEBFgQBAAAAGsQAB1DCIQDhAQwgAQAAABvEAAdQ4o4A4QEWBAEAAAAcxAAHUMI1AOEBGkABAAAAHcQAB1DiIQDhAQwgAQAAAB7EAAdQgrAB9AMMIAEAAAAfxAAFUKKwAfgDDCABAAAAIMQABVLCsAEyAhgwAQAAACHEEAVT4rAB2QEYMAEAAAAhxAAFU0ImAdkBDCABAAAAI8QAB1MCsQHZAQwgAQAAACTEAAdUQuoA4QEMIAEAAAAlxAAHVSKxAd4BGDABAAAAJsQQBVQC6QDhARgwAQAAACbEAAVWQrEB1QEMIAEAAAAoxAAFV2KxATICGDABAAAAKcQQBVaCPwDZARgwAQAAACnEAAVWAm8A4QEMIAEAAAArxAAHWIKxAdUBIgABAAAALMQAAFjCHgDhASIAAQAAAC3EAAZYwoAA4QEiAAEAAAAuxAAGWEIdAOEBFgQBAAAAL8QAB1jC7wDhAQwgAQAAADDEAAdYYksA4QEWBAEAAAAxxAAHWYI9APsBJggBQAEAM8QQBViCPQDhAXwIAQAAADPEAAZYQhgB4QEsBAEAAAA0xAAGWGIfAOEBGkABAAAAM8QABViCHwDhASQIAQAAADbEAAZYwkoA4QEsBAEAAAAzxAACWOIVAOEBGkABAAAAM8QABVgiegDhARwMYQUAADnEAAdYYhsA4QEMIAEAAAA6xAAHWAJnAOEBGkABAAAAM8QABVjCHwDhAQwgAQAAADzEAAdY4hkA4QEWBAEAAAA9xAAHWGIbAOEBDCABAAAAPsQAB1gCoADhARYEAQAAAD/EAAdYglgA4QEaQAEAAABAxAAHWMIgAOEBHAwBAAAAQcQAB1hiGwDhAQwgAQAAAELEAAdYorEB2QEMIAEAAABDxAAHWqI6AQoCGTABAAAAUcQgBVnCOgEPAhkwAQAAAFHEEAVYwjoBEQIZMAEAAABRxAAFWAKxAOEBDCABAAAAR8QAB1iiIwDhAQwgAQAAAEjEAAdYgjcA4QEMIAEAAABJxAAHWCJOAeEBDCABAAAASsQAB1jCsQHhAQwgAQAAAEvEAAdYQigB4QEMIAEAAABMxAAHWEJKAeEBDCABAAAATcQAB1risQFOAhkwAQAAAFHEIAVZArIBUwIZMAEAAABRxBAFWAKyARkCGTABAAAAUcQABVhiWgDhARgwAQAAAFHEAAdYIlwA4QEMIAEAAABSxAAHWAI1AOEBDCABAAAAU8QAB1jCWQDhAQwgAQAAAFPEAAVYAjQA4QEWBAEAAABVxAAHWGJvAOEBDCABAAAAVsQAB1giKwDhAQwgAQAAAFfEAAdYokYA4QEMIAEAAABYxAAHWMI0AOEBFgQBAAAAWcQAB1hiHADhARYEAQAAAFrEAAdYoioA4QEcDAEAAABbxAAHWCKyAdkBDCABAAAAXMQAB1jiVgDhARwMAQAAAF3EAAdYYiIA4QEiBAEAAABexAAGWEIdAOEBDCABAAAAX8QAB1iCFwDhARpAAQAAAGDEAAdY4hkA4QEaQAEAAABgxAAFWAIaAOEBGkABAAAAYMQABVjiFQDhARpAAQAAAGDEAAVYIiAA4QEMIAEAAABmxAAFWGIcAOEBFgQBAAAAZcQAB1hCIADhAQwgAQAAAGbEAAdYQk4A4QEeIAEAAABnxAAGWAJuAOEBDCABAAAAaMQAB1hioADhAQwgAQAAAGnEAAdYAoYA4QEWBAEAAABqxAAHWIJMAOEBDCABAAAAa8QAB1iitADhAQwgAQAAAGzEAAdY4hUA4QEeAAEAAABnxAACWMIzAOEBDCABAAAAbsQAB1hiGwDhARYEAQAAAG/EAAdYQlEA4QEMIAEAAABwxAAHWCJXAOEBFgQBAAAAccQAB1hiJADhAQwgAQAAAHLEAAdY4k4A4QEMIAEAAABzxAAHWCJlAOEBDCABAAAAZ8QABVjilgDhAQwgAQAAAHXEAAdYgj0A4QEMIAEAAAB2xAAHWCIcAOEBDCABAAAAd8QAB1hCSQDhAQwgAQAAAHjEAAdYIhwA4QEMIAEAAAB5xAAHWKJAAOEBDCABAAAAesQAB1hCHgDhAQwgAQAAAHvEAAdYgiwA4QEMIAEAAAB8xAAHWCIaAOEBFgQBAAAAfcQAB1iCHADhARYEAQAAAH7EAAdYgkgA4QEMIAEAAAB/xAAHWKJ6AOEBDCABAAAAgMQAB1jCHQDhAQwgAQAAAIHEAAdY4iEA4QEMIAEAAACCxAAHWIKqAOEBDCABAAAAhMQABVgCPADhAQwgAQAAAITEAAdYgpgA4QEMIAEAAACFxAAHWMI0AOEBGkABAAAAhsQAB1giHADhAQwgAQAAAIfEAAdYIhoA4QEWBAEAAACIxAAHWOJmAOEBDCABAAAAicQAB1hiHADhARYEAQAAAIrEAAdYYiQA4QEMIAEAAACLxAAHWGIcAOEBFgQBAAAAjMQAB1hiIgDhAQwgAQAAAI3EAAdYAm4A4QEMIAEAAACOxAAHWIJfANkBFgQBAAAAj8QAB1pCsgHeARpAAQAAAJLEIAVZolIA+wEaQAEAAACSxBAFWKJSAOEBUkABAAAAksQABlhCJQDhASBAAQAAAJLEAAJYIiYA4QEMIAEAAACUxAAHWKKKAOEBFgQBAAAAlcQAB1jCGgDhARwMAQAAAJbEAAdYwlYA4QEWBAEAAACyxAAFWMJKAOEBFgQBAAAAssQABVhiGwDhAQwgAQAAAJnEAAdY4hUA4QEaQAEAAACSxAAFWOI/AOEBHiABAAAAm8QABlgCVgDhAQwgAQAAAJzEAAdYAhgA4QEMIAEAAACdxAAHWAJAAOEBFgQBAAAAnsQAB1iiIwDhAQwgAQAAAJ/EAAdYwiMA4QEMIAEAAACfxAAFWCJXAOEBFgQBAAAAocQAB1gCOgDhAQwgAQAAAKLEAAdYAlgA4QEMIAEAAACbxAAFWGIbAOEBFgQBAAAApMQAB1iiKgDhARwMAQAAAKXEAAdYwkIA4QEMIAEAAACmxAAHWCJGAOEBDCABAAAAp8QAB1jCjADhAQwgAQAAAKjEAAdYgkwA4QEMIAEAAACpxAAHWOIVAOEBGkABAAAAm8QABVoCVQA0AhpAAQAAAFAUIg1ZIlUAiAIaQAEAAADYChINWCJVADwCGkABAAAAYAECDVpiVQBAAhpAAQAAAFAZIg1ZglUAmAIaQAEAAADYDxINWIJVAEgCGkABAAAAYAYCDVjCsADhAURAAQAAAJLEAAJY4v4A4QEiBAEAAACyxAAGWCK3AOEBDCABAAAAs8QAB1jCzADhAQwgAQAAALTEAAdYYhwA4QEWBAEAAAC1xAAHWKIqAOEBHAwBAAAAtsQAB1hiGwDhAQwgAQAAALfEAAdYIhgA4QEMIAEAAAC4xAAHWIIXAOEBGkABAAAAucQAB1jiGQDhARpAAQAAALnEAAVYAhoA4QEaQAEAAAC5xAAFWOIVAOEBGkABAAAAucQABVgCGQDhAQwgAQAAAL3EAAdYgiEA4QEuBAEAAAC+xAAGWKIkAOEBHAwBAAAAv8QAB1hiGwDhAQwgAQAAAMDEAAdYghYA4QEMIAEAAAC+xAAFWOIhAOEBDCABAAAAwsQAB1hiIADhAQwgAQAAAMPEAAdYQiAA4QEMIAEAAADExAAHWKJUAOEBDCABAAAAxcQAB1jCSADhAQwgAQAAAMbEAAdYoiAA4QEeIAEAAADHxAAGWOIZAOEBIEABAAAAx8QAAljiHgDhAQwgAQAAAMnEAAdYoooA4QEWBAEAAADKxAAHWMIaAOEBHAwBAAAAy8QAB1hiGwDhAQwgAQAAAMzEAAdY4hUA4QEaQAEAAADHxAAFWAIdAOEBGkABAAAAx8QABViiswDhAQwgAQAAAM/EAAdYAoEA4QEMIAEAAADQxAAHWCIeAOEBDCABAAAA0cQAB1jCGADhARYEAQAAANLEAAdYwiAA4QEcDAEAAADTxAAHWMIZAOEBFgQBAAAA1MQAB1iCFwDhARpAAQAAANXEAAdYwhkA4QEWBAEAAADWxAAHWGIeAOEBDCABAAAA18QAB1iCFwDhARpAAQAAANjEAAdY4hkA4QEaQAEAAADYxAAFWAIaAOEBGkABAAAA2MQABVjiFQDhARpAAQAAANjEAAVYAhkA4QEMIAEAAADcxAAHWOIYAOEBDCABAAAA3MQABVhiGgDhAQwgAQAAAN7EAAdYoh8A4QEMIAEAAADexAAFWGIbAOEBDCABAAAA4MQAB1himQDhAQwgAQAAAOHEAAdYgooA4QEMIAEAAADixAAFWEJ7AOEBDCABAAAA4sQABVjCyADhAQwgAQAAAOTEAAVYQnsA4QEMIAEAAADkxAAFWMJQAOEBIgABAAAA5sQABlhCewDhAQwgAQAAAObEAAVYIi4A4QEMIAEAAADoxAAHWAJIAOEBDCABAAAA6cQAB1gCmwDhAR4AAQAAAOrEAAZYIiQA4QEeIAEAAADrxAAGWCJGAOEBDCABAAAA7MQAB1hioQDhAQwgAQAAAOzEAAVY4hUA4QEgBAEAAADrxAACWGIbAOEBDCABAAAA78QAB1giegDhARYEAQAAAPDEAAdYoh8A4QEMIAEAAADrxAAFWKJtAOEBHgABAAAA68QARlgiRgDhAQwgAQAAAOzEAEdYYqEA4QEMIAEAAADtxABFWOIVAOEBGkABAAAA7sQARVhiGwDhAQwgAQAAAO/EAEdYInoA4QEWBAEAAADwxABHWIJpAOEBDCABAAAA8cQARVmCQwDnAQ4YAUABAPrEEAVYgkMA4QE8GAEAAAD6xAAWWAJcAOEBDCABAAAA+8QAB1gCPgDhAQwgAQAAAPzEAAdYIiMA4QEMIAEAAAD9xAAHWOIfAOEBDCABAAAA/cQABVjCHgDhAQwgAQAAAP/EAAdYgjYA4QEMIAEAAAAAxQAHWIJRAOEBDCABAAAAAcUAB1hiJADhAQwgAQAAAALFAAdYQisA4QEMIAEAAAAExQAFWCIcAOEBDCABAAAABMUAB1gCIADhAQwgAQAAAAXFAAdYgi8B4QEMIAEAAAAGxQAHWEJ+AOEBDCABAAAAB8UAB1hisgHZARYEAQAAAAjFAAdYIhoA4QEMIAEAAAAJxQAHWKIZAOEBFgQBAAAACsUAB1iCHADhARYEAQAAAAvFAAdY4iEA4QEMIAEAAAAMxQAHWGIgAOEBIgABAAAADcUABlgiGgDhARYEAQAAAA7FAAdY4iEA4QEMIAEAAAAPxQAHWMJyAOEBDCABAAAAEMUAB1jiIQDhAQwgAQAAABHFAAdYgiEA4QEMIAEAAAASxQAHWEIFAeEBDCABAAAAE8UAB1iCHADhARYEAQAAABTFAAdYojwA4QEMIAEAAAAVxQAHWMLMAOEBDCABAAAAFsUAB1jiIQDhAQwgAQAAABfFAAdYQiQA4QEiAAEAAAAYxQAGWOIhAOEBDCABAAAAGcUAB1jiiwDhAQwgAQAAABrFAAdYwjwA4QEiAAEAAAAbxQAGWOIhAOEBDCABAAAAHMUAB1hiIADhAQwgAQAAAB3FAAdYQkkA4QEMIAEAAAAexQAHWII3AOEBDCABAAAAH8UAB1giSADhAQwgAQAAACDFAAdYwh4A4QEWBAEAAAAhxQAHWIIXAOEBDCABAAAAIsUAB1hCSQDhAQwgAQAAACPFAAdYojwA4QEMIAEAAAAkxQAHWOIuAOEBDCABAAAAJcUAB1gCLgDhAQwgAQAAACbFAAdYghkA4QEMIAEAAAAnxQAHWILAAOEBDCABAAAAKMUAB1giGgDhARYEAQAAACnFAAdYYjYA4QEMIAEAAAAqxQAHWOIhAOEBDCABAAAAK8UAB1hiJADhAQwgAQAAACzFAAdYYi4A4QEWBAEAAAAtxQAHWGIcAOEBFgQBAAAALsUAB1gicwDhAQwgAQAAAC/FAAdYIjsA4QEMIAEAAAAwxQAHWcKBAOcBGDABAAAAMcUQBVjCgQDhARgwAQAAADHFAAdYgnYA4QEWBAEAAAAzxQAHWKJgAOEBFgQBAAAANMUAB1hiJADhAQwgAQAAADXFAAdYYjcA4QEMIAEAAAA2xQAHWGI3AOEBDCABAAAAN8UAB1hC5wDhAQwgAQAAADjFAAdYQtAA4QEMIAEAAAA4xQAFWEJJAOEBDCABAAAAOsUAB1hCZADhAQwgAQAAADvFAAdYgkgA4QEMIAEAAAA8xQAHWAJBAOEBDCABAAAAPcUAB1iCLgDhAQwgAQAAAD/FAAVYojwA4QEMIAEAAAA/xQAFWGI3AOEBDCABAAAAQMUAB1giGgDhARYEAQAAAEHFAAdYQhoA4QEMIAEAAABCxQAHWCIcAOEBDCABAAAAQ8UAB1hCLgDhAQwgAQAAAETFAAdYIhwA4QEMIAEAAABFxQAHWOKLAOEBDCABAAAARsUAB1giHADhAQwgAQAAAEfFAAdYQkkA4QEMIAEAAABIxQAHWKJUAOEBDCABAAAAScUAB1giQQDhAQwgAQAAAErFAAdYghkA4QEMIAEAAABLxQAHWCIcAOEBDCABAAAATMUAB1giHADhAQwgAQAAAE3FAAdYIhwA4QEMIAEAAABOxQAHWAJBAOEBDCABAAAAT8UAB1iCXQDhARYEAQAAAFDFAAdYQkwA4QEMIAEAAABRxQAHWEIaAOEBDCABAAAAUsUAB1jiIQDhAQwgAQAAAFPFAAdYYiAA4QEMIAEAAABUxQAHWKI8AOEBDCABAAAAVcUAB1iCBwHhAQwgAQAAAFbFAAdYAjIA4QEMIAEAAABWxQAFWMJ6AOEBDCABAAAAWMUAB1jiHwDhAQwgAQAAAFjFAAVYorgA4QEMIAEAAABaxQAHWCIaAOEBFgQBAAAAW8UAB1gC5gDhAQwgAQAAAFzFAAdYglEA4QEMIAEAAABdxQAHWOLmAOEBHiABAAAAXsUABlhiGwDhARYEAQAAAF/FAAdYoioA4QEcDAEAAABgxQAHWGIbAOEBDCABAAAAYcUAB1jCTADhAQwgAQAAAGLFAAdYghYA4QEMIAEAAABexQAHWMJWAOEBFgQBAAAAbMUABVjCSgDhARYEAQAAAGzFAAVY4lYA4QEcDAEAAABmxQAHWGIcAOEBFgQBAAAAZ8UAB1iiKgDhARwMAQAAAGjFAAdYYhsA4QEMIAEAAABpxQAHWOIgAOEBDCABAAAAasUAB1gi9wDhAQwgAQAAAGvFAAdYYg4B4QEWBAEAAABsxQAHWCIeAOEBDCABAAAAbcUAB1jCGADhARYEAQAAAG7FAAdYYhsA4QEMIAEAAABvxQAHWIKXAOEBDCABAAAAcMUAB1jCSgDhAR4gAQAAAHHFAAZY4h4A4QEMIAEAAAByxQAHWCKsAOEBHgABAAAAc8UABlgCQADhASAAAQAAAHPFAAJYAlgA4QEeAAEAAABzxQAEWOIVAOEBHgABAAAAc8UAAlhCHQDhARYEAQAAAHfFAAdYoj0A4QEMIAEAAABxxQAFWMJgANkBLgQBAAAAecUABljCAgDhAQwgAQAAAHrFAAdYgkMA4QEWBAEAAAB7xQAHWQJuAOcBGDABAAAAfMUQBVgCbgDhARgwAQAAAHzFAAVZYiUA5wEYMAEAAAB+xRAFWGIlAOEBGDABAAAAfsUAB1giMgDhARYEAQAAAIDFAAdYQk8A4QEMIAEAAACBxQAHWIJ/AOEBDCABAAAAgsUAB1giVwDhARYEAQAAAIPFAAdYYlEA4QEaQAEAAACExQAHWCImAOEBDCABAAAAhcUAB1hikQDhAR4gAQAAAHnFAARYgrIB4QEgAAEAAACHxQAGWOIZAOEBIEABAAAAecUAAljiFQDhAR5AAQAAAHnFAAJYIqwA4QEeAAEAAACKxQAGWAJAAOEBFgQBAAAAi8UAB1hCJwDhARYEAQAAAIzFAAdYwowA4QEeIAEAAACNxQAGWOIVAOEBGiABAAAAjcUABVgiVwDhARYEAQAAAI/FAAdYYqkA4QEeIAEAAACNxQAEWKJgAeEBDCABAAAAkcUAB1hCJADhARYEAQAAAJLFAAdYgkgA4QEMIAEAAACTxQAHWOJEAOEBFgQBAAAAlMUAB1gCuwDhAQwgAQAAAJXFAAdYgiwA4QEMIAEAAACWxQAHWGIuAOEBIgABAAAAl8UABlgCQQDhAQwgAQAAAJjFAAdY4nAA4QEMIAEAAACZxQAHWEIuAOEBDCABAAAAmsUAB1hCLgDhAQwgAQAAAJvFAAdYQhoA4QEMIAEAAACcxQAHWAItAOEBFgQBAAAAncUAB1iCHADhARYEAQAAAJ7FAAdYAkEA4QEMIAEAAACfxQAHWIIcAOEBLAABAAAAoMUABlhiIADhAQwgAQAAAKHFAAdYQkkA4QEMIAEAAACixQAHWGImAOEBDCABAAAAo8UAB1hCLgDhAQwgAQAAAKTFAAdYghwA4QEMIAEAAAClxQAHWEIaAOEBDCABAAAApsUAB1hiJADhARYEAQAAAKfFAAdYQi4A4QEMIAEAAACoxQAHWKI8AOEBDCABAAAAqcUAB1hCLQDhAQwgAQAAAKrFAAdYQi4A4QEMIAEAAACrxQAHWCIcAOEBDCABAAAArMUAB1giHADhAQwgAQAAAK3FAAdYYi4A4QEWBAEAAACuxQAHWMIdAOEBDCABAAAAr8UAB1gCLgDhAQwgAQAAALDFAAdYohoA4QEWBAEAAACxxQAHWCIYAOEBDCABAAAAssUAB1hCKwDhAQwgAQAAALTFAAVYIhwA4QEMIAEAAAC0xQAHWOJwAOEBDCABAAAAtcUAB1giGgDhAQwgAQAAALbFAAdYYiAA4QEMIAEAAAC3xQAHWEItAOEBDCABAAAAuMUAB1jiRADhARYEAQAAALnFAAdYghwA4QEWBAEAAAC6xQAHWGIgAOEBDCABAAAAu8UAB1hCSQDhAQwgAQAAALzFAAdYwj0A4QEMIAEAAAC9xQAHWEIuAOEBDCABAAAAvsUAB1jiFQDhAQwgAQAAAL/FAAdY4kAA4QEMIAEAAAC+xQAFWGIcAOEBFgQBAAAAwcUAB1hiGgDhARYEAQAAAMLFAAdYAjQA4QEWBAEAAADDxQAHWKJUAOEBDCABAAAAxMUAB1jCFwDhARYEAQAAAMXFAAdYIhgA4QEMIAEAAADExQBFWGIuAOEBFgQBAAAAx8UAB1jiGADhAQwgAQAAAMTFAAVY4jUA4QEMIAEAAADJxQAHWCJBAOEBDCABAAAAysUAB1iCHADhARYEAQAAAMvFAAdYQkkA4QEMIAEAAADMxQAHWKKyAeEBDCABAAAAzcUAB1hCOADhAQwgAQAAAM7FAAdYQhwA4QEMIAEAAADPxQAHWCI0AOEBFgQBAAAA0MUAB1gCOADhAQwgAQAAANHFAAdYghwA4QEWBAEAAADSxQAHWEJJAOEBDCABAAAA08UAB1hiOQDhAQwgAQAAANbFAAdY4mAA4QEMIAEAAADVxQAHWKJUAOEBDCABAAAA1sUAB1hCLgDhAQwgAQAAANfFAAdYIh4A4QEMIAEAAADYxQAHWGIgAOEBDCABAAAA2cUAB1hCKwDhAQwgAQAAANvFAAVYIhwA4QEMIAEAAADbxQAHWCJIAOEBDCABAAAA3MUAB1gCRgDhAQwgAQAAAN3FAAdYAjwA4QEMIAEAAADexQAHWCIaAOEBIgABAAAA38UABljCGgDhARwMAQAAAODFAAdY4iEA4QEMIAEAAADhxQAHWIJdAOEBFgQBAAAA4sUAB1hCTADhAQwgAQAAAOPFAAdY4h4A4QEMIAEAAADkxQAHWCI8AOEBFgQBAAAA5cUAB1jiIQDhAQwgAQAAAObFAAdY4h4A4QEuAAEAAADnxQAGWGIfAOEBFgQBAAAA6MUAB1jiFQDhAR4AAQAAAOfFAAJYQiQA4QEiBAEAAADqxQAGWAIZAOEBDCABAAAA88UAR1iiJwDhARpAAQAAAPTFAEdYgicA4QEWBAEAAAD1xQBHWEIrAOEBGkABAAAA9sUARVjiFQDhARpAAQAAAPfFAEVY4iEA4QEMIAEAAADwxQAHWGIgAOEBDCABAAAA8cUAB1hCIADhAQwgAQAAAPLFAAdYAhkA4QEMIAEAAADzxQAHWIIwAOEBGkABAAAA9MUAB1iiMADhASAAAQAAAPTFAAJYwjAA4QEaQAEAAAD0xQAFWOIVAOEBGkABAAAA9MUABVgiWwDhAQwgAQAAAPjFAAdYolQA4QEMIAEAAAD5xQAHWIIsAOEBDCABAAAA+sUAB1giOADhAQwgAQAAAPvFAAdYQjgA4QEMIAEAAAD8xQAHWMJUAOEBDCABAAAA+8UABVrCsgEKAhkwAQAAAAHGIAVZ4rIBDwIZMAEAAAABxhAFWOKyARECGTABAAAAAcYABViCPgDhARgwAQAAAAHGAAdY4jYA4QEMIAEAAAACxgAHWIIpAOEBHAwBAAAAA8YAF1iCRADhARwMAQAAAATGAAdZYhsA5wEcDAFAAQAGxhAFWGIbAOEBHAwBAAAABsYAF1hijwHhAQwgAQAAAAvGAAVYYiQA4QEMIAEAAAAIxgAHWSL4AOcBGDABAAAACcYQBVgi+ADhARgwAQAAAAnGAAdYIvcA4QEMIAEAAAALxgAHWQKzARcCfgABQAEADcYQBFiicwDZAX4EAQAAAA3GAAZYAsgA4QEMIAEAAAAOxgAHWMI5AOEBIgABAAAAD8YABlhCSgDhAQwgAQAAABDGAAdYAioA4QEMIAEAAAAQxgAFWOKzAOEBDCABAAAAEsYAB1jieADhARYEAQAAAA3GAAVYwkoA4QEWBAEAAAANxgAFWAJAAOEBFgQBAAAAFcYAB1giJQDhARYEAQAAABbGAAdYQgkB4QEcDAEAAAAXxgAHWIJkAOEBDCABAAAAGMYAB1iiqgDhAQwgAQAAABnGAAdYYhsA4QEMIAEAAAAaxgAHWELQAOEBDCABAAAAG8YAB1jCGADhAQwgAQAAABzGAAdY4rQA4QEMIAEAAAAdxgAHWOKuAOEBDCABAAAAHsYAB1hiJgDhAQwgAQAAAB/GAAdY4h4A4QEMIAEAAAAgxgAHWEIoAOEBDCABAAAAIcYAB1hCGQDhAQwgAQAAACLGAAdYwlYA4QEWBAEAAAA7xgAFWMJKAOEBFgQBAAAAO8YABVhiGwDhARYEAQAAACXGAAdY4h4A4QEMIAEAAAAmxgAHWMJCAOEBDCABAAAAJ8YAB1jCJgDhAQwgAQAAACjGAAdYgn8A4QEMIAEAAAApxgAHWOIVAOEBDCABAAAAKsYAB1jCQgDhAQwgAQAAACvGAAdYAioA4QEMIAEAAAApxgAFWMJCAOEBDCABAAAALcYAB1jirgDhAQwgAQAAAC7GAAdYAkcA4QEMIAEAAAAvxgAHWAI6AOEBDCABAAAAMMYAB1giJgDhAQwgAQAAADHGAAdYIpsA4QEMIAEAAAAyxgAHWCIiAOEBDCABAAAAM8YAB1gisgDhAQwgAQAAADTGAAdYAm4A4QEMIAEAAAA1xgAHWMJpAOEBDCABAAAANsYAB1jCQgDhAQwgAQAAADfGAAdYYhsA4QEMIAEAAAA4xgAHWCJBAOEBFgQBAAAAOcYAB1jiHgDhAQwgAQAAADrGAAdYgsIA4QEWBAEAAAA7xgAHWCKzAeEBDCABAAAAPMYAB1hCHQDhARYEAQAAAD3GAAdZAm4A5wEYMAEAAAA+xhAFWAJuAOEBGDABAAAAPsYABVliAgH7ASwEAUABAEHGEARYYgIB4QEoBAEEAABBxgAWWMJuAOEBDCABAAAAQsYAB1tCswEyAhgwAQAAAEPGEAVcYrMB2QEYMAEAAABDxgAFXYKzAdUBDCABAAAARcYABV1CdQDZAQwgAQAAAEbGAAddorMB2QEMIAEAAABHxgAHXcKzAdkBDCABAAAASMYAB13iuwDZAQwgAQAAAEnGAAdd4rMB2QEMIAEAAABKxgAHXSJaAOEBDCABAAAAS8YAB11CIwHhAQwgAQAAAEzGAAdeArQBMgIYMAEAAABNxhAFXyK0AdkBGDABAAAATcYABWCCNwDhAQwgAQAAAE/GAAdgQrQB2QEeAAEAAABQxgAGYIIdAOEBIAABAAAAUMYAAmDiFQDhARpAAQAAAFDGAAVgwhkA4QEeAAEAAABTxgAGYEIoAOEBDCABAAAAVMYAB2ACWADhAR4AAQAAAFPGAARg4hUA4QEaQAEAAABTxgAFYAKEAOEBDCABAAAAV8YAB2CCOwDhAQwgAQAAAFfGAAVgQlcA4QEMIAEAAABZxgAHYALeAOEBDCABAAAAWsYAB2CCNgDhARYEAQAAAFvGAAdhwlIA5wEYMAEAAABcxhAFYMJSAOEBGDABAAAAXMYAB2CCfADhARYEAQAAAF7GAAdgwjEA4QEWBAEAAABfxgAHYKIkAOEBHAwBAAAAYMYAB2BiNgDhARYEAQAAAGHGAAdgYhsA4QEMIAEAAABixgAHYKJAAOEBFgQBAAAAX8YABWCCfgDhAQwgAQAAAGTGAAdgwjYA4QEMIAEAAABlxgAHYMIjAOEBDCABAAAAZcYABWBCVwDhAR4AAQAAAGfGAAZgAoYA4QEaQAEAAABnxgAFYKLdAOEBHiABAAAAacYABmACQADhARpAAQAAAGnGAAVg4hUA4QEaQAEAAABpxgAFYCJIAOEBDCABAAAAbMYAB2CCTADhAR4AAQAAAG3GAAZg4hUA4QEaQAEAAABnxgAFYKIXAOEBDCABAAAAb8YAB2ACTADhAR4gAQAAAHDGAAZgQjEA4QEaQAEAAABwxgAFYAJJAOEBDCABAAAAcMYABWDiFQDhARpAAQAAAHDGAAVgImUA4QEeAAEAAABnxgAEYGIkAOEBDCABAAAAdcYAB2CCFwDhARpAAQAAAHbGAAdgAhkA4QEMIAEAAAB3xgAHYIIXAOEBGkABAAAAeMYAB2ACGQDhAQwgAQAAAHnGAAdggmwB4QEMIAEAAAB6xgAHYIL/AOEBDCABAAAAe8YAB2ACGQDhAQwgAQAAAHzGAAdg4mwB4QEMIAEAAAB9xgAHYEKiAeEBDCABAAAAhMYABWBiHADhARYEAQAAAH/GAAdggjEA4QEaQAEAAACDxgAFYCIgAOEBGkABAAAAg8YABWBiHADhARYEAQAAAILGAAdgwjUA4QEaQAEAAACDxgAFYCLsAOEBDCABAAAAhMYAB2DiTgDhAQwgAQAAAIXGAAdgYigA4QEMIAEAAACFxgAFYEKQAOEBDCABAAAAiMYABWCCigDhAQwgAQAAAIjGAAVggkgA4QEMIAEAAACJxgAHYGIkAOEBDCABAAAAisYAB2BCowDhAQwgAQAAAIvGAAdgYu0A4QEWBAEAAACMxgAHYMJWAOEBFgQBAAAAj8YABWDCSgDhARYEAQAAAI/GAAVgIgkB4QEWBAEAAACPxgAHYCJeAOEBDCABAAAAkMYAB2HCJgDnARgwAQAAAJHGEAVgwiYA4QEYMAEAAACRxgAHYQIiAOcBGDABAAAAk8YQBWACIgDhARgwAQAAAJPGAAdgQh0A4QEWBAEAAACVxgAHYGJfAOEBFgQBAAAAlsYAB2Ci7QDhAQwgAQAAAJfGAAVgAiMA4QEMIAEAAACYxgAHYGIbAOEBDCABAAAAmcYAB2DCKADhARYEAQAAAJrGAAdgYhsA4QEMIAEAAACbxgAHYKI6AOEBDCABAAAAl8YABWDCJgDhAQwgAQAAAJ3GAAVggnQA4QEaQAEAAACexgAHYEIoAOEBDCABAAAAn8YAB2ACWADhARpAAQAAAJ7GAAVg4hUA4QEgAAEAAACexgACYAKbAOEBLAABAAAAosYABmCCQwDhARwMAQAAAKPGAAdgwkoA4QEcDAEAAACkxgAHYAJLAOEBDCABAAAApcYAB2CieQDhAQwgAQAAAKbGAAdgQr8A4QEMIAEAAACnxgAHYMIjAOEBDCABAAAAqMYAB2AiwwDhAQwgAQAAAKnGAAdgYvkA4QEMIAEAAACpxgAFYEIoAOEBDCABAAAAq8YAB2BiGwDhAQwgAQAAAKzGAAdg4hkA4QEWBAEAAACtxgAHYMICAOEBDCABAAAArsYAB2CioADhAQwgAQAAAK/GAAdgwkkB4QEMIAEAAACwxgAHYOKWAOEBDCABAAAAscYAB2AiWADhAQwgAQAAALLGAAdggk4A4QEMIAEAAACzxgAHYCJQAOEBFgQBAAAAtMYAB2DCIADhASwEAQAAALXGAAZgIkwA4QEMIAEAAAC2xgAHYAIhAOEBDCABAAAAtsYABWCiIwDhARYEAQAAALjGAAdgIiYA4QEMIAEAAAC5xgAHYMJfAOEBDCABAAAApcYABWACJgDhAQwgAQAAALvGAAdgglcA4QEMIAEAAAC8xgAHYIK3AOEBDCABAAAAvcYAB2BCVwDhAQwgAQAAAL7GAAdgwnUA4QEMIAEAAAC/xgAHYIJMAOEBDCABAAAAwMYAB2CCPQDhAQwgAQAAAMHGAAdgwowA4QEMIAEAAADCxgAHYIIxAOEBGkABAAAAxcYABWAiIADhARpAAQAAAMXGAAVgwjUA4QEaQAEAAADFxgAFYGK0AdkBDCABAAAAxsYAB2AiOADhAQwgAQAAAMfGAAdg4iEA4QEMIAEAAADIxgAHYGIgAOEBDCABAAAAycYAB2AiGgDhARYEAQAAAMrGAAdgQiAA4QEMIAEAAADLxgAHYGJwAOEBDCABAAAAzMYAB2CCtAHZAQwgAQAAAM3GAAdgYnUA2QEMIAEAAADOxgAHYOKQAOEBDCABAAAAz8YAB2AiGgDhARYEAQAAANDGAAdgwhgA4QEWBAEAAADRxgAHYKLvANkBDCABAAAA0sYAB2AiuwDhAQwgAQAAANrGAAVgwhkA4QEWBAEAAADUxgAHYGIbAOEBDCABAAAA1cYAB2BiegDhAQwgAQAAANbGAAdggiIA4QEcDAEAAADXxgAHYOJnAOEBDCABAAAA2cYABWDiJADhAQwgAQAAANnGAAVgIlYA4QEMIAEAAADaxgAHYIILAeEBDCABAAAA28YAB2CCfgDhAQwgAQAAANzGAAdgogMB4QEMIAEAAADdxgAHYGIkAOEBAiQBAgAA3sYAF2CCOQDhASwMAQAAAN/GAAZgIh4A4QEMIAEAAADgxgAHYGLAAOEBFgQBAAAA4cYAB2DiPgDhAQwgAQAAAOLGAAdgYioA4QEMIAEAAADjxgAHYGKkAOEBAiRBAgAA5MYAB2DiKADhASIAwQAAAOXGAAZgIiAA4QEMIEEDAADoxgAHYCKPAOEBIgDhAAAA58YABmCCfgDhAQIkYQIAAOjGAAdgorQB4QEMIAEAAADpxgAHYEK0AeEBDCABAAAA6sYAB2DCSAHhAQwgAQAAAOvGAAdgInwB4QEMIAEAAADsxgAHYCJ8AeEBDCABAAAA7cYAB2CitAHhAQwgAQAAAO7GAAdgYsAA4QEMIAEAAADvxgAHYOI8AOEBDCABAAAA8MYAB2DiKADhASIEgQAAAPHGAAZgAvwA4QEMIAEAAADyxgAHYGI3AOEBDCABAAAA88YAB2CiPADhAQwgAQAAAPTGAAdgwugA2QEeAAEAAAD1xgAGYGJWAOEBGkABAAAA9cYABWCCfwDhAQwgAQAAAPfGAAdgwlYA4QEWBAEAAAD/xgAFYMJKAOEBFgQBAAAA/8YABWDiFQDhASAAAQAAAPXGAAJgIkUA4QEMIAEAAAD7xgAHYAJYAOEBDCABAAAA+8YABWBivADhAQwgAQAAAP3GAAdggnYA4QEiAAEAAAD+xgAGYKLyAOEBFgQBAAAA/8YAB2DCtAHhAQwgAQAAAADHAAdg4msA4QEeAAEAAAD1xgAEYEKHAeEBDCABAAAAAscAB2DitAHhAQwgAQAAAAPHAAdgAn8A4QEMIAEAAAAExwAHYAK1AeEBFgQBAAAABccAB2DChQDhAQwgAQAAAAbHAAdgYiAA4QEMIAEAAAAHxwAHYOLbAOEBDCABAAAACMcAB2BiEgHZAQwgAQAAAAnHAAdg4h4A4QEMIAEAAAAKxwAHYALmAOEBFgQBAAAAC8cAB2BCVwDhARpAAQAAAAzHAAdggkwA4QEMIAEAAAANxwAHYOIVAOEBGkABAAAADMcABWAiZQDhARpAAQAAAAzHAAVgYiQA4QEMIAEAAAAQxwAHYIIXAOEBHgABAAAAEccABmDiFQDhARpAAQAAABHHAAVgwhkB4QEMIAEAAAATxwAHYIIyAOEBDCABAAAAFMcAB2AiNADhARYEAQAAABXHAAdgwh8A4QEMIAEAAAAWxwAHYAIZAOEBDCABAAAAF8cAB2CCMQDhARpAAQAAABrHAAVgIiAA4QEaQAEAAAAaxwAFYMI1AOEBGkABAAAAGscAB2BCgwDhAQwgAQAAABvHAAdgQjgA4QEMIAEAAAAcxwAHYGI3AOEBDCABAAAAHccAB2ACIgDhAQwgAQAAAB7HAAdgojwA4QEMIAEAAAAfxwAHYGI2AOEBDCABAAAAIMcAB2BiNwDhAQwgAQAAACHHAAdgwjQA4QEMIAEAAAAixwAHYEI5AOEBDCABAAAAI8cAB2BiSQDhAQwgAQAAACTHAAdgAlwA4QEMIAEAAAAlxwAHYOJgAOEBDCABAAAAJscAB2AiQgDhAQwgAQAAACfHAAdggjsA4QEMIAEAAAAoxwAHYCIZAOEBDCABAAAAKccAB2CiJwDhARpAAQAAACrHAAdggjAA4QEaQAEAAAArxwAHYGIcAOEBFgQBAAAALMcAB2CCYADhAQwgAQAAAC3HAAdgYiQA4QEMIAEAAAAuxwAHYAIiAOEBDCABAAAAL8cAB2CCoQDhAQwgAQAAADDHAAdgYhwA4QEWBAEAAAAxxwAHYMJWAOEBFgQBAAAANMcABWDCSgDhARYEAQAAADTHAAVggqwA4QEWBAEAAAA0xwAFYKJSAOEBDCABAAAANccAB2BCGwHhAQwgAQAAADbHAAdg4hkA4QEWBAEAAAA3xwAHYSK1AfsBGDABAAAAOMcQBWAitQHhARgwAQAAADjHAAVgIkEB2QEeAAEAAAA6xwAGYIJKAOEBGkABAAAAOscABWCiSgDhAR4AAQAAADrHAARiIk4A4QEMIAEAAAA9xwAHY0K1AdkBDCABAAAAPscAB2NitQHhAQwgAQAAAD/HAAdkgrUB1QEMIAEAAABAxwAFZKK1AdkBDCABAAAAQccAB2XChwDZAQwgAQAAAELHAAdlwv8A4QEMIAEAAABDxwAHZcK1AdkBDCABAAAARMcAB2bitQHrAYAYAUABAEbHEARnArYB1QGCGAEAAABGxwAUaCK2AXICDSABAAAASccgBWZCtgF3Ag0gAQAAAEnHEAVnYrYBeQINIAEAAABJxwAFZ4K2AeEBDCABAAAASscAB2dCHQDhARYEAQAAAEvHAAdnQiEB2QEMIAEAAABMxwAHZ8IZAOEBGkABAAAATccAB2eiPADhAQwgAQAAAE7HAAdnQiAA4QEMIAEAAABPxwAHZ8IZAOEBIgQBAAAAUMcABmfCQgDhAQwgAQAAAFHHAAdnYhsA4QEMIAEAAABSxwAHZwJYAOEBDCABAAAAUMcABWdCogDhAQwgAQAAAFTHAAdnwkoA4QEWBAEAAABQxwAFZ8JCAOEBDCABAAAAVscAB2eCIgDhARwMAQAAAFfHAAdmQhQA5wEULAFAAQBZxxAFZ0IUAOEBFCwBAAAAWccAF2eitgHZAQwgAQAAAFrHAAdnwhgA4QEWBAEAAABbxwAHZ4IhAOEBFgQBAAAAXMcAB2cCTwDhARpAAQAAAF3HAAdnAhkA4QEMIAEAAABexwAHZ+IhAOEBDCABAAAAX8cAB2diIADhAQwgAQAAAGDHAAdnYlsA4QEMIAEAAABhxwAHZ0K5AOEBDCABAAAAYccABWfCGADhARYEAQAAAGPHAAdnAjEB4QEMIAEAAABkxwAHZwIiAOEBDCABAAAAZccAB2fCFwDhARYEAQAAAGbHAAdnwhoA4QEcDAEAAABnxwAHZ8JVAOEBDCABAAAAaMcAB2fCtgHZAR4gAQAAAGnHAAZnQiUA4QEaQAEAAABpxwAFZ+IVAOEBIAABAAAAaccAAmfiPwDhAQwgAQAAAGzHAAdnIiMA4QEMIAEAAABtxwAHZ+IfAOEBDCABAAAAbccABWfitgHhAQwgAQAAAHbHAAVnYqEA4QEaQAEAAABpxwAFZwI0AOEBFgQBAAAAcccAB2fiGQDhARYEAQAAAHLHAAdnYm8A4QEMIAEAAABzxwAHZwJAAOEBFgQBAAAAdMcAB2fCNADhARYEAQAAAHXHAAdnIuwA4QEMIAEAAAB2xwAFZ6K/AOEBDCABAAAAd8cAB2eCLAHhAQwgAQAAAHjHAAdnQnsA4QEMIAEAAABGxwAFZyIcAOEBDCABAAAAescAB2ciGgDhARYEAQAAAHvHAAdn4ioB2QEMIAEAAAB8xwAHZ4JeAOEBDCABAAAAfccAB2fiFQDhAQwgAQAAAH7HAAdnwn4A4QEcDAEAAAB/xwAHZ6InAOEBHiABAAAAgMcABmdiGwDhARYEAQAAAIHHAAdnoioA4QEcDAEAAACCxwAHZ2IbAOEBDCABAAAAg8cAB2eCTADhAQwgAQAAAITHAAdnQisA4QEMIAEAAACAxwAFZ8JWAOEBFgQBAAAAjMcABWfCSgDhARYEAQAAAIzHAAVn4lYA4QEcDAEAAACIxwAHZ2IbAOEBDCABAAAAiccAB2dCJwDhARYEAQAAAIrHAAdnYhsA4QEMIAEAAACLxwAHZwL4AOEBFgQBAAAAjMcAB2fifAH9AxtAAQAAAI3HAAVnQi4A4QEMIAEAAACOxwAHZ8JdAeEBDCABAAAAj8cAB2fiNwDhARYEAQAAAJDHAAdnQoMA4QEMIAEAAACRxwAHZ2IUAOEBDCABAAAAkscABWfiIADhAQwgAQAAAJPHAAdnAjEA4QEMIAEAAACUxwAHZ6IeAOEBDCABAAAAlccAB2eCUQDhAQwgAQAAAJLHAAVnwhcA4QEiBAEAAACXxwAGZ+IhAOEBDCABAAAAmMcAB2diIADhAQwgAQAAAJnHAAdnIhoA4QEWBAEAAACaxwAHZ8IaAOEBHAwBAAAAm8cAB2eCFwDhARpAAQAAAJzHAAdn4hkA4QEgQAEAAACcxwACZwIaAOEBGkABAAAAnMcABWfiFQDhARpAAQAAAJzHAAVnAhkA4QEMIAEAAACgxwAHZ+IYAOEBDCABAAAAoMcABWeCIQDhASIAAQAAAKLHAAZnYhoA4QEMIAEAAACjxwAHZ4JfAOEBDCABAAAApMcAB2eiKADhAQwgAQAAAKTHAAVnwkgA4QEMIAEAAACmxwAHZ2JAAOEBDCABAAAAp8cAB2ciGgDhARYEAQAAAKjHAAdn4jwA2QEcDAEAAACpxwAHZyIwAGUCFgQBAAAAqscABWfiFQBlAhYEAQAAAKvHAAVnAiUAZQIWBAEAAACsxwAFZ+J4AGUCFgQBAAAArccABWfClwBlAhYEAQAAAK7HAAVngiEAZQIWBAEAAACvxwAFZ+IVAGUCFgQBAAAAsMcABWfiFQBlAhYEAQAAALHHAAVnYiQAZQIWBAEAAACyxwAFZ8ICAGUCFgQBAAAAs8cABWfCGQBlAhYEAQAAALTHAAVnQhkAZQIWBAEAAAC1xwAFZwIwAGUCDCABAAAAtscABWdiIABlAhYEAQAAALfHAAVnoj0AZQIMIAEAAAC4xwAFZ4IhAGUCFgQBAAAAuccABWfiFQBlAhYEAQAAALrHAAVnwhkAZQIWBAEAAAC7xwAFZ4JEAGUCFgQBAAAAvMcABWfiVgBlAhYEAQAAAL3HAAVnQkoAAQQMIAEAAAC+xwAFZ8IZAGUCFgQBAAAAv8cABWcCvABlAhYEAQAAAMDHAAVnwhkAZQIWBAEAAADBxwAFZwJ7AGUCFgQBAAAAwscABWciMABlAhYEAQAAAMPHAAVnom8AZQIWBAEAAADExwAFZ4IcAGUCFgQBAAAAxccABWfiFQBlAhYEAQAAAMbHAAVnwhgAZQIWBAEAAADHxwAFZ0IgAGUCFgQBAAAAyMcABWeCIQBlAhYEAQAAAMnHAAVmgiEA3wMWBAEAAADLxxAFZ4IhAGUCFgQBAAAAy8cABWfiWQBlAhYEAQAAAMzHAAVnohoAZQIWBAEAAADNxwAFZyJKAGUCFgQBAAAAzscABWciRgBlAhYEAQAAAM/HAAVnQiQAZQIWBAEAAADQxwAFZsJKAN8DFgQBAAAA0scQBWfCSgBlAhYEAQAAANLHAAVnghcAZQIWBAEAAADTxwAFZ2IgAGUCFgQBAAAA1McABWeCIQBlAhYEAQAAANXHAAVnwoAAZQIWBAEAAADWxwAFZ4JOAGUCFgQBAAAA18cABWfCxQBlAhYEAQAAANjHAAVn4ikAZQIMIAEAAADZxwAFZ+IVAGUCFgQBAAAA2scABWfCGABlAhYEAQAAANvHAAVn4hUAZQIWBAEAAADcxwAFZ2IeAGUCFgQBAAAA3ccABWcCGQBlAhYEAQAAAN7HAAVnYrIAZQIWBAEAAADfxwAFZwIlAGUCFgQBAAAA4McABWdiMwBlAhYEAQAAAOHHAAVn4hUAZQIWBAEAAADixwAFZ+IZAGUCFgQBAAAA48cABWdiHABlAhYEAQAAAOTHAAVmohoA3wMWBAEAAADmxxAFZ6IaAGUCFgQBAAAA5scABWdiUQBlAhYEAQAAAOfHAAVnAlgAZQIWBAEAAADoxwAFZuIVAN8DDCABAAAA6scQBWfiFQBlAgwgAQAAAOrHAAVnIkUAZQIWBAEAAADrxwAFZ+JEAGUCFgQBAAAA7McABWfiFQBlAhYEAQAAAO3HAAVnAhkAZQIWBAEAAADuxwAFZ4JdAGUCFgQBAAAA78cABWcCGQBlAhYEAQAAAPDHAAVnIisAZQIMIAEAAADxxwAFZ8IYAGUCFgQBAAAA8scABWdCJABlAhYEAQAAAPPHAAVnwhgAZQIWBAEAAAD0xwAFZ0I4AGUCFgQBAAAA9ccABWfiFQBlAhYEAQAAAPbHAAVnApcAZQIMIAEAAAD3xwAFZyJBAGUCFgQBAAAA+McABWfiFQBlAhYEAQAAAPnHAAVnQh4A4QEMIAEAAAD6xwAHZ8IYAOEBFgQBAAAA+8cAB2eCIQDhARYEAQAAAPzHAAdnIh4A4QEMIAEAAAD9xwAHZ8IYAOEBDCABAAAA/scAB2fCGADhAQwgAQAAAP/HAAdngikA4QEMIAEAAAAAyAAHZ4IhAOEBFgQBAAAAAcgAB2eCIQDhARYEAQAAAALIAAdngiEA4QEWBAEAAAADyAAHZ8IYAOEBFgQBAAAABMgAB2fCGADhARYEAQAAAAXIAAdngiEA4QEWBAEAAAAGyAAHZ+I6AOEBDCABAAAAB8gAB2eiJgDhARYEAQAAAAjIAAdnQh0A4QEiAAEAAAAJyAAGZwIZAOEBDCABAAAACsgAB2eCIQDhARYEAQAAAAvIAAdn4lEA4QEMIAEAAAAMyAAHZwIlAOEBFgQBAAAADcgAB2eiGADhARYEAQAAAA7IAAdnwhgA4QEMIAEAAAAPyAAHZ8IYAOEBDCABAAAAEMgAB2eiHQDhAQwgAQAAABHIAAdnIh4A4QEMIAEAAAASyAAHZ4IhAOEBFgQBAAAAE8gAB2fCGQDhARYEAQAAABTIAAdnYiIA4QEWBAEAAAAVyAAHZ0JrAOEBFgQBAAAAFsgAB2eCIQDhARYEAQAAABfIAAdngiEA4QEWBAEAAAAYyAAHZ8IYAOEBFgQBAAAAGcgAB2ciHgDhAQwgAQAAABrIAAdnIiYA4QEMIAEAAAAbyAAHZ2IcAOEBFgQBAAAAHMgAB2fiFQDhARYEAQAAAB3IAAdn4hUA4QEMIAEAAAAeyAAHZ4IpAOEBDCABAAAAH8gAB2fCGADhARYEAQAAACDIAAdnIjQA4QEWBAEAAAAhyAAHZ4IXAOEBDCABAAAAIsgAB2fiGQDhARYEAQAAACPIAAdn4iMA4QEWBAEAAAAkyAAHZ4IhAOEBFgQBAAAAJcgAB2ciHgDhAQwgAQAAACbIAAdnAjQA4QEWBAEAAAAnyAAHZyIeAOEBDCABAAAAKMgAB2diHgDhARYEAQAAACnIAAdnwiAA4QEcDAEAAAAqyAAHZ0IdAOEBFgQBAAAAK8gAB2fiFQDhARYEAQAAACzIAAdngrAA4QEMIAEAAAAtyAAHZ4InAOEBFgQBAAAALsgAB2eiMADhARYEAQAAAC/IAAdnghwA4QEWBAEAAAAwyAAHZ8IZAOEBFgQBAAAAMcgAB2fCGQDhARYEAQAAADLIAAdnohgA4QEWBAEAAAAzyAAHZ+JzAeEBDCABAAAANMgAB2diHgDhASIEAQAAADXIAAZngiEA4QEWBAEAAAA2yAAHZ+IVAOEBFgQBAAAAN8gAB2fCGQDhARYEAQAAADjIAAdnohoA4QEWBAEAAAA5yAAHZ6IYAOEBFgQBAAAAOsgAB2fCHgDhARYEAQAAADvIAAdnwhkA4QEWBAEAAAA8yAAHZ4IhAOEBFgQBAAAAPcgAB2eiJADhARwMAQAAAD7IAAdnIh4A4QEMIAEAAAA/yAAHZ2IeAOEBIgABAAAAQMgABmeCIQDhARYEAQAAAEHIAAdnoiQA4QEcDAEAAABCyAAHZyI0AOEBFgQBAAAAQ8gAB2fiFQDhARYEAQAAAETIAAdngiEA4QEWBAEAAABFyAAHZ2IaAOEBDCABAAAARsgAB2ciHgDhAQwgAQAAAEfIAAdn4hUA4QEWBAEAAABIyAAHZ+IhAOEBDCABAAAAScgAB2diIADhASIAAQAAAErIAAZnQiAA4QEMIAEAAABLyAAHZ2IcAOEBFgQBAAAATMgAB2diHADhARYEAQAAAE3IAAdnYhwA4QEWBAEAAABOyAAHZ2IcAOEBFgQBAAAAT8gAB2eiGgDhARYEAQAAAFDIAAdnwhgA4QEWBAEAAABRyAAHZ4IcAOEBFgQBAAAAUsgAB2eiGgDhARYEAQAAAFPIAAdnYiQA4QEWBAEAAABUyAAHZ8IYAOEBFgQBAAAAVcgAB2cCJQDhARYEAQAAAFbIAAdnghwA4QEWBAEAAABXyAAHZ8IZAOEBFgQBAAAAWMgAB2fCFwDhARYEAQAAAFnIAAdnokUA4QEiBAEAAABayAAGZ8IYAOEBDCABAAAAW8gAB2fCGQDhARYEAQAAAFzIAAdnAhkA4QEMIAEAAABdyAAHZ8IZAOEBFgQBAAAAXsgAB2eCTADhAQwgAQAAAF/IAAdngikA4QEMIAEAAABgyAAHZyIYAOEBMCABAAAAYcgAFmeiYQDhARYEAQAAAGLIAAdnwhgA4QEWBAEAAABjyAAHZ+IZAOEBFgQBAAAAZMgAB2eCIQDhARYEAQAAAGXIAAdn4hUA4QEWBAEAAABmyAAHZ0IgAOEBDCABAAAAZ8gAB2ciGgDhARYEAQAAAGjIAAdnIh4A4QEMIAEAAABpyAAHZ8IYAOEBFgQBAAAAasgAB2eiGgDhASIEAQAAAGvIAAZn4pkA4QEMIAEAAABsyAAHZ2IbAOEBHAwBAAAAbcgAB2fCGADhAQwgAQAAAG7IAAdnApUA4QEWBAEAAABvyAAHZyIeAOEBDCABAAAAcMgAB2fCGADhARYEAQAAAHHIAAdngiEA4QEWBAEAAAByyAAHZ6IpAOEBFgQBAAAAc8gAB2eCIQDhARYEAQAAAHTIAAdnYh4A4QEWBAEAAAB1yAAHZ0I4AOEBFgQBAAAAdsgAB2dC2gDhARYEAQAAAHfIAAdnwh4A4QEWBAEAAAB4yAAHZyIeAOEBDCABAAAAecgAB2cCGQDhAQwgAQAAAHrIAAdnwhcA4QEWBAEAAAB7yAAHZ4IhAOEBFgQBAAAAfMgAB2eiGgDhARYEAQAAAH3IAAdnYjcA4QEWBAEAAAB+yAAHZ0I4AOEBFgQBAAAAf8gAB2fCGQDhARYEAQAAAIDIAAdnwhkA4QEWBAEAAACByAAHZ2IfAOEBFgQBAAAAgsgAB2diHwDhARYEAQAAAIPIAAdn4hUA4QEWBAEAAACEyAAHZ8IXAOEBFgQBAAAAhcgAB2diHADhARYEAQAAAIbIAAdnAjQA4QEWBAEAAACHyAAHZ2IcAOEBFgQBAAAAiMgAB2fCVwDhARYEAQAAAInIAAdnYi4A4QEWBAEAAACKyAAHZ2IiAOEBFgQBAAAAi8gAB2fCGQDhARYEAQAAAIzIAAdnwjwA4QEWBAEAAACNyAAHZ4IcAOEBFgQBAAAAjsgAB2fCQgDhARYEAQAAAI/IAAdngiEA4QEWBAEAAACQyAAHZyKBAOEBFgQBAAAAkcgAB2ciHgDhAQwgAQAAAJLIAAdnwhgA4QEWBAEAAACTyAAHZ6IaAOEBFgQBAAAAlMgAB2diHADhARYEAQAAAJXIAAdnoikA4QEWBAEAAACWyAAHZ8IZAOEBFgQBAAAAl8gAB2fCFwDhARYEAQAAAJjIAAdngicA4QEWBAEAAACZyAAHZ6IwAOEBFgQBAAAAmsgAB2fiGQDhARYEAQAAAJvIAAdnIjAA4QEWBAEAAACcyAAHZ8IZAOEBFgQBAAAAncgAB2ciHgDhAQwgAQAAAJ7IAAdn4hUA4QEWBAEAAACfyAAHZwIZAOEBDCABAAAAoMgAB2eCIQDhARYEAQAAAKHIAAdnYi4A4QEWBAEAAACiyAAHZ4InAOEBFgQBAAAAo8gAB2eiMADhARYEAQAAAKTIAAdnwh4A4QEWBAEAAAClyAAHZ4JDAOEBFgQBAAAApsgAB2dCJQDhARYEAQAAAKfIAAdngk8A4QEWBAEAAACoyAAHZ8KAAOEBFgQBAAAAqcgAB2eCHADhARYEAQAAAKrIAAdnwhoA4QEcDAEAAACryAAHZ4I9AOEBFgQBAAAArMgAB2ciGgDhARYEAQAAAK3IAAdnQiQA4QEWBAEAAACuyAAHZ2IiAOEBFgQBAAAAr8gAB2eCFwDhARYEAQAAALDIAAdn4hUA4QEWBAEAAACxyAAHZyIaAOEBFgQBAAAAssgAB2eiKQDhARYEAQAAALPIAAdnohoA4QEWBAEAAAC0yAAHZ6KKAOEBFgQBAAAAtcgAB2eCHADhARYEAQAAALbIAAdnIhoA4QEWBAEAAAC3yAAHZ8IXAOEBFgQBAAAAuMgAB2fiKQDhAQwgAQAAALnIAAdnwh4A4QEiAAEAAAC6yAAGZwIlAOEBFgQBAAAAu8gAB2fCPADhARYEAQAAALzIAAdnoikA4QEWBAEAAAC9yAAHZ2IiAOEBFgQBAAAAvsgAB2cikgDhARYEAQAAAL/IAAdnYi4A4QEWBAEAAADAyAAHZ0I4AOEBFgQBAAAAwcgAB2fiFQDhARYEAQAAAMLIAAdnghwA4QEWBAEAAADDyAAHZ4IhAOEBFgQBAAAAxMgAB2dCJADhARYEAQAAAMXIAAdngiEA4QEWBAEAAADGyAAHZ+I3AOEBFgQBAAAAx8gAB2eCIQDhARYEAQAAAMjIAAdngiEA4QEWBAEAAADJyAAHZ6IpAOEBFgQBAAAAysgAB2ciHgDhAQwgAQAAAMvIAAdnYh4A4QEWBAEAAADMyAAHZyIeAOEBDCABAAAAzcgAB2fiFQDhARYEAQAAAM7IAAdnwhcA4QEWBAEAAADPyAAHZ6IpAOEBFgQBAAAA0MgAB2cCfQDhARYEAQAAANHIAAdnIjQA4QEWBAEAAADSyAAHZyIaAOEBFgQBAAAA08gAB2ciKADhASIAAQAAANTIAAZnYh4A4QEMIAEAAADVyAAHZwIZAOEBDCABAAAA1sgAB2eCFwDhARYEAQAAANfIAAdnwoUA4QEiAAEAAADYyAAGZyItAOEBDCABAAAA2cgAB2eCvADhASIAAQAAANrIAAZnYiQA4QEWBAEAAADbyAAHZ8IYAOEBDCABAAAA3MgAB2ciHgDhAQwgAQAAAN3IAAdn4jcA4QEWBAEAAADeyAAHZwJHAOEBDCABAAAA38gAB2fCFwDhARYEAQAAAODIAAdnIhoA4QEWBAEAAADhyAAHZ4IcAOEBFgQBAAAA4sgAB2fiNADhARpAAQAAAOPIAAdngicA4QEWBAEAAADkyAAHZ4InAOEBIAABAAAA48gAAmfiFQDhARpAAQAAAOPIAAVnYhwA4QEWBAEAAADnyAAHZwI0AOEBFgQBAAAA6MgAB2eCHADhARYEAQAAAOnIAAdnYhwA4QEWBAEAAADqyAAHZ2IeAOEBFgQBAAAA68gAB2dCOADhARYEAQAAAOzIAAdnAhkA4QEWBAEAAADtyAAHZ4IhAOEBFgQBAAAA7sgAB2fCFwDhARYEAQAAAO/IAAdnYrIA4QEiBAEAAADwyAAGZ4IhAOEBFgQBAAAA8cgAB2eCIQDhARYEAQAAAPLIAAdnAhkA4QEMIAEAAADzyAAHZ2IiAOEBFgQBAAAA9MgAB2dCOADhARYEAQAAAPXIAAdngiEA4QEWBAEAAAD2yAAHZwIlAOEBFgQBAAAA98gAB2fCGADhARYEAQAAAPjIAAdnohoA4QEWBAEAAAD5yAAHZ2IgAOEBFgQBAAAA+sgAB2eCIQDhARYEAQAAAPvIAAdnosoA4QEWBAEAAAD8yAAHZ8IXAOEBFgQBAAAA/cgAB2ciJgDhAQwgAQAAAP7IAAdnghwA4QEWBAEAAAD/yAAHZ+IVAOEBFgQBAAAAAMkAB2fCFwDhARYEAQAAAAHJAAdn4hUA4QEWBAEAAAACyQAHZ4IhAOEBFgQBAAAAA8kAB2fCHgDhAQwgAQAAAATJAAdnwhkA4QEWBAEAAAAFyQAHZ4IhAOEBFgQBAAAABskAB2fCFwDhARYEAQAAAAfJAAdngiEA4QEWBAEAAAAIyQAHZ8IYAOEBIgQBAAAACckABmeiGgDhARYEAQAAAArJAAdnwhgA4QEWBAEAAAALyQAHZ2IcAOEBFgQBAAAADMkAB2dCwQDhARYEAQAAAA3JAAdnIh4A4QEMIAEAAAAOyQAHZ2IeAOEBFgQBAAAAD8kAB2diHgDhARYEAQAAABDJAAdngiEA4QEWBAEAAAARyQAHZ4IXAOEBFgQBAAAAEskAB2fCGQDhARYEAQAAABPJAAdnQjgA4QEWBAEAAAAUyQAHZ8IZAOEBFgQBAAAAFckAB2fCGQDhARYEAQAAABbJAAdnAi0A4QEWBAEAAAAXyQAHZ8JAAOEBFgQBAAAAGMkAB2diHgDhARYEAQAAABnJAAdnQh0A4QEWBAEAAAAayQAHZ8IeAOEBFgQBAAAAG8kAB2fiGQDhARYEAQAAABzJAAdnArwA4QEiIAEAAAAdyQAGZ4IcAOEBFgQBAAAAHskAB2dCIADhAQwgAQAAAB/JAAdngiEA4QEWBAEAAAAgyQAHZyIwAOEBFgQBAAAAIckAB2diHgDhARYEAQAAACLJAAdngoQB4QEWBAEAAAAjyQAHZ2LBAOEBFgQBAAAAJMkAB2cCRgDhARYEAQAAACXJAAdngkwA4QEMIAEAAAAmyQAHZ6IaAOEBFgQBAAAAJ8kAB2fiXwDhARYEAQAAACjJAAdnohoA4QEWBAEAAAApyQAHZ+IVAOEBFgQBAAAAKskAB2fCewDhARYEAQAAACvJAAdnwhoA4QEcDAEAAAAsyQAHZ4IcAOEBFgQBAAAALckAB2cCIwDhARYEAQAAAC7JAAdn4h4A4QEMIAEAAAAvyQAHZyIuAOEBDCABAAAAMMkAB2eCLwDhASIAAQAAADHJAAZnQlcA4QEWBAEAAAAyyQAHZ6KUAOEBMAQBAAAAM8kABmdCJADhARYEAQAAADTJAAdngiEA4QEWBAEAAAA1yQAHZ8IZAOEBFgQBAAAANskAB2fCGQDhARYEAQAAADfJAAdn4pkA4QEMIAEAAAA4yQAHZ4IhAOEBFgQBAAAAOckAB2eCHADhARYEAQAAADrJAAdnIrIA4QEWBAEAAAA7yQAHZ4I0AOEBFgQBAAAAPMkAB2ciGgDhARYEAQAAAD3JAAdnYhwA4QEWBAEAAAA+yQAHZyIaAOEBFgQBAAAAP8kAB2fCGQDhARYEAQAAAEDJAAdnghwA4QEWBAEAAABByQAHZyI8AOEBFgQBAAAAQskAB2fiFQDhARYEAQAAAEPJAAdnohoA4QEWBAEAAABEyQAHZ8IiAOEBFgQBAAAARckAB2eCXQDhARYEAQAAAEbJAAdnwhcA4QEWBAEAAABHyQAHZ8IZAOEBFgQBAAAASMkAB2fCFwDhARYEAQAAAEnJAAdnwhkA4QEWBAEAAABKyQAHZwIlAOEBDCABAAAAS8kAB2fCGADhARYEAQAAAEzJAAdnQjkA4QEWBAEAAABNyQAHZ0IgAOEBDCABAAAATskAB2cCGQDhARYEAQAAAE/JAAdngicA4QEWBAEAAABQyQAHZ6IwAOEBFgQBAAAAUckAB2ciRQDhARYEAQAAAFLJAAdnYhwA4QEWBAEAAABTyQAHZ+LcAOEBFgQBAAAAVMkAB2fCGgDhARwMAQAAAFXJAAdnwhkA4QEWBAEAAABWyQAHZyIeAOEBDCABAAAAV8kAB2fCGADhARYEAQAAAFjJAAdnwiAA4QEcDAEAAABZyQAHZ8I3AOEBFgQBAAAAWskAB2ciMADhARYEAQAAAFvJAAdnQjgA4QEWBAEAAABcyQAHZ8IZAOEBFgQBAAAAXckAB2fCGQDhARYEAQAAAF7JAAdnYiIA4QEWBAEAAABfyQAHZ8IZAOEBFgQBAAAAYMkAB2dCFADhARYEAQAAAGHJAAdngkwA4QEMIAEAAABiyQAHZ0LJAOEBDCABAAAAY8kABWfiPwDhAQwgAQAAAGTJAAdnAlgA4QEMIAEAAABkyQAFZ6J7AOEBDCABAAAAZskAB2eiyQDhAQwgAQAAAGfJAAdnovQA4QEMIAEAAABoyQAHZ8JOAOEBDCABAAAAackAB2eitQDhAQwgAQAAAGrJAAdnwh8A4QEMIAEAAABryQAHZ8I0AOEBHgABAAAAbMkABmfCgQDhAQwgAQAAAG3JAAdmQmQA+wE0HAEAAABvyRAFZ0JkAOEBNBwBAAAARscARWeiXwDZAQoUAQAAAHDJABVnYiQA4QEMIAEAAABxyQAHZ+I3AOEBIgABAAAAcskABmfiHgDhAQwgAQAAAHPJAAdngiMB4QEMIAEAAAB0yQAHZ2IkAOEBDCABAAAAdckAB2ciGADhAQwgAQAAAHbJAAdnIhgA4QEMIAEAAAB3yQAHZyKCAOEBDCABAAAAeMkAB2di9gDhAQwgAQAAAHnJAAdnopUA4QEMIAEAAAB6yQAHZyKCAOEBDCABAAAAe8kAB2cCIgDhAQwgAQAAAHzJAAdn4jUA4QEMIAEAAAB9yQAHZ0I5AOEBDCABAAAAfskAB2fCIgDhASIEAQAAAH/JAAZn4iIA4QEMIAEAAACAyQAHZwIZAOEBDCABAAAAiMkAR2eiJwDhARpAAQAAAInJAEdngicA4QEaQAEAAACKyQBFZyIrAOEBDCABAAAAhMkAB2dCKwDhARpAAQAAAIzJAEVn4hUA4QEaQAEAAACNyQBFZ0IgAOEBDCABAAAAh8kAB2cCGQDhAQwgAQAAAIjJAAdngjAA4QEaQAEAAACJyQAHZ6IwAOEBGkABAAAAickABWeiRgDhAQwgAQAAAIvJAAdnwjAA4QEaQAEAAACJyQAFZ+IVAOEBGkABAAAAickABWfCGgDhARwMAQAAAI7JAAdnwkIA4QEWBAEAAACPyQAHZ4KmAOEBDCABAAAAkMkAB2eCIQDhARYEAQAAAJHJAAdnYmEA4QEMIAEAAACSyQAHZ4IhAOEBFgQBAAAAk8kAB2eiHgDhAQwgAQAAAJTJAAdnAloA4QEMIAEAAAB+yQAFZ2IzAOEBIgABAAAAlskABmfCQgDhAQwgAQAAAJfJAAdmIk4A5wEYMAEAAACYyRAFZyJOAOEBMAwBAAAAmckABmciJQDhARYEAQAAAJrJAAdnYiYA4QEwDAEAAACbyQAGZ+IeAOEBDCABAAAAnMkAB2ciegDhARYEAQAAAJ3JAAdnIpIA4QEWBAEAAACeyQAHZwIjAOEBMAABAAAAn8kABmfCKADhARwMAQAAAKDJAAdngkMA4QEiAAEAAAChyQAGZyJ6AOEBMAABAAAAoskABmYikgDnARgwAQAAAKPJEAVnIpIA4QEWBAEAAACkyQAHZ2IqAOEBFgQBAAAApckAB2ciMgDhARYEAQAAAKbJAAdnYhsA4QEMIAEAAACnyQAHZwJuAOEBDCABAAAAqMkAB2fCQgDhAQwgAQAAAKnJAAdnIjIA4QEWBAEAAACqyQAHZwIjAOEBMAwBAAAAq8kABmcCMgDhARwMAQAAAKzJAAdnwkoA4QEsDAEAAACtyQAGZ+IeAOEBDCABAAAArskAB2ciegDhARYEAQAAAK/JAAdnIpIA4QEWBAEAAACwyQAHZwIjAOEBMAABAAAAsckABmfCKADhARwMAQAAALLJAAdnYiQA4QEMIAEAAACzyQAHZwK3AeEBDCABAAAAtMkAB2cCPgDhAQwgAQAAALXJAAdmolcA5wEYMAEAAAC2yRAFZ6JXAOEBGDABAAAAtskAB2dCHQDhARYEAQAAALjJAAdownwBCgINIAEAAAC7ySAFZuJ8AQ8CDSABAAAAu8kQBWfifAERAg0gAQAAALvJAAVnwjQA4QEeIAEAAAC8yQAGZyKiAOEBDCABAAAAvckAB2cCbgDhAQwgAQAAAL7JAAdnolIA4QEMIAEAAAC/yQAHZ2IyAOEBDCABAAAAwMkAB2eCJwDhARYEAQAAAMHJAAdngiEA4QEeBAEAAADCyQAGZyJKAeEBDCABAAAAw8kAB2diGwDhARYEAQAAAMTJAAdn4k4A4QEMIAEAAADFyQAHZ0IrAOEBDCABAAAAvMkABWcimwDhAQwgAQAAAMfJAAdn4vQA4QEWBAEAAADIyQAHZ8LLAOEBHgABAAAAyckABmeCQwDhAQwgAQAAAMrJAAdnwiMA4QEeAAEAAADJyQAEZ+IVAOEBGkABAAAAyckABWfCVgDhARYEAQAAANrJAAVnwkoA4QEWBAEAAADayQAFZ2IbAOEBDCABAAAAz8kAB2fiFQDhARpAAQAAALzJAAVnohoA4QEWBAEAAADRyQAHZ6IaAOEBFgQBAAAA0skAB2dCSQDhAQwgAQAAANPJAAdngkgA4QEMIAEAAADUyQAHZ+JEAOEBFgQBAAAA1ckAB2fCGgDhARwMAQAAANbJAAdnIrcB4QEMIAEAAADXyQAHZ0KDAOEBDCABAAAA2MkAB2ciWgDhAQwgAQAAANnJAAdn4ocA4QEWBAEAAADayQAHaKLiADICeigBAAAA3ckgBWZCtwEXAnooAUABAN3JEAVnIs0A2QF6KAEAAALdyQAXaIIEABADHAwBAAAA0BciDWaiBAAUAxwMAQAAAFgOEg1nogQAGAMcDAEAAADgBAINZ0K8AOEBDCABAAAAFMoABWdCIADhAQwgAQAAAOLJAAdnwhkA4QEiBAEAAADjyQAGZ4IiAOEBHAwBAAAA5MkAB2eiJwDhARpAAQAAAOXJAAdnQisA4QEaQAEAAADlyQAFZ4IwAOEBGkABAAAA58kAB2fCMADhARpAAQAAAOfJAAVnYiIA4QEMIAEAAADpyQAHZ4IXAOEBGkABAAAA6skAB2fiFQDhARpAAQAAAOrJAAVnAhkA4QEMIAEAAADsyQAHZyKhAOEBHiABAAAA7ckABmdiGQDhASBAAQAAAO3JAAJn4hUA4QEaQAEAAADtyQAFZyIvAOEBHiABAAAA8MkABmeiewDhAQwgAQAAAPHJAAdnIhkA4QEMIAEAAADyyQAHZ+IZAOEBIEABAAAA8MkAAmcCQAHhAQwgAQAAAPTJAAdngn8A4QEMIAEAAAD1yQAHZwIaAOEBHiABAAAA8MkABGciQQDhARYEAQAAAPfJAAdn4hUA4QGELAEAAAD4yQAWZ2IbAOEBDCABAAAA+ckAB2cCZADhAQwgAQAAAPrJAAdnwjEA4QEeIAEAAAD7yQAGZ0IgAOEBDCABAAAA/MkAB2fCGQDhARYEAQAAAP3JAAdnYhsA4QEMIAEAAAD+yQAHZ4IiAOEBHAwBAAAA/8kAB2dCOgDhASBAAQAAAPvJAAJnokAA4QEMIAEAAAABygAHZ2IoAOEBHiABAAAA+8kABGfiFQDhARpAAQAAAPvJAAVnwhkA4QEWBAEAAAAEygAHZwIZAOEBDCABAAAABcoAB2eCMQDhARpAAQAAAAjKAAVnIiAA4QEaQAEAAAAIygAFZ8I1AOEBGkABAAAACMoAB2fiFQDhARpAAQAAAAjKAAVn4hUA4QEaQAEAAADwyQAFZwIZAOEBDCABAAAAC8oAB2fCFwDhARYEAQAAAAzKAAdn4hgA4QEMIAEAAAALygAFZ+IxAOEBDCABAAAADsoAB2eCfgDhAQwgAQAAAA/KAAdnYhwA4QEWBAEAAAAQygAHZ6IqAOEBHAwBAAAAEcoAB2dCSADhAQwgAQAAABLKAAdnonIB4QEMIAEAAAATygAHZyI2AOEBDCABAAAAFMoABWgCowHeARwMAQAAANgXIg1mIqMB5wEcDAEAAABgDhINZyKjAeEBHAwBAAAA6AQCDWfiFQDhASQIAQAAABjKAAZoogYBHAMcDAEAAACgGyINZsIGASADHAwBAAAAKBISDWfCBgEkAxwMAQAAALAIAg1nokkB4QEMIAEAAAAcygAHZwJLAOEBDCABAAAAHcoAB2cCbwDhAQwgAQAAAB/KAAVn4jwA4QEMIAEAAAAfygAHZ+JDAOEBDCABAAAAIMoAB2fiQAHhAQwgAQAAACDKAAVnoiMA4QEaQAEAAAAiygAHZ2IZAOEBFgQBAAAAI8oAB2fCIwDhARpAAQAAACLKAAVn4hUA4QEgAAEAAAAiygACZ8IYAOEBDCABAAAAJsoAB2diHADhAQwgAQAAACfKAAdnYrcB2QEMIIEDAAAoygAHaOJRAQoCGTABAAAAK8ogBWYCUgEPAhkwAQAAACvKEAVnAlIBEQIZMIEDAAArygAFZ6J4AOEBDCABAAAALMoAB2cCAQHhAQwgAQAAACzKAAVnghcA4QEaQAEAAAAuygAHZwIZAOEBDCABAAAAL8oAB2ciuADhASIgAQAAADDKAAZnYlQA4QEMIAEAAAAxygAHZwIZAOEBDCABAAAAMsoAB2eiJwDhARpAAQAAADPKAAdnYiAA4QEMIAEAAAA0ygAHZ6I9AOEBDCABAAAANMoABWcCGQDhAQwgAQAAADbKAAdngjAA4QEaQAEAAAA3ygAHZyJeAOEBDCABAAAAOMoAB2dCaQDhAQwgAQAAADjKAAVnQnQA4QEMIAEAAAAwygAFZyJDAOEBDCABAAAAO8oAB2fiKQDhARgwgQMAADzKAAdnAm8A4QEMIAEAAAA9ygAHZ0JoAOEBDCABAAAAPcoABWfCMQDhAQwgAQAAAD/KAAdnghcA4QEMIAEAAABAygAHZ4I+AOEBDCABAAAAQcoAB2eifADhAQwgAQAAAELKAAdnghcA4QEMIAEAAABDygAHZ4I3AOEBDCABAAAARMoAB2dCKgDhAQwgAQAAAEXKAAdnYiQA4QEMIAEAAABGygAHZoK3ARcCHAwBQAEASMoQBWeCQAHZATIMAQAAAEjKABZnImMA4QEyDAEAAABJygAGZ2IYAOEBMgwBAAAASsoAFmeiJwDhARwMAQAAAEvKAAdnYhsA4QEMIAEAAABMygAHZ6K3AeEBDCABAAAATcoAB2fCtwHhAQwgAQAAAE7KAAdnYhwA4QEWBAEAAABPygAHZ6IqAOEBHAwBAAAAUMoAB2diGwDhAQwgAQAAAFHKAAdnIqYA4QEMIAEAAABSygAHaeK3AdkBDCABAAAAU8oAB2kCuAHZAQwgAQAAAFTKAAdqIrgB2QEMIAEAAABVygAHakK4AdkBDCABAAAAVsoAB2pC6ADhAQwgAQAAAFfKAAdqYrgB2QEMIAEAAABYygAHasJxAOEBDCABAAAAWcoAB2qCuAHZAQwgAQAAAFrKAAdqwv8A4QEMIAEAAABbygAHa2KLAdkBDCABAAAAXMoAB2viTADhAQwgAQAAAF3KAAdrorgB2QEMIAEAAABeygAHbMK4ATICGDABAAAAX8oQBWsCvADZARgwAQAAAF/KAAVr4rgB2QEMIAEAAABhygAHa6KAAdkBDCABAAAAYsoAB2sCuQHZAQwgAQAAAGPKAAdrIrkB4QEMIAEAAABkygAHbUK5AdIBeigBAAAA3ckQBW5iuQHVAXooAQAAAt3JAAVu4igA2QEWBAEAAABnygAHbkIaAOEBDCABAAAAaMoAB28iHgDhAQwgAQAAAGnKAAdvYigA4QEMIAEAAABpygAFb4K5AdkBDCABAAAAa8oAB2+ijgDhAQwgAQAAAGzKAAdvYhsA4QEMIAEAAABtygAHb8IZAOEBDCABAAAAbsoAB2+CIgDhARYEAQAAAG/KAAdvAr8A4QEWBAEAAABwygAHbwI1AOEBDCABAAAAccoABW/CWQDhAQwgAQAAAHHKAAVvQjgA4QEWBAEAAABzygAHb0KQAOEBDCABAAAAdcoABW/iNADhAQwgAQAAAHXKAAdvYuQA4QEMIAEAAAB2ygAHbwIAAeEBDCABAAAAdsoABW+CPQDhARYEAQAAAHjKAAdvIhkA4QEMIAEAAAB5ygAHb4IXAOEBIAABAAAAesoABm/iGQDhARYEAQAAAHvKAAdvAhoA4QEaQAEAAAB6ygAFb+IVAOEBGkABAAAAesoABW9CjgHhAQwgAQAAAIrKAAVvIm4A4QEMIAEAAAB/ygAHb6JVAOEBDCABAAAAgcoABW/iNADhAQwgAQAAAIHKAAdvIkgA4QEMIAEAAACCygAHb0ItAOEBDCABAAAAg8oAB2+CwADhAQwgAQAAAITKAAdvojsA4QEMIAEAAACFygAHb8IfAOEBDCABAAAAhsoAB28iHADhAQwgAQAAAIfKAAdvwh8A4QEMIAEAAACIygAHb+IfAOEBDCABAAAAiMoABW/iPQDhAQwgAQAAAIrKAAdvwmQA4QEiBAEAAACLygAGb2IbAOEBDCABAAAAjMoAB2+CJgDhAR4gAQAAAI3KAAZvwiYA4QEMIAEAAACOygAHb+ImAOEBGkABAAAAjcoABW/iFQDhARpAAQAAAI3KAAVvIqAA4QEMIAEAAACRygAHb+IhAOEBDCABAAAAksoAB29iIADhAQwgAQAAAJPKAAdvQiAA4QEMIAEAAACUygAHb0JXAOEBDCABAAAAlcoAB29CrwDhAQwgAQAAAJbKAAdvoikA4QEWBAEAAACXygAHb+KyAOEBDCABAAAAmMoAB28iHgDhAQwgAQAAAJnKAAdv4oUA4QEeAAEAAACaygAGb8KaAOEBDCABAAAAmsoABW/iFQDhARpAAQAAAJrKAAVvArUA4QEiAAEAAACdygAGb+KcAOEBDCABAAAAnsoAB28CGQDhAQwgAQAAAJ/KAAdvgjEA4QEgQAEAAACgygACb8JWAOEBDCABAAAAocoAB28iIADhARpAAQAAAKPKAAVvwjUA4QEaQAEAAACjygAHb+IVAOEBGkABAAAAo8oABW+iiADhAQwgAQAAAKXKAAdvIlIA4QEMIAEAAAClygAFb0IgAOEBDCABAAAAp8oAB28CtgDhASAEAQAAAKjKAAZvQjsA4QEMIAEAAACpygAHcOIpAOcBDCABAAAAq8oQBW/iKQDhAR4gAQAAAKvKAAZvYh8A4QEaQAEAAACrygAFb+IVAOEBHkABAAAAq8oAAm9iGwDhARYEAQAAAK7KAAdvghcA4QEMIAEAAACvygAHbwIqAOEBDCABAAAAq8oAB2+iIwDhAQwgAQAAALHKAAdvwiMA4QEMIAEAAACxygAFb+IVAOEBFgQBAAAAs8oAB2+CIgDhARwMAQAAALTKAAdvYhsA4QEMIAEAAAC1ygAHb2IRAeEBDCABAAAAtsoAB29iFADhAQwgAQAAALfKAAdvwhkA4QEWBAEAAAC4ygAHbyIbAOEBDCABAAAAucoAB29CJADhASIgAQAAALrKAAZvghcA4QEgAAEAAAC7ygAGbwIZAOEBDCABAAAAvMoAB29iGgDhAQwgAQAAAL3KAAdvIjQA4QEWBAEAAAC+ygAHb4IcAOEBFgQBAAAAv8oAB2/CGgDhARwMAQAAAMDKAAdvghwA4QEWBAEAAADBygAHb2IgAOEBDCABAAAAwsoAB29CSQDhAQwgAQAAAMPKAAdvQiAA4QEMIAEAAADEygAHb2IcAOEBFgQBAAAAxcoAB29iGwDhAQwgAQAAAMbKAAdvQh0A4QEWBAEAAADHygAHb0JoAOEBDCABAAAAyMoAB2+CUQDhAQwgAQAAALfKAAVvYhwA4QEWBAEAAADKygAHb0ItAOEBDCABAAAAy8oAB29iIADhAQwgAQAAAMzKAAdvYiAA4QEMIAEAAADNygAHb0JJAOEBDCABAAAAzsoAB29iNwDhAQwgAQAAAM/KAAdvArUA4QEMIAEAAADQygAHb6K5AdkBDCABAAAA0coAB2/CzgDhAQwgAQAAANLKAAdvAoQA4QEMIAEAAADTygAHbwJGAOEBDCABAAAA1MoAB2/iQAHhAQwgAQAAANHKAAVvgmAA4QEMIAEAAADWygAHb6IaAOEBFgQBAAAA18oAB2+idQDhAQwgAQAAANjKAAdvAtEA4QEMIAEAAADZygAHb2IzAOEBHiABAAAA2soABm+CJwDhASBAAQAAANrKAAJv4hUA4QEMIAEAAADcygAHb+JMAOEBDCABAAAA3coAB28iKwDhAQwgAQAAAN7KAAdvAkYA4QEMIAEAAADfygAHb8JCAOEBDCABAAAA4MoAB29CKwDhAQwgAQAAANrKAAVv4hUA4QEeIAEAAADaygACb+IVAOEBDCABAAAA48oAB29CJADhARYEAQAAAOTKAAdvIh4A4QEMIAEAAADlygAHb2IeAOEBFgQBAAAA5soAB2/iIADhAR5AAQAAAOfKAAZvYh8A4QEaQAEAAADnygAFbwIhAOEBHgABAAAA58oABG/iFQDhARpAAQAAAOfKAAVvIrEA2QEeAAEAAADrygAGb4IXAOEBGkABAAAA7MoAB28CGQDhAQwgAQAAAO3KAAdvoqAA4QEWBAEAAADuygAHbyIZAOEBDCABAAAA78oAB2+CTADhAQwgAQAAAPDKAAdv4kIA4QEMIAEAAADxygAHbyKhAOEBDCABAAAA8soAB2/CKgDhAQwgAQAAAPPKAAdvQlEA4QEMIAEAAAD0ygAHbyJXAOEBFgQBAAAA9coAB2+inQHhAQwgAQAAAPbKAAdvAiIA4QEMIAEAAAD3ygAHb8IYAOEBIgABAAAA+MoABm8CMADhAQwgAQAAAPjKAAVvwjUA4QEaQAEAAAD6ygAHb8IYAOEBDCABAAAA+8oAB28CGQDhAQwgAQAAAPzKAAdvwhcA4QEWBAEAAAD9ygAHb8IaAOEBHAwBAAAA/soAB29iIgDhARYEAQAAAP/KAAdvYiAA4QEMIAEAAAAAywAHb2IcAOEBFgQBAAAAAcsAB29iGwDhAQwgAQAAAALLAAdvgiEA4QEWBAEAAAADywAHb2IbAOEBDCABAAAABMsAB2/izADhASIgAQAAAOvKAAJvgiYA4QEMIAEAAAAGywAHb+JpAOEBDCABAAAAB8sAB2/iGQDhARpAAQAAAOvKAAVv4h4A4QEMIAEAAAAJywAHb8JWAOEBFgQBAAAADssABW/CSgDhARYEAQAAAA7LAAVv4lYA4QEcDAEAAAAMywAHb+IVAOEBGkABAAAA68oABW+CrADhARYEAQAAAA7LAAdvwrkB4QEMIAEAAAAPywAHbyKmAOEBGkABAAAAEMsAB28CWADhARpAAQAAABDLAAVv4hUA4QEaQAEAAAAQywAFceK5AeEBDCABAAAAE8sAB3ECugHhAQwgAQAAABTLAAdyAm4A4QEMIAEAAAAVywAHcsIZAOEBDCABAAAAFssAB3JCagDhAQwgAQAAABfLAAdy4i4A4QEMIAEAAAAYywAHcgIiAOEBDCABAAAAGcsAB3KidQHhAQwgAQAAABrLAAdywqIA4QEMIAEAAAAbywAHciK6AeEBDCABAAAAHMsAB3LCzADhAQwgAQAAAB3LAAdyYtYA4QEMIAEAAAAeywAHcmJSAOEBDCABAAAAH8sABXICAAHhAQwgAQAAAB/LAAVyojUA4QEMIAEAAAAhywAHcmLdAOEBDCABAAAAIssAB3JCugHhAQwgAQAAACPLAAdygpgA4QEMIAEAAAAkywAHckIwAOEBDCABAAAAJcsAB3KCLADhAQwgAQAAACbLAAdygmwA4QEiAAEAAAAnywAGcoIcAOEBFgQBAAAAKMsAB3JiugHhAQwgAQAAACnLAAdyQnEA4QEMIAEAAAAqywAHcuJ1AOEBDCABAAAAK8sAB3JiSwDhAQwgAQAAACzLAAdy4jUA4QEMIAEAAAAtywAHc4K6AdIBGDABAAAALssQBXSiugHVARgwAQAAAC7LAAV1YlUAoAN6KAEAAADdyRAFdoJVAKgDeigBAAAC3ckABXfCugEEBBwMAQAAADTLIAV3Ak8ACAQcDAEAAAA0yxAFeAJPAAwEHAwBAAAANMsABXnCFADNARtAAQAAADXLAAV54roBzQEhAAEAAAA2ywAEeiKSAdkBDCABAAAAN8sAB3qiIwDhARYEAQAAADjLAAd6wvgA2QEMIAEAAAA5ywAHekJYAOEBFgQBAAAAOssAB3qCzwDhAQwgAQAAADnLAAV6QtcA4QEMIAEAAAA8ywAHeuLEANkBDCABAAAAPcsAB3qiIwDhAQwgAQAAAD7LAAd6wiMA4QEMIAEAAAA+ywAFegJPAOEBDCABAAAAQMsAB3rCQgDhAQwgAQAAAEHLAAd6Ii0A4QEMIAEAAABCywAHesJCAOEBDCABAAAAQ8sAB3oCuwHZAQwgAQAAAETLAAd6QisA4QEMIAEAAABGywAFeiIcAOEBDCABAAAARssAB3piJgDhAQwgAQAAAEfLAAd6okwA2QEMIAEAAABIywAHeuJVAOEBDCABAAAAScsAB3qCWADhARYEAQAAAErLAAd6ok4A4QEMIAEAAABLywAHekJrAOEBDCABAAAATMsAB3qCiQDhAQwgAQAAAEjLAAV7oucA4QEMIAEAAABOywAHeyIbAOEBDCABAAAAT8sAB3uCFwDhARYEAQAAAFDLAAd7oiQA4QEcDAEAAABRywAHeyK7AeEBDCABAAAAUssAB3vCNgDhAQwgAQAAAFPLAAd7wqUA4QEMIAEAAABUywAHeyIeAOEBDCABAAAAVcsAB3vCGADhARYEAQAAAFbLAAd7wiAA4QEcDAEAAABXywAHeyIeAOEBDCABAAAAWMsAB3viFgHhAQwgAQAAAFzLAAV7AhkA4QEMIAEAAABaywAHewKSAOEBDCABAAAAW8sAB3viNADhAQwgAQAAAFzLAAV7gnYA4QEWBAEAAABdywAHe0IgAOEBDCABAAAAXssAB3uCGwDhARpAAQAAAF/LAAd74hUA4QEaQAEAAABfywAFewJjAOEBGkABAAAAX8sABXuCFwDhARpAAQAAAGLLAAd74hUA4QEaQAEAAABiywAFewIZAOEBDCABAAAAZMsAB3tCuwHZAQwgAQAAAGXLAAd74iEA4QEMIAEAAABmywAHeyJqAOEBDCABAAAAZ8sAB3siIADhAQwgAQAAAGnLAAV7YiIA4QEMIAEAAABpywAHe6IgAOEBHiABAAAAassABnviGQDhARpAAQAAAGrLAAV7AhkA4QEMIAEAAABsywAHe4IxAOEBGkABAAAAb8sABXsiIADhARpAAQAAAG/LAAV7wjUA4QEaQAEAAABvywAHe+IVAOEBGkABAAAAb8sABXviFQDhARpAAQAAAGrLAAV7AhkA4QEMIAEAAAByywAHe8IZAOEBFgQBAAAAc8sAB3tiGwDhAQwgAQAAAHTLAAd7giIA4QEcDAEAAAB1ywAHe+IYAOEBDCABAAAAcssABXuCIQDhASIgAQAAAHfLAAZ7oiQA4QEcDAEAAAB4ywAHe2IbAOEBDCABAAAAecsAB3uCFgDhAQwgAQAAAHfLAAV7QiAA4QEMIAEAAAB7ywAHe2IaAOEBDCABAAAAfMsAB3sCHQDhAR4gAQAAAGrLAAR7ghcA4QEaQAEAAAB+ywAHewIZAOEBDCABAAAAf8sAB3uCFwDhARYEAQAAAIDLAAd7ghcA4QEiAAEAAACBywAGe2IbAOEBDCABAAAAgssAB3uCFwDhASAAAQAAAIPLAAZ74hkA4QEgQAEAAACDywACewIaAOEBGkABAAAAg8sABXviZwDhAQwgAQAAAIvLAAV74hUA4QEaQAEAAACDywAFewIZAOEBDCABAAAAiMsAB3vCFwDhARYEAQAAAInLAAd74hgA4QEMIAEAAACIywAFe6LnAOEBDCABAAAAi8sAB3viVgDhARwMAQAAAIzLAAd7oikA4QEWBAEAAACNywAHe6KzAOEBGkABAAAAjssAB3uiJgDhASBAAQAAAI7LAAJ7wiYA4QEMIAEAAACQywAHe+ImAOEBGkABAAAAjssABXviFQDhASAAAQAAAI7LAAJ7YjEA4QEcDAEAAACTywAHe2IbAOEBDCABAAAAlMsAB3sidADhASIAAQAAAJXLAAZ7oiQA4QEcDAEAAACWywAHe2IbAOEBDCABAAAAl8sAB3tCIADhAQwgAQAAAJjLAAd7whkA4QEWBAEAAACZywAHe4IXAOEBIAABAAAAmssABnviGQDhASAAAQAAAJrLAAJ7AhoA4QEaQAEAAACaywAFe+IVAOEBGkABAAAAmssABXsCGQDhAQwgAQAAAJ7LAAd7YhoA4QEMIAEAAACfywAHewIZAOEBDCABAAAAoMsAB3tiHADhARYEAQAAAKHLAAd7YhsA4QEMIAEAAACiywAHeyJQAOEBIgABAAAAo8sABntiGwDhAQwgAQAAAKTLAAd7Av4A4QEMIAEAAAClywAHe2IcAOEBFgQBAAAApssAB3uiKgDhARwMAQAAAKfLAAd7YhsA4QEMIAEAAACoywAHe4IXAOEBGkABAAAAqcsAB3tiuwHhAQwgAQAAAKrLAAd7YiAA4QEMIAEAAACrywAHe6JVAOEBDCABAAAArcsABXviNADhAQwgAQAAAK3LAAd7ghcA4QEWBAEAAACuywAHe2I2AOEBFgQBAAAAr8sAB3uiJADhARwMAQAAALDLAAd7QiAA4QEMIAEAAACxywAHe+IhAOEBDCABAAAAsssAB3tiIADhAQwgAQAAALPLAAd74iAA4QEgQAEAAAC0ywAGe2IfAOEBGkABAAAAtMsABXuiJADhARwMAQAAALbLAAd7YhsA4QEMIAEAAAC3ywAHewIhAOEBGkABAAAAtMsABXviFQDhARpAAQAAALTLAAV7QiAA4QEMIAEAAAC6ywAHe2IcAOEBFgQBAAAAu8sAB3uiKgDhARwMAQAAALzLAAd7YhsA4QEMIAEAAAC9ywAHewL+AOEBDCABAAAAvssAB3vCGQDhARYEAQAAAL/LAAd7giIA4QEcDAEAAADAywAHeyIeAOEBDCABAAAAwcsAB3tiHgDhARYEAQAAAMLLAAd7wiAA4QEcDAEAAADDywAHewIZAOEBDCABAAAAxMsAB3vCFwDhARYEAQAAAMXLAAd74hgA4QEMIAEAAADEywAFe6IpAOEBDCABAAAAx8sAB3vi5gDhARpAAQAAAMjLAAd7YikA4QEgQAEAAADIywACe4IpAOEBDCABAAAAyssAB3sCKgDhAQwgAQAAAMrLAAV7ghYA4QEaQAEAAADIywAFe+IVAOEBIAABAAAAyMsAAntiMQDhARwMAQAAAM7LAAd7YhsA4QEaQAEAAADPywAHe4InAOEBIAQBAAAAz8sAAntCKwDhARpAAQAAAM/LAAV74hUA4QEaQAEAAADPywAFewIZAOEBDCABAAAA08sAB3vCFwDhARYEAQAAANTLAAd7whoA4QEcDAEAAADVywAHe+IYAOEBDCABAAAA08sABXuCIQDhASIAAQAAANfLAAZ7oiQA4QEcDAEAAADYywAHe2IbAOEBDCABAAAA2csAB3tCIADhAQwgAQAAANrLAAd7Qh0A4QEMIAEAAADbywAHeyI6AOEBGkABAAAA3MsAB3siHgDhAQwgAQAAAN3LAAd7whgA4QEWBAEAAADeywAHe+IyAOEBFgQBAAAA38sAB3tiGwDhAQwgAQAAAODLAAd7In0A4QEMIAEAAADhywAHewJYAOEBDCABAAAA4csABXsiNADhARYEAQAAAOPLAAd7ghwA4QEWBAEAAADkywAHe0IdAOEBDCABAAAA5csAB3tCLQDhAQwgAQAAAObLAAd7IhsA4QEMIAEAAADnywAHeyIeAOEBDCABAAAA6MsAB3uCFwDhASAAAQAAAOnLAAZ7oiQA4QEcDAEAAADqywAHe4IXAOEBGkABAAAA68sAB3sCGQDhAQwgAQAAAOzLAAd7YhwA4QEWBAEAAADtywAHe6IqAOEBHAwBAAAA7ssAB3tiGwDhAQwgAQAAAO/LAAd74hwA4QEaQAEAAADwywAHe+IZAOEBIEABAAAA8MsAAnviHgDhAQwgAQAAAPLLAAd74hUA4QEaQAEAAADwywAFewIZAOEBDCABAAAA9MsAB3viIQDhAQwgAQAAAPXLAAd7YiAA4QEMIAEAAAD2ywAHe4IhAOEBFgQBAAAA98sAB3uiJADhARwMAQAAAPjLAAd7YhoA4QEMIAEAAAD5ywAHewIdAOEBGkABAAAA8MsABXvCGADhAQwgAQAAAPvLAAd7QioA4QEaQAEAAAD8ywAHe8IZAOEBFgQBAAAA/csAB3uiGADhARpAAQAAAPzLAAV74hUA4QEaQAEAAAD8ywAFe8IYAOEBDCABAAAAAMwAB3uCKgDhARpAAQAAAPzLAAV7AhkA4QEMIAEAAAACzAAHe8JkAOEBGkABAAAAA8wAB3uCIQDhARYEAQAAAATMAAd7oiQA4QEcDAEAAAAFzAAHe2IbAOEBDCABAAAABswAB3siJQDhARpAAQAAAAfMAAd7YiUA4QEaQAEAAAAHzAAFe4IXAOEBGkABAAAACcwAB3sCGgDhARpAAQAAAAnMAAV7YhoA4QEMIAEAAAALzAAHe8IqAOEBFgQBAAAADMwAB3uiJADhARwMAQAAAA3MAAd7YhsA4QEMIAEAAAAOzAAHe2IzAOEBDCABAAAAD8wAB3uCFwDhARpAAQAAABDMAAd7AhoA4QEaQAEAAAAQzAAFe+IVAOEBIAABAAAAEMwAAnsCGQDhAQwgAQAAABPMAAd7YhwA4QEWBAEAAAAUzAAHe6IqAOEBHAwBAAAAFcwAB3tiGwDhAQwgAQAAABbMAAd8IpgB2QEMIAEAAAAXzAAHfIJRAOEBDCABAAAAGMwAB3wCGQDhAR4gAQAAABnMAAZ8whcA4QEWBAEAAAAazAAHfMIaAOEBHAwBAAAAG8wAB3ziFQDhARpAAQAAABnMAAV84hgA4QEMIAEAAAAZzAAHfMIYAOEBDCABAAAAHswAB3zCHgDhARYEAQAAAB/MAAd8oicA4QEaQAEAAAAgzAAHfIIwAOEBGkABAAAAIcwAB3yiuADhAQwgAQAAACTMAAV8wh4A4QEWBAEAAAAjzAAHfALkAOEBDCABAAAAJMwAB3xiSwDhAQwgAQAAACXMAAd8wmQA4QEaQAEAAAAmzAAHfEIlAOEBFgQBAAAAJ8wAB3ziHwDhARpAAQAAACbMAAV84hUA4QEaQAEAAAAmzAAFfAIZAOEBDCABAAAAKswAB3yCIQDhASIAAQAAACvMAAZ84kUA4QEuAAEAAAAszAAGfAIZAOEBDCABAAAALcwAB3ziIQDhAQwgAQAAAC7MAAd8YiAA4QEMIAEAAAAvzAAHfEIeAOEBDCABAAAAMMwAB3xiHgDhAQwgAQAAADHMAAd8AjAA4QEMIAEAAAAxzAAFfAIZAOEBDCABAAAAM8wAB3zCFwDhARYEAQAAADTMAAd84hgA4QEMIAEAAAAzzAAFfIIxAOEBIEABAAAANswAAnzCVgDhAQwgAQAAADfMAAd8IiAA4QEaQAEAAAA5zAAFfKIKAeEBGkABAAAAOcwAB3ziFQDhASBAAQAAADnMAAB8YgAB4QEaQAEAAAA7zAAHfOIVAOEBGkABAAAAO8wABXxiHwDhARpAAQAAADvMAAV8Ih4A4QEMIAEAAAA+zAAHfGIoAOEBDCABAAAAPswABXzCGADhASIAAQAAAEDMAAZ84hUA4QEaQAEAAAA7zAAFfIJpAOEBGkABAAAAO8wABXyCNgDhAQwgAQAAAEPMAAd8AiIA4QEMIAEAAABFzAAFfKI8AOEBDCABAAAARcwABXyiIQDhAQwgAQAAAEbMAAd8YjsA4QEMIAEAAABHzAAHfOIVAOEBFgQBAAAASMwAB3xiLgDhARYEAQAAAEnMAAd8Yk0A4QEMIAEAAABKzAAHfKI2AOEBDCABAAAAS8wAB3ziHwDhAQwgAQAAAEvMAAV8gkMA4QEMIAEAAABNzAAHfIIgAOEBDCABAAAATswAB3xCSQDhAQwgAQAAAE/MAAd8ok0A4QEMIAEAAABDzAAFfOIZAOEBFgQBAAAAUcwAB3xCkADhAQwgAQAAAFPMAAV84jQA4QEMIAEAAABTzAAHfCJkAOEBDCABAAAAVMwAB3yCQwDhASIAAQAAAFXMAAZ8IhsA4QEMIAEAAABWzAAHfCI0AeEBIgABAAAAV8wABnyiOQDhAQwgAQAAAFjMAAV8YmMA4QEMIAEAAABYzAAFfCIcAOEBDCABAAAAWswAB3zC0QDhAQwgAQAAAFvMAAd9wroB3gEcDAEAAABezCAFfgJPAOcBHAwBAAAAXswQBXwCTwDhARwMAQAAAF7MAAV8gooA4QEMIAEAAABfzAAHfGJjAOEBDCABAAAAWMwABXwiAAHZAQwggQMAAGHMAAd9YgwBCgIZMAEAAABkzCAFfqIMAQ8CGTABAAAAZMwQBXyiDAERAhkwgQMAAGTMAAV8Ql8B4QEMIAEAAABlzAAHfOJRAOEBDCABAAAAZswAB3zCFwDhARYEAQAAAGfMAAd8YuAA4QEMIAEAAABpzAAFfKJUAOEBDCABAAAAacwAB3zCHgDhARYEAQAAAGrMAAd84h4A4QEMIAEAAABrzAAHfGJJAOEBDCABAAAAbMwAB3wCNADhARYEAQAAAG3MAAd8Yh4A4QEMIAEAAABuzAAHfOIWAOEBDCABAAAAb8wAB3xCHQDhAQwgAQAAAHDMAAd84k0A4QEMIAEAAABxzAAHfCKnAeEBDCABAAAAcswAB3xiVADhAQwgAQAAAHPMAAd8AhkA4QEMIAEAAAB0zAAHfOIpAOEBGDCBAwAAdcwAB3zCSgDhAQwgAQAAAHbMAAd8Qh0A4QEiAAEAAAB3zAAGfGIiAOEBDCABAAAAeMwAB3yCuwHhAQwgAQAAAHvMAAV8Aj0A4QEMIAEAAAB6zAAHfILhAOEBDCABAAAAe8wAB3zCTgDhAQwgAQAAAHzMAAd8gjQA4QEWBAEAAAB9zAAHfMIZAOEBDCABAAAAfswAB3yinwHhAQwgAQAAAH/MAAd8IkUA4QEWBAEAAACAzAAHfAI0AOEBIgABAAAAgcwABnzCZwDhAQwgAQAAAIbMAAV84iEA4QEMIAEAAACDzAAHfGIgAOEBDCABAAAAhMwAB3xiGgDhAQwgAQAAAIXMAAd84jQA4QEMIAEAAACGzAAHfyJ0AOEBDCABAAAAh8wAB3+iuwHZARYEAQAAAIjMAAd/wgIA4QEMIAEAAACJzAAHf8JKAOEBFgQBAAAAiMwABX+iIwDhARYEAQAAAIvMAAd/QiAA4QEMIAEAAACMzAAHf8IoAOEBHAwBAAAAjcwAB3/CGADhAQwgAQAAAI7MAAd/YhsA4QEMIAEAAACPzAAHf4JAAOEBDCABAAAAkMwAB38iIwDZAQwgAQAAAJHMAAd/Qg8B4QEMIAEAAACUzAAFf4JIAeEBDCABAAAAk8wAB3+ikwDhAQwgAQAAAJTMAAV/YhwA4QEWBAEAAACVzAAHf6IqAOEBHAwBAAAAlswAB39iGwDhAQwgAQAAAJfMAAd/YiAA4QEMIAEAAACYzAAHf6I8AOEBDCABAAAAmcwAB39CHwHZAQwgAQAAAJrMAAd/4h4A4QEMIAEAAACbzAAHf4IXAOEBDCABAAAAnMwAB3+CSADhAQwgAQAAAJ3MAAd/wi0A4QEMIAEAAACezAAHf4KQAOEBDCABAAAAn8wAB38iHADhAQwgAQAAAKDMAAd/AiQA4QEMIAEAAAChzAAHf0JJAOEBDCABAAAAoswAB3/CaQDhAQwgAQAAAKPMAAd/YhwA4QEWBAEAAACkzAAHf4IwAOEBGkABAAAApcwAB39iGwDhARYEAQAAAKbMAAd/YhwA4QEWBAEAAACnzAAHf6IfAOEBDCABAAAAo8wABX+ibQDhAQwgAQAAAKPMAEd/oicA4QEaQAEAAACqzAAHf2IbAOEBFgQBAAAApswAR3+CaQDhAQwgAQAAAKjMAEV/gs0A4QEMIAEAAACtzAAHf8K7AeEBDCABAAAArswAB3+CSADhAQwgAQAAAK/MAAd/4vQA4QEMIAEAAACwzAAHgGIuAOEBFgQBAAAAscwAB4CCHADhARYEAQAAALLMAAeA4iEA4QEMIAEAAACzzAAHgAKlANkBDCABAAAAtMwAB4BicgDhAQwgAQAAALXMAAeA4kAA4QEMIAEAAAD/XwAFgAJIAOEBDCABAAAAt8wAB4BiIADhAQwgAQAAALjMAAeAQkkA4QEMIAEAAAC5zAAHgKKvAOEBDCABAAAAuswAB4BCOADhAQwgAQAAALvMAAeAwn0A4QEMIAEAAADoZwAFgEIaAOEBDCABAAAAvcwAB4BCZADhAQwgAQAAAL7MAAeAAkgA4QEMIAEAAADoZwBHgEIrAOEBDCABAAAA6WcARYDCHAHhAQwgAQAAAMHMAAeAohsB4QEMIAEAAADCzAAHgKIbAeEBDCABAAAAw8wAB4CCOwDhAQwgAQAAAE1oAEeAIhgA4QEMIAEAAADFzAAHgCLxAOEBDCABAAAAxswAB4HiuwHrASYIAUABAMjMEAWCArwB1QEmCAEAoADIzAAVguK/ANkBfAgBAAAAycwAFoIivAHhAQwgAQAAAMrMAAeCAqAA4QEiAAEAAADLzAAGgiIeAOEBDCABAAAA1cwAR4JiGwDhARYEAQAAAM3MAAeCYigA4QEMIAEAAADXzABFgmI/AOEBGkABAAAAz8wAB4JCJQDhARYEAQAAANDMAAeCIiYA4QEMIAEAAADRzAAHggIqAOEBDCABAAAA0cwABYLiFQDhASBAAQAAAM/MAAKCYiUA4QEaQAEAAADPzAAFggK8AOEBDCABAAAA1cwAB4JiGwDhARYEAQAAANbMAAeCQisA4QEMIAEAAADVzAAFgoIhAOEBIgQBAAAA2MwABoKiJADhARwMAQAAANnMAAeCYhsA4QEMIAEAAADazAAHgiKEAOEBLiABAAAA28wABoJiHwDhARpAAQAAANvMAAWCgh8A4QEMIAEAAADdzAAHguIVAOEBHiABAAAA28wAAoIipwDhAQwgAQAAAN7MAAWCogEB4QEMIAEAAADgzAAHggIqAOEBHkABAAAA28wABIICbgDhASwAAQAAAOLMAAaCQiUA4QEsAAEAAADjzAAGgsIoAOEBHAwBAAAA5MwAB4LCMQDhAQwgAQAAAOXMAAeCIiYA4QEMIAEAAADmzAAHgqJAAOEBHiABAAAA58wABoICKgDhAQwgAQAAAOfMAAWCYigA4QEMIAEAAADlzAAFgqIaAOEBIiABAAAA6swABoKiygDhAQwgAQAAAOvMAAeCgnYA4QEMIAEAAADszAAHgqInAOEBGkABAAAA7cwAB4KCMADhARpAAQAAAO7MAAeCwhoA4QEcDAEAAADvzAAHgqJ1AOEBDCABAAAA6swABYJiHgDhAQwgAQAAAPHMAAeCghcA4QEaQAEAAADyzAAHggIaAOEBGkABAAAA8swABYLiFQDhAR4AAQAAAPLMAAKCAhkA4QEMIAEAAAD1zAAHgmIcAOEBFgQBAAAA9swAB4KiKgDhARwMAQAAAPfMAAeCYhsA4QEMIAEAAAD4zAAHguIVAOEBDCABAAAA+cwAB4KiIwDhARYEAQAAAPrMAAeCYiQA4QEWBAEAAAD7zAAFgiInAOEBGkABAAAA/MwAB4LiFQDhARpAAQAAAPzMAAWCgkUA4QEaQAEAAAD8zAAFggI6AOEBDCABAAAA/8wAB4LiPwDhARpAAQAAAADNAAeCQpEA4QEeQAEAAAABzQAGgmKRAOEBHiABAAAAAc0ABILiFQDhARpAAQAAAAHNAAWCwkwA4QEMIAEAAAAEzQAHgoJEAOEBLAwBAAAABc0ABoLCHwDhATAgAQAAAAbNAAaC4h8A4QEWBAEAAAAHzQAHguIVAOEBDCABAAAACM0AB4LiOgDhATAAAQAAAAnNAAaCwmUA2QEcDAEAAAAKzQAHgoJYAOEBHAwBAAAAC80AF4JiKgDhARwMAQAAAAzNAAeCYhsA4QEMIAEAAAANzQAHggJJAOEBHAwBAAAADs0AB4ICSQDhARwMAQAAAA/NAAeDYlkA4QEMIAEAAAAQzQAHgyInAOEBDCABAAAAEc0AB4MCgQDhAQwgAQAAABLNAAeDgiEA4QEMIAEAAAATzQAHg4J0AOEBGkABAAAAFM0AB4NCKADhAQwgAQAAABXNAAeDAlgA4QEaQAEAAAAUzQAFg+IVAOEBGkABAAAAFM0ABYOiJwHhAQwgAQAAABjNAAeDYhsA4QEMIAEAAAAZzQAHhEK8AesBNBwBQAEAG80QBYVivAHVATQcAQAAABvNAAWF4joA4QEMIAEAAAAczQAHhQItAOEBFgQBAAAAHc0AB4XiHgDhAQwgAQAAAB7NAAeGgrwB2QEMIAEAAAAfzQAHhqJIANkBHiABAAAAIM0ABoaieQDhAQwgAQAAACHNAAeGgk0A4QEMIAEAAAAizQAHhmKgAOEBDCABAAAAI80AB4YCQADhARYEAQAAACTNAAeGQigA4QEMIAEAAAAlzQAHhqJLAOEBDCABAAAAJs0AB4aiIwDhAQwgAQAAACfNAAeGwlYA4QEWBAEAAAA0zQAFhsJKAOEBFgQBAAAANM0ABYZiGwDhAQwgAQAAACrNAAeG4hUA4QEaQAEAAAAgzQAFhsJCAOEBDCABAAAALM0AB4aCfwDhAQwgAQAAAC3NAAeGgtAA4QEMIAEAAAAuzQAHhsJUAOEBDCABAAAAIM0ABYaiUgDhAQwgAQAAADDNAAeGwlgA4QEMIAEAAAAxzQAHhiIYAOEBDCABAAAAMs0AB4aiJQDhAQwgAQAAADPNAAeG4lYA4QEWBAEAAAA0zQAHhuK3AOEBHhwBAAAANc0ABobCGADhAQwgAQAAADbNAAeGwmEA2QEMIAEAAAA3zQAHh6JXAOEBDCABAAAAOM0AB4iivAHVAYYcAQAAADnNAASI4q0A2QEMIAEAAAA6zQAHiKJaAeEBDCABAAAAO80AB4jCvAHhAYgcAQAAADzNAAaI4hUA4QEaQAEAAAA8zQAFiCJjAOEBGkABAAAAPM0ABYjivAHhAQwgAQAAAD/NAAeIwsMA4QEMIAEAAABAzQAHiIL0AOEBDCABAAAAQc0AB4gCvQHZATQcAQAAADnNAEWJglkATgIZMAEAAABGzSAFiqJZAFMCGTABAAAARs0QBYiiWQAZAhkwAQAAAEbNAAWIQi4A4QEYMAEAAABGzQAHiCK9AeEBDCABAAAAR80AB4jCyQDZARpAAQAAADnNAAWLojQA2QEMIAEAAABJzQAHi4I5ANkBIgQBAAAASs0ABouisADhARYEAQAAAEvNAAeLIiYA4QEWBAEAAABKzQAHi8JKAOEBFgQBAAAASs0ABYvCoQDhAQwgAQAAAE7NAAeLIiAA4QEMIAEAAABOzQAFi6IjAOEBFgQBAAAAUM0AB4tiJADhARYEAQAAAFHNAAeLYhsA4QEMIAEAAABSzQAHi4KzAOEBDCABAAAASs0ABYviHgDhAQwgAQAAAFTNAAeLQkoA4QEMIAEAAABVzQAHiyKgAOEBDCABAAAAVs0AB4uCTgDhAQwgAQAAAFfNAAeLghYA4QEMIAEAAABXzQAFiwI3AOEBDCABAAAAac0AB4tiHADhARYEAQAAAFrNAAeLYhwA4QEWBAEAAABbzQAHi2IbAOEBDCABAAAAXM0AB4siJgDhAQwgAQAAAF3NAAeL4h4A4QEMIAEAAABezQAHi+I8AOEBDCABAAAAX80AB4sCQADhAQwgAQAAAGDNAAeLYsMA4QEMIAEAAABhzQAHi2IkAOEBDCABAAAAYs0AB4uiOwDhAQwgAQAAAGPNAAeLopcB4QEMIAEAAABkzQAHi2IkAOEBDCABAAAAZc0AB4sCJQDhARYEAQAAAGbNAAeLgjQA4QEWBAEAAABnzQAHi8I9AOEBDCABAAAAaM0AB4uikwDhAQwgAQAAAGnNAAWLAhkA4QEMIAEAAABqzQAHi4IhAOEBFgQBAAAAa80AB4uiKQDhARYEAQAAAGzNAAeLAmgA4QEMIAEAAABtzQAHi4KFAOEBDCABAAAAbs0AB4vCPADhARYEAQAAAG/NAAeLghwA4QEWBAEAAABwzQAHi6I3AOEBDCABAAAAcc0AB4sCbADhAQwgAQAAAHLNAAeL4jIA4QEMIAEAAABzzQAHiyIZAOEBDCABAAAAdM0AB4uiPgDhAQwgAQAAAHXNAAeLAiIA4QEMIAEAAAB2zQAHiwIuAOEBDCABAAAAd80AB4vCHQDhAQwgAQAAAHjNAAeLYkYA4QEMIAEAAAB5zQAHi0JnAOEBDCABAAAAes0AB4vCHwDhAQwgAQAAAHvNAAeL4h8A4QEMIAEAAAB7zQAFi0JuAOEBDCABAAAAfc0AB4uCnQDhAQwgAQAAAHLNAAWLwh8A4QEMIAEAAAB/zQAHi6IeAOEBDCABAAAAgM0AB4sCIgDhAQwgAQAAAIHNAAeLQr0B4QEMIAEAAACCzQAHi4IhAOEBIgABAAAAg80ABosiVwDhARYEAQAAAITNAAeLYjcA4QEMIAEAAACFzQAHi4IWAOEBDCABAAAAg80ABYtiJADhAQwgAQAAAIfNAAeLIl4A4QEMIAEAAACIzQAHi2K9AdkBDCABAAAAic0AB4tCSQDhAQwgAQAAAIrNAAeLQh0A4QEWBAEAAACLzQAHiyI8AOEBFgQBAAAAjM0AB4tCLQDhAQwgAQAAAI3NAAeMwkIA+wEYMAEAAACOzRAFjcJCAOEBGDABAAAAjs0AB41CSwDhARYEAQAAAJDNAAeNAqMA4QEMIAEAAACSzQAFjQIkAOEBDCABAAAAks0AB43iIwHhAQwgAQAAAJPNAAeN4h8A4QEMIAEAAACTzQAFjeIbANkBDCABAAAAlc0AB42CvQHhAQwgAQAAAJbNAAeNwkIA4QEMIAEAAACXzQAHjcLFAOEBDCABAAAAmM0AB41CUQDhAQwgAQAAAJnNAAeNYpEA4QEMIAEAAACZzQAFjWJUAOEBDCABAAAAmc0AR40CGgDhAQwgAQAAAJrNAEWNYhQA4QEeIAEAAACdzQAGjQJ5AOEBDCABAAAAn80ABY0iNgDhAQwgAQAAAJ/NAAeNIm4A4QEMIAEAAACgzQAHjeJ+AOEBDCABAAAAoc0AB42iVADhAQwgAQAAAKLNAAeNYhwA4QEWBAEAAACjzQAHjaIqAOEBHAwBAAAApM0AB43CGQDhARYEAQAAAKXNAAeNAhkA4QEMIAEAAACmzQAHjeIYAOEBDCABAAAAps0ABY2CIQDhARYEAQAAAKjNAAeNQkMA4QEaQAEAAACpzQAHjcIyAOEBGkABAAAAqc0ABY3iGQDhARpAAQAAAKnNAAWN4hUA4QEaQAEAAACpzQAFjcIjAOEBDCABAAAArc0AB42CLgDhAQwgAQAAAK/NAAWNojwA4QEMIAEAAACvzQAHjSKOAOEBDCABAAAAsM0AB43iHwDhAQwgAQAAALDNAAWNIlYA4QEiBAEAAACyzQAGjcIXAOEBFgQBAAAAs80AB41iHADhARYEAQAAALTNAAeNIh4A4QEMIAEAAAC1zQAHjcIYAOEBFgQBAAAAts0AB40iHgDhAQwgAQAAALfNAAeNwhgA4QEWBAEAAAC4zQAHjWKLAOEBDCABAAAAuc0AB40iHgDhAQwgAQAAALrNAAeNwhgA4QEWBAEAAAC7zQAHjYJEAOEBDCABAAAAvM0AB41iHADhARYEAQAAAL3NAAeNgkgA4QEMIAEAAAC+zQAHjaIdAOEBDCABAAAAv80AB41i5QDhAQwgAQAAAMDNAAeNIhwA4QEMIAEAAADBzQAHjeI0AOEBDCABAAAAws0AB46ivQHrASYIAUABAMTNEAWPwr0B1QEoCOEEAADEzQAUj8ImAOEBDCABAAAAxc0AB49CUwHhAQwgAQAAAMXNAAWP4iEA4QEMIAEAAADHzQAHj2IgAOEBDCABAAAAyM0AB44iHgD7ASYMAUABAMrNEAWPIh4A4QEkDAEAAADKzQAWjyIcAOEBDCABAAAAy80AB4+iPADhAQwgAQAAAMzNAAePYjYA4QEMIAEAAADNzQAHjyI3AOEBDCABAAAAzc0ABY/iRADhARYEAQAAAM/NAAePghwA4QEWBAEAAADQzQAHj2IgAOEBDCABAAAA0c0AB49CSQDhAQwgAQAAANLNAAeP4hUA4QEiAAEAAADTzQAGj2I9AeEBDCABAAAA1M0AB47ivQEXAhQkAUABANbNEAWPIhgA2QGKJOEBAADWzQAWj8LFAOEBDCABAAAA180AB48iNADhARYEAQAAANjNAAeP4iEA4QEMIAEAAADZzQAHj6JAAOEBDCABAAAA2s0AB49CHgDhAQwgAQAAANvNAAePYhsA4QEMIAEAAADczQAHj2IcAOEBFgQBAAAA3c0AB4+iKgDhARwMAQAAAN7NAAePYhsA4QEMIAEAAADfzQAHjyI3AOEBDCABAAAA1s0ABY/iyQDhARQsAQAAAOHNAAWPwnUA4QEWBAEAAADizQAHj+IVAOEBFgQBAAAA480AB4+C4gDZAQwgAQAAAOTNAAePAhkA4QEMIAEAAADlzQAHj+IYAOEBDCABAAAA5c0ABY/CWADhAQwgAQAAAOfNAAePYiQA4QEWBAEAAADozQAHj4JMAOEBDCABAAAA6c0AB48CKgDhAQwgAQAAAOnNAAWOglwA+wEcDAFAAQDszRAFj4JcAOEBLAwBAAAA7M0AFo+iQADhAQwgAQAAAO3NAAePQh4A4QEMIAEAAADuzQAHjyIaAOEBFgQBAAAA780AB4/CcgDhAQwgAQAAAPDNAAePQi0A4QEMIAEAAADxzQAHj4IsAOEBDCABAAAA8s0AB49i1ADhAQwgAQAAAPPNAAePwmMA4QEWBAEAAAD0zQAHj4IcAOEBFgQBAAAA9c0AB48iGgDhARYEAQAAAPbNAAePghgA4QEMIAEAAAD3zQAHjwJWAOEBDCABAAAA+M0AB49CkQDhAQwgAQAAAPnNAAePgkQA4QEsAAEAAAD6zQAGj8IfAOEBFgQBAAAA+80AB48CSwDhAQwgAQAAAPzNAAeP4joA4QEsAAEAAAD9zQAGj4JQAOEBJggBAAAA/s0AFY8iHADhAQwgAQAAAP/NAAePIhoA4QEWBAEAAAAAzgAHjyJzAOEBDCABAAAAAc4AB4+CHADhARYEAQAAAALOAAePQkkA4QEMIAEAAAADzgAHj8I4AOEBDCABAAAABM4AB48CIwDhARwMAQAAAAXOAAePAjIA4QEcDAEAAAAGzgAHjyIcAOEBDCABAAAAB84AB4/iYADhAQwgAQAAAAjOAAePIhwA4QEMIAEAAAAJzgAHj2IcAOEBFgQBAAAACs4AB48CvgHhAQwgAQAAAAvOAAePYi8A4QEMIAEAAAAMzgAHkAIuAOEBDCABAAAADc4AB5ACGgDhAQwgAQAAAA3OAAWQAlgA4QEMIAEAAAAPzgAHkCIcAOEBDCABAAAAEM4AB5CCLADhAQwgAQAAABLOAAWQojwA4QEMIAEAAAASzgAFkCK+AdkBGkABAAAAE84AB5DiFQDhARpAAQAAABPOAAWQQkkA4QEMIAEAAAAVzgAHkCJQAOEBDCABAAAAFs4AB5Bi1gDhAQwgAQAAABfOAAeQAkEA4QEMIAEAAAAYzgAHkEIaAOEBDCABAAAAGc4AB5ACQQDhAQwgAQAAABrOAAeQAngA4QE0HAEAAAAbzgAFkGIYAOEBDCABAAAAHM4AB5CCRADhAQwgAQAAAB3OAAeQQocA4QEMIAEAAAAezgAFkEK5AOEBDCABAAAAHs4ABZAC5gDhAQwgAQAAACDOAAeQQsoA4QEeIAEAAAAhzgAGkMIwAOEBGkABAAAAIc4ABZDCVgDhARYEAQAAACbOAAWQwkoA4QEWBAEAAAAmzgAFkOIVAOEBLkABAAAAIc4AApBiygDhARYEAQAAACbOAAeRAhkA4QEMIAEAAAAnzgAHkSIgAOEBGkABAAAAKc4ABZHCNQDhARpAAQAAACnOAAeRQiAA4QEMIAEAAAAqzgAHkaL1AOEBDCABAAAAK84AB5HCgQDhAQwgAQAAACzOAAeRIjoA4QEaQAEAAAAtzgAHkSIeAOEBDCABAAAALs4AB5HCGADhARYEAQAAAC/OAAeRYiQA4QEWBAEAAAAwzgAHkaInAOEBGkABAAAAMc4AB5GCMADhARpAAQAAADLOAAeRInQA4QEWBAEAAAAzzgAHkaIkAOEBHAwBAAAANM4AB5FiGwDhAQwgAQAAADXOAAeRQr4B4QEMIAEAAAA2zgAHkWK+AeEBDCABAAAAN84AB5EikADhAS4EAQAAADjOAAaRYnoA4QEMIAEAAAA5zgAHkWImAOEBFgQBAAAAOs4AB5EiAgHhARYEAQAAADvOAAeRohgA4QEgQAEAAAA4zgACkWIqAOEBDCABAAAAPc4AB5FCJQDhARYEAQAAAD7OAAeRYhsA4QEMIAEAAAA/zgAHkeIZAOEBFgQBAAAAQM4AB5HiFQDhAS4gAQAAADjOAAKRIqcA4QEMIAEAAABBzgAFkYJcAOEBHAwBAAAAQ84AB5FiGQDhARYEAQAAAETOAAeRYhsA4QEMIAEAAABFzgAHkcIcAOEBGkABAAAAOM4ABZHCjADhAQwgAQAAAEfOAAeR4vcA4QEMIAEAAABIzgAHkWI5AOEBDCABAAAASc4AB5HCGQDhARYEAQAAAErOAAeRAsYA4QEMIAEAAABLzgAHkQJuAOEBDCABAAAATM4AB5FiHgDhARYEAQAAAE3OAAeRgosA4QEMIAEAAABJzgAFkYIXAOEBGkABAAAAT84AB5HiGQDhARpAAQAAAE/OAAWRAhoA4QEaQAEAAABPzgAFkSIaAOEBFgQBAAAAUs4AB5HiFQDhASBAAQAAAE/OAAKRAhkA4QEMIAEAAABUzgAHkcIXAOEBFgQBAAAAVc4AB5HiIQDhAQwgAQAAAFbOAAeRYiAA4QEWBAEAAABXzgAHkcIaAOEBHAwBAAAAWM4AB5HiGADhAQwgAQAAAFTOAAeRgiEA4QEiBAEAAABazgAGkaIkAOEBHAwBAAAAW84AB5GCFgDhAQwgAQAAAFrOAAWRYhoA4QEMIAEAAABdzgAHkaIfAOEBDCABAAAAXc4ABZECNQDhAQwgAQAAAGLOAAWRghcA4QEWBAEAAABgzgAHkeIZAOEBFgQBAAAAYc4AB5EiNQDhAQwgAQAAAGLOAAeRwogA4QEMIAEAAABjzgAHkaJUAOEBDCABAAAAZM4AB5HiGADhAQwgAQAAAGTOAAWRwjQA4QEWBAEAAABmzgAHkWIbAOEBDCABAAAAZ84AB5GCLgDhAQwgAQAAAGjOAAeRQh0A4QEMIAEAAABpzgAHkeIhAOEBDCABAAAAas4AB5ECOADhAQwgAQAAAGvOAAeRInwA4QEMIAEAAABszgAHkQJBAOEBDCABAAAAbc4AB5GiHgDhAQwgAQAAAG7OAAeRAi0A4QEWBAEAAABvzgAHkUIaAOEBDCABAAAAcM4AB5FiIADhAQwgAQAAAHHOAAeRQkkA4QEMIAEAAAByzgAHkYJIAOEBDCABAAAAc84AB5FCZADhAQwgAQAAAHTOAAeRYmQA4QEMIAEAAAB1zgAHkYIXAOEBDCABAAAAds4AB5EiNwDhAQwgAQAAAHfOAAeRYiQA4QEaQAEAAAB4zgAHkSI3AOEBGkABAAAAeM4ABZHiFQDhARpAAQAAAHjOAAWRAhkA4QEMIAEAAAB7zgAHkeIZAOEBFgQBAAAAfM4AB5GCIQDhARYEAQAAAH3OAAeR4hgA4QEMIAEAAAB7zgAFkWIcAOEBFgQBAAAAf84AB5EiHADhAQwgAQAAAIDOAAeRYucA4QEMIAEAAACBzgAHkaI8AOEBDCABAAAAgs4AB5HCKQHhAQwgAQAAAIPOAAeR4v8A4QEMIAEAAACEzgAHkQIkAOEBDCABAAAAhc4AB5HCGADhASIgAQAAAIbOAAaRAjAA4QEMIAEAAACGzgAFkSKBAOEBFgQBAAAAiM4AB5GiJADhARwMAQAAAInOAAeRYhsA4QEMIAEAAACKzgAHkeIhAOEBDCABAAAAi84AB5FiIADhASIgAQAAAIzOAAaRIhoA4QEWBAEAAACNzgAHkSIgAOEBDCABAAAAj84ABZFCIADhAQwgAQAAAI/OAAeRwhkA4QEWBAEAAACQzgAHkcI0AOEBGkABAAAAkc4AB5GCJwDhASBAAQAAAJHOAAKRIisA4QEMIAEAAACTzgAHkUIrAOEBGkABAAAAkc4ABZHiFQDhASBAAQAAAJHOAAKRYjcA4QEqBAEAAACWzgAGkaIkAOEBHAwBAAAAl84AB5FiGwDhAQwgAQAAAJjOAAeRAhoA4QEMIAEAAACWzgAFkQIZAOEBDCABAAAAms4AB5GCIQDhARYEAQAAAJvOAAeRYhsA4QEaQAEAAACczgAHkYInAOEBFgQBAAAAnc4AB5FCKwDhARpAAQAAAJzOAAWR4hUA4QEaQAEAAACczgAFkQIZAOEBDCABAAAAoM4AB5HiGADhAQwgAQAAAKDOAAWRgiEA4QEWBAEAAACizgAHkaIkAOEBHAwBAAAAo84AB5FiGwDhAQwgAQAAAKTOAAeR4kYA4QEMIAEAAAClzgAHkWIcAOEBFgQBAAAAps4AB5GiPADhAQwgAQAAAKfOAAeRgnAB4QEaQAEAAACozgAHkcI9AOEBDCABAAAAqc4AB5GiUADhAQwgAQAAAKrOAAeRAhkA4QEMIAEAAACrzgAHkQIZAOEBDCABAAAArM4AB5GCMADhARpAAQAAAK3OAAeR4hUA4QEaQAEAAACtzgAFkWJEANkBGkABAAAAr84AB5GCIQDhASIAAQAAALDOAAaR4hkA4QEaQAEAAACvzgAFkSIaAOEBIgABAAAAss4ABpGCHADhARYEAQAAALPOAAeRwhoA4QEcDAEAAAC0zgAHkUIdAOEBDCABAAAAtc4AB5FCLQDhAQwgAQAAALLOAAeRgnUA4QEMIAEAAADIzgAFkcIiAOEBFgQBAAAAuM4AB5HCGgDhARwMAQAAALnOAAeRAhkA4QEMIAEAAAC6zgAHkaInAOEBGkABAAAAxM4AR5GCJwDhARpAAQAAAMXOAEWRQisA4QEaQAEAAADGzgBFkeIVAOEBGkABAAAAx84ARZHiIQDhAQwgAQAAAL/OAAeRYiAA4QEMIAEAAADAzgAHkSIaAOEBFgQBAAAAwc4AB5HCGgDhARwMAQAAAMLOAAeRAhkA4QEMIAEAAADDzgAHkYIwAOEBGkABAAAAxM4AB5GiMADhARpAAQAAAMTOAAWRwjAA4QEaQAEAAADEzgAFkeIVAOEBGkABAAAAxM4ABZEC5QDhASIEAQAAAMjOAAaR4hUA4QEaQAEAAACvzgAFkQIZAOEBDCABAAAAys4AB5HCFwDhARYEAQAAAMvOAAeRwhoA4QEcDAEAAADMzgAHkWIbAOEBFgQBAAAAzc4ABZHiGADhAQwgAQAAAMrOAAWRYiAA4QEMIAEAAADPzgAHkQI4AOEBDCABAAAA0M4AB5FiMADhARpAAQAAAK/OAAWRIh4A4QEMIAEAAADSzgAHkcIYAOEBFgQBAAAA084AB5HCIADhARwMAQAAANTOAAeRguEA4QEMIAEAAADVzgAHkYK+AdkBDCABAAAA1s4AB5KivgHrAQoUAUABANjOEAWTwr4B1QGMFAEAAADYzgAUkwJSANkBDCABAAAA388ABZMCJwDhAQwgAQAAANrOAAeTwjYA4QEMIAEAAADbzgAHkyJ9AOEBDCABAAAA3M4AB5MCNADhARYEAQAAAN3OAAeTAh8A4QEcDAEAAADezgAHk8KcAOEBDCABAAAA384AB5NCJADhASIEAQAAAODOAAaTwhoA4QEcDAEAAADhzgAHk8JzAOEBDCABAAAA4s4AB5NiiwDhASIgAQAAAOPOAAaTAiYA4QEMIAEAAADkzgAHk2IbAOEBDCABAAAA5c4AB5MCRgDhAQwgAQAAAObOAAeT4iYA4QEMIAEAAADjzgAFkyJGAOEBDCABAAAA6M4AB5OiIwDhARYEAQAAAOnOAAeTYksA4QEMIAEAAADqzgAHk8JzAOEBDCABAAAA684AB5MiGADhAQwgAQAAAOzOAAeTghcA4QEaQAEAAADtzgAHkwIaAOEBGkABAAAA7c4ABZPiFQDhARpAAQAAAO3OAAWTAhkA4QEMIAEAAADwzgAHk2IaAOEBDCABAAAA8c4AB5OCHADhARYEAQAAAPLOAAeTAqoA4QEMIAEAAADzzgAHk6IpAOEBDCABAAAA9M4AB5PCKQDZAR4AAQAAAPXOAAaTAjQA4QEWBAEAAAD2zgAHk4IXAOEBFgQBAAAA984AB5MiagDhAR4gAQAAAPjOAAaTwh4A4QEWBAEAAAD5zgAHk8JcAOEBDCABAAAA+s4AB5PiHgDhAQwgAQAAAPvOAAeT4hUA4QEaQAEAAAD4zgAFk8IyAOEBGkABAAAA+M4ABZMiMADhARYEAQAAAP7OAAeT4nEA4QEMIAEAAAD/zgAHkwIjAOEBDCABAAAAAM8AB5MCMgDhAQwgAQAAAADPAAWTIn4A4QEMIAEAAAACzwAHk0IkAOEBFgQBAAAAA88AB5OCFwDhARpAAQAAAATPAAeT4hkA4QEgAAEAAAAEzwACkwIaAOEBGkABAAAABM8ABZPiFQDhARpAAQAAAATPAAWTAhkA4QEMIAEAAAAIzwAHk2IaAOEBDCABAAAACc8AB5NigADhAQwgAQAAAArPAAeTgkgA4QEMIAEAAAALzwAHkwJBAOEBDCABAAAADM8AB5MCQQDhAQwgAQAAAA3PAAeTIjgA4QEMIAEAAAAOzwAHk2KBAOEBDCABAAAAD88AB5OCgADhAQwgAQAAABDPAAeTQhoA4QEMIAEAAAARzwAHkwJBAOEBDCABAAAAEs8AB5PiFwDhAQwgAQAAABPPAAeTQioA4QEaQAEAAAAUzwAHk6IYAOEBIEABAAAAFM8AApNiKgDhAQwgAQAAABbPAAeT4hUA4QEaQAEAAAAUzwAFk4IqAOEBGkABAAAAFM8ABZNCawDhAQwgAQAAABnPAAeTIiYA4QEeIAEAAAAazwAGk2IfAOEBIEABAAAAGs8AApOCHwDhAQwgAQAAABzPAAeT4hUA4QEeQAEAAAAazwACk2IbAOEBDCABAAAAHs8AB5MiegDhASIEAQAAAB/PAAaTAioA4QEeIAEAAAAazwAEk8IXAOEBIgABAAAAIc8ABpMiHgDhAQwgAQAAACLPAAeTAm4A4QEMIAEAAAAjzwAHk+JWAOEBHAwBAAAAJM8AB5NiGwDhAQwgAQAAACXPAAeTYiIA4QEiBAEAAAAmzwAGk4IXAOEBHgABAAAAJ88ABpMCGQDhAQwgAQAAACjPAAeTIh4A4QEMIAEAAAApzwAHk+IgAOEBDCABAAAAKs8AB5OCRADZAQwgAQAAACvPAAeU4r4BCgIZMAEAAAAwzyAFkgK/AQ8CGTABAAAAMM8QBZMCvwERAhkwAQAAADDPAAWTwncA4QEMIAEAAAAvzwAHk+JRAOEBGDABAAAAMM8AB5PCHwDhAQwgAQAAADHPAAeTIr8B4QEMIAEAAAAyzwAHk2J7AOEBDCABAAAAM88AB5MCfwDhAQwgAQAAAFbPAAWTwqEA4QEMIAEAAAA1zwAHk4KmAOEBDCABAAAANs8AB5NCaQDhAQwgAQAAADfPAAeTAlgA4QEMIAEAAAA3zwAFk2IuAOEBIgQBAAAAOc8ABpPCGgDhARwMAQAAADrPAAeT4iEA4QEMIAEAAAA7zwAHkyIaAOEBFgQBAAAAPM8AB5MCGQDhAQwgAQAAAD3PAAeTAhkA4QEMIAEAAABMzwBHk8IXAOEBFgQBAAAATc8AR5PiGADhAQwgAQAAAE/PAEWToicA4QEaQAEAAABQzwBHk4InAOEBFgQBAAAAUc8AR5MiKwDhAQwgAQAAAFLPAEeTAioA4QEMIAEAAABTzwBFk0IrAOEBGkABAAAAVM8ARZPiFQDhARpAAQAAAFXPAEWT4iEA4QEMIAEAAABHzwAHk8IiAOEBFgQBAAAASM8AB5MCLQDhARYEAQAAAEnPAAeTYgoB4QEMIAEAAABHzwAFk2IgAOEBDCABAAAAS88AB5MCGQDhAQwgAQAAAEzPAAeTwhcA4QEWBAEAAABNzwAHk8IaAOEBHAwBAAAATs8AB5PiGADhAQwgAQAAAEzPAAWTgjAA4QEaQAEAAABQzwAHk6IwAOEBIEABAAAAUM8AApOiRgDhAQwgAQAAAFLPAAeTAioA4QEMIAEAAABSzwAFk8IwAOEBGkABAAAAUM8ABZPiFQDhARpAAQAAAFDPAAWT4jwA4QEMIAEAAABWzwAHk4IXAOEBDCABAAAAV88AB5OiTQDhAQwgAQAAADPPAAeTQsgA4QEMIAEAAABZzwAHk4LAAOEBDCABAAAAWs8AB5MiGgDhARYEAQAAAFvPAAeTwmIA4QEMIAEAAABczwAHk+L7AOEBDCABAAAAXc8AB5PCGADhAR4AAQAAAF7PAAaTwh4A4QEWBAEAAABfzwAHk6InAOEBGkABAAAAYM8AB5NiIADhAQwgAQAAAGHPAAeTgjAA4QEaQAEAAABizwAHk+IVAOEBGkABAAAAYs8ABZOCFwDhARpAAQAAAGTPAAeT4hkA4QEWBAEAAABqzwBHkwIaAOEBGkABAAAAZM8ABZPiFQDhARYEAQAAAGfPAAeTAhkA4QEMIAEAAABozwAHk+IYAOEBDCABAAAAaM8ABZPiGQDhASBAAQAAAF7PAAKT4hUA4QEgAAEAAABezwACkwIwAOEBGkABAAAAXs8ABZPCMQDhAQwgAQAAAG3PAAeT4kgA4QEMIAEAAABuzwAHk0LfAOEBDCABAAAAb88AB5MCaADhAQwgAQAAAHDPAAeTgl4A4QEMIAEAAABxzwAHk8IXAOEBIgQBAAAAcs8ABpPiIQDhAQwgAQAAAHPPAAeTQiAA4QEMIAEAAAB0zwAHk8IaAOEBHAwBAAAAdc8AB5OidQDhAQwgAQAAAHLPAAWTghcA4QEaQAEAAAB3zwAHk+IZAOEBGkABAAAAd88ABZMCGgDhARpAAQAAAHfPAAWT4hUA4QEaQAEAAAB3zwAFkwIZAOEBDCABAAAAe88AB5OCIQDhARYEAQAAAHzPAAeTYhoA4QEMIAEAAAB9zwAHk4IqAOEBDCABAAAAcc8ABZPiIwDhAQwgAQAAAH/PAAeTIhkA4QEMIAEAAACAzwAHkyJuAOEBDCABAAAAgc8AB5MCRwDhAQwgAQAAAILPAAeTAvkA4QEMIAEAAACDzwAHk0JKAOEBDCABAAAAhM8AB5NCvwHhAQwgAQAAAIXPAAeTYr8B4QEMIAEAAACGzwAHk8IYAOEBHgABAAAAh88ABpPCHgDhASIEAQAAAIjPAAaT4iEA4QEMIAEAAACJzwAHk2IgAOEBDCABAAAAis8AB5PCGgDhARwMAQAAAIvPAAeTAhkA4QEMIAEAAACMzwAHk+IVAOEBGkABAAAAh88ABZMCMADhAQwgAQAAAIfPAAWTghcA4QEWBAEAAACPzwAHk6IkAOEBHAwBAAAAkM8AB5NiGwDhAQwgAQAAAJHPAAeTYhsA4QEMIAEAAACSzwAHkwJGAOEBFgQBAAAAk88AB5NiJADhAQwgAQAAAJTPAAeTQh0A4QEMIAEAAACVzwAHk4IcAOEBFgQBAAAAls8AB5NiIADhAQwgAQAAAJfPAAeTQkkA4QEMIAEAAACYzwAHk8JPAOEBDCABAAAAmc8AB5MCPQDhAQwgAQAAAJrPAAeT4vwA4QEMIAEAAACbzwAHk+IeAOEBDCABAAAAnM8AB5MiHADhAQwgAQAAAJ3PAAeTInMA4QEMIAEAAACezwAHk4IgAOEBDCABAAAAn88AB5PCHwDhAQwgAQAAAKDPAAeTQkkA4QEMIAEAAAChzwAHk0JrAOEBFgQBAAAAos8AB5PCiwHhAQwgAQAAAKPPAAeTIiUA4QEWBAEAAACkzwAHkyJLAOEBHgQBAAAApc8ABpPiOgDhAQwgAQAAAKbPAAeTohgA4QEgQAEAAAClzwACkyJGAOEBDCABAAAAqM8AB5NiJADhAQwgAQAAAKnPAAeTwjwA4QEWBAEAAACqzwAHkwL/AOEBDCABAAAAq88AB5PCGADhAQwgAQAAAKzPAAeT4j4A4QEMIAEAAACtzwAHk2IkAOEBDCABAAAArs8AB5MCRgDhAQwgAQAAAK/PAAeTAmoA4QEMIAEAAACwzwAHk8JMAOEBDCABAAAAsc8AB5PCcgDhAQwgAQAAALLPAAeTojkA4QEMIAEAAACzzwAHkyIZAOEBDCABAAAAtM8AB5NiRgDhAQwgAQAAALXPAAeTIhoA4QEWBAEAAAC2zwAHk0ItAOEBDCABAAAAt88AB5NiIADhAQwgAQAAALjPAAeT4iAA4QEMIAEAAAC5zwAHkwJhAeEBFgQBAAAAus8AB5OizQDhAQwgAQAAALvPAAeTYiAA4QEMIAEAAAC8zwAHk+IJAeEBDCABAAAAvc8AB5PCFwDhARYEAQAAAL7PAAeTQiAA4QEMIAEAAAC/zwAHk8I8AOEBFgQBAAAAwM8AB5OCIADhAQwgAQAAAMHPAAeTAjQA4QEWBAEAAADCzwAHkwIvAOEBDCABAAAAw88AB5PiNwDhARYEAQAAAMfPAEeTQi0A4QEMIAEAAADJzwBHk2IgAOEBDCABAAAAxs8AB5PiNwDhARYEAQAAAMfPAAeTghwA4QEWBAEAAADIzwAHk0ItAOEBDCABAAAAyc8AB5NiIADhAQwgAQAAAMrPAAeTghcA4QEMIAEAAADLzwAHk4JbAOEBDCABAAAAzM8AB5PiHgDhAQwgAQAAAM3PAAeTYjkA4QEMIAEAAADQzwAHk+JgAOEBDCABAAAAz88AB5OiVADhAQwgAQAAANDPAAeTIhoA4QEWBAEAAADRzwAHk0ItAOEBDCABAAAA0s8AB5NiIADhAQwgAQAAANPPAAeTQmQA4QEMIAEAAADUzwAHkyIaAOEBFgQBAAAA1c8AB5NiHADhARYEAQAAANbPAAeT4i0A4QEMIAEAAADXzwAHk2J7AOEBDCABAAAA2M8AB5MiHAHhAQwgAQAAANnPAAeTgn8B4QEMIAEAAADazwAHk2JRAOEBDCABAAAA288AB5NCHQDhARYEAQAAANzPAAeTIngA4QEMIAEAAADdzwAHk4K/AeEBDCABAAAA3s8AB5WivwHVAQwgAQAAAN/PAAWVwnwA4QEMIAEAAADfzwAFlYLNAOEBDCABAAAA4c8AB5WiHQDhAQwgAQAAAOLPAAeVoh0A4QEMIAEAAADjzwAHlYIXAOEBGkABAAAA5M8AB5UCGgDhARpAAQAAAOTPAAWV4hUA4QEgAAEAAADkzwAClQIZAOEBDCABAAAA588AB5XiGADhAQwgAQAAAOfPAAWVYhoA4QEMIAEAAADpzwAHlaIpAOEBFgQBAAAA6s8AB5XCSADhAQwgAQAAAOvPAAeVYkAA4QEMIAEAAADszwAHlUJkAOEBDCABAAAA7c8AB5ViJADhASIAAQAAAO7PAAaVIh4A4QEMIAEAAADvzwAHlUIeAOEBDCABAAAA8M8AB5ViHgDhARYEAQAAAPHPAAeVAjUA4QEMIAEAAAD3zwAFlYIXAOEBGkABAAAA888AB5UCGgDhARpAAQAAAPPPAAWVAhkA4QEMIAEAAAD1zwAHlWIaAOEBDCABAAAA9s8AB5UiNQDhAQwgAQAAAPfPAAWWwr8B3gEYMAEAAAD4zxAFlaJIAeEBDCABAAAA+c8AB5XCVgDhAQwgAQAAAPrPAAeV4r8B4QEMIAEAAAD7zwAHlaI8AOEBDCABAAAA/M8AB5VCPgDhAQwgAQAAAP3PAAeVojwA4QEMIAEAAAD+zwAHlWIaAOEBDCABAAAA/88AB5UiHADhAQwgAQAAAADQAAeVIhoA4QEWBAEAAAAB0AAHlcIaAOEBHAwBAAAAAtAAB5UiJQDhAQwgAQAAAAPQAAeVAv8A4QEMIAEAAAAE0AAHlWIcAOEBFgQBAAAABdAAB5UifQDhAQwgAQAAAAbQAAeVAjQA4QEWBAEAAAAH0AAHlYIXAOEBFgQBAAAACNAAB5UiNQDhAQwgAQAAAAnQAAeVYhwA4QEWBAEAAAAK0AAHlQIZAOEBDCABAAAAC9AAB5WCMQDhASAAAQAAAAzQAAKVIiAA4QEaQAEAAAAO0AAFlcI1AOEBGkABAAAADtAAB5ViIgDhAQwgAQAAAA/QAAeVQmsA4QEWBAEAAAAQ0AAHlUIaAOEBDCABAAAAEdAAB5XCGQDhARYEAQAAABLQAAeVgiIA4QEcDAEAAAAT0AAHlYIhAOEBFgQBAAAAFNAAB5WiPADhAQwgAQAAABXQAAeVghcA4QEaQAEAAAAW0AAHlQIaAOEBGkABAAAAFtAABZUCGQDhAQwgAQAAABjQAAeVYhwA4QEWBAEAAAAZ0AAHlaIqAOEBHAwBAAAAGtAAB5ViGwDhAQwgAQAAABvQAAeVQhoA4QEMIAEAAAAc0AAHlWImAOEBDCABAAAAHdAAB5VCLgDhAQwgAQAAAB7QAAeVoj0A4QEMIAEAAAAd0AAFlUIuAOEBDCABAAAAINAAB5UiHADhAQwgAQAAACHQAAeVYiYA4QEMIAEAAAAi0AAHlaI9AOEBDCABAAAAItAABZUCLgDhAQwgAQAAACTQAAeVgiAA4QEMIAEAAAAl0AAHlcImAOEBDCABAAAAJtAAB5ViIADhAQwgAQAAACfQAAeVQkkA4QEMIAEAAAAo0AAHlSIcAOEBDCABAAAAKdAAB5VCLgDhAQwgAQAAACrQAAeVwiwA4QEMIAEAAAAr0AAHleJAAOEBDCABAAAAKtAABZVCGgDhAQwgAQAAAC3QAAeVok4A4QEMIAEAAAAu0AAHlWIgAOEBDCABAAAAL9AAB5UiQQDhAQwgAQAAADDQAAeVIhwA4QEMIAEAAAAx0AAHlQIuAOEBDCABAAAAMtAAB5UiHADhAQwgAQAAADPQAAeVQi4A4QEMIAEAAAA00AAHlSIcAOEBDCABAAAANdAAB5WCTQDhAQwgAQAAADbQAAeVAkEA4QEMIAEAAAA30AAHlWJGAOEBDCABAAAAPdAABZViHQDhAQwgAQAAADnQAAeVYiIA4QEMIAEAAAA60AAHlaLnAOEBDCABAAAAO9AAB5UibgDhAQwgAQAAADzQAAeVojwA4QEMIAEAAAA90AAFlUIoAOEBDCABAAAAPtAAB5UCQQDhAQwgAQAAAD/QAAeVoicA4QEaQAEAAABF0ABHlYInAOEBGkABAAAARtAARZVCKwDhARpAAQAAAEfQAEWV4hUA4QEaQAEAAABI0ABFleIhAOEBDCABAAAARNAAB5WCMADhARpAAQAAAEXQAAeVojAA4QEMIAEAAABG0AAFlcIwAOEBGkABAAAARdAABZXiFQDhARpAAQAAAEXQAAWVwvwA4QEMIAEAAABJ0AAHlWJ0AOEBDCABAAAAStAAB5XCHAHhAQwgAQAAAEvQAAeXgkgA4QEMIAEAAABM0AAHlwLAAdkBFgQBAAAATdAAB5iCQwDnARYEAUABAE/QEAWXgkMA4QEWBAEAAABP0AAXl2IbAOEBDCABAAAAUNAAB5eiJwDhASwMAQAAAFHQABaXQk8A4QEMIAEAAABS0AAHl2IbAOEBDCABAAAAU9AAB5fCKADhARYEAQAAAFTQAAeXwkIA4QEMIAEAAABV0AAFlwKGAeEBDCABAAAAVtAAB5dCdgDhAQwgAQAAAFfQAAeXIhoA4QEWBAEAAABY0AAHl8I0AOEBFgQBAAAAWdAAB5dCGgDhAQwgAQAAAFrQAAeXgloB4QEMIAEAAABb0AAHlwIZAOEBDCABAAAAXNAAB5diIADhAQwgAQAAAF3QAAeXQkkA4QEMIAEAAABe0AAHl2IgAOEBDCABAAAAX9AAB5dCSQDhAQwgAQAAAGDQAAeXQhwA4QEMIAEAAABh0AAHl2IgAOEBDCABAAAAYtAAB5dCSQDhAQwgAQAAAGPQAAeXQmcA4QEMIAEAAABk0AAHlyIcAOEBDCABAAAAZdAAB5dCZADhAQwgAQAAAGbQAAeXgl0A4QEWBAEAAABn0AAHl+JmAOEBDCABAAAAaNAAB5fiHgDhAQwgAQAAAGnQAAeXIiUA4QEMIAEAAABq0AAHl8JCAOEBFgQBAAAAa9AAB5eiTQDhAQwgAQAAAFXQAAWZYlQA4QEMIAEAAABt0AAHmeKZAOEBNBwBAAAAbtAABZqiogHeARpAAQAAAHHQIAWbAksA5wEaQAEAAABx0BAFmQJLAOEBWhABAIABcdAABJoCVQA0AhpAAQAAAGgTIg2bIlUAiAIaQAEAAADwCRINmSJVADwCGkABAAAAeAACDZrCogHeARpAAQAAAHATIg2b4qIB5wEaQAEAAAD4CRINmeKiAeEBGkABAAAAgAACDZpiVQBAAhpAAQAAANgYIg2bglUAmAIaQAEAAABgDxINmYJVAEgCGkABAAAA6AUCDZlCeQDhAQwgAQAAAHvQAAeZIh4A4QEMIAEAAAB80AAHmWIoAOEBDCABAAAAfNAABZsiwAEXAhQsAUDhA3/QEAWZom0A2QEULAEA4AN/0AAVmYJpAOEBFCwBAAAAgNAAFZniyQDhARQsAQAAAIHQAAWZghYA4QEULAEAAACB0AAVmSLmAOEBDCABAAAAg9AAB5miQgDhARpAAQAAAITQAAeZ4hkA4QEaQAEAAACE0AAFmeIeAOEBDCABAAAAhtAAB5niFQDhAR5AAQAAAITQAAKZoj0A4QEaQAEAAACE0AAFmYIlANkBQggBAMAAidAAFpniOgDhAQwgAQAAAIrQAAeZ4iYA4QEMIAEAAACK0AAFmaIXAOEBIiABAAAAjNAABpkiHgDhARpAAQAAAI3QAAeZYigA4QEaQAEAAACN0AAFmYK5AOEBGkABAAAAj9AAB5niFQDhARpAAQAAAI/QAAWZYjgA4QEaQAEAAACP0AAFmQIjAOEBIgABAAAAktAABpkiJQDhARYEAQAAAJPQAAeZ4hYA4QEaQAEAAACU0AAHmYIWAOEBGkABAAAAlNAABZnirgDhAQwgAQAAAJbQAAeZgs8A4QEMIAEAAACW0AAFmWIfAOEBIAABAAAAmNAAApmiUgDhARpAAQAAAJnQAAWZwrAA4QEaQAEAAACZ0AAFmeIVAOEBDCABAAAAm9AAB5mCMwDhAQwgAQAAAJzQAAeZwgIA4QEaQAEAAACd0AAHmeKBAOEBGkABAAAAndAABZliJgDhASIAAQAAAJ/QAAaZIk8A4QEiAAEAAACg0AAGmeJCAOEBGkABAAAAodAAB5mCJwDhARYEAQAAAKLQAAeZQisA4QEaQAEAAACh0AAFmUInAOEBDCABAAAApNAAB5kCSQDhAQwgAQAAAKTQAAWZgjEA4QEaQAEAAACs0AAFmSIgAOEBGkABAAAArNAABZkiUQDhAR4AAQAAAKjQAAaZYlYA4QEaQAEAAACo0AAFmeIVAOEBHgABAAAAqNAAApkCeADhARpAAQAAAKjQAAWZwgsB4QEeIAEAAACs0AAGmeIZAOEBFgQBAAAArdAAB5kCOwDhARpAAQAAALPQAAWZIh4A4QEaQAEAAACv0AAHmUI6AOEBGkABAAAAr9AABZliKADhARpAAQAAAK/QAAWZ4hUA4QEaQAEAAACv0AAFmULAAeEBGkABAAAAs9AAB5lCewDhARpAAQAAALPQAAWZIhgA4QEaQAEAAACz0AAFmYKgAOEBFgQBAAAAttAAB5miHwDhATIAAQAAALfQAAaZwkIA4QEMIAEAAAC40AAHmcJCAOEBDCABAAAAudAAB5kCAwHhARYEAQAAALrQAAeZ4rAA4QEaQAEAAAC70AAHmUL3AOEBGkABAAAAu9AABZniHgDhARYEAQAAAInQAAeZYjMA4QEMIAEAAAC+0AAHmSIyAOEBFgQBAAAAv9AAB5mCPQDhAQwgAQAAAMDQAAeZwjMA4QEaQAEAAADB0AAHmWIoAOEBGkABAAAAwdAABZnCAgDhAQwgAQAAAMPQAAeZoksA4QEMIAEAAADE0AAHmSImAOEBDCABAAAAxdAAB5kCSwDhARpAAQAAAMbQAAeZYrIA4QEeIAEAAADH0AAGmcIyAOEBDCABAAAAx9AABZniGQDhASAAAQAAAMfQAAKZ4h4A4QEMIAEAAADK0AAHmeIVAOEBHgABAAAAx9AAApmifQDhARpAAQAAAMzQAAeZ4hUA4QEaQAEAAADM0AAFmYKnAOEBGkABAAAAzNAABZliTgDhAQwgAQAAAM/QAAeZ4hUA4QEWBAEAAADQ0AAHmaJBAeEBGkABAAAA0dAAB5miSgDhARpAAQAAANHQAAWZojoA4QEaQAEAAADT0AAFmUIrAOEBGkABAAAA09AABZmCJwDhARpAAQAAANPQAAWZ4hUA4QEaQAEAAADT0AAFmUIkAOEBGkABAAAA19AAB5kCQADhARpAAQAAANfQAAWZ4hUA4QEaQAEAAADX0AAFmWLAAeEBHgABAAAA2tAABpkCxgDhAQwgAQAAANvQAAeZ4hUA4QEWBAEAAADc0AAHmUJWAOEBGkABAAAA3tAABZnCiwDhARpAAQAAAN7QAAeZ4hUA4QEaQAEAAADe0AAFmaKgAOEBGkABAAAA3tAABZlCYwDhARpAAQAAAN7QAAWZIlQB4QEMIAEAAADi0AAHmWIbAOEBGkABAAAA49AAB5lCKwDhARpAAQAAAOPQAAWZwioA4QEMIAEAAADl0AAHmeIVAOEBHgABAAAAidAAApkipwDhAQwgAQAAAObQAAWZIiYA4QEMIAEAAADo0AAHmaIjAOEBFgQBAAAA6dAAB5liaQDhARwMAQAAAOrQAAeZYhsA4QEMIAEAAADr0AAHmWImAOEBGkABAAAA7NAAB5niGQDhARpAAQAAAOzQAAWZ4hUA4QEaQAEAAADs0AAFmaI9AOEBGkABAAAA7NAABZmi2wDhAS4AAQAAAPDQAAaZgmQA4QEgQAEAAADw0AACmeIVAOEBGkABAAAA8NAABZnCmwDhAQwgAQAAAPPQAAeZQvcA4QEaQAEAAADw0AAFmeJhAOEBDCABAAAA9dAAB5kiYwDhAQwgAQAAAPXQAAWZQlEA4QEMIAEAAAD30AAHmWKRAOEBDCABAAAA99AABZnCVgDhAQwgAQAAAPnQAAeZAioA4QEMIAEAAAD50AAFmWIkAOEBHiABAAAA+9AABpmiGADhASBAAQAAAPvQAAKZIjcA4QEaQAEAAAD70AAFmeIVAOEBGkABAAAA+9AABZmCIQDhARpAAQAAAP/QAAeZghYA4QEaQAEAAAD/0AAFmeIVAOEBGkABAAAA/9AABZmiewDhAQwgAQAAAALRAAeZ4hUA4QEWBAEAAAAD0QAHmcJCAOEBGkABAAAABNEABZmCKQDhARpAAQAAAAXRAAeZYhgA4QEaQAEAAAAG0QAFmWIfAOEBGkABAAAABtEABZniFQDhARpAAQAAAAXRAAWZAioA4QEaQAEAAAAF0QAFmaIYAOEBGkABAAAABNEABZniFQDhARpAAQAAAATRAAWZIvEA4QEaQAEAAAAF0QBHmWIfAOEBGkABAAAAB9EARZkCIQDhARpAAQAAAAnRAEWZ4hUA4QEaQAEAAAAI0QBFmaJNAOEBGkABAAAABNEABZmChQDhARpAAQAAABHRAAeZwiMA4QEaQAEAAAAR0QAFmSKhAOEBGkABAAAAE9EAB5nCIwDhARpAAQAAABPRAAWZIiMA4QEaQAEAAAAV0QAHmUIlAOEBIAQBAAAAFdEAApniHwDhARpAAQAAABXRAAWZIjIA4QEWBAEAAAAY0QAHmeIpAOEBGkABAAAAGdEAB5liHwDhARpAAQAAABnRAAWZ4hUA4QEaQAEAAAAZ0QAFmQIqAOEBGkABAAAAGdEABZnCMwDhARpAAQAAAB3RAAeZQjoA4QEaQAEAAAAd0QAFmWIoAOEBGkABAAAAHdEABZniFQDhARpAAQAAAB3RAAWZwhgA4QEMIAEAAAAh0QAHmUI5AOEBGkABAAAAItEAB5lCMQDhARpAAQAAACLRAAWZ4hUA4QEaQAEAAAAi0QAFmQJaAOEBGkABAAAAItEABZniYQDhARpAAQAAACbRAAeZ4hUA4QEaQAEAAAAm0QAFmSJjAOEBGkABAAAAJtEABZkCOgDhARpAAQAAACnRAAeZgiQA4QEMIAEAAAAq0QAHmSIyAOEBDCABAAAAK9EAB5niFQDhAQwgAQAAACzRAAeZAuQA4QEeIAEAAAAt0QAGmeIVAOEBGkABAAAALdEABZnizADhAR4AAQAAAC3RAASZ4hkA4QEaQAEAAAAt0QAFmeIVAOEBGkABAAAALdEABZniOgDhAR4gAQAAADLRAAaZoiYA4QEgBAEAAAAy0QACmWIcAOEBFgQBAAAANNEAB5miKgDhARwMAQAAADXRAAeZYhsA4QEMIAEAAAA20QAHmeImAOEBGkABAAAAMtEABZliiwDhARpAAQAAADjRAAeZ4iYA4QEaQAEAAAA40QAFmaJ9AOEBGkABAAAAOtEAB5niFQDhARpAAQAAADrRAAWZgqcA4QEaQAEAAAA60QAFmYIyAOEBFgQBAAAAPdEAB5kCJwDhAQwgAQAAAD7RAAeZwh8A4QEaQAEAAAA/0QAHmSImAOEBDCABAAAAQNEAB5niHwDhARpAAQAAAD/RAAWZoiYA4QEWBAEAAABC0QAHmcImAOEBDCABAAAAQ9EAB5kCSwDhASwMAQAAAETRAAaZAkIA4QEaQAEAAABF0QAHmeLEAOEBGkABAAAARtEAB5kCZwDhARpAAQAAAEbRAAWZwkAB4QEaQAEAAABI0QAHmeIVAOEBGkABAAAASNEABZniQAHhARpAAQAAAEjRAAWZ4swA4QEMIAEAAACJ0AAFmWJRAOEBGkABAAAATNEAB5nCVADhARpAAQAAAEzRAAWZgkQA4QEaQAEAAABO0QAHmQIhAOEBGkABAAAATtEABZniFQDhARpAAQAAAE7RAAWZ4mkA4QEaQAEAAABR0QAHmeIVAOEBGkABAAAAUdEABZnigQDhARpAAQAAAFHRAAWZQpEA4QEMIAEAAABU0QAHmWIkAOEBGkABAAAAVdEAB5kiNwDhARpAAQAAAFXRAAWZgiUA4QEaQAEAAABX0QAHm8IfAOcBJgQBQAEAWdEQBZnCHwDhASoIAQAAAFnRAAaZIiYA4QEMIAEAAABa0QAHmQIqAOEBDCABAAAAWtEABZmCMADhASIAAQAAAFzRAAaZojAA4QEWBAEAAABd0QAHmYJXAOEBDCABAAAAXtEAB5nCJADhAQwgAQAAAF7RAAeZQn8A4QEaQAEAAABg0QAHmeIVAOEBGkABAAAAYNEABZnCJADhARpAAQAAAGDRAAWZgjkA4QEaQAEAAABR0QAFmSJuAOEBDCABAAAAZNEAB5mCVgDhARpAAQAAAGXRAAeZYigA4QEaQAEAAABl0QAFmeIVAOEBGkABAAAAZdEABZkikwDhARpAAQAAAGjRAAeZohgA4QEaQAEAAABo0QAFmeIVAOEBGkABAAAAaNEABZmiTQDhARpAAQAAAGjRAAWZQlgA4QEWBAEAAABs0QAHmYJcAOEBHAwBAAAAbdEAB5liGwDhAQwgAQAAAG7RAAeZIkAA4QEWBAEAAABv0QAHmeIVAOEBFgQBAAAAcNEAB5liMQDhARwMAQAAAHHRAAeZIkwA4QEaQAEAAABy0QAHmQIhAOEBGkABAAAActEABZkCGQDhAQwgAQAAAHTRAAeZAqEA4QEaQAEAAAB10QAHmSJjAOEBGkABAAAAddEABZliGQDhARYEAQAAAHfRAAeZYlcA4QEaQAEAAAB40QAHmWJWAOEBGkABAAAAeNEABZniFQDhARpAAQAAAHjRAAWZ4msA4QEaQAEAAAB40QAFmUKMAOEBDCABAAAAfNEAB5niVQDhAQwgAQAAAH3RAAeZwpoA4QEMIAEAAAB90QAFmaJCAOEBDCABAAAAf9EAB5lCQgDhAQwgAQAAAIDRAAeZoqcB4QEaQAEAAACB0QAHmSIvAOEBGkABAAAAgtEAB5kCGgDhARpAAQAAAILRAAWZAiMA4QEsDAEAAACE0QAGmcIoAOEBHAwBAAAAhdEAB5liGwDhAQwgAQAAAIbRAAeZAjIA4QEcDAEAAACH0QAHmYI9AOEBGkABAAAAiNEAB5kCZwDhARpAAQAAAIjRAAWZApsA4QEaQAEAAACK0QAHmWIZAOEBGkABAAAAitEABZniFQDhARpAAQAAAIrRAAWZwsoA4QEaQAEAAACK0QAFmUIbAeEBGkABAAAAjtEAB5nCMgDhARpAAQAAAI7RAAWZ4hkA4QEaQAEAAACO0QAFmeIVAOEBGkABAAAAjtEABZnCjADhAQwgAQAAAJLRAAeZgrgA4QEMIAEAAACT0QAHmYLAAeEBDCABAAAAlNEAB5yieADZAQwgAQAAAHvTAAWcAkIA4QEiAAEAAACW0QAGnEJBAOEBDCABAAAAl9EAB5xCHQDhARYEAQAAAJjRAAecAkEA4QEMIAEAAACZ0QAHnCIgAOEBDCABAAAAnNEABZxCGgDhAQwgAQAAAJvRAAecYiIA4QEMIAEAAACc0QAHnIIXAOEBFgQBAAAAndEAB5wCGQDhAQwgAQAAAJ7RAAecAucA4QEMIAEAAACf0QAHnOJVAOEBGkABAAAAoNEAB5yieQDhAQwgAQAAAKHRAAecIkwA4QEMIAEAAACi0QAHnYIpAPsBJggBQAEApNEQBZyCKQDhASoIAQAAAKTRABacwhgAIQIWBAEAAACl0QAFnAIwACECDCABAAAAptEABZyiGAAhAhpAAQAAAKfRAAWcIhoAIQIWBAEAAACo0QAFnOIeAC0CFgQBAAAAqdEABZwiHgDhAQwgAQAAAKrRAAecYh4A4QEWBAEAAACr0QAHnOI2AOEBGkABAAAArNEAB5zCGADhAQwgAQAAAK3RAAecgikA4QEMIAEAAACu0QAHnIIWAOEBGkABAAAArNEABZziFQDhARpAAQAAAKzRAAWcQiYA4QEaQAEAAACx0QAHnOIVAOEBHgABAAAAsdEAApyCIQDhARYEAQAAALPRAAecQiAA4QEMIAEAAAC00QAHnAIdAOEBGkABAAAAsdEABZziOgDhASIAAQAAALbRAAacoiYA4QEWBAEAAAC30QAHncICAOcBLAwBQAEAudEQBJzCAgDhASIEAQAAALnRAAacYhwA4QEWBAEAAAC60QAHnIJ+AOEBDCABAAAAu9EAB5xiHADhARYEAQAAALzRAAec4iMA4QEMIAEAAAC90QAHnIKFAOEBGkABAAAAvtEAB5zCIwDhARpAAQAAAL7RAAWc4hUA4QEaQAEAAAC+0QAFnOJZAOEBFgQBAAAAwdEAB5zimgDhARpAAQAAAMLRAAecgmQA4QEWBAEAAADD0QAHnOIVAOEBGkABAAAAwtEABZwiHgDhARpAAQAAAMXRAAecYigA4QEaQAEAAADF0QAFnOIVAOEBGkABAAAAxdEABZyCPQDhARpAAQAAAMjRAAec4hUA4QEgAAEAAADI0QACnGIxAOEBHAwBAAAAytEAB5xiGwDhAQwgAQAAAMvRAAecAmcA4QEaQAEAAADI0QAFnIK5AOEBHkABAAAAzdEABpziFQDhARpAAQAAAM3RAAWcYjgA4QEaQAEAAADN0QAFnGI3AOEBDCABAAAA0NEAB5yioADhARYEAQAAANHRAAecAiMA4QEcDAEAAADS0QAHnKJIAOEBGkABAAAA09EAB5zCVADhARpAAQAAANPRAAWcgjkA4QEWBAEAAADV0QAHnKKwAOEBHgABAAAA1tEABpyiGADhARYEAQAAANfRAAec4hUA4QEaQAEAAADW0QAFnMIcAOEBGkABAAAA1tEABZzC2QDhARYEAQAAANrRAAecwgIA4QEMIAEAAADb0QAHnAJMAOEBGkABAAAA8NEABZwCGQDhAQwgAQAAAN3RAAecoicA4QEaQAEAAADe0QAHnEIrAOEBGkABAAAA3tEABZwCGQDhAQwgAQAAAODRAAecgjAA4QEaQAEAAADh0QAHnMIwAOEBGkABAAAA4dEABZyiigDhARYEAQAAAOPRAAecYiYA4QEuAAEAAADk0QAGnOIVAOEBDCABAAAA5dEAB5yiPQDhARpAAQAAAOTRAAWcYhwA4QEWBAEAAADn0QAHnKKVAOEBHiABAAAA6NEABpziJgDhARogAQAAAOjRAAWc4hUA4QEaQAEAAADo0QAFnAIpAOEBGkABAAAA69EAB5zCIwDhAQwgAQAAAOzRAAecImYA4QEaQAEAAADt0QAHnKJMAOEBDCABAAAA7tEAB5ziFQDhAQwgAQAAAO/RAAecQicA4QEaQAEAAADw0QAHnEJKAOEBDCABAAAA8dEAB5wCSQDhARpAAQAAAPDRAAWc4hUA4QEaQAEAAADw0QAFnIIXAOEBGkABAAAA9NEAB5wCGgDhARpAAQAAAPTRAAWc4hUA4QEaQAEAAAD00QAFnAIZAOEBDCABAAAA99EAB5wiHgDhAQwgAQAAAPjRAAecwhgA4QEWBAEAAAD50QAHnKJ7AOEBGkABAAAA+tEAB5zCyQDhARpAAQAAAPrRAAWcQiAA4QEMIAEAAAD80QAHnGIcAOEBFgQBAAAA/dEAB5yCHADhARYEAQAAAP7RAAecIlEA4QEaQAEAAAD/0QAHnGJWAOEBGkABAAAA/9EABZziFQDhARpAAQAAAP/RAAWcAngA4QEaQAEAAAD/0QAFnOIVAOEBDCABAAAAA9IAB5zCCgHhARpAAQAAAATSAAec4goB4QEaQAEAAAAE0gAFnIIXAOEBGkABAAAABtIAB5xiHADhARYEAQAAAAfSAAecghcA4QEWBAEAAAAI0gAHnCJZAeEBGkABAAAACdIAB5xCewDhARpAAQAAAAnSAAWc4hUA4QEaQAEAAAAJ0gAFnCIYAOEBIEABAAAACdIAApzCNADhARpAAQAAAA3SAAecgicA4QEaQAEAAAAN0gAFnEIrAOEBGkABAAAADdIABZziFQDhARpAAQAAAA3SAAWcAhgA4QEMIAEAAAAR0gAHnKInAOEBGkABAAAAEtIAB5xCKwDhARpAAQAAABLSAAWcgjAA4QEaQAEAAAAU0gAHnMIwAOEBGkABAAAAFNIABZzisADhARpAAQAAABbSAAec4hUA4QEaQAEAAAAW0gAFnEL3AOEBGkABAAAAFtIABZxiGwDhARpAAQAAABnSAAecgicA4QEWBAEAAAAa0gAHnEIrAOEBGkABAAAAGdIABZyCIQDhAR4AAQAAABzSAAacghYA4QEaQAEAAAAc0gAFnOIkAeEBFgQBAAAAHtIAB5zCJgDhARYEAQAAAB/SAAecAqAA4QEaQAEAAAAg0gAHnOIVAOEBHgABAAAAINIAApyCiQDhARpAAQAAACDSAAWcwhcA4QEWBAEAAAAj0gAHnCIcAOEBDCABAAAAJNIAB5yiJwDhARpAAQAAACnSAEecgicA4QEaQAEAAAAq0gBFnEIrAOEBGkABAAAAK9IARZziFQDhARpAAQAAACzSAEWcgjAA4QEaQAEAAAAp0gAHnKIwAOEBGkABAAAAKdIABZzCMADhARpAAQAAACnSAAWc4hUA4QEaQAEAAAAp0gAFnCIaAOEBFgQBAAAALdIAB5yCFwDhAR4AAQAAAC7SAAacAhoA4QEeAAEAAAAu0gAEnOIVAOEBGkABAAAALtIABZwCGQDhAQwgAQAAADHSAAec4hkA4QEWBAEAAAAy0gAHnIJGAOEBGkABAAAAM9IAB5wCGQDhAQwgAQAAADTSAAecwiQA4QEaQAEAAAAz0gAFnGJFAOEBGkABAAAANtIAB5wCGQDhAQwgAQAAADfSAAecwjIA4QEaQAEAAAA20gAFnMI0AOEBGkABAAAAOdIAB5xCKwDhARpAAQAAADnSAAWc4iAA4QEMIAEAAAA70gAHnGI/AOEBGkABAAAAPNIAB5xiJQDhARpAAQAAADzSAAWcYr8A4QEWBAEAAAA+0gAHnOJSAOEBGkABAAAAP9IAB5yCsQDhARYEAQAAAEDSAAecolIA4QEaQAEAAABB0gAHnOIVAOEBHgABAAAAQdIAApzCsADhARpAAQAAAEHSAAWcYnoA4QEaQAEAAABE0gAHnOKBAOEBGkABAAAARNIABZwiIADhARpAAQAAAEvSAAWcAksA4QEMIAEAAABH0gAHnGJOAOEBHiABAAAASNIABpziFQDhASBAAQAAAEjSAAKcQmMA4QEaQAEAAABI0gAFnGJcAOEBGkABAAAAS9IAB5ziFQDhARpAAQAAAEvSAAWcAigA4QEWBAEAAABN0gAHnAK1AOEBFgQBAAAATtIAB5zCGADhAQwgAQAAAE/SAAecoicA4QEaQAEAAABQ0gAHnIIwAOEBGkABAAAAUdIAB5ziFQDhARpAAQAAAFHSAAWcYhwA4QEWBAEAAABT0gAHnKKVAOEBGkABAAAAVNIAB5zi/gDhARYEAQAAAFXSAAecwosA4QEaQAEAAABW0gAHnKKgAOEBFgQBAAAAV9IAB5xCYwDhARpAAQAAAFbSAAWcIlQB4QEMIAEAAABZ0gAHnAJuAOEBFgQBAAAAWtIAB5xCJQDhARYEAQAAAFvSAAecwnMA4QEeIAEAAABc0gAGnOIVAOEBGkABAAAAXNIABZxCHADhARYEAQAAAF7SAAecYugA4QEeIAEAAABf0gAGnAJAAOEBGkABAAAAX9IABZziFQDhARpAAQAAAF/SAAWcglsB4QEaQAEAAABf0gAFnCJAAOEBMCABAAAAY9IABpyCPQDhARpAAQAAAGTSAAec4hUA4QEaQAEAAABk0gAFnAJnAOEBGkABAAAAZNIABZwCoADhARpAAQAAAGfSAAec4hkA4QEgQAEAAABn0gACnOIVAOEBHkABAAAAZ9IAApyCiQDhARpAAQAAAGfSAAWc4roA4QEaQAEAAABr0gAHnCIeAOEBDCABAAAAbNIAB5zCGADhARYEAQAAAG3SAAec4iYA4QEaQAEAAABr0gAFnOIVAOEBGkABAAAAa9IABZxiHADhARYEAQAAAHDSAAec4i4B4QEaQAEAAABx0gAHnAJiAOEBFgQBAAAActIAB5xiegDhAQwgAQAAAHPSAAecorAA4QEWBAEAAAB00gAHnOJMAOEBGkABAAAAfNIABZwCbgDhARYEAQAAAHbSAAec4qAA4QEeQAEAAAB30gAGnGJWAOEBGkABAAAAd9IABZziFQDhAR4EAQAAAHfSAAKc4uMA4QEeAAEAAAB30gAEnKKVAOEBFgQBAAAAe9IAB5ziYQDhAR4gAQAAAHzSAAacImIA4QEMIAEAAAB90gAHnOIVAOEBGkABAAAAfNIABZwiYwDhARpAAQAAAHzSAAWcIsIA4QEcDAEAAACA0gAHnMLvAOEBGkABAAAAgdIAB5yCtADhARpAAQAAAILSAAecIiAA4QEaQAEAAACC0gAFnGLBAOEBDCABAAAAhNIAB5wiJwDhAR4gAQAAAIXSAAacQiUA4QEWBAEAAACG0gAHnOIVAOEBGkABAAAAhdIABZyCRQDhARpAAQAAAIXSAAWconsA4QEeQAEAAACJ0gAGnAKGAOEBIEABAAAAidIAApziFQDhASBAAQAAAInSAAKcwskA4QEaQAEAAACJ0gAFnOIxAOEBDCABAAAAjdIAB5wiLQDhAQwgAQAAAI7SAAecInoA4QEcDAEAAACP0gAHnOIVAOEBIAABAAAAgtIAApzCQgDhARpAAQAAAJHSAAWcohgA4QEaQAEAAACR0gAFnOIVAOEBGkABAAAAkdIABZyiTQDhARpAAQAAAJHSAAWcIowA4QEMIAEAAACV0gAHnOIeAOEBGkABAAAAltIAB5wCKgDhARpAAQAAAJbSAAWcwkoA4QEWBAEAAACY0gAHnOKZAOEBMAABAAAAmdIABpxiGwDhAQwgAQAAAJrSAAecwjEA4QEWBAEAAACb0gAHnAJLAOEBLAQBAAAAnNIABpziHgDhAQwgAQAAAJ3SAAec4kwA4QEaQAEAAACg0gAFnOJCAOEBDCABAAAAn9IAB5yiwAHhARpAAQAAAKDSAAec4hUA4QEaQAEAAACg0gAFnMIYAOEBDCABAAAAotIAB5wiYwDhARpAAQAAAKDSAAWc4mEA4QEaQAEAAACk0gAHnOIVAOEBGkABAAAApNIABZwiYwDhARpAAQAAAKTSAAWc4jQA4QEMIAEAAACn0gAHnIIXAOEBGkABAAAAqNIAB5wCGgDhARpAAQAAAKjSAAWcAhkA4QEMIAEAAACq0gAHnOJ4AOEBGkABAAAAq9IAB5ziFQDhASAAAQAAAKvSAAKcYjEA4QEcDAEAAACt0gAHnAIqAOEBGkABAAAAq9IABZyiJwDhARpAAQAAAK/SAAecQisA4QEaQAEAAACv0gAFnOIgAOEBDCABAAAAsdIAB5zCMQDhARpAAQAAALLSAAecQjoA4QEgBAEAAACy0gACnGIoAOEBGkABAAAAstIABZwCOgDhAR4AAQAAALXSAAacohwA4QEaQAEAAAC20gAHnAIZAOEBDCABAAAAt9IAB5yiIADhARpAAQAAALjSAAec4hUA4QEaQAEAAAC40gAFnAIZAOEBDCABAAAAutIAB5yCIQDhARYEAQAAALvSAAecAh0A4QEaQAEAAAC40gAFnCJmAOEBFgQBAAAAvdIAB5ziYADhARpAAQAAANjSAAWcghcA4QEaQAEAAAC/0gAHnAIaAOEBGkABAAAAv9IABZziFQDhAR4AAQAAAL/SAAKcAicA4QEaQAEAAADC0gAHnMIjAOEBGkABAAAAwtIABZziFQDhASAAAQAAAMLSAAKcQiYA4QEaQAEAAADF0gAHnOIZAOEBGkABAAAAxdIABZziFQDhARpAAQAAAMXSAAWcAhkA4QEMIAEAAADI0gAHnAIdAOEBGkABAAAAxdIABZziFQDhAQwgAQAAAMrSAAecYiQA4QEaQAEAAADL0gAHnKIYAOEBFgQBAAAAzNIAB5zCGADhAQwgAQAAAM3SAAecIjcA4QEaQAEAAADL0gAFnMIfAOEBHkABAAAAz9IABpziHwDhARpAAQAAAM/SAAWc4hUA4QEgBAEAAADP0gACnIKiAOEBFgQBAAAA0tIAB5wiIwDhARpAAQAAAM/SAAWcYm8A4QEaQAEAAADU0gAHnAJAAOEBGkABAAAA1NIABZwCWADhARpAAQAAANTSAAWc4hUA4QEaQAEAAADU0gAFnMJAAeEBHiABAAAA2NIABpziFQDhARpAAQAAANjSAAWc4kAB4QEaIAEAAADY0gAFnMKgAOEBGkABAAAA3tIABZyidADhASwAAQAAANzSAAacIocA4QEsBAEAAADd0gAGnEJAAOEBGkABAAAA3tIAB5ziFQDhARpAAQAAAN7SAAWcYqQA4QEaQAEAAADe0gAFnCJrAOEBDCABAAAA4dIAB5yiKADhARpAAQAAAN7SAAWc4mkA4QEaQAEAAADj0gAFnOIVAOEBGkABAAAA49IABZzigQDhARpAAQAAAOPSAAWcgiEA4QEWBAEAAADm0gAHnGIbAOEBDCABAAAA59IAB5xiHADhARYEAQAAAOjSAAecQpEA4QEaQAEAAADp0gAFnOIVAOEBGkABAAAA6dIABZzCwAHhARpAAQAAAOvSAAecwloB4QEWBAEAAADs0gAHnIJKAOEBFgQBAAAA7dIAB5yCLgHhARpAAQAAAO7SAAecgmQA4QEaQAEAAADu0gAFnOIVAOEBGkABAAAA7tIABZxCYwDhARpAAQAAAO7SAAWc4hUA4QEMIAEAAADy0gAHnKKEAOEBDCABAAAA89IAB5zCTADhAR4AAQAAAPTSAAac4hUA4QEaQAEAAAD00gAFnCJgAOEBGkABAAAA9NIABZxCwgDhARYEAQAAAPfSAAecwh8A4QEcDAEAAAD40gAHnAJLAOEBDCABAAAA+dIAB5wCGQDhAQwgAQAAAPrSAAecgjEA4QEaQAEAAAD90gAFnCIgAOEBGkABAAAA/dIABZzCNQDhARpAAQAAAP3SAAec4hUA4QEaQAEAAAD90gAFnIIwAOEBFgQBAAAA/9IAB5yiMADhARYEAQAAAADTAAecglcA4QEMIAEAAAAB0wAHnOKPAOEBGkABAAAAAtMAB5ziFQDhARpAAQAAAALTAAWc4rEA4QEaQAEAAAAC0wAFnII5AOEBIAQBAAAA49IAAJxiHADhARYEAQAAAAbTAAecoicA4QEaQAEAAAAH0wAHnIIwAOEBGkABAAAACNMAB5xiPwDhARpAAQAAAAnTAAec4hUA4QEaQAEAAAAJ0wAFnGIlAOEBGkABAAAACdMABZxiegDhAQwgAQAAAAzTAAecIkAA4QEaQAEAAAAN0wAHnIJFAOEBGkABAAAADdMABZyCFwDhARpAAQAAAA/TAAec4hkA4QEgQAEAAAAP0wACnMIYAOEBDCABAAAAEdMAB5wCMADhAQwgAQAAABHTAAWcAhoA4QEaQAEAAAAP0wAFnOIVAOEBGkABAAAAD9MABZwCoQDhARpAAQAAABXTAAec4hUA4QEaQAEAAAAV0wAFnCJjAOEBGkABAAAAFdMABZwCBAHhARpAAQAAABjTAAecYlYA4QEaQAEAAAAY0wAFnOIVAOEBGkABAAAAGNMABZzisQDhARpAAQAAABjTAAWcAk8A4QEaQAEAAAAc0wAHnOIVAOEBGkABAAAAHNMABZxCKgDhAR4AAQAAAB7TAAacgioA4QEaQAEAAAAe0wAFnGIbAOEBGkABAAAAINMAB5xCKwDhARpAAQAAACDTAAWcIqEA4QEaQAEAAAAi0wAHnMIjAOEBGkABAAAAItMABZziFQDhARpAAQAAACLTAAWcAoQA4QEWBAEAAAAl0wAHnILDAOEBGkABAAAAJtMAB5yCsQDhARYEAQAAACfTAAecosMA4QEaQAEAAAAm0wAFnIIdAOEBFgQBAAAAKdMAB5wiIADhARpAAQAAACvTAAWcQm8A4QEeIAEAAAAr0wAGnGIcAOEBFgQBAAAALNMAB5yCRgDhARYEAQAAAC3TAAec4lUA4QEaQAEAAAAu0wAHnEJYAOEBGkABAAAALtMABZzCmgDhARpAAQAAAC7TAAWc4hUA4QEeAAEAAAAu0wACnOJ7AOEBGkABAAAAMtMAB5yCSgDhARpAAQAAADLTAAWcokoA4QEaQAEAAAAy0wAFnOIVAOEBGkABAAAAMtMABZzCiwDhAR5AAQAAADbTAAac4hUA4QEaQAEAAAA20wAFnKKgAOEBGkABAAAANtMABZxCYwDhARpAAQAAADbTAAWcwnUA4QEyIAEAAAA60wAGnGI6AOEBGkABAAAAO9MAB5zCIADhARwMAQAAADzTAAecIh4A4QEMIAEAAAA90wAHnCIYAOEBDCABAAAAPtMAB5wiNwDhAQwgAQAAAD7TAAWcopQA4QEaQAEAAABA0wAHnGJWAOEBGkABAAAAQNMABZziFQDhARpAAQAAAEDTAAWcQtYA4QEaQAEAAABD0wAHnOIgAOEBDCABAAAARNMAB5xCQgDhAR5AAQAAAEXTAAacohgA4QEgQAEAAABF0wACnOIVAOEBGkABAAAARdMABZxiQgDhARpAAQAAAEXTAAWcwioA4QEeIAEAAABJ0wAGnIInAOEBGkABAAAASdMABZxCKwDhARpAAQAAAEnTAAWc4hUA4QEaQAEAAABJ0wAFnAIZAOEBDCABAAAATdMAB5wCGQDhAQwgAQAAAE7TAAecYh4A4QEWBAEAAABP0wAHnAIZAOEBDCABAAAAUNMAB5xCwwDhARpAAQAAAFHTAAecIjMA4QEgQAEAAABR0wAAnEIzAOEBGkABAAAAUdMABZxCdAHhAQwgAQAAAFTTAAecYiIA4QEaQAEAAABV0wAHnOIVAOEBFgQBAAAAVtMAB5wCSwDhASIEAQAAAFfTAAacAi0B4QEaQAEAAABY0wAHnEIxAOEBGkABAAAAWNMABZziFQDhASAEAQAAAFjTAAKcYjEA4QEcDAEAAABb0wAHnIJlAOEBGkABAAAAWNMABZziHgDhARpAAQAAAF3TAAec4hUA4QEaQAEAAABd0wAFnMKMAOEBHgABAAAAX9MABpziFQDhAR5AAQAAAF/TAAKcYqkA4QEaQAEAAABf0wAFnGI3AOEBGkABAAAAYtMAB5wCGgDhARpAAQAAAGLTAAWc4hUA4QEaQAEAAABi0wAFnAJLAOEBFgQBAAAAZdMAB5xiHADhARYEAQAAAGbTAAec4hwA4QEMIAEAAABn0wAHnEI5AOEBFgQBAAAAaNMAB5ziPwHhAQwgAQAAAGnTAAecYiQA4QEWBAEAAABq0wAHnGIcAOEBFgQBAAAAa9MAB5xiGgDhAQwgAQAAAGzTAAecwi4A4QEMIAEAAABt0wAHnGI9AeEBDCABAAAAbtMAB5wiLgDhASIAAQAAAG/TAAacolUA4QEMIAEAAABx0wAFnKLHAOEBDCABAAAAcdMAB5wCGgDhAQwgAQAAAHPTAAWcQhoA4QEMIAEAAABz0wAHnGIcAOEBFgQBAAAAdNMAB5wCNADhARYEAQAAAHXTAAecghcA4QEaQAEAAAB20wAHnAIaAOEBGkABAAAAdtMABZziFQDhARpAAQAAAHbTAAWcAhkA4QEMIAEAAAB50wAHnGJvAOEBDCABAAAAetMAB5wi6QDhAQwgAQAAAHvTAAee4sAB2QEaQAEAAAB80wAHnoJkAOEBGkABAAAAfNMABZ4CwQHhARpAAQAAAHzTAAWe4hUA4QEgQAEAAAB80wACnkKrANkBDCABAAAAgNMAB55C9wDhAQwgAQAAAIHTAAeeQlEA4QEMIAEAAACC0wAHnqIjAOEBFgQBAAAAg9MAB55iaQDhARwMAQAAAITTAAeeIsEB4QEMIAEAAACF0wAHnqKgANkBIAQBAAAAhtMAFp6iGADhASBAAQAAAIbTAAKeYioA4QEMIAEAAACI0wAHnmIbAOEBFgQBAAAAidMAB54CKgDhAQwgAQAAAIjTAAWeIi0A4QEMIAEAAACL0wAHnuIVAOEBGkABAAAAhtMABZ5izwDhARpAAQAAAIbTAAWfQsEB1QEMIAEAAACO0wAFn8JEAOEBDCABAAAAj9MAB5+CFwDhAQwgAQAAAJDTAAefghcA4QEMIAEAAACR0wAHnwIlAOEBFgQBAAAAktMAB58CPADhAQwgAQAAAJPTAAefghcA4QEMIAEAAACU0wAHn+JjAeEBDCABAAAAldMAB5/CGQHhAQwgAQAAAJbTAAefAs0A4QEMIAEAAACX0wAHn0J/AOEBDCABAAAAmNMAB59iTADhAQwgAQAAAI7TAAefIroA4QEMIAEAAACa0wAHn0J/AOEBDCABAAAAm9MAB59iHgDhAQwgAQAAAJzTAAefAjAA4QEMIAEAAACc0wAFnyIZAOEBDCABAAAAntMAB5+CFwDhARpAAQAAAJ/TAAefAhoA4QEaQAEAAACf0wAFnwIZAOEBDCABAAAAodMAB5+CIQDhARYEAQAAAKLTAAefwh8A4QEMIAEAAACj0wAHn+IfAOEBDCABAAAAo9MABZ8CGQDhAQwgAQAAAKzTAEefoicA4QEaQAEAAACt0wBHn4InAOEBFgQBAAAArtMAR58iKwDhAQwgAQAAAKjTAAefQisA4QEaQAEAAACw0wBFn+IVAOEBGkABAAAAsdMARZ/CGQDhARYEAQAAAKvTAAefAhkA4QEMIAEAAACs0wAHn4IwAOEBGkABAAAArdMAB5+iMADhARYEAQAAAK7TAAefokYA4QEMIAEAAACv0wAHn8IwAOEBGkABAAAArdMABZ/iFQDhARpAAQAAAK3TAAWfIhkA4QEMIAEAAACy0wAHnwIZAOEBDCABAAAAs9MAB5/CdQDhAQwgAQAAALTTAAef4h4A4QEMIAEAAAC10wAHn2LBAOEBDCABAAAAttMAB59CHQDhARYEAQAAALfTAAefYlEA4QEMIAEAAAC40wAHn2IeAOEBDCABAAAAudMAB5/iUgDhAQwgAQAAALrTAAefYjYA4QEMIAEAAAC70wAHn8I3AOEBDCABAAAAvNMAB59iNgDhAQwgAQAAAL3TAAefQjQA4QEMIAEAAAC+0wAHn4I7AOEBDCABAAAAv9MAB58iGQDhAQwgAQAAAMDTAAefghcA4QEaQAEAAADB0wAHnwIaAOEBGkABAAAAwdMABZ8CGQDhAQwgAQAAAMPTAAefoicA4QEaQAEAAADE0wAHn4IwAOEBGkABAAAAxdMAB5+ijgDhAQwgAQAAAMbTAAefoo4A4QEMIAEAAADH0wAHnwJSAOEBDCABAAAAydMABZ+iVADhAQwgAQAAAMnTAAefQmoA4QEMIAEAAADK0wAHnyIYAOEBDCABAAAAy9MAB59iJADhAQwgAQAAAMzTAAefYiQA4QEMIAEAAADN0wAHnwJmAOEBDCABAAAAztMAB5+CNwDhAQwgAQAAAM/TAAefIhgA4QEMIAEAAADQ0wAHoMLWAOEBDCABAAAA0dMAB6DiHgDhAR4AAQAAANLTAAaggkMA4QEMIAEAAADT0wAHoKIjAOEBDCABAAAA1NMAB6ACKgDhAQwgAQAAANLTAAWhIiIBcgINIAEAAADY0yAFomLBAXcCDSABAAAA2NMQBaNCIgF5Ag0gAQAAANjTAAWjAm8A4QEMIAEAAADZ0wAHowJvAOEBDCABAAAA2tMAB6NiNwDhAQwgAQAAANvTAAejYjcA4QEMIAEAAADc0wAHoyIYAOEBDCABAAAA3dMAB6PCHwDhAQwgAQAAAN7TAAejoicA4QEaQAEAAADf0wAHo0IrAOEBGkABAAAA39MABaOCMADhARpAAQAAAOHTAAejwjAA4QEaQAEAAADh0wAFo2IYAOEBDCABAAAA49MAB6TCugEQBBwMAQAAAObTIAWkAk8AFAQcDAEAAADm0xAFpQJPABgEHAwBAAAA5tMABabiFADKAQ0gAQAAAOjTEAWnAhUAzQENIEEEAADo0wAFqILBAXICGTABAAAARNogBamiwQF3AhkwAQAAAETaEAWqwsEBeQIZMAEAAABE2gAFqiIXAOEBDCABAAAA7NMAB6riwQHhAQwgAQAAAO3TAAeqIjUA4QEMIAEAAADu0wAHqoLgANkBDCABAAAA79MAB6pCFwDhAQwgAQAAAPDTAAeqwjMA4QEeIAEAAADx0wAGqkI6AOEBGkABAAAA8dMABaqCTADhAQwgAQAAAPPTAAeqokAA4QEMIAEAAAD00wAHqmIoAOEBGkABAAAA8dMABariHgDhAQwgAQAAAPbTAAeqYuQA4QEMIAEAAAD30wAHqiLXAOEBDCABAAAA+NMAB6oCtQHhAQwgAQAAAPnTAAeqwmcA4QEMIAEAAAD60wAHqiKrAOEBDCABAAAA+9MAB6oCZADhAQwgAQAAAPzTAAeqAi8A4QEMIAEAAAD90wAHqsIdAOEBDCABAAAA/tMAB6pidADhAQwgAQAAAP/TAAeqYtgA4QEMIAEAAAAA1AAHqsIiAOEBFgQBAAAAAdQAB6piHADhARYEAQAAAALUAAeqAi0A4QEWBAEAAAAD1AAHqmIcAOEBFgQBAAAABNQAB6pi4ADhAQwgAQAAAAXUAAeqYjYA4QEMIAEAAAAG1AAHqsJ7AOEBFgQBAAAAB9QAB6rCGgDhARwMAQAAAAjUAAeqAhkA4QEMIAEAAAAJ1AAHquIhAOEBDCABAAAACtQAB6piIADhAQwgAQAAAAvUAAeqgjEA4QEaQAEAAAAT1AAFqsJWAOEBDCABAAAADdQAB6oiIADhARpAAQAAABPUAAWq4iEA4QEMIAEAAAAP1AAHqmIgAOEBIgABAAAAENQABqoiGgDhARYEAQAAABHUAAeqwhoA4QEcDAEAAAAS1AAHqsI1AOEBGkABAAAAE9QAB6riFQDhARpAAQAAABPUAAWq4hUA4QEMIAEAAAAV1AAHqqIXAOEBHiABAAAAFtQABqrCGQDhARYEAQAAABfUAAeq4joA4QEeIAEAAAAY1AAGqqImAOEBIEABAAAAGNQAAqriJgDhAR4gAQAAABjUAASq4hUA4QEeIAEAAAAY1AACqgKGAOEBIEABAAAAFtQAAqqCTADhAQwgAQAAAB3UAAeqoqoA4QEMIAEAAAAe1AAHqmKRAOEBDCABAAAAHtQABapiMwDhAQwgAQAAACDUAAeq4hUA4QEeIAEAAAAW1AACqsIqAOEBDCABAAAAItQAB6rCQgDhAQwgAQAAACPUAAeqYokA4QEMIAEAAAAk1AAHqiJlAOEBHkABAAAAFtQABKqiFwDhAQwgAQAAACbUAAeq4j8A4QEMIAEAAAAn1AAHqiJAAOEBDCABAAAAKNQAB6pCJgDhAQwgAQAAACnUAAeqAkAB2QEeIAEAAAAq1AAGqoKWAOEBDCABAAAAK9QAB6pCJQDhASAAAQAAACrUAAKqIiYA4QEMIAEAAAAt1AAHquIVAOEBHiABAAAAKtQAAqriPwDhAR4AAQAAAC/UAAaqoiMA4QEMIAEAAAAw1AAHqsIjAOEBDCABAAAAMNQABapCKADhAQwgAQAAADLUAAeqIpsA4QEMIAEAAAAz1AAHquIVAOEBGkABAAAAL9QABaoCTwDhAQwgAQAAADXUAAeqwswA4QEMIAEAAAA21AAHqsLMAOEBDCABAAAAN9QAB6oCTwDhAR4AAQAAADjUAAaqAsIB4QEMIAEAAAA51AAHqqJ4AOEBDCABAAAAOtQAB6oi3gDhAQwgAQAAADvUAAeqIhgA4QEMIAEAAAA81AAHqoJFAOEBHgABAAAAKtQABKqCNgDhAQwgAQAAAD7UAAeqYiYA4QEMIAEAAABl2QBHqiIaAOEBFgQBAAAAQNQAB6qiPQDhAQwgAQAAAGfZAEWqQhwA4QEMIAEAAABC1AAHqiI0AOEBFgQBAAAAetkAR6pCHQDhAQwgAQAAAHvZAEeqok0A4QEMIAEAAAB82QBFqkItAOEBDCABAAAAfdkAR6pCOADhAQwgAQAAAI3ZAEeqAlgA4QEMIAEAAACO2QBFqsIdAOEBDCABAAAAj9kAR6oiXgDhAQwgAQAAAErUAAeqIjsA4QEMIAEAAABL1AAHqCLCATICGDABAAAATNQQBapCwgHZARgwAQAAAEzUAAWqgkcB4QEMIAEAAABO1AAHqmJ7AOEBIgABAAAAT9QABqqiJwDhARpAAQAAAFDUAAeq4iEA4QEMIAEAAABR1AAHqoIwAOEBGkABAAAAUtQAB6riOgDhAR4gAQAAAFPUAAaqYh4A4QEMIAEAAABU1AAHqgI4AOEBDCABAAAAVdQAB6ritADhAQwgAQAAAFbUAAeqwiYA4QEMIAEAAABX1AAHquImAOEBDCABAAAAU9QABaqCFwDhARpAAQAAAFnUAAeqAhkA4QEMIAEAAABa1AAHquIVAOEBDCABAAAAW9QAB6ri/ADhAQwgAQAAAFzUAAeqYi4B4QEMIAEAAABd1AAHqmKPAeEBDCABAAAAXtQAB6qihADhAQwgAQAAAF/UAAeq4kwA4QEgQAEAAABg1AACqoJ0AOEBDCABAAAAYdQAB6piUQDhAQwgAQAAAGLUAAeqoooA4QEMIAEAAABj1AAHqkKiAOEBDCABAAAAZNQAB6pCKgDhAR4gAQAAAGXUAAaqohgA4QEWBAEAAABm1AAHqqKKAOEBFgQBAAAAZ9QAB6rCGgDhARwMAQAAAGjUAAeqYhsA4QEMIAEAAABp1AAHqkIoAOEBDCABAAAAatQAB6piGwDhARYEAQAAAGvUAAeqoioA4QEcDAEAAABs1AAHqoIqAOEBDCABAAAAZdQAB6riFQDhARYEAQAAAG7UAAeqYjEA4QEcDAEAAABv1AAHqmIbAOEBDCABAAAAcNQAB6oCOgDhAR5AAQAAAHHUAAaqwhkA4QEWBAEAAABy1AAHqsICAOEBDCABAAAAc9QAB6pCpgDhAQwgAQAAAHTUAAeqAlYA4QEMIAEAAAB11AAHquIZAOEBIEABAAAAcdQAAqriHgDhAQwgAQAAAHfUAAeqInoA4QEWBAEAAAB41AAHqgIqAOEBDCABAAAAd9QABariFQDhAR4gAQAAAHHUAAKqIqcA4QEMIAEAAAB61AAFqgIwAOEBHiABAAAAcdQABKrCSQDhAR4gAQAAAH3UAAaqYh8A4QEgQAEAAAB91AACquIVAOEBHgABAAAAfdQAAqoipwDhAQwgAQAAAH/UAAWq4kkA4QEMIAEAAAB91AAFqqKjAOEBDCABAAAAgtQAB6qiJwDhAQwgAQAAAILUAAWq4mIA4QEMIAEAAACE1AAHqqJPAOEBDCABAAAAhdQAB6riogDhAQwgAQAAAIXUAAWqwoMB4QEMIAEAAACH1AAHqWJLAOcBGDABAAAAiNQQBapiSwDhARgwAQAAAIjUAAeqQksA4QEWBAEAAACK1AAHqsKBANkBHiABAAAAi9QABqrCMwDhAQwgAQAAAIzUAAeqYigA4QEMIAEAAACM1AAFqgI2AOEBDCABAAAAjtQAB6rCzADhAQwgAQAAAI/UAAeqQkkA4QEMIAEAAACQ1AAHqkJJAOEBDCABAAAAkdQAB6qiMQDhAQwgAQAAAJLUAAeqQkkA4QEMIAEAAACT1AAHqkJJAOEBDCABAAAAlNQAB6pCSQDhAQwgAQAAAJXUAAeqgiAA4QEMIAEAAACW1AAHqoIgAOEBDCABAAAAl9QAB6pCSQDhAQwgAQAAAJjUAAeqwjwA4QEiAAEAAADS1ABGqkJJAOEBDCABAAAAmtQAB6qCHADhARYEAQAAAJvUAAeqYiAA4QEMIAEAAADW1ABHqqI9AOEBDCABAAAA19QARapCSQDhAQwgAQAAANjUAEeqQkkA4QEMIAEAAACf1AAHqkJJAOEBDCABAAAAoNQAB6pCSQDhAQwgAQAAAKHUAAeqIn4A4QEMIAEAAACi1AAHqkJJAOEBDCABAAAAo9QAB6pipADhAQwgAQAAAKTUAAeqol4A4QEMIAEAAACl1AAHqkJaAOEBDCABAAAAptQAB6pCIADhAQwgAQAAAKfUAAeqwhkA4QEWBAEAAACo1AAHqmIbAOEBDCABAAAAqdQAB6qCIgDhARwMAQAAAKrUAAeqwh4A4QEiAAEAAACr1AAGqqInAOEBGkABAAAArNQAB6qCJwDhARYEAQAAAK3UAAeqgjAA4QEaQAEAAACu1AAHqqIwAOEBFgQBAAAAr9QAB6qCFwDhAQwgAQAAALDUAAeqohoA4QEWBAEAAACx1AAHqmIkAOEBFgQBAAAAstQAB6riIwDhARYEAQAAALPUAAeqQhwA4QEMIAEAAAC01AAHqQK0AOcBGDABAAAAtdQQBaoCtADhARgwAQAAALXUAAeqgikA4QEeAAEAAAC31AAGquIVAOEBGkABAAAAt9QABarCXADhAS4EAQAAALnUAAaqAjcA4QEMIAEAAAC61AAFqmJjAOEBDCABAAAAutQABaoCQADhARpAAQAAAIvUAAWqwswA4QEMIAEAAAC91AAHqqIkAOEBHAwBAAAAvtQAB6piGwDhAQwgAQAAAL/UAAeqghwA4QEWBAEAAADA1AAHqkJJAOEBDCABAAAAwdQAB6pCSQDhAQwgAQAAAMLUAAeqojEA4QEMIAEAAADD1AAHqiI1AOEBDCABAAAAxNQAB6pCSQDhAQwgAQAAAMXUAAeqQgUB4QEMIAEAAADG1AAHqoIcAOEBFgQBAAAAx9QAB6pCSQDhAQwgAQAAAMjUAAeqQkkA4QEMIAEAAADJ1AAHqsLMAOEBDCABAAAAytQAB6qCIADhAQwgAQAAAMvUAAeqgiAA4QEMIAEAAADM1AAHqkJJAOEBDCABAAAAzdQAB6qCQwDhAQwgAQAAAM7UAAeqYiAA4QEMIAEAAADP1AAHqoIgAOEBDCABAAAA0NQAB6riiwDhAQwgAQAAANHUAAeqwjwA4QEiAAEAAADS1AAGqkJJAOEBDCABAAAA09QAB6pCSQDhAQwgAQAAANTUAAeqghwA4QEWBAEAAADV1AAHqmIgAOEBDCABAAAA1tQAB6qiPQDhAQwgAQAAANbUAAWqQkkA4QEMIAEAAADY1AAHqkJJAOEBDCABAAAA2dQAB6pCSQDhAQwgAQAAANrUAAeqIjYA4QEMIAEAAADb1AAHqqJhAOEBFgQBAAAA3NQAB6pCSQDhAQwgAQAAAN3UAAeqAlgA4QEaQAEAAAC51AAFqWIkAOcBGDABAAAA39QQBapiJADhARgwAQAAAN/UAAeqQh0A4QEWBAEAAADh1AAHqiJ+AOEBDCABAAAA4tQAB6oiUgDhAQwgAQAAAOLUAAWqQkkA4QEMIAEAAADk1AAHqmJUAOEBDCABAAAA5dQAB6oC/wDhAQwgAQAAAObUAAeqwh0A4QEMIAEAAADn1AAHqiI7AOEBDCABAAAA6NQAB6rCSgDhAQwgAQAAAOnUAAeqQicA4QEMIAEAAADq1AAHquIVAOEBHgABAAAAi9QAAqpCKwDhAQwgAQAAAO3UAAWqIhwA4QEMIAEAAADt1AAHqiIaAOEBFgQBAAAA7tQAB6oCJgDhAR4AAQAAAO/UAAaq4hUA4QEaQAEAAADv1AAFqqIjAOEBFgQBAAAA8dQAB6rCAgDhAR4gAQAAAPLUAAaqQh0A4QEWBAEAAADz1AAHqqI8AOEBDCABAAAA9NQAB6piNwDhAQwgAQAAAPXUAAeqgh8A4QEMIAEAAAD21AAHqgJAAOEBGkABAAAAi9QABapCUQDhAQwgAQAAAPjUAAeqYlQA4QEMIAEAAAD51AAHqsIdAOEBDCABAAAAB9UABapCogDhAQwgAQAAAPvUAAeqghcA4QEaQAEAAAD81AAHqgIZAOEBDCABAAAA/dQAB6qCIQDhASIAAQAAAP7UAAaqojUA4QEWBAEAAAD/1AAHqkIgAOEBDCABAAAAANUAB6rCKADhARwMAQAAAAHVAAeqYhsA4QEMIAEAAAAC1QAHqqI/AOEBDCABAAAAA9UAB6rCVgDhARYEAQAAAArVAAWqwkoA4QEWBAEAAAAK1QAFquIVAOEBGkABAAAAi9QABaqiPADhAQwgAQAAAAfVAAeqIhgA4QEMIAEAAAAI1QAHquKfAOEBDCABAAAACdUAB6rCGgDhARYEAQAAAArVAAeqQqUA4QEeIAEAAAAL1QAGqmJjAOEBDCABAAAADNUAB6pCEgHhARYEAQAAAA3VAAeqghcA4QEWBAEAAAAO1QAHqqIkAOEBHAwBAAAAD9UAB6riuQDhARYEAQAAABDVAAeq4iAA4QEMIAEAAAAR1QAHqmJiAOEBDCABAAAAEtUAB6pCewDhAQwgAQAAABLVAAWqwlYA4QEWBAEAAAAd1QAFqsJKAOEBFgQBAAAAHdUABariFQDhARpAAQAAAAvVAAWqYiAA4QEMIAEAAAAX1QAHquIeAOEBDCABAAAAGNUAB6oCOADhAQwgAQAAABnVAAeq4jUA4QEMIAEAAAAa1QAHqiJXAOEBFgQBAAAAG9UAB6qCZQDhAQwgAQAAAAvVAAWqYqUA4QEWBAEAAAAd1QAHqkI2AeEBDCABAAAAHtUAB6oihQDhAQwgAQAAAB/VAAeqIlsA4QEMIAEAAAAg1QAHquKtAOEBDCABAAAAIdUAB6oiqQDhAQwgAQAAACLVAAeqQiAA4QEMIAEAAAAj1QAHqsIZAOEBFgQBAAAAJNUAB6qCIgDhARwMAQAAACXVAAeqghcA4QEaQAEAAAAm1QAHqgIaAOEBGkABAAAAJtUABariFQDhARpAAQAAACbVAAWqAhkA4QEMIAEAAAAp1QAHqqIpAOEBFgQBAAAAKtUAB6rCJQDhAQwgAQAAACvVAAeqghcA4QEgAAEAAAAs1QAGqgIZAOEBDCABAAAALdUAB6piwgHhAQwgAQAAADPVAAWqYh4A4QEWBAEAAAAv1QAHqoIXAOEBGkABAAAAMNUAB6riFQDhARYEAQAAADHVAAeqAhkA4QEMIAEAAAAy1QAHqoLhAOEBDCABAAAAM9UABaqidQDhAQwgAQAAAIvUAAWq4hYA4QEMIAEAAAA11QAHqoIxAOEBIAABAAAANtUAAqrCowHhAR4AAQAAADfVAAaq4h4A4QEaQAEAAAA41QAHquIVAOEBDCABAAAAOdUAB6rCVgDhARYEAQAAAD3VAAWqwkoA4QEWBAEAAAA91QAFqmIbAOEBDCABAAAAPNUAB6oCOADhARYEAQAAAD3VAAeq4p8A4QEMIAEAAAA+1QAHqoLCAeEBDCABAAAAP9UAB6qCfwDhARpAAQAAAEDVAAeqgh8A4QEMIAEAAABB1QAHquIVAOEBLgABAAAAQNUAAqoCKgDhARpAAQAAAEDVAAWqQlEA4QEMIAEAAABE1QAHqiJrAOEBDCABAAAARdUAB6oikwDZAR5AAQAAAEbVAAaqwjYA4QEMIAEAAABH1QAHqmI1AOEBDCABAAAASNUAB6miTwDnARgwAQAAAEnVEAWqok8A4QEYMAEAAABJ1QAHqkIdAOEBFgQBAAAAS9UAB6piTQDhAQwgAQAAAEzVAAeqYm4B4QEMIAEAAABN1QAHqiLiAOEBDCABAAAATtUAB6riVQDhAQwgAQAAAE/VAAeqwpoA4QEMIAEAAABP1QAFqkIaAOEBDCABAAAAUdUAB6pirQDhAQwgAQAAAFLVAAeqosIB4QEMIAEAAABT1QAHqmJGAOEBDCABAAAAVdUABaqiPADhAQwgAQAAAFXVAAWqIocA4QEMIAEAAABW1QAHqgJBAOEBDCABAAAAV9UAB6oiGgDhARYEAQAAAFjVAAeq4jUA4QEMIAEAAABZ1QAHqkIaAOEBDCABAAAAWtUAB6qCLADhAQwgAQAAAFvVAAeqgj8A4QEMIAEAAABc1QAHqsI4AOEBDCABAAAAXdUAB6qi3wDhAQwgAQAAAF7VAAeq4iEA4QEMIAEAAABf1QAHqgItAOEBIgABAAAAYNUABqqiPADhAQwgAQAAAGHVAAeqIiYA4QEeAAEAAABi1QAGqoIfAOEBDCABAAAAY9UAB6riFQDhARpAAQAAAGLVAAWqAioA4QEeAAEAAABi1QAEqgIZAOEBDCABAAAAZtUAB6qCMQDhARpAAQAAAGzVAAWqIiAA4QEaQAEAAABs1QAFqiKtAOEBDCABAAAAadUAB6qCFwDhARYEAQAAAGrVAAeqQjkA4QEWBAEAAABr1QAHqoKmAOEBGkABAAAAbNUABapiSQDhAQwgAQAAAG3VAAeqIjQA4QEiAAEAAABu1QAGqoIcAOEBFgQBAAAAb9UAB6piIADhAQwgAQAAAHDVAAeqYn0A4QEeIAEAAABx1QAGqgJAAOEBFgQBAAAActUAB6riFQDhAQwgAQAAAHPVAAeqYiAA4QEMIAEAAAB01QAHqqI9AOEBDCABAAAAdNUABaoCQADhARpAAQAAAHLVAEWq4hUA4QEeAAEAAABz1QBCqmIgAOEBDCABAAAAdNUAR6qiPQDhAQwgAQAAAHXVAEWqQnQA4QEMIAEAAABx1QAFqkIaAOEBDCABAAAAe9UAB6riIQDhAQwgAQAAAHzVAAeqIuIA4QEMIAEAAAB91QAHqiJeAOEBDCABAAAAftUAB6oiGADhAQwgAQAAAH/VAAWqguIA4QEMIAEAAAB/1QAFqqIjAOEBDCABAAAAgdUAB6rCcwDhAQwgAQAAAILVAAeqQnUA4QEMIAEAAACD1QAHqiJpAeEBDCABAAAAhNUAB6rCRADhAQwgAQAAAIXVAAeq4j8A4QEeIAEAAACG1QAGqkIoAOEBDCABAAAAh9UAB6oCWADhARpAAQAAAIbVAAWq4hUA4QEaQAEAAACG1QAFqmIuAOEBFgQBAAAAitUAB6oCQQDhAQwgAQAAAIvVAAeqYi4A4QEeIAEAAACM1QAGqgKGAOEBIAABAAAAjNUAAqriFQDhARpAAQAAAIzVAAWqAsIA4QEWBAEAAACP1QAHqiJ9AOEBDCABAAAAkNUAB6oCQADhARYEAQAAAJHVAAeqQi0A4QEaIAEAAACM1QAFqoIXAOEBFgQBAAAAk9UAB6pChwHhAQwgAQAAAJTVAAeqIloA4QEMIAEAAACV1QAHqqIYAOEBGkABAAAARtUABarCVgDhAQwgAQAAAJfVAAeqwlgA4QEMIAEAAACY1QAHquIVAOEBGkABAAAARtUABapi5ADhAQwgAQAAAJrVAAeqwjYA4QEMIAEAAACb1QAHqoIxAOEBFgQBAAAAnNUAB6pCbwDhAQwgAQAAAJ3VAAeqIhoA4QEWBAEAAACe1QAHqoIcAOEBFgQBAAAAn9UAB6rCcgDhAQwgAQAAAKDVAAeqok8A4QEMIAEAAACh1QAHqgItAOEBFgQBAAAAotUAB6qCogDhAQwgAQAAAKPVAAeqok0A4QEeAAEAAABG1QAEqmKLAeEBDCABAAAApdUAB6oiMADhAQwgAQAAAKbVAAeqQhoA4QEMIAEAAACn1QAHqsLCAeEBDCABAAAAqNUAB6piHgDhAR4AAQAAAKnVAAaqohgA4QEWBAEAAACq1QAHqsJyAOEBDCABAAAAq9UAB6riIQDhAQwgAQAAAKzVAAeqYiAA4QEiAAEAAACt1QAGqiIaAOEBFgQBAAAArtUAB6oiSADhAQwgAQAAAK/VAAeqgkMA4QEMIAEAAACw1QAHquKWAOEBDCABAAAAsdUAB6oiIADhAQwgAQAAALHVAAWqQjgA4QEMIAEAAACz1QAHquIVAOEBHgABAAAAqdUAAqqCUADhAQwgAQAAALXVAAeqYkAA4QEMIAEAAAC21QAHqsJ1AOEBHgABAAAAt9UABqpCSgDhAQwgAQAAALjVAAeqAkkA4QEeAAEAAAC31QAEquIVAOEBGkABAAAAt9UABapiIADhAQwgAQAAALvVAAeqgjUA4QEMIAEAAAC81QAHqiI8AOEBFgQBAAAAvdUAB6qCHADhARYEAQAAAL7VAAeqAjgA4QEMIAEAAAC/1QAHqsJCAOEBDCABAAAAwNUAB6oCMADhAQwgAQAAAKnVAAeqgjoA4QEMIAEAAADC1QAHqgKXAOEBDCABAAAAw9UAB6rCNADhAQwgAQAAAMTVAAeqYiAA4QEMIAEAAADF1QAHqqJGAOEBDCABAAAAxtUAB6qCSwHZAQwgAQAAAMfVAAeq4pQA4QEMIAEAAADI1QAHqiIbAOEBDCABAAAAydUAB6riRwHhAQwgAQAAAMrVAAeqQioA4QEMIAEAAADL1QAHqsKBAOEBFgQBAAAAzNUAB6oCdAHhAQwgAQAAAM7VAAWqAiYB4QEMIAEAAADO1QAHqgJYAOEBDCABAAAAz9UAB6piJADhAQwgAQAAANDVAAeqokAB4QEMIAEAAADR1QAHquIaAOEBDCABAAAA0tUAB6qCfwDhAR4gAQAAANPVAAaqohcA4QEiIAEAAADU1QAGqgKGAOEBFgQBAAAA1dUAB6oCIwDhAQwgAQAAANbVAAeq4rQA4QEMIAEAAADX1QAHqmLBAOEBDCABAAAA2NUAB6qCHwDhAQwgAQAAANnVAAeqwiYA4QEMIAEAAADa1QAHquIVAOEBDCABAAAA29UAB6riFQDhAR4AAQAAANPVAAKqgk4A4QEMIAEAAADd1QAHqoIWAOEBDCABAAAA3dUABaoiVwDhARYEAQAAAN/VAAeq4hUA4QEMIAEAAADg1QAHqgIqAOEBDCABAAAA09UAB6oCSwDhAQwgAQAAAOLVAAeqwowA4QEMIAEAAADj1QAHqgJGAOEBFgQBAAAA5NUAB6oiXgDhAQwgAQAAAOXVAAeqwlkA4QEMIAEAAADl1QAFqmIiAOEBFgQBAAAA59UAB6qCFwDhARYEAQAAAOjVAAeqYnIA4QEMIAEAAADp1QAHqkI5AOEBFgQBAAAA6tUAB6pCLgDhAQwgAQAAAOvVAAeq4kAA4QEMIAEAAADr1QAFqsLMAOEBDCABAAAA7dUAB6rCNADhARYEAQAAAO7VAAeq4iEA4QEMIAEAAADv1QAHqmIgAOEBIgABAAAA8NUABqoiGgDhARYEAQAAAPHVAAeqghwA4QEWBAEAAADy1QAHqsI0AOEBDCABAAAA89UAB6rCTADhAQwgAQAAAPTVAAeqAi8A4QEMIAEAAAD11QAHqsINAeEBDCABAAAA9tUAB6oipAHhAQwgAQAAAPzVAAWqwlYA4QEWBAEAAAD91QAFqsJKAOEBFgQBAAAA/dUABarCNADhAQwgAQAAAPrVAAeqwjQA4QEWBAEAAAD71QAHqoLhAOEBDCABAAAA/NUAB6qi8gDhARYEAQAAAP3VAAWq4qMA4QEMIAEAAAD+1QAHqeLCAecBGDABAAAA/9UQBariwgHhARgwAQAAAP/VAAeqgnwA4QEWBAEAAAAB1gAHqgI1AOEBDCABAAAAAtYABarCWQDhAQwgAQAAAALWAAWqYm8A4QEMIAEAAAAE1gAHqiJ9AOEBDCABAAAABdYAB6riVgHhAQwgAQAAAAfWAAWqAi8A4QEMIAEAAAAH1gAHqiJ/ANkBHiABAAAACNYABqqiiADhAQwgAQAAAAnWAAeqQisA4QEMIAEAAAAL1gAFqiIcAOEBDCABAAAAC9YABarCGQDhAQwgAQAAAAzWAAeqojQA4QEMIAEAAAAN1gAHqgIlAOEBFgQBAAAADtYAB6qCHADhARYEAQAAAA/WAAeqIi4A4QEMIAEAAAAQ1gAHqoIvAOEBFgQBAAAAEdYAB6oiHADhAQwgAQAAABLWAAeqIikA4QEeIAEAAAAT1gAGquIeAOEBDCABAAAAFNYAB6oCGgDhAR4AAQAAABPWAASq4hUA4QEeQAEAAAAT1gACqmIgAOEBDCABAAAAF9YAB6riMgDhAQwgAQAAABjWAAeqgpUB4QEMIAEAAAAZ1gAHqgImAOEBHiABAAAAGtYABqoiJgDhAQwgAQAAABvWAAeq4h8A4QEMIAEAAAAa1gAFquI/AOEBDCABAAAAHdYAB6oCbwHhAQwgAQAAAB7WAAeqIhoA4QEWBAEAAAAf1gAHquIVAOEBGkABAAAAGtYABapiXgDhARYEAQAAACHWAAeqghwA4QEWBAEAAAAi1gAHquIjAOEBFgQBAAAAI9YAB6qiJwDhAQwgAQAAACTWAAeqgmwA4QEWBAEAAAAl1gAHqoIcAOEBFgQBAAAAJtYAB6oCYQHhAQwgAQAAACfWAAeqghwA4QEWBAEAAAAo1gAHqsIaAOEBHAwBAAAAKdYAB6qCGQDhAQwgAQAAACrWAAeqYsMA4QEMIAEAAAAr1gAHqoJBAeEBDCABAAAALNYAB6riFQDhAQwgAQAAAC3WAAeq4lEA4QEMIAEAAAAu1gAHqmI3AOEBDCABAAAAL9YAB6piQADhAR4gAQAAADDWAAaqgkMA4QEMIAEAAAAx1gAHqkKYAOEBDCABAAAAMNYABakCwwHnARgwAQAAADPWEAWqAsMB4QEYMAEAAAAz1gAHqgKNAOEBFgQBAAAANdYAB6oisgDhAQwgAQAAADbWAAeq4joA4QEMIAEAAAA31gAHqkI1AOEBDCABAAAAONYAB6qCTwDhAQwgAQAAADnWAAeqQisA4QEMIAEAAAA71gAFqiIcAOEBDCABAAAAO9YAB6oiHADhAQwgAQAAADzWAAeqIhwA4QEMIAEAAAA91gAHqoI9AeEBDCABAAAAPtYAB6oCfQDhAS4EAQAAAD/WAAaqYlYA4QEMIAEAAABA1gAHqoIYAOEBDCABAAAAQdYAB6riFQDhARpAAQAAAD/WAAWq4iEA4QEMIAEAAABD1gAHqoIwAOEBGkABAAAARNYAB6oCQADhARpAAQAAAD/WAAWq4hUA4QEaQAEAAAA/1gAFqsJIAOEBDCABAAAAR9YAB6piVgDhAQwgAQAAAEjWAAeqghgA4QEMIAEAAABJ1gAHqkJ0AOEBHiABAAAAP9YABKriIQDhAQwgAQAAAEvWAAeqQnEA4QEaQAEAAABT1gBHqoInAOEBGkABAAAAVNYARapCKwDhAQwgAQAAAFXWAEWq4hUA4QEaQAEAAABW1gBFqiIcAOEBDCABAAAAUNYAB6oiGgDhASIAAQAAAFHWAAaqghwA4QEWBAEAAABS1gAHqmJxAOEBGkABAAAAU9YAB6qiMADhASAEAQAAAFPWAAKqwjAA4QEaQAEAAABT1gAFquIVAOEBGkABAAAAU9YABarCYADhAQwgAQAAAFfWAAeqIhoA4QEWBAEAAABY1gAHquIhAOEBDCABAAAAWdYAB6rCLADhAQwgAQAAAFvWAAeqojwA4QEMIAEAAABb1gAHquI3AOEBDCABAAAAXNYAB6qCHADhASIAAQAAAF3WAAaqwhgA4QEMIAEAAABe1gAFqgJ5AOEBDCABAAAAXtYABariHgDhAQwgAQAAAGDWAAeqAioA4QEMIAEAAABg1gAFqiI0AOEBFgQBAAAAYtYAB6pCGgDhAQwgAQAAAGPWAAeqYiIA4QEiBAEAAABk1gAGqoIZAOEBDCABAAAAZdYAB6piMgDhARYEAQAAAGbWAAeqYqcA4QEMIAEAAABn1gAHqqJtAOEBDCABAAAAaNYAB6oCLwDhAQwgAQAAAGnWAAeq4iMA4QEWBAEAAABq1gAHqsJzAOEBDCABAAAAa9YAB6rCnwHhAQwgAQAAAGzWAAeqgmwA4QEMIAEAAABt1gAHqiIuAOEBIgQBAAAAbtYABqrCIgDhARYEAQAAAG/WAAeqIhwA4QEMIAEAAABw1gAHqmLmAOEBDCABAAAAcdYAB6piQADhAQwgAQAAAHLWAAeqwh0A4QEMIAEAAABz1gAHqsIdAOEBDCABAAAAdNYAB6oiGQDhAR4AAQAAAHXWAAaqQisA4QEaQAEAAAB11gAFquIVAOEBGkABAAAAddYABaoiHADhAQwgAQAAAHjWAAeqIhoA4QEWBAEAAAB51gAHqoIsAOEBDCABAAAAetYAB6pCKwDhAQwgAQAAAHzWAAWqIhwA4QEMIAEAAAB81gAHqoJIAOEBDCABAAAAfdYAB6riRADhASIAAQAAAH7WAAaqgi4A4QEMIAEAAACA1gAFqqI8AOEBDCABAAAAgNYAB6qiSgDhAQwgAQAAAILWAAWqYi8A4QEMIAEAAACC1gAHqsIXAOEBDCABAAAAg9YAB6qCHADhARYEAQAAAITWAAeqYiAA4QEMIAEAAACF1gAHqkJJAOEBDCABAAAAhtYAB6qiDQHhAQwgAQAAAIfWAAeqQosA4QEMIAEAAACI1gAHqmJRAOEBDCABAAAAidYAB6riFQDhAQwgAQAAAIrWAAeqQmgA4QEMIAEAAACM1gAFqmI2AOEBDCABAAAAjNYABapiMAHhAQwgAQAAAI3WAAWqYqAA4QEMIAEAAACN1gAFqqIeAOEBDCABAAAAj9YAB6piNwDhAQwgAQAAAJDWAAeqoh4A4QEMIAEAAACR1gAHqgIaAOEBDCABAAAAkNYABaoiGgDhARYEAQAAAJPWAAeqghwA4QEWBAEAAACU1gAHqsIaAOEBHAwBAAAAldYAB6qCLwDhARYEAQAAAJbWAAeq4iEA4QEMIAEAAACX1gAHqoJJAOEBDCABAAAAmNYAB6oiGgDhASIAAQAAAJnWAAaqIhoA4QEWBAEAAACa1gAHqiKFAOEBDCABAAAAnNYABaoCXADhAQwgAQAAAJzWAAWqAhkA4QEMIAEAAACd1gAHqiIYAOEBDCABAAAAntYAB6oiLgDhAQwgAQAAAJ/WAAeqgn8A4QEMIAEAAACg1gAHqgJ4AOEBDCABAAAAodYAB6oiLgDhAQwgAQAAAKLWAAeqQj0A4QEMIAEAAACk1gAHqmI9AOEBDCABAAAApNYAB6qiSADhARpAAQAAAKXWAAeq4hUA4QEaQAEAAACl1gAFqsJUAOEBGkABAAAApdYABaoC4gDhAR4gAQAAAKjWAAaqAkAA4QEaQAEAAACp1gAFquIVAOEBHgABAAAAqNYAAqoCGQDhAQwgAQAAAKvWAAeqAkAA4QEaQAEAAACp1gBFquIVAOEBHgABAAAAqtYAQqpCdADhAQwgAQAAAKjWAAWqgoUA4QEaQAEAAACv1gAHqmIZAOEBIAQBAAAAr9YAAqrCIwDhARpAAQAAAK/WAAWqIsMB4QEMIAEAAACy1gAHqgK1AeEBDCABAAAAs9YAB6rCGADhAQwgAQAAALTWAAeqYioA4QEMIAEAAAC11gAHqoIYAOEBHiABAAAAttYABqrCGQDhARYEAQAAALfWAAeqgiIA4QEcDAEAAAC41gAHqqIYAOEBGkABAAAAttYABapiKgDhAQwgAQAAALrWAAeq4hUA4QEaQAEAAAC21gAFquIYAOEBHgABAAAAttYABKoiTADhARpAAQAAAL3WAAeqYh8A4QEaQAEAAAAI1gAFquI8AOEBDCABAAAAv9YAB6oiNADhAQwgAQAAAMDWAAeqIvQA4QEMIAEAAADB1gAHqsIYAOEBHiABAAAAwtYABqriOgDhAQwgAQAAAMPWAAeqwh4A4QEWBAEAAADE1gAHqsIaAOEBHAwBAAAAxdYAB6riGQDhARYEAQAAAMbWAAeqQiQA4QEWBAEAAADH1gAHqsIaAOEBHAwBAAAAyNYAB6pCKwDhAQwgAQAAAMrWAAWqIhwA4QEMIAEAAADK1gAHqiIaAOEBFgQBAAAAy9YAB6qCHADhASIAAQAAAMzWAAaqwhoA4QEcDAEAAADN1gAHqiJGAOEBDCABAAAAztYAB6piGwDhARYEAQAAAM/WAAeqAjAA4QEMIAEAAADC1gAFqoIfAOEBDCABAAAA0dYAB6pCwwHhAQwgAQAAANPWAAWq4lEA4QEMIAEAAADT1gAFqiIcAOEBDCABAAAA1NYAB6qCGQDhAQwgAQAAANXWAAeqIhoA4QEMIAEAAADW1gAHquI2AOEBFgQBAAAA19YAB6qimgDhAQwgAQAAANjWAAeq4rIA4QEeAAEAAADZ1gAGquIVAOEBDCABAAAA2tYAB6oCOADhAQwgAQAAANvWAAeq4hUA4QEMIAEAAADc1gAHqsIdAOEBDCABAAAA4NYABaqCHADhARYEAQAAAN7WAAeqAiUA4QEWBAEAAADf1gAHqgIZAOEBDCABAAAA4NYAB6piwwHhAQwgAQAAAOHWAAeqIiAA4QEMIAEAAADi1gAHqsIeAOEBFgQBAAAA49YAB6oCGgDhAQwgAQAAAOLWAAWqYgsB4QEMIAEAAADl1gAHquIVAOEBHkABAAAACNYAAqqCFwDhARYEAQAAAOfWAAeqoiMA4QEMIAEAAADo1gAHqsIjAOEBDCABAAAA6NYABapiKgDhAQwgAQAAAOrWAAeqAioA4QEMIAEAAADq1gAFqkIdAOEBFgQBAAAA7NYAB6pCSQDhAQwgAQAAAO3WAAeqQiAA4QEMIAEAAADu1gAHqkIWAOEBHiABAAAA79YABqoC2ADhAQwgAQAAAPDWAAeqAoYA4QEgQAEAAADv1gACqsJWAOEBFgQBAAAA+dYABarCSgDhARYEAQAAAPnWAAWq4hUA4QEeIAEAAADv1gACquIhAOEBDCABAAAA9dYAB6oCbgDhAQwgAQAAAPbWAAeqYqkA4QEeIAEAAADv1gAGqqJXAOEBDCABAAAA+NYAB6qilwDhARYEAQAAAPnWAAeqIh4A4QEMIAEAAAD61gAHquJhAOEBHgABAAAA+9YABqriFQDhARpAAQAAAPvWAAWqImMA4QEeAAEAAAD71gAEquJiAOEBHiABAAAA/tYABqoCYwDhAR4AAQAAAP7WAASqwhgA4QEMIAEAAAAA1wAHqkIdAOEBDCABAAAAAdcAB6piIgDhARYEAQAAAALXAAeq4p8A4QEMIAEAAAAD1wAHquJMAOEBDCABAAAABNcAB6qiHwDhAQwgAQAAAAPXAAWqom0A4QEMIAEAAAAD1wBHquJMAOEBDCABAAAAB9cAB6qCaQDhAQwgAQAAAAXXAEWqYhwA4QEWBAEAAAAJ1wAHqsKEAOEBDCABAAAACtcAB6qCGQDhAQwgAQAAAAvXAAeqohoA4QEWBAEAAAAM1wAHquIhAOEBDCABAAAADdcAB6rCGgDhARwMAQAAAA7XAAeqgjEA4QEaQAEAAAAS1wAFqiIgAOEBDCABAAAAEtcABapiIADhAQwgAQAAABHXAAeqQhQA4QEeIAEAAAAS1wAGquIVAOEBGkABAAAAEtcABapiHADhARYEAQAAABTXAAeqIm4A4QEeAAEAAAAV1wAGquJcAOEBDCABAAAAFtcAB6riFQDhARpAAQAAABXXAAWqghkA4QEMIAEAAAAY1wAHqsI7AOEBDCABAAAAGdcAB6pCiwDhAQwgAQAAABrXAAeqoh4A4QEMIAEAAAAb1wAHqgLmAOEBFgQBAAAAHNcAB6pCGgDhAQwgAQAAAB3XAAeqYhwA4QEWBAEAAAAe1wAHqoIZAOEBDCABAAAAH9cAB6rCdQDhAQwgAQAAACDXAAeqQiwA4QEMIAEAAAAh1wAHqsIiAOEBFgQBAAAAItcAB6oiGADhAQwgAQAAACPXAAeqQosA4QEMIAEAAAAk1wAHqmJIAOEBDCABAAAAJdcAB6oCOADhAQwgAQAAACbXAAeqIrIA4QEMIAEAAAAn1wAHqsIfAOEBDCABAAAAKNcAB6qCMQDhARpAAQAAADLXAAWqIiAA4QEeAAEAAAAy1wAEqqKqAOEBDCABAAAAK9cAB6pCiwDhAQwgAQAAACzXAAeqwuYA4QEeAAEAAAAt1wAGqqIjAOEBDCABAAAALtcAB6rCIwDhAQwgAQAAAC7XAAWq4hUA4QEaQAEAAAAt1wAFqiJXAOEBFgQBAAAAMdcAB6rCpgDhAR5AAQAAADLXAAaq4hUA4QEaQAEAAAAy1wAFqmIzAOEBGkABAAAANNcAB6pihgDhAQwgAQAAADXXAAeq4iEA4QEMIAEAAAA21wAHqiIrAOEBDCABAAAAN9cAB6pCKwDhARpAAQAAADTXAAWq4p8B4QEMIAEAAAA51wAHqmIcAOEBFgQBAAAAOtcAB6piGwDhAQwgAQAAADvXAAeqIjsA4QEMIAEAAAA81wAHquIVAOEBGkABAAAANNcABariYgDhAQwgAQAAAD7XAAeqwugA4QEMIAEAAAA/1wAHqgJHAOEBDCABAAAAQNcAB6riOgDhAQwgAQAAAEHXAAeqQn8A4QFEIAEAAABC1wAWquJVAOEBGkABAAAAQ9cAB6qCTADhAQwgAQAAAETXAAeqwpoA4QEaQAEAAABD1wAFquIVAOEBGkABAAAAQ9cABapiyADhAVZEAQAAAEfXAAWq4hkA4QEgQAEAAABC1wACqkK+AOEBDCABAAAASdcAB6oC8wDhAQwgAQAAAErXAAeqIhwA4QEMIAEAAABL1wAHqiIaAOEBFgQBAAAATNcAB6oicwDhAQwgAQAAAE3XAAeqIi8A4QEMIAEAAABO1wAHqkIdAOEBFgQBAAAAT9cAB6qiGgDhASIEAQAAAFDXAAaqQiAA4QEMIAEAAABR1wAHqsIaAOEBHAwBAAAAUtcAB6piGwDhAQwgAQAAAFPXAAeqwhkA4QEWBAEAAABU1wAHqmIeAOEBDCABAAAAVdcAB6oCMADhAQwgAQAAAFXXAAWqghcA4QEaQAEAAABX1wAHquIZAOEBGkABAAAAV9cABaoCGgDhARpAAQAAAFfXAAWq4hUA4QEgQAEAAABX1wACqgIZAOEBDCABAAAAW9cAB6qiKQDhARYEAQAAAFzXAAeqohoA4QEiAAEAAABd1wAGqiJFAOEBDCABAAAAXtcAB6oifQDhAQwgAQAAAF/XAAeqAlgA4QEMIAEAAABf1wAFqmIfAOEBFgQBAAAAYdcAB6piHwDhARYEAQAAAGLXAAeqAjQA4QEiBAEAAABj1wAGqgIZAOEBDCABAAAAZNcAB6qiJwDhARpAAQAAAG3XAEeqgicA4QEWBAEAAABu1wBHqkIrAOEBGkABAAAAb9cARariFQDhARpAAQAAAHDXAEWq4iEA4QEMIAEAAABp1wAHqiIaAOEBFgQBAAAAatcAB6pCIADhAQwgAQAAAGvXAAeqAhkA4QEMIAEAAABs1wAHqoIwAOEBGkABAAAAbdcAB6qiMADhARYEAQAAAG7XAAeqwjAA4QEaQAEAAABt1wAFquIVAOEBGkABAAAAbdcABaoiegDhARwMAQAAAHHXAAeqAmcA4QEMIAEAAABj1wAFqoIXAOEBIgABAAAAc9cABqoiIADhAR4gAQAAAI7XAASq4hUA4QEeAAEAAABC1wACqsKFAOEBIgQBAAAAdtcABqqiTQDhAQwgAQAAAHbXAAWqIi0A4QEMIAEAAAB41wAHqqK4AOEBDCABAAAAedcAB6oCGQDhAR4AAQAAAHrXAAaq4hUA4QEeAAEAAAB61wACqmIgAOEBDCABAAAAfNcAB6riGADhAR4AAQAAAHrXAASqgiEA4QEiAAEAAAB+1wAGqoK8AOEBIgABAAAAf9cABqrCIADhARwMAQAAAIDXAAeqYioA4QEeIAEAAACB1wAGquIVAOEBGkABAAAAgdcABaoCKgDhAR4gAQAAAIHXAASqIi0A4QEMIAEAAACE1wAHquJrAOEBDCABAAAAhNcABaqCJgDhAQwgAQAAAIbXAAeqwqYA4QEMIAEAAACH1wAHqsIkAOEBHiABAAAAQtcABqoiUADhAQwgAQAAAInXAAeqwnUA4QEcDAEAAACK1wAHqkIeAOEBDCABAAAAi9cAB6rCGADhARYEAQAAAIzXAAeqAhkA4QEMIAEAAACN1wAHqoJ7AOEBHiABAAAAjtcABqoCxgDhAQwgAQAAAI/XAAeq4hUA4QEaQAEAAACO1wAFquIfAOEBDCABAAAAktcABaoCPADhAQwgAQAAAJLXAAWq4uYA4QEWBAEAAACT1wAHqsJLAeEBIgABAAAAlNcABqpCmQDhARYEAQAAAJXXAAeqIvgA4QEMIAEAAACW1wAHqoLDAeEBDCABAAAAl9cAB6oCLwDhAQwgAQAAAJjXAAeqwnMA4QEMIAEAAACZ1wAHqmLkAOEBDCABAAAAmtcAB6rCgADhARYEAQAAAJvXAAeqosMB4QEMIAEAAACc1wAHqqJIAeEBDCABAAAAndcAB6rCTgDhAQwgAQAAAJ7XAAeqwsMB4QEMIAEAAACf1wAHquLDAeEBDCABAAAAoNcAB6oiNQDhAQwgAQAAAKHXAAeq4ngA4QEMIAEAAACi1wAHqgJAAOEBGkABAAAApdcABariFQDhARpAAQAAAKXXAAWqAiYA4QEeAAEAAACl1wAGquJCAOEBLkABAAAAptcABqrCGQDhARYEAQAAAKfXAAeqgiIA4QEcDAEAAACo1wAHqgJEAOEBDCABAAAAqdcAB6riOgDhAQwgAQAAAKrXAAeq4iYA4QEMIAEAAACq1wAFqqJXAOEBDCABAAAArNcAB6piHgDhARYEAQAAAK3XAAeqonsA4QEMIAEAAACu1wAHqkKiAOEBFgQBAAAAr9cAB6qCJwDhARpAAQAAAKbXAAWqQkAA4QEWBAEAAACx1wAHqiLmAOEBDCABAAAAstcAB6piSADhAQwgAQAAALPXAAeqwiYA4QEMIAEAAAC01wAHqgIqAOEBDCABAAAAtNcABapCGAHhAQwgAQAAALbXAAeqAiEA4QEMIAEAAAC31wAHqmIkAOEBIgABAAAAuNcABqpCKwDhAR5AAQAAAKbXAASqAsQB4QEcDAEAAAC61wAHquIVAOEBSEABAAAAptcAAqoCGQDhAQwgAQAAALzXAAeqghcA4QEWBAEAAAC91wAHqqIkAOEBHAwBAAAAvtcAB6piGwDhAQwgAQAAAL/XAAeq4ngA4QEMIAEAAADA1wAHqmIbAOEBFgQBAAAAwdcAB6riGADhAQwgAQAAALzXAAWqgiEA4QEiBAEAAADD1wAGqqIkAOEBHAwBAAAAxNcAB6piGwDhAQwgAQAAAMXXAAeqAhkA4QEMIAEAAADN1wBFqqInAOEBGkABAAAAztcARaqCJwDhARoEAQAAAM/XAEWqQisA4QEaIAEAAADQ1wBFquIVAOEBGkABAAAA0dcARariIQDhAQwgAQAAAMvXAAeqQiAA4QEMIAEAAADM1wAHqgIZAOEBDCABAAAAzdcABaqCMADhARpAAQAAAM7XAAWqojAA4QEWBAEAAADO1wAFqsIwAOEBDCABAAAAztcABariFQDhARpAAQAAAM7XAAWqgvQA4QEMIAEAAADS1wAHqoIkAOEBDCABAAAA09cAB6rCJADhAQwgAQAAANPXAAWq4jEA4QEMIAEAAADV1wAHqgIyAOEBDCABAAAA1dcABapiJgDhASoEAQQAANfXAAaqQokA4QEMIAEAAADY1wAHqiJPAOEBHgABAAAA2dcABqoCIwDhAQwgAQAAANrXAAeq4hkA4QEgQAEAAADZ1wACqiKMAOEBIgABAAAA3NcABqoiVwDhARYEAQAAAN3XAAeq4h4A4QEMIAEAAADe1wAHqiKSAOEBDCABAAAA39cAB6oCGgDhARpAAQAAANnXAAWqIhwA4QEMIAEAAADh1wAHqkIdAOEBFgQBAAAA4tcAB6oCGQDhAQwgAQAAAOjXAEeqoicA4QEaQAEAAADp1wBHqoInAOEBFgQBAAAA6tcAR6pCKwDhARpAAQAAAOvXAEWq4hUA4QEaQAEAAADs1wBFqgIZAOEBDCABAAAA6NcAB6qCMADhARpAAQAAAOnXAAeqojAA4QEgAAEAAADp1wACqsIwAOEBGkABAAAA6dcABariFQDhARpAAQAAAOnXAAWqwjYA4QEMIAEAAADt1wAHqsJWAOEBFgQBAAAAAtgABarCSgDhARYEAQAAAALYAAWq4hwB4QEMIAEAAADw1wAHqkJpAOEBDCABAAAA8dcAB6rCdQDhAQwgAQAAAPLXAAeq4hUA4QEaQAEAAADZ1wAFqkIaAOEBDCABAAAA9NcAB6piGwDhAQwgAQAAAPXXAAeqQn0A4QEMIAEAAAD21wAHqmIaAOEBDCABAAAA99cAB6pCJADhASIAAQAAAPjXAAaqwlwA4QEMIAEAAAD51wAHqqJgAOEBDCABAAAA+dcABaqCFwDhAQwgAQAAAPvXAAeqIi0A4QEMIAEAAAD81wAHqkLfAOEBDCABAAAA/dcAB6oCOADhAQwgAQAAAP7XAAeq4joA4QEMIAEAAAD/1wAHquIgAOEBHiABAAAAANgABqoCbgDhAQwgAQAAAAHYAAeqQhwA4QEiAAEAAAAC2AAGqgI2AdkBSCABAAAAA9gABqpCFwDhAQwgAQAAAATYAAeqgkgA4QEMIAEAAAAG2AAFqqI8AOEBDCABAAAABtgABaqC6wDhAQwgAQAAAAfYAAeqojwA4QEMIAEAAAAI2AAHqiKhAOEBHiABAAAACdgABqoCIwDhAQwgAQAAAArYAAeq4jEA4QEMIAEAAAAL2AAHqmIZAOEBIAQBAAAACdgAAqrCIwDhAR4AAQAAAAnYAASqwlYA4QEWBAEAAAAW2AAFqsJKAOEBFgQBAAAAFtgABariVgDhARwMAQAAABDYAAeqYhsA4QEMIAEAAAAR2AAHquIVAOEBHgABAAAACdgAAqrCZwDhAQwgAQAAABPYAAeqYiUB4QEMIAEAAAAU2AAHqsKMAOEBDCABAAAAFdgAB6qiNwDhARYEAQAAABbYAAeqghcA4QEMIAEAAAAX2AAHqiJeAOEBDCABAAAAGNgAB6rCWQDhAQwgAQAAABjYAAWqAjQA4QEWBAEAAAAa2AAHqkI5AOEBFgQBAAAAG9gAB6pCHgDhAQwgAQAAABzYAAeqwhgA4QEuIAEAAAAd2AAGquIZAOEBIEABAAAAHdgAAqqCKADhAQwgAQAAAB/YAAeq4hUA4QEaQAEAAAAd2AAFqsIgAOEBHAwBAAAAIdgAB6oCMADhAR4gAQAAAB3YAASq4h4A4QEMIAEAAAAj2AAHqgIcAOEBDCABAAAAJNgAB6rCFwDhARYEAQAAACXYAAeq4iEA4QEMIAEAAAAm2AAHqiIaAOEBFgQBAAAAJ9gAB6rCGgDhARwMAQAAACjYAAeqQiAA4QEMIAEAAAAp2AAHqqJOAOEBDCABAAAAKtgAB6oiGgDhARYEAQAAACvYAAeqwhoA4QEcDAEAAAAs2AAHqiImAOEBDCABAAAALdgAB6piGwDhARYEAQAAAC7YAAeqgjsA4QEMIAEAAAAv2AAHqiIcAOEBDCABAAAAMNgAB6piLgDhARYEAQAAADHYAAeqwhoA4QEcDAEAAAAy2AAHqsIcAOEBDCABAAAAL9gABariRADhARYEAQAAADTYAAeqghwA4QEWBAEAAAA12AAHqsIaAOEBHAwBAAAANtgAB6oiIADhAQwgAQAAADrYAAWqYiAA4QEMIAEAAAA42AAHqqI9AOEBDCABAAAAONgABapCSQDhAQwgAQAAADrYAAeqYqsA4QEMIAEAAAA72AAHqoKrAOEBDCABAAAAKtgABaqiVwDhAQwgAQAAAD3YAAeqImMA4QEMIAEAAAA92AAFqiIeAOEBDCABAAAAP9gAB6rCGADhASIgAQAAAEDYAAaqwiAA4QEcDAEAAABB2AAHqgIwAOEBDCABAAAAQNgABaqCUQDhAQwgAQAAAEPYAAeqQmgA4QEMIAEAAABD2AAFqoIXAOEBGkABAAAARdgAB6oCGgDhARpAAQAAAEXYAAWqoicA4QEaQAEAAABH2AAHqkIrAOEBGkABAAAAR9gABaqCMADhARpAAQAAAEnYAAeqwjAA4QEaQAEAAABJ2AAFqmKMAOEBDCABAAAAS9gAB6piSADhAQwgAQAAAEzYAAeqIsQB4QEMIAEAAABN2AAHqmIbAOEBDCABAAAATtgAB6rCYQDhAQwgAQAAAE/YAAeqguQA4QEMIAEAAABQ2AAHqgIcAOEBDCABAAAAJNgABaqiGgDhAQwgAQAAAFLYAAeqgoUA4QEMIAEAAABT2AAHqsKAAOEBFgQBAAAAVNgAB6qCFwDhAQwgAQAAAFXYAAeqwjwA4QEWBAEAAABW2AAHqqI3AOEBDCABAAAAV9gAB6oiNADhARYEAQAAAFjYAAeqQh0A4QEiAAEAAABZ2AAGqsIfAOEBDCABAAAAWtgAB6rCWADhAQwgAQAAAFvYAAeq4joA4QEMIAEAAABc2AAHqkJrAOEBFgQBAAAAXdgAB6rCGgDhARwMAQAAAF7YAAeqgj0A4QEWBAEAAABf2AAHqqIaAOEBFgQBAAAAYNgAB6oiOwDhAQwgAQAAAGHYAAeqIu8A4QEMIAEAAABi2AAHqiJrAOEBDCABAAAAY9gAB6oiGgDhARYEAQAAAGTYAAeqwhoA4QEcDAEAAABl2AAHquIhAOEBDCABAAAAZtgAB6qCmgHhAQwgAQAAAGfYAAeqIhoA4QEWBAEAAABo2AAHqoIcAOEBFgQBAAAAadgAB6pCLQDhAQwgAQAAAGrYAAeqQj4A4QEeIAEAAABr2AAGqgJAAOEBGkABAAAAa9gABapCKADhAQwgAQAAAG3YAAeq4hUA4QEaQAEAAABr2AAFqsJCAOEBDCABAAAAb9gAB6pCSQDhAQwgAQAAAHDYAAeq4uUA4QEeAAEAAABr2AAEqqJUAOEBDCABAAAActgAB6riOgDhAR4gAQAAAHPYAAaqYhsA4QEMIAEAAAB02AAHqqInAOEBGkABAAAAetgAR6qCJwDhARYEAQAAAHvYAEeqQisA4QEaQAEAAAB82ABFquIVAOEBIAABAAAAfdgAQqpiMQDhARwMAQAAAH7YAEeqgjAA4QEaQAEAAAB62AAHqqIwAOEBIEABAAAAetgAAqrCMADhARpAAQAAAHrYAAWq4hUA4QEgBAEAAAB62AACqmIxAOEBHAwBAAAAftgAB6piGwDhARYEAQAAAH/YAAeqwocA4QEMIAEAAACA2AAHquIYAOEBDCABAAAActgABarCOwDhAQwgAQAAAILYAAeqAi0A4QEiAAEAAACD2AAGqoKJAOEBGkABAAAAA9gABapCfgDhAQwgAQAAAIXYAAeq4hkA4QEaQAEAAAAD2AAFqoJYAOEBDCABAAAAh9gAB6riHgDhAR4AAQAAAIjYAAaq4hUA4QEaQAEAAACI2AAFqiKSAOEBHiABAAAAitgABqqiGADhASBAAQAAAIrYAAKq4hUA4QEaQAEAAACK2AAFqoJMAOEBDCABAAAAjdgAB6piQgDhAQwgAQAAAIrYAAWqAioA4QEeAAEAAACI2AAEquIVAOEBGkABAAAAA9gABaqCrADhAQwgAQAAAJHYAAeqokYA4QEMIAEAAACS2AAHqkIgAOEBDCABAAAAk9gAB6piJADhARYEAQAAAJTYAAeqIqAA4QEMIAEAAACV2AAHqmIbAOEBDCABAAAAltgAB6qiNwDhARYEAQAAAJfYAAeqgn8A4QEMIAEAAACY2AAHqgIZAOEBDCABAAAAmdgAB6qiJwDhARpAAQAAAJrYAAeq4iEA4QEMIAEAAACb2AAHqgIZAOEBDCABAAAAnNgAB6qCMADhARpAAQAAAJ3YAAeqwioA4QEeIAEAAACe2AAGqoInAOEBGkABAAAAntgABapCKwDhARpAAQAAAJ7YAAWq4hUA4QEaQAEAAACe2AAFquI6AOEBDCABAAAAotgAB6oilADhAQwgAQAAAKPYAAeqYkkA4QEMIAEAAACk2AAHquIWAOEBHkABAAAApdgABqpiKQDhASAEAQAAAKXYAAKqwhgA4QEMIAEAAACn2AAHqoIWAOEBGkABAAAApdgABaoCGQDhAQwgAQAAAKnYAAeq4hgA4QEMIAEAAACp2AAFquIVAOEBHgABAAAApdgAAqoCegDhAQwgAQAAAKzYAAeqom0A4QEMIAEAAACt2AAHqiL4AOEBDCABAAAArtgAB6qiJwDhAQwgAQAAAK/YAAeqQh0A4QEWBAEAAACw2AAHqoIsAOEBDCABAAAAsdgAB6qiQAHZAR4AAQAAALLYAAaq4ngA4QEMIAEAAACz2AAHquIVAOEBGkABAAAAstgABarCVgDhARYEAQAAALfYAAWqwkoA4QEWBAEAAAC32AAFquJJAeEBFgQBAAAAt9gAB6pCmwDhAQwgAQAAALjYAAeqYpsA4QEeIAEAAAC52AAGqoJMAOEBDCABAAAAutgAB6riFQDhARpAAQAAALnYAAWqYs8A4QEeIAEAAAC52AAEqqKFAOEBDCABAAAAvdgAB6qiQAHhAQwgAQAAAL7YAAeqQvcA4QEMIAEAAACy2AAFqkLEAdkBDCABAAAAwNgAB6rCbQDhAQwgAQAAAMHYAAeqYsQB4QEMIAEAAADC2AAHqqLAAdkBHkABAAAAw9gABqrCGQDhASIEAQAAAMTYAAaqohcA4QEMIAEAAADF2AAHqkJOAOEBDCABAAAAxtgAB6oiZQDhAQwgAQAAAMbYAAWqorUA4QEMIAEAAADI2AAHqoLEAeEBDCABAAAAydgAB6oCLgHhAQwgAQAAAMrYAAeqImIA4QEMIAEAAADL2AAHqgImAOEBDCABAAAAzNgAB6riFQDhASBAAQAAAMPYAAKqIicA4QEMIAEAAADO2AAHquIeAOEBDCABAAAAz9gAB6rCGADhAQwgAQAAANDYAAeqAjAA4QEMIAEAAADQ2AAFqqLvAOEBDCABAAAA0tgAB6rivwDhAQwgAQAAANPYAAeqosMA4QEMIAEAAADT2AAFqqI0AOEBDCABAAAA1dgAB6pilADhAQwgAQAAANbYAAeq4oEA4QEMIAEAAADW2AAFqiJjAOEBGkABAAAAw9gABaoisgDhAQwgAQAAANnYAAeqYsEA4QEMIAEAAADa2AAHq6LEAdUBDCABAAAA29gABasiagDhAQwgAQAAANzYAAerwsQB2QEMIAEAAADb2AAHrOLEAdUBDCABAAAA3tgABawCxQHZAQwgAQAAAN/YAAesIsUB2QEMIAEAAADe2AAFrELFAdkBDCABAAAA4dgAB61iDAEKAg0gAQAAAOTYIAWuogwBDwINIAEAAADk2BAFrKIMARECDSABAAAA5NgABa9ixQHZAQwgAQAAAOXYAAevwhgB4QEMIAEAAADm2AAHr4LFAdkBDCABAAAA59gAB6+ixQHZAQwgAQAAAOjYAAWwovEA2QEMIAEAAADp2AAHsMIzAOEBDCABAAAA6tgAB7DCGQDhARYEAQAAAOvYAAewYhsA4QEMIAEAAADs2AAHsIIiAOEBHAwBAAAA7dgAB7CiigDhARYEAQAAAO7YAAewwhoA4QEcDAEAAADv2AAHsGIbAOEBDCABAAAA8NgAB7CCfwDhAQwgAQAAAPHYAAewAioA4QEMIAEAAADx2AAFsOIVAOEBIgABAAAA89gABrCCTADhAQwgAQAAAPTYAAewQq8A4QEMIAEAAAD12AAHsMJ1AOEBDCABAAAA9tgAB7ACJwDhAR4AAQAAAPfYAAawwiMA4QEMIAEAAAD32AAFsEJXAOEBDCABAAAA+dgAB7DCVgDhARYEAQAAAP3YAAWwwkoA4QEWBAEAAAD92AAFsCJGAOEBDCABAAAA/NgAB7CiNwDhARYEAQAAAP3YAAewokwA4QEMIAEAAAD+2AAHsAJPAOEBDCABAAAA/9gAB7BCqwDhAQwgAQAAAADZAAewwsUB4QEMIAEAAAAB2QAHsII1AOEBDCABAAAAAtkAB7DirgDhAR4gAQAAAAPZAAawAoYA4QEgQAEAAAAD2QACsOIVAOEBGkABAAAAA9kABbCCzwDhAQwgAQAAAAPZAAWw4s4A4QEWBAEAAAAH2QAHsEJrAOEBHiABAAAACNkABrDiFQDhAR4AAQAAAAjZAAKwonUA4QEeIAEAAAAI2QAEsII2AOEBDCABAAAAC9kAB7AisQDhASIgAQAAAAzZAAaw4swA4QEMIAEAAAAM2QAHsII9AOEBDCABAAAADtkAB7HCJwHnARgwAQAAAA/ZEAWwwicB4QEeAAEAAAAQ2QAGsEIoAOEBDCABAAAAEdkAB7DCGADhARYEAQAAABLZAAewoiMA4QEMIAEAAAAT2QAHsMJWAOEBFgQBAAAAGtkABbDCSgDhARYEAQAAABrZAAWwYjcA4QEMIAEAAAAW2QAHsEIOAeEBDCABAAAAENkABbCiUgDhAQwgAQAAABjZAAewgiQA4QEMIAEAAAAZ2QAHsCJ6AOEBIgABAAAAGtkABrACZwDhAQwgAQAAAA7ZAAWwIocA4QEMIAEAAADp2AAFsGIeAOEBDCABAAAAHdkAB7AiRgDhAQwgAQAAAB7ZAAewAjgA4QEMIAEAAAAf2QAHsAIwAOEBDCABAAAAHdkABbAiGQDhAQwgAQAAAOnYAAWwwvwA4QEMIAEAAAAi2QAHsAKgAOEBDCABAAAAI9kAB7AivADhARYEAQAAACTZAAewIgMB4QEMIAEAAAAl2QAHsELpAOEBDCABAAAAJtkAB7DCagDhAQwgAQAAACfZAAewwhkA4QEMIAEAAAAo2QAHsIIiAOEBFgQBAAAAKdkAB7AiagDhAQwgAQAAACrZAAewAi4A4QEMIAEAAAAr2QAHsIJNAOEBDCABAAAALNkAB7DCGQDhARYEAQAAAC3ZAAewgooA4QEMIAEAAAAu2QAHsEJ7AOEBDCABAAAALtkABbBiHgDhARYEAQAAADDZAAewYiIA4QEMIAEAAAAx2QAHsEJOAOEBHkABAAAAMtkABrCCTADhAQwgAQAAADPZAAewIkYA4QEMIAEAAAA02QAHsOIVAOEBGkABAAAAMtkABbCiIwDhARYEAQAAADbZAAewImUA4QEeIAEAAAAy2QAEsAJqAOEBDCABAAAAONkAB7CiNQHhAQwgAQAAADnZAAewglgA4QEMIAEAAAA62QAFsCIaAOEBFgQBAAAAO9kAB7DiNQDhAQwgAQAAADzZAAewghcA4QEWBAEAAAA92QAHsEJrAOEBFgQBAAAAPtkAB7AiNwDhAQwgAQAAADrZAAWwQiQA4QEiAAEAAABA2QAGsAI8AOEBDCABAAAAQdkAB7DiJADhAQwgAQAAAELZAAewghcA4QEaQAEAAABD2QAHsAIZAOEBDCABAAAARNkAB7BiGgDhAQwgAQAAAEXZAAewYr8A4QEWBAEAAABG2QAHsEIgAOEBDCABAAAAR9kAB7AiegDhARwMAQAAAEjZAAewYiIA4QEWBAEAAABJ2QAHsMJRAOEBDCABAAAAStkAB7DiRADhARYEAQAAAEvZAAewghwA4QEWBAEAAABM2QAHsMIaAOEBHAwBAAAATdkAB7BCLQDhAQwgAQAAAE7ZAAew4lIA4QEMIAEAAABP2QAHsEJJAOEBDCABAAAAUNkAB7CCLwDhAS5AAQAAAFHZAAawAkAA4QEaQAEAAABR2QAFsEIoAOEBDCABAAAAU9kAB7DiFQDhARpAAQAAAFHZAAWwAkAA4QEaQAEAAABS2QBFsEIoAOEBDCABAAAAVtkAB7DiFQDhARpAAQAAAFTZAEWwYrEA4QEMIAEAAABY2QAFsEJ7AOEBDCABAAAAWNkABbCidQDhARpAAQAAAFHZAAWwYh4A4QEMIAEAAABb2QAHsCIaAOEBFgQBAAAAXNkAB7DCGgDhARwMAQAAAF3ZAAewAjgA4QEMIAEAAABe2QAHsIIXAOEBFgQBAAAAX9kAB7DiPwDhARpAAQAAAGDZAAewAkAA4QEaQAEAAABg2QAFsEIoAOEBDCABAAAAYtkAB7ACWADhARpAAQAAAGDZAAWw4hUA4QEeQAEAAABg2QACsGImAOEBDCABAAAAZdkAB7AiGgDhARYEAQAAAGbZAAewoj0A4QEMIAEAAABl2QAFsEIcAOEBDCABAAAAaNkAB7DiHwDhAQwgAQAAAIDcAAWwIhwA4QEMIAEAAABq2QAHsMIeAOEBDCABAAAAa9kAB7BCHQDhASIEAQAAAGzZAAawAhkA4QEMIAEAAABy2QBFsKInAOEBGkABAAAAc9kARbCCJwDhARpAAQAAAHTZAEWwQisA4QEaQAEAAAB12QBFsOIVAOEBGkABAAAAdtkARbACGQDhAQwgAQAAAHLZAAWwgjAA4QEaQAEAAABz2QAFsKIwAOEBGkABAAAAc9kABbDCMADhARpAAQAAAHPZAAWw4hUA4QEaQAEAAABz2QAFsKJNAOEBDCABAAAAbNkABbCCNwDhAQwgAQAAAHjZAAewYh8A4QEMIAEAAAB52QAHsCI0AOEBFgQBAAAAetkAB7BCHQDhAQwgAQAAAHvZAAewok0A4QEMIAEAAAB72QAFsEItAOEBDCABAAAAfdkAB7BiIADhAQwgAQAAAH7ZAAewwtwA4QEMIAEAAAB/2QAHsALiAOEBDCABAAAAgNkAB7AifQDhAQwgAQAAAIHZAAewwh8A4QEMIAEAAACC2QAHsCIcAOEBDCABAAAAg9kAB7DiIADhAR4AAQAAAITZAAawglIA4QEiAAEAAACF2QAGsKJSAOEBFgQBAAAAhtkAB7CiKADhAQwgAQAAAIXZAAWwwhgA4QEMIAEAAACI2QAHsAI0AOEBDCABAAAAidkAB7BiIADhAQwgAQAAAIrZAAewQkkA4QEMIAEAAACL2QAHsOIeAOEBDCABAAAAjNkAB7BCOADhAQwgAQAAAI3ZAAewAlgA4QEMIAEAAACN2QAFsMIdAOEBDCABAAAAj9kAB7AifQDhAQwgAQAAAJDZAAewghcA4QEWBAEAAACR2QAHsCJGAOEBDCABAAAAktkAB7BCMAHZAR4AAQAAAJPZAAaw4hUA4QEeAAEAAACT2QACsOLvAOEBHiABAAAAldkABrACnwDhAQwgAQAAAJbZAAew4hUA4QEaQAEAAACV2QAFsALwAOEBHgABAAAAldkABLAimwDhAR4AAQAAAJnZAAawAkAA4QEgQAEAAACZ2QACsEIoAOEBDCABAAAAm9kAB7DiFQDhAR4AAQAAAJnZAAKwQnQA4QEeAAEAAACZ2QAEsGKkAOEBDCABAAAAntkAB7DijwDhAR4AAQAAAJ/ZAAawgn8A4QEMIAEAAACg2QAHsCJuAOEBDCABAAAAodkAB7DiFQDhARpAAQAAAJ/ZAAWw4rEA4QEeAAEAAACf2QAEsMJ+AOEBDCABAAAApNkAB7CCbwDhAQwgAQAAAKXZAAewImsA4QEeIAEAAACm2QAGsOI6AOEBDCABAAAAp9kAB7BiGwDhAQwgAQAAAKjZAAew4hUA4QEaQAEAAACm2QAFsGIbAOEBFgQBAAAAqtkAB7ACKgDhAR4gAQAAAKbZAASwoigA4QEaQAEAAACT2QAFsOI2AOEBHgABAAAArdkABrBiKQDhARYEAQAAAK7ZAAewoiMA4QEWBAEAAACv2QAHsGJpAOEBHAwBAAAAsNkAB7BiGwDhAQwgAQAAALHZAAewQiMB4QEMIAEAAACy2QAHsEIbAeEBDCABAAAAs9kAB7DipwHZAR5AAQAAALTZAAawAiMA4QEMIAEAAAC12QAHsKImAOEBGkABAAAAtNkABbDiFQDhARpAAQAAALTZAAWwoqYA4QEMIAEAAAC42QAHsGI3AOEBDCABAAAAudkAB7AiswDhARpAAQAAALTZAAWwYo8B4QEMIAEAAAC72QAHsIIaAOEBDCABAAAAvNkAB7DiFQDhAQwgAQAAAL3ZAAewIoAA4QEMIAEAAAC+2QAHsIIhAOEBFgQBAAAAv9kAB7CiJADhARwMAQAAAMDZAAewgloA4QEMIAEAAADB2QAHsOLFAeEBDCABAAAAwtkAB7CCdgDhAQwgAQAAAMPZAAew4hUA4QEMIAEAAADE2QAHsIJ2AOEBDCABAAAAw9kAB7ACxgHhAQwgAQAAAMbZAAewQuYA2QEMIAEAAADH2QAHsOI6AOEBDCABAAAAyNkAB7DiRADhARYEAQAAAMnZAAewAj0A4QEiAAEAAADK2QAGsGIcAOEBFgQBAAAAy9kAB7DCwADhAQwgAQAAAMzZAAew4skA4QEMIAEAAADN2QAHsIJNAOEBDCABAAAAztkAB7AiHADhAQwgAQAAAM/ZAAewQqIA4QEMIAEAAADQ2QAHsGLvAOEBDCABAAAA0dkAB7BCUQDhAQwgAQAAANLZAAewYpEA4QEMIAEAAADS2QAFsCJ9AOEBDCABAAAA1NkAB7CiKQDhAQwgAQAAANXZAAewwjcA4QEWBAEAAADW2QAHsEIgAOEBDCABAAAA19kAB7DCKADhARwMAQAAANjZAAewYhsA4QEMIAEAAADZ2QAHsKJcAOEBDCABAAAA2tkAB7BCHQDhARYEAQAAANvZAAew4tsA4QEMIAEAAADc2QAHsEK8AOEBDCABAAAA3dkAB7AitQDhAR4AAQAAAN7ZAAawghcA4QEWBAEAAADf2QAHsOIeAOEBDCABAAAA4NkAB7DiFQDhAR4AAQAAAN7ZAAKwIjUA4QEMIAEAAADi2QAHsEJGAOEBHgABAAAA3tkABLDiMQHhAQwgAQAAAOTZAAewghYA4QEMIAEAAADp2QAFsKL2AOEBFgQBAAAA5tkAB7DiHgDhAQwgAQAAAOfZAAewAjgA4QEMIAEAAADo2QAHsCL4AOEBDCABAAAA6dkAB7ACZADhAQwgAQAAAOrZAAewgk0A4QEMIAEAAADr2QAHsIJNAOEBDCABAAAA7NkAB7BiHADhARYEAQAAAO3ZAAewAkgA4QEMIAEAAADu2QAHsCKQANkBHiABAAAA79kABrDCFwDhARYEAQAAAPDZAAewAhkA4QEMIAEAAADx2QAHsKInAOEBGkABAAAA99kAR7CCJwDhARpAAQAAAPjZAEWwQisA4QEaQAEAAAD52QBFsOIVAOEBGkABAAAA+tkARbACGQDhAQwgAQAAAPbZAAewgjAA4QEaQAEAAAD32QAHsKIwAOEBGkABAAAA99kABbDCMADhARpAAQAAAPfZAAWw4hUA4QEaQAEAAAD32QAFsMIaAOEBHAwBAAAA+9kAB7AiIADhAQwgAQAAAP3ZAAWwIkMA4QEMIAEAAAD92QAHsCIeAOEBDCABAAAA/tkAB7AiHgDhAQwgAQAAAEXaAAWwYh4A4QEMIAEAAAAA2gAHsAL0AOEBHiABAAAAAdoABrACQADhARYEAQAAAALaAAew4hUA4QEaQAEAAAAB2gAFsAJAAOEBIAABAAAAAtoAQrDiFQDhARpAAQAAAAPaAEWwwlQA4QEeIAEAAAAB2gAEsGIeAOEBIgABAAAAB9oABrDCGADhASIAAQAAAAjaAAaw4hUA4QEWBAEAAAAJ2gAHsOJRAOEBDCABAAAACtoAB7BiHADhARYEAQAAAAvaAAewIjUA4QEMIAEAAAAM2gAHsEIqAOEBDCABAAAADdoAB7BiSQDhAQwgAQAAAA7aAAewIjcA4QEMIAEAAAAo2gAFsEIgAOEBDCABAAAAENoAB7DCGQDhARYEAQAAABHaAAewwh0A4QEMIAEAAAAT2gAFsKI8AOEBDCABAAAAE9oAB7CCFwDhARpAAQAAABTaAAew4hkA4QEaQAEAAAAU2gAFsAIaAOEBGkABAAAAFNoABbDiFQDhASBAAQAAABTaAAKwYjEA4QEcDAEAAAAY2gAHsAIZAOEBDCABAAAAGdoAB7CCIQDhARYEAQAAABraAAewoiQA4QEcDAEAAAAb2gAHsGIaAOEBDCABAAAAHNoAB7CiXgDhAQwgAQAAAB3aAAewgioA4QEMIAEAAAAd2gAFsKIaAOEBFgQBAAAAH9oAB7BiJADhAQwgAQAAACDaAAewwh0A4QEMIAEAAAAk2gAFsMJEAOEBDCABAAAAItoAB7AiGQDhAQwgAQAAACPaAAewojwA4QEMIAEAAAAk2gAHsEI4AOEBFgQBAAAAJdoAB7ACNQDhAQwgAQAAACbaAAewAjQA4QEWBAEAAAAn2gAHsEJIAOEBDCABAAAAKNoAB7BCKwDhAQwgAQAAACjaAAWwIh4A4QEMIAEAAAAq2gAHsMIYAOEBIgABAAAAK9oABrCiGgDhARYEAQAAACzaAAewwhoA4QEcDAEAAAAt2gAHsGIiAOEBIgABAAAALtoABrDCIADhARwMAQAAAC/aAAewgk4A4QEMIAEAAAAw2gAHsIIWAOEBDCABAAAAMNoABbACSwDhAQwgAQAAADLaAAewwkIA4QEMIAEAAAAz2gAHsCItAOEBDCABAAAANNoAB7BCdgDhAQwgAQAAADXaAAWwQmgA4QEMIAEAAAA12gAFsGIeAOEBDCABAAAAN9oAB7CCFwDhARYEAQAAADjaAAewwocA4QEMIAEAAAA52gAHsKIYAOEBGkABAAAA79kABbDitQDhAQwgAQAAADvaAAewgiwA4QEMIAEAAAA72gAFsCIgAOEBDCABAAAARdoABbBiGwDhARYEAQAAAD7aAAewYhsA4QEMIAEAAAA/2gAHsOIVAOEBHgABAAAA79kAArDiPADhAQwgAQAAAEHaAAewAuIA4QEMIAEAAABC2gAHsEJpAOEBDCABAAAAQ9oAB7CCLADhARgwAQAAAETaAAewYsAA4QEMIAEAAABF2gAHsKInACECFgQBAAAARtoABbBiGwDhAQwgAQAAAEfaAAewwqsA4QEMIAEAAABI2gAHsAJLAOEBDCABAAAASdoAB7AirADhAQwgAQAAAEraAAewIk4A4QEMIAEAAABL2gAHsMI2AOEBDCABAAAATNoAB7BiIADhAQwgAQAAAE3aAAewQkkA4QEMIAEAAABO2gAHsALiAOEBDCABAAAAT9oAB7CCQwDhAQwgAQAAAFDaAAewwhwA4QEeIAEAAADv2QAEsAIZAOEBHiABAAAAUtoABrDCGQDhARYEAQAAAFPaAAewYiIA4QEMIAEAAABU2gAHsGIqAOEBDCABAAAAVdoAB7DiGADhAQwgAQAAAFLaAAWwgiEA4QEWBAEAAABX2gAHsKIkAOEBHAwBAAAAWNoAB7BiGwDhAQwgAQAAAFnaAAewAk8A4QEMIAEAAABa2gAHsMIYAOEBFgQBAAAAW9oAB7AifQDhAQwgAQAAAFzaAAewQl8B4QEMIAEAAABd2gAHsOIPAeEBDCABAAAAXtoAB7DCFwDhARYEAQAAAF/aAAewwkgA4QEMIAEAAABg2gAHsGLgAOEBDCABAAAAYtoABbCiVADhAQwgAQAAAGLaAAewYlEA4QEMIAEAAABj2gAHsGIcAOEBFgQBAAAAZNoAB7DiHgDhAQwgAQAAAGXaAAewIrYA4QEMIAEAAABm2gAHsIJ0AOEBDCABAAAAZ9oAB7ACNADhARYEAQAAAGjaAAewwk8A4QEMIAEAAABp2gAHsII0AOEBFgQBAAAAatoAB7DimQDhAQwgAQAAAGvaAAew4jIA4QEMIAEAAABs2gAHsMLMAOEBDCABAAAAbdoAB7AiGADhAQwgAQAAAG7aAAewYi4A4QEWBAEAAABv2gAHsMIYAOEBFgQBAAAAcNoAB7BiJADhAQwgAQAAAHHaAAewIjIA4QEMIAEAAABy2gAHsMIeAOEBFgQBAAAAc9oAB7DiIQDhAQwgAQAAAHTaAAewYiAA4QEMIAEAAAB12gAHsMIqAOEBDCABAAAAdtoAB7BiUADhAQwgAQAAAHjaAAWwglAA4QEMIAEAAAB42gAHsGI3AOEBDCABAAAAedoAB7DCHgDhAQwgAQAAAHraAAewIiMA4QEMIAEAAAB72gAHsMI0AOEBDCABAAAAfNoAB7DCgADhAQwgAQAAAH3aAAewwh8A4QEMIAEAAAB+2gAHsGIkAOEBDCABAAAAf9oAB7AitgDhAQwgAQAAAIDaAAewwjYA4QEMIAEAAACB2gAHsCLGAeEBDCABAAAAgtoAB7DiRQDhAQwgAQAAAIPaAAewgnUA4QEMIAEAAACE2gAHsIIXAOEBIgABAAAAhdoABrDCJQDhAQwgAQAAAIbaAAewIlIA4QEMIAEAAACG2gAFsEIkAOEBFgQBAAAAiNoAB7BiHADhARYEAQAAAInaAAewoioA4QEcDAEAAACK2gAHsGIbAOEBDCABAAAAi9oAB7DCigDhAQwgAQAAAIzaAAewIkgA4QEMIAEAAACN2gAHsOI6AOEBDCABAAAAjtoAB7AiOwDhAQwgAQAAAI/aAAexIkUA5wEMIAFAAQCR2hAFsCJFAOEBHiABAAAAkdoABrACQADhASBAAQAAAJHaAAKwAlgA4QEMIAEAAACR2gAHsOIVAOEBGkABAAAAkdoABbBCxgHZAR4gAQAAAJXaAAawwjcA4QEMIAEAAACW2gAHsKIeAOEBDCABAAAAl9oAB7DCNQHhAQwgAQAAAJraAAWwYuUA4QEMIAEAAACZ2gAHsCI1AOEBDCABAAAAmtoAB7DiNADhAQwgAQAAAJvaAAewYlYA4QEaQAEAAACV2gAFsIJ/AOEBHiABAAAAndoABrDCOQDhAQwgAQAAAJ7aAAewYh8A4QEaQAEAAACd2gAFsIImAOEBDCABAAAAoNoAB7BiGwDhAQwgAQAAAKHaAAew4hUA4QEaQAEAAACd2gAFsAI6AOEBDCABAAAAo9oAB7CC4gDhAQwgAQAAAKTaAAewAioA4QEMIAEAAACd2gAFsCJGAOEBDCABAAAAptoAB7CCJADhAQwgAQAAAKfaAAewAkYA4QEWBAEAAACo2gAHsMJWAOEBFgQBAAAArdoABbDCSgDhARYEAQAAAK3aAAWwYhsA4QEMIAEAAACr2gAHsOIVAOEBGkABAAAAldoABbCi8gDhARYEAQAAAK3aAAew4rEA4QEeAAEAAACV2gAEsMI9AOEBDCABAAAAr9oAB7CCOwDhAQwgAQAAALDaAAewIhoA4QEWBAEAAACx2gAHsCIZAOEBDCABAAAAstoAB7DCHwDhAQwgAQAAALPaAAew4h8A4QEMIAEAAACz2gAFsAIZAOEBDCABAAAAtdoAB7CiJwDhARpAAQAAALbaAAewAhkA4QEMIAEAAAC32gAHsIIwAOEBGkABAAAAuNoAB7AiGADhAQwgAQAAALnaAAewgn8A2QEmCAEAAAC62gAVsOIgAOEBMgABAAAAu9oABrCCFwDhARpAAQAAALzaAAew4hUA4QEWBAEAAAC92gAHsAIZAOEBDCABAAAAvtoAB7BiGgDhAQwgAQAAAL/aAAewwlwA4QEMIAEAAADA2gAHsMIZAOEBFgQBAAAAwdoAB7CCIQDhARpAAQAAAMLaAAewYikA4QEgQAEAAADC2gACsIIpAOEBDCABAAAAxNoAB7CCFgDhARpAAQAAAMLaAAWw4hUA4QEaQAEAAADC2gAFscIYAOcBDCABAAAAyNoQBbDCGADhAQwgAQAAAMjaAAew4joA4QEMIAEAAADJ2gAHsOImAOEBDCABAAAAydoABbBCOADhAQwgAQAAAMvaAAewAlgA4QEMIAEAAADL2gAFsAIwAOEBDCABAAAAyNoABbBCMADhAQwgAQAAAM7aAAewQiAA4QEMIAEAAADP2gAHsMIZAOEBFgQBAAAA0NoAB7CCIgDhARwMAQAAANHaAAewAhkA4QEMIAEAAADS2gAHsOIYAOEBDCABAAAA0toABbCCIQDhARYEAQAAANTaAAewoiQA4QEcDAEAAADV2gAHsGIbAOEBDCABAAAA1toAB7BCIADhAQwgAQAAANfaAAewIjAA4QEWBAEAAADY2gAHsMIaAOEBHAwBAAAA2doAB7CChQDhAR4gAQAAANraAAawIh4A4QEcDAEAAADb2gAHsGIZAOEBGkABAAAA2toABbCCQwDhAQwgAQAAAN3aAAewwiMA4QEeAAEAAADa2gAEsOIVAOEBGkABAAAA2toABbCCFwDhAQwgAQAAAODaAAewwh8A4QEMIAEAAADh2gAHsGJJAOEBDCABAAAA4toAB7DCGADhASIAAQAAAOPaAAawIi4A4QEMIAEAAADk2gAHsII2AOEBDCABAAAA5doAB7CCFwDhAR4AAQAAAObaAAawAhoA4QEaQAEAAADm2gAFsOIVAOEBGkABAAAA5toABbACGQDhAQwgAQAAAOnaAAewYhoA4QEMIAEAAADq2gAHsGLGAeEBDCABAAAA69oAB7DCwwDhARpAAQAAAOzaAAewAhkA4QEMIAEAAADt2gAHsGIgAOEBDCABAAAA7toAB7CCIQDhARYEAQAAAO/aAAew4kYA4QEMIAEAAADw2gAHsGIcAOEBFgQBAAAA8doAB7BCaADhAQwgAQAAAPLaAAewAhkA4QEMIAEAAADz2gAHsEIgAOEBDCABAAAA9NoAB7DCGQDhARYEAQAAAPXaAAewghcA4QEaQAEAAAD22gAHsAIZAOEBDCABAAAA99oAB7BiJADhASIAAQAAAPjaAAaw4lYA4QEcDAEAAAD52gAHsKIpAOEBFgQBAAAA+toAB7CCFwDhARpAAQAAAPvaAAewAhkA4QEMIAEAAAD82gAHsKIaAOEBIgQBAAAA/doABrDCGgDhARwMAQAAAP7aAAew4qMA4QEMRAEAAAD/2gAHsKIgAOEBLgQBAAAAANsABrDCcADhAQwgAQAAAAHbAAew4hkA4QEgQAEAAAAA2wACsOIeAOEBDCABAAAAA9sAB7BCIADhAQwgAQAAAATbAAewwhkA4QEWBAEAAAAF2wAHsOIVAOEBGkABAAAAANsABbACGQDhAQwgAQAAAAfbAAew4iEA4QEMIAEAAAAI2wAHsGIgAOEBDCABAAAACdsAB7CCIQDhAQwgAQAAAArbAAewwiAA4QEcDAEAAAAL2wAHsAIdAOEBGkABAAAAANsABbCCmQDhARYEAQAAAA3bAAewYhwA4QEWBAEAAAAO2wAHsKIqAOEBHAwBAAAAD9sAB7BiGwDhAQwgAQAAABDbAAewgm4A4QEMIAEAAAAR2wAHsILIAOEBDCABAAAAEtsAB7CCFwDhARYEAQAAABPbAAewghcA4QEgAAEAAAAU2wAGsOIZAOEBFgQBAAAAFdsAB7ACGQDhAQwgAQAAABbbAAewglYA4QEcDAEAAAAX2wAHsEI5AOEBGkABAAAAGNsAB7AiHgDhAQwgAQAAABnbAAewYigA4QEMIAEAAAAZ2wAFsEIxAOEBGkABAAAAGNsABbBCSgDhAQwgAQAAABzbAAewAioA4QEMIAEAAAAc2wAFsOIVAOEBHkABAAAAGNsAArACWgDhARpAAQAAABjbAAWw4pEA4QEeIAEAAAAg2wAGsEIxAOEBFgQBAAAAIdsAB7BCSgDhAQwgAQAAACLbAAewAkYA4QEMIAEAAAAj2wAHsOIVAOEBGkABAAAAINsABbDiVgDhARwMAQAAACXbAAewoikA4QEWBAEAAAAm2wAHsMIqAOEBGkABAAAAJ9sAB7BCKwDhARpAAQAAACfbAAWw4hUA4QEaQAEAAAAn2wAFsAIZAOEBDCABAAAAKtsAB7CiNADhAQwgAQAAACvbAAex4uMA5wEcDAFAAQAt2xAFsOLjAOEBHAwBAAAALdsAF7CitgDhAQwgAQAAAC7bAAew4jUA4QEMIAEAAAAv2wAHsMIXAOEBFgQBAAAAMNsAB7DiKADhAQwgAQAAADHbAAewIhwA4QEMIAEAAAAy2wAHsEIaAOEBDCABAAAAM9sAB7CCLgDhAQwgAQAAADjbAAWwgmwA4QEWBAEAAAA12wAHsKIaAOEBFgQBAAAANtsAB7BCGgDhAQwgAQAAADfbAAewojwA4QEMIAEAAAA42wAHsMIWAOEBDCABAAAAOdsAB7CCGQDhAQwgAQAAADrbAAewAiIA4QEMIAEAAAA82wAFsKI8AOEBDCABAAAAPNsABbAiGQDhAQwgAQAAAD3bAAewgiwA4QEMIAEAAAA/2wAFsKI8AOEBDCABAAAAP9sABbCCLgDhAQwgAQAAAELbAAWwQh0A4QEMIAEAAABB2wAHsKI8AOEBDCABAAAAQtsAB7CiIQHhAQwgAQAAAEPbAAewYjcA4QEMIAEAAABE2wAHsAKBAOEBDCABAAAARdsAB7DiUQDhAQwgAQAAAEbbAAewwhcA4QEWBAEAAABH2wAHsCIYAOEBDCABAAAASNsAB7CCLADhAQwgAQAAAErbAAWwojwA4QEMIAEAAABK2wAHsMIdAOEBDCABAAAATNsABbACGQDhAQwgAQAAAEzbAAewoiUA4QEMIAEAAABN2wAHsEKDAOEBHiABAAAATtsABrBiHADhARYEAQAAAE/bAAewoioA4QEcDAEAAABQ2wAHsGIbAOEBDCABAAAAUdsAB7DCVADhAQwgAQAAAE7bAAWwIoEA4QEMIAEAAABT2wAHsGLWAOEBDCABAAAAVNsAB7DiHgDhAQwgAQAAAFXbAAewojwA4QEMIAEAAABW2wAHsOIjAOEBFgQBAAAAV9sAB7DCHgDhARYEAQAAAFjbAAewYiAA4QEMIAEAAABZ2wAHsEJJAOEBDCABAAAAWtsAB7CCWwDhAQwgAQAAAGDbAAWwQmsA4QEWBAEAAABc2wAHsAJBAOEBDCABAAAAXdsAB7ACIgDhAQwgAQAAAF/bAAWwojwA4QEMIAEAAABf2wAFsKKTAOEBDCABAAAAYNsAB7CiPADhAQwgAQAAAGHbAAewwjAB4QEMIAEAAABi2wAHsOI3AOEBFgQBAAAAY9sAB7CCHADhASIAAQAAAGTbAAawwhoA4QEcDAEAAABl2wAHsKJ1AOEBDCABAAAAZNsABbBCIADhAQwgAQAAAGfbAAewwh4A4QEWBAEAAABo2wAHsGJGAOEBDCABAAAAadsAB7AiGgDhARYEAQAAAGrbAAewQi0A4QEMIAEAAABr2wAHsGIgAOEBDCABAAAAbNsAB7BCGgDhAQwgAQAAAG3bAAewYqEA4QEMIAEAAABi2wAFsOIlAOEBDCABAAAAcNsABbCiPADhAQwgAQAAAHDbAAWwYi4B4QEMIAEAAABy2wAFsKKTAOEBDCABAAAActsAB7AiGgDhASIAAQAAAHPbAAaw4iEA4QEMIAEAAAB02wAHsOIkAOEBDCABAAAAddsAB7Bi1ADhAQwgAQAAAHbbAAewYkYA4QEMIAEAAAB32wAHsIJ+AOEBDCABAAAAeNsAB7BCJADhASIEAQAAAHnbAAawwhoA4QEcDAEAAAB62wAHsAJGAOEBDCABAAAAe9sAB7BCKwDhAQwgAQAAAH3bAAWwIhwA4QEMIAEAAAB92wAHsCIaAOEBFgQBAAAAftsAB7BCJADhARYEAQAAAH/bAAewwhcA4QEWBAEAAACA2wAHsEJkAOEBDCABAAAAgdsAB7BiNgDhAQwgAQAAAILbAAewoiMA4QEaQAEAAACD2wAHsEIgAOEBDCABAAAAhNsAB7DCGQDhASIAAQAAAIXbAAawYhsA4QEMIAEAAACG2wAHsGIZAOEBGkABAAAAg9sABbCCQwDhAQwgAQAAAIjbAAewwiMA4QEaQAEAAACD2wAFsOIVAOEBGkABAAAAg9sABbBidADhAQwgAQAAAIvbAAewQjYA4QEMIAEAAACM2wAHsEIrAOEBDCABAAAAjtsABbAiHADhAQwgAQAAAI7bAAewQicA4QEMIAEAAACP2wAHsAI0AOEBFgQBAAAAkNsAB7DibgDhAQwgAQAAAJHbAAewwiwA4QEMIAEAAACT2wAFsKI8AOEBDCABAAAAk9sAB7CiGgDhARYEAQAAAJTbAAewojwA4QEMIAEAAACV2wAHsIJbAOEBDCABAAAAmNsABbBCawDhARYEAQAAAJfbAAewopMA4QEMIAEAAACY2wAHsEIaAOEBDCABAAAAmdsAB7CCFwDhAQwgAQAAAJrbAAewYhwA4QEWBAEAAACb2wAHsEK6AOEBDCABAAAAnNsAB7CiJgDhARYEAQAAAJ3bAAewAnYA4QEMIAEAAACe2wAHsOIgAOEBGkABAAAAn9sAB7CCHwDhAQwgAQAAAKDbAAewAiEA4QEaQAEAAACf2wAFsOIVAOEBGkABAAAAn9sABbDCigDhAQwgAQAAAKPbAAew4rYA4QEeBAEAAACk2wAGsAKGAOEBGkABAAAApNsABbDCVgDhARYEAQAAAKzbAAWwwkoA4QEWBAEAAACs2wAFsOJWAOEBHAwBAAAAqNsAB7BiGwDhAQwgAQAAAKnbAAew4hUA4QEaQAEAAACk2wAFsGKpAOEBDCABAAAApNsABbCilwDhARYEAQAAAKzbAAewwjYA4QEMIAEAAACt2wAHsGJ0AOEBGkABAAAArtsAB7AiMgDhAQwgAQAAAK/bAAewIh4A4QEMIAEAAACw2wAHsEIeAOEBDCABAAAAsdsAB7DCGADhASIEAQAAALLbAAawwiAA4QEcDAEAAACz2wAHsIIXAOEBDCABAAAAtNsAB7BCIADhAQwgAQAAALXbAAewwhkA4QEWBAEAAAC22wAHsGIbAOEBDCABAAAAt9sAB7BiHgDhARYEAQAAALjbAAewghcA4QEaQAEAAAC52wAHsOIZAOEBGkABAAAAudsABbACGgDhARpAAQAAALnbAAWw4hUA4QEgAAEAAAC52wACsAIZAOEBDCABAAAAvdsAB7CCIQDhARYEAQAAAL7bAAewQjEA4QEWBAEAAAC/2wAHsEIgAOEBDCABAAAAwNsAB7DCGQDhARYEAQAAAMHbAAewgiIA4QEcDAEAAADC2wAHsAIZAOEBDCABAAAAw9sAB7CCIQDhARYEAQAAAMTbAAewoiQA4QEcDAEAAADF2wAHsGIbAOEBDCABAAAAxtsAB7BCQwDhAR5AAQAAAMfbAAawwjIA4QEeQAEAAADH2wAEsOIZAOEBGkABAAAAx9sABbDiFQDhARpAAQAAAMfbAAWwQiAA4QEMIAEAAADL2wAHsMIZAOEBFgQBAAAAzNsAB7BiGwDhAQwgAQAAAM3bAAewAhkA4QEMIAEAAADO2wAHsOIYAOEBDCABAAAAztsABbAiKQDhARpAAQAAANDbAAewAhoA4QEaQAEAAADQ2wAFsOIVAOEBGkABAAAA0NsABbAiqwDhAQwgAQAAANPbAAewYhwA4QEWBAEAAADU2wAHsKIqAOEBHAwBAAAA1dsAB7BiGwDhAQwgAQAAANbbAAewgn4A4QEWBAEAAAAS3ABHsKJsAOEBDCABAAAA2NsAB7BCawDhARYEAQAAANnbAAew4j0A4QEMIAEAAADa2wAHsIIXAOEBGkABAAAA29sAB7ACGgDhARpAAQAAANvbAAWw4hUA4QEaQAEAAADb2wAFsAIZAOEBDCABAAAA3tsAB7AiGQDhAQwgAQAAAN/bAAewwh8A4QEeAAEAAADg2wAGsAI0AOEBIgABAAAA4dsABrBCIADhAQwgAQAAAOLbAAewInoA4QEcDAEAAADj2wAHsIIXAOEBGkABAAAA5NsAB7DiGQDhARpAAQAAAOTbAAWwAhoA4QEaQAEAAADk2wAFsOIVAOEBGkABAAAA5NsABbACGQDhAQwgAQAAAOjbAAewYhoA4QEMIAEAAADp2wAHsKIfAOEBDCABAAAA6dsABbAiMADhARYEAQAAAOvbAAewwhoA4QEcDAEAAADs2wAHsIIXAOEBGkABAAAA7dsAB7ACGgDhARpAAQAAAO3bAAWw4hUA4QEaQAEAAADt2wAFsAIZAOEBDCABAAAA8NsAB7BCIADhAQwgAQAAAPHbAAewYiQA4QEMIAEAAADy2wAHsGL2AOEBGkABAAAA89sAB7CCSgDhARYEAQAAAPTbAAewwigA4QEcDAEAAAD12wAHsOIVAOEBFgQBAAAA9tsAB7BCIADhAQwgAQAAAPfbAAewYjcA4QEMIAEAAAD42wAHsCIpAOEBGkABAAAA+dsAB7DiGQDhARpAAQAAAPnbAAWwAhoA4QEaQAEAAAD52wAFsOIVAOEBGkABAAAA+dsABbACGQDhAQwgAQAAAP3bAAewYhoA4QEMIAEAAAD+2wAHsCIeAOEBDCABAAAA/9sAB7CCFwDhARpAAQAAAADcAAewAhkA4QEMIAEAAAAB3AAHsGIYAOEBGkABAAAAAtwAB7ACIQDhARpAAQAAAALcAAWw4hUA4QEgAAEAAAAC3AACsGIxAOEBHAwBAAAABdwAB7CCGQDhAQwgAQAAAAbcAAewQh0A4QEWBAEAAAAH3AAHsOI6AOEBDCABAAAACNwAB7AibQDhAQwgAQAAAAncAAewYiAA4QEaQAEAAAAK3AAHsOIZAOEBGkABAAAACtwABbAiHgDhAQwgAQAAAAzcAAewQh4A4QEMIAEAAAAN3AAHsMIYAOEBFgQBAAAADtwAB7DCIADhARwMAQAAAA/cAAew4hUA4QEgQAEAAAAK3AACsKI9AOEBGkABAAAACtwABbCCfgDhARYEAQAAABLcAAewAkcA4QEMIAEAAAAT3AAHsAKKAOEBDCABAAAAFNwAB7DCGQDhARYEAQAAABXcAAewYhsA4QEMIAEAAAAW3AAHsEJoAOEBDCABAAAAFNwABbDiOgDhAQwgAQAAABjcAAewwhcA4QEiBAEAAAAZ3AAGsKInAOEBGkABAAAAINwAR7CCJwDhARYEAQAAACHcAEewQisA4QEaQAEAAAAi3ABFsOIVAOEBGkABAAAAI9wARbAiIADhAQwgAQAAAB/cAAWwQiAA4QEMIAEAAAAf3AAHsIIwAOEBGkABAAAAINwAB7CiMADhASAEAQAAACDcAAKwwjAA4QEaQAEAAAAg3AAFsOIVAOEBGkABAAAAINwABbDCGgDhARwMAQAAACTcAAewIkMA4QEMIAEAAAAl3AAHsIIXAOEBGkABAAAAJtwAB7ACGgDhARpAAQAAACbcAAWwAhkA4QEMIAEAAAAo3AAHsCJGAOEBDCABAAAAKdwAB7ACGQDhAQwgAQAAACrcAAewgjEA4QEaQAEAAAAt3AAFsCIgAOEBGkABAAAALdwABbDCNQDhARpAAQAAAC3cAAew4hUA4QEaQAEAAAAt3AAFsGJ9AOEBDCABAAAAL9wAB7DiGADhAQwgAQAAABPcAAWwgiEA4QEMIAEAAAAx3AAHsIIWAOEBDCABAAAAMdwABbCCeQDhAQwgAQAAADPcAAewYhwA4QEWBAEAAAA03AAHsGIbAOEBDCABAAAANdwAB7BCIADhAQwgAQAAADbcAAewQiAA4QEMIAEAAAA33AAHsGIcAOEBFgQBAAAAONwAB7CiKgDhARwMAQAAADncAAewYhsA4QEMIAEAAAA63AAHsAIZAOEBDCABAAAAO9wAB7BiOgDhARpAAQAAADzcAAewgh8A4QEMIAEAAAA93AAHsAIhAOEBGkABAAAAPNwABbDiFQDhARpAAQAAADzcAAWwwhkA4QEWBAEAAABA3AAHsAImAOEBGkABAAAAQdwAB7BCJQDhARpAAQAAAEHcAAWwIiYA4QEMIAEAAABD3AAHsOIfAOEBGkABAAAAQdwABbDiFQDhARpAAQAAAEHcAAWwwhkA4QEWBAEAAABG3AAHsAIZAOEBDCABAAAAR9wAB7CCIQDhARYEAQAAAEjcAAewoiQA4QEcDAEAAABJ3AAHsGIbAOEBDCABAAAAStwAB7CCRgDhARYEAQAAAEvcAAewQioA4QEaQAEAAABM3AAHsOIVAOEBGkABAAAATNwABbCCKgDhARpAAQAAAEzcAAWwwjsA4QEMIAEAAABP3AAHsGIcAOEBFgQBAAAAUNwAB7CiKgDhARwMAQAAAFHcAAewQiAA4QEMIAEAAABS3AAHsCIeAOEBDCABAAAAU9wAB7BCHgDhAQwgAQAAAFTcAAewwhgA4QEWBAEAAABV3AAHsMIgAOEBHAwBAAAAVtwAB7DCIADhARwMAQAAAFfcAAewYhsA4QEMIAEAAABY3AAHsALEAOEBGkABAAAAWdwAB7ACGQDhAQwgAQAAAFrcAAew4hgA4QEMIAEAAABa3AAFsIIdAOEBIEABAAAAWdwAArDiFQDhASAAAQAAAFncAAKwIioA4QEaQAEAAABZ3AAFsCIcAOEBDCABAAAAX9wAB7ECWgH7ARgwAQAAAGDcEAWwAloB4QEYMAEAAABg3AAHsOKFAOEBDCABAAAAYtwAB7AChgDhARYEAQAAAGPcAAew4iMA4QEMIAEAAABk3AAHsMIqAOEBGkABAAAAZdwAB7BCKwDhARpAAQAAAGXcAAWw4hUA4QEeAAEAAABl3AACsEIdAOEBFgQBAAAAaNwAB7ACJgDhARpAAQAAAGncAAewQiUA4QEaQAEAAABp3AAFsOIfAOEBGkABAAAAadwABbDiFQDhARpAAQAAAGncAAWwghcA4QEaQAEAAABt3AAHsAIaAOEBGkABAAAAbdwABbACGQDhAQwgAQAAAG/cAAewAhkA4QEMIAEAAABw3AAHsIIhAOEBFgQBAAAAcdwAB7CiJADhARwMAQAAAHLcAAewYhsA4QEMIAEAAABz3AAHsGIzAOEBFgQBAAAAdNwAB7CiJADhARwMAQAAAHXcAAewYhsA4QEMIAEAAAB23AAHsAIZAOEBDCABAAAAd9wAB7BCIADhAQwgAQAAAHjcAAewgiEA4QEWBAEAAAB53AAHsIJGAOEBHgABAAAAetwABrDiGQDhARYEAQAAAHvcAAew4hUA4QEaQAEAAAB63AAFsMIkAOEBHgABAAAAetwABLBiHADhARYEAQAAAH7cAAewYhsA4QEMIAEAAAB/3AAHsOJ/ANkBDCABAAAAgNwAB7ACJwDhAQwgAQAAAIHcAAewwpUB4QEMIAEAAACC3AAHsOJgAOEBDCABAAAAg9wAB7DiqQDhAQwgAQAAAITcAAewIoUA4QEMIAEAAACF3AAHsGLsAOEBDCABAAAAhtwAB7BCwwHhAQwgAQAAAIfcAAewwlYA4QEWBAEAAACK3AAFsMJKAOEBFgQBAAAAitwABbDiywDhARYEAQAAAIrcAAewgsYB4QEMIAEAAACL3AAHsGIiAOEBDCABAAAAjNwAB7DCIgDhARYEAQAAAI3cAAew4iEA4QEMIAEAAACO3AAHsGIgAOEBDCABAAAAj9wAB7AiGgDhARYEAQAAAJDcAAewwhoA4QEcDAEAAACR3AAHsALlAOEBFgQBAAAAktwAB7DCSgDhAQwgAQAAAJPcAAew4h4A4QEaQAEAAACU3AAHsGIfAOEBFgQBAAAAldwAB7CCHwDhAQwgAQAAAJbcAAew4hUA4QEgAAEAAACU3AACsAIqAOEBGkABAAAAlNwABbAibgDhAQwgAQAAAJncAAewwioA4QEMIAEAAACa3AAHsMIfAOEBDCABAAAAm9wAB7DiHwDhAQwgAQAAAJvcAAWwYhwA4QEWBAEAAACd3AAHsCIeAOEBDCABAAAAntwAB7DCGADhARYEAQAAAJ/cAAewohoA4QEWBAEAAACg3AAHsEIaAOEBDCABAAAAodwAB7AirADhAR4AAQAAAKLcAAawQn0A4QEMIAEAAACj3AAHsGLmANkBLiABAAAApNwABrAiagDhAQwgAQAAAKXcAAewAi4A4QEMIAEAAACm3AAHsMIeAOEBDCABAAAAp9wAB7ACQADhARYEAQAAAKjcAAewAkAA4QEWBAEAAACp3AAHsGIbAOEBFgQBAAAAqtwAB7AiVwDhARYEAQAAAKvcAAewIi4A4QEWBAEAAACs3AAHsGIcAOEBFgQBAAAArdwAB7CidQDhAQwgAQAAAKfcAAWwAiMA4QEMIAEAAACv3AAHsGIiAOEBDCABAAAAsNwAB7ACTwDhAQwgAQAAALHcAAew4iUA4QEMIAEAAACy3AAHsII8AOEBDCABAAAAstwABbCi1wDhAQwgAQAAALTcAAewIkYA4QEMIAEAAAC13AAHsCJuAOEBDCABAAAAttwAB7BibwDhAQwgAQAAALfcAAewYjcA4QEiBAEAAAC43AAGsGIbAOEBDCABAAAAudwAB7BijADhAQwgAQAAALrcAAewAhkA4QEeIAEAAAC73AAGsGIiAOEBFgQBAAAAvNwAB7CiGADhARpAAQAAALvcAAWwYioA4QEMIAEAAAC+3AAHsOIVAOEBGkABAAAAu9wABbDiGADhAQwgAQAAALvcAAWw4nEA4QEMIAEAAADB3AAHsCKCAOEBDCABAAAAwtwAB7ACGQDhAQwgAQAAAMPcAAewAhkA4QEMIAEAAADE3AAHsIIxAOEBGgQBAAAAx9wABbAiIADhARpAAQAAAMfcAAWwwjUA4QEaQAEAAADH3AAHsOIVAOEBFgQBAAAAyNwAB7DiOgDhAQwgAQAAAMncAAewghwA4QEMIAEAAADK3AAHsIJwAOEBDCABAAAAy9wAB7ACHwDhAQwgAQAAAMzcAAewQj4A4QEMIAEAAADN3AAHsCI2AOEBDCABAAAAztwAB7CikwDhAQwgAQAAAM/cAAewQkkA4QEMIAEAAADQ3AAHsGIcAOEBFgQBAAAA0dwAB7BikQDhAQwgAQAAAKTcAAWw4hkA4QEaQAEAAACk3AAFsOIeAOEBDCABAAAA1NwAB7CiTADhAQwgAQAAANXcAAew4hkA4QEWBAEAAADW3AAHsMJWAOEBFgQBAAAA5dwABbDCSgDhARYEAQAAAOXcAAWwgrIA4QEaQAEAAADZ3AAHsKImAOEBGkABAAAA2dwABbDCJgDhAQwgAQAAANvcAAewAkYA4QEMIAEAAADc3AAHsOIVAOEBGkABAAAA2dwABbAicQDhARpAAQAAANncAAWw4lYA4QEcDAEAAADf3AAHsGIbAOEBDCABAAAA4NwAB7DiFQDhAR4AAQAAAKTcAAKwoiMA4QEWBAEAAADi3AAHsGJpAOEBHAwBAAAA49wAB7BiGwDhAQwgAQAAAOTcAAewgqwA4QEiBAEAAADl3AAGsCIeAOEBDCABAAAA5twAB7BiHgDhARYEAQAAAOfcAAewwiAA4QEcDAEAAADo3AAHsIIsAOEBDCABAAAA6dwAB7CixgHhAQwgAQAAAOrcAAewwsYB2QEMIAEAAADr3AAHsEIjAeEBDCABAAAA7NwAB7BCGwHhAQwgAQAAAO3cAAew4h4A4QEMIAEAAADu3AAHsCIvAOEBDCABAAAA79wAB7LixgHhAQwgAQAAAPDcAAeygjUA4QEMIAEAAADx3AAHsgLHAdkBDCABAAAA8twAB7IixwHhAQwgAQAAAPPcAAeyorMA4QEMIAEAAADz3AAFssIYAeEBDCABAAAA9dwAB7NCxwEyAhgwAQAAAPbcEAW0YscB2QEYMAEAAAD23AAFtYLHAdUBDCABAAAA+NwABbXCHQDhAQwgAQAAAPncAAe1AhkA4QEMIAEAAAD63AAHtUIuAOEBDCABAAAA+9wAB7UCXADhAQwgAQAAAPzcAAe14joA4QEMIAEAAAD93AAHteImAOEBDCABAAAA/dwABbUCLgDhAQwgAQAAAP/cAAe1IhoA4QEWBAEAAAAA3QAHtSIcAOEBDCABAAAAAd0AB7ViHQDhAQwgAQAAAALdAAe1IhwA4QEMIAEAAAAD3QAHtWKLAOEBDCABAAAABN0ABbVCawDhARYEAQAAAAXdAAe1wiYA4QEMIAEAAAAG3QAHteImAOEBDCABAAAABN0ABbViIADhAQwgAQAAAAjdAAe1QhoA4QEMIAEAAAAJ3QAHtUKYAeEBDCABAAAACt0AB7VCZADhAQwgAQAAAAvdAAe1opkA4QEMIAEAAAAM3QAHtUKQAOEBDCABAAAAEN0ABbUCJQDhARYEAQAAAA7dAAe1QhwA4QEMIAEAAAAP3QAHteI0AOEBDCABAAAAEN0AB7WCpQDhAQwgAQAAABHdAAe1ImkA4QEMIAEAAAAS3QAHtcL+AOEBDCABAAAAE90AB7WCLADhAQwgAQAAABTdAAe1gjEA4QEaQAEAAAAc3QAFtYLAAOEBDCABAAAAFt0AB7XiOQDhAQwgAQAAABfdAAe1AiIA4QEMIAEAAAAY3QAHtSI0AOEBFgQBAAAAGd0AB7WCHADhARYEAQAAABrdAAe1wiIA4QEWBAEAAAAb3QAHtYKBAOEBHgABAAAAHN0ABrWiMwDhASIAAQAAAB3dAAa1Yi4A4QEWBAEAAAAe3QAHtWJeAOEBFgQBAAAAH90AB7WCHADhARYEAQAAACDdAAe1YtgA4QEMIAEAAAAh3QAHtSIaAOEBIgABAAAAIt0ABrWCHADhASIEAQAAACPdAAa1onUA4QEMIAEAAAAj3QAFtSIgAOEBDCABAAAAMt0ABbViIADhAQwgAQAAACbdAAe1Qi0A4QEMIAEAAAAn3QAHtUItAOEBDCABAAAAKN0AB7XiRADhARYEAQAAACndAAe1ghwA4QEWBAEAAAAq3QAHtcIaAOEBHAwBAAAAK90AB7ViIADhAQwgAQAAACzdAAe1QkkA4QEMIAEAAAAt3QAHtWLUAOEBDCABAAAALt0AB7UCHADhAQwgAQAAAC7dAAW1YtQA4QEMIAEAAAAu3QBHtQIcAOEBDCABAAAAL90ARbUiGwDhAQwgAQAAADLdAAe1gv8A4QEMIAEAAAAz3QAHtUJrAOEBIgABAAAANN0ABrXiJgDhAQwgAQAAADfdAAW1QhoA4QEMIAEAAAA23QAHtcKLAeEBDCABAAAAN90AB7UiGQDhAR4gAQAAADjdAAa1gicA4QEaQAEAAAA43QAFtUIrAOEBDCABAAAAON0ABbWiNgDhAQwgAQAAADvdAAe14hUA4QEaQAEAAAA43QAFtcItAOEBDCABAAAAPd0AB7VCDwHhAQwgAQAAAD7dAAe1wk8A4QEMIAEAAAA/3QAHtaLHAdkBDCABAAAAQN0AB7ViHgDhAQwgAQAAAEHdAAe1AhwA4QEMIAEAAABC3QAHtcL3AOEBDCABAAAAQ90AB7XiNQDhAQwgAQAAAETdAAe14vMA4QEMIAEAAABF3QAHtYI1AOEBDCABAAAARt0AB7ViJADhAQwgAQAAAEfdAAe1YiQA4QEMIAEAAABI3QAHtWIkAOEBDCABAAAASd0AB7ViewDhAQwgAQAAAErdAAe1wiwA4QEMIAEAAABL3QAHtWIkAOEBDCABAAAATN0AB7XCHgDhAQwgAQAAAE3dAAe1IhgA4QEMIAEAAABO3QAHteJjAOEBDCABAAAAT90AB7UCJQDhAQwgAQAAAFDdAAe1ojsA4QEMIAEAAABR3QAHtQJvAOEBDCABAAAAVt0ABbXCFwDhARYEAQAAAFPdAAe1whoA4QEcDAEAAABU3QAHtUJJAOEBDCABAAAAVd0AB7XiPADhAQwgAQAAAFbdAAe1YiYA4QEMIAEAAABX3QAHtWIkAOEBDCABAAAAWN0AB7XifQDhAQwgAQAAAFndAAe14n8A4QEMIAEAAABZ3QAFtSI8AOEBFgQBAAAAW90AB7WCHADhARYEAQAAAFzdAAe1wh8A4QEMIAEAAABd3QAHtWIkAOEBDCABAAAAXt0AB7XCHwDhAQwgAQAAAF/dAAe1YiQA4QEMIAEAAABg3QAHtWIkAOEBDCABAAAAYd0AB7UiGADhAQwgAQAAAGLdAAe1YiQA4QEMIAEAAABj3QAHtWI2AOEBDCABAAAAZN0AB7UCIgDhAQwgAQAAAGXdAAe1YiQA4QEMIAEAAABm3QAHtWIkAOEBDCABAAAAZ90AB7UiQgDhAQwgAQAAAGjdAAe1Qi4A4QEMIAEAAABp3QAHtSIcAOEBDCABAAAAat0AB7UiGADhAQwgAQAAAGvdAAe1YsYB2QEMIAEAAABs3QAHtaIaAOEBDCABAAAAbd0AB7WiFgDhAQwgAQAAAG7dAAe1IiYA4QEaQAEAAABv3QAHtYIfAOEBDCABAAAAcN0AB7XiFQDhARpAAQAAAG/dAAW1AioA4QEaQAEAAABv3QAFtSI8AOEBFgQBAAAAc90AB7XCGgDhARwMAQAAAHTdAAe1YiAA4QEMIAEAAAB13QAHtWJkAOEBDCABAAAAdt0AB7UCJQDhARYEAQAAAHfdAAe1ghwA4QEWBAEAAAB43QAHtcIaAOEBHAwBAAAAed0AB7ViIADhAQwgAQAAAHrdAAe1oiQA4QEMIAEAAAB73QAHtWIuAOEBIgABAAAAfN0ABrViNgDhASIAAQAAAH3dAAa1Yi4A4QEWBAEAAAB+3QAHteIhAOEBDCABAAAAf90AB7ViIADhAQwgAQAAAIDdAAe1wh0A4QEMIAEAAACB3QAHtSI8AOEBDCABAAAAgt0AB7ViJADhARYEAQAAAIPdAAe2IjcA5wEYMAEAAACE3RAFtSI3AOEBGDABAAAAhN0AB7UCPADhAQwgAQAAAIbdAAe1YiQA4QEWBAEAAACH3QAHteIhAOEBDCABAAAAiN0AB7XCLQDhAQwgAQAAAIndAAe1YjcA4QEMIAEAAACK3QAHtWLgAOEBDCABAAAAjN0ABbWiVADhAQwgAQAAAIzdAAe1QnMA4QEMIAEAAACN3QAHtYIcAOEBFgQBAAAAjt0AB7ViIADhAQwgAQAAAI/dAAe14lIA4QEMIAEAAACQ3QAHtUJJAOEBDCABAAAAkd0AB7WiTgDhAQwgAQAAAJLdAAe1gkMA4QEMIAEAAACT3QAHtQIqAOEBDCABAAAAk90ABbXCPADhARYEAQAAAJXdAAe1ghwA4QEWBAEAAACW3QAHtcIaAOEBHAwBAAAAl90AB7WiJwDhARpAAQAAAJ3dAEe1gicA4QEaQAEAAACe3QBFtSIrAOEBDCABAAAAmt0AB7VCKwDhARpAAQAAAKDdAEW14hUA4QEaQAEAAACh3QBFtYIwAOEBGkABAAAAnd0AB7WiMADhARpAAQAAAJ3dAAW1okYA4QEMIAEAAACf3QAHtcIwAOEBGkABAAAAnd0ABbXiFQDhAR4AAQAAAJ3dAAK1giAA4QEMIAEAAACi3QAHteIeAOEBDCABAAAAo90AB7WCMgDhAQwgAQAAAEhxAEe1AiEA4QEMIAEAAABLcQBFtSIcAOEBDCABAAAApt0AB7WigwHhAQwgAQAAAKfdAAe1AkEA4QEMIAEAAACo3QAHtUIaAOEBDCABAAAAqd0AB7XCSADhAQwgAQAAAKrdAAe1IhwA4QEMIAEAAACr3QAHtaInAOEBGkABAAAArN0AB7ViIADhAQwgAQAAAK3dAAe1gjAA4QEaQAEAAACu3QAHtQJBAOEBDCABAAAAr90AB7VCgQDhAQwgAQAAALDdAAe1IhoA4QEWBAEAAACx3QAHtYIcAOEBFgQBAAAAst0AB7XCGgDhARwMAQAAALPdAAe1wscB4QEWBAEAAAC03QAHteLHAeEBDCABAAAAtd0AB7UCXADhAQwgAQAAALbdAAe1YjcA4QEMIAEAAAC33QAHtWIYAeEBDCABAAAAuN0AB7XCkgHhAQwgAQAAALndAAe1Am8A4QEMIAEAAAC63QAFtUJoAOEBDCABAAAAut0ABbXiLgDhAQwgAQAAALzdAAe1gjQA4QEWBAEAAAC93QAHteIuAOEBDCABAAAAvt0AB7ViJADhARYEAQAAAL/dAAe1wh0A4QEMIAEAAADA3QAHtSJWAOEBDCABAAAAwd0AB7VCHQDhARYEAQAAAMLdAAe1ojwA4QEMIAEAAADD3QAHtWJwAOEBDCABAAAAxN0AB7WCFwDhARpAAQAAAMXdAAe1AhkA4QEMIAEAAADG3QAHtiIYAOcBDCABAAAAyN0QBbUiGADhAR4gAQAAAMjdAAa1onsA4QEMIAEAAADJ3QAHtaIYAOEBGkABAAAAyN0ABbXiLADhAQwgAQAAAMvdAAe1Ai0A4QEsAAEAAADM3QAGtcIaAOEBHAwBAAAAzd0AB7VCLQDhAQwgAQAAAM7dAAe1YioA4QEMIAEAAADP3QAHtSI3AOEBHiABAAAAyN0ABLUiGgDhARYEAQAAANHdAAe1whoA4QEcDAEAAADS3QAHtUIdAOEBDCABAAAA090AB7VCLQDhAQwgAQAAANTdAAe1YpUA4QEiBAEAAADj3QBGtWIuAOEBFgQBAAAA1t0AB7VCLQDhAQwgAQAAANfdAAe1wlYA4QEWBAEAAADj3QAFtcJKAOEBFgQBAAAA490ABbXiFQDhARpAAQAAAMjdAAW1wkgA4QEMIAEAAADb3QAHtQItAOEBFgQBAAAA3N0AB7ViQADhAQwgAQAAAN3dAAe14kQA4QEWBAEAAADe3QAHtYIcAOEBFgQBAAAA390AB7ViIADhAQwgAQAAAODdAAe1QkkA4QEMIAEAAADh3QAHteIuAOEBDCABAAAA4t0AB7UiOwDhASIEAQAAAOPdAAa1ojYA4QEMIAEAAADk3QAHtUIPAeEBDCABAAAA5d0AB7ViNgDhAQwgAQAAAObdAAe1IhkA4QEMIAEAAADn3QAHtUIrAOEBDCABAAAA590ABbWCFwDhAQwgAQAAAOndAAe1YiQA4QEMIAEAAADq3QAHtWIkAOEBDCABAAAA690AB7UCcgDhAQwgAQAAAOzdAAe1YjgA4QEMIAEAAADs3QAFtaI7AOEBDCABAAAA7t0AB7VCHwDhAQwgAQAAAO/dAAe1IjoA4QEaQAEAAADw3QAHtSIeAOEBDCABAAAA8d0AB7XCGADhARYEAQAAAPLdAAe1IjQA4QEWBAEAAADz3QAHtWIcAOEBFgQBAAAA9N0AB7UCLwDhAQwgAQAAAPXdAAe1QsIA4QEMIAEAAAD23QAHtYJIAOEBDCABAAAA990AB7UiGgDhARYEAQAAAPjdAAe1gogB4QEMIAEAAAD53QAHtSIjAOEBDCABAAAA+t0AB7XiaQDhAQwgAQAAAPvdAAe1ghwA4QEWBAEAAAD83QAHtQI4AOEBDCABAAAA/d0AB7UCGQDhAQwgAQAAAP7dAAe1YhoA4QEMIAEAAAD/3QAHtQIZAOEBDCABAAAAAN4AB7WCIQDhARYEAQAAAAHeAAe1QiAA4QEMIAEAAAAC3gAHtYIxAOEBGkABAAAABt4ABbXCVgDhAQwgAQAAAATeAAe1IiAA4QEeAAEAAAAG3gAEtWJkAOEBHkABAAAABt4ABrXiFQDhARpAAQAAAAbeAAW1IjQA4QEWBAEAAAAI3gAHtYIcAOEBFgQBAAAACd4AB7XCGgDhARwMAQAAAAreAAe1QiAA4QEMIAEAAAAL3gAHtaJUAOEBDCABAAAADN4AB7UCGQDhAQwgAQAAAA3eAAe1giEA4QEWBAEAAAAO3gAHteIVAOEBDCABAAAAD94AB7VCGQDhAQwgAQAAABDeAAe1IkYA4QEMIAEAAAAR3gAHtWIuAOEBFgQBAAAAEt4AB7ViQADhAR4gAQAAABPeAAa1YhkA4QEaQAEAAAAT3gAFtYJDAOEBDCABAAAAFd4AB7UCKgDhAQwgAQAAABXeAAW1wjwA4QEWBAEAAAAX3gAHtcIaAOEBHAwBAAAAGN4AB7XiFQDhARpAAQAAABPeAAW1QpgA4QEeIAEAAAAT3gAEtYIgAOEBDCABAAAAG94AB7XiIADhAQwgAQAAABzeAAe14iEA4QEMIAEAAAAd3gAHtWIgAOEBDCABAAAAHt4AB7ViQADhAQwgAQAAAB/eAAe1giAA4QEMIAEAAAAg3gAHtaK9AOEBGkABAAAAId4ABbViVgDhARpAAQAAACHeAAW14hUA4QEaQAEAAAAh3gAFtYIcAOEBFgQBAAAAJN4AB7VCLQDhAQwgAQAAACXeAAe14h4A4QEMIAEAAAAm3gAHtSI0AOEBFgQBAAAAJ94AB7WCHADhARYEAQAAACjeAAe1whoA4QEcDAEAAAAp3gAHtUIdAOEBDCABAAAAKt4AB7ViIADhAQwgAQAAACveAAe1AjgA4QEMIAEAAAAs3gAHtWJAAOEBDCABAAAALd4AB7XiOgDhAQwgAQAAAC7eAAe1Yl4A4QEMIAEAAAAv3gAHtQJcAOEBDCABAAAAMN4AB7XiLgDhAQwgAQAAADHeAAe1whgA4QEMIAEAAAAy3gAHtUIaAOEBDCABAAAAM94AB7WidgDhAQwgAQAAAPndAAW1oicA4QEaQAEAAAA13gAHtYIhAOEBFgQBAAAANt4AB7VCIADhAQwgAQAAADfeAAe1gjAA4QEaQAEAAAA43gAHtcIwAOEBGkABAAAAON4ABbVCkQDhARpAAQAAADreAAW1YpEA4QEaQAEAAAA63gAFteIVAOEBGkABAAAAOt4ABbViGADhAQwgAQAAAD3eAAe1gqEA4QEaQAEAAAA+3gAHtSIcAOEBDCABAAAAP94AB7UiGgDhARYEAQAAAEDeAAe1Ij0A4QEMIAEAAABB3gAHteIhAOEBDCABAAAAQt4AB7ViXgDhARYEAQAAAEPeAAe1IhgA4QEMIAEAAABE3gAHtSIYAOEBDCABAAAARd4AB7XiIwDhARYEAQAAAEbeAAe1IhkA4QEeIAEAAABH3gAGtUJJAOEBDCABAAAASN4AB7VCKwDhAQwgAQAAAEfeAAW14hUA4QEMIAEAAABK3gAHtQI4AOEBDCABAAAAS94AB7UiGgDhARYEAQAAAEzeAAe1IhoA4QEWBAEAAABN3gAHtWIuAOEBFgQBAAAATt4AB7VCGgDhAQwgAQAAAE/eAAe1ghwA4QEWBAEAAABQ3gAHtWIgAOEBDCABAAAAUd4AB7VCSQDhAQwgAQAAAFLeAAe1AkYA4QEMIAEAAABT3gAHtQIvAOEBDCABAAAAVN4AB7UiHADhAQwgAQAAAFXeAAe1wkQA4QEMIAEAAABW3gAHtaJQAOEBDCABAAAAV94AB7WCYADhAQwgAQAAAFjeAAe1QkkA4QEMIAEAAABZ3gAHtSIcAOEBDCABAAAAWt4AB7UiLADhAQwgAQAAAHLeAAW1AkYA4QEMIAEAAABc3gAHtcJZAOEBDCABAAAAXt4ABbXibgDhAQwgAQAAAF7eAAe1IhoA4QEWBAEAAABf3gAHtUI5AOEBFgQBAAAAYN4AB7WCigDhAQwgAQAAAGHeAAe1oqQA4QEMIAEAAABi3gAHtQImAOEBDCABAAAAY94AB7UiIwDhAQwgAQAAAGTeAAe1ohoA4QEWBAEAAABl3gAHtSIYAOEBDCABAAAAZt4AB7XCLQDhAQwgAQAAAGfeAAe1okoA4QEMIAEAAABp3gAFtWIvAOEBDCABAAAAad4ABbViOQDhAQwgAQAAAGreAAe1IlIA4QEMIAEAAABq3gAFtUIrAOEBDCABAAAAbd4ABbUiHADhAQwgAQAAAG3eAAe1IhoA4QEWBAEAAABu3gAHtcIaAOEBHAwBAAAAb94AB7UiIADhAQwgAQAAAHHeAAW1InMA4QEMIAEAAABx3gAHtSI1AOEBDCABAAAAct4AB7UCyAHhAQwgAQAAAHPeAAe1Qi0A4QEMIAEAAAB03gAHtaIZAOEBHgABAAAAdd4ABrWCHADhARYEAQAAAHbeAAe14iEA4QEMIAEAAAB33gAHtUIgAOEBDCABAAAAeN4AB7XCGgDhARwMAQAAAHneAAe1YhsA4QEMIAEAAAB63gAHtUIdAOEBDCABAAAAe94AB7WiTQDhAQwgAQAAAHveAAW1YiAA4QEMIAEAAAB93gAHtaI9AOEBDCABAAAAfd4ABbUChgDhARpAAQAAAHXeAAW14hUA4QEaQAEAAAB13gAFtYIcAOEBFgQBAAAAgd4AB7VCLQDhAQwgAQAAAHXeAAe1AkEA4QEMIAEAAACD3gAHtYIgAOEBDCABAAAAhN4AB7XiRADhARYEAQAAAIXeAAe1ghwA4QEWBAEAAACG3gAHtcIaAOEBHAwBAAAAh94AB7ViIADhAQwgAQAAAIjeAAe1QkkA4QEMIAEAAACJ3gAHtSIaAOEBFgQBAAAAit4AB7ViIADhAQwgAQAAAIveAAe1Ij0A4QEMIAEAAACM3gAHtSJ0AOEBDCABAAAAjd4AB7WCSADhAQwgAQAAAI7eAAe1YiQA4QEMIAEAAACP3gAHtSIhAOEBDCABAAAAkN4AB7WCHADhAQwgAQAAAJHeAAe1YiAA4QEMIAEAAACS3gAHtQI4AOEBDCABAAAAk94AB7UiGADhAQwgAQAAAJTeAAe1YiAA4QEMIAEAAACV3gAHtUJJAOEBDCABAAAAlt4AB7UiGADhAQwgAQAAAJfeAAe14kQA4QEWBAEAAACY3gAHtWIcAOEBFgQBAAAAmd4AB7ViHADhARYEAQAAAJreAAe1AlwA4QEMIAEAAACb3gAHtSI9AOEBDCABAAAAnN4AB7VCTADhAQwgAQAAAJ3eAAe3IsgB1QEMIAEAAACe3gAFt0JqANkBDCABAAAAn94AB7eizADhAQwgAQAAAKDeAAe3Qh0A4QEWBAEAAACh3gAHt+IhAOEBDCABAAAAot4AB7eCZwDhATAAAQAAAKPeAAa3YiAA4QEMIAEAAACk3gAHtyIaAOEBFgQBAAAApd4AB7fCdwDhATAgAQAAAKbeAAa3YsgA4QEMIAEAAACn3gAHt6I0AOEBDCABAAAAqN4AB7fiHgDhAQwgAQAAAKneAAe3gjIA4QEMIAEAAACq3gAHt0LIAeEBDCABAAAAq94AB7diyAHZAQwgAQAAAKzeAAe3wjkA4QEMIAEAAACt3gAHtyJqAOEBDCABAAAArt4AB7ei0QDhAQwgAQAAAK/eAAe3IjwA2QEMIAEAAACw3gAHt8JpAOEBDCABAAAAsd4AB7diwADhAQwgAQAAALLeAAe3AqsA4QEMIAEAAACz3gAHtyJ0AOEBFgQBAAAAtN4AB7cigQDhARYEAQAAALXeAAe3QpAA4QEMIAEAAAC23gAHt2LAAOEBDCABAAAAt94AB7eixwDhAQwgAQAAALjeAAe3wqUA4QEMIAEAAAC53gAHt6JRAOEBDCABAAAAut4AB7ciKwHhAQwgAQAAALveAAe3QlcA4QEeQAEAAAC83gAGt6IXAOEBHAwBAAAAvd4AB7diwADhAQwgAQAAAL7eAAe3Qs8A4QEMIAEAAAC/3gAHt0KcAOEBDCABAAAAwN4AB7cChgDhARpAAQAAALzeAAW3osIA4QEMIAEAAADC3gAHt4JMAOEBDCABAAAAw94AB7ciggDhAQwgAQAAAMTeAAe3olIA4QEMIAEAAADF3gAHt6KqAOEBHiABAAAAxt4ABrfCVgDhARYEAQAAANPeAAW3wkoA4QEWBAEAAADT3gAFt+IVAOEBHkABAAAAvN4AArcCdgDhAR4AAQAAAMreAAa3AkAA4QEWBAEAAADL3gAHt8LDAOEBDCABAAAAzN4AB7cCWADhAQwgAQAAAMreAAW34hUA4QEaQAEAAADK3gAFt4JMAOEBDCABAAAAz94AB7eiqgDhAQwgAQAAANDeAAe3ImUA4QEeIAEAAAC83gAEt0KhAOEBDCABAAAA0t4AB7cCwgDhARYEAQAAANPeAAe3Yi4A4QEeIAEAAADU3gAGtwKGAOEBGkABAAAA1N4ABbeCTADhAQwgAQAAANbeAAe34hUA4QEaQAEAAADU3gAFt0ItAOEBDCABAAAA1N4ABbcCHwDhAQwgAQAAANneAAe34h4A4QEMIAEAAADa3gAHt4IyAOEBDCABAAAA294AB7cCLwDhAQwgAQAAANzeAAe3AigA4QEMIAEAAADd3gAHtyKDAOEBDCABAAAA3t4AB7eiKwDhAQwgAQAAAN/eAAe3Qi0A4QEMIAEAAACw3gAFt2JAAOEBDCABAAAA4d4AB7fCPADhARYEAQAAAOLeAAe3ohoA4QEiAAEAAADj3gAGt8IaAOEBHAwBAAAA5N4AB7dCJADhARYEAQAAAOXeAAe34iAA4QEeIAEAAADm3gAGt2IfAOEBIEABAAAA5t4AArcCIQDhAR4gAQAAAObeAAS3InQA4QEWBAEAAADp3gAHt6IkAOEBHAwBAAAA6t4AB7diGwDhAQwgAQAAAOveAAe34hUA4QEeAAEAAADm3gACt0LkAOEBDCABAAAA7d4AB7dCUQDhAQwgAQAAAO7eAAe3AnIA2QEMIAEAAADv3gAHt+I/AOEBHgABAAAA8N4ABrfiFQDhASAAAQAAAPDeAAK3Ak8A4QEMIAEAAADy3gAHt4JeAOEBDCABAAAA894AB7cCnQHhAQwgAQAAAPTeAAe3ogcB2QEMIAEAAAD13gAHtwKkAOEBFgQBAAAA9t4AB7fiTgDhAR4gAQAAAPfeAAa3QjoA4QEaQAEAAAD33gAFt0JrAOEBLAwBAAAA+d4ABrdiKADhAQwgAQAAAPfeAAW3wowA4QEMIAEAAAD73gAHt+IVAOEBGkABAAAA994ABbeCMQDhARYEAQAAAP3eAAe3AnMA4QEMIAEAAAD+3gAHt2IeAOEBDCABAAAA/94AB7fCVgDhAQwgAQAAAADfAAe3glYA4QEaQAEAAAAB3wAHt0I6AOEBFgQBAAAAAt8AB7diKADhARpAAQAAAAHfAAW34hUA4QEgAAEAAAAB3wACt2IxAOEBHAwBAAAABd8AB7fCLgDhAQwgAQAAAAbfAAe3IiAA4QEMIAEAAAD13gAFtyKFAOEBDCABAAAACN8AB7ciGgDhARYEAQAAAAnfAAe3ghwA4QEWBAEAAAAK3wAHt4J+AOEBDCABAAAAC98AB7ciNADhARYEAQAAAAzfAAe3QiAA4QEMIAEAAAAN3wAHt+IeAOEBDCABAAAADt8AB7cCogDhAR4AAQAAAA/fAAa34hUA4QEWBAEAAAAQ3wAHt4LIAdkBHiABAAAAEd8ABreiTADhAQwgAQAAABLfAAe3IkgA4QEMIAEAAAAT3wAHtyJuAOEBHgABAAAAFN8ABrfiFQDhAR4AAQAAABTfAAK34hgA4QEMIAEAAAAT3wAFt6IjAOEBDCABAAAAF98AB7fCIwDhAQwgAQAAABffAAW3oiYA4QEaQAEAAAAR3wAFtwJGAOEBDCABAAAAGt8AB7fCVgDhARYEAQAAACHfAAW3wkoA4QEWBAEAAAAh3wAFt+IVAOEBGkABAAAAEd8ABbeiIwDhARYEAQAAAB7fAAe3YmkA4QEcDAEAAAAf3wAHt2IbAOEBDCABAAAAIN8AB7diogDhASIAAQAAACHfAAa3ohcA4QFEAAEAAAAi3wAGt+IVAOEBGkABAAAAIt8ABbciZQDhAR4AAQAAACLfAAS3QiUA4QEWBAEAAAAl3wAHt2IbAOEBDCABAAAAJt8AB7dCUQDhAQwgAQAAACffAAe3wkIA4QEMIAEAAAAo3wAHt8IYAOEBHiABAAAAKd8ABrcCGQDhAQwgAQAAACrfAAe3wscB4QEMIAEAAAAr3wAHt8IdAOEBDCABAAAALN8AB7cisQDhAQwgAQAAAC3fAAe3IpAA4QEMIAEAAAAu3wAHtwIbAeEBDCABAAAAEd8ABbfCWADhAQwgAQAAADDfAAe34hUA4QEMIAEAAAAx3wAHt0IcAOEBDCABAAAAMt8AB7diegDhAQwgAQAAADPfAAe3YlEA4QEMIAEAAAA03wAHt0IZAOEBDCABAAAANd8AB7eiUgDhAQwgAQAAADbfAAe3osgB2QEMIAEAAAA33wAHt+KjAOEBDCABAAAAON8AB7ciVwDhAQwgAQAAADnfAAe3YsAA4QEMIAEAAAA63wAHt6LeAOEBDCABAAAAO98AB7fCyAHhAQwgAQAAADzfAAe3ot4A4QEMIAEAAAA93wAHtwI0AOEBFgQBAAAAPt8AB7diIgDhARYEAQAAAD/fAAe34h4A4QEMIAEAAABA3wAHtwK0AOEBDCABAAAAQd8AB7ei2wDhAQwgAQAAAELfAAe3AiMA4QEMIAEAAABD3wAHt0I4AOEBHiABAAAARN8ABrcCNwDhAQwgAQAAAEnfAAe3AkAA4QEaQAEAAABE3wAFt0KOAeEBDCABAAAAS98ABbcCWADhAQwgAQAAAETfAAe3opMA4QEMIAEAAABJ3wAFtyL5AOEBDCABAAAASt8AB7fiPQDhAQwgAQAAAEvfAAe3giQA4QEMIAEAAABM3wAHtyKEAOEBGkABAAAATd8AB7fiOgDhAQwgAQAAAE7fAAe3gh8A4QEMIAEAAABP3wAHt+IVAOEBGkABAAAATd8ABbcCKgDhARpAAQAAAE3fAAW3oloA4QEMIAEAAABS3wAHt+I6AOEBDCABAAAAU98AB7fiVADhAQwgAQAAAFLfAAW34hUA4QEeQAEAAABE3wACt2J6AOEBDCABAAAAVt8AB7fiOgDhAR4AAQAAAFffAAa3oiYA4QEWBAEAAABY3wAHt8ImAOEBDCABAAAAWd8AB7fiJgDhAR4AAQAAAFffAAS34hUA4QEeAAEAAABX3wACtwI0AOEBDCABAAAAXN8AB7diHwDhARYEAQAAAF3fAAe3AmcA4QEMIAEAAABc3wAFt0KmAOEBDCABAAAAX98AB7cCGQDhAQwgAQAAAGDfAAe3Ak8A4QEMIAEAAABh3wAHt4IxAOEBGkABAAAAZN8ABbciIADhARpAAQAAAGTfAAW3oikA4QEeAAEAAABk3wAGt+IVAOEBGkABAAAAZN8ABbdiTgDhAR4gAQAAAGbfAAa3IhkA4QEMIAEAAABn3wAHt0JjAOEBDCABAAAAZt8ABbfigQDhAQwgAQAAAFbfAAW3giQA4QEMIAEAAABq3wAHt2IkAOEBDCABAAAAa98AB7fCNADhARYEAQAAAGzfAAe3YhwA4QEWBAEAAABt3wAHt0IgAOEBDCABAAAAbt8AB7ciZADhAR4gAQAAAG/fAAa34joA4QEMIAEAAABw3wAHt6IjAOEBDCABAAAAcd8AB7fCKgDhAQwgAQAAAHLfAAe34hUA4QEeAAEAAABv3wACt2IbAOEBFgQBAAAAdN8AB7ciYADhAR4gAQAAAG/fAAS3YhwA4QEWBAEAAAB23wAHt2IqAOEBDCABAAAAd98AB7fiNADhAQwgAQAAAHjfAAe3glAA4QEMIAEAAAB53wAHt4JQAOEBDCABAAAAet8AB7fCHwDhAQwgAQAAAHvfAAe34sAA4QEeIAEAAAB83wAGt2J9AOEBDCABAAAAfd8AB7fiFQDhARpAAQAAAHzfAAW3IkUA4QEMIAEAAAB/3wAHtwJAAOEBFgQBAAAAgN8AB7dCbwDhARYEAQAAAIHfAAe34j4A2QEeIAEAAACC3wAGt4JEAOEBDCABAAAAg98AB7fiQADhAQwgAQAAAITfAAe3wgIA4QEMIAEAAACF3wAHt6JAAOEBDCABAAAAht8AB7cioADhAR4gAQAAAIffAAa3Qk4A4QEiAAEAAACI3wAGt8I2AOEBDCABAAAAid8AB7diGQDhASAAAQAAAIffAAK3wiMA4QEaQAEAAACH3wAFt4LoAOEBDCABAAAAjN8AB7fiFQDhARpAAQAAAIffAAW3AhkA4QEMIAEAAACO3wAHtyI0AOEBDCABAAAAj98AB7fiMwDhAQwgAQAAAJDfAAe3YiQA4QEeAAEAAACR3wAGt0JrAOEBFgQBAAAAkt8AB7dCLgDhAQwgAQAAAJPfAAe3IkUA4QEMIAEAAACU3wAHtyIYAOEBDCABAAAAld8AB7ciNwDhAR4AAQAAAJHfAAS3go0A4QEMIAEAAACX3wAHtyKFAOEBDCABAAAAmd8ABbciNgDhAQwgAQAAAJnfAAe3olIA4QEMIAEAAACa3wAHt6IjAOEBDCABAAAAm98AB7fCIwDhAQwgAQAAAJvfAAW3gjkA4QEMIAEAAACd3wAHt+IVAOEBGiABAAAAnt8AB7fCJgDhAQwgAQAAAJ/fAAe34hUA4QEaQAEAAACe3wAFtyKnAOEBGkABAAAAnt8ABbcCNQDhAQwgAQAAAKLfAAe3IkAA4QEMIAEAAACj3wAHtyJuAOEBDCABAAAApN8AB7fCVgDhARYEAQAAAN7fAAW3wkoA4QEWBAEAAADe3wAFt+IVAOEBHgABAAAAgt8AArcCGQDhAR4AAQAAAKjfAAa3ohgA4QEWBAEAAACp3wAHt2I3AOEBDCABAAAAqt8AB7fitwDhAS4EAQAAAKvfAAa3IroA4QEMIAEAAACs3wAHt6LJAOEBDCABAAAArd8AB7ciIADhARpAAQAAAK/fAAW3wjUA4QEaQAEAAACv3wAHt6IjAOEBFgQBAAAAsN8AB7diGwDhAQwgAQAAALHfAAe3ItcA4QEMIAEAAACy3wAHt0J7AOEBDCABAAAAst8ABbfCTADhAQwgAQAAALTfAAe3YvUA4QEMIAEAAAC13wAHt0J2AOEBDCABAAAAtt8AB7fCMwDhAQwgAQAAALffAAe3In0A4QEeAAEAAAC43wAGt0JoAOEBDCABAAAAtt8ABbeCFwDhARYEAQAAALrfAAe34hkA4QEWBAEAAAC73wAHt6IkAOEBHAwBAAAAvN8AB7fiuQDhARYEAQAAAL3fAAe3YlYA4QEMIAEAAAC+3wAHt6IgAOEBFgQBAAAAv98AB7eiGADhARpAAQAAAILfAAW3YioA4QEMIAEAAADB3wAHt+IVAOEBHkABAAAAgt8AArdiVgDhAQwgAQAAAMPfAAe3AjUA4QEMIAEAAADE3wAFt8JZAOEBDCABAAAAxN8ABbdibwDhAQwgAQAAAMbfAAe3YsAA4QEMIAEAAADH3wAHtyLGAeEBDCABAAAAyN8AB7cifQDhAQwgAQAAAMnfAAe3IhwA4QEMIAEAAADK3wAHtyJuAOEBDCABAAAAy98AB7fiPADhAQwgAQAAAMzfAAe3glEA4QEMIAEAAADN3wAHtwI6AOEBHkABAAAAzt8ABrfiGQDhARpAAQAAAM7fAAW34hUA4QEaQAEAAADO3wAFtwIwAOEBGkABAAAAzt8ABbdCVwDhAQwgAQAAANLfAAe3gioA4QEeIAEAAACC3wAEt4JDAOEBDCABAAAA1N8AB7eCogDhAQwgAQAAANXfAAe3YlYA4QEWBAEAAADW3wAHtwI6AOEBDCABAAAA198AB7cCRADhAQwgAQAAANjfAAe3YlEA4QEMIAEAAADZ3wAHtyKsAOEBDCABAAAA2t8AB7eCUADhAQwgAQAAANvfAAe3IpsA4QEMIAEAAADc3wAHt0I5AOEBDCABAAAA3d8AB7dCwQDhARYEAQAAAN7fAAW3InwA4QEMIAEAAADf3wAHt0JRAOEBDCABAAAA4N8AB7cCGQDhAQwgAQAAAOHfAAe3ImsA4QEeIAEAAADi3wAGt2IfAOEBGkABAAAA4t8ABbcCKgDhAR4gAQAAAOLfAAS3YhwA4QEWBAEAAADl3wAHt6IqAOEBHAwBAAAA5t8AB7diGwDhAQwgAQAAAOffAAe34sgB2QEeAAEAAADo3wAGt+I6AOEBDCABAAAA6d8AB7fCgQDhAQwgAQAAAOrfAAe3gqIA4QEeIAEAAADr3wAGt+JhAOEBDCABAAAA7N8AB7diVgDhARpAAQAAAOjfAAW3oiMA4QEMIAEAAADu3wAHt8IjAOEBDCABAAAA7t8ABbfiFQDhAQwgAQAAAPDfAAe3oooA4QEMIAEAAADx3wAHt2IkAOEBDCABAAAA8t8AB7ciNwDhAQwgAQAAAPLfAAW3wkQA4QEMIAEAAAD03wAHt2IkAOEBDCABAAAA9d8AB7eCYADhAQwgAQAAAPbfAAe3YiQA4QEMIAEAAAD33wAHt2IkAOEBDCABAAAA+N8AB7fifwDhAQwgAQAAAOvfAAW3YuYA4QEMIAEAAAD63wAHt2JUAOEBDCABAAAA+98AB7fCjADhAQwgAQAAAPzfAAe3giQA4QEMIAEAAAD93wAHt+IVAOEBRAABAAAA6N8AArciggDhAQwgAQAAAP/fAAe3QmkA4QEMIAEAAAAA4AAHt+KKAOEBDCABAAAAAeAAB7diVgDhARpAAQAAAOjfAAW34hUA4QEaQAEAAADo3wAFtwL0AOEBDCABAAAABOAAB7di7ADhAQwgAQAAAAXgAAe3gm8A4QEMIAEAAAAG4AAHtyIeAOEBDCABAAAAB+AAB7dCHgDhAQwgAQAAAAjgAAe3Yh4A4QEWBAEAAAAJ4AAHt8IgAOEBHAwBAAAACuAAB7diGwDhAQwgAQAAAAvgAAe3InQA4QEeAAEAAAAM4AAGtyIzAOEBGkABAAAADOAABbdCMwDhAR4AAQAAAAzgAAS3QosA4QEMIAEAAAAP4AAHtyIbAOEBDCABAAAAEOAAB7cCfwDhAQwgAQAAABHgAAe3AskB4QEMIAEAAAAS4AAHt4IXAOEBHgABAAAAE+AABrfiGQDhARpAAQAAABPgAAW3AhoA4QEeIAEAAAAT4AAEt4IcAOEBFgQBAAAAFuAAB7fCGgDhARwMAQAAABfgAAe34hUA4QEaQAEAAAAT4AAFtwLWAOEBDCABAAAAGeAABbciyQHhAQwgAQAAABngAAe34lIA4QEMIAEAAAAb4AAHt4LAAOEBDCABAAAAHOAAB7dCyQHhAQwgAQAAAB3gAAe3YlQA4QEeAAEAAAAe4AAGt+IVAOEBGkABAAAAHuAABbdiyQHhAQwgAQAAACDgAAe3QskB4QEMIAEAAAAh4AAHtwJkAOEBDCABAAAAIuAAB7cCLwDhAQwgAQAAACPgAAe3YiIA4QEMIAEAAAAk4AAHt6IaAOEBFgQBAAAAJeAAB7eiKQDhARYEAQAAACbgAAe3glEA4QEMIAEAAAAn4AAFt0JoAOEBDCABAAAAJ+AABbdiJADhARYEAQAAACngAAe3YhwA4QEWBAEAAAAq4AAHt0I5AOEBDCABAAAAK+AAB7diOgDhAQwgAQAAACzgAAe3QmwA4QEeAAEAAAAt4AAGt4InAOEBFgQBAAAALuAAB7ciKwDhAQwgAQAAAC/gAAe3QisA4QEaQAEAAAAt4AAFt+IVAOEBHgABAAAALeAAAreCPAHhAQwgAQAAADLgAAe3Ik8A4QEMIAEAAAAz4AAHt2JGAOEBDCABAAAANOAAB7fiHAHhAQwgAQAAADXgAAe3ghcA4QEWBAEAAAA24AAHtyIjAOEBDCABAAAAN+AAB7fiDwHhAR4gAQAAADjgAAa3ImsA4QEMIAEAAAA54AAHtwJAAOEBGkABAAAAOOAABbfiFQDhARpAAQAAADjgAAW3AlwA4QEMIAEAAAA84AAHt+KKANkBHiABAAAAPeAABreiuADhAQwgAQAAAD7gAAe34hoA4QEMIAEAAAA/4AAHt0J1AOEBDCABAAAAQOAAB7cCNgHhARpAAQAAAEHgAAW34hkA4QEaQAEAAABB4AAFt+IVAOEBGkABAAAAQeAABbcioQDhAR4gAQAAAETgAAa3omIA4QEMIAEAAABF4AAHt2IZAOEBIEABAAAAROAAAreCQwDhAQwgAQAAAEfgAAe3oooA4QEMIAEAAABI4AAHtwIqAOEBDCABAAAAR+AABbfCIwDhAR4gAQAAAETgAAS3wowA4QEeAAEAAABL4AAGt8JWAOEBFgQBAAAAUeAABbfCSgDhARYEAQAAAFHgAAW34hUA4QEeQAEAAABE4AACt8JCAOEBDCABAAAAT+AAB7ciGADhAQwgAQAAAFDgAAe3ojcA4QEWBAEAAABR4AAHt2IcAOEBFgQBAAAAUuAAB7eiKgDhARwMAQAAAFPgAAe3wgIA4QEMIAEAAABU4AAHt+KBAOEBDCABAAAAVOAABbfiiwDhAR4AAQAAAFbgAAa3IkAA4QEMIAEAAABX4AAHt4K7AeEBDCABAAAAWeAABbeC4QDhAQwgAQAAAFngAAe3ojwA4QEMIAEAAABa4AAHt8JWAOEBFgQBAAAAYeAABbfCSgDhARYEAQAAAGHgAAW34lYA4QEcDAEAAABd4AAHt2IbAOEBDCABAAAAXuAAB7fCgwHhAQwgAQAAAGDgAAW3YqsA4QEMIAEAAABg4AAFtyJBAOEBFgQBAAAAYeAAB7fCGQDhARYEAQAAAGLgAAe3giIA4QEcDAEAAABj4AAHt4IxAOEBGkABAAAAd+AABbciIADhARpAAQAAAHfgAAW3oooA4QEWBAEAAABm4AAHt8IaAOEBHAwBAAAAZ+AAB7diGwDhARYEAQAAAGjgAAe3oioA4QEcDAEAAABp4AAHt2IbAOEBDCABAAAAauAAB7fCQgDhAQwgAQAAAGvgAAe3gjcA4QEMIAEAAABs4AAHtwJcAOEBDCABAAAAbeAAB7ciUQDhAQwgAQAAAG7gAAe3wj0A4QEMIAEAAABv4AAHt8IyAOEBHiABAAAAPeAABLfCoADhAQwgAQAAAHHgAAe3wogA4QEMIAEAAABy4AAHtyIeAOEBDCABAAAAc+AAB7fiGQDhASBAAQAAAD3gAAK34hUA4QEeQAEAAAA94AACt2IiAOEBIgABAAAAduAABrdCIADhAR4gAQAAAHfgAAa34hUA4QEaQAEAAAB34AAFt2IxAOEBHAwBAAAAeeAAB7ciHADhAQwgAQAAAHrgAAe3IikA4QEMIAEAAAB74AAHt0IdAeEBHkABAAAAfOAABrfCHgDhARYEAQAAAH3gAAe34hUA4QEaQAEAAAB84AAFt4LJAdkBDCABAAAAf+AAB7eiyQHhAQwgAQAAAIDgAAe3QnQA4QEMIAEAAACA4AAFtyLJAOEBDCABAAAAguAAB7fiGQDhARYEAQAAAIPgAAe3wskB4QEMIAEAAACE4AAHt0LIAeEBDCABAAAAheAAB7fiyQHhAQwgAQAAAIXgAAW3AsoB4QEMIAEAAACH4AAHt8J6AeEBDCABAAAAiOAAB7cCIgDhAQwgAQAAAIngAAe3oucA4QEwAAEAAACK4AAGuCLKAdkBDCABAAAAi+AAB7hCygHZAQwgAQAAAIzgAAe5whkA4QEWBAEAAACN4AAHuQIjAOEBHgABAAAAjuAABrmCFwDhARpAAQAAAI/gAAe54hkA4QEaQAEAAACP4AAFuQIaAOEBGkABAAAAj+AABbniFQDhASAAAQAAAI/gAAK5YjEA4QEcDAEAAACT4AAHuQIZAOEBDCABAAAAlOAAB7mCIQDhARYEAQAAAJXgAAe5oikA4QEWBAEAAACW4AAHucIzAOEBHiABAAAAl+AABrnCGQDhARYEAQAAAJjgAAe5QkoB4QEMIAEAAACZ4AAHuUJ7AOEBDCABAAAAmeAABblCOgDhASBAAQAAAJfgAAK5IiYA4QEMIAEAAACc4AAHuYJMAOEBDCABAAAAneAAB7nCQgDhAQwgAQAAAJ7gAAe5whgA4QEMIAEAAACf4AAHuQJ5AOEBDCABAAAAoOAAB7kieQDhAQwgAQAAAKDgAAW5wh4A4QEiAAEAAACi4AAGuQIZAOEBDCABAAAAo+AAB7miQADhAQwgAQAAAKTgAAe5YigA4QEeIAEAAACX4AAEuYJMAOEBDCABAAAApuAAB7nCNwDhARYEAQAAAKfgAAe5QiAA4QEMIAEAAACo4AAHucIoAOEBHAwBAAAAqeAAB7liGwDhAQwgAQAAAKrgAAe5wt0A4QEMIAEAAACr4AAHueIVAOEBGkABAAAAl+AABbmiqgDhAQwgAQAAAK3gAAe5YnQA4QEMIAEAAACu4AAHuSIuAOEBFgQBAAAAr+AAB7niOgDhAQwgAQAAALDgAAe5AhkA4QEMIAEAAACx4AAHuaInAOEBGkABAAAAu+AAR7mCJwDhARYEAQAAALzgAEe5IisA4QEMIAEAAAC04AAHuUIrAOEBGkABAAAAvuAARbniFQDhARpAAQAAAL/gAEW54iEA4QEMIAEAAAC34AAHuWIgAOEBDCABAAAAuOAAB7kiGgDhARYEAQAAALngAAe5AhkA4QEMIAEAAAC64AAHuYIwAOEBGkABAAAAu+AAB7miMADhARYEAQAAALzgAAe5okYA4QEMIAEAAAC94AAHucIwAOEBGkABAAAAu+AABbniFQDhARpAAQAAALvgAAW5QjQA4QEMIAEAAADA4AAHuSIZAOEBDCABAAAAweAAB7kiGgDhARYEAQAAAMLgAAe54lIA4QEeQAEAAADD4AAGuSIzAOEBGkABAAAAw+AABblCMwDhARpAAQAAAMPgAAW5gk4B4QEsAAEAAADG4AAGueJWAOEBHAwBAAAAx+AAB7niFQDhARpAAQAAAMPgAAW5QlYB4QEsAAEAAADJ4AAGucIxAOEBDCABAAAAyuAAB7niTADhAQwgAQAAAMvgAAe5QioA4QFIBAEAAADM4AAGuWIeAOEBDCABAAAAzeAAB7nCQgDhAQwgAQAAAM7gAAe5glwA4QEcDAEAAADP4AAHuWIbAOEBDCABAAAA0OAAB7mCKgDhAQwgAQAAAMzgAAW5wkIA4QEMIAEAAADS4AAHuSJQAOEBDCABAAAA0+AAB7lCWADhARYEAQAAANTgAAe5AjoA4QEMIAEAAADV4AAHuUKjAOEBDCABAAAA1uAAB7miwwDhAQwgAQAAANbgAAW5giEA4QEWBAEAAADY4AAHuaIkAOEBHAwBAAAA2eAAB7liGwDhAQwgAQAAANrgAAe5opoA4QEeAAEAAADb4AAGueIeAOEBDCABAAAA3OAAB7niLQDhAR4gAQAAAN3gAAa5gjgA4QEWBAEAAADe4AAHuQIiAOEBDCABAAAA3+AAB7lCHQDhAQwgAQAAAODgAAe5ghcA4QEWBAEAAADh4AAHuQIZAOEBDCABAAAA4uAAB7li3QDhAQwgAQAAAOPgAAe5YlQA4QEMIAEAAADk4AAHuWJJAOEBLiABAAAA5eAABrliGwDhAQwgAQAAAObgAAe5YioA4QEMIAEAAADn4AAHuSI3AOEBDCABAAAA5eAABbnCYADhAQwgAQAAAOngAAe5wh4A4QEWBAEAAADq4AAHuQIiAOEBDCABAAAA7OAABbmiPADhAQwgAQAAAOzgAAe5YiIA4QEWBAEAAADt4AAHucIiAOEBDCABAAAA7uAAB7kiLgDhAQwgAQAAAO/gAAe5YpEA4QEMIAEAAADp4AAFuUIeAOEBDCABAAAA8eAAB7nCGADhARYEAQAAAPLgAAe54h4A4QEMIAEAAADz4AAHueIVAOEBGkABAAAA3eAABbmifQDhAR4AAQAAAPXgAAa54hUA4QEeAAEAAAD14AACuYKnAOEBHgABAAAA9eAABLkCXADhAQwgAQAAAPjgAAe5Yi4A4QEWBAEAAAD54AAHuWIbAOEBFgQBAAAA+uAAB7miGADhASBAAQAAAN3gAAK5YioA4QEMIAEAAAD84AAHuQIqAOEBDCABAAAA/OAABbniFQDhAR4gAQAAAN3gAAK54hYA4QEWBAEAAAD/4AAHuWK5AOEBFgQBAAAAAOEAB7nCPADhARYEAQAAAAHhAAe5giAA4QEMIAEAAAAC4QAHuaJNAOEBHiABAAAA3eAABLliHgDhAR4gAQAAAAThAAa5QioA4QEMIAEAAAAF4QAHucIeAOEBFgQBAAAABuEAB7niZgDhARYEAQAAAAfhAAe5AhkA4QEMIAEAAAAI4QAHueIYAOEBDCABAAAACOEABbniGQDhASBAAQAAAAThAAK54h4A4QEMIAEAAAAL4QAHuYJ/AOEBDCABAAAADOEAB7kCJgDhASIAAQAAAA3hAAa54hUA4QEeIAEAAAAE4QACuUJRAOEBDCABAAAAD+EAB7kCMADhAR4gAQAAAAThAAS5wkIA4QEMIAEAAAAR4QAHuQI1AOEBDCABAAAAEuEAB7nCWQDhAQwgAQAAABLhAAW5InQA4QEMIAEAAAAU4QAHuWJ1AOEBDCABAAAAFeEAB7lCMwDhAQwgAQAAABThAAW5QhkA4QEeAAEAAAAX4QAGucJWAOEBFgQBAAAAGuEABbnCSgDhARYEAQAAABrhAAW5Qo8A4QEWBAEAAAAa4QAFuYLAAOEBDCABAAAAG+EAB7niOQDhAQwgAQAAABzhAAe5YiYA4QEMIAEAAAAd4QAHuQIuAOEBDCABAAAAHuEAB7lCLgDhAQwgAQAAAB/hAAe5IhwA4QEMIAEAAAAg4QAHucJPAOEBDCABAAAAIeEAB7liOADhAQwgAQAAACHhAAW5QkEA4QEMIAEAAAAj4QAHuYI7AOEBDCABAAAAJOEAB7niOQDhAQwgAQAAACXhAAW54kAA4QEMIAEAAAAl4QAFuYIuAOEBDCABAAAAKOEABbmiPADhAQwgAQAAACjhAAe54h4A4QEeIAEAAAAp4QAGuQIjAOEBDCABAAAAKuEAB7liHwDhARYEAQAAACvhAAe5gh8A4QEMIAEAAAAs4QAHueIVAOEBHgABAAAAKeEAArkCKgDhARpAAQAAACnhAAW5wowA4QEMIAEAAAAv4QAHuSIaAOEBIiABAAAAMOEABrnCGgDhARwMAQAAADHhAAe5oicA4QEaQAEAAAAy4QAHuSIrAOEBDCABAAAAM+EAB7lCKwDhARpAAQAAADLhAAW5QiAA4QEMIAEAAAA14QAHuYIwAOEBGkABAAAANuEAB7miRgDhAQwgAQAAADfhAAe5wjAA4QEaQAEAAAA24QAFuUItAOEBDCABAAAAMOEABbkC5gDhAQwgAQAAADrhAAe5ghcA4QEaQAEAAAA74QAHuQIZAOEBDCABAAAAPOEAB7kidADhAQwgAQAAAD3hAAe5olQA4QEMIAEAAAA+4QAHuQLAAOEBHgABAAAAP+EABrliSwDhAQwgAQAAAEDhAAe5ghcA4QEeIAEAAABB4QAGuWIjAOEBDCABAAAAQuEAB7mCIwDhAQwgAQAAAELhAAW5oooA4QEMIAEAAABE4QAHuSJiAOEBDCABAAAAReEAB7lCUQDhAQwgAQAAAEbhAAe5IhwA4QEMIAEAAABH4QAHuWKRAOEBDCABAAAARuEABbkiVwDhARYEAQAAAEnhAAe5glgA4QEMIAEAAABK4QAHueIeAOEBDCABAAAAS+EAB7kCGgDhAR4AAQAAAEHhAAS5QjkA4QEMIAEAAABN4QAHuQJaAOEBDCABAAAATeEABbnCVgDhARYEAQAAAGPhAAW5wkoA4QEWBAEAAABj4QAFueIVAOEBHgABAAAAP+EAArmCMADhARpAAQAAAFLhAAe5AmgA4QEMIAEAAABT4QAHucJkAOEBDCABAAAAVOEAB7niHwDhAQwgAQAAAFThAAW5whcA4QEWBAEAAABW4QAHuUIdAOEBDCABAAAAV+EAB7mCMADhARpAAQAAAFjhAAe5YhwA4QEWBAEAAABZ4QAHuWIuAOEBFgQBAAAAWuEAB7kiGgDhARYEAQAAAFvhAAe5wk4A4QEMIAEAAABc4QAHuYKJAOEBGkABAAAAP+EABbniygDhAQwgAQAAAF7hAAe54hkA4QEaQAEAAAA/4QAFuUJAAOEBDCABAAAAYOEAB7niHgDhAQwgAQAAAGHhAAe54hUA4QEaQAEAAAA/4QAFuSK8AOEBIgABAAAAY+EABrmCNgDhAQwgAQAAAGThAAe54igA4QEMIAEAAABl4QAHuYLhAOEBDCABAAAAZuEAB7liJADhARYEAQAAAGfhAAe5Qh0A4QEWBAEAAABo4QAHuWIkAOEBIgABAAAAaeEABrlCHQDhASIAAQAAAGrhAAa5Yi4A4QEWBAEAAABr4QAHueI5AOEBDCABAAAAbOEAB7miMgDhAQwgAQAAAG3hAAe5QiAA4QEMIAEAAABu4QAHucIZAOEBFgQBAAAAb+EAB7liGwDhAQwgAQAAAHDhAAe5giIA4QEcDAEAAABx4QAHuYIhAOEBFgQBAAAAcuEAB7lC7ADhAQwgAQAAAHPhAAe54mEA4QEeQAEAAAB04QAGucIZAOEBFgQBAAAAdeEAB7lCJgDhARpAAQAAAHbhAAe54hUA4QEeAAEAAAB24QACuWIaAOEBDCABAAAAeOEAB7miFwDhAQwgAQAAAHnhAAe5YnoA4QEMIAEAAAB64QAHuaJ7AOEBDCABAAAAe+EAB7lCpgDhAQwgAQAAAHzhAAe54rQA4QEMIAEAAAB94QAHuaK1AOEBDCABAAAAfuEAB7kCYgDhASBAAQAAAHThAAK5ImIA4QEMIAEAAACA4QAHuQIqAOEBDCABAAAAgOEABbliTgDhAQwgAQAAAILhAAe5oooA4QEWBAEAAACD4QAHucIaAOEBHAwBAAAAhOEAB7liGwDhAQwgAQAAAIXhAAe5AsYA4QEMIAEAAACG4QAHuSIlAOEBDCABAAAAh+EAB7nCKgDhAQwgAQAAAIjhAAe54hUA4QEeQAEAAAB04QACuUJRAOEBDCABAAAAiuEAB7liIADhAQwgAQAAAIvhAAe5gkwA4QEMIAEAAACM4QAHuYIXAOEBDCABAAAAjeEAB7nivwDhAQwgAQAAAI7hAAe5osMA4QEMIAEAAACO4QAFuSKQAOEBDCABAAAAkOEAB7kiIgDhAQwgAQAAAJHhAAe5ImMA4QEeQAEAAAB04QAEuaKyAOEBDCABAAAAk+EAB7miRQDhAQwgAQAAAJThAAe5gjoA4QEMIAEAAACV4QAHueIVAOEBDCABAAAAluEAB7nCdQDhAQwgAQAAAJfhAAe5AksA4QEMIAEAAACY4QAHuQLuAOEBDCABAAAAmeEAB7kCNwDhAQwgAQAAAJrhAAe5AicA4QEaQAEAAACb4QAHucIjAOEBGkABAAAAm+EABbkiQADhARpAAQAAAJ3hAAe5QiUA4QEaQAEAAACd4QAFuSImAOEBDCABAAAAn+EAB7niFQDhAS5AAQAAAJ3hAAK5YjEA4QEcDAEAAACh4QAHuYJFAOEBGkABAAAAneEABbkihwDhAQwgAQAAAJrhAAW5Ih4A4QEMIAEAAACk4QAHuWIeAOEBFgQBAAAApeEAB7nCIADhARwMAQAAAKbhAAe5YhsA4QEMIAEAAACn4QAHuQI4AOEBDCABAAAAqOEAB7oiGQDnATQcAQAAAKrhEAW5IhkA4QGOHAEAAACq4QAWuYInAOEBIAQBAAAAquEAArkiKwDhAQwgAQAAAKzhAAe5QisA4QEaQAEAAACq4QAFueIVAOEBLgQBAAAAquEAArliMQDhARwMAQAAAK/hAAe5YhsA4QEMIAEAAACw4QAHucIZAOEBFgQBAAAAseEAB7mCIgDhARwMAQAAALLhAAe54iAA4QEMIAEAAACz4QAHuQIhAOEBDCABAAAAs+EABbkCoADhAR4AAQAAALXhAAa54hUA4QEeAAEAAAC14QACuYKJAOEBHgABAAAAteEABLlCwADhAQwgAQAAALjhAAe5Ik4B4QEMIAEAAAC54QAHuUIdAOEBIgABAAAAuuEABrliNwDhAQwgAQAAALvhAAe54mAA4QEMIAEAAAC84QAHuaJOAOEBDCABAAAAveEAB7kifgDhAQwgAQAAAMDhAAW5ohYA4QEMIAEAAAC/4QAHuaJUAOEBDCABAAAAwOEAB7kiWgDhAQwgAQAAAMHhAAe5AkAA4QEaQAEAAACd4QAFuYImAOEBHiABAAAAw+EABrmiJgDhASBAAQAAAMPhAAK5AoEA4QEMIAEAAADF4QAHucImAOEBDCABAAAAxuEAB7niJgDhAR4gAQAAAMPhAAS54hUA4QEaQAEAAADD4QAFuQJvAOEBDCABAAAA1uEABbniVgDhARwMAQAAAMrhAAe5YiIA4QEWBAEAAADL4QAHuWIiAOEBDCABAAAAzOEAB7nCZADhAQwgAQAAAM3hAAe5YhwA4QEWBAEAAADO4QAHuaIqAOEBHAwBAAAAz+EAB7liGwDhAQwgAQAAANDhAAe5oooA4QEWBAEAAADR4QAHucIaAOEBHAwBAAAA0uEAB7liGwDhAQwgAQAAANPhAAe5wmQA4QEMIAEAAADU4QAHuQKXAOEBMiABAAAA1eEABrkCaADhAQwgAQAAANbhAAe5omEA4QEWBAEAAADX4QAHueIhAOEBDCABAAAA2OEAB7nCPADhARYEAQAAANnhAAe54iEA4QEMIAEAAADa4QAHuYLAAOEBDCABAAAA2+EAB7kiTwDhAQwgAQAAANzhAAe5IhoA4QEWBAEAAADd4QAHuQI9AOEBDCABAAAA3uEAB7kCZADhAQwgAQAAAN/hAAe5Ai8A4QEMIAEAAADg4QAHueIeAOEBDCABAAAA4eEAB7niRgDhAQwgAQAAAOLhAAe5YjsA4QEMIAEAAADj4QAHuQJSAOEBDCABAAAA5OEAB7kiNADhARYEAQAAAOXhAAe5YkAA4QEMIAEAAADm4QAHuQIxAOEBDCABAAAA7+EAB7lCJADhARYEAQAAAOjhAAe5gkgA4QEMIAEAAADp4QAHuQL4AOEBDCABAAAA6uEAB7nCFgDhAQwgAQAAAOvhAAe5YhwA4QEWBAEAAADs4QAHuWI7AOEBDCABAAAA7eEAB7mCLADhAQwgAQAAAO7hAAe5olQA4QEMIAEAAADv4QAFuYIsAOEBDCABAAAA8OEAB7kCPADhAQwgAQAAAPHhAAe5AucA4QEMIAEAAADy4QAHueIeAOEBDCABAAAA8+EAB7kCOADhAQwgAQAAAPThAAe5wj0B4QEMIAEAAAD14QAHucJuAOEBDCABAAAA9uEAB7liygHZAQwgAQAAAPfhAAe5QiAA4QEMIAEAAAD44QAHucIZAOEBFgQBAAAA+eEAB7lCHgDhAQwgAQAAAPrhAAe5Yh4A4QEWBAEAAAD74QAHuWIbAOEBDCABAAAA/OEAB7liTQDhAQwgAQAAAP3hAAe5QrkA4QEMIAEAAAD94QAFuYIXAOEBGkABAAAA/+EAB7kCGgDhARpAAQAAAP/hAAW5AhkA4QEMIAEAAAAB4gAHuYIxAOEBGkABAAAAluIABbnCVgDhAQwgAQAAAAPiAAe5IiAA4QEaQAEAAACW4gAFuQJLAOEBHiABAAAABeIABrlilADhAQwgAQAAAAbiAAe54igA4QEMIAEAAAAH4gAHuYLKAdkBDCABAAAACOIAB7miygHhAQwgAQAAAAniAAe54vgA4QEeAAEAAAAK4gAGuUIlAOEBGkABAAAACuIABbkiJgDhAQwgAQAAAAziAAe54hUA4QEuAAEAAAAK4gACuWIxAOEBHAwBAAAADuIAB7lioQDhARpAAQAAAAriAAW54sgA4QEeAAEAAAAQ4gAGueIVAOEBGkABAAAAEOIABbmCpwDhARpAAQAAABDiAAW5AvkA4QFEAAEAAAAT4gAGuWJWAOEBGkABAAAAE+IABbniFQDhARpAAQAAABPiAAW5AngA4QEaQAEAAAAT4gAFuQIZAOEBDCABAAAAF+IAB7mCIQDhAQwgAQAAABjiAAe5ImQA4QEeIAEAAAAZ4gAGuSJgAOEBHiABAAAAGeIABLniGQDhASBAAQAAABniAAK54h4A4QEMIAEAAAAc4gAHueIVAOEBGkABAAAAGeIABbliZwDhAR4AAQAAACriAEa54rQA4QEMIAEAAAAf4gAHuWIZAOEBFgQBAAAALOIAR7niFQDhAR4AAQAAAC7iAEK5Am4A4QEMIAEAAAAi4gAHucJCAOEBDCABAAAAMOIAR7liFADhAQwgAQAAADHiAEW5wsoA4QEeQAEAAAAy4gBEuSJMAOEBDCABAAAAM+IAR7kCIQDhAQwgAQAAADTiAEW5AksA4QEMIAEAAAAo4gAHuYIpAOEBDCABAAAAKeIAB7liTgDhAR5AAQAAACriAAa54rQA4QEMIAEAAAAr4gAHuYJkAOEBIEABAAAAKuIAArnieADhAQwgAQAAAC3iAAe54hUA4QEeAAEAAAAq4gACuQJuAOEBDCABAAAAL+IAB7nCQgDhAQwgAQAAADDiAAe5YhQA4QEMIAEAAAAw4gAFuUJjAOEBHkABAAAAKuIABLkiTADhAQwgAQAAADPiAAe5AiEA4QEMIAEAAAAz4gAFuQJLAOEBDCABAAAANeIAB7miZADhAQwgAQAAADbiAAe5wsoB2QE0HAEAAACq4QBFuaJvAOEBHkABAAAAOOIABrkChgDhASBAAQAAADjiAAK5wlYA4QEWBAEAAABA4gAFucJKAOEBFgQBAAAAQOIABbniVgDhARwMAQAAADziAAe5YhsA4QEMIAEAAAA94gAHueIVAOEBGkABAAAAOOIABbkiZQDhARpAAQAAADjiAAW5AsIA4QEWBAEAAABA4gAHuSIjAeEBHiABAAAAQeIABrkCIwDhAQwgAQAAAELiAAe5oiYA4QEgQAEAAABB4gACucImAOEBDCABAAAAROIAB7niFQDhARpAAQAAAEHiAAW5Im4A4QEMIAEAAABG4gAHueLUAOEBHgABAAAAQeIABLkiNQDhATIAAQAAAEjiAAa54joA4QEMIAEAAABJ4gAHuaImAOEBFgQBAAAASuIAB7mCFwDhARYEAQAAAEviAAe5ArYA4QFIAAEAAABM4gAGucIZAOEBFgQBAAAATeIAB7liHADhARYEAQAAAE7iAAe5olEA4QEMIAEAAABP4gAHueIpAOEBIgABAAAAUOIABrkCRgDhAQwgAQAAAFHiAAe5gjQA4QEWBAEAAABS4gAHueIVAOEBDCABAAAAU+IAB7niIQDhAQwgAQAAAFTiAAe5YhwA4QEWBAEAAABV4gAHuSLIAOEBGkABAAAATOIABbkigwDhAQwgAQAAAFfiAAe54pEA4QEeIAEAAABY4gAGuUIxAOEBFgQBAAAAWeIAB7kiVwDhARYEAQAAAFriAAe5AkkA4QEeAAEAAABY4gAEucJWAOEBFgQBAAAAbeIABbliOQDhAQwgAQAAAF3iAAe5wkoA4QEWBAEAAABt4gAFuSJXAOEBFgQBAAAAX+IAB7miXADhAR5AAQAAAGDiAAa54hkA4QEaQAEAAABg4gAFueIVAOEBGkABAAAAYOIABblikQDhARpAAQAAAGDiAAW5wlYA4QEWBAEAAABm4gAFucJKAOEBFgQBAAAAZuIABbki0gDhARYEAQAAAGbiAAe5wjQA4QEWBAEAAABn4gAHuULWAOEBSgABAAAAaOIABrniFQDhASAAAQAAAGjiAAK5YhsA4QEMIAEAAABq4gAHuYLWAOEBGkABAAAAaOIABblibwDhAQwgAQAAAGziAAe54soB4QEWBAEAAABt4gAHuSImAOEBHgABAAAAbuIABrniOgDhAQwgAQAAAG/iAAe5Yh8A4QEWBAEAAABw4gAHuYIfAOEBDCABAAAAceIAB7niFQDhAS4AAQAAAG7iAAK5AioA4QEaQAEAAABu4gAFuWKLAOEBHiABAAAAdOIABrmiJgDhARpAAQAAAHTiAAW5wiYA4QEMIAEAAAB24gAHueImAOEBGkABAAAAdOIABbniFQDhARpAAQAAAHTiAAW5AtcA4QFEAAEAAAB54gAGuYJMAOEBDCABAAAAeuIAB7niFQDhARpAAQAAAHniAAW5gqcA4QEeAAEAAAB54gAEuaIgAOEBIgABAAAAfeIABrlCJADhASIAAQAAAH7iAAa5AhkA4QEMIAEAAAB/4gAHuaInAOEBGkABAAAAgOIAB7lCKwDhARpAAQAAAIDiAAW54iEA4QEMIAEAAACC4gAHuWIgAOEBDCABAAAAg+IAB7kiGgDhARYEAQAAAITiAAe5QiAA4QEMIAEAAACF4gAHuQIZAOEBDCABAAAAhuIAB7mCMADhARpAAQAAAIfiAAe5wjAA4QEaQAEAAACH4gAFueI0AOEBdhQBAAAAieIABrlCKwDhAQwgAQAAAIniAAW5AlYA4QEiBAEAAACL4gAGuUKPAOEBFgQBAAAAjOIAB7kiGwDhAQwgAQAAAI3iAAe5YokA4QEMIAEAAACO4gAHuSIaAOEBFgQBAAAAj+IAB7mCHADhARYEAQAAAJDiAAe5AlwA4QEMIAEAAACR4gAHuUIdAOEBFgQBAAAAkuIAB7liLgDhARYEAQAAAJPiAAe5ojwA4QEMIAEAAACU4gAHueIeAOEBDCABAAAAleIAB7lCbwDZAR4AAQAAAJbiAAa5AiMA4QEMIAEAAACX4gAHuSJiAOEBDCABAAAAmOIAB7niFQDhARpAAQAAAJbiAAW5IkYA4QEMIAEAAACa4gAHuQLLAdkBNBwBAAAAquEARbmCsADhAQwgAQAAAJziAAe7IssB1QEMIEEEAACd4gAFvCIaAOEBFgQBAAAAnuIAB7zCGgDhARwMAQAAAJ/iAAe8Qi0A4QEMIAEAAACg4gAHvIJEAOEBDCABAAAAoeIAB7xCkADhAQwgAQAAAKPiAAW84jQA4QEMIAEAAACj4gAFvIIcAOEBFgQBAAAApOIAB7xirgDhAQwgAQAAAKbiAAW84hcA4QEMIAEAAACm4gAHvCIcAOEBDCABAAAAp+IAB7wiHADhAQwgAQAAAKjiAAe8wkgA4QEMIAEAAACp4gAHvCI0AOEBIgABAAAAquIABrwCQQDhAQwgAQAAAKviAAe8giwA4QEMIAEAAACs4gAHvGIuAOEBFgQBAAAAreIAB7xCGgDhAQwgAQAAAK7iAAe8IhwA4QEMIAEAAACv4gAHvIJ6AOEBDCABAAAAsOIAB7xCywHhAQwgAQAAALHiAAe9YmMA4QEMIAEAAACy4gAHvQInAOEBGkABAAAAs+IAB71iGQDhARYEAQAAALTiAAe9gkMA4QEMIAEAAAC14gAHvcIjAOEBGkABAAAAs+IABb3iFQDhAR5AAQAAALPiAAK9YssB2QEMIAEAAAC44gAHvQIjAOEBDCABAAAAueIAB70CTwDhAR4AAQAAALriAAa9AoYA4QEWBAEAAAC74gAHvaKqAOEBHiABAAAAvOIABr3CGQDhARYEAQAAAL3iAAe9onsA4QEMIAEAAAC+4gAHveIbAOEBDCABAAAAv+IAB72iigDhAQwgAQAAAMDiAAe94hUA4QEaQAEAAAC84gAFvYJOAOEBDCABAAAAwuIAB72CFgDhAQwgAQAAAMLiAAW9YpEA4QEeIAEAAAC84gAEvUIWAOEBHgABAAAAxeIABr0ChgDhASBAAQAAAMXiAAK9Aj0A2QEeIAEAAADH4gAGvYJIAOEBDCABAAAAyOIAB71iJgDhAR4AAQAAAMniAAa9oj0A4QEeAAEAAADJ4gAEvUIlAOEBGkABAAAAx+IABb3iFQDhARpAAQAAAMfiAAW9YkYA4QEMIAEAAADO4gAFvaI8AOEBDCABAAAAzuIAB73CVgDhARYEAQAAANHiAAW9wkoA4QEWBAEAAADR4gAFvSIfAeEBFgQBAAAA0eIAB72CLgDhAQwgAQAAANbiAAW9YiAA4QEMIAEAAADT4gAHvQI4AOEBDCABAAAA1OIAB70CSQDhAQwgAQAAANXiAAe9ojwA4QEMIAEAAADW4gAHvSJXAOEBFgQBAAAA1+IAB73CFgDhAQwgAQAAANjiAAe9YqEA4QEeAAEAAADH4gAEvYJJAOEBDCABAAAA2uIAB70itgDhAQwgAQAAANviAAe9goYA4QEMIAEAAADc4gAHveLHAeEBDCABAAAA3eIAB71CFgHhAQwgAQAAAN3iAAW9QkkA4QEMIAEAAADf4gAHvULwAOEBDCABAAAA4OIAB72CywHhAQwgAQAAAOHiAAe9YhsA4QEMIAEAAADi4gAHvSIaAOEBFgQBAAAA4+IAB72CHADhARYEAQAAAOTiAAe9whoA4QEcDAEAAADl4gAHvUItAOEBDCABAAAA5uIAB72iJwDhARpAAQAAAOfiAAe9IisA4QEMIAEAAADo4gAHvUIrAOEBGkABAAAA5+IABb2CMADhARpAAQAAAOriAAe9okYA4QEMIAEAAADr4gAHvcIwAOEBGkABAAAA6uIABb0COADhAQwgAQAAAO3iAAe9YpEA4QEMIAEAAADh4gAFvYLGAOEBDCABAAAA7+IAB70inwHhAQwgAQAAAPDiAAe9giwA4QEMIAEAAADx4gAHvQIZAOEBDCABAAAA8uIAB73C6ADhAQwgAQAAAPPiAAe94mAA4QEMIAEAAAD04gAHvQJ1AOEBDCABAAAA9eIAB71CSQDhAQwgAQAAAPbiAAe9ossB2QEMIAEAAAD34gAHvSIeAOEBDCABAAAA+OIAB71CHgDhAQwgAQAAAPniAAe9Yh4A4QEWBAEAAAD64gAHvcIgAOEBHAwBAAAA++IAB71idADhAQwgAQAAAPziAAe9Ai0A4QEWBAEAAAD94gAHvWIcAOEBFgQBAAAA/uIAB73CywHhAQwgAQAAAP/iAAe9YkYA4QEMIAEAAAAA4wAHvQI6AOEBHiABAAAAAeMABr3iGQDhASBAAQAAAAHjAAK9wigA4QEcDAEAAAAD4wAHvWIbAOEBDCABAAAABOMAB70ijADhAQwgAQAAAAXjAAe94h4A4QEMIAEAAAAG4wAHveIhAOEBDCABAAAAB+MAB71iIADhASIAAQAAAAjjAAa9IhoA4QEWBAEAAAAJ4wAHveIVAOEBGkABAAAAAeMABb1iGwDhARYEAQAAAAvjAAe9oioA4QEcDAEAAAAM4wAHvWIbAOEBDCABAAAADeMAB70iggDhAQwgAQAAAA7jAAe9AjAA4QEeIAEAAAAB4wAEvcJCAOEBDCABAAAAEOMAB72iJwDhAR4AAQAAABHjAAa9gicA4QEgQAEAAAAR4wACvUIrAOEBGkABAAAAEeMABb3iFQDhARpAAQAAABHjAAW9AkcA4QEeIAEAAAAV4wAGvcKmAOEBDCABAAAAFuMAB72iGADhARpAAQAAABXjAAW9YioA4QEMIAEAAAAY4wAHveIVAOEBDCABAAAAGeMAB70ipwDhAQwgAQAAABnjAAW9YhwA4QEWBAEAAAAb4wAHvaIqAOEBHAwBAAAAHOMAB73iGADhAR4gAQAAABXjAAS94ssB4QEMIAEAAAAe4wAHvQImAOEBDCABAAAAH+MAB71CjADhAR4AAQAAACDjAAa9AoYA4QEaQAEAAAAg4wAFvYJMAOEBDCABAAAAIuMAB73CmgDhARpAAQAAACDjAAW9olIA4QEMIAEAAAAk4wAHvYL0AOEBIgABAAAAJeMABr3CVgDhARYEAQAAACnjAAW9wkoA4QEWBAEAAAAp4wAFveIVAOEBHkABAAAAIOMAAr2i9ADhASIAAQAAACnjAAa9AswB2QEMIAEAAAAq4wAHvaIXAOEBDCABAAAAK+MAB70CNADhARYEAQAAACzjAAe94h4A4QEMIAEAAAAt4wAHvQIZAOEBDCABAAAANeMAR71CZADhAQwgAQAAAC/jAAe9oicA4QEaQAEAAAA24wBHvYInAOEBGkABAAAAN+MARb1CKwDhARpAAQAAADjjAEW94hUA4QEaQAEAAAA54wBFvUIgAOEBDCABAAAANOMAB70CGQDhAQwgAQAAADXjAAe9gjAA4QEaQAEAAAA24wAHvaIwAOEBGkABAAAANuMABb3CMADhARpAAQAAADbjAAW94hUA4QEaQAEAAAA24wAFvcI8AOEBFgQBAAAAOuMAB72CIADhAQwgAQAAADvjAAe9IiYA4QEMIAEAAAA84wAHvSJuAOEBHgABAAAAPeMABr1CrADhAR4AAQAAAD7jAAa9QpwA4QEeAAEAAAA/4wAGvSKvAOEBDCABAAAAQOMAB72CqgDhAQwgAQAAAGHjAAW9Ai0A4QEiAAEAAABC4wAGvYIcAOEBFgQBAAAAQ+MAB73CGgDhARwMAQAAAETjAAe9oicA4QEaQAEAAABF4wAHvUIrAOEBGkABAAAAReMABb1iIADhAQwgAQAAAEfjAAe9gjAA4QEaQAEAAABI4wAHvcIwAOEBGkABAAAASOMABb2iJwDhARpAAQAAAErjAAe9QisA4QEaQAEAAABK4wAFvWIgAOEBDCABAAAATOMAB72CMADhARpAAQAAAE3jAAe9wjAA4QEaQAEAAABN4wAFvWIcAOEBFgQBAAAAT+MAB72iPADhAQwgAQAAAFDjAAe9AnkA4QEMIAEAAABR4wAHvUIoAOEBDCABAAAAUuMAB70CWADhAQwgAQAAAD3jAAW94mYA4QEMIAEAAABU4wAHvcIxAOEBHiABAAAAVeMABr3CQgDhAQwgAQAAAFbjAAe9YigA4QEaIAEAAABV4wAFvcJCAOEBDCABAAAAWOMAB70iIADhAQwgAQAAAFvjAAW94hUA4QEaQAEAAABV4wAFvaJsAeEBDCABAAAAW+MAB70iJgDhAQwgAQAAAFzjAAe9QpUA4QEMIAEAAABd4wAHvUIaAOEBDCABAAAAXuMAB70iHADhAQwgAQAAAF/jAAe9Ai8A4QEMIAEAAABg4wAHvQI8AOEBDCABAAAAYeMABb2iIwDhAS4gAQAAAGLjAAa9YhkA4QEgBAEAAABi4wACvYJDAOEBDCABAAAAZOMAB73CIwDhARpAAQAAAGLjAAW94hUA4QEeIAEAAABi4wACvWLxAOEBDCABAAAAZ+MAB71iNwDhARYEAQAAAGjjAAe9oiQA4QEcDAEAAABp4wAHvWIbAOEBDCABAAAAauMAB71CogDhAQwgAQAAAGvjAAe9IhoA4QEWBAEAAABs4wAHvYIcAOEBFgQBAAAAbeMAB73CGgDhARwMAQAAAG7jAAe9Qh0A4QEMIAEAAABv4wAHvaJNAOEBDCABAAAAb+MABb0CGQDhAQwgAQAAAHbjAEW9oicA4QEaQAEAAAB34wBHvYInAOEBGkABAAAAeOMARb1CKwDhARpAAQAAAHnjAEW94hUA4QEaQAEAAAB64wBFvQIZAOEBDCABAAAAduMABb2CMADhARpAAQAAAHfjAAe9ojAA4QEaQAEAAAB34wAFvcIwAOEBGkABAAAAd+MABb3iFQDhARpAAQAAAHfjAAW9QlcA4QEaQAEAAAB74wAHveLfAOEBDCABAAAAfOMAB71CLQDhAQwgAQAAAH3jAAe9QiAA4QEMIAEAAAB+4wAHveJ/AeEBHgABAAAAf+MABr0izAHhARpAAQAAAH/jAAW9YpQA4QEeIAEAAACB4wAGvQIjAOEBHgABAAAAguMABr0CQADhARpAAQAAAIHjAAW9QrIA4QEMIAEAAACE4wAHvYIXAOEBGkABAAAAheMAB70CGQDhAQwgAQAAAIbjAAe9YvYA4QEMIAEAAACH4wAHvWIoAOEBDCABAAAAh+MABb2CFwDhARpAAQAAAInjAAe94hkA4QEaQAEAAACJ4wAFvQIaAOEBGkABAAAAieMABb3iFQDhARpAAQAAAInjAAW9AhkA4QEMIAEAAACN4wAHvWIaAOEBDCABAAAAjuMAB72CLADhAQwgAQAAAJDjAAW9ojwA4QEMIAEAAACQ4wAHvSIcAOEBDCABAAAAkeMAB70iUAHhAQwgAQAAAJLjAAe94oEA4QEeIAEAAACB4wAGveIeAOEBDCABAAAAlOMAB70CKgDhAQwgAQAAAJTjAAW9YjcA4QEMIAEAAACW4wAHvWIeAOEBDCABAAAAl+MAB70CMADhAQwgAQAAAJfjAAW9IikA4QEaQAEAAACZ4wAHveIZAOEBFgQBAAAAmuMAB73iHgDhAQwgAQAAAJvjAAe9AioA4QEMIAEAAACc4wAFvQIaAOEBGkABAAAAmeMABb3iFQDhARpAAQAAAJnjAAW9AhkA4QEMIAEAAACf4wAHvaIjAOEBFgQBAAAAoOMAB72iIwDhAQwgAQAAAKHjAAe9IlAB4QEMIAEAAACi4wAHvaLHAOEBDCABAAAAo+MAB72iJwDhAQwgAQAAAKTjAAe9ojwA4QEMIAEAAACl4wAHvSI7AOEBDCABAAAApuMAB73i5QDhAQwgAQAAACrjAAW9YloA4QEMIAEAAACo4wAHvWIgAOEBDCABAAAAqeMAB73CTgDhASIAAQAAAKrjAAa9AkYA4QEMIAEAAACr4wAHvcIfAOEBDCABAAAArOMAB71iIADhAQwgAQAAAK3jAAe9YhwA4QEWBAEAAACu4wAHvQKtAOEBDCABAAAAr+MAB72iFgDhAQwgAQAAALDjAAe9QhoA4QEMIAEAAACx4wAHvQItAOEBFgQBAAAAsuMAB70CIgDhAQwgAQAAALPjAAe9YjYA4QEMIAEAAAC04wAHvWI2AOEBDCABAAAAteMAB73iMgDhAQwgAQAAALbjAAe9ghkA4QEMIAEAAAC44wAFvaI8AOEBDCABAAAAuOMABb3iMgDhAQwgAQAAALnjAAe9IhoA4QEWBAEAAAC64wAHvUInAOEBLgABAAAAu+MABr0CLQDhARYEAQAAALzjAAe9oicA4QEaQAEAAAC94wAHvUIrAOEBGkABAAAAveMABb2CMADhARpAAQAAAL/jAAe9wjAA4QEaQAEAAAC/4wAFvcJEAOEBDCABAAAAweMAB71iJADhARYEAQAAAMLjAAe9oh4A4QEMIAEAAADD4wAHvUI2AOEBFgQBAAAAxOMAB71iHADhARYEAQAAAMXjAAe9oj4A4QEMIAEAAADG4wAHvYIZAOEBDCABAAAAx+MAB70CLgDhAQwgAQAAAMjjAAe94h4A4QEMIAEAAADJ4wAHvWIcAOEBFgQBAAAAyuMAB71iNgDhAQwgAQAAAMvjAAe9Ij8B4QEMIAEAAADM4wAHvWIgAOEBDCABAAAAzeMAB71iHADhARYEAQAAAM7jAAe9omMA4QEMIAEAAADP4wAHvWI2AOEBDCABAAAA0OMAB71iLgDhARYEAQAAANHjAAe9ImQA4QEiAAEAAADS4wAGveJRAOEBDCABAAAA0+MAB73CFwDhARYEAQAAANTjAAe9whoA4QEcDAEAAADV4wAHvWJAAOEBDCABAAAA1uMAB71iIADhAQwgAQAAANfjAAe9YhwA4QEWBAEAAADY4wAHvUJzAOEBDCABAAAA2eMAB71i4ADhAQwgAQAAANzjAAW9QiQA4QEWBAEAAADb4wAHvaJUAOEBDCABAAAA3OMAB70iHADhAQwgAQAAAN3jAAe9Ii8A4QEMIAEAAADe4wAHvaJOAOEBDCABAAAA3+MAB71CSgDhAQwgAQAAAODjAAe9IhkA4QEMIAEAAADh4wAHvUIrAOEBDCABAAAA4eMABb0iNADhARYEAQAAAOPjAAe9AhkA4QEMIAEAAADk4wAHvaInAOEBGkABAAAA5eMAB71CKwDhARpAAQAAAOXjAAW9AhkA4QEMIAEAAADn4wAHvYIwAOEBGkABAAAA6OMAB73CMADhARpAAQAAAOjjAAW9AioA4QEMIAEAAADg4wAFvYJiAOEBDCABAAAA6+MAB70CLQDhARYEAQAAAOzjAAe9wjwA4QEWBAEAAADt4wAHveIhAOEBDCABAAAA7uMAB71iCgHhAQwgAQAAAO7jAAW9YhwA4QEWBAEAAADw4wAHvWI+AeEBDCABAAAA8eMAB71CGgDhAQwgAQAAAPLjAAe9QkwA4QEMIAEAAADz4wAHvUIdAOEBFgQBAAAA9OMAB71CGgDhAQwgAQAAAPXjAAe9ohoA4QEiAAEAAAD24wAGvcIfAOEBDCABAAAA9+MAB73CggHhAQwgAQAAAPjjAAe9YhwA4QEWBAEAAAD54wAHvWIcAOEBFgQBAAAA+uMAB71CLgDhAQwgAQAAAPvjAAe9wjQA4QEMIAEAAAD84wAHvULMAeEBDCABAAAA/eMAB70CIgDhAQwgAQAAAP/jAAW9ojwA4QEMIAEAAAD/4wAFvQJBAOEBDCABAAAAAOQAB73CHwDhAQwgAQAAAAHkAAe94h8A4QEMIAEAAAAB5AAFvWIcAOEBFgQBAAAAA+QAB70iGQDhARYEAQAAAATkAAe9IhgA4QEMIAEAAAAF5AAHvWIuAOEBFgQBAAAABuQAB73CGgDhARwMAQAAAAfkAAe9YhwA4QEWBAEAAAAI5AAHvSI7AOEBDCABAAAACeQAB72CFwDhAQwgAQAAAArkAAe9YswB4QEMIAEAAAAW5AAFvYJEAOEBDCABAAAADOQAB70iLgDhASIAAQAAAA3kAAa9gm4A4QEMIAEAAAAO5AAHvQJYAOEBDCABAAAAD+QAB71CFADhAQwgAQAAABDkAAe9gkQA4QEMIAEAAAAR5AAHvWI2AOEBDCABAAAAEuQAB71COADhAQwgAQAAABPkAAe9YjYA4QEMIAEAAAAU5AAHvQJcAOEBDCABAAAAFeQAB72C4QDhAQwgAQAAABbkAAe9wh8A4QEMIAEAAAAX5AAHvWIeAOEBDCABAAAAGOQAB70iGgDhARYEAQAAABnkAAe9YhwA4QEWBAEAAAAa5AAHvWItAOEBDCABAAAAG+QAB70CQQDhAQwgAQAAABzkAAe9YjYA4QEMIAEAAAAd5AAHvYI0AOEBFgQBAAAAHuQAB73CGgDhARwMAQAAAB/kAAe9whkA4QEMIAEAAAAg5AAHvQJcAOEBDCABAAAAIeQAB70iGgDhARYEAQAAACLkAAe9Yi4A4QEMIAEAAAAj5AAHvWI2AOEBDCABAAAAJOQAB73iIQDhAQwgAQAAACXkAAe9YiAA4QEMIAEAAAAm5AAHvSIaAOEBFgQBAAAAJ+QAB71iNgDhAQwgAQAAACjkAAe9whcA4QEWBAEAAAAp5AAHveIhAOEBDCABAAAAKuQAB71CIADhAQwgAQAAACvkAAe94hkA4QEWBAEAAAAs5AAHvSJLAOEBDCABAAAALeQAB71iSQDhAQwgAQAAAC7kAAe9AiIA4QEMIAEAAAAv5AAHvSIeAOEBDCABAAAAMOQAB71CHgDhAQwgAQAAADHkAAe9whgA4QEWBAEAAAAy5AAHvUI9AOEBDCABAAAANOQAB71iPQDhAQwgAQAAADTkAAe9AiIA4QEMIAEAAAA25AAFvaI8AOEBDCABAAAANuQABb2CzAHZAQwgAQAAADfkAAe9AiYA4QEeAAEAAAA45AAGvUIlAOEBFgQBAAAAOeQAB73iHwDhARpAAQAAADjkAAW9IjYA4QEMIAEAAAA75AAHvUInAOEBDCABAAAAPOQAB72CFwDhAQwgAQAAAD3kAAe9oswB4QEMIAEAAAA+5AAHvUJUAOEBDCABAAAAP+QAB72irwDhAR4AAQAAAEDkAAa9AkAA4QEaQAEAAABA5AAFveIVAOEBGkABAAAAQOQABb1CdADhARpAAQAAAEDkAAW9ItIA4QEMIAEAAABE5AAHvWIgAOEBDCABAAAAReQAB71CSQDhAQwgAQAAAEbkAAe9wvQA4QEMIAEAAABH5AAHvaJtAOEBGkABAAAASOQAB72CaQDhARpAAQAAAEjkAAW9wncA4QEMIAEAAABK5AAHvWK8AOEBDCABAAAAS+QAB71CIADhAQwgAQAAAEzkAAe9YhwA4QEWBAEAAABN5AAHvaIqAOEBHAwBAAAATuQAB71iGwDhAQwgAQAAAE/kAAe9Ih4A4QEMIAEAAABQ5AAHveIwAOEBDCABAAAAUeQAB70CKADhAQwgAQAAAFLkAAe9IiYA4QEaQAEAAABT5AAHvcIZAOEBFgQBAAAAVOQAB72CHwDhAQwgAQAAAFXkAAe94hUA4QEgQAEAAABT5AACvSIOAeEBDCABAAAAV+QAB71CIADhAQwgAQAAAFjkAAe9YhwA4QEWBAEAAABZ5AAHvaIqAOEBHAwBAAAAWuQAB71iGwDhAQwgAQAAAFvkAAe9AioA4QEaQAEAAABT5AAFvWIlAOEBDCABAAAAUuQABb2iUgDhAQwgAQAAAF7kAAe9IhgA4QEMIAEAAABf5AAHvSJQAOEBDCABAAAAYOQAB70CgQDhAQwgAQAAAGHkAAe9wkAA4QEMIAEAAABi5AAHvQIjAOEBHgABAAAAY+QABr3iRQHhAQwgAQAAAGTkAAe94hgA4QEMIAEAAABl5AAHvSKMAOEBDCABAAAAZuQAB70CGgDhAQwgAQAAAGXkAAW9wswB4QEMIAEAAABo5AAHvUKjAOEBDCABAAAAaeQAB72CHADhASIAAQAAAGrkAAa9ghcA4QEeQAEAAABr5AAGvQIaAOEBGkABAAAAa+QABb3iFQDhARpAAQAAAGvkAAW9YigA4QEMIAEAAABo5AAFvcJOAOEBDCABAAAAb+QAB72idgDhAQwgAQAAAHDkAAe9IjsA4QEMIAEAAABx5AAHvUJ/AOEBDCABAAAAcuQAB71iUQDhAQwgAQAAAHPkAAe9otEA4QEeIAEAAAB05AAGvSJGAOEBDCABAAAAdeQAB73iPwDhAQwgAQAAAHbkAAe9Al0A4QEMIAEAAAB35AAHvaKyAOEBHiABAAAAeOQABr0CQADhARpAAQAAAHjkAAW9QigA4QEMIAEAAAB65AAHveIVAOEBGkABAAAAeOQABb0iIgDhAQwgAQAAAHzkAAe94uUA4QEeIAEAAAB45AAEvcJOAOEBDCABAAAAfuQAB72iAwHhAQwgAQAAAH/kAAe9gqAA4QEiBAEAAACA5AAGvYIfAOEBFgQBAAAAgOQABb3CSgDhARYEAQAAAIDkAAW9wioA4QEMIAEAAACD5AAHvSJ6AOEBLAwBAAAAhOQABr1iGwDhAQwgAQAAAIXkAAe9YnoA4QEMIAEAAACG5AAHvaIlAOEBDCABAAAAh+QAB70ifQHZAUggAQAAAIjkAAa9wjkA4QEMIAEAAACJ5AAHvUJkAOEBDCABAAAAiuQAB70CRgDhAQwgAQAAAIvkAAe9AmIA4QEWBAEAAACM5AAHvaJWAOEBDCABAAAAjeQAB73izAHhAQwgAQAAAI7kAAe9oiMA4QEWBAEAAACP5AAHvWJpAOEBHAwBAAAAkOQAB70CNADhAQwgAQAAAJHkAAe9wkQA4QEMIAEAAACS5AAHvUJrAOEBFgQBAAAAk+QAB72CKQDhAQwgAQAAAJTkAAe9YlYA4QEaQAEAAACI5AAFvWLmAOEBDCABAAAAluQAB73iFQDhAR5AAQAAAIjkAAK9ovIA4QEMIAEAAACY5AAHvQJPAOEBDCABAAAAmeQAB70CeADhARpAAQAAAIjkAAW9In0A4QEMIAEAAACb5AAHvcIzAOEBDCABAAAAnOQAB70CNADhARYEAQAAAJ3kAAe9AhkA4QEMIAEAAACm5ABHvaInAOEBGkABAAAAp+QAR72CJwDhARpAAQAAAKjkAEW9IisA4QEMIAEAAACh5AAHvUIrAOEBGkABAAAAquQARb3iFQDhARpAAQAAAKvkAEW94iEA4QEMIAEAAACk5AAHvUIgAOEBDCABAAAApeQAB70CGQDhAQwgAQAAAKbkAAe9gjAA4QEaQAEAAACn5AAHvaIwAOEBGkABAAAAp+QABb2iRgDhAQwgAQAAAKnkAAe9wjAA4QEaQAEAAACn5AAFveIVAOEBGkABAAAAp+QABb0iegDhARwMAQAAAKzkAAe9ghcA4QEaQAEAAACt5AAHveIZAOEBIAQBAAAAreQAAr0CGgDhARpAAQAAAK3kAAW94hUA4QEaQAEAAACt5AAFvQIZAOEBDCABAAAAseQAB73iGADhAQwgAQAAALHkAAW94iEA4QEMIAEAAACz5AAHvWIgAOEBDAQBAAAAtOQAB71iHADhARYEAQAAALXkAAe9gnQA4QEMIAEAAAC25AAHvQLNAeEBDCABAAAAt+QAB71CKgDhAQwgAQAAALjkAAe9gjAA4QEaQAEAAAC55AAHvYKFAOEBDCABAAAAuuQAB73CIwDhAQwgAQAAALrkAAW9YiQA4QEWBAEAAAC85AAHvWIkAOEBDCABAAAAveQAB72iIwDhAQwgAQAAAL7kAAe9gkQA4QEeAAEAAAC/5AAGvWIfAOEBGkABAAAAv+QABb0CIQDhARpAAQAAAL/kAAW9wmIA4QEMIAEAAADC5AAHveJgAOEBDCABAAAAw+QAB71iHADhARYEAQAAAMTkAAe94hUA4QEaQAEAAAC/5AAFvcKMAOEBDCABAAAAxuQAB72ihQDhAQwgAQAAAMfkAAe9gkwA4QEMIAEAAADI5AAHvaIjAOEBDCABAAAAyeQAB72iKwDhAQwgAQAAAMrkAAe9wlYA4QEWBAEAAADO5AAFvcJKAOEBFgQBAAAAzuQABb2iBwHhAQwgAQAAAM3kAAe9opcA4QEWBAEAAADO5AAFvcI5AOEBDCABAAAAz+QAB72icgHhAQwgAQAAANDkAAe9gkMA4QEMIAEAAADR5AAHvcI8AOEBFgQBAAAA0uQAB73CGgDhARwMAQAAANPkAAe9giAA4QEMIAEAAADU5AAHvSLNAeEBDCABAAAA1eQAB73CNADhARYEAQAAANbkAAe9QiAA4QEMIAEAAADX5AAHvWIcAOEBFgQBAAAA2OQAB71iGwDhAQwgAQAAANnkAAe9AiIA4QEMIAEAAADa5AAHvYJgAOEBDCABAAAA2+QAB70iGgDhARYEAQAAANzkAAe9gjYB4QEMIAEAAADd5AAHvaInAOEBDCABAAAA3uQAB72CJgDhAQwgAQAAAN/kAAe9wiYA4QEMIAEAAADg5AAHvYIkAOEBLiABAAAA4eQABr3ifgDhAQwgAQAAAOLkAAe9QiAA4QEMIAEAAADj5AAHvcIZAOEBIgQBAAAA5OQABr3iOgDhAQwgAQAAAOXkAAe9wh4A4QEMIAEAAADm5AAHvaJ1AOEBDCABAAAA5uQABb1iUADhAQwgAQAAAOnkAAW9glAA4QEMIAEAAADp5AAFvQI8AOEBDCABAAAA6uQAB71iPwDhARpAAQAAAOvkAAe94hUA4QEaQAEAAADr5AAFvWIlAOEBGkABAAAA6+QABb3CGADhAQwgAQAAAO7kAAe9YhwA4QEWBAEAAADv5AAHvaIqAOEBHAwBAAAA8OQAB73iHgDhAS4AAQAAAPHkAAa94joA4QEMIAEAAADy5AAHvcIqAOEBDCABAAAA8+QAB71ClQDhAQwgAQAAAPTkAAe94kEA4QEMIAEAAAD05AAFvSJuAOEBDCABAAAA9uQAB73i3wDhAQwgAQAAAPfkAAe9AqUA4QEWBAEAAAD45AAHvUJ7AOEBDCABAAAA9+QABb1iGADhAQwgAQAAAPrkAAe94hUA4QEaQAEAAADh5AAFvQIZAOEBHiABAAAA/OQABr3iGADhAQwgAQAAAPzkAAW9wlYA4QEWBAEAAAAA5QAFvcJKAOEBFgQBAAAAAOUABb3CIADhARYEAQAAAADlAAe9YiMA4QEMIAEAAAAB5QAHvYIjAOEBDCABAAAAAeUABb2imgDhAQwgAQAAAAPlAAe9YiAA4QEMIAEAAAAE5QAHvcIyAOEBDCABAAAAA+UABb3iIADhAQwgAQAAAAblAAe94koA4QEaQAEAAAAH5QAHvcKrAOEBDCABAAAACOUAB70CYgDhASBAAQAAAAflAAK9ImIA4QEMIAEAAAAK5QAHveIVAOEBHkABAAAAB+UAAr0iYwDhARpAAQAAAAflAAW9wiQA4QEeIAEAAADh5AAEvoJPAOcBGDABAAAADuUQBb2CTwDhARgwAQAAAA7lAAe9gnYA4QEWBAEAAAAQ5QAHvUIXAOEBDCABAAAAEeUAB72CQwDhAQwgAQAAABLlAAe9wjQA4QEeQAEAAAAT5QAGvYInAOEBIEABAAAAE+UAAr0iKwDhAQwgAQAAABXlAAe9QisA4QEaQAEAAAAT5QAFvUIyAOEBDCABAAAAF+UAB73CKgDhAQwgAQAAABjlAAe9wssA4QEWBAEAAAAZ5QAHveIVAOEBHkABAAAAE+UAAr1inwDhAR4AAQAAABvlAAa94hUA4QEaQAEAAAAb5QAFvQIZAOEBHiABAAAAHeUABr3CGQDhARYEAQAAAB7lAAe9whcA4QEWBAEAAAAf5QAHvaIYAOEBGkABAAAAHeUABb1iKgDhAQwgAQAAACHlAAe94hUA4QEiIAEAAAAi5QAGveIYAOEBHiABAAAAHeUABL2CIQDhASIEAQAAACTlAAa9oiQA4QEcDAEAAAAl5QAHvWIbAOEBDCABAAAAJuUAB72CFgDhAQwgAQAAACTlAAW94iEA4QEMIAEAAAAo5QAHvWIgAOEBIgABAAAAKeUABr0iGgDhARYEAQAAACrlAAe9QiAA4QEMIAEAAAAr5QAHvaJUAOEBDCABAAAALOUAB73CMgDhARpAAQAAABvlAAW9QkkA4QEMIAEAAAAu5QAHvUKiAOEBDCABAAAAL+UAB73CQgDhAQwgAQAAADDlAAe9YhsA4QEaQAEAAAAx5QAHvYInAOEBIEABAAAAMeUAAr1CKwDhARpAAQAAADHlAAW94hUA4QEaQAEAAAAx5QAFvQIZAOEBDCABAAAANeUAB73iGADhAQwgAQAAADXlAAW9giEA4QEiAAEAAAA35QAGvaIkAOEBHAwBAAAAOOUAB71iGwDhAQwgAQAAADnlAAe94kYA4QEMIAEAAAA65QAHvUKRAOEBDCABAAAAO+UAB70iIADhAQwgAQAAAD3lAAW9QiAA4QEMIAEAAAA95QAHvcIZAOEBIgQBAAAAPuUABr1iGwDhAQwgAQAAAD/lAAe9giIA4QEcDAEAAABA5QAHvQIkAOEBDCABAAAAQeUAB70iRgDhAQwgAQAAAELlAAe9IjIA4QEeIAEAAABD5QAGvUIZACECFgQBAAAAROUABb3iVQAhAhYEAQAAAEXlAAW9QiQAIQIWBAEAAABG5QAFvQJMACECFgQBAAAAR+UABb3iFQAhAhYEAQAAAEjlAAW9AhkAIQIWBAEAAABJ5QAFveJVACECFgQBAAAASuUABb2i+AAhAhYEAQAAAEvlAAW9AnwAKQIWBAEAAABM5QAFveI6AOEBDCABAAAATeUAB73CHgDhARYEAQAAAE7lAAe9IqIA4QEMIAEAAABP5QAHvYIcAOEBFgQBAAAAUOUAB71CpgDhAQwgAQAAAFHlAAe9AiMA4QEMIAEAAABS5QAHvQIyAOEBDCABAAAAUuUABb3ihADhAQwgAQAAAFTlAAe9IiMA4QEMIAEAAABV5QAHvYIXAOEBGkABAAAAVuUAB70CGgDhARpAAQAAAFblAAW9Qh0A4QEiAAEAAABY5QAGveIeAeEBDCABAAAAWeUAB71CJADhASIAAQAAAFrlAAa94hkA4QEgQAEAAABD5QACveIeAOEBDCABAAAAXOUAB70CIwDhAQwgAQAAAF3lAAe9AnoA4QEiAAEAAABe5QAGvUIgAOEBDCABAAAAX+UAB71CIADhAQwgAQAAAGDlAAe9IpIA4QEMIAEAAABh5QAHvQIqAOEBDCABAAAAXOUABb0CJQDhARYEAQAAAGPlAAe9YkoA4QEMIAEAAABk5QAHvWIuAOEBFgQBAAAAZeUAB72iGgDhARYEAQAAAGblAAe9ghcA4QEiAAEAAABn5QAGvUIaAOEBDCABAAAAaOUAB70ibgDhAQwgAQAAAGnlAAe9wioA4QEMIAEAAABq5QAHvWIcAOEBFgQBAAAAa+UAB72iKgDhARwMAQAAAGzlAAe9wjYA4QEMIAEAAABt5QAHvcIeAOEBFgQBAAAAbuUAB70CGQDhAQwgAQAAAG/lAAe9AhkA4QEMIAEAAABw5QAHvaIaAOEBFgQBAAAAceUAB73iFQDhAR5AAQAAAEPlAAK9IqcA4QEMIAEAAABy5QAFvYIsAOEBDCABAAAAdeUABb2iPADhAQwgAQAAAHXlAAW9wmQA4QEMIAEAAAB25QAHvcJCAOEBDCABAAAAd+UAB71CFgDhAR4AAQAAAHjlAAa9AoYA4QEaQAEAAAB45QAFveIVAOEBGkABAAAAeOUABb3iHgDhAQwgAQAAAHvlAAe94iMA4QEWBAEAAAB85QAHvUIdAOEBFgQBAAAAfeUAB72iGgDhARYEAQAAAH7lAAe9YhsA4QEMIAEAAAB/5QAHvSKSAOEBFgQBAAAAgOUAB73iIQDhAQwgAQAAAIHlAAe9YiAA4QEWBAEAAACC5QAHvcIeAOEBFgQBAAAAg+UAB73ieQDhASIAAQAAAITlAAa9wh4A4QEWBAEAAACF5QAHvaIaAOEBFgQBAAAAhuUAB72CIQDhARYEAQAAAIflAAe9oiQA4QEcDAEAAACI5QAHveJMAOEBFgQBAAAAieUAB70iNgDhARYEAQAAAIrlAAe9IhgA4QEaQAEAAACL5QAHvaIYAOEBGkABAAAAi+UABb3CGADhAQwgAQAAAI3lAAe9YioA4QEMIAEAAACO5QAHvSI3AOEBGkABAAAAi+UABb3iFQDhARpAAQAAAIvlAAW9wjQA4QEaQAEAAACR5QAHvQIZAOEBDCABAAAAkuUAB72CIQDhARYEAQAAAJPlAAe9ohoA4QEWBAEAAACU5QAHvaI9AOEBHiABAAAAQ+UABL2iRQDhAQwgAQAAAJblAAe9Yh4A4QEMIAEAAACX5QAHvYIXAOEBHgABAAAAmOUABr0CGgDhARpAAQAAAJjlAAW94hUA4QEaQAEAAACY5QAFvQIZAOEBDCABAAAAm+UAB73CFwDhARYEAQAAAJzlAAe9YhoA4QEMIAEAAACd5QAHvUIkAOEBFgQBAAAAnuUAB73iIADhAR4gAQAAAJ/lAAa9gh8A4QEMIAEAAACg5QAHveIVAOEBHiABAAAAn+UAAr0CfADhARYEAQAAAKLlAAe94ocA4QEMIAEAAACj5QAHvYK3ANkBHiABAAAApOUABr3CGQDhASIAAQAAAKXlAAa94joA4QEMIAEAAACm5QAHvcJcAOEBDCABAAAAp+UAB71CGQDhAQwgAQAAAKjlAAe9ojwA4QEMIAEAAACp5QAHvQIZAOEBDCABAAAAquUAB72i5wDhAQwgAQAAAKvlAAe9QnsA4QEMIAEAAACr5QAFvYIxAOEBFgQBAAAAreUAB73CGgDhAQwgAQAAAK7lAAe9QigA4QEMIAEAAACv5QAHvSIlAOEBFgQBAAAAsOUAB73itADhAQwgAQAAALHlAAe9YqQA4QEMIAEAAACy5QAHvSIeAOEBDCABAAAAs+UAB71CHgDhAQwgAQAAALTlAAe9whgA4QEWBAEAAAC15QAHvYIXAOEBDCABAAAAtuUAB72iGgDhASIEAQAAALflAAa9QiAA4QEMIAEAAAC45QAHvcIaAOEBHAwBAAAAueUAB72idQDhAQwgAQAAALflAAW9ghcA4QEaQAEAAAC75QAHvQIaAOEBGkABAAAAu+UABb3iFQDhARpAAQAAALvlAAW9AhkA4QEMIAEAAAC+5QAHveIeAOEBDCABAAAAv+UAB73CIADhARwMAQAAAMDlAAe9oooA4QEMIAEAAADB5QAHvSJAAOEBDCABAAAAwuUAB72CQwDhAR4AAQAAAMPlAAa9YjQA4QEMIAEAAADE5QAHvSImAOEBDCABAAAAxeUAB70ibgDhAQwgAQAAAMblAAe9AkAA4QEWBAEAAADH5QAHvUIoAOEBDCABAAAAyOUAB72iewDhAQwgAQAAAMnlAAe9YqsA4QEMIAEAAADK5QAHvcIqAOEBDCABAAAAy+UAB73iHgDhAQwgAQAAAMzlAAe9AhkA4QEMIAEAAADN5QAHvSKhAOEBDCABAAAAzuUAB72ibwDhAQwgAQAAAM/lAAe9wkIA4QEMIAEAAADQ5QAHvYIsAOEBDCABAAAA0eUAB73i0wDhAQwgAQAAANLlAAe9ogcB4QEMIAEAAADT5QAHvYL2AOEBDCABAAAA1OUAB70iYADhAQwgAQAAAKTlAAW9ggcB4QEMIAEAAADW5QAHvULCAOEBDCABAAAA1+UAB73iOgDhAQwgAQAAANjlAAe94hkA4QEgBAEAAACk5QACvuIeAOcBGDABAAAA2uUQBb3iHgDhAR4AAQAAANvlAAa9gh8A4QEMIAEAAADc5QAHvQIqAOEBGkABAAAA2+UABb0CRgDhAQwgAQAAAN7lAAe9wlYA4QEWBAEAAADk5QAFvcJKAOEBFgQBAAAA5OUABb3iFQDhARpAAQAAAKTlAAW9IqwA4QEMIAEAAADi5QAHvWJiAOEBDCABAAAA4+UAB72CrADhASIAAQAAAOTlAAa/Qs0B3gEYMAEAAADl5RAFveIkAOEBGDABAAAA5eUABb3CWADhAQwgAQAAAOflAAe94pkA4QEeAAEAAADo5QAGvWIZAOEBFgQBAAAA6eUAB70iVwDhARYEAQAAAOrlAAe9gmAA4QEMIAEAAADr5QAHvWLNAeEBDCABAAAA7OUAB72izADhAQwgAQAAAOzlAEe9gt4A4QEMIAEAAADv5QBFvYLNAeEBDCABAAAA7OUABb1CUQDhAQwgAQAAAPDlAAe9YlQA4QEMIAEAAADx5QAHvYIfAOEBDCABAAAA8uUAB73CMQDhAR4AAQAAAPPlAAa9AjgA4QEMIAEAAAD05QAHvcJCAOEBDCABAAAA9eUAB70iHgDhAR4AAQAAAPblAAa9YigA4QEaQAEAAAD25QAFveIVAOEBGkABAAAA9uUABb0iJQDhAR4gAQAAAPnlAAa94joA4QEMIAEAAAD65QAHvYIvAOEBDCABAAAA++UAB71CJQDhARpAAQAAAPnlAAW9IiYA4QEMIAEAAAD95QAHveIVAOEBHkABAAAA+eUAAr1iJQDhAQwgAQAAAPnlAAW9om0A4QEaQAEAAAAA5gAHvWI6AOEBDCABAAAAAeYAB71iHwDhARpAAQAAAADmAAW94hUA4QEgQAEAAAAA5gACvYJpAOEBGkABAAAAAOYABb2CJQDhAR4AAQAAAAXmAAa94h4A4QEMIAEAAAAG5gAHveIVAOEBGkABAAAABeYABb1iMQDhARwMAQAAAAjmAAe94swA4QEeAAEAAAAF5gAEvYJ7AOEBDCABAAAACuYAB72izQHZAQwgAQAAAAvmAAe9IiYA4QEeIAEAAAAM5gAGvWIfAOEBFgQBAAAADeYAB72CHwDhAQwgAQAAAA7mAAe9YhsA4QEMIAEAAAAP5gAHveIVAOEBGkABAAAADOYABb2iJwDhARpAAQAAABHmAAe9QisA4QEaQAEAAAAR5gAFvYIwAOEBGkABAAAAE+YAB73CMADhARpAAQAAABPmAAW9gsMA4QEMIAEAAAAV5gAHvQJGAOEBFgQBAAAAFuYAB73ieADhAR4gAQAAABfmAAa9okwA4QEMIAEAAAAY5gAHvYJMAOEBDCABAAAAGeYAB71iHwDhASBAAQAAABfmAAK9oooA4QEsBAEAAAAb5gAGvcIaAOEBHAwBAAAAHOYAB71iGwDhAQwgAQAAAB3mAAe9wioA4QEMIAEAAAAe5gAHveIVAOEBGkABAAAAF+YABb1iGwDhARYEAQAAACDmAAe9oioA4QEcDAEAAAAh5gAHvWIbAOEBDCABAAAAIuYAB70CKgDhARogAQAAABfmAAW9QhkA4QEaQAEAAAAk5gAHvcIjAOEBGkABAAAAJOYABb3CzQHhAR4gAQAAACbmAAa9IuEA2QEMIAEAAAAn5gAHvQIvAOEBDCABAAAAKOYAB73CrQDhAQwgAQAAACnmAAe9IjsA4QEMIAEAAAAq5gAHwOLNAXICV0QBAAAALOYQBcECzgF5AldEAQABACzmAAXBIs4B2QEMIAEAAAAt5gAHwYLKAeEBDCABAAAALuYAB8FCzgHZAQwgAQAAAC/mAAfCYs4B1QEMIAEAAAAw5gAFwkIgAOEBDCABAAAAMeYAB8LCGQDhARYEAQAAADLmAAfCYhsA4QEMIAEAAAAz5gAHwoIiAOEBHAwBAAAANOYAB8KCHADhARYEAQAAADXmAAfCQiAA4QEMIAEAAAA25gAHwsIaAOEBHAwBAAAAN+YAB8LCMQDhAR4gAQAAADjmAAbCQjoA4QEgQAEAAAA45gACwmIoAOEBHiABAAAAOOYABMJCHQDhAQwgAQAAADvmAAfC4hUA4QEaQAEAAAA45gAFwqInAOEBGkABAAAAOOYAR8KCJwDhARYEAQAAADnmAEfCQisA4QEaQAEAAAA65gBFwuIVAOEBGkABAAAAPOYARcJiKgDhAQwgAQAAAEHmAAfCAioA4QEMIAEAAABB5gAFwmIUAOEBDCABAAAAQ+YAB8KCUQDhAQwgAQAAAEPmAAXCojwA4QEMIAEAAABM6ABHwsJbAOEBDCABAAAATegARcJiGgDhAQwgAQAAAEfmAAfCohoA4QEWBAEAAABI5gAHwkIdAOEBIgABAAAASeYABsKiPADhAQwgAQAAAErmAAfCIi0A4QEMIAEAAABL5gAHwiKlAOEBDCABAAAATOYAB8IiGgDhASIEAQAAAE3mAAbCghwA4QEWBAEAAABO5gAHwsIaAOEBHAwBAAAAT+YAB8LiIQDhAQwgAQAAAFDmAAfCYiAA4QEMIAEAAABR5gAHwuLRAOEBDCABAAAAUuYAB8JiSADhAQwgAQAAAFPmAAfCoicA4QEeIAEAAABU5gAGwoInAOEBGkABAAAAVOYABcKiigDhARYEAQAAAFbmAAfCQisA4QEeIAEAAABU5gAEwuJWAOEBHAwBAAAAWOYAB8JiGwDhAQwgAQAAAFnmAAfCIkEA4QEWBAEAAABa5gAHwuIVAOEBIEABAAAAVOYAAsJiGwDhAQwgAQAAAFzmAAfCIhoA4QEWBAEAAABd5gAHwmIkAOEBDCABAAAAXuYAB8LCSADhAQwgAQAAAF/mAAfCIh4A4QEeAAEAAABg5gAGwqJAAOEBDCABAAAAYeYAB8JiKADhARpAAQAAAGDmAAXC4hUA4QEaQAEAAABg5gAFwqIaAOEBFgQBAAAAZOYAB8LCcwDhAR4AAQAAAGXmAAbCIqcA4QEeAAEAAABl5gAEwqJ9AOEBHgABAAAAZ+YABsKiIwDhARYEAQAAAGjmAAfCYhsA4QEMIAEAAABp5gAHwuIeAOEBDCABAAAAauYAB8KiPADhAQwgAQAAAGvmAAfCYokA4QEMIAEAAABs5gAHwoIXAOEBHgABAAAAbeYABsLiHgDhAQwgAQAAAG7mAAfCAhoA4QEaQAEAAABt5gAFwsICAOEBDCABAAAAcOYAB8IibgDhAQwgAQAAAHHmAAfCIqwA4QEeAAEAAABy5gAGwkIoAOEBDCABAAAAc+YAB8ICWADhAR4AAQAAAHLmAATC4hUA4QEaQAEAAABy5gAFwkJcAOEBDCABAAAAduYAB8LiNQDhAQwgAQAAAHfmAAfCYpsA4QEeAAEAAAB45gAGwqJKAOEBDCABAAAAeuYABcJiLwDhAQwgAQAAAHrmAAfC4koA4QEaQAEAAAB75gAHwuIaAOEBDCABAAAAfOYAB8IiYgDhAQwgAQAAAH3mAAfConsA4QEMIAEAAAB+5gAHwqKKAOEBFgQBAAAAf+YAB8ICKgDhAQwgAQAAAH3mAAXC4hUA4QEaQAEAAAB75gAFwiJjAOEBGkABAAAAe+YABcLCPQDhAQwgAQAAAIPmAAfCgs4B4QEMIAEAAADC6QAFwoJlAOEBDCABAAAAwukABcOizgEyAhgwAQAAAIbmEAXCws4B2QEYMAEAAACG5gAHwmIpAGUCFgQBAAAAiOYABcIChgBlAhYEAQAAAInmAAXCQhkAZQIWBAEAAACK5gAFwiIeAGUCDCABAAAAi+YABcIClQBlAhpAAQAAAIzmAAXC4hkAZQIaQAEAAACN5gAFwuIVAGUCFgQBAAAAjuYABcKCWABlAgwgAQAAAI/mAAXCwiYAZQIWBAEAAACQ5gAFwsJOAGUCDCABAAAAkeYABcICGQBlAhYEAQAAAJLmAAXCQiUAZQIWBAEAAACT5gAFxEIlAN8DFgQBAAAAleYQBcJCJQBlAhYEAQAAAJXmAAXC4h4AZQIaQAEAAACW5gAFwmIfAGUCFgQBAAAAl+YABcLCXABlAhYEAQAAAJjmAAXCQpEA2QMWBAEAAACZ5gAFwqIYAGUCGkABAAAAmuYABcLiewDZAxYEAQAAAJvmAAXC4hkAZQIaQAEAAACc5gAFwuIVAGUCFgQBAAAAneYABcSiGgDfAxYEAQAAAJ/mEAXCohoAZQIWBAEAAACf5gAFwgI4ANkDGkABAAAAoOYABcICJwDhARpAAQAAAKHmAAfCgkMA4QEMIAEAAACi5gAHwsIjAOEBGkABAAAAoeYABcLCVgDhARYEAQAAAKzmAAXCwkoA4QEWBAEAAACs5gAFwgIZAOEBDCABAAAApuYAB8KCMQDhARpAAQAAAKnmAAXCIiAA4QEaQAEAAACp5gAFwsI1AOEBGkABAAAAqeYAB8LiFQDhAR4gAQAAAKHmAALCwhgA4QEMIAEAAACr5gAHwqI3AOEBFgQBAAAArOYAB8LCGADhARYEAQAAAK3mAAfCwhkA4QEeIAEAAACu5gAGwsIXAOEBFgQBAAAAr+YAB8JiiwDhARpAAQAAALDmAAfCoiYA4QEaQAEAAACw5gAFwsIYAOEBDCABAAAAsuYAB8LiJgDhARpAAQAAALDmAAXCwhkA4QEaQAEAAAC05gAHwgJYAOEBGkABAAAAtOYABcJiPwDhAQwgAQAAALbmAAfCYiIA4QEMIAEAAAC35gAHwgLiAOEBGkABAAAAuOYABcICQADhARpAAQAAALjmAAXC4hUA4QEaQAEAAAC45gAFwkJ0AOEBGkABAAAAuOYABcJiHADhARYEAQAAALzmAAfCYhwA4QEWBAEAAAC95gAHwqIqAOEBHAwBAAAAvuYAB8JiGwDhAQwgAQAAAL/mAAfCYiYA4QEWBAEAAADA5gAHwoIhAOEBFgQBAAAAweYAB8KiKQDhARYEAQAAAMLmAAfCAhkA4QEMIAEAAADD5gAHwsIXAOEBFgQBAAAAxOYAB8JiIgDhARYEAQAAAMXmAAfC4hgA4QEMIAEAAADD5gAFwuKEAOEBDCABAAAAx+YAB8LCLwDhARpAAQAAAMjmAAfCQiUA4QEaQAEAAADI5gAFwiIeAOEBDCABAAAAyuYAB8JCHgDhAQwgAQAAAMvmAAfCwhgA4QEiIAEAAADM5gAGwuIZAOEBFgQBAAAAzeYAB8LCKADhARwMAQAAAM7mAAfCohoA4QEWBAEAAADP5gAHwgIwAOEBDCABAAAAzOYABcLiHwDhARpAAQAAAMjmAAXC4hUA4QEgQAEAAADI5gACwmIaAOEBDCABAAAA0+YAB8IiLQDhAQwgAQAAANTmAAfCQjAA4QEMIAEAAADV5gAHwmIaAOEBDCABAAAA1uYAB8IiLQDhAQwgAQAAANfmAAfCYhsA4QEaQAEAAADY5gAHwkIrAOEBGkABAAAA2OYABcICGQDhAQwgAQAAANrmAAfCAhkA4QEMIAEAAADb5gAHwoJCAOEBDCABAAAA3OYAB8JCIADhAQwgAQAAAN3mAAfCYhwA4QEsBAEAAADe5gAGwqIqAOEBHAwBAAAA3+YAB8JiGwDhAQwgAQAAAODmAAfCwjEA4QEMIAEAAADh5gAHwiIeAOEBDCABAAAA4uYAB8JCHgDhAQwgAQAAAOPmAAfCYh4A4QEiAAEAAADk5gAGwoIXAOEBLgABAAAA5eYABsLiGQDhARpAAQAAAOXmAAXCoiQA4QEcDAEAAADn5gAHwmIbAOEBDCABAAAA6OYAB8ICGgDhAR4AAQAAAOXmAATC4hUA4QEgQAEAAADl5gACwgIZAOEBDCABAAAA6+YAB8JiGgDhAQwgAQAAAOzmAAfC4jUA4QEMIAEAAADt5gAHwmIcAOEBFgQBAAAA7uYAB8KiKgDhARwMAQAAAO/mAAfCYhsA4QEMIAEAAADw5gAHwuLOAeEBHgABAAAA8eYABsKiJwDhARYEAQAAAPLmAAfCoiQA4QEcDAEAAADz5gAHwmIbAOEBDCABAAAA9OYAB8JCKwDhARpAAQAAAPHmAAXCAhkA4QEMIAEAAAD25gAHwoIcAOEBFgQBAAAA9+YAB8LCZADhARpAAQAAAPjmAAfCQiUA4QEaQAEAAAD45gAFwuIfAOEBGkABAAAA+OYABcLiFQDhARpAAQAAAPjmAAXCAhkA4QEMIAEAAAD85gAHwoIhAOEBFgQBAAAA/eYAB8KiGgDhARYEAQAAAP7mAAfCYhwA4QEWBAEAAAD/5gAHwqIqAOEBHAwBAAAAAOcAB8JiGwDhAQwgAQAAAAHnAAfCQiAA4QEMIAEAAAAC5wAHwgIZAOEBDCABAAAAA+cAB8KCIQDhARYEAQAAAATnAAfCgiEA4QEaQAEAAAAF5wAHwmIpAOEBFgQBAAAABucAB8ICGQDhAQwgAQAAAAfnAAfC4hkA4QEWBAEAAAAI5wAHwgIZAOEBHiABAAAACecABsKiGADhARYEAQAAAArnAAfConsA4QEaQAEAAAAL5wAHwgKGAOEBFgQBAAAADOcAB8LCyQDhARpAAQAAAAvnAAXCAkAA4QEWBAEAAAAO5wAHwqIaAOEBFgQBAAAAD+cAB8KiPADhAQwgAQAAABDnAAfC4kYA4QEMIAEAAAAR5wAHwqIfAOEBDCABAAAAEecABcKiKQDhARYEAQAAABPnAAfCYhwA4QEWBAEAAAAU5wAHwmIcAOEBFgQBAAAAFecAB8KCFwDhARpAAQAAABbnAAfCAhoA4QEaQAEAAAAW5wAFwuIVAOEBGkABAAAAFucABcICGQDhAQwgAQAAABnnAAfCYhoA4QEMIAEAAAAa5wAHwqIfAOEBDCABAAAAGucABcKiKQDhARYEAQAAABznAAfCIhkA4QEaQAEAAAAd5wAHwkIrAOEBGkABAAAAHecABcLiRgDhAQwgAQAAAB/nAAfCoh8A4QEMIAEAAAAf5wAFwiJeAOEBDCABAAAAIecABcJCaQDhAQwgAQAAACHnAAXCQh0A4QEiAAEAAAAj5wAGwuIhAOEBDCABAAAAJOcAB8KCFwDhASAAAQAAACXnAAbCAhkA4QEMIAEAAAAm5wAHwmIgAOEBDCABAAAAJ+cAB8JiJADhARpAAQAAACjnAAfCohgA4QEWBAEAAAAp5wAHwiI3AOEBGkABAAAAKOcABcICGQDhAQwgAQAAACvnAAfCYiQA4QEaQAEAAAAs5wAHwqIYAOEBIEABAAAALOcAAsIiNwDhARpAAQAAACznAAXCwhgA4QEMIAEAAAAv5wAHwoIXAOEBHgABAAAAMOcABsLiGQDhARpAAQAAADDnAAXCAhoA4QEeAAEAAAAw5wAEwgIZAOEBDCABAAAAM+cAB8KCIQDhARYEAQAAADTnAAfCoiQA4QEcDAEAAAA15wAHwmIaAOEBDCABAAAANucAB8LCPwDhARpAAQAAADfnAAfCQiAA4QEMIAEAAAA45wAHwsIZAOEBFgQBAAAAOecAB8KCIgDhARwMAQAAADrnAAfC4hkA4QEaQAEAAAA35wAFwuIVAOEBGkABAAAAN+cABcICGQDhAQwgAQAAAD3nAAfC4hgA4QEMIAEAAAA95wAFwoIhAOEBFgQBAAAAP+cAB8JiGgDhAQwgAQAAAEDnAAfCoh8A4QEMIAEAAABA5wAFwgIdAOEBGkABAAAAN+cABcLCSgDhARpAAQAAAEPnAAfC4hkA4QEWBAEAAABE5wAHwqI9AOEBGkABAAAAQ+cABcICGQDhAQwgAQAAAEbnAAfCwjQA4QEaQAEAAABH5wAHwoInAOEBFgQBAAAASOcAB8JCKwDhARpAAQAAAEfnAAXC4hUA4QEaQAEAAABH5wAFwgIZAOEBDCABAAAAS+cAB8IiGADhAQwgAQAAAEznAAfCIhgA4QEMIAEAAABN5wAHwiIeAOEBDCABAAAATucAB8JiHgDhARYEAQAAAE/nAAfCwiAA4QEcDAEAAABQ5wAHwoIXAOEBIAABAAAAUecABsICGgDhARpAAQAAAFHnAAXC4hUA4QEaQAEAAABR5wAFwgIZAOEBDCABAAAAVOcAB8KCGQDhAQwgAQAAAFXnAAfCQngA4QEMIAEAAABW5wAHwiIeAOEBDCABAAAAV+cAB8LCGADhARYEAQAAAFjnAAfCwiAA4QEcDAEAAABZ5wAHwgKVAOEBHgABAAAAWucABsLiFQDhARpAAQAAAFrnAAXCAhkA4QEMIAEAAABc5wAHwoIhAOEBFgQBAAAAXecAB8JiGgDhAQwgAQAAAF7nAAfCYjAA4QEaQAEAAABa5wAFwmKkAOEBGkABAAAAYOcAB8LiFQDhARpAAQAAAGDnAAXCwhwA4QEaQAEAAABg5wAFwmIgAOEBGkABAAAAY+cAB8IiHgDhAQwgAQAAAGTnAAfCwhgA4QEWBAEAAABl5wAHwuIVAOEBIAABAAAAY+cAAsKiPQDhARpAAQAAAGPnAAXCwgAB4QEiAAEAAABo5wAGwoIXAOEBGkABAAAAaecAB8ICGgDhARpAAQAAAGnnAAXC4hUA4QEaQAEAAABp5wAFwgIZAOEBDCABAAAAbOcAB8LCMwDhAR4gAQAAAG3nAAbCYigA4QEeAAEAAABt5wAEwuIVAOEBGkABAAAAbecABcJCJQDhARYEAQAAAHDnAAfCohoA4QEWBAEAAABx5wAHwqIpAOEBFgQBAAAAcucAB8KiIADhAQwgAQAAAHPnAAfCQiQA4QEWBAEAAAB05wAHwuIgAOEBDCABAAAAdecAB8IihADhARpAAQAAAHbnAAfCwhkA4QEWBAEAAAB35wAHwoIiAOEBHAwBAAAAeOcAB8IiHgDhAQwgAQAAAHnnAAfCYigA4QEMIAEAAAB55wAFwsIYAOEBFgQBAAAAe+cAB8KiGgDhARYEAQAAAHznAAfCwhoA4QEcDAEAAAB95wAHwsIYAOEBDCABAAAAfucAB8JiHwDhASAEAQAAAHbnAALC4hUA4QEaQAEAAAB25wAFwgIqAOEBGkABAAAAducABcICGQDhAQwgAQAAAILnAAfCgiEA4QEWBAEAAACD5wAHwuIgAOEBGkABAAAAhOcAB8LiFQDhARpAAQAAAITnAAXCYkoA4QEeAAEAAACG5wAGwgIZAOEBDCABAAAAh+cAB8JCOQDhARpAAQAAAIjnAAfCAhkA4QEMIAEAAACJ5wAHwgJaAOEBGkABAAAAiOcABcLCHgDhARYEAQAAAIvnAAfCIiAA4QEMIAEAAACN5wAFwkIeAOEBDCABAAAAjecAB8KiGwHhAQwgAQAAAI7nAAfCYh4A4QEWBAEAAACP5wAHwgKgAOEBGkABAAAAkOcAB8KCiQDhARpAAQAAAJDnAAXCYj8A4QEaQAEAAACS5wAHwmIlAOEBGkABAAAAkucABcJCOADhARYEAQAAAJTnAAfCAhkA4QEMIAEAAACV5wAHwuJGAOEBDCABAAAAlucAB8IiNADhARYEAQAAAJfnAAfCghwA4QEWBAEAAACY5wAHwqIpAOEBDCABAAAAmecAB8ICGQDhAQwgAQAAAJrnAAfCghcA4QEaQAEAAACb5wAHwoImAOEBGkABAAAAnOcAB8LCGADhAQwgAQAAAJ3nAAfC4iYA4QEaQAEAAACc5wAFwuIVAOEBGkABAAAAnOcABcLCGADhAQwgAQAAAKDnAAfCwjEA4QEeIAEAAACh5wAGwkI6AOEBIAQBAAAAoecAAsJiKADhAQwgAQAAAKHnAAXCohoA4QEWBAEAAACk5wAHwuIVAOEBGkABAAAAoecABcJiHADhARYEAQAAAKbnAAfCIhsA4QEMIAEAAACn5wAHwkIdAOEBFgQBAAAAqOcAB8KCFwDhAQwgAQAAAKnnAAfC4iAA4QEMIAEAAACq5wAHwgJ0AOEBDCABAAAAq+cAB8JiIgDhASIEAQAAAKznAAbCghcA4QEWBAEAAACt5wAHwiIYAOEBDCABAAAArucAB8LCZADhAR4gAQAAAK/nAAbCwh4A4QEWBAEAAACw5wAHwuIgAOEBFgQBAAAAsecAB8KiJADhARwMAQAAALLnAAfCYhsA4QEMIAEAAACz5wAHwkIgAOEBDCABAAAAtOcAB8IiXgDhAQwgAQAAALXnAAXCwlkA4QEMIAEAAAC15wAFwoIcAOEBFgQBAAAAt+cAB8KCFwDhARpAAQAAALjnAAfC4hkA4QEWBAEAAAC55wAHwgIaAOEBGkABAAAAuOcABcICGQDhAQwgAQAAALvnAAfC4iMA4QEWBAEAAAC85wAHwiIwAOEBFgQBAAAAvecAB8JCeADhAQwgAQAAAL7nAAfCwlYA4QEuBAEAAAC/5wAGwmIYAOEBLiABAAAAwOcABsJiHwDhARpAAQAAAL/nAAXCAiEA4QEeAAEAAADA5wAEwuIVAOEBGkABAAAAv+cABcIiLQDhAQwgAQAAAMTnAAfCoicA4QEeIAEAAADF5wAGwkIrAOEBDCABAAAAxecAB8JCbADhAR4AAQAAAMfnAAbCojwA4QEiIAEAAADI5wAGwsJbAOEBDCABAAAAyOcABcJiQwDhAQwgAQAAAMrnAAfCAjQA4QEMIAEAAADL5wAHwgIZAOEBDCABAAAAzOcAB8KiKQDhARYEAQAAAM3nAAfCwh4A4QEWBAEAAADO5wAHwmIUAOEBDCABAAAAz+cABcKCUQDhAQwgAQAAAM/nAAXCwhcA4QEWBAEAAADR5wAHwsIxAOEBDCABAAAA0ucAB8KiGgDhARYEAQAAANPnAAfCQh4A4QEMIAEAAADU5wAHwgIZAOEBDCABAAAA1ecAB8KCMQDhASBAAQAAANbnAALCIiAA4QEaQAEAAADY5wAFwqIKAeEBGkABAAAA2OcAB8LiFQDhARpAAQAAANjnAAXCgiEA4QEWBAEAAADa5wAHwkIqAOEBGkABAAAA2+cAB8KCKgDhARpAAQAAANvnAAXCAhkA4QEMIAEAAADd5wAHwgLPAeEBDCABAAAA3ucAB8KiJgDhARYEAQAAAN/nAAfCAoYA4QEWBAEAAADg5wAHwuJMAOEBFgQBAAAA4ecAB8ICGQDhAQwgAQAAAOLnAAfC4hgA4QEMIAEAAADi5wAFwoIhAOEBFgQBAAAA5OcAB8KiKQDhARYEAQAAAOXnAAfCIkwA4QEaQAEAAADm5wAHwmIfAOEBIEABAAAA5ucAAsJiGwDhAQwgAQAAAOjnAAfCAiEA4QEaQAEAAADm5wAFwuIVAOEBGkABAAAA5ucABcKiwAHhARpAAQAAAOvnAAfCwhgA4QEMIAEAAADs5wAHwiJjAOEBGkABAAAA6+cABcIiHgDhAQwgAQAAAO7nAAfCYh4A4QEWBAEAAADv5wAHwsIgAOEBHAwBAAAA8OcAB8KCFwDhARpAAQAAAPHnAAfCAhoA4QEaQAEAAADx5wAFwuIVAOEBFgQBAAAA8+cAB8LCNADhARpAAQAAAPTnAAfCQisA4QEaQAEAAAD05wAFwgIZAOEBDCABAAAA9ucAB8LCFwDhARYEAQAAAPfnAAfCwhoA4QEcDAEAAAD45wAHwmIbAOEBGkABAAAA+ecAB8JCKwDhARpAAQAAAPnnAAXC4hUA4QEgAAEAAAD55wACwgIZAOEBDCABAAAA/OcAB8JiHADhARYEAQAAAP3nAAfCoioA4QEcDAEAAAD+5wAHwkIeAOEBDCABAAAA/+cAB8KiGgDhARYEAQAAAADoAAfCwh4A4QEWBAEAAAAB6AAHwoJ7AOEBDCABAAAAAugAB8LCGADhARYEAQAAAAPoAAfCohwA4QEMIAEAAAAE6AAHwsKBAOEBFgQBAAAABegAB8LiMQDhARpAAQAAAAboAAfCQiUA4QEWBAEAAAAH6AAHwgIyAOEBGkABAAAABugABcJiNwDhASIgAQAAAAnoAAbCAhoA4QEMIAEAAAAJ6AAFwoIhAOEBDCABAAAAC+gAB8KCSAHhAQwgAQAAAAzoAAXC4joA4QEeQAEAAAAN6AAGwuImAOEBGkABAAAADegABcLiFQDhARpAAQAAAA3oAAXCQmQA4QEMIAEAAAAQ6AAHwkJqAOEBDCABAAAAEegAB8IiPADhARYEAQAAABLoAAfC4h4A4QEMIAEAAAAT6AAHwgJGAOEBDCABAAAAFOgAB8KisgDhAQwEAQAAABXoAAfCQigA4QEMIAEAAAAW6AAHwgIqAOEBDCABAAAAFugABcIiHgDhAQwgAQAAABjoAAfCwhgA4QEWBAEAAAAZ6AAHwsIgAOEBHAwBAAAAGugAB8JCjgDhARpAAQAAABvoAAfCgh0A4QEgQAEAAAAb6AACwmKOAOEBGkABAAAAG+gABcLiFQDhARpAAQAAABvoAAXCokUA4QEMIAEAAAAf6AAHwgIZAOEBIiABAAAAIOgABsLiGADhAQwgAQAAACDoAAXCgiEA4QEWBAEAAAAi6AAHwuIhAOEBDCABAAAAI+gAB8KCdgDhAQwgAQAAAAzoAAXCAkcA4QEMIAEAAAAl6AAHwiIeAOEBDCABAAAAJugAB8LCGADhAS4EAQAAACfoAAbCwhkA4QEWBAEAAAAo6AAHwoIiAOEBHAwBAAAAKegAB8ICGQDhAQwgAQAAACroAAfCwhcA4QEWBAEAAAAr6AAHwuIYAOEBDCABAAAAKugABcLiGQDhARpAAQAAACfoAAXC4h4A4QEMIAEAAAAu6AAHwsIYAOEBDCABAAAAL+gAB8LiFQDhARpAAQAAACfoAAXC4iEA4QEMIAEAAAAx6AAHwmIgAOEBDCABAAAAMugAB8LCIADhARwMAQAAADPoAAfCwhgA4QEMIAEAAAA06AAHwmIbAOEBDCABAAAANegAB8ICMADhAR5AAQAAACfoAATCwhkA4QEWBAEAAAA36AAHwgIZAOEBDCABAAAAOOgAB8JiIADhAQwgAQAAADnoAAfCgiEA4QEiAAEAAAA66AAGwuLmAOEBHkABAAAAO+gABsJiKQDhASBAAQAAADvoAALCgikA4QEMIAEAAAA96AAHwoIWAOEBGkABAAAAO+gAB8LiFQDhARpAAQAAADvoAAXCQpEA4QEWBAEAAABA6AAHwsIfAOEBGkABAAAAQegAB8JCJQDhARpAAQAAAEHoAAXCQh4A4QEMIAEAAABD6AAHwsIYAOEBDCABAAAAROgAB8KiGgDhARYEAQAAAEXoAAfCwhoA4QEcDAEAAABG6AAHwgIwAOEBDCABAAAAROgABcIiLQDhAQwgAQAAAEjoAAfC4h8A4QEaQAEAAABB6AAFwuIVAOEBGkABAAAAQegABcLilQDhAQwgAQAAAEvoAAfCojwA4QEMIAEAAABM6AAHwsJbAOEBDCABAAAATOgABcKCMQDhARpAAQAAAFDoAAXCIiAA4QEaQAEAAABQ6AAFwsI1AOEBGkABAAAAUOgABcIiGgDhARYEAQAAAFHoAAfCYhsA4QEeIAEAAABS6AAGwqLXAOEBDCABAAAAU+gAB8KCJwDhASBAAQAAAFLoAALCQisA4QEeIAEAAABS6AAEwuIVAOEBLkABAAAAUugAAsJiMQDhARwMAQAAAFfoAAfCwkIA4QEMIAEAAABY6AAHwkIWAOEBDCABAAAAWegAB8LiRgDhASIAAQAAAFroAAbC4iAA4QEeIAEAAABb6AAGwmIfAOEBGgQBAAAAW+gABcICIQDhAQwgAQAAAFvoAAXC4hUA4QEaQAEAAABb6AAFwgIZAOEBDCABAAAAZOgARcKiJwDhARpAAQAAAGXoAEfCgicA4QEaQAEAAABm6ABFwkIrAOEBGkABAAAAZ+gARcLiFQDhARpAAQAAAGjoAEXCAhkA4QEMIAEAAABk6AAFwoIwAOEBGkABAAAAZegAB8KiMADhARpAAQAAAGXoAAXCwjAA4QEaQAEAAABl6AAFwuIVAOEBGkABAAAAZegABcICGQDhAQwgAQAAAGnoAAfCYhoA4QEMIAEAAABq6AAHwqKzAOEBDCABAAAAa+gAB8JiHADhARYEAQAAAGzoAAfCYhsA4QEMIAEAAABt6AAHwoJnAOEBLAABAAAAbugABsJCfQDhASwAAQAAAG/oAAbCwhkA4QEWBAEAAABw6AAHwoIiAOEBHAwBAAAAcegAB8LikQDhARpAAQAAAHLoAAfCQjEA4QEaQAEAAABy6AAFwgJJAOEBGkABAAAAcugABcLiFQDhARpAAQAAAHLoAAXCAhkA4QEMIAEAAAB26AAHwoIhAOEBFgQBAAAAd+gAB8KiJADhARwMAQAAAHjoAAfCYhwA4QEWBAEAAAB56AAHwqIqAOEBHAwBAAAAeugAB8JiGwDhAQwgAQAAAHvoAAfCwjQA4QEaQAEAAAB86AAHwkIrAOEBGkABAAAAfOgABcICGQDhAQwgAQAAAH7oAAfCIhoA4QEWBAEAAAB/6AAHwmKkAOEBIgABAAAAgOgABsLCJgDhAQwgAQAAAIHoAAfCIh4A4QEMIAEAAACJ6ABHwmIoAOEBGiABAAAAiugARcJiPwDhAS4EAQAAAIToAAbCQiUA4QEWBAEAAACF6AAHwiImAOEBDCABAAAAhugAB8LiFQDhAR4AAQAAAIToAALCYiUA4QEaQAEAAACE6AAFwgK8AOEBDCABAAAAiegAB8JCKwDhAQwgAQAAAInoAAXCAhkA4QEMIAEAAACL6AAHwmIcAOEBFgQBAAAAjOgAB8KiKgDhARwMAQAAAI3oAAfCYhsA4QEMIAEAAACO6AAHwmIgAOEBDCABAAAAj+gAB8LCtgDhAQwgAQAAAJDoAAfCYjcA4QEMIAEAAACR6AAHwgIZAOEBDCABAAAAkugAB8ICGQDhAQwgAQAAAJPoAAfCQkMA4QEaQAEAAACU6AAHwsIyAOEBGkABAAAAlOgABcLiGQDhARpAAQAAAJToAAXC4hUA4QEaQAEAAACU6AAFwkIkAOEBFgQBAAAAmOgAB8LCGgDhARwMAQAAAJnoAAfCYgIB4QEMIAEAAACa6AAHwmIaAOEBDCABAAAAm+gAB8KiGgDhARYEAQAAAJzoAAfCQh0A4QEWBAEAAACd6AAHwqI8AOEBDCABAAAAnugAB8KiGgDhAQwEAQAAAJ/oAAfCgjEA4QEaQAEAAACo6AAFwsJWAOEBFgQBAAAAqOgABcLCSgDhARYEAQAAAKjoAAXCgjEA4QEaQAEAAACl6AAFwiIgAOEBGkABAAAApegABcLCNQDhARpAAQAAAKXoAAfC4lYA4QEcDAEAAACm6AAHwmIbAOEBDCABAAAAp+gAB8KCrADhAUoMAQAAAKjoAAbCgrgA4QEMIAEAAACp6AAHwgKJAOEBDCABAAAAqugAB8LCNwDhAQwgAQAAAKvoAAfCYlEA4QEaQAEAAACs6AAHwgJAAOEBGkABAAAArOgABcLiFQDhASBAAQAAAKzoAALCwlQA4QEaQAEAAACs6AAFwiIeAOEBDCABAAAAsOgAB8LCGADhARYEAQAAALHoAAfCghcA4QEaQAEAAACy6AAHwgIaAOEBGkABAAAAsugABcLiFQDhARpAAQAAALLoAAXCAhkA4QEMIAEAAAC16AAHwmIaAOEBDCABAAAAtugAB8LCGADhARYEAQAAALfoAAfCwhgA4QEaQAEAAAC46AAHwsIZAOEBFgQBAAAAuegAB8KCIQDhASIEAQAAALroAAbC4hkA4QEaQAEAAAC46AAFwuIVAOEBGkABAAAAuOgABcICGQDhAQwgAQAAAL3oAAfCgiEA4QEiAAEAAAC+6AAGwgIwAOEBGkABAAAAuOgABcJCdAHhAR4gAQAAAMDoAAbC4hUA4QEaQAEAAADA6AAFwkLQAOEBDCABAAAAwOgABcJiHADhARYEAQQAAMPoAAfCoioA4QEcDAEAAADE6AAHwqInAOEBGkABAAAAxegAB8JCKwDhARpAAQAAAMXoAAXCAhkA4QEMIAEAAADH6AAHwiLPAeEBDCABAAAAyOgAB8ICfADhARYEAQAAAMnoAAfCYoEA4QEMIAEAAADK6AAHwgL/AOEBHkABAAAAy+gABsLiFQDhARpAAQAAAMvoAAXCIjwA4QEWBAEAAADN6AAHwuIhAOEBDCABAAAAzugAB8LCMQDhAR4gAQAAAM/oAAbCQjoA4QEaQAEAAADP6AAFwmIbAOEBFgQBAAAA0egAB8JiGwDhAQwgAQAAANLoAAfCYigA4QEMIAEAAADP6AAFwkIaAeEBFgQBAAAA1OgAB8LCVgDhARYEAQAAAOboAAXCwkoA4QEWBAEAAADm6AAFwuIVAOEBHiABAAAAz+gAAsJCVwDhAR4AAQAAANjoAAbCAoYA4QEaQAEAAADY6AAFwoJMAOEBDCABAAAA2ugAB8KiqgDhAQwgAQAAANvoAAfC4hUA4QEeAAEAAADY6AACwgJ2AOEBHgABAAAA3egABsKiFwDhAQwgAQAAAN7oAAfCwlYA4QEWBAEAAADj6AAFwsJKAOEBFgQBAAAA4+gABcJiGwDhAQwgAQAAAOHoAAfC4hUA4QEeAAEAAADd6AACwgK+AOEBFgQBAAAA4+gAB8IiZQDhARpAAQAAANjoAAXCIisA4QEMIAEAAADl6AAHwqJsAeEBFgQBAAAA5ugAB8LCHwDhAR4gAQAAAOfoAAbCoooA4QEWBAEAAADo6AAHwmIbAOEBDCABAAAA6egAB8LiHwDhARpAAQAAAOfoAAXC4hUA4QEaQAEAAADn6AAFwoIxAOEBGkABAAAA7OwABcLCSgDhAQwgAQAAAO3oAAfCAhgA4QEMIAEAAADu6AAHwmIbAOEBDCABAAAA7+gAB8IiRgDhAQwgAQAAAPDoAAfCwlYA4QEWBAEAAAD06AAFwsJKAOEBFgQBAAAA9OgABcIiVwDhARYEAQAAAPPoAAfCwiAA4QEWBAEAAAD06AAHwqI9AOEBDCABAAAA7egABcKC0ADhAR4AAQAAAPboAAbCoiYA4QEaQAEAAAD26AAFwuIVAOEBGkABAAAA9ugABcKiIwDhARYEAQAAAPnoAAfCYmkA4QEcDAEAAAD66AAHwmIbAOEBDCABAAAA++gAB8JihgDhAQwgAQAAAPzoAAfColoA4QEgBAEAAAD96AAGwoJ1AOEBFgQBAAAA/ugAB8IiGwDhAQwgAQAAAP/oAAfCAkIA4QEWBAEAAAAP6QBHwsIiAOEBFgQBAAAAAekAB8JCIADhAQwgAQAAAALpAAfCYiQA4QEMIAEAAAAD6QAHwiIgAOEBDCABAAAABukABcLiVgDhARwMAQAAAAXpAAfCYiIA4QEiBAEAAAAG6QAGwoIXAOEBDCABAAAAB+kAB8ICGgDhAQwgAQAAAAfpAAfCIi0A4QEMIAEAAAAJ6QAHwkJJAOEBDCABAAAACukAB8LCdQDhAS4EAQAAAAvpAAbCQjEA4QEgQAEAAAD96AACwkJKAOEBDCABAAAADekAB8ICKgDhAQwgAQAAAA3pAAXCAkIA4QEWBAEAAAAP6QAHwqLrAOEBDCABAAAAIukABcIiGADhAQwgAQAAABHpAAfCgoQA4QEMIAEAAAAS6QAHwsItAOEBDCABAAAAEukABcLiFQDhAR4AAQAAAP3oAALCoogA4QEMIAEAAAAV6QAHwiJSAOEBDCABAAAAFekABcJiHADhARYEAQAAABfpAAfCgiEA4QEiBAEAAAAY6QAGwqIkAOEBHAwBAAAAGekAB8JiGwDhAQwgAQAAABrpAAfC4iEA4QEMIAEAAAAb6QAHwqLaAOEBHAwBAAAAHOkAB8JCMQDhARpAAQAAAP3oAAXCQkoA4QEWBAEAAAD96AAFwsJKAOEBFgQBAAAA/egABcLiFQDhARpAAQAAAP3oAAXCYhsA4QEMIAEAAAAh6QAHwoJnAOEBIgABAAAAIukABsJiGgDhAQwgAQAAACPpAAfC4iAA4QEMIAEAAAAk6QAHwoIuAOEBDCABAAAAJ+kABcKiGgDhARYEAQAAACbpAAfCojwA4QEMIAEAAAAn6QAHwuLAAOEBGkABAAAAKOkAB8LiFQDhAR4AAQAAACjpAALCgtYA4QEaQAEAAAAo6QAFwsI0AOEBDCABAAAAK+kAB8LiVADhARpAAQAAAP3oAAXCAjUA4QEMIAEAAAAt6QAHwuJ1AOEBDCABAAAALukAB8IiHgDhAQwgAQAAAC/pAAfCosoA4QEMIAEAAAAw6QAHwsJWAOEBFgQBAAAANOkABcLCSgDhARYEAQAAADTpAAXC4hUA4QEMIAEAAAAz6QAHwqIkAOEBFgQBAAAANOkAB8JiKADhAQwgAQAAAC/pAAXCYhsA4QEMIAEAAAA26QAHwiJGAOEBDCABAAAAN+kAB8LCgQDhASIgAQAAADjpAAbCQiAA4QEMIAEAAAA56QAHwsIaAOEBHAwBAAAAOukAB8KidQDhAQwgAQAAADjpAAXCIi0A4QEMIAEAAAA86QAHxIKiAOcBGDABAAAAPekQBcKCogDhARgwAQAAAD3pAAfCIpAA4QEMIAEAAAA/6QAHwkJqAOEBDCABAAAAQekABcKiPADhAQwgAQAAAEHpAAXCIkUA4QEMIAEAAABC6QAHwgJAAOEBFgQBAAAAQ+kAB8ICWADhAQwgAQAAAELpAAXCAkIA4QEMIAEAAABF6QAHwuK3AOEBGkABAAAARukAB8KCpwDhARpAAQAAAEbpAAXCAjoA4QEeIAEAAABI6QAGwsIZAOEBFgQBAAAASekAB8LiGQDhARpAAQAAAEjpAAXC4h4A4QEMIAEAAABL6QAHwgIqAOEBDCABAAAAS+kABcLiFQDhAR4gAQAAAEjpAALCgkwA4QEMIAEAAABO6QAHwuIVAOEBDCABAAAAT+kAB8KCJQDhAQwgAQAAAFDpAAfCAjAA4QEeIAEAAABI6QAEwgIZAOEBDCABAAAAUukAB8LiGADhAQwgAQAAAFLpAAXCAnoA4QEiDAEAAABU6QAGwmIbAOEBDCABAAAAVekAB8IiIADhAQwgAQAAAGHpAAXCAhkA4QEMIAEAAABc6QBFwqInAOEBGkABAAAAXekAR8KCJwDhARpAAQAAAF7pAEXCQisA4QEaQAEAAABf6QBFwuIVAOEBGkABAAAAYOkARcICGQDhAQwgAQAAAFzpAAXCgjAA4QEaQAEAAABd6QAHwqIwAOEBGkABAAAAXekABcLCMADhARpAAQAAAF3pAAXC4hUA4QEaQAEAAABd6QAFwkIgAOEBDCABAAAAYekAB8IiLQDhAQwgAQAAAGLpAAfCoikA4QEMIAEAAABj6QAHwmI9AOEBDCABAAAAZOkAB8KiJwDhARpAAQAAAGXpAAfCQisA4QEaQAEAAABl6QAFwuIhAOEBDCABAAAAZ+kAB8IiGgDhARYEAQAAAGjpAAfCIi4A4QEMIAEAAABp6QAHwiIuAOEBDCABAAAAaukAB8ICRwDhAQwgAQAAAGvpAAfC4q4A4QEMIAEAAABs6QAHwmIqAOEBDCABAAAAbekAB8ICKgDhAQwgAQAAAG3pAAXCIlcA4QEWBAEAAABv6QAHwuIYAOEBDCABAAAAa+kABcLCVgDhARYEAQAAAHTpAAXCwkoA4QEWBAEAAAB06QAFwuJWAOEBHAwBAAAAc+kAB8ICzADhARYEAQAAAHTpAAfCYiQA4QEWBAEAAAB16QAHwiIbAOEBDCABAAAAdukAB8KCFwDhASIEAQAAAHfpAAbCImsA4QEMIAEAAAB46QAHwsJCAOEBDCABAAAAeekAB8KiJADhARwMAQAAAHrpAAfCYhsA4QEMIAEAAAB76QAHwgIZAOEBDCABAAAAfOkAB8ICGQDhAQwgAQAAAIPpAEfC4hgA4QEMIAEAAACE6QBFwqInAOEBGkABAAAAhekAR8KCJwDhARpAAQAAAIbpAEXCQisA4QEaQAEAAACH6QBFwuIVAOEBGkABAAAAiOkARcICGQDhAQwgAQAAAIPpAAfC4hgA4QEMIAEAAACD6QAFwoIwAOEBGkABAAAAhekAB8KiMADhARpAAQAAAIXpAAXCwjAA4QEaQAEAAABE6gAFwuIVAOEBGkABAAAAhekABcIC0ADhAQwgAQAAAInpAAfCwlYA4QEWBAEAAACS6QAFwsJKAOEBFgQBAAAAkukABcJCYgDhAR4gAQAAAIzpAAbCoiYA4QEWBAEAAACN6QAHwuImAOEBDCABAAAAjOkABcLiFQDhARpAAQAAAIzpAAXC4lYA4QEcDAEAAACQ6QAHwmIkAOEBDCABAAAAkekAB8Ki8wDhASIEAQAAAJLpAAbCgjAA4QEuIAEAAACT6QAGwqIwAOEBGkABAAAAk+kABcICSwDhAR4AAQAAAJXpAAbC4h4A4QEMIAEAAACW6QAHwuIVAOEBGkABAAAAlekABcLCMADhAQwgAQAAAJPpAAXC4hUA4QEWBAEAAACZ6QAHwuIVAOEBGkABAAAAk+kABcJCzwHZARwMAQAAAJvpAAfCgoIA2QEwRAEAAACc6QAGwgIZAGUCFgQBAAAAnekABcKCIQBlAhYEAQAAAJ7pAAXCwjEAZQIWBAEAAACf6QAFwkJKAGUCDCABAAAAoOkABcICGQBlAgwgAQAAAKHpAAXCIhsAZQIWBAEAAACi6QAFwqInAGUCFgQBAAAAo+kABcLCGABlAgwgAQAAAKTpAAXC4lYAZQIMIAEAAACl6QAFwmLYAGUCVkQBAAAApukABcLCGABlAhYEAQAAAKfpAAXEgk4A3wMWBAEAAACp6RAFwoJOAGUCFgQBAAAAqekABcLiQABlAhYEAQAAAKrpAAXC4hkAZQIWBAEAAACr6QAFwgIZAGUCFgQBAAAArOkABcKCYADhAQwgAQAAAK3pAAfCgiEA4QEWBAEAAACu6QAHwuIhAOEBDCABAAAAr+kAB8IiGgDhARYEAQAAALDpAAfCwhoA4QEcDAEAAACx6QAHwiIgAOEBDCABAAAAs+kABcJCIADhAQwgAQAAALPpAAfCwhkA4QEiBAEAAAC06QAGwoIiAOEBHAwBAAAAtekAB8KCFwDhAR4AAQAAALbpAAbCAhkA4QEMIAEAAAC36QAHwmIiAOEBFgQBAAAAuOkAB8JiKgDhAQwgAQAAALnpAAfCgiEA4QEWBAEAAAC66QAHwqIpAOEBFgQBAAAAu+kAB8IiRADhAR4gAQAAALzpAAbCwjcA4QEMIAEAAAC96QAHwmKOAOEBHgABAAAAvOkABMLiFQDhASBAAQAAALzpAALCIhoA4QEMIAEAAADA6QAHwkIgAOEBDCABAAAAwekAB8LC9wDhAQwgAQAAAMLpAAfCIhoA4QEWBAEAAADD6QAHwoIcAOEBFgQBAAAAxOkAB8LCGgDhARwMAQAAAMXpAAfCQhYB4QEMIAEAAADC6QAFwoI2AOEBDCABAAAAx+kAB8LiHwDhAQwgAQAAAMrpAAXCQh0A4QEMIAEAAADJ6QAHwuLOAeEBDCABAAAAyukAB8JiJADhAQwgAQAAAMvpAAfCYiQA4QEMIAEAAADM6QAHwoIuAOEBDCABAAAAzekAB8IiLwDhAQwgAQAAAM7pAAfCIhoA4QEWBAEAAADP6QAHwkIkAOEBFgQBAAAA0OkAB8LiIADhAQwgAQAAANHpAAfCAiEA4QEMIAEAAADR6QAFwqJSAOEBGkABAAAA0+kAB8JCJQDhARpAAQAAANPpAAXC4hUA4QEeIAEAAADT6QACwiKnAOEBDCABAAAA1ekAB8LCsADhAR4gAQAAANPpAALCYhsA4QEeIAEAAADY6QAGwoInAOEBIEABAAAA2OkAAsJCKwDhAR4gAQAAANjpAATC4hUA4QEeIAEAAADY6QACwgIZAOEBDCABAAAA3OkAB8LCFwDhASIAAQAAAN3pAAbC4hgA4QEMIAEAAADc6QAFwuJGAOEBDCABAAAA3+kAB8KiHwDhAQwgAQAAAN/pAAXCYiQA4QEMIAEAAADh6QAHwiIxAOEBGkABAAAA4ukAB8JCMQDhASBAAQAAAOLpAALC4hUA4QEaQAEAAADi6QAFwuJUAOEBGkABAAAA4ukABcICGQDhAQwgAQAAAObpAAfCQiAA4QEMIAEAAADn6QAHwkICAeEBDCABAAAA6OkAB8ICNADhARYEAQAAAOnpAAfCghcA4QEMIAEAAADq6QAHwiItAOEBDCABAAAA6+kAB8LiNQDhAQwgAQAAAOzpAAfCghcA4QEaQAEAAADt6QAHwgIaAOEBGkABAAAA7ekABcLiFQDhARpAAQAAAO3pAAXCAhkA4QEMIAEAAADw6QAHwmIaAOEBDCABAAAA8ekAB8KCFwDhARpAAQAAAPLpAAfCAhoA4QEaQAEAAADy6QAFwgIZAOEBDCABAAAA9OkAB8KCIQDhARYEAQAAAPXpAAfCgjYA4QEWBAEAAAD26QAHwoJIAOEBDCABAAAA9+kAB8JCGgDhAQwgAQAAAPjpAAfCoh0A4QEMIAEAAAD56QAHwmIgAOEBDCABAAAA+ukAB8JCSQDhAQwgAQAAAPvpAAfCQhwA4QEMIAEAAAD86QAHwmIaAOEBHgABAAAA/ekABsIiLQDhAQwgAQAAAP7pAAfCQmQA4QEMIAEAAAD/6QAHwmJkAOEBDCABAAAAAOoAB8LCGADhARYEAQAAAAHqAAfCwhkA4QEWBAEAAAAC6gAHwkIkAOEBDCABAAAAA+oAB8IiHgDhAQwgAQAAAATqAAfCYhoA4QEMIAEAAAAF6gAHwuIgAOEBGkABAAAABuoAB8LCGADhAQwgAQAAAAfqAAfCgh8A4QEMIAEAAAAI6gAHwgIhAOEBGkABAAAABuoABcJiGwDhAQwgAQAAAArqAAfC4hUA4QEaQAEAAAAG6gAFwmIkAOEBDCABAAAADOoAB8KiNgDhAQwgAQAAAA3qAAfCgogA4QEeQAEAAAAO6gAGwkIlAOEBGkABAAAADuoABcLiFQDhAR5AAQAAAA7qAALCgk8A4QEiAAEAAAAR6gAGwkIgAOEBDCABAAAAEuoAB8LCGgDhARwMAQAAABPqAAfCYhwA4QEWBAEAAAAU6gAHwqIqAOEBHAwBAAAAFeoAB8KCKgHhAQwgAQAAABbqAAfCQi4A4QEMIAEAAAAX6gAHwsIiAOEBFgQBAAAAGOoAB8JCJwDhAQwgAQAAABnqAAfCAi0A4QEWBAEAAAAa6gAHwmKhAOEBHgABAAAADuoABMKiHADhAR5AAQAAABzqAAbCQjoA4QEaQAEAAAAc6gAFwqJAAOEBDCABAAAAHuoAB8ICKgDhAQwgAQAAAB7qAAXCYigA4QEaQAEAAAAc6gAFwuIVAOEBGkABAAAAHOoABcLiHADhAQwgAQAAACLqAAfCAhkA4QEMIAEAAAAj6gAHwuIYAOEBDCABAAAAI+oABcKCIQDhARYEAQAAACXqAAfCoiQA4QEcDAEAAAAm6gAHwmIbAOEBDCABAAAAJ+oAB8JCIADhAQwgAQAAACjqAAfCAh0A4QEMIAEAAAAi6gAFwuKAAOEBDCABAAAAKuoAB8JizwHhAQwgAQAAACvqAAfDgs8BTgIZMAEAAAAu6iAFxKLPAVMCGTABAAAALuoQBcKizwEZAhkwAQABAC7qAAXCAhkA4QEMIAEAAAAv6gAHwqIpAOEBFgQBAAAAMOoAB8JiSQDhASAAAQAAADHqAAbCohgA4QEWBAEAAAAy6gAHwqIkAOEBHAwBAAAAM+oAB8JiGwDhAQwgAQAAADTqAAfCQiAA4QEMIAEAAAA16gAHwmIbAOEBGkABAAAANuoAB8KCJwDhASBAAQAAADbqAALCwigA4QEcDAEAAAA46gAHwkIrAOEBGkABAAAANuoABcLiFQDhAR4AAQAAADbqAALCAhkA4QEMIAEAAAA76gAHwsIXAOEBIgQBAAAAPOoABsICGQDhAQwgAQAAAEPqAEfCoicA4QEaQAEAAABE6gBHwoInAOEBGkABAAAAReoARcJCKwDhARpAAQAAAEbqAEXC4hUA4QEaQAEAAABH6gBFwuIhAOEBDCABAAAAQuoAB8ICGQDhAQwgAQAAAEPqAAfCgjAA4QEaQAEAAABE6gAHwqIwAOEBGkABAAAAROoABcLCMADhARpAAQAAAETqAAXC4hUA4QEaQAEAAABE6gAFwsIaAOEBHAwBAAAASOoAB8KidQDhAQwgAQAAADzqAAXC4hgA4QEMIAEAAAA76gAFwuJGAOEBDCABAAAAS+oAB8KiGgDhARYEAQAAAEzqAAfCwhoA4QEcDAEAAABN6gAHwqIfAOEBDCABAAAAS+oABcIiLQDhAQwgAQAAAE/qAAfCIoQA4QEeAAEAAABQ6gAGwmIfAOEBGkABAAAAUOoABcICKgDhAR4AAQAAAFDqAATCQh4A4QEMIAEAAABT6gAHwsIYAOEBFgQBAAAAVOoAB8LCIADhARwMAQAAAFXqAAfCQjgA4QEeIAEAAABW6gAGwgJAAOEBGkABAAAAVuoABcICWADhAR4gAQAAAFbqAATC4hUA4QEeAAEAAABW6gACwmKyAOEBHiABAAAAWuoABsJCIADhAQwgAQAAAFvqAAfCwhkA4QEWBAEAAABc6gAHwmIbAOEBDCABAAAAXeoAB8KCIgDhARwMAQAAAF7qAAfC4hkA4QEaQAEAAABa6gAFwiJrAOEBHgABAAAAYOoABsLiFQDhARpAAQAAAGDqAAXCIm4A4QEMIAEAAABi6gAHwuIVAOEBGkABAAAAWuoABcJiGwDhARYEAQAAAGTqAAfCoioA4QEcDAEAAABl6gAHwsIyAOEBHiABAAAAWuoABsIiGwDhAQwgAQAAAGfqAAfCghcA4QEiBAEAAABo6gAGwqIkAOEBHAwBAAAAaeoAB8IiJQDhARYEAQAAAGrqAAfCwigA4QEcDAEAAABr6gAHwmIbAOEBDCABAAAAbOoAB8JCIADhAQwgAQAAAG3qAAfCwioA4QEWBAEAAABu6gAHwqIkAOEBHAwBAAAAb+oAB8JiGwDhAQwgAQAAAHDqAAfCAhkA4QEMIAEAAABx6gAHwmIaAOEBDCABAAAAcuoAB8KiHwDhAQwgAQAAAHLqAAXCInMA4QEMIAEAAAB06gAHwgIiAOEBDCABAAAAdeoAB8LCFwDhARYEAQAAAHbqAAfCIhgA4QEMIAEAAAB36gAHwuI1AOEBDCABAAAAeOoAB8KCOwDhAQwgAQAAAHnqAAfCAuYA4QEMIAEAAAB66gAFwuIfAOEBDCABAAAAeuoABcLCPADhARYEAQAAAHzqAAfC4iEA4QEMIAEAAAB96gAHwmIcAOEBFgQBAAAAfuoAB8JCKwDhAQwgAQAAAIDqAAXCIhwA4QEMIAEAAACA6gAHwiIaAOEBIgABAAAAgeoABsKCFwDhARpAAQAAAILqAAfCAhoA4QEaQAEAAACC6gAFwuIVAOEBGkABAAAAguoABcICGQDhAQwgAQAAAIXqAAfCgiEA4QEWBAEAAACG6gAHwmIaAOEBDCABAAAAh+oAB8LCSADhAR4gAQAAAIjqAAbC4hUA4QEeAAEAAACI6gACwuJwAOEBDCABAAAAiuoAB8LiSADhAR4AAQAAAIjqAEbCQjEA4QEaQAEAAACI6gAFwkJKAOEBDCABAAAAjeoAB8ICKgDhAQwgAQAAAI3qAAXCAkkA4QEMIAEAAACR6gBFwuIVAOEBHiABAAAAiOoAAsIiSQDhAR4gAQAAAIjqAATCYhsA4QEeIAEAAACS6gAGwoInAOEBGkABAAAAkuoABcJCKwDhARpAAQAAAJLqAAXC4hUA4QEaQAEAAACS6gAFwgIZAOEBDCABAAAAluoAB8KCIQDhASIEAQAAAJfqAAbCoiQA4QEcDAEAAACY6gAHwmIbAOEBDCABAAAAmeoAB8KCFgDhAQwgAQAAAJfqAAXC4iEA4QEMIAEAAACb6gAHwkIgAOEBDCABAAAAnOoAB8JidADhAQwgAQAAAJ3qAAfCImoA4QEaQAEAAACe6gAHwuIZAOEBIEABAAAAnuoAAsLiFQDhARpAAQAAAJ7qAAXCAhkA4QEMIAEAAACh6gAHwmIgAOEBDCABAAAAouoAB8KCIQDhARYEAQAAAKPqAAfCoiQA4QEcDAEAAACk6gAHwqIpAOEBFgQBAAAApeoAB8LCMgDhARpAAQAAAJ7qAAXCoikA4QEWBAEAAACn6gAHwqIgAOEBHiABAAAAqOoABsLiGQDhASBAAQAAAKjqAALCQjgA4QEiAAEAAACq6gAGwuIVAOEBIEABAAAAqOoAAsICGQDhAQwgAQAAAKzqAAfCYiAA4QEMIAEAAACt6gAHwuIYAOEBDCABAAAArOoABcJiGgDhAQwgAQAAAK/qAAfCAh0A4QEeIAEAAACo6gAEwiIvAOEBDCABAAAAseoAB8ICGgDhAQwgAQAAALHqAAXCIhoA4QEWBAEAAACz6gAHwiJ5AOEBDCABAAAAtOoAB8LiNQDhAQwgAQAAALXqAAfCYiQA4QEMIAEAAAC26gAHwqKAAOEBHgABAAAAt+oABsLi2wDhAQwgAQAAALjqAAfCghcA4QEWBAEAAAC56gAHwiJuAOEBDCABAAAAuuoAB8ICbwDhAQwgAQAAALzqAAXC4jwA4QEMIAEAAAC86gAHwkIrAOEBDCABAAAAvuoABcIiHADhAQwgAQAAAL7qAAfCQh0A4QEiBAEAAAC/6gAGwkL/AOEBDCABAAAAwOoAB8KCFwDhARpAAQAAAMHqAAfC4hkA4QEaQAEAAADB6gAFwgIaAOEBGkABAAAAweoABcLiFQDhARpAAQAAAMHqAAXCAhkA4QEMIAEAAADF6gAHwsJ7AOEBFgQBAAAAxuoAB8IiGwDhAQwgAQAAAMfqAAfCYiQA4QEMIAEAAADI6gAHwkJ6AOEBFgQBAAAAyeoAB8JCIADhAQwgAQAAAMrqAAfCYhsA4QEMIAEAAADL6gAHwgJxAOEBDCABAAAAzOoAB8KiJgDhARpAAQAAANTqAAXC4hUA4QEaQAEAAADU6gAFwqInAOEBGkABAAAAz+oAB8JCKwDhARpAAQAAAM/qAAXCgjAA4QEaQAEAAADR6gAHwsIwAOEBGkABAAAA0eoABcIicQDhAQwgAQAAAMzqAAXC4lIA4QEeAAEAAADM6gBGwkIzAOEBDCABAAAA0+oARcKCMADhARpAAQAAANbqAAfCIlAA4QEaQAEAAADX6gAHwgIZAOEBDCABAAAA2OoAB8JiiwDhAQwgAQAAANnqAAfCoiYA4QEgBAEAAADX6gACwuIVAOEBGkABAAAA1+oABcICGQDhAQwgAQAAANzqAAfCoikA4QEWBAEAAADd6gAHwgJ1AOEBDCABAAAA3uoAB8ICJgDhAR4AAQAAAN/qAAbC4hUA4QEaQAEAAADf6gAFwmIkAOEBDCABAAAA4eoAB8KiPADhAQwgAQAAAOLqAAfCIh4A4QEMIAEAAADj6gAHwsIYAOEBFgQBAAAA5OoAB8LCIADhARwMAQAAAOXqAAfCQiAA4QEMIAEAAADm6gAHwmIcAOEBFgQBAAAA5+oAB8KiKgDhARwMAQAAAOjqAAfCYhsA4QEMIAEAAADp6gAHwqInAOEBHiABAAAA6uoABsKCJwDhARpAAQAAAOrqAAXCQkAA4QEMIAEAAADs6gAHwiIrAOEBDCABAAAA7eoAB8JCKwDhAR5AAQAAAOrqAATC4hUA4QEgBAEAAADq6gACwmIxAOEBHAwBAAAA8OoAB8LiRgDhAQwgAQAAAPHqAAfCoikA4QEWBAEAAADy6gAHwsIlAeEBDCABAAAA8+oAB8KiKQDhAQwgAQAAAPTqAAfC4kcA4QEMIAEAAADz6gAFwiIvAOEBGkABAAAA9uoAB8LiGQDhARpAAQAAAPbqAAXC4h4A4QEMIAEAAAD46gAHwgIqAOEBDCABAAAA+OoABcICGgDhARpAAQAAAPbqAAXC4hUA4QEaQAEAAAD26gAFwgIZAOEBDCABAAAA/OoAB8LCFwDhARYEAQAAAP3qAAfC4hgA4QEMIAEAAAD86gAFwoIhAOEBFgQBAAAA/+oAB8IClQDhAS5AAQAAAADrAAbConsA4QEMIAEAAAAB6wAHwuIZAOEBGkABAAAAAOsABcLiHgDhAQwgAQAAAAPrAAfC4hUA4QEeQAEAAAAA6wACwsJkAOEBDCABAAAABesAB8LCIADhARwMAQAAAAbrAAfCYhsA4QEMIAEAAAAH6wAHwmIwAOEBGkABAAAAAOsABcKCFwDhARpAAQAAAAnrAAfC4hkA4QEgQAEAAAAJ6wACwgIaAOEBGkABAAAACesABcLiFQDhARpAAQAAAAnrAAXCAhkA4QEMIAEAAAAN6wAHwmIaAOEBDCABAAAADusAB8LCHQDhAQwgAQAAABDrAAXCojwA4QEMIAEAAAAQ6wAHwoIXAOEBGkABAAAAEesAB8ICGgDhARpAAQAAABHrAAXCAhkA4QEMIAEAAAAT6wAHwmIaAOEBDCABAAAAFOsAB8IiGADhARYEAQAAABXrAAfCYhsA4QEMIAEAAAAW6wAHwkKkAeEBDCABAAAAGesABcKinwHhAQwgAQAAABnrAAXCgv8A4QEMIAEAAAAZ6wAFwiJQAOEBDCABAAAAGusAB8KibwDhAQwgAQAAABvrAAfCoiYA4QEWBAEAAAAc6wAHwsI5AOEBDCABAAAAHesAB8KCGwHhARYEAQAAAB7rAAfC4sgA4QEaQAEAAAAf6wAHwoKnAOEBGkABAAAAH+sABcLCFwDhASIAAQAAACHrAAbC4kMA4QEMIAEAAAAi6wAHwiIeAOEBGkABAAAAI+sAB8LCGQDhARYEAQAAACTrAAfCQjoA4QEgBAEAAAAj6wACwsIYAOEBDCABAAAAJusAB8ICMADhAQwgAQAAACbrAAXCYigA4QEaQAEAAAAj6wAFwuIVAOEBGkABAAAAI+sABcKCUADhARwMAQAAACrrAAfCQo4B4QEMIAEAAAAs6wAFwuI9AOEBDCABAAAALOsAB8KCUADhAQwgAQAAAC3rAAfCAhkA4QEMIAEAAAAu6wAHwuIYAOEBDCABAAAALusABcICXQDhAS4gAQAAADDrAAbCgrEA4QEWBAEAAAAx6wAHwuIVAOEBGkABAAAAMOsABcIiQADhARpAAQAAADPrAAfCIiYA4QEMIAEAAAA06wAHwuIVAOEBGkABAAAAM+sABcIiUQDhAR5AAQAAADbrAAbCIhoA4QEiAAEAAAA36wAGwoI/AOEBDCABAAAAOOsAB8KiJwDhARpAAQAAAD/rAEfCgicA4QEaQAEAAABA6wBFwkIrAOEBGkABAAAAQesARcLiFQDhARpAAQAAAELrAEXCYiAA4QEiAAEAAAA96wAGwiIaAOEBFgQBAAAAPusAB8KCMADhARpAAQAAAD/rAAfCojAA4QEaQAEAAAA/6wAFwsIwAOEBGkABAAAAP+sABcLiFQDhARpAAQAAAD/rAAXCghcA4QEaQAEAAABD6wAHwgIaAOEBGkABAAAAQ+sABcLiFQDhARpAAQAAAEPrAAXCAhkA4QEMIAEAAABG6wAHwoIhAOEBFgQBAAAAR+sAB8JiGgDhAQwgAQAAAEjrAAfCwhcA4QEMIAEAAABJ6wAHwsIfAOEBDCABAAAASusAB8JiSQDhAQwgAQAAAEvrAAfCohsB4QEMIAEAAABM6wAHwuJjAOEBDCABAAAATesAB8LiMwDhAQwgAQAAAE7rAAfCIhgA4QEMIAEAAABP6wAHwiIYAOEBDCABAAAAUOsAB8JC5gDhARpAAQAAAFHrAAfCYh4A4QEiIAEAAABS6wAGwgJAAOEBGkABAAAAUesABcLCGADhASIAAQAAAFTrAAbCQigA4QEMIAEAAABV6wAHwuIVAOEBIEABAAAAUesAAsLinwDhAQwgAQAAAFfrAAfCQnQA4QEaQAEAAABR6wAFwsIXAOEBDCABAAAAWesAB8JiNgDhAQwgAQAAAFrrAAfCghcA4QEMIAEAAABb6wAHwkI4AOEBDCABAAAAXOsAB8JCIADhAQwgAQAAAF3rAAfCgn8A4QEWBAEAAABe6wAHwiJ6AOEBHAwBAAAAX+sAB8JiGwDhAQwgAQAAAGDrAAfCgjEA4QEWBAEAAABh6wAHwiIgAOEBDCABAAAAY+sABcKCewDhAQwgAQAAAGPrAAfCYhsA4QEWBAEAAABk6wAHwiIZAOEBDCABAAAAZesAB8IiIADhAQwgAQAAAGfrAAXCoj0B4QEMIAEAAABn6wAHwoIxAOEBGkABAAAAa+sABcLCVgDhAQwgAQAAAGnrAAfCIiAA4QEaQAEAAABr6wAFwkLwAOEBGkABAAAAa+sAB8LiFQDhARpAAQAAAGvrAAXCYt0A4QEMIAEAAABt6wAHwmIbAOEBDCABAAAAbusAB8IiGgDhARYEAQAAAG/rAAfCghwA4QEWBAEAAABw6wAHwsIaAOEBHAwBAAAAcesAB8IiGgDhASIAAQAAAHLrAAbCYi8A4QEMIAEAAABz6wAHwmKIAOEBDCABAAAAdOsAB8JCIADhAQwgAQAAAHXrAAfCQjUA4QEMIAEAAAB26wAHwoIXAOEBGkABAAAAd+sAB8ICGgDhARpAAQAAAHfrAAXCAhkA4QEMIAEAAAB56wAHwoIhAOEBFgQBAAAAeusAB8KiKQDhARYEAQAAAHvrAAfCYhwA4QEWBAEAAAB86wAHwqIqAOEBHAwBAAAAfesAB8JiGwDhAQwgAQAAAH7rAAfCgtMA4QEMIAEAAAB/6wAHwsJCAOEBDCABAAAAgOsAB8LCGADhAQwgAQAAAIHrAAfCAjAA4QEMIAEAAACB6wAFwgIZAOEBHiABAAAAg+sABsLCGQDhARYEAQAAAITrAAfCwhcA4QEiAAEAAACF6wAGwkIgAOEBDCABAAAAhusAB8LCGgDhARwMAQAAAIfrAAfCghcA4QEWBAEAAACI6wAHwqIkAOEBHAwBAAAAiesAB8JiGwDhAQwgAQAAAIrrAAfC4hgA4QEMIAEAAACD6wAFwuIjAOEBDCABAAAAjOsAB8KidQDhAQwgAQAAAIzrAAXCwjQA4QEaQAEAAACO6wAHwoInAOEBGkABAAAAjusABcIiKwDhAQwgAQAAAJDrAAfCQisA4QEaQAEAAACO6wAFwuIVAOEBGkABAAAAjusABcLiUgHhAQwgAQAAAJbrAAXCAhkA4QEeIAEAAACU6wAGwuIVAOEBGkABAAAAlOsABcLiJADhAQwgAQAAAJbrAAfCIiUA4QEaQAEAAACX6wAHwuIVAOEBGkABAAAAl+sABcJiJQDhARpAAQAAAJfrAAXCYjYA4QEMIAEAAACa6wAHwmJWAOEBGkABAAAANusABcLiFQDhARpAAQAAADbrAAXCYiIA4QEiBAEAAACd6wAGwmIaAOEBDCABAAAAnusAB8IiLQDhAQwgAQAAAJ/rAAfCYhsA4QEMIAEAAACg6wAHwoJ+AOEBDCABAAAAoesAB8ICGQDhAQwgAQAAAKLrAAfCgiEA4QEWBAEAAACj6wAHwmIaAOEBDCABAAAApOsAB8LCHwDhAQwgAQAAAKXrAAfCAngA4QEMIAEAAAA26wAHwkIrAOEBDCABAAAAqOsABcIiHADhAQwgAQAAAKjrAAXCAhkA4QEMIAEAAACp6wAHwoIhAOEBFgQBAAAAqusAB8LCzwHhAQwgAQAAAKvrAAfCIiwA4QEMIAEAAACw6wAFwiJnAOEBDCABAAAArusABcKikwDhAQwgAQAAAK7rAAXCYjYA4QEMIAEAAACv6wAHwsLMAOEBDCABAAAAsOsABcIC9ADhAQwgAQAAALHrAAfCghcA4QEaQAEAAACy6wAHwgIaAOEBGkABAAAAsusABcICGQDhAQwgAQAAALTrAAfCAhkA4QEMIAEAAAC16wAHwuJSAOEBGkABAAAAtusAB8KC/wDhAQwgAQAAAJzpAAXCYl4A4QEWBAEAAAC46wAHwsIaAOEBHAwBAAAAuesAB8JiGwDhAQwgAQAAALrrAAfCgiwA4QEMIAEAAAC86wAFwqI8AOEBDCABAAAAvOsAB8JiYgDhAQwgAQAAAL3rAAfCQo4A4QEaQAEAAAC+6wAHwoIdAOEBIAABAAAAvusAAsJijgDhARpAAQAAAL7rAAXC4hUA4QEaQAEAAAC+6wAFwgIZAOEBDCABAAAAwusAB8LCNADhAQwgAQAAAMPrAAfCIikA4QEaQAEAAADE6wAHwuIZAOEBGkABAAAAxOsABcICGgDhARpAAQAAAMTrAAXC4hUA4QEaQAEAAADE6wAFwgIZAOEBDCABAAAAyOsAB8LiGADhAQwgAQAAAMjrAAXCYhoA4QEMIAEAAADK6wAHwqIfAOEBDCABAAAAyusABcICLgDhAQwgAQAAAMzrAAfCoicA4QEaQAEAAADU6wBHwoInAOEBGkABAAAA1esARcIiKwDhAQwgAQAAANbrAEXCAioA4QEMIAEAAADX6wBFwkIrAOEBGkABAAAA2OsARcLiFQDhARpAAQAAANnrAEXC4iEA4QEMIAEAAADT6wAHwoIwAOEBGkABAAAA1OsAB8KiMADhARpAAQAAANTrAAXCokYA4QEMIAEAAADW6wAFwgIqAOEBDCABAAAA1usABcLCMADhARpAAQAAANTrAAXC4hUA4QEaQAEAAADU6wAFwmJZAOEBDCABAAAA2+sABcLCzADhAQwgAQAAANvrAAfCYiQA4QEMIAEAAADc6wAHwsJWAOEBFgQBAAAAEuwABcLCSgDhARYEAQAAABLsAAXC4lYA4QEcDAEAAADf6wAHwkIdAOEBDCABAAAA4OsAB8JiGwDhAQwgAQAAAOHrAAfC4jcA4QEWBAEAAADi6wAHwgIZAOEBDCABAAAA4+sAB8JCFADhAQwgAQAAAOTrAAfCQrcA4QEMIAEAAADl6wAHwmLUAOEBDCABAAAA5usAB8KiIADhAR4gAQAAAOfrAAbC4hUA4QEaQAEAAADn6wAFwoIhAOEBFgQBAAAA6esAB8JiGgDhAQwgAQAAAOrrAAfCAh0A4QEMIAEAAADn6wAFwuIkAOEBDCABAAAA7OsAB8KCfwDhARpAAQAAAO3rAAfCYh8A4QEaQAEAAADt6wAFwuIVAOEBIAABAAAA7esAAsJCIADhAQwgAQAAAPDrAAfCYhwA4QEWBAEAAADx6wAHwqIqAOEBHAwBAAAA8usAB8ICKgDhARpAAQAAAO3rAAXCIh4A4QEMIAEAAAD06wAHwsIYAOEBFgQBAAAA9esAB8ICNgDhAQwgAQAAAPbrAAfCghcA4QEiAAEAAAD36wAGwgJBAOEBDCABAAAA+OsAB8IiGgDhARYEAQAAAPnrAAfCQhoA4QEMIAEAAAD66wAHwiJIAOEBDCABAAAA++sAB8JCKwDhAQwgAQAAAP3rAAXCIhwA4QEMIAEAAAD96wAHwiIaAOEBFgQBAAAA/usAB8JCLQDhAQwgAQAAAP/rAAfCYiAA4QEMIAEAAAAA7AAHwgIZAOEBDCABAAAAAewAB8JiRgDhAQwgAQAAAALsAAfCIhoA4QEWBAEAAAAD7AAHwkItAOEBDCABAAAABOwAB8JiIADhAQwgAQAAAAXsAAfCQkEA4QEMIAEAAAAG7AAHwiIpAOEBHiABAAAAB+wABsICGgDhAQwgAQAAAAfsAAXC4hUA4QEaQAEAAAAH7AAFwgIZAOEBDCABAAAACuwAB8KiHgDhAQwgAQAAAAzsAAXCojwA4QEMIAEAAAAM7AAFwoIXAOEBIAABAAAADewABsICGgDhARpAAQAAAA3sAAXC4hUA4QEaQAEAAAAN7AAFwgIZAOEBDCABAAAAEOwAB8LibgDhARYEAQAAABHsAAfC4ocA4QEWBAEAAAAS7AAHwqI8AOEBDCABAAAAE+wAB8LiIQDhAQwgAQAAABTsAAfCYiAA4QEMIAEAAAAV7AAHwmIkAOEBDCABAAAAFuwAB8JCagDhAQwgAQAAABfsAAfCIjwA4QEWBAEAAAAY7AAHwkIrAOEBDCABAAAAGuwABcIiHADhAQwgAQAAABrsAAXCYi4B4QEMIAEAAAAb7AAHwoI2AOEBFgQBAAAAHOwAB8IiGQDhAQwgAQAAAB3sAAfCQisA4QEMIAEAAAAd7AAFwqIgAOEBGkABAAAAH+wAB8LiGQDhASBAAQAAAB/sAALC4hUA4QEgQAEAAAAf7AACwgIZAOEBDCABAAAAIuwAB8LiIQDhAQwgAQAAACPsAAfCYiAA4QEMBAEAAAAk7AAHwuIYAOEBDCABAAAAIuwABcKCIQDhARYEAQAAACbsAAfCoiQA4QEcDAEAAAAn7AAHwmIbAOEBDCABAAAAKOwAB8JiGgDhAQwgAQAAACnsAAfCghcA4QEMIAEAAAAq7AAHwiItAOEBDCABAAAAK+wAB8ICHQDhARpAAQAAAB/sAAXCQmIA4QEMIAEAAAAt7AAHwgKBAOEBDCABAAAALuwAB8KiOwDhAQwgAQAAAC/sAAfCYhwA4QEWBAEAAAAw7AAHwiIZAOEBDCABAAAAMewAB8KCKgDhAQwgAQAAAC/sAAXCAiIA4QEMIAEAAAAz7AAHwiIcAOEBDCABAAAANOwAB8IiGgDhARYEAQAAADXsAAfCQicA4QEMIAEAAAA27AAHwgJJAOEBDCABAAAANuwABcJCLQDhAQwgAQAAADjsAAfCQicA4QEMIAEAAAA57AAHwqJhAOEBFgQBAAAAOuwAB8LCSgDhAR4gAQAAADvsAAbCYh4A4QEWBAEAAAA87AAHwgIZAOEBDCABAAAAPewAB8LiGQDhARpAAQAAADvsAAXC4h4A4QEMIAEAAAA/7AAHwgIqAOEBDCABAAAAP+wABcLiFQDhARpAAQAAADvsAAXCoj0A4QEeIAEAAAA77AAEwqIeAOEBDCABAAAAROwABcICGQDhAQwgAQAAAETsAAfCojwA4QEMIAEAAABF7AAHwkKQAOEBDCABAAAASewABcLCHQDhAQwgAQAAAEjsAAXCojwA4QEMIAEAAABI7AAFwuI0AOEBDCABAAAASewABcJiKADhAQwgAQAAAEvsAAXCgnoA4QEMIAEAAABL7AAHwqKOAOEBDCABAAAATOwAB8IiGQDhAQwgAQAAAE3sAAfCwkQA4QEMIAEAAABO7AAHwmIgAOEBDCABAAAAT+wAB8JiSwDhAQwgAQAAAFDsAAfCgogB4QEWBAEAAABR7AAHwqI8AOEBDCABAAAAUuwAB8JCSQDhAQwgAQAAAFPsAAfCQkkA4QEMIAEAAABU7AAHwkJJAOEBDCABAAAAVewAB8Ii+ADhAQwgAQAAAFbsAAfCAngA4QEMIAEAAABX7AAHwoKtAOEBDCABAAAAWOwAB8Li5QDhAQwgAQAAAFjsAAXCYiAA4QEMIAEAAABa7AAHwiI0AOEBFgQBAAAAW+wAB8LiLADhAQwgAQAAAFzsAAfCQkEA4QEMIAEAAABd7AAHwoLhAOEBDCABAAAAXuwAB8KiKQDhAQwgAQAAAF/sAAfCQkkA4QEMIAEAAABg7AAHwsIiAOEBDCABAAAAYewAB8ICXADhAQwgAQAAAGLsAAfCYnIA4QEMIAEAAABj7AAFwuJAAOEBDCABAAAAY+wABcKCwADhAQwgAQAAAGXsAAfCYiYA4QEMIAEAAABm7AAHwkIdAOEBDCABAAAAZ+wAB8LCgQDhARYEAQAAAGjsAAfC4n0A4QEMIAEAAABp7AAHwuJ/AOEBDCABAAAAaewABcIiPADhARYEAQAAAGvsAAfCghwA4QEWBAEAAABs7AAHwkI9AOEBDCABAAAAb+wAB8KCfQDhARYEAQAAAG7sAAfCYj0A4QEiAAEAAABv7AAGwqJhAOEBFgQBAAAAcOwAB8KCHADhARYEAQAAAHHsAAfCYiAA4QEMIAEAAABy7AAHwkJJAOEBDCABAAAAc+wAB8LCTgDhAQwgAQAAAHTsAAfCQiYA4QEaQAEAAAB17AAHwuIZAOEBFgQBAAAAduwAB8LCKADhARwMAQAAAHfsAAfCwhkA4QEWBAEAAAB47AAHwkI4AOEBFgQBAAAAeewAB8ICGQDhAQwgAQAAAHrsAAfCYhoA4QEMIAEAAAB77AAHwgIdAOEBGkABAAAAdewABcJiJADhAQwgAQAAAH3sAAfCwmQA4QEaQAEAAAB+7AAHwuIfAOEBGkABAAAAfuwABcLiFQDhASAAAQAAAH7sAALCwhkA4QEWBAEAAACB7AAHwkI4AOEBFgQBAAAAguwAB8ICGQDhAQwgAQAAAIPsAAfC4hgA4QEMIAEAAACD7AAFwoIhAOEBFgQBAAAAhewAB8IiHgDhAQwgAQAAAIbsAAfCYh4A4QEWBAEAAACH7AAHwoIXAOEBGkABAAAAiOwAB8ICGgDhARpAAQAAAIjsAAXC4mAA4QEMIAEAAACK7AAHwiJmAOEBFgQBAAAAi+wAB8LCKADhARwMAQAAAIzsAAfCQh0A4QEWBAEAAACN7AAHwkIgAOEBDCABAAAAjuwAB8LCGQDhARYEAQAAAI/sAAfCgiIA4QEcDAEAAACQ7AAHwqIlAOEBGkABAAAAkewAB8JiKQDhASBAAQAAAJHsAALCAucA4QEgQAEAAACR7AACwiIeAOEBDCABAAAAlOwAB8KCHADhARYEAQAAAJXsAAfCIiYA4QEMIAEAAACW7AAHwiIeAOEBDCABAAAAl+wAB8LiHAHhAQwgAQAAAJjsAAfCwmcA4QEMIAEAAACa7AAFwuI0AOEBDCABAAAAmuwABcJiOQDhAQwgAQAAAJvsAAfCYjQA4QEMIAEAAACc7AAHwqIaAOEBFgQBAAAAnewAB8LCGgDhARwMAQAAAJ7sAAfCIioA4QEMIAEAAACc7AAHwoIWAOEBGkABAAAAkewABcLCHwDhARpAAQAAAKHsAAfCQiUA4QEaQAEAAACh7AAFwsIYAOEBFgQBAAAAo+wAB8KiGgDhARYEAQAAAKTsAAfCwhoA4QEcDAEAAACl7AAHwsIgAOEBHAwBAAAApuwAB8IiJgDhAQwgAQAAAKfsAAfCAioA4QEMIAEAAACn7AAFwuIfAOEBGkABAAAAoewABcLiFQDhARpAAQAAAKHsAAXCIh4A4QEMIAEAAACr7AAHwmIoAOEBDCABAAAAq+wABcKiGgDhASIEAQAAAK3sAAbC4iEA4QEMIAEAAACu7AAHwsIaAOEBHAwBAAAAr+wAB8LiFQDhARpAAQAAAJHsAAXCAi8A4QEMIAEAAACx7AAHwgIZAOEBHiABAAAAsuwABsLCFwDhARYEAQAAALPsAAfCwhoA4QEcDAEAAAC07AAHwmIiAOEBFgQBAAAAtewAB8JiKgDhAQwgAQAAALbsAAfC4hgA4QEMIAEAAACy7AAHwgKkAeEBDCABAAAAuOwAB8JCewDhAQwgAQAAALjsAAXCoikA4QEWBAEAAAC67AAHwkJBAOEBDCABAAAAu+wAB8JCMgDhAQwgAQAAALzsAAfCAhkA4QEMIAEAAAC97AAHwoIhAOEBFgQBAAAAvuwAB8KiJADhARwMAQAAAL/sAAfCQowA4QEaQAEAAADA7AAHwgKGAOEBIEABAAAAwOwAAsKCTADhAQwgAQAAAMLsAAfCwpoA4QEaQAEAAADA7AAFwuIVAOEBIEABAAAAwOwAAsJiMQDhARwMAQAAAMXsAAfCIjIA4QEMIAEAAADG7AAHwsKLAOEBDCABAAAAx+wAB8JiGwDhAQwgAQAAAMjsAAfCQqsA4QEeIAEAAADJ7AAGwkIoAOEBDCABAAAAyuwAB8LiFQDhARpAAQAAAMnsAAXCQs0A4QEaQAEAAADJ7AAFwoJxAOEBFgQBAAAAzewAB8JCLQDhAQwgAQAAAM7sAAfCwiIA4QEWBAEAAADP7AAHwoIXAOEBFgQBAAAA0OwAB8JCIADhAQwgAQAAANHsAAfCgmcA4QEWBAEAAADS7AAHwqLNAOEBDCABAAAA0+wAB8LizwHhAQwgAQAAANTsAAfCAtAB2QEMIAEAAAAw5gAFwsJkAOEBDCABAAAA1uwAB8IiHgDhAQwgAQAAANfsAAfCwhgA4QEWBAEAAADY7AAHwqIaAOEBFgQBAAAA2ewAB8LCIADhARwMAQAAANrsAAfCAkYA4QEMIAEAAADb7AAHwqIjAOEBFgQBAAAA3OwAB8JiaQDhARwMAQAAAN3sAAfCYhsA4QEMIAEAAADe7AAHwiKBAOEBHkABAAAA3+wABsKiGADhARpAAQAAAN/sAAXCYioA4QEMIAEAAADh7AAHwiI3AOEBHgABAAAA3+wABMLiFQDhAQwgAQAAAOPsAAfCItAB4QEMIAEAAADk7AAHwiIeAOEBDCABAAAA5ewAB8JCHgDhAQwgAQAAAObsAAfCwhgA4QEWBAEAAADn7AAHwsIgAOEBHAwBAAAA6OwAB8ICbADhAQwgAQAAAOnsAAfC4iQA4QEMIAEAAADq7AAHwkIdAOEBFgQBAAAA6+wAB8IivQDZAR4AAQAAAOzsAAbC4hUA4QEiBAEAAADt7AAGwmIxAOEBHAwBAAAA7uwAB8KCWwDhAQwgAQAAAPDsAAXCopMA4QEMIAEAAADw7AAFxIKiABwEGDABAAAA8ewQBcKCogAgBBgwAQAAAPHsAAXFQtAB2QEMIAEAAADz7AAHxUKlAOEBGkABAAAA9OwAB8ViIADhAQwgAQAAAPXsAAfFQhQA4QEMIAEAAAD27AAHxQIiAOEBDCABAAAA+OwABcWiPADhAQwgAQAAAPjsAAfFAkYA4QEMIAEAAAD57AAHxUIuAOEBDCABAAAA+uwAB8ViIADhAQwgAQAAAPvsAAfFQkkA4QEMIAEAAAD87AAHxQI7AeEBDCABAAAA/ewAB8XiMQHhASIAAQAAAP7sAAbFoj0AIQIMIAEAAAD/7AAFxULVAOEBDCABAAAAAO0AB8XCFgDhAQwgAQAAAAHtAAfFIhwA4QEMIAEAAAAC7QAHxWIkAOEBDCABAAAAA+0AB8UCGQDhAQwgAQAAAATtAAfFYjcA4QEiAAEAAAAF7QAGxSIaAOEBFgQBAAAABu0AB8XiIQDhAQwgAQAAAAftAAfFAgwB4QEMIAEAAAAI7QAHxcI7AOEBDCABAAAACe0AB8ViHADhARYEAQAAAArtAAfFQiQA4QEWBAEAAAAL7QAHxeLHAeEBDCABAAAADO0AB8UCPQDhAQwgAQAAAA3tAAfFgi4A4QEMIAEAAAAP7QAFxaI8AOEBDCABAAAAD+0AB8XibgDhARYEAQAAABDtAAfFIl4A4QEMIAEAAAAR7QAHxSIeAOEBDCABAAAAEu0AB8XCewDhARYEAQAAABPtAAfFAhkA4QEMIAEAAAAU7QAHxSI3AOEBDCABAAAAFe0AB8WChADhAQwgAQAAABbtAAfFIuEA4QEMIAEAAAAX7QAHxaI0AOEBDCABAAAAGO0AB8Vi0AHZAQwgAQAAABntAAfFgtAB2QEMIAEAAAAa7QAHxYI3AOEBDCABAAAAG+0AB8WijgDhAQwgAQAAABztAAfFYkkA4QEMIAEAAAAd7QAHxQIuAOEBDCABAAAAHu0AB8UCXADhAQwgAQAAAB/tAAfFIhwA4QEMIAEAAAAg7QAHxSJ5AOEBDCABAAAAIe0AB8UCZADhAQwgAQAAACLtAAfFAi8A4QEMIAEAAAAj7QAHxSIcAOEBDCABAAAAJO0AB8UCuwHhAQwgAQAAACXtAAfFwjcA4QEMIAEAAAAm7QAHxSIcAOEBDCABAAAAJ+0AB8Wi0AHZAQwgAQAAAOjYAAfFwjYA4QEMIAEAAAAp7QAHxcIdAOEBDCABAAAAKu0AB8UCJQDhARYEAQAAACvtAAfFIjQA4QEWBAEAAAAs7QAHxYIcAOEBFgQBAAAALe0AB8ViIADhAQwgAQAAAC7tAAfFoj0A4QEMIAEAAAAu7QAFxQI4AOEBDCABAAAAMO0AB8XCPADhASIEAQAAADHtAAbFghwA4QEWBAEAAAAy7QAHxcIaAOEBHAwBAAAAM+0AB8XiMADhAQwgAQAAADTtAAfFgiEA4QEWBAEAAAA17QAHxUJxAOEBGkABAAAAPu0AR8WCJwDhARpAAQAAAD/tAEXFQisA4QEMIAEAAABA7QBFxeIVAOEBGkABAAAAQe0ARcUiHADhAQwgAQAAADrtAAfFomsA4QEMIAEAAAA77QAHxSIaAOEBFgQBAAAAPO0AB8WCHADhARYEAQAAAD3tAAfFYnEA4QEaQAEAAAA+7QAHxaIwAOEBGkABAAAAPu0ABcXCMADhARogAQAAAD7tAAXF4hUA4QEaQAEAAAA+7QAFxcIZAOEBDCABAAAAQu0AB8UCOwDhAQwgAQAAAEPtAAfFQi0A4QEMIAEAAABE7QAHxSIcAOEBDCABAAAARe0AB8UiGgDhARYEAQAAAEbtAAfFYi4A4QEWBAEAAABH7QAHxSIcAOEBDCABAAAASO0AB8UiGgDhARYEAQAAAEntAAfFYiAA4QEMIAEAAABK7QAHxSIaAOEBFgQBAAAAS+0AB8VCLQDhAQwgAQAAAEztAAfFghwA4QEWBAEAAABN7QAHxcIaAOEBHAwBAAAATu0AB8ViIADhAQwgAQAAAE/tAAfFoj0A4QEMIAEAAABP7QAFxUJJAOEBDCABAAAAUe0AB8UiNADhARYEAQAAAFLtAAfFQi0A4QEMIAEAAABT7QAHxeKjAOEBDCABAAAAVO0AB8UCOADhAQwgAQAAAFXtAAfFYhoA4QEWBAEAAABW7QAHxUIrAOEBDCABAAAAWO0ABcUiHADhAQwgAQAAAFjtAAfFIhoA4QEiAAEAAABZ7QAGxUItAOEBDCABAAAAWu0AB8WiTgDhAQwgAQAAAFvtAAfFwjwA4QEWBAEAAABc7QAHxeJEAOEBFgQBAAAAXe0AB8WCHADhARYEAQAAAF7tAAfFQkkA4QEMIAEAAABf7QAHxSJBAOEBDCABAAAAYO0AB8WCHADhARYEAQAAAGHtAAfFQkkA4QEMIAEAAABi7QAHxWIgAOEBDCABAAAAY+0AB8VCLQDhAQwgAQAAAGTtAAfFQkkA4QEMIAEAAABl7QAHxcL0AOEBDCABAAAAZu0AB8VCKwDhAQwgAQAAAGrtAAXFIjAA4QEWBAEAAABo7QAHxUIgAOEBDCABAAAAae0AB8UiHADhAQwgAQAAAGrtAAfFIhoA4QEWBAEAAABr7QAHxQJGAOEBDCABAAAAbO0AB8UiGgDhARYEAQAAAG3tAAfFQi0A4QEMIAEAAABu7QAHxWIgAOEBDCABAAAAb+0AB8UiPQDhAQwgAQAAAHDtAAfFIhoA4QEiBAEAAABx7QAGxSI8AOEBFgQBAAAAcu0AB8XiHgDhAQwgAQAAAHPtAAfFIl4A4QEMIAEAAAB07QAHxaI1AOEBDCABAAAAde0AB8WiPADhAQwgAQAAAHbtAAfFwtAB4QEMIAEAAAB37QAHxuLQAdUBDCABAAAAeO0ABceCgwByAg0gAQAAAHvtIAXIAtEBdwINIAEAAAB77RAFxqKDAHkCDSABAAAAe+0ABcZiewDhAQwgAQAAAHztAAfGQhoA4QEMIAEAAAB97QAHxoIcAOEBFgQBAAAAfu0AB8ZiIADhAQwgAQAAAH/tAAfGQkkA4QEMIAEAAACA7QAHxgIuAOEBDCABAAAAge0AB8ZidADhAQwgAQAAAILtAAfGIkcA4QEMIAEAAACD7QAHxgIZAOEBDCABAAAAhO0AB8ZCNgDhAQwgAQAAAIXtAAfG4lEA4QEMIAEAAACG7QAHxgJkAOEBDCABAAAAh+0AB8aCSADhAQwgAQAAAIntAAXGojwA4QEMIAEAAACJ7QAHxiIsAOEBDCABAAAAiu0ABcbCWQDhAQwgAQAAAIrtAAXGItEB2QEMIAEAAACM7QAHxmJeAOEBFgQBAAAAje0AB8ZCKgDhAQwgAQAAAI7tAAfGYiQA4QEMIAEAAACP7QAHxkIrAOEBDCABAAAAke0ABcYiHADhAQwgAQAAAJHtAAfGoowA4QEMIAEAAACS7QAHx0LRAQoCGTABAAAAle0gBchi0QEPAhkwAQAAAJXtEAXGYtEBEQIZMAEAAACV7QAFxsJEAOEBDCABAAAAlu0AB8aiJwDhARpAAQAAAJftAAfG4iEA4QEMIAEAAACY7QAHxuKLAOEBDCABAAAAme0AB8aCMADhARpAAQAAAJrtAAfJItAA2QEeIAEAAACb7QAGyYIdAOEBGkABAAAAm+0ABcniFQDhARpAAQAAAJvtAAXJwh4A4QEWBAEAAACe7QAHyYJ7AOEBDCABAAAAn+0AB8nCGADhARYEAQAAAKDtAAfJYo4A4QEMIAEAAACl7QAHySIeAOEBDCABAAAAou0AB8nCGADhARYEAQAAAKPtAAfJgjQA4QEWBAEAAACk7QAHyWLiAOEBDCABAAAApe0AB8kCJQDhASIEAQAAAKbtAAbJwhoA4QEcDAEAAACn7QAHyYJNAOEBDCABAAAAqO0AB8kCGQDhAQwgAQAAAKntAAfJ4hgA4QEMIAEAAACp7QAFyaInAOEBGkABAAAAsu0AR8mCJwDhARYEAQAAALPtAEfJIisA4QEMIAEAAACt7QAHyUIrAOEBGkABAAAAte0ARcniFQDhARpAAQAAALbtAEXJYiAA4QEMIAEAAACw7QAHyUIgAOEBDCABAAAAse0AB8mCMADhARpAAQAAALLtAAfJojAA4QEgQAEAAACy7QACyaJGAOEBDCABAAAAtO0AB8nCMADhARpAAQAAALLtAAXJ4hUA4QEeAAEAAACy7QACyUJpAeEBHAwBAAAAt+0AB8miIwDhARpAAQAAALjtAAfJwhkA4QEWBAEAAAC57QAHyWIZAOEBIEABAAAAuO0AAsmCQwDhAQwgAQAAALvtAAfJAioA4QEMIAEAAAC77QAFycIjAOEBGkABAAAAuO0ABcniFQDhAR4gAQAAALjtAALJYvkA4QEMIAEAAACb7QAFycJOAOEBDCABAAAAwO0AB8miHADhAQwgAQAAAMHtAAfJgtEB4QEWBAEAAADC7QAHyYJMAOEBHgABAAAAw+0ABskCVgDhAQwgAQAAAMTtAAfJ4hUA4QEaQAEAAADD7QAFyQIqAOEBHgABAAAAw+0ABMmiIwDhARYEAQAAAMftAAfJYmkA4QEcDAEAAADI7QAHyWIbAOEBDCABAAAAye0AB8mi0QHZAQwgAQAAAMrtAAfJ4hUA4QEMIAEAAADL7QAHyUIlAOEBFgQBAAAAzO0AB8mCTgDhAQwgAQAAAM3tAAfJ4j8A4QEeAAEAAADO7QAGyUIoAOEBDCABAAAAz+0AB8kCWADhAR4AAQAAAM7tAATJ4hUA4QEaQAEAAADO7QAFyYI/AOEBDCABAAAA1O0ABcmCLwDhARYEAQAAANPtAAfJoj8A4QEMIAEAAADU7QAHyYImAOEBDCABAAAA1e0AB8nCVgDhARYEAQAAANntAAXJwkoA4QEWBAEAAADZ7QAFyWIbAOEBDCABAAAA2O0AB8kiHwHhARYEAQAAANntAAfJQjgA4QEWBAEAAADa7QAHyUIgAOEBDCABAAAA2+0AB8liOQDhAQwgAQAAANztAAfJQiQA4QEWBAEAAADd7QAHyaI8AOEBDCABAAAA3u0AB8mCwwDhAS4gAQAAAN/tAAbJwgIA4QEMIAEAAADg7QAHyaJ5AOEBDCABAAAA4e0AB8mCsQDhARYEAQAAAOLtAAfJIoQA4QEMIAEAAADj7QAHyaIjAOEBDCABAAAA5O0AB8kCRgDhAQwgAQAAAOXtAAfJwlYA4QEWBAEAAADs7QAFycJKAOEBFgQBAAAA7O0ABcliwwDhAQwgAQAAAOjtAAfJYhsA4QEMIAEAAADp7QAHyeIVAOEBHgABAAAA3+0AAsmiwwDhAR4AAQAAAN/tAATJYu0A4QEWBAEAAADs7QAHycLRAdkBHgABAAAA7e0ABsmiJgDhARpAAQAAAO3tAAXJ4hUA4QEaQAEAAADt7QAFyeIhAOEBDCABAAAA8O0AB8liIADhAQwgAQAAAPHtAAfJIhoA4QEWBAEAAADy7QAHyWIcAOEBFgQBAAAA8+0AB8miKgDhARwMAQAAAPTtAAfJQiAA4QEMIAEAAAD17QAHySIeAOEBDCABAAAA9u0AB8liHgDhARYEAQAAAPftAAfJIoEB4QEMIAEAAAD47QAHyeKFAOEBHgABAAAA+e0ABsnCmgDhARpAAQAAAPntAAXJ4hUA4QEeAAEAAAD57QACyeJYAOEBFgQBAAAA/O0AB8ni0QHhAQwgAQAAAP3tAAfJgm8A2QEMIAEAAAD+7QAHyQI1AOEBDCABAAAA/+0AB8nChQDhAQwgAQAAAADuAAfJwoUA4QEMIAEAAAAB7gAHycJkAOEBDCABAAAAAu4AB8liHADhARYEAQAAAAPuAAfJYm8A4QEaQAEAAAAE7gAHycJnAOEBDCABAAAA/u0ABckCtQDhAR5AAQAAAAbuAAbJohcA4QEMIAEAAAAH7gAHyQJAAOEBGkABAAAABu4ABclCKADhAQwgAQAAAAnuAAfJQlEA4QEMIAEAAAAK7gAHyeJiAOEBDCABAAAAC+4AB8niFQDhAR5AAQAAAAbuAALJgiUA4QEMIAEAAAAN7gAHyYIpAOEBDCABAAAADu4AB8nigQDhARpAAQAAAAbuAAXJghcA4QEaQAEAAAAQ7gAHyQIaAOEBGkABAAAAEO4ABckCGQDhAQwgAQAAABLuAAfJYiIA4QEWBAEAAAAT7gAHyWIuAOEBFgQBAAAAFO4AB8niVQHhAR4gAQAAABXuAAbJwlYA4QEWBAEAAAAb7gAFycJKAOEBFgQBAAAAG+4ABcliGwDhAQwgAQAAABjuAAfJ4ooA4QEMIAEAAAAZ7gAHySJGAOEBDCABAAAAGu4AB8liLwHhARYEAQAAABvuAAfJInQA4QEMIAEAAAAc7gAHycJ8AOEBDCABAAAAHe4AB8mCFwDhARpAAQAAAB7uAAfJAhoA4QEaQAEAAAAe7gAFyeIVAOEBGkABAAAAHu4ABckCGQDhAQwgAQAAACHuAAfJQpoA4QEeIAEAAAAi7gAGyWIbAOEBFgQBAAAAI+4AB8lCKwDhAQwgAQAAACLuAAXJ4hUA4QEeAAEAAAAi7gACyQIZAOEBDCABAAAAK+4AR8miJwDhARpAAQAAACzuAEfJgicA4QEWBAEAAAAt7gBHyUIrAOEBGkABAAAALu4ARcniFQDhARpAAQAAAC/uAEXJAhkA4QEMIAEAAAAr7gAHyYIwAOEBGkABAAAALO4AB8miMADhARYEAQAAAC3uAAfJwjAA4QEaQAEAAAAs7gAFyeIVAOEBGkABAAAALO4ABclCkADhAQwgAQAAADHuAAXJ4jQA4QEMIAEAAAAx7gAFyaI4AOEBDCABAAAAM+4ABcnCOADhAQwgAQAAADPuAAXJIm8A4QEMIAEAAAA07gAHycIxAOEBHgABAAAANe4ABsmirwDhARpAAQAAADbuAAfJAkAA4QEaQAEAAAA27gAFyQJAAOEBGkABAAAANu4ARcniFQDhARpAAQAAADfuAEXJoswB4QEMIAEAAAA67gAHyUJ0AOEBGkABAAAANu4ABclC1gDhAR5AAQAAADzuAAbJYlYA4QEgQAEAAAA87gACyaLdAOEBDCABAAAAPu4AB8niFQDhARpAAQAAADzuAAXJwlgA4QEMIAEAAABA7gAHyaJSAOEBDCABAAAAQe4AB8mC1gDhAR4gAQAAADzuAATJQjwB2QEeAAEAAABD7gAGySKgAOEBHiABAAAARO4ABsmiwgHhAQwgAQAAAEXuAAfJwgIA4QEMIAEAAABG7gAHyQIjAOEBDCABAAAAR+4AB8liGQDhARpAAQAAAETuAAXJgkMA4QEMIAEAAABJ7gAHycIjAOEBHgABAAAARO4ABMnCVgDhARYEAQAAAFDuAAXJwkoA4QEWBAEAAABQ7gAFyYKKAOEBDCABAAAATe4ABclCewDhAQwgAQAAAE3uAAXJ4hUA4QEaIAEAAABE7gAFyaI3AOEBFgQBAAAAUO4ABclClQDhAQwgAQAAAFHuAAfJYhwA4QEWBAEAAABS7gAHyaIqAOEBHAwBAAAAU+4AB8liGwDhAQwgAQAAAFTuAAfJIjAA4QEWBAEAAABV7gAHyUIgAOEBDCABAAAAVu4AB8nCGgDhARwMAQAAAFfuAAfJghcA4QEaQAEAAABY7gAHyQIaAOEBGkABAAAAWO4ABcniFQDhARpAAQAAAFjuAAXJAhkA4QEMIAEAAABb7gAHySI2AOEBDCABAAAAXO4AB8nCGQDhARYEAQAAAF3uAAfJ4iAA4QEeAAEAAABe7gAGyWIfAOEBFgQBAAAAX+4AB8liGwDhARYEAQAAAGDuAAfJAiEA4QEeAAEAAABe7gAEyeIVAOEBGkABAAAAXu4ABcmiMgDhAQwgAQAAAGPuAAfJwjIA4QEMIAEAAABj7gAFyQKEAOEBDCABAAAAZe4AB8kChADhAQwgAQAAAGbuAAfJQh4A4QEMIAEAAABn7gAHycIYAOEBFgQBAAAAaO4AB8nCIADhARwMAQAAAGnuAAfJYi4A4QEWBAEAAABq7gAHycJWAOEBFgQBAAAAiO4ABcnCSgDhARYEAQAAAIjuAAXJ4lYA4QEcDAEAAABt7gAHyWIbAOEBDCABAAAAbu4AB8miIwDhARpAAQAAAG/uAAfJwhkA4QEWBAEAAABw7gAHyWIZAOEBIEABAAAAb+4AAsnCIwDhARpAAQAAAG/uAAXJ4hUA4QEgQAEAAABv7gACyWIxAOEBHAwBAAAAdO4AB8nCGADhAQwgAQAAAHXuAAfJAjAA4QEMIAEAAAB17gAFyYIhAOEBFgQBAAAAd+4AB8miJADhARwMAQAAAHjuAAfJ4lYA4QEcDAEAAAB57gAHyaIpAOEBFgQBAAAAeu4AB8kC1wDhASIgAQAAAHvuAAbJgu4A4QEMIAEAAAB87gAHyYL0AOEBDCABAAAAfe4AB8miyQDhAQwgAQAAAH7uAAfJYvUA4QEMBAEAAAB/7gAHyaIYAOEBGkABAAAAQ+4ABcnCYADhAQwgAQAAAIHuAAfJ4hUA4QEeAAEAAABD7gACyeJAAeEBDCABAAAAQ+4ABcniHgDhAQwgAQAAAITuAAfJYjIA4QEeIAEAAACF7gAGyeIeAOEBDCABAAAAhu4AB8niFQDhAR4AAQAAAIXuAALJgpQB4QEWBAEAAACI7gAHyQLSAdkBHgABAAAAie4ABsnCmQHhAQwgAQAAAIruAAfJgg0B4QEMIAEAAACK7gAFycKBAOEBFgQBAAAAjO4AB8kCIgDhAQwgAQAAAI7uAAXJojwA4QEMIAEAAACO7gAFyYIXAOEBGkABAAAAj+4AB8kCGgDhARpAAQAAAI/uAAXJorIB4QEMIAEAAACR7gAHyWIiAOEBFgQBAAAAku4AB8nCVADhAQwgAQAAAJHuAAXJYlYA4QEaQAEAAACJ7gAFyWLmAOEBDCABAAAAle4AB8kiawDhAQwgAQAAAJbuAAfJAjgA4QEMIAEAAACX7gAHyWKRAOEBDCABAAAAle4ABckiIADhAQwgAQAAAJvuAAXJ4hUA4QEaQAEAAACJ7gAFyaLyAOEBDCABAAAAm+4AB8miIwDhARYEAQAAAJzuAAfJIlcA4QEWBAEAAACd7gAHyaIJAeEBDCABAAAAie4ABcliLgDhARYEAQAAAJ/uAAfJYkIB4QEMIAEAAACg7gAHyYJrAOEBFgQBAAAAoe4AB8nCGQDhARYEAQAAAKLuAAfJIhkA4QEeIAEAAACj7gAGyYInAOEBGkABAAAAo+4ABckiKwDhAQwgAQAAAKXuAAfJQisA4QEeIAEAAACj7gAEyeIVAOEBHkABAAAAo+4AAsliEQHhAQwgAQAAAKjuAAfJ4iAA4QEWBAEAAACp7gAHySJGAOEBIgABAAAAqu4ABslCJQDhARYEAQAAAKvuAAfJYh8A4QEiAAEAAACs7gAGyYJSAOEBHgABAAAAre4ABsniFQDhARpAAQAAAK3uAAXJoigA4QEaQAEAAACt7gAFyaIkAOEBHAwBAAAAsO4AB8liGwDhAQwgAQAAALHuAAfJwkoA4QEWBAEAAACy7gAFyQIZAOEBDCABAAAAs+4AB8mCIQDhASIAAQAAALTuAAbJohoA4QEWBAEAAAC17gAHyaIpAOEBDCABAAAAtu4AB8milQDhAR5AAQAAALfuAAbJoiYA4QEaQAEAAAC37gAFyeImAOEBGkABAAAAt+4ABcniFQDhAS5AAQAAALfuAALJAhkA4QEMIAEAAAC77gAHyYIxAOEBGkABAAAAv+4ABcnCVgDhAQwgAQAAAL3uAAfJIiAA4QEaQAEAAAC/7gAFycI1AOEBGkABAAAAv+4AB8niFQDhASAAAQAAAL/uAALJYiQA4QEMIAEAAADB7gAHyUJcAOEBDCABAAAAwu4AB8niIQDhAQwgAQAAAMPuAAfJYiAA4QEMIAEAAADE7gAHyaI9AOEBDCABAAAAxO4ABcliSwDhAQwgAQAAAMbuAAfJYi4A4QEWBAEAAADH7gAHyYIcAOEBFgQBAAAAyO4AB8nCGgDhARwMAQAAAMnuAAfJQiAA4QEMIAEAAADK7gAHyULYAOEBHgABAAAAy+4ABsmiQQDhAQwgAQAAAMzuAAfJ4hUA4QEaQAEAAADL7gAFySJCAOEBGkABAAAAzu4AB8lCWgHhAQwgAQAAAM/uAAfJIkUA4QEuBAEAAADQ7gAGyWIbAOEBDCABAAAA0e4AB8miIwDhARYEAQAAANLuAAfJgiQA4QEeQAEAAADT7gAGycIoAOEBHAwBAAAA1O4AB8niFQDhARpAAQAAANPuAAXJwiQA4QEaQAEAAADT7gAFycI0AOEBHiABAAAA1+4ABsmiigDhARYEAQAAANjuAAfJwhoA4QEcDAEAAADZ7gAHyWIbAOEBDCABAAAA2u4AB8liGwDhARYEAQAAANvuAAfJoioA4QEcDAEAAADc7gAHyWIbAOEBDCABAAAA3e4AB8miJADhARwMAQAAAN7uAAfJQisA4QEMIAEAAADX7gAFyYIhAOEBFgQBAAAA4O4AB8kCMQDhAQwgAQAAAOHuAAfJghcA4QEaQAEAAADi7gAHySLZAOEBHgABAAAA4+4ABsniFQDhARpAAQAAAOPuAAXJojEB4QEaQAEAAADj7gAFyWIzAOEBHiABAAAA5u4ABskiKwDhAQwgAQAAAOfuAAfJQisA4QEMIAEAAADm7gAFyeIVAOEBGkABAAAA5u4ABcliSQDhAQwgAQAAAOruAAfJIjAA4QEMIAEAAADr7gAHySIeAOEBDCABAAAA7O4AB8liHgDhARYEAQAAAO3uAAfJQi8B4QEaQAEAAADu7gAHySIzAOEBLkABAAAA7u4AAskiiADhAQwgAQAAAPDuAAfJQjMA4QEaQAEAAADu7gAFyeIVAOEBIEABAAAA7u4AAsmCOgDhAQwgAQAAAPPuAAfJwjIA4QEMIAEAAADz7gAFyQIDAeEBFgQBAAAA9e4AB8kiHgDhAQwgAQAAAPbuAAfJQh4A4QEMIAEAAAD37gAHycIYAOEBFgQBAAAA+O4AB8kiAwHhARpAAQAAAPnuAAfJIh4A4QEMIAEAAAD67gAHyeIVAOEBGkABAAAA+e4ABclCAwHhAQwgAQAAAPzuAAfJAmMA4QEaQAEAAAD57gAFyUJ0AeEBDCABAAAA/u4AB8niIQDhAQwgAQAAAP/uAAfJAlYA4QEeQAEAAAAA7wAGycICAOEBDCABAAAAAe8AB8lCfwDhAQwgAQAAAALvAAfJwkkA4QEMIAEAAAAD7wAHyWIZAOEBGkABAAAAAO8ABcmCQwDhAQwgAQAAAAXvAAfJwiMA4QEaQAEAAAAA7wAFyaKKAOEBFgQBAAAAB+8AB8nCVgDhARYEAQAAABDvAAXJwkoA4QEWBAEAAAAQ7wAFyWIbAOEBDCABAAAACu8AB8niFQDhAR5AAQAAAADvAALJgikA4QEMIAEAAAAM7wAHyeI+AOEBDCABAAAADe8AB8niwwHhAQwgAQAAAA7vAAfJgtIA4QEMIAEAAAAP7wAHyUKPAOEBFgQBAAAAEO8AB8lCIADhAQwgAQAAABHvAAfJYhwA4QEWBAEAAAAS7wAHyaIqAOEBHAwBAAAAE+8AB8liGwDhAQwgAQAAABTvAAfJwlYA4QEWBAEAAAAZ7wAFycJKAOEBFgQBAAAAGe8ABcniYgDhAQwgAQAAABfvAAfJoioA4QEMIAEAAAAY7wAHyQLMAOEBIgABAAAAGe8ABskirwDhAQwgAQAAABrvAAfJwkwA4QEaQAEAAAAb7wAHyUJ7AOEBDCABAAAAHO8AB8mCFwDhARYEAQAAAB3vAAfJYm8A4QEMIAEAAAAe7wAHyQLkANkBHkABAAAAH+8AFsliFADhAQwgAQAAACDvAAfJglEA4QEMIAEAAAAg7wAFyYIhAOEBFgQBAAAAIu8AB8nCGQDhARYEAQAAACPvAAfJ4r8A4QEMIAEAAAAk7wAHyYIlAOEBDCABAAAAJe8AB8nCGADhARYEAQAAACbvAAfJAhkA4QEMIAEAAAAn7wAHyYIhAOEBFgQBAAAAKO8AB8nCGQDhARYEAQAAACnvAAfJgjEA4QEaQAEAAAAs7wAFySIgAOEBGkABAAAALO8ABcmisQDhARpAAQAAACzvAAfJ4hUA4QEaQAEAAAAs7wAFySIeAOEBDCABAAAALu8AB8nCGADhARYEAQAAAC/vAAfJwhkA4QEWBAEAAAAw7wAHyWIkAOEBDCABAAAAMe8AB8nCLgDhARYEAQAAADLvAAfJQiAA4QEMIAEAAAAz7wAHyWIbAOEBDCABAAAANO8AB8nizADhARpAAQAAAB/vAAXJ4soA4QEMIAEAAAA27wAHyQLaAOEBHgABAAAAN+8ABsmCKADhAQwgAQAAADjvAAfJ4h4A4QEeAAEAAAA57wAGyYIfAOEBDCABAAAAOu8AB8niFQDhARpAAQAAADnvAAXJgm0A4QEMIAEAAAA/7wAFyYIxAOEBGkABAAAAQe8ABcniFQDhAR5AAQAAAB/vAALJYmIA4QEMIAEAAAA/7wAFyeLNAOEBDCABAAAAN+8ABcmCrADhAR4AAQAAAEHvAAbJwkwA4QEMIAEAAABC7wAHyULuAOEBDCABAAAAQ+8AB8kipgDhAR4gAQAAAETvAAbJAkAA4QEgQAEAAABE7wACycIYAOEBDCABAAAARu8AB8lCKADhAQwgAQAAAEfvAAfJAlgA4QEeAAEAAABE7wAEyeIVAOEBFgQBAAAASe8AB8oi0gHZAQwgAQAAAErvAAfKQtIB2QEMIAEAAABL7wAHy2LSAdkBDCABAAAATO8AB8yC0gHZAQwgAQAAAE3vAAfMoh4A4QEMIAEAAABO7wAHzAItAOEBFgQBAAAAT+8AB8yCLgDhAQwgAQAAAFHvAAXMojwA4QEMIAEAAABR7wAHzCIcAOEBDCABAAAAUu8AB8yiNgDhAQwgAQAAAFPvAAfMIhwA4QEMIAEAAABU7wAHzCIaAOEBFgQBAAAAVe8AB8xCGgDhAQwgAQAAAFbvAAfMwkgA4QEMIAEAAABX7wAHzIIgAOEBDCABAAAAWO8AB8xCGgDhAQwgAQAAAFnvAAfMoh4A4QEMIAEAAABa7wAHzAItAOEBFgQBAAAAW+8AB8yCLgDhAQwgAQAAAF3vAAXMojwA4QEMIAEAAABd7wAFzOI+AeEBDCABAAAAXu8AB8yiTwDhAQwgAQAAAIXUAEfM4qIA4QEMIAEAAACG1ABFzGIuAOEBFgQBAAAAYe8AB8wiHADhAQwgAQAAAGLvAAfMIhoA4QEWBAEAAABj7wAHzMLMAOEBDCABAAAAZO8AB8yCMAHhAQwgAQAAAGfvAAXMIjQA4QEWBAEAAABm7wAHzAIvAOEBDCABAAAAZ+8AB8wiGQDhAQwgAQAAAGjvAAfMolAA4QEMIAEAAABp7wAHzGIuAOEBFgQBAAAAau8AB8xCZwDhAQwgAQAAAGvvAAfMYmsA4QEMIAEAAABs7wAHzOIoAOEBDCABAAAAbe8AB8yiNQDhAQwgAQAAAG7vAAfMwi0A4QEMIAEAAABv7wAHzMJPAOEBHgABAAAAcO8ABsyCLwDhARYEAQAAAHHvAAfM4jcA4QEWBAEAAABy7wAHzIIcAOEBFgQBAAAAc+8AB8zCGgDhARwMAQAAAHTvAAfM4hUA4QEeAAEAAABw7wACzGI4AOEBDCABAAAAcO8ABczC2wDhAQwgAQAAAHfvAAfMIhoA4QEiAAEAAAB47wAGzGI2AOEBDCABAAAAee8AB8wiGgDhARYEAQAAAHrvAAfMQi8A4QEMIAEAAAB77wAHzGIkAOEBDCABAAAAfO8AB8yiPADhAQwgAQAAAH3vAAfMwkMA4QEMIAEAAAB+7wAHzGIkAOEBDCABAAAAf+8AB8xiJADhAQwgAQAAAIDvAAfMYiQA4QEMIAEAAACB7wAHzGIkAOEBDCABAAAAgu8AB8xiNwDhAQwgAQAAAIPvAAfMwjQA4QEMIAEAAACE7wAHzIIcAOEBFgQBAAAAhe8AB8wCOADhAQwgAQAAAIbvAAfMIjQA4QEWBAEAAACH7wAHzIIcAOEBFgQBAAAAiO8AB8xCIADhAQwgAQAAAInvAAfMAiUA4QEWBAEAAACK7wAHzOIzAOEBDCABAAAAi+8AB8yCOwDhAQwgAQAAAIzvAAfMIhoA4QEWBAEAAACN7wAHzGIuAOEBFgQBAAAAju8AB8xiHADhARYEAQAAAI/vAAfMYkAA4QEMIAEAAACQ7wAHzIJDAOEBDCABAAAAke8AB8zCPADhARYEAQAAAJLvAAfMgiAA4QEMIAEAAACT7wAHzKI0AOEBDCABAAAAlO8AB8wCOADhAQwgAQAAAJXvAAfMYhwA4QEWBAEAAACW7wAHzGIuAOEBFgQBAAAAl+8AB8xiNwDhAQwgAQAAAJjvAAfMIhwA4QEMIAEAAACZ7wAHzCIaAOEBFgQBAAAAmu8AB8yiQADhAQwgAQAAAJvvAAfMQh4A4QEMIAEAAACc7wAHzIIsAOEBDCABAAAAne8AB8yCbADhAQwgAQAAAJ7vAAfM4h4A4QEMIAEAAACf7wAHzGI3AOEBDCABAAAAoO8AB8xCZADhAQwgAQAAAKHvAAfM4i4A4QEMIAEAAACi7wAHzIIXAOEBDCABAAAAo+8AB8xiNwDhAQwgAQAAAKTvAAfMQmQA4QEMIAEAAACl7wAHzCIcAOEBDCABAAAApu8AB8yCoQDhAQwgAQAAAKfvAAfMYi4A4QEiBAEAAACo7wAGzIIcAOEBFgQBAAAAqe8AB8yi0gHhAQwgAQAAAKrvAAfMYjYA4QEMIAEAAACr7wAHzMJEAOEBDCABAAAArO8AB8xiJADhAQwgAQAAAK3vAAfMwjwA4QEiAAEAAACu7wAGzGIkAOEBDCABAAAAr+8AB8xiNwDhAQwgAQAAALDvAAfMQi8A4QEMIAEAAACx7wAHzII2AOEBFgQBAAAAsu8AB8yiPADhAQwgAQAAALPvAAfMYhsA4QEMIAEAAAC07wAHzAIiAOEBDCABAAAAte8AB8zC0gHZAQwgAQAAALbvAAfM4h8A4QEMIAEAAAC77wAFzIIuAOEBDCABAAAAue8ABcyiPADhAQwgAQAAALnvAAfMIskA4QEMIAEAAAC67wAHzGIvAOEBDCABAAAAu+8AB83CegHhAQwgAQAAAIjgAEXOYlkA4QEMIAEAAAC97wAHzuKcAOEBDCABAAAAvu8AB84iGgDhARYEAQAAAL/vAAfOYlkA4QEMIAEAAADA7wAHzuKcAOEBDCABAAAAwe8AB86iIwDhAQwgAQAAAMLvAAXOwmIB4QEMIAEAAADC7wAFzqJHAeEBDCABAAAAxO8AB87iewHhAQwgAQAAAMXvAAfO4qEA4QEMIAEAAADG7wAHzoKTAOEBDCABAAAAx+8AB84CmgHZAQwgAQAAAMjvAAfP4mYA5wEYMAEAAADJ7xAFzuJmAOEBGDABAAAAye8AB86iLgDhARYEAQAAAMvvAAfQ4tIB2QEMIAEAAADM7wAH0QLTAdkBDCABAAAAze8AB9Ei0wHhAQwgAQAAAM7vAAfS4kQA4QEMIAEAAADP7wAH0gLYAOEBDCABAAAA0O8AB9LiZgDhAQwgAQAAANHvAAfTopgA4QEMIAEAAADS7wAH1ELTAXICDSABAAAA1e8gBdVi0wF3Ag0gAQAAANXvEAXWgtMBeQINIAEAAADV7wAF18JkAOEBDCABAAAA1u8AB9eiFwDhAZAcAQAAANfvAAbXAkYA4QEMIAEAAADY7wAH1+JCAOEBDCABAAAA2e8AB9fiFQDhARpAAQAAANfvAAXXImUA4QEeQAEAAADX7wAE10IkAeEBDCABAAAA3O8AB9eCdADhAQwgAQAAAN3vAAfXAjQA4QEWBAEAAADe7wAH12IeAOEBDCABAAAA3+8AB9dCagDhAQwgAQAAAODvAAfXYi4A4QEWBAEAAADh7wAH1yI7AOEBDCABAAAA4u8AB9diLgDhARYEAQAAAOPvAAfXghcA4QEiAAEAAADk7wAG1yIaAOEBIgABAAAA5e8ABtfiIADhAQwgAQAAAObvAAfXgiwA4QEMIAEAAADo7wAF16I8AOEBDCABAAAA6O8AB9ciNADhAQwgAQAAAOnvAAfX4rEA4QEMIAEAAADq7wAH12JuAeEBDCABAAAA6+8ABdcCXgDhAQwgAQAAAOvvAAXXQiQA4QEiAAEAAADt7wAG10JpAOEBDCABAAAA7u8AB9cCGQDhAQIkAQAAAO/vAAfX4igA4QEiAAEAAADw7wAG16KIAOEBDCABAAAA8e8AB9diNwDhARYEAQAAAPLvAAfXYi4A4QEWBAEAAADz7wAH14JIAOEBDCABAAAA9O8AB9fiRADhAQwgAQAAAPXvAAfXYi4A4QEWBAEAAAD27wAH16I8AOEBDCABAAAA9+8AB9fCTgDhAQwgAQAAAPjvAAfXghcA4QEMIAEAAAD57wAH12JWAOEBIgABAAAA+u8ABteCLwDhARYEAQAAAPvvAAfXIkUA4QEuAAEAAAD87wAG1wJAAOEBGkABAAAA/O8ABdcCWADhARpAAQAAAPzvAAXXQlEA4QEMIAEAAAD/7wAH12L2AOEBFgQBAAAAAPAAB9eCFwDhAS4AAQAAAAHwAAbXAhoA4QEaQAEAAAAB8AAF1+IVAOEBHkABAAAA/O8AAtdiGgDhAQwgAQAAAATwAAfXot4A4QEeAAEAAAAF8AAG1yKEAOEBDCABAAAABvAAB9fiFQDhARpAAQAAAAXwAAXXosMA4QEaQAEAAAAF8AAF16LTAeEBDCABAAAACfAAB9ei7QDhAQwgAQAAAArwAAfXwlYA4QEWBAEAAAAN8AAF18JKAOEBFgQBAAAADfAABddiogDhARYEAQAAAA3wAAfXYjoA4QEMIAEAAAAO8AAH1wKWAOEBDCABAAAAD/AAB9cCVAHhAQwgAQAAABDwAAfXYlEA4QEeAAEAAAAR8AAG1wI6AOEBFgQBAAAAEvAAB9fCIADhARwMAQAAABPwAAfXYhsA4QEMIAEAAAAU8AAH1+JVAOEBHiABAAAAFfAABteCTADhAQwgAQAAABbwAAfXwpoA4QEaIAEAAAAV8AAF18JWAOEBFgQBAAAAG/AABdfCSgDhARYEAQAAABvwAAXX4hUA4QEaQAEAAAAV8AAF1+LOAOEBFgQBAAAAG/AABdfCXADhAQwgAQAAABzwAAXXwh0A4QEMIAEAAAAc8AAF1wIZAOEBDCABAAAAHvAAB9fiGADhAQwgAQAAAB7wAAXXgjEA4QEgQAEAAAAg8AAC18JWAOEBDCABAAAAIfAAB9ciIADhARpAAQAAACPwAAXXwjUA4QEaQAEAAAAj8AAH1+IVAOEBHkABAAAAI/AAAteCIQDhARYEAQAAACXwAAfXoiQA4QEcDAEAAAAm8AAH1yIgAOEBDCABAAAAKPAABddCIADhASIgAQAAACjwAAbXQqUA4QEMIAEAAAAp8AAH14JlAOEBDCABAAAAKfAABddCGQDhAQwgAQAAACvwAAfXghkA4QEMIAEAAAAs8AAH18JzAOEBDCABAAAALfAAB9diIgDhAQwgAQAAAC7wAAfXIlAA4QEMIAEAAAAv8AAH1+K7AOEBDCABAAAAMPAAB9cCeQDhAQwgAQAAAEjwAAXXwh4A4QEWBAEAAAAy8AAH1yIaAOEBDCABAAAAM/AAB9dCIADhAQwgAQAAADTwAAfXwhkA4QEWBAEAAAA18AAH1wIZAOEBDCABAAAANvAAB9eCMQDhARpAAQAAADrwAAXXwlYA4QEMIAEAAAA48AAH1yIgAOEBGkABAAAAOvAABdfCNQDhARpAAQAAADrwAAfX4hUA4QEaQAEAAAA68AAF1wIZAOEBDCABAAAAPPAAB9eiJwDhARpAAQAAAD3wAAfXQisA4QEaQAEAAAA98AAF14IhAOEBFgQBAAAAP/AAB9eiJADhARwMAQAAAEDwAAfXIiAA4QEMIAEAAABC8AAF10IgAOEBDCABAAAAQvAAB9cCGQDhAQwgAQAAAEPwAAfXgjAA4QEaQAEAAABE8AAH16IwAOEBFgQBAAAARfAAB9fCMADhARpAAQAAAETwAAXXIlAA4QEMIAEAAABH8AAH1yI2AOEBDCABAAAASPAAB9diJADhAR4AAQAAAEnwAAbXohgA4QEWBAEAAABK8AAH1yI3AOEBGkABAAAASfAABddCFgDhAQwgAQAAAEzwAAfXIoIA4QEeQAEAAABN8AAG1wJAAOEBGkABAAAATfAABddCKADhAQwgAQAAAE/wAAfX4hUA4QEaQAEAAABN8AAF1wJAAOEBGkABAAAATvAARddCKADhAQwgAQAAAFLwAAfX4hUA4QEaQAEAAABQ8ABF10J0AOEBGkABAAAATfAABddCJwDhARYEAQAAAFXwAAfXYhsA4QEMIAEAAABW8AAH14IxAOEBGkABAAAAWvAABdfCVgDhAQwgAQAAAFjwAAfXIiAA4QEeAAEAAABa8AAE18KmAOEBHiABAAAAWvAABtfiFQDhAR4AAQAAAFrwAALXwkIA4QEMIAEAAABc8AAH10J/AOEBDCABAAAAXfAAB9diSwDhASIAAQAAAF7wAAbX4h4A4QEeIMEBAABf8AAG16IXAOEBHiABAAAAYPAABtfiFQDhARpAAQAAAGDwAAXXImUA4QEMIAEAAABg8AAF10JOAOEBDCABAAAAY/AAB9fCFwDhAQwgAQAAAGTwAAfX4hUA4QEeAAEAAABf8AAC1wJLAOEBDCABAAAAZvAAB9ciegDhATAEAQAAAGfwAAbX4h4A4QEMIAEAAABo8AAH1yKSAOEBDCABAAAAafAAB9cCKgDhAQwgAQAAAF/wAAfXot4A4QEMIAEAAABr8AAH14IWAOEBDCABAAAAa/AABddiJADhAQwgAQAAAG3wAAfXIqcB4QEMIAEAAABu8AAH12JUAOEBDCABAAAAb/AAB9ciGgDhAQwgAQAAAHDwAAfXQjgA4QEMIAEAAABx8AAH1wJYAOEBDCABAAAAcfAABdfi/wDhAQwgAQAAAHPwAAfX4kwB4QEMIAEAAAB08AAH12I3AOEBDCABAAAAdfAAB9fCNADhARYEAQAAAHbwAAfXwnwA4QEMIAEAAAB38AAH10IZAOEBGkABAAAAePAAB9diGQDhARpAAQAAAHjwAAXXwiMA4QEaQAEAAAB48AAF1+IVAOEBGkABAAAAePAABdciEgHhARYEAQAAAHzwAAfXQiQAIQIWBAEAAAB98AAF18IeACECFgQBAAAAfvAABdeCNAAhAhYEAQAAAH/wAAXXIn0A4QEMIAEAAACA8AAH14IZAOEBDCABAAAAgfAAB9eiDQHhAQwgAQAAAILwAAfXYiIA4QEMIAEAAACD8AAH16IaAOEBDCABAAAAhPAAB9cikgDhAQwgAQAAAIXwAAfXYiIA4QEWBAEAAACG8AAH14IXAOEBFgQBAAAAh/AAB9cCGQDhAQwgAQAAAIjwAAfXQiAA4QEMIAEAAACJ8AAH10IqAOEBDCABAAAAivAAB9eCUADhAQwgAQAAAIvwAAfXgikA4QEeAAEAAACM8AAG1+IVAOEBIAABAAAAjPAAAtdiMQDhARwMAQAAAI7wAAfXAioA4QEaQAEAAACM8AAF1wLDAeEBDCABAAAAkPAAB9fiOgDhAQwgAQAAAJHwAAfXwlYA4QEWBAEAAACW8AAF18JKAOEBFgQBAAAAlvAABdfiVgDhARwMAQAAAJTwAAfXYhsA4QEMIAEAAACV8AAH14KBAOEBFgQBAAAAlvAAB9fCYQDhARYEAQAAAJfwAAfXgnwA4QEiAAEAAACY8AAG12KkAOEBHiABAAAAmfAABteiIwDhAQwgAQAAAJrwAAfX4hUA4QEaQAEAAACZ8AAF18JWAOEBFgQBAAAAn/AABdfCSgDhARYEAQAAAJ/wAAXXIlcA4QEWBAEAAACe8AAH14JcAOEBFgQBAAAAn/AAB9fCHADhAQwgAQAAAJnwAAfXImsA4QEuAAEAAACh8AAG1yJ6AOEBHAwBAAAAovAAB9diGwDhAQwgAQAAAKPwAAfX4mkA4QEaQAEAAACk8AAH1wJAAOEBFgQBAAAApfAAB9fiFQDhAR4AAQAAAKTwAALX4oEA4QEaQAEAAACk8AAF1wKEAOEBDCABAAAAqPAAB9cioADhARpAAQAAAKnwAAfXYhkA4QEWBAEAAACq8AAH18IjAOEBGkABAAAAqfAABdfiFQDhAR4AAQAAAKnwAALXYhsA4QEWBAEAAACt8AAH16JUAOEBDCABAAAArvAAB9eCMQDhARpAAQAAALbwAAXXwlYA4QEMIAEAAACw8AAH1yIgAOEBHiABAAAAtvAABNcikgDhAQwgAQAAALLwAAfXYhwA4QEWBAEAAACz8AAH16IqAOEBHAwBAAAAtPAAB9diGwDhAQwgAQAAALXwAAfXAkYA4QEeAAEAAAC28AAG1+IVAOEBGkABAAAAtvAABdciXgDhAQwgAQAAALjwAAfXwkoA4QEeIAEAAAC58AAG1+IeAOEBDCABAAAAuvAAB9fiFQDhARpAAQAAALnwAAXXAhkA4QEeIAEAAAC88AAG18IZAOEBFgQBAAAAvfAAB9eCIgDhARwMAQAAAL7wAAfXohgA4QEaQAEAAAC88AAF12IqAOEBDCABAAAAwPAAB9fiFQDhAS5AAQAAALzwAALXYjEA4QEcDAEAAADC8AAH12I6AOEBDCABAAAAw/AAB9cCIQDhAQwgAQAAAMPwAAXX4hgA4QEeIAEAAAC88AAE1yKhAOEBGkABAAAAxvAAB9fikgHhAQwgAQAAAMfwAAfXwtMB4QEeAAEAAADI8AAG10IzAOEBHiABAAAAyPAABNfiFQDhARpAAQAAAMjwAAXX4pIB4QEMIAEAAADL8AAF1wJYAOEBDCABAAAAy/AABdfi/QDhAQwgAQAAAM3wAAfXwhkA4QEeAAEAAADO8AAG10IoAOEBDCABAAAAz/AAB9fiFQDhARpAAQAAAM7wAAXXQlcA4QEwBAEAAADR8AAG10JYAOEBGkABAAAA0vAAB9diKgDhAQwgAQAAANPwAAfX4hUA4QEeAAEAAADS8AAC18IcAOEBGkABAAAA0vAABdeCTADhASwEAQAAANHwAALXwkoA4QEsBAEAAADR8AAC16LJAOEBDCABAAAA2PAAB9fCdQDhAQwgAQAAANnwAAfXAr4A4QEcDAEAAADa8AAH12IbAOEBDCABAAAA2/AAB9cCbgDhAQwgAQAAANzwAAfXQpEA4QEiAAEAAADd8AAG14IpAOEBIgABAAAA3vAABtcCBAHhAR4AAQAAAN/wAAbXYlYA4QEaQAEAAADf8AAF1+IVAOEBGkABAAAA3/AABdcCwgDhAQwgAQAAAOLwAAfXAjEB4QEMIAEAAADj8AAH10IgAOEBDCABAAAA5PAAB9fi0wHhAQwgAQAAAOXwAAfXIjoA4QEaQAEAAADm8AAH1yIeAOEBDCABAAAA5/AAB9dCHgDhAQwgAQAAAOjwAAfXwhgA4QEWBAEAAADp8AAH12IoAOEBGkABAAAA5vAABdeiGgHhAUgEAQAAAOvwAAbX4hkA4QEaQAEAAADr8AAF14JYAOEBGkABAAAA7fAAB9fCHADhARpAAQAAAO3wAAXX4hUA4QEaQAEAAADr8AAF1+IhAOEBDCABAAAA8PAAB9diIADhAQwgAQAAAPHwAAfXwiAA4QEcDAEAAADy8AAH12IbAOEBDCABAAAA8/AAB9fCZADhAQwgAQAAAPTwAAfX4iQA4QEMIAEAAAD18AAH10KjAOEBDCABAAAA9vAAB9diegDhAQwgAQAAAPfwAAfXgiQA4QEMIAEAAAD48AAH1wKUAOEBHiABAAAA+fAABtfiGQDhARYEAQAAAPrwAAfX4hUA4QEeAAEAAAD58AAC10JGAOEBHgABAAAA+fAABNeiXgDhAQwgAQAAAAvxAEfXYiQA4QEMIAEAAAD+8AAH1yIeAOEBDCABAAAA//AAB9diIgDhASIAAQAAAADxAAbXohoA4QEiAAEAAAAB8QAG1wLpAOEBDCABAAAAAvEAB9diJADhAQwgAQAAAAPxAAfXYiQA4QEMIAEAAAAE8QAH1yIYAOEBDCABAAAABfEAB9cCUgDhAQwgAQAAAAbxAAfXghcA4QEWBAEAAAAH8QAH14IsAOEBDCABAAAACfEABdeiPADhAQwgAQAAAAnxAAfXwsIB4QEMIAEAAAAK8QAH1wI6AOEBDCABAAAAC/EAB9fCHgDhAQwgAQAAAAzxAAfXIh4A4QEMIAEAAAAN8QAH16IaAOEBFgQBAAAADvEAB9cipwHhAQwgAQAAAA/xAAfXYlQA4QEMIAEAAAAQ8QAH1wIZAOEBDCABAAAAEfEAB9fiKADhASIAAQAAABLxAAbXoogA4QEMIAEAAAAT8QAH1yJFAOEBLgwBAAAAFPEABtdCUQDhAQwgAQAAABXxAAfX4hUA4QEMIAEAAAAW8QAH10IxAeEBHgABAAAAF/EABtdiVgDhARpAAQAAABfxAAXX4hUA4QEaQAEAAAAX8QAF1+JrAOEBGkABAAAAF/EABdcC1AHhAQwgAQAAABvxAAfXQjcA4QEMIAEAAAAc8QAH12I6AOEBDCABAAAAHfEAB9fC8gDhAR4AAQAAAB7xAAbXYhsA4QEMIAEAAAAf8QAH16KXAOEBFgQBAAAAIPEAB9eCVwDhAQwgAQAAACHxAAfX4hUA4QEMIAEAAAAi8QAH1+IhAOEBDCABAAAAI/EAB9eCOgDhARpAAQAAACTxAAfXIjEA4QEMIAEAAAAl8QAH12I3AOEBHAwBAAAAJvEAF9fCMgDhASBAAQAAACTxAALXIh4A4QEMIAEAAAAo8QAH1+IZAOEBGkABAAAAJPEABdfiHgDhAQwgAQAAACrxAAfX4hUA4QEaQAEAAAAk8QAF14IpAOEBHgABAAAALPEABtfiFQDhAR4AAQAAACzxAALXAioA4QEaIAEAAAAs8QAF1yIaAOEBFgQBAAAAL/EAB9fCGgDhARwMAQAAADDxAAfX4iEA4QEMIAEAAAAx8QAH1yLUAeEBHiABAAAAMvEABtfiHgDhAQwgAQAAADPxAAfXojAA4QEaQAEAAAAy8QAF16JGAOEBDCABAAAANfEAB9fCMADhAR4AAQAAADLxAATXghwA4QEWBAEAAAA38QAH18IaAOEBHAwBAAAAOPEAB9fiFQDhARpAAQAAADLxAAXXgh4A4QEMIAEAAAA68QAH1yJCAOEBDCABAAAAO/EAB9diRQDhAQwgAQAAADzxAAfXQrQA4QEWBAEAAAA98QAH1yJaAOEBDCABAAAAPvEAB9dCvADhAQwgAQAAAD/xAAfXQiAA4QEMIAEAAABA8QAH18IZAOEBFgQBAAAAQfEAB9eC6wDhAQwgAQAAAD/xAAXXAhkA4QEMIAEAAABD8QAH1+IYAOEBDCABAAAAQ/EABdciLwDhAR4gAQAAAEXxAAbX4hkA4QEaQAEAAABF8QAF1+IeAOEBDCABAAAAR/EAB9cCGgDhAR4gAQAAAEXxAATXQh0A4QEWBAEAAABJ8QAH18IYAOEBDCABAAAASvEAB9fiFQDhARpAAQAAAEXxAAXX4mAA4QEMIAEAAABM8QAH1wJWAOEBDCABAAAATfEAB9jinQDNARcEAQAAAE7xAAXZQtQBygEZMAEAAABQ8RAF2KJGAc0BGTABAAAAUPEABdqi5wDhAQwgAQAAAFHxAAfaonYA4QEMIAEAAABR8QAF2oIeAOEBHgABAAAAU/EABtriFQDhARpAAQAAAFPxAAXaYtQB4QEMIAEAAABV8QAH2oIXAOEBDCABAAAAVvEAB9piLgDhARYEAQAAAFfxAAfaghwA4QEWBAEAAABY8QAH2mLiAOEBDCABAAAAVfEABdoiagDhAR4gAQAAAFrxAAbaIroA4QEMIAEAAABb8QAH2qIjAOEBDCABAAAAXPEAB9rCIwDhAQwgAQAAAFzxAAXawjIA4QEMIAEAAABa8QAF2qJSAOEBDCABAAAAX/EAB9oiRgDhAQwgAQAAAGDxAAfawhkA4QEMIAEAAABh8QAH2kIdAOEBFgQBAAAAYvEAB9qCuQDhARYEAQAAAGPxAAfaQiAA4QEMIAEAAABk8QAH2sIoAOEBHAwBAAAAZfEAB9piGwDhAQwgAQAAAGbxAAfaIiAA4QEMIAEAAABn8QAH2sJOAOEBDCABAAAAaPEAB9rCMwDhAR4gAQAAAGnxAAbagiUA4QEMIAEAAABq8QAH2gIjAOEBDCABAAAAa/EAB9piMwDhAQwgAQAAAGzxAAfaQjoA4QEaQAEAAABp8QAF2mIzAOEBDCABAAAAbvEAB9riLADhAQwgAQAAAG/xAAfawjQA4QEWBAEAAABw8QAH2qJAAOEBDCABAAAAcfEAB9piKgDhAQwgAQAAAHLxAAfaYigA4QEeIAEAAABp8QAE2qIXAOEBDCABAAAAdPEAB9qiVwDhAQwgAQAAAHXxAAfaYt0A4QEMIAEAAAB28QAH2uIfAOEBDCABAAAAp/0ABdqCgADhAQwgAQAAAHjxAAfaIhwA4QEMIAEAAAB58QAH2iIaAOEBFgQBAAAAevEAB9pCGgDhAQwgAQAAAHvxAAfaYrcB4QEMIAEAAAB88QAH2qIaAOEBFgQBAAAAffEAB9riIQDhAQwgAQAAAH7xAAfaYiAA4QEMIAEAAAB/8QAH2sIaAOEBHAwBAAAAgPEAB9rCVgDhARYEAQAAAJjxAAXawkoA4QEWBAEAAACY8QAF2uJWAOEBHAwBAAAAg/EAB9piGwDhAQwgAQAAAITxAAfa4hUA4QEeQAEAAABp8QAC2uIhAOEBDCABAAAAhvEAB9piIADhASIEAQAAAIfxAAbaoj0A4QEMIAEAAACH8QAF2qIXAOEBHgABAAAAifEABtoChgDhARpAAQAAAInxAAXagkwA4QEMIAEAAACL8QAH2qKqAOEBHiABAAAAjPEABtoiawDhAR4AAQAAAI3xAAba4hUA4QEMIAEAAACO8QAH2mIbAOEBDCABAAAAj/EAB9qCfgDhARYEAQAAAJDxAAfa4hUA4QEgQAEAAACJ8QAC2iJlAOEBDCABAAAAifEABdrCcgDhAQwgAQAAAJPxAAfaQjIA4QEMIAEAAACU8QAH2sJOAOEBDCABAAAAlfEAB9pCiwDhAQwgAQAAAJbxAAfawgIA4QEMIAEAAACX8QAH2iIbAOEBFgQBAAAAmPEAB9oCHwDZAQwgAQAAAJnxAAfaot8A4QEMIAEAAACa8QAH2uI/AOEBHgABAAAAm/EABtoCQADhARYEAQAAAJzxAAfaohoA4QEiAAEAAACd8QAG2sIaAOEBHAwBAAAAnvEAB9pCHQDhAQwgAQAAAJ/xAAfaIh4A4QEMIAEAAACg8QAH2kIeAOEBDCABAAAAofEAB9piHgDhARYEAQAAAKLxAAfawiAA4QEcDAEAAACj8QAH2oIXAOEBIAABAAAApPEABtoCGgDhARpAAQAAAKTxAAXa4hUA4QEgAAEAAACk8QAC2gIZAOEBDCABAAAAp/EAB9piGgDhAQwgAQAAAKjxAAfaghwA4QEiBAEAAACp8QAG2qInAOEBGkABAAAAr/EARdqCJwDhARpAAQAAALDxAEXaQisA4QEaQAEAAACx8QBF2uIVAOEBGkABAAAAsvEARdriIQDhAQwgAQAAAK7xAAfagjAA4QEaQAEAAACv8QAH2qIwAOEBGkABAAAAr/EABdrCMADhARpAAQAAAK/xAAXa4hUA4QEaQAEAAACv8QAF2sIaAOEBHAwBAAAAs/EAB9qidQDhAQwgAQAAAKnxAAXagjwB4QEMIAEAAAC18QAH2mIoAOEBDCABAAAA7/EABdoifQDhAQwgAQAAALfxAAfaQhoA4QEMIAEAAAC48QAH2uIlAeEBDCABAAAA7vEABdrilQDhAS4gAQAAALrxAAbagiEA4QEWBAEAAAC78QAH2qIkAOEBHAwBAAAAvPEAB9pCIADhAQwgAQAAAL3xAAfaYiAA4QEMIAEAAAC+8QAH2kJJAOEBDCABAAAAv/EAB9qCyADhAQwgAQAAAMDxAAfaYiAA4QEMIAEAAADB8QAH2gI4AOEBDCABAAAAwvEAB9piJADhAQwgAQAAAMPxAAfaAhkA4QEMIAEAAADE8QAH2sJIAOEBDCABAAAAxfEAB9piQADhAQwgAQAAAMbxAAfagkMA4QEMIAEAAADH8QAH2sI8AOEBFgQBAAAAyPEAB9qCIADhAQwgAQAAAMnxAAfaApEA4QEMIAEAAADK8QAH2uIVAOEBGkABAAAAuvEABdpCZADhAQwgAQAAAMzxAAfaQh0A4QEMIAEAAADN8QAH2oIXAOEBGkABAAAAzvEAB9oCGQDhAQwgAQAAAM/xAAfaghwA4QEWBAEAAADQ8QAH2mIgAOEBDCABAAAA0fEAB9pCSQDhAQwgAQAAANLxAAfawhgA4QEWBAEAAADT8QAH2iIcAOEBDCABAAAA1PEAB9riHgDhAQwgAQAAANXxAAfa4h4A4QEMIAEAAADW8QAH2kIgAOEBDCABAAAA1/EAB9oidADhARYEAQAAANjxAAfaghwA4QEMIAEAAADZ8QAH2iIYAOEBDCABAAAA2vEAB9piLgDhARYEAQAAANvxAAfagogB4QEMIAEAAADc8QAH2mJAAOEBDCABAAAA3fEAB9qCIADhAQwgAQAAAN7xAAfaAhkA4QEMIAEAAADf8QAH2uJBAOEBHiABAAAAuvEABNpiZADhAQwgAQAAAOHxAAfagiEA4QEWBAEAAADi8QAH2kIgAOEBDCABAAAA4/EAB9piQADhAQwgAQAAAOTxAAfagiAA4QEMIAEAAADl8QAH2iIYAOEBDCABAAAA5vEAB9piLgDhARYEAQAAAOfxAAfaIjsA4QEMIAEAAADo8QAH2mIgAOEBDCABAAAA6fEAB9oiPQDhAQwgAQAAAOrxAAfaojwA4QEMIAEAAADr8QAH2qIjAOEBDCABAAAA7PEAB9qiPADhAQwgAQAAAO3xAAfaYh0A4QEMIAEAAADu8QAH2kKCAOEBDCABAAAA7/EAB9pCJwDhAQwgAQAAAPDxAAfaghgA4QEMIAEAAADx8QAH2gI1AOEBDCABAAAA8vEABdrCWQDhAQwgAQAAAPLxAAXaIp0A4QEMIAEAAAD08QAH24LUATICGDABAAAA9fEQBdrCEgHZAQwgAQAAAPbxAAfawjQA4QEMIAEAAAD38QAH2qIjAOEBFgQBAAAA+PEAB9piaQDhARwMAQAAAPnxAAfaAqIA4QEeAAEAAAD68QAG2gIYAOEBHgABAAAA+/EABtriHgDhAR4AAQAAAPzxAAbaYh8A4QEWBAEAAAD98QAH2uIVAOEBGkABAAAA+/EABdrCQgDhAQwgAQAAAP/xAAfawkIA4QEMIAEAAAAA8gAH2iKlANkBHiABAAAAAfIABtpiwwDhAQwgAQAAAALyAAfaIqIA4QEMIAEAAAAD8gAH2uI6AOEBHiABAAAABPIABtqiJgDhARpAAQAAAAHyAAXaAoEA4QEMIAEAAAAG8gAH2qKKAOEBFgQBAAAAB/IABdriJgDhAR4gAQAAAAHyAADaoiYA4QEgBAEAAAAB8gAC2sIoAOEBHAwBAAAACvIAB9piGwDhAQwgAQAAAAvyAAfa4hUA4QEaQAEAAAAB8gAF2sJ9AOEBDCABAAAADfIAB9riFQDhASBAAQAAAAHyAALa4i0A4QEMIAEAAAAP8gAH2qJTAeEBDCABAAAAEPIAB9qCJQDhAQwgAQAAABHyAAfagkwA4QEMIAEAAAAS8gAH2qKiAOEBHgABAAAAAfIABNriHgDhAQwgAQAAABTyAAfaotQB4QEMIAEAAAAV8gAH2sJ1AOEBDCABAAAAFvIAB9qicgDhAQwgAQAAABfyAAfaolIA4QEMIAEAAAAY8gAH2oIkAOEBDCABAAAAGfIAB9riTADhAR4gAQAAABryAAbaQiUA4QEaQAEAAAAa8gAF2iImAOEBDCABAAAAHPIAB9riFQDhASAgAQAAABryAALaYjgA4QEeAAEAAAAa8gAE2mJRAOEBHiABAAAAH/IABtqieQDhAQwgAQAAACDyAAfags0A4QEMIAEAAAAh8gAH2iJAAOEBDCABAAAAIvIAB9riFQDhAQwgAQAAACPyAAfaIqcA4QEMIAEAAAAj8gAF2gJGAOEBDCABAAAAJfIAB9oiJwDhAR4gAQAAACbyAAbaIiYA4QEMIAEAAAAn8gAH2uIVAOEBHgABAAAAJvIAAtrCVADhAR4gAQAAAB/yAAbaolcA4QEMIAEAAAAq8gAH2sJCAOEBDCABAAAAK/IAB9oiYwDhAQwgAQAAACryAAXaAiMA4QEMIAEAAAAt8gAH2sIYAOEBHgABAAAALvIABtpiGwDhARYEAQAAAC/yAAfaQioA4QEeIAEAAAAw8gAG2gLNAOEBDCABAAAAMfIAB9qiTADhAQwgAQAAADLyAAfaIlEA4QEMIAEAAAAz8gAH2qIYAOEBGkABAAAAMPIABdrCAgDhAQwgAQAAADXyAAfaYlwA4QEMIAEAAAA28gAH2sJKAOEBDCABAAAAN/IAB9rCVgDhARYEAQAAAEPyAAfawkoA4QEWBAEAAABD8gAF2mIbAOEBDCABAAAAOvIAB9riFQDhASAAAQAAADDyAALaYhsA4QEWBAEAAAA88gAH2oJMAOEBDCABAAAAPfIAB9riFQDhAQwgAQAAAD7yAAfaAl0A4QEWBAEAAAA/8gAH2oIqAOEBHiABAAAAMPIABNpCOQDhAQwgAQAAAEHyAAfa4h4A4QEMIAEAAABC8gAH2kLBAOEBFgQBAAAAQ/IAB9rCGQDhARYEAQAAAETyAAfaoicA4QEeQAEAAABF8gAG2sIZAOEBFgQBAAAARvIAB9qCJwDhASBAAQAAAEXyAALaIisA4QEMIAEAAABI8gAH2kIrAOEBHkABAAAARfIABNrCPQDhAQwgAQAAAEryAAfa4hUA4QEuQAEAAABF8gAC2qK4AOEBDCABAAAATPIAB9rC1AHhAQwgAQAAAE3yAAfa4tQB2QEMIAEAAABO8gAH2iJaAeEBDCABAAAAT/IAB9rCggHhAQwgAQAAAFDyAAfawkwA4QEMIAEAAABR8gAH2uJVAOEBHiABAAAAUvIABtoChgDhARpAAQAAAFLyAAXa4mkA4QEMIAEAAABU8gAH2sKaAOEBHgABAAAAUvIABNriFQDhARpAAQAAAFLyAAXaoiMA4QEWBAEAAABX8gAH2mJpAOEBHAwBAAAAWPIAB9piGwDhAQwgAQAAAFnyAAfawlwA4QEMIAEAAABa8gAH2gLVAeEBDCABAAAAW/IAB9riLwDhASwAAQAAAFzyAAbagjEA4QEaQAEAAABf8gAF2iIgAOEBHiABAAAAX/IABNrCGgDhAR4gAQAAAF/yAAba4hUA4QEuQAEAAABf8gAC2yLVATICDCABAAAAY/IgBdxC1QEXAhgwAQAAAGPyEAXawkgA2QEeAAEAAABj8gAG2oIXAOEBFgQBAAAAZPIAB9rCGQDhAR4AAQAAAGXyAAbaAkAA4QEaQAEAAABl8gAF2kIoAOEBDCABAAAAZ/IAB9oCWADhAR4AAQAAAGXyAATa4hUA4QEgAAEAAABl8gAC2mIxAOEBHAwBAAAAavIAB9piSwDhAQwgAQAAAGvyAAfaYhwA4QEWBAEAAABs8gAH2mJLAOEBDCABAAAAbfIAB9rilwHhAQwgAQAAAG7yAAfawlgA4QEMIAEAAABv8gAH2gJ5AOEBDCABAAAAcfIABdoiNgDhAQwgAQAAAHHyAAXaol4A4QEMIAEAAABy8gAH2kIrAOEBDCABAAAAc/IAB9pC3wDhAQwgAQAAAJfyAAXaQngA4QEMIAEAAAB18gAH2gIZAOEBDCABAAAAdvIAB9riGADhAQwgAQAAAHbyAAXagjEA4QEaQAEAAAB68gAF2iIgAOEBGkABAAAAevIABdrCNQDhARpAAQAAAHryAAfa4hUA4QEaQAEAAAB68gAF2kKDAOEBDCABAAAAfPIAB9qC0wDhAQwgAQAAAH3yAAfaQjEA4QEaQAEAAABj8gAF2kJKAOEBDCABAAAAf/IAB9riFQDhARpAAQAAAGPyAAXaAooA4QEMIAEAAACB8gAH2sKlAOEBDCABAAAAgvIAB9rCNADhARYEAQAAAIPyAAfaYhwA4QEWBAEAAACE8gAH2kIYAOEBHkABAAAAhfIABtriOgDhAR4AAQAAAIbyAAbaYhwA4QEWBAEAAACH8gAH2uImAOEBGkABAAAAhvIABdriFQDhARpAAQAAAIbyAAXaYh4A4QEWBAEAAACK8gAH2sIgAOEBHAwBAAAAi/IAB9pCfwDhAQwgAQAAAIzyAAfawiQA4QEMIAEAAACM8gAF2uIVAOEBGkABAAAAhfIABdoCGQDhAQwgAQAAAI/yAAfagtYA4QEeIAEAAACF8gAE2oKIAOEBDCABAAAAkfIAB9wiSQD7ARgwAQAAAJPyEAXaIkkA4QEeAAEAAABj8gAE2kIrAOEBDCABAAAAlPIAB9oCdgDhARYEAQAAAJXyAAfa4hgA4QEMIAEAAACW8gAH2uJ1AOEBDCABAAAAl/IAB9riYADZARpAAQAAAJoBAQXaIqAA4QEeIAEAAACZ8gAG2oJDAOEBDCABAAAAmvIAB9oCKgDhAQwgAQAAAJryAAXawiMA4QEMIAEAAACZ8gAF2uIVAOEBHgABAAAAmfIAAtrCNwDhARYEAQAAAJ7yAAfaQiAA4QEMIAEAAACf8gAH2mIbAOEBDCABAAAAoPIAB9oiFgHhAQwgAQAAAKHyAAfaYhwA4QEWBAEAAACi8gAH2qJtAOEBDCABAAAAofIAR9rCVgDhARYEAQAAALPyAAXawkoA4QEWBAEAAACz8gAF2qLKAOEBFgQBAAAApvIAB9oCGQDhAQwgAQAAAKfyAAfaoicA4QEaQAEAAACt8gBH2oInAOEBFgQBAAAArvIAR9pCKwDhARpAAQAAAK/yAEXa4hUA4QEaQAEAAACw8gBF2gIZAOEBDCABAAAArPIAB9qCMADhARpAAQAAAK3yAAfaojAA4QEWBAEAAACu8gAH2sIwAOEBGkABAAAArfIABdriFQDhARpAAQAAAK3yAAXaotoA4QEcDAEAAACx8gAH2mIbAOEBDCABAAAAsvIAB9qCpgDhARYEAQAAALPyAAfagl8A4QEMIAEAAAC08gAH2sJzAOEBGkABAAAA2/4ABdpiiwDhAR4gAQAAALbyAAbaoiYA4QEaQAEAAAC28gAF2iImAOEBDCABAAAAuPIAB9oCbgDhAQwgAQAAALnyAAfawiYA4QEMIAEAAAC68gAH2uImAOEBHiABAAAAtvIABNrCVgDhARYEAQAAAMHyAAXawkoA4QEWBAEAAADB8gAF2uIVAOEBGkABAAAAtvIAB9rCTgDhAQwgAQAAAL/yAAfaQvwA4QEMIAEAAADA8gAH2oIbAeEBFgQBAAAAwfIAB9pCSwDhAQwgAQAAAMLyAAfaojYA4QEMIAEAAADD8gAH2mIkAOEBDCABAAAAxPIAB9qifQDhAS5AAQAAAMXyAAbaAoYA4QEgQAEAAADF8gAC2oJMAOEBDCABAAAAx/IAB9riFQDhAS4EAQAAAMXyAALaIqcA4QEMIAEAAADI8gAF2gJ2AOEBGkABAAAAyvIAB9oCQADhARpAAQAAAMryAAXaAlgA4QEaQAEAAADK8gAF2uIVAOEBGkABAAAAyvIABdpiGwDhAQwgAQAAAM7yAAfagqcA4QEeIAEAAADF8gAE2qIXAOEBGkABAAAA0PIAB9oChgDhARYEAQAAANHyAAfa4hUA4QEeAAEAAADQ8gAC2iJlAOEBGkABAAAA0PIABdpCtwDhAR4gAQAAANTyAAbaQjEA4QEWBAEAAADV8gAH2mIeAOEBHgABAAAA1vIABtriHgDhAQwgAQAAANfyAAfaAioA4QEMIAEAAADX8gAF2uIVAOEBHgABAAAA1vIAAtoCMADhAR4AAQAAANbyAATaAjUA4QEMIAEAAADb8gAH2sJZAOEBDCABAAAA2/IABdoCWADhAQwgAQAAAN3yAAfawmcA4QEMIAEAAADf8gAF2uI0AOEBDCABAAAA3/IAB9oCygDZAR4gAQAAAODyAAbaYhwA4QEWBAEAAADh8gAH2qIqAOEBHAwBAAAA4vIAB9piGwDhAQwgAQAAAOPyAAfaQiAA4QEMIAEAAADk8gAH2uJPAOEBHiABAAAA5fIABtpiVgDhASBAAQAAAODyAALagn8A4QEMIAEAAADn8gAH2qJSAOEBDCABAAAA6PIAB9oCAAHhAQwgAQAAAOryAAXaQnIA4QEMIAEAAADq8gAH2uIlAOEBDCABAAAA6/IAB9rCHwDhAQwgAQAAAOzyAAXa4h8A4QEMIAEAAADs8gAF2gJyAOEBIgQBAAAA7vIABtpCIADhAQwgAQAAAO/yAAfawigA4QEcDAEAAADw8gAH2mIbAOEBDCABAAAA8fIAB9piOADhAQwgAQAAAO7yAAXawlYA4QEMIAEAAADz8gAH2mIkAOEBDCABAAAA9PIAB9riFQDhARpAAQAAAODyAAXaYiAA4QEMIAEAAAD28gAH2mJWAOEBGkABAAAA4PIABdpCMAHhAQwgAQAAAPjyAAfaQuYA4QEeAAEAAAD58gAG2gJAAOEBGkABAAAA+fIABdpCKADhAQwgAQAAAPvyAAfa4hUA4QEaQAEAAAD58gAF2kJ0AOEBHgABAAAA+fIABNqCfwDhAQwgAQAAAP7yAAfaAioA4QEMIAEAAAD+8gAF2uIVAOEBGkABAAAA4PIABdqCJADhAQwgAQAAAAHzAAfaQjIA4QEMIAEAAAAC8wAH2sIYAOEBDCABAAAAA/MAB9ri4wDhAR4AAQAAAODyAATaAhkA4QEMIAEAAAAF8wAH2gI/AOEBFgQBAAAABvMAB9piGgDhAQwgAQAAAAfzAAfaohoA4QEWBAEAAAAI8wAH2uIgAOEBDCABAAAACfMAB9piHwDhARpAAQAAAAnzAAXaAiEA4QEeAAEAAAAJ8wAE2mIcAOEBFgQBAAAADPMAB9qiKgDhARwMAQAAAA3zAAfa4iQA4QEMIAEAAAAO8wAH2iJMAOEBFgQBAAAAD/MAB9oiagDhAQwgAQAAABDzAAfaAhkA4QEMIAEAAAAR8wAH2oIxAOEBIEABAAAAEvMAAtoiIADhARpAAQAAABTzAAXaorEA4QEaQAEAAAAU8wAH2qIkAOEBHAwBAAAAFfMAB9piGwDhAQwgAQAAABbzAAfagh8A4QEWBAEAAAAP8wAF2oIxAOEBFgQBAAAAGPMAB9rCNQDhARpAAQAAABnzAAfa4hUA4QEWBAEAAAAa8wAH2gJSAOEBDCABAAAAG/MAB9pCIADhAQwgAQAAABzzAAfaghwA4QEMIAEAAAAd8wAH2kIgAOEBDCABAAAAHvMAB9rCGgDhARYEAQAAAB/zAAfaIhkA4QEaQAEAAAAg8wAH2kIZAOEBIiABAAAAIfMABtqCQwDhAQwgAQAAACLzAAfaYmkA4QEcDAEAAAAj8wAH2mIbAOEBDCABAAAAJPMAB9oCkADhAR4AAQAAACXzAAbawqYA4QEMIAEAAAAm8wAH2uIVAOEBLgABAAAAJfMAAtpiMQDhARwMAQAAACjzAAfaIgcB4QEWBAEAAAAp8wAH2uIVAOEBDCABAAAAKvMAB9pCiQDhAQwgAQAAACvzAAfaQh0A4QEWBAEAAAAs8wAH2uIeAOEBDCABAAAALfMAB9qCMADhARpAAQAAAC7zAAfaYokA2QEeIAEAAAAv8wAG2kIgAOEBDCABAAAAMPMAB9rCGQDhARYEAQAAADHzAAfaAlgA4QEMIAEAAAAy8wAH2iL9AOEBDCABAAAAM/MAB9qihgHhAQwgAQAAADTzAAfaYksA4QEMIAEAAAA18wAH2uItAOEBDCABAAAANvMAB9pCaQDhAQwgAQAAADfzAAfaIqEA4QEMIAEAAAA48wAH2mLdAOEBHgABAAAAOfMABtriFQDhARpAAQAAADnzAAXaghcA4QEeIAEAAAA78wAG2kIgAOEBDCABAAAAPPMAB9rCGQDhARYEAQAAAD3zAAfaAlgA4QEMIAEAAAA+8wAH2uIZAOEBGkABAAAAO/MABdoijADhAQwgAQAAAEDzAAfaImIA4QEMIAEAAABB8wAH2gIaAOEBHiABAAAAO/MABtqiIwDhAQwgAQAAAEPzAAXawiMA4QEMIAEAAABD8wAF3IJDAOcBHAwBQAEARvMQBdqCQwDhARwMAQAAAEbzABfaIm4A4QEMIAEAAABH8wAH2kIoAOEBDCABAAAASPMAB9oCGQDhAQwgAQAAAEnzAAfagjEA4QEgQAEAAABK8wAC2sJWAOEBDCABAAAAS/MAB9oiIADhARpAAQAAAE3zAAXawjUA4QEaQAEAAABN8wAH2uIVAOEBGkABAAAATfMABdriFQDhAR4gAQAAADvzAALaIqcA4QEMIAEAAABP8wAF2mKMAOEBDCABAAAAUfMAB9qCFwDhARpAAQAAAFLzAAfaAhkA4QEMIAEAAABT8wAH2oIhAOEBFgQBAAAAVPMAB9piGgDhAQwgAQAAAFXzAAfaAhkA4QEeAAEAAABW8wAG2sIXAOEBIgQBAAAAV/MABtrCXADhAQwgAQAAAFjzAAfaAhkA4QEMIAEAAABj8wBH2uIYAOEBDCABAAAAZPMARdqiJwDhARpAAQAAAGXzAEfagicA4QEaQAEAAABm8wBF2kIrAOEBGkABAAAAZ/MARdriFQDhARpAAQAAAGjzAEXa4iEA4QEMIAEAAABf8wAH2mIgAOEBIgABAAAAYPMABtoiGgDhARYEAQAAAGHzAAfaQiAA4QEMIAEAAABi8wAH2gIZAOEBDCABAAAAY/MAB9riGADhAQwgAQAAAGPzAAXagjAA4QEaQAEAAABl8wAH2qIwAOEBGkABAAAAZfMABdrCMADhARpAAQAAAGXzAAXa4hUA4QEaQAEAAABl8wAF2sIaAOEBHAwBAAAAafMAB9piGwDhAQwgAQAAAGrzAAfaohgA4QEgQAEAAABW8wAC2uIVAOEBHgABAAAAVvMAAtriGADhAR4AAQAAAFbzAATa4kEA4QEMIAEAAABR8wAF2mI3AOEBDCABAAAAb/MAB9oiVwDhARYEAQAAAHDzAAfawkQA4QEMIAEAAABx8wAH2mIkAOEBDCABAAAAcvMAB9qCiQDhAQwgAQAAAC/zAAXaYkkA4QEMIAEAAAB08wAH2mJRAOEBDCABAAAAdfMAB9piSwDhAQwgAQAAAHbzAAfa4hkA4QEaQAEAAAAv8wAF2uIeAOEBDCABAAAAePMAB9oCGgDhARpAAQAAAC/zAAXawlYA4QEWBAEAAACK8wAF2sJKAOEBFgQBAAAAivMABdriFQDhAR4AAQAAAC/zAALaIqwA4QEeQAEAAAB98wAG2kKmAOEBDCABAAAAfvMAB9qiGADhARYEAQAAAH/zAAfaAkAA4QEgQAEAAAB98wAC2uIZAOEBFgQBAAAAgfMAB9pCKADhAQwgAQAAAILzAAfaAlgA4QEeAAEAAAB98wAE2uJVAOEBDCABAAAAhPMAB9rCVgDhARYEAQAAAIjzAAXawkoA4QEWBAEAAACI8wAF2uIVAOEBSEABAAAAffMAAtrCIADhARYEAQAAAIjzAAXaAsoA4QEMIAEAAACJ8wAH2oKsAOEBFgQBAAAAivMAB9piHADhARYEAQAAAIvzAAfaoioA4QEcDAEAAACM8wAH2kJMAOEBDCABAAAAjfMAB9oioADhAQwgAQAAAI7zAAfawlYA4QEWBAEAAACR8wAF2sJKAOEBFgQBAAAAkfMABdqiNwDhARYEAQAAAJHzAAfaooYB4QEMIAEAAACS8wAH2qKGAeEBDCABAAAAk/MAB9riOgDhAR4AAQAAAJTzAAbaoiYA4QEgQAEAAACU8wAC2uImAOEBHiABAAAAlPMABNriFQDhAS4AAQAAAJTzAALa4hYA4QEeAAEAAACY8wAG2qJ7AOEBDCABAAAAmfMAB9oiuADhARpAAQAAAJrzAAfaAkAA4QEaQAEAAACa8wAF2uIVAOEBDCABAAAAnPMAB9oCQADhARpAAQAAAJvzAEXa4hUA4QEeAAEAAACc8wBC2kJ0AOEBGkABAAAAmvMABdoC5wDhAR4AAQAAAKDzAAbaYlkA4QEMIAEAAACh8wAH2uIVAOEBIAABAAAAoPMAAtpiHADhARYEAQAAAKPzAAfaoioA4QEcDAEAAACk8wAH2mIbAOEBDCABAAAApfMAB9qCKQDhAQwgAQAAAKbzAAfaghYA4QEaQAEAAACY8wAF2iIvAOEBDCABAAAAqPMAB9piVADhAQwgAQAAAKnzAAfaYiQA4QEMIAEAAACq8wAH2uIVAOEBRAABAAAAmPMAAtpiMQDhARwMAQAAAKzzAAfaolUA4QEMIAEAAACt8wAH2qIjAOEBGkABAAAArvMAB9qCQwDhAQwgAQAAAK/zAAfawiMA4QEaQAEAAACu8wAF2uIVAOEBIAABAAAArvMAAtpiMQDhARwMAQAAALLzAAfawhgA4QEMIAEAAACz8wAH2uKwANkBIgQBAAAAtPMABtqiGADhARYEAQAAALXzAAfawh8A4QEMIAEAAAC28wAH2mIbAOEBDCABAAAAt/MAB9riSgDZAR4gAQAAALjzAAbaYhsA4QEWBAEAAAC58wAH2iJ8AOEBDCABAAAAuvMAB9oiYwDhAQwgAQAAALjzAAXawpcA4QEMIAEAAAC88wAH2sIhAOEBGkABAAAAvfMAB9qiMADhASBAAQAAAL3zAALawjAA4QEaQAEAAAC98wAF2uIVAOEBHkABAAAAvfMAAtpCQQHhAQwgAQAAAMHzAAfaYpUB4QEeIAEAAADC8wAG2qIXAOEBIgABAAAAw/MABtpiegDhAQwgAQAAAMTzAAfaAiYA4QEMIAEAAADF8wAH2sJ6AeEBHgABAAAAxvMABtriFQDhAR4AAQAAAMbzAALaIqYA4QEMIAEAAADI8wAH2sJ6AeEBDCABAAAAyfMAB91i1QHZAQwgAQAAAMrzAAfdgtUB2QEMIAEAAADL8wAH3qLVAeEBDCABAAAAzPMAB9/C1QFyAhkwAQAAAM/zIAXg4tUBdwIZMAEAAADP8xAF4QLWAXkCGTABAAAAz/MABeIi1gHSARAQAQAAANccIAXjQtYB6wEQEAEAAADXHBAF5GLWAdUBRgABAAAA1xwAEOTiGABhAgwgAQAAANPzAAXj4hUAawIaQAEAAADV8xAF5OIVAGECGkABAAAA1fMABeTiGABhAgwgAQAAANbzAAXk4hkAYQIaQAEAAADX8wAF5AIZAGECDCABAAAA2PMABeSilQBhAhpAAQAAANnzAAXkIh4AYQIMIAEAAADa8wAF5OIVAGECGkABAAAA2/MABeTCGABhAgwgAQAAANzzAAXkAjAAYQIMIAEAAADd8wAF5KIwAGECFgQBAAAA3vMABeTiHgBhAhpAAQAAAN/zAAXkYh8AYQIaQAEAAADg8wAF5KIjAGECGkABAAAA4fMABeTiFQBhAhpAAQAAAOLzAAXkghcAYQIaQAEAAADj8wAF5OIVAGECGkABAAAA5PMABeRiJABhAhpAAQAAAOXzAAXkwiQAYQIMIAEAAADm8wAF5CIpAGECGkABAAAA5/MABeTiGQBhAhpAAQAAAOfzAAXk4hUAYQIaQAEAAADn8wAF5AJLAGECFgQBAAAA6vMABeTCKQDhARpAAQAAAOvzAAfk4hUA4QEaQAEAAADr8wAF5CIqAOEBGkABAAAA6/MABeQCGQDhAQwgAQAAAO7zAAfkAicA4QEeQAEAAADv8wAG5MIZAOEBFgQBAAAA8PMAB+RiGQDhARpAAQAAAO/zAAXkwiMA4QEaQAEAAADv8wAF5OIVAOEBHkABAAAA7/MAAuRCJgDhARpAAQAAAPTzAAfkIh4A4QEMIAEAAAD18wAH5GIeAOEBDCABAAAA9vMAB+TiGQDhARpAAQAAAPTzAAXk4hUA4QEaQAEAAAD08wAF5AIZAOEBDCABAAAA+fMAB+RiIgDhASIEAQAAAPrzAAbk4iEA4QEMIAEAAAD78wAH5GIgAOEBFgQBAAAA/PMAB+TiGADhAQwgAQAAAPnzAAXkghcA4QEaQAEAAAD+8wAH5OIZAOEBGkABAAAA/vMABeQCGgDhARpAAQAAAP7zAAXk4hUA4QEaQAEAAAD+8wAF5IIhAOEBFgQBAAAAAvQAB+RCIADhAQwgAQAAAAP0AAfkYhoA4QEMIAEAAAAE9AAH5KIfAOEBDCABAAAABPQABeQCHQDhARpAAQAAAPTzAAXkIkAA4QEeQAEAAAAH9AAG5EIgAOEBDCABAAAACPQAB+TCGQDhARYEAQAAAAn0AAfkgiIA4QEcDAEAAAAK9AAH5AI/AOEBGkABAAAAC/QAB+QiJgDhAQwgAQAAAAz0AAfkAioA4QEMIAEAAAAM9AAF5CItAOEBDCABAAAADvQAB+TCVgDhARYEAQAAAB70AAXkIiAA4QEaQAEAAAAe9AAF5MJKAOEBFgQBAAAAHvQABeTiVgDhARwMAQAAABL0AAfkYhsA4QEMIAEAAAAT9AAH5OIVAOEBHiABAAAAB/QAAuQipwDhAQwgAQAAABT0AAXkokIA4QEaQAEAAAAW9AAH5OIVAOEBGkABAAAAFvQABeTCGADhAQwgAQAAABj0AAfkoj0A4QEaQAEAAAAW9AAF5AIZAOEBDCABAAAAGvQAB+RCQwDhARpAAQAAABv0AAfkgiUA4QEMIAEAAAAc9AAH5IJFAOEBGkABAAAAB/QABeSCZgDhAS4EAQAAAB70AAbk4hUA4QEeAAEAAAAe9AAC5AIZAOEBDCABAAAAIPQAB+QiSgDhARpAAQAAACH0AAfkAhkA4QEMIAEAAAAi9AAH5EIxAOEBGkABAAAAIfQABeTiFQDhARpAAQAAACH0AAXkAloA4QEaQAEAAAAh9AAF5MIYAOEBDCABAAAAJvQAB+QCMADhAQwgAQAAACb0AAXkgl4A4QEMIAEAAAAo9AAH5EJrAOEBMAQBAAAAKfQABuQCWADhAQwgAQAAACn0AAXkAlAA4QEMIAEAAAAr9AAH5OJfAOEBGkABAAAALPQAB+SiGADhARpAAQAAACz0AAXk4hUA4QEaQAEAAAAs9AAF5IKRAOEBGkABAAAALPQABeRiJADhARpAAQAAADD0AAfkwhkA4QEWBAEAAAA+9ABF5AIZAOEBDCABAAAAP/QAR+TiGADhAQwgAQAAAED0AEXkoicA4QEaQAEAAABB9ABH5IInAOEBFgQBAAAAQvQAR+RCKwDhARpAAQAAAEP0AEXk4hUA4QEaQAEAAABE9ABF5OIhAOEBDCABAAAAOPQAB+RiIADhAQwgAQAAADn0AAfkIhoA4QEWBAEAAAA69AAH5MIaAOEBHAwBAAAAO/QAB+QiIADhAQwgAQAAAD30AAXkQiAA4QEMIAEAAAA99AAH5MIZAOEBFgQBAAAAPvQAB+QCGQDhAQwgAQAAAD/0AAfk4hgA4QEMIAEAAAA/9AAF5IIwAOEBGkABAAAAQfQAB+SiMADhASBAAQAAAEH0AALkwjAA4QEaQAEAAABB9AAF5OIVAOEBGkABAAAAQfQABeSCFwDhARpAAQAAAEX0AAfk4hkA4QEaQAEAAABF9AAF5AIaAOEBGkABAAAARfQABeTiFQDhARpAAQAAAEX0AAXkAhkA4QEMIAEAAABJ9AAH5CJkAOEBGkABAAAASvQAB+TCGADhAQwgAQAAAEv0AAfkwhoA4QEcDAEAAABM9AAX5EKlAOEBDCABAAAATfQAB+SCZQDhAQwgAQAAAE30AAXkYhsA4QEMIAEAAABP9AAH5OKrAOEBDCABAAAAUPQAB+QiQwDhAQwgAQAAAFH0AAfkIh0A4QEeAAEAAABS9AAG5EJKAOEBDCABAAAAU/QAB+QiSQDhAQwgAQAAAFL0AAXkghcA4QEaQAEAAABV9AAH5OIZAOEBFgQBAAAAVvQAB+QCGgDhARpAAQAAAFX0AAXk4hUA4QEaQAEAAABV9AAF5MLvAOEBGkABAAAAWfQAB+RiVgDhARpAAQAAAFn0AAXkgn8A4QEMIAEAAABb9AAH5OIVAOEBGkABAAAAWfQABeSCPQDhARpAAQAAAF30AAfkIh4A4QEMIAEAAABe9AAH5OIVAOEBGkABAAAAXfQABeQCZwDhARpAAQAAAF30AAXkAhkA4QEaQAEAAABh9AAH5MIYAOEBDCABAAAAYvQAB+TiIwDhAQwgAQAAAGP0AAfkoicA4QEaQAEAAABk9AAH5IInAOEBGkABAAAAZPQABeRCKwDhARpAAQAAAGT0AAXk4hUA4QEaQAEAAABk9AAF5OLjAOEBGkABAAAAWfQABeSCPQDhAS4EAQAAAGn0AAbkYh8A4QEaQAEAAABp9AAF5AIjAOEBDCABAAAAa/QAB+TiFQDhAS5AAQAAAGn0AALk4lkA4QEaQAEAAABt9AAH5MIYAOEBDCABAAAAbvQAB+TCMQDhAQwgAQAAAHL0AAXk4hUA4QEaQAEAAABt9AAF5CIyAOEBFgQBAAAAcfQAB+TCKgDhAQwgAQAAAHL0AAXkAloA4QEaQAEAAABt9AAF5GKLAOEBGkABAAAAdPQAB+TCGADhAQwgAQAAAHX0AAfkAjAA4QEMIAEAAAB19AAF5OImAOEBGkABAAAAdPQABeTiFQDhARpAAQAAAHT0AAXkAmcA4QEeAAEAAABp9AAE5AIjAOEBMAABAAAAevQABuQCMgDhARwMAQAAAHv0AAfkAkcA4QEeIAEAAAB89AAG5MIZAOEBFgQBAAAAffQAB+RiGwDhAQwgAQAAAH70AAfkgiIA4QEcDAEAAAB/9AAH5KIYAOEBIEABAAAAfPQAAuRiKgDhAQwgAQAAAIH0AAfk4hUA4QEiIAEAAACC9AAG5GIbAOEBFgQBAAAAg/QAB+TiGADhAR4gAQAAAHz0AATkYlEA4QEaQAEAAACF9AAH5MJUAOEBGkABAAAAhfQABeTCGQDhARpAAQAAAIf0AAfkAlgA4QEaQAEAAACH9AAF5OIVAOEBGkABAAAAh/QABeSCIgDhAQwgAQAAAIr0AAfkgkYA4QEaQAEAAACL9AAH5OIVAOEBGkABAAAAi/QABeQCGQDhAQwgAQAAAI30AAfkwiQA4QEaQAEAAACL9AAF5GIbAOEBGiABAAAAj/QAB+RCKwDhARpAAQAAAI/0AAXk4hUA4QEaQAEAAACP9AAF5MIYAOEBDCABAAAAkvQAB+TiXwDhARpAAQAAAJP0AAfkohgA4QEaQAEAAACT9AAF5OIVAOEBGkABAAAAk/QABeTCGADhAQwgAQAAAJb0AAfkgpEA4QEaQAEAAACT9AAF5CIeAOEBDCABAAAAmPQAB+TiIADhARpAAQAAAJn0AAfkYh8A4QEgQAEAAACZ9AAC5AIhAOEBGkABAAAAmfQABeTiFQDhASAEAQAAAJn0AALkYjEA4QEcDAEAAACd9AAH5OJAAOEBDCABAAAAnvQAB+QiKQDhARpAAQAAAJ/0AAfkAhoA4QEaQAEAAACf9AAF5OIWAOEBGkABAAAAofQAB+SCFgDhARpAAQAAAKH0AAXkQlgA4QEaQAEAAACj9AAH5OIVAOEBGkABAAAAo/QABeTCHADhARpAAQAAAKP0AAXkgtYB2QEMIAEAAACm9AAH5IIhAOEBFgQBAAAAp/QAB+SCFwDhAR4gAQAAAKj0AAbk4hUA4QEaQAEAAACo9AAF5KLnAOEBDCABAAAAqvQAB+SC7gDhAQwgAQAAAKv0AAfkwp4A4QEeIAEAAACs9AAG5AJAAOEBGkABAAAArPQABeTiFQDhARpAAQAAAKz0AAXkAhkA4QEMIAEAAACv9AAH5GIcAOEBFgQBAAAAsPQAB+SiKgDhARwMAQAAALH0AAfkYhsA4QEMIAEAAACy9AAH5EJ0AOEBHiABAAAArPQABOSCawDhARpAAQAAALT0AAfkIk4A4QEMIAEAAAC19AAH5MJMAOEBGkABAAAAtvQAB+TiFQDhARpAAQAAALb0AAXkImAA4QEaQAEAAAC29AAF5MI5AOEBFgQBAAAAufQAB+QiJQDhAR4gAQAAALr0AAbkQiUA4QEaQAEAAAC69AAF5OIVAOEBGkABAAAAuvQABeRiJQDhARpAAQAAALr0AAXkYiQA4QEMIAEAAAC+9AAH5ALOAOEBDCABAAAAv/QAB+RiJgDhAR4AAQAAAMD0AAbk4hUA4QEaQAEAAADA9AAF5KI9AOEBGkABAAAAwPQABeSCwwDhAR4gAQAAAMP0AAbkgrEA4QEaQAEAAADD9AAF5OIVAOEBGkABAAAAw/QABeSiwwDhAR4AAQAAAMP0AATkArMA4QEaQAEAAADH9AAH5OIVAOEBHkABAAAAx/QAAuSCswDhARpAAQAAAMf0AAXkApQA4QEaQAEAAADH9AAF5OKFAOEBHgABAAAAy/QABuQChgDhARpAAQAAAMv0AAXkgkwA4QEMIAEAAADN9AAH5OIVAOEBGkABAAAAy/QABeRiMQDhARwMAQAAAM/0AAfkohoA4QEMIAEAAADQ9AAH5CIgAOEBGkABAAAA0vQABeTCigDhARpAAQAAANL0AAfk4hUA4QEeAAEAAADS9AAC5CJWAOEBDCABAAAA1PQAB+RiKwDhARpAAQAAANX0AAfk4swA4QEaQAEAAADV9AAF5MIeAOEBDCABAAAA1/QAB+TiGQDhARpAAQAAANX0AAXk4h4A4QEMIAEAAADZ9AAH5OIVAOEBGkABAAAA1fQABeQiHgDhAQwgAQAAANv0AAfkQh4A4QEMIAEAAADc9AAH5GIeAOEBFgQBAAAA3fQAB+SCFwDhARpAAQAAAN70AAfkAhoA4QEaQAEAAADe9AAF5IIXAOEBGkABAAAA4PQAB+TiGQDhARpAAQAAAOD0AAXkAhoA4QEaQAEAAADg9AAF5OIVAOEBGkABAAAA4PQABeQCGQDhAQwgAQAAAOT0AAfkwgIA4QEeQAEAAADl9AAG5AJAAOEBGkABAAAA5fQABeTiFQDhARpAAQAAAOX0AAXk4oEA4QEaQAEAAADl9AAF5GIeAOEBGkABAAAA6fQAB+QCGQDhAQwgAQAAAOr0AAfk4hkA4QEaQAEAAADp9AAF5OIVAOEBGkABAAAA6fQABeRCvwDhAR4AAQAAAO30AAbkghcA4QEaQAEAAADu9AAH5AIaAOEBGkABAAAA7vQABeTiFQDhARpAAQAAAO70AAXkAhkA4QEMIAEAAADx9AAH5GJWAOEBGkABAAAA7fQABeTiFQDhARpAAQAAAO30AAXk4uMA4QEeAAEAAADt9AAE5OIgAOEBHkABAAAA9fQABuQCIQDhARpAAQAAAPX0AAXk4hUA4QEaQAEAAAD19AAF5GImAOEBGkABAAAA+PQAB+TiFQDhAR4AAQAAAPj0AALkoj0A4QEaQAEAAAD49AAF5ELFAOEBDCABAAAA+/QAB+SipgHhAQwgAQAAAPz0AAfkwp8A4QEMIAEAAAD99AAH5MIvAOEBGkABAAAA/vQAB+TiHwDhARpAAQAAAP70AAXk4hUA4QEuAAEAAAD+9AAC5KJFAOEBHiABAAAAAfUABuRiMADhAQwgAQAAAAH1AAfkwhkA4QEWBAEAAAAD9QAH5AJYAOEBDCABAAAABPUAB+SCIQDhARpAAQAAAAX1AAfkYikA4QEgQAEAAAAF9QAC5IIpAOEBDCABAAAAB/UAB+QCKgDhAQwgAQAAAAf1AAXkIi0A4QEMIAEAAAAJ9QAH5IIWAOEBGkABAAAABfUABeTiFQDhARpAAQAAAAX1AAXkQh4A4QEMIAEAAAAM9QAH5MIYAOEBIgQBAAAADfUABuTCIADhARwMAQAAAA71AAfkYhsA4QEMIAEAAAAP9QAH5CJ9AOEBDCABAAAAEPUAB+QCGQDhAQwgAQAAABH1AAfkYiAA4QEMIAEAAAAS9QAH5IIhAOEBFgQBAAAAE/UAB+SiJADhARwMAQAAABT1AAfkYhsA4QEMIAEAAAAV9QAH5EIgAOEBDCABAAAAFvUAB+RiGgDhAQwgAQAAABf1AAfkoh8A4QEMIAEAAAAX9QAF5GIbAOEBHiABAAAAGfUABuSCJwDhASBAAQAAABn1AALkQisA4QEeAAEAAAAZ9QAE5AIZAOEBDCABAAAAHPUAB+TCFwDhASIAAQAAAB31AAbkYiIA4QEWBAEAAAAe9QAH5IIhAOEBIgABAAAAH/UABuSilQDhARpAAQAAACD1AAfkwhkA4QEWBAEAAAAh9QAH5OImAOEBGkABAAAAIPUABeTiFQDhARpAAQAAACD1AAXkoswA4QEMIAEAAAAk9QAH5MI2AOEBFgQBAAAAJfUAB+SCFwDhARpAAQAAACb1AAfk4iEA4QEMIAEAAAAn9QAH5GIgAOEBDCABAAAAKPUAB+SCogDhAQwgAQAAACn1AAfk4n8A4QEMIAEAAAAp9QAF5MIYAOEBDAQBAAAAK/UAB+QCMADhAQwgAQAAACv1AAXkghwA4QEiAAEAAAAt9QAG5EIgAOEBDCABAAAALvUAB+TCGgDhARwMAQAAAC/1AAfkghcA4QEaQAEAAAAw9QAH5AIaAOEBGkABAAAAMPUABeTiFQDhARpAAQAAADD1AAXkAhkA4QEMIAEAAAAz9QAH5IIhAOEBFgQBAAAANPUAB+SiKQDhARYEAQAAADX1AAfkQiAA4QEMIAEAAAA29QAH5AIZAOEBDCABAAAAN/UAB+QCGQDhAQwgAQAAADj1AAfkwh4A4QEMIAEAAAA59QAH5GIgAOEBDCABAAAAOvUAB+QCGQDhAQwgAQAAADv1AAfkgiEA4QEMIAEAAAA89QAH5GI3AOEBGkABAAAAPfUAB+TiHgDhAQwgAQAAAD71AAfkAhoA4QEaQAEAAAA99QAF5OIVAOEBGkABAAAAPfUABeRiGwDhARYEAQAAAEH1AAfkoioA4QEcDAEAAABC9QAH5GIbAOEBDCABAAAAQ/UAB+TCrwDhARpAAQAAAET1AAfkohgA4QEaQAEAAABE9QAF5GIqAOEBDCABAAAARvUAB+TiFQDhAQwgAQAAAEf1AAfk4hgA4QEaQAEAAABE9QAF5CIxAOEBGkABAAAASfUAB+TCGQDhARYEAQAAAEr1AAfkQjEA4QEgQAEAAABJ9QAC5OIVAOEBGkABAAAASfUABeTiVADhARpAAQAAAEn1AAXkAhkA4QEMIAEAAABO9QAH5AIZAOEBDCABAAAAT/UAB+SCMQDhARpAAQAAAFL1AAXkIiAA4QEaQAEAAABS9QAF5MI1AOEBGkABAAAAUvUAB+RiJADhARpAAQAAAFP1AAfkYioA4QEMIAEAAABU9QAH5CI3AOEBGkABAAAAU/UABeTiFQDhAR4AAQAAAFP1AALkwioA4QEiAAEAAABX9QAG5IIhAOEBFgQBAAAAWPUAB+RiGwDhAQwgAQAAAFn1AAfkIiMA4QEaQAEAAABa9QAH5OIfAOEBGkABAAAAWvUABeTiFQDhAR4AAQAAAFr1AALkwhkA4QEWBAEAAABl9QBH5IIiAOEBHAwBAAAAZvUAReQiHgDhAQwgAQAAAGf1AEfkoicA4QEaQAEAAABo9QBH5IInAOEBFgQBAAAAafUAR+RCKwDhARpAAQAAAGr1AEXk4hUA4QEaQAEAAABr9QBF5AIZAOEBDCABAAAAZPUAB+TCGQDhARYEAQAAAGX1AAfkgiIA4QEcDAEAAABm9QAH5CIeAOEBDCABAAAAZ/UAB+SCMADhARpAAQAAAGj1AAfkojAA4QEgQAEAAABo9QAC5MIwAOEBGkABAAAAaPUABeTiFQDhARpAAQAAAGj1AAXkokgA4QEeAAEAAABs9QAG5OIVAOEBGkABAAAAbPUABeRiGwDhARYEAQAAAG71AAfkwlQA4QEaQAEAAABs9QAF5KIgAOEBGkABAAAAcPUAB+TiFQDhARpAAQAAAHD1AAXkAhkA4QEMIAEAAABy9QAH5OIYAOEBDCABAAAAcvUABeSCIQDhARYEAQAAAHT1AAfkAh0A4QEaQAEAAABw9QAF5GIeAOEBIgQBAAAAdvUABuQCGQDhAQwgAQAAAHf1AAfkYiQA4QEaQAEAAAB49QAH5CI3AOEBGkABAAAAePUABeTiFQDhARpAAQAAAHj1AAXkIh4A4QEaQAEAAAB79QAH5MIYAOEBDCABAAAAfPUAB+RiKADhARpAAQAAAHv1AAXk4hUA4QEaQAEAAAB79QAF5GI/AOEBGkABAAAAf/UAB+QCGQDhAQwgAQAAAID1AAfk4hgA4QEMIAEAAACA9QAF5EIlAOEBGkABAAAAf/UABeTiFQDhARpAAQAAAH/1AAXkYiUA4QEaQAEAAAB/9QAF5EJDAOEBGkABAAAAhfUAB+TCMgDhARpAAQAAAIX1AAXk4hkA4QEaQAEAAACF9QAF5OIVAOEBGkABAAAAhfUABeQCvADhAR4AAQAAAIn1AAbkwhkA4QEWBAEAAACK9QAH5EI4AOEBGkABAAAAi/UAB+QCQADhARYEAQAAAIz1AAfkQigA4QEMIAEAAACN9QAH5AJYAOEBGkABAAAAi/UABeQCGQDhAQwgAQAAAI/1AAfk4hUA4QEgQAEAAACL9QAC5GI3AOEBFgQBAAAAkfUAB+RiGwDhAQwgAQAAAJL1AAfkAhkA4QEaQAEAAACT9QAH5OIVAOEBGkABAAAAk/UABeTiGADhARpAAQAAAJP1AAXkIkoA4QEaQAEAAACW9QAH5OIVAOEBGkABAAAAlvUABeQCWgDhARpAAQAAAJb1AAXkIh4A4QEMIAEAAACZ9QAH5OIeAOEBGkABAAAAmvUAB+RiHwDhARpAAQAAAJr1AAXk4hUA4QEMIAEAAACc9QAH5AIqAOEBGkABAAAAmvUABeSCMgDhARpAAQAAAJr1AEfkYh8A4QEaQAEAAACb9QBF5AIhAOEBGkABAAAAnfUAReTiFQDhAQwgAQAAAJz1AEfkIogA4QEaQAEAAACi9QAH5AIqAOEBGkABAAAAovUABeSCFwDhARpAAQAAAKT1AAfkAhoA4QEaQAEAAACk9QAF5CImAOEBGkABAAAApvUAB+QCGQDhAQwgAQAAAKf1AAfkYh8A4QEaQAEAAACm9QAF5OIVAOEBGkABAAAApvUABeQCKgDhARpAAQAAAKb1AAXkIikA4QEaQAEAAACr9QAH5AIaAOEBGkABAAAAq/UABeTiFQDhARpAAQAAAKv1AAXk4hwA4QEaQAEAAACu9QAH5OIZAOEBIAQBAAAArvUAAuTiFQDhARpAAQAAAK71AAXkAhkA4QEMIAEAAACx9QAH5IIhAOEBFgQBAAAAsvUAB+QCHQDhARpAAQAAAK71AAXkYjYA4QEaQAEAAAC09QAH5CI3AOEBGkABAAAAtPUABeSCRgDhARpAAQAAALb1AAfkwiQA4QEaQAEAAAC29QAF5MI/AOEBGkABAAAAuPUAB+QCHQDhARpAAQAAALj1AAXkgjEA4QEaQAEAAAC89QAF5CIgAOEBGkABAAAAvPUABeRiZADhARpAAQAAALz1AAfk4hUA4QEaQAEAAAC89QAF5OIxAOEBHiABAAAAvvUABuRCJQDhASBAAQAAAL71AALkIiYA4QEMIAEAAADA9QAH5AIqAOEBDCABAAAAwPUABeTiFQDhAR4gAQAAAL71AALkIqcA4QEMIAEAAADC9QAF5AIyAOEBHiABAAAAvvUABORiMgDhAR4AAQAAAMX1AAbk4hkA4QEaQAEAAADF9QAF5OIVAOEBHkABAAAAxfUAAuQCMADhARpAAQAAAMX1AAXk4lAA4QEaQAEAAADJ9QAH5GJWAOEBGkABAAAAyfUABeTiFQDhARpAAQAAAMn1AAXkogkB4QEaQAEAAADJ9QAF5GIzAOEBDCABAAAAzfUAB+SCKQDhARpAAQAAAM71AAfkwhkA4QEWBAEAAADP9QAH5GIfAOEBIEABAAAAzvUAAuSCHwDhAQwgAQAAANH1AAfk4hUA4QEgQAEAAADO9QAC5AIqAOEBGkABAAAAzvUABeQCRgDhAQwgAQAAANT1AAfkYh4A4QEiAAEAAADV9QAG5IIXAOEBGkABAAAA1vUAB+QCGgDhARpAAQAAANb1AAXk4hUA4QEaQAEAAADW9QAF5AIZAOEBDCABAAAA2fUAB+TCFwDhARYEAQAAANr1AAfkghcA4QEaQAEAAADb9QAH5AIaAOEBGkABAAAA2/UABeTiFQDhARpAAQAAANv1AAXkAhkA4QEMIAEAAADe9QAH5IIhAOEBFgQBAAAA3/UAB+SiKQDhARYEAQAAAOD1AAfkIjoA4QEaQAEAAADh9QAH5CIeAOEBDCABAAAA4vUAB+TCGADhARYEAQAAAOP1AAfkgjoA4QEeIAEAAADk9QAG5OIZAOEBGkABAAAA5PUABeTiHgDhAQwgAQAAAOb1AAfk4hUA4QEeQAEAAADk9QAA5MIYAOEBDCABAAAA6PUAB+TCMgDhAR5AAQAAAOT1AATkwnAA4QEMIAEAAAAE9gAF5MIeAOEBFgQBAAAA6/UAB+SCdADhAQwgAQAAAOz1AAfkAjQA4QEWBAEAAADt9QAH5EIgAOEBDCABAAAA7vUAB+Ti3QDhAQwgAQAAAAX2AAXkwhkA4QEWBAEAAADw9QAH5AIZAOEBDCABAAAA8fUAB+SCMQDhASBAAQAAAPL1AALkwlYA4QEMIAEAAADz9QAH5CIgAOEBGkABAAAA9fUABeTCNQDhARpAAQAAAPX1AAfk4hUA4QEaQAEAAAD19QAF5EJrAOEBFgQBAAAA9/UAB+SCPQDhARYEAQAAAPj1AAfkwmQA4QEMIAEAAAD59QAH5AIVAeEBDCABAAAA+vUAB+SiHQDhAQwgAQAAAPv1AAfkQhwA4QEMIAEAAAD89QAH5GIaAOEBDCABAAAA/fUAB+SCFwDhAQwgAQAAAP71AAfkIi0A4QEMIAEAAAD/9QAH5KIpAOEBDCABAAAAAPYAB+QiLgDhARYEAQAAAAH2AAfkYigA4QEMIAEAAAAD9gAF5GKZAOEBDCABAAAAA/YABeQiNgDhAQwgAQAAAAT2AAfk4iQA4QEMIAEAAAAF9gAH5AK2AOEBGkABAAAABvYAB+TCGADhARYEAQAAAAf2AAfkghcA4QEaQAEAAAAI9gAH5AIaAOEBGkABAAAACPYABeTiFQDhARpAAQAAAAj2AAXkAhkA4QEMIAEAAAAL9gAH5IIhAOEBFgQBAAAADPYAB+RiAAHhARpAAQAAAA32AAfkYh8A4QEaQAEAAAAN9gAF5CIeAOEBDCABAAAAD/YAB+TCGADhARYEAQAAABD2AAfkwiAA4QEcDAEAAAAR9gAH5OIVAOEBIEABAAAADfYAAuSCaQDhARpAAQAAAA32AAXkAhkA4QEMIAEAAAAU9gAH5IIhAOEBFgQBAAAAFfYAB+SCFwDhARYEAQAAABb2AAfk4uYA4QEaQAEAAAAX9gAH5GIpAOEBFgQBAAAAGPYAB+TiIwDhAQwgAQAAABn2AAfkQh4A4QEMIAEAAAAa9gAH5GIeAOEBIgABAAAAG/YABuQCGQDhAQwgAQAAABz2AAfkwioA4QEaQAEAAAAd9gAH5IInAOEBGkABAAAAHfYABeRCKwDhARpAAQAAAB32AAXk4hUA4QEaQAEAAAAd9gAF5MIZAOEBFgQBAAAAIfYAB+QifQDhARpAAQAAACL2AAfkAkAA4QEaQAEAAAAi9gAF5AJYAOEBGkABAAAAIvYABeTiFQDhAR5AAQAAACL2AALkYh8A2QEuBAEAAAAm9gAG5EImAOEBHgABAAAAJ/YABuTiFQDhARpAAQAAACf2AAXkAhkA4QEMIAEAAAAp9gAH5GIaAOEBDCABAAAAKvYAB+QCHQDhARpAAQAAACf2AAXkwhoA4QEMIAEAAAAs9gAH5MKmAOEBDCABAAAALfYAB+SieQDhAQwgAQAAAC72AAfkIhgA4QEMIAEAAAAv9gAH5GImAOEBDCABAAAAMPYAB+RCVwDhARYEAQAAADH2AAfkAlYA4QEMIAEAAAAy9gAH5ELUAOEBDCABAAAAM/YAB+QisADhAQwgAQAAADT2AAfkQr8A4QEMIAEAAAA19gAH5KJMAOEBDCABAAAANvYAB+RCJQDhARpAAQAAACb2AAXkorAA4QEaQAEAAAA49gAH5KIYAOEBIEABAAAAOPYAAuTiFQDhARpAAQAAADj2AAXkwhwA4QEaQAEAAAA49gAF5CImAOEBFgQBAAAAJvYABeTCSgDhARYEAQAAACb2AAXk4hUA4QEaQAEAAAAm9gAH5KIjAOEBFgQBAAAAP/YAB+TiPwDhAQwgAQAAAED2AAfkwi8A4QEaQAEAAABB9gAH5IIXAOEBGkABAAAAQvYAB+QCGgDhARpAAQAAAEL2AAXk4hUA4QEaQAEAAABC9gAF5IIXAOEBGkABAAAARfYAB+QCGgDhARpAAQAAAEX2AAXkAhkA4QEMIAEAAABH9gAH5CK3AOEBGkABAAAASPYAB+TCGQDhARYEAQAAAEn2AAfkQjEA4QEgQAEAAABI9gAC5EJKAOEBDCABAAAAS/YAB+TiFQDhASAEAQAAAEj2AALkQhYB4QEaQAEAAABI9gAF5GIkAOEBGkABAAAATvYAB+SiGADhARpAAQAAAE72AAXkIjcA4QEaQAEAAABO9gAF5OIVAOEBGkABAAAATvYABeQCGQDhAQwgAQAAAFL2AAfkAhkA4QEMIAEAAABT9gAH5MIXAOEBFgQBAAAAVPYAB+SCIQDhARYEAQAAAFX2AAfkoikA4QEWBAEAAABW9gAH5KJkAOEBGkABAAAAV/YAB+TiFQDhARpAAQAAAFf2AAXkwhgA4QEMIAEAAABZ9gAH5EJ3AOEBGkABAAAAV/YABeRinwDhARpAAQAAAFv2AAfkAhkA4QEMIAEAAABc9gAH5OIfAOEBGkABAAAAQfYABeTiXwDhARpAAQAAAF72AAfkohgA4QEaQAEAAABe9gAF5OIVAOEBGkABAAAAXvYABeSCkQDhARpAAQAAAF72AAXkAhkA4QEMIAEAAABi9gAH5GIkAOEBGkABAAAAY/YAB+QiNwDhARpAAQAAAGP2AAXkAvkA4QEaQAEAAABl9gAH5OIVAOEBGkABAAAAZfYABeTCGADhAQwgAQAAAGf2AAfkAngA4QEaQAEAAABl9gAF5CK6AOEBDCABAAAAafYAB+SiIwDhAQwgAQAAAGr2AAfkwiMA4QEMIAEAAABq9gAF5CJAAOEBDCABAAAAbPYAB+RCJQDhARYEAQAAAG32AAfkIiYA4QEMIAEAAABu9gAH5GIzAOEBDCABAAAAb/YAB+SCLgDhAQwgAQAAAHD2AAXkgjwA4QEMIAEAAABw9gAF5KIgAOEBGkABAAAAcvYAB+TiGQDhARpAAQAAAHL2AAXk4hUA4QEaQAEAAABy9gAF5AIdAOEBGkABAAAAcvYABeSCKQDhARpAAQAAAHb2AAfk4hUA4QEaQAEAAAB29gAF5AIqAOEBGkABAAAAdvYABeQCRgDhAQwgAQAAAHn2AAfkwjQA4QEaQAEAAAB69gAH5AIZAOEBDCABAAAAe/YAB+QiKQDhARpAAQAAAHz2AAfk4hkA4QEWBAEAAAB99gAH5AIaAOEBGkABAAAAfPYABeTiFQDhARpAAQAAAHz2AAXkAhkA4QEMIAEAAACA9gAH5GIkAOEBGkABAAAAgfYAB+QiNwDhARpAAQAAAIH2AAXk4hUA4QEaQAEAAACB9gAF5MIoAOEBHAwBAAAAhPYAB+RiOADhAQwgAQAAAIX2AAfkQk4A4QEMIAEAAACG9gAH5GIbAOEBDCABAAAAh/YAB+TiWgDhARpAAQAAAIj2AAfkQnsA4QEaQAEAAACI9gAF5OIVAOEBGkABAAAAiPYABeQiHgDhAQwgAQAAAIv2AAfkwhgA4QEWBAEAAACM9gAH5MIZAOEBGkABAAAAjfYAB+QCQADhARYEAQAAAI72AAfkAlgA4QEaQAEAAACN9gAF5OIVAOEBGkABAAAAjfYABeTCIQHhAQwgAQAAAJH2AAfkwhkA4QEWBAEAAACS9gAH5CIlAOEBGkABAAAAk/YAB+QCYQHhAQwgAQAAAJT2AAfkYpQA4QEMIAEAAACV9gAH5AIYAOEBDCABAAAAlvYAB+RiGwDhAR5AAQAAAJf2AAbkQisA4QEaQAEAAACX9gAF5OIVAOEBGkABAAAAl/YABeTCTADhAQwgAQAAAJr2AAfkwrAA4QEMIAEAAAAm9gAF5KJ9AOEBDCABAAAAnPYAB+RCRQDhAQwgAQAAAJ32AAfkQn8A4QEMIAEAAACe9gAH5GJRAOEBDCABAAAAn/YAB+SiHADhARpAAQAAAKD2AAfkQjoA4QEgQAEAAACg9gAC5KJAAOEBDCABAAAAovYAB+RiKADhARpAAQAAAKD2AAXkwhkA4QEWBAEAAACk9gAH5OIVAOEBHkABAAAAoPYAAuRiHgDhAQwgAQAAAKb2AAfkIhkA4QEMIAEAAACn9gAH5GKMAOEBDCABAAAAqPYAB+QCGQDhAQwgAQAAAKn2AAfk4iEA4QEMIAEAAACq9gAH5GIgAOEBFgQBAAAAq/YAB+TiGADhAQwgAQAAAKn2AAXkgiEA4QEWBAEAAACt9gAH5OIhAOEBDCABAAAArvYAB+QiHgDhAQwgAQAAAK/2AAfkQh4A4QEMIAEAAACw9gAH5GIeAOEBFgQBAAAAsfYAB+SCFwDhARpAAQAAALL2AAfkAhkA4QEMIAEAAACz9gAH5IKGAOEBDCABAAAAtPYAB+Si1gHhARYEAQAAALX2AAfk4hUA4QEMIAEAAAC29gAH5CJGAOEBDCABAAAAt/YAB+TiMADhARpAAQAAALj2AAfk4hUA4QEWBAEAAAC59gAH5KJ5AOEBDCABAAAAuvYAB+TCVgDhARYEAQAAAL/2AAXkwkoA4QEWBAEAAAC/9gAF5CJXAOEBFgQBAAAAvfYAB+TCMwDhAQwgAQAAAL72AAfk4v4A4QEWBAEAAAC/9gAH5EKxAOEBHiABAAAAwPYABuQihADhAQwgAQAAAMH2AAfkAioA4QEMIAEAAADB9gAF5MK0AOEBDCABAAAAwPYABeSisQDhARYEAQAAAMT2AAfk4u8A4QEeAAEAAADF9gAG5OIVAOEBIAABAAAAxfYAAuQC8ADhARpAAQAAAMX2AAXkIpsA4QEeAAEAAADI9gAG5KIgAOEBGkABAAAAyfYAB+TiFQDhARpAAQAAAMn2AAXkAhkA4QEMIAEAAADL9gAH5AIdAOEBGkABAAAAyfYABeQCQADhARpAAQAAAMj2AAXkQigA4QEMIAEAAADO9gAH5OIVAOEBGkABAAAAyPYABeRCdADhAR4AAQAAAMj2AATkQiYA4QEaQAEAAADR9gAH5OIVAOEBGkABAAAA0fYABeTCGADhAQwgAQAAANP2AAfkYhoA4QEMIAEAAADU9gAH5AIdAOEBGkABAAAA0fYABeSCVgDhARpAAQAAANb2AAfkwhgA4QEMIAEAAADX9gAH5MIYAOEBDCABAAAA2PYAB+RiHgDhARYEAQAAANn2AAfkAjgA4QEMIAEAAADa9gAH5KIjAOEBGkABAAAA2/YAB+TCIwDhARpAAQAAANv2AAXk4hUA4QEaQAEAAADb9gAF5IIXAOEBGkABAAAA3vYAB+QCGgDhARpAAQAAAN72AAXk4hUA4QEaQAEAAADe9gAF5AIZAOEBDCABAAAA4fYAB+TiNgDhAR4AAQAAAOL2AAbkAhkA4QEMIAEAAADj9gAH5GIkAOEBGkABAAAA5PYAB+QiNwDhARpAAQAAAOT2AAXk4hUA4QEaQAEAAADk9gAF5MLWAdkBDCABAAAA5/YAB+QCGQDhAQwgAQAAAOj2AAfkwjMA4QEaQAEAAADp9gAH5GIoAOEBGkABAAAA6fYABeQCGQDhARpAAQAAAOv2AAfk4hgA4QEaQAEAAADr9gAF5AIZAOEBDCABAAAA7fYAB+SiKQDhAQwgAQAAAO72AAfkIoQA4QEaQAEAAADv9gAH5MIZAOEBFgQBAAAA8PYAB+SCUgDhAR4AAQAAAPH2AAbk4hUA4QEeAAEAAADx9gAC5KIoAOEBHgABAAAA8fYABOQiHgDhAR4gAQAAAPT2AAbkQjoA4QEWBAEAAAD19gAH5GIoAOEBDCABAAAA9PYABeTiFQDhARpAAQAAAPT2AAXkgj8A4QEMIAEAAAD59gAF5KI/AOEBDCABAAAA+fYAB+TCGADhASIAAQAAAPr2AAbkohoA4QEWBAEAAAD79gAH5OIVAOEBGkABAAAA7/YABeRCJADhAQwgAQAAAP32AAfkonUA4QEMIAEAAAD99gAF5GIfAOEBGkABAAAA7/YABeTiFQDhARpAAQAAAO/2AAXkAioA4QEaQAEAAADv9gAF5GJ6AOEBHgABAAAAAvcABuTiFQDhAR4AAQAAAAL3AALk4oEA4QEeAAEAAAAC9wAE5CIeAOEBGkABAAAABfcAB+RCOgDhARpAAQAAAAX3AAXkYigA4QEaQAEAAAAF9wAF5OIVAOEBGiABAAAABfcABeRiJADhARpAAQAAAAn3AAfkohgA4QEgQAEAAAAJ9wAC5MIYAOEBDCABAAAAC/cAB+RiKgDhAQwgAQAAAAz3AAfkAkYA4QEMIAEAAAAN9wAH5CI3AOEBGkABAAAACfcABeTiFQDhAR4gAQAAAAn3AALkoiMA4QEaQAEAAAAQ9wAH5IJDAOEBDCABAAAAEfcAB+TCIwDhARpAAQAAABD3AAXk4hUA4QEaQAEAAAAQ9wAF5GKyAOEBHgABAAAAFPcABuTCMgDhARpAAQAAABT3AAXk4hkA4QEaQAEAAAAU9wAF5OIVAOEBGkABAAAAFPcABeSCFwDhARpAAQAAABj3AAfk4hUA4QEaQAEAAAAY9wAF5AIZAOEBDCABAAAAGvcAB+SiIADhARpAAQAAABv3AAfkIh4A4QEMIAEAAAAc9wAH5OIZAOEBIEABAAAAG/cAAuTiFQDhASBAAQAAABv3AALkAhkA4QEMIAEAAAAf9wAH5OIYAOEBDCABAAAAH/cABeSCIQDhARYEAQAAACH3AAfkoiQA4QEcDAEAAAAi9wAH5GIbAOEBDCABAAAAI/cAB+RCIADhAQwgAQAAACT3AAfk4h4A4QEMIAEAAAAl9wAH5GIaAOEBDCABAAAAJvcAB+SiJwDhARpAAQAAACf3AAfkQisA4QEaQAEAAAAn9wAF5IIwAOEBGkABAAAAKfcAB+TCMADhARpAAQAAACn3AAXkAh0A4QEaQAEAAAAb9wAF5GL2AOEBIgQBAAAALPcABuSCSgDhARYEAQAAAC33AAfkokoA4QEMIAEAAAAs9wAF5AIZAOEBDCABAAAAL/cAB+SCIQDhASIAAQAAADD3AAbkoiQA4QEcDAEAAAAx9wAH5GIbAOEBDCABAAAAMvcAB+RCIADhAQwgAQAAADP3AAfkov8A4QEcDAEAAAA09wAH5EJJAOEBDCABAAAANfcAB+SiTADhARpAAQAAADb3AAfkIgEB4QEMIAEAAAA39wAH5OIXAOEBGkABAAAAOPcAB+SCJwDhARpAAQAAADj3AAXkQisA4QEaQAEAAAA49wAF5OIVAOEBHiABAAAAOPcAAuTCSgDhARpAAQAAADz3AAfkAhkA4QEMIAEAAAA99wAH5KKVAOEBGkABAAAAPvcAB+RCOQDhAR4gAQAAAD/3AAbkwhkA4QEWBAEAAABA9wAH5IIhAOEBFgQBAAAAQfcAB+SiKQDhASIAAQAAAEL3AAbkQjEA4QEgAAEAAAA/9wAC5EJKAOEBDCABAAAARPcAB+QCKgDhAQwgAQAAAET3AAXk4hUA4QEaQAEAAAA/9wAF5OIhAOEBDCABAAAAR/cAB+RiIADhASIAAQAAAEj3AAbkAloA4QEeIAEAAAA/9wAE5IIXAOEBGkABAAAASvcAB+TiGQDhARpAAQAAAEr3AAXkAhoA4QEaQAEAAABK9wAF5OIVAOEBGkABAAAASvcABeRCJgDhARpAAQAAAE73AAfkQjgA4QEWBAEAAABP9wAH5OIVAOEBGkABAAAATvcABeQCGQDhAQwgAQAAAFH3AAfkgiEA4QEWBAEAAABS9wAH5GIbAOEBDCABAAAAU/cAB+RCIADhAQwgAQAAAFT3AAfk4h4A4QEMIAEAAABV9wAH5GIbAOEBDCABAAAAVvcAB+SiKQDhASIEAQAAAFf3AAbkAh0A4QEaQAEAAABO9wAF5OIgAOEBGkABAAAAWfcAB+RCKgDhAR5AAQAAAFr3AAbkohgA4QEaQAEAAABa9wAF5OIVAOEBGkABAAAAWvcABeSCKgDhARpAAQAAAFr3AAXkQk0A4QEaQAEAAABe9wAH5GIZAOEBFgQBAAAAX/cAB+SCNQDhARpAAQAAAGD3AAfkgkMA4QEMIAEAAABh9wAH5MIjAOEBGkABAAAAXvcABeSiigDhARYEAQAAAGP3AAfkwhoA4QEcDAEAAABk9wAH5OIVAOEBIAQBAAAAXvcAAuRiMQDhARwMAQAAAGb3AAfkwhgA4QEMIAEAAABn9wAH5GIeAOEBIgABAAAAaPcABuSCFwDhARpAAQAAAGn3AAfk4hkA4QEWBAEAAABq9wAH5AIaAOEBGkABAAAAafcABeTiFQDhASAAAQAAAGn3AALkAhkA4QEMIAEAAABt9wAH5GIaAOEBDCABAAAAbvcAB+SiHwDhAQwgAQAAAG73AAXkYgsB4QEaQAEAAABw9wAH5AJAAOEBGkABAAAAcPcABeTiFQDhAR5AAQAAAHD3AALkAkAA4QEaQAEAAABx9wBF5OIVAOEBGkABAAAAcvcAReRCdADhARpAAQAAAHD3AAXkwusA4QEMIAEAAAB29wAH5AKBAOEBDCABAAAAd/cAB+SiKADhAQwgAQAAAHf3AAXkgkgA4QEMIAEAAAB69wAF5KI8AOEBDCABAAAAevcABeQiHgDhAQwgAQAAAHv3AAfkQh4A4QEMIAEAAAB89wAH5MIYAOEBFgQBAAAAffcAB+QiJQDhAR4gAQAAAH73AAbkQiUA4QEaQAEAAAB+9wAF5OIVAOEBGiABAAAAfvcABeRiJQDhAR4gAQAAAH73AATkoiMA4QEaQAEAAACC9wAH5GIZAOEBGkABAAAAgvcABeTCIwDhARpAAQAAAIL3AAXk4hUA4QEeQAEAAACC9wAA5MIYAOEBDCABAAAAhvcAB+SiIwDhARpAAQAAAIf3AAfk4iMA4QEMIAEAAACI9wAH5MIqAOEBHkABAAAAifcABuSCJwDhARpAAQAAAIn3AAXkQisA4QEaQAEAAACJ9wAF5OIVAOEBGkABAAAAifcABeTCGQDhARYEAQAAAI33AAfkwh4A4QEMIAEAAACO9wAH5AIZAOEBDCABAAAAj/cAB+QiKQDhARpAAQAAAJD3AAfk4hkA4QEaQAEAAACQ9wAF5OIeAOEBDCABAAAAkvcAB+QCGgDhARpAAQAAAJD3AAXk4hUA4QEaQAEAAACQ9wAF5EIqAOEBGkABAAAAlfcAB+SiGADhARpAAQAAAJX3AAXk4hUA4QEeQAEAAACV9wAC5IIqAOEBGkABAAAAlfcABeSCTwDhARYEAQAAAJn3AAfkwlwA4QEaQAEAAACa9wAH5AJYAOEBGkABAAAAmvcABeTCHQDhAQwgAQAAAJz3AAfk4hUA4QEaQAEAAACa9wAF5MIaAOEBHAwBAAAAnvcAB+QCIwDhAR4gAQAAAJ/3AAbkYh4A4QEWBAEAAACg9wAH5EIlAOEBGkABAAAAn/cABeSiigDhARYEAQAAAKL3AAfk4hUA4QEaQAEAAACf9wAV5GIbAOEBLAwBAAAApPcABuMCMgDnAQwgAQAAAJ/3EAXkAjIA4QEeIAEAAACf9wAE5MKIAOEBDCABAAAAp/cAB+SCFwDhASAAAQAAAKj3AAbkAhoA4QEaQAEAAACo9wAF5OIVAOEBIAABAAAAqPcAAuQCGQDhAQwgAQAAAKv3AAfkwhgA4QEiAAEAAACs9wAG5AJeAOEBDCABAAAArfcAB+TCHwDhAQwgAQAAAK73AAfkQkUA4QEaQAEAAACv9wAH5MJ1AOEBDCABAAAAsPcAB+RiFADhAQwgAQAAALH3AAfkwhwA4QEMIAEAAACx9wAF5MIYAOEBHgABAAAAs/cABuTCHgDhARYEAQAAALT3AAfkwhoA4QEcDAEAAAC19wAH5KJ1AOEBDCABAAAAtvcAB+QCGQDhAQwgAQAAALf3AAfk4hkA4QEWBAEAAAC49wAH5OIVAOEBGkABAAAAs/cABeQCSQDhAQwgAQAAALD3AAXkwjgA4QEMIAEAAAC79wAH5AIZAOEBDCABAAAAvPcAB+TCFwDhARYEAQAAAL33AAfk4iEA4QEMIAEAAAC+9wAH5MIaAOEBHAwBAAAAv/cAB+TiGADhAQwgAQAAALz3AAXk4h4A4QEeQAEAAADB9wAG5GIfAOEBIEABAAAAwfcAAuTiFQDhARpAAQAAAMH3AAXkAioA4QEeIAEAAADB9wAE5GIeAOEBDCABAAAAxfcAB+QilwDhAQwgAQAAAMb3AAfkAhkA4QEMIAEAAADH9wAH5AI4AOEBDCABAAAAyPcAB+RiHgDhARYEAQAAAMn3AAfkojwA4QEMIAEAAADK9wAH5KKVAOEBGkABAAAAy/cAB+SCSQDhAQwgAQAAAMz3AAfkYhsA4QEeAAEAAADN9wAG5EIrAOEBGkABAAAAzfcABeTiFQDhARpAAQAAAM33AAXkAhkA4QEMIAEAAADQ9wAH5IIhAOEBFgQBAAAA0fcAB+RCVADhAR4gAQAAANL3AAbkoooA4QEWBAEAAADT9wAH5MIaAOEBHAwBAAAA1PcAB+RikQDhARpAAQAAANL3AAfkwhkA4QEWBAEAAADW9wAH5IIiAOEBHAwBAAAA1/cAB+TiGQDhARpAAQAAANL3AAXk4hUA4QEaQAEAAADS9wAF5OJQAOEBGkABAAAA2vcAB+TiFQDhARpAAQAAANr3AAXkogkB4QEaQAEAAADa9wAF5MKLAOEBGkABAAAA3fcAB+RCYwDhARpAAQAAAN33AAXkAjQA4QEiBAEAAADf9wAG5AIZAOEBDCABAAAA5vcAR+SiJwDhARpAAQAAAOf3AEfkgicA4QEaQAEAAADo9wBF5EIrAOEBGkABAAAA6fcAReTiFQDhARpAAQAAAOr3AEXkQiAA4QEMIAEAAADl9wAH5AIZAOEBDCABAAAA5vcAB+SCMADhARpAAQAAAOf3AAfkojAA4QEaQAEAAADn9wAF5MIwAOEBGkABAAAA5/cABeTiFQDhARpAAQAAAOf3AAXkInoA4QEcDAEAAADr9wAH5AJnAOEBDCABAAAA3/cABeSCFwDhARpAAQAAAO33AAfk4hkA4QEgQAEAAADt9wAC5AIaAOEBGkABAAAA7fcABeTiFQDhAR5AAQAAAO33AALkAhkA4QEiIAEAAADx9wAG5OIYAOEBDCABAAAA8fcABeSCIQDhARYEAQAAAPP3AAfkYhoA4QEMIAEAAAD09wAH5KIfAOEBDCABAAAA9PcABeSiKQDhARYEAQAAAPb3AAfkwmcA4QEMIAEAAAD49wAF5OI0AOEBDCABAAAA+PcAB+RilgDhAQwgAQAAAPn3AAfkghcA4QEaQAEAAAD69wAH5AIaAOEBGkABAAAA+vcABeTiFQDhARpAAQAAAPr3AAXkAhkA4QEMIAEAAAD99wAH5IIXAOEBGkABAAAA/vcAB+TiGQDhARpAAQAAAP73AAXkAhoA4QEaQAEAAAD+9wAF5OIVAOEBGkABAAAA/vcABeQCGQDhAQwgAQAAAAL4AAfkgiEA4QEWBAEAAAAD+AAH5AIZAOEBDCABAAAABPgAB+SiJwDhARpAAQAAAAX4AAfkAhkA4QEMIAEAAAAG+AAH5IIwAOEBGkABAAAAB/gAB+RCGQDhAR4AAQAAAAj4AAbkwiMA4QEeAAEAAAAI+AAE5OIVAOEBGkABAAAACPgABeSCPQDhARpAAQAAAAv4AAfk4hUA4QEMIAEAAAAM+AAH5OIjAOEBDCABAAAADfgAB+SidQDhAQwgAQAAAA34AAXkYjMA4QEaQAEAAAAP+AAH5EIrAOEBGkABAAAAD/gABeTiFQDhARpAAQAAAA/4AAXkAqAA4QEaQAEAAAAS+AAH5OIVAOEBGkABAAAAEvgABeSCiQDhARpAAQAAABL4AAXkIpsA4QEaQAEAAAAV+AAH5EJ0AOEBGkABAAAAFfgABeTCKgDhARpAAQAAABf4AAfkQisA4QEaQAEAAAAX+AAF5OIVAOEBGkABAAAAF/gABeQCGQDhAQwgAQAAABr4AAfkgjEA4QEaQAEAAAAd+AAF5CIgAOEBGkABAAAAHfgABeTCNQDhARpAAQAAAB34AAfk4hUA4QEaQAEAAAAd+AAF5OJfAOEBHiABAAAAH/gABuSiGADhARpAAQAAAB/4AAXk4hUA4QEgQAEAAAAf+AAC5GI3AOEBGkABAAAAIvgAB+TiGQDhARpAAQAAACL4AAXkAhoA4QEaQAEAAAAi+AAF5OIVAOEBGkABAAAAIvgABeSCkQDhARpAAQAAAB/4AAXkYjMA4QEaQAEAAAAn+AAH5IInAOEBGkABAAAAJ/gABeTCGADhAQwgAQAAACn4AAfkQisA4QEaQAEAAAAn+AAF5OIVAOEBGkABAAAAJ/gABeTCNADhARpAAQAAACz4AAfkAhkA4QEMIAEAAAAt+AAH5OJUAOEBDCABAAAALvgAB+SiOwDhAR5AAQAAAC/4AAbkghcA4QEgAAEAAAAw+AAG5AIZAOEBDCABAAAAMfgAB+TiIQDhAQwgAQAAADL4AAfkImsA4QEMIAEAAAAz+AAH5IJWAOEBGkABAAAANPgAB+RCOgDhASBAAQAAADT4AALkwhgA4QEMIAEAAAA2+AAH5KJAAOEBDCABAAAAN/gAB+RiKADhARpAAQAAADT4AAXk4hUA4QEaQAEAAAA0+AAF5OIVAOEBGkABAAAAL/gABeSCKgDhAQwgAQAAAC/4AAXkwgIA4QEaQAEAAAA8+AAH5AJAAOEBGkABAAAAPPgABeTiFQDhARpAAQAAADz4AAXk4oEA4QEaQAEAAAA8+AAF5IIXAOEBGkABAAAAQPgAB+TiGQDhARpAAQAAAED4AAXkwhgA4QEMIAEAAABC+AAH5AIaAOEBGkABAAAAQPgABeTiFQDhARpAAQAAAED4AAXkIh4A4QEMIAEAAABF+AAH5OIgAOEBGkABAAAARvgAB+QCIQDhARpAAQAAAEb4AAXkghcA4QEaQAEAAABI+AAH5OIZAOEBGkABAAAASPgABeQCGgDhARpAAQAAAEj4AAXk4hUA4QEaQAEAAABI+AAF5EJUAOEBGkABAAAATPgAB+QCGQDhAQwgAQAAAE34AAfk4hUA4QEaQAEAAABM+AAF5KIcAOEBGkABAAAAT/gAB+RCOgDhARpAAQAAAE/4AAXkYigA4QEaQAEAAABP+AAF5OIVAOEBGkABAAAAT/gABeQCGQDhAQwgAQAAAFP4AAfkwhgA4QEaQAEAAABU+AAH5OIZAOEBGkABAAAAVPgABeTiFQDhARpAAQAAAFT4AAXkAjAA4QEaQAEAAABU+AAF5IIXAOEBGkABAAAAWPgAB+TiGQDhASBAAQAAAFj4AALkAhoA4QEaQAEAAABY+AAF5OIVAOEBGkABAAAAWPgABeSCqgDhAQwgAQAAACn0AAXkQi8B4QEeAAEAAABd+AAG5AJbAOEBDCABAAAAXvgAB+SCFwDhARpAAQAAAF/4AAfk4hkA4QEaQAEAAABf+AAF5AIaAOEBGkABAAAAX/gABeTiFQDhARpAAQAAAF/4AAXkAhkA4QEMIAEAAABj+AAH5IIhAOEBFgQBAAAAZPgAB+SiIADhAR5AAQAAAGX4AAbk4hkA4QEgQAEAAABl+AAC5OIVAOEBGkABAAAAZfgABeQCGQDhAQwgAQAAAGj4AAfkgiEA4QEWBAEAAABp+AAH5AIdAOEBGkABAAAAZfgABeTCewHhARpAAQAAAGv4AAfkAhsB4QEaQAEAAABr+AAF5MIxAOEBGkABAAAAbfgAB+RCOgDhARpAAQAAAG34AAXkYigA4QEaQAEAAABt+AAF5OIVAOEBLgABAAAAbfgAAuQiQgDhARpAAQAAAHH4AAfkIiYA4QEMIAEAAABy+AAH5KIYAOEBGkABAAAAcfgABeTiFQDhARpAAQAAAHH4AAXkgioA4QEaQAEAAABx+AAF5IIXAOEBGkABAAAAdvgAB+QCGgDhARpAAQAAAHb4AAXk4hUA4QEaQAEAAAB2+AAF5AIZAOEBDCABAAAAefgAB+TiPwDhARpAAQAAAHr4AAfkAkAA4QEaQAEAAAB6+AAF5AJYAOEBGkABAAAAevgABeTiFQDhARpAAQAAAHr4AAXkwjMA4QEaQAEAAAB++AAH5GIoAOEBGkABAAAAfvgABeQiFQHhAQwgAQAAAID4AAfkooAA4QEeAAEAAACB+AAG5EIrAOEBHgABAAAAgfgABOTiFQDhAR4AAQAAAIH4AALk4kAA4QEMIAEAAACY+AAF5IIXAOEBGkABAAAAhfgAB+TiGQDhASBAAQAAAIX4AALkYhsA4QEMIAEAAACH+AAH5AIaAOEBGkABAAAAhfgABeTiFQDhARpAAQAAAIX4AAXkAhkA4QEMIAEAAACK+AAH5MIXAOEBFgQBAAAAi/gAB+TiGADhAQwgAQAAAIr4AAfkIi0A4QEMIAEAAACN+AAH5OJrAOEBDCABAAAAjfgABeSCIQDhASIEAQAAAI/4AAbkoiQA4QEcDAEAAACQ+AAH5IIWAOEBDCABAAAAj/gABeSiJwDhARpAAQAAAJL4AAfk4iEA4QEMIAEAAACT+AAH5CIaAOEBFgQBAAAAlPgAB+TCGgDhARwMAQAAAJX4AAfkQiAA4QEMIAEAAACW+AAH5IIwAOEBGkABAAAAl/gAB+QiNgDhAQwgAQAAAJj4AAfkgj0B4QEaQAEAAACZ+AAH5GIeAOEBIgABAAAAmvgABuQCGQDhAQwgAQAAAJv4AAfkgkoA4QEgBAEAAACZ+AAC5CLFAOEBDCABAAAAnfgAB+SiSgDhARpAAQAAAJn4AAXkQkwA4QEMIAEAAACf+AAH5OIVAOEBIAQBAAAAmfgAAuTiYQDhAR4AAQAAAKH4AAbkAmIA4QEaQAEAAACh+AAF5OIVAOEBGkABAAAAofgABeQiYwDhAR4AAQAAAKH4AATkgqkA4QEaQAEAAACl+AAH5OIVAOEBGkABAAAApfgABeRiQgDhARpAAQAAAKX4AAXkIhkA4QEeIAEAAACo+AAG5IInAOEBGkABAAAAqPgABeRCKwDhAR4gAQAAAKj4AATk4hUA4QEgQAEAAACo+AAC5IIXAOEBGkABAAAArPgAB+TiGQDhARpAAQAAAKz4AAXkAhoA4QEaQAEAAACs+AAF5OIVAOEBHgABAAAArPgAAuQCGQDhAQwgAQAAALD4AAfkwhgA4QEaQAEAAACx+AAH5OIZAOEBGkABAAAAsfgABeTiFQDhARpAAQAAALH4AAXkYhsA4QEWBAEAAAC0+AAH5KIqAOEBHAwBAAAAtfgAB+RiGwDhAQwgAQAAALb4AAfkAjAA4QEaQAEAAACx+AAF5CIeAOEBDCABAAAAuPgAB+RCHgDhAQwgAQAAALn4AAfkYh4A4QEWBAEAAAC6+AAH5MIgAOEBHAwBAAAAu/gAB+RCIADhAQwgAQAAALz4AAfkwhkA4QEWBAEAAAC9+AAH5GIbAOEBDCABAAAAvvgAB+SCIgDhARwMAQAAAL/4AAfkIh4A4QEMIAEAAADA+AAH5GIeAOEBFgQBAAAAwfgAB+QCJQDhAQwgAQAAAML4AAfkQi0A4QEMIAEAAADC+AAF5MI/AOEBDCABAAAAxPgAB+SCMQDhARpAAQAAAPT4AAXkorQA4QEMIAEAAADG+AAH5MK0AOEBDCABAAAAxvgABeQiIADhARpAAQAAAPT4AAXk4jYA4QEaQAEAAADJ+AAH5GIpAOEBIEABAAAAyfgAAuSCKQDhAQwgAQAAAMv4AAfkghYA4QEaQAEAAADJ+AAF5OIVAOEBGkABAAAAyfgABeTi1gHhAQwgAQAAAM74AAfkAhkA4QEMIAEAAADP+AAH5OIhAOEBDCABAAAA0PgAB+RiIADhAQwgAQAAANH4AAfk4hgA4QEMIAEAAADP+AAF5EIgAOEBDCABAAAA0/gAB+RiHADhASIEAQAAANT4AAbk4iEA4QEMIAEAAADV+AAH5KIqAOEBHAwBAAAA1vgAB+RiGwDhAQwgAQAAANf4AAfkYiQA4QEaQAEAAADY+AAH5CI3AOEBGkABAAAA2PgABeSiIwDhARpAAQAAANr4AAfkYhkA4QEgQAEAAADa+AAC5MIjAOEBGkABAAAA2vgABeTiFQDhAR5AAQAAANr4AALkwhgA4QEMIAEAAADe+AAH5GIiAOEBDCABAAAA3/gAB+SiIwDhAR4gAQAAAOD4AAbkYhkA4QEaQAEAAADg+AAF5MIjAOEBGkABAAAA4PgABeTiFQDhAR4AAQAAAOD4AALk4hUA4QEMIAEAAADk+AAH5IIhAOEBGkABAAAA5fgAB+SCFgDhARpAAQAAAOX4AAXk4hUA4QEeAAEAAADl+AAC5CInAOEBGkABAAAA6PgAB+TiFQDhARpAAQAAAOj4AAXkgkUA4QEaQAEAAADo+AAF5IIXAOEBGkABAAAA6/gAB+TiGQDhASBAAQAAAOv4AALkAhoA4QEaQAEAAADr+AAF5OIVAOEBGkABAAAA6/gABeQCGQDhAQwgAQAAAO/4AAfkIh4A4QEMIAEAAADw+AAH5GIeAOEBFgQBAAAA8fgAB+TCIADhARwMAQAAAPL4AAfkQiAA4QEMIAEAAADz+AAH5KIkAOEBGkABAAAA9PgAB+TiFQDhARpAAQAAAPT4AAXkIjQA4QEaQAEAAAD2+AAH5ELoANkBDCABAAAA9/gAB+QCJgDhARpAAQAAAP74AAXkQioA4QEaQAEAAAD5+AAH5CImAOEBHiABAAAA+vgABuSiGADhARpAAQAAAPn4AAXk4hUA4QEgQAEAAAD5+AAC5IIqAOEBHkABAAAA+fgAAuTiVQDhAR5AAQAAAP74AAbkwpoA4QEeAAEAAAD++AAE5OIVAOEBHgABAAAA/vgAAuQCbgDhAR4AAQAAAAH5AAbkQiUA4QEaQAEAAAAB+QAF5GIlAOEBGkABAAAAAfkABeRCFgDhAR4gAQAAAAT5AAbkwhkA4QEWBAEAAAAF+QAH5IIiAOEBHAwBAAAABvkAB+QChgDhARpAAQAAAAT5AAXk4hUA4QEaQAEAAAAE+QAF5GKpAOEBHiABAAAABPkABOTiOgDhAQwgAQAAAAr5AAfkgjEA4QEaQAEAAAAN+QAF5CIgAOEBGkABAAAADfkABeTCpgDhARpAAQAAAA35AAfk4hUA4QEaQAEAAAAN+QAF5CKhAOEBDCABAAAAD/kAB+QidADhARYEAQAAABD5AAfkwhkA4QEWBAEAAAAR+QAH5KIaAOEBFgQBAAAAEvkAB+SCFwDhARpAAQAAABP5AAfkAhkA4QEMIAEAAAAU+QAH5CIgAOEBHgABAAAAFvkABOTi/gDhAR4gAQAAABb5AAbk4hUA4QEaQAEAAAAW+QAF5OIpAOEBGkABAAAAGPkAB+RiHwDhARpAAQAAABj5AAXk4hUA4QEeQAEAAAAY+QAC5AIqAOEBGkABAAAAGPkABeQiHgDhAQwgAQAAABz5AAfkwmsA4QEMIAEAAAAd+QAF5AImAOEBDCABAAAAHvkAB+TiJgDhAQwgAQAAAB35AAXkAhkA4QEMIAEAAAAg+QAH5KInAOEBGkABAAAAIfkAB+QCGQDhAQwgAQAAACL5AAfkgjAA4QEaQAEAAAAj+QAH5MIwAOEBGkABAAAAI/kABeSCawDhARpAAQAAACX5AAfkQiUA4QEaQAEAAAAl+QAF5CImAOEBDCABAAAAJ/kAB+QCKgDhAQwgAQAAACf5AAXkoooA4QEWBAEAAAAp+QAH5OIVAOEBGkABAAAAJfkABeRiJQDhARpAAQAAACX5AAXkIjoA4QEaQAEAAAAs+QAH5CIeAOEBDCABAAAALfkAB+TCGADhARYEAQAAAC75AAfkwiAA4QEcDAEAAAAv+QAH5GIoAOEBGkABAAAALPkABeTiFQDhARpAAQAAACz5AAXkoicA4QEMIAEAAAAy+QAH5EJsAOEBFgQBAAAAM/kAB+QCGQDhAQwgAQAAADT5AAfkYhsA4QEMIAEAAAA1+QAH5EJDAOEBHgABAAAANvkABuTCGADhAQwgAQAAADf5AAfkwjIA4QEaQAEAAAA2+QAF5MIeAOEBDCABAAAAOfkAB+QiHgDhAQwgAQAAADr5AAfk4hkA4QEaQAEAAAA2+QAF5MIYAOEBFgQBAAAAPPkAB+TiFQDhARpAAQAAADb5AAXkYh4A4QEMIAEAAAA++QAH5AIwAOEBDCABAAAAPvkABeRikADhARpAAQAAAED5AAfkAkAA4QEaQAEAAABA+QAF5OIVAOEBGkABAAAAQPkABeQCQADhARpAAQAAAEH5AEXk4hUA4QEaQAEAAABC+QBF5EJ0AOEBGkABAAAAQPkABeSCOQDhARpAAQAAAEb5AAfkQiUA4QEaQAEAAABG+QAF5OIVAOEBGkABAAAARvkABeSCswDhARpAAQAAAEb5AAXkIh4A4QEMIAEAAABK+QAH5IIXAOEBGkABAAAAS/kAB+QCGQDhAQwgAQAAAEz5AAfkAlIA4QEMIAEAAABN+QAH5GIzAOEBDCABAAAATvkAB+SiigDhARYEAQAAAE/5AAfkwhoA4QEcDAEAAABQ+QAH5GIbAOEBFgQBAAAAUfkAB+SiKgDhARwMAQAAAFL5AAfkIi8A4QEiBAEAAABT+QAG5KIkAOEBHAwBAAAAVPkAB+RiGwDhAQwgAQAAAFX5AAfkAhkA4QEMIAEAAABW+QAH5KKWAOEBGkABAAAARvkAR+RCJQDhARpAAQAAAEf5AEXk4hUA4QEaQAEAAABI+QBF5IKzAOEBGkABAAAASfkAReRiMgDhAR4AAQAAAFv5AAbkwhkA4QEWBAEAAABc+QAH5AJCAOEBDCABAAAAXfkAB+SiJQDhAR5AAQAAAF75AAbkYikA4QEgQAEAAABe+QAC5IIpAOEBDCABAAAAYPkAB+SCFgDhARpAAQAAAF75AAXk4hUA4QEaQAEAAABe+QAF5AKpAOEBDCABAAAAY/kAB+SCFwDhARpAAQAAAGT5AAfk4hkA4QEgQAEAAABk+QAC5AIaAOEBGkABAAAAZPkABeQCGQDhAQwgAQAAAGf5AAfkgiEA4QEWBAEAAABo+QAH5GIaAOEBDCABAAAAafkAB+QiHgDhAQwgAQAAAGr5AAfkwhcA4QEWBAEAAABr+QAH5AJMAOEBGkABAAAAbPkAB+RCMQDhARpAAQAAAGz5AAXkAkkA4QEaQAEAAABs+QAF5OIVAOEBGkABAAAAbPkABeQiHgDhAQwgAQAAAHD5AAfkwhgA4QEWBAEAAABx+QAH5GI/AOEBGkABAAAAcvkAB+QiJgDhAR5AAQAAAHP5AAbkYh8A4QEaQAEAAABz+QAF5OIVAOEBHkABAAAAc/kAAuQCKgDhAR4AAQAAAHP5AATkYhwA4QEeAAEAAAB3+QAG5OIVAOEBFgQBAAAAePkAB+QCGQDhAQwgAQAAAHn5AAfkYiUA4QEaQAEAAABy+QAF5AImAOEBLiABAAAAe/kABuRCYgDhAR5AAQAAAHz5AAbk4iYA4QEaQAEAAAB8+QAF5OIVAOEBGkABAAAAfPkABeSCFwDhARpAAQAAAH/5AAfkAhoA4QEaQAEAAAB/+QAF5IIXAOEBGkABAAAAgfkAB+TiGQDhARpAAQAAAIH5AAXkAhoA4QEaQAEAAACB+QAF5OIVAOEBGkABAAAAgfkABeSicwDhARpAAQAAAIX5AAfkwhkA4QEWBAEAAACG+QAH5CKaAOEBDCABAAAAh/kAB+SCZADhASBAAQAAAIX5AALk4hUA4QEgQAEAAACF+QAC5ELQAOEBGkABAAAAhfkABeRCOQDhARYEAQAAAIv5AAfkolAA4QEMIAEAAACM+QAH5MJgAOEBDCABAAAAjfkAB+SiUADhAQwgAQAAAI75AAfkoicA4QEaQAEAAACP+QAH5EIrAOEBGkABAAAAj/kABeSCMADhARpAAQAAAJH5AAfkwjAA4QEaQAEAAACR+QAF5CIeAOEBGkABAAAAk/kAB+RCOgDhARpAAQAAAJP5AAXkwhgA4QEMIAEAAACV+QAH5GIoAOEBGkABAAAAk/kABeTiFQDhARpAAQAAAJP5AAXkghcA4QEaQAEAAACY+QAH5OIZAOEBGkABAAAAmPkABeQCGgDhARpAAQAAAJj5AAXk4hUA4QEaQAEAAACY+QAF5AIZAOEBDCABAAAAnPkAB+TiGADhAQwgAQAAAJz5AAXkYhoA4QEMIAEAAACe+QAH5KKgAOEBDCABAAAAn/kAB+SiGADhARYEAQAAAKD5AAfkYjcA4QEMIAEAAACh+QAH5MIYAOEBHiABAAAAovkABuTCGQDhARYEAQAAAKP5AAfkwh4A4QEiBAEAAACk+QAG5KJ1AOEBDCABAAAApPkABeQCcwDhAQwgAQAAAKb5AAfk4hkA4QEaQAEAAACi+QAF5OIeAOEBDCABAAAAqPkAB+TCVgDhAQwgAQAAAKn5AAfk4hUA4QEeQAEAAACi+QAC5AIwAOEBGiABAAAAovkABeRiHgDhARYEAQAAAKz5AAfkAhkA4QEMIAEAAACt+QAH5IIhAOEBFgQBAAAArvkAB+QikADhARpAAQAAAK/5AAfkohgA4QEaQAEAAACv+QAF5OIVAOEBGkABAAAAr/kABeTCHADhARpAAQAAAK/5AAXkIiYA4QEeAAEAAACz+QAG5OIVAOEBDCABAAAAtPkAB+QCGQDhAQwgAQAAALv5AEfk4hgA4QEMIAEAAAC8+QBF5KInAOEBGkABAAAAvfkAR+SCJwDhARYEAQAAAL75AEfkQisA4QEaQAEAAAC/+QBF5OIVAOEBGkABAAAAwPkAReQCGQDhAQwgAQAAALv5AAfk4hgA4QEMIAEAAAC7+QAF5IIwAOEBGkABAAAAvfkAB+SiMADhASBAAQAAAL35AALkwjAA4QEaQAEAAAC9+QAF5OIVAOEBGkABAAAAvfkABeTCGADhARpAAQAAAMH5AAfkghcA4QEaQAEAAADC+QAH5AIZAOEBDCABAAAAw/kAB+TiGQDhARpAAQAAAMH5AAXk4hUA4QEaQAEAAADB+QAF5AIwAOEBGkABAAAAwfkABeQCLwDhAQwgAQAAAMf5AAfkAs8B2QEMIAEAAADI+QAH4gLXAQoCGTABAAAAy/kgBeMi1wEPAhkwASABAMv5EAXkItcBEQIZMAEAAQDL+QAF5OJMAOEBGkABAAAA3vkABeQCOgDhARpAAQAAAM35AAfk4hkA4QEaQAEAAADN+QAF5OIVAOEBGkABAAAAzfkABeQCMADhARpAAQAAAM35AAXkwkkA4QEeIAEAAADR+QAG5GIfAOEBGkABAAAA0fkABeSCHwDhAQwgAQAAANP5AAfk4hUA4QEaQAEAAADR+QAF5MJCAOEBDCABAAAA1fkAB+TiSQDhAR4gAQAAANH5AATkAm4A4QEWBAEAAADX+QAH5MIZAOEBFgQBAAAA2PkAB+QCGQDhAQwgAQAAANn5AAfkgigA4QEMIAEAAADa+QAH5GImAOEBDCABAAAA2/kAB+SCFwDhAR5AAQAAANz5AAbkAhkA4QEMIAEAAADd+QAH5KLAAeEBGkABAAAA3vkAB+TCGQDhARYEAQAAAN/5AAfk4hUA4QEaQAEAAADe+QAF5MIYAOEBDCABAAAA4fkAB+QiYwDhARpAAQAAAN75AAXkQmsA4QEeIAEAAADj+QAG5AJAAOEBGkABAAAA4/kABeTiFQDhARpAAQAAAOP5AAXkonUA4QEaQAEAAADj+QAF5AKgAOEBHiABAAAA5/kABuTCGQDhARYEAQAAAOj5AAfk4hkA4QEgQAEAAADn+QAC5MIoAOEBHAwBAAAA6vkAB+TiHgDhAQwgAQAAAOv5AAfk4hUA4QEeAAEAAADn+QAC5IKJAOEBHiABAAAA5/kABOTiOgDhAQwgAQAAAO75AAfkQuYA4QEaQAEAAADv+QAH5GIeAOEBIgABAAAA8PkABuQCQADhARpAAQAAAO/5AAXkwhgA4QEiAAEAAADy+QAG5MIgAOEBHAwBAAAA8/kAB+TiFQDhASAAAQAAAO/5AALkYjEA4QEcDAEAAAD1+QAH5EJ0AOEBGkABAAAA7/kABeTCGADhARpAAQAAAPf5AAfkIh4A4QEMIAEAAAD4+QAH5GIeAOEBFgQBAAAA+fkAB+TCIADhARwMAQAAAPr5AAfk4hUA4QEaQAEAAAD3+QAF5AIwAOEBGkABAAAA9/kABeTCwwDhARpAAQAAAP35AAfkAhkA4QEMIAEAAAD++QAH5OIYAOEBDCABAAAA/vkABeRiOgDhAQwgAQAAAAD6AAfkoikA4QEMIAEAAAAB+gAH5AIZAOEBDCABAAAAAvoAB+RiHADhARYEAQAAAAP6AAfkYhsA4QEMIAEAAAAE+gAH5IIhAOEBFgQBAAAABfoAB+SiJADhARwMAQAAAAb6AAfkYhsA4QEMIAEAAAAH+gAH5CIZAOEBGkABAAAACPoAB+RCKwDhARpAAQAAAAj6AAXk4hUA4QEeAAEAAAAI+gAC5GIkAOEBGkABAAAAC/oAB+QiNwDhARpAAQAAAAv6AAXkwjMA4QEaQAEAAAAN+gAH5EIgAOEBDCABAAAADvoAB+TCGQDhARYEAQAAAA/6AAfkQjoA4QEaQAEAAAAN+gAF5MIYAOEBDCABAAAAEfoAB+QCMADhAQwgAQAAABH6AAXkYigA4QEaQAEAAAAN+gAF5OIVAOEBHkABAAAADfoAAuRiHgDhARpAAQAAABX6AAfk4hUA4QEaQAEAAAAV+gAF5AIwAOEBGkABAAAAFfoABeTiYQDhAR4gAQAAABj6AAbk4hUA4QEaQAEAAAAY+gAF5CJjAOEBGiABAAAAGPoABeSiIwDhARpAAQAAABv6AAfkYhkA4QEaQAEAAAAb+gAF5MIjAOEBGkABAAAAG/oABeTiFQDhARpAAQAAABv6AAXkwhgA4QEMIAEAAAAf+gAH5OIyAOEBIAQBAAAAIPoABuQCGQDhAQwgAQAAACH6AAfkgjEA4QEaQAEAAAAk+gAF5CIgAOEBGkABAAAAJPoABeRiuADhARpAAQAAACT6AAXkYk0A4QEMIAEAAAAl+gAH5CJCAeEBDCABAAAAJfoABeSCFwDhARpAAQAAACf6AAfk4hkA4QEaQAEAAAAn+gAF5AIaAOEBGkABAAAAJ/oABeTiFQDhARpAAQAAACf6AAXkAhkA4QEMIAEAAAAr+gAH5IIxAOEBGkABAAAALvoABeQiIADhAR5AAQAAAC76AATkQm8A4QEeIAEAAAAu+gAG5OIVAOEBGkABAAAALvoABeQCOgDhARpAAQAAADD6AAfkgiQA4QEeIAEAAAAx+gAG5MIZAOEBFgQBAAAAMvoAB+TiOgDhAQwgAQAAADP6AAfk4hkA4QEgQAEAAAAx+gAC5MIoAOEBHAwBAAAANfoAB+TiHgDhAQwgAQAAADb6AAfkAioA4QEMIAEAAAA2+gAF5OIVAOEBHkABAAAAMfoAAuTCJADhAR4gAQAAADH6AATkwjQA4QEeAAEAAAA6+gAG5KKKAOEBFgQBAAAAO/oAB+RCKwDhARpAAQAAADr6AAXk4hUA4QEaQAEAAAA6+gAF5GKfAOEBGkABAAAAPvoAB+TiFQDhAQwgAQAAAD/6AAfkAhkA4QEeQAEAAABA+gAG5OIVAOEBDCABAAAAQfoAB+SiKQDhAQwgAQAAAEL6AAfkYhsA4QEaQAEAAABD+gAH5AIZAOEBDCABAAAARPoAB+SCtwDhARpAAQAAAEX6AAfkImAA4QEaQAEAAABF+gAF5OIZAOEBGkABAAAARfoABeTiFQDhARpAAQAAAEX6AAXkQtcB4QEMIAEAAABJ+gAH5GI/AOEBGkABAAAASvoAB+RCIADhAQwgAQAAAEv6AAfkwhkA4QEWBAEAAABM+gAH5IIiAOEBHAwBAAAATfoAB+QCGQDhAQwgAQAAAE76AAfkoiQA4QEcDAEAAABP+gAH5MIYAOEBGkABAAAAUPoAB+TCGQDhARYEAQAAAFH6AAfkAhkA4QEMIAEAAABS+gAH5MIXAOEBFgQBAAAAU/oAB+TiGADhAQwgAQAAAFL6AAXkgiEA4QEiIAEAAABV+gAG5IIWAOEBDCABAAAAVfoABeTiGQDhASBAAQAAAFD6AALk4hUA4QEaQAEAAABQ+gAF5AIwAOEBGkABAAAAUPoABeRiGwDhARpAAQAAAFr6AAfkgicA4QEgBAEAAABa+gAC5CIrAOEBDCABAAAAXPoAB+RCKwDhARpAAQAAAFr6AAXk4hUA4QEgAAEAAABa+gAC5AIZAOEBDCABAAAAX/oAB+SCIQDhARYEAQAAAGD6AAfk4kYA4QEMIAEAAABh+gAH5OI2AOEBHiABAAAAYvoABuQCbgDhAR4AAQAAAGP6AAbkQiUA4QEaQAEAAABj+gAF5OIVAOEBGkABAAAAY/oABeRiJQDhAR4AAQAAAGP6AATkAjoA4QEeQAEAAABn+gAG5OIZAOEBGkABAAAAZ/oABeTiFQDhAR4AAQAAAGf6AALkAjAA4QEeQAEAAABn+gAE5OIjAOEBDCABAAAAa/oAB+SiJwDhARpAAQAAAGz6AAfkQisA4QEaQAEAAABs+gAF5OIVAOEBGkABAAAAbPoABeSCMADhARpAAQAAAG/6AAfkAicA4QEeAAEAAABw+gAG5IJDAOEBDCABAAAAcfoAB+TCIwDhARpAAQAAAHD6AAXkoooA4QEWBAEAAABz+gAH5MIaAOEBHAwBAAAAdPoAB+TiFQDhARpAAQAAAHD6AAXkghcA4QEuAAEAAAB2+gAG5AIaAOEBGkABAAAAdvoABeTiFQDhARpAAQAAAHb6AAXkAhkA4QEMIAEAAAB5+gAH5GIbAOEBGkABAAAAevoAB+RCKwDhARpAAQAAAHr6AAXk4hUA4QEaQAEAAAB6+gAF5KIcAOEBGkABAAAAffoAB+RCOgDhARpAAQAAAH36AAXkokAA4QEMIAEAAAB/+gAH5GIoAOEBGkABAAAAffoABeRCIADhAQwgAQAAAIH6AAfkwhkA4QEWBAEAAACC+gAH5IIiAOEBHAwBAAAAg/oAB+TiFQDhARpAAQAAAH36AAXkAhkA4QEMIAEAAACF+gAH5OIYAOEBDCABAAAAhfoABeSCIQDhARYEAQAAAIf6AAfkAl0A4QEeAAEAAACI+gAG5AJCAOEBDCABAAAAifoAB+SiJQDhARpAAQAAAIr6AAfkgikA4QEMIAEAAACL+gAH5IIWAOEBGkABAAAAivoABeTiFQDhASAAAQAAAIr6AALkYjEA4QEcDAEAAACO+gAH4mLXAU4CGTABAAAAkfogBeOC1wFTAhkwAQAAAJH6EAXkgtcBGQIZMAEAAACR+gAF5EI4AOEBDCABAAAAkvoAB+RCHQDhASIEAQAAAJP6AAbjAiUA5wEYMAEAAACU+hAF5AIlAOEBDCABBQAAlfoAB+SCTQDhASIAAQAAAJb6AAbk4iEA4QEMIAEAAACX+gAH5KJNAOEBDCABAAAAlvoABeQCGQDhAQwgAQAAAJn6AAfjQi0A5wEYMAEAAACa+hAF5EItAOEBDCABAAAAlfoABeSiIwDhARpAAQAAAJz6AAfkwiMA4QEaQAEAAACc+gAF5OIVAOEBHgABAAAAnPoAAuSCFwDhARpAAQAAAJ/6AAfkAhoA4QEaQAEAAACf+gAF5OIVAOEBGkABAAAAn/oABeQCGQDhAQwgAQAAAKL6AAfkgiEA4QEWBAEAAACj+gAH5IJwAeEBGkABAAAApPoAB+QiHgDhAQwgAQAAAKX6AAfkYh4A4QEWBAEAAACm+gAH5EKaAOEBHgABAAAAp/oABuSCJwDhARpAAQAAAKf6AAXkQisA4QEaQAEAAACn+gAF5OIVAOEBGkABAAAAp/oABeQCGQDhAQwgAQAAAKv6AAfkgiEA4QEWBAEAAACs+gAH5KIkAOEBHAwBAAAArfoAB+RiGwDhAQwgAQAAAK76AAfkIhkA4QEeIAEAAACv+gAG5IInAOEBGkABAAAAr/oABeRCKwDhARogAQAAAK/6AAXk4hUA4QEaQAEAAACv+gAF5EIgAOEBDCABAAAAs/oAB+TCGQDhARYEAQAAALT6AAfkgiIA4QEcDAEAAAC1+gAH5AIZAOEBDCABAAAAtvoAB+TiGADhAQwgAQAAALb6AAXkIikA4QEeAAEAAAC4+gAG5OIZAOEBGkABAAAAuPoABeTCKADhARwMAQAAALr6AAfkwkoA4QEeIAEAAAC7+gAG5OIZAOEBIEABAAAAu/oAAuTiHgDhAQwgAQAAAL36AAfk4hUA4QEaQAEAAAC7+gAF5KI9AOEBDCABAAAAu/oABeQirwDhAQwgAQAAAMD6AAfkYjoA4QEaQAEAAADB+gAH5GIfAOEBIEABAAAAwfoAAuTCGADhAQwgAQAAAMP6AAfkAjAA4QEMIAEAAADD+gAF5AIhAOEBGkABAAAAwfoABeTiFQDhARpAAQAAAMH6AAXkYjcA4QEiBAEAAADH+gAG5GIbAOEBDCABAAAAyPoAB+QCGQDhAR4AAQAAAMn6AAbkohgA4QEaQAEAAADJ+gAF5OIYAOEBHgABAAAAyfoABOTCHgDhAQwgAQAAAMz6AAfkYjcA4QEaQAEAAADN+gAH5AIaAOEBGkABAAAAzfoABeQiQADhARpAAQAAAM/6AAfk4hUA4QEaQAEAAADP+gAF5IJFAOEBGkABAAAAz/oABeTCMwDhAQwgAQAAANL6AAfkgksA4QEMIAEAAADT+gAH5MIxAOEBDCABAAAAcvQABeTCQAHhAR4gAQAAANX6AAbk4hUA4QEaQAEAAADV+gAF5OJAAeEBDCABAAAA1foABeTCXADhAQwgAQAAANj6AAfkwlwA4QEaQAEAAADZ+gAH5AJYAOEBGkABAAAA2foABeTiFQDhARpAAQAAANn6AAXkYm8A4QEaQAEAAADc+gAH5AJAAOEBGkABAAAA3PoABeQCWADhARpAAQAAANz6AAXk4hUA4QEaQAEAAADc+gAF5IJrAOEBGkABAAAA4PoAB+TCGQDhARYEAQAAAOH6AAfkQiUA4QEaQAEAAADg+gAF5OIVAOEBGkABAAAA4PoABeRiJQDhARpAAQAAAOD6AAXkAhkA4QEMIAEAAADl+gAH5KJFAOEBDCABAAAA5voAB+RiGgDhAQwgAQAAAOf6AAfkApgA4QEeIAEAAADo+gAG5CIzAOEBIAABAAAA6PoAAuQiiADhAQwgAQAAAOr6AAfkAioA4QEMIAEAAADq+gAF5EIzAOEBGkABAAAA6PoABeTiFQDhARpAAQAAAOj6AAXkQmsA4QEaQAEAAADu+gAH5OIVAOEBGkABAAAA7voABeSidQDhARpAAQAAAO76AAXkgoUA4QEeIAEAAADx+gAG5GIZAOEBGkABAAAA8foABeSCQwDhAQwgAQAAAPP6AAfkAioA4QEMIAEAAADz+gAF5MIjAOEBGkABAAAA8foABeTiFQDhARpAAQAAAPH6AAXkAqAA4QEaQAEAAAD3+gAH5OIVAOEBGkABAAAA9/oABeSCiQDhARpAAQAAAPf6AAXkYiMA4QEMIAEAAAD6+gAH5IIjAOEBDCABAAAA+voABeSiIADhARpAAQAAAPz6AAfk4hUA4QEaQAEAAAD8+gAF5AIZAOEBDCABAAAA/voAB+QCHQDhARpAAQAAAPz6AAXk4qEA4QEMIAEAAAAA+wAH5KJSAOEBGkABAAAAAfsAB+TiFQDhARpAAQAAAAH7AAXkwrAA4QEaQAEAAAAB+wAF5OJpAOEBGkABAAAABPsAB+TiFQDhARpAAQAAAAT7AAXk4oEA4QEaQAEAAAAE+wAF5CIeAOEBDCABAAAAB/sAB+TCGQDhARpAAQAAAAj7AAfkAlgA4QEaQAEAAAAI+wAF5OIVAOEBGkABAAAACPsABeTCGADhARpAAQAAAAv7AAfk4hkA4QEaQAEAAAAL+wAF5KKKAOEBFgQBAAAADfsAB+TCGgDhARwMAQAAAA77AAfk4hUA4QEaQAEAAAAL+wAF5MIYAOEBDCABAAAAEPsAB+QCMADhARpAAQAAAAv7AAXkYiQA4QEMIAEAAAAS+wAH5AIZAOEBDCABAAAAE/sAB+TiGADhAQwgAQAAABP7AAXk4uYA4QEeIAEAAAAV+wAG5GIpAOEBIEABAAAAFfsAAuTCKADhARwMAQAAABf7AAfkghYA4QEeIAEAAAAV+wAG5OIVAOEBGkABAAAAFfsABeRiIADhAQwgAQAAABr7AAfkghoA4QEMIAEAAAAb+wAH5OJJAOEBDCABAAAAG/sABeRCkQDhAR4gAQAAAB37AAbkYpEA4QEaQAEAAAAd+wAF5OIVAOEBGkABAAAAHfsABeQirADhARpAAQAAACD7AAfkAkAA4QEWBAEAAAAh+wAH5MIYAOEBDCABAAAAIvsAB+QCWADhARpAAQAAACD7AAXkwsAB4QEaQAEAAAAk+wAH5EJNAOEBDCABAAAAJfsAB+TiTwDhARpAAQAAACb7AAfkYlYA4QEaQAEAAAAm+wAF5OJ/AOEBGkABAAAAJvsABeTiFQDhARpAAQAAACb7AAXkIi0A4QEaQAEAAAAq+wAH5MIYAOEBDCABAAAAK/sAB+TCTADhARpAAQAAACz7AAfkYssA4QEMIAEAAAAt+wAH5AKiAOEBHiABAAAALvsABuQCQADhARpAAQAAAC77AAXkAlgA4QEaQAEAAAAu+wAF5OIVAOEBHgABAAAALvsAAuSicQDhAQwgAQAAADL7AAfkwh8A4QEaQAEAAAAz+wAH5EIlAOEBGkABAAAAM/sABeQiHgDhAQwgAQAAADX7AAfkYigA4QEMIAEAAAA1+wAF5EIeAOEBDCABAAAAN/sAB+TCGADhASIgAQAAADj7AAbkohoA4QEWBAEAAAA5+wAH5MIaAOEBHAwBAAAAOvsAB+QCMADhAQwgAQAAADj7AAXk4h8A4QEaQAEAAAAz+wAF5OIVAOEBGkABAAAAM/sABeTiFQHhAQwgAQAAAET7AAXkIjAA4QEiBAEAAAA/+wAG5KJ1AOEBDCABAAAAP/sABeRiIgDhARYEAQAAAEH7AAfk4iQB4QEMIAEAAABC+wAH5EIzAOEBDCABAAAAQvsABeTiAgHhAQwgAQAAAET7AAfkQkUA4QEaQAEAAABF+wAH5AJXAOEBGkABAAAARfsABeTiXwDhARpAAQAAAEf7AAfkAhkA4QEMIAEAAABI+wAH5KIYAOEBGkABAAAAR/sABeTCKADhARwMAQAAAEr7AAfk4hUA4QEaQAEAAABH+wAF5IKRAOEBGkABAAAAR/sABeRCOADhARpAAQAAAE37AAfkIh4A4QEMIAEAAABO+wAH5EIeAOEBDCABAAAAT/sAB+TCGADhARYEAQAAAFD7AAfkwj0A4QEMIAEAAABR+wAH5IIXAOEBGkABAAAAUvsAB+TiGQDhARYEAQAAAFP7AAfkIlcA4QEWBAEAAABU+wAH5CIuAOEBDCABAAAAVfsAB+RiHADhARYEAQAAAFb7AAfkQsEA4QEWBAEAAABX+wAH5GIgAOEBGkABAAAAWPsAB+QiHgDhAQwgAQAAAFn7AAfkYh4A4QEWBAEAAABa+wAH5OIZAOEBGkABAAAAWPsABeTiHgDhAQwgAQAAAFz7AAfkwhkA4QEWBAEAAABd+wAH5OIVAOEBGkABAAAAWPsABeSCIQDhARYEAQAAAF/7AAfkQiAA4QEMIAEAAABg+wAH5GIbAOEBFgQBAAAAYfsAB+RiGgDhAQwgAQAAAGL7AAfkoj0A4QEaQAEAAABY+wAF5GKfAOEBGkABAAAAZPsABeTCMgDhARpAAQAAAGT7AAXk4hUA4QEaQAEAAABk+wAF5IIwAOEBGkABAAAAZ/sAB+TCMADhARpAAQAAAGf7AAXk4hUA4QEaQAEAAABn+wAF5IImAOEBGkABAAAAavsAB+TiJgDhARpAAQAAAGr7AAXkIm4A4QEaQAEAAABs+wAH5AJYAOEBGkABAAAAbPsABeQiKQDhARYEAQAAAG77AAfkoiQA4QEcDAEAAABv+wAH5GIbAOEBDCABAAAAcPsAB+QCGQDhAQwgAQAAAHH7AAfk4hgA4QEMIAEAAABx+wAF5MIZAOEBFgQBAAAAc/sAB+RCKQDhAR5AAQAAAHT7AAbkYikA4QEgQAEAAAB0+wAC5MIYAOEBDCABAAAAdvsAB+SCFgDhARpAAQAAAHT7AAXk4hUA4QEeQAEAAAB0+wAC5CIeAOEBDCABAAAAefsAB+RiHgDhARYEAQAAAHr7AAfkghcA4QEaQAEAAAB7+wAH5OIZAOEBGkABAAAAe/sABeQCGgDhARpAAQAAAHv7AAXk4hUA4QEgAAEAAAB7+wAC5GIaAOEBDCABAAAAf/sAB+TCKQDhARpAAQAAAID7AAfk4mMA4QEMIAEAAACB+wAH5KI7AOEBDCABAAAAgvsAB+QCGQDhAQwgAQAAAIP7AAfkgiQA4QEeIAEAAACE+wAG5OIVAOEBGkABAAAAhPsABeTCJADhAR4gAQAAAIT7AATkIiUA4QEaQAEAAACH+wAH5OIVAOEBFgQBAAAAiPsAB+RiMQDhARwMAQAAAIn7AAfkYiUA4QEaQAEAAACH+wAF5IJWAOEBDCABAAAAi/sAB+SiigDhARYEAQAAAIz7AAfkwhoA4QEcDAEAAACN+wAH5GIbAOEBDCABAAAAjvsAB+RiGwDhARYEAQAAAI/7AAfkYigA4QEMIAEAAACL+wAF5KIgAOEBHiABAAAAkfsABuRCIADhAQwgAQAAAJL7AAfkwhkA4QEWBAEAAACT+wAH5IIiAOEBHAwBAAAAlPsAB+TiGQDhASBAAQAAAJH7AALk4h4A4QEMIAEAAACW+wAH5KKKAOEBFgQBAAAAl/sAB+TCGgDhARwMAQAAAJj7AAfkYhsA4QEMIAEAAACZ+wAH5OIVAOEBGkABAAAAkfsABeSCIQDhARYEAQAAAJv7AAfkoiQA4QEcDAEAAACc+wAH5AIdAOEBHkABAAAAkfsABuQCGQDhAQwgAQAAAJ77AAfkYhoA4QEMIAEAAACf+wAH5KIpAOEBFgQBAAAAoPsAB+RiOgDhARpAAQAAAKH7AAfkAiEA4QEaQAEAAACh+wAF5OIVAOEBGkABAAAAofsABeRiNwDhAR4gAQAAAKT7AAbkAhoA4QEaQAEAAACk+wAF5GI/AOEBGkABAAAApvsAB+QiHgDhAQwgAQAAAKf7AAfkQh4A4QEMIAEAAACo+wAH5MIYAOEBFgQBAAAAqfsAB+TCIADhARwMAQAAAKr7AAfkYiUA4QEaQAEAAACm+wAF5AIoAOEBGkABAAAArPsAB+RCJQDhARpAAQAAAKz7AAXkwhgA4QEiIAEAAACu+wAG5AIwAOEBDCABAAAArvsABeQiJgDhAQwgAQAAALD7AAfkAioA4QEMIAEAAACw+wAF5OIVAOEBGkABAAAArPsABeRiJQDhARpAAQAAAKz7AAXkYosB4QEMIAEAAAC++wAF5AK8AOEBDCABAAAAtfsAB+RCKwDhAQwgAQAAALX7AAXkIiAA4QEMIAEAAAC4+wAF5EIgAOEBDCABAAAAuPsAB+TCGQDhARYEAQAAALn7AAfkYhsA4QEMIAEAAAC6+wAH5IIiAOEBHAwBAAAAu/sAB+SCIQDhARYEAQAAALz7AAfkYhsA4QEMIAEAAAC9+wAH5AIkAOEBDCABAAAAvvsABeTCSgDhAR4gAQAAAL/7AAbkQn8A4QEaQAEAAADA+wAH5OIZAOEBGkABAAAAwPsABeTiFQDhARpAAQAAAMD7AAXkwiQA4QEaQAEAAADA+wAF5IIXAOEBGkABAAAAxPsAB+TiGQDhARpAAQAAAMT7AAXkwhgA4QEMIAEAAADG+wAH5AIaAOEBGkABAAAAxPsABeTiFQDhARpAAQAAAMT7AAXkYh4A4QEMIAEAAADJ+wAH5OIeAOEBDCABAAAAyvsAB+QCMADhAQwgAQAAAMn7AAXkQjIA4QEMIAEAAADM+wAH5OIZAOEBIAABAAAAv/sAAuTiHgDhAQwgAQAAAM77AAfkoooA4QEWBAEAAADP+wAH5MIaAOEBHAwBAAAA0PsAB+RiGwDhAQwgAQAAANH7AAfkwosA4QEMIAEAAADS+wAH5OIVAOEBGkABAAAAv/sABeQiKQDhARpAAQAAANT7AAfkAhkA4QEMIAEAAADV+wAH5IIhAOEBFgQBAAAA1vsAB+SiJADhARwMAQAAANf7AAfkYhsA4QEMIAEAAADY+wAH5GIbAOEBFgQBAAAA2fsAB+SiKgDhARwMAQAAANr7AAfkYhsA4QEMIAEAAADb+wAH5AJPAOEBGkABAAAA3PsAB+TiFQDhARpAAQAAANz7AAXkImUA4QEaQAEAAADc+wAF5AIZAOEBDCABAAAA3/sAB+SCIQDhASIAAQAAAOD7AAbkgkQA4QEaQAEAAADh+wAH5GIfAOEBGkABAAAA4fsABeSCHwDhAQwgAQAAAOP7AAfkAiEA4QEaQAEAAADh+wAF5EKDAOEBDCABAAAA5fsAB+TiFQDhARpAAQAAAOH7AAXkQioA4QEaQAEAAADn+wAH5KIYAOEBIAQBAAAA5/sAAuRiKgDhAQwgAQAAAOn7AAfk4hUA4QEaQAEAAADn+wAF5IIqAOEBGkABAAAA5/sABeQCOgDhAQwgAQAAAOz7AAfkAjAA4QEMIAEAAADs+wAF5II1AOEBGkABAAAA7vsAB+TCHADhARpAAQAAAO77AAXkwj8A4QEaQAEAAADw+wAH5OIZAOEBIEABAAAA8PsAAuTiFQDhASBAAQAAAPD7AALkAhkA4QEMIAEAAADz+wAH5OIYAOEBDCABAAAA8/sABeSCIQDhARYEAQAAAPX7AAfkoiQA4QEcDAEAAAD2+wAH5GIbAOEBDCABAAAA9/sAB+QCHQDhARpAAQAAAPD7AAXkIiIA4QEMIAEAAAD5+wAH5OIgAOEBGkABAAAA+vsAB+RiHwDhARpAAQAAAPr7AAXkAiEA4QEaQAEAAAD6+wAF5OIVAOEBHiABAAAA+vsAAOSiPQDhARpAAQAAAL/7AAXkwnUA4QEaQAEAAAD/+wAH5AJJAOEBGkABAAAA//sABeRCQwDhARpAAQAAAAH8AAfkwjIA4QEaQAEAAAAB/AAF5OJFAOEBHiABAAAAA/wABuRiHgDhASIAAQAAAAT8AAbk4hkA4QEaQAEAAAAD/AAF5OIVAOEBGkABAAAAA/wABeRCRgDhAR4gAQAAAAP8AATk4pEA4QEeQAEAAAAI/AAG5EIxAOEBGkABAAAACPwABeQCSQDhARpAAQAAAAj8AAXk4hUA4QEaQAEAAAAI/AAF5AIZAOEBDCABAAAADPwAB+RiJADhARYEAQAAAA38AAfkwjMA4QEaQAEAAAAO/AAH5EI6AOEBGkABAAAADvwABeRiKADhARpAAQAAAA78AAXk4hUA4QEaQAEAAAAO/AAF5KKVAOEBGkABAAAAEvwAB+QiHgDhAQwgAQAAABP8AAfkwhgA4QEWBAEAAAAU/AAH5KIgAOEBGkABAAAAFfwAB+TiGQDhARpAAQAAABX8AAXk4hUA4QEaQAEAAAAV/AAF5AIZAOEBDCABAAAAGPwAB+QCHQDhARpAAQAAABX8AAXkIgMB4QEMIAEAAAAa/AAH5IIXAOEBGkABAAAAG/wAB+TiGQDhARYEAQAAABz8AAfkAhoA4QEaQAEAAAAb/AAF5OIVAOEBGkABAAAAG/wABeQCGQDhAQwgAQAAAB/8AAfkYhoA4QEMIAEAAAAg/AAH5GI/AOEBGkABAAAAIfwAB+TiFQDhARpAAQAAACH8AAXkYiUA4QEaQAEAAAAh/AAF5AIZAOEBDCABAAAAJPwAB+RCVADZARpAAQAAACX8AAfkYlEA4QFEBAEAAAAm/AAG5EIoAOEBDCABAAAAJ/wAB+QCKgDhAQwgAQAAACf8AAXk4hUA4QEeIAEAAAAm/AAC5MJUAOEBGkABAAAAJvwABeRCKgDhARpAAQAAACv8AAfkohgA4QEgQAEAAAAr/AAC5GIqAOEBDCABAAAALfwAB+TiFQDhARpAAQAAACv8AAXkgioA4QEaQAEAAAAr/AAF5OJVAOEBHgABAAAAMPwABuTCmgDhARpAAQAAADD8AAXk4hUA4QEeQAEAAAAw/AAC5IIXAOEBGkABAAAAM/wAB+QCGgDhARpAAQAAADP8AAXk4hUA4QEaQAEAAAAz/AAF5AIZAOEBDCABAAAANvwAB+SCIQDhARYEAQAAADf8AAfkYhoA4QEMIAEAAAA4/AAH5KIpAOEBFgQBAAAAOfwAB+QCIwDhAR5AAQAAADr8AAbkYh4A4QEMIAEAAAA7/AAH5AIZAOEBDCABAAAAPPwAB+RCJQDhASIEAQAAAD38AAbkwhgA4QEMIAEAAAA+/AAH5OIVAOEBGkABAAAAOvwABeQCMgDhARpAAQAAADr8AAXkIqEA4QEeAAEAAABB/AAG5OIVAOEBGkABAAAAQfwABeTiMgDhAQwgAQAAAEP8AAfk4mkA4QEaQAEAAABE/AAH5OIVAOEBGkABAAAARPwABeTigQDhARpAAQAAAET8AAXk4nkA4QEMIAEAAABH/AAH5AIZAOEBDCABAAAASPwAB+SCIQDhARYEAQAAAEn8AAfkoiQA4QEcDAEAAABK/AAH5GIbAOEBDCABAAAAS/wAB+RCIADhAQwgAQAAAEz8AAfk4rcA4QEeQAEAAABN/AAG5OIVAOEBGkABAAAATfwABeSCpwDhARpAAQAAAE38AAXkYkYA4QEMIAEAAABD/AAF5AIYAeEBDCABAAAAUvwABeRiHQDhAQwgAQAAAFL8AAXkIh4A4QEMIAEAAABT/AAH5MIYAOEBFgQBAAAAVPwAB+TCIADhARwMAQAAAFX8AAfkQlcA4QEaQAEAAABW/AAH5CJ9AOEBDCABAAAAV/wAB+QCNQDhAQwgAQAAAF78AAXkAjQA4QEWBAEAAABZ/AAH5IIXAOEBIAABAAAAWvwABuQCGQDhAQwgAQAAAFv8AAfkYm8A4QEMIAEAAABc/AAH5AIuAOEBDCABAAAAXfwAB+QiNQDhAQwgAQAAAF78AAfk4pYA4QEaQAEAAABf/AAH5IJRAOEBDCABAAAAYPwAB+QCNQDhAQwgAQAAAGL8AAXkIjUA4QEMIAEAAABi/AAF5EJoAOEBDCABAAAAYPwABeTCFwDhASIAAQAAAGT8AAbkYjYA4QEMIAEAAABl/AAH5EIaAOEBDCABAAAAZvwAB+RCLgDhAQwgAQAAAGf8AAfk4mMA4QEMIAEAAABo/AAH5CJBAOEBDCABAAAAafwAB+RCmQDhAQwgAQAAAGr8AAfkYjoA4QEaQAEAAABr/AAH5GIfAOEBIAQBAAAAa/wAAuSCUgDhAQwgAQAAAG38AAfkoigA4QEMIAEAAABt/AAF5MIYAOEBDCABAAAAb/wAB+QCIQDhARpAAQAAAGv8AAXk4hUA4QEgQAEAAABr/AAC5KKyAOEBGkABAAAAcvwAB+TiFQDhARpAAQAAAHL8AAXk4uUA4QEaQAEAAABy/AAF5IIkAOEBHgABAAAAdfwABuTiFQDhARpAAQAAAHX8AAXkwiQA4QEaIAEAAAB1/AAF5OKZAOEBGkABAAAAePwAB+TiFQDhARpAAQAAAHj8AAXkwjMA4QEaQAEAAAB6/AAH5EI6AOEBGkABAAAAevwABeRiKADhARpAAQAAAHr8AAXk4hUA4QEaQAEAAAB6/AAF5EImAOEBGkABAAAAfvwAB+TCGQDhARYEAQAAAH/8AAfk4hkA4QEgQAEAAAB+/AAC5EI4AOEBFgQBAAAAgfwAB+TiFQDhARpAAQAAAH78AAXkAhkA4QEMIAEAAACD/AAH5GIaAOEBDCABAAAAhPwAB+QCHQDhARpAAQAAAH78AAXkQioA4QEaQAEAAACG/AAH5OIVAOEBHgABAAAAhvwAAuSCKgDhARpAAQAAAIb8AAXkQiQA4QEWBAEAAACJ/AAH5IIXAOEBGkABAAAAivwAB+QCGgDhARpAAQAAAIr8AAXkQkMA4QEaQAEAAACM/AAH5MIyAOEBGkABAAAAjPwABeTiGQDhARpAAQAAAIz8AAXk4hUA4QEaQAEAAACM/AAF5CJAAOEBHgABAAAAkPwABuTiFQDhARpAAQAAAJD8AAXkgkUA4QEeAAEAAACQ/AAE5AKgAOEBHiABAAAAk/wABuRiHgDhAQwgAQAAAJT8AAfk4hkA4QEeQAEAAACT/AAC5OIVAOEBGkABAAAAk/wABeSCiQDhAR4gAQAAAJP8AATkIqAA4QEaQAEAAACY/AAH5MIjAOEBGkABAAAAmPwABeTiFQDhARpAAQAAAJj8AAXkwhgA4QEMIAEAAACb/AAH5KIaAOEBDCABAAAAnPwAB+QCGQDhAQwgAQAAAJ38AAfkgiEA4QEWBAEAAACe/AAH5KIpAOEBFgQBAAAAn/wAB+SCMQDhARpAAQAAAMj8AAXkIiAA4QEaQAEAAADI/AAF5MIZAOEBFgQBAAAAovwAB+QCQgDhAQwgAQAAAKP8AAfk4jYA4QEaQAEAAACk/AAH5GIpAOEBGkABAAAApPwABeSCKQDhAQwgAQAAAKb8AAfkghYA4QEaQAEAAACk/AAF5OIVAOEBGkABAAAApPwABeSCvQDhASIAAQAAAKn8AAbkgiEA4QEWBAEAAACq/AAH5KIkAOEBHAwBAAAAq/wAB+RisgDhAR5AAQAAAKz8AAbkwjIA4QEMIAEAAACs/AAF5OIZAOEBGkABAAAArPwABeTiFQDhARogAQAAAKz8AAXkAhkA4QEMIAEAAACw/AAH5GL2AOEBIAABAAAAsfwABuSCSgDhARYEAQAAALL8AAfkAhkA4QEMIAEAAACz/AAH5AImAOEBIAABAAAAtPwABuTiHwDhARpAAQAAALT8AAXkYhsA4QEaQAEAAAC2/AAH5EIrAOEBGkABAAAAtvwABeQCGQDhAQwgAQAAALj8AAfkgiEA4QEWBAEAAAC5/AAH5MI7AOEBDCABAAAAuvwAB+SiqgDhAQwgAQAAALv8AAfkYjMA4QEWBAEAAAC8/AAH5KIgAOEBHiABAAAAvfwABuQCGQDhAQwgAQAAAL78AAfkgiEA4QEiBAEAAAC//AAG5KIkAOEBHAwBAAAAwPwAB+RCogDhARYEAQAAAMH8AAfkAhkA4QEMIAEAAADC/AAH5IJGAOEBGkABAAAAw/wAB+QCPgDhAQwgAQAAAMT8AAfkAi8A4QEMIAEAAADF/AAH5EIrAOEBDCABAAAAxfwABeQCGQDhAQwgAQAAAMf8AAfkAjgA4QEaQAEAAADI/AAH5OIVAOEBGkABAAAAyPwABeSCUQDhAQwgAQAAAMr8AAfk4hkA4QEaQAEAAAAl/AAF5OIVAOEBGkABAAAAJfwABeRCQgDhAR4gAQAAAM38AAbkwhkA4QEWBAEAAADO/AAH5KIYAOEBGkABAAAAzfwABeTiFQDhASBAAQAAAM38AALkYkIA4QEeIAEAAADN/AAE5CKyAOEBHkABAAAA0vwABOQCGQDhAQwgAQAAANP8AAfkgjEA4QEaQAEAAADW/AAF5CIgAOEBGkABAAAA1vwABeTCNQDhARpAAQAAANb8AAfk4hUA4QEaQAEAAADW/AAF5AIZAOEBDCABAAAA2PwAB+TiGADhAQwgAQAAANj8AAXkYjcA4QEaQAEAAADa/AAH5OIZAOEBGkABAAAA2vwABeQCGgDhARpAAQAAANr8AAXk4hUA4QEaQAEAAADa/AAF5OJVAOEBDCABAAAA3vwAB+TCGQDhARYEAQAAAN/8AAfkwioA4QEaQAEAAADg/AAH5IInAOEBGkABAAAA4PwABeRCKwDhARpAAQAAAOD8AAXk4hUA4QEaQAEAAADg/AAF5KLXAdkBHgABAAAA5PwABuQCGQDhAQwgAQAAAOX8AAfkQsMA4QEaQAEAAADm/AAH5CIzAOEBGkABAAAA5vwABeRCMwDhARpAAQAAAOb8AAXkQhgA4QEaQAEAAADp/AAH5GJWAOEBGkABAAAA6fwABeTiFQDhARpAAQAAAOn8AAXkgtYA4QEaQAEAAADp/AAF5EJrAOEBGkABAAAA7fwAB+QCQADhARpAAQAAAO38AAXk4hUA4QEgBAEAAADt/AAC5KJ1AOEBGkABAAAA7fwABeRCaQDhAQwgAQAAAPH8AAfkIrgA4QEeQAEAAADy/AAG5AIZAOEBDCABAAAA8/wAB+TiGADhAQwgAQAAAPP8AAXkoikA4QEWBAEAAAD1/AAH5AJAAOEBGkABAAAA8vwABeRCKADhAQwgAQAAAPf8AAfkAioA4QEMIAEAAAD3/AAF5OIVAOEBGkABAAAA8vwABeQCQADhARpAAQAAAPb8AEXkQigA4QEMIAEAAAD3/ABH5AIqAOEBDCABAAAA+PwAReTiFQDhARpAAQAAAPn8AEXkYncA4QEMIAEAAAD+/AAH5EJ0AOEBHiABAAAA8vwABORiHgDhASIAAQAAAAD9AAbkYosA4QEeIAEAAAAB/QAG5KKKAOEBFgQBAAAAAv0AB+TCGgDhARwMAQAAAAP9AAfkQpkA4QEMIAEAAAAE/QAH5CKIAOEBDCABAAAABf0AB+RCMwDhAQwgAQAAAAT9AAXkIh4A4QEMIAEAAAAH/QAH5GIeAOEBFgQBAAAACP0AB+SCFwDhARpAAQAAAAn9AAfk4hkA4QEaQAEAAAAJ/QAF5AIaAOEBGkABAAAACf0ABeTiFQDhASBAAQAAAAn9AALkAhkA4QEMIAEAAAAN/QAH5IIhAOEBFgQBAAAADv0AB+RiGADhARpAAQAAAA/9AAfkYh8A4QEWBAEAAAAQ/QAH5CIeAOEBHiABAAAAEf0ABuRiPwDhARYEAQAAABL9AAfkwhgA4QEWBAEAAAAT/QAH5KIaAOEBFgQBAAAAFP0AB+TCGgDhARwMAQAAABX9AAfkwiAA4QEcDAEAAAAW/QAH5AIhAOEBGkABAAAAD/0ABeRiSADhAQwgAQAAABj9AAfk4hUA4QEaQAEAAAAP/QAF5AIqAOEBDCABAAAAGv0AB+TiIwDhAQwgAQAAABv9AAfkYjMA4QEuQAEAAAAc/QAG5IInAOEBIEABAAAAHP0AAuSiJADhARwMAQAAAB79AAfkQisA4QEaQAEAAAAc/QAF5EIgAOEBDCABAAAAIP0AB+TCGQDhASIEAQAAACH9AAbkgiIA4QEcDAEAAAAi/QAH5OIVAOEBGkABAAAAHP0ABeQCGQDhAQwgAQAAACT9AAfkYiIA4QEWBAEAAAAl/QAH5GIqAOEBDCABAAAAJv0AB+RiIADhAQwgAQAAACf9AAfkgiEA4QEWBAEAAAAo/QAH5IJGAOEBGkABAAAAKf0AB+TiGQDhARpAAQAAACn9AAXkwhkA4QEWBAEAAAAr/QAH5OIVAOEBLgABAAAAKf0AAuTCJADhARpAAQAAACn9AAXkAkYA4QEMIAEAAAAu/QAH5ALQAOEBGkABAAAAL/0AB+TCGADhAQwgAQAAADD9AAfkwhgA4QEMIAEAAAAx/QAH5GKRAOEBGkABAAAAL/0ABeTiGQDhARpAAQAAAC/9AAXk4hUA4QEaQAEAAAAv/QAF5EJ0AeEBHiABAAAANf0ABuSCZADhARpAAQAAADX9AAXk4ngA4QEMIAEAAAA3/QAH5AIqAOEBDCABAAAAN/0ABeTiFQDhARpAAQAAADX9AAXkQtAA4QEeIAEAAAA1/QAE5EI4AOEBGkABAAAAO/0AB+TCGADhAQwgAQAAADz9AAfk4iMA4QEMIAEAAAA9/QAH5KInAOEBHkABAAAAPv0ABuSCJwDhASBAAQAAAD79AALkIisA4QEMIAEAAABA/QAH5EIrAOEBGkABAAAAPv0ABeTiFQDhAR5AAQAAAD79AALkAhkA4QEMIAEAAABD/QAH5OIhAOEBDCABAAAARP0AB+RiIADhAQwgAQAAAEX9AAfk4hgA4QEMIAEAAABD/QAF5GKfAOEBGkABAAAAR/0AB+TiGQDhARpAAQAAAEf9AAXk4hUA4QEaQAEAAABH/QAF5MIyAOEBGkABAAAAR/0ABeQCGQDhAQwgAQAAAEv9AAfkoicA4QEaQAEAAABR/QBH5IInAOEBFgQBAAAAUv0AR+RCKwDhARpAAQAAAFP9AEXk4hUA4QEWBAEAAABU/QBH5AIZAOEBDAQBAAAAUP0AB+SCMADhARpAAQAAAFH9AAfkojAA4QEWBAEAAABS/QAH5MIwAOEBGkABAAAAUf0ABeTiFQDhASBAAQAAAFH9AALkAkIA4QEMIAEAAABV/QAH5OIhAOEBDCABAAAAVv0AB+RiIADhAQwgAQAAAFf9AAfkIhoA4QEWBAEAAABY/QAH5IIhAOEBGkABAAAAWf0AB+RiKQDhASBAAQAAAFn9AALkghYA4QEaQAEAAABZ/QAF5AIZAOEBDCABAAAAXP0AB+SCMQDhARpAAQAAAF/9AAXkIiAA4QEaQAEAAABf/QAF5MI1AOEBGkABAAAAX/0AB+TiFQDhARpAAQAAAF/9AAXk4hUA4QEgQAEAAABZ/QAC5MIZAOEBFgQBAAAAYv0AB+QCGQDhAQwgAQAAAGP9AAfkwhkA4QEWBAEAAABk/QAH5EKMAOEBHkABAAAAZf0ABuQChgDhARpAAQAAAGX9AAXkwpoA4QEaQAEAAABl/QAF5OIVAOEBGkABAAAAZf0ABeSiKwDhAR4gAQAAAGn9AAbk4hUA4QEgAAEAAABp/QAC5GIxAOEBHAwBAAAAa/0AB+RCRgDhARpAAQAAAGn9AAXkAhkA4QEMIAEAAABt/QAH5CIgAOEBDCABAAAAb/0ABeRiIgDhASIEAQAAAG/9AAbkoicA4QEaQAEAAAB2/QBH5IInAOEBGkABAAAAd/0AReRCKwDhARpAAQAAAHj9AEXk4hUA4QEaQAEAAAB5/QBF5OIhAOEBDCABAAAAdP0AB+RiIADhAQwgAQAAAHX9AAfkgjAA4QEaQAEAAAB2/QAH5KIwAOEBGkABAAAAdv0ABeTCMADhARpAAQAAAHb9AAXk4hUA4QEaQAEAAAB2/QAF5OIYAOEBDCABAAAAbf0ABeRCKQDhARpAAQAAAHv9AAfkYikA4QEWBAEAAAB8/QAH5IIpAOEBDCABAAAAff0AB+SCFgDhARpAAQAAAHv9AAXk4hUA4QEaQAEAAAB7/QAF5CLPAeEBDCABAAAAgP0AB+QCGQDhAQwgAQAAAIH9AAfkYikA4QEaQAEAAADk/AAF5OIVAOEBGkABAAAA5PwABeQCIwDhAR5AAQAAAIT9AAbkQiUA4QEaQAEAAACE/QAF5KKKAOEBFgQBAAAAhv0AB+TiFQDhASAEAQAAAIT9AALkYjEA4QEcDAEAAACI/QAH5AIyAOEBHiABAAAAhP0ABOSCawDhARpAAQAAAIr9AAfk4hUA4QEaQAEAAACK/QAF5GIlAOEBGkABAAAAiv0ABeRiOgDhARpAAQAAAI39AAfkAiEA4QEaQAEAAACN/QAF5OIVAOEBGkABAAAAjf0ABeTiMQDhARpAAQAAAJD9AAfk4hUA4QEeAAEAAACQ/QAC5AIyAOEBGkABAAAAkP0ABeTCjADhARpAAQAAAJP9AAfkAoYA4QEaQAEAAACT/QAF5OIVAOEBGkABAAAAk/0ABeRiqQDhARpAAQAAAJP9AAXkYjcA4QEeQAEAAACX/QAG5OIeAOEBDCABAAAAmP0AB+QCGgDhARpAAQAAAJf9AAXk4hUA4QEeQAEAAACX/QAC5IJYAOEBGkABAAAAl/0ABeQi6wDZAQwgAQAAAJz9AAfkIicB4QEMIAEAAACd/QAH5cLXAdkBDCABAAAAnv0AB+aiQADhAQwgAQAAAJ/9AAfmQh4A4QEMIAEAAACg/QAH5kIuAOEBDCABAAAAof0AB+biQADhAQwgAQAAAKH9AAXmQi4A4QEMIAEAAACj/QAH5kIuAOEBDCABAAAApP0AB+YCLwDhAQwgAQAAAKX9AAfm4h8A4QEMIAEAAACn/QAF5oKAAOEBDCABAAAAp/0ABeZCKwDhAQwgAQAAAHjxAAXm4h8A4QEMIAEAAACp/QAH5kJyAOEBDCABAAAAqv0AB+biNwDhARYEAQAAAKv9AAfmwhoA4QEcDAEAAACs/QAH5qInAOEBGkABAAAAsf0AR+aCJwDhARpAAQAAALL9AEXmQisA4QEaQAEAAACz/QBF5uIVAOEBGkABAAAAtP0AReaCMADhARpAAQAAALH9AAfmojAA4QEaQAEAAACx/QAF5sIwAOEBGkABAAAAsf0ABebiFQDhARpAAQAAALH9AAXmQhQA4QEMIAEAAAC1/QAH5uLXAdkBDCABAAAAtv0AB+aiOwDhAQwgAQAAALf9AAfmAm4A4QEMIAEAAAC4/QAH5qIjAOEBIgABAAAAuf0ABuaiPADhAQwgAQAAALr9AAfm4kQA4QEWBAEAAAC7/QAH5oIcAOEBFgQBAAAAvP0AB+ZCSQDhAQwgAQAAAL39AAfm4h4A4QEMIAEAAAC+/QAH5oKhAOEBDCABAAAAv/0AB+bi2wDhAQwgAQAAAMD9AAfmIjQA4QEMIAEAAADB/QAH5oIcAOEBFgQBAAAAwv0AB+bCGgDhARwMAQAAAMP9AAfmQh0A4QEMIAEAAADE/QAH5iIaAOEBIgABAAAAxf0ABubiIQDhAQwgAQAAAMb9AAfmIi4A4QEWBAEAAADH/QAH5mIgAOEBDCABAAAAyP0AB+ZCSQDhAQwgAQAAAMn9AAfm4soB4QEWBAEAAADK/QAH5qIWAOEBDCABAAAAy/0AB+bCFwDhARYEAQAAAMz9AAfmYlkA4QEMIAEAAADO/QAF5sLMAOEBDCABAAAAzv0AB+YiGADhAQwgAQAAAM/9AAfmAhkA4QEMIAEAAADQ/QAH5kIaAOEBDCABAAAA0f0AB+YiWwDhAQwgAQAAANL9AAfmgv8A4QEMIAEAAADT/QAH5mIgAOEBDCABAAAA1P0AB+ZCSQDhAQwgAQAAANX9AAfmIkEA4QEMIAEAAADW/QAH5iL0AOEBDCABAAAA1/0AB+ZCHADhAQwgAQAAANj9AAfmQmcA4QEMIAEAAADZ/QAH5kJkAOEBDCABAAAA2v0AB+ZiZADhAQwgAQAAANv9AAfmIhwA4QEMIAEAAADc/QAH5iIcAOEBDCABAAAA3f0AB+YCQQDhAQwgAQAAAN79AAfmQhoA4QEMIAEAAADf/QAH5gIvAOEBDCABAAAA4P0AB+bCJwDhAQwgAQAAAOH9AAfm4i4A4QEMIAEAAADj/QAF5qI8AOEBDCABAAAA4/0AB+aCLADhAQwgAQAAAOT9AAfmIi4A4QEMIAEAAADl/QAH5oIvAOEBFgQBAAAA5v0AB+ZiHADhARYEAQAAAOf9AAfmQicA4QEMIAEAAADo/QAH5oJiAOEBDCABAAAA6f0AB+YCPQDhAQwgAQAAAOr9AAfmwnYA4QEMIAEAAADr/QAH5oLhAOEBDCABAAAA7P0AB+YCQQDhAQwgAQAAAO39AAfmAtgB2QEMIAEAAADu/QAH5gIpAOEBDCABAAAA7/0AB+aCGQDhAQwgAQAAAPD9AAfmQh0A4QEWBAEAAADx/QAH5qI8AOEBDCABAAAA8v0AB+ZiNwDhAQwgAQAAAPP9AAfmolQA4QEMIAEAAAD0/QAH5mI3AOEBDCABAAAA9f0AB+YCJgDhAQwgAQAAAPb9AAfmYjcA4QEMIAEAAAD3/QAH5sI9AOEBDCABAAAA+P0AB+biGwDhAQwgAQAAAPn9AAfmwswA4QEMIAEAAAD6/QAH5iK7AOEBDCABAAAAAf4ABeaCNADhARYEAQAAAPz9AAfmQiQA4QEWBAEAAAD9/QAH5qJUAOEBDCABAAAA/v0AB+YiLgDhASIAAQAAAP/9AAbmgi8A4QEWBAEAAAAA/gAH5iJWAOEBDCABAAAAAf4AB+bCpQDhAQwgAQAAAAP+AAXmohYA4QEMIAEAAAAD/gAH5gKFAOEBDCABAAAABP4AB+YCtgDhAQwgAQAAAAX+AAfmQkgB4QEeAAEAAAAG/gAG5uKAAOEBHgABAAAAB/4ABuZCMQDhASAAAQAAAAf+AALmYhsA4QEWBAEAAAAJ/gAH5kJKAOEBDCABAAAACv4AB+YCSQDhARpAAQAAAAf+AAXm4h4A4QEMIAEAAAAM/gAH5uIVAOEBIAABAAAAB/4AAuZiNwDhAQwgAQAAAA7+AAfmIkcA4QEMIAEAAAAY/gAF5sJeAOEBDCABAAAAEP4AB+YCLQDhARYEAQAAABH+AAfmghwA4QEWBAEAAAAS/gAH5sIaAOEBHAwBAAAAE/4AB+ZCIADhAQwgAQAAABT+AAfm4l4A4QEMIAEAAAAQ/gAF5gJBAOEBDCABAAAAFv4AB+ZCHADhAQwgAQAAABf+AAfmAlwA4QEMIAEAAAAY/gAF56IaAOEBDCABAAAAGf4AB+diHgDhARYEAQAAABr+AAfn4kAA4QEMIAEAAAAb/gAH52IEAdkBHiABAAAAHP4ABucCpADhASIAAQAAAB3+AAbnAq0A4QEMIAEAAAAe/gAH5wJuAOEBDCABAAAAH/4AB+eCYADhAQwgAQAAACD+AAfnAm4A4QEMIAEAAAAh/gAH54IdAOEBIAABAAAAHP4AAufiFQDhAR4AAQAAABz+AALngsgA4QEMIAEAAAAk/gAH56IjAOEBDCABAAAAJf4AB+fCIwDhAQwgAQAAACX+AAXnIlcA4QEWBAEAAAAn/gAH5+IYAOEBDCABAAAAJP4ABeciRgDhAQwgAQAAACn+AAfnIjsA4QEWBAEAAAAq/gAH5+JCAOEBDCABAAAAK/4AB+fCVgDhAQwgAQAAACz+AAfn4hUA4QEaQAEAAAAc/gAF52IbAOEBFgQBAAAALv4AB+ciVwDhARYEAQAAAC/+AAfnYj0B4QEMIAEAAAAw/gAH5yIZAOEBDCABAAAAMf4AB+ciGQDhAQwgAQAAADL+AAfnwjQA4QEMIAEAAAAz/gAH50InAOEBDCABAAAANP4AB+cCSQDhAQwgAQAAADT+AAXnIgoB4QEeIAEAAAAc/gAE54IkAOEBDCABAAAAN/4AB+hiTQD7ARgwAQAAADj+EAXnYk0A4QEYMAEAAAA4/gAF58IxAOEBHiABAAAAOv4ABueieQDhAQwgAQAAADv+AAfn4kIA4QEMIAEAAAA8/gAH56JAAOEBDCABAAAAPf4AB+eiLgDhAQwgAQAAAD/+AAXnIkwA4QEMIAEAAAA//gAF56IuAOEBDCABAAAAP/4ABefCHAHhASIEAQAAAEH+AAbngkMA4QEWBAEAAABB/gAF58IjAOEBDCABAAAAQf4AB+fCSgDhARYEAQAAAEH+AAXnYmkA4QEcDAEAAABF/gAH52IbAOEBDCABAAAARv4AB+eiUgDhAQwgAQAAAEf+AAfngjcA4QEMIAEAAABI/gAH50JXAOEBHgABAAAASf4ABudiGwDhAQwgAQAAAEr+AAfnYpEA4QEMIAEAAABL/gAH54IZAOEBDCABAAAATP4AB+eCPADhAQwgAQAAAEz+AAXnohoA4QEWBAEAAABO/gAH5yLhAOEBDCABAAAAT/4AB+ciHADhAQwgAQAAAFD+AAfngn4A4QEWBAEAAABR/gAH54L0AOEBDCABAAAAUv4AB+eiFwDhAQwgAQAAAFP+AAfnokgB4QEMIAEAAABU/gAH54LvAOEBDCABAAAAVf4AB+fi3wDhAQwgAQAAAFb+AAfnYt0A4QEeAAEAAABX/gAG5+IVAOEBGkABAAAAV/4ABedikQDhARpAAQAAAFf+AAXn4hkA4QEaQAEAAABX/gAF5+IVAOEBGkABAAAAV/4ABefCiADhAQwgAQAAAFz+AAfnItgB4QEMIAEAAABd/gAH5+IkAOEBDCABAAAAXv4AB+fCLgDZARpAAQAAAF/+AAfnIh4A4QEMIAEAAABg/gAH50IlAOEBGkABAAAAX/4ABefiFQDhARpAAQAAAF/+AAXn4j8A4QEeAAEAAABj/gAG5wJAAOEBFgQBAAAAZP4AB+fiFQDhARpAAQAAAGP+AAXnwh8A4QEeIAEAAABm/gAG5yImAOEBDCABAAAAZ/4AB+cCKgDhAQwgAQAAAGf+AAXn4h8A4QEMIAEAAABm/gAF54ImAOEBHgABAAAAav4ABueiJgDhARYEAQAAAGv+AAfn4nMA4QEMIAEAAABs/gAH52IkAOEBDCABAAAAbf4AB+fiFQDhAQwgAQAAAG7+AAfnIm4A4QEMIAEAAABv/gAH56KHAOEBDCABAAAAcP4AB+fiFQDhAQwgAQAAAHH+AAfnYm8A4QEeIAEAAABy/gAG5wJAAOEBGkABAAAAcv4ABedCKADhAQwgAQAAAHT+AAfnAlgA4QEaQAEAAABy/gAF5+IVAOEBGkABAAAAcv4ABediHADhARYEAQAAAHf+AAfnoioA4QEcDAEAAAB4/gAH52IbAOEBDCABAAAAef4AB+fiFQDhAR5AAQAAAF/+AALn4mIA4QEMIAEAAAB7/gAH52I4AOEBGkABAAAAX/4ABefi+wDhAQwgAQAAAH3+AAfnQh0A4QEWBAEAAAB+/gAH5wI2AOEBDCABAAAAf/4AB+fiPgDhAQwgAQAAAID+AAfngk4A4QEWBAEAAACB/gAH50KjAOEBHiABAAAAgv4ABudCHQDhAQwgAQAAAIP+AAfn4hUA4QEaQAEAAACC/gAF5wKiAOEBHgABAAAAhf4ABuei3gDhAQwgAQAAAIb+AAfnosMA4QEeAAEAAACC/gAE5wKiAOEBHgABAAAAiP4ABueieQDhAQwgAQAAAIn+AAfnAkAA4QEWBAEAAACK/gAH58JCAOEBDCABAAAAi/4AB+cCWADhAQwgAQAAAIj+AAXn4hUA4QEeAAEAAACI/gAC50JFAOEBDCABAAAAjv4AB+eC0ADZAR4gAQAAAI/+AAbnIm4A4QEMIAEAAACQ/gAH54LiAOEBDCABAAAAkf4AB+eiJgDhASBAAQAAAI/+AALnwiYA4QEMIAEAAACT/gAH5+IVAOEBHgABAAAAj/4AAugCSwDnASwMAUABAJb+EATnAksA4QFIIAEAAACW/gAG5+IZAOEBGkABAAAAlv4ABediHADhARYEAQAAAJj+AAfnoioA4QEcDAEAAACZ/gAH52IbAOEBDCABAAAAmv4AB+eiSwDhAQwgAQAAAJv+AAfnoooA4QEWBAEAAACc/gAH58IaAOEBHAwBAAAAnf4AB+diGwDhAQwgAQAAAJ7+AAfnIiYA4QEMIAEAAACf/gAH5+IVAOEBGkABAAAAlv4ABeeiIwDhARYEAQAAAKH+AAfn4iEA4QEMIAEAAACi/gAH52IgAOEBIgABAAAAo/4ABufCIADhARwMAQAAAKT+AAfnIjIA4QEWBAEAAACl/gAH52IbAOEBDCABAAAApv4AB+fCXwDhAQwgAQAAAJb+AAXnwkAA4QEWBAEAAACo/gAH5wIZAOEBDCABAAAAqf4AB+eCMQDhARpAAQAAAKz+AAXnIiAA4QEaQAEAAACs/gAF58I1AOEBGkABAAAArP4AB+fiFQDhAQwgAQAAAK3+AAfnQiAA4QEMIAEAAACu/gAH58IoAOEBHAwBAAAAr/4AB+diGwDhAQwgAQAAALD+AAfnoocA4QEMIAEAAACx/gAH5yJuAOEBDCABAAAAsv4AB+fi9gDhAQwgAQAAALP+AAfnYhwA4QEWBAEAAAC0/gAH56IqAOEBHAwBAAAAtf4AB+diGwDhAQwgAQAAALb+AAfnoh8A4QEaQAEAAACz/gAF56JtAOEBDCABAAAAs/4AR+diGwDhAQwgAQAAALn+AAfngmkA4QEaQAEAAAC3/gBF54IlAOEBDCABAAAAu/4AB+cCGwHhAR4gAQAAAI/+AATnAiUB4QEMIAEAAAC9/gAH5wIlAeEBDCABAAAAvv4AB+cCJQHhAQwgAQAAAL/+AAfnIscA4QEMIAEAAADA/gAH50I4AOEBGkABAAAAwf4AB+cCQADhARYEAQAAAML+AAfnAlgA4QEaQAEAAADB/gAF52KPAeEBDCABAAAAxf4ABefi1gHhAQwgAQAAAMX+AAfn4hUA4QEaQAEAAADB/gAF52J6AOEBDCABAAAAx/4AB+eiWgDZAR4gAQAAAMj+AAbngnUA4QEMIAEAAADJ/gAH52JJAOEBDCABAAAAyv4AB+fC/gDhAQwgAQAAAMn+AAXnwnUA4QEeAAEAAADM/gAG50IxAOEBFgQBAAAAzf4AB+diGwDhARYEAQAAAM7+AAfnwlYA4QEWBAEAAADY/gAF58JKAOEBFgQBAAAA2P4ABefiFQDhARYEAQAAANH+AAfnYhsA4QEWBAEAAADS/gAH50IxAOEBIAABAAAAyP4AAufiFQDhARpAAQAAAMj+AAXnwjQA4QEWBAEAAADV/gAH5+JUAOEBHgABAAAAyP4ABOeicAHhAQwgAQAAANf+AAfnYlMB4QEWBAEAAADY/gAH54JrAOEBDCABAAAA2f4AB+fCSgDhAQwgAQAAANr+AAfn4hUA4QEeIAEAAADb/gAG56IlAOEBDCABAAAA3P4AB+eiJgDhARYEAQAAAN3+AAfnwiYA4QEMIAEAAADe/gAH5+IaAeEBDCABAAAA3/4AB+eidQDhAQwgAQAAAOD+AAfn4hUA4QEeQAEAAADb/gAC5yImAOEBDCABAAAA4v4AB+dCUQDhAQwgAQAAAOP+AAfn4hkA4QEWBAEAAADk/gAH5yJXAOEBFgQBAAAA5f4AB+fiHgDhAQwgAQAAAOb+AAfnIqcA4QEeIAEAAADb/gAG58IfAOEBDCABAAAA6P4AB+diUQDhAQwgAQAAAOn+AAfnolcA4QEMIAEAAADq/gAH50I5AOEBDCABAAAA6/4AB+fitwDhAQwgAQAAAOz+AAfnonUA4QEMIAEAAADt/gAH5wK8AOEBHgABAAAA7v4ABudCKwDhARpAAQAAAO7+AAXn4hUA4QEeAAEAAADu/gAC5wKqANkBDCABAAAA8f4AB+ci7wDhAR4gAQAAAPL+AAbn4h4A4QEMIAEAAADz/gAH5+IVAOEBDCABAAAA9P4AB+diHADhARYEAQAAAPX+AAfnoioA4QEcDAEAAAD2/gAH5yJgAOEBDCABAAAA8v4ABediVwDZAR4AAQAAAPj+AAbnQh0A4QEWBAEAAAD5/gAH5+IxAOEBDCABAAAA+v4AB+eCogDhARYEAQAAAPv+AAfnoiQA4QEcDAEAAAD8/gAH5yKQAOEBGkABAAAA/f4AB+eiGADhARYEAQAAAP7+AAfnYhsA4QEMIAEAAAD//gAH5+IVAOEBHgABAAAA/f4AAufCHADhARpAAQAAAP3+AAXnIk8A4QEeAAEAAAAC/wAG52JWAOEBIEABAAAA+P4AAueCfwDhAQwgAQAAAAT/AAfn4hUA4QEgAAEAAAD4/gAC5yJFAOEBHiABAAAABv8ABucCQADhARYEAQAAAAf/AAfnAlgA4QEeAAEAAAAG/wAE5+IVAOEBHgABAAAABv8AAufiawDhAR4AAQAAAPj+AATnwqAA4QEMIAEAAAAL/wAH58IfAOEBDCABAAAADP8AB+dCNwDhAQwgAQAAAA3/AAfnwr8A4QEMIAEAAAAO/wAH56InAOEBHiABAAAAD/8ABucCiQDhASBAAQAAAA//AALnIisA4QEMIAEAAAAR/wAH50IrAOEBGiABAAAAD/8ABedCIADhAQwgAQAAABP/AAfnwhkA4QEWBAEAAAAU/wAH5+IVAOEBLkABAAAAD/8AAucCkgDhAR4gAQAAABb/AAbnAoYA4QEaQAEAAAAW/wAF58JWAOEBFgQBAAAAIP8ABefCSgDhARYEAQAAACD/AAXn4lYA4QEcDAEAAAAa/wAH52IbAOEBDCABAAAAG/8AB+fiFQDhARpAAQAAABb/AAXnYhsA4QEWBAEAAAAd/wAH52IbAOEBDCABAAAAHv8AB+eijwDhAR4gAQAAABb/AATn4ssA4QEWBAEAAAAg/wAH52JiAOEBDCABAAAAIf8AB+cidADhARYEAQAAACL/AAfnIm4A4QEMIAEAAAAj/wAH50LYARECFwQBAAAAJP8ABefCRADhAQwgAQAAACX/AAfn4i8A4QEWBAEAAAAm/wAH52I3AOEBDCABAAAAJ/8AB+fClwDhARYEAQAAACj/AAfnAj4A4QEMIAEAAAAp/wAH5yIwAOEBIiABAAAAKv8ABueiJwDhARpAAQAAACv/AAfngicA4QEaQAEAAAAx/wBF5+IhAOEBDCABAAAALf8AB+diIADhAQwgAQAAAC7/AAfnIhoA4QEWBAEAAAAv/wAH54IwAOEBGkABAAAAMP8AB+eiMADhARpAAQAAADD/AAXnwjAA4QEaQAEAAAAw/wAF5+IVAOEBGkABAAAAMP8ABefCGgDhARwMAQAAADT/AAfnonUA4QEMIAEAAAAq/wAF58JWAOEBFgQBAAAAOP8ABefCSgDhARYEAQAAADj/AAXngvIA4QEWBAEAAAA4/wAH5wJCAOEBHgQBAAAAOf8ABucCQADhARpAAQAAADn/AAXn4hUA4QEaQAEAAAA5/wAF5wJAAOEBGkABAAAAOv8ARefiFQDhARpAAQAAADv/AEXnYhwA4QEWBAEAAAA+/wAH52J3AOEBDCABAAAAP/8AB+eidQDhAR4gAQAAADn/AATngiEA4QEaQAEAAABB/wAH54IpAOEBDCABAAAAQv8AB+eifQDhAQwgAQAAAEP/AAfngh0A4QEMIAEAAABE/wAH5wIqAOEBDCABAAAAQv8ABefCHwDhAQwgAQAAAEb/AAfnghYA4QEaQAEAAABB/wAF5wLQAOEBHgABAAAASP8ABufiGQDhARpAAQAAAEj/AAXn4h4A4QEMIAEAAABK/wAH5+IVAOEBFgQBAAAAS/8AB+dikQDhARpAAQAAAEj/AAXn4h4A4QEMIAEAAABN/wAH5+IVAOEBGkABAAAAQf8ABedCUQDhAQwgAQAAAE//AAfn4jQA4QEMIAEAAABQ/wAH58KrAOEBDCABAAAAUf8AB+nCcQDZAQwgAQAAAFL/AAfpIhkA4QEMIAEAAABT/wAH6gInAOEBHgABAAAAVP8ABuoiJwDhAQwgAQAAAFX/AAfqgh0A4QEMIAEAAABW/wAH6gJPAOEBDCABAAAAV/8AB+qiewDhAQwgAQAAAFj/AAfqAlQB4QEMIAEAAABZ/wAH6sIqAOEBDCABAAAAWv8AB+piegDhAQwgAQAAAFv/AAfqYhsA4QEWBAEAAABc/wAH6sJCAOEBDCABAAAAXf8AB+piKgDhAQwgAQAAAF7/AAfqgkUA4QEMIAEAAABV/wAH6sIfAOEBDCABAAAAYP8AB+oiQADhAQwgAQAAAGH/AAfq4h4A4QEMIAEAAABi/wAH6qJXAOEBDCABAAAAY/8AB+piGwDhAQwgAQAAAGT/AAfqIj8B4QEaQAEAAABl/wAH6kIxAOEBGkABAAAAZf8ABepCSgDhAQwgAQAAAGf/AAfq4hUA4QEaQAEAAABl/wAF6iJJAOEBGkABAAAAZf8ABepiPQDhASIAAQAAAGr/AAbq4sQA4QEeIAEAAABr/wAG6oIfAOEBDCABAAAAbP8AB+riFQDhAUggAQAAAGv/AALqAmcA4QEeQAEAAABr/wAE6mImAOEBLiABAAAAb/8ABuriGQDhARYEAQAAAHD/AAfq4h4A4QEMIAEAAABx/wAH6uIVAOEBHgABAAAAb/8AAuqiPQDhAR4AAQAAAG//AATqwuUA2QEaQAEAAAB0/wAH6mKxAOEBDCABAAAAdf8AB+pCTADhAQwgAQAAAHb/AAfqgh0A4QEaQAEAAAB0/wAF6uIpAOEBDCABAAAAeP8AB+oiIADhAQwgAQAAAHr/AAXqAkYA4QEMIAEAAAB6/wAH6uIVAOEBGkABAAAAdP8ABeoiRADhAR4AAQAAAHz/AAbqgh0A4QEWBAEAAAB9/wAH6mKOAOEBDCABAAAAfP8ABeqijgDhAQwgAQAAAH//AAfq4hUA4QEaQAEAAAB0/wAF6sIZAOEBDCABAAAAgf8AB+qiGwDhAQwgAQAAAIL/AAfqIhoA4QEWBAEAAACD/wAH6kItAOEBDCABAAAAhP8AB+oiVwDhARYEAQAAAIX/AAfqImAA4QEMIAEAAACC/wAF6mLJAOEBGkABAAAAdP8ABeqiQgDhARYEAQAAAIj/AAfqYhwA4QEWBAEAAACJ/wAH6sIgAOEBHAwBAAAAiv8AB+piGwDhAQwgAQAAAIv/AAfqIpkB2QEMIAEAAACM/wAH6iJuAOEBDCABAAAAjf8AB+oiXgDhAQwgAQAAAI7/AAfqAkUA4QEMIAEAAACP/wAH6gJPAOEBHiABAAAAkP8ABurCGgDhAQwgAQAAAJH/AAfqIiUA4QEWBAEAAACS/wAH6qJvAOEBDCABAAAAk/8AB+piGwDhAQwgAQAAAJT/AAfqAoYA4QEaQAEAAACQ/wAF6oJMAOEBDCABAAAAlv8AB+oCKgDhAQwgAQAAAJb/AAfqAkYA4QEMIAEAAACY/wAH6qKqAOEBHiABAAAAmf8ABuriGQDhARpAAQAAAJn/AAXq4hUA4QEaQAEAAACZ/wAF6gI4AOEBDCABAAAAnP8AB+pikQDhAR4gAQAAAJn/AATqoiMA4QEMIAEAAACe/wAH6sIjAOEBDCABAAAAnv8ABeqiSADhAQwgAQAAAKD/AAfqwlYA4QEWBAEAAACq/wAF6sJKAOEBFgQBAAAAqv8ABepiGwDhAQwgAQAAAKP/AAfq4hUA4QEaQAEAAACQ/wAF6iJXAOEBFgQBAAAApf8AB+rCNADhAQwgAQAAAKb/AAfqImUA4QEeIAEAAACQ/wAE6sIfAOEBDCABAAAAqP8AB+qiUgDhAQwgAQAAAKn/AAfqAsIA4QEWBAEAAACq/wAH6mL8AOEBIgABAAAAq/8ABuqCiADZAQwgAQAAAKz/AAfqIiMA4QEaQAEAAABm/gAF6sIYAOEBDCABAAAArv8AB+oCMADhAQwgAQAAAK7/AAXqYtgB4QEMIAEAAACw/wAH6mKrAOEBDCABAAAAsf8AB+oiVwDhARYEAQAAALL/AAfqAiYA4QEMIAEAAACz/wAH6mKhAOEBDCABAAAArP8ABeoCtwDZAQwgAQAAALX/AAfqom8A4QEMIAEAAAC2/wAH6qI8AOEBDCABAAAAt/8AB+rCSADhAQwgAQAAALj/AAfqwjwA4QEWBAEAAAC5/wAH6oIgAOEBDCABAAAAuv8AB+pCZADhAQwgAQAAALv/AAfqQusA4QEMIAEAAAC8/wAH6oLYAeEBNBwBAAAAvf8ABeriHgDhATQcAQAAAL7/AAXqApIB4QE0HAEAAAC//wAF6mIkAOEBDCABAAAAwP8AB+oCGQDhAQwgAQAAAMH/AAfq4lIA4QEMIAEAAADC/wAH6gJGAOEBDCABAAAAw/8AB+qiIwDhARYEAQAAAMT/AAfqYmkA4QEcDAEAAADF/wAH6mIbAOEBDCABAAAAxv8AB+riYwDhAQwgAQAAAMf/AAfqop8B2QEMIAEAAADI/wAH6qJIAOEBGkABAAAAyf8AB+oCQADhARYEAQAAAMr/AAfqwlYA4QEWBAEAAADP/wAF6sJKAOEBFgQBAAAAz/8ABeriFQDhASBAAQAAAMn/AALqwlQA4QEaQAEAAADJ/wAF6uJWAOEBFgQBAAAAz/8AB+riHgDhARpAAQAAAND/AAfqgh8A4QEMIAEAAADR/wAH6iJuAOEBDCABAAAA0v8AB+riYQDhARpAAQAAANP/AAfq4hUA4QEMIAEAAADU/wAH6gJYAOEBDCABAAAA0v8ABepiFgDhAQwgAQAAANb/AAfqYpQA4QEeIAEAAADX/wAG6qIXAOEBDCABAAAA2P8AB+oCQADhASBAAQAAANf/AALqQigA4QEMIAEAAADa/wAH6gImAOEBGkABAAAA2/8AB+oiJgDhAQwgAQAAANz/AAfq4h8A4QEaQAEAAADb/wAF6uIVAOEBHgABAAAA2/8AAuoCKgDhAQwgAQAAANr/AAXqQlcA4QEaQAEAAADg/wAH6uIVAOEBIAABAAAA4P8AAupiMQDhARwMAQAAAOL/AAfqImUA4QEaQAEAAADg/wAF6uIVAOEBLkABAAAA1/8AAuoCeADhAQwgAQAAAOX/AAfqgikA4QEMIAEAAADm/wAH6uKBAOEBHiABAAAA1/8ABOpiGwDhAQwgAQAAAOj/AAfqAnUA2QEMIAEAAADp/wAH6kIuAOEBDCABAAAA6f8AB+piXgDhARYEAQAAAOv/AAfqYiQA4QEMIAEAAADs/wAH6sJCAOEBFgQBAAAA7f8AB+oiHgDhAS4gAQAAAO7/AAbqYigA4QEaQAEAAADu/wAF6uIVAOEBGkABAAAA7v8ABepCSwDhASIAAQAAAPH/AAbrgiwA5wEYMAEAAADy/xAF6oIsAOEBGDABAAAA8v8AB+pCHQDhARYEAQAAAPT/AAfqYi4A4QEWBAEAAAD1/wAH6qInAOEBGkABAAAA9v8AB+piIADhARYEAQAAAPf/AAfqgjAA4QEaQAEAAAD4/wAH6uK/AOEBDCABAAAA+f8AB+pingHhARYEAQAAAPr/AAfqIhoA4QEiBAEAAAD7/wAG6oIcAOEBFgQBAAAA/P8ABerCGgDhARwMAQAAAP3/AAfqAhkA4QEMIAEAAAD+/wAH6qInAOEBGkABAAAABgABR+qCJwDhARpAAQAAAAcAAUXqQisA4QEaQAEAAAAIAAFF6uIVAOEBGkABAAAACQABRepiIADhASIAAQAAAAMAAQbqIhoA4QEWBAEAAAAEAAEH6gIZAOEBDCABAAAABQABB+qCMADhARpAAQAAAAYAAQfqojAA4QEaQAEAAAAGAAEF6sIwAOEBGkABAAAABgABBeriFQDhARpAAQAAAAYAAQXqojEA4QEWBAEAAAAKAAEH6qIjAOEBFgQBAAAACwABB+qiMQDhAQwgAQAAAAwAAQfqwvQA4QEeQAEAAAANAAEG6oJ/AOEBDCABAAAADgABB+riFQDhARpAAQAAAA0AAQXqgtYA4QEeAAEAAAANAAEE6mIjAOEBDCABAAAAEQABB+qCIwDhAQwgAQAAABEAAQXqYpAA4QEMIAEAAAATAAEH6kJRAOEBDCABAAAAFAABB+riLwDhAQwgAQAAABUAAQfqYrIB4QEeAAEAAAAWAAEG6mJAAOEBDCABAAAAFwABB+qCOwDhAQwgAQAAABgAAQfqIkYA4QEMIAEAAAAZAAEH6gJdAOEBHiABAAAAGgABBuqCsQDhARYEAQAAABsAAQfqIoQA4QEMIAEAAAAcAAEH6uIVAOEBDCABAAAAHQABB+piGwDhARYEAQAAAB4AAQfqwlAB4QEMIAEAAAAaAAEF6qKUAOEBDCABAAAAIAABB+qCUgDhAQwgAQAAACEAAQfq4lAB4QEMIAEAAAAiAAEH6kK9AeEBDCABAAAAIwABB+qiewDhAR4gAQAAACQAAQbqAkYA4QEMIAEAAAAlAAEH6qLJAOEBDCABAAAAJgABB+rCVgDhARYEAQAAACkAAQXqwkoA4QEWBAEAAAApAAEF6qL0AOEBFgQBAAAAKQABBeoiIgDhAR4gAQAAACoAAQbqQkoA4QEMIAEAAAArAAEH6mJUAOEBDCABAAAALAABB+qiigDhAQwgAQAAAC0AAQfqQngA4QEMIAEAAAAuAAEH6sJWAOEBFgQBAAAANwABBerCSgDhARYEAQAAADcAAQXq4lYA4QEcDAEAAAAxAAEH6mIbAOEBDCABAAAAMgABB+riFQDhARpAAQAAACoAAQXqghcA4QEMIAEAAAA0AAEH6gIaAOEBDCABAAAANAABBeqClADhAQwgAQAAACoAAQfqAkEA4QEiAAEAAAA3AAEG6iK1AOEBDCABAAAAOAABB+pCHQDhARYEAQAAADkAAQfqIjIA4QEeQAEAAAA6AAEG6uIeAOEBDCABAAAAOwABB+riFQDhARpAAQAAADoAAQXqoj0A4QEeAAEAAAA6AAEE6sJMAOEBHiABAAAAPgABBuriOgDhAQwgAQAAAD8AAQfqIiUA4QEWBAEAAABAAAEH6uIZAOEBIEABAAAAPgABAuriHgDhAQwgAQAAAEIAAQfq4hUA4QEeQAEAAAA+AAEC6iKsAOEBGkABAAAARAABB+piGwDhARYEAQAAAEUAAQfqQlEA4QEMIAEAAABGAAEH6iJgAOEBHiABAAAAPgABBuqCnwDhAQwgAQAAAEgAAQfqAk8A4QEMIAEAAABJAAEH6kJkAOEBHiABAAAASgABBupCFgDhAQwgAQAAAEsAAQfqokAA4QEMIAEAAABMAAEH6oJMAOEBDCABAAAATQABB+qCfwDhAQwgAQAAAE4AAQfq4n8A4QEMIAEAAABKAAEF6oKfAOEBDCABAAAAUAABB+qCTADhAQwgAQAAAFEAAQfqolcA4QEMIAEAAABSAAEH6mIhAeEBFgQBAAAAUwABB+qCIADhAQwgAQAAAFQAAQfqwlYA4QEWBAEAAABZAAEF6sJKAOEBFgQBAAAAWQABBepiGwDhAQwgAQAAAFcAAQfq4hUA4QEeAAEAAABKAAEC6mJkAOEBFgQBAAAAWQABB+piVADhAQwgAQAAAFoAAQfqAjUA4QEMIAEAAABbAAEH6iIwAOEBDCABAAAAXAABB+pCUQHhAQwgAQAAAF0AAQfqYhwA4QEWBAEAAABeAAEH6gIiAOEBDCABAAAAYAABBeqiPADhAQwgAQAAAGAAAQXqYiIA4QEMIAEAAABhAAEH6sI0AOEBLkABAAAAD/8AAuqCFwDhARYEAQAAAGMAAQfqQq0A4QEMIAEAAABkAAEH6kLUAOEBDCABAAAAZQABB+oCVgDhAQwgAQAAAGYAAQfqoiMA4QEMIAEAAABnAAEH6sIjAOEBDCABAAAAZwABBeoiLQDhAQwgAQAAAGkAAQfqQmkA4QEMIAEAAABqAAEH6uIVAOEBDCABAAAAawABB+piIgDhAQwgAQAAAGwAAQfqojQA4QEMIAEAAABtAAEH6kIrAOEBDCABAAAAYgABBepiVADhAQwgAQAAAG8AAQfqIkYA4QEMIAEAAABwAAEH6kIdAOEBFgQBAAAAcQABB+rCVgDhARYEAQAAAH8AAQXqwkoA4QEWBAEAAAB/AAEF6iJeAOEBDCABAAAAdAABB+rCPQDhAR4AAQAAAHUAAQbqYhsA4QEMIAEAAAB2AAEH6qJSAOEBDCABAAAAdwABB+qiuADhAQwgAQAAAHgAAQfqIl4A4QEMIAEAAAB6AAEF6iI1AOEBDCABAAAAegABBeriHgDhAQwgAQAAAHsAAQfqIn4A4QEMIAEAAAB+AAEF6oIXAOEBFgQBAAAAfQABB+oiWgDhAQwgAQAAAH4AAQfq4ocA4QEWBAEAAAB/AAEH6sLmANkBHiABAAAAgAABBupiIgDhASIAAQAAAIEAAQbqwhkA4QEWBAEAAACCAAEH6oIXAOEBGkABAAAAgwABB+riGQDhASBAAQAAAIMAAQLqAhoA4QEaQAEAAACDAAEF6uIVAOEBGkABAAAAgwABBeoCGQDhAQwgAQAAAIcAAQfqwhcA4QEWBAEAAACIAAEH6sIaAOEBHAwBAAAAiQABB+qiKQDhARYEAQAAAIoAAQfqAi8A4QEMIAEAAACLAAEH6gLAAeEBDCABAAAAjAABB+oiLwDhAQwgAQAAAI0AAQfqIhgA4QEMIAEAAACOAAEH6qLYAeEBNBwBAAAAjwABBeoCOAHhATQcAQAAAJAAAQXq4jMA4QE0HAEAAACRAAEF6oLoAOEBDCABAAAAkgABB+oihADhAQwgAQAAAJMAAQfqYkgA4QEMIAEAAACUAAEH6qKcAOEBDCABAAAAlQABB+riIADhAQwgAQAAAJYAAQfqYhoA4QEMIAEAAACXAAEH6iJgAOEBGkABAAAAgAABBeriGQDhASBAAQAAAIAAAQLqglgA4QEWBAEAAACaAAEH6oJcAOEBHAwBAAAAmwABB+piGwDhAQwgAQAAAJwAAQfqIhgA4QEMIAEAAACdAAEH6uIeAOEBDCABAAAAngABB+riFQDhAR5AAQAAAIAAAQLqIiUA4QEWBAEAAACgAAEH6oI/AOEBDCABAAAAoQABB+pCIADhAQwgAQAAAKIAAQfqwigA4QEcDAEAAACjAAEH6mIbAOEBDCABAAAApAABB+rCGQDhAQwgAQAAAKUAAQfqAlgA4QEMIAEAAAClAAEF6mKnAeEBDCABAAAApwABB+rC6wDhAR4AAQAAAKgAAQbqwqYA4QEMIAEAAACpAAEH6qImAOEBFgQBAAAAqgABB+piZwDhAUgEAQAAAKsAAQbq4joA4QEMIAEAAACsAAEH6mImAOEBHgABAAAArQABBuqCMQDhARYEAQAAAK4AAQfqYhkA4QEaQAEAAACrAAEF6oI1AOEBGkABAAAAsAABB+qiGADhARYEAQAAALEAAQfqgkMA4QEWBAEAAACrAAEF6sJaAeEBFgQBAAAAswABB+rCKgDhARpAAQAAALQAAQfq4hUA4QEaQAEAAAC0AAEF6uIVAOEBGkABAAAAqwABBeqiIwDhARYEAQAAALcAAQfqoqYA4QEMIAEAAAC4AAEH6mJpAOEBHAwBAAAAuQABB+pCTgDhAQwgAQAAALoAAQfqYhsA4QEMIAEAAAC7AAEH6iImAOEBDCABAAAAvAABB+pCZAHhARYEAQAAAL0AAQfqAiYA4QEMIAEAAAC+AAEH6mIjAOEBDCABAAAAvwABB+qCIwDhAQwgAQAAAL8AAQXqYlQA4QEMIAEAAADBAAEH6oIsAOEBDCABAAAAwgABB+pCHQDhARYEAQAAAMMAAQfqIiUA4QFIIAEAAADEAAEG6oIlAOEBIgABAAAAxQABBupCJQDhASAEAQAAAMQAAQLqYhsA4QEMIAEAAADHAAEH6mKQAOEBDCABAAAAyAABB+riYQDhAQwgAQAAAMkAAQfqIiYA4QEMIAEAAADKAAEH6iJAAOEBDCABAAAAywABB+pCJQDhARYEAQAAAMwAAQfqwioA4QEMIAEAAADNAAEH6uIVAOEBHgABAAAAxAABAuqiIwDhARYEAQAAAM8AAQfqwigA4QEcDAEAAADQAAEH6mIbAOEBDCABAAAA0QABB+piJQDhAQwgAQAAAMQAAQXqwkIA4QEMIAEAAADTAAEH6sIZAOEBDCABAAAA1AABB+oi1QDhAQwgAQAAANUAAQfqQjkA4QEMIAEAAADWAAEH6sIqAOEBGkABAAAA1wABB+oiKwDhAQwgAQAAANgAAQfqQisA4QEaQAEAAADXAAEF6uIVAOEBLgABAAAA1wABAuqCfADhARYEAQAAANsAAQfqgiUA4QEMIAEAAADcAAEH6oIlAOEBHiABAAAA3QABBuoiKQDhAR4gAQAAAN4AAQbq4hkA4QEaQAEAAADdAAEF6oKFAOEBDCABAAAA4AABB+riHgDhAQwgAQAAAOEAAQfqAhoA4QEeIAEAAADeAAEE6mIkAOEBIgQBAAAA4wABBuqiJADhARwMAQAAAOQAAQfqIjcA4QEMIAEAAADjAAEF6uIVAOEBGkABAAAA3QABBerizADhAR4AAQAAAN0AAQTqgroA4QEMIAEAAADoAAEH6qIlAOEBGkABAAAA6QABB+qCKQDhAQwgAQAAAOoAAQfqghYA4QEaQAEAAADpAAEF6uIVAOEBLgABAAAA6QABAurCiwDZAR4gAQAAAO0AAQbqYh0B4QEMIAEAAADuAAEH6sKmAOEBDCABAAAA7wABB+qiTADhAQwgAQAAAPAAAQfqwlYA4QEWBAEAAAD1AAEF6sJKAOEBFgQBAAAA9QABBeriVgDhARwMAQAAAPMAAQfqYhsA4QEMIAEAAAD0AAEH6iKtAOEBIgQBAAAA9QABBuriIQDhAQwgAQAAAPYAAQfqgmQA4QEaQAEAAADtAAEF6uKzAOEBHgABAAAA+AABBuoCQADhARpAAQAAAPgAAQXq4hUA4QEaQAEAAAD4AAEF6uJ4AOEBDCABAAAA+wABB+riFQDhAQwgAQAAAPwAAQfqAk8A4QEMIAEAAAD9AAEH6kJjAOEBDCABAAAA7QABBerCqwDhASIEAQAAAP8AAQbq4iEA4QEMIAEAAAAAAQEH6mIgAOEBDCABAAAAAQEBB+rCGgDhARwMAQAAAAIBAQfqIiAA4QEMIAEAAAAEAQEF6iJDAOEBDCABAAAABAEBB+pCaQDhAQwgAQAAAAUBAQfswtgB2QEMIAEAAAAGAQEH7WKfAXICDSABAAAACQEhBe7i2AF3Ag0gAQAAAAkBEQXvgp8BeQINIAEAAAAJAQEF8ALZAdUBDCABAAAA0vwARfAi2QHhAQwgAQAAAAsBAQfxgj8A4QEMIAEAAAAMAQEH8cJ2AOEBFgQBAAAADQEBB/Hi8ADZAR4gAQAAAA4BAQbxoucA4QEMIAEAAAAPAQEH8YIdAOEBGkABAAAADgEBBfHiKQDhAS4gAQAAABEBAQbxoicA4QEaQAEAAAASAQEH8YIwAOEBGkABAAAAEwEBB/EiVwDhARYEAQAAABQBAQfxQk4A4QEeAAEAAAAVAQEG8YJMAOEBDCABAAAAFgEBB/HiFQDhARpAAQAAABUBAQXxQhgA4QEaQAEAAAAYAQEH8QJGAOEBFgQBAAAAGQEBB/HiFQDhAR4AAQAAAA4BAQLxoiMA4QEeBAEAAAAbAQEG8UKPAOEBFgQBAAAAHAEBB/HCGQDhAQwgAQAAAB0BAQfxoqAA4QEMIAEAAAAeAQEH8aLCAOEBDCABAAAAHwEBB/HCGADhAQwgAQAAACABAQfxwp4A4QEMIAEAAAAhAQEH8SJeAOEBDCABAAAAIgEBB/GiNADhAQwgAQAAACMBAQfxQmkA4QEMIAEAAAAkAQEH8SIlAOEBFgQBAAAAJQEBB/GiPADhAQwgAQAAACYBAQfxwjUA4QEaQAEAAAAnAQEH8cIZAOEBDCABAAAAKAEBB/EiJADhAQwgAQAAACkBAQfxIjQA4QEeIAEAAAAqAQEG8YIXAOEBGkABAAAAKwEBB/Fi+QDhARpAAQAAAA4BAQXyQtkB+wEYMAEAAAAtAREF8ULZAeEBIgABAAAALgEBBvGibwDhAR4AAQAAAC8BAQbxAnYA4QEaQAEAAAAwAQEH8aIXAOEBDCABAAAAMQEBB/EidgDhAQwgAQAAADIBAQfxAhkA4QEMIAEAAAAzAQEH8eIXAOEBDCABAAAANAEBB/Fi2QHhAQwgAQAAADUBAQfxIiYA4QEMIAEAAAA2AQEH8aIjAOEBDCABAAAANwEBB/FiGwDhARYEAQAAADgBAQfxIjIA4QEMIAEAAAA5AQEH8QJPAOEBDCABAAAAOgEBB/HCVgDhARYEAQAAAD8BAQXxwkoA4QEWBAEAAAA/AQEF8WIbAOEBDCABAAAAPQEBB/HiPwDhAR4AAQAAAD4BAQbxorkA4QEWBAEAAAA/AQEH8cJkAOEBFgQBAAAAQAEBB/GiJADhARwMAQAAAEEBAQfxYhsA4QEMIAEAAABCAQEH8cIYAOEBDCABAAAAQwEBB/FiIgDhARYEAQAAAEQBAQfxAjMA2QEeAAEAAABFAQEG8aKKAOEBFgQBAAAARgEBB/HCGgDhARwMAQAAAEcBAQfxYhsA4QEMIAEAAABIAQEH8YLZAdkBDCABAAAASQEBB/GCwwDhAR4AAQAAAEoBAQbxQh0A4QEMIAEAAABLAQEH8eIhAOEBDCABAAAATAEBB/GCXADhARYEAQAAAE0BAQfxAqIA4QEeAAEAAABOAQEG8QJAAOEBIEABAAAATgEBAvECWADhAR4AAQAAAE4BAQTx4hUA4QEaQAEAAABOAQEF8QJ7ANkBDCABAAAAUgEBB/FCtQDhAQwgAQAAAFMBAQfxAl4A4QEMIAEAAABTAQEF8aLZAeEBDCABAAAAVQEBB/ECJwDhAQwgAQAAAFYBAQfxoiYA4QEWBAEAAABXAQEH8QIZAOEBDCABAAAAWAEBB/GiJwDhARpAAQAAAFkBAQfxAhkA4QEMIAEAAABaAQEH8YIwAOEBGkABAAAAWwEBB/HCKADhARwMAQAAAFwBAQfxYhsA4QEMIAEAAABdAQEH8QInAOEBDCABAAAAXgEBB/HCJgDhAQwgAQAAAF8BAQfxwjQA4QEWBAEAAABgAQEH8eLUAOEBDCABAAAAUgEBBfHinADhAQwgAQAAAGIBAQfxol4A4QEeQAEAAABjAQEG8QIZAOEBDCABAAAAZAEBB/GiGADhASBAAQAAAGMBAQLxYioA4QEMIAEAAABmAQEH8eIVAOEBHkABAAAAYwEBAvFiHADhARYEAQAAAGgBAQfxoioA4QEcDAEAAABpAQEH8YIqAOEBHiABAAAAYwEBBPFibwDhAR4gAQAAAGsBAQbxAkAA4QEgQAEAAABrAQEC8UIoAOEBDCABAAAAbQEBB/ECKgDhAQwgAQAAAG0BAQXxIi0A4QEMIAEAAABvAQEH8QJYAOEBHiABAAAAawEBBPHiFQDhAS4gAQAAAGsBAQLxIqcA4QEMIAEAAABxAQEF8WIlAeEBFgQBAAAAcwEBB/EiWgDZASIgAQAAAHQBAQbxgiwA4QEMIAEAAAB1AQEH8UIdAOEBIgABAAAAdgEBBvFingHhASIAAQAAAHcBAQbxQkgB4QEeAAEAAAB4AQEG8cIZAOEBHkABAAAAeQEBBvECQADhARpAAQAAAHkBAQXxAlgA4QEaQAEAAAB5AQEF8eIVAOEBLkABAAAAeQEBAvFiHADhARYEAQAAAH0BAQfxYhQA4QEMIAEAAAB+AQEH8YJRAOEBDCABAAAAfgEBBfFiHgDhASIAAQAAAIABAQbxghcA4QEaQAEAAACBAQEH8eIZAOEBGkABAAAAgQEBBfECGgDhARpAAQAAAIEBAQXx4hUA4QEaQAEAAACBAQEF8QIZAOEBDCABAAAAhQEBB/GCIQDhARYEAQAAAIYBAQfxYhoA4QEMIAEAAACHAQEH8eI6AOEBHgABAAAAiAEBBvHiJgDhAR4AAQAAAIgBAQTx4hUA4QEaQAEAAACIAQEF8UJKAOEBDCABAAAAiwEBB/Ei0gDhASIAAQAAAIwBAQbxYm0A4QEeIAEAAACNAQEG8WIfAOEBGkABAAAAjQEBBfHCJgDhAQwgAQAAAI8BAQfxoh8A4QEeIAEAAACNAQEE8aJtAOEBHgABAAAAjQEBRvFiHwDhARpAAQAAAI4BAUXxwiYA4QEMIAEAAACTAQEH8YJpAOEBDCABAAAAkAEBRfFC1gDhAQwgAQAAAJUBAQfxIkUA4QEaQAEAAACWAQEH8QJAAOEBFgQBAAAAlwEBB/GC4QDhAR4AAQAAAJgBAQbxYioA4QEMIAEAAACZAQEH8cJAAdkBHkABAAAAmgEBBvGCJQDhAQwgAQAAAJsBAQfxolcA4QEiBAEAAACcAQEG8SKgAOEBDCABAAAAnQEBB/GCFwDhARYEAQAAAJ4BAQfx4j8A4QEMIAEAAACfAQEH8aKgAOEBDCABAAAAoAEBB/EigQDhAQwgAQAAAKEBAQfxAoQA4QEeQAEAAADb/gAC8WIuAOEBFgQBAAAAowEBB/FifQDhAQwgAQAAAKQBAQfxYioA4QEMIAEAAAClAQEH8QIqAOEBDCABAAAApQEBBfHCVgDhARYEAQAAAKsBAQXxwkoA4QEWBAEAAACrAQEF8WIbAOEBDCABAAAAqQEBB/HiFQDhAS5AAQAAAJoBAQLxYsAA4QEWBAEAAACrAQEH8eK/AOEBDCABAAAArAEBB/ECXQDhARYEAQAAAK0BAQfx4kAB4QEeQAEAAACaAQEE8WIyAOEBDCABAAAArwEBB/FiGwDhAQwgAQAAALABAQfxApcA4QEWBAEAAACxAQEH8aLYAOEBDCABAAAAsgEBB/GiVwDhAQwgAQAAALMBAQfxQjAB4QEMIAEAAAC0AQEH8aIoAOEBDCABAAAAtAEBBfFCJADhARYEAQAAALYBAQfxYsMB4QEMIAEAAAC3AQEH8WIcAOEBFgQBAAAAuAEBB/HiIADhAR4gAQAAALkBAQbxYh8A4QEaQAEAAAC5AQEF8QIhAOEBGkABAAAAuQEBBfGCJADhAQwgAQAAALwBAQfx4hUA4QEaQAEAAAC5AQEF8UIkAOEBFgQBAAAAvgEBB/HiIQDhAQwgAQAAAL8BAQfxYiAA4QEMIAEAAADAAQEH8UIgAOEBDCABAAAAwQEBB/HCGgDhARwMAQAAAMIBAQfxQh0A4QEWBAEAAADDAQEH8cIqAOEBDCABAAAAxAEBB/ECVgDhAS4gAQAAAMUBAQbxYhkA4QEgQAEAAADFAQEC8YJDAOEBDCABAAAAxwEBB/HCIwDhARpAAQAAAMUBAQXxwlYA4QEWBAEAAADOAQEF8cJKAOEBFgQBAAAAzgEBBfHiFQDhAR5AAQAAAMUBAQLxAksA4QEMIAEAAADMAQEH8SJXAOEBFgQBAAAAzQEBB/FCjwDhARYEAQAAAM4BAQfxotIA4QEMIAEAAADPAQEH8UKRAOEBIgABAAAA0AEBBvKCGQDnARgwAQAAANEBEQXxghkA4QFMAAEAAADRAQEC8UIdAOEBFgQBAAAA0wEBB/GiQgDhAS4AAQAAANQBAQbx4hkA4QEgQAEAAADUAQEC8SIaAOEBIgABAAAA1gEBBvGCFwDhARpAAQAAANcBAQfx4hkA4QEaQAEAAADXAQEF8QIaAOEBGkABAAAA1wEBBfHiFQDhARpAAQAAANcBAQXxAhkA4QEMIAEAAADbAQEH8eIhAOEBDCABAAAA3AEBB/FCIADhAQwgAQAAAN0BAQfxwlYA4QEWBAEAAADqAQEF8cJKAOEBFgQBAAAA6gEBBfFiGwDhAQwgAQAAAOABAQfx4hUA4QEMIAEAAADhAQEH8SKsAOEBHgABAAAA4gEBBvFCKADhAQwgAQAAAOMBAQfxYhsA4QEWBAEAAADkAQEH8eIVAOEBIiABAAAA5QEBBvECXQDhARYEAQAAAOYBAQfxgrEA4QEWBAEAAADnAQEH8aI9AOEBGkABAAAA1AEBBfJCHADnARgwAQAAAOkBEQXxQhwA4QEWBAEAAADqAQEH8cKzANkBHgABAAAA6wEBBvGC7QDhAQwgAQAAAOwBAQfxojwA4QEMIAEAAADtAQEH8aI8AOEBDCABAAAA7gEBB/GiigDhARYEAQAAAO8BAQfxYhsA4QEMIAEAAADwAQEH8WIbAOEBFgQBAAAA8QEBB/GiKgDhARwMAQAAAPIBAQfxYhsA4QEMIAEAAADzAQEH8UI4AOEBDCABAAAA9AEBB/HizADhAR4AAQAAAOsBAQTx4hkA4QEgAAEAAADrAQEC8cJWAOEBFgQBAAAA+wEBBfHCSgDhARYEAQAAAPsBAQXx4hUA4QEaQAEAAADrAQEF8aIjAOEBFgQBAAAA+gEBB/GCrADhARYEAQAAAPsBAQfzwtkB1QEMIAEAAAD8AQEF9II/AOcBGDABAAAA/QERBfWCPwDhARgwAQAAAP0BAQf1wnYA4QEWBAEAAAD/AQEH9uLZAdkBDCABAAAAAAIBB/YC0QDhAQwgAQAAAAECAQf2IqoA2QEMIAEAAAACAgEH9uJCAOEBDCABAAAAAwIBB/fCnQDKARkwAQAAAAUCEQX44p0AzQEZMAEAAAAFAgEF+QLaAdIBGDABAAAABgIRBfoi2gHVARgwAQAAAAYCAQX6AkwA4QEMIAEAAAAIAgEH+kLfAOEBDCABAAAACQIBB/qiiQHhAQwgAQAAAAoCAQf6IksA4QEWBAEAAAALAgEH+gJcAOEBDCABAAAADAIBB/oifADhAQwgAQAAAA0CAQf6QjsA4QEMIAEAAAAOAgEH+kIdAOEBFgQBAAAADwIBB/piRgDhAQwgAQAAABACAQf6IhoA4QEWBAEAAAARAgEH+oIcAOEBIgABAAAAEgIBBvoiNgDhAQwgAQAAABMCAQf64ikA4QEeAAEAAAAUAgEG+gIqAOEBDCABAAAAFAIBBfpioADhAQwgAQAAABYCAQf6YhkA4QEWBAEAAAAXAgEH+oJsAeEBDCABAAAAGAIBB/piJADhARYEAQAAABkCAQf6whkA4QEiAAEAAAAaAgEG+qIbAOEBDCABAAAAGwIBB/riOgDhAR4gAQAAABwCAQb64iYA4QEaQAEAAAAcAgEF+uIVAOEBGkABAAAAHAIBBfpCMgDhAQwgAQAAAB8CAQf6wiUA4QEMIAEAAAAgAgEH+sLfAOEBHgABAAAAFAIBRvoCIQDhAQwgAQAAABUCAUX6QtoB2QEMIAEAAAAjAgEH+mLaAeEBDCABAAAAJAIBB/oCJgDhAQwgAQAAACUCAQf64jcA4QEWBAEAAAAmAgEH+iIZAOEBDCABAAAAJwIBB/rCHwDhAQwgAQAAACgCAQf6gjEA4QEaQAEAAAArAgEF+iIgAOEBGkABAAAAKwIBBfrCNQDhARpAAQAAACsCAQf6gmAA4QEMIAEAAAAsAgEH+mIkAOEBFgQBAAAALQIBB/pCIADhAQwgAQAAAC4CAQf6wjQA4QEMIAEAAAAvAgEH+oIXAOEBFgQBAAAAMAIBB/riGQDhARYEAQAAADECAQf6Ym8A4QEMIAEAAAAyAgEH+uI0AOEBDCABAAAAMwIBB/rCHgDhARYEAQAAADQCAQf64iEA4QEMIAEAAAA1AgEH+kIyAOEBDCABAAAANgIBB/oiUwDhAQwgAQAAADcCAQf6Yt0A4QEMIAEAAAA4AgEH+gKJAOEBDCABAAAAOQIBB/qiFwDhAR4gAQAAADoCAQb6YisA4QEMIAEAAAA7AgEH+mKgAOEBDCABAAAAPAIBB/oChgDhASBAAQAAADoCAQL6oooA4QEMIAEAAAA+AgEH+uIVAOEBHkABAAAAOgIBAvoiZQDhAQwgAQAAADoCAQX6Yh4A4QEMIAEAAABBAgEH+iJXAOEBFgQBAAAAQgIBB/oidADhAQwgAQAAAEMCAQf6gmoA4QEMIAEAAABaAgEF+kIkAOEBFgQBAAAARQIBB/rCGADhAQwgAQAAAEYCAQf6wh4A4QEWBAEAAABHAgEH+gIiAOEBDCABAAAASQIBBfqiPADhAQwgAQAAAEkCAQX6Yh8A4QEWBAEAAABKAgEH+sIoAOEBHAwBAAAASwIBB/piGwDhAQwgAQAAAEwCAQf6wjEA4QEeIAEAAABNAgEG+sIZAOEBFgQBAAAATgIBB/qiQADhAQwgAQAAAE8CAQf6YigA4QEeIAEAAABNAgEE+qIaAOEBFgQBAAAAUQIBB/riFQDhARpAAQAAAE0CAQX6QmIA4QEMIAEAAABTAgEH+mIcAOEBFgQBAAAAVAIBB/qiKgDhARwMAQAAAFUCAQf6YhsA4QEMIAEAAABWAgEH+mJLAOEBDCABAAAAVwIBB/pCHADhAQwgAQAAAFgCAQf6gkIA4QEWBAEAAABZAgEH+iJaAOEBDCABAAAAWgIBB/qC2gHZARYEAQAAAFsCAQf6QrQA4QEMIAEAAABcAgEH+qKwAOEBGkABAAAAXQIBB/qiGADhARpAAQAAAF4CAQX64hUA4QEaQAEAAABdAgEF+sIcAOEBGkABAAAAXQIBBfoiJgDhARYEAQAAAFsCAQX6wkoA4QEWBAEAAABbAgEF+qLaAeEBDCABAAAAYwIBB/riPwDhAR4AAQAAAGQCAQb6ohcA4QEMIAEAAABlAgEH+iKiAOEBDCABAAAAZgIBB/piegDhAQwgAQAAAGcCAQf6As0A4QEMIAEAAABoAgEH+mKgAOEBDCABAAAAaQIBB/oCQADhASBAAQAAAGQCAQL6QigA4QEMIAEAAABrAgEH+gJGAOEBDCABAAAAbAIBB/oCWADhAR4AAQAAAGQCAQT64hUA4QEaQAEAAABkAgEF+oI2AOEBFgQBAAAAbwIBB/rC2gHhAQwgAQAAAHACAQf6otoB4QEMIAEAAABxAgEH+uIhAOEBDCABAAAAcgIBB/piIADhAQwgAQAAAHMCAQf6IhoA4QEWBAEAAAB0AgEH+sIoAOEBHAwBAAAAdQIBB/piGwDhAQwgAQAAAHYCAQf64iEA4QEMIAEAAAB3AgEH+mIgAOEBDCABAAAAeAIBB/oiGgDhARYEAQAAAHkCAQf64toB4QEMIAEAAAB6AgEH+qIuAOEBDCABAAAAewIBB/pi3gDhASIEAQAAAHwCAQb6gkwA4QEMIAEAAAB9AgEH+oJMAOEBDCABAAAAfgIBB/oCIwDhAR5AAQAAAH8CAQb6QiUA4QEaQAEAAAB/AgEF+uIVAOEBGkABAAAAfwIBBfoCMgDhAR4gAQAAAH8CAQT6gjkA4QEMIAEAAACDAgEH+uIVAOEBDCABAAAAhAIBB/qiJADhARwMAQAAAIUCAQf6YhsA4QEMIAEAAACGAgEH+iKEAOEBFgQBAAAAfAIBBfrCSgDhARYEAQAAAHwCAQX6gn4A4QEMIAEAAACJAgEH+uJ4AOEBDCABAAAAigIBB/piJADhAQwgAQAAAIsCAQf6olQA4QEMIAEAAACMAgEH+qJQAOEBDCABAAAAjQIBB/piJADhAQwgAQAAAI4CAQf6orQB2QEeAAEAAACPAgEG+oLtAOEBDCABAAAAkAIBB/piHADhARYEAQAAAJECAQf6oioA4QEcDAEAAACSAgEH+mIbAOEBDCABAAAAkwIBB/pCIADhAQwgAQAAAJQCAQf6gkQA4QEMIAEAAACVAgEH+uI6AOEBIiABAAAAlgIBBvoCVgDhAQwgAQAAAJcCAQf6oiQA4QEcDAEAAACYAgEH+qImAOEBGkABAAAAjwIBBfriFQDhASBAAQAAAI8CAQL6wh4A4QEWBAEAAACbAgEH+oIXAOEBFgQBAAAAnAIBB/pCOQDhARYEAQAAAJ0CAQf6olEA4QEMIAEAAACeAgEH+qKiAOEBGkABAAAAjwIBBfoC9wDhAQwgAQAAAKACAQf6gv8A4QEMIAEAAACgAgEF+uI1AOEBDCABAAAAogIBB/oiWwDhAQwgAQAAAKMCAQf64mAA4QEWBAEAAACkAgEH+iKeAeEBDCABAAAApQIBB/uClwHnARgwAQAAAKYCEQX6gpcB4QEYMAEAAACmAgEF+gL3AOEBDCABAAAAqAIBB/riTADhASBAAQAAAKkCAQL6goQA4QEMIAEAAACqAgEH+mJuAeEBDCABAAAAqwIBB/riUQDhAQwgAQAAAKwCAQf6YlEA4QEeAAEAAACtAgEG+qJMAOEBDCABAAAArgIBB/pioADhAQwgAQAAAK8CAQf6AkAA4QEaQAEAAACtAgEF+qIjAOEBDCABAAAAsQIBB/rCIwDhAQwgAQAAALECAQX64hUA4QEeIAEAAACtAgEC+oJMAOEBDCABAAAAtAIBB/rinwDhAQwgAQAAALUCAQf6oh8A4QEMIAEAAAC1AgEF+mJJAOEBHgABAAAAtwIBBvriFQDhAQwgAQAAALgCAQf6wlQA4QEeIAEAAACtAgEE+iJCAOEBDCABAAAAugIBB/sCOgDnARgwAQAAALsCEQX6AjoA4QEeAAEAAAC8AgEG+uIZAOEBFgQBAAAAvQIBB/oiRgDhAQwgAQAAAL4CAQf6IlcA4QEWBAEAAAC/AgEH+mIbAOEBDCABAAAAwAIBB/rCIADhARYEAQAAAMECAQf6AjAA4QEMIAEAAAC8AgEF+qLMAeEBDCABAAAAwwIBB/riVQDhAQwgAQAAAMQCAQf6Ah4A4QEMIAEAAADFAgEH+qKIAOEBDCABAAAAxgIBB/rCuADhAQwgAQAAAMcCAQf64iEA4QEMIAEAAADIAgEH+sIVAOEBDCABAAAAyQIBB/pCigHhAR4AAQAAAMoCAQb6QoQB4QEMIAEAAADLAgEH+kIgAOEBDCABAAAAzAIBB/rCGQDhARYEAQAAAM0CAQf6YhsA4QEMIAEAAADOAgEH+mIcAOEBFgQBAAAAzwIBB/qiKgDhARwMAQAAANACAQf6YhsA4QEMIAEAAADRAgEH+kIgAOEBDCABAAAA0gIBB/qipADhAQwgAQAAANMCAQf6AiYA4QEMIAEAAADUAgEH+oJFAOEBDCABAAAA0wIBBfrinADhAQwgAQAAANYCAQf6AtsB4QEMIAEAAADXAgEH+qI3AeEBDCABAAAA2AIBB/oiJgDhAQwgAQAAANkCAQf6QjkA4QEWBAEAAADaAgEH+kLfAOEBDCABAAAA2wIBB/qCMQDhASAEAQAAANwCAQL6IiAA4QEMIAEAAADeAgEF+mIiAOEBHiABAAAA3gIBBvoCwADhAQwgAQAAAN8CAQf6wlwA4QEMIAEAAADgAgEH+sIZAOEBFgQBAAAA4QIBB/riJADhAQwgAQAAAOICAQf6IiIA4QEMIAEAAADjAgEH+gJYAOEBDCABAAAA4AIBB/ritgDhAQwgAQAAAOUCAQf6orwA4QEMIAEAAADmAgEH+oJmAOEBDCABAAAA5wIBB/rCQgDhAQwgAQAAAOgCAQf6Ii0A4QEMIAEAAADpAgEH+iJFAOEBDCABAAAA6wIBBfoCRwDhAQwgAQAAAOsCAQf6IiIA4QEMIAEAAADsAgEH+sJCAOEBDCABAAAA7QIBB/pCHQDhAQwgAQAAAO4CAQf6ghcA4QEMIAEAAADvAgEH+iIeAOEBDCABAAAA8AIBB/pCHgDhAQwgAQAAAPECAQf6whgA4QEiAAEAAADyAgEG+kIdAOEBIgABAAAA8wIBBvpiHADhARYEAQAAAPQCAQf6gjEA4QEaQAEAAAD3AgEF+iIgAOEBGkABAAAA9wIBBfrCNQDhARpAAQAAAPcCAQX6AnQA4QEMIAEAAAD4AgEH+oIXAOEBGkABAAAA+QIBB/piJADhASIAAQAAAPoCAQb6QiAA4QEMIAEAAAD7AgEH+uIeAOEBDCABAAAA/AIBB/rCigDhAQwgAQAAAP0CAQf6IksA4QEMIAEAAAD+AgEH+oIBAeEBDCABAAAA/wIBB/piIgDhARYEAQAAAAADAQf6ghcA4QEaQAEAAAABAwEH+gIaAOEBGkABAAAAAQMBBfriFQDhARpAAQAAAAEDAQX6AhkA4QEMIAEAAAAEAwEH+kJRAOEBDCABAAAABQMBB/qCMQDhARpAAQAAAAkDAQX6Yk4A4QEuAAEAAAAHAwEG+mIbAOEBDCABAAAACAMBB/rCGgDhAR4AAQAAAAkDAQb6wqkA4QEMIAEAAAAKAwEH+iLbAeEBDCABAAAACwMBB/oibQDhASIgAQAAAAwDAQb6wqYA4QEMIAEAAAANAwEH+iJeAOEBDCABAAAADgMBB/rCWQDhAQwgAQAAAA4DAQX6IhwA4QEMIAEAAAAQAwEH+qI2AOEBDCABAAAAEQMBB/oiRgDhAQwgAQAAABIDAQf64jMA4QEMIAEAAAATAwEH+sLMAOEBDCABAAAAFAMBB/piTQDhAQwgAQAAABUDAQf64qMA4QEMIAEAAAAWAwEH+sJOAOEBDCABAAAAFwMBB/pCZgDhAQwgAQAAABgDAQf6wucA4QEMIAEAAAAZAwEH+oINAeEBDCABAAAAGQMBBfoiHADhAQwgAQAAABsDAQf6AkEA4QEMIAEAAAAcAwEH+uImAOEBDCABAAAAHwMBBfpCGgDhAQwgAQAAAB4DAQf6YnMA4QEMIAEAAAAfAwEH+oKlAOEBDCABAAAAIAMBB/rCNQDhAQwgAQAAACEDAQf6Il4A4QEMIAEAAAAiAwEH+sJmAOEBLiABAAAAIwMBBvpCkADhAQwgAQAAACUDAQX6gooA4QEMIAEAAAAlAwEF+oIXAOEBGkABAAAAJgMBB/oCGQDhAQwgAQAAACcDAQf6QqYA4QEMIAEAAAAoAwEH+gJWAOEBDCABAAAAKQMBB/oCNADhAQwgAQAAACoDAQf64hkA4QEgAAEAAAAjAwEC+uIeAOEBDCABAAAALAMBB/rCVgDhARYEAQAAAD0DAQX6wkoA4QEWBAEAAAA9AwEF+mIkAOEBDCABAAAALwMBB/piGwDhAQwgAQAAADADAQf64hUA4QEeAAEAAAAjAwEC+mI6AOEBDCABAAAAMgMBB/qiIwDhARYEAQAAADMDAQf6IlcA4QEWBAEAAAA0AwEH+iKTAOEBDCABAAAANQMBB/riHgDhAQwgAQAAADYDAQf6gjIA4QEMIAEAAAA2AwFH+kJGAOEBDCABAAAAIwMBBfqCTADhAQwgAQAAADkDAQf64h4A4QEMIAEAAAA6AwEH+mKpAOEBDCABAAAAOwMBB/qCJADhAQwgAQAAADwDAQf6IkMA4QEWBAEAAAA9AwEH+mIcAOEBFgQBAAAAPgMBB/piGwDhAQwgAQAAAD8DAQf6QiAA4QEMIAEAAABAAwEH+mIiAOEBFgQBAAAAQQMBB/oCGQDhAQwgAQAAAEIDAQf6Qh0A4QEMIAEAAABDAwEH+qIpAOEBDCABAAAARAMBB/oiKQDhAR4AAQAAAEUDAQb64hkA4QEaQAEAAABFAwEF+uIeAOEBDCABAAAARwMBB/sCGgDnAQwgAQAAAEUDEQX6AhoA4QEaQAEAAABFAwEF+uIVAOEBGkABAAAARQMBBfvCaQDnARgwAQAAAEsDEQX6wmkA4QFMAAEAAABLAwEC+uJgAOEBFgQBAAAATQMBB/qCNgDhASIAAQAAAE4DAQb6Qh0A4QEMIAEAAABPAwEH+uI6AOEBHkABAAAAUAMBBvrCGQDhARYEAQAAAFEDAQf6oiYA4QEaQAEAAABQAwEF+sImAOEBDCABAAAAUwMBB/riJgDhARpAAQAAAFADAQX64hUA4QEaQAEAAABQAwEF+gIZAOEBDCABAAAAVgMBB/pCKQDhAR4AAQAAAFcDAQb6gikA4QEMIAEAAABYAwEH+kI5AOEBFgQBAAAAWQMBB/oCQwDhAQwgAQAAAFoDAQf6wnsA4QEWBAEAAABbAwEH+uIVAOEBFgQBAAAAXAMBB/qCYADhAQwgAQAAAF0DAQf6QtsB4QEMIAEAAABeAwEH+kJ7AOEBDCABAAAAXgMBBfpiHAHhAQwgAQAAAGADAQf6AnwA4QEMIAEAAABhAwEH+qKlANkBDCABAAAAYgMBB/rCQgDhAQwgAQAAAGMDAQf6YlkA4QEMIAEAAABkAwEH+qKIAOEBDCABAAAAZQMBB/rCcwDhAQwgAQAAAGYDAQf6Am4A4QEMIAEAAABnAwEH+qI8AOEBDCABAAAAaAMBB/piNwDhAQwgAQAAAGkDAQf6QkgB4QEeAAEAAABqAwEG+qKoAOEBDCABAAAAawMBB/piWwDhAQwgAQAAAGwDAQf6gtcA4QEMIAEAAABtAwEH+gJMAOEBIgQBBAAAbgMBFvpi2wHhAQwgAQAAAG8DAQf6YhsA4QEMIAEAAABwAwEH+kLfAOEBDCABAAAAcQMBB/ri+wDhAQwgAQAAAHIDAQf6AokA4QEMIAEAAABzAwEH+mI3AOEBDCABAAAAdAMBB/pCAAHhAQwgAQAAAHUDAQf7YqUB5wEYMAEAAAB2AxEF+mKlAeEBGDABAAAAdgMBB/piPQDhARYEAQAAAHgDAQf6Ig4B4QEMIAEAAAB5AwEH+oLHAOEBDCABAAAAegMBB/rCLwDhAQwgAQAAAHsDAQf6IpMA4QEMIAEAAAB8AwEH+mI6AOEBDCABAAAAfQMBB/oiRQDhAR4gAQAAAH4DAQb6AkAA4QEaQAEAAAB+AwEF+kIoAOEBDCABAAAAgAMBB/oCWADhAQwgAQAAAH4DAQX64hUA4QEeAAEAAAB+AwEC+qKIAOEBDCABAAAAgwMBB/qC5ADhAQxEAQAAAIQDAQf6woUA2QEWBAEAAADTAwEF+oLbAeEBDCABAAAAhgMBB/qiPADhAQwgAQAAAIcDAQf6giEA4QEWBAEAAACIAwEH+qI8AOEBDCABAAAAiQMBB/rCcADhAQwgAQAAAJwDAQX6AhkA4QEMIAEAAACLAwEH+oIxAOEBIAABAAAAjAMBAvoiIADhARpAAQAAAI4DAQX6wjUA4QEaQAEAAACOAwEH+uIVAOEBGkABAAAAjgMBBfpiHADhARYEAQAAAJADAQf6oioA4QEcDAEAAACRAwEH+mIbAOEBDCABAAAAkgMBB/oiOwDhAQwgAQAAAJMDAQf6AhkA4QEeAAEAAACUAwEG+oIhAOEBFgQBAAAAlQMBB/qiGADhASBAAQAAAJQDAQL64hUA4QEgQAEAAACUAwEC+uIYAOEBHiABAAAAlAMBBPrCZADhAQwgAQAAAJkDAQf6QiAA4QEMIAEAAACaAwEH+mIiAOEBDCABAAAAmwMBB/oiNgDhAQwgAQAAAJwDAQf6Am4A4QEeIAEAAACdAwEG+oIvAOEBDCABAAAAngMBB/oCQADhARYEAQAAAJ8DAQf6AkAA4QEWBAEAAACgAwEH+qJ1AOEBDCABAAAAngMBBfoiRgDhAQwgAQAAAKIDAQf6ItgB4QEMIAEAAACjAwEH+gInAOEBDCABAAAApAMBB/oiogDhAR4AAQAAAKUDAQb6oiYA4QEaQAEAAAClAwEF+sImAOEBDCABAAAApwMBB/riFQDhARpAAQAAAKUDAQX6on0A4QEMIAEAAACpAwEH+qKoAOEBDCABAAAAqgMBB/rCpgDhAQwgAQAAAKsDAQf6YiYA4QEeAAEAAACsAwEG+uIeAOEBDCABAAAArQMBB/riFQDhARpAAQAAAKwDAQX6oj0A4QEeAAEAAACsAwEE+kKmAOEBDCABAAAAsAMBB/ritADhAQwgAQAAALEDAQf6gtcA4QEMIAEAAACyAwEH+iImAOEBDCABAAAAswMBB/riFQDhAQwgAQAAALQDAQf6oiMA4QEMIAEAAAC1AwEH+mJcAOEBDCABAAAAtgMBB/riQgDhAQwgAQAAALcDAQf6wioA4QEMIAEAAAC4AwEH+qLbAeEBDCABAAAAuQMBB/qCfwDhAQwgAQAAALoDAQf6wlYA4QEWBAEAAADSAwEF+sJKAOEBFgQBAAAA0gMBBfpiGwDhAQwgAQAAAL0DAQf64hUA4QEaQAEAAACdAwEF+iJXAOEBFgQBAAAAvwMBB/oiZADhAQwgAQAAAMADAQf6wkIA4QEMIAEAAADBAwEH+oJ/AOEBHiABAAAAwgMBBvoCRgDhARYEAQAAAMMDAQf6QjgA4QEMIAEAAADEAwEH+oJ/AOEBDCABAAAAxQMBB/riigDhAQwgAQAAAMYDAQf6QoMA4QEMIAEAAADHAwEH+mIlAOEBDCABAAAAnQMBB/pC/ADhAQwgAQAAAMkDAQf6IhgA4QEMIAEAAADKAwEH+kI5AOEBDCABAAAAywMBB/rCHAHhAR4gAQAAAMwDAQb6YhkA4QEaQAEAAADMAwEF+sIjAOEBDCABAAAAzAMBBfriFQDhARpAAQAAAMwDAQX6wkIA4QEMIAEAAADQAwEH+oIkAOEBDCABAAAA0QMBB/qCpgDhARYEAQAAANIDAQf6YkkA4QEWBAEAAADTAwEH+qIkAOEBHAwBAAAA1AMBB/piGwDhAQwgAQAAANUDAQf6IkIA4QEMIAEAAADWAwEH+sJzAOEBHkABAAAA1wMBAvoCaADhAQwgAQAAANgDAQf6glIA4QEMIAEAAADZAwEH+kIuAOEBDCABAAAA2gMBB/oixwDhAQwgAQAAANsDAQf6AiIA4QEMIAEAAADcAwEH+gIZAOEBDCABAAAA3QMBB/piIgDhARYEAQAAAN4DAQf6YiQA4QEiBAEAAADfAwEG+mIbAOEBDCABAAAA4AMBB/piHADhARYEAQAAAOEDAQf6QiAA4QEMIAEAAADiAwEH+iJ9AOEBDCABAAAA4wMBB/oiIADhAQwgAQAAAOQDAQf6YhwA4QEWBAEAAADlAwEH+gIiAOEBDCABAAAA6AMBBfpiGwDhAQwgAQAAAOcDAQf6ojwA4QEMIAEAAADoAwEH+mIiAOEBFgQBAAAA6QMBB/qCFwDhARpAAQAAAOoDAQf6AhkA4QEMIAEAAADrAwEH+gIZAOEBDCABAAAA7AMBB/qiJwDhARpAAQAAAPIDAUf6gicA4QEWBAEAAADzAwFH+kIrAOEBGkABAAAA9AMBRfriFQDhARpAAQAAAPUDAUX6AhkA4QEMIAEAAADxAwEH+oIwAOEBGkABAAAA8gMBB/qiMADhASAAAQAAAPIDAQL6wjAA4QEaQAEAAADyAwEF+uIVAOEBGkABAAAA8gMBBfpCIADhAQwgAQAAAPYDAQf6on0A4QEaQAEAAADKEAEF+qLYAOEBDCABAAAA+AMBB/oiEgHhAQwgAQAAAPkDAQf6wj0A4QEMIAEAAAD6AwEH+gIiAOEBDCABAAAA+wMBB/oCeQDhAQwgAQAAAPwDAQf6ousA4QEMIAEAAAD+AwEF+uJUAOEBDCABAAAA/gMBB/oiEgHhAQwgAQAAAP8DAQf7wtsBFwIYMAEAAAAABBEF+uLbAdkBGDABAAAAAAQBBfqCjQDZAR5AAQAAAAIEAQb6gpMA4QEMIAEAAAADBAEH+iJAAOEBDCABAAAABAQBB/oCbwDhAQwgAQAAAAUEAQX6QmgA4QEMIAEAAAAFBAEF+gJyAOEBFgQBAAAABwQBB/pCIADhAQwgAQAAAAgEAQf6YhsA4QEMIAEAAAAJBAEH+iIeAOEBDCABAAAACgQBB/rCHADhARYEAQAAAAsEAQf6whgA4QEWBAEAAAAMBAEH+qIaAOEBFgQBAAAADQQBB/rCIADhARwMAQAAAA4EAQf6YhsA4QEWBAEAAAAPBAEH+uIVAOEBDCABAAAAEAQBB/oiXgDhAQwgAQAAABEEAQf6YhwA4QEWBAEAAAASBAEH+gIZAOEBDCABAAAAEwQBB/qCMQDhASAAAQAAABQEAQL6IiAA4QEaQAEAAAAWBAEF+sI1AOEBGkABAAAAFgQBB/qiUADhAQwgAQAAABcEAQf6YhwA4QEWBAEAAAAYBAEH+kK8AOEBDCABAAAAGQQBB/oiLwDhAQwgAQAAABoEAQf6YlYA4QEaQAEAAAACBAEF+oJ/AOEBDCABAAAAHAQBB/rCPADhARYEAQAAAB0EAQf6YjoA4QEiAAEAAAAeBAEG+mIkAOEBIgABAAAAHwQBBvriIQDhAQwgAQAAACAEAQf6wlYA4QEWBAEAAAAkBAEF+sJKAOEBFgQBAAAAJAQBBfriFQDhARpAAQAAAAIEAQX6ovIA4QEWBAEAAAAkBAEH+qIeAOEBDCABAAAAJQQBB/qiHgDhAQwgAQAAACYEAQf6IkQA4QEMIAEAAAAnBAEH+oI0AOEBFgQBAAAAKAQBB/piNwDhAQwgAQAAACkEAQf6QuYA4QEMIAEAAAAqBAEH+mIcAOEBFgQBAAAAKwQBB/oCLgDhAQwgAQAAACwEAQf6IhoA4QEWBAEAAAAtBAEH+qJhAOEBFgQBAAAALgQBB/ri4wDhAR4AAQAAAAIEAQT6olEA4QEMIAEAAAAwBAEH+oJMAOEBDCABAAAAMQQBB/oiRgDhAQwgAQAAADIEAQf64iEB4QEMIAEAAAAzBAEH+gI+AOEBDCABAAAANAQBB/oCbgDhAQwgAQAAADUEAQf6AtwB4QEMIAEAAAA2BAEH+sInAOEBDCABAAAANwQBB/riYADhAQwgAQAAADgEAQf64k8A4QEMIAEAAAA5BAEH+kIdAOEBFgQBAAAAOgQBB/qCwADhAQwgAQAAADsEAQf6IhoA4QEWBAEAAAA8BAEH+sIaAOEBHAwBAAAAPQQBB/rCYADhAQwgAQAAAD4EAQf6gjYA4QEMIAEAAAA/BAEH+kIdAOEBDCABAAAAQAQBB/piJADhAQwgAQAAAEEEAQf6Qh0A4QEMIAEAAABCBAEH+iIuAOEBFgQBAAAAQwQBB/oiHADhAQwgAQAAAEQEAQf64nAA4QEMIAEAAABFBAEH+sIiAOEBFgQBAAAARgQBB/oCLQDhARYEAQAAAEcEAQf6YhwA4QEWBAEAAABIBAEH+kIuAOEBDCABAAAASQQBB/piGADhAQwgAQAAAEoEAQf6wn0A4QEMIAEAAABMBAEF+gJIAOEBDCABAAAATAQBB/qCwADhAQwgAQAAAE0EAQf6AuYA4QEMIAEAAABOBAEH+mIkAOEBDCABAAAATwQBB/rCIgDhARYEAQAAAFAEAQf6QicA4QEMIAEAAABRBAEH+kIdAOEBDCABAAAAUgQBB/ribgDhAQwgAQAAAFMEAQf6AiMA4QEMIAEAAABUBAEH+iJ0AeEBDCABAAAAVQQBB/piJADhAQwgAQAAAFYEAQf6Qh0A4QEWBAEAAABXBAEH+mIdAOEBDCABAAAAWAQBB/piLgDhARYEAQAAAFkEAQf6whoA4QEcDAEAAABaBAEH+gK+AeEBDCABAAAAWwQBB/qCUgDhAQwgAQAAAFwEAQf64qoA4QEMIAEAAABdBAEH+gIkAOEBDCABAAAAXgQBB/qiLgDhAQwgAQAAAF8EAQf6gmAA4QEMIAEAAABgBAEH+iJQAOEBDCABAAAAYQQBB/oCZwDhAQwgAQAAAGIEAQf6Il4A4QEMIAEAAABjBAEH+sJgAOEBDCABAAAAZAQBB/piGgDhAQwgAQAAAGUEAQf6ohoA4QEWBAEAAABmBAEH+gIYAeEBDCABAAAAaAQBBfpiHQDhAQwgAQAAAGgEAQf6QhkA4QEMIAEAAABpBAEH+qLoAOEBHgABAAAAagQBBvriFQDhARpAAQAAAGoEAQX6ImMA4QEaQAEAAABqBAEF+qLrAOEBDCABAAAAbQQBB/oioQDhAQwgAQAAAG4EAQf64kIA4QEaQAEAAABvBAEH+uIrAOEBDCABAAAAcAQBB/qCiwDhAQwgAQAAAHEEAQf6ojYA4QEMIAEAAAByBAEF+sItAOEBDCABAAAAcgQBBfpCKwDhARpAAQAAAG8EAQX6wlYA4QEWBAEAAAB4BAEF+sJKAOEBFgQBAAAAeAQBBfriFQDhAR4AAQAAAG8EAQL6AswA4QEWBAEAAAB4BAEH+sKNANkBGkABAAAAGxEBB/ki3AEKAhkwAQAAAHwEIQX7QtwBDwIZMAEAAAB8BBEF+kLcARECGTDBAwAAfAQBBfrCcwDhAQwgAQAAAH0EAQf6Yi4A4QEWBAEAAAB+BAEH+uIhAOEBDCABAAAAfwQBB/riLgDhAQwgAQAAAIAEAQf6wrcA4QEMIAEAAACBBAEH+oJjAeEBDCABAAAAggQBB/qCFwDhARpAAQAAAIMEAQf6YqQA4QEMIAEAAACEBAEH+mI3AOEBLiABAAAAhQQBBvoCGgDhAQwgAQAAAIUEAQX6AhoA4QEaQAEAAACDBAEF+sIZAOEBFgQBAAAAiAQBB/qCFwDhASAAAQAAAIkEAQb64hkA4QEWBAEAAACKBAEH+gIZAOEBDCABAAAAiwQBB/qCfgDhAQwgAQAAAIwEAQf64jUA4QEMIAEAAACNBAEH+sJgAOEBDCABAAAAjgQBB/piVADhAQwgAQAAAI8EAQf64hUA4QEaQAEAAACDBAEF+iLCAOEBDCABAAAAkQQBB/oCPQDhAQwgAQAAAJIEAQf6IkYA4QEMIAEAAACTBAEH+kLBAOEBFgQBAAAAlAQBB/piOgDhAQwgAQAAAJUEAQf6IjQA4QEWBAEAAACWBAEH+oIcAOEBFgQBAAAAlwQBB/rCGgDhARwMAQAAAJgEAQf6oicA4QEaQAEAAACeBAFH+oInAOEBGkABAAAAnwQBRfpCKwDhARpAAQAAAKAEAUX64hUA4QEaQAEAAAChBAFF+mIgAOEBDCABAAAAnQQBB/qCMADhARpAAQAAAJ4EAQf6ojAA4QEaQAEAAACeBAEF+sIwAOEBGkABAAAAngQBBfriFQDhARpAAQAAAJ4EAQX6AhkA4QEMIAEAAACiBAEH+uJWAOEBHAwBAAAAowQBB/piGwDhAQwgAQAAAKQEAQf6oikA4QEWBAEAAAClBAEH+sIZAOEBFgQBAAAApgQBB/rCMQDhARpAAQAAAKcEAQf6YigA4QEaQAEAAACnBAEF+uIVAOEBGkABAAAApwQBBfqCMQDhASBAAQAAAKoEAQL6wlYA4QEMIAEAAACrBAEH+iIgAOEBGkABAAAArgQBBfqiJwDhARpAAQAAAK0EAQf6ohwB4QEaQAEAAACuBAEH+uIVAOEBIEABAAAArgQBAvpiMQDhARwMAQAAALAEAQf6gjAB4QEMIAEAAACxBAEH+gLKAOEBDCABAAAAsgQBB/oibwDhAQwgAQAAALMEAQf6ghcA4QEaQAEAAAC0BAEH+uIZAOEBIEABAAAAtAQBAvoCGgDhARpAAQAAALQEAQX64hUA4QEaQAEAAAC0BAEF+gIZAOEBDCABAAAAuAQBB/qitQDhARgwwQMAALkEAQf6YtQA4QEMIAEAAAC6BAEH+oKGAOEBDCABAAAAuwQBB/piJADhARYEAQAAALwEAQf64iEA4QEMIAEAAAC9BAEH+mKZAeEBDCABAAAAvgQBB/oiHADhAQwgAQAAAL8EAQf6IjQA4QEWBAEAAADABAEH+oIcAOEBFgQBAAAAwQQBB/qiHADhAR4gAQAAAMIEAQb6okwA4QEMIAEAAADDBAEH+iKTAOEBDCABAAAAxAQBB/qCtwDhAQwgAQAAAMUEAQf6okAA4QEMIAEAAADGBAEH+mIoAOEBDCABAAAAwgQBBfrCVgDhARYEAQAAAMwEAQX6wkoA4QEWBAEAAADMBAEF+uJWAOEBHAwBAAAAygQBB/piGwDhAQwgAQAAAMsEAQf6YtwB4QEWBAEAAADMBAEH+4LcAecBGDABAAAAzQQRBfqC3AHhARYEAQAAAM4EAQf6glgA4QEMIAEAAADPBAEH+qIhAOEBDCABAAAA0AQBB/qimQDhAQwgAQAAANEEAQf64h4A4QEeAAEAAADSBAEG+oIfAOEBDCABAAAA0wQBB/riFQDhARpAAQAAANIEAQX6AioA4QEaQAEAAADSBAEF+iKCAOEBDCABAAAA1gQBB/pCHQDhASIAAQAAANcEAQb6Qh0A4QEMIAEAAADYBAEH+gI9AOEBDCABAAAA2QQBB/rCigDhAQwgAQAAANoEAQf64joA4QEMIAEAAADbBAEH+uImAOEBDCABAAAA2wQBBfriIADhAQwgAQAAAN0EAQf6IikA4QEuAAEAAADeBAEG+qJSAOEBFgQBAAAA3wQBB/riFQDhAQwgAQAAAOAEAQf64joA4QEuAAEAAADhBAEG+qIkAOEBHAwBAAAA4gQBB/piGwDhAQwgAQAAAOMEAQf6AkYA4QEMIAEAAADkBAEH+uImAOEBHgABAAAA4QQBBPriFQDhARpAAQAAAOEEAQX6YosA4QEMIAEAAADhBAEF+uImAOEBDCABAAAA4QQBBfpCdgDhAQwgAQAAAOkEAQf6Yh4A4QEMIAEAAADqBAEH+oJgAOEBDCABAAAA6wQBB/riFgDhAR5AAQAAAOwEAQb6YikA4QEgQAEAAADsBAEC+qJkAOEBDCABAAAA7gQBB/qCKQDhAQwgAQAAAO8EAQf6ghYA4QEaQAEAAADsBAEF+mI9AeEBDCABAAAA8QQBB/riFQDhAS5AAQAAAOwEAQL6IqcA4QEMIAEAAADyBAEH+gJ6AOEBDCABAAAA9AQBB/qiHwDhAQwgAQAAAPQEAQX6om0A4QEMIAEAAAD0BAFH+oJpAOEBDCABAAAA9QQBRfpiHAHhAR5AAQAAAPgEAQb6Yh8A4QEaQAEAAAD4BAEF+iIgAOEBDCABAAAAAAUBBfpiGwDhAQwgAQAAAPsEAQf64hUA4QEeQAEAAAD4BAEC+mIbAOEBFgQBAAAA/QQBB/piGwDhAQwgAQAAAP4EAQf6oh8A4QEaQAEAAAD4BAEF+qIpAOEBIgABAAAAAAUBBvqibQDhAR4AAQAAAPgEAUb6Yh8A4QEaQAEAAAD5BAFF+iIgAOEBDCABAAAA+gQBRfriFQDhAR4AAQAAAPwEAUL6YhsA4QEWBAEAAAAFBQEH+mIbAOEBDCABAAAABgUBB/qCaQDhARpAAQAAAP8EAUX6wooA4QEiAAEAAAAABQFG+oIxAOEBGkABAAAADAUBBfrCVgDhARYEAQAAAAwFAQX6wkoA4QEWBAEAAAAMBQEF+kK4AOEBLgQBAAAADAUBBvrCoADZAR5AAQAAAA0FAQL6YnoA4QEMIAEAAAAOBQEH+iI3AOEBDCABAAAADwUBB/qibwDhAQwgAQAAABAFAQf6okIA4QEMIAEAAAARBQEH+qIjAOEBDCABAAAAEgUBB/rCIwDhAQwgAQAAABIFAQX6YlwA4QEMIAEAAAAUBQEH+mIzAOEBDCABAAAAFQUBB/riFQDhARpAAQAAAA0FAQX6otwB4QEMIAEAAAAXBQEH+mJ6AOEBDCABAAAAGAUBB/riigDhAQwgAQAAABkFAQf6YqAA4QEMIAEAAAAaBQEH+oIkAOEBDCABAAAAGwUBB/oiYgDhAQwgAQAAABwFAQf6QjgA4QEWBAEAAAAdBQEH+kJnAOEBDCABAAAAHgUBB/rCOQDhAQwgAQAAAB8FAQf6YiQA4QEWBAEAAAAgBQEH+mIcAOEBFgQBAAAAIQUBB/riOgDhAQwgAQAAACIFAQf6YiAA4QEMIAEAAAAjBQEH+kJMAOEBDCABAAAAJAUBB/rCnADhARYEAQAAACUFAQf6IhgA4QEMIAEAAAAmBQEH+mIgAOEBDCABAAAAJwUBB/oCkQDZAR5AAQAAACgFARb6QscA4QEMIAEAAAApBQEH+kJUAOEBDCABAAAAKgUBB/riFQDhAR5AAQAAACgFAQL6IqcA4QEMIAEAAAArBQEF+qKIAOEBDCABAAAALQUBB/oiYwDhARpAAQAAACgFAQX8wtwB2QEMIAEAAAAvBQEH/OLcAdkBDCABAAAAMAUBB/wC3QHZAQwgAQAAADEFAQf9It0B1QEMIAEAAAAyBQEF/cLcAOEBHgABAAAAMwUBBv0CIwDhAQwgAQAAADQFAQf9wlYA4QEWBAEAAAA3BQEF/cJKAOEBFgQBAAAANwUBBf0CvwDhARYEAQAAADcFAQf9wh8A4QEMIAEAAAA4BQEH/SIgAOEBDCABAAAAOQUBB/0iDgHhAQwgAQAAADoFAQf9YhwA4QEMIAEAAAA7BQEH/WIlAOEBDCABAAAAPAUBB/1iHADhARYEAQAAAD0FAQf9At4A4QEMIAEAAAA+BQEH/YI5AOEBHgABAAAAPwUBBv3iFQDhAR4AAQAAAD8FAQL9grMA4QEMIAEAAAA/BQEF/ULdAeEBHgABAAAAQgUBBv2iJgDhARpAAQAAAEIFAQX94hUA4QEaQAEAAABCBQEF/UIgAOEBDCABAAAARQUBB/3CGQDhARYEAQAAAEYFAQf94joA4QEMIAEAAABHBQEH/QI0AOEBIgABAAAASAUBBv1i3QHhAQwgAQAAAEkFAQf9AqQA4QEeAAEAAABKBQEG/aIjAOEBDCABAAAASwUBBf3CIwDhAQwgAQAAAEsFAQX94hUA4QEaQAEAAABKBQEF/YKzAOEBHgABAAAASgUBBP3CXADhAR4gAQAAAE8FAQb9AkAA4QEgQAEAAABPBQEC/WIbAOEBFgQBAAAAUQUBB/0iVwDhARYEAQAAAFIFAQf9YjYA4QEWBAEAAABTBQEH/SKQAeEBDCABAAAAVQUBBf3COADhAQwgAQAAAFUFAQf9QigA4QEMIAEAAABWBQEH/QJYAOEBHiABAAAATwUBBP3iYgDhARYEAQAAAFgFAQf9AiUA4QEWBAEAAABZBQEH/cJWAOEBFgQBAAAAawUBBf3CSgDhARYEAQAAAGsFAQX9YhsA4QEMIAEAAABcBQEH/eIVAOEBHiABAAAATwUBAv0CGQDhAQwgAQAAAF4FAQf9AvkA4QEeAAEAAABfBQEG/WJWAOEBFgQBAAAAYAUBB/1iJADhAQwgAQAAAGEFAQf94hUA4QEaQAEAAABfBQEF/aI4AOEBDCABAAAAYwUBB/0CeADhAQwgAQAAAF8FAQX9Yt0B4QEMIAEAAABJBQFH/UJmAOEBHiABAAAAZgUBBv1C5gDhAQwgAQAAAGcFAQf9gn8A4QEMIAEAAABoBQEH/eIVAOEBGkABAAAAZgUBBf0CVgHhAR4gAQAAAGYFAQT9QjQA4QEWBAEAAABrBQEH/WLJAeEBHiABAAAAbAUBBv1CSgDhAQwgAQAAAG0FAQf9IjsA4QEMIAEAAABuBQEH/cJMAOEBDCABAAAAbwUBB/1CGADhAR4AAQAAAHAFAQb9gn8A4QEeQAEAAABxBQEG/eIVAOEBGkABAAAAcQUBBf0CKgDhARpAAQAAAHEFAQX9ImMB4QEMIAEAAAB0BQEH/YLdAeEBDCABAAAAdQUBB/0iSQDhAR4gAQAAAGwFAQT9gk0A4QEeQAEAAAB3BQEG/YIvAOEBDCABAAAAeAUBB/0CGQDhAQwgAQAAAHkFAQf9oicA4QEaQAEAAAB/BQFH/YInAOEBGkABAAAAgAUBRf1CKwDhARpAAQAAAIEFAUX94hUA4QEaQAEAAACCBQFF/QIZAOEBDCABAAAAfgUBB/2CMADhARpAAQAAAH8FAQf9ojAA4QEaQAEAAAB/BQEF/cIwAOEBGkABAAAAfwUBBf3iFQDhARpAAQAAAH8FAQX9wiYA4QEMIAEAAACDBQEH/eIVAOEBIgABAAAAhAUBBv1iHADhARYEAQAAAIUFAQf9oioA4QEcDAEAAACGBQEH/WIbAOEBDCABAAAAhwUBB/2idQDhAQwgAQAAAHgFAQX9whgA4QEWBAEAAACJBQEH/UIdAOEBFgQBAAAAigUBB/2iPADhAQwgAQAAAIsFAQf9ohgA4QEaQAEAAAB3BQEF/WIqAOEBDCABAAAAjQUBB/3iFQDhAR4AAQAAAHcFAQL9ok0A4QEeQAEAAAB3BQEE/QIZAOEBDCABAAAAkAUBB/1iHgDhASAEAQAAAJEFAQb9wlYA4QEWBAEAAACaBQEF/cJKAOEBFgQBAAAAmgUBBf3iVgDhARwMAQAAAJQFAQf9YhsA4QEMIAEAAACVBQEH/eIVAOEBGkABAAAAkQUBBf3iFQDhAQwgAQAAAJcFAQf9YhsA4QEMIAEAAACYBQEH/QIwAOEBGkABAAAAkQUBBf0ClwDhASIAAQAAAJoFAQb94k8A4QEMIAEAAACbBQEH/aJMAOEBDCABAAAAnAUBB/2CiQDhAQwgAQAAAJwFAQX9wjMA4QEMIAEAAACeBQEH/UI0AOEBDCABAAAAnwUBB/0iLgDhARYEAQAAAKAFAQf9Aj0A4QEMIAEAAAChBQEH/cI0AOEBFgQBAAAAogUBB/0CNQDhAQwgAQAAAKMFAQf9wlkA4QEMIAEAAACjBQEF/QI0AOEBIgABAAAApQUBBv1iIgDhAQwgAQAAAKYFAQf9QiQA4QEWBAEAAACnBQEH/YLNAOEBHiABAAAAqAUBBv1ihADhAQwgAQAAAKkFAQf9gjYA4QEMIAEAAACqBQEH/cIFAeEBDCABAAAArQUBBf3CegDhAQwgAQAAAKwFAQf94j0A4QEMIAEAAACtBQEH/cI2AOEBDCABAAAArgUBB/2CVgDhASwEAQAAAK8FAQb9oiQA4QEcDAEAAACwBQEH/WIbAOEBDCABAAAAsQUBB/1CIADhAQwgAQAAALIFAQf9IkwA4QEeQAEAAACzBQEG/cKLAOEBDCABAAAAtAUBB/2iIwDhARYEAQAAALUFAQf9Yh8A4QEWBAEAAAC2BQEH/cImAOEBDCABAAAAtwUBB/2CHwDhAQwgAQAAALgFAQf9AiEA4QEaQAEAAACzBQEF/UKpAOEBHgABAAAAugUBBv3CMwDhAQwgAQAAALsFAQf94hUA4QEaQAEAAAC6BQEF/eI+AOEBDCABAAAAvQUBB/3CVgDhARYEAQAAAM0FAQX9wkoA4QEWBAEAAADNBQEF/YIxAOEBGkABAAAAwgUBBf0iIADhARpAAQAAAMIFAQX9wjUA4QEaQAEAAADCBQEH/eJWAOEBHAwBAAAAwwUBB/2CUQDhAQwgAQAAAMQFAQf9QlEA4QEiBAEAAADFBQEG/oKyAecBGDABAAAAxgUBBf3CFgDhAQwgAQAAAMcFAQf9gn8A4QEaQAEAAADIBQEH/WIfAOEBIEABAAAAqAUBAv3iFQDhARpAAQAAAKgFAQX9AmcA4QEMIAEAAACoBQEF/YIWAOEBDCABAAAAugUBBf1iIgDhARYEAQAAAM0FAQf9Iq8A4QEeAAEAAADOBQEG/QIpAOEBDCABAAAAzwUBB/3iFQDhARYEAQAAANAFAQf9YjEA4QEcDAEAAADRBQEH/YIcAOEBFgQBAAAA0gUBB/1CSQDhAQwgAQAAANMFAQf9onoA4QEMIAEAAADUBQEH/YKJAOEBGkABAAAAzgUBBf3iGQDhARpAAQAAAM4FAQX94h4A4QEeAAEAAADXBQEG/UIqAOEBDCABAAAA2AUBB/2iGADhARYEAQAAANkFAQf9Yh8A4QEgQAEAAADXBQEC/SJGAOEBDCABAAAA2wUBB/2iVgDhAQwgAQAAANwFAQf94hUA4QEeAAEAAADXBQEC/QIqAOEBGkABAAAA1wUBBf1CwgDhARYEAQAAAN8FAQf94hUA4QEaQAEAAADOBQEF/YKsAOEBFgQBAAAA4QUBB/2i3QHhAQwgAQAAAOIFAQf9gn8A4QEMIAEAAADjBQEH/WKLAOEBGkABAAAA5AUBB/3CJgDhAQwgAQAAAOUFAQf94iYA4QEaQAEAAADkBQEF/eIVAOEBGkABAAAA5AUBBf3C3QHZAQwgAQAAAOgFAQf9AqoA4QEMIAEAAADpBQEH/eJBAOEBDCABAAAA6QUBBf1iIADhAQwgAQAAAOsFAQf9Yj8A4QEaQAEAAADsBQEH/WI2AOEBDCABAAAA7QUBB/0CRgDhAQwgAQAAAO4FAQf9IjcA4QEMIAEAAADtBQEF/eIeAOEBDCABAAAA8AUBB/1iLgDhARYEAQAAAPEFAQf9whoA4QEcDAEAAADyBQEH/cIYAOEBHgABAAAA8wUBBv3iGQDhARYEAQAAAPQFAQf94hUA4QEaQAEAAADzBQEF/WIbAOEBFgQBAAAA9gUBB/0CMADhAR4gAQAAAPMFAQT94h4A4QEMIAEAAAD4BQEH/WIfAOEBFgQBAAAA+QUBB/0CKgDhAQwgAQAAAPgFAQX9IhoA4QEMIAEAAABlEQFH/YIcAOEBFgQBAAAAZhEBR/3CGgDhARwMAQAAAGcRAUf94iEA4QEMIAEAAABoEQFH/UItAOEBDCABAAAAaREBRf2CMgDhAQwgAQAAAPgFAUf9Yh8A4QEWBAEAAAABBgEH/QIhAOEBDCABAAAA+gUBRf3CmQDhAQwgAQAAAAMGAQf9gjUA4QEMIAEAAAAEBgEF/aLvAOEBDCABAAAABAYBBf1ibwDhAR4gAQAAAAYGAQb9AkAA4QEgQAEAAAAGBgEC/UIoAOEBDCABAAAACAYBB/0CWADhAQwgAQAAAAYGAQX94hUA4QEeIAEAAAAGBgEC/WI3AOEBDCABAAAACwYBB/1icgDhAQwgAQAAAAwGAQf94kAA4QEMIAEAAAAMBgEF/SIaAOEBIgABAAAADgYBBv3CGgDhARwMAQAAAA8GAQf9AhkA4QEMIAEAAAAQBgEH/aInAOEBGkABAAAAEQYBB/0CGQDhAQwgAQAAABIGAQf9gjAA4QEaQAEAAAATBgEH/eIsAOEBHiABAAAAFAYBBv1CSgDhAQwgAQAAABUGAQf9AkkA4QEMIAEAAAAUBgEF/eIVAOEBIAQBAAAAFAYBAv0ipgDhAQwgAQAAABgGAQf94t0B4QEMIAEAAAAZBgEH/cKpAOEBDCABAAAAGwYBBf3iLwDhAQwgAQAAABsGAQX9At4B4QEMIAEAAAAdBgEF/YK/AeEBDCABAAAAHQYBB/3iFQDhAQwgAQAAAB4GAQf9ItgA4QEMIAEAAAAfBgEH/eIhAOEBDCABAAAAIAYBB/0iGgDhARYEAQAAACEGAQf9ghwA4QEWBAEAAAAiBgEH/cIaAOEBHAwBAAAAIwYBB/1iIADhAQwgAQAAACQGAQf9goAA4QEMIAEAAAAlBgEH/UInAOEBDCABAAAAJgYBB/0iHADhAQwgAQAAACcGAQf9ohYA4QEMIAEAAAAoBgEH/cIWAOEBDCABAAAAKQYBB/0iOwDhAQwgAQAAACoGAQf9Ii4A4QEiBAEAAAArBgEG/cLMAOEBDCABAAAALAYBB/2CLADhAQwgAQAAAC0GAQf9Yi4A4QEiAAEAAAAuBgEG/WJjAOEBDCABAAAALwYBB/2iHgDhAQwgAQAAADAGAQf94vsA4QEMIAEAAAAxBgEH/SJdAOEBHgABAAAAMgYBBv2CfwDhAQwgAQAAADMGAQf9Yl8A4QEMIAEAAAA0BgEH/YK4AOEBDCABAAAANQYBB/0CTwDhAQwgAQAAADYGAQf94h4A4QEMIAEAAAA3BgEH/SLeAeEBDCABAAAAOAYBB/2C8gDhARYEAQAAADkGAQf94sYB4QEMIAEAAAA6BgEH/ULeAeEBFgQBAAAAOwYBB/2CPQDhAQwgAQAAADwGAQf9ImsA4QEMIAEAAAA9BgEH/SKfAeEBDCABAAAAPgYBB/2CYwHhAQwgAQAAAD8GAQf9QnsA4QEMIAEAAAA/BgEF/cI0AOEBHgABAAAAQQYBBv3iFQDhARpAAQAAAEEGAQX9QsoA4QEeAAEAAABDBgEG/aJGAOEBDCABAAAARAYBB/2ibwDhAQwgAQAAAEUGAQf9Yt4B4QEMIAEAAABGBgEH/eLjAOEBDCABAAAARwYBB/2iRgDhAQwgAQAAAEgGAQf9QlgA4QEMIAEAAABJBgEH/WJnAOEBDCABAAAASgYBB/2CuADhAQwgAQAAAEsGAQf9onsA4QEMIAEAAABMBgEH/cK3AOEBDCABAAAATQYBB/2i3QDhAQwgAQAAAE4GAQf9gt4B4QEaQAEAAABPBgEH/YIfAOEBDCABAAAAUAYBB/2i3gHhAQwgAQAAAFEGAQf9IqYA4QEMIAEAAABSBgEH/QLRAOEBDCABAAAAUwYBB/0CNADhAQwgAQAAAFQGAQf9InoA4QEWBAEAAABVBgEH/QJnAOEBDCABAAAAVAYBBf0iLQDhAQwgAQAAAFcGAQf94msA4QEMIAEAAABXBgEF/SIaAOEBIgABAAAAWQYBBv3CGgDhARwMAQAAAFoGAQf9wh0A4QEMIAEAAABdBgEH/WImAOEBDCABAAAAXAYBB/2iPADhAQwgAQAAAF0GAQf9orIA4QEeIAEAAABeBgEG/SKiAOEBDCABAAAAXwYBB/2iewDhAQwgAQAAAGAGAQf94rQA4QEMIAEAAABhBgEH/aIjAOEBFgQBAAAAYgYBB/0CswDhAQwgAQAAAGMGAQf9ImMA4QEMIAEAAABkBgEH/WJOAOEBDCABAAAAZQYBB/1iPwDhAQwgAQAAAGYGAQf9orwA4QEMIAEAAABnBgEH/aIjAOEBFgQBAAAAaAYBB/3CKgDhAQwgAQAAAGkGAQf94hUA4QEMIAEAAABqBgEH/cJCAOEBDCABAAAAawYBB/3iWQDhAQwgAQAAAGwGAQf94h4A4QEMIAEAAABtBgEH/YIXAOEBDCABAAAAbgYBB/1iGwDhAQwgAQAAAG8GAQf9IiIA4QEMIAEAAABwBgEH/eLlAOEBDCABAAAAXgYBBf2CQwDhAQwgAQAAAHIGAQf9wnUA4QEMIAEAAABzBgEH/cIfAOEBFgQBAAAAdAYBB/3CjADhAQwgAQAAAHUGAQf9AiMA4QEMIAEAAAB2BgEH/WIqAOEBDCABAAAAdwYBB/3C3gHhAQwgAQAAAHgGAQf9wjYA4QEMIAEAAAB5BgEH/YKIAOEBDCABAAAAegYBB/1CVwDhAQwgAQAAAHsGAQf94t4B4QEMIAEAAAB8BgEH/eKrAOEBDCABAAAAfQYBB/0C3wHhAQwgAQAAAH4GAQf9oqUB4QEMIAEAAAB/BgEF/SLfAeEBDCABAAAAfwYBBf3CwwDhARpAAQAAAIEGAQf9AiUB4QEMIAEAAACCBgEH/SItAeEBDCABAAAAggYBBf1C3wHhAQwgAQAAAIQGAQf9AqQA4QEMIAEAAACFBgEH/eLPAOEBDCABAAAAhgYBB/2iNgDhAQwgAQAAAIcGAQf9oogA4QEMIAEAAACIBgEH/cIuAOEBDCABAAAAiQYBB/0iGgDhARYEAQAAAIoGAQf9Yk0A4QEMIAEAAACLBgEH/cI3AOEBDCABAAAAjAYBB/0iHgDhAQwgAQAAAI0GAQf9YigA4QEMIAEAAACNBgEF/eIeAOEBHAwBAAAAjwYBB/3CewDhARYEAQAAAJAGAQf9whoA4QEcDAEAAACRBgEH/WIgAOEBDCABAAAAkgYBB/2iPQDhAQwgAQAAAJIGAQX9Il4A4QEMIAEAAACUBgEH/eJmAOEBDCABAAAAlQYBB/3CNwDhAQwgAQAAAJYGAQf9Il4A4QEMIAEAAACXBgEH/WIeAOEBFgQBAAAAmAYBB/2CFwDhARpAAQAAAJkGAQf9AhoA4QEaQAEAAACZBgEF/eIVAOEBIAABAAAAmQYBAv0CGQDhAQwgAQAAAJwGAQf94iEA4QEMIAEAAACdBgEH/WIgAOEBDCABAAAAngYBB/0iGgDhARYEAQAAAJ8GAQf9AhkA4QEMIAEAAACgBgEH/WLfAeEBDCABAAAAogYBBf2iFgDhAQwgAQAAAKIGAQX9AhkA4QEMIAEAAACjBgEH/eJGAOEBGkABAAAApAYBB/3iFQDhARpAAQAAAKQGAQX9oh8A4QEMIAEAAACmBgEH/WJRAOEBDCABAAAApwYBB/3iIADhAQwgAQAAAKgGAQf9ot4A4QEeAAEAAACpBgEG/WI5AOEBDCABAAAAqgYBB/1icgDhAQwgAQAAAKsGAQf9YjcA4QEMIAEAAACsBgEH/UIaAOEBDCABAAAArQYBB/1CLgDhAQwgAQAAAK4GAQX94kAA4QEMIAEAAACuBgEF/eIeAOEBDCABAAAAsAYBB/2iOwDhAQwgAQAAALEGAQf9gicA4QEWBAEAAACyBgEH/UIrAOEBDCABAAAAtAYBBf0iHADhAQwgAQAAALQGAQf9YkYA4QEMIAEAAAC4BgEF/SIaAOEBFgQBAAAAtgYBB/2CLADhAQwgAQAAALcGAQf9ojwA4QEMIAEAAAC4BgEH/QJBAOEBDCABAAAAuQYBB/2C3wHhAQwgAQAAALoGAQf9ot8B4QEMIAEAAAC7BgEH/eK/AOEBHkABAAAAvAYBBv2CsQDhARpAAQAAALwGAQX9IoQA4QEMIAEAAAC+BgEH/eIVAOEBHgABAAAAvAYBAv1iMQDhARwMAQAAAMAGAQf9otsA4QEMIAEAAADBBgEH/aLDAOEBGkABAAAAvAYBBf1CjADhAQwgAQAAAMMGAQf9gjkA4QEeQAEAAADEBgEG/UIlAOEBGkABAAAAxAYBBf0iJgDhAQwgAQAAAMYGAQf94hUA4QEeAAEAAADEBgEC/YKzAOEBGkABAAAAxAYBBf1iKADhAQwgAQAAAMoGAQX9YvYA4QEMIAEAAADKBgEF/WIoAOEBDCABAAAAygYBBf0CGQDhAQwgAQAAAMwGAQf9IhwA4QEMIAEAAADNBgEH/QL5AOEBHgABAAAAzgYBBv2iPADhAQwgAQAAAM8GAQf9wi0A4QEMIAEAAADQBgEH/cLfAeEBDCABAAAA0QYBB/0iLgDhAQwgAQAAANIGAQf9Ih4A4QEMIAEAAADTBgEH/SIYAOEBDCABAAAA1AYBB/2iAwHhAR5AAQAAANUGAQb9YlYA4QEaQAEAAADVBgEF/aKKAOEBDCABAAAA1wYBB/3iFQDhARpAAQAAANUGAQX9AngA4QEeQAEAAADVBgEE/cJMAOEBGkABAAAA2gYBB/3iGQDhARpAAQAAANoGAQX94h4A4QEMIAEAAADcBgEH/eIVAOEBGkABAAAA2gYBBf0iYADhARpAAQAAANoGAQX9woEA4QEWBAEAAADfBgEH/UJkAOEBDCABAAAA4AYBB/1iJADhAQwgAQAAAOEGAQf9AjUA4QEMIAEAAADiBgEF/cJZAOEBDCABAAAA4gYBBf0iGgDhARYEAQAAAOQGAQf94iQA4QEMIAEAAADlBgEH/YKFAOEBHgABAAAA5gYBBv1iGQDhARYEAQAAAOcGAQf9gkMA4QEMIAEAAADoBgEH/cIjAOEBHgABAAAA5gYBBP3iFQDhAUoAAQAAAOYGAQL9gkQA4QEeIAEAAADrBgEG/aInACECFgQBAAAA7AYBBf0CIwDhAQwgAQAAAO0GAQf9AiMA4QEMIAEAAADuBgEH/WIfAOEBGkABAAAA6wYBBf2CfwDhAQwgAQAAAPAGAQf9YhsA4QEWBAEAAADxBgEH/YIfAOEBDCABAAAA8gYBB/0CIQDhAQwgAQAAAOsGAQf9AiIA4QEMIAEAAAD0BgEH/YI8AOEBDCABAAAA9AYBBf2CMQDhARpAAQAAAPgGAQX9IiAA4QEaQAEAAAD4BgEF/cI1AOEBGkABAAAA+AYBBf3iFQDhAR5AAQAAAOsGAQL9wjkA4QEeIAEAAAD6BgEG/aIYAOEBFgQBAAAA+wYBB/1iKgDhAQwgAQAAAPwGAQf9oooA4QEWBAEAAAD9BgEH/cIaAOEBHAwBAAAA/gYBB/3iFQDhARpAAQAAAPoGAQX9YkIA4QEaQAEAAAD6BgEF/aI2AOEBDCABAAAAAQcBB/0iLgDhAQwgAQAAAAIHAQf9gn8A4QEMIAEAAAADBwEH/QIZAOEBDCABAAAABAcBB/2iIwDhAQwgAQAAAAUHAQf9olIA4QEMIAEAAAAGBwEH/WI5AOEBDCABAAAABwcBB/0ioQDhAS4gAQAAAAgHAQb9wkIA4QEMIAEAAAAJBwEH/cJCAOEBDCABAAAACgcBB/3iHgDhAQwgAQAAAAsHAQf9Qi4A4QEMIAEAAAAMBwEH/eJAAOEBDCABAAAADAcBBf1iHADhARYEAQAAAA4HAQf9ImAA4QEWBAEAAAAPBwEH/cJCAOEBDCABAAAAEAcBB/3ilgDhAQwgAQAAABEHAQf9oiMA4QEWBAEAAAASBwEH/SKCAOEBDCABAAAAEwcBB/3CGgDhARYEAQAAABQHAQf9om0A4QEeQAEAAAAVBwEG/WIfAOEBFgQBAAAAFgcBB/2CHwDhAQwgAQAAABcHAQf9opUA4QEeIAEAAAAYBwEG/cImAOEBDCABAAAAGQcBB/3iFQDhARpAAQAAABgHAQX94hUA4QEeQAEAAAAVBwEC/YJpAOEBGkABAAAAFQcBB/3CKgDhAQwgAQAAAB0HAQf9IisA4QEMIAEAAAAeBwEH/YIlAOEBHkABAAAAHwcBBv3iHgDhAQwgAQAAACAHAQf94hUA4QEeQAEAAAAfBwEC/eIeAOEBDCABAAAAIgcBB/3izADhAR4AAQAAAB8HAQT9YgcB4QEMIAEAAAAkBwEH/UKrAOEBHkABAAAAJQcBBv3iFQDhASAAAQAAACUHAQL9Qs0A4QEaQAEAAAAlBwEF/eLfAeEBDCABAAAAKAcBB/3CGQDhARpAAQAAACkHAQf9AlgA4QEaQAEAAAApBwEF/eIVAOEBGkABAAAAKQcBBf2CIgDhARYEAQAAACwHAQf9IqUA4QEeAAEAAAAtBwEG/aImAOEBGkABAAAALQcBBf3CVgDhARYEAQAAADUHAQX9wkoA4QEWBAEAAAA1BwEF/eIVAOEBGkABAAAALQcBBf3CVgDhARYEAQAAADQHAQX9wkoA4QEWBAEAAAA0BwEF/WIxAOEBFgQBAAAANAcBB/1iogDhARYEAQAAADUHAQf9wkgA4QEaQAEAAAA2BwEH/cIZAOEBHiABAAAANwcBBv0CQADhASBAAQAAADcHAQL9QigA4QEMIAEAAAA5BwEH/QJYAOEBGiABAAAANwcBBf3iFQDhARpAAQAAADcHAQX9QjEA4QEaQAEAAAA2BwEF/eIVAOEBGkABAAAANgcBBf0iSQDhARpAAQAAADYHAQX9IqAA4QEaQAEAAAA/BwEH/QLKAOEBHkABAAAAQAcBBv2iewDhAQwgAQAAAEEHAQf94k8A4QEeIAEAAABCBwEG/YJ/AOEBDCABAAAAQwcBB/3C7wDhAQwgAQAAAEQHAQf9ogcB4QEMIAEAAABFBwEH/eIVAOEBHgABAAAAQAcBAv1iVgDhARpAAQAAAEAHAQX9gn8A4QEMIAEAAABIBwEH/cJWAOEBFgQBAAAATwcBBf3CSgDhARYEAQAAAE8HAQX94lYA4QEcDAEAAABLBwEH/WIbAOEBDCABAAAATAcBB/3iFQDhARpAAQAAAEAHAQX9IkUA4QEMIAEAAABOBwEH/aLyAOEBFgQBAAAATwcBB/3i4wDhAR4gAQAAAEAHAQb9IqEA4QEeIAEAAABRBwEG/WIZAOEBGkABAAAAUQcBBf2CQwDhAQwgAQAAAFMHAQf9wiMA4QEeAAEAAABRBwEE/WIbAOEBDCABAAAAVQcBB/3iFQDhAR5AAQAAAFEHAQL9AkAB4QEMIAEAAABXBwEH/aI3AOEBFgQBAAAAWAcBB/0ioADhARpAAQAAAFkHAQf9QpsA4QEeAAEAAABaBwEG/UIoAOEBDCABAAAAWwcBB/3CVgDhARYEAQAAAF8HAQX9wkoA4QEWBAEAAABfBwEF/WIbAOEBDCABAAAAXgcBB/2CmwDhARYEAQAAAF8HAQf94q4A4QEaQAEAAABgBwEH/eJWAOEBHAwBAAAAYQcBB/3izgDhARYEAQAAAGIHAQf9Ih0A4QEeIAEAAABjBwEG/UIxAOEBGkABAAAAYwcBBf1CSgDhAQwgAQAAAGUHAQf94hUA4QEuQAEAAABjBwEC/WIxAOEBHAwBAAAAZwcBB/0iSQDhAR4AAQAAAGMHAQT9glIA4QEMIAEAAABpBwEH/QKxAOEBHgABAAAAagcBBv1iGQDhARpAAQAAAGoHAQX9gkMA4QEMIAEAAABsBwEH/cIjAOEBHgABAAAAagcBBP3iFQDhAR4EAQAAAGoHAQL9ojcA4QEWBAEAAABvBwEH/aJSAOEBDCABAAAAcAcBB/1ipADhAR4gAQAAAHEHAQb9ohgA4QEaQAEAAABxBwEF/WIqAOEBDCABAAAAcwcBB/0CKgDhAQwgAQAAAHMHAQX94hUA4QEeIAEAAABxBwEC/SKnAOEBDCABAAAAdQcBBf0CbgDhAQwgAQAAAHcHAQf94mEA4QEMIAEAAAB4BwEH/cIcAOEBHiABAAAAcQcBBP3iHgDhAQwgAQAAAHoHAQf9AioA4QEMIAEAAAB6BwEF/UJWAOEBHgABAAAAfAcBBv3CAgDhASIEAQAAAH0HAQb9QigA4QEMIAEAAAB+BwEH/YI2AOEBDCABAAAAfwcBB/2CKQDhAQwgAQAAAIAHAQf9gmQA4QEaQAEAAAB8BwEF/cJWAOEBFgQBAAAAiAcBBf3CSgDhARYEAQAAAIgHAQX94hUA4QEeAAEAAAB8BwEC/ULQAOEBDCABAAAAfAcBBf2ilADhAQwgAQAAAIYHAQf9wsIA4QEMIAEAAACHBwEH/ULxAOEBFgQBAAAAiAcBB/3CGQDhAR4AAQAAAIkHAQb9AkAA4QEaQAEAAACJBwEF/UIoAOEBDCABAAAAiwcBB/0CWADhAR4AAQAAAIkHAQT94hUA4QEaQAEAAACJBwEF/UKOAOEBHgABAAAAjgcBBv3iKQDhAQwgAQAAAI8HAQf9gjEA4QEaQAEAAADiBwEF/SIgAOEBGkABAAAA4gcBBf2iWgDhAQwgAQAAAJIHAQf94joA4QEeIAEAAACTBwEG/eLAAOEBGkABAAAAlAcBB/1iVgDhARpAAQAAAJQHAQX94hUA4QEaQAEAAACUBwEF/YLWAOEBGkABAAAAlAcBBf2i1gDhARYEAQAAAJgHAQf9on0A4QEaQAEAAACZBwEH/YJMAOEBDCABAAAAmgcBB/2C7wDhAQwgAQAAAJsHAQf9YlMB4QEWBAEAAACcBwEH/WJXAOEBDCABAAAAnQcBB/2iRQDhAR4gAQAAAJ4HAQb94hkA4QEWBAEAAACfBwEH/eIVAOEBGkABAAAAngcBBf0CIgDhAQwgAQAAAKIHAQX9ojwA4QEMIAEAAACiBwEH/WIwAOEBDCABAAAAngcBBf1CJADhARYEAQAAAKQHAQf94iAA4QEMIAEAAAClBwEH/eIeAOEBDCABAAAApgcBB/2iGADhARYEAQAAAKcHAQf9YioA4QEMIAEAAACoBwEH/YKIAOEBDCABAAAAqQcBB/0CNQDhAQwgAQAAAKoHAQf9YhwA4QEWBAEAAACrBwEH/WKUAOEBHgABAAAArAcBBv3iFQDhARpAAQAAAKwHAQX94oEA4QEeAAEAAACsBwEE/aJwAOEBDCABAAAArwcBB/1CvADhAQwgAQAAALIHAQX9wh4A4QEWBAEAAACxBwEH/SI2AOEBDCABAAAAsgcBB/1iiwDhARpAAQAAALMHAQf9oiYA4QEaQAEAAACzBwEF/cImAOEBDCABAAAAtQcBB/3iJgDhARpAAQAAALMHAQX94hUA4QEaQAEAAACzBwEF/eLwAOEBLiABAAAAuAcBBv2CHQDhASAAAQAAALgHAQL94ikA4QEMIAEAAAC6BwEH/cJWAOEBFgQBAAAAwAcBBf3CSgDhARYEAQAAAMAHAQX9YhsA4QEMIAEAAAC9BwEH/eIVAOEBHgABAAAAuAcBAv2ieQDhAQwgAQAAAL8HAQf9Ar8A4QEWBAEAAADABwEH/QJuAOEBDCABAAAAwQcBB/1i+QDhAR4AAQAAALgHAQb9gsMA4QEMIAEAAADDBwEH/cJWAOEBFgQBAAAAxgcBBf3CSgDhARYEAQAAAMYHAQX9Yu0A4QEWBAEAAADGBwEH/SJaAOEBHgABAAAAxwcBBv3iOgDhAQwgAQAAAMgHAQf9QjEA4QEaQAEAAADHBwEF/eIVAOEBGkABAAAAxwcBBf1iHADhARYEAQAAAMsHAQf9oioA4QEcDAEAAADMBwEH/aLWAOEBDCABAAAAzQcBB/3CWwDhAR4AAQAAAMcHAQT9IqAA4QEeAAEAAADPBwEG/cIjAOEBGkABAAAAzwcBBf3iFQDhARpAAQAAAM8HAQX9IkUA4QEeAAEAAADSBwEG/WIcAOEBFgQBAAAA0wcBB/2iKgDhARwMAQAAANQHAQf9YhsA4QEMIAEAAADVBwEH/SJrAOEBDCABAAAA1gcBB/2iJwDhARpAAQAAANwHAUf9gicA4QEaQAEAAADdBwFF/SIrAOEBDCABAAAA2QcBB/1CKwDhARpAAQAAAN8HAUX94hUA4QEaQAEAAADgBwFF/YIwAOEBGkABAAAA3AcBB/2iMADhARpAAQAAANwHAQX9okYA4QEMIAEAAADeBwEH/cIwAOEBGkABAAAA3AcBBf3iFQDhARpAAQAAANwHAQX9QsEA4QEMIAEAAADhBwEH/cILAeEBGkABAAAA4gcBB/0C4AHhAQwgAQAAAOMHAQf9guUA4QEMIAEAAADkBwEH/UINAeEBHgABAAAA5QcBBv1CJQDhARpAAQAAAOUHAQX94hUA4QEeAAEAAADlBwEC/YLcAeEBDCABAAAA6QcBBf3iMQHhAQwgAQAAAOkHAQX9YoIA4QEeAAEAAADlBwEE/YLDAOEBHgABAAAA6wcBBv0ihADhAQwgAQAAAOwHAQf94hUA4QEaQAEAAADrBwEF/QKiAOEBHiABAAAA7gcBBv0CWADhAR4AAQAAAO4HAQT94hUA4QEaQAEAAADuBwEF/aLDAOEBHgABAAAA6wcBBP0CtQDhAR4AAQAAAPIHAQb9QigA4QEMIAEAAADzBwEH/QJGAOEBDCABAAAA9AcBB/3iFQDhAR4AAQAAAPIHAQL9AhkA4QEMIAEAAAD2BwEH/eKBAOEBHgABAAAA8gcBBP3iPgDhAQwgAQAAAPgHAQf9IuAB4QEaQAEAAAD5BwEH/eIZAOEBFgQBAAAA+gcBB/3iFQDhARpAAQAAAPkHAQX9YhoA4QEMIAEAAAD8BwEH/WIbAOEBDCABAAAA/QcBB/1iMADhARpAAQAAAPkHAQX9QiQA4QEWBAEAAAD/BwEH/eIgAOEBHiABAAAAAAgBBv1iHwDhARYEAQAAAAEIAQf9gh8A4QEMIAEAAAACCAEH/QIhAOEBDCABAAAAAAgBBf0idADhARYEAQAAAAQIAQf9wnQA4QEeAAEAAAAFCAEG/SKiAOEBDCABAAAABggBBf3CGQDhAQwgAQAAAAcIAQf9QjEA4QEaQAEAAAAFCAEF/eIVAOEBGkABAAAABQgBBf0i0gDhARYEAQAAAAoIAQf9wlsA4QEaQAEAAAAFCAEF/cJWAOEBFgQBAAAADggBBf3CSgDhARYEAQAAAA4IAQX9ghsB4QEWBAEAAAAOCAEF/WIqAOEBDCABAAAADwgBB/0i2gDhAQwgAQAAABAIAQf9gn8A4QEeAAEAAAARCAEG/eIVAOEBGkABAAAAEQgBBf0iUADhAQwgAQAAABMIAQf9AioA4QEeAAEAAAARCAEE/UKQAeEBDCABAAAAFQgBB/1C4AHhARYEAQAAABYIAQf9gjEA4QEaQAEAAAAcCAEF/SIgAOEBGiABAAAAHAgBBf1CIADhAQwgAQAAABkIAQf9YhwA4QEWBAEAAAAaCAEH/aIqAOEBHAwBAAAAGwgBB/3CpgDhAR5AAQAAABwIAQb94hUA4QEgQAEAAAAcCAEC/cJWAOEBFgQBAAAAIQgBBf3CSgDhARYEAQAAACEIAQX94lYA4QEcDAEAAAAgCAEH/WIOAeEBIgABAAAAIQgBBv0iAgHhAQwgAQAAACIIAQf9oqkA4QEMIAEAAAAtCAEF/SJIAOEBDCABAAAAJAgBB/0iKQDhAQwgAQAAACUIAQf9Il4A4QEMIAEAAAAnCAEF/SI1AOEBDCABAAAAJwgBBf0irADhAR5AAQAAACgIAQb9AtoA4QEMIAEAAAApCAEH/QJAAOEBGkABAAAAKAgBBf0CWADhAR4AAQAAACgIAQT94hUA4QEaQAEAAAAoCAEF/SI2AOEBDCABAAAALQgBBf1ixgHhAQwgAQAAADMIAQX9Qi4A4QEMIAEAAAAvCAEF/cL+AOEBDCABAAAALwgBBf1CPQDhAQwgAQAAADIIAQf9Yj0A4QEMIAEAAAAyCAEH/aIWAOEBDCABAAAAMwgBB/0CKQDhAR4AAQAAADQIAQb9Qh0A4QEWBAEAAAA1CAEH/eIVAOEBGkABAAAANAgBBf9i4AHVAQxEAQAAADcIAQX/onQA2QEMIAEAAAA4CAEH/yKiAOEBDCABAAAAOQgBB/+CHQDhAQwgAQAAADoIAQf/onkA4QEMIAEAAAA7CAEH/wIjAOEBDCABAAAAPAgBB/+iPADhAQwgAQAAAD0IAQf/wlUA4QEWBAEAAAA+CAEH/2ImAOEBDCABAAAAPwgBB/+CHwDhAQwgAQAAAEAIAQf/4hUA4QEiAAEAAABBCAEG/yJGAOEBDCABAAAAQggBB/9CqwDhAQwgAQAAAEMIAQf/YjsA4QEMIAEAAABECAEH/4JXAOEBFgQBAAAARQgBB//iFQDhARYEAQAAAEYIAQf/4kIA4QEMIAEAAABHCAEH/wK1AOEBDCABAAAASAgBB/9iMwDhAQwgAQAAAEkIAQf/QmsA4QEeIAEAAABKCAEG/2IeAOEBDCABAAAASwgBB/8CQADhASBAAQAAAEoIAQL/QigA4QEMIAEAAABNCAEH/+IVAOEBHgABAAAASggBAv+idQDhAR4AAQAAAEoIAQT/wlgA4QEMIAEAAABQCAEH/yIdAOEBHgABAAAAUQgBBv/CQgDhAQwgAQAAAFIIAQf/IlcA4QEWBAEAAABTCAEH/4JcAOEBFgQBAAAAVAgBB/8iLQDhAQwgAQAAAFUIAQf/QjEA4QEWBAEAAABWCAEH/8JWAOEBFgQBAAAAYAgBBf/CSgDhARYEAQAAAGAIAQX/4hUA4QEaQAEAAABRCAEF/2IbAOEBFgQBAAAAWggBB/+iKgDhARwMAQAAAFsIAQX/YjIA4QEMIAEAAABcCAEH/yJJAOEBHgABAAAAUQgBBP/iHgDhAQwgAQAAAF4IAQf/YhsA4QEMIAEAAABfCAEH/6JjAOEBFgQBAAAAYAgBB/8CDAHhAQwgAQAAAGEIAQf/Ih4A4QEMIAEAAABiCAEH/2JJAOEBHgABAAAAYwgBBv+CJADhAQwgAQAAAGQIAQf/4lUA4QEMIAEAAABlCAEH/4I9AOEBIAABAAAAZggBBv+ChQDhAR4gAQAAAGcIAQb/YhkA4QEaQAEAAABnCAEF/4JDAOEBDCABAAAAaQgBB//CIwDhAR4gAQAAAGcIAQT/4hUA4QEgQAEAAABnCAEC/2IxAOEBHAwBAAAAbAgBB/8CSwDhAQwgAQAAAG0IAQf/Yh8A4QEWBAEAAABuCAEH/+IVAOEBFgQBAAAAbwgBB/+ijgDhAQwgAQAAAHAIAQf/IocA4QEMIAEAAAA4CAEF/+JPAOEBDCABAAAAcggBB//iaQDhAQwgAQAAAHMIAQf/gkQA4QEMIAEAAAB0CAEH/0JXAOEBFgQBAAAAdQgBB/9iGwDhAQwgAQAAAHYIAQf/wh8A4QEMIAEAAAB3CAEH/2JRAOEBDCABAAAAeAgBB/8CRwDhAR4gAQAAAHkIAQb/whkA4QEWBAEAAAB6CAEH/2IbAOEBDCABAAAAewgBB/+CIgDhARwMAQAAAHwIAQf/whcA4QEiBAEAAAB9CAEG/8IaAOEBHAwBAAAAfggBB/+iGADhARYEAQAAAH8IAQf/YioA4QEMIAEAAACACAEH/+IVAOEBHgABAAAAeQgBAv/iGADhAQwgAQAAAHkIAQX/AqAA4QEeIAEAAACDCAEG/yK1AOEBDCABAAAAhAgBB//iGQDhASBAAQAAAIMIAQL/4hUA4QEeIAEAAACDCAEC/4KJAOEBHiABAAAAgwgBBv/CAgDhAQwgAQAAAIgIAQf/AiMA4QEwAAEAAACJCAEG/wIyAOEBHAwBAAAAiggBB//iHgDhAQwgAQAAAIsIAQf/olcA4QEMIAEAAACMCAEH/6JSAOEBDCABAAAAjQgBB/9iGwDhAQwgAQAAAI4IAQf/IkEA4QEWBAEAAACPCAEH/4LgAdkBDCABAAAAkAgBB/9iHADhARYEAQAAAJEIAQf/Ik4B4QEMIAEAAACSCAEH/0JnAOEBDCABAAAAkwgBB/+iWwDhAQwgAQAAAJQIAQf/YoYA2QEiAAEAAACVCAEG/2IeAOEBDCABAAAAlggBB/+CaQDhAQwgAQAAAJcIAQf/wi8A4QEaQAEAAACYCAEH/+IfAOEBGkABAAAAmAgBBf/iFQDhARpAAQAAAJgIAQX/IpIA4QEaQAEAAACbCAEH/4IXAOEBGkABAAAAnAgBB//CGADhAQwgAQAAAJ0IAQf/YkIA4QEaQAEAAACbCAEF/wIZAOEBDCABAAAAnwgBB//iIQDhAQwgAQAAAKAIAQf/YiAA4QEMIAEAAAChCAEH/wJ/AOEBDCABAAAAoggBB/+i3QDhAQwgAQAAAKMIAQf/wmQA4QEaQAEAAACkCAEH/0IlAOEBFgQBAAAApQgBB/8CGQDhAQwgAQAAAKYIAQf/wh4A4QEMIAEAAACnCAEH/8IXAOEBDCABAAAAqAgBB/8CKADhAUgEgQAAAKkIAQb/4lYA4QEcDAEAAACqCAEH/2IiAOEBIgQBAAAAqwgBBv8iJgDhAQwgAQAAAKwIAQf/Am4A4QEsAAEAAACtCAEG/8KpAOEBDCABAAAAsggBBf/iFQDhARpAAQAAAKkIAQX/wigA4QEcDAEAAACwCAEH/8IYAOEBDCABAAAAsQgBB//iLwDhAQwgAQAAALIIAQf/YiUA4QEeIGEEAACpCAEE/yJ/AOEBDCABAAAAtAgBB/+iPQHhAQwgAQAAALUIAQf/QlQA4QEiBAEAAAC2CAEG/2I6AOEBDCABAAAAtwgBB/+iGgDhARYEAQAAALgIAQf/ghcA4QEMIAEAAAC5CAEH/yIgAOEBDCABAAAAuwgBBf9iIgDhAQwgAQAAALsIAQf/Ii0A4QEMIAEAAAC8CAEH/yIZAOEBDCABAAAAvQgBB//iMgDhARpAAQAAAL4IAQf/4h4A4QEMIAEAAAC/CAEH/wIaAOEBGkABAAAAvggBBf/iNQDhAQwgAQAAAMEIAQf/4hUA4QEaQAEAAAC+CAEF/wIZAOEBDCABAAAAwwgBB/+CIQDhARYEAQAAAMQIAQf/oiQA4QEcDAEAAADFCAEH/2IbAOEBDCABAAAAxggBB//CIADhARwMAQAAAMcIAQf/YhoA4QEMIAEAAADICAEH/6IpAOEBFgQBAAAAyQgBB/9ikQDhAQwgAQAAALYIAQX/oiAA4QEMIAEAAADLCAEH/0IdAOEBIgABAAAAzAgBBv/iIQDhAQwgAQAAAM0IAQf/YiAA4QEMIAEAAADOCAEH/2IiAOEBDCABAAAAzwgBB/8CGQDhAR4gAQAAANAIAQb/whcA4QEiAAEAAADRCAEG/wIZAOEBDCABAAAA0ggBB/+iJwDhARpAAQAAANMIAQf/4iEA4QEMIAEAAADUCAEH/wIZAOEBDCABAAAA1QgBB/+CMADhARpAAQAAANYIAQf/ohgA4QEWBAEAAADXCAEH/+IVAOEBGkABAAAA0AgBBf/iGADhAQwgAQAAANAIAQX/YhoA4QEMIAEAAADaCAEH/6IaAOEBFgQBAAAA2wgBB/+iHwDhAQwgAQAAANoIAQX/QiQA4QEMIAEAAADdCAEH/wI0AOEBIgABAAAA3ggBBv8CGQDhAQwgAQAAAOYIAUf/oicA4QEaQAEAAADnCAFH/4InAOEBGkABAAAA6AgBRf9CKwDhARpAAQAAAOkIAUX/4hUA4QEaQAEAAADqCAFF/+IhAOEBDCABAAAA5AgBB/9iIADhAQwgAQAAAOUIAQf/AhkA4QEMIAEAAADmCAEH/4IwAOEBGkABAAAA5wgBB/+iMADhARpAAQAAAOcIAQX/wjAA4QEaQAEAAADnCAEF/+IVAOEBGkABAAAA5wgBBf+ChADhAQwgAQAAAOsIAQf/4iAA4QEgBAEAAADsCAEG/2IfAOEBGkABAAAA7AgBBf+iJADhARwMAQAAAO4IAQf/YhsA4QEMIAEAAADvCAEH/4IfAOEBDCABAAAA8AgBB/8CIQDhARpAAQAAAOwIAQX/4hUA4QEaQAEAAADsCAEF/yIgAOEBDCABAAAA9AgBBf9CIADhAQwgAQAAAPQIAQf/wnYA4QEMIAEAAAD1CAEH/4IXAOEBIAQBAAAA9ggBBv+iJADhARwMAQAAAPcIAQf/YhsA4QEMIAEAAAD4CAEH/wIaAOEBGkABAAAA9ggBBf/iFQDhARpAAQAAAPYIAQX/AhkA4QEMIAEAAAD7CAEH/4IhAOEBIgABAAAA/AgBBv9iIgDhARYEAQAAAP0IAQf/giYA4QEMIAEAAAD+CAEH/yJXAOEBFgQBAAAA/wgBB/8iHwHhARYEAQAAAAAJAQf/whgA4QEeAAEAAAABCQEG/2IiAOEBFgQBAAAAAgkBB/8CGQDhAQwgAQAAAAMJAQf/4hUA4QEaQAEAAAABCQEF/wIwAOEBDCABAAAAAQkBBf8CGQDhAQwgAQAAAAYJAQf/YhwA4QEWBAEAAAAHCQEH/6IcAOEBGkABAAAACAkBB/9COgDhARpAAQAAAAgJAQX/okAA4QEMIAEAAAAKCQEH/2IoAOEBGkABAAAACAkBBf/iFQDhARpAAQAAAAgJAQX/AhkA4QEMIAEAAAANCQEH/4IhAOEBFgQBAAAADgkBB/+iJADhARwMAQAAAA8JAQf/YhsA4QEMIAEAAAAQCQEH/0IgAOEBDCABAAAAEQkBB/9iHADhARYEAQAAABIJAQf/oioA4QEcDAEAAAATCQEH/2IbAOEBDCABAAAAFAkBB/+iPwDhAQwgAQAAABUJAQf/QkAA2QEeQAEAAAAWCQEW/8IZAOEBFgQBAAAAFwkBB/+iUgDhAR4gAQAAABgJAQb/gh0A4QEMIAEAAAAZCQEH/+JVAOEBDCABAAAAGgkBB/8iGQDhAQwgAQAAABsJAQf/QiUA4QEgQAEAAAAYCQEC/yImAOEBDCABAAAAHQkBB//CVgDhARYEAQAAACoJAQX/wkoA4QEWBAEAAAAqCQEF/2IbAOEBDCABAAAAIAkBB//iFQDhARpAAQAAABgJAQX/YhsA4QEWBAEAAAAiCQEH/+IVAOEBDCABAAAAIwkBB/8ipwDhAQwgAQAAACMJAQX/wkIA4QEMIAEAAAAlCQEH/wI9AOEBDCABAAAAJgkBB//CsADhAR4gAQAAABgJAQT/wkIA4QEMIAEAAAAoCQEH/8J1AOEBDCABAAAAKQkBB//i/gDhARYEAQAAACoJAQf/4hUA4QEuQAEAAAAWCQEC/+LvAOEBHkABAAAALAkBBv+CTADhAQwgAQAAAC0JAQf/4hUA4QEeQAEAAAAsCQEC/wLwAOEBGkABAAAALAkBBf8imwDhARpAAQAAADAJAQf/Am4A4QEMIAEAAAAxCQEH/yK3AOEBGkABAAAAMgkBF/9CMQDhARpAAQAAADIJARX/4hUA4QEWBAEAAAA0CQEX/2IxAOEBHAwBAAAANQkBB//CVgDhARYEAQAAADkJAQX/wkoA4QEWBAEAAAA5CQEF/2IbAOEBDCABAAAAOAkBB/+i2gDhARYEAQAAADkJAQf/QhYB4QEaQAEAAAAyCQEV/2KkAOEBGkABAAAAFgkBBf/ijwDhARpAAQAAADwJAQf/4joA4QEMIAEAAAA9CQEH/2JWAOEBGkABAAAAPAkBBf/iFQDhASAAAQAAADwJAQL/4rEA4QEaQAEAAAA8CQEF/yJrAOEBDCABAAAAQQkBB/+CTADhAQwgAQAAAEIJAQf/oigA4QEaQAEAAAAWCQEF/8KgAOEBHiABAAAARAkBBv/iFQDhARpAAQAAAEQJAQX/AikA4QEaQAEAAABGCQEH/+IVAOEBIAQBAAAARgkBAv/CGADhAR4gAQAAAEgJAQb/wh4A4QEWBAEAAABJCQEH/wIZAOEBDCABAAAASgkBB//iGQDhARYEAQAAAEsJAQf/4hUA4QEaQAEAAABICQEF/wIwAOEBHiABAAAASAkBBP+i4AHhAQwgAQAAAE8JAQX/wuAB4QEMIAEAAABPCQEH/4IXAOEBHkABAAAAUAkBBv/iGQDhASBAAQAAAFAJAQL/AhoA4QEaQAEAAABQCQEF/+IVAOEBGkABAAAAUAkBBf8CGQDhAQwgAQAAAFQJAQf/4iEA4QEMIAEAAABVCQEH/2IgAOEBDCABAAAAVgkBB/9iGgDhAQwgAQAAAFcJAQf/4lIA4QEeAAEAAABYCQEG/+IVAOEBGkABAAAAWAkBBf9CMwDhAR4AAQAAAFgJAQT/4hUA4QEaQAEAAABYCQEF/8I2AOEBDCABAAAAXAkBB/9ikADhAQwgAQAAAF0JAQf/QjIA4QEMIAEAAABeCQEH/8KKAOEBDCABAAAAXwkBB/8CegDhAQwgAQAAAGAJAQf/4joA4QEMIAEAAABhCQEH/6IpAOEBDCABAAAAYgkBB/9iJADhARpAAQAAAGMJAQf/4iEA4QEMIAEAAABkCQEH/8IiAOEBFgQBAAAAZQkBB/8CLQDhARYEAQAAAGYJAQf/wkgA4QEMIAEAAABnCQEH/2JAAOEBDCABAAAAaAkBB/+CIADhAQwgAQAAAGkJAQf/4kQA4QEWBAEAAABqCQEH/4IcAOEBFgQBAAAAawkBB/9iIADhAQwgAQAAAGwJAQf/QkkA4QEMIAEAAABtCQEH/wJkAOEBDCABAAAAbgkBB/+CMADhARpAAQAAAG8JAQf/ojAA4QEaQAEAAABvCQEF/6JGAOEBDCABAAAAcQkBB//CMADhARpAAQAAAG8JAQX/4hUA4QEeQAEAAABvCQEC/+IgAOEBDCABAAAAdAkBB/8CIQDhAQwgAQAAAHQJAQX/Qh0A4QEMIAEAAAB2CQEH/6KfAOEBDCABAAAAdwkBB//i4AHhAQwgAQAAAHgJAQf/osoA4QEcDAEAAAB5CQEH/6IgAOEBIAQBAAAAegkBBv/iGQDhASBAAQAAAHoJAQL/4hUA4QEaQAEAAAB6CQEF/wIZAOEBDCABAAAAfQkBB//iGADhAQwgAQAAAH0JAQX/giEA4QEWBAEAAAB/CQEH/6IkAOEBHAwBAAAAgAkBB/9CIADhAQwgAQAAAIEJAQf/wkIA4QEMIAEAAACCCQEH/2IaAOEBDCABAAAAgwkBB/8CHQDhARpAAQAAAHoJAQX/wkIA4QEMIAEAAACFCQEH/6I8AOEBDCABAAAAhgkBB/8COADhAQwgAQAAAIcJAQf/QkkA4QEMIAEAAACICQEH/8I3AOEBDCABAAAAiQkBBf/CLQDhAQwgAQAAAIkJAQX/4skA4QEiIAEAAACLCQEG/6IjAOEBFgQBAAAAjAkBB/9iaQDhARwMAQAAAI0JAQf/YhsA4QEMIAEAAACOCQEH/2IbAOEBFgQBAAAAjwkBB/+iKgDhARwMAQAAAJAJAQf/YhsA4QEMIAEAAACRCQEH/wJMAOEBFgQBAAAAkgkBB/9iGwDhAQwgAQAAAJMJAQf/wqoB4QEWBAEAAACUCQEH/+JpAOEBHkABAAAAlQkBBv/CGQDhARYEAQAAAJYJAQf/QigA4QEMIAEAAACXCQEH/wIqAOEBDCABAAAAlwkBB//iFQDhAR5AAQAAAJUJAQL/4r8A4QEMIAEAAACaCQEH/+JPAOEBHgABAAAAmwkBBv+CJQDhAQwgAQAAAJwJAQf/4oEA4QEaQAEAAACVCQEF/0KvAeEBDCABAAAAngkBB/+iRgDhAQwgAQAAAJ8JAQf/AuEB4QEMIAEAAACgCQEH/+I6AOEBDCABAAAAoQkBB/+CJgDhAQwgAQAAAKIJAQf/ghYA4QEMIAEAAACLCQEF/yIaAOEBFgQBAAAApAkBB//CGgDhARwMAQAAAKUJAQf/YiAA4QEMIAEAAACmCQEH/0ItAOEBDCABAAAApwkBB/+CRADhAR4AAQAAAKgJAQb/QkkA4QEMIAEAAACpCQEH/yIeAOEBDCABAAAAqgkBB/9iFADhAQwgAQAAAKsJAQf/4h4A4QEMIAEAAACsCQEH/0IkAOEBFgQBAAAArQkBB/+iGgDhARYEAQAAAK4JAQf/giwB4QEMIAEAAACvCQEH/8IaACECHAwBAAAAsAkBBf8iIAAhAgwgAQAAALEJAQX/gjEAIQIWBAEAAACyCQEF/+IgACECFgQBAAAAswkBBf/CFwAhAhYEAQAAALQJAQX/AiUAIQIWBAEAAAC1CQEF/2IfACECFgQBAAAAtgkBBf8CQAAhAhYEAQAAALcJAQX/QiYA4QEWBAEAAAC4CQEH/yIwAOEBFgQBAAAAuQkBB//CGgDhARwMAQAAALoJAQf/IhoA4QEWBAEAAAC7CQEH/8IuAOEBFgQBAAAAvAkBB/+CHADhARYEAQAAAL0JAQf/IhoA4QEiAAEAAAC+CQEG/+I2AOEBDCABAAAAvwkBB/9iIgDhASIAAQAAAMAJAQb/ohoA4QEiAAEAAADBCQEG/yJ9AOEBDCABAAAAwgkBB/8CNADhARYEAQAAAMMJAQf/wswA4QEMIAEAAADECQEH/0IuAOEBDCABAAAAxQkBB//CNADhARYEAQAAAMYJAQf/4hUA4QEWBAEAAADHCQEH/4IhAOEBFgQBAAAAyAkBB/9iGgDhAQwgAQAAAMkJAQf/YhwA4QEWBAEAAADKCQEH/2IbAOEBDCABAAAAywkBB/9CFgDhARYEAQAAAMwJAQf/YhsA4QEMIAEAAADNCQEH/4JGAOEBDCABAAAAzgkBB/9iGQDhARYEAQAAAM8JAQf/4h4A4QEMIAEAAADQCQEH/4IcAOEBFgQBAAAA0QkBB/8CLgDhAQwgAQAAANIJAQf/whcA4QEMIAEAAADTCQEH/2IgAOEBDCABAAAA1AkBB/9CIADhAQwgAQAAANUJAQf/wiIA4QEWBAEAAADWCQEH/0I8AOEBDCABAAAA1wkBB/8CIwDhARYEAQAAANgJAQf/AjEB4QEWBAEAAADZCQEH/4IXAOEBFgQBAAAA2gkBB/+COADhARYEAQAAANsJAQf/YmkA4QEwDAEAAADcCQEG/8IXAOEBFgQBAAAA3QkBB/+COADhAQwgAQAAAN4JAQf/Qh0A4QEMIAEAAADfCQEH/2IgAOEBDCABAAAA4AkBB/8CZwDhAQwgAQAAAN4JAQX/YiIA4QEMIAEAAADiCQEH/2IcAOEBFgQBAAAA4wkBB/9CLgDhAQwgAQAAAOQJAQf/wmQA4QEWBAEAAADlCQEH/6IaAOEBFgQBAAAA5gkBB/9CSQDhAQwgAQAAAOcJAQf/InQA4QEWBAEAAADoCQEH/yIaAOEBFgQBAAAA6QkBB/+CHADhARYEAQAAAOoJAQf/Qh0A4QEMIAEAAADrCQEH/0ItAOEBDCABAAAA7AkBB/9iNwDhAQwgAQAAAO0JAQf/IhoA4QEWBAEAAADuCQEH/8IYAOEBFgQBAAAA7wkBB//CGQDhARYEAQAAAPAJAQf/ghwA4QEWBAEAAADxCQEH/2IcAOEBFgQBAAAA8gkBB/+CFwDhARYEAQAAAPMJAQf/goIA4QEMIAEAAAD0CQEH/8IXAOEBDCABAAAA9QkBB/8CJQDhARYEAQAAAPYJAQf/gikA4QEMIAEAAAD3CQEH/8JAAOEBFgQBAAAA+AkBB/8CQADhARYEAQAAAPkJAQf/wmUA4QEWBAEAAAD6CQEH/6I1AOEBFgQBAAAA+wkBB/8isgDhARYEAQAAAPwJAQf/IhoA4QEWBAEAAAD9CQEH/2I3AOEBFgQBAAAA/gkBB/+iGgDhARYEAQAAAP8JAQf/IhoA4QEWBAEAAAAACgEH/yIYAOEBDCABAAAAAQoBB/9CKADhAQwgAQAAAAIKAQf/Ih4A4QEMIAEAAAADCgEH/0IeAOEBDCABAAAABAoBB//CGADhARYEAQAAAAUKAQf/IjwA4QEWBAEAAAAGCgEH/4IcAOEBFgQBAAAABwoBB/9CLQDhAQwgAQAAAAgKAQf/4rMA4QEMIAEAAAAJCgEH/wK+AOEBMAABAAAACgoBBv+CUQDhAQwgAQAAAAsKAQf/whcA4QEWBAEAAAAMCgEH/0IgAOEBDCABAAAADQoBB/9iGwDhAQwgAQAAAA4KAQf/AokA2QEMIAEAAAAPCgEHAMNKAQoCGTABAAAAEgohBQHjSgEPAhkwASABABIKEQX/4koBEQIZMAEAAQASCgEF/4IXAOEBDCABAAAAEwoBB/9iGgDhAQwgAQAAABQKAQf/ohoA4QEWBAEAAAAVCgEH/6IfAOEBDCABAAAAFAoBBf8iLQDhAQwgAQAAABcKAQf/Yj8A4QEaQAEAAAAYCgEH/yKVAOEBDCABAAAAGQoBB/8iJgDhAQwgAQAAABoKAQf/4hUA4QEeQAEAAAAYCgEC/2IlAOEBGkABAAAAGAoBBf8i1QDhAQwgAQAAAB0KAQf/YjYA4QEMIAEAAAAeCgEH/4JNAOEBFgQBAAAAHwoBB//CxQDhAQwgAQAAACAKAQcBg08A5wEYMAEAAAAhChEF/4JPAOEBGDABAAAAIQoBB/+CdgDhARYEAQAAACMKAQf/IjoA4QEaQAEAAAAkCgEH/yIeAOEBDCABAAAAJQoBB//CGADhARYEAQAAACYKAQf/woAA4QEMIAEAAAAnCgEH/0I4AOEBFgQBAAAAKAoBB/9CIADhAQwgAQAAACkKAQf/AnoA4QEiBAEAAAAqCgEG/0IgAOEBDCABAAAAKwoBB/+iHwDhAQwgAQAAACoKAQX/4lIB4QEMIAEAAAAtCgEH/0J2AOEBDCABAAAALgoBB/9iEgHhAQwgAQAAAC8KAQf/ol8A4QEMIAEAAAAwCgEH/wIhAOEBDCABAAAAMAoBBf+CFwDhARYEAQAAADIKAQf/AhkA4QEMIAEAAAAzCgEH/8IXAOEBFgQBAAAANAoBB/+iJwDhARpAAQAAADwKAUX/gicA4QEaQAEAAAA9CgFF/0IrAOEBGkABAAAAPgoBRf/iFQDhARpAAQAAAD8KAUX/4iEA4QEMIAEAAAA5CgEH/2IgAOEBDCABAAAAOgoBB/8iGgDhARYEAQAAADsKAQf/gjAA4QEaQAEAAAA8CgEF/6IwAOEBGkABAAAAPAoBBf/CMADhARpAAQAAADwKAQX/4hUA4QEaQAEAAAA8CgEF/8IaAOEBHAwBAAAAQAoBB/8CvADhAR4gAQAAAEEKAQb/gicA4QEgQAEAAABBCgEC/2IbAOEBFgQBAAAAQwoBB/+iKgDhARwMAQAAAEQKAQf/YhsA4QEMIAEAAABFCgEH/0IrAOEBHiABAAAAQQoBBP+iJwDhARpAAQAAAEcKAQf/IiAA4QEMIAEAAABJCgEF/0IgAOEBDCABAAAASQoBB/+CMADhARpAAQAAAEoKAQf/whkA4QEWBAEAAABLCgEH/2IbAOEBDCABAAAATAoBB/+CIgDhARwMAQAAAE0KAQf/wjUA4QEaQAEAAABOCgEH/yJeAOEBDCABAAAAUAoBBf8iNQDhAQwgAQAAAFAKAQX/4hUA4QEeQAEAAABBCgEC/wIZAOEBDCABAAAAUgoBB/+iJwDhARpAAQAAAF4KAUf/gicA4QEWBAEAAABfCgFH/yIrAOEBDCABAAAAVQoBB/9CKwDhARpAAQAAAGEKAUX/4hUA4QEiAAEAAABiCgFG/4IhAOEBIgQBAAAAWAoBBv+iJADhARwMAQAAAFkKAQf/YhsA4QEMIAEAAABaCgEH/yIgAOEBDCABAAAAXAoBBf9CIADhAQwgAQAAAFwKAQf/AhkA4QEMIAEAAABdCgEH/4IwAOEBGkABAAAAXgoBB/+iMADhARYEAQAAAF8KAQf/okYA4QEMIAEAAABgCgEH/8IwAOEBGkABAAAAXgoBBf/iFQDhAS4AAQAAAF4KAQL/4h4A4QEMIAEAAABjCgEH/+JGAOEBDCABAAAAZAoBB/+iGgDhARYEAQAAAGUKAQf/YhoA4QEWBAEAAABmCgEH/0IkAOEBFgQBAAAAZwoBB/+iPADhAQwgAQAAAGgKAQf/oh8A4QEMIAEAAABkCgEF/6IpAOEBFgQBAAAAagoBB/8iMADhARYEAQAAAGsKAQf/oicA4QEaQAEAAABsCgEH/+IhAOEBDCABAAAAbQoBB/9iIADhAQwgAQAAAG4KAQf/QiAA4QEMIAEAAABvCgEH/4IwAOEBGkABAAAAcAoBB//CGgDhARwMAQAAAHEKAQf/YhsA4QEMIAEAAAByCgEH/2IcAOEBFgQBAAAAcwoBB/+iKgDhARwMAQAAAHQKAQf/YhsA4QEMIAEAAAB1CgEH/8IYAOEBLkABAAAAGAoBAv8CcwDhAQwgAQAAAHcKAQf/Ih4A4QEeIAEAAAB4CgEG/0I6AOEBGkABAAAAeAoBBf9iKADhAR4gAQAAAHgKAQT/4hUA4QEeQAEAAAB4CgEA/6IaAOEBFgQBAAAAfAoBB/9iHADhARYEAQAAAH0KAQf/oioA4QEcDAEAAAB+CgEH/2JQAOEBDCABAAAAdgoBBf8iHgDhAQwgAQAAAIAKAQf/Qh4A4QEMIAEAAACBCgEH/8IYAOEBFgQBAAAAggoBB//CGADhAQwgAQAAAIMKAQf/wh4A4QEWBAEAAACECgEH/wIZAOEBDCABAAAAhQoBB/+iJwDhARpAAQAAAI4KAUf/gicA4QEaQAEAAACPCgFF/0IrAOEBGkABAAAAkAoBRf/iFQDhARpAAQAAAJEKAUX/4iEA4QEMIAEAAACKCgEH/2IgAOEBDCABAAAAiwoBB/9CIADhAQwgAQAAAIwKAQf/AhkA4QEMIAEAAACNCgEH/4IwAOEBGkABAAAAjgoBB/+iMADhARpAAQAAAI4KAQX/wjAA4QEaQAEAAACOCgEF/+IVAOEBGkABAAAAjgoBBf/CGgDhARwMAQAAAJIKAQf/oicA4QEaQAEAAACTCgEH/0IrAOEBGkABAAAAkwoBBf+CMADhARpAAQAAAJUKAQf/wjAA4QEaQAEAAACVCgEF/wIwAOEBDCABAAAAgwoBBf9ifQDhAQwgAQAAAJgKAQf/AjgA4QEMIAEAAACZCgEH/yLhAeEBDCABAAAAmgoBBf8iHADhAQwgAQAAAJoKAQX/QuEB2QEMIIEDAACcCgEHAAPXAQoCGTABAAAAnwohBQEj1wEPAhkwAQAAAJ8KEQX/ItcBEQIZMIEDAACfCgEF/8KBAOEBDCABAAAAoAoBB/9iJADhARYEAQAAAKEKAQf/Ii4A4QEWBAEAAACiCgEH/0IgAOEBDCABAAAAowoBB//CGQDhARYEAQAAAKQKAQf/giIA4QEcDAEAAAClCgEH/4IXAOEBLgQBAAAApgoBBv/iGQDhASAEAQAAAKYKAQL/oiQA4QEcDAEAAACoCgEH/2IbAOEBDCABAAAAqQoBB/8CGgDhAR4AAQAAAKYKAQT/4hUA4QEaQAEAAACmCgEF/wIZAOEBDCABAAAArAoBB//iIQDhAQwgAQAAAK0KAQf/YiAA4QEMIAEAAACuCgEH/+IhAOEBDCABAAAArwoBB/9iIADhASIEAQAAALAKAQb/oj0A4QEMIAEAAACwCgEF/4IhAOEBFgQBAAAAsgoBB/9iGgDhAQwgAQAAALMKAQf/YigA4QEMIAEAAAC1CgEF/2KZAOEBDCABAAAAtQoBB/9ikgHhAQwgAQAAALYKAQf/YrAA4QEMIAEAAAC2CgEF/2I3AOEBDCABAAAAuAoBB//i0QHhAQwgAQAAALkKAQf/IhwA4QEMIAEAAAC6CgEH/0IwAOEBDCABAAAAuwoBBwCDgwBOAhkwAQAAAL4KIQUBo4MAUwIZMAEAAAC+ChEF/6KDABkCGTABAAAAvgoBBf/CjgHhAQwgAQAAANMKAQX/wh4A4QEWBAEAAADACgEH/wIiAOEBDCABAAAAwgoBBf+iPADhAQwgAQAAAMIKAQX/ghcA4QEWBAEAAADDCgEH/wIZAOEBDCABAAAAxAoBB/8CQQDhAQwgAQAAAMUKAQf/4ikA4QEYMIEDAADGCgEH/2IiAOEBDCABAAAAxwoBB/+CLADhAQwgAQAAAMkKAQX/ojwA4QEMIAEAAADJCgEF/yKnAeEBDCABAAAAygoBB/9iVADhAQwgAQAAAMsKAQf/IhoA4QEWBAEAAADMCgEH/6IeAOEBDCABAAAAzQoBB/+iHgDhAQwgAQAAAM4KAQf/Ai0A4QEWBAEAAADPCgEH/wIZAOEBDCABAAAA0AoBB//CFwDhARYEAQAAANEKAQf/Qh0A4QEMIAEAAADSCgEH/yI2AOEBDCABAAAA0woBB/8iRQDhARYEAQAAANQKAQf/gkMA4QEMIAEAAADVCgEH/wIqAOEBGkABAAAA1QoBBf9CJADhARYEAQAAANcKAQf/IjQB4QEMIAEAAADVCgFH/wIhAOEBDEABAAAA1goBRf/iIADhAQwgAQAAANoKAQf/YgsB4QEMIAEAAADbCgEH/yLiAOEBDCABAAAA3AoBB//CWQDhAQwgAQAAANwKAQX/Il4A4QEMIAEAAADeCgEH/0J0AOEBDCABAAAA2woBBf9iGgDhAQwgAQAAAOAKAQf/Ih4A4QEeIAEAAADhCgEG/6JAAOEBDCABAAAA4goBB/9iKADhAQwgAQAAAOEKAQX/4hUA4QEaQAEAAADhCgEF/8IYAOEBFgQBAAAA5QoBB/+iGgDhARYEAQAAAOYKAQf/whoA4QEcDAEAAADnCgEH/+IeAOEBHiABAAAA6AoBBv9iHwDhASAAAQAAAOgKAQL/In4A4QEMIAEAAADtCgEF/4IXAOEBGkABAAAA6woBB/8CGQDhAQwgAQAAAOwKAQf/IloA4QEMIAEAAADtCgEF/6JeAOEBDCABAAAA7goBB/+iGADhARYEAQAAAO8KAQf/wp8B4QEMIAEAAADwCgEH/2JgAOEBDCABAAAA8QoBB/9iOQDhAQwgAQAAAFYLAQX/QpUA4QEMIAEAAADzCgEH/2JRAOEBDCABAAAA9AoBB//iTwDhAQwgAQAAAPUKAQf/YkAA4QEMIAEAAAD2CgEH/8I8AOEBFgQBAAAA9woBB/+CHADhARYEAQAAAPgKAQf/wmIB4QEMIAEAAAD2CgEF/4J6AOEBDCABAAAA+goBB/9iNADhAQwgAQAAAPsKAQf/Qh0A4QEWBAEAAAD8CgEH/2JNAOEBDCABAAAA/QoBB/9iGADhARYEAQAAAP4KAQf/AiYA4QEeAAEAAAD/CgEG/+IfAOEBHgABAAAA/woBBP/iFQDhARpAAQAAAP8KAQX/YhwA4QEWBAEAAAACCwEH/0IgAOEBDCABAAAAAwsBB/9iNgDhARYEAQAAAAQLAQf/oiQA4QEcDAEAAAAFCwEH/2IbAOEBDCABAAAABgsBB/9CIADhAQwgAQAAAAcLAQf/YuEB4QEMIAEAAAAICwEH/6LKAOEBDCABAAAACQsBB/8iRgDhAQwgAQAAAAoLAQf/IlcA4QEWBAEAAAALCwEH/6KVAOEBDCABAAAADAsBB/9iHgDhAQwgAQAAAA0LAQf/wiYA4QEMIAEAAAAOCwEH/6IaAOEBIiABAAAADwsBBv8CGQDhAQwgAQAAABcLAUf/4hgA4QEMIAEAAAAYCwFF/6InAOEBGkABAAAAGQsBR/+CJwDhARpAAQAAABoLAUX/QisA4QEaQAEAAAAbCwFF/+IVAOEBGkABAAAAHAsBRf/iIQDhAQwgAQAAABYLAQf/AhkA4QEMIAEAAAAXCwEH/+IYAOEBDCABAAAAGAsBBf+CMADhARpAAQAAABkLAQf/ojAA4QEaQAEAAAAZCwEF/8IwAOEBGkABAAAAGQsBBf/iFQDhARpAAQAAABkLAQX/whoA4QEcDAEAAAAdCwEH/6J1AOEBDCABAAAADwsBBf+ikAHhARwMAQAAAB8LAQf/YhwA4QEWBAEAAAAgCwEH/6I8AOEBDCABAAAAIQsBB/8CRgDhAQwgAQAAACILAQf/QiQA4QEWBAEAAAAjCwEH/+IgAOEBDCABAAAAJAsBB/9iIADhAQwgAQAAACULAQf/YnIA4QEMIAEAAAAmCwEH/yIgAOEBDCABAAAAJwsBB/9iogHhAQwgAQAAACgLAQf/YkAA4QEMIAEAAAApCwEH/4IgAOEBDCABAAAAKgsBB/+CYADhAQwgAQAAACsLAQf/YiQA4QEMIAEAAAAsCwEH/+L+AOEBDCABAAAALQsBB/8CLQDhARYEAQAAAC4LAQf/ghwA4QEWBAEAAAAvCwEH/2IcAOEBFgQBAAAAMAsBF/+iKgDhARwMAQAAADELAQf/YhsA4QEMIAEAAAAyCwEH/0LgAOEBDCABAAAAMwsBB/9iHgDhAQwgAQAAADQLAQf/Im0A4QEMIAEAAAA1CwEH/6InAOEBGkABAAAAOwsBR/+CJwDhARpAAQAAADwLAUX/IisA4QEMIAEAAAA4CwEH/0IrAOEBGkABAAAAPgsBRf/iFQDhARpAAQAAAD8LAUX/gjAA4QEaQAEAAAA7CwEH/6IwAOEBGkABAAAAOwsBBf+iRgDhAQwgAQAAAD0LAQf/wjAA4QEaQAEAAAA7CwEF/+IVAOEBGkABAAAAOwsBBf/iRADhARYEAQAAAEALAQf/ghwA4QEWBAEAAABBCwEH/2IgAOEBDCABAAAAQgsBB/9CSQDhAQwgAQAAAEMLAQf/Ig4B4QEMIAEAAABECwEH/2IkAOEBDCABAAAARQsBB/+iUADhAQwgAQAAAEYLAQf/YhwA4QEWBAEAAABHCwEH/8KLAOEBDCABAAAASAsBB/9iqgDhAQwgAQAAAEkLAQf/whgA4QEMIAEAAABKCwEH/2IkAOEBFgQBAAAASwsBB/+iNgDhAQwgAQAAAEwLAQf/ghcA4QEgAAEAAABNCwEG/+IZAOEBFgQBAAAATgsBB/9iRgDhAQwgAQAAAE8LAQf/AhkA4QEMIAEAAABQCwEH/+IkAOEBDCABAAAAUQsBB/+CMQDhARYEAQAAAFILAQf/ghcA4QEWBAEAAABTCwEH/2IkAOEBDCABAAAAVAsBB/9CHQDhAQwgAQAAAFULAQf/IloA4QEMIAEAAABWCwEH/wJCAOEBDCABAAAAVwsBB/9iHgDhAQwgAQAAAFgLAQf/AjAA4QEMIAEAAABYCwEF/+LmAOEBHkABAAAAWgsBBv9iKQDhARpAAQAAAFoLAQX/gikA4QEMIAEAAABcCwEH/wIqAOEBDCABAAAAXAsBBf+CFgDhARpAAQAAAFoLAQX/wjEA4QEeIAEAAABfCwEG/0IgAOEBDCABAAAAYAsBB//CGQDhARYEAQAAAGELAQf/YhsA4QEMIAEAAABiCwEH/8KmAOEBDCABAAAAYwsBB/9COgDhARpAAQAAAF8LAQX/wkIA4QEMIAEAAABlCwEH/2IoAOEBHiABAAAAXwsBBv/iFQDhAR4gAQAAAF8LAQL/YlQA4QEMIAEAAABoCwEH/0I4AOEBFgQBAAAAaQsBB/+iJADhARwMAQAAAGoLAQf/QiAA4QEMIAEAAABrCwEH/+IVAOEBHkABAAAAWgsBAv8ipwDhAQwgAQAAAGwLAQX/YhoA4QEMIAEAAABuCwEH/8JkAOEBDCABAAAAbwsBB/+CwwHhASIAAQAAAHALAQb/ghwA4QEWBAEAAABxCwEH/+IhAOEBDCABAAAAcgsBB//ieQDhAQwgAQAAAHMLAQf/IhgA4QEMIAEAAAB0CwEH/wJMAOEBDCABAAAAdQsBB/8iLgDhAQwgAQAAAHYLAQf/giwA4QEMIAEAAAB3CwEH/6IaAOEBDCABAAAAeAsBB//CHQDhAQwgAQAAAHkLAQf/Qh0A4QEiAAEAAAB6CwEG/0IgAOEBDCABAAAAewsBB/9iGwDhAQwgAQAAAHwLAQf/QjgA4QEWBAEAAAB9CwEH/wIZAOEBDCABAAAAfgsBB//iGADhAQwgAQAAAH4LAQf/YkYA4QEMIAEAAACBCwEF/6I8AOEBDCABAAAAgQsBBf8ipwHhAQwgAQAAAIILAQf/QpEA2QEuQAEAAACDCwEG/yKFAOEBDCABAAAAhAsBB/9iHADhARYEAQAAAIULAQf/InkA4QEMIAEAAACECwEF/6IXAOEBDCABAAAAhwsBB/8iZQDhAQwgAQAAAIcLAQX/YiQA4QEMIAEAAACJCwEH/+K/AOEBDCABAAAAigsBB//CNADhARYEAQAAAIsLAQf/YpEA4QEeIAEAAACDCwEE/0JWAOEBDCABAAAAjQsBB/8CfwDhAQwgAQAAAI4LAQf/grIB4QEMIAEAAACPCwEH/4IoAOEBDCABAAAAkAsBB//iHgDhAQwgAQAAAJELAQf/giQA4QEMIAEAAACSCwEH/+IVAOEBHkABAAAAgwsBAv8ipwDhAQwgAQAAAJMLAQX/IqwA4QEeQAEAAACVCwEG/wJAAOEBIEABAAAAlQsBAv/CGADhAQwgAQAAAJcLAQf/AjAA4QEMIAEAAACXCwEF/0IoAOEBDCABAAAAmQsBB/8CKgDhAQwgAQAAAJkLAQX/AlgA4QEaQAEAAACVCwEF/+IVAOEBHkABAAAAlQsBAv/inwDhAQwgAQAAAJ0LAQf/giYB4QEMIAEAAACeCwEH/wLMAeEBDCABAAAAnwsBB/8C5wDhAQIkAQIAAKALARf/gjkAIQIWBAEAAAChCwEF/2IqAOEBDCABAAAAogsBB/+COQDhASwAAQAAAKMLAQb/QicA4QEMIAEAAACkCwEH/2KkAOEBkgBBAgAApQsBBv/iKADhASIAwQAAAKYLAQb/4igA4QEiBIEAAACnCwEG/2JpAOEBHAwBAAAAqAsBB/8iIADhAQwgQQMAAKsLAQf/Io8A4QEiAOEAAACqCwEG/wKXAOEBAiRhAgAAqwsBB/+CKQDhARpAAQAAAKwLAQf/whkA4QEWBAEAAACtCwEH/0IkAOEBFgSBBQAArgsBF/+iJwDhARpAAQAAAK8LAQf/QisA4QEaQAEAAACvCwEF/4IwAOEBGkABAAAAsQsBB//CMADhARpAAQAAALELAQX/whoA4QEcDAEAAACzCwEH/yJDAOEBDCABAAAAtAsBB/8iHgDhAQwgAQAAALULAQf/YhgA4QEWBAEAAAC2CwEH/2IfAOEBIEABAAAArAsBAv+iJADhARwMAQAAALgLAQf/YhsA4QEMIAEAAAC5CwEH/8JKAOEBFgQBAAAAtgsBBf/iFQDhAR5AAQAAAKwLAQL/QiAA4QEMIAEAAAC8CwEH/wIqAOEBGkABAAAArAsBBf9CaQDhAQwgAQAAAL4LAQf/wsAB2QEaQAEAAAC/CwEH/+I6AOEBDCABAAAAwAsBB/+CZADhARYEAQAAAMELAQf/An0A4QEMIAEAAADCCwEH/+J4AOEBDCABAAAAwwsBB//iOgDhAQwgAQAAAMQLAQf/4hUA4QEMIAEAAADFCwEH/8JaAeEBFgQBAAAAxgsBB/8iDwHZAR4gAQAAAMcLAQb/Qh0A4QEiAAEAAADICwEG/8IiAOEBFgQBAAAAyQsBB/8CJgDhAQwgAQAAAMoLAQf/gkoA4QEWBAEAAADLCwEH/6JKAOEBDCABAAAAxwsBBf/CVgDhARYEAQAAAOULAQX/wkoA4QEWBAEAAADlCwEF/2IbAOEBDCABAAAAzwsBB//iFQDhARpAAQAAAMcLAQX/4iEA4QEMIAEAAADRCwEH/2IgAOEBIgABAAAA0gsBBv8iGgDhARYEAQAAANMLAQX/YhsA4QEWBAEAAADUCwEH/2IbAOEBDCABAAAA1QsBB/8CGQDhAQwgAQAAANYLAQf/grcA4QEMIAEAAADXCwEH/2ICAeEBDCABAAAA2AsBB/9iHgDhAQwgAQAAANkLAQf/IqcB4QEMIAEAAADaCwEH/2JUAOEBDCABAAAA2wsBB/8CGQDhAQwgAQAAANwLAQf/AlwA4QEMIAEAAADdCwEH/yJFAOEBFgQBAAAA3gsBB/9CUQDhAQwgAQAAAN8LAQf/IjAA4QEWBAEAAADgCwEH/6InAOEBGkABAAAA4QsBB/9CIADhAQwgAQAAAOILAQf/gjAA4QEaQAEAAADjCwEH/8IaAOEBHAwBAAAA5AsBB/9igQDhARYEAQAAAOULAQcBA1gA5wEYMAEAAADmCxEF/wJYAOEBGDABAAAA5gsBB//CYQDhARYEAQAAAOgLAQf/AhkA4QEMIAEAAADpCwEHAuMvAOEBDCABAAAA6gsBBwOD4QHhAQwgAQAAAOsLAQcD41IB4QEMIAEAAADtCwEFA8PIAOEBDCABAAAA7QsBBwSj4QEKAhkwAQAAAPALIQUFw+EBDwIZMAEAAADwCxEFA8PhARECGTABAAEA8AsBBQbDvwEyAhAQAQAAAEcMIQUH4+EBFwIQEAEAAABHDBEFCKNIAdkBEBABAAAARwwBBQgDawDhAQwgAQAAAPQLAQcIoyAB4QEMIAEAAAD1CwEFCAPEAeEBDCABAAAA9QsBBQhDOwDhAQwgAQAAAPcLAQUIo5AB4QEMIAEAAAD3CwEFCMNWAOEBFgQBAAAA/QsBBQjDSgDhARYEAQAAAP0LAQUI41YA4QEcDAEAAAD7CwEHCGMbAOEBDCABAAAA/AsBBwgDvwDhARYEAQAAAP0LAQcII58A4QEMIAEAAAD+CwEHCGOgAOEBDCABAAAA/wsBBwijFwDhAR4AAQAAAAAMAQYI4xUA4QEaQAEAAAAADAEFCAN2AOEBHgABAAAAAgwBBggDQADhARYEAQAAAAMMAQcII9QA4QEMIAEAAAAEDAEFCEN7AOEBDCABAAAABAwBBQhD7QDhAQwgAQAAAAYMAQcIw6YA4QEMIAEAAAAHDAEHCGNOAOEBDCABAAAACAwBBwgDVgDhAQwgAQAAAAkMAQcII0sA4QEMIAEAAAAKDAEFCKPvAOEBDCABAAAACgwBBQijTQDhAQwgAQAAAAQGAQUIA08A4QEMIAEAAAANDAEHCAMmAOEBHiABAAAADgwBBghDJQDhARYEAQAAAA8MAQcI4x8A4QEMIAEAAAAODAEHCON4AOEBDCABAAAAEQwBBwhjXADhAQwgAQAAABIMAQcIw1YA4QEWBAEAAAAhDAEFCMNKAOEBFgQBAAAAIQwBBQhjGwDhAQwgAQAAABUMAQcI4xUA4QEeAAEAAAAODAECCIMuAeEBHiABAAAAFwwBBghDpgDhARpAAQAAABgMAQcI4xUA4QEeAAEAAAAYDAECCINkAOEBFgQBAAAAGgwBBwjjeADhAQwgAQAAABsMAQcIY0AA4QEMIAEAAAAcDAEHCGMbAOEBDCABAAAAHQwBBwjjFQDhAR5AAQAAABcMAQIIQ2MA4QEMIAEAAAAXDAEFCGO7AOEBFgQBAAAAIAwBBwiDZgDhARYEAQAAACEMAQcIAxgA4QEeAAEAAAAiDAEGCKNYAeEBHgABAAAAIwwBBghDFgDhAQwgAQAAACQMAQcIoyYA4QEgAAEAAAAjDAECCMNWAOEBFgQBAAAAKwwBBQjDSgDhARYEAQAAACsMAQUI41YA4QEcDAEAAAAoDAEHCGMbAOEBDCABAAAAKQwBBwjjFQDhARpAAQAAACMMAQUIY6IA4QEWBAEAAAArDAEHCGNJAOEBDCABAAAALAwBBwhjEQHhAQwgAQAAAC0MAQcIo1IA4QEMIAEAAAAuDAEHCGNLAOEBDCABAAAALwwBBwjDGQDhARYEAQAAADAMAQcI41UA4QEeQAEAAAAxDAEGCMMZAOEBFgQBAAAAMgwBBwijoADhASIAAQAAADMMAQYIQ1gA4QEgQAEAAAAxDAECCIMlAOEBDCABAAAANQwBBwiDTADhAQwgAQAAADYMAQcIw5oA4QEaQAEAAAAxDAEFCIM2AOEBIgABAAAAOAwBBghDHQDhARYEAQAAADkMAQcII/kA4QEMIAEAAAA6DAEHCMNWAOEBFgQBAAAAQwwBBQjDSgDhARYEAQAAAEMMAQUI41YA4QEcDAEAAAA9DAEHCGMbAOEBDCABAAAAPgwBBwjjFQDhAR5AAQAAADEMAQIIY5cB4QEMIAEAAABADAEHCEN7AOEBDCABAAAAQAwBBQhjGADhAQwgAQAAAEIMAQcI484A4QEWBAEAAABDDAEHCMNcAOEBDCABAAAARAwBBwajAgDeARAQAQAAAEcMIQUHwwIA5wEQEAFAAQBHDBEFCMMCAOEBEBABAIABRwwBBQYDVQA0AhAQAQAAAHgTIg0HI1UAiAIQEAEAAAAAChINCCNVADwCEBABAAAAiAACDQYD4gHeARAQAQAAAIATIg0HI+IB5wEQEAEAAAAIChINCCPiAeEBEBABAAAAkAACDQZjVQBAAhAQAQAAAOAYIg0Hg1UAmAIQEAEAAABoDxINCINVAEgCEBABAAAA8AUCDQjDzADhAQwgAQAAAFEMAQcII2QA4QEMIAEAAABSDAEHCGNOAOEBLgABAAAAUwwBBgjjeADhARYEAQAAAFMMAQUIQwkB4QEcDAEAAABVDAEHCGMbAOEBDCABAAAAVgwBBwhD4gHhAQwgAQAAAFcMAQcIA3wA4QEMIAEAAABYDAEHCMPRAOEBLgABAAAAWQwBBgjDQgDhAQwgAQAAAFoMAQcIoycA4QEaQAEAAABbDAEHCOMhAOEBDCABAAAAXAwBBwhjIADhARYEAQAAAF0MAQcIIxoA4QEWBAEAAABeDAEHCIMwAOEBGkABAAAAXwwBBwjDGQDhAR4AAQAAAGAMAQYI4xUA4QEeAAEAAABgDAECCAMlAOEBFgQBAAAAYgwBBwjDGgDhARwMAQAAAGMMAQcIA0wA4QEeIAEAAABkDAEGCEMxAOEBFgQBAAAAZQwBBwhDOgDhARYEAQAAAGYMAQcIwygA4QEcDAEAAABnDAEHCGMbAOEBDCABAAAAaAwBBwijigDhARYEAQAAAGkMAQcIwxoA4QEcDAEAAABqDAEHCGMbAOEBDCABAAAAawwBBwhjGwDhARYEAQAAAGwMAQcIoyoA4QEcDAEAAABtDAEHCGMbAOEBDCABAAAAbgwBBwjjFQDhARpAAQAAAFkMAQUIA4kA4QEMIAEAAABwDAEHCOOiAOEBDCABAAAAcQwBBQhDMQDhARpAAQAAAFkMAQUIQ0oA4QEMIAEAAABzDAEHCOMVAOEBGkABAAAAWQwBBQgDxAHhAQwgAQAAAHEMAQUII9IA4QEMIAEAAAB2DAEHCANlAeEBHiABAAAAdwwBBggDTwDhAQwgAQAAAHgMAQcII0kA4QEeAAEAAABZDAEECON1AOEBDCABAAAAegwBBwgjSwDhAQwgAQAAAHsMAQcGA1UANAIQEAEAAACIEyINByNVADgCEBABAAAAEAoSDQgjVQA8AhAQAQAAAJgAAg0Ig6YA4QEMIAEAAAB/DAEHCKPeAOEBDCABAAAAgAwBBwjDogDhARpAAQAAAIEMAQcIw1YA4QEMIAEAAACCDAEHCOMVAOEBGkABAAAAgQwBBQgjkQDhARpAAQAAAIEMAQUIo30A4QEeAAEAAACFDAEGCGPAAOEBDCABAAAAhgwBBwbj4gDeARAQAQAAAJATIg0HYx4A5wEQEAEAAAAYChINCGMeAOEBEBABAAAAoAACDQgDhADhAQwgAQAAAIoMAQcIA5cA4QEMIAEAAACLDAEHCKOgAOEBDCABAAAAjAwBBwZjVQBAAhAQAQAAAOgYIg0Hg1UARAIQEAEAAABwDxINCINVAEgCEBABAAAA+AUCDQjjTwDhAR4gAQAAAJAMAQYIY1YA4QEgBAEAAACQDAECCGMbAOEBFgQBAAAAkgwBBwijKgDhARwMAQAAAJMMAQcIYxsA4QEMIAEAAACUDAEHCMNWAOEBFgQBAAAAmAwBBQjDSgDhARYEAQAAAJgMAQUIYxsA4QEMIAEAAACXDAEHCKMkAOEBFgQBAAAAmAwBBwiDfwDhAQwgAQAAAJkMAQcI438A4QEeIAEAAACQDAEECOMVAOEBLkABAAAAkAwBAggDIwDhAQwgAQAAAJwMAQcII0wA4QEeIAEAAACdDAEGCCNRAOEBGkABAAAAngwBBQhjVgDhARpAAQAAAJ4MAQUIg38A4QEMIAEAAACgDAEHCOMVAOEBGkABAAAAngwBBQhjHwDhASBAAQAAAJ0MAQIIIyYA4QEMIAEAAACjDAEHCAMqAOEBDCABAAAAowwBBQjjFQDhAQwgAQAAAKUMAQcIYyoA4QEMIAEAAACmDAEHCIMfAOEBDCABAAAApwwBBwgDIQDhAR4gAQAAAJ0MAQQII0wA4QEMIAEAAACpDAEHCAMiAOEBDCABAAAAqgwBBwhjwwHhAQwgAQAAAKsMAQcI4xUA4QEuQAEAAACdDAECCEMWAOEBHiABAAAArQwBBghjqQDhAQwgAQAAAK0MAQUIw1gA4QEMIAEAAACvDAEHCINMAOEBDCABAAAAsAwBBwjDFgDhATAEAQAAALEMAQYII5AA4QEaQAEAAACyDAEHCKMYAOEBFgQBAAAAswwBBwhjKgDhAQwgAQAAALQMAQcI4xUA4QEaQAEAAACyDAEFCMMcAOEBGkABAAAAsgwBBQiDfwDhASIEAQAAALEMAQIIw0oA4QEWBAEAAACxDAEFCKMHAeEBDCABAAAAuQwBBwhDbwDhARwMAQAAALoMAQcIYxsA4QEMIAEAAAC7DAEHCMNMAOEBGkABAAAAvAwBBwjjHgDhAQwgAQAAAL0MAQcIA/MA4QEMIAEAAAC+DAEHCOMeAOEBGkABAAAAvwwBBwhjHwDhASBAAQAAAL8MAQII4xUA4QEuQAEAAAC/DAECCANdAOEBFgQBAAAAwgwBBwgDKgDhARogAQAAAL8MAQUI4xYA4QEeQAEAAADEDAEGCGMpAOEBIEABAAAAxAwBAggD5wDhARYEAQAAAMYMAQcIgykA4QEMIAEAAADHDAEHCIMWAOEBGkABAAAAxAwBBQhDHQDhARYEAQAAAMkMAQcI4xUA4QEeAAEAAADEDAECCANgAOEBDCABAAAAywwBBwhjoADhAQwgAQAAAMwMAQcIQ5sA4QEMIAEAAADNDAEHCKPcAeEBDCABAAAAzgwBBwiDmwDhAQwgAQAAAM8MAQcIo+gA4QEMIAEAAADQDAEHCGNLAOEBDCABAAAA0QwBBwhj4gHZARAQAQCAAWsOAUUGg+IBMgIULAEAgALVDCEFB6PiARcCFCwBQIEC1QwRBQjD4gHZARQsAQCAAtUMARUGQ10B7AEULAEAAADAFSINB2NdAfABFCwBAAAASAwSDQhjXQH0ARQsAQAAANACAg0GYwMAEAMULAEAAADIFSINB4MDABQDFCwBAAAAUAwSDQiDAwAYAxQsAQAAANgCAg0Gg10B7AEULAEAAACwFiINB6NdAfABFCwBAAAAOA0SDQijXQH0ARQsAQAAAMADAg0II8IA4QEMIAEAAADfDAEHCIM9AOEBHgABAAAA4AwBBghjHwDhASBAAQAAAOAMAQIIgx8A4QEMIAEAAADiDAEHCOMVAOEBHgABAAAA4AwBAggDZwDhAR4AAQAAAOAMAQYI4x4A4QEMIAEAAADlDAEHCKMjAOEBDCABAAAA5gwBBwjDIwDhAQwgAQAAAOYMAQUIo04A4QEMIAEAAADoDAEHCAMpAOEBGkABAAAA6QwBBwhjGQDhARYEAQAAAOoMAQcIwyMA4QEaQAEAAADpDAEFCOMVAOEBHgABAAAA6QwBAgiDFgDhAQwgAQAAAN8MAQUIw3MA4QEMIAEAAADuDAEHCGOkAOEBDCABAAAA7wwBBwhjGQDhAS5AAQAAAPAMAQYIIyYA4QEMIAEAAADxDAEHCOMVAOEBHkABAAAA8AwBAgjDsADhAR4AAQAAAPAMAQQIY6QA4QEMIAEAAAD0DAEHCCNzAOEBIgABAAAA9QwBBgjjjwDhAQwgAQAAAPYMAQcIIy8A4QEMIAEAAAD3DAEHCOPVAOEBDCABAAAA+AwBBwiDOQDhAQwgAQAAAPkMAQcIIyYA4QEMIAEAAAD6DAEHCKMjAOEBFgQBAAAA+wwBBwhjaQDhARwMAQAAAPwMAQcIYxsA4QEMIAEAAAD9DAEHCCNXAOEBFgQBAAAA/gwBBwjDQgDhAQwgAQAAAP8MAQcIw0AB4QEMIAEAAAAADQEHCKN9AOEBDCABAAAAAQ0BBwgjQADhAQwgAQAAAAINAQcI4xUA4QEMIAEAAAADDQEHCMNYAOEBDCABAAAABA0BBwiDnwDhAQwgAQAAAAUNAQcII2sA4QFKBAEAAAAGDQEGCOMVAOEBGkABAAAABg0BBQgDKgDhARpAAQAAAAYNAQUIo0gB4QEMIAEAAAAJDQEHCCOyAOEBHiABAAAACg0BBgjjFQDhAR4AAQAAAAoNAQIII1cA4QEWBAEAAAAMDQEHCGORAOEBDCABAAAACg0BBQjj4gHhAQwgAQAAAA4NAQcIY2kB4QEMIAEAAAAPDQEHCOOjAOEBDCABAAAAEA0BBwijygDhAQwgAQAAABENAQcIA+MB4QEMIAEAAAAPDQFHCGNYAOEBDCABAAAAEw0BBwijygDhAQwgAQAAABQNAQcIo90A4QEMIAEAAAAVDQEHCONVAOEBDCABAAAAFg0BBwijbwDhAQwgAQAAABcNAQcI48kA4QEMIAEAAAAYDQEHCKOKAOEBDCABAAAAGQ0BBwgjVwDhARYEAQAAABoNAQcII+MB4QEWBAEAAAAbDQEHCONpAOEBHiABAAAAHA0BBgjDMwHhAR4AAQAAAB0NAQYIoxcA4QEaQAEAAAAeDQEHCAOGAOEBGkABAAAAHQ0BBQjjFQDhARpAAQAAAB0NAQUIQxYA4QEMIAEAAAAhDQEHCANAAOEBIEABAAAAHA0BAghDKADhAQwgAQAAACMNAQcIYzoA4QEMIAEAAAAkDQEHCKMjAOEBDCABAAAAJQ0BBwjDIwDhAQwgAQAAACUNAQUI43gA4QEMIAEAAAAnDQEHCOMVAOEBHkABAAAAHA0BAggDXQDhARYEAQAAACkNAQcI44EA4QEMIAEAAAAcDQEFCOMeAOEBHiABAAAAKw0BBggjtQDhAQwgAQAAACwNAQcIYx8A4QEgBAEAAAArDQECCOMVAOEBGkABAAAAKw0BBQgDKgDhAQwgAQAAACsNAQUIQykA4QEaQAEAAAAwDQEHCGMpAOEBGkABAAAAMA0BBQiDKQDhAQwgAQAAADINAQcIgxYA4QEeIAEAAAAYDQEACOMVAOEBGkABAAAAMA0BBQhD4wHhARYEAQAAADUNAQcII6YA4QEMIAEAAAA2DQEHCGN7AOEBDCABAAAANw0BBwijTQDhAQwgAQAAADcNAQUIgwcB4QEeAAEAAAA5DQEGCEMlAOEBGkABAAAAOQ0BBQhjGwDhAQwgAQAAADsNAQcI4xUA4QEaQAEAAAA5DQEFCAMyAOEBDCABAAAAOQ0BBQiDRgDhAQwgAQAAAD4NAQcIgx4A4QEMIAEAAAA/DQEHCIMHAeEBDCABAAAAQA0BBwhDowDhAQwgAQAAAEENAQcIA08A4QEMIAEAAABCDQEHCMOmAOEBDCABAAAAQw0BBwbDYAHeARQsAQAAAEYNIQUHwyMA+wEULAEAAABGDREFCMMjAOEBFCwBAAAARg0BBQjjaADhAQwgAQAAAEcNAQcIQ+cA4QEaQAEAAABIDQEHBsNhAfwBFCwBAAAAOBoiDQfjYQEAAhQsAQAAAMAQEg0I42EBBAIULAEAAABIBwINBgNiARwDFCwBAAAAQBoiDQcjYgEgAxQsAQAAAMgQEg0II2IBJAMULAEAAABQBwINBkNgAfwBFCwBAAAA6BoiDQdjYAEAAhQsAQAAAHAREg0IY2ABBAIULAEAAAD4BwINCGPjAdkBDCABAAAAUg0BBwjjJQDhAQwgAQAAAFMNAQcII3wB4QEMIAEAAABUDQEHCCPnAOEBDCABAAAAVQ0BBwgjjwDhAQwgAQAAAFYNAQcIgzEA4QEaQAEAAAAyDwEFCKNLAOEBHiABAAAAWA0BBghDJQDhASBAAQAAAFgNAQIIIyYA4QEMIAEAAABaDQEHCOMVAOEBHkABAAAAWA0BAgiDswDhAR4gAQAAAFgNAQQIw1YA4QEWBAEAAAAyDwEFCMNKAOEBFgQBAAAAMg8BBQhDRQDhAR4gAQAAAF8NAQYI4xkA4QEaQAEAAABfDQEFCOMeAOEBDCABAAAAYQ0BBwjDVgDhARYEAQAAAGoNAQUIw0oA4QEWBAEAAABqDQEFCONWAOEBHAwBAAAAZA0BBwhjGwDhAQwgAQAAAGUNAQcI4xUA4QEuQAEAAABfDQECCGMbAOEBFgQBAAAAZw0BBwhjGwDhAQwgAQAAAGgNAQcIA1cA4QEeIAEAAABfDQEECCMJAeEBFgQBAAAAag0BBwgjXgDhAQwgAQAAAGsNAQcIIxwA4QEMIAEAAABsDQEHCONVAOEBDCABAAAAbQ0BBwjDuwHhARpAAQAAAG4NAQUIYx8A4QEaQAEAAABuDQEFCOMVAOEBGkABAAAAbg0BBQgDpgHhAQwgAQAAAHENAQcIg+MB4QEMIAEAAAByDQEHCGN6AOEBHgABAAAAcw0BBgjjnADhAQwgAQAAAHQNAQcIY6sB4QEMIAEAAAB1DQEHCOMVAOEBHgABAAAAcw0BAgiDMQDhARpAAQAAAHgNAQUIwxoA4QEeAAEAAAB4DQEGCMNiAeEBHgABAAAAeQ0BBghDMQDhARpAAQAAAHkNAQUIQ0oA4QEeAAEAAAB7DQEGCGMfAOEBGkABAAAAew0BBQgDRgDhARYEAQAAAH0NAQcIgzEA4QEaQAEAAACADQEFCOMVAOEBGkABAAAAeQ0BBQgj0gDhAR4AAQAAAIANAQYI4xUA4QEaQAEAAACADQEFCANFAOEBHgABAAAAgg0BBggjGADhAQwgAQAAAIMNAQcIwxoB4QEMIAEAAACEDQEHCIOmAOEBDCABAAAAhQ0BBwhjJADhAR5AAQAAAIYNAQYIYyoA4QEMIAEAAACHDQEHCCM3AOEBDCABAAAAhg0BBQiDdADhAR4AAQAAAIkNAQYIQygA4QEMIAEAAACKDQEHCANYAOEBDCABAAAAiQ0BBwjjFQDhAQwgAQAAAIwNAQcIYzEA4QEWBAEAAACNDQEHCMNWAOEBFgQBAAAAng0BBQjDSgDhARYEAQAAAJ4NAQUIYxsA4QEMIAEAAACQDQEHCOMVAOEBLkABAAAAgg0BAggjwgDhAQwgAQAAAJINAQcIgxYA4QEMIAEAAACSDQEFCKMYAOEBGkABAAAAgg0BBQhjlQDhAQwgAQAAAJUNAQcI4xUA4QEaQAEAAACCDQEFCGPAAOEBHgABAAAAlw0BBggDQAHhAQwgAQAAAJgNAQcI4x4A4QEMIAEAAACZDQEHCINQAOEBFgQBAAAAmg0BBwjjIQDhAQwgAQAAAJsNAQcIYyAA4QEWBAEAAACcDQEHCCMaAOEBFgQBAAAAnQ0BBwhDwQDhARYEAQAAAJ4NAQcIIy0A4QEeIAEAAACfDQEGCAMjAOEBFgQBAAAAoA0BBwgjJgDhAQwgAQAAAKENAQcI4xUA4QEMIAEAAACiDQEHCCMnAOEBDCABAAAAow0BBwiDFwDhAQwgAQAAAKQNAQcIwxgA4QEMIAEAAAClDQEHCAMwAOEBDCABAAAApQ0BBQhjKgDhAQwgAQAAAKcNAQcIY1YA4QEaQAEAAACfDQEFCIN/AOEBDCABAAAAqQ0BBwjjFQDhAR5AAQAAAJ8NAQII42sA4QEeIAEAAACfDQEECONPAOEBFgQBAAAArA0BBwjDHwDhAQwgAQAAAK0NAQcIo1cA4QEMIAEAAACuDQEHCEM5AOEBDCABAAAArw0BBwhDTgDhAR4AAQAAALANAQYIA0sA4QEMIAEAAACxDQEHCAMjAOEBDCABAAAAsg0BBwhjOgDhAQwgAQAAALMNAQcIw/IA4QEaQAEAAAC0DQEHCINMAOEBDCABAAAAtQ0BBwjjFQDhAR5AAQAAALQNAQIIY6kA4QEaQAEAAAC0DQEFCOO8AOEBGkABAAAAuA0BBwjjFQDhAQwgAQAAALkNAQcIg1cA4QEeIAEAAAC6DQEGCGMbAOEBDCABAAAAuw0BBwhjOwDhAQwgAQAAALwNAQcIw1YA4QEWBAEAAADGDQEFCMNKAOEBFgQBAAAAxg0BBQjjFQDhAR4AAQAAALoNAQIIg0wA4QEMIAEAAADADQEHCMMkAOEBDCABAAAAug0BBQjjNgDhAQwgAQAAAMINAQcIY1EA4QEMIAEAAADDDQEHCGMgAOEBDCABAAAAxA0BBwjjHgDhAQwgAQAAAMUNAQcIg3sA4QEWBAEAAADGDQEHCKNIAeEBDCABAAAAxw0BBwgDgADhAR4AAQAAAMgNAQYIYzcA4QEMIAEAAADJDQEHCCNAAOEBDCABAAAAyg0BBwhjGwDhARYEAQAAAMsNAQcIYyAA4QEMIAEAAADMDQEHCGPwAOEBDCABAAAAzQ0BBwjjGQDhARpAAQAAAMgNAQUI4x4A4QEMIAEAAADPDQEHCKOQAeEBDCABAAAAzQ0BBwgjRgDhAQwgAQAAANENAQcI4xUA4QEeAAEAAADIDQECCIOsAOEBFgQBAAAA0w0BBwjDjADhAQwgAQAAANQNAQcIg/MA4QEMIAEAAADVDQEHCIMBAeEBDCABAAAA1g0BBwjjegHhAQwgAQAAANcNAQcIg1IA4QEMIAEAAADYDQEHCIMpAOEBHgABAAAA2Q0BBgjjFQDhAS4AAQAAANkNAQIIAyoA4QEeIAEAAADZDQEECANGAOEBFgQBAAAA3A0BBwjj+wDhAQwgAQAAAN0NAQcII10A4QEeAAEAAADeDQEGCIN/AOEBDCABAAAA3w0BBwiDuADhAQwgAQAAAOANAQcIA08A4QEMIAEAAADhDQEHCOMeAOEBDCABAAAA4g0BBwgj3gHhAQwgAQAAAOMNAQcIgz0A4QEMIAEAAADkDQEHCCOfAeEBDCABAAAA5Q0BBwiDYwHhAQwgAQAAAOYNAQcIQ3sA4QEMIAEAAADmDQEFCMM0AOEBGkABAAAA6A0BBwhDygDhAR4AAQAAAOkNAQYI4xUA4QEaQAEAAADpDQEFCKNvAOEBDCABAAAA6w0BBwijewDhAQwgAQAAAOwNAQcIg94B4QEaQAEAAADtDQEHCIMfAOEBDCABAAAA7g0BBwiDfQDhAR4AAQAAAO8NAQYI4xUA4QEaQAEAAADvDQEFCEM0AOEBFgQBAAAA8Q0BBwijTADhAQwgAQAAAPINAQcIA08A4QEeIAEAAADzDQEGCMMZAOEBFgQBAAAA9A0BBwgDhgDhASBAAQAAAPMNAQIIg0wA4QEMIAEAAAD2DQEHCOMVAOEBFgQBAAAA9w0BBwhjMQDhARwMAQAAAPgNAQcII2UA4QEMIAEAAADzDQEFCENkAeEBFgQBAAAA+g0BBwijsADhARYEAQAAAPsNAQcIw1YA4QEWBAEAAAAADgEFCMNKAOEBFgQBAAAAAA4BBQjjVgDhARwMAQAAAP4NAQcIYxsA4QEMIAEAAAD/DQEHCKO5AOEBIgABAAAAAA4BBgijhADhAR4gAQAAAAEOAQYIY3oA4QEMIAEAAAACDgEHCKN5AOEBDCABAAAAAw4BBwijFwDhAQwgAQAAAAQOAQcIQ6YA4QEMIAEAAAAFDgEHCAOlAOEBFgQBAAAABg4BBwijigDhAQwgAQAAAAcOAQcIwzkA4QEeAAEAAAAIDgEGCKMYAOEBGkABAAAACA4BBQjjFQDhARpAAQAAAAgOAQUIwzMA4QEMIAEAAAALDgEHCGMbAOEBFgQBAAAADA4BBwiDTADhAQwgAQAAAA0OAQcI4xUA4QEMQAEAAAAODgEHCEN7AOEBDCABAAAAAQ4BBwhjJADhAQwgAQAAABAOAQcI4xUA4QEMIAEAAAARDgEHCINSAOEBHgABAAAAEg4BBgijSQDhAQwgAQAAABMOAQcIY6AA4QEMIAEAAAATDgEFCCPJAeEBDCABAAAAFQ4BBwijVgDhAQwgAQAAABYOAQcIgxcA4QEMIAEAAAAXDgEHCKPjAeEBDCABAAAAGA4BBwgDigDhARYEAQAAABkOAQcI46QA4QEaQAEAAAAaDgEHCEMUAOEBFgQBAAAAAA4BBQhjXADhAQwgAQAAABwOAQcI4xUA4QEaQAEAAAAaDgEFCKN7AOEBHkABAAAAMQwBAgijeQHhARpAAQAAABoOAQUIw0wA4QEeQAEAAAAgDgEGCOMeAOEBDCABAAAAIQ4BBwjjFQDhAR5AAQAAACAOAQIII6cA4QEMIAEAAAAiDgEFCIMlAOEBDCABAAAAJA4BBwgjYADhAR4gAQAAACAOAQQIo4UA4QEeIAEAAAAmDgEGCAMlAOEBDCABAAAAJw4BBwhjOwDhAQwgAQAAACgOAQcIg5MA4QEMIAEAAAApDgEHCGOgAOEBDCABAAAAKQ4BBQjjFQDhARpAAQAAACYOAQUIg38A4QEMIAEAAAAsDgEHCENFAOEBGkABAAAALQ4BBwjjHgDhAQwgAQAAAC4OAQcI4xUA4QEMIAEAAAAvDgEHCGNWAOEBGkABAAAAJg4BBQiDfwDhAQwgAQAAADEOAQcIAyoA4QEMIAEAAAAxDgEFCOMVAOEBHiABAAAAJg4BAggDeADhAR4gAQAAACYOAQQIA0AA4QEWBAEAAAA1DgEHCINMAOEBDCABAAAANg4BBwiDLgHhAQwgAQAAADcOAQcIwzkA4QEWBAEAAAA4DgEHCINEAOEBHkABAAAAOQ4BBgijeQDhAQwgAQAAADoOAQcIYyQA4QEMIAEAAAA7DgEHCAMhAOEBDCABAAAAOQ4BBQgDIwDhARYEAQAAAD0OAQcI4xUA4QEeQAEAAAA5DgECCMM5AOEBIAABAAAA4AwBAgiDJADhAUgEAQAAAEAOAQYI4zoA4QEMIAEAAABBDgEHCOMmAOEBDCABAAAAQQ4BBQgjQADhAQwgAQAAAEMOAQcI41UA4QEMIAEAAABEDgEHCOMVAOEBDCABAAAARQ4BBwgjpwDhAQwgAQAAAEUOAQUIIwIB4QEMIAEAAABHDgEHCOMZAOEBGkABAAAAQA4BBQiDWADhARpAAQAAAEkOAQcIoxgA4QEgQAEAAABJDgECCGMqAOEBDCABAAAASw4BBwjjFQDhAR4gAQAAAEkOAQIIwxwA4QEaQAEAAABJDgEFCOMeAOEBFgQBAAAAQA4BBQjDSgDhARYEAQAAAEAOAQUIwwIA4QEMIAEAAABQDgEHCONCAOEBDCABAAAAUQ4BBwgDbgDhASIgAQAAAFIOAQYIwzkA4QEMIAEAAABTDgEHCGNGAOEBDCABAAAAVA4BBwjjFQDhARpAAQAAAEAOAQUIoyMA4QEWBAEAAABWDgEHCGMgAOEBHgABAAAAVw4BBgjjFQDhARpAAQAAAFcOAQUIoz0A4QEaQAEAAABXDgEFCMMgAOEBHAwBAAAAWg4BBwhjGwDhAQwgAQAAAFsOAQcIwyQA4QEMIAEAAABADgEHCOMZAOEBFgQBAAAAXQ4BBwhjGwDhAQwgAQAAAF4OAQcIo5QA4QEMIAEAAABfDgEHCIPiAOEBDCABAAAAYA4BBwhDHQDhAQwgAQAAAGEOAQcIQ8IA4QEuIAEAAAAgDgECCCMvAOEBDCABAAAAYw4BBwijVgDhAR4AAQAAAGQOAQYIoxgA4QEaQAEAAABkDgEFCOMVAOEBGkABAAAAZA4BBQjjQAHhAQwgAQAAAGQOAQUII2AA4QEMIAEAAABiDgEFBkMGAd4BEBABAAAAaQ4hBQejlgDnARAQAUABAGsOEQUIo5YA4QEQEAEAgAFrDgEVBoMEAHwCEBABAAAACBUiDQejBACAAhAQAQAAAJALEg0IowQAhAIQEAEAAAAYAgINCCMmAOEBHiABAAAAbw4BBghjHwDhARYEAQAAAHAOAQcI4xUA4QEaQAEAAABvDgEFCAMqAOEBHiABAAAAbw4BBAYDVQA0AhAQAQAAAJgTIg0HI1UAiAIQEAEAAAAgChINCCNVADwCEBABAAAAqAACDQaDBACMAhAQAQAAAJQYIw0HowQAkAIQEAEAAAAcDxMNCKMEAJQCEBABAAAApAUDDQZjBgHeARAQAQAAAKATIg0HgwYB5wEQEAEAAAAoChINCIMGAeEBEBABAAAAsAACDQYDowHeARAQAQAAAH4OIQUHI6MB5wEQEAEAAAB+DhEFCCOjAeEBEBABAAAAfg4BBQZjVQBAAhAQAQAAAPAYIg0Hg1UAmAIQEAEAAAB4DxINCINVAEgCEBABAAAAAAYCDQajBgGcAhAQAQAAAFwcIw0HwwYBoAIQEAEAAADkEhMNCMMGAaQCEBABAAAAbAkDDQbjBgHeARAQAQAAABAVIg0HAwcB5wEQEAEAAACYCxINCAMHAeEBEBABAAAAIAICDQajBgGoAhAQAQAAALAZIg0HwwYBrAIQEAEAAAA4EBINCMMGAbACEBABAAAAwAYCDQiDJQDhAR5AAQAAAIsOAQYI4xkA4QEgQAEAAACLDgECCOMeAOEBDCABAAAAjQ4BBwjjFQDhAR5AAQAAAIsOAQII48wA4QEaQAEAAACLDgEFCKMlAOEBHkABAAAAkA4BBghjKQDhARpAAQAAAJAOAQUII7gA4QEeIAEAAACSDgEGCAMjAOEBDCABAAAAkw4BBwgDQADhARpAAQAAAJIOAQUIQygA4QEMIAEAAACVDgEHCKOKAOEBDCABAAAAlg4BBwgjQADhAQwgAQAAAJcOAQcI4xUA4QEaQAEAAACSDgEFCANAAOEBGkABAAAAlA4BRQhDKADhAQwgAQAAAJoOAQcI4xUA4QEaQAEAAACYDgFFCEN0AOEBHiABAAAAkg4BBAiDKQDhAQwgAQAAAJ0OAQcIgxYA4QEaQAEAAACQDgEFCOMVAOEBGkABAAAAkA4BBQjDfgDhAR4gAQAAAKAOARYIo0wA4QEMIAEAAAChDgEHCCMZAOEBDCABAAAAog4BBwijoADhAQwgAQAAAKMOAQcIg2QA4QEaQAEAAACgDgEFCON4AOEBHkABAAAApQ4BBggjQADhAQwgAQAAAKYOAQcI4xUA4QEaQAEAAAClDgEFCAMqAOEBHiABAAAApQ4BBAgDRgDhARYEAQAAAKkOAQcIo7wA4QEMIAEAAACqDgEHCMNWAOEBFgQBAAAAug4BBQjDSgDhARYEAQAAALoOAQUI41YA4QEcDAEAAACtDgEHCGMbAOEBDCABAAAArg4BBwjjFQDhAR5AAQAAAKAOAQII4xUA4QEMIAEAAACwDgEHCMNCAOEBDCABAAAAsQ4BBwgjLQDhAQwgAQAAALIOAQcIo6AA4QEaQAEAAACgDgEFCONOAOEBDCABAAAAtA4BBwjDMwDhAQwgAQAAALUOAQcIIyIA4QEMIAEAAAC2DgEHCENjAOEBHkABAAAAoA4BBAiDfwDhAQwgAQAAALgOAQcIw3UA4QEMIAEAAAC5DgEHCGO7AOEBFgQBAAAAug4BBwijfQDhARpAAQAAAN0OAQUIY30A4QEMIAEAAAC8DgEHCGMfAOEBHgABAAAAvQ4BBghDJQDhASAEAQAAAL0OAQIIIyYA4QEMIAEAAAC/DgEHCOMVAOEBGkABAAAAvQ4BBQhDVgDhAQwgAQAAAMEOAQcIg48B4QEWBAEAAADCDgEHCCMmAOEBFgQBAAAAwg4BBQjDKADhARwMAQAAAMQOAQcIYxsA4QEMIAEAAADFDgEHCKMjAOEBFgQBAAAAxg4BBwhjaQDhARwMAQAAAMcOAQcIYxsA4QEMIAEAAADIDgEHCMMxAOEBDCABAAAAyg4BBQjDKgDhAQwgAQAAAMoOAQcGI0MBTgIZMAEAAADNDiEFB0NDAVMCGTABIAEAzQ4RBQhDQwEZAhkwAQABAM0OAQUIw+MB4QEeAAEAAADODgEGCAOGAOEBIAABAAAAzg4BAgjjFQDhAR4AAQAAAM4OAQIIQ0UA4QEMIAEAAADRDgEHCCNXAOEBDCABAAAA0g4BBwhjegDhASAAAQAAANMOAQYI4xUA4QEMIAEAAADUDgEHCGMbAOEBDCABAAAA1Q4BBwjDGgDhARwMAQAAANYOAQcI48AA4QEeAAEAAADXDgEGCIN/AOEBDCABAAAA2A4BBwijIwDhAQwgAQAAANkOAQcIo9YA4QEWBAEAAADaDgEHCGMkAOEBHgABAAAA2w4BBggjNwDhAQwgAQAAANsOAQUI47cA4QEeQAEAAADdDgEGCMMZAOEBFgQBAAAA3g4BBwjjOgDhAQwgAQAAAN8OAQcI4xUA4QEeQAEAAADdDgECCIOnAOEBGkABAAAA3Q4BBQgDygDhARpAAQAAAOIOAQcI4+MA4QEaQAEAAADiDgEFCIMhAOEBGkABAAAA5A4BBwgjuADhARpAAQAAAOUOAQcIA0AA4QEgQAEAAADlDgECCOMVAOEBGkABAAAA5Q4BBQgDQADhASAAAQAAAOYOAUII4xUA4QEaQAEAAADnDgFFCEN0AOEBGkABAAAA5Q4BBQiDFgDhARpAAQAAAOQOAQUI4xUA4QEaQAEAAADkDgEFCCNmAOEBHgABAAAA7Q4BBghDJQDhARpAAQAAAO0OAQUI4xUA4QEaQAEAAADtDgEFCGOCAOEBGkABAAAA7Q4BBQjj8ADhAQwgAQAAAPEOAQcIA0YA4QEMIAEAAADyDgEHCMNWAOEBFgQBAAAA9Q4BBQjDSgDhARYEAQAAAPUOAQUIA78A4QEWBAEAAAD1DgEHCENRAOEBDCABAAAA9g4BBwhj+QDhAQwgAQAAAPEOAQUIA3sA4QEeQAEAAAD4DgEGCKMmAOEBGkABAAAA+A4BBQjjFQDhARpAAQAAAPgOAQUI49QA4QEaQAEAAAD4DgEFCAPXAOEBGkABAAAA3Q4BBQhDWADhARYEAQAAAP0OAQcIQ1cA4QEMIAEAAAD+DgEHCOPeAeEBDCABAAAA/w4BBwjjqwDhAQwgAQAAAAAPAQcIA98B4QEMIAEAAAABDwEHCIMmAeEBDCABAAAAAg8BBwgjaAHhAQwgAQAAAAMPAQcIo28A4QEeAAEAAAAEDwEGCOMVAOEBGkABAAAABA8BBQgjZQDhATQcAQAAAAYPAQcIIyYA4QEeAAEAAAAHDwEGCOMVAOEBIAABAAAABw8BAghjMQDhARwMAQAAAAkPAQcIA0YA4QEWBAEAAAAKDwEHCAOiAOEBHiABAAAACw8BBggDIwDhAQwgAQAAAAwPAQcIA0AA4QEaQAEAAAALDwEFCEMoAOEBDCABAAAADg8BBwgDWADhARpAAQAAAAsPAQUI4xUA4QEeAAEAAAALDwECCAOqAeEBDCABAAAAEQ8BBwjj4wHhARYEAQAAABIPAQcIo6UB4QEMIAEAAAATDwEFCCPfAeEBDCABAAAAEw8BBQgjlQHhAQwgAQAAABUPAQcIw2gB4QEaQAEAAAAWDwEHCKMYAOEBGkABAAAAFg8BBQjjFQDhAR5AAQAAABYPAQII40AB4QEaQAEAAAAWDwEFCGMyAOEBHgABAAAAGg8BBgjjHgDhAQwgAQAAABsPAQcI4xUA4QEaQAEAAAAaDwEFCAMwAOEBHgABAAAAGg8BBAgDVgDhAR4AAQAAAB4PAQYIwyMA4QEeAAEAAAAeDwEECOMVAOEBGkABAAAAHg8BBQgDaQHhASBAAQAAACEPAQYIo6AA4QEMIAEAAAAiDwEHCCO6AOEBDCABAAAAIw8BBwiDJQDhAQwgAQAAACQPAQcI48wA4QEaQAEAAAAhDwEFCOMeAOEBHgABAAAAJg8BBggjsADhAQwgAQAAACcPAQcIYx8A4QEgBAEAAAAmDwECCOMVAOEBGkABAAAAJg8BBQgDKgDhAR4AAQAAACYPAQQI4xUA4QEeQAEAAAAhDwECCCOsAOEBHiABAAAALA8BBggDTwDhAR4AAQAAAC0PAQYIA0AA4QEaQAEAAAAsDwEFCANYAOEBHiABAAAALA8BBAjjFQDhARpAAQAAACwPAQUIQ98B4QEMIAEAAAAxDwEHCEOPANkBLgQBAAAAMg8BBggjYgDhARYEAQAAADIPAQUIw0oA4QEWBAEAAAAyDwEFCOMVAOEBGkABAAAAMg8BBQijPgDhARwMAQAAADYPAQcIYxsA4QEMIAEAAAA3DwEHCOMeAOEBDCABAAAAOA8BBwkD5AHVAQwgAQAAADkPAQUJoxoA4QEMIAEAAAA6DwEHCUMaAOEBDCABAAAAOw8BBwnjiwDhAQwgAQAAADwPAQcJQxkB4QEMIAEAAAA9DwEHCcNzAOEBDCABAAAAPg8BBwmDdgDhASIAAQAAAD8PAQYJQx0A4QEMIAEAAABADwEHCYOaAdkBDCABAAAAQQ8BBwlDHQDhARYEAQAAAEIPAQcJYx4A4QEiAAEAAABDDwEGCYMXAOEBGkABAAAARA8BBwkDGQDhAQwgAQAAAEUPAQcJYyQA4QEMIAEAAABGDwEHCeMVAOEBDCABAAAARw8BBwkjpwDhAQwgAQAAAEcPAQUJI+QB4QEMIAEAAABJDwEHCQMlAOEBFgQBAAAASg8BBwljJADhARYEAQAAAEsPAQcJoxkA2QFcAAEAAABMDwEGCYMhAOEBDCABAAAATQ8BBwmDfADhAQwgAQAAAE4PAQcJwx0A4QEMIAEAAABPDwEHCUMdAOEBFgQBAAAAUA8BBwlDVwDhAS4EAQAAAFEPAQYJI6IA4QEMIAEAAABSDwEHCUOtAOEBDCABAAAAUw8BBwmDHQDhAQwgAQAAAFQPAQcJA4YA4QEaQAEAAABMDwEFCUNYAOEBGkABAAAAVg8BBwnjFQDhARYEAQAAAFcPAQcJYzEA4QEcDAEAAABYDwEHCWMbAOEBDCABAAAAWQ8BBwnjFQDhARpAAQAAAEwPAQUJoyMA4QEWBAEAAABbDwEHCQN2AOEBDCABAAAAXA8BBwkDPQDhAQwgAQAAAF0PAQcJw1YA4QEWBAEAAABgDwEFCcNKAOEBFgQBAAAAYA8BBQkDvgDhARYEAQAAAGAPAQcJYxsA4QEMIAEAAABhDwEHCSMiAOEBDCABAAAAYg8BBwlDLQDhARpAAQAAAEwPAQUJgy0A4QEMIAEAAABkDwEHCYNkAeEBDCABAAAAZQ8BBQmjWgDhAQwgAQAAAGUPAQUJwx8A4QEuIAEAAABnDwEWCeNZAOEBLAABAAAAaA8BBgmjqADhAQwgAQAAAGkPAQcJAyMA4QEMIAEAAABqDwEHCUNCAOEBDCABAAAAaw8BBwmDzQDhAQwgAQAAAGwPAQcJQyUA4QEaQAEAAABnDwEFCUNXAOEBDCABAAAAbg8BBwkDSwDhAQwgAQAAAG8PAQcJYyQA4QEeIAEAAABwDwEGCaMYAOEBGkABAAAAcA8BBQkjNwDhAQwgAQAAAHAPAQUJ4xUA4QEaQAEAAABwDwEFCSNQAOEBLAABAAAAdA8BBglDawDhARYEAQAAAHUPAQcJYzcA4QEMIAEAAAB2DwEHCWMmAOEBDCABAAAAdw8BBwkDLgDhAQwgAQAAAHgPAQcJgywA4QEMIAEAAAB5DwEHCcNEAOEBDCABAAAAeg8BBwkjHADhAQwgAQAAAHsPAQcJ4x8A4QEMIAEAAABnDwEFCeM/AOEBMgABAAAAfQ8BBgnDfgDhAQwgAQAAAH4PAQcJY8EA4QEeAAEAAAB/DwEGCWNWAOEBGkABAAAAfw8BBQnjFQDhARpAAQAAAH8PAQUJw0IA4QEMIAEAAACCDwEHCeMeAOEBDCABAAAAgw8BBwnjFQDhARYEAQAAAIQPAQcJYzEA4QEcDAEAAACFDwEHCQMEAeEBHkABAAAAhg8BBgljVgDhARpAAQAAAIYPAQUJ4xUA4QEaQAEAAACGDwEFCeOxAOEBGkABAAAAhg8BBQlDjADhAQwgAQAAAIoPAQcJg6IA4QEeAAEAAACLDwEGCaMXAOEBHkABAAAAjA8BBgnjFQDhARpAAQAAAIwPAQUJI2UA4QEaQAEAAACMDwEFCYOfAOEBDCABAAAAjw8BBwmDpADhAQwgAQAAAI8PAQUJwwIA4QEMIAEAAACRDwEHCQMjAOEBHAwBAAAAkg8BBwkDMgDhARwMAQAAAJMPAQcJo1cA4QEcDAEAAACUDwEHCSNjAOEBLAwBAAAAlQ8BBgkjJgDhAQwgAQAAAJYPAQcJoycA4QEcDAEAAACXDwEHCeMVAOEBDCABAAAAmA8BBwnjPwDhARpAAQAAAJkPAQcJA1gA4QEaQAEAAACZDwEFCeMVAOEBGkABAAAAmQ8BBQmDGADhAQwgAQAAAJwPAQcJYzgA4QEMIAEAAACdDwEHCUNiAOEBDCABAAAAng8BBwlDdgDhAQwgAQAAAJ8PAQcKIyYB5wEYMAEAAACgDxEFCSMmAeEBDCABAAAAoQ8BBwlDiQDhAQwgAQAAAKIPAQcJ4zYA4QEeAAEAAACjDwEGCYMWAOEBHgABAAAAow8BBAnjFQDhARpAAQAAAKMPAQUJQ0UA4QEaQAEAAACmDwEHCeMZAOEBGkABAAAApg8BBQnjHgDhAQwgAQAAAKgPAQcJ4xUA4QEeAAEAAACmDwECCQNXAOEBGkABAAAApg8BBQlD5AHhAQwgAQAAAKsPAQcJA5sA4QEeIAEAAACsDwEGCWMZAOEBGkABAAAArA8BBQnjFQDhARpAAQAAAKwPAQUJw8oA4QEeQAEAAACsDwEECQNLAOEBHiABAAAAsA8BBgnjGQDhARYEAQAAALEPAQcJYxsA4QEMIAEAAACyDwEHCeMVAOEBHgABAAAAsA8BAgljGwDhARYEAQAAALQPAQcJYxsA4QEMIAEAAAC1DwEHCcNWAOEBFgQBAAAAuA8BBQnDSgDhARYEAQAAALgPAQUJwyAA4QEWBAEAAAC4DwEHCSNAAOEBGkABAAAAuQ8BBwkjJgDhAQwgAQAAALoPAQcJw18A4QEMIAEAAACwDwEHCUNAAOEBGkABAAAAvA8BBwnjFQDhAQwgAQAAAL0PAQcJI2sA4QEMIAEAAAC+DwEHCeMVAOEBGkABAAAAvw8BBwkDOgDhAQwgAQAAAMAPAQcJY+QB4QEMIAEAAADCDwEFCWPlAOEBDCABAAAAwg8BBQnDzwDhAQwgAQAAAMMPAQcJIy4A4QEWBAEAAADEDwEHCYMvAOEBFgQBAAAAxQ8BBwkDQQDhAQwgAQAAAMYPAQcJQ2QA4QEMIAEAAADHDwEHCWNkAOEBDCABAAAAyA8BBwnjXwDhAS4gAQAAAMkPAQYJ4zoA4QEMIAEAAADKDwEHCcMXAOEBLiABAAAAyw8BBgkDQADhARpAAQAAAMsPAQUJQygA4QEMIAEAAADNDwEHCeMVAOEBHkABAAAAyw8BAgkDGQDhAQwgAQAAAM8PAQcJoycA4QEaQAEAAADVDwFHCYMnAOEBGkABAAAA1g8BRQlDKwDhARpAAQAAANcPAUUJ4xUA4QEaQAEAAADYDwFFCQMZAOEBDCABAAAA1A8BBwmDMADhARpAAQAAANUPAQcJozAA4QEaQAEAAADVDwEFCcMwAOEBGkABAAAA1Q8BBQnjFQDhARpAAQAAANUPAQUJA0AA4QEaQAEAAADMDwFFCUMoAOEBDCABAAAA2g8BBwnjFQDhARpAAQAAAM4PAUUJwxoA4QEcDAEAAADcDwEHCcNCAOEBDCABAAAA3Q8BBwmjdQDhAR4gAQAAAMsPAQQJoykA4QEMIAEAAADfDwEHCeMgAOEBDCABAAAA4A8BBwkDIQDhAQwgAQAAAOAPAQUJAyMA4QEMIAEAAADiDwEHCaMYAOEBIEABAAAAyQ8BAgljKgDhAQwgAQAAAOQPAQcJw2AA4QEMIAEAAADlDwEHCSMeAOEBDCABAAAA5g8BBwljHgDhARYEAQAAAOcPAQcJwyAA4QEcDAEAAADoDwEHCQMZAOEBDCABAAAA6Q8BBwmDIQDhARYEAQAAAOoPAQcJgzEA4QEeQAEAAADrDwECCcNWAOEBDCABAAAA7A8BBwkjIADhARpAAQAAAO4PAQUJwzUA4QEaQAEAAADuDwEHCeMVAOEBGkABAAAA7g8BBQnjFQDhAR5AAQAAAMkPAQIJA3oA4QEMIAEAAADxDwEHCaNfAOEBDCABAAAA8g8BBwkDUgDhAQwgAQAAAPMPAQcJg0QA4QEMIAEAAADzDwEHCYMwAeEBDCABAAAA8Q8BBQmDUQDhAQwgAQAAAPYPAQcJYyQA4QEMIAEAAAD2DwEFCaMpAOEBDCABAAAA+A8BBwkjMgDhAR4AAQAAAPkPAQYJg5EA4QEeIAEAAADJDwEECeOjAOEBDCABAAAA+w8BBwkD4wHhARYEAQAAAPwPAQcJ4zoA4QEMIAEAAAD9DwEHCQOzAOEBDCABAAAA/g8BBwmDRQHhAQwgAQAAAP8PAQcJIx4A4QEeIAEAAAAAEAEGCUM6AOEBIEABAAAAABABAgmjQADhAQwgAQAAAAIQAQcJYygA4QEaQAEAAAAAEAEFCeMVAOEBGkABAAAAABABBQljNgDhAQwgAQAAAAUQAQcJwxgA4QEWBAEAAAAGEAEHCcMgAOEBHAwBAAAABxABBwkDMADhAQwgAQAAAAgQAQcJY1QA4QEeAAEAAAAJEAEGCWNNAOEBDCABAAAAChABBwmDFwDhAQwgAQAAAAsQAQcJYxwA4QEWBAEAAAAMEAEHCcMfAOEBDCABAAAADRABBwmDMQDhARpAAQAAABAQAQUJIyAA4QEaQAEAAAAQEAEFCcM1AOEBGkABAAAAEBABBQljHADhARYEAQAAABEQAQcJI30A4QEMIAEAAAASEAEHCcNyAOEBDCABAAAAExABBwkjGADhAQwgAQAAABQQAQcJIxwA4QEMIAEAAAAVEAEHCcODAOEBDCABAAAAFhABBwnjgwDhAQwgAQAAABYQAQUJI3QA4QEMIAEAAAAYEAEHCUO7AOEBDCABAAAAGRABBwlDWADhARYEAQAAABoQAQcJ40IA4QEMIAEAAAAbEAEHCcNWAOEBFgQBAAAAJhABBQnDSgDhARYEAQAAACYQAQUJ41YA4QEcDAEAAAAeEAEHCWMbAOEBDCABAAAAHxABBwkjVwDhARYEAQAAACAQAQcJg6QA4QEMIAEAAAAZEAEHCWOkAOEBHgABAAAAIhABBgmjUgDhAQwgAQAAACMQAQcJI0YA4QEMIAEAAAAkEAEHCUM5AOEBDCABAAAAJRABBwkDYQDhARYEAQAAACYQAQcJY3oA4QEMIAEAAAAnEAEHCcOxAOEBDCABAAAAKBABBwnDVgDhARYEAQAAACwQAQUJw0oA4QEWBAEAAAAsEAEFCWMbAOEBDCABAAAAKxABBwnDGgDhASIEAQAAACwQAQYJA4UB4QEMIAEAAAAtEAEHCWNJAOEBDCABAAAALhABBwkDlADhAR4AAQAAAC8QAQYJ4xkA4QEaQAEAAAAvEAEFCeMVAOEBGkABAAAALxABBQkjGADhAQwgAQAAADIQAQcJI0MA4QEWBAEAAAAzEAEHCcMuAOEBDCABAAAANBABBwkD4QHhAQwgAQAAADUQAQcJAwEB4QEMIAEAAAA1EAEFCSOUAOEBIgABAAAANxABBgnDOADhAQwgAQAAADgQAQcJgykA4QEuIAEAAAA5EAEGCaMXAOEBDCABAAAAOhABBwnDpgDhAQwgAQAAADsQAQcJA1YA4QEMIAEAAAA8EAEHCaMjAOEBDCABAAAAPRABBwnDIwDhAQwgAQAAAD0QAQUJoyMA4QEWBAEAAAA/EAEHCSOSAOEBFgQBAAAAQBABBwmDFwDhARpAAQAAAEEQAQcJAzoA4QEMIAEAAABCEAEHCYOIAOEBDCABAAAAQxABBwnDHwDhAQwgAQAAAEQQAQcJ44sA4QEMIAEAAABFEAEHCYO3AOEBDCABAAAARhABBwnjMQDhAQwgAQAAAEcQAQcJYzwB4QEMIAEAAABIEAEHCWMkAOEBDCABAAAASRABBwkjTADhAQwgAQAAAEoQAQcJo1IA4QEMIAEAAABLEAEHCcOMAOEBDCABAAAATBABBwmDTADhAQwgAQAAAE0QAQcJA0YA4QEWBAEAAABOEAEHCWO5AOEBDCABAAAATxABBwnjIADhAQwgAQAAAFAQAQcJg3UA4QEMIAEAAABREAEHCcMiAOEBDCABAAAAUhABBwljJADhAQwgAQAAAFMQAQcJQx0A4QEiAAEAAABUEAEGCQM0AOEBFgQBAAAAVRABBwkjIADhAQwgAQAAAFcQAQUJQyAA4QEMIAEAAABXEAEHCSN6AOEBHAwBAAAAWBABBwlDOADhAQwgAQAAAFkQAQcJw2QA4QEMIAEAAABaEAEHCUNKAOEBHkABAAAAWxABBgnjFQDhAR5AAQAAAFsQAQIJAyoA4QEaQAEAAABbEAEFCWMbAOEBDCABAAAAXhABBwljfQDhAQwgAQAAAF8QAQcJ4xgA4QEMIAEAAABgEAEHCaMnAOEBGkABAAAAYRABBwlDKwDhARpAAQAAAGEQAQUJgzAA4QEaQAEAAABjEAEHCcMwAOEBGkABAAAAYxABBQkjOwDhAQwgAQAAAGUQAQcJIyIA4QEMIAEAAABmEAEHCcNOAOEBDCABAAAAZxABBwmDfwDhAR4AAQAAAGgQAQYJgx8A4QEMIAEAAABpEAEHCeMVAOEBGkABAAAAaBABBQljMQDhARwMAQAAAGsQAQcJAyoA4QEeAAEAAABoEAEECSNFAOEBIgQBAAAAbRABBgljGwDhAQwgAQAAAG4QAQcJQygA4QEWBAEAAABtEAEFCcNKAOEBFgQBAAAAbRABBQkDXADhAQwgAQAAAHEQAQcJY/YA4QEWBAEAAAByEAEHCUMgAOEBDCABAAAAcxABBwkDGQDhAQwgAQAAAHQQAQcJgzEA4QEaQAEAAAB3EAEFCSMgAOEBGkABAAAAdxABBQnDNQDhARpAAQAAAHcQAQcJ4xUA4QEaQAEAAAB3EAEFCeMhAOEBDCABAAAAeRABBwkjGgDhARYEAQAAAHoQAQcJQ28A4QEcDAEAAAB7EAEHCYNqAOEBDCABAAAAfRABBQkjWgDhAQwgAQAAAH0QAQcJgxcA4QEaQAEAAAB+EAEHCeMZAOEBFgQBAAAAfxABBwkDGgDhARpAAQAAAH4QAQUJ4xUA4QEaQAEAAAB+EAEFCQMZAOEBDCABAAAAghABBwnjGADhAQwgAQAAAIIQAQUJYxoA4QEMIAEAAACEEAEHCWMmAOEBDCABAAAAhRABBwlDIADhAQwgAQAAAIYQAQcJYxwA4QEWBAEAAACHEAEHCaMqAOEBHAwBAAAAiBABBwljGwDhAQwgAQAAAIkQAQcJ4zUA4QEMIAEAAACKEAEHCcM9ANkBHiABAAAAixABBgnjIQDhAQwgAQAAAIwQAQcJo6EA4QEMIAEAAACNEAEHCiMeAOcBQEgBQAEAjxARBQkjHgDhAZRI4QQAAI8QARQJYxgA4QEWBAEAAACQEAEHCaMkAOEBHAwBAAAAkRABBwnDSgDhARYEAQAAAJAQAQUJQyAA4QEMIAEAAACTEAEHCaO4AOEBDCABAAAAlRABBQkD5ADhAQwgAQAAAJUQAQcJYyQA4QEMIAEAAACWEAEHCeMgAOEBDCABAAAAlxABBwmDfADhAQwgAQAAAJgQAQcJo3MA4QEMIAEAAACZEAEHCUPxAOEBFgQBAAAAmhABBwmDLADhAQwgAQAAAJsQAQUJA68A4QEMIAEAAACbEAEFCaOKAOEBFgQBAAAAnRABBwljGwDhAQwgAQAAAJ4QAQcJ4xUA4QEaQAEAAACfEAEHCcMZAOEBFgQBAAAAoBABBwkjUADhAQwgAQAAAKEQAQcJY3sA4QEMIAEAAACiEAEHCoNEAOcBGDABAAAAoxARBQmDRADhARgwAQAAAKMQAQcJgzYA4QEWBAEAAAClEAEHCWOLAOEBHgABAAAAphABBgnjFQDhARpAAQAAAKYQAQUJwyYA4QEMIAEAAACoEAEHCQMqAOEBDCABAAAAqBABBQnjJgDhAR4AAQAAAKYQAQQJg3YA4QEiAAEAAACrEAEGCeMVAOEBLkABAAAAnxABAgmDdADhAS4EAQAAAK0QAQYJA0AA4QEaQAEAAACtEAEFCUMlAOEBFgQBAAAArxABBQljGwDhAQwgAQAAALAQAQcJA1gA4QEMIAEAAACtEAEHCUNXAOEBDCABAAAAshABBwlDUQDhAQwgAQAAALMQAQcJA1wA4QEMIAEAAAC0EAEHCeMVAOEBGkABAAAArRABBQljMQDhARwMAQAAALYQAQcJI6cA4QEaQAEAAACfEAEFCSNQAOEBLgABAAAAuBABBgkDNADhASIAAQAAALkQAQYJoycA4QEaQAEAAAC6EAEHCUMrAOEBGkABAAAAuhABBQlDIADhAQwgAQAAALwQAQcJgzAA4QEaQAEAAAC9EAEHCcMwAOEBGkABAAAAvRABBQnjFQDhARpAAQAAAL0QAQUJI3oA4QEcDAEAAADAEAEHCeMkAOEBDCABAAAAwRABBwljWQDhASIAAQAAAMIQAQYJg3YA4QEWBAEAAADDEAEHCeMeAOEBFgQBAAAAxBABBwlDJADhARYEAQAAAMUQAQcJQyAA4QEMIAEAAADGEAEHCeMjAOEBFgQBAAAAxxABBwljMwDhARYEAQAAAMgQAQcJIxoA4QEWBAEAAADJEAEHCeO3AOEBHkABAAAAyhABBgnDGQDhARYEAQAAAMsQAQcJg0wA4QEMIAEAAADMEAEHCSNuAOEBDCABAAAAzRABBwnDcwDhAQwgAQAAAM4QAQcJ4xUA4QEeQAEAAADKEAECCYOnAOEBHgABAAAAyhABBAljGwDhARYEAQAAANEQAQcJYxsA4QEMIAEAAADSEAEHCaMYAOEBGkABAAAAixABBQljKgDhAQwgAQAAANQQAQcJ4xUA4QEuAAEAAACLEAECCYN/AOEBDCABAAAA1hABBwlDagDhAQwgAQAAANcQAQcJg5AA4QEMIAEAAADYEAEHCYMqAOEBDCABAAAAixABBQnjHgDhARpAAQAAANoQAQcJYx8A4QEWBAEAAADbEAEHCeMVAOEBGkABAAAA2hABBQkDKgDhARpAAQAAANoQAQUJgxcA4QEWBAEAAADeEAEHCUMgAOEBDCABAAAA3xABBwljHADhARYEAQAAAOAQAQcJoyoA4QEcDAEAAADhEAEHCWMbAOEBDCABAAAA4hABBwnDOADhAQwgAQAAAOMQAQcJQxoA4QEMIAEAAADkEAEHCSMuAOEBDCABAAAA5RABBwmDLwDhARYEAQAAAOYQAQcJwxoA4QEcDAEAAADnEAEHCWM4AOEBDCABAAAA5RABBQkDGQDhAQwgAQAAAOkQAQcJg3wA4QEWBAEAAADqEAEHCaNRAdkBHgABAAAA6xABBgljcADhAR5AAQAAAOwQAQYJoxgA4QEaQAEAAADsEAEFCeMVAOEBGkABAAAA7BABBQmDRADhAQwgAQAAAO8QAQcJ4xgA4QEeQAEAAADsEAEECWNWAOEBGkABAAAA6xABBQmDfwDhAQwgAQAAAPIQAQcJ4xUA4QEaQAEAAADrEAEFCeNrAOEBHgABAAAA6xABBAmjNQDhAQwgAQAAAPUQAQcJg+QB2QEMIAEAAAD2EAEHCQMnAOEBDCABAAAA9xABBwmjcgDhAQwgAQAAAPgQAQcJo+QB4QEMIAEAAAD5EAEHCaPfAOEBDCABAAAA+hABBwljOgDhAR4AAQAAAPsQAQYJ46kA4QEMIAEAAAD8EAEHCUMdAOEBDCABAAAA/RABBwkDIQDhAR4AAQAAAPsQAQQJIxwA4QEMIAEAAAD/EAEHCeMVAOEBGkABAAAA+xABBQkDagDhAQwgAQAAAAERAQcJI0IA4QEMIAEAAAACEQEHCaOmAeEBDCABAAAAAxEBBwnjIQHhAQwgAQAAAAQRAQcJI/MA4QEMIAEAAAAFEQEHCSMcANkBDCABAAAAOQ8BBwnjIwDhAQwgAQAAAAcRAQcJoycA4QEMIAEAAAAIEQEHCcPRAOEBDCABAAAACREBBwnDWADhAQwgAQAAAAoRAQcJQ2wA4QEaQAEAAAALEQEHCYMxAOEBFgQBAAAADBEBBwljGwDhAQwgAQAAAA0RAQcJw+QB4QEMIAEAAAAOEQEHCYOeAOEBDCABAAAADxEBBwkDzADhASIAAQAAABARAQYJoyMA4QEWBAEAAAAREQEHCeMeAOEBDCABAAAAEhEBBwkjRgDhAQwgAQAAABMRAQcJI1cA4QEWBAEAAAAUEQEHCSN6AOEBFgQBAAAAFREBBwkDKgDhAQwgAQAAABIRAQUJIy0A4QEMIAEAAAAXEQEHCSN+AOEBDCABAAAAGREBBQkjWgDhAQwgAQAAABkRAQUJgzYA4QEWBAEAAAAaEQEHCWOfANkBGkABAAAAGxEBBwnjZgDhAQwgAQAAABwRAQcJ43MB4QEMIAEAAAAdEQEHCYOUAOEBDCABAAAAHREBBQljNwDhAR4gAQAAAB8RAQYJAxoA4QEMIAEAAAAfEQEFCeMVAOEBGkABAAAAGxEBBQnDMgDhARpAAQAAABsRAQUJw3MA4QEMIAEAAAAjEQEHCeMeAOEBDCABAAAAJBEBBwnjFQDhAS5AAQAAABsRAQIJgxcA4QEaQAEAAAAmEQEHCeMZAOEBIEABAAAAJhEBAgkDGgDhARpAAQAAACYRAQUJ4xUA4QEaQAEAAAAmEQEFCQMZAOEBDCABAAAAKhEBBwnjGADhAQwgAQAAACoRAQUJAzUA4QEMIAEAAAAsEQEFCcNZAOEBDCABAAAALBEBBQnjIQDhAQwgAQAAAC4RAQcJYx0B4QEMIAEAAAAvEQEHCSOMAdkBAiQBAgAAMBEBFwmDOQBlAhwMAQAAADERAQUJI8UA4QEMIAEAAAAyEQEHCYM5AOEBLAQBAAAAMxEBBgmjFwDhAQwgAQAAADQRAQcJIx4A4QEMIAEAAAA1EQEHCWPAAOEBFgQBAAAANhEBBwlDJwDhAQwgAQAAADcRAQcJY6QA4QECJEECAAA4EQEHCeMoAOEBIgDBAAAAOREBBgnj5AHhASIEgQAAADoRAQYJY2kA4QEcDAEAAAA7EQEHCSMgAOEBDCBBAwAAPhEBBwkjjwDhASIA4QAAAD0RAQYJA+UB4QECJGECAAA+EQEXCcMZAOEBFgQBAAAAPxEBBwmDMADhAS4gAQAAAEARAQYJwxkA4QEWBAEAAABBEQEHCWMbAOEBDCABAAAAQhEBBwmjMADhASBAAQAAAEARAQIJwzAA4QEMIAEAAABAEQEFCeMVAOEBHgABAAAAQBEBAgnjPAHhARpAAQAAAEYRAQcJI6YA4QEeAAEAAABHEQEGCeMVAOEBFgQBAAAASBEBBwsDbgDhAQwgAQAAAEkRAQcMI+UB4QEMIAEAAABKEQEHDIN4AOEBDCABAAAASxEBBwyjfQDhAR4AAQAAAEwRAQYMY/UA4QEWBAEAAABNEQEHDIMXAOEBHgABAAAAThEBBgwDIwDhAR4AAQAAAE8RAQYMIyYA4QEMIAEAAABQEQEHDOMVAOEBHgABAAAATxEBAgzjHgDhAQwgAQAAAFIRAQcMAxoA4QEMIAEAAABOEQEFDOMVAOEBHgABAAAAThEBAgxD5QHhAQwgAQAAAFURAQcM4z8A4QEeAAEAAABWEQEGDCOyAOEBDCABAAAAVxEBBwyDggHhAQwgAQAAAFgRAQcMozsA4QEMIAEAAABZEQEHDMMeAOEBFgQBAAAAWhEBBwwDXADhAQwgAQAAAFsRAQcM4xgA4QEMIAEAAABbEQEFDIMxAOEBGkABAAAAXxEBBQwjIADhARpAAQAAAF8RAQUMwxoA4QEaQAEAAABfEQEFDENYAOEBGkABAAAAYBEBBQyjGADhARpAAQAAAGARAQUM4xUA4QEaQAEAAABgEQEFDGPlAeEBDCABAAAAYxEBBwyjigDhAQwgAQAAAGQRAQcMIxoA4QEMIAEAAABlEQEHDIMcAOEBFgQBAAAAZhEBBwzDGgDhARwMAQAAAGcRAQcM4yEA4QEMIAEAAABoEQEHDEMtAOEBDCABAAAAZREBBQyjqgDhARpAAQAAAGoRAQUMI6EA4QEeIAEAAABrEQEGDKN7AOEBDCABAAAAbBEBBwyDQwDhAQwgAQAAAG0RAQcMwyMA4QEeIAEAAABrEQEEDMNWAOEBFgQBAAAAdBEBBQzDSgDhARYEAQAAAHQRAQUM41YA4QEcDAEAAABxEQEHDGMbAOEBDCABAAAAchEBBwzjFQDhARpAAQAAAGsRAQUMozcA4QEWBAEAAAB0EQEHDGORAOEBGkABAAAAahEBBQzjGQDhARpAAQAAAGoRAQUM4xUA4QEaQAEAAABqEQEFDIOPAOEBIAABAAAAeBEBBgyDZADhASBAAQAAAHgRAQIM43gA4QEeAAEAAAB6EQEGDOMVAOEBGkABAAAAehEBBQzjFQDhARpAAQAAAHgRAQUMYxsA4QEMIAEAAAB9EQEHDEPQAOEBGkABAAAAeBEBBQyDIQHZAR4gAQAAAH8RAQYMw0gA4QEMIAEAAACAEQEHDGNAAOEBDCABAAAAgREBBwyDIADhAQwgAQAAAIIRAQcMA8UA4QEMIAEAAACDEQEHDIOEAeEBHkABAAAAhBEBBgxDJQDhARpAAQAAAIQRAQUMIyYA4QEMIAEAAACGEQEHDOMVAOEBGkABAAAAhBEBBQwjkwDhAQwgAQAAAIgRAQcMw1YA4QEMIAEAAACJEQEHDCMgAOEBDCABAAAA5REBBQxDowDhAQwgAQAAAIsRAQcMA6IA4QEMIAEAAACMEQEHDOMVAOEBHiABAAAAfxEBAgyjigDhARYEAQAAAI4RAQcMwxoA4QEcDAEAAACPEQEHDGN6AOEBDCABAAAAkBEBBwwDQADhARYEAQAAAJERAQcMQ1EA4QEMIAEAAACSEQEHDKMjAOEBDCABAAAAkxEBBwyjigDhARYEAQAAAJQRAQcMwxoA4QEcDAEAAACVEQEHDGMbAOEBDCABAAAAlhEBBwzjgQDhAQwgAQAAAJARAQUMwxoA4QEMIAEAAACYEQEHDCMaAeEBLkABAAAAmREBBgyjTADhARpAAQAAAJoRAQcM4xUA4QEaQAEAAACZEQEFDEMxAOEBIAABAAAAmREBAgxDSgDhAQwgAQAAAJ0RAQcMAyoA4QEMIAEAAACdEQEFDOMVAOEBHgABAAAAmREBAgzjwADhARpAAQAAAKARAQcMw1YA4QEWBAEAAACmEQEFDMNKAOEBFgQBAAAAphEBBQzjVgDhARwMAQAAAKMRAQcM4xUA4QEaQAEAAACgEQEFDIPWAOEBGkABAAAAoBEBBQyj1gDhARYEAQAAAKYRAQcM41QA4QEaQAEAAACZEQEFDMNYAOEBHiABAAAAqBEBBgwjTADhAQwgAQAAAKkRAQcMAzoA4QEMIAEAAACqEQEHDKOKAOEBDCABAAAAqxEBBwwjQADhAQwgAQAAAKwRAQcM47cA4QEMIAEAAACtEQEHDGMbAOEBFgQBAAAArhEBBwyjGADhASAAAQAAAKgRAQIMQx0A4QEWBAEAAACwEQEHDMNWAOEBFgQBAAAAtREBBQzDSgDhARYEAQAAALURAQUMYxsA4QEMIAEAAACzEQEHDOMVAOEBGkABAAAAqBEBBQxjwADhASIAAQAAALURAQYMgyoA4QEeIAEAAACoEQEEDAM6AOEBFgQBAAAAtxEBBwwDSwDhARYEAQAAALgRAQcMQ4UB4QEeQAEAAAC5EQEGDKMXAOEBDCABAAAAuhEBBwxjVgDhARpAAQAAALkRAQUMg38A4QEeQAEAAAC8EQEGDOMVAOEBGkABAAAAuREBBQzjawDhAR4AAQAAALkRAQQMo7wA4QEeAAEAAAC/EQEGDKMjAOEBHiABAAAAwBEBBgxjGQDhARpAAQAAAMARAQUMg0MA4QEMIAEAAADCEQEHDENUAOEBDCABAAAAwxEBBwyDVwDhAR4gAQAAAMQRAQYM4xkA4QEaQAEAAADEEQEFDOMVAOEBIEABAAAAxBEBAgzDJADhAR5AAQAAAMQRAQQMo4UB4QEMIAEAAADIEQEHDOMeAOEBGkABAAAAyREBBwzjFQDhARpAAQAAAMkRAQUMAyoA4QEaQAEAAADJEQEFDKMjAOEBFgQBAAAAzBEBBwxjaQDhARwMAQAAAM0RAQcMYxsA4QEMIAEAAADOEQEHDCOsAOEBHgABAAAAzxEBBgyDIQDhARpAAQAAANARAQcMgxYA4QEaQAEAAADQEQEFDIMxAOEBGkABAAAA0xEBBQxDuADhAR4AAQAAANMRAQYMg+UB4QEMIAEAAADUEQEHDOOuAOEBGkABAAAA1REBBwyDzwDhARpAAQAAANURAQUMA5sA4QEaQAEAAADXEQEHDKPlAeEBDCABAAAA2BEBBwwDRgDhAQwgAQAAANkRAQcMo6wA4QEaQAEAAADaEQEHDINMAOEBDCABAAAA2xEBBwzjFQDhAR4AAQAAANoRAQIMg6QA4QEaQAEAAADaEQEFDAO1AOEBDCABAAAA3hEBBwxDvwDhAQwgAQAAAN8RAQcMA0YA4QEMIAEAAADgEQEHDOOBAOEBDCABAAAA3hEBBQwD1wDhAR4AAQAAAOIRAQYMA1YA4QEMIAEAAADjEQEHDKNSAOEBDCABAAAA5BEBBwzjywDZAR4gAQAAAOURAQYMQ6YA4QEMIAEAAADmEQEHDEO/AOEBDCABAAAA5xEBBwyDIQDhARpAAQAAAOgRAQcMgykA4QEMIAEAAADpEQEHDIMWAOEBGkABAAAA6BEBBQzjFQDhAR4AAQAAAOgRAQIMo3sA4QEMIAEAAADsEQEHDKMXAOEBGkABAAAA7REBBwxDFgDhAR4AAQAAAO4RAQYMA0sA4QEMIAEAAADvEQEHDGMkAOEBDCABAAAA8BEBBwyjqgDhAR4AAQAAAPERAQYM4xkA4QEaQAEAAADxEQEFDOMVAOEBGkABAAAA8REBBQxjkQDhARpAAQAAAPERAQUMY1EA4QEMIAEAAAD1EQEHDIN/AOEBDCABAAAA9hEBBwwDKgDhAQwgAQAAAPYRAQUMg58A4QEMIAEAAAD4EQEHDAMjAOEBLAwBAAAA+REBBgwDMgDhARwMAQAAAPoRAQcMo1cA4QEMIAEAAAD7EQEHDOMVAOEBDCABAAAA/BEBBw3jvgDhAR4gAQAAAP0RAQYNgx0A4QEaQAEAAAD9EQEFDeMpAOEBGkABAAAA/xEBBw3jFQDhARpAAQAAAP0RAQUNI78A4QEMIAEAAAD9EQEFDaMXAOEBLiABAAAAAhIBBg1DWADhARpAAQAAAAMSAQcNoxgA4QEaQAEAAAADEgEFDeMVAOEBHkABAAAAAxIBAg3DHADhARpAAQAAAAMSAQUNg0wA4QEMIAEAAAAHEgEHDeMVAOEBHgABAAAAAhIBAg0DvgDhARwMAQAAAAkSAQcNYxsA4QEMIAEAAAAKEgEHDSNlAOEBDCABAAAAAhIBBw0DPQHhAR4AAQAAAAwSAQYNoyYA4QEaQAEAAAAMEgEFDeMVAOEBGkABAAAADBIBBQ3D7wDhAQwgAQAAAA8SAQcNo6IA4QEeAAEAAAAMEgEEDUMqAOEBLkABAAAAERIBAg3jVQDhARpAAQAAABISAQcNA4YA4QEWBAEAAAATEgEHDWPrAOEBHgABAAAAFBIBBg1jZgDhAR4AAQAAABUSAQYNQzEA4QEaQAEAAAAVEgEFDUNKAOEBDCABAAAAFxIBBw3jFQDhARpAAQAAABUSAQUNI0kA4QEeAAEAAAAVEgEEDSMmAOEBHgABAAAAGhIBBg2DHwDhAQwgAQAAABsSAQcN4xUA4QEaQAEAAAAaEgEFDWMcAOEBFgQBAAAAHRIBBw2jKgDhARwMAQAAAB4SAQcNAyoA4QEaQAEAAAAaEgEFDcNzAOEBHgABAAAAIBIBBg3jVgDhARwMAQAAACESAQcNYxsA4QEMIAEAAAAiEgEHDeMVAOEBGkABAAAAIBIBBQ0jpwDhARpAAQAAACASAQUN4zoA4QEMIAEAAAAlEgEHDYMbAeEBFgQBAAAAJhIBBw1jHgDhAR4AAQAAACcSAQYN4xkA4QEWBAEAAAAoEgEHDeMVAOEBIAABAAAAJxIBAg1jMQDhARwMAQAAACoSAQcNAzAA4QEaQAEAAAAnEgEFDSNjAOEBHAwBAAAALBIBBw2jJwDhARwMAQAAAC0SAQcN46AA4QFEAAEAAAAuEgEGDUMZAOEBLAABAAAALxIBBg3DVgDhARYEAQAAADISAQUNw0oA4QEWBAEAAAAyEgEFDaPyAOEBFgQBAAAAMhIBBw1jVgDhARpAAQAAAC4SAQUNg38A4QEMIAEAAAA0EgEHDeMVAOEBHiABAAAALhIBAA3j4wDhAR5AAQAAAC4SAQQNQ8IA4QEMIAEAAAA3EgEHDUNXAOEBIgABAAAAOBIBBg1DGQDhAR5AAQAAADkSAQYNYxkA4QEgQAEAAAA5EgECDYNDAOEBDCABAAAAOxIBBw3DIwDhAR5AAQAAADkSAQQN4xUA4QEgQAEAAAA5EgECDWOPAOEBDCABAAAAPhIBBw0DwADhAR4AAQAAAD8SAQYNgxcA4QEeIAEAAABAEgEGDeMZAOEBGkABAAAAPxIBBQ3jHgDhAQwgAQAAAEISAQcNw+4A4QEWBAEAAABDEgEHDYNDAOEBGkABAAAARBIBBw3jFQDhARpAAQAAAEQSAQUNAyoA4QEaQAEAAABEEgEFDcNWAOEBFgQBAAAATxIBBQ3DSgDhARYEAQAAAE8SAQUN4xUA4QEMIAEAAABJEgEHDeMZAOEBGkABAAAAPxIBBQ0jkgDhAQwgAQAAAEsSAQcNYxsA4QEMIAEAAABMEgEHDYNcAOEBFgQBAAAATRIBBw3jFQDhARpAAQAAAD8SAQUNI7wA4QEWBAEAAABPEgEHDeMeAOEBHiABAAAAUBIBBg1jHwDhARpAAQAAAFASAQUNgx8A4QEMIAEAAABSEgEHDcMqAOEBDCABAAAAUxIBBw3jFQDhARpAAQAAAFASAQUNYxwA4QEWBAEAAABVEgEHDQMqAOEBGkABAAAAUBIBBQ0DfgHhARYEAQAAAFcSAQcN4xYA4QEeIAEAAABYEgEGDSMmAOEBDCABAAAAWRIBBw3jFQDhASIAAQAAAFoSAQYNYxsA4QEWBAEAAABbEgEHDSNXAOEBFgQBAAAAXBIBBw2DKQDhAR4AAQAAAF0SAQYN4xUA4QEaQAEAAABdEgEFDQMqAOEBHgABAAAAXRIBBA0DRgDhAQwgAQAAAGASAQcNgxYA4QEMIAEAAABYEgEFDSMDAeEBDCABAAAAYhIBBw2j9gDhARYEAQAAAGMSAQcN4xUA4QEaQAEAAABYEgEFDaMjAOEBFgQBAAAAZRIBBw1jaQDhARwMAQAAAGYSAQcNYy4A4QEiAAEAAABnEgEGDaPbAOEBDCABAAAAaBIBBw3jYQDhARpAAQAAAGkSAQcNI2IA4QEMIAEAAABqEgEHDQMqAOEBDCABAAAAahIBBQ3jFQDhAQwgAQAAAGwSAQcNI2MA4QEaQAEAAABpEgEFDeNXANkBDCABAAAAbhIBBw3DIQDhAQwgAQAAAG8SAQcNw1YA4QEWBAEAAABzEgEFDcNKAOEBFgQBAAAAcxIBBQ1jGwDhAQwgAQAAAHISAQcNYwkB4QEWBAEAAABzEgEHDQNAAOEBHgABAAAAdBIBBg0jJgDhAQwgAQAAAHUSAQcN4xUA4QEeIAEAAAB0EgECDYMmAOEBHgABAAAAdBIBRg1DSgDhAR4AAQAAAHgSAQYNw7AA4QEeAAEAAAB0EgEEDePvAOEBIAQBAAAAehIBBg0DvgDhARwMAQAAAHsSAQcNYxsA4QEMIAEAAAB8EgEHDeOPAOEBHiABAAAAfRIBBg2DfwDhAQwgAQAAAH4SAQcNw1YA4QEWBAEAAACOEgEFDcNKAOEBFgQBAAAAjhIBBQ3jVgDhARwMAQAAAIESAQcNYxsA4QEMIAEAAACCEgEHDeMVAOEBLkABAAAAfRIBAg1jGwDhARYEAQAAAIQSAQcNoyoA4QEcDAEAAACFEgEHDWMbAOEBDCABAAAAhhIBBw2DKQDhAQwgAQAAAIcSAQcN47EA4QEaQAEAAAB9EgEFDYOfAOEBGkABAAAAiRIBBw2DTADhAQwgAQAAAIoSAQcN4xUA4QEeAAEAAACJEgECDYOkAOEBGkABAAAAiRIBBQ2DPQDhAQwgAQAAAI0SAQcN4wkB4QEWBAEAAACOEgEHDSNAAOEBDCABAAAAjxIBBw1DJQDhARYEAQAAAJASAQcNI7IA4QEeAAEAAACREgEGDYN+AOEBFgQBAAAAkhIBBw3jNgDhAQwgAQAAAJMSAQcNYykA4QEWBAEAAACUEgEHDWMbAOEBFgQBAAAAlRIBBw2DFgDhAQwgAQAAAJMSAQUNA5sA4QEeAAEAAACXEgEGDQNLAOEBDCABAAAAmBIBBw0jJgDhARYEAQAAAJkSAQcNoycA4QEaQAEAAACaEgEHDUMrAOEBGkABAAAAmhIBBQ2DMADhARpAAQAAAJwSAQcNwzAA4QEaQAEAAACcEgEFDeMVAOEBGkABAAAAnBIBBQ0jegDhARwMAQAAAJ8SAQcNYxsA4QEMIAEAAACgEgEHDUMwAOEBGkABAAAAfRIBBQ2DYwDhAR4AAQAAAKISAQYNIyUA4QEMIAEAAACjEgEHDeMVAOEBHgABAAAAohIBAg3DwADhAR4gAQAAAEoTAUYN4xUA4QEaQAEAAAClEgEFDUPQAOEBGkABAAAApRIBBw3D5QHhAQwgAQAAAKgSAQcNwzEA4QEeIAEAAACpEgEGDUM6AOEBFgQBAAAAqhIBBw2jQADhAQwgAQAAAKsSAQcNYygA4QEMIAEAAACpEgEFDeMVAOEBHkABAAAAqRIBAg1DVwDhAS4EAQAAAK4SAQYNA4YA4QEWBAEAAACvEgEHDYNMAOEBDCABAAAAsBIBBw3DSgDhARpAAQAAAK4SAQUNA74A4QEcDAEAAACyEgEHDWMbAOEBDCABAAAAsxIBBw2jNQDhARpAAQAAALUSAQUNwx8A4QEeIAEAAAC1EgEGDSMmAOEBDCABAAAAthIBBw3jHwDhAR4gAQAAALUSAQQNo1cA4QEMIAEAAAC4EgEHDeMVAOEBIEABAAAAtRIBAg3DVgDhARYEAQAAAHoTAQUNw0oA4QEWBAEAAAB6EwEFDQNLAOEBLgQBAAAAvBIBBg3DSgDhARYEAQAAALwSAQUN4xUA4QEgAAEAAAC8EgECDWMxAOEBHAwBAAAAvxIBBw3DIADhARwMAQAAAMASAQcNYxsA4QEMIAEAAADBEgEHDQN0AOEBIAQBAAAAwhIBBg3DdQDhAR4gAQAAAMMSAQYNQzEA4QEWBAEAAADEEgEHDcNWAOEBFgQBAAAA0RIBBQ3DSgDhARYEAQAAANESAQUNYxsA4QEMIAEAAADHEgEHDeMVAOEBGkABAAAAwhIBBQ2j2gDhARwMAQAAAMkSAQcNQ0oA4QEWBAEAAADCEgEFDcNKAOEBFgQBAAAAwhIBBQ1jGwDhAQwgAQAAAMwSAQcN41QA4QEaQAEAAADCEgEFDcNWAOEBFgQBAAAA0BIBBQ3DSgDhARYEAQAAANASAQUNg/kA4QEWBAEAAADQEgEFDWNTAeEBFgQBAAAA0RIBBw3jFQDhAR4AAQAAANISAQYNoxcA4QEMIAEAAADTEgEHDcMmAOEBDCABAAAA1BIBBw3jFQDhAR4AAQAAANISAQINI6cA4QEeIAEAAADSEgEEDUPCAOEBDCABAAAA1xIBBw3jtwDhARpAAQAAANgSAQcNw1YA4QEWBAEAAADdEgEFDcNKAOEBFgQBAAAA3RIBBQ3jFQDhARpAAQAAANgSAQUNg6cA4QEaQAEAAADYEgEFDWP1AOEBFgQBAAAA3RIBBQ1jwQDhAR5AAQAAAN4SAQYNgykA4QEMIAEAAADfEgEHDSPNAOEBDCABAAAA4BIBBw2DKQDhAQwgAQAAAOESAQcN4zoA4QEMIAEAAADiEgEHDWNWAOEBGkABAAAA3hIBBQ2DfwDhAQwgAQAAAOQSAQcNYx8A4QEWBAEAAADlEgEHDWMbAOEBDCABAAAA5hIBBw2DJADhAQwgAQAAAOcSAQcNA0YA4QEWBAEAAADoEgEHDcNWAOEBFgQBAAAA7BIBBQ3DSgDhARYEAQAAAOwSAQUN4xUA4QEgQAEAAADeEgECDaPyAOEBFgQBAAAA7BIBBw3jawDhAR5AAQAAAN4SAQQNQ2QB4QEWBAEAAADuEgEHDUNXAOEBDCABAAAA7xIBBw0jHQDhAQwgAQAAAPASAQcNo1cA4QEMIAEAAADxEgEHDaP4AOEBHgABAAAA8hIBBg2DQwDhARpAAQAAAPMSAQcNYx8A4QEaQAEAAADzEgEFDeMVAOEBIEABAAAA8xIBAg0DRgDhARYEAQAAAPYSAQcNwzIA4QEeIAEAAADyEgEEDeMVAOEBGkABAAAA8hIBBQ2DKQDhAR4gAQAAAPkSAQYNA0YA4QEWBAEAAAD6EgEHDYPBAOEBDCABAAAA+xIBBw3DwQDhAQwgAQAAAPwSAQcN4ykA4QEeAAEAAAD9EgEGDYMfAOEBDCABAAAA/hIBBw3jFQDhARpAAQAAAP0SAQUNAyoA4QEaQAEAAAD9EgEFDaNlAOEBDCABAAAAARMBBw0DcQDhARpAAQAAAAITAQcNY3sA4QEMIAEAAAADEwEHDSNrAOEBHgABAAAABBMBBg3jFQDhAR4AAQAAAAQTAQINo00A4QEMIAEAAAADEwEFDaMmAOEBGkABAAAAAhMBBQ3DJgDhAQwgAQAAAAgTAQcN4xUA4QEaQAEAAAACEwEFDSNxAOEBGkABAAAAAhMBBQ2jAwHhAQwgAQAAAAsTAQcNA/kA4QEeIAEAAAAMEwEGDUNkAOEBHiABAAAADRMBBg1jVgDhARYEAQAAAA4TAQcN438A4QEeIAEAAAANEwEEDeMVAOEBIAABAAAADBMBAg1jMQDhARwMAQAAABETAQcNY1YA4QEgAAEAAAAMEwECDcNWAOEBFgQBAAAAGBMBBQ3DSgDhARYEAQAAABgTAQUN41YA4QEcDAEAAAAVEwEHDWMbAOEBDCABAAAAFhMBBw3jFQDhARpAAQAAAAwTAQUNo/IA4QEWBAEAAAAYEwEHDQN4AOEBHgABAAAADBMBBg1DKADhAQwgAQAAABoTAQcNo4UA4QEMIAEAAAAbEwEHDcPLAOEBGkABAAAAHBMBBw1jGQDhARYEAQAAAB0TAQcNwyMA4QEaQAEAAAAcEwEFDeMVAOEBGkABAAAAHBMBBQ0jZADhAR4gAQAAACATAQYNY6AA4QEMIAEAAAAhEwEHDaOKAOEBFgQBAAAAIhMBBw1jGwDhAQwgAQAAACMTAQcNI2AA4QEMIAEAAAAgEwEFDeMZAOEBGkABAAAAIBMBBQ3jFQDhARpAAQAAACATAQUN45kA4QEeIAEAAAAnEwEGDYNDAOEBDCABAAAAKBMBBw3DIwDhARpAAQAAACcTAQUN41YA4QEcDAEAAAAqEwEHDeMVAOEBGkABAAAAJxMBBQ1jMQDhARwMAQAAACwTAQcNozcA4QEWBAEAAAAtEwEHDWNnAOEBHgABAAAALhMBBg3jFQDhAR4AAQAAAC4TAQINw8oA4QEeAAEAAAAuEwEEDWMbAeEBFgQBAAAAMRMBBw4jgADnARgwAQAAADITEQUNI4AA4QEYMAEAAAAyEwEHDUMdAOEBFgQBAAAANBMBBw0D5wDhAQwgAQAAADUTAQcNQx0A4QEWBAEAAAA2EwEHDSN+AeEBDCABAAAANxMBBw1jGwDhAQwgAQAAADgTAQcNg1wA4QEWBAEAAAA5EwEHDWNOAOEBSgQBAAAAOhMBBg0DJwDhAQwgAQAAADsTAQcNo6AA4QEMIAEAAAA8EwEHDYNkAOEBGkABAAAAOhMBBQ3jeADhASwEAQAAADoTAQINw0oA4QEsBAEAAAA6EwECDeMVAOEBFgQBAAAAQBMBBw3jFQDhAR5AAQAAADoTAQINQwkB4QEcDAEAAABCEwEHDWMbAOEBDCABAAAAQxMBBw1DjADhAQwgAQAAAEQTAQcNQ2MA4QEaQAEAAAA6EwEFDUM5AOEBDCABAAAARhMBBw0jwwDhAQwgAQAAAEcTAQcNgx0A4QEWBAEAAABIEwEHDYMmAOEBDCABAAAASRMBBw1DwwDhARpAAQAAAEoTAQcNQzMA4QEaQAEAAABKEwEFDSMjAeEBHgABAAAATBMBBg2DHQDhAQwgAQAAAE0TAQcNw0oA4QEMIAEAAABOEwEHDQMjAOEBDCABAAAATxMBBw2jJgDhARpAAQAAAEwTAQUNwyYA4QEMIAEAAABREwEHDeMVAOEBGkABAAAATBMBBQ2jIwDhARYEAQAAAFMTAQcNY2kA4QEcDAEAAABUEwEHDWMbAOEBDCABAAAAVRMBBw3j1ADhAR4AAQAAAEwTAQQNwzEA4QEeAAEAAABXEwEGDYMXAOEBDCABAAAAWBMBBw1jKADhAR4AAQAAAFcTAQQNo1cA4QEMIAEAAABaEwEHDeMVAOEBIAABAAAAVxMBAg0jNQDhAR4gAQAAAFwTAQYN4ykA4QEeAAEAAABdEwEGDYMfAOEBDCABAAAAXhMBBw3jFQDhARpAAQAAAF0TAQUNYxwA4QEWBAEAAABgEwEHDQMqAOEBHgABAAAAXRMBBA0DRgDhARYEAQAAAGITAQcNYxwA4QEWBAEAAABjEwEHDQMZAOEBDCABAAAAZBMBBw1DMQDhARpAAQAAAFwTAQUN4xUA4QEaQAEAAABcEwEFDSPSAOEBFgQBAAAAZxMBBw1D1gDhAR4gAQAAAGgTAQYNY1YA4QEaQAEAAABoEwEFDeMVAOEBGkABAAAAaBMBBQ2D1gDhARogAQAAAGgTAQUN48MA4QEeAAEAAABsEwEGDcPYAOEBGkABAAAAbRMBBw3jFQDhARpAAQAAAG0TAQUNYx8A4QEgAAEAAABsEwECDeMVAOEBGkABAAAAbBMBBQ3DpgDhAQwgAQAAAHETAQcNg2kA4QEeIAEAAABsEwEEDQNWAOEBHiABAAAAcxMBBg3DIwDhAR4AAQAAAHMTAQQN4xUA4QEaQAEAAABzEwEFDUOPAOEBFgQBAAAAdhMBBw2jLgHhAQwgAQAAAHcTAQcNoyMA4QEWBAEAAAB4EwEHDWMbAOEBDCABAAAAeRMBBw2jKgDZARYEAQAAAHoTAQcNI2AA4QEMIAEAAAB7EwEHDSNiAOEBFgQBAAAAehMBBQ3DSgDhARYEAQAAAHoTAQUNoz4A4QEcDAEAAAB+EwEHDWMbAOEBDCABAAAAfxMBBw+jFwDhAUQMAQAAAIATAQYPg0wA4QEMIAEAAACBEwEHD+MVAOEBHgABAAAAgBMBAg8jZQDhAR5AAQAAAIATAQQPwwIA4QEwBAEAAACEEwEGD0MoAOEBFgQBAAAAhBMBBw/DSgDhARYEAQAAAIQTAQUPIyYA4QEMIAEAAACHEwEHD+MVAOEBDCABAAAAiBMBBw+jIwDhARYEAQAAAIkTAQcPg2MA4QEMIAEAAACKEwEHD2MbAOEBDCABAAAAixMBBw8j4QDhAQwgAQAAAIwTAQcP48cA4QEMIAEAAACPEwEFD2M3AOEBDCABAAAAjhMBBw+jZwDhAQwgAQAAAI8TAQUP41kA4QEMIAEAAACQEwEHD8NWAOEBFgQBAAAAlRMBBQ/DSgDhARYEAQAAAJUTAQUP41YA4QEcDAEAAACTEwEHD2MbAOEBDCABAAAAlBMBBw8DiwDhARYEAQAAAJUTAQcPQ38A4QEuBAEAAACWEwEGD+N+AOEBDCABAAAAlxMBBw/jHgDhARYEAQAAAJgTAQUPw0oA4QEWBAEAAACWEwEFD+MVAOEBHkABAAAAlhMBAg/DIADhARwMAQAAAJsTAQcPYxsA4QEMIAEAAACcEwEHD0MZAOEBRCABAAAAnRMBBg9jGQDhASBAAQAAAJ0TAQIPg0MA4QEMIAEAAACfEwEHD8MjAOEBGkABAAAAnRMBBQ/jFQDhAS5AAQAAAJ0TAQIPYzEA4QEcDAEAAACiEwEHD+MeAOEBGkABAAAAoxMBBw/jFQDhAQwgAQAAAKQTAQcPgz0A4QEeAAEAAAClEwEGD+MVAOEBGkABAAAApRMBBQ8DZwDhAQwgAQAAAKUTAQUPw88A4QEMIAEAAACoEwEHD+NpAOEBHiABAAAAqRMBBg8DQADhARpAAQAAAKkTAQUPw1YA4QEWBAEAAACvEwEFD8NKAOEBFgQBAAAArxMBBQ/jFQDhAS5AAQAAAKkTAQIP44EA4QEaQAEAAACpEwEFD8MaAOEBFgQBAAAArxMBBw8jtQDhAR4AAQAAAKkTAQIP4x4A4QEMIAEAAACxEwEHDwNGAOEBDCABAAAAshMBBw/jFQDhARpAAQAAALATAQUPI6AB4QEMIAEAAAC0EwEHD4MmAOEBDCABAAAAtRMBBw+DOwDhAQwgAQAAALYTAQcPI0gA4QEMIAEAAAC3EwEHD4NeAOEBDCABAAAAuBMBBw+DPQHhAQwgAQAAALkTAQcPQzgA4QEeIAEAAAC6EwEGDwNAAOEBGkABAAAAuhMBBQ9DKADhAQwgAQAAALwTAQcPA1gA4QEeIAEAAAC6EwEED+NiAOEBDCABAAAAvhMBBw/jFQDhAS5AAQAAALoTAQIPYzEA4QEcDAEAAADAEwEHDwOFAeEBDCABAAAAwRMBBw+DhQDhAR4AAQAAAMITAQYP4xUA4QEaQAEAAADCEwEFD8PyAOEBHgABAAAAxBMBBg+DTADhAQwgAQAAAMUTAQcP4xUA4QEaQAEAAADEEwEFD2OpAOEBHgABAAAAxBMBBA9jNwDhARpAAQAAAMgTAQcPAxoA4QEaQAEAAADIEwEFD+OLAOEBDCABAAAAyhMBBw/DHADhAQwgAQAAAMsTAQcPI0EA4QEMIAEAAADMEwEHD+MVAOEBGkABAAAAyBMBBQ+DWADhARYEAQAAAM4TAQcPA08A4QEeAAEAAADPEwEGD+MVAOEBDCABAAAA0BMBBw/j5QHhAQwgAQAAANETAQcPYxsA4QEMIAEAAADSEwEHD2OiAOEBFgQBAAAA0xMBBw9DjADhAR4gAQAAANQTAQYPA4YA4QEgQAEAAADUEwECD8MqAOEBDCABAAAA1hMBBw9jGwDhARYEAQAAANcTAQcPg0wA4QEMIAEAAADYEwEHDwMqAOEBDCABAAAA2BMBBQ/DmgDhARpAAQAAANQTAQUPY6QA4QEMIAEAAADbEwEHD6MXAOEBDCABAAAA3BMBBw/DVgDhARYEAQAAAOATAQUPw0oA4QEWBAEAAADgEwEFD+MVAOEBLiABAAAA1BMBAg+j9ADhARYEAQAAAOATAQcPIyYA4QEeQAEAAADhEwEGD2MfAOEBGkABAAAA4RMBBQ/jFQDhASBAAQAAAOETAQIPYzEA4QEcDAEAAADkEwEHDwMqAOEBGkABAAAA4RMBBQ+j0QDhAR4AAQAAAOYTAQYPwyMA4QEeAAEAAADmEwEED+MVAOEBHgABAAAA5hMBAg9joADhAS4EAQAAAOkTAQYPQxYA4QEMIAEAAADqEwEHD4NEAOEBIgABAAAA6xMBBg9jGQDhASBAAQAAAOkTAQIPgzUA4QEaQAEAAADtEwEHD6MYAOEBFgQBAAAA7hMBBw+DQwDhASIEAQAAAOkTAQIPw0oA4QEWBAEAAADpEwEFDyMlAOEBDCABAAAA8RMBBw/jpwDhAQwgAQAAAPITAQcP4xUA4QEaQAEAAADpEwEFD2NpAOEBHAwBAAAA9BMBBw9jGwDhAQwgAQAAAPUTAQcPg6sA4QEaQAEAAADpEwEFDyNBAOEBDCABAAAA9xMBBw/jMQDhAQwgAQAAAPgTAQcPg0MA4QEeAAEAAAD5EwEGD2MfAOEBIAABAAAA+RMBAg+DHwDhAQwgAQAAAPsTAQcP4xUA4QEgAAEAAAD5EwECDwMqAOEBGkABAAAA+RMBBQ8jJgDhAR4AAQAAAOETAUYPYx8A4QEaQAEAAADiEwFFD+MVAOEBIAABAAAA4xMBQg9jMQDhARwMAQAAAAEUAQcPAyoA4QEaQAEAAADlEwFFDwPmAeEBDCABAAAAAxQBBxDDoAEKAhkwAQAAAAYUIQUR46ABDwIZMAEgAQAGFBEFD+OgARECGTABAAEABhQBBQ+DJgDhAR4AAQAAAAcUAQYP4yYA4QEaQAEAAAAHFAEFD+MVAOEBGkABAAAABxQBBQ8jHwHhARYEAQAAAAoUAQcPI6oB4QEWBAEAAAALFAEHD8MmAOEBFgQBAAAACxQBBQ/DSgDhARYEAQAAAAsUAQUPg3QA4QEaQAEAAAAOFAEHDwNAAOEBFgQBAAAADxQBBw9DKADhAQwgAQAAABAUAQcPA1gA4QEaQAEAAAAOFAEFD+MVAOEBDCABAAAAEhQBBw9jMQDhARwMAQAAABMUAQcPYxsA4QEMIAEAAAAUFAEHD4MEAeEBHgABAAAAFRQBBg8joQDhARpAAQAAABYUAQcP4xkA4QEaQAEAAAAVFAEFD+NWAOEBHAwBAAAAGBQBBw9jGwDhAQwgAQAAABkUAQcP4xUA4QEaQAEAAAAVFAEFD4OsAOEBFgQBAAAAGxQBBw/DcQDhAQwgAQAAABwUAQcSoxcA4QEeIAEAAAAdFAEGEoNMAOEBDCABAAAAHhQBBxLjFQDhARpAAQAAAB0UAQUSI2UA4QEMIAEAAAAdFAEFEgOiAOEBHgABAAAAIRQBBhIj5gHhAS4gAQAAACIUAQYSo64B4QEeIAEAAAAjFAEGEqMmAOEBGkABAAAAIxQBBRLjFQDhARpAAQAAACMUAQUSI48A4QEMIAEAAAAnFAEFEmOgAOEBDCABAAAAJxQBBRKjogDhAR4gAQAAACMUAQQSY1EA4QEeIAEAAAApFAEGEqMjAOEBDCABAAAAKhQBBxLDIwDhAQwgAQAAACoUAQUS43gA4QEMIAEAAAAsFAEHEuNVAOEBHiABAAAALRQBBhLDpgDhAQwgAQAAAC4UAQcSo3kA4QEMIAEAAAAvFAEHEmM3AOEBDCABAAAAMBQBBxJjwADhAQwgAQAAADEUAQcSoyMA4QEMIAEAAAAyFAEHEmNcAOEBDCABAAAAMxQBBxIjQADhAQwgAQAAADQUAQcSI1cA4QEWBAEAAAA1FAEHEsNMAOEBDCABAAAANhQBBxLDmgDhAR4gAQAAAC0UAQQSo1IA4QEMIAEAAAA4FAEHEiNGAOEBDCABAAAAORQBBxLDVgDhARYEAQAAAD0UAQUSw0oA4QEWBAEAAAA9FAEFEuMVAOEBGkABAAAALRQBBRLjzgDhARYEAQAAAD0UAQcSA88A4QEeIAEAAAA+FAEGEuNRAOEBDCABAAAAPxQBBxJjJADhAQwgAQAAAEAUAQcSY1YA4QEaQAEAAAA+FAEFEoN/AOEBDCABAAAAQhQBBxLDVgDhARYEAQAAAEkUAQUSw0oA4QEWBAEAAABJFAEFEuMVAOEBGkABAAAAPhQBBRKjIwDhARYEAQAAAEYUAQcSY2kA4QEcDAEAAABHFAEHEmMbAOEBDCABAAAASBQBBxKj8gDhARYEAQAAAEkUAQcS4+MA4QEaQAEAAAA+FAEFEkPCAOEBDCABAAAASxQBBxIjYADhAQwgAQAAAEsUAQUSI0wA4QEeAAEAAABNFAEGEoMfAOEBDCABAAAAThQBBxJDqQDhARpAAQAAAE8UAQcSo5cA4QEWBAEAAABQFAEHEsMnAeEBHgABAAAAURQBBhIDQADhARYEAQAAAFIUAQcS4xUA4QEaQAEAAABRFAEFEkMOAeEBHiABAAAAURQBBBIjegDhARYEAQAAAFUUAQcSI6EA4QEeQAEAAABWFAEGEmMZAOEBGkABAAAAVhQBBRKDQwDhAQwgAQAAAFgUAQcSwyMA4QEeAAEAAABWFAEEEsNWAOEBFgQBAAAAXRQBBRLDSgDhARYEAQAAAF0UAQUS4xUA4QEaQAEAAABWFAEFEqM3AOEBFgQBAAAAXRQBBRLDVgDhARYEAQAAAGAUAQUSw0oA4QEWBAEAAABgFAEFEoMdAeEBFgQBAAAAYBQBBxLjrgDhAS5AAQAAAGEUAQYSA4YA4QEaQAEAAABhFAEFEoNMAOEBDCABAAAAYxQBBxIDKgDhAQwgAQAAAGMUAQUS41YA4QEcDAEAAABlFAEHEmMbAOEBDCABAAAAZhQBBxLjFQDhASAAAQAAAGEUAQISYzEA4QEcDAEAAABoFAEHEoPPAOEBGkABAAAAYRQBBRLjzgDhARYEAQAAAGoUAQcSoxgA4QEaQAEAAABrFAEFEkMlAOEBGkABAAAAaxQBBRLjFQDhARpAAQAAAGsUAQUSw7AA4QEaQAEAAABrFAEFEiNrAOEBHgABAAAAbxQBBhKDHwDhAQwgAQAAAHAUAQcS4xUA4QEgAAEAAABvFAECEmMxAOEBHAwBAAAAchQBBxIDKgDhAR4AAQAAAG8UAQQSY3wA4QEeAAEAAAB0FAEGEqMwAOEBGkABAAAAdBQBBRKjRgDhAQwgAQAAAHYUAQcSwzAA4QEeAAEAAAB0FAEEEqNSAOEBDCABAAAAeBQBBxKDJADhAQwgAQAAAHkUAQcS4xUA4QEeAAEAAAB0FAECEqPPAOEBFgQBAAAAexQBBxJDVwDhAR4AAQAAAHwUAQYSg0wA4QEeAAEAAAB9FAEGEuMVAOEBGkABAAAAfRQBBRIDKgDhAR4AAQAAAH0UAQQSg18A4QEMIAEAAACAFAEHEiNlAOEBHgABAAAAfBQBBBLDHwDhARYEAQAAAIIUAQcSoyQA4QEcDAEAAACDFAEHEkOjAOEBHkABAAAAhBQBBhKDsQDhARpAAQAAAIQUAQUSI4QA4QEMIAEAAACGFAEHEsNWAOEBFgQBAAAAkBQBBRLDSgDhARYEAQAAAJAUAQUS4xUA4QEaQAEAAACEFAEFEgOiAOEBHgABAAAAihQBBhJDKADhAQwgAQAAAIsUAQcSA1gA4QEeAAEAAACKFAEEEuMVAOEBGkABAAAAihQBBRJjXADhARYEAQAAAI4UAQcSo8MA4QEeQAEAAACEFAEEEmPtAOEBFgQBAAAAkBQBBxLjHgDhAQwgAQAAAJEUAQcSwyYA4QEeAAEAAACSFAEGEuMVAOEBGkABAAAAkhQBBRIDKgDhAR4AAQAAAJIUAQQSw+gA4QEeAAEAAACVFAEGEoOiAOEBHgABAAAAlhQBBhJjVgDhARpAAQAAAJUUAQUSoyMA4QEMIAEAAACYFAEHEsMjAOEBDCABAAAAmBQBBRKDfwDhAQwgAQAAAJoUAQcSY1YA4QEaQAEAAACVFAEFEmPmAOEBDCABAAAAnBQBBxJjkQDhAQwgAQAAAJwUAQUS4xUA4QEeAAEAAACVFAECEuNrAOEBHgABAAAAlRQBBhJjEgHhAQwgAQAAAKAUAQcSI6EA4QEeAAEAAAChFAEGEoNDAOEBDCABAAAAohQBBxLDIwDhAR4AAQAAAKEUAQQS4xUA4QEaQAEAAAChFAEFEiO4AOEBHgABAAAApRQBBhIDQADhARpAAQAAAKUUAQUSQygA4QEMIAEAAACnFAEHEuMVAOEBHkABAAAApRQBAhIDQADhARpAAQAAAKYUAUUSQygA4QEMIAEAAACqFAEHEuMVAOEBGkABAAAAqBQBRRJDdADhAR4AAQAAAKUUAQQSQyEB4QEMIAEAAACtFAEHEgNGAOEBDCABAAAArhQBBxKjIwDhARYEAQAAAK8UAQcSY2kA4QEcDAEAAACwFAEHEmMbAOEBDCABAAAAsRQBBxLjIQDhAQwgAQAAALIUAQcSA78A4QEWBAEAAACzFAEHEiOOAeEBDCABAAAAtBQBBxLjKgHhARpAAQAAALUUAQcSoyYA4QEaQAEAAAC1FAEFEuMVAOEBHgABAAAAtRQBAhIjcQDhARpAAQAAALUUAQUSI0YA4QEMIAEAAAC5FAEHEqN7AOEBDCABAAAAuhQBBxKDTADhAR4gAQAAALsUAQYSowMB4QEeAAEAAAC8FAEGEoN/AOEBDCABAAAAvRQBBxJjGwDhAQwgAQAAAL4UAQcS4xUA4QEaQAEAAAC8FAEFEgN4AOEBGkABAAAAvBQBBRJjZADhARYEAQAAAMEUAQcSw0wA4QEMIAEAAADCFAEHEsNWAOEBFgQBAAAAxxQBBRLDSgDhARYEAQAAAMcUAQUS41YA4QEcDAEAAADFFAEHEmMbAOEBDCABAAAAxhQBBxIjygDhARYEAQAAAMcUAQcSQ8oA4QEeAAEAAADIFAEGEsMwAOEBHgABAAAAyBQBBBLjFQDhARpAAQAAAMgUAQUSg0QA4QEeAAEAAADLFAEGEoMfAOEBDCABAAAAzBQBBxIDIQDhAR4AAQAAAMsUAQQS4xUA4QEeQAEAAADLFAECEqPdAOEBHgABAAAAzxQBBhIDQADhARpAAQAAAM8UAQUS4xUA4QEeAAEAAADPFAECEgNAAOEBGkABAAAA0BQBRRLjFQDhARpAAQAAANEUAUUSQ3QA4QEeAAEAAADPFAEEEoMkAOEBHgABAAAA1RQBBhLjHgDhAQwgAQAAANYUAQcS4xUA4QEeAAEAAADVFAECEsMkAOEBHkABAAAA1RQBBBKDewDhARYEAQAAANkUAQcSI80A4QEMIAEAAADaFAEHEsNWAOEBFgQBAAAA3RQBBRLDSgDhARYEAQAAAN0UAQUSg6wA4QEWBAEAAADdFAEHEoMlAOEBDCABAAAA3hQBBxKDQAHhAR4gAQAAAN8UAQYSwwIA4QEeIAEAAADgFAEGEgNAAOEBGkABAAAA4BQBBRLjFQDhARpAAQAAAOAUAQUS44EA4QEeAAEAAADgFAEEEqN9AOEBDCABAAAA5BQBBxLjaQDhAQwgAQAAAOUUAQcSw6YA4QEMIAEAAADmFAEHEqN5AOEBDCABAAAA5xQBBxJjGwDhAQwgAQAAAOgUAQcSAyMA4QEeAAEAAADpFAEGEiMmAOEBDCABAAAA6hQBBxLjFQDhAR4AAQAAAOkUAQISAzIA4QEeAAEAAADpFAEEEiMlAOEBFgQBAAAA7RQBBxJDvwDhAQwgAQAAAO4UAQcSQ0UA4QEMIAEAAADvFAEHEiNRAOEBDCABAAAA8BQBBxLDAgDhAQwgAQAAAPEUAQcSo0sA4QEMIAEAAADyFAEHEuNVAOEBDCABAAAA8xQBBxLDVgDhARYEAQAAAAEVAQUSw0oA4QEWBAEAAAABFQEFEuMVAOEBGkABAAAA3xQBBRLDQgDhAQwgAQAAAPcUAQcSQzgA4QEeAAEAAAD4FAEGEmNnAOEBDCABAAAA+xQBRxLDygDhAQwgAQAAAPsUAUUSY04A4QEMIAEAAAD7FAEHEkNjAOEBGkABAAAA3xQBBRKjhADhAR4AAQAAAP0UAQYS4xUA4QEaQAEAAAD9FAEFEkM5AOEBDCABAAAA/xQBBxKDOgDhAQwgAQAAAAAVAQcSY7sA4QEWBAEAAAABFQEHEkPmAdkBDCABAAAAAhUBBxKDuQHhAS4AAQAAAAMVAQYSgx0A4QEaQAEAAAADFQEFEuMVAOEBHkABAAAAAxUBABJj+QDhAR4AAQAAAAMVAQQSg8MA4QEuAAEAAAAHFQEGEkOmAOEBDCABAAAACBUBBxIjhADhAQwgAQAAAAkVAQcSw1YA4QEWBAEAAAATFQEFEsNKAOEBFgQBAAAAExUBBRLjFQDhARpAAQAAAAcVAQUSA6IA4QEeAAEAAAANFQEGEkMoAOEBDCABAAAADhUBBxIDWADhAR4AAQAAAA0VAQQS4xUA4QEgAAEAAAANFQECEmNcAOEBFgQBAAAAERUBBxKjwwDhARpAAQAAAAcVAQUSY+0A4QEWBAEAAAATFQEFEmPmAeEBLgABAAAAFBUBBhKjJgDhARpAAQAAABQVAQUSwyYA4QEWBAEAAAAUFQEFEgNGAOEBDCABAAAAFxUBBxLDSgDhARYEAQAAABQVAQUS4xUA4QEaQAEAAAAUFQEFEoN0AOEBHgABAAAAGhUBBhIDQADhARYEAQAAABsVAQcSA1gA4QEaQAEAAAAaFQEFEuMVAOEBHgABAAAAGhUBAhJjMQDhARwMAQAAAB4VAQcSYxsA4QEMIAEAAAAfFQEHEuPUAOEBGkABAAAAFBUBBROD5gHSARwMAQAAACMVIQUUo+YB6wEkDAFAAQAjFREEFcPmAdUBJAwBAAAAIxUBFBPjAwDkAhwMAQAAAOAXIg0UIwQA6AIcDAEAAABoDhINFSMEAOwCHAwBAAAA8AQCDRXD+ADhAR4AAQAAACcVAQYV4zoA4QEMIAEAAAAoFQEHFQOGAOEBFgQBAAAAKRUBBxWDTADhAQwgAQAAACoVAQcV4xUA4QFEQAEAAAAnFQECFYPPAOEBGkABAAAAJxUBBRXj5gHhAR4gAQAAAC0VAQYVw6YA4QEMIAEAAAAuFQEHFUOmAOEBDCABAAAALxUBBxWjIwDhAQwgAQAAADAVAQcVw1YA4QEWBAEAAAA7FQEFFcNKAOEBFgQBAAAAOxUBBRVjGwDhAQwgAQAAADMVAQcV4xUA4QEaQAEAAAAtFQEFFQNPAOEBDCABAAAANRUBBxXj4wDhAR4AAQAAAC0VAQQVIxgA4QEMIAEAAAA3FQEHFWOCAOEBDCABAAAAOBUBBxWjUgDhAQwgAQAAADkVAQcVgyQA4QEMIAEAAAA6FQEHFSM9AOEBFgQBAAAAOxUBBxXjxADhAR5AAQAAADwVAQYVYx8A4QEaQAEAAAA8FQEFFeMVAOEBLkABAAAAPBUBAhUDZwDhARogAQAAADwVAQUVA+cB2QEeQAEAAABAFQEGFYMdAOEBGkABAAAAQBUBBRXjFQDhAR4AAQAAAEAVAQIVYzEA4QEcDAEAAABDFQEHFeMpAOEBIAQBAAAARBUBBhVjHwDhARpAAQAAAEQVAQUV4xUA4QEWBAEAAABGFQEHFSN6AOEBHAwBAAAARxUBBxVjGwDhAQwgAQAAAEgVAQcVAyoA4QEaQAEAAABEFQEFFUMlAOEBFgQBAAAAShUBBxXjHwDhAQwgAQAAAEsVAQcVwx0A4QEMIAEAAABMFQEHFYN+AOEBDCABAAAATRUBBxVDiwDhAQwgAQAAAE4VAQcVY8kA4QEeAAEAAABAFQEEFeM6AOEBDCABAAAAUBUBBxWjQADhAQwgAQAAAFEVAQcVQyAA4QEMIAEAAABSFQEHFcMZAOEBIgABAAAAUxUBBhVjGwDhAQwgAQAAAFQVAQcVgyIA4QEcDAEAAABVFQEHFaMaAOEBIgQBAAAAVhUBBhUDGQDhAQwgAQAAAGMVAUcVoycA4QEaQAEAAABkFQFHFYMnAOEBFgQBAAAAZRUBRxUjKwDhAQwgAQAAAFoVAQcVQysA4QEaQAEAAABnFQFFFeMVAOEBHgABAAAAaBUBQhXjIQDhAQwgAQAAAF0VAQcUYyAA5wEYMAEAAABeFREFFWMgAOEBIgQBAAAAXxUBBhUjGgDhARYEAQAAAGAVAQcVYzcA4QEMIAEAAABhFQEHFUMgAOEBDCABAAAAYhUBBxUDGQDhAQwgAQAAAGMVAQcVgzAA4QEaQAEAAABkFQEHFaMwAOEBFgQBAAAAZRUBBxWjRgDhAQwgAQAAAGYVAQcVwzAA4QEaQAEAAABkFQEFFeMVAOEBHgABAAAAZBUBAhXDGgDhARwMAQAAAGkVAQcVwx4A4QEWBAEAAABqFQEHFSMgAOEBDCABAAAAbBUBBRWDfgDhAQwgAQAAAGwVAQcV40QA4QEWBAEAAABtFQEHFYMcAOEBFgQBAAAAbhUBBxXDGgDhARwMAQAAAG8VAQcVYyAA4QEMIAEAAABwFQEHFUNJAOEBDCABAAAAcRUBBxVDJADhARYEAQAAAHIVAQcVAy0A4QEWBAEAAABzFQEHFcMaAOEBHAwBAAAAdBUBBxVjIADhAQwgAQAAAHUVAQcVIxoA4QEWBAEAAAB2FQEHFcMaAOEBHAwBAAAAdxUBBxVDLQDhAQwgAQAAAHgVAQcVgxwA4QEWBAEAAAB5FQEHFcMaAOEBHAwBAAAAehUBBxVjIADhAQwgAQAAAHsVAQcVQ0kA4QEMIAEAAAB8FQEHFQM4AOEBDCABAAAAfRUBBxWjTgDhAQwgAQAAAH4VAQcVwzwA4QEWBAEAAAB/FQEHFQNPAOEBHgABAAAAgBUBBhWjqgDhAQwgAQAAAIEVAQcVI7oA4QEMIAEAAACCFQEHFeMVAOEBGkABAAAAgBUBBRUjZQDhAQwgAQAAAIAVAQUVI30A4QEMIAEAAACFFQEHFcNCAOEBDCABAAAAhhUBBRVjFADhAQwgAQAAAIYVAQUVIxoA4QEWBAEAAACIFQEHFSPnAdkBHgABAAAAiRUBBhXj/ADhAQwgAQAAAIoVAQcVYyAA4QEMIAEAAACLFQEHFWM3AOEBDCABAAAAjBUBBxVDIADhAQwgAQAAAI0VAQcV4x4A4QEMIAEAAACOFQEHFUMlAOEBGkABAAAAiRUBBRWjsADhARYEAQAAAJAVAQcV4xUA4QEgAAEAAACJFQECFaM8AOEBDCABAAAAkhUBBxVD5wHhAQwgAQAAAJMVAQcVoycA4QEaQAEAAACaFQFHFYMnAOEBGkABAAAAmxUBRRVDKwDhARpAAQAAAJwVAUUV4xUA4QEaQAEAAACdFQFFFWMgAOEBDCABAAAAmBUBBxVjNwDhAQwgAQAAAJkVAQcVgzAA4QEaQAEAAACaFQEHFaMwAOEBGkABAAAAmhUBBRXDMADhARpAAQAAAJoVAQUV4xUA4QEaQAEAAACaFQEFFQNBAOEBDCABAAAAnhUBBxVjoQDhAR4AAQAAAIkVAQQVo5IB4QEMIAEAAACgFQEHFWOyAOEBDCABAAAAoRUBBxXDZQDhASwEAQAAAKIVAQYVoxcA4QEMIAEAAACjFQEHFcMCAOEBDCABAAAApBUBBxWDWADhARpAAQAAAKUVAQcVoxgA4QEgQAEAAAClFQECFWMqAOEBDCABAAAApxUBBxXjFQDhAS4gAQAAAKUVAQIVwxwA4QEaQAEAAAClFQEFFeMeAOEBFgQBAAAAohUBBRVDJQDhARYEAQAAAKsVAQcV4xkA4QEWBAEAAACsFQEHFWMbAOEBDCABAAAArRUBBxXjlgDhAQwgAQAAAK4VAQcVoyMA4QEWBAEAAACvFQEHFcMgAOEBHAwBAAAAsBUBBxVjGwDhAQwgAQAAALEVAQcVI0wA4QEMIAEAAACyFQEHFSNGAOEBDCABAAAAsxUBBxUjCQHhAQwgAQAAALQVAQcVw1YA4QEWBAEAAAC4FQEFFcNKAOEBFgQBAAAAuBUBBRVjGwDhAQwgAQAAALcVAQcVY6IA4QEWBAEAAAC4FQEHFWPnAdkBDCABAAAAuRUBBxVj7gDhARYEAQAAALoVAQcVg18A4QEWBAEAAAC7FQEHFaNIAOEBHiABAAAAvBUBBhUDQADhASAAAQAAALwVAQIV4xUA4QEeAAEAAAC8FQECFcNUAOEBDCABAAAAvBUBBRXjIADhAQwgAQAAAMAVAQcVg1IA4QEMIAEAAADBFQEHFYPnAeEBDCABAAAAwhUBBxVDQgDhAR4AAQAAAMMVAQYVYyoA4QEMIAEAAADEFQEHFeMVAOEBGkABAAAAwxUBBRWDSQDZAQwgAQAAAMYVAQcVozQA4QEMIAEAAAA3FgEFFcMzAOEBHiABAAAAyBUBBhXDGADhAQwgAQAAAMkVAQcV4y0A4QEMIAEAAADKFQEHFWMcAOEBFgQBAAAAyxUBBxUDNADhARYEAQAAAMwVAQcVAyIA4QEMIAEAAADQFQEFFQMZAOEBDCABAAAAzhUBBxWjJwDhARpAAQAAAM8VAQcVozwA4QEMIAEAAADQFQEHFQMZAOEBDCABAAAA0RUBBxWDMADhARpAAQAAANIVAQcVY0YA4QEMIAEAAADUFQEFFaM8AOEBDCABAAAA1BUBBRWDOQDhASBAAQAAAJUJAQIVIyYA4QEuAAEAAADWFQEGFYMfAOEBDCABAAAA1xUBBxXjFQDhAQwgAQAAANgVAQcVo+cB4QEMIAEAAADiFQEFFcNWAOEBHiABAAAA2hUBBhWjIwDhAQwgAQAAANsVAQcV4xUA4QEeAAEAAADaFQECFSNXAOEBFgQBAAAA3RUBBxUjegDhARYEAQAAAN4VAQcVAyoA4QEMIAEAAADaFQEFFSMtAOEBDCABAAAA4BUBBxUDRgDhAQwgAQAAAOEVAQcVIxsB4QEMIAEAAADiFQEFFSNuAOEBLgQBAAAA4xUBBhXjIQDhAQwgAQAAAOQVAQcVA0AA4QEWBAEAAADlFQEHFcMdAOEBDCABAAAA5hUBBxVjGwDhARYEAQAAAOcVAQcVoyQA4QEcDAEAAADoFQEHFYMAAeEBFgQBAAAA6RUBBxVjGwDhAQwgAQAAAOoVAQcVgzEA4QEaQAEAAADtFQEFFSMgAOEBGkABAAAA7RUBBRXDNQDhARpAAQAAAO0VAQUVAxkA4QEMIAEAAADuFQEHFaMnAOEBGkABAAAA9RUBRxWDJwDhARpAAQAAAPYVAUUVQysA4QEaQAEAAAD3FQFFFeMVAOEBGkABAAAA+BUBRRVDIADhAQwgAQAAAPMVAQcVAxkA4QEMIAEAAAD0FQEHFYMwAOEBGkABAAAA9RUBBxWjMADhARpAAQAAAPUVAQUVwzAA4QEaQAEAAAD1FQEFFeMVAOEBGkABAAAA9RUBBRWDXADhARwMAQAAAPkVAQcV4x4A4QEMIAEAAAD6FQEHFSMuAOEBDCABAAAA+xUBBxUDWADhAQwgAQAAAMYVAQUV4z0A4QEMIAEAAAD9FQEHFaNdAOEBDCABAAAA/hUBBxVDYgDhAQwgAQAAAP8VAQcVw+cB4QEMIAEAAAABFgEFFcM+AOEBDCABAAAAARYBBxWjVQDhAQwgAQAAACsWAQUVYxYB4QEaQAEAAAADFgEHFQMZAOEBDCABAAAABBYBBxXjGQDhARpAAQAAAAMWAQUV4xUA4QEaQAEAAAADFgEFFWMaAOEBDCABAAAABxYBBxUjLQDhAQwgAQAAAAgWAQcVYxwA4QEWBAEAAAAJFgEHFaMqAOEBHAwBAAAAChYBBxVjGwDhAQwgAQAAAAsWAQcVwzIA4QEaQAEAAAADFgEFFcNkAOEBDCABAAAADRYBBxWjNQDhASIEAQAAAA4WAQYVQyAA4QEMIAEAAAAPFgEHFUOiAeEBDCABAAAAGRYBBRUDGQDhAQwgAQAAABEWAQcVgzEA4QEgQAEAAAASFgECFSMgAOEBGkABAAAAFBYBBRXDNQDhARpAAQAAABQWAQcV4xUA4QEeAAEAAAAUFgECFUMgAOEBDCABAAAAFhYBBxXDKADhARwMAQAAABcWAQcVYxsA4QEMIAEAAAAYFgEHFSPsAOEBDCABAAAAGRYBBxWjJwDhARpAAQAAABoWAQcVQysA4QEaQAEAAAAaFgEFFYMwAOEBGkABAAAAHBYBBxXDMADhARpAAQAAABwWAQUVA/4A4QEMIAEAAAAeFgEHFeMhAOEBDCABAAAAHxYBBxVjOgDhAQwgAQAAACAWAQcV41YA4QEcDAEAAAAhFgEHFWMbAOEBDCABAAAAIhYBBxVjIgDhASIEAQAAACMWAQYVA1wA4QEMIAEAAAAkFgEHFcNkAOEBDCABAAAAJRYBBxVDHQDhAQwgAQAAACYWAQcVQ1QA4QEMIAEAAAAnFgEHFQMZAOEBDCABAAAAKBYBBxWDFwDhARpAAQAAACkWAQcVAxkA4QEMIAEAAAAqFgEHFaPHAOEBSCABAAAAKxYBBhVDewDhARpAAQAAACsWAQUV4xUA4QEaQAEAAAArFgEFFWMgAOEBDCABAAAALhYBBxQjbQDnARgwAQAAAC8WEQUVI20A4QEYMAEAAAAvFgEHFWMuAOEBFgQBAAAAMRYBBxXDzADhAQwgAQAAADIWAQcVwzEA4QEMIAEAAAAzFgEHFUMgAOEBDCABAAAANBYBBxXDGQDhARYEAQAAADUWAQcVYxsA4QEMIAEAAAA2FgEHFSM1AOEBDCABAAAANxYBBRUjKQDhAQwgAQAAADgWAQcVAxoA4QEMIAEAAAA4FgEFFQMZAOEBDCABAAAAOhYBBxXjGADhAQwgAQAAADoWAQUVQyAA4QEMIAEAAAA8FgEHFcMZAOEBFgQBAAAAPRYBBxWDFwDhAR4AAQAAAD4WAQYVAxkA4QEMIAEAAAA/FgEHFUMpAOEBGkABAAAAQBYBBxVjKQDhASBAAQAAAEAWAQIVQx4A4QEMIAEAAABCFgEHFcMYAOEBIgQBAAAAQxYBBhWDKQDhAQwgAQAAAEQWAQcVgxYA4QEaQAEAAABAFgEFFeMVAOEBHkABAAAAQBYBAhVDtwDZAQwgAQAAAEcWAQcVQy4A4QEMIAEAAABIFgEHFYMZAOEBDCABAAAASRYBBxUjHADhAQwgAQAAAEoWAQcVo2AA4QEWBAEAAABLFgEHFMMdAOcBGDABAAAATBYRBRXDHQDhARgwAQAAAEwWAQcVQx0A4QEWBAEAAABOFgEHFcNCAOEBDCABAAAATxYBBxXjQADhAQwgAQAAAEgWAQUVIxwA4QEMIAEAAABRFgEHFYMZAOEBDCABAAAAUhYBBxUjGgDhARYEAQAAAFMWAQcVIxoA4QEWBAEAAABUFgEHFWMuAOEBFgQBAAAAVRYBBxUDvADhAQwgAQAAAFYWAQcVoykA4QEWBAEAAABXFgEHFQNFAOEBDCABAAAAWBYBBxXjPgDhAQwgAQAAAFkWAQcV430A4QEMIAEAAABaFgEHFeMpAOEBFgQBAAAAWxYBBxUjegDhARwMAQAAAFwWAQcVYxsA4QEMIAEAAABdFgEHFcPfAOEBFgQBAAAAWxYBRxWjJADhARwMAQAAAF8WAQcVYxsA4QEMIAEAAABgFgEHFEMnAPsBDhgBQAEAYhYRBRVDJwDhATgYgQUAAGIWARYVQxQA4QEULAEAAABjFgEHFaO1AOEBHAwBAAAAZBYBBxXDfgDhARwMAQAAAGUWARcUIxgA5wEULAFAAQBnFhEFFSMYAOEBFCwBAAAAZxYBFxXDMwDhARwMAQAAAGgWAQcV40UA4QEeAAEAAABpFgEGFeMVAOEBDAQBAAAAahYBBxVDRgDhAR4AAQAAAGkWAQQVgxkA4QEMIAEAAABsFgEHFSMcAOEBDCABAAAAbRYBBxXjFQDhARQsAQAAAG4WARUVw3UA4QEsDAEAAABvFgEWFANJAOcBHAwBQAEAcRYRBRUDSQDhARwMAQAAAHEWARcVo1cA4QEcDAEAAAByFgEHFSNjAOEBHAwBAAAAcxYBBxVDoADhARwMAQAAAHQWAQcVYxgA4QEyDAEAAAB1FgEWFWM3AOEBDCABAAAAdhYBBxXjSADhAQwgAQAAAHcWAQcVw1YA4QEMIAEAAAB4FgEHFYMXAOEBGkABAAAAeRYBBxUDGgDhARpAAQAAAHkWAQUVAxkA4QEMIAEAAAB7FgEHFeMhAOEBDCABAAAAfBYBBxVjIADhAQwgAQAAAH0WAQcVYxwA4QEWBAEAAAB+FgEHFcN7AOEBFgQBAAAAfxYBBxXjIQDhAQwgAQAAAIAWAQcVYyAA4QEMIAEAAACBFgEHFQP+AOEBDCABAAAAghYBBxUjHgDhAQwgAQAAAIMWAQcVwxgA4QEWBAEAAACEFgEHFcMgAOEBHAwBAAAAhRYBBxUDRwDZAQwgAQAAAIYWAQcVYx4A4QEiAAEAAACHFgEGFYM4AOEBDCABAAAAiBYBBxXjQADhAQwgAQAAAIkWAQcVg1EA4QEMIAEAAACKFgEHFSMYAOEBDCABAAAAixYBBxUjUADhAQwgAQAAAIwWAQcVo3kA4QEMIAEAAACNFgEHFaN7AOEBDCABAAAAjhYBBxWjigDhARYEAQAAAI8WAQcVYxsA4QEMIAEAAACQFgEHFSNXAOEBFgQBAAAAkRYBBxUjpwDhAQwgAQAAAIwWAQUV4x4A4QEMIAEAAACTFgEHFWMbAOEBDCABAAAAlBYBBxXjHgDhAQwgAQAAAJUWAQcVYy4A4QEWBAEAAACWFgEHFcNgAOEBHgABAAAAlxYBBhUjawDhAQwgAQAAAJgWAQcVY8AA4QEMIAEAAACZFgEHFcNIAOEBDCABAAAAmhYBBxVjQADhAQwgAQAAAJsWAQcVgyAA4QEMIAEAAACcFgEHFeMeAOEBDCABAAAAnRYBBxVDIADhAQwgAQAAAJ4WAQcVYxwA4QEWBAEAAACfFgEHFaMqAOEBHAwBAAAAoBYBBxVjGwDhAQwgAQAAAKEWAQcV4xgA4QEMIAEAAACGFgEFFYOXAOEBFgQBAAAAoxYBBxXDVgDhARYEAQAAAKYWAQUVw0oA4QEWBAEAAACmFgEFFcPCAeEBFgQBAAAAphYBBxUjUADhAQwgAQAAAKcWAQcVw04A4QEcDAEAAACoFgEHFWMqAOEBMgwBAAAAqRYBBhXDSgDhARwMAQAAAKoWAQcVw0wA4QEeIAEAAACrFgEGFWOgAOEBDCABAAAArBYBBxUDKQDhARpAAQAAAK0WAQcVYxkA4QEaQAEAAACtFgEFFcMjAOEBGkABAAAArRYBBRXjFQDhASAEAQAAAK0WAQIVYzEA4QEcDAEAAACxFgEHFSNiAOEBDCABAAAAshYBBxXjFQDhAQwgAQAAALMWAQcVw1YA4QEWBAEAAAC3FgEFFcNKAOEBFgQBAAAAtxYBBRVjGwDhAQwgAQAAALYWAQcVI8oA4QEWBAEAAAC3FgEHFSMyAdkBHgABAAAAuBYBBhWjmADhAQwgAQAAALkWAQcV4yEA4QEMIAEAAAC6FgEHFWMgAOEBDCABAAAAuxYBBxUjGgDhARYEAQAAALwWAQcVgxwA4QEWBAEAAAC9FgEHFYMXAOEBHgABAAAAvhYBBhXjGQDhARYEAQAAAL8WAQcVAxkA4QEMIAEAAADAFgEHFQM4AOEBDCABAAAAwRYBBxWDRADhASIAAQAAAMIWAQYVAxwA4QEMIAEAAADDFgEHFePnAeEBDCABAAAAxBYBBxVjHADhARYEAQAAAMUWAQcVw3sA4QEiBAEAAADGFgEGFWNWAOEBGkABAAAAuBYBBRXDVgDhARYEAQAAAMsWAQUVw0oA4QEWBAEAAADLFgEFFeMVAOEBXAABAAAAuBYBAhWj8gDhARYEAQAAAMsWAQcVQ0sA4QEMIAEAAADOFgEFFSNbAOEBFgQBAAAAzRYBBxXDdwDhASIAAQAAAM4WAQYVwykA4QEeAAEAAADPFgEGFYMXAOEBDCABAAAA0BYBBxWDHQDhARYEAQAAANEWAQcVwxgA4QEWBAEAAADSFgEHFcMYAOEBDCABAAAA0xYBBxWDHgDhAQwgAQAAANQWAQcVw4cA4QEMIAEAAADVFgEHFYMfAOEBDCABAAAA1hYBBxVjGwDhAQwgAQAAANcWAQcVoycA4QEaQAEAAADYFgEHFUMrAOEBGkABAAAA2BYBBRWDMADhARpAAQAAANoWAQcVwzAA4QEaQAEAAADaFgEFFWMcAOEBFgQBAAAA3BYBBxUDRgDhAQwgAQAAAN0WAQcVAzsA4QEWBAEAAADeFgEHFcMoAOEBHAwBAAAA3xYBBxVjGwDhAQwgAQAAAOAWAQcVozgA4QEMIAEAAADiFgEFFSNbAOEBDCABAAAA4hYBBxWDRADhASIEAQAAAOMWAQYVI0AA4QEMIAEAAADkFgEHFaMkAOEBHAwBAAAA5RYBBxVjGwDhAQwgAQAAAOYWAQcVA+gB4QEMIAEAAADnFgEHFUP1AOEBDCABAAAA6BYBBxVDzADhAQwgAQAAAOkWAQcVgzAB4QEMIAEAAAADFwEFFUMkAOEBFgQBAAAA6xYBBxVDIADhAQwgAQAAAOwWAQcVQysA4QEMIAEAAADuFgEFFSMcAOEBDCABAAAA7hYBBRUDGQDhAQwgAQAAAO8WAQcVI4IA4QEiAAEAAADwFgEGFcNWAOEBFgQBAAAA+xYBBRXDSgDhARYEAQAAAPsWAQUVYxsA4QEMIAEAAADzFgEHFcOLAOEBHiABAAAA9BYBBhXjeADhAQwgAQAAAPUWAQcVo4oA4QEWBAEAAAD2FgEHFcMaAOEBHAwBAAAA9xYBBxVjGwDhAQwgAQAAAPgWAQcV4xUA4QEWBAEAAAD5FgEHFMOmAOcBFgQBQAEA+xYRBRXDpgDhARYEAQAAAPsWAQcVgyQA4QEeIAEAAAD8FgEGFeMZAOEBIEABAAAA/BYBAhXjHgDhAQwgAQAAAP4WAQcV45YA4QEMIAEAAAD/FgEHFeMVAOEBHkABAAAA/BYBAhUDGQDhAQwgAQAAAAEXAQcVwyQA4QEeIAEAAAD8FgEEFQMvAOEBDCABAAAAAxcBBxVjtwDZAQwgAQAAAAQXAQcVgxwA4QEWBAEAAAAFFwEHFUNJAOEBDCABAAAABhcBBxWDgADhAQwgAQAAAAcXAQcVA4YB4QEWBAEAAAAIFwEHFaMjAOEBFgQBAAAACRcBBxVjaQDhARwMAQAAAAoXAQcVYxsA4QEMIAEAAAALFwEHFSPoAdkBDCABAAAADBcBBxWjLgDhAQwgAQAAAA0XAQcVY1QA4QEMIAEAAAAOFwEHFUOLAOEBDCABAAAADxcBBxUjUADhAQwgAQAAABAXAQcVw3YA4QEMIAEAAAARFwEHFQOiAOEBDCABAAAAEhcBBxVjZwDhAR4AAQAAABMXAQYV4xUA4QEWBAEAAAAUFwEHFWMxAOEBHAwBAAAAFRcBBxXDygDhAR4AAQAAABMXAQQVA0sA4QEgQAEAAAAsCQECFQPCAeEBDCABAAAAGBcBBxUDTQDhAQwgAQAAABkXAQcVo4oA4QEWBAEAAAAaFwEHFcMaAOEBHAwBAAAAGxcBBxVjGwDhAQwgAQAAABwXAQcVYxsA4QEWBAEAAAAdFwEHFaMqAOEBHAwBAAAAHhcBBxWDWwHhAQwgAQAAABkXAQUVIyUA4QEuIAEAAAAgFwEGFcMZAOEBFgQBAAAAIRcBBxUDIwDhAQwgAQAAACIXAQcVQ6YA4QEMIAEAAAAjFwEHFUMlAOEBGkABAAAAIBcBBRUjJgDhAQwgAQAAACUXAQcV4xUA4QEuQAEAAAAgFwECFWMbAOEBFgQBAAAAJxcBBxWjKgDhARwMAQAAACgXAQcVYxsA4QEMIAEAAAApFwEHFcMoAOEBHAwBAAAAKhcBBxXDQgDhAQwgAQAAACsXAQcVYxsA4QEMIAEAAAAsFwEHFQNdAOEBIAABAAAALRcBBhXjFQDhARpAAQAAAC0XAQUVYyUA4QEeQAEAAAAgFwEEFaMXAOEBDCABAAAAMBcBBxXjUADhAR4gAQAAADEXAQYVw3IA4QEMIAEAAAAyFwEHFWPDAOEBDCABAAAAMxcBBxXDVgDhARYEAQAAADkXAQUVw0oA4QEWBAEAAAA5FwEFFWMbAOEBDCABAAAANhcBBxXjFQDhARpAAQAAADEXAQUVw04A4QEMIAEAAAA4FwEHFaMKAeEBFgQBAAAAORcBBxWjbQDhAS4EAQAAADoXAQYVwwIA4QEMIAEAAAA7FwEHFINWAOcBHiABQAEAPRcRBBWDVgDhAR4gAQAAAD0XAQYVYygA4QEeIAEAAAA9FwEEFeMVAOEBGkABAAAAPRcBBRVjJADhAQwgAQAAAEAXAQcVY2cA4QEMIAEAAABBFwEHFWMfAOEBIAQBAAAAOhcBAhXjFQDhAQwgAQAAAEMXAQcVoyMA4QEWBAEAAABEFwEHFSN6AOEBHAwBAAAARRcBBxVjGwDhAQwgAQAAAEYXAQcVw8MA4QEMIAEAAABHFwEHFYNpAOEBGkABAAAAOhcBBRUjMgHhAQwgAQAAAEkXAQcVI0YA4QEMIAEAAABKFwEHFSMYAOEBDCABAAAASxcBBxXDKgDhAR4AAQAAAEwXAQYVgycA4QEWBAEAAABNFwEHFUMrAOEBGkABAAAATBcBBRXjFQDhAQwgAQAAAE8XAQcVw5cB4QEMIAEAAABQFwEHFcM2AOEBDCABAAAAURcBBxVjSQDhAQwgAQAAAFIXAQcUg2MA5wEYMAEAAABTFxEFFYNjAOEBMAwBAAAAVBcBBhUjJQDhARYEAQAAAFUXAQcVYyYA4QEwBAEAAABWFwEGFeMeAOEBDCABAAAAVxcBBxUjegDhARYEAQAAAFgXAQcVI5IA4QEWBAEAAABZFwEHFQMjAOEBMAABAAAAWhcBBhXDKADhARwMAQAAAFsXAQcVg0MA4QEMIAEAAABcFwEHFSN6AOEBMAABAAAAXRcBBhUjkgDhARYEAQAAAF4XAQcVYyoA4QEWBAEAAABfFwEHFeMhAOEBDCABAAAAYBcBBxUjMgDhARYEAQAAAGEXAQcVYxsA4QEMIAEAAABiFwEHFSNGAOEBDCABAAAAYxcBBxUDbgDhAQwgAQAAAGQXAQcVIzIA4QEWBAEAAABlFwEHFaNAAeEBDCABAAAAZhcBBxUDIwDhATAAAQAAAGcXAQYVAzIA4QEcDAEAAABoFwEHFcNKAOEBLAQBAAAAaRcBBhXjHgDhAQwgAQAAAGoXAQcVI3oA4QEWBAEAAABrFwEHFSOSAOEBFgQBAAAAbBcBBxUDIwDhATAAAQAAAG0XAQYVwygA4QEcDAEAAABuFwEHFUPoAeEBDCABAAAAbxcBBxXjSQDhAQwgAQAAAG8XAQUVAx4A4QEMIAEAAABxFwEHFSOAAOEBDCABAAAAchcBBxXjXwDhASIEAQAAAHMXAQYVA5cA4QEMIAEAAAB0FwEHFKMaAecBGAQBAAAAdRcRBRWjGgHhASIEAQAAAHYXAQYVoycA4QEaQAEAAAB3FwEHFUMrAOEBGkABAAAAdxcBBRXjIQDhAQwgAQAAAHkXAQcVgzAA4QEaQAEAAAB6FwEHFcMwAOEBGkABAAAAehcBBRVjhwHhAQwgAQAAAHwXAQUVY8oA4QEMIAEAAAB8FwEFFeMNAdkBHkABAAAAfhcBBhVjSQDhAQwgAQAAAH8XAQcVwxoA4QEMIAEAAACAFwEHFSNAAOEBDCABAAAAgRcBBxWDZADhARpAAQAAAH4XAQUV43gA4QEMIAEAAACDFwEHFaOgAOEBFgQBAAAAhBcBBxVDYwDhARpAAQAAAH4XAQUVY+gB2QEMIAEAAACGFwEHFWPfAOEBDCABAAAAhxcBBxWDNgDhAQwgAQAAAIgXAQcVQ7sA4QEMIAEAAACJFwEHFQNAAOEBFgQBAAAAihcBBxMDYAEEAxwMAQAAAKgbIg0UI2ABCAMcDAEAAAAwEhINFSNgAQwDHAwBAAAAuAgCDRaD6AHZAQwgAQAAAI4XAQcWwzMA4QEeIAEAAACPFwEGFgMYAOEBDCABAAAAkBcBBxZDOgDhARYEAQAAAJEXAQcW4xUA4QEMIAEAAACSFwEHFgNLAOEBDCABAAAAkxcBBxbDQgDhAQwgAQAAAJQXAQcWYygA4QEMIAEAAACPFwEFFiMtAOEBDCABAAAAlhcBBxaDOgDhAQwgAQAAAJcXAQcWg58A4QEeAAEAAACYFwEGFoNMAOEBDCABAAAAmRcBBxYDIwDhARwMAQAAAJoXAQcWAzIA4QEcDAEAAACbFwEHFkMaAeEBFgQBAAAAnBcBBxajGgDhARYEAQAAAJ0XAQcW4xUA4QEeAAEAAACPFwECFkMkAOEBFgQBAAAAnxcBBxZjHADhARYEAQAAAKAXAQcWoyoA4QEcDAEAAAChFwEHFmMbAOEBDCABAAAAohcBBxYDdgDhAQxAAQAAAKMXAQcWIxsA4QEWBAEAAACkFwEHFgMmAOEBHgABAAAApRcBBhajIwDhAQwgAQAAAKYXAQcWwyMA4QEMIAEAAACmFwEFFsNMAOEBDCABAAAAqBcBBxajigDhAQwgAQAAAKkXAQcWw4wA4QEMIAEAAACqFwEHFmMoAOEBDCABAAAArBcBBRZDggDhAQwgAQAAAKwXAQcWo+gB4QEaQAEAAACtFwEFFqMmAOEBGkABAAAArRcBBRbjFQDhARpAAQAAAK0XAQUWg20A4QEMIAEAAACwFwEHFqM4AOEBDCABAAAAsRcBBxbDAgDhAR4AAQAAALIXAQYWAxkA4QEMIAEAAACzFwEHFsMZAeEBHgABAAAAtBcBBhZDSgDhAQwgAQAAALUXAQcWAyoA4QEMIAEAAAC1FwEFFuMVAOEBGkABAAAAtBcBBRYjSQDhARpAAQAAALQXAQUWI5MA4QEeIAEAAAC5FwEGFgPiAOEBGkABAAAAuhcBBRYDQADhARpAAQAAALoXAQUW4xUA4QEaQAEAAAC6FwEFFkN0AOEBGkABAAAAuhcBBRYD6QDhAQwgAQAAAL4XAQcWI4IA4QEMIAEAAAC/FwEHFkODAOEBDCABAAAAwBcBBxbDcwDhARpAAQAAAMEXAQcWg3QA4QEeAAEAAADCFwEGFgNAAOEBFgQBAAAAwxcBBxYDWADhAR4AAQAAAMIXAQQWYzEA4QEWBAEAAADFFwEHFiOnAOEBGkABAAAAwRcBBRbj+wDhAQwgAQAAAMcXAQcWoyMA4QEWBAEAAADIFwEHFqN9AOEBHgABAAAAyRcBBhaDTADhAQwgAQAAAMoXAQcW4xUA4QEiBAEAAADLFwEGFoOnAOEBGkABAAAAyRcBBRajGADhARpAAQAAALkXAQUWYyoA4QEMIAEAAADOFwEHFuMVAOEBGkABAAAAuRcBBRajTQDhARpAAQAAALkXAQUWI38A4QEeAAEAAADRFwEGFiNMAOEBLgQBAAAA0hcBBhZjHwDhARpAAQAAANEXAQUWYxsA4QEMIAEAAADUFwEHFoMfAOEBDCABAAAA1RcBBxZjBAHhAQwgAQAAANYXAQcWAyEA4QEeQAEAAADSFwEEFqOVAOEBHgABAAAA2BcBBhbDLgDhAQwgAQAAANkXAQcW4xUA4QEgQAEAAADRFwECFmMxAOEBHAwBAAAA2xcBBxZDFgDhAR5AAQAAANwXAQYWA4YA4QEaQAEAAADcFwEFFoNMAOEBDCABAAAA3hcBBxbjFQDhARpAAQAAANwXAQUWA3YA4QEeIAEAAADgFwEGFsOmAOEBDCABAAAA4RcBBxZDKADhAQwgAQAAAOIXAQcWA1gA4QEeAAEAAADgFwEEFuMVAOEBIgQBAAAA5BcBBhYDvgDhARYEAQAAAOUXAQcWY6kA4QEeQAEAAADcFwEEFuMVAOEBDCABAAAA5xcBBxZjHwDhARpAAQAAANEXAQUW4xUA4QEeAAEAAADRFwECFsOLAOEBDCABAAAA6hcBBxYDZwDhAR4AAQAAANEXAQQWYzMA4QEWBAEAAADsFwEHFqMkAOEBHAwBAAAA7RcBBxZjGwDhAQwgAQAAAO4XAQcWQyAA4QEMIAEAAADvFwEHFmNLAOEBFgQBAAAA8BcBBxaDwADhAQwgAQAAAPEXAQcW4zcA4QEWBAEAAADyFwEHFsMaAOEBHAwBAAAA8xcBBxYjHADhAQwgAQAAAPQXAQcWIxoA4QEMIAEAAAD1FwEHFiMaAOEBIgABAAAA9hcBBhZDIADhAQwgAQAAAPcXAQcWAzYB4QEeAAEAAAD4FwEGFgNPAOEBHgABAAAA+RcBBhaDFwDhAQwgAQAAAPoXAQcWAykA4QEMIAEAAAD7FwEHFiM1AOEBDCABAAAA/BcBBxajGgDhARYEAQAAAP0XAQcWQyAA4QEMIAEAAAD+FwEHFsMaAOEBHAwBAAAA/xcBBxZDJADhARYEAQAAAAAYAQcW4xkA4QEaQAEAAAD4FwEFFuMeAOEBHgABAAAAAhgBBhYDTwDhAQwgAQAAAAMYAQcWYx8A4QEWBAEAAAAEGAEHFuMVAOEBHgABAAAAAhgBAhYDKgDhAR4AAQAAAAIYAQQW4xUA4QEaQAEAAAD4FwEFFgM1AOEBDCABAAAACBgBBxaDFwDhARYEAQAAAAkYAQcWYz0B4QEMIAEAAAAKGAEHFqMYAOEBFgQBAAAACxgBBxZDmwDhAQwgAQAAAAwYAQcWY5sA4QEeQAEAAAANGAEGFqMYAOEBGkABAAAADRgBBRZjKgDhAQwgAQAAAA8YAQcW4xUA4QEaQAEAAAANGAEFFmPPAOEBGkABAAAADRgBBRajwAHhARpAAQAAABIYAQcWA2IA4QEWBAEAAAATGAEHFuMVAOEBHgABAAAAEhgBAhYjYwDhARpAAQAAABIYAQUW464A4QEaQAEAAAAWGAEHFsMZAOEBFgQBAAAAFxgBBxaDgQDhAQwgAQAAABgYAQcWg0wA4QEMIAEAAAAZGAEHFiMYAOEBDCABAAAAGhgBBxYDKgDhAQwgAQAAABkYAQUWIy0A4QEMIAEAAAAcGAEHFuMVAOEBLkABAAAAFhgBAhaDzwDhARpAAQAAABYYAQUWgz0A4QEeAAEAAAAfGAEGFqMjAOEBDCABAAAAIBgBBxbDIwDhAQwgAQAAACAYAQUWI0AA4QEeAAEAAAAiGAEGFkMlAOEBGkABAAAAIhgBBRbjFQDhARpAAQAAACIYAQUWg0UA4QEaQAEAAAAiGAEFFuMVAOEBGkABAAAAHxgBBRYDOgDhAQwgAQAAACcYAQcWAzoA4QEMIAEAAAAoGAEHFmO+AeEBDCABAAAAKRgBBxajGgDhASIEAQAAACoYAQYWAxkA4QEMIAEAAAA3GAFHFuMYAOEBDCABAAAAOBgBRRajJwDhARpAAQAAADkYAUcWgycA4QEWBAEAAAA6GAFHFiMrAOEBDCABAAAALxgBBxZDKwDhARpAAQAAADwYAUUW4xUA4QEaQAEAAAA9GAFFFuMhAOEBDCABAAAAMhgBBxZjIADhAQwgAQAAADMYAQcWIxoA4QEWBAEAAAA0GAEHFqM9AOEBDCABAAAAMxgBBRZDIADhAQwgAQAAAEIYAUcWAxkA4QEMIAEAAAA3GAEHFuMYAOEBDCABAAAANxgBBRaDMADhARpAAQAAADkYAQcWozAA4QEgQAEAAAA5GAECFqNGAOEBDCABAAAAOxgBBxbDMADhARpAAQAAADkYAQUW4xUA4QEaQAEAAAA5GAEFFsMaAOEBHAwBAAAAPhgBBxZjGwDhAQwgAQAAAD8YAQcWo3UA4QEMIAEAAAAqGAEFFiMgAOEBDCABAAAAQhgBBRYjQwDhAQwgAQAAAEIYAQcWgxcA4QEaQAEAAABDGAEHFgMaAOEBGkABAAAAQxgBBRbjFQDhARpAAQAAAEMYAQUWAxkA4QEMIAEAAABGGAEHFmPFAOEBDCABAAAARxgBBxYjIADhAQwgAQAAAEcYAQcWwxkA4QEWBAEAAABJGAEHFsN7AOEBIgQBAAAAShgBBhbDGgDhARwMAQAAAEsYAQcWAxkA4QEMIAEAAABMGAEHFuMYAOEBDCABAAAATBgBBRYjIADhAQwgAQAAAE8YAQUWQyAA4QEMIAEAAABPGAEHFkMtAOEBDCABAAAAShgBBRaDMQDhASBAAQAAAFEYAQIWw1YA4QEMIAEAAABSGAEHFiMgAOEBGkABAAAAVBgBBRbDNQDhARpAAQAAAFQYAQcW4xUA4QEaQAEAAABUGAEFFmMUAOEBDCABAAAAVhgBBxbDHADhAQwgAQAAAFYYAQUWYxwA4QEWBAEAAABYGAEHFqMqAOEBHAwBAAAAWRgBBxZjGwDhAQwgAQAAAFoYAQcWQ04A4QEeAAEAAABbGAEGFgOGAOEBFgQBAAAAXBgBBxYDdgDhAR4AAQAAAF0YAQYWA0AA4QEWBAEAAABeGAEHFgNYAOEBDCABAAAAXRgBBRZjGwDhARYEAQAAAGAYAQcW4xUA4QEaQAEAAABdGAEFFiN9AOEBDCABAAAAYhgBBxYDQADhARYEAQAAAGMYAQcWAzQA4QEiBAEAAABkGAEGFiN6AOEBHAwBAAAAZRgBBxaDFwDhARpAAQAAAGYYAQcWAxoA4QEaQAEAAABmGAEFFuMVAOEBGkABAAAAZhgBBRZjGgDhAQwgAQAAAGkYAQcWox8A4QEMIAEAAABpGAEFFuMeAOEBDCABAAAAaxgBBxYDKgDhAQwgAQAAAGsYAQUWgzcA4QEMIAEAAABtGAEHFiN+AOEBDCABAAAAfhgBBRZDJADhARYEAQAAAG8YAQcWgzIA4QEMIAEAAABrGAFHFgMhAOEBDCABAAAAbBgBRRbDSADhAQwgAQAAAHIYAQcWY0AA4QEMIAEAAABzGAEHFsM8AOEBFgQBAAAAdBgBBxbDGgDhARwMAQAAAHUYAQcW4x4A4QEMIAEAAAB2GAEHFiM0AOEBFgQBAAAAdxgBBxYDOADhAQwgAQAAAHgYAQcW4x4A4QEMIAEAAAB5GAEHFkNkAOEBDCABAAAAehgBBxYjPADhARYEAQAAAHsYAQcWgxwA4QEWBAEAAAB8GAEHFmNkAOEBDCABAAAAfRgBBxYjWgDhAQwgAQAAAH4YAQcWAzUA4QEMIAEAAACLGAEFFgM0AOEBFgQBAAAAgBgBBxaDFwDhARpAAQAAAIEYAQcW4xkA4QEaQAEAAACBGAEFFgMaAOEBGkABAAAAgRgBBRbjFQDhARpAAQAAAIEYAQUWAxkA4QEMIAEAAACFGAEHFoMhAOEBFgQBAAAAhhgBBxajJADhARwMAQAAAIcYAQcWYxsA4QEMIAEAAACIGAEHFmMaAOEBDCABAAAAiRgBBxajHwDhAQwgAQAAAIkYAQUWIzUA4QEMIAEAAACLGAEHFmNWAOEBGkABAAAAmhgBBRYDsQDhAQwgAQAAAI0YAQcWwyMA4QEMIAEAAACNGAEFFoMxAOEBGkABAAAAkhgBBRbDVgDhAQwgAQAAAJAYAQcWIyAA4QEaQAEAAACSGAEFFsM1AOEBGkABAAAAkhgBBxbjFQDhARpAAQAAAJIYAQUWYxsA4QEWBAEAAACUGAEHFqMqAOEBHAwBAAAAlRgBBxZjGwDhAQwgAQAAAJYYAQcWg0wA4QEMIAEAAACXGAEHFuMVAOEBDCABAAAAmBgBBxbjHgDhAQwgAQAAAJkYAQcWo1IA4QEeIAEAAACaGAEGFqNMAOEBDCABAAAAmxgBBxZDJQDhARpAAQAAAJoYAQUWIyYA4QEMIAEAAACdGAEHFsNWAOEBFgQBAAAAqRgBBRbDSgDhARYEAQAAAKkYAQUW41YA4QEcDAEAAACgGAEHFmMbAOEBDCABAAAAoRgBBxbjFQDhAR5AAQAAAJoYAQIW4x4A4QEMIAEAAACjGAEHFsOwAOEBHiABAAAAmhgBBBbjHgDhAQwgAQAAAKUYAQcWI9UA4QEMIAEAAACmGAEHFqNXAOEBDCABAAAApxgBBxbjaQDhAQwgAQAAAKgYAQcW4/4A4QEWBAEAAACpGAEHFmMgAOEBDCABAAAAqhgBBxZDSQDhAQwgAQAAAKsYAQcWYyAA4QEMIAEAAACsGAEHFkNJAOEBDCABAAAArRgBBxbjaQDhAR5AAQAAAK4YAQYWg2sA4QEaQAEAAACvGAEHFiMmAOEBDCABAAAAsBgBBxbjFQDhASAAAQAAAK8YAQIWYyUA4QEaQAEAAACvGAEFFiMlAOEBFgQBAAAAsxgBBxajoADhAQwgAQAAALQYAQcWA0AA4QEaQAEAAACuGAEFFkMoAOEBDCABAAAAthgBBxbjFQDhAR4gAQAAAK4YAQIWI6cA4QEMIAEAAAC3GAEFFuOBAOEBGkABAAAArhgBBRYjtQDhAQwgAQAAALoYAQcW4x4A4QEMIAEAAAC7GAEHFgPXAOEBGkABAAAAvBgBBxaDTADhAQwgAQAAAL0YAQcW4xUA4QEaQAEAAAC8GAEFFoOnAOEBGkABAAAAvBgBBRZjPwDhARpAAQAAAMAYAQcWwxkA4QEWBAEAAADBGAEHFuMVAOEBHiABAAAAwBgBAhZjJQDhARpAAQAAAMAYAQUWQ0UA4QEiAAEAAADEGAEGFsMYAOEBIEABAAAAwBgBAhZjdADhAQwgAQAAAMYYAQcWY8cA4QEMIAEAAADHGAEHFmNGAOEBDCABAAAAyxgBBRYjGgDhARYEAQAAAMkYAQcWA+YA4QEMIAEAAADKGAEHFqM8AOEBDCABAAAAyxgBBRajHQDhAQwgAQAAAMwYAQcWwx8A4QEMIAEAAADNGAEHFgMuAOEBDCABAAAAzhgBBxYjHADhAQwgAQAAAM8YAQcWgywA4QEMIAEAAADRGAEFFqM8AOEBDCABAAAA0RgBBRYDLgDhAQwgAQAAANIYAQcWQz0A4QEMIAEAAADWGAEFFmM9AOEBDCABAAAA1BgBBxYjLgDhAQwgAQAAANUYAQcWw04A4QEMIAEAAADWGAEHFoMvAOEBFgQBAAAA1xgBBxbDHwDhAQwgAQAAANgYAQcWgywA4QEMIAEAAADaGAEFFqM8AOEBDCABAAAA2hgBBRZDOADhAQwgAQAAANsYAQcW4zQA4QEMIAEAAADcGAEHFmMcAOEBFgQBAAAA3RgBBxbDxgHhARpAAQAAAN4YAQcWg2QA4QEaQAEAAADeGAEFFuN4AOEBDCABAAAA4BgBBxbjFQDhARpAAQAAAN4YAQUWQ9AA4QEaQAEAAADeGAEFFsPoAdkBDCABAAAA4xgBBxaDFwDhARpAAQAAAOQYAQcWAxoA4QEaQAEAAADkGAEFFqMdAOEBDCABAAAA5hgBBxbjNADhAQwgAQAAAOcYAQcWY4MA4QEMIAEAAADoGAEHFgNoAOEBDCABAAAA6RgBBxZjNwDhAQwgAQAAAOoYAQcWIy4A4QEMIAEAAADrGAEHFgMZAOEBDCABAAAA7BgBBxYjLgDhAQwgAQAAAO0YAQcWYxgA4QEMIAEAAADuGAEHFiM0AOEBFgQBAAAA7xgBBxaDHADhARYEAQAAAPAYAQcWwxoA4QEcDAEAAADxGAEHFmMbAOEBDCABAAAA8hgBBxZDIADhAQwgAQAAAPMYAQcWAy4A4QEMIAEAAAD0GAEHFiMuAOEBDCABAAAA9RgBBxaDLwDhARYEAQAAAPYYAQcW4x4A4QEMIAEAAAD3GAEHFmNvAOEBDCABAAAA+BgBBxbjHgDhAQwgAQAAAPkYAQcW4yYA4QEMIAEAAAD9GAEFFsNAAOEBDCABAAAA+xgBBxZjJADhARYEAQAAAPwYAQcWY3MA4QEMIAEAAAD9GAEHFuMeAOEBDCABAAAA/hgBBxYjPADhASIAAQAAAP8YAQYWY00A4QEMIAEAAAAAGQEHFkO5AOEBDCABAAAAABkBBRaDFwDhARYEAQAAAAIZAQcWo+cA4QEMIAEAAAADGQEHFsMxAOEBHiABAAAABBkBBhbDpgDhAQwgAQAAAAUZAQcWA1YA4QEMIAEAAAAGGQEHFmN6AOEBDCABAAAABxkBBxYDRgDhAQwgAQAAAAgZAQcWYygA4QEMIAEAAAAEGQEFFsNWAOEBFgQBAAAAExkBBRbDSgDhARYEAQAAABMZAQUW41YA4QEcDAEAAAAMGQEHFmMbAOEBDCABAAAADRkBBxbjFQDhARpAAQAAAAQZAQUWQ1cA4QEiAAEAAAAPGQEGFgM1AOEBDCABAAAAEhkBBRZjbwDhAQwgAQAAABEZAQcWIzUA4QEMIAEAAAASGQEHFqNsAeEBFgQBAAAAExkBBxYjJgDhAQwgAQAAABQZAQcW43gA4QEMIAEAAAAVGQEHFiNXAOEBFgQBAAAAFhkBBxYjegDhARYEAQAAABcZAQcWAyoA4QEMIAEAAAAUGQEFFoMkAOEBDCABAAAAGRkBBxYDRgDhARYEAQAAABoZAQcWgzEA4QEaQAEAAADrGgEFFuNzAOEBDCABAAAAHBkBBxYDiQDhAQwgAQAAAB0ZAQcW4/sA4QEeAAEAAAAeGQEGFiMgAOEBHiABAAAA6xoBBBZDowDhAQwgAQAAACAZAQcWw1YA4QEWBAEAAAAkGQEFFsNKAOEBFgQBAAAAJBkBBRbjFQDhARYEAQAAACMZAQcWY+0A4QEWBAEAAAAkGQEHFgOIAOEBDCABAAAAJRkBBxbj6AHhAQwgAQAAACYZAQcWI1cA4QEeAAEAAAAnGQEGFgOGAOEBIAQBAAAAJxkBAhZDUQDhAQwgAQAAACkZAQcWI1cA4QEWBAEAAAAqGQEHFkM8AOEBDCABAAAAKxkBBxYDIwDhAQwgAQAAACwZAQcWw5oA4QEMIAEAAAAnGQEFFsNWAOEBFgQBAAAAMRkBBRbDSgDhARYEAQAAADEZAQUW4xUA4QEaQAEAAAAnGQEFFgPpAeEBFgQBAAAAMRkBBxZDOADhAQwgAQAAADIZAQcWY3oA4QEeIAEAAAAzGQEGFuM6AOEBDCABAAAANBkBBxYDQADhARpAAQAAADMZAQUWQygA4QEMIAEAAAA2GQEHFsNYAOEBDCABAAAANxkBBxaDKQDhAQwgAQAAADgZAQcW44EA4QEaQAEAAAAzGQEFFqNXAOEBDCABAAAAOhkBBxbjPgDhAR5AAQAAADsZAQYWAycA4QEMIAEAAAA8GQEHFsMXAOEBIgQBAAAAPRkBBhbDGgDhARwMAQAAAD4ZAQcW4z8A4QEMIAEAAAA/GQEHFsOmAOEBDCABAAAAQBkBBxYjswDhAQwgAQAAAEEZAQcWA1gA4QEMIAEAAAA/GQEFFoOnAOEBDCABAAAAQxkBBxbDVgDhARYEAQAAAEYZAQUWw0oA4QEWBAEAAABGGQEFFsMoAOEBFgQBAAAARhkBBxZDRQDhAQwgAQAAAEcZAQcWYyQA4QEMIAEAAABIGQEHFmN9AOEBDCABAAAASRkBBxZjGwDhARYEAQAAAEoZAQcWYxsA4QEMIAEAAABLGQEHFsNgAOEBDCABAAAATBkBBxbDVgDhARYEAQAAAF4ZAQUWw0oA4QEWBAEAAABeGQEFFmMbAOEBDCABAAAATxkBBxbjHgDhAQwgAQAAAFAZAQcWQyAA4QEMIAEAAABRGQEHFsMZAOEBFgQBAAAAUhkBBxaDTADhAQwgAQAAAFMZAQcWo6gA4QEWBAEAAABUGQEHFgNbAOEBDCABAAAAVRkBBxZjKgDhAQwgAQAAAFYZAQcWY5UA4QEMIAEAAABXGQEHFuMVAOEBHgQBAAAAOxkBAhbDNADhARYEAQAAAFkZAQcWYxwA4QEWBAEAAABaGQEHFoMqAOEBGkABAAAAOxkBBRbjHgDhAQwgAQAAAFwZAQcWI0YA4QEMIAEAAABdGQEHFkPBAOEBFgQBAAAAXhkBBxYjfQDhAQwgAQAAAF8ZAQcWQyQA4QEuIAEAAABgGQEGFgNAAOEBGkABAAAAYBkBBRbjFQDhASBAAQAAAGAZAQIWA0AA4QEaQAEAAABhGQFFFuMVAOEBGkABAAAAYhkBRRbDGgDhARwMAQAAAGUZAQcWo3UA4QEeAAEAAABgGQEEFmMeAOEBIgABAAAAZxkBBhZjOgDhAQwgAQAAAGgZAQcWozkA4QEMIAEAAABpGQEHFiNeAOEBDCABAAAAaxkBBxYjNQDhAQwgAQAAAGsZAQcWw7YA4QEeIAEAAABsGQEGFuMZAOEBIAQBAAAAbBkBAhbDKADhARwMAQAAAG4ZAQcWYxsA4QEMIAEAAABvGQEHFuMVAOEBGkABAAAAbBkBBRajJwDhARpAAQAAAHEZAQcWQysA4QEaQAEAAABxGQEFFuMhAOEBDCABAAAAcxkBBxaDMADhARpAAQAAAHQZAQcWwzAA4QEaQAEAAAB0GQEFFmMbAOEBFgQBAAAAdhkBBxZjGwDhAQwgAQAAAHcZAQcWYxwA4QEWBAEAAAB4GQEHFsMyAOEBDCABAAAAbBkBBxYjMADhASIAAQAAAHoZAQYWAxkA4QEMIAEAAAB7GQEHFqMnAOEBGkABAAAAfBkBBxZDKwDhARpAAQAAAHwZAQUW4yEA4QEMIAEAAAB+GQEHFmMgAOEBIgABAAAAfxkBBhYjGgDhARYEAQAAAIAZAQcWQyAA4QEMIAEAAACBGQEHFgMZAOEBDCABAAAAghkBBxaDMADhARpAAQAAAIMZAQcWwzAA4QEaQAEAAACDGQEFFsMaAOEBHAwBAAAAhRkBBxYjQwDhAQwgAQAAAIYZAQcWYxwA4QEWBAEAAACHGQEHFuMyAOEBDCABAAAAiBkBBxbjMgDhAQwgAQAAAIkZAQcWw0gA4QEMIAEAAACKGQEHFmNAAOEBDCABAAAAixkBBxZDNgHhAQwgAQAAAIwZAQcW4x4A4QEMIAEAAACNGQEHFgM4AOEBDCABAAAAjhkBBxYjGADhAQwgAQAAAI8ZAQcWg1cA4QEeAAEAAACQGQEGFgM1AOEBDCABAAAAkRkBBxbjigDhAR4AAQAAAJIZAQYWwwIA4QEMIAEAAACTGQEHFmM3AOEBHiABAAAAlBkBBhajigDhARYEAQAAAJUZAQcWwxoA4QEcDAEAAACWGQEHFmMbAOEBDCABAAAAlxkBBxYDGgDhARpAAQAAAJQZAQUWYzoA4QEMIAEAAACZGQEHFsMyAOEBGkABAAAAkhkBBRbjGQDhARpAAQAAAJIZAQUW4x4A4QEMIAEAAACcGQEHFuMVAOEBHgABAAAAkhkBAhYjrADhAQwgAQAAAJ4ZAQcWI7AA4QEMIAEAAACfGQEHFsNOAOEBDCABAAAAoBkBBxaDwQDhAQwgAQAAAKEZAQcWgzsA4QEMIAEAAACiGQEHFiPpAeEBDCABAAAAoxkBBxZjLgDhARYEAQAAAKQZAQcWQxkA4QEeAAEAAAClGQEGFgMjAOEBDCABAAAAphkBBxajoADhAQwgAQAAAKcZAQcWYxkA4QEgQAEAAAClGQECFoNDAOEBDCABAAAAqRkBBxbDIwDhAR4AAQAAAKUZAQQWw1YA4QEWBAEAAACvGQEFFsNKAOEBFgQBAAAArxkBBRZjGwDhAQwgAQAAAK0ZAQcW4xUA4QEeAAEAAAClGQECFkOPAOEBFgQBAAAArxkBBxYDwADhAR4AAQAAALAZAQYWg4kA4QEeAAEAAACwGQEEFuMeAOEBHgABAAAAshkBBhZjHwDhARYEAQAAALMZAQcW4xUA4QEeAAEAAACyGQECFgMqAOEBGkABAAAAshkBBRbjYQDhAS4AAQAAALYZAQYWI7IA4QEMIAEAAAC4GQEFFsNMAOEBIgABAAAAuBkBBhbjGQDhARYEAQAAALkZAQcWI2MA4QEeAAEAAAC2GQEEFmOkAOEBDCABAAAAuxkBBxaDJADhAQwgAQAAALwZAQcWAzsA4QEWBAEAAAC9GQEHFsMoAOEBHAwBAAAAvhkBBxZjHADhARYEAQAAAL8ZAQcWw2kA4QEMIAEAAADAGQEHFqMfAOEBDCABAAAAwBkBBRajbQDhAQwgAQAAAMAZAUcWg2kA4QEMIAEAAADBGQFFFgNBAOEBDCABAAAAxBkBBxYjGgDhARYEAQAAAMUZAQcWYy4A4QEWBAEAAADGGQEHFkNLAeEBDCABAAAAyRkBBRZDGgDhAQwgAQAAAMgZAQcWYx0A4QEMIAEAAADJGQEHFkM0AOEBDCABAAAAyhkBBxbDMQDhAR4AAQAAAMsZAQYWo0AA4QEMIAEAAADMGQEHFmMoAOEBHgABAAAAyxkBBBbjFQDhAR4AAQAAAMsZAQIWQ6MA4QEMIAEAAADPGQEHFmMkAOEBDCABAAAA0BkBBxYDOgDhAR4AAQAAANEZAQYW4x4A4QEeIAEAAADSGQEGFuMVAOEBHgABAAAA0hkBAhZjGwDhARYEAQAAANQZAQcWA10A4QEWBAEAAADVGQEHFgMqAOEBHgABAAAA0hkBBhYDRgDhARYEAQAAANcZAQcWo/gA4QEuIAEAAADYGQEGFsMyAOEBHkABAAAA2BkBBBbDoADhAQwgAQAAANoZAQcWQ2kA4QEMIAEAAADbGQEHFuMeAOEBDCABAAAA3BkBBxbjFQDhASAgAQAAANgZAQIWQzkA4QEMIAEAAADeGQEHFoMmAOEBDCABAAAA3xkBBxbDywDhARpAAQAAAOAZAQcWwyMA4QEaQAEAAADgGQEFFiOhAOEBHgABAAAA4hkBBhZjGQDhARYEAQAAAOMZAQcWwyMA4QEaQAEAAADiGQEFFqOVAOEBHgABAAAA5RkBBhbjJgDhARpAAQAAAOUZAQUW4x4A4QEeAAEAAADnGQEGFuMVAOEBGkABAAAA5xkBBRYDKgDhARpAAQAAAOcZAQUWYzYA4QEMIAEAAADqGQEHFqNIAOEBHkABAAAA6xkBBhbDGQDhASIAAQAAAOwZAQYW4zoA4QEMIAEAAADtGQEHFgMZAOEBDCABAAAA7hkBBxYDQADhASAAAQAAAOsZAQIWQygA4QEMIAEAAADwGQEHFgMqAOEBDCABAAAA8BkBBRbjFQDhAR4AAQAAAOsZAQIWw1QA4QEeAAEAAADrGQEEFoMkAOEBDCABAAAA9BkBBxYDlADhARYEAQAAAPUZAQcWQ4wA4QEeQAEAAAAWGAECFkNYAOEBIEABAAAAFhgBAhbjFgDhAQwgAQAAAPgZAQcWw0IA4QEMIAEAAAD5GQEHFgNHAOEBDCABAAAA+hkBBxbDQgDhAQwgAQAAAPsZAQcWAxkA4QEMIAEAAAD8GQEHFmNeAOEBFgQBAAAA/RkBBxajJwDhARpAAQAAAP4ZAQcWQysA4QEaQAEAAAD+GQEFFoMwAOEBGkABAAAAABoBBxbDMADhARpAAQAAAAAaAQUWI5UA4QEMIAEAAAACGgEHFkMaAOEBDCABAAAAAxoBBxZDGgDhAQwgAQAAAAQaAQcWIxwA4QEMIAEAAAAFGgEHFmOLAOEBHgABAAAABhoBBhZjXADhAQwgAQAAAAcaAQcWI1cA4QEWBAEAAAAIGgEHFsMmAOEBDCABAAAACRoBBxbDVgDhARYEAQAAABEaAQUWw0oA4QEWBAEAAAARGgEFFmNcAOEBDCABAAAADBoBBxZjGwDhAQwgAQAAAA0aAQcW4xUA4QEaQAEAAAAGGgEFFmMmAOEBDCABAAAADxoBBxZDLgDhAQwgAQAAABAaAQcWgxsB4QEWBAEAAAARGgEHFuNGAOEBHiABAAAAEhoBBhZjHwDhARpAAQAAABIaAQUW4xUA4QEaQAEAAAASGgEFFqMfAOEBHiABAAAAEhoBBBYjLQDhAQwgAQAAABYaAQcWQyAA4QEMIAEAAAAXGgEHFmMcAOEBFgQBAAAAGBoBBxajKgDhARwMAQAAABkaAQcWYxsA4QEMIAEAAAAaGgEHFgNdAOEBHgABAAAAGxoBBhbjFQDhARpAAQAAABsaAQUWo3sA4QEeQAEAAAAdGgEGFgOGAOEBGkABAAAAHRoBBRbDVgDhARYEAQAAACIaAQUWw0oA4QEWBAEAAAAiGgEFFuNWAOEBHAwBAAAAIRoBBxaj9ADhARYEAQAAACIaAQcWo7IA4QEeAAEAAAAjGgEGFsNOAOEBHgABAAAAJBoBBhZjegDhAQwgAQAAACUaAQcWQ0UA4QEMIAEAAAAmGgEHFuMhAOEBDCABAAAAJxoBBxajUgDhARpAAQAAACgaAQcW4xUA4QEMIAEAAAApGgEHFuN4AOEBDCABAAAAKhoBBxajigDhAQwgAQAAACsaAQcWw1YA4QEWBAEAAAAwGgEFFsNKAOEBFgQBAAAAMBoBBRbjFQDhARpAAQAAACQaAQUW4xgA4QEMIAEAAAAkGgEFFiM7AOEBFgQBAAAAMBoBBRaDoADhAQwgAQAAADEaAQcW4zcA4QEWBAEAAAAyGgEHFsMaAOEBHAwBAAAAMxoBBxaDSADhAQwgAQAAADYaAQUWg0QA4QEMIAEAAAA1GgEHFqM8AOEBDCABAAAANhoBBxYjMQHhAQwgAQAAADcaAQcWg0QA4QEMIAEAAAA4GgEHFgMhAOEBDCABAAAAOBoBBRbDFgDhAQwgAQAAADoaAQcWYxwA4QEWBAEAAAA7GgEHFoMsAOEBDCABAAAAPRoBBRajPADhAQwgAQAAAD0aAQUWg0QA4QEMIAEAAAA+GgEHFoNzAOEBDCABAAAAPxoBBxZjiADhAQwgAQAAAEAaAQcWAy4A4QEMIAEAAABBGgEHFiMcAOEBDCABAAAAQhoBBxZDPQDhAQwgAQAAAEQaAQcWYz0A4QEMIAEAAABEGgEHFmM3AOEBDCABAAAARRoBBxbjYADhAQwgAQAAAEYaAQcWgyQA4QEeIAEAAABHGgEGFuMZAOEBGkABAAAARxoBBRbjFQDhAQwgAQAAAEkaAQcWw1YA4QEWBAEAAABbGgEFFsNKAOEBFgQBAAAAWxoBBRbjFQDhASAgAQAAAEcaAQIWYzEA4QEcDAEAAABNGgEHFoMhAOEBFgQBAAAAThoBBxajJADhARwMAQAAAE8aAQcWYxsA4QEMIAEAAABQGgEHFsMkAOEBHiABAAAARxoBBBZjJgDhAR4AAQAAAFIaAQYW4x4A4QEMIAEAAABTGgEHFuMVAOEBGkABAAAAUhoBBRbDQgDhAQwgAQAAAFUaAQcWI1cA4QEWBAEAAABWGgEHFiMtAOEBDCABAAAAVxoBBxaDPQDhAQwgAQAAAFgaAQcWw0IA4QEMIAEAAABZGgEHFuMeAOEBDCABAAAAWhoBBxaDewDhARYEAQAAAFsaAQcWgxcA4QEaQAEAAABcGgEHFgMaAOEBGkABAAAAXBoBBRYDGQDhAQwgAQAAAF4aAQcWg7cA4QEeIAEAAABfGgEGFmMbAOEBFgQBAAAAYBoBBxajKgDhARwMAQAAAGEaAQcWYxsA4QEMIAEAAABiGgEHFgNLAOEBHiABAAAAYxoBBhbjFQDhARpAAQAAAGMaAQUWI2AA4QEeIAEAAABfGgEGFuMZAOEBIEABAAAAXxoBAhbjHgDhAQwgAQAAAGcaAQcWw1YA4QEWBAEAAABrGgEFFsNKAOEBFgQBAAAAaxoBBRbjFQDhAR5AAQAAAF8aAQIWg6wA4QEWBAEAAABrGgEHFqNLAOEBGkABAAAAbBoBBxbjIwDhARYEAQAAAG0aAQcWwyoA4QEMIAEAAABuGgEHFkMrAOEBDCABAAAAbhoBBRaDJQDhAR4AAQAAAHAaAQYW4x4A4QEMIAEAAABxGgEHFuMVAOEBIAABAAAAcBoBAhbjzADhAR4AAQAAAHAaAQQWA9UA4QEMIAEAAAB0GgEHFiOlAOEBDCABAAAAdRoBBxZDKgDhAR4AAQAAAHYaAQYW4xUA4QEaQAEAAAB2GgEFFsNzAOEBGkABAAAAmRoBBRZjiQDhAQwgAQAAAHkaAQcWQ5sA4QEeAAEAAAB6GgEGFkMoAOEBDCABAAAAexoBBxbjFQDhAS4EAQAAAHoaAQIWQ80A4QEaQAEAAAB6GgEFFkMJAeEBFgQBAAAAfhoBBxbjSgDhAR4gAQAAAH8aAQYWI2IA4QEMIAEAAACAGgEHFuMVAOEBHkABAAAAfxoBAhYjYwDhARpAAQAAAH8aAQUWI0AA4QEuIAEAAACDGgEGFoN0AOEBGkABAAAAhBoBBxYjJgDhAQwgAQAAAIUaAQcWI0AA4QEMIAEAAACGGgEHFuMVAOEBHkABAAAAgxoBAhaDRQDhAR4gAQAAAIMaAQQWI7IA4QEMIAEAAACJGgEHFsNzAOEBDCABAAAAihoBBxbjSADhAQwgAQAAAIsaAQcWg1IA4QEeIAEAAACMGgEGFqMoAOEBGkABAAAAjBoBBRbDVgDhARYEAQAAAMgaAQUWw0oA4QEWBAEAAADIGgEFFoPQAOEBHgABAAAAkBoBBhajJgDhASAAAQAAAJAaAQIWwyYA4QEMIAEAAACSGgEHFuMVAOEBGkABAAAAkBoBBRbDVgDhARYEAQAAAJcaAQUWw0oA4QEWBAEAAACXGgEFFmMbAOEBDCABAAAAlhoBBxbDIADhARYEAQAAAJcaAQcWY1EA4QEMIAEAAACYGgEHFuMVAOEBHiABAAAAmRoBBhYDIwDhAQwgAQAAAJoaAQcW48YA4QEMIAEAAACbGgEHFqNvAOEBDCABAAAAnBoBBxbDJgDhASIAAQAAAJ0aAQYWoxUA4QEMIAEAAACeGgEFFiMZAOEBDCABAAAAnhoBBRbDVgDhARYEAQAAAKoaAQUWw0oA4QEWBAEAAACqGgEFFmMbAOEBDCABAAAAohoBBxbjFQDhARpAAQAAAJkaAQUWYxsA4QEWBAEAAACkGgEHFiNXAOEBFgQBAAAApRoBBxYjpwDhARpAAQAAAJkaAQUWY1EA4QEMIAEAAACnGgEHFsMfAOEBDCABAAAAqBoBBxbDdQDhAQwgAQAAAKkaAQcWgxsB4QEWBAEAAACqGgEHFgN2AOEBHgABAAAAqxoBBhYDQADhARpAAQAAAKsaAQUWQygA4QEMIAEAAACtGgEHFgNYAOEBGkABAAAAqxoBBxbjFQDhAR4AAQAAAKsaAQIWAzoA4QEeAAEAAACwGgEGFuMeAOEBDCABAAAAsRoBBxbjFQDhARpAAQAAALAaAQUWAzAA4QEeAAEAAACwGgEEFsO2AOEBDCABAAAAtBoBBxZjNwDhAQwgAQAAALUaAQcWY1EA4QEMIAEAAAC2GgEHFoPBAOEBHgABAAAAtxoBBhajRgDhAQwgAQAAALgaAQcWwzAA4QEeAAEAAAC3GgEEFuMVAOEBGkABAAAAtxoBBRajqgDhAQwgAQAAALsaAQcWA9YA4QEMIAEAAAC8GgEHFoMlAOEBHkABAAAAvRoBBhbjGQDhARYEAQAAAL4aAQcW4xUA4QEeQAEAAAC9GgECFuPMAOEBHgABAAAAvRoBBBajHADhAS5AAQAAAMEaAQYWoyQA4QEcDAEAAADCGgEHFmMbAOEBDCABAAAAwxoBBxZjKADhAR4AAQAAAMEaAQQW4xUA4QEaQAEAAADBGgEFFgMzAOEBDCABAAAAxhoBBxYDhADhARpAAQAAAJkaAQUWI70A4QEWBAEAAADIGgEHFqPRAeEBHgABAAAAyRoBBhZDJQDhARpAAQAAAMkaAQUW4xUA4QEaQAEAAADJGgEFFkPpAeEBGkABAAAAzBoBBxbjkQDhAR4AAQAAAM0aAQYWIxgA4QEMIAEAAADOGgEFFoPiAOEBDCABAAAAzhoBBRbjygHhARYEAQAAANAaAQcWQzwB4QEaQAEAAAA7GQEFFgPXAOEBDCABAAAA0hoBBxZj9QDhARYEAQAAANMaAQcWQ/wA4QEeQAEAAADUGgEGFqOVAOEBDCABAAAA1RoBBxZjHADhARYEAQAAANYaAQcWoyoA4QEcDAEAAADXGgEHFmMbAOEBDCABAAAA2BoBBxZDQgDhARpAAQAAANkaAQcWoxgA4QEgQAEAAADZGgECFmMqAOEBDCABAAAA2xoBBxbjFQDhARpAAQAAANkaAQUWY0IA4QEaQAEAAADZGgEFFmMfAOEBGkABAAAA1BoBBRbjFQDhAR5AAQAAANQaAQIWg2kA4QEeQAEAAADUGgEEFiPEAOEBHiABAAAA4RoBBhbjGQDhARpAAQAAAOEaAQUW4xUA4QEgAAEAAADhGgECFsMkAOEBHiABAAAA4RoBBBajqQDhAQwgAQAAAOoaAQUWQ68A4QEMIAEAAADmGgEHFuMeAOEBHkABAAAA5xoBBhZjHwDhARpAAQAAAOcaAQUW4xUA4QEMIAEAAADpGgEHFiM2AOEBDCABAAAA6hoBBxYjBwHZAR4gAQAAAOsaAQYW40IA4QEMIAEAAADsGgEHFiNuAOEBDCABAAAA7RoBBxbjFQDhAR5AAQAAAOsaAQIW4x4A4QEMIAEAAADvGgEHFiNMAOEBDCABAAAA8BoBBxdj6QHhASIAAQAAAPEaAQYXwxkA4QEeIAEAAADyGgEGF0MoAOEBDCABAAAA8xoBBxcDvwDhARYEAQAAAPQaAQcXQyQB4QEMIAEAAAD1GgEHF6NUAOEBDCABAAAA9hoBBxeDRQDhAQwgAQAAAPUaAQUXozUA4QEWBAEAAAD4GgEHF8MoAOEBHAwBAAAA+RoBBxdjGwDhAQwgAQAAAPoaAQcXwwIA4QEeAAEAAAD7GgEGF+MVAOEBIAABAAAA+xoBAhfDGgDhARYEAQAAAP0aAQcX458A4QEMIAEAAAD+GgEHF6NPAOEBDCABAAAA/xoBBxfD/gDhAQwgAQAAAP8aAQUXY28A4QEMIAEAAAABGwEHF8M0AOEBFgQBAAAAAhsBBxcjJgDhARpAAQAAAAMbAQcXYx8A4QEgQAEAAAADGwECF4MfAOEBDCABAAAABRsBBxfjFQDhAR5AAQAAAAMbAQIXgywA4QEMIAEAAAAHGwEHFwMqAOEBGkABAAAAAxsBBRcjTADhAUgEAQAAAAkbAQYXYx8A4QEgQAEAAAAJGwECF6MkAOEBHAwBAAAACxsBBxdjGwDhAQwgAQAAAAwbAQcXAyEA4QEMIAEAAAAJGwEFF2NRAOEBDCABAAAADhsBBxfjFQDhARpAAQAAAAkbAQUXoyMA4QEWBAEAAAAQGwEHF0MWAOEBDCABAAAAERsBBxdDGQDhAR4AAQAAABIbAQYXYxkA4QEWBAEAAAATGwEHF8MjAOEBHgABAAAAEhsBBBfDVgDhARYEAQAAABgbAQUXw0oA4QEWBAEAAAAYGwEFF+MVAOEBGkABAAAAEhsBBRdDjwDhARYEAQAAABgbAQcXow0B4QEuBAEAAAAZGwEGF2MbAOEBDCABAAAAGhsBBxeDiQDhARpAAQAAABkbAQUX4xkA4QEaQAEAAAAZGwEFF+MeAOEBIgABAAAAGRsBAhfDSgDhARYEAQAAABkbAQUXw1YA4QEWBAEAAAAjGwEFF8NKAOEBFgQBAAAAIxsBBRdjGwDhAQwgAQAAACEbAQcX4xUA4QEeAAEAAAAZGwECF4OsAOEBFgQBAAAAIxsBBxeD6QHhAQwgAQAAACQbAQcXA1YA4QEMIAEAAAAlGwEHF8NJAeEBHgABAAAAJhsBBheDTADhAQwgAQAAACcbAQcX4xUA4QEaQAEAAAAmGwEFFwNcAeEBDCABAAAAJhsBBRej6QHhARpAAQAAACYbAQUX40kB4QEWBAEAAAArGwEHF8NMAOEBDCABAAAALBsBBxfjrgDhAR4AAQAAAC0bAQYXg0wA4QEMIAEAAAAuGwEHF+MVAOEBIAABAAAALRsBAhfjzgDhARYEAQAAADAbAQcXQ2sA4QEeAAEAAAAxGwEGF0MoAOEBDCABAAAAMhsBBxfjFQDhASAAAQAAADEbAQIXo3UA4QEeAAEAAAAxGwEEF6MjAOEBFgQBAAAANRsBBxdjaQDhARwMAQAAADYbAQcXYxsA4QEMIAEAAAA3GwEHFwOBAOEBHkABAAAAOBsBBhfjFQDhARpAAQAAADgbAQUXoygA4QEeAAEAAAA4GwEEF0MgAOEBDCABAAAAOxsBBxfDGQDhARYEAQAAADwbAQcXY3wA4QEeIAEAAAA9GwEGF6MwAOEBGkABAAAAPRsBBRejRgDhAQwgAQAAAD8bAQcXwzAA4QEaQAEAAAA9GwEFF+MVAOEBHkABAAAAPRsBAhcjtADhAR5AAQAAAEIbAQYXYxkA4QEgQAEAAABCGwECF4NDAOEBDCABAAAARBsBBxfjFQDhARpAAQAAAEIbAQUXo1UB4QEeAAEAAABGGwEGF4MdAOEBGkABAAAARhsBBRfjFQDhARpAAQAAAEYbAQUXAzEB4QEeAAEAAABJGwEGF0MlAOEBGkABAAAASRsBBRfjFQDhARpAAQAAAEkbAQUXYzgA4QEaQAEAAABJGwEFF8NWAOEBFgQBAAAATxsBBRfDSgDhARYEAQAAAE8bAQUXY+0A4QEWBAEAAABPGwEHF4N0AOEBDCABAAAAUBsBBxdjMQDhARYEAQAAAFEbAQcXY3oA4QEMIAEAAABSGwEHFyNeAOEBDCABAAAAUxsBBxfDWQDhAQwgAQAAAFMbAQUXI6AA4QEeAAEAAABVGwEGF2MZAOEBFgQBAAAAVhsBBxcDOgDhAS4AAQAAAFcbAQYX4xkA4QEaQAEAAABXGwEFF+MeAOEBDCABAAAAWRsBBxfjFQDhASBAAQAAAFcbAQIXAzAA4QEaQAEAAABXGwEFFwOXAOEBFgQBAAAAXBsBBxdjOgDhAR4AAQAAAF0bAQYXozcA4QEMIAEAAABeGwEHFyNKAOEBHgABAAAAXxsBBhdDSgDhAQwgAQAAAGAbAQcX4xUA4QEaQAEAAABfGwEFFwNaAOEBGkABAAAAXxsBBRcjggDhAQwgAQAAAGMbAQcXA0AA4QEaQAEAAABjGwEFF6MjAOEBDCABAAAAZRsBBxfDIwDhAQwgAQAAAGUbAQUX4xUA4QEaQAEAAABjGwEFFwNAAOEBGkABAAAAZBsBRRfjFQDhARpAAQAAAGcbAUUXQ3QA4QEMIAEAAABjGwEFF4NXAOEBHgABAAAAaxsBBhfjHgDhAQwgAQAAAGwbAQcX4xUA4QEgAAEAAABrGwECF8MkAOEBGkABAAAAaxsBBRejIwDhAR4AAQAAAG8bAQYXwyMA4QEaQAEAAABvGwEFF+MVAOEBGkABAAAAbxsBBRdDjwDhARYEAQAAAHIbAQcXI9QB4QEMIAEAAABzGwEFF8MwAOEBDCABAAAAcxsBBRjD6QFyAhkwAQAAAHcbIQUZ4+kBdwIZMAEAAAB3GxEFGgPqAXkCGTABAAAAdxsBBRoDfwDhAQwgAQAAAHgbAQcaI34B4QEMIAEAAAB5GwEHGSPqARcCGDABAAAAehsRBRpD6gHZARgwAQAAAHobAQUbwycA2QEMIAEAAAB8GwEHG0OiANkBDCABAAAAfRsBBxtj6gHhAQwgAQAAAH4bAQcbQ+oB4QEMIAEAAAB/GwEHG4PqAdkBDCABAAAAgBsBBxyj6gFyAhkwAQAAAIMbIQUdw+oBdwIZMAEAAACDGxEFHuPqAXkCGTABAAAAgxsBBR5jggHhAR4AAQAAAIQbAQYegx0A4QEaQAEAAACEGwEFHuMpAOEBDCABAAAAhhsBBx7jFQDhASBAAQAAAIQbAQIeQzgA4QEiAAEAAACIGwEGHgMZAOEBDCABAAAAkRsBRx6jJwDhARpAAQAAAJIbAUcegycA4QEWBAEAAACTGwFHHiMrAOEBDCABAAAAlBsBRx4DKgDhAQwgAQAAAJUbAUUeQysA4QEaQAEAAACWGwFFHuMVAOEBFgQBAAAAlxsBRx5DIADhAQwgAQAAAJAbAQceAxkA4QEMIAEAAACRGwEHHoMwAOEBGkABAAAAkhsBBx6jMADhASBAAQAAAJIbAQIeo0YA4QEMIAEAAACUGwEHHgMqAOEBDCABAAAAlBsBBR7DMADhARpAAQAAAJIbAQUe4xUA4QEgQAEAAACSGwECHsMZAOEBLgQBAAAAmBsBBh7jtADhAQwgAQAAAJkbAQcew0IA4QEMIAEAAACaGwEHHoMXAOEBDCABAAAAmxsBBx5jGwDhAQwgAQAAAJwbAQceA1gA4QEMIAEAAACYGwEFHuMVAOEBDCABAAAAnhsBBx6DIgDhARwMAQAAAJ8bAQceI44B4QEMIAEAAACgGwEHHiO/AOEBHgABAAAAhBsBBB6j5wDhASwAAQAAAKIbAQYewzQA4QEMIAEAAACjGwEHHqMXAOEBHkABAAAApBsBBh4DhgDhASBAAQAAAKQbAQIeg0wA4QEMIAEAAACmGwEHHuMVAOEBGkABAAAApBsBBR4jZQDhAR4gAQAAAKQbAQYeA+sB4QEMIAEAAACpGwEHHuM/AOEBDCABAAAAqhsBBx6DLgDhAQwgAQAAAKwbAQUeozwA4QEMIAEAAACsGwEHHsNbAOEBDCABAAAArBsBBR6j3gDhAR4gAQAAAK4bAQYeg7EA4QEaQAEAAACuGwEFHiOEAOEBDCABAAAAsBsBBx4DKgDhAQwgAQAAALAbAQUe4xUA4QEiIAEAAACyGwEEHqPDAOEBDCABAAAArhsBBR6j1AHhAR4AAQAAALQbAQYe4zoA4QEeIAEAAAC1GwEGHgMnAOEBDCABAAAAthsBBx4DGADhAQwgAQAAALcbAQceoyYA4QEgQAEAAAC0GwECHgNuAOEBDCABAAAAuRsBBx7DJgDhAQwgAQAAALobAQce4yYA4QEeIAEAAAC1GwEEHoPGAOEBFgQBAAAAvBsBBx4DGQDhAQwgAQAAAL0bAQceYyIA4QEWBAEAAAC+GwEHHsMmAOEBHgABAAAAvxsBBh4DVgDhAQwgAQAAAMAbAQcegx8A4QEMIAEAAADBGwEHHuMVAOEBIAQBAAAAvxsBAh5jMQDhARwMAQAAAMMbAQceAyoA4QEaQAEAAAC/GwEHHiNAAOEBDCABAAAAxRsBBx4jJQDhAQwgAQAAAMYbAQcew1YA4QEWBAEAAADUGwEFHsNKAOEBFgQBAAAA1BsBBR7jVgDhARwMAQAAAMkbAQceYxsA4QEMIAEAAADKGwEHHuMVAOEBHiABAAAAtBsBAh4DLwDhAQwgAQAAAMwbAQceQx4A4QEMIAEAAADNGwEHHmMeAOEBFgQBAAAAzhsBBx6DFwDhARpAAQAAAM8bAQce4xkA4QEaQAEAAADPGwEFHgMaAOEBGkABAAAAzxsBBR7jFQDhARpAAQAAAM8bAQUeAxkA4QEMIAEAAADTGwEHHqN6AOEBFgQBAAAA1BsBBx7jTADhARYEAQAAANUbAQcewygA4QEcDAEAAADWGwEHHmMbAOEBDCABAAAA1xsBBx5DKgDhAR5AAQAAANgbAQYeQyAA4QEMIAEAAADZGwEHHsMZAOEBFgQBAAAA2hsBBx6jGADhARYEAQAAANsbAQceYyoA4QEMIAEAAADcGwEHHuMVAOEBHgABAAAA2BsBAh5jGwDhASIAAQAAAN4bAQYegyoA4QEMIAEAAADYGwEFHsNJAOEBDCABAAAA4BsBBx4jGQDhAQwgAQAAAOEbAQceI0AA4QEMIAEAAADiGwEHHuNJAOEBDCABAAAA4BsBBx6jVwDhAQwgAQAAAOQbAQce42kA4QEMIAEAAADlGwEHHuNVAOEBHiABAAAA5hsBBh4DhgDhARpAAQAAAOYbAQUeIyYA4QEMIAEAAADoGwEHHgMqAOEBDCABAAAA6BsBBR6DJQDhAQwgAQAAAOobAQcew5oA4QEMIAEAAADmGwEHHuMVAOEBGkABAAAA5hsBBR5jNwDhAQwgAQAAAO0bAQceYzcA4QEMIAEAAADuGwEHHsNcAOEBIAQBAAAA7xsBBh6DFwDhAR4gAQAAAPAbAQYe4xkA4QEWBAEAAADxGwEHHmMbAOEBDCABAAAA8hsBBx4DWADhARpAAQAAAO8bAQUeo6EA4QEMIAEAAAD0GwEHHgMfAOEBDCABAAAA9RsBBx4DGQDhAQwgAQAAAPYbAQceoycA4QEaQAEAAAD3GwEHHkMrAOEBGkABAAAA9xsBBR7jIQDhAQwgAQAAAPkbAQceYyAA4QEWBAEAAAD6GwEHHoMwAOEBGkABAAAA+xsBBx7DMADhARpAAQAAAPsbAQUeI1sA4QEMIAEAAAD9GwEHHoOfAOEBHgABAAAA/hsBBh4DhgDhASBAAQAAAP4bAQIeg0wA4QEMIAEAAAAAHAEHHsNWAOEBFgQBAAAABRwBBR7DSgDhARYEAQAAAAUcAQUe4xUA4QEeQAEAAAD+GwECHmMbAOEBFgQBAAAABBwBBx4DYQDhARYEAQAAAAUcAQUewwIA4QEeIAEAAAAGHAEGHgNAAOEBGkABAAAABhwBBR7jFQDhAR5AAQAAAAYcAQIeAxkA4QEMIAEAAAAJHAEHHuOBAOEBHiABAAAABhwBBh5DfwDhASIEAQAAAAscAQYeYxsA4QEMIAEAAAAMHAEHHgNNAOEBDCABAAAADRwBBx6j1QDhAQwgAQAAAA4cAQceYxQA4QEMIAEAAAAPHAEHHoNRAOEBDCABAAAADxwBBx6DFwDhARYEAQAAABEcAQcegy4A4QEMIAEAAAATHAEFHqM8AOEBDCABAAAAExwBBR6jrwDhAQwgAQAAABQcAQceQ0oA4QEeAAEAAAAVHAEGHoMfAOEBDCABAAAAFhwBBx7jFQDhARpAAQAAABUcAQUeAyoA4QEaQAEAAAAVHAEFHkMYAOEBHkABAAAAGRwBBh7DLwDhAR4gAQAAABocAQYeQyUA4QEaQAEAAAAaHAEFHuMfAOEBHgABAAAAGhwBBB7jFQDhARpAAQAAABocAQUeg38A4QEMIAEAAAAeHAEHHuMVAOEBGkABAAAAGRwBBR6D1gDhAQwgAQAAABkcAQUeIx4A4QEMIAEAAAAhHAEHHiOgAOEBGkABAAAAIhwBBx7DIwDhARpAAQAAACIcAQUeAxkA4QEMIAEAAAAkHAEHHmNpAOEBHAwBAAAAJRwBBx4DbgDhAR5AAQAAACYcAQYeAyMA4QEiBAEAAAAnHAEGHgMZAOEBDCABAAAALhwBRx6jJwDhARpAAQAAAC8cAUcegycA4QEWBAEAAAAwHAFHHiMrAOEBDCABAAAAKxwBBx5DKwDhARpAAQAAADIcAUUe4xUA4QEaQAEAAAAzHAFFHgMZAOEBDCABAAAALhwBBx6DMADhARpAAQAAAC8cAQceozAA4QEWBAEAAAAwHAEHHqNGAOEBDCABAAAAMRwBBx7DMADhARpAAQAAAC8cAQUe4xUA4QEaQAEAAAAvHAEFHgMyAOEBDCABAAAAJxwBBR6DUAHhASIEAQAAADUcAQYeo6AA4QEMIAEAAAA2HAEHHiOVAOEBDCABAAAANxwBBx4jJgDhAQwgAQAAADgcAQce4xUA4QEuIAEAAAAmHAECHiOnAOEBDCABAAAAORwBBR7jvwDhAQwgAQAAADscAQceoyMA4QEWBAEAAAA8HAEHHmNpAOEBHAwBAAAAPRwBBx5jGwDhAQwgAQAAAD4cAQceAzYB4QEWBAEAAAA/HAEHHoOiAOEBDCABAAAAQBwBBx4DOgDhAQwgAQAAAEEcAQceYyUA4QEeQAEAAAAmHAEEHmN6AOEBDCABAAAAQxwBBx5DZADhAQwgAQAAAEQcAQceo/EA4QEMIAEAAABFHAEHHqN9AOEBGkABAAAAFR4BBR5jLgDhARYEAQAAAEccAQceYzcA4QEMIAEAAABIHAEHHmMcAOEBFgQBAAAASRwBBx5DyADhAQwgAQAAAEocAQceA0EA4QEMIAEAAABLHAEHHuMfAOEBDCABAAAAThwBBR7DHQDhAQwgAQAAAE0cAQce438A4QEMIAEAAABOHAEHHmNAAOEBDCABAAAATxwBBx6DHADhARYEAQAAAFAcAQceY64A4QEMIAEAAABSHAEHHuMXAOEBDCABAAAAUhwBBx4jRQDhAS4EAQAAAFMcAQYeo1YA4QEMIAEAAABUHAEHHkMoAOEBDCABAAAAVRwBBx4DWADhAQwgAQAAAFMcAQUe4xUA4QEaQAEAAABTHAEFHuNmAOEBLiABAAAAWBwBBh4DIwDhAS4AAQAAAFkcAQYeg4UA4QEeAAEAAABaHAEGHsMjAOEBGkABAAAAWhwBBx7DVgDhARYEAQAAAGAcAQUew0oA4QEWBAEAAABgHAEFHmMbAOEBFgQBAAAAXhwBBx4jVwDhARYEAQAAAF8cAQceozcA4QEWBAEAAABgHAEHHqPKAOEBDCABAAAAYRwBBx6jQgDhAQwgAQAAAGIcAQceI0wA4QEeQAEAAABjHAEGHmMfAOEBGkABAAAAWBwBBR6DHwDhAQwgAQAAAGUcAQceAyEA4QEeAAEAAABjHAEEHmORAOEBDCABAAAAZxwBBx5DfgDhAQwgAQAAAGccAQUeoyMA4QEMIAEAAABpHAEHHsMjAOEBDCABAAAAaRwBBR7jeADhAQwgAQAAAGscAQcewyEA4QEaQAEAAABsHAEHHqNGAOEBDCABAAAAbRwBBx7DMADhARpAAQAAAGwcAQUe4xUA4QEeAAEAAABsHAECHuMVAOEBIEABAAAAWBwBAh1DFgDnAU4AAQAAAHEcEQAeQxYA4QEsBAEAAAByHAEGHgMqAOEBFgQBAAAAcxwBBx6D9ADhAQwgAQAAAHQcAQceA74A4QEcDAEAAAB1HAEHHmMbAOEBDCABAAAAdhwBBx5jGwDhARYEAQAAAHccAQceQ1EA4QEMIAEAAAB4HAEHHgNLAOEBDCABAAAAeRwBBx4jVwDhARYEAQAAAHocAQce4xUA4QEMIAEAAAB7HAEHHqP4AOEBFgQBAAAAfBwBBx5jHwDhASAAAQAAAFgcAQIew1YA4QEWBAEAAACBHAEFHsNKAOEBFgQBAAAAgRwBBR7jFQDhASBAAQAAAFgcAQIew6YA4QEWBAEAAACBHAEHHgNnAOEBHiABAAAAWBwBBB4jLQDhAQwgAQAAAIMcAQceQ38A4QEeQAEAAACEHAEGHuMZAOEBGkABAAAAhBwBBR7jHgDhAQwgAQAAAIYcAQceAyoA4QEMIAEAAACGHAEFHuMVAOEBLkABAAAAhBwBAh4jrADhAR4AAQAAAIkcAQYeA0AA4QEgAAEAAACJHAECHgNYAOEBGkABAAAAiRwBBR7jFQDhARYEAQAAAIwcAQceYzEA4QEcDAEAAACNHAEHHsMkAOEBHkABAAAAhBwBBB5DfgDhAQwgAQAAAGccAQUegyYB4QEMIAEAAACQHAEHHgMZAOEBDCABAAAAkRwBBx7j5gDhARpAAQAAAJIcAQceYykA4QEgQAEAAACSHAECHuMVAOEBDCABAAAAlBwBBx6DFgDhARpAAQAAAJIcAQUe4xUA4QEuQAEAAACSHAECHoMkAOEBDCABAAAAlxwBBx5DGQDhAR4AAQAAAJgcAQYeYxkA4QEaQAEAAACYHAEFHsMjAOEBHgABAAAAmBwBBB7jFQDhARpAAQAAAJgcAQUeIxwA4QEMIAEAAACcHAEHHmMeAOEBFgQBAAAAnRwBBx2DFwDnARgwAQAAAJ4cEQUegxcA4QEeIAEAAACfHAEGHgMYAOEBDCABAAAAoBwBBx7jGQDhASBAAQAAAJ8cAQIeYxsA4QEWBAEAAACiHAEHHsNWAOEBFgQBAAAAphwBBR7DSgDhARYEAQAAAKYcAQUeYxsA4QEMIAEAAAClHAEHHqMkAOEBFgQBAAAAphwBBx7DGADhAQwgAQAAAKccAQceAzAA4QEMIAEAAACnHAEFHuMeAOEBDCABAAAAqRwBBx4jIgDhAQwgAQAAAKocAQcdAxoA5wEYMAEAAACrHBEFHgMaAOEBHiABAAAAnxwBBB7DQgDhAQwgAQAAAK0cAQceI1cA4QEWBAEAAACuHAEHHoNcAOEBFgQBAAAArxwBBx4jLQDhAQwgAQAAALAcAQcew0IA4QEMIAEAAACxHAEHHsMfAOEBFgQBAAAAshwBBx4jGgDhASIEAQAAALMcAQYewzEA4QEMIAEAAAC0HAEHHuM1AOEBDCABAAAAtRwBBx7jFQDhARpAAQAAAJ8cAQUegyoA4QEMIAEAAAC1HAEFHgMZAOEBHiABAAAAuBwBBh5jGwDhAQwgAQAAALkcAQceYyIA4QEWBAEAAAC6HAEHHqMYAOEBGkABAAAAuBwBBR5jKgDhAQwgAQAAALwcAQceA0YA4QEMIAEAAAC9HAEHHuMVAOEBGkABAAAAuBwBBR7jHgDhAQwgAQAAAL8cAQce4xgA4QEMIAEAAAC4HAEHHiMaAOEBDCABAAAAwRwBBx6DHADhARYEAQAAAMIcAQcewxoA4QEcDAEAAADDHAEHHkMdAOEBDCABAAAAxBwBBx5DLQDhAQwgAQAAAMEcAQcegyEA4QEWBAEAAADGHAEHHmMaAOEBDCABAAAAxxwBBx5jIgDhASIAAQAAAMgcAQYeY6wA4QEMIAEAAADJHAEHHkMzAOEBDCABAAAAyRwBBR4jdADhARYEAQAAAMscAQceY1QA4QEMIAEAAADMHAEHHuMgAOEBDCABAAAAzRwBBx7jJADhAQwgAQAAAM4cAQceIykA4QEiIAEAAADPHAEGHgMaAOEBDCABAAAAzxwBBR7jVgDhARwMAQAAANEcAQceoykA4QEWBAEAAADSHAEHHiOgAOEBIAQBAAAA0xwBBh7DSgDhARYEAQAAANMcAQUe4xUA4QEaQAEAAADTHAEFHmNpAOEBHAwBAAAA1hwBBx5jGwDhAQwgAQAAANccAQceA2QA4QEMIAEAAADYHAEHHgMvAOEBDCABAAAA2RwBBx7jFgDhAR5AAQAAANocAQYe4xUA4QEaQAEAAADaHAEFHgOhAOEBHkABAAAA3BwBBh4DYgDhARpAAQAAANwcAQUeI2IA4QEMIAEAAADeHAEHHuMVAOEBGkABAAAA3BwBBR4jYwDhARpAAQAAANwcAQceY1EA4QEMIAEAAADhHAEHHiPrAdkBDCABAAAA4hwBBxxD6wEKAhkwAQAAAOUcIQUdY+sBDwIZMAEAAADlHBEFHmPrARECGTABAAAA5RwBBR4jQADhAQwgAQAAAOYcAQceYyYA4QEWBAEAAADnHAEHHsMgAOEBHAwBAAAA6BwBBx5jGwDhAQwgAQAAAOkcAQcegzEA4QEgQAEAAADqHAECHsNWAOEBFgQBAAAA8BwBBR4jIADhARpAAQAAAPAcAQUew0oA4QEWBAEAAADwHAEFHuNWAOEBHAwBAAAA7hwBBx5jGwDhAQwgAQAAAO8cAQceg2YA4QFIBAEAAADwHAEGHuMVAOEBFgQBAAAA8RwBBx7jrgDhAQwgAQAAAPIcAQcewyoA4QEMIAEAAADzHAEHHoPPAOEBDCABAAAA8hwBBR5DawDhAR5AAQAAAPUcAQYeQygA4QEMIAEAAAD2HAEHHuMVAOEBHkABAAAA9RwBAh6jdQDhARpAAQAAAPUcAQUeY/8A4QEMIAEAAAD5HAEHHsNWAOEBFgQBAAAA/hwBBR7DSgDhARYEAQAAAP4cAQUe41YA4QEcDAEAAAD8HAEHHmMbAOEBDCABAAAA/RwBBx4jQQDhARYEAQAAAP4cAQceIx0A4QEeIAEAAAD/HAEGHqNMAOEBDCABAAAAAB0BBx5DMQDhASBAAQAAAP8cAQIeQ0oA4QEeAAEAAAACHQEGHuMeAOEBDCABAAAAAx0BBx7DVgDhARYEAQAAAA0dAQUew0oA4QEWBAEAAAANHQEFHmMbAOEBDCABAAAABh0BBx7jFQDhAUoAAQAAAP8cAQIeY5QA4QEaQAEAAAAIHQEHHkMoAOEBHiABAAAACR0BBh7jFQDhARpAAQAAAAkdAQUeI0kA4QEaQAEAAAD/HAEFHiMtAOEBDCABAAAADB0BBx6jYwDhARYEAQAAAA0dAQceIzQA4QEWBAEAAAAOHQEHHoNgAOEBDCABAAAADx0BBx5jNwDhAQwgAQAAABAdAQceQy4A4QEMIAEAAAARHQEHHoNIAOEBDCABAAAAEh0BBx5DZwDhAQwgAQAAABMdAQceo1IA4QEMIAEAAAAUHQEHHiObAOEBHiABAAAAFR0BBh7jFQDhARpAAQAAABUdAQUeg0wA4QEMIAEAAAAXHQEHHsNCAOEBDCABAAAAGB0BBx6DTADhAQwgAQAAABkdAQceY6kA4QEMIAEAAAAaHQEHHqMkAOEBFgQBAAAAGx0BBx4DIwDhAQwgAQAAABwdAQce48YA4QEMIAEAAAAdHQEHHuOPAOEBLgQBAAAAHh0BBh4jkADhARpAAQAAAB8dAQce4xUA4QEaQAEAAAAfHQEFHsMcAOEBGkABAAAAHx0BBR6DfwDhASIEAQAAAB4dAQIew0oA4QEWBAEAAAAeHQEFHqMjAOEBFgQBAAAAJB0BBx4jRQDhAQwgAQAAACUdAQceIxkA4QEMIAEAAAAmHQEHHiMrAOEBDCABAAAAJx0BBx6jFwDhAQwgAQAAACgdAQceQ28A4QEcDAEAAAApHQEHHmMbAOEBDCABAAAAKh0BBx4jawDhAR5AAQAAACsdAQYewxkA4QEWBAEAAAAsHQEHHuM6AOEBDCABAAAALR0BBx6jVwDhAQwgAQAAAC4dAQceYx8A4QEaQAEAAAArHQEFHoMfAOEBDCABAAAAMB0BBx7jFQDhAR4gAQAAACsdAQIeAyoA4QEaQAEAAAArHQEFHsNCAOEBDCABAAAAMx0BBx6DIADhAQwgAQAAADQdAQceA2QA4QEMIAEAAAA1HQEHHgMvAOEBDCABAAAANh0BBx7jxgDhAQwgAQAAADcdAQceI+IA4QEMIAEAAAA4HQEHHsNZAOEBDCABAAAAOh0BBR6jHQDhAQwgAQAAADodAQceAzwA4QEMIAEAAAA7HQEHHgM0AOEBFgQBAAAAPB0BBx6DFwDhARYEAQAAAD0dAQcegzEA4QEaQAEAAABAHQEFHiMgAOEBGkABAAAAQB0BBR7DNQDhARpAAQAAAEAdAQUe43kA4QEeQAEAAABBHQEGHmMbAOEBFgQBAAAAQh0BBx7jcADhAQwgAQAAAEMdAQce40AA4QEMIAEAAABDHQEFHiMaAOEBFgQBAAAARR0BBx5DLQDhAQwgAQAAAEYdAQceQ0kA4QEMIAEAAABHHQEHHkMxAOEBIEABAAAAQR0BAh5DSgDhAQwgAQAAAEkdAQce4xUA4QEaQAEAAABBHQEFHkMWAeEBGkABAAAAQR0BBR4joADhAQwgAQAAAEwdAQceA/QA4QEeAAEAAABNHQEGHgNAAOEBGkABAAAATR0BBR7jFQDhARpAAQAAAE0dAQUeA0AA4QEaQAEAAABOHQFFHuMVAOEBGkABAAAATx0BRR5jQADhAR4AAQAAAFIdAQYeg0MA4QEMIAEAAABTHQEHHsM8AOEBFgQBAAAAVB0BBx6DHADhARYEAQAAAFUdAQcegyAA4QEMIAEAAABWHQEHHmMdAOEBDCABAAAAVx0BBx6DJwDhARYEAQAAAFgdAQceQysA4QEMIAEAAABaHQEFHiMcAOEBDCABAAAAWh0BBx4jGgDhARYEAQAAAFsdAQcewxgA4QEMIAEAAABcHQEHHmMaAOEBDCABAAAAXR0BBx5DHQDhARYEAQAAAF4dAQceAwQB4QEeIAEAAABfHQEGHoNDAOEBDCABAAAAYB0BBx4DswDhAQwgAQAAAGEdAQce46kA4QEMIAEAAABhHQEFHuMeAOEBDCABAAAAYx0BBx6DQwDhAQwgAQAAAGQdAQceAxkA4QEMIAEAAABlHQEHHkMaAOEBDCABAAAAZh0BBx4jQADhAQwgAQAAAGcdAQceIyYA4QEMIAEAAABoHQEHHoNDAOEBDCABAAAAaR0BBx7DGADhAQwgAQAAAGodAQceQ0IB4QEMIAEAAABrHQEHHmNWAOEBGkABAAAAXx0BBR6DfwDhAQwgAQAAAG0dAQce4xUA4QEaQAEAAABfHQEFHiMtAOEBDCABAAAAbx0BBx7jsQDhAR4gAQAAAF8dAQYe4x4A4QEMIAEAAABxHQEHHgNHAOEBDCABAAAAch0BBx6jJwDhASwAAQAAAHMdAQYeQx0A4QEMIAEAAAB0HQEHHoM7AOEBDCABAAAAdR0BBx7jiwDhAQwgAQAAAHYdAQcewx0A4QEMIAEAAAB3HQEHHiO/AeEBIiABAAAAeB0BBh5jLgDhARYEAQAAAHkdAQceIzsA4QEMIAEAAAB6HQEHHkNkAOEBDCABAAAAex0BBx4jPADhARYEAQAAAHwdAQceY2QA4QEMIAEAAAB9HQEHHuN9AOEBHiABAAAAfh0BBh5jVgDhARYEAQAAAH8dAQce438A4QEMIAEAAAB+HQEFHiM8AOEBFgQBAAAAgR0BBx6DHADhARYEAQAAAIIdAQcewxoA4QEcDAEAAACDHQEHHuMVAOEBGkABAAAAfh0BBR5DOADhARYEAQAAAIUdAQceYxsA4QEMIAEAAACGHQEHHgMZAOEBDCABAAAAkB0BRx7jGADhAQwgAQAAAJEdAUUeoycA4QEaQAEAAACSHQFHHoMnAOEBFgQBAAAAkx0BRx4jKwDhAQwgAQAAAJQdAUceAyoA4QEMIAEAAACVHQFFHkMrAOEBGkABAAAAlh0BRR7jFQDhARpAAQAAAJcdAUUeQyAA4QEMIAEAAACPHQEHHgMZAOEBDCABAAAAkB0BBx7jGADhAQwgAQAAAJAdAQUegzAA4QEaQAEAAACSHQEHHqMwAOEBIEABAAAAkh0BAh6jRgDhAQwgAQAAAJQdAQceAyoA4QEMIAEAAACUHQEFHsMwAOEBGkABAAAAkh0BBR7jFQDhARpAAQAAAJIdAQUe4xUA4QEiIAEAAACYHQEGHiOSAOEBFgQBAAAAmR0BBx7DcQDhAQwgAQAAAKAdAQcewxcA4QEWBAEAAACbHQEHHoNcAOEBHAwBAAAAnB0BBx5jGwDhAQwgAQAAAJ0dAQceIy4A4QEMIAEAAACeHQEHHiMyAOEBDCABAAAAnx0BBx4DaADhAQwgAQAAAKAdAQceAxkA4QEMIAEAAAChHQEHHoMhAOEBFgQBAAAAoh0BBx5jGgDhAQwgAQAAAKMdAQceoykA4QEiAAEAAACkHQEGHkMoAOEBDCABAAAApR0BBx4jLgDhAQwgAQAAAKYdAQcegy8A4QEWBAEAAACnHQEHHmM4AOEBDCABAAAAph0BBR5DPgDhAQwgAQAAAKkdAQceYxoA4QEMIAEAAACqHQEHHmMcAOEBFgQBAAAAqx0BBx6jKgDhARwMAQAAAKwdAQceI6cB4QEaQAEAAACtHQEHHkNkAOEBDCABAAAArh0BBx5jkQDhARpAAQAAAK0dAQUeA0cA4QEMIAEAAACwHQEHHuMZAOEBGkABAAAArR0BBR7jFQDhARpAAQAAAK0dAQUd4zYA5wEYMAEAAACzHQEFHoNEAOEBDCABAAAAtB0BBx4DQwDhAQwgAQAAALUdAQceg+sB4QEeAAEAAAC2HQEGHgMjAOEBDCABAAAAtx0BBx5jGwDhAQwgAQAAALgdAQceIy0A4QEMIAEAAAC5HQEHHoNkAOEBFgQBAAAAuh0BBx7jFQDhAR4AAQAAALYdAQIeI5MA4QEMIAEAAAC8HQEHHkPQAOEBGkABAAAAth0BBR6DqwHZAQwgAQAAAL4dAQceYzYA4QEMIAEAAAC/HQEHHmM3AOEBDCABAAAAwB0BBx5DVwDhAR5AAQAAAMEdAQYewwIA4QEMIAEAAADCHQEHHoNMAOEBDCABAAAAwx0BBx4DKgDhAQwgAQAAAMMdAQUe41YA4QEcDAEAAADFHQEHHmMbAOEBDCABAAAAxh0BBx7jFQDhASBAAQAAAMEdAQIeA3YA4QEaQAEAAADIHQEHHqMXAOEBDCABAAAAyR0BBx5DKADhAQwgAQAAAModAQceA1gA4QEaQAEAAADIHQEFHuM+AOEBDCABAAAAzB0BBx4jZQDhAR4gAQAAAMEdAQQeA0sA4QEMIAEAAADOHQEHHkOhAOEBDCABAAAAzx0BBx6jUgDhAQwgAQAAANAdAQceA8IA4QEWBAEAAADRHQEHHoMxAOEBGkABAAAAuyABBR5DowDhATAEAQAAANMdAQYeIxUB4QEaQAEAAADUHQEHHmMqAOEBDCABAAAA1R0BBx7jFQDhAQwgAQAAANYdAQcewxwA4QEaQAEAAADUHQEFHiOEAOEBFgQBAAAA0x0BBR7DSgDhARYEAQAAANMdAQUeY1wA4QEcDAEAAADaHQEHHmMbAOEBDCABAAAA2x0BBx4DogDhAR5AAQAAANwdAQYeA0AA4QEWBAEAAADdHQEHHkMoAOEBDCABAAAA3h0BBx4DWADhARpAAQAAANwdAQUe4xUA4QEuQAEAAADcHQECHsPPAOEBDCABAAAA4R0BBx7jQADhAQwgAQAAAOEdAQceIxoA4QEiAAEAAADjHQEGHgMZAOEBDCABAAAA6x0BRx6jJwDhARpAAQAAAOwdAUcegycA4QEaQAEAAADtHQFFHkMrAOEBGkABAAAA7h0BRR7jFQDhARpAAQAAAO8dAUUe4yEA4QEMIAEAAADpHQEHHmMgAOEBDCABAAAA6h0BBx4DGQDhAQwgAQAAAOsdAQcegzAA4QEaQAEAAADsHQEHHqMwAOEBGkABAAAA7B0BBR7DMADhARpAAQAAAOwdAQUe4xUA4QEaQAEAAADsHQEFHkM+AOEBDCABAAAA8B0BBx5DPgDhAQwgAQAAAPEdAQceQz4A4QEMIAEAAADyHQEHHkM4AOEBDCABAAAA8x0BBx5jYgDhAR4AAQAAAPQdAQYe4xUA4QEaQAEAAAD0HQEFHWN6AOcBHAwBQAEA9x0RBR5jegDhAUgMAQAAAPcdARYeI04A4QEMIAEAAAD4HQEHHsM5AOEBFgQBAAAA+R0BBx5jGwDhAQwgAQAAAPodAQceIyIA4QEMIAEAAAD7HQEHHuOBAOEBDCABAAAA9x0BBR7DGgDhARYEAQAAAP0dAQceA5QA4QEMIAEAAAD+HQEHHqN5AOEBDCABAAAA/x0BBx7jGQDhARYEAQAAAAAeAQcewygA4QEcDAEAAAABHgEHHmMeAOEBIiABAAAAAh4BBh6DFwDhARpAAQAAAAMeAQce4xkA4QEgQAEAAAADHgECHgMaAOEBGkABAAAABR4BBR7jFQDhASBAAQAAAAMeAQIeAxkA4QEMIAEAAAAHHgEHHoMhAOEBFgQBAAAACB4BBx7DZwDhAQwgAQAAAAoeAQUe4zQA4QEMIAEAAAAKHgEHHuMVAOEBHgABAAAACx4BBh7DVgDhARYEAQAAABQeAQUew0oA4QEWBAEAAAAUHgEFHuNWAOEBHAwBAAAADh4BBx5jGwDhAQwgAQAAAA8eAQce4xUA4QEuBAEAAAALHgECHmMbAOEBFgQBAAAAER4BBx7jSgDhAQwgAQAAABIeAQceI6cA4QEMIAEAAAALHgEFHoMbAeEBFgQBAAAAFB4BBx7jtwDhAR5AAQAAABUeAQYeo3kA4QEMIAEAAAAWHgEHHgOGAOEBGkABAAAAFR4BBR6DTADhAQwgAQAAABgeAQcewzkA4QEMIAEAAAAZHgEHHmMbAOEBDCABAAAAGh4BBx7jFQDhASAAAQAAABUeAQIeg7cA4QEMIAEAAAAcHgEHHoOnAOEBGkABAAAAFR4BBR6jUgDhAQwgAQAAAB4eAQceY/UA4QEWBAEAAAAfHgEHHgM6AOEBHiABAAAAIB4BBh7jHgDhAQwgAQAAACEeAQce4xUA4QEgAAEAAAAgHgECHoOiAOEBDCABAAAAIx4BBx5jPwDhAQwgAQAAACQeAQceYyIA4QEiAAEAAAAlHgEGHuN/AOEBDCABAAAAJh4BBR4DGgDhAQwgAQAAACYeAQUeI0UA4QEaQAEAAAAoHgEHHgNAAOEBFgQBAAAAKR4BBx5DKADhAQwgAQAAACoeAQceA1gA4QEaQAEAAAAoHgEFHuMVAOEBGkABAAAAKB4BBR6DFwDhARpAAQAAAC0eAQce4xkA4QEaQAEAAAAtHgEFHgMaAOEBGkABAAAALR4BBR7jFQDhARpAAQAAAC0eAQUeAxkA4QEMIAEAAAAxHgEHHqMpAOEBFgQBAAAAMh4BBx5jbwDhAQwgAQAAADMeAQceg5IA4QEeQAEAAAA0HgEGHsPyAOEBDCABAAAANR4BBx7jfwDhAQwgAQAAADceAQUe49gA4QEMIAEAAAA3HgEFHmMfAOEBIEABAAAANB4BAh6DHwDhAQwgAQAAADkeAQce4xUA4QEuQAEAAAA0HgECHmMxAOEBHAwBAAAAOx4BBx4j8wDhAQwgAQAAADweAQce40kA4QEaQAEAAAA0HgEFHiOhAOEBHgABAAAAPh4BBh5jGQDhASAAAQAAAD4eAQIeg0MA4QEMIAEAAABAHgEHHgNGAOEBDCABAAAAQR4BBx7DIwDhAR4gAQAAAD4eAQQe4xUA4QEeAAEAAAA+HgECHoMkAOEBDCABAAAARB4BBx6jPADhAQwgAQAAAEUeAQceo+sB2QEMIAEAAABGHgEHHkOJAeEBDCABAAAARx4BBR7D6wHhAQwgAQAAAEceAQUeo0wA4QEMIAEAAABJHgEHHuPrAeEBDCABAAAASh4BBx4jGgDhARYEAQAAAEseAQcewxoA4QEcDAEAAABMHgEHHkMgAOEBDCABAAAATR4BBx4DTwDhAS4gAQAAAE4eAQYeAyYA4QEeAAEAAABPHgEGHoNMAOEBDCABAAAAUB4BBx6DzQDhAQwgAQAAAFEeAQceA4YA4QEgQAEAAABOHgECHoNMAOEBDCABAAAAUx4BBx6jIwDhAQwgAQAAAFQeAQcewyMA4QEMIAEAAABUHgEFHiMmAOEBDCABAAAAVh4BBx4DKgDhAQwgAQAAAFYeAQUe4xUA4QEMIAEAAABYHgEHHsM5AOEBDCABAAAAWR4BBx7DVgDhARYEAQAAAG0eAQUew0oA4QEWBAEAAABtHgEFHuNWAOEBHAwBAAAAXB4BBx7DYADhAQwgAQAAAF0eAQceY1QA4QEMIAEAAABeHgEHHuMVAOEBHkABAAAATh4BAh6jJgDhARYEAQAAAGAeAQceI6cA4QEMIAEAAABfHgEFHmMgAOEBDCABAAAAYh4BBx7jKQDhAQwgAQAAAGMeAQcew0IA4QEMIAEAAABkHgEHHkM4AOEBHiABAAAAZR4BBh7jFQDhAQwgAQAAAGYeAQceg7cA4QEMIAEAAABnHgEHHiMiAOEBDCABAAAAaB4BBx4jZQDhAR4gAQAAAE4eAQYe41UA4QEMIAEAAABqHgEHHoNMAOEBDCABAAAAax4BBx7jFQDhAQwgAQAAAGweAQceA8IA4QEWBAEAAABtHgEHHgMjAOEBDCABAAAAbh4BBx6DJgDhAQwgAQAAAG8eAQcew1YA4QEWBAEAAAB0HgEFHsNKAOEBFgQBAAAAdB4BBR7jVgDhARwMAQAAAHIeAQceYxsA4QEMIAEAAABzHgEHHiMfAeEBFgQBAAAAdB4BBx4D7AHhAQwgAQAAAHUeAQceo8YA4QEMIAEAAAB2HgEHHkNJAOEBDCABAAAAdx4BBx6jYQDhASIAAQAAAHgeAQYegxwA4QEWBAEAAAB5HgEHHsMaAOEBHAwBAAAAeh4BBx4jNADhARYEAQAAAHseAQceAzgA4QEMIAEAAAB8HgEHHkOMAOEBGkABAAAAfR4BBx4DhgDhARpAAQAAAH0eAQUegzkA4QEMIAEAAAB/HgEHHiNuAOEBDCABAAAAgB4BBx6DTADhAQwgAQAAAIEeAQcew5oA4QEaQAEAAAB9HgEFHuMVAOEBGkABAAAAfR4BBR4jbgDhAR5AAQAAAPUcAQIeQ7IA4QEaQAEAAAD1HAEFHqM1AOEBFgQBAAAAhh4BBx5DIADhAQwgAQAAAIceAQcewygA4QEcDAEAAACIHgEHHmMbAOEBDCABAAAAiR4BBx7DzADhAQwgAQAAAIoeAQceYxwA4QEWBAEAAACLHgEHHkMuAOEBDCABAAAAjB4BBx4DJwDhAR4gAQAAAI0eAQYewzYA4QEMIAEAAACOHgEHHsOAAOEBFgQBAAAAjx4BBx6DQwDhAQwgAQAAAJAeAQcewzwA4QEWBAEAAACRHgEHHuNAAOEBDCABAAAAjB4BBR7DHgDhARYEAQAAAJMeAQcegxcA4QEMIAEAAACUHgEHHkMaAOEBDCABAAAAlR4BBx4DPQDhAQwgAQAAAJYeAQceYxwA4QEWBAEAAACXHgEHHiNnAOEBDCABAAAAmR4BBR6jkwDhAQwgAQAAAJkeAQUeQw8B4QEMIAEAAACbHgEFHqOTAOEBDCABAAAAmx4BBR7D9ADhAR4AAQAAAJweAQYeY1YA4QEaQAEAAACcHgEFHoN/AOEBDCABAAAAnh4BBx7jFQDhARpAAQAAAJweAQUeg9YA4QEaQAEAAACcHgEFHiMYAOEBLiABAAAAoR4BBh5DoADhAQwgAQAAAKIeAQceYxsA4QEMIAEAAACjHgEHHiNRAOEBDCABAAAApB4BBx7jHgDhAQwgAQAAAKUeAQceoxgA4QEgQAEAAAChHgECHsMzAOEBDCABAAAApx4BBx6jIwDhAQwgAQAAAKgeAQcewyMA4QEMIAEAAACoHgEFHmNcAOEBDCABAAAAqh4BBx5jGwDhARYEAQAAAKseAQceI1cA4QEWBAEAAACsHgEHHgNHAOEBDCABAAAArR4BBx5jKgDhAQwgAQAAAK4eAQcew0wA4QEMIAEAAACvHgEHHiM3AOEBDCABAAAAoR4BBR7DAgDhARpAAQAAALEeAQceA0AA4QEaQAEAAACxHgEFHkMoAOEBDCABAAAAsx4BBx7jFQDhAR4AAQAAALEeAQIe44EA4QEaQAEAAACxHgEFHiNMAOEBDCABAAAAth4BBx5DGQDhARpAAQAAALceAQcew4wA4QEMIAEAAAC4HgEHHoMkAOEBDCABAAAAuR4BBx7DVgDhARYEAQAAAL4eAQUew0oA4QEWBAEAAAC+HgEFHuNWAOEBHAwBAAAAvB4BBx7jFQDhAR4AAQAAAKEeAQIeIzsA4QEWBAEAAAC+HgEHHuMZAOEBFgQBAAAAvx4BBx4jRgDhARpAAQAAACYcAQUeo3AA4QEeAAEAAADBHgEGHqOyAOEBHgABAAAAwh4BBh6DtADhAQwgAQAAAMMeAQceI0gA4QEMIAEAAADEHgEHHqMDAeEBHgABAAAAxR4BBh5jVgDhARYEAQAAAMYeAQceg38A4QEMIAEAAADHHgEHHuMVAOEBIAABAAAAxR4BAh4DeADhARpAAQAAAMUeAQUeo5QA4QEeQAEAAADKHgEGHgNPAOEBDCABAAAAyx4BBx5DSQHhAQwgAQAAAMweAQceA0sA4QEMIAEAAADNHgEHHoMpAOEBDCABAAAAzh4BBx7DGQDhARYEAQAAAM8eAQce4zoA4QEMIAEAAADQHgEHHmNWAOEBIEABAAAAyh4BAh6DfwDhAR4gAQAAANIeAQYeYx8A4QEWBAEAAADTHgEHHuMVAOEBHkABAAAAyh4BAh4jRQDhAR4AAQAAANUeAQYeA1gA4QEaQAEAAADVHgEFHgN4AOEBHiABAAAAyh4BBh4joQDhAQwgAQAAANgeAQce4zoA4QEMIAEAAADZHgEHHoN6AOEBDCABAAAA2h4BBx6DRADhAR4gAQAAANseAQYeYx8A4QEaQAEAAADbHgEFHmM7AOEBDCABAAAA3R4BBx7DKgDhAQwgAQAAAN4eAQceg38A4QEMIAEAAADfHgEHHiMiAOEBDCABAAAA4B4BBx4DIQDhAR4gAQAAANseAQQeA/8A4QEMIAEAAAD2HgFHHgNiAOEBFgQBAAAA4x4BBx4DYwDhAQwgAQAAAOYeAUUegzEA4QEgAAEAAADlHgECHiMgAOEBDCABAAAA9h4BBR7jFQDhARpAAQAAANseAQUew4wA4QEMIAEAAADoHgEHHmN6AOEBDCABAAAA6R4BBx5DOQDhAR4gAQAAAOoeAQYeIyUA4QEWBAEAAADrHgEHHkMxAOEBGkABAAAA6h4BBR7DVgDhARYEAQAAAPUeAQUew0oA4QEWBAEAAAD1HgEFHuNWAOEBHAwBAAAA7x4BBx5jGwDhAQwgAQAAAPAeAQce4xUA4QEaQAEAAADqHgEFHgNdAOEBFgQBAAAA8h4BBx4DWgDhAQwgAQAAAOoeAQUdA4sA5wEYMAEAAAAAABABHgOLAOEBFgQBAAAA9R4BBx6jKQDhAR4gAQAAAPYeAQYeo3sA4QEMIAEAAAD3HgEHHmMkAOEBDCABAAAA+B4BBx5DKADhAQwgAQAAAPkeAQceg2UB4QEaQAEAAAD6HgEFHuNFAeEBDCABAAAA+x4BBx4DNQHhAQwgAQAAAPseAQUeozgA4QEMIAEAAAD7HgEFHiNgAOEBGkABAAAA+h4BBR7jGQDhARpAAQAAAPoeAQUe4xUA4QEaQAEAAAD6HgEFHuNQAOEBDCABAAAAAR8BBx6DJQDhASIAAQAAAAIfAQYe4xkA4QEWBAEAAAADHwEHHmMbAOEBDCABAAAABB8BBx7DIADhARwMAQAAAAUfAQceYxsA4QEMIAEAAAAGHwEHHqMlAOEBDCABAAAABx8BBx6DogDhAQwgAQAAAAgfAQceY1YA4QEWBAEAAAAJHwEHHuMVAOEBDCABAAAACh8BBx6DKQDhAQwgAQAAAAsfAQceo7cA4QEaQAEAAAAMHwEHHuM6AOEBDCABAAAADR8BBx6jVwDhAQwgAQAAAA4fAQceg2QA4QEaQAEAAAAMHwEFHuMVAOEBHgABAAAADB8BAh5DYwDhARpAAQAAAAwfAQUeI+wB2QEMIAEAAAASHwEHHuN1AOEBDCABAAAAEx8BBx4DQQDhAQwgAQAAABQfAQceAx8A4QEMIAEAAAAVHwEHHuM/AOEBHgABAAAAFh8BBh4DWADhARpAAQAAABYfAQUe4xUA4QEaQAEAAAAWHwEFHmMdAOEBDCABAAAAGR8BBx5j3gDhAR5AAQAAABofAQYeI4QA4QEMIAEAAAAbHwEHHoPeAOEBGkABAAAAGh8BBR7jFQDhARpAAQAAABofAQUeg3QA4QEeAAEAAAAeHwEGHkMoAOEBDCABAAAAHx8BBx4DWADhARpAAQAAAB4fAQUe4xUA4QEgAAEAAAAeHwECHmMxAOEBHAwBAAAAIh8BBx5jMQDhARYEAQAAACMfAQceA0sA4QEwBAEAAAAkHwEGHsOLAOEBFgQBAAAAJR8BBx6jVwDhATAAAQAAACYfAQYegyYA4QEMIAEAAAAnHwEHHoNYAOEBGkABAAAAKB8BBx5jKgDhAQwgAQAAACkfAQce4xUA4QEaQAEAAAAoHwEFHsMcAOEBGkABAAAAKB8BBR4DIwDhARYEAQAAACwfAQcewygA4QEcDAEAAAAtHwEHHmMbAOEBDCABAAAALh8BBx6jqgDhAQwgAQAAAC8fAQceQzoA4QEWBAEAAAAwHwEHHmMbAOEBDCABAAAAMR8BBx6jVwDhARwMAQAAADIfAQceQyoA4QEeIAEAAAAzHwEGHqMYAOEBIAQBAAAAMx8BAh5jKgDhAQwgAQAAADUfAQce4xUA4QEuQAEAAAAzHwECHoMqAOEBHiABAAAAMx8BBB6jmgDhASIAAQAAADgfAQYeg1gA4QEaQAEAAAA5HwEHHsMcAOEBGkABAAAAOR8BBR6jqgDhAQwgAQAAADsfAQceQzoA4QEWBAEAAAA8HwEHHuNVAOEBDCABAAAAPR8BBx4DbgDhAR4AAQAAAD4fAQYeQyUA4QEgQAEAAAA+HwECHuMVAOEBGkABAAAAPh8BBR5jJQDhAR4AAQAAAD4fAQQeY4sA4QEWBAEAAABCHwEHHqMkAOEBHAwBAAAAQx8BBx5jGwDhAQwgAQAAAEQfAQcewyYA4QEMIAEAAABFHwEHHgMqAOEBDCABAAAARR8BBR6DdADhARpAAQAAAEcfAQceA0AA4QEgAAEAAABHHwECHoM5AOEBDCABAAAASR8BBx5DKADhAQwgAQAAAEofAQceA1gA4QEeAAEAAABHHwECHuMVAOEBHgABAAAARx8BAh6DFwDhARpAAQAAAE0fAQceAxoA4QEaQAEAAABNHwEFHgMZAOEBDCABAAAATx8BBx4DygDhAR4AAQAAAFAfAQYeA0QA4QEMIAEAAABRHwEHHsMmAOEBDCABAAAAUh8BBx5jGwDhASIAAQAAAFMfAQYeI1cA4QEWBAEAAABUHwEHHgNEAOEBDCABAAAAVR8BBx5DewDhAQwgAQAAAFUfAQUeY1YA4QEaQAEAAABQHwEFHoN/AOEBDCABAAAAWB8BBx7jFQDhASAAAQAAAFAfAQIe4+MA4QEeAAEAAABQHwEEHqPXAOEBDCABAAAAWx8BBx7jQADhAQwgAQAAAHIfAQUeA9IA4QEMIAEAAABdHwEHHkMdAOEBDCABAAAAXh8BBx7jRADhARYEAQAAAF8fAQcegxwA4QEWBAEAAABgHwEHHsMaAOEBHAwBAAAAYR8BBx5DLQDhAQwgAQAAAGIfAQceIyAA4QEMIAEAAABmHwEFHmMgAOEBDCABAAAAZB8BBx6jPQDhAQwgAQAAAGQfAQUeYywB4QEMIAEAAABmHwEHHuNnAOEBDCABAAAAcx8BBR4DGQDhAQwgAQAAAGgfAQcegzEA4QEgBAEAAABpHwECHiMgAOEBGkABAAAAax8BBR7DNQDhARpAAQAAAGsfAQce4xUA4QEaQAEAAABrHwEFHoMgAOEBDCABAAAAbR8BBx4jGwDhAQwgAQAAAG4fAQcew2cA4QEMIAEAAABwHwEFHuM0AOEBDCABAAAAcB8BBR5jGADhAQwgAQAAAHEfAQceIzYA4QEMIAEAAAByHwEHHuMkAOEBDCABAAAAcx8BBx5DHQDhARYEAQAAAHQfAQceA40A4QEWBAEAAAB1HwEHHuOwAOEBLgABAAAAdh8BBh4jIADhAQwgAQAAAHgfAQUew6YA4QEMIAEAAAB4HwEHHgMjAOEBDCABAAAAeR8BBx7jeADhAQwgAQAAAHofAQcew0IA4QEMIAEAAAB7HwEHHkM5AOEBDCABAAAAfB8BBx7jSgDhAS4EAQAAAH0fAQYeI2IA4QEMIAEAAAB+HwEHHuMVAOEBIEABAAAAfR8BAh4jYwDhARpAAQAAAH0fAQUe464A4QEeIAEAAACBHwEGHgOGAOEBIEABAAAAgR8BAh6DTADhAQwgAQAAAIMfAQcew1YA4QEWBAEAAACIHwEFHsNKAOEBFgQBAAAAiB8BBR7jFQDhARpAAQAAAIEfAQUeg88A4QEeAAEAAACBHwEEHuPOAOEBFgQBAAAAiB8BBx4jHQDhAR4gAQAAAIkfAQYegx0A4QEMIAEAAACKHwEHHkMxAOEBGkABAAAAiR8BBR5DSgDhAQwgAQAAAIwfAQcew1YA4QEWBAEAAACXHwEFHsNKAOEBFgQBAAAAlx8BBR7jFQDhAS5AAQAAAIkfAQIeQ1EA4QEMIAEAAACQHwEHHmMkAOEBGkABAAAAkR8BBx6jGADhASAEAQAAAJEfAQIeYyoA4QEMIAEAAACTHwEHHiM3AOEBGkABAAAAkR8BBR7jFQDhARpAAQAAAJEfAQUeI0kA4QEeIAEAAACJHwEEHqNjAOEBFgQBAAAAlx8BBR4jsgDhAQwgAQAAAJgfAQceg80A4QEMIAEAAACZHwEHHgNLAOEBDCABAAAAmh8BBx5jkQDhAQwgAQAAAJgfAQUeg58A4QEaQAEAAACcHwEHHoNMAOEBDCABAAAAnR8BBx7jFQDhARpAAQAAAJwfAQUeoycA4QEWBAEAAACfHwEHHgNjAeEBDCABAAAAoB8BBx6DNQDhARpAAQAAAKEfAQceoxgA4QEgQAEAAAChHwECHmMqAOEBDCABAAAAox8BBx7jFQDhAR5AAQAAAKEfAQIewxwA4QEaQAEAAAChHwEFHoOrAOEBDCABAAAAoB8BBR5DIADhAQwgAQAAAKcfAQceYxwA4QEWBAEAAACoHwEHHqMqAOEBHAwBAAAAqR8BBx5jGwDhAQwgAQAAAKofAQceA88B4QEiAAEAAACrHwEGHoP/AOEBDCABAAAArB8BBx7jNADhAQwgAQAAAK0fAQceg+EA4QEMIAEAAACuHwEHHoMcAOEBFgQBAAAArx8BBx5jrgDhAQwgAQAAALIfAQceA2YA4QEWBAEAAACxHwEHHuMXAOEBDCABAAAAsh8BBx4jGQDhAQwgAQAAALMfAQceIxkA4QEMIAEAAAC0HwEHHsM9AOEBDCABAAAAtR8BBx5jKADhAQwgAQAAALYfAQcegzcA4QEMIAEAAAC3HwEHHoM3AOEBDCABAAAAuB8BBx5jGwDhAR4gAQAAALkfAQYegycA4QEgQAEAAAC5HwECHkMrAOEBHkABAAAAuR8BBB6jigDhARYEAQAAALwfAQce4xUA4QEaQAEAAAC5HwEFHuNGAOEBDCABAAAAvh8BBx6jHwDhAQwgAQAAAL4fAQUeI6EA4QEuIAEAAADAHwEGHkMgAOEBDCABAAAAwR8BBx7DGQDhARYEAQAAAMIfAQceYxkA4QEgQAEAAADAHwECHoNDAOEBDCABAAAAxB8BBx7DIwDhAR5AAQAAAMAfAQQew1YA4QEWBAEAAADKHwEFHsNKAOEBFgQBAAAAyh8BBR5jGwDhAQwgAQAAAMgfAQce4xUA4QEeQAEAAADAHwECHqM3AOEBFgQBAAAAyh8BBx6DbQDhAQwgAQAAAMwfAQUeY2IA4QEMIAEAAADMHwEFHiPmAOEBDCABAAAAzR8BBx5DVgDhARpAAQAAAM4fAQce4xUA4QEeAAEAAADOHwECHsNaAeEBGkABAAAAzh8BBR5D0ADhARpAAQAAAM4fAQUeAyIA4QEMIAEAAADSHwEHHoM8AOEBDCABAAAA0h8BBR6DFwDhASAAAQAAANQfAQYeAxoA4QEaQAEAAADUHwEFHgMZAOEBDCABAAAA1h8BBx4jNgDhAQwgAQAAANcfAQceQ1gA4QEgQAEAAADYHwECHgN2AOEBHgABAAAA2R8BBh7DPwDhARYEAQAAANofAQce4x4A4QEWBAEAAADaHwEFHsMgAOEBHAwBAAAA3B8BBx5jGwDhAQwgAQAAAN0fAQce4yAA4QEMIAEAAADeHwEHHsMfAOEBHiABAAAA3x8BBh4jHgDhAQwgAQAAAOAfAQceQx4A4QEMIAEAAADhHwEHHsMYAOEBFgQBAAAA4h8BBx7DIADhARwMAQAAAOMfAQceIyYA4QEMIAEAAADkHwEHHuMfAOEBDCABAAAA3x8BBR7jFQDhARpAAQAAAN8fAQUew2kA4QEMIAEAAADnHwEHHoMXAOEBGkABAAAA6B8BBx4DGQDhAQwgAQAAAOkfAQceg04A4QEMIAEAAADqHwEHHiNXAOEBHiABAAAA6x8BBh4jJQDhARYEAQAAAOwfAQceg0wA4QEMIAEAAADtHwEHHuMVAOEBDCABAAAA7h8BBx6DJQDhAQwgAQAAAO8fAQceg0wA4QEMIAEAAADwHwEHHgMqAOEBDCABAAAA8B8BBR7DmgDhAR4gAQAAAOsfAQQe4xUA4QEuBAEAAADrHwECHmMxAOEBHAwBAAAA9B8BBx5jGwDhAQwgAQAAAPUfAQce4xUA4QEeIAEAAAD2HwEGHkMeAOEBDCABAAAA9x8BBx7DGADhARYEAQAAAPgfAQcewyAA4QEcDAEAAAD5HwEHHsMmAOEBDCABAAAA+h8BBx7DVgDhARYEAQAAAP8fAQUew0oA4QEWBAEAAAD/HwEFHuMVAOEBGkABAAAA9h8BBR4jpwDhAQwgAQAAAPYfAQcegxsB4QEWBAEAAAD/HwEHHkMWAOEBDCABAAAAACABBx5jVwDhAR4gAQAAAAEgAQYeg6IA4QEeIAEAAAACIAEGHmNWAOEBFgQBAAAAAyABBx6DfwDhAQwgAQAAAAQgAQce438A4QEMIAEAAAACIAEHHsNWAOEBFgQBAAAAECABBR7DSgDhARYEAQAAABAgAQUe4xUA4QEMIAEAAAAIIAEHHuMVAOEBDCABAAAACSABBx5jVgDhASBAAQAAAAEgAQIeg38A4QEMIAEAAAALIAEHHuMVAOEBHkABAAAAASABAh7jawDhAR4gAQAAAAEgAQQeIxkA4QEMIAEAAAAOIAEHHiMrAOEBDCABAAAADyABBx7DUQHhARYEAQAAABAgAQcegyEA4QEaQAEAAAARIAEHHgPnAOEBGkABAAAAESABBR6DKQDhAQwgAQAAABMgAQcegxYA4QEaQAEAAAARIAEFHuMVAOEBHkABAAAAESABAh4jRADhAQwgAQAAABYgAQceQzgA4QEMIAEAAAAXIAEHHiPyAOEBDCABAAAAGSABBR7jNADhAQwgAQAAABkgAQceQ2QA4QEMIAEAAAAaIAEHHiMjAOEBGkABAAAA3x8BBR5DjADhAR4gAQAAABwgAQYew5oA4QEeIAEAAAAcIAEEHuMVAOEBHgABAAAAHCABAh5jlADhAR5AAQAAAB8gAQYeQygA4QEMIAEAAAAgIAEHHuMVAOEBGkABAAAAHyABBR7jgQDhAR4AAQAAAB8gAQQeQy4A4QEMIAEAAAAjIAEHHuNAAOEBDCABAAAAIyABBR7DegDhAQwgAQAAACUgAQceI1AA4QEWBAEAAAAmIAEHHkOmAOEBDCABAAAAJyABBx7DJgDhARYEAQAAACYgAQUew0oA4QEWBAEAAAAmIAEFHoM5AOEBDCABAAAAKiABBx5jMQDhARwMAQAAACsgAQcew0IA4QEMIAEAAAAsIAEHHiMiAOEBDCABAAAALSABBx5jNwDhAQwgAQAAAC4gAQceozwA4QEMIAEAAAAvIAEHHiNRAOEBHgABAAAAMCABBh4DRQDhAQwgAQAAADEgAQceoxYA4QEMIAEAAAAyIAEHHkNyAOEBDCABAAAAMyABBx5jVgDhARpAAQAAADAgAQUew1YA4QEWBAEAAAA4IAEFHsNKAOEBFgQBAAAAOCABBR7jFQDhARpAAQAAADAgAQUeo/IA4QEWBAEAAAA4IAEHHgN4AOEBHgABAAAAMCABBB6jJQDhARpAAQAAABEgAQUeo28A4QEgQAEAAADrHwECHkMkAOEBFgQBAAAAPCABBx7jIQDhAQwgAQAAAD0gAQcewxoA4QEcDAEAAAA+IAEHHuMgAOEBHiABAAAAPyABBh5jHwDhASBAAQAAAD8gAQIeAyEA4QEMIAEAAAA/IAEFHuMVAOEBGkABAAAAPyABBR5jkADhAQwgAQAAAEMgAQceg3QA4QEeIAEAAABEIAEGHgNAAOEBGkABAAAARCABBR5DKADhAQwgAQAAAEYgAQceA1gA4QEeQAEAAABEIAEEHuMVAOEBIEABAAAARCABAh4jWgDhAR4AAQAAAEkgAQYeI28A4QEMIAEAAABKIAEHHsP+AOEBDCABAAAASiABBR5DMQDhARpAAQAAAEkgAQUe4xUA4QEaQAEAAABJIAEFHmPmAOEBDCABAAAATiABBx7DWwDhAR4AAQAAAEkgAQQeA4QA4QEWBAEAAABQIAEHHsOzAOEBHgABAAAAUSABBh7jdQDhAQwgAQAAAFIgAQce48wA4QEeAAEAAABRIAEEHuMZAOEBGkABAAAAUSABBR7jFQDhARpAAQAAAFEgAQUeYyQA4QEMIAEAAABWIAEHHqOrAOEBHiABAAAAVyABBh6DHQDhARpAAQAAAFcgAQUeYxsA4QEMIAEAAABZIAEHHuMVAOEBGkABAAAAVyABBR7DGQDhAQwgAQAAAFsgAQceA0AA4QEWBAEAAABcIAEHHoMiAOEBFgQBAAAAXSABBx7DOQDhARYEAQAAAF4gAQceg1wA4QEcDAEAAABfIAEHHmMbAOEBDCABAAAAYCABBx4DvwDhARYEAQAAAGEgAQceo6YB4QEeIAEAAABiIAEGHkN7AOEBDCABAAAAYiABBR6jbwDhASBAAQAAAMEdAQIeQ+wB4QEeAAEAAABlIAEGHqN7AOEBDCABAAAAZiABBx5DJQDhASBAAQAAAGUgAQIe4xUA4QEaQAEAAABlIAEFHsMYAOEBDCABAAAAaSABBx4DMADhAQwgAQAAAGkgAQUeIy0A4QEMIAEAAABrIAEHHmMzAOEBDCABAAAAbCABBx6DMQDhASBAAQAAAG0gAQIeIyAA4QEeIAEAAAB0IAEEHuOVAOEBDCABAAAAbyABBx7jQQDhAQwgAQAAAG8gAQUeYxwA4QEWBAEAAABxIAEHHqMqAOEBHAwBAAAAciABBx5jGwDhAQwgAQAAAHMgAQceQ/kA4QEeIAEAAAB0IAEGHuMVAOEBHkABAAAAdCABAh6DwwDhAR4gAQAAAHYgAQYeg7EA4QEgAAEAAAB2IAECHiOEAOEBDCABAAAAeCABBx7DVgDhARYEAQAAAH8gAQUew0oA4QEWBAEAAAB/IAEFHuNWAOEBHAwBAAAAeyABBx5jGwDhAQwgAQAAAHwgAQce4xUA4QEeAAEAAAB2IAECHqPDAOEBHgABAAAAdiABBB5j7QDhARYEAQAAAH8gAQceAxkA4QEMIAEAAACAIAEHHoMxAOEBGkABAAAAgyABBR4jIADhARpAAQAAAIMgAQUewzUA4QEaQAEAAACDIAEHHuMVAOEBGkABAAAAgyABBR4jNgDhARpAAQAAAIUgAQUewxkA4QEeIAEAAACGIAEGHqNbAOEBDCABAAAAhyABBx4DQADhARpAAQAAAIYgAQUeQygA4QEMIAEAAACJIAEHHgNYAOEBHgABAAAAhiABBB7jFQDhARoEAQAAAIYgAQUeQzEA4QEaQAEAAACFIAEFHuMVAOEBGkABAAAAhSABBR5D1gDhAR4gAQAAAI4gAQYeg38A4QEMIAEAAACPIAEHHsNWAOEBFgQBAAAAlCABBR7DSgDhARYEAQAAAJQgAQUe4xUA4QEeAAEAAACOIAECHoNMAOEBDCABAAAAkyABBx6j1gDhARYEAQAAAJQgAQce48MB4QEaQAEAAACVIAEHHgOEAOEBIEABAAAACx4BAh6jGADhASBAAQAAAJUgAQIeYyoA4QEMIAEAAACYIAEHHuMVAOEBIAQBAAAAlSABAh5jMQDhARwMAQAAAJogAQce40AB4QEaQAEAAACVIAEFHmMyAOEBHiABAAAAnCABBh7jGQDhASBAAQAAAJwgAQIeYxsA4QEMIAEAAACeIAEHHuMVAOEBHgABAAAAnCABAh4DMADhAQwgAQAAAJwgAQUew5kB4QEMIAEAAAChIAEHHgPjAOEBDCABAAAAoiABBx4DGQDhAQwgAQAAAKMgAQcegzEA4QEgAAEAAACkIAECHiMgAOEBGkABAAAApiABBR6jsQDhARpAAQAAAKYgAQce4xUA4QEgAAEAAACmIAECHmMcAOEBFgQBAAAAqCABBx6jKgDhARwMAQAAAKkgAQceA3IA4QEiBAEAAACqIAEGHsNKAOEBFgQBAAAAqiABBR5DIADhAQwgAQAAAKwgAQcewygA4QEcDAEAAACtIAEHHuPnAeEBDCABAAAAriABBx5jHADhARYEAQAAAK8gAQcew1YA4QEWBAEAAAC0IAEFHsNKAOEBFgQBAAAAtCABBR7jVgDhARwMAQAAALIgAQceYxsA4QEMIAEAAACzIAEHHgOrAOEBFgQBAAAAtCABBx4jSADhAQwgAQAAALUgAQceA4QA4QEMIAEAAAC2IAEHHuMeAOEBHiABAAAAtyABBh6DHwDhAQwgAQAAALggAQce4xUA4QEaQAEAAAC3IAEFHgMqAOEBHgABAAAAtyABBB5DHADZAR4AAQAAALsgAQYeY+wB4QEMIAEAAAC8IAEHHkMdAOEBFgQBAAAAvSABBx7jbgDhAR4gAQAAAL4gAQYeA0AA4QEaQAEAAAC+IAEFHmMbAOEBFgQBAAAAwCABBx5DFgDhAQwgAQAAAMEgAQceQygA4QEMIAEAAADCIAEHHgNYAOEBDCABAAAAviABBR5DUQDhAQwgAQAAAMQgAQce410B4QEMIAEAAADbIAEFHuMVAOEBGiABAAAAviABBR4DGQDhAQwgAQAAAMcgAQceoycA4QEaQAEAAADIIAEHHoMnAOEBFgQBAAAAySABBx5DKwDhARpAAQAAAMggAQUeoyMA4QEWBAEAAADLIAEHHmNpAOEBHAwBAAAAzCABBx5jGwDhAQwgAQAAAM0gAQceYyAA4QEMIAEAAADOIAEHHiMaAOEBFgQBAAAAzyABBx7DGgDhARwMAQAAANAgAQceYzcA4QEMIAEAAADRIAEHHgMZAOEBDCABAAAA0iABBx6DMADhARpAAQAAANMgAQceozAA4QEWBAEAAADUIAEHHsMwAOEBGkABAAAA0yABBR7jfwDhAQwgAQAAANkgAQUegy4A4QEMIAEAAADYIAEFHqM8AOEBDCABAAAA2CABBx4DeADhAQwgAQAAANkgAQUeYy8A4QEMIAEAAADaIAEHHuM0AOEBDCABAAAA2yABBx5DeADhAR4AAQAAANwgAQYegzEA4QEaQAEAAADcIAEFHiMgAOEBGkABAAAA3CABBR4DfgDhAR4AAQAAAN8gAQYe4xUA4QEaQAEAAADcIAEFHiMcAOEBDCABAAAA4SABBx4jGgDhASIAAQAAAOIgAQYeA2QA4QEMIAEAAADjIAEHHgMvAOEBDCABAAAA5CABBx6DegDhAQwgAQAAAOUgAQceYzYA4QEMIAEAAADmIAEHHiM/AeEBDCABAAAA5yABBx/DGQDhARYEAQAAAOggAQcfAxkA4QEMIAEAAADpIAEHH+MWAOEBFgQBAAAA6iABBx+jJADhARwMAQAAAOsgAQcfYxsA4QEMIAEAAADsIAEHH0MgAOEBDCABAAAA7SABBx+jowHZAR4AAQAAAO4gAQYfY5EAZQIMIAEAAADvIAEFHwPlAGUCFgQBAAAA8CABBR8DMABlAgwgAQAAAPEgAQUfAxkAZQIWBAEAAADyIAEFHwMqAGUCDCABAAAA8yABBR/jFQBlAhpAAQAAAPQgAQUfwzcA4QEWBAEAAAD1IAEHHyMpAOEBFgQBAAAA9iABBx9jJADhARYEAQAAAPcgAQcfI5IA4QEiAAEAAAD4IAEGHyMaAOEBFgQBAAAA+SABBx9jHADhARYEAQAAAPogAQcfIxoA4QEWBAEAAAD7IAEHH0MdAOEBFgQBAAAA/CABBx8DLQDhARYEAQAAAP0gAQcfIxkA4QEMIAEAAAD+IAEHH4MdAOEBGkABAAAA7iABBR/jFQDhAR4AAQAAAO4gAQIf40IA4QEMIAEAAAABIQEHH0MrAOEBDCABAAAAASEBBR9DHQDhARYEAQAAAAMhAQcfgxwA4QEWBAEAAAAEIQEHH4MoAOEBDCABAAAABSEBBx9DJgDhAQwgAQAAAAYhAQcfYxwA4QEiIAEAAAAHIQEGH6MqAOEBHAwBAAAACCEBBx9jGwDhAQwgAQAAAAkhAQcfwxgA4QEMIAEAAAAKIQEHH0MmAOEBHgQBAAAACyEBBh9jGgDhAQwgAQAAAAwhAQcfQwUB4QEMIAEAAAANIQEFH4McAOEBFgQBAAAADiEBBx9jKADhAQwgAQAAAA0hAQUf4yAA4QEMIAEAAAAQIQEHH2McAOEBFgQBAAAAESEBBx+jKgDhARwMAQAAABIhAQcfw3IA4QEMIAEAAAATIQEHHwMiAOEBDCABAAAAFSEBBR+jPADhAQwgAQAAABUhAQUfoykA4QEMIAEAAAAWIQEHH8MfAOEBGkABAAAAFyEBBx8jJgDhAQwgAQAAABghAQcf4x8A4QEaQAEAAAAXIQEFH+MVAOEBGkABAAAAFyEBBR8DGQDhAQwgAQAAABshAQcfYx4A4QEMIAEAAAAcIQEHH8MZAOEBFgQBAAAAHSEBBx8DGQDhAQwgAQAAAB4hAQcf4yQB4QEaQAEAAAAfIQEHHyMzAOEBIEABAAAAHyEBAh9jGwDhAQwgAQAAACEhAQcfI4gA4QEMIAEAAAAiIQEHH0MzAOEBGkABAAAAHyEBBR/jFQDhARpAAQAAAB8hAQUfQyQA4QEWBAEAAAAlIQEHH6MyAOEBGkABAAAAJiEBBx9jGgDhAQwgAQAAACchAQcfwzIA4QEaQAEAAAAmIQEFHyMgAOEBDCABAAAAKiEBBR/jVgDhAQwgAQAAACohAQcf4yAA4QEMIAEAAAArIQEHHyOmAeEBFgQBAAAALCEBBx9jOQDhAQwgAQAAAC4hAQUfwzgA4QEMIAEAAAAuIQEHH0M8AOEBFgQBAAAALyEBBx/jUADhAQwgAQAAADAhAQcfowkB4QEMIAEAAAAwIQEFHyNAAOEBDCABAAAAMiEBBx/jFQDhAQwgAQAAADMhAQcfw0IA4QEWBAEAAAA0IQEHHwPpAOEBDCABAAAANSEBBR9jKADhAQwgAQAAADUhAQUfwxgA4QEWBAEAAAA3IQEHH6MgAOEBLgQBAAAAOCEBBh/jGQDhARpAAQAAADghAQUfgzEA4QEaQAEAAAA8IQEFHyMgAOEBGkABAAAAPCEBBR/DNQDhARpAAQAAADwhAQUf4xUA4QEaQAEAAAA4IQEFHwMZAOEBDCABAAAAPiEBBx+DIQDhARYEAQAAAD8hAQcfoyQA4QEcDAEAAABAIQEHH2MbAOEBDCABAAAAQSEBBx/jIQDhAQwgAQAAAEIhAQcfYyAA4QEMIAEAAABDIQEHH0MgAOEBDCABAAAARCEBBx8DHQDhAR4gAQAAADghAQQfI0IA4QEaQAEAAABGIQEHH+MVAOEBDCABAAAARyEBBx+DKgDhARpAAQAAAEYhAQUfwxkA4QEWBAEAAABJIQEHH4MXAOEBGkABAAAASiEBBx/jGQDhARYEAQAAAEshAQcfAxoA4QEaQAEAAABKIQEFH+MVAOEBGkABAAAASiEBBR8DGQDhAQwgAQAAAE4hAQcfYxoA4QEMIAEAAABPIQEHHwMZAOEBDCABAAAAUCEBBx+DIQDhASIAAQAAAFEhAQYfo8oA4QEMIAEAAABSIQEHHyMZAOEBHgABAAAAUyEBBh9DUQDhAR5AAQAAAFQhAQYfY5EA4QEaQAEAAABUIQEFH+MVAOEBGkABAAAAVCEBBR9jHgDhAQwgAQAAAFchAQcfgxcA4QEuAAEAAABYIQEGH+MZAOEBFgQBAAAAWSEBBx8DGgDhARpAAQAAAFghAQUf4xUA4QEaQAEAAABYIQEFHwMZAOEBDCABAAAAXCEBBx/DIQDhAQwgAQAAAF0hAQcfw3UA4QEgBAEAAABeIQEGH0MxAOEBFgQBAAAAXyEBBx+jJADhARwMAQAAAGAhAQcfA0kA4QEaQAEAAABeIQEFH8MXAOEBFgQBAAAAYiEBBx9DIADhAQwgAQAAAGMhAQcfIzAA4QEWBAEAAABkIQEHH2MiAOEBFgQBAAAAZSEBBx9DJADhARYEAQAAAGYhAQcfgzgA4QEWBAEAAABnIQEHH2MiAOEBFgQBAAAAaCEBBx+DFwDhARpAAQAAAGkhAQcfAxkA4QEMIAEAAABqIQEHH2MkAOEBLiABAAAAayEBBh9jKgDhAQwgAQAAAGwhAQcfI14A4QEMIAEAAABtIQEHH2MeAOEBDCABAAAAbiEBBx/DSwHhAQwgAQAAAG8hAQcfo5UA4QEaQAEAAABwIQEHH6MmAOEBFgQBAAAAcSEBBx8jHgDhAQwgAQAAAHIhAQcf4yYA4QEaQAEAAABwIQEFH8MZAOEBFgQBAAAAdCEBBx/jFQDhAR4AAQAAAHAhAQIfYzMA4QEaQAEAAAB2IQEHH4MnAOEBFgQBAAAAdyEBBx9DKwDhARpAAQAAAHYhAQUfwxkA4QEiAAEAAAB5IQEGHwMZAOEBDCABAAAAeiEBBx8DGQDhAQwgAQAAAHshAQcf4xgA4QEMIAEAAAB7IQEFH4MhAOEBFgQBAAAAfSEBBx+jJADhARwMAQAAAH4hAQcfYxsA4QEMIAEAAAB/IQEHH0NDAOEBGkABAAAAgCEBBx/DMgDhARpAAQAAAIAhAQUf4xkA4QEaQAEAAACAIQEFH+MeAOEBDCABAAAAgyEBBx/jFQDhARpAAQAAAIAhAQUfIw4B4QEMIAEAAACFIQEHH+MnAOEBDCABAAAAhSEBBR/DIgDhASIAAQAAAIchAQYfQyAA4QEMIAEAAACIIQEHH4M2AOEBFgQBAAAAiSEBBx9jLgDhARYEAQAAAIohAQcfAzQA4QEWBAEAAACLIQEHH8MeAOEBFgQBAAAAjCEBBx8jJgDhAQwgAQAAAI0hAQcfgxcA4QEuBAEAAACOIQEGH+MZAOEBGgQBAAAAjiEBBR9jGwDhAQwgAQAAAJAhAQcf4xUA4QEgAAEAAACOIQECHwMZAOEBDCABAAAAkiEBBx+DIQDhARYEAQAAAJMhAQcfwzkA4QEaQAEAAACUIQEHHwMZAOEBDCABAAAAlSEBBx9jKgDhAQwgAQAAAJYhAQcf4xUA4QEaQAEAAACUIQEFH0N/AOEBDCABAAAAmCEBBx8jLADhAQwgAQAAAJohAQUfIzUA4QEMIAEAAACaIQEHHwNvAOEBHiABAAAAmyEBBh+D7AHhARpAAQAAAJshAQUf4xUA4QEaQAEAAACbIQEFHwMZAOEBDCABAAAAniEBBx/DSADhAQwgAQAAAJ8hAQcfgxcA4QEaQAEAAACgIQEHHwMaAOEBGkABAAAAoCEBBR8DGQDhAQwgAQAAAKIhAQcfYyQA4QEMIAEAAACjIQEHH0OOAOEBGkABAAAApCEBBx+DHQDhASBAAQAAAKQhAQIf4ykA4QEMIAEAAACmIQEHHwMqAOEBDCABAAAApiEBBR9jjgDhARpAAQAAAKQhAQUf4xUA4QEaQAEAAACkIQEFH6NFAOEBIgABAAAAqiEBBh8DGQDhAQwgAQAAAKshAQcf4xgA4QEMIAEAAACrIQEFHwMZAOEBDCABAAAArSEBBx8jHgDhAQwgAQAAAK4hAQcfwxgA4QEWBAEAAACvIQEHH8MgAOEBHAwBAAAAsCEBBx9jGwDhAQwgAQAAALEhAQcf4+YA4QEaQAEAAACyIQEHH4MWAOEBGkABAAAAsiEBBR8jHgDhAQwgAQAAALQhAQcfwxgA4QEWBAEAAAC1IQEHH8MgAOEBHAwBAAAAtiEBBx9jGwDhAQwgAQAAALchAQcfQ5EA4QEMIAEAAAC4IQEHH2ORAOEBDCABAAAAuCEBBR/j8ADhAQwgAQAAALohAQcfwx8A4QEaQAEAAAC7IQEHH0MlAOEBGkABAAAAuyEBBR8jHgDhAQwgAQAAAL0hAQcf4x8A4QEaIAEAAAC7IQEFHyMgAOEBDCABAAAAwSEBBR9DIADhAQwgAQAAAMAhAQcfYyIA4QEiIAEAAADBIQEGHyMgAOEBDCABAAAA0iEBBR/jFQDhAR4AAQAAALshAQIfAxkA4QEMIAEAAADLIQFHH6MnAOEBGkABAAAAzCEBRx+DJwDhARYEAQAAAM0hAUcfIysA4QEMIAEAAADOIQFHHwMqAOEBDCABAAAAzyEBRR9DKwDhARpAAQAAANAhAUUf4xUA4QEaQAEAAADRIQFFHwMZAOEBDCABAAAAyyEBBx+DMADhARpAAQAAAMwhAQcfozAA4QEgQAEAAADMIQECH6NGAOEBDCABAAAAziEBBx8DKgDhAQwgAQAAAM4hAQUfwzAA4QEaQAEAAADMIQEFH+MVAOEBGkABAAAAzCEBBR+DbgDhAQwgAQAAANIhAQcfYyAA4QEaQAEAAADTIQEHHyMeAOEBDCABAAAA1CEBBx/jHgDhAQwgAQAAANUhAQcf4xUA4QEaQAEAAADTIQEFH6M9AOEBGkABAAAA0yEBBR+jSADhAQwgAQAAANghAQcfYy4A4QEWBAEAAADZIQEHH8MzAOEBDCABAAAA2iEBBx8jIADhAQwgAQAAANshAQcfIx4A4QEMIAEAAADcIQEHH2MoAOEBDCABAAAA3CEBBR8DIwDhARYEAQAAAN4hAQcfoxoA4QEWBAEAAADfIQEHH0MgAOEBDCABAAAA4CEBBx/DGgDhARwMAQAAAOEhAQcfYxsA4QEMIAEAAADiIQEHH4MXAOEBGkABAAAA4yEBBx8DGgDhARpAAQAAAOMhAQUf4xUA4QEgAAEAAADjIQECHwMZAOEBDCABAAAA5iEBBx+DIQDhARYEAQAAAOchAQcfA0IA4QEWBAEAAADoIQEHH4MhAOEBIgQBAAAA6SEBBh8DGQDhAQwgAQAAAOohAQcfQyAA4QEMIAEAAADrIQEHH8MZAOEBFgQBAAAA7CEBBx8jKQDhAS4gAQAAAO0hAQYf4xkA4QEaQAEAAADtIQEFHwMaAOEBDCABAAAA7SEBBR/jFQDhAR5AAQAAAO0hAQIfAxkA4QEMIAEAAADxIQEHH+MYAOEBDCABAAAA8SEBBR9DiQDhAQwgAQAAAPYhAQUfgxcA4QEMIAEAAAD0IQEHHwMaAOEBDCABAAAA9CEBBR8jNgDhAQwgAQAAAPYhAQcf4xUA4QEMIAEAAAD3IQEHH+MgAOEBDCABAAAA+CEBBx/jkQDhARpAAQAAAPkhAQcfQzEA4QEaQAEAAAD5IQEFHwNJAOEBGkABAAAA+SEBBR8DGQDhAQwgAQAAAPwhAQcfwzMA4QEWBAEAAAD9IQEHH+N5AOEBDCABAAAA/iEBBx9jPwDhARpAAQAAAP8hAQcf4xUA4QEaQAEAAAD/IQEFH8PrAOEBDCABAAAAASIBBx/DFwDhARYEAQAAAAIiAQcfgzYA4QEWBAEAAAADIgEHH2McAOEBFgQBAAAABCIBBx/jdQDhAQwgAQAAAAUiAQcfw0QA4QEMIAEAAAAGIgEHH6MnAOEBGkABAAAAByIBBx+DMADhARpAAQAAAAgiAQcfI6wA4QEeIAEAAAAJIgEGHwNAAOEBGkABAAAACSIBBR8DWADhAQwgAQAAAAkiAQUf4xUA4QEaQAEAAAAJIgEFHyOsAOEBFgQBAAAADSIBBx+DfgDhAQwgAQAAAA4iAQcfwyAA4QEcDAEAAAAPIgEHH2MuAOEBDCABAAAAECIBBx9DagDhAQwgAQAAABEiAQcfwx4A4QEeAAEAAAASIgEGHwNAAOEBGkABAAAAEiIBBR/jFQDhARpAAQAAABIiAQUfQyYA4QEaQAEAAAAVIgEHH+MZAOEBGkABAAAAFSIBBR/jHgDhAQwgAQAAABciAQcf4xUA4QEaQAEAAAAVIgEFHwMZAOEBDCABAAAAGSIBBx+DIQDhARYEAQAAABoiAQcfAx0A4QEaQAEAAAAVIgEFH2M/AOEBDCABAAAAHCIBBx/DigDhAQwgAQAAAB0iAQcfIzwA4QEWBAEAAAAeIgEHH4McAOEBFgQBAAAAHyIBBx9DLQDhAQwgAQAAACAiAQcfYxIB4QEMIAEAAAAhIgEHH8MyAOEBDCABAAAAISIBBR8DxADhAQwgAQAAACMiAQcfA2sA4QEWBAEAAAAkIgEHH6MnAOEBGkABAAAAJSIBBx+DJwDhARYEAQAAACYiAQcfYzcA4QEMIAEAAAAnIgEHH4MwAOEBGkABAAAAKCIBBx+jMADhARYEAQAAACkiAQcf4xUA4QEaQAEAAAAoIgEFH+MuAOEBDCABAAAAKyIBBx8jKgDhAQwgAQAAACMiAQUfwxgA4QEaQAEAAAAtIgEHHwMZAOEBHgABAAAALiIBBh8DGQDhAQwgAQAAAC8iAQcfgyEA4QEiAAEAAAAwIgEGH2MbAOEBDCABAAAAMSIBBx+DRgDhARpAAQAAADIiAQcf4xkA4QEaQAEAAAAyIgEFH+MeAOEBDCABAAAANCIBBx/jFQDhARpAAQAAADIiAQUfwyQA4QEaQAEAAAAyIgEFH6MnAOEBGkABAAAANyIBBx8jKwDhAQwgAQAAADgiAQcfgzAA4QEaQAEAAAA5IgEHH6NGAOEBDCABAAAAOiIBBx+jVwDhAQwgAQAAADsiAQcfI4QA4QEMIAEAAAA8IgEHHwMmAOEBDCABAAAAPSIBBx+DWwDhAQwgAQAAAD8iAQUfo5MA4QEMIAEAAAA/IgEHH6NSAOEBGkABAAAAQCIBBx9DJQDhARpAAQAAAEAiAQUfIyYA4QEMIAEAAABCIgEHH+MVAOEBIEABAAAAQCIBAh/DsADhARpAAQAAAEAiAQUfYxsA4QEMIAEAAABFIgEHH0MrAOEBDCABAAAARSIBBR+jigDhARYEAQAAAEciAQcfwxoA4QEcDAEAAABIIgEHH2MbAOEBDCABAAAASSIBBx8DGQDhAQwgAQAAAEoiAQcfgyEA4QEWBAEAAABLIgEHH6MkAOEBHAwBAAAATCIBBx9jGwDhAQwgAQAAAE0iAQcf40YA4QEMIAEAAABOIgEHH6MfAOEBDCABAAAATiIBBR+DQgDhARYEAQAAAFAiAQcfwyAA4QEcDAEAAABRIgEHH2MbAOEBDCABAAAAUiIBBx9jLgDhARYEAQAAAFMiAQcfYyQA4QEMIAEAAABUIgEHHyMWAeEBHgABAAAAVSIBBh9jHwDhARpAAQAAAFUiAQUfgx8A4QEMIAEAAABXIgEHH+MVAOEBGkABAAAAVSIBBR+jHwDhAQwgAQAAAFUiAQUfoykA4QEMIAEAAABaIgEHH2OFAOEBDCABAAAAWyIBBx9DGQDhAQwgAQAAAFwiAQcfo20A4QEeAAEAAABVIgFGH2MfAOEBGkABAAAAViIBRR+DHwDhAQwgAQAAAF8iAQcf4xUA4QEaQAEAAABYIgFFH4NpAOEBDCABAAAAWSIBRR+D5QDhAQwgAQAAAGIiAQcfA3IB4QEMIAEAAABkIgEFHyNWAOEBDCABAAAAZCIBBx8jHgDhAQwgAQAAAGUiAQcfQx4A4QEMIAEAAABmIgEHH8MYAOEBIgABAAAAZyIBBh8DtgDhARpAAQAAAGgiAQcfgx0A4QEaQAEAAABoIgEFH+MVAOEBGkABAAAAaCIBBR8jyADhARpAAQAAAGgiAQUf4xcA4QEMIAEAAABsIgEHH8PDAOEBGkABAAAAbSIBBx8DGQDhAQwgAQAAAG4iAQcg45kA+wEOBAFAAQBwIhEFH+OZAOEBOAQBAAAAcCIBFh8jVwDhARYEAQAAAHEiAQcfo28A4QEeAAEAAAByIgEGHwOGAOEBGkABAAAAciIBBR+DTADhAQwgAQAAAHQiAQcfoyMA4QEMIAEAAAB1IgEHH8MjAOEBDCABAAAAdSIBBR8DKgDhAQwgAQAAAHQiAQUfoyMA4QEMIAEAAAB4IgEFH8MjAOEBDCABAAAAeCIBBR/jFQDhAR4AAQAAAHIiAQIfA3YA4QEaQAEAAAB7IgEHHwNAAOEBFgQBAAAAfCIBBx8DWADhARpAAQAAAHsiAQUf4xUA4QEeAAEAAAB7IgECHyNlAOEBGkABAAAAciIBBR+DFwDhAQwgAQAAAIAiAQcfIxkA4QEMIAEAAACBIgEHH8M0AOEBDCABAAAAgiIBBx8DGQDhAR4AAQAAAIMiAQYf4xUA4QEaQAEAAACDIgEFH6MaAOEBFgQBAAAAhSIBBx+DsQDhAQwgAQAAAIYiAQcgw3YA5wEYMAEAAACHIhEFH8N2AOEBGDABAAAAhyIBBx+DdgDhARYEAQAAAIkiAQcfAyIA4QEMIAEAAACLIgEFH6M8AOEBDCABAAAAiyIBBR+DFwDhARpAAQAAAIwiAQcfAxkA4QEMIAEAAACNIgEHHwMiAOEBDCABAAAAjyIBBR+jPADhAQwgAQAAAI8iAQcfoykA4QEMIAEAAACQIgEHH6OwAOEBFgQBAAAAkSIBBx+DXADhARwMAQAAAJIiAQcfYxsA4QEMIAEAAACTIgEHH0PnAeEBDCABAAAAlCIBBx/DaQDhAQwgAQAAAJUiAQcfw3sA4QEiAAEAAACWIgEGH2PgAOEBDCABAAAAlyIBBx9jggDhAR4AAQAAAJgiAQYfo+wB4QEWBAEAAACZIgEHH0MvAdkBGkABAAAAmiIBBx8jMwDhARpAAQAAAJoiAQUfwy8A4QEMIAEAAACcIgEHH+MVAOEBGkABAAAAmiIBBR8jiADhAQwgAQAAAJ4iAQcfQzMA4QEaQAEAAACaIgEFH0OLAOEBDCABAAAAoCIBBx+DfgDhARYEAQAAAKEiAQcfI4QA4QEaQAEAAACiIgEHH8MZAOEBFgQBAAAAoyIBBx8jHgDhAQwgAQAAAKQiAQcfYx8A4QEaQAEAAACiIgEFH4MfAOEBDCABAAAApiIBBx8DKgDhAQwgAQAAAKYiAQUf4xUA4QEuQAEAAACiIgECHwMqAOEBGkABAAAAoiIBBR/DMQDhARpAAQAAAKoiAQcfQzoA4QEaQAEAAACqIgEFH2MoAOEBGkABAAAAqiIBBR9DHgDhAQwgAQAAAK0iAQcfwxgA4QEWBAEAAACuIgEHH8MgAOEBHAwBAAAAryIBBx/jFQDhARpAAQAAAKoiAQUfY0oA4QEeAAEAAACxIgEGHwMZAOEBDCABAAAAsiIBBx+DFwDhARpAAQAAALMiAQcfAxoA4QEaQAEAAACzIgEFH+MVAOEBIAABAAAAsyIBAh8DGQDhAQwgAQAAALYiAQcfgyEA4QEWBAEAAAC3IgEHH2N7AOEBDCABAAAAuCIBBx/jOgDhAQwgAQAAALkiAQcfY1QA4QEMIAEAAAC6IgEHH+MhAOEBDCABAAAAuyIBBx9jIADhAQwgAQAAALwiAQcfwxgA4QEWBAEAAAC9IgEHH0MFAeEBDCABAAAAviIBBx/DKgDhARpAAQAAAL8iAQcfQysA4QEaQAEAAAC/IgEFH+MVAOEBGkABAAAAvyIBBR8DGQDhAQwgAQAAAMIiAQcfgyEA4QEWBAEAAADDIgEHH8PsAeEBFgQBAAAAxCIBBx8DUADhAR4gAQAAAMUiAQYfw6YA4QEMIAEAAADGIgEHH2NJAOEBDCABAAAAxyIBBx+jTADhARpAAQAAAMgiAQcf4xUA4QEaQAEAAADIIgEFH4OJAOEBGkABAAAAyCIBBR9jHwDhARYEAQAAAMsiAQcfYxsA4QEMIAEAAADMIgEHH2MbAOEBFgQBAAAAzSIBBx8jkgHhAQwgAQAAAM4iAQcfIzUA4QEMIAEAAADPIgEHHwNnAOEBDCABAAAAxSIBBR9jIgDhARYEAQAAANEiAQcfw0oA4QEaQAEAAADSIgEHH+MZAOEBGkABAAAA0iIBBR/jHgDhAQwgAQAAANQiAQcfQyAA4QEMIAEAAADVIgEHH8MZAOEBFgQBAAAA1iIBBx/jFQDhARpAAQAAANIiAQUfAxkA4QEMIAEAAADYIgEHH+MYAOEBDCABAAAA2CIBBR+DIQDhARYEAQAAANoiAQcfoyQA4QEcDAEAAADbIgEHH6M9AOEBGkABAAAA0iIBBR/j7AHhAQwgAQAAAN0iAQcfgy8A4QEWBAEAAADeIgEHH8MfAOEBDCABAAAA3yIBBx/jHwDhAR4AAQAAAOAiAQQf4xUA4QEaQAEAAACaIgEFH0OiAOEBDCABAAAA4iIBBx+DOgDhAR4gAQAAAOMiAQYfQyAA4QEMIAEAAADkIgEHH8MZAOEBFgQBAAAA5SIBBx9jGwDhAQwgAQAAAOYiAQcfgyIA4QEcDAEAAADnIgEHHyMZAOEBDCABAAAA6CIBBx9jNwDhAQwgAQAAAOkiAQcf4xkA4QEgQAEAAADjIgECHwMaAOEBDCABAAAA6SIBBR/jFQDhAQwgAQAAAOwiAQcfYxoA4QEMIAEAAADtIgEHH8MyAOEBHiABAAAA4yIBBB8DHgDhAQwgAQAAAO8iAQcfY6AA4QEMIAEAAADwIgEHH6OGAeEBDCABAAAA8SIBBx8D7QHhAQwgAQAAAPIiAQcfI8MB4QEMIAEAAADzIgEHH4MXAOEBFgQBAAAA9CIBBx8j7QHhAQwgAQAAAPYiAQUf4xcA4QEMIAEAAAD2IgEHH6NdAOEBDCABAAAA9yIBBx/DHwDhAQwgAQAAAPgiAQcfYyQA4QEMIAEAAAD5IgEHH2MkAOEBDCABAAAA+iIBBx8jbgDhAQwgAQAAAPsiAQcfYyQA4QEMIAEAAAD8IgEHH8MfAOEBDCABAAAA/SIBBx9jJADhAQwgAQAAAP4iAQcfgxcA4QEeAAEAAAD/IgEGHwMaAOEBDCABAAAA/yIBBR/DHwDhAQwgAQAAAAEjAQcf4x8A4QEMIAEAAAABIwEFHyNuAOEBDCABAAAAAyMBBx/DHwDhAQwgAQAAAAQjAQcfgxcA4QEMIAEAAAAFIwEHH6M5AOEBDCABAAAABiMBBx8jRgHhAR4gAQAAAAcjAQYfY1QA4QEaQAEAAAAIIwEHH+MZAOEBFgQBAAAACSMBBx8jNADhARYEAQAAAAojAQcfozAA4QEWBAEAAAALIwEHH2McAOEBFgQBAAAADCMBBx9D7QHhAQwgAQAAAA0jAQcfo6wA4QEeAAEAAAAOIwEGH8NWAOEBFgQBAAAAFSMBBR/DSgDhARYEAQAAABUjAQUf41YA4QEcDAEAAAARIwEHH2MbAOEBDCABAAAAEiMBBx/jFQDhARpAAQAAAA4jAQUfg6QA4QEaQAEAAAAOIwEFHwNhAOEBIgABAAAAFSMBBh9DsgDhARYEAQAAABYjAQcfg1wA4QEcDAEAAAAXIwEHH2MbAOEBDCABAAAAGCMBBx+DMQDhARpAAQAAABsjAQUfIyAA4QEaQAEAAAAbIwEFH8MaAOEBGkABAAAAGyMBBx9jUgDhAQwgAQAAABwjAQcfgxcA4QEMIAEAAAD/IgFHHwMaAOEBDCABAAAAACMBRR/DHwDhAQwgAQAAAAEjAUcf4x8A4QEMIAEAAAACIwFFH8PVAOEBHgABAAAAByMBRh9DVADhARpAAQAAACIjAQUfY1QA4QEaQAEAAAAjIwEHH+MZAOEBIAABAAAAIiMBAh/jFQDhARpAAQAAACIjAQUfIzQA4QEWBAEAAAAmIwEHH2McAOEBFgQBAAAADCMBRx9jSwDhAQwgAQAAACgjAQcfA38A4QEMIAEAAAApIwEHH4MXAOEBDCABAAAAKiMBBx/DVgDhARYEAQAAAC8jAQUfw0oA4QEWBAEAAAAvIwEFH+NWAOEBHAwBAAAALSMBBx9jGwDhAQwgAQAAAC4jAQcfAzgA4QEWBAEAAAAvIwEHHwMkANkBHiABAAAAMCMBBh8jlQHhAQwgAQAAADEjAQcfAycA4QEMIAEAAAAyIwEHH+NgAOEBFgQBAAAAMyMBBx9DHQDhARYEAQAAADQjAQcf43AA4QEMIAEAAAA1IwEFH8P+AOEBDCABAAAANSMBBR8jIADhAQwgAQAAAEMjAQUf41YA4QEcDAEAAAA4IwEHHwMZAOEBDCABAAAAOSMBBx+jJwDhARpAAQAAAD8jAUcfgycA4QEaQAEAAABAIwFFH0MrAOEBGkABAAAAQSMBRR/jFQDhARpAAQAAAEIjAUUfAxkA4QEMIAEAAAA+IwEHH4MwAOEBGkABAAAAPyMBBx+jMADhARpAAQAAAD8jAQUfwzAA4QEaQAEAAAA/IwEFH+MVAOEBGkABAAAAPyMBBR9jIgDhASIgAQAAAEMjAQYfgxcA4QEaQAEAAABEIwEHHwMZAOEBDCABAAAARSMBBx/DFwDhARYEAQAAAEYjAQcfgyEA4QEWBAEAAABHIwEHH0MxAOEBGkABAAAAMCMBBR9DSgDhAR4gIQQAAEkjAQYf4x4A4QEMIAEAAABKIwEHH8MqAOEBDCABAAAASyMBBx/jFQDhARpAAQAAAEkjAQUfoycA4QEaQAEAAABNIwEHH4MwAOEBGkABAAAATiMBBx8DKgDhAQwgAQAAAEkjAQUf40UA4QEMIAEAAABQIwEHH0ORAOEBDCABAAAAUSMBBx/DdQDhAQwgAQAAAFIjAQcfA0YA4QEWBAEAAABTIwEHH+MVAOEBGkABAAAAMCMBBR9DQwDhAR4gAQAAAFUjAQYfI20A4QEaQAEAAABWIwEHH6MYAOEBGkABAAAAViMBBR/jFQDhAR5AAQAAAFYjAQIf4xgA4QEeAAEAAABZIwEGH2PtAeEBDCABAAAAWiMBBx9D1gDhAQwgAQAAAFsjAQcf43UA4QEMIAEAAABcIwEHH+MeAOEBDCABAAAAXSMBBx9jIgDhARYEAQAAAF4jAQcfQyAA4QEMIAEAAABfIwEHH2McAOEBFgQBAAAAYCMBBx+jKgDhARwMAQAAAGEjAQcfYxsA4QEMIAEAAABiIwEHH8NbAOEBHiABAAAAMCMBBB8jzADZAR4gAQAAAGQjAQYhw34BCgIZMAEAAABnIyEFION+AQ8CGTABAAAAZyMRBR/jfgERAhkwwQMAAGcjAQUfA4YA4QEWBAEAAABoIwEHHwMpAOEBGkABAAAAaSMBBx+DQwDhAQwgAQAAAGojAQcf4xUA4QEaQAEAAABpIwEFHyMdAOEBDCABAAAAbCMBBx/DpgDhAQwgAQAAAG0jAQcfg2sA4QEMIAEAAABuIwEHHwNPAOEBDCABAAAAbyMBBx/DYADhAQwgAQAAAHAjAQcfQ0IA4QEeAAEAAABxIwEGH6MYAOEBFgQBAAAAciMBBx+D2ADhARYEAQAAAHMjAQcfgzMA4QEMIAEAAAB0IwEHH0OMAOEBDCABAAAAdSMBBx/DLQDhAQwgAQAAAHYjAQcfo7UA4QEYMMEDAAB3IwEHHyMmAOEBGkABAAAAeCMBBx/jFQDhARpAAQAAAHgjAQUfAyoA4QEaQAEAAAB4IwEFH0OwAOEBDCABAAAAeyMBBx+jGgDhAQwgAQAAAHwjAQcf49UA4QEMIAEAAAB9IwEHH6OgAOEBDCABAAAAfiMBBx9jKgDhAQwgAQAAAH8jAQcfYxsA4QEMIAEAAACAIwEHH4MxAOEBFgQBAAAAgSMBBx8jIADhAQwgAQAAAIIjAQcfA3gA4QEMIAEAAACDIwEHHwOtAOEBFgQBAAAAhCMBBx+jIwDhAQwgAQAAAIUjAQcfwyMA4QEMIAEAAACFIwEFH+N4AOEBDCABAAAAhyMBBx8DhADhARpAAQAAAJ8QAQcf40IA4QEMIAEAAACJIwEHH0MrAOEBDCABAAAAiSMBBx9DoADhAQwgAQAAAIsjAQcfA9cA4QEgQAEAAADKEAECH0NYAOEBFgQBAAAAjSMBBx9DGADhAQwgAQAAAI4jAQcfYxsA4QEWBAEAAACPIwEHHwNLAOEBDCABAAAAkCMBBx+j+ADhARYEAQAAAJEjAQcfQ3YA4QEMIAEAAACSIwEHH6MYAOEBGkABAAAAZCMBBR/DVgDhARYEAQAAAJojAQUfw0oA4QEWBAEAAACaIwEFH+NWAOEBHAwBAAAAliMBBx9jGwDhAQwgAQAAAJcjAQcf4xUA4QEaQAEAAABkIwEFIGPAAOcBGDABAAAAmSMRBR9jwADhARYEAQAAAJojAQcfg4UA4QEMIAEAAACbIwEHH+NKAOEBDCABAAAAnCMBBx+jJwDhASIgAQAAAJ0jAQYfA10A4QEMIAEAAACeIwEHHyMiAOEBDCABAAAAnyMBBx/DNADhAQwgAQAAAKAjAQcfY6QA4QEMIAEAAAChIwEHH0ORAOEBIgABAAAAoiMBBh8DJgDhAQwgAQAAAKMjAQcfYyQA4QEMIAEAAACkIwEHH4O3AOEBDCABAAAApSMBBx8jGADhAQwgAQAAAKYjAQcfQ4wA4QEMIAEAAACnIwEHH6NvAOEBFgQBAAAAqCMBBx+DOgDhAQwgAQAAAKkjAQcfY0sA4QEeIAEAAACqIwEGH6MYAOEBFgQBAAAAqyMBBx8DygDhAQwgAQAAAKwjAQcfo9gA4QEMIAEAAACtIwEHH0OmAeEBDCABAAAAriMBBx/j6ADZAR4AAQAAAK8jAQYfg38A4QEwAAEAAACwIwEGH8MYACECFgQBAAAAsSMBBR+DIQAhAhYEAQAAALIjAQUfYyYAIQIWBAEAAACzIwEFH0MgACECFgQBAAAAtCMBBR9jGgAhAgwgAQAAALUjAQUfwxwBIQIWBAEAAAC2IwEFHyMHASkCDCABAAAAtyMBBR8jKwAhAgwgAQAAALgjAQUfwxkA4QEWBAEAAAC5IwEHHyMeAOEBDCABAAAAuiMBBx9jHgDhARYEAQAAALsjAQcfgxcA4QEaQAEAAAC8IwEHH+MZAOEBFgQBAAAAvSMBBx8DGgDhARpAAQAAALwjAQUfAxkA4QEMIAEAAAC/IwEHH2M0AOEBFgQBAAAAwCMBBx/jLgDhAQwgAQAAAMEjAQcfgyIA4QEcDAEAAADCIwEHHyOwAOEBDCABAAAAwyMBBx9DzADhAQwgAQAAAMQjAQcfQ3sA4QEMIAEAAADEIwEFH6OVAOEBGkABAAAAxiMBBx+jJgDhARYEAQAAAMcjAQcfwyYA4QEMIAEAAADIIwEHH+MmAOEBGkABAAAAxiMBBR9jHADhARYEAQAAAMojAQcfoyoA4QEcDAEAAADLIwEHH2MbAOEBDCABAAAAzCMBBx+jPADhAQwgAQAAAM0jAQcf40IA4QEMIAEAAADOIwEHH+MeAOEBDCABAAAAzyMBBx9DIADhAQwgAQAAANAjAQcfgxwA4QEWBAEAAADRIwEHHyMrAeEBDCABAAAA0iMBBx8DGQDhAQwgAQAAANMjAQcfoykA4QEWBAEAAADUIwEHH+NWAOEBDCABAAAA1SMBBx/jGQDhARYEAQAAANYjAQcfw3AA4QEMIAEAAADXIwEHHwMZAOEBDCABAAAA2CMBBx+DFwDhARpAAQAAANkjAQcfAxkA4QEMIAEAAADaIwEHH6MaAOEBFgQBAAAA2yMBBx9DIADhAQwgAQAAANwjAQcfwxoA4QEcDAEAAADdIwEHHyMgAOEBDCABAAAA3iMBBx9jJADhARYEAQAAAN8jAQcfQyAA4QEMIAEAAADgIwEHH2McAOEBFgQBAAAA4SMBBx+jKgDhARwMAQAAAOIjAQcfIyUA4QEMIAEAAADjIwEHH2MeAOEBDCABAAAA5CMBBx/jQgDhAQwgAQAAAOUjAQcfo3wA4QEMIAEAAADmIwEFH0N7AOEBDCABAAAA5iMBBR9j3QDhAQwgAQAAAOgjAQcfo1cA4QEMIAEAAADpIwEHH8NCAOEBFgQBAAAA6iMBBx/DNADhARpAAQAAAOsjAQcfgycA4QEgQAEAAADrIwECH0MrAOEBGkABAAAA6yMBBR/jFQDhARpAAQAAAOsjAQUfwxgA4QEWBAEAAADvIwEHH6MgAOEBGkABAAAA8CMBBx/jFQDhARpAAQAAAPAjAQUfAxkA4QEMIAEAAADyIwEHHwMdAOEBGkABAAAA8CMBBR9jPwDhARpAAQAAAPQjAQcfIx4A4QEMIAEAAAD1IwEHH8MYAOEBDCABAAAA9iMBBx/jFQDhARpAAQAAAPQjAQUfA3oA4QEiBAEAAAD4IwEGH0MgAOEBDCABAAAA+SMBBx+jHwDhAQwgAQAAAPgjAQUfwxgA4QEWBAEAAAD7IwEHH4MhAOEBIgABAAAA/CMBBh+jJADhARwMAQAAAP0jAQcfIycA4QEMIAEAAAD+IwEHH4M4AOEBFgQBAAAA/yMBBx9jIgDhARYEAQAAAAAkAQcfw0IA4QEMIAEAAAABJAEHH6OqAOEBDCABAAAAAiQBBx8jawDhAQwgAQAAAAMkAQcf4x4A4QEMIAEAAAAEJAEHH2ORAOEBDCABAAAAAiQBBR/DawDhAQwgAQAAAAYkAQcfY5AA4QEMIAEAAAAHJAEHH2NvAOEBDCABAAAACCQBBx/j5ADhAQwgAQAAAAkkAQcfwxcA4QEWBAEAAAAKJAEHH2MeAOEBIgABAAAACyQBBh8DMADhAQwgAQAAAAskAQUfQyQA4QEiAAEAAAANJAEGH+MhAOEBDCABAAAADiQBBx9jIADhARYEAQAAAA8kAQcfIxoA4QEWBAEAAAAQJAEHH8MaAOEBHAwBAAAAESQBBx9jGwDhAQwgAQAAABIkAQcfwyIA4QEWBAEAAAATJAEHH6N4AOEBDCABAAAAFCQBBx8DAQHhAQwgAQAAABQkAQUfYyIA4QEiAAEAAAAWJAEGHyMmAOEBDCABAAAAFyQBBx+DFwDhAS4AAQAAABgkAQYfAxkA4QEMIAEAAAAZJAEHH8MfAOEBDCABAAAAGiQBBx8jGgDhARYEAQAAABskAQcf4yEA4QEMIAEAAAAcJAEHHyM1AOEBDCABAAAAHSQBBx/DGQDhARYEAQAAAB4kAQcfwzQA4QEaQAEAAAAfJAEHH0MrAOEBGkABAAAAHyQBBR8DGQDhAQwgAQAAACEkAQcf43gA4QEMIAEAAAAiJAEHH+MZAOEBFgQBAAAAIyQBBx9DjgDhARpAAQAAACQkAQcfY44A4QEaQAEAAAAkJAEFH6NFAOEBIgABAAAAJiQBBh8DGQDhAQwgAQAAACckAQcfwy8A4QEaQAEAAAAoJAEHH0MlAOEBGkABAAAAKCQBBR/jHwDhARpAAQAAACgkAQUf4xUA4QEaQAEAAAAoJAEFH+MgAOEBDCABAAAALCQBBx+DJwDhARYEAQAAAC0kAQcfgyEA4QEWBAEAAAAuJAEHH6MwAOEBFgQBAAAALyQBBx8DGQDhAQwgAQAAADAkAQcfg0MA4QEMIAEAAAAxJAEHH2MuAOEBFgQBAAAAMiQBBx/jZgDhAQwgAQAAADMkAQcfAxkA4QEMIAEAAAA0JAEHH2McAOEBFgQBAAAANSQBBx+jKgDhARwMAQAAADYkAQcf40AA4QEMIAEAAAA5JAEFH4MXAOEBDCABAAAAOCQBBx8jNgDhAQwgAQAAADkkAQcf4xUA4QEMIAEAAAA6JAEHH+MgAOEBDCABAAAAOyQBBx8DOADhAQwgAQAAADwkAQcfg0wA4QEMIAEAAAA9JAEHH+N7AOEBDCABAAAAPiQBBx8jrADhAQwgAQAAAD8kAQcfYy4A4QEMIAEAAABAJAEHH+MeAOEBDCABAAAAQSQBBx9jNgDhARpAAQAAAEIkAQcfAxkA4QEMIAEAAABDJAEHH6MnAOEBGkABAAAARCQBBx+DJwDhASAEAQAAAEQkAQIfQysA4QEaQAEAAABEJAEFH+MVAOEBHkABAAAARCQBAh8DGQDhAQwgAQAAAEgkAQcf40YA4QEMIAEAAABJJAEHH6MfAOEBDCABAAAASSQBBR+jKQDhARYEAQAAAEskAQcfgxcA4QEaQAEAAABMJAEHHwMZAOEBDCABAAAATSQBBx9jGgDhAQwgAQAAAE4kAQcfYyQA4QEWBAEAAABPJAEHH6MkAOEBHAwBAAAAUCQBBx9jVgDhARpAAQAAAK8jAQUfg38A4QEMIAEAAABSJAEHH2MbAOEBFgQBAAAAUyQBBx/DdQDhAQwgAQAAAFQkAQcf4xUA4QEeAAEAAACvIwECH2MeAOEBGkABAAAAViQBBx/jHgDhAQwgAQAAAFckAQcf4xUA4QEeAAEAAABWJAECHwMwAOEBGkABAAAAViQBBR8jRQDhASAAAQAAAFokAQYfoxcA4QEMIAEAAABbJAEHH8MYAOEBHiABAAAAXCQBBh/DHgDhARYEAQAAAF0kAQcfYyIA4QEWBAEAAABeJAEHHwMZAOEBDCABAAAAXyQBBx/jFQDhARpAAQAAAFwkAQUfAzAA4QEMIAEAAABcJAEFH2MbAOEBDCABAAAAYiQBBx8DWADhARpAAQAAAFokAQUfYx4A4QEiAAEAAABkJAEGH2MeAOEBIgABAAAAZSQBBh+DFwDhARpAAQAAAGYkAQcfAxkA4QEMIAEAAABnJAEHH6MpAOEBFgQBAAAAaCQBBx+DMQDhARpAAQAAAG0kAQUfw1YA4QEMIAEAAABqJAEHHwMqAOEBDCABAAAAaiQBBR8jIADhAR4gAQAAAG0kAQQfQ28A4QEeIAEAAABtJAEGH+MVAOEBHkABAAAAbSQBAh+DJADhAR4gAQAAAG8kAQYfwxkA4QEWBAEAAABwJAEHH+MZAOEBIEABAAAAbyQBAh/jHgDhAQwgAQAAAHIkAQcfAyoA4QEMIAEAAAByJAEFH+MVAOEBLkABAAAAbyQBAh+DIQDhARYEAQAAAHUkAQcfwyQA4QEaQAEAAABvJAEFH8MZAOEBFgQBAAAAdyQBBx/jIwDhAQwgAQAAAHgkAQcfwzQA4QEaQAEAAAB5JAEHH4MnAOEBIEABAAAAeSQBAh/DKADhARwMAQAAAHskAQcfQysA4QEaQAEAAAB5JAEFH+MVAOEBGkABAAAAeSQBBR8DGQDhAQwgAQAAAH4kAQcfwxcA4QEWBAEAAAB/JAEHH2McAOEBFgQBAAAAgCQBBx9jHADhARYEAQAAAIEkAQcfoykA4QEMIAEAAACCJAEHH2MbAOEBGkABAAAAgyQBBx9jHgDhAQwgAQAAAIQkAQcfgycA4QEgQAEAAACDJAECHyMrAOEBDCABAAAAhiQBBx9DKwDhARpAAQAAAIMkAQUf4xUA4QEaQAEAAACDJAEFHwMZAOEBDCABAAAAiSQBBx+DIQDhARYEAQAAAIokAQcf40YA4QEMIAEAAACLJAEHH4MXAOEBGkABAAAAjCQBBx8DGQDhAQwgAQAAAI0kAQcfgyEA4QEWBAEAAACOJAEHH+MDAeEBHAwBAAAAjyQBBx8DGQDhAQwgAQAAAJAkAQcfwxcA4QEWBAEAAACRJAEHH8MiAOEBFgQBAAAAkiQBBx8DNADhARYEAQAAAJMkAQcfwx4A4QEWBAEAAACUJAEHHwNBAOEBDCABAAAAlSQBBx/DHgDhARYEAQAAAJYkAQcf4yEA4QEMIAEAAACXJAEHH2MgAOEBDCABAAAAmCQBBx8jGwDhAQwgAQAAAJkkAQcf4yEA4QEMIAEAAACaJAEHH2MgAOEBDCABAAAAmyQBBx/jLADhARYEAQAAAJwkAQcfoyQA4QEcDAEAAACdJAEHH6MXAeEBDCABAAAAniQBBx/DkgDZAQwgAQAAAJ8kAQcfAzEA4QEMIAEAAACgJAEHHyMZAOEBDCABAAAAoSQBBx8jGQDhAQwgAQAAAKIkAQcfo5UA4QEeAAEAAACjJAEGH6NMAOEBDCABAAAApCQBBx/jKgDhASIAAQAAAKUkAQYg4yAA+wEsBAFAAQCnJBEEH+MgAOEBLAQBAAAApyQBBh/jGQDhARYEAQAAAKgkAQcfoyQA4QEcDAEAAACpJAEHH2MbAOEBDCABAAAAqiQBBx/DSgDhARYEAQAAAKckAQUfg34A4QEMIAEAAACsJAEHH0OQAeEBHgABAAAArSQBBh/DMwDhAS4gAQAAAK4kAQYfQzoA4QEaQAEAAACuJAEFH2MoAOEBGkABAAAAriQBBR/jFQDhAR5AAQAAAK4kAQIfYx4A4QEMIAEAAACyJAEHH6N5AOEBDCABAAAAsyQBBx8DIwDhAR4AAQAAALQkAQYfIyYA4QEMIAEAAAC1JAEHH+MVAOEBDCABAAAAtiQBBx+jTADhAQwgAQAAALckAQcfA1sA4QEeAAEAAAC4JAEGHyOEAOEBDCABAAAAuSQBBx8DKgDhAQwgAQAAALkkAQUfoyMA4QEMIAEAAAC7JAEHH6MaAOEBFgQBAAAAvCQBBx/jFQDhAR4AAQAAAK0kAQIfg4UA4QEMIAEAAAC+JAEHH+MVAOEBDCABAAAAvyQBBx/DJgHhARpAAQAAAK0kAQUfo5UA4QEeIAEAAADBJAEGH6MmAOEBGkABAAAAwSQBBR8jSADhAQwgAQAAAMMkAQcfoyMA4QEMIAEAAADEJAEHH8MjAOEBDCABAAAAxCQBBR/jGADhAQwgAQAAAMMkAQUfIyAA4QEMIAEAAADIJAEFHwNGAOEBDCABAAAAyCQBBx/jJgDhARpAAQAAAMEkAQUfgxwA4QEWBAEAAADKJAEHH8MaAOEBHAwBAAAAyyQBBx/jFQDhASBAAQAAAMEkAQIfgxcA4QEMIAEAAADNJAEHH2N2AOEBDCABAAAAziQBBx/DVgDhARYEAQAAANMkAQUfw0oA4QEWBAEAAADTJAEFH+NWAOEBHAwBAAAA0SQBBx9jGwDhAQwgAQAAANIkAQcfI3oA4QEWBAEAAADTJAEHH8MZAOEBFgQBAAAA1CQBBx/jIwDhAQwgAQAAANUkAQcfoycA4QEeAAEAAADWJAEGH0MrAOEBGkABAAAA1iQBBR/jFQDhARpAAQAAANYkAQUf4xwB4QEMIAEAAADZJAEHH2MyAOEBGkABAAAA2iQBBx/DGQDhARYEAQAAANskAQcf4xkA4QEWBAEAAADcJAEHH+MeAOEBDCABAAAA3SQBBx/jFQDhARpAAQAAANokAQUfAzAA4QEaQAEAAADaJAEFH0NRAOEBDCABAAAA4CQBBx8DTADhAQwgAQAAAOEkAQcfA0kA4QEMIAEAAADhJAEFH+NCAOEBGkABAAAA4yQBBx+DJwDhARpAAQAAAOMkAQUfQysA4QEaQAEAAADjJAEFH+MVAOEBIEABAAAA4yQBAh9jMQDhARwMAQAAAOckAQcfwzEA4QEMIAEAAADoJAEHH0M6AOEBFgQBAAAA6SQBBx/jNADhASIgAQAAAOokAQYf4zoA4QEMIAEAAADrJAEHH0MrAOEBDCABAAAA6iQBBR8DOgDhAQwgAQAAAO0kAQcf4yMA4QEMIAEAAADuJAEHH6MnAOEBHiABAAAA7yQBBh+DJwDhASBAAQAAAO8kAQIfwygA4QEcDAEAAADxJAEHHyMrAOEBDCABAAAA8iQBBx9DKwDhAR4gAQAAAO8kAQQf4xUA4QEgBAEAAADvJAECH2MxAOEBHAwBAAAA9SQBBx9jGwDhAQwgAQAAAPYkAQcfQ2sA4QEWBAEAAAD3JAEHH+MhAOEBDCABAAAA+CQBBx9jIADhAQwgAQAAAPkkAQcfIxoA4QEWBAEAAAD6JAEHH8MeAOEBDCABAAAA+yQBBx/jHgDhAQwgAQAAAPwkAQcfIyYA4QEMIAEAAAD9JAEHHyMmAOEBHiABAAAA/iQBBh9jHwDhARpAAQAAAP4kAQUfgx8A4QEMIAEAAAAAJQEHH+MVAOEBGkABAAAA/iQBBR8DKgDhARpAAQAAAP4kAQUfYxwA4QEWBAEAAAADJQEHH6MqAOEBHAwBAAAABCUBBx+DFwDhASIEAQAAAAUlAQYfAxoA4QEMIAEAAAAFJQEFHyMlAOEBHkABAAAAByUBBh9DJQDhASBAAQAAAAclAQIf4xUA4QEgQAEAAAAHJQECHyOnAOEBDCABAAAACiUBBx9jJQDhAR4AAQAAAAclAQQf43sA4QEeIAEAAAAMJQEGHyOsAOEBDCABAAAADSUBBx+DJQDhAQwgAQAAAA4lAQcfIygA4QEaQAEAAAAPJQEHHyMeAOEBDCABAAAAECUBBx/DVADhARpAAQAAAA8lAQUfIwMB4QEeIAEAAAASJQEGHwNiAOEBGkABAAAAEiUBBR/jFQDhAR4AAQAAABIlAQIfQwMB4QEMIAEAAAAVJQEHHwNjAOEBHiABAAAAEiUBBB8DQgDhAQwgAQAAABclAQcfYyAA4QEMIAEAAAAYJQEHH4MhAOEBGkABAAAAGSUBBx9jKQDhARpAAQAAABklAQUfgxYA4QEaQAEAAAAZJQEFH+MVAOEBIEABAAAAGSUBAh9jHAHhAQwgAQAAAB0lAQcfox8A4QEMIAEAAAAdJQEFH6NyAOEBDCABAAAAHyUBBx/DlQHhAQwgAQAAACAlAQcfQyAA4QEMIAEAAAAhJQEHH8MZAOEBFgQBAAAAIiUBBx9jGwDhAQwgAQAAACMlAQcfA6cA4QEMIAEAAAAkJQEHH0MdAOEBDCABAAAAJSUBBx8DfwDhAQwgAQAAACYlAQcfw5cB4QEMIAEAAAAnJQEHH6MgAOEBLkABAAAAKCUBBh/jGQDhASBAAQAAACglAQIf4xUA4QEaQAEAAAAoJQEFHwMdAOEBHkABAAAAKCUBBB9jPwDhARpAAQAAACwlAQcfQyUA4QEgQAEAAAAsJQECHyMmAOEBDCABAAAALiUBBx/jFQDhARpAAQAAACwlAQUfYyUA4QEaQAEAAAAsJQEFHwO8AOEBDCABAAAAMSUBBx+jigDhARYEAQAAADIlAQcfAxkA4QEMIAEAAAAzJQEHH+MYAOEBDCABAAAAMyUBBR+DIQDhARYEAQAAADUlAQcf40YA4QEMIAEAAAA2JQEHH6MpAOEBDCABAAAANyUBBx8DGQDhAQwgAQAAADglAQcf4xgA4QEMIAEAAAA4JQEFH2McAOEBFgQBAAAAOiUBBx+jKgDhARwMAQAAADslAQcfYxsA4QEMIAEAAAA8JQEHHwMZAOEBDCABAAAAPSUBBx9jOgDhARpAAQAAAD4lAQcfQyoA4QEaQAEAAAA/JQEHH0MgAOEBDCABAAAAQCUBBx/DGQDhARYEAQAAAEElAQcfgyIA4QEcDAEAAABCJQEFH6MYAOEBIEABAAAAPyUBAh9jKgDhAQwgAQAAAEQlAQcf4xUA4QEaQAEAAAA/JQEFH8MYAOEBDCABAAAARiUBBx+DKgDhARpAAQAAAD8lAQUfIx4A4QEMIAEAAABIJQEHHwM0AOEBFgQBAAAASSUBBx8DGQDhAQwgAQAAAEolAQcfYx4A4QEWBAEAAABLJQEHH4MXAOEBGkABAAAATCUBBx8DGQDhAQwgAQAAAE0lAQcfYxwA4QEWBAEAAABOJQEHHwMvAOEBDCABAAAATyUBBx9DKADhAQwgAQAAAFAlAQcfI34A4QEMIAEAAABRJQEHH4MoAOEBDCABAAAAUiUBBx8DMQDhAQwgAQAAAFMlAQcf4yAA4QEeAAEAAABUJQEGH+MVAOEBDCABAAAAVSUBBx+D7QHZAQwgAQAAAFYlAQcfQyoA4QEMIAEAAABXJQEHHwOXAOEBDCABAAAAWCUBByID0QDhAQwgAQAAAFklAQcio+0B4QEWBAEAAABaJQEHIqOzAOEBDCABAAAAWyUBByJjOQDhAQwgAQAAAFwlAQci4/wA4QEMIAEAAABdJQEHIsPtAdkBDCABAAAAXiUBByMjsAHhAR4AAQAAAF8lAQYjgx0A4QEaQAEAAABfJQEFI+MVAOEBHgABAAAAXyUBAiPj7QHhAQwgAQAAAGIlAQcj4z8A4QEaQAEAAABjJQEHI+MVAOEBGkABAAAAYyUBBSNj3QHhAR4AAQAAAGUlAQYj4zoA4QEeAAEAAABmJQEGI6MmAOEBGkABAAAAZSUBBSPDJgDhAS4gAQAAAGglAQYjgx8A4QEMIAEAAABpJQEHI+MVAOEBIAABAAAAaCUBAiOjxgDhAQwgAQAAAGslAQcj4xUA4QEaQAEAAABlJQEFI8NCAOEBDCABAAAAbSUBByNDKgDhAQwgAQAAAG4lAQcjw1wA4QEMIAEAAABvJQEHI2NOAOEBHkABAAAAcCUBBiODZADhARpAAQAAAHAlAQUj4xUA4QEaQAEAAABwJQEFI0NjAOEBGkABAAAAcCUBBSNjUQDhAQwgAQAAAHQlAQcjgyQA4QEMIAEAAAB1JQEHI0PfAOEBDCABAAAAdiUBByMjIADhAQwgAQAAAHYlAQUjQxgA4QEeQAEAAAB4JQEGI2NWAOEBGkABAAAAeCUBBSODNQDhAQwgAQAAAHolAQcj4xUA4QEaQAEAAAB4JQEFIwNuAOEBDCABAAAAfCUBByOD1gDhAQwgAQAAAHglAQUjo9YA4QEWBAEAAAB+JQEHI2MdAeEBHgABAAAAfyUBBiPjeADhAQwgAQAAAIAlAQcjo30A4QEuAAEAAACBJQEGI8NWAOEBFgQBAAAAhCUBBSPDSgDhARYEAQAAAIQlAQUjY/UA4QEWBAEAAACEJQEHI0NOAOEBDCABAAAAhSUBByMD7gHhAR4gAQAAAIYlAQYjY1YA4QEaQAEAAACGJQEFI+MVAOEBGkABAAAAhiUBBSPj4wDhARogAQAAAIYlAQUjAyMA4QEMIAEAAACKJQEHI+NZAOEBHiABAAAAiyUBBiPjFQDhARpAAQAAAIslAQUjQ38A4QEWBAEAAACNJQEHI8NWAOEBFgQBAAAAkSUBBSPDSgDhARYEAQAAAJElAQUjYxsA4QEMIAEAAACQJQEHIyNBAOEBFgQBAAAAkSUBByNDGQDhAR4AAQAAAJIlAQYjQygA4QEMIAEAAACTJQEHI+MVAOEBIgABAAAAlCUBBiPjowDhAQwgAQAAAJUlAQcjoz4B4QEeAAEAAACWJQEGIyOhAOEBDCABAAAAlyUBByOjTgDhAQwgAQAAAJglAQcjAykA4QEeAAEAAACZJQEGI2MZAOEBGkABAAAAmSUBBSPjFQDhAQwgAQAAAJslAQcj4xkA4QEaQAEAAACWJQEFI+MeAOEBHgABAAAAnSUBBiPjFQDhARpAAQAAAJYlAQUjo1cA4QEeQAEAAACfJQEGI6MXAOEBFgQBAAAAoCUBByMDhgDhARYEAQAAAKElAQcjA2IA4QEaQAEAAACfJQEFIyNiAOEBDCABAAAAoyUBByPjFQDhARpAAQAAAJ8lAQUjI2MA4QEaQAEAAACfJQEFI+OOAOEBFgQBAAAApiUBByMj7gHhAQwgAQAAAKclAQcjA7oB4QEMIAEAAACoJQEHI4M9AOEBGkABAAAAqSUBByODHwDhAQwgAQAAAKolAQcj4xUA4QEMIAEAAACrJQEHIwNnAOEBGkABAAAAqSUBBSPjMQDhAQwgAQAAAK0lAQcjA6AA4QEeIAEAAACuJQEGIwNuAOEBDCABAAAAryUBByNDpgDhAQwgAQAAALAlAQcj4xkA4QEaQAEAAACuJQEFI+MeAOEBDCABAAAAsiUBByMDKgDhAQwgAQAAALIlAQUjw1YA4QEWBAEAAAC8JQEFI8NKAOEBFgQBAAAAvCUBBSPjFQDhAR4gAQAAAK4lAQIjAzAA4QEMIAEAAAC3JQEHI4OJAOEBHgABAAAAriUBBiODVwDhAQwgAQAAALklAQcjo4UA4QEMIAEAAAC6JQEHI4M6AOEBDCABAAAAuyUBByMjvADhARYEAQAAALwlAQUko7AA5wEYMAEAAAC9JREFI6OwAOEBGDABAAAAvSUBByOjIwDhARYEAQAAAL8lAQcj448A4QEeIAEAAADAJQEGI4N/AOEBDCABAAAAwSUBByPjFQDhAS4EAQAAAMAlAQIjYzEA4QEcDAEAAADDJQEHI+OxAOEBHiABAAAAwCUBBCPDmgDhAQwgAQAAAMUlAQcjI7IA4QEsBAEAAADGJQEGIyNAAOEBDCABAAAAxyUBByNjvwDhAQwgAQAAAMglAQcjw1YA4QEMIAEAAADJJQEHI4NYAOEBGkABAAAAyiUBByOjGADhASBAAQAAAMolAQIjYyoA4QEMIAEAAADMJQEHI+MVAOEBHgABAAAAyiUBAiPDHADhARpAAQAAAMolAQUj4x4A4QEWBAEAAADPJQEFI8NKAOEBFgQBAAAA0CUBBSNDfwDhASIgAQAAANElAQYj45YA4QEMIAEAAADSJQEHI4NOAOEBDCABAAAA0yUBBSODFgDhAQwgAQAAANMlAQUjoyMA4QEWBAEAAADVJQEHIyPCAOEBDCABAAAA1iUBByPDIADhARwMAQAAANclAQcjA6AA4QEMIAEAAADYJQEHI2MbAOEBDCABAAAA2SUBByOj8QDhAQwgAQAAANolAQcjIzIB4QEMIAEAAADbJQEHI+NpAOEBLkABAAAA3CUBBiMDQADhASBAAQAAANwlAQIjoyMA4QEMIAEAAADeJQEFI8MjAOEBDCABAAAA3iUBBSMjQADhAQwgAQAAAOAlAQcj4xUA4QEeQAEAAADcJQECI+OBAOEBHiABAAAA3CUBBCPjHgDhARpAAQAAAOMlAQcj4xUA4QEgAAEAAADjJQECIwM4AOEBFgQBAAAA5SUBByNDMADhASBAAQAAAMAlAQIjoxcA4QEWBAEAAADnJQEHI+MVAOEBFgQBAAAA6CUBByPj5gDhAR4AAQAAAOklAQYj4xUA4QEeAAEAAADpJQECI0NFAOEBFgQBAAAA6yUBByNDUQDhAQwgAQAAAOwlAQcjwyAA4QEcDAEAAADtJQEHI2MbAOEBDCABAAAA7iUBByNDugDhAR4gAQAAAO8lAQYjoyYA4QEaQAEAAADvJQEFI+MVAOEBGkABAAAA7yUBBSNjegDhAR4AAQAAAPIlAQYj4xUA4QEeAAEAAADyJQECI0PuAeEBHkABAAAA9CUBBiPjFQDhARpAAQAAAPQlAQUjQ0oA4QEMIAEAAAD2JQEHI0NUAOEBDCABAAAA9yUBByPjFQDhAS4gAQAAAPQlAQIjYzEA4QEcDAEAAAD5JQEHI+NUAOEBGkABAAAA9CUBBSODOgDhAQwgAQAAAPslAQcjgz0A4QEMIAEAAAD8JQEHI+M/AOEBHgABAAAA/SUBBiMDQADhARpAAQAAAP0lAQUjQygA4QEMIAEAAAD/JQEHIwNYAOEBHgABAAAAACYBBCPjFQDhARpAAQAAAP0lAQUjYyQA4QEMIAEAAAACJgEHI4MHAeEBDCABAAAAAyYBByPjFQDhAR4gAQAAAAQmAQYjY4sA4QEaQAEAAAAFJgEHI+MVAOEBFgQBAAAABiYBByPDJgDhAQwgAQAAAAcmAQcj4xUA4QEuQAEAAAAEJgECI4NSAOEBDCABAAAACSYBByMjpwDhAR4gAQAAAAQmAQQjgxsB4QEWBAEAAAALJgEHI6MjAOEBFgQBAAAADCYBByODogDhAR4gAQAAAA0mAQYj438A4QEeAAEAAAANJgEEI+MVAOEBGkABAAAADSYBBSOjvADhAR4gAQAAABAmAQYj4xUA4QEaQAEAAAAQJgEFI0MOAeEBHgABAAAAECYBBCOjIwDhAS4AAQAAABMmAQYj4xUA4QEaQAEAAAATJgEFI0OPAOEBFgQBAAAAFSYBByNDbADhARYEAQAAABYmAQcjI6EA4QEeQAEAAAAXJgEGIwMmAOEBDCABAAAAGCYBByMDIwDhAQwgAQAAABkmAQcjYxkA4QEaQAEAAAAXJgEFI4NDAOEBDCABAAAAGyYBByPj0wDhAQwgAQAAABwmAQcjwyMA4QEeIAEAAAAXJgEEI+MVAOEBHkABAAAAFyYBAiPDQgDhAQwgAQAAAB8mAQcjg0MA4QEMIAEAAAAgJgEHJANuAOcBGDABAAAAISYRBSMDbgDhARgwAQAAACEmAQcjI7gA4QEeAAEAAAAjJgEGIwNAAOEBGkABAAAAIyYBBSPjFQDhARpAAQAAACMmAQUjA0AA4QEaQAEAAAAkJgFFI+MVAOEBGkABAAAAJSYBRSNDdADhAR4AAQAAACMmAQQjA9AA4QEMIAEAAAApJgEHI2PuAeEBDCABAAAAKiYBByMjpgDhAQwgAQAAACsmAQcjg+4B4QEeAAEAAAAsJgEGI0OyAOEBFgQBAAAALSYBByPDTgDhAR4gAQAAAC4mAQYj4xUA4QEgAAEAAAAuJgECI6MDAeEBHiABAAAAMCYBBiPjFQDhARpAAQAAADAmAQUjA3gA4QEeAAEAAAAwJgEEI8PLAOEBHgABAAAAMyYBBiOj7gHhAR4AAQAAADQmAQYjY1YA4QEaQAEAAACGJQEFI+MVAOEBGkABAAAAhiUBBSPjMQDhAQwgAQAAADcmAQcjoyMA4QEMIAEAAAA4JgEHI8MjAOEBDCABAAAAOCYBBSMjVwDhARYEAQAAADomAQcj42EA4QEMIAEAAAA7JgEHIwMyAOEBDCABAAAANyYBBSPDQgDhAQwgAQAAAD0mAQcjIy0A4QEMIAEAAAA+JgEHI2NRAOEBDCABAAAAPyYBByODRADhARpAAQAAAKklAQUjwzkA4QEgQAEAAACpJQECI8PLAOEBGkABAAAAQiYBByPD7gHhAR4AAQAAAEMmAQYj4xkA4QEaQAEAAABDJgEFI+MVAOEBGkABAAAAQyYBBSMDhADhARpAAQAAAAQmAQUlYzcA4QEMIAEAAABHJgEHJSMaAOEBFgQBAAAASCYBByWDRADhAQwgAQAAAEkmAQclgywA4QEMIAEAAABLJgEFJaM8AOEBDCABAAAASyYBByVDHgDhAQwgAQAAAEwmAQclYx4A4QEMIAEAAABNJgEHJSMaAOEBFgQBAAAATiYBByVjIgDhAQwgAQAAAE8mAQclQ4cB4QEMIAEAAABgJgEFJYM0AOEBFgQBAAAAUSYBByXDGgDhARwMAQAAAFImAQclgxcA4QEaQAEAAABTJgEHJQMZAOEBDCABAAAAVCYBByVDIADhAQwgAQAAAFUmAQclAxkA4QEMIAEAAABWJgEHJYMxAOEBGkABAAAAWSYBBSUjIADhARpAAQAAAFkmAQUlwzUA4QEaQAEAAABZJgEHJaMnAOEBGkABAAAAWiYBByWDMADhARpAAQAAAFsmAQclwxkA4QEMIAEAAABcJgEHJQNAAOEBFgQBAAAAXSYBByUDWADhAQwgAQAAAFwmAQUlw7EA4QEMIAEAAABfJgEHJSNWAOEBDCABAAAAYCYBByVDKwDhAQwgAQAAAGImAQUlIxwA4QEMIAEAAABiJgEHJaMnAOEBGkABAAAAYyYBByUjKwDhAQwgAQAAAGQmAQclQysA4QEaQAEAAABjJgEFJeMhAOEBDCABAAAAZiYBByVjIADhAQwgAQAAAGcmAQclIxoA4QEWBAEAAABoJgEHJYMwAOEBGkABAAAAaSYBByWjRgDhAQwgAQAAAGomAQclwzAA4QEaQAEAAABpJgEFJePuAeEBDCABAAAAbCYBByXDPADhARYEAQAAAG0mAQclI1cA4QEWBAEAAABuJgEHJQPhAeEBDCABAAAAbyYBByUjlADhASIAAQAAAHAmAQYlYzcA4QEMIAEAAABxJgEHJWMkAOEBDCABAAAAciYBByVjNwDhAQwgAQAAAHMmAQclIxwA4QEMIAEAAAB0JgEHJSMaAOEBFgQBAAAAdSYBByXDGgDhARwMAQAAAHYmAQclg/sA4QEeIAEAAAB3JgEGJQM4AOEBDCABAAAAeCYBByUDJQDhARYEAQAAAHkmAQclgxwA4QEWBAEAAAB6JgEHJcMaAOEBHAwBAAAAeyYBByUDGQDhAQwgAQAAAHwmAQcloycA4QEaQAEAAACFJgFHJYMnAOEBGkABAAAAhiYBRSUjKwDhAQwgAQAAAH8mAQclQysA4QEaQAEAAACIJgFFJeMVAOEBDCABAAAAiSYBRyXjIQDhAQwgAQAAAIImAQclYyAA4QEMIAEAAACDJgEHJQMZAOEBDCABAAAAhCYBByWDMADhARpAAQAAAIUmAQclozAA4QEaQAEAAACFJgEFJaNGAOEBDCABAAAAhyYBByXDMADhARpAAQAAAIUmAQUl4xUA4QEeAAEAAACFJgECJQNAAOEBGkABAAAAdyYBBSXjFQDhARpAAQAAAHcmAQUlQ0kA4QEMIAEAAACMJgEHJQM4AOEBDCABAAAAjSYBByXj5QDhAQwgAQAAAHcmAQUlIzQA4QEWBAEAAACPJgEHJYMcAOEBFgQBAAAAkCYBByXDGgDhARwMAQAAAJEmAQclYxsA4QEMIAEAAACSJgEHJaMnAOEBGkABAAAAkyYBByWDMADhARpAAQAAAJQmAQclAzgA4QEMIAEAAACVJgEHJQNBAOEBDCABAAAAliYBByUjGgDhARYEAQAAAJcmAQclwxoA4QEcDAEAAACYJgEHJSMgAOEBDCABAAAApyYBBSWjJwDhARpAAQAAAKAmAUclgycA4QEaQAEAAAChJgFFJSMrAOEBDCABAAAAoiYBRyUDKgDhAQwgAQAAAKMmAUUlQysA4QEaQAEAAACkJgFFJeMVAOEBGkABAAAApSYBRSWDMADhARpAAQAAAKAmAQclozAA4QEaQAEAAACgJgEFJaNGAOEBDCABAAAAoiYBByUDKgDhAQwgAQAAAKImAQUlwzAA4QEaQAEAAACgJgEFJeMVAOEBGkABAAAAoCYBBSUjGgDhARYEAQAAAKYmAQclI0EA4QEMIAEAAACnJgEHJSM0AOEBFgQBAAAAqCYBByUDOADhAQwgAQAAAKkmAQclYxwA4QEWBAEAAACqJgEHJaM1AOEBDCABAAAAqyYBByVjLgDhARYEAQAAAKwmAQclYxwA4QEWBAEAAACtJgEHJaMnAOEBGkABAAAAriYBByVDKwDhARpAAQAAAK4mAQUlYyAA4QEMIAEAAACwJgEHJYMwAOEBGkABAAAAsSYBByXDMADhARpAAQAAALEmAQUlIzsA4QEMIAEAAACzJgEHJUMrAOEBDCABAAAAtiYBBSUDGQDhAQwgAQAAALUmAQclIxwA4QEMIAEAAAC2JgEHJaPKAeEBDCABAAAAtyYBByWDLgDhAQwgAQAAALkmAQUlozwA4QEMIAEAAAC5JgEFJYMZAOEBDCABAAAAvSYBBSWDhQDhAQwgAQAAALsmAQclYyYA4QEMIAEAAAC8JgEHJaM8AOEBDCABAAAAvSYBByWjMwDhAQwgAQAAAL4mAQclIxoA4QEWBAEAAAC/JgEHJcMaAOEBHAwBAAAAwCYBByVjGwDhARYEAQAAAMEmAQclg5QA4QEMIAEAAAC+JgEFJSMcAOEBDCABAAAAwyYBByWDGQDhAQwgAQAAAMQmAQclIxoA4QEWBAEAAADFJgEHJeNSAOEBDCABAAAAxiYBByWjgADhAQwgAQAAAMcmAQclQysA4QEMIAEAAADKJgEFJaNxAOEBDCABAAAAySYBByUjHADhAQwgAQAAAMomAQclIxoA4QEWBAEAAADLJgEHJUMrAOEBDCABAAAAzSYBBSUjHADhAQwgAQAAAM0mAQUlA+8B4QEaIAEAAADOJgEHJcMWAOEBDCABAAAAzyYBByVjHADhARYEAQAAANAmAQclQ+gA4QEMIAEAAADRJgEHJSMaAOEBFgQBAAAA0iYBByXjLADhAQwgAQAAANMmAQclI+8B4QEMIAEAAADUJgEHJaNUAOEBDCABAAAA1SYBByVDGQDhAQwgAQAAANYmAQclQ00A4QEMIAEAAADXJgEHJcMXAOEBFgQBAAAA2CYBByVDIADhAQwgAQAAANkmAQclYy4A4QEWBAEAAADaJgEHJUMgAOEBDCABAAAA2yYBByUDGQDhAQwgAQAAAOMmAUcloycA4QEaQAEAAADkJgFHJYMnAOEBFgQBAAAA5SYBRyUjKwDhAQwgAQAAAN8mAQclQysA4QEaQAEAAADnJgFFJeMVAOEBDCABAAAA6CYBRyXjIQDhAQwgAQAAAOImAQclAxkA4QEMIAEAAADjJgEHJYMwAOEBGkABAAAA5CYBByWjMADhASBAAQAAAOQmAQIlo0YA4QEMIAEAAADmJgEHJcMwAOEBGkABAAAA5CYBBSXjFQDhAR4AAQAAAOQmAQIlQ2QA4QEMIAEAAADpJgEHJWMcAOEBFgQBAAAA6iYBByWjKgDhARwMAQAAAOsmAQclIzsA4QEMIAEAAADsJgEHJUNkAOEBDCABAAAA7SYBByWjVADhAQwgAQAAAO4mAQcl4xUA4QEaQAEAAADOJgEFJcMXAOEBFgQBAAAA8CYBByUDIgDhAQwgAQAAAPImAQUlozwA4QEMIAEAAADyJgEFJYMXAOEBGkABAAAA8yYBByXjGQDhARYEAQAAAPQmAQclAxkA4QEMIAEAAAD1JgEHJWMaAOEBDCABAAAA9iYBByVDZADhAQwgAQAAAPcmAQclIxoA4QEWBAEAAAD4JgEHJYMcAOEBFgQBAAAA+SYBByWjJwDhARpAAQAAAPomAQcl4yEA4QEMIAEAAAD7JgEHJSMaAOEBFgQBAAAA/CYBByWDHADhARYEAQAAAP0mAQclgzAA4QEaQAEAAAD+JgEHJUPvAeEBGkABAAAAziYBBSVjRgDhAQwgAQAAAAEnAQUlozwA4QEMIAEAAAABJwEHJeMhAOEBDCABAAAAAicBByWjPgDhAQwgAQAAAAMnAQclQysA4QEMIAEAAAAFJwEFJSMcAOEBDCABAAAABScBBSUjGgDhARYEAQAAAAYnAQcl4zcA4QEMIAEAAAAHJwEHJeMhAOEBDCABAAAACCcBByVjIADhAQwgAQAAAAknAQclgxcA4QEeIAEAAAAKJwEGJeMZAOEBGkABAAAACicBBSUDGgDhAR4gAQAAAAonAQQlAxkA4QEMIAEAAAANJwEHJWMaAOEBDCABAAAADicBByVDJwDhAQwgAQAAAA8nAQclA0kA4QEMIAEAAAAPJwEFJcM2AOEBDCABAAAAEScBByXDPADhARYEAQAAABInAQclgxwA4QEWBAEAAAATJwEHJeMlAOEBDCABAAAAFCcBByUjHADhAQwgAQAAABUnAQclIxoA4QEWBAEAAAAWJwEHJeMhAOEBDCABAAAAFycBByVjIADhAQwgAQAAABgnAQclIxoA4QEWBAEAAAAZJwEHJcMaAOEBHAwBAAAAGicBByXDYgDhAQwgAQAAABsnAQclgxkA4QEMIAEAAAAcJwEHJSMaAOEBFgQBAAAAHScBByUjHADhAQwgAQAAAB4nAQclIxwA4QEMIAEAAAAfJwEHJcO2AeEBDCABAAAAICcBByVjHADhARYEAQAAACEnAQclYxwA4QEWBAEAAAAiJwEHJcM7AOEBDCABAAAAIycBByVjIADhAQwgAQAAACQnAQclQyAA4QEMIAEAAAAlJwEHJWMcAOEBFgQBAAAAJicBByWjKgDhARwMAQAAACcnAQclYxsA4QEMIAEAAAAoJwEHJeM7AOEBDCABAAAAIycBBSUDfgDhAQwgAQAAAConAQclQysA4QEMIAEAAAAsJwEFJSMcAOEBDCABAAAALCcBByUjGgDhARYEAQAAAC0nAQclgxwA4QEWBAEAAAAuJwEHJUMtAOEBDCABAAAALycBByUDQwDhAQwgAQAAADAnAQcloxoA4QEWBAEAAAAxJwEHJUMaAOEBDCABAAAAMicBByWjPADhAQwgAQAAADMnAQclIxoA4QEWBAEAAAA0JwEHJUORAOEBDCABAAAANScBByUjGgDhARYEAQAAADYnAQclgxwA4QEWBAEAAAA3JwEHJcMaAOEBHAwBAAAAOCcBByVDHQDhAQwgAQAAADknAQclYxkB4QEMIAEAAAA6JwEHJcPPAOEBDCABAAAAOycBByXjQADhAQwgAQAAADsnAQUlIxoA4QEWBAEAAAA9JwEHJeN7AOEBDCABAAAAPicBByVDKwDhAQwgAQAAAEAnAQUlIxwA4QEMIAEAAABAJwEHJaMnAOEBGkABAAAASCcBRyWDJwDhARZAAQAAAEknAUUlIysA4QEMIAEAAABKJwFHJQMqAOEBDCABAAAASycBRSVDKwDhARpAAQAAAEwnAUUl4xUA4QEaQAEAAABNJwFFJWMgAOEBDCABAAAARycBByWDMADhARpAAQAAAEgnAQclozAA4QEaQAEAAABIJwEFJaNGAOEBDCABAAAASicBByUDKgDhAQwgAQAAAEonAQUlwzAA4QEaQAEAAABIJwEFJeMVAOEBGkABAAAASCcBBSUjGgDhASIEAQAAAE4nAQYlgxwA4QEWBAEAAABPJwEHJcMaAOEBHAwBAAAAUCcBByXjIQDhAQwgAQAAAFEnAQclg3AA4QEMIAEAAABSJwEHJQM8AOEBDCABAAAAUycBByUjGgDhASIAAQAAAFQnAQYlQy4A4QEMIAEAAABVJwEFJeNAAOEBDCABAAAAVScBBSVjcADhAR4AAQAAAOwQAUYloxgA4QEaQAEAAADtEAFFJeMVAOEBGkABAAAA7hABRSXjGADhAR5AAQAAAPAQAUQmAyIA5wEYMAEAAABbJxEFJQMiAOEBGDABAAAAWycBByVDHQDhARYEAQAAAF0nAQclQ3UA4QEMIAEAAABeJwEHJWOLAOEBHiABAAAAXycBBiXjJgDhAQwgAQAAAGEnAQUlY3MA4QEMIAEAAABhJwEHJSPzAOEBDCABAAAAYicBByWjCgHhARYEAQAAAGMnAQclQysA4QEMIAEAAABlJwEFJSMcAOEBDCABAAAAZScBBSXjeQDhAQwgAQAAAGYnAQclIxoA4QEWBAEAAABnJwEHJcMaAOEBHAwBAAAAaCcBByVDLQDhAQwgAQAAAGknAQclAxkA4QEMIAEAAAByJwFHJaMnAOEBGkABAAAAcycBRyWDJwDhARpAAQAAAHQnAUUlIysA4QEMIAEAAABtJwEHJUMrAOEBGkABAAAAdicBRSXjFQDhARpAAQAAAHcnAUUl4yEA4QEMIAEAAABwJwEHJWMgAOEBDCABAAAAcScBByUDGQDhAQwgAQAAAHInAQclgzAA4QEaQAEAAABzJwEHJaMwAOEBGkABAAAAcycBBSWjRgDhAQwgAQAAAHUnAQclwzAA4QEaQAEAAABzJwEFJeMVAOEBGkABAAAAcycBBSUDLQDhARYEAQAAAHgnAQcloycA4QEaQAEAAAB5JwEHJSMrAOEBDCABAAAAeicBByVDKwDhARpAAQAAAHknAQUlgzAA4QEaQAEAAAB8JwEHJaNGAOEBDCABAAAAfScBByXDMADhARpAAQAAAHwnAQUlQxYB4QEMIAEAAABmJwEFJSNuAOEBDCABAAAAgCcBByUDJQDhARYEAQAAAIEnAQclY+8B4QEMIAEAAACCJwEHJ4N8AOEBDCABAAAAgycBByiD7wEkBBgwAQAAAIQnEQUpo+8BKAQYMAEAAACEJwEFKiPHAOEBDCABAAAAhicBBypjggHZAR4gAQAAAIcnAQYqAyMA4QEMIAEAAACIJwEHKoMdAOEBGkABAAAAhycBBSrjFQDhARpAAQAAAIcnAQUqg68B4QEMIAEAAACLJwEHKgO/AOEBIgABAAAAjCcBBipjjgDhAQwgAQAAAI0nAQcqQ4cB4QEMIAEAAACOJwEHKuMgAOEBDCABAAAAjycBByrDGQDhAR4gAQAAAJAnAQYqYyMA4QEMIAEAAACRJwEHKoMjAOEBDCABAAAAkScBBSpjoADhAQwgAQAAAJMnAQcqw4wA4QEMIAEAAACUJwEHKgNuAOEBDCABAAAAlScBByqDFwDhAQwgAQAAAJYnAQcqA1gA4QEMIAEAAACQJwEFKsNOAOEBDCABAAAAmCcBByqjigDhAQwgAQAAAJknAQcq4xgA4QEMIAEAAACYJwEFKkNRAOEBDCABAAAAmycBByqjlADhAQwgAQAAAJwnAQcqY5EA4QEMIAEAAACbJwEFKiNMAOEBDCABAAAAnicBByrjFQDhARpAAQAAAJAnAQUqIy4A4QEMIAEAAACgJwEHKmM4AOEBDCABAAAAoCcBBSoDnwDhAS4EAQAAAKInAQYq4xUA4QEaQAEAAACiJwEFKqNVAOEBDCABAAAApCcBByqjeQHhAR4AAQAAAKInAQQqIyQA4QEMIAEAAACmJwEHKkNUAOEBDCABAAAApycBByqjbQDhAQwgAQAAAKgnAQcqQ1QA4QEMIAEAAACpJwEHKiO/AOEBDCABAAAAhycBBSojnwDhASIAAQAAAKsnAQYqAzQA4QEWBAEAAACsJwEHKqMnAOEBGkABAAAArScBBypDKwDhARpAAQAAAK0nAQUqgzAA4QEaQAEAAACvJwEHKsMwAOEBGkABAAAArycBBSqDFwDhARpAAQAAALEnAQcqAxoA4QEaQAEAAACxJwEFKuMVAOEBGkABAAAAsScBBSoDGQDhAQwgAQAAALQnAQcqYxoA4QEMIAEAAAC1JwEHKsPWAOEBDCABAAAAticBByrD7wHhAQwgAQAAALcnAQcqAycA4QEMIAEAAAC4JwEHKuMeAOEBDCABAAAAuScBBypDZADhAQwgAQAAALonAQcqw0gA4QEMIAEAAAC7JwEHKmNAAOEBDCABAAAAvCcBByrjHgDhAQwgAQAAAL0nAQcqgy4A4QEMIAEAAAC+JwEHKoMgAOEBDCABAAAAvycBBypjNwDhAQwgAQAAAMAnAQcq4x4A4QEMIAEAAADBJwEHKmMWAeEBFgQBAAAAwicBByrDIADhARwMAQAAAMMnAQcqQ0IA4QEWBAEAAADEJwEHKkMgAOEBDCABAAAAxScBByqDXADhARwMAQAAAMYnAQcqoxcA4QEeIAEAAADHJwEGKgOGAOEBGkABAAAAxycBBSqDTADhAQwgAQAAAMknAQcqw1YA4QEWBAEAAADUJwEFKsNKAOEBFgQBAAAA1CcBBSpjGwDhAQwgAQAAAMwnAQcq4xUA4QEeAAEAAADHJwECKgN2AOEBHkABAAAAzicBBioDQADhARpAAQAAAM4nAQUqQygA4QEMIAEAAADQJwEHKgNYAOEBHkABAAAAzicBBCrjFQDhARpAAQAAAM4nAQUqI2UA4QEeAAEAAADHJwEEKgPCAOEBFgQBAAAA1CcBByoDVQHhAQwgAQAAANUnAQcqYzcA4QEMIAEAAADWJwEHKmOFAOEBDCABAAAA1ScBBSpDJgDhAQwgAQAAANgnAQcqo4oA4QEWBAEAAADZJwEHKsMaAOEBHAwBAAAA2icBBypjGwDhAQwgAQAAANsnAQcqIxoA4QEMIAEAAADcJwEHKoMcAOEBFgQBAAAA3ScBByrDGgDhARwMAQAAAN4nAQcqQx0A4QEMIAEAAADfJwEHKkMtAOEBDCABAAAA3CcBBypDOADhARYEAQAAAOEnAQcqQyAA4QEMIAEAAADiJwEHKmMbAOEBFgQBAAAA4ycBByqjKgDhARwMAQAAAOQnAQcqYxsA4QEMIAEAAADlJwEHKiMwAOEBFgQBAAAA5icBByrDGgDhARwMAQAAAOcnAQcqQ18B2QEMIAEAAADoJwEHKoNFAeEBDCABAAAA6ScBByqDpwHhAQwgAQAAAOonAQcqI24A4QEMIAEAAADrJwEHKgOCAOEBDCABAAAA7CcBBypjSwDhAQwgAQAAAO0nAQcq4y8A4QEMIAEAAADuJwEHKoNTAeEBDCABAAAA7ycBByqDLADhAQwgAQAAAPAnAQcqgzwA4QEMIAEAAADwJwEFKiOFAOEBDCABAAAA8icBBypjUQDhAQwgAQAAAPMnAQcqY+0A4QEMIAEAAAD0JwEHKqPUAdkBHiABAAAA9ScBBiojUADhAQwgAQAAAPYnAQcqo1wA4QEMIAEAAAD3JwEHKiNPAOEBDCABAAAA+CcBByqjJgDhASBAAQAAAPUnAQIqwyYA4QEMIAEAAAD6JwEHKuMVAOEBGkABAAAA9ScBBSpDaQDhAQwgAQAAAPwnAQcqo6IA4QEMIAEAAAD1JwEFKoN8AOEBDCABAAAA/icBByqjOADhAQwgAQAAAP8nAQcqQx0A4QEWBAEAAAAAKAEHKuPxANkBFgQBAAAAASgBByrDpQDhAQwgAQAAAAIoAQcqg3wA4QEMIAEAAAADKAEHKmNRAOEBHiABAAAABCgBBiqjFwDhAQwgAQAAAAUoAQcqAyMA4QEMIAEAAAAGKAEHKqNMAOEBDCABAAAABygBByoDQADhARYEAQAAAAgoAQcqY8MA4QEMIAEAAAAJKAEHKuN4AOEBDCABAAAACigBByqDFwDhAR4AAQAAAAsoAQYq4x4A4QEMIAEAAAAMKAEHKuMVAOEBGkABAAAACygBBSrjFQDhAR5AAQAAAAQoAQIqYxsA4QEWBAEAAAAPKAEHKgNLAOEBDCABAAAAECgBByojVwDhARYEAQAAABEoAQcq458A4QEeAAEAAAASKAEGKqN5AOEBDCABAAAAEygBBypjHwDhASBAAQAAABIoAQIq4xUA4QEeQAEAAAASKAECKqMfAOEBHgABAAAAEigBBCrjTgDhAQwgAQAAABcoAQcqg6IA4QEMIAEAAAAYKAEHKmNJAOEBDCABAAAAGSgBByrDMwDhAQwgAQAAABooAQcqw1QA4QEMIAEAAAAEKAEHKuM+AOEBDCABAAAAHCgBByoDTwDhAQwgAQAAAB0oAQcqg2sA4QEMIAEAAAAeKAEHKoMkAOEBDCABAAAAHygBByoDOgDhAR4gAQAAACAoAQYq4xkA4QEgQAEAAAAgKAECKuMVAOEBGkABAAAAICgBBSoDMADhARpAAQAAACAoAQUqI5MA4QEMIAEAAAAkKAEHKkNlAeEBDCABAAAAJSgBBypDNwDhAQwgAQAAACYoAQcrYx0B5wEYMAEAAAAnKBEFKmMdAeEBGDABAAAAJygBByqDdgDhARYEAQAAACkoAQcrY0sA5wEYMAEAAAAqKBEFKmNLAOEBGDABAAAAKigBBypDSwDhARYEAQAAACwoAQcq41kB4QEMIAEAAAAtKAEHKuPvAeEBDCABAAAALigBByrjVQDhAR5AAQAAAC8oARYqo1cA4QEMIAEAAAAwKAEHKqOgAOEBDCABAAAAMSgBBypDWADhASBAAQAAAC8oAQIq478A4QEMIAEAAAAzKAEHKoMlAOEBIgABAAAANCgBBiqDKQDhAQwgAQAAADUoAQcqg0wA4QEMIAEAAAA2KAEHKgMqAOEBDCABAAAANigBBSrDmgDhARpAAQAAAC8oAQUqw1gA4QEMIAEAAAA5KAEHKuMVAOEBLkABAAAALygBAipjWQDhAQwgAQAAADsoAQcqI0IA4QEMIAEAAAA8KAEHKgMiAOEBDCABAAAAPSgBByoD8AHhAR4AAQAAAD4oAQYqA4YA4QEaQAEAAAA+KAEFKuMVAOEBGkABAAAAPigBBSoj8AHhARpAAQAAAD4oAQUqw3QA4QEMIAEAAABCKAEHKsNcAOEBDCABAAAAQygBByoDawDhAQwgAQAAAEQoAQcqgx8A4QEMIAEAAABFKAEHKuMVAOEBFgQBAAAARigBByrDGADhAQwgAQAAAEcoAQcq4xkA4QEWBAEAAABIKAEHKmMbAOEBFgQBAAAASSgBBypjGwDhAQwgAQAAAEooAQcqAzAA4QEMIAEAAABHKAEFKgNYAOEBDCABAAAAQygBBSpDKADhAQwgAQAAAE0oAQcqo2AA4QEMIAEAAAB2KAEFKmNfAOEBDCABAAAATygBBypjVgDhARYEAQAAAFAoAQcq438A4QEMIAEAAABRKAEHKoO3AOEBDCABAAAAUigBByrDQgDhAQwgAQAAAFMoAQcqYy4A4QEWBAEAAABUKAEHKoOfAOEBHiABAAAAVSgBBiqDIQDhARYEAQAAAFYoAQcqoyQA4QEcDAEAAABXKAEHKmMbAOEBDCABAAAAWCgBByoDhgDhARpAAQAAAFUoAQUqg0wA4QEMIAEAAABaKAEHKqPJAOEBDCABAAAAWygBByrDVgDhARYEAQAAAGEoAQUqw0oA4QEWBAEAAABhKAEFKuNWAOEBHAwBAAAAXigBByrjFQDhAR5AAQAAAFUoAQIqg6QA4QEeIAEAAABVKAEGKgNhAOEBFgQBAAAAYSgBByrDAgDhASIEAQAAAGIoAQYqA8QB4QEMIAEAAABsKAEFKuO0AOEBDCABAAAAZCgBBypDKADhARYEAQAAAGIoAQUqw0oA4QEWBAEAAABiKAEFKuNCAOEBDCABAAAAZygBByqDMQDhARpAAQAAAHEoAQUqIyAA4QEeIAEAAABxKAEEKsNEAOEBDCABAAAAaigBByqjIwDhARYEAQAAAGsoAQcq44sA4QEMIAEAAABsKAEHKsMjAOEBDCABAAAAbCgBBSpjoADhAQwgAQAAAGwoAQUqYxsA4QEMIAEAAABvKAEHKmNOAOEBDCABAAAAcCgBByrDGgDhAR4gAQAAAHEoAQYq4xUA4QEaQAEAAABxKAEFKsNCAOEBDCABAAAAcygBByrDzADhAQwgAQAAAHQoAQcqoxgA4QEWBAEAAAB1KAEHKuM0AOEBDCABAAAAdigBBypD8AHhAQwgAQAAAHcoAQcqI50A2QEMIAEAAAB4KAEHKsMZAOEBFgQBAAAAeSgBByrDIgDhAQwgAQAAAHooAQcq4z8B4QEMIAEAAAB7KAEHKuMVAeEBDCABAAAAfCgBByqDGgDhAQwgAQAAAH0oAQcqoxcA4QEMIAEAAAB+KAEHKmPwAeEBDCABAAAAfygBBypjQgHhAQwgAQAAAIAoAQcqg4oA4QEMIAEAAACBKAEHKoNgAOEBDCABAAAAgigBByqDawDhAQwgAQAAAIMoAQcq4y8A4QEMIAEAAACEKAEHKgOSAOEBDCABAAAAhSgBByqD8AHhAQwgAQAAAIYoAQcqY1kA4QEMIAEAAACHKAEHKiMWAeEBDCABAAAAiCgBByqjbQDhAQwgAQAAAIkoAQcqYyQA4QEMIAEAAACKKAEHKmMkAOEBDCABAAAAiygBByoDTADhASAEAQAAAIwoAQYqwxkA4QEWBAEAAACNKAEHKkMxAOEBFgQBAAAAjigBByqjJADhARwMAQAAAI8oAQcqYxsA4QEMIAEAAACQKAEHKkNKAOEBIgQBAAAAjCgBAioDSQDhARpAAQAAAIwoAQUqY6MB4QEWBAEAAACTKAEHKuMVAOEBGkABAAAAjCgBBSqjMQDhAQwgAQAAAJUoAQcqox8A4QEMIAEAAACWKAEHKoMxAOEBGkABAAAAmCgBBSoj0gDhAR4AAQAAAJgoAQYqIxUB4QEMIAEAAACZKAEHKkMYAOEBHgABAAAAmigBBiqDfwDhAR5AAQAAAJsoAQYq4xUA4QEeQAEAAACbKAECKgMqAOEBGkABAAAAmygBBSrjFQDhARpAAQAAAJooAQUqAxkA4QEMIAEAAACfKAEHKmO8AOEBHgABAAAAoCgBBioDJgDhAQwgAQAAAKEoAQcq4zoA4QEMIAEAAACiKAEHKoPWAOEBGkABAAAAmigBBSpjSwDZAS4AAQAAAKQoAQYqAycA4QEMIAEAAAClKAEHKsMmAOEBDCABAAAApigBBypDFgDhAQwgAQAAAKcoAQcqQ4MA4QEMIAEAAACoKAEHKiMZAeEBMgABAAAAqSgBBiqDoADhAQwgAQAAAKooAQcq49EA4QEMIAEAAACrKAEHKqPMAeEBDCABAAAArCgBBypDHgDhAQwgAQAAAK0oAQcqwxgA4QEMIAEAAACuKAEHKqMaAOEBFgQBAAAArygBByrDGgDhARwMAQAAALAoAQcqYyQA4QEiAAEAAACxKAEGKkMgAOEBDCABAAAAsigBByrDGQDhARYEAQAAALMoAQcqYxsA4QEMIAEAAAC0KAEHKoMiAOEBHAwBAAAAtSgBByrDVgDhARYEAQAAAMMoAQcqw0oA4QEWBAEAAADDKAEFKmMbAOEBDCABAAAAuCgBByqDdADhAR4gAQAAALkoAQYqA1YA4QEMIAEAAAC6KAEHKgNAAOEBIEABAAAAuSgBAioDWADhAR4AAQAAALkoAQQq4xUA4QEaQAEAAAC5KAEFKuO7AOEBHgABAAAAvigBBipDewDhARpAAQAAAL4oAQUq4/YA4QEMIAEAAADAKAEHKoOdAOEBHgABAAAAvigBBCrDSADhAQwgAQAAAMIoAQcqgxsB4QEWBAEAAADDKAEHKqN9AOEBHiABAAAAxCgBBirjRQHhAQwgAQAAAMUoAQcq4zoA4QEMIAEAAADGKAEHKgMjAOEBDCABAAAAxygBByoDhgDhARpAAQAAAMQoAQUqg0wA4QEMIAEAAADJKAEHKgMqAOEBDCABAAAAySgBBSqjigDhAQwgAQAAAMsoAQcq4xUA4QEaQAEAAADEKAEFKoOnAOEBDCABAAAAxCgBBSqjGADhASBAAQAAAKQoAQIqYyoA4QEiAAEAAACkKAECKgNGAOEBDCABAAAA0CgBByrDSgDhARYEAQAAAKQoAQUqgywA4QEMIAEAAADSKAEHKmMuAOEBFgQBAAAA0ygBByqjUADhAQwgAQAAANQoAQcq4xUA4QEeAAEAAACkKAECKqMjAOEBFgQBAAAA1igBByojdwDhAQwgAQAAANcoAQcqo00A4QEaQAEAAACkKAEFKsPCAeEBDCABAAAA2SgBByqjJwDhARpAAQAAAOIoAUcqgycA4QEaQAEAAADjKAFFKiMrAOEBDCABAAAA3CgBBypDKwDhARpAAQAAAOUoAUUq4xUA4QEgAAEAAADmKAFCKmMxAOEBGkABAAAA5ygBRSpjNwDhAQwgAQAAAOAoAQcqAxkA4QEMIAEAAADhKAEHKoMwAOEBGkABAAAA4igBByqjMADhARpAAQAAAOIoAQUqo0YA4QEMIAEAAADkKAEHKsMwAOEBGkABAAAA4igBBSrjFQDhASAAAQAAAOIoAQIqYzEA4QEcDAEAAADnKAEHKiM1AOEBDCABAAAA6CgBBypjMgDhARYEAQAAAOkoAQcqIzQA4QEWBAEAAADqKAEHKqPwAeEBFgQBAAAA6ygBByojWgDhAQwgAQAAAOwoAQcrgywA5wEYMAEAAADtKBEFKoMsAOEBGDABAAAA7SgBBypDHQDhARYEAQAAAO8oAQcqA48A4QEMIAEAAADwKAEHKgMnAOEBDCABAAAA8SgBBypjIADhARYEAQAAAPIoAQcqw/AB2QEeQAEAAADzKAEGKuOUAOEBDCABAAAA9CgBByojHgDhARpAAQAAAPUoAQcq4xUA4QEaQAEAAAD1KAEFKuNPAOEBHiABAAAA9ygBBipjVgDhASBAAQAAAPMoAQIqYyQA4QEMIAEAAAD5KAEHKgMmAOEBDCABAAAA+igBByqDfwDhAR5AAQAAAPsoAQYqYx8A4QEWBAEAAAD8KAEHKuMVAOEBLkABAAAA+ygBAioDKgDhARpAAQAAAPsoAQUq438A4QEMIAEAAAD3KAEFKoMxAOEBFgQBAAAAACkBByojIADhAQwgAQAAAAIpAQUqAzgA4QEMIAEAAAACKQEHKiOFAOEBDCABAAAABCkBBSojNgDhAQwgAQAAAAQpAQUqQzkA4QEMIAEAAAAFKQEHKuMuAOEBDCABAAAABikBByrDKgDhAQwgAQAAAAcpAQcq4xUA4QEeIAEAAADzKAECKiOYAeEBDCABAAAACSkBByqDGQHhAQwgAQAAAAopAQcqg5AA4QEMIAEAAAALKQEHKsMYAOEBDCABAAAADCkBByrDDQHhAQwgAQAAAA0pAQcqY1YA4QEgQAEAAADzKAECKoN/AOEBDCABAAAADykBBypj5gDhAQwgAQAAABApAQcq4xUA4QEeQAEAAADzKAECKiMiAOEBDCABAAAAEikBByrDTADhAQwgAQAAABMpAQcq4+MA4QEeAAEAAADzKAEGKuMeAOEBDCABAAAAFSkBByrjZgDZAR4gAQAAABYpAQYq4z8A4QEMIAEAAAAXKQEHKmPnAOEBDCABAAAAGCkBBypj5wDhAQwgAQAAABkpAQcqI14A4QEMIAEAAAAaKQEHKkNpAOEBDCABAAAAGykBByrjIQDhAQwgAQAAABwpAQcqAzUA4QEMIAEAAAAdKQEHKsNZAOEBDCABAAAAHSkBBSrDywDhAQwgAQAAAB8pAQcqAyMA4QEMIAEAAAAgKQEFKsNWAOEBFgQBAAAAJykBBSrDSgDhARYEAQAAACcpAQUqAyYA4QEMIAEAAAAjKQEHKuNWAOEBHAwBAAAAJCkBBypjGwDhAQwgAQAAACUpAQcqgyEA4QEWBAEAAAAmKQEHKgOrAOEBFgQBAAAAJykBByojTADhAQwgAQAAACgpAQcq47IA4QEeIAEAAAApKQEGKuMZAOEBGkABAAAAKSkBBSrjFQDhARpAAQAAACkpAQUqY5EA4QEeIAEAAAApKQEEKiObAOEBDCABAAAALSkBBypDowDhAR4gAQAAAC4pAQYqo8MA4QEMIAEAAAAuKQEFKiOVAeEBHgABAAAAMCkBBipDtADhAQwgAQAAADEpAQcqg6kA4QEMIAEAAAAyKQEHKqMjAOEBHkABAAAAMykBBipjGQDhARpAAQAAADMpAQUqwyMA4QEaQAEAAAAzKQEFKuMVAOEBGkABAAAAMykBBSoD9wDhAQwgAQAAADcpAQcqw+YA4QEMIAEAAAA4KQEHKsMWAOEBDCABAAAAOSkBByojkwDhAQwgAQAAADopAQcqw0QA4QEMIAEAAAA7KQEHKmO8AOEBDCABAAAAPCkBBypjHQDhAQwgAQAAAD0pAQcq4z8A4QEMIAEAAAA+KQEHKuNRAOEBDCABAAAAPykBBypjHwDhARpAAQAAABYpAQUqIx4A4QEMIAEAAABBKQEHKoMxAOEBGkABAAAARSkBBSojIADhARpAAQAAAEUpAQUq4xUA4QEaQAEAAAAWKQEFKsOmAOEBIAABAAAARSkBBioDZwDhARpAAQAAABYpAQUq4yMA4QEiAAEAAABHKQEGKuOfAeEBDCABAAAATSkBBSrDVgDhAQwgAQAAAEkpAQcqQxoA4QEMIAEAAABKKQEHKuOfAeEBDCABAAAATCkBBSrj2wDhAQwgAQAAAEwpAQUq49sA4QEMIAEAAABNKQEHKkN/AOEBIgQBAAAATikBBipjSwDhAQwgAQAAAE8pAQcq42YA4QEMIAEAAABQKQEHKoM2AOEBFgQBAAAAUSkBByojNADhARYEAQAAAFIpAQcqAy8A4QEMIAEAAABTKQEHKkNRAOEBDCABAAAAVCkBByrDIADhARwMAQAAAFUpAQcqYxsA4QEMIAEAAABWKQEHKoMXAOEBDCABAAAAVykBByrj8AHhAQwgAQAAAFgpAQcqo1IA4QEMIAEAAABZKQEHKiNGAOEBDCABAAAAWikBByojNgDhAQwgAQAAAFspAQcqY48A4QEeIAEAAABcKQEGKsMYAOEBDCABAAAAXSkBByrjFQDhARpAAQAAAFwpAQUq4x4A4QEMIAEAAABfKQEHKmMbAOEBDCABAAAAYCkBByqjjwDhAQwgAQAAAFwpAQUqQx0A4QEWBAEAAABiKQEHKkOiAOEBDCABAAAAYykBByoj5gDhAR4gAQAAAGQpAQYqA0AA4QEWBAEAAABlKQEHKgNAAOEBIAABAAAAZSkBQirjFQDhARpAAQAAAGQpAQUqQ5EA4QEMIAEAAABoKQEHKiNPAOEBHiABAAAAaSkBBipD1ADhAQwgAQAAAGopAQcqo4oA4QEWBAEAAABrKQEHKsMaAOEBHAwBAAAAbCkBBypjGwDhAQwgAQAAAG0pAQcqYxsA4QEWBAEAAABuKQEHKqMqAOEBHAwBAAAAbykBBypjGwDhAQwgAQAAAHApAQcq4x4A4QEMIAEAAABxKQEHKgMqAOEBDCABAAAAcSkBBSoDGgDhARpAAQAAAGkpAQUqw1YA4QEWBAEAAAB5KQEFKsNKAOEBFgQBAAAAeSkBBSrjVgDhARwMAQAAAHYpAQcqYxsA4QEMIAEAAAB3KQEHKuMVAOEBDCABAAAAeCkBBypDHADhARYEAQAAAHkpAQcqg6EA2QEeAAEAAAB6KQEGKmMiAOEBDCABAAAAeykBByrjHgDhAQwgAQAAAHwpAQcq48sB4QEMIAEAAAB9KQEHKgPDAeEBDCABAAAAfikBByqDiQDhAR4AAQAAAHopAQQq4xkA4QEaQAEAAAB6KQEFKuMeAOEBDCABAAAAgSkBByoDGQDhASIAAQAAAIIpAQYqYx8A4QEWBAEAAACDKQEHKsNWAOEBFgQBAAAAkCkBBSrDSgDhARYEAQAAAJApAQUq41YA4QEcDAEAAACGKQEHKuMVAOEBHgABAAAAeikBAiojrADhAR4AAQAAAIgpAQYqQygA4QEMIAEAAACJKQEHKgNYAOEBGkABAAAAiCkBBSrDXADhAQwgAQAAAIspAQcq4xUA4QEgAAEAAACIKQECKgP8AOEBHgABAAAAjSkBBirjFQDhARpAAQAAAI0pAQUqo3kB4QEMIAEAAACNKQEFKoOsAOEBFgQBAAAAkCkBBypjjAHhAQwgAQAAAJEpAQcqA/EB2QEMIAEAAACSKQEHKgNLAOEBGkABAAAA5CkBBSpjMgDhAR4AAQAAAJQpAQYq4xkA4QEaQAEAAACUKQEFKuMVAOEBIiABAAAAlikBBipjMQDhARwMAQAAAJcpAQcqAzAA4QEeAAEAAACUKQEEKuN8AOEBDCABAAAAmSkBByoD4wDhASIAAQAAAJopAQYqYyQA4QEiAAEAAACbKQEGKqM3AOEBDCABAAAAnCkBByqjIQDhARYEAQAAAJ0pAQcqg1gA4QEaQAEAAACeKQEHKsMcAOEBGkABAAAAnikBBSrDIADhARwMAQAAAKApAQcqYxsA4QEMIAEAAAChKQEHKiPxAeEBDCABAAAAoikBByrjRADhARYEAQAAAKMpAQcqgxwA4QEWBAEAAACkKQEHKkNJAOEBDCABAAAApSkBByojkgDhAQwgAQAAAKYpAQcqQ/EB2QEMIAEAAACnKQEHKsNWAOEBFgQBAAAArCkBBSrDSgDhARYEAQAAAKwpAQUq41YA4QEcDAEAAACqKQEHKmMbAOEBDCABAAAAqykBByoDrQDhARYEAQAAAKwpAQcqYxsA4QEMIAEAAACtKQEHKoObAOEBFgQBAAAArikBBypjzQDhAQwgAQAAAK8pAQcq43sA2QEeIAEAAACwKQEGKmPxAeEBDCABAAAAxikBBSpDIADhAQwgAQAAALIpAQcqwxkA4QEWBAEAAACzKQEHKgMZAOEBDCABAAAAtCkBByqDSgDhARpAAQAAALApAQUqI8UA4QEMIAEAAAC2KQEHKqNKAOEBHiABAAAAsCkBBCpDmwHhAR4gAQAAALgpAQYqw9wA4QEMIAEAAAC5KQEHKmMgAOEBDCABAAAAuikBByoDiwDhAQwgAQAAALspAQcqgykA4QEMIAEAAAC8KQEHKiMgAOEBDCABAAAAuCkBBSrjFQDhARpAAQAAALgpAQUqw0IA4QEMIAEAAAC/KQEHKuMeAOEBDCABAAAAwCkBByrjFQDhASAAAQAAALApAQIqYy8A4QEMIAEAAAC4KQEHKgNuAOEBDCABAAAAwykBByqjVwDhAQwgAQAAAMQpAQcqw0IA4QEMIAEAAADFKQEHKsOcAOEBDCABAAAAxikBBypDSgDhAQwgAQAAAMcpAQcqAy0A4QEWBAEAAADIKQEHKoMcAOEBFgQBAAAAySkBByrDGgDhARwMAQAAAMopAQcqYyAA4QEMIAEAAADLKQEHKgNBAOEBDCABAAAAzCkBByqDUQDhAQwgAQAAAM0pAQcqI2IA4QEMIAEAAADOKQEHKgMqAOEBDCABAAAAzikBBSrjFQDhARYEAQAAANApAQcq4xUA4QEaQAEAAAC4KQEFKkM2AeEBDCABAAAA0ikBByqD8QHhAQwgAQAAANMpAQcso/EB1QEMIAEAAADUKQEFLCNqAOEBDCABAAAA1SkBBy3D8QFOAg0gAQAAANgpIQUu4/EBUwINIAEAAADYKREFLOPxARkCDSABAAAA2CkBBS8D8gHZAQwgAQAAANkpAQcvQ+0A4QEMIAEAAADaKQEHL4OFAeEBDCABAAAA2ykBBy+DrwHhAQwgAQAAANwpAQcvI/IB2QEMIAEAAADdKQEHMEPyAdkBDCABAAAA3ikBBzFj8gHVAQwgAQAAAN8pAQUxYy4B2QEMIAEAAADgKQEHMcOmAOEBDCABAAAA4SkBBzHjVQDhAQwgAQAAAOIpAQcxQ38A4QEMIAEAAADjKQEHMQMnAOEBGkABAAAA5CkBBzHDGQDhARYEAQAAAOUpAQcxg0MA4QEMIAEAAADmKQEHMQMqAOEBDCABAAAA5ikBBTEjLQDhAQwgAQAAAOgpAQcxwyMA4QEaQAEAAADkKQEFMeMVAOEBHiABAAAA5CkBAjEjpwDhAQwgAQAAAOopAQUxI9oA4QEMIAEAAADsKQEHMaOKAOEBDCABAAAA7SkBBzHDKgDhAQwgAQAAAO4pAQcx464A4QEMIAEAAADvKQEHMSOsAOEBDCABAAAA8CkBBzEjRgDhAQwgAQAAAPEpAQcxQ2sA4QEiAAEAAADyKQEGMSMdAOEBHiABAAAA8ykBBjFDMQDhARpAAQAAAPMpAQUx4xUA4QEaQAEAAADzKQEFMYMXAOEBDCABAAAA9ikBBzEDGgDhAQwgAQAAAPYpAQUxI0kA4QEMIAEAAADzKQEFMeMeAOEBDCABAAAA+SkBBzHDjADhAQwgAQAAAPopAQcxg7cA4QEMIAEAAAD7KQEHMYM9AOEBHkABAAAA/CkBBjGjVwDhASIAAQAAAP0pAQYxI1EA4QEMIAEAAAD+KQEHMaOKAOEBFgQBAAAA/ykBBzHDGgDhARwMAQAAAAAqAQcxYxsA4QEMIAEAAAABKgEHMaM6AOEBHgABAAAAAioBBjFDKwDhARpAAQAAAAIqAQUx4xUA4QEuQAEAAAD8KQECMYNMAOEBDCABAAAABSoBBzFjGwDhARYEAQAAAAYqAQcxIyIA4QEMIAEAAAAHKgEHMQNnAOEBDCABAAAA/CkBBzFjIgDhARYEAQAAAAkqAQcxIxkA4QEeAAEAAAAKKgEGMYMnAOEBIEABAAAACioBAjEj5gDhAR4AAQAAAAwqAQYxA0AA4QEaQAEAAAAMKgEFMeMVAOEBGkABAAAADCoBBTEjKwDhAQwgAQAAAA8qAQcxQysA4QEaQAEAAAAKKgEFMaOFAOEBDCABAAAAESoBBzHjFQDhAS4AAQAAAAoqAQIxYzEA4QEcDAEAAAATKgEHMeNXAOEBDCABAAAAFCoBBzHDTgDhAQwgAQAAABUqAQcxo4oA4QEMIAEAAAAWKgEHMeMYAOEBDCABAAAAFSoBBTEDoADhAQwgAQAAABgqAQcxw3UA4QEMIAEAAAAZKgEHMYO4AOEBDCABAAAAGioBBzEjagDhAQwgAQAAABsqAQcxAy4A4QEMIAEAAAAcKgEHMYPyAdkBDCABAAAAHSoBBzEDsQDhAQwgAQAAAB4qAQcx46cA4QEMIAEAAAAfKgEHMcNWAOEBFgQBAAAAOyoBBTHDSgDhARYEAQAAADsqAQUxozwA4QEMIAEAAAAiKgEHMYMcAOEBIgQBAAAAIyoBBjFDIADhAQwgAQAAACQqAQcxwxoA4QEcDAEAAAAlKgEHMUMdAOEBDCABAAAAJioBBzGjTQDhAQwgAQAAACYqAQUx458A4QEMIAEAAAAoKgEHMaNtAOEBDCABAAAAKCoBRTEjdADhAQwgAQAAACoqAQcxQzMA4QEMIAEAAAAqKgEFMaPyAeEBDCABAAAALCoBBzHDGQDhAQwgAQAAAC0qAQcxIxsA4QEMIAEAAAAuKgEHMWOJAOEBDCABAAAALyoBBzGDHADhARYEAQAAADAqAQcxwxoA4QEcDAEAAAAxKgEHMSMgAOEBDCABAAAANCoBBTFjIADhAQwgAQAAADMqAQcxQ0kA4QEMIAEAAAA0KgEHMUM4AOEBDCABAAAANSoBBzHDHQDhAQwgAQAAADYqAQcxAyUA4QEWBAEAAAA3KgEHMSNEAOEBDCABAAAAOCoBBzHjLgDhAQwgAQAAADkqAQcxgzQA4QEWBAEAAAA6KgEHMaM3AOEBFgQBAAAAOyoBBzFjLgDhARYEAQAAADwqAQcxQy0A4QEMIAEAAAA9KgEHMWMoAOEBDCABAAAAPyoBBTFjmQDhAQwgAQAAAD8qAQUxgy0A4QEMIAEAAABAKgEHMeMZANkBGkABAAAAQSoBBzFDJQDhARpAAQAAAEEqAQUx4xUA4QEaQAEAAABBKgEFMaO5AOEBDCABAAAARCoBBzFjHADhARYEAQAAAEUqAQcxoyoA4QEcDAEAAABGKgEHMWMbAOEBDCABAAAARyoBBzGjPADhAQwgAQAAAEgqAQcxw7AA4QEaQAEAAABBKgEFMYMoANkBHiABAAAASioBBjHjFQDhARpAAQAAAEoqAQUxI7cA4QEaQAEAAABMKgEHMUMxAOEBGkABAAAATCoBBTHjFQDhASBAAQAAAEwqAQIxYxsA4QEMIAEAAABPKgEHMUMWAeEBGkABAAAATCoBBTFjpADhASIEAQAAAFEqAQYx4zoA4QEWBAEAAABSKgEHMaMmAOEBFgQBAAAAUyoBBzHDJgDhAQwgAQAAAFQqAQcxAyoA4QEMIAEAAABUKgEFMcNWAOEBFgQBAAAAWyoBBTHDSgDhARYEAQAAAFsqAQUxwxwA4QEMIAEAAABRKgEHMcPCAeEBFgQBAAAAWSoBBzFDfgDhARYEAQAAAFoqAQcxI3MA4QEWBAEAAABbKgEHMeO/AOEBDCABAAAAXCoBBzFDMAHhAQwgAQAAAF0qAQcxoygA4QEaQAEAAABKKgEFMeMeAOEBHgABAAAAXyoBBjEDIwDhAQwgAQAAAGAqAQcx4xUA4QEaQAEAAABfKgEFMQMqAOEBGkABAAAAXyoBBTHjHgDhAR4AAQAAAGMqAQYxI48A4QEMIAEAAACvMQEHMQMpAOEBGkABAAAAZSoBBzHDIwDhARpAAQAAAGUqAQUx4xUA4QEeAAEAAABlKgECMcMeAOEBFgQBAAAAaCoBBzFDKADhAQwgAQAAAGkqAQcx4xUA4QEMIAEAAABqKgEHMeMhAOEBDCABAAAAayoBBzFjIADhAQwgAQAAAGwqAQcxQygA4QEMIAEAAABtKgEHMSM2AOEBDCABAAAAbioBBzFjKgHhAQwgAQAAAG8qAQcxw0QA4QEMIAEAAABwKgEHMcPyAdkBDCABAAAAcSoBBzFjFADhAQwgAQAAAHIqAQUxg1EA4QEMIAEAAAByKgEFMePyAeEBDCABAAAAdCoBBzEDNADhARYEAQAAAHUqAQcxwxgA4QEMIAEAAAB2KgEHMeNgAOEBDCABAAAAdyoBBzGDhgDhAQwgAQAAAHgqAQcxA/MB4QEMIAEAAAB5KgEHMSPzAeEBDCABAAAAeioBBzFjNwDhAQwgAQAAAHsqAQcxI+IA4QEMIAEAAAB8KgEFMcNZAOEBDCABAAAAfCoBBTEjbQDhAQwgAQAAAH4qAQcxIzcA4QEMIAEAAAB+KgEFMUMrAOEBDCABAAAAgSoBBTGDGQDhAQwgAQAAAIEqAQUxQ/MB4QEMIAEAAACCKgEHMWMmAOEBHiABAAAAgyoBBjHjHgDhAQwgAQAAAIQqAQcx4xUA4QEeAAEAAACDKgECMeNzAeEBDCABAAAAhioBBzGDVgDhAQwgAQAAAIcqAQcxgxcA4QEaQAEAAACIKgEHMQMZAOEBDCABAAAAiSoBBzHjGADhAQwgAQAAAIkqAQUx4xUA4QEMIAEAAACLKgEHMSMeAOEBDCABAAAAjCoBBzHjFQDhAQwgAQAAAI0qAQcxgzkB4QEaQAEAAACOKgEHMaNKAOEBGkABAAAAjioBBTGD+ADhAQwgAQAAAJAqAQcxIxwA4QEMIAEAAACRKgEHMSMaAOEBFgQBAAAAkioBBzHDSADhAQwgAQAAAJMqAQcxY0AA4QEeIAEAAACUKgEGMWMZAOEBGkABAAAAlCoBBTGDQwDhAQwgAQAAAJYqAQcxg3YA4QEMIAEAAACXKgEHMcM8AOEBFgQBAAAAmCoBBzHDGgDhARwMAQAAAJkqAQcx4xUA4QEaQAEAAACUKgEFMWMgAOEBDCABAAAAmyoBBzGDIADhAQwgAQAAAJwqAQcxIxwA4QEMIAEAAACdKgEHMUMWAOEBDCABAAAAnioBBzHjFQDhAQwgAQAAAJ8qAQcx4x4A4QEMIAEAAACgKgEHMWMfAOEBFgQBAAAAoSoBBzEDOADhAQwgAQAAAKIqAQcxw8wA4QEMIAEAAACjKgEHMYMcAOEBFgQBAAAApCoBBzFjIADhAQwgAQAAAKUqAQcxQ0kA4QEMIAEAAACmKgEHMSMyAOEBDCABAAAApyoBBzFjSwDhAQwgAQAAAKgqAQcxwzwA4QEWBAEAAACpKgEHMaMnAOEBGkABAAAAqioBBzFDKwDhARpAAQAAAKoqAQUxYyAA4QEMIAEAAACsKgEHMYMwAOEBGkABAAAArSoBBzHDMADhARpAAQAAAK0qAQUxI0EA4QEMIAEAAACvKgEHMSMYAOEBHiABAAAAsCoBBjGjGADhARpAAQAAALAqAQUxYyoA4QEMIAEAAACyKgEHMSM3AOEBDCABAAAAsCoBBTFjLgDhARYEAQAAALQqAQcx4xUA4QEaQAEAAACwKgEFMWMgAOEBDCABAAAAtioBBzEjOwDhAQwgAQAAALcqAQcxg4gB4QEMIAEAAAC4KgEHMWNAAOEBDCABAAAAuSoBBzGDIADhAQwgAQAAALoqAQcxgyQA4QEaQAEAAAC7KgEHMQMZAOEBDCABAAAAvCoBBzHDJADhARpAAQAAALsqAQUx4x4A4QEMIAEAAAC+KgEHMeMVAOEBDCABAAAAvyoBBzFDLQDhAQwgAQAAAMAqAQcxQ2QA4QEeAAEAAADBKgEGMWNWAOEBFgQBAAAAwioBBzEjPADhARYEAQAAAMMqAQcxwxoA4QEcDAEAAADEKgEHMeMVAOEBGkABAAAAwSoBBTFjZADhAQwgAQAAAMYqAQcx4xUA4QEMIAEAAADHKgEHMeMeAOEBDCABAAAAyCoBBzHjHgDhAQwgAQAAAMkqAQcx4yEA4QEMIAEAAADKKgEHMWMgAOEBDCABAAAAyyoBBzGjJwDhARpAAQAAAMwqAQcxgycA4QEaQAEAAADMKgEFMUMrAOEBGkABAAAAzCoBBTEDGQDhAQwgAQAAAM8qAQcx4xgA4QEMIAEAAADPKgEFMeMVAOEBDCABAAAA0SoBBzFj9gDhAR4gAQAAANIqAQYx4xUA4QEaQAEAAADSKgEFMSOEAOEBDCABAAAA1CoBBzHjOgDhAQwgAQAAANUqAQcxwx0A4QEMIAEAAADZKgEFMQM6AOEBDCABAAAA1yoBBzGDRADhAQwgAQAAANgqAQcxozwA4QEMIAEAAADZKgEFMeNpAOEBGkABAAAA2ioBBzFDKADhAQwgAQAAANsqAQcx4xUA4QEuQAEAAADaKgECMWMxAOEBHAwBAAAA3SoBBzHjgQDhARpAAQAAANoqAQUxw1wA4QEiAAEAAADfKgEGMUMdAOEBIgABAAAA4CoBBjEjNADhARYEAQAAAOEqAQcxwx8A4QEMIAEAAADiKgEHMaM8AOEBDCABAAAA4yoBBzHDGgDhAQwgAQAAAOQqAQcxIzQA4QEWBAEAAADlKgEHMSMZAOEBDCABAAAA5ioBBzFjGADhAQwgAQAAAOcqAQcxIxkA4QEMIAEAAADoKgEHMYNDAOEBDCABAAAA6SoBBzHjOgDhAQwgAQAAAOoqAQcxY1EA4QEMIAEAAADrKgEHMcMZAeEBDCABAAAA7CoBBzHjnwDhAQwgAQAAAO0qAQcxYxwA4QEWBAEAAADuKgEHMUMgAOEBDCABAAAA7yoBBzHjXgHhAQwgAQAAAPAqAQcxg38A4QEeAAEAAADxKgEGMWM5AOEBDCABAAAA8ioBBzHDGADhAQwgAQAAAPMqAQcxwx4A4QEWBAEAAAD0KgEHMcMaAOEBHAwBAAAA9SoBBzEjHgDhAQwgAQAAAPYqAQcxgxcA4QEWBAEAAAD3KgEHMaMkAOEBHAwBAAAA+CoBBzFjGwDhAQwgAQAAAPkqAQcx4yAA4QEMIAEAAAD6KgEHMQMhAOEBDCABAAAA+ioBBTFjHwDhASBAAQAAAPEqAQIx4xUA4QEuAAEAAADxKgECMQMqAOEBHgABAAAA8SoBBDHDSgDhAQwgAQAAAP8qAQcxYxwA4QEWBAEAAAAAKwEHMWMbAOEBDCABAAAAASsBBzEjYwHhAQwgAQAAAAkrAQUxAzQA4QEMIAEAAAADKwEHMYMXAOEBDCABAAAABCsBBzEDGgDhAQwgAQAAAAQrAQUxI0UA4QEMIAEAAAAGKwEHMQNYAOEBDCABAAAABisBBTFDUQDhAQwgAQAAAAgrAQcxg90B4QEMIAEAAAAJKwEHMUMkAOEBIgABAAAACisBBjEDPADhAQwgAQAAAAsrAQcxQyAA4QEMIAEAAAAMKwEHMcMaAOEBHAwBAAAADSsBBzEjQwDhAQwgAQAAAA4rAQcx41YA4QEcDAEAAAAPKwEHMWMbAOEBDCABAAAAECsBBzFjIgDhASIEAQAAABErAQYxoycA4QEaQAEAAAAXKwFHMYMnAOEBGkABAAAAGCsBRTEjKwDhAQwgAQAAABQrAQcxQysA4QEaQAEAAAAaKwFFMeMVAOEBGkABAAAAGysBRTGDMADhARpAAQAAABcrAQcxozAA4QEaQAEAAAAXKwEFMaNGAOEBDCABAAAAGSsBBzHDMADhARpAAQAAABcrAQUx4xUA4QEaQAEAAAAXKwEFMeMDAeEBDCABAAAAHCsBBzEDlQDhARpAAQAAAB0rAQcxwxkA4QEWBAEAAAAeKwEHMQMZAOEBDCABAAAAHysBBzHjGQDhARpAAQAAAB0rAQUx4x4A4QEMIAEAAAAhKwEHMeMVAOEBFgQBAAAAIisBBzFjMQDhARwMAQAAACMrAQcxYxsA4QEMIAEAAAAkKwEHMWMbAOEBDCABAAAAJSsBBzFjMADhARpAAQAAAB0rAQUxAzEA4QEMIAEAAAAnKwEHMWPzAeEBDCABAAAAKCsBBzGDWADZAQIkIQIAACkrARcxQyAA4QEMIAEAAAAqKwEHMcMZAOEBFgQBAAAAKysBBzFjGwDhAQwgAQAAACwrAQcxYxwA4QEWBAEAAAAtKwEHMaMqAOEBHAwBAAAALisBBzFjGwDhAQwgAQAAAC8rAQcxQyAA4QEMIAEAAAAwKwEHMQM1AOEBDCABAAAAMisBBTEjNQDhAQwgAQAAADIrAQUxQx4A4QEMIAEAAAAzKwEHMWMeAOEBHiABAAAANCsBBjHjGQDhARYEAQAAADUrAQcxAzgA4QEMIAEAAAA2KwEHMQMwAOEBDCABAAAANCsBBTEjoADhAQwgAQAAADgrAQcxYz8A4QEaQAEAAAA5KwEHMUMlAOEBGkABAAAAOSsBBTEjIADhAQwgAQAAAD0rAQUxYxwA4QEWBAEAAAA8KwEHMUMeAOEBDCABAAAAPSsBBzFjHADhARYEAQAAAD4rAQcxoyoA4QEcDAEAAAA/KwEHMWMbAOEBDCABAAAAQCsBBzEjJgDhAS4gAQAAAEErAQYxYx8A4QEaQAEAAABBKwEFMSOyAOEBDCABAAAARCsBBTHDTADhAQwgAQAAAEQrAQcxY6QA4QEMIAEAAABFKwEHMeMZAOEBFgQBAAAARisBBzFjGwDhAQwgAQAAAEcrAQcx4xUA4QEaQAEAAABBKwEFMQMZAOEBDCABAAAASSsBBzGjJwDhARpAAQAAAFArAUcxgycA4QEWBAEAAABRKwFHMSMrAOEBDCABAAAATCsBBzFDKwDhARpAAQAAAFMrAUUx4xUA4QEaQAEAAABUKwFFMQMZAOEBDCABAAAATysBBzGDMADhARpAAQAAAFArAQcxozAA4QEWBAEAAABRKwEHMaNGAOEBDCABAAAAUisBBzHDMADhARpAAQAAAFArAQUx4xUA4QEaQAEAAABQKwEFMSNCAOEBDCABAAAAVSsBBzEjegDhARwMAQAAAFYrAQcxYxsA4QEMIAEAAABXKwEHMeMVAOEBLkABAAAAOSsBAjFDGgDhAQwgAQAAAFkrAQcxYxwA4QEWBAEAAABaKwEHMYMYAOEBDCABAAAAWysBBzFDGgDhAQwgAQAAAFwrAQcxQxoA4QEMIAEAAABdKwEHMSPYAeEBDCABAAAAXisBBzFDgwDhAQwgAQAAAF8rAQcxYyUA4QEaQAEAAAA5KwEFMcN7AOEBFgQBAAAAYSsBBzGjNgDhAQwgAQAAAGIrAQcxYxwA4QEWBAEAAABjKwEHMWMcAOEBFgQBAAAAZCsBBzHDGADhAQwgAQAAAGUrAQcx43UA4QEMIAEAAABmKwEHMcNgAOEBDCABAAAAZysBBzGDOQDhASwMAQAAAGgrAQYxY4sA4QEMIAEAAABpKwEHMYMsAOEBDCABAAAAaisBBzGDPADhAQwgAQAAAGorAQUy4wEBTgIZMAEAAABwKyEFMwMCAVMCGTABAAAAcCsRBTEDAgEZAhkwAQAAAHArAQUxYyoA4QEMIAEAAABvKwEHMUNAAOEBGDABAAAAcCsBBzFDSADhAQwgAQAAAHErAQcxg/MB4QEMIAEAAAByKwEHMeM8AOEBDCABAAAAcysBBzFDGgDhAQwgAQAAAHQrAQcxo18A4QEiIAEAAAB1KwEGMWMgAOEBDCABAAAAdisBBzFDQQDhAQwgAQAAAHcrAQcxw04A4QEMIAEAAAB4KwEHMUMaAOEBDCABAAAAeSsBBzEjHgDhAQwgAQAAAHorAQcx4z4A4QEMIAEAAAB7KwEHMSMmAOEBDCABAAAAfCsBBzGj8wHhAQwgAQAAAH0rAQcxwxwA4QEMIAEAAAApKwEFMQO8AOEBLgQBAAAAfysBBjGDJwDhARYEAQAAAIArAQcxoyQA4QEcDAEAAACBKwEHMWMbAOEBDCABAAAAgisBBzFDOADhARYEAQAAAIMrAQcx4x4A4QEMIAEAAACEKwEHMeMVAOEBGkABAAAAfysBBTHjHgDhAQwgAQAAAIYrAQcxAxkA4QEMIAEAAACHKwEHMcMXAOEBFgQBAAAAiCsBBzFjGwDhARYEAQAAAIkrAQcx4xgA4QEMIAEAAACHKwEFMUMgAOEBDCABAAAAiysBBzHjRgDhAQwgAQAAAIwrAQcxwxgA4QEeIAEAAACNKwEGMSN9AOEBDCABAAAAjisBBzEDQADhARYEAQAAAI8rAQcxAzQA4QEWBAEAAACQKwEHMYMhAOEBFgQBAAAAkSsBBzGjJADhARwMAQAAAJIrAQcx4x4A4QEMIAEAAACTKwEHMaN7AOEBDCABAAAAlCsBBzHjKADhASIgoQAAAJUrAQYxY2kA4QEcDAEAAACWKwEHMeMVAOEBHgABAAAAjSsBAjGDTADhAQwgAQAAAJgrAQcxozwA4QEMIAEAAACZKwEHMQMwAOEBDCABAAAAjSsBBTFDMwDhAQwgAQAAAJwrAQUxQ5kB4QEMIAEAAACcKwEFMUMgAOEBDCABAAAAnSsBBzFjHADhARYEAQAAAJ4rAQcxoyoA4QEcDAEAAACfKwEHMeMgAOEBHiABAAAAoCsBBjFjHwDhARYEAQAAAKErAQcx4xUA4QEaQAEAAACgKwEFMcOBAOEBDCABAAAAoysBBzFDMAHhAQwgAQAAAKQrAQcxgzEA4QEaQAEAAACnKwEFMSMgAOEBGkABAAAApysBBTGjsQDhARpAAQAAAKcrAQUxA3IA4QEWBAEAAACoKwEHMUMgAOEBDCABAAAAqSsBBzHDKADhARwMAQAAAKorAQcxYxsA4QEMIAEAAACrKwEHMQMgAOEBDCABAAAArCsBBzEjagDhAQwgAQAAAK0rAQcxAy4A4QEMIAEAAACuKwEHMQP5AOEBDCABAAAArysBBzHjTAHhAQwgAQAAALArAQcxY0AA4QEMIAEAAACxKwEFMcNiAeEBDCABAAAAsSsBBTGDOwDhAQwgAQAAALMrAQcxIxwA4QEMIAEAAAC0KwEHMWMuAOEBFgQBAAAAtSsBBzFDSQDhAQwgAQAAALYrAQcxQy4A4QEMIAEAAAC3KwEHMcM9AOEBDCABAAAAuCsBBzFjJADhAQwgAQAAALkrAQcxozwA4QEMIAEAAAC6KwEHMYNWAOEBDCABAAAAuysBBzED4gDhAQwgAQAAALwrAQcxQ1EA4QEMIAEAAAC9KwEHMWMiAOEBDCABAAAAvisBBzGjGgDhAQwgAQAAAL8rAQcxw5kA4QEMIAEAAADAKwEHMeMoAOEBDCABAAAAwSsBBzEjNwDhAQwgAQAAAMQrAQUxozYA4QEMIAEAAADDKwEHMeNaAOEBDCABAAAAxCsBBzFDgwHhARYEAQAAAMUrAQcxAyEA4QEMIAEAAADGKwEHMeMyAOEBFgQBAAAAxysBBzFDwwHhAQwgAQAAAMwrAQUxgxcA4QEaQAEAAADJKwEHMQMZAOEBDCABAAAAyisBBzFjGgDhAQwgAQAAAMsrAQcxQ7MA4QEMIAEAAADMKwEFMQMeAOEBDCABAAAAzSsBBzFjdADhAR4gAQAAAM4rAQYxYx4A4QEMIAEAAADPKwEHMUMxAOEBGkABAAAAzisBBTFDSgDhAQwgAQAAANErAQcxwxkA4QEWBAEAAADSKwEHMcMXAOEBIiABAAAA0ysBBjHDGgDhARwMAQAAANQrAQcxo3UA4QEMIAEAAADTKwEFMYMXAOEBGkABAAAA1isBBzHjGQDhASBAAQAAANYrAQIxAxoA4QEaQAEAAADWKwEFMeMVAOEBGkABAAAA1isBBTEDGQDhAQwgAQAAANorAQcxgyEA4QEWBAEAAADbKwEHMWMaAOEBDCABAAAA3CsBBzHjFQDhARpAAQAAAM4rAQUxozgA4QEMIAEAAADhKwEFMYMcAOEBFgQBAAAA3ysBBzFDSQDhAQwgAQAAAOArAQcxwzgA4QEMIAEAAADhKwEHMWM3AOEBDCABAAAA4isBBzEDWgDhAQwgAQAAAM4rAQcxI5IA4QEMIAEAAADkKwEHMWMiAOEBIgABAAAA5SsBBjGDFwDhARYEAQAAAOYrAQcxAxkA4QEMIAEAAADnKwEHMWM2AOEBDCABAAAA6CsBBzGDNgDhASIAAQAAAOkrAQYxwzMA4QEeIAEAAADqKwEGMWMoAOEBDCABAAAA6isBBTHjFQDhARpAAQAAAOorAQUxQyoA4QEMIAEAAADtKwEHMYM3AOEBDCABAAAA7isBBzHjPgDhAQwgAQAAAO8rAQcxAyIA4QEMIAEAAADxKwEFMaM8AOEBDCABAAAA8SsBBzFDogDhARpAAQAAAPIrAQcxYzYA4QEWBAEAAADzKwEHMaM7AOEBDCABAAAA9CsBBzGjGgDhARYEAQAAAPUrAQcxwxoA4QEcDAEAAAD2KwEHMcMZAOEBFgQBAAAA9ysBBzFjGwDhAQwgAQAAAPgrAQcxgyIA4QEcDAEAAAD5KwEHMcNWAOEBDCABAAAA+isBBzFjRgDhAQwgAQAAAPsrAQcxw3sA4QEWBAEAAAD8KwEHMcMaAOEBHAwBAAAA/SsBBzGDMQDhASBAAQAAAP4rAQIxIyAA4QEaQAEAAAAALAEFMcM1AOEBGkABAAAAACwBBzHjFQDhARYEAQAAAAEsAQcxYyQA4QEMIAEAAAACLAEHMaMaAOEBIgABAAAAAywBBjEDGQDhAQwgAQAAAAQsAQcxoycA4QEaQAEAAAAFLAEHMUMgAOEBDCABAAAABiwBBzEDGQDhAQwgAQAAAAcsAQcxgzAA4QEaQAEAAAAILAEHMcMaAOEBHAwBAAAACSwBBzEjIADhAQwgAQAAAAssAQUxoykA4QEMIAEAAAALLAEHMaMBAeEBDCABAAAADCwBBzEDGQDhAQwgAQAAAA0sAQcxoycA4QEaQAEAAAAWLAFHMYMnAOEBGkABAAAAFywBRTFDKwDhARpAAQAAABgsAUUx4xUA4QEaQAEAAAAZLAFFMeMhAOEBDCABAAAAEiwBBzFjIADhAQwEAQAAABMsAQcxoz0A4QEMIAEAAAATLAEFMQMZAOEBDCABAAAAFSwBBzGDMADhARpAAQAAABYsAQcxozAA4QEaQAEAAAAWLAEFMcMwAOEBGkABAAAAFiwBBTHjFQDhARpAAQAAABYsAQUxY6AA4QEMIAEAAAAaLAEHMWMzAOEBFgQBAAAAGywBBzGjJADhARwMAQAAABwsAQcxYxsA4QEMIAEAAAAdLAEHMUMdAOEBFgQBAAAAHiwBBzFjIgDhARYEAQAAAB8sAQcxg4QA4QEMIAEAAAAgLAEHMWM2AOEBDCABAAAAISwBBzGDbQDhAQwgAQAAACMsAQUxY2IA4QEMIAEAAAAjLAEHMSNeAOEBDCABAAAAJCwBBzGDFwDhARpAAQAAACUsAQcx4xkA4QEWBAEAAAAmLAEHMQMaAOEBGkABAAAAJSwBBTEDGQDhAQwgAQAAACgsAQcxYzkA4QEMIAEAAAApLAEHMUMmAOEBDCABAAAAKiwBBzEjUgDhAQwgAQAAACksAQUxwz0A4QEMIAEAAAAsLAEHMcNKAOEBHiABAAAALSwBBjFDiQDhAQwgAQAAAC4sAQcxgzYA4QEMIAEAAAAvLAEHMWMcAOEBFgQBAAAAMCwBBzEjeQDhAQwgAQAAAC4sAQUxwxgA4QEMIAEAAAAyLAEHMWMiAOEBFgQBAAAAMywBBzGDFwDhASIAAQAAADQsAQYxYxoA4QEMIAEAAAA1LAEHMWOZAOEBDCABAAAANiwBBzFDPADhAQwgAQAAADcsAQcx4xkA4QEgQAEAAAAtLAECMYMoAOEBDCABAAAAOSwBBzHjHgDhAQwgAQAAADosAQcxAxoA4QEMIAEAAABMLAEFMSN9AOEBDCABAAAAPCwBBzEDWADhAQwgAQAAADwsAQUxAzQA4QEWBAEAAAA+LAEHMcNWAOEBFgQBAAAAUiwBBTFjGADhAQwgAQAAAEAsAQcxw0oA4QEWBAEAAABSLAEFMYMxAOEBGkABAAAARSwBBTHDVgDhAQwgAQAAAEMsAQcxIyAA4QEaQAEAAABFLAEFMcM1AOEBGkABAAAARSwBBzHjFQDhARpAAQAAAEUsAQUx41YA4QEcDAEAAABHLAEHMaMaAOEBIgQBAAAASCwBBjEjOwDhAQwgAQAAAEksAQcxYxsA4QEMIAEAAABKLAEHMeMVAOEBHiABAAAALSwBAjFDGgDhAQwgAQAAAEwsAQcxIxgA4QEMIAEAAABNLAEHMaM9AOEBHiABAAAALSwBBDHjQADhAQwgAQAAAE8sAQcxIzcA4QEMIAEAAABRLAEHMeMxAeEBDCABAAAAUSwBBzFDHADhARYEAQAAAFIsAQcxYy4A4QEWBAEAAABTLAEHMSNeAOEBDCABAAAAVCwBBzHDOADhAQwgAQAAAFUsAQcxozEA4QEMIAEAAABWLAEHMUNqAOEBDCABAAAAVywBBzHDVgDhARYEAQAAAFwsAQUxw0oA4QEWBAEAAABcLAEFMeNWAOEBHAwBAAAAWiwBBzFjGwDhAQwgAQAAAFssAQcxozcA4QEWBAEAAABcLAEHMSOPAOEBDCABAAAAXSwBBzGDQwDhAR4AAQAAAF4sAQYxwwIA4QEMIAEAAABfLAEHMWMfAOEBIAQBAAAAXiwBAjHjFQDhARpAAQAAAF4sAQUxAyoA4QEeAAEAAABeLAEEMcMtAOEBDCABAAAAYywBBzEjfgDhAQwgAQAAAGQsAQcxYyQA4QEMIAEAAABlLAEHMWM2AOEBDCABAAAAZiwBBzHDHwDhAQwgAQAAAGcsAQcxYzYA4QEMIAEAAABoLAEHMWNJAOEBDCABAAAAaSwBBzFjJADhAQwgAQAAAGosAQcxAx8A4QEMIAEAAABrLAEHMWM2AOEBDCABAAAAbCwBBzHjUQDhAQwgAQAAAG0sAQcxwxcA4QEWBAEAAABuLAEHMWNjAOEBDCABAAAAbywBBzHDSADhAQwgAQAAAHAsAQcxwx8A4QEMIAEAAABxLAEHMWPgAOEBDCABAAAAcywBBTGjVADhAQwgAQAAAHMsAQcx42MA4QEMIAEAAAB0LAEHMQNvAOEBDCABAAAAdSwBBzFjJADhAQwgAQAAAHYsAQcxQ0kA4QEMIAEAAAB3LAEHMWMcAOEBFgQBAAAAeCwBBzHjHgDhAQwgAQAAAHksAQcxYyQA4QEMIAEAAAB6LAEHMSM0AOEBFgQBAAAAeywBBzFjgADhAQwgAQAAAHwsAQcxAz0A4QEMIAEAAAB9LAEHMcMfAOEBDCABAAAAfiwBBzGjHQDhAQwgAQAAAH8sAQcxwx0A4QEMIAEAAACBLAEFMQMZAOEBDCABAAAAgSwBBzGjPADhAQwgAQAAAIIsAQcxg0QA4QEMIAEAAACDLAEHMcMYAOEBFgQBAAAAhCwBBzHjlQHhAQwgAQAAAIUsAQcxIyMA4QEMIAEAAACGLAEHMUNMAOEBDCABAAAAhywBBzHDNADhAQwgAQAAAIgsAQcxwx8A4QEMIAEAAACJLAEHMYO1AOEBDCABAAAAiiwBBzGDJADhAQwgAQAAAIssAQcxg4YA4QEMIAEAAACMLAEHMWMuAOEBFgQBAAAAjSwBBzFjGADhAQwgAQAAAI4sAQcxA9AA4QEMIAEAAACPLAEHMmOtAQoCGTABAAAAlCwhBTODrQEPAhkwAQAAAJQsEQUxg60BEQIZMAEAAACULAEFMcPzAeEBFgQBAAAAkywBBzHj8wHhARgwAQAAAJQsAQcxYwIB4QEMIAEAAACVLAEHMaN7AOEBIiABAAAAliwBBjHDyQDhAQwgAQAAAJYsAQUxQzgA4QEiIAEAAACYLAEGMQNYAOEBDCABAAAAmCwBBTGDAgHhAQwgAQAAAJUsAQUxIzAA4QEWBAEAAACbLAEHMeMgAOEBDCABAAAAnCwBBzFjHwDhARYEAQAAAJ0sAQc0A/QB1QEMIAEAAACeLAEFNOM9AOEBDCABAAAAnywBBzTDogDhARYEAQAAAKAsAQc1A24A5wEYMAEAAAChLBEFNANuAOEBGDABAAAAoSwBBzRjWQDhAQwgAQAAAKQsAQU0w8wA4QEMIAEAAACkLAEFNEPfAOEBDCABAAAApywBBTSDHADhARYEAQAAAKYsAQc043UA4QEMIAEAAACnLAEHNKMeAOEBDCABAAAAqCwBBzSjHgDhAQwgAQAAAKksAQc0oxkA4QEWBAEAAACqLAEHNMMfAOEBDCABAAAAqywBBzQjGADhAQwgAQAAAKwsAQc0Q5AA4QEMIAEAAACyLAEFNKM8AOEBDCABAAAAriwBBzQjLgDhARYEAQAAAK8sAQc0Ay4A4QEMIAEAAACwLAEHNCMaAOEBFgQBAAAAsSwBBzTjNADhAQwgAQAAALIsAQc0w8wA4QEMIAEAAACzLAEHNCP0AeEBDCABAAAAtCwBBzRD9AHhAQwgAQAAALUsAQc0I0sA4QEmCAEAAAC2LAEVNENJAOEBDCABAAAAtywBBzTjLgDhAQwgAQAAALgsAQc0IxwA4QEMIAEAAAC5LAEHNGNJAOEBDCABAAAAuiwBBzQjLQDhAQwgAQAAALssAQc0o30A4QEaQAEAAAC8LAEHNAOGAOEBGkABAAAAvCwBBTSjigDhARYEAQAAAL4sAQc0wxoA4QEcDAEAAAC/LAEHNGMbAOEBDCABAAAAwCwBBzTjFQDhARpAAQAAALwsAQU0YxsA4QEWBAEAAADCLAEHNYOnAOcBDCABAAAAxCwRBTSDpwDhAQwgAQAAAMQsAQc2Y/QB3gEOGAEAAADHLCEFNUOgAPsBliwBQOEBxywRBDRDoADhAZhIAQDAAccsARQ2Q3YBNAIOGAEAAABYFSINNWN2ATgCDhgBAAAA4AsSDTRjdgE8Ag4YAQAAAGgCAg02YwMAfAIOGAEAAABIFSINNYMDAPACDhgBAAAA0AsSDTSDAwCEAg4YAQAAAFgCAg024wMAfAIOGAEAAAAgFiINNSMEAPACDhgBAAAAqAwSDTQjBACEAg4YAQAAADADAg02g3YBNAIOGAEAAABQFiINNaN2ATgCDhgBAAAA2AwSDTSjdgE8Ag4YAQAAAGADAg00I6EA4QEeAAEAAADULAEGNINDAOEBDCABAAAA1SwBBzTjFQDhARpAAQAAANQsAQU2g/QB3gEOGAEAAADZLCEFNaP0AecBDhgBAAAA2SwRBTSj9AHhAQ4YAQAAANksAQU2I3cB3gEOGAEAAABQFSINNUN3AecBDhgBAAAA2AsSDTRDdwHhAQ4YAQAAAGACAg02w/QB3gEOGAEAAAAoFiINNYMyAOcBDhgBAAAAsAwSDTSDMgDhAQ4YAQAAADgDAg024/QB3gEOGAEAAADiLCEFNYOJAOcBDhgBAAAA4iwRBTSDiQDhAQ4YAQAAAOIsAQU2o3cBQAIOGAEAAADgGSINNcN3AUQCDhgBAAAAaBASDTTDdwFIAg4YAQAAAPAGAg02A2IBqAIOGAEAAADYGSINNSNiAfQCDhgBAAAAYBASDTQjYgGwAg4YAQAAAOgGAg02A2ABqAIOGAEAAACIGiINNSNgAfQCDhgBAAAAEBESDTQjYAGwAg4YAQAAAJgHAg0243cBQAIOGAEAAACgGiINNQN4AUQCDhgBAAAAKBESDTQDeAFIAg4YAQAAALAHAg00AzgA4QEMIAEAAADvLAEHNKOVAOEBDCABAAAA8CwBBzRjIADhAQwgAQAAAPEsAQc0w2IA4QEMIAEAAADyLAEHNIPvAOEBHiABAAAA8ywBBjSDZADhARYEAQAAAPQsAQc04xUA4QEeAAEAAADzLAECNEP3AOEBGkABAAAA8ywBBTQD9QHZAQwgAQAAAPcsAQc0I/UB2QEMIAEAAAD4LAEHNEP1AdkBDCABAAAA+SwBBzZj9QEyAg4YAQAAAPwsIQU1g/UBFwIOGAFAAQD8LBEFNAMpANkBDhgBAAAA/CwBFTTjIQDhAQwgAQAAAP0sAQc04x4A4QEMIAEAAAD+LAEHNAPGAOEBDCABAAAA/ywBBzQDKgDhAQwgAQAAAP8sAQU0AyoA4QEMIAEAAAD+LAEFNIMyAOEBDEQBAAAA/iwBRzQDxgDhAQwgAQAAAP8sAUc0AyoA4QEMIAEAAAAALQFFNAMhAOEBDCABAAAAAS0BRTSDHADhASIEAQAAAAYtAQY0QyAA4QEMIAEAAAAHLQEHNMMaAOEBHAwBAAAACC0BBzQDawDhARYEAQAAAAktAQc0I04B4QEMIAEAAAAKLQEHNEOHAOEBDCABAAAACy0BBzRDuQDhAQwgAQAAAAstAQU0YzsA4QEMIAEAAAANLQEHNMNEAOEBDCABAAAADi0BBzRjtgDhAQwgAQAAAA8tAQc0Y9QA4QEMIAEAAAAQLQEHNaNeAecBFCwBQAEEEi0RBTSjXgHhARQsAQAABBItARU040kA4QEULAEAAAATLQEFNOMhAOEBDCABAAAAFC0BBzRjIADhASIAAQAAABUtAQY0IxoA4QEWBAEAAAAWLQEHNIMcAOEBFgQBAAAAFy0BBzTDNgDhAQwgAQAAABgtAQc0I1MA4QEULAEAYAMZLQEVNCMaAOEBFgQBAAAAGi0BBzTDGgDhARwMAQAAABstAQc04ywA4QEeIAEAAAAcLQEGNEMxAOEBGkABAAAAHC0BBTQDSQDhAQwgAQAAABwtAQU048kA4QEULAEAAAAfLQEFNIMWAOEBFCwBAAAAHy0BFTWDNQD7ARwMAUABACItEQU0gzUA4QEqDAEAAAAiLQEWNMMXAOEBFgQBAAAAIy0BBzSDOADhASIAAQAAACQtAQY0Ix4A4QEcDAEAAAAlLQEXNCNOAOEBHAwBAAAAJi0BBzSDuQDhAQwgAQAAACctAQc0IxsA4QEMIAEAAAAoLQEHNCMaAOEBFgQBAAAAKS0BBzSjbAHhAQwgAQAAACotAQc0YzcA4QEMIAEAAAArLQEHNCM7AOEBDCABAAAALC0BBzRDHQDhAQwgAQAAAC0tAQc0gxwA4QEWBAEAAAAuLQEHNMMaAOEBHAwBAAAALy0BBzSjJwDhARpAAQAAADAtAQc0IysA4QEMIAEAAAAxLQEHNEMrAOEBGkABAAAAMC0BBTRjIADhAQwgAQAAADMtAQc0gzAA4QEaQAEAAAA0LQEHNKNGAOEBDCABAAAANS0BBzTDMADhARpAAQAAADQtAQU0Q0kA4QEMIAEAAAA3LQEHNKMxAOEBDCABAAAAOC0BBzRjJADhAQwgAQAAADktAQc0Q+gA4QEMIAEAAAA6LQEHNCMaAOEBFgQBAAAAOy0BBzSDHADhARYEAQAAADwtAQc0wxoA4QEcDAEAAAA9LQEHNEMdAOEBDCABAAAAPi0BBzQjIADhAQwgAQAAAE4tAQU0AxkA4QEMIAEAAABALQEHNKMnAOEBGkABAAAASS0BRzSDJwDhARpAAQAAAEotAUU0IysA4QEMIAEAAABDLQEHNEMrAOEBGkABAAAATC0BRTTjFQDhARpAAQAAAE0tAUU0YyAA4QEMIAEAAABGLQEHNKM9AOEBDCABAAAARi0BBTQDGQDhAQwgAQAAAEgtAQc0gzAA4QEaQAEAAABJLQEHNKMwAOEBGkABAAAASS0BBTSjRgDhAQwgAQAAAEstAQc0wzAA4QEaQAEAAABJLQEFNOMVAOEBGkABAAAASS0BBTSjKQDhAQwgAQAAAE4tAQc0gxwA4QEWBAEAAABPLQEHNOMhAOEBDCABAAAAUC0BBzRjIADhAQwgAQAAAFEtAQc0gyAA4QEMIAEAAABSLQEHNOMhAOEBDCABAAAAUy0BBzQjGgDhASIEAQAAAFQtAQY0gxwA4QEWBAEAAABVLQEHNMMaAOEBHAwBAAAAVi0BBzQjIADhAQwgAQAAAFstAQU0YyAA4QEMIAEAAABYLQEHNKM9AOEBDCABAAAAWC0BBTSjcQDhAQwgAQAAAFotAQc0Iz0A4QEMIAEAAABbLQEHNoNfAd4BHAwBAAAAXi0hBTVjGADnAYQsAUABAF4tEQQ0YxgA4QGELAEAAABeLQEWNkNdATQCHAwBAAAAKBUiDTVjXQGIAhwMAQAAALALEg00Y10BPAIcDAEAAAA4AgINNmMDAHwCHAwBAAAAGBUiDTWDAwCAAhwMAQAAAKALEg00gwMAhAIcDAEAAAAoAgINNuMDAHwCDhgBAAAAQBYiDTUjBACAAg4YAQAAAMgMEg00IwQAhAIOGAEAAABQAwINNoNdATQCDhgBAAAAWBYiDTWjXQGIAg4YAQAAAOAMEg00o10BPAIOGAEAAABoAwINNIMlAOEBHAwBAAAAay0BBzTjzADhARwMAQAAAGwtAQc04x4A4QEcDAEAAABtLQEXNuOGAN4BDhgBAAAASBYiDTUjTADnAQ4YAQAAANAMEg00I0wA4QEOGAEAAABYAwINNKNfAeEBHAwBAAAAcS0BFzaj9QHeARwMAQAAAHQtIQU1Yx8A5wEcDAEAAAB0LREFNGMfAOEBHAwBAAAAdC0BBTRjQAHhARwMAQAAAHUtAQc1g0QA5wEcDAFAAQB3LREFNINEAOEBHAwBAAAAdy0BFzQDdQDhARwMAQAAAHgtAQc0ozsA4QEcDAEAAAB5LQEXNOMeAOEBHAwBAAAAei0BBzbD9QHeARwMAQAAACAVIg0142kA5wEcDAEAAACoCxINNONpAOEBHAwBAAAAMAICDTRDQQDhAQwgAQAAAH4tAQc0YxsA4QEMIAEAAAB/LQEHNMNfAeEBHAwBAAAAgC0BBzQjSADhARwMAQAAAIEtAQc24xIB3gEOGAEAAACELSEFNQMhAOcBDhgBAAAAhC0RBTQDIQDhAQ4YAQAAAIQtAQU0g0gB4QEMIAEAAACFLQEHNONfAeEBHAwBAAAAhi0BBzSDRADhARwMAQAAAIctAQc044sA4QEcDAEAAACILQEHNMOAAOEBHAwBAAAAiS0BBzbDYQFAAhwMAQAAAMAZIg0142EBmAIcDAEAAABIEBINNONhAUgCHAwBAAAA0AYCDTYDYgGoAhwMAQAAALgZIg01I2IBrAIcDAEAAABAEBINNCNiAbACHAwBAAAAyAYCDTYDYAGoAg4YAQAAAJgaIg01I2ABrAIOGAEAAAAgERINNCNgAbACDhgBAAAAqAcCDTZDYAFAAg4YAQAAAKgaIg01Y2ABmAIOGAEAAAAwERINNGNgAUgCDhgBAAAAuAcCDTSDhgDhAQwgAQAAAJYtAQc0Y3QA4QEMIAEAAACXLQEHNMMiAOEBIgQBAAAAmC0BBjSDGQDhAQwgAQAAAJktAQc0wxoA4QEcDAEAAACaLQEHNKOvAOEBDCABAAAAmy0BBzQDLQDhARYEAQAAAJwtAQc0AxkA4QEMIAEAAACdLQEHNGMuAOEBFgQBAAAAni0BBzRDLQDhAQwgAQAAAJ8tAQc0YxoA4QEMIAEAAACgLQEHNEM4AOEBDCABAAAAoS0BBzQDRgDhAQwgAQAAAKItAQc0AzgA4QEMIAEAAACjLQEHNAMZAOEBDCABAAAApC0BBzQjRQDhAQwgAQAAAKUtAQc0Ay0A4QEWBAEAAACmLQEHNIMcAOEBFgQBAAAApy0BBzTDGgDhARwMAQAAAKgtAQc0Qy0A4QEMIAEAAACpLQEHNCM0AOEBFgQBAAAAqi0BBzSDHADhARYEAQAAAKstAQc0QyAA4QEMIAEAAACsLQEHNMNIAOEBDCABAAAArS0BBzRjQADhAQwgAQAAAK4tAQc0gyAA4QEMIAEAAACvLQEHNOMeAOEBDCABAAAAsC0BBzQjNADhARYEAQAAALEtAQc0AzgA4QEMIAEAAACyLQEHNOMeAOEBDCABAAAAsy0BBzQjNADhARYEAQAAALQtAQc0AxkA4QEMIAEAAAC1LQEHNEM4AOEBFgQBAAAAti0BBzTjHgDhAQwgAQAAALctAQc0IzQA4QEWBAEAAAC4LQEHNGNAAOEBDCABAAAAuS0BBzQDOADhAQwgAQAAALotAQc0gz0A4QEWBAEAAAC7LQEHNEM4AOEBDCABAAAAvC0BBzQjGgDhASIAAQAAAL0tAQY0YxoA4QEMIAEAAAC+LQEHNGMaAOEBDCABAAAAvy0BBzTjRwDhAQwgAQAAAMAtAQc0Q5EA4QEWBAEAAADBLQEHNOMVAOEBFgQBAAAAwi0BBzRjGADhAQwgAQAAAMMtAQc0g6EA4QEeAAEAAADELQEGNCMaAOEBFgQBAAAAxS0BBzTDGgDhARwMAQAAAMYtAQc0Qy0A4QEMIAEAAADHLQEHNCM9AOEBDCABAAAAyC0BBzTjIQDhAQwgAQAAAMktAQc0Az0A4QEMIAEAAADKLQEHNEMrAOEBDCABAAAAjC8BBTQD/QDhAQwgAQAAAM0tAQU0Ay8A4QEMIAEAAADNLQEHNuP1Ad4BDhgBAAAA0C0hBTWDdgDnAQ4YAUABANAtEQU0g3YA4QEOGAEAAADQLQEVNuMDAHwCDhgBAAAAMBYiDTUjBACAAg4YAQAAALgMEg00IwQAhAIOGAEAAABAAwINNoNfAd4BDhgBAAAAOBYiDTVjGADnAQ4YAQAAAMAMEg00YxgA4QEOGAEAAABIAwINNEMrAOEBDCABAAAA2y0BBTYDYAGoAg4YAQAAAJAaIg01I2ABrAIOGAEAAAAYERINNCNgAbACDhgBAAAAoAcCDTQjHADhAQwgAQAAANstAQc0Qx0A4QEiBAEAAADcLQEGNGNNAOEBDCABAAAA3S0BBzRDNADhAQwgAQAAAN4tAQc0I4UA4QEMIAEAAADfLQEHNMNiAOEBDCABAAAA4C0BBzYD9gHeARQsAQDAAuEtIQU1o2EB+wEULAFAwQLjLREFNKNhAeEBFCwBAMAC4y0BFTYj9gE0AhQsAQAAAHAVIg01Q/YBOAIULAEAAAD4CxINNEP2ATwCFCwBAAAAgAICDTZjAwB8AhQsAQAAAGAVIg01gwMA8AIULAEAAADoCxINNIMDAIQCFCwBAAAAcAICDTaDBAAsBBQsAQAAADQYIw01owQAMAQULAEAAAC8DhMNNKMEADQEFCwBAAAARAUDDTbjAwB8AhQsAQAAAJAWIg01IwQA8AIULAEAAAAYDRINNCMEAIQCFCwBAAAAoAMCDTaDBAB8AhQsAQAAACgXIg01owQA8AIULAEAAACwDRINNKMEAIQCFCwBAAAAOAQCDTZj9gHeARQsAQAAAGgVIg01Y4gA5wEULAEAAADwCxINNGOIAOEBFCwBAAAAeAICDTaD9gHeARQsAQAAAJgWIg01w9sA5wEULAEAAAAgDRINNMPbAOEBFCwBAAAAqAMCDTbjmwHeARQsAQAAADAXIg01A5wB5wEULAEAAAC4DRINNAOcAeEBFCwBAAAAQAQCDTaj9gFAAhQsAQAAAPAZIg01w/YBRAIULAEAAAB4EBINNMP2AUgCFCwBAAAAAAcCDTYDYgGoAhQsAQAAAOgZIg01I2IB9AIULAEAAABwEBINNCNiAbACFCwBAAAA+AYCDTajBgE4BBQsAQAAAPwbIw01wwYBPAQULAEAAACEEhMNNMMGAUAEFCwBAAAADAkDDTYDYAGoAhQsAQAAANAaIg01I2AB9AIULAEAAABYERINNCNgAbACFCwBAAAA4AcCDTajBgGoAhQsAQAAAEAbIg01wwYB9AIULAEAAADIERINNMMGAbACFCwBAAAAUAgCDTQjbgDhAQwgAQAAAAsuAQc0Q0EA4QEMIAEAAAAMLgEHNGMkAOEBDCABAAAADS4BBzTDHwDhAQwgAQAAAA4uAQc0YyQA4QEMIAEAAAAPLgEHNIMeAOEBDCABAAAAEC4BBzRDVwDhATAEAQAAABEuAQY0Q1gA4QEaQAEAAAASLgEHNKMYAOEBFgQBAAAAEy4BBzRjKgDhAQwgAQAAABQuAQc04xUA4QEuAAEAAAASLgECNMMcAOEBGkABAAAAEi4BBTSDTADhARYEAQAAABEuAQU0o6oA4QEMIAEAAAAYLgEHNCNAAOEBDCABAAAAGS4BBzRDJQDhARYEAQAAABouAQc0I8IA4QEMIAEAAAAbLgEFNIMWAOEBDCABAAAAGy4BBTQDvgDhARwMAQAAAB0uAQc0YxsA4QEMIAEAAAAeLgEHNEORAOEBFgQBAAAAHy4BBzQjQADhARYEAQAAACAuAQc0o7QA4QEMIAEAAAAhLgEHNOM2AOEBGkABAAAAIi4BBzQDRgDhAQwgAQAAACMuAQc0gxYA4QEMIAEAAAAhLgEFNOMVAOEBLgABAAAAIi4BAjSjIwDhARYEAQAAACYuAQc0Y2kA4QEcDAEAAAAnLgEHNGMbAOEBDCABAAAAKC4BBzQDmwDhAQwgAQAAACkuAQc0IxgA4QEMIAEAAAAqLgEHNMPKAOEBDCABAAAAKS4BBTRjegDhAQwgAQAAACwuAQc0wxkA4QEMIAEAAAAtLgEHNMOmAOEBDCABAAAALi4BBzSjigDhAQwgAQAAAC8uAQc0g9AA4QEMIAEAAAAwLgEHNKNSAOEBDCABAAAAMS4BBzTjIwDhAQwgAQAAADIuAQc0A0UA4QFKBAEAAAAzLgEGNOMVAOEBDCABAAAANC4BBzQDxQDhAQwgAQAAADUuAQc0w3sB4QEMIAEAAAA2LgEHNAPFAOEBDCABAAAANy4BBzTDewHhAQwgAQAAADguAQc0I6cA4QEMIAEAAAA0LgEHNAPFAOEBDCABAAAAOi4BBzTDewHhAQwgAQAAADsuAQc0I9IA4QEMIAEAAAA8LgEHNOO3AOEBHkABAAAAPS4BBjTDGQDhARYEAQAAAD4uAQc0g0wA4QEMIAEAAAA/LgEHNAMqAOEBDCABAAAAPy4BBTTjFQDhAS5AAQAAAD0uAQI0g6cA4QEaQAEAAAA9LgEFNINcAOEBHAwBAAAAQy4BBzSjGADhASBAAQAAADMuAQI0YyoA4QEiBAEAAAAzLgECNGMbAOEBDCABAAAARi4BBzTDSgDhARYEAQAAADMuAQU04xUA4QEeQAEAAAAzLgECNIMqAOEBGkABAAAAMy4BBTTjNADhAQwgAQAAAEouAQc0AyIA4QEMIAEAAABLLgEHNIMXAOEBDCABAAAATC4BBzRjJADhAQwgAQAAAE0uAQc0YyQA4QEMIAEAAABOLgEHNMMeAOEBDCABAAAATy4BBzRjJADhAQwgAQAAAFAuAQc0IzAB4QEMIAEAAABRLgEHNGM2AOEBDCABAAAAUi4BBzQD9ADhAQwgAQAAAFMuAQc0o3kA4QEwBIEAAABULgEWNANuAOEBLAABAAAAVS4BBjTDKADhARwMAQAAAFYuAQc0AzIA4QEMIAEAAABULgEFNIMzAOEBHiABAAAAWC4BBjTjHgDhAQwgAQAAAFkuAQc0w1YA4QEWBAEAAABfLgEFNMNKAOEBFgQBAAAAXy4BBTTjVgDhARwMAQAAAFwuAQc0YxsA4QEMIAEAAABdLgEHNOMVAOEBGkABAAAAWC4BBTRDHADhARYEAQAAAF8uAQc0Y6QA4QECJEECAABgLgEHNOMoAOEBIgDBAAAAYS4BBjQjIADhAQwgQQMAAGQuAQc0I48A4QEiAOEAAABjLgEGNIN7AOEBAiRhAgAAZC4BBzTDVwDhAQwgAQAAAGUuAQc24/YB3gEOGAEAAABoLiEFNYOAAPsBDhgBQKEBaC4RBTSDgADhAQ4YAQSgAWguARU2A/cBNAIOGAEAAABgFiINNSP3ATgCDhgBAAAA6AwSDTQj9wE8Ag4YAQAAAHADAg02Q/cB3gEOGAEAAABuLiEFNUNsAOcBDhgBAAAAbi4RBTRDbADhAQ4YAQAAAG4uAQU0I6wA4QEMIAEAAABvLgEHNKOgAOEBDCABAAAAcC4BBzQjVwDhARYEAQAAAHEuAQc2Y/cBQAIOGAEAAACwGiINNYP3AUQCDhgBAAAAOBESDTSD9wFIAg4YAQAAAMAHAg00g0MA4QEcDAEAAAB1LgEHNMNeANkBDCABAAAAdi4BBzSj9wHhAQwgAQAAAMQsAUU0A4YB2QEMIAEAAAB4LgEHNCNuAOEBDCABAAAAeS4BBzTjPgDhAQwgAQAAAHouAQc0Y+QB4QEMIAEAAAB8LgEFNGPlAOEBDCABAAAAfC4BBTQjUADhAQwgAQAAAH0uAQc0IxwA4QEMIAEAAAB+LgEHNGMoAOEBDCABAAAAgy4BBTQDZgDhARYEAQAAAIAuAQc0IxwA4QEMIAEAAACBLgEHNANBAOEBDCABAAAAgi4BBzSDegDhAQwgAQAAAIMuAQc0YyQA4QEMIAEAAACELgEHNEMdAOEBFgQBAAAAhS4BBzSDFwDhARpAAQAAAIYuAQc04xkA4QEWBAEAAACHLgEHNGM3AOEBDCABAAAAiC4BBzSjPADhAQwgAQAAAIkuAQc0wzkA4QEMIAEAAACKLgEHNGN6AOEBDCABAAAAiy4BBzTDVgDhARYEAQAAAJAuAQU0w0oA4QEWBAEAAACQLgEFNGMbAOEBDCABAAAAji4BBzRjGwDhARYEAQAAAI8uAQc0o+UA4QEWBAEAAACQLgEHNGNnAOEBFgQBAAAAkS4BBzRjHwDhASIEAQAAAJIuAQY0I0wA4QEMIAEAAACTLgEHNOMVAOEBFgQBAAAAlC4BBzRjaQDhARwMAQAAAJUuAQc0YxsA4QEMIAEAAACWLgEHNIMkAOEBDCABAAAAly4BBzRjNwDhAQwgAQAAAJguAQc2w/cB3gEOGAEAAACbLiEFNcM0AOcBDhgBQAEAmy4RBTTDNADhAQ4YAQAAAJsuARU24wMAfAIOGAEAAABoFiINNSMEAIACDhgBAAAA8AwSDTQjBACEAg4YAQAAAHgDAg02g18B3gEOGAEAAABwFiINNWMYAOcBDhgBAAAA+AwSDTRjGADhAQ4YAQAAAIADAg02A2ABqAIOGAEAAAC4GiINNSNgAawCDhgBAAAAQBESDTQjYAGwAg4YAQAAAMgHAg00g90A4QEMIAEAAAClLgEHNWNnAOcBQEgBQAEApy4RBTRjZwDhAZRIAQAAAKcuARY0A0sA4QEeQAEAAAA9LgECNKOKAOEBFgQBAAAAqS4BBzTDGgDhARwMAQAAAKouAQc0YxsA4QEMIAEAAACrLgEHNGMbAOEBFgQBAAAArC4BBzSjKgDhARwMAQAAAK0uAQc0YxsA4QEMIAEAAACuLgEHNMNfAOEBDCABAAAAqC4BBTQDbgDhAQIkoQIAALAuAQc0YyUA4QEMIKECAACwLgEFNGOmAOEBIgAhAQAAsi4BBjRDHQDhARYEAQAAALMuAQc0o8oA4QEMIAEAAAC0LgEHNMMCAOEBDCABAAAAtS4BBzSjygDhAQwgAQAAALYuAQc0QxkA4QEeQAEAAAC3LgEGNGMZAOEBGkABAAAAty4BBTSDQwDhAQwgAQAAALkuAQc0wyMA4QEaQAEAAAC3LgEFNOMVAOEBHiABAAAAty4BAjQjQADhAR4AAQAAALwuAQY0I0wA4QEWBAEAAAC9LgEHNEMlAOEBFgQBAAAAvi4BBzQjJgDhAQwgAQAAAL8uAQc0Y8MA4QEMIAEAAADALgEHNKMjAOEBDCABAAAAwS4BBzTDVgDhARYEAQAAAMguAQU0w0oA4QEWBAEAAADILgEFNOMVAOEBGkABAAAAvC4BBTQjVwDhARYEAQAAAMUuAQc0g0UA4QEMIAEAAAC8LgEHNEM5AOEBDCABAAAAxy4BBzSDZgDhARYEAQAAAMguAQc0A6AA4QEMIAEAAADJLgEHNINYAOEBGkABAAAAyi4BBzSjGADhASBAAQAAAMouAQI04xUA4QEgQAEAAADKLgECNGMxAOEBHAwBAAAAzS4BBzTDHADhARpAAQAAAMouAQU0g4kA4QEMIAEAAADJLgEFNINSAOEBAiQBAgAA0C4BFzSDOQDhASwAAQAAANEuAQY0Ix4A4QEMIAEAAADSLgEHNGPAAOEBFgQBAAAA0y4BBzSDRADhASIAAQAAANQuAQY0QycA4QEMIAEAAADVLgEHNEMUAOEBDCABAAAA1i4BBzRjJADhAQwgAQAAANcuAQc0Q00A4QEaQAEAAADYLgEHNINDAOEBDCABAAAA2S4BBzTDIwDhARpAAQAAANguAQU04xUA4QEeAAEAAADYLgECNIM5AOEBDCABAAAA3C4BBzSDswDhAQwgAQAAANwuAQU0Q1YA4QEaQAEAAAAjLwEFNMMxAOEBHAwBAAAA3y4BBzRDRQDhAQwgAQAAAOAuAQc0w1YA4QEWBAEAAADpLgEFNMNKAOEBFgQBAAAA6S4BBTTjVgDhARwMAQAAAOMuAQc0YxsA4QEMIAEAAADkLgEHNGMbAOEBFgQBAAAA5S4BBzSjKgDhARwMAQAAAOYuAQc0YxsA4QEMIAEAAADnLgEHNKOFAOEBDCABAAAA6C4BBzQjCQHhARYEAQAAAOkuAQc0Y3oA4QEeIAEAAADqLgEGNANAAOEBIEABAAAA6i4BAjRDKADhAQwgAQAAAOwuAQc0o4oA4QEWBAEAAADtLgEHNOMVAOEBIAABAAAA6i4BAjTjgQDhARpAAQAAAOouAQU0Y1cA4QEMIAEAAADwLgEHNANyAOEBDCABAAAA8S4BBzSDIQDhARpAAQAAAPIuAQc0YykA4QEaQAEAAADyLgEFNIMWAOEBGkABAAAA8i4BBTTjFQDhASBAAQAAAPIuAQI0o0wA4QEMIAEAAAD2LgEHNOMZAOEBFgQBAAAA9y4BBzTDVgDhARYEAQAAAPwuAQU0w0oA4QEWBAEAAAD8LgEFNIOJAOEBDCABAAAA9i4BBTSDJADhAQwgAQAAAPsuAQc0I7wA4QEWBAEAAAD8LgEHNMPlAOEBHgABAAAA/S4BBjSDHQDhARpAAQAAAP0uAQU04xUA4QEuAAEAAAD9LgECNGPJAOEBGkABAAAA/S4BBTQDtwDhAQwgAQAAAAEvAQc0Q3sA4QEMIAEAAAABLwEHNIMsAOEBDCABAAAAAy8BBzQDQQDhAQwgAQAAAAQvAQc0I7sA4QEMIAEAAAAVLwEFNKOOAOEBDCABAAAABi8BBzQDLgDhAQwgAQAAAAcvAQc0gywA4QEMIAEAAAAILwEHNCMcAOEBDCABAAAACS8BBzTjIQDhAQwgAQAAAAovAQc0IxkA4QEMIAEAAAALLwEHNCMcAOEBDCABAAAADC8BBzQjGgDhAQwgAQAAAA0vAQc0gywA4QEMIAEAAAAOLwEHNEMaAOEBDCABAAAADy8BBzTjNQDhAQwgAQAAABAvAQc0wzQA4QEaQAEAAAARLwEHNIMnAOEBFgQBAAAAEi8BBzRDKwDhARpAAQAAABEvAQU0IxwA4QEMIAEAAAAULwEHNCNWAOEBDCABAAAAFS8BBzQjGADhAR4gAQAAABYvAQY0I1AA4QEeAAEAAAAXLwEGNKMmAOEBFgQBAAAAGC8BBzTjFQDhARpAAQAAABcvAQU0I6wA4QEMIAEAAAAaLwEHNCOsAOEBHgABAAAAGy8BBjSDOQDhAQwgAQAAABwvAQc0QygA4QEMIAEAAAAdLwEHNOMVAOEBHgABAAAAGy8BAjRjZwDhASgIAQAAACsvAVY0gyUA4QEkCAEAAAAgLwEWNAPkAOEBDCABAAAAIS8BBzSjVwDhAQwgAQAAACIvAQc0w4sA4QEeQAEAAAAjLwEGNKNXAOEBIgABAAAAJC8BBjSjFwDhASIAAQAAACUvAQY043gA4QEMIAEAAAAmLwEHNOMVAOEBGkABAAAAIy8BBTSjoADhASBAAQAAACMvAQI0Q2MA4QEaQAEAAAAjLwEFNOMeAOEBDCABAAAAKi8BBzTj9wHhASYIAQAAACsvARU0I1oA4QEeAAEAAAAsLwEGNEMxAOEBGkABAAAALC8BBTTjFQDhARpAAQAAACwvAQU0A1YA4QEMIAEAAAAvLwEHNKNCAOEBHiABAAAAMC8BBjTjHgDhAQwgAQAAADEvAQc04xUA4QEeQAEAAAAwLwECNKM9AOEBGiABAAAAMC8BBTSjVwDhAQwgAQAAADQvAQc0A/gB2QEYMMEDAAA1LwEFNiP4AQoCGTABAAAAOC8hBTVD+AEPAhkwAQAAADgvEQU0Q/gBEQIZMMEDAAA4LwEFNGNoAeEBHgABAAAAOS8BBjRDJQDhARpAAQAAADkvAQU04xUA4QEgAAEAAAA5LwECNGOCAOEBHgABAAAAOS8BBDQj9QDhAQwgAQAAAD0vAQc0A4EA4QEMIAEAAAA+LwEHNANGAOEBDCABAAAAPy8BBzTj1ADhAQwgAQAAAD0vAQU0ozwA4QEMIAEAAABBLwEHNAO2AOEBHiABAAAAQi8BBjSDHQDhARYEAQAAAEMvAQc0I24A4QEMIAEAAABELwEHNOMVAOEBGkABAAAAQi8BBTRjUQDhAQwgAQAAAEYvAQc0I7EA4QEMIAEAAABHLwEHNAM6AOEBDCABAAAASC8BBzQjyADhAR4gAQAAAEIvAQQ0Q1YA4QEMIAEAAABKLwEHNMMCAOEBDCABAAAASy8BBzSjFwDhAR4AAQAAAEwvAQY0Q9YA4QEeAAEAAABNLwEGNOMVAOEBLgABAAAATS8BAjSD1gDhAR4AAQAAAE0vAQQ0IyYA4QEeIAEAAABQLwEGNKN5AOEBDCABAAAAUS8BBzSjKwDhAQwgAQAAAFIvAQc046AA4QEMIAEAAABTLwEHNCNmAOEBDCABAAAAVC8BBzRjHwDhARpAAQAAAFAvAQU0gx8A4QEMIAEAAABWLwEHNCNAAOEBDCABAAAAVy8BBzTjFQDhASAAAQAAAFAvAQI0YxwA4QEWBAEAAABZLwEHNAMqAOEBGkABAAAAUC8BBTTjeADhAQwgAQAAAFsvAQc0QzkA4QEMIAEAAABcLwEHNANaAOEBDCABAAAAXC8BBTSjbwDhARYEAQAAAF4vAQc0A0YA4QEWBAEAAABfLwEHNAPXAOEBDCABAAAAYC8BBzTDGQDhAQwgAQAAAGEvAQc0I4QA4QEMIAEAAABiLwEHNCMgAOEBGkABAAAAZC8BBTTDNQDhARpAAQAAAGQvAQc0o7UA4QEYMMEDAABlLwEHNaMWAPsBHAwBQAEAZy8RBTSjFgDhATIMAQAAAGcvARY0oyoA4QEcDAEAAABoLwEHNKMXAOEBHgABAAAAaS8BBjTjFQDhARpAAQAAAGkvAQU0I2UA4QEaQAEAAABpLwEFNEN/AOEBHkABAAAAbC8BBjTjGQDhASBAAQAAAGwvAQI04x4A4QEMIAEAAABuLwEHNOMVAOEBLkABAAAAbC8BAjTDJADhARpAAQAAAGwvAQU0oycA4QEWBAEAAABxLwEHNGP4AdkBDCABAAAAxCwBRTRjJADhAQwgAQAAAHMvAQc044AA4QEMIAEAAAB0LwEHNANYAOEBDCABAAAAdS8BBzRjTQHhAQwgAQAAAHsvAQU0YyQA4QEMIAEAAAB3LwEHNGMkAOEBDCABAAAAeC8BBzQDQQHhAQwgAQAAAHkvAQc0wz0A4QEMIAEAAAB6LwEHNON1AOEBDCABAAAAey8BBzTjYADhAQwgAQAAAHwvAQc0o1AA4QEMIAEAAAB9LwEHNMNEAOEBDCABAAAAfi8BBzQjLgDhASIAAQAAAH8vAQY0gy8A4QEWBAEAAACALwEHNANBAOEBDCABAAAAgS8BBzRDGgDhAQwgAQAAAIIvAQc0QzQA4QEMIAEAAACDLwEHNGMkAOEBDCABAAAAhC8BBzSjOwDhAQwgAQAAAIUvAQc0g10A4QEWBAEAAACGLwEHNCMcAOEBDCABAAAAhy8BBzQDRQDhAQwgAQAAAIgvAQc04z4A4QEMIAEAAACJLwEHNENMAOEBDCABAAAAii8BBzRjJADhAQwgAQAAAIsvAQc0YzMA4QEMIAEAAACMLwEHNOOfAeEBDCABAAAAjy8BBTQDagDhAQwgAQAAAI4vAQc049sA4QEMIAEAAACPLwEHNOMeAOEBDCABAAAAkC8BBzSjVADhAQwgAQAAAJEvAQc0o1QA4QEMIAEAAACSLwEHNIP4AdkBDCABAAAAky8BBzdjRgDZAQwgAQAAAJQvAQc3o4gA4QEMIAEAAACVLwEHN6P4AdkBDCABAAAAli8BBzdjSwDhARYEAQAAAJcvAQc34y4A4QEMIAEAAACYLwEHN4M8AOEBDCABAAAAmC8BBTejGgDhARYEAQAAAJovAQc3AzwA4QEMIAEAAACbLwEHNyNqAOEBDCABAAAAnC8BBzeD1wDhAQwgAQAAAJ0vAQc3IxoA2QEMIAEAAACeLwEHN4McAOEBDCABAAAAny8BBzdDJwDhAQwgAQAAAKAvAQc3Q1cA4QEeQAEAAAChLwEGNwOGAOEBGkABAAAAoS8BBTeDTADhAQwgAQAAAKMvAQc3o6oA4QEeIAEAAACkLwEGN+MZAOEBGkABAAAApC8BBTfjFQDhARpAAQAAAKQvAQU3Y5EA4QEMIAEAAACkLwEFN+MVAOEBHkABAAAAoS8BAjcDdgDhAR4AAQAAAKkvAQY3QygA4QEMIAEAAACqLwEHNwNYAOEBGkABAAAAqS8BBTfjFQDhAS4AAQAAAKkvAQI3oyMA4QEWBAEAAACtLwEHNyNlAOEBGkABAAAAoS8BBTejUgDhAQwgAQAAAK8vAQc3oxcA4QEeAAEAAACwLwEGN4NaAeEBDCABAAAAsS8BBzcD/ADhAQwgAQAAALIvAQc3A08A4QEeAAEAAACzLwEGN6NSAOEBDCABAAAAtC8BBzejAAHhAQwgAQAAALUvAQc3w/gB4QEMIAEAAAC2LwEHN4MvAOEBFgQBAAAAty8BBzcjagDhAQwgAQAAALgvAQc3wzIA4QEMIAEAAAC4LwEFN0MoAOEBDCABAAAAui8BBzfDKADhARYEAQAAALsvAQc3g6cA4QEMIAEAAAC8LwEHN8MfAOEBHiABAAAAvS8BBjcDbgDhAQwgAQAAAL4vAQc3QxYA4QEMIAEAAAC/LwEHN+MfAOEBDCABAAAAvS8BBTejVwDhAQwgAQAAAMEvAQc3gzEA4QEaQAEAAADJLwEFN8NWAOEBFgQBAAAAyS8BBTcjIADhARpAAQAAAMkvAQU3w0oA4QEWBAEAAADJLwEFN+NWAOEBHAwBAAAAxi8BBzdjGwDhAQwgAQAAAMcvAQc3I6cA4QEMIAEAAADILwEHN4NuAOEBLgQBAAAAyS8BBjfjFQDhARpAAQAAAMkvAQU342sA4QEMIAEAAADLLwEHN+OWANkBHiABAAAAzC8BBjejFwDhAQwgAQAAAM0vAQc3g0wA4QEMIAEAAADOLwEHN4MxAOEBIEABAAAAzC8BAjfjFQDhARpAAQAAAMwvAQU3wz0A4QEMIAEAAADRLwEHN+M+AOEBDCABAAAA0i8BBzfDVgDhAQwgAQAAANMvAQc3g1YA4QEMIAEAAADULwEHNwPiAOEBDCABAAAA1S8BBzdjHwDhARYEAQAAANYvAQc3AyoA4QEMIAEAAADTLwEFNyMgAOEBHiABAAAAzC8BBDdDowDhAQwgAQAAANkvAQc3Y8MA4QEMIAEAAADaLwEHNwM8AOEBDCABAAAA2y8BBzfDJgDhAQwgAQAAANwvAQc3oyMA4QEWBAEAAADdLwEHNwMqAOEBDCABAAAA3C8BBzcDSwDhASwEAQAAAN8vAQY3g1gA4QEaQAEAAADgLwEHN6MYAOEBGkABAAAA4C8BBTfjFQDhAR5AAQAAAOAvAQI3wxwA4QEaQAEAAADgLwEFN+MeAOEBFgQBAAAA3y8BBTfjGQDhARYEAQAAAOUvAQc3YxsA4QEMIAEAAADmLwEHN+MVAOEBFgQBAAAA5y8BBzdjVgDhARYEAQAAAOgvAQc3wyAA4QEcDAEAAADpLwEHN2MbAOEBDCABAAAA6i8BBzdDZADhAQwgAQAAAOsvAQc3w18A4QEMIAEAAADsLwEHN+PtAeEBDCABAAAA7S8BBzfDzADhAQwgAQAAAO4vAQc341EA4QEMIAEAAADvLwEHN2MbAOEBDCABAAAA8C8BBzcjVwDhAQwgAQAAAPEvAQc341sA4QEMIAEAAADyLwEHN0M4AOEBHiABAAAA8y8BBjcDQADhARYEAQAAAPQvAQc3oyMA4QEMIAEAAAD1LwEHN8MjAOEBDCABAAAA9S8BBTdDKADhAQwgAQAAAPcvAQc3A1gA4QEMIAEAAADzLwEFN+MVAOEBHgABAAAA8y8BAjhjegD7ASYIAUABAPsvEQU3Y3oA4QGaCAEAAAD7LwEGN8MZAOEBFgQBAAAA/C8BBzfjOgDhAQwgAQAAAP0vAQc3A0AA4QEWBAEAAAD+LwEHN0MoAOEBHiABAAAA/y8BBjfjFQDhAR4AAQAAAPsvAQI3A5QA4QEeQAEAAAABMAEGN+MZAOEBIAABAAAAATABAjfjHgDhAQwgAQAAAAMwAQc3Y/8A4QEMIAEAAAAEMAEHN+MVAOEBGkABAAAAATABBTdDRgDhARpAAQAAAAEwAQU3AyMA4QEMIAEAAAAHMAEHOOP4ARcCGDABAAAACDABBTfDXADhAQwgAQAAAAkwAQc34ykA4QEMIAEAAAAKMAEHN2MfAOEBFgQBAAAACzABBzcDbgDhAQwgAQAAAAwwAQc3YyQA4QEMIAEAAAANMAEHN8NCAOEBDCABAAAADjABBzfD3wDhAQwgAQAAAA8wAQc3I4IA4QEMIAEAAAAQMAEHN8N1AOEBHiABAAAAETABBjcDIwDhAQwgAQAAABIwAQc3QzEA4QEgQAEAAAARMAECN4N/AOEBDCABAAAAFDABBzfjFQDhAQwgAQAAABUwAQc3YxsA4QEWBAEAAAAWMAEHN2MbAOEBDCABAAAAFzABBzfDVgDhARYEAQAAABwwAQU3w0oA4QEWBAEAAAAcMAEFN2MkAOEBDCABAAAAGjABBzdjGwDhAQwgAQAAABswAQc3oyQA4QEsBAEAAAAcMAEGN+NOAOEBDCABAAAAHTABBzdDSgDhAQwgAQAAAB4wAQc3A0kA4QEMIAEAAAARMAEHN4MpAOEBDCABAAAAIDABBzfjFQDhARYEAQAAACEwAQc3wxkA4QEMIAEAAAAiMAEHN8OMAOEBDCABAAAAIzABBzfDOQDhARYEAQAAACQwAQc3w08A4QEiBAEAAAAlMAEGN0MgAOEBDCABAAAAJjABBzfDKADhARwMAQAAACcwAQc3YxsA4QEMIAEAAAAoMAEHN+MVAOEBHiABAAAAETABAjfjMwDhAQwgAQAAACowAQc4Y20A5wEYMAEAAAArMBEFN2NtAOEBGDABAAAAKzABBzeDdgDhARYEAQAAAC0wAQc3YxwA4QEWBAEAAAAuMAEHN6MqAOEBHAwBAAAALzABBzdjGwDhAQwgAQAAADAwAQc3Q0sA4QEMIAEAAAAxMAEHN2MgAOEBDCABAAAAMjABBzcD+QHhAQwgAQAAADMwAQc34xcB4QEMIAEAAAA0MAEHN+M1ANkBHiABAAAANTABBjcj+QHhAQwgAQAAADYwAQc3g0IA4QEaQAEAAAA3MAEHN+MgAOEBHgABAAAAODABBjeDLwDhAQwgAQAAADkwAQc3w1wA4QEMIAEAAAA6MAEHNyMmAOEBDCABAAAAOzABBzdDpgDhAQwgAQAAADwwAQc3YyQA4QEMIAEAAAA9MAEHN6MYAOEBFgQBAAAAPjABBzfDegDhAQwgAQAAAD8wAQc3Iy4A4QEMIAEAAABAMAEHN6NIAOEBDCABAAAAQTABBzfjFQDhAR4AAQAAAEIwAQY3Y4sA4QEeAAEAAABDMAEGN6MmAOEBGkABAAAAQjABBTeDdADhAR4AAQAAAEUwAQY3A1gA4QEeAAEAAABFMAEEN+MVAOEBLgABAAAARTABAjfDVgDhARYEAQAAAG8wAQU3w0oA4QEWBAEAAABvMAEFN2MbAOEBDCABAAAASjABBzfjtwDhARpAAQAAAEswAQc3g0wA4QEeQAEAAABMMAEGN2MfAOEBGkABAAAATDABBTeDHwDhAQwgAQAAAE4wAQc34xUA4QEeIAEAAABMMAEANwMqAOEBHgABAAAATDABBDcDdgDhAR4AAQAAAFEwAQY3A1gA4QEeAAEAAABRMAEEN+MVAOEBIAABAAAAUTABAjcDvgDhARYEAQAAAFQwAQc3oxgA4QEgAAEAAAA1MAECN2MqAOEBDCABAAAAVjABBzfDVgDhARYEAQAAAFswAQU3w0oA4QEWBAEAAABbMAEFN+MVAOEBHgABAAAANTABAjfjJADhAQwgAQAAAFowAQc3Y8AA4QEWBAEAAABbMAEHN4MXAOEBDCABAAAAXDABBzeDtwDhARYEAQAAAF0wAQc3I+YA4QEeAAEAAABeMAEGNwNAAOEBFgQBAAAAXzABBzcDQADhARpAAQAAAF4wAQU34xUA4QEaQAEAAABeMAEFN8MaAOEBFgQBAAAAYjABBzfjiwDhAQwgAQAAAGMwAQc342sA4QEMIAEAAABkMAEHNwM6AOEBHgABAAAAZTABBjejFwDhAQwgAQAAAGYwAQc34x4A4QEMIAEAAABnMAEHN+MVAOEBHgABAAAAZTABAjcDNQDhAQwgAQAAAGwwAQU3gxcA4QEaQAEAAABqMAEHNwMZAOEBDCABAAAAazABBzcjNQDhAQwgAQAAAGwwAQU34x4A4QEMIAEAAABtMAEHNyNMAOEBDCABAAAAbjABBzdDwQDhARYEAQAAAG8wAQc3YzwB2QEeIAEAAABwMAEGN2M0AeEBDCABAAAAcTABBzdjVgDhASBAAQAAAHAwAQI3g38A4QEMIAEAAABzMAEHN2PmAOEBDCABAAAAdDABBzfjFQDhARpAAQAAAHAwAQU3I0UA4QEeAAEAAAB2MAEGN0MoAOEBDCABAAAAdzABBzcDWADhARpAAQAAAHYwAQU3o/IA4QEWBAEAAAB5MAEHN4NaAeEBGkABAAAAejABBzfjawDhAQwgAQAAAHAwAQU3w1YA4QEWBAEAAACBMAEFN8NKAOEBFgQBAAAAgTABBTdjGwDhAQwgAQAAAH4wAQc3o94A4QEMIAEAAAB/MAEHN+MeAOEBDCABAAAAgDABBzeDmADhARYEAQAAAIEwAQc3g1oB4QFIQAEAAACCMAEGNwOlAOEBGkABAAAAgjABBTfjFQDhARpAAQAAAIIwAQU3o5QA4QEiAAEAAACFMAEGNwPUAeEBDCABAAAAhjABBzcDJgDhAQwgAQAAAIcwAQc3Q/kB4QEMIAEAAACIMAEHN2M6AOEBHiABAAAAiTABBjdjHwDhASAEAQAAAIkwAQI3wygA4QEcDAEAAACLMAEHN2MbAOEBDCABAAAAjDABBzdjGwDhARYEAQAAAI0wAQc3oyoA4QEcDAEAAACOMAEHN2MbAOEBDCABAAAAjzABBzcDIQDhAR4gAQAAAIkwAQQ3QycA4QEWBAEAAACRMAEHN6MkAOEBHAwBAAAAkjABBzdjGwDhAQwgAQAAAJMwAQc34xUA4QEgAAEAAACJMAECNyOYAOEBDCABAAAAlTABBzdDPgDhAQwgAQAAAJYwAQc3gzYA4QEMIAEAAACXMAEHN2NJAOEBDCABAAAAmDABBzdDLwHhAR4gAQAAAJkwAQY3QzMA4QEMIAEAAACZMAEFN6PZANkBDCABAAAAmzABBzdjLgDhARYEAQAAAJwwAQc3ozwA4QEMIAEAAACdMAEHNwNkAOEBDCABAAAAnjABBzdDHQDhAQwgAQAAAJ8wAQc3I2oA4QEMIAEAAAC4LwFHN+MeAOEBDCABAAAAoTABBzcDKgDhAQwgAQAAAKEwAQU3I4QA4QEMIAEAAACjMAEHNwMpAOEBHgABAAAApDABBjeDQwDhAQwgAQAAAKUwAQc34xUA4QEaQAEAAACkMAEFN4MsAOEBDCABAAAApzABBzfjUgHhAQwgAQAAAKgwAQc3gxcA4QEaQAEAAACpMAEHN+MZAOEBFgQBAAAAqjABBzcDGgDhARpAAQAAAKkwAQU34xUA4QEgAAEAAACpMAECNwMZAOEBDCABAAAArTABBzeDFwDhARpAAQAAAK4wAQc3AxoA4QEaQAEAAACuMAEFNwMZAOEBDCABAAAAsDABBzdDFgDhAQwgAQAAALEwAQc3I6wA4QEeIAEAAACyMAEGNwNAAOEBIEABAAAAsjABAjcDWADhAQwgAQAAALIwAQU34xUA4QEaQAEAAACyMAEFN8MxAOEBDCABAAAAtzABBTfDKgDhAQwgAQAAALcwAQc3gxcA4QEaQAEAAAC4MAEHNwMaAOEBGkABAAAAuDABBTfjFQDhARpAAQAAALgwAQU3AxkA4QEMIAEAAAC7MAEHN2MaAOEBDCABAAAAvDABBzeDMgDhAQwgAQAAAL0wAQc3wzIA4QEMIAEAAACbMAEFN+MeAOEBHgABAAAAvzABBjeDHwDhAQwgAQAAAMAwAQc34xUA4QEgAAEAAAC/MAECNwMqAOEBHgABAAAAvzABBDeDFwDhARpAAQAAAMMwAQc3AxoA4QEaQAEAAADDMAEFNwMZAOEBDCABAAAAxTABBzcjrADhAQwgAQAAAMYwAQc3gyYB4QEaQAEAAADHMAEHN2NWAOEBGkABAAAAxzABBTfjFQDhARpAAQAAAMcwAQU3g6wA4QEMIAEAAADKMAEHNwM0AOEBFgQBAAAAyzABBzdjIgDhARYEAQAAAMwwAQc3A50A4QEMIAEAAADNMAEHN4MdAeEBDCABAAAAzjABBzlj+QHZAQwgAQAAAM8wAQc6g/kB2QEMIAEAAADQMAEHO6P5AdUBDCABAAAA0TABBTvD+QHZAQwgAQAAANIwAQc84/kB2QEMIAEAAADTMAEHPGM3AOEBDCABAAAAjjEBRTzjogHZAQwgAQAAANUwAQc8A/oB2QEMIAEAAADELAFFPSP6AesBnCgBQAEA2DARBD5D+gHVAZwo4QRgANgwARQ+IycA4QEMIAEAAADZMAEHPqMjAOEBDCABAAAA2jABBz7DIwDhAQwgAQAAANowAQU+gz0B4QEMIAEAAADcMAEHPoMxAOEBGkABAAAA4TABBT4jIADhARpAAQAAAOEwAQU+AyYA4QEMIAEAAADfMAEHPqOyAOEBDCABAAAA4DABBz6DZgDhAR4AAQAAAOEwAQY+4xUA4QEaQAEAAADhMAEFPqMjAOEBFgQBAAAA4zABBz5jJgDhAR4gAQAAAOQwAQY+4xkA4QEgQAEAAADkMAECPuMeAOEBDCABAAAA5jABBz7jFQDhAR4AAQAAAOQwAQI+4x4A4QEMIAEAAADoMAEHPqMXAOEBDCABAAAA6TABBz6jpgHhAQwgAQAAAOowAQc+Q3sA4QEMIAEAAADqMAEFPmMgAOEBDCABAAAA7DABBz2jUQDnARgwAQAAAO0wEQU+o1EA4QEYMAEAAADtMAEHPkMdAOEBFgQBAAAA7zABBz5jewDhAR4AAQAAAPAwAQY+4xUA4QEeAAEAAADwMAECPmMgAOEBDCABAAAA8jABBz6DNwDhAQwgAQAAAPMwAQc+g8kA4QEMIAEAAAD0MAEHPsMfAOEBDCABAAAA9TABBz7jQADhAQwgAQAAAPYwAQc+QyYA4QEMIAEAAAD3MAEHPkNJAOEBDCABAAAA+DABBz5DPgDhAQwgAQAAAPkwAQc+wz0A4QEMIAEAAAD6MAEHPmP6AdkBIgABAAAA+zABBj2jtQDnAQwgAUABAP0wEQU+o7UA4QEyIOEDAAD9MAEGPuM/AOEBGkABAAAA/jABBz5DKADhAQwgAQAAAP8wAQc+AyoA4QEMIAEAAAD/MAEFPgNYAOEBGkABAAAA/jABBT7jFQDhARpAAQAAAP4wAQU+o7kA4QEMIAEAAAADMQEHPkMfAeEBDCABAAAABDEBBT6DSwDhAQwgAQAAAAQxAQU+QxQA4QEMIAEAAAAGMQEHPoNaAdkBHiABAAAABzEBBj5jawDhAQwgAQAAAAgxAQc+Q78A4QEMIAEAAAAJMQEHPgOlAOEBFgQBAAAACjEBBz6DOQDhAQwgAQAAAAsxAQc+4xUA4QEaQAEAAAAHMQEFPmMbAOEBFgQBAAAADTEBBz5jUQDhAR4AAQAAAA4xAQY+Q3sA4QEMIAEAAAAHMQEFPoNaAeEBDCABAAAAEDEBBz7jvwDhAQwgAQAAABExAQc+I/0A4QEMIAEAAAASMQEHPmPtAOEBDCABAAAAEzEBBz5jdQDhAQwgAQAAABQxAQc+g/oB4QEMIAEAAAAVMQEHPiPxAdkBGkABAAAAFjEBBz6jAAHhAQwgAQAAABcxAQc+g0MA4QEsDAEAAAAYMQEWPmMbAOEBDCABAAAAGTEBBz6jJgDhASAAAQAAABYxAQI+4xUA4QEaQAEAAAAWMQEFPoN0AOEBHgABAAAAHDEBBj4DWADhARpAAQAAABwxAQU9Q5IB+wEYMAEAAAAeMREFPkOSAeEBGDABAAAAHjEBBz6DdgDhARYEAQAAACAxAQc+I3EA4QEeAAEAAAAWMQECPqNIAOEBHgABAAAAIjEBBj4DQADhARpAAQAAACIxAQU+QygA4QEMIAEAAAAkMQEHPkNRAOEBDCABAAAAJTEBBz4DOADhAQwgAQAAACYxAQc+Y5EA4QEMIAEAAAAlMQEFPmNUAOEBDCABAAAAKDEBBz7jFQDhASAgAQAAACIxAQI+QycA4QEWBAEAAAAqMQEHPmMbAOEBDCABAAAAKzEBBz6j+gHhAQwgAQAAACwxAQc+I5cB4QEMIAEAAAAtMQEHPsO8AeEBDCABAAAALjEBBz5DjADhAQwgAQAAAC8xAQc+Q1gA4QEiBAEAAAAwMQEGPqMjAOEBFgQBAAAAMTEBBz7DHADhAQwgAQAAADAxAQU+w/oB4QEMIAEAAAAzMQEHPsMfAOEBDCABAAAANDEBBz5jJADhAQwgAQAAADUxAQc+Y6AA4QEMIAEAAAA2MQEHPgNFAOEBDCABAAAANzEBBz7DHwDhAQwgAQAAADgxAQc+gzkA4QEaQAEAAADaKgEFPiNuAOEBDCABAAAAOjEBBz7jNQDhAQwgAQAAADsxAQc+wxkA4QEWBAEAAAA8MQEHPoMiAOEBHAwBAAAAPTEBBz4jHgDhAQwgAQAAAD4xAQc+Yx4A4QEWBAEAAAA/MQEHPsMgAOEBHAwBAAAAQDEBBz6DFwDhARpAAQAAAEExAQc+AxoA4QEaQAEAAABBMQEFPuMVAOEBGkABAAAAQTEBBT4DGQDhAQwgAQAAAEQxAQc+IxkA4QEMIAEAAABFMQEHPmOUAOEBHiABAAAARjEBBj6jqADhAQwgAQAAAEcxAQc+Y6AA4QEMIAEAAABIMQEHPkMoAOEBDCABAAAASTEBBz6DFwDhAQwgAQAAAEoxAQc+gx8A4QEMIAEAAABLMQEHPsMqAOEBDCABAAAATDEBBz7jFQDhARpAAQAAAEYxAQU+g38A4QEMIAEAAABOMQEHPsNCAOEBDCABAAAATzEBBz7DzADhAQwgAQAAAFAxAQc+44EA4QEMIAEAAABGMQEFPkO/AeEBDCABAAAAUjEBBz5jNgDhAQwgAQAAAFMxAQc+ozMA2QEMIAEAAABUMQEHPsNJAeEBHgABAAAAVTEBBj7jYgDhAQwgAQAAAFYxAQc+g4oA4QEMIAEAAABXMQEHPqPnAOEBDCABAAAAWDEBBz5DewDhAQwgAQAAAFgxAQU+4xsA4QEMIAEAAABaMQEHPoPwAeEBDCABAAAAWzEBBz7j+gHhAQwgAQAAAFwxAQc+ozQA4QEMIAEAAABdMQEHPuO0AOEBDCABAAAAXjEBBz6jIwDhARYEAQAAAF8xAQc+YxsA4QEMIAEAAABgMQEHPiPIAOEBDCABAAAAWjEBBT4jGADhAQwgAQAAAGIxAQc+I68A4QEMIAEAAABjMQEHPUMnAPsBGDABAAAAZDERBT5DJwDhAUwAAQAAAGQxAQI+A3kA4QEMIAEAAABpMQEFPsM0AOEBFgQBAAAAZzEBBz5jHADhARYEAQAAAGgxAQc+IzYA4QEMIAEAAABpMQEHPqOyAOEBDCABAAAAajEBBz4DRgDhAQwgAQAAAGsxAQc+w+YA4QEMIAEAAABsMQEHPmNAAOEBDCABAAAAbTEBBz6DIADhAQwgAQAAAG4xAQc+w4sA4QEyIOEDAABvMQEGPgMZAOEBDCABAAAAcDEBBz6DFwDhAQwgAQAAAHExAQc+o9kA4QEMIAEAAAByMQEHPQP7AUQEGDABAAAAczERBT4D+wFIBBgwAQAAAHMxAQU+A1wA2QEMIAEAAAB1MQEHPsMXAOEBFgQBAAAAdjEBBz5DIADhAQwgAQAAAHcxAQc+w6kA4QEMIAEAAAB5MQEFPuMvAOEBDCABAAAAeTEBBT4jGADhAR4gAQAAAHoxAQY+oxgA4QEgQAEAAAB6MQECPmMbAOEBFgQBAAAAfDEBBz6jKgDhARwMAQAAAH0xAQc+YyoA4QEMIAEAAAB+MQEHPiM3AOEBDCABAAAAejEBBT5jewDhARYEAQAAAIAxAQc+I6cA4QEMIAEAAACBMQEHPuNSAOEBHiABAAAAgjEBBj4jMwDhARYEAQAAAIMxAQc+oyMA4QEMIAEAAACEMQEHPuN4AOEBDCABAAAAhTEBBz5jGwDhARYEAQAAAIYxAQc+I1cA4QEWBAEAAACHMQEHPkMzAOEBDCABAAAAgjEBBT7jFQDhARpAAQAAAIIxAQU+Yy4A4QEiIAEAAACKMQEGPkMgAOEBDCABAAAAizEBBz7DVgDhARYEAQAAAKIxAQU+w0oA4QEWBAEAAACiMQEFPgNLAOEBMiABAAAAjjEBBj7jFQDhARpAAQAAAHoxAQU+4zoA4QEMIAEAAACQMQEHPsOHAOEBDCABAAAAdTEBRz5jIwDhAQwgAQAAAJIxAQU+gyMA4QEMIAEAAACSMQEFPiM3AOEBDCABAAAAmDEBRT4DIwDhAQwgAQAAAJUxAQc+4x4A4QEMIAEAAACWMQEHPgM4AOEBDCABAAAAlzEBBz7jGADhAQwgAQAAAHUxAQc+Y6oA4QEMIAEAAACZMQEHPiNeAOEBDCABAAAAmjEBBz4DQQDhAQwgAQAAAJsxAQc+QxoA4QEMIAEAAACcMQEHPqMaAOEBFgQBAAAAnTEBBz7jIADhAR4AAQAAAJ4xAQY+Yx8A4QEWBAEAAACfMQEHPmMkAOEBDCABAAAAoDEBBz7DOADhAQwgAQAAAKExAQc+IzsA4QEWBAEAAACiMQEFPgP8ANkBHAwBAAAAozEBFz6jewDhARpAAQAAAC8oAQU+o7IA4QEeIAEAAAClMQEGPkOmAOEBDCABAAAApjEBBz7DKgDhAQwgAQAAAKcxAQc+g0wA4QEMIAEAAACoMQEHPuPlAOEBDCABAAAApTEBBT5jGQDhAQwgAQAAAKoxAQc+w04A4QEMIAEAAACrMQEHPuOnAOEBDCABAAAArDEBBz7DTADhAR4AAQAAAK0xAQY+4xkA4QEaQAEAAACtMQEFPmOgAOEBDCABAAAArzEBBz7DNgDhAQwgAQAAALAxAQc+A1YA4QEMIAEAAACxMQEHPmMZAOEBFgQBAAAAsjEBBz7DVgDhARYEAQAAAL0xAQU+w0oA4QEWBAEAAAC9MQEFPmMbAOEBFgQBAAAAtTEBBz4jVwDhARYEAQAAALYxAQc+I08A4QEMIAEAAAC3MQEHPkNXAOEBDCABAAAAuDEBBz4jJgDhAQwgAQAAALkxAQc+QycA4QEWBAEAAAC6MQEHPmMbAOEBDCABAAAAuzEBBz6DJADhAQwgAQAAALwxAQc+I0EA4QEWBAEAAAC9MQEHPuMVAOEBGkABAAAArTEBBT4jrADhAR4AAQAAAL8xAQY+4xUA4QEaQAEAAAC/MQEFPqOUANkBLgQBAAAAwTEBFj4j+wHhAQwgAQAAAMIxAQc+o0wA4QEMIAEAAADDMQEHPmMbAOEBGkABAAAAxDEBBz5DZADhAR4AAQAAAMUxAQY+QzAB4QEMIAEAAADGMQEHPoN/AOEBDCABAAAAxzEBBz5jHgDhAQwgAQAAAMgxAQc+Y8YB4QEMIAEAAADKMQEFPqMWAOEBDCABAAAAyjEBBz6DuwHhAQwgAQAAAMsxAQc+YyIA4QEMIAEAAADMMQEHPiM8AOEBDCABAAAAzTEBBz6DHADhARYEAQAAAM4xAQc+QyAA4QEMIAEAAADPMQEHPgMZAOEBDCABAAAA0DEBBz6DMADhARpAAQAAANExAQc+wzAA4QEaQAEAAADRMQEFPsMaAOEBHAwBAAAA0zEBBz5DLQDhAQwgAQAAAM0xAQU+I80A4QEMIAEAAADVMQEHPuMZAOEBFgQBAAAA1jEBBz5jGwDhARYEAQAAANcxAQc+YyYA4QEMIAEAAADYMQEHPoNAAeEBDCABAAAA2TEBBz4jMgDhARYEAQAAANoxAQc+I6EA4QEWBAEAAADbMQEHPoMZAOEBDCABAAAA3DEBBz4jHADhAQwgAQAAAN0xAQc+wzwA4QEWBAEAAADeMQEHPoMcAOEBFgQBAAAA3zEBBz7DGgDhARwMAQAAAOAxAQc+gyAA4QEMIAEAAADhMQEHPqPLAeEBDCABAAAA7DEBBT4DOADhAQwgAQAAAOMxAQc+40QA4QEWBAEAAADkMQEHPoMcAOEBFgQBAAAA5TEBBz7DGgDhARwMAQAAAOYxAQc+IyAA4QEMIAEAAADoMQEFPkNJAOEBDCABAAAA6DEBBz4DQQDhAQwgAQAAAOkxAQc+wzsA4QEMIAEAAADqMQEHPgN+AOEBDCABAAAA6zEBBz5jgwDhAQwgAQAAAOwxAQc+Y1YA4QEgQAEAAADBMQECPoN/AOEBDCABAAAA7jEBBz7jFQDhAS5AAQAAAMExAQI+YzEA4QEcDAEAAADwMQEHPiNFAOEBGkABAAAA8TEBBz4DQADhARpAAQAAAPExAQU+A1gA4QEaQAEAAADxMQEFPuMVAOEBGkABAAAA8TEBBT4DeADhAS4gAQAAAMExAQI+Y1EA4QEMIAEAAAD2MQEHPsMfAOEBDCABAAAA9zEBBz6jSADhAQwgAQAAAPgxAQc+4z4A4QEMIAEAAAD5MQEHPoO+AeEBDCABAAAA+jEBBz4jdADhAQwgAQAAAPsxAQc+YxoA2QEMIAEAAAD8MQEHPmM1AOEBDCABAAAA/TEBBz6DhQDhAR4gAQAAAP4xAQY+gx8A4QEMIAEAAAD/MQEHPmMZAOEBGkABAAAA/jEBBT7jFQDhARpAAQAAAP4xAQU+A0sA4QEMIAEAAAACMgEHPoNEAOEBHkABAAAA/CkBAj7DaQDhAQwgAQAAAAQyAQc+o3wA4QEMIAEAAAAFMgEHPoMwAeEBDCABAAAARDIBBT4jWwDhAQwgAQAAAAcyAQc+wxgA4QEeQAEAAAAIMgEGPuMZAOEBFgQBAAAACTIBBz7jHgDhAQwgAQAAAAoyAQc+4xUA4QEaQAEAAAAIMgEFPmMaAOEBDCABAAAADDIBBz4DMADhARpAAQAAAAgyAQU+wzkA4QEgQAEAAAD8KQECPgNEAOEBDCABAAAADzIBBz5DewDhAQwgAQAAAA8yAQU+g4oA4QEMIAEAAAARMgEHPoMvAOEBDCABAAAAEjIBBz4jLgDhAQwgAQAAABMyAQc+gy8A4QEWBAEAAAAUMgEHPuNaAOEBHgABAAAAFTIBBj4DpQDhARpAAQAAABUyAQU+Q3sA4QEMIAEAAAAVMgEFPuMVAOEBGkABAAAAFTIBBT4DcgDhARYEAQAAABkyAQc+QyAA4QEMIAEAAAAaMgEHPsMoAOEBHAwBAAAAGzIBBz5jGwDhAQwgAQAAABwyAQc+4+cB4QEMIAEAAAAdMgEHPiN0AOEBDCABAAAAHjIBBz6D3gHhAQwgAQAAAB8yAQc+gzEA4QEaQAEAAAAiMgEFPiMgAOEBGkABAAAAIjIBBT6jsQDhARpAAQAAACIyAQU+wxgA4QEMIAEAAAAjMgEHPqMaAOEBFgQBAAAAJDIBBz7DLgDhARYEAQAAACUyAQc+QyAA4QEMIAEAAAAmMgEHPuOfAeEBDCABAAAAKjIBBT4DGQDhAQwgAQAAACgyAQc+Q/sB4QEMIAEAAAApMgEHPmP7AeEBDCABAAAAKjIBBz6DJADhAQwgAQAAACsyAQc+Y8gA4QEMIAEAAAAsMgEHPqM4AOEBDCABAAAALTIBBz7jRgDhAQwgAQAAAC4yAQc+AzwA4QEMIAEAAAAvMgEHPiNeAOEBDCABAAAAMDIBBz5DWgDhAQwgAQAAADAyAQU+YxwA4QEWBAEAAAAyMgEHPqMnAOEBDCABAAAAMzIBBz7jaQDhAQwgAQAAADQyAQc+wzcA4QEMIAEAAAA1MgEHPmOZAOEBDCABAAAANjIBBz5DIADhAQwgAQAAADcyAQc+YxwA4QEWBAEAAAA4MgEHPqMqAOEBHAwBAAAAOTIBBz5jGwDhAQwgAQAAADoyAQc+4yAA4QEeQAEAAAA7MgEGPmMfAOEBIAABAAAAOzIBAj6DHwDhAQwgAQAAAD0yAQc+AyEA4QEaQAEAAAA7MgEFPkMnAOEBFgQBAAAAPzIBBz7jFQDhAS4AAQAAADsyAQI+YxwA4QEWBAEAAABBMgEHPqMqAOEBHAwBAAAAQjIBBz7DNADhARYEAQAAAEMyAQc+Ay8A4QEMIAEAAABEMgEHPgN/AOEBDCABAAAARTIBBz7DywDhAQwgAQAAAEYyAQc+QzwA4QEeQAEAAABHMgEGPoMnAOEBGkABAAAARzIBBT4jKwDhAQwgAQAAAEkyAQc+QysA4QEaQAEAAABHMgEFPuMVAOEBGkABAAAARzIBBT7j6ADhAQwgAQAAAEwyAQc+gz4A4QEMIAEAAABNMgEHPoNlAdkBHiABAAAATjIBBj7DHgDhAS4EAQAAAE8yAQY+A0AA4QEgQAEAAABPMgECPuMVAOEBGkABAAAATzIBBT5jGgDhAQwgAQAAAFIyAQc+oycA4QEaQAEAAABTMgEHPiMrAOEBDCABAAAAVDIBBz5DKwDhARpAAQAAAFMyAQU+4yEA4QEMIAEAAABWMgEHPiMaAOEBFgQBAAAAVzIBBz5DHQDhASIAAQAAAFgyAQY+4yEA4QEMIAEAAABZMgEHPkMgAOEBDCABAAAAWjIBBz5jGgDhAQwgAQAAAFsyAQc+gzAA4QEaQAEAAABcMgEHPqNGAOEBDCABAAAAXTIBBz7DMADhARpAAQAAAFwyAQU+A0AA4QEaQAEAAABPMgEFPuMVAOEBGkABAAAATzIBBT7DGgDhARwMAQAAAGEyAQc+o3UA4QEeIAEAAABPMgEEPqOIAOEBDCABAAAAYzIBBz4jLwDhAR5AAQAAAGQyAQY+4xkA4QEaQAEAAABOMgEFPuN5AOEBDCABAAAAZjIBBz4DLQDhARYEAQAAAGcyAQc+4yEA4QEMIAEAAABoMgEHPmMgAOEBDCABAAAAaTIBBz7jHgDhAQwgAQAAAGoyAQc/g/sB3gEOGAEAAABtMiEFPYNDAOcBDhgBAAAAbTIRBT6DQwDhAQ4YAQAAAG0yAQU+4xUA4QEaQAEAAABOMgEFPiMeAOEBDCABAAAAbzIBBz5DHgDhAQwgAQAAAHAyAQc+wxgA4QEWBAEAAABxMgEHPuMZAOEBGkABAAAATjIBBT7jHgDhARpAAQAAAHMyAQc+gx8A4QEMIAEAAAB0MgEHPuMVAOEBIEABAAAAczIBAj4DKgDhARpAAQAAAHMyAQU+A0YA4QEWBAEAAAB3MgEHPuMVAOEBGkABAAAATjIBBT6DTQDhAQwgAQAAAHkyAQc+w2AA4QEMIAEAAAB6MgEHPuOZAOEBHiABAAAAezIBBj7DGQDhARYEAQAAAHwyAQc+oxcA4QEMIAEAAAB9MgEHPqOgAOEBDCABAAAAfjIBBz5jzwDhAQwgAQAAAH4yAQU+YxkA4QEgQAEAAAB7MgECPoNDAOEBDCABAAAAgTIBBz7DIwDhAR4gAQAAAHsyAQQ+w1YA4QEWBAEAAACNMgEFPsNKAOEBFgQBAAAAjTIBBT7jVgDhARwMAQAAAIUyAQc+YxsA4QEMIAEAAACGMgEHPuMVAOEBLkABAAAAezIBAj5jMQDhARwMAQAAAIgyAQc+YyQA4QEMIAEAAACJMgEHPmOkAOEBDCABAAAAijIBBz4jGADhAQwgAQAAAIsyAQc+I0YA4QEMIAEAAACMMgEHPqM3AOEBFgQBAAAAjTIBBz5jZwDhASIEAQAAAI4yAQY+gzUA4QEaQAEAAACPMgEHPqMYAOEBIAABAAAAjzIBAj7jFQDhARpAAQAAAI8yAQU+wxwA4QEaQAEAAACPMgEFPoNDAOEBFgQBAAAAjjIBBT7DSgDhARYEAQAAAI4yAQU+46cA4QEMIAEAAACVMgEHPmNpAOEBHAwBAAAAljIBBz5jGwDhAQwgAQAAAJcyAQc+A+MA4QEMIAEAAACYMgEHPkMwAeEBDCABAAAAmTIBBz6jUgDhARYEAQAAAJoyAQc+o20A4QEeIAEAAACbMgEGPgNVAeEBDCABAAAAnDIBBz5jhQDhAQwgAQAAAJwyAQU+Yx8A4QEaQAEAAACbMgEFPoMfAOEBDCABAAAAnzIBBz7jFQDhARpAAQAAAJsyAQU+4yEA4QEMIAEAAAChMgEHPmMgAOEBDCABAAAAojIBBz7jGQDhARYEAQAAAKMyAQc+AzgA4QEMIAEAAACkMgEHPqM9AOEBDCABAAAAojIBBT5DHADhARYEAQAAAKYyAQc+YyQA4QEMIAEAAACnMgEHPsMYAOEBDCABAAAAqDIBBz4DMADhAQwgAQAAAKgyAQU+g0sA4QEMIAEAAACqMgEHPmOVAOEBHgABAAAAqzIBBj5DiwDhAQwgAQAAAKwyAQc+g2kA4QEeIAEAAACbMgEGPmMYAOEBDCABAAAArjIBBz7jVwDhARpAAQAAAK8yAQc+A0AA4QEWBAEAAACwMgEHPoMlAOEBHkABAAAAsTIBBj7jGQDhARpAAQAAALEyAQU+4x4A4QEMIAEAAACzMgEHPuMVAOEBGkABAAAAsTIBBT7jzADhARpAAQAAALEyAQU+wxwB4QEMIAEAAAC2MgEHPuPKAOEBDCABAAAAtzIBBz6jtwDZAR4gAQAAALgyAQY+4zoA4QEMIAEAAAC5MgEHPgMjAOEBJggBAAAAujIBFT4DMgDhASYIAQAAALsyARU+o0wA4QEMIAEAAAC8MgEHPuOzAOEBHiABAAAAvTIBBj4DQADhARpAAQAAAL0yAQU+4xUA4QEeAAEAAAC9MgECPgNAAOEBGkABAAAAvjIBRT7jFQDhAR4AAQAAAL8yAUI+Q3QA4QEMIAEAAAC9MgEFPuN4AOEBHiABAAAAwzIBBj7jFQDhASAEAQAAAMMyAQI+AyoA4QEMIAEAAADDMgEFPiNAAOEBDCABAAAAxjIBBz5DJQDhARYEAQAAAMcyAQc+w6cA4QEMIAEAAADIMgEHPuMVAOEBGkABAAAAuDIBBT5jJADhAQwgAQAAAMoyAQc+o6AA4QEMIAEAAADLMgEHPoNfAOEBDCABAAAAzDIBBz5jKgDhAQwgAQAAAM0yAQc+A68A4QEMIAEAAADOMgEHPmPPAOEBDCABAAAAyzIBBT5DBwHhAQwgAQAAANAyAQc+Iy0A4QEMIAEAAADRMgEHPsNCAOEBDCABAAAA0jIBBz4jRQDhAQwgAQAAANMyAQc+g5sA4QEMIAEAAADUMgEHPqNOAOEBDCABAAAA1TIBBz5DZADhAQwgAQAAANYyAQc+Q2MA4QEeIAEAAAC4MgEEPqMeAOEBDCABAAAA2TIBRz6jHgDhAQwgAQAAANkyAQc+g10A4QEWBAEAAADaMgEHPmMeAOEBIgABAAAA2zIBBj4DMADhAQwgAQAAANsyAQU+QyAA4QEMIAEAAADdMgEHPqNOAOEBDCABAAAA3jIBBz7jRADhARYEAQAAAN8yAQc+gxwA4QEWBAEAAADgMgEHPmMgAOEBDCABAAAA4TIBBz5DSQDhAQwgAQAAAOIyAQc+Q0wA4QEMIAEAAADjMgEHPoMqAOEBDCABAAAA4zIBBT4jLgDhAQwgAQAAAOUyAQc+IxwA4QEMIAEAAADmMgEHPqP7AdkBHiABAAAA5zIBBj7jFQDhAR5AAQAAAOcyAQI+I3wA4QEMIAEAAADpMgEHPkN3AOEBHiABAAAA5zIBBD6jhQDhAQwgAQAAAOsyAQdAw/sB2QEMIAEAAADsMgEHQYMXAOEBFgQBAAAA7TIBB0HjGQDhARYEAQAAAO4yAQdBAzUA4QEMIAEAAADvMgEHQcNZAOEBDCABAAAA7zIBBUEDNADhARYEAQAAAPEyAQdBgxcA4QEWBAEAAADyMgEHQWMcAOEBDCABAAAA8zIBB0HDMwDhAR5AAQAAAPQyAQZBwxkA4QEWBAEAAAD1MgEHQUM6AOEBGkABAAAA9DIBBUGjQADhAQwgAQAAAPcyAQdBA0YA4QEMIAEAAAD4MgEHQWMoAOEBHiABAAAA9DIBBEFDZwDhAQwgAQAAAPoyAQdBY2MA4QEMIAEAAAD6MgEFQUNrAOEBFgQBAAAA/DIBB0HDegDhAQwgAQAAAP0yAQdBQxoA4QEMIAEAAAD+MgEHQUMaAOEBDCABAAAA/zIBB0EDLgDhAQwgAQAAAAAzAQdBA0EA4QEMIAEAAAABMwEHQQNBAOEBDCABAAAAAjMBB0GDGADhAQwgAQAAAAMzAQdBYzsA4QEMIAEAAAAEMwEHQUMuAOEBDCABAAAABTMBB0HjFQDhAR5AAQAAAPQyAQJBoxcA4QEeIAEAAAAHMwEGQcMZAOEBFgQBAAAACDMBB0HDAgDhAQwgAQAAAAkzAQdBA4YA4QEgQAEAAAAHMwECQYNMAOEBDCABAAAACzMBB0HjFQDhAR4gAQAAAAczAQJBI2IA4QEMIAEAAAANMwEHQWMbAOEBFgQBAAAADjMBB0EjZQDhAR4gAQAAAAczAQRBQyYA4QEMIAEAAAAQMwEHQUMgAOEBDCABAAAAETMBB0HDGQDhARYEAQAAABIzAQdBYxsA4QEMIAEAAAATMwEHQUM4AOEBFgQBAAAAFDMBB0EDGQDhAQwgAQAAABUzAQdBgyEA4QEWBAEAAAAWMwEHQWMaAOEBDCABAAAAFzMBB0EDHQDhAQwgAQAAABAzAQVBAx8A4QEMIAEAAAAZMwEHQQMmAOEBHiABAAAAGjMBBkEDGADhAQwgAQAAABszAQdBQyUA4QEaQAEAAAAaMwEFQUMWAOEBHiABAAAAHTMBBkEDhgDhARYEAQAAAB4zAQdB478A4QEMIAEAAAAfMwEHQSMmAOEBDCABAAAAIDMBB0EDKgDhAQwgAQAAACAzAQVB4x8A4QEeIAEAAAAaMwEEQcNCAOEBDCABAAAAIzMBB0EjRQDhAQwgAQAAACQzAQdC4xUA5wEaIAFAAQAaMxEFQeMVAOEBHiABAAAAGjMBAkEDGQDhAQwgAQAAACczAQdBwxcA4QEWBAEAAAAoMwEHQeMhAOEBDCABAAAAKTMBB0FjIADhASIgAQAAACozAQZBIxoA4QEWBAEAAAArMwEHQUMgAOEBDCABAAAALDMBB0HDGgDhARwMAQAAAC0zAQdB4xgA4QEMIAEAAAAnMwEFQWMaAOEBDCABAAAALzMBBUEDIQDhAQwgAQAAAC8zAQVBoxwA4QEaQAEAAAAxMwEHQUM6AOEBGkABAAAAMTMBBUHDGADhAQwgAQAAADMzAQdBo0AA4QEMIAEAAAA0MwEHQcN7AOEBHiABAAAANTMBBkFjGgDhAQwgAQAAADYzAQdBA4YA4QEaQAEAAAA1MwEFQYNMAOEBDCABAAAAODMBB0EDKgDhAQwgAQAAADgzAQVB4xUA4QEeIAEAAAA1MwEAQeMoAOEBDCABAAAAOzMBB0FDHQDhAQwgAQAAADwzAQdBw4cA4QEMIAEAAAA9MwEHQSMgAOEBDCABAAAAPzMBBUHj/gDhAQwgAQAAAD8zAQdBw30A4QEMIAEAAABIMwEFQeNEAOEBFgQBAAAAQTMBB0GDHADhARYEAQAAAEIzAQdBwxoA4QEcDAEAAABDMwEHQeP+AOEBDCABAAAARDMBB0EDLQDhARYEAQAAAEUzAQdBgxwA4QEWBAEAAABGMwEHQSOTAOEBDCABAAAARzMBB0EDSADhAQwgAQAAAEgzAQdBY1EA4QEeIAEAAABJMwEGQaNGAOEBDCABAAAASjMBB0EDQADhARpAAQAAAEkzAQVBQygA4QEMIAEAAABMMwEHQQMqAOEBDCABAAAATDMBBUEjQADhAQwgAQAAAE4zAQdB4xUA4QEeQAEAAABJMwECQcNUAOEBHiABAAAASTMBBEFDKgDhAR4gAQAAAFEzAQZBA24A4QEMIAEAAABSMwEHQcNCAOEBDCABAAAAUzMBB0GDHwDhAQwgAQAAAFQzAQdBoxgA4QEgQAEAAABRMwECQYNfAOEBDCABAAAAVjMBB0GjKADhAQwgAQAAAFYzAQVBIy0A4QEMIAEAAABYMwEHQWMqAOEBDCABAAAAWTMBB0EDKgDhAQwgAQAAAFkzAQVB4xUA4QEeIAEAAABRMwECQSMnAOEBDCABAAAAXDMBB0HDQgDhAQwgAQAAAF0zAQdB4x4A4QEMIAEAAABeMwEHQYMqAOEBHiABAAAAUTMBBEGjgADhARpAAQAAAGAzAQdB4xUA4QEaQAEAAABgMwEFQaOaAOEBDCABAAAAYjMBB0FjGgDhAQwgAQAAAGMzAQdBYxwA4QEWBAEAAABkMwEHQaMqAOEBHAwBAAAAZTMBB0FjGwDhAQwgAQAAAGYzAQdBYxsA4QEMIAEAAABnMwEHQcMyAOEBDCABAAAAYjMBBUGjKQDhAQwgAQAAAGkzAQdBYxwA4QEWBAEAAABqMwEHQcNIAOEBHgABAAAAazMBBkGDzQDhAQwgAQAAAGwzAQdBA0AA4QEaQAEAAAB0MwEFQQNYAOEBGkABAAAAdDMBBUHjFQDhARpAAQAAAHQzAQVBA0AA4QEaQAEAAAB0MwEFQeMVAOEBGkABAAAAdDMBBUFjJADhAQwgAQAAAHIzAQdBQzEA4QEaQAEAAABrMwEFQaOvAOEBHgABAAAAdDMBBkHjFQDhARpAAQAAAGszAQVBA38A4QEMIAEAAAB2MwEHQWNJAOEBIgABAAAAdzMBBkFDGADhAR4gAQAAAHgzAQZBg38A4QEMIAEAAAB5MwEHQeMVAOEBGkABAAAAeDMBBUEjRQDhAR4AAQAAAHszAQZBA0AA4QEaBAEAAAB7MwEFQUMoAOEBDCABAAAAfTMBB0EDWADhARpAAQAAAHszAQVB4xUA4QEeAAEAAAB7MwECQWMkAOEBDCABAAAAgDMBB0GjVwDhAQwgAQAAAIEzAQdBIx4A4QEeAAEAAACCMwEGQSNXAOEBFgQBAAAAgzMBB0HDNgDhAQwgAQAAAIQzAQdBgxcA4QEMIAEAAACFMwEHQUODAOEBDCABAAAAhjMBB0FDOQHhARYEAQAAAIczAQdB4xUA4QEWBAEAAACIMwEHQUMgAOEBDCABAAAAiTMBB0GDMADhARpAAQAAAIozAQdBozAA4QEaQAEAAACKMwEFQaNGAOEBDCABAAAAjDMBB0EDKgDhAQwgAQAAAIwzAQVBwzAA4QEaQAEAAACKMwEFQeMVAOEBFgQBAAAAjzMBB0GjJwDhARpAAQAAAIozAUdBgycA4QEaQAEAAACLMwFFQSMrAOEBDCABAAAAjDMBR0EDKgDhAQwgAQAAAI0zAUVBQysA4QEaQAEAAACOMwFFQeMVAOEBFgQBAAAAjzMBR0FDIADhAQwgAQAAAIkzAUdBgzAA4QEaQAEAAACKMwFHQaMwAOEBGkABAAAAizMBRUGjRgDhAQwgAQAAAIwzAUdBAyoA4QEMIAEAAACNMwFFQcMwAOEBGkABAAAAjjMBRUHjFQDhARYEAQAAAI8zAUdBwxoA4QEcDAEAAACJMwFHQUMmAOEBGkABAAAAnjMBB0HjFQDhARpAAQAAAJ4zAQVBwx8A4QEiAAEAAACgMwEGQQMZAOEBDCABAAAAoTMBB0HjGADhAQwgAQAAAKEzAQdBYxoA4QEMIAEAAACjMwEHQQMdAOEBGkABAAAAnjMBBUFjJADhASIAAQAAAKUzAQZBIxkA4QEMIAEAAACmMwEHQYMXAOEBGkABAAAApzMBB0EDGgDhARpAAQAAAKczAQVBAxkA4QEMIAEAAACpMwEHQSMaAOEBFgQBAAAAqjMBB0FjPwDhARpAAQAAAKszAQdBIx4A4QEMIAEAAACsMwEHQUMeAOEBDCABAAAArTMBB0HDGADhARYEAQAAAK4zAQdBwx4A4QEWBAEAAACvMwEHQeMhAOEBDCABAAAAsDMBB0FjIADhAQwgAQAAALEzAQdBwxoA4QEcDAEAAACyMwEHQeMVAOEBGkABAAAAqzMBBUFjJQDhARpAAQAAAKszAQVBwx4A4QEWBAEAAAC1MwEHQUOOAOEBGkABAAAAtjMBB0GDHQDhARYEAQAAALczAQdB4ykA4QEMIAEAAAC4MwEHQWOOAOEBGkABAAAAtjMBBUHjFQDhARpAAQAAALYzAQVBo0UA4QEMIAEAAAC7MwEHQSMZAOEBDCABAAAAvDMBB0EDGQDhAQwgAQAAAL0zAQdBYzAA4QEMIAEAAAC7MwEFQUMkAOEBFgQBAAAAvzMBB0FjHADhARYEAQAAAMAzAQdBwyIA4QEWBAEAAADBMwEHQQMtAOEBFgQBAAAAwjMBB0GjHADhARpAAQAAAMMzAQdBo0AA4QEMIAEAAADEMwEHQWMoAOEBGkABAAAAwzMBBUHjFQDhARpAAQAAAMMzAQVBAxkA4QEMIAEAAADHMwEHQaMgAOEBGkABAAAAyDMBB0HjFQDhARpAAQAAAMgzAQVBAx0A4QEaQAEAAADIMwEFQUMwAOEBDCABAAAAyzMBB0FjMgDhARYEAQAAAMwzAQdBIzAA4QEMIAEAAADNMwEHQSOEAOEBHkABAAAAzjMBBkFDIADhAQwgAQAAAM8zAQdBwxkA4QEWBAEAAADQMwEHQSMZAOEBDCABAAAA0TMBB0GDUgDhAQwgAQAAANIzAQdBIx4A4QEMIAEAAADTMwEHQYMfAOEBDCABAAAA1DMBB0GjAQHhAQwgAQAAANUzAQdBwxkA4QEWBAEAAADWMwEHQUMkAOEBDCABAAAA1zMBB0FjHwDhARpAAQAAAM4zAQVBgx8A4QEMIAEAAADZMwEHQYNgAOEBDCABAAAA2jMBB0HjFQDhARpAAQAAAM4zAQVBAyoA4QEeIAEAAADOMwEEQeMgAOEBGkABAAAA3TMBB0HjFQDhARpAAQAAAN0zAQVBY0oA4QEaQAEAAADfMwEHQYNKAOEBFgQBAAAA4DMBB0HjFQDhARpAAQAAAN8zAQVBQzkA4QEaQAEAAADiMwEHQcMZAOEBFgQBAAAA4zMBB0EDGQDhAQwgAQAAAOQzAQdB4xgA4QEMIAEAAADkMwEFQUMxAOEBIEABAAAA4jMBAkFDSgDhAQwgAQAAAOczAQdB4xUA4QEaQAEAAADiMwEFQQNaAOEBGkABAAAA4jMBBUHDKgDhARpAAQAAAOozAQdBQysA4QEaQAEAAADqMwEFQQMZAOEBDCABAAAA7DMBB0HjGADhAQwgAQAAAOwzAQVBIyYA4QEWBAEAAADuMwEHQWMfAOEBIgABAAAA7zMBBkFjNgDhAQwgAQAAAPAzAQdBIzcA4QEMIAEAAADwMwEFQWMbAOEBGkABAAAA8jMBB0GDJwDhARpAAQAAAPIzAQVBQysA4QEaQAEAAADyMwEFQeMVAOEBGkABAAAA8jMBBUEDGQDhAQwgAQAAAPYzAQdB40YA4QEMIAEAAAD3MwEHQSMtAOEBGkABAAAA+DMBBUFjVgDhARpAAQAAAPgzAQVB4xUA4QEaQAEAAAD4MwEFQeNrAOEBGkABAAAA+DMBBUEjHgDhAQwgAQAAAPwzAQdBQx4A4QEMIAEAAAD9MwEHQcMYAOEBIgQBAAAA/jMBBkHDIADhARwMAQAAAP8zAQdBYxoA4QEMIAEAAAAANAEHQaMnAOEBGkABAAAAATQBB0GDJwDhARYEAQAAAAU0AUdBQysA4QEaQAEAAAABNAEFQYMwAOEBGkABAAAABDQBB0GjMADhARYEAQAAAAU0AQdBwzAA4QEaQAEAAAAENAEFQWOfAOEBHiABAAAABzQBBkHjFQDhARpAAQAAAAc0AQVBAxkA4QEeIAEAAAAJNAEGQcMXAOEBFgQBAAAACjQBB0HDGgDhARwMAQAAAAs0AQdB4xUA4QEaQAEAAAAJNAEFQeMYAOEBDCABAAAACTQBBUGDIQDhASIAAQAAAA40AQZBoyQA4QEcDAEAAAAPNAEHQWMbAOEBDCABAAAAEDQBB0GjJwDhARpAAQAAABE0AQdBQysA4QEaQAEAAAARNAEFQUMgAOEBDCABAAAAEzQBB0GDMADhARpAAQAAABQ0AQdBwzAA4QEaQAEAAAAUNAEFQeNWAOEBHAwBAAAAFjQBB0FjGwDhAQwgAQAAABc0AQdBoykA4QEWBAEAAAAYNAEHQcMyAOEBGkABAAAABzQBBUHDGQDhARYEAQAAABo0AQdBgxcA4QEaQAEAAAAbNAEHQeMZAOEBGkABAAAAGzQBBUEDGgDhARpAAQAAABs0AQVB4xUA4QEaQAEAAAAbNAEFQQMZAOEBDCABAAAAHzQBB0HDFwDhARYEAQAAACA0AQdB4xgA4QEMIAEAAAAfNAEFQWMaAOEBDCABAAAAIjQBB0GjHwDhAQwgAQAAACI0AQVBgxcA4QEaQAEAAAAkNAEHQQMaAOEBGkABAAAAJDQBBUHjFQDhARpAAQAAACQ0AQVBAxkA4QEMIAEAAAAnNAEHQYMXAOEBGkABAAAAKDQBB0EDGgDhARpAAQAAACg0AQVBAxkA4QEMIAEAAAAqNAEHQSMeAOEBDCABAAAAKzQBB0FDHgDhAQwgAQAAACw0AQdBwxgA4QEWBAEAAAAtNAEHQYM4AOEBFgQBAAAALjQBB0FjIgDhARYEAQAAAC80AQdBA3MA4QEMIAEAAAAwNAEHQYMXAOEBGkABAAAAMTQBB0EDGgDhARpAAQAAADE0AQVBAxkA4QEMIAEAAAAzNAEHQcMZAOEBFgQBAAAANDQBB0EDGQDhAQwgAQAAADU0AQdB4xgA4QEMIAEAAAA1NAEFQUNDAOEBGkABAAAANzQBB0HDMgDhARpAAQAAADc0AQVBwxkA4QEWBAEAAAA5NAEHQcMeAOEBDCABAAAAOjQBB0EjHgDhAQwgAQAAADs0AQdB4xkA4QEgQAEAAAA3NAECQeMeAOEBDCABAAAAPTQBB0HjFQDhAR5AAQAAADc0AQJBAxkA4QEMIAEAAAA/NAEHQYMxAOEBGkABAAAAQjQBBUEjIADhARpAAQAAAEI0AQVBwzUA4QEaQAEAAABCNAEHQeMVAOEBGkABAAAAQjQBBUFjSQDhARYEAQAAAEQ0AQdBY0kA4QEWBAEAAABFNAEHQUMgAOEBDCABAAAARjQBB0HDGQDhARYEAQAAAEc0AQdBAxkA4QEMIAEAAABINAEHQSMpAOEBGkABAAAASTQBB0EDGgDhARpAAQAAAEk0AQVB4xUA4QEaQAEAAABJNAEFQcMXAOEBFgQBAAAATDQBB0FjLgDhARYEAQAAAE00AQdBQ7cA4QEMIAEAAABONAEHQWMuAOEBFgQBAAAATzQBB0EjHgDhAQwgAQAAAFA0AQdBQx4A4QEMIAEAAABRNAEHQcMYAOEBFgQBAAAAUjQBB0HDIADhARwMAQAAAFM0AQdBYxsA4QEMIAEAAABUNAEHQYMXAOEBGkABAAAAVTQBB0EDGgDhARpAAQAAAFU0AQVBAxkA4QEMIAEAAABXNAEHQWM6AOEBGkABAAAAWDQBB0EDIQDhARpAAQAAAFg0AQVB4xUA4QEgAAEAAABYNAECQcMeAOEBFgQBAAAAWzQBB0FjHgDhAR4gAQAAAFw0AQZBwxkA4QEWBAEAAABdNAEHQQMZAOEBDCABAAAAXjQBB0HjGQDhARpAAQAAAFw0AQVB4x4A4QEMIAEAAABgNAEHQeMVAOEBHkABAAAAXDQBAkEDMADhAQwgAQAAAFw0AQVBAzQA4QEWBAEAAABjNAEHQSMmAOEBDCABAAAAZDQBB0GDJADhAR4gAQAAAGU0AQZBwxkA4QEWBAEAAABmNAEHQQMZAOEBDCABAAAAZzQBB0HjGQDhARpAAQAAAGU0AQVB4x4A4QEMIAEAAABpNAEHQQMqAOEBDCABAAAAaTQBBUHjFQDhARpAAQAAAGU0AQVBwyQA4QEaQAEAAABlNAEFQUMgAOEBDCABAAAAbTQBB0HDGQDhARYEAQAAAG40AQdBwzQA4QEeAAEAAABvNAEGQYMnAOEBFgQBAAAAcDQBB0FDKwDhARpAAQAAAG80AQVB4xUA4QEaQAEAAABvNAEFQQMZAOEBDCABAAAAczQBB0EDRwDhAQwgAQAAAHQ0AQdB4xgA4QEMIAEAAAB0NAEFQSMwAOEBIgABAAAAdjQBBkHjIQDhAQwgAQAAAHc0AQdBIy0A4QEaQAEAAAB4NAEHQcMYAOEBDCABAAAAeTQBB0FjVgDhARpAAQAAAHg0AQVB4xUA4QEaQAEAAAB4NAEFQeNrAOEBGkABAAAAeDQBBUGDFwDhARpAAQAAAH00AQdBAxkA4QEMIAEAAAB+NAEHQYMXAOEBDCABAAAAfzQBB0EDGQDhAQwgAQAAAIA0AQdBw2QA4QEaQAEAAACBNAEHQWMuAOEBFgQBAAAAgjQBB0HjIwDhARYEAQAAAIM0AQdBwxoA4QEcDAEAAACENAEHQWMzAOEBFgQBAAAAhTQBB0GjJADhARwMAQAAAIY0AQdBIxoA4QEWBAEAAACHNAEHQeMhAOEBDCABAAAAiDQBB0FjNwDhASIAAQAAAIk0AQZB4yEA4QEMIAEAAACKNAEHQWMkAOEBDCABAAAAizQBB0EDygDhAR4gAQAAAIw0AQZBI5MA4QEaQAEAAACNNAEFQaMYAOEBGkABAAAAjTQBBUHjFQDhARpAAQAAAI00AQVBY3wA4QEMIAEAAACQNAEHQWMhAOEBDCABAAAAkjQBBUGjPADhAQwgAQAAAJI0AQdBYx0A4QEMIAEAAACTNAEHQWPgAOEBDCABAAAAlTQBBUGjVADhAQwgAQAAAJU0AQdBIy4A4QEMIAEAAACWNAEHQYMvAOEBFgQBAAAAlzQBB0FjVgDhASBAAQAAAIw0AQJBg38A4QEMIAEAAACZNAEHQeMVAOEBHkABAAAAjDQBAkEjpwDhAQwgAQAAAJo0AQdB4+MA4QEMIAEAAACMNAEFQeMeAOEBDCABAAAAnTQBB0HjFQDhAQwgAQAAAJ40AQdBQxkA4QEeIAEAAACfNAEGQcMjAOEBGkABAAAAnzQBBUHDVgDhARYEAQAAAKU0AQVBw0oA4QEWBAEAAAClNAEFQWMbAOEBDCABAAAAozQBB0HjFQDhARpAAQAAAJ80AQVBQ48A4QEWBAEAAAClNAEHQSNvAOEBDCABAAAApjQBB0HjQADhAQwgAQAAAKY0AQVBIxoA4QEWBAEAAACoNAEHQaMnAOEBGkABAAAArTQBR0GDJwDhARpAAQAAAK40AUVBQysA4QEaQAEAAACvNAFFQeMVAOEBGkABAAAAsDQBRUGDMADhARpAAQAAAK00AQdBozAA4QEaQAEAAACtNAEFQcMwAOEBGkABAAAArTQBBUHjFQDhARpAAQAAAK00AQVBQ0kA4QEMIAEAAACxNAEHQeMuAOEBDCABAAAAsjQBB0FjUQDhAR4AAQAAALM0AQZBw1QA4QEMIAEAAACzNAEFQeMWAOEBDCABAAAAtTQBB0EjuADhAR4gAQAAALY0AQZBwxkA4QEWBAEAAAC3NAEHQQNAAOEBIEABAAAAtjQBAkFDKADhAQwgAQAAALk0AQdBAyoA4QEMIAEAAAC5NAEFQeMVAOEBHkABAAAAtjQBAkEDQADhASAAAQAAALg0AUJBQygA4QEMIAEAAAC5NAFHQQMqAOEBDCABAAAAujQBRUHjFQDhAR4AAQAAALs0AUJBA3EA4QEMIAEAAADANAEHQSNxAOEBDCABAAAAwDQBBUHjUgDhAQwgAQAAAMA0AUdBQzMA4QEMIAEAAADBNAFFQUN0AOEBHiABAAAAtjQBBEHDGQDhARYEAQAAAMU0AQdB4yMA4QEMIAEAAADGNAEHQWMzAOEBHgABAAAAxzQBBkEjKwDhAQwgAQAAAMg0AQdBQysA4QEaQAEAAADHNAEFQeMVAOEBGkABAAAAxzQBBUGDMQDhARpAAQAAAMw0AQVBQxwA4QEeAAEAAADMNAEGQeMVAOEBGkABAAAAzDQBBUFDmwDhAR4AAQAAAM40AQZBQygA4QEMIAEAAADPNAEHQeMVAOEBGkABAAAAzjQBBUHjSgDhAQwgAQAAANE0AQdBI2MA4QEMIAEAAADRNAEFQSMYAOEBDCABAAAA0zQBB0FjHADhARYEAQAAANQ0AQdBoyoA4QEcDAEAAADVNAEHQQNGAOEBDCABAAAA1jQBB0EjfQDhAQwgAQAAANc0AQdBQ2kB4QEWBAEAAADYNAEHQSNAAOEBHkABAAAA2TQBBkHjFQDhARpAAQAAANk0AQVB4z8A4QEeAAEAAADbNAEGQWN6AOEBDCABAAAA3DQBB0GDRQDhARpAAQAAANk0AQVBI5sA4QEMIAEAAADeNAEHQQNHAOEBDCABAAAA3zQBB0HDGQDhARYEAQAAAOA0AQdBgyIA4QEcDAEAAADhNAEHQWMgAOEBDCABAAAA4jQBB0FjHADhARYEAQAAAOM0AQdB4yAA4QEeIAEAAADkNAEGQWMfAOEBFgQBAAAA5TQBB0GDHwDhAQwgAQAAAOY0AQdBIy0A4QEMIAEAAADnNAEHQQMhAOEBDCABAAAA5DQBBUHjFQDhARpAAQAAAOQ0AQVBw4oA4QEMIAEAAADqNAEHQQOgAOEBHkABAAAA6zQBBkHjGQDhASBAAQAAAOs0AQJB4x4A4QEMIAEAAADtNAEHQSMgAOEBDCABAAAA9DQBBUHjFQDhARpAAQAAAOs0AQVBoycA4QEMIAEAAADwNAEHQcMYAOEBDCABAAAA8TQBB0EDMADhAQwgAQAAAPE0AQVBg4kA4QEaQAEAAADrNAEFQSO8AOEBDCABAAAA9DQBB0HDGQDhAS4AAQAAAPU0AQZBA0AA4QEaQAEAAAD1NAEFQeMVAOEBGkABAAAA9TQBBUFj3QDhAQwgAQAAAPg0AQdBo6oA4QEMIAEAAAD5NAEHQYNSAOEBHiABAAAA+jQBBkGjUgDhARYEAQAAAPs0AQdBg38A4QEMIAEAAAD8NAEHQeMVAOEBGkABAAAA+jQBBUFjGwDhARYEAQAAAP40AQdBQ1EA4QEMIAEAAAD/NAEHQSNXAOEBFgQBAAAAADUBB0FjUQDhAQwgAQAAAAE1AQdBoygA4QEMIAEAAAD6NAEFQaOUAOEBDCABAAAAAzUBB0HD1gHhARYEAQAAAAQ1AQdBo0gA4QEMIAEAAAAFNQEHQeM6AOEBDCABAAAABjUBB0Hj+wHhAR4AAQAAAAc1AQZBA4YA4QEaQAEAAAAHNQEFQYNMAOEBDCABAAAACTUBB0HjFQDhARpAAQAAAAc1AQVBAzwA4QEeAAEAAAALNQEGQeMVAOEBGkABAAAACzUBBUEjIwDhAQwgAQAAAA01AQdBwxkA4QEeAAEAAAAONQEGQUMoAOEBDCABAAAADzUBB0EDWADhARpAAQAAAA41AQdB4xUA4QEuQAEAAAAONQECQWMcAOEBFgQBAAAAEjUBB0GjKgDhARwMAQAAABM1AQdBYzcA4QEMIAEAAAAUNQEHQaPHAOEBDCABAAAAFTUBB0FjbQDhAR4gAQAAABY1AQZBox8A4QEeIAEAAAAWNQEEQWMcAOEBFgQBAAAAGDUBB0GjKgDhARwMAQAAABk1AQdBY1EA4QEMIAEAAAAaNQEHQSOgAOEBHiABAAAAGzUBBkFDHgDhAQwgAQAAABw1AQdBYx4A4QEWBAEAAAAdNQEHQcMgAOEBHAwBAAAAHjUBB0GDQwDhAQwgAQAAAB81AQdBw0IA4QEMIAEAAAAgNQEHQeMVAOEBGkABAAAAGzUBBUFjPwDhAR4gAQAAACI1AQZBw1YA4QEWBAEAAAAoNQEFQcNKAOEBFgQBAAAAKDUBBUHjFQDhARpAAQAAACI1AQVBYyUA4QEMIAEAAAAiNQEFQeMVAOEBFgQBAAAAJzUBB0GDpgDhARYEAQAAACg1AQdBwx4A4QEMIAEAAAApNQEHQSOTAOEBHgABAAAAKjUBBkHDcwDhAQwgAQAAACs1AQdBoxgA4QEaQAEAAAAqNQEFQeMVAOEBGkABAAAAKjUBBUEDGQDhAQwgAQAAAC41AQdBYyQA4QEeAAEAAAAvNQEGQcMtAOEBDCABAAAAMDUBB0EDcgDhARYEAQAAADE1AQdBAxkA4QEMIAEAAAAyNQEHQcMoAOEBHAwBAAAAMzUBB0FjcgDhAQwgAQAAADQ1AQdB40AA4QEMIAEAAAA0NQEFQeNCAOEBHiABAAAANjUBBkEjKwDhAQwgAQAAADc1AQdBQysA4QEaIAEAAAA2NQEFQeMVAOEBFiABAAAAOTUBB0FjGwDhAQwgAQAAADo1AQdBI6wA4QEMIAEAAAA7NQEHQcOMAOEBDCABAAAAPDUBB0FD0ADhAQwgAQAAAD01AQdBA/8A4QEMIAEAAAA+NQEHQQP8AdkBDCABAAAAPzUBB0Ej/AHZAQwgAQAAAEA1AQdBgxcA4QEMIAEAAABBNQEHQSOOAOEBDCABAAAAQjUBB0HjOgDhAQwgAQAAAEM1AQdBoxoA4QEMIAEAAABENQEHQQNAAOEBGkABAAAARDUBBUHjFQDhARpAAQAAAEQ1AQVBA0AA4QEaQAEAAABFNQFFQeMVAOEBGkABAAAARjUBRUGjdQDhAQwgAQAAAEQ1AQVBIxgA4QEMIAEAAABKNQEHQYN0AOEBDCABAAAASzUBB0EDNADhARYEAQAAAEw1AQdBQyAA4QEMIAEAAABNNQEHQYMXAOEBIAABAAAATjUBBkEDGgDhARpAAQAAAE41AQVB4xUA4QEaQAEAAABONQEFQQMZAOEBDCABAAAAUTUBB0GjGQDhARYEAQAAAFI1AQdBw0YA4QEMIAEAAABTNQEHQWMkAOEBDCABAAAAVDUBB0FjZgDhAQwgAQAAAFU1AQdBAyYA4QEMIAEAAABWNQEHQeMhAOEBDCABAAAAVzUBB0EjGgDhARYEAQAAAFg1AQdB49wA4QEWBAEAAABZNQEHQQMZAOEBDCABAAAAWjUBB0HjIQDhAQwgAQAAAFs1AQdBAxkA4QEMIAEAAABcNQEHQUOOAOEBDCABAAAAXTUBB0FjjgDhAQwgAQAAAF01AQVBw0IA4QEMIAEAAABfNQEHQWMgAOEBDCABAAAAYDUBB0FDSQDhAQwgAQAAAGE1AQdB42MA4QEMIAEAAABiNQEHQWNJAOEBDCABAAAAYzUBB0GDFwDhARpAAQAAAGQ1AQdBAxoA4QEaQAEAAABkNQEFQQMZAOEBDCABAAAAZjUBB0HDFwDhAQwgAQAAAGc1AQdBI4EA4QEMIAEAAABoNQEHQSMtAOEBDCABAAAAaTUBB0FjIgDhASIAAQAAAGo1AQZBIykA4QEMIAEAAABrNQEHQYNgAOEBDCABAAAAbDUBB0HDMQDhAR4AAQAAAG01AQZBYyIA4QEWBAEAAABuNQEHQaMaAOEBFgQBAAAAbzUBB0HjsQDhAQwgAQAAAHA1AQdBA3gA4QEMIAEAAABxNQEHQYNRAOEBDCABAAAAcjUBB0FDaADhAQwgAQAAAHI1AQVBIxwA4QEMIAEAAAB0NQEHQSMcAOEBDCABAAAAdTUBB0EDGQDhAQwgAQAAAHY1AQdBwx8A4QEMIAEAAAB3NQEHQcMfAOEBDCABAAAAeDUBB0FjSQDhAQwgAQAAAHk1AQdBYzYA4QEMIAEAAAB6NQEHQWNJAOEBDCABAAAAezUBB0HjxADhAQwgAQAAAHw1AQdBozwA4QEMIAEAAAB9NQEHQQMMAeEBDCABAAAAfjUBB0EjHADhAQwgAQAAAH81AQdB42AA4QEMIAEAAACANQEHQaNUAOEBDCABAAAAgTUBB0GDLADhAQwgAQAAAII1AQdBA0EA4QEMIAEAAACDNQEHQeMhAOEBDCABAAAAhDUBB0EjGwDhAQwgAQAAAIU1AQdBIxoA4QEWBAEAAACGNQEHQUMnAOEBFgQBAAAAhzUBB0EjHADhAQwgAQAAAIg1AQdBQ1cA4QEeIAEAAACJNQEGQQOGAOEBGkABAAAAiTUBBUGDTADhAQwgAQAAAIs1AQdBA0YA4QEMIAEAAACMNQEHQcNWAOEBFgQBAAAAmjUBBUHDSgDhARYEAQAAAJo1AQVB41YA4QEcDAEAAACPNQEHQWMbAOEBDCABAAAAkDUBB0HjFQDhARpAAQAAAIk1AQVBA3YA4QEeQAEAAACSNQEGQQNYAOEBGkABAAAAkjUBBUHjFQDhARpAAQAAAJI1AQVBI2UA4QEMIAEAAACJNQEFQcNWAOEBFgQBAAAAmTUBBUHDSgDhARYEAQAAAJk1AQVB4x4A4QEMIAEAAACYNQEHQcM/AeEBFgQBAAAAmTUBB0EDwgDhARYEAQAAAJo1AQdBgywA4QEMIAEAAACdNQEFQWMuAOEBFgQBAAAAnDUBB0GjPADhAQwgAQAAAJ01AQdB458A4QEiAAEAAACeNQEGQaMfAOEBDCABAAAAnjUBBUGjbQDhAQwgAQAAAJ41AUdBg2kA4QEMIAEAAACfNQFFQcM5AOEBDCABAAAAojUBB0HDVQDhAQwgAQAAAKM1AQdBI4MA4QEMIAEAAACkNQEHQQNyAOEBFgQBAAAApTUBB0GDFwDhARYEAQAAAKY1AQdBI30A4QEMIAEAAACnNQEHQQMlAOEBDCABAAAAqDUBB0HDGADhAQwgAQAAAKk1AQdBYzcA4QEMIAEAAACqNQEHQYMxAOEBIEABAAAAqzUBAkGDLADhAQwgAQAAAK41AQVBoxoA4QEiAAEAAACtNQEGQaM8AOEBDCABAAAArjUBBUHDVgDhAQwgAQAAAK81AQdBIyAA4QEaQAEAAAACNwEFQeO5AOEBFgQBAAAAsTUBB0EDogDhAR4MAQAAALI1AQZBQygA4QEMIAEAAACzNQEHQeMVAOEBLgABAAAAsjUBAkFjSQDhAQwgAQAAALU1AQdB40AA4QEMIAEAAAC2NQEHQYMXAOEBFgQBAAAAtzUBB0HjGQDhARYEAQAAALg1AQdBgxcA4QEWBAEAAAC5NQEHQQMiAOEBDCABAAAAuzUBBUGjPADhAQwgAQAAALs1AQVBgxcA4QEaQAEAAAC8NQEHQQMZAOEBDCABAAAAvTUBB0GD0ADhAS4AAQAAAL41AQZBwxcA4QEMIAEAAAC/NQEHQcM4AOEBDCABAAAAwDUBB0GjJgDhARpAAQAAAL41AQVBwyYA4QEeIAEAAADCNQEGQWMfAOEBGkABAAAAwjUBBUGjIwDhAQwgAQAAAMQ1AQdBwyMA4QEMIAEAAADENQEFQeMVAOEBGkABAAAAwjUBBUHDQgDhAQwgAQAAAMc1AQdBAyoA4QEaQAEAAADCNQEFQeMVAOEBGkABAAAAvjUBBUHDHwDhAQwgAQAAAMo1AQdB4x8A4QEMIAEAAADKNQEFQeNRAOEBDCABAAAAzDUBB0HDFwDhARYEAQAAAM01AQdBIzQA4QEWBAEAAADONQEHQUMdAOEBDCABAAAAzzUBB0EDOADhAQwgAQAAANA1AQdBw0gA4QEMIAEAAADRNQEHQWPgAOEBDCABAAAA0zUBBUGjVADhAQwgAQAAANM1AQVBo80A4QEWBAEAAADUNQEHQWNJAOEBDCABAAAA1TUBB0FjJADhAQwgAQAAANY1AQdBI1cA4QEMIAEAAADXNQEHQUMkAOEBIgABAAAA2DUBBkEjMADhARYEAQAAANk1AQdBY3oA4QEeAAEAAADaNQEGQQNAAOEBFgQBAAAA2zUBB0HjFQDhARpAAQAAANo1AQdBAxkA4QECJAEDAADdNQEHQeMYAOEBAiQBAwAA3jUBBUHjKADhASIAgQEAAN81AQZBozwA4QEMIAEAAADgNQEHQYMXAOEBFgQBAAAA4TUBB0HjGQDhARYEAQAAAOI1AQdBgx0A4QEWBAEAAADjNQEHQWM3AOEBDCABAAAA5DUBB0FDSQDhAQwgAQAAAOU1AQdBo1oA4QEuQAEAAADmNQEGQeNgAOEBDCABAAAA5zUBB0FDSgDhAQwgAQAAAOg1AQdB4x4A4QEMIAEAAADpNQEHQWMkAOEBDCABAAAA6jUBB0Gj2gDhARwMAQAAAOs1AQdBQzEA4QEgQAEAAADmNQECQUNKAOEBIgQBAAAA5jUBAkHDSgDhARYEAQAAAOY1AQVB4xUA4QEeQAEAAADmNQECQWMbAOEBDCABAAAA8DUBB0FjHwDhARYEAQAAAPE1AQdBYz4B4QEMIAEAAADyNQEHQeNUAOEBHgABAAAA5jUBBEFjJADhAQwgAQAAAPQ1AQdCQ18A5wEYMAEAAAD1NREFQUNfAOEBGDABAAAA9TUBB0FDHQDhARYEAQAAAPc1AQdBg2AA4QEMIAEAAAD4NQEHQWM2AOEBDCABAAAA+TUBB0GjqgDhAQwgAQAAAPo1AQdBAzgA4QEMIAEAAAD7NQEHQYM9AOEBFgQBAAAA/DUBB0GDFwDhARYEAQAAAP01AQdB4xkA4QEWBAEAAAD+NQEHQQOqAOEBDCABAAAA/zUBB0EjIwDhAQwgAQAAAAA2AQdBozsA4QEMIAEAAAABNgEHQcM0AOEBDCABAAAAAjYBB0HDHwDhAQwgAQAAAAM2AQdBY1cA4QEeIAEAAAAENgEGQeM1AOEBDCABAAAABTYBB0FjNwDhARYEAQAAAAY2AQdBg6IA4QEMIAEAAAAHNgEHQUNKAOEBDCABAAAACDYBB0FjJADhAQwgAQAAAAk2AQdBgxcA4QEWBAEAAAAKNgEHQeMZAOEBFgQBAAAACzYBB0HjuQDhARYEAQAAAAw2AQdBI0UA4QEuBAEAAAANNgEGQQNAAOEBGkABAAAADTYBBUEDWADhARogAQAAAA02AQVBQ1EA4QEMIAEAAAAQNgEHQWNRAOEBDCABAAAAETYBB0Fj9gDhARYEAQAAABI2AQdBgxcA4QEeAAEAAAATNgEGQQMaAOEBGkABAAAAEzYBBUFDIADhAQwgAQAAABU2AQdB4xUA4QEeQAEAAAANNgECQSMuAOEBFgQBAAAAFzYBB0EDPQDhAQwgAQAAABg2AQdBo1UA4QEMIAEAAAAZNgEHQWODAOEBDCABAAAAGjYBB0FjVgDhARpAAQAAAAQ2AQVBg38A4QEMIAEAAAAcNgEHQeMVAOEBIAABAAAABDYBAkFjMQDhARwMAQAAAB42AQdB42sA4QEMIAEAAAAENgEFQeMbAeEBDCABAAAAIDYBB0FDJADhAQwgAQAAACE2AQdB4ywA4QEMIAEAAAAiNgEHQcMfAOEBDCABAAAAIzYBB0GjIADhARpAAQAAACQ2AQdBAx0A4QEaQAEAAAAkNgEFQeMuAOEBDCABAAAAJjYBB0GDNADhARYEAQAAACc2AQdBox0A4QEMIAEAAAAoNgEHQcMdAOEBDCABAAAAKjYBBUEDGQDhAQwgAQAAACo2AQdB43UA4QEMIAEAAAArNgEHQWPgAOEBDCABAAAALTYBBUGjVADhAQwgAQAAAC02AQVBA0EA4QEMIAEAAAAuNgEHQYNgAOEBDCABAAAALzYBB0HDSADhAQwgAQAAADA2AQdBwxkA4QEMIAEAAAAxNgEHQUNqAOEBDCABAAAAMjYBB0EjPADhARYEAQAAADM2AQdBYzcA4QEWBAEAAAA0NgEHQaMkAOEBHAwBAAAANTYBB0FjGwDhAQwgAQAAADY2AQdB4yEA4QEMIAEAAAA3NgEHQWMgAOEBDCABAAAAODYBB0GjPADhAQwgAQAAADk2AQdBQy4A4QEMIAEAAAA6NgEHQWPWAOEBHiABAAAAOzYBBkHDgADhARYEAQAAADw2AQdBYx4A4QEWBAEAAAA9NgEHQcMgAOEBHAwBAAAAPjYBB0FjGQDhARpAAQAAADs2AQVB4xUA4QEaQAEAAAA7NgEFQUOYAOEBDCABAAAAOzYBBUEDPgDhAQwgAQAAAEI2AQdBgxcA4QEMIAEAAABDNgEHQYPnAOEBDCABAAAAQjYBBUEjgQDhARYEAQAAAEU2AQdBwxgA4QEWBAEAAABGNgEHQQPQAOEBDCABAAAARzYBB0EDQwDhAQwgAQAAAFQ2AQdBoxoA4QEWBAEAAABJNgEHQaMnAOEBGkABAAAATzYBR0GDJwDhARpAAQAAAFA2AUVBQysA4QEaQAEAAABRNgFFQeMVAOEBGkABAAAAUjYBRUFDIADhAQwgAQAAAE42AQdBgzAA4QEaQAEAAABPNgEHQaMwAOEBGkABAAAATzYBBUHDMADhARpAAQAAAE82AQVB4xUA4QEaQAEAAABPNgEFQcMaAOEBHAwBAAAAUzYBB0GjPADhAQwgAQAAAFQ2AQdBQ/wB2QEMIAEAAABVNgEHQcNxAOEBDCABAAAAVjYBB0GjTADhARpAAQAAAFc2AQdBY14A4QEWBAEAAABYNgEHQeMeAOEBDCABAAAAWTYBB0HDNgDhAQwgAQAAAFo2AQdBw6cA4QEMIAEAAABbNgEHQQM3AOEBDCABAAAAXDYBBUFjYwDhAQwgAQAAAFw2AQVBgz0A4QEMIAEAAABeNgEHQQNqAOEBDCABAAAAXzYBB0ED1gDhARpAAQAAAGA2AQVBoyYA4QEaQAEAAABgNgEFQeMVAOEBGkABAAAAYDYBBUEDLgDhAQwgAQAAAGM2AQdB41EA4QEMIAEAAABkNgEHQeOjAOEBDCABAAAAZTYBB0EDWwHhARYEAQAAAGY2AQdBY5QA4QEeAAEAAABnNgEGQUMoAOEBDCABAAAAaDYBB0HjYgDhAQwgAQAAAGk2AQdBI1YA4QEMIAEAAABqNgEHQeMVAOEBHgABAAAAZzYBAkED+QDhAQwgAQAAAGw2AQdBIxwA4QEMIAEAAABtNgEHQaM1AOEBDCABAAAAbjYBB0GDhgDhAQwgAQAAAG82AQdBIxgA4QEMIAEAAABwNgEHQWMgAOEBDCABAAAAcTYBB0GDigDhAQwgAQAAAHI2AQdBowMB4QEeIAEAAABzNgEGQYN/AOEBDCABAAAAdDYBB0EDKgDhAQwgAQAAAHQ2AQVBA3gA4QEMIAEAAABzNgEHQSMtAOEBDCABAAAAdzYBB0GjNADhAQwgAQAAAHk2AQVBIzUA4QEMIAEAAAB5NgEHQUNkAOEBDCABAAAAejYBB0HDPADhARYEAQAAAHs2AQdBIxwA4QEMIAEAAAB8NgEHQWMmAOEBDCABAAAAfTYBB0EjGgDhARYEAQAAAH42AQdBIzwA4QEWBAEAAAB/NgEHQeMhAOEBDCABAAAAgDYBB0FjNwDhAQwgAQAAAIE2AQdBgyAA4QEMIAEAAACCNgEHQSM8AOEBIgABAAAAgzYBBkGDHADhARYEAQAAAIQ2AQdBwxoA4QEcDAEAAACFNgEHQaN5AOEBDCABAAAAhjYBB0HjIQDhAQwgAQAAAIc2AQdBA0EA4QEMIAEAAACINgEHQcM7AOEBDCABAAAAiTYBB0EDfgDhAQwgAQAAAIo2AQdBwyoA4QEMIAEAAACLNgEHQWMYAOEBDCABAAAAjDYBB0HD5gDhAR4AAQAAAI02AQZBY6AA4QEMIAEAAACONgEHQWMkAOEBDCABAAAAjzYBB0EjYADhARpAAQAAAI02AQVBYyAA4QEMIAEAAACRNgEHQeMZAOEBGkABAAAAjTYBBUHjHgDhAQwgAQAAAJM2AQdB4xUA4QEaQAEAAACNNgEFQaNtAOEBDCABAAAAlTYBB0HDGQDhAR4gAQAAAJY2AQZBA0AA4QEgBAEAAACWNgECQYNMAOEBDCABAAAAmDYBB0FDKADhAQwgAQAAAJk2AQdBA1gA4QEeIAEAAACWNgEEQcNMAOEBGkABAAAAmzYBB0HjHgDhAQwgAQAAAJw2AQdB4xUA4QEaQAEAAACbNgEFQSNgAOEBGkABAAAAmzYBBUFDJwDhARYEAQAAAJ82AQdBYxsA4QEMIAEAAACgNgEHQeMVAOEBIAQBAAAAljYBAkFjHADhARYEAQAAAKI2AQdBY2cA4QEMIAEAAACjNgEHQSMeAOEBGkABAAAApDYBB0FjKADhARpAAQAAAKQ2AQVB4xUA4QEeAAEAAACkNgECQQPjAOEBDCABAAAApzYBB0GDfwDhAQwgAQAAAKg2AQdBIysA4QEMIAEAAACpNgEHQWMfAOEBFgQBAAAAqjYBB0HjFQDhAQwgAQAAAKs2AQdBAyoA4QEMIAEAAACpNgEHQWMjAOEBDCABAAAArTYBB0GDIwDhAQwgAQAAAK02AQVBgyUA4QEMIAEAAACvNgEHQaMlAOEBDCABAAAAsDYBB0HjswDhAR4gAQAAALE2AQZBA0AA4QEaQAEAAACxNgEFQeMVAOEBGkABAAAAsTYBBUFDHgDhAQwgAQAAALQ2AQdBYx4A4QEiBAEAAAC1NgEGQaMcAOEBDCABAAAAtjYBB0GjbwDhAR4gAQAAALc2AQZB4zoA4QEMIAEAAAC4NgEHQYNMAOEBDCABAAAAuTYBB0HjFQDhAQwgAQAAALo2AQdBA3YA4QEeAAEAAAC7NgEGQUMoAOEBDCABAAAAvDYBB0HjFQDhAQwgAQAAAL02AQdBI2UA4QEeIAEAAAC3NgEEQSMeAOEBDCABAAAAvzYBB0FDHgDhAQwgAQAAAMA2AQdBwxgA4QEWBAEAAADBNgEHQcMgAOEBHAwBAAAAwjYBB0GDJgDhAR4gAQAAAMM2AQZBwyYA4QEMIAEAAADENgEHQeMmAOEBGkABAAAAwzYBBUHjFQDhARpAAQAAAMM2AQVBAzMA4QFIBAEAAADHNgEGQeMZAOEBFgQBAAAAyDYBB0GjJQDhAQwgAQAAAMk2AQdBYxsA4QEMIAEAAADKNgEHQSOIAOEBFgQBAAAAxzYBBUHDSgDhARYEAQAAAMc2AQVBA6IA4QEMIAEAAADNNgEHQeMhAOEBDCABAAAAzjYBB0FjJQHhARwMAQAAAM82AQdBQ9YA4QEeAAEAAADQNgEGQQNGAOEBDCABAAAA0TYBB0Fj5gDhAR5AAQAAANI2AQZB4x4A4QEMIAEAAADTNgEHQaMjAOEBDCABAAAA1DYBB0HjFQDhARpAAQAAANI2AQVBY5EA4QEaQAEAAADSNgEHQSNGAOEBDCABAAAA1zYBB0HjFQDhAR4AAQAAANA2AQJBg9YA4QEeAAEAAADQNgEEQYMXAOEBIAABAAAA2jYBBkHjGQDhARYEAQAAANs2AQdBAxoA4QEaQAEAAADaNgEFQeMVAOEBGkABAAAA2jYBBUEDGQDhAQwgAQAAAN42AQdBI0gA4QEMIAEAAADfNgEHQeM/AOEBHgABAAAA4DYBBkED1wDhAQwgAQAAAOE2AQdBoyMA4QEMIAEAAADiNgEHQcMjAOEBDCABAAAA4jYBBUGDpwDhAQwgAQAAAOE2AQdBY30A4QEMIAEAAADlNgEHQcPDAOEBHgABAAAA5jYBBkGDJwDhARYEAQAAAOc2AQdBo0IA4QEeIAEAAADoNgEGQeMeAOEBDCABAAAA6TYBB0HjGQDhASBAAQAAAOg2AQJBgygA4QEMIAEAAADrNgEHQaMoAOEBDCABAAAA6zYBBUEjLQDhAQwgAQAAAO02AQdB4x4A4QEMIAEAAADuNgEHQaOKAOEBFgQBAAAA7zYBB0HDGgDhARwMAQAAAPA2AQdBYxsA4QEMIAEAAADxNgEHQcNWAOEBFgQBAAAA/DYBBUHDSgDhARYEAQAAAPw2AQVBYxsA4QEMIAEAAAD0NgEHQeMVAOEBIAABAAAA6DYBAkFjMQDhARwMAQAAAPY2AQdBYxsA4QEMIAEAAAD3NgEHQWMaAOEBDCABAAAA+DYBB0GjPQDhARpAAQAAAOg2AQVBYxsA4QEMIAEAAAD6NgEHQSNBAOEBFgQBAAAA+zYBB0FDHADhASIAAQAAAPw2AQZBg2MA4QEMIAEAAAD9NgEHQaOKAOEBFgQBAAAA/jYBB0HDGgDhARwMAQAAAP82AQdBYxsA4QEMIAEAAAAANwEHQYOrAOEBDCABAAAA/TYBBUEDOADZAR5AAQAAAAI3AQZB4xUA4QEgQAEAAAACNwECQSP0AOEBDCABAAAABDcBBUHjQADhAQwgAQAAAAQ3AQVBgyUA4QEMIAEAAAAGNwEHQcM9AOEBDCABAAAABzcBB0GDOwDhAQwgAQAAAAg3AQdBI0sA4QEMIAEAAAAJNwEHQWNJAOEBDCABAAAACjcBB0GjawDhAQwgAQAAAAs3AQdDY/wB2QEMIAEAAAAMNwEHQ8N8AOEBDCABAAAADTcBB0ODUQDhAQwgAQAAAA43AQdDYyAA4QEWBAEAAAAPNwEHQyMaAOEBFgQBAAAAEDcBB0Nj/AHhAQwgAQAAABE3AQdDQ68B4QEMIAEAAAASNwEHQ8MgAeEBDCABAAAAEzcBB0OD/AHhAQwgAQAAABQ3AQdDo/wB2QEMIAEAAAAVNwEHQ4OFAeEBDCABAAAAFjcBB0OD5QDhAQwgAQAAABc3AQdDYyQA4QEMIAEAAAAYNwEHQ8P8AdkBGkABAAAAGTcBB0MDagDhAQwgAQAAABo3AQdEw/EBCgINIAEAAAAdNyEFRePxAQ8CDSABAAAAHTcRBUPj8QERAg0gAQAAAB03AQVD4/wB2QEMIAEAAAAeNwEHQ0PfAOEBDCABAAAAHzcBB0MDagDhAQwgAQAAACA3AQdGo4gA4QEMIAEAAAAhNwEHRqOrANkBDCABAAAAIjcBB0aD5QDhAQwgAQAAACM3AQdG42oA4QEMIAEAAAAjNwEFRuPcAOEBFgQBAAAAJTcBB0bDVgDhARYEAQAAACk3AQVGw0oA4QEWBAEAAAApNwEFRmMbAOEBDCABAAAAKDcBB0YDvwDhARYEAQAAACk3AQdGo8IA4QEeIAEAAAAqNwEGRoMdAOEBFgQBAAAAKzcBB0ZjGwDhASIAAQAAACw3AQZGI1cA4QEWBAEAAAAtNwEHRuMpAOEBDCABAAAALjcBB0YjfQDhAQwgAQAAAC83AQdGAzQA4QEiAAEAAAAwNwEGRoMXAOEBFgQBAAAAMTcBB0bDRADhAQwgAQAAADI3AQdGIy4A4QEWBAEAAAAzNwEHRiMcAOEBDCABAAAANDcBB0ZjHADhARYEAQAAADU3AQdGwzQA4QEMIAEAAAA2NwEHRkMgAOEBDCABAAAANzcBB0ZjHADhARYEAQAAADg3AQdGY44A4QEMIAEAAAAqNwEFRqOKAOEBDCABAAAAOjcBB0bjFQDhAR4AAQAAACo3AQJGYyQA4QEMIAEAAAA8NwEHRgM0AOEBFgQBAAAAPTcBB0ZjbwDhAQwgAQAAAD43AQdGo28A4QEeQAEAAAA/NwEGRqOEAOEBDCABAAAAQDcBB0YDhgDhASBAAQAAAD83AQJGg0wA4QEeAAEAAABCNwEGRqOqAOEBDCABAAAAQzcBB0bjFQDhARpAAQAAAD83AQVGI2UA4QEeAAEAAAA/NwEERsNpAOEBFgQBAAAARjcBB0YDhADhAQwgAQAAAEc3AQdGY6wA2QEYMMEDAABINwEFRwP9AQoCGTABAAAASzchBUgj/QEPAhkwAQAAAEs3EQVGI/0BEQIZMMEDAABLNwEFRqO1AOEBGDDBAwAATDcBB0bj5wDhAQwgAQAAAE03AQdGg8MA4QEMIAEAAABONwEHRqPUAOEBDCABAAAATzcBB0ZD4gDhAQwgAQAAAFA3AQdG4xkA4QEWBAEAAABRNwEHRkP9AdkBHgABAAAAUjcBBkajTADhAQwgAQAAAFM3AQdGoyYA4QEaQAEAAABSNwEFRsMmAOEBDCABAAAAVTcBB0bjFQDhARpAAQAAAFI3AQVGo/AB4QEMIAEAAABXNwEHRqPwAeEBDCABAAAAWDcBB0ZDaQDhAQwgAQAAAFk3AQdGAxkA4QEMIAEAAABaNwEHRqMeAOEBDCABAAAAWzcBB0ajHgDhAQwgAQAAAFw3AQdGQy4A4QEMIAEAAABdNwEHRmPBAOEBDCABAAAAXjcBB0YjRgDhAQwgAQAAAF83AQdGQ2kA4QEMIAEAAABgNwEHRsMaAOEBDCABAAAAYTcBB0ZjYwDhAQwgAQAAAGI3AQdGIzYA2QEMIAEAAABjNwEHRsMZAOEBHiABAAAAZDcBBkYjsADhAQwgAQAAAGU3AQdGA0AA4QEaQAEAAABkNwEFRkMoAOEBDCABAAAAZzcBB0YDWADhARpAAQAAAGQ3AQVGo1IA4QEMIAEAAABpNwEHRuMVAOEBHkABAAAAZDcBAkYjggDhAQwgAQAAAGs3AQdGQ4MA4QEMIAEAAABsNwEHRgMZAOEBDCABAAAAbTcBB0aDMQDhARpAAQAAAHA3AQVGIyAA4QEaQAEAAABwNwEFRqOxAOEBGkABAAAAcDcBB0YjOgDhARpAAQAAAHE3AQdGIx4A4QEMIAEAAAByNwEHRsMYAOEBFgQBAAAAczcBB0bDTwDhARYEAQAAAHQ3AQdGQyAA4QEMIAEAAAB1NwEHRmMbAOEBDCABAAAAdjcBB0Yj0gDhAQwgAQAAAHc3AQdGY20A4QEMIAEAAAB4NwEHRqMfAOEBDCABAAAAeDcBBUajbQDhAQwgAQAAAHg3AUdGg2kA4QEMIAEAAAB5NwFFRuNFAOEBDCABAAAAfDcBB0ZjHADhARYEAQAAAH03AQdGoyoA4QEcDAEAAAB+NwEHRmMbAOEBDCABAAAAfzcBB0bjNADhAQwgAQAAAIA3AQdG48MB2QEeAAEAAACBNwEGRqOZAOEBDCABAAAAgjcBB0bDJgDhAQwgAQAAAIM3AQdGY+AA4QEMIAEAAACENwEHRiOBAOEBHiABAAAAhTcBBkajGADhARpAAQAAAIU3AQVGo4oA4QEWBAEAAACHNwEHRsMaAOEBHAwBAAAAiDcBB0ZjGwDhAQwgAQAAAIk3AQdGYxsA4QEWBAEAAACKNwEHRqMqAOEBHAwBAAAAizcBB0ZjKgDhAQwgAQAAAIw3AQdGIzcA4QEeIAEAAACFNwEERgOEAOEBDCABAAAAjjcBB0aDFwDhAQwgAQAAAI83AQdGg1gA4QEMIAEAAACQNwEHRmNaAOEBDCABAAAAkTcBB0Zj/QHhAQwgAQAAAJI3AQdGYy4A4QEMIAEAAACTNwEHRmNNAOEBDCABAAAAlDcBB0bjQADhAQwgAQAAAJU3AQdGgxcA4QEMIAEAAACWNwEHRuMVAOEBHkABAAAAhTcBAkiDGQDnARgwAQAAAJg3EQVGgxkA4QEYMAEAAACYNwEHRkMdAOEBFgQBAAAAmjcBB0aDTADhAQwgAQAAAJs3AQdG4zoA4QEMIAEAAACcNwEHRqMYAOEBGkABAAAAgTcBBUZjfQDhAR4gAQAAAJ43AQZGA0AA4QEaQAEAAACeNwEFRuMVAOEBGkABAAAAnjcBBUYDQADhARpAAQAAAJ83AUVG4xUA4QEaQAEAAACgNwFFRkN0AOEBDCABAAAAnjcBBUbjFQDhARpAAQAAAIE3AQVGY8AA4QEMIAEAAAClNwEHRoMmAdkBHgABAAAApjcBBkbjhwHhAQwgAQAAAKc3AQdG4+gB4QEMIAEAAACoNwEHRmNWAOEBGkABAAAApjcBBUYjHgDhAQwgAQAAAKo3AQdGI3MA4QEWBAEAAACrNwEHRuMVAOEBGkABAAAApjcBBUYDVQHhAQwgAQAAAK03AQdGg/0B4QEMIAEAAACuNwEHRiMNAeEBDCABAAAArzcBB0YDawDhAQwgAQAAALA3AQdGoxgA4QEWBAEAAACxNwEHRmOZAOEBDCABAAAAsjcBB0aDuQDhARYEAQAAALM3AQdGQyAA4QEMIAEAAAC0NwEHRmMbAOEBDCABAAAAtTcBB0bDFwDhAQwgAQAAALY3AQdGgxcA4QEiAAEAAAC3NwEGRmMkAOEBDCABAAAAuDcBB0YjNwDhAQwgAQAAALg3AQVG4zcB4QEMIAEAAAC6NwEHRmMaAOEBDCABAAAAuzcBB0aD0wDhAQwgAQAAALw3AQdGI1EA4QEMIAEAAAC9NwEHRqMbAOEBDCABAAAAvjcBB0YjHgDhAQwgAQAAAL83AQdGQx4A4QEMIAEAAADANwEHRsMYAOEBFgQBAAAAwTcBB0bDIADhARwMAQAAAMI3AQdGw0IA4QEMIAEAAADDNwEHRuMqAOEBDCABAAAAxDcBB0ZjpADhAQwgAQAAAMU3AQdGQ5AB4QEeIAEAAADGNwEGRsNWAOEBFgQBAAAAyjcBBUbDSgDhARYEAQAAAMo3AQVG4xUA4QEaQAEAAADGNwEFRkPgAeEBFgQBAAAAyjcBBUbDQADhARYEAQAAAMs3AQdGQyAA4QEMIAEAAADMNwEHRsMoAOEBHAwBAAAAzTcBB0ZjGwDhAQwgAQAAAM43AQdG4/YA4QEMIAEAAADPNwEHRmNLAOEBDCABAAAA0DcBB0iD9ADnARgwAQAAANE3EQVGg/QA4QFMIAEAAADRNwECRgNjAOEBDCABAAAA0jcBBUZDgADhASIAAQAAANQ3AQZGoyMA4QEWBAEAAADVNwEHRmMUAOEBFgQBAAAA1jcBB0aDLADhAQwgAQAAANc3AQdIY0sA5wEYMAEAAADYNxEFRmNLAOEBGDABAAAA2DcBB0ZjFADhAQwgAQAAANo3AQdGIzQA4QEMIAEAAADbNwEHRqNIAOEBDCABAAAA3DcBB0ZDQgDhAR5AAQAAAN03AQZGgyUA4QEMIAEAAADeNwEHRiMlAOEBDCABAAAA3zcBB0YDdgDhAQwgAQAAAOA3AQdGo0wA4QEMIAEAAADhNwEHRgNPAOEBDCABAAAA4jcBB0ajoADhAQwgAQAAAOM3AQdGoxgA4QEgQAEAAADdNwECRmMqAOEBDCABAAAA5TcBB0YDRgDhAQwgAQAAAOY3AQdG4xUA4QEeQAEAAADdNwECRsPoAOEBDCABAAAA6DcBB0aD9ADhAQwgAQAAAOk3AQdG478A4QEMIAEAAADqNwEHRoMlAOEBDCABAAAA6zcBB0aDKQDhAQwgAQAAAOw3AQdGI1cA4QEMIAEAAADtNwEHRiMlAOEBDCABAAAA7jcBB0ZjQgDhAR5AAQAAAN03AQRG44oA4QEMIAEAAADwNwEHRkM4AOEBDCABAAAA8TcBB0YjGADhAQwgAQAAAPI3AQdGwxkA4QEMIAEAAADzNwEHRqPYAOEBDCABAAAA9DcBB0ajOwDhAQwgAQAAAPU3AQdGw9gA4QEMIAEAAAD2NwEHRmMkAOEBDCABAAAA9zcBB0bDZADhAQwgAQAAAPg3AQdGoycA4QEMIAEAAAD5NwEHRmNjAOEBDCABAAAA+jcBB0ZDVADhAQwgAQAAAPs3AQdGI6wA4QEeIAEAAAD8NwEGRqMlAOEBDCABAAAA/TcBB0YjQADhAQwgAQAAAP43AQdGQ04A4QEMIAEAAAD/NwEHRkMoAOEBDCABAAAAADgBB0YDWADhAQwgAQAAAPw3AQVG4xUA4QEaQAEAAAD8NwEFRoMWAOEBDCABAAAAxjcBBUaDTQDhARYEAQAAAAQ4AQdGA1YA4QEMIAEAAAAFOAEHRgNGAOEBDCABAAAABjgBB0aj0gDhAR4AAQAAAAc4AQZGA4YA4QEWBAEAAAAIOAEHRoNMAOEBDCABAAAACTgBB0bDlQHhAQwgAQAAAAo4AQdGg4sB4QEMIAEAAAALOAEHRiMrAOEBDCABAAAADDgBB0bjVwDhAR4AAQAAAA04AQZG4xUA4QEaQAEAAAANOAEFRgNPAOEBDCABAAAADzgBB0aDRADhAQwgAQAAABA4AQdGw5IA4QEMIAEAAAAROAEHRmPaANkBGkABAAAAEjgBB0aDKADhAQwgAQAAABM4AQdG4zoA4QEMIAEAAAAUOAEHRgM0AOEBFgQBAAAAFTgBB0ZjIgDhARYEAQAAABY4AQdGYxoA4QEeAAEAAAAXOAEGRmMfAOEBGkABAAAAFzgBBUajGgDhASIAAQAAABk4AQZGwxoA4QEcDAEAAAAaOAEHRuMVAOEBGkABAAAAFzgBBUajHwDhAR4AAQAAABc4AQRGIy0A4QEMIAEAAAAdOAEHRsOFAOEBDCABAAAAHjgBB0ij/QHnARgwAQAAAB84EQVGo/0B4QEYMAEAAAAfOAEHRsP9AdkBDCABAAAAITgBB0bjWgDhAQwgAQAAACI4AQdGA6UA4QEWBAEAAAAjOAEHSeP9AdUBDCABAAAAJDgBBUkD/gHZAQwgAQAAACQ4AQVK4z8A4QEeAAEAAAAmOAEGSkMoAOEBDCABAAAAJzgBB0pDKgDhAQwgAQAAACg4AQdKw3MA4QEeIAEAAAApOAEGSuMVAOEBGkABAAAAKTgBBUqjPgHhAQwgAQAAACs4AQdKAyYA4QEMIAEAAAAsOAEHSuOuAOEBHgABAAAALTgBBkqDzwDhAR4AAQAAAC04AQRKQyMB4QEWBAEAAAAvOAEHSqNSAOEBDCABAAAAMDgBB0rDVgDhARYEAQAAADY4AQVKw0oA4QEWBAEAAAA2OAEFSmMbAOEBDCABAAAAMzgBB0rjPwDhARpAAQAAADQ4AQdKA1gA4QEaQAEAAAA0OAEFSuP+AOEBFgQBAAAANjgBB0ojsgDhAR4AAQAAADc4AQZK4x4A4QEMIAEAAAA4OAEHSuMVAOEBGkABAAAANzgBBUpjkQDhAR4AAQAAADc4AQRKY3wA4QEaQAEAAAA7OAEHSqNGAOEBDCABAAAAPDgBB0rDMADhARpAAQAAADs4AQVK4zsB4QEiAMEAAAA+OAEGSkMpAOEBAiRBAgAAPzgBF0rjKADhAQwgAQAAAEA4AQdKIyAA4QEMIEEDAABDOAEHSiOPAOEBIgDhAAAAQjgBBkoDlwDhAQIkYQIAAEM4ARdKY34A4QEMIAEAAABEOAEHSsMxAOEBHAwBAAAARTgBB0rjPwDhAR4AAQAAAEY4AQZKQygA4QEMIAEAAABHOAEHSgNYAOEBHgABAAAARjgBBErjFQDhARpAAQAAAEY4AQVKQ7oA4QEeAAEAAABKOAEGSqMmAOEBGkABAAAASjgBBUrDVgDhARYEAQAAAE84AQVKw0oA4QEWBAEAAABPOAEFSuMVAOEBGkABAAAASjgBBUpjogDhARYEAQAAAE84AQdKI1cA4QEWBAEAAABQOAEHSgNLAOEBIgABAAAAUTgBBkqj+ADhARYEAQAAAFI4AQdKY3oA4QEeAAEAAABTOAEGSgNAAOEBFgQBAAAAVDgBB0pD8AHhAS4EAQAAAFU4AQZKw6YA4QEMIAEAAABWOAEHSmMkAOEBHgABAAAAVzgBBkpjKgDhAQwgAQAAAFg4AQdKIzcA4QEaQAEAAABXOAEFSuN4AOEBDCABAAAAWjgBB0pjiwDhAR4AAQAAAFs4AQZK4xUA4QEaQAEAAABVOAEFSoPTAOEBDCABAAAAXTgBB0oDdgDhAR4AAQAAAF44AQZKQygA4QEMIAEAAABfOAEHSuMVAOEBLgABAAAAXjgBAkoDvgDhARYEAQAAAGE4AQdKoxgA4QEgQAEAAABVOAECSuMVAOEBIAABAAAAVTgBAkqDKgDhAQwgAQAAAFU4AQdKo7wA4QEeAAEAAABlOAEGSkMoAOEBDCABAAAAZjgBB0rjFQDhARpAAQAAAGU4AQVKYzEA4QEcDAEAAABoOAEHSuPyAOEBHgABAAAAaTgBBkpjIADhAR4gAQAAAGo4AQZK4xkA4QEgBAEAAABqOAECSuMeAOEBDCABAAAAbDgBB0rjFQDhAS5AAQAAAGo4AQJKoz0A4QEeIAEAAABqOAEESiNGAOEBDCABAAAAbzgBB0pDHADhARYEAQAAAHA4AQdKQxsB4QEeAAEAAABxOAEGSiOhAOEBHkABAAAAcjgBBkrjFQDhAR4AAQAAAHI4AQJK4xkA4QEaQAEAAABxOAEFSuMeAOEBHgABAAAAdTgBBkqDHwDhAQwgAQAAAHY4AQdK4xUA4QEaQAEAAAB1OAEFSuMVAOEBGkABAAAAcTgBBUsj/gEXAgIkAUABAHo4EQVKQ/4B2QECJAECAAB6OAEXSiOEAOEBDCABAAAAezgBB0qDOQDhASwAAQAAAHw4AQZKIx4A4QEMIAEAAAB9OAEHSmPAAOEBFgQBAAAAfjgBB0qDRADhARYEAQAAAH84AQdKQycA4QEMIAEAAACAOAEHTMNOAOEBDCABAAAAgTgBB0zjFQDhAR5AAQAAAMwvAQJMY/4B4QEMIAEAAACDOAEHTONjAOEBDCABAAAAhDgBB0wjkwDhAQwgAQAAAIU4AQdMA38A4QEMIAEAAACOOAEFTENLAOEBDCABAAAAhzgBB0xjLgDhARYEAQAAAIg4AQdMYyAA4QEMIAEAAACJOAEHTAMaAOEBDCABAAAAijgBB0wjGgDhARYEAQAAAIs4AQdMQxoA4QEMIAEAAACMOAEHTEMcAOEBDCABAAAAjTgBB0wDaADhAQwgAQAAAI44AQdM430A4QEeIAEAAACPOAEGTGMmAOEBGkABAAAAkDgBB0zjFQDhARpAAQAAAJA4AQVMoz0A4QEaQAEAAACQOAEFTGNWAOEBGkABAAAAjzgBBUzDMwDhAQwgAQAAAJQ4AQdM438A4QEMIAEAAACPOAEFTKNFAOEBDCABAAAAljgBB0xDkQDhARpAAQAAAJc4AQdMY5EA4QEaQAEAAACXOAEFTOMeAOEBDCABAAAAmTgBB0zjFQDhARpAAQAAAJc4AQVMYzcA4QEaQAEAAACbOAEHTOMeAOEBDCABAAAAnDgBB0wDGgDhARpAAQAAAJs4AQVM4xUA4QEeAAEAAACbOAECTCMuAOEBDCABAAAAnzgBB0zDTgDhAQwgAQAAAKA4AQdMoxYA4QEMIAEAAAChOAEHTCM8AOEBFgQBAAAAojgBB0yDHADhARYEAQAAAKM4AQdMQyAA4QEMIAEAAACkOAEHTMMaAOEBHAwBAAAApTgBB0wDGQDhAQwgAQAAAKY4AQdMgzEA4QEaQAEAAACpOAEFTCMgAOEBGkABAAAAqTgBBUzDNQDhARpAAQAAAKk4AQdM4xUA4QEaQAEAAACpOAEFTOMVAOEBHgABAAAAjzgBAkxjIADhAQwgAQAAAKw4AQdMo2kB4QEMIAEAAACtOAEHTINDAOEBDCABAAAArjgBB0zDPADhARYEAQAAAK84AQdMgxwA4QEWBAEAAACwOAEHTMMaAOEBHAwBAAAAsTgBB0yDIADhAQwgAQAAALI4AQdMQ0kA4QEMIAEAAACzOAEHTGMkAOEBDCABAAAAtDgBB0zjYADhAQwgAQAAALU4AQVMYy4A4QEWBAEAAAC2OAEHTIMcAOEBFgQBAAAAtzgBB0zDGgDhARwMAQAAALg4AQVMwx8A4QEMIAEAAAC5OAEHTKM2AOEBDCABAAAAujgBB0yjJwDhARpAAQAAAL84AUdMgycA4QEaQAEAAADAOAFFTEMrAOEBGkABAAAAwTgBRUzjFQDhARpAAQAAAMI4AUVMgzAA4QEaQAEAAAC/OAEHTKMwAOEBGkABAAAAvzgBBUzDMADhARpAAQAAAL84AQVM4xUA4QEaQAEAAAC/OAEFTANkAOEBDCABAAAAwzgBB0wDLwDhAQwgAQAAAMQ4AQdMYxwA4QEWBAEAAADFOAEHTGPAAOEBDCABAAAAxjgBB0yjTQDhAQwgAQAAALU4AQVMYx4A4QEMIAEAAADIOAEHTMPbAOEBDCABAAAAiTABR0wDIQDhAQwgAQAAAJAwAUVMY5gA4QEMIAEAAADLOAEHTAM2AOEBDCABAAAAzDgBB0xjJADhAQwgAQAAAM04AQdMgzYA4QEWBAEAAADOOAEHTIN2AOEBFgQBAAAAzzgBB0yD/wDhAQwgAQAAAJUwAQVMYyQA4QEMIAEAAADROAEHTKMeAOEBDCABAAAA0jgBB0yDNwDhAQwgAQAAANM4AQdMg/4B4QEMIAEAAADUOAEHTSNcAOEBDCABAAAA1TgBB02DUQDhAQwgAQAAANY4AQdNYyAA4QEWBAEAAADXOAEHTSPBAOEBDCABAAAA2DgBB06j/gGpARYEAQAAANk4AQVPw/4BMgIYMAEAAADaOBEFUOODANkBGDABAAAA2jgBBVCjLgDhAQwgAQAAANw4AQdR48oA4QEMIAEAAADdOAEHUYM1AOEBDCABAAAA3TgBBVGDfgDhAQwgAQAAAN84AQdRIxgA4QEMIAEAAADgOAEHUWMcAOEBFgQBAAAA4TgBB1FjGwDhAQwgAQAAAOI4AQdRQyAA4QEMIAEAAADjOAEHUgOpANkBDCABAAAA5DgBB1IjJgDhAQwgAQAAAOU4AQdS4x4A4QEMIAEAAADmOAEHU8PUANkBDCABAAAA5zgBB1SDPwDnARgwAQAAAOg4EQVVgz8A4QEYMAEAAADoOAEHVcN2AOEBFgQBAAAA6jgBB1VjZwDZATQcAQAAAOs4AQVVo3MB4QEMIAEAAADsOAEHVcNWAOEBFgQBAAAA9DgBBVUjIADhAQwgAQAAAOw4AQVVw0oA4QEWBAEAAAD0OAEFVYMxAOEBGkABAAAA8jgBBVUjIADhARpAAQAAAPI4AQVVwzUA4QEaQAEAAADyOAEHVWMbAOEBDCABAAAA8zgBB1VjMQDhARYEAQAAAPQ4AQdVQx0A4QEMIAEAAAD1OAEHVuP+AdUBNBwBAAAA9jgBBVYD/wFtAjQcAQAAAPc4AQVWI/8B2QEMIAEAAAD4OAEHV8PVAOEBDCABAAAA+TgBB1djlgDhAQwgAQAAAPo4AQdXg2kA4QEMIAEAAAD5OAEFV2MYAOEBDCABAAAA/DgBB1hD/wHSARgwAQAAAP04EQVZY/8B1QEYMAEAAAD9OAEFWSMZAOEBDCABAAAA/zgBB1njhQDZAQwgAQAAAAA5AQdaYyQA5wEYMAEAAAABOREFWWMkAOEBGDABAAAAATkBB1lDHQDhARYEAQAAAAM5AQdZg1EA4QEMIAEAAAAEOQEHWaMdAOEBDCABAAAABTkBB1vjZgDhAQwgAQAAAAY5AQdbg0gA4QEMIAEAAAAHOQEHW6NPAOEBDCABAAAACDkBB1vjJQDhAQwgAQAAAAk5AQdbo0AA4QEMIAEAAAAKOQEHW4MXAOEBGkABAAAACzkBB1vjGQDhARYEAQAAAAw5AQdbAxoA4QEaQAEAAAALOQEFWwMZAOEBDCABAAAADjkBB1uDIQDhARYEAQAAAA85AQdbYxwA4QEWBAEAAAAQOQEHWwMqAOEBDCABAAAACjkBBVtjcgDhAQwgAQAAABI5AQdbg0gA4QEMIAEAAAATOQEHWwMgAOEBDCABAAAAFDkBB1tDGgDhAQwgAQAAABU5AQdb4zoA4QEMIAEAAAAWOQEHW4NeAeEBDCABAAAAFzkBB1uD/wHhAQwgAQAAABg5AQdbQ2gA4QEMIAEAAAAYOQEFW4M4AOEBFgQBAAAAGjkBB1vjRQDZARYEAQAAABs5AQdbA3oA4QEWBAEAAAAcOQEHW0MgAOEBDCABAAAAHTkBB1sjegDhARwMAQAAAB45AQdbg3UA4QEMIAEAAAAfOQEHWyMbAOEBDCABAAAAIDkBB1vjQADhAQwgAQAAACU5AQVbgxcA4QEiBAEAAAAiOQEGW6MkAOEBHAwBAAAAIzkBB1tjGwDhAQwgAQAAACQ5AQdbIzYA4QEMIAEAAAAlOQEHW4NnAOEBFgQBAAAAJjkBB1sjfgDhARYEAQAAACc5AQdbA0sAIQIWBAEAAAAoOQEFWwNFACECFgQBAAAAKTkBBVuD8QHhAQwgAQAAACo5AQdbAxkA4QEMIAEAAAArOQEHW8PrAOEBHgABAAAALDkBBluDIQDhASIAAQAAAC05AQZbYyQA4QEiAAEAAAAuOQEGW0NkAOEBDCABAAAALzkBB1sjPADhARYEAQAAADA5AQdbI5IA4QEWBAEAAAAxOQEHW2NJAOEBIgABAAAAMjkBBlvjIQDhAQwgAQAAADM5AQdb4yEA4QEMIAEAAAA0OQEHWyMaAOEBFgQBAAAANTkBB1tjLgDhARYEAQAAADY5AQdbwxoA4QEcDAEAAAA3OQEHW4MgAOEBDCABAAAAODkBB1sjJQDhAQwgAQAAADk5AQdbQ1EA4QEiIAEAAAA6OQEGW4MXAOEBGkABAAAAOzkBB1vjFQDhARpAAQAAADs5AQVbAxkA4QEMIAEAAAA9OQEHXMOeAOEBDCABAAAAPjkBB1wDNADhARYEAQAAAD85AQdcgxcA4QEWBAEAAABAOQEHXCOEAOEBDCABAAAAQTkBB1xjHADhARYEAQAAAEI5AQdcQzkA4QEWBAEAAABDOQEHXOMpAOEBIgABAAAARDkBBlyDHADhASIAAQAAAEU5AQZcgxcA4QEWBAEAAABGOQEHXKP/AeEBDCABAAAASDkBBVzjFwDhAQwgAQAAAEg5AQdco1gA4QEMIAEAAABJOQEHXCM3AOEBDCABAAAASTkBBVzDJQDhAQwgAQAAAEs5AQdcI1IA4QEMIAEAAABLOQEFXOM6AOEBDCABAAAATTkBB1xjHADhARYEAQAAAE45AQdcI14A4QEiIAEAAABPOQEGXCNXAOEBFgQBAAAAUDkBB1xDWgDhAQwgAQAAAE85AQVcgyQA4QEMIAEAAABSOQEHXKMhAOEBDCABAAAAUzkBB1zjcADhAQwgAQAAAFQ5AQdcQ9YA2QEMIAEAAABVOQEHXOM6AOEBDCABAAAAVjkBB1xjOgDhAR4AAQAAAFc5AQZcAyEA4QEMIAEAAABXOQEFXOMVAOEBGkABAAAAVzkBBVxjpADhARYEAQAAAFo5AQdc4ygA4QEWBAEAAABbOQEHXCOPAOEBFgQBAAAAXDkBB1xjpADhARYEAQAAAF05AQdc4ygA4QEWBAEAAABeOQEHXcP/AdIBGDABAAAAXzkRBV7j/wHVAQwgAQAAAGA5AQVeAyoAYQIMIAEAAABhOQEFXmMZAOEBFgQBAAAAYjkBB17DKADhARwMAQAAAGM5AQde4xkA4QEWBAEAAABkOQEHXsMZAOEBFgQBAAAAZTkBB16jJgDhASIAAQAAAGY5AQZegycA4QEWBAEAAABnOQEHXuMZAOEBFgQBAAAAaDkBB15DIADhAQwgAQAAAGk5AQdewxkA4QEWBAEAAABqOQEHXmMbAOEBDCABAAAAazkBB16DIgDhARwMAQAAAGw5AQde4xkA4QEWBAEAAABtOQEHXsMZAOEBFgQBAAAAbjkBB17jFQDhARYEAQAAAG85AQdegzEA4QEsAAEAAABwOQEGXsMZAOEBFgQBAAAAcTkBB16DIgDhARwMAQAAAHI5AQde4xkA4QEWBAEAAABzOQEHXkMxAOEBFgQBAAAAdDkBB17DGQDhARYEAQAAAHU5AQdegyIA4QEcDAEAAAB2OQEHXqMmAOEBFgQBAAAAdzkBB17jGQDhARYEAQAAAHg5AQdegyEA4QEWBAEAAAB5OQEHXsMZAOEBFgQBAAAAejkBB15DIADhAQwgAQAAAHs5AQdewxkA4QEWBAEAAAB8OQEHXuMZAOEBFgQBAAAAfTkBB17jGQDhARYEAQAAAH45AQdegycA4QEWBAEAAAB/OQEHXsMZAOEBFgQBAAAAgDkBB17jGQDhARYEAQAAAIE5AQdewxkA4QEWBAEAAACCOQEHXqMYAOEBFgQBAAAAgzkBB17jGQDhARYEAQAAAIQ5AQdeYxwA4QEWBAEAAACFOQEHXsMZAOEBFgQBAAAAhjkBB16DJwDhARYEAQAAAIc5AQdewygA4QEcDAEAAACIOQEHXuMZAOEBFgQBAAAAiTkBB14jGgDhARYEAQAAAIo5AQde4xkA4QEWBAEAAACLOQEHXmMbAOEBDCABAAAAjDkBB17jFQDhARYEAQAAAI05AQdegxcA4QEWBAEAAACOOQEHXuMZAOEBFgQBAAAAjzkBB16DSgDhARYEAQAAAJA5AQde40wA4QEWBAEAAACROQEHXqMmAOEBFgQBAAAAkjkBB16DIQDhARYEAQAAAJM5AQde4xkA4QEWBAEAAACUOQEHXsOTAOEBDCABAAAAlTkBB15DJQDhARYEAQAAAJY5AQdeYx8A4QEWBAEAAACXOQEHXiNBAOEBFgQBAAAAmDkBB17jFQDhARYEAQAAAJk5AQdeg0YA4QEWBAEAAACaOQEHXsMZAOEBFgQBAAAAmzkBB14jVwDhARYEAQAAAJw5AQdeA2IA4QEWBAEAAACdOQEHXkMgAOEBDCABAAAAnjkBB17DGQDhARYEAQAAAJ85AQdegyIA4QEcDAEAAACgOQEHXmMfAOEBFgQBAAAAoTkBB15DIADhAQwgAQAAAKI5AQdeYxwA4QEWBAEAAACjOQEHXqMqAOEBHAwBAAAApDkBB15jHADhARYEAQAAAKU5AQdeoyoA4QEcDAEAAACmOQEHXkMlAOEBFgQBAAAApzkBB17DGQDhARYEAQAAAKg5AQdeozAA4QEWBAEAAACpOQEHXuN0AOEBFgQBAAAAqjkBB17jGQDhARYEAQAAAKs5AQdeQyAA4QEMIAEAAACsOQEHXmMcAOEBFgQBAAAArTkBB16jKgDhARwMAQAAAK45AQdeA0AA4QEWBAEAAACvOQEHXkM6AOEBFgQBAAAAsDkBB17DGQDhARYEAQAAALE5AQdeYx8A4QEWBAEAAACyOQEHXuMZAOEBFgQBAAAAszkBB14jGgDhARYEAQAAALQ5AQdeA0AA4QEWBAEAAAC1OQEHXsMYAOEBFgQBAAAAtjkBB17DGQDhARYEAQAAALc5AQde4xUA4QEWBAEAAAC4OQEHXmMxAOEBHAwBAAAAuTkBB17DGQDhARYEAQAAALo5AQdeoyYA4QEWBAEAAAC7OQEHXuMVAOEBFgQBAAAAvDkBB15jGwDhAQwgAQAAAL05AQde4xUA4QEWBAEAAAC+OQEHXmMbAOEBDCABAAAAvzkBB17jGQDhARYEAQAAAMA5AQdegyEA4QEWBAEAAADBOQEHXqMkAOEBHAwBAAAAwjkBB16DIQDhARYEAQAAAMM5AQdeQyAA4QEMIAEAAADEOQEHXsMZAOEBFgQBAAAAxTkBB15jKQDhARYEAQAAAMY5AQVeYyIA4QEWBAEAAADHOQEHXsMZAOEBFgQBAAAAyDkBB16DIgDhARwMAQAAAMk5AQdegyEA4QEWBAEAAADKOQEHXuNZAOEBGkABAAAAyzkBB15DMQDhARYEAQAAAMw5AQdeYx8A4QEWBAEAAADNOQEHXmMfAOEBFgQBAAAAzjkBB14DWgDhARpAAQAAAMs5AQVegxcA4QEWBAEAAADQOQEHXuMZAOEBFgQBAAAA0TkBB14jGgDhARYEAQAAANI5AQdeYyIA4QEWBAEAAADTOQEHXsMZAOEBFgQBAAAA1DkBB17DGQDhARYEAQAAANU5AQdeQzEA4QEWBAEAAADWOQEHXsMoAOEBHAwBAAAA1zkBB14DhgDhARYEAQAAANg5AQdewxkA4QEWBAEAAADZOQEHXoMiAOEBHAwBAAAA2jkBB16DIQDhARYEAQAAANs5AQdeoyQA4QEcDAEAAADcOQEHXmMbAOEBDCABAAAA3TkBB17DGQDhARYEAQAAAN45AQdeoxgA4QEWBAEAAADfOQEHXuMZAOEBFgQBAAAA4DkBB17jFQDhARYEAQAAAOE5AQdeYzEA4QEcDAEAAADiOQEHXmMbAOEBDCABAAAA4zkBB15jHwDhARYEAQAAAOQ5AQdeA4YA4QEWBAEAAADlOQEHXmMZAOEBFgQBAAAA5jkBB17DGQDhARYEAQAAAOc5AQdewxkA4QEWBAEAAADoOQEHXmMbAOEBDCABAAAA6TkBB16DIgDhARwMAQAAAOo5AQdeQyUA4QEWBAEAAADrOQEHXmMfAOEBFgQBAAAA7DkBB16DIQDhARYEAQAAAO05AQdeoyQA4QEcDAEAAADuOQEHXmMbAOEBDCABAAAA7zkBB17DGQDhARYEAQAAAPA5AQdeQ/MA4QEMIAEAAADxOQEHXiMaAOEBFgQBAAAA8jkBB16DJwDhARYEAQAAAPQ5AUdeozAA4QEWBAEAAAD0OQEHXkMgAOEBDCABAAAA9TkBB17DGQDhARYEAQAAAPY5AQde4xUA4QEWBAEAAAD3OQEHXqMmAOEBFgQBAAAA+DkBB15DIADhAQwgAQAAAPk5AQdewxkA4QEWBAEAAAD6OQEHXoMiAOEBHAwBAAAA+zkBB16DZADhARYEAQAAAPw5AQdeoxgA4QEWBAEAAAD9OQEHXiNMAOEBFgQBAAAA/jkBB15jGwDhAQwgAQAAAP85AQdeAyEA4QEcDAEAAAAAOgEHXoNkAOEBFgQBAAAAAToBB14DhgDhARYEAQAAAAI6AQdeA0AA4QEWBAEAAAADOgEHXiMeAOEBHgABAAAABDoBBl5DOgDhARYEAQAAAAU6AQdeYygA4QEaQAEAAAAEOgEFXuMVAOEBGkABAAAABDoBBV6DMQDhARYEAQAAAAg6AQdeQyUA4QEWBAEAAAAJOgEHXoMnAOEBFgQBAAAACjoBB16jMADhARYEAQAAAAs6AQdeo6gA4QEaQAEAAAAMOgEHXmMfAOEBIAABAAAADDoBAl4DQADhARYEAQAAAA46AQdeA0AA4QEWBAEAAAAPOgEHXuMVAOEBGkABAAAADDoBBV4DZwDhARpAAQAAAAw6AQVewxkA4QEWBAEAAAASOgEHXoMiAOEBHAwBAAAAEzoBB17DGQDhARYEAQAAABQ6AQdeg1gA4QEWBAEAAAAVOgEHXuMVAOEBFgQBAAAAFjoBB15jMQDhARwMAQAAABc6AQdeYxsA4QEMIAEAAAAYOgEHXuMVAOEBFgQBAAAAGToBB16jsADhARYEAQAAABo6AQdeo6AA4QEsAAEAAAAbOgEGXmNPAOEBLAQBAAAAHDoBBl6jtADhAQwgAQAAAB06AQdewxkA4QEWBAEAAAAeOgEHXoMiAOEBHAwBAAAAHzoBB17jFQDhARYEAQAAACA6AQdeYzEA4QEcDAEAAAAhOgEHXmMpAOEBFgQBAAAAIjoBB14jtQDhARpAAQAAACM6AQde4xkA4QEWBAEAAAAkOgEHXkNGAOEBGkABAAAAIzoBBV5jPwDhARpAAQAAACY6AQdewxkA4QEWBAEAAAAnOgEHXuMVAOEBIAABAAAAJjoBAl5jJQDhARpAAQAAACY6AQVeQzoA4QEWBAEAAAAqOgEHXsMYAOEBFgQBAAAAKzoBB16DJwDhARYEAQAAACw6AQdegycA4QEWBAEAAAAtOgEHXuMZAOEBFgQBAAAALjoBB16DawDhARpAAQAAAC86AQde4xUA4QEaQAEAAAAvOgEFXmMlAOEBGkABAAAALzoBBV7jHgDhARYEAQAAADI6AQdeYxkA4QEWBAEAAAAzOgEHXmMZAOEBFgQBAAAANDoBB15DJQDhARYEAQAAADU6AQdegycA4QEWBAEAAAA2OgEHXuMVAOEBFgQBAAAANzoBB15jMQDhARwMAQAAADg6AQdeA08A4QEaQAEAAAA5OgEHXiNlAOEBGkABAAAAOToBBV5DFADhARYEAQAAADs6AQde4xUA4QEWBAEAAAA8OgEHXmMxAOEBHAwBAAAAPToBB16DMQDhARYEAQAAAD46AQdeoysA4QEaQAEAAAA/OgEHXuMZAOEBFgQBAAAAQDoBB17jFQDhARpAAQAAAD86AQVeQ0YA4QEaQAEAAAA/OgEFXgOGAOEBFgQBAAAAQzoBB15jHwDhARYEAQAAAEQ6AQdewzkA4QEWBAEAAABFOgEHXkO3AOEBGkABAAAARjoBB16DlADhARpAAQAAAEY6AQVeIyUA4QEWBAEAAABIOgEHXkMlAOEBFgQBAAAASToBB15jGwDhAQwgAQAAAEo6AQdeg2QA4QEWBAEAAABLOgEHXkOmAOEBGkABAAAATDoBB16jSgDhARpAAQAAAEw6AQVewzMA4QEaQAEAAABOOgEHXkM6AOEBFgQBAAAATzoBB15jKADhARpAAQAAAE46AQVe40wA4QEaQAEAAABROgEHXmM4AOEBGkABAAAAUToBBV5jGQDhARYEAQAAAFM6AQdeYxkA4QEWBAEAAABUOgEHXuMVAOEBFgQBAAAAVToBB15DJQDhARYEAQAAAFY6AQdewxkA4QEWBAEAAABXOgEHXmMbAOEBDCABAAAAWDoBB17DGQDhARYEAQAAAFk6AQde4z8A4QEaQAEAAABaOgEHXgNAAOEBFgQBAAAAWzoBB15DWADhARYEAQAAAFw6AQdeYxkA4QEWBAEAAABdOgEHXgN2AOEBGkABAAAAXjoBB14DWADhARpAAQAAAF46AQVeo7AA4QEaQAEAAABgOgEHXqMYAOEBFgQBAAAAYToBB17DHADhARpAAQAAAGA6AQVegzEA4QEWBAEAAABjOgEHXmMZAOEBFgQBAAAAZDoBB14DXADhARpAAQAAAGU6AQdeoxgA4QEWBAEAAABmOgEHXuMYAOEBGkABAAAAZToBBV7jGQDhARYEAQAAAGg6AQde41YA4QEcDAEAAABpOgEHXmPAAOEBFgQBAAAAajoBB15DvwDhARpAAQAAAGs6AQVeY1YA4QEgAAEAAABrOgECXuMVAOEBGkABAAAAazoBBV7j4wDhARpAAQAAAGs6AQVe4xkA4QEWBAEAAABvOgEHXuMVAOEBFgQBAAAAcDoBB17jGQDhARYEAQAAAHE6AQdeYykA4QEWBAEAAAByOgEHXiMZAOEBGkABAAAAczoBB17jGQDhARYEAQAAAHQ6AQdegycA4QEWBAEAAAB1OgEHXqMwAOEBFgQBAAAAdjoBB14DhgDhARYEAQAAAHc6AQdegycA4QEWBAEAAAB4OgEHXuMVAOEBFgQBAAAAeToBB15jMQDhARwMAQAAAHo6AQdeYx8A4QEWBAEAAAB7OgEHXqMaAOEBFgQBAAAAfDoBB15jHADhARYEAQAAAH06AQdeoyoA4QEcDAEAAAB+OgEHXmMbAOEBDCABAAAAfzoBB15DKgDhARYEAQAAAIA6AQdeg1wA4QEcDAEAAACBOgEHXmMbAOEBDCABAAAAgjoBB14jIADhAQwgAQAAAIQ6AQVeA5cA4QEMIAEAAACEOgEHXoMxAOEBFgQBAAAAhToBB15DKgDhARpAAQAAAIY6AQdeoxgA4QEWBAEAAACHOgEHXoMqAOEBGkABAAAAhjoBBV7DGQDhARYEAQAAAIk6AQdeoyYA4QEWBAEAAACKOgEHXkMgAOEBDCABAAAAizoBB17DGQDhARYEAQAAAIw6AQdeYxsA4QEMIAEAAACNOgEHXoMiAOEBHAwBAAAAjjoBB16jJgDhARYEAQAAAI86AQde4xUA4QEWBAEAAACQOgEHXmMbAOEBDCABAAAAkToBB14jGgDhARYEAQAAAJI6AQdewxoA4QEcDAEAAACTOgEHXqMmAOEBFgQBAAAAlDoBB17DGQDhARYEAQAAAJU6AQde4xkA4QEWBAEAAACWOgEHXmMfAOEBFgQBAAAAlzoBB14jTwDhARYEAQAAAJg6AQdewxkA4QEWBAEAAACZOgEHXgOGAOEBFgQBAAAAmjoBB16jigDhARYEAQAAAJs6AQdeYxsA4QEMIAEAAACcOgEHXsMZAOEBFgQBAAAAnToBB15jHADhARYEAQAAAJ46AQdeoyoA4QEcDAEAAACfOgEHXkMdAOEBFgQBAAAAoDoBB16DXADhARYEAQAAAKE6AQdeI1cA4QEWBAEAAACiOgEHXoOFAOEBGkABAAAAozoBB15DxwDhAQwgAQAAAG47AQVeoxoA4QEiAAEAAAClOgEGXoMuAOEBDCABAAAA6EMBBV7DRgDhARYEAQAAAKc6AQdegycA4QEWBAEAAACpOgFHXqMwAOEBFgQBAAAAqToBB17DGgDhARwMAQAAAKo6AQdeo6QA4QEWBAEAAACrOgEHXkMxAOEBFgQBAAAArDoBB14DkADhARpAAQAAAK06AQde4xUA4QEaQAEAAACtOgEFXoNJAeEBGkABAAAArToBBV7DGQDhARYEAQAAALA6AQdegzEA4QEWBAEAAACxOgEHXiN9AOEBDCABAAAAsjoBB16DNgDhARYEAQAAALM6AQdeYxsA4QEMIAEAAAC0OgEHXoNcAOEBFgQBAAAAtToBB15jGwDhAQwgAQAAALY6AQdegz0A4QEWBAEAAAC3OgEHXmMfAOEBFgQBAAAAuDoBB14jegDhARwMAQAAALk6AQdeYxsA4QEMIAEAAAC6OgEHXgNYAOEBDCABAAAAsjoBBV7DGQDhARYEAQAAALw6AQdeY8EA4QEaQAEAAAC9OgEHXmNWAOEBFgQBAAAAvjoBB17jawDhARpAAQAAAL06AQVew/gA4QEaQAEAAADAOgEHXgNxAOEBGkABAAAAwToBB16jJgDhASAAAQAAAME6AQJe4xUA4QEaQAEAAADBOgEFXiNxAOEBGkABAAAAwToBBV4DKQDhARpAAQAAAMU6AQdeYxkA4QEWBAEAAADGOgEHXsMjAOEBGkABAAAAxToBBV5DJQDhARYEAQAAAMg6AQdeYxsA4QEMIAEAAADJOgEHXuMeAOEBGkABAAAAyjoBB15jHwDhARYEAQAAAMs6AQdeAyoA4QEaQAEAAADKOgEFXkPRAOEBHAwBAAAAzToBB17jGQDhARYEAQAAAM46AQdeQzoA4QEWBAEAAADPOgEHXqNIAOEBGkABAAAA0DoBB14DQADhARYEAQAAANE6AQdew1QA4QEaQAEAAADQOgEFXuMZAOEBFgQBAAAA0zoBB17DGQDhARYEAQAAANQ6AQdeYx8A4QEWBAEAAADVOgEHXmMfAOEBFgQBAAAA1joBB16jGADhARYEAQAAANc6AQdewxkA4QEWBAEAAADYOgEHXoMdAOEBFgQBAAAA2ToBB16jGADhARYEAQAAANo6AQdeoyQA4QEWBAEAAADbOgEHXsMZAOEBFgQBAAAA3DoBB15jGwDhAQwgAQAAAN06AQdegyIA4QEcDAEAAADeOgEHXqMaAOEBFgQBAAAA3zoBB16DJwDhARYEAQAAAOA6AQdeozAA4QEWBAEAAADhOgEHXuMZAOEBFgQBAAAA4joBB14jbQDhARYEAQAAAOM6AQdeg1wA4QEcDAEAAADkOgEHXmMbAOEBDCABAAAA5ToBB16DIQDhARYEAQAAAOY6AQdeYxsA4QEMIAEAAADnOgEHXsMZAOEBFgQBAAAA6DoBB16DIgDhARwMAQAAAOk6AQde4xkA4QEWBAEAAADqOgEHXoMXAOEBFgQBAAAA6zoBB17jGQDhARYEAQAAAOw6AQdegyEA4QEWBAEAAADtOgEHXuMVAOEBFgQBAAAA7joBB15jMQDhARwMAQAAAO86AQde4zIA4QEWBAEAAADwOgEHXuMZAOEBFgQBAAAA8ToBB17jGQDhARYEAQAAAPI6AQdeYyIA4QEWBAEAAADzOgEHXkMlAOEBFgQBAAAA9DoBB15DJQDhARYEAQAAAPU6AQde4xUA4QEWBAEAAAD2OgEHXsMZAOEBFgQBAAAA9zoBB15jGwDhARpAAQAAAPg6AQdeQysA4QEaQAEAAAD4OgEFXuMVAOEBFgQBAAAA+joBB15jMQDhARwMAQAAAPs6AQdeA0AA4QEWBAEAAAD8OgEHXiOSAOEBDCABAAAA/ToBB16jGADhARYEAQAAAP46AQdewygA4QEcDAEAAAD/OgEHXsMXAOEBFgQBAAAAADsBB17DGgDhARwMAQAAAAE7AQdeoxgA4QEWBAEAAAACOwEHXoMnAOEBIgABAAAAAzsBBl6jGADhARYEAQAAAAQ7AQdeQzEA4QEWBAEAAAAFOwEHXsMZAOEBFgQBAAAABjsBB15jIADhARYEAQAAAAc7AQdegycA4QEWBAEAAAAIOwEHXqMaAOEBFgQBAAAACTsBB15DIADhAQwgAQAAAAo7AQde4xkA4QEWBAEAAAALOwEHXmMbAOEBDCABAAAADDsBB17DGQDhARYEAQAAAA07AQdeYx8A4QEWBAEAAAAOOwEHXmMcAOEBFgQBAAAADzsBB15jGwDhAQwgAQAAABA7AQdewxkA4QEWBAEAAAAROwEHXmMcAOEBIgABAAAAEjsBBl6jKgDhARwMAQAAABM7AQdeYxsA4QEMIAEAAAAUOwEHXuMZAOEBFgQBAAAAFTsBB15jHwDhARYEAQAAABY7AQdewxkA4QEWBAEAAAAXOwEHXuMZAOEBFgQBAAAAGDsBB17jGQDhARYEAQAAABk7AQdewxcA4QEWBAEAAAAaOwEHXsMaAOEBHAwBAAAAGzsBB16jGADhARYEAQAAABw7AQdeAzoA4QEMIAEAAAAdOwEHXuMZAOEBFgQBAAAAHjsBB16DIQDhARYEAQAAAB87AQdeQzEA4QEWBAEAAAAgOwEHXuMZAOEBFgQBAAAAITsBB17jGQDhARYEAQAAACI7AQde4xUA4QEWBAEAAAAjOwEHXuMZAOEBFgQBAAAAJDsBB15jKQDhARYEAQAAACU7AQdewxkA4QEWBAEAAAAmOwEHXoMiAOEBHAwBAAAAJzsBB14DQADhARYEAQAAACg7AQdeoxoA4QEWBAEAAAApOwEHXsMaAOEBHAwBAAAAKjsBB17DFwDhARYEAQAAACs7AQdeQyAA4QEMIAEAAAAsOwEHXsMaAOEBHAwBAAAALTsBB17jGQDhARYEAQAAAC47AQdewxkA4QEWBAEAAAAvOwEHXkM6AOEBFgQBAAAAMDsBB17jFQDhARYEAQAAADE7AQdeYzEA4QEcDAEAAAAyOwEHXgOGAOEBFgQBAAAAMzsBB16jsgDhARYEAQAAADQ7AQdegyEA4QEWBAEAAAA1OwEHXuMZAOEBFgQBAAAANjsBB16jGgDhARYEAQAAADc7AQdew4wA4QEaQAEAAAA4OwEHXuMVAOEBGkABAAAAODsBBV5jqQDhARpAAQAAADg7AQVewxkA4QEWBAEAAAA7OwEHXuMZAOEBFgQBAAAAPDsBB17jGQDhARYEAQAAAD07AQde4xkA4QEWBAEAAAA+OwEHXuMZAOEBFgQBAAAAPzsBB17jGQDhARYEAQAAAEA7AQdeI0UA4QEaQAEAAABBOwEHXgNAAOEBFgQBAAAAQjsBB14DWADhARpAAQAAAEE7AQVe4xUA4QEaQAEAAABBOwEFXoNcAOEBFgQBAAAARTsBB16DYwDhARYEAQAAAEY7AQdeY2kA4QEcDAEAAABHOwEHXmMbAOEBDCABAAAASDsBB16DKQDhARpAAQAAAEk7AQdeYx8A4QEgQAEAAABJOwECXuMVAOEBHgABAAAASTsBAl4DKgDhARpAAQAAAEk7AQVegzEA4QEWBAEAAABNOwEHXoMXAOEBGkABAAAATjsBB14DGgDhARpAAQAAAE47AQVegycA4QEWBAEAAABQOwEHXoMhAOEBFgQBAAAAUTsBB15jGwDhAQwgAQAAAFI7AQde4xkA4QEWBAEAAABTOwEFXoMcAOEBFgQBAAAAVDsBB17DGgDhARwMAQAAAFU7AQdeY1YA4QEWBAEAAABWOwEHXkM8AOEBGkABAAAAVzsBB16DJwDhARYEAQAAAFg7AQdeQysA4QEaQAEAAABXOwEFXkMlAOEBFgQBAAAAWjsBB16jGADhARYEAQAAAFs7AQdegycA4QEWBAEAAABcOwEHXqMwAOEBFgQBAAAAXTsBB14DGQDhAQwgAQAAAF47AQdeYxwA4QEWBAEAAABfOwEHXqMqAOEBHAwBAAAAYDsBB15jGwDhAQwgAQAAAGE7AQdewxkA4QEWBAEAAABiOwEHXsMZAOEBFgQBAAAAYzsBB17jGQDhARYEAQAAAGQ7AQdeYx8A4QEWBAEAAABlOwEHXoMdAOEBFgQBAAAAZjsBB15jHwDhARYEAQAAAGc7AQdeQ9gA4QEaQAEAAABoOwEHXgNAAOEBFgQBAAAAaTsBB15DDgHhARpAAQAAAGg7AQVeoxgA4QEWBAEAAABrOwEHXmMpAOEBFgQBAAAAbDsBB17jFQDhARYEAQAAAG07AQde4xcA4QEMIAEAAABuOwEHXiMCAeEBFgQBAAAAbzsBB16jJgDhARYEAQAAAHA7AQdewxkA4QEWBAEAAABxOwEHXuMZAOEBFgQBAAAAcjsBB17jGQDhARYEAQAAAHM7AQde41EA4QEMIAEAAAB0OwEHXoMhAOEBGkABAAAAdTsBB15jKQDhARYEAQAAAHY7AQdegxYA4QEaQAEAAAB1OwEFXkMlAOEBFgQBAAAAeDsBB17DGQDhARYEAQAAAHk7AQdegyIA4QEcDAEAAAB6OwEHXmMfAOEBFgQBAAAAezsBB15jHwDhARYEAQAAAHw7AQdewxkA4QEWBAEAAAB9OwEHXoMnAOEBFgQBAAAAfjsBB17jGQDhARYEAQAAAH87AQde4xkA4QEWBAEAAACAOwEHXuMZAOEBFgQBAAAAgTsBB17DGQDhARYEAQAAAII7AQdeQyUA4QEWBAEAAACDOwEHXqMaAOEBFgQBAAAAhDsBB14DQADhARYEAQAAAIU7AQdewxkA4QEWBAEAAACGOwEHXqMYAOEBFgQBAAAAhzsBB17jGQDhARYEAQAAAIg7AQde4xUA4QEWBAEAAACJOwEHXiMaAOEBFgQBAAAAijsBB17DGgDhARwMAQAAAIs7AQdegyEA4QEWBAEAAACMOwEHXsMZAOEBFgQBAAAAjTsBB16DIgDhARwMAQAAAI47AQdewxcA4QEWBAEAAACPOwEHXkMgAOEBDCABAAAAkDsBB17DGQDhARYEAQAAAJE7AQdeYxsA4QEMIAEAAACSOwEHXoMiAOEBHAwBAAAAkzsBB17jGQDhARYEAQAAAJQ7AQdfIyYA5wEmCAFAAQCWOxEFXiMmAOEBKAgBAAAAljsBFl7jNgDhARpAAQAAAJc7AQdewxgA4QEMIAEAAACYOwEHXoMpAOEBDCABAAAAmTsBB16DFgDhARpAAQAAAJc7AQVe4xUA4QEaQAEAAACXOwEFXkMmAOEBGkABAAAAnDsBB16DIQDhARYEAQAAAJ07AQdeAx0A4QEaQAEAAACcOwEFXuM6AOEBFgQBAAAAnzsBB17jWQDhASwAAQAAAKA7AQZewxoA4QEMIAEAAAChOwEHXoO5AOEBGkABAAAAojsBB17jFQDhARpAAQAAAKI7AQVeYzgA4QEaQAEAAACiOwEFXsMxAOEBDCABAAAApTsBB15DFADhAQwgAQAAAKY7AQdeQzwA4QEMIAEAAACnOwEHXmMfAOEBFgQBAAAAqDsBB14DVgDhAQwgAQAAAKk7AQde4zoA4QEMIAEAAACqOwEHXqOVAOEBHgABAAAAqzsBBl7jJgDhARpAAQAAAKs7AQVe4xUA4QEaQAEAAACrOwEFXuNCAOEBIgABAAAArjsBBl7DQgDhAQwgAQAAAK87AQdeYxkA4QEWBAEAAACwOwEHXsMjAOEBDCABAAAAsTsBB17jFQDhAQwgAQAAALI7AQdeo0wA4QEeAAEAAACzOwEGXuMZAOEBFgQBAAAAtDsBB14DhgDhARYEAQAAALU7AQVegykA4QEWBAEAAAC2OwEHXsMYAOEBDCABAAAAtzsBB14jAgHhAR4EAQAAALg7AQZe4xUA4QEaQAEAAAC4OwEFXuPMAOEBGkABAAAAuDsBBV7jFQDhARpAAQAAALg7AQVeA/kA4QEaQAEAAAC8OwEHXmNWAOEBFgQBAAAAvTsBB17DGADhAQwgAQAAAL47AQde49UA4QEMIAEAAAC/OwEHXiMYAOEBFgQBAAAAwDsBB14DKgDhAQwgAQAAAME7AQdeYxsA4QEaQAEAAADCOwEHXoMnAOEBFgQBAAAAwzsBB15DKwDhARpAAQAAAMI7AQVe4xkA4QEWBAEAAADFOwEHXgNiAOEBFgQBAAAAxjsBB16DFwDhAR4AAQAAAMc7AQZe4xkA4QEaQAEAAADHOwEFXgMaAOEBGkABAAAAxzsBBV7jFQDhARpAAQAAAMc7AQVeAxkA4QEMIAEAAADLOwEHXgMZAOEBDCABAAAAzDsBB17DNADhARpAAQAAAM07AQde4yAA4QEMIAEAAADOOwEHXoOxAOEBIAABAAAAzzsBAl6jUgDhARpAAQAAANA7AQVew7AA4QEaQAEAAADQOwEFXiO1AOEBDCABAAAA0jsBB17DTADhARwMAQAAANM7AQdeA0wA4QEMIAEAAADUOwEHXiNGAeEBDCABAAAA1TsBB17DGADhAQwgAQAAANY7AQdeo3kA4QEaQAEAAADXOwEHXkPMAOEBGkABAAAA2DsBB15DewDhARpAAQAAANg7AQVe4xUA4QEaQAEAAADYOwEFXiMYAOEBGkABAAAA2DsBBV4DHwDhAQwgAQAAANw7AQdegxcA4QEMIAEAAADdOwEHXgMaAOEBDCABAAAA3TsBBV4jJQDhATAEAQAAAN87AQZew4sA4QEaQAEAAADgOwEHXkNjAOEBGkABAAAA4DsBBV4jVAHhAQwgAQAAAOI7AQdeA24A4QEsAAEAAADjOwEGXkMlAOEBFgQBAAAA5DsBB17DKADhARwMAQAAAOU7AQdeA4QA4QEWBAEAAADmOwEHXoMhAOEBFgQBAAAA5zsBB15jKQDhARYEAQAAAOg7AQde42EA4QEeAAEAAADpOwEGXsMYAOEBDCABAAAA6jsBB14jYwDhARpAAQAAAOk7AQVeQ1EA4QEaQAEAAADsOwEFXuMVAOEBGkABAAAA7DsBBV6DtADhARpAAQAAAO47AQdeIyAA4QEaQAEAAADuOwEFXmMkAOEBHkABAAAA8DsBBl6jGADhARpAAQAAAPA7AQVeIzcA4QEaQAEAAADwOwEFXuMVAOEBDCABAAAA8zsBB17jFQDhARpAAQAAAPA7AQVeY8EA4QEMIAEAAAD1OwEHXuMVAOEBIEABAAAA7jsBAl6jGADhARYEAQAAAPc7AQdeoxgA4QEWBAEAAAD4OwEHXmMkAOEBGkABAAAA+TsBB16jGADhARpAAQAAAPk7AQVeIzcA4QEaQAEAAAD5OwEFXuMVAOEBGkABAAAA+TsBBV6jTgDhASQIAQAAAP07AQZeoyMA4QEaQAEAAAD+OwEHXmMZAOEBFgQBAAAA/zsBB17DIwDhARpAAQAAAP47AQVewxgA4QEMIAEAAAABPAEHXgMwAOEBDCABAAAAAjwBB15DfwDhAQwgAQAAAAM8AQde40IA4QEMIAEAAAAEPAEHXqPAAeEBGkABAAAABTwBB17jFQDhARpAAQAAAAU8AQVewxgA4QEMIAEAAAAHPAEHXiNjAOEBGkABAAAABTwBBV5DOQDhARpAAQAAAAk8AQdeQzEA4QEaQAEAAAAJPAEFXkNKAOEBDCABAAAACzwBB17jFQDhARpAAQAAAAk8AQVeA1oA4QEaQAEAAAAJPAEFXuM+AOEBGkABAAAADjwBB16jGADhARpAAQAAAA48AQVe4xUA4QEaQAEAAAAOPAEFXoMqAOEBGkABAAAADjwBBV7jYQDhARpAAQAAABI8AQde4xUA4QEaQAEAAAASPAEFXiNjAOEBGkABAAAAEjwBBV7jGQDhARYEAQAAABU8AQdewzEA4QEaQAEAAAAWPAEHXkM6AOEBGkABAAAAFjwBBV5jKADhARpAAQAAABY8AQVeoyYA4QEWBAEAAAAZPAEHXqMcAOEBGkABAAAAGjwBB15jKADhARpAAQAAABo8AQVe4xUA4QEaQAEAAAAaPAEFXgMZAOEBDCABAAAAHTwBB14jUQDhARpAAQAAAB48AQVeY1YA4QEaQAEAAAAePAEFXuMVAOEBGkABAAAAHjwBBV4jLwDhARpAAQAAACE8AQdeAxoA4QEaQAEAAAAhPAEFXoMXAOEBGkABAAAAIzwBB14DGgDhARpAAQAAACM8AQVe4xUA4QEMIAEAAAAlPAEHXuMVAOEBDCABAAAAJjwBB17DQAHhARpAAQAAACc8AQdeg0QA4QEeQAEAAAAoPAEGXmMfAOEBGkABAAAAKDwBBV4DIQDhARpAAQAAACg8AQVe4xUA4QEaQAEAAAAoPAEFXqN0AOEBFgQBAAAALDwBB15DawDhAQwgAQAAAC08AQdeA0AA4QEWBAEAAAAuPAEHXmMiAOEBDCABAAAALzwBB17jaQDhARpAAQAAADA8AQdeQygA4QEMIAEAAAAxPAEHXuMVAOEBGkABAAAAMDwBBV7jgQDhARpAAQAAADA8AQVeQ5EA4QEaQAEAAAA0PAEFXuMVAOEBGkABAAAANDwBBV6DSgDhARYEAQAAADY8AQdeg1cA4QEMIAEAAAA3PAEHXsNMAOEBGkABAAAAODwBB14jYADhARpAAQAAADg8AQVeQ8IA4QEWBAEAAAA6PAEHXuPwAOEBDCABAAAAOzwBB17DHwDhAQwgAQAAADw8AQde418A4QEaQAEAAAA9PAEHXoORAOEBGkABAAAAPTwBBV6DMADhARYEAQAAAD88AQdeozAA4QEWBAEAAABAPAEHXoNXAOEBDCABAAAAQTwBB14DhADhARYEAQAAAEI8AQdeo0gA4QEMIAEAAABDPAEHXmM/AOEBGkABAAAARDwBB17jFQDhARpAAQAAAEQ8AQVeYyUA4QEaQAEAAABEPAEFXoOxAOEBFgQBAAAARzwBB14DbgDhARpAAQAAAEg8AQdeQyAA4QEMIAEAAABJPAEHXsMZAOEBFgQBAAAASjwBB16DIgDhARwMAQAAAEs8AQde4xUA4QEuIAEAAABIPAECXmMxAOEBHAwBAAAATTwBB15jJQDhARpAAQAAAEg8AQVegxcA4QEaQAEAAABPPAEHXuMZAOEBIEABAAAATzwBAl7DGADhAQwgAQAAAFE8AQdeAxoA4QEaQAEAAABPPAEFXuMVAOEBGkABAAAATzwBBV4DTwDhARpAAQAAAFQ8AQde4xUA4QEaQAEAAABUPAEFXiNlAOEBGkABAAAAVDwBBV4jRgDhASBAAQAAAEg8AQJe4yAA4QEMIAEAAABYPAEHXoMxAOEBGkABAAAAWzwBBV4jIADhARpAAQAAAFs8AQVeQ/kA4QEeAAEAAABbPAEGXsMzAOEBDCABAAAAXDwBB17jVQDhARpAAQAAAF08AQdeQ1gA4QEaQAEAAABdPAEFXoNMAOEBDCABAAAAXzwBB17DmgDhARpAAQAAAF08AQVe4xUA4QEeQAEAAABdPAECXsMfAOEBDCABAAAAYjwBB14jGADhAQwgAQAAAGM8AQdeo3sA4QEaQAEAAABdPAEFXqO3AOEBDCABAAAAZTwBB16jJwDhARpAAQAAAGY8AQVegycA4QEaQAEAAABpPAFFXoMwAOEBGkABAAAAaDwBBV6jMADhARpAAQAAAGg8AQVeAxkA4QEMIAEAAABqPAEHXkPDAOEBGkABAAAAazwBB14jMwDhARpAAQAAAGs8AQVeQzMA4QEaQAEAAABrPAEFXuMVAOEBGkABAAAAazwBBV7jHgDhARYEAQAAAG88AQdeo1cA4QEWBAEAAABwPAEHXoM9AOEBDCABAAAAcTwBB14DSwDhARYEAQAAAHI8AQdewxgA4QEaQAEAAADYOwEFXuMVAOEBDCABAAAAdDwBB14jRgDhAQwgAQAAAHU8AQdeQ08A4QEMIAEAAAB2PAEHXmM3AOEBGkABAAAAdzwBB17jHgDhAQwgAQAAAHg8AQdeAxoA4QEaQAEAAAB3PAEFXuMVAOEBHiABAAAAdzwBAF6DWADhARpAAQAAAHc8AQVeIy8A4QEaQAEAAAB3PAEFXkMlAOEBFgQBAAAAfTwBB16DIQDhARYEAQAAAH48AQdeYykA4QEWBAEAAAB/PAEHXsMoAOEBHAwBAAAAgDwBB17jFQDhARYEAQAAAIE8AQdeoxgA4QEWBAEAAACCPAEHXkMgAOEBDCABAAAAgzwBB17DGQDhASIEAQAAAIQ8AQZegyIA4QEcDAEAAACFPAEHXmMfAOEBFgQBAAAAhjwBB17jFQDhARYEAQAAAIc8AQdeYxwA4QEWBAEAAACIPAEHXsMZAOEBFgQBAAAAiTwBB17DGQDhARYEAQAAAIo8AQde4xkA4QEWBAEAAACLPAEHXsMZAOEBFgQBAAAAjDwBB16jGADhARYEAQAAAI08AQdeYx8A4QEWBAEAAACOPAEHXmNWAOEBFgQBAAAAjzwBB17jFQDhARYEAQAAAJA8AQdewxkA4QEWBAEAAACRPAEHXoMnAOEBFgQBAAAAkjwBB14DOwDhARpAAQAAALY8AQVeIyAA4QEMIAEAAACUPAEHXuMZAOEBFgQBAAAAlTwBB17jGQDhARYEAQAAAJY8AQdegzEA4QEWBAEAAACXPAEHXuMZAOEBFgQBAAAAmDwBB15jGQDhARYEAQAAAJk8AQdeQzEA4QEWBAEAAACaPAEHXmMkAOEBDCABAAAAmzwBB14jGgDhARYEAQAAAJw8AQdewxoA4QEcDAEAAACdPAEHXuMZAOEBFgQBAAAAnjwBB17jFQDhARYEAQAAAJ88AQdeoyYA4QEWBAEAAACgPAEHXmMkAOEBDCABAAAAoTwBB16jGADhARYEAQAAAKI8AQdegycA4QEWBAEAAACjPAEHXqMmAOEBFgQBAAAApDwBB17DGQDhARYEAQAAAKU8AQdeYx8A4QEWBAEAAACmPAEHXuMVAOEBFgQBAAAApzwBB16DJwDhARYEAQAAAKg8AQdeA2IA4QEWBAEAAACpPAEHXsMZAOEBFgQBAAAAqjwBB17jGQDhARYEAQAAAKs8AQdewygA4QEcDAEAAACsPAEHXmMpAOEBFgQBAAAArTwBB17DGQDhARYEAQAAAK48AQdeYxkA4QEWBAEAAACvPAEHXuMZAOEBFgQBAAAAsDwBB17jGQDhARYEAQAAALE8AQdegx0A4QEWBAEAAACyPAEHXoMxAOEBFgQBAAAAszwBB17DGQDhARYEAQAAALQ8AQdeQyUA4QEWBAEAAAC1PAEHXuMvAOEBGkABAAAAtjwBB17DGQDhARYEAQAAALc8AQdeA08A4QEaQAEAAAC4PAEHXiNlAOEBGkABAAAAuDwBBV7jGQDhARYEAQAAALo8AQdeA8YA4QEMIAEAAAC7PAEHXkN7AOEBGkABAAAAtjwBBV4jGgDhARYEAQAAAL08AQdegxwA4QEWBAEAAAC+PAEHXuMVAOEBDCABAAAAvzwBB14jGgDhARYEAQAAAMA8AQde4xkA4QEWBAEAAADBPAEHXiMYAOEBIEABAAAAtjwBAl7DKADhARwMAQAAAMM8AQdeoxgA4QEWBAEAAADEPAEHXiMaAOEBFgQBAAAAxTwBB17DGgDhARwMAQAAAMY8AQde408A4QEaQAEAAADHPAEHXmNWAOEBFgQBAAAAyDwBB17jfwDhARpAAQAAAMc8AQVeY5sA4QEWBAEAAADKPAEHXkMxAOEBFgQBAAAAyzwBB15jIwHhARYEAQAAAMw8AQdeYxsA4QEeIAEAAADNPAEGXoMnAOEBFgQBAAAAzjwBB15DKwDhARpAAQAAAM08AQVe4xUA4QEaQAEAAADNPAEFXoMxAOEBFgQBAAAA0TwBB17DGQDhARYEAQAAANI8AQde4yQB4QEWBAEAAADTPAEHXmMeAOEBFgQBAAAA1DwBB16DFwDhASBAAQAAANU8AQZeAxoA4QEaQAEAAADVPAEFXuMVAOEBGkABAAAA1TwBBV4DGQDhAQwgAQAAANg8AQdeoykA4QEWBAEAAADZPAEHXmMlAeEBHAwBAAAA2jwBB16jigDhARYEAQAAANs8AQdeYxsA4QEMIAEAAADcPAEHXgNiAOEBFgQBAAAA3TwBB17jFQDhARYEAQAAAN48AQdeAy0A4QEWBAEAAADfPAEHXsMmAOEBFgQBAAAA4DwBB16jGADhARYEAQAAAOE8AQdeI04A4QEaQAEAAADiPAEHXmMZAOEBGkABAAAA4jwBBV7jFQDhARpAAQAAAOI8AQVeY2kA4QEWBAEAAADlPAEHXoOrAOEBGkABAAAA4jwBBV4jGQDhAQwgAQAAAOc8AQde41YA4QEcDAEAAADoPAEHXmMbAOEBDCABAAAA6TwBB16DgQDhARYEAQAAAOo8AQdewxkA4QEWBAEAAADrPAEHXgMtAOEBFgQBAAAA7DwBB16DHADhARYEAQAAAO08AQde4xUA4QEWBAEAAADuPAEHXuMZAOEBFgQBAAAA7zwBB17jGQDhARYEAQAAAPA8AQdegyEA4QEWBAEAAADxPAEHXoMXAOEBFgQBAAAA8jwBB17jGQDhARYEAQAAAPM8AQdegycA4QEWBAEAAAD0PAEHXmMZAOEBFgQBAAAA9TwBB16DMQDhARYEAQAAAPY8AQdewxcA4QEWBAEAAAD3PAEHXkMgAOEBDCABAAAA+DwBB17DGgDhARwMAQAAAPk8AQdeIxoA4QEWBAEAAAD6PAEHXsMZAOEBFgQBAAAA+zwBB14DYgDhASIEAQAAAPw8AQZewxgA4QEMIAEAAAD9PAEHXoMnAOEBFgQBAAAA/jwBB17jFQDhARYEAQAAAP88AQdeYx8A4QEWBAEAAAAAPQEHXkMlAOEBFgQBAAAAAT0BB17jFQDhARYEAQAAAAI9AQdeYzEA4QEcDAEAAAADPQEHXoNkAOEBFgQBAAAABD0BB17DGQDhARYEAQAAAAU9AQdeIxoA4QEWBAEAAAAGPQEHXsMaAOEBHAwBAAAABz0BB17DGQDhARYEAQAAAAg9AQdeQzoA4QEWBAEAAAAJPQEHXqMmAOEBFgQBAAAACj0BB16jGADhARYEAQAAAAs9AQde4xUA4QEWBAEAAAAMPQEHXsMYAOEBDCABAAAADT0BB16jGADhARYEAQAAAA49AQde4xUA4QEWBAEAAAAPPQEHXiMaAOEBFgQBAAAAED0BB17DGgDhARwMAQAAABE9AQdeA0AA4QEWBAEAAAASPQEHXsMZAOEBFgQBAAAAEz0BB14jMADhARYEAQAAABQ9AQdeA0AA4QEWBAEAAAAVPQEHXoMnAOEBFgQBAAAAFj0BB16jMADhARYEAQAAABc9AQdeA0AA4QEWBAEAAAAVPQFHXsMaAOEBHAwBAAAAGT0BB15jVgDhARYEAQAAABo9AQdegxwA4QEWBAEAAAAbPQEHXsMaAOEBHAwBAAAAHD0BB15jGwDhAQwgAQAAAB09AQdewxkA4QEWBAEAAAAePQEHXqMgAOEBFgQBAAAAHz0BB17jFQDhARYEAQAAACA9AQdeYzEA4QEcDAEAAAAhPQEHXsNdAOEBDCABAAAAIj0BB16jGgDhARYEAQAAACM9AQdeYxkA4QEWBAEAAAAkPQEHXoMcAOEBFgQBAAAAJT0BB17DGgDhARwMAQAAACY9AQdeA+cA4QEWBAEAAAAnPQEHXoNcAOEBHAwBAAAAKD0BB15jGwDhAQwgAQAAACk9AQdeo4oA4QEWBAEAAAAqPQEHXsMaAOEBHAwBAAAAKz0BB17jFQDhARYEAQAAACw9AQdeA0AA4QEWBAEAAAAtPQEHXkMlAOEBFgQBAAAALj0BB14DQADhARYEAQAAAC89AQdewxkA4QEWBAEAAAAwPQEHXsMXAOEBFgQBAAAAMT0BB15DIADhAQwgAQAAADI9AQdewxkA4QEWBAEAAAAzPQEHXsMZAOEBFgQBAAAAND0BB17jGQDhARYEAQAAADU9AQde4xUA4QEWBAEAAAA2PQEHXmMxAOEBHAwBAAAANz0BB16DIQDhARYEAQAAADg9AQdegycA4QEWBAEAAAA5PQEHXuMZAOEBFgQBAAAAOj0BB16DIQDhARYEAQAAADs9AQde4xkA4QEWBAEAAAA8PQEHXsMoAOEBHAwBAAAAPT0BB15jGwDhAQwgAQAAAD49AQdewxkA4QEWBAEAAAA/PQEHXkMlAOEBFgQBAAAAQD0BB15jHwDhARYEAQAAAEE9AQdewxkA4QEWBAEAAABCPQEHXqMYAOEBFgQBAAAAQz0BB15DJQDhARYEAQAAAEQ9AQde4xkA4QEWBAEAAABFPQEHXoMhAOEBFgQBAAAARj0BB16jKQDhARYEAQAAAEc9AQdeYx8A4QEWBAEAAABIPQEHXsMZAOEBFgQBAAAAST0BB16DJwDhARYEAQAAAEo9AQdewxkA4QEWBAEAAABLPQEHXoMhAOEBFgQBAAAATD0BB17jGQDhARYEAQAAAE09AQdeQyUA4QEWBAEAAABOPQEHXuMZAOEBFgQBAAAATz0BB17jFQDhARYEAQAAAFA9AQde4xUA4QEWBAEAAABRPQEHXmMxAOEBHAwBAAAAUj0BB17DSQDhARYEAQAAAFM9AQdeI3oA4QEcDAEAAABUPQEHXmMbAOEBDCABAAAAVT0BB16jigDhARYEAQAAAFY9AQdewxoA4QEcDAEAAABXPQEHXmMbAOEBDCABAAAAWD0BB17jFQDhARYEAQAAAFk9AQdeYzEA4QEcDAEAAABaPQEHXmO/AOEBFgQBAAAAWz0BB15DIADhAQwgAQAAAFw9AQdewxkA4QEWBAEAAABdPQEHXoMiAOEBHAwBAAAAXj0BB16DWADhARpAAQAAAF89AQdeoxgA4QEWBAEAAABgPQEHXmMqAOEBDCABAAAAYT0BB17jFQDhAQwgAQAAAGI9AQdewxwA4QEaQAEAAABfPQEFXmMcAOEBFgQBAAAAZD0BB17DGQDhARYEAQAAAGU9AQdeQzEA4QEWBAEAAABmPQEHXqMYAOEBFgQBAAAAZz0BB17DGQDhARYEAQAAAGg9AQdeYxsA4QEMIAEAAABpPQEHXoMiAOEBHAwBAAAAaj0BB17DGQDhARYEAQAAAGg9AUdeYxsA4QEMIAEAAABsPQEHXoMiAOEBHAwBAAAAaj0BR17jFQDhARYEAQAAAG49AQdeQyAA4QEMIAEAAABvPQEHXsMZAOEBFgQBAAAAcD0BB15jHwDhARYEAQAAAHE9AQdeg7EA4QEWBAEAAAByPQEHXuMVAOEBFgQBAAAAcz0BB15jMQDhARwMAQAAAHQ9AQdeYxsA4QEMIAEAAAB1PQEHXqMYAOEBFgQBAAAAdj0BB17DKADhARwMAQAAAHc9AQdeYyQA4QEWBAEAAAB4PQEHXkM6AOEBFgQBAAAAeT0BB17jGQDhARYEAQAAAHo9AQdeQzgA4QEWBAEAAAB7PQEHXoMnAOEBFgQBAAAAfD0BB16jMADhARYEAQAAAH09AQdeYx8A4QEWBAEAAAB+PQEHXgNAAOEBFgQBAAAAfz0BB15DMQDhARYEAQAAAIA9AQdeYxkA4QEWBAEAAACBPQEHXiNKAOEBFgQBAAAAgj0BB15jsgDhASAEAQAAAIM9AQZeYxsA4QEMIAEAAACEPQEHXuMZAOEBGkABAAAAgz0BBV7jFQDhASAAAQAAAIM9AQJeg0oA4QEWBAEAAACHPQEHXuMVAOEBFgQBAAAAiD0BB17DGQDhARYEAQAAAIk9AQde4xUA4QEWBAEAAACKPQEHXmMfAOEBFgQBAAAAiz0BB15jHwDhARYEAQAAAIw9AQdeg2QA4QEWBAEAAACNPQEHXqMmAOEBFgQBAAAAjj0BB17jFQDhARYEAQAAAI89AQde4xUA4QEWBAEAAACQPQEHXoMxAOEBFgQBAAAAkT0BB15jHwDhARYEAQAAAJI9AQdegycA4QEWBAEAAACTPQEHXoMnAOEBFgQBAAAAlD0BB16DOQDhARpAAQAAAJU9AQdeQyUA4QEaQAEAAACVPQEFXuMVAOEBHkABAAAAlT0BAl6DswDhARpAAQAAAJU9AQVe4xUA4QEWBAEAAACZPQEHXkM6AOEBFgQBAAAAmj0BB16jigDhARYEAQAAAJs9AQdewxkA4QEWBAEAAACcPQEHXmOkAOEBFgQBAAAAnT0BB16jigDhARYEAQAAAJ49AQde4xkA4QEWBAEAAACfPQEHXqOKAOEBFgQBAAAAoD0BB17DGQDhARYEAQAAAKE9AQdewxkA4QEWBAEAAACiPQEHXoMiAOEBHAwBAAAAoz0BB17DGQDhARYEAQAAAKQ9AQdegyIA4QEcDAEAAAClPQEHXuMVAOEBFgQBAAAApj0BB15jMQDhARwMAQAAAKc9AQdeQzEA4QEWBAEAAACoPQEHXoMXAOEBIgQBAAAAqT0BBl+jJADnARwMAUABAKs9EQVeoyQA4QEcDAEAAACrPQEHXkMlAOEBFgQBAAAArD0BB15DMQDhARYEAQAAAK09AQdeg1IA4QEWBAEAAACuPQEHXmN8AOEBGkABAAAArz0BB17DMADhARpAAQAAAK89AQVe4xUA4QEaQAEAAACvPQEFXuMZAOEBFgQBAAAAsj0BB17jGQDhARYEAQAAALM9AQdew1YA4QEWBAEAAAC3PQEFXsNKAOEBFgQBAAAAtz0BBV5jGwDhAQwgAQAAALY9AQdewygA4QEWBAEAAAC3PQEHXqMYAOEBFgQBAAAAuD0BB14DTwDhARpAAQAAALk9AQde4xkA4QEWBAEAAAC6PQEHXoOwAOEBFgQBAAAAuz0BB16jigDhARYEAQAAALw9AQdeA0AA4QEWBAEAAAC9PQEHXgNAAOEBFgQBAAAAvj0BB17DFwDhARYEAQAAAL89AQdeQyUA4QEWBAEAAADAPQEHXmPAAOEBFgQBAAAAwT0BB15D2ADhARpAAQAAAMI9AQde4xUA4QEaQAEAAADCPQEFXkMOAeEBGkABAAAAwj0BBV5jGQDhARYEAQAAAMU9AQdeg2QA4QEWBAEAAADGPQEHXsNWAOEBFgQBAAAAyj0BBV7DSgDhARYEAQAAAMo9AQVeYxsA4QEMIAEAAADJPQEHXoNcAOEBFgQBAAAAyj0BB15jHgDhARYEAQAAAMs9AQdegx0A4QEWBAEAAADMPQEHXuMZAOEBFgQBAAAAzT0BB15jHwDhARYEAQAAAM49AQdeYx8A4QEWBAEAAADPPQEHXmMcAOEBFgQBAAAA0D0BB14jrADhARYEAQAAANE9AQdeI1cA4QEWBAEAAADSPQEHXoNcAOEBFgQBAAAA0z0BB17DGQDhARYEAQAAANQ9AQdeYxwA4QEWBAEAAADVPQEHXmMcAOEBFgQBAAAA1j0BB16jMADhARYEAQAAANc9AQdew1YA4QEWBAEAAADbPQEFXsNKAOEBFgQBAAAA2z0BBV5jGwDhAQwgAQAAANo9AQdewygA4QEWBAEAAADbPQEHXsMZAOEBFgQBAAAA3D0BB16jGADhARYEAQAAAN09AQdeo4oA4QEWBAEAAADePQEHXsMaAOEBHAwBAAAA3z0BB15jGwDhAQwgAQAAAOA9AQdeYxwA4QEWBAEAAADhPQEHXqMqAOEBHAwBAAAA4j0BB15jGwDhAQwgAQAAAOM9AQdeQyUA4QEWBAEAAADkPQEHXoMcAOEBFgQBAAAA5T0BB17DGgDhARwMAQAAAOY9AQdeY1YA4QEWBAEAAADnPQEHXqOKAOEBFgQBAAAA6D0BB17DGgDhARwMAQAAAOk9AQdeYxsA4QEMIAEAAADqPQEHXoMxAOEBFgQBAAAA6z0BB17jFQDhARYEAQAAAOw9AQdegycA4QEWBAEAAADtPQEHXmMcAOEBFgQBAAAA7j0BB15DMQDhARYEAQAAAO89AQde4xUA4QEWBAEAAADwPQEHXmMxAOEBHAwBAAAA8T0BB14jMADhARYEAQAAAPI9AQdeo1IA4QEWBAEAAADzPQEHXkMlAOEBFgQBAAAA9D0BB17DGADhAQwgAQAAAPU9AQdegxcA4QEiAAEAAAD2PQEGXuMZAOEBFgQBAAAA9z0BB15DJQDhARYEAQAAAPg9AQdeQ5kB4QEMIAEAAAD5PQEHXoMXAOEBIgABAAAA+j0BBl7jGQDhARYEAQAAAPs9AQdeQzEA4QEWBAEAAAD8PQEHXuMZAOEBFgQBAAAA/T0BB15jTgDhARpAAQAAAP49AQdeg2QA4QEWBAEAAAD/PQEHXmMfAOEBFgQBAAAAAD4BB14DbgDhARpAAQAAAAE+AQdew1YA4QEWBAEAAAAGPgEFXsNKAOEBFgQBAAAABj4BBV7jVgDhARwMAQAAAAQ+AQdeYxsA4QEMIAEAAAAFPgEHXqPyAOEBFgQBAAAABj4BB16jGADhARYEAQAAAAc+AQdeQzEA4QEWBAEAAAAIPgEHXmMcAOEBFgQBAAAACT4BB16jKgDhARwMAQAAAAo+AQdeYxsA4QEaQAEAAAALPgEHXkMrAOEBGkABAAAACz4BBV5jGQDhARYEAQAAAA0+AQdeYxwA4QEWBAEAAAAOPgEHXkMlAOEBFgQBAAAADz4BB14DQADhARYEAQAAABA+AQdeo4oA4QEWBAEAAAARPgEHXmMbAOEBDCABAAAAEj4BB17DVgDhARYEAQAAABY+AQVew0oA4QEWBAEAAAAWPgEFXmMbAOEBDCABAAAAFT4BB14jQQDhARYEAQAAABY+AQdewxkA4QEWBAEAAAAXPgEHXgMjAOEBFgQBAAAAGD4BB17jFQDhARYEAQAAABk+AQde4xkA4QEWBAEAAAAaPgEHXkMlAOEBFgQBAAAAGz4BB17jFQDhARYEAQAAABw+AQdeo4oA4QEWBAEAAAAdPgEHXsMaAOEBHAwBAAAAHj4BB15jGwDhAQwgAQAAAB8+AQdeQyUA4QEWBAEAAAAgPgEHXuMVAOEBFgQBAAAAIT4BB15jMQDhARwMAQAAACI+AQdew1oB4QEWBAEAAAAjPgEHXmMfAOEBFgQBAAAAJD4BB15jiwDhARpAAQAAACU+AQdeoyYA4QEgQAEAAAAlPgECXuMmAOEBGkABAAAAJT4BBV7jFQDhARpAAQAAACU+AQVeI6EA4QEaQAEAAAApPgEHXsMjAOEBGkABAAAAKT4BBV7DVgDhARYEAQAAAC4+AQVew0oA4QEWBAEAAAAuPgEFXmMbAOEBDCABAAAALT4BB15DbgDhARYEAQAAAC4+AQdegycA4QEWBAEAAAAvPgEHXqMwAOEBFgQBAAAAMD4BB16jewDhARpAAQAAADE+AQde4xUA4QEaQAEAAAAxPgEFXsPJAOEBGkABAAAAMT4BBV5jVgDhARYEAQAAADQ+AQdeo4oA4QEWBAEAAAA1PgEHXmMzAOEBGkABAAAANj4BB17DQgDhARYEAQAAADc+AQdeYxwA4QEWBAEAAAA4PgEHXoMxAOEBFgQBAAAAOT4BB17DKADhARwMAQAAADo+AQdeYxsA4QEMIAEAAAA7PgEHXiPEAOEBFgQBAAAAPD4BB15jLgDhARYEAQAAAD0+AQdewxoA4QEcDAEAAAA+PgEHXoMXAOEBIgABAAAAPz4BBl5DJADhARYEAQAAAEA+AQdeg/EB4QEMIAEAAABBPgEHXgM0AOEBFgQBAAAAQj4BB17DOQDhAQwgAQAAAEM+AQdeA3IA4QEWBAEAAABEPgEHXiN9AOEBHiABAAAART4BBl7jFQDhARpAAQAAAEU+AQVeYyAA4QEMIAEAAABHPgEHXsMZAOEBFgQBAAAASD4BB16DMQDhARYEAQAAAEk+AQdewxcA4QEWBAEAAABKPgEHXsMXAOEBFgQBAAAASz4BB16jGgDhARYEAQAAAEw+AQdeAxkA4QEMIAEAAABNPgEHXoMxAOEBIAQBAAAATj4BAl4jIADhARpAAQAAAFw+AQVeAzQA4QEWBAEAAABQPgEHXoMXAOEBFgQBAAAAUT4BB15DOQDhAS4gAQAAAFI+AQZeQzEA4QEWBAEAAABTPgEHXqMnAOEBGkABAAAAVD4BB15DKwDhARpAAQAAAFQ+AQVeQyAA4QEMIAEAAABWPgEHXoMwAOEBGkABAAAAVz4BB17DMADhARpAAQAAAFc+AQVeo9oA4QEcDAEAAABZPgEHXmMbAOEBDCABAAAAWj4BB14DWgDhAQwgAQAAAFI+AQVewzUA4QEaQAEAAABcPgEHXuMVAOEBIEABAAAAXD4BAl5DJADhARYEAQAAAF4+AQde4yEA4QEMIAEAAABfPgEHXmMgAOEBDCABAAAAYD4BB17DGgDhARwMAQAAAGE+AQde4xkA4QEWBAEAAABiPgEHXuMVAOEBFgQBAAAAYz4BB17DGQDhARYEAQAAAGQ+AQdegyIA4QEcDAEAAABlPgEHXoMhAOEBFgQBAAAAZj4BB16jJADhARwMAQAAAGc+AQdeoxgA4QEWBAEAAABoPgEHXoMvAOEBFgQBAAAAaT4BB15jHwDhARYEAQAAAGo+AQdeoxgA4QEWBAEAAABrPgEHXsMZAOEBFgQBAAAAbD4BB16DIgDhARwMAQAAAG0+AQdeQyUA4QEWBAEAAABuPgEHXiMeAOEBDCABAAAAbz4BB15jHgDhARYEAQAAAHA+AQde4xUA4QEWBAEAAABxPgEHXuMZAOEBFgQBAAAAcj4BB16DJwDhARYEAQAAAHM+AQdewxkA4QEWBAEAAAB0PgEHXoMhAOEBFgQBAAAAdT4BB16jJADhARwMAQAAAHY+AQdeoxgA4QEWBAEAAAB3PgEHXmMpAOEBFgQBAAAAeD4BB17jGQDhARYEAQAAAHk+AQdegycA4QEWBAEAAAB6PgEHXqMwAOEBFgQBAAAAez4BB17jGQDhARYEAQAAAHw+AQde4xkA4QEWBAEAAAB9PgEHXuMZAOEBFgQBAAAAfj4BB15DOgDhARYEAQAAAH8+AQdeoxoA4QEWBAEAAACAPgEHXoMhAOEBFgQBAAAAgT4BB16jJADhARwMAQAAAII+AQdeQzEA4QEWBAEAAACDPgEHXsMZAOEBFgQBAAAAhD4BB17jGQDhARYEAQAAAIU+AQde4xkA4QEWBAEAAACGPgEHXoMXAOEBIgABAAAAhz4BBl7jGQDhARYEAQAAAIg+AQdewxkA4QEWBAEAAACJPgEHXmMfAOEBFgQBAAAAij4BB17DFwDhARYEAQAAAIs+AQde4xUA4QEWBAEAAACMPgEHXoMhAOEBFgQBAAAAjT4BB15jHwDhARYEAQAAAI4+AQde4xUA4QEWBAEAAACPPgEHXuMZAOEBFgQBAAAAkD4BB16DIQDhARYEAQAAAJE+AQdeoyQA4QEcDAEAAACSPgEHXkMgAOEBDCABAAAAkz4BB17DGQDhARYEAQAAAJQ+AQdeYx8A4QEWBAEAAACVPgEHXuMZAOEBFgQBAAAAlj4BB17DGADhARYEAQAAAJc+AQdewyAA4QEcDAEAAACYPgEHXkMgAOEBDCABAAAAmT4BB17DGQDhARYEAQAAAJo+AQdegyIA4QEcDAEAAACbPgEHXkMlAOEBFgQBAAAAnD4BB17DFwDhARYEAQAAAJ0+AQdewxoA4QEcDAEAAACePgEHXuMZAOEBFgQBAAAAnz4BB17jFQDhARYEAQAAAKA+AQdeYzEA4QEcDAEAAAChPgEHXmMbAOEBDCABAAAAoj4BB17jGQDhARYEAQAAAKM+AQdewygA4QEcDAEAAACkPgEHXuMZAOEBFgQBAAAApT4BB17jGQDhARYEAQAAAKY+AQdegyEA4QEWBAEAAACnPgEHXoMXAOEBFgQBAAAAqD4BB16DIQDhARYEAQAAAKk+AQde4xkA4QEWBAEAAACqPgEHXsMoAOEBHAwBAAAAqz4BB17jFQDhARYEAQAAAKw+AQdeYykA4QEWBAEAAACtPgEHXuMVAOEBFgQBAAAArj4BBV8DGQDnARgwAQAAAK8+EQVeAxkA4QEiIAEAAACwPgEGXgMZAOEBDCABAAAAuD4BR16jJwDhARpAAQAAALk+AUdegycA4QEWBAEAAAC6PgFHXkMrAOEBGkABAAAAuz4BRV7jFQDhARpAAQAAALw+AUVe4yEA4QEMIAEAAAC2PgEHXmMgAOEBDCABAAAAtz4BB14DGQDhAQwgAQAAALg+AQdegzAA4QEaQAEAAAC5PgEHXqMwAOEBIEABAAAAuT4BAl7DMADhARpAAQAAALk+AQVe4xUA4QEaQAEAAAC5PgEFXuMYAOEBDCABAAAAsD4BBV4DNADhARYEAQAAAL4+AQdegxcA4QEWBAEAAAC/PgEHXmMcAOEBFgQBAAAAwD4BB14DNADhARYEAQAAAME+AQdeI3QA4QEWBAEAAADCPgEHXqMkAOEBHAwBAAAAwz4BB15jGwDhAQwgAQAAAMQ+AQdeoxgA4QEWBAEAAADFPgEHXiMPAeEBFgQBAAAAxj4BB14jMADhARYEAQAAAMc+AQdeA0cA4QEMIAEAAADIPgEHXmMSAeEBDCABAAAAyT4BB14DIwDhAQwgAQAAAMo+AQdeQx0A4QEWBAEAAADLPgEHXmMiAOEBFgQBAAAAzD4BB15jNwDhARpAAQAAAM0+AQdf4xkA5wEYMAEAAADOPhEFXuMZAOEBIEABAAAAzT4BAl7DKADhARwMAQAAANA+AQdeAxoA4QEaQAEAAADNPgEFXuMVAOEBHgABAAAAzT4BAl4DGQDhAQwgAQAAANM+AQdeoycA4QEaQAEAAADUPgEHXkMrAOEBGkABAAAA1D4BBV4DGQDhAQwgAQAAANY+AQdegzAA4QEaQAEAAADXPgEHXsMwAOEBGkABAAAA1z4BBV7DMgDhAQwgAQAAAMk+AQVeQyAA4QEMIAEAAADaPgEHXsMYAOEBFgQBAAAA2z4BB15DKQDhASIAAQAAANw+AQZe4yMA4QEiBAEAAADdPgEGXqMnAOEBGkABAAAA3j4BB15DKwDhARpAAQAAAN4+AQVe4yEA4QEMIAEAAADgPgEHXmMgAOEBFgQBAAAA4T4BB14jGgDhARYEAQAAAOI+AQdeQyAA4QEMIAEAAADjPgEHXoMwAOEBGkABAAAA5D4BB17DMADhARpAAQAAAOQ+AQVewxoA4QEcDAEAAADmPgEHXmMzAOEBDCABAAAA5z4BB15DKwDhAQwgAQAAAOc+AQVeIyAA4QEMIAEAAADqPgEFXkMgAOEBDCABAAAA6j4BB16DHADhARYEAQAAAOs+AQdeI0EB4QEMIAEAAADsPgEHXuMZAOEBFgQBAAAA7T4BB16jQgDhARYEAQAAAO4+AQdewxkA4QEWBAEAAADvPgEHXoMiAOEBHAwBAAAA8D4BB16DMQDhARYEAQAAAPE+AQdewyAA4QEcDAEAAADyPgEHXmMbAOEBDCABAAAA8z4BB14DlQDhARYEAQAAAPQ+AQdeYxsA4QEMIAEAAAD1PgEHXmN9AOEBGkABAAAA9j4BBV4DQADhARpAAQAAAPY+AQVe4xUA4QEaQAEAAAD2PgEFXkMwAOEBFgQBAAAA+T4BB14DYgDhARYEAQAAAPo+AQdeg2sA4QEWBAEAAAD7PgEHXgNAAOEBFgQBAAAA/D4BB17DKADhASwAAQAAAP0+AQZeYxsA4QEMIAEAAAD+PgEHXmMSAeEBGkABAAAA/z4BBV7DMgDhARpAAQAAAP8+AQVe4xkA4QEaQAEAAAD/PgEFXuMVAOEBGkABAAAA/z4BBV4jzQDhARpAAQAAAAM/AQdeI2AA4QEaQAEAAAADPwEFXsMZAOEBFgQBAAAABT8BB17jFQDhASIAAQAAAAY/AQZeYzEA4QEcDAEAAAAHPwEHXmMbAOEBDCABAAAACD8BB17DGQDhARYEAQAAAAk/AQdeo6AA4QEiBAEAAAAKPwEGXgNAAOEBFgQBAAAACz8BB14DQADhARYEAQAAAAw/AQdewzMA4QEaQAEAAAANPwEHXkM6AOEBFgQBAAAADj8BB15jKADhARpAAQAAAA0/AQVeAyYA4QEaQAEAAAAQPwEHXuMfAOEBGkABAAAAED8BBV4jVwDhARYEAQAAABI/AQde4xkA4QEWBAEAAAATPwEHXkMZAOEBGkABAAAAFD8BB17DIwDhARpAAQAAABQ/AQVeYxkA4QEWBAEAAAAWPwEHXgNAAOEBFgQBAAAAFz8BB14DQADhARYEAQAAABg/AQdeo4oA4QEWBAEAAAAZPwEHXsMaAOEBHAwBAAAAGj8BB15jGwDhAQwgAQAAABs/AQdegz0B4QEaQAEAAAAcPwEHXkMlAOEBFgQBAAAAHT8BB16DqQDhARpAAQAAAB4/AQdeoxgA4QEWBAEAAAAfPwEHXkMZAOEBGkABAAAAID8BB15jGQDhARpAAQAAACA/AQVewyMA4QEaQAEAAAAgPwEFXuMVAOEBGkABAAAAID8BBV6jGADhARYEAQAAACQ/AQdfYxsA5wEmCAFAAQAmPxEFXmMbAOEBJggBAAAAJj8BFV5jHwDhARYEAQAAACc/AQdeQzoA4QEWBAEAAAAoPwEHXoMnAOEBFgQBAAAAKT8BB14jVwDhARYEAQAAACo/AQde4xkA4QEWBAEAAAArPwEHXsMZAOEBFgQBAAAALD8BB18jVwDnASYIAUABAC4/EQVeI1cA4QGeCAEAAAAuPwEGXsMZAOEBFgQBAAAALz8BB14jRgDhAQwgAQAAADA/AQdeYxsA4QEMIAEAAAAxPwEHXqMkAOEBFgQBAAAAMj8BB15jGwDhAQwgAQAAADM/AQde4xkA4QEWBAEAAAA0PwEHXqMYAOEBFgQBAAAANT8BB15jVgDhARYEAQAAADY/AQde4xkA4QEWBAEAAAA3PwEHXqP4AOEBFgQBAAAAOD8BB15jIgDhARYEAQAAADk/AQdeYx8A4QEWBAEAAAA6PwEHXsMZAOEBFgQBAAAAOz8BB16DIQDhARpAAQAAADw/AQdewxkA4QEWBAEAAAA9PwEHXoMxAOEBFgQBAAAAPj8BB14jJwDhARpAAQAAAD8/AQdeQyUA4QEgQAEAAAA/PwECXuMVAOEBHkABAAAAPz8BAl6DRQDhARpAAQAAAD8/AQVegx0A4QEWBAEAAABDPwEHXuMZAOEBFgQBAAAARD8BB14DTwDhARpAAQAAAEU/AQdeA4YA4QEgQAEAAABFPwECXuMVAOEBGkABAAAART8BBV4jZQDhARpAAQAAAEU/AQVegxwA4QEWBAEAAABJPwEHXsM0AOEBGkABAAAASj8BB14DiQDhARpAAQAAAEs/AQdewxwA4QEaQAEAAABLPwEFXsMZAOEBFgQBAAAATT8BB15jKQDhARYEAQAAAE4/AQdeoyQA4QEWBAEAAABPPwEHXuMVAOEBFgQBAAAAUD8BB17jGQDhARYEAQAAAFE/AQde41YA4QEcDAEAAABSPwEHXgPCAOEBFgQBAAAAUz8BB14DJgDhARYEAQAAAFQ/AQde41UA4QEaQAEAAABVPwEHXsOaAOEBGkABAAAAVT8BBV7jFQDhARpAAQAAAFU/AQVeYxwA4QEWBAEAAABYPwEHXkMgAOEBDCABAAAAWT8BB17DGQDhARYEAQAAAFo/AQde4xkA4QEWBAEAAABbPwEHXsNCAOEBGkABAAAAXD8BB17DGQDhARYEAQAAAF0/AQdeYxsA4QEMIAEAAABePwEHXoMiAOEBHAwBAAAAXz8BB16jigDhARYEAQAAAGA/AQdewxoA4QEcDAEAAABhPwEHXiNXAOEBFgQBAAAAYj8BB15jGwDhAQwgAQAAAGM/AQdeg1wA4QEsAAEAAABkPwEGXqMYAOEBIAABAAAAXD8BAl5jHwDhARYEAQAAAGY/AQdeI3oA4QEWBAEAAABnPwEHXuMVAOEBGkABAAAAXD8BBV5jVgDhARYEAQAAAGk/AQdeA4YA4QEWBAEAAABqPwEHXsMZAOEBFgQBAAAAaz8BB15jHwDhARYEAQAAAGw/AQdegzEA4QEWBAEAAABtPwEHXmOPAOEBGkABAAAAbj8BB17jFQDhAR4AAQAAAG4/AQJeo48A4QEaQAEAAABuPwEFXsMZAOEBFgQBAAAAcT8BB15jGQDhARYEAQAAAHI/AQde4xkA4QEWBAEAAABzPwEHXuMVAOEBFgQBAAAAdD8BB17DGQDhARYEAQAAAHU/AQdeYx8A4QEWBAEAAAB2PwEHXoMcAOEBFgQBAAAAdz8BB16DJwDhARYEAQAAAHg/AQdeozAA4QEWBAEAAAB5PwEHXuMZAOEBFgQBAAAAej8BB16DHADhARYEAQAAAHs/AQdegyEA4QEWBAEAAAB8PwEHXsMXAOEBFgQBAAAAfT8BB17jNwDhARYEAQAAAH4/AQdeYxwA4QEWBAEAAAB/PwEHXqMqAOEBHAwBAAAAgD8BB17jGQDhARYEAQAAAIE/AQdewxkA4QEWBAEAAACCPwEHXoMiAOEBHAwBAAAAgz8BB17DGQDhASIAAQAAAIQ/AQZeYyIA4QEWBAEAAACFPwEHXsMZAOEBFgQBAAAAhj8BB16jigDhARYEAQAAAIc/AQdewxoA4QEcDAEAAACIPwEHXmMbAOEBDCABAAAAiT8BB17jGQDhARYEAQAAAIo/AQdeYxwA4QEWBAEAAACLPwEHXoMcAOEBFgQBAAAAjD8BB15jIgDhARYEAQAAAI0/AQdeo4oA4QEWBAEAAACOPwEHXsMaAOEBHAwBAAAAjz8BB15jGwDhAQwgAQAAAJA/AQdeoxgA4QEWBAEAAACRPwEHXgNAAOEBFgQBAAAAkj8BB17DGQDhARYEAQAAAJM/AQdegyIA4QEcDAEAAACUPwEHXsMZAOEBFgQBAAAAlT8BB17jGQDhARYEAQAAAJY/AQdewxkA4QEWBAEAAACXPwEHXoNKAOEBFgQBAAAAmD8BB17jGQDhARYEAQAAAJk/AQdegycA4QEWBAEAAACaPwEHXqMwAOEBFgQBAAAAmz8BB17DGQDhARYEAQAAAJw/AQdegzEA4QEWBAEAAACdPwEHXuMZAOEBFgQBAAAAnj8BB17jGQDhARYEAQAAAJ8/AQdeoyYA4QEWBAEAAACgPwEHXuMZAOEBFgQBAAAAoT8BB16DJwDhARYEAQAAAKI/AQdeozAA4QEWBAEAAACjPwEHXqMYAOEBFgQBAAAApD8BB17DGQDhARYEAQAAAKU/AQdeYykA4QEWBAEAAACmPwEHXuMVAOEBFgQBAAAApz8BB16joADhARYEAQAAAKg/AQdegxwA4QEWBAEAAACpPwEHXsMaAOEBHAwBAAAAqj8BB17jGQDhARYEAQAAAKs/AQdeI6YA4QEaQAEAAACsPwEHXuMZAOEBFgQBAAAArT8BB17DGQDhARYEAQAAAK4/AQdeQzEA4QEWBAEAAACvPwEHXkMkAOEBFgQBAAAAsD8BB16DJwDhARYEAQAAALE/AQdeozAA4QEWBAEAAACyPwEHXsMaAOEBHAwBAAAAsz8BB15jGwDhAQwgAQAAALQ/AQdewxkA4QEWBAEAAAC1PwEHXuNWAOEBHAwBAAAAtj8BB15jIgDhARYEAQAAALc/AQdeQyUA4QEWBAEAAAC4PwEHXmMbAOEBDCABAAAAuT8BB14jegDhARYEAQAAALo/AQdeI3oA4QEWBAEAAAC7PwEHXuPmAOEBGkABAAAAvD8BB15jKQDhASAEAQAAALw/AQJegxYA4QEaQAEAAAC8PwEFXuMVAOEBIAQBAAAAvD8BAl4jGgDhARYEAQAAAMA/AQdeozwA4QEMIAEAAADBPwEHXmMZAOEBFgQBAAAAwj8BB17jGQDhARYEAQAAAMM/AQdewxkA4QEWBAEAAADEPwEHXmMbAOEBDCABAAAAxT8BB16DIgDhARwMAQAAAMY/AQdeQzoA4QEWBAEAAADHPwEHXmMZAOEBFgQBAAAAyD8BB17DGQDhARYEAQAAAMk/AQdeYx8A4QEWBAEAAADKPwEHXsMZAOEBFgQBAAAAyz8BB17DGQDhARYEAQAAAMw/AQdegyEA4QEWBAEAAADNPwEHXuMZAOEBFgQBAAAAzj8BB17jFQDhARYEAQAAAM8/AQdewxkA4QEWBAEAAADQPwEHXmMeAOEBFgQBAAAA0T8BB15jKQDhARYEAQAAANI/AQde4xkA4QEWBAEAAADTPwEHXsMZAOEBFgQBAAAA1D8BB16DIQDhARYEAQAAANU/AQdeoyQA4QEcDAEAAADWPwEHXmMbAOEBDCABAAAA1z8BB15jHADhARYEAQAAANg/AQdegzEA4QEWBAEAAADZPwEHXuMVAOEBFgQBAAAA2j8BB16jGgDhARYEAQAAANs/AQdewxoA4QEcDAEAAADcPwEHXgNAAOEBFgQBAAAA3T8BB14jkADhARYEAQAAAN4/AQdeoxgA4QEWBAEAAADfPwEHXsMZAOEBFgQBAAAA4D8BB16DJwDhARYEAQAAAOE/AQdeYx8A4QEWBAEAAADiPwEHXoMnAOEBFgQBAAAA5D8BR16jMADhARYEAQAAAOQ/AQde4xkA4QEWBAEAAADlPwEHXsMXAOEBFgQBAAAA5j8BB15DIADhAQwgAQAAAOc/AQdewxoA4QEcDAEAAADoPwEHXuMZAOEBFgQBAAAA6T8BB14DYQHhARYEAQAAAOo/AQdeo80A4QEMIAEAAADrPwEHXmMcAOEBFgQBAAAA7D8BB16jGADhARYEAQAAAO0/AQde4xkA4QEWBAEAAADuPwEHXqMXAOEBGkABAAAA7z8BB16jJgDhARYEAQAAAPA/AQde4xUA4QEaQAEAAADvPwEFXiNlAOEBGkABAAAA7z8BBV7jTADhARYEAQAAAPM/AQdeo4oA4QEWBAEAAAD0PwEHXsMZAOEBFgQBAAAA9T8BB17jGQDhARYEAQAAAPY/AQdeYx8A4QEWBAEAAAD3PwEHXkMgAOEBDCABAAAA+D8BB17DGQDhARYEAQAAAPk/AQdeYxsA4QEMIAEAAAD6PwEHXoMiAOEBHAwBAAAA+z8BB14DfQDhARYEAQAAAPw/AQdeA0AA4QEWBAEAAAD9PwEHXsMZAOEBFgQBAAAA/j8BB16DIgDhARwMAQAAAP8/AQde4xkA4QEWBAEAAAAAQAEHXmMiAOEBFgQBAAAAAUABB16jGADhARYEAQAAAAJAAQdewxkA4QEWBAEAAAADQAEHXoMnAOEBFgQBAAAABEABB16jMADhARYEAQAAAAVAAQde4xkA4QEWBAEAAAAGQAEHXiMaAOEBFgQBAAAAB0ABB17DGgDhARwMAQAAAAhAAQdegycA4QEWBAEAAAAJQAEHXqMwAOEBFgQBAAAACkABB16jGADhARYEAQAAAAtAAQdeYykA4QEWBAEAAAAMQAEHXsMZAOEBFgQBAAAADUABB16jigDhARYEAQAAAA5AAQde46cB4QEaQAEAAAAPQAEFXqMmAOEBGkABAAAAD0ABBV7jFQDhARpAAQAAAA9AAQVeA0AA4QEWBAEAAAASQAEHXsMZAOEBFgQBAAAAE0ABB15jKQDhARYEAQAAABRAAQde4xUA4QEWBAEAAAAVQAEHXoMhAOEBFgQBAAAAFkABB15jGwDhAQwgAQAAABdAAQdeQzEA4QEWBAEAAAAYQAEHXkMxAOEBFgQBAAAAGUABB16DIQDhARYEAQAAABpAAQdeYxsA4QEMIAEAAAAbQAEHXoNKAOEBFgQBAAAAHEABB14DRwDhAQwgAQAAAB1AAQdewxkA4QEWBAEAAAAeQAEHXkMlAOEBFgQBAAAAH0ABB16DIQDhARYEAQAAACBAAQdeYxsA4QEMIAEAAAAhQAEHXoMdAOEBFgQBAAAAIkABB15DVwDhARpAAQAAACNAAQde4xUA4QEaQAEAAAAjQAEFXiNlAOEBGkABAAAAI0ABBV5jHwDhARYEAQAAACZAAQdeI3QA4QEWBAEAAAAnQAEHXkM6AOEBFgQBAAAAKEABB17jGQDhARYEAQAAAClAAQdeYx8A4QEWBAEAAAAqQAEHXuM+AOEBGkABAAAAK0ABB16jGADhARpAAQAAACtAAQVe4xUA4QEaQAEAAAArQAEFXoMqAOEBGkABAAAAK0ABBV7jFQDhARYEAQAAAC9AAQdeQzoA4QEWBAEAAAAwQAEHXqMYAOEBFgQBAAAAMUABB17jGQDhARYEAQAAADJAAQdewxkA4QEWBAEAAAAzQAEHXqOKAOEBFgQBAAAANEABB15jHgDhARYEAQAAADVAAQdewyAA4QEcDAEAAAA2QAEHXmMbAOEBDCABAAAAN0ABB17jFQDhARYEAQAAADhAAQdeYxsA4QEMIAEAAAA5QAEHXqMmAOEBFgQBAAAAOkABB15jGQDhARYEAQAAADtAAQdeg2QA4QEWBAEAAAA8QAEHXiMjAeEBGkABAAAAPUABB16jJgDhARpAAQAAAD1AAQVe4xUA4QEaQAEAAAA9QAEFXuPUAOEBGkABAAAAPUABBV6DHQDhARYEAQAAAEFAAQde4xkA4QEWBAEAAABCQAEHXmMbAOEBDCABAAAAQ0ABB15jGQDhARYEAQAAAERAAQdegxwA4QEWBAEAAABFQAEHXuMZAOEBFgQBAAAARkABB15jHADhARYEAQAAAEdAAQdeAzQA4QEWBAEAAABIQAEHXkMgAOEBDCABAAAASUABB17jGQDhARYEAQAAAEpAAQdewxkA4QEWBAEAAABLQAEHXoMnAOEBFgQBAAAATEABB17jGQDhARYEAQAAAE1AAQdeYx8A4QEWBAEAAABOQAEHXkM6AOEBFgQBAAAAT0ABB16DJwDhARYEAQAAAFBAAQde4xkA4QEWBAEAAABRQAEHXsMoAOEBHAwBAAAAUkABB15DIADhAQwgAQAAAFNAAQdewxkA4QEWBAEAAABUQAEHXoMiAOEBHAwBAAAAVUABB17jGQDhARYEAQAAAFZAAQdegyEA4QEWBAEAAABXQAEHXkM6AOEBFgQBAAAAWEABB17jGQDhARYEAQAAAFlAAQdeYx8A4QEWBAEAAABaQAEHXuMVAOEBFgQBAAAAW0ABB17DGQDhARYEAQAAAFxAAQdeoxoA4QEWBAEAAABdQAEHXoMnAOEBFgQBAAAAXkABB17jFQDhARYEAQAAAF9AAQdeYxwA4QEWBAEAAABgQAEHXqMqAOEBHAwBAAAAYUABB15jGwDhAQwgAQAAAGJAAQdewxkA4QEWBAEAAABjQAEHXsMgAOEBFgQBAAAAZEABB14DQADhARYEAQAAAGVAAQdewxkA4QEWBAEAAABmQAEHXiMaAOEBFgQBAAAAZ0ABB16DJwDhARYEAQAAAGhAAQdewxkA4QEWBAEAAABpQAEHXoMhAOEBFgQBAAAAakABB16jJADhARwMAQAAAGtAAQdeYxsA4QEMIAEAAABsQAEHXsMXAOEBFgQBAAAAbUABB15DIADhAQwgAQAAAG5AAQdewxkA4QEWBAEAAABvQAEHXmMbAOEBDCABAAAAcEABB16DIgDhARwMAQAAAHFAAQdegyEA4QEWBAEAAAByQAEHXoMnAOEBFgQBAAAAc0ABB17jFQDhARYEAQAAAHRAAQde4xkA4QEWBAEAAAB1QAEHXsMZAOEBFgQBAAAAdkABB14jGgDhARYEAQAAAHdAAQdeYxwA4QEWBAEAAAB4QAEHXqMqAOEBHAwBAAAAeUABB15jGwDhAQwgAQAAAHpAAQde4xkA4QEWBAEAAAB7QAEHXmMbAOEBDCABAAAAfEABB16DIQDhARYEAQAAAH1AAQdewxkA4QEWBAEAAAB+QAEHXmMpAOEBFgQBAAAAf0ABB14D5wDhARYEAQAAAIBAAQdegyEA4QEWBAEAAACBQAEHXgOGAOEBFgQBAAAAgkABB17jFQDhARYEAQAAAINAAQdewxkA4QEWBAEAAACEQAEHXmMZAOEBFgQBAAAAhUABB14jMADhARYEAQAAAIZAAQdeYxkA4QEWBAEAAACHQAEHXoMxAOEBFgQBAAAAiEABB14DAALZAQwgAQAAAIlAAQdegzEA4QEWBAEAAACKQAEHXsMoAOEBHAwBAAAAi0ABB17DGQDhARYEAQAAAIxAAQdeQyAA4QEMIAEAAACNQAEHXsMZAOEBFgQBAAAAjkABB15jGwDhAQwgAQAAAI9AAQdegyIA4QEcDAEAAACQQAEHXqMYAOEBFgQBAAAAkUABB17jFQDhARYEAQAAAJJAAQdeYzEA4QEcDAEAAACTQAEHXqMaAeEBFgQBAAAAlEABB17DIADhARwMAQAAAJVAAQdewxkA4QEWBAEAAACWQAEHXoMnAOEBFgQBAAAAl0ABB14DhgDhARYEAQAAAJhAAQdewxkA4QEWBAEAAACZQAEHXoMxAOEBFgQBAAAAmkABB14juADhARpAAQAAAJtAAQdeA0AA4QEaQAEAAACbQAEFXkMoAOEBDCABAAAAnUABB17jFQDhAR4gAQAAAJtAAQBeA0AA4QEaQAEAAACcQAFFXkMoAOEBDCABAAAAoEABB17jFQDhARpAAQAAAJ5AAUVeQ3QA4QEaQAEAAACbQAEFXsMZAOEBFgQBAAAAo0ABB15jGQDhARYEAQAAAKRAAQdegyEA4QEWBAEAAAClQAEHXiNAAOEBFgQBAAAApkABB17DGQDhARYEAQAAAKdAAQdegyIA4QEcDAEAAACoQAEHXoNmAOEBFgQBAAAAqUABB15DawDhARYEAQAAAKpAAQdegycA4QEWBAEAAACrQAEHXuMhAOEBDCABAAAArEABB14jGgDhARYEAQAAAK1AAQdewxoA4QEcDAEAAACuQAEHXkMgAOEBDCABAAAAr0ABB17DGQDhARYEAQAAALBAAQdeozAA4QEWBAEAAACxQAEHXgNHAOEBDCABAAAAskABB17DGQDhARYEAQAAALNAAQdegyIA4QEcDAEAAAC0QAEHXuMVAOEBFgQBAAAAtUABB15jMQDhARwMAQAAALZAAQde4xUA4QEWBAEAAAC3QAEHXoMhAOEBFgQBAAAAuEABB17jGQDhARYEAQAAALlAAQdewxkA4QEsAAEAAAC8QAFGXoMnAOEBFgQBAAAAvkABR17DGQDhARYEAQAAALxAAQdegyIA4QEcDAEAAAC9QAEHXqMwAOEBFgQBAAAAvkABB17DGQDhARYEAQAAAL9AAQdeA0AA4QEWBAEAAADAQAEHXuMZAOEBFgQBAAAAwUABB15DJQDhARYEAQAAAMJAAQdewxkA4QEWBAEAAADDQAEHXsMZAOEBFgQBAAAAxEABB15DMQDhARYEAQAAAMVAAQdeQzoA4QEWBAEAAADGQAEHXiObAOEBGkABAAAAx0ABB16jGADhARYEAQAAAMhAAQde4xkA4QEWBAEAAADJQAEHXoMhAOEBFgQBAAAAykABB17DGQDhARYEAQAAAMtAAQdeQzEA4QEWBAEAAADMQAEHXmMZAOEBFgQBAAAAzUABB16DFwDhARYEAQAAAM5AAQde4xkA4QEWBAEAAADPQAEHXmMfAOEBFgQBAAAA0EABB16jigDhARYEAQAAANFAAQde4xUA4QEWBAEAAADSQAEHXkMgAOEBDCABAAAA00ABB17jGQDhARYEAQAAANRAAQdegycA4QEWBAEAAADVQAEHXuMZAOEBFgQBAAAA1kABB15jGwDhAQwgAQAAANdAAQdeg0oA4QEWBAEAAADYQAEHXoMnAOEBFgQBAAAA2UABB17jFQDhARYEAQAAANpAAQdeYzEA4QEcDAEAAADbQAEHXuMVAOEBFgQBAAAA3EABBV5DIADhAQwgAQAAAN1AAQdewxkA4QEWBAEAAADeQAEHXmMbAOEBDCABAAAA30ABB16DIgDhARwMAQAAAOBAAQdeYykA4QEWBAEAAADhQAEHXsMZAOEBFgQBAAAA4kABB16DIgDhARwMAQAAAONAAQdeA4YA4QEWBAEAAADkQAEHXoMxAOEBFgQBAAAA5UABB17jFQDhARYEAQAAAOZAAQdeo4oA4QEWBAEAAADnQAEHXoMhAOEBFgQBAAAA6EABB17DGQDhARYEAQAAAOlAAQdeg2QA4QEWBAEAAADqQAEHXsMZAOEBFgQBAAAA60ABB15jHwDhARYEAQAAAOxAAQdewxkA4QEWBAEAAADtQAEHXmMeAOEBFgQBAAAA7kABB17DIADhARwMAQAAAO9AAQdewxkA4QEWBAEAAADwQAEHXsMZAOEBFgQBAAAA8UABB17jGQDhARYEAQAAAPJAAQdegyEA4QEWBAEAAADzQAEHXoMnAOEBFgQBAAAA9EABB17DGQDhARYEAQAAAPVAAQdegyIA4QEcDAEAAAD2QAEHXuMZAOEBFgQBAAAA90ABB17jGQDhARYEAQAAAPhAAQdeYxkA4QEWBAEAAAD5QAEFXqOKAOEBFgQBAAAA+kABB15jKQDhARYEAQAAAPtAAQdewygA4QEcDAEAAAD8QAEHXmMeAOEBFgQBAAAA/UABB17jFQDhARYEAQAAAP5AAQdewxkA4QEWBAEAAAD/QAEHXmMpAOEBFgQBAAAAAEEBB15DIADhAQwgAQAAAAFBAQdewxkA4QEWBAEAAAACQQEHXoMhAOEBFgQBAAAAA0EBB15jGwDhAQwgAQAAAARBAQdew0oA4QEMIAEAAAAFQQEHXuMZAOEBFgQBAAAABkEBB16jGADhARYEAQAAAAdBAQdewygA4QEcDAEAAAAIQQEHXgM6AOEBDCABAAAACUEBB17jGQDhARYEAQAAAApBAQdegyEA4QEWBAEAAAALQQEHXoMhAOEBFgQBAAAADEEBB17DGQDhARYEAQAAAA1BAQdeA0AA4QEWBAEAAAAOQQEHXmMeAOEBFgQBAAAAD0EBB16DJwDhARYEAQAAABBBAQdeYykA4QEWBAEAAAARQQEHXkMlAOEBFgQBAAAAEkEBB17jFQDhARYEAQAAABNBAQdegxwA4QEWBAEAAAAUQQEHXkMxAOEBFgQBAAAAFUEBB14DLQDhARYEAQAAABZBAQdegxwA4QEWBAEAAAAXQQEHXgNAAOEBFgQBAAAAGEEBB16D0ADhARpAAQAAABlBAQVeoyYA4QEgAAEAAAAZQQECXuMVAOEBGkABAAAAGUEBBV5jHADhARYEAQAAABxBAQdeoyoA4QEcDAEAAAAdQQEHXmMbAOEBDCABAAAAHkEBB14DGwHhARpAAQAAABlBAQVeQzEA4QEWBAEAAAAgQQEHXmNXAOEBGkABAAAAIUEBBV6DogDhARYEAQAAACJBAQdeoxgA4QEWBAEAAAAjQQEHXmNWAOEBGkABAAAAIUEBBV7jFQDhARpAAQAAACFBAQVe42sA4QEaQAEAAAAhQQEFXgNAAOEBFgQBAAAAJ0EBB14DQADhARYEAQAAACdBAUdeY5QA4QEaQAEAAAApQQEHXuMVAOEBGkABAAAAKUEBBV7jgQDhARpAAQAAAClBAQVeIxoA4QEWBAEAAAAsQQEHXsMaAOEBHAwBAAAALUEBB16DsQDhARYEAQAAAC5BAQdeoyYA4QEWBAEAAAAvQQEHXgNAAOEBFgQBAAAAMEEBB17DVgDhARYEAQAAADRBAQVew0oA4QEWBAEAAAA0QQEFXmMbAOEBDCABAAAAM0EBB15jJQHhARYEAQAAADRBAQde4z8A4QEaQAEAAAA1QQEHXgNAAOEBFgQBAAAANkEBB15j3gDhARYEAQAAADdBAQde40wA4QEWBAEAAAA4QQEHXsMZAOEBFgQBAAAAOUEBB16DMQDhARYEAQAAADpBAQdewxkA4QEWBAEAAAA7QQEHXuMZAOEBFgQBAAAAPEEBB14DGQDhAQwgAQAAAD1BAQdegzEA4QEWBAEAAAA+QQEHXiMgAOEBGkABAAAAQEEBBV7DNQDhARpAAQAAAEBBAQdeoxgA4QEWBAEAAABBQQEHXkMlAOEBFgQBAAAAQkEBB15jGwDhAQwgAQAAAENBAQdeYyIA4QEWBAEAAABEQQEHXoMxAOEBFgQBAAAARUEBB14jGgDhARYEAQAAAEZBAQde4xkA4QEWBAEAAABHQQEHXsMZAOEBFgQBAAAASEEBB16DIgDhARwMAQAAAElBAQde4xkA4QEWBAEAAABKQQEHXuNWAOEBHAwBAAAAS0EBB15jGwDhAQwgAQAAAExBAQdeoykA4QEWBAEAAABNQQEHXsMZAOEBFgQBAAAATkEBB16DMQDhARYEAQAAAE9BAQde4xUA4QEWBAEAAABQQQEHXuMZAOEBFgQBAAAAUUEBB15jKQDhARYEAQAAAFJBAQdeYxsA4QEMIAEAAABTQQEHXqMpAOEBFgQBAAAAVEEBB17DigDhARYEAQAAAFRBAUdeA5EA4QEaQAEAAABWQQEHXsMZAOEBFgQBAAAAV0EBB15jGQDhARYEAQAAAFhBAQdeA0AA4QEWBAEAAABZQQEHXiN6AOEBFgQBAAAAWkEBB14DQADhARYEAQAAAFtBAQdew3sA4QEWBAEAAABcQQEHXsMaAOEBHAwBAAAAXUEBB17DGQDhARpAAQAAAF5BAQdeA1gA4QEaQAEAAABeQQEFXuMVAOEBGkABAAAAXkEBBV5DVgDhARpAAQAAAGFBAQde4xUA4QEaQAEAAABhQQEFXkPQAOEBGkABAAAAYUEBBV7jGQDhARYEAQAAAGRBAQdeYxwA4QEWBAEAAABlQQEHXqMqAOEBHAwBAAAAZkEBB15jGwDhAQwgAQAAAGdBAQdeQ2sA4QEaQAEAAABoQQEHXgNAAOEBFgQBAAAAaUEBB16jdQDhARpAAQAAAGhBAQVeI1cA4QEWBAEAAABrQQEHXkMxAOEBFgQBAAAAbEEBB17DGQDhARYEAQAAAG1BAQdeYxsA4QEMIAEAAABuQQEHXoMiAOEBHAwBAAAAb0EBB16jGADhARYEAQAAAHBBAQdeA6AA4QEaQAEAAABxQQEHXuMZAOEBGkABAAAAcUEBBV7jFQDhARpAAQAAAHFBAQVeg4kA4QEaQAEAAABxQQEFXiNBAOEBFgQBAAAAdUEBB15DHQDhARYEAQAAAHZBAQdeYx8A4QEWBAEAAAB3QQEHXoMhAOEBFgQBAAAAeEEBB17DGQDhARYEAQAAAHlBAQdeQyUA4QEWBAEAAAB6QQEHXuMVAOEBFgQBAAAAe0EBB15jGwDhAQwgAQAAAHxBAQdeo9oA4QEWBAEAAAB9QQEHXmOkAOEBIgQBAAAAfkEBBl7jGQDhARYEAQAAAH9BAQde4xkA4QEWBAEAAACAQQEHXuMZAOEBFgQBAAAAgUEBB16DIQDhARYEAQAAAIJBAQdeYxwA4QEWBAEAAACDQQEHXqMqAOEBHAwBAAAAhEEBB15jGwDhAQwgAQAAAIVBAQdeoyMA4QEWBAEAAACGQQEHXmNpAOEBHAwBAAAAh0EBB15jGwDhAQwgAQAAAIhBAQdewxcA4QEWBAEAAACJQQEHXsMYAOEBFgQBAAAAikEBB17DHgDhARYEAQAAAItBAQdewxoA4QEcDAEAAACMQQEHXsMZAOEBFgQBAAAAjUEBB15DOADhARYEAQAAAI5BAQdeI6wA4QEaQAEAAACPQQEHXgNAAOEBIAQBAAAAj0EBAl4DWADhARpAAQAAAI9BAQVeIw8B4QEaQAEAAACSQQEHXoNKAOEBFgQBAAAAk0EBB15jgQDhARYEAQAAAJRBAQdeA0AA4QEWBAEAAACVQQEHXkMlAOEBFgQBAAAAlkEBB16DZADhARYEAQAAAJdBAQdewxkA4QEWBAEAAACYQQEHXoMiAOEBHAwBAAAAmUEBB15DWADhARYEAQAAAJpBAQdeY1YA4QEWBAEAAACbQQEHXqMkAOEBFgQBAAAAnEEBB14jkADhARYEAQAAAJ1BAQdeYx8A4QEWBAEAAACeQQEHXqMYAOEBFgQBAAAAn0EBB15jKQDhARYEAQAAAKBBAQdeA+cA4QEWBAEAAAChQQEHXmMfAOEBFgQBAAAAokEBB14DKQDhARpAAQAAAKNBAQdeYxkA4QEWBAEAAACkQQEHXsMjAOEBGkABAAAAo0EBBV4DQADhARYEAQAAAKZBAQdeQyUA4QEWBAEAAACnQQEHXiMtAOEBGkABAAAAqEEBBV5jVgDhARpAAQAAAKhBAQVe4xUA4QEaQAEAAACoQQEFXuNrAOEBGkABAAAAqEEBBV7DGQDhARYEAQAAAKxBAQdeQ2QB4QEWBAEAAACtQQEHXgOlAOEBFgQBAAAArkEBB17DOQDhARYEAQAAAK9BAQdewxkA4QEWBAEAAACwQQEHXuMVAOEBFgQBAAAAsUEBB15jHwDhARYEAQAAALJBAQde4xkA4QEWBAEAAACzQQEHXmMbAOEBDCABAAAAtEEBB17DIADhARYEAQAAALVBAQdeoxgA4QEWBAEAAAC2QQEHXkM6AOEBFgQBAAAAt0EBB15DIADhAQwgAQAAALhBAQdewxkA4QEWBAEAAAC5QQEHXqMwAOEBFgQBAAAAukEBB14DQADhARYEAQAAALtBAQdeo4oA4QEWBAEAAAC8QQEHXmMbAOEBDCABAAAAvUEBB17jFQDhARYEAQAAAL5BAQdeY1YA4QEWBAEAAAC/QQEHXuMVAOEBFgQBAAAAwEEBB15jMQDhARwMAQAAAMFBAQdeY6AA4QEWBAEAAADCQQEHXmMZAOEBFgQBAAAAw0EBB14DzwDhARpAAQAAAMRBAQVeY1YA4QEaQAEAAADEQQEFXuMVAOEBGkABAAAAxEEBBV7j4wDhARpAAQAAAMRBAQVewycB4QEaQAEAAADIQQEHXgNAAOEBFgQBAAAAyUEBB17jFQDhAQwgAQAAAMpBAQdeQw4B4QEaQAEAAADIQQEFXkMgAOEBDCABAAAAzEEBB17DGQDhARYEAQAAAM1BAQdeYxsA4QEMIAEAAADOQQEHXoMiAOEBHAwBAAAAz0EBB16jGgDhARYEAQAAANBBAQdeA0AA4QEWBAEAAADRQQEHXoM5AOEBFgQBAAAA0kEBB14jJgDhARpAAQAAANNBAQdeAyoA4QEaQAEAAADTQQEFXiN6AOEBFgQBAAAA1UEBB17jGQDhARYEAQAAANZBAQdewxkA4QEWBAEAAADXQQEHXkMgAOEBDCABAAAA2EEBB17DGQDhARYEAQAAANlBAQdeYykA4QEWBAEAAADaQQEHXuMZAOEBFgQBAAAA20EBB17jGQDhARYEAQAAANxBAQdeA0sA4QEWBAEAAADdQQEHXiMlAOEBFgQBAAAA3kEBB17DGQDhARYEAQAAAN9BAQdeQyUA4QEWBAEAAADgQQEHXmMbAOEBDCABAAAA4UEBB15jHwDhARYEAQAAAOJBAQdeo6AA4QEWBAEAAADjQQEHXkM6AOEBFgQBAAAA5EEBB17jFQDhARYEAQAAAOVBAQdeYzEA4QEcDAEAAADmQQEHXsMZAOEBFgQBAAAA50EBB16DIgDhARwMAQAAAOhBAQdegycA4QEWBAEAAADpQQEHXqMwAOEBFgQBAAAA6kEBB17DewDhARYEAQAAAOtBAQdegzEA4QEWBAEAAADsQQEHXgM0AOEBFgQBAAAA7UEBB17jaQDhARpAAQAAAO5BAQde44EA4QEaQAEAAADuQQEFXsMYAOEBFgQBAAAA8EEBB14DQADhARYEAQAAAPFBAQdeA5QA4QEWBAEAAADyQQEHXkNYAOEBFgQBAAAA80EBB17jFQDhARYEAQAAAPRBAQdeYzEA4QEcDAEAAAD1QQEHXiNXAOEBFgQBAAAA9kEBB17jGQDhARYEAQAAAPdBAQdewxkA4QEWBAEAAAD4QQEHXmMbAOEBDCABAAAA+UEBB16jJgDhARYEAQAAAPpBAQdeoxgA4QEWBAEAAAD7QQEHXiNFAOEBGkABAAAA/EEBB15jHwDhARYEAQAAAP1BAQde4xkA4QEWBAEAAAD+QQEHXiNXAOEBFgQBAAAA/0EBB16DMQDhARpAAQAAAARCAQVeIyAA4QEaQAEAAAAEQgEFXuNWAOEBHAwBAAAAAkIBB15jGwDhAQwgAQAAAANCAQdeg2YA4QEgBAEAAAAEQgEGXgMEAeEBGkABAAAABUIBBV5jVgDhARpAAQAAAAVCAQVe4xUA4QEaQAEAAAAFQgEFXuOxAOEBGkABAAAABUIBBV6DJwDhARYEAQAAAAlCAQdeozAA4QEWBAEAAAAKQgEHXuMZAOEBFgQBAAAAC0IBB17jFQDhARYEAQAAAAxCAQde4xkA4QEWBAEAAAANQgEHXuMVAOEBFgQBAAAADkIBB15jMQDhARwMAQAAAA9CAQdeYx8A4QEWBAEAAAAQQgEHXqOUAOEBGkABAAAAEUIBBV7DGQDhARYEAQAAABJCAQdeY1YA4QEaQAEAAAARQgEFXmMfAOEBFgQBAAAAFEIBB17jFQDhARpAAQAAABFCAQVeQyoA4QEaQAEAAAAWQgEHXqMYAOEBFgQBAAAAF0IBB14DygDhARpAAQAAABhCAQde4+MA4QEaQAEAAAAYQgEFXoMxAOEBFgQBAAAAGkIBB16DJwDhARYEAQAAABtCAQde4xUA4QEaQAEAAAAcQgEHXiOnAOEBGkABAAAAHEIBBV5jHwDhARYEAQAAAB5CAQdeA4QA4QEWBAEAAAAfQgEHXqNvAOEBFgQBAAAAIEIBB16DMQDhARYEAQAAACFCAQdeYxwA4QEWBAEAAAAiQgEHXoPDAOEBGkABAAAAI0IBB16jwwDhARpAAQAAACNCAQVeoyMA4QEWBAEAAAAlQgEHXsMZAOEBFgQBAAAAJkIBB15DJQDhARYEAQAAACdCAQdewxkA4QEWBAEAAAAoQgEHXiMzAOEBFgQBAAAAKUIBB16DIQDhARYEAQAAACpCAQdeoxoA4QEWBAEAAAArQgEHXqMnAOEBGkABAAAALEIBB16DMADhARpAAQAAAC1CAQde4xkA4QEWBAEAAAAuQgEHXiOsAOEBFgQBAAAAL0IBB16jigDhARYEAQAAADBCAQdewxoA4QEcDAEAAAAxQgEHXsMZAOEBFgQBAAAAMkIBB16DIgDhARwMAQAAADNCAQdeYx8A4QEWBAEAAAA0QgEHXkMgAOEBDCABAAAANUIBB17DGQDhARYEAQAAADZCAQdeYxsA4QEMIAEAAAA3QgEHXoMiAOEBHAwBAAAAOEIBB17jGQDhARYEAQAAADlCAQdegzEA4QEWBAEAAAA6QgEHXgOEAOEBFgQBAAAAO0IBB16DJwDhARYEAQAAADxCAQdewxkA4QEWBAEAAAA9QgEHXuMZAOEBFgQBAAAAPkIBB16DIQDhARYEAQAAAD9CAQdegycA4QEWBAEAAABAQgEHXuMgAOEBFgQBAAAAQUIBB17DGQDhARYEAQAAAEJCAQdewxkA4QEWBAEAAABDQgEHXoMnAOEBFgQBAAAAREIBB16DJwDhARYEAQAAAEVCAQde4xUA4QEWBAEAAABGQgEHXkMgAOEBDCABAAAAR0IBB17DGQDhARYEAQAAAEhCAQde4xkA4QEWBAEAAABJQgEHXuMVAOEBFgQBAAAASkIBB15jMQDhARwMAQAAAEtCAQdeYxwA4QEWBAEAAABMQgEHXgNiAOEBFgQBAAAATUIBB14jsgDhARYEAQAAAE5CAQdeoxgA4QEWBAEAAABPQgEHXkMwAOEBFgQBAAAAUEIBB17jFQDhARYEAQAAAFFCAQdeYzEA4QEcDAEAAABSQgEHXsM5AOEBFgQBAAAAU0IBB16DNADhARYEAQAAAFRCAQdeA0AA4QEWBAEAAABVQgEHXgMlAOEBFgQBAAAAVkIBB14jNADhARYEAQAAAFdCAQdegxwA4QEWBAEAAABYQgEHXsMaAOEBHAwBAAAAWUIBB14jGgDhARYEAQAAAFpCAQdewxoA4QEcDAEAAABbQgEHXuMVAOEBFgQBAAAAXEIBB17jFQDhARYEAQAAAF1CAQdegycA4QEWBAEAAABeQgEHXqMwAOEBFgQBAAAAX0IBB15jHADhARYEAQAAAGBCAQdeIxoA4QEWBAEAAABhQgEHXsMaAOEBHAwBAAAAYkIBB16jigDhARYEAQAAAGNCAQdeoyYA4QEWBAEAAABkQgEHXuMZAOEBFgQBAAAAZUIBB17jGQDhARYEAQAAAGZCAQdegyEA4QEWBAEAAABnQgEHXkMxAOEBFgQBAAAAaEIBB16DdADhARpAAQAAAGlCAQdeA0AA4QEWBAEAAABqQgEHXgNYAOEBGkABAAAAaUIBBV7jFQDhAR4AAQAAAGlCAQJeoxgA4QEWBAEAAABtQgEHXmNWAOEBFgQBAAAAbkIBB15jVgDhARYEAQAAAG9CAQdeYxkA4QEWBAEAAABwQgEHXuMZAOEBFgQBAAAAcUIBB14DSwDhARYEAQAAAHJCAQdeg0oA4QEWBAEAAABzQgEHXgMnAOEBGkABAAAAdEIBB16DHADhARYEAQAAAHVCAQdewxkA4QEWBAEAAAB2QgEHXmMfAOEBFgQBAAAAd0IBB17jFQDhARYEAQAAAHhCAQdewxkA4QEWBAEAAAB5QgEHXuMZAOEBFgQBAAAAekIBB15DJQDhARYEAQAAAHtCAQde4xkA4QEWBAEAAAB8QgEHXmMfAOEBFgQBAAAAfUIBB16jigDhARYEAQAAAH5CAQdeg+8A4QEaQAEAAAB/QgEHXoNkAOEBFgQBAAAAgEIBB15D9wDhARpAAQAAAH9CAQVegxwA4QEWBAEAAACCQgEHXiMaAOEBFgQBAAAAg0IBB17DGQDhARYEAQAAAIRCAQdegyIA4QEcDAEAAACFQgEHXuMVAOEBLAABAAAAhkIBBl5jMQDhARwMAQAAAIdCAQdeA0sA4QEWBAEAAACIQgEHXqOKAOEBFgQBAAAAiUIBB15jGwDhAQwgAQAAAIpCAQde4xUA4QEWBAEAAACLQgEHXoMxAOEBGkABAAAAkkIBBV7DVgDhARYEAQAAAJJCAQVeIyAA4QEaQAEAAACSQgEFXsNKAOEBFgQBAAAAkkIBBV7jVgDhARwMAQAAAJBCAQdeYxsA4QEMIAEAAACRQgEHXoNuAOEBIAABAAAAkkIBBl7jlgDhARpAAQAAAJNCAQdegzEA4QEWBAEAAACUQgEHXsNWAOEBDCABAAAAlUIBB14jIADhARpAAQAAAJNCAQVf4xwB5wEmCAFAAQCYQhEFXuMcAeEBJgjhBAAAmEIBFV4DQADhARYEAQAAAJlCAQdeYx8A4QEWBAEAAACaQgEHXmMbAOEBDCABAAAAm0IBB16jJADhASwAAQAAAJxCAQZeY1YA4QEWBAEAAACdQgEHXmMfAOEBFgQBAAAAnkIBB17jFQDhARYEAQAAAJ9CAQdeA0AA4QEWBAEAAACgQgEHXoNQAOEBJggBAAAAoUIBBV7jGQDhARYEAQAAAKJCAQdegzkA4QEWBAEAAACjQgEHXmMZAOEBFgQBAAAApEIBB17DGQDhASIAAQAAAKVCAQZeYxkA4QEWBAEAAACmQgEHXqMYAOEBFgQBAAAAp0IBB14DIwDhARYEAQAAAKhCAQdewxkA4QEWBAEAAACpQgEHXgOGAOEBFgQBAAAAqkIBB17DFwDhARYEAQAAAKtCAQdeoxgA4QEWBAEAAACsQgEHXgNAAOEBFgQBAAAArUIBB14DQADhARYEAQAAAK1CAUdewxkA4QEWBAEAAACvQgEHXsMZAOEBFgQBAAAAsEIBB17DGQDhARYEAQAAALFCAQdeA0AA4QEWBAEAAACyQgEHXgNAAOEBFgQBAAAAs0IBB17DGQDhARYEAQAAALRCAQdegycA4QEWBAEAAAC1QgEHXuMZAOEBFgQBAAAAtkIBB16DMQDhARYEAQAAALdCAQdeQzEA4QEWBAEAAAC4QgEHXoOIAOEBFgQBAAAAuUIBB16jsADhARYEAQAAALpCAQdeA0AA4QEWBAEAAAC7QgEHXgMzAOEBFgQBAAAAvEIBB15jJQHhARwMAQAAAL1CAQdeYxsA4QEMIAEAAAC+QgEHXuMVAOEBFgQBAAAAv0IBB15jGwDhAQwgAQAAAMBCAQdeI0EA4QEWBAEAAADBQgEHXkMcAOEBFgQBAAAAwkIBB16DYwDhAQwgAQAAAMNCAQdeo4oA4QEWBAEAAADEQgEHXsMaAOEBHAwBAAAAxUIBB15jGwDhAQwgAQAAAMZCAQdeA4YA4QEWBAEAAADHQgEHXuMZAOEBFgQBAAAAyEIBB14jgQDhARpAAQAAAMlCAQdeo4oA4QEWBAEAAADKQgEHXqMYAOEBFgQBAAAAy0IBB15jHwDhARYEAQAAAMxCAQdeYyQA4QEaQAEAAADNQgEHXiM3AOEBGkABAAAAzUIBBV5jIADhARpAAQAAAM9CAQde4xkA4QEWBAEAAADQQgEHXqM9AOEBGkABAAAAz0IBBV7jFQDhAR4AAQAAAJNCAQJegxwA4QEWBAEAAADTQgEHXkMgAOEBDCABAAAA1EIBB17DGgDhARwMAQAAANVCAQdeozwA4QEMIAEAAADWQgEHXoMiAOEBHAwBAAAA10IBB14jRgDhARYEAQAAANhCAQdeozwA4QEMIAEAAADZQgEHXqM8AOEBDCABAAAA2kIBB16jPADhAQwgAQAAANtCAQdeozwA4QEMIAEAAADcQgEHXsMZAOEBFgQBAAAA3UIBB17DGQDhARYEAQAAAN5CAQdegycA4QEWBAEAAADfQgEHXmMbAOEBDCABAAAA4EIBB14jMADhARYEAQAAAOFCAQdewxoA4QEcDAEAAADiQgEHXmMbAOEBDCABAAAA40IBB17DGQDhARYEAQAAAORCAQdegyIA4QEcDAEAAADlQgEHXmMfAOEBFgQBAAAA5kIBB17jGQDhARYEAQAAAOdCAQdeIzMA4QEWBAEAAADoQgEHXqMYAOEBFgQBAAAA6UIBB17DGQDhARYEAQAAAOpCAQdeYxkA4QEWBAEAAADrQgEHXoMxAOEBFgQBAAAA7EIBB15jGwDhAQwgAQAAAO1CAQdeYxkA4QEWBAEAAADuQgEHXuMVAOEBFgQBAAAA70IBB14jKADhARpAAQAAAPBCAQdeA0AA4QEgQAEAAADwQgECXuMVAOEBHkABAAAA8EIBAl7DVADhARpAAQAAAPBCAQVewxkA4QEWBAEAAAD0QgEHXuMZAOEBFgQBAAAA9UIBB17jGQDhARYEAQAAAPZCAQdegycA4QEWBAEAAAD3QgEHXqMwAOEBFgQBAAAA+EIBB17DGQDhARYEAQAAAPlCAQdegzEA4QEWBAEAAAD6QgEHXoMnAOEBFgQBAAAA+0IBB15jHgDhARYEAQAAAPxCAQdegyEA4QEWBAEAAAD9QgEHXoMxAOEBFgQBAAAA/kIBB15DOgDhARYEAQAAAP9CAQdeYyIA4QEWBAEAAAAAQwEHXoMnAOEBFgQBAAAAAUMBB16jMADhARYEAQAAAAJDAQde4xkA4QEWBAEAAAADQwEHXsMoAOEBHAwBAAAABEMBB17jVgDhARwMAQAAAAVDAQdeYxsA4QEMIAEAAAAGQwEHXkMxAOEBFgQBAAAAB0MBB17DGQDhARYEAQAAAAhDAQdegyIA4QEcDAEAAAAJQwEHXuMZAOEBFgQBAAAACkMBB15jIgDhARYEAQAAAAtDAQdeYxkA4QEWBAEAAAAMQwEHXqOKAOEBFgQBAAAADUMBB17jFQDhARYEAQAAAA5DAQdeYzEA4QEcDAEAAAAPQwEHXoNKAOEBFgQBAAAAEEMBB16jGADhARYEAQAAABFDAQdewxkA4QEWBAEAAAASQwEHXoMxAOEBFgQBAAAAE0MBB15jIgDhARYEAQAAABRDAQde4xUA4QEWBAEAAAAVQwEHXmMfAOEBFgQBAAAAFkMBB17jFgDhARpAAQAAABdDAQdegx0A4QEWBAEAAAAYQwEHXoNkAOEBFgQBAAAAGUMBB15DJQDhARYEAQAAABpDAQdeQycA4QEWBAEAAAAbQwEHXuNpAOEBFgQBAAAAHEMBB15jGwDhAQwgAQAAAB1DAQdeQycA4QEWBAEAAAAeQwEHXmMbAOEBDCABAAAAH0MBB15jGwDhAQwgAQAAACBDAQdeQ6QA4QEWBAEAAAAhQwEHXgNAAOEBFgQBAAAAIkMBB17jFQDhARYEAQAAACNDAQdeYzEA4QEcDAEAAAAkQwEHXmMbAOEBDCABAAAAJUMBB16DawDhARpAAQAAACZDAQde4xUA4QEaQAEAAAAmQwEFXmMlAOEBGkABAAAAJkMBBV5jOgDhARpAAQAAAClDAQdeoycA4QEWBAEAAAAqQwEHXqMkAOEBHAwBAAAAK0MBB15jGwDhAQwgAQAAACxDAQdeYxkA4QEWBAEAAAAtQwEHXuMVAOEBFgQBAAAALkMBB15jMQDhARwMAQAAAC9DAQdeg1wA4QEWBAEAAAAwQwEHXuMZAOEBFgQBAAAAMUMBB17DKADhARwMAQAAADJDAQdeQyUA4QEWBAEAAAAzQwEHXsMZAOEBFgQBAAAANEMBB14jVwDhARYEAQAAADVDAQdewygA4QEWBAEAAAA2QwEHXoMxAOEBFgQBAAAAN0MBB17jVgDhARwMAQAAADhDAQdeYxsA4QEMIAEAAAA5QwEHXiNBAOEBFgQBAAAAOkMBB15DJQDhARYEAQAAADtDAQdeA+cA4QEWBAEAAAA8QwEHXgPKAOEBGkABAAAAPUMBB15jVgDhASAAAQAAAD1DAQJe4xUA4QEaQAEAAAA9QwEFXuPjAOEBGkABAAAAPUMBBV4DQADhARYEAQAAAEFDAQdeg1gA4QEWBAEAAABCQwEHXuMVAOEBFgQBAAAAQ0MBB15jGwDhAQwgAQAAAERDAQdeQ4wA4QEaQAEAAABFQwEHXiMAAuEBGkABAAAARkMBB15jVgDhARpAAQAAAEZDAQVe4xUA4QEaQAEAAABGQwEFXuNrAOEBGkABAAAARkMBBWBDAALVAXwIAQAAAEpDARRhYwACMgIYMAEAAABLQxEFYMOZAdkBGDABAAAAS0MBBWADoADhASIEAQAAAE1DAQZgIyUA4QEWBAEAAABOQwEHYONMAOEBGkABAAAAT0MBB2AjJgDhAQwgAQAAAFBDAQdg4xUA4QEeAAEAAABPQwECYGM4AOEBGkABAAAAT0MBBWDjFQDhAQwgAQAAAFNDAQdgYyYA4QEMIAEAAABUQwEHYKNvAOEBGkABAAAAVUMBB2AjZQDhARpAAQAAAFVDAQVg4xUA4QEWBAEAAABXQwEHYAM4AOEBFgQBAAAAWEMBB2BjKQDhARYEAQAAAFlDAQdggxcA4QEeQAEAAABaQwEGYOMZAOEBGkABAAAAWkMBBWADGgDhAQwgAQAAAFpDAQVg4xUA4QEeQAEAAABaQwECYAMYAOEBDCABAAAAXkMBB2BjPwDhARpAAQAAAF9DAQdgQyUA4QEWBAEAAABgQwEHYOMVAOEBHgABAAAAX0MBAmBjJQDhARpAAQAAAF9DAQVgo0sA4QEWBAEAAABjQwEHYGM7AOEBFgQBAAAAZEMBB2ADJgDhAR5AAQAAAGVDAQZgQyUA4QEaQAEAAABlQwEFYOMfAOEBHgABAAAAZUMBBGDjFQDhARpAAQAAAGVDAQVgA0IA4QEMIAEAAABpQwEHYOMWAOEBGkABAAAAakMBB2CjSwDhARpAAQAAAG1DAQVgY3oA4QEwBAEAAABsQwEGYIM5AOEBGkABAAAAbUMBB2AjJgDhAQwgAQAAAG5DAQdg4xUA4QEaQAEAAABtQwEFYIOzAOEBGkABAAAAbUMBBWDjHgDhARpAAQAAAHFDAQdggx8A4QEMIAEAAAByQwEHYANGAOEBDCABAAAAc0MBB2DjjwDhAQwgAQAAAHRDAQdgA24A4QEiAAEAAAB1QwEGYENFAOEBHgABAAAAdkMBBmDjGQDhARYEAQAAAHdDAQdg4xUA4QEeAAEAAAB2QwECYANXAOEBGkABAAAAdkMBBWDjtwDhAQwgAQAAAHpDAQdgIycA4QEaQAEAAAB7QwEHYOMVAOEBGkABAAAAe0MBBWCDRQDhARpAAQAAAHtDAQVgo6oA4QEWBAEAAAB+QwEHYCMyAOEBFgQBAAAAf0MBB2BjvADhASYIAQAAAIBDARVgY1YA4QEaQAEAAABKQwEFYIN/AOEBIgQBAAAAgkMBBmAjGQDhASIAAQAAAINDAQZgIwIB4QEeAAEAAACEQwEGYOMVAOEBGkABAAAAhEMBBWAjMgDhASwAAQAAAIZDAQZg4xUA4QEaQAEAAABKQwEFYKMjAOEBFgQBAAAAiEMBB2BjaQDhARwMAQAAAIlDAQdgYxsA4QEMIAEAAACKQwEHYEMgAOEBFgQBAAAAi0MBB2BjGwDhAQwgAQAAAIxDAQdgQ84B4QEMIAEAAACNQwEHYKMnAOEBGkABAAAAjkMBB2CDJwDhARYEAQAAAI9DAQdgQysA4QEaQAEAAACOQwEFYANLAOEBIgABAAAAkUMBBmDDIADhARwMAQAAAJJDAQdgYxsA4QEMIAEAAACTQwEHYKMnAOEBGkABAAAAlEMBB2BDKwDhARpAAQAAAJRDAQVg4xUA4QEMIAEAAACWQwEHYIMpAOEBHAwBAAAAl0MBB2DjxADhAQwgAQAAAJhDAQdgYxwA4QEWBAEAAACZQwEHYKMqAOEBHAwBAAAAmkMBB2DDTADhARpAAQAAAJtDAQdg4xkA4QEaQAEAAACbQwEFYOMeAOEBDCABAAAAnUMBB2DjFQDhARpAAQAAAJtDAQVgI2AA4QEaQAEAAACbQwEFYYMAAjICDCABAAAAoEMRBWCjCQHZARogAQAAAEpDAQVgY1kA4QEMIAEAAACiQwEHYMNcAOEBFgQBAAAAo0MBB2BDkQDhAS5AAQAAAKRDAQZgY5EA4QEMIAEAAACkQwEFYOMeAOEBDCABAAAApkMBB2DjFQDhASBAAQAAAKRDAQJgQ8IA4QEMIAEAAACoQwEHYMMfAOEBDAwBAAAAqUMBB2DDzADhAQwgAQAAAKpDAQdg4zoA4QFIAAEAAACrQwEGYMMmAOEBDCABAAAArEMBB2DjJgDhARpAAQAAAKtDAQVg4xUA4QEaQAEAAACrQwEFYMNJAOEBFgQBAAAAr0MBB2DjSQDhATAgAQAAALBDAQZg4xUA4QEWBAEAAACxQwEHYEN/AOEBIiABAAAAskMBBmCDFwDhARwEAQAAALNDAQdgIx0A4QEsDAEAAAC0QwEGYEOMAOEBDCABAAAAtUMBB2CjlQDhAQwgAQAAALZDAQdg41UA4QEMIAEAAAC3QwEHYMOLAOEBDCABAAAAuEMBB2CjQgDhAQwgAQAAALlDAQdgQ1cA4QEMIAEAAAC6QwEHYANLAOEBFgQBAAAAu0MBB2DDdQDhAQwgAQAAALxDAQdgo6AA4QEwAAEAAAC9QwEGYENCAOEBDCABAAAAvkMBB2CjGADhARYEAQAAAL9DAQdgAyMA4QEsDAEAAADAQwEGYMMoAOEBHAwBAAAAwUMBB2ADMgDhARwMAQAAAMJDAQdgg2sA4QEsAAEAAADDQwEGYgP0AOEBDCABAAAAxEMBB2KjHgDhAQwgAQAAAMVDAQdiAy0A4QEWBAEAAADGQwEHYiMcAOEBDCABAAAAx0MBB2JjNwDhAQwgAQAAAMhDAQdiozwA4QEMIAEAAADJQwEHYmMgAOEBDCABAAAAykMBB2JDSQDhAQwgAQAAAMtDAQdiQxwA4QEMIAEAAADMQwEHYqPkAOEBDCABAAAAzUMBB2JDGgDhAQwgAQAAAM5DAQdigxcA4QEMIAEAAADPQwEHYqMeAOEBDCABAAAA0EMBB2IDIgDhAQwgAQAAANFDAQdiA2sA4QEWBAEAAADSQwEHYmNJAOEBFgQBAAAA00MBB2KjJADhARwMAQAAANRDAQdiAxkA4QEMIAEAAADbQwFHYqMnAOEBGkABAAAA3EMBR2KDJwDhARYEAQAAAN1DAUdiQysA4QEaQAEAAADeQwFFYuMVAOEBGkABAAAA30MBRWJDIADhAQwgAQAAANpDAQdiAxkA4QEMIAEAAADbQwEHYoMwAOEBGkABAAAA3EMBB2KjMADhARYEAQAAAN1DAQdiwzAA4QEaQAEAAADcQwEFYuMVAOEBGkABAAAA3EMBBWKDFwDhARYEAQAAAOBDAQdiI24A4QEMIAEAAADhQwEHYgNFAOEBDCABAAAA4kMBB2KjOQDhAQwgAQAAAONDAQdiIxkA4QEMIAEAAADkQwEHYiM3AOEBDCABAAAA6UMBBWKDLADhAQwgAQAAAOdDAQViozwA4QEMIAEAAADnQwEFYqM8AOEBDCABAAAA6EMBBWLjWgDhAQwgAQAAAOlDAQVigzAB4QEMIAEAAADrQwEFYgMvAOEBDCABAAAA60MBBWKjHgDhAQwgAQAAAOxDAQdiAy0A4QEWBAEAAADtQwEHYuMeAOEBDCABAAAA7kMBB2JDGgDhAQwgAQAAAO9DAQdiox0A4QEMIAEAAADwQwEHYiMcAOEBDCABAAAA8UMBB2JjSQDhAQwgAQAAAPJDAQdiQ6QB4QEMIAEAAADzQwEHYiNSAOEBDCABAAAA80MBBWJDJADhARYEAQAAAPVDAQdiQxoA4QEMIAEAAAD2QwEHYqMdAOEBDCABAAAA90MBB2Ij6wDhAQwgAQAAAPhDAQdiQ8MB4QEMIAEAAAD5QwEHYqOVAOEBHkABAAAA+kMBBmKjJgDhARpAAQAAAPpDAQViQx4A4QEMIAEAAAD8QwEHYsMYAOEBFgQBAAAA/UMBB2LDIADhARwMAQAAAP5DAQdi4yYA4QEaQAEAAAD6QwEFYuMVAOEBHkABAAAA+kMBAmKjGgDhAQwgAQAAAAFEAQdiIzQA4QEWBAEAAAACRAEHYgMiAOEBDCABAAAAA0QBB2IjNADhARYEAQAAAAREAQdiwxcA4QEMIAEAAAAFRAEHYkMrAOEBDCABAAAAB0QBBWIjHADhAQwgAQAAAAdEAQdiYyIA4QEWBAEAAAAIRAEHYoMXAOEBGkABAAAACUQBB2IDGgDhARpAAQAAAAlEAQVi4xUA4QEaQAEAAAAJRAEFYgMZAOEBDCABAAAADEQBB2JjGgDhAQwgAQAAAA1EAQdiYyQA4QEMIAEAAAAORAEHYkPYANkBDCABAAAAD0QBB2JDQgDZAQwgAQAAABBEAQdiw0QA4QEMIAEAAAARRAEHYoM7AOEBDCABAAAAEkQBB2KjHQDhAQwgAQAAABNEAQdigxkA4QEMIAEAAAAURAEHYmMhAOEBDCABAAAAFUQBB2LjMQDhAQwgAQAAABZEAQdio4YA4QEMIAEAAAAXRAEHYoMXAOEBDCABAAAAGEQBB2KjHQDhAQwgAQAAABlEAQdigywA4QEMIAEAAAAaRAEHYsMeAOEBFgQBAAAAG0QBB2IjGQDhAQwgAQAAABxEAQdi44sA4QEMIAEAAAAdRAEHYmMgAOEBDCABAAAAHkQBB2JDSQDhAQwgAQAAAB9EAQdiI0EA4QEMIAEAAAAgRAEHYqMAAuEBDCABAAAAIUQBB2KjPADhAQwgAQAAACJEAQdiYyQA4QEWBAEAAAAjRAEHYoMsAOEBDCABAAAAJEQBB2IjTgDhAQwgAQAAACVEAQdiAyIA4QEMIAEAAAAmRAEHYoMXAOEBGkABAAAAJ0QBB2IDGgDhARpAAQAAACdEAQVi4xUA4QEaQAEAAAAnRAEFYgMZAOEBDCABAAAAKkQBB2MDwwHnARgwAQAAACtEEQViA8MB4QEYMAEAAAArRAEHYgONAOEBFgQBAAAALUQBB2IDLwDhAQwgAQAAAC5EAQdkwwAC0gEYMAEAQAMvRBEFZeMAAtUBFCwBAEADMEQBFWQDAQJMBAwgCwAAADJEEQVlIwECUAQMIAsAAAAyRAEFZEMBAjICGDABAAAAM0QRBWWjcgDZARgwAQAAADNEAQdlQyAA4QEMIAEAAAA1RAEHZcMZAOEBFgQBAAAANkQBB2VjGwDhAQwgAQAAADdEAQdlA/QA4QEMIAEAAAA4RAEHZGMBAt4BGDABAAAAOUQRBWWDAQLhAQwgAQAAADpEAQdl4zoA4QEMIAEAAAA7RAEHZeMmAOEBDCABAAAAO0QBBWUjHgDhAQwgAQAAAD1EAQdlw7IA4QEMIAEAAAA+RAEHZaMBAuEBDCABAAAAP0QBB2XDAQLhAQwgAQAAAEBEAQdl428A2QEMIAEAAABBRAEFZeMBAuEBDCABAAAAQkQBB2XDKgDZAR4gAQAAAENEAQZlwxkA4QEWBAEAAABERAEHZWMbAOEBDCABAAAARUQBB2WDJwDhASBAAQAAAENEARJlo4oA4QEWBAEAAABHRAEHZcMaAOEBHAwBAAAASEQBB2VjGwDhAQwgAQAAAElEAQdlYxsA4QEWBAEAAABKRAEHZaMqAOEBHAwBAAAAS0QBB2VjGwDhAQwgAQAAAExEAQdlIysA4QEMIAEAAABNRAEHZQMqAOEBDCABAAAATUQBBWVDKwDhAR5AAQAAAENEAQRlg0MA4QEeAAEAAABQRAEGZWMfAOEBGkABAAAAUEQBBWVjVADhAQwgAQAAAFJEAQdl4xUA4QEaQAEAAABQRAEFZQMqAOEBGkABAAAAUEQBBWXjFQDhAR5AAQAAAENEARJkAwIC3gEYMAEAAABWRBEFZSMCAuEBGDABAAAAVkQBB2RDAgLeARgwAQAAAFhEEQVlYwIC4QEYMAEAAABYRAEHZIMCAjICGDABAAAAWkQRBWWjAgLZARgwAQAAAFpEAQdkwwIC3gEYMAEAAABcRBEFZYNJAeEBGDABAAAAXEQBB2TjAgLeARgwAQAAAF5EEQVlAwMC4QEYMAEAAABeRAEHZCMDAt4BGDABAAAAYEQRBWVDAwLhARgwAQAAAGBEAQdlIzAA4QEWBAEAAABiRAEHZcMaAOEBHAwBAAAAY0QBB2VjGwDhAQwgAQAAAGREAQdl4xwA4QEMIAEAAABlRAEHZWMiAOEBIgABAAAAZkQBBmUDMQDhAQwgAQAAAGdEAQdlgx8A4QEMIAEAAABoRAEHZWMcAOEBFgQBAAAAaUQBB2WjKgDhARwMAQAAAGpEAQdlw9gA4QEaQAEAAABrRAEHZQMZAOEBDCABAAAAbEQBB2WDfwDhAQwgAQAAAG1EAQdl4xUA4QEaQAEAAABrRAEFZePYAOEBGkABAAAAa0QBBWXDigDhAQwgAQAAAHBEAQdmYxoA4QEMIAEAAABxRAEHZmMDAtkBDCABAAAAckQBB2ZjqgDhAQwgAQAAAHNEAQdmw1QA4QEMIAEAAABzRAEFZqO2AOEBDCABAAAAd0QBBWZjJADhARYEAQAAAHZEAQdmAy8A4QEMIAEAAAB3RAEHZkM4AOEBFgQBAAAAeEQBB2bDGQDhARYEAQAAAIREAUVmAxkA4QEMIAEAAACFRAFHZqMnAOEBGkABAAAAhkQBR2aDJwDhARYEAQAAAIdEAUdmIysA4QEMIAEAAAB9RAEHZkMrAOEBGkABAAAAiUQBRWbjFQDhARpAAQAAAIpEAUVmQx0A4QEiBAEAAACARAEGZuMhAOEBDCABAAAAgUQBB2YjIADhAQwgAQAAAINEAQVmQyAA4QEiIAEAAACDRAEGZsMZAOEBFgQBAAAAhEQBB2YDGQDhAQwgAQAAAIVEAQdmgzAA4QEaQAEAAACGRAEHZqMwAOEBFgQBAAAAh0QBB2ajRgDhAQwgAQAAAIhEAQdmwzAA4QEaQAEAAACGRAEFZuMVAOEBGkABAAAAhkQBBWYjMgDhASIAAQAAAItEAQZmgwMC2QEMIAEAAACMRAEHZkMdAOEBFgQBAAAAjUQBB2YjfQDhAQwgAQAAAI5EAQdmw2cA4QEMIAEAAACQRAEFZuM0AOEBDCABAAAAkEQBB2bjHgDhASAEAQAAAJFEAQZmwxkA4QEWBAEAAACSRAEHZiMeAOEBDCABAAAAk0QBB2ZjHwDhASAAAQAAAJFEAQJmgx8A4QEMIAEAAACVRAEHZuMVAOEBGkABAAAAkUQBBWYjegDhARwMAQAAAJdEAQdmIzIA4QEiAAEAAACYRAEGZmMbAOEBDCABAAAAmUQBB2YDKgDhARpAAQAAAJFEAQVmQ/0B4QEMIAEAAACbRAEHZ6MDAtkBDCABAAAAnEQBB2fDAwLZAQwgAQAAAJ1EAQdn4wMC2QEMIAEAAACeRAEHZwMEAtkBDCABAAAAn0QBB2cjBALZAQwgAQAAAKBEAQdog0EB4QEMIAEAAAChRAEHaENrAOEBFgQBAAAAokQBB2hDGgDhAQwgAQAAAKNEAQdoYxwA4QEWBAEAAACkRAEHaAM1AOEBDCABAAAApUQBB2jDWQDhAQwgAQAAAKVEAQVoAzQA4QEWBAEAAACnRAEHaEMaAOEBDCABAAAAqEQBB2hDHADhAQwgAQAAAKlEAQdpwz0B4QEMIAEAAACqRAEHaaMaAOEBFgQBAAAAq0QBB2nDHwDhAQwgAQAAAKxEAQdpYxwA4QEWBAEAAACtRAEHaaMqAOEBHAwBAAAArkQBB2ljGwDhAQwgAQAAAK9EAQdqY5YA4QEMIAEAAACwRAEHa+P6AeEBDCABAAAAsUQBB2vDsgDhAQwgAQAAALJEAQdsY0sA5wEYMAEAAACzRBEFa2NLAOEBGDABAAAAs0QBB2tDSwDhARYEAQAAALVEAQdtQwQCcgIZMAEAAACMSCEFbmMEAncCGTABAAAAjEgRBW+DBAJ5AhkwAQAAAIxIAQVvg50B2QEMIAEAAAC5RAEHb0MeAOEBDCABAAAAukQBB29jHgDhARYEAQAAALtEAQdvwyAA4QEcDAEAAAC8RAEHb4MXAOEBGkABAAAAvUQBB2/jGQDhARpAAQAAAL1EAQVvAxoA4QEaQAEAAAC9RAEFb+MVAOEBGkABAAAAvUQBBW8DGQDhAR4gAQAAAMFEAQZvYyoA4QEMIAEAAADCRAEHbwMqAOEBDCABAAAAwkQBBW/jFQDhAR5AAQAAAMFEAQJvYyAA4QEMIAEAAADFRAEHb+MYAOEBDCABAAAAwUQBBW+D6QDhAQwgAQAAAMdEAQdvg1EA4QEMIAEAAADIRAEHb4MXAOEBGkABAAAAyUQBB2/jGQDhARYEAQAAAMpEAQdvAxoA4QEaQAEAAADJRAEFb+MVAOEBHgABAAAAyUQBAm8DGQDhAQwgAQAAAM1EAQdvYxoA4QEMIAEAAADORAEHb2MkAOEBDCABAAAAz0QBB2+DXwDhAQwgAQAAANBEAQdvIzcA4QEMIAEAAADPRAEFb4MsAOEBDCABAAAA0kQBB28DaADhAQwgAQAAANNEAQdvYx4A4QEWBAEAAADURAEHb4MXAOEBGkABAAAA1UQBB28DGgDhARpAAQAAANVEAQVv4xUA4QEgAAEAAADVRAECbwMZAOEBDCABAAAA2EQBB29jGgDhAQwgAQAAANlEAQdvowQC4QEMIAEAAADmRAEFb0MgAOEBDCABAAAA20QBB2+DFwDhARYEAQAAANxEAQdv4xkA4QEWBAEAAADdRAEHbwMZAOEBDCABAAAA3kQBB28jbgDhAQwgAQAAAN9EAQdvA1gA4QEMIAEAAADfRAEFbwMZAOEBDCABAAAA4UQBB28DGQDhAQwgAQAAAOJEAQdvYxwA4QEWBAEAAADjRAEHb6MqAOEBHAwBAAAA5EQBB29jGwDhAQwgAQAAAOVEAQdv4wIB4QEeIAEAAADmRAEGb+MVAOEBGkABAAAA5kQBBW/DWwDhAR4AAQAAAOZEAQRvwwQC2QEaQAEAAADpRAEFbwMoAOEBLiABAAAA6kQBBm/jOgDhAQwgAQAAAOtEAQdvg08A4QEWBAEAAADsRAEHb2MiAOEBDCABAAAA7UQBB2+jJgDhARpAAQAAAOlEAQVv4xUA4QEaQAEAAADpRAEFb8N9AOEBDCABAAAA/0QBBW9DOADhARYEAQAAAPFEAQdvg1EA4QEMIAEAAADyRAEHb0NoAOEBDCABAAAA8kQBBW/DFwDhARYEAQAAAPREAQdv43UA4QEMIAEAAAD1RAEHb0MaAOEBDCABAAAA9kQBB2+jHQDhAQwgAQAAAPdEAQdvQx4A4QEMIAEAAAD4RAEHb2MeAOEBIgQBAAAA+UQBBm+jogDhARpAAQAAAOlEAQVv41IA4QEWBAEAAAD7RAEHb6MkAOEBHAwBAAAA/EQBB29jGwDhAQwgAQAAAP1EAQdvw0oA4QEWBAEAAAD7RAEFbwNIAOEBDCABAAAA/0QBB29DKgDhARYEAQAAAABFAQdvYxwA4QEWBAEAAAABRQEHb6MpAOEBDCABAAAAAkUBB2+DXADhARwMAQAAAANFAQdvY1gA4QEMIAEAAAAERQEHb+MhAOEBDCABAAAABUUBB28jHgDhAQwgAQAAAAZFAQdvQ+sA4QEMIAEAAAAHRQEHb8NcAOEBDCABAAAACEUBB28DGQDhAQwgAQAAAAlFAQdvQx0A4QEMIAEAAAAKRQEHb6MpAOEBIgABAAAAC0UBBm8jHgDhAQwgAQAAAAxFAQdvQx4A4QEMIAEAAAANRQEHb8MYAOEBFgQBAAAADkUBB29jJADhAQwgIQUAAA9FAQdvIzcA4QEMIAEFAAAQRQEFb0MdAOEBDCABAAAAEUUBB29DUQDhAR4AAQAAABJFAQZvw4gA4QEMIAEAAAATRQEHb0MdAOEBIgABAAAAFEUBBm/jIQDhAQwgAQAAABVFAQdvYyIA4QEWBAEAAAAWRQEHbwNIAOEBDCABAAAAF0UBB28jHgDhAQwgAQAAABhFAQdvQx4A4QEMIAEAAAAZRQEHb2MeAOEBFgQBAAAAGkUBB2/DIADhARwMAQAAABtFAQdvozUA4QEWBAEAAAAcRQEHb4MXAOEBGkABAAAAHUUBB2/jGQDhARYEAQAAAB5FAQdvAxoA4QEaQAEAAAAdRQEFb+MVAOEBIAABAAAAHUUBAm8DGQDhAQwgAQAAACFFAQdvoykA4QEWBAEAAAAiRQEHb0MgAOEBDCABAAAAI0UBB2/DKADhARwMAQAAACRFAQdvYxsA4QEMIAEAAAAlRQEHb2MkAOEBDCABAAAAJkUBB2+jJwDhAQwgAQAAACdFAQdvozwA4QEMIAEAAAAoRQEHbwM1AOEBDCABAAAAKUUBB2/DWQDhAQwgAQAAAClFAQVv42IA4QEMIAEAAAArRQEHbwNjAOEBDCABAAAAK0UBBW/jnwDhAQwgAQAAAC1FAQdvYxwA4QEWBAEAAAAuRQEHb6MqAOEBHAwBAAAAL0UBB29jGwDhAQwgAQAAADBFAQdvo20A4QEMIAEAAAAtRQFHb2NLAOEBDCABAAAAMkUBB29DmgDhAQwgAQAAADNFAQdvwxkA4QEiBAEAAAA0RQEGb2MbAOEBDCABAAAANUUBB2+DFwDhARpAAQAAADZFAQdvAxoA4QEaQAEAAAA2RQEFbwMZAOEBDCABAAAAOEUBB29jGgDhAQwgAQAAADlFAQdvQ8MA4QEeIAEAAAA6RQEGbyMzAOEBIEABAAAAOkUBAm9jGwDhARYEAQAAADxFAQdvYxsA4QEMIAEAAAA9RQEHbyOIAOEBDCABAAAAPkUBB29DMwDhAR4gAQAAADpFAQZv4xUA4QEaQAEAAAA6RQEFb0MpAOEBDCABAAAAQUUBB29jKQDhARYEAQAAAEJFAQdvQ1EA4QEMIAEAAABDRQEHb4MWAOEBDCABAAAAQUUBBW8DQQDhAQwgAQAAAEVFAQdvAzUA4QEMIAEAAABGRQEHbwM0AOEBFgQBAAAAR0UBB29jbwDhAQwgAQAAAEhFAQdvQxoA4QEMIAEAAABJRQEHbwNBAOEBDCABAAAASkUBB2/DMwDhAQwgAQAAAEtFAQdvwzQA4QEaQAEAAABMRQEHb0MrAOEBGkABAAAATEUBBW9DGADhAR4AAQAAAE5FAQZvg38A4QEMIAEAAABPRQEHb+MVAOEBGkABAAAATkUBBW9jOgDhAQwgAQAAAFFFAQdvAyEA4QEMIAEAAABRRQEFb+MhAOEBDCABAAAAU0UBB2+D1gDhAQwgAQAAAE5FAQVvI5QA2QEMIAEAAABVRQEHb4MXAOEBDCABAAAAVkUBB29jNwDhAQwgAQAAAFdFAQdvozwA4QEMIAEAAABYRQEHb4M3AOEBDCABAAAAWUUBB2+DNwDhAQwgAQAAAFpFAQdvgz8A4QEMIAEAAABbRQEHb4MvAOEBDCABAAAAXEUBB2+jJwDhARpAAQAAAGJFAUdvgycA4QEaQAEAAABjRQFFb0MrAOEBGkABAAAAZEUBRW/jFQDhARpAAQAAAGVFAUVv4yEA4QEMIAEAAABhRQEHb4MwAOEBGkABAAAAYkUBB2+jMADhARpAAQAAAGJFAQVvwzAA4QEaQAEAAABiRQEFb+MVAOEBGkABAAAAYkUBBW9jSQDhAQwgAQAAAGZFAQdvoxgA4QEWBAEAAABnRQEHbyOSAOEBDCABAAAAaEUBB28DIwDhAQwgAQAAAGlFAQdvI14A4QEiIAEAAABqRQEGb8NEAOEBDCABAAAAa0UBB2+jIwDhARpAAQAAAGxFAQdvYxkA4QEgQAEAAABsRQECb4NDAOEBDCABAAAAbkUBB2/DIwDhARpAAQAAAGxFAQVv4xUA4QEeQAEAAABsRQECb2MxAOEBHAwBAAAAcUUBB29DIADhAQwgAQAAAHJFAQdvoyMA4QEaQAEAAABzRQEHb8MZAOEBFgQBAAAAdEUBB2+DQwDhAQwgAQAAAHVFAQdvwyMA4QEaQAEAAABzRQEFb+MVAOEBGkABAAAAc0UBBW+jTQDhAQwgAQAAAFVFAQVv4zoA4QEMIAEAAAB5RQEHbmOMAecBGDABAAAAekURBW9jjAHhARgwAQAAAHpFAQdvA3IA4QEWBAEAAAB8RQEHb0MgAOEBDCABAAAAfUUBB2/DKADhARwMAQAAAH5FAQdvYxsA4QEMIAEAAAB/RQEHb+PnAeEBDCABAAAAgEUBB2+DbQDhAQwgAQAAAIJFAQVvY2IA4QEMIAEAAACCRQEFb8N7AOEBFgQBAAAAg0UBB2/jFQDhAQwgAQAAAIRFAQdvAxkA4QEMIAEAAACNRQFHb6MnAOEBGkABAAAAjkUBR2+DJwDhARpAAQAAAI9FAUVvIysA4QEMIAEAAACIRQEHb0MrAOEBGkABAAAAkUUBRW+jIwDhARYEAQAAAIpFAQdv4xUA4QEaQAEAAACSRQFFb8MZAOEBFgQBAAAAjEUBB28DGQDhAQwgAQAAAI1FAQdvgzAA4QEaQAEAAACORQEHb6MwAOEBFgQBAAAAj0UBB2+jRgDhAQwgAQAAAJBFAQdvwzAA4QEaQAEAAACORQEFb+MVAOEBGkABAAAAjkUBBW9jHADhARYEAQAAAJNFAQdvYxsA4QEMIAEAAACURQEHb6MfAOEBDCABAAAAgEUBB2+jbQDhAQwgAQAAAIBFAUdvw3sA4QEWBAEAAACXRQEHb8MZAOEBFgQBAAAAmEUBB2+DJwDhARYEAQAAAJlFAQdvoyMA4QEWBAEAAACaRQEHb2McAOEBFgQBAAAAm0UBB29jGwDhAQwgAQAAAJxFAQdvg2kA4QEMIAEAAACVRQFHb6N8AOEBDCABAAAAnkUBB2+juADhAQwgAQAAAJ9FAQdvg8cA2QEMIAEAAACgRQEHb6OIAOEBDCABAAAAoUUBB2/jYADhAQwgAQAAAKJFAQdvg0UB4QEMIAEAAACjRQEHb0MgAOEBDCABAAAApEUBB2/DGQDhASIEAQAAAKVFAQZvYxsA4QEMIAEAAACmRQEHbwNYAOEBDCABAAAApUUBBW+DIgDhARwMAQAAAKhFAQdvIx4A4QEMIAEAAACpRQEHb2MoAOEBDCABAAAAqUUBBW9jHgDhASIAAQAAAKtFAQZvAzAA4QEMIAEAAACrRQEFb4MXAOEBDCABAAAArUUBB28DGQDhAQwgAQAAAK5FAQdv4xgA4QEMIAEAAACuRQEFbyNeAOEBDCABAAAAsEUBB29DOQDhARYEAQAAALFFAQdvYygA4QEMIAEAAADORQEFb6MdAOEBDCABAAAAs0UBB29jHwDhARYEAQAAALRFAQdvYx8A4QEWBAEAAAC1RQEHb8M0AOEBFgQBAAAAtkUBB28jHADhAQwgAQAAALdFAQdvQyAA4QEMIAEAAAC4RQEHb4MxAOEBIEABAAAAuUUBAm9jGwDhAQwgAQAAALpFAQdvgxcA4QEaQAEAAAC7RQEHb+MZAOEBFgQBAAAAvEUBB28DGgDhARpAAQAAALtFAQVvAxkA4QEMIAEAAAC+RQEHbyMgAOEBGkABAAAA2EUBBW/DHgDhAQwgAQAAAMBFAQdvIyAA4QEMIAEAAADCRQEFb4N+AOEBDCABAAAAwkUBB29DOQDhARYEAQAAAMNFAQdvozQA4QEMIAEAAADERQEHbwM0AOEBFgQBAAAAxUUBB28DGQDhAQwgAQAAAMZFAQdvAyUA4QEWBAEAAADHRQEHbwMZAOEBDCABAAAAyEUBB29jHADhARYEAQAAAMlFAQdv4x4A4QEMIAEAAADKRQEHbyNaAOEBDCABAAAAy0UBB29jHADhARYEAQAAAMxFARdvoyoA4QEcDAEAAADNRQEHb2OZAOEBDCABAAAAzkUBB29DUQDhAQwgAQAAAM9FAQdvwxgA4QEMIAEAAADQRQEHbwM6AOEBDCABAAAA0UUBB2+jIwDhAR4AAQAAANJFAQZvYxkA4QEWBAEAAADTRQEHb4NDAOEBDCABAAAA1EUBB2/jFQDhARpAAQAAANJFAQVvQyAA4QEMIAEAAADWRQEHbwMvAOEBDCABAAAA10UBB29jIgDhARpAAQAAANhFAQdv4xUA4QEgQAEAAADYRQECbyPjANkBDCABAAAA2kUBB28DowDhAQwgAQAAANpFAQVvAzUA4QEMIAEAAADmRQEFbwM0AOEBFgQBAAAA3UUBB28DGQDhAQwgAQAAAN5FAQdvoycA4QEaQAEAAADfRQEHb0MrAOEBGkABAAAA30UBBW9DIADhAQwgAQAAAOFFAQdvAxkA4QEMIAEAAADiRQEHb4MwAOEBGkABAAAA40UBB2/DMADhARpAAQAAAONFAQVvQxoA4QEMIAEAAADlRQEHbyM1AOEBDCABAAAA5kUBBW8jGQDhAQwgAQAAAOdFAQdvoycA4QEaQAEAAADoRQEHb0MrAOEBGkABAAAA6EUBBW+DMADhARpAAQAAAOpFAQdvwzAA4QEaQAEAAADqRQEFbwNBAOEBDCABAAAA7EUBB29DOQDhARYEAQAAAO1FAQdvAxkA4QEMIAEAAADuRQEHb4MhAOEBDCABAAAA70UBB29jGgDhAQwgAQAAAPBFAQdvAxkA4QEMIAEAAADxRQEHb4MhAOEBDCABAAAA8kUBB29jGgDhAQwgAQAAAPNFAQdvQ3wA4QEMIAEAAAD0RQEHb2MaAOEBFgQBAAAA9UUBB2/DPQDhAQwgAQAAAPZFAQdv40YA4QEMIAEAAAD3RQEHbwMZAOEBDCABAAAA+EUBB2+D8gHhAQwgAQAAAPlFAQdvA0EA4QEMIAEAAAD6RQEHbwNBAOEBDCABAAAA+0UBB29DGgDhAQwgAQAAAPxFAQdv4yMA4QEMIAEAAAD9RQEHb+M6AOEBDCABAAAA/kUBB29jJgDhARYEAQAAAP9FAQdvw1YA4QEWBAEAAAAERgEFb8NKAOEBFgQBAAAABEYBBW/DIADhARwMAQAAAAJGAQdvYxsA4QEMIAEAAAADRgEHb0McAOEBFgQBAAAABEYBBW/jaADZAR4AAQAAAAVGAQZvIxoA4QEWBAEAAAAGRgEHb4McAOEBFgQBAAAAB0YBB2+DFwDhARpAAQAAAAhGAQdvAxoA4QEaQAEAAAAIRgEFbwMZAOEBDCABAAAACkYBB29jGgDhAQwgAQAAAAtGAQdv4xkA4QEaQAEAAAAFRgEFb+MVAOEBGkABAAAABUYBBW9DaQDhAQwgAQAAAA5GAQdvQx0A4QEMIAEAAAAPRgEHb8NhAOEBDCABAAAAEEYBB2/jRQDhAR4gAQAAABFGAQZv4xkA4QEWBAEAAAASRgEHb+MeAOEBDCABAAAAE0YBB2/jFQDhAS4AAQAAABFGAQJvYzIA4QEeAAEAAAAVRgEGb+MeAOEBDCABAAAAFkYBB2/jFQDhARpAAQAAABVGAQVvYzEA4QEcDAEAAAAYRgEHbwMwAOEBGkABAAAAFUYBBXDjBALZAQwgAQAAABpGAQdwAwUC4QEMIAEAAAAaRgEFcSMFAtkBDCABAAAAHEYBB3JDBQLSARAQAQAAAJCHEAVzYwUC1QEQEAEAAACQhwAFc0NrAOEBDCABAAAAH0YBB3NjIwDhAQwgAQAAACBGAQdzYxoA4QEMIAEAAAAhRgEHc6MfAOEBDCABAAAAIUYBBXPjoQDhAQwgAQAAACNGAQdzwx0A4QEMIAEAAAAkRgEHc+M3AOEBFgQBAAAAJUYBB3MjawDhARpAAQAAACZGAQdz4xUA4QEeQAEAAAAmRgECcwNGAOEBDCABAAAAKEYBB3ODBQLZAQwgAQAAAClGAQdzY3sA4QEMIAEAAAAqRgEHc8MZAOEBDCABAAAAK0YBB3MDWADhAQwgAQAAACtGAQVzwx4A4QEWBAEAAAAtRgEHc0MdAOEBDCABAAAALkYBB3PjIQDhAQwgAQAAAC9GAQdzgxcA4QEaQAEAAAAwRgEHcwMaAOEBGkABAAAAMEYBBXPjFQDhARpAAQAAADBGAQVzAxkA4QEMIAEAAAAzRgEHc8MXAOEBFgQBAAAANEYBB3ODIQDhARYEAQAAADVGAQdzgyEA4QEWBAEAAAA2RgEHc6PGAOEBDCABAAAAN0YBB3MjIADhAQwgAQAAADdGAQVzIx4A4QEMIAEAAAA5RgEHc8MYAOEBFgQBAAAAOkYBB3PDIADhARwMAQAAADtGAQdzI30A4QEMIAEAAAA8RgEHcwNYAOEBDCABAAAAPEYBBXMDNADhARYEAQAAAD5GAQdzIygA4QEeAAEAAAA/RgEGcwNAAOEBIEABAAAAP0YBAnPjFQDhAR4AAQAAAD9GAQJzozsA4QEeIAEAAABCRgEGc8MXAOEBFgQBAAAAQ0YBB3OjGADhARYEAQAAAERGAQdzI1cA4QEWBAEAAABFRgEHc4MqAOEBDCABAAAAQkYBBXMj4gDhAQwgAQAAAF1GAQdzYxQA4QEMIAEAAABIRgEFc4NRAOEBDCABAAAASEYBBXMDNADhASIAAQAAAEpGAQZzAyIA4QEMIAEAAABMRgEFc6M8AOEBDCABAAAATEYBBXMDawDhAQwgAQAAAE1GAQdzgwoB4QEaQAEAAABORgEHc6NLAOEBDCABAAAAT0YBB3OjBQLhAQwgAQAAAFBGAQdzQyAA4QEMIAEAAABRRgEHc4MXAOEBGkABAAAAUkYBB3MDGgDhARpAAQAAAFJGAQVzAxkA4QEMIAEAAABURgEHcyM1AOEBDCABAAAAVUYBB3PDLwDhAQwgAQAAAFZGAQdzYxoA4QEMIAEAAABXRgEHcyMgAOEBDCABAAAAWUYBBXNDIADhAQwgAQAAAFlGAQdzQycA4QEMIAEAAABaRgEHc6NtAOEBDCABAAAAW0YBB3MjKQDhAQwgAQAAAFxGAQdzIzUA4QEMIAEAAABdRgEHcwPQAOEBIiABAAAAXkYBBnNjpADhAQwgAQAAAF9GAQdzI8IA4QEMIAEAAABgRgEHc6NSAOEBDCABAAAAYUYBB3ODfgDhARYEAQAAAGJGAQdzA28A4QEMIAEAAABjRgEHc0NoAOEBDCABAAAAY0YBBXPDFwDhARYEAQAAAGVGAQdzQyAA4QEMIAEAAABmRgEHc8MaAOEBHAwBAAAAZ0YBB3MDGQDhAQwgAQAAAGhGAQdzYz8A4QEaQAEAAABpRgEHc8MZAOEBFgQBAAAAakYBB3MjlQDhAQwgAQAAAGtGAQdzIyYA4QEMIAEAAABsRgEHc8OIAOEBDCABAAAAbUYBB3PDGQDhARYEAQAAAG5GAQdz4xUA4QEeQAEAAABpRgECcwMZAOEBDCABAAAAcEYBB3PDaQDhAQwgAQAAAHFGAQdzox8A4QEMIAEAAABxRgEFc2MlAOEBGkABAAAAaUYBBXPjJAHhAQwgAQAAAHRGAQdzI2sA4QEeAAEAAAB1RgEGc+MVAOEBDCABAAAAdkYBB3NDIADhAQwgAQAAAHdGAQdzwxkA4QEWBAEAAAB4RgEHc2MbAOEBDCABAAAAeUYBB3ODFwDhARpAAQAAAHpGAQdzAxoA4QEaQAEAAAB6RgEFc+MVAOEBIAABAAAAekYBAnMDGQDhAQwgAQAAAH1GAQdzYxoA4QEMIAEAAAB+RgEHc0NrAOEBFgQBAAAAf0YBB3OjIADhARpAAQAAAIBGAQdzAxkA4QEMIAEAAACBRgEHcwMdAOEBGkABAAAAgEYBBXNjRgDhAQwgAQAAAINGAQdzQx0A4QEWBAEAAACERgEHc2MhAOEBDCABAAAAhUYBB3Qj4gDnARgwAQAAAIZGEQVzI+IA4QEYMAEAAACGRgEHc+MtAOEBFgQBAAAAiEYBB3MjHgDhAQwgAQAAAIlGAQdzo4oA4QEWBAEAAACKRgEHc8MaAOEBHAwBAAAAi0YBB3NjGwDhAQwgAQAAAIxGAQdzoxoA4QEWBAEAAACNRgEHc+MgAOEBDCABAAAAjkYBB3NjOgDhAQwgAQAAAI9GAQdzA0cA4QEMIAEAAACQRgEHc8NIAOEBDCABAAAAkUYBB3ODIADhAQwgAQAAAJJGAQdzoy8B4QEMIAEAAACTRgEHc0MxAOEBFgQBAAAAlEYBB3NjHADhARYEAQAAAJVGAQdzoyoA4QEcDAEAAACWRgEHc8M0AOEBFgQBAAAAl0YBB3NjHADhARYEAQAAAJhGAQdzwxgA4QEeQAEAAACZRgEGc2NRAOEBDCABAAAAmkYBB3PjGQDhASBAAQAAAJlGAQJz4x4A4QEMIAEAAACcRgEHcyNuAOEBDCABAAAAnUYBB3ODFwDhARpAAQAAAJ5GAQdz4xkA4QEgQAEAAACeRgECcwMaAOEBGkABAAAAnkYBBXPjFQDhARpAAQAAAJ5GAQVzAxkA4QEMIAEAAACiRgEHc2MaAOEBDCABAAAAo0YBB3OjKQDhARYEAQAAAKRGAQdz4xUA4QEeAAEAAACZRgECc8NEAOEBDCABAAAApkYBB3NDJADhARYEAQAAAKdGAQdzwxoA4QEcDAEAAACoRgEHcyN9AOEBDCABAAAAqUYBB3PDNADhARYEAQAAAKpGAQdzYxwA4QEWBAEAAACrRgEHcwM0AOEBFgQBAAAArEYBB3PDZwDhAQwgAQAAAK5GAQVz4zQA4QEMIAEAAACuRgEHc+MhAOEBDCABAAAAr0YBB3NjIADhAQwgAQAAALBGAQdzA/4A4QEMIAEAAACxRgEHcwMwAOEBDCABAAAAmUYBBXPjIADhAR4gAQAAALNGAQZzgx8A4QEMIAEAAAC0RgEHcwMhAOEBDCABAAAAs0YBBXNDJwDhARYEAQAAALZGAQdzYxsA4QEMIAEAAAC3RgEHc+MVAOEBGkABAAAAs0YBBXNjHADhARYEAQAAALlGAQdzQ5kA4QEMIAEAAAC6RgEHc0MzAOEBDCABAAAAukYBBXMDNQDhAQwgAQAAALxGAQdzY28A4QEMIAEAAAC9RgEHc8NJAOEBDCABAAAAvkYBB3OjgADhAQwgAQAAAL9GAQdzQx0A4QEMIAEAAADARgEHc2McAOEBFgQBAAAAwUYBB3NDIADhAQwgAQAAAMJGAQdzgz8A4QEMIAEAAADDRgEHc2MRAeEBDCABAAAAxEYBB3NjowHhAQwgAQAAAMVGAQdzYzQA4QEMIAEAAADGRgEHc+PcAOEBFgQBAAAAx0YBB3MDGQDhAQwgAQAAAMhGAQdzoycA4QEaQAEAAADQRgFHc4MnAOEBFgQBAAAA0UYBR3MjKwDhAQwgAQAAAMtGAQdzQysA4QEaQAEAAADTRgFFc+MVAOEBGkABAAAA1EYBRXPjIQDhAQwgAQAAAM5GAQdzAxkA4QEMIAEAAADPRgEHc4MwAOEBGkABAAAA0EYBB3OjMADhARYEAQAAANFGAQdzo0YA4QEMIAEAAADSRgEHc8MwAOEBGkABAAAA0EYBBXPjFQDhARpAAQAAANBGAQVzwxoA4QEcDAEAAADVRgEHc6OQAeEBLAQBAAAA1kYBBnMDbwDhAQwgAQAAANdGAQdz4zoA4QEMIAEAAADYRgEHc4MxAOEBGkABAAAA20YBBXMjIADhARpAAQAAANtGAQVzwzUA4QEaQAEAAADbRgEHcwM4AOEBDCABAAAA3EYBB3PDNADhARYEAQAAAN1GAQdzoyQA4QEcDAEAAADeRgEHc2MbAOEBDCABAAAA30YBB3NDIADhAQwgAQAAAOBGAQdzg1gA4QEWBAEAAADhRgEHcyMqAOEBDCABAAAAxkYBBXNDHgDhAQwgAQAAAONGAQdzYx4A4QEWBAEAAADkRgEHdCOpAOcBGDABAAAA5UYRBXMjqQDhARgwAQAAAOVGAQVzwz8A4QEMIAEAAADnRgEHcwMdAOEBDCABAAAA50YBBXMDagDhAR4AAQAAAOlGAQZzAzYA4QEMIAEAAADqRgEHc6M6AOEBDCABAAAA60YBB3PjIADhAQwgAQAAAOxGAQdzo5UA4QEeIAEAAADtRgEGc6MmAOEBGkABAAAA7UYBBXPDJgDhAQwgAQAAAO9GAQdzo4cA4QEMIAEAAADwRgEHc+MVAOEBGkABAAAA7UYBBXODHADhARYEAQAAAPJGAQdzwxkA4QEWBAEAAADzRgEHcwMZAOEBDCABAAAA9EYBB3OjKQDhARYEAQAAAPVGAQdzgzEA4QEgQAEAAAD2RgECc8NWAOEBDCABAAAA90YBB3MjIADhARpAAQAAAPlGAQVzwzUA4QEaQAEAAAD5RgEHc+MVAOEBIAABAAAA+UYBAnPjVgDhARwMAQAAAPtGAQdzAzQA4QEWBAEAAAD8RgEHc8NkAOEBDCABAAAA/UYBB3PDGQDhARYEAQAAAP5GAQdzQyAA4QEMIAEAAAD/RgEHcwNJAOEBDCABAAAAD0cBBXNDkADhAQwgAQAAAAFHAQdzwx8A4QEMIAEAAAACRwEHcwM0AOEBFgQBAAAAA0cBB3ODFwDhASAAAQAAAARHAQZz4xkA4QEWBAEAAAAFRwEHcwMaAOEBGkABAAAABEcBBXMDGQDhAQwgAQAAAAdHAQdzYzcA4QEMIAEAAAAIRwEHc0M5AOEBFgQBAAAACUcBB3PD6wDhAQwgAQAAAApHAQdzAxkA4QEuAAEAAAALRwEGcwMZAOEBFgQBAAAADEcBB3NDQQDhAQwgAQAAAA1HAQdzYxwA4QEWBAEAAAAORwEHc2MYAeEBDCABAAAAD0cBB3NjOwDhARgwAQAAABBHAQdzg2MA4QEMIAEAAAARRwEHcwM0AOEBIiABAAAAEkcBBnPDFwDhARYEAQAAABNHAQdzAxkA4QEMIAEAAAAURwEHcyNBAeEBDCABAAAAFUcBB3ODLADhAQwgAQAAABZHAQdzwxcA4QEMIAEAAAAXRwEHc2NNAOEBDCABAAAAGEcBB3PDdwDhAQwgAQAAABlHAQdzY1sA4QEMIAEAAAAaRwEHc0O5AOEBDCABAAAAGkcBBXPDNADhARYEAQAAABxHAQdzY9kA4QFWRAEAAAAdRwEFc2MeAOEBDCABAAAAHkcBB3NDOADhARYEAQAAAB9HAQdzQyAA4QEMIAEAAAAgRwEHc2MzAOEBHgABAAAAIUcBBnODJwDhASIAAQAAACJHAQZzQysA4QEMIAEAAAAhRwEFcyN9AOEBDCABAAAAJEcBB3MDGQDhAQwgAQAAACVHAQdzgzEA4QEaQAEAAAApRwEFc8NWAOEBDCABAAAAJ0cBB3MjIADhARpAAQAAAClHAQVzwzUA4QEaQAEAAAApRwEHcwMZAOEBDCABAAAAKkcBB3PjGADhAQwgAQAAACpHAQVzY/sB4QEMIAEAAAAsRwEHc4MzAOEBDCABAAAALUcBB3Pj2wDhAQoUAQAAAC5HAQVzwyUA4QEMIAEAAAAvRwEHcyNSAOEBDCABAAAAL0cBBXNDJADhARYEAQAAADFHAQdzgxcA4QEiAAEAAAAyRwEGcwMaAOEBDCABAAAAMkcBBXNDBQHhAQwgAQAAADRHAQdzw6kA4QEMIAEAAAA1RwEHc4McAOEBIgQBAAAANkcBBnNDIADhAQwgAQAAADdHAQdzwxoA4QEcDAEAAAA4RwEHc2MbAOEBDCABAAAAOUcBB3NjKADhAQwgAQAAADRHAQVzA/QA4QEMIAEAAAA7RwEHc4MXAOEBFgQBAAAAPEcBB3PjGQDhARYEAQAAAD1HAQdzIxwA4QEMIAEAAAA+RwEHc6M8AOEBDCABAAAAP0cBB3MjNwDhAQwgAQAAAEJHAQVzYxwA4QEWBAEAAABBRwEHcwNsAOEBDCABAAAAQkcBB3NDewDhAQwgAQAAAEJHAQVzwwUC4QEMIAEAAABERwEHc0MqAOEBDCABAAAARUcBB3Pj5gDhAQwgAQAAAEZHAQdzA9AA4QEMIAEAAABHRwEHcwNGAOEBLAwBAAAASEcBFnNjTQDhAQwgAQAAAElHAQdzQ7kA4QEMIAEAAABJRwEFc4McAOEBFgQBAAAAS0cBB3NjHgDhASIAAQAAAExHAQZzgxcA4QEaQAEAAABNRwEHcwMaAOEBGkABAAAATUcBBXMDGQDhAQwgAQAAAE9HAQdzoykA4QEiAAEAAABQRwEGcyN9AOEBDCABAAAAUUcBB3MDWADhAQwgAQAAAFFHAQVzY28A4QEMIAEAAABTRwEHcwM0AOEBFgQBAAAAVEcBB3ODFwDhARpAAQAAAFVHAQdzAxoA4QEaQAEAAABVRwEFcwMZAOEBDCABAAAAV0cBB3NDGgDhAQwgAQAAAFhHAQdzAy8A4QEMIAEAAABZRwEHc4N/AOEBDCABAAAAWkcBB3OjNgDhAQwgAQAAAFtHAQdzA3IA4QEMIAEAAABcRwEHcyPmAOEBDCABAAAAXUcBB3NDdADhAQwgAQAAAF1HAQVzw0oA4QEeIAEAAABfRwEGc8MeAOEBIgABAAAAYEcBBnPjGQDhASAEAQAAAF9HAQJzYyIA4QEWBAEAAABiRwEHcwM0AOEBFgQBAAAAY0cBB3NjbwDhAQwgAQAAAGRHAQdzo7MA4QEMIAEAAABlRwEHc+MmAOEBDCABAAAAZUcBBXOjGgDhARYEAQAAAGdHAQdz4xUA4QEaQAEAAABfRwEFc+MgAOEBDCABAAAAaUcBB3PDGADhAQwgAQAAAGpHAQdzwx4A4QEWBAEAAABrRwEHc+MZAOEBFgQBAAAAbEcBB3MDOADhAQwgAQAAAG1HAQdzw0IA4QEMIAEAAABuRwEHc8NCAOEBDCABAAAAb0cBB3OjPQDhAR4gAQAAAF9HAQRz4yAA4QEeAAEAAABxRwEGc0MdAOEBDCABAAAAckcBB3NjNwDhAQwgAQAAAHNHAQdzA9AA2QEeIAEAAAB0RwEGcyOhAOEBDCABAAAAdUcBB3PjFQDhAQwgAQAAAHZHAQdzQzkA4QEMIAEAAAB3RwEHc+NgAOEBIiABAAAAeEcBBnOjTQDhAQwgAQAAAHhHAQVzQx0A4QEMIAEAAAB6RwEHc2MiAOEBIgQBAAAAe0cBBnPjXwHhAR4gAQAAAHxHAQZzA6UA4QEaQAEAAAB8RwEFc0N7AOEBHiABAAAAfEcBBHPjFQDhARpAAQAAAHxHAQVz4xkA4QEaQAEAAAB0RwEFc+MVAOEBGkABAAAAdEcBBXNjuQDZARpAAQAAAIJHAQdzAxkA4QEMIAEAAACDRwEHc2McAOEBFgQBAAAAhEcBB3OjKgDhARwMAQAAAIVHAQdzg0oA4QEgAAEAAACCRwECcyPFAOEBDCABAAAAh0cBB3OjSgDhARpAAQAAAIJHAQVzI14A4QEMIAEAAACKRwEFcyM1AOEBDCABAAAAikcBBXPjFQDhARYEAQAAAItHAQd14wUC2QEMIAEAAACMRwEHdgMGAtkBDCABAAAAjUcBB3cDQwDZASYIAQAAAI5HARV3QyAA4QEMIAEAAACPRwEHd8MZAOEBFgQBAAAAkEcBB3fjHADhAQwgAQAAAJFHAQd3Y+8A4QEMIAEAAACSRwEHd6MaAOEBDCABAAAAk0cBB3ejdQDhAQwgAQAAAJNHAQV3A24A4QEMIAEAAACVRwEHd2NNAOEBDCABAAAAmUcBBXeDHADhARYEAQAAAJdHAQd3AxkA4QEMIAEAAACYRwEHd8N0AOEBDCABAAAAmUcBBXfjFwDhAQwgAQAAAJpHAQd3YxoA4QEMIAEAAACbRwEFdwMhAOEBDCABAAAAm0cBBXdDjgDhAQwgAQAAAJ1HAQd3Y44A4QEMIAEAAACdRwEHd2MgAOEBDCABAAAAn0cBB3cDNQDhAQwgAQAAAKFHAQV3IzUA4QEMIAEAAAChRwEFd8MWAOEBDCABAAAAokcBB3eDNwDhAQwgAQAAAKNHAQd3Qx4A4QEMIAEAAACkRwEHd2MeAOEBFgQBAAAApUcBB3cjGADhAQwgAQAAAKZHAQd3YyAA4QEMIAEAAACnRwEHd4MXAOEBGkABAAAAqEcBB3cDGgDhARpAAQAAAKhHAQV34xUA4QEaQAEAAACoRwEFdwMZAOEBDCABAAAAq0cBB3fDFwDhARYEAQAAAKxHAQd3o+cA4QEMIAEAAACtRwEHd2MaAOEBDCABAAAArkcBB3ejKQDhARYEAQAAAK9HAQd3A6oA4QEMIAEAAACwRwEHdwMZAOEBDCABAAAAsUcBB3djLgDhARYEAQAAALJHAQd3wycA4QEMIAEAAACzRwEHd+MnAOEBDCABAAAAs0cBBXeDzQDhAQwgAQAAALVHAQd34zoA4QEMIAEAAAC2RwEHd6MaAOEBFgQBAAAAt0cBB3eDFwDhAQwgAQAAALhHAQd3YxwA4QEWBAEAAAC5RwEHd6MqAOEBHAwBAAAAukcBB3cjLQDhAQwgAQAAALtHAQd3wzEA4QGgIAEAAADUSAFGd8MYACECDCABAAAAvUcBBXfDGADhAQwgAQAAAL5HAQd3YyIA4QEWBAEAAAC/RwEHd6MaAOEBFgQBAAAAwEcBB3eDTwDhARYEAQAAAMFHAQd3YyQA4QEMIAEAAADCRwEHdyMEAeEBDCABAAAAw0cBB3cjQwDhAQwgAQAAAMRHAQd3Iy0A4QEMIAEAAADFRwEHd2MoAOEBDCABAAAAvEcBBXejJwDhAQwgAQAAAMdHAQd3wxcA4QEWBAEAAADIRwEHd0MgAOEBDCABAAAAyUcBB3djHADhARYEAQAAAMpHAQd3oyoA4QEcDAEAAADLRwEHd2MbAOEBDCABAAAAzEcBB3fDZADhAQwgAQAAAM1HAQd3o5AB4QEMIAEAAADORwEHdwMZAOEBDCABAAAA1UcBR3ejJwDhARpAAQAAANZHAUd3gycA4QEWBAEAAADXRwFHdyMrAOEBDCABAAAA0kcBB3dDKwDhARpAAQAAANlHAUV34xUA4QEaQAEAAADaRwFFdwMZAOEBDCABAAAA1UcBB3eDMADhARpAAQAAANZHAQd3ozAA4QEgQAEAAADWRwECd6NGAOEBDCABAAAA2EcBB3fDMADhARpAAQAAANZHAQV34xUA4QEaQAEAAADWRwEFd+NUAOEBDCABAAAAzkcBBXdjGgDhAQwgAQAAANxHAQd3Qx0A4QEWBAEAAADdRwEHdyMgAOEBDCABAAAA4kcBBXdjHADhARYEAQAAAN9HAQd3oyoA4QEcDAEAAADgRwEHd6MfAOEBDCABAAAA3EcBBXejKQDhAQwgAQAAAOJHAQd3IzAA4QEeAAEAAADjRwEGd0MoAOEBDCABAAAA5EcBB3cDQADhARpAAQAAAONHAQV3QygA4QEMIAEAAADmRwEHd+MVAOEBGkABAAAA40cBBXejmQDhAQwgAQAAAOhHAQd3o98A4QEMIAEAAADpRwEHd8OZAOEBHAwBAAAA6kcBB3dj2AHhAQwgAQAAAOtHAQd3Y1QA4QEMIAEAAADsRwEHd8O/AOEBDCABAAAA70cBR3dDHAHhAQwgAQAAAPBHAUV3A5IA4QEMIAEAAADvRwEHd6OPAOEBDCABAAAA70cBBXcD7ADhAQwgAQAAAOtHAQV3408A4QEeIAEAAADyRwEGd+N/AOEBDCABAAAA8kcBBXfjFQDhARpAAQAAAPJHAQV3o6cB2QEaQAEAAAD1RwEHd4N2AOEBFgQBAAAA9kcBB3cjIADhARpAAQAAAPVHAQV4Y3YA5wEYMAEAAAD4RxEFd2N2AOEBGDABAAAA+EcBB3eDdgDhARYEAQAAAPpHAQd3Q3QB4QEeIAEAAAD7RwEGd8MZAOEBFgQBAAAA/EcBB3eDZADhARpAAQAAAPtHAQV343gA4QEMIAEAAAD+RwEHdwMqAOEBDCABAAAA/kcBB3cjJgDhAQwgAQAAAABIAQd3Y0AA4QEMIAEAAAABSAEHd8NWAOEBFgQBAAAACUgBBXfDSgDhARYEAQAAAAlIAQV34xUA4QEeQAEAAAD7RwECd2MbAOEBFgQBAAAABUgBB3cDOgDhAQwgAQAAAAZIAQd3AzAA4QEMIAEAAAAGSAEFd0PQAOEBHiABAAAA+0cBBHdD8QDhARYEAQAAAAlIAQV3wyIA4QEWBAEAAAAKSAEHd6OHAOEBDCABAAAAC0gBB3cjHgDhAQwgAQAAAAxIAQd3Yx4A4QEWBAEAAAANSAEHdwNzAOEBDCABAAAADkgBB3fjIQDhAQwgAQAAAA9IAQd3wyAA4QEcDAEAAAAQSAEHd2NUAOEBDCABAAAAEUgBB3fj9gDhAQwgAQAAABJIAQd3oyMA4QEMIAEAAAATSAEHd2McAOEBFgQBAAAAFEgBB3ejKgDhARwMAQAAABVIAQd3o20A4QEMIAEAAAASSAFHdyMGAtkBDCABAAAAF0gBB3cDkAHhAQwgAQAAABhIAQd3AyAA4QEMIAEAAAAZSAEHd0M4AOEBFgQBAAAAGkgBB3ejJADhARwMAQAAABtIAQd3YxsA4QEMIAEAAAAcSAEHdwMZAOEBDCABAAAAHUgBB3eDMQDhARpAAQAAACFIAQV3w1YA4QEMIAEAAAAfSAEHdyMgAOEBGkABAAAAIUgBBXfDNQDhARpAAQAAACFIAQd34xUA4QEaQAEAAAAhSAEFd2M/AOEBGkABAAAAI0gBB3cjXgDhAQwgAQAAACRIAQd34zoA4QEMIAEAAAAlSAEHd8MmAOEBDCABAAAAJkgBB3cDKgDhAQwgAQAAACZIAQV34yYA4QEMIAEAAAAlSAEFd0MqAOEBDCABAAAAKUgBB3fjOgDhAQwgAQAAACpIAQd3YxsA4QEMIAEAAAArSAEHd2McAOEBFgQBAAAALEgBB3djGwDhAQwgAQAAAC1IAQd3gyoA4QEMIAEAAAApSAEFd0PBAOEBDCABAAAAL0gBB3dDWgDhAQwgAQAAACRIAQV3ozsA4QEMIAEAAAAxSAEHd+M6AOEBDCABAAAAMkgBB3dDkADhAQwgAQAAADVIAQV3Qy4A4QEMIAEAAAA0SAEHd+M0AOEBDCABAAAANUgBB3eD/wHhAQwgAQAAADZIAQd3QwYC4QEMIAEAAAA3SAEHdwOnAdkBDCABAAAAOEgBB3djFADhAQwgAQAAADlIAQV3g1EA4QEMIAEAAAA5SAEFd2McAOEBFgQBAAAAO0gBB3djVADhAQwgAQAAADxIAQd3YyQA4QEMIAEAAAA9SAEHeMMYAOcBGDABAAAAPkgRBXfDGADhARgwAQAAAD5IAQV3wxkA4QEWBAEAAABASAEHd2MkAOEBDCABAAAAQUgBB3cDNQDhAQwgAQAAAENIAQV3IzUA4QEMIAEAAABDSAEFd4MXAOEBGkABAAAAREgBB3fjGQDhASBAAQAAAERIAQJ3AxoA4QEaQAEAAABESAEFd+MVAOEBGkABAAAAREgBBXcDGQDhAQwgAQAAAEhIAQd3YxoA4QEMIAEAAABJSAEHd6MpAOEBFgQBAAAASkgBB3eDIQDhARYEAQAAAEtIAQd3oyQA4QEcDAEAAABMSAEHd2MbAOEBDCABAAAATUgBB3djJADhAQwgAQAAAE5IAQd3A1AA4QEMIAEAAABPSAEHd2MbAOEBDCABAAAAUEgBB3ejIwDhARYEAQAAAFFIAQd3YxsA4QEMIAEAAABSSAEHd8NOAOEBDCABAAAAU0gBB3ejUgDhAQwgAQAAAFRIAQd3YyIA4QEWBAEAAABVSAEHdwNGAOEBDCABAAAAVkgBB3cjNwDhAQwgAQAAAE5IAQV3AyMA4QEMIAEAAABYSAEHdwMyAOEBDCABAAAAWEgBBXfjIADhAQwgAQAAAFpIAQd3YzkA4QEMIAEAAABbSAEHdwMZAOEBDCABAAAAXEgBB3fDNQDhARpAAQAAAF1IAQd3I1sA4QEMIAEAAABeSAEHd2McAOEBFgQBAAAAX0gBB3fjOgDhAQwEAQAAAGBIAQd3wyYA4QEMIAEAAABhSAEHd2MqAOEBDCABAAAAYkgBB3ej5ADhAQwgAQAAAGNIAQd3YzYA4QEMIAEAAABkSAEHd4M3AOEBDCABAAAAZUgBB3ejGwHhAQwgAQAAAGZIAQd3ozQA4QEMIAEAAABnSAEHd8MZAOEBFgQBAAAAaEgBB3eDFwDhARpAAQAAAGlIAQd34xkA4QEgQAEAAABpSAECdwMaAOEBGkABAAAAaUgBBXfjFQDhARpAAQAAAGlIAQV3AxkA4QEMIAEAAABtSAEHd+MYAOEBDCABAAAAbUgBBXeDIQDhARYEAQAAAG9IAQd3YxoA4QEMIAEAAABwSAEHdyMeAOEBDCABAAAAcUgBB3fDGADhARYEAQAAAHJIAQd3wyAA4QEcDAEAAABzSAEHd0NRAOEBIiABAAAAdEgBBnfDRADhAQwgAQAAAHVIAQd3YyAA4QEMIAEAAAB2SAEHd2MgAOEBDCABAAAAd0gBB3djIADhAQwgAQAAAHhIAQd3g4oA4QEMIAEAAAB5SAEHd4M3AOEBDCABAAAAekgBB3dDPgDhAQwgAQAAAHtIAQd3YwYC4QEMIAEAAAB8SAEHd4MGAtkBDCABAAAAfUgBB3eDfwDhAQwgAQAAAH5IAQd3QzAA4QEMIAEAAAB/SAEHd6MeAOEBDCABAAAAgEgBB3ejUQDhAQwgAQAAAIFIAQd3Q3sA4QEMIAEAAACBSAEFd0MkAOEBFgQBAAAAg0gBB3cjgQDhAQwgAQAAAIRIAQd3I24A4QEMIAEAAACFSAEHd6MeAOEBDCABAAAAhkgBB3cjvwHhAQwgAQAAAIdIAQd3AyEA4QEMIAEAAAC3SAEFd0PDAeEBDCABAAAAiUgBB3eDXgDhASIEAQAAAIpIAQZ3wxcA4QEiAAEAAACLSAEGd4MsAOEBGDABAAAAjEgBB3dDIADhAQwgAQAAAI1IAQd3gyoA4QEMIAEAAACKSAEFd2NvAOEBDCABAAAAj0gBB3eDLwDhARYEAQAAAJBIAQd3wx8A4QEMIAEAAACRSAEHd0MgAOEBDCABAAAAkkgBB3dDOADhARYEAQAAAJNIAQd3AxkA4QEMIAEAAACUSAEHd6MnAOEBGkABAAAAlUgBB3dDKwDhARpAAQAAAJVIAQV34yEA4QEMIAEAAACXSAEHd0MgAOEBDCABAAAAmEgBB3cDGQDhAQwgAQAAAJlIAQd3gzAA4QEaQAEAAACaSAEHd8MwAOEBGkABAAAAmkgBBXcjWwDhAQwgAQAAAJxIAQd3AxkA4QEMIAEAAACdSAEHd+MYAOEBDCABAAAAnUgBBXcjLgDhAQwgAQAAAJ9IAQd3gxwA4QEWBAEAAACgSAEHd2MgAOEBDCABAAAAoUgBB3dDSQDhAQwgAQAAAKJIAQd3wwUC4QEMIAEAAACjSAEHdyMwAOEBFgQBAAAApEgBB3fDGgDhARwMAQAAAKVIAQd3Y6wA4QEMIAEAAACmSAEHd0MzAOEBDCABAAAApkgBBXcjlgHhAQwgAQAAAKpIAQV3QyAA4QEMIAEAAACpSAEHd+OIAOEBIgQBAAAAqkgBBndjHADhARYEAQAAAKtIAQd3oyoA4QEcDAEAAACsSAEHd2MbAOEBDCABAAAArUgBB3eDLwDhARYEAQAAAK5IAQd3wx8A4QEMIAEAAACvSAEHdyMeAOEBDCABAAAAsEgBB3dDHgDhAQwgAQAAALFIAQd3wxgA4QEWBAEAAACySAEHd8MgAOEBHAwBAAAAs0gBB3cDLwDhAQwgAQAAALRIAQd3QysA4QEMIAEAAAC0SAEFdyMuAOEBDCABAAAAtkgBB3cj+ADZAQxEAQAAALdIAQV3o6MA4QEeIAEAAAC4SAEGd+M6AOEBDCABAAAAuUgBB3ejJgDhARYEAQAAALpIAQd3Y4oA4QEMIAEAAAC4SAEFd2PkAOEBDCABAAAAvEgBB3djOQDhAQwgAQAAAL1IAQd3QyQA4QEWBAEAAAC+SAEHd8MaAOEBHAwBAAAAv0gBB3fDNwDhARYEAQAAAMBIAQd3QyAA4QEMIAEAAADBSAEHd8MoAOEBHAwBAAAAwkgBB3djGwDhAQwgAQAAAMNIAQd3IxoA4QEWBAEAAADESAEHd+MeAOEBDCABAAAAxUgBB3cjNADhARYEAQAAAMZIAQd3AzgA4QEMIAEAAADHSAEHd8M0AOEBDCABAAAAyEgBB3fjHgDhAQwgAQAAAMlIAQd3IzQA4QEWBAEAAADKSAEHdwM4AOEBDCABAAAAy0gBB3dDIADhAQwgAQAAAMxIAQd3YzIA4QEMIAEAAADNSAEHd2OnAOEBDCABAAAAzkgBB3djGwDhAQwgAQAAAM9IAQd3A5cA4QEMIAEAAADQSAEHd2McAOEBFgQBAAAA0UgBB3djGwDhAQwgAQAAANJIAQd34xcA4QEMIAEAAADTSAEHd6MnAOEBDCABAAAA1EgBB3cjVwDhARYEAQAAANVIAQd34yEA4QEMIAEAAADWSAEHd0MgAOEBDCABAAAA10gBB3fDGQDhARYEAQAAANhIAQd3YxsA4QEMIAEAAADZSAEHd4MiAOEBHAwBAAAA2kgBB3cDGQDhAQwgAQAAANtIAQd3YyIA4QEiAAEAAADcSAEGd+MVAOEBDCABAAAA3UgBBXfjGADhAQwgAQAAANtIAQV3Y58A4QEeIAEAAADfSAEGd2MeAOEBDCABAAAA4EgBB3cDGQDhAQwgAQAAAOFIAQd34xkA4QEaQAEAAADfSAEFd+MVAOEBHkABAAAA30gBAndjGgDhAQwgAQAAAORIAQd3ox8A4QEMIAEAAADkSAEFd8MyAOEBHiABAAAA30gBBHdDWADhAQwgAQAAAOdIAQd340YA4QEMIAEAAADoSAEHd2MfAOEBFgQBAAAA6UgBB3dDiQDhAQwgAQAAAOpIAQd3Q4MA4QEMIAEAAADrSAEHd4PrAOEBDCABAAAA6kgBBXcjMADhARYEAQAAAO1IAQd3AxkA4QEMIAEAAAD1SAFHd+MYAOEBDCABAAAA9kgBRXejJwDhARpAAQAAAPdIAUd3gycA4QEWBAEAAAD4SAFHdyMrAOEBDCABAAAA8kgBB3dDKwDhARpAAQAAAPpIAUV34xUA4QEaQAEAAAD7SAFFdwMZAOEBDCABAAAA9UgBB3fjGADhAQwgAQAAAPVIAQV3gzAA4QEaQAEAAAD3SAEHd6MwAOEBFgQBAAAA+EgBB3ejRgDhAQwgAQAAAPlIAQd3wzAA4QEaQAEAAAD3SAEFd+MVAOEBGkABAAAA90gBBXfDGgDhARwMAQAAAPxIAQd3o7gA4QEMIAEAAAD9SAEFdyN5AOEBDCABAAAA/UgBBXfDHgDhARYEAQAAAP9IAQd3AxkA4QEMIAEAAAAASQEHd6MnAOEBGkABAAAAAUkBB3cjKwDhAQwgAQAAAAJJAQd3QysA4QEaQAEAAAABSQEFd+MhAOEBDCABAAAABEkBB3djIADhAQwgAQAAAAVJAQd3QyAA4QEMIAEAAAAGSQEHdwMZAOEBDCABAAAAB0kBB3eDMADhARpAAQAAAAhJAQd3o0YA4QEMIAEAAAAJSQEHd8MwAOEBGkABAAAACEkBBXfjFQDhARYEAQAAAAtJAQd3wxoA4QEcDAEAAAAMSQEHd2MbAOEBDCABAAAADUkBB3ejdQDhAQwgAQAAAA5JAQd3Q0EA4QEMIAEAAAAPSQEHd6MnAOEBGkABAAAAEEkBB3eDMADhARpAAQAAABFJAQd3gyoA4QEMIAEAAAAPSQEFd0OQAOEBDCABAAAAFEkBBXfjNADhAQwgAQAAABRJAQd3g5MA4QEMIAEAAAAVSQEHd4MXAOEBGkABAAAAFkkBB3fjGQDhARYEAQAAABdJAQd3AxoA4QEaQAEAAAAWSQEFd+MVAOEBGkABAAAAFkkBBXcDGQDhAQwgAQAAABpJAQd34yAA4QEMIAEAAAAbSQEHd2MgAOEBDCABAAAAHEkBB3djYwDhAQwgAQAAAB1JAQd3YxwA4QEWBAEAAAAeSQEHdwNsAOEBDCABAAAAH0kBB3dDGgDhAQwgAQAAACBJAQd3A0EA4QEMIAEAAAAhSQEHd2McAOEBFgQBAAAAIkkBB3cDGQDhAQwgAQAAACNJAQd3gzEA4QEgAAEAAAAkSQECdyMgAOEBGkABAAAAJkkBBXfDNQDhARpAAQAAACZJAQd3YyQA4QEMIAEAAAAnSQEHd6MbAeEBHgABAAAAKEkBBncDJQDhARYEAQAAAClJAQd3wxoA4QEcDAEAAAAqSQEHdwNAAOEBGkABAAAAKEkBBXfjFQDhARpAAQAAAChJAQV3w4gA4QEMIAEAAAAtSQEFdyN5AOEBDCABAAAALUkBBXeDFwDhARpAAQAAAC9JAQd3AxkA4QEMIAEAAAAwSQEHd4MhAOEBFgQBAAAAMUkBB3eDAQHhAQwgAQAAADJJAQd3wzMA4QEsAAEAAAAzSQEGd2McAOEBFgQBAAAANEkBB3ejKgDhARwMAQAAADVJAQd3QyAA4QEMIAEAAAA2SQEHdwMiAOEBDCABAAAAOEkBBXejPADhAQwgAQAAADhJAQd3Q2gA4QEMIAEAAAA5SQEHd2MkAOEBDCABAAAAOkkBB3eDmQDhARYEAQAAADtJAQd3wygA4QEcDAEAAAA8SQEHd2MbAOEBDCABAAAAPUkBB3cDGQDhAQwgAQAAAD5JAQd3gzEA4QEaQAEAAABBSQEFdyMgAOEBGkABAAAAQUkBBXfDNQDhARpAAQAAAEFJAQd34xUA4QEaQAEAAABBSQEFd2McAOEBFgQBAAAAQ0kBB3ejIADhARpAAQAAAERJAQd34xUA4QEaQAEAAABESQEFdwMZAOEBDCABAAAARkkBB3djIADhAQwgAQAAAEdJAQd3Ax0A4QEaQAEAAABESQEFd2NMAOEBDCABAAAASUkBB3ejIwDhARYEAQAAAEpJAQd5w4kACgJXRAEAAABMSREFd+OJABECV0QBAAEATEkBBXfDVgDhAQwgAQAAAE1JAQd3Iy0A4QEMIAEAAABOSQEHd2OVAeEBDCABAAAAT0kBB3ejBgLhAQwgAQAAAFBJAQd6440B4QEMIAEAAABRSQEHesMGAtkBDCABAAAAUkkBB3vDGQDhAQwgAQAAAFNJAQd7IyAA4QEMIAEAAABVSQEFe2MiAOEBDCABAAAAVUkBB3uDHADhASIEAQAAAFZJAQZ7AyUA4QEWBAEAAABXSQEHewMZAOEBDCABAAAAYUkBR3vjGADhAQwgAQAAAGJJAUV7oycA4QEaQAEAAABjSQFHe4MnAOEBGkABAAAAZEkBRXsjKwDhAQwgAQAAAFxJAQd7QysA4QEaQAEAAABmSQFFe+MVAOEBGkABAAAAZ0kBRXvjIQDhAQwgAQAAAF9JAQd7YyAA4QEMIAEAAABgSQEHewMZAOEBDCABAAAAYUkBB3vjGADhAQwgAQAAAGFJAQV7gzAA4QEaQAEAAABjSQEHe6MwAOEBGkABAAAAY0kBBXujRgDhAQwgAQAAAGVJAQd7wzAA4QEaQAEAAABjSQEFe+MVAOEBHgABAAAAY0kBAnvDGgDhARwMAQAAAGhJAQd7o3UA4QEMIAEAAABWSQEFewMZAOEBDCABAAAAakkBB3vDFwDhARYEAQAAAGtJAQd7wxoA4QEcDAEAAABsSQEHe4MhAOEBIgABAAAAbUkBBntjKADhAQwgAQAAAP5JAQV7gxcA4QEaQAEAAABvSQEHewMaAOEBGkABAAAAb0kBBXsDGQDhAQwgAQAAAHFJAQd7YxoA4QEMIAEAAABySQEHe2McAOEBFgQBAAAAc0kBB3ujKgDhARwMAQAAAHRJAQd74wYC4QEMIAEAAAB1SQEHe+NDAOEBDCABAAAAdkkBB3vjUgDhAQwgAQAAAHdJAQd7oyMA4QEWBAEAAAB4SQEHe8MxAOEBHiABAAAAeUkBBntDOgDhASBAAQAAAHlJAQJ7YxsA4QEWBAEAAAB7SQEHe2MbAOEBDCABAAAAfEkBB3tjUQDhAQwgAQAAAH1JAQd7AzoA4QEMIAEAAAB+SQEHe6NAAOEBDCABAAAAf0kBB3tjKADhAR4gAQAAAHlJAQR74xUA4QEeAAEAAAB5SQECeyMuAOEBLgQBAAAAgkkBBnvDGQDhARYEAQAAAINJAQd7Ix4A4QEMIAEAAACESQEHe0MlAOEBGkABAAAAgkkBBXsjJgDhAQwgAQAAAIZJAQd74xUA4QEeAAEAAACCSQECe0M4AOEBDCABAAAAiEkBB3xDUQDnARgwAQAAAIlJAQV7Q2kA4QEMIAEAAACKSQEHe2MeAOEBFgQBAAAAi0kBB3sDNADhARYEAQAAAIxJAQd7YyIA4QEMIAEAAACNSQEHe0M4AOEBIgQBAAAAjkkBBnvDGQDhARYEAQAAAI9JAQd7oycA4QEaQAEAAACQSQEHe4MnAOEBFgQBAAAAkUkBB3tDKwDhARpAAQAAAJBJAQV7QyAA4QEMIAEAAACTSQEHe8MZAOEBFgQBAAAAlEkBB3uDMADhARpAAQAAAJVJAQd7ozAA4QEWBAEAAACWSQEHe8MwAOEBGkABAAAAlUkBBXtjLgDhARYEAQAAAJhJAQd7wxoA4QEcDAEAAACZSQEHe+MhAOEBDCABAAAAmkkBB3vDdwDhAQwgAQAAAJtJAQd7Q3sA4QEMIAEAAACbSQEFe0NJAOEBDCABAAAAnUkBB3sjbgDhAQwgAQAAAJ5JAQd7AxkA4QEMIAEAAACfSQEHe8MXAOEBFgQBAAAAoEkBB3vDGgDhARwMAQAAAKFJAQd7gzEA4QEMIAEAAACiSQEFeyMmAOEBDCABAAAAokkBBXvjYgDhAR4gAQAAAKRJAQZ7wwIA4QEMIAEAAAClSQEHe+MVAOEBGkABAAAApEkBBXujKwDhAQwgAQAAAKdJAQd7AxcB4QEMIAEAAACoSQEHe+M6AOEBDCABAAAAqUkBB3tjXgDhASIAAQAAAKpJAQZ7gzYA4QEWBAEAAACrSQEHe+OpAOEBDCABAAAArEkBB3tDHQDhARYEAQAAAK1JAQd7o+0B4QEMIAEAAACoSQEFe+MeAOEBDCABAAAAr0kBB3tDIADhAQwgAQAAALBJAQd7wxkA4QEWBAEAAACxSQEHe4MiAOEBHAwBAAAAskkBB3vjkQDhAQwgAQAAALNJAQd7QzEA4QEWBAEAAAC0SQEHewNJAOEBDCABAAAAs0kBBXvjHgDhAQwgAQAAALZJAQd7IzQA4QEWBAEAAAC3SQEHe4McAOEBFgQBAAAAuEkBB3vDGgDhARwMAQAAALlJAQd7QyAA4QEMIAEAAAC6SQEHe2McAOEBFgQBAAAAu0kBB3ujKgDhARwMAQAAALxJAQd7YxsA4QEMIAEAAAC9SQEHe+NWAOEBHAwBAAAAvkkBB3tjIgDhASIEAQAAAL9JAQZ7I2sA4QEuIAEAAADASQEGe2MfAOEBGkABAAAAwEkBBXsDKgDhAR4gAQAAAMBJAQR7YyIA4QEiAAEAAADDSQEGe2McAOEBFgQBAAAAxEkBB3ujKgDhARwMAQAAAMVJAQd7YxsA4QEMIAEAAADGSQEHeyMpAOEBIgABAAAAx0kBBnvjGQDhARYEAQAAAMhJAQd7AxkA4QEMIAEAAADJSQEHewPhAeEBDCABAAAAykkBB3sDAQHhAQwgAQAAAMpJAQV7Q2kA4QEMIAEAAADMSQEHe+M0AOEBDCABAAAAzUkBB3tDSgDhAQwgAQAAAM5JAQd7Q0MA4QEeAAEAAADPSQEGe+MZAOEBGkABAAAAz0kBBXvjHgDhAQwgAQAAANFJAQd74xUA4QEeQAEAAADPSQECe4MhAOEBDCABAAAA00kBB3ujKQDhAQwgAQAAANRJAQd7wzIA4QEaQAEAAADPSQEFe+MkAOEBDCABAAAA1kkBB3vjYgHhAR4AAQAAANdJAQZ74yEA4QEMIAEAAADYSQEHe2McAOEBFgQBAAAA2UkBB3ujKgDhARwMAQAAANpJAQd7YxsA4QEMIAEAAADbSQEHe0MgAOEBDCABAAAA3EkBB3tDBQHhAQwgAQAAAN1JAQd7I14A4QEMIAEAAADeSQEHe8NZAOEBDCABAAAA3kkBBXtjKADhAQwgAQAAAN1JAQV7YyIA4QEMIAEAAADhSQEHeyMvAOEBHiABAAAA4kkBBnvjGQDhARpAAQAAAOJJAQV7YxsA4QEWBAEAAADkSQEHe+MeAOEBDCABAAAA5UkBB3sDKgDhAQwgAQAAAOVJAQV7AxoA4QEeIAEAAADiSQEEe+MVAOEBHiABAAAA4kkBAnuDIQDhARYEAQAAAOlJAQd7g4EB4QEMIAEAAADqSQEHe+OZAOEBGkABAAAA60kBB3vDpwDhAQwgAQAAAOxJAQd7g0MA4QEMIAEAAADtSQEHewMqAOEBDCABAAAA7UkBBXvDIwDhARpAAQAAAOtJAQV74xUA4QEaQAEAAADrSQEFe2PeAOEBGkABAAAA8UkBB3vD6wDhAQwgAQAAAPJJAQd7gxoA4QEMIAEAAADzSQEHewOaANkBHgABAAAA9EkBBnuDZADhARpAAQAAAPRJAQV747MA4QEMIAEAAAD2SQEHe6MnAOEBGkABAAAA90kBB3uDMADhARpAAQAAAPhJAQd7I1cA4QEWBAEAAAD5SQEHe0N0AOEBDCABAAAA9kkBBXvjeADhAQwgAQAAAPtJAQd74xUA4QEaQAEAAAD0SQEFe0NjAOEBGkABAAAA9EkBBXsDBwLZAQwgAQAAAP5JAQd74zoA4QEeIAEAAAD/SQEGe8MmAOEBDCABAAAAAEoBB3tDMgDhAQwgAQAAAAFKAQd74yEA4QEMIAEAAAACSgEHeyMaAOEBFgQBAAAAA0oBB3uDHADhARYEAQAAAARKAQd7wxoA4QEcDAEAAAAFSgEHfSMiAOEBHgABAAAABkoBBn3jFQDhARpAAQAAAAZKAQV+IwcCcgInCAEAAAAKSiEFf0MHAncCJwgBAAAACkoRBYBjBwJ5AicIAQAAAApKAQWBgwcCcgIZMAEAAAAQRyEFgqMHAncCGTABAAAAEEcRBYPDBwJ5AhkwAQAAABBHAQWEAxkA4QEMIAEAAAAOSgEHhKMnAOEBGkABAAAAD0oBB4SDJwDhARYEAQAAABZKAUeEIysA4QEMIAEAAAARSgEHhEMrAOEBGkABAAAAD0oBBYRjNwDhAQwgAQAAABNKAQeEAxkA4QEMIAEAAAAUSgEHhIMwAOEBGkABAAAAFUoBB4SjMADhARYEAQAAABZKAQeEo0YA4QEMIAEAAAAXSgEHhMMwAOEBGkABAAAAFUoBBYRDSQDhAQwgAQAAABlKAQeEA1AA4QEWBAEAAAAaSgEHhEMdAOEBDCABAAAAG0oBB4QDGQDhAQwgAQAAACRKAUeEoycA4QEaQAEAAAAlSgFHhIMnAOEBGkABAAAAJkoBRYQjKwDhAQwgAQAAAB9KAQeEQysA4QEaQAEAAAAoSgFFhOMVAOEBGkABAAAAKUoBRYTjIQDhAQwgAQAAACJKAQeEQyAA4QEMIAEAAAAjSgEHhAMZAOEBDCABAAAAJEoBB4SDMADhARpAAQAAACVKAQeEozAA4QEaQAEAAAAlSgEFhKNGAOEBDCABAAAAJ0oBB4TDMADhARpAAQAAACVKAQWE4xUA4QEaQAEAAAAlSgEFhCN6AOEBHAwBAAAAKkoBB4QjIADhAQwgAQAAACxKAQWEQyAA4QEMIAEAAAAsSgEHhMMZAOEBFgQBAAAALUoBB4SDIgDhARwMAQAAAC5KAQeEAzQA4QEWBAEAAAAvSgEHhGMkAOEBFgQBAAAAMEoBB4TjIADhAQwgAQAAADFKAQeEYyQA4QEWBAEAAAAySgEHhGMcAOEBFgQBAAAAM0oBB4QD4QHhAQwgAQAAADRKAQeEAwEB4QEMIAEAAAA0SgEFhANCAOEBFgQBAAAANkoBB4SDxwDhARYEAQAAADdKAQeEA0EA4QEMIAEAAAA4SgEHhEMaAOEBDCABAAAAOUoBB4RDGgDhAQwgAQAAADpKAQeF4xUA4QEaQAEAAAD1RwEFhkMEAlYEGTABAAAAPkohBYZjBAJYBBkwAQAAAD5KEQWHgwQCXQQZMAEAAAA+SgEFiOMHAtUBDCABAAAAP0oBBYjDVgDhARYEAQAAAERKAQWIw0oA4QEWBAEAAABESgEFiONWAOEBHAwBAAAAQkoBB4gj1ADhAQwgAQAAAENKAQeIA8IA4QEWBAEAAABESgEHiOPtAdkBHiABAAAARUoBBohDJQDhARpAAQAAAEVKAQWIgzEA4QEaQAEAAABOSgEFiCMgAOEBGkABAAAATkoBBYjjFQDhAR4AAQAAAEVKAQKI4z8A4QEeAAEAAABKSgEGiEMoAOEBDCABAAAAS0oBB4gDWADhARpAAQAAAEpKAQWI4xUA4QEaQAEAAABKSgEFiKO5AOEBGkABAAAATkoBBYgDJgDhARpAAQAAAE9KAQeIIyYA4QEMIAEAAABQSgEHiON7AeEBDCABAAAAUUoBB4jjFQDhAR4AAQAAAEVKAQKIQ5EA4QEaQAEAAABTSgEFiGORAOEBGkABAAAAU0oBBYjjGQDhARpAAQAAAFNKAQWI4xUA4QEaQAEAAABTSgEFiCOEAOEBDCABAAAAV0oBB4gDogDhAR4gAQAAAFhKAQaIA0AA4QEaQAEAAABYSgEFiEMoAOEBDCABAAAAWkoBB4gDWADhAQwgAQAAAFhKAQWI4xUA4QEaQAEAAABYSgEFiAMYAOEBHgABAAAAXUoBBojjFQDhARpAAQAAAF1KAQWIA1cA4QEeAAEAAABdSgEEiOMgAOEBDCABAAAAYEoBB4hj3QHZAR4gAQAAAGFKAQaI4zoA4QEeIAEAAABiSgEGiKMmAOEBGkABAAAAYUoBBYjDJgDhAR4AAQAAAGRKAQaIgx8A4QEMIAEAAABlSgEHiOMmAOEBHiABAAAAYkoBBoijJgDhARpAAQAAAGFKAQWIA0YA4QEMIAEAAABoSgEHiOMVAOEBGkABAAAAYUoBBYijIwDhARYEAQAAAGpKAQeIY2kA4QEcDAEAAABrSgEHiGMbAOEBDCABAAAAbEoBB4iDdADhAR4AAQAAAG1KAQaIA1gA4QEaQAEAAABtSgEFiOMVAOEBGkABAAAAbUoBBYjjUQDhAQwgAQAAAHZKAUeIYyoA4QEMIAEAAABxSgEHiOMYAOEBDCABAAAAeEoBRYgDSwDhAQwgAQAAAHNKAQeI4xUA4QEaQAEAAABhSgEFiEMdAOEBFgQBAAAAdUoBB4jjUQDhAQwgAQAAAHZKAQeIYyoA4QEMIAEAAAB3SgEHiOMYAOEBDCABAAAAdkoBBYgDSwDhAQwgAQAAAHlKAQeIo6IA4QEaIAEAAABhSgEFiGNRAOEBDCABAAAAe0oBB4hDhwHhAQwgAQAAAHxKAQeI4yEA4QEMIAEAAAB9SgEHiGPiAOEBDCABAAAAfEoBBYjjpADhAQwgAQAAAH9KAQeIA08A4QEMIAEAAACASgEHiCMDAeEBDCABAAAAgUoBB4jDrgHhAQwgAQAAAIJKAQeIY1EA4QEeQAEAAACDSgEGiEMoAOEBDCABAAAAhEoBB4ijigDhARYEAQAAAIVKAQeI4xUA4QEuQAEAAACDSgECiCODAOEBDCABAAAAh0oBB4jjGQDhARYEAQAAAIhKAQeI4xUA4QEMIAEAAACJSgEHiOMVAOEBDCABAAAAikoBB4gDSwDhAQwgAQAAAItKAQeIYyAA4QEMIAEAAACMSgEHiANuAOEBDCABAAAAjUoBB4hjoADhAQwgAQAAAI5KAQeIo0wA4QEMIAEAAACPSgEHiGMkAOEBDCABAAAAkEoBB4ijmgDhAR5AAQAAAJFKAQaI4xkA4QEaQAEAAACRSgEFiOMeAOEBDCABAAAAk0oBB4gDKgDhAQwgAQAAAJNKAQWI4xUA4QEeQAEAAACRSgECiGMbAOEBHgABAAAAlkoBBohDKwDhAQwgAQAAAJZKAQWI4xUA4QEaQAEAAACWSgEFiMMyAOEBGkABAAAAkUoBBYiDIQDhARpAAQAAAJpKAQeIYykA4QEaQAEAAACaSgEFiIMpAOEBDCABAAAAnEoBB4gDKgDhAQwgAQAAAJxKAQWIgxYA4QEaQAEAAACaSgEFiOMVAOEBGkABAAAAmkoBBYjjVQDhAR4gAQAAAKBKAQaIAyMA4QEMIAEAAAChSgEHiKOKAOEBFgQBAAAAokoBB4hjGwDhAQwgAQAAAKNKAQeIYxsA4QEWBAEAAACkSgEHiENYAOEBGkABAAAApUoBB4jjFQDhAQwgAQAAAKZKAQeIwxwA4QEaQAEAAAClSgEFiINMAOEBDCABAAAAqEoBB4jDmgDhAQwgAQAAAKBKAQWI4xUA4QEuQAEAAACgSgECiOMeAOEBDCABAAAAq0oBB4jDXADhAQwgAQAAAKxKAQeJA1gA5wEYMAEAAACtShEFiANYAOEBGDABAAAArUoBB4gjXgDhAQwgAQAAAK9KAQeIg58A4QEeQAEAAACwSgEGiIMlAOEBDCABAAAAsUoBB4ijVwDhAQwgAQAAALJKAQeIA4YA4QEaQAEAAACwSgEFiINMAOEBDCABAAAAtEoBB4gDKgDhAQwgAQAAALRKAQWI4xUA4QEuQAEAAACwSgECiENXAOEBDCABAAAAt0oBB4iDJQDhAQwgAQAAALhKAQeI48wA4QEMIAEAAAC5SgEFiIMpAOEBDCABAAAAukoBB4iDpADhAR5AAQAAALBKAQSIo1cA4QEMIAEAAAC8SgEHiCNjAOEBDCABAAAAvEoBBYjDAgDhAR4gAQAAAL5KAQaI4ysA4QEMIAEAAAC/SgEHiOOcAOEBDCABAAAAwEoBB4gDIwDhAQwgAQAAAMFKAQeIQ1EA4QEMIAEAAADCSgEHiCO6AOEBDCABAAAAw0oBB4gDYgDhARYEAQAAAMRKAQeI43gA4QEMIAEAAADFSgEHiOMVAOEBGkABAAAAvkoBBYgD+QDhAR4AAQAAAMdKAQaIg38A4QEMIAEAAADISgEHiOMVAOEBIgABAAAAyUoBBogDeADhAR4AAQAAAMdKAQSIY04A4QEeAAEAAADLSgEGiOMVAOEBGkABAAAAy0oBBYhDYwDhARpAAQAAAMtKAQWIg38A4QEeIAEAAADOSgEGiIMfAOEBDCABAAAAz0oBB4jjFQDhARpAAQAAAM5KAQWI44EA4QEMIAEAAAC+SgEFiMMaAOEBDCABAAAA0koBB4gjsQDhAQwgAQAAANNKAQeIAy8A4QEMIAEAAADUSgEHiCPeAeEBHgABAAAA1UoBBoijRgDhAQwgAQAAANZKAQeI4xUA4QEaQAEAAADVSgEFiMMZAOEBGkABAAAA2EoBB4gDWADhARpAAQAAANhKAQWIQzAB4QEMIAEAAADaSgEHiAMIAuEBDCABAAAA20oBB4jDxQHhAQwgAQAAANxKAQeIYx0B2QEuAAEAAADdSgEGiANuAOEBDCABAAAA3koBB4hjWQDhAQwgAQAAAN9KAQeIIyYA4QEaQAEAAADgSgEHiIMfAOEBDCABAAAA4UoBB4jjFQDhAS5AAQAAAOBKAQKIIwgC4QEMIAEAAADjSgEFiCM0AeEBDCABAAAA40oBBYijQgDhAQwgAQAAAOVKAQeIAyoA4QEaQAEAAADgSgEFiON4AOEBDCABAAAA50oBB4hjSQDhAR5AAQAAAOhKAQaIoxgA4QEaQAEAAADdSgEFiCM3AOEBGkABAAAA6EoBBYiDdADhAR4AAQAAAOtKAQaIQygA4QEMIAEAAADsSgEHiANYAOEBGkABAAAA60oBBYjjFQDhAR4AAQAAAOtKAQKI4xUA4QEuQAEAAADdSgECiKN9AOEBHgABAAAA8EoBBoiDTADhAQwgAQAAAPFKAQeI4xUA4QEaQAEAAADwSgEFiINcAOEBHAwBAAAA80oBB4ijkgDhAQwgAQAAAPRKAQeIw6wA4QEMIAEAAAD1SgEHiKMYAOEBGkABAAAA3UoBBYhjKgDhARYEAQAAAN1KAQWIYxsA4QEMIAEAAAD4SgEHiMNKAOEBFgQBAAAA3UoBBYjjFQDhARpAAQAAAN1KAQWIYx4A4QEeQAEAAAD7SgEGiOMZAOEBIEABAAAA+0oBAojjHgDhAQwgAQAAAP1KAQeI4xUA4QEgQAEAAAD7SgECiANcAOEBLgABAAAA/0oBBoiDXADhARwMAQAAAABLAQeIYxsA4QEMIAEAAAABSwEHiAMwAOEBGkABAAAA+0oBBYjjUgHhAQwgAQAAAANLAQeIA3wA2QEeIAEAAAAESwEGiGPwAOEBDCABAAAABUsBB4jDGQDhAR4AAQAAAAZLAQaIQygA4QEMIAEAAAAHSwEHiANYAOEBHgABAAAABksBBIjjFQDhARpAAQAAAAZLAQWIAyMA4QEeQAEAAAAKSwEGiEMlAOEBGkABAAAACksBBYijsADhAQwgAQAAAAxLAQeIIy0A4QEMIAEAAAANSwEHiCMmAOEBDCABAAAADksBB4gjLQDhAQwgAQAAAA9LAQeI4xUA4QEaQAEAAAAKSwEFiGMbAOEBDCABAAAAEUsBB4gjRADhAQwgAQAAABJLAQeIIyIA4QEMIAEAAAATSwEHiCNMAOEBHgABAAAAFEsBBojDKgDhAR4gAQAAABVLAQaIw0IA4QEMIAEAAAAWSwEHiCMrAOEBDCABAAAAF0sBB4hDKwDhAQwgAQAAABVLAQWI4xUA4QEMIAEAAAAZSwEHiAMhAOEBDCABAAAAFEsBBYgjTADhAQwgAQAAABtLAQeIg2AA4QEMIAEAAAAcSwEHiCNAAOEBDCABAAAAHUsBB4iDRQDhAQwgAQAAAB1LAQWIYzMA4QEMIAEAAAAfSwEHiMNWAOEBFgQBAAAAW0sBBYjDSgDhARYEAQAAAFtLAQWI41YA4QEcDAEAAAAiSwEHiGMbAOEBDCABAAAAI0sBB4gjVwDhARYEAQAAACRLAQeIA08A4QEMIAEAAAAlSwEHiOMxAOEBDCABAAAAJksBB4gDMgDhAQwgAQAAACZLAQWIg+cA4QEMIAEAAAAoSwEHiONZAOEBSgQBAAAAKUsBBohDMQDhASBAAQAAAClLAQKIQ0oA4QEiBAEAAAApSwECiOMZAOEBFgQBAAAALEsBB4hjGwDhAQwgAQAAAC1LAQeI4xUA4QEuIAEAAAApSwECiKPaAOEBHAwBAAAAL0sBB4hjGwDhAQwgAQAAADBLAQeIwyYA4QEMIAEAAAAxSwEHiOMVAOEBDCABAAAAMksBB4gDWgDhARpAAQAAAClLAQWIQwgC4QEMIAEAAAA0SwEHiIOpAOEBGkABAAAANUsBB4ijGADhARpAAQAAADVLAQWIYyoA4QEMIAEAAAA3SwEHiOMVAOEBLiABAAAANUsBAogjpwDhAQwgAQAAADhLAQWIY0IA4QEaQAEAAAA1SwEFiMMWAOEBHgABAAAAO0sBBoijTgDhAQwgAQAAADxLAQeIY1YA4QEWBAEAAAA9SwEHiOMVAOEBHgABAAAAO0sBAohjSQDhAQwgAQAAAD9LAQeI49gA4QEeAAEAAAA7SwEEiINPAOEBDCABAAAAQUsBB4hjHgDhAR4gAQAAAEJLAQaI4xkA4QEaQAEAAABCSwEFiIMoAOEBDCABAAAAREsBB4jjHgDhAQwgAQAAAEVLAQeI4xUA4QEaQAEAAABCSwEFiGMaAOEBDCABAAAAR0sBB4gDMADhAR4gAQAAAEJLAQSIA5cA4QEMIAEAAABJSwEHiGMfAOEBGkABAAAABEsBBYhjKgDhAQwgAQAAAEtLAQeIg08A4QEMIAEAAABMSwEHiOMVAOEBIAABAAAABEsBAogDegDhAQwgAQAAAE5LAQeII1cA4QEWBAEAAABPSwEHiKMfAOEBDCABAAAATksBBYgDZwDhAQwgAQAAAARLAQWIw6AA4QEMIAEAAABSSwEHiCMtAOEBDCABAAAAU0sBB4hDfwDhAQwgAQAAAFRLAQeIA1QB4QEMIAEAAABVSwEHiMN1AOEBDCABAAAAVksBB4gjVwDhARYEAQAAAFdLAQeIo1IA4QEMIAEAAABYSwEHiIMkAOEBDCABAAAAWUsBB4iDewDhARYEAQAAAFpLAQeIYyIA4QEWBAEAAABbSwEHimMIAjICEBABAAAA1xwgBYmDCAIXAhAQAQAAANccEAWIowgC2QEQEAEAAADXHAAViEOHAeEBDCABAAAAX0sBB4hDGQDhAR4gAQAAAGBLAQaKwwgCTgIZMAEAAAB0SyEFieMIAlMCGTABAAAAdEsRBYjjCAIZAhkwAQAAAHRLAQWIwxkA4QEWBAEAAABkSwEHiANYAOEBDCABAAAAZUsBB4jDPQDhAQwgAQAAAGZLAQeIAyMA4QEMIAEAAABnSwEHiEOrAOEBDCABAAAAaEsBB4hjoADhAQwgAQAAAGlLAQeIo7UA4QEMIAEAAABqSwEHiGMZAOEBIEABAAAAYEsBAoiDQwDhAQwgAQAAAGxLAQeIw0IA4QEMIAEAAABtSwEHiMNCAOEBDCABAAAAbksBB4jDIwDhAR4AAQAAAGBLAQSIwyoA4QEMIAEAAABwSwEHiMNWAOEBFgQBAAAAfUsBBYjDSgDhARYEAQAAAH1LAQWI4xUA4QEeQAEAAABgSwECiANcAOEBGDABAAAAdEsBB4hDHQDhARYEAQAAAHVLAQeIgyUA4QEMIAEAAAB2SwEHiCOlAOEBDCABAAAAd0sBB4gjIgDhAQwgAQAAAHhLAQeIA24A4QEMIAEAAAB5SwEHiKOrAOEBDCABAAAAeksBB4iD0gDhAQwgAQAAAHtLAQeIw0IA4QEMIAEAAAB8SwEHiEOPAOEBFgQBAAAAfUsBB4oDVQA0AhAQAQAAAIgUIg2JI1UAOAIQEAEAAAAQCxINiCNVADwCEBABAAAAmAECDYoDEwHeARAQAQAAAJAUIg2JIxMB5wEQEAEAAAAYCxINiCMTAeEBEBABAAAAoAECDYpjVQBAAhAQAQAAAHAZIg2Jg1UARAIQEAEAAAD4DxINiINVAEgCEBABAAAAgAYCDYgDkADhAQwgAQAAAIdLAQeIoyMA4QEWBAEAAACISwEHiGNRAOEBHgABAAAAiUsBBohDKADhAQwgAQAAAIpLAQeIw1QA4QEaQAEAAACJSwEFiOM6AOEBDCABAAAAjEsBB4gjTwDhAS4gAQAAAI1LAQaIo6oA4QEMIAEAAACOSwEHiKOOAOEBDCABAAAAj0sBB4jjGQDhASBAAQAAAI1LAQKIo4oA4QEWBAEAAACRSwEHiMMaAOEBHAwBAAAAkksBB4hjGwDhAQwgAQAAAJNLAQeIA24A4QEMIAEAAACUSwEHiOMeAOEBDCABAAAAlUsBB4gDGgDhAR4gAQAAAI1LAQSI4x4A4QEMIAEAAACXSwEHiKNeAeEBDCABAAAAmEsBB4gDIwDhAQwgAQAAAJlLAQeI4xUA4QEeIAEAAACNSwECiCOCAOEBDCABAAAAm0sBB4gjoQDhAR5AAQAAAJxLAQaIA24A4QEMIAEAAACdSwEHiOPVAOEBDCABAAAAnksBB4hjGQDhARpAAQAAAJxLAQWIg0MA4QEMIAEAAACgSwEHiAMqAOEBDCABAAAAoEsBBYjDIwDhAR4gAQAAAJxLAQSIo4oA4QEWBAEAAACjSwEHiMMaAOEBHAwBAAAApEsBB4hjGwDhAQwgAQAAAKVLAQeI4xUA4QEeQAEAAACcSwECiINMAOEBDCABAAAAp0sBB4jDQgDhAQwgAQAAAKhLAQeIA8oA4QEMIAEAAACpSwEHiON4AOEBDCABAAAAqksBB4jjMQDhAQwgAQAAAKtLAQeI4x4A4QEeIAEAAACsSwEGiKN5AOEBDCABAAAArUsBB4jDVQDhARYEAQAAAK5LAQeIo28A4QEMIAEAAACvSwEHiOM8AOEBDCABAAAAsEsBB4jjnwDhAR4gAQAAALFLAQaIYyAA4QEMIAEAAACySwEHiKMfAOEBDCABAAAAsUsBBYijbQDhAR4AAQAAALFLAUaIYyAA4QEMIAEAAAC1SwEHiINpAOEBDCABAAAAs0sBRYhjMwDhAQwgAQAAALdLAQeIAxgA4QEMIAEAAAC4SwEHiGMbAOEBIgABAAAAuUsBBojj1QDhAQwgAQAAALpLAQeIYx8A4QEgQAEAAACsSwECiIMfAOEBDCABAAAAvEsBB4jDAgDhAQwgAQAAAL1LAQeI44EA4QEMIAEAAAC9SwEFiCMmAOEBDCABAAAAv0sBB4hDqwDhAQwgAQAAAMBLAQeIYzsA4QEMIAEAAADBSwEHiGMbAOEBDCABAAAAwksBB4jjFQDhAR4gAQAAAKxLAQKII8IA4QEMIAEAAADESwEHiGMbAOEBFgQBAAAAxUsBB4hjGwDhAQwgAQAAAMZLAQeIYyQA4QEMIAEAAADHSwEHiKMmAOEBFgQBAAAAyEsBB4jDQgDhAQwgAQAAAMlLAQeIQxYA4QEMIAEAAADKSwEHiENrAOEBDCABAAAAy0sBB4jDzADhAQwgAQAAAMxLAQeI43gA4QEMIAEAAADNSwEHiANdAOEBLgABAAAAzksBBoiDsQDhARYEAQAAAM9LAQeI4xUA4QEeAAEAAADOSwECiMNQAeEBGkABAAAAzksBBYgDKgDhAQwgAQAAAKxLAQeI408A4QEMIAEAAADTSwEHiGMZAOEBDCABAAAA1EsBB4jDHwDhAQwgAQAAANVLAQeIw1gA4QEMIAEAAADWSwEHiIMlAOEBDCABAAAA10sBB4gDSwDhARYEAQAAANhLAQeIo1cA4QEMIAEAAADZSwEHiKNSAOEBDCABAAAA2ksBB4gjmwDhAQwgAQAAANtLAQeIY6kA4QEMIAEAAADcSwEHiMM5AOEBFgQBAAAA3UsBB4gDRgDhARYEAQAAAN5LAQeIg4kA4QEMIAEAAADfSwEHiOM6AOEBDCABAAAA4EsBB4gjrADhAR4AAQAAAOFLAQaI4x4A4QEMIAEAAADiSwEHiCPhAeEBDCABAAAA40sBB4iDLwHhAQwgAQAAAORLAQeIY+gA4QEaQAEAAADlSwEHiOMWAOEBHiABAAAA5ksBBogDbgDhAQwgAQAAAOdLAQeIYykA4QEaQAEAAADmSwEFiEM5AOEBDCABAAAA6UsBB4hjOwDhAQwgAQAAAOpLAQeIwx8A4QEMIAEAAADrSwEHiANjAeEBDCABAAAA7EsBB4iDqwDhAQwgAQAAAOxLAQWIQ1EA4QEMIAEAAADuSwEHiCNXAOEBFgQBAAAA70sBB4iDKQDhAR4AAQAAAPBLAQaIYx8A4QEaQAEAAADwSwEFiIMfAOEBDCABAAAA8ksBB4jjFQDhAS5AAQAAAPBLAQKIAyoA4QEaQAEAAADwSwEFiIMWAOEBDCABAAAA5ksBBYjDVgDhARYEAQAAAPpLAQWIw0oA4QEWBAEAAAD6SwEFiGMbAOEBDCABAAAA+EsBB4jjFQDhAR5AAQAAAOZLAQKIQ+kA4QEWBAEAAAD6SwEHiAMJAtkBDCABAAAA+0sBB4hDmwDhARpAAQAAAPxLAQeIA7IA2QEeAAEAAAD9SwEGiMOmAOEBDCABAAAA/ksBB4iDSgDhASBAAQAAAP1LAQKIY0wA4QEWBAEAAAAATAEHiKNKAOEBGkABAAAA/UsBBYjjeADhAQwgAQAAAAJMAQeIw1YA4QEWBAEAAAALTAEFiMNKAOEBFgQBAAAAC0wBBYhjGwDhAQwgAQAAAAVMAQeI4xUA4QEuAAEAAAD9SwECiCNXAOEBFgQBAAAAB0wBB4hjTgDhAQwgAQAAAAhMAQeI4xUA4QEMIAEAAAAJTAEHiMOMAOEBDCABAAAACkwBB4hDkwDhARYEAQAAAAtMAQeIQ78A4QEMIAEAAAAMTAEHiKNXANkBMiABAAAADUwBBohjegDhAQwgAQAAAA5MAQeIgx8A4QEMIAEAAAAPTAEHiOMVAOEBIgABAAAAEEwBBojjYQDhARpAAQAAABFMAQeI4xUA4QEaQAEAAAARTAEFiCNjAOEBGkABAAAAEUwBBYgjYwDhAQwgAQAAAA1MAQeIwx8A4QEMIAEAAAAVTAEHiAMjAOEBFgQBAAAAFkwBB4sjCQLZAQwgAQAAABdMAQeL47kB2QEMIAEAAAAYTAEHjEMJAtIBFCwBAKACG0whBY1jCQLrARQsAUChAhtMEQWOgwkC1QEULAEAoAIbTAEVjENdAdgCFCwBAAAAeBUiDY1jXQHcAhQsAQAAAAAMEg2OY10B4AIULAEAAACIAgINjIMEAGQDFCwBAAAA6BcjDY2jBABoAxQsAQAAAHAOEw2OowQAbAMULAEAAAD4BAMNjGMDAOQCFCwBAAAAgBUiDY2DAwDoAhQsAQAAAAgMEg2OgwMA7AIULAEAAACQAgINjOMDAOQCFCwBAAAAeBYiDY0jBADoAhQsAQAAAAANEg2OIwQA7AIULAEAAACIAwINjIMEAOQCFCwBAAAAOBciDY2jBADoAhQsAQAAAMANEg2OowQA7AIULAEAAABIBAINjuOuAOEBFgQBAAAAK0wBB45DWADhARpAAQAAACxMAQeOoxgA4QEgQAEAAAAsTAECjmMqAOEBDCABAAAALkwBB47jFQDhAS5AAQAAACxMAQKOwxwA4QEaQAEAAAAsTAEFjoNMAOEBFgQBAAAAK0wBBY7DSgDhARYEAQAAACtMAQWOoyMA4QEMIAEAAAAzTAEHjsMjAOEBDCABAAAAM0wBBY7DVgDhARYEAQAAADhMAQWOw0oA4QEWBAEAAAA4TAEFjuMVAOEBDCABAAAAN0wBB44DvgDhASwAAQAAADhMAQaOYxsA4QEMIAEAAAA5TAEHjkMrAOEBDCABAAAAOUwBBY5DawDhAQwgAQAAADtMAQeOA6QA4QEMIAEAAAA8TAEHjmP/AOEBDCABAAAAPUwBB47DVgDhARYEAQAAAEJMAQWOw0oA4QEWBAEAAABCTAEFjuNWAOEBHAwBAAAAQEwBB45jGwDhAQwgAQAAAEFMAQeOI0EA4QEWBAEAAABCTAEHjoM2AOEBGkABAAAAQ0wBB46jGADhARYEAQAAAERMAQeO4xUA4QEeAAEAAABDTAECjqNNAOEBGkABAAAAQ0wBBY5jvADhAQwgAQAAAEdMAQeOoxgA4QEWBAEAAABITAEHjoMwAOEBGkABAAAASUwBB47DMADhARpAAQAAAElMAQWOYxsA4QEWBAEAAABLTAEHjiMfAOEBDCABAAAATEwBB47jGADhAQwgAQAAAEdMAQWOgz0A4QEeQAEAAABOTAEGjsMZAOEBIgABAAAAT0wBBo6DHwDhAQwgAQAAAFBMAQeOgzEA4QEgAAEAAABRTAECjsNWAOEBFgQBAAAAWkwBBY4jIADhARpAAQAAAFpMAQWOw0oA4QEWBAEAAABaTAEFjuNWAOEBHAwBAAAAVUwBB45jGwDhAQwgAQAAAFZMAQeO4xUA4QEuQAEAAABOTAECjkMnAOEBFgQBAAAAWEwBB44DZwDhARpAAQAAAE5MAQWOYyIA4QEgBAEAAABaTAEGjuMVAOEBIAABAAAAWkwBAo4j5gDhAQwgAQAAAFxMAQeOA0AA4QEaQAEAAABcTAEFjuMVAOEBGkABAAAAXEwBBY4DQADhARpAAQAAAF1MAUWO4xUA4QEaQAEAAABeTAFFjoNDAOEBLiABAAAAYUwBBo4DIwDhAQwgAQAAAGJMAQeO4xUA4QEMIAEAAABjTAEHjgNPAOEBDCABAAAAZEwBB45jHwDhARYEAQAAAGVMAQeO40IA4QEMIAEAAABmTAEHjuMVAOEBGkABAAAAYUwBBY5jGwDhAQwgAQAAAGhMAQeOI3oA4QEWBAEAAABpTAEHjsNCAOEBDCABAAAAakwBB44DXQDhASAAAQAAAGtMAQaOw1AB4QEaQAEAAABrTAEFjmNXAOEBHgABAAAAbUwBBo5jVgDhARpAAQAAAG1MAQWO4xUA4QEeAAEAAABtTAECjmNJAOEBDCABAAAAcEwBB47DOQDhARYEAQAAAHFMAQeO4xYA4QEeAAEAAAByTAEGjoMpAOEBDCABAAAAc0wBB46jeQDhAQwgAQAAAHRMAQeOgxYA4QEaQAEAAAByTAEFjuMVAOEBHkABAAAAckwBAo6j+wDZAR4gAQAAAHdMAQaOgx0A4QEgAAEAAAB3TAECjsNWAOEBFgQBAAAAfEwBBY7DSgDhARYEAQAAAHxMAQWO4xUA4QEeAAEAAAB3TAECjgO/AOEBFgQBAAAAfEwBB45jyQHhAQwgAQAAAH1MAQeOw0wA4QEMIAEAAAB+TAEHjiNXAOEBFgQBAAAAf0wBB47jHgDhAQwgAQAAAIBMAQeO4zoA4QEMIAEAAACBTAEHjmM3AOEBDCABAAAAgkwBB44DGgDhAQwgAQAAAIJMAQWOQzkA4QEMIAEAAACETAEHjoNkANkBLkDBAwAAhUwBBoyjCQIKAhkwAQAAAIhMIQWNwwkCDwIZMAEAAACITBEFjsMJAhECGTDBAwAAiEwBBY5DJQDhASBAAQAAAIVMAQKO4xUA4QEeIAEAAACFTAECjiOnAOEBDCABAAAAikwBBY5jkADhARpAAQAAAIxMAQeOgyYA4QEeIAEAAACNTAEGjqMmAOEBIEABAAAAjUwBAo6jxgDhAQwgAQAAAI9MAQeO4xUA4QEaQAEAAACNTAEFjgNPAOEBDCABAAAAkUwBB46jtQDhARgwwQMAAJJMAQeOw7AA4QEaQAEAAACFTAEFjkMjAdkBLgABAAAAlEwBBo6jUgDhAR4gAQAAAJVMAQaOIyYA4QEMIAEAAACWTAEHjsNWAOEBFgQBAAAAnUwBBY7DSgDhARYEAQAAAJ1MAQWO4xUA4QEaQAEAAACVTAEFjkMoAOEBDCABAAAAmkwBB45jGwDhARYEAQAAAJtMAQeOw7AA4QEMIAEAAACVTAEHjuP+AOEBFgQBAAAAnUwBB47j7wDhAQwgoQQAAJ5MAQeOo7UA4QEMIAEAAACfTAEHjiNjAOEBDCABAAAAn0wBBY5jPwDhAR4gAQAAAKFMAQaOIyYA4QEMIAEAAACiTAEHjmMlAOEBDCABAAAAoUwBBY4jUADhARYEAQAAAKRMAQeOA74A4QEwBAEAAAClTAEGjgNLAOEBDCABAAAApkwBB44D8ADhAQwggQQAAJ5MAQWOYxsA4QEMIAEAAACoTAEHjgOvAOEBDCABAAAAqUwBB47DVgDhARYEAQAAAK9MAQWOw0oA4QEWBAEAAACvTAEFjsNWAOEBFgQBAAAArkwBBY7DSgDhARYEAQAAAK5MAQWOw8IB4QEWBAEAAACuTAEHjiNzAOEBFgQBAAAAr0wBB47jjwDhAR4gAQAAALBMAQaOg38A4QEMIAEAAACxTAEHjsNWAOEBFgQBAAAAt0wBBY7DSgDhARYEAQAAALdMAQWOYxsA4QEMIAEAAAC0TAEHjuMVAOEBLgABAAAAsEwBAo7jsQDhARpAAQAAALBMAQWO4wkB4QEWBAEAAAC3TAEHjsNGAOEBDCABAAAAuEwBB45DIwHhAQwgAQAAALlMAQeOY7YA4QEMIAEAAAC6TAEHjiPiAOEBDCABAAAAu0wBB44DmwDhARpAAQAAALxMAQeOgyYA4QEMIAEAAAC9TAEHjmMZAOEBGkABAAAAvEwBBY6DQwDhAQwgAQAAAL9MAQeO4xUA4QEeQAEAAAC8TAECjsPKAOEBGkABAAAAvEwBBY4DSwDhAR4gAQAAAMJMAQaO4xkA4QEgBAEAAADCTAECjsNWAOEBFgQBAAAA0EwBBY7DSgDhARYEAQAAANBMAQWO41YA4QEcDAEAAADGTAEHjmMbAOEBDCABAAAAx0wBB47jFQDhAQwgAQAAAMhMAQeOYxsA4QEWBAEAAADJTAEHjmMbAOEBDCABAAAAykwBB45DRQDhAR4AAQAAAMtMAQaO4x4A4QEMIAEAAADMTAEHjuMVAOEBHgABAAAAy0wBAo4DVwDhARpAAQAAAMtMAQWOw18A4QEMIAEAAADCTAEFjmNlAOEBFgQBAAAA0EwBB46jXgHhAQwgAQAAANFMAQeOo3kA4QEiBAEAAADSTAEGjsOhAOEBDCABAAAA00wBB47DKADhARwMAQAAANRMAQeOYxsA4QEMIAEAAADVTAEHjiNZAeEBDCABAAAA1kwBB44DqwDhAQwgAQAAANdMAQeOQ0oA4QEMIAEAAADYTAEHjuMJAuEBDCABAAAA2UwBB44jtADhARpAAQAAANpMAQeOg0MA4QEMIAEAAADbTAEHjsMjAOEBGkABAAAA2kwBBY5DJwDhAS4EAQAAAN1MAQaOQzEA4QEaQAEAAADdTAEFjkNKAOEBDCABAAAA30wBB44DSQDhARpAAQAAAN1MAQWO4xUA4QEgQAEAAADdTAECjqNLAOEBGkABAAAA4kwBB45DJQDhARpAAQAAAOJMAQWOIyYA4QEMIAEAAADkTAEHjuMVAOEBDCABAAAA5UwBB47DGADhAQwgAQAAAOZMAQeOg7MA4QEaQAEAAADiTAEFjiNMAOEBDCABAAAA6EwBB45jIADhARYEAQAAAOlMAQeOw1gA4QEMIAEAAADqTAEHjeNpAPsBogwBQAEA7EwRBI7jaQDhAUgMAQAAAOxMARaO4xUA4QEMIAEAAADtTAEHjsM5AOEBFgQBAAAA7kwBB47jIQDhAQwgAQAAAO9MAQeOI0AA4QEMIAEAAADwTAEHjuMVAOEBGkABAAAA7EwBBY5jGwDhAQwgAQAAAPJMAQeOAzoA4QEMIAEAAADzTAEHjuOBAOEBDCABAAAA7EwBB47jFQDhAQwgAQAAAPVMAQeOAwoC4QEgAAEAAAD2TAEGjoNDAOEBDCABAAAA90wBB47DIwDhARpAAQAAAPZMAQWOI7UA4QEeAAEAAAD5TAEGjuMeAOEBHiABAAAA+kwBBo4DSwDhAQwgAQAAAPtMAQeOY6QB4QEMIAEAAAD8TAEHjuMlAOEBDCABAAAA/UwBB44jCgLZAQwgAQAAAP5MAQeOI6AA4QEeAAEAAAD/TAEGjoNDAOEBDCABAAAAAE0BB47jFQDhARpAAQAAAP9MAQWOYz8A4QEaQAEAAAACTQEHjuMVAOEBGkABAAAAAk0BBY5jJQDhARpAAQAAAAJNAQWOwxgA4QEaQAEAAAB0fwAFjkMwAOEBGkABAAAAsEwBBYyDXwHeARAQAQAAANccIAWNYxgA+wEQEAEAAADXHBAFjmMYAOEBEBABAAAA1xwAFYwDVQA0AhAQAQAAAJgUIg2NI1UAiAIQEAEAAAAgCxINjiNVADwCEBABAAAAqAECDYyDhwDeARAQAQAAAKAUIg2NwxgA5wEQEAEAAAAoCxINjsMYAOEBEBABAAAAsAECDYxjVQBAAhAQAQAAAHgZIg2Ng1UAmAIQEAEAAAAAEBINjoNVAEgCEBABAAAAiAYCDY5jFgDhAQwgAQAAABNNAQeOgxYA4QEMIAEAAAATTQEFjgONAOEBFgQBAAAAFU0BB47jIQDhAQwgAQAAABZNAQeOw0oA4QEwIAEAAAAXTQEGjiMlAOEBFgQBAAAAGE0BB47jHgDhAQwgAQAAABlNAQeOI3oA4QEwAAEAAAAaTQEGjiOSAOEBFgQBAAAAG00BB45jKgDhAQwgAQAAABxNAQeOAxkA4QEMIAEAAAAiTQFHjqMnAOEBGkABAAAAI00BR46DJwDhARYEAQAAACRNAUWOQysA4QEaQAEAAAAlTQFFjuMVAOEBGkABAAAAJk0BRY4DGQDhAQwgAQAAACJNAQeOgzAA4QEaQAEAAAAjTQEHjqMwAOEBFgQBAAAAI00BBY7DMADhARpAAQAAACNNAQWO4xUA4QEaQAEAAAAjTQEFjiMyAOEBFgQBAAAAJ00BB44jMgDhARYEAQAAAChNAQeOwx8A4QEWBAEAAAApTQEHjgMjAOEBMAwBAAAAKk0BBo4DMgDhARwMAQAAACtNAQeOAwoB2QEuBAEAAAAsTQEGjqMXAOEBDCABAAAALU0BB46DQwDhAQwgAQAAAC5NAQeOA24A4QEMIAEAAAAvTQEHjmMbAOEBDCABAAAAME0BB45jMwDhAQwgAQAAADFNAQeOY5EA4QEaQAEAAAAsTQEFjuMZAOEBGkABAAAALE0BBY7jHgDhASIAAQAAACxNAQKOw0oA4QEWBAEAAAAsTQEFjuMVAOEBHgABAAAALE0BAowjYQHeARQsAQAAAEAXIg2N4zYA+wEULAEAAADIDRINjuM2AOEBFCwBAAAAUAQCDYzDYQH4AhQsAQAAAPgZIg2N42EB/AIULAEAAACAEBINjuNhAQADFCwBAAAACAcCDYyjBgF8AxQsAQAAALAbIw2NwwYBgAMULAEAAAA4EhMNjsMGAYQDFCwBAAAAwAgDDYwDYgEEAxQsAQAAAAAaIg2NI2IBCAMULAEAAACIEBINjiNiAQwDFCwBAAAAEAcCDYwDYAEEAxQsAQAAAMAaIg2NI2ABCAMULAEAAABIERINjiNgAQwDFCwBAAAA0AcCDYyjBgEEAxQsAQAAAEgbIg2NwwYBCAMULAEAAADQERINjsMGAQwDFCwBAAAAWAgCDY+jFwDhAR5AAQAAAElNAQaPA4YA4QEgQAEAAABJTQECj4NMAOEBDCABAAAAS00BB4/DVgDhARYEAQAAAFFNAQWPw0oA4QEWBAEAAABRTQEFj+MVAOEBSAABAAAASU0BAo8j1ADhAQwgAQAAAE9NAQePI2UA4QEeAAEAAABJTQEEjwPCAOEBFgQBAAAAUU0BB4/DXADhAR4gAQAAAFJNAQaPo0wA4QEMIAEAAABTTQEHjyMYAOEBDCABAAAAVE0BB49DKADhAQwgAQAAAFVNAQePA1gA4QEMIAEAAABSTQEFj4NMAOEBDCABAAAAV00BB4/jFQDhARpAAQAAAFJNAQWPw9EA4QEaQAEAAABZTQEHj0MxAOEBGkABAAAAWU0BBY/jFQDhARpAAQAAAFlNAQWPI9IA4QEMIAEAAABcTQEHj8NzAOEBHgABAAAAXU0BBo8jpwDhARpAAQAAAF1NAQWPA+8A4QEaQAEAAABfTQEHj2NWAOEBGkABAAAAX00BBY/jFQDhARpAAQAAAF9NAQWP4+MA4QEaQAEAAABfTQEFj0OpAOEBHgABAAAAY00BBo/jOgDhAQwgAQAAAGRNAQePgxYA4QEMIAEAAABjTQEFkGP0Ad4BDhgBACAEaE0hBZFDoAD7AW4sAUAhBGhNEQSPQ6AA4QFuLAEAIARoTQEUkEN2ATQCDhgBAAAAABYiDZFjdgE4Ag4YAQAAAIgMEg2PY3YBPAIOGAEAAAAQAwINkGMDAHwCDhgBAAAA6BUiDZGDAwDwAg4YAQAAAHAMEg2PgwMAhAIOGAEAAAD4AgINkOMDAHwCDhgBAAAA2BYiDZEjBADwAg4YAQAAAGANEg2PIwQAhAIOGAEAAADoAwINkIN2ATQCDhgBAAAAuBYiDZGjdgE4Ag4YAQAAAEANEg2Po3YBPAIOGAEAAADIAwINkIMEAHwCDhgBAAAAeBciDZGjBADwAg4YAQAAAAAOEg2PowQAhAIOGAEAAACIBAINj6P4AOEBDCABAAAAeE0BB48jNQDhAQwgAQAAAHlNAQeQg/QB3gEOGAEAAAB8TSEFkaP0AecBDhgBAAAAfE0RBY+j9AHhAQ4YAQAAAHxNAQWRgykA5wEOGAFAAQB+TREFj4MpAOEBPBgBAAAAfk0BFpAjdwHeAQ4YAQAAAPAVIg2RQ3cB5wEOGAEAAAB4DBINj0N3AeEBDhgBAAAAAAMCDY8jzQDhAQwgAQAAAIJNAQeQw/QB3gEOGAEAAADgFiINkYMyAOcBDhgBAAAAaA0SDY+DMgDhAQ4YAQAAAPADAg2Q4/QB3gEOGAEAAACITSEFkYOJAOcBDhgBAAAAiE0RBY+DiQDhAQ4YAQAAAIhNAQWPIxwA4QEMIAEAAACJTQEHj4MpAOEBFgwBAAAAik0BB5ADowHeAQ4YAQAAAIAXIg2RI6MB5wEOGAEAAAAIDhINjyOjAeEBDhgBAAAAkAQCDZCjdwFAAg4YAQAAAGgaIg2Rw3cBRAIOGAEAAADwEBINj8N3AUgCDhgBAAAAeAcCDZADYgGoAg4YAQAAAFgaIg2RI2IB9AIOGAEAAADgEBINjyNiAbACDhgBAAAAaAcCDZADYAGoAg4YAQAAABAbIg2RI2AB9AIOGAEAAACYERINjyNgAbACDhgBAAAAIAgCDZDjdwFAAg4YAQAAAPAaIg2RA3gBRAIOGAEAAAB4ERINjwN4AUgCDhgBAAAAAAgCDZCjBgGoAg4YAQAAAGgbIg2RwwYB9AIOGAEAAADwERINj8MGAbACDhgBAAAAeAgCDY9DawDhAQwgAQAAAJ1NAQePA6AA4QEMIAEAAACeTQEHj4M9AOEBDCABAAAAn00BB4+DWADhARYEAQAAAKBNAQePo0sA4QEMIAEAAAChTQEHj+NVAOEBDCABAAAAok0BB4/jQgDhAQwgAQAAAKNNAQePQzkA4QEMIAEAAACkTQEHj+M/AOEBGkABAAAApU0BB49DKADhAQwgAQAAAKZNAQePA1gA4QEaQAEAAAClTQEFj+MVAOEBHgABAAAApU0BAo8jmwDhAR4gAQAAAKlNAQaPw4sA4QEeAAEAAACqTQEGjyMZAOEBDCABAAAAq00BB4/DSQDhAQwgAQAAAKxNAQePA0AA4QEgQAEAAACpTQECj0MoAOEBDCABAAAArk0BB4/DKgDhAQwgAQAAAK9NAQePYxsA4QEWBAEAAACwTQEHj0N0AOEBDCABAAAAqU0BBY/DjADhAQwgAQAAALJNAQePA0sA4QEMIAEAAACzTQEHj2N8AOEBHgABAAAAtE0BBo/DMADhARpAAQAAALRNAQWP41YA4QEcDAEAAAC2TQEHj2MbAOEBDCABAAAAt00BB4/jFQDhASBAAQAAALRNAQKPYzEA4QEcDAEAAAC5TQEHj6PPAOEBFgQBAAAAuk0BB4/DLAHhAR4AAQAAALtNAQaPAy0B4QEaQAEAAAC8TQEHj4NlAOEBGkABAAAAvE0BBY/DXgHhAR4AAQAAAL5NAQaQQwoC3gEcDAEAAADBTSEFkYM1APsBHAwBQAEAwU0RBY+DNQDhARwMAQAAAMFNARWQYwoCNAIcDAEAAADAFiINkYMKAjgCHAwBAAAASA0SDY+DCgI8AhwMAQAAANADAg2PIx4A4QEcDAEAAADFTQEXkYMpAOcBHAwBQAEAx00RBY+DKQDhARwMAQAAAMdNARWQowoC3gEcDAEAAADKTSEFkcMcAOcBHAwBAAAAyk0RBY/DHADhARwMAQAAAMpNAQWQwwoCQAIcDAEAAAD4GiINkeMKAkQCHAwBAAAAgBESDY/jCgJIAhwMAQAAAAgIAg2Qg18B3gEcDAEAAADQTSEFkWMYAOcBHAwBQAEA0E0RBY9jGADhARwMAQAAANBNARWQQ10BNAIcDAEAAAAIFiINkWNdAYgCHAwBAAAAkAwSDY9jXQE8AhwMAQAAABgDAg2Q4wMAfAIcDAEAAAC4FyINkSMEAIACHAwBAAAAQA4SDY8jBACEAhwMAQAAAMgEAg2Qg10BNAIcDAEAAACoFyINkaNdAYgCHAwBAAAAMA4SDY+jXQE8AhwMAQAAALgEAg2QgwQAfAIcDAEAAACIFyINkaMEAIACHAwBAAAAEA4SDY+jBACEAhwMAQAAAJgEAg2P48wA4QEMIAEAAADdTQEHkSOHAOcBJggBQAEA300RBY8jhwDhASYIAQAAAN9NARWRo18B5wEcDAFAAQDhTREFj6NfAeEBHAwBAAAA4U0BFZCj9QHeARwMAQAAAORNIQWRYx8A5wEcDAEAAADkTREFj2MfAOEBHAwBAAAA5E0BBY+DRADhAQwgAQAAAOVNAQeRozsA5wEcDAFAAQDnTREFj6M7AOEBHAwBAAAA500BFZCDXwHeARwMAQAAAMAXIg2RYxgA5wEcDAEAAABIDhINj2MYAOEBHAwBAAAA0AQCDZDjEgHeARwMAQAAAO1NIQWRAyEA5wEcDAEAAADtTREFjwMhAOEBHAwBAAAA7U0BBY+DKQDhARwMAQAAAO5NAQeQI2EB3gEcDAEAAACQFyINkeM2AOcBHAwBAAAAGA4SDY/jNgDhARwMAQAAAKAEAg2RgykA5wEcDAFAAQDzTREFj4MpAOEBHAwBAAAA800BF4/DgADhAQwgAQAAAPRNAQeQw2EBQAIcDAEAAABwGiINkeNhAZgCHAwBAAAA+BASDY/jYQFIAhwMAQAAAIAHAg2QA2ABqAIcDAEAAACYGyINkSNgAawCHAwBAAAAIBISDY8jYAGwAhwMAQAAAKgIAg2QQ2ABQAIcDAEAAACAGyINkWNgAZgCHAwBAAAACBISDY9jYAFIAhwMAQAAAJAIAg2QowYBqAIcDAEAAABwGyINkcMGAawCHAwBAAAA+BESDY/DBgGwAhwMAQAAAIAIAg2Pw6YA4QEMIAEAAAABTgEHj2PdAOEBGkABAAAAAk4BB5GDQwDnASYIAUABAAROEQWPg0MA4QEmCAEAAAAETgEVj2ORAOEBGkABAAAAAk4BBY8jGADhAQwgAQAAAAZOAQeP4xkA4QEaQAEAAAACTgEFj+MVAOEBGkABAAAAAk4BBY+jYQHhAQwgAQAAAAlOAQeQAwsC3gFuAAEAIAQMTiEEkcMcAecBbiwBQCEEDE4RBI/DHAHhAW4sAQAgBAxOARSQIwsCNAIOGAEAAADIFiINkUMLAogCDhgBAAAAUA0SDY9DCwI8Ag4YAQAAANgDAg2RgykA5wEOGAFAAQARThEFj4MpAOEBDhgBAAAAEU4BBZBjCwLeAQ4YAQAAABROIQWRY5cA5wEOGAEAAAAUThEFj2OXAOEBDhgBAAAAFE4BBZCDCwJAAg4YAQAAAAAbIg2RowsCmAIOGAEAAACIERINj6MLAkgCDhgBAAAAEAgCDY+DTADhAR4AAQAAABhOAQaPYxEB4QEMIAEAAAAZTgEHj0OjAOEBHgABAAAAGk4BBo8jhADhAQwgAQAAABtOAQePg1IA4QEMIAEAAAAcTgEHkUM4AOcBQEgBQAEAHk4RBY9DOADhAaRIAQBAAR5OARaPw2IB4QEMIAEAAAAfTgEHj4N/AOEBHiABAAAAIE4BBo/jFQDhARpAAQAAACBOAQWPAyoA4QEaQAEAAAAgTgEFj+P0AOEBDCABAAAAI04BB4+DHADhARYEAQAAACROAQePQyAA4QEMIAEAAAAlTgEHj8MaAOEBHAwBAAAAJk4BB4/DVgDhARYEAQAAAClOAQWPw0oA4QEWBAEAAAApTgEFj4P5AOEBIiABAAAAKU4BBo8DRQDhAQwgAQAAACpOAQePw6YA4QEMIAEAAAArTgEHj0OgAOEBDCABAAAALE4BB49jJADhAR4AAQAAAC1OAQaPYyoA4QEMIAEAAAAuTgEHjyM3AOEBHgABAAAALU4BBI9jlQDhARYEAQAAADBOAQeP4xUA4QEaQAEAAAAtTgEFj4MxAOEBGkABAAAAM04BBY9jwADhAR4AAQAAADNOAQaP4xUA4QEaQAEAAAAzTgEFjyMYAOEBDCABAAAANU4BB49DwQDhARYEAQAAADZOAQePIy0A4QEeIAEAAAA3TgEGj+MxAOEBDCABAAAAOE4BB49DGQDhAQwgAQAAADlOAQePI1cA4QEWBAEAAAA6TgEHj2NWAOEBGkABAAAAN04BBY+DfwDhAQwgAQAAADxOAQePg38A4QEMIAEAAAA9TgEHj2PmAOEBDCABAAAAPk4BB4/jFQDhAS5AAQAAADdOAQKPg1IA4QEMIAEAAABATgEHj2N6AOEBDCABAAAAQU4BB4+j8gDhARYEAQAAAEJOAQeP42sA4QEaQAEAAAA3TgEFj8OgAOEBHiABAAAARE4BBo+DZADhARpAAQAAAEROAQWP41UA4QEMIAEAAABGTgEHjyOhAOEBDCABAAAAR04BB4/jFQDhAQwgAQAAAEhOAQePY1EA4QEMIAEAAABJTgEHj8OOAOEBHgABAAAASk4BBo+jvADhAR4AAQAAAEtOAQaPQygA4QEMIAEAAABMTgEHj8M8AeEBHgABAAAATU4BBo/jFQDhAQwgAQAAAE5OAQePo7IA4QEeAAEAAABPTgEGj0MOAeEBGkABAAAAS04BBY+DawDhAQwgAQAAAFFOAQePo3kA4QEMIAEAAABSTgEHj+O8AOEBHgABAAAAU04BBo9jHwDhARpAAQAAAEpOAQWP4xUA4QEuQAEAAABKTgECj6MxAeEBGkABAAAAU04BBY/jSQDhARpAAQAAAEpOAQWPoyMA4QEaQAEAAABYTgEHj8MjAOEBGkABAAAAWE4BBY8DkgDhAR4AAQAAAFpOAQaPA4YA4QEaQAEAAABaTgEFj4NMAOEBHgABAAAAXE4BBo9jHwDhARYEAQAAAF1OAQePYxsA4QEWBAEAAABeTgEHjwNGAOEBFgQBAAAAX04BB4+D9ADhAQwgAQAAAGBOAQeP4xUA4QEaQAEAAABaTgEFj6OPAOEBGkABAAAAWk4BBY/jywDhAQwgAQAAAGBOAUePg38A4QEeIAEAAABkTgEGj2MfAOEBIEABAAAAZE4BAo+DHwDhAQwgAQAAAGZOAQeP4xUA4QEuIAEAAABkTgECjwMqAOEBHgABAAAAZE4BBI9jIADhAQwgAQAAAGlOAQePI6wA4QEeAAEAAABqTgEGj+N4AOEBDCABAAAAa04BB48DQADhARpAAQAAAGpOAQWPQygA4QEMIAEAAABtTgEHjwNYAOEBDCABAAAAak4BBY+jlADhARpAAQAAAG9OAQeP4xUA4QEeQAEAAABqTgECjwOAAOEBDCABAAAAcU4BB49jNwDhAS4EAQAAAHJOAQaPo5oA4QEMIAEAAABzTgEHj0O/AOEBDCABAAAAdE4BB48j2gDhAQwgAQAAAHVOAQePwzMA4QEMIAEAAAB2TgEHj6MjAOEBDCABAAAAd04BB4/DIwDhAQwgAQAAAHdOAQWPY1wA4QEMIAEAAAB5TgEHj0MZAOEBDCABAAAAek4BB4+DWADhARpAAQAAAHtOAQePoxgA4QEWBAEAAAB8TgEHj2MqAOEBDCABAAAAfU4BB49jGwDhAQwgAQAAAH5OAQeP4xUA4QEeAAEAAAB7TgECj8McAOEBGkABAAAAe04BBY+DJQDhAR4AAQAAAIFOAQaPAxoA4QEMIAEAAAByTgEFj2NRAOEBDCABAAAAg04BB4/DOQDhAQwgAQAAAIROAQePo0wA4QEMIAEAAACFTgEHj0MZAOEBHiABAAAAhk4BBo9jGQDhASAAAQAAAIZOAQKPwyMA4QEaQAEAAACGTgEFj+MVAOEBGkABAAAAhk4BBY/jHgDhAQwgAQAAAIpOAQePI0YA4QEMIAEAAACLTgEHj8PuAOEBDCABAAAAjE4BB4/jFQDhAR4AAQAAAHJOAQKPoyMA4QEWBAEAAACOTgEHjwNDAOEBDCABAAAAj04BB49jTgDhAQwgAQAAAJBOAQePgyQA4QEMIAEAAACRTgEHj6O1AOEBDCABAAAAkk4BB4/DHwDhAQwgAQAAAJNOAQePI6wA4QEaQAEAAACUTgEHjwNAAOEBGkABAAAAlE4BBY9DKADhAQwgAQAAAJZOAQePA1gA4QEaQAEAAACUTgEFj+MVAOEBGkABAAAAlE4BBY/j7wDhAQwgAQAAAJlOAQePo4MB4QEeIAEAAACaTgEGj8NzAOEBDCABAAAAm04BB4/jPAHhAR4AAQAAAJxOAQaPw3MA4QEMIAEAAACdTgEHj6MwAOEBGkABAAAAmk4BBY/DMADhARogAQAAAJpOAQWP4xUA4QEaQAEAAACaTgEFkMMLAjICpgABACAEoU4hAJHjCwIXAhQsAUAhBKNOEQWPAwwC2QEULAEAIASjTgEXkCMMAuwBFCwBAAAAEBYiDZHDhgHwARQsAQAAAJgMEg2Pw4YB9AEULAEAAAAgAwINkIMEAGAEFCwBAAAA9BcjDZGjBABkBBQsAQAAAHwOEw2PowQAaAQULAEAAAAEBQMNkGMDABADFCwBAAAA+BUiDZGDAwAUAxQsAQAAAIAMEg2PgwMAGAMULAEAAAAIAwINkOMDABADFCwBAAAA6BYiDZEjBAAUAxQsAQAAAHANEg2PIwQAGAMULAEAAAD4AwINkEMMAuwBFCwBAAAA0BYiDZFjDALwARQsAQAAAFgNEg2PYwwC9AEULAEAAADgAwINkIMEABADFCwBAAAAmBciDZGjBAAUAxQsAQAAACAOEg2PowQAGAMULAEAAACoBAINj2MSAeEBDCABAAAAtk4BB4+DKQDhARQsAQAAALdOARWPI24A4QEwBAEAAAC4TgEWj+MZAOEBFgQBAAAAuU4BB4/DKADhARwMAQAAALpOAQePYxsA4QEMIAEAAAC7TgEHj0NrAOEBFgQBAAAAvE4BB49jGwDhAQwgAQAAAL1OAQePw1wA4QFIBAEAAAC+TgEGj0MoAOEBDCABAAAAv04BB48DKgDhAQwgAQAAAL9OAQWPQycA4QEWBAEAAADBTgEHj6MkAOEBHAwBAAAAwk4BB49jGwDhAQwgAQAAAMNOAQePwxoA4QEcDAEAAADETgEHkIMMAt4BFCwBACAExU4hBZHDOAH7ARQsAUAhBMdOEQWPwzgB4QEULAEAIATHTgEVj8P0AOEBGkABAAAAyE4BB4/jFQDhARpAAQAAAMhOAQWQgwQAjAIULAEAAAAAGCMNkaMEAJACFCwBAAAAiA4TDY+jBACUAhQsAQAAABAFAw2QowYBnAIULAEAAADIGyMNkcMGAaACFCwBAAAAUBITDY/DBgGkAhQsAQAAANgIAw2PowMB4QEeAAEAAADQTgEGj0MwAeEBDCABAAAA0U4BB4+DfwDhAQwgAQAAANJOAQeP4xUA4QEaBAEAAADQTgEFjwN4AOEBDCABAAAA0E4BBY/DywDhAR5AAQAAANVOAQaPwyMA4QEaQAEAAADVTgEFj+MVAOEBGkABAAAA1U4BBY+jhQDhARpAAQAAANhOAQePY1YA4QEaQAEAAADYTgEFj4N/AOEBDCABAAAA2k4BB4/jFQDhAUoEAQAAANhOAQKPA3gA4QEaQAEAAADYTgEFj4NEAOEBHgABAAAA3U4BBo+jygDhAQwgAQAAAN5OAQePwyoA4QEMIAEAAADfTgEHj+MeAOEBDCABAAAA4E4BB4/DJgDhAQwgAQAAAOFOAQePA0cA4QEMIAEAAADiTgEHj8PeAeEBDCABAAAA404BB48DQADhARYEAQAAAOROAQePgyQA4QEMIAEAAADlTgEHj8OmAOEBDCABAAAA5k4BB5CjDALeARQsAQAAAOlOIQWRY6sA+wEULAEAAADpThEFj2OrAOEBFCwBAAAA6U4BBZHDNADnAW4AAUAhBOtOEQSPwzQA4QFuLAEAIATrTgEUkMMMAt4BFCwBAAAAoBciDZGjJQDnARQsAQAAACgOEg2PoyUA4QEULAEAAACwBAINkOMMAvwBFCwBAAAAeBoiDZEDDQIAAhQsAQAAAAAREg2PAw0CBAIULAEAAACIBwINkKMGAWwEFCwBAAAAvBsjDZHDBgFwBBQsAQAAAEQSEw2PwwYBdAQULAEAAADMCAMNkANiARwDFCwBAAAAYBoiDZEjYgEgAxQsAQAAAOgQEg2PI2IBJAMULAEAAABwBwINkANgARwDFCwBAAAAGBsiDZEjYAEgAxQsAQAAAKAREg2PI2ABJAMULAEAAAAoCAINkCMNAvwBFCwBAAAACBsiDZFDDQIAAhQsAQAAAJAREg2PQw0CBAIULAEAAAAYCAINkKMGARwDFCwBAAAAeBsiDZHDBgEgAxQsAQAAAAASEg2PwwYBJAMULAEAAACICAINkGMNAjICHAwBAAAAA08hBZGDDQIXAhwMAUABAANPEQWPow0C2QEcDAEAAAADTwEXkCP2AewBHAwBAAAAGBYiDZFD9gHwARwMAQAAAKAMEg2PQ/YB9AEcDAEAAAAoAwINkOMDABADHAwBAAAA8BYiDZEjBAAUAxwMAQAAAHgNEg2PIwQAGAMcDAEAAAAABAINkMMNAuwBHAwBAAAAsBciDZHjDQLwARwMAQAAADgOEg2P4w0C9AEcDAEAAADABAINkAMOAt4BHAwBAAAAD08hBZEjDgL7ARwMAQAAAA9PEQWPIw4C4QEcDAEAAAAPTwEFj2MRAeEBDCABAAAAEE8BB5CD9gHeARwMAQAAAPgWIg2Rw9sA5wEcDAEAAACADRINj8PbAOEBHAwBAAAACAQCDZBDDgLeARwMAQAAABZPIQWRYw4C+wEcDAEAAAAWTxEFj2MOAuEBHAwBAAAAFk8BBZCj9gH8ARwMAQAAAIAaIg2Rw/YBAAIcDAEAAAAIERINj8P2AQQCHAwBAAAAkAcCDZADYAEcAxwMAQAAACAbIg2RI2ABIAMcDAEAAACoERINjyNgASQDHAwBAAAAMAgCDZCDDgL8ARwMAQAAAJAbIg2Row4CAAIcDAEAAAAYEhINj6MOAgQCHAwBAAAAoAgCDZKDTQDhARYEAQAAACBPAQeSQ1cA4QEMIAEAAAAhTwEHkgOGAOEBFgQBAAAAIk8BB5LDKADhARwMAQAAACNPAQeSYxsA4QEMIAEAAAAkTwEHkoNMAOEBDCABAAAAJU8BB5LDjADhAQwgAQAAACZPAQeSo6oA4QEMIAEAAAAnTwEHksMOAuEBDCABAAAAKE8BB5KjzADhAQwgAQAAAClPAQeSQ6EA4QEMIAEAAAAqTwEHksN/AeEBDCABAAAAK08BB5JjZADhAQwgAQAAACxPAQeSwx8A4QEsBAEAAAAtTwEGkgNuAOEBFgQBAAAALk8BB5KjJADhARwMAQAAAC9PAQeSo7AA4QEaQAEAAAAwTwEHkqMYAOEBGkABAAAAME8BBZJjGwDhAQwgAQAAADJPAQeS4xUA4QEeQAEAAAAwTwECksMcAOEBGkABAAAAME8BBZIjJgDhARYEAQAAAC1PAQWSI0AA4QEWBAEAAAA2TwEHksNKAOEBFgQBAAAALU8BBZIjSADhAQwgAQAAADhPAQeS47IA4QEMIAEAAAA5TwEHkoMuAeEBHiABAAAAOk8BBpKDZADhASBAAQAAADpPAQKS43gA4QEMIAEAAAA8TwEHkiNGAOEBDCABAAAAPU8BB5LDQgDhAQwgAQAAAD5PAQeSY6YA4QEMIAEAAAA/TwEHkgNuAOEBDCABAAAAQE8BB5KjSwDhARpAAQAAAEFPAQeSQyUA4QEaQAEAAABBTwEFksNWAOEBFgQBAAAAR08BBZLDSgDhARYEAQAAAEdPAQWS4xUA4QEaQAEAAABBTwEFkoOzAOEBGkABAAAAQU8BBZJDpADhARYEAQAAAEdPAQeSgzMA4QEMIAEAAABITwEHkqOwAOEBDCABAAAASU8BB5KDTgDhAQwgAQAAAEpPAQeSI1cA4QEWBAEAAABLTwEHkqMkAOEBFgQBAAAATE8BB5LjDgLhAQwgAQAAAE1PAQeSQ7oA2QEeIAEAAABOTwEGkiNIAOEBDCABAAAAT08BB5KjJgDhASAAAQAAAE5PAQKS4xUA4QEeAAEAAABOTwECkoN0AOEBHiABAAAAUk8BBpIDQADhARpAAQAAAFJPAQWSQygA4QEMIAEAAABUTwEHkgNYAOEBGkABAAAAUk8BBZJjGwDhAQwgAQAAAFZPAQeS4xUA4QEaQAEAAABSTwEFkmMxAOEBFgQBAAAAWE8BB5JjGwDhARYEAQAAAFlPAQeSg0wA4QEMIAEAAABaTwEHkgMbAeEBDCABAAAATk8BBZJj3QHhARpAAQAAAFxPAQeSoyYA4QEaQAEAAABcTwEFkuMVAOEBGkABAAAAXE8BBZIDDwLhAQwgAQAAAF9PAQeSww4C4QEMIAEAAABgTwEHkgOzAOEBMAQBAAAAYU8BBpIjrwDhAS4gAQAAAGJPAQaS4xkA4QEaQAEAAABiTwEFkuMeAOEBDCABAAAAZE8BB5LjFQDhARpAAQAAAGJPAQWSw0oA4QEMIAEAAABmTwEHkmMbAOEBDCABAAAAZ08BB5JjOgDhAQwgAQAAAGhPAQeSAyEA4QEMIAEAAABoTwEFkuN4AOEBDCABAAAAak8BB5JDqwDhAQwgAQAAAGtPAQeS4xUA4QEMIAEAAABsTwEHkoNOAOEBDCABAAAAbU8BB5LDKADhARwMAQAAAG5PAQeSYxsA4QEMIAEAAABvTwEHkkM4AOEBDCABAAAAcE8BB5PjYgDnARgwAQAAAHFPAQWSo4oA4QEWBAEAAAByTwEHksMaAOEBHAwBAAAAc08BB5JjGwDhAQwgAQAAAHRPAQeSw1YA4QEWBAEAAACPTwEFksNKAOEBFgQBAAAAj08BBZJjGwDhAQwgAQAAAHdPAQeUIw8C3gEQEAEAAAB6TyEFk2N6APsBchABQAEAeU8RAJJjegDhAVIQAQCAAXpPARaSQ1EA4QEMIAEAAAB7TwEHkqOKAOEBFgQBAAAAfE8BB5LDGgDhARwMAQAAAH1PAQeSYxsA4QEMIAEAAAB+TwEHkiMgAOEBDCABAAAAf08BB5LjFQDhAS4EAQAAAHpPAQKSYzEA4QEcDAEAAACBTwEHkmMbAOEBDCABAAAAgk8BB5JjTgDhAQwgAQAAAINPAQeSYzQA4QEMIAEAAACETwEHkiNMAOEBDCABAAAAhU8BB5JjuwDhARYEAQAAAIZPAQeS43gA4QEMIAEAAACHTwEHkuOBAOEBDCABAAAAek8BBZJDBgLhAQwgAQAAAIlPAQeSQx0A4QEWBAEAAACKTwEHkgOUAOEBHgABAAAAi08BBpLjGQDhARYEAQAAAIxPAQeS4xUA4QEeAAEAAACLTwECkkNGAOEBGkABAAAAi08BBZLjVgDhARYEAQAAAI9PAQeSwxkA4QEMIAEAAACQTwEHkuPAAOEBDCABAAAAkU8BB5KjIwDhARYEAQAAAJJPAQeSI0UA4QEMIAEAAACTTwEHkqPWAOEBFgQBAAAAlE8BB5JD8AHZAR5AAQAAAJVPAQaSIx4A4QEeAAEAAACWTwEGkmMoAOEBGkABAAAAlk8BBZJDGgHhAQwgAQAAAJhPAQeSY1QA4QEMIAEAAACZTwEHkiOgAOEBHgABAAAAmk8BBpLjFQDhARpAAQAAAJpPAQWS4xUA4QEaQAEAAACWTwEFkoNrAOEBHiABAAAAnU8BBpLjOgDhAQwgAQAAAJ5PAQeSI6IA4QEMIAEAAACfTwEHkqOgAOEBFgQBAAAAoE8BB5LjrgDhAQwgAQAAAKFPAQeSg0wA4QEMIAEAAACiTwEHkkNCAOEBDCABAAAAo08BB5KjGADhARYEAQAAAKRPAQeSg9gA4QEWBAEAAAClTwEHkuMeAOEBDCABAAAApk8BB5JDJQDhARYEAQAAAKdPAQeSIyYA4QEMIAEAAACoTwEHksMCAOEBDCABAAAAqU8BB5LjeADhAQwgAQAAAKpPAQeSw1YA4QEWBAEAAADFTwEFksNKAOEBFgQBAAAAxU8BBZLjVgDhARwMAQAAAK1PAQeSYxsA4QEMIAEAAACuTwEHkuMVAOEBLkABAAAAnU8BApJDSgDhAQwgAQAAALBPAQeS40IA4QEMIAEAAACxTwEHkmMbAOEBFgQBAAAAsk8BB5JjGwDhAQwgAQAAALNPAQeSY3oA4QEMIAEAAAC0TwEHkoMuAeEBDCABAAAAtU8BB5JjSQDhAQwgAQAAALZPAQeSQ2MA4QEMIAEAAAC1TwEHkmN6AOEBDCABAAAAuE8BB5KDogDhAQwgAQAAALlPAQeSYyUA4QEMIAEAAACdTwEFkmOkAOEBDCABAAAAu08BB5KjSwDhAQwgAQAAALxPAQeSA08A4QEMIAEAAAC9TwEHkkM5AOEBDCABAAAAvk8BB5JDkAHhARpAAQAAAL9PAQeS4xUA4QEaQAEAAAC/TwEFkkMwAOEBFgQBAAAAwU8BB5KDTADhAQwgAQAAAMJPAQeSI9UA4QEiAAEAAADDTwEGkgMjAOEBMAABAAAAxE8BBpKDpgDhARYEAQAAAMVPAQeSYyQA4QEeIAEAAADGTwEGksOmAOEBDCABAAAAx08BB5LjQgDhAQwgAQAAAMhPAQeSg0wA4QEMIAEAAADJTwEHkuMVAOEBDCABAAAAyk8BB5JjGwDhAQwgAQAAAMtPAQeSA0YA4QEMIAEAAADMTwEHkiM3AOEBDCABAAAAxk8BBZLDWADhAQwgAQAAAM5PAQeSY5UA4QEWBAEAAADPTwEHkmMfAOEBDCABAAAA0E8BB5LjFQDhAR4gAQAAANFPAQaSoxcA4QEMIAEAAADSTwEHkqMmAOEBFgQBAAAA008BB5LDJgDhAQwgAQAAANRPAQeS4xUA4QEaQAEAAADRTwEFkmMbAOEBFgQBAAAA1k8BB5IjVwDhARYEAQAAANdPAQeSw0IA4QEMIAEAAADYTwEHkiOnAOEBDCABAAAA0U8BB5IjkwDhAQwgAQAAANpPAQeSI0AA4QEMIAEAAADbTwEHkuN5AOEBDCABAAAA3E8BB5LDVgDhARYEAQAAAAdQAQWSw0oA4QEWBAEAAAAHUAEFkuMVAOEBGkABAAAAlU8BBZLjtwDhAR4AAQAAAOBPAQaSg0wA4QEMIAEAAADhTwEHkuMVAOEBLkABAAAA4E8BApIDdgDhAR4AAQAAAONPAQaSg6cA4QEeAAEAAADgTwEEkmMbAOEBFgQBAAAA5U8BB5JjKgDhAQwgAQAAAOZPAQeSAyoA4QEMIAEAAADmTwEFkuMVAOEBLkABAAAAlU8BApLDSgDhARYEAQAAAOhPAQWSg0AB4QEeAAEAAADqTwEGkuMVAOEBDCABAAAA608BB5JDYwDhARpAAQAAAOpPAQWSI1sA4QEMIAEAAADtTwEHkoMqAOEBHkABAAAAlU8BBJJDJwDhARYEAQAAAO9PAQeSoyQA4QEcDAEAAADwTwEHkmMbAOEBDCABAAAA8U8BB5LjHgDhAR4gIQQAAPJPAQaSYzkA4QEMIAEAAADzTwEHksOmAOEBDCABAAAA9E8BB5KDsQDhARpAAQAAAPZPAQWSo1IA4QEaQAEAAAD2TwEFkmOkAOEBDCABAAAA908BB5LDVgDhARYEAQAAAAJQAQWSw0oA4QEWBAEAAAACUAEFkuMVAOEBGkABAAAA8k8BBZKjJwDhARpAAQAAAPtPAQeSQysA4QEaQAEAAAD7TwEFkoMwAOEBGkABAAAA/U8BB5LDMADhARpAAQAAAP1PAQWS4xUA4QEaQAEAAAD9TwEFkgMqAOEBDCABAAAA8k8BBZLDdQDhAQwgAQAAAAFQAQeSA0YA4QEWBAEAAAACUAEHksNWAOEBFgQBAAAABVABBZLDSgDhARYEAQAAAAVQAQWSAzgA4QEWBAEAAAAFUAEHkkPwAeEBFgQBAAAABlABBZJDwQDhARYEAQAAAAdQAQeSg6IA4QEeQAEAAAAIUAEGkmNWAOEBGkABAAAACFABBZKDJQDhAQwgAQAAAApQAQeSg38A4QEMIAEAAAALUAEHkuN/AOEBHgABAAAACFABBJLjFQDhARpAAQAAAAhQAQWSYzoA4QEeIAEAAAAOUAEGkmMfAOEBIEABAAAADlABApLDSQDhAQwgAQAAABBQAQeSYxsA4QEiAAEAAAARUAEGksNCAOEBDCABAAAAElABB5KDHwDhAQwgAQAAABNQAQeSAyEA4QEMIAEAAAAOUAEFksPwAeEBHiABAAAAFVABBpKDfwDhAQwgAQAAABZQAQeSw4wA4QEMIAEAAAAXUAEHkkM5AOEBDCABAAAAGFABB5LDVgDhARYEAQAAAB1QAQWSw0oA4QEWBAEAAAAdUAEFkmMbAOEBDCABAAAAG1ABB5LjFQDhAQwgAQAAABxQAQeSw1cA4QEWBAEAAAAdUAEHlEMPAk4CGTABAAAAIVAhBZNjDwJTAhkwAQAAACFQEQWSYw8CGQIZMAEAAAAhUAEFksM9AOEBGDABAAAAIVABB5KjygDhAQwgAQAAACJQAQeSoycA4QEWBAEAAAAjUAEHksM6AOEBDCABAAAAJFABB5KjFwDhAR4AAQAAACVQAQaS4xUA4QEaQAEAAAAlUAEFkqMkAOEBHAwBAAAAJ1ABB5JjGwDhAQwgAQAAAChQAQeSQ0oA4QEMIAEAAAApUAEHksMYAOEBDCABAAAAKlABB5IjKwDhARYEAQAAACNQAQWSoyMA4QEeQAEAAAAsUAEGkiMYAOEBDCABAAAALVABB5JjGQDhARpAAQAAACxQAQWSwyMA4QEeIAEAAAAsUAEEkqOKAOEBFgQBAAAAMFABB5LDGgDhARwMAQAAADFQAQeSYxsA4QEMIAEAAAAyUAEHkuMVAOEBHkABAAAALFABApJDCgHhAQwgAQAAADRQAQeSw1YA4QEWBAEAAAA4UAEFksNKAOEBFgQBAAAAOFABBZIjVwDhARYEAQAAADdQAQeSIwcB4QEWBAEAAAA4UAEHkgMiAOEBDCABAAAAOVABB5IDIgDhAQwgAQAAADpQAQeSo4oA4QEWBAEAAAA7UAEHksMaAOEBHAwBAAAAPFABB5JjGwDhAQwgAQAAAD1QAQeSQxsB2QEMIAEAAAA+UAEHkiOhAOEBHiABAAAAP1ABBpIDGADhAQwgAQAAAEBQAQeSA0YA4QEMIAEAAABBUAEHksMjAOEBDCABAAAAP1ABBZLjQgDhAQwgAQAAAENQAQeS4xUA4QEiIAEAAABEUAEGkiNXAOEBFgQBAAAARVABB5PjiwD7ASYIAUABAEdQEQWS44sA4QEmCAEAAABHUAEVksOAAOEBHAwBAAAASFABB5LjsADhARpAAQAAAElQAQeSI5oA4QEMIAEAAABKUAEHkqN1AOEBDCABAAAASlABBZLjeADhAQwgAQAAAExQAQeS4xUA4QEaQAEAAABJUAEFkmObAOEBIEABAAAASVABApJjGwDhAQwgAQAAAE9QAQeSQ/cA4QEaQAEAAABJUAEFkkNWAOEBGkABAAAASVABBZIDKQDhAQwgAQAAAFJQAQeSg0MA4QEaQAEAAABTUAEHkmMfAOEBFgQBAAAAVFABB5LjFQDhAS5AAQAAAFNQAQKSYzEA4QEcDAEAAABWUAEHkgMqAOEBHgABAAAAU1ABApKjSwDhARpAAQAAAFlQAQWSgzkA4QEaQAEAAABZUAEHkiMmAOEBDCABAAAAWlABB5LjFQDhAR5AAQAAAFlQAQKSg7MA4QEaQAEAAABZUAEFkwNFAOcBJggBQAEAXlARBZIDRQDhASQI4QQAAF5QARaTgyUA5wEmCAEAAABgUBEFkoMlAOEBJggBAAAAYFABFZIDbgDhARpAAQAAAGFQAQeSIyYA4QEMIAEAAABiUAEHkuMVAOEBGkABAAAAYVABBZJjJQDhARpAAQAAAGFQAQWSI0YA4QEaQAEAAABhUAEFkiNBAOEBDCABAAAAZlABB5JjGwDhARYEAQAAAGdQAQeSA10A4QEMIAEAAABoUAEHkmMbAOEBHiABAAAAaVABBpKDJwDhARpAAQAAAGlQAQWSIysA4QEMIAEAAABrUAEHkkMrAOEBDCABAAAAaVABBZLjFQDhARpAAQAAAGlQAQWSwzIA4QEMIAEAAAA+UAEHkkMdAOEBFgQBAAAAb1ABB5LjIQDhAQwgAQAAAHBQAQeSw1YA4QEWBAEAAAB4UAEFksNKAOEBFgQBAAAAeFABBZLjVgDhARwMAQAAAHNQAQeSYxsA4QEMIAEAAAB0UAEHkuMVAOEBFgQBAAAAdVABB5JjMQDhARwMAQAAAHZQAQeS4w8B4QEMIAEAAAB3UAEHkoOsAOEBFgQBAAAAeFABB5KDIQDhARpAAQAAAHlQAQeSI5IA4QEMIAEAAAB6UAEHkoMWAOEBDCABAAAASk8BBZJj7gHZAQwgAQAAAHxQAQeSAyMA4QEiAAEAAAB9UAEGksMoAOEBFgQBAAAAflABB5IDrQDhAQwgAQAAAH9QAQeSg7AA4QEWBAEAAACAUAEHkqMYAOEBFgQBAAAAgVABB5XjLQDhAQwgAQAAAIJQAQeWgw8C2QEMIAEAAACDUAEHlqMPAtkBDCABAAAAhFABB5fDDwLZAQwgAQAAAIVQAQeY4w8C0gEQEAEAAAB6TyEFmQMQAusBEBABAAAAek8RBZojEALVARAQAQAAAIhQAQWaIycA4QEMIAEAAACJUAEHmmNMAOEBDCABAAAAilABB5rDGQDhAR4AAQAAAItQAQaaQygA4QEMIAEAAACMUAEHmgNYAOEBGkABAAAAi1ABBZrjFQDhASAAAQAAAItQAQKagyIA4QEWBAEAAACPUAEHmsN2AOEBDCABAAAAkFABB5pDEALZAQwgAQAAAJFQAQeaIxgA4QEWBAEAAACSUAEHmqOKAOEBFgQBAAAAk1ABB5rDGgDhARwMAQAAAJRQAQeaYxsA4QEMIAEAAACVUAEHmkN7AOEBDCABAAAAkVABBZojUAHZAQwgAQAAAJdQAQeaYxAC2QEMIAEAAACYUAEHmkOMAOEBGkABAAAAoEoBBZpDWADhARpAAQAAAKBKAQWagzkA4QEMIAEAAACbUAEHmmMWAOEBHgABAAAAnFABBppjSQDhAQwgAQAAAJ1QAQeaoyMA4QEMIAEAAACeUAEHmsMjAOEBDCABAAAAnlABBZojJQDhAQwgAQAAAKBQAQeaoyMA4QEWBAEAAAChUAEHmmNpAOEBHAwBAAAAolABB5ojVwDhARYEAQAAAKNQAQeaw0IA4QEMIAEAAACkUAEHmsNIAOEBDCABAAAApVABB5pjNwDhAQwgAQAAAKZQAQeaY0kA4QEMIAEAAACnUAEHmmM3AOEBDCABAAAAqFABB5pjJADhAQwgAQAAAKlQAQeagxYA4QEMIAEAAACcUAEFmsNCAOEBDCABAAAAq1ABB5ojRgDhAQwgAQAAAKxQAQeaoycA4QEaQAEAAAC1UAFHmoMnAOEBGkABAAAAtlABRZojKwDhAQwgAQAAALdQAUeaAyoA4QEMIAEAAAC4UAFFmkMrAOEBGkABAAAAuVABRZqjIwDhARYEAQAAALJQAQeaYxsA4QEMIAEAAACzUAEHmuMVAOEBGkABAAAAulABRZqDMADhARpAAQAAALVQAQeaozAA4QEaQAEAAAC1UAEFmqNGAOEBDCABAAAAt1ABB5oDKgDhAQwgAQAAALdQAQWawzAA4QEaQAEAAAC1UAEFmuMVAOEBGkABAAAAtVABBZqDawDhAQwgAQAAALtQAQeaI1cA4QEiAAEAAAC8UAEGmmMbAOEBDCABAAAAvVABB5qDXADhARYEAQAAAL5QAQea4xsA4QEMIAEAAAC/UAEHmkM7AOEBDCABAAAAwFABB5pjFADhAQwgAQAAAKtQAQWagxAC2QEuQAEAAACVTwECmANVAOwBEBABAAAAqBMiDZkjVQDwARAQAQAAADAKEg2aI1UA9AEQEAEAAAC4AAINmiMmAOEBHiABAAAAxlABBprDpgDhAQwgAQAAAMdQAQeaYx8A4QEaQAEAAADGUAEFmoMfAOEBDCABAAAAyVABB5qjigDhARYEAQAAAMpQAQeawxoA4QEcDAEAAADLUAEHmmMbAOEBDCABAAAAzFABB5rjFQDhASBAAQAAAMZQAQKaYzEA4QEcDAEAAADOUAEHmgNuAOEBDCABAAAAz1ABB5rDGADhAQwgAQAAANBQAQeaAyoA4QEeQAEAAADGUAEEmuMVAOEBFgQBAAAA0lABB5pjHADhASwEAQAAANNQAQaaoyoA4QEcDAEAAADUUAEHmuPIAOEBDCABAAAA1VABB5rDVgDhARYEAQAAANhQAQWaw0oA4QEWBAEAAADYUAEFmmP1AOEBFgQBAAAA2FABB5gDIQHeARAQAQAAALATIg2ZYzsA+wEQEAEAAAA4ChINmmM7AOEBRgABAAAAwAACDprjGQDhARYEAQAAANxQAQeaA1wA4QEMIAEAAADdUAEHmGNVAPwBEBABAAAA+BgiDZmDVQAAAhAQAQAAAIAPEg2ag1UABAIQEAEAAAAIBgINmqMQAtkBGkABAAAA4VABB5ojRgDhAQwgAQAAAOJQAQeaYyQA4QEMIAEAAADjUAEHmoMfAOEBDCABAAAA5FABB5qDKQDhAQwgAQAAAOVQAQea4xUA4QEMIAEAAADmUAEHmqNvAOEBDCABAAAA51ABB5oDTwDhAQwgAQAAAOhQAQeaAxgA4QEMIAEAAADpUAEHmoN/AOEBDCABAAAA6lABB5ojAgHhAQwgAQAAAOtQAQea4x4A4QEMIAEAAADsUAEHmkMlAOEBFgQBAAAA7VABB5qjsADhARYEAQAAAO5QAQeag1wA4QEcDAEAAADvUAEHmmMbAOEBDCABAAAA8FABB5ojTADhAQwgAQAAAPFQAQeaI5IA4QEMIAEAAADyUAEHmkMqAOEBDCABAAAA81ABB5rjFQDhAQwgAQAAAPRQAQea43gA4QEMIAEAAAD1UAEHmsNWAOEBFgQBAAAAEFEBBZrDSgDhARYEAQAAABBRAQWaYxsA4QEMIAEAAAD4UAEHmgNuAOEBDCABAAAA+VABB5pDUQDhAQwgAQAAAPpQAQeawzEA4QEMIAEAAAD8UAEFmsMqAOEBDCABAAAA/FABB5rDQgDhAQwgAQAAAP1QAQeag0wA4QEMIAEAAAD+UAEHmkM4AOEBDCABAAAA/1ABB5qDwwDhAQwgAQAAAABRAQeaY6EA4QEMIAEAAADiUAEHmkNWAOEBDCABAAAAAlEBB5pjGQDhAQwgAQAAAANRAQeagxkA4QEMIAEAAAAEUQEHmsNWAOEBFgQBAAAACVEBBZrDSgDhARYEAQAAAAlRAQWaYxsA4QEMIAEAAAAHUQEHmsNCAOEBDCABAAAACFEBB5qj7AHhARYEAQAAAAlRAQeaY0wA4QEMIAEAAAAKUQEHmoNrAOEBDCABAAAAC1EBB5rDjADhAQwgAQAAAAxRAQeag0wA4QEMIAEAAAANUQEHmuMVAOEBDCABAAAADlEBB5pDOQDhAQwgAQAAAA9RAQeaQxQA4QEWBAEAAAAQUQEHmgOlAOEBGkABAAAA4VABBZoDxgDhAQwgAQAAABJRAQeaQ3sA4QEaQAEAAADhUAEFmgNdAOEBDCABAAAAFFEBB5ojhADhAQwgAQAAABVRAQea46QA4QE0HAEAAAAWUQEFmuMVAOEBHkABAAAA4VABApqjsgDhAQwgAQAAABhRAQeaQ7IA4QEiAAEAAAAZUQEGmsMcAOEBDCABAAAAGVEBBZqDQwDhARpAAQAAABtRAQeagx8A4QEMIAEAAAAcUQEHmuMVAOEBIgABAAAAHVEBBpojIADhAQwgAQAAACRRAQWaQ7IA4QEiAAEAAAAZUQFGmsMcAOEBDCABAAAAGlEBRZrDVgDhARYEAQAAACRRAQWaIyAA4QEMIAEAAAAeUQFFmsNKAOEBFgQBAAAAJFEBBZrDGgDhARYEAQAAACZRAUea4x4A4QEMIAEAAAAlUQEHmkNuAOEBFgQBAAAAJlEBB5rDEALhATQcAQAAACdRAQWaw0wA4QE0HAEAAAAoUQEFmsPLAOEBGkABAAAAKVEBB5rDIwDhARpAAQAAAClRAQWa4xUA4QEaQAEAAAApUQEFmuMQAuEBNBwBAAAALFEBBZrDVgDhARYEAQAAAC9RAQWaw0oA4QEWBAEAAAAvUQEFmmPKAOEBFgQBAAAAL1EBB5qj7gHZAQwgAQAAADBRAQeaYzoA4QEMIAEAAAAxUQEHmuMxAOEBHiABAAAAMlEBBpqjewDhAQwgAQAAADNRAQeaQyUA4QEaQAEAAAAyUQEFmiMmAOEBDCABAAAANVEBB5rDVgDhARYEAQAAAENRAQWaw0oA4QEWBAEAAABDUQEFmuNWAOEBHAwBAAAAOFEBB5pjGwDhAQwgAQAAADlRAQea4xUA4QEMIAEAAAA6UQEHmmMbAOEBFgQBAAAAO1EBB5qjKgDhARwMAQAAADxRAQeawyYA4QEMIAEAAAA9UQEHmsNgAOEBDCABAAAAPlEBB5rjYQDhAQwgAQAAAD9RAQeaAzIA4QEMIAEAAAAyUQEHmuOLAOEBDCABAAAAQVEBB5pDHQDhARYEAQAAAEJRAQeaA6sA4QEWBAEAAABDUQEHmoNEAOEBGkABAAAATkwBBZrDjADhAR4gAQAAAEVRAQaawxkA4QEWBAEAAABGUQEHmqO1AOEBFgQBAAAAR1EBB5oDJQDhAQwgAQAAAEhRAQea4yEA4QEMIAEAAABJUQEHmiOiAOEBDCABAAAASlEBB5qjqgDhAQwgAQAAAEtRAQeaI6AA4QEMIAEAAABMUQEHmgMjAOEBDCABAAAATVEBB5qjewDhAQwgAQAAAE5RAQeaQ6YA4QEMIAEAAABPUQEHmqO1AOEBDCABAAAAUFEBB5oDhgDhARpAAQAAAEVRAQWag0wA4QEMIAEAAABSUQEHmgMqAOEBDCABAAAAUlEBBZpjTgDhAQwgAQAAAFRRAQeaY04A4QEMIAEAAABVUQEHmoNWAOEBDCABAAAAVlEBB5pjMwDhAQwgAQAAAFdRAQeawyoA4QEMIAEAAABYUQEHmuMVAOEBLkABAAAARVEBAprDQgDhAQwgAQAAAFpRAQeaI6cA4QEMIAEAAABZUQEHmiMnAOEBDCABAAAAXFEBB5rDQgDhAQwgAQAAAF1RAQeaI1cA4QEWBAEAAABeUQEHmiMtAOEBDCABAAAAX1EBB5qDFwDhAQwgAQAAAGBRAQeagyUA4QEMIAEAAABhUQEHmuNOAOEBDCABAAAAYlEBB5rDMwDhAQwgAQAAAGNRAQeaYygA4QEMIAEAAABjUQEFmiMiAOEBDCABAAAAZVEBB5pjqQDhAR5AAQAAAEVRAQaaI7IA4QEMIAEAAABnUQEHmqOFAOEBDCABAAAAaFEBB5oDeADhAQwgAQAAAGhRAQWawzMA4QEMIAEAAABqUQEHmgMZAOEBDCABAAAAa1EBB5rDGQDhAQwgAQAAAGxRAQeagz0A4QEMIAEAAABtUQEHmuPvAOEBDCABAAAAblEBB5pDTwDhASIgAQAAAG9RAQaaw1YA4QEWBAEAAAB0UQEFmsNKAOEBFgQBAAAAdFEBBZpjGwDhAQwgAQAAAHJRAQea4xUA4QEMIAEAAABzUQEHmsMoAOEBFgQBAAAAdFEBB5qDswDhAQwgAQAAAG9RAQWawx8A4QEWBAEAAAB2UQEHmkM5AOEBHiABAAAAd1EBBppjJgDhAQwgAQAAAHhRAQeaI24A4QEMIAEAAAB5UQEHmsNWAOEBFgQBAAAAgFEBBZrDSgDhARYEAQAAAIBRAQWaI1cA4QEWBAEAAAB8UQEHmgNaAOEBDCABAAAAd1EBBZqjUgDhAQwgAQAAAH5RAQeaI0YA4QEMIAEAAAB/UQEHmgOLAOEBFgQBAAAAgFEBB5rDOQDhASAEAQAAAE5MAQKagzEA4QEgQAEAAACCUQECmsMoAOEBHAwBAAAAg1EBB5rDVgDhAQwgAQAAAIRRAQeaIyAA4QEeIAEAAACIUQEEmsMYAOEBDCABAAAAhlEBB5pDJwDhARYEAQAAAIdRAQeaw6YA4QEeQAEAAACIUQEGmuMVAOEBLkABAAAAiFEBAppjMQDhARwMAQAAAIpRAQeaQ38A4QEMIAEAAACLUQEHmmMzAOEBMAQBAAAA1hkAApoDiQDhARpAAQAAAI1RAQeaoxgA4QEgQAEAAACNUQECmuMVAOEBLkABAAAAjVEBAprDHADhARpAAQAAAJBRAQWaIy0A4QEeIAEAAACRUQEGmmNWAOEBGkABAAAAklEBBZqDfwDhAQwgAQAAAJNRAQeao4oA4QEWBAEAAACUUQEHmuMVAOEBGkABAAAAkVEBBZpjVgDhASAAAQAAAJJRAUKag38A4QEMIAEAAACTUQFHmgMqAOEBDCABAAAAl1EBBZrjFQDhARpAAQAAAJVRAUWa42sA4QEaQAEAAACRUQEFmoMzAOEBSAQBAAAA1hkAAprjGQDhAQwgAQAAAJxRAQeagyQA4QEMIAEAAACdUQEHmiNOAOEBqAQBAAAAnlEBBpqjigDhARYEAQAAAJ9RAQeaw1YA4QEWBAEAAACpUQEFmsNKAOEBFgQBAAAAqVEBBZrjVgDhARwMAQAAAKJRAQeaYxsA4QEMIAEAAACjUQEHmmMbAOEBFgQBAAAApFEBB5qjKgDhARwMAQAAAKVRAQeaYxsA4QEMIAEAAACmUQEHmkM4AOEBFgQBAAAAp1EBB5pjGwDhAQwgAQAAAKhRAQeaI0EA4QEiBAEAAACpUQEGmEMGAd4BEBABAAAArFEhBZmjlgDnARAQAUABAKxREQWao5YA4QEQEAEAgAGsUQEVmIMEAHwCEBABAAAAyBQiDZmjBACAAhAQAQAAAFALEg2aowQAhAIQEAEAAADYAQINmANVADQCEBABAAAAuBMiDZkjVQCIAhAQAQAAAEAKEg2aI1UAPAIQEAEAAADIAAINmGMGAd4BEBABAAAAwBMiDZmDBgHnARAQAQAAAEgKEg2agwYB4QEQEAEAAADQAAINmGNVAEACEBABAAAAABkiDZmDVQCYAhAQAQAAAIgPEg2ag1UASAIQEAEAAAAQBgINmOMGAd4BEBABAAAA0BQiDZkDBwHnARAQAQAAAFgLEg2aAwcB4QEQEAEAAADgAQINmKMGAagCEBABAAAAkBkiDZnDBgGsAhAQAQAAABgQEg2awwYBsAIQEAEAAACgBgINmiMlAOEBLkABAAAAnU8BAppDJQDhAS5AAQAAAL9RAQKa4xUA4QEuAAEAAAC/UQECmmMlAOEBDCABAAAAv1EBBZoD5wDhASBAAQAAAHJMAQKaw80B2QGqHAEAAADEUQEGmuMVAOEBGkABAAAAxFEBBZrDzQHhATQcAQAAAMZRAQWaQ2MA4QEaQAEAAADEUQEFmgMRAuEBNBwBAAAAyFEBBZojEQLZARpAAQAAAF5LAUWbQxEC2QEMIAEAAADKUQEHnKMXAOEBHgABAAAAy1EBBpwDhgDhARpAAQAAAMtRAQWc4xUA4QEaQAEAAADLUQEFnOOLAOEBDCABAAAAzlEBB5wjVwDhARYEAQAAAM9RAQecg3QA4QEeAAEAAADQUQEGnEMoAOEBDCABAAAA0VEBB5wDWADhAR4AAQAAANBRAQSc4xUA4QEeQAEAAADQUQECnAPKAOEBHiABAAAA1FEBBpwjJQDhAQwgAQAAANVRAQecY1YA4QEgQAEAAADUUQECnIN/AOEBDCABAAAA11EBB5zjFQDhAR5AAQAAANRRAQKc4+MA4QEaQAEAAADUUQEFnEOiAOEBDCABAAAA2lEBB5yjTgDhAQwgAQAAANtRAQeco4oA4QEWBAEAAADcUQEHnMMaAOEBHAwBAAAA3VEBB5xDmwDhARpAAQAAAN5RAQec464A4QEaQAEAAADfUQEHnAOGAOEBGkABAAAA31EBBZzjFQDhARpAAQAAAN9RAQWcg88A4QEaQAEAAADfUQEFnKNOAOEBDCABAAAA41EBB5wDKQDhARpAAQAAAORRAQecQ04A4QEeIAEAAADlUQEGnOM6AOEBDCABAAAA5lEBB5wDhgDhASBAAQAAAOVRAQKcg0wA4QEMIAEAAADoUQEHnKMjAOEBDCABAAAA6VEBB5zDIwDhAQwgAQAAAOlRAQWc4xUA4QEeQAEAAADlUQECnCNlAOEBDCABAAAA5VEBBZwjoADhAR4gAQAAAO1RAQacYxkA4QEaQAEAAADtUQEFnMMjAOEBHgABAAAA7VEBBJzjFQDhASAEAQAAAO1RAQKcw0oA4QEaQAEAAADxUQEHnOMZAOEBGkABAAAA8VEBBZzjHgDhAQwgAQAAAPNRAQec4xUA4QEaQAEAAADxUQEFnCOsAOEBHkABAAAA9VEBBpxDKADhAQwgAQAAAPZRAQecAyoA4QEMIAEAAAD2UQEFnANYAOEBGkABAAAA9VEBBZzjFQDhAR5AAQAAAPVRAQKcoz0A4QEaQAEAAADxUQEFnCOhAOEBDCABAAAA+1EBB5xjGQDhARYEAQAAAPxRAQecwygA4QEcDAEAAAD9UQEHnGMbAOEBDCABAAAA/lEBB5xDVwDhAR4AAQAAAP9RAQacgzEA4QEaQAEAAAA7UgEFnMNWAOEBFgQBAAAAO1IBBZzDSgDhARYEAQAAADtSAQWcg3QA4QEeAAEAAAADUgEGnEMoAOEBDCABAAAABFIBB5wDWADhAR4AAQAAAANSAQSc4xUA4QEgQAEAAAADUgECnGMxAOEBFgQBAAAAB1IBB5wDSwDhAQwgAQAAAAhSAQec4xUA4QEeQAEAAAAJUgEGnMMmAOEBDCABAAAAClIBB5zjFQDhARpAAQAAAAlSAQWcI6cA4QEaQAEAAAAJUgEFnAN2AOEBHiABAAAADVIBBpwDQADhARYEAQAAAA5SAQecYxsA4QEWBAEAAAAPUgEHnANdAOEBFgQBAAAAEFIBB5wDWADhAQwgAQAAAA1SAQWc4xUA4QEaQAEAAAANUgEFnAO+AOEBFgQBAAAAE1IBB5xjIADhAQwgAQAAABRSAQecA24A4QEMIAEAAAAVUgEHnENRAOEBDCABAAAAFlIBB5yjPQDhAQwgAQAAABRSAQWcI6EA4QEMIAEAAAAYUgEHnMO2AOEBDCABAAAAGVIBB5xjNwDhARpAAQAAABpSAQec4x4A4QEMIAEAAAAbUgEHnAMqAOEBDCABAAAAG1IBBZwDGgDhARpAAQAAABpSAQWcAykA4QEaQAEAAAAeUgEHnGMZAOEBFgQBAAAAH1IBB5yDNQDhARYEAQAAACBSAQecwyMA4QEaQAEAAAAeUgEFnOMVAOEBIEABAAAAHlIBApzjFQDhAR5AAQAAABpSAQKcI6cA4QEMIAEAAAAjUgEHnINYAOEBIEABAAAAGlIBApwjUADhAUgEAQAAACZSAQacA8YA4QEMIAEAAAAnUgEHnAMqAOEBDCABAAAAJ1IBBZzjFQDhAQwgAQAAAClSAQecI6cA4QEMIAEAAAAqUgEFnKMmAOEBGkABAAAAJlIBBZyjigDhARYEAQAAACxSAQecwxoA4QEcDAEAAAAtUgEHnGMbAOEBDCABAAAALlIBB5xDJQDhARYEAQAAAC9SAQecwygA4QEcDAEAAAAwUgEHnOMVAOEBGkABAAAAJlIBBZxjMQDhARwMAQAAADJSAQecYxsA4QEMIAEAAAAzUgEHnCOnAOEBDCABAAAAJlIBBZ0jLwDnARpAAUABABpSEQWcIy8A4QEaQAEAAAAaUgEFnGOgAOEBFgQBAAAAN1IBB5yjigDhARYEAQAAADhSAQecA0sA4QEgQAEAAABFUQECnAOEAOEBGkABAAAACVIBBZzDmwDZASAAAQAAADtSAQacI2IA4QEWBAEAAAA7UgEFnMNKAOEBFgQBAAAAO1IBBZyjPgDhARwMAQAAAD5SAQecg2MA4QEMIAEAAAA/UgEHnENOAOEBDCABAAAAQFIBB55jEQLZAQwgAQAAAEFSAQefgxEC2QEMIAEAAABCUgEHn6MRAtkBNBwBAAAAQ1IBBZ/DEQLhATQcAQAAAERSAQWf4xEC4QE0HAEAAABFUgEFnwMSAtkBDCABAAAARlIBB58jEgLZAQwgAQAAAH5NAUego9cA4QEMIAEAAABIUgEHoGM3AOEBDCABAAAASVIBB6ADIADhAQwgAQAAAEpSAQegg2sA4QEMIAEAAABLUgEFoCMmAOEBDCABAAAAS1IBBaBjNwDhAQwgAQAAAE1SAQegw8MA4QEMIAEAAABOUgEHoQMRAtkBDCABAAAAT1IBB6JjrQDhAQwgAQAAAFBSAQeiw38B4QEMIAEAAABRUgEHokMSAtkBDCABAAAAUlIBB6LjiwDhAQwgAQAAAFNSAQejYxICCgIZMAEAAABXUiEFpIMSAg8CGTABAAAAV1IRBaKDEgIRAhkwAQAAAFdSAQWi4xUA4QEYMAEAAABXUgEHoqMSAuEBFgQBAAAAWFIBB6LDPQDhAQwgAQAAAFlSAQeiI5IA4QEMIAEAAABaUgEHpSNjALcBDCABAAAAXFIRBaYjYwC5AQwgAQAAAFxSAQWnwykB4QEMIAEAAABdUgEHp4MXAOEBDCABAAAAXlIBB6fjOQDhAQwgAQAAAF9SAQenox4A4QEMIAEAAABgUgEHp2MkAOEBDCABAAAAYVIBB6dDLgDhAQwgAQAAAGJSAQenIxwA4QEMIAEAAABjUgEHpwMMAeEBDCABAAAAZFIBB6eDcwDhAQwgAQAAAGVSAQenY4gA4QEMIAEAAABmUgEHp4MZAOEBDCABAAAAZ1IBB6cjHADhAQwgAQAAAGhSAQenYxwA4QEWBAEAAABpUgEHqMNjAOEBFgQBAAAAalIBB6gjHADhAQwgAQAAAGtSAQeoAxgA4QEMIAEAAABsUgEHqOOLAOEBDCABAAAAbVIBB6jjPADhAQwgAQAAAG5SAQeo4y4A4QEMIAEAAABvUgEHqIM0AOEBFgQBAAAAcFIBB6jDdQDhAQwgAQAAAHFSAQeoYx4A4QEMIAEAAAByUgEHqAMZAOEBDCABAAAAc1IBB6gD5QDhAQwgAQAAAHRSAQeoIzQA4QEWBAEAAAB1UgEHqGPYAOEBDCABAAAAdlIBB6ijHgDhAQwgAQAAAHdSAQeowzwA4QEWBAEAAAB4UgEHqIMgAOEBDCABAAAAeVIBB6hDLgDhAQwgAQAAAHpSAQeoQzgA4QEMIAEAAAB7UgEHqKMeAOEBDCABAAAAfFIBB6jjdQDhAQwgAQAAAH1SAQeoAy4A4QEMIAEAAAB+UgEHqCMaAOEBFgQBAAAAf1IBB6iDIADhAQwgAQAAAIBSAQeoox4A4QEMIAEAAACBUgEHqAMaAOEBDCABAAAAglIBB6iDcQDhARpAAQAAAINSAQepw3EA4QEMIAEAAACFUgEFqQNoAOEBDCABAAAAhVIBBanDcwDhAQwgAQAAAIZSAQeq46IA4QEMIAEAAACHUgEHq8MSAtUBNBwBAAAAiFIBBavjEgLhATQcAQAAAIlSAQWr4xIC4QE0HAEAAACKUgEFq+MSAuEBNBwBAAAAi1IBBazD9wDhAQwgAQAAAIxSAQesYzYA4QEMIAEAAACNUgEHrGMkAOEBDCABAAAAjlIBB6zjMwDhAQwgAQAAAI9SAQesIxgA4QEMIAEAAACQUgEHrGMgAOEBDCABAAAAkVIBB6zDNADhAQwgAQAAAJJSAQes4zkA4QEMIAEAAACTUgEHrAMTAtkBDCABAAAAlFIBB60jEwKmARQgAQAAAG9TEQWuQxMCqQEULAEAAABvUwEFr6MCAHgEFCwBAAAAmVIhBa/DAgB8BBQsAQAAAJlSEQWwwwIAgAQULAEAAACZUgEFr4MEAIQEFCwBAAAAnFIhBa+jBACIBBQsAQAAAJxSEQWwowQAjAQULAEAAACcUgEFsWMTAtUBFCwBAAAAK1MBRbGjjQDhAQwgAQAAAJ5SAQexA8sA4QEeIAEAAACfUgEGseMVAOEBDCABAAAAoFIBB7HDXwDhAQwgAQAAAJ9SAQWxw0IA4QEMIAEAAACiUgEHscNCAOEBDCABAAAAo1IBB7GjFwDhAR4AAQAAAKRSAQax4xUA4QEaQAEAAACkUgEFsYMTAuEBDCABAAAAplIBB7HDfQDhAQwgAQAAAKdSAQexY2AA2QE0HAEAAAArUwFFseOkAOEBDCABAAAAqVIBB7GjEwLhAQwgAQAAAKpSAQexwxMC4QEMIAEAAACrUgEHsQOOAeEBDCABAAAArFIBB7GDgQHZAR4AAQAAAK1SAQaxA4YA4QEaQAEAAACtUgEFseMVAOEBGkABAAAArVIBBbFjoAHhAQwgAQAAALBSAQeyowIA3gEULAEAAACzUiEFs8MCAPsBFCwBAAAAs1IRBbHDAgDhARQsAQAAALNSAQWy4wYB3gEULAEAAAC2UiEFswMHAecBFCwBAAAAtlIRBbEDBwHhARQsAQAAALZSAQWxg9IB4QEMIAEAAAC3UgEHsaP8ANkBDCABAAAAuFIBB7HjEwLhAQwgAQAAALlSAQexQ0oA4QEaQAEAAAC6UgEHseMVAOEBGkABAAAAulIBBbEDKgDhARpAAQAAALpSAQWxw3MA4QEMIAEAAAC9UgEHsSPBAOEBDCABAAAAvlIBB7GjfQDhAR5AAQAAAL9SAQaxA4YA4QEaQAEAAAC/UgEFseM4AOEBFgQBAAAAwVIBB7GDTADhAQwgAQAAAMJSAQex4xUA4QEaQAEAAAC/UgEFsYOnAOEBHgABAAAAv1IBBLHjPgDhAQwgAQAAAMVSAQexAxQC2QEeAAEAAADGUgEGsWNWAOEBGkABAAAAxlIBBbHjFQDhARpAAQAAAMZSAQWxAyMA4QEMIAEAAADJUgEHseM6AOEBDCABAAAAylIBB7HjWQDhAQwgAQAAAMtSAQexo3kA4QEMIAEAAADMUgEHsSMmAOEBDCABAAAAzVIBB7HjQgDhAQwgAQAAAM5SAQexw6EA4QEMIAEAAADPUgEHscNCAOEBDCABAAAA0FIBB7HjHgDhAQwgAQAAANFSAQexAzIA4QEMIAEAAADJUgEFsUNXAOEBDCABAAAA01IBB7EjTADhARYEAQAAANRSAQWxgx8A4QEWBAEAAADUUgEFscNKAOEBFgQBAAAA1FIBBbEjFALhAQwgAQAAANdSAQex438B4QEMIAEAAADYUgEHsSMUAuEBDCABAAAA2VIBB7GDqQDhAR4gAQAAANpSAQaxw4sA4QEMIAEAAADbUgEHsSOVAeEBDCABAAAA3FIBB7EjlwHhAQwgAQAAAN1SAQexI0sA4QEMIAEAAADeUgEHsUMUAuEBDCABAAAA31IBB7Gj3QHhARpAAQAAAOBSAQexY0YA4QEMIAEAAADhUgEHsWMUAtkBHgABAAAA4lIBBrFDmwDhAR4AAQAAAONSAQaxY5sA4QEeAAEAAADkUgEGsWMqAOEBDCABAAAA5VIBB7HjFQDhAS4AAQAAAORSAQKxY88A4QEeAAEAAADkUgEEsQNKAeEBGkABAAAA6FIBB7FD9wDhARpAAQAAAOJSAQexgxQC2QEMIAEAAADqUgEHtCNqAOEBDCABAAAA61IBB7VjVgDhARpAAQAAALw4AAW2oxQCcgINIAEAAADvUiEFt8MUAncCDSABAAAA71IRBbjjFAJ5Ag0gAQAAAO9SAQW5AxUC1QE0HAEAAAArUwFFuSMVAtkBMgABAAAAK1MBRrojuwH7ATQcAQAAAPNSEQW5I7sB4QE0HAEAAAArUwFHuYM9AOEBDCChBAAA9FIBB7mjewDhAQwgAQAAAPVSAQe54xUA4QEMBAEAAAD2UgEHuSNQAOEBFgQBAAAA91IBB7kjegDhATAEAQAAAPhSAQa5g6kA4QEaQAEAAAD5UgEHuWMqAOEBDCABAAAA+lIBB7njFQDhAQwgAQAAAPtSAQe5YzEA4QEcDAEAAAD8UgEHuWNCAOEBGkABAAAA+VIBBbkDZwDhAQwggQQAAPRSAQe5YyYA4QEMIAEAAAD/UgEHucNWAOEBFgQBAAAAA1MBBbnDSgDhARYEAQAAAANTAQW5I1cA4QEWBAEAAAACUwEHuUMcAOEBFgQBAAAAA1MBB7lDHQDhARYEAQAAAARTAQe5gykB4QEMIAEAAAAFUwEHueNaAOEBDCABAAAABlMBB7mjKADhATQcAQAAAAdTAQW5A34B4QEMIAEAAAAIUwEHueNpAOEBHgABAAAACVMBBrkDQADhASBAAQAAAAlTAQK5QygA4QEMIAEAAAALUwEHueMVAOEBHkABAAAACVMBArljTgDhAS4EAQAAAA1TAQa5o3kA4QEMIAEAAAAOUwEHueNVAOEBDCABAAAAD1MBB7mDZADhARYEAQAAABBTAQe5Y8MA4QEMIAEAAAARUwEHuUNKAOEBDCABAAAAElMBB7njFQDhARpAAQAAAA1TAQW5oyMA4QEWBAEAAAAUUwEHuSOzAOEBDCABAAAAFVMBB7ljGwDhAQwgAQAAABZTAQe5Y1EA4QEMIAEAAAAXUwEHuaNMAOEBDCABAAAAGFMBB7kjRgDhAQwgAQAAABlTAQe544EA4QEaQAEAAAAJUwEFucNeAeEBHgABAAAAG1MBBrljVgDhARpAAQAAABtTAQW54xUA4QEeAAEAAAAbUwECuQNWAeEBHgABAAAAG1MBBLpjFADnARgwAQAAAB9TEQW5YxQA4QEYMAEAAAAfUwEHuSOQAeEBFgQBAAAAIVMBB7kDIgHZAR4gAQAAACJTAQa54/QA4QEMIAEAAAAjUwEHuaMYAOEBGkABAAAAIlMBBbnjFQDhARpAAQAAACJTAQW5A3kA4QEMIAEAAAAmUwEHucNCAOEBDCABAAAAJ1MBB7kjHwDhAQwgAQAAAChTAQe5QxUC2QE0HAEAAAArUwFFumMVAhcCNBwBQAEAK1MRBbkjJwHZAWocAQAAACtTAQa5gwEB4QEMIAEAAAAsUwEHueN6AeEBDCABAAAALVMBB7mDFQLhAQwgAQAAACxTAQW5Y6AA4QEMIAEAAAAsUwEFuWMbAOEBNBwBAAAAMFMBBblDAwLhATQcAQAAADFTAQW5o7UA4QEyIOEDAAAyUwEGuYM9AOEBDCABAAAAM1MBB7qjFQIXAgoMAUABADVTEQW5o8IB2QFQDAEAAAA1UwEWuWPHAOEBDCABAAAANlMBB7nDFQLZAQwgAQAAADdTAQe5ozYB4QEMIAEAAAA4UwEHu2OqAOEBDCABAAAAOVMBB7xjewHhAQwgAQAAADpTAQe84xUC4QEMIAEAAAA7UwEHvQMWAtkBDCABAAAAPFMBB70jagDhAQwgAQAAAD1TAQe9IxYC2QEMIAEAAAA+UwEHvaNLAOEBHkABAAAAP1MBBr1DJQDhARpAAQAAAD9TAQW9IyYA4QEMIAEAAABBUwEHveMVAOEBLkABAAAAP1MBAr1jMQDhARwMAQAAAENTAQe9g7MA4QEeIAEAAAA/UwEEvQOdANkBDCABAAAARVMBB71DFgLZAR4AAQAAAEZTAQa9g1MB4QEMIAEAAABHUwEHvsP3AOEBDCABAAAASFMBB79jFgLZAQwgAQAAAElTAQe/gxYC4QEMIAEAAABKUwEHvyNqAOEBDCABAAAAS1MBB78DLgDhAQwgAQAAAExTAQe/Q0QA4QEMIAEAAABNUwEHv2OQAOEBHgABAAAATlMBBr8DQADhARpAAQAAAE5TAQW/4xUA4QEeAAEAAABOUwECvwNAAOEBGkABAAAAT1MBRb9DKADhAQwgAQAAAFJTAQe/4xUA4QEaQAEAAABQUwFFv0N0AOEBGkABAAAATlMBBb+jFgLhAQwgAQAAAFVTAQe/owAB4QEMIAEAAABWUwEHvyPEAOEBDCABAAAAX1MBR7/DJADhAQwgAQAAAGBTAUW/I8QA4QEMIAEAAABfUwFHv8MkAOEBDCABAAAAYFMBRb8jyQHhAQwgAQAAAFtTAQe/40QA4QEWBAEAAABcUwEHv4NeAOEBDCABAAAAW1MBBb8jGgDhARYEAQAAAF5TAQe/I8QA4QEMIAEAAABfUwEHv8MkAOEBDCABAAAAX1MBBb9DjADhAR4AAQAAAGFTAQa/o90A4QEMIAEAAABiUwEHv6MjAOEBFgQBAAAAY1MBB7/jFQDhARpAAQAAAGFTAQW/QwcB4QEMIAEAAABlUwEHvyN8ANkBLAwBAAAAZlMBBr8jJgDhASwAAQAAAGdTAQa/g0QA4QEMIAEAAABoUwEHwMOMAPsBGDABAAAAaVMRBb/DjADhARgwAQAAAGlTAQe/I2oA4QEMIAEAAABrUwEHvwMuAOEBDCABAAAAbFMBB8HDFgIyAhQsAQBgAm9TIQXA4xYCFwIULAFAYQJvUxEFv8OtANkBFCwBAGACb1MBFcEDFwLsARQsAQAAAIgVIg3AIxcC8AEULAEAAAAQDBINvyMXAvQBFCwBAAAAmAICDcGDBABgBBQsAQAAAAwYIw3AowQAZAQULAEAAACUDhMNv6MEAGgEFCwBAAAAHAUDDcGDBACQBBQsAQAAABgYJA3AowQAlAQULAEAAACgDhQNv6MEAJgEFCwBAAAAKAUEDcFjAwAQAxQsAQAAAJAVIg3AgwMAFAMULAEAAAAYDBINv4MDABgDFCwBAAAAoAICDcGDBACcBBQsAQAAACgYIw3AowQAoAQULAEAAACwDhMNv6MEAKQEFCwBAAAAOAUDDcHjAwAQAxQsAQAAAIAWIg3AIwQAFAMULAEAAAAIDRINvyMEABgDFCwBAAAAkAMCDcGDBAAQAxQsAQAAAGgXIg3AowQAFAMULAEAAADwDRINv6MEABgDFCwBAAAAeAQCDcFDFwLeARQsAQAAAIdTIQXAI2YA+wEULAEAAACHUxEFvyNmAOEBFCwBAAAAh1MBBcFjFwLeARQsAQAAAJgVIg3AA7UA5wEULAEAAAAgDBINvwO1AOEBFCwBAAAAqAICDb8DhADhARYEAQAAAItTAQe/wyYA4QEWBAEAAACLUwEHv8NKAOEBFgQBAAAAi1MBBb+jIwDhARYEAQAAAI5TAQe/YxsA4QEMIAEAAACPUwEHv+MeAOEBDCABAAAAkFMBB78DKgDhAQwgAQAAAJBTAQW/g0wA4QEMIAEAAACSUwEHwKNtAPsBFCwBQAEDlFMRBb+jbQDhARQsAQAAA5RTARXBgxcC3gEULAEAAACIFiINwOMgAOcBFCwBAAAAEA0SDb/jIADhARQsAQAAAJgDAg2/g2kA4QEULAEAoAOYUwEVv+PJAOEBrCwBAAAAmVMBFL+DFgDhAawAAQAAAJlTARS/g2MA4QEMIAEAAACbUwEHv6OKAOEBFgQBAAAAnFMBB7/DGgDhARwMAQAAAJ1TAQe/YxsA4QEMIAEAAACeUwEHv4OrAOEBDCABAAAAm1MBBcGjFwLeARQsAQAAAHAXIg3AA5sB5wEULAEAAAD4DRINvwObAeEBFCwBAAAAgAQCDcHDFwL8ARQsAQAAAAgaIg3A4xcCAAIULAEAAACQEBINv+MXAgQCFCwBAAAAGAcCDcGjBgGoBBQsAQAAAOAbJA3AwwYBrAQULAEAAABoEhQNv8MGAbAEFCwBAAAA8AgEDcGjBgFsBBQsAQAAANQbIw3AwwYBcAQULAEAAABcEhMNv8MGAXQEFCwBAAAA5AgDDcEDYgEcAxQsAQAAABAaIg3AI2IBIAMULAEAAACYEBINvyNiASQDFCwBAAAAIAcCDcGjBgG0BBQsAQAAAPAbIw3AwwYBuAQULAEAAAB4EhMNv8MGAbwEFCwBAAAAAAkDDcEDYAEcAxQsAQAAAMgaIg3AI2ABIAMULAEAAABQERINvyNgASQDFCwBAAAA2AcCDcGjBgEcAxQsAQAAAGAbIg3AwwYBIAMULAEAAADoERINv8MGASQDFCwBAAAAcAgCDb9DqwDhAR4AAQAAALhTAQa/4xUA4QEaQAEAAAC4UwEFv0PNAOEBHgABAAAAuFMBBMIDIQDhAQwgAQAAALtTAQfDAxgC1QEMIAEAAAC8UwEFxGM3AOEBDCABAAAAvVMBB8SjPADhAQwgAQAAAL5TAQfEozwA4QEMIAEAAAC/UwEHxQMWAeEBDCABAAAAwFMBB8WjjQDhAQwgAQAAAMFTAQfFA8IA4QEWBAEAAADCUwEHxQN+AeEBFgQBAAAAw1MBB8UDQwDhAQwgAQAAAMRTAQfFQx0A4QEiAAEAAADFUwEGxWNvAOEBDCABAAAAxlMBB8XDHwDhAQwgAQAAAMdTAQfFIxgC2QEWBAEAAADIUwEFxcNCAOEBFgQBAAAAyVMBB8XDVgDhARYEAQAAAMxTAQXFw0oA4QEWBAEAAADMUwEFxSPSAOEBFgQBAAAAzFMBB8WjBwHhAQwgAQAAAM1TAQfFI8QA4QEMIAEAAADOUwEHxqMCAMAEFCwBAAAA0VMhBcbDAgDEBBQsAQAAANFTEQXHwwIAyAQULAEAAADRUwEFxqMGAcwEFCwBAAAA1FMhBcbDBgHQBBQsAQAAANRTEQXHwwYB1AQULAEAAADUUwEFyCMYAOEBDCABAAAA1VMBB8gDHADhAQwgAQAAANZTAQfIQxgC4QEWBAEAAADXUwEHyIOWAdkBDCABAAAA2FMBB8hjOgDhAQwgAQAAANlTAQfIgzYA4QEiAAEAAADaUwEGyIN2AOEBFgQBAAAA21MBB8hjgQHhAQwgAQAAANxTAQfIYyQA4QEMIAEAAADdUwEHyMNCAOEBDCABAAAA3lMBB8jDcwDhAQwgAQAAAN9TAQfJ4y4A5wEYMAEAAADgUxEFyOMuAOEBGDABAAAA4FMBB8hDHQDhARYEAQAAAOJTAQfIg3gA4QEMIAEAAADjUwEHyIN4AOEBDCABAAAA5FMBB8jj+wHhAQwgAQAAAOVTAQfIox4A4QEMIAEAAADmUwEHyKMuAOEBDCABAAAA51MBBcgDagDhAQwgAQAAAOdTAQXIw1YA4QEWBAEAAADsUwEFyMNKAOEBFgQBAAAA7FMBBcjD+AHhAQwgAQAAAOtTAQfIozEA4QEiAAEAAADsUwEGyGMYAtkBHgABAAAA7VMBBsiD8gHhARYEAQAAAO5TAQfIg00A4QEMIAEAAADvUwEHyGNWAOEBGkABAAAA7VMBBciDfwDhAQwgAQAAAPFTAQfI4xUA4QEaQAEAAADtUwEFyCN+AOEBDCABAAAA81MBB8hDqQDhAQwgAQAAAPRTAQfI4zUA4QEMIAEAAAD1UwEHyGMSAeEBDCABAAAA9lMBB8gD2QDhAQwgAQAAAPdTAQfIA50A4QEMIAEAAAD4UwEHyiNqAOEBDCABAAAA+VMBB8uDGALZAQwgAQAAAPpTAQfMQ2sA4QEMIAEAAAD7UwEHzQNuAOcBGDABAAAA/FMRBcwDbgDhARgwAQAAAPxTAQfMI2QA4QEMIAEAAAD+UwEHzAM4AOEBDCABAAAA/1MBB8wjYADhAQwgAQAAAP5TAQXMYxwA4QEWBAEAAAABVAEHzKMqAOEBHAwBAAAAAlQBB8wDRQDhAQwgAQAAAANUAQfMI2oA4QEMIAEAAAAEVAEHzAMuAOEBDCABAAAABVQBB8zDJQDhAQwgAQAAAAZUAQfMI0YA4QEMIAEAAAAHVAEHzKMYAuEBDCABAAAACFQBB8yjOADhAQwgAQAAAApUAQXMI1sA4QEMIAEAAAAKVAEFzKMwANkBDCABAAAAC1QBB8xD8gDZAQwgAQAAAAxUAQfMYz8A4QEMIAEAAAANVAEHzOOLAOEBDCABAAAADlQBB8zDgADhARYEAQAAAA9UAQfMI3oB4QEMIAEAAAAQVAEHzGM3AOEBDCABAAAAEVQBB8zDGALZAQwgAQAAABJUAQfMY10A4QEMIAEAAAATVAEHzKN8AOEBriQBAAAAFFQBBsxDewDhAQwgAQAAABRUAQXM4xUA4QEaQAEAAAAUVAEFzGOgAOEBFgQBAAAAF1QBB8zDSgDhAR4AAQAAABhUAQbMo4oA4QEWBAEAAAAZVAEHzMMaAOEBHAwBAAAAGlQBB8xjGwDhAQwgAQAAABtUAQfM41YA4QEcDAEAAAAcVAEHzEODAOEBDCABAAAAHVQBB8xDHADhARYEAQAAAB5UAQfMI4UA4QEMIAEAAAAfVAEHzANuAOEBDCABAAAAIFQBB8wjagDhAQwgAQAAACFUAQfMAy4A4QEMIAEAAAAiVAEHzMPPAOEBDCABAAAAI1QBB8zjGALZARQsAQAAACRUAQXOAxkC2QEMIAEAAAAlVAEHziNqAOEBDCABAAAAJlQBB85jJADhAQwgAQAAACdUAQfOgxIB2QEMIAEAAAAoVAEHzmM2AOEBDCABAAAAKVQBB85jiQDhAQwgAQAAACpUAQfOg5YB4QFIAAEAAAArVAEGzqMmAOEBGkABAAAAK1QBBc7jFQDhARpAAQAAACtUAQXOY4kA4QEMIAEAAAAuVAEHzmOJAOEBDCABAAAAL1QBB84jtADhAQwgAQAAADBUAQfOY3oA4QEMIAEAAAAxVAEHzgMZAOEBDCABAAAAMlQBB88jGQLnARgwAQAAADNUEQXOIxkC4QEYMAEAAAAzVAEHzoM2AOEBFgQBAAAANVQBB85DSgDhAQwgAQAAADZUAQfOg/EB4QEMIAEAAAA3VAEHzoNxAeEBHiABAAAAOFQBBs7jFQDhAQwgAQAAADlUAQfOwyYA4QEMIAEAAAA6VAEHzmM3AOEBDCABAAAAO1QBB86DLADhAQwgAQAAADxUAQfOYzcA4QEMIAEAAAA9VAEHzgMZAOEBDCABAAAAPlQBB85jIADhARYEAQAAAD9UAQfOIwAC2QEeIAEAAABAVAEGzmNWAOEBGkABAAAAQFQBBc6DfwDhAR4AAQAAAEJUAQbOw1YA4QEWBAEAAABHVAEFzsNKAOEBFgQBAAAAR1QBBc7jFQDhARpAAQAAAEBUAQXOY10A4QEMIAEAAABGVAEHzqPyAOEBFgQBAAAAR1QBB87jawDhAR4AAQAAAEBUAQTOYxIB4QEMIAEAAABJVAEHzsNyAOEBDCABAAAASlQBB86DLADhAQwgAQAAAEtUAQfOozwA4QEMIAEAAABMVAEHzkMZAtkBDCABAAAATVQBB86DQwDhAQwgAQAAAE5UAQfOI5IA4QEMIAEAAABPVAEHzkN8AOEBDCABAAAAUFQBB87jUgHhAQwgAQAAAFFUAQfO4zwB4QEMIAEAAABSVAEH0CPKAOEBDCABAAAAU1QBB9FDPQDZAQwgAQAAAHxUAQXRI2cA4QEMIAEAAABVVAEF0WNjAOEBDCABAAAAVVQBBdFjZADhAQwgAQAAAFdUAQfRIxYB4QEMIAEAAABYVAEH0YNsAOEBDCABAAAAWVQBB9GDHADhARYEAQAAAFpUAQfRY2sA4QEMIAEAAABbVAEF0WNjAOEBDCABAAAAW1QBBdEjhwDhAQwgAQAAAFVUAQXRQxgC4QEWBAEAAABeVAEH0aNhAOEBFgQBAAAAX1QBB9GDGQDhAQwgAQAAAGBUAQfRI3QA4QEWBAEAAABhVAEH0cNlAOEBDCABAAAAYlQBB9EjuwDhAQwgAQAAAGNUAQfRA8gA4QEMIAEAAABkVAEH0QOKAOEBDCABAAAAZVQBB9HDFwDhARYEAQAAAGZUAQfRYyIA4QEWBAEAAABnVAEH0SMYAOEBHiABAAAAaFQBBtEjNwDhAQwgAQAAAGhUAQXR4xUA4QEMIAEAAABqVAEH0QM1AOEBDCABAAAAa1QBB9FjbwDhAQwgAQAAAGxUAQfRw4EB2QEMIAEAAABtVAEH0WNGAOEBDCABAAAAblQBB9FDHADhAQwgAQAAAG9UAQfRgxcA4QEMIAEAAABwVAEH0SMuAOEBDCABAAAAcVQBB9EDOADhAQwgAQAAAHJUAQfRgxwA4QEWBAEAAABzVAEH0WMgAOEBDCABAAAAdFQBB9FDSQDhAQwgAQAAAHVUAQfRIyIA4QEeQAEAAAB2VAEG0SMvAOEBDCABAAAAd1QBB9FDMQDhARpAAQAAAHZUAQXR4xUA4QEaQAEAAAB2VAEF0eMhAOEBDCABAAAAelQBB9GDlADhARpAAQAAAHZUAQXRw04A4QEMIAEAAAB8VAEF0UMrAOEBDCABAAAAflQBBdEjHADhAQwgAQAAAH5UAQfRIxoA4QEWBAEAAAB/VAEH0WMcAOEBFgQBAAAAgFQBB9HDHQDhAQwgAQAAAIFUAQfR4yEA4QEMIAEAAACCVAEH0eMuAOEBDCABAAAAg1QBB9EDLgDhAQwgAQAAAIRUAQfRA1wA4QEMIAEAAACFVAEH0YMZAOEBDCABAAAAhlQBB9GDSADhAQwgAQAAAIhUAQXRozwA4QEMIAEAAACIVAEF0YNEAOEBDCABAAAAiVQBB9FDTADhAQwgAQAAAIpUAQfRgzAB4QEMIAEAAACLVAEH0UODAOEBDCABAAAAjFQBB9FDHQDhARYEAQAAAI1UAQfR4x4A4QEMIAEAAACOVAEH0YN6AOEBDCABAAAAj1QBB9GDGQDhAQwgAQAAAJBUAQfSo3kA4QEMIAEAAACRVAEH0qM4AOEBDCABAAAAklQBB9KjbwDhAQwgAQAAAJNUAQfSYxkC4QEMIAEAAACUVAEH06MXAOEBDCABAAAAlVQBB9QDFgHhAQwgAQAAAJZUAQfUA1gA4QEMIAEAAACXVAEH1EM2AOEBFgQBAAAAmFQBB9RDLgDhAQwgAQAAAJlUAQfUIxoA4QEiAAEAAACaVAEG1MM8AOEBFgQBAAAAm1QBB9RjHADhARYEAQAAAJxUAQfUg1EA4QEMIAEAAACdVAEH1INEAOEBDCABAAAAnlQBB9QjLwDhAQwgAQAAAJ9UAQfUYzYA4QEMIAEAAACgVAEH1CMaAOEBFgQBAAAAoVQBB9SjWgDhAQwgAQAAAKJUAQfUIxkA4QEMIAEAAACjVAEH1IM7AOEBDCABAAAApFQBB9QjLgDhARYEAQAAAKVUAQfUQ0kA4QEMIAEAAACmVAEH1CMcAOEBDCABAAAAp1QBB9QjGgDhARYEAQAAAKhUAQfUIxwA4QEMIAEAAACpVAEH1CMaAOEBFgQBAAAAqlQBB9TDYgDhAQwgAQAAAKtUAQfUQx0A4QEMIAEAAACsVAEH1YMZAtgEBjQMAAAArVQBBdajGQLcBAY0DGAAAK5UAQXXwxkC4AQIPAsAAACvVAEF2OMZAuQECDwLAAAAsFQBBdkDGgLoBAg8DQAAALFUAQXaIxoC7AQIPAcAAACyVAEF20MaAvAEBjQMAAAAs1QBBdxjGgL0BAY0DAAAALRUAQXdgxoC+AQGNAwAAAC1VAEF3qMaAvwEBjQMoAAAtlQBBd/DGgIABQ4YAQAAANsAEAXg4xoCBAUOGAEAAADbAAAF36MCAAgFDhgBAAAAkgkQBeDDAgAMBQ4YAQAAAJIJAAXfo3gBEAUQEAEAAADXHCAF3wMbAhQFEBABAAAA1xwQBeDDeAEYBRAQAQAAANccAAXhIxsCAAUQEAEAAACsUREF4kMbAgQFEBABAAAArFEBBeMDYgEQBRAQAQAAAHpPEQXkI2IBGAUQEAEAAAB6TwEF5WMbAgAFEBABAAAA1xwQBeaDGwIEBRAQAQAAANccAAXnA2ABEAUQEAEAAADXHCAF56MbAhQFEBABAAAA1xwQBegjYAEYBRAQAQAAANccAAXpwxsCAAUSKAEAAAAiABAA6uMbAgQFEigBAAAAIwAAAOujBgEQBRAQAQAAAJCHEAXswwYBGAUQEAEAAACQhwAF7QMcAgAFFCwBAAAAb1MRBe4jHAIEBRQsAQAAAG9TAQXvQxwCHAUGNAwAAADNVAEF8GMcAiAFBjQMoAAAzlQBBfGDHAIkBQY0DAAAAM9UAQXyoxwCKAUIPAsAAADQVAEF88McAiwFCDwLAAAA0VQBBfTjHAIwBQg8CwAAANJUAQX1Ax0CNAUIPAsAAADTVAEF9iMdAjgFCDwLAAAA1FQBBfdDHQI8BQg8BwAAANVUAQX4Yx0CQAUIPAcAAADWVAEF+YMdAkQFCDwHAAAA11QBBfqjHQJIBQg8BwAAANhUAQX7wx0CTAUIPAcAAADZVAEF/OMdAlAFCDwHAAAA2lQBBf0DHgJUBQg8BwAAANtUAQX+Ix4CWAUIPAcAAADcVAEF/0MeAlwFCDwHAAAA3VQBBQBkHgJgBQg8BwAAAN5UAQUBhB4CZAUIPAcAAADfVAEFAqQeAmgFCDwHAAAA4FQBBQPEHgJsBQg8BwAAAOFUAQUE5B4CcAUIPAcAAADiVAEFBQQfAnQFCDwHAAAA41QBBQYkHwJ4BQg8BwAAAORUAQUHRB8CfAUIPAcAAADlVAEFCGQfAoAFCDwHAAAA5lQBBQmEHwKEBQg8BwAAAOdUAQUKpB8CiAUIPAcAAADoVAEFC8QfAowFCDwHAAAA6VQBBQzkHwKQBQg8BwAAAOpUAQUNBCAClAUIPAcAAADrVAEFDiQgApgFCDwHAAAA7FQBBQ9EIAKcBQg8BwAAAO1UAQUQZCACoAUIPAcAAADuVAEFEYQgAqQFCDwHAAAA71QBBRKkIAKoBQg8BwAAAPBUAQUTxCACrAUIPAcAAADxVAEFFOQgArAFCDwHAAAA8lQBBRUEIQK0BQg8BwAAAPNUAQUWJCECuAUIPAcAAAD0VAEFF0QhArwFCDwHAAAA9VQBBRhkIQLABQg8BwAAAPZUAQUZhCECxAUIPAcAAAD3VAEFGqQhAsgFCDwHAAAA+FQBBRvEIQLMBQg8BwAAAPlUAQUc5CEC0AUIPAcAAAD6VAEFHQQiAtQFCDwHAAAA+1QBBR4kIgLYBQg8BwAAAPxUAQUfRCIC3AUIPAcAAAD9VAEFIGQiAuAFCDwHAAAA/lQBBSGEIgLkBQg8BwAAAP9UAQUipCIC6AUIPAcAAAAAVQEFI8QiAuwFCDwHAAAAAVUBBSTkIgLwBQg8BwAAAAJVAQUlBCMC9AUIPAcAAAADVQEFJiQjAvgFCDwHAAAABFUBBSdEIwL8BQg8BwAAAAVVAQUoZCMCAAYIPAcAAAAGVQEFKYQjAgQGCDwHAAAAB1UBBSqkIwIIBgg8BwAAAAhVAQUrxCMCDAYIPAcAAAAJVQEFLOQjAhAGCDwHAAAAClUBBS0EJAIUBgg8BwAAAAtVAQUuJCQCGAYIPAcAAAAMVQEFL0QkAhwGCDwHAAAADVUBBTBkJAIgBgg8BwAAAA5VAQUxhCQCJAYIPAcAAAAPVQEFMqQkAigGCDwHAAAAEFUBBTPEJAIsBgg8BwAAABFVAQU05CQCMAYIPAcAAAASVQEFNQQlAjQGCDwHAAAAE1UBBTYkJQI4Bgg8BwAAABRVAQU3RCUCPAYIPAcAAAAVVQEFOGQlAkAGCDwHAAAAFlUBBTmEJQJEBgg8BwAAABdVAQU6pCUCSAYIPAcAAAAYVQEFO8QlAkwGCDwHAAAAGVUBBTzkJQJQBgg8BwAAABpVAQU9BCYCVAYIPAcAAAAbVQEFPiQmAlgGCDwHAAAAHFUBBT9EJgJcBgg8BwAAAB1VAQVAZCYCYAYIPAcAAAAeVQEFQYQmAmQGCDwHAAAAH1UBBUKkJgJoBgg8BwAAACBVAQVDxCYCbAYIPAcAAAAhVQEFROQmAnAGCDwHAAAAIlUBBUUEJwJ0Bgg8BwAAACNVAQVGJCcCeAYIPAcAAAAkVQEFR0QnAnwGCDwHAAAAJVUBBUhkJwKABgg8BwAAACZVAQVJhCcChAYIPAcAAAAnVQEFSqQnAogGCDwHAAAAKFUBBUvEJwKMBgg8BwAAAClVAQVM5CcCkAYIPAcAAAAqVQEFTQQoApQGCDwHAAAAK1UBBU4kKAKYBgg8BwAAACxVAQVPRCgCnAYIPAcAAAAtVQEFUGQoAqAGVkQHAAAALlUBBVGEKAKkBgg8BwAAAC9VAQVSpCgCqAYIPAcAAAAwVQEFU8QoAqwGCDwHAAAAMVUBBVTkKAKwBgg8BwAAADJVAQVVBCkCtAYIPAcAAAAzVQEFViQpArgGCDwHAAAANFUBBVdEKQK8Bgg8BwAAADVVAQVYZCkCwAYIPAcAAAA2VQEFWYQpAsQGCDwHAAAAN1UBBVqkKQLIBgg8BwAAADhVAQVbxCkCzAYIPAcAAAA5VQEFXOQpAtAGCDwHAAAAOlUBBV0EKgLUBgg8BwAAADtVAQVeJCoC2AYIPAcAAAA8VQEFX0QqAtwGCDwHAAAAPVUBBWBkKgLgBgg8BwAAAD5VAQVhhCoC5AYIPAcAAAA/VQEFYqQqAugGCDwHAAAAQFUBBWPEKgLsBgg8BwAAAEFVAQVk5CoC8AYIPAcAAABCVQEFZQQrAvQGCDwHAAAAQ1UBBWYkKwL4Bgg8BwAAAERVAQVnRCsC/AYIPAcAAABFVQEFaGQrAgAHCDwHAAAARlUBBWmEKwIEBwg8BwAAAEdVAQVqpCsCCAcIPAcAAABIVQEFa8QrAgwHCDwHAAAASVUBBWzkKwIQBwg8BwAAAEpVAQVtBCwCFAcIPAcAAABLVQEFbiQsAhgHCDwHAAAATFUBBW9ELAIcBwg8BwAAAE1VAQVwZCwCIAcIPAcAAABOVQEFcYQsAiQHCDwHAAAAT1UBBXKkLAIoBwg8BwAAAFBVAQVzxCwCLAcIPAcAAABRVQEFdOQsAjAHCDwHAAAAUlUBBXUELQI0Bwg8BwAAAFNVAQV2JC0COAcIPAcAAABUVQEFd0QtAjwHCDwHAAAAVVUBBXhkLQJABwg8BwAAAFZVAQV5hC0CRAcIPAcAAABXVQEFeqQtAkgHCDwHAAAAWFUBBXvELQJMBwg8BwAAAFlVAQV85C0CUAcIPAcAAABaVQEFfQQuAlQHCDwHAAAAW1UBBX4kLgJYBwg8BwAAAFxVAQV/RC4CXAcIPAcAAABdVQEFgGQuAmAHCDwHAAAAXlUBBYGELgJkBwg8BwAAAF9VAQWCpC4CaAcIPAcAAABgVQEFg8QuAmwHCDwHAAAAYVUBBYTkLgJwBwg8BwAAAGJVAQWFBC8CdAcIPAcAAABjVQEFhiQvAngHCDwHAAAAZFUBBYdELwJ8Bwg8BwAAAGVVAQWIZC8CgAcIPAcAAABmVQEFiYQvAoQHCDwHAAAAZ1UBBYqkLwKIBwg8BwAAAGhVAQWLxC8CjAcIPAcAAABpVQEFjOQvApAHCDwHAAAAalUBBY0EMAKUBwg8BwAAAGtVAQWOJDACmAcIPAcAAABsVQEFj0QwApwHCDwHAAAAbVUBBZBkMAKgBwg8BwAAAG5VAQWRhDACpAcIPAcAAABvVQEFkqQwAqgHCDwHAAAAcFUBBZPEMAKsBwg8BwAAAHFVAQWU5DACsAcIPAcAAAByVQEFlQQxArQHCDwHAAAAc1UBBZYkMQK4Bwg8BwAAAHRVAQWXRDECvAcIPAcAAAB1VQEFmGQxAsAHCDwHAAAAdlUBBZmEMQLEBwg8BwAAAHdVAQWapDECyAcIPAcAAAB4VQEFm8QxAswHCDwHAAAAeVUBBZzkMQLQBwg8BwAAAHpVAQWdBDIC1AcIPAcAAAB7VQEFniQyAtgHCDwHAAAAfFUBBZ9EMgLcBwg8BwAAAH1VAQWgZDIC4AcIPAcAAAB+VQEFoYQyAuQHCDwHAAAAf1UBBaKkMgLoBwg8BwAAAIBVAQWjxDIC7AcIPAcAAACBVQEFpOQyAvAHCDwHAAAAglUBBaUEMwL0Bwg8BwAAAINVAQWmJDMC+AcIPAcAAACEVQEFp0QzAvwHCDwHAAAAhVUBBahkMwIACAg8BwAAAIZVAQWphDMCBAgIPAcAAACHVQEFqqQzAggICDwHAAAAiFUBBavEMwIMCAg8BwAAAIlVAQWs5DMCEAgIPAcAAACKVQEFrQQ0AhQICDwHAAAAi1UBBa4kNAIYCAg8BwAAAIxVAQWvRDQCHAgIPAcAAACNVQEFsGQ0AiAICDwHAAAAjlUBBbGENAIkCAg8BwAAAI9VAQWypDQCKAgIPAcAAACQVQEFs8Q0AiwICDwHAAAAkVUBBbTkNAIwCAg8BwAAAJJVAQW1BDUCNAgIPAcAAACTVQEFtiQ1AjgICDwHAAAAlFUBBbdENQI8CAg8BwAAAJVVAQW4ZDUCQAgIPAcAAACWVQEFuYQ1AkQICDwHAAAAl1UBBbqkNQJICAg8BwAAAJhVAQW7xDUCTAgIPAcAAACZVQEFvOQ1AlAICDwHAAAAmlUBBb0ENgJUCAg8BwAAAJtVAQW+JDYCWAgIPAcAAACcVQEFv0Q2AlwICDwHAAAAnVUBBcBkNgJgCAg8BwAAAJ5VAQXBhDYCZAgIPAcAAACfVQEFwqQ2AmgICDwHAAAAoFUBBcPENgJsCAg8BwAAAKFVAQXE5DYCcAgIPAcAAACiVQEFxQQ3AnQICDwHAAAAo1UBBcYkNwJ4CAg8BwAAAKRVAQXHRDcCfAgIPAcAAAClVQEFyGQ3AoAICDwHAAAAplUBBcmENwKECAg8BwAAAKdVAQXKpDcCiAgIPAcAAACoVQEFy8Q3AowICDwHAAAAqVUBBczkNwKQCAg8BwAAAKpVAQXNBDgClAgIPAcAAACrVQEFziQ4ApgICDwHAAAArFUBBc9EOAKcCAg8BwAAAK1VAQXQZDgCoAgIPAcAAACuVQEF0YQ4AqQICDwHAAAAr1UBBdKkOAKoCAg8BwAAALBVAQXTxDgCrAgIPAcAAACxVQEF1OQ4ArAICDwHAAAAslUBBdUEOQK0CAg8BwAAALNVAQXWJDkCuAgIPAcAAAC0VQEF10Q5ArwICDwHAAAAtVUBBdhkOQLACAg8BwAAALZVAQXZhDkCxAgIPAcAAAC3VQEF2qQ5AsgICDwHAAAAuFUBBdvEOQLMCAg8BwAAALlVAQXc5DkC0AgIPAcAAAC6VQEF3QQ6AtQICDwHAAAAu1UBBd4kOgLYCAg8BwAAALxVAQXfRDoC3AgIPAcAAAC9VQEF4GQ6AuAICDwHAAAAvlUBBeGEOgLkCAg8BwAAAL9VAQXipDoC6AgIPAcAAADAVQEF48Q6AuwICDwHAAAAwVUBBeTkOgLwCAg8BwAAAMJVAQXlBDsC9AgIPAcAAADDVQEF5iQ7AvgICDwHAAAAxFUBBedEOwL8CAg8BwAAAMVVAQXoZDsCAAkIPAcAAADGVQEF6YQ7AgQJCDwHAAAAx1UBBeqkOwIICQg8BwAAAMhVAQXrxDsCDAkIPAcAAADJVQEF7OQ7AhAJCDwHAAAAylUBBe0EPAIUCQg8BwAAAMtVAQXuJDwCGAkIPAcAAADMVQEF70Q8AhwJCDwHAAAAzVUBBfBkPAIgCQg8BwAAAM5VAQXxhDwCJAkIPAcAAADPVQEF8qQ8AigJCDwHAAAA0FUBBfPEPAIsCQg8BwAAANFVAQX05DwCMAkIPAcAAADSVQEF9QQ9AjQJCDwHAAAA01UBBfYkPQI4CQg8BwAAANRVAQX3RD0CPAkIPAcAAADVVQEF+GQ9AkAJCDwHAAAA1lUBBQ==", features: { prefix: { list: ["$%^oov^%$", "\n", "\n\n", "\n\r", "!", '"', "$", "%", "&", "'", "'2", "'3", "'4", "'5", "'6", "'7", "'8", "'9", "'A", "'a", "'D", "'d", "'L", "'l", "'M", "'m", "'R", "'r", "'S", "'s", "'V", "'v", "'Y", "'y", "(", "(-", "(:", ")", ")-", "):", ",", "-", "--", ".", "..", "/", "0", "1", "1,", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "1s", "2", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "2n", "3", "30", "31", "3r", "4", "40", "4t", "5", "50", "5t", "6", "60", "6t", "7", "70", "7t", "8", "80", "8t", "9", "90", "9t", ":", ":'", ":(", ":)", ":*", ":-", ":/", ":[", ":\\", ":]", ":D", ":P", ":p", ":S", ":{", ":|", ":}", ";", ";(", ";)", ";-", "<3", "?", "[", "]", "`", "A", "a", "A$", "a$", "A-", "a-", "a.", "A.", "AA", "aa", "ab", "Ab", "ac", "Ac", "ad", "ae", "af", "Af", "ag", "Ag", "ah", "AI", "Ai", "ai", "aj", "ak", "al", "AL", "Al", "AM", "Am", "am", "An", "an", "ao", "ap", "AP", "Ap", "aq", "ar", "Ar", "AR", "As", "as", "AS", "At", "at", "au", "AU", "Au", "av", "AV", "Av", "Aw", "aw", "ax", "ay", "az", "b.", "B.", "b/", "b4", "ba", "Ba", "bb", "bc", "BC", "bd", "be", "Be", "bh", "Bh", "bi", "Bi", "bj", "BJ", "bl", "bm", "bn", "bo", "Bo", "bp", "br", "Br", "BR", "bs", "BS", "bt", "BT", "bu", "Bu", "bv", "bw", "By", "by", "C$", "c$", "c.", "CA", "Ca", "ca", "cb", "cc", "cd", "CD", "ce", "Ce", "cf", "cg", "ch", "Ch", "CI", "ci", "cj", "cl", "cm", "cn", "co", "Co", "CO", "cp", "cr", "Cr", "cs", "CT", "Ct", "ct", "cu", "Cu", "cv", "cw", "cy", "Cy", "cz", "Cz", "D-", "d-", "d.", "D.", "da", "DA", "Da", "db", "dc", "dd", "de", "DE", "De", "df", "dh", "di", "DI", "Di", "dj", "Dj", "dk", "dl", "dm", "dn", "DO", "Do", "do", "dp", "DR", "Dr", "dr", "ds", "dt", "du", "Du", "dv", "dw", "dy", "dz", "E-", "e-", "E.", "e.", "Ea", "ea", "eb", "Eb", "ec", "Ec", "ed", "ee", "ef", "EG", "eg", "Eg", "eh", "ei", "Ei", "ej", "ek", "El", "el", "em", "EM", "Em", "en", "eo", "ep", "eq", "er", "Er", "es", "ES", "Es", "et", "Et", "eu", "ev", "Ev", "ew", "ex", "Ex", "ey", "ez", "fa", "Fa", "FB", "fb", "fc", "fd", "fe", "FE", "Fe", "fh", "fi", "Fi", "fj", "FL", "Fl", "fl", "fm", "fn", "fo", "Fo", "fp", "fr", "Fr", "FR", "fs", "ft", "FT", "Ft", "fu", "fw", "g.", "GA", "Ga", "ga", "gb", "gc", "gd", "ge", "GE", "Ge", "Gh", "gh", "gi", "gl", "gm", "gn", "GO", "Go", "go", "gp", "gr", "Gr", "gs", "gu", "Gu", "gy", "ha", "HA", "Ha", "hc", "hd", "HE", "He", "he", "hf", "hh", "hi", "Hi", "hm", "hn", "ho", "HO", "Ho", "hr", "hs", "ht", "hu", "Hu", "hy", "I", "i", "I'", "i'", "I.", "i.", "ia", "IA", "Ia", "ib", "ic", "IC", "id", "ID", "Id", "ie", "IE", "If", "if", "ig", "II", "ii", "ij", "ik", "il", "IL", "Il", "im", "In", "in", "IN", "io", "ip", "ir", "Ir", "IR", "IS", "Is", "is", "IT", "It", "it", "iu", "iv", "IV", "Iv", "ix", "iy", "iz", "I\u2019", "i\u2019", "ja", "Ja", "JA", "jd", "je", "jf", "jh", "ji", "jn", "jo", "Jo", "JO", "JR", "Jr", "jr", "ju", "JU", "Ju", "jy", "k", "ka", "KA", "Ka", "kb", "ke", "Ke", "kg", "kh", "ki", "Ki", "kk", "kl", "km", "KN", "Kn", "kn", "ko", "Ko", "kp", "kr", "ku", "kv", "kw", "KY", "Ky", "ky", "LA", "La", "la", "lb", "LB", "Lb", "lc", "ld", "le", "Le", "LE", "lg", "li", "Li", "LL", "ll", "Ll", "lm", "lo", "lp", "ls", "LT", "Lt", "lt", "lu", "Lu", "lw", "ly", "ma", "Ma", "MA", "mb", "mc", "MC", "MD", "Md", "md", "me", "Me", "ME", "mf", "mg", "MG", "Mg", "mh", "MI", "Mi", "mi", "mk", "ml", "mm", "mn", "mo", "MO", "Mo", "mp", "MR", "Mr", "mr", "MS", "Ms", "ms", "MT", "Mt", "mt", "mu", "MU", "Mu", "mv", "My", "my", "N'", "n'", "N.", "n.", "n0", "Na", "na", "NA", "NB", "nb", "nc", "NC", "nd", "ND", "ne", "Ne", "NE", "NF", "nf", "ng", "NH", "nh", "ni", "Ni", "nj", "nl", "nm", "nn", "No", "no", "NO", "np", "nr", "ns", "NS", "NT", "nt", "nu", "Nu", "nw", "ny", "NZ", "nz", "N\u2019", "n\u2019", "O'", "o'", "o.", "oa", "ob", "oc", "OC", "Oc", "od", "oe", "Of", "of", "og", "Oh", "oh", "oi", "oj", "ok", "OK", "Ok", "ol", "Om", "om", "On", "on", "oo", "op", "Or", "or", "OR", "os", "OS", "ot", "Ot", "ou", "OU", "Ou", "ov", "Ov", "ow", "ox", "oy", "OZ", "Oz", "oz", "O\u2019", "o\u2019", "P.", "p.", "PA", "Pa", "pa", "pb", "pc", "PC", "Pc", "pd", "pe", "Pe", "pf", "PG", "pg", "ph", "Ph", "pi", "pk", "pl", "Pl", "pm", "pn", "po", "Po", "PO", "PP", "pp", "pr", "PR", "Pr", "ps", "pt", "PT", "Pt", "pu", "pv", "pw", "py", "pz", "qa", "Qa", "qc", "qe", "qi", "qo", "QT", "Qt", "qt", "qu", "r.", "R.", "ra", "RA", "Ra", "rb", "rc", "RD", "Rd", "rd", "RE", "Re", "re", "rf", "rh", "ri", "Ri", "rn", "ro", "Ro", "rp", "RS", "Rs", "rs", "rt", "ru", "Ru", "rv", "Rw", "rw", "ry", "S.", "s.", "SA", "sa", "Sa", "sb", "sc", "Sc", "se", "SE", "Se", "sf", "sg", "SG", "Sg", "SH", "Sh", "sh", "si", "Si", "sj", "sk", "sl", "Sl", "sm", "SM", "Sm", "sn", "SO", "So", "so", "sp", "sq", "SR", "Sr", "sr", "ss", "ST", "St", "st", "su", "Su", "SU", "sv", "sw", "Sw", "sy", "Sy", "sz", "S\xE3", "s\xE3", "ta", "Ta", "tb", "TB", "Tb", "tc", "td", "te", "TE", "Te", "th", "Th", "TH", "ti", "Ti", "tk", "tl", "tm", "tn", "To", "to", "TO", "tp", "tr", "Tr", "ts", "TS", "Ts", "tu", "TU", "Tu", "tv", "tw", "Tw", "ty", "tz", "u", "UA", "ua", "ub", "ud", "uf", "Ug", "ug", "uh", "ui", "UK", "uk", "Uk", "ul", "um", "UN", "un", "Un", "up", "UP", "ur", "Ur", "US", "us", "ut", "uu", "uv", "ux", "uy", "uz", "Uz", "VA", "Va", "va", "vc", "vd", "VE", "ve", "Ve", "vf", "vh", "vi", "Vi", "VI", "vl", "vo", "Vo", "vr", "VS", "Vs", "vs", "VT", "Vt", "vt", "vu", "vy", "W.", "w.", "wa", "Wa", "WA", "wb", "WE", "We", "we", "wh", "WH", "Wh", "wi", "Wi", "WI", "wl", "wm", "wn", "WO", "Wo", "wo", "wp", "wr", "Wr", "ws", "wt", "wu", "ww", "wy", "WY", "Wy", "X-", "x-", "xa", "xe", "xi", "xm", "xo", "xy", "Y", "y", "Y'", "y'", "ya", "YA", "Ya", "yb", "yc", "YD", "Yd", "yd", "ye", "Ye", "yg", "yh", "yi", "yl", "yo", "Yo", "YO", "yp", "yr", "yt", "yu", "Y\u2019", "y\u2019", "za", "Za", "zb", "zd", "ze", "Ze", "zi", "Zi", "zl", "zo", "zu", "zw", "zy", "{", "}", "\xA3", "\xA5", "\xA9", "\xAE", "\u2013", "\u2014", "\u2018", "\u2019", "\u2019A", "\u2019a", "\u2019D", "\u2019d", "\u2019L", "\u2019l", "\u2019M", "\u2019m", "\u2019R", "\u2019r", "\u2019S", "\u2019s", "\u2019V", "\u2019v", "\u2019Y", "\u2019y", "\u201C", "\u201D", "\u2026", "\u20A8", "\u20A9", "\u20B9", "\u20BD", "\u20BF", "\u25B6", "\u2600", "\u2601", "\u2605", "\u2606", "\u2611", "\u2614", "\u2615", "\u261D", "\u262F", "\u2637", "\u263A", "\u2661", "\u2665", "\u2666", "\u266A", "\u266B", "\u26A0", "\u26A1", "\u26BD", "\u26C4", "\u26D4", "\u2708", "\u270A", "\u270B", "\u270C", "\u2713", "\u2714", "\u2716", "\u2728", "\u273F", "\u2744", "\u2757", "\u2764", "\u279C", "\u27A1", "\u2B50", "\u{1F1EA}", "\u{1F1F8}", "\u{1F1FA}", "\u{1F300}", "\u{1F308}", "\u{1F30A}", "\u{1F30D}", "\u{1F31A}", "\u{1F31E}", "\u{1F31F}", "\u{1F334}", "\u{1F337}", "\u{1F338}", "\u{1F339}", "\u{1F33A}", "\u{1F33B}", "\u{1F33C}", "\u{1F33F}", "\u{1F340}", "\u{1F341}", "\u{1F342}", "\u{1F343}", "\u{1F346}", "\u{1F349}", "\u{1F34C}", "\u{1F353}", "\u{1F354}", "\u{1F355}", "\u{1F35F}", "\u{1F366}", "\u{1F369}", "\u{1F36B}", "\u{1F370}", "\u{1F374}", "\u{1F377}", "\u{1F378}", "\u{1F379}", "\u{1F37A}", "\u{1F37B}", "\u{1F380}", "\u{1F381}", "\u{1F382}", "\u{1F383}", "\u{1F384}", "\u{1F385}", "\u{1F388}", "\u{1F389}", "\u{1F38A}", "\u{1F393}", "\u{1F3A4}", "\u{1F3A5}", "\u{1F3A7}", "\u{1F3AD}", "\u{1F3AE}", "\u{1F3B5}", "\u{1F3B6}", "\u{1F3B8}", "\u{1F3C0}", "\u{1F3C3}", "\u{1F3C6}", "\u{1F3C8}", "\u{1F3CA}", "\u{1F412}", "\u{1F413}", "\u{1F423}", "\u{1F425}", "\u{1F427}", "\u{1F42F}", "\u{1F431}", "\u{1F436}", "\u{1F437}", "\u{1F438}", "\u{1F43C}", "\u{1F43E}", "\u{1F440}", "\u{1F444}", "\u{1F445}", "\u{1F446}", "\u{1F447}", "\u{1F448}", "\u{1F449}", "\u{1F44A}", "\u{1F44B}", "\u{1F44C}", "\u{1F44D}", "\u{1F44E}", "\u{1F44F}", "\u{1F450}", "\u{1F451}", "\u{1F46B}", "\u{1F46C}", "\u{1F46D}", "\u{1F46F}", "\u{1F476}", "\u{1F478}", "\u{1F47B}", "\u{1F47C}", "\u{1F47D}", "\u{1F47E}", "\u{1F47F}", "\u{1F480}", "\u{1F481}", "\u{1F483}", "\u{1F484}", "\u{1F485}", "\u{1F486}", "\u{1F489}", "\u{1F48B}", "\u{1F48D}", "\u{1F48E}", "\u{1F48F}", "\u{1F490}", "\u{1F491}", "\u{1F493}", "\u{1F494}", "\u{1F495}", "\u{1F496}", "\u{1F497}", "\u{1F498}", "\u{1F499}", "\u{1F49A}", "\u{1F49B}", "\u{1F49C}", "\u{1F49D}", "\u{1F49E}", "\u{1F49F}", "\u{1F4A3}", "\u{1F4A4}", "\u{1F4A5}", "\u{1F4A6}", "\u{1F4A8}", "\u{1F4A9}", "\u{1F4AA}", "\u{1F4AB}", "\u{1F4AD}", "\u{1F4AF}", "\u{1F4B0}", "\u{1F4B8}", "\u{1F4D2}", "\u{1F4D6}", "\u{1F4DA}", "\u{1F4DD}", "\u{1F4F7}", "\u{1F51D}", "\u{1F525}", "\u{1F52A}", "\u{1F52B}", "\u{1F52E}", "\u{1F600}", "\u{1F601}", "\u{1F602}", "\u{1F603}", "\u{1F604}", "\u{1F605}", "\u{1F606}", "\u{1F607}", "\u{1F608}", "\u{1F609}", "\u{1F60A}", "\u{1F60B}", "\u{1F60C}", "\u{1F60D}", "\u{1F60E}", "\u{1F60F}", "\u{1F610}", "\u{1F611}", "\u{1F612}", "\u{1F613}", "\u{1F614}", "\u{1F615}", "\u{1F616}", "\u{1F618}", "\u{1F619}", "\u{1F61A}", "\u{1F61B}", "\u{1F61C}", "\u{1F61D}", "\u{1F61E}", "\u{1F61F}", "\u{1F620}", "\u{1F621}", "\u{1F622}", "\u{1F623}", "\u{1F624}", "\u{1F625}", "\u{1F627}", "\u{1F628}", "\u{1F629}", "\u{1F62A}", "\u{1F62B}", "\u{1F62C}", "\u{1F62D}", "\u{1F62E}", "\u{1F62F}", "\u{1F630}", "\u{1F631}", "\u{1F632}", "\u{1F633}", "\u{1F634}", "\u{1F635}", "\u{1F636}", "\u{1F637}", "\u{1F638}", "\u{1F639}", "\u{1F63B}", "\u{1F63D}", "\u{1F63F}", "\u{1F640}", "\u{1F645}", "\u{1F646}", "\u{1F647}", "\u{1F648}", "\u{1F649}", "\u{1F64A}", "\u{1F64B}", "\u{1F64C}", "\u{1F64F}", "\u{1F697}", "\u{1F6AB}", "\u{1F6AC}", "\u{1F6B6}"] }, suffix: { list: ["$%^oov^%$", "\n", "\n\n", "\n\n\n", "\n\r", "!", '"', "$", "%", "&", "'", "20s", "30s", "40s", "50s", "60s", "70s", "80s", "90s", "'A", "'a", "ALL", "all", "'AM", "'am", "'D", "'d", "'LL", "'ll", "'M", "'m", "'RE", "'Re", "'re", "'S", "'s", "'VE", "'ve", "'Y", "'y", "(", "(-:", "(:", ")", ")-:", "):", ",", "-", "--", ".", "...", "/", "0", "1", "000", "10", "100", "0th", "11", "1th", "12", "2th", "13", "3th", "14", "4th", "15", "5th", "16", "6th", "17", "7th", "18", "8th", "19", "9th", "1st", "2", "20", "00s", "10s", "21", "22", "2nd", "23", "3rd", "24", "25", "26", "27", "28", "29", "3", "30", "31", "4", "40", "5", "50", "6", "60", "7", "70", "8", "80", "9", "90", ":", ":'(", "'-(", ":(", ":((", ":)", ":))", ")))", ":*", ":-(", "-((", "(((", ":-)", "-))", ":-*", ":-/", ":->", ":-?", ":-[", ":-]", ":-D", ":-P", ":-p", ":-S", ":-|", ":-}", ":/", ":[", ":\\", ":]", ":D", ":P", ":p", ":S", ":{", ":|", ":}", ";", ";(", ";)", ";))", ";-(", ";-)", ";-D", "<3", "<33", "333", "?", "[", "]", "`", "A", "a", "A$", "a$", "ody", "men", "a.", ".D.", ".d.", ".M.", ".m.", "AA", "aa", "aaa", "AAS", "aas", "aah", "ing", "lii", "aar", "ark", "olf", "ves", "hus", "arp", "ave", "ab", "aba", "aca", "aci", "ate", "ack", "nal", "cus", "aft", "one", "amp", "ere", "don", "ned", "ent", "ons", "ion", "ase", "ash", "hed", "sia", "sic", "ble", "ted", "tes", "tic", "tis", "tor", "oir", "ial", "lly", "aya", "abb", "acy", "bbe", "ess", "bey", "bot", "abc", "omb", "ias", "sis", "sty", "ous", "cal", "uce", "ens", "uct", "cts", "eam", "ian", "ius", "bed", "ele", "lia", "osk", "aki", "nce", "ncy", "ant", "bet", "mia", "tal", "ter", "rad", "nry", "hor", "red", "rer", "ors", "ide", "des", "ila", "ies", "ity", "ist", "phy", "ect", "tly", "ure", "res", "has", "haz", "zia", "ive", "aut", "aze", "ism", "ria", "oom", "bls", "ary", "bly", "abm", "mal", "lcy", "ard", "ode", "ohm", "eau", "aux", "ish", "hes", "sal", "sum", "bor", "ral", "ine", "ort", "ely", "rts", "tus", "lic", "und", "ded", "nds", "out", "ove", "bra", "hia", "ade", "der", "act", "ast", "dge", "ged", "ger", "ges", "ach", "oad", "ome", "upt", "sed", "ise", "ssa", "sae", "ond", "eil", "ler", "ces", "tee", "ees", "dly", "nth", "the", "ute", "lve", "ved", "ver", "ory", "orb", "ber", "ers", "rbs", "ain", "ner", "ins", "sly", "use", "urd", "abt", "ser", "ses", "but", "uzz", "olt", "att", "aby", "bye", "yla", "ysm", "yss", "nia", "ac", "cia", "eme", "mic", "hip", "ics", "emy", "tha", "thi", "dae", "lan", "yte", "oid", "oma", "nic", "dia", "ari", "rid", "bia", "rus", "ote", "xia", "xis", "dal", "acc", "ede", "ndo", "nts", "ual", "ept", "pts", "ize", "zed", "zes", "cho", "ura", "aim", "med", "gly", "ied", "any", "ice", "ord", "rds", "ost", "eur", "unt", "tre", "dit", "its", "ete", "rue", "ued", "ues", "rse", "rst", "tom", "ace", "lol", "lar", "ric", "aly", "erb", "bic", "ola", "ose", "lus", "ula", "lum", "yde", "dol", "hen", "lid", "ify", "tin", "din", "tum", "tyl", "ene", "ean", "nid", "che", "eve", "lea", "nes", "ira", "ite", "cin", "chy", "cid", "dic", "try", "hil", "ile", "ids", "nar", "ini", "nus", "kee", "cme", "cne", "orm", "era", "old", "rea", "orn", "sma", "int", "sce", "ced", "ire", "uit", "gas", "cre", "age", "did", "ony", "bat", "ont", "gen", "ein", "nym", "yms", "lis", "pic", "oss", "cth", "iae", "ium", "hic", "non", "pod", "apy", "zoa", "oan", "ear", "sts", "sin", "eus", "vir", "cyl", "rol", "ad", "ada", "yly", "gio", "pin", "apt", "add", "dax", "end", "nda", "dum", "ict", "dle", "led", "ead", "see", "aph", "dds", "cer", "gid", "ata", "omy", "thy", "min", "adh", "dhd", "ieu", "eux", "ios", "val", "oin", "urn", "rns", "nct", "ust", "man", "ass", "via", "lty", "mit", "mix", "her", "exa", "xal", "oun", "ado", "obe", "obo", "opt", "ore", "adp", "lin", "gic", "hin", "ple", "ift", "oit", "ads", "ipt", "adt", "ult", "ery", "ood", "lts", "tia", "ert", "zer", "vil", "sor", "son", "yta", "adz", "dze", "aec", "gir", "gis", "mos", "gus", "eon", "nis", "rie", "gia", "oil", "ram", "mme", "mes", "ams", "ogy", "ane", "sol", "far", "air", "irs", "vit", "irm", "mer", "fix", "xed", "xes", "est", "ray", "ght", "han", "ani", "tan", "dos", "eld", "isr", "afl", "ame", "are", "xin", "xen", "ker", "oat", "oot", "aid", "oul", "afp", "esh", "ica", "can", "ans", "frl", "avo", "spc", "rth", "eck", "low", "ife", "ath", "oon", "ece", "ock", "ste", "rld", "nst", "gal", "ama", "mid", "ape", "gar", "ong", "das", "nti", "nto", "nin", "gro", "oup", "gha", "rop", "let", "ail", "ina", "ago", "gog", "gon", "ora", "rae", "uti", "pha", "ree", "eed", "gua", "gue", "ah", "hem", "msa", "crc", "maa", "AI", "Ai", "ai", "iai", "IDS", "ret", "tte", "ido", "ron", "ils", "ims", "N'T", "n't", "INT", "N\u2019T", "n\u2019t", "oli", "rne", "ake", "ush", "bus", "rew", "ped", "rce", "gun", "ier", "ily", "fts", "ike", "ick", "rip", "irt", "way", "iry", "sle", "les", "jar", "ken", "kha", "ten", "mbo", "kin", "kka", "kko", "aku", "al", "ala", "LA.", "la.", "lae", "arm", "rms", "rum", "las", "ska", "kan", "rim", "alb", "edo", "eit", "ino", "org", "uca", "nea", "bum", "ums", "lde", "ton", "zar", "hol", "fly", "nly", "met", "ale", "lee", "oof", "lep", "eph", "ppo", "xic", "lfa", "sco", "lga", "gae", "lla", "oba", "aic", "gin", "uin", "thm", "hms", "cen", "ibi", "dad", "ien", "nee", "nor", "hts", "ign", "uot", "ots", "lir", "yah", "rin", "ali", "net", "ran", "lky", "kyd", "kyl", "yne", "All", "oic", "ois", "lay", "yed", "yer", "ege", "tto", "rph", "nde", "rgy", "ley", "eys", "ays", "ows", "eae", "uth", "amy", "eic", "nol", "aur", "lot", "ope", "opy", "wed", "loy", "ude", "lyl", "nac", "cks", "acs", "hty", "lms", "loe", "oft", "oha", "cic", "oud", "alp", "lam", "ady", "lso", "alt", "tar", "ars", "aea", "hea", "ugh", "imo", "lto", "uli", "ati", "num", "mna", "nae", "mni", "AM", "Am", "am", "vat", "mah", "gam", "lle", "hly", "urs", "ulu", "dor", "ell", "ris", "bit", "pia", "yna", "cra", "amd", "eba", "bae", "ban", "eer", "eal", "oea", "ind", "yst", "mex", "ips", "igo", "mir", "iss", "mmo", "iac", "nio", "MNT", "mnt", "mok", "mon", "gst", "mor", "tti", "our", "xil", "moy", "and", "ole", "oly", "rpa", "idy", "oxi", "xus", "yle", "ena", "uma", "ply", "ule", "pul", "uck", "mun", "usd", "myl", "An", "an", "hon", "yph", "oge", "cta", "mma", "log", "ogs", "yse", "yze", "rox", "sid", "rna", "rca", "pid", "mat", "phe", "ema", "ovy", "usa", "con", "And", "nte", "eny", "yny", "inx", "hyl", "new", "ang", "gel", "lim", "que", "els", "erm", "gle", "sea", "cum", "gry", "rom", "ibo", "nga", "nil", "ima", "als", "ime", "mus", "kle", "kus", "nna", "nam", "ese", "tos", "dan", "nex", "exe", "noy", "oys", "lry", "nul", "nwn", "ano", "noa", "ops", "ryx", "mie", "on.", "rak", "ova", "npu", "wer", "nta", "tae", "iya", "kya", "pex", "ird", "ixa", "tem", "ior", "rly", "lix", "ill", "rax", "agy", "eid", "ebt", "rug", "aud", "oes", "gan", "rty", "ook", "fic", "tax", "war", "yon", "max", "eze", "uan", "ero", "sar", "uon", "lel", "cle", "sto", "nel", "oal", "ank", "agi", "ype", "ymy", "tra", "tsy", "erp", "ety", "Any", "how", "rta", "ana", "par", "art", "apc", "per", "rcu", "tif", "pes", "hit", "kia", "kic", "hid", "his", "pse", "hal", "yme", "gee", "une", "egm", "exy", "asy", "app", "pal", "lls", "hik", "rel", "dix", "uds", "pro", "ox.", "apr", "PR.", "pr.", "cot", "ril", "pos", "PT.", "pt.", "qua", "uae", "ung", "fer", "ar", "rab", "ida", "hoe", "iba", "ava", "arb", "eta", "arc", "cos", "rch", "hop", "san", "uke", "ked", "rco", "rcs", "sec", "iid", "rda", "deb", "ARE", "Are", "eas", "eca", "nas", "ENT", "gil", "nne", "osy", "got", "uer", "ufy", "yll", "rod", "ara", "tta", "oso", "sen", "hth", "sta", "rat", "ats", "pak", "IZ.", "iz.", "ona", "RK.", "rk.", "sas", "llo", "ful", "ury", "pit", "rmy", "rng", "uet", "nge", "ras", "rci", "row", "ith", "oyo", "tel", "oke", "tio", "akh", "tsd", "ork", "rui", "yan", "As", "as", "dha", "sap", "cca", "sat", "sci", "cii", "iad", "ibe", "bes", "Ash", "bin", "hir", "azi", "zim", "eth", "shy", "ask", "kew", "sks", "asl", "eep", "asp", "pen", "lli", "del", "pis", "ASQ", "asq", "gai", "say", "ais", "set", "ets", "gns", "OC.", "oc.", "ume", "isk", "ern", "hma", "lbe", "tir", "abe", "sur", "At", "at", "pan", "axy", "atf", "har", "eum", "nai", "dyd", "ilt", "van", "atm", "oll", "oms", "top", "atp", "apa", "mpt", "dee", "lio", "ney", "au", "rge", "auc", "dio", "aug", "UG.", "ug.", "gur", "auk", "uld", "aum", "tie", "nty", "rar", "rei", "chs", "sie", "rky", "uto", "ahn", "cue", "iro", "phs", "yro", "psy", "oph", "ypy", "umn", "VE.", "ve.", "nue", "rix", "vid", "una", "cet", "uch", "vow", "wal", "lse", "Aw", "aw", "ait", "kes", "awe", "igh", "eel", "awl", "awn", "wny", "wol", "wry", "Aww", "aww", "ax", "axe", "iom", "xle", "otl", "xon", "lah", "yin", "tam", "azo", "azt", "gos", "b.", ".C.", ".c.", "b/c", "b4", "ba", "baa", "ssu", "itt", "bel", "bka", "boo", "abu", "hka", "sit", "alk", "hii", "ccy", "lor", "eat", "nch", "hat", "oth", "oor", "own", "saw", "lap", "tay", "tch", "kup", "ods", "tat", "bad", "die", "eda", "fle", "bag", "sse", "ggy", "ipe", "ags", "hai", "mas", "asa", "aht", "iff", "iki", "irn", "isa", "iza", "ika", "ald", "ldr", "ldy", "een", "lks", "lad", "lup", "hoo", "oed", "rag", "alm", "lmy", "lsa", "sam", "chi", "Bam", "bam", "zle", "box", "dth", "ndy", "leg", "rry", "gla", "shi", "ngs", "njo", "tcy", "nks", "nns", "hee", "hie", "eng", "ntu", "zai", "bab", "bap", "bar", "uki", "rbu", "uda", "rde", "arf", "rks", "arn", "uta", "ndi", "ren", "rio", "rye", "nji", "sil", "eis", "ket", "ssi", "sso", "rdy", "uco", "owl", "hos", "ths", "tub", "yal", "tik", "dei", "tle", "eax", "tue", "tty", "ulk", "bee", "awd", "dry", "wdy", "bay", "yat", "col", "kal", "you", "oka", "bbl", "bc", "CCI", "cci", "bce", "coz", "be", "eak", "nie", "cat", "nik", "uty", "bop", "mel", "kon", "amn", "aub", "bug", "dew", "dim", "zen", "den", "eds", "raw", "ech", "nut", "eef", "alo", "fed", "efy", "bub", "eps", "wax", "eet", "len", "fit", "fog", "ool", "beg", "get", "ild", "egs", "gum", "alf", "lds", "ige", "rut", "wel", "lau", "lch", "dam", "fry", "lie", "ief", "efs", "boy", "ull", "elt", "uga", "ben", "ryl", "day", "opa", "nni", "umb", "zol", "zyl", "eft", "mot", "eri", "rit", "erk", "roe", "eem", "som", "sot", "pot", "tow", "hel", "ink", "ixt", "vel", "vvy", "evy", "zel", "ita", "kti", "bi", "bib", "hec", "cae", "vex", "bid", "ddy", "det", "fid", "big", "eye", "wig", "jou", "oux", "lbo", "lby", "lge", "lgy", "mbi", "ilk", "owy", "lyo", "yoh", "mli", "ngo", "nse", "aty", "ota", "pon", "zan", "irl", "rle", "irr", "yas", "pry", "kek", "sau", "tro", "map", "tok", "uac", "kly", "biz", "rre", "bja", "BJP", "bjp", "bjs", "lab", "bby", "abs", "cap", "iar", "anc", "oel", "isc", "off", "lat", "zon", "leb", "nny", "asm", "leu", "lew", "imp", "ntz", "tze", "iny", "lip", "itz", "ieg", "lob", "loc", "cky", "eaf", "hot", "job", "wsy", "ube", "wup", "wzy", "blt", "lub", "lue", "fin", "uff", "ffs", "uss", "lur", "urb", "urt", "mdo", "bmi", "bmr", "bns", "boa", "oar", "bob", "xer", "cce", "cie", "bod", "tva", "ega", "ehm", "oer", "euf", "ffo", "bog", "gey", "gie", "hme", "bok", "kos", "aal", "nci", "eti", "var", "olo", "vik", "lti", "bie", "mbs", "nza", "rte", "bon", "duc", "ito", "onk", "sai", "xie", "oob", "obs", "oby", "kie", "oks", "elf", "rap", "oty", "oze", "ozy", "gmi", "dom", "ghs", "sch", "cht", "rsh", "hch", "sht", "zoi", "osc", "osh", "sky", "ssy", "sun", "rgo", "tox", "nan", "ffe", "lon", "uts", "bow", "not", "wls", "wse", "car", "oxy", "ott", "tts", "ozo", "bph", "bpi", "bpm", "bps", "br", "cio", "aky", "nap", "zil", "kax", "wns", "aks", "ezy", "gma", "eiz", "vet", "pub", "ews", "iln", "rig", "IG.", "ig.", "jal", "erg", "onc", "nco", "nze", "nzy", "och", "ham", "aha", "gem", "mmy", "nei", "unn", "hup", "usk", "BSE", "bse", "bst", "btu", "BTW", "btw", "jet", "ubo", "sti", "roo", "eya", "cko", "bud", "eia", "gah", "fet", "ufo", "ugs", "uhl", "dup", "ulb", "bil", "lbs", "bul", "hur", "dog", "rog", "umf", "ump", "mph", "mps", "mpy", "bun", "mbe", "unk", "nko", "kum", "uoy", "bur", "urg", "rgh", "goo", "rka", "rke", "url", "rma", "rnt", "nup", "urp", "rps", "rqa", "urr", "rro", "rsa", "sby", "tit", "usy", "But", "utt", "cup", "fat", "tut", "xom", "mly", "buy", "uyi", "uys", "bvd", "bwr", "By", "by", "law", "yre", "sus", "C$", "c$", "c.", "CA", "Ca", "ca", "cab", "bal", "abg", "cao", "tua", "het", "hou", "kel", "dyl", "cti", "cad", "dre", "cei", "afe", "fes", "aff", "fre", "CAI", "Cai", "cai", "ami", "oya", "uya", "dar", "bre", "ico", "IF.", "if.", "iph", "dra", "pac", "lpe", "mny", "alx", "lyx", "pox", "meo", "amo", "pus", "CAN", "Can", "aan", "cel", "ela", "uft", "bis", "oni", "NOT", "noe", "ANT", "upe", "vas", "ouc", "zie", "piz", "apo", "fig", "aps", "put", "bao", "cul", "cha", "rai", "nyl", "xyl", "mom", "mum", "zem", "bou", "los", "uba", "rny", "rob", "ols", "tid", "sel", "pel", "pet", "rpi", "izo", "rot", "rve", "ven", "bah", "hew", "nos", "iri", "ato", "lpa", "ufa", "rrh", "chu", "rem", "aul", "gut", "hay", "nip", "sup", "dex", "vum", "avy", "caw", "cay", "cbc", "cbr", "cc", "cd", "CDC", "cdc", "dna", "cds", "cdt", "ce", "edi", "idh", "rex", "xib", "lom", "tas", "imi", "uge", "ceo", "eos", "dus", "vix", "ewa", "cf", "cfc", "cfo", "ftr", "cgs", "cma", "had", "ffy", "aga", "gga", "hta", "aja", "aza", "zae", "utz", "gne", "kah", "oyu", "tey", "aos", "hap", "iot", "arr", "gra", "haw", "nim", "eap", "eek", "eks", "eky", "esy", "tah", "hef", "kov", "lpo", "rub", "bim", "vre", "ewy", "uro", "smi", "pea", "fon", "tai", "goe", "ili", "zee", "gpo", "tzy", "ppy", "irk", "irp", "rpy", "rup", "nau", "lev", "hiv", "ivy", "chk", "mys", "cil", "yma", "fos", "hoc", "key", "oky", "omp", "sey", "hub", "hug", "hum", "nky", "zpa", "pah", "CIA", "iao", "bei", "beo", "cim", "lex", "rri", "vic", "cjd", "gor", "aro", "vus", "aws", "yey", "lef", "egg", "lem", "epe", "isy", "vis", "cli", "imb", "ilm", "lit", "oak", "lod", "lop", "eup", "udy", "ubs", "msy", "pei", "cm", "cmb", "mbr", "cmv", "sos", "npz", "cns", "co", "-op", "CO.", "Co.", "co.", "oax", "cob", "bol", "web", "cyx", "iel", "too", "yfy", "pur", "oco", "coa", "yam", "cod", "oda", "uri", "fee", "cog", "oho", "oif", "OL.", "ol.", "uia", "quy", "LO.", "lo.", "ugo", "mns", "lza", "mae", "edy", "rey", "mfy", "iat", "lth", "ros", "xly", "rti", "rto", "hae", "oct", "dat", "cur", "emn", "oga", "fab", "rva", "vae", "lux", "gii", "gou", "iva", "ror", "onn", "NN.", "nn.", "cut", "sul", "ext", "xts", "nua", "nuo", "uum", "rsy", "vey", "yor", "voy", "coo", "oop", "cop", "pra", "tep", "roy", "rgi", "rib", "mut", "rnu", "orp", "RP.", "rp.", "tef", "tex", "tez", "vee", "ymb", "aei", "yza", "mea", "rni", "ULD", "DNT", "dnt", "\u2019VE", "\u2019ve", "DVE", "dve", "spy", "olk", "cow", "erd", "pie", "cox", "oxa", "xae", "coy", "yol", "ypu", "cpa", "cpi", "cpr", "cps", "cpu", "fty", "wly", "azy", "re8", "ups", "hak", "epy", "wet", "ibs", "isp", "sms", "cro", "upy", "owd", "wds", "crp", "crt", "rud", "uel", "mby", "rux", "cry", "ypt", "nad", "cse", "cst", "CT.", "Ct.", "ct.", "ctc", "cub", "beb", "koo", "cud", "ulm", "pae", "uat", "ppa", "sow", "few", "osa", "rls", "rvy", "usp", "cuz", "cva", "cwm", "cwt", "sex", "dea", "mru", "mry", "ulf", "pre", "tol", "tza", "vak", "DAY", "Day", "d.", ".a.", "da", "dab", "dil", "fla", "dag", "dah", "ahl", "hna", "mey", "mio", "dak", "asi", "mar", "nit", "zig", "dap", "raf", "RES", "SNT", "snt", "von", "DAS", "Das", "daw", "wah", "db", "dba", "bms", "ccp", "dci", "ddc", "ddi", "ddt", "de", "cto", "fen", "bts", "dec", "EC.", "ec.", "caf", "dua", "eco", "cor", "ems", "cit", "EL.", "el.", "lft", "eli", "lta", "uxe", "sne", "god", "ohn", "emo", "mob", "mur", "rii", "pth", "rby", "mis", "erv", "esk", "flp", "awa", "oti", "dem", "iam", "agm", "pir", "iaz", "pam", "dib", "buk", "kim", "cey", "DID", "Did", "iet", "dig", "git", "igs", "ldo", "wit", "ghy", "ngy", "iol", "dip", "ych", "ndl", "dis", "scs", "vor", "may", "sfy", "ich", "til", "amb", "cee", "vot", "wan", "zzy", "dj", "dkg", "dkl", "dkm", "dl", "dmd", "dmz", "DO", "Do", "do", "doc", "dod", "dgy", "odo", "doe", "oei", "OES", "ggo", "doh", "doi", "in'", "doj", "ojc", "lce", "bas", "ske", "jon", "ONT", "fus", "nob", "pey", "ski", "dot", "ubt", "rah", "yen", "OZ.", "oz.", "dph", "prk", "DR.", "Dr.", "dr.", "chm", "lug", "wee", "amt", "reg", "zly", "hky", "yad", "dsl", "dts", "uad", "dub", "bya", "yuh", "dud", "due", "fel", "dug", "dui", "uly", "dun", "duo", "omo", "dii", "zzo", "rra", "nbe", "mop", "tup", "dvd", "rfs", "eeb", "dye", "yes", "yke", ".G.", ".g.", "gre", "arl", "ebb", "bbs", "tda", "ebn", "ebv", "ecc", "ccm", "ecf", "ecg", "ecm", "soc", "cru", "edd", "ddo", "edp", "nax", "edt", "dta", "eec", "eeg", "eff", "igy", "EG.", "eg.", "nog", "ggs", "ego", "gtk", "ehf", "eib", "tvo", "fod", "dau", "ekg", "El", "el", "egy", "emi", "xir", "elk", "lul", "elm", "eln", "em", "ryo", "yos", "mda", "emf", "emg", "yee", "pty", "emu", "tea", "dow", "lut", "lfs", "joy", "enl", "nui", "sue", "lpy", "tsi", "nom", "voi", "nvy", "vys", "epa", "pee", "hah", "ori", "epi", "iod", "eq", "uid", "nox", "uip", "er", "err", "rrs", "atz", "udo", "esm", "sop", "esp", "SPN", "spn", "esq", "SQ.", "sq.", "mau", "esr", "etc", "tc.", "etd", "etf", "lac", "tui", "pti", "hre", "hmy", "ipi", "ev", "uee", "enk", "ew", "nki", "ex", "xam", "rpt", "xec", "ecs", "pla", "xit", "pat", "xpo", "yra", "rir", "yry", "ezo", "fa", "faa", "iau", "fad", "fae", "fag", "kir", "lal", "pio", "fan", "fao", "faq", "qir", "uir", "lek", "aso", "hom", "tso", "twa", "aun", "uil", "fav", "fax", "fay", "FBI", "fbi", "fcc", "fcs", "fda", "fdr", "feb", "EB.", "eb.", "joa", "eud", "fey", "fez", "fha", "lmc", "fib", "ifo", "fth", "gs.", "iji", "pun", "tip", "hio", "fir", "gig", "izz", "lag", "gyl", "lak", "vin", "lax", "ecy", "xor", "lnc", "nt.", "flu", "uky", "mox", "uor", "wat", "mri", "nma", "fo", "oam", "fob", "oci", "foe", "ehn", "ksy", "ndu", "pad", "fop", "For", "for", "now", "paw", "run", "uns", "mol", "nix", "taz", "yml", "vea", "fox", "fpd", "fps", "fr", "cas", "ppe", "rau", "uen", "yja", "eyr", "frg", "fri", "RI.", "ri.", "jol", "vol", "uzy", "fsb", "fsh", "ft", "FT.", "Ft.", "ft.", "ftc", "fto", "ftp", "ftw", "uci", "fud", "fug", "ugu", "fil", "fun", "ngi", "nka", "qra", "fur", "rze", "uze", "fws", ".i.", "GA.", "Ga.", "ga.", "aap", "gab", "bro", "gad", "afi", "gag", "aia", "AL.", "al.", "mba", "nef", "esa", "sha", "nja", "nof", "gao", "aol", "gap", "nzo", "sps", "gat", "awk", "wky", "awp", "gay", "ebo", "gbp", "gca", "gdp", "EN.", "en.", "rme", "enf", "nii", "ipa", "pap", "nre", "enu", "nuk", "gaw", "ghb", "ghq", "hrf", "ghz", "gi", "gib", "rtz", "kry", "nep", "gko", "ymi", "kgo", "gip", "smo", "zeh", "zmo", "ebe", "lib", "ogg", "uey", "tei", "gm", "gmt", "nat", "naw", "gnp", "gnu", "GO", "Go", "go", "gob", "ogh", "wog", "rha", "nif", "dby", "oey", "ofs", "ofy", "gol", "gop", "cea", "rki", "kiy", "sip", "ipy", "OV.", "ov.", "goy", "yim", "gp", "gpa", "gps", "gr8", "iti", "dma", "dpa", "gri", "imy", "ael", "rok", "osz", "szy", "hog", "wth", "nyy", "gru", "gsa", "gsr", "gu", "enz", "aco", "uar", "eza", "faw", "gui", "uib", "mpe", "ulp", "lps", "uru", "guy", "yot", "ybe", "gym", "gyp", "yri", "ywn", "ha", "HA.", "Ha.", "ha.", "cuc", "cek", "HAD", "Had", "adj", "jes", "dji", "aem", "hag", "ifa", "aik", "iku", "rdo", "haj", "aji", "ajj", "jji", "euz", "aka", "eru", "jah", "loo", "lma", "toe", "api", "ewn", "hao", "jan", "rpo", "HAS", "Has", "uls", "AVE", "voc", "aii", "wks", "yns", "mow", "yti", "hcg", "hdl", "dtv", "HE", "He", "he", "E'D", "e'd", "E'S", "e's", "mad", "yli", "HED", "Hed", "jaz", "ehe", "llr", "eir", "elp", "emp", "dys", "hep", "tad", "Her", "ERE", "eby", "eof", "eto", "\u2019RE", "\u2019re", "E\u2019S", "e\u2019s", "mai", "ann", "HES", "Hes", "dox", "EVE", "hex", "xad", "Hey", "hey", "E\u2019D", "e\u2019d", "\u2019LL", "\u2019ll", "hfc", "hhs", "hi", "jab", "him", "doo", "gth", "mpi", "His", "hm", "hmo", "hnd", "ho", "zin", "hob", "hoy", "hod", "odr", "dur", "loa", "ON.", "poe", "poo", "gow", "peh", "thr", "tot", "HOW", "How", "W'D", "w'd", "W'S", "w's", "WLL", "wll", "WRE", "wre", "OWS", "W\u2019D", "w\u2019d", "W\u2019S", "w\u2019s", "hr", "hrs", "hrt", "tml", "ttp", "hua", "pai", "hud", "hue", "uji", "hun", "ayn", "hut", "gea", "cly", "eik", "ymn", "ypo", "I", "i", "I'D", "I'd", "i'd", "M'A", "m'a", ".E.", ".e.", "iaa", "IAF", "iaf", "IAM", "Iam", "nfu", "bex", "brd", "cbm", "icc", "CMR", "cmr", "csh", "icu", "icy", "id", "ddm", "idf", "ocy", "idp", "ie", "IE.", "ie.", "EEE", "eee", "If", "if", "ifc", "iga", "gbo", "igd", "igg", "glu", "igm", "IIT", "iit", "LL.", "ll.", "ilx", "lxx", "xxx", "mam", "bue", "tur", "ptu", "ugn", "imu", "In", "in", "IN.", "In.", "in.", "INC", "inc", "NC.", "nc.", "nso", "ubi", "ND.", "nd.", "dri", "rct", "rno", "mab", "nfo", "fra", "jun", "nla", "inn", "inr", "gli", "mwe", "com", "zzi", "gna", "iew", "iou", "cac", "ipo", "raq", "aqi", "CTC", "ysh", "IS", "Is", "is", "zid", "hmi", "IT", "It", "it", "T'D", "t'd", "T'S", "t's", "ITD", "Itd", "itd", "TLL", "tll", "LVE", "Its", "T\u2019D", "t\u2019d", "T\u2019S", "t\u2019s", "iud", "IVE", "Ive", "yar", "\u2019AM", "\u2019am", "I\u2019D", "I\u2019d", "i\u2019d", "M\u2019A", "m\u2019a", "iru", "oos", "jag", "weh", "jak", "eno", "jam", "AN.", "an.", "jaw", "azz", "vah", "jem", "jew", "jfk", "hvh", "jib", "dda", "jig", "adi", "qui", "tsu", "jnd", "jnr", "jo", "jog", "OS.", "os.", "jot", "pop", "JR.", "Jr.", "jr.", "jra", "rez", "jug", "lav", "ija", "uju", "jul", "UL.", "ul.", "UN.", "un.", "jus", "jut", "k", "koy", "yeh", "uwa", "lif", "lka", "muc", "eez", "naf", "NS.", "ns.", "nsu", "nzu", "aon", "pok", "uka", "kul", "kat", "yak", "ayo", "zoo", "kb", "kbo", "kea", "keb", "tab", "keg", "dya", "nya", "kg", "kgb", "afy", "fah", "kiv", "khi", "hiz", "hoi", "oum", "ufu", "khz", "aat", "kib", "kid", "uhr", "iev", "iwi", "ilo", "ono", "kip", "giz", "hke", "kit", "tul", "kkk", "tho", "km", "KN.", "Kn.", "kn.", "fia", "o'd", "kob", "avn", "ohl", "abi", "hoz", "oln", "kri", "oye", "pek", "yka", "pje", "kor", "zko", "oto", "dou", "vna", "vno", "kph", "tao", "toa", "kau", "kow", "nen", "nur", "udu", "dzu", "lun", "aam", "asz", "wai", "KY.", "Ky.", "ky.", "La.", "bda", "edh", "nsa", "seh", "lao", "ynx", "sek", "sik", "six", "tke", "atu", "abo", "yby", "yup", "zio", "lb", "LB.", "Lb.", "lb.", "lbj", "lcd", "lcm", "ldl", "hwe", "oek", "lei", "poa", "tiv", "rys", "pta", "vos", "LET", "Let", "eva", "evi", "ewd", "lgb", "lgv", "uva", "iii", "eni", "urf", "imn", "mpa", "tim", "itu", "liv", "LL", "ll", "llb", "lld", "llm", "LP.", "lp.", "lud", "mao", "oaf", "ogo", "rdi", "gyi", "ofa", "lox", "zal", "lpn", "lsd", "LT.", "Lt.", "lt.", "TD.", "td.", "ltm", "TTE", "uau", "ffa", "uik", "uny", "urk", "wei", "lye", "ma", "mac", "cau", "zor", "osm", "hla", "sah", "tri", "afa", "osi", "mag", "ilp", "zag", "tma", "ahi", "koa", "jor", "mak", "iak", "ako", "awi", "leo", "lik", "mee", "ioc", "oca", "anx", "aoi", "AR.", "ar.", "sca", "vsa", "kaa", "roc", "uis", "tyr", "yrs", "umi", "upa", "jid", "qat", "SS.", "ss.", "sif", "sib", "zah", "tzo", "zoh", "uve", "maw", "axi", "MAY", "May", "YNT", "ynt", "YVE", "yve", "mbd", "mcg", "MCX", "mcx", "MD.", "Md.", "md.", "mdi", "div", "mdt", "me", "vac", "meg", "mei", "mek", "mem", "hib", "eev", "nsh", "rua", "eow", "meq", "rcy", "erl", "gge", "neh", "RS.", "rs.", "roi", "oia", "rsi", "eor", "mew", "ewl", "uza", "mfa", "mg", "MT.", "mt.", "mho", "mhz", "MI.", "Mi.", "mi.", "aou", "aow", "mib", "CH.", "ch.", "idi", "rif", "dst", "GHT", "TNT", "tnt", "TVE", "tve", "maq", "mil", "nah", "sub", "lsy", "sdo", "iso", "ppi", "hra", "erz", "mko", "ml", "mm", "mo", "MO.", "Mo.", "mo.", "moa", "mod", "hul", "gul", "ojo", "ksa", "usc", "omi", "NT.", "moo", "cco", "igu", "hav", "vim", "tet", "ifs", "oue", "jik", "vie", "mp", "peg", "MR.", "Mr.", "mr.", "mrd", "MS.", "Ms.", "ms.", "msb", "msc", "msg", "msh", "mst", "Mt.", "mud", "hif", "sli", "fti", "mug", "taa", "lct", "lwi", "unj", "juk", "jac", "goi", "nud", "UST", "agh", "sth", "muu", "mv", "mvp", "My", "my", "myg", "mym", "yth", "AK.", "ak.", ".H.", ".h.", ".J.", ".j.", "EX.", "ex.", ".Y.", ".y.", "00b", "Na", "na", "nab", "dir", "fta", "nag", "aif", "ajd", "eko", "aru", "syn", "apu", "leh", "DAQ", "daq", "aho", "ajo", "wab", "pns", "nay", "\xEFve", "et\xE9", "NBA", "nba", "nbw", "DEX", "nd", "NDA", "ne", "neb", "iim", "BR.", "br.", "nec", "EED", "neo", "ett", "pil", "EV.", "ev.", "New", "ewt", "NFL", "nfl", "ng", "ngb", "ngf", "ngu", "NHL", "nhl", "nib", "nih", "nij", "sag", "ipr", "qab", "isi", "iue", "nlp", "lrb", "nm", "nmr", "nnw", "No", "no", "NO.", "No.", "no.", "oaa", "noc", "nod", "odi", "asc", "toc", "Not", "nov", "Now", "ooz", "ruz", "npa", "npc", "nra", "nrc", "nrl", "nro", "nsc", "NSE", "nsf", "nsw", "swc", "NT", "nt", "nub", "nun", "uwc", "wbn", "wbw", "hau", "pho", "ypa", "NZ", "nz", "OCK", ".k.", "oas", "eah", "obi", "boe", "opi", "odd", "kar", "Of", "of", "fal", "Oh", "oh", "oig", "ok", "kay", "keh", "oki", "kra", "bos", "olm", "mbu", "On", "on", "One", "nyx", "ooh", "pcw", "pec", "opv", "Or", "or", "RE.", "re.", "reo", "olu", "uzd", "rzo", "os", "SHA", "nli", "otc", "Our", "tdo", "tgo", "uzo", "pay", "sew", "owe", "wes", "wlt", "ox", "Oz.", "PA.", "Pa.", "pa.", "bir", "ouk", "PAF", "paf", "lpi", "pas", "yet", "nsy", "pua", "uay", "esi", "rga", "iah", "rvo", "seo", "htu", "tun", "sim", "tka", "pax", "xto", "aye", "pb", "pbs", "pc", "pcp", "pcs", "pct", "pda", "pdl", "pdt", "eag", "eke", "koe", "hle", "pep", "phi", "eso", "eul", "pew", "alz", "pfc", "nig", "PGA", "pga", "ph", "phd", "gmy", "oem", "ysa", "pi", "zza", "pib", "pig", "pij", "laf", "pip", "nha", "ogi", "hki", "cam", "pix", "xel", "ixy", "zas", "zaz", "pkd", "pku", "plf", "plo", "oce", "pls", "umy", "plz", "pm", "vax", "pob", "oet", "poi", "ilu", "tou", "pol", "kas", "lyp", "ypi", "pom", "elo", "fex", "jay", "orc", "oro", "TUS", "ouf", "ufs", "pow", "wow", "PP.", "pp.", "ppk", "ppp", "pr", "blm", "PRC", "prc", "cis", "rep", "vue", "prn", "rof", "OF.", "of.", "pyl", "zac", "prs", "uno", "psa", "psf", "psi", "pst", "yop", "pt", "Pt.", "pto", "TY.", "ty.", "cka", "pud", "pug", "uku", "pup", "pva", "pvc", "pwr", "pya", "hny", "pyx", "qcd", "qed", "piq", "QT.", "Qt.", "qt.", "uag", "eue", "unc", "ipu", "uiz", ".I.", "bbi", "RAF", "tag", "aiu", "raj", "egh", "RAM", "Ram", "rbc", "rbi", "cmp", "RD.", "Rd.", "rd.", "RE", "Re", "re", "reb", "dux", "ref", "evo", "EP.", "ep.", "epp", "PS.", "ps.", "rev", "rfd", "rhd", "rho", "rac", "it.", "deo", "ofl", "tfl", "rpm", "Rs.", "rt", "tlt", "uby", "udd", "ruf", "gby", "rv", "rya", "SA", "sa", "sac", "wea", "sad", "dhu", "dhe", "qis", "lai", "lmi", "lvo", "ekh", "naa", "dhi", "Sao", "sao", "fem", "AT.", "at.", "ucy", "udi", "awm", "sba", "sbe", "sbw", "sc", "cag", "wag", "mpo", "aup", "scd", "eol", "rzi", "ltz", "lzy", "pps", "orr", "noz", "orl", "ckl", "ikl", "uln", "hwa", "rhi", "clk", "cnt", "sox", "cpo", "csi", "lpt", "rfy", "se", "seb", "gni", "gno", "aig", "lva", "usi", "sep", "erf", "gml", "GT.", "gt.", "Sha", "LNT", "lnt", "llu", "shd", "SHE", "She", "she", "etz", "ikh", "lfy", "lvy", "shf", "kse", "oji", "iek", "uha", "si", "byl", "geh", "loi", "sir", "irc", "soo", "xth", "xty", "kag", "kaw", "kep", "lje", "kua", "sko", "mog", "sgt", "afu", "snp", "nug", "SO", "So", "so", "oap", "sob", "sod", "oku", "soh", "oja", "ldi", "ggi", "por", "gho", "sou", "nir", "soy", "spa", "pag", "spf", "pik", "iky", "piv", "pue", "uab", "uaw", "kss", "SR.", "Sr.", "sr.", "Sri", "sri", "spe", "ssw", "ST.", "St.", "st.", "cte", "std", "TE.", "te.", "tew", "stm", "oae", "tob", "oep", "stp", "tud", "tye", "aed", "dsy", "ufi", "ugi", "myd", "lci", "dac", "umo", "suv", "lte", "svr", "wad", "wap", "wbs", "wim", "wiz", "wob", "wop", "wot", "lph", "ync", "hro", "ncs", "ygy", "S\xE3o", "s\xE3o", "hac", "ahe", "alc", "lcs", "win", "rao", "bac", "rik", "tap", "ufe", "tau", "tog", "taw", "axa", "cef", "tb", "SP.", "sp.", "tce", "tcp", "tdt", "te", "tec", "hno", "teg", "egu", "eju", "kki", "lco", "jin", "nno", "rec", "xan", "xas", "th", "weg", "muz", "HAT", "ATD", "atd", "TRE", "ATS", "thb", "thc", "thd", "THE", "The", "RED", "ELL", "ESE", "HEY", "Y'D", "y'd", "YLL", "YRE", "Y\u2019D", "y\u2019d", "HIS", "S'S", "s's", "ISS", "S\u2019S", "s\u2019s", "hnx", "OSE", "hru", "thu", "HU.", "hu.", "thx", "thz", "tib", "tac", "Tim", "ucu", "mou", "isu", "tko", "tlc", "tm", "tmv", "tnf", "tnx", "To", "to", "tod", "ofu", "toi", "kio", "bak", "om\xE9", "paz", "rsk", "rso", "HER", "toy", "tpn", "rek", "trf", "trh", "trm", "tsa", "tse", "tsh", "tsk", "tss", "UE.", "ue.", "tug", "guz", "cou", "alu", "tux", "tv", "tvs", "Two", "two", "iyn", "yrr", "u", "UAE", "uh", "-uh", "uhf", "UK", "uk", "lna", "ici", "UN", "un", "unq", "zip", "up", "UPA", "UPS", "ygi", "US", "us", "US$", "us$", "USA", "SAF", "saf", "bek", "scb", "sda", "KUB", "kub", "SMC", "smc", "USN", "usn", "SPS", "SSR", "ssr", "SSS", "sss", "utc", "utn", "uub", "uuh", "uup", "uuq", "uut", "VA.", "Va.", "va.", "cua", "vag", "vcr", "crs", "vdu", "VE", "ve", "veg", "ldt", "rtu", "vfw", "vhf", "vii", "lno", "oxx", "vip", "sla", "vlf", "dka", "vox", "VS.", "Vs.", "vs.", "VT.", "Vt.", "vt.", "wa", "pum", "ahr", "mth", "WAS", "Was", "was", "SH.", "sh.", "waw", "wbc", "WE", "We", "we", "ED.", "ed.", "eka", "lsh", "wen", "HEN", "N'S", "n's", "ENS", "N\u2019S", "n\u2019s", "ICH", "H'S", "h's", "CHS", "H\u2019S", "h\u2019s", "WHO", "Who", "who", "O'D", "O'S", "o's", "HOM", "HOS", "OVE", "O\u2019D", "o\u2019d", "O\u2019S", "o\u2019s", "WHY", "Why", "why", "Y'S", "y's", "HYD", "hyd", "HYS", "hys", "Y\u2019S", "y\u2019s", "iup", "ifi", "wam", "ILL", "SC.", "sc.", "wmd", "wmo", "wnw", "WO", "Wo", "wo", "woe", "wok", "won", "woo", "ooo", "oow", "www", "woz", "wpm", "wsw", "wtc", "wtf", "tff", "fff", "wto", "wtv", "wye", "YO.", "yo.", "wyg", "xo", "oxo", "xyy", "Y", "y", "ya", "afo", "hve", "veh", "ltu", "yap", "lke", "byo", "yaw", "yay", "YD.", "Yd.", "yd.", "ye", "yea", "yep", "Yes", "ahs", "Yet", "yew", "hwh", "yib", "yid", "yip", "yob", "bbo", "odh", "YOU", "You", "U'D", "u'd", "OUD", "ULL", "URE", "UVE", "U\u2019D", "u\u2019d", "yr", "yum", "tig", "zap", "zdv", "ebu", "zep", "zey", "zib", "bwe", "zit", "ruk", "{", "}", "\xA3", "\xA5", "\xA9", "\xAE", "\u2013", "\u2014", "\u2018", "\u2019", "\u2019A", "\u2019a", "\u2019Am", "\u2019D", "\u2019d", "\u2019M", "\u2019m", "\u2019Re", "\u2019S", "\u2019s", "\u2019Y", "\u2019y", "\u201C", "\u201D", "\u2026", "\u20A8", "\u20A9", "\u20B9", "\u20BD", "\u20BF", "\u25B6", "\u2600", "\u2601", "\u2605", "\u2606", "\u2611", "\u2614", "\u2615", "\u261D", "\u262F", "\u2637", "\u263A", "\u2661", "\u2665", "\u2666", "\u266A", "\u266B", "\u26A0", "\u26A1", "\u26BD", "\u26C4", "\u26D4", "\u2708", "\u270A", "\u270B", "\u270C", "\u2713", "\u2714", "\u2716", "\u2728", "\u273F", "\u2744", "\u2757", "\u2764", "\u279C", "\u27A1", "\u2B50", "\u{1F1EA}", "\u{1F1F8}", "\u{1F1FA}", "\u{1F300}", "\u{1F308}", "\u{1F30A}", "\u{1F30D}", "\u{1F31A}", "\u{1F31E}", "\u{1F31F}", "\u{1F334}", "\u{1F337}", "\u{1F338}", "\u{1F339}", "\u{1F33A}", "\u{1F33B}", "\u{1F33C}", "\u{1F33F}", "\u{1F340}", "\u{1F341}", "\u{1F342}", "\u{1F343}", "\u{1F346}", "\u{1F349}", "\u{1F34C}", "\u{1F353}", "\u{1F354}", "\u{1F355}", "\u{1F35F}", "\u{1F366}", "\u{1F369}", "\u{1F36B}", "\u{1F370}", "\u{1F374}", "\u{1F377}", "\u{1F378}", "\u{1F379}", "\u{1F37A}", "\u{1F37B}", "\u{1F380}", "\u{1F381}", "\u{1F382}", "\u{1F383}", "\u{1F384}", "\u{1F385}", "\u{1F388}", "\u{1F389}", "\u{1F38A}", "\u{1F393}", "\u{1F3A4}", "\u{1F3A5}", "\u{1F3A7}", "\u{1F3AD}", "\u{1F3AE}", "\u{1F3B5}", "\u{1F3B6}", "\u{1F3B8}", "\u{1F3C0}", "\u{1F3C3}", "\u{1F3C6}", "\u{1F3C8}", "\u{1F3CA}", "\u{1F412}", "\u{1F413}", "\u{1F423}", "\u{1F425}", "\u{1F427}", "\u{1F42F}", "\u{1F431}", "\u{1F436}", "\u{1F437}", "\u{1F438}", "\u{1F43C}", "\u{1F43E}", "\u{1F440}", "\u{1F444}", "\u{1F445}", "\u{1F446}", "\u{1F447}", "\u{1F448}", "\u{1F449}", "\u{1F44A}", "\u{1F44B}", "\u{1F44C}", "\u{1F44D}", "\u{1F44E}", "\u{1F44F}", "\u{1F450}", "\u{1F451}", "\u{1F46B}", "\u{1F46C}", "\u{1F46D}", "\u{1F46F}", "\u{1F476}", "\u{1F478}", "\u{1F47B}", "\u{1F47C}", "\u{1F47D}", "\u{1F47E}", "\u{1F47F}", "\u{1F480}", "\u{1F481}", "\u{1F483}", "\u{1F484}", "\u{1F485}", "\u{1F486}", "\u{1F489}", "\u{1F48B}", "\u{1F48D}", "\u{1F48E}", "\u{1F48F}", "\u{1F490}", "\u{1F491}", "\u{1F493}", "\u{1F494}", "\u{1F495}", "\u{1F496}", "\u{1F497}", "\u{1F498}", "\u{1F499}", "\u{1F49A}", "\u{1F49B}", "\u{1F49C}", "\u{1F49D}", "\u{1F49E}", "\u{1F49F}", "\u{1F4A3}", "\u{1F4A4}", "\u{1F4A5}", "\u{1F4A6}", "\u{1F4A8}", "\u{1F4A9}", "\u{1F4AA}", "\u{1F4AB}", "\u{1F4AD}", "\u{1F4AF}", "\u{1F4B0}", "\u{1F4B8}", "\u{1F4D2}", "\u{1F4D6}", "\u{1F4DA}", "\u{1F4DD}", "\u{1F4F7}", "\u{1F51D}", "\u{1F525}", "\u{1F52A}", "\u{1F52B}", "\u{1F52E}", "\u{1F600}", "\u{1F601}", "\u{1F602}", "\u{1F603}", "\u{1F604}", "\u{1F605}", "\u{1F606}", "\u{1F607}", "\u{1F608}", "\u{1F609}", "\u{1F60A}", "\u{1F60B}", "\u{1F60C}", "\u{1F60D}", "\u{1F60E}", "\u{1F60F}", "\u{1F610}", "\u{1F611}", "\u{1F612}", "\u{1F613}", "\u{1F614}", "\u{1F615}", "\u{1F616}", "\u{1F618}", "\u{1F619}", "\u{1F61A}", "\u{1F61B}", "\u{1F61C}", "\u{1F61D}", "\u{1F61E}", "\u{1F61F}", "\u{1F620}", "\u{1F621}", "\u{1F622}", "\u{1F623}", "\u{1F624}", "\u{1F625}", "\u{1F627}", "\u{1F628}", "\u{1F629}", "\u{1F62A}", "\u{1F62B}", "\u{1F62C}", "\u{1F62D}", "\u{1F62E}", "\u{1F62F}", "\u{1F630}", "\u{1F631}", "\u{1F632}", "\u{1F633}", "\u{1F634}", "\u{1F635}", "\u{1F636}", "\u{1F637}", "\u{1F638}", "\u{1F639}", "\u{1F63B}", "\u{1F63D}", "\u{1F63F}", "\u{1F640}", "\u{1F645}", "\u{1F646}", "\u{1F647}", "\u{1F648}", "\u{1F649}", "\u{1F64A}", "\u{1F64B}", "\u{1F64C}", "\u{1F64F}", "\u{1F697}", "\u{1F6AB}", "\u{1F6AC}", "\u{1F6B6}"] }, shape: { list: ["$%^oov^%$", "\n", "\n\n", "\n\n\n", "\n\r", "!", '"', "$", "%", "&", "'", "'ddx", "'X", "'x", "'XXX", "'xxx", "'XX", "'xx", "'Xx", "(", "(-:", "(:", ")", ")-:", "):", ",", "-", "--", ".", "...", "/", "d", "d,ddd", "dd", "dd,ddd", "ddd", "dddd", "ddxx", "ddddx", "dxx", "ddx", ":", ":'(", ":'-(", ":(", ":((", ":)", ":))", ":)))", ":))))", ":)))))", ":))))))", ":)))))))", ":))))))))", ":)))))))))", ":))))))))))", ":*", ":-(", ":-((", ":-(((", ":-((((", ":-)", ":-))", ":-)))", ":-))))", ":-)))))", ":-))))))", ":-)))))))", ":-))))))))", ":-)))))))))", ":-*", ":-/", ":->", ":-?", ":-[", ":-]", ":-X", ":-x", ":-|", ":-}", ":/", ":[", ":\\", ":]", ":X", ":x", ":{", ":|", ":}", ";", ";(", ";)", ";))", ";)))", ";-(", ";-)", ";-X", "", ":-?", ":-[", ":-]", ":-D", ":-P", ":-p", ":-S", ":-|", ":-}", ":/", ":[", ":\\", ":]", ":D", ":P", ":p", ":S", ":{", ":|", ":}", ";", ";(", ";)", ";))", ";)))", ";-(", ";-)", ";-D", "<3", "<33", "<333", "<3333", "<33333", "<333333", "<3333333", "<33333333", "<333333333", "?", "[", "]", "`", "A", "a", "A$", "a$", "A-body", "a-body", "A-men", "a-men", "a.", "A.D.", "a.d.", "A.M.", "a.m.", "AA", "aa", "aaa", "AAAS", "aaas", "aah", "aahing", "aalii", "aar", "aardvark", "aardwolf", "aardwolves", "aarhus", "aarp", "aave", "ab", "aba", "abaca", "abaci", "abacinate", "aback", "abactinal", "abacus", "abaft", "abalone", "abamp", "abampere", "abandon", "abandoned", "abandoning", "abandonment", "abandons", "abarticulation", "abase", "abasement", "abash", "abashed", "abashment", "abasia", "abasic", "abatable", "abate", "abated", "abatement", "abates", "abatic", "abating", "abatis", "abator", "abattis", "abattoir", "abaxial", "abaxially", "abaya", "abb", "abbacy", "abbatial", "abbe", "abbess", "abbey", "abbot", "abbreviate", "abbreviated", "abbreviates", "abbreviating", "abbreviation", "abbreviations", "abbreviator", "abc", "abcoulomb", "abdias", "abdicable", "abdicate", "abdicates", "abdicating", "abdication", "abdicator", "abdomen", "abdominal", "abdominocentesis", "abdominoplasty", "abdominous", "abdominousness", "abdominovesical", "abduce", "abducens", "abducent", "abduct", "abducted", "abducting", "abduction", "abductions", "abductor", "abducts", "abeam", "abecedarian", "abecedarius", "abed", "abele", "abelia", "abelmosk", "abenaki", "aberdonian", "aberrance", "aberrancy", "aberrant", "aberrate", "aberration", "abet", "abetalipoproteinemia", "abetment", "abettal", "abetted", "abetter", "abetting", "abettor", "abeyance", "abeyant", "abfarad", "abhenry", "abhor", "abhorred", "abhorrence", "abhorrent", "abhorrer", "abhorring", "abhors", "abidance", "abide", "abides", "abiding", "abience", "abient", "abila", "abilities", "ability", "abiogenesis", "abiogenetic", "abiogenist", "abiotrophy", "abject", "abjection", "abjectly", "abjuration", "abjure", "abjured", "abjurer", "abjures", "abjuring", "abkhas", "abkhasian", "abkhaz", "abkhazia", "abkhazian", "ablactate", "ablactation", "ablate", "ablated", "ablates", "ablating", "ablation", "ablative", "ablaut", "ablaze", "able", "ableism", "ablepharia", "ablism", "abloom", "abls", "ablution", "ablutionary", "ably", "abm", "abnaki", "abnegate", "abnegation", "abnegator", "abnormal", "abnormalcy", "abnormalities", "abnormality", "abnormally", "aboard", "abocclusion", "abode", "abohm", "aboideau", "aboideaux", "aboiteau", "aboiteaux", "abolish", "abolishable", "abolished", "abolishes", "abolishing", "abolishment", "abolition", "abolitionary", "abolitionism", "abolitionist", "abomasal", "abomasum", "abominable", "abominably", "abominate", "abomination", "abominator", "abor", "aborad", "aboral", "aboriginal", "aborigine", "abort", "aborted", "aborticide", "abortifacient", "aborting", "abortion", "abortionist", "abortions", "abortive", "abortively", "aborts", "abortus", "aboulia", "aboulic", "abound", "abounded", "abounding", "abounds", "About", "about", "Above", "above", "aboveboard", "aboveground", "abracadabra", "abrachia", "abradant", "abrade", "abrader", "abrades", "abrading", "abranchial", "abranchiate", "abranchious", "abrase", "abrasion", "abrasive", "abrasiveness", "abreact", "abreaction", "abreast", "abridge", "abridged", "abridgement", "abridger", "abridges", "abridging", "abridgment", "abroach", "abroad", "abrocome", "abrogate", "abrogating", "abrogation", "abrogator", "abrupt", "abruption", "abruptly", "abruptness", "abscess", "abscessed", "abscise", "abscissa", "abscissae", "abscission", "abscond", "absconder", "absconding", "abscondment", "absconds", "abseil", "abseiler", "absence", "absences", "absent", "absentee", "absenteeism", "absentees", "absently", "absentminded", "absentmindedly", "absentmindedness", "absinth", "absinthe", "absolute", "absolutely", "absoluteness", "absolution", "absolutism", "absolutist", "absolutistic", "absolve", "absolved", "absolver", "absolves", "absolving", "absolvitory", "absorb", "absorbable", "absorbance", "absorbate", "absorbed", "absorbefacient", "absorbency", "absorbent", "absorber", "absorbers", "absorbing", "absorbs", "absorptance", "absorption", "absorptive", "absorptivity", "absquatulate", "abstain", "abstained", "abstainer", "abstaining", "abstains", "abstemious", "abstemiously", "abstemiousness", "abstention", "abstentious", "abstinence", "abstinent", "abstract", "abstracted", "abstractedly", "abstractedness", "abstracter", "abstracting", "abstraction", "abstractionism", "abstractionist", "abstractive", "abstractly", "abstractness", "abstractor", "abstracts", "abstruse", "abstrusely", "abstruseness", "abstrusity", "absurd", "absurdity", "absurdly", "absurdness", "abt", "abulia", "abulic", "abundance", "abundant", "abundantly", "abuse", "abused", "abuser", "abusers", "abuses", "abusing", "abusive", "abusively", "abut", "abutment", "abutted", "abutter", "abutting", "abuzz", "abvolt", "abwatt", "aby", "abye", "abyla", "abysm", "abysmal", "abysmally", "abyss", "abyssal", "abyssinia", "ac", "acacia", "academe", "academia", "academic", "academically", "academician", "academicianship", "academicism", "academics", "academism", "academy", "acantha", "acanthi", "acanthion", "acanthisittidae", "acanthocephalan", "acanthocyte", "acanthocytosis", "acanthoid", "acantholysis", "acanthoma", "acanthopterygian", "acanthosis", "acanthotic", "acanthous", "acanthus", "acapnia", "acapnial", "acapnic", "acapnotic", "acaracide", "acardia", "acari", "acariasis", "acaricide", "acarid", "acaridiasis", "acarine", "acariosis", "acarophobia", "acarpellous", "acarpelous", "acarpous", "acarus", "acaryote", "acatalectic", "acataphasia", "acathexia", "acathexis", "acaudal", "acaudate", "acaulescent", "acc", "accede", "acceded", "accedes", "acceding", "accelerando", "accelerate", "accelerated", "accelerates", "accelerating", "acceleration", "accelerative", "accelerator", "acceleratory", "accelerometer", "accent", "accented", "accenting", "accentor", "accents", "accentual", "accentuate", "accentuates", "accentuating", "accentuation", "accept", "acceptability", "acceptable", "acceptableness", "acceptably", "acceptance", "acceptant", "acceptation", "accepted", "accepting", "acceptive", "acceptor", "accepts", "access", "accessary", "accesses", "accessibility", "accessible", "accessing", "accession", "accessional", "accessorial", "accessories", "accessorise", "accessorised", "accessorises", "accessorising", "accessorize", "accessorized", "accessorizes", "accessorizing", "accessory", "accho", "acciaccatura", "acciaccature", "accidence", "accident", "accidental", "accidentally", "accidents", "accipitrine", "acclaim", "acclaimed", "acclamation", "acclimate", "acclimating", "acclimation", "acclimatisation", "acclimatise", "acclimatised", "acclimatises", "acclimatising", "acclimatization", "acclimatize", "acclimatized", "acclimatizes", "acclimatizing", "acclivitous", "acclivity", "accolade", "accommodate", "accommodated", "accommodates", "accommodating", "accommodatingly", "accommodation", "accommodational", "accommodations", "accommodative", "accommodator", "accompanied", "accompanies", "accompaniment", "accompanist", "accompany", "accompanying", "accompanyist", "accomplice", "accomplish", "accomplishable", "accomplished", "accomplishes", "accomplishing", "accomplishment", "accomplishments", "accord", "accordance", "accordant", "accorded", "According", "according", "accordingly", "accordion", "accordionist", "accords", "accost", "accosting", "accouchement", "accoucheur", "accoucheuse", "account", "accountability", "accountable", "accountancy", "accountant", "accountants", "accountantship", "accounted", "accounting", "accounts", "accouter", "accoutered", "accouterment", "accouterments", "accoutre", "accoutred", "accoutrement", "accoutrements", "accredit", "accreditation", "accredited", "accrediting", "accredits", "accrete", "accreted", "accreting", "accretion", "accretionary", "accretive", "accroides", "accrual", "accrue", "accrued", "accruement", "accrues", "accruing", "acculturate", "acculturating", "acculturation", "acculturational", "acculturative", "accumbent", "accumulate", "accumulated", "accumulates", "accumulating", "accumulation", "accumulative", "accumulator", "accuracy", "accurate", "accurately", "accurse", "accursed", "accurst", "accusal", "accusation", "accusations", "accusative", "accusatorial", "accusatory", "accuse", "accused", "accuser", "accuses", "accusing", "accusingly", "accusive", "accustom", "accustomed", "ace", "acebutolol", "acedia", "acellular", "acentric", "acephalia", "acephalism", "acephalous", "acephaly", "acerate", "acerb", "acerbate", "acerbic", "acerbity", "acerola", "acerose", "acervate", "acervulus", "aces", "acetabula", "acetabular", "acetabulum", "acetal", "acetaldehyde", "acetaldol", "acetamide", "acetaminophen", "acetanilid", "acetanilide", "acetate", "acetic", "acetified", "acetify", "acetin", "acetone", "acetonemia", "acetonic", "acetonuria", "acetophenetidin", "acetose", "acetous", "acetphenetidin", "acetum", "acetyl", "acetylate", "acetylation", "acetylcholine", "acetylene", "acetylenic", "acetylic", "acetylise", "acetylize", "achaean", "achaemenid", "achaemenidae", "achaemenides", "achaian", "ache", "achene", "achenial", "acheronian", "acherontic", "aches", "achievability", "achievable", "achieve", "achieved", "achievement", "achievements", "achiever", "achieves", "achieving", "achillea", "achimenes", "aching", "achira", "achlamydeous", "achlorhydria", "achlorhydric", "acholia", "achondrite", "achondritic", "achondroplasia", "achondroplastic", "achondroplasty", "achromasia", "achromatic", "achromaticity", "achromatin", "achromatinic", "achromatise", "achromatism", "achromatize", "achromatous", "achromia", "achromic", "achromous", "achromycin", "achy", "achylia", "acicula", "acicular", "aciculate", "aciculum", "acid", "acidemia", "acidic", "acidification", "acidified", "acidifies", "acidify", "acidimetric", "acidimetry", "acidity", "acidophil", "acidophile", "acidophilic", "acidophilous", "acidophilus", "acidosis", "acidotic", "acids", "acidulate", "acidulent", "acidulous", "acidulousness", "aciduric", "acinar", "acing", "acini", "acinic", "acinose", "acinous", "acinus", "ackee", "acknowledge", "acknowledgeable", "acknowledged", "acknowledgement", "acknowledges", "acknowledging", "acknowledgment", "aclant", "acme", "acne", "acned", "acneiform", "acokanthera", "acold", "acolyte", "aconite", "acorea", "acores", "acorn", "acousma", "acoustic", "acoustical", "acoustically", "acoustician", "acousticophobia", "acoustics", "acquaint", "acquaintance", "acquaintances", "acquaintanceship", "acquainted", "acquainting", "acquaints", "acquiesce", "acquiesced", "acquiescence", "acquiescent", "acquiescing", "acquirable", "acquire", "acquired", "acquirement", "acquirer", "acquires", "acquiring", "acquisition", "acquisitions", "acquisitive", "acquisitiveness", "acquit", "acquits", "acquittal", "acquittance", "acquitted", "acquitting", "acragas", "acre", "acreage", "acres", "acrid", "acridid", "acridity", "acridness", "acrilan", "acrimonious", "acrimony", "acritical", "acroanaesthesia", "acroanesthesia", "acrobat", "acrobatic", "acrobatics", "acrocarp", "acrocarpous", "acrocentric", "acrocephaly", "acrocyanosis", "acrodont", "acrogen", "acrogenic", "acrogenous", "acrolein", "acromegalia", "acromegalic", "acromegaly", "acromia", "acromicria", "acromikria", "acromion", "acromphalus", "acromyotonia", "acronym", "acronymic", "acronymous", "acronyms", "acropetal", "acrophobia", "acrophobic", "acrophony", "acropolis", "acroscopic", "acrosome", "Across", "across", "acrostic", "acrylamide", "acrylate", "acrylic", "acrylonitrile", "act", "actable", "acted", "acth", "actin", "actinal", "actinaria", "acting", "actinia", "actiniae", "actinian", "actiniarian", "actinic", "actinide", "actinism", "actinium", "actinoid", "actinolite", "actinometer", "actinometric", "actinometrical", "actinometry", "actinomorphic", "actinomorphous", "actinomyces", "actinomycetal", "actinomycete", "actinomycetous", "actinomycin", "actinomycosis", "actinomycotic", "actinomyxidian", "actinon", "actinopod", "actinotherapy", "actinozoa", "actinozoan", "action", "actionable", "actions", "activase", "activate", "activated", "activates", "activating", "activation", "activator", "activators", "active", "actively", "activeness", "activewear", "activism", "activist", "activistic", "activists", "activities", "activity", "actomyosin", "actor", "actors", "actress", "actresses", "acts", "actual", "actualisation", "actualise", "actuality", "actualization", "actualize", "Actually", "actually", "actuarial", "actuary", "actuate", "actuated", "actuating", "actuation", "actuator", "acuate", "acuity", "acular", "aculea", "aculeate", "aculeated", "aculeus", "acumen", "acuminate", "acupressure", "acupuncture", "acute", "acutely", "acuteness", "acyclic", "acyclovir", "acyl", "acylation", "acylglycerol", "ad", "ada", "adactylia", "adactylism", "adactylous", "adactyly", "adage", "adagio", "adamance", "adamant", "adamantine", "adamantly", "adapin", "adapt", "adaptability", "adaptable", "adaptation", "adaptational", "adaptations", "adaptative", "adapted", "adapter", "adapting", "adaption", "adaptive", "adaptor", "adapts", "adaxial", "adaxially", "add", "addable", "addax", "added", "addend", "addenda", "addendum", "adder", "addible", "addict", "addicted", "addicting", "addiction", "addictive", "addicts", "adding", "addition", "additional", "additionally", "additions", "additive", "addle", "addlebrained", "addled", "addlehead", "addlepated", "address", "addressable", "addressed", "addressee", "addresses", "addressing", "addressograph", "adds", "adduce", "adducent", "adducer", "adducing", "adduct", "adducting", "adduction", "adductive", "adductor", "ade", "adelgid", "adenine", "adenitis", "adenocarcinoma", "adenocarcinomata", "adenocarcinomatous", "adenohypophysis", "adenoid", "adenoidal", "adenoidectomy", "adenoma", "adenomata", "adenomegaly", "adenomyosarcoma", "adenomyosis", "adenopathy", "adenosine", "adenosis", "adenovirus", "adept", "adeptness", "adequacy", "adequate", "adequately", "adequateness", "adermin", "adesite", "adh", "adhd", "adhere", "adhered", "adherence", "adherent", "adherents", "adheres", "adhering", "adhesion", "adhesive", "adhesiveness", "adhocracy", "adiabatic", "adience", "adient", "adieu", "adieux", "adios", "adipose", "adiposeness", "adiposis", "adiposity", "adit", "adjacency", "adjacent", "adjectival", "adjectivally", "adjective", "adjectively", "adjectives", "adjoin", "adjourn", "adjourned", "adjourning", "adjournment", "adjourns", "adjudge", "adjudicate", "adjudicating", "adjudication", "adjudicative", "adjudicator", "adjudicatory", "adjunct", "adjunction", "adjunctive", "adjuration", "adjuratory", "adjure", "adjust", "adjustable", "adjusted", "adjuster", "adjusting", "adjustive", "adjustment", "adjustments", "adjustor", "adjusts", "adjutant", "adjuvant", "adman", "admass", "admeasure", "administer", "administered", "administering", "administers", "administrable", "administrate", "administrating", "administration", "administrations", "administrative", "administratively", "administrator", "administrators", "administrivia", "admirability", "admirable", "admirableness", "admirably", "admiral", "admiralty", "admiration", "admire", "admired", "admirer", "admirers", "admires", "admiring", "admiringly", "admissibility", "admissible", "admission", "admissions", "admissive", "admit", "admits", "admittable", "admittance", "admitted", "admittedly", "admittible", "admitting", "admix", "admixture", "admonish", "admonished", "admonisher", "admonishing", "admonishment", "admonition", "admonitory", "adnate", "adnexa", "adnexal", "adnoun", "ado", "adobe", "adobo", "adolesce", "adolescence", "adolescent", "adolescents", "adonic", "adopt", "adoptable", "adopted", "adoptee", "adopter", "adopting", "adoption", "adoptive", "adopts", "adorability", "adorable", "adorableness", "adorably", "adoration", "adore", "adored", "adorer", "adores", "adoring", "adoringly", "adorn", "adorned", "adorning", "adornment", "adorns", "adoxography", "adp", "adpressed", "adrenal", "adrenalectomy", "adrenalin", "adrenaline", "adrenarche", "adrenergic", "adrenocortical", "adrenocorticotrophic", "adrenocorticotrophin", "adrenocorticotropic", "adrenocorticotropin", "adrenosterone", "adrianople", "adrianopolis", "adrift", "adroit", "adroitly", "adroitness", "ads", "adscititious", "adscript", "adscripted", "adsorb", "adsorbable", "adsorbate", "adsorbent", "adsorption", "adsorptive", "adt", "adulate", "adulation", "adulator", "adulatory", "adult", "adulterant", "adulterate", "adulterated", "adulterating", "adulteration", "adulterator", "adulterer", "adulteress", "adulterine", "adulterous", "adulterously", "adultery", "adulthood", "adults", "adumbrate", "adumbration", "adumbrative", "adust", "advance", "advanced", "advancement", "advancer", "advances", "advancing", "advantage", "advantageous", "advantageously", "advantageousness", "advantages", "advect", "advection", "advective", "advent", "adventitia", "adventitial", "adventitious", "adventive", "adventure", "adventurer", "adventures", "adventuresome", "adventuress", "adventuring", "adventurism", "adventuristic", "adventurous", "adventurousness", "adverb", "adverbial", "adverbially", "adversaries", "adversary", "adversative", "adverse", "adversely", "adversity", "advert", "advertence", "advertency", "advertent", "advertently", "adverting", "advertise", "advertised", "advertisement", "advertisements", "advertiser", "advertisers", "advertises", "advertising", "advertize", "advertizement", "advertizer", "advertizes", "advertizing", "advertorial", "advice", "advil", "advisability", "advisable", "advise", "advised", "advisedly", "advisee", "advisement", "adviser", "advisers", "advises", "advising", "advisor", "advisors", "advisory", "advocacy", "advocate", "advocated", "advocates", "advocating", "advocator", "advowson", "adynamia", "adynamic", "adyta", "adytum", "adz", "adze", "adzharia", "aec", "aecia", "aecial", "aecidia", "aecidium", "aeciospore", "aecium", "aegates", "aegean", "aegir", "aegis", "aegospotamos", "aengus", "aeolia", "aeolian", "aeolotropic", "aeon", "aeonian", "aeons", "aepyornis", "aerate", "aerated", "aeration", "aerator", "aerial", "aerialist", "aerially", "aerides", "aerie", "aeriferous", "aerified", "aeriform", "aerify", "aerobatics", "aerobe", "aerobia", "aerobic", "aerobics", "aerobiosis", "aerobiotic", "aerobium", "aerodontalgia", "aerodrome", "aerodynamic", "aerodynamics", "aeroembolism", "aerofoil", "aerogenerator", "aerogram", "aerogramme", "aerogrammes", "aerograms", "aerolite", "aerolitic", "aerological", "aerology", "aeromechanic", "aeromechanics", "aeromedical", "aeromedicine", "aeronaut", "aeronautic", "aeronautical", "aeronautics", "aerophagia", "aerophilatelic", "aerophilately", "aerophile", "aerophilic", "aerophilous", "aerophyte", "aeroplane", "aeroplanes", "aerosol", "aerosolise", "aerosolised", "aerosolize", "aerosolized", "aerospace", "aery", "aeschylean", "aeschynanthus", "aesculapian", "aesthesia", "aesthesis", "aesthete", "aesthetes", "aesthetic", "aesthetical", "aesthetically", "aesthetician", "aesthetics", "aestival", "aestivate", "aestivation", "aetiologic", "aetiological", "aetiologist", "aetiology", "afar", "afeard", "afeared", "afebrile", "affability", "affable", "affableness", "affably", "affair", "affaire", "affairs", "affect", "affectation", "affected", "affectedly", "affectedness", "affecting", "affectingly", "affection", "affectional", "affectionate", "affectionately", "affectionateness", "affective", "affects", "affenpinscher", "afferent", "afferents", "affiance", "affiant", "affidavit", "affiliate", "affiliated", "affiliates", "affiliating", "affiliation", "affinal", "affine", "affined", "affinities", "affinity", "affirm", "affirmable", "affirmation", "affirmative", "affirmatively", "affirmativeness", "affirmatory", "affirmed", "affirmer", "affirming", "affix", "affixal", "affixation", "affixed", "affixes", "affixial", "affixing", "afflatus", "afflict", "afflicted", "afflicting", "affliction", "afflictive", "afflicts", "affluence", "affluent", "afford", "affordable", "afforded", "affording", "afforest", "afforestation", "affranchise", "affray", "affricate", "affrication", "affricative", "affright", "affront", "affronted", "affusion", "afghan", "afghani", "Afghanistan", "afghanistan", "afghanistani", "afibrinogenemia", "aficionado", "aficionados", "afield", "afire", "afisr", "afl", "aflame", "aflare", "aflatoxin", "aflaxen", "aflicker", "afloat", "aflutter", "afoot", "aforementioned", "aforesaid", "aforethought", "afoul", "afp", "afraid", "afrasian", "afresh", "Africa", "africa", "African", "african", "afrikaans", "afrikander", "afrikaner", "afrl", "afropavo", "afspc", "aft", "After", "after", "afterbirth", "afterburner", "aftercare", "afterdamp", "afterdeck", "aftereffect", "afterglow", "afterimage", "afterlife", "aftermath", "aftermost", "afternoon", "afternoons", "afterpains", "afterpiece", "afters", "aftersensation", "aftershaft", "aftershafted", "aftershock", "aftertaste", "afterthought", "afterward", "afterwards", "afterworld", "again", "Against", "against", "agal", "agalactia", "agalactosis", "agama", "agamete", "agamic", "agamid", "agammaglobulinemia", "agamogenesis", "agamogenetic", "agamous", "agapanthus", "agape", "agar", "agaric", "agate", "agateware", "agave", "agaze", "age", "aged", "agedness", "ageing", "ageism", "ageless", "agelessness", "agelong", "agencies", "agency", "agenda", "agendas", "agendum", "agene", "agenesia", "agenesis", "agenise", "agenize", "agent", "agential", "agents", "agerasia", "ageratum", "ages", "aggeus", "aggiornamenti", "aggiornamento", "agglomerate", "agglomerated", "agglomeration", "agglomerative", "agglomerator", "agglutinate", "agglutination", "agglutinative", "agglutinin", "agglutinogen", "aggrade", "aggrandise", "aggrandisement", "aggrandize", "aggrandizement", "aggrandizing", "aggravate", "aggravated", "aggravates", "aggravating", "aggravatingly", "aggravation", "aggravator", "aggregate", "aggregated", "aggregates", "aggregating", "aggregation", "aggregative", "aggregator", "aggress", "aggression", "aggressions", "aggressive", "aggressively", "aggressiveness", "aggressor", "aggrieve", "aggro", "aggroup", "agha", "aghast", "agile", "agilely", "agility", "aging", "agio", "agiotage", "agism", "agitate", "agitated", "agitates", "agitating", "agitation", "agitative", "agitator", "agitprop", "agleam", "aglet", "aglitter", "aglow", "agnail", "agnate", "agnathan", "agnatic", "agnation", "agnise", "agnize", "agnomen", "agnomina", "agnosia", "agnostic", "agnostical", "agnosticism", "ago", "agog", "agon", "agonadal", "agonal", "agone", "agones", "agonise", "agonised", "agonises", "agonising", "agonisingly", "agonist", "agonistic", "agonistical", "agonists", "agonize", "agonized", "agonizes", "agonizing", "agonizingly", "agony", "agora", "agorae", "agoraphobia", "agoraphobic", "agouti", "agouties", "agranulocytic", "agranulocytosis", "agranulosis", "agrapha", "agraphia", "agraphic", "agrarian", "agree", "agreeability", "agreeable", "agreeableness", "agreeably", "agreed", "agreeing", "Agreement", "agreement", "agreements", "agrees", "agrestic", "agribusiness", "agricultural", "agriculturalist", "agriculture", "agriculturist", "agrimonia", "agrimony", "agrobiologic", "agrobiological", "agrobiology", "agrologic", "agrological", "agrology", "agromania", "agronomic", "agronomical", "agronomist", "agronomy", "aground", "agrypnia", "agrypnotic", "agua", "aguacate", "ague", "agueweed", "aguish", "ah", "ahead", "ahem", "ahimsa", "ahistorical", "ahorse", "ahorseback", "ahpcrc", "ahvenanmaa", "AI", "Ai", "ai", "aiai", "aid", "aide", "aided", "aides", "aiding", "aidoneus", "AIDS", "aids", "aigina", "aiglet", "aigret", "aigrette", "aiguilette", "aikido", "ail", "ailanthus", "aileron", "ailing", "ailment", "ailments", "ails", "ailurophobia", "aim", "aimed", "aiming", "aimless", "aimlessly", "aimlessness", "aims", "ain", "AIN'T", "Ain't", "ain't", "AINT", "Aint", "aint", "AIN\u2019T", "Ain\u2019t", "ain\u2019t", "aioli", "air", "airborne", "airbrake", "airbrush", "airbrushing", "airburst", "airbus", "aircraft", "aircraftman", "aircraftsman", "aircrew", "aircrewman", "airdock", "airdrome", "airdrop", "airdropped", "airdropping", "aired", "airfare", "airfield", "airflow", "airfoil", "airforce", "airframe", "airfreight", "airgun", "airhead", "airheaded", "airier", "airiest", "airily", "airiness", "airing", "airless", "airlift", "airlifted", "airlifting", "airlifts", "airlike", "airline", "airliner", "airliners", "airlines", "airlock", "airmail", "airmailer", "airman", "airmanship", "airplane", "airplanes", "airport", "airports", "airpost", "airs", "airscrew", "airship", "airsick", "airsickness", "airspace", "airspeed", "airstream", "airstrip", "airt", "airtight", "airwave", "airwaves", "airway", "airwoman", "airworthiness", "airworthy", "airy", "aisle", "aisles", "aitchbone", "ajar", "akaba", "akaryocyte", "akaryote", "akee", "aken", "akha", "akhenaten", "akimbo", "akin", "akinesia", "akinesis", "akka", "akko", "akmola", "aku", "akvavit", "al", "ala", "ALA.", "Ala.", "ala.", "alabama", "alabamian", "alabaster", "alabastrine", "alacritous", "alacrity", "alae", "alalia", "alanine", "alar", "alarm", "alarmed", "alarming", "alarmingly", "alarmism", "alarmist", "alarmists", "alarms", "alarum", "alary", "Alas", "alas", "Alaska", "alaska", "alaskan", "alastrim", "alate", "alated", "alb", "albacore", "albanian", "albanians", "albatross", "albedo", "albeit", "albescent", "albigensian", "albinal", "albinic", "albinism", "albinistic", "albino", "albinotic", "albite", "albitic", "albizia", "albizzia", "alborg", "albuca", "albuginea", "album", "albumen", "albumin", "albuminoid", "albuminous", "albuminuria", "albuminuric", "albums", "albuterol", "alcahest", "alcalde", "alcalescent", "alcapton", "alcaptonuria", "alcazar", "alchemic", "alchemical", "alchemise", "alchemist", "alchemistic", "alchemistical", "alchemize", "alchemy", "alcides", "alcohol", "alcoholic", "alcoholise", "alcoholism", "alcoholize", "alcove", "aldactone", "aldehyde", "aldehydic", "alder", "alderfly", "alderman", "aldermanic", "aldermanly", "aldohexose", "aldol", "aldomet", "aldose", "aldosterone", "aldosteronism", "ale", "aleatory", "alecost", "alee", "alehoof", "alehouse", "alembic", "alendronate", "alep", "aleph", "aleppo", "alert", "alerted", "alerting", "alertly", "alertness", "alerts", "aleurone", "aleuronic", "aleutian", "aleve", "alewife", "alewives", "alexandrian", "alexandrite", "alexia", "alexic", "alfalfa", "alfilaria", "alfileria", "alfresco", "alga", "algae", "algal", "algarobilla", "algarroba", "algarrobilla", "algebra", "algebraic", "algebraical", "algebraically", "algebraist", "Algeria", "algeria", "algerian", "algerie", "algid", "algidity", "algin", "algoid", "algolagnia", "algolagnic", "algology", "algometer", "algometric", "algometrical", "algometry", "algonkian", "algonkin", "algonquian", "algonquin", "algophilia", "algophobia", "algophobic", "algorism", "algorithm", "algorithmic", "algorithms", "alhacen", "alias", "alibi", "alidad", "alidade", "alien", "alienable", "alienage", "alienate", "alienated", "alienates", "alienating", "alienation", "alienator", "alienee", "alienism", "alienist", "alienor", "aliens", "aliform", "alight", "alighting", "alights", "align", "aligned", "aligning", "alignment", "alignments", "alike", "alikeness", "aliment", "alimental", "alimentary", "alimentation", "alimentative", "alimony", "aline", "alinement", "aliphatic", "aliquant", "aliquot", "aliquots", "alir", "alismales", "aliterate", "alive", "aliveness", "aliyah", "alizarin", "alizarine", "alkahest", "alkahestic", "alkalemia", "alkalescent", "alkali", "alkalic", "alkalies", "alkalified", "alkalify", "alkalimetry", "alkaline", "alkalinise", "alkalinity", "alkalinize", "alkalinuria", "alkalise", "alkaliser", "alkalize", "alkalizer", "alkaloid", "alkaloidal", "alkalosis", "alkalotic", "alkaluria", "alkane", "alkanet", "alkapton", "alkaptonuria", "alkene", "alkeran", "alky", "alkyd", "alkyl", "alkylbenzene", "alkylbenzenesulfonate", "alkylic", "alkyne", "All", "all", "allamanda", "allantoic", "allantoid", "allantois", "allargando", "allay", "allayed", "allayer", "allaying", "allegation", "allegations", "allege", "alleged", "allegedly", "allegement", "alleges", "allegiance", "allegiant", "alleging", "allegoric", "allegorical", "allegorically", "allegorise", "allegoriser", "allegorize", "allegorizer", "allegorizing", "allegory", "allegretto", "allegro", "allele", "alleles", "allelic", "allelomorph", "allelomorphic", "allemande", "allergen", "allergenic", "allergic", "allergies", "allergist", "allergology", "allergy", "alleviant", "alleviate", "alleviated", "alleviates", "alleviating", "alleviation", "alleviative", "alleviator", "alleviatory", "alley", "alleys", "alleyway", "alleyways", "allgood", "allhallows", "alliaceous", "alliance", "alliances", "allice", "allied", "allies", "alligator", "alligatored", "alligatorfish", "allioniaceae", "allis", "alliterate", "alliterating", "alliteration", "alliterative", "alliteratively", "alliterator", "allmouth", "alloantibody", "allocable", "allocatable", "allocate", "allocated", "allocates", "allocating", "allocation", "allocations", "allocator", "allochronic", "allochthonous", "allocution", "allodia", "allodium", "allogamous", "allogamy", "allogeneic", "allograft", "allograph", "allographic", "allomerism", "allomerous", "allometric", "allometry", "allomorph", "allomorphic", "allopathic", "allopathy", "allopatric", "allopatry", "allophone", "allophonic", "allopurinol", "allosaur", "allosaurus", "allot", "allotment", "allotrope", "allotropic", "allotropical", "allotropism", "allotropy", "allots", "allotted", "allotting", "allover", "allow", "allowable", "allowably", "allowance", "allowances", "allowed", "allowing", "allows", "alloy", "alloyed", "allspice", "allude", "alluded", "alludes", "alluding", "allure", "allurement", "alluring", "allusion", "allusions", "allusive", "allusiveness", "alluvia", "alluvial", "alluviation", "alluvion", "alluvium", "ally", "allying", "allyl", "allylic", "almanac", "almanack", "almanacks", "almanacs", "almandine", "almandite", "almighty", "almond", "almoner", "almost", "alms", "almsgiver", "almsgiving", "alocasia", "alodia", "alodium", "aloe", "aloft", "aloha", "alone", "aloneness", "Along", "along", "Alongside", "alongside", "aloof", "aloofness", "alopecia", "alopecic", "aloud", "alp", "alpaca", "alpenstock", "alpestrine", "alpha", "alphabet", "alphabetic", "alphabetical", "alphabetically", "alphabetisation", "alphabetise", "alphabetised", "alphabetiser", "alphabetization", "alphabetize", "alphabetized", "alphabetizer", "alphabetizing", "alphameric", "alphamerical", "alphanumeric", "alphanumerical", "alphanumerics", "alphavirus", "alpine", "alpinist", "alprazolam", "already", "alright", "alsatia", "alsatian", "Also", "also", "alstroemeria", "alt", "altace", "altaic", "altar", "altarpiece", "altars", "altazimuth", "alter", "alterability", "alterable", "alteration", "alterations", "alterative", "altercate", "altercation", "altered", "altering", "alternate", "alternately", "alternates", "alternating", "alternation", "alternative", "alternatively", "alternatives", "alternator", "alters", "althaea", "althea", "Although", "although", "altimeter", "altissimo", "altitude", "altitudinal", "altitudinous", "alto", "altocumuli", "altocumulus", "altogether", "altoist", "altostrati", "altostratus", "altricial", "altruism", "altruist", "altruistic", "altruistically", "alula", "alulae", "alular", "alum", "alumbloom", "alumina", "aluminate", "aluminiferous", "aluminise", "aluminium", "aluminize", "aluminous", "aluminum", "alumna", "alumnae", "alumni", "alumnus", "alumroot", "alundum", "alupent", "alveolar", "alveolate", "alveoli", "alveolitis", "alveolus", "alvine", "always", "alzheimers", "AM", "Am", "am", "amadavat", "amah", "amain", "amalgam", "amalgamate", "amalgamated", "amalgamation", "amalgamative", "amalgamator", "amanuenses", "amanuensis", "amaranth", "amaranthine", "amarelle", "amaretto", "amaryllis", "amass", "amassed", "amasses", "amassing", "amastia", "amateur", "amateurish", "amateurishly", "amateurishness", "amateurism", "amateurs", "amative", "amativeness", "amatory", "amatungulu", "amaurosis", "amaurotic", "amaze", "amazed", "amazement", "amazes", "amazing", "amazingly", "ambage", "ambagious", "ambassador", "ambassadorial", "ambassadorship", "ambassadress", "amber", "amberbell", "amberfish", "ambergris", "amberjack", "ambiance", "ambidexterity", "ambidextrous", "ambidextrousness", "ambience", "ambient", "ambiguities", "ambiguity", "ambiguous", "ambiguously", "ambit", "ambition", "ambitionless", "ambitions", "ambitious", "ambitiously", "ambitiousness", "ambivalence", "ambivalency", "ambivalent", "ambiversion", "ambiversive", "amble", "ambler", "ambling", "amblygonite", "amblyopia", "amblyopic", "ambo", "amboyna", "ambrosia", "ambrosial", "ambrosian", "ambulacra", "ambulacral", "ambulacrum", "ambulance", "ambulant", "ambulate", "ambulation", "ambulatory", "ambuscade", "ambush", "ambushed", "ambusher", "ambushing", "ambystomid", "amd", "ameba", "amebae", "ameban", "amebiasis", "amebic", "amebiosis", "ameboid", "amebous", "ameer", "amelia", "ameliorate", "ameliorating", "amelioration", "ameliorative", "amelioratory", "ameloblast", "amelogenesis", "Amen", "amen", "amenability", "amenable", "amenableness", "amend", "amendable", "amendatory", "amended", "amending", "amendment", "amendments", "amends", "amenia", "amenities", "amenity", "amenorrhea", "amenorrheal", "amenorrheic", "amenorrhoea", "amenorrhoeal", "amenorrhoeic", "ament", "amentaceous", "amentia", "amentiferous", "amerce", "amercement", "amerciable", "America", "america", "american", "americanisation", "americanise", "americanize", "americanized", "americium", "amerind", "amerindic", "ametabolic", "ametabolous", "amethopterin", "amethyst", "amethystine", "ametria", "ametropia", "ametropic", "amex", "amharic", "amiability", "amiable", "amiableness", "amiably", "amicability", "amicable", "amicableness", "amicably", "Amid", "amid", "amide", "amidopyrine", "amidship", "amidships", "amigo", "amine", "aminic", "amino", "aminoaciduria", "aminoalkane", "aminobenzine", "aminomethane", "aminopherase", "aminophylline", "aminoplast", "aminopyrine", "aminotransferase", "amiodarone", "amir", "amiss", "amitosis", "amitotic", "amitriptyline", "amity", "ammeter", "ammine", "ammino", "ammo", "ammobium", "ammonia", "ammoniac", "ammoniacal", "ammoniate", "ammoniated", "ammonification", "ammonified", "ammonify", "ammonite", "ammonitic", "ammonium", "ammoniuria", "ammonoid", "ammunition", "AMN'T", "Amn't", "amn't", "amnesia", "amnesiac", "amnesic", "amnestic", "amnestied", "amnesty", "amnia", "amnic", "amnio", "amniocenteses", "amniocentesis", "amnion", "amnionic", "amniote", "amniotic", "AMNT", "Amnt", "amnt", "AMN\u2019T", "Amn\u2019t", "amn\u2019t", "amobarbital", "amoeba", "amoebae", "amoeban", "amoebiases", "amoebiasis", "amoebic", "amoebina", "amoebiosis", "amoeboid", "amoebous", "amok", "amon", "Among", "among", "amongst", "amor", "amora", "amoraim", "amoralism", "amoralist", "amorality", "amorally", "amoretti", "amoretto", "amorini", "amorino", "amorist", "amoristic", "amorous", "amorously", "amorousness", "amorpha", "amorphophallus", "amorphous", "amort", "amortisable", "amortisation", "amortisations", "amortise", "amortised", "amortises", "amortising", "amortizable", "amortization", "amortizations", "amortize", "amortized", "amortizes", "amortizing", "amount", "amounted", "amounting", "amounts", "amour", "amoxicillin", "amoxil", "amoy", "amp", "amperage", "ampere", "ampersand", "amphetamine", "amphiarthroses", "amphiarthrosis", "amphibia", "amphibian", "amphibiotic", "amphibious", "amphibole", "amphibolite", "amphibology", "amphiboly", "amphibrach", "amphicarpa", "amphicia", "amphictyony", "amphidiploid", "amphidiploidy", "amphigory", "amphimixes", "amphimixis", "amphioxi", "amphioxus", "amphipod", "amphiprostylar", "amphiprostyle", "amphiprotic", "amphisbaena", "amphisbaenae", "amphisbaenia", "amphistylar", "amphitheater", "amphitheaters", "amphitheatre", "amphitheatres", "amphitheatric", "amphitheatrical", "amphithecium", "amphitropous", "amphiuma", "amphora", "amphorae", "amphoric", "amphoteric", "amphotericin", "ampicillin", "ample", "ampleness", "amplification", "amplifications", "amplified", "amplifier", "amplifies", "amplify", "amplifying", "amplitude", "amplitudes", "amply", "ampoule", "ampul", "ampule", "ampulla", "ampullae", "ampullar", "ampullary", "amputate", "amputates", "amputating", "amputation", "amputator", "amputee", "amrinone", "amuck", "amulet", "amun", "amusd", "amuse", "amused", "amusement", "amusements", "amuses", "amusing", "amusingly", "amusive", "amygdala", "amygdalae", "amygdaliform", "amygdalin", "amygdaline", "amygdaloid", "amygdaloidal", "amygdalotomy", "amyl", "amylaceous", "amylase", "amyloid", "amyloidal", "amyloidosis", "amylolysis", "amylolytic", "amylum", "amyotonia", "amyotrophia", "amyotrophy", "amytal", "amyxia", "An", "an", "anabases", "anabasis", "anabatic", "anabiosis", "anabiotic", "anabolic", "anabolism", "anachronic", "anachronism", "anachronistic", "anachronistically", "anachronous", "anaclinal", "anaclisis", "anaclitic", "anacolutha", "anacoluthia", "anacoluthic", "anacoluthon", "anaconda", "anacruses", "anacrusis", "anadiplosis", "anadromous", "anaemia", "anaemic", "anaerobe", "anaerobia", "anaerobic", "anaerobiotic", "anaerobium", "anaesthesia", "anaesthetic", "anaesthetics", "anaesthetise", "anaesthetised", "anaesthetises", "anaesthetising", "anaesthetist", "anaesthetists", "anaesthetize", "anaesthetized", "anaesthetizes", "anaesthetizing", "anaglyph", "anaglyphic", "anaglyphical", "anaglyphy", "anaglyptic", "anaglyptical", "anagnorises", "anagnorisis", "anagnost", "anagoge", "anagogic", "anagogical", "anagram", "anagrammatic", "anagrammatical", "anagrammatise", "anagrammatize", "anal", "analbuminemia", "analecta", "analects", "analemma", "analemmata", "analeptic", "analgesia", "analgesic", "analgesics", "analgetic", "analog", "analogical", "analogies", "analogise", "analogist", "analogize", "analogous", "analogously", "analogs", "analogue", "analogues", "analogy", "analphabet", "analphabetic", "analphabetism", "analysand", "analyse", "analysed", "analyser", "analyses", "analysing", "analysis", "Analyst", "analyst", "Analysts", "analysts", "analytic", "analytical", "analytically", "analyticity", "analyzable", "analyze", "analyzed", "analyzer", "analyzes", "analyzing", "anamneses", "anamnesis", "anamnestic", "anamorphic", "anamorphism", "anamorphoses", "anamorphosis", "anapaest", "anapaestic", "anapest", "anapestic", "anaphase", "anaphasic", "anaphor", "anaphora", "anaphoric", "anaphrodisia", "anaphrodisiac", "anaphylactic", "anaphylaxis", "anaplasia", "anaplasmosis", "anaplastic", "anaplasty", "anaprox", "anapsid", "anaptyxis", "anapurna", "anarchic", "anarchical", "anarchically", "anarchism", "anarchist", "anarchistic", "anarchy", "anarthria", "anasarca", "anasarcous", "anaspid", "anastalsis", "anastigmat", "anastigmatic", "anastomose", "anastomoses", "anastomosis", "anastomotic", "anastrophe", "anastylosis", "anathema", "anathematisation", "anathematise", "anathematization", "anathematize", "anathematizing", "anathemise", "anathemize", "anatolia", "anatomic", "anatomical", "anatomically", "anatomise", "anatomist", "anatomize", "anatomy", "anatotitan", "anatoxin", "anatropous", "anatto", "anatyxes", "ancestor", "ancestors", "ancestral", "ancestress", "ancestry", "anchor", "anchorage", "anchored", "anchoring", "anchorite", "anchoritic", "anchorman", "anchorperson", "anchors", "anchovy", "anchusa", "anchylosis", "ancient", "anciently", "ancientness", "ancillary", "ancistrodon", "ancon", "ancones", "ancylose", "And", "and", "andalucia", "andalusian", "andante", "andantino", "andean", "andelmin", "andesite", "andiron", "andorran", "andradite", "andrena", "andrenid", "androclinia", "androclinium", "androecia", "androecium", "androgen", "androgenesis", "androgenetic", "androgenic", "androgenous", "androgens", "androgeny", "androglossia", "androgyne", "androgynous", "androgyny", "android", "androphobia", "androsphinges", "androsphinx", "androsterone", "andryala", "andtheridia", "ane", "anecdotal", "anecdote", "anecdotes", "anecdotic", "anecdotical", "anecdotist", "anechoic", "anele", "anemia", "anemic", "anemographic", "anemography", "anemometer", "anemometric", "anemometrical", "anemometry", "anemone", "anemophilous", "anencephalia", "anencephalic", "anencephalous", "anencephaly", "anergy", "aneroid", "anesthesia", "anesthesiologist", "anesthesiology", "anesthetic", "anesthetics", "anesthetise", "anesthetist", "anesthetists", "anesthetize", "anesthetized", "anesthetizes", "anesthetizing", "anesthyl", "anestric", "anestrous", "anestrum", "anestrus", "aneuploid", "aneuploidy", "aneurin", "aneurism", "aneurismal", "aneurismatic", "aneurysm", "aneurysmal", "aneurysmatic", "anew", "anfractuous", "ang", "angel", "angelfish", "angelfishes", "angelic", "angelica", "angelical", "angelically", "angelim", "angelique", "angelology", "angels", "anger", "angered", "angering", "angers", "angevine", "angiitis", "angina", "anginal", "anginose", "anginous", "angiocardiogram", "angiocarp", "angiocarpic", "angiocarpous", "angioedema", "angiogenesis", "angiogram", "angiography", "angiohemophilia", "angiologist", "angiology", "angioma", "angiomata", "angiomatous", "angiopathy", "angioplasty", "angiopteris", "angiosarcoma", "angioscope", "angiosperm", "angiospermous", "angiotelectasia", "angiotensin", "angiotonin", "angle", "angled", "angledozer", "angler", "anglerfish", "angles", "anglesea", "anglewing", "angleworm", "anglican", "anglicisation", "anglicise", "anglicised", "anglicises", "anglicising", "anglicize", "anglicized", "anglicizes", "anglicizing", "anglified", "anglify", "angling", "anglophil", "anglophile", "anglophilic", "anglophobe", "anglophobic", "Angola", "angola", "angolan", "angora", "angostura", "angraecum", "angrecum", "angrier", "angriest", "angrily", "angriness", "angry", "angst", "angstrom", "anguillan", "anguine", "anguish", "anguished", "anguishes", "anguishing", "angular", "angularity", "angulate", "angulation", "angus", "angwantibo", "anhedonia", "anhidrosis", "anhinga", "anhydride", "anhydrosis", "anhydrous", "ani", "anicteric", "anil", "anile", "aniline", "anima", "animadversion", "animadvert", "animal", "animalcula", "animalcule", "animalculum", "animalisation", "animalise", "animalism", "animalistic", "animality", "animalization", "animalize", "animals", "animate", "animated", "animatedly", "animateness", "animates", "animating", "animation", "animatism", "animatistic", "animator", "animatronics", "anime", "animise", "animism", "animist", "animistic", "animize", "animosity", "animus", "anion", "anionic", "anise", "aniseed", "aniseikonia", "aniseikonic", "anisette", "anisogamete", "anisogametic", "anisogamic", "anisogamous", "anisogamy", "anisometric", "anisometropia", "anisometropic", "anisotropic", "anisotropically", "anisotropy", "ankle", "anklebone", "ankles", "anklet", "ankus", "ankyloglossia", "ankylosaur", "ankylosaurus", "ankylose", "ankylosing", "ankylosis", "ankylotic", "anlage", "anlagen", "anna", "annalist", "annalistic", "annals", "annam", "annamese", "annamite", "annattos", "anneal", "annealing", "annelid", "annelidan", "annex", "annexa", "annexal", "annexation", "annexational", "annexe", "annexing", "annihilate", "annihilated", "annihilates", "annihilating", "annihilation", "annihilative", "annihilator", "anniversary", "annon", "annotate", "annotates", "annotating", "annotation", "annotations", "annotator", "announce", "announced", "announcement", "announcements", "announcer", "announces", "announcing", "annoy", "annoyance", "annoyed", "annoyer", "annoying", "annoyingly", "annoys", "annual", "annualised", "annualized", "annually", "annualry", "annuitant", "annuity", "annul", "annular", "annulate", "annulated", "annulet", "annuli", "annulled", "annulling", "annulment", "annulus", "annum", "annunciate", "annunciator", "annunciatory", "annwn", "ano", "anoa", "anodal", "anode", "anodic", "anodise", "anodises", "anodize", "anodizes", "anodyne", "anoestrous", "anoestrum", "anoestrus", "anoint", "anointer", "anointing", "anointment", "anoints", "anole", "anomalies", "anomalist", "anomalops", "anomalopteryx", "anomalous", "anomalously", "anomalousness", "anomaly", "anomic", "anomie", "anomy", "anon", "anon.", "anonym", "anonymity", "anonymous", "anonymously", "anoperineal", "anopheline", "anopia", "anorak", "anorchia", "anorchidism", "anorchism", "anorectal", "anorectic", "anorexia", "anorexic", "anorexigenic", "anorgasmia", "anorthic", "anorthite", "anorthitic", "anorthography", "anorthopia", "anosmatic", "anosmia", "anosmic", "Another", "another", "anova", "anovulant", "anovulation", "anoxemia", "anoxemic", "anoxia", "anoxic", "anpu", "ansaid", "anserine", "answer", "answerability", "answerable", "answerableness", "answered", "answerer", "answering", "answers", "ant", "anta", "antabuse", "antacid", "antae", "antagonise", "antagonised", "antagonises", "antagonising", "antagonism", "antagonist", "antagonistic", "antagonistically", "antagonists", "antagonize", "antagonized", "antagonizes", "antagonizing", "antakiya", "antakya", "antalkali", "antalkalies", "antapex", "antarctic", "antbird", "ante", "anteater", "antebellum", "antecede", "antecedence", "antecedency", "antecedent", "antecedently", "antechamber", "antecubital", "antedate", "antedating", "antediluvial", "antediluvian", "antefix", "antefixa", "anteing", "antelope", "antemeridian", "antemortem", "antenatal", "antenna", "antennae", "antennal", "antennary", "antenuptial", "antepartum", "antependia", "antependium", "antepenult", "antepenultima", "antepenultimate", "anterior", "anteriority", "anteriorly", "anterograde", "anteroom", "anthelia", "anthelices", "anthelion", "anthelix", "anthelminthic", "anthelmintic", "anthem", "anthemia", "anthemion", "anther", "antheral", "antheridia", "antheridial", "antheridiophore", "antheridium", "antherozoid", "anthesis", "anthill", "anthodia", "anthodium", "anthologise", "anthologist", "anthologize", "anthologizing", "anthology", "anthony", "anthophagous", "anthophilous", "anthophyllite", "anthophyta", "anthozoa", "anthozoan", "anthraces", "anthracite", "anthracitic", "anthracosis", "anthrax", "anthropic", "anthropical", "anthropocentric", "anthropocentricity", "anthropocentrism", "anthropogenesis", "anthropogenetic", "anthropogenic", "anthropogeny", "anthropoid", "anthropoidal", "anthropolatry", "anthropological", "anthropologist", "anthropologists", "anthropology", "anthropometric", "anthropometrical", "anthropometry", "anthropomorphic", "anthropomorphise", "anthropomorphism", "anthropomorphize", "anthropomorphizing", "anthropomorphous", "anthropophagite", "anthropophagous", "anthropophagus", "anthropophagy", "anthroposophy", "anthurium", "anti", "Anti-abortion", "anti-abortion", "anti-abortionist", "anti-abortionists", "anti-airline", "anti-airline-takeover", "anti-anemia", "anti-apartheid", "anti-ballistic-missile", "anti-bike", "anti-cancer", "anti-cholesterol", "anti-communist", "anti-competitive", "anti-crime", "anti-debt", "anti-depressant", "anti-development", "anti-diarrheal", "anti-discrimination", "anti-drug", "anti-dumping", "anti-flag-burning", "anti-foreigner", "anti-fraud", "anti-government", "anti-heroes", "anti-hooligan", "anti-infectives", "anti-intellectual", "anti-intellectualism", "anti-lock", "anti-miscarriage", "anti-missile", "anti-monopoly", "anti-morning-sickness", "Anti-nuclear", "anti-nuclear", "anti-outsider", "anti-party", "anti-pocketbook", "anti-program", "anti-programmers", "anti-prostitution", "anti-racketeering", "anti-recession", "anti-science", "anti-scientific", "anti-smoking", "anti-social", "anti-takeover", "anti-tax", "anti-tax-shelter", "anti-toxic", "anti-ulcer", "Anti-union", "anti-union", "anti-war", "anti-white", "antiacid", "antiadrenergic", "antiaircraft", "antialiasing", "antiapartheid", "antiarrhythmic", "antiauthoritarian", "antibacterial", "antibaryon", "antibiosis", "antibiotic", "antibiotics", "antiblack", "antibodies", "antibody", "antic", "anticancer", "anticatalyst", "anticholinergic", "anticholinesterase", "anticipant", "anticipate", "anticipated", "anticipates", "anticipating", "anticipation", "anticipative", "anticipator", "anticipatory", "anticlimactic", "anticlimactical", "anticlimax", "anticlinal", "anticlinoria", "anticlinorium", "anticlockwise", "anticoagulant", "anticoagulation", "anticoagulative", "anticonvulsant", "antics", "anticyclone", "anticyclonic", "antidepressant", "antidiabetic", "antidiarrheal", "antidiuretic", "antidotal", "antidote", "antidromic", "antielectron", "antiemetic", "antiepileptic", "antiestablishmentarianism", "antiestablishmentism", "antifeminism", "antifeminist", "antiferromagnetic", "antiferromagnetism", "antifertility", "antiflatulent", "antifreeze", "antifungal", "antigen", "antigenic", "antigens", "antigram", "Antigua", "antigua", "antiguan", "antihelices", "antihelix", "antiheretical", "antihero", "antiheroes", "antihistamine", "antihypertensive", "antiknock", "antiknocking", "antilepton", "antilog", "antilogarithm", "antimacassar", "antimagnetic", "antimalarial", "antimatter", "antimeson", "antimetabolite", "antimicrobial", "antimicrobic", "antimonial", "antimonic", "antimonious", "antimonopoly", "antimony", "antimuon", "antimycin", "antimycotic", "antineoplastic", "antineutrino", "antineutron", "antinode", "antinomasia", "antinomian", "antinomianism", "antinomy", "antioxidant", "antioxidants", "antiparallel", "antiparticle", "antipasto", "antipathetic", "antipathetical", "antipathy", "antipersonnel", "antiperspirant", "antiphlogistic", "antiphon", "antiphonal", "antiphonary", "antiphony", "antiphrasis", "antipodal", "antipode", "antipodean", "antipollution", "antipope", "antiproton", "antiprotozoal", "antipruritic", "antipsychotic", "antipyresis", "antipyretic", "antiquarian", "antiquark", "antiquary", "antiquate", "antiquated", "antique", "antiques", "antiquing", "antiquity", "antiredeposition", "antisatellite", "antisemitic", "antisemitism", "antisepsis", "antiseptic", "antisepticize", "antisera", "antiserum", "antisocial", "antispasmodic", "antistrophe", "antistrophic", "antisubmarine", "antisyphilitic", "antitank", "antitauon", "antitheses", "antithesis", "antithetic", "antithetical", "antithetically", "antithyroid", "antitoxic", "antitoxin", "antitrade", "antitragi", "antitragus", "antitrust", "antitumor", "antitumour", "antitussive", "antitype", "antitypic", "antitypical", "antivenene", "antivenin", "antivert", "antiviral", "antler", "antlered", "antlion", "antonius", "antonym", "antonymous", "antonymy", "antra", "antrorse", "antrum", "ants", "antsy", "antwerp", "anura", "anuran", "anuresis", "anuretic", "anuria", "anuric", "anurous", "anus", "anvers", "anvil", "anxieties", "anxiety", "anxiolytic", "anxious", "anxiously", "anxiousness", "Any", "any", "anybody", "anyhow", "anymore", "Anyone", "anyone", "anyplace", "anything", "Anyway", "anyway", "anyways", "anywhere", "aorist", "aoristic", "aorta", "aortae", "aortal", "aortic", "aortitis", "aoudad", "apace", "apadana", "apanage", "apar", "apart", "apartheid", "apartment", "apartments", "apathetic", "apathetically", "apathy", "apatite", "apatosaur", "apatosaurus", "apc", "ape", "apelike", "aper", "apercu", "aperea", "aperient", "aperiodic", "aperitif", "aperture", "apery", "apes", "apeshit", "apetalous", "apex", "aphaeresis", "aphaeretic", "aphagia", "aphakia", "aphakic", "aphanite", "aphanitic", "aphasia", "aphasic", "aphelia", "aphelion", "apheresis", "apheretic", "aphesis", "aphetic", "aphid", "aphides", "aphis", "aphonia", "aphonic", "aphorise", "aphorism", "aphorist", "aphoristic", "aphorize", "aphotic", "aphrodisia", "aphrodisiac", "aphrodisiacal", "aphyllous", "apiaceae", "apian", "apiarian", "apiarist", "apiary", "apical", "apices", "apiculate", "apicultural", "apiculture", "apiculturist", "apiece", "aping", "apish", "apishamore", "apivorous", "aplacental", "aplacophora", "aplacophoran", "aplanatic", "aplasia", "aplite", "aplitic", "aplomb", "apnea", "apneic", "apnoeic", "apoapsis", "apocalypse", "apocalyptic", "apocalyptical", "apocarpous", "apochromatic", "apocope", "apocrine", "apocryphal", "apocynaceous", "apodal", "apodeictic", "apodeme", "apodictic", "apodoses", "apodosis", "apodous", "apoenzyme", "apogametic", "apogamic", "apogamous", "apogamy", "apogean", "apogee", "apojove", "apolemia", "apolitical", "apologetic", "apologetically", "apologetics", "apologia", "apologies", "apologise", "apologised", "apologises", "apologising", "apologist", "apologize", "apologized", "apologizes", "apologizing", "apologue", "apology", "apolune", "apomict", "apomictic", "apomictical", "apomixes", "apomixis", "apomorphine", "aponeuroses", "aponeurosis", "aponeurotic", "apopemptic", "apophasis", "apophatic", "apophatism", "apophthegm", "apophyseal", "apophyses", "apophysis", "apoplectic", "apoplectiform", "apoplectoid", "apoplexy", "apoptosis", "aposelene", "aposiopeses", "aposiopesis", "aposiopetic", "apostasy", "apostate", "apostatise", "apostatize", "apostleship", "apostolic", "apostolical", "apostrophe", "apostrophic", "apostrophise", "apostrophize", "apothecary", "apothecia", "apothecial", "apothecium", "apothegm", "apothegmatic", "apothegmatical", "apotheose", "apotheoses", "apotheosis", "apotheosise", "apotheosize", "apotropaic", "app", "appal", "appalachian", "appaling", "appall", "appalled", "appalling", "appallingly", "appalls", "appals", "appanage", "apparatchik", "apparatus", "apparatuses", "apparel", "appareled", "apparency", "apparent", "apparently", "apparentness", "apparition", "apparitional", "appeal", "appealable", "appealed", "appealing", "appealingly", "appealingness", "appeals", "appear", "appearance", "appearances", "appeared", "appearing", "appears", "appeasable", "appease", "appeased", "appeasement", "appeaser", "appeases", "appeasing", "appellant", "appellate", "appellation", "appellative", "append", "appendage", "appendaged", "appendant", "appendectomy", "appended", "appendicectomy", "appendices", "appendicitis", "appendicle", "appendicular", "appendicularia", "appending", "appendix", "appends", "apperceive", "apperception", "apperceptive", "appertain", "appetence", "appetency", "appetent", "appetiser", "appetisers", "appetising", "appetisingly", "appetisingness", "appetite", "appetites", "appetitive", "appetizer", "appetizers", "appetizing", "appetizingly", "appetizingness", "applaud", "applaudable", "applauded", "applauder", "applauding", "applauds", "applause", "apple", "applecart", "applejack", "applemint", "apples", "applesauce", "applet", "applewood", "appliance", "appliances", "applicability", "applicable", "applicant", "applicants", "application", "applications", "applicative", "applicator", "applicatory", "applied", "applier", "applies", "applique", "apply", "applying", "appoggiatura", "appoggiature", "appoint", "appointed", "appointee", "appointees", "appointing", "appointive", "appointment", "appointments", "appoints", "apportion", "apportionable", "apportioned", "apportioning", "apportionment", "apposable", "appose", "apposes", "apposing", "apposite", "appositeness", "apposition", "appositional", "appositive", "appositively", "appraisal", "appraise", "appraised", "appraiser", "appraises", "appraising", "appreciable", "appreciably", "appreciate", "appreciated", "appreciates", "appreciating", "appreciation", "appreciative", "appreciatively", "appreciativeness", "appreciator", "apprehend", "apprehended", "apprehender", "apprehending", "apprehends", "apprehensible", "apprehension", "apprehensive", "apprehensively", "apprehensiveness", "apprentice", "apprenticed", "apprenticeship", "apprenticing", "appressed", "apprisal", "apprise", "apprised", "apprize", "appro", "approach", "approachability", "approachable", "approached", "approaches", "approaching", "approbate", "approbation", "approbative", "approbatory", "appropriable", "appropriate", "appropriated", "appropriately", "appropriateness", "appropriating", "appropriation", "appropriations", "appropriative", "appropriator", "approval", "approvals", "approve", "approved", "approver", "approves", "approving", "approvingly", "approx", "approx.", "approximate", "approximately", "approximates", "approximating", "approximation", "approximative", "appurtenance", "appurtenant", "apr", "APR.", "Apr.", "apr.", "apractic", "apraxia", "apraxic", "apresoline", "apricot", "april", "apron", "apropos", "apse", "apsidal", "apsides", "apsis", "apt", "APT.", "Apt.", "apt.", "apteral", "apterous", "apteryx", "aptitude", "aptitudinal", "aptly", "aptness", "apulia", "aqaba", "aqua", "aquacultural", "aquaculture", "aquae", "aqualung", "aquamarine", "aquanaut", "aquaphobia", "aquaphobic", "aquaplane", "aquaplaning", "aquaria", "aquarium", "aquatic", "aquatint", "aquavit", "aqueduct", "aqueous", "aquicultural", "aquiculture", "aquifer", "aquiferous", "aquilege", "aquilegia", "aquiline", "aquitania", "ar", "Arab", "arab", "arabesque", "Arabia", "arabia", "arabian", "arabic", "arability", "arable", "araceous", "arachnid", "arachnidian", "arachnoid", "arachnophobia", "araglis", "aragonite", "araguaya", "arak", "aralia", "aramaean", "aramaic", "arame", "aramean", "araneida", "araneidal", "araneidan", "araneus", "arapahoe", "arariba", "araroba", "araucaria", "arava", "arawakan", "araxes", "arb", "arbalest", "arbalist", "arbiter", "arbitrable", "arbitrage", "arbitrager", "arbitrageur", "arbitraging", "arbitral", "arbitrament", "arbitrarily", "arbitrariness", "arbitrary", "arbitrate", "arbitrating", "arbitration", "arbitrational", "arbitrative", "arbitrator", "arbitrement", "arbor", "arboraceous", "arborary", "arboreal", "arboreous", "arborescent", "arboresque", "arboreta", "arboretum", "arborical", "arboriculture", "arboriculturist", "arboriform", "arborise", "arborist", "arborize", "arborolatry", "arborous", "arbors", "arborvirus", "arborvitae", "arbour", "arbours", "arbovirus", "arbutus", "arc", "arcade", "arcades", "arcadian", "arcana", "arcane", "arcanum", "arccos", "arccosecant", "arccosine", "arccotangent", "arcdegree", "arced", "arcella", "arch", "archaean", "archaebacteria", "archaebacterium", "archaeobacteria", "archaeologic", "archaeological", "archaeologically", "archaeologist", "archaeologists", "archaeology", "archaeopteryx", "archaeornis", "archaeozoic", "archaic", "archaicism", "archaise", "archaism", "archaist", "archaistic", "archaize", "archangel", "archangelic", "archangelical", "archbishop", "archbishopric", "archdeacon", "archdeaconry", "archdiocesan", "archdiocese", "archducal", "archduchess", "archduchy", "archduke", "archean", "arched", "archegonia", "archegonial", "archegoniate", "archegonium", "archenteron", "archeobacteria", "archeologic", "archeological", "archeologically", "archeologist", "archeologists", "archeology", "archeopteryx", "archeozoic", "archepiscopal", "archer", "archerfish", "archerfishes", "archery", "arches", "archespore", "archesporia", "archesporial", "archesporium", "archetypal", "archetype", "archetypical", "archiannelid", "archidiaconal", "archidiaconate", "archiepiscopal", "archil", "archimandrite", "archine", "arching", "archipallium", "archipelagic", "archipelago", "archipelagoes", "architect", "architectonic", "architectonics", "architects", "architectural", "architecturally", "architecture", "architectures", "architeuthis", "architrave", "archival", "archive", "archives", "archiving", "archivist", "archly", "archness", "archosaur", "archosaurian", "archpriest", "archway", "arciform", "arcing", "arcked", "arcking", "arcminute", "arco", "arcs", "arcsec", "arcsecant", "arcsecond", "arcsin", "arcsine", "arctan", "arctangent", "arctic", "arctiid", "arcuate", "arcus", "arda", "ardeb", "ardent", "ardently", "ardor", "ardour", "ards", "arduous", "arduously", "arduousness", "ARE", "Are", "are", "area", "areal", "areas", "areaway", "areca", "arecaceae", "areflexia", "AREN'T", "Aren't", "aren't", "arena", "arenaceous", "arenas", "arenavirus", "arenicolous", "ARENT", "Arent", "arent", "AREN\u2019T", "Aren\u2019t", "aren\u2019t", "areola", "areolae", "areolar", "areolate", "arere", "arete", "arethusa", "argal", "argali", "argasid", "argemone", "argent", "argentic", "argentiferous", "Argentina", "argentina", "argentine", "argentinian", "argentinosaur", "argentite", "argentous", "argil", "argillaceous", "argillite", "arginine", "argive", "argon", "argonaut", "argonne", "argonon", "argosy", "argot", "arguable", "arguably", "argue", "argued", "arguer", "argues", "argufied", "argufy", "arguing", "argument", "argumenta", "argumentation", "argumentative", "argumentatively", "arguments", "argumentum", "argyle", "argyll", "argyrodite", "argyrol", "arhant", "aria", "arianist", "arianrod", "aricara", "arid", "aridity", "aridness", "arietta", "ariette", "aright", "aril", "ariled", "arillate", "ariose", "arioso", "arise", "arisen", "arises", "arishth", "arising", "arista", "aristae", "aristocort", "aristocracy", "aristocrat", "aristocratic", "aristocratical", "aristocratically", "aristocrats", "aristopak", "aristotelean", "aristotelian", "aristotelic", "arithmancy", "arithmetic", "arithmetical", "arithmetically", "arithmetician", "arity", "ARIZ.", "Ariz.", "ariz.", "arizona", "arizonian", "ark", "ARK.", "Ark.", "ark.", "arkansas", "arkansawyer", "arles", "arm", "armada", "armadillo", "armageddon", "armament", "armamentaria", "armamentarium", "armature", "armband", "armchair", "armed", "armenian", "armet", "armful", "armguard", "armhole", "armies", "armiger", "armilla", "armillary", "armin", "arming", "arminian", "armistice", "armless", "armlet", "armlike", "armoire", "armor", "armored", "armorer", "armorers", "armorial", "armories", "armory", "armour", "armoured", "armourer", "armourers", "armouries", "armoury", "armpit", "armrest", "arms", "army", "armyworm", "arng", "arnica", "aroid", "aroma", "aromatherapy", "aromatic", "aromatise", "aromatize", "arose", "arouet", "Around", "around", "arousal", "arouse", "aroused", "arouser", "arouses", "arousing", "arpeggio", "arpent", "arquebus", "arrack", "arraign", "arraignment", "arrange", "arranged", "arrangement", "arrangements", "arranger", "arranges", "arranging", "arrant", "arras", "array", "arrayed", "arraying", "arrays", "arrears", "arrest", "arrested", "arrester", "arresting", "arrests", "arrhythmia", "arrhythmic", "arrhythmical", "arrival", "arrivals", "arrive", "arrived", "arrivederci", "arriver", "arrives", "arriving", "arriviste", "arroba", "arrogance", "arrogant", "arrogantly", "arrogate", "arrogation", "arrogator", "arrow", "arrowhead", "arrowheads", "arrowroot", "arrows", "arrowsmith", "arrowworm", "arroyo", "ars", "arse", "arsehole", "arsenal", "arsenate", "arsenic", "arsenical", "arsenide", "arsenious", "arsenopyrite", "arses", "arsine", "arsis", "arson", "arsonist", "art", "artal", "artaxerxes", "artefact", "artefacts", "artefactual", "artel", "artemisia", "arteria", "arterial", "arterialise", "arterialize", "arteriectasia", "arteriectasis", "arteries", "arteriogram", "arteriography", "arteriola", "arteriolar", "arteriole", "arteriolosclerosis", "arterioscleroses", "arteriosclerosis", "arteriosclerotic", "arteriovenous", "arteritis", "artery", "artesian", "artful", "artfully", "artfulness", "arthralgia", "arthralgic", "arthritic", "arthritis", "arthrocentesis", "arthrodesis", "arthrogram", "arthrography", "arthromere", "arthromeric", "arthropathy", "arthroplasty", "arthropod", "arthropodal", "arthropodan", "arthropodous", "arthroscope", "arthroscopy", "arthrospore", "arthrosporic", "arthrosporous", "arthurian", "artichoke", "article", "articled", "articles", "articular", "articulary", "articulate", "articulated", "articulately", "articulateness", "articulates", "articulating", "articulatio", "articulation", "articulative", "articulator", "articulatory", "artier", "artiest", "artifact", "artifacts", "artifactual", "artifice", "artificer", "artificial", "artificiality", "artificially", "artillery", "artilleryman", "artiodactyl", "artiodactylous", "artisan", "artisans", "artist", "artiste", "artistic", "artistically", "artistry", "artists", "artless", "artlessly", "artlessness", "arts", "Artsakh", "artsakh", "artsd", "artwork", "arty", "arugula", "arui", "arum", "arundinaceous", "aruspex", "aruspices", "aryan", "arytaenoid", "arytenoid", "As", "as", "asadha", "asafetida", "asafoetida", "asala", "asamiya", "asana", "asap", "asarabacca", "asat", "asbestos", "asbestosis", "ascariasis", "ascend", "ascendable", "ascendance", "ascendancy", "ascendant", "ascendence", "ascendency", "ascendent", "ascender", "ascendible", "ascending", "ascends", "ascensional", "ascensive", "ascent", "ascertain", "ascertainable", "ascertained", "ascertaining", "ascertains", "asceses", "ascesis", "ascetic", "ascetical", "ascetically", "asceticism", "aschelminthes", "asci", "ascidia", "ascidian", "ascidium", "ascii", "ascites", "ascitic", "asclepiad", "asclepiadaceous", "asclepius", "ascocarp", "ascocarpous", "ascogonia", "ascogonium", "ascolichen", "ascoma", "ascomycete", "ascomycetous", "ascomycotina", "ascospore", "ascosporic", "ascosporous", "ascot", "ascribable", "ascribe", "ascribed", "ascribes", "ascribing", "ascription", "ascus", "asdic", "asea", "asean", "asepsis", "aseptic", "asexual", "asexuality", "asexually", "Ash", "ash", "ashame", "ashamed", "ashamedly", "ashbin", "ashcake", "ashcan", "ashen", "ashes", "ashier", "ashiest", "ashing", "ashir", "ashkenazi", "ashkenazim", "ashlar", "ashore", "ashram", "ashtoreth", "ashtray", "ashy", "asian", "asiatic", "aside", "asinine", "asininity", "ask", "askance", "askant", "asked", "asker", "askew", "asking", "asklepios", "asks", "asl", "aslant", "asleep", "aslope", "asmera", "asocial", "asp", "aspadana", "asparaginase", "asparagine", "asparagus", "aspartame", "aspect", "aspects", "aspectual", "aspen", "asper", "aspergill", "aspergilla", "aspergillales", "aspergilli", "aspergilloses", "aspergillosis", "aspergillum", "aspergillus", "asperity", "asperse", "aspersion", "aspersoria", "aspersorium", "asphalt", "asphaltic", "aspheric", "aspherical", "asphodel", "asphyxia", "asphyxiate", "asphyxiated", "asphyxiating", "asphyxiation", "asphyxiator", "aspic", "aspidistra", "aspinwall", "aspirant", "aspirate", "aspiration", "aspirations", "aspirator", "aspire", "aspired", "aspirer", "aspires", "aspirin", "aspiring", "aspis", "ASQ", "asq", "asquint", "ass", "assagai", "assail", "assailability", "assailable", "assailant", "assailed", "assailing", "assamese", "assassin", "assassinate", "assassinated", "assassinates", "assassinating", "assassination", "assassinations", "assassinator", "assault", "assaulter", "assaulting", "assaultive", "assaults", "assay", "assayer", "assaying", "assays", "assegai", "assegais", "assemblage", "assemble", "assembled", "assembler", "assembles", "assemblies", "assembling", "assembly", "assemblyman", "assemblywoman", "assent", "assenter", "assentient", "assenting", "assents", "assert", "assertable", "asserted", "asserter", "asserting", "assertion", "assertions", "assertive", "assertively", "assertiveness", "asserts", "asses", "assess", "assessable", "assessed", "assessee", "assesses", "assessing", "assessment", "assessments", "assessor", "asset", "assets", "asseverate", "asseverating", "asseveration", "asseverator", "assfuck", "assfucking", "asshole", "assibilate", "assibilation", "assiduity", "assiduous", "assiduously", "assiduousness", "assign", "assignable", "assignation", "assigned", "assignee", "assigning", "assignment", "assignments", "assignor", "assigns", "assimilable", "assimilate", "assimilates", "assimilating", "assimilation", "assimilative", "assimilator", "assimilatory", "assist", "assistance", "assistant", "assistants", "assisted", "assisting", "assistive", "assists", "assize", "ASSOC.", "Assoc.", "assoc.", "associability", "associable", "associableness", "associate", "associated", "associates", "associateship", "associating", "association", "associational", "associationism", "associations", "associative", "associatory", "assoil", "assonance", "assonant", "assonate", "assort", "assorted", "assortment", "assouan", "assuage", "assuagement", "assuaging", "assuan", "assuasive", "assume", "assumed", "assumes", "assuming", "assumption", "assumptions", "assumptive", "assurance", "assurances", "assurbanipal", "assure", "assured", "assuredly", "assuredness", "assures", "assurgent", "assuring", "ast", "astacura", "astasia", "astatic", "astatine", "aster", "asteraceae", "astereognosis", "asteriated", "asterion", "asterisk", "asterisked", "asterism", "asterismal", "astern", "asternal", "asteroid", "asteroidal", "asterope", "asthenia", "asthenic", "asthenopia", "asthenosphere", "astheny", "asthma", "asthmatic", "astigmatic", "astigmatism", "astigmia", "astilbe", "astir", "astomatal", "astomatous", "astonied", "astonish", "astonished", "astonishing", "astonishingly", "astonishment", "astound", "astounded", "astounding", "astoundingly", "astounds", "astraddle", "astragal", "astragalar", "astragali", "astragalus", "astral", "astrantia", "astraphobia", "astray", "astride", "astringe", "astringence", "astringency", "astringent", "astrobiology", "astrocyte", "astrocytic", "astrodome", "astrodynamics", "astrogate", "astrogator", "astroglia", "astrolabe", "astrolatry", "astrologer", "astrological", "astrologist", "astrology", "astrometry", "astronaut", "astronautic", "astronautical", "astronautics", "astronavigation", "astronomer", "astronomers", "astronomic", "astronomical", "astronomically", "astronomy", "astrophysical", "astrophysicist", "astrophysics", "astute", "astutely", "astuteness", "astylar", "asunder", "asur", "asurbanipal", "asvina", "asylum", "asymmetric", "asymmetrical", "asymmetrically", "asymmetry", "asymptomatic", "asymptote", "asymptotic", "asymptotically", "asynchronism", "asynchronous", "asynchrony", "asynclitism", "asyndeta", "asyndetic", "asyndeton", "asynergia", "asynergic", "asynergy", "asystole", "At", "at", "atabrine", "atactic", "atakapan", "atar", "ataractic", "atarax", "ataraxia", "ataraxic", "ataraxis", "atavism", "atavist", "atavistic", "ataxia", "ataxic", "ataxy", "atayalic", "ate", "atelectasis", "ateleiosis", "ateleiotic", "atelier", "ateliosis", "atenolol", "atf", "athabascan", "athabaskan", "athanor", "athapascan", "athar", "atheism", "atheist", "atheistic", "atheistical", "atheists", "athenaeum", "atheneum", "athenian", "atherodyde", "atherogenesis", "atheroma", "atheromata", "atheromatic", "atheromatous", "atheroscleroses", "atherosclerosis", "atherosclerotic", "athetosis", "athinai", "athirst", "athlete", "athletes", "athletic", "athleticism", "athletics", "athodyd", "athwart", "athyriaceae", "atilt", "ativan", "atlantic", "atlantides", "atm", "atmolyses", "atmolysis", "atmometer", "atmosphere", "atmospheric", "atmospherical", "atmospherics", "atole", "atoll", "atom", "atomic", "atomisation", "atomise", "atomiser", "atomism", "atomistic", "atomistical", "atomization", "atomize", "atomizer", "atoms", "aton", "atonal", "atonalism", "atonalistic", "atonality", "atonally", "atone", "atonement", "atonia", "atonic", "atonicity", "atoning", "atony", "Atop", "atop", "atopognosia", "atopognosis", "atopy", "atorvastatin", "atoxic", "atp", "atrabilious", "atrazine", "atresia", "atria", "atrial", "atrioventricular", "atrip", "atrium", "atrocious", "atrociously", "atrociousness", "atrocities", "atrocity", "atrophedema", "atrophic", "atrophied", "atrophy", "atrophying", "atropine", "atrovent", "attacapa", "attacapan", "attach", "attachable", "attache", "attached", "attaches", "attaching", "attachment", "attachments", "attack", "attacked", "attacker", "attacking", "attacks", "attain", "attainability", "attainable", "attainableness", "attainder", "attained", "attaining", "attainment", "attains", "attaint", "attar", "attemper", "attempt", "attempted", "attempter", "attempting", "attempts", "attend", "attendance", "attendant", "attendants", "attended", "attendee", "attendees", "attender", "attending", "attends", "attention", "attentional", "attentive", "attentively", "attentiveness", "attenuate", "attenuated", "attenuates", "attenuating", "attenuation", "attenuator", "attest", "attestant", "attestation", "attestator", "attested", "attester", "attesting", "attestor", "attests", "attic", "attilio", "attire", "attired", "attitude", "attitudes", "attitudinal", "attitudinise", "attitudinize", "attitudinizing", "attorn", "attorney", "attorneys", "attorneyship", "attosecond", "attract", "attractable", "attracted", "attracter", "attracting", "attraction", "attractions", "attractive", "attractively", "attractiveness", "attractor", "attracts", "attributable", "attribute", "attributed", "attributes", "attributing", "attribution", "attributive", "attributively", "attrited", "attrition", "attritional", "attune", "atypic", "atypical", "atypicality", "atypically", "au", "auberge", "aubergine", "auburn", "auc", "auction", "auctioned", "auctioneer", "auctioning", "auctions", "auctorial", "aud", "audacious", "audaciously", "audaciousness", "audacity", "audad", "audenesque", "audibility", "audible", "audibleness", "audibly", "audience", "audiences", "audile", "audio", "audiocassette", "audiogram", "audiology", "audiometer", "audiometric", "audiometry", "audiotape", "audiovisual", "audit", "audited", "auditing", "audition", "auditioning", "auditive", "auditor", "auditoria", "auditorium", "auditors", "auditory", "audits", "aug", "AUG.", "Aug.", "aug.", "augean", "augend", "auger", "aught", "augite", "augitic", "augment", "augmentation", "augmentative", "augmented", "augmentin", "augmenting", "augur", "auguring", "augury", "August", "august", "augustan", "auk", "auklet", "auld", "aum", "aunt", "auntie", "aunts", "aunty", "aura", "aurae", "aural", "aurally", "aurar", "aureate", "aurei", "aurelius", "aureole", "aureomycin", "aureus", "auric", "auricle", "auricula", "auriculae", "auricular", "auriculare", "auriculate", "auriculated", "auriculoventricular", "auriferous", "auriform", "aurify", "auriscope", "aurochs", "aurora", "aurorae", "auroral", "aurorean", "auroscope", "aurous", "auscultate", "auscultation", "auscultatory", "auspex", "auspicate", "auspice", "auspicious", "auspiciously", "auspiciousness", "aussie", "austenite", "austenitic", "austere", "austerely", "austereness", "austerity", "austral", "australasian", "Australia", "australia", "australian", "australopithecine", "australopithecus", "Austria", "austria", "austrian", "austronesian", "autacoid", "autacoidal", "autarchic", "autarchical", "autarchy", "autarkic", "autarkical", "autarky", "auteur", "authentic", "authentically", "authenticate", "authenticated", "authentication", "authenticator", "authenticity", "author", "authored", "authoress", "authorial", "authoring", "authorisation", "authorise", "authorised", "authoriser", "authorises", "authorising", "authoritarian", "authoritarianism", "authoritative", "authoritatively", "authorities", "authority", "authorization", "authorize", "authorized", "authorizer", "authorizes", "authorizing", "authors", "authorship", "autism", "autistic", "auto", "autoantibodies", "autoantibody", "autobahn", "autobiographer", "autobiographic", "autobiographical", "autobiography", "autobus", "autocatalyses", "autocatalysis", "autocatalytic", "autochthon", "autochthonal", "autochthones", "autochthonic", "autochthonous", "autochthony", "autoclave", "autoclaving", "autocoid", "autocracy", "autocrat", "autocratic", "autocratically", "autocue", "autodidact", "autodidactic", "autoecious", "autoerotic", "autoeroticism", "autoerotism", "autofluorescence", "autofluorescent", "autofocus", "autogamic", "autogamous", "autogamy", "autogenesis", "autogenetic", "autogenic", "autogenics", "autogenous", "autogeny", "autogiro", "autograft", "autograph", "autographed", "autographic", "autographing", "autographs", "autogyro", "autoicous", "autoimmune", "autoimmunity", "autoinjector", "autolatry", "autoloader", "autoloading", "autologous", "autolysis", "autolytic", "automaker", "automakers", "automat", "automata", "automate", "automated", "automates", "automatic", "automatically", "automating", "automation", "automatise", "automatism", "automatize", "automaton", "automatonlike", "automobile", "automobiles", "automobilist", "automotive", "automysophobia", "autonomic", "autonomous", "autonomy", "autophyte", "autophytic", "autopilot", "autoplastic", "autoplasty", "autopsy", "autoradiograph", "autoradiographic", "autoradiography", "autoregulation", "autosemantic", "autosexing", "autosomal", "autosome", "autostrada", "autosuggestion", "autotelic", "autotelism", "autotomic", "autotomise", "autotomize", "autotomy", "autotroph", "autotrophic", "autotype", "autotypic", "autotypy", "autumn", "autumnal", "auxesis", "auxetic", "auxiliary", "auxin", "auxinic", "avadavat", "avail", "availability", "available", "availableness", "availing", "avalanche", "avalanches", "avalanching", "avalokiteshvara", "avaram", "avarice", "avaricious", "avariciously", "avariciousness", "avaritia", "avascular", "avatar", "AVE.", "Ave.", "ave.", "avellan", "avellane", "avenge", "avenged", "avenger", "avengers", "avenges", "avenging", "avens", "aventail", "aventurine", "avenue", "avenues", "aver", "average", "averaged", "averageness", "averages", "averaging", "averment", "averred", "averring", "averse", "aversion", "aversive", "avert", "avertable", "averted", "avertible", "averting", "averts", "avestan", "avian", "avianise", "avianize", "aviary", "aviate", "aviation", "aviator", "aviatress", "aviatrix", "avid", "avidity", "avidly", "avidness", "avifauna", "avifaunal", "avifaunistic", "avionic", "avionics", "avirulent", "avitaminoses", "avitaminosis", "avitaminotic", "avo", "avocado", "avocation", "avocational", "avocet", "avoid", "avoidable", "avoidance", "avoided", "avoiding", "avoids", "avoirdupois", "avouch", "avouchment", "avow", "avowal", "avowed", "avowedly", "avower", "avowing", "avulse", "avulsion", "avuncular", "Aw", "aw", "await", "awaited", "awaiting", "awaits", "awake", "awaken", "awakened", "awakening", "awakes", "awaking", "award", "awarded", "awarding", "awards", "aware", "awareness", "awash", "away", "awayness", "awe", "aweary", "awed", "aweigh", "aweless", "awesome", "awestricken", "awestruck", "awful", "awfully", "awfulness", "awheel", "awhile", "awing", "awkward", "awkwardly", "awkwardness", "awl", "awless", "awlwort", "awn", "awned", "awning", "awninged", "awnless", "awny", "awoke", "awol", "awry", "Aww", "aww", "ax", "axe", "axed", "axenic", "axerophthol", "axes", "axial", "axially", "axil", "axile", "axilla", "axillae", "axillary", "axing", "axiological", "axiology", "axiom", "axiomatic", "axiomatical", "axiomatically", "axioms", "axis", "axle", "axletree", "axolemma", "axolotl", "axon", "axonal", "axone", "axons", "axseed", "ayah", "ayapana", "ayatollah", "ayin", "azactam", "azadirachtin", "azalea", "azaleastrum", "azathioprine", "azedarach", "azederach", "azerbaijani", "azerbajdzhan", "azide", "azido", "azimuth", "azimuthal", "azithromycin", "azo", "azoic", "azoimide", "azonal", "azonic", "azotaemia", "azote", "azotemia", "azotemic", "azotic", "azoturia", "azt", "aztreonam", "azure", "azurite", "azygos", "azygous", "azymia", "b.", "B.C.", "b.c.", "b/c", "b4", "ba", "baa", "baba", "babassu", "babbitt", "babbitting", "babble", "babbler", "babbling", "babe", "babel", "babelike", "babied", "babies", "babiroussa", "babirusa", "babirussa", "babka", "baboo", "baboon", "baboonish", "babu", "babushka", "baby", "babyhood", "babyish", "babylonian", "babyminder", "babysit", "babysitter", "babysitting", "babytalk", "bacca", "baccalaureate", "baccarat", "baccate", "bacchanal", "bacchanalia", "bacchanalian", "bacchant", "bacchante", "bacchantes", "bacchantic", "bacchic", "bacchii", "bacchius", "bacciferous", "baccivorous", "baccy", "bach", "bachelor", "bachelorette", "bachelorhood", "bacillar", "bacillary", "bacilli", "bacilliform", "bacillus", "bacitracin", "back", "backache", "backband", "backbeat", "backbench", "backbencher", "backbend", "backbite", "backbiter", "backblast", "backboard", "backbone", "backbreaking", "backchat", "backcloth", "backcross", "backcrossing", "backdate", "backdated", "backdating", "backdoor", "backdown", "backdrop", "backed", "backer", "backers", "backfield", "backfire", "backfired", "backfires", "backfiring", "backflow", "backflowing", "backgammon", "background", "backgrounder", "backgrounding", "backgrounds", "backhand", "backhanded", "backhander", "backhoe", "backing", "backlash", "backless", "backlighting", "backlog", "backmost", "backpack", "backpacker", "backpacking", "backpedal", "backpedaled", "backpedaling", "backpedalled", "backpedalling", "backplate", "backrest", "backroom", "backs", "backsaw", "backscatter", "backscratcher", "backseat", "backsheesh", "backside", "backslap", "backslapper", "backslide", "backslider", "backsliding", "backspace", "backspacer", "backspin", "backstage", "backstair", "backstairs", "backstay", "backstitch", "backstop", "backstroke", "backstroker", "backswept", "backswimmer", "backsword", "backtalk", "backtrack", "backtracking", "backtracks", "backup", "backward", "backwardness", "backwards", "backwash", "backwater", "backwoods", "backwoodsman", "backyard", "bacon", "bacteremia", "bacteremic", "bacteria", "bacteriacide", "bacteriaemia", "bacterial", "bacterially", "bactericidal", "bactericide", "bacteriemia", "bacteriochlorophyll", "bacterioid", "bacterioidal", "bacteriologic", "bacteriological", "bacteriologist", "bacteriology", "bacteriolysis", "bacteriolytic", "bacteriophage", "bacteriophagic", "bacteriophagous", "bacteriostases", "bacteriostasis", "bacteriostat", "bacteriostatic", "bacterise", "bacterium", "bacterize", "bacteroid", "bacteroidal", "bacula", "baculiform", "baculum", "bad", "badass", "baddeleyite", "baddie", "badge", "badger", "badgerer", "badgering", "badging", "badinage", "badlands", "badly", "badminton", "badmouth", "badmouthing", "badness", "baeda", "baffle", "baffled", "bafflement", "baffling", "bag", "bagascosis", "bagasse", "bagassosis", "bagatelle", "bagdad", "bagel", "bagels", "bagful", "baggage", "baggageman", "bagged", "bagger", "baggier", "baggiest", "bagging", "baggy", "bagman", "bagnio", "bagpipe", "bagpiper", "bags", "baguet", "baguette", "bahai", "Bahamas", "bahamas", "bahamian", "bahasa", "Bahrain", "bahrain", "bahraini", "bahrein", "bahreini", "baht", "baic", "bail", "bailable", "bailed", "bailee", "bailiff", "bailiffship", "bailing", "bailiwick", "bailment", "bailor", "bailout", "bairiki", "bairn", "baisa", "bait", "baiting", "baiza", "baize", "bake", "bakeapple", "baked", "bakehouse", "baker", "bakery", "bakeshop", "baking", "baklava", "baksheesh", "bakshis", "bakshish", "balaclava", "balagan", "balalaika", "balance", "balanced", "balancer", "balances", "balancing", "balanitis", "balanoposthitis", "balas", "balata", "balbriggan", "balconied", "balconies", "balcony", "bald", "baldachin", "balderdash", "baldhead", "balding", "baldly", "baldness", "baldpate", "baldr", "baldric", "baldrick", "baldy", "bale", "baleen", "balefire", "baleful", "balefully", "balefulness", "balibago", "baling", "balk", "balkanise", "balkanize", "balkanizing", "balked", "balker", "balkier", "balkiest", "balkiness", "balking", "balkline", "balks", "balky", "ball", "ballad", "ballade", "balladeer", "ballads", "ballast", "ballcock", "balldress", "ballerina", "ballet", "balletic", "balletomane", "balletomania", "ballgame", "balling", "ballista", "ballistae", "ballistic", "ballistics", "ballistite", "ballistocardiogram", "ballistocardiograph", "ballock", "balloon", "ballooned", "balloonfish", "ballooning", "balloonist", "balloons", "ballot", "balloting", "ballots", "ballottement", "ballpark", "ballpen", "ballplayer", "ballpoint", "ballroom", "balls", "ballup", "bally", "ballyhoo", "ballyhooed", "ballyrag", "ballyragged", "ballyragging", "balm", "balmier", "balmiest", "balmily", "balminess", "balmy", "baloney", "balsa", "balsam", "balsamic", "balsamroot", "balsamy", "balthasar", "baltic", "baluchi", "baluster", "balustrade", "balzacian", "Bam", "bam", "bambini", "bambino", "bamboo", "bamboozle", "bamboozled", "bamboozles", "ban", "banal", "banality", "banana", "bananas", "banausic", "band", "bandage", "bandaged", "bandages", "bandaging", "bandana", "bandanna", "bandbox", "bandeau", "bandeaux", "banded", "bandelet", "bandelette", "banderilla", "banderillero", "bandicoot", "bandied", "bandier", "bandiest", "banding", "bandit", "banditry", "banditti", "bandleader", "bandlet", "bandmaster", "bandoleer", "bandolier", "bandoneon", "bands", "bandsaw", "bandsman", "bandstand", "bandtail", "bandwagon", "bandwidth", "bandy", "bandyleg", "bane", "baneberry", "baneful", "banefully", "bang", "banger", "banging", "bangla", "Bangladesh", "bangladesh", "bangladeshi", "bangle", "bangs", "bangtail", "bani", "banian", "banish", "banished", "banishes", "banishing", "banishment", "banister", "banisters", "banjo", "banjoes", "bank", "bankable", "bankbook", "banker", "bankers", "banking", "banknote", "bankroll", "bankrolling", "bankrupt", "bankruptcy", "bankrupting", "banks", "banksia", "bankster", "banned", "banner", "banneret", "bannerlike", "banners", "banning", "bannister", "bannisters", "bannock", "banns", "banquet", "banqueting", "banquette", "bans", "banshee", "banshie", "bantam", "bantamweight", "banteng", "banter", "bantering", "banteringly", "bantoid", "bantu", "banyan", "banzai", "baobab", "bap", "baptise", "baptised", "baptises", "baptising", "baptism", "baptismal", "baptistery", "baptistic", "baptistry", "baptize", "baptized", "baptizes", "baptizing", "bar", "baranduki", "barb", "barbacan", "barbadian", "Barbados", "barbados", "barbarian", "barbaric", "barbarisation", "barbarise", "barbarism", "barbarity", "barbarization", "barbarize", "barbarossa", "barbarous", "barbarously", "barbarousness", "barbasco", "barbate", "barbecue", "barbecued", "barbecueing", "barbecuing", "barbed", "barbel", "barbell", "barbellate", "barbeque", "barber", "barberry", "barbershop", "barbet", "barbette", "barbican", "barbital", "barbitone", "barbiturate", "barbu", "Barbuda", "barbuda", "barbwire", "barcarole", "barcarolle", "bard", "barde", "bardic", "bardolatry", "bare", "bareback", "barebacked", "bareboat", "bareboating", "bared", "barefaced", "barefacedly", "barefoot", "barefooted", "barehanded", "bareheaded", "barelegged", "barely", "bareness", "barf", "barfing", "bargain", "bargained", "bargainer", "bargaining", "bargains", "barge", "bargee", "bargello", "bargeman", "barges", "barging", "baric", "barilla", "baring", "barish", "barite", "baritone", "barium", "bark", "barkeep", "barkeeper", "barker", "barking", "barklice", "barklouse", "barks", "barky", "barley", "barleycorn", "barm", "barmaid", "barman", "barmbrack", "barmier", "barmiest", "barmy", "barn", "barnacle", "barnburner", "barndoor", "barnful", "barnstorm", "barnstormer", "barnstorming", "barnstorms", "barnyard", "barograph", "barographic", "barometer", "barometric", "barometrical", "baron", "baronage", "baronduki", "baroness", "baronet", "baronetage", "baronetcy", "baronetise", "baronetize", "barong", "baronial", "barony", "baroque", "baroqueness", "baroreceptor", "barosaur", "barosaurus", "barouche", "barque", "barrack", "barracking", "barracks", "barracouta", "barracuda", "barrage", "barraging", "barramundi", "barramundies", "barrater", "barrator", "barratry", "barred", "barrel", "barreled", "barrelfish", "barrelful", "barrelhouse", "barreling", "barrelled", "barrelling", "barrels", "barren", "barrenness", "barrenwort", "barrette", "barretter", "barricade", "barricaded", "barricading", "barricado", "barrier", "barriers", "barring", "barrio", "barrister", "barroom", "barrow", "barrowful", "bars", "bart", "bartender", "barter", "bartered", "barterer", "bartonia", "barunduki", "barycenter", "barye", "baryon", "baryta", "barytes", "barytic", "barytone", "basal", "basalt", "basaltic", "bascule", "base", "baseball", "baseboard", "baseborn", "based", "baseless", "baseline", "basely", "basement", "basements", "baseness", "basenji", "bases", "bash", "bashes", "bashful", "bashfully", "bashfulness", "bashing", "basia", "basic", "basically", "basics", "basidia", "basidial", "basidiocarp", "basidiolichen", "basidiomycete", "basidiomycetous", "basidiomycotina", "basidiospore", "basidiosporous", "basidium", "basified", "basifixed", "basify", "basil", "basilar", "basilary", "basileis", "basileus", "basilica", "basilican", "basilisk", "basin", "basinal", "basined", "basinet", "basinful", "basing", "basipetal", "basis", "basiscopic", "bask", "basket", "basketball", "basketeer", "basketful", "basketmaker", "basketry", "baskets", "basketweaver", "basking", "basks", "basle", "basophil", "basophile", "basophilia", "basophilic", "bass", "bassarisk", "basset", "bassi", "bassine", "bassinet", "bassist", "basso", "bassoon", "bassoonist", "basswood", "bastard", "bastardisation", "bastardise", "bastardised", "bastardises", "bastardising", "bastardization", "bastardize", "bastardized", "bastardizes", "bastardizing", "bastardly", "bastards", "bastardy", "baste", "baster", "bastille", "bastinado", "bastinadoes", "basting", "bastion", "bastioned", "bastnaesite", "bastnasite", "basuco", "basuto", "basutoland", "bat", "batch", "batches", "batching", "bate", "bateau", "bateaux", "bated", "batfish", "batfishes", "batfowl", "bath", "bathe", "bathed", "bather", "bathes", "bathetic", "bathhouse", "bathing", "batholite", "batholith", "batholithic", "batholitic", "bathometer", "bathos", "bathrobe", "bathroom", "bathrooms", "baths", "bathtub", "bathyal", "bathymeter", "bathymetric", "bathymetrical", "bathymetry", "bathyscape", "bathyscaph", "bathyscaphe", "bathysphere", "batik", "bating", "batiste", "batman", "batoidei", "baton", "batrachia", "batrachian", "batrachomyomachia", "bats", "batsman", "batswana", "battalion", "batted", "batten", "battening", "batter", "battercake", "battered", "batteries", "battering", "batters", "battery", "battier", "battiest", "batting", "battle", "battleax", "battleaxe", "battled", "battledore", "battlefield", "battlefront", "battleful", "battleground", "battlement", "battlemented", "battler", "battles", "battleship", "battlesight", "battlewagon", "battling", "battue", "batty", "batwing", "bauble", "baud", "baulk", "baulked", "baulker", "baulkier", "baulkiest", "baulking", "baulks", "baulky", "bauxite", "bauxitic", "bavarian", "bawbee", "bawd", "bawdier", "bawdiest", "bawdily", "bawdiness", "bawdry", "bawdy", "bawdyhouse", "bawl", "bawler", "bawling", "bay", "baya", "bayat", "bayberry", "baycol", "bayer", "bayesian", "baying", "baykal", "bayonet", "bayonetted", "bayonetting", "bayou", "bays", "bazaar", "bazar", "bazillion", "bazooka", "bbl", "bc", "BCCI", "bcci", "bce", "bcoz", "bdellium", "be", "beach", "beachball", "beachcomber", "beaches", "beachfront", "beachhead", "beaching", "beachwear", "beacon", "bead", "beaded", "beadier", "beadiest", "beading", "beadle", "beadlike", "beads", "beadsman", "beadsmen", "beadwork", "beady", "beagle", "beagling", "beak", "beaked", "beaker", "beakless", "beaklike", "beam", "beamed", "beaming", "beamish", "beams", "beamy", "bean", "beanbag", "beanball", "beaner", "beanfeast", "beanie", "beano", "beans", "beanstalk", "beantown", "beany", "bear", "bearable", "bearberry", "bearcat", "beard", "bearded", "beardless", "beardown", "bearer", "bearing", "bearings", "bearish", "bearnaise", "bears", "bearskin", "bearwood", "beast", "beastlier", "beastliest", "beastliness", "beastly", "beasts", "beat", "beatable", "beaten", "beater", "beatific", "beatification", "beatified", "beatify", "beating", "beatnik", "beats", "beau", "beaugregory", "beaut", "beauteous", "beauteousness", "beautician", "beauties", "beautification", "beautified", "beautifies", "beautiful", "beautifully", "beautify", "beautifying", "beauty", "beaux", "beaver", "bebop", "becalm", "becalmed", "became", "Because", "because", "bechamel", "bechance", "becharm", "bechuana", "beck", "beckon", "beckoning", "beckons", "becloud", "become", "becomes", "becoming", "becomingly", "becomingness", "bed", "beda", "bedamn", "bedaub", "bedaubed", "bedaze", "bedazzle", "bedbug", "bedchamber", "bedclothes", "bedcover", "bedded", "bedder", "bedding", "bedeck", "bedecking", "bedesman", "bedevil", "bedeviled", "bedeviling", "bedevilled", "bedevilling", "bedevilment", "bedevils", "bedew", "bedewed", "bedewing", "bedfast", "bedfellow", "bedframe", "bedground", "bedhop", "bedight", "bedim", "bedimmed", "bedimming", "bedizen", "bedlamite", "bedless", "bedpan", "bedpost", "bedraggle", "bedraggled", "bedrest", "bedrid", "bedridden", "bedrock", "bedroll", "bedroom", "bedrooms", "beds", "bedside", "bedsit", "bedsitter", "bedsore", "bedspread", "bedspring", "bedstead", "bedstraw", "bedtime", "beduin", "bedwetter", "bee", "beebalm", "beebread", "beech", "beechen", "beechnut", "beechwood", "beef", "beefalo", "beefburger", "beefcake", "beefeater", "beefed", "beefier", "beefiest", "beefing", "beefsteak", "beefwood", "beefy", "beehive", "beekeeper", "beekeeping", "beeline", "beelzebub", "been", "beep", "beeper", "beeping", "beeps", "beer", "beerier", "beeriest", "beers", "beery", "bees", "beeswax", "beet", "beethovenian", "beetle", "beetles", "beetleweed", "beetling", "beetroot", "beets", "beeves", "befall", "befallen", "befalling", "befell", "befit", "befitted", "befitting", "befittingly", "befog", "befogged", "befogging", "befool", "befooling", "Before", "before", "beforehand", "befoul", "befouled", "befouling", "befoulment", "befriend", "befriended", "befriending", "befriends", "befuddle", "befuddled", "befuddlement", "befuddling", "beg", "began", "beget", "begets", "begetter", "begetting", "beggar", "beggarly", "beggarman", "beggarweed", "beggarwoman", "beggary", "begged", "begging", "begild", "begin", "beginner", "beginning", "beginnings", "begins", "begonia", "begot", "begotten", "begrime", "begrimed", "begrudge", "begs", "beguile", "beguiled", "beguilement", "beguiler", "beguiling", "begum", "begun", "behalf", "behave", "behaved", "behaves", "behaving", "behavior", "behavioral", "behaviorism", "behaviorist", "behavioristic", "behaviorists", "behaviors", "behaviour", "behavioural", "behaviourism", "behaviourist", "behaviouristic", "behaviourists", "behaviours", "behead", "beheaded", "beheading", "behemoth", "behest", "Behind", "behind", "behindhand", "behmen", "behmenism", "behold", "beholden", "beholder", "beholding", "beholds", "behoof", "behoove", "behooved", "behooves", "behove", "behoved", "behoves", "behring", "beige", "beigel", "beignet", "Being", "being", "beingness", "beings", "beirut", "bejewel", "bejeweled", "bejewelled", "bejewelling", "belabor", "belabored", "belaboring", "belabors", "belabour", "belaboured", "belabouring", "belabours", "belarusian", "belated", "belatedly", "belau", "belay", "belaying", "belch", "belches", "belching", "beldam", "beldame", "beleaguer", "beleaguered", "beleaguering", "belemnite", "belemnitic", "belfry", "belgian", "belgique", "belie", "belied", "belief", "beliefs", "believability", "believable", "believably", "believe", "believed", "believer", "believers", "believes", "believing", "believingly", "belike", "belittle", "belittled", "belittles", "belittling", "bell", "belladonna", "bellarmino", "bellbird", "bellbottom", "bellboy", "belle", "belletristic", "bellflower", "bellhop", "bellicose", "bellicoseness", "bellicosity", "bellied", "belligerence", "belligerency", "belligerent", "belligerently", "belling", "bellman", "bellow", "bellower", "bellowing", "bellpull", "bells", "bellwether", "bellwort", "belly", "bellyache", "bellyacher", "bellyaching", "bellyband", "bellybutton", "bellyful", "bellying", "bellylaugh", "bellyless", "belmont", "belong", "belonged", "belonging", "belongings", "belongs", "belorussia", "belorussian", "beloved", "below", "belowground", "belt", "belted", "belting", "beltless", "beltlike", "belts", "beltway", "beluga", "belvedere", "belying", "bema", "bemire", "bemoan", "bemoaning", "bemoans", "bemock", "bemuse", "bemused", "bemusement", "bemusing", "ben", "benadryl", "bench", "benches", "benchmark", "bend", "bendability", "bendable", "benday", "bended", "bender", "bendier", "bendiest", "bending", "bendopa", "bends", "bendy", "beneath", "benedick", "benedictine", "benediction", "benedictive", "benedictory", "benefact", "benefaction", "benefactor", "benefactors", "benefactress", "benefic", "benefice", "beneficed", "beneficence", "beneficent", "beneficial", "beneficially", "beneficiaries", "beneficiary", "beneficiate", "beneficiation", "benefit", "benefited", "benefiting", "benefits", "benefitted", "benefitting", "benevolence", "benevolent", "benevolently", "benficiate", "bengali", "benight", "benighted", "benign", "benignancy", "benignant", "benignantly", "benignity", "benignly", "Benin", "benin", "beninese", "benison", "benne", "bennet", "benni", "bennie", "benniseed", "bent", "benthal", "benthic", "benthonic", "benthos", "bentonite", "bentonitic", "bentwood", "benumb", "benumbed", "benweed", "benzene", "benzenoid", "benzine", "benzoate", "benzocaine", "benzodiazepine", "benzofuran", "benzoic", "benzol", "benzoquinone", "benzyl", "benzylic", "benzylpenicillin", "beograd", "beplaster", "bequeath", "bequeathed", "bequeathing", "bequeaths", "bequest", "berate", "berated", "berates", "berating", "berceuse", "bereave", "bereaved", "bereavement", "bereaves", "bereaving", "bereft", "beret", "bergall", "bergamot", "bergenia", "beriberi", "berit", "berk", "berkelium", "berm", "bermudan", "bermudian", "berne", "beroe", "berretta", "berried", "berries", "berry", "berrylike", "bersagliere", "bersaglieri", "berserk", "berserker", "berth", "berthing", "beryl", "beryllium", "beseech", "beseeching", "beseechingly", "beseem", "beset", "besetting", "beshrew", "beside", "besides", "besiege", "besieged", "besieger", "besieging", "besmear", "besmirch", "besmirching", "besom", "besot", "besotted", "bespangle", "bespatter", "bespeak", "bespeaking", "bespeckle", "bespectacled", "bespoke", "bespoken", "bespot", "besprent", "besprinkle", "best", "bested", "bestial", "bestialise", "bestiality", "bestialize", "bestially", "bestiary", "besting", "bestir", "bestirred", "bestirring", "bestow", "bestowal", "bestowed", "bestower", "bestowing", "bestowment", "bestows", "bestrew", "bestride", "bestriding", "bestseller", "bestubbled", "bet", "beta", "betaine", "betatron", "betel", "beth", "bethel", "bethink", "betide", "betimes", "betise", "betoken", "betokening", "betray", "betrayal", "betrayed", "betrayer", "betraying", "betrays", "betroth", "betrothal", "betrothed", "bets", "betted", "better", "bettering", "betterment", "betting", "bettong", "bettor", "betulaceous", "between", "betweenbrain", "betwixt", "bevatron", "bevel", "beveled", "beveling", "bevelled", "bevelling", "beverage", "beverages", "bevies", "bevvies", "bevvy", "bevy", "bewail", "bewailing", "beware", "bewhisker", "bewhiskered", "bewilder", "bewildered", "bewilderedly", "bewildering", "bewilderingly", "bewilderment", "bewitch", "bewitched", "bewitchery", "bewitching", "bewitchingly", "bewitchment", "bewray", "bextra", "bey", "beyond", "bezant", "bezel", "bezique", "bezzant", "bhadrapada", "bhagavadgita", "bhakti", "bhang", "bharat", "bheesty", "bhishties", "Bhutan", "bhutan", "bhutanese", "bhutani", "bi", "bi-polar", "bialy", "bialystoker", "biannual", "biannually", "bias", "biased", "biases", "biasing", "biassed", "biassing", "biaural", "biauricular", "biaxal", "biaxate", "biaxial", "bib", "bibbed", "bibless", "biblical", "bibliographer", "bibliographic", "bibliographical", "bibliography", "bibliolatrous", "bibliolatry", "bibliomania", "bibliomaniacal", "bibliophile", "bibliophilic", "bibliopole", "bibliopolic", "bibliopolist", "bibliothec", "bibliotheca", "bibliothecae", "bibliothecal", "bibliothecarial", "bibliotic", "bibliotics", "bibliotist", "bibulous", "bicameral", "bicapsular", "bicarbonate", "bicennaries", "bicentenary", "bicentennial", "bicentric", "bicephalous", "biceps", "bichloride", "bichromate", "bichromated", "bichrome", "bicipital", "bicker", "bickered", "bickering", "bicolor", "bicolored", "bicolour", "bicoloured", "biconcave", "biconvex", "bicorn", "bicornate", "bicorne", "bicorned", "bicornuate", "bicornuous", "bicuspid", "bicuspidate", "bicycle", "bicycler", "bicycles", "bicyclic", "bicycling", "bicyclist", "bicylindrical", "bid", "bida", "biddable", "bidder", "bidders", "bidding", "biddy", "bide", "bidentate", "bidet", "biding", "bidirectional", "bids", "biedermeier", "biennial", "biennially", "bier", "biface", "bifacial", "biff", "bifid", "bifilar", "biflagellate", "bifocal", "bifocals", "bifoliate", "biform", "bifurcate", "bifurcated", "bifurcates", "bifurcating", "bifurcation", "big", "bigamist", "bigamous", "bigamy", "bigarade", "bigeminal", "bigeneric", "bigeye", "bigger", "biggest", "biggin", "biggish", "bighead", "bigheaded", "bighearted", "bigheartedness", "bight", "bigmouthed", "bigness", "bignoniaceous", "bignoniad", "bigos", "bigot", "bigoted", "bigotry", "bigram", "bigwig", "bijou", "bijoux", "bike", "biker", "bikes", "bilabial", "bilabiate", "bilateral", "bilateralism", "bilaterality", "bilaterally", "bilberry", "bilbo", "bilboes", "bilby", "bile", "bilestone", "bilge", "bilgewater", "bilgy", "bilharzia", "bilharziasis", "biliary", "bilimbi", "bilinear", "bilingual", "bilingualism", "bilingualist", "bilingually", "bilious", "biliousness", "bilirubin", "bilk", "bilking", "Bill", "bill", "billabong", "billboard", "billboards", "billed", "billet", "billfish", "billfishes", "billfold", "billhook", "billiard", "billiards", "billing", "billingsgate", "billion", "billionaire", "billions", "billionth", "billow", "billowing", "billows", "billowy", "bills", "billy", "billyo", "billyoh", "billystick", "bilobate", "bilobated", "bilobed", "bilocation", "bilocular", "biloculate", "bilsted", "biltong", "bimanual", "bimbo", "bimboes", "bimester", "bimestrial", "bimetal", "bimetallic", "bimetallism", "bimetallist", "bimetallistic", "bimillenary", "bimillenial", "bimillennium", "bimli", "bimodal", "bimolecular", "bimonthly", "bimorphemic", "bimotored", "bin", "binary", "binate", "binaural", "binaurally", "bind", "bindable", "binder", "bindery", "binding", "binds", "bindweed", "bine", "binful", "bing", "binge", "bingeing", "binger", "binging", "bingle", "bingo", "binnacle", "binned", "binning", "binocular", "binoculars", "binomial", "binominal", "bins", "binturong", "binuclear", "binucleate", "binucleated", "bio-analytical", "bio-research", "bioarm", "bioassay", "bioattack", "biocatalyst", "biocatalytic", "biochemical", "biochemically", "biochemist", "biochemistry", "biochip", "bioclimatic", "bioclimatology", "biodefence", "biodefense", "biodegradable", "biodegrade", "biodegrading", "biodiversity", "bioelectricity", "bioengineering", "bioethics", "biofeedback", "bioflavinoid", "biogenesis", "biogenetic", "biogenic", "biogenous", "biogeny", "biogeographic", "biogeographical", "biogeography", "biographer", "biographic", "biographical", "biographies", "biography", "biohazard", "biologic", "biological", "biologically", "biologism", "biologist", "biologistic", "biologists", "biology", "bioluminescence", "bioluminescent", "biomass", "biome", "biomedical", "biomedicine", "biometrics", "biometry", "bionic", "bionics", "bionomic", "bionomical", "bionomics", "biont", "biophysicist", "biophysics", "biopiracy", "biopsies", "biopsy", "bioremediation", "biosafety", "bioscience", "bioscope", "biosphere", "biostatistics", "biosynthesis", "biosynthetic", "biosystematic", "biosystematics", "biosystematy", "biota", "biotech", "biotechnology", "bioterrorism", "biotic", "biotin", "biotite", "biotitic", "biotype", "biotypic", "biovular", "bioweapon", "biparous", "bipartisan", "bipartite", "bipartizan", "biped", "bipedal", "bipedalism", "bipinnate", "bipinnatifid", "biplane", "bipolar", "biprism", "biquadrate", "biquadratic", "biracial", "biradial", "biradially", "biramous", "birch", "birchbark", "birchen", "bird", "birdbath", "birdbrain", "birdcage", "birdcall", "birder", "birdfeeder", "birdhouse", "birdie", "birdieing", "birdies", "birding", "birdlime", "birdnest", "birdnesting", "birds", "birdseed", "birdsong", "birdwatch", "birdwatching", "birefringence", "birefringent", "biretta", "biriani", "birken", "birl", "birle", "birling", "biro", "birr", "birretta", "birth", "birthday", "birthdays", "birthing", "birthmark", "birthplace", "birthrate", "birthright", "birthroot", "births", "birthwort", "biryani", "bisayan", "bisayas", "biscuit", "biscuits", "bise", "bisect", "bisecting", "bisection", "bisectional", "bisectrices", "bisectrix", "bisects", "biserrate", "bisexual", "bisexuality", "bishop", "bishopric", "bishopry", "bishops", "biskek", "bismarckian", "bismark", "bismuth", "bismuthal", "bismuthic", "bison", "bisontine", "bisque", "Bissau", "bissau", "bister", "bistered", "bistre", "bistred", "bistro", "bistroic", "bisulcate", "bit", "bitartrate", "bitch", "bitchery", "bitches", "bitchier", "bitchiest", "bitchiness", "bitching", "bitchy", "bite", "biteplate", "biter", "bites", "bitewing", "biting", "bitingly", "bitmap", "bitok", "bits", "bitstock", "bitt", "bitten", "bitter", "bittercress", "bitterest", "bitterish", "bitterly", "bittern", "bitterness", "bitternut", "bitterroot", "bittersweet", "bitterweed", "bitterwood", "bitthead", "bittie", "bittier", "bittiest", "bitty", "bitumastic", "bitumen", "bitumenoid", "bituminise", "bituminize", "bituminoid", "bituminous", "bivalent", "bivalve", "bivalved", "bivariate", "bivouac", "bivouacked", "bivouacking", "biweekly", "biyearly", "biz", "bizarre", "bizarreness", "bize", "bizonal", "bja", "BJP", "bjp", "bjs", "blab", "blabbed", "blabber", "blabbermouth", "blabbermouthed", "blabbing", "blabby", "blabs", "black", "blackball", "blackballing", "blackbeard", "blackbeetle", "blackberried", "blackberry", "blackbird", "blackboard", "blackbody", "blackbuck", "blackcap", "blackcock", "blackdamp", "blacked", "blacken", "blackened", "blackening", "blackens", "blackest", "blackface", "blackfeet", "blackfish", "blackfishes", "blackfly", "blackfoot", "blackfriar", "blackguard", "blackguardly", "blackhead", "blackheart", "blacking", "blackish", "blackjack", "blacklead", "blackleg", "blacklegged", "blacklegging", "blacklist", "blackmail", "blackmailed", "blackmailer", "blackmailing", "blackmails", "blackness", "blackout", "blackpoll", "blacks", "blackseed", "blacksmith", "blacksnake", "blacktail", "blackthorn", "blacktop", "blacktopping", "blackwash", "blackwashes", "blackwashing", "blackwater", "blackwood", "bladder", "bladderlike", "bladdernose", "bladderpod", "bladderwort", "bladderwrack", "bladdery", "blade", "bladed", "bladelike", "blades", "blae", "blaeberry", "blah", "blain", "blamable", "blame", "blameable", "blamed", "blameful", "blameless", "blamelessly", "blamelessness", "blames", "blameworthiness", "blameworthy", "blaming", "blanc", "blanch", "blanched", "blanching", "blancmange", "bland", "blandish", "blandishment", "blandly", "blandness", "blank", "blanket", "blanketed", "blanketing", "blankets", "blanking", "blankly", "blankness", "blanquillo", "blare", "blared", "blares", "blaring", "blarney", "blase", "blaspheme", "blasphemer", "blaspheming", "blasphemous", "blasphemously", "blasphemy", "blast", "blasted", "blastema", "blastemal", "blastemata", "blastematic", "blastemic", "blaster", "blasting", "blastocele", "blastocoel", "blastocoele", "blastocoelic", "blastocyst", "blastocyte", "blastocytoma", "blastoderm", "blastodermatic", "blastodermic", "blastodisc", "blastoff", "blastogenesis", "blastogenetic", "blastoma", "blastomere", "blastomeric", "blastomycete", "blastomycosis", "blastomycotic", "blastoporal", "blastopore", "blastoporic", "blastosphere", "blastospheric", "blasts", "blastula", "blastulae", "blastular", "blat", "blatancy", "blatant", "blatantly", "blate", "blather", "blathering", "blatherskite", "blattaria", "blatted", "blatting", "blaxploitation", "blaze", "blazer", "blazes", "blazing", "blazon", "blazonry", "bleach", "bleached", "bleacher", "bleaches", "bleaching", "bleak", "bleakly", "bleakness", "blear", "blearier", "bleariest", "bleary", "bleat", "bleating", "bleb", "blebbed", "blebby", "bled", "bleed", "bleeder", "bleeding", "bleeds", "bleep", "bleeping", "blemish", "blemished", "blemishes", "blench", "blend", "blende", "blended", "blender", "blending", "blends", "blennioid", "blenny", "blepharism", "blepharitis", "blepharospasm", "bless", "blessed", "blessedly", "blessedness", "blesses", "blessing", "blessings", "blest", "blether", "bletia", "bleu", "blew", "blewits", "blight", "blighted", "blighter", "blimp", "blimpish", "blind", "blinded", "blinder", "blindfish", "blindfishes", "blindfold", "blindfolded", "blindfolds", "blinding", "blindly", "blindness", "blindside", "blindsiding", "blindworm", "bling", "blini", "blink", "blinked", "blinker", "blinking", "blinks", "blintz", "blintze", "bliny", "blip", "blipped", "blipping", "bliss", "blissful", "blissfully", "blissfulness", "blister", "blistering", "blistery", "blithe", "blithely", "blitheness", "blither", "blithering", "blithesome", "blitt", "blitz", "blitzing", "blitzkrieg", "blixen", "blizzard", "bloat", "bloated", "bloater", "bloating", "bloats", "blob", "blobbed", "blobbing", "blobing", "bloc", "blocadren", "block", "blockade", "blockaded", "blockading", "blockage", "blockbuster", "blockbusters", "blocked", "blocker", "blockers", "blockhead", "blockheaded", "blockhouse", "blocking", "blockish", "blocks", "blocky", "blog", "blogger", "bloke", "blokes", "blolly", "blond", "blonde", "blondes", "blondness", "blood", "bloodbath", "bloodberry", "bloodcurdling", "blooded", "bloodguilt", "bloodguilty", "bloodhound", "bloodied", "bloodier", "bloodiest", "bloodily", "bloodiness", "bloodleaf", "bloodless", "bloodlessly", "bloodletting", "bloodline", "bloodlust", "bloodmobile", "bloodroot", "bloodshed", "bloodshot", "bloodstain", "bloodstained", "bloodstock", "bloodstone", "bloodstream", "bloodsucker", "bloodsucking", "bloodthirstier", "bloodthirstiest", "bloodthirstiness", "bloodthirsty", "bloodworm", "bloodwort", "bloody", "bloodying", "bloom", "bloomer", "blooming", "blooms", "blooper", "blossom", "blossomed", "blossoming", "blossoms", "blot", "blotch", "blotched", "blotchy", "blots", "blotted", "blotter", "blotting", "blotto", "blouse", "blouses", "bloviate", "bloviating", "blow", "blowback", "blowball", "blower", "blowfish", "blowfishes", "blowfly", "blowgun", "blowhard", "blowhole", "blowier", "blowiest", "blowing", "blowjob", "blowlamp", "blown", "blowout", "blowpipe", "blows", "blowsier", "blowsiest", "blowsy", "blowtorch", "blowtube", "blowup", "blowy", "blowzier", "blowziest", "blowzy", "blt", "blub", "blubbed", "blubber", "blubberer", "blubbering", "blubbery", "blubbing", "bludgeon", "bludgeoned", "bludgeoner", "bludgeoning", "blue", "bluebell", "blueberry", "bluebill", "bluebird", "bluebonnet", "bluebottle", "bluecoat", "bluefin", "bluefish", "bluefishes", "bluegill", "bluegrass", "bluehead", "blueing", "blueish", "bluejacket", "blueness", "bluenose", "bluepoint", "blueprint", "bluer", "blues", "bluest", "bluestem", "bluestocking", "bluestone", "bluethroat", "bluetick", "bluetongue", "blueweed", "bluewing", "bluff", "bluffer", "bluffing", "bluffly", "bluffness", "bluffs", "bluing", "bluish", "blunder", "blunderbuss", "blundered", "blunderer", "blundering", "blunt", "blunted", "blunting", "bluntly", "bluntness", "blur", "blurb", "blurred", "blurriness", "blurring", "blurry", "blurs", "blurt", "blurting", "blush", "blusher", "blushes", "blushful", "blushing", "bluster", "blusterer", "blustering", "blusterous", "blustery", "bmdo", "bmi", "bmr", "bmus", "bns", "boa", "boar", "board", "boarder", "boarding", "boardinghouse", "boardroom", "boards", "boardwalk", "boarfish", "boarfishes", "boarhound", "boast", "boasted", "boaster", "boastful", "boastfully", "boastfulness", "boasting", "boasts", "boat", "boatbill", "boatbuilder", "boater", "boathouse", "boating", "boatload", "boatman", "boatmanship", "boats", "boatswain", "boatyard", "bob", "bobbed", "bobber", "bobbin", "bobbing", "bobble", "bobby", "bobbysock", "bobbysoxer", "bobcat", "bobfloat", "bobolink", "bobsled", "bobsledding", "bobsleigh", "bobtail", "bobtailed", "bobwhite", "bocce", "bocci", "boccie", "bocconia", "boche", "bock", "bod", "bodacious", "boddhisatva", "bode", "bodega", "bodensee", "bodes", "bodge", "bodice", "bodied", "bodies", "bodiless", "bodily", "boding", "bodkin", "body", "bodybuilder", "bodybuilding", "bodyguard", "bodyless", "bodypaint", "bodywork", "boehm", "boeotian", "boer", "boeuf", "boffin", "boffo", "bog", "bogartian", "bogbean", "bogey", "bogeying", "bogeyman", "boggle", "boggling", "boggy", "bogie", "bogmat", "bogus", "bogy", "bohemian", "bohemianism", "bohme", "bohrium", "boil", "boiled", "boiler", "boilerplate", "boilers", "boilersuit", "boiling", "boils", "boisterous", "boisterously", "boisterousness", "bok", "bokkos", "bokmaal", "bola", "bolanci", "bold", "bolder", "boldest", "boldface", "boldly", "boldness", "bolero", "bolete", "boleti", "boletus", "bolide", "bolingbroke", "bolivar", "bolivares", "Bolivia", "bolivia", "bolivian", "boliviano", "boll", "bollard", "bollix", "bollock", "bollocks", "bollworm", "bolo", "bologram", "bolograph", "bolographic", "bolometer", "bolometric", "boloney", "bolshevik", "bolsheviki", "bolshevise", "bolshevist", "bolshevistic", "bolshevize", "bolshie", "bolshy", "bolster", "bolstered", "bolstering", "bolsters", "bolt", "bolted", "bolti", "bolting", "bolts", "bolus", "bomb", "bombard", "bombarded", "bombardier", "bombarding", "bombardment", "bombardon", "bombast", "bombastic", "bombastically", "bombay", "bombazine", "bombed", "bomber", "bombers", "bombie", "bombilate", "bombilation", "bombinate", "bombination", "bombing", "bombings", "bomblet", "bombproof", "bombs", "bombshell", "bombsight", "bombycid", "bonanza", "bonaparte", "bonavist", "bonbon", "bonce", "bond", "bondable", "bondage", "bonded", "bonderise", "bonderize", "bondholder", "bonding", "bondmaid", "bondman", "bonds", "bondsman", "bondswoman", "bonduc", "bondwoman", "bone", "boned", "bonefish", "bonefishes", "bonehead", "boneheaded", "boneless", "bonelet", "bonelike", "bonemeal", "boner", "bones", "boneset", "bonesetter", "boneshaker", "boney", "bonfire", "bong", "bongo", "bongoes", "bonheur", "bonhomie", "bonier", "boniest", "boniness", "boning", "bonito", "bonitoes", "bonk", "bonkers", "bonking", "bonnet", "bonnethead", "bonnie", "bonnier", "bonniest", "bonnily", "Bonny", "bonny", "bonobo", "bonsai", "bonus", "bonuses", "bonxie", "bony", "bonyness", "bonzer", "boo", "boob", "booboisie", "boobs", "booby", "boodle", "booed", "booger", "boogerman", "boogeyman", "boogie", "boogieing", "booing", "book", "bookable", "bookbinder", "bookbindery", "bookbinding", "bookcase", "bookclub", "bookdealer", "booked", "bookend", "booker", "bookfair", "bookie", "booking", "bookish", "bookishness", "bookkeeper", "bookkeeping", "booklet", "booklice", "booklouse", "booklover", "bookmaker", "bookman", "bookmark", "bookmarker", "bookmobile", "bookplate", "books", "bookseller", "bookshelf", "bookshelves", "bookshop", "bookstall", "bookstore", "bookstores", "bookworm", "boolean", "boom", "boomed", "boomer", "boomerang", "boomers", "booming", "boon", "boondocks", "boondoggle", "boor", "boorish", "boorishly", "boorishness", "boost", "boosted", "booster", "boosting", "boosts", "boot", "bootblack", "bootboys", "booted", "bootee", "booth", "boothose", "booths", "bootie", "booting", "bootjack", "bootlace", "bootleg", "bootlegged", "bootlegger", "bootlegging", "bootlegs", "bootless", "bootlick", "bootlicker", "bootlicking", "bootmaker", "boots", "bootstrap", "booty", "booyong", "booze", "boozer", "boozes", "boozier", "booziest", "boozing", "boozy", "bop", "bopeep", "bopped", "bopping", "boraces", "boracic", "borage", "borate", "borated", "borax", "borborygmi", "borborygmus", "bordelaise", "bordello", "border", "bordereau", "bordereaux", "bordered", "borderer", "bordering", "borderland", "borderline", "borders", "bore", "boreal", "borecole", "bored", "boredom", "borer", "borgia", "boric", "boring", "boringly", "boringness", "born", "borne", "bornite", "boron", "boronic", "borosilicate", "borough", "boroughs", "borrelia", "borrow", "borrowed", "borrower", "borrowing", "borrows", "borsch", "borscht", "borsh", "borshch", "borsht", "borstal", "bortsch", "borzoi", "bosc", "boschbok", "bosh", "bosie", "bosk", "boskier", "boskiest", "boskopoid", "bosky", "Bosnia", "bosnia", "bosnian", "bosom", "bosomed", "bosomy", "boson", "boss", "bosses", "bossier", "bossiest", "bossing", "bossism", "bossy", "bosun", "bot", "bota", "botanic", "botanical", "botanise", "botanist", "botanize", "botany", "botargo", "botargoes", "botch", "botched", "botcher", "botchier", "botchiest", "botching", "botchy", "botfly", "Both", "both", "bother", "botheration", "bothered", "bothering", "bothers", "bothersome", "botonee", "botonnee", "botox", "botryoid", "botryoidal", "Botswana", "botswana", "botswanan", "bottle", "bottlebrush", "bottlecap", "bottled", "bottlefeed", "bottleful", "bottleneck", "bottlenose", "bottler", "bottles", "bottling", "bottom", "bottomed", "bottoming", "bottomland", "bottomless", "bottomlessness", "bottommost", "bottoms", "botuliform", "botulin", "botulinal", "botulinum", "botulinus", "botulism", "botulismotoxin", "bouchee", "boucle", "boudoir", "bouffant", "bouffe", "bougainvillaea", "bougainvillaeas", "bougainvillea", "bougainvilleas", "bough", "boughed", "boughless", "bought", "boughten", "bouillabaisse", "bouillon", "bouldered", "bouldery", "boule", "boulevard", "boulevardier", "boulle", "bounce", "bounced", "bouncer", "bounces", "bouncier", "bounciest", "bounciness", "bouncing", "bouncy", "bound", "boundaries", "boundary", "bounded", "boundedness", "bounden", "bounder", "bounderish", "bounding", "boundless", "boundlessly", "boundlessness", "bounds", "bounteous", "bounteously", "bounteousness", "bountied", "bountiful", "bountifully", "bountifulness", "bounty", "bouquet", "bourbon", "bourdon", "bourgeois", "bourgeoisie", "bourgeon", "bourgeoning", "bourguignon", "bourn", "bourne", "bourtree", "bouse", "boustrophedon", "boustrophedonic", "bout", "boutique", "boutiques", "boutonniere", "bouts", "bovid", "bovine", "bovril", "bow", "bowdlerisation", "bowdlerise", "bowdlerised", "bowdleriser", "bowdlerises", "bowdlerising", "bowdlerization", "bowdlerize", "bowdlerized", "bowdlerizer", "bowdlerizes", "bowdlerizing", "bowed", "bowel", "bowelless", "bower", "bowerbird", "bowery", "bowfin", "bowfront", "bowhead", "bowing", "bowknot", "bowl", "bowlder", "bowleg", "bowlegged", "bowler", "bowlful", "bowline", "bowling", "bowls", "bowman", "bows", "bowse", "bowsprit", "bowstring", "bowtie", "box", "boxberry", "boxcar", "boxed", "boxer", "boxers", "boxershorts", "boxes", "boxfish", "boxfishes", "boxful", "boxing", "boxlike", "boxthorn", "boxwood", "boxy", "boy", "boycott", "boycotted", "boycotting", "boycotts", "boyfriend", "boyfriends", "boyhood", "boyish", "boyishly", "boyishness", "boylike", "boys", "boysenberry", "boytrose", "bozo", "bph", "bpi", "bpm", "bps", "br", "bra", "brabble", "brace", "braced", "bracelet", "bracelets", "bracer", "bracero", "braces", "brachia", "brachial", "brachiate", "brachiation", "brachiopod", "brachiopodous", "brachium", "brachycephalic", "brachycephalism", "brachycephaly", "brachycranial", "brachycranic", "brachydactylia", "brachydactylic", "brachydactylous", "brachydactyly", "brachypterous", "brachyuran", "brachyurous", "bracing", "bracken", "bracket", "bracketing", "brackets", "brackish", "brackishness", "bract", "bracteal", "bracteate", "bracted", "bracteolate", "bracteole", "bractlet", "brad", "bradawl", "bradycardia", "brae", "brag", "brage", "braggadocio", "braggart", "bragged", "bragger", "bragging", "braggy", "brags", "brahmin", "brahminic", "brahminical", "brahminism", "braid", "braided", "braiding", "brail", "braille", "brain", "braincase", "brainchild", "brainchildren", "brainiac", "brainier", "brainiest", "braining", "brainish", "brainless", "brainpan", "brainpower", "brains", "brainsick", "brainstem", "brainstorm", "brainstorming", "brainstorms", "brainwash", "brainwashed", "brainwashes", "brainwashing", "brainwave", "brainworker", "brainy", "braise", "braised", "braising", "brake", "brakeman", "brakes", "braking", "braky", "braless", "bramble", "brambling", "brambly", "bran", "branch", "branched", "branches", "branchia", "branchiae", "branchial", "branchiate", "branching", "branchiopod", "branchiopodan", "branchiopodous", "branchiostomidae", "branchless", "branchlet", "branchy", "brand", "branded", "branding", "brandish", "brandished", "brandishing", "brandmark", "brands", "brandy", "brandyball", "brandysnap", "brant", "brants", "bras", "brash", "brashier", "brashiest", "brashly", "brashness", "brashy", "brasier", "brasil", "brass", "brassard", "brassavola", "brassbound", "brasserie", "brassicaceae", "brassie", "brassier", "brassiere", "brassiest", "brasslike", "brassy", "brat", "brattice", "brattish", "brattle", "bratty", "bratwurst", "bravado", "bravadoes", "brave", "braved", "bravely", "braveness", "bravery", "bravest", "braving", "bravo", "bravoes", "bravura", "braw", "brawl", "brawler", "brawling", "brawn", "brawnier", "brawniest", "brawniness", "brawny", "bray", "braying", "braze", "brazen", "brazenly", "brazenness", "brazier", "Brazil", "brazil", "brazilian", "brazilwood", "breach", "breached", "breaches", "breaching", "bread", "breadbasket", "breadboard", "breadbox", "breadcrumb", "breaded", "breadfruit", "breading", "breadline", "breadroot", "breadstick", "breadstuff", "breadth", "breadthways", "breadthwise", "breadwinner", "break", "breakability", "breakable", "breakableness", "breakage", "breakaway", "breakax", "breakaxe", "breakdown", "breakdowns", "breaker", "breakfast", "breakfasting", "breaking", "breakneck", "breakout", "breaks", "breakstone", "breakthrough", "breakthroughs", "breakup", "breakwater", "bream", "breast", "breastbone", "breasted", "breastfeed", "breastfeeding", "breastfeeds", "breastless", "breastpin", "breastplate", "breasts", "breaststroke", "breaststroker", "breastwork", "breath", "breathalyse", "breathalysed", "breathalyser", "breathalysers", "breathalyses", "breathalysing", "breathalyze", "breathalyzed", "breathalyzer", "breathalyzers", "breathalyzes", "breathalyzing", "breathe", "breathed", "breather", "breathes", "breathier", "breathiest", "breathing", "breathless", "breathlessly", "breathlessness", "breathtaking", "breathy", "breccia", "brecciate", "bred", "breech", "breechblock", "breechcloth", "breechclout", "breeched", "breechloader", "breed", "breeder", "breeders", "breeding", "breeds", "breeze", "breezes", "breezier", "breeziest", "breezily", "breeziness", "breezing", "breezy", "bregma", "bregmata", "bregmatic", "breiz", "brent", "breslau", "brethren", "breughel", "breve", "brevet", "brevetted", "brevetting", "breviary", "brevibloc", "brevicipitidae", "brevity", "brew", "brewage", "brewed", "brewer", "brewery", "brewing", "brewpub", "brews", "briar", "briard", "briarroot", "briarwood", "briary", "bribable", "bribe", "bribed", "briber", "bribery", "bribes", "bribing", "brick", "brickbat", "brickfield", "brickkiln", "bricklayer", "bricklaying", "brickle", "brickly", "bricks", "brickwork", "brickyard", "bricolage", "bricole", "bridal", "bride", "bridecake", "bridegroom", "bridesmaid", "bridge", "bridgeable", "bridgehead", "bridges", "bridgework", "bridging", "bridle", "bridoon", "brief", "briefcase", "briefed", "briefing", "briefings", "briefless", "briefly", "briefness", "briefs", "brier", "brierpatch", "brierwood", "briery", "brig", "BRIG.", "Brig.", "brig.", "brigade", "brigadier", "brigand", "brigandine", "brigantine", "bright", "brighten", "brightened", "brightening", "brightens", "brighter", "brightest", "brightly", "brightness", "brigid", "brill", "brilliance", "brilliances", "brilliancy", "brilliant", "brilliantine", "brilliantly", "brim", "brimful", "brimfull", "brimless", "brimmed", "brimming", "brimstone", "brinded", "brindle", "brindled", "brine", "bring", "bringing", "brings", "brinier", "briniest", "brininess", "brining", "brinjal", "brink", "brinkmanship", "briny", "brio", "brioche", "briony", "briquet", "briquette", "bris", "brisance", "brisant", "brisk", "brisken", "brisker", "brisket", "briskly", "briskness", "brisling", "bristle", "bristled", "bristlegrass", "bristlelike", "bristles", "bristletail", "bristliness", "bristling", "bristly", "brit", "britain", "britannic", "britches", "brith", "briticism", "british", "britishism", "briton", "britt", "brittanic", "brittany", "brittle", "brittlebush", "brittleness", "broach", "broached", "broaching", "broad", "broadax", "broadaxe", "broadband", "broadbill", "broadcast", "broadcaster", "broadcasters", "broadcasting", "broadcasts", "broadcloth", "broaden", "broadened", "broadening", "broadens", "broader", "broadest", "broadleaf", "broadleaves", "broadloom", "broadly", "broadness", "broadnosed", "broadsheet", "broadside", "broadsword", "broadtail", "broadwise", "brobdingnagian", "brocade", "brocaded", "brocadopa", "broccoli", "brochette", "brochure", "brochures", "brocket", "brodiaea", "brogan", "brogue", "broider", "broil", "broiled", "broiler", "broiling", "broke", "broken", "brokenhearted", "brokenheartedness", "broker", "brokerage", "brokered", "brokering", "brokers", "brolly", "bromate", "bromberg", "brome", "bromegrass", "bromeosin", "bromic", "bromide", "bromidic", "brominate", "bromine", "bromoform", "bronc", "bronchi", "bronchial", "bronchiolar", "bronchiole", "bronchiolitis", "bronchitic", "bronchitis", "broncho", "bronchodilator", "bronchopneumonia", "bronchoscope", "bronchoscopic", "bronchospasm", "bronchus", "bronco", "broncobuster", "broncos", "brontosaur", "brontosaurus", "bronze", "bronzed", "bronzing", "bronzy", "brooch", "brood", "brooder", "broodier", "broodiest", "brooding", "broodmare", "broods", "broody", "brook", "brooklet", "brooklime", "brookweed", "broom", "broomcorn", "broomstick", "broomweed", "broth", "brothel", "brother", "brotherhood", "brotherlike", "brotherly", "brothers", "brotula", "brougham", "brought", "brouhaha", "brow", "browallia", "browbeat", "browbeating", "Brown", "brown", "browned", "brownie", "browning", "brownish", "brownness", "brownout", "brownstone", "browntail", "browse", "browser", "browsers", "browses", "browsing", "brucellosis", "brucine", "bruegel", "bruin", "bruise", "bruised", "bruiser", "bruises", "bruising", "bruit", "brumal", "brummagem", "brummy", "brumous", "brunch", "Brunei", "brunei", "bruneian", "brunet", "brunette", "brunn", "brunnhilde", "brunswick", "brunt", "brusa", "brush", "brushed", "brushes", "brushing", "brushlike", "brushup", "brushwood", "brushwork", "brushy", "brusk", "brusque", "brusquely", "brusqueness", "brussels", "brut", "brutal", "brutalisation", "brutalise", "brutalised", "brutalises", "brutalising", "brutality", "brutalization", "brutalize", "brutalized", "brutalizes", "brutalizing", "brutally", "brute", "brutified", "brutify", "brutish", "brutishly", "bruxism", "bryanthus", "brynhild", "bryony", "bryophyte", "bryophytic", "bryozoa", "bryozoan", "bsarch", "BSE", "bse", "bst", "btu", "BTW", "btw", "bubaline", "bubble", "bubblejet", "bubbler", "bubbles", "bubblier", "bubbliest", "bubbliness", "bubbling", "bubbly", "bubo", "buboes", "bubonic", "buccal", "buccaneer", "buccaneering", "buccula", "bucharesti", "buck", "buckaroo", "buckbean", "buckboard", "bucked", "buckeroo", "bucket", "bucketful", "buckets", "buckeye", "bucking", "buckle", "buckler", "buckles", "buckleya", "buckling", "buckminsterfullerene", "bucko", "buckoes", "buckram", "bucks", "bucksaw", "buckshee", "buckshot", "buckskin", "buckteeth", "buckthorn", "bucktooth", "buckwheat", "buckyball", "bucolic", "bucuresti", "bud", "budded", "buddhist", "buddhistic", "buddies", "budding", "buddleia", "buddy", "budge", "budged", "budgereegah", "budgerigar", "budgerygah", "budges", "budget", "budgetary", "budgeted", "budgets", "budgie", "budging", "buds", "buff", "buffalo", "buffaloes", "buffalofish", "buffer", "bufferin", "buffering", "buffers", "buffet", "buffeted", "buffeting", "buffing", "bufflehead", "buffoon", "buffoonery", "buffoonish", "buffs", "bufo", "bug", "bugaboo", "bugbane", "bugbear", "bugged", "bugger", "buggering", "buggery", "buggier", "buggiest", "bugginess", "bugging", "buggy", "bugle", "bugler", "bugleweed", "bugloss", "bugologist", "bugology", "bugs", "buhl", "build", "builder", "builders", "building", "buildings", "builds", "buildup", "built", "buirdly", "bulb", "bulbaceous", "bulbar", "bulbed", "bulbil", "bulblet", "bulblike", "bulbous", "bulbs", "bulbul", "Bulgaria", "bulgaria", "bulgarian", "bulge", "bulges", "bulghur", "bulginess", "bulging", "bulgur", "bulgy", "bulimarexia", "bulimia", "bulimic", "bulk", "bulkhead", "bulkier", "bulkiest", "bulkiness", "bulking", "bulky", "bull", "bulla", "bullace", "bullae", "bullate", "bullbat", "bullbrier", "bulldog", "bulldogging", "bulldoze", "bulldozed", "bulldozer", "bulldozes", "bulldozing", "bullet", "bullethead", "bulletin", "bulletproof", "bullets", "bullfight", "bullfighter", "bullfighting", "bullfrog", "bullhead", "bullheaded", "bullheadedness", "bullhorn", "bullied", "bullies", "bullion", "bullish", "bullnecked", "bullnose", "bullock", "bullocky", "bullpen", "bullring", "bullrush", "bulls", "bullshit", "bullshitted", "bullshitting", "bullshot", "bullterrier", "bullwhip", "bullwhipped", "bullwhipping", "bully", "bullyboy", "bullying", "bullyrag", "bullyragged", "bullyragging", "bulrush", "bulwark", "bum", "bumble", "bumblebee", "bumbler", "bumbling", "bumboat", "bumf", "bummed", "bummer", "bumming", "bump", "bumped", "bumper", "bumph", "bumpier", "bumpiest", "bumpiness", "bumping", "bumpkin", "bumpkinly", "bumps", "bumptious", "bumptiously", "bumptiousness", "bumpy", "bun", "buna", "bunce", "bunch", "bunchberry", "bunchgrass", "bunchier", "bunchiest", "bunching", "bunchy", "bunco", "buncombe", "bund", "bunde", "bundle", "bundled", "bundles", "bundling", "bunfight", "bung", "bungaloid", "bungalow", "bungee", "bunghole", "bungle", "bungled", "bungler", "bungles", "bunglesome", "bungling", "bunion", "bunk", "bunker", "bunking", "bunkmate", "bunko", "bunks", "bunkum", "bunnies", "bunny", "bunt", "buntal", "bunter", "bunting", "bunyavirus", "buoy", "buoyancy", "buoyant", "buoyantly", "buoyed", "buoys", "bur", "burble", "burbles", "burbling", "burbly", "burbot", "burden", "burdened", "burdening", "burdenless", "burdens", "burdensome", "burdensomeness", "burdock", "bureau", "bureaucracy", "bureaucrat", "bureaucratic", "bureaucratically", "bureaucratism", "bureaucrats", "bureaux", "buret", "burette", "burg", "burgeon", "burgeoning", "burgeons", "burger", "burgers", "burgess", "burgh", "burgher", "burglar", "burglarious", "burglarise", "burglarize", "burglarproof", "burglary", "burgle", "burgles", "burgling", "burgomaster", "burgoo", "burgrass", "burgrave", "burial", "buried", "buries", "burin", "burka", "burke", "burked", "Burkina", "burkina", "burl", "burlap", "burled", "burlesque", "burlier", "burliest", "burly", "burma", "burmese", "burn", "burnability", "burnable", "burned", "burner", "burning", "burnish", "burnished", "burnoose", "burnous", "burnouse", "burns", "burnt", "burnup", "burp", "burping", "burps", "burqa", "burr", "burrawong", "burred", "burrfish", "burrier", "burriest", "burring", "burrito", "burrlike", "burro", "burrow", "burrowing", "burrows", "burry", "bursa", "bursae", "bursal", "bursar", "bursary", "bursiform", "bursitis", "burst", "burster", "bursting", "bursts", "burthen", "Burundi", "burundi", "burundian", "burunduki", "bury", "burying", "bus", "busbar", "busboy", "busby", "buses", "bush", "bushbaby", "bushbok", "bushboks", "bushbuck", "bushed", "bushel", "bushelled", "bushelling", "bushes", "bushier", "bushiest", "bushing", "bushman", "bushtit", "bushwhack", "bushwhacker", "bushwhacking", "bushy", "busied", "busier", "busiest", "busily", "business", "businesses", "businesslike", "businessman", "businessmen", "businesspeople", "businessperson", "businesswoman", "busing", "busk", "busker", "buskin", "busking", "busload", "busman", "buspar", "buspirone", "buss", "busses", "bussing", "bust", "bustard", "busted", "buster", "bustier", "bustiest", "busting", "bustle", "bustling", "busty", "busy", "busybodied", "busybody", "busying", "busyness", "busywork", "But", "but", "butacaine", "butadiene", "butane", "butanol", "butanone", "butat", "butazolidin", "butch", "butcher", "butcherbird", "butchering", "butcherly", "butchers", "butchery", "butene", "buteonine", "butler", "butt", "butter", "butterball", "butterbean", "butterbur", "buttercrunch", "buttercup", "butterfat", "butterfingered", "butterfingers", "butterfish", "butterfishes", "butterflies", "butterflower", "butterfly", "butterflyfish", "buttering", "buttermilk", "butternut", "butterscotch", "butterweed", "butterwort", "buttery", "butting", "buttinsky", "buttock", "button", "buttoned", "buttonhole", "buttonhook", "buttoning", "buttonlike", "buttons", "buttonwood", "buttony", "buttress", "buttressed", "buttresses", "buttressing", "butts", "buttweld", "butty", "butut", "butyl", "butylate", "butylene", "butyraceous", "butyric", "butyrin", "buxom", "buxomly", "buxomness", "buy", "buyback", "buyer", "buyers", "buyi", "buying", "buyout", "buys", "buzz", "buzzard", "buzzer", "buzzes", "buzzing", "buzzword", "bvd", "bwr", "By", "by", "bycatch", "bye", "byelarus", "byelorussia", "bygone", "bylaw", "byname", "bypass", "bypasses", "bypassing", "bypast", "bypath", "byplay", "byproduct", "byre", "byrnie", "byroad", "byssi", "byssus", "bystander", "byte", "byway", "byword", "byzant", "byzantine", "byzantinism", "C$", "c$", "c.", "CA", "Ca", "ca", "caaba", "cab", "cabal", "cabala", "cabalism", "cabalistic", "caballed", "caballing", "cabana", "cabaret", "cabasset", "cabassous", "cabbage", "cabbageworm", "cabbala", "cabbalah", "cabby", "cabdriver", "caber", "cabg", "cabin", "cabinet", "cabinetmaker", "cabinetmaking", "cabinetry", "cabinets", "cabinetwork", "cabining", "cabins", "cable", "cablegram", "cables", "cabling", "cabman", "cabochon", "caboodle", "caboose", "cabotage", "cabriolet", "cabstand", "cacao", "cacatua", "cachalot", "cache", "cachectic", "caches", "cachet", "cachexia", "cachexy", "caching", "cachinnate", "cachinnation", "cachou", "cacique", "cackel", "cackle", "cackler", "cackles", "cackling", "cackly", "cacodaemon", "cacodaemonic", "cacodemon", "cacodemonic", "cacodyl", "cacodylic", "cacoethes", "cacogenesis", "cacogenic", "cacogenics", "cacography", "cacomistle", "cacomixle", "cacophonic", "cacophonous", "cacophony", "cacti", "cactus", "cacuminal", "cad", "cadaster", "cadastral", "cadastre", "cadaver", "cadaveric", "cadaverine", "cadaverous", "caddie", "caddied", "caddish", "caddisworm", "caddoan", "caddy", "caddying", "cadence", "cadenced", "cadency", "cadent", "cadenza", "cadet", "cadetship", "cadge", "cadger", "cadging", "cadmium", "cadre", "caducean", "caducei", "caduceus", "caducous", "caeca", "caecal", "caeciliadae", "caecilian", "caecum", "caenogenesis", "caesarean", "caesareans", "caesarian", "caesarism", "caesaropapism", "caesium", "caespitose", "caestus", "caesura", "caesurae", "caesural", "cafe", "cafes", "cafeteria", "caff", "caffein", "caffeine", "caffeinic", "caffeinism", "caffer", "caffre", "caftan", "cage", "cager", "cages", "cagey", "cagier", "cagiest", "cagily", "caging", "cagoule", "cagy", "cahoot", "CAI", "Cai", "cai", "caiman", "caimitillo", "caimito", "CAIN'T", "Cain't", "cain't", "cainogenesis", "CAINT", "Caint", "caint", "CAIN\u2019T", "Cain\u2019t", "cain\u2019t", "cairn", "cairned", "cairngorm", "caisson", "caitiff", "caitra", "cajole", "cajolery", "cajoles", "cajoling", "cajolingly", "cake", "caked", "cakehole", "cakes", "cakewalk", "caking", "calaba", "calabash", "calabazilla", "calabura", "caladenia", "caladium", "calamari", "calamary", "calami", "calamine", "calamint", "calamitous", "calamity", "calamus", "calan", "calando", "calanthe", "calapooya", "calapuya", "calash", "calathi", "calathus", "calcaneal", "calcanei", "calcaneum", "calcaneus", "calcareous", "calced", "calcedony", "calceiform", "calceolaria", "calceolate", "calces", "calceus", "calcic", "calcicolous", "calciferol", "calciferous", "calcific", "calcification", "calcified", "calcifugous", "calcify", "calcimine", "calcination", "calcine", "calcite", "calcitic", "calcitonin", "calcium", "calculable", "calculate", "calculated", "calculates", "calculating", "calculatingly", "calculation", "calculations", "calculative", "calculator", "calculi", "calculous", "calculus", "calcutta", "calcuttan", "caldaria", "caldarium", "caldera", "caldron", "calean", "caleche", "calefacient", "calefaction", "calefactive", "calefactory", "calendar", "calender", "calendered", "calendric", "calendrical", "calendula", "calf", "calfskin", "caliber", "calibers", "calibrate", "calibrated", "calibrates", "calibrating", "calibration", "calibre", "calibres", "calices", "caliche", "calico", "calicoes", "calicular", "caliculus", "CALIF.", "Calif.", "calif.", "california", "californian", "californium", "caliginous", "caliper", "calipering", "calipers", "caliph", "calisaya", "calisthenic", "calisthenics", "calix", "calk", "calkin", "call", "calla", "callable", "callathump", "callback", "called", "caller", "callers", "calli", "calliandra", "calligraph", "calligrapher", "calligraphic", "calligraphical", "calligraphist", "calligraphy", "calling", "calliopsis", "calliper", "callipers", "callipygian", "callipygous", "callisthenics", "callithump", "callithumpian", "callophis", "callosectomy", "callosity", "callosotomy", "callous", "calloused", "callously", "callousness", "callow", "callowness", "calls", "callus", "calm", "calmed", "calmer", "calming", "calmly", "calmness", "calms", "calomel", "caloric", "calorie", "calories", "calorifacient", "calorific", "calorimeter", "calorimetric", "calorimetry", "calosoma", "calpac", "calpack", "calpe", "calque", "caltrop", "calumet", "calumniate", "calumniation", "calumniatory", "calumnious", "calumniously", "calumny", "calvaria", "calve", "calves", "calving", "calvinist", "calvinistic", "calvinistical", "calx", "calyceal", "calyces", "calycinal", "calycine", "calycle", "calycled", "calycular", "calyculate", "calyculus", "calypter", "calyptra", "calyptrate", "calyx", "camachile", "camail", "camaraderie", "camarilla", "camas", "camash", "camber", "cambia", "cambial", "cambium", "Cambodia", "cambodia", "cambodian", "cambria", "cambrian", "cambric", "camcorder", "came", "camel", "camelhair", "camelia", "camellia", "camelopard", "camelpox", "camels", "cameo", "camera", "camerae", "cameraman", "cameras", "Cameroon", "cameroon", "cameroonian", "cameroun", "camion", "camise", "camisole", "camlet", "camo", "camomile", "camosh", "camouflage", "camouflaged", "camouflages", "camp", "campaign", "campaigned", "campaigner", "campaigning", "campaigns", "campana", "campanile", "campanula", "campanular", "campanulate", "campanulated", "campeachy", "camped", "camper", "campers", "campestral", "campfire", "campground", "camphor", "camphoraceous", "camphorate", "camphorated", "camphoric", "camphorweed", "camping", "campion", "campmate", "campong", "camps", "campsite", "campstool", "campus", "campuses", "campy", "campylotropous", "camshaft", "camwood", "CAN", "Can", "can", "CAN'T", "Can't", "can't", "canaan", "Canada", "canada", "canadian", "canafistola", "canafistula", "canal", "canalicular", "canaliculate", "canaliculi", "canaliculus", "canalisation", "canalise", "canalised", "canalises", "canalising", "canalization", "canalize", "canalized", "canalizes", "canalizing", "canalled", "canalling", "canals", "canangium", "canape", "canara", "canard", "canarese", "canary", "canasta", "canavanine", "cancan", "cancel", "cancelation", "cancelations", "canceled", "canceling", "cancellate", "cancellated", "cancellation", "cancellations", "cancelled", "cancelling", "cancellous", "cancels", "cancer", "cancerous", "cancers", "cancerweed", "cancroid", "candela", "candelabra", "candelabrum", "candelilla", "candent", "candescent", "candid", "candida", "candidacy", "candidate", "candidates", "candidature", "candidiasis", "candidly", "candidness", "candied", "candle", "candleberry", "candlefish", "candlefishes", "candlelight", "candlemaker", "candlenut", "candlepin", "candlepower", "candles", "candlesnuffer", "candlestick", "candlewick", "candlewood", "candling", "candor", "candour", "candy", "candyfloss", "candymaker", "candytuft", "candyweed", "cane", "canebrake", "canecutter", "canella", "canescent", "canfield", "canful", "cangue", "canicula", "canicular", "canicule", "canid", "canine", "caning", "canistel", "canister", "canker", "cankerous", "cankerweed", "cankerworm", "canna", "cannabin", "cannabis", "canned", "cannelloni", "cannery", "cannibal", "cannibalic", "cannibalise", "cannibalised", "cannibalises", "cannibalising", "cannibalism", "cannibalistic", "cannibalize", "cannibalized", "cannibalizes", "cannibalizing", "cannier", "canniest", "cannikin", "cannily", "canning", "cannister", "cannon", "cannonade", "cannonball", "cannoneer", "cannons", "CANNOT", "Cannot", "cannot", "cannula", "cannular", "cannulate", "cannulation", "cannulisation", "cannulise", "cannulization", "cannulize", "canny", "canoe", "canoeing", "canoeist", "canoes", "canola", "canon", "canonic", "canonical", "canonically", "canonisation", "canonise", "canonised", "canonises", "canonising", "canonist", "canonization", "canonize", "canonized", "canonizes", "canonizing", "canoodle", "canopied", "canopy", "canorous", "cans", "CANT", "Cant", "cant", "cantabile", "cantala", "cantaloup", "cantaloupe", "cantankerous", "cantankerously", "cantata", "canted", "canteen", "canter", "cantering", "canthi", "canthus", "canticle", "cantier", "cantiest", "cantilever", "cantilevering", "cantillate", "cantillating", "cantillation", "cantle", "canto", "canton", "cantonal", "cantonese", "cantonment", "cantor", "canty", "canula", "canulae", "canulate", "canulation", "canulisation", "canulization", "canvas", "canvasback", "canvases", "canvass", "canvassed", "canvasser", "canvassing", "canyon", "canyonside", "canzone", "canzoni", "CAN\u2019T", "Can\u2019t", "can\u2019t", "caoutchouc", "cap", "capabilities", "capability", "capable", "capableness", "capably", "capacious", "capaciousness", "capacitance", "capacitate", "capacities", "capacitive", "capacitor", "capacity", "caparison", "caparisoned", "Cape", "cape", "capelan", "capelin", "caper", "capercaillie", "capercailzie", "capering", "capetian", "capeweed", "capful", "capibara", "capillarity", "capillary", "capita", "capital", "capitalisation", "capitalise", "capitalised", "capitalises", "capitalising", "capitalism", "capitalist", "capitalistic", "capitalists", "capitalization", "capitalize", "capitalized", "capitalizes", "capitalizing", "capitals", "capitate", "capitation", "capitula", "capitular", "capitulary", "capitulate", "capitulated", "capitulates", "capitulating", "capitulation", "capitulum", "capiz", "caplin", "capo", "capon", "caponise", "caponize", "capote", "capoten", "cappadocian", "capped", "cappelletti", "capping", "cappuccino", "capricci", "capriccio", "caprice", "capricious", "capriciously", "capriciousness", "caprifig", "caprimulgid", "caprine", "capriole", "caps", "capsaicin", "capsicum", "capsid", "capsidae", "capsize", "capsizing", "capstan", "capstone", "capsular", "capsulate", "capsulated", "capsule", "capsulise", "capsulize", "capsulizing", "CAPT.", "Capt.", "capt.", "captain", "captaincy", "captaining", "captainship", "caption", "captioned", "captioning", "captions", "captious", "captiously", "captivate", "captivated", "captivates", "captivating", "captivatingly", "captivation", "captive", "captivity", "captopril", "captor", "capture", "captured", "capturer", "captures", "capturing", "capuchin", "capulin", "caput", "capybara", "car", "carabao", "carabineer", "carabiner", "carabinier", "carabiniere", "carabinieri", "caracal", "caracara", "carack", "caracole", "caracolito", "caracul", "carafate", "carafe", "caragana", "carageen", "carambola", "caramel", "caramelise", "caramelised", "caramelises", "caramelising", "caramelize", "caramelized", "caramelizes", "caramelizing", "carancha", "caranda", "caranday", "carangid", "carapace", "carat", "caravan", "caravanning", "caravansary", "caravanserai", "caraway", "carbamate", "carbamide", "carbide", "carbine", "carbineer", "carbocyclic", "carbohydrate", "carbohydrates", "carbolated", "carbomycin", "carbon", "carbonaceous", "carbonado", "carbonadoes", "carbonara", "carbonate", "carbonated", "carbonating", "carbonation", "carbonic", "carboniferous", "carbonisation", "carbonise", "carbonised", "carbonises", "carbonising", "carbonization", "carbonize", "carbonized", "carbonizes", "carbonizing", "carbonous", "carbons", "carbonyl", "carbonylic", "carborundum", "carboxyl", "carboxylate", "carboxylic", "carboy", "carbuncle", "carbuncled", "carbuncular", "carburet", "carburetor", "carburetted", "carburetting", "carburettor", "carburise", "carburize", "carcajou", "carcase", "carcass", "carcinogen", "carcinogenic", "carcinoid", "carcinoma", "carcinomas", "carcinomata", "carcinomatous", "carcinosarcoma", "card", "cardamom", "cardamon", "cardamum", "cardboard", "cardcase", "cardcastle", "cardholder", "cardhouse", "cardia", "cardiac", "cardinal", "cardinalate", "cardinalfish", "cardinality", "cardinalship", "carding", "cardiogram", "cardiograph", "cardiographic", "cardiography", "cardioid", "cardiologic", "cardiologist", "cardiology", "cardiomegaly", "cardiomyopathy", "cardiopathy", "cardiopulmonary", "cardiorespiratory", "cardiospasm", "cardiovascular", "carditis", "cardizem", "cardoon", "cardroom", "cards", "cardsharp", "cardsharper", "cardura", "care", "cared", "careen", "careened", "careening", "career", "careering", "careerism", "careerist", "careers", "carefree", "carefreeness", "careful", "carefully", "carefulness", "caregiver", "caregivers", "careless", "carelessly", "carelessness", "carelian", "cares", "caress", "caresses", "caressing", "caret", "caretaker", "careworn", "carfare", "carful", "cargo", "cargoes", "carhop", "caribe", "caribees", "caribou", "caricature", "caricaturing", "caricaturist", "carides", "caries", "carillon", "carillonned", "carillonneur", "carillonning", "carina", "carinae", "carinal", "carinate", "carinated", "caring", "carious", "carissa", "carjack", "carjacking", "cark", "carload", "carlos", "carlovingian", "carmaker", "carmelite", "carminative", "carmine", "carnage", "carnal", "carnalise", "carnality", "carnalize", "carnallite", "carnally", "carnassial", "carnation", "carnauba", "carnelian", "carnied", "carnified", "carnify", "carnival", "carnivore", "carnivorous", "carnosaur", "carnotite", "carny", "carob", "caroche", "carol", "carolean", "caroled", "caroler", "caroli", "caroline", "caroling", "carolingian", "carolled", "caroller", "carolling", "carols", "carolus", "carom", "carotene", "carotenemia", "carotenoid", "carotid", "carotin", "carousal", "carouse", "carousel", "carouser", "carousing", "carp", "carpal", "carpel", "carpellary", "carpellate", "carpentaria", "carpenter", "carpenteria", "carpentry", "carper", "carpet", "carpetbag", "carpetbagger", "carpetbagging", "carpeted", "carpeting", "carpets", "carpetweed", "carpi", "carping", "carpogonia", "carpogonium", "carpophagous", "carpophore", "carport", "carpospore", "carposporic", "carposporous", "carpus", "carrack", "carrageen", "carrageenan", "carrageenin", "carragheen", "carrefour", "carrell", "carriage", "carriageway", "carried", "carrier", "carriers", "carries", "carrion", "carrizo", "carrot", "carrots", "carrottop", "carroty", "carrousel", "carry", "carryall", "carrycot", "carrying", "cars", "carsick", "cart", "cartage", "carte", "carted", "cartel", "carter", "cartesian", "carthaginian", "carthorse", "carthusian", "cartilage", "cartilaginification", "cartilaginous", "carting", "cartload", "cartographer", "cartographic", "cartographical", "cartography", "carton", "cartonful", "cartons", "cartoon", "cartooning", "cartoonist", "cartoons", "cartouch", "cartouche", "cartridge", "cartridges", "cartroad", "carts", "cartwheel", "cartwheeling", "cartwright", "caruncle", "caruncula", "caruncular", "carunculate", "carunculated", "carunculous", "carve", "carved", "carvedilol", "carven", "carver", "carves", "carving", "carvings", "caryatid", "caryophyllaceous", "caryopses", "caryopsides", "caryopsis", "casaba", "casava", "casbah", "cascabel", "cascade", "cascaded", "cascades", "cascading", "cascara", "cascarilla", "case", "caseate", "casebook", "cased", "casefied", "caseful", "casefy", "casein", "casement", "caseous", "casern", "cases", "casework", "caseworker", "caseworm", "cash", "cashable", "cashbox", "cashcard", "cashed", "cashes", "cashew", "cashier", "cashing", "cashmere", "casing", "casino", "casinos", "cask", "casket", "caskful", "caspase", "casque", "casquet", "casquetel", "cassareep", "cassava", "casserole", "cassette", "cassettes", "cassia", "cassie", "cassino", "cassiri", "cassite", "cassiterite", "cassock", "cassocked", "cassowary", "cast", "castanets", "castaway", "caste", "casteless", "castellated", "caster", "castigate", "castigated", "castigates", "castigating", "castigation", "castilla", "castilleia", "casting", "castle", "castled", "castles", "castling", "castrate", "castrated", "castrati", "castrating", "castration", "castrato", "casts", "casual", "casually", "casualness", "casualties", "casualty", "casuarina", "casuist", "casuistic", "casuistical", "casuistry", "cat", "catabases", "catabasis", "catabatic", "catabiosis", "catabolic", "catabolise", "catabolism", "catabolize", "catachresis", "catachrestic", "catachrestical", "cataclases", "cataclasis", "cataclinal", "cataclysm", "cataclysmal", "cataclysmic", "catacomb", "catacorner", "catadromous", "catafalque", "cataflam", "catalan", "catalase", "catalatic", "catalectic", "catalepsy", "cataleptic", "catalexis", "catalo", "cataloes", "catalog", "cataloged", "cataloger", "cataloging", "catalogs", "catalogue", "catalogued", "cataloguer", "catalogues", "cataloguing", "catalpa", "catalufa", "catalyse", "catalysed", "catalyses", "catalysing", "catalysis", "catalyst", "catalytic", "catalytically", "catalyze", "catalyzed", "catalyzes", "catalyzing", "catamaran", "catamenia", "catamenial", "catamite", "catamount", "catamountain", "catananche", "cataphasia", "cataphatic", "cataphatism", "cataphoresis", "cataphoretic", "cataphract", "cataphyll", "cataplasia", "cataplasm", "cataplastic", "catapres", "catapult", "catapultian", "catapultic", "cataract", "catarrh", "catarrhal", "catarrhine", "catarrhinian", "catastrophe", "catastrophes", "catastrophic", "catastrophically", "catatonia", "catatonic", "catbird", "catboat", "catbrier", "catcall", "catch", "catchall", "catcher", "catches", "catchfly", "catchier", "catchiest", "catching", "catchment", "catchpenny", "catchphrase", "catchweed", "catchword", "catchy", "catclaw", "catechesis", "catechetic", "catechetical", "catechin", "catechise", "catechism", "catechismal", "catechist", "catechistic", "catechize", "catecholamine", "catechu", "catechumen", "categorem", "categorematic", "categoreme", "categorial", "categoric", "categorical", "categorically", "categories", "categorisation", "categorise", "categorised", "categorises", "categorising", "categorization", "categorize", "categorized", "categorizes", "categorizing", "category", "catena", "catenae", "catenary", "catenate", "catenating", "catenulate", "cater", "catercorner", "catered", "caterer", "catering", "caters", "caterwaul", "caterwauling", "catfish", "catfishes", "catgut", "cathar", "cathari", "catharism", "cathars", "catharsis", "cathartic", "cathartid", "cathay", "cathect", "cathectic", "cathedra", "cathedral", "catherine", "catheter", "catheterisation", "catheterise", "catheterization", "catheterize", "cathexes", "cathexis", "cathode", "cathodic", "catholic", "catholicise", "catholicity", "catholicize", "catholicon", "cathouse", "cation", "cationic", "catkin", "catkinate", "catling", "catmint", "catnap", "catnapped", "catnapping", "catnip", "catoptric", "catoptrical", "catoptrics", "catostomid", "cats", "catsup", "cattail", "cattalo", "cattaloes", "catted", "cattie", "cattier", "cattiest", "cattiness", "catting", "cattish", "cattle", "cattleman", "cattleship", "cattleya", "catty", "catwalk", "caucasian", "caucasic", "caucasoid", "caucus", "caucuses", "caucusing", "cauda", "caudal", "caudally", "caudata", "caudate", "caudated", "caudex", "caudices", "caught", "caul", "cauldron", "caules", "caulescent", "cauliflower", "cauline", "caulis", "caulk", "caulked", "caulking", "causa", "causal", "causalgia", "causality", "causally", "causation", "causative", "cause", "caused", "causeless", "causerie", "causes", "causeway", "causing", "caustic", "caustically", "cauterant", "cauterisation", "cauterise", "cauterised", "cauterises", "cauterising", "cauterization", "cauterize", "cauterized", "cauterizes", "cauterizing", "cautery", "caution", "cautionary", "cautioned", "cautioning", "cautions", "cautious", "cautiously", "cautiousness", "cavalcade", "cavalier", "cavalierly", "cavalla", "cavalry", "cavalryman", "cavatina", "cavatine", "cave", "caveat", "caveats", "caved", "cavefish", "cavefishes", "caveman", "cavern", "cavernous", "caves", "cavetti", "cavetto", "caviar", "caviare", "cavil", "caviled", "caviler", "caviling", "cavilled", "caviller", "cavilling", "caving", "cavitied", "cavity", "cavort", "cavorting", "cavum", "cavy", "caw", "cawing", "cay", "cayenne", "cayman", "cayuse", "cazique", "cbc", "cbr", "cc", "ccrc", "cd", "CDC", "cdc", "cdna", "cdnas", "cds", "cdt", "ce", "cease", "ceased", "ceaseless", "ceaselessly", "ceaselessness", "ceases", "ceasing", "cebuano", "ceca", "cecal", "cecity", "cecum", "cedar", "cedarbird", "cedarn", "cedarwood", "cede", "ceded", "cedes", "cedi", "cedilla", "ceding", "cefadroxil", "cefobid", "cefoperazone", "cefotaxime", "ceftazidime", "ceftin", "ceftriaxone", "cefuroxime", "ceibo", "ceilidh", "ceiling", "ceilinged", "ceilings", "celandine", "celebrant", "celebrate", "celebrated", "celebrater", "celebrates", "celebrating", "celebration", "celebrations", "celebrator", "celebratory", "celebrex", "celebrities", "celebrity", "celecoxib", "celeriac", "celerity", "celery", "celesta", "celestial", "celestite", "celiac", "celibacy", "celibate", "celiocentesis", "celioma", "celioscopy", "cell", "cella", "cellae", "cellar", "cellarage", "cellaret", "cellblock", "cellist", "cello", "cellophane", "cellphone", "cells", "cellular", "cellularity", "cellulite", "cellulitis", "celluloid", "cellulose", "cellulosic", "cellulosid", "celom", "celoma", "celtic", "celtuce", "cembali", "cembalo", "cement", "cemented", "cementing", "cementite", "cementitious", "cements", "cementum", "cemeteries", "cemetery", "cenobite", "cenobitic", "cenobitical", "cenogenesis", "cenogenetic", "cenotaph", "cenozoic", "cense", "censer", "censor", "censored", "censorial", "censoring", "censorious", "censors", "censorship", "censurable", "censure", "censured", "censuring", "census", "censusing", "cent", "cental", "centare", "centas", "centaur", "centaury", "centavo", "centenarian", "centenary", "centennial", "centennially", "center", "centerboard", "centered", "centerfield", "centerfielder", "centerfold", "centerfolds", "centering", "centerline", "centerpiece", "centerpieces", "centers", "centesimal", "centesimi", "centesimo", "centesis", "centigrade", "centigram", "centigramme", "centigrammes", "centigrams", "centile", "centiliter", "centiliters", "centilitre", "centilitres", "centime", "centimeter", "centimeters", "centimetre", "centimetres", "centimo", "centipede", "centner", "centra", "Central", "central", "centralisation", "centralise", "centralised", "centralises", "centralising", "centralism", "centralist", "centralistic", "centrality", "centralization", "centralize", "centralized", "centralizes", "centralizing", "centrally", "centrarchid", "centre", "centreboard", "centred", "centrefold", "centrefolds", "centrepiece", "centrepieces", "centres", "centrex", "centric", "centrical", "centrifugal", "centrifugate", "centrifugating", "centrifugation", "centrifuge", "centrifuging", "centriole", "centripetal", "centrism", "centrist", "centroid", "centroidal", "centroids", "centromere", "centromeres", "centromeric", "centrosome", "centrosomic", "centrosymmetric", "centrum", "cents", "centuries", "centurion", "century", "ceo", "ceos", "cephalalgia", "cephalaspid", "cephalaspida", "cephalexin", "cephalhematoma", "cephalic", "cephalitis", "cephalochordate", "cephaloglycin", "cephalohematoma", "cephalometry", "cephalopod", "cephalopodan", "cephaloridine", "cephalosporin", "cephalothin", "cephalothoraces", "cephalothorax", "cer", "ceramic", "ceramicist", "ceramics", "ceramist", "ceras", "cerastes", "cerate", "ceratin", "ceratodus", "ceratopsian", "ceratosaur", "ceratosaurus", "ceratozamia", "cercaria", "cercariae", "cercarial", "cercariiae", "cerci", "cercus", "cere", "cereal", "cerebella", "cerebellar", "cerebellum", "cerebra", "cerebral", "cerebrally", "cerebrate", "cerebration", "cerebromeningitis", "cerebrospinal", "cerebrovascular", "cerebrum", "cerecloth", "cerement", "ceremonial", "ceremonially", "ceremonies", "ceremonious", "ceremoniously", "ceremoniousness", "ceremony", "ceresin", "ceric", "ceriman", "cerise", "cerium", "cerivastatin", "cernuous", "cero", "cerous", "cert", "certain", "certainly", "certainty", "certifiable", "certificate", "certificated", "certificates", "certification", "certificatory", "certified", "certifies", "certify", "certifying", "certiorari", "certitude", "cerulean", "cerumen", "ceruminous", "ceruse", "cerussite", "cervical", "cervices", "cervicitis", "cervid", "cervine", "cervix", "cesarean", "cesareans", "cesarian", "cesium", "cespitose", "cessation", "cession", "cesspit", "cesspool", "cestode", "cestuses", "cesura", "cesurae", "cetacean", "cetaceous", "cetchup", "cetrimide", "cewa", "ceylonese", "cf", "cfc", "cfo", "cftr", "cgs", "chabasite", "chabazite", "chachalaca", "chachka", "chacma", "Chad", "chad", "chadar", "chadarim", "chaddar", "chadian", "chadic", "chadlock", "chador", "chaenactis", "chaeta", "chaetae", "chaetal", "chaetodon", "chaetognath", "chaetognathan", "chaetognathous", "chafe", "chafed", "chafes", "chafeweed", "chaff", "chaffer", "chaffinch", "chafflike", "chaffweed", "chaffy", "chafing", "chaga", "chagga", "chagrin", "chagrined", "chahta", "chain", "chained", "chaining", "chainlike", "chains", "chainsaw", "chair", "chaired", "chairing", "chairlift", "chairman", "chairmanship", "chairperson", "chairs", "chairwoman", "chaise", "chaja", "chalaza", "chalazae", "chalazion", "chalcanthite", "chalcedony", "chalcid", "chalcidae", "chalcidfly", "chalcocite", "chalcopyrite", "chaldaea", "chaldaean", "chaldean", "chaldee", "chaldron", "chalet", "chalice", "chalk", "chalkboard", "chalked", "chalking", "chalkpit", "chalkstone", "chalky", "challah", "challenge", "challengeable", "challenged", "challenger", "challengers", "challenges", "challenging", "challis", "challoth", "chalutz", "chalutzim", "chalybeate", "chalybite", "chamaeleonidae", "chamber", "chambered", "chambering", "chamberlain", "chambermaid", "chamberpot", "chambers", "chambray", "chameleon", "chamfer", "chamfron", "chammy", "chamois", "chamomile", "chamosite", "champ", "champagne", "champerty", "champing", "champion", "championed", "championing", "champions", "championship", "championships", "champleve", "chanal", "chanar", "chance", "chanceful", "chancel", "chancellery", "chancellor", "chancellorship", "chancery", "chances", "chancier", "chanciest", "chancing", "chancre", "chancroid", "chancroidal", "chancrous", "chancy", "chandelier", "chandelle", "chandler", "chandlery", "chanfron", "chang", "changan", "change", "changeability", "changeable", "changeableness", "changed", "changeful", "changefulness", "changeless", "changelessness", "changeling", "changeover", "changer", "changes", "changing", "changjiang", "channel", "channeled", "channeling", "channelisation", "channelise", "channelization", "channelize", "channelled", "channelling", "channels", "channukah", "channukkah", "chanoyu", "chant", "chantarelle", "chanted", "chanter", "chanterelle", "chantey", "chanting", "chantlike", "chantry", "chants", "chanty", "chanukah", "chanukkah", "chaos", "chaotic", "chaotically", "chap", "chaparral", "chapati", "chapaties", "chapatti", "chapatties", "chapeau", "chapeaux", "chapel", "chapelgoer", "chapels", "chaperon", "chaperone", "chaperones", "chaperoning", "chapfallen", "chapiter", "chaplain", "chaplaincy", "chaplainship", "chaplet", "chapleted", "chapman", "chapped", "chapping", "chapter", "chapterhouse", "chapters", "char", "charabanc", "characid", "characin", "character", "characterisation", "characterise", "characterised", "characterises", "characterising", "characteristic", "characteristically", "characteristics", "characterization", "characterize", "characterized", "characterizes", "characterizing", "characterless", "characters", "charade", "charcoal", "charcuterie", "chard", "charge", "chargeable", "charged", "chargeman", "charger", "charges", "charging", "chari", "charier", "chariest", "charily", "chariness", "chariot", "charioteer", "charisma", "charismatic", "charitable", "charitableness", "charitably", "charities", "charity", "charivari", "charlatan", "charlatanism", "charleston", "charlock", "charm", "charmed", "charmer", "charming", "charmingly", "charmless", "charms", "charnel", "charr", "charred", "charring", "chart", "chartaceous", "charter", "chartered", "charterhouse", "chartering", "charters", "charting", "chartist", "chartless", "chartreuse", "charts", "charwoman", "chary", "chase", "chased", "chaser", "chases", "chasid", "chasidic", "chasidim", "chasidism", "chasing", "chasm", "chasse", "chassid", "chassidic", "chassidim", "chassidism", "chassis", "chaste", "chastely", "chasten", "chastened", "chasteness", "chastening", "chastise", "chastised", "chastisement", "chastises", "chastising", "chastity", "chasuble", "chat", "chateau", "chateaux", "chatelaine", "chatoyant", "chatroom", "chats", "chatted", "chattel", "chatter", "chatterbox", "chatterer", "chattering", "chattier", "chattiest", "chattily", "chatting", "chatty", "chauffeur", "chauffeuring", "chauffeurs", "chauffeuse", "chaulmoogra", "chaulmugra", "chauvinism", "chauvinist", "chauvinistic", "chaw", "chawbacon", "chazan", "chazanim", "cheap", "cheapen", "cheapening", "cheapens", "cheaper", "cheapest", "cheapjack", "cheaply", "cheapness", "cheapskate", "cheat", "cheated", "cheater", "cheaters", "cheatgrass", "cheating", "cheats", "chebab", "chechen", "chechenia", "check", "checkbook", "checkbooks", "checked", "checker", "checkerberry", "checkerbloom", "checkerboard", "checkered", "checking", "checklist", "checkmate", "checkout", "checkpoint", "checkpoints", "checkrein", "checkroom", "checkrow", "checks", "checksum", "checkup", "chedarim", "cheder", "cheek", "cheekbone", "cheekier", "cheekiest", "cheekily", "cheekiness", "cheekpiece", "cheeks", "cheeky", "cheep", "cheer", "cheered", "cheerer", "cheerful", "cheerfully", "cheerfulness", "cheerier", "cheeriest", "cheerily", "cheering", "cheerio", "cheerlead", "cheerleader", "cheerless", "cheerlessly", "cheerlessness", "cheers", "cheery", "cheese", "cheeseboard", "cheeseburger", "cheesecake", "cheesecloth", "cheeseflower", "cheeselike", "cheesemonger", "cheeseparing", "cheeses", "cheesier", "cheesiest", "cheesy", "cheetah", "cheewink", "chef", "chefs", "cheilitis", "cheiloschisis", "cheilosis", "chekov", "chela", "chelae", "chelate", "chelated", "chelating", "chelation", "chelicera", "chelicerae", "cheliceral", "chelicerate", "chelicerous", "cheliferous", "cheloid", "chelonia", "chelonian", "chelonidae", "chemic", "chemical", "chemically", "chemicals", "chemiluminescence", "chemiluminescent", "chemise", "chemisorb", "chemisorption", "chemisorptive", "chemist", "chemistry", "chemoimmunology", "chemoreceptive", "chemoreceptor", "chemosis", "chemosorption", "chemosorptive", "chemosurgery", "chemosynthesis", "chemotaxis", "chemotherapeutic", "chemotherapeutical", "chemotherapy", "chemulpo", "chenfish", "chenille", "chenopodiales", "cheque", "chequebook", "chequebooks", "chequer", "chequered", "cheques", "cherimolla", "cherimoya", "cherish", "cherished", "cherishes", "cherishing", "chermidae", "cheroot", "cherries", "cherry", "cherrystone", "chert", "cherty", "cherub", "cherubic", "cherubim", "chervil", "chess", "chessboard", "chessman", "chest", "chestier", "chestiest", "chestnut", "chests", "chesty", "chetah", "chetrum", "chevalier", "chevied", "chevre", "Chevron", "chevron", "chevrotain", "chevvy", "chevy", "chevying", "chew", "chewable", "chewed", "chewer", "chewier", "chewiest", "chewing", "chewink", "chews", "chewy", "chi", "chian", "chiaroscuro", "chiasm", "chiasma", "chiasmal", "chiasmata", "chiasmatic", "chiasmi", "chiasmic", "chiasmus", "chic", "chicane", "chicanery", "chicha", "chichi", "chichipe", "chick", "chickadee", "chicken", "chickenfeed", "chickenfight", "chickenhearted", "chickenpox", "chickens", "chickenshit", "chickeree", "chickpea", "chicks", "chickweed", "chicle", "chicness", "chico", "chicory", "chicot", "chide", "chided", "chides", "chiding", "chief", "chiefly", "chiefs", "chieftain", "chieftaincy", "chieftainship", "chiffon", "chiffonier", "chigetai", "chigger", "chiggerflower", "chignon", "chigoe", "chilblain", "chilblained", "child", "childbearing", "childbed", "childbirth", "childcare", "childhood", "childish", "childishly", "childishness", "childless", "childlessness", "childlike", "childly", "childproof", "children", "Chile", "chile", "chilean", "chili", "chiliad", "chiliasm", "chiliast", "chiliastic", "chill", "chilled", "chiller", "chilli", "chillier", "chillies", "chilliest", "chilliness", "chilling", "chills", "chilly", "chiluba", "chimaera", "chimaeras", "chime", "chimera", "chimeral", "chimeras", "chimeric", "chimerical", "chimes", "chiming", "chimney", "chimneypiece", "chimneypot", "chimneystack", "chimneysweep", "chimneysweeper", "chimp", "chimpanzee", "chimps", "chimwini", "chin", "China", "china", "chinaberry", "chinaware", "chincapin", "chinch", "chincherinchee", "chinchilla", "chinchillon", "chinchona", "chinchy", "chine", "chinese", "chingpo", "chink", "chinkapin", "chinked", "chinless", "chinned", "chinning", "chino", "chinoiserie", "chinquapin", "chintz", "chintzier", "chintziest", "chintzily", "chintzy", "chip", "chipboard", "chipmunk", "chipolata", "chipotle", "chipped", "chippendale", "chipper", "chippewa", "chippewaian", "chippewyan", "chippier", "chippiest", "chipping", "chippy", "chips", "chiralgia", "chirk", "chirocephalus", "chirography", "chirology", "chiromance", "chiromancer", "chiromancy", "chiromantic", "chiropodist", "chiropody", "chiropractic", "chiropractor", "chiropteran", "chirp", "chirpily", "chirpiness", "chirping", "chirps", "chirpy", "chirr", "chirrup", "chisel", "chiseled", "chiseler", "chiseling", "chiselled", "chiseller", "chiselling", "chisels", "chisinau", "chislev", "chit", "chitarrone", "chitarroni", "chitchat", "chitchatted", "chitchatting", "chitin", "chitinous", "chitlings", "chitlins", "chiton", "chittamwood", "chitter", "chitterlings", "chittimwood", "chiv", "chivalric", "chivalrous", "chivalrously", "chivalry", "chivaree", "chive", "chivied", "chivved", "chivvied", "chivving", "chivvy", "chivvying", "chivy", "chk", "chlamydeous", "chlamydes", "chlamydia", "chlamydial", "chlamydospore", "chlamyphore", "chlamys", "chlamyses", "chloasma", "chlorambucil", "chloramine", "chloramphenicol", "chlorate", "chlordiazepoxide", "chlorella", "chlorenchyma", "chlorhexidine", "chloride", "chlorinate", "chlorinating", "chlorination", "chlorine", "chlorinity", "chlorite", "chloroacetophenone", "chlorobenzene", "chlorobenzylidenemalononitrile", "chlorofluorocarbon", "chloroform", "chlorofucin", "chloromycetin", "chlorophyl", "chlorophyll", "chlorophyllose", "chlorophyllous", "chlorophyte", "chloropicrin", "chloroplast", "chloroprene", "chloroquine", "chlorosis", "chlorothiazide", "chlorotic", "chlorpromazine", "chlorpyrifos", "chlortetracycline", "chlorthalidone", "choanocyte", "choc", "chock", "chockablock", "chockes", "chockful", "chocking", "chocolate", "chocolates", "choice", "choiceness", "choices", "choir", "choirboy", "choirmaster", "choke", "chokecherry", "choked", "chokedamp", "chokehold", "chokepoint", "choker", "chokes", "chokey", "choking", "choky", "cholangiography", "cholangitis", "cholecalciferol", "cholecystectomy", "cholecystitis", "cholecystokinin", "cholelithiasis", "cholelithotomy", "choler", "cholera", "choleraic", "choleric", "cholestasis", "cholesterin", "cholesterol", "choline", "cholinergic", "cholinesterase", "cholla", "chomp", "chomping", "chon", "chondrichthian", "chondrified", "chondrify", "chondrin", "chondriosome", "chondrite", "chondritic", "chondrodystrophy", "chondroma", "chondromata", "chondrosarcoma", "chondrule", "choose", "chooser", "chooses", "choosey", "choosier", "choosiest", "choosing", "choosy", "chop", "chopfallen", "chophouse", "chopine", "chopped", "chopper", "choppier", "choppiest", "choppiness", "chopping", "choppy", "chops", "chopsteak", "chopstick", "choragi", "choragic", "choragus", "choral", "chorale", "chorally", "chord", "chordal", "chordamesoderm", "chordate", "chording", "chorditis", "chordomesoderm", "chordophone", "chore", "chorea", "choreograph", "choreographed", "choreographer", "choreographic", "choreographing", "choreographs", "choreography", "chores", "choriambi", "choriambus", "choric", "chorine", "chorioallantois", "choriomeningitis", "chorion", "chorionic", "chorioretinitis", "chorister", "chorizo", "choroid", "chortle", "chortled", "chortling", "chorus", "chorusing", "chose", "chosen", "chou", "chough", "chouse", "choux", "chow", "chowchow", "chowder", "chrestomathy", "chrism", "chrisom", "christ", "christella", "christen", "christening", "christian", "christiania", "christianisation", "christianise", "christianize", "christianly", "christians", "christless", "christlike", "christly", "christmas", "christmasberry", "christmastide", "christmastime", "christological", "chroma", "chromaesthesia", "chromate", "chromatic", "chromatically", "chromaticity", "chromatid", "chromatids", "chromatin", "chromatinic", "chromatism", "chromatogram", "chromatographic", "chromatographical", "chromatographically", "chromatography", "chrome", "chromesthesia", "chromite", "chromium", "chromoblastomycosis", "chromogen", "chromolithography", "chromonema", "chromonemata", "chromophore", "chromoplast", "chromosomal", "chromosome", "chromosomes", "chromosphere", "chronic", "chronically", "chronicle", "chronicler", "chronicles", "chronicling", "chronograph", "chronological", "chronologically", "chronologise", "chronologize", "chronology", "chronometer", "chronoscope", "chrysalides", "chrysalis", "chrysanthemum", "chrysarobin", "chrysoberyl", "chrysolite", "chrysomelid", "chrysopid", "chrysoprase", "chrysotherapy", "chrysotile", "chthonian", "chthonic", "chub", "chubbier", "chubbiest", "chubbiness", "chubby", "chuck", "chucked", "chuckhole", "chucking", "chuckle", "chuckles", "chuckling", "chucks", "chuckwalla", "chuddar", "chufa", "chuff", "chuffed", "chuffier", "chuffiest", "chuffing", "chuffy", "chug", "chugged", "chugging", "chugs", "chukka", "chukker", "chum", "chummed", "chummier", "chummiest", "chumminess", "chumming", "chummy", "chump", "chunga", "chungking", "chunk", "chunkier", "chunkiest", "chunking", "chunks", "chunky", "chunnel", "church", "churches", "churchgoer", "churchgoing", "churchier", "churchiest", "churchillian", "churchly", "churchman", "churchwarden", "churchy", "churchyard", "churidars", "churl", "churlish", "churlishly", "churn", "churning", "churns", "churr", "churrigueresco", "churrigueresque", "churring", "chute", "chutney", "chutzpa", "chutzpah", "chutzpanik", "chuvash", "chuvashes", "chylaceous", "chyle", "chylifactive", "chylifactory", "chyliferous", "chylific", "chyloderma", "chylomicron", "chylous", "chyme", "chymosin", "CIA", "cia", "cialis", "ciao", "ciboria", "ciborium", "cicada", "cicadae", "cicala", "cicale", "cicatrice", "cicatrices", "cicatrise", "cicatrix", "cicatrize", "cicerone", "ciceroni", "cichlid", "cicisbei", "cicisbeo", "cid", "cider", "ciderpress", "cigar", "cigaret", "cigarette", "cigarettes", "cigarfish", "cigarillo", "cigars", "cilantro", "cilia", "cilial", "ciliary", "ciliate", "ciliated", "cilioflagellata", "ciliophora", "ciliophoran", "cilium", "cim", "cimetidine", "cimex", "cimices", "cimmerian", "cinch", "cinching", "cinchona", "cinchonine", "cincture", "cinder", "cinema", "cinemas", "cinematic", "cinematise", "cinematize", "cinematographer", "cinematography", "cineraria", "cinerarium", "cinerary", "cingula", "cingulum", "cinnabar", "cinnamene", "cinnamon", "cinque", "cinquefoil", "cio", "cipher", "ciphers", "cipro", "ciprofloxacin", "cira", "circa", "circadian", "circinate", "circle", "circled", "circles", "circlet", "circling", "circuit", "circuitous", "circuitry", "circuits", "circular", "circularisation", "circularise", "circularised", "circularises", "circularising", "circularity", "circularization", "circularize", "circularized", "circularizes", "circularizing", "circularly", "circulate", "circulated", "circulates", "circulating", "circulation", "circulative", "circulatory", "circumambulate", "circumambulating", "circumboreal", "circumcise", "circumcising", "circumduction", "circumference", "circumferent", "circumferential", "circumflex", "circumfuse", "circumlocution", "circumlocutious", "circumlocutory", "circumnavigate", "circumnavigation", "circumpolar", "circumscribe", "circumscribed", "circumscribing", "circumscription", "circumspect", "circumspection", "circumspectly", "circumstance", "circumstances", "circumstantial", "circumstantially", "circumstantiate", "circumvallate", "circumvent", "circumventing", "circumvention", "circumvents", "circumvolute", "circumvolution", "circumvolve", "circus", "cirio", "cirque", "cirrhosis", "cirrhus", "cirri", "cirriped", "cirripede", "cirrocumuli", "cirrocumulus", "cirrostrati", "cirrostratus", "cirrus", "cisalpine", "cisc", "cisco", "ciscoes", "cislunar", "cismontane", "cissy", "cistercian", "cistern", "cisterna", "cisternae", "cistron", "citadel", "citation", "citations", "cite", "cited", "cites", "cither", "cithern", "cities", "citified", "citify", "citing", "citizen", "citizenry", "citizens", "citizenship", "citole", "citrange", "citrate", "citric", "citrin", "citrine", "citron", "citronwood", "citrous", "citrulline", "citrus", "cittern", "city", "cityfied", "cityscape", "citywide", "cive", "civet", "civic", "civics", "civies", "civil", "civilian", "civilians", "civilisation", "civilise", "civilised", "civilises", "civilising", "civility", "civilization", "civilizations", "civilize", "civilized", "civilizes", "civilizing", "civilly", "civvies", "cjd", "clabber", "clack", "clacking", "clad", "cladding", "clade", "clades", "cladistics", "cladode", "cladogram", "cladophyll", "claforan", "claim", "claimant", "claimed", "claiming", "claims", "clairvoyance", "clairvoyant", "clam", "clamant", "clamatorial", "clambake", "clamber", "clambered", "clambering", "clammed", "clammier", "clammiest", "clammily", "clamminess", "clamming", "clammy", "clammyweed", "clamor", "clamored", "clamoring", "clamorous", "clamorously", "clamors", "clamour", "clamoured", "clamouring", "clamours", "clamp", "clampdown", "clamped", "clamping", "clamps", "clams", "clamshell", "clan", "clandestine", "clang", "clanger", "clanging", "clangor", "clangoring", "clangorous", "clangour", "clani", "clank", "clanking", "clannish", "clannishly", "clannishness", "clanos", "clansman", "clanswoman", "clap", "clapboard", "clapped", "clapper", "clapperboard", "clapperclaw", "clapping", "claps", "claptrap", "claque", "clarence", "claret", "clarification", "clarified", "clarifies", "clarify", "clarifying", "clarinet", "clarinetist", "clarinetists", "clarinettist", "clarinettists", "clarino", "clarion", "clarity", "claro", "claroes", "clary", "clash", "clashed", "clashes", "clashing", "clasp", "clasping", "class", "classed", "classes", "classic", "classical", "classicalism", "classically", "classicise", "classicism", "classicist", "classicistic", "classicize", "classics", "classier", "classiest", "classifiable", "classification", "classifications", "classificatory", "classified", "classifier", "classifies", "classify", "classifying", "classing", "classless", "classmate", "classmates", "classroom", "classrooms", "classwork", "classy", "clast", "clastic", "clathrate", "clatter", "clattering", "clattery", "claudication", "clausal", "clause", "clauses", "claustrophobe", "claustrophobia", "claustrophobic", "claustrum", "claver", "clavichord", "clavicle", "clavier", "clavus", "claw", "clawback", "clawed", "clawfoot", "clawhammer", "clawing", "clawlike", "claws", "claxon", "clay", "clayey", "claymore", "claystone", "clayware", "clean", "cleanable", "cleaned", "cleaner", "cleaners", "cleaning", "cleanlier", "cleanliest", "cleanliness", "cleanly", "cleanness", "cleans", "cleanse", "cleansed", "cleanser", "cleansing", "cleanup", "clear", "clearance", "clearcutness", "cleared", "clearer", "clearheaded", "clearing", "clearly", "clearness", "clears", "clearstory", "clearway", "clearweed", "cleat", "cleavable", "cleavage", "cleave", "cleaver", "cleaving", "clef", "cleft", "cleg", "clegg", "cleistocarp", "cleistogamic", "cleistogamous", "cleistogamy", "cleistothecium", "clem", "clematis", "clemency", "clement", "clementine", "clemmed", "clemming", "clench", "clenched", "clenches", "clenching", "cleome", "clepe", "clepsydra", "clepsydrae", "clerestory", "clergy", "clergyman", "cleric", "clerical", "clericalism", "clericalist", "clerid", "clerihew", "clerisy", "clerk", "clerking", "clerklier", "clerkliest", "clerkly", "clerks", "clerkship", "clever", "cleverly", "cleverness", "clevis", "clew", "cli", "clianthus", "cliche", "cliched", "click", "clicked", "clicking", "clicks", "client", "clientage", "clientele", "clients", "cliff", "cliffhanger", "cliffs", "climacteric", "climactic", "climate", "climates", "climatic", "climatical", "climatically", "climatologist", "climatology", "climax", "climaxing", "climb", "climbable", "climbed", "climber", "climbers", "climbing", "climbs", "clime", "clinandria", "clinandrium", "clinch", "clinched", "clincher", "clinches", "clinching", "cling", "clingfilm", "clingfish", "clingfishes", "clinging", "clingstone", "clinic", "clinical", "clinically", "clinician", "clinicians", "clinics", "clinid", "clink", "clinker", "clinking", "clinocephalism", "clinocephaly", "clinodactyly", "clinometer", "clinoril", "clinquant", "clintonia", "clioquinol", "clip", "clipboard", "clipped", "clipper", "clipping", "clippings", "clips", "clique", "cliquish", "cliquishly", "cliquishness", "clit", "clitella", "clitellum", "clitoral", "clitoric", "clitoridectomy", "clitoris", "clitter", "clivers", "cloaca", "cloacae", "cloak", "cloaked", "cloaking", "cloakmaker", "cloakroom", "clobber", "clobbered", "clobbering", "clochard", "cloche", "clock", "clocked", "clocking", "clockmaker", "clocks", "clocksmith", "clockwise", "clockwork", "clod", "cloddish", "clodhopper", "clofibrate", "clog", "clogged", "clogging", "cloggy", "cloisonne", "cloister", "cloistered", "cloistral", "clomid", "clomiphene", "clomipramine", "clomp", "clon", "clonal", "clone", "cloned", "clones", "clonic", "clonidine", "cloning", "clonus", "clop", "clopped", "clopping", "close", "closed", "closedown", "closefisted", "closelipped", "closely", "closemouthed", "closeness", "closeout", "closer", "closes", "closest", "closet", "closeting", "closets", "closeup", "closing", "closings", "clostridia", "clostridium", "closure", "closures", "clot", "clotbur", "cloth", "clothe", "clothed", "clothes", "clothesbrush", "clotheshorse", "clothesless", "clothesline", "clothespin", "clothespress", "clothier", "clothing", "clots", "clotted", "clotting", "cloture", "cloud", "cloudberry", "cloudburst", "clouded", "cloudier", "cloudiest", "cloudiness", "clouding", "cloudless", "cloudlessness", "cloudlike", "clouds", "cloudy", "clout", "clove", "cloven", "clover", "cloverleaf", "cloverleaves", "cloveroot", "clowder", "clown", "clowning", "clownish", "clownlike", "clowns", "cloy", "cloying", "cloyingly", "clozapine", "clozaril", "cloze", "club", "clubable", "clubbable", "clubbed", "clubbier", "clubbiest", "clubbing", "clubbish", "clubby", "clubfoot", "clubfooted", "clubhead", "clubhouse", "clubroom", "clubs", "cluck", "clucking", "clucks", "clue", "clueless", "clues", "clumber", "clump", "clumping", "clumsier", "clumsiest", "clumsily", "clumsiness", "clumsy", "clunch", "clunk", "clunking", "clunky", "clupeid", "clusia", "clusiaceae", "cluster", "clustered", "clustering", "clusters", "clutch", "clutches", "clutching", "clutter", "cluttered", "cluttering", "clypei", "clypeus", "clyster", "cm", "cmb", "cmbr", "cmv", "cnidarian", "cnossos", "cnossus", "cnpz", "cns", "cnut", "co", "co-anchored", "Co-author", "co-author", "co-authored", "co-chairman", "co-chairmen", "co-chief", "co-defendant", "co-developers", "co-edited", "co-editor", "co-edits", "co-founded", "co-founder", "co-founders", "co-head", "co-hero", "co-manager", "co-managing", "co-op", "co-owner", "co-payments", "co-pilot", "co-produce", "co-production", "co-publisher", "co-sponsor", "co-sponsored", "co-sponsoring", "co-worker", "co-workers", "CO.", "Co.", "co.", "coach", "coachbuilder", "coaches", "coaching", "coachman", "coachwhip", "coact", "coaction", "coadjutor", "coagula", "coagulable", "coagulant", "coagulase", "coagulate", "coagulated", "coagulation", "coagulator", "coagulum", "coal", "coalbin", "coalesce", "coalesced", "coalescence", "coalescency", "coalescent", "coalesces", "coalescing", "coalface", "coalfield", "coalfish", "coalfishes", "coalhole", "coalition", "coalman", "coalpit", "coaming", "coapt", "coarctate", "coarctation", "coarse", "coarsely", "coarsen", "coarsened", "coarseness", "coarsening", "Coast", "coast", "coastal", "coasted", "coaster", "coastguard", "coastguardsman", "coasting", "coastland", "coastline", "coasts", "coastward", "coastwise", "coat", "coatdress", "coated", "coatee", "coati", "coating", "coatrack", "coatroom", "coats", "coattail", "coauthor", "coax", "coaxal", "coaxer", "coaxes", "coaxial", "coaxing", "coaxingly", "cob", "cobalamin", "cobalt", "cobaltite", "cobber", "cobble", "cobbled", "cobbler", "cobblestone", "cobbling", "cobia", "cobnut", "cobol", "cobra", "cobweb", "cobwebby", "cocain", "cocaine", "cocainise", "cocainize", "cocarboxylase", "coccal", "cocci", "coccidioidomycosis", "coccidiomycosis", "coccidiosis", "coccidium", "coccobacillus", "coccoid", "coccus", "coccygeal", "coccyges", "coccyx", "cochin", "cochineal", "cochlea", "cochleae", "cochlear", "cock", "cockade", "cockamamie", "cockamamy", "cockateel", "cockatiel", "cockatoo", "cockatrice", "cockchafer", "cockcrow", "cocker", "cockerel", "cockeyed", "cockfight", "cockfighting", "cockhorse", "cockier", "cockiest", "cockiness", "cocking", "cockle", "cocklebur", "cockleburr", "cockleshell", "cockloft", "cockney", "cockneyfied", "cockneyfy", "cockpit", "cockroach", "cockscomb", "cocksfoot", "cockspur", "cocksucker", "cocksuckers", "cocksure", "cocksureness", "cocktail", "cocktails", "cockup", "cocky", "coco", "cocoa", "cocoanut", "cocobolo", "coconspirator", "coconspire", "coconut", "cocoon", "cocooning", "cocopah", "cocoswood", "cocotte", "cocoyam", "cocozelle", "cocuswood", "cod", "coda", "codded", "codding", "coddle", "coddled", "coddler", "coddles", "code", "coded", "codefendant", "codeine", "coder", "codes", "codetalker", "codex", "codfish", "codfishes", "codger", "codices", "codicil", "codification", "codified", "codifies", "codify", "codifying", "coding", "codling", "codon", "codons", "codpiece", "codswallop", "coeducate", "coeducation", "coeducational", "coefficient", "coefficients", "coelacanth", "coelentera", "coelenterata", "coelenterate", "coelenteron", "coeliac", "coelogyne", "coelom", "coelophysis", "coelostat", "coenobite", "coenobitic", "coenobitical", "coenuri", "coenurus", "coenzyme", "coequal", "coerce", "coerced", "coerces", "coercing", "coercion", "coercive", "coetaneous", "coeval", "coexist", "coexistence", "coexistent", "coexisting", "coexists", "coextension", "coextensive", "cofactor", "cofactors", "coffee", "coffeeberry", "coffeecake", "coffeehouse", "coffeepot", "coffer", "cofferdam", "coffers", "coffin", "cofounder", "cog", "cogency", "cogent", "cogged", "cogging", "coggle", "cogitable", "cogitate", "cogitation", "cogitative", "cognate", "cognation", "cognisable", "cognisance", "cognisant", "cognise", "cognition", "cognitive", "cognitively", "cognizable", "cognizance", "cognizant", "cognize", "cognomen", "cognomina", "cognoscente", "cognoscible", "cognosente", "cognosenti", "cogwheel", "cohabit", "cohabitation", "cohabiting", "cohabits", "cohere", "coherence", "coherency", "coherent", "coherently", "cohesion", "cohesive", "cohesiveness", "coho", "cohoe", "cohort", "cohorts", "cohosh", "cohune", "coif", "coiffe", "coiffed", "coiffeur", "coiffeuse", "coiffing", "coiffure", "coign", "coigne", "coil", "coiled", "coiling", "coils", "coin", "coinage", "coincide", "coincided", "coincidence", "coincident", "coincidental", "coincidentally", "coincidently", "coincides", "coinciding", "coined", "coiner", "coining", "coins", "coinsurance", "coinsure", "coir", "coital", "coition", "coitus", "coke", "col", "COL.", "Col.", "col.", "cola", "colander", "colchicine", "cold", "coldcock", "coldcream", "colder", "coldhearted", "coldheartedness", "coldly", "coldness", "colds", "coldwork", "cole", "coleorhiza", "coleorhizae", "coleridgean", "coleridgian", "coleslaw", "coleus", "colewort", "colic", "colicky", "colicroot", "coliphage", "coliseum", "colitis", "collaborate", "collaborated", "collaborates", "collaborating", "collaboration", "collaborationism", "collaborationist", "collaborations", "collaborative", "collaborator", "collaborators", "collage", "collagen", "collagenase", "collagenic", "collagenous", "collapsable", "collapse", "collapsed", "collapses", "collapsible", "collapsing", "collar", "collarbone", "collard", "collarless", "collars", "collate", "collateral", "collateralize", "collates", "collating", "collation", "colleague", "colleagues", "collect", "collectable", "collected", "collectedly", "collectible", "collectibles", "collecting", "collection", "collections", "collective", "collectively", "collectivisation", "collectivise", "collectivised", "collectivises", "collectivising", "collectivism", "collectivist", "collectivistic", "collectivization", "collectivize", "collectivized", "collectivizes", "collectivizing", "collector", "collectors", "collects", "colleen", "college", "colleges", "collegia", "collegial", "collegian", "collegiate", "collegium", "collembolan", "collet", "collide", "collider", "collides", "colliding", "collie", "collied", "collier", "colliery", "colliest", "colligate", "colligation", "collimate", "collimation", "collimator", "collinear", "collision", "collisions", "collocate", "collocates", "collocating", "collocation", "collodion", "collogue", "colloid", "colloidal", "colloidally", "colloquia", "colloquial", "colloquialism", "colloquially", "colloquium", "colloquy", "collotype", "collude", "colludes", "colluding", "collusion", "collusive", "colluvia", "colluvium", "colly", "collyria", "collyrium", "collywobbles", "COLO.", "Colo.", "colo.", "colobus", "Colombia", "colombia", "colombian", "colon", "colonel", "colones", "colonial", "colonialism", "colonialist", "colonic", "colonies", "colonisation", "colonise", "colonised", "coloniser", "colonisers", "colonises", "colonising", "colonist", "colonists", "colonization", "colonize", "colonized", "colonizer", "colonizers", "colonizes", "colonizing", "colonnade", "colonnaded", "colonoscope", "colonoscopy", "colony", "colophon", "colophony", "color", "coloradillo", "colorado", "colorant", "colorants", "coloration", "coloratura", "colorcast", "colorectal", "colored", "coloreds", "colorfast", "colorful", "colorfully", "colorimeter", "colorimetric", "colorimetrical", "colorimetry", "coloring", "colorise", "colorist", "colorize", "colorized", "colorizes", "colorizing", "colorless", "colorlessness", "colors", "colossal", "colossi", "colossus", "colostomy", "colostrum", "colour", "colourant", "colourants", "colouration", "colourcast", "coloured", "coloureds", "colourful", "colourfully", "colouring", "colourise", "colourize", "colourized", "colourizes", "colourizing", "colourless", "colourlessness", "colours", "colpitis", "colpocele", "colpocystitis", "colpocystocele", "colpoxerosis", "coltan", "colter", "coltish", "coltsfoot", "colubrid", "colugo", "columbaria", "columbarium", "columbary", "columbian", "columbine", "columbite", "columbium", "columbo", "columella", "columellae", "column", "columnar", "columnea", "columned", "columniation", "columniform", "columnist", "columnists", "columnlike", "columns", "colymbiformes", "colza", "coma", "comae", "comal", "comate", "comatose", "comatoseness", "comatula", "comatulae", "comatulid", "comb", "combat", "combatant", "combating", "combative", "combatively", "combativeness", "combats", "combatted", "combatting", "combed", "comber", "combinable", "combination", "combinational", "combinations", "combinative", "combinatorial", "combinatory", "combine", "combined", "combines", "combing", "combining", "combo", "combretum", "combs", "comburant", "comburent", "combust", "combustibility", "combustible", "combustibleness", "combusting", "combustion", "combustive", "combusts", "come", "comeback", "comedian", "comedians", "comedienne", "comedies", "comedo", "comedones", "comedown", "comedy", "comelier", "comeliest", "comeliness", "comely", "comer", "comes", "comestible", "comet", "cometary", "cometic", "comeupance", "comeuppance", "comfier", "comfiest", "comfit", "comfort", "comfortable", "comfortableness", "comfortably", "comforted", "comforter", "comforting", "comfortingly", "comfortless", "comforts", "comfrey", "comfy", "comic", "comic-strip", "comical", "comicality", "comically", "comics", "coming", "comint", "comity", "comma", "command", "commandant", "commanded", "commandeer", "commandeering", "commander", "commanders", "commandership", "commandery", "commanding", "commandment", "commando", "commandoes", "commandos", "commands", "commelina", "commelinales", "commemorate", "commemorated", "commemorates", "commemorating", "commemoration", "commemorative", "commence", "commenced", "commencement", "commences", "commencing", "commend", "commendable", "commendation", "commended", "commending", "commends", "commensal", "commensalism", "commensally", "commensurable", "commensurate", "commensurateness", "comment", "commentaries", "commentary", "commentate", "commentating", "commentator", "commentators", "commented", "commenting", "comments", "commerce", "commercial", "commercialisation", "commercialise", "commercialised", "commercialises", "commercialising", "commercialism", "commercialization", "commercialize", "commercialized", "commercializes", "commercializing", "commercially", "commercials", "commie", "comminate", "commination", "comminatory", "commingle", "commingling", "comminute", "commiserate", "commiserating", "commiseration", "commiserative", "commissar", "commissariat", "commissary", "commission", "commissionaire", "commissioned", "commissioner", "commissioners", "commissioning", "commissions", "commissure", "commit", "commiting", "commitment", "commitments", "commits", "committal", "committed", "committedness", "committee", "committeeman", "committees", "committeewoman", "committing", "commix", "commixture", "commode", "commodious", "commodiousness", "commodities", "commodity", "commodore", "common", "commonage", "commonality", "commonalty", "commoner", "commonly", "commonness", "commonplace", "commonplaceness", "commonsense", "commonsensible", "commonsensical", "commonweal", "Commonwealth", "commonwealth", "commotion", "commove", "communal", "communalise", "communalism", "communalize", "communally", "commune", "communicable", "communicant", "communicate", "communicated", "communicating", "communication", "communicational", "communications", "communicative", "communicativeness", "communicator", "communicatory", "communing", "communion", "communique", "communisation", "communise", "communism", "communist", "communistic", "communists", "communities", "community", "communization", "communize", "commutability", "commutable", "commutate", "commutation", "commutative", "commutator", "commute", "commuter", "commuters", "commutes", "commuting", "Comoros", "comoros", "comose", "comp", "compact", "compacted", "compaction", "compactly", "compactness", "companies", "companion", "companionability", "companionable", "companionableness", "companionate", "companioning", "companions", "companionship", "companionway", "company", "comparability", "comparable", "comparably", "comparative", "comparatively", "compare", "compared", "compares", "comparing", "comparison", "comparisons", "compart", "compartment", "compartmental", "compartmentalisation", "compartmentalise", "compartmentalised", "compartmentalises", "compartmentalising", "compartmentalization", "compartmentalize", "compartmentalized", "compartmentalizes", "compartmentalizing", "compartmented", "compartments", "compass", "compassion", "compassionate", "compassionately", "compassionateness", "compatibility", "compatible", "compatibly", "compatriot", "compeer", "compel", "compelled", "compelling", "compels", "compendious", "compendium", "compensable", "compensate", "compensated", "compensates", "compensating", "compensation", "compere", "compete", "competed", "competence", "competencies", "competency", "competent", "competently", "competes", "competing", "competition", "competitions", "competitive", "competitively", "competitiveness", "competitor", "competitors", "competitory", "compilation", "compile", "compiled", "compiler", "compiles", "compiling", "complacence", "complacency", "complacent", "complacently", "complain", "complainant", "complained", "complainer", "complaining", "complainingly", "complains", "complaint", "complaintive", "complaints", "complaisance", "complaisant", "complect", "complement", "complemental", "complementarity", "complementary", "complementation", "complementing", "complements", "complete", "completed", "completely", "completeness", "completes", "completing", "completion", "complex", "complexes", "complexifier", "complexify", "complexion", "complexities", "complexity", "complexly", "complexness", "compliance", "compliancy", "compliant", "complicate", "complicated", "complicatedness", "complicates", "complicating", "complication", "complications", "complicity", "complied", "complies", "compliment", "complimentary", "complimented", "complimenting", "compliments", "complin", "compline", "complot", "complotted", "complotting", "comply", "complying", "component", "components", "comport", "comportment", "compose", "composed", "composedly", "composer", "composers", "composes", "composing", "composite", "compositeness", "composition", "compositional", "compositions", "compositor", "compost", "composure", "compote", "compound", "compounded", "compounding", "compounds", "comprehend", "comprehended", "comprehendible", "comprehending", "comprehends", "comprehensibility", "comprehensible", "comprehension", "comprehensive", "comprehensively", "comprehensiveness", "compress", "compressed", "compresses", "compressibility", "compressible", "compressing", "compression", "compressor", "comprise", "comprised", "comprises", "comprising", "compromise", "compromised", "compromiser", "compromises", "compromising", "compsognathus", "comptroller", "comptrollership", "compulsion", "compulsive", "compulsively", "compulsiveness", "compulsivity", "compulsorily", "compulsory", "compunction", "computable", "computation", "computational", "computationally", "compute", "computer", "computerise", "computerised", "computerises", "computerising", "computerization", "computerize", "computerized", "computerizes", "computerizing", "computers", "computes", "computing", "comrade", "comradeliness", "comradely", "comradery", "comrades", "comradeship", "con", "conacaste", "concatenate", "concatenates", "concatenating", "concatenation", "concave", "concavely", "concaveness", "concavity", "conceal", "concealed", "concealing", "concealment", "conceals", "concede", "conceded", "concedes", "conceding", "conceit", "conceited", "conceitedly", "conceitedness", "conceivability", "conceivable", "conceivableness", "conceivably", "conceive", "conceived", "conceiver", "conceives", "conceiving", "concenter", "concentrate", "concentrated", "concentrates", "concentrating", "concentration", "concentrations", "concentre", "concentric", "concentrical", "concentricity", "concept", "conception", "conceptional", "conceptive", "concepts", "conceptual", "conceptualisation", "conceptualise", "conceptualised", "conceptualises", "conceptualising", "conceptualism", "conceptualistic", "conceptuality", "conceptualization", "conceptualize", "conceptualized", "conceptualizes", "conceptualizing", "conceptually", "conceptus", "conceptuses", "concern", "concerned", "concernedly", "concerning", "concerns", "concert", "concertante", "concertanti", "concerted", "concerti", "concertina", "concertini", "concertinist", "concertino", "concertise", "concertize", "concertizing", "concerto", "concerts", "concession", "concessionaire", "concessioner", "concessions", "concessive", "conch", "concha", "conchae", "conchfish", "conchologist", "conchology", "concierge", "conciliable", "conciliate", "conciliated", "conciliates", "conciliating", "conciliation", "conciliative", "conciliator", "conciliatory", "concise", "concisely", "conciseness", "concision", "conclave", "conclude", "concluded", "concludes", "concluding", "conclusion", "conclusions", "conclusive", "conclusively", "conclusiveness", "concoct", "concocted", "concocting", "concoction", "concocts", "concomitance", "concomitant", "concord", "concordance", "concordant", "concordat", "concourse", "concrete", "concretely", "concreteness", "concretion", "concretise", "concretism", "concretistic", "concretize", "concretizing", "concubinage", "concubine", "concupiscence", "concupiscent", "concur", "concurred", "concurrence", "concurrency", "concurrent", "concurrently", "concurring", "concurs", "concuss", "concussion", "condemn", "condemnable", "condemnation", "condemnatory", "condemned", "condemning", "condemns", "condensate", "condensation", "condense", "condenser", "condenses", "condensing", "condescend", "condescending", "condescendingly", "condescendingness", "condescension", "condign", "condiment", "condition", "conditional", "conditionality", "conditionally", "conditioned", "conditioner", "conditioning", "conditions", "condo", "condole", "condolence", "condolences", "condolent", "condom", "condominium", "condoms", "condonation", "condone", "condoned", "condones", "condoning", "condor", "condottiere", "condottieri", "conduce", "conducive", "conduct", "conductance", "conducted", "conducting", "conduction", "conductive", "conductivity", "conductor", "conductress", "conducts", "conduit", "condylar", "condyle", "condylion", "condyloma", "condylomata", "cone", "coneflower", "conelike", "conenose", "cones", "conessi", "conestoga", "coney", "confab", "confabbed", "confabbing", "confabulate", "confabulating", "confabulation", "confect", "confection", "confectionary", "confectioner", "confectionery", "confederate", "confederation", "confederative", "confer", "conferee", "conferees", "conference", "conferences", "conferment", "conferral", "conferred", "conferrer", "conferring", "confers", "conferva", "confervae", "confess", "confessed", "confessedly", "confesses", "confessing", "confession", "confessional", "confessions", "confessor", "confetti", "confidant", "confidante", "confide", "confided", "confidence", "confident", "confidential", "confidentiality", "confidentially", "confidently", "confides", "confiding", "confidingly", "configuration", "configurational", "configurationism", "configurations", "configure", "configured", "configures", "configuring", "confine", "confined", "confinement", "confines", "confining", "confirm", "confirmable", "confirmation", "confirmative", "confirmatory", "confirmed", "confirming", "confirms", "confiscate", "confiscated", "confiscates", "confiscating", "confiscation", "confit", "confiture", "conflagrate", "conflagration", "conflate", "conflating", "conflict", "conflicted", "conflicting", "conflictive", "conflicts", "confluence", "confluent", "conflux", "conform", "conformable", "conformably", "conformance", "conformation", "conformations", "conforming", "conformism", "conformist", "conformity", "conforms", "confound", "confounded", "confoundedly", "confounding", "confrere", "confront", "confrontation", "confrontational", "confronted", "confronting", "confronts", "confucian", "confucianist", "confusable", "confuse", "confused", "confusedly", "confusedness", "confuses", "confusing", "confusingly", "confusion", "confutable", "confutation", "confutative", "confute", "confuter", "confuting", "conga", "conge", "congeal", "congealed", "congealment", "congee", "congelation", "congenator", "congener", "congeneric", "congenerical", "congenerous", "congenial", "congeniality", "congenially", "congenialness", "congenital", "conger", "congeries", "congest", "congested", "congestion", "congestive", "congii", "congius", "conglobate", "conglobation", "conglobe", "conglomerate", "conglomerates", "conglomeration", "conglutinate", "conglutination", "Congo", "congo", "congolese", "congou", "congrats", "congratulate", "congratulated", "congratulates", "congratulation", "congratulations", "congratulatory", "congregant", "congregate", "congregating", "congregation", "congregational", "congregationalist", "congress", "congressional", "congressman", "congresswoman", "congruence", "congruent", "congruity", "congruous", "congruousness", "conic", "conical", "conically", "conidia", "conidiophore", "conidiospore", "conidium", "conifer", "coniferophyta", "coniferophytina", "coniferous", "conima", "conjectural", "conjecturally", "conjecture", "conjecturing", "conjoin", "conjoined", "conjoining", "conjoint", "conjointly", "conjugal", "conjugally", "conjugate", "conjugated", "conjugates", "conjugating", "conjugation", "conjunct", "conjunction", "conjunctiva", "conjunctivae", "conjunctival", "conjunctive", "conjunctivitis", "conjuncture", "conjuration", "conjure", "conjurer", "conjures", "conjuring", "conjuror", "conjury", "conk", "conker", "conn", "CONN.", "Conn.", "conn.", "connate", "connatural", "connect", "connected", "connectedness", "connecter", "connecticut", "connecting", "connection", "connections", "connective", "connectivity", "connector", "connects", "conned", "connexion", "connexions", "conning", "conniption", "connivance", "connive", "conniving", "connoisseur", "connoisseurship", "connotation", "connotational", "connotations", "connotative", "connote", "connoting", "connubial", "conodont", "conodontophorida", "conoid", "conquer", "conquerable", "conquering", "conqueror", "conquers", "conquest", "conquistador", "conquistadores", "cons", "consanguine", "consanguineal", "consanguineous", "consanguinity", "conscience", "conscienceless", "conscientious", "conscientiously", "conscientiousness", "conscionable", "conscious", "consciously", "consciousness", "conscript", "conscription", "consecrate", "consecrated", "consecrating", "consecration", "consecutive", "consecutively", "consensual", "consensus", "consent", "consentaneous", "consented", "consentient", "consenting", "consents", "consequence", "consequences", "consequent", "consequential", "consequentially", "consequently", "conservancy", "conservation", "conservationist", "conservatism", "conservative", "conservatively", "conservatives", "conservativism", "conservativist", "conservatoire", "conservator", "conservatory", "conserve", "conserved", "conserves", "conserving", "consider", "considerable", "considerably", "considerate", "considerately", "considerateness", "consideration", "considerations", "considered", "considering", "considers", "consign", "consigned", "consignee", "consigner", "consigning", "consignment", "consignor", "consigns", "consist", "consisted", "consistence", "consistency", "consistent", "consistently", "consisting", "consistory", "consists", "consociate", "consolable", "consolation", "consolatory", "console", "consoles", "consolidate", "consolidated", "consolidates", "consolidating", "consolidation", "consolidative", "consoling", "consolingly", "consomme", "consonance", "consonant", "consonantal", "consonate", "consort", "consortia", "consorting", "consortium", "conspecific", "conspectus", "conspicuous", "conspicuously", "conspicuousness", "conspiracy", "conspirative", "conspirator", "conspiratorial", "conspire", "conspired", "conspires", "conspiring", "constable", "constabulary", "constancy", "constant", "constantan", "constantly", "constants", "constatation", "constellate", "constellation", "consternate", "consternation", "constipate", "constipated", "constipation", "constituencies", "constituency", "constituent", "constituents", "constitute", "constituted", "constitutes", "constituting", "constitution", "constitutional", "constitutionalise", "constitutionalism", "constitutionalist", "constitutionalize", "constitutionally", "constitutive", "constrain", "constrained", "constrainedly", "constraining", "constrains", "constraint", "constraints", "constrict", "constricted", "constricting", "constriction", "constrictive", "constrictor", "constricts", "constringe", "construal", "construct", "constructed", "constructing", "construction", "constructions", "constructive", "constructively", "constructiveness", "constructivism", "constructivist", "constructor", "constructs", "construe", "construed", "construing", "consubstantial", "consubstantiate", "consubstantiation", "consuetude", "consuetudinal", "consuetudinary", "consul", "consular", "consulate", "consulship", "consult", "consultancy", "consultant", "consultants", "consultation", "consultative", "consultatory", "consulted", "consulting", "consultive", "consults", "consumable", "consume", "consumed", "consumer", "consumerism", "consumers", "consumes", "consuming", "consummate", "consummated", "consummating", "consummation", "consumption", "consumptive", "contact", "contacted", "contacting", "contacts", "contadino", "contagia", "contagion", "contagions", "contagious", "contagiously", "contagium", "contain", "contained", "container", "containerful", "containerise", "containerize", "containers", "containership", "containing", "containment", "contains", "contaminant", "contaminants", "contaminate", "contaminated", "contaminates", "contaminating", "contamination", "contaminations", "contaminative", "contemn", "contemplate", "contemplated", "contemplates", "contemplating", "contemplation", "contemplative", "contemplativeness", "contemporaneity", "contemporaneous", "contemporaneously", "contemporaneousness", "contemporaries", "contemporary", "contemporise", "contemporize", "contemporizing", "contempt", "contemptibility", "contemptible", "contemptibly", "contemptuous", "contemptuously", "contemptuousness", "contend", "contended", "contender", "contenders", "contending", "contends", "content", "contented", "contentedly", "contentedness", "contention", "contentious", "contentiousness", "contentment", "contents", "conterminous", "contest", "contestable", "contestant", "contestants", "contestation", "contested", "contestee", "contester", "contesting", "contests", "context", "contexts", "contextual", "contextualise", "contextualised", "contextualises", "contextualising", "contextualism", "contextualize", "contextualized", "contextualizes", "contextualizing", "contextually", "contiguity", "contiguous", "contiguousness", "continence", "continency", "continent", "continental", "continents", "contingence", "contingency", "contingent", "continua", "continual", "continually", "continuance", "continuant", "continuation", "continuative", "continue", "continued", "continues", "continuing", "continuity", "continuo", "continuous", "continuously", "continuousness", "continuum", "conto", "contort", "contorted", "contorting", "contortion", "contortionist", "contour", "contours", "contraband", "contrabandist", "contrabass", "contrabassoon", "contraception", "contraceptive", "contraceptives", "contraclockwise", "contract", "contractable", "contracted", "contractile", "contractility", "contracting", "contraction", "contractions", "contractor", "contractors", "contracts", "contractual", "contractually", "contracture", "contradance", "contradict", "contradicting", "contradiction", "contradictions", "contradictorily", "contradictoriness", "contradictory", "contradicts", "contradistinction", "contradistinguish", "contrafagotto", "contrail", "contraindicate", "contraindicating", "contraindication", "contralateral", "contralti", "contralto", "contraption", "contrapuntal", "contrapuntist", "contrarian", "contrariety", "contrarily", "contrariness", "contrarious", "contrariwise", "contrary", "contrast", "contrasted", "contrasting", "contrastingly", "contrastive", "contrasts", "contrasty", "contravene", "contravenes", "contravening", "contravention", "contredanse", "contretemps", "contribute", "contributed", "contributes", "contributing", "contribution", "contributions", "contributive", "contributor", "contributors", "contributory", "contrite", "contritely", "contriteness", "contrition", "contrivance", "contrive", "contrived", "contriver", "contrives", "contriving", "control", "controling", "controllable", "controlled", "controller", "controllers", "controllership", "controlling", "controls", "controversial", "controversialist", "controversially", "controversies", "controversy", "controvert", "contumacious", "contumaciously", "contumacy", "contumelious", "contumeliously", "contumely", "contuse", "contusion", "conundrum", "conurbation", "convalesce", "convalescence", "convalescent", "convalescing", "convect", "convection", "convector", "convene", "convened", "convener", "convenes", "convenience", "convenient", "conveniently", "convening", "convent", "conventicle", "convention", "conventional", "conventionalisation", "conventionalise", "conventionalised", "conventionalism", "conventionality", "conventionalization", "conventionalize", "conventionalized", "conventionally", "conventioneer", "conventions", "conventual", "converge", "converged", "convergence", "convergency", "convergent", "converges", "converging", "conversance", "conversancy", "conversant", "conversation", "conversational", "conversationalist", "conversationally", "conversationist", "conversations", "conversazione", "conversazioni", "converse", "conversely", "converses", "conversing", "conversion", "convert", "converted", "converter", "convertibility", "convertible", "converting", "convertor", "converts", "convex", "convexity", "convexly", "convexness", "convey", "conveyable", "conveyance", "conveyancer", "conveyancing", "conveyed", "conveyer", "conveying", "conveyor", "conveys", "convict", "convicted", "convictfish", "convicting", "conviction", "convictions", "convicts", "convince", "convinced", "convinces", "convincible", "convincing", "convincingly", "convincingness", "convivial", "conviviality", "convivially", "convocation", "convoke", "convolute", "convoluted", "convolutes", "convoluting", "convolution", "convolve", "convolvuli", "convolvulus", "convoy", "convulse", "convulsing", "convulsion", "convulsive", "convulsively", "cony", "coo", "cooccur", "cooccurring", "cooing", "Cook", "cook", "cookbook", "cookbooks", "cooked", "cooker", "cookery", "cookfire", "cookhouse", "cookie", "cookies", "cooking", "cookout", "cooks", "cookstove", "cookware", "cooky", "cool", "coolant", "cooled", "cooler", "coolheaded", "coolie", "cooling", "coolly", "coolness", "cools", "coolwart", "cooly", "coon", "coondog", "coonhound", "coonskin", "coontie", "coop", "cooper", "cooperate", "cooperated", "cooperating", "cooperation", "cooperative", "cooperatively", "cooperativeness", "cooperator", "coordinate", "coordinated", "coordinately", "coordinates", "coordinating", "coordination", "coordinative", "coordinator", "coot", "cooter", "cootie", "cop", "copacetic", "copaiba", "copal", "copaline", "copalite", "copartner", "copartnership", "copasetic", "cope", "copeck", "copepod", "copernican", "copesetic", "copesettic", "copestone", "copied", "copier", "copies", "copilot", "coping", "copings", "copious", "copiously", "copiousness", "coplanar", "copolymer", "copolymerise", "copolymerize", "copout", "copped", "copper", "copperhead", "copperplate", "coppersmith", "copperware", "coppery", "coppice", "copping", "copra", "coprolalia", "coprolite", "coprolith", "coprophagia", "coprophagy", "cops", "copse", "coptic", "copula", "copulae", "copular", "copulate", "copulates", "copulating", "copulation", "copulative", "copulatory", "copy", "copybook", "copycat", "copyedit", "copyediting", "copyedits", "copyhold", "copyholder", "copying", "copyist", "copyread", "copyreader", "copyright", "copyrighted", "copywriter", "coquet", "coquetry", "coquette", "coquetted", "coquetting", "coquettish", "coquettishly", "coquille", "cora", "coracan", "coracle", "corakan", "coral", "coralbells", "coralberry", "coralroot", "coralwood", "coralwort", "corbel", "corbelled", "corbicula", "corbiculae", "corbiestep", "corbina", "cord", "cordage", "cordarone", "cordate", "corded", "cordgrass", "cordial", "cordiality", "cordially", "cordierite", "cordiform", "cording", "cordite", "corditis", "cordless", "cordon", "cordova", "cordovan", "cords", "corduroy", "cordwood", "core", "coreference", "coreferent", "coreferential", "coreid", "coreligionist", "coreopsis", "corer", "cores", "corespondent", "corgard", "corgi", "coria", "coriaceous", "coriander", "coricidin", "corinthian", "corium", "cork", "corkage", "corkboard", "corked", "corker", "corking", "corkscrew", "corkwood", "corky", "corm", "cormorant", "cormose", "cormous", "corn", "cornbread", "corncob", "corncrake", "corncrib", "cornea", "corneae", "corneal", "corned", "cornel", "cornelian", "corneous", "corner", "cornerback", "cornered", "cornering", "corners", "cornerstone", "cornet", "cornetfish", "cornetist", "corneum", "cornfield", "cornflour", "cornflower", "cornhusk", "cornhusker", "cornhusking", "cornice", "cornier", "corniest", "cornish", "cornmeal", "cornpone", "cornsilk", "cornsmut", "cornstalk", "cornstarch", "cornu", "cornua", "cornucopia", "corny", "corolla", "corollary", "corona", "coronach", "coronae", "coronal", "coronary", "coronate", "coronation", "coroner", "coronet", "coroneted", "coronilla", "coronion", "corozo", "corp", "CORP.", "Corp.", "corp.", "corpora", "corporal", "corporality", "corporate", "corporation", "corporations", "corporatism", "corporatist", "corporeal", "corporeality", "corposant", "corps", "corpse", "corpses", "corpulence", "corpulency", "corpulent", "corpus", "corpuscle", "corpuscular", "corrade", "corral", "corralled", "corralling", "corrasion", "correct", "correctable", "corrected", "correcting", "correction", "correctional", "corrections", "correctitude", "corrective", "correctly", "correctness", "corrects", "corregidor", "correlate", "correlated", "correlates", "correlating", "correlation", "correlational", "correlations", "correlative", "correlativity", "correspond", "corresponded", "correspondence", "correspondent", "correspondents", "corresponding", "correspondingly", "corresponds", "corrida", "corridor", "corridors", "corrie", "corrigenda", "corrigendum", "corrigible", "corroborant", "corroborate", "corroborates", "corroborating", "corroboration", "corroborative", "corroboratory", "corrode", "corroded", "corrodentia", "corrodes", "corroding", "corrosion", "corrosive", "corrugate", "corrugated", "corrugation", "corrupt", "corrupted", "corruptedly", "corruptibility", "corruptible", "corrupting", "corruption", "corruptive", "corruptly", "corruptness", "corrupts", "corsage", "corsair", "corselet", "corset", "corseting", "corsica", "corsican", "corslet", "cortef", "cortege", "cortex", "cortez", "cortical", "cortically", "cortices", "corticifugal", "corticipetal", "corticoafferent", "corticoefferent", "corticofugal", "corticoid", "corticosteroid", "corticosterone", "corticotrophin", "corticotropin", "cortina", "cortinae", "cortisol", "cortisone", "corundom", "corundum", "coruscant", "coruscate", "coruscating", "coruscation", "corvee", "corvette", "corvine", "corybant", "corybantes", "corymb", "corymbose", "corynebacterium", "coryphaei", "coryphaeus", "coryphantha", "corythosaur", "corythosaurus", "coryza", "coscoroba", "cosec", "cosecant", "coseismal", "coseismic", "cosh", "cosher", "cosier", "cosies", "cosiest", "cosign", "cosignatory", "cosigner", "cosily", "cosine", "cosiness", "cosmea", "cosmetic", "cosmetically", "cosmetician", "cosmetics", "cosmetologist", "cosmetology", "cosmic", "cosmid", "cosmogenic", "cosmogeny", "cosmogonic", "cosmogonical", "cosmogony", "cosmographer", "cosmographist", "cosmography", "cosmolatry", "cosmologic", "cosmological", "cosmologist", "cosmology", "cosmonaut", "cosmopolitan", "cosmopolite", "cosmos", "cosmotron", "cosponsor", "cosponsoring", "cosset", "cosseting", "cost", "Costa", "costa", "costae", "costal", "costalgia", "costate", "costermonger", "costia", "costiasis", "costing", "costive", "costless", "costlier", "costliest", "costliness", "costly", "costmary", "costochondritis", "costs", "costume", "costumed", "costumer", "costumes", "costumier", "costuming", "costusroot", "cosy", "cot", "cotan", "cotangent", "cote", "cotenant", "coterie", "coterminous", "coterminously", "cothromboplastin", "cothurni", "cothurnus", "cotilion", "cotillion", "cotinga", "cotoneaster", "cottage", "cottager", "cottages", "cottar", "cotter", "cottier", "cotton", "cottoning", "cottonmouth", "cottonseed", "cottontail", "cottonweed", "cottonwick", "cottonwood", "cottony", "cotyledon", "cotyloid", "cotyloidal", "coucal", "couch", "couchant", "couched", "couchette", "couching", "cougar", "cough", "coughed", "coughing", "coughs", "COULD", "Could", "could", "COULD'VE", "Could've", "could've", "COULDN'T", "Couldn't", "couldn't", "COULDN'T'VE", "Couldn't've", "couldn't've", "COULDNT", "Couldnt", "couldnt", "COULDN\u2019T", "Couldn\u2019t", "couldn\u2019t", "COULDN\u2019T\u2019VE", "Couldn\u2019t\u2019ve", "couldn\u2019t\u2019ve", "COULDVE", "Couldve", "couldve", "COULD\u2019VE", "Could\u2019ve", "could\u2019ve", "coulisse", "coulter", "coumadin", "coumarone", "council", "councillor", "councillors", "councillorship", "councilman", "councilor", "councilors", "councilorship", "councilwoman", "counsel", "counseled", "counseling", "counselled", "counselling", "counsellor", "counsellors", "counsellorship", "counselor", "counselors", "counselorship", "counsels", "count", "countable", "countdown", "counted", "countenance", "counter", "counter-claims", "counter-cyclical", "counter-intelligence", "counter-trade", "counteract", "counteracted", "counteracting", "counteraction", "counteractive", "counteractively", "counterargument", "counterattack", "counterattraction", "counterbalance", "counterbalanced", "counterbalances", "counterblast", "counterblow", "counterbombardment", "counterbore", "counterchallenge", "counterchange", "countercharge", "countercheck", "counterclaim", "counterclockwise", "countercoup", "counterculture", "countercurrent", "counterdemonstration", "counterdemonstrator", "countered", "counterespionage", "counterexample", "counterfactual", "counterfactuality", "counterfeit", "counterfeiter", "counterfeiting", "counterfire", "counterfoil", "counterglow", "countering", "counterinsurgency", "counterinsurgent", "counterintelligence", "counterintuitive", "counterintuitively", "counterirritant", "counterman", "countermand", "countermanding", "countermarch", "countermeasure", "countermine", "countermove", "counteroffensive", "counteroffer", "counterpane", "counterpart", "counterparts", "counterperson", "counterplan", "counterplay", "counterplea", "counterplot", "counterplotted", "counterplotting", "counterpoint", "counterpoise", "counterpoised", "counterpoison", "counterpose", "counterproductive", "counterproposal", "counterpunch", "counterreformation", "counterrevolution", "counterrevolutionary", "counterrevolutionist", "counters", "countershot", "countersign", "countersignature", "countersink", "counterspy", "counterstain", "counterstrike", "countersubversion", "countersuit", "countertenor", "counterterror", "counterterrorism", "counterterrorist", "countertop", "countertransference", "countervail", "countervailing", "counterweight", "counterwoman", "countess", "counties", "counting", "countinghouse", "countless", "countlessness", "countries", "countrified", "country", "countryfied", "countryfolk", "countryman", "countryseat", "countryside", "countrywide", "countrywoman", "counts", "county", "countywide", "coup", "coupe", "couple", "coupled", "coupler", "couples", "couplet", "coupling", "couplings", "coupon", "coupons", "courage", "courageous", "courageously", "courageousness", "courante", "courbaril", "courgette", "courier", "courlan", "course", "coursed", "courser", "courses", "coursework", "coursing", "court", "courted", "courteous", "courteously", "courtesan", "courtesy", "courthouse", "courtier", "courting", "courtlier", "courtliest", "courtliness", "courtly", "courtroom", "courts", "courtship", "courtyard", "courtyards", "couscous", "cousin", "cousinly", "cousins", "couteau", "couteaux", "couth", "couthie", "couthy", "couture", "couturier", "couvade", "couverture", "covalence", "covalency", "covalent", "covariance", "covariant", "covariation", "cove", "coven", "covenant", "cover", "coverage", "coverall", "covered", "covering", "coverlet", "covers", "covert", "covertly", "covertness", "coves", "covet", "coveted", "coveting", "covetous", "covetously", "covetousness", "covets", "covey", "coville", "cow", "cowage", "coward", "cowardice", "cowardliness", "cowardly", "cowbarn", "cowbell", "cowberry", "cowbird", "cowboy", "cowboys", "cowcatcher", "cower", "cowering", "cowfish", "cowfishes", "cowgirl", "cowhand", "cowherb", "cowherd", "cowhide", "cowhouse", "cowl", "cowled", "cowlick", "cowling", "cowman", "cowpea", "cowpie", "cowpoke", "cowpox", "cowpuncher", "cowrie", "cowry", "cows", "cowshed", "cowskin", "cowslip", "cowtown", "cox", "coxa", "coxae", "coxcomb", "coxsackievirus", "coxswain", "coy", "coydog", "coyly", "coyness", "coyol", "coyote", "coypu", "cozen", "cozenage", "cozier", "cozies", "coziest", "cozily", "coziness", "cozy", "cpa", "cpi", "cpr", "cps", "cpu", "crab", "crabapple", "crabbed", "crabbedness", "crabbier", "crabbiest", "crabbiness", "crabbing", "crabby", "crabgrass", "crabmeat", "crabs", "crabwise", "crack", "crackbrained", "crackdown", "cracked", "cracker", "crackerberry", "crackerjack", "crackers", "cracking", "crackle", "crackles", "crackleware", "crackling", "crackpot", "cracks", "cracksman", "cradle", "cradlesong", "cradling", "craft", "crafted", "crafter", "craftier", "craftiest", "craftily", "craftiness", "crafting", "crafts", "craftsman", "craftsmanship", "crafty", "crag", "cragfast", "cragged", "craggier", "craggiest", "craggy", "cragsman", "crake", "cram", "crambo", "cramboes", "crammed", "crammer", "cramming", "cramp", "crampbark", "cramped", "crampfish", "cramping", "crampon", "crampoon", "cramps", "crams", "cran", "cranberry", "cranch", "crane", "cranes", "cranesbill", "crania", "cranial", "craniata", "craniate", "craning", "craniologist", "craniology", "craniometer", "craniometric", "craniometrical", "craniometry", "craniotomy", "cranium", "crank", "crankcase", "cranked", "crankier", "crankiest", "crankiness", "cranking", "cranks", "crankshaft", "cranky", "crannied", "cranny", "crap", "crapaud", "crape", "crapette", "crapped", "crapper", "crappie", "crapping", "crappy", "crapshoot", "crapshooter", "crapulence", "crapulent", "crapulous", "crases", "crash", "crashed", "crasher", "crashes", "crashing", "crasis", "crass", "crassitude", "crassness", "crate", "crateful", "crater", "craton", "craunch", "cravat", "crave", "craved", "craven", "cravenness", "craving", "craw", "crawdad", "crawdaddy", "crawfish", "crawfishes", "crawl", "crawled", "crawler", "crawlier", "crawliest", "crawling", "crawls", "crawlspace", "crawly", "crayfish", "crayfishes", "crayon", "craze", "crazed", "crazier", "craziest", "crazily", "craziness", "crazy", "crazyweed", "cre8", "creak", "creakily", "creaking", "creakingly", "creaky", "cream", "creamcups", "creamed", "creamer", "creamery", "creamier", "creamiest", "creaminess", "creamy", "crease", "creaseless", "creaseproof", "creashak", "creasing", "create", "created", "creates", "creatin", "creatine", "creating", "creation", "creationism", "creations", "creative", "creatively", "creativeness", "creativity", "creator", "creators", "creature", "creatures", "creche", "cred", "credal", "credence", "credenda", "credendum", "credential", "credentialled", "credentials", "credenza", "credibility", "credible", "credibleness", "credibly", "credit", "creditable", "creditably", "credited", "crediting", "creditor", "creditors", "credits", "creditworthiness", "creditworthy", "credo", "credulity", "credulous", "credulously", "credulousness", "creed", "creedal", "creek", "creel", "creep", "creeper", "creepier", "creepiest", "creepiness", "creeping", "creeps", "creepy", "creese", "cremains", "cremate", "cremation", "crematoria", "crematorium", "crematory", "crenate", "crenated", "crenation", "crenature", "crenel", "crenelate", "crenelated", "crenelation", "crenellate", "crenellated", "crenellation", "crenelle", "crenulate", "crenulated", "creole", "creolize", "creosol", "creosote", "crepe", "creping", "crepitate", "crepitation", "crept", "crepuscle", "crepuscular", "crepuscule", "crescendi", "crescendo", "crescent", "cresol", "cress", "cresson", "crest", "crested", "crestfallen", "cresting", "cretaceous", "cretin", "cretinism", "cretinous", "cretonne", "crevasse", "crevice", "crew", "crewelwork", "crewet", "crewman", "crews", "crib", "cribbage", "cribbed", "cribbing", "cribella", "cribellum", "cribs", "crick", "cricket", "cricketer", "cried", "crier", "cries", "crime", "crimes", "criminal", "criminalisation", "criminalise", "criminalised", "criminalises", "criminalising", "criminalism", "criminality", "criminalization", "criminalize", "criminalized", "criminalizes", "criminalizing", "criminally", "criminalness", "criminals", "criminate", "criminated", "criminates", "criminative", "criminatory", "criminological", "criminologist", "criminology", "crimp", "crimper", "crimping", "crimson", "cringe", "cringed", "cringeing", "cringing", "cringle", "crinion", "crinkle", "crinkled", "crinkleroot", "crinkles", "crinkling", "crinkly", "crinoid", "crinoline", "criollo", "cripple", "crippled", "cripples", "crippling", "crises", "crisis", "crisp", "crispate", "crispen", "crispier", "crispiest", "crispiness", "crisply", "crispness", "crispy", "crissa", "crisscross", "crisscrossed", "crisscrosses", "crisscrossing", "crissum", "crista", "cristae", "cristal", "cristobalite", "crit", "criteria", "criterial", "criterion", "criterional", "criterium", "crith", "critic", "critical", "criticality", "critically", "criticalness", "criticise", "criticised", "criticises", "criticising", "criticism", "criticisms", "criticize", "criticized", "criticizes", "criticizing", "critics", "critique", "critiquing", "critter", "critters", "crixivan", "cro", "croak", "croaker", "croaking", "croaky", "croat", "Croatia", "croatia", "croatian", "crochet", "crocheting", "crock", "crocked", "crockery", "crocket", "crocketed", "crocodile", "crocodilia", "crocodilian", "crocodilus", "crocolite", "crocus", "croft", "crofter", "croissant", "cromlech", "cromorne", "cromwellian", "crone", "cronk", "crony", "cronyism", "crook", "crookback", "crookbacked", "crooked", "crookedly", "crookedness", "crooking", "crookneck", "crooks", "croon", "crooned", "crooner", "crooning", "croons", "crop", "cropped", "cropper", "cropping", "crops", "croquet", "croquette", "crore", "crosier", "cross", "cross-bay", "cross-blending", "cross-border", "cross-connect", "cross-functional", "cross-licensing", "cross-market", "cross-ownership", "cross-shareholdings", "cross-state", "crossbar", "crossbeam", "crossbench", "crossbencher", "crossbill", "crossbones", "crossbow", "crossbred", "crossbreed", "crossbreeding", "crosscheck", "crosscurrent", "crosscut", "crosscutting", "crosse", "crossed", "crosses", "crossfire", "crosshairs", "crosshatch", "crosshatched", "crosshatching", "crosshead", "crossheading", "crossing", "crossings", "crossjack", "crossly", "crossness", "crossopterygian", "crossover", "crosspatch", "crosspiece", "crossroad", "crossruff", "crosstalk", "crosstie", "crosstown", "crosswalk", "crossway", "crossways", "crosswind", "crosswise", "crossword", "crotal", "crotalaria", "crotaphion", "crotch", "crotchet", "crotchetiness", "crotchety", "croton", "crotonbug", "crottal", "crottle", "crouch", "crouched", "crouching", "croup", "croupe", "croupier", "croupy", "crouton", "crow", "crowbait", "crowbar", "crowberry", "crowd", "crowded", "crowding", "crowds", "crowed", "crowfoot", "crowing", "crown", "crownbeard", "crowned", "crowning", "crownless", "crowns", "crownwork", "crows", "crozier", "crp", "crt", "cruces", "crucial", "cruciality", "crucially", "cruciate", "crucible", "crucifer", "cruciferous", "crucified", "crucifies", "crucifix", "cruciform", "crucify", "crucifying", "crud", "cruddy", "crude", "crudely", "crudeness", "crudest", "crudites", "crudity", "cruel", "crueler", "cruelest", "crueller", "cruellest", "cruelly", "cruelness", "cruelty", "cruet", "cruise", "cruiser", "cruiserweight", "cruises", "cruising", "cruller", "crumb", "crumbier", "crumbiest", "crumble", "crumbled", "crumbles", "crumblier", "crumbliest", "crumbliness", "crumbling", "crumbly", "crumbs", "crumby", "crumhorn", "crummier", "crummiest", "crummy", "crump", "crumpet", "crumple", "crumpled", "crumples", "crumpling", "crunch", "crunched", "crunching", "crupper", "crura", "crural", "crus", "crusade", "crusader", "crusading", "crusado", "crusadoes", "cruse", "crush", "crushed", "crusher", "crushes", "crushing", "crushingly", "crust", "crustacean", "crustaceous", "crustal", "crusted", "crustier", "crustiest", "crustlike", "crustose", "crusty", "crutch", "crux", "cruzado", "cruzadoes", "cry", "cryaesthesia", "crybaby", "cryesthesia", "crying", "cryings", "cryoanaesthesia", "cryoanesthesia", "cryobiology", "cryocautery", "cryogen", "cryogenic", "cryogenics", "cryogeny", "cryolite", "cryometer", "cryonic", "cryonics", "cryopathy", "cryophobia", "cryoscope", "cryostat", "cryosurgery", "crypt", "cryptanalysis", "cryptanalyst", "cryptanalytic", "cryptanalytics", "cryptic", "cryptical", "cryptically", "cryptobiosis", "cryptobiotic", "cryptococcosis", "cryptocoryne", "cryptogam", "cryptogamia", "cryptogamic", "cryptogamous", "cryptogram", "cryptograph", "cryptographer", "cryptographic", "cryptographical", "cryptographically", "cryptography", "cryptologic", "cryptological", "cryptologist", "cryptology", "cryptomonad", "cryptophyte", "cryptorchidism", "cryptorchidy", "cryptorchism", "crystal", "crystalise", "crystalised", "crystalize", "crystalized", "crystalline", "crystallisation", "crystallise", "crystallised", "crystallises", "crystallising", "crystallite", "crystallization", "crystallize", "crystallized", "crystallizes", "crystallizing", "crystallographer", "crystallography", "crystals", "cse", "csis", "cst", "CT.", "Ct.", "ct.", "ctc", "ctene", "ctenidia", "ctenidium", "ctenoid", "ctenophore", "cub", "Cuba", "cuba", "cuban", "cubbed", "cubbing", "cubby", "cubbyhole", "cube", "cubeb", "cubelike", "cubes", "cubic", "cubical", "cubicity", "cubicle", "cubicula", "cubiculum", "cubiform", "cubism", "cubist", "cubistic", "cubit", "cubital", "cubitiere", "cubitus", "cuboid", "cuboidal", "cuckold", "cuckolding", "cuckoldom", "cuckoldry", "cuckoo", "cuckooflower", "cuckoopint", "cucumber", "cucumbers", "cucurbit", "cucurbitaceous", "cud", "cudbear", "cuddle", "cuddles", "cuddlesome", "cuddling", "cuddly", "cuddy", "cudgel", "cudgeled", "cudgeling", "cudgelled", "cudgelling", "cudweed", "cue", "cueing", "cues", "cuff", "cuffing", "cufflink", "cuffs", "cuirass", "cuirassier", "cuisine", "cuisse", "cuke", "cul", "culdoscope", "culdoscopy", "culex", "culices", "culinary", "cull", "culled", "cullender", "culling", "cullis", "culls", "culm", "culminate", "culminated", "culminates", "culminating", "culmination", "culotte", "culpa", "culpability", "culpable", "culpableness", "culpably", "culpae", "culprit", "cult", "culti", "cultism", "cultist", "cultivable", "cultivar", "cultivatable", "cultivate", "cultivated", "cultivates", "cultivating", "cultivation", "cultivator", "cultural", "culturally", "culturati", "culture", "cultured", "cultures", "culturing", "cultus", "culverin", "culvert", "cum", "cumarone", "cumber", "cumbersome", "cumbersomeness", "cumbrous", "cumfrey", "cumin", "cummerbund", "cummings", "cumquat", "cumulate", "cumulation", "cumulative", "cumulatively", "cumuli", "cumuliform", "cumulonimbi", "cumulonimbus", "cumulostrati", "cumulostratus", "cumulous", "cumulus", "cunctation", "cunctator", "cuneal", "cuneate", "cuneiform", "cuneus", "cunner", "cunnilinctus", "cunnilingus", "cunning", "cunningly", "cunt", "cup", "cupbearer", "cupboard", "cupcake", "cupcakes", "cupel", "cupelled", "cupelling", "cupflower", "cupful", "cupidity", "cuplike", "cupola", "cuppa", "cupped", "cupper", "cupping", "cupric", "cuprimine", "cuprite", "cupronickel", "cuprous", "cups", "cupular", "cupulate", "cupule", "cur", "curability", "curable", "curableness", "curacoa", "curacy", "curandera", "curandero", "curare", "curassow", "curate", "curated", "curates", "curating", "curative", "curator", "curatorial", "curators", "curatorship", "curb", "curbed", "curbing", "curbs", "curbside", "curbstone", "curd", "curdle", "curdled", "curdling", "cure", "cured", "cures", "curet", "curettage", "curette", "curetted", "curettement", "curetting", "curfew", "curfews", "curia", "curiae", "curietherapy", "curing", "curio", "curiosa", "curiosity", "curious", "curiously", "curiousness", "curium", "curl", "curled", "curler", "curlew", "curlicue", "curlier", "curliest", "curliness", "curling", "curls", "curly", "curmudgeon", "curmudgeonly", "currajong", "currant", "currawong", "currencies", "currency", "current", "currently", "currentness", "currents", "curricula", "curricular", "curriculum", "curried", "currier", "currish", "currishly", "curry", "currycomb", "currying", "curse", "cursed", "cursedly", "curses", "cursive", "cursively", "cursor", "cursorial", "cursorily", "cursory", "curst", "curt", "curtail", "curtailed", "curtailing", "curtailment", "curtails", "curtain", "curtained", "curtainless", "curtains", "curtal", "curtilage", "curtly", "curtness", "curtsey", "curtsied", "curtsy", "curtsying", "curvaceous", "curvaceously", "curvaceousness", "curvature", "curve", "curved", "curves", "curvet", "curvetted", "curvetting", "curvey", "curvilineal", "curvilinear", "curving", "curvy", "cusco", "cuscus", "cushat", "cushaw", "cushion", "cushioned", "cushioning", "cushions", "cushiony", "cushy", "cusk", "cusp", "cuspate", "cuspated", "cusped", "cuspid", "cuspidal", "cuspidate", "cuspidated", "cuspidation", "cuspidor", "cuss", "cussed", "cussedly", "cussedness", "cussing", "custard", "custodes", "custodial", "custodian", "custodianship", "custody", "custom", "customarily", "customary", "customer", "customers", "customhouse", "customise", "customised", "customises", "customising", "customize", "customized", "customizes", "customizing", "customs", "customshouse", "custos", "cut", "cutaneal", "cutaneous", "cutaway", "cutback", "cutbacks", "cutch", "cute", "cutely", "cuteness", "cuter", "cutes", "cuticle", "cuticula", "cuticulae", "cuticular", "cutin", "cutinize", "cutis", "cutlas", "cutlassfish", "cutler", "cutlery", "cutlet", "cutoff", "cutout", "cutpurse", "cuts", "cuttable", "cutter", "cutthroat", "cutting", "cuttingly", "cuttle", "cuttlefish", "cuttlefishes", "cutwork", "cutworm", "cuz", "cva", "cwm", "cwt", "cyan", "cyanamid", "cyanamide", "cyanide", "cyanite", "cyanobacteria", "cyanobacterial", "cyanocobalamin", "cyanogen", "cyanogenetic", "cyanogenic", "cyanohydrin", "cyanophyceae", "cyanophyte", "cyanosis", "cyanuramide", "cyberart", "cybercafe", "cybercrime", "cyberculture", "cybernate", "cybernation", "cybernaut", "cybernetic", "cybernetics", "cyberphobia", "cyberpunk", "cybersex", "cyberspace", "cyberwar", "cyborg", "cycad", "cycadophyta", "cycadophytina", "cyclamen", "cycle", "cycles", "cyclic", "cyclical", "cyclicity", "cycling", "cyclist", "cyclists", "cyclobenzaprine", "cyclohexanol", "cycloid", "cycloidal", "cyclonal", "cyclone", "cyclonic", "cyclonical", "cyclooxygenase", "cyclopaedia", "cyclopean", "cyclopedia", "cyclopes", "cyclopia", "cyclopropane", "cyclops", "cyclorama", "cycloserine", "cycloses", "cyclosis", "cyclostome", "cyclostyle", "cyclothymia", "cyclothymic", "cyclotron", "cyder", "cydippea", "cydippidea", "cygnet", "cylices", "cylikes", "cylinder", "cylinders", "cylindric", "cylindrical", "cylindricality", "cylindricalness", "cylix", "cyma", "cymae", "cymatia", "cymatium", "cymbal", "cymbalist", "cymbid", "cymbidium", "cyme", "cymene", "cymling", "cymograph", "cymose", "cymric", "cymru", "cymry", "cymule", "cynancum", "cynic", "cynical", "cynically", "cynicism", "cynodont", "cynophobia", "cynosure", "cynthia", "cynwulf", "cyon", "cypher", "cyphers", "cypre", "cypress", "cyprian", "cyprinid", "cyprinodont", "cyprinoid", "cypriot", "cypriote", "cypripedia", "cyproheptadine", "Cyprus", "cyprus", "cypsela", "cypselae", "cyrilla", "cyrillic", "cyst", "cysteine", "cystic", "cysticerci", "cysticercus", "cystine", "cystitis", "cystocele", "cystolith", "cystoparalysis", "cystoplegia", "cytherea", "cytidine", "cytoarchitectonic", "cytoarchitectonics", "cytoarchitectural", "cytoarchitecture", "cytochrome", "cytogenesis", "cytogenetic", "cytogenetical", "cytogeneticist", "cytogenetics", "cytogeny", "cytokine", "cytokines", "cytokinesis", "cytokinetic", "cytokinin", "cytol", "cytologic", "cytological", "cytologist", "cytology", "cytolysin", "cytolysis", "cytolytic", "cytomegalic", "cytomegalovirus", "cytomembrane", "cytopathogenic", "cytopenia", "cytophotometer", "cytophotometric", "cytophotometrically", "cytophotometry", "cytoplasm", "cytoplasmatic", "cytoplasmic", "cytoplasmically", "cytoplast", "cytoplastic", "cytosine", "cytoskeleton", "cytosmear", "cytosol", "cytostome", "cytotoxic", "cytotoxicity", "cytotoxin", "czar", "czarina", "czarist", "czaristic", "czaritza", "Czech", "czech", "czechoslovak", "czechoslovakian", "D-DAY", "D-Day", "D-day", "d-day", "d.", "D.C.", "d.c.", "d.o.a.", "da", "dab", "dabbed", "dabbing", "dabble", "dabbled", "dabbler", "dabbles", "dabbling", "dabchick", "dabs", "dacca", "dace", "dacha", "dachshund", "dachsie", "dacite", "dacitic", "dacninae", "dacoit", "dacoity", "dacryocyst", "dacryocystitis", "dacryon", "dactyl", "dactylic", "dactylomegaly", "dad", "dada", "dadaism", "daddy", "dado", "dadoes", "dads", "daedal", "daemon", "daffier", "daffiest", "daffo", "daffodil", "daffy", "dafla", "daft", "daftly", "daftness", "dag", "dagame", "dagga", "dagged", "dagger", "daggerboard", "dagging", "dago", "dagoes", "daguerreotype", "dah", "dahl", "dahlia", "dahna", "dahomey", "daikon", "dail", "dailies", "daily", "daimio", "daimon", "daintier", "daintiest", "daintily", "daintiness", "dainty", "daiquiri", "dairen", "dairy", "dairying", "dairymaid", "dairyman", "dais", "daishiki", "daisy", "daisybush", "daisylike", "dak", "dakoit", "dakoity", "dal", "dalasi", "dale", "dalesman", "daleth", "dalliance", "dallied", "dallier", "dallisgrass", "dally", "dallying", "dalmane", "dalmatian", "dalo", "daltonism", "dam", "damage", "damaged", "damages", "damaging", "damar", "damascene", "damascus", "damask", "dame", "damgalnunna", "daminozide", "dammar", "dammed", "damming", "damn", "damnable", "damnably", "damnation", "damnatory", "damned", "damnified", "damnify", "damning", "damnit", "damoiselle", "damosel", "damourite", "damozel", "damp", "damped", "dampen", "dampened", "dampener", "dampening", "damper", "damping", "dampish", "damply", "dampness", "dams", "damsel", "damselfish", "damselfishes", "damselfly", "damson", "dana", "danaid", "danau", "dance", "danceable", "dancer", "dancers", "dances", "dancing", "dandelion", "dander", "dandier", "dandiest", "dandified", "dandify", "dandily", "dandle", "dandling", "dandruff", "dandy", "dandyish", "dandyism", "danewort", "dangaleat", "danger", "dangerous", "dangerously", "dangerousness", "dangers", "dangle", "dangleberry", "dangled", "dangles", "dangling", "danish", "dank", "dankness", "danmark", "danseur", "danseuse", "dantean", "dantesque", "danzig", "daoism", "dap", "daphnia", "dapped", "dapper", "dapperness", "dapping", "dapple", "dappled", "dappling", "dapsang", "dapsone", "daraf", "dardan", "dardanian", "dardic", "DARE", "Dare", "dare", "dared", "daredevil", "daredevilry", "daredeviltry", "DAREN'T", "Daren't", "daren't", "DARENT", "Darent", "darent", "DAREN\u2019T", "Daren\u2019t", "daren\u2019t", "DARES", "Dares", "dares", "DARESN'T", "Daresn't", "daresn't", "DARESNT", "Daresnt", "daresnt", "DARESN\u2019T", "Daresn\u2019t", "daresn\u2019t", "daricon", "daring", "daringly", "dark", "darken", "darkened", "darkening", "darkens", "darker", "darkest", "darkish", "darkling", "darkly", "darkness", "darkroom", "darling", "darmstadtium", "darn", "darned", "darnel", "darner", "darning", "darns", "darpa", "dart", "dartboard", "darter", "darting", "dartmouth", "darts", "darvon", "darwinian", "DAS", "Das", "das", "dash", "dashboard", "dashed", "dasheen", "dashes", "dashiki", "dashing", "dashingly", "DASN'T", "Dasn't", "dasn't", "DASNT", "Dasnt", "dasnt", "DASN\u2019T", "Dasn\u2019t", "dasn\u2019t", "dassie", "dastard", "dastardliness", "dastardly", "dasymeter", "dasyure", "dasyurid", "dat", "data", "database", "databases", "datable", "date", "dateable", "dated", "dateless", "dateline", "datemark", "dates", "dating", "dative", "datril", "datum", "daub", "dauber", "daubing", "daughter", "daughterly", "daughters", "daunt", "daunted", "daunting", "dauntingly", "dauntless", "dauntlessly", "dauntlessness", "dauphin", "davallia", "davit", "daw", "dawah", "dawdle", "dawdler", "dawdling", "dawn", "dawning", "dawns", "day", "daybed", "daybook", "dayboy", "daybreak", "daycare", "daydream", "daydreamer", "daydreaming", "daydreams", "dayflower", "dayfly", "daygirl", "daylight", "daylily", "daylong", "daymio", "daymios", "daypro", "days", "dayspring", "daystar", "daytime", "daze", "dazed", "dazedly", "dazzle", "dazzled", "dazzles", "dazzling", "dazzlingly", "db", "dba", "dbms", "dccp", "dci", "ddc", "ddi", "ddt", "de", "de-emphasize", "de-emphasized", "de-facto", "de-linkage", "dea", "deaccession", "deacon", "deaconess", "deactivate", "deactivates", "deactivating", "deactivation", "dead", "deadbeat", "deadbolt", "deaden", "deadened", "deadening", "deadeye", "deadhead", "deadlier", "deadliest", "deadlight", "deadline", "deadlines", "deadliness", "deadlock", "deadlocked", "deadly", "deadness", "deadpan", "deadwood", "deaerate", "deaf", "deafen", "deafened", "deafening", "deafness", "deal", "dealer", "dealers", "dealership", "dealfish", "dealfishes", "dealignment", "dealing", "dealings", "deals", "dealt", "deaminate", "deamination", "deaminization", "deaminize", "dean", "deanery", "deanship", "dear", "dearest", "dearie", "dearly", "dearness", "dearth", "deary", "death", "deathbed", "deathblow", "deathless", "deathlike", "deathly", "deathrate", "deaths", "deathtrap", "deathwatch", "deb", "debacle", "debar", "debark", "debarkation", "debarking", "debarment", "debarred", "debarring", "debars", "debase", "debased", "debasement", "debaser", "debasing", "debatable", "debate", "debated", "debater", "debates", "debating", "debauch", "debauched", "debauchee", "debaucher", "debauchery", "debenture", "debile", "debilitate", "debilitated", "debilitating", "debilitation", "debilitative", "debility", "debit", "debiting", "debitor", "debits", "debonair", "debonaire", "debone", "deboned", "deboning", "debonnaire", "debouch", "debridement", "debrief", "debriefing", "debriefs", "debris", "debt", "debtor", "debts", "debug", "debugged", "debugger", "debugging", "debugs", "debunk", "debunking", "debunks", "debus", "debussed", "debussing", "debut", "debutante", "debuted", "debuting", "debuts", "dec", "DEC.", "Dec.", "dec.", "decade", "decadence", "decadency", "decadent", "decades", "decadron", "decaf", "decaffeinate", "decagon", "decagram", "decahedron", "decal", "decalcification", "decalcified", "decalcify", "decalcomania", "decalescence", "decalescent", "decaliter", "decalitre", "decameter", "decametre", "decamp", "decamping", "decampment", "decamps", "decant", "decantation", "decanter", "decanting", "decants", "decapitate", "decapitated", "decapitating", "decapitation", "decapod", "decapoda", "decarbonate", "decarbonates", "decarbonise", "decarbonize", "decarboxylase", "decarboxylate", "decarboxylating", "decarboxylation", "decarburise", "decarburize", "decasyllabic", "decasyllable", "decathlon", "decay", "decayable", "decayed", "decaying", "decays", "decease", "deceased", "decedent", "deceit", "deceitful", "deceitfully", "deceitfulness", "deceive", "deceived", "deceiver", "deceives", "deceiving", "deceivingly", "decelerate", "decelerated", "decelerating", "deceleration", "december", "decemvir", "decemviri", "decency", "decennary", "decennia", "decennium", "decent", "decentalisation", "decently", "decentralisation", "decentralise", "decentralised", "decentralises", "decentralising", "decentralization", "decentralize", "decentralized", "decentralizes", "decentralizing", "deception", "deceptive", "deceptively", "deceptiveness", "decerebrate", "decerebrates", "decertify", "dechlorinate", "decibel", "decide", "decided", "decidedly", "decides", "deciding", "decidua", "deciduae", "deciduous", "decigram", "decile", "deciliter", "decilitre", "decimal", "decimalisation", "decimalise", "decimalization", "decimalize", "decimate", "decimated", "decimates", "decimating", "decimation", "decimeter", "decimetre", "decipher", "decipherable", "decipherably", "deciphered", "decipherer", "deciphering", "decipherment", "deciphers", "decision", "decisions", "decisive", "decisively", "decisiveness", "deck", "decked", "decker", "deckhand", "decking", "deckle", "deckled", "decks", "declaim", "declaiming", "declamation", "declamatory", "declarable", "declaration", "declarations", "declarative", "declaratory", "declare", "declared", "declarer", "declares", "declaring", "declassification", "declassified", "declassifies", "declassify", "declaw", "declension", "declination", "decline", "declined", "declines", "declining", "declinometer", "declivitous", "declivity", "declomycin", "declutch", "deco", "decoagulant", "decoct", "decoction", "decode", "decoder", "decodes", "decoding", "decoke", "decollate", "decolletage", "decollete", "decolonisation", "decolonise", "decolonization", "decolonize", "decolor", "decolorise", "decolorize", "decolour", "decolourise", "decolourize", "decommission", "decommissioning", "decomposable", "decompose", "decomposes", "decomposing", "decomposition", "decompositional", "decompound", "decompress", "decompresses", "decompressing", "decompression", "deconcentrate", "decongestant", "deconsecrate", "deconsecrated", "deconstruct", "deconstructing", "deconstruction", "deconstructionism", "deconstructionist", "deconstructivism", "deconstructs", "decontaminate", "decontaminated", "decontaminates", "decontamination", "decontrol", "decontrolled", "decontrolling", "decor", "decorate", "decorated", "decorates", "decorating", "decoration", "decorations", "decorative", "decoratively", "decorativeness", "decorator", "decorous", "decorously", "decorousness", "decorticate", "decortication", "decorum", "decoupage", "decouple", "decoupling", "decoy", "decoying", "decrease", "decreased", "decreases", "decreasing", "decree", "decreed", "decreeing", "decrees", "decrement", "decrepit", "decrepitate", "decrepitation", "decrepitude", "decrescendo", "decried", "decries", "decriminalisation", "decriminalise", "decriminalised", "decriminalises", "decriminalising", "decriminalization", "decriminalize", "decriminalized", "decriminalizes", "decriminalizing", "decry", "decrying", "decrypt", "decrypting", "decryption", "decrypts", "decubitus", "decumary", "decumbent", "decurved", "decussate", "decussation", "ded", "dedicate", "dedicated", "dedicates", "dedicating", "dedication", "dedifferentiate", "dedifferentiated", "dedifferentiation", "deduce", "deduces", "deducible", "deducing", "deduct", "deducted", "deductible", "deducting", "deduction", "deductions", "deductive", "deducts", "deed", "deedbox", "deeds", "deem", "deemed", "deeming", "deems", "deep", "deepen", "deepened", "deepening", "deepens", "deeper", "deepest", "deepfreeze", "deeply", "deepness", "deer", "deerberry", "deerhound", "deerskin", "deerstalker", "deerstalking", "deface", "defacement", "defaces", "defacing", "defalcate", "defalcation", "defalcator", "defamation", "defamatory", "defame", "defamer", "defames", "defaming", "defang", "defanging", "defat", "default", "defaulted", "defaulter", "defaulting", "defaults", "defeasible", "defeat", "defeated", "defeating", "defeatism", "defeatist", "defeats", "defecate", "defecates", "defecating", "defecation", "defecator", "defect", "defected", "defecting", "defection", "defective", "defectively", "defectiveness", "defector", "defectors", "defects", "defeminise", "defeminize", "defence", "defenceless", "defencelessly", "defencelessness", "defences", "defend", "defendable", "defendant", "defendants", "defended", "defender", "defenders", "defending", "defends", "defenestrate", "defenestration", "defense", "defenseless", "defenselessly", "defenselessness", "defenses", "defensibility", "defensible", "defensive", "defensively", "defensiveness", "defer", "deference", "deferent", "deferential", "deferentially", "defering", "deferment", "deferral", "deferred", "deferring", "defers", "defervesce", "defervescence", "defervescent", "defiance", "defiant", "defiantly", "defibrillate", "defibrillation", "defibrillator", "defibrinate", "deficiencies", "deficiency", "deficient", "deficit", "deficits", "defied", "defies", "defilade", "defile", "defiled", "defilement", "defiler", "defiling", "definable", "define", "defined", "defines", "definienda", "definiendum", "definiens", "definientia", "defining", "definite", "definitely", "definiteness", "definition", "definitions", "definitive", "deflagrate", "deflagration", "deflate", "deflated", "deflates", "deflating", "deflation", "deflationary", "deflator", "deflect", "deflected", "deflecting", "deflection", "deflective", "deflector", "deflects", "deflexion", "defloration", "deflower", "deflowering", "defog", "defoliant", "defoliate", "defoliated", "defoliation", "defoliator", "deforest", "deforestation", "deform", "deformation", "deformational", "deformed", "deforming", "deformities", "deformity", "deforms", "defraud", "defrauded", "defrauder", "defrauding", "defrauds", "defray", "defrayal", "defraying", "defrayment", "defrock", "defrost", "defroster", "defrosting", "deft", "deftly", "deftness", "defunct", "defunctness", "defuse", "defuses", "defusing", "defy", "defying", "degage", "degas", "degassed", "degassing", "degauss", "degaussing", "degeneracy", "degenerate", "degenerated", "degenerates", "degenerating", "degeneration", "degenerative", "deglaze", "deglutition", "deglycerolise", "deglycerolize", "degradation", "degrade", "degraded", "degrader", "degrades", "degrading", "degrease", "degreasing", "degree", "degrees", "degressive", "degust", "degustation", "dehisce", "dehiscence", "dehiscent", "dehorn", "dehumanisation", "dehumanise", "dehumanised", "dehumanises", "dehumanising", "dehumanization", "dehumanize", "dehumanized", "dehumanizes", "dehumanizing", "dehumidified", "dehumidifier", "dehumidifies", "dehumidify", "dehydrate", "dehydrated", "dehydration", "dehydrogenate", "dehydroretinol", "deice", "deicer", "deicing", "deictic", "deific", "deification", "deified", "deifies", "deify", "deign", "deigning", "deinocheirus", "deinonychus", "deionize", "deipnosophist", "deism", "deist", "deistic", "deities", "deity", "deixis", "deject", "dejected", "dejectedly", "dejectedness", "dejecting", "dejection", "dejects", "dejeuner", "dekagram", "dekaliter", "dekalitre", "dekameter", "dekametre", "dekko", "DEL.", "Del.", "del.", "delavirdine", "delaware", "delawarian", "delay", "delayed", "delayer", "delaying", "delays", "delectability", "delectable", "delectation", "delegacy", "delegate", "delegates", "delegating", "delegation", "delete", "deleted", "deleteing", "deleterious", "deletes", "deleting", "deletion", "deletions", "delf", "delft", "deli", "deliberate", "deliberately", "deliberateness", "deliberates", "deliberating", "deliberation", "deliberations", "deliberative", "delible", "delicacy", "delicate", "delicately", "delicatessen", "delicious", "deliciously", "deliciousness", "delight", "delighted", "delightedly", "delightful", "delightfully", "delighting", "delights", "delimit", "delimitate", "delimitation", "delimited", "delimiting", "delimits", "delineate", "delineated", "delineates", "delineating", "delineation", "delineative", "delinquency", "delinquent", "deliquesce", "deliquescent", "deliquescing", "deliquium", "delirious", "deliriously", "delirium", "delist", "delisted", "delists", "deliver", "deliverable", "deliverance", "delivered", "deliverer", "deliveries", "delivering", "delivers", "delivery", "deliveryman", "dell", "delocalize", "delouse", "delousing", "delphian", "delphic", "delphinia", "delphinium", "delta", "deltasone", "deltoid", "delude", "deludes", "deluding", "deluge", "deluged", "delusion", "delusional", "delusive", "delusively", "delusory", "deluxe", "delve", "delved", "delves", "demagnetisation", "demagnetise", "demagnetization", "demagnetize", "demagog", "demagogic", "demagogical", "demagogue", "demagoguery", "demagogy", "demand", "demanded", "demander", "demanding", "demandingly", "demands", "demantoid", "demarcate", "demarcates", "demarcating", "demarcation", "demarche", "demasculinise", "demasculinize", "dematerialise", "dematerialize", "dematerializing", "demean", "demeaned", "demeaning", "demeaningly", "demeanor", "demeanour", "demeans", "demented", "dementedly", "dementedness", "dementia", "demerit", "demerol", "demesne", "demiglace", "demigod", "demijohn", "demilitarisation", "demilitarise", "demilitarised", "demilitarises", "demilitarising", "demilitarization", "demilitarize", "demilitarized", "demilitarizes", "demilitarizing", "demille", "demimondaine", "demimonde", "demineralisation", "demineralise", "demineralization", "demineralize", "demise", "demisemiquaver", "demist", "demister", "demit", "demitasse", "demits", "demitted", "demitting", "demiurge", "demo", "demob", "demobbed", "demobbing", "demobilisation", "demobilise", "demobilised", "demobilises", "demobilising", "demobilization", "demobilize", "demobilized", "demobilizes", "demobilizing", "democracies", "democracy", "democrat", "Democratic", "democratic", "democratically", "democratisation", "democratise", "democratised", "democratises", "democratising", "democratization", "democratize", "democratized", "democratizes", "democratizing", "democrats", "demode", "demodulate", "demodulation", "demodulator", "demographer", "demographic", "demographics", "demographist", "demography", "demoing", "demoiselle", "demolish", "demolished", "demolishes", "demolishing", "demolition", "demon", "demonetisation", "demonetise", "demonetization", "demonetize", "demoniac", "demoniacal", "demoniacally", "demonic", "demonisation", "demonise", "demonised", "demonises", "demonising", "demonism", "demonization", "demonize", "demonized", "demonizes", "demonizing", "demonolatry", "demons", "demonstrability", "demonstrable", "demonstrably", "demonstrate", "demonstrated", "demonstrates", "demonstrating", "demonstration", "demonstrations", "demonstrative", "demonstratively", "demonstrativeness", "demonstrator", "demonstrators", "demoralisation", "demoralise", "demoralised", "demoralises", "demoralising", "demoralization", "demoralize", "demoralized", "demoralizes", "demoralizing", "demos", "demosthenic", "demote", "demoted", "demotes", "demotic", "demotion", "demulcent", "demulsified", "demulsify", "demur", "demure", "demurely", "demureness", "demurrage", "demurral", "demurred", "demurrer", "demurring", "demurs", "demyelinate", "demyelinating", "demyelination", "demystified", "demystifies", "demystify", "demystifying", "demythologisation", "demythologise", "demythologised", "demythologization", "demythologize", "demythologized", "den", "denali", "denarii", "denarius", "denary", "denationalisation", "denationalise", "denationalised", "denationalises", "denationalising", "denationalization", "denationalize", "denationalized", "denationalizes", "denationalizing", "denaturalise", "denaturalize", "denaturant", "denature", "denatured", "denaturing", "denaturised", "denaturized", "denazification", "denazified", "denazify", "dendraspis", "dendriform", "dendrite", "dendrites", "dendritic", "dendrobium", "dendroid", "dendroidal", "dendrology", "dengue", "deniable", "denial", "denials", "denied", "denier", "deniers", "denies", "denigrate", "denigrating", "denigration", "denigrative", "denigratory", "denim", "denitrified", "denitrify", "denizen", "Denmark", "denmark", "denned", "denning", "denominate", "denominated", "denominates", "denomination", "denominational", "denominationalism", "denominationally", "denominator", "denotation", "denotative", "denotatum", "denote", "denotes", "denoting", "denotive", "denouement", "denounce", "denounced", "denouncement", "denounces", "denouncing", "dense", "densely", "denseness", "densification", "densimeter", "densities", "densitometer", "densitometry", "density", "dent", "dental", "dentalia", "dentalium", "dentate", "dented", "denticle", "denticulate", "dentifrice", "dentin", "dentine", "dentist", "dentistry", "dentists", "dentition", "denture", "denturist", "denudate", "denudation", "denude", "denuded", "denumerable", "denunciation", "denunciative", "denunciatory", "deny", "denying", "deodar", "deodorant", "deodorise", "deodorised", "deodorises", "deodorising", "deodorize", "deodorized", "deodorizes", "deodorizing", "deodourant", "deodourise", "deossification", "deoxidise", "deoxidize", "deoxyadenosine", "deoxycytidine", "deoxyephedrine", "deoxygenate", "deoxyguanosine", "deoxyribose", "deoxythymidine", "depart", "departed", "departer", "departing", "department", "departmental", "departmentally", "departments", "departs", "departure", "departures", "depend", "dependability", "dependable", "dependableness", "dependably", "dependance", "dependant", "depended", "dependence", "dependency", "dependent", "depending", "depends", "depersonalisation", "depersonalise", "depersonalised", "depersonalises", "depersonalising", "depersonalization", "depersonalize", "depersonalized", "depersonalizes", "depersonalizing", "depict", "depicted", "depicting", "depiction", "depictions", "depictive", "depicts", "depigmentation", "depilate", "depilation", "depilator", "depilatory", "depilous", "deplane", "depletable", "deplete", "depleted", "depletes", "depleting", "depletion", "deplorable", "deplorably", "deplore", "deplored", "deplores", "deploring", "deploy", "deployed", "deploying", "deployment", "deploys", "deplumate", "deplume", "depokene", "depolarisation", "depolarise", "depolarization", "depolarize", "depolarizing", "depone", "deponent", "depopulate", "depopulated", "depopulation", "deport", "deportation", "deportations", "deported", "deportee", "deporting", "deportment", "deports", "depose", "deposed", "deposer", "deposes", "deposing", "deposit", "depositary", "deposited", "depositing", "deposition", "depositions", "depositor", "depository", "deposits", "depot", "depravation", "deprave", "depraved", "depravity", "deprecate", "deprecates", "deprecating", "deprecation", "deprecative", "deprecatively", "deprecatory", "depreciate", "depreciated", "depreciates", "depreciating", "depreciation", "depreciative", "depreciator", "depreciatory", "depredation", "depress", "depressant", "depressed", "depresses", "depressing", "depressingly", "depression", "depressive", "depressor", "depressurise", "depressurize", "deprivation", "deprive", "deprived", "deprives", "depriving", "depth", "depths", "deputation", "depute", "deputes", "deputies", "deputise", "deputised", "deputises", "deputising", "deputize", "deputized", "deputizes", "deputizing", "deputy", "deracinate", "deracinating", "deracination", "derail", "derailed", "derailing", "derailment", "derails", "derange", "deranged", "derangement", "deranging", "derate", "derby", "derecognise", "derecognises", "derecognize", "derecognizes", "deregulate", "deregulated", "deregulates", "deregulating", "deregulation", "derelict", "dereliction", "derequisition", "derestrict", "deride", "derided", "derides", "deriding", "derision", "derisive", "derisively", "derisorily", "derisory", "derivable", "derivation", "derivational", "derivative", "derivatives", "derive", "derived", "derives", "deriving", "derma", "dermabrasion", "dermal", "dermatitis", "dermatoglyphic", "dermatologic", "dermatological", "dermatologist", "dermatology", "dermatome", "dermatomycosis", "dermatomyositis", "dermatophytosis", "dermatosclerosis", "dermatoses", "dermatosis", "dermic", "dermis", "derogate", "derogation", "derogative", "derogatory", "derrick", "derriere", "derringer", "derris", "derv", "dervish", "desacralize", "desalinate", "desalination", "desalinisation", "desalinise", "desalinization", "desalinize", "desalt", "desalting", "descale", "descant", "descend", "descendant", "descendants", "descended", "descendent", "descender", "descending", "descends", "descensus", "descent", "describable", "describe", "described", "describes", "describing", "descried", "description", "descriptions", "descriptive", "descriptively", "descriptivism", "descriptor", "descriptors", "descry", "descrying", "desecrate", "desecrated", "desecrating", "desecration", "desegrated", "desegregate", "desegregating", "desegregation", "desensitisation", "desensitise", "desensitised", "desensitises", "desensitising", "desensitization", "desensitize", "desensitized", "desensitizes", "desensitizing", "desert", "deserted", "deserter", "desertification", "deserting", "desertion", "deserts", "deserve", "deserved", "deservedly", "deserves", "deserving", "deservingness", "desex", "desexing", "desexualise", "desexualize", "deshabille", "desiccant", "desiccate", "desiccated", "desiccates", "desiccating", "desiccation", "desiderata", "desideratum", "design", "designate", "designated", "designates", "designating", "designation", "designations", "designative", "designatum", "designed", "designedly", "designer", "designers", "designing", "designs", "desipramine", "desirability", "desirable", "desirableness", "desire", "desired", "desires", "desiring", "desirous", "desist", "desisting", "desists", "desk", "deskbound", "deskman", "desks", "desktop", "desmid", "desolate", "desolately", "desolation", "desorb", "desorption", "despair", "despairing", "despairingly", "despairs", "despatch", "desperado", "desperadoes", "desperate", "desperately", "desperation", "despicability", "despicable", "despicableness", "despicably", "despisal", "despise", "despised", "despising", "Despite", "despite", "despiteful", "despitefully", "despoil", "despoilation", "despoiled", "despoiler", "despoiling", "despoilment", "despoina", "despoliation", "despond", "despondence", "despondency", "despondent", "despondently", "desponding", "despot", "despotic", "despotical", "despotism", "desquamate", "desquamation", "dessert", "desserts", "dessertspoon", "dessertspoonful", "dessiatine", "destabilisation", "destabilise", "destabilised", "destabilises", "destabilising", "destabilization", "destabilize", "destabilized", "destabilizes", "destabilizing", "destain", "destaining", "destalinisation", "destalinise", "destalinization", "destalinize", "destination", "destinations", "destine", "destined", "destiny", "destitute", "destitution", "destress", "destroy", "destroyable", "destroyed", "destroyer", "destroying", "destroys", "destruct", "destructibility", "destructible", "destructing", "destruction", "destructive", "destructively", "destructiveness", "destructs", "desuetude", "desulfurize", "desulphurize", "desultory", "desynchronisation", "desynchronise", "desynchronization", "desynchronize", "desynchronizing", "desyrel", "detach", "detachable", "detached", "detaches", "detaching", "detachment", "detail", "detailed", "detailing", "details", "detain", "detained", "detainee", "detainees", "detaining", "detainment", "detains", "detect", "detectable", "detected", "detecting", "detection", "detective", "detectives", "detector", "detectors", "detects", "detent", "detente", "detention", "deter", "deterge", "detergence", "detergency", "detergent", "deteriorate", "deteriorated", "deteriorates", "deteriorating", "deterioration", "determent", "determinable", "determinant", "determinants", "determinate", "determinateness", "determination", "determinations", "determinative", "determine", "determined", "determinedly", "determiner", "determines", "determining", "determinism", "determinist", "deterministic", "deterred", "deterrence", "deterrent", "deterring", "deters", "detersive", "detest", "detestable", "detestably", "detestation", "detested", "detesting", "detests", "dethaw", "dethrone", "dethroned", "dethronement", "detick", "detonate", "detonates", "detonating", "detonation", "detonative", "detonator", "detour", "detouring", "detox", "detoxes", "detoxicate", "detoxification", "detoxified", "detoxify", "detract", "detracted", "detracting", "detraction", "detractive", "detractor", "detractors", "detracts", "detrain", "detransitivise", "detransitivize", "detribalisation", "detribalise", "detribalization", "detribalize", "detriment", "detrimental", "detrimentally", "detrition", "detritus", "detumescence", "detusk", "deuce", "deuced", "deucedly", "deuteranopia", "deuteranopic", "deuterium", "deuteromycotina", "deuteron", "deutschland", "deutschmark", "deutzia", "devaluate", "devaluation", "devalue", "devalued", "devalues", "devaluing", "devastate", "devastated", "devastates", "devastating", "devastation", "devastations", "devein", "develop", "developed", "developer", "developers", "developing", "development", "developmental", "developmentally", "developments", "develops", "deviance", "deviant", "deviate", "deviated", "deviates", "deviating", "deviation", "deviationism", "deviationist", "deviations", "device", "devices", "devil", "devilfish", "devilfishes", "devilise", "devilish", "devilishly", "devilize", "devilled", "devilling", "devilment", "devilry", "deviltry", "devilwood", "devious", "deviously", "deviousness", "devisal", "devise", "devised", "devisee", "deviser", "devises", "devising", "devisor", "devitalisation", "devitalise", "devitalization", "devitalize", "devitrified", "devitrify", "devoice", "devoid", "devoir", "devolution", "devolve", "devolvement", "devolving", "devonshire", "devote", "devoted", "devotedly", "devotedness", "devotee", "devotees", "devotes", "devoting", "devotion", "devotional", "devour", "devoured", "devourer", "devouring", "devours", "devout", "devoutly", "devoutness", "devries", "dew", "dewberry", "dewdrop", "deweyan", "dewier", "dewiest", "dewlap", "dewy", "dexamethasone", "dexedrine", "dexone", "dexter", "dexterity", "dexterous", "dexterously", "dextral", "dextrality", "dextrin", "dextrocardia", "dextroglucose", "dextrorotary", "dextrorotation", "dextrorotatory", "dextrorsal", "dextrorse", "dextrose", "dextrous", "dextrously", "dflp", "dhak", "dhal", "dhava", "dhawa", "dhodhekanisos", "dhole", "dhoti", "dhow", "dia", "diabatic", "diabeta", "diabetes", "diabetic", "diabolatry", "diabolic", "diabolical", "diabolically", "diabolise", "diabolism", "diabolist", "diabolize", "diacetylmorphine", "diachronic", "diachrony", "diacritic", "diacritical", "diadem", "diadromous", "diaereses", "diaeresis", "diaerses", "diaglyph", "diagnosable", "diagnose", "diagnosed", "diagnoses", "diagnosing", "diagnosis", "diagnostic", "diagnostician", "diagnostics", "diagonal", "diagonalisation", "diagonalise", "diagonalizable", "diagonalization", "diagonalize", "diagonally", "diagram", "diagraming", "diagrammatic", "diagrammatical", "diagrammatically", "diagrammed", "diagramming", "diagrams", "diakinesis", "dial", "dialect", "dialectal", "dialectic", "dialectical", "dialectically", "dialectician", "dialectology", "dialects", "dialed", "dialing", "dialled", "dialling", "dialog", "dialogs", "dialogue", "dialogues", "dials", "dialyse", "dialyses", "dialysis", "dialyze", "dialyzer", "dialyzing", "diam", "diamagnet", "diamagnetic", "diamagnetism", "diamante", "diamantine", "diameter", "diametral", "diametric", "diametrical", "diametrically", "diamine", "diamond", "diamondback", "diamonds", "dianoetic", "diapason", "diapedesis", "diapensia", "diaper", "diapers", "diaphanous", "diapheromera", "diaphone", "diaphoresis", "diaphoretic", "diaphragm", "diaphyseal", "diaphyses", "diaphysial", "diaphysis", "diapir", "diapophyses", "diapophysis", "diapsid", "diarchy", "diaries", "diarist", "diarrhea", "diarrheal", "diarrheic", "diarrhetic", "diarrhoea", "diarrhoeal", "diarrhoeic", "diarrhoetic", "diarthroses", "diarthrosis", "diary", "diastalses", "diastalsis", "diastases", "diastasis", "diastema", "diastemata", "diastole", "diastolic", "diastrophism", "diathermy", "diathesis", "diathses", "diatom", "diatomic", "diatomite", "diatomophyceae", "diatoms", "diatonic", "diatribe", "diaz", "diazepam", "diazo", "diazoes", "diazonium", "diazotize", "diazoxide", "dib", "dibbed", "dibber", "dibbing", "dibble", "dibbuk", "dibbukkim", "dibrach", "dibranch", "dibranchia", "dibranchiate", "dibs", "dibucaine", "dicamptodon", "dicamptodontid", "dicarboxylic", "dice", "dicer", "dicey", "dichasia", "dichasium", "dichloride", "dichlorodiphenyltrichloroethane", "dichloromethane", "dichondra", "dichotomisation", "dichotomise", "dichotomization", "dichotomize", "dichotomous", "dichotomously", "dichotomy", "dichroism", "dichromacy", "dichromasy", "dichromat", "dichromate", "dichromatic", "dichromatism", "dichromatopsia", "dichromia", "dicier", "diciest", "dick", "dickensian", "dicker", "dickey", "dickeybird", "dickhead", "dickie", "dicky", "dickybird", "diclinous", "dicloxacillin", "dicot", "dicotyledon", "dicotyledonae", "dicotyledonous", "dicoumarol", "dicta", "dictate", "dictated", "dictates", "dictation", "dictator", "dictatorial", "dictatorially", "dictators", "dictatorship", "diction", "dictionaries", "dictionary", "dictostylium", "dictum", "dictyopteran", "dictyosome", "dicumarol", "dicynodont", "DID", "Did", "did", "didactic", "didactical", "didactically", "didacticism", "didactics", "didanosine", "didder", "diddle", "diddley", "diddling", "diddly", "diddlyshit", "diddlysquat", "dideoxycytosine", "dideoxyinosine", "DIDN'T", "Didn't", "didn't", "DIDNT", "Didnt", "didnt", "DIDN\u2019T", "Didn\u2019t", "didn\u2019t", "dido", "didoes", "didrikson", "die", "dieback", "died", "diehard", "dielectric", "dielectrolysis", "diemaker", "diencephalon", "diereses", "dieresis", "dies", "diesel", "dieses", "diesinker", "diesis", "diestock", "diestrous", "diestrual", "diestrum", "diestrus", "diet", "dietary", "dieter", "dietetic", "dietetical", "dietetics", "diethylmalonylurea", "diethylstilbesterol", "diethylstilbestrol", "diethylstilboestrol", "dietician", "dieting", "dietitian", "diets", "differ", "differed", "difference", "differences", "different", "differentia", "differentiable", "differentiae", "differential", "differentially", "differentiate", "differentiated", "differentiates", "differentiating", "differentiation", "differentiator", "differently", "differing", "differs", "difficult", "difficulties", "difficultness", "difficulty", "diffidence", "diffident", "diffidently", "difflugia", "diffract", "diffraction", "diffuse", "diffused", "diffusely", "diffuseness", "diffuser", "diffuses", "diffusing", "diffusion", "diffusive", "diffusor", "diflunisal", "dig", "digenesis", "digest", "digested", "digester", "digestibility", "digestible", "digestibleness", "digesting", "digestion", "digestive", "digests", "digger", "digging", "dighted", "digit", "digital", "digitalin", "digitalis", "digitalisation", "digitalise", "digitalization", "digitalize", "digitally", "digitate", "digitately", "digitigrade", "digitisation", "digitise", "digitised", "digitiser", "digitises", "digitising", "digitization", "digitize", "digitized", "digitizer", "digitizes", "digitizing", "digitoxin", "digits", "dignified", "dignifies", "dignify", "dignifying", "dignitary", "dignity", "digoxin", "digram", "digraph", "digress", "digresses", "digressing", "digression", "digressive", "digs", "dihybrid", "dihydrostreptomycin", "dihydroxyphenylalanine", "dika", "dike", "dilantin", "dilapidate", "dilapidated", "dilapidation", "dilatation", "dilate", "dilater", "dilates", "dilating", "dilation", "dilator", "dilatoriness", "dilatory", "dilaudid", "dildo", "dilemma", "dilettante", "dilettanteish", "dilettanti", "dilettantish", "diligence", "diligent", "diligently", "dill", "dillenia", "dilligence", "dillydallier", "dillydally", "diltiazem", "diluent", "dilutant", "dilute", "diluted", "dilutes", "diluting", "dilution", "dilutions", "diluvia", "diluvial", "diluvian", "diluvium", "dim", "dimaggio", "dime", "dimenhydrinate", "dimension", "dimensional", "dimensionality", "dimensioning", "dimensions", "dimer", "dimetane", "dimethylglyoxime", "dimetrodon", "diminish", "diminished", "diminishes", "diminishing", "diminuendo", "diminution", "diminutive", "diminutiveness", "dimity", "dimly", "dimmed", "dimmer", "dimmest", "dimming", "dimness", "dimorphic", "dimorphism", "dimorphous", "dimout", "dimple", "dims", "dimwit", "din", "dinar", "dindymene", "dine", "dined", "diner", "dinero", "diners", "dinette", "ding", "dingbat", "dingdong", "dinge", "dinghy", "dingier", "dingiest", "dingily", "dinginess", "dinging", "dingle", "dingo", "dingoes", "dingy", "dining", "dink", "dinkey", "dinkier", "dinkiest", "dinky", "dinned", "dinner", "dinners", "dinnertime", "dinnerware", "dinning", "dinoceras", "dinocerate", "dinoflagellate", "dinosaur", "dinosaurs", "dint", "diocesan", "diocese", "diode", "dioecian", "dioecious", "dioestrous", "dioestrual", "diol", "dionysian", "dioon", "diopter", "dioptre", "diorama", "diorite", "diovan", "dioxide", "dioxin", "dip", "diphenhydramine", "diphenylhydantoin", "diphtheria", "diphthong", "diphthongise", "diphthongize", "dipladenia", "diplegia", "diplococci", "diplococcus", "diplodocus", "diploid", "diploidy", "diploma", "diplomacy", "diplomat", "diplomate", "diplomatic", "diplomatical", "diplomatically", "diplomatist", "diplomats", "diplopia", "diplotene", "dipolar", "dipole", "dipped", "dipper", "dippier", "dippiest", "dipping", "dippy", "dips", "dipshit", "dipsomania", "dipsomaniac", "dipstick", "dipteran", "dipterocarp", "dipteron", "dipterous", "dipteryx", "diptych", "dipylon", "dire", "direct", "directed", "directing", "direction", "directional", "directionality", "directionless", "directions", "directive", "directiveness", "directives", "directivity", "directly", "directness", "director", "directorate", "directors", "directorship", "directory", "directs", "direful", "direfully", "dirge", "dirham", "dirigible", "dirk", "dirndl", "dirt", "dirtied", "dirtier", "dirtiest", "dirtily", "dirtiness", "dirty", "dirtying", "dis", "disa", "disabilities", "disability", "disable", "disabled", "disablement", "disables", "disabling", "disabuse", "disabused", "disabusing", "disaccharidase", "disaccharide", "disaccord", "disadvantage", "disadvantaged", "disadvantageous", "disadvantageously", "disadvantages", "disadvantaging", "disaffect", "disaffected", "disaffecting", "disaffection", "disaffirmation", "disafforest", "disagree", "disagreeable", "disagreeableness", "disagreeably", "disagreed", "disagreeing", "disagreement", "disagreements", "disagrees", "disallow", "disallowed", "disallowing", "disallows", "disambiguate", "disambiguating", "disambiguation", "disambiguator", "disannul", "disannulled", "disannulling", "disappear", "disappearance", "disappeared", "disappearing", "disappears", "disappoint", "disappointed", "disappointedly", "disappointing", "disappointingly", "disappointment", "disappointments", "disappoints", "disapprobation", "disapproval", "disapprovals", "disapprove", "disapproved", "disapproves", "disapproving", "disapprovingly", "disarm", "disarmament", "disarmer", "disarming", "disarms", "disarrange", "disarranged", "disarrangement", "disarranging", "disarray", "disarrayed", "disarticulate", "disarticulating", "disassemble", "disassembling", "disassembly", "disassociate", "disassociation", "disaster", "disasters", "disastrous", "disastrously", "disavow", "disavowable", "disavowal", "disavowed", "disavowing", "disband", "disbanded", "disbanding", "disbandment", "disbands", "disbar", "disbarment", "disbarred", "disbarring", "disbelief", "disbelieve", "disbelieving", "disbelievingly", "disbud", "disbudded", "disbudding", "disburden", "disbursal", "disburse", "disbursed", "disbursement", "disburser", "disburses", "disbursing", "disc", "discalceate", "discalced", "discant", "discard", "discarded", "discarding", "discards", "discase", "disceptation", "discern", "discernability", "discernable", "discernible", "discerning", "discernment", "discerns", "discerp", "discharge", "discharged", "discharges", "discharging", "disci", "disciform", "discina", "disciple", "disciples", "discipleship", "disciplinal", "disciplinarian", "disciplinary", "discipline", "disciplined", "disciplines", "disciplining", "disclaim", "disclaimer", "disclike", "disclose", "disclosed", "discloses", "disclosing", "disclosure", "disclosures", "disco", "discoboli", "discobolos", "discography", "discoid", "discoidal", "discolor", "discoloration", "discolored", "discoloring", "discolorise", "discolorize", "discolors", "discolour", "discolouration", "discoloured", "discolouring", "discolourise", "discolours", "discombobulate", "discombobulated", "discombobulation", "discomfit", "discomfited", "discomfiting", "discomfiture", "discomfort", "discommode", "discompose", "discomposed", "discomposure", "discomycete", "discomycetous", "disconcert", "disconcerted", "disconcerting", "disconcertingly", "disconcertion", "disconcertment", "disconfirming", "disconnect", "disconnected", "disconnectedness", "disconnecting", "disconnection", "disconnects", "disconsolate", "disconsolately", "disconsolateness", "disconsolation", "discontent", "discontented", "discontentedly", "discontentedness", "discontentment", "discontinuance", "discontinuation", "discontinue", "discontinued", "discontinues", "discontinuing", "discontinuity", "discontinuous", "discord", "discordance", "discordant", "discordantly", "discorporate", "discos", "discotheque", "discount", "discounted", "discountenance", "discounter", "discounting", "discounts", "discourage", "discouraged", "discouragement", "discourages", "discouraging", "discouragingly", "discourse", "discoursing", "discourteous", "discourteously", "discourtesy", "discover", "discoverable", "discovered", "discoverer", "discoveries", "discovering", "discovers", "discovery", "discredit", "discreditable", "discreditably", "discredited", "discredits", "discreet", "discreetly", "discreetness", "discrepancies", "discrepancy", "discrepant", "discrete", "discreteness", "discretion", "discretional", "discretionary", "discriminable", "discriminate", "discriminated", "discriminates", "discriminating", "discrimination", "discriminative", "discriminator", "discriminatory", "discs", "discursive", "discursively", "discursiveness", "discus", "discuss", "discussant", "discussed", "discusses", "discussing", "discussion", "discussions", "disdain", "disdainful", "disdainfully", "disdainfulness", "disdaining", "disdains", "disease", "diseased", "diseases", "disembark", "disembarkation", "disembarking", "disembarkment", "disembarks", "disembarrass", "disembarrassment", "disembodied", "disembody", "disembodying", "disembowel", "disemboweled", "disemboweling", "disembowelled", "disembowelling", "disembowelment", "disembroil", "disenable", "disenchant", "disenchanted", "disenchanting", "disenchantment", "disencumber", "disenfranchise", "disenfranchised", "disenfranchisement", "disenfranchising", "disengage", "disengagement", "disengages", "disengaging", "disentangle", "disentangled", "disentanglement", "disentangler", "disentangling", "disenthral", "disenthralled", "disenthralling", "disequilibrium", "disestablish", "disestablishment", "disesteem", "disfavor", "disfavour", "disfiguration", "disfigure", "disfigured", "disfigurement", "disfiguring", "disfluency", "disforest", "disforestation", "disfranchise", "disfranchised", "disfranchisement", "disfunction", "disgorge", "disgorgement", "disgorging", "disgrace", "disgraced", "disgraceful", "disgracefully", "disgracefulness", "disgraces", "disgracing", "disgruntle", "disgruntled", "disgruntlement", "disgruntling", "disguise", "disguised", "disguises", "disguising", "disgust", "disgusted", "disgustedly", "disgustful", "disgusting", "disgustingly", "disgustingness", "disgusts", "dish", "dishabille", "disharmonious", "disharmonize", "disharmony", "dishcloth", "dishearten", "disheartened", "disheartening", "disheartenment", "dished", "dishes", "dishevel", "disheveled", "dishevelled", "dishevelling", "dishful", "dishier", "dishiest", "dishing", "dishonest", "dishonestly", "dishonesty", "dishonor", "dishonorable", "dishonorableness", "dishonorably", "dishonored", "dishonoring", "dishonors", "dishonour", "dishonourable", "dishonourableness", "dishonourably", "dishonoured", "dishonouring", "dishonours", "dishpan", "dishrag", "dishtowel", "dishware", "dishwasher", "dishwashing", "dishwater", "dishy", "disillusion", "disillusioned", "disillusioning", "disillusionment", "disincarnate", "disincentive", "disinclination", "disincline", "disinclined", "disinfect", "disinfectant", "disinfecting", "disinfection", "disinfects", "disinfest", "disinfestation", "disinflation", "disinformation", "disingenuous", "disingenuously", "disingenuousness", "disinherit", "disinheritance", "disinherited", "disintegrable", "disintegrate", "disintegrated", "disintegrates", "disintegrating", "disintegration", "disintegrative", "disinter", "disinterest", "disinterested", "disinterestedly", "disinterestedness", "disinterment", "disinterred", "disinterring", "disinvest", "disinvestment", "disinvolve", "disjoin", "disjoined", "disjoint", "disjointed", "disjointedly", "disjointedness", "disjunct", "disjunction", "disjunctive", "disjuncture", "disk", "diskette", "disklike", "disks", "dislikable", "dislike", "disliked", "dislikes", "disliking", "dislocate", "dislocated", "dislocates", "dislocating", "dislocation", "dislodge", "dislodgement", "dislodges", "dislodging", "dislodgment", "dislogistic", "disloyal", "disloyally", "disloyalty", "dismal", "dismally", "dismantle", "dismantled", "dismantlement", "dismantles", "dismantling", "dismay", "dismayed", "dismaying", "dismember", "dismembering", "dismemberment", "dismiss", "dismissal", "dismissed", "dismisses", "dismissible", "dismissing", "dismission", "dismissive", "dismount", "dismounting", "disobedience", "disobedient", "disobediently", "disobey", "disobeying", "disobeys", "disoblige", "disobliging", "disorder", "disordered", "disorderliness", "disorderly", "disorders", "disorganisation", "disorganise", "disorganised", "disorganization", "disorganize", "disorganized", "disorient", "disorientate", "disorientation", "disoriented", "disorienting", "disown", "disowning", "disownment", "disowns", "disparage", "disparaged", "disparagement", "disparager", "disparages", "disparaging", "disparagingly", "disparate", "disparateness", "disparities", "disparity", "dispassion", "dispassionate", "dispassionately", "dispassionateness", "dispatch", "dispatched", "dispatcher", "dispatches", "dispatching", "dispel", "dispelled", "dispelling", "dispels", "dispensability", "dispensable", "dispensableness", "dispensary", "dispensation", "dispense", "dispensed", "dispenser", "dispenses", "dispensing", "dispersal", "disperse", "dispersed", "disperses", "dispersing", "dispersion", "dispersive", "dispirit", "dispirited", "dispiritedly", "dispiritedness", "dispiriting", "displace", "displaced", "displacement", "displaces", "display", "displayed", "displaying", "displays", "displease", "displeased", "displeasing", "displeasingly", "displeasure", "displume", "disport", "disporting", "disposable", "disposal", "dispose", "disposed", "disposes", "disposing", "disposition", "dispossess", "dispossessed", "dispossession", "dispraise", "dispread", "disproof", "disproportion", "disproportional", "disproportionate", "disproportionately", "disprove", "disprover", "disproves", "disproving", "disputable", "disputant", "disputation", "disputatious", "disputatiously", "disputative", "dispute", "disputed", "disputes", "disputing", "disqualification", "disqualified", "disqualifies", "disqualify", "disqualifying", "disquiet", "disquieted", "disquieting", "disquietingly", "disquietude", "disquisition", "disregard", "disregarded", "disregarding", "disregardless", "disregards", "disrepair", "disreputability", "disreputable", "disreputableness", "disreputably", "disrepute", "disrespect", "disrespected", "disrespectful", "disrespectfully", "disrespecting", "disrespects", "disrobe", "disrobes", "disrobing", "disrupt", "disrupted", "disrupting", "disruption", "disruptions", "disruptive", "disruptively", "disrupts", "diss", "dissatisfaction", "dissatisfactory", "dissatisfied", "dissatisfies", "dissatisfy", "dissatisfying", "dissect", "dissected", "dissecting", "dissection", "dissects", "dissemble", "dissembler", "dissembles", "dissembling", "disseminate", "disseminated", "disseminates", "disseminating", "dissemination", "disseminative", "disseminator", "dissension", "dissent", "dissented", "dissenter", "dissentient", "dissenting", "dissentious", "dissents", "dissertate", "dissertation", "disservice", "dissever", "dissidence", "dissident", "dissidents", "dissilience", "dissilient", "dissimilar", "dissimilarity", "dissimilate", "dissimilation", "dissimilitude", "dissimulate", "dissimulation", "dissimulative", "dissimulator", "dissing", "dissipate", "dissipated", "dissipates", "dissipating", "dissipation", "dissociable", "dissociate", "dissociates", "dissociating", "dissociation", "dissociative", "dissolubility", "dissoluble", "dissolute", "dissolutely", "dissoluteness", "dissolution", "dissolvable", "dissolve", "dissolved", "dissolvent", "dissolver", "dissolves", "dissolving", "dissonance", "dissonant", "dissonate", "dissonates", "dissuade", "dissuades", "dissuading", "dissuasion", "dissuasive", "dissyllable", "dissymmetry", "distaff", "distal", "distally", "distance", "distances", "distancing", "distant", "distantly", "distaste", "distasteful", "distastefully", "distastefulness", "distemper", "distend", "distending", "distensible", "distension", "distention", "distich", "distil", "distill", "distillate", "distillation", "distilled", "distiller", "distillery", "distilling", "distillment", "distills", "distils", "distinct", "distinction", "distinctions", "distinctive", "distinctively", "distinctiveness", "distinctly", "distinctness", "distinguish", "distinguishable", "distinguished", "distinguishes", "distinguishing", "distomatosis", "distort", "distortable", "distorted", "distorting", "distortion", "distortionist", "distortions", "distorts", "distract", "distracted", "distractedly", "distracting", "distraction", "distractions", "distracts", "distrain", "distraint", "distrait", "distraught", "distress", "distressed", "distresses", "distressful", "distressfully", "distressfulness", "distressing", "distressingly", "distressingness", "distributary", "distribute", "distributed", "distributer", "distributes", "distributing", "distribution", "distributional", "distributions", "distributive", "distributively", "distributor", "distributors", "district", "districts", "distrust", "distrustful", "distrustfully", "distrustfulness", "distrusting", "distrusts", "disturb", "disturbance", "disturbances", "disturbed", "disturber", "disturbing", "disturbingly", "disturbs", "disulfiram", "disunify", "disunion", "disunite", "disunited", "disunity", "disuse", "disused", "disyllabic", "disyllable", "dit", "dita", "ditch", "ditches", "ditching", "ditchmoss", "dither", "dithering", "dithers", "dithyramb", "dithyrambic", "dittany", "ditto", "ditty", "diuresis", "diuretic", "diuretics", "diuril", "diurnal", "diva", "divagate", "divagation", "divalent", "divan", "divaricate", "divarication", "dive", "dived", "diver", "diverge", "divergence", "divergency", "divergent", "diverges", "diverging", "divers", "diverse", "diversely", "diverseness", "diversification", "diversified", "diversifies", "diversify", "diversifying", "diversion", "diversionary", "diversionist", "diversity", "divert", "diverted", "diverticula", "diverticulitis", "diverticulosis", "diverticulum", "divertimenti", "divertimento", "diverting", "divertingly", "diverts", "dives", "divest", "divesting", "divestiture", "divests", "dividable", "divide", "divided", "dividend", "dividends", "divider", "divides", "dividing", "divination", "divinatory", "divine", "divinely", "diviner", "diving", "divining", "divinity", "divisibility", "divisible", "division", "divisional", "divisions", "divisive", "divisor", "divorce", "divorced", "divorcee", "divorcement", "divorces", "divorcing", "divot", "divulge", "divulgement", "divulgence", "divulges", "divulging", "divvied", "divvy", "diwan", "dixie", "dixiecrats", "dixieland", "dizen", "dizygotic", "dizygous", "dizzied", "dizzier", "dizziest", "dizzily", "dizziness", "dizzy", "dj", "djakarta", "Djibouti", "djibouti", "djiboutian", "djinni", "djinny", "dkg", "dkl", "dkm", "dl", "dle", "dmd", "dmus", "dmz", "dna", "DO", "Do", "do", "doable", "dobbin", "dobra", "dobson", "dobsonfly", "doc", "docent", "docile", "docility", "dock", "dockage", "docker", "docket", "dockhand", "docking", "docks", "dockside", "dockworker", "dockyard", "doctor", "doctoral", "doctorate", "doctorfish", "doctorial", "doctors", "doctorspeak", "doctrinaire", "doctrinal", "doctrinally", "doctrine", "docudrama", "document", "documental", "documentaries", "documentary", "documentation", "documented", "documenting", "documents", "dod", "dodder", "dodderer", "doddering", "doddery", "doddle", "dodecagon", "dodecahedron", "dodge", "dodged", "dodgem", "dodger", "dodges", "dodgier", "dodgiest", "dodging", "dodgson", "dodgy", "dodo", "dodoes", "doe", "doei", "doer", "DOES", "Does", "does", "doeskin", "DOESN'T", "Doesn't", "doesn't", "DOESNT", "Doesnt", "doesnt", "DOESN\u2019T", "Doesn\u2019t", "doesn\u2019t", "doff", "doffing", "dog", "dogbane", "dogcart", "doge", "dogfight", "dogfighter", "dogfish", "dogfishes", "dogged", "doggedly", "doggedness", "doggerel", "doggie", "dogging", "doggo", "doggy", "doghouse", "dogie", "dogleg", "doglegged", "doglegging", "doglike", "dogma", "dogmata", "dogmatic", "dogmatical", "dogmatically", "dogmatise", "dogmatism", "dogmatist", "dogmatize", "dogs", "dogsbody", "dogshit", "dogsled", "dogteeth", "dogtooth", "dogtrot", "dogwatch", "dogwood", "dogy", "doh", "doi", "doily", "doin", "doin'", "doing", "doings", "doj", "dojc", "dol", "dolabrate", "dolabriform", "dolce", "doldrums", "dole", "doleful", "dolefully", "dolefulness", "dolichocephalic", "dolichocephalism", "dolichocephaly", "dolichocranial", "dolichocranic", "doliolum", "doll", "dollar", "dollarfish", "dollarfishes", "dollars", "dollhouse", "dollied", "dollop", "dolls", "dolly", "dolman", "dolmas", "dolmen", "dolobid", "dolomite", "dolomitic", "dolor", "dolorous", "dolour", "dolourous", "dolphin", "dolphinfish", "dolphins", "dolt", "doltish", "doltishly", "domain", "domains", "domatia", "domatium", "dombeya", "dome", "domed", "domes", "domestic", "domestically", "domesticate", "domesticated", "domesticates", "domesticating", "domestication", "domesticise", "domesticity", "domesticize", "domicile", "domiciliary", "domiciliate", "domiciliation", "dominance", "dominant", "dominate", "dominated", "dominates", "dominating", "domination", "dominatrix", "domine", "dominee", "domineer", "domineering", "domineeringly", "domineeringness", "Dominica", "dominica", "dominical", "Dominican", "dominican", "dominick", "dominicus", "dominie", "domino", "dominoes", "dominus", "don", "DON'T", "Don't", "don't", "donate", "donated", "donates", "donating", "donation", "donations", "donatist", "donbas", "done", "donee", "donetske", "dong", "dongle", "donjon", "donkey", "donkeys", "donkeywork", "donna", "donnean", "donned", "donnian", "donning", "donnish", "donor", "donors", "dons", "DONT", "Dont", "dont", "donut", "donuts", "DON\u2019T", "Don\u2019t", "don\u2019t", "doob", "doodad", "doodia", "doodle", "doodlebug", "doodles", "doodling", "doofus", "doohickey", "doojigger", "doom", "doomed", "dooming", "dooms", "doomsday", "door", "doorbell", "doorcase", "doorframe", "doorhandle", "doorjamb", "doorkeeper", "doorknob", "doorknocker", "doorlock", "doorman", "doormat", "doornail", "doorplate", "doorpost", "doors", "doorsill", "doorstep", "doorstop", "doorstopper", "doorway", "dooryard", "dopa", "dopamine", "dopastat", "dope", "doped", "dopey", "dopier", "dopiest", "doping", "doppelganger", "doppelzentner", "dopy", "dorbeetle", "dorian", "doric", "doriden", "dork", "dorm", "dormancy", "dormant", "dormer", "dormice", "dormie", "dormitory", "dormouse", "dormy", "dorsa", "dorsal", "dorsally", "dorsiflexion", "dorsoventral", "dorsoventrally", "dorsum", "dory", "dosage", "dose", "dosed", "dosemeter", "doses", "dosimeter", "dosimetry", "dosing", "doss", "dossal", "dossel", "dosser", "dosshouse", "dossier", "dostoevski", "dostoevskian", "dostoevsky", "dostoyevskian", "dot", "dotage", "dotard", "dote", "doted", "doting", "dotrel", "dots", "dotted", "dotterel", "dottier", "dottiest", "dottily", "dotting", "dottle", "dotty", "double", "doubled", "doubleheader", "doubler", "doubles", "doublespeak", "doublet", "doublethink", "doubleton", "doubletree", "doubling", "doubloon", "doubly", "doubt", "doubted", "doubter", "doubtful", "doubtfully", "doubtfulness", "doubting", "doubtless", "doubtlessly", "doubts", "douche", "douchebag", "douches", "douching", "dough", "doughboy", "doughier", "doughiest", "doughnut", "doughnuts", "doughtier", "doughtiest", "doughty", "doughy", "doula", "dour", "doura", "dourah", "dourly", "douroucouli", "douse", "douses", "dousing", "dove", "dovecote", "dovekie", "doves", "dovetail", "dovetailing", "dovetails", "dovish", "dovishness", "dowager", "dowdier", "dowdiest", "dowdily", "dowdiness", "dowdy", "dowel", "doweling", "dower", "dowered", "dowerless", "dowery", "dowitcher", "down", "downbeat", "downbound", "downcast", "downdraft", "downed", "downer", "downfall", "downfield", "downgrade", "downgraded", "downgrades", "downgrading", "downhearted", "downheartedness", "downhill", "downier", "downiest", "downiness", "downing", "downlike", "download", "downloading", "downloads", "downmarket", "downplay", "downplayed", "downplaying", "downplays", "downpour", "downright", "downrightness", "downriver", "downs", "downscale", "downshift", "downside", "downsize", "downsized", "downsizes", "downsizing", "downslope", "downspin", "downstage", "downstair", "downstairs", "downstream", "downstroke", "downswing", "downtick", "downtime", "downtown", "downtrodden", "downturn", "downward", "downwardly", "downwards", "downwind", "downy", "dowry", "dowse", "dowser", "dowsing", "doxazosin", "doxepin", "doxology", "doxorubicin", "doxy", "doxycycline", "doyen", "doyenne", "doyley", "doyly", "DOZ.", "Doz.", "doz.", "doze", "dozen", "dozens", "dozer", "dozes", "dozier", "doziest", "dozing", "dozy", "dph", "dphil", "dprk", "DR.", "Dr.", "dr.", "drab", "draba", "drabbed", "drabber", "drabbest", "drabbing", "drably", "drabness", "dracaena", "dracaenaceae", "drachm", "drachma", "drachmae", "draconian", "dracontium", "dracunculiasis", "draft", "draftboard", "draftboards", "drafted", "draftee", "drafter", "draftier", "draftiest", "drafting", "drafts", "draftsman", "draftsmanship", "draftsmen", "draftsperson", "draftswoman", "draftswomen", "drafty", "drag", "dragee", "dragged", "dragger", "draggier", "draggiest", "dragging", "draggingly", "draggle", "draggled", "draggy", "dragnet", "dragoman", "dragon", "dragonet", "dragonfly", "dragonhead", "dragons", "dragoon", "drags", "drain", "drainage", "drainboard", "drained", "draining", "drainpipe", "drainplug", "drains", "dram", "drama", "dramamine", "dramas", "dramatic", "dramatically", "dramatics", "dramatisation", "dramatisations", "dramatise", "dramatised", "dramatises", "dramatising", "dramatist", "dramatization", "dramatizations", "dramatize", "dramatized", "dramatizes", "dramatizing", "dramaturgic", "dramaturgical", "dramaturgy", "drape", "draped", "draper", "drapery", "drapes", "draping", "drastic", "drastically", "draught", "draughtboard", "draughtboards", "draughtier", "draughtiest", "draughts", "draughtsman", "draughtsmanship", "draughtsmen", "draughtswoman", "draughtswomen", "draughty", "dravidic", "draw", "drawback", "drawbacks", "drawbar", "drawbridge", "drawee", "drawer", "drawers", "drawing", "drawings", "drawknife", "drawknives", "drawl", "drawler", "drawling", "drawn", "drawnwork", "draws", "drawshave", "drawstring", "dray", "drayhorse", "dread", "dreaded", "dreadful", "dreadfully", "dreadfulness", "dreading", "dreadlock", "dreadnaught", "dreadnought", "dreads", "dream", "dreamed", "dreamer", "dreamfully", "dreamier", "dreamiest", "dreamily", "dreaminess", "dreaming", "dreamland", "dreamless", "dreamlike", "dreams", "dreamt", "dreamworld", "dreamy", "drear", "drearier", "dreariest", "drearily", "dreariness", "dreary", "dreck", "dredge", "dredger", "dredging", "dreg", "dreggier", "dreggiest", "dreggy", "drench", "drenched", "drenching", "dress", "dressage", "dressed", "dresser", "dresses", "dressier", "dressiest", "dressing", "dressmaker", "dressmaking", "dressy", "drew", "drey", "drib", "dribble", "dribbler", "dribbles", "dribbling", "driblet", "dried", "drier", "driest", "drift", "driftage", "drifted", "drifter", "driftfish", "drifting", "drifts", "driftwood", "drill", "drilled", "drilling", "drills", "drily", "drink", "drinkable", "drinker", "drinkers", "drinking", "drinks", "drip", "dripless", "drippage", "dripped", "drippier", "drippiest", "drippily", "drippiness", "dripping", "drippy", "drips", "dripstone", "drive", "drivel", "driveled", "driveling", "drivelled", "driveller", "drivelling", "driven", "driver", "drivers", "drives", "driveshaft", "driveway", "driving", "drizzle", "drizzles", "drizzling", "drizzly", "drms", "drogue", "droll", "drollery", "dromaeosaur", "drome", "dromedary", "dronabinol", "drone", "droning", "drool", "drooled", "drooler", "drooling", "drools", "droop", "drooping", "droopingly", "droops", "droopy", "drop", "droped", "dropforge", "dropkick", "dropkicker", "droplet", "dropline", "dropout", "dropouts", "dropped", "dropper", "dropping", "droppings", "drops", "dropseed", "dropsical", "dropsy", "droshky", "drosky", "drosophila", "drosophilae", "dross", "drought", "drouth", "drove", "drover", "droves", "drown", "drowned", "drowning", "drowns", "drowse", "drowses", "drowsier", "drowsiest", "drowsily", "drowsiness", "drowsing", "drowsy", "drub", "drubbed", "drubbing", "drudge", "drudgery", "drudging", "drug", "drugged", "drugget", "drugging", "druggist", "drugless", "drugs", "drugstore", "druidism", "drum", "drumbeat", "drumbeater", "drumfire", "drumfish", "drumfishes", "drumhead", "drumlin", "drummed", "drummer", "drumming", "drums", "drumstick", "drunk", "drunkard", "drunken", "drunkenly", "drunkenness", "drupaceous", "drupe", "drupelet", "druse", "drusen", "druthers", "dry", "dryad", "dryades", "drydock", "dryer", "dryest", "drygoods", "drying", "dryly", "dryness", "dryopithecine", "drypis", "drywall", "dscdna", "dsl", "dtic", "dts", "duad", "dual", "dualism", "dualist", "dualistic", "duality", "dub", "dubbed", "dubbin", "dubbing", "dubiety", "dubious", "dubiously", "dubiousness", "dubitable", "dubnium", "dubs", "dubya", "dubyuh", "ducal", "ducat", "duce", "duchess", "duchy", "duck", "duckbill", "duckboard", "ducking", "duckling", "duckpin", "ducks", "duckweed", "ducky", "duct", "ductile", "ductileness", "ductility", "ductless", "ducts", "ductule", "ductulus", "dud", "dude", "dudeen", "dudgeon", "due", "duel", "dueled", "dueler", "dueling", "duelist", "duelled", "dueller", "duelling", "duellist", "duels", "duenna", "dues", "duet", "duette", "duff", "duffel", "duffer", "duffle", "dug", "dugong", "dugout", "dui", "duke", "dukedom", "dulcet", "dulciana", "dulcified", "dulcify", "dulcimer", "dulcinea", "dulcorate", "dull", "dullard", "dulled", "dullest", "dulling", "dullness", "dully", "dulse", "duly", "dumb", "dumbass", "dumbbell", "dumber", "dumbest", "dumbfound", "dumbfounded", "dumbfounding", "dumbfounds", "dumbly", "dumbness", "dumbstricken", "dumbstruck", "dumbwaiter", "dumdum", "dumfounded", "dumfounding", "dummied", "dummy", "dump", "dumpcart", "dumped", "dumper", "dumpier", "dumpiest", "dumpiness", "dumping", "dumpling", "dumps", "dumpsite", "dumpy", "dun", "dunce", "duncical", "duncish", "dunderhead", "dune", "dunes", "dung", "dungaree", "dungeon", "dunghill", "dunk", "dunkard", "dunkerque", "dunking", "dunks", "dunlin", "dunned", "dunner", "dunnest", "dunning", "dunnock", "duo", "duodecimal", "duodenal", "duodenum", "duologue", "duomo", "duona", "duonas", "dupe", "duped", "dupery", "dupes", "duping", "duple", "duplex", "duplexes", "duplicability", "duplicable", "duplicatable", "duplicate", "duplicated", "duplicates", "duplicating", "duplication", "duplications", "duplicator", "duplicitous", "duplicity", "dupondii", "dupondius", "dura", "durability", "durable", "durables", "durabolin", "dural", "duramen", "durance", "duration", "durative", "durazzo", "durbar", "duress", "durian", "During", "during", "durion", "durmast", "durra", "durum", "dusanbe", "dusk", "duskier", "duskiest", "duskiness", "dusky", "dust", "dustbin", "dustcart", "dustcloth", "dusted", "duster", "dustier", "dustiest", "dustiness", "dusting", "dustlike", "dustman", "dustmop", "dustpan", "dustpanful", "dustrag", "dusts", "dustup", "Dusty", "dusty", "dutch", "dutchman", "duteous", "dutiable", "duties", "dutiful", "dutifully", "dutifulness", "duty", "duumvir", "duumviri", "duvet", "dvd", "dwarf", "dwarfed", "dwarfing", "dwarfish", "dwarfishness", "dwarfism", "dwarfs", "dwarves", "dweeb", "dwell", "dweller", "dwellers", "dwelling", "dwellings", "dwindle", "dwindled", "dwindles", "dwindling", "dyad", "dyadic", "dyarchy", "dybbuk", "dybbukkim", "dye", "dyed", "dyeing", "dyer", "dyes", "dyestuff", "dyeweed", "dyewood", "dying", "dyke", "dynamic", "dynamical", "dynamically", "dynamics", "dynamise", "dynamism", "dynamite", "dynamiter", "dynamitist", "dynamize", "dynamo", "dynamometer", "dynapen", "dynast", "dynastic", "dynasties", "dynasty", "dyne", "dysaphia", "dysarthria", "dyscalculia", "dyschezia", "dyscrasia", "dysentery", "dysfunction", "dysfunctional", "dysgenesis", "dysgenic", "dysgenics", "dysgraphia", "dyskinesia", "dyslectic", "dyslexia", "dyslexic", "dyslogia", "dyslogistic", "dysmenorrhea", "dysomia", "dysosmia", "dyspepsia", "dyspeptic", "dysphagia", "dysphasia", "dysphemism", "dysphemistic", "dysphonia", "dysphoria", "dysphoric", "dysplasia", "dysplastic", "dyspnea", "dyspneal", "dyspneic", "dyspnoea", "dyspnoeal", "dyspnoeic", "dysprosium", "dyssynergia", "dysthymia", "dystopia", "dystopian", "dystrophy", "dysuria", "dyushambe", "dziggetai", "E-mail", "e-mail", "e-mailed", "e-mailing", "E.G.", "e.g.", "Each", "each", "eadwig", "eager", "eagerly", "eagerness", "eagle", "eagles", "eaglet", "eagre", "ear", "earache", "eardrop", "eardrum", "eared", "earflap", "earful", "earl", "earlap", "earldom", "earless", "earlier", "earliest", "earliness", "earlobe", "early", "earlyish", "earmark", "earmarked", "earmarking", "earmarks", "earmuff", "earn", "earned", "earner", "earnest", "earnestly", "earnestness", "earning", "earnings", "earns", "earphone", "earpiece", "earplug", "earreach", "earring", "earrings", "ears", "earshot", "earsplitting", "earth", "earthball", "earthborn", "earthbound", "earthen", "earthenware", "earthier", "earthiest", "earthing", "earthlier", "earthliest", "earthlike", "earthling", "earthly", "earthman", "earthnut", "earthquake", "earthquakes", "earthshaking", "earthstar", "earthtongue", "earthwork", "earthworm", "earthy", "earwax", "earwig", "ease", "eased", "easel", "easement", "eases", "easied", "easier", "easiest", "easily", "easiness", "easing", "East", "east", "eastbound", "easterly", "eastern", "easterner", "easternmost", "eastmost", "eastside", "eastsider", "eastward", "eastwards", "easy", "easygoing", "easygoingness", "eat", "eatable", "eatage", "eaten", "eater", "eatery", "eating", "eats", "eaves", "eavesdrop", "eavesdropped", "eavesdropper", "eavesdropping", "eavesdrops", "ebb", "ebbing", "ebbs", "ebbtide", "ebionite", "ebit", "ebitda", "eblis", "ebn", "ebola", "ebon", "ebonics", "ebonise", "ebonite", "ebonize", "Ebony", "ebony", "ebracteate", "ebullience", "ebullient", "ebulliently", "ebullition", "eburnation", "ebv", "ecarte", "ecc", "eccentric", "eccentrically", "eccentricity", "ecchymoses", "ecchymosis", "ecclesia", "ecclesiae", "ecclesiastic", "ecclesiastical", "ecclesiastically", "ecclesiasticism", "ecclesiasticus", "ecclesiology", "eccm", "eccrine", "eccyesis", "ecdemic", "ecdyses", "ecdysiast", "ecdysis", "ecesis", "ecf", "ecg", "echelon", "echidna", "echidnae", "echini", "echinocactus", "echinococci", "echinococcosis", "echinococcus", "echinoderm", "echinus", "echo", "echocardiogram", "echocardiograph", "echocardiography", "echoed", "echoencephalogram", "echoencephalograph", "echoencephalography", "echoes", "echogram", "echography", "echoic", "echoing", "echolalia", "echoless", "echolike", "echolocation", "echovirus", "echt", "eclair", "eclampsia", "eclat", "eclectic", "eclecticism", "eclecticist", "eclipse", "eclipses", "eclipsing", "eclipsis", "ecliptic", "eclogue", "ecm", "ecobabble", "ecologic", "ecological", "ecologically", "ecologist", "ecology", "econometric", "econometrician", "econometrics", "econometrist", "economic", "economical", "economically", "economics", "economies", "economise", "economised", "economiser", "economises", "economising", "economist", "economists", "economize", "economized", "economizer", "economizes", "economizing", "economy", "ecosoc", "ecosystem", "ecosystems", "ecoterrorism", "ecotourism", "ecphonesis", "ecrevisse", "ecru", "ecstasy", "ecstatic", "ecstatically", "ect", "ectasia", "ectasis", "ectoblast", "ectoderm", "ectodermal", "ectodermic", "ectomorph", "ectomorphic", "ectomorphy", "ectoparasite", "ectopia", "ectopic", "ectoplasm", "ectoproct", "ectotherm", "ectothermic", "ectozoa", "ectozoan", "ectozoon", "ectrodactyly", "Ecuador", "ecuador", "ecuadoran", "ecuadorian", "ecumenic", "ecumenical", "ecumenicalism", "ecumenicism", "ecumenism", "eczema", "edacious", "edacity", "edaphosaurus", "edd", "eddied", "eddo", "eddoes", "eddy", "edecrin", "edelweiss", "edema", "edemata", "edematous", "edental", "edentate", "edentulate", "edentulous", "edge", "edged", "edgeless", "edger", "edges", "edgeways", "edgewise", "edgier", "edgiest", "edginess", "edging", "edgy", "edibility", "edible", "edibleness", "edict", "edification", "edifice", "edified", "edify", "edifying", "edit", "edited", "editing", "edition", "editions", "editor", "editorial", "editorialise", "editorialised", "editorialises", "editorialising", "editorialist", "editorialize", "editorialized", "editorializes", "editorializing", "editorially", "editorials", "editors", "editorship", "edmontosaurus", "edp", "edronax", "edt", "edta", "educate", "educated", "educatee", "educates", "educating", "education", "educational", "educationalist", "educationally", "educationist", "educative", "educator", "educators", "educe", "edulcorate", "edutainment", "edward", "edwardian", "eec", "eeg", "eel", "eelblenny", "eelgrass", "eellike", "eelpout", "eelworm", "eerie", "eerier", "eeriest", "eerily", "eeriness", "eery", "eff", "efface", "effaceable", "effacement", "effacing", "effect", "effected", "effecter", "effecting", "effective", "effectively", "effectiveness", "effectivity", "effector", "effectors", "effects", "effectual", "effectuality", "effectually", "effectualness", "effectuate", "effectuates", "effectuating", "effectuation", "effeminacy", "effeminate", "effeminateness", "effeminise", "effeminises", "effeminize", "effeminizes", "effendi", "efferent", "effervesce", "effervescence", "effervescent", "effervescing", "effete", "efficacious", "efficaciously", "efficaciousness", "efficacy", "efficiencies", "efficiency", "efficient", "efficiently", "effigy", "effing", "effleurage", "effloresce", "efflorescence", "efflorescent", "effluence", "effluent", "effluents", "effluvia", "effluvium", "efflux", "effort", "effortful", "effortfulness", "effortless", "effortlessly", "effortlessness", "efforts", "effrontery", "effulgence", "effulgent", "effuse", "effusion", "effusive", "effusively", "effusiveness", "eft", "EG.", "eg.", "egalitarian", "egalitarianism", "egalite", "egality", "egest", "egg", "eggar", "eggbeater", "eggcup", "egger", "eggfruit", "egghead", "egging", "eggnog", "eggplant", "eggs", "eggshake", "eggshell", "eggwhisk", "egis", "eglantine", "ego", "egocentric", "egocentrism", "egoism", "egoist", "egoistic", "egoistical", "egomania", "egomaniac", "egos", "egotism", "egotist", "egotistic", "egotistical", "egotistically", "egotrip", "egregious", "egress", "egression", "egret", "egtk", "Egypt", "egypt", "egyptian", "ehf", "eib", "eibit", "eider", "eiderdown", "eidetic", "eidola", "eidolon", "eidos", "eigenvalue", "eight", "eighteen", "eighteenth", "eighter", "eightfold", "eighth", "eighties", "eightieth", "eightpence", "eightpenny", "eightsome", "eightvo", "eighty", "eimeria", "einsteinian", "einsteinium", "eire", "eisegeses", "eisegesis", "eisteddfod", "eisteddfodau", "Either", "either", "ejaculate", "ejaculates", "ejaculating", "ejaculation", "ejaculator", "eject", "ejected", "ejecting", "ejection", "ejector", "ejects", "ekg", "El", "el", "ela", "elaborate", "elaborated", "elaborately", "elaborateness", "elaborates", "elaborating", "elaboration", "elan", "eland", "elaphure", "elapid", "elapse", "elapsed", "elapses", "elapsing", "elasmobranch", "elastance", "elastase", "elastic", "elasticised", "elasticities", "elasticity", "elasticized", "elastin", "elastomer", "elastosis", "elate", "elated", "elater", "elaterid", "elates", "elating", "elation", "elavil", "elbow", "elbowing", "elbows", "eld", "elder", "elderberry", "elderly", "elders", "eldership", "eldest", "eldorado", "eldritch", "elecampane", "elect", "elected", "electing", "election", "electioneer", "electioneering", "elections", "elective", "elector", "electoral", "electorate", "electric", "electrical", "electrically", "electrician", "electricity", "electrification", "electrified", "electrifies", "electrify", "electrifying", "electrocardiogram", "electrocardiograph", "electrocardiographic", "electrocardiography", "electrocautery", "electrochemical", "electrochemistry", "electrocute", "electrocution", "electrocutioner", "electrode", "electrodeposition", "electrodes", "electrodynamometer", "electroencephalogram", "electroencephalograph", "electroencephalographic", "electrograph", "electrologist", "electrolysis", "electrolyte", "electrolytic", "electromagnet", "electromagnetic", "electromagnetics", "electromagnetism", "electromechanical", "electrometer", "electromotive", "electromyogram", "electromyograph", "electromyography", "electron", "electronegative", "electronegativity", "electroneutral", "electronic", "electronically", "electronics", "electrons", "electrophoresis", "electrophoretic", "electroplate", "electroplater", "electropositive", "electroretinogram", "electroscope", "electroshock", "electrosleep", "electrostatic", "electrostatically", "electrostatics", "electrosurgery", "electrotherapist", "electrotherapy", "electrum", "elects", "eleemosynary", "elegance", "elegant", "elegantly", "elegiac", "elegise", "elegist", "elegize", "elegy", "element", "elemental", "elementarily", "elementary", "elements", "elemi", "elenchi", "elenchus", "elephant", "elephantiasis", "elephantine", "elephants", "elevate", "elevated", "elevates", "elevating", "elevation", "elevations", "elevator", "elevators", "eleven", "eleventh", "elf", "elfin", "elfish", "elflike", "elia", "elicit", "elicitation", "elicited", "eliciting", "elicits", "elide", "elides", "eliding", "eligibility", "eligible", "eliminate", "eliminated", "eliminates", "eliminating", "elimination", "eliminator", "elint", "elinvar", "elisa", "elisabethville", "elision", "elite", "elites", "elitism", "elitist", "elixir", "elixophyllin", "elizabeth", "elizabethan", "elk", "elkhound", "elkwood", "ell", "ellas", "ellipse", "ellipses", "ellipsis", "ellipsoid", "ellipsoidal", "elliptic", "elliptical", "ellipticity", "ellul", "elm", "elmwood", "eln", "elocute", "elocution", "elocutionary", "elocutionist", "elongate", "elongated", "elongates", "elongating", "elongation", "elope", "elopement", "elopes", "eloping", "eloquence", "eloquent", "eloquently", "elsass", "else", "elsewhere", "elsholtzia", "elspar", "eluate", "elucidate", "elucidates", "elucidating", "elucidation", "elucidative", "elude", "eluded", "eludes", "eluding", "elusion", "elusive", "elusiveness", "elute", "eluting", "elution", "eluvia", "eluvium", "elver", "elves", "elvis", "elvish", "elysian", "elytra", "elytron", "em", "emaciate", "emaciated", "emaciation", "EMail", "Email", "email", "emailed", "emailing", "emails", "emanate", "emanates", "emanating", "emanation", "emancipate", "emancipated", "emancipates", "emancipating", "emancipation", "emancipationist", "emancipative", "emancipator", "emarginate", "emasculate", "emasculated", "emasculates", "emasculating", "emasculation", "embalm", "embalmer", "embalming", "embalmment", "embalms", "embank", "embankment", "embargo", "embargoed", "embargoes", "embargoing", "embark", "embarkation", "embarked", "embarking", "embarkment", "embarks", "embarrass", "embarrassed", "embarrasses", "embarrassing", "embarrassingly", "embarrassment", "embassador", "embassies", "embassy", "embattle", "embattled", "embayment", "embed", "embedded", "embedding", "embeds", "embellish", "embellishes", "embellishing", "embellishment", "ember", "embezzle", "embezzled", "embezzlement", "embezzler", "embezzles", "embezzling", "embiodea", "embitter", "embittered", "embitterment", "emblazon", "emblazoning", "emblem", "emblematic", "emblematical", "embodied", "embodies", "embodiment", "embody", "embodying", "embolden", "emboldened", "emboldening", "embolectomy", "emboli", "embolic", "embolism", "embolus", "embonpoint", "emboss", "embossed", "embosses", "embossing", "embossment", "embouchure", "embower", "embrace", "embraced", "embracement", "embraces", "embracing", "embrangle", "embrasure", "embrittle", "embrocate", "embrocation", "embroider", "embroiderer", "embroideress", "embroidering", "embroiders", "embroidery", "embroil", "embroiled", "embroiling", "embroilment", "embroils", "embrown", "embryo", "embryologic", "embryologist", "embryology", "embryonal", "embryonic", "embryos", "embryotic", "embus", "embussed", "embussing", "emcee", "emceeing", "emda", "emeer", "emend", "emendation", "emended", "emerald", "emerge", "emerged", "emergence", "emergencies", "emergency", "emergent", "emerges", "emerging", "emeritus", "emersion", "emery", "emeside", "emesis", "emetic", "emf", "emg", "emigrant", "emigrate", "emigrated", "emigrates", "emigrating", "emigration", "emigre", "emigree", "eminence", "eminent", "eminently", "emir", "emirate", "Emirates", "emirates", "emissary", "emission", "emissions", "emit", "emits", "emitted", "emitter", "emitting", "emmenagogue", "emmental", "emmentaler", "emmenthaler", "emmer", "emmet", "emmetropia", "emmetropic", "emollient", "emolument", "emote", "emotes", "emoticon", "emoting", "emotion", "emotional", "emotionalism", "emotionality", "emotionally", "emotionless", "emotionlessly", "emotionlessness", "emotions", "emotive", "empale", "empanel", "empanelled", "empanelling", "empanels", "empathetic", "empathetically", "empathic", "empathise", "empathised", "empathises", "empathising", "empathize", "empathized", "empathizes", "empathizing", "empathy", "empennage", "emperor", "emperors", "emphases", "emphasis", "emphasise", "emphasised", "emphasises", "emphasising", "emphasize", "emphasized", "emphasizes", "emphasizing", "emphatic", "emphatically", "emphysema", "emphysematous", "empire", "empires", "empiric", "empirical", "empirically", "empiricism", "empiricist", "empirin", "emplace", "emplacement", "emplane", "employ", "employable", "employed", "employee", "employees", "employer", "employers", "employing", "employment", "employs", "emporia", "emporium", "empower", "empowered", "empowering", "empowerment", "empowers", "empress", "emptied", "emptier", "empties", "emptiest", "emptiness", "emptor", "empty", "emptying", "empurple", "empurpled", "empyema", "empyreal", "empyrean", "emu", "emulate", "emulated", "emulates", "emulating", "emulation", "emulator", "emulous", "emulously", "emulsified", "emulsifier", "emulsifies", "emulsify", "emulsion", "enable", "enabled", "enables", "enabling", "enact", "enacted", "enacting", "enactment", "enacts", "enalapril", "enallage", "enamel", "enameled", "enameling", "enamelled", "enamelling", "enamelware", "enamine", "enamor", "enamored", "enamoredness", "enamour", "enamoured", "enanthem", "enanthema", "enantiomer", "enantiomorph", "enantiomorphism", "enarthroses", "enarthrosis", "enate", "enatic", "enation", "enbrel", "encainide", "encamp", "encampment", "encapsulate", "encapsulates", "encapsulating", "encapsulation", "encase", "encased", "encasement", "encases", "encasing", "encaustic", "enceinte", "encephala", "encephalartos", "encephalitides", "encephalitis", "encephalocele", "encephalogram", "encephalography", "encephaloma", "encephalomata", "encephalomeningitis", "encephalomyelitis", "encephalon", "encephalopathy", "enchain", "enchained", "enchant", "enchanted", "enchanter", "enchanting", "enchantingly", "enchantment", "enchantress", "enchilada", "enchiridia", "enchiridion", "enchondroma", "enchondromata", "encipher", "enciphers", "encircle", "encircled", "encirclement", "encircles", "encircling", "enclave", "enclose", "enclosed", "encloses", "enclosing", "enclosure", "enclothe", "encode", "encoding", "encolure", "encomia", "encomiastic", "encomium", "encompass", "encompassed", "encompasses", "encompassing", "encompassment", "encopresis", "encore", "encounter", "encountered", "encountering", "encounters", "encourage", "encouraged", "encouragement", "encourages", "encouraging", "encouragingly", "encrimson", "encroach", "encroacher", "encroaches", "encroaching", "encroachment", "encrust", "encrustation", "encrusted", "encrusts", "encrypt", "encrypting", "encryption", "encrypts", "enculturation", "encumber", "encumbered", "encumbers", "encumbrance", "encyclical", "encyclopaedia", "encyclopaedias", "encyclopaedic", "encyclopaedism", "encyclopaedist", "encyclopedia", "encyclopedias", "encyclopedic", "encyclopedism", "encyclopedist", "encysted", "end", "endaemonism", "endameba", "endamebae", "endamoeba", "endamoebae", "endanger", "endangered", "endangering", "endangerment", "endangers", "endarterectomy", "endarteritis", "endear", "endearing", "endearingly", "endearment", "endeavor", "endeavored", "endeavoring", "endeavors", "endeavour", "endeavoured", "endeavouring", "endeavours", "ended", "endemic", "endemical", "endemism", "endergonic", "endermatic", "endermic", "endgame", "endicott", "ending", "endings", "endive", "endless", "endlessly", "endlessness", "endoblast", "endocardia", "endocarditis", "endocardium", "endocarp", "endocentric", "endocervicitis", "endocrania", "endocranium", "endocrinal", "endocrine", "endocrinologist", "endocrinology", "endoderm", "endodontia", "endodontic", "endodontics", "endodontist", "endoergic", "endogamic", "endogamous", "endogamy", "endogen", "endogenetic", "endogenic", "endogenous", "endogenously", "endogeny", "endolymph", "endometria", "endometrial", "endometriosis", "endometritis", "endometrium", "endomorph", "endomorphic", "endomorphy", "endoneurium", "endonuclease", "endoparasite", "endoparasitic", "endoplasm", "endoprocta", "endorphin", "endorse", "endorsed", "endorsement", "endorsements", "endorser", "endorses", "endorsing", "endoscope", "endoscopic", "endoscopy", "endoskeleton", "endosperm", "endospore", "endostea", "endosteum", "endostoses", "endostosis", "endothecia", "endothecium", "endothelia", "endothelial", "endothelioma", "endotheliomata", "endothelium", "endothermal", "endothermic", "endotoxin", "endovenous", "endow", "endowed", "endowing", "endowment", "endows", "endozoa", "endozoan", "endozoic", "endplate", "endpoint", "endpoints", "ends", "endue", "endurable", "endurance", "endure", "endured", "endures", "enduring", "enduringly", "enduringness", "endways", "endwise", "ene", "enema", "enemata", "enemies", "enemy", "energetic", "energetically", "energid", "energies", "energise", "energised", "energiser", "energises", "energising", "energize", "energized", "energizer", "energizes", "energizing", "energy", "enervate", "enervated", "enervates", "enervating", "enervation", "enfeeble", "enfeeblement", "enfeebling", "enfeoff", "enfeoffment", "enfilade", "enflurane", "enfold", "enfolding", "enforce", "enforceable", "enforced", "enforcement", "enforcer", "enforces", "enforcing", "enfranchise", "enfranchised", "enfranchisement", "engage", "engaged", "engagement", "engagements", "engages", "engaging", "engagingly", "engelmannia", "engender", "engendering", "engenders", "engild", "engine", "engineer", "engineered", "engineering", "engineers", "enginery", "engines", "english", "englut", "engluts", "englutted", "englutting", "engorge", "engorged", "engorgement", "engraft", "engram", "engrave", "engraved", "engraver", "engraves", "engraving", "engross", "engrossed", "engrosses", "engrossing", "engrossment", "engulf", "engulfed", "engulfing", "engulfs", "enhance", "enhanced", "enhancement", "enhancements", "enhancer", "enhancers", "enhances", "enhancing", "enhancive", "enigma", "enigmatic", "enigmatical", "enigmatically", "enjambement", "enjambment", "enjoin", "enjoined", "enjoining", "enjoinment", "enjoins", "enjoy", "enjoyable", "enjoyableness", "enjoyably", "enjoyed", "enjoyer", "enjoying", "enjoyment", "enjoys", "enkaid", "enkephalin", "enkindle", "enkindled", "enl", "enlace", "enlarge", "enlarged", "enlargement", "enlarger", "enlarging", "enlighten", "enlightened", "enlightening", "enlightenment", "enlightens", "enlist", "enlisted", "enlistee", "enlisting", "enlistment", "enlists", "enliven", "enlivened", "enlivener", "enlivening", "enlivens", "enmesh", "enmeshed", "enmity", "ennead", "enneahedra", "enneahedron", "ennoble", "ennoblement", "ennobles", "ennobling", "ennui", "enol", "enolic", "enologist", "enology", "enophile", "enormity", "enormous", "enormously", "enormousness", "enosis", "enough", "enounce", "enplane", "enquire", "enquirer", "enquires", "enquiring", "enquiringly", "enquiry", "enrage", "enraged", "enragement", "enrages", "enraging", "enrapture", "enraptured", "enrich", "enriching", "enrichment", "enrobe", "enrobing", "enrol", "enroll", "enrolled", "enrollee", "enrolling", "enrollment", "enrolls", "enrolment", "enrols", "ens", "ensconce", "ensconced", "ensemble", "enshrine", "enshrines", "enshrining", "enshroud", "ensiform", "ensign", "ensilage", "ensile", "ensky", "enslave", "enslaved", "enslavement", "enslaves", "enslaving", "ensnare", "ensnaring", "ensnarl", "ensnarled", "ensorcelled", "ensuant", "ensue", "ensued", "ensues", "ensuing", "ensure", "ensures", "ensuring", "entablature", "entail", "entailed", "entailing", "entailment", "entails", "entameba", "entamebae", "entamoeba", "entamoebae", "entangle", "entangled", "entanglement", "entangles", "entangling", "entases", "entasis", "entelechy", "entellus", "entente", "enter", "entera", "enteral", "entered", "enteric", "enterics", "entering", "enteritis", "enterobacteria", "enterobiasis", "enteroceptor", "enterokinase", "enterolith", "enterolithiasis", "enteron", "enteropathy", "enteroptosis", "enterostenosis", "enterostomy", "enterotomy", "enterotoxemia", "enterotoxin", "enterovirus", "enterprise", "enterpriser", "enterprises", "enterprising", "enterprisingly", "enterprisingness", "enters", "entertain", "entertained", "entertainer", "entertaining", "entertainingly", "entertainment", "entertains", "enthalpy", "enthral", "enthrall", "enthralled", "enthralling", "enthrallingly", "enthrallment", "enthralls", "enthrals", "enthrone", "enthronement", "enthrones", "enthroning", "enthronisation", "enthronization", "enthuse", "enthusiasm", "enthusiast", "enthusiastic", "enthusiastically", "enthusiasts", "entia", "entice", "enticed", "enticement", "entices", "enticing", "entire", "entirely", "entireness", "entirety", "entities", "entitle", "entitled", "entitlement", "entitlements", "entitles", "entitling", "entity", "entlebucher", "entoblast", "entoderm", "entomb", "entombed", "entombing", "entombment", "entomion", "entomologic", "entomological", "entomologist", "entomology", "entomophilous", "entomophobia", "entoparasite", "entoproct", "entourage", "entozoa", "entozoan", "entozoic", "entozoon", "entrails", "entrain", "entraining", "entrammel", "entrammelled", "entrammelling", "entrance", "entranced", "entrancement", "entrances", "entranceway", "entrancing", "entrant", "entrap", "entrapment", "entrapped", "entrapping", "entraps", "entreat", "entreating", "entreatingly", "entreaty", "entrecote", "entree", "entremets", "entrench", "entrenched", "entrenches", "entrenchment", "entrepot", "entrepreneur", "entrepreneurial", "entrepreneurs", "entresol", "entric", "entries", "entropy", "entrust", "entrusted", "entrusting", "entrusts", "entry", "entryway", "entsi", "entsy", "entwine", "entwined", "entwines", "entwining", "enucleate", "enucleation", "enuki", "enumerable", "enumerate", "enumerates", "enumerating", "enumeration", "enumerator", "enunciate", "enunciates", "enunciating", "enunciation", "enured", "enuresis", "envelop", "envelope", "envelopes", "enveloping", "envelopment", "envenom", "envenoming", "enviable", "enviably", "envied", "envies", "envious", "enviously", "enviousness", "environ", "environment", "environmental", "environmentalism", "environmentalist", "environmentalists", "environmentally", "environments", "environs", "envisage", "envisaged", "envisages", "envisaging", "envision", "envisioned", "envisioning", "envisions", "envoi", "envoy", "envy", "envying", "envys", "enwrap", "enwrapped", "enwrapping", "enzootic", "enzymatic", "enzyme", "enzymes", "enzymologist", "enzymology", "eohippus", "eolian", "eolic", "eolith", "eolithic", "eolotropic", "eon", "eonian", "eons", "eoraptor", "eosin", "eosinopenia", "eosinophil", "eosinophile", "eosinophilia", "eosinophilic", "epa", "epacris", "epanalepsis", "epanaphora", "epanodos", "epanorthosis", "eparch", "eparchial", "eparchy", "epaulet", "epaulets", "epaulette", "epaulettes", "epauliere", "epee", "epencephala", "epencephalon", "ependyma", "epentheses", "epenthesis", "epenthetic", "epergne", "epexegeses", "epexegesis", "epha", "ephah", "ephedra", "ephedrine", "ephemera", "ephemeral", "ephemerality", "ephemeralness", "ephemerid", "ephemerida", "ephemerides", "ephemeris", "ephemeron", "ephemeropteran", "ephesian", "ephor", "ephori", "epi", "epic", "epical", "epicalyces", "epicalyx", "epicanthi", "epicanthic", "epicanthus", "epicardia", "epicardium", "epicarp", "epicarpal", "epicedia", "epicedium", "epicene", "epicenter", "epicenters", "epicentre", "epicentres", "epicleses", "epiclesis", "epicondyle", "epicondylitis", "epicranium", "epicure", "epicurean", "epicureanism", "epicurism", "epicycle", "epicyclic", "epicyclical", "epicycloid", "epideictic", "epideictical", "epidemic", "epidemics", "epidemiologic", "epidemiological", "epidemiologist", "epidemiology", "epidendron", "epidermal", "epidermic", "epidermis", "epidiascope", "epididymides", "epididymis", "epididymitis", "epidural", "epigastria", "epigastric", "epigastrium", "epigenesis", "epiglottides", "epiglottis", "epiglottitis", "epigon", "epigone", "epigram", "epigrammatic", "epigraph", "epigraphy", "epikeratophakia", "epilate", "epilation", "epilator", "epilepsy", "epileptic", "epilithic", "epilog", "epilogs", "epilogue", "epilogues", "epimorphic", "epimysia", "epimysium", "epinephrin", "epinephrine", "epipaleolithic", "epiphany", "epiphenomena", "epiphenomenon", "epiphora", "epiphyllum", "epiphyseal", "epiphyses", "epiphysial", "epiphysis", "epiphyte", "epiphytic", "epiphytotic", "epiplexis", "episcia", "episcleritis", "episcopacy", "episcopal", "episcopalian", "episcopate", "episiotomy", "episode", "episodes", "episodic", "episodically", "episome", "epispadias", "episperm", "epistasis", "epistaxis", "episteme", "epistemic", "epistemological", "epistemologist", "epistemology", "episterna", "episternum", "epistolary", "epistolatory", "epistrophe", "epitaph", "epitaxy", "epithalamia", "epithalamion", "epithalamium", "epithelia", "epithelial", "epitheliod", "epithelioma", "epitheliomata", "epithelium", "epithet", "epitome", "epitomise", "epitomised", "epitomises", "epitomising", "epitomize", "epitomized", "epitomizes", "epitomizing", "epitope", "epitopes", "epizoa", "epizoan", "epizoic", "epizoon", "epizootic", "epoch", "epochal", "eponym", "eponymic", "eponymous", "eponymy", "epos", "epoxy", "eprom", "epsilon", "eptatretus", "epyllia", "epyllion", "eq", "equable", "equably", "equal", "equaled", "equaling", "equalisation", "equalise", "equalised", "equaliser", "equalisers", "equalises", "equalising", "equalitarian", "equalitarianism", "equality", "equalization", "equalize", "equalized", "equalizer", "equalizers", "equalizes", "equalizing", "equalled", "equalling", "equally", "equals", "equanil", "equanimity", "equanimous", "equatability", "equate", "equated", "equates", "equating", "equation", "equations", "equator", "equatorial", "equerry", "equestrian", "equiangular", "equid", "equidistant", "equidistribution", "equilateral", "equilibrate", "equilibrating", "equilibration", "equilibria", "equilibrise", "equilibrium", "equilibrize", "equine", "equinoctial", "equinox", "equip", "equipage", "equipment", "equipoise", "equipoised", "equipotent", "equipped", "equipping", "equiprobable", "equips", "equipt", "equiseta", "equisetatae", "equisetum", "equitable", "equitably", "equitation", "equity", "equivalence", "equivalent", "equivalents", "equivocal", "equivocally", "equivocalness", "equivocate", "equivocating", "equivocation", "equivocator", "er", "era", "eradicable", "eradicate", "eradicates", "eradicating", "eradication", "eradicator", "eras", "erasable", "erase", "erased", "eraser", "erases", "erasing", "erasmian", "erasure", "erbium", "erect", "erected", "erectile", "erecting", "erection", "erectly", "erectness", "erects", "eremite", "eremitic", "eremitical", "eremitism", "ereshkigel", "erethism", "erg", "ergo", "ergocalciferol", "ergodic", "ergodicity", "ergometer", "ergonomic", "ergonomics", "ergonovine", "ergosterol", "ergot", "ergotamine", "ergotic", "ergotism", "ergotropic", "ergotropism", "erica", "eringo", "eringoes", "erinyes", "eriogonum", "eristic", "eristical", "Eritrea", "eritrea", "eritrean", "erivan", "ermine", "ern", "erne", "erode", "eroded", "erodes", "eroding", "erogenous", "erose", "erosion", "erosions", "erosive", "erotic", "erotica", "erotically", "eroticism", "eroticize", "erotism", "err", "errancy", "errand", "errands", "errant", "errata", "erratic", "erratically", "erratum", "erred", "errhine", "erring", "erroneous", "erroneously", "erroneousness", "error", "errorless", "errors", "errs", "ersatz", "erse", "erst", "erstwhile", "ert", "eruct", "eructation", "erudite", "eruditely", "eruditeness", "erudition", "erupt", "erupted", "erupting", "eruption", "eruptions", "eruptive", "erupts", "erwinia", "eryngo", "eryngoes", "erysipelas", "erythema", "erythematous", "erythrina", "erythrite", "erythroblast", "erythroblastosis", "erythrocin", "erythrocyte", "erythrocytolysin", "erythroderma", "erythroid", "erythrolysin", "erythromycin", "erythropoiesis", "erythropoietic", "erythropoietin", "erythroxylum", "escadrille", "escalade", "escalader", "escalate", "escalated", "escalates", "escalating", "escalation", "escalator", "escallop", "escapade", "escape", "escaped", "escapee", "escapement", "escapes", "escaping", "escapism", "escapist", "escapologist", "escapology", "escargot", "escarole", "escarp", "escarpment", "eschalot", "eschar", "eschatological", "eschatologically", "eschatologist", "eschatology", "eschaton", "escheat", "escherichia", "eschew", "eschewed", "eschewing", "eschews", "escolar", "escort", "escorting", "escorts", "escritoire", "escrow", "escudo", "escutcheon", "ese", "esfahan", "esidrix", "eskalith", "esker", "esm", "esmolol", "esop", "esophageal", "esophagi", "esophagitis", "esophagoscope", "esophagus", "esophaguses", "esoteric", "esoterica", "esotropia", "esp", "espadrille", "espalier", "espana", "esparcet", "especial", "especially", "espial", "espied", "espionage", "esplanade", "ESPN", "espn", "espousal", "espouse", "espousing", "espresso", "esprit", "espy", "esq", "ESQ.", "Esq.", "esq.", "esquimau", "esquire", "esr", "essay", "essayer", "essaying", "essayist", "essays", "essence", "essene", "essential", "essentiality", "essentially", "essentialness", "essonite", "est", "establish", "established", "establishes", "establishing", "establishment", "establishmentarianism", "establishmentism", "establishments", "estaminet", "estate", "estates", "estazolam", "esteem", "esteemed", "ester", "esterified", "esterifies", "esterify", "esterifying", "esters", "esthesia", "esthesis", "esthete", "esthetes", "esthetic", "esthetical", "esthetically", "esthetician", "esthetics", "esthonia", "esthonian", "estimable", "estimate", "estimated", "estimates", "estimating", "estimation", "estimator", "estimators", "estival", "estivate", "estivation", "Estonia", "estonia", "estonian", "estop", "estopped", "estoppel", "estopping", "estradiol", "estragon", "estrange", "estranged", "estrangement", "estranges", "estranging", "estriol", "estrogen", "estrogenic", "estrogens", "estrone", "estronol", "estrous", "estrus", "estuarial", "estuarine", "estuary", "esurience", "esurient", "Eswatini", "eswatini", "eta", "etagere", "etamin", "etamine", "etanercept", "etc", "etc.", "etcetera", "etch", "etched", "etcher", "etches", "etching", "etd", "eternal", "eternalise", "eternalises", "eternalize", "eternalizes", "eternally", "eternise", "eternity", "eternize", "etf", "ethanal", "ethanamide", "ethane", "ethanediol", "ethanoate", "ethanol", "ethchlorvynol", "ethelred", "ethene", "ether", "ethereal", "etherealize", "etherealizing", "etherialise", "etherified", "etherify", "etherise", "etherize", "ethernet", "ethic", "ethical", "ethically", "ethician", "ethicism", "ethicist", "ethics", "Ethiopia", "ethiopia", "ethiopian", "ethmoid", "ethnarch", "ethnic", "ethnical", "ethnically", "ethnicity", "ethnocentric", "ethnocentrism", "ethnographer", "ethnographic", "ethnographical", "ethnography", "ethnologic", "ethnological", "ethnologist", "ethnology", "ethnos", "ethocaine", "ethologist", "ethology", "ethos", "ethosuximide", "ethoxyethane", "ethrane", "ethril", "ethyl", "ethylene", "ethyne", "etiolate", "etiolated", "etiolation", "etiologic", "etiological", "etiologist", "etiology", "etiquette", "etodolac", "etude", "etui", "etyma", "etymological", "etymologies", "etymologise", "etymologist", "etymologize", "etymologizing", "etymology", "etymon", "eubacteria", "eubacterium", "eucalypt", "eucalypti", "eucalyptus", "eucaryote", "eucaryotic", "eucharist", "eucharistic", "euchre", "euclidean", "euclidian", "eudaemon", "eudaemonia", "eudaemonic", "eudaimonia", "eudemon", "eudemonic", "eudemonism", "eudiometer", "eugenic", "eugenics", "euglena", "euglenid", "euglenoid", "euglenophyte", "eukaryote", "eukaryotes", "eukaryotic", "eulogise", "eulogised", "eulogises", "eulogising", "eulogist", "eulogistic", "eulogium", "eulogize", "eulogized", "eulogizes", "eulogizing", "eulogy", "eumenides", "eunuch", "eunuchoidism", "eupatrid", "eupatridae", "euphemise", "euphemism", "euphemistic", "euphemistically", "euphemize", "euphemizes", "euphemizing", "euphonic", "euphonical", "euphonious", "euphonium", "euphonous", "euphony", "euphorbium", "euphoria", "euphoriant", "euphoric", "euphory", "euphuism", "eupnea", "eupneic", "eupnoea", "eupnoeic", "eurafrican", "eurasian", "eurasiatic", "eurhythmics", "eurhythmy", "euripi", "euripus", "euro", "eurocentric", "euronithopod", "european", "europeanisation", "europeanise", "europeanize", "europium", "europocentric", "euros", "eurypterid", "eurythmics", "eurythmy", "eusporangiate", "eusporangium", "eutectic", "euthanasia", "euthenics", "eutherian", "eutrophic", "eutrophication", "ev", "evacuant", "evacuate", "evacuated", "evacuates", "evacuating", "evacuation", "evacuee", "evade", "evaded", "evades", "evading", "evaluate", "evaluated", "evaluates", "evaluating", "evaluation", "evaluations", "evaluative", "evaluator", "evaluators", "evanesce", "evanescence", "evanescent", "evanescing", "evangel", "evangelical", "evangelicalism", "evangelise", "evangelised", "evangelises", "evangelising", "evangelism", "evangelist", "evangelistic", "evangelize", "evangelized", "evangelizes", "evangelizing", "evaporable", "evaporate", "evaporated", "evaporates", "evaporating", "evaporation", "evaporative", "evaporite", "evaporometer", "evasion", "evasive", "evasively", "evasiveness", "eve", "Even", "even", "evened", "evenfall", "evenhanded", "evenhandedly", "evening", "evenings", "eveningwear", "evenk", "evenly", "evenness", "evens", "evensong", "event", "eventful", "eventide", "eventration", "events", "eventual", "eventuality", "eventually", "eventuate", "ever", "evergreen", "evergreening", "evergreens", "everlasting", "everlastingly", "everlastingness", "evermore", "eversion", "evert", "everting", "Every", "every", "everybody", "everyday", "everydayness", "everyman", "everyone", "everyplace", "everywhere", "evict", "evicting", "eviction", "evicts", "evidence", "evidenced", "evidencing", "evident", "evidential", "evidentiary", "evidently", "evil", "evildoer", "evildoing", "evilly", "evilness", "evils", "evince", "evinced", "evinces", "eviscerate", "eviscerating", "evisceration", "evitable", "evocation", "evocative", "evoke", "evoked", "evokes", "evoking", "evolution", "evolutionarily", "evolutionary", "evolutionism", "evolutionist", "evolve", "evolved", "evolves", "evolving", "ew", "ewenki", "ewer", "ex", "ex-accountant", "ex-dividend", "ex-employer", "ex-investment", "ex-member", "ex-player", "ex-president", "ex-wife", "exabit", "exabyte", "exacerbate", "exacerbated", "exacerbates", "exacerbating", "exacerbation", "exact", "exacta", "exacting", "exaction", "exactitude", "exactly", "exactness", "exaggerate", "exaggerated", "exaggeratedly", "exaggerates", "exaggerating", "exaggeration", "exalt", "exaltation", "exalted", "exalting", "exalts", "exam", "examen", "examination", "examinations", "examine", "examined", "examinee", "examiner", "examiners", "examines", "examining", "example", "examples", "exams", "exanimate", "exanthem", "exanthema", "exanthemata", "exarch", "exarchate", "exasparate", "exasperate", "exasperated", "exasperates", "exasperating", "exasperatingly", "exasperation", "exaugural", "exbibit", "exbibyte", "excavate", "excavated", "excavates", "excavating", "excavation", "excavations", "excavator", "exceed", "exceedance", "exceeded", "exceeding", "exceedingly", "exceeds", "Excel", "excel", "excelled", "excellence", "excellent", "excellently", "excelling", "excels", "excelsior", "Except", "except", "excepting", "exception", "exceptionable", "exceptional", "exceptionally", "exceptions", "excerpt", "excerpting", "excerption", "excerpts", "excess", "excesses", "excessive", "excessively", "excessiveness", "exchange", "exchangeability", "exchangeable", "exchanged", "exchanger", "exchanges", "exchanging", "exchequer", "excise", "excised", "exciseman", "excising", "excision", "excitability", "excitable", "excitableness", "excitant", "excitation", "excitative", "excitatory", "excite", "excited", "excitedly", "excitement", "excites", "exciting", "excitingly", "exclaim", "exclaiming", "exclaims", "exclamation", "exclamatory", "exclude", "excluded", "excludes", "excluding", "exclusion", "exclusive", "exclusively", "exclusiveness", "excogitate", "excogitation", "excogitative", "excogitator", "excommunicate", "excommunication", "excoriate", "excoriated", "excoriating", "excoriation", "excrement", "excrescence", "excrescent", "excreta", "excrete", "excretes", "excreting", "excretion", "excretory", "excruciate", "excruciates", "excruciating", "excruciatingly", "excruciation", "exculpate", "exculpated", "exculpating", "exculpation", "exculpatory", "excursion", "excursionist", "excursions", "excursive", "excursus", "excusable", "excusably", "excusatory", "excuse", "excused", "excuser", "excuses", "excusing", "exec", "execrable", "execrate", "execration", "execs", "executability", "executable", "executant", "execute", "executed", "executes", "executing", "execution", "executioner", "executions", "executive", "executives", "executor", "executrices", "executrix", "exegeses", "exegesis", "exegete", "exegetic", "exegetical", "exempla", "exemplar", "exemplary", "exemplification", "exemplified", "exemplifies", "exemplify", "exemplifying", "exemplum", "exempt", "exempted", "exempting", "exemption", "exemptions", "exempts", "exenterate", "exenteration", "exercise", "exercised", "exerciser", "exercises", "exercising", "exercycle", "exergonic", "exert", "exerted", "exerting", "exertion", "exerts", "exfiltrate", "exfoliate", "exfoliation", "exhalation", "exhale", "exhaled", "exhales", "exhaling", "exhaust", "exhausted", "exhaustible", "exhausting", "exhaustion", "exhaustive", "exhaustively", "exhibit", "exhibited", "exhibiting", "exhibition", "exhibitioner", "exhibitionism", "exhibitionist", "exhibitionistic", "exhibitions", "exhibitor", "exhibits", "exhilarate", "exhilarated", "exhilarates", "exhilarating", "exhilaration", "exhort", "exhortation", "exhortative", "exhortatory", "exhorting", "exhorts", "exhumation", "exhume", "exhumes", "exhuming", "exigency", "exigent", "exiguity", "exiguous", "exile", "exiled", "exilic", "exiling", "exist", "existed", "existence", "existent", "existential", "existentialism", "existentialist", "existing", "exists", "exit", "exited", "exiting", "exits", "exmoor", "exobiology", "exocarp", "exocentric", "exocrine", "exode", "exoderm", "exodontia", "exodontic", "exodontics", "exodontist", "exodus", "exoergic", "exogamic", "exogamous", "exogamy", "exogen", "exogenic", "exogenous", "exomphalos", "exon", "exonerate", "exonerated", "exonerates", "exonerating", "exoneration", "exonerative", "exons", "exonuclease", "exophthalmos", "exorbitance", "exorbitant", "exorbitantly", "exorcise", "exorcised", "exorciser", "exorcises", "exorcising", "exorcism", "exorcist", "exorcize", "exorcized", "exorcizes", "exorcizing", "exordia", "exordium", "exoskeleton", "exosphere", "exostoses", "exostosis", "exoteric", "exotherm", "exothermal", "exothermic", "exotic", "exoticism", "exoticness", "exotism", "exotoxin", "exotropia", "expand", "expandable", "expanded", "expandible", "expanding", "expands", "expanse", "expansible", "expansile", "expansion", "expansionism", "expansionist", "expansions", "expansive", "expansively", "expansiveness", "expansivity", "expat", "expatiate", "expatiation", "expatriate", "expatriation", "expect", "expectable", "expectancy", "expectant", "expectantly", "expectation", "expectations", "expected", "expectedness", "expecting", "expectorant", "expectorate", "expectoration", "expectorator", "expects", "expedience", "expediency", "expedient", "expediently", "expedite", "expedited", "expedites", "expediting", "expedition", "expeditionary", "expeditions", "expeditious", "expeditiously", "expeditiousness", "expel", "expelled", "expelling", "expels", "expend", "expendable", "expended", "expender", "expending", "expenditure", "expenditures", "expends", "expense", "expenses", "expensing", "expensive", "expensively", "expensiveness", "experience", "experienced", "experiences", "experiencing", "experient", "experiential", "experiment", "experimental", "experimentalism", "experimentally", "experimentation", "experimented", "experimenter", "experimenting", "experiments", "expert", "expertise", "expertly", "expertness", "experts", "expiable", "expiate", "expiating", "expiation", "expiative", "expiatory", "expiration", "expiratory", "expire", "expired", "expires", "expiring", "expiry", "explain", "explainable", "explained", "explaining", "explains", "explanandum", "explanans", "explanation", "explanations", "explanatory", "expletive", "explicable", "explicandum", "explicate", "explicating", "explication", "explicit", "explicitly", "explicitness", "explode", "exploded", "explodes", "exploding", "exploit", "exploitation", "exploitative", "exploitatory", "exploited", "exploiter", "exploiting", "exploitive", "exploits", "exploration", "explorations", "explorative", "exploratory", "explore", "explorer", "explorers", "explores", "exploring", "explosion", "explosions", "explosive", "explosively", "explosives", "expo", "exponent", "exponential", "exponentially", "exponentiation", "export", "exportable", "exportation", "exported", "exporter", "exporting", "exports", "expose", "exposed", "exposes", "exposing", "exposit", "expositing", "exposition", "expositive", "expositor", "expository", "expostulate", "expostulation", "exposure", "exposures", "expound", "expounder", "expounding", "expounds", "express", "expressage", "expressed", "expresses", "expressible", "expressing", "expression", "expressionism", "expressionist", "expressionistic", "expressionless", "expressions", "expressive", "expressively", "expressiveness", "expressly", "expressway", "expropriate", "expropriating", "expropriation", "expulsion", "expunction", "expunge", "expunged", "expunges", "expunging", "expurgate", "expurgated", "expurgation", "expurgator", "exquisite", "exquisitely", "exquisiteness", "exsanguine", "exsanguinous", "exsert", "exsiccate", "extant", "extemporaneous", "extemporaneously", "extemporarily", "extemporary", "extempore", "extemporisation", "extemporise", "extemporised", "extemporises", "extemporising", "extemporization", "extemporize", "extemporized", "extemporizes", "extemporizing", "extend", "extendable", "extended", "extendible", "extending", "extends", "extensible", "extensile", "extension", "extensional", "extensions", "extensive", "extensively", "extensiveness", "extensor", "extent", "extenuate", "extenuates", "extenuating", "extenuation", "exterior", "exteriorisation", "exteriorise", "exteriorization", "exteriorize", "exterminable", "exterminate", "exterminated", "exterminates", "exterminating", "extermination", "exterminator", "extern", "external", "externalisation", "externalisations", "externalise", "externalised", "externalises", "externalising", "externality", "externalization", "externalizations", "externalize", "externalized", "externalizes", "externalizing", "externally", "exteroception", "exteroceptive", "exteroceptor", "exterritorial", "extinct", "extinction", "extinguish", "extinguishable", "extinguished", "extinguisher", "extinguishes", "extinguishing", "extirpable", "extirpate", "extirpation", "extol", "extolled", "extoller", "extolling", "extolment", "extols", "extort", "extorted", "extorting", "extortion", "extortionate", "extortionately", "extortioner", "extortionist", "extorts", "extra", "extracellular", "extract", "extractable", "extracted", "extractible", "extracting", "extraction", "extractor", "extracts", "extracurricular", "extradite", "extradited", "extradites", "extraditing", "extradition", "extrados", "extradural", "extragalactic", "extrajudicial", "extralegal", "extralinguistic", "extramarital", "extramural", "extraneous", "extraneousness", "extraordinaire", "extraordinarily", "extraordinariness", "extraordinary", "extrapolate", "extrapolated", "extrapolates", "extrapolating", "extrapolation", "extras", "extrasensory", "extrasystole", "extrasystolic", "extraterrestrial", "extraterritorial", "extravagance", "extravagancy", "extravagant", "extravagantly", "extravaganza", "extravasate", "extravasating", "extravasation", "extraversion", "extraversive", "extravert", "extraverted", "extravertive", "extrema", "extreme", "extremely", "extremeness", "extremes", "extremism", "extremist", "extremists", "extremity", "extremum", "extricable", "extricate", "extricates", "extricating", "extrication", "extrinsic", "extropic", "extropy", "extrospective", "extroversion", "extroversive", "extrovert", "extroverted", "extrovertish", "extrovertive", "extrude", "extrusion", "extrusive", "exuberance", "exuberant", "exuberantly", "exuberate", "exudate", "exudation", "exude", "exuded", "exudes", "exuding", "exult", "exultant", "exultantly", "exultation", "exulting", "exultingly", "exurbia", "exuviae", "exuvial", "exuviate", "eyas", "eye", "eyeball", "eyeballing", "eyeballs", "eyebath", "eyebrow", "eyebrows", "eyecup", "eyed", "eyedness", "eyedrop", "eyeful", "eyeglass", "eyehole", "eyeing", "eyelash", "eyelashes", "eyeless", "eyelessness", "eyelet", "eyelid", "eyelike", "eyeliner", "eyepatch", "eyepiece", "eyes", "eyeshade", "eyeshadow", "eyeshot", "eyesight", "eyesore", "eyespot", "eyestrain", "eyeteeth", "eyetooth", "eyewash", "eyewitness", "eyra", "eyrie", "eyrir", "eyry", "ezechiel", "ezed", "ezekias", "ezo", "fa", "faa", "fab", "fabaceae", "fabian", "fable", "fabled", "fabliau", "fabliaux", "fabric", "fabricate", "fabricated", "fabricates", "fabricating", "fabrication", "fabricator", "fabrics", "fabulist", "fabulous", "fabulously", "facade", "face", "faced", "faceless", "facelift", "faceplate", "facer", "faces", "facet", "faceted", "facetious", "facetiously", "facetiousness", "facets", "facetted", "facetting", "facia", "faciae", "facial", "facially", "facile", "facilitate", "facilitating", "facilitation", "facilitative", "facilitator", "facilitators", "facilitatory", "facilities", "facility", "facing", "facsimile", "fact", "faction", "factions", "factious", "factitious", "facto", "factoid", "factor", "factorial", "factories", "factoring", "factorisation", "factorise", "factorised", "factorises", "factorising", "factorization", "factorize", "factorized", "factorizes", "factorizing", "factors", "factory", "factotum", "facts", "factual", "factuality", "factually", "factualness", "facula", "faculae", "facultative", "faculties", "faculty", "fad", "faddily", "faddish", "faddishly", "faddist", "faddy", "fade", "faded", "fadeout", "fades", "fading", "fado", "fae", "faecal", "faecalith", "faeces", "faerie", "faeroes", "faeroese", "faery", "fag", "fagged", "fagging", "faggot", "faggoting", "faggots", "fagot", "fagoting", "fahrenheit", "faience", "fail", "failed", "failing", "failings", "faille", "fails", "failure", "failures", "fain", "faineance", "faineant", "faint", "faintest", "fainthearted", "faintheartedness", "faintly", "faintness", "fair", "fairer", "fairground", "fairing", "fairish", "fairlead", "fairly", "fairness", "fairway", "fairways", "fairy", "fairyland", "fairytale", "faith", "faithful", "faithfully", "faithfulness", "faithless", "faithlessly", "faithlessness", "fake", "faked", "fakeer", "faker", "fakery", "fakes", "faking", "fakir", "falafel", "falanga", "falangist", "falcate", "falchion", "falciform", "falcon", "falconer", "falconine", "falconry", "falderol", "falkner", "fall", "fallacious", "fallaciousness", "fallacy", "fallal", "fallback", "fallboard", "fallen", "faller", "fallfish", "fallfishes", "fallibility", "fallible", "falling", "falloff", "fallopio", "fallout", "fallow", "falls", "false", "falsehood", "falsely", "falseness", "falsetto", "falsie", "falsifiable", "falsification", "falsified", "falsifier", "falsifies", "falsify", "falsifying", "falsity", "falstaffian", "falter", "faltered", "faltering", "falteringly", "falters", "fame", "famed", "familial", "familiar", "familiarisation", "familiarise", "familiarised", "familiarises", "familiarising", "familiarity", "familiarization", "familiarize", "familiarized", "familiarizes", "familiarizing", "familiarly", "families", "family", "famine", "famish", "famished", "famishment", "famotidine", "famous", "famously", "famuli", "famulus", "fan", "fanaloka", "fanatic", "fanatical", "fanatically", "fanaticism", "fanatism", "fancied", "fancier", "fancies", "fanciest", "fanciful", "fancifully", "fancify", "fancy", "fancying", "fancywork", "fandango", "fandom", "fanfare", "fang", "fanged", "fangs", "fanion", "fanjet", "fanlight", "fanlike", "fanned", "fanning", "fanny", "fans", "fantabulous", "fantail", "fantan", "fantasia", "fantasied", "fantasies", "fantasise", "fantasised", "fantasises", "fantasising", "fantasist", "fantasize", "fantasized", "fantasizes", "fantasizing", "fantasm", "fantast", "fantastic", "fantastical", "fantastically", "fantasy", "fantods", "fanweed", "fanwort", "fao", "faq", "faqir", "faquir", "far", "farad", "farandole", "faraway", "farawayness", "farc", "farce", "farcical", "farcically", "fardel", "fare", "fared", "fares", "farewell", "farfalle", "farfetched", "farina", "farinaceous", "faring", "farkleberry", "farm", "farmer", "farmerette", "farmers", "farmhand", "farmhouse", "farming", "farmland", "farmplace", "farms", "farmstead", "farmyard", "farness", "faro", "faroes", "faroese", "farrago", "farragoes", "farrier", "farrow", "farrowing", "farseeing", "farsighted", "farsightedness", "fart", "farther", "farthermost", "farthest", "farthing", "farthingale", "farting", "fartlek", "fasces", "fascia", "fasciae", "fascicle", "fasciculation", "fascicule", "fasciculi", "fasciculus", "fascinate", "fascinated", "fascinates", "fascinating", "fascinatingly", "fascination", "fascioliasis", "fasciolopsiasis", "fasciolosis", "fascism", "fascist", "fascista", "fascistic", "fascists", "fashion", "fashionable", "fashionably", "fashioned", "fashioning", "fashionmonger", "fashions", "Faso", "faso", "fast", "fastball", "fasten", "fastened", "fastener", "fastening", "fastens", "faster", "fastest", "fastidious", "fastidiously", "fastidiousness", "fastigiate", "fasting", "fastnacht", "fastness", "fat", "fatah", "fatal", "fatalism", "fatalist", "fatalistic", "fatalities", "fatality", "fatally", "fatback", "fate", "fated", "fateful", "fatefully", "fates", "fathead", "fatheaded", "father", "fatherhood", "fathering", "fatherland", "fatherless", "fatherlike", "fatherliness", "fatherly", "fathers", "fathom", "fathomable", "fathometer", "fatigability", "fatigue", "fatigued", "fatigues", "fatiguing", "fatihah", "fatimah", "fatism", "fatless", "fatness", "fatso", "fatsoes", "fatted", "fatten", "fattened", "fattening", "fatter", "fattest", "fattier", "fattiest", "fattiness", "fatting", "fattish", "fattism", "fatty", "fatuity", "fatuous", "fatuously", "fatuousness", "fatwa", "fatwah", "faubourg", "faucal", "fauces", "faucet", "fauld", "fault", "faulted", "faultfinder", "faultfinding", "faultier", "faultiest", "faultily", "faultiness", "faulting", "faultless", "faultlessly", "faultlessness", "faults", "faulty", "faun", "fauna", "faunae", "faustian", "faustus", "fauteuil", "fauvism", "fauvist", "faux", "fav", "fave", "faveolate", "favism", "favor", "favorable", "favorableness", "favorably", "favored", "favoring", "favorite", "favorited", "favorites", "favoritism", "favors", "favour", "favourable", "favourableness", "favourably", "favoured", "favouring", "favourite", "favourited", "favourites", "favouritism", "favours", "favus", "fawn", "fawner", "fawning", "fawns", "fax", "faxed", "faxes", "faxing", "fay", "faze", "fazed", "FBI", "fbi", "fcc", "fcs", "fda", "fdic", "fdr", "fealty", "fear", "feared", "fearful", "fearfully", "fearfulness", "fearing", "fearless", "fearlessly", "fearlessness", "fears", "fearsome", "fearsomely", "feasibility", "feasible", "feasibleness", "feasibly", "feast", "feasted", "feasting", "feasts", "feat", "feather", "featherbed", "featherbedded", "featherbedding", "featherbrained", "feathered", "featheredge", "featheredged", "featherfoil", "featheriness", "feathering", "featherless", "featherlike", "feathers", "feathertop", "featherweight", "feathery", "feats", "feature", "featured", "featureless", "features", "featuring", "feb", "FEB.", "Feb.", "feb.", "febricity", "febrifuge", "febrile", "febrility", "february", "fecal", "fecalith", "feces", "feckless", "fecklessly", "fecklessness", "fecula", "feculae", "feculence", "feculent", "fecund", "fecundate", "fecundation", "fecundity", "fed", "fedayee", "fedayeen", "fedelline", "federal", "federalisation", "federalise", "federalism", "federalist", "federalization", "federalize", "federalizing", "federally", "federate", "Federated", "federated", "federation", "federita", "fedora", "feds", "fee", "feeble", "feebleminded", "feeblemindedness", "feebleness", "feebly", "feed", "feedback", "feedbag", "feeder", "feeding", "feedlot", "feeds", "feedstock", "feel", "feeler", "feeling", "feelingly", "feelings", "feels", "fees", "feet", "feetfirst", "feign", "feigned", "feigning", "feigns", "feijoa", "feint", "feinting", "feints", "feist", "feistier", "feistiest", "feisty", "felafel", "feldene", "feldspar", "felicitate", "felicitation", "felicitous", "felicitously", "felicitousness", "felicity", "felid", "feline", "fell", "fella", "fellah", "fellaheen", "fellahin", "fellata", "fellate", "fellating", "fellatio", "fellation", "felled", "feller", "felling", "felloe", "fellow", "fellows", "fellowship", "felly", "felon", "felonies", "felonious", "felons", "felony", "felspar", "felt", "felted", "felucca", "felwort", "fema", "female", "femaleness", "females", "feminine", "feminineness", "femininity", "feminisation", "feminise", "feminised", "feminises", "feminising", "feminism", "feminist", "feminists", "feminization", "feminize", "feminized", "feminizes", "feminizing", "femora", "femoral", "femoris", "femtochemistry", "femtometer", "femtometre", "femtosecond", "femtovolt", "femur", "fen", "fence", "fencelike", "fencer", "fences", "fencesitter", "fencing", "fend", "fended", "fender", "fending", "fends", "fenestella", "fenestellae", "fenestra", "fenestrae", "fenestral", "fenestration", "fengtien", "fenland", "fennel", "fenoprofen", "fentanyl", "fenugreek", "feoff", "feral", "fergusonite", "feria", "feriae", "ferial", "ferine", "fermata", "fermate", "ferment", "fermentable", "fermentation", "fermenting", "fermentologist", "ferments", "fermion", "fermium", "fern", "ferned", "fernless", "fernlike", "ferny", "ferocious", "ferociously", "ferociousness", "ferocity", "ferret", "ferreting", "ferrets", "ferric", "ferricyanide", "ferried", "ferries", "ferrimagnetism", "ferrite", "ferritin", "ferrocerium", "ferroconcrete", "ferrocyanide", "ferromagnetic", "ferromagnetism", "ferrous", "ferrule", "ferry", "ferryboat", "ferrying", "ferryman", "fertile", "fertilisation", "fertilise", "fertilised", "fertiliser", "fertilisers", "fertilises", "fertilising", "fertility", "fertilizable", "fertilization", "fertilize", "fertilized", "fertilizer", "fertilizers", "fertilizes", "fertilizing", "ferula", "ferulae", "ferule", "fervency", "fervent", "fervently", "fervid", "fervidly", "fervidness", "fervor", "fervour", "fescue", "fesse", "festal", "fester", "festering", "festinate", "festination", "festival", "festivals", "festive", "festivities", "festivity", "festoon", "festooned", "festoonery", "festoons", "festschrift", "festschriften", "fet", "fetal", "fetch", "fetched", "fetches", "fetching", "fete", "feterita", "fetes", "fetial", "fetiales", "fetich", "fetichism", "feticide", "fetid", "fetidness", "feting", "fetish", "fetishism", "fetishist", "fetishize", "fetlock", "fetology", "fetometry", "fetoprotein", "fetor", "fetoscope", "fetoscopy", "fetter", "fetterbush", "fettered", "fettle", "fettuccine", "fettuccini", "fetus", "fetuses", "feud", "feudal", "feudalism", "feudalistic", "feudalize", "feudally", "feudatory", "feuded", "feuding", "fever", "fevered", "feverfew", "feverish", "feverishly", "feverishness", "feverous", "feverroot", "few", "fewer", "fewest", "fewness", "fey", "fez", "fezzes", "fha", "fhlmc", "fiance", "fiancee", "fiasco", "fiascoes", "fiat", "fib", "fibbed", "fibber", "fibbing", "fiber", "fiberboard", "fiberglass", "fiberoptic", "fiberoptics", "fibers", "fiberscope", "fibre", "fibreboard", "fibreglass", "fibreoptic", "fibreoptics", "fibres", "fibril", "fibrilla", "fibrillae", "fibrillate", "fibrillates", "fibrillating", "fibrillation", "fibrillose", "fibrin", "fibrinase", "fibrinogen", "fibrinolysin", "fibrinolysis", "fibrinopeptide", "fibrinous", "fibroadenoma", "fibroblast", "fibroblasts", "fibrocalcific", "fibrocartilage", "fibrocartilaginous", "fibroid", "fibroma", "fibromata", "fibromyositis", "fibrosis", "fibrositis", "fibrosity", "fibrous", "fibrousness", "fibs", "fibula", "fibulae", "fica", "fice", "fichu", "fickle", "fickleness", "fico", "ficoes", "fictile", "fiction", "fictional", "fictionalisation", "fictionalisations", "fictionalise", "fictionalised", "fictionalises", "fictionalising", "fictionalization", "fictionalizations", "fictionalize", "fictionalized", "fictionalizes", "fictionalizing", "fictitious", "fictitiously", "fictive", "fiddle", "fiddlehead", "fiddleneck", "fiddler", "fiddlestick", "fiddlier", "fiddliest", "fiddling", "fiddly", "fideicommissa", "fideicommissum", "fidelity", "fidget", "fidgetiness", "fidgeting", "fidgets", "fidgety", "fiducial", "fiduciary", "fief", "fiefdom", "field", "fielded", "fielder", "fieldfare", "fieldhand", "fielding", "fieldmice", "fieldmouse", "fields", "fieldsman", "fieldstone", "fieldwork", "fieldworker", "fiend", "fiendish", "fiendishly", "fierce", "fiercely", "fierceness", "fierily", "fieriness", "fiery", "fiesta", "fife", "fifo", "fifteen", "fifteenth", "fifth", "fifthly", "fifties", "fiftieth", "fifty", "fig", "fig.", "figeater", "figged", "figging", "fight", "fighter", "fighters", "fighting", "fights", "figment", "figs", "figs.", "figural", "figuration", "figurative", "figuratively", "figure", "figured", "figurehead", "figurer", "figures", "figurine", "figurines", "figuring", "figwort", "Fiji", "fiji", "fijian", "fila", "filaggrin", "filago", "filagree", "filament", "filamentlike", "filamentous", "filaments", "filar", "filaree", "filaria", "filarial", "filariasis", "filariiae", "filariid", "filature", "filbert", "filch", "filched", "filching", "file", "filed", "filefish", "filefishes", "filename", "filer", "files", "filet", "fileted", "fileting", "filets", "filial", "filiate", "filiation", "filibuster", "filibusterer", "filicide", "filicinae", "filiform", "filigree", "filing", "filings", "filipino", "fill", "fillagree", "fille", "filled", "filler", "fillet", "filleted", "filleting", "fillets", "filling", "fillip", "fills", "filly", "film", "filmable", "filmdom", "filmed", "filmier", "filmiest", "filming", "filmmaker", "filmmakers", "films", "filmy", "filovirus", "fils", "filter", "filtered", "filtering", "filters", "filth", "filthier", "filthiest", "filthily", "filthiness", "filthy", "filtrate", "filtration", "filum", "fimbria", "fimbriae", "fimbriate", "fin", "finable", "finagle", "finagled", "finagler", "final", "finale", "finalisation", "finalise", "finalised", "finalises", "finalising", "finalist", "finality", "finalization", "finalize", "finalized", "finalizes", "finalizing", "finally", "finals", "finance", "financed", "finances", "financial", "financially", "financier", "financing", "finback", "fincen", "finch", "find", "finder", "finding", "findings", "finds", "fine", "fineable", "fined", "finedraw", "finely", "fineness", "finery", "fines", "finespun", "finesse", "finest", "finger", "fingerboard", "fingerbreadth", "fingered", "fingerflower", "fingering", "fingerless", "fingerlike", "fingerling", "fingermark", "fingernail", "fingernails", "fingerpaint", "fingerpointing", "fingerpost", "fingerprint", "fingerprinting", "fingerprints", "fingerroot", "fingers", "fingerspell", "fingerspelling", "fingerstall", "fingertip", "fingertips", "finial", "finical", "finicky", "fining", "finis", "finish", "finished", "finisher", "finishes", "finishing", "finite", "finitely", "finiteness", "finitude", "fink", "finking", "finks", "Finland", "finland", "finnan", "finned", "finnic", "finnier", "finniest", "finning", "finnish", "finny", "finocchio", "fins", "fiord", "fipple", "fir", "fire", "firearm", "firearms", "fireball", "firebase", "firebird", "fireboat", "firebomb", "firebombing", "firebox", "firebrand", "firebrat", "firebreak", "firebrick", "firebug", "fireclay", "firecracker", "fired", "firedamp", "firedog", "firedrake", "firefighter", "firefighters", "firefly", "fireguard", "firehouse", "firelight", "firelighter", "firelock", "fireman", "fireplace", "fireplug", "firepower", "fireproof", "fireproofing", "fireroom", "fires", "fireside", "firestone", "firestorm", "firethorn", "firetrap", "firewall", "firewater", "fireweed", "firewood", "firework", "fireworks", "firing", "firkin", "firm", "firmament", "firmamental", "firmed", "firmer", "firming", "firmly", "firmness", "firms", "firmware", "First", "first", "firstborn", "firsthand", "firstly", "fisa", "fisc", "fiscal", "fiscally", "fish", "fishbone", "fishbowl", "fisher", "fisheries", "fisherman", "fishery", "fishes", "fisheye", "fishgig", "fishhook", "fishier", "fishiest", "fishily", "fishing", "fishmonger", "fishnet", "fishpaste", "fishplate", "fishpond", "fishtail", "fishwife", "fishwives", "fishworm", "fishy", "fissile", "fission", "fissionable", "fissiparity", "fissiparous", "fissiped", "fissure", "fissures", "fissuring", "fist", "fistfight", "fistful", "fisticuffs", "fistmele", "fists", "fistula", "fistulae", "fistular", "fistulate", "fistulous", "fit", "fitch", "fitful", "fitfully", "fitfulness", "fitly", "fitment", "fitness", "fits", "fitted", "fitter", "fittest", "fitting", "fittingly", "fittingness", "five", "fivefold", "fivepence", "fiver", "fivesome", "fix", "fixate", "fixating", "fixation", "fixative", "fixed", "fixedly", "fixedness", "fixer", "fixes", "fixing", "fixity", "fixture", "fixtures", "fizgig", "fizz", "fizzes", "fizzing", "fizzle", "fizzled", "fizzles", "fizzy", "fjord", "FLA.", "Fla.", "fla.", "flab", "flabbergast", "flabbergasted", "flabbergasting", "flabbier", "flabbiest", "flabbily", "flabbiness", "flabby", "flabella", "flabellum", "flaccid", "flaccidity", "flack", "flag", "flagella", "flagellant", "flagellata", "flagellate", "flagellated", "flagellation", "flagellum", "flageolet", "flagfish", "flagged", "flaggier", "flaggiest", "flagging", "flaggy", "flagitious", "flagon", "flagpole", "flagrant", "flagrantly", "flagroot", "flags", "flagship", "flagstaff", "flagstaves", "flagstone", "flagyl", "flail", "flailing", "flair", "flak", "flake", "flakeing", "flakes", "flakey", "flakier", "flakiest", "flakiness", "flaking", "flaky", "flam", "flambe", "flambeau", "flambeaux", "flamboyance", "flamboyant", "flamboyantly", "flame", "flamed", "flamefish", "flameflower", "flamen", "flamenco", "flameproof", "flames", "flamethrower", "flamines", "flaming", "flamingo", "flamingoes", "flammability", "flammable", "flammed", "flamming", "flams", "flan", "flange", "flank", "flanked", "flanker", "flanking", "flanks", "flannel", "flannelbush", "flannelette", "flannelled", "flannelling", "flap", "flapcake", "flapjack", "flapped", "flapper", "flapping", "flaps", "flare", "flared", "flares", "flaring", "flash", "flashback", "flashbacks", "flashboard", "flashboarding", "flashbulb", "flashcard", "flashed", "flasher", "flashes", "flashflood", "flashgun", "flashier", "flashiest", "flashily", "flashiness", "flashing", "flashlight", "flashover", "flashpoint", "flashy", "flask", "flaskful", "flasks", "flat", "flatbed", "flatboat", "flatbottom", "flatbottomed", "flatbread", "flatbrod", "flatcar", "flatfeet", "flatfish", "flatfishes", "flatfoot", "flatfooted", "flathead", "flatiron", "flatlet", "flatly", "flatmate", "flatness", "flats", "flatted", "flatten", "flattened", "flattening", "flattens", "flatter", "flatterer", "flattering", "flattery", "flattest", "flatting", "flattop", "flatulence", "flatulency", "flatulent", "flatus", "flatware", "flatwork", "flatworm", "flaunt", "flauntier", "flauntiest", "flaunting", "flaunts", "flaunty", "flautist", "flautists", "flavin", "flavivirus", "flavone", "flavonoid", "flavor", "flavored", "flavorer", "flavorful", "flavoring", "flavorings", "flavorless", "flavorlessness", "flavorous", "flavors", "flavorsome", "flavorsomeness", "flavour", "flavoured", "flavourer", "flavourful", "flavouring", "flavourings", "flavourless", "flavourlessness", "flavourous", "flavours", "flavoursome", "flavoursomeness", "flaw", "flawed", "flawless", "flawlessly", "flawlessness", "flaws", "flax", "flaxedil", "flaxen", "flaxseed", "flay", "flaying", "flays", "flea", "fleabag", "fleabane", "fleapit", "fleas", "fleawort", "flecainide", "fleck", "flecked", "flection", "fled", "fledge", "fledged", "fledgeless", "fledgeling", "fledges", "fledgier", "fledgiest", "fledging", "fledgling", "fledgy", "flee", "fleece", "fleeceable", "fleeced", "fleecier", "fleeciest", "fleecing", "fleecy", "fleeing", "fleer", "flees", "fleet", "fleeting", "fleetingness", "fleetly", "fleetness", "flemish", "flense", "flesh", "fleshier", "fleshiest", "fleshiness", "fleshing", "fleshlier", "fleshliest", "fleshly", "fleshy", "fletc", "flew", "flex", "flexeril", "flexes", "flexibility", "flexible", "flexibleness", "flexibly", "flexile", "flexing", "flexion", "flexor", "flexuous", "flexure", "flibbertigibbet", "flick", "flicker", "flickered", "flickering", "flickers", "flickertail", "flicking", "flicks", "flier", "fliers", "flies", "flight", "flighted", "flightier", "flightiest", "flightiness", "flightless", "flights", "flighty", "flimflam", "flimflammed", "flimflamming", "flimsier", "flimsiest", "flimsily", "flimsiness", "flimsy", "flinch", "flinches", "flinching", "flindosa", "flindosy", "fling", "flinging", "flings", "flint", "flinthead", "flintier", "flintiest", "flintlock", "flintstone", "flinty", "flip", "flippancy", "flippant", "flippantly", "flipped", "flipper", "flipping", "flips", "flirt", "flirtation", "flirtatious", "flirtatiously", "flirted", "flirting", "flirts", "flit", "flitch", "flits", "flitted", "flitter", "flittering", "flittermice", "flittermouse", "flitting", "flnc", "float", "floatation", "floated", "floater", "floatier", "floatiest", "floating", "floatplane", "floats", "floaty", "floc", "flocci", "floccose", "flocculate", "flocculation", "floccule", "flocculent", "flocculi", "flocculus", "floccus", "flock", "flocked", "flocking", "flocks", "floe", "flog", "flogged", "flogger", "flogging", "flogs", "flood", "flooded", "floodgate", "floodhead", "flooding", "floodlight", "floodlighted", "floodlighting", "floodlit", "floodplain", "floods", "floor", "floorboard", "floored", "flooring", "floors", "floorshow", "floorwalker", "floozie", "floozy", "flop", "flophouse", "flopped", "floppier", "floppiest", "flopping", "floppy", "flops", "flora", "florae", "floral", "floreant.", "floreat", "florence", "florentine", "florescence", "floret", "florets", "floricultural", "floriculture", "florid", "florida", "floridity", "floridly", "floridness", "florilegia", "florilegium", "florin", "florist", "floss", "flosses", "flossier", "flossiest", "flossing", "flossy", "flotation", "flotilla", "flotsam", "flounce", "flounces", "flouncing", "flounder", "floundered", "floundering", "flounders", "flour", "flourish", "flourished", "flourishes", "flourishing", "floury", "flout", "flouter", "flouting", "flouts", "flow", "flowage", "flowchart", "flowed", "flower", "flowerbed", "flowered", "floweret", "flowering", "flowerless", "flowerpot", "flowers", "flowery", "flowing", "flown", "flows", "floxuridine", "flu", "flub", "flubbed", "flubbing", "flubs", "fluctuate", "fluctuated", "fluctuates", "fluctuating", "fluctuation", "fluctuations", "flue", "fluegelhorn", "fluency", "fluent", "fluently", "fluff", "fluffier", "fluffiest", "fluffiness", "fluffing", "fluffs", "fluffy", "flugelhorn", "fluid", "fluidity", "fluidness", "fluidounce", "fluidram", "fluids", "fluke", "flukey", "flukier", "flukiest", "fluky", "flume", "flummery", "flummox", "flummoxes", "flump", "flunitrazepan", "flunk", "flunkey", "flunking", "flunks", "flunky", "fluor", "fluorapatite", "fluoresce", "fluorescein", "fluoresceine", "fluorescence", "fluorescent", "fluorescing", "fluoridate", "fluoridation", "fluoride", "fluoridisation", "fluoridise", "fluoridization", "fluoridize", "fluorine", "fluorite", "fluoroboride", "fluorocarbon", "fluorochrome", "fluoroform", "fluoroscope", "fluoroscopy", "fluorosis", "fluorouracil", "fluorspar", "fluosilicate", "fluoxetine", "fluphenazine", "flurazepam", "flurbiprofen", "flurried", "flurry", "flush", "flushed", "flushes", "flushing", "fluster", "flustered", "flute", "fluting", "flutist", "flutists", "flutter", "fluttering", "flutters", "fluvastatin", "fluvial", "flux", "fluxes", "fluxion", "fluxmeter", "fly", "flyaway", "flyblown", "flybridge", "flycatcher", "flyer", "flyfish", "flyfishing", "flying", "flyleaf", "flyleaves", "flyover", "flypaper", "flypast", "flyspeck", "flyswat", "flyswatter", "flytrap", "flyway", "flyweight", "flywheel", "fmri", "fnma", "fo", "foal", "foam", "foamflower", "foamier", "foamiest", "foaminess", "foaming", "foams", "foamy", "fob", "fobbed", "fobbing", "focal", "focalisation", "focalise", "focalization", "focalize", "focally", "foci", "focus", "focused", "focuses", "focusing", "focussed", "focussing", "fodder", "foe", "foehn", "foeman", "foes", "foetal", "foetid", "foetology", "foetometry", "foetoprotein", "foetor", "foetoscope", "foetoscopy", "foetus", "foetuses", "fog", "fogbank", "fogbound", "fogey", "fogged", "foggier", "foggiest", "fogginess", "fogging", "foggy", "foghorn", "foglamp", "fogs", "fogsignal", "fogy", "fogyish", "fohn", "foible", "foil", "foiled", "foiling", "foils", "foist", "foisting", "foists", "folacin", "folate", "Fold", "fold", "foldable", "foldaway", "folded", "folder", "folderal", "folderol", "folding", "foldout", "folds", "folia", "foliaceous", "foliage", "foliaged", "foliate", "foliated", "foliation", "folie", "folio", "foliolate", "foliose", "folium", "folk", "folklore", "folks", "folksier", "folksiest", "folksong", "folksy", "folktale", "follicle", "follicles", "follicular", "folliculitis", "follow", "followed", "follower", "followers", "following", "follows", "followup", "folly", "foment", "fomentation", "fomenter", "fomenting", "foments", "fomite", "fomorian", "fond", "fondant", "fondest", "fondle", "fondler", "fondles", "fondling", "fondly", "fondness", "fondu", "fondue", "font", "fontanel", "fontanelle", "food", "foodie", "foodless", "foods", "foodstuff", "foodstuffs", "fool", "fooled", "foolery", "foolhardier", "foolhardiest", "foolhardiness", "foolhardy", "fooling", "foolish", "foolishly", "foolishness", "foolproof", "fools", "foolscap", "foot", "footage", "football", "footballer", "footbath", "footboard", "footbridge", "footcandle", "footed", "footedness", "footer", "footfall", "footfault", "footgear", "foothill", "foothills", "foothold", "footing", "footle", "footless", "footlights", "footling", "footlocker", "footloose", "footman", "footmark", "footnote", "footnoted", "footnotes", "footnoting", "footpad", "footpath", "footplate", "footprint", "footprints", "footrace", "footrest", "foots", "footslog", "footslogged", "footslogger", "footslogging", "footsore", "footstall", "footstep", "footsteps", "footstool", "footsure", "footwall", "footwear", "footwork", "fop", "foppish", "foppishness", "For", "for", "fora", "forage", "forager", "forages", "foraging", "foram", "foramen", "foramina", "foraminifer", "foray", "forays", "forbade", "forbear", "forbearance", "forbearing", "forbid", "forbiddance", "forbidden", "forbidding", "forbiddingly", "forbids", "force", "forced", "forceful", "forcefully", "forcefulness", "forceless", "forcemeat", "forceps", "forces", "forcible", "forcibly", "forcing", "forcipate", "ford", "fordable", "fording", "fore", "forearm", "forebear", "forebode", "forebodes", "foreboding", "forebrain", "forecast", "forecaster", "forecasters", "forecasting", "forecastle", "forecasts", "foreclose", "foreclosed", "forecloses", "foreclosing", "foreclosure", "foreclosures", "forecourt", "foredate", "foredeck", "foredge", "foredoom", "forefather", "forefeet", "forefend", "forefinger", "forefoot", "forefront", "foregather", "forego", "foregoes", "foregoing", "foregone", "foreground", "foregrounding", "forehand", "forehanded", "forehead", "foreign", "foreigner", "foreigners", "foreignness", "foreknow", "foreknowledge", "forelady", "foreland", "foreleg", "forelimb", "forelock", "foreman", "foremanship", "foremast", "foremilk", "foremost", "foremother", "forename", "forenoon", "forensic", "forensics", "foreordain", "foreordained", "foreordination", "forepart", "forepaw", "foreperson", "foreplay", "forequarter", "forerun", "forerunner", "forerunning", "foreruns", "foresail", "foresaw", "foresee", "foreseeable", "foreseeing", "foreseen", "foresees", "foreshadow", "foreshadowed", "foreshadowing", "foreshadows", "foreshank", "foreshock", "foreshore", "foreshorten", "foreshortening", "foreshow", "foresight", "foresighted", "foresightedness", "foresightful", "foresightfulness", "foreskin", "forest", "forestage", "forestall", "forestalling", "forestalls", "forestay", "forested", "forester", "forestiera", "foresting", "forestry", "forests", "foreswear", "foreswearing", "foretaste", "foreteeth", "foretell", "foretelling", "foretells", "forethought", "forethoughtful", "foretoken", "foretooth", "foretop", "forever", "forevermore", "forewarn", "forewarning", "forewarns", "forewing", "forewoman", "foreword", "forfeit", "forfeited", "forfeiting", "forfeits", "forfeiture", "forfend", "forficate", "forgather", "forge", "forged", "forger", "forgery", "forges", "forget", "forgetful", "forgetfully", "forgetfulness", "forgets", "forgettable", "forgetting", "forging", "forgivable", "forgivably", "forgive", "forgiven", "forgiveness", "forgiver", "forgives", "forgiving", "forgivingly", "forgivingness", "forgo", "forgoes", "forgoing", "forgot", "forgotten", "forint", "fork", "forked", "forking", "forklift", "forks", "forlorn", "forlornly", "forlornness", "form", "formal", "formaldehyde", "formalin", "formalisation", "formalise", "formalised", "formalises", "formalising", "formalism", "formalistic", "formality", "formalization", "formalize", "formalized", "formalizes", "formalizing", "formally", "formalness", "formalwear", "format", "formation", "formations", "formative", "formats", "formatted", "formatting", "formed", "former", "formerly", "formic", "formicaria", "formicarium", "formicary", "formicate", "formication", "formidability", "formidable", "formidably", "forming", "formless", "formlessly", "formol", "formosa", "formosan", "forms", "formula", "formulae", "formulaic", "formularise", "formularize", "formulary", "formulas", "formulate", "formulated", "formulates", "formulating", "formulation", "formulations", "fornicate", "fornicates", "fornicating", "fornication", "fornicator", "fornicatress", "fornices", "fornix", "forrad", "forrader", "forrard", "forsake", "forsaken", "forsakes", "forsaking", "forsooth", "forswear", "forswearing", "forsythia", "fort", "fortaz", "forte", "fortemente", "fortes", "forth", "forthcoming", "forthcomingness", "forthright", "forthrightly", "forthrightness", "forthwith", "forties", "fortieth", "fortification", "fortifications", "fortified", "fortifies", "fortify", "fortifying", "fortis", "fortissimo", "fortitude", "fortnight", "fortnightly", "fortran", "fortress", "fortuitous", "fortuitously", "fortuitousness", "fortuity", "fortunate", "fortunately", "fortune", "fortunes", "fortuneteller", "fortunetelling", "forty", "forum", "forums", "forward", "forwarding", "forwardness", "forwards", "foryml", "fosamax", "fossa", "fossae", "fosse", "fossil", "fossiliferous", "fossilisation", "fossilise", "fossilised", "fossilises", "fossilising", "fossilist", "fossilization", "fossilize", "fossilized", "fossilizes", "fossilizing", "fossilology", "fossils", "fossorial", "foster", "fosterage", "fostered", "fostering", "fosterling", "fosters", "fothergilla", "fots", "fought", "foul", "foulard", "fouled", "foully", "foulmart", "foulness", "foumart", "found", "foundation", "foundations", "founded", "founder", "foundered", "foundering", "founders", "founding", "foundling", "foundress", "foundry", "fount", "fountain", "fountainhead", "fountains", "four", "four-fold", "fourfold", "fourhanded", "fourpence", "fourpenny", "fourscore", "foursome", "foursquare", "fourteen", "fourteenth", "fourth", "fourthly", "fovea", "foveae", "foveola", "foveolae", "fowl", "fowler", "fox", "foxberry", "foxglove", "foxhole", "foxhound", "foxhunt", "foxhunting", "foxier", "foxiest", "foxily", "foxiness", "foxtail", "foxtrot", "foxtrots", "foxtrotted", "foxtrotting", "foxy", "foyer", "fpd", "fps", "fr", "fracas", "fractal", "fraction", "fractional", "fractionate", "fractionating", "fractionation", "fractioning", "fractions", "fractious", "fractiously", "fractiousness", "fractocumuli", "fractocumulus", "fractostrati", "fractostratus", "fracture", "fractured", "fractures", "fracturing", "fradicin", "fraena", "fraenum", "fragile", "fragility", "fragment", "fragmental", "fragmentary", "fragmentation", "fragmented", "fragmenting", "fragmentise", "fragmentize", "fragments", "fragrance", "fragrancy", "fragrant", "frail", "frailness", "frailty", "fraise", "frambesia", "framboesia", "framboise", "frame", "framed", "framer", "frames", "framework", "framing", "franc", "France", "france", "franchise", "franchised", "franchises", "franchising", "franciscan", "francium", "francophil", "frangibility", "frangible", "frangibleness", "frangipane", "frangipani", "frangipanni", "Frank", "frank", "frankfort", "frankfurt", "frankfurter", "frankincense", "frankish", "franklin", "frankly", "frankness", "frantic", "frantically", "frap", "frappe", "frapped", "frapping", "fraps", "frat", "fratchier", "fratchiest", "fratchy", "fraternal", "fraternally", "fraternisation", "fraternise", "fraternised", "fraternises", "fraternising", "fraternity", "fraternization", "fraternize", "fraternized", "fraternizes", "fraternizing", "fratricide", "frau", "fraud", "frauds", "fraudster", "fraudsters", "fraudulence", "fraudulent", "fraudulently", "frauen", "fraught", "fraxinella", "fray", "frayed", "fraying", "frazzle", "freak", "freaked", "freakier", "freakiest", "freaking", "freakish", "freakishly", "freakishness", "freaks", "freaky", "freckle", "freckled", "free", "freebee", "freebie", "freebooter", "freeborn", "freed", "freedman", "freedom", "freedoms", "freedwoman", "freehand", "freehanded", "freehearted", "freehold", "freeholder", "freeing", "freelance", "freelancer", "freelancing", "freeload", "freeloader", "freely", "freemail", "freeman", "freer", "frees", "freesia", "freest", "freestanding", "freestone", "freestyle", "freetail", "freethinker", "freethinking", "freeware", "freeway", "freeways", "freewheel", "freewheeler", "freewheeling", "freewill", "freewoman", "freeze", "freezer", "freezes", "freezing", "freight", "freightage", "freighter", "fremontia", "frena", "French", "french", "frenchier", "frenchiest", "frenchified", "frenchify", "frenching", "frenchwoman", "frenchy", "frenetic", "frenetically", "frenula", "frenulum", "frenum", "frenzied", "frenziedly", "frenzy", "freon", "frequence", "frequencies", "frequency", "frequent", "frequentative", "frequenter", "frequenting", "frequently", "frequents", "fresco", "frescoes", "fresh", "freshen", "freshener", "fresher", "freshet", "freshly", "freshman", "freshness", "freshwater", "fress", "fret", "fretful", "fretfully", "fretfulness", "frets", "fretsaw", "fretted", "fretting", "fretwork", "freudian", "freyja", "freyr", "frg", "fri", "FRI.", "Fri.", "fri.", "friability", "friable", "friar", "friary", "fricandeau", "fricandeaux", "fricando", "fricandoes", "fricassee", "fricative", "friction", "frictional", "frictionless", "friday", "fridge", "fried", "friedcake", "friend", "friendless", "friendlessness", "friendlier", "friendliest", "friendliness", "friendly", "friends", "friendship", "friendships", "frier", "fries", "frieze", "frig", "frigate", "frigga", "frigged", "frigging", "fright", "frighten", "frightened", "frightening", "frighteningly", "frightens", "frightful", "frightfully", "frightfulness", "frigid", "frigidity", "frigidly", "frigidness", "frigorific", "frigs", "frijol", "frijole", "frijoles", "frijolillo", "frijolito", "frikin", "frill", "frilled", "frilly", "fringe", "fringed", "fringepod", "fringes", "fringing", "fringy", "frippery", "frisian", "frisk", "friskier", "friskiest", "friskily", "friskiness", "frisking", "frisks", "frisky", "frisson", "frit", "fritillary", "frittata", "fritted", "fritter", "fritting", "friuli", "frivol", "frivolity", "frivolled", "frivolling", "frivolous", "frivolously", "frivolousness", "frizz", "frizzes", "frizzier", "frizziest", "frizzle", "frizzlier", "frizzliest", "frizzly", "frizzy", "frock", "frog", "frogbit", "frogfish", "frogfishes", "frogged", "frogging", "froghopper", "frogman", "frogmarch", "frogmouth", "frogs", "frolic", "frolicing", "frolicked", "frolicking", "frolicky", "frolicsome", "frolicsomeness", "From", "from", "frond", "frons", "front", "frontage", "frontal", "frontally", "frontbencher", "frontes", "frontier", "frontiersman", "frontierswoman", "fronting", "frontispiece", "frontlet", "frontmost", "fronts", "frontstall", "frontward", "frontwards", "frore", "frost", "frostbite", "frostbitten", "frosted", "frostian", "frostier", "frostiest", "frostily", "frostiness", "frosting", "frosts", "frostweed", "frostwort", "frosty", "froth", "frothily", "frothiness", "frothing", "froths", "frothy", "frottage", "frotteur", "frouzier", "frouziest", "frouzy", "froward", "frown", "frowning", "frowningly", "frowns", "frowsier", "frowsiest", "frowsty", "frowsy", "frowzier", "frowziest", "frowzled", "frowzy", "froze", "frozen", "fructification", "fructified", "fructifies", "fructify", "fructifying", "fructose", "fructosuria", "frugal", "frugality", "frugally", "frugalness", "fruit", "fruitage", "fruitcake", "fruiterer", "fruitful", "fruitfully", "fruitfulness", "fruitier", "fruitiest", "fruiting", "fruition", "fruitless", "fruitlessly", "fruitlessness", "fruitlet", "fruits", "fruitwood", "fruity", "frumenty", "frump", "frumpily", "frumpish", "frumpishly", "frumpy", "frunze", "frusta", "frustrate", "frustrated", "frustrates", "frustrating", "frustration", "frustrations", "frustrative", "frustum", "fruticose", "fruticulose", "fry", "fryer", "frying", "frypan", "fsb", "fsh", "ft", "FT.", "Ft.", "ft.", "ftc", "fthm", "fto", "ftp", "ftw", "fuchsia", "fuci", "fuck", "fucked", "fucker", "fuckers", "fuckface", "fuckhead", "fuckin", "fucking", "fucks", "fucktard", "fuckup", "fucoid", "fucus", "fud", "fuddle", "fuddled", "fudge", "fuel", "fueled", "fueling", "fuelled", "fuelling", "fuels", "fug", "fugacious", "fugaciousness", "fugacity", "fugal", "fugally", "fuggy", "fugitive", "fugleman", "fugly", "fugo", "fugu", "fugue", "fujinoyama", "fujiyama", "fuked", "fukien", "fuking", "fukkianese", "ful", "fulah", "fulbe", "fulcra", "fulcrum", "fulfil", "fulfill", "fulfilled", "fulfilling", "fulfillment", "fulfills", "fulfilment", "fulfils", "fulgent", "fulgid", "fulgurant", "fulgurating", "fulgurous", "full", "fullback", "fuller", "fullerene", "fullest", "fullness", "fully", "fulmar", "fulminant", "fulminate", "fulminates", "fulminating", "fulmination", "fulsome", "fulsomely", "fulsomeness", "fulvicin", "fumatoria", "fumatorium", "fumble", "fumbler", "fumbles", "fumbling", "fume", "fumed", "fumeroot", "fumes", "fumewort", "fumigant", "fumigate", "fumigation", "fumigator", "fuming", "fumitory", "fun", "funambulism", "funambulist", "function", "functional", "functionalism", "functionalist", "functionality", "functionally", "functionary", "functioned", "functioning", "functions", "fund", "fundament", "fundamental", "fundamentalism", "fundamentalist", "fundamentalistic", "fundamentalists", "fundamentally", "fundamentals", "funded", "fundi", "funding", "fundraise", "fundraiser", "fundraises", "fundraising", "funds", "fundus", "funeral", "funerals", "funerary", "funereal", "funfair", "fungal", "fungi", "fungibility", "fungible", "fungicidal", "fungicide", "fungoid", "fungous", "fungus", "funguslike", "funicle", "funicular", "funiculi", "funiculitis", "funiculus", "funk", "funka", "funkaceae", "funkier", "funkiest", "funky", "funned", "funnel", "funneled", "funneling", "funnelled", "funnelling", "funnels", "funnier", "funniest", "funnily", "funniness", "funning", "funny", "funrun", "fuqra", "fur", "furan", "furane", "furbelow", "furbish", "furbishes", "furcate", "furcation", "furcula", "furculum", "furfur", "furfural", "furfuraldehyde", "furfuran", "furfures", "furious", "furiously", "furiousness", "furl", "furled", "furlike", "furlong", "furlough", "furloughed", "furloughs", "furnace", "furnish", "furnished", "furnishes", "furnishing", "furnishings", "furniture", "furor", "furore", "furosemide", "furred", "furrier", "furriest", "furring", "furrow", "furrowed", "furrowing", "furrows", "furry", "further", "furtherance", "furthering", "furthermore", "furthermost", "furthers", "furthest", "furtive", "furtively", "furtiveness", "furuncle", "furunculosis", "fury", "furze", "fusain", "fusanus", "fuschia", "fuscous", "fuse", "fused", "fusee", "fuselage", "fusible", "fusiform", "fusil", "fusilier", "fusillade", "fusion", "fusions", "fuss", "fusses", "fussier", "fussiest", "fussily", "fussiness", "fussing", "fusspot", "fussy", "fustian", "fustier", "fustiest", "fustigate", "fusty", "futile", "futilely", "futility", "futon", "future", "futureless", "futures", "futurism", "futurist", "futuristic", "futuristics", "futurity", "futurology", "fuze", "fuzee", "fuzz", "fuzzed", "fuzzier", "fuzziest", "fuzziness", "fuzzy", "fws", "g.i.", "GA.", "Ga.", "ga.", "gaap", "gab", "gaba", "gabapentin", "gabardine", "gabbier", "gabbiest", "gabble", "gabbro", "gabby", "gaberdine", "gabfest", "gabled", "Gabon", "gabon", "gabonese", "gabun", "gad", "gadabout", "gaddafi", "gadded", "gaddi", "gadding", "gadfly", "gadget", "gadgeteer", "gadgetry", "gadgets", "gadoid", "gadolinite", "gadolinium", "gaelic", "gaff", "gaffe", "gaffer", "gaffsail", "gag", "gaga", "gage", "gaged", "gages", "gagged", "gagging", "gaggle", "gaging", "gagman", "gags", "gagster", "gagwriter", "gaia", "gaiety", "gaillardia", "gaily", "gain", "gained", "gainer", "gainful", "gainfully", "gainfulness", "gaining", "gainlessly", "gainly", "gains", "gainsay", "gainsaying", "gaiseric", "gait", "gaiter", "gaius", "gal", "GAL.", "Gal.", "gal.", "gala", "galactagogue", "galactic", "galactocele", "galactose", "galactosemia", "galactosis", "galago", "galangal", "galantine", "galapagos", "galax", "galaxy", "galbanum", "galbulus", "gale", "galea", "galeae", "galena", "galere", "galilaean", "galilean", "galingale", "gall", "gallamine", "gallant", "gallantly", "gallantry", "gallberry", "gallbladder", "galled", "galleon", "galleries", "gallery", "galley", "gallfly", "gallia", "gallic", "gallican", "gallimaufry", "gallina", "gallinacean", "gallinaceous", "galling", "gallinule", "gallium", "gallivant", "gallivanting", "gallon", "gallons", "gallop", "galloping", "gallops", "gallous", "gallows", "gallstone", "galoot", "galore", "galosh", "galumph", "galumphing", "galvanic", "galvanisation", "galvanise", "galvanised", "galvaniser", "galvanises", "galvanising", "galvanism", "galvanization", "galvanize", "galvanized", "galvanizer", "galvanizes", "galvanizing", "galvanometer", "galwegian", "gam", "gamba", "gambado", "gambadoes", "Gambia", "gambia", "gambian", "gambist", "gambit", "gamble", "gambler", "gamblers", "gambles", "gambling", "gamboge", "gambol", "gamboled", "gamboling", "gambolled", "gambolling", "gambols", "gambrel", "game", "gamebag", "gameboard", "gamecock", "gamekeeper", "gamelan", "gamely", "gameness", "games", "gamesmanship", "gametangia", "gametangium", "gamete", "gametocyte", "gametoecia", "gametoecium", "gametogenesis", "gametophore", "gametophyte", "gamey", "gamier", "gamiest", "gamin", "gamine", "gaminess", "gaming", "gamma", "gammadia", "gammadion", "gammed", "gammier", "gammiest", "gamming", "gammon", "gammopathy", "gammy", "gamopetalous", "gamp", "gamut", "gamy", "ganapati", "gand", "gander", "gandhian", "ganef", "ganesa", "ganesha", "gang", "gangboard", "gangdom", "ganger", "ganging", "gangland", "ganglia", "gangling", "gangliocyte", "ganglion", "gangly", "gangplank", "gangrene", "gangrenous", "gangs", "gangsaw", "gangsta", "gangster", "gangsters", "gangway", "ganja", "gannet", "ganof", "ganoid", "ganoin", "ganoine", "gantanol", "gantlet", "gantrisin", "gantry", "gao", "gaol", "gaolbird", "gaolbirds", "gaolbreak", "gaolbreaks", "gaoled", "gaoler", "gaolers", "gaoling", "gaols", "gap", "gape", "gaped", "gaping", "gapped", "gapping", "gaps", "gar", "garage", "garages", "garambulla", "garamycin", "garand", "garb", "garbage", "garbageman", "garbanzo", "garbed", "garble", "garbled", "garbles", "garbling", "garboard", "garboil", "garbology", "gardant", "garden", "gardener", "gardenia", "gardening", "gardens", "garfish", "garfishes", "garganey", "gargantuan", "garget", "gargle", "gargoyle", "gargoylism", "gari", "garish", "garishly", "garishness", "garland", "garlic", "garlicky", "garment", "garmented", "garmentless", "garmentmaker", "garments", "garner", "garnered", "garnering", "garners", "garnet", "garnierite", "garnish", "garnishee", "garnishes", "garnishing", "garnishment", "garotte", "garpike", "garret", "garrison", "garrote", "garroter", "garroting", "garrotte", "garrotter", "garrotting", "garrulity", "garrulous", "garrulously", "garrulousness", "garter", "gas", "gasbag", "gasconade", "gascony", "gaseous", "gaseousness", "gases", "gasfield", "gash", "gasification", "gasified", "gasifies", "gasify", "gasing", "gasket", "gaskin", "gaslight", "gasman", "gasmask", "gasohol", "gasolene", "gasoline", "gasometer", "gasp", "gaspar", "gasped", "gasping", "gasps", "gassed", "gasses", "gassier", "gassiest", "gassing", "gassy", "gasteromycete", "gasteropoda", "gastralgia", "gastrectomy", "gastric", "gastrin", "gastritis", "gastrocnemius", "gastroduodenal", "gastroenteritis", "gastroenterologist", "gastroenterology", "gastroenterostomy", "gastroesophageal", "gastrogavage", "gastrointestinal", "gastrolobium", "gastromy", "gastromycete", "gastronome", "gastronomic", "gastronomical", "gastronomy", "gastropod", "gastroscope", "gastroscopy", "gastrostomy", "gastrula", "gastrulae", "gastrulation", "gasworks", "gat", "gate", "gateau", "gateaux", "gatecrasher", "gatefold", "gatehouse", "gatekeeper", "gatepost", "Gates", "gates", "gateway", "gather", "gathered", "gatherer", "gathering", "gatherings", "gathers", "gating", "gator", "gatt", "gauche", "gaucheness", "gaucherie", "gaucho", "gaud", "gaudery", "gaudier", "gaudiest", "gaudily", "gaudiness", "gaudy", "gauffer", "gauge", "gauged", "gauges", "gauging", "gauguinesque", "gaumless", "gaunt", "gauntlet", "gauntleted", "gauntness", "gauntry", "gaur", "gaussian", "gaussmeter", "gautama", "gauze", "gauzier", "gauziest", "gauzy", "gavage", "gave", "gavel", "gavial", "gavotte", "gawk", "gawker", "gawkier", "gawkiest", "gawkiness", "gawking", "gawky", "gawp", "gay", "gayal", "gayfeather", "gayly", "gayness", "gays", "gaywings", "gaza", "gazania", "gaze", "gazebo", "gazeboes", "gazelle", "gazes", "gazette", "gazetteer", "gazillion", "gazing", "gazpacho", "gazump", "gbit", "gbp", "gca", "gcse", "gdp", "gean", "gear", "gearbox", "geared", "gearing", "gears", "gearset", "gearshift", "gearstick", "geartrain", "gecko", "geckoes", "gee", "geebung", "geek", "geeks", "geese", "geezer", "geezerhood", "gegenschein", "geing", "geisha", "gel", "gelatin", "gelatine", "gelatinise", "gelatinize", "gelatinlike", "gelatinous", "gelatinousness", "geld", "gelded", "gelding", "gelechiid", "gelid", "gelidity", "gelignite", "gelled", "gelling", "gelly", "gels", "gelsemia", "gelsemium", "gelt", "gem", "gemboks", "gembucks", "gemeinschaft", "gemeinschaften", "gemfibrozil", "geminate", "gemination", "gemma", "gemmae", "gemmation", "gemmed", "gemmiferous", "gemming", "gemmule", "gemonil", "gempylid", "gems", "gemsbok", "gemsbuck", "gemstone", "gen", "GEN.", "Gen.", "gen.", "gendarme", "gendarmerie", "gendarmery", "gender", "gene", "genealogic", "genealogical", "genealogically", "genealogist", "genealogy", "genera", "general", "generalcy", "generalisation", "generalisations", "generalise", "generalised", "generalises", "generalising", "generalissimo", "generalist", "generality", "generalization", "generalizations", "generalize", "generalized", "generalizes", "generalizing", "generally", "generals", "generalship", "generate", "generated", "generates", "generating", "generation", "generational", "generations", "generative", "generator", "generators", "generatrices", "generatrix", "generic", "generically", "generosity", "generous", "generously", "generousness", "genes", "geneses", "genesis", "genetic", "genetical", "genetically", "geneticism", "geneticist", "genetics", "geneve", "genf", "genial", "geniality", "genially", "genic", "geniculate", "genie", "genii", "genip", "genipa", "genipap", "genital", "genitalia", "genitals", "genitive", "genitor", "genitourinary", "genius", "genlisea", "genocide", "genoese", "genoise", "genome", "genomes", "genomics", "genotype", "genotypes", "genotypic", "genotypical", "genova", "genovese", "genre", "genres", "gentamicin", "genteel", "genteelly", "genteelness", "gentian", "gentile", "gentility", "gentle", "gentlefolk", "gentleman", "gentlemanlike", "gentlemanly", "gentleness", "gentler", "gentlewoman", "gently", "gentrification", "gentrifies", "gentrify", "gentrifying", "gentry", "genu", "genua", "genuflect", "genuflecting", "genuflection", "genuflects", "genuflexion", "genuine", "genuinely", "genuineness", "genus", "geocentric", "geochemistry", "geode", "geodesic", "geodesical", "geodesy", "geodetic", "geoduck", "geographer", "geographic", "geographical", "geographically", "geographics", "geography", "geologic", "geological", "geologically", "geologist", "geology", "geomancer", "geomancy", "geometer", "geometric", "geometrical", "geometrically", "geometrician", "geometrid", "geometry", "geomorphologic", "geomorphological", "geomorphology", "geophagia", "geophagy", "geophysical", "geophysicist", "geophysics", "geophyte", "geophytic", "geopolitical", "geopolitics", "georgette", "georgia", "georgian", "geosphere", "geostationary", "geostrategic", "geostrategy", "geosynchronous", "geothermal", "geothermally", "geothermic", "geotropism", "geranium", "gerardia", "gerbert", "gerbil", "gerbille", "gerenuk", "gerfalcon", "geriatric", "geriatrician", "geriatrics", "germ", "german", "germander", "germane", "germaneness", "germanic", "germanite", "germanium", "germen", "germfree", "germicidal", "germicide", "germina", "germinal", "germinate", "germinates", "germinating", "germination", "germs", "germy", "gerontocracy", "gerontological", "gerontologist", "gerontology", "gerridae", "gerrymander", "gerund", "gerundial", "gesellschaft", "gesellschaften", "gesneria", "gesneriad", "gesso", "gestalt", "gestalten", "gestate", "gestation", "gestational", "gesticulate", "gesticulates", "gesticulating", "gesticulation", "gestural", "gesture", "gestured", "gestures", "gesturing", "get", "geta", "getable", "getatable", "getaway", "gets", "gettable", "getting", "getup", "gewgaw", "geyser", "Ghana", "ghana", "ghanaian", "ghanese", "ghanian", "gharry", "ghastlier", "ghastliest", "ghastliness", "ghastly", "ghat", "ghatti", "ghb", "ghee", "ghent", "gherkin", "ghetto", "ghettoes", "ghettoise", "ghettoised", "ghettoises", "ghettoising", "ghettoize", "ghettoized", "ghettoizes", "ghettoizing", "ghillie", "ghost", "ghostfish", "ghosting", "ghostlier", "ghostliest", "ghostlike", "ghostliness", "ghostly", "ghosts", "ghostwrite", "ghostwriter", "ghostwrites", "ghostwriting", "ghoul", "ghoulish", "ghq", "ghrelin", "ghrf", "ghz", "gi", "gia", "giant", "giantess", "giantism", "giants", "giardia", "giardiasis", "gib", "gibbed", "gibber", "gibberellin", "gibbering", "gibberish", "gibbers", "gibbet", "gibbing", "gibbose", "gibbosity", "gibbous", "gibbousness", "gibbsite", "gibe", "gibelike", "gibibit", "gibibyte", "gibingly", "gibit", "giblet", "gibraltarian", "gibs", "giddied", "giddier", "giddiest", "giddily", "giddiness", "giddy", "gidgee", "gift", "gifted", "gifting", "gifts", "giftwrap", "giftwrapped", "giftwrapping", "giftwraps", "gig", "gigabit", "gigabyte", "gigacycle", "gigahertz", "gigantic", "gigantism", "gigged", "gigging", "giggle", "giggler", "giggles", "giggling", "gigo", "gigolo", "gigot", "gigs", "gigue", "gilbertian", "gild", "gilded", "gilder", "gildhall", "gilding", "gill", "gilled", "gillie", "gillyflower", "gilt", "gimbal", "gimbaled", "gimcrack", "gimcrackery", "gimel", "gimlet", "gimmick", "gimmickry", "gimmicks", "gimp", "gimpiness", "gimpy", "gin", "ginep", "ginger", "gingerbread", "gingerly", "gingerol", "gingerroot", "gingersnap", "gingery", "gingham", "gingiva", "gingivae", "gingival", "gingivitis", "gingko", "gingkoes", "ginglymi", "ginglymus", "ginkgo", "ginkgoes", "ginkgophytina", "ginmill", "ginned", "ginning", "gins", "ginseng", "ginzo", "gip", "gipped", "gipping", "gippo", "gippoes", "gips", "gipsies", "gipsy", "gipsywort", "giraffe", "girandola", "girandole", "girasol", "gird", "girded", "girder", "girding", "girdle", "girds", "girl", "girlfriend", "girlfriends", "girlhood", "girlish", "girlishly", "girlishness", "girls", "giro", "girondin", "girth", "gismo", "gist", "git", "gita", "gitana", "gitano", "gittern", "give", "giveaway", "given", "givenness", "giver", "gives", "giving", "gizeh", "gizmo", "gizzard", "glabella", "glabellae", "glabellar", "glabrescent", "glabrous", "glace", "glacial", "glacially", "glaciate", "glaciated", "glaciation", "glacier", "glad", "gladden", "gladdened", "gladder", "gladdest", "gladdon", "glade", "gladfulness", "gladiator", "gladiatorial", "gladiola", "gladioli", "gladiolus", "gladly", "gladness", "gladsome", "gladsomeness", "glamor", "glamorisation", "glamorise", "glamorised", "glamorises", "glamorising", "glamorization", "glamorize", "glamorized", "glamorizes", "glamorizing", "glamorous", "glamour", "glamourisation", "glamourise", "glamourization", "glamourize", "glamourous", "glance", "glanced", "glances", "glancing", "gland", "glanders", "glandes", "glands", "glandular", "glans", "glare", "glareole", "glares", "glaring", "glaringly", "glary", "glasnost", "glass", "glassblower", "glassed", "glasses", "glassful", "glasshouse", "glassier", "glassiest", "glassless", "glassmaker", "glassware", "glasswork", "glassworker", "glasswort", "glassy", "glaswegian", "glaucoma", "glauconite", "glaucous", "glaze", "glazed", "glazer", "glazes", "glazier", "glazing", "gleam", "gleaming", "gleams", "glean", "gleaned", "gleaner", "gleaning", "gleans", "gleba", "glebe", "glee", "gleeful", "gleefully", "gleefulness", "gleet", "glen", "glia", "glial", "glib", "glibber", "glibbest", "glibly", "glibness", "glide", "glider", "glides", "gliding", "glimmer", "glimmering", "glimmers", "glimmery", "glimpse", "glimpses", "glimpsing", "glint", "glinting", "glioblastoma", "glioma", "gliomata", "glipizide", "gliricidia", "glissade", "glissandi", "glissando", "glisten", "glistening", "glistens", "glister", "glistering", "glitch", "glitter", "glittering", "glitters", "glittery", "glitz", "gloam", "gloaming", "gloat", "gloated", "gloating", "gloatingly", "gloats", "glob", "global", "globalisation", "globalise", "globalised", "globalises", "globalising", "globalization", "globalize", "globalized", "globalizes", "globalizing", "globally", "globe", "globefish", "globefishes", "globeflower", "globetrotter", "globigerina", "globigerinae", "globin", "globose", "globosity", "globular", "globularness", "globule", "globulin", "glochid", "glochidcia", "glochidia", "glochidium", "glockenspiel", "glogg", "glom", "glomerular", "glomerule", "glomeruli", "glomerulonephritis", "glomerulus", "glommed", "glomming", "gloom", "gloomful", "gloomier", "gloomiest", "gloomily", "gloominess", "glooming", "gloomy", "glop", "gloried", "glorification", "glorified", "glorifies", "glorify", "glorifying", "gloriole", "gloriosa", "glorious", "gloriously", "glory", "glorying", "gloss", "glossa", "glossae", "glossalgia", "glossarist", "glossary", "glossier", "glossiest", "glossily", "glossina", "glossiness", "glossing", "glossitis", "glossodynia", "glossolalia", "glossopharyngeal", "glossoptosis", "glossy", "glottal", "glottides", "glottis", "glottochronological", "glottochronology", "glove", "gloved", "gloveless", "gloves", "glow", "glowed", "glower", "glowering", "gloweringly", "glowing", "glowingly", "glows", "glowworm", "gloxinia", "glucagon", "glucinium", "glucocorticoid", "glucophage", "glucosamine", "glucose", "glucoside", "glucosuria", "glucotrol", "glue", "glued", "glueing", "glues", "gluey", "glueyness", "glug", "gluiness", "gluing", "glum", "glume", "glumly", "glummer", "glummest", "glumness", "gluon", "glut", "glutaei", "glutaeus", "glutamate", "glutamine", "glute", "gluteal", "glutei", "glutelin", "gluten", "glutethimide", "gluteus", "glutinosity", "glutinous", "glutinousness", "gluts", "glutted", "glutting", "glutton", "gluttonise", "gluttonises", "gluttonize", "gluttonizes", "gluttonous", "gluttonously", "gluttony", "glyburide", "glyceraldehyde", "glyceride", "glycerin", "glycerine", "glycerite", "glycerogel", "glycerogelatin", "glycerol", "glycerole", "glycerolise", "glycerolize", "glyceryl", "glycine", "glycogen", "glycogenesis", "glycogenic", "glycol", "glycolysis", "glycoprotein", "glycoside", "glycosuria", "glyoxaline", "glyph", "glyptics", "glyptography", "gm", "gmt", "gnarl", "gnarled", "gnarly", "gnash", "gnashes", "gnashing", "gnat", "gnatcatcher", "gnathion", "gnathostome", "gnaw", "gnawer", "gneiss", "gnetophyta", "gnetophytina", "gnetum", "gnocchi", "gnome", "gnomic", "gnomish", "gnomon", "gnoses", "gnosis", "gnostic", "gnp", "gnu", "GO", "Go", "go", "goad", "goaded", "goading", "goads", "goal", "goalie", "goalkeeper", "goalless", "goalmouth", "goalpost", "goals", "goaltender", "goat", "goatee", "goateed", "goatfish", "goatfishes", "goatherd", "goats", "goatsbeard", "goatsfoot", "goatskin", "goatsucker", "gob", "gobbet", "gobble", "gobbled", "gobbledygook", "gobbler", "gobbles", "gobbling", "goblet", "goblin", "gobo", "goboes", "gobsmacked", "goby", "god", "godchild", "godchildren", "goddam", "goddamn", "goddamned", "goddaughter", "goddess", "godfather", "godforsaken", "godless", "godlessness", "godlier", "godliest", "godlike", "godliness", "godly", "godmother", "godown", "godparent", "gods", "godsend", "godson", "godwit", "goer", "goering", "goes", "goeteborg", "goethean", "goethian", "goethite", "gofer", "Goffer", "goffer", "goggle", "goggles", "gogh", "goidelic", "goin", "goin'", "going", "goiter", "goiters", "goitre", "goitres", "goitrogen", "golan", "gold", "goldbeater", "goldbrick", "goldbricking", "goldcrest", "goldcup", "golden", "goldenbush", "goldeneye", "goldenrod", "goldenseal", "goldfield", "goldfinch", "goldfish", "goldfishes", "goldilocks", "goldmine", "goldplate", "goldsmith", "goldstone", "goldthread", "goldworker", "golem", "golf", "golfcart", "golfclub", "golfer", "golfers", "golfing", "golgotha", "goliard", "gollied", "golliwog", "golliwogg", "golly", "golosh", "gomel", "gomorrha", "gomphoses", "gomphosis", "gomphothere", "gomuti", "GON'T", "Gon't", "gon't", "gonad", "gonadal", "gonadotrophic", "gonadotrophin", "gonadotropic", "gonadotropin", "gondola", "gondolier", "gondoliere", "gone", "goner", "gong", "gonia", "gonidia", "gonidium", "gonif", "goniff", "goniometer", "gonion", "gonioscopy", "gonococci", "gonococcus", "gonorrhea", "gonorrhoea", "GONT", "Gont", "gont", "gonzo", "GON\u2019T", "Gon\u2019t", "gon\u2019t", "goo", "goober", "good", "goodby", "Goodbye", "goodbye", "goodies", "goodish", "goodlier", "goodliest", "goodlooking", "goodly", "goodmorning", "goodness", "goods", "goodwife", "goodwill", "goodwives", "goody", "gooey", "goof", "goofball", "goofier", "goofiest", "goofiness", "goofing", "goofproof", "goofs", "goofy", "google", "googles", "googling", "googly", "googol", "googolplex", "gooier", "gooiest", "gook", "goon", "gooney", "goonie", "goony", "goop", "goosander", "goose", "gooseberry", "goosebump", "goosefish", "goosefishes", "gooseflesh", "goosefoot", "gooselike", "gooseneck", "gooses", "goosey", "goosier", "goosiest", "goosing", "goosy", "gop", "gopher", "gopherwood", "goral", "gordian", "Gore", "gore", "gored", "gores", "gorge", "gorgeous", "gorgeously", "gorger", "gorgerin", "gorges", "gorget", "gorging", "gorgoneia", "gorgoneion", "gorgoniacea", "gorgonian", "gorgonzola", "gorier", "goriest", "gorilla", "gorillas", "goring", "gorki", "gorkiy", "gormandise", "gormandize", "gormless", "gorse", "gory", "goshawk", "gosling", "gosmore", "gospel", "gospeler", "gospeller", "gospodin", "gospopoda", "gossamer", "gossip", "gossiper", "gossiping", "gossipmonger", "gossipmongering", "gossips", "gossipy", "got", "goth", "gothenburg", "gothic", "gothite", "gotten", "gouache", "gouge", "gouger", "goujon", "goulash", "gourd", "gourde", "gourmand", "gourmandism", "gourmandize", "gourmandizer", "gourmet", "gout", "gouty", "GOV.", "Gov.", "gov.", "govern", "governable", "governance", "governed", "governess", "governing", "government", "governmental", "governmentally", "governments", "governor", "governors", "governorship", "governs", "gown", "gowned", "goy", "goyim", "gp", "gpa", "gpo", "gps", "gr8", "grab", "grabbed", "grabber", "grabbing", "grabby", "grabs", "grace", "graceful", "gracefully", "gracefulness", "graceless", "gracelessly", "gracelessness", "graces", "gracie", "gracilariid", "gracile", "gracility", "gracillariidae", "gracing", "gracious", "graciously", "graciousness", "grackle", "grad", "gradable", "gradate", "gradation", "gradational", "gradatory", "grade", "graded", "gradelier", "gradeliest", "gradely", "grader", "graders", "grades", "gradient", "gradients", "grading", "gradual", "graduality", "gradually", "gradualness", "graduate", "graduated", "graduates", "graduating", "graduation", "graecophile", "graecophilic", "graf", "grafen", "graffiti", "graffito", "graft", "grafted", "grafting", "grail", "grain", "grainfield", "grainier", "grainiest", "graininess", "graining", "grains", "grainy", "gram", "grama", "gramicidin", "graminaceae", "gramma", "grammar", "grammarian", "grammatic", "grammatical", "grammatically", "grammatolatry", "gramme", "grammes", "gramophone", "gramps", "grampus", "grams", "gran", "granadilla", "granadillo", "granary", "grand", "grandad", "grandaunt", "grandchild", "grandchildren", "granddad", "granddaddy", "granddaughter", "grandee", "grander", "grandeur", "grandfather", "grandiloquence", "grandiloquent", "grandiloquently", "grandiose", "grandiosely", "grandiosity", "grandly", "grandma", "grandmaster", "grandmother", "grandmothers", "grandnephew", "grandness", "grandniece", "grandpa", "grandparent", "grandparents", "grandson", "grandstand", "grandstander", "grandstanding", "granduncle", "grange", "granger", "granite", "granitelike", "graniteware", "granitic", "grannie", "granny", "granola", "grant", "granted", "grantee", "grantees", "granter", "granth", "granting", "grantor", "grants", "granular", "granularity", "granulate", "granulated", "granulation", "granule", "granuliferous", "granulocyte", "granulocytic", "granulocytopenia", "granuloma", "granulomata", "granulomatous", "granulose", "grape", "grapefruit", "grapelike", "grapes", "grapeshot", "grapevine", "grapey", "graph", "grapheme", "graphic", "graphical", "graphically", "graphics", "graphing", "graphite", "graphologist", "graphology", "graphospasm", "graphs", "grapnel", "grapo", "grappa", "grapple", "grappled", "grappler", "grapples", "grappling", "grapy", "grasp", "graspable", "grasping", "grasps", "grass", "grassfinch", "grassfire", "grasshopper", "grassier", "grassiest", "grassing", "grassland", "grassless", "grasslike", "grassroots", "grassy", "grate", "grateful", "gratefully", "gratefulness", "grater", "grates", "graticule", "gratification", "gratified", "gratifies", "gratify", "gratifying", "gratifyingly", "grating", "gratingly", "gratis", "gratitude", "gratuitous", "gratuitously", "gratuity", "gratulatory", "gravamen", "gravamina", "grave", "gravedigger", "gravel", "graveled", "gravelled", "gravelling", "gravelly", "gravelweed", "gravely", "graven", "graveness", "graver", "graverobber", "graves", "gravest", "gravestone", "graveyard", "gravid", "gravida", "gravidation", "gravidity", "gravidness", "gravimeter", "gravimetric", "gravimetry", "gravitas", "gravitate", "gravitates", "gravitating", "gravitation", "gravitational", "gravitationally", "gravitative", "graviton", "gravity", "gravure", "gravy", "gray", "grayback", "graybeard", "grayed", "grayhen", "graying", "grayish", "graylag", "grayly", "grayness", "grays", "graze", "grazed", "grazes", "grazier", "grazing", "grease", "greaseball", "greased", "greasepaint", "greaseproof", "greaser", "greases", "greasewood", "greasier", "greasiest", "greasily", "greasiness", "greasing", "greasy", "great", "greatcoat", "greater", "greatest", "greathearted", "greatly", "greatness", "greave", "grebe", "grecian", "greco", "greed", "greedier", "greediest", "greedily", "greediness", "greedy", "greegree", "greek", "green", "greenback", "greenbelt", "greenbottle", "greenbrier", "greener", "greenery", "greeneye", "greenfly", "greengage", "greengrocer", "greengrocery", "greenhood", "greenhorn", "greenhouse", "greening", "greenish", "greenishness", "greenling", "greenly", "greenmail", "greenmarket", "greenness", "greenockite", "greenroom", "greens", "greensand", "greenshank", "greensick", "greensickness", "greenside", "greenskeeper", "greensward", "greenwash", "greenwasher", "greenwashers", "greenwashing", "greenway", "greenweed", "greenwing", "greenwood", "greet", "greeted", "greeter", "greeting", "greetings", "greets", "gregarine", "gregarious", "gregariously", "gregariousness", "gregorian", "greisen", "gremlin", "Grenada", "grenada", "grenade", "grenades", "grenadian", "grenadier", "grenadine", "Grenadines", "grenadines", "grevillea", "grew", "grey", "greyback", "greybeard", "greyed", "greyhen", "greyhound", "greying", "greyish", "greylag", "greyly", "greyness", "greys", "grid", "griddle", "griddlecake", "gridiron", "gridlock", "grids", "grief", "grievance", "grievances", "grieve", "grieved", "griever", "grieves", "grieving", "grievous", "grievously", "griffin", "griffins", "griffon", "grifter", "grigri", "grill", "grille", "grilled", "grilling", "grillroom", "grills", "grillwork", "grim", "grimace", "grimaced", "grimacing", "grime", "griminess", "grimly", "grimmer", "grimmest", "grimness", "grimoire", "grimy", "grin", "grind", "grinder", "grinding", "grindle", "grinds", "grindstone", "gringo", "grinned", "grinner", "grinning", "grins", "griot", "grip", "gripe", "gripes", "griping", "grippe", "gripped", "gripping", "grips", "gripsack", "grisaille", "griseofulvin", "grislier", "grisliest", "grisly", "grison", "grissino", "grist", "gristle", "gristly", "gristmill", "grit", "gritrock", "gritstone", "gritted", "grittier", "grittiest", "gritting", "gritty", "grivet", "grizzle", "grizzled", "grizzlier", "grizzliest", "grizzly", "groak", "groan", "groaned", "groaner", "groaning", "groans", "groat", "grocer", "groceries", "grocery", "grody", "groenendael", "grog", "groggier", "groggiest", "grogginess", "groggy", "grogram", "groin", "groins", "grok", "grommet", "gromwell", "gronland", "groom", "groomed", "grooming", "grooms", "groomsman", "groove", "grooved", "groover", "grooves", "groovier", "grooviest", "grooving", "groovy", "grope", "groped", "gropes", "groping", "gropingly", "grosbeak", "groschen", "grosgrain", "gross", "grossbeak", "grosses", "grossing", "grossly", "grossness", "grosz", "groszy", "grot", "grotesque", "grotesquely", "grotesqueness", "grotesquerie", "grotesquery", "grottier", "grottiest", "grotto", "grottoes", "grotty", "grouch", "grouchily", "grouching", "groucho", "grouchy", "ground", "groundball", "groundberry", "groundbreaker", "groundbreaking", "groundcover", "grounded", "grounder", "groundfish", "groundhog", "grounding", "groundkeeper", "groundless", "groundlessness", "groundling", "groundmass", "groundnut", "grounds", "groundsel", "groundsheet", "groundskeeper", "groundsman", "groundspeed", "groundwork", "group", "grouped", "grouper", "groupie", "grouping", "groupings", "groups", "groupthink", "groupware", "grouse", "grouseberry", "groused", "grouses", "grousing", "grout", "groutier", "groutiest", "grouty", "grove", "grovel", "groveled", "groveler", "groveling", "grovelled", "groveller", "grovelling", "grovels", "groves", "grow", "grower", "growers", "growing", "growl", "growler", "growling", "growls", "grown", "grownup", "grows", "growth", "growths", "groyne", "groynes", "groznyy", "grub", "grubbed", "grubbier", "grubbiest", "grubbily", "grubbiness", "grubbing", "grubby", "grubstake", "grudge", "grudging", "grudgingly", "gruel", "grueling", "gruelingly", "gruelling", "gruellingly", "gruesome", "gruesomely", "gruesomeness", "gruff", "gruffly", "gruffness", "grugru", "grumble", "grumbled", "grumbler", "grumbles", "grumbling", "grume", "grummet", "grumose", "grumous", "grump", "grumpier", "grumpiest", "grumpily", "grumpiness", "grumpy", "grundyism", "grunge", "grungily", "grungy", "grunt", "grunter", "grunting", "gruntle", "grunts", "gryphon", "gryphons", "gsa", "gspc", "gsr", "gu", "guacamole", "guacharo", "guaiac", "guaira", "guama", "guan", "guanabana", "guanabenz", "guanaco", "guanine", "guano", "guanosine", "guar", "guarantee", "guaranteed", "guaranteeing", "guarantees", "guarantied", "guarantor", "guaranty", "guard", "guardant", "guarded", "guardedly", "guardhouse", "guardian", "guardians", "guardianship", "guarding", "guardrail", "guardroom", "guards", "guardsman", "guarnieri", "Guatemala", "guatemala", "guatemalan", "guava", "guayule", "gubbins", "gubernatorial", "guck", "gudgeon", "guenevere", "guenon", "guerdon", "guereza", "gueridon", "guerilla", "guerrilla", "guerrillas", "guess", "guessed", "guesser", "guesses", "guessing", "guesstimate", "guesswork", "guest", "guesthouse", "guestimate", "guestroom", "guests", "guestworker", "guff", "guffaw", "guffawing", "guffaws", "guggle", "gui", "guib", "guidance", "guide", "guidebook", "guided", "guideline", "guidelines", "guidepost", "guides", "guideword", "guiding", "guild", "guilde", "guilder", "guilders", "guildhall", "guile", "guileful", "guileless", "guillemot", "guilloche", "guillotine", "guillotining", "guilt", "guiltier", "guiltiest", "guiltily", "guiltiness", "guiltless", "guiltlessness", "guilty", "guimpe", "Guinea", "guinea", "guinean", "guise", "guitar", "guitarfish", "guitarfishes", "guitarist", "guitars", "gujerat", "gujerati", "gulag", "gulch", "gulden", "gulf", "gulfweed", "gull", "gullet", "gullibility", "gullible", "gullied", "gulling", "gulls", "gully", "gulp", "gulper", "gulping", "gulps", "gulyas", "gum", "gumbo", "gumboil", "gumdrop", "gumma", "gummata", "gummed", "gummier", "gummiest", "gumminess", "gumming", "gummite", "gummosis", "gummy", "gumption", "gumptious", "gumshield", "gumshoe", "gumweed", "gumwood", "gun", "gunboat", "guncotton", "gunfight", "gunfire", "gunflint", "gunite", "gunk", "gunlock", "gunman", "gunmetal", "gunned", "gunnel", "gunner", "gunnery", "gunning", "gunny", "gunnysack", "gunplay", "gunpoint", "gunpowder", "gunrunner", "gunrunning", "guns", "gunshot", "gunsight", "gunslinger", "gunsmith", "gunstock", "gunwale", "guomindang", "guppy", "gurgle", "gurgles", "gurgling", "gurnar", "gurnard", "gurnards", "gurney", "guru", "gush", "gusher", "gushes", "gushier", "gushiest", "gushing", "gushingly", "gushy", "gusset", "gusseted", "gust", "gustation", "gustative", "gustatorial", "gustatory", "gustier", "gustiest", "gusto", "gusty", "gut", "gutless", "gutlessness", "guts", "gutsier", "gutsiest", "gutsiness", "gutsy", "gutta", "guttae", "gutter", "guttering", "guttersnipe", "guttle", "guttural", "gutturally", "guvnor", "guy", "Guyana", "guyana", "guyanese", "guyot", "guys", "guzzle", "guzzler", "guzzles", "guzzling", "gybe", "gym", "gymkhana", "gymnasia", "gymnasium", "gymnast", "gymnastic", "gymnastics", "gymnomycota", "gymnosophical", "gymnosophist", "gymnosophy", "gymnosperm", "gymnospermophyta", "gymnospermous", "gymslip", "gynaecea", "gynaeceum", "gynaecia", "gynaecium", "gynaecological", "gynaecologist", "gynaecologists", "gynaecology", "gynaeolatry", "gynandromorph", "gynandromorphic", "gynandromorphous", "gynarchy", "gynecea", "gynecia", "gynecium", "gynecocracy", "gynecologic", "gynecological", "gynecologist", "gynecologists", "gynecology", "gynecomastia", "gyneolatry", "gynne", "gynobase", "gynoecea", "gynoecia", "gynoecium", "gynogenesis", "gynophobia", "gynophore", "gynostegium", "gyp", "gypped", "gypping", "gypsies", "gypsum", "gypsy", "gypsyweed", "gypsywort", "gyral", "gyrate", "gyrates", "gyrating", "gyration", "gyre", "gyrfalcon", "gyri", "gyro", "gyrocompass", "gyromitra", "gyroplane", "gyroscope", "gyroscopic", "gyrostabiliser", "gyrostabilizer", "gyrus", "gywn", "ha", "HA.", "Ha.", "ha.", "haart", "habacuc", "habanera", "haberdasher", "haberdashery", "habergeon", "habiliment", "habilimented", "habilitate", "habit", "habitability", "habitable", "habitableness", "habitant", "habitat", "habitation", "habitats", "habited", "habits", "habitual", "habitually", "habituate", "habituates", "habituating", "habituation", "habitude", "habitue", "habitus", "hacek", "hachure", "hacienda", "hack", "hackamore", "hackberry", "hackbut", "hacked", "hackee", "hacker", "hackers", "hacking", "hackle", "hackmatack", "hackney", "hackneyed", "hacks", "hacksaw", "hackwork", "HAD", "Had", "had", "hadal", "hadarim", "haddock", "hadean", "hadj", "hadjes", "hadji", "HADN'T", "Hadn't", "hadn't", "HADN'T'VE", "Hadn't've", "hadn't've", "HADNT", "Hadnt", "hadnt", "HADN\u2019T", "Hadn\u2019t", "hadn\u2019t", "HADN\u2019T\u2019VE", "Hadn\u2019t\u2019ve", "hadn\u2019t\u2019ve", "hadron", "hadrosaur", "hadrosaurus", "haecceity", "haem", "haemagglutinate", "haemagglutination", "haemal", "haemangioma", "haematal", "haematemesis", "haematic", "haematinic", "haematite", "haematocele", "haematochezia", "haematocoele", "haematocolpometra", "haematocolpos", "haematocrit", "haematocytopenia", "haematocyturia", "haematogenesis", "haematogenic", "haematohiston", "haematoidin", "haematological", "haematologist", "haematologists", "haematology", "haematolyses", "haematolysis", "haematoma", "haematomata", "haematopoiesis", "haematopoietic", "haematoxylon", "haematozoa", "haematozoon", "haematuria", "haemic", "haemitin", "haemodialyses", "haemodialysis", "haemogenesis", "haemoglobin", "haemoglobinemia", "haemoglobinopathy", "haemoglobinuria", "haemolyses", "haemolysin", "haemolysis", "haemolytic", "haemophile", "haemophilia", "haemophiliac", "haemophiliacs", "haemophilic", "haemopoiesis", "haemopoietic", "haemoproteid", "haemoprotein", "haemoptyses", "haemoptysis", "haemorrhage", "haemorrhaged", "haemorrhages", "haemorrhagic", "haemorrhaging", "haemorrhoid", "haemorrhoidectomy", "haemorrhoids", "haemosiderin", "haemosiderosis", "haemosporidian", "haemostasia", "haemostasis", "haemostat", "haemothorax", "haeredes", "haeres", "hafnium", "haft", "haftarah", "haftaroth", "hag", "hagada", "hagberry", "hagbut", "hagfish", "hagfishes", "haggada", "haggadas", "haggadoth", "haggard", "haggardly", "haggis", "haggle", "haggler", "haggles", "haggling", "hagiographer", "hagiographist", "hagiography", "hagiolatry", "hagiologist", "hagiology", "hagridden", "haha", "hahaha", "hahahah", "hahnium", "haick", "haifa", "haik", "haiku", "hail", "hailed", "hailing", "hails", "hailstone", "hailstorm", "hair", "hairball", "hairbrush", "haircare", "haircloth", "haircut", "hairdo", "hairdresser", "hairdressing", "haired", "hairgrip", "hairier", "hairiest", "hairiness", "hairless", "hairlessness", "hairlike", "hairline", "hairnet", "hairpiece", "hairpin", "hairs", "hairsbreadth", "hairsplitter", "hairsplitting", "hairspring", "hairstreak", "hairstyle", "hairstylist", "hairtail", "hairweaving", "hairy", "Haiti", "haiti", "haitian", "haj", "haji", "hajj", "hajjes", "hajji", "hake", "hakeem", "hakenkreuz", "hakim", "halacha", "halaka", "halal", "halberd", "halberdier", "halcion", "halcyon", "haldol", "hale", "haleness", "haler", "haleru", "half", "halfback", "halfbeak", "halfhearted", "halfpence", "halfpenny", "halfpennyworth", "halftime", "halftone", "halfway", "halibut", "halide", "halite", "halitosis", "halitus", "hall", "hallah", "hallelujah", "halliard", "hallmark", "hallmarks", "halloo", "hallot", "halloth", "hallow", "hallowed", "hallowing", "hallowmas", "halls", "hallstand", "halluces", "hallucinate", "hallucinates", "hallucinating", "hallucination", "hallucinatory", "hallucinogen", "hallucinogenic", "hallucinosis", "hallux", "hallway", "halm", "halma", "halo", "haloalkane", "halobacter", "halobacteria", "halobacterium", "halocarbon", "haloes", "haloform", "halogen", "halogeton", "halon", "haloperidol", "halophil", "halophile", "halophyte", "haloragaceae", "halothane", "halt", "halted", "halter", "haltere", "halteres", "halting", "haltingly", "halts", "halve", "halved", "halves", "halving", "halyard", "ham", "hamadryad", "hamartia", "hamartoma", "hamate", "hamburger", "hamburgers", "hame", "hamelia", "hamelin", "hamlet", "hammed", "hammer", "hammered", "hammerhead", "hammering", "hammerlock", "hammers", "hammertoe", "hammier", "hammiest", "hamming", "hammock", "hammurapi", "hammy", "hamper", "hampered", "hampering", "hampers", "hamster", "hamsters", "hamstring", "hamstringing", "hamstrung", "hamuli", "hamulus", "hand", "handbag", "handball", "handbarrow", "handbasin", "handbasket", "handbell", "handbill", "handbook", "handbow", "handbreadth", "handbuild", "handcar", "handcart", "handclap", "handclasp", "handcolor", "handcolour", "handcraft", "handcrafting", "handcuff", "handcuffed", "handcuffing", "handcuffs", "handed", "handedness", "handelian", "handfed", "handfeed", "handful", "handgrip", "handgun", "handguns", "handheld", "handhold", "handicap", "handicapped", "handicapper", "handicapping", "handicraft", "handicrafts", "handier", "handiest", "handily", "handiness", "handing", "handiwork", "handkerchief", "handle", "handlebar", "handled", "handleless", "handler", "handles", "handless", "handline", "handling", "handlock", "handloom", "handmade", "handmaid", "handmaiden", "handoff", "handout", "handouts", "handover", "handpick", "handpicked", "handrail", "handrest", "hands", "handsaw", "handsbreadth", "handsel", "handselled", "handselling", "handset", "handsewn", "handshake", "handshaking", "handsome", "handsomely", "handsomeness", "handspike", "handspring", "handstamp", "handstand", "handstitched", "handwash", "handwashes", "handwashing", "handwear", "handwheel", "handwork", "handwoven", "handwrite", "handwriting", "handwritten", "handy", "handyman", "hang", "hangar", "hangbird", "hangchow", "hangdog", "hanged", "hanger", "hanging", "hangman", "hangnail", "hangout", "hangover", "hangs", "hank", "hanker", "hankering", "hankers", "hankey", "hankie", "hanky", "hannukah", "hanoverian", "hansom", "hanukah", "hao", "haoma", "hap", "haphazard", "haphazardly", "haphazardness", "haphtarah", "haphtaroth", "haphtorah", "hapless", "haplessness", "haploid", "haploidic", "haploidy", "haplosporidian", "haplotype", "haplotypes", "haply", "happen", "happened", "happening", "happens", "happenstance", "happier", "happiest", "happily", "happiness", "happy", "hapsburg", "haptic", "haptically", "haptoglobin", "harakiri", "harangue", "haranguer", "harangues", "haranguing", "harass", "harassed", "harasser", "harasses", "harassing", "harassment", "harbinger", "harbor", "harborage", "harbored", "harboring", "harbors", "harbour", "harbourage", "harboured", "harbouring", "harbours", "hard", "hardback", "hardbacked", "hardbake", "hardball", "hardboard", "hardbound", "hardcore", "hardcover", "harden", "hardened", "hardening", "hardens", "harder", "hardest", "hardfisted", "hardheaded", "hardheads", "hardhearted", "hardheartedness", "hardier", "hardiest", "hardihood", "hardiness", "hardinggrass", "hardline", "hardliner", "hardly", "hardness", "hardpan", "hardscrabble", "hardship", "hardships", "hardtack", "hardtop", "hardware", "hardwareman", "hardwood", "hardworking", "hardy", "hare", "harebell", "harebrained", "haredi", "haredim", "hareem", "harefoot", "harelip", "harem", "haricot", "harijan", "harikari", "hark", "harken", "harkening", "harking", "harks", "harlequin", "harlequinade", "harlot", "harlotry", "harm", "harmattan", "harmed", "harmful", "harmfully", "harmfulness", "harming", "harmless", "harmlessly", "harmonic", "harmonica", "harmonical", "harmonically", "harmonies", "harmonious", "harmoniously", "harmoniousness", "harmonisation", "harmonise", "harmonised", "harmoniser", "harmonises", "harmonising", "harmonium", "harmonizable", "harmonization", "harmonize", "harmonized", "harmonizer", "harmonizes", "harmonizing", "harmony", "harms", "harness", "harnessed", "harnesses", "harnessing", "harp", "harper", "harping", "harpist", "harpo", "harpoon", "harpooneer", "harpooner", "harps", "harpsichord", "harpsichordist", "harpulla", "harpullia", "harpy", "harquebus", "harridan", "harried", "harrier", "harrison", "harrow", "harrowing", "Harry", "harry", "harrying", "harsh", "harshen", "harsher", "harshest", "harshly", "harshness", "hartebeest", "haruspex", "haruspices", "harvest", "harvested", "harvester", "harvestfish", "harvesting", "harvestman", "harvests", "HAS", "Has", "has", "haschisch", "hash", "hasheesh", "hashes", "hashing", "hashish", "hashmark", "hasid", "hasidic", "hasidim", "haslet", "HASN'T", "Hasn't", "hasn't", "HASN\u2019T", "Hasn\u2019t", "hasn\u2019t", "hasp", "hassid", "hassidic", "hassidim", "hassidism", "hassium", "hassle", "hassling", "hassock", "hastate", "haste", "hasten", "hastened", "hastening", "hastens", "hastier", "hastiest", "hastily", "hastiness", "hasty", "hat", "hatband", "hatbox", "hatch", "hatchback", "hatched", "hatchel", "hatchelled", "hatchelling", "hatchery", "hatches", "hatchet", "hatching", "hatchling", "hatchway", "hate", "hated", "hateful", "hatefully", "hatefulness", "hatemonger", "hater", "haters", "hates", "hatful", "hating", "hatless", "hatmaker", "hatpin", "hatrack", "hatred", "hats", "hatted", "hatter", "hatting", "hauberk", "haughtier", "haughtiest", "haughtily", "haughtiness", "haughty", "haul", "haulage", "hauled", "hauler", "haulier", "hauling", "haulm", "hauls", "haunch", "haunt", "haunted", "haunting", "haunts", "hausen", "hausmannite", "haussa", "haustella", "haustellum", "haustoria", "haustorium", "hautbois", "hautboy", "hauteur", "HAVE", "Have", "have", "haveing", "havelock", "haven", "HAVEN'T", "Haven't", "haven't", "havens", "HAVENT", "Havent", "havent", "HAVEN\u2019T", "Haven\u2019t", "haven\u2019t", "haversack", "havin", "havin'", "Having", "having", "havoc", "haw", "Hawaii", "hawaii", "hawaiian", "hawala", "hawfinch", "hawing", "hawk", "hawkbill", "hawkbit", "hawker", "hawking", "hawkish", "hawkishness", "hawkmoth", "hawks", "hawksbill", "hawkshaw", "hawkweed", "hawkyns", "hawse", "hawsehole", "hawsepipe", "hawser", "hawthorn", "hay", "hayastan", "haycock", "hayfield", "hayfork", "haying", "hayloft", "haymaker", "haymaking", "haymow", "hayrack", "hayrick", "hayrig", "hayseed", "haystack", "hayti", "haywire", "hazan", "hazard", "hazarding", "hazardous", "hazardously", "hazardousness", "hazards", "haze", "hazel", "hazelnut", "hazelwood", "hazier", "haziest", "hazily", "haziness", "hazing", "hazmat", "hazy", "hazzan", "hazzanim", "hcfc", "hcg", "hdl", "hdtv", "HE", "He", "he", "HE'D", "He'd", "he'd", "HE'LL", "He'll", "he'll", "HE'S", "He's", "he's", "HE'VE", "He've", "he've", "head", "headache", "headaches", "headband", "headboard", "headbutt", "headcheese", "headcount", "headcounter", "headdress", "headed", "header", "headfast", "headfirst", "headfish", "headful", "headgear", "headhunter", "headier", "headiest", "heading", "headlamp", "headland", "headless", "headlight", "headlike", "headline", "headlined", "headliner", "headlines", "headlinese", "headlining", "headlock", "headlong", "headman", "headmaster", "headmastership", "headmistress", "headmistressship", "headphone", "headphones", "headpiece", "headpin", "headquarter", "headquarters", "headrace", "headrest", "headroom", "heads", "headsail", "headscarf", "headset", "headshake", "headshaking", "headship", "headshot", "headsman", "headspace", "headspring", "headstall", "headstand", "headstock", "headstone", "headstream", "headstrong", "headwaiter", "headwater", "headway", "headwind", "headword", "headwords", "heady", "heal", "healed", "healer", "healing", "heals", "health", "healthcare", "healthful", "healthfulness", "healthier", "healthiest", "healthily", "healthiness", "healthy", "heap", "heaped", "heaping", "heaps", "hear", "hearable", "heard", "hearer", "hearing", "hearings", "hearken", "hearkening", "hears", "hearsay", "hearse", "heart", "heartache", "heartbeat", "heartbreak", "heartbreaker", "heartbreaking", "heartbroken", "heartburn", "heartburning", "hearten", "heartened", "heartening", "heartfelt", "hearth", "hearthrug", "hearthstone", "heartier", "heartiest", "heartily", "heartiness", "heartland", "heartleaf", "heartless", "heartlessly", "heartlessness", "heartrending", "heartrot", "hearts", "heartsease", "heartseed", "heartsick", "heartsickness", "heartstrings", "heartthrob", "heartwarming", "heartwood", "hearty", "heat", "heatable", "heated", "heatedly", "heater", "heath", "heathen", "heathenish", "heathenism", "heather", "heathfowl", "heathland", "heathlike", "heating", "heatless", "heats", "heatstroke", "heaume", "heave", "heaved", "heaven", "heavenly", "heavens", "heavenward", "heavenwardly", "heavenwards", "heaver", "heaves", "heavier", "heaviest", "heavily", "heaviness", "heaving", "heavy", "heavyhearted", "heavyheartedness", "heavyset", "heavyweight", "hebdomad", "hebdomadal", "hebdomadally", "hebdomadary", "hebephrenia", "hebephrenic", "hebetude", "hebraic", "hebraical", "hebraism", "hebrew", "hebridean", "hecatomb", "heckelphone", "heckle", "heckled", "heckler", "heckles", "heckling", "hectare", "hectares", "hectic", "hectically", "hectocotyli", "hectocotylus", "hectogram", "hectograph", "hectoliter", "hectolitre", "hectometer", "hectometre", "hector", "hectoring", "HED", "Hed", "hed", "heder", "hedge", "hedged", "hedgefund", "hedgehog", "hedgehop", "hedgehopped", "hedgehopping", "hedger", "hedgerow", "hedges", "hedging", "hediondilla", "hedjaz", "hedonic", "hedonism", "hedonist", "hedonistic", "heed", "heeded", "heedful", "heedfully", "heedfulness", "heeding", "heedless", "heedlessly", "heedlessness", "heeds", "heel", "heelbone", "heels", "heft", "heftier", "heftiest", "heftiness", "hefting", "hefty", "hegari", "hegelian", "hegemon", "hegemony", "hegira", "hehe", "heifer", "height", "heighten", "heightened", "heightening", "heightens", "heights", "heilong", "heimdal", "heimdallr", "heinous", "heinously", "heinousness", "heir", "heiress", "heirloom", "heirs", "heist", "hejira", "hela", "held", "heldentenor", "heldentenore", "heleodytes", "heliac", "heliacal", "helianthemum", "helianthus", "helical", "helices", "helicon", "helicopter", "helicopters", "heliocentric", "heliogram", "heliograph", "heliogravure", "heliolatry", "heliometer", "heliopause", "heliophila", "heliopsis", "heliosphere", "heliotherapy", "heliotrope", "heliotropism", "heliotype", "heliozoa", "heliozoan", "heliport", "helium", "helix", "hell", "hellbender", "hellcat", "hellebore", "helleborine", "hellene", "hellenic", "hellenistic", "hellenistical", "heller", "helleri", "hellespont", "hellfire", "hellgrammiate", "hellhole", "hellhound", "hellion", "hellish", "hellishly", "Hello", "hello", "helm", "helmet", "helmeted", "helmetflower", "helmets", "helminth", "helminthiasis", "helminthic", "helmsman", "helot", "help", "helpdesk", "helped", "helper", "helpful", "helpfully", "helpfulness", "helping", "helpless", "helplessly", "helplessness", "helpmate", "helpmeet", "helps", "helsingfors", "helve", "helvella", "helvetica", "hem", "hemagglutinate", "hemagglutination", "hemal", "hemangioma", "hematal", "hematemesis", "hematic", "hematin", "hematinic", "hematite", "hematocele", "hematochezia", "hematochrome", "hematocoele", "hematocolpometra", "hematocolpos", "hematocrit", "hematocyst", "hematocytopenia", "hematocyturia", "hematogenesis", "hematogenic", "hematohiston", "hematoidin", "hematologic", "hematological", "hematologist", "hematologists", "hematology", "hematolyses", "hematolysis", "hematoma", "hematomata", "hematopoiesis", "hematopoietic", "hematozoa", "hematozoon", "hematuria", "heme", "hemelytra", "hemelytron", "hemeralopia", "hemerobiid", "hemiacetal", "hemianopia", "hemianopsia", "hemic", "hemicrania", "hemicycle", "hemidemisemiquaver", "hemielytra", "hemielytron", "hemiepiphyte", "hemimetabola", "hemimetabolic", "hemimetabolism", "hemimetabolous", "hemimetaboly", "hemimetamorphic", "hemimetamorphosis", "hemimetamorphous", "hemimorphite", "hemin", "hemingwayesque", "hemiparasite", "hemiparasitic", "hemiplegia", "hemiplegic", "hemipode", "hemipteran", "hemipteron", "hemisphere", "hemispheric", "hemispherical", "hemline", "hemlock", "hemmed", "hemming", "hemminge", "hemochromatosis", "hemodialyses", "hemodialysis", "hemodialyzer", "hemodynamic", "hemodynamics", "hemofil", "hemogenesis", "hemoglobin", "hemoglobinemia", "hemoglobinopathy", "hemoglobinuria", "hemolyses", "hemolysin", "hemolysis", "hemolytic", "hemophile", "hemophilia", "hemophiliac", "hemophiliacs", "hemophilic", "hemopoiesis", "hemopoietic", "hemoprotein", "hemoptyses", "hemoptysis", "hemorrhage", "hemorrhaged", "hemorrhages", "hemorrhagic", "hemorrhaging", "hemorrhoid", "hemorrhoidectomy", "hemorrhoids", "hemosiderin", "hemosiderosis", "hemostasia", "hemostasis", "hemostat", "hemostatic", "hemothorax", "hemp", "hempen", "hems", "hemstitch", "hemstitching", "hen", "henbane", "henbit", "hence", "henceforth", "henceforward", "henchman", "hencoop", "hendecahedra", "hendecahedron", "hendiadys", "henhouse", "henna", "henpecked", "henroost", "hep", "hepadnavirus", "heparin", "hepatic", "hepatica", "hepaticae", "hepatitis", "hepatocarcinoma", "hepatoflavin", "hepatoma", "hepatomegaly", "hepatotoxic", "hepatotoxin", "hephaistos", "hepper", "heppest", "heptad", "heptagon", "heptane", "Her", "her", "heracles", "heraclid", "heraclidae", "herakles", "heraklid", "heraklidae", "herald", "heralded", "heraldic", "heralding", "heraldist", "heraldry", "heralds", "herb", "herbaceous", "herbage", "herbal", "herbalist", "herbaria", "herbarium", "herbicide", "herbier", "herbiest", "herbivore", "herbivorous", "herbs", "herby", "herculean", "herculius", "herd", "herder", "herding", "herds", "herdsman", "HERE", "Here", "here", "HERE'RE", "Here're", "here're", "HERE'S", "Here's", "here's", "hereabout", "hereabouts", "hereafter", "hereby", "hereditament", "hereditarianism", "hereditary", "heredity", "herein", "hereinafter", "hereinbefore", "hereness", "hereof", "heresy", "heretic", "heretical", "hereto", "heretofore", "hereunder", "hereupon", "herewith", "HERE\u2019RE", "Here\u2019re", "here\u2019re", "HERE\u2019S", "Here\u2019s", "here\u2019s", "heritable", "heritage", "heritor", "herm", "herma", "hermae", "hermai", "hermann", "hermaphrodism", "hermaphrodite", "hermaphroditic", "hermaphroditism", "hermeneutic", "hermeneutics", "hermetic", "hermetically", "hermit", "hermitage", "hermitic", "hermitical", "hernia", "herniae", "herniation", "hero", "heroes", "heroic", "heroical", "heroically", "heroin", "heroine", "heroism", "heron", "heronry", "herpangia", "herpes", "herpetologist", "herpetology", "herr", "herren", "herrenvolk", "herrerasaur", "herrerasaurus", "herring", "herringbone", "hers", "herself", "hertha", "hertzian", "Herzegovina", "herzegovina", "HES", "Hes", "hes", "hesitance", "hesitancy", "hesitant", "hesitantly", "hesitate", "hesitater", "hesitates", "hesitating", "hesitatingly", "hesitation", "hesitator", "hesperian", "hesperus", "hessian", "hessonite", "het", "hetaera", "hetaerae", "hetaira", "hetairai", "heterocercal", "heterocycle", "heterocyclic", "heterodactyl", "heterodox", "heterodoxy", "heterodyne", "heteroecious", "heterogeneity", "heterogeneous", "heterogeneousness", "heterogenesis", "heterogenous", "heterograft", "heteroicous", "heterokontae", "heterologic", "heterological", "heterologous", "heterology", "heterometabolic", "heterometabolism", "heterometabolous", "heterometaboly", "heteronym", "heteroploid", "heteroploidy", "heterosexism", "heterosexual", "heterosexualism", "heterosexuality", "heterosis", "heterosporous", "heterospory", "heterostracan", "heterotaxy", "heterothermic", "heterotroph", "heterotrophic", "heterozygosity", "heterozygote", "heterozygotes", "heterozygous", "heth", "heulandite", "heuristic", "HEVE", "Heve", "heve", "hew", "hewed", "hewer", "hewing", "hewn", "hews", "hex", "hexachlorophene", "hexad", "hexadecimal", "hexadrol", "hexagon", "hexagonal", "hexagram", "hexahedron", "hexameter", "hexane", "hexangular", "hexapod", "hexapoda", "hexed", "hexenbesen", "hexes", "hexestrol", "hexing", "hexose", "Hey", "hey", "heyday", "hezbollah", "HE\u2019D", "He\u2019d", "he\u2019d", "HE\u2019LL", "He\u2019ll", "he\u2019ll", "HE\u2019S", "He\u2019s", "he\u2019s", "HE\u2019VE", "He\u2019ve", "he\u2019ve", "hfc", "hhs", "hi", "hiatus", "hibachi", "hibernacula", "hibernaculum", "hibernal", "hibernate", "hibernates", "hibernating", "hibernation", "hibernia", "hibiscus", "hiccough", "hiccup", "hiccupped", "hiccupping", "hick", "hickey", "hickory", "hid", "hidden", "hiddenite", "hiddenness", "hide", "hideaway", "hidebound", "hideous", "hideously", "hideousness", "hideout", "hides", "hiding", "hidrosis", "hidrotic", "hie", "hiemal", "hieracosphinges", "hieracosphinx", "hierarch", "hierarchal", "hierarchic", "hierarchical", "hierarchically", "hierarchies", "hierarchy", "hieratic", "hieratical", "hierocracy", "hieroglyph", "hieroglyphic", "hieroglyphical", "hieroglyphically", "hierolatry", "hieronymus", "hifalutin", "higgle", "high", "highball", "highbinder", "highboard", "highborn", "highboy", "highbrow", "highbrowed", "highchair", "higher", "highest", "highfalutin", "highfaluting", "highflier", "highflyer", "highflying", "highjack", "highjacker", "highjacking", "highland", "highlife", "highlight", "highlighted", "highlighter", "highlighting", "highlights", "highly", "highroad", "highs", "highschool", "hightail", "hightailing", "highwater", "highway", "highwayman", "highways", "hijab", "hijack", "hijacker", "hijackers", "hijacking", "hijackings", "hijacks", "hijaz", "hijinks", "hike", "hiked", "hiker", "hikers", "hikes", "hiking", "hila", "hilar", "hilarious", "hilariously", "hilarity", "hildebrand", "hili", "hill", "hillbilly", "hilliness", "hillock", "hills", "hillside", "hillsides", "hilltop", "hilly", "hilt", "hilum", "hilus", "him", "himalaya", "himalayan", "himatia", "himation", "himself", "hin", "hind", "hindbrain", "hinder", "hinderance", "hindered", "hindering", "hinderingly", "hindermost", "hinders", "hindfoot", "hindgut", "hindi", "hindlimb", "hindmost", "hindoo", "hindooism", "hindoostani", "hindostani", "hindquarter", "hindrance", "hindshank", "hindsight", "hindu", "hindustani", "hinge", "hinges", "hinging", "hinnied", "hinny", "hint", "hinted", "hinterland", "hinting", "hints", "hip", "hipbone", "hipflask", "hiplength", "hipless", "hipline", "hippeastrum", "hipped", "hipper", "hippest", "hippie", "hippier", "hippies", "hippiest", "hippoboscid", "hippocampi", "hippocampus", "hippocratic", "hippodrome", "hippopotami", "hippopotamus", "hippy", "hips", "hipster", "hircine", "hire", "hired", "hireling", "hirer", "hires", "hiring", "hirsute", "hirsuteness", "hirsutism", "hirudinean", "His", "his", "hispanic", "hispaniolan", "hispid", "hiss", "hissed", "hisser", "hisses", "hissing", "histaminase", "histamine", "histidine", "histiocyte", "histiocytosis", "histocompatibility", "histogram", "histoincompatibility", "histologic", "histological", "histologically", "histologist", "histology", "histone", "historian", "historians", "historic", "historical", "historically", "historicalness", "historicism", "historied", "histories", "historiographer", "historiography", "history", "histrion", "histrionic", "histrionics", "hit", "hitch", "hitched", "hitches", "hitchhike", "hitchhiker", "hitchhiking", "hitching", "hitchrack", "hither", "hitherto", "hitlerian", "hitless", "hitman", "hits", "hitter", "hitters", "hitting", "hittite", "hiv", "hive", "hizbollah", "hizbullah", "hm", "hmo", "hmong", "hnd", "ho", "hoactzin", "hoagie", "hoagy", "hoar", "hoard", "hoarder", "hoarding", "hoards", "hoarfrost", "hoarier", "hoariest", "hoariness", "hoarse", "hoarsely", "hoarseness", "hoary", "hoatzin", "hoax", "hoaxer", "hoaxes", "hoaxing", "hob", "hobbed", "hobbies", "hobbing", "hobbit", "hobble", "hobbled", "hobbledehoy", "hobbler", "hobbles", "hobbling", "hobby", "hobbyhorse", "hobbyism", "hobbyist", "hobgoblin", "hobnail", "hobnailed", "hobnob", "hobnobbed", "hobnobbing", "hobnobs", "hobo", "hoboes", "hock", "hockey", "hocking", "hocus", "hocussed", "hocussing", "hod", "hoder", "hodgepodge", "hodman", "hodometer", "hodoscope", "hodr", "hodur", "hoe", "hoecake", "hoeing", "hog", "hogback", "hogchoker", "hogfish", "hogfishes", "hogged", "hogget", "hogging", "hoggish", "hoggishness", "hogs", "hogshead", "hogtie", "hogties", "hogtying", "hogwash", "hogweed", "hoist", "hoisted", "hoister", "hoists", "hoka", "hokey", "hokkianese", "hokum", "hold", "holdall", "holder", "holders", "holdfast", "holding", "holdings", "holdout", "holdover", "holds", "holdup", "hole", "holed", "holes", "holey", "holibut", "holiday", "holidaying", "holidaymaker", "holidays", "holier", "holiest", "holiness", "holing", "holism", "holistic", "holla", "holland", "hollandaise", "hollander", "holler", "hollering", "hollers", "hollo", "holloa", "hollow", "holloware", "hollowly", "hollowness", "hollowware", "hollygrape", "hollyhock", "hollywood", "holmes", "holmium", "holocaust", "holocephalan", "holocephalian", "hologram", "holograph", "holographic", "holographical", "holography", "holometabola", "holometabolic", "holometabolism", "holometabolous", "holometaboly", "holonym", "holonymy", "holophyte", "holophytic", "holothurian", "holotype", "holozoic", "holstein", "holster", "holy", "holystone", "homage", "hombre", "homburg", "home", "homebody", "homebound", "homeboy", "homebrew", "homebuilder", "homecoming", "homefolk", "homegirl", "homegrown", "homel", "homeland", "homeless", "homelessness", "homelier", "homeliest", "homelike", "homeliness", "homely", "homemade", "homemaker", "homemaking", "homeobox", "homeopath", "homeopathic", "homeopaths", "homeopathy", "homeostasis", "homeostatic", "homeostatically", "homeotherm", "homeothermic", "homeowner", "homeowners", "homepage", "homer", "homered", "homeric", "homeroom", "homers", "homes", "homesick", "homesickness", "homespun", "homestead", "homesteader", "homesteading", "homestretch", "hometown", "homeward", "homewards", "homework", "homey", "homicidal", "homicide", "homicides", "homier", "homiest", "homiletic", "homiletical", "homiletics", "homily", "hominal", "homing", "hominian", "hominid", "hominine", "hominoid", "hominy", "hommos", "homo", "homocentric", "homocercal", "homochromatic", "homocyclic", "homoecious", "homoeopath", "homoeopathic", "homoeopaths", "homoeopathy", "homoerotic", "homoeroticism", "homogenate", "homogeneity", "homogeneous", "homogeneously", "homogeneousness", "homogenisation", "homogenise", "homogenised", "homogenises", "homogenising", "homogenization", "homogenize", "homogenized", "homogenizes", "homogenizing", "homogenous", "homogeny", "homograft", "homograph", "homoiotherm", "homoiothermic", "homologic", "homological", "homologise", "homologises", "homologize", "homologous", "homology", "homomorphism", "homomorphy", "homonym", "homonymic", "homonymous", "homonymy", "homophile", "homophobe", "homophobia", "homophobic", "homophone", "homophonic", "homophonous", "homophony", "homopteran", "homosexual", "homosexualism", "homosexuality", "homosexuals", "homosporous", "homospory", "homostyled", "homostylic", "homostylous", "homotherm", "homothermic", "homozygosity", "homozygote", "homozygotes", "homozygous", "homunculi", "homunculus", "homy", "HON.", "Hon.", "hon.", "honcho", "hondo", "honduran", "Honduras", "honduras", "hone", "honed", "hones", "honest", "honestly", "honestness", "honesty", "honey", "honeybee", "honeybells", "honeycomb", "honeycombed", "honeycreeper", "honeydew", "honeyed", "honeyflower", "honeylike", "honeymoon", "honeymooner", "honeymooning", "honeypot", "honeysucker", "honeysuckle", "honied", "honing", "honk", "honker", "honkey", "honkie", "honking", "honks", "honky", "honkytonk", "honor", "honorable", "honorableness", "honorably", "honoraria", "honorarium", "honorary", "honored", "honoree", "honorific", "honoring", "honors", "honour", "honourable", "honourableness", "honourably", "honoured", "honouring", "honours", "hooch", "hood", "hoodlum", "hoodmold", "hoodmould", "hoodoo", "hoodooism", "hoodwink", "hoodwinked", "hoodwinking", "hoodwinks", "hooey", "hoof", "hoofed", "hoofer", "hoofing", "hooflike", "hoofprint", "hook", "hookah", "hooked", "hooker", "hooking", "hooklike", "hooknose", "hooks", "hookup", "hookworm", "hooky", "hooligan", "hooliganism", "hooligans", "hoop", "hoopla", "hoopoe", "hoopoo", "hoops", "hoopskirt", "hooray", "hoosegow", "hoosgow", "hoosier", "hoot", "hootch", "hooter", "hooting", "hoots", "hooved", "hoover", "hoovering", "hoovers", "hooves", "hop", "hope", "hoped", "hopeful", "hopefully", "hopefulness", "hopeh", "hopei", "hopeless", "hopelessly", "hopelessness", "hoper", "hopes", "hoping", "hopped", "hopper", "hopping", "hopple", "hops", "hopsack", "hopsacking", "hopscotch", "horary", "horde", "hordeolum", "hordes", "horehound", "horizon", "horizons", "horizontal", "horizontality", "horizontally", "hormonal", "hormone", "hormones", "horn", "hornbeam", "hornbill", "hornblende", "hornbook", "horned", "hornet", "hornfels", "hornier", "horniest", "horniness", "horning", "hornist", "hornless", "hornlike", "hornpipe", "hornpout", "horns", "hornstone", "hornswoggle", "hornwort", "horny", "horologe", "horologer", "horologia", "horologist", "horologium", "horology", "horoscope", "horoscopy", "horrendous", "horrible", "horribly", "horrid", "horridly", "horridness", "horrific", "horrified", "horrifies", "horrify", "horrifying", "horrifyingly", "horripilate", "horripilates", "horripilating", "horripilation", "horror", "horrors", "horse", "horseback", "horsebean", "horsebox", "horsecar", "horsecloth", "horsefish", "horseflesh", "horsefly", "horsehair", "horsehead", "horsehide", "horselaugh", "horseleech", "horseman", "horsemanship", "horsemeat", "horsemint", "horseplay", "horsepond", "horsepower", "horseradish", "horses", "horseshit", "horseshoe", "horseshoer", "horseshow", "horsetail", "horseweed", "horsewhip", "horsewhipped", "horsewhipping", "horsewoman", "horsier", "horsiest", "horsing", "horst", "horsy", "hortative", "hortatory", "hortensia", "horticultural", "horticulturally", "horticulture", "horticulturist", "hosanna", "hose", "hosepipe", "hoses", "hosier", "hosiery", "hosing", "hospice", "hospitable", "hospitableness", "hospitably", "hospital", "hospitalisation", "hospitalise", "hospitalised", "hospitalises", "hospitalising", "hospitality", "hospitalization", "hospitalizations", "hospitalize", "hospitalized", "hospitalizes", "hospitalizing", "hospitals", "host", "hostage", "hostages", "hosted", "hostel", "hosteller", "hostelry", "hostess", "hostile", "hostilely", "hostilities", "hostility", "hosting", "hostler", "hosts", "hot", "hotbed", "hotbox", "hotcake", "hotchpotch", "hotdog", "hotel", "hotelier", "hotelkeeper", "hotelman", "hotels", "hotfoot", "hothead", "hotheaded", "hothouse", "hothr", "hotly", "hotness", "hotplate", "hotpot", "hotshot", "hotspot", "hotspots", "hotspur", "hottentot", "hotter", "hottest", "hottish", "houdah", "houhere", "hoummos", "hound", "hounded", "hounding", "hounds", "hour", "hourglass", "houri", "hourlong", "hourly", "hours", "house", "houseboat", "housebound", "housebreak", "housebreaker", "housebreaking", "housebroken", "housebuilder", "houseclean", "housecleaning", "housecoat", "housecraft", "housed", "housedog", "housefather", "housefly", "houseful", "houseguest", "household", "householder", "households", "househusband", "housekeep", "housekeeper", "housekeeping", "housel", "houselights", "houselled", "houselling", "housemaid", "houseman", "housemaster", "housemate", "housemother", "housepaint", "houseplant", "houseroom", "houses", "housetop", "housewarming", "housewife", "housewifely", "housewifery", "housewives", "housework", "housewrecker", "housing", "hovea", "hovel", "hovelled", "hovelling", "hover", "hovercraft", "hovered", "hovering", "hovers", "HOW", "How", "how", "HOW'D", "How'd", "how'd", "HOW'LL", "How'll", "how'll", "HOW'RE", "How're", "how're", "HOW'S", "How's", "how's", "howdah", "Howdy", "howdy", "However", "however", "howitzer", "howl", "howler", "howling", "HOWLL", "Howll", "howll", "howls", "HOWRE", "Howre", "howre", "HOWS", "Hows", "hows", "HOW\u2019D", "How\u2019d", "how\u2019d", "HOW\u2019LL", "How\u2019ll", "how\u2019ll", "HOW\u2019RE", "How\u2019re", "how\u2019re", "HOW\u2019S", "How\u2019s", "how\u2019s", "hoy", "hoya", "hoyden", "hoydenish", "hoydenism", "hr", "hrolf", "hrs", "hrt", "hrvatska", "hryvnia", "hsian", "html", "http", "hua", "hualapai", "hualpai", "huamachil", "huarache", "hub", "hubbub", "hubby", "hubcap", "hubris", "huck", "huckaback", "huckleberry", "huckster", "hud", "huddle", "huddled", "huddler", "huddles", "huddling", "hudood", "hudud", "hue", "hueless", "huff", "huffily", "huffiness", "huffing", "huffish", "huffishness", "huffs", "huffy", "hug", "huge", "hugely", "hugged", "hugger", "hugging", "hugoesque", "hugs", "huisache", "huitre", "huji", "hula", "hulk", "hulking", "hulky", "hull", "hullabaloo", "hulling", "hullo", "hulls", "hum", "human", "humane", "humanely", "humaneness", "humanisation", "humanise", "humanised", "humanises", "humanising", "humanism", "humanist", "humanistic", "humanitarian", "humanitarianism", "humanities", "humanity", "humanization", "humanize", "humanized", "humanizes", "humanizing", "humankind", "humanlike", "humanly", "humanness", "humanoid", "humans", "humate", "humble", "humblebee", "humbled", "humbleness", "humbles", "humbling", "humbly", "humbug", "humbugged", "humbugging", "humbugs", "humdinger", "humdrum", "humectant", "humeri", "humerous", "humerus", "humic", "humid", "humidified", "humidifier", "humidifies", "humidify", "humidifying", "humidity", "humidness", "humification", "humified", "humify", "humiliate", "humiliated", "humiliates", "humiliating", "humiliatingly", "humiliation", "humility", "humin", "hummed", "hummer", "humming", "hummingbird", "hummock", "hummus", "humongous", "humor", "humoral", "humored", "humoring", "humorist", "humorless", "humorlessly", "humorous", "humorously", "humorousness", "humors", "humour", "humoured", "humouring", "humourist", "humourless", "humourlessly", "humourous", "humours", "humous", "hump", "humpback", "humpbacked", "humped", "humpier", "humpiest", "humping", "humps", "humpy", "hums", "humulin", "humus", "hun", "hunch", "hunchback", "hunchbacked", "hunched", "hunches", "hundred", "hundredfold", "hundreds", "hundredth", "hundredweight", "hung", "hungarian", "Hungary", "hungary", "hunger", "hungering", "hungrier", "hungriest", "hungrily", "hungriness", "hungry", "hunk", "hunker", "hunkering", "hunkers", "hunt", "hunted", "hunter", "hunters", "hunting", "huntress", "hunts", "huntsman", "hurdle", "hurdler", "hurdles", "hurdling", "hurl", "hurled", "hurler", "hurling", "hurls", "huron", "hurrah", "hurricane", "hurricanes", "hurridly", "hurried", "hurriedly", "hurriedness", "hurries", "hurry", "hurrying", "hurt", "hurtful", "hurting", "hurtle", "hurtles", "hurtling", "hurts", "hus", "husain", "husayn", "husband", "husbandly", "husbandman", "husbandry", "husbands", "hush", "hushed", "hushes", "hushing", "hushpuppy", "husk", "huskier", "huskiest", "huskily", "huskiness", "husking", "husky", "hussar", "hussy", "hustings", "hustle", "hustler", "hustles", "hustling", "hut", "hutch", "hutment", "hutzpah", "huxleian", "huxleyan", "hyacinth", "hyaena", "hyalin", "hyaline", "hyalinisation", "hyalinization", "hyaloid", "hyaloplasm", "hyaloplasmic", "hyaluronidase", "hyazyme", "hybrid", "hybridisation", "hybridise", "hybridised", "hybridises", "hybridising", "hybridization", "hybridizations", "hybridize", "hybridized", "hybridizes", "hybridizing", "hybridoma", "hybrids", "hydantoin", "hydathode", "hydatid", "hydatidosis", "hydra", "hydrae", "hydralazine", "hydramnios", "hydrangea", "hydrant", "hydrargyrum", "hydrarthrosis", "hydrate", "hydrated", "hydration", "hydraulic", "hydraulically", "hydraulicly", "hydraulics", "hydrazine", "hydrazoite", "hydremia", "hydric", "hydride", "hydrilla", "hydrocarbon", "hydrocele", "hydrocephalic", "hydrocephalus", "hydrocephaly", "hydrocharidaceae", "hydrochloride", "hydrochlorofluorocarbon", "hydrochlorothiazide", "hydrocolloid", "hydrocortisone", "hydrocortone", "hydrocracking", "hydrodiuril", "hydrodynamic", "hydrodynamics", "hydroelectric", "hydroelectricity", "hydroflumethiazide", "hydrofluorocarbon", "hydrofoil", "hydrogel", "hydrogen", "hydrogenate", "hydrogenation", "hydrographic", "hydrographical", "hydrography", "hydroid", "hydrokinetic", "hydrokinetics", "hydrolise", "hydrolith", "hydrolize", "hydrologist", "hydrology", "hydrolysate", "hydrolyse", "hydrolysis", "hydrolyzable", "hydrolyze", "hydrolyzing", "hydromancer", "hydromancy", "hydromedusa", "hydromedusae", "hydromel", "hydrometer", "hydrometric", "hydrometry", "hydromorphone", "hydronephrosis", "hydropathic", "hydropathy", "hydrophilic", "hydrophobia", "hydrophobic", "hydrophobicity", "hydrophyte", "hydrophytic", "hydroplane", "hydroponic", "hydroponics", "hydrops", "hydrosphere", "hydrostatic", "hydrostatics", "hydrotherapy", "hydrothorax", "hydrous", "hydroxide", "hydroxy", "hydroxybenzene", "hydroxychloroquine", "hydroxyl", "hydroxymethyl", "hydroxyproline", "hydroxytetracycline", "hydroxyzine", "hydrozoa", "hydrozoan", "hyena", "hygiene", "hygienic", "hygienical", "hygienically", "hygienics", "hygienise", "hygienist", "hygienize", "hygrodeik", "hygrometer", "hygrophyte", "hygrophytic", "hygroscope", "hygroscopic", "hygroton", "hymenal", "hymeneal", "hymenium", "hymenopter", "hymenoptera", "hymenopteran", "hymenopteron", "hymenopterous", "hymie", "hymn", "hymnal", "hymnary", "hymnbook", "hymnody", "hynia", "hyniums", "hyoid", "hyoscine", "hyoscyamine", "hypaethral", "hypallage", "hypanthia", "hypanthium", "hype", "hyped", "hyperacidity", "hyperactive", "hyperactivity", "hyperacusia", "hyperacusis", "hyperadrenalism", "hyperadrenocorticism", "hyperaemia", "hyperaldosteronism", "hyperalimentation", "hyperbaton", "hyperbetalipoproteinemia", "hyperbilirubinemia", "hyperbola", "hyperbole", "hyperbolic", "hyperbolically", "hyperbolise", "hyperbolize", "hyperboloid", "hyperboloidal", "hypercalcaemia", "hypercalcemia", "hypercalcinuria", "hypercalciuria", "hypercapnia", "hypercarbia", "hypercatalectic", "hypercellularity", "hypercholesteremia", "hypercholesterolemia", "hypercoaster", "hypercritical", "hyperdactyly", "hyperemesis", "hyperemia", "hyperemic", "hyperextend", "hyperextension", "hyperfine", "hyperglycaemia", "hyperglycemia", "hyperhidrosis", "hypericales", "hypericism", "hyperidrosis", "hyperkalemia", "hyperlink", "hyperlipaemia", "hyperlipemia", "hyperlipidaemia", "hyperlipidemia", "hyperlipoidaemia", "hyperlipoidemia", "hyperlipoproteinemia", "hypermarket", "hypermastigote", "hypermedia", "hypermenorrhea", "hypermetropia", "hypermetropic", "hypermetropy", "hypermotility", "hypernatremia", "hypernym", "hypernymy", "hyperoartia", "hyperodontidae", "hyperon", "hyperope", "hyperopia", "hyperopic", "hyperostoses", "hyperostosis", "hyperotreta", "hyperparathyroidism", "hyperpiesia", "hyperpiesis", "hyperpigmentation", "hyperpituitarism", "hyperplasia", "hyperpnea", "hyperpyrexia", "hypersecretion", "hypersensitised", "hypersensitive", "hypersensitivity", "hypersensitized", "hypersomnia", "hypersplenism", "hyperstat", "hypertensin", "hypertension", "hypertensive", "hypertext", "hyperthermal", "hyperthermia", "hyperthermy", "hyperthyroidism", "hypertonia", "hypertonic", "hypertonicity", "hypertonus", "hypertrophied", "hypertrophy", "hypervelocity", "hyperventilate", "hyperventilation", "hypervitaminosis", "hypervolaemia", "hypervolemia", "hypes", "hypesthesia", "hypethral", "hypha", "hyphae", "hyphema", "hyphen", "hyphenate", "hyphenating", "hyphenation", "hyping", "hypnagogic", "hypnagogue", "hypnoanalysis", "hypnogenesis", "hypnogogic", "hypnoid", "hypnopedia", "hypnophobia", "hypnosis", "hypnotherapy", "hypnotic", "hypnotically", "hypnotise", "hypnotised", "hypnotiser", "hypnotises", "hypnotising", "hypnotism", "hypnotist", "hypnotize", "hypnotized", "hypnotizer", "hypnotizes", "hypnotizing", "hypo", "hypoactive", "hypoadrenalism", "hypoadrenocorticism", "hypobasidium", "hypobetalipoproteinemia", "hypoblast", "hypocalcaemia", "hypocalcemia", "hypocapnia", "hypocellularity", "hypochlorite", "hypochoeris", "hypochondria", "hypochondriac", "hypochondriacal", "hypochondriasis", "hypochondrium", "hypocorism", "hypocrisy", "hypocrite", "hypocritical", "hypocritically", "hypocycloid", "hypodermal", "hypodermatidae", "hypodermic", "hypodermis", "hypoesthesia", "hypogammaglobulinemia", "hypogastria", "hypogastrium", "hypogea", "hypogeum", "hypoglossal", "hypoglycaemia", "hypoglycaemic", "hypoglycemia", "hypoglycemic", "hypognathous", "hypogonadism", "hypokalemia", "hypolipoproteinemia", "hyponatremia", "hyponym", "hyponymy", "hypoparathyroidism", "hypophyseal", "hypophysectomise", "hypophysectomised", "hypophysectomize", "hypophysectomized", "hypophysectomy", "hypophyses", "hypophysial", "hypophysis", "hypopigmentation", "hypoplasia", "hypopnea", "hypoproteinemia", "hyposmia", "hypospadias", "hypostases", "hypostasis", "hypostatisation", "hypostatise", "hypostatization", "hypostatize", "hypotension", "hypotensive", "hypotenuse", "hypothalami", "hypothalamic", "hypothalamically", "hypothalamus", "hypothecate", "hypothermia", "hypothermic", "hypotheses", "hypothesis", "hypothesise", "hypothesised", "hypothesises", "hypothesising", "hypothesize", "hypothesized", "hypothesizes", "hypothesizing", "hypothetic", "hypothetical", "hypothetically", "hypothrombinemia", "hypothyroidism", "hypotonia", "hypotonic", "hypotonicity", "hypotonus", "hypovitaminosis", "hypovolaemia", "hypovolaemic", "hypovolemia", "hypovolemic", "hypoxia", "hypozeugma", "hypozeuxis", "hypsography", "hypsometer", "hypsometry", "hyraces", "hyrax", "hyson", "hyssop", "hysterectomy", "hysteresis", "hysteria", "hysteric", "hysterical", "hysterically", "hysterics", "hysterocatalepsy", "hysterosalpingogram", "hysteroscopy", "hysterotomy", "hytrin", "I", "i", "I'AM", "I'am", "i'am", "I'D", "I'd", "i'd", "I'D'VE", "I'd've", "i'd've", "I'LL", "I'll", "i'll", "I'LL'VE", "I'll've", "i'll've", "I'M'A", "I'm'a", "i'm'a", "I'VE", "I've", "i've", "I.E.", "i.e.", "iaa", "iaea", "IAF", "iaf", "IAM", "Iam", "iam", "iamb", "iambi", "iambic", "iambus", "ianfu", "iatrogenic", "iberia", "iberian", "ibex", "ibices", "ibidem", "ibis", "ibo", "ibrahim", "ibrd", "ibsenian", "ibuprofen", "icaco", "icao", "icbm", "icc", "ice", "iceberg", "iceboat", "icebound", "icebox", "icebreaker", "icecap", "icecream", "icefall", "icehouse", "icelandic", "iceman", "icepick", "icetray", "ichneumon", "ichor", "ichorous", "ichthyolatry", "ichthyologist", "ichthyology", "ichthyosaur", "ichthyosauri", "ichthyosaurus", "ichthyosauruses", "ichthyosis", "icicle", "icier", "iciest", "icily", "iciness", "icing", "icky", "ICMR", "icmr", "icon", "iconic", "iconoclasm", "iconoclast", "iconoclastic", "iconography", "iconolatry", "iconology", "iconoscope", "iconostas", "iconostases", "icons", "icosahedra", "icosahedral", "icosahedron", "icsh", "ictal", "icteric", "icterogenic", "ictic", "ictodosaur", "ictus", "icu", "icy", "id", "ida", "iddm", "idea", "ideal", "idealisation", "idealise", "idealised", "idealises", "idealising", "idealism", "idealist", "idealistic", "ideality", "idealization", "idealize", "idealized", "idealizes", "idealizing", "ideally", "idealogue", "ideals", "ideas", "ideata", "ideate", "ideation", "ideational", "ideatum", "idempotent", "identical", "identically", "identicalness", "identifiable", "identifiably", "identification", "identified", "identifier", "identifiers", "identifies", "identify", "identifying", "identities", "identity", "ideogram", "ideograph", "ideographic", "ideographically", "ideography", "ideologic", "ideological", "ideologically", "ideologist", "ideologue", "ideology", "ides", "idesia", "idf", "idiocy", "idiographic", "idiolatry", "idiolect", "idiom", "idiomatic", "idiomatical", "idiomatically", "idioms", "idiopathic", "idiopathy", "idiosyncrasy", "idiosyncratic", "idiot", "idiotic", "idiotically", "idiots", "idle", "idled", "idleness", "idler", "idles", "idling", "idly", "idocrase", "idol", "idolater", "idolatress", "idolatrous", "idolatrously", "idolatry", "idolisation", "idolise", "idolised", "idoliser", "idolises", "idolising", "idolization", "idolize", "idolized", "idolizer", "idolizes", "idolizing", "idp", "IDVE", "Idve", "idve", "idyl", "idyll", "idyllic", "idyllically", "ie", "IE.", "ie.", "ied", "IEEE", "ieee", "If", "if", "ifc", "iffy", "iga", "igbo", "igd", "ige", "igg", "igloo", "iglu", "igm", "igneous", "ignescent", "ignitable", "ignite", "ignited", "igniter", "ignites", "ignitible", "igniting", "ignition", "ignitor", "ignobility", "ignoble", "ignobleness", "ignobly", "ignominious", "ignominiously", "ignominiousness", "ignominy", "ignoramus", "ignorance", "ignorant", "ignorantly", "ignorantness", "ignore", "ignored", "ignores", "ignoring", "igorrorote", "igorrote", "iguana", "iguania", "iguanid", "iguanodon", "iguassu", "IIT", "iit", "ijssel", "ijsselmeer", "ijtihad", "ike", "ikhanaton", "ikon", "ilama", "ileitis", "ileostomy", "ileum", "ileus", "ilia", "iliac", "ilion", "ilium", "ilk", "ill", "ILL.", "Ill.", "ill.", "illation", "illative", "illegal", "illegalise", "illegality", "illegalize", "illegally", "illegibility", "illegible", "illegibly", "illegitimacy", "illegitimate", "illegitimately", "illiberal", "illiberality", "illiberally", "illicit", "illicitly", "illicitness", "illimitable", "illinois", "illiteracy", "illiterate", "illness", "illnesses", "illogic", "illogical", "illogicality", "illogically", "illogicalness", "ills", "illume", "illuminance", "illuminant", "illuminate", "illuminated", "illuminates", "illuminating", "illumination", "illumine", "illusion", "illusional", "illusionary", "illusionist", "illusions", "illusive", "illusory", "illustrate", "illustrated", "illustrates", "illustrating", "illustration", "illustrations", "illustrative", "illustrator", "illustrious", "illustriously", "illustriousness", "ilmen", "ilmenite", "ilosone", "ilx", "ilxx", "ilxxx", "image", "imagery", "images", "imaginable", "imaginary", "imagination", "imaginative", "imaginatively", "imaginativeness", "imagine", "imagined", "imagineing", "imagines", "imaging", "imagining", "imagism", "imago", "imagoes", "imam", "imaret", "imaum", "imavate", "imbalance", "imbalanced", "imbauba", "imbecile", "imbecilic", "imbecility", "imbed", "imbedded", "imbedding", "imbeds", "imbibe", "imbiber", "imbibes", "imbibing", "imbibition", "imbricate", "imbricated", "imbrication", "imbroglio", "imbrue", "imbrues", "imbue", "imidazole", "imide", "iminazole", "imipramine", "imitate", "imitated", "imitates", "imitating", "imitation", "imitative", "imitator", "immaculate", "immaculately", "immaculateness", "immanence", "immanency", "immanent", "immaterial", "immaterialise", "immateriality", "immaterialize", "immature", "immaturely", "immatureness", "immaturity", "immeasurable", "immeasurably", "immediacy", "immediate", "immediately", "immediateness", "immemorial", "immense", "immensely", "immenseness", "immensity", "immensurable", "immerse", "immersed", "immerses", "immersing", "immersion", "immigrant", "immigrants", "immigrate", "immigrated", "immigrates", "immigrating", "immigration", "imminence", "imminency", "imminent", "imminently", "imminentness", "immingle", "immiscible", "immix", "immobile", "immobilisation", "immobilise", "immobilised", "immobiliser", "immobilisers", "immobilises", "immobilising", "immobility", "immobilization", "immobilize", "immobilized", "immobilizer", "immobilizers", "immobilizes", "immobilizing", "immoderate", "immoderately", "immoderateness", "immoderation", "immodest", "immodestly", "immodesty", "immolate", "immolation", "immoral", "immorality", "immorally", "immortal", "immortalise", "immortalised", "immortalises", "immortalising", "immortality", "immortalize", "immortalized", "immortalizes", "immortalizing", "immortelle", "immotile", "immotility", "immovability", "immovable", "immovableness", "immovably", "immoveable", "immune", "immunisation", "immunise", "immunised", "immunises", "immunising", "immunity", "immunization", "immunize", "immunized", "immunizes", "immunizing", "immunoassay", "immunochemical", "immunochemistry", "immunocompetence", "immunocompetent", "immunocompromised", "immunodeficiency", "immunodeficient", "immunoelectrophoresis", "immunofluorescence", "immunogen", "immunogenic", "immunogenicity", "immunoglobulin", "immunohistochemistry", "immunologic", "immunological", "immunologically", "immunologist", "immunology", "immunopathology", "immunosuppressant", "immunosuppressed", "immunosuppression", "immunosuppressive", "immunosuppressor", "immunotherapeutic", "immunotherapy", "immure", "immurement", "immutability", "immutable", "immutableness", "immutably", "imp", "impact", "impacted", "impacting", "impaction", "impacts", "impair", "impaired", "impairer", "impairing", "impairment", "impairs", "impala", "impale", "impalement", "impales", "impaling", "impalpability", "impalpable", "impalpably", "impanel", "impaneled", "impaneling", "impanelled", "impanelling", "impanels", "imparipinnate", "impart", "impartation", "impartial", "impartiality", "impartially", "imparting", "imparts", "impassable", "impasse", "impassioned", "impassive", "impassively", "impassiveness", "impassivity", "impasto", "impatience", "impatient", "impatiently", "impeach", "impeachability", "impeached", "impeaches", "impeaching", "impeachment", "impeachments", "impeccability", "impeccable", "impeccably", "impeccant", "impecunious", "impecuniousness", "impedance", "impede", "impeded", "impedes", "impediment", "impedimenta", "impeding", "impedingly", "impel", "impelled", "impellent", "impeller", "impelling", "impels", "impend", "impendence", "impendency", "impendent", "impending", "impenetrability", "impenetrable", "impenetrableness", "impenitence", "impenitency", "impenitent", "impenitently", "imperative", "imperatively", "imperativeness", "imperceptibility", "imperceptible", "imperceptibly", "imperfect", "imperfectibility", "imperfectible", "imperfection", "imperfective", "imperfectly", "imperfectness", "imperforate", "imperia", "imperial", "imperialism", "imperialist", "imperialistic", "imperially", "imperil", "imperiled", "imperiling", "imperilled", "imperilling", "imperils", "imperious", "imperiously", "imperiousness", "imperishability", "imperishable", "imperishableness", "imperishingness", "imperium", "impermanence", "impermanency", "impermanent", "impermeability", "impermeable", "impermeableness", "impermissibility", "impermissible", "impermissibly", "impersonal", "impersonally", "impersonate", "impersonates", "impersonating", "impersonation", "impersonator", "impertinence", "impertinent", "impertinently", "imperturbability", "imperturbable", "imperturbableness", "imperviable", "impervious", "imperviousness", "impetiginous", "impetigo", "impetuosity", "impetuous", "impetuously", "impetuousness", "impetus", "impi", "impies", "impiety", "impinge", "impingement", "impinges", "impinging", "impious", "impiously", "impiousness", "impish", "impishly", "impishness", "implacable", "implant", "implantation", "implanted", "implanting", "implants", "implausibility", "implausible", "implausibleness", "implausibly", "implement", "implemental", "implementation", "implemented", "implementing", "implements", "implicate", "implicated", "implicates", "implicating", "implication", "implicational", "implications", "implicative", "implicit", "implicitly", "implicitness", "implied", "implies", "implike", "implode", "implodes", "imploding", "implore", "implores", "imploring", "imploringly", "implosion", "imply", "implying", "impolite", "impolitely", "impoliteness", "impolitic", "imponderable", "import", "importance", "important", "importantly", "importation", "imported", "importee", "importer", "importing", "imports", "importunate", "importunately", "importune", "importunes", "importuning", "importunity", "impose", "imposed", "imposes", "imposing", "imposingly", "imposition", "impossibility", "impossible", "impossibleness", "impossibly", "impost", "imposter", "impostor", "imposture", "impotence", "impotency", "impotent", "impotently", "impound", "impounded", "impounding", "impoundment", "impounds", "impoverish", "impoverished", "impoverishes", "impoverishment", "impracticability", "impracticable", "impracticableness", "impracticably", "impractical", "impracticality", "imprecate", "imprecation", "imprecise", "imprecisely", "impreciseness", "imprecision", "impregnability", "impregnable", "impregnably", "impregnate", "impregnates", "impregnating", "impregnation", "impresario", "impress", "impressed", "impresses", "impressible", "impressing", "impression", "impressionable", "impressionist", "impressionistic", "impressions", "impressive", "impressively", "impressiveness", "impressment", "imprimatur", "imprint", "imprinting", "imprints", "imprison", "imprisoned", "imprisoning", "imprisonment", "imprisons", "improbability", "improbable", "improbableness", "improbably", "impromptu", "improper", "improperly", "improperness", "impropriety", "improvable", "improve", "improved", "improvement", "improvements", "improver", "improves", "improvidence", "improvident", "improvidently", "improving", "improvisation", "improvise", "improvised", "improvises", "improvising", "improvize", "imprudence", "imprudent", "imprudently", "impudence", "impudent", "impudently", "impugn", "impugnable", "impugning", "impuissance", "impuissant", "impulse", "impulses", "impulsion", "impulsive", "impulsively", "impulsiveness", "impunity", "impure", "impureness", "impurity", "imputable", "imputation", "impute", "imputes", "imputing", "imputrescible", "imu", "imuran", "In", "in", "IN.", "In.", "in.", "inability", "inaccessibility", "inaccessible", "inaccessibly", "inaccuracies", "inaccuracy", "inaccurate", "inaccurately", "inaction", "inactivate", "inactivates", "inactivating", "inactivation", "inactive", "inactiveness", "inactivity", "inadequacy", "inadequate", "inadequately", "inadequateness", "inadmissibility", "inadmissible", "inadvertence", "inadvertency", "inadvertent", "inadvertently", "inadvisability", "inadvisable", "inadvisably", "inaesthetic", "inalienable", "inalienably", "inalterable", "inamorata", "inamorato", "inane", "inanely", "inanimate", "inanimateness", "inanition", "inanity", "inapplicability", "inapplicable", "inapposite", "inappositeness", "inappreciable", "inappropriate", "inappropriately", "inappropriateness", "inapt", "inaptitude", "inaptness", "inarguable", "inarguably", "inarticulate", "inarticulately", "inartistic", "inattention", "inattentive", "inattentively", "inattentiveness", "inaudibility", "inaudible", "inaudibleness", "inaudibly", "inaugural", "inaugurally", "inaugurate", "inaugurated", "inaugurates", "inaugurating", "inauguration", "inauspicious", "inauspiciously", "inauspiciousness", "inauthentic", "inboard", "inborn", "inbound", "inbred", "inbreed", "inbreeding", "inbuilt", "INC", "inc", "INC.", "Inc.", "inc.", "incalculable", "incalescence", "incan", "incandesce", "incandescence", "incandescent", "incantation", "incapability", "incapable", "incapableness", "incapacitate", "incapacitated", "incapacitates", "incapacitating", "incapacity", "incarcerate", "incarcerates", "incarcerating", "incarceration", "incarnadine", "incarnate", "incarnation", "incase", "incased", "incasement", "incaution", "incautious", "incautiously", "incautiousness", "incendiarism", "incendiary", "incense", "incensed", "incenses", "incensing", "incentive", "incentives", "inception", "inceptive", "incertain", "incertitude", "incessancy", "incessant", "incessantly", "incessantness", "incest", "incestuous", "incestuously", "inch", "inched", "incheon", "inches", "inching", "inchoate", "inchoative", "inchworm", "incidence", "incidences", "incident", "incidental", "incidentally", "incidents", "incienso", "incinerate", "incinerates", "incinerating", "incineration", "incinerator", "incipience", "incipiency", "incipient", "incise", "incised", "incises", "incising", "incision", "incisive", "incisively", "incisiveness", "incisor", "incisura", "incisure", "incitation", "incite", "incitement", "inciter", "incites", "inciting", "incitive", "incivility", "inclemency", "inclement", "inclementness", "inclination", "incline", "inclined", "inclines", "inclining", "inclinometer", "inclose", "inclosure", "include", "included", "includes", "including", "inclusion", "inclusions", "inclusive", "incognito", "incognizable", "incognizance", "incognizant", "incognoscible", "incoherence", "incoherency", "incoherent", "incoherently", "incombustible", "income", "incomes", "incoming", "incommensurable", "incommensurate", "incommode", "incommodious", "incommodiousness", "incommunicado", "incommunicative", "incommutability", "incommutable", "incomparable", "incomparably", "incompatibility", "incompatible", "incompatibly", "incompetence", "incompetency", "incompetent", "incompetently", "incomplete", "incompletely", "incompleteness", "incomprehensibility", "incomprehensible", "incomprehension", "incomprehensive", "incompressibility", "incompressible", "incomputable", "inconceivability", "inconceivable", "inconceivableness", "inconceivably", "inconclusive", "inconclusively", "inconclusiveness", "incongruent", "incongruity", "incongruous", "incongruously", "incongruousness", "inconsequence", "inconsequent", "inconsequential", "inconsequentially", "inconsequently", "inconsiderable", "inconsiderate", "inconsiderately", "inconsiderateness", "inconsideration", "inconsistencies", "inconsistency", "inconsistent", "inconsistently", "inconsolable", "inconspicuous", "inconspicuously", "inconspicuousness", "inconstancy", "inconstant", "incontestable", "incontestible", "incontinence", "incontinency", "incontinent", "incontrovertibility", "incontrovertible", "incontrovertibleness", "incontrovertibly", "inconvenience", "inconveniences", "inconveniencing", "inconvenient", "inconveniently", "inconvertibility", "inconvertible", "incoordination", "incorporate", "incorporated", "incorporates", "incorporating", "incorporation", "incorporative", "incorporeal", "incorporeality", "incorrect", "incorrectly", "incorrectness", "incorrigible", "incorrigibly", "incorrupt", "incorrupted", "incorruptibility", "incorruptible", "incorruption", "incorruptness", "increase", "increased", "increases", "increasing", "increasingly", "incredibility", "incredible", "incredibleness", "incredibly", "incredulity", "incredulous", "incredulously", "increment", "incremental", "increments", "incriminate", "incriminates", "incriminating", "incriminatingly", "incrimination", "incriminatory", "incrust", "incrustation", "incubate", "incubates", "incubating", "incubation", "incubator", "incubi", "incubus", "incudes", "inculcate", "inculcates", "inculcating", "inculcation", "inculpability", "inculpable", "inculpableness", "inculpate", "inculpation", "inculpative", "inculpatory", "incumbency", "incumbent", "incumbents", "incumbrance", "incur", "incurability", "incurable", "incurableness", "incurably", "incurious", "incurred", "incurrence", "incurring", "incurs", "incursion", "incursive", "incurvate", "incurvation", "incurvature", "incurved", "incus", "IND.", "Ind.", "ind.", "indaba", "indapamide", "indebted", "indebtedness", "indecency", "indecent", "indecently", "indecipherable", "indecision", "indecisive", "indecisively", "indecisiveness", "indecorous", "indecorously", "indecorousness", "indecorum", "Indeed", "indeed", "indefatigability", "indefatigable", "indefatigableness", "indefatigably", "indefeasible", "indefensible", "indefinable", "indefinite", "indefinitely", "indefiniteness", "indefinity", "indehiscent", "indelible", "indelibly", "indelicacy", "indelicate", "indemnification", "indemnified", "indemnifies", "indemnify", "indemnifying", "indemnity", "indene", "indent", "indentation", "indenting", "indention", "indents", "indenture", "indentured", "independence", "independency", "independent", "independently", "inderal", "indescribable", "indescribably", "indestructibility", "indestructible", "indeterminable", "indeterminably", "indeterminacy", "indeterminate", "indeterminateness", "indetermination", "index", "indexation", "indexed", "indexer", "indexers", "indexes", "indexical", "indexing", "indexless", "India", "india", "indian", "indiana", "indicant", "indicate", "indicated", "indicates", "indicating", "indication", "indications", "indicative", "indicator", "indicators", "indicatory", "indices", "indict", "indictability", "indictable", "indicted", "indicting", "indiction", "indictment", "indictments", "indicts", "indie", "indifference", "indifferent", "indifferently", "indigen", "indigence", "indigene", "indigenous", "indigenously", "indigenousness", "indigent", "indigestibility", "indigestible", "indigestibleness", "indigestion", "indignant", "indignantly", "indignation", "indignity", "indigo", "indigoes", "indigotin", "indinavir", "indirect", "indirection", "indirectly", "indirectness", "indiscernible", "indiscipline", "indiscreet", "indiscreetly", "indiscreetness", "indiscrete", "indiscretion", "indiscriminate", "indiscriminately", "indiscriminating", "indispensability", "indispensable", "indispensableness", "indispose", "indisposed", "indisposition", "indisputability", "indisputable", "indissoluble", "indistinct", "indistinctly", "indistinctness", "indistinguishability", "indistinguishable", "indite", "indium", "individual", "individualisation", "individualise", "individualised", "individualises", "individualising", "individualism", "individualist", "individualistic", "individualistically", "individuality", "individualization", "individualize", "individualized", "individualizes", "individualizing", "individually", "individuals", "individuate", "individuation", "indivisible", "indocile", "indocin", "indoctrinate", "indoctrinated", "indoctrinates", "indoctrinating", "indoctrination", "indolence", "indolent", "indolently", "indomethacin", "indomitability", "indomitable", "Indonesia", "indonesia", "indonesian", "indoor", "indoors", "indorse", "indorsement", "indorser", "indrawn", "indri", "indubitability", "indubitable", "indubitably", "induce", "induced", "inducement", "inducer", "induces", "inducing", "inducive", "induct", "inductance", "inductee", "induction", "inductive", "inductor", "indue", "indulge", "indulgence", "indulgent", "indulgently", "indulges", "indulging", "indument", "indumenta", "indumentum", "indurate", "induration", "indusia", "indusial", "indusium", "industrial", "industrialisation", "industrialise", "industrialised", "industrialises", "industrialising", "industrialism", "industrialist", "industrialization", "industrialize", "industrialized", "industrializes", "industrializing", "industrially", "industries", "industrious", "industriously", "industriousness", "industry", "indwell", "indweller", "indwelling", "inebriant", "inebriate", "inebriated", "inebriation", "inebriety", "inediable", "inedible", "ineffable", "ineffably", "ineffective", "ineffectively", "ineffectiveness", "ineffectual", "ineffectuality", "ineffectually", "ineffectualness", "inefficacious", "inefficaciously", "inefficaciousness", "inefficacy", "inefficiency", "inefficient", "inefficiently", "inelaborate", "inelastic", "inelasticity", "inelegance", "inelegant", "inelegantly", "ineligibility", "ineligible", "ineloquently", "ineluctability", "ineluctable", "ineluctably", "inept", "ineptitude", "ineptly", "ineptness", "inequalities", "inequality", "inequitable", "inequitably", "inequity", "ineradicable", "inerrable", "inerrancy", "inerrant", "inert", "inertia", "inertial", "inertness", "inescapable", "inescapably", "inessential", "inessentiality", "inestimable", "inevitability", "inevitable", "inevitableness", "inevitably", "inexact", "inexactitude", "inexactly", "inexactness", "inexcusable", "inexcusably", "inexhaustible", "inexhaustibly", "inexorability", "inexorable", "inexorableness", "inexorably", "inexpedience", "inexpediency", "inexpedient", "inexpediently", "inexpensive", "inexpensively", "inexpensiveness", "inexperience", "inexperienced", "inexperient", "inexpert", "inexpertly", "inexpiable", "inexplicable", "inexplicably", "inexplicit", "inexplicitness", "inexpressible", "inexpressibly", "inexpressive", "inexpressively", "inexpugnable", "inexpungeable", "inexpungible", "inextensible", "inexterminable", "inextinguishable", "inextirpable", "inextricable", "inextricably", "infallibility", "infallible", "infamous", "infamy", "infancy", "infant", "infanticide", "infantile", "infantilism", "infantilize", "infantilized", "infantry", "infantryman", "infants", "infarct", "infarction", "infatuate", "infatuated", "infatuation", "infeasibility", "infeasible", "infect", "infected", "infecting", "infection", "infections", "infectious", "infectiously", "infective", "infects", "infelicitous", "infelicitously", "infelicity", "infer", "inference", "inferences", "inferential", "inferior", "inferiority", "infernal", "infernally", "inferno", "inferred", "inferring", "infers", "infertile", "infertility", "infest", "infestation", "infested", "infesting", "infests", "infidel", "infidelity", "infield", "infielder", "infiltrate", "infiltrated", "infiltrates", "infiltrating", "infiltration", "infiltrator", "infinite", "infinitely", "infiniteness", "infinitesimal", "infinitival", "infinitive", "infinitude", "infinity", "infirm", "infirmary", "infirmity", "infix", "infixes", "inflame", "inflamed", "inflaming", "inflammability", "inflammable", "inflammation", "inflammatory", "inflatable", "inflate", "inflated", "inflater", "inflates", "inflating", "inflation", "inflationary", "inflator", "inflect", "inflected", "inflection", "inflectional", "inflections", "inflexibility", "inflexible", "inflexibleness", "inflexibly", "inflexion", "inflexions", "inflict", "inflicted", "inflicting", "infliction", "inflicts", "infliximab", "inflorescence", "inflow", "inflowing", "influence", "influenced", "influences", "influencing", "influent", "influential", "influentially", "influenza", "influx", "info", "infolding", "infomercial", "inform", "informal", "informality", "informally", "informant", "informatics", "information", "informational", "informative", "informatively", "informatory", "informed", "informer", "informercial", "informing", "informs", "infotainment", "infra", "infract", "infracted", "infracting", "infraction", "infracts", "infrahuman", "inframaxillary", "infrangible", "infrared", "infrasonic", "infrastructure", "infrequency", "infrequent", "infrequently", "infrigidation", "infringe", "infringed", "infringement", "infringes", "infringing", "infructescence", "infundibula", "infundibulum", "infuriate", "infuriated", "infuriates", "infuriating", "infuriation", "infuscate", "infuse", "infused", "infuses", "infusing", "infusion", "infusorian", "inga", "ingathering", "ingeminate", "ingenious", "ingeniously", "ingeniousness", "ingenue", "ingenuity", "ingenuous", "ingenuously", "ingenuousness", "inger", "ingerman", "ingest", "ingesta", "ingesting", "ingestion", "ingests", "inglenook", "inglorious", "ingloriously", "ingot", "ingraft", "ingrain", "ingrained", "ingraining", "ingrains", "ingrate", "ingratiate", "ingratiates", "ingratiating", "ingratiatingly", "ingratiation", "ingratiatory", "ingratitude", "ingredient", "ingredients", "ingroup", "ingrowing", "ingrown", "ingrowth", "inguen", "inguinal", "ingurgitate", "ingush", "ingushes", "inhabit", "inhabitable", "inhabitancy", "inhabitant", "inhabitants", "inhabitation", "inhabited", "inhabiting", "inhabits", "inhalant", "inhalation", "inhalator", "inhale", "inhaler", "inhales", "inhaling", "inharmonic", "inharmonious", "inharmoniousness", "inhere", "inherence", "inherency", "inherent", "inherently", "inhering", "inherit", "inheritable", "inheritance", "inherited", "inheriting", "inheritor", "inheritress", "inheritrix", "inherits", "inhibit", "inhibited", "inhibiting", "inhibition", "inhibitor", "inhibitors", "inhibitory", "inhibits", "inhomogeneity", "inhomogeneous", "inhospitable", "inhospitableness", "inhospitably", "inhospitality", "inhuman", "inhumane", "inhumanely", "inhumaneness", "inhumanity", "inhumation", "inhume", "inhumed", "inimical", "inimitable", "inimitably", "inion", "iniquitous", "iniquitously", "iniquity", "initial", "initialed", "initialing", "initialisation", "initialise", "initialised", "initialises", "initialising", "initialism", "initialization", "initialize", "initialized", "initializes", "initializing", "initialled", "initialling", "initially", "initials", "initiate", "initiated", "initiates", "initiating", "initiation", "initiative", "initiatives", "initiator", "initiatory", "inject", "injectable", "injectant", "injected", "injecting", "injection", "injections", "injector", "injects", "injudicious", "injudiciously", "injudiciousness", "injun", "injunction", "injure", "injured", "injures", "injuries", "injuring", "injurious", "injuriously", "injuriousness", "injury", "injustice", "ink", "inka", "inkberry", "inkblot", "inkier", "inkiest", "inkiness", "inkle", "inkling", "inkpad", "inkpot", "inkstand", "inkwell", "inky", "inla", "inlaid", "inland", "inlay", "inlet", "inmarriage", "inmarry", "inmate", "inmates", "inmost", "inn", "innards", "innate", "innately", "innateness", "inner", "innermost", "innersole", "innervate", "innervates", "innervating", "innervation", "inning", "innings", "innkeeper", "innocence", "innocency", "innocense", "innocent", "innocently", "innocents", "innocuous", "innovate", "innovated", "innovates", "innovating", "innovation", "innovational", "innovations", "innovative", "innovativeness", "innovator", "innoxious", "inns", "innuendo", "innuendoes", "innumerable", "innumerableness", "innumerate", "innumerous", "inocor", "inocula", "inoculant", "inoculate", "inoculates", "inoculating", "inoculation", "inoculator", "inoculum", "inodorous", "inoffensive", "inoffensively", "inoperable", "inoperative", "inopportune", "inopportunely", "inopportuneness", "inordinate", "inordinately", "inordinateness", "inorganic", "inorganically", "inosculate", "inosculation", "inosine", "inositol", "inpatient", "inpour", "inpouring", "input", "inputing", "inputs", "inquest", "inquietude", "inquire", "inquired", "inquirer", "inquires", "inquiries", "inquiring", "inquiringly", "inquiry", "inquisition", "inquisitive", "inquisitively", "inquisitiveness", "inquisitor", "inquisitorial", "inquisitory", "inr", "inroad", "inrush", "insalubrious", "insalubriousness", "insalubrity", "insane", "insanely", "insaneness", "insanitary", "insanity", "insatiable", "insatiably", "insatiate", "inscribe", "inscribed", "inscribes", "inscribing", "inscription", "inscriptions", "inscriptive", "inscriptively", "inscrutability", "inscrutable", "inscrutably", "insect", "insectan", "insectaria", "insectarium", "insecticidal", "insecticidally", "insecticide", "insectifuge", "insectivore", "insectivorous", "insects", "insecure", "insecurely", "insecureness", "insecurity", "inseminate", "inseminates", "inseminating", "insemination", "insensate", "insensately", "insensibility", "insensible", "insensibly", "insensitive", "insensitively", "insensitiveness", "insensitivity", "insentience", "insentient", "inseparable", "inseparably", "insert", "inserted", "inserting", "insertion", "insertions", "inserts", "inset", "insetting", "inshore", "inside", "insider", "insiders", "insides", "insidious", "insidiously", "insidiousness", "insight", "insightful", "insightfulness", "insights", "insignia", "insignificance", "insignificant", "insignificantly", "insincere", "insincerely", "insincerity", "insinuate", "insinuates", "insinuating", "insinuatingly", "insinuation", "insipid", "insipidity", "insipidly", "insipidness", "insist", "insisted", "insistence", "insistency", "insistent", "insistently", "insisting", "insists", "insobriety", "insofar", "insolate", "insolation", "insole", "insolence", "insolent", "insolently", "insolubility", "insoluble", "insolvable", "insolvency", "insolvent", "insomnia", "insomniac", "insomuch", "insouciance", "insouciant", "inspan", "inspanned", "inspanning", "inspect", "inspected", "inspecting", "inspection", "inspections", "inspector", "inspectorate", "inspectors", "inspectorship", "inspects", "inspiration", "inspirational", "inspirationally", "inspiratory", "inspire", "inspired", "inspirer", "inspires", "inspiring", "inspirit", "inspiriting", "inspissate", "inspissation", "inst", "instability", "install", "installation", "installations", "installed", "installing", "installment", "installments", "installs", "instalment", "instalments", "instals", "instance", "instances", "instancy", "instant", "instantaneous", "instantaneously", "instantaneousness", "instantiate", "instantiation", "instantly", "instar", "instauration", "Instead", "instead", "instep", "instigant", "instigate", "instigated", "instigates", "instigating", "instigation", "instigative", "instigator", "instil", "instill", "instillation", "instillator", "instilling", "instillment", "instills", "instilment", "instils", "instinct", "instinctive", "instinctively", "instincts", "institute", "instituted", "institutes", "instituting", "institution", "institutional", "institutionalisation", "institutionalise", "institutionalised", "institutionalises", "institutionalising", "institutionalization", "institutionalize", "institutionalized", "institutionalizes", "institutionalizing", "institutionally", "institutions", "instroke", "instruct", "instructed", "instructing", "instruction", "instructional", "instructions", "instructive", "instructively", "instructor", "instructors", "instructorship", "instructress", "instructs", "instrument", "instrumental", "instrumentalism", "instrumentalist", "instrumentality", "instrumentate", "instrumentation", "instruments", "insubordinate", "insubordination", "insubstantial", "insubstantiality", "insubstantially", "insufferable", "insufferably", "insufficiency", "insufficient", "insufficiently", "insufflate", "insufflation", "insula", "insulae", "insulant", "insular", "insularism", "insularity", "insulate", "insulated", "insulates", "insulating", "insulation", "insulator", "insulin", "insult", "insulted", "insulting", "insultingly", "insults", "insuperable", "insuperably", "insupportable", "insurability", "insurable", "insurance", "insure", "insured", "insurer", "insurers", "insures", "insurgence", "insurgency", "insurgent", "insuring", "insurmountable", "insurrection", "insurrectional", "insurrectionary", "insurrectionism", "insurrectionist", "insusceptible", "intact", "intactness", "intagli", "intaglio", "intake", "intangibility", "intangible", "intangibleness", "integer", "integral", "integrality", "integrally", "integrate", "integrated", "integrates", "integrating", "integration", "integrative", "integrator", "integrity", "integument", "integumental", "integumentary", "intellect", "intellection", "intellectual", "intellectualisation", "intellectualise", "intellectualised", "intellectualises", "intellectualising", "intellectualization", "intellectualize", "intellectualized", "intellectualizes", "intellectualizing", "intellectually", "intellectuals", "intelligence", "intelligent", "intelligently", "intelligentsia", "intelligibility", "intelligible", "intelligibly", "intemperance", "intemperate", "intemperately", "intemperateness", "intend", "intended", "intending", "intends", "intense", "intensely", "intensification", "intensified", "intensifier", "intensifies", "intensify", "intensifying", "intension", "intensional", "intensities", "intensity", "intensive", "intensively", "intensiveness", "intent", "intention", "intentional", "intentionality", "intentionally", "intentions", "intently", "intentness", "inter", "inter-bank", "inter-city", "inter-office", "interact", "interacting", "interaction", "interactional", "interactions", "interactive", "interahamwe", "interbrain", "interbred", "interbreds", "interbreed", "interbreeding", "intercalary", "intercalate", "intercalates", "intercalating", "intercalation", "intercede", "interceded", "intercedes", "interceding", "intercellular", "intercept", "intercepted", "intercepting", "interception", "interceptor", "intercepts", "intercession", "intercessor", "interchange", "interchangeability", "interchangeable", "interchangeableness", "interchangeably", "interchanges", "interchanging", "interchurch", "intercollegiate", "intercom", "intercommunicate", "intercommunication", "intercommunion", "interconnect", "interconnected", "interconnectedness", "interconnecting", "interconnection", "interconnects", "intercontinental", "intercostal", "intercourse", "intercrop", "intercropped", "intercropping", "intercrossed", "intercut", "intercuts", "intercutting", "interdenominational", "interdepartmental", "interdepend", "interdependence", "interdependency", "interdependent", "interdict", "interdicting", "interdiction", "interdicts", "interdisciplinary", "interest", "interested", "interestedness", "interesting", "interestingly", "interestingness", "interests", "interface", "interfaces", "interfacial", "interfaith", "interfere", "interfered", "interference", "interferes", "interfering", "interferometer", "interferon", "intergalactic", "interim", "interior", "interiorise", "interiorises", "interiorize", "interiorizes", "interiors", "interject", "interjecting", "interjection", "interjects", "interlace", "interlaced", "interlaces", "interlacing", "interlanguage", "interlap", "interlapped", "interlapping", "interlaps", "interlard", "interlayer", "interleaf", "interleave", "interleaves", "interleaving", "interleukin", "interlineal", "interlinear", "interlink", "interlinking", "interlobular", "interlock", "interlocking", "interlocks", "interlocutor", "interlocutory", "interlope", "interloper", "interlude", "intermarriage", "intermarried", "intermarry", "intermarrying", "intermediary", "intermediate", "intermediately", "intermediates", "intermediation", "intermediator", "interment", "intermeshed", "intermezzi", "intermezzo", "interminable", "interminably", "intermingle", "intermingles", "intermingling", "intermission", "intermit", "intermits", "intermitted", "intermittence", "intermittency", "intermittent", "intermittently", "intermitting", "intermix", "intermixed", "intermixes", "intermixing", "intermixture", "intermolecular", "intermural", "intern", "internal", "internalisation", "internalise", "internalised", "internalises", "internalising", "internality", "internalization", "internalize", "internalized", "internalizes", "internalizing", "internally", "international", "internationalisation", "internationalise", "internationalised", "internationalises", "internationalising", "internationalism", "internationalist", "internationalistic", "internationality", "internationalization", "internationalize", "internationalized", "internationalizes", "internationalizing", "internationally", "interne", "internecine", "internee", "internet", "interning", "internist", "internment", "internode", "interns", "internship", "internuncio", "interoception", "interoceptive", "interoceptor", "interoperability", "interoperable", "interpellate", "interpellation", "interpenetrate", "interpenetration", "interpersonal", "interphone", "interplanetary", "interplay", "interplead", "interpled", "interpolate", "interpolates", "interpolating", "interpolation", "interpose", "interposition", "interpret", "interpretable", "interpretation", "interpretations", "interpretative", "interpreted", "interpreter", "interpreting", "interpretive", "interprets", "interracial", "interracially", "interred", "interreflection", "interreges", "interregna", "interregnum", "interrelate", "interrelated", "interrelatedness", "interrelation", "interrelationship", "interrex", "interring", "interrogate", "interrogated", "interrogates", "interrogating", "interrogation", "interrogations", "interrogative", "interrogatively", "interrogator", "interrogatory", "interrupt", "interrupted", "interrupter", "interrupting", "interruption", "interruptions", "interrupts", "interscholastic", "interschool", "intersect", "intersectant", "intersecting", "intersection", "intersects", "intersex", "intersexual", "interspecies", "interspecific", "interspersal", "intersperse", "interspersed", "intersperses", "interspersing", "interspersion", "interstate", "interstellar", "interstice", "interstitial", "interstratified", "interstratifies", "interstratify", "intertidal", "intertribal", "intertrigo", "intertwine", "intertwined", "intertwines", "intertwining", "interval", "intervals", "intervene", "intervened", "intervenes", "intervening", "intervenor", "intervention", "interventions", "intervertebral", "interview", "interviewed", "interviewee", "interviewer", "interviewing", "interviews", "interweave", "interweaves", "interweaving", "interwoven", "intestacy", "intestate", "intestinal", "intestine", "intestines", "inti", "intifada", "intifadah", "intima", "intimacy", "intimae", "intimal", "intimate", "intimately", "intimates", "intimating", "intimation", "intimidate", "intimidated", "intimidates", "intimidating", "intimidation", "into", "intolerable", "intolerably", "intolerance", "intolerant", "intolerantly", "intonate", "intonation", "intone", "intoned", "intones", "intoning", "intoxicant", "intoxicate", "intoxicated", "intoxicates", "intoxicating", "intoxication", "intra-administration", "intracellular", "intracerebral", "intracranial", "intractability", "intractable", "intractableness", "intractably", "intracutaneous", "intradepartmental", "intradermal", "intradermally", "intradermic", "intrados", "intragroup", "intralinguistic", "intralobular", "intramolecular", "intramural", "intramuscular", "intramuscularly", "intranet", "intransigence", "intransigency", "intransigent", "intransitive", "intransitively", "intransitiveness", "intransitivise", "intransitivity", "intransitivize", "intrapulmonary", "intrasentential", "intraspecies", "intraspecific", "intrastate", "intrauterine", "intravasation", "intravenous", "intravenously", "intraventricular", "intrench", "intrenchment", "intrepid", "intrepidity", "intrepidly", "intricacy", "intricate", "intricately", "intrigue", "intrigued", "intriguer", "intrigues", "intriguing", "intrinsic", "intrinsical", "intrinsically", "intro", "introduce", "introduced", "introduces", "introducing", "introduction", "introductory", "introit", "introitus", "introject", "introjected", "introjection", "intromission", "intromit", "intromits", "intromitted", "intromitting", "intron", "introns", "intropin", "introspect", "introspection", "introspective", "introspectiveness", "introuvable", "introversion", "introversive", "introvert", "introverted", "introvertish", "introvertive", "intrude", "intruder", "intrudes", "intruding", "intrusion", "intrusive", "intrusiveness", "intrust", "intrusts", "intubate", "intubation", "intuit", "intuition", "intuitionism", "intuitionist", "intuitive", "intuitively", "intumesce", "intumescence", "intumescency", "intumescent", "intussuscept", "intussusception", "inuit", "inula", "inulin", "inunct", "inunction", "inundate", "inundated", "inundates", "inundating", "inundation", "inure", "inured", "inures", "inuring", "inutile", "inutility", "invade", "invaded", "invader", "invaders", "invades", "invading", "invaginate", "invagination", "invalid", "invalidate", "invalidated", "invalidates", "invalidating", "invalidation", "invalidator", "invalidism", "invalidity", "invalidness", "invaluable", "invaluableness", "invariability", "invariable", "invariableness", "invariably", "invariance", "invariant", "invasion", "invasions", "invasive", "invective", "inveigh", "inveighing", "inveighs", "inveigle", "inveigles", "inveigling", "invent", "invented", "inventing", "invention", "inventions", "inventive", "inventively", "inventiveness", "inventor", "inventories", "inventory", "inventorying", "invents", "inverse", "inversely", "inversion", "invert", "invertase", "invertebrate", "invertebrates", "inverted", "inverter", "invertible", "inverting", "inverts", "invest", "invested", "investigate", "investigated", "investigates", "investigating", "investigation", "investigations", "investigative", "investigator", "investigators", "investigatory", "investing", "investiture", "investment", "investments", "investor", "investors", "invests", "inveterate", "invidia", "invidious", "invidiously", "invigilate", "invigilation", "invigilator", "invigorate", "invigorated", "invigorates", "invigorating", "invigoration", "invigorator", "invincibility", "invincible", "invincibly", "inviolable", "inviolate", "invirase", "invisibility", "invisible", "invisibleness", "invisibly", "invitation", "invitational", "invitations", "invitatory", "invite", "invited", "invitee", "invites", "inviting", "invitingly", "invocation", "invoice", "invoices", "invoke", "invoked", "invokes", "invoking", "involucella", "involucellum", "involucra", "involucrate", "involucre", "involuntarily", "involuntariness", "involuntary", "involute", "involution", "involve", "involved", "involvement", "involves", "involving", "invulnerability", "invulnerable", "inward", "inwardly", "inwardness", "inwards", "inweave", "inweaves", "inwrap", "inwrapped", "inwrapping", "inwraps", "inwrought", "iodide", "iodin", "iodinate", "iodinated", "iodinating", "iodination", "iodine", "iodise", "iodised", "iodize", "iodized", "iodochlorhydroxyquin", "iodocompound", "iodoform", "iodoprotein", "iodopsin", "iodothyronine", "iodotyrosine", "ion", "ionate", "ionian", "ionic", "ionisation", "ionise", "ionised", "ioniser", "ionisers", "ionises", "ionising", "ionization", "ionize", "ionized", "ionizer", "ionizers", "ionizes", "ionizing", "ionophoresis", "ionosphere", "ions", "iontophoresis", "iontotherapy", "iota", "iou", "ioway", "ipecac", "ipidae", "ipo", "ipod", "ipos", "iproclozide", "ipsedixitism", "ipsilateral", "irak", "iraki", "Iran", "iran", "iranian", "Iraq", "iraq", "iraqi", "irascibility", "irascible", "irate", "irately", "IRCTC", "irctc", "ire", "ireful", "irelander", "irenic", "iridaceous", "iridectomy", "irides", "iridesce", "iridescence", "iridescent", "iridic", "iridium", "iridocyclitis", "iridokeratitis", "iridoncus", "iridosmine", "iridotomy", "iris", "irish", "iritic", "iritis", "irk", "irked", "irking", "irks", "irksome", "iron", "ironclad", "ironed", "ironic", "ironical", "ironically", "ironing", "ironist", "ironlike", "ironman", "ironmonger", "ironmongery", "irons", "ironshod", "ironside", "ironware", "ironweed", "ironwood", "ironwork", "ironworker", "irony", "irradiate", "irradiated", "irradiates", "irradiating", "irradiation", "irrational", "irrationality", "irrationally", "irreality", "irreclaimable", "irreconcilable", "irrecoverable", "irredeemable", "irredenta", "irredentism", "irredentist", "irreducible", "irrefutable", "irregardless", "irregular", "irregularities", "irregularity", "irregularly", "irrelevance", "irrelevancy", "irrelevant", "irrelevantly", "irreligion", "irreligionist", "irreligious", "irreligiousness", "irremediable", "irremovable", "irreparable", "irreparably", "irreplaceable", "irreplaceableness", "irrepressibility", "irrepressible", "irreproachable", "irreproachably", "irreproducibility", "irreproducible", "irresistibility", "irresistible", "irresistibleness", "irresistibly", "irresolute", "irresolutely", "irresoluteness", "irresolution", "irrespective", "irresponsibility", "irresponsible", "irresponsibleness", "irresponsibly", "irretrievable", "irretrievably", "irreverence", "irreverent", "irreverently", "irreversibility", "irreversible", "irreversibly", "irrevocable", "irrevocably", "irrevokable", "irridenta", "irridentism", "irridentist", "irrigate", "irrigates", "irrigating", "irrigation", "irritability", "irritable", "irritably", "irritant", "irritate", "irritated", "irritates", "irritating", "irritatingly", "irritation", "irritative", "irrupt", "irruption", "irruptive", "irtysh", "IS", "Is", "is", "isarithm", "ischaemia", "ischaemic", "ischemia", "ischemic", "ischia", "ischium", "isentropic", "isinglass", "iskcon", "islamic", "islamise", "islamism", "islamize", "island", "islander", "islanders", "Islands", "islands", "isle", "islet", "islets", "ism", "ismaili", "ismailian", "ISN'T", "Isn't", "isn't", "ISNT", "Isnt", "isnt", "ISN\u2019T", "Isn\u2019t", "isn\u2019t", "isoagglutination", "isoagglutinin", "isoagglutinogen", "isoantibody", "isobar", "isobilateral", "isobutylene", "isocarboxazid", "isochronal", "isochrone", "isochronous", "isoclinal", "isoclinic", "isocyanate", "isocyclic", "isoflurane", "isogamete", "isogamy", "isogon", "isogone", "isogonic", "isogram", "isohel", "isolable", "isolate", "isolated", "isolates", "isolating", "isolation", "isolationism", "isolationist", "isolationistic", "isolde", "isoleucine", "isomer", "isomerase", "isomeric", "isomerisation", "isomerise", "isomerism", "isomerization", "isomerize", "isometric", "isometrical", "isometropia", "isometry", "isomorphic", "isomorphism", "isomorphous", "isomorphy", "isoniazid", "isopleth", "isopod", "isopropanol", "isoproterenol", "isopteran", "isoptin", "isordil", "isosceles", "isosmotic", "isosorbide", "isostasy", "isotherm", "isothermal", "isothermic", "isothiocyanate", "isotonic", "isotope", "isotopic", "isotropic", "isotropically", "isotropous", "isotropy", "Israel", "israel", "israeli", "issuance", "issue", "issued", "issuer", "issues", "issuing", "ist", "isthmi", "isthmian", "isthmus", "isuprel", "IT", "It", "it", "IT'D", "It'd", "it'd", "IT'D'VE", "It'd've", "it'd've", "IT'LL", "It'll", "it'll", "IT'LL'VE", "It'll've", "it'll've", "IT'S", "It's", "it's", "italia", "italian", "italic", "italicise", "italicised", "italicises", "italicising", "italicize", "italicized", "italicizes", "italicizing", "italics", "itch", "itches", "itchiness", "itching", "itchy", "ITD", "Itd", "itd", "ITDVE", "Itdve", "itdve", "item", "itemisation", "itemise", "itemised", "itemises", "itemising", "itemization", "itemize", "itemized", "itemizes", "itemizing", "items", "iterate", "iterates", "iterating", "iteration", "iterations", "iterative", "ithaki", "ithunn", "itinerant", "itinerary", "itinerate", "itineration", "ITLL", "Itll", "itll", "ITLLVE", "Itllve", "itllve", "itraconazole", "Its", "its", "itself", "IT\u2019D", "It\u2019d", "it\u2019d", "IT\u2019D\u2019VE", "It\u2019d\u2019ve", "it\u2019d\u2019ve", "IT\u2019LL", "It\u2019ll", "it\u2019ll", "IT\u2019LL\u2019VE", "It\u2019ll\u2019ve", "it\u2019ll\u2019ve", "IT\u2019S", "It\u2019s", "it\u2019s", "iud", "iva", "IVE", "Ive", "ive", "ivied", "Ivory", "ivory", "ivorybill", "ivy", "ixodid", "iyyar", "izar", "izzard", "I\u2019AM", "I\u2019am", "i\u2019am", "I\u2019D", "I\u2019d", "i\u2019d", "I\u2019D\u2019VE", "I\u2019d\u2019ve", "i\u2019d\u2019ve", "I\u2019LL", "I\u2019ll", "i\u2019ll", "I\u2019LL\u2019VE", "I\u2019ll\u2019ve", "i\u2019ll\u2019ve", "I\u2019M\u2019A", "I\u2019m\u2019a", "i\u2019m\u2019a", "I\u2019VE", "I\u2019ve", "i\u2019ve", "jab", "jabbed", "jabber", "jabberer", "jabbering", "jabbers", "jabberwocky", "jabbing", "jabiru", "jaboncillo", "jabot", "jaboticaba", "jabs", "jacamar", "jacaranda", "jacinth", "jack", "jackal", "jackanapes", "jackaroo", "jackass", "jackasses", "jackboot", "jackdaw", "jacked", "jackeroos", "jacket", "jackets", "jackfish", "jackfishes", "jackfruit", "jackhammer", "jacking", "jackknife", "jackknives", "jacklight", "jackpot", "jackrabbit", "jacks", "jackscrew", "jacksmelt", "jacksnipe", "jacksonian", "jackstones", "jackstraw", "jacobean", "jacobinic", "jacobinical", "jaconet", "jactation", "jactitate", "jactitation", "Jade", "jade", "jaded", "jadeite", "jadestone", "jaeger", "jafar", "jag", "jagannatha", "jagatai", "jagganath", "jaggary", "jagged", "jaggedly", "jaggedness", "jaggery", "jagghery", "jaggier", "jaggiest", "jagging", "jaggy", "jaghatai", "jags", "jagua", "jaguar", "jaguarondi", "jaguarundi", "jahvey", "jahweh", "jail", "jailbird", "jailbirds", "jailbreak", "jailbreaks", "jailed", "jailer", "jailers", "jailhouse", "jailing", "jailor", "jails", "jain", "jainist", "jak", "jakes", "jalapeno", "jalopy", "jalousie", "jam", "Jamaica", "jamaica", "jamaican", "jamb", "jambalaya", "jambeau", "jambeaux", "jamberry", "jambon", "jamboree", "jambosa", "jamesian", "jamjar", "jammed", "jammer", "jammier", "jammies", "jammiest", "jamming", "jammy", "jampack", "jampan", "jampot", "jams", "jan", "JAN.", "Jan.", "jan.", "jangle", "jangles", "jangling", "jangly", "janitor", "january", "Japan", "japan", "japanese", "japanned", "japanning", "jape", "japery", "japonica", "jar", "jarful", "jargon", "jargoon", "jarred", "jarring", "jarringly", "jars", "jasmine", "jasper", "jassid", "jati", "jaundice", "jaundiced", "jaunt", "jauntier", "jauntiest", "jauntily", "jauntiness", "jaunting", "jaunts", "jaunty", "javan", "javanese", "javelin", "javelina", "jaw", "jawan", "jawbone", "jawbreaker", "jawed", "jawfish", "jawing", "jawless", "jaws", "jaybird", "jaywalk", "jaywalker", "jaywalking", "jaywalks", "jazz", "jazzes", "jazzier", "jazziest", "jazzing", "jazzman", "jazzy", "jdam", "jealous", "jealously", "jealousy", "jean", "jeans", "jeep", "jeer", "jeerer", "jeering", "jeeringly", "jeers", "jeffersonian", "jehad", "jehovah", "jejune", "jejunely", "jejuneness", "jejunitis", "jejunity", "jejunoileitis", "jejunostomy", "jejunum", "jell", "jellaba", "jelled", "jellied", "jellified", "jellifies", "jellify", "jello", "jelly", "jellyfish", "jellyfishes", "jellyleaf", "jellylike", "jellyroll", "jem", "jemmied", "jemmy", "jennet", "jeopardise", "jeopardised", "jeopardises", "jeopardising", "jeopardize", "jeopardized", "jeopardizes", "jeopardizing", "jeopardy", "jerboa", "jeremiad", "jerevan", "jerk", "jerked", "jerker", "jerkier", "jerkiest", "jerkily", "jerkin", "jerkiness", "jerking", "jerks", "jerkwater", "jerky", "jerry", "jersey", "jessamine", "jest", "jester", "jesting", "jestingly", "jests", "jesuit", "jesuitic", "jesuitical", "jesuitry", "jesus", "jet", "jetliner", "jets", "jetsam", "jetted", "jetting", "jettison", "jettisoning", "jettisons", "jetty", "jew", "jewel", "jeweled", "jeweler", "jewelers", "jewelfish", "jewelfishes", "jewelled", "jeweller", "jewellers", "jewellery", "jewelling", "jewelry", "jewels", "jewelweed", "jewfish", "jewfishes", "jewish", "jews", "jezebel", "jfk", "jhvh", "jiao", "jib", "jibbed", "jibbing", "jibboom", "jibe", "jidda", "jiddah", "jiffy", "jig", "jigged", "jigger", "jiggered", "jiggermast", "jigging", "jiggle", "jiggles", "jiggling", "jigsaw", "jihad", "jihadi", "jillion", "jilt", "jilted", "jilting", "jimdandy", "jimhickey", "jimmied", "jimmy", "jimmying", "jimsonweed", "jinghpaw", "jingle", "jingling", "jingly", "jingo", "jingoes", "jingoism", "jingoist", "jingoistic", "jinks", "jinn", "jinnee", "jinni", "jinrikisha", "jinx", "jinxed", "jinxing", "jiqui", "jird", "jirrbal", "jitney", "jitter", "jitterbug", "jitterbugged", "jitterbugging", "jitteriness", "jittering", "jittery", "jiujitsu", "jive", "jnd", "jnr", "jo", "job", "jobbed", "jobber", "jobbery", "jobbing", "jobcentre", "jobholder", "jobless", "Jobs", "jobs", "jock", "jockey", "jockstrap", "jocose", "jocosely", "jocoseness", "jocosity", "jocote", "jocular", "jocularity", "jocund", "jocundity", "jodhpur", "joes", "joewood", "jog", "jogged", "jogger", "jogging", "joggle", "jogs", "Johansson", "johnny", "johnnycake", "johore", "join", "joined", "joiner", "joinery", "joining", "joins", "joint", "jointed", "jointer", "jointly", "joints", "jointure", "jointworm", "joist", "joke", "joked", "joker", "jokes", "jokester", "joking", "jokingly", "joliet", "jollied", "jollier", "jolliest", "jollification", "jollified", "jollifies", "jollify", "jolliness", "jollity", "Jolly", "jolly", "jolt", "jolted", "jolting", "jolts", "jolty", "jongleur", "jonquil", "jook", "joppa", "Jordan", "jordan", "jordanian", "jorum", "JOS.", "Jos.", "jos.", "joseph", "josh", "joshing", "joss", "jostle", "jostles", "jostling", "josue", "jot", "jots", "jotted", "jotter", "jotting", "jotunn", "jounce", "journal", "journalese", "journalism", "journalist", "journalistic", "journalistically", "journalists", "journals", "journey", "journeyer", "journeying", "journeyman", "journeys", "joust", "jousting", "jove", "jovial", "joviality", "jovially", "jovian", "jowl", "jowly", "joy", "joyful", "joyfully", "joyfulness", "joyless", "joylessly", "joylessness", "joyous", "joyously", "joyousness", "joypop", "joypopped", "joypopping", "joyride", "joyriding", "joys", "joystick", "JR.", "Jr.", "jr.", "jra", "juarez", "jubbulpore", "jubilance", "jubilancy", "jubilant", "jubilantly", "jubilate", "jubilation", "jubilee", "juda", "judaea", "judaic", "judaical", "judder", "judge", "judged", "judgement", "judges", "judgeship", "judging", "judgment", "judgmental", "judgments", "judicable", "judicatory", "judicature", "judicial", "judicially", "judiciary", "judicious", "judiciously", "judiciousness", "judo", "jug", "jugale", "jugful", "jugged", "juggernaut", "jugging", "juggle", "juggler", "jugglery", "juggles", "juggling", "jugoslav", "jugoslavian", "jugoslavija", "jugs", "jugular", "juice", "juiceless", "juicer", "juices", "juicier", "juiciest", "juiciness", "juicy", "jujitsu", "juju", "jujube", "jujutsu", "juke", "jukebox", "jul", "JUL.", "Jul.", "jul.", "julep", "julian", "julienne", "july", "jumbal", "jumble", "jumbled", "jumbles", "jumbling", "jumbo", "jumbojet", "jument", "jumentous", "jump", "jumped", "jumper", "jumpier", "jumpiest", "jumpiness", "jumping", "jumps", "jumpstart", "jumpstarting", "jumpstarts", "jumpsuit", "jumpy", "jun", "JUN.", "Jun.", "jun.", "juncaginaceae", "junco", "junction", "junctions", "juncture", "june", "jungian", "jungle", "jungly", "junior", "juniper", "junk", "junket", "junketeer", "junketing", "junkie", "junkies", "junking", "junks", "junky", "junkyard", "junoesque", "junta", "junto", "jupati", "jupaty", "jura", "jural", "jurassic", "juridic", "juridical", "juries", "jurisdiction", "jurisdictional", "jurisdictions", "jurisprudence", "jurisprudential", "jurisprudentially", "jurist", "juristic", "juror", "jurors", "jury", "juryman", "jurywoman", "jus", "Just", "just", "justice", "justices", "justiciar", "justiciary", "justifiable", "justifiably", "justification", "justifications", "justificative", "justificatory", "justified", "justifiedly", "justifier", "justifies", "justify", "justifying", "justly", "justness", "jut", "jutish", "juts", "jutted", "jutting", "juvenescence", "juvenile", "juvenility", "juxtapose", "juxtaposed", "juxtaposes", "juxtaposing", "juxtaposition", "jyaistha", "jylland", "k", "kabala", "kabbala", "kabbalist", "kabbalistic", "kabob", "kabolin", "kach", "kachina", "kachinic", "kaddish", "kaddishim", "kadikoy", "kaffir", "kaffiyeh", "kafir", "kafkaesque", "kafocin", "kaftan", "kahikatea", "kail", "kainite", "kainogenesis", "kaki", "kalansuwa", "kalantas", "kalapuya", "kalapuyan", "kale", "kaleidoscope", "kaleidoscopic", "kaleidoscopical", "kalemia", "kalian", "kalif", "kalimantan", "kaliph", "kaliuresis", "kalka", "kalmia", "kalmuc", "kalmuck", "kalmucks", "kalpac", "kalumpang", "kaluresis", "kameez", "kamikaze", "kampong", "kampuchea", "kampuchean", "KAN.", "Kan.", "kan.", "kanaf", "kanamycin", "kanchanjanga", "kanchil", "kandinski", "kangaroo", "KANS.", "Kans.", "kans.", "kansas", "kansu", "kantian", "kantrex", "kanzu", "kaochlor", "kaoliang", "kaolin", "kaoline", "kaolinite", "kaon", "kapeika", "kaph", "kapok", "kappa", "kapsiki", "kapuka", "kaput", "karabiner", "karakul", "karaoke", "karat", "karate", "karbala", "karenic", "karma", "karttika", "karttikeya", "karyokinesis", "karyokinetic", "karyolymph", "karyolysis", "karyon", "karyoplasm", "karyotype", "kasbah", "kasha", "kashmiri", "kat", "katabases", "katabasis", "katabatic", "katabolic", "katabolism", "katamorphism", "katar", "katari", "katharobe", "katharobic", "katharometer", "katharsis", "katmandu", "katydid", "katzenjammer", "kauri", "kaury", "kava", "kavakava", "kavrin", "kawaka", "kayak", "kayaking", "kayo", "kayoed", "kazakh", "Kazakhstan", "kazakhstan", "kazakhstani", "kazakstan", "kazoo", "kb", "kbit", "kbo", "kea", "keb", "kebab", "kechua", "kechuan", "kedgeree", "keel", "keelboat", "keeled", "keelson", "keen", "keening", "keenly", "keenness", "keep", "keeper", "keepers", "keeping", "keeps", "keepsake", "keeshond", "keeshonden", "keflex", "keflin", "keftab", "keg", "kegful", "keister", "keloid", "kelp", "kelpie", "kelpwort", "kelpy", "kelt", "kelter", "kemadrin", "kempt", "ken", "kenaf", "kenalog", "kendal", "kenned", "kennedya", "kennel", "kennelled", "kennelling", "kenning", "keno", "kenogenesis", "kenosis", "kentan", "kentucky", "Kenya", "kenya", "kenyan", "kepi", "kept", "keratalgia", "keratectasia", "keratin", "keratinisation", "keratinise", "keratinization", "keratinize", "keratitis", "keratoacanthoma", "keratocele", "keratoconjunctivitis", "keratoconus", "keratoderma", "keratodermia", "keratohyalin", "keratoiritis", "keratomalacia", "keratomycosis", "keratonosis", "keratonosus", "keratoplasty", "keratoscleritis", "keratoscope", "keratoscopy", "keratosis", "keratotomy", "kerb", "kerbela", "kerbstone", "kerchief", "kerfuffle", "kerion", "kern", "kernel", "kernelled", "kernelling", "kernicterus", "kernite", "kerosene", "kerosine", "kerugma", "kerygma", "kestrel", "ketalar", "ketamine", "ketch", "ketchup", "keteleeria", "ketembilla", "ketoacidosis", "ketoaciduria", "ketohexose", "ketone", "ketonemia", "ketonuria", "ketoprofen", "ketorolac", "ketose", "ketosis", "ketosteroid", "kettle", "kettledrum", "kettleful", "ketubim", "keurboom", "key", "keyboard", "keyboardist", "keyboards", "keycard", "keyed", "keyhole", "keying", "keyless", "keynesian", "keynote", "keypad", "keys", "keystone", "keystroke", "kg", "kgb", "khadafy", "khaddar", "khadi", "khaki", "khalif", "khalifah", "khalka", "khamsin", "khan", "khanate", "kharkiv", "khat", "khesari", "khi", "khimar", "khios", "khirghiz", "khoikhoi", "khoum", "khufu", "khukuri", "khz", "kiaat", "kiang", "kib", "kibbitz", "kibble", "kibbutz", "kibbutzim", "kibbutznik", "kibe", "kibibit", "kibibyte", "kibit", "kibitz", "kibitzer", "kibitzing", "kibosh", "kiboshing", "kick", "kickback", "kickbacks", "kicked", "kicker", "kicking", "kickoff", "kicks", "kickshaw", "kicksorter", "kickstand", "kid", "kidded", "kiddie", "kidding", "kiddy", "kidnap", "kidnaper", "kidnaping", "kidnapped", "kidnapper", "kidnapping", "kidnappings", "kidnaps", "kidney", "kidneys", "kids", "kidskin", "kieselguhr", "kieserite", "kiev", "kike", "kikladhes", "kildeer", "kilderkin", "kiley", "kiliwi", "kill", "killable", "killdeer", "killed", "killer", "killers", "killifish", "killifishes", "killing", "killingly", "killings", "killjoy", "kills", "kiln", "kilo", "kilobit", "kilobyte", "kilocalorie", "kilocycle", "kilogram", "kilogramme", "kilogrammes", "kilograms", "kilohertz", "kiloliter", "kilolitre", "kilometer", "kilometers", "kilometre", "kilometres", "kiloton", "kilovolt", "kilowatt", "kilt", "kilter", "kimberlite", "kimono", "kin", "kina", "kinaesthesia", "kinaesthesis", "kinaesthetic", "kinaesthetically", "kinanesthesia", "kinase", "kinases", "kinchinjunga", "kind", "kinda", "kinder", "kindergarten", "kindergartener", "kindergartner", "kindhearted", "kindheartedness", "kindle", "kindled", "kindles", "kindlier", "kindliest", "kindliness", "kindling", "kindly", "kindness", "kindred", "kinds", "kine", "kinematics", "kinescope", "kinesiology", "kinesis", "kinesthesia", "kinesthesis", "kinesthetic", "kinesthetically", "kinesthetics", "kinetic", "kinetics", "kinetochore", "kinetosis", "kinfolk", "king", "kingbird", "kingbolt", "kingcup", "Kingdom", "kingdom", "kingdoms", "kingfish", "kingfisher", "kingfishes", "kinglet", "kinglike", "kingly", "kingmaker", "kingpin", "kings", "kingship", "kingsnake", "kingwood", "kinin", "kink", "kinkajou", "kinkier", "kinkiest", "kinking", "kinky", "kino", "kinsfolk", "kinship", "kinsman", "kinsperson", "kinswoman", "kiosk", "kiosks", "kip", "kiplingesque", "kipped", "kipper", "kipping", "kirghizia", "kirghizstan", "kirgiz", "kirgizia", "kirgizstan", "Kiribati", "kiribati", "kirk", "kirpan", "kirsch", "kirtle", "kishke", "kismat", "kismet", "kiss", "kisser", "kisses", "kissing", "kit", "kitambilla", "kitbag", "kitchen", "kitchenette", "kitchens", "kitchenware", "kite", "kitembilla", "kith", "kiting", "kits", "kitsch", "kitschy", "kittee", "kitten", "kittenish", "kittens", "kittiwake", "Kitts", "kitts", "kittul", "kitty", "kitul", "kiwi", "kkk", "klan", "klavern", "klavier", "klaxon", "klebsiella", "kleptomania", "kleptomaniac", "klick", "klorvess", "klotho", "kludge", "klutz", "kluxer", "klystron", "km", "KN.", "Kn.", "kn.", "knack", "knacker", "knackered", "knackwurst", "knap", "knapped", "knapping", "knaps", "knapsack", "knapweed", "knave", "knavery", "knavish", "knavishly", "knawe", "knawel", "knead", "kneading", "kneads", "knee", "kneecap", "kneecapped", "kneecapping", "kneel", "kneeler", "kneeling", "kneels", "kneepan", "knees", "knell", "knesseth", "knew", "knickerbockers", "knickers", "knickknack", "knickknackery", "knife", "knifelike", "knight", "knighthood", "knightliness", "knightly", "kniphofia", "knish", "knit", "knits", "knitted", "knitter", "knitting", "knitwear", "knitwork", "knives", "knob", "knobbed", "knobbing", "knobble", "knobbly", "knobby", "knobkerrie", "knobkerry", "knock", "knockabout", "knockdown", "knocked", "knocker", "knocking", "knockoff", "knockout", "knocks", "knockwurst", "knoll", "knot", "knotgrass", "knothole", "knots", "knotted", "knottier", "knottiest", "knottiness", "knotting", "knotty", "knout", "know", "knowable", "knower", "knowing", "knowingly", "knowingness", "knowledge", "knowledgeability", "knowledgeable", "knowledgeableness", "known", "knows", "knuckle", "knuckleball", "knucklebones", "knucklehead", "knuckler", "knuckles", "knuckling", "knucks", "knurlier", "knurliest", "knurly", "knut", "ko'd", "koala", "koan", "kob", "kobenhavn", "kobo", "kochia", "koellia", "kohl", "kohleria", "kohlrabi", "kohlrabies", "koinonia", "kokka", "kola", "kolkhoz", "kolkhoznik", "koln", "komondor", "konakri", "kongfuze", "konini", "konoye", "koodoo", "kook", "kookaburra", "kookie", "kookier", "kookiest", "kooky", "kopeck", "kopek", "kopiyka", "kopje", "koppie", "kor", "koranic", "kore", "Korea", "korea", "korean", "korinthos", "koruna", "kosciuszko", "kosher", "kotar", "kotex", "koto", "kotow", "koudou", "koumiss", "kovna", "kovno", "koweit", "kowhai", "kowtow", "kowtowing", "kph", "kraal", "kraft", "krait", "krakatao", "krakatoa", "krakau", "krakow", "kraurosis", "krauthead", "kremlin", "krigia", "krill", "kris", "kriti", "krona", "krone", "kronen", "kroner", "kronur", "kroon", "krooni", "krubi", "krummhorn", "krypton", "kuangchou", "kudos", "kudu", "kudzu", "kuenlun", "kukenaam", "kulun", "kumis", "kummel", "kumquat", "kunzite", "kurakkan", "kurchee", "kurchi", "kurdish", "kuroshio", "kurrajong", "kurrat", "kurta", "kuru", "kutch", "kuvasz", "kuwaiti", "kvass", "kvetch", "kvetching", "kwacha", "kwai", "kwangchow", "kwangtung", "kwanza", "kwashiorkor", "kweek", "kwel", "kwela", "KY.", "Ky.", "ky.", "kyanite", "kyat", "kylie", "kylikes", "kylix", "kymograph", "kyphosis", "kyphotic", "Kyrgyzstan", "kyrgyzstan", "kyrgyzstani", "LA.", "La.", "la.", "laager", "lab", "labara", "labarum", "labdanum", "label", "labeled", "labeling", "labella", "labelled", "labelling", "labellum", "labels", "labetalol", "labia", "labial", "labialise", "labialize", "labiate", "labile", "labiodental", "labium", "lablink", "labor", "laboratories", "laboratory", "labored", "laborer", "laborers", "laboring", "laborious", "laboriously", "laboriousness", "labors", "laborsaving", "labour", "laboured", "labourer", "labourers", "labouring", "labours", "laboursaving", "labra", "labrocyte", "labrum", "labs", "labyrinth", "labyrinthian", "labyrinthine", "labyrinthitis", "labyrinthodont", "labyrinthodonta", "lac", "lace", "lacebark", "laced", "lacelike", "lacepod", "lacer", "lacerate", "lacerated", "lacerates", "lacerating", "laceration", "lacertid", "lacertilia", "lacertilian", "laces", "lacewing", "lacewood", "lacework", "lachrymal", "lachrymation", "lachrymator", "lachrymatory", "lachrymose", "lacier", "laciest", "lacing", "laciniate", "lack", "lackadaisical", "lackadaisically", "lacked", "lackey", "lacking", "lackluster", "lacklustre", "lacks", "laconic", "laconically", "laconicism", "laconism", "lacquer", "lacquerware", "lacrimal", "lacrimation", "lacrimator", "lacrimatory", "lacrosse", "lactaid", "lactalbumin", "lactase", "lactate", "lactates", "lactating", "lactation", "lacteal", "lactic", "lactifuge", "lactobacilli", "lactobacillus", "lactobacteriaceae", "lactoflavin", "lactogen", "lactogenic", "lactose", "lactosuria", "lacuna", "lacunae", "lacunar", "lacunaria", "lacustrine", "lacy", "lad", "ladanum", "ladder", "laddering", "laddie", "lade", "laden", "ladened", "ladies", "ladify", "lading", "ladino", "ladle", "ladling", "ladoga", "lady", "ladybeetle", "ladybird", "ladybug", "ladyfied", "ladyfinger", "ladyfish", "ladyfying", "ladylike", "ladylikeness", "ladylove", "laelia", "laetrile", "laevulose", "lafitte", "lag", "lagan", "lagend", "lager", "lagerphone", "laggard", "lagged", "lagger", "lagging", "lagniappe", "lagomorph", "lagoon", "lagophthalmos", "lags", "laguna", "lagune", "lah", "lahar", "laic", "laicise", "laicises", "laicize", "laicizes", "laid", "lair", "laird", "lairier", "lairiest", "lairy", "laity", "lake", "lakefront", "lakeland", "lakes", "lakeshore", "lakeside", "lakh", "lakier", "lakiest", "lakota", "laky", "lallation", "lally", "lallygag", "lallygagged", "lallygagging", "lam", "lamarckian", "lamasery", "lamb", "lambast", "lambaste", "lambasted", "lambastes", "lambasting", "lambchop", "lambda", "lambdacism", "lambency", "lambent", "lambing", "lambkill", "lambkin", "lamblike", "lambrequin", "lambskin", "lame", "lamedh", "lamella", "lamellae", "lamellibranch", "lamellibranchia", "lamely", "lameness", "lament", "lamentable", "lamentably", "lamentation", "lamented", "lamenter", "lamenting", "laments", "lamia", "lamiaceae", "lamiae", "lamina", "laminae", "laminal", "laminar", "laminate", "laminated", "laminates", "lamination", "laminator", "laminectomy", "laming", "laminitis", "lamisil", "lamivudine", "lammed", "lammergeier", "lammergeyer", "lamming", "lamp", "lampblack", "lamphouse", "lamplight", "lamplighter", "lamplit", "lampoon", "lampooner", "lampooning", "lampoons", "lamppost", "lamprey", "lamps", "lampshade", "lampshell", "lan", "lanate", "lancastrian", "lance", "lancelet", "lancelike", "lanceolate", "lancer", "lances", "lancet", "lancetfish", "lancewood", "lanchou", "lanchow", "lancinate", "lancinating", "lancing", "land", "landed", "landfall", "landfill", "landfills", "landgrave", "landholder", "landholding", "landing", "landings", "landlady", "landler", "landless", "landline", "landlocked", "landlord", "landlords", "landlubber", "landlubberly", "landman", "landmark", "landmarks", "landmass", "landowner", "landrover", "lands", "landscape", "landscaped", "landscaper", "landscapes", "landscaping", "landscapist", "landside", "landslide", "landslip", "landsmaal", "landsmal", "landsman", "landward", "landwards", "lane", "lanes", "langbeinite", "langlaufer", "langobard", "langouste", "langoustine", "langsat", "langset", "langsyne", "language", "languages", "languid", "languidly", "languish", "languished", "languisher", "languishes", "languishing", "languor", "languorous", "languorously", "langur", "laniard", "laniary", "lank", "Lanka", "lanka", "lankier", "lankiest", "lankiness", "lanky", "lanolin", "lanoxin", "lansa", "lansat", "lanseh", "lanset", "lansoprazole", "lantana", "lantern", "lanternfish", "lanterns", "lanthanide", "lanthanoid", "lanthanon", "lanthanum", "lanugo", "lanyard", "lao", "Laos", "laos", "laotian", "lap", "laparocele", "laparoscope", "laparoscopy", "laparotomy", "lapboard", "lapdog", "lapel", "lapful", "lapidarian", "lapidarist", "lapidary", "lapidate", "lapidation", "lapidator", "lapidified", "lapidifies", "lapidify", "lapidist", "lapilli", "lapillus", "lapin", "lapith", "lapithae", "lapland", "lapped", "lappet", "lapping", "lappish", "lapplander", "lappula", "laps", "lapse", "lapsed", "lapses", "lapsing", "laptop", "laptops", "laputan", "lapwing", "larboard", "larcener", "larcenist", "larcenous", "larceny", "larch", "lard", "larder", "larding", "lards", "large", "largely", "largemouth", "largeness", "larger", "largess", "largesse", "largest", "larghetto", "larghissimo", "largish", "largo", "lariat", "larid", "larium", "lark", "larking", "larks", "larkspur", "larn", "larning", "larns", "larodopa", "larotid", "larrup", "larruping", "larrups", "larva", "larvacean", "larvacide", "larvae", "larval", "larvicide", "laryngeal", "laryngectomy", "larynges", "laryngismus", "laryngitis", "laryngopharyngeal", "laryngopharyngitis", "laryngopharynx", "laryngoscope", "laryngospasm", "laryngostenosis", "laryngotracheobronchitis", "larynx", "lasagna", "lasagne", "lasalle", "lascivious", "lasciviously", "lasciviousness", "lasek", "laser", "lash", "lashed", "lasher", "lashes", "lashing", "lasik", "lasiocampid", "lasix", "lass", "lassa", "lassie", "lassitude", "lasso", "lassoes", "lassoing", "Last", "last", "lasted", "lastest", "lasting", "lastingly", "lastingness", "lastly", "lasts", "lat", "latakia", "latanier", "latch", "latched", "latches", "latchet", "latchkey", "latchstring", "late", "latecomer", "lateen", "lately", "latency", "lateness", "latent", "Later", "later", "lateral", "lateralisation", "laterality", "lateralization", "lateralize", "laterally", "laterals", "laterite", "latest", "latex", "lath", "lathe", "lathee", "lather", "lathering", "lathers", "lathery", "lathi", "lathier", "lathiest", "lathy", "lati", "latices", "laticifer", "latifundia", "latifundium", "latin", "latinate", "latinise", "latinises", "latinize", "latinizes", "latino", "latish", "latitude", "latitudinal", "latitudinarian", "latke", "latona", "latria", "latrine", "latte", "latten", "latter", "latterly", "lattice", "latticed", "latticelike", "latticework", "latu", "Latvia", "latvia", "latvian", "laud", "laudability", "laudable", "laudableness", "laudably", "laudanum", "laudator", "laudatory", "lauded", "lauder", "lauding", "lauds", "laugh", "laughable", "laughably", "laughed", "laugher", "laughing", "laughingly", "laughingstock", "laughs", "laughter", "laughting", "lauhala", "launce", "launch", "launched", "launcher", "launches", "launching", "launchpad", "launder", "laundered", "launderette", "laundering", "laundress", "laundromat", "laundry", "laundryman", "laundrywoman", "laureate", "laurel", "laureled", "laurelled", "laurelling", "laurels", "laurelwood", "laurentius", "lav", "lava", "lavabo", "lavaboes", "lavage", "lavalava", "lavalier", "lavaliere", "lavalliere", "lavation", "lavatory", "lave", "lavender", "lavish", "lavished", "lavishes", "lavishing", "lavishly", "lavishness", "law", "lawbreaker", "lawcourt", "lawful", "lawfully", "lawfulness", "lawgiver", "lawl", "lawless", "lawlessly", "lawlessness", "lawmaker", "lawmakers", "lawmaking", "lawman", "lawn", "lawns", "lawrencium", "laws", "lawsuit", "lawsuits", "lawyer", "lawyerbush", "lawyers", "lax", "laxation", "laxative", "laxity", "laxly", "laxness", "lay", "layabout", "layby", "layer", "layered", "layering", "layers", "layette", "laying", "layman", "layoff", "layoffs", "layout", "layover", "layperson", "lays", "layup", "lazar", "lazaret", "lazarette", "lazaretto", "laze", "lazes", "lazier", "laziest", "lazily", "laziness", "lazing", "lazio", "lazuli", "lazuline", "lazy", "lazybones", "lb", "LB.", "Lb.", "lb.", "lbj", "lbs", "lcd", "lcm", "ldl", "lea", "leach", "leaches", "leaching", "lead", "leadbelly", "leaded", "leaden", "leader", "leaders", "leadership", "leading", "leadless", "leadplant", "leads", "leadwort", "leaf", "leafage", "leafed", "leafhopper", "leafier", "leafiest", "leafing", "leafless", "leaflet", "leaflike", "leafstalk", "leafy", "league", "leagues", "leak", "leakage", "leaked", "leaker", "leakier", "leakiest", "leakiness", "leaking", "leakproof", "leaks", "leaky", "leal", "lean", "leaned", "leaner", "leaning", "leanness", "leans", "leap", "leaped", "leaper", "leapfrog", "leapfrogged", "leapfrogging", "leapfrogs", "leaping", "leaps", "leapt", "learier", "leariest", "learn", "learned", "learnedly", "learnedness", "learner", "learners", "learning", "learns", "leary", "lease", "leased", "leasehold", "leaseholder", "leases", "leash", "leasing", "least", "leastways", "leastwise", "leather", "leatherback", "leathered", "leatherette", "leatherfish", "leatherjack", "leatherjacket", "leatherleaf", "leatherlike", "leatherneck", "leatherwood", "leatherwork", "leathery", "leave", "leaved", "leaven", "leavened", "leavening", "leavens", "leaver", "leaves", "leaving", "lebanese", "Lebanon", "lebanon", "lebensraum", "lecanopteris", "lecanora", "lech", "lechatelierite", "lecher", "lecherous", "lecherousness", "lechery", "lechwe", "lecithin", "lectern", "lectin", "lector", "lecture", "lectured", "lecturer", "lectures", "lectureship", "lecturing", "lecythi", "lecythus", "led", "lede", "lederhosen", "ledge", "ledgeman", "ledger", "lee", "leech", "leechee", "leeches", "leeching", "leechlike", "leek", "leer", "leerier", "leeriest", "leering", "leers", "leery", "leeuwenhoek", "leeward", "leeway", "leflunomide", "left", "leftfield", "lefthander", "lefties", "leftish", "leftism", "leftist", "leftmost", "leftover", "leftovers", "lefty", "leg", "legacy", "legal", "legalese", "legalisation", "legalise", "legalised", "legalises", "legalising", "legalism", "legality", "legalization", "legalize", "legalized", "legalizes", "legalizing", "legally", "legate", "legatee", "legateship", "legation", "legato", "legend", "legendary", "legends", "legerdemain", "legerity", "leges", "legged", "leggier", "leggiest", "legging", "leggy", "leghorn", "legibility", "legible", "legibly", "leging", "legion", "legionary", "legionella", "legionnaire", "legions", "legislate", "legislating", "legislation", "legislative", "legislatively", "legislator", "legislators", "legislatorship", "legislature", "legislatures", "legitimacy", "legitimate", "legitimately", "legitimates", "legitimating", "legitimation", "legitimatise", "legitimatize", "legitimise", "legitimised", "legitimises", "legitimising", "legitimize", "legitimized", "legitimizes", "legitimizing", "legless", "leglike", "legs", "legume", "leguminous", "lei", "leibnitz", "leibnitzian", "leibnizian", "leiomyoma", "leiomyosarcoma", "leipoa", "leishmaniasis", "leishmaniosis", "leister", "leisure", "leisured", "leisureliness", "leisurely", "leitmotif", "leitmotiv", "lek", "lekvar", "lem", "lemanderin", "lemma", "lemmata", "lemming", "lemniscate", "lemnisci", "lemniscus", "lemon", "lemonade", "lemongrass", "lemonlike", "lemonwood", "lemony", "lempira", "lemur", "lend", "lendable", "lender", "lenders", "lending", "lends", "lenes", "length", "lengthen", "lengthened", "lengthening", "lengthens", "lengthier", "lengthiest", "lengthily", "lengthiness", "lengths", "lengthways", "lengthwise", "lengthy", "lenience", "leniency", "lenient", "leniently", "lenify", "leningrad", "lenis", "lenitive", "lenity", "lens", "lense", "lenses", "lensman", "lent", "lenten", "lententide", "lentia", "lentic", "lenticel", "lenticular", "lentiform", "lentigines", "lentiginose", "lentiginous", "lentigo", "lentil", "lentisk", "lentissimo", "lento", "leonardesque", "leoncita", "Leone", "leone", "leonid", "leonides", "leonine", "leopard", "leopardbane", "leopardess", "leopoldville", "leotard", "leper", "lepidobotrys", "lepidocrocite", "lepidolite", "lepidomelane", "lepidophobia", "lepidoptera", "lepidopteran", "lepidopterist", "lepidopterologist", "lepidopterology", "lepidopteron", "lepidoptery", "lepidote", "lepiota", "leporid", "leporide", "leppy", "leprechaun", "leprosaria", "leprosarium", "leprose", "leprosy", "leprous", "lepta", "leptocephali", "leptocephalus", "leptodactylid", "leptomeninges", "leptomeningitis", "lepton", "leptorhine", "leptorrhine", "leptorrhinian", "leptorrhinic", "leptospira", "leptospirosis", "leptosporangiate", "leptosporangium", "leptotene", "ler", "leresis", "lerot", "lesbian", "lesbianism", "lesbians", "lescol", "lesion", "lesions", "Lesotho", "lesotho", "lespedeza", "less", "lessee", "lessen", "lessened", "lessening", "lessens", "lesser", "lesson", "lessons", "lessor", "lest", "lesvos", "LET", "Let", "let", "LET'S", "Let's", "let's", "letch", "letdown", "lethal", "lethality", "lethargic", "lethargically", "lethargy", "lets", "letter", "lettercard", "lettered", "letterer", "letterhead", "lettering", "letterman", "letterpress", "letters", "letting", "lettish", "lettuce", "letup", "LET\u2019S", "Let\u2019s", "let\u2019s", "leu", "leucaemia", "leucine", "leucocyte", "leucocytosis", "leucocytozoa", "leucocytozoan", "leucocytozoon", "leucoma", "leucopenia", "leucorrhea", "leucothoe", "leucotomy", "leukaemia", "leukemia", "leukeran", "leukocyte", "leukocytes", "leukocytosis", "leukoderma", "leukoencephalitis", "leukoma", "leukopenia", "leukorrhea", "leukotomy", "lev", "leva", "levallorphan", "levant", "levanter", "levantine", "levator", "levee", "levees", "level", "leveled", "leveler", "levelers", "levelheaded", "leveling", "levelled", "leveller", "levellers", "levelling", "levels", "lever", "leverage", "leveraged", "leverages", "leveraging", "leveret", "levi", "leviathan", "levied", "levies", "levirate", "levitate", "levitates", "levitating", "levitation", "levitical", "levitra", "levity", "levodopa", "levorotary", "levorotation", "levorotatory", "levulose", "levy", "levying", "lewd", "lewdly", "lewdness", "lex", "lexeme", "lexical", "lexicalisation", "lexicalise", "lexicalised", "lexicalization", "lexicalize", "lexicalized", "lexically", "lexicographer", "lexicographers", "lexicographic", "lexicographical", "lexicography", "lexicologist", "lexicology", "lexicon", "lexicostatistic", "lexicostatistics", "lexis", "ley", "leyden", "lgb", "lgv", "liabilities", "liability", "liable", "liaise", "liaising", "liaison", "liakoura", "liana", "liar", "liars", "libation", "libber", "libel", "libeled", "libeler", "libeling", "libelled", "libelling", "libellous", "libelous", "libels", "liberal", "liberalisation", "liberalise", "liberalised", "liberalises", "liberalising", "liberalism", "liberalist", "liberalistic", "liberality", "liberalization", "liberalize", "liberalized", "liberalizes", "liberalizing", "liberally", "liberalness", "liberals", "liberate", "liberated", "liberates", "liberation", "liberator", "Liberia", "liberia", "liberian", "libertarian", "libertarianism", "libertarians", "liberties", "libertine", "liberty", "libidinal", "libidinous", "libido", "libra", "librae", "librarian", "librarians", "librarianship", "libraries", "library", "librate", "libration", "libretti", "librettist", "libretto", "libritabs", "librium", "Libya", "libya", "libyan", "lice", "licence", "licenced", "licences", "licencing", "license", "licensed", "licensee", "licenser", "licenses", "licensing", "licentiate", "licentious", "licentiously", "licentiousness", "lichee", "lichen", "lichgate", "lichi", "licit", "licitly", "licitness", "lick", "licked", "licking", "licks", "licorice", "lid", "lidar", "lidded", "lidless", "lido", "lie", "liebfraumilch", "liechtensteiner", "lied", "lieder", "lief", "liege", "liegeman", "lien", "lienal", "lies", "lietuva", "lieu", "lieutenancy", "lieutenant", "life", "lifeblood", "lifeboat", "lifeguard", "lifehack", "lifeless", "lifelessly", "lifelessness", "lifelike", "lifeline", "lifelong", "lifer", "lifesaver", "lifesaving", "lifesize", "lifespan", "lifestyle", "lifestyles", "lifetime", "lifetimes", "lifework", "lifo", "lift", "lifted", "lifter", "liftgate", "lifting", "liftman", "liftoff", "lifts", "ligament", "ligan", "ligand", "ligands", "ligate", "ligates", "ligating", "ligation", "ligature", "liger", "light", "lightbulb", "lighted", "lighten", "lightened", "lightening", "lightens", "lighter", "lighterage", "lighterman", "lightest", "lightheaded", "lightheadedness", "lighthearted", "lightheartedness", "lighthouse", "lighting", "lightless", "lightlessness", "lightly", "lightness", "lightning", "lightproof", "lights", "lightship", "lightsome", "lightsomely", "lightsomeness", "lightweight", "lightwood", "ligne", "ligneous", "lignified", "lignifies", "lignify", "lignin", "lignite", "lignosae", "lignum", "ligula", "ligulae", "ligule", "lii", "liii", "likable", "Like", "like", "likeable", "liked", "likeing", "likelihood", "likeliness", "likely", "liken", "likened", "likeness", "likening", "likens", "liker", "likers", "likes", "likewise", "liking", "likuta", "lilac", "lilangeni", "liliaceous", "lilies", "liliopsid", "liliopsida", "lilliputian", "lilt", "lilting", "lily", "lilyturf", "limacine", "limacoid", "liman", "limb", "limbed", "limber", "limbi", "limbic", "limbless", "limbo", "limbs", "limbus", "lime", "limeade", "limekiln", "limelight", "limen", "limes", "limestone", "limewater", "limey", "limier", "limiest", "limina", "limit", "limitation", "limitations", "limited", "limitedly", "limiter", "limites", "limiting", "limitless", "limitlessness", "limits", "limn", "limner", "limning", "limnological", "limnologically", "limnologist", "limnology", "limnos", "limo", "limonene", "limonite", "limousine", "limp", "limpa", "limper", "limpet", "limpid", "limpidity", "limpidly", "limping", "limpkin", "limply", "limpness", "limps", "limuli", "limulus", "limy", "linac", "linage", "linalool", "linchpin", "lincocin", "lincolnesque", "lincolnian", "lincomycin", "lindane", "linden", "lindy", "line", "lineage", "lineages", "lineal", "lineally", "lineament", "linear", "linearise", "linearity", "linearize", "linearizes", "linearizing", "linearly", "lineation", "linebacker", "linecut", "lined", "linelike", "lineman", "linemen", "linen", "linendraper", "liner", "lines", "linesman", "lineup", "ling", "lingam", "lingberry", "lingcod", "lingenberry", "linger", "lingerer", "lingerie", "lingering", "lingeringly", "lingers", "lingo", "lingoes", "lingonberry", "lingua", "linguae", "lingual", "lingually", "linguica", "linguine", "linguini", "linguist", "linguistic", "linguistically", "linguistics", "linguists", "lingulate", "liniment", "linin", "lining", "link", "linkage", "linkages", "linkboy", "linked", "linking", "linkman", "links", "linksman", "linkup", "linnaean", "linnean", "linnet", "lino", "linocut", "linoleum", "linseed", "linstock", "lint", "lintel", "lintwhite", "linuron", "lion", "lioness", "lionet", "lionfish", "lionfishes", "lionhearted", "lionisation", "lionise", "lionised", "lionises", "lionising", "lionization", "lionize", "lionized", "lionizes", "lionizing", "lions", "liopelma", "liopelmidae", "liothyronine", "lip", "lipaemia", "liparidae", "lipase", "lipectomy", "lipemia", "lipfern", "lipid", "lipidaemia", "lipide", "lipidemia", "lipidosis", "lipids", "lipitor", "lipizzan", "lipless", "liplike", "lipochondrodystrophy", "lipogram", "lipoid", "lipoidaemia", "lipoidemia", "lipoma", "lipomata", "lipomatosis", "lipophilic", "lipoprotein", "liposarcoma", "liposome", "liposuction", "lipotropic", "lipped", "lippier", "lippiest", "lipping", "lippizaner", "lippy", "lipread", "lipreading", "lips", "lipstick", "liquaemin", "liquefaction", "liquefiable", "liquefied", "liquefies", "liquefy", "liquescent", "liqueur", "liquid", "liquidambar", "liquidate", "liquidated", "liquidates", "liquidating", "liquidation", "liquidator", "liquidise", "liquidised", "liquidiser", "liquidisers", "liquidises", "liquidising", "liquidity", "liquidize", "liquidized", "liquidizer", "liquidizers", "liquidizes", "liquidizing", "liquidness", "liquifiable", "liquified", "liquifies", "liquify", "liquor", "liquorice", "lira", "lire", "liriodendra", "liriodendron", "lisboa", "lisente", "lisinopril", "lisle", "lisp", "lisper", "lisping", "lispingly", "lisps", "lissom", "lissome", "lissomeness", "list", "listed", "listen", "listened", "listener", "listeners", "listening", "listens", "listente", "lister", "listeria", "listeriosis", "listing", "listings", "listless", "listlessly", "listlessness", "lists", "lit", "litai", "litas", "litchee", "litchi", "lite", "liter", "literacy", "literal", "literalise", "literalism", "literalize", "literally", "literalness", "literary", "literate", "literati", "literatim", "literature", "liters", "lithane", "lithe", "litheness", "lithesome", "lithiasis", "lithic", "lithium", "lithoglyptics", "lithograph", "lithographer", "lithographic", "lithography", "lithology", "lithomancer", "lithomancy", "lithomantic", "lithonate", "lithophyte", "lithophytic", "lithops", "lithosphere", "lithotomy", "lithuanian", "lithuresis", "litigant", "litigants", "litigate", "litigates", "litigating", "litigation", "litigator", "litigious", "litigiousness", "litmus", "litoral", "litotes", "litre", "litres", "litter", "litterateur", "litterbin", "litterbug", "littered", "litterer", "littering", "litters", "little", "littleneck", "littleness", "littoral", "litu", "liturgical", "liturgics", "liturgiology", "liturgist", "liturgy", "liv", "livable", "live", "liveable", "liveborn", "lived", "livedo", "livelier", "liveliest", "livelihood", "liveliness", "livelong", "lively", "liven", "liveness", "liver", "liveried", "liverish", "liverleaf", "liverpudlian", "livers", "liverwort", "liverwurst", "livery", "liveryman", "lives", "livestock", "livid", "lividity", "lividly", "lividness", "living", "lixivia", "lixivium", "liza", "lizard", "lizardfish", "LL", "ll", "llama", "llano", "llb", "lld", "llm", "LLP.", "Llp.", "llp.", "llud", "lmao", "lmfao", "loach", "load", "loaded", "loader", "loading", "loads", "loadstar", "loadstone", "loaf", "loafing", "loam", "loamless", "loamy", "loan", "loanblend", "loaned", "loaner", "loaning", "loans", "loanword", "loanwords", "loasa", "loath", "loathe", "loathed", "loather", "loathes", "loathing", "loathly", "loathsome", "loathsomeness", "loaves", "lob", "lobar", "lobate", "lobated", "lobbed", "lobbied", "lobbies", "lobbing", "lobby", "lobbying", "lobbyism", "lobbyist", "lobbyists", "lobe", "lobectomy", "lobed", "lobefin", "lobelia", "lobeliaceous", "lobes", "loblolly", "lobotomy", "lobs", "lobscouse", "lobscuse", "lobster", "lobsterback", "lobsterman", "lobular", "lobularity", "lobule", "lobworm", "local", "locale", "localisation", "localise", "localised", "localises", "localising", "localism", "locality", "localization", "localize", "localized", "localizes", "localizing", "locally", "locals", "locate", "located", "locater", "locates", "locating", "location", "locations", "locative", "locator", "loch", "lochia", "loci", "lock", "lockage", "lockbox", "lockdown", "locked", "locker", "locket", "locking", "lockjaw", "lockkeeper", "lockman", "lockmaster", "locknut", "lockout", "lockring", "locks", "locksmith", "lockstep", "lockstitch", "lockup", "loco", "locoism", "locomote", "locomotion", "locomotive", "locomotives", "locomotor", "locoweed", "locule", "loculi", "loculus", "locum", "locus", "locust", "locustidae", "locution", "lode", "lodestar", "lodestone", "lodge", "lodged", "lodgement", "lodgepole", "lodger", "lodges", "lodging", "lodgment", "lodine", "loess", "loft", "loftier", "loftiest", "loftily", "loftiness", "lofty", "log", "logagraphia", "loganberry", "logarithm", "logarithmic", "logarithmically", "logbook", "loge", "logged", "logger", "loggerhead", "loggerheaded", "loggia", "loggie", "logginess", "logging", "logia", "logic", "logical", "logicality", "logically", "logicalness", "logician", "logicism", "logier", "logiest", "loginess", "logion", "logistic", "logistical", "logistician", "logistics", "logjam", "logo", "logogram", "logogrammatic", "logogrammatically", "logograph", "logographic", "logomach", "logomachist", "logomachy", "logomania", "logorrhea", "logos", "logotype", "logroll", "logrolling", "logs", "logwood", "logy", "lohan", "loin", "loincloth", "loir", "loiter", "loiterer", "lol", "loligo", "loll", "lolling", "lollipop", "lollop", "lolly", "lollygag", "lolol", "lololol", "lolololol", "lomatia", "lombardia", "loment", "lomenta", "lomentum", "lomustine", "lone", "lonelier", "loneliest", "loneliness", "lonely", "loner", "lonesome", "lonesomeness", "long", "longan", "longanberry", "longanimity", "longanimous", "longbeard", "longboat", "longbow", "longbowman", "longer", "longest", "longevity", "longhand", "longhorn", "longicorn", "longing", "longingly", "longish", "longitude", "longitudinal", "longitudinally", "longlegs", "longness", "longobard", "longobardi", "longroot", "longshoreman", "longshot", "longsighted", "longsightedness", "longstanding", "longtime", "longueur", "longways", "longwise", "longwool", "longyi", "loniten", "lontar", "loo", "loofa", "loofah", "look", "lookdown", "looked", "looker", "looking", "lookout", "looks", "lookup", "lool", "loom", "loomed", "looming", "looms", "loon", "looney", "loonie", "loonier", "looniest", "loony", "loool", "looool", "loop", "looper", "loophole", "loopholes", "loopier", "loopiest", "looping", "loops", "loopy", "loose", "looseing", "looseleaf", "loosely", "loosen", "loosened", "looseness", "loosening", "loosens", "looser", "looses", "loosestrife", "loosing", "loot", "looted", "looter", "looting", "loots", "lop", "lope", "lopid", "loping", "lopped", "lopper", "lopping", "lopressor", "lopsided", "lopsidedly", "lopsidedness", "loquacious", "loquaciously", "loquaciousness", "loquacity", "loquat", "lorazepam", "lorca", "lorchel", "lord", "lorded", "lording", "lordless", "lordlier", "lordliest", "lordliness", "lordly", "lordolatry", "lordosis", "lordotic", "lords", "lore", "lorfan", "lorgnette", "lorica", "loricae", "lorikeet", "lorry", "lory", "lose", "loser", "losers", "loses", "losing", "losings", "loss", "losses", "lossless", "lossy", "lost", "lot", "loth", "lothringen", "loti", "lotic", "lotion", "lots", "lotte", "lotted", "lotteries", "lottery", "lotting", "lotto", "lotus", "lotusland", "louche", "loud", "louden", "louder", "loudest", "loudly", "loudmouth", "loudness", "loudspeaker", "lough", "louisiana", "louisianian", "lounge", "lounger", "lounges", "loungewear", "lounging", "loupe", "lour", "louring", "louse", "lousier", "lousiest", "lousiness", "lousy", "lout", "loutish", "louvar", "louver", "louvered", "louvers", "louvre", "louvred", "louvres", "lovable", "lovage", "lovastatin", "love", "loveable", "lovebird", "loved", "loveless", "lovelier", "lovelies", "loveliest", "loveliness", "lovelorn", "lovely", "lovemaking", "lover", "loverlike", "loverly", "lovers", "loves", "loveseat", "lovesick", "lovesickness", "lovesome", "lovin", "lovin'", "loving", "lovingly", "lovingness", "low", "lowan", "lowball", "lowballing", "lowborn", "lowboy", "lowbred", "lowbrow", "lowbrowed", "lower", "lowercase", "lowerclassman", "lowered", "lowering", "loweringly", "lowermost", "lowers", "lowest", "lowing", "lowland", "lowlier", "lowliest", "lowlife", "lowliness", "lowly", "lowness", "lows", "lowset", "lox", "loxapine", "loxitane", "loxodrome", "loyal", "loyalist", "loyalists", "loyally", "loyalty", "loyang", "loyola", "lozal", "lozenge", "lpn", "lsd", "LT.", "Lt.", "lt.", "LTD.", "Ltd.", "ltd.", "ltm", "LTTE", "ltte", "luau", "lubber", "lubberly", "lube", "lubricant", "lubricate", "lubricated", "lubricates", "lubricating", "lubrication", "lubricator", "lubricious", "lubricity", "lubritoria", "lubritorium", "lucania", "lucent", "lucerne", "Lucia", "lucia", "lucid", "lucidity", "lucidly", "lucidness", "lucifer", "luciferin", "lucifugal", "lucifugous", "luck", "luckier", "luckiest", "luckily", "luckiness", "luckless", "lucky", "lucrative", "lucrativeness", "lucre", "lucubrate", "lucubration", "luculent", "lucullan", "ludic", "ludicrous", "ludicrously", "ludo", "lues", "luff", "luffa", "lug", "luganda", "luge", "lugeing", "luges", "luggage", "lugged", "lugger", "lugging", "lugh", "luging", "lugs", "lugsail", "lugubrious", "lugubriously", "lugubriousness", "lugworm", "luik", "lukewarm", "lukewarmly", "lukewarmness", "lull", "lullabied", "lullaby", "lulled", "lulli", "lulling", "lulls", "lulu", "luluabourg", "lumbago", "lumbar", "lumber", "lumbering", "lumberjack", "lumberman", "lumbermill", "lumbers", "lumberyard", "lumbi", "lumbosacral", "lumbus", "lumen", "lumina", "luminal", "luminance", "luminary", "luminesce", "luminescence", "luminescent", "luminism", "luminosity", "luminous", "luminousness", "lumma", "lummox", "lump", "lumpectomy", "lumped", "lumpen", "lumpenproletariat", "lumper", "lumpfish", "lumpfishes", "lumpier", "lumpiest", "lumping", "lumpish", "lumps", "lumpsucker", "lumpy", "lunacy", "lunar", "lunate", "lunatic", "lunatics", "lunation", "lunch", "luncheon", "luncher", "lunches", "lunching", "lunchroom", "lunchtime", "lunette", "lung", "lunge", "lunged", "lungen", "lunger", "lungfish", "lungfishes", "lungi", "lunging", "lungs", "lungyi", "lunier", "luniest", "lunisolar", "lunkhead", "lunula", "lunulae", "lunule", "luny", "lupin", "lupine", "lur", "lurch", "lurched", "lurcher", "lurching", "lure", "lured", "lures", "lurid", "luridly", "luridness", "luring", "lurk", "lurker", "lurking", "lurks", "lusatian", "luscious", "lusciously", "lusciousness", "lush", "lushness", "lusitanian", "lust", "luster", "lusterless", "lusterlessness", "lusterware", "lustful", "lustfully", "lustfulness", "lustier", "lustiest", "lustily", "lustiness", "lusting", "lustra", "lustrate", "lustre", "lustreless", "lustrelessness", "lustrous", "lustrum", "lusts", "lusty", "luta", "lutanist", "lute", "luteal", "lutecium", "lutefisk", "lutein", "lutenist", "luteotropin", "lutetium", "lutfisk", "lutheran", "luthier", "luting", "lutist", "luvian", "lux", "luxate", "luxates", "luxating", "luxation", "luxe", "luxembourger", "luxembourgian", "luxemburg", "luxemburger", "luxuria", "luxuriance", "luxuriant", "luxuriantly", "luxuriate", "luxuriates", "luxuriating", "luxuriation", "luxurious", "luxuriously", "luxuriousness", "luxury", "lwei", "lyallpur", "lycaenid", "lycanthrope", "lycanthropy", "lycee", "lyceum", "lychee", "lychgate", "lychnis", "lycopene", "lycopersicum", "lycopod", "lycopodiate", "lye", "lygaeid", "lyginopteridales", "lying", "lymantriid", "lymph", "lymphadenitis", "lymphadenoma", "lymphadenopathy", "lymphangiectasia", "lymphangiectasis", "lymphangiogram", "lymphangiography", "lymphangioma", "lymphangitides", "lymphangitis", "lymphatic", "lymphedema", "lymphoblast", "lymphocyte", "lymphocytes", "lymphocytic", "lymphocytopenia", "lymphocytosis", "lymphogranuloma", "lymphography", "lymphoid", "lymphokine", "lymphoma", "lymphomata", "lymphopenia", "lymphopoieses", "lymphopoiesis", "lymphuria", "lynch", "lynches", "lynching", "lynchpin", "lynx", "lyonnaise", "lyophilisation", "lyophilise", "lyophilised", "lyophilization", "lyophilize", "lyophilized", "lypressin", "lyrate", "lyre", "lyrebird", "lyreflower", "lyric", "lyrical", "lyricality", "lyrically", "lyricism", "lyricist", "lyrics", "lyrist", "lyses", "lysichitum", "lysin", "lysine", "lysinemia", "lysis", "lysogenic", "lysogenicity", "lysogenisation", "lysogenization", "lysogenize", "lysogeny", "lysosome", "lysosomes", "lysozyme", "lyssa", "lyssavirus", "lytta", "lyttae", "ma", "maar", "maare", "maarianhamina", "mac", "macabre", "macadam", "macadamia", "macadamise", "macadamises", "macadamize", "macadamizes", "macamba", "macaque", "macaques", "macaroni", "macaronic", "macaronies", "macaroon", "macarthur", "macau", "macaw", "maccaroni", "maccaronies", "macdowell", "macebearer", "macedoine", "Macedonia", "macedonia", "macedonian", "macer", "macerate", "macerates", "macerating", "maceration", "macerative", "macgregor", "macguffin", "machete", "machiavellian", "machicolate", "machicolation", "machilid", "machinate", "machination", "machinations", "machinator", "machine", "machinelike", "machinery", "machines", "machinist", "machismo", "machmeter", "macho", "machzor", "machzorim", "macintosh", "mack", "mackerel", "mackinaw", "mackintosh", "mackle", "macleish", "maconnais", "macrame", "macrencephalic", "macrencephalous", "macrencephaly", "macro", "macrobiotic", "macrobiotics", "macrocephalic", "macrocephalous", "macrocephaly", "macrocosm", "macrocosmic", "macrocyte", "macrocytosis", "macrodantin", "macroeconomic", "macroeconomics", "macroeconomist", "macroevolution", "macroglia", "macroglossia", "macromolecular", "macromolecule", "macron", "macronuclei", "macronucleus", "macrophage", "macrophages", "macroscopic", "macroscopical", "macroscopically", "macrosporangia", "macrosporangium", "macrospore", "macrotus", "macrozamia", "macruridae", "macula", "maculae", "maculate", "maculation", "macule", "macumba", "macushla", "mad", "madagascan", "Madagascar", "madagascar", "madake", "madam", "madame", "madcap", "madded", "madden", "maddened", "maddening", "maddens", "madder", "madderwort", "maddest", "madding", "made", "mademoiselle", "madhouse", "madly", "madman", "madnep", "madness", "madonna", "madornos", "madras", "madrasa", "madrasah", "madrepore", "madrigal", "madrigalist", "madrilene", "madrona", "madrono", "madwoman", "madwort", "maelstrom", "maenad", "maestri", "maestro", "mafa", "maffia", "mafia", "mafiosi", "mafioso", "mag", "magazine", "magazines", "magdalen", "magenta", "maggot", "maggoty", "magha", "magi", "magic", "magical", "magically", "magician", "magilp", "magisterial", "magisterially", "magistracy", "magistrate", "magistrature", "maglev", "magma", "magmata", "magnanimity", "magnanimous", "magnanimously", "magnanimousness", "magnate", "magnesia", "magnesite", "magnesium", "magnet", "magnetic", "magnetically", "magnetics", "magnetisation", "magnetise", "magnetised", "magnetises", "magnetising", "magnetism", "magnetite", "magnetization", "magnetize", "magnetized", "magnetizes", "magnetizing", "magneto", "magnetograph", "magnetohydrodynamics", "magnetometer", "magneton", "magnetosphere", "magnetron", "magnets", "magnification", "magnificence", "magnificent", "magnificently", "magnifico", "magnificoes", "magnified", "magnifier", "magnifies", "magnify", "magnifying", "magniloquence", "magniloquent", "magniloquently", "magnitude", "magnitudes", "magnolia", "magnoliophyta", "magnoliopsid", "magnoliopsida", "magnum", "magpie", "maguey", "magus", "magyar", "magyarorszag", "maha", "mahabharatam", "mahabharatum", "mahagua", "maharaja", "maharajah", "maharanee", "maharani", "mahatma", "mahgrib", "mahican", "mahimahi", "mahjong", "mahlstick", "mahoe", "mahogany", "mahomet", "mahound", "mahout", "mahratta", "mahratti", "mahuang", "mahzor", "mahzorim", "maia", "maid", "maiden", "maidenhair", "maidenhead", "maidenhood", "maidenlike", "maidenliness", "maidenly", "maidhood", "maidism", "maidservant", "maiger", "maigre", "maikoa", "mail", "mailbag", "mailboat", "mailbox", "maildrop", "mailed", "mailer", "mailers", "mailing", "maillot", "mailman", "mails", "mailsorter", "maim", "maimed", "maimer", "maiming", "maims", "main", "mainframe", "mainland", "mainline", "mainlining", "mainly", "mainmast", "mainsail", "mainsheet", "mainspring", "mainstay", "mainstream", "mainstreamed", "maintain", "maintainable", "maintained", "maintainer", "maintaining", "maintains", "maintenance", "maiolica", "maisonette", "maisonnette", "maize", "majagua", "majestic", "majestically", "majesty", "majolica", "major", "majorette", "majoring", "majority", "majors", "majuscular", "majuscule", "mak", "makataimeshekiakiak", "make", "makedonija", "makeing", "makeover", "maker", "makeready", "makers", "makes", "makeshift", "makeup", "makeweight", "makin", "making", "mako", "makomako", "makuta", "malabsorption", "malachias", "malachite", "malacia", "malacologist", "malacology", "malacopterygian", "maladaption", "maladaptive", "maladjusted", "maladjustive", "maladjustment", "maladroit", "maladroitly", "maladroitness", "malady", "malahini", "malaise", "malamute", "malanga", "malaprop", "malapropism", "malapropos", "malar", "malaria", "malarial", "malarkey", "malarky", "Malawi", "malawi", "malawian", "malay", "malaya", "malayan", "Malaysia", "malaysia", "malaysian", "malcontent", "maldevelopment", "maldivan", "Maldives", "maldives", "male", "maleate", "maleberry", "maledict", "malediction", "malefactor", "malefic", "maleficence", "maleficent", "malemute", "maleness", "maleo", "males", "maleseet", "malevolence", "malevolency", "malevolent", "malevolently", "malfeasance", "malfeasant", "malformation", "malformed", "malfunction", "malfunctioning", "malfunctions", "Mali", "mali", "malian", "malice", "malicious", "maliciously", "maliciousness", "malign", "malignance", "malignancies", "malignancy", "malignant", "malignantly", "maligned", "maligner", "maligning", "malignity", "malignly", "malignment", "maligns", "malik", "malinger", "malingerer", "malingering", "malinois", "mall", "mallard", "malleability", "malleable", "mallee", "mallei", "malleoli", "malleolus", "mallet", "malleus", "mallow", "malls", "malmsey", "malnourish", "malnourished", "malnourishment", "malnutrition", "malocclusion", "malodor", "malodorous", "malodorousness", "malodour", "malodourous", "malonylurea", "malope", "maloti", "malposed", "malposition", "malpractice", "mals", "malt", "malted", "maltese", "maltha", "malthusian", "malti", "maltier", "maltiest", "maltman", "maltose", "maltreat", "maltreated", "maltreater", "maltreatment", "maltster", "malty", "malvasia", "malversate", "malversation", "malware", "mama", "mamba", "mambo", "mamey", "mamilla", "mamillae", "mamma", "mammae", "mammal", "mammalian", "mammalogist", "mammalogy", "mammals", "mammary", "mammee", "mammilla", "mammillae", "mammillaria", "mammogram", "mammograms", "mammography", "mammoth", "mammothermography", "mammy", "mamo", "mamoncillo", "man", "manacle", "manage", "manageability", "manageable", "manageableness", "manageably", "managed", "management", "manager", "manageress", "managerial", "managerially", "managers", "managership", "manages", "managing", "manakin", "manana", "manat", "manatee", "manawyddan", "manchurian", "mancunian", "mandaean", "mandala", "mandamus", "mandatary", "mandate", "mandated", "mandates", "mandating", "mandator", "mandatorily", "mandatory", "mandean", "mandeanism", "mandelamine", "mandelshtam", "mandible", "mandibula", "mandibular", "mandibulate", "mandibulofacial", "mandingo", "mandingoes", "mandioc", "mandioca", "mandola", "mandolin", "mandrake", "mandrel", "mandril", "mandrill", "manducate", "manduction", "mane", "maneuver", "maneuverability", "maneuverable", "maneuvered", "maneuverer", "maneuvering", "maneuverings", "maneuvers", "manful", "manfully", "manfulness", "manga", "mangabey", "manganate", "manganese", "manganite", "mange", "manger", "mangey", "mangier", "mangiest", "mangily", "manginess", "mangle", "mangled", "mangler", "manglietia", "mangling", "mango", "mangoes", "mangold", "mangonel", "mangosteen", "mangrove", "mangy", "manhandle", "manhandled", "manhandles", "manhandling", "manhole", "manhood", "manhunt", "mania", "maniac", "maniacal", "maniacally", "manic", "manichaean", "manichaeanism", "manichean", "manichee", "maniclike", "manicotti", "manicure", "manicures", "manicuring", "manicurist", "manifest", "manifestation", "manifestations", "manifesting", "manifestly", "manifesto", "manifestoes", "manifests", "manifold", "manikin", "manilla", "manioc", "manioca", "manipulability", "manipulable", "manipulate", "manipulated", "manipulates", "manipulating", "manipulation", "manipulations", "manipulative", "manipulatively", "manipulator", "maniraptor", "mankier", "mankiest", "mankind", "manky", "manlier", "manliest", "manlike", "manliness", "manly", "manna", "manned", "mannequin", "manner", "mannered", "mannerism", "mannerly", "manners", "mannikin", "manning", "mannish", "mannitol", "manoeuver", "manoeuvering", "manoeuvers", "manoeuvrability", "manoeuvrable", "manoeuvre", "manoeuvred", "manoeuvrer", "manoeuvres", "manoeuvring", "manoeuvrings", "manometer", "manor", "manorial", "manpad", "manpower", "manque", "manroot", "mans", "mansard", "manse", "manservant", "mansion", "mansions", "manslaughter", "manslayer", "manta", "manteau", "manteaux", "manteidae", "mantel", "mantelet", "mantelpiece", "mantes", "mantic", "mantichora", "manticora", "manticore", "mantid", "mantiger", "mantilla", "mantineia", "mantis", "mantispid", "mantissa", "mantle", "mantled", "mantlepiece", "mantlet", "mantra", "mantrap", "mantua", "manual", "manually", "manuals", "manubria", "manubrium", "manufactory", "manufacture", "manufactured", "manufacturer", "manufacturers", "manufactures", "manufacturing", "manul", "manumission", "manumit", "manumits", "manumitted", "manumitter", "manumitting", "manure", "manus", "manuscript", "manuscripts", "manx", "Many", "many", "manzanita", "maoi", "maoist", "map", "mapinguari", "maple", "maplelike", "mapmaking", "mapped", "mapper", "mapping", "mapquest", "maps", "maquiladora", "maquisard", "mar", "MAR.", "Mar.", "mar.", "marabou", "marabout", "maraca", "marang", "maranta", "marasca", "maraschino", "marasmus", "marathon", "marathoner", "maraud", "marauder", "marauding", "maravilla", "marble", "marbled", "marbleisation", "marbleise", "marbleised", "marbleising", "marbleization", "marbleize", "marbleized", "marbleizing", "marblewood", "marbling", "marc", "marcel", "marcelled", "marcelling", "march", "marched", "marcher", "marches", "marchesa", "marchese", "marching", "marchioness", "marchland", "marchpane", "mare", "maremma", "maremme", "margarin", "margarine", "margarita", "margasivsa", "margate", "margay", "marge", "margin", "marginal", "marginalia", "marginalisation", "marginalise", "marginalised", "marginalises", "marginalising", "marginality", "marginalization", "marginalize", "marginalized", "marginalizes", "marginalizing", "marginally", "marginocephalian", "margins", "margosa", "margrave", "marguerite", "mari", "mariachi", "marian", "Mariana", "mariana", "marianas", "marigold", "marihuana", "marijuana", "marimba", "marina", "marinade", "marinara", "marinate", "marinates", "marinating", "marine", "mariner", "marino", "marionette", "mariposa", "marital", "mariticide", "maritime", "maritimes", "marjoram", "Mark", "mark", "marked", "markedly", "marker", "markers", "market", "marketable", "marketed", "marketer", "marketers", "marketing", "marketplace", "markets", "markhoor", "markhor", "marking", "markka", "markkaa", "markoff", "markovian", "marks", "marksman", "marksmanship", "markup", "markweed", "marl", "marlberry", "marlin", "marline", "marlinespike", "marlingspike", "marlinspike", "marlite", "marlstone", "marly", "marmalade", "marmite", "marmora", "marmoreal", "marmorean", "marmoset", "marmot", "maroc", "marocain", "maroon", "marooned", "marplan", "marque", "marquee", "marquess", "marqueterie", "marquetry", "marquis", "marquise", "marrakech", "marred", "marri", "marriage", "marriageability", "marriageable", "marriages", "married", "marries", "marring", "marrow", "marrowbone", "marruecos", "marry", "marrying", "Mars", "mars", "marshal", "marshaled", "marshaling", "Marshall", "marshall", "marshalled", "marshalling", "marshals", "marshalship", "marshier", "marshiest", "marshland", "marshmallow", "marshmallows", "marshy", "marsupia", "marsupial", "marsupium", "mart", "martagon", "marten", "martensite", "martial", "martially", "martian", "martinet", "martingale", "martini", "martynia", "martyr", "martyrdom", "martyring", "martyrise", "martyrises", "martyrize", "martyrizes", "martyrs", "marum", "marumi", "marupa", "marvel", "marveled", "marveling", "marvelled", "marveller", "marvelling", "marvellous", "marvellously", "marvelous", "marvelously", "marvels", "marxist", "maryland", "marzipan", "mascara", "mascarpone", "mascot", "masculine", "masculinisation", "masculinise", "masculinity", "masculinization", "masculinize", "masdevallia", "maser", "mash", "masher", "mashes", "mashie", "mashing", "masjid", "mask", "masked", "masker", "masking", "masks", "masochism", "masochist", "masochistic", "masochistically", "mason", "masonic", "masonry", "masora", "masoretic", "masorite", "masqat", "masque", "masquer", "masquerade", "masquerader", "masquerades", "masquerading", "mass", "MASS.", "Mass.", "mass.", "massachusetts", "massacre", "massacres", "massacring", "massage", "massager", "massages", "massaging", "massasauga", "masse", "massed", "masses", "masseter", "masseur", "masseuse", "massicot", "massicotite", "massier", "massiest", "massif", "massing", "massive", "massively", "massiveness", "massorete", "massy", "mast", "mastaba", "mastabah", "mastalgia", "mastectomy", "masted", "master", "mastered", "masterful", "masterfully", "mastering", "masterless", "masterly", "mastermind", "masterpiece", "masterpieces", "masters", "mastership", "masterstroke", "masterwort", "mastery", "masthead", "mastic", "masticate", "masticating", "mastication", "mastiff", "mastigomycotina", "mastigophoran", "mastigophore", "mastitis", "mastocyte", "mastodon", "mastodont", "mastoid", "mastoidal", "mastoidale", "mastoidectomy", "mastoiditis", "mastopathy", "mastopexy", "masturbate", "masturbates", "masturbating", "masturbation", "masturbator", "mat", "matabele", "matador", "matai", "match", "matchboard", "matchbook", "matchbox", "matchbush", "matched", "matcher", "matches", "matchet", "matching", "matchless", "matchlock", "matchmaker", "matchmaking", "matchstick", "matchup", "matchweed", "matchwood", "mate", "mated", "mateless", "matelote", "mater", "materfamilias", "material", "materialisation", "materialise", "materialised", "materialises", "materialising", "materialism", "materialist", "materialistic", "materialistically", "materiality", "materialization", "materialize", "materialized", "materializes", "materializing", "materially", "materials", "materiel", "maternal", "maternalism", "maternalistic", "maternally", "maternity", "mates", "matey", "math", "mathematical", "mathematically", "mathematician", "mathematics", "matinee", "mating", "matins", "matman", "matoaka", "matriarch", "matriarchal", "matriarchate", "matriarchic", "matriarchy", "matric", "matricentric", "matrices", "matricide", "matriculate", "matriculation", "matrikin", "matrilineage", "matrilineal", "matrilineally", "matrilinear", "matrimonial", "matrimony", "matrisib", "matrix", "matron", "matronly", "matronymic", "matsyendra", "Matt", "matt", "matte", "matted", "matter", "mattered", "mattering", "matters", "matting", "mattock", "mattress", "maturate", "maturation", "maturational", "mature", "matured", "maturely", "maturement", "matureness", "matures", "maturing", "maturity", "matutinal", "matzah", "matzo", "matzoh", "matzoth", "maudlin", "maul", "mauler", "mauling", "mauls", "maulstick", "maund", "maunder", "maundering", "maunders", "maungier", "maungiest", "maungy", "Mauritania", "mauritania", "mauritanian", "mauritanie", "mauritian", "Mauritius", "mauritius", "mausolea", "mausoleum", "mauve", "maven", "maverick", "mavik", "mavin", "mavis", "maw", "mawkish", "mawkishly", "mawkishness", "mawlamyine", "max", "maxi", "maxilla", "maxillae", "maxillaria", "maxillary", "maxillodental", "maxillofacial", "maxillomandibular", "maxima", "maximal", "maximally", "maximation", "maximisation", "maximise", "maximised", "maximises", "maximising", "maximization", "maximize", "maximized", "maximizes", "maximizing", "maximum", "MAY", "May", "may", "MAY'VE", "May've", "may've", "mayapple", "Maybe", "maybe", "mayeng", "mayfish", "mayfly", "mayhap", "mayhaw", "mayhem", "mayidism", "MAYN'T", "Mayn't", "mayn't", "MAYNT", "Maynt", "maynt", "MAYN\u2019T", "Mayn\u2019t", "mayn\u2019t", "mayo", "mayonnaise", "mayor", "mayoral", "mayoralty", "mayoress", "mayors", "maypole", "maypop", "MAYVE", "Mayve", "mayve", "mayweed", "MAY\u2019VE", "May\u2019ve", "may\u2019ve", "mazdaism", "maze", "mazed", "mazer", "mazier", "maziest", "mazopathy", "mazurka", "mazy", "mazzard", "mba", "mbd", "mbit", "mcalester", "mcallen", "mccarthy", "mccarthyism", "mccartney", "mccauley", "mccormick", "mccullers", "mcg", "mcgraw", "mcguffey", "mcguffin", "mcia", "mcintosh", "mckim", "mckinley", "mcluhan", "mcmaster", "mcpherson", "MCX", "mcx", "MD.", "Md.", "md.", "mdi", "mdiv", "mdma", "mdt", "me", "meadow", "meadowgrass", "meadowlark", "meadows", "meager", "meagerly", "meagerness", "meagre", "meagrely", "meagreness", "meal", "mealberry", "mealie", "mealier", "mealiest", "meals", "mealtime", "mealworm", "mealy", "mealybug", "mealymouthed", "mean", "meander", "meandered", "meandering", "meanderingly", "meanders", "meaner", "meanest", "meanie", "meaning", "meaningful", "meaningfully", "meaningfulness", "meaningless", "meaninglessness", "meanings", "meanly", "meanness", "means", "meanspirited", "meanspiritedly", "meant", "meantime", "Meanwhile", "meanwhile", "meany", "mearstone", "measles", "measlier", "measliest", "measly", "measurability", "measurable", "measurably", "measure", "measured", "measuredly", "measureless", "measurement", "measurements", "measurer", "measures", "measuring", "meat", "meatball", "meatier", "meatiest", "meatless", "meatloaf", "meatman", "meatpacking", "meats", "meatus", "meaty", "mebaral", "mebendazole", "mebibit", "mebibyte", "mechanic", "mechanical", "mechanically", "mechanics", "mechanisation", "mechanise", "mechanised", "mechanises", "mechanising", "mechanism", "mechanisms", "mechanist", "mechanistic", "mechanistically", "mechanization", "mechanize", "mechanized", "mechanizes", "mechanizing", "mecholyl", "meclizine", "meclofenamate", "meclomen", "meconium", "mecopteran", "mecopterous", "med", "medal", "medalist", "medalled", "medalling", "medallion", "medallist", "medals", "meddle", "meddler", "meddles", "meddlesome", "meddlesomeness", "meddling", "medevac", "medfly", "media", "mediacy", "mediaeval", "medial", "medially", "median", "mediant", "mediastina", "mediastinum", "mediate", "mediated", "mediateness", "mediates", "mediating", "mediation", "mediator", "mediatorial", "mediators", "mediatory", "mediatrix", "medic", "medical", "medically", "medicament", "medicate", "medicates", "medicating", "medication", "medications", "medicative", "medicinal", "medicinally", "medicine", "medicines", "medick", "medico", "medicolegal", "mediety", "medieval", "mediocre", "mediocrity", "meditate", "meditates", "meditating", "meditation", "meditative", "meditatively", "meditativeness", "mediterranean", "medium", "medivac", "medlar", "medley", "medline", "medroxyprogesterone", "meds", "medulla", "medullae", "medullary", "medullated", "medusa", "medusae", "medusan", "medusoid", "meed", "meek", "meekly", "meekness", "meerestone", "meerkat", "meerschaum", "meet", "meeter", "meeting", "meetinghouse", "meetings", "meets", "mefloquine", "mefoxin", "meg", "mega-crash", "mega-hit", "Mega-hits", "mega-hits", "mega-issues", "mega-lawyer", "mega-mergers", "mega-projects", "mega-resorts", "mega-stadium", "megabat", "megabit", "megabucks", "megabyte", "megacardia", "megacephaly", "megacolon", "megacycle", "megadeath", "megaflop", "megagametophyte", "megahertz", "megahit", "megakaryocyte", "megakaryocytic", "megalith", "megalithic", "megaloblast", "megaloblastic", "megalocardia", "megalocephaly", "megalocyte", "megalohepatia", "megalomania", "megalomaniac", "megalomaniacal", "megalomanic", "megalopolis", "megalosaur", "megalosaurus", "megaphone", "megapode", "megara", "megaron", "megascopic", "megasporangia", "megasporangium", "megaspore", "megasporophyll", "megathere", "megatherian", "megatheriid", "megaton", "megawatt", "megestrol", "megillah", "megilloth", "megilp", "megohm", "megrim", "mei", "meioses", "meiosis", "meiotic", "meitnerium", "mek", "melaena", "melagra", "melamine", "melancholia", "melancholiac", "melancholic", "melancholy", "melanesian", "melange", "melanin", "melanise", "melanism", "melanize", "melanoblast", "melanocyte", "melanoderma", "melanoma", "melanomata", "melanosis", "melasma", "melastomaceae", "melatonin", "melchite", "meld", "melding", "melds", "melee", "melena", "melicocca", "melilot", "melilotus", "meliorate", "melioration", "meliorative", "meliorism", "meliorist", "melisma", "melismata", "mellaril", "mellifluous", "mellisonant", "mellow", "mellowed", "mellowing", "mellowingly", "mellowly", "mellowness", "mellows", "melodic", "melodically", "melodies", "melodious", "melodiously", "melodiousness", "melodise", "melodize", "melodrama", "melodramatic", "melodramatically", "melody", "meloid", "melon", "melosa", "melphalan", "melt", "meltable", "meltdown", "melted", "melter", "melting", "melts", "meltwater", "mem", "member", "membered", "memberless", "members", "membership", "membrane", "membranes", "membranophone", "membranous", "meme", "memel", "memento", "mementoes", "memo", "memoir", "memoirs", "memorabilia", "memorability", "memorable", "memorably", "memoranda", "memorandum", "memorial", "memorialisation", "memorialise", "memorialised", "memorialises", "memorialising", "memorialization", "memorialize", "memorialized", "memorializes", "memorializing", "memoriam", "memories", "memorisation", "memorise", "memorised", "memoriser", "memorises", "memorising", "memorization", "memorize", "memorized", "memorizer", "memorizes", "memorizing", "memory", "memos", "memsahib", "men", "menace", "menaced", "menaces", "menacing", "menacingly", "menadione", "menage", "menagerie", "menarche", "mend", "mendacious", "mendaciously", "mendacity", "mendeleev", "mendelevium", "mendelian", "mendelianism", "mender", "mendicancy", "mendicant", "mendicity", "mending", "mends", "menhaden", "menhir", "menial", "menially", "meningeal", "meninges", "meningioma", "meningism", "meningitis", "meningocele", "meningoencephalitis", "meninx", "meniscectomy", "menisci", "meniscus", "menominee", "menopausal", "menopause", "menorah", "menorrhagia", "menorrhea", "mensal", "mensch", "menservants", "menses", "mensh", "menstrua", "menstrual", "menstruate", "menstruates", "menstruating", "menstruation", "menstruum", "mensurable", "mensural", "mensurate", "mensuration", "mental", "mentalism", "mentality", "mentally", "mentation", "menthol", "mentholated", "mention", "mentioned", "mentioner", "mentioning", "mentions", "mentor", "mentoring", "mentors", "mentum", "menu", "menus", "meow", "meowing", "meows", "mepacrine", "meperidine", "mephaquine", "mephenytoin", "mephistophelean", "mephistophelian", "mephitic", "mephobarbital", "meprin", "meprobamate", "meq", "meralgia", "merbromine", "mercantile", "mercantilism", "mercaptopurine", "mercenary", "mercer", "mercerise", "mercerised", "mercerize", "mercerized", "merchandise", "merchandised", "merchandiser", "merchandises", "merchandising", "merchant", "merchantability", "merchantable", "merchantman", "merchants", "merciful", "mercifully", "mercifulness", "merciless", "mercilessly", "mercilessness", "mercurial", "mercuric", "mercurochrome", "mercurous", "mercury", "mercy", "mere", "merely", "merestone", "meretricious", "meretriciously", "meretriciousness", "merganser", "merge", "merged", "merger", "mergers", "merges", "merging", "mericarp", "meridian", "meridional", "meringue", "merino", "meristem", "merit", "meritable", "merited", "meriting", "meritless", "meritocracy", "meritocratic", "meritorious", "meritoriously", "meritoriousness", "merits", "merl", "merle", "merlon", "mermaid", "merman", "merodach", "meromelia", "meronym", "meronymy", "merovingian", "merozoite", "merrier", "merriest", "merrily", "merriment", "merriness", "merry", "merrymaker", "merrymaking", "merthiolate", "mesalliance", "mesantoin", "mescal", "mescaline", "mesdames", "mesdemoiselles", "mesencephalon", "mesenchyme", "mesentera", "mesenteric", "mesenteron", "mesentery", "mesh", "meshed", "meshes", "meshing", "meshuga", "meshugaas", "meshugga", "meshugge", "meshuggeneh", "meshuggener", "meshwork", "mesial", "mesic", "mesmeric", "mesmerise", "mesmerised", "mesmerises", "mesmerising", "mesmerism", "mesmerist", "mesmerize", "mesmerized", "mesmerizer", "mesmerizes", "mesmerizing", "mesoamerican", "mesoblast", "mesoblastic", "mesocarp", "mesocolon", "mesoderm", "mesodermal", "mesohippus", "mesolithic", "mesomorph", "mesomorphic", "mesomorphy", "meson", "mesonic", "mesophyron", "mesophyte", "mesophytic", "mesosphere", "mesothelioma", "mesothelium", "mesothoraces", "mesothorax", "mesotron", "mesozoic", "mesquit", "mesquite", "mess", "message", "messages", "messaging", "messed", "messeigneurs", "messenger", "messes", "messiahship", "messianic", "messier", "messiest", "messieurs", "messily", "messiness", "messing", "messmate", "MESSRS.", "Messrs.", "messrs.", "messuage", "messy", "mestiza", "mestizo", "mestizoes", "mestranol", "met", "metabola", "metabolic", "metabolically", "metabolise", "metabolised", "metabolises", "metabolising", "metabolism", "metabolite", "metabolites", "metabolize", "metabolized", "metabolizes", "metabolizing", "metabolous", "metacarpal", "metacarpi", "metacarpus", "metacenter", "metacentre", "metacentric", "metacyesis", "metadata", "metagenesis", "metagrabolised", "metagrabolized", "metagrobolised", "metagrobolized", "metaknowledge", "metal", "metalanguage", "metalepsis", "metalhead", "metalize", "metalled", "metallic", "metallike", "metalling", "metallize", "metalloid", "metallurgic", "metallurgical", "metallurgist", "metallurgy", "metals", "metalware", "metalwork", "metalworker", "metalworking", "metamathematics", "metamere", "metameric", "metamorphic", "metamorphism", "metamorphopsia", "metamorphose", "metamorphoses", "metamorphosing", "metamorphosis", "metamorphous", "metanephroi", "metanephros", "metaphase", "metaphor", "metaphoric", "metaphorical", "metaphorically", "metaphors", "metaphysical", "metaphysically", "metaphysics", "metaphysis", "metaproterenol", "metarule", "metasequoia", "metastability", "metastable", "metastases", "metastasis", "metastasise", "metastasises", "metastasize", "metastasizes", "metastasizing", "metastatic", "metatarsal", "metatarsi", "metatarsus", "metatherian", "metatheses", "metathesis", "metathoraces", "metathorax", "metazoa", "metazoan", "metchnikov", "mete", "metempsychoses", "metempsychosis", "metencephala", "metencephalon", "meteor", "meteoric", "meteorite", "meteoritic", "meteoritical", "meteoroid", "meteorologic", "meteorological", "meteorologically", "meteorologist", "meteorology", "meteortropism", "meter", "metering", "meters", "meterstick", "metformin", "meth", "methacholine", "methadon", "methadone", "methamphetamine", "methanal", "methane", "methanogen", "methanol", "methapyrilene", "methaqualone", "metharbital", "methedrine", "metheglin", "methenamine", "methicillin", "methionine", "methocarbamol", "method", "methodical", "methodically", "methodicalness", "methodist", "methodological", "methodologically", "methodologies", "methodology", "methods", "methotrexate", "methyl", "methylated", "methylbenzene", "methyldopa", "methylene", "methylenedioxymethamphetamine", "methylphenidate", "methyltestosterone", "metic", "metical", "meticorten", "meticulosity", "meticulous", "meticulously", "meticulousness", "metier", "metonym", "metonymic", "metonymical", "metonymically", "metonymy", "metopion", "metoprolol", "metralgia", "metrazol", "metre", "metres", "metrestick", "metric", "metrical", "metrically", "metricate", "metrication", "metricise", "metricises", "metricize", "metricizes", "metrics", "metrification", "metrified", "metrifies", "metrify", "metritis", "metro", "metrological", "metrology", "metronidazole", "metronome", "metronymic", "metropolis", "metropolitan", "metroptosis", "metrorrhagia", "mettle", "mettlesome", "mettlesomeness", "metycaine", "mevacor", "mew", "mewl", "mewling", "mexican", "mexicano", "Mexico", "mexico", "mexiletine", "mexitil", "mezcal", "mezereon", "mezereum", "mezuza", "mezuzah", "mezuzoth", "mezzanine", "mezzo", "mezzotint", "mfa", "mflop", "mg", "MGMT.", "Mgmt.", "mgmt.", "mho", "mhz", "MI.", "Mi.", "mi.", "miao", "miaou", "miaow", "miasm", "miasma", "miasmal", "miasmata", "miasmic", "miaul", "mib", "mibit", "mic", "mica", "micaceous", "mice", "micelle", "MICH.", "Mich.", "mich.", "micheas", "michelangelesque", "michigan", "mick", "mickey", "mickle", "miconazole", "micro", "micro-electronic", "micro-liquidity", "microanalyses", "microanalysis", "microbalance", "microbar", "microbat", "microbe", "microbes", "microbial", "microbic", "microbiologist", "microbiology", "microbrachia", "microbrewery", "microcephalic", "microcephalous", "microcephalus", "microcephaly", "microchip", "microcircuit", "micrococci", "micrococcus", "microcode", "microcomputer", "microcopy", "microcosm", "microcosmic", "microcosms", "microcrystalline", "microcyte", "microcytosis", "microdot", "microeconomic", "microeconomics", "microeconomist", "microelectronic", "microelectronics", "microevolution", "microfarad", "microfiche", "microfilm", "microflora", "microfossil", "microgametophyte", "microgauss", "microglia", "microgliacyte", "microgram", "micrograms", "micrometeor", "micrometeoric", "micrometeorite", "micrometeoritic", "micrometeoroid", "micrometer", "micrometers", "micrometre", "micrometres", "micrometry", "micromicron", "micromillimeter", "micromillimetre", "micron", "micronase", "Micronesia", "micronesia", "micronuclei", "micronucleus", "micronutrient", "microorganism", "microorganisms", "micropaleontology", "micropenis", "microphage", "microphallus", "microphone", "microphoning", "microphotometer", "microprocessor", "micropylar", "micropyle", "microradian", "microscope", "microscopic", "microscopical", "microscopically", "microscopist", "microscopy", "microsecond", "microseism", "microsomal", "microsome", "microsporangia", "microsporangium", "microspore", "microsporidian", "microsporophyll", "microsurgery", "microtome", "microtubule", "microvolt", "microwave", "microzide", "micturate", "micturition", "mid", "mid-1920s", "mid-1930s", "mid-1940s", "mid-1950s", "mid-1960s", "mid-1970s", "mid-1980s", "mid-1990s", "mid-2000s", "mid-2010s", "mid-2020s", "mid-20s", "mid-30s", "mid-40s", "mid-50s", "mid-60s", "mid-70s", "mid-80s", "mid-90s", "mid-afternoon", "mid-april", "mid-august", "mid-conversation", "mid-day", "mid-december", "mid-eighties", "mid-february", "mid-fifties", "mid-forties", "mid-january", "mid-july", "mid-june", "mid-march", "mid-may", "mid-night", "mid-nineties", "mid-november", "mid-october", "mid-priced", "mid-range", "mid-season", "mid-september", "mid-seventies", "mid-sixties", "Mid-sized", "mid-sized", "mid-thirties", "mid-to-late", "mid-twenties", "mid-week", "midafternoon", "midair", "midazolam", "midbrain", "midday", "midden", "middle", "middlebreaker", "middlebrow", "middleman", "middlemost", "middleweight", "middling", "middy", "mideast", "midfield", "midge", "midget", "midgrass", "midi", "midinette", "midiron", "midland", "midline", "midmost", "midnight", "midplane", "midpoint", "midrash", "midrashim", "midrib", "midrif", "midriff", "midsection", "midshipman", "midships", "midst", "midstream", "midsummer", "midterm", "midvein", "midwatch", "midway", "midweek", "midweekly", "midwest", "midwestern", "midwife", "midwifery", "midwinter", "midwives", "mien", "mierkat", "mifepristone", "miff", "miffed", "miffier", "miffiest", "miffs", "miffy", "MIGHT", "Might", "might", "MIGHT'VE", "Might've", "might've", "mightier", "mightiest", "mightily", "mightiness", "MIGHTN'T", "Mightn't", "mightn't", "MIGHTNT", "Mightnt", "mightnt", "MIGHTN\u2019T", "Mightn\u2019t", "mightn\u2019t", "MIGHTVE", "Mightve", "mightve", "mighty", "MIGHT\u2019VE", "Might\u2019ve", "might\u2019ve", "mignonette", "migraine", "migrant", "migrants", "migrate", "migrates", "migrating", "migration", "migrational", "migrations", "migrator", "migratory", "mihrab", "mikado", "Mike", "mike", "mikmaq", "mikvah", "mil", "milage", "milanese", "milano", "milch", "milcher", "mild", "milder", "mildew", "mildly", "mildness", "mile", "mileage", "mileometer", "milepost", "miler", "miles", "milestone", "milestones", "milfoil", "milia", "miliaria", "milieu", "milieux", "militainment", "militance", "militancy", "militant", "militants", "militarily", "militarisation", "militarise", "militarised", "militarises", "militarising", "militarism", "militarist", "militaristic", "militarization", "militarize", "militarized", "militarizes", "militarizing", "military", "militate", "militates", "militating", "militia", "militiaman", "militias", "milium", "milk", "milkcap", "milked", "milker", "milkfish", "milkfishes", "milkier", "milkiest", "milking", "milkless", "milklike", "milkmaid", "milkman", "milks", "milkshake", "milksop", "milkwagon", "milkweed", "milkwort", "milky", "mill", "millboard", "milldam", "milled", "millenarian", "millenarianism", "millenarism", "millenarist", "millenary", "millennia", "millennial", "millennian", "millennium", "millenniumism", "millepede", "miller", "millerite", "millettia", "milliammeter", "milliampere", "milliard", "millibar", "millicurie", "millidegree", "milliequivalent", "millifarad", "milligram", "milligramme", "milligrammes", "milligrams", "millihenry", "milliliter", "milliliters", "millilitre", "millilitres", "millime", "millimeter", "millimeters", "millimetre", "millimetres", "millimicron", "milline", "milliner", "millinery", "milling", "million", "millionaire", "millionaires", "millionairess", "millionfold", "millions", "millionth", "milliped", "millipede", "milliradian", "millirem", "millisecond", "milliseconds", "millivolt", "millivoltmeter", "milliwatt", "millpond", "millrace", "millrun", "mills", "millstone", "millwheel", "millwork", "millwright", "milo", "milometer", "milontin", "milord", "milquetoast", "milt", "miltomate", "miltown", "mime", "mimeo", "mimeograph", "mimer", "mimes", "mimesis", "mimetic", "mimic", "mimicing", "mimicked", "mimicker", "mimicking", "mimicry", "mimics", "miming", "mimosa", "min", "mina", "minacious", "minae", "minah", "minaret", "minatory", "mince", "mincemeat", "mincer", "minces", "mincing", "mincingly", "mind", "minded", "minder", "mindful", "mindfully", "mindfulness", "minding", "mindless", "mindlessly", "mindlessness", "minds", "mindset", "mine", "mined", "minefield", "minelayer", "minelaying", "miner", "mineral", "mineralize", "mineralocorticoid", "mineralogist", "mineralogy", "minerals", "miners", "mines", "mineshaft", "minestrone", "minesweeper", "minesweeping", "mineworker", "minge", "mingier", "mingiest", "minginess", "mingle", "mingles", "mingling", "mingy", "mini", "mini-component", "mini-series", "mini-slip", "miniate", "miniature", "miniaturisation", "miniaturise", "miniaturised", "miniaturises", "miniaturising", "miniaturist", "miniaturization", "miniaturize", "miniaturized", "miniaturizes", "miniaturizing", "minibar", "minibike", "minibus", "minibuses", "minibuss", "minibusses", "minicab", "minicar", "minicomputer", "minified", "minifies", "minify", "minim", "minima", "minimal", "minimalism", "minimalist", "minimally", "minimisation", "minimise", "minimised", "minimises", "minimising", "minimization", "minimize", "minimized", "minimizes", "minimizing", "minimum", "minimus", "mining", "minion", "minions", "minipress", "miniscule", "miniskirt", "minister", "ministeria", "ministerial", "ministerially", "ministering", "ministerium", "ministers", "ministrant", "ministration", "ministry", "minisub", "minisubmarine", "minium", "minivan", "minivans", "miniver", "mink", "MINN.", "Minn.", "minn.", "minnesota", "minnewit", "minniebush", "minnow", "minoan", "minocin", "minocycline", "minor", "minoring", "minorities", "minority", "minors", "minoxidil", "minster", "minstrel", "minstrelsy", "mint", "mintage", "minted", "minter", "minting", "mintmark", "mints", "minty", "minuend", "minuet", "minus", "minuscular", "minuscule", "minuses", "minute", "minutely", "minuteness", "minutes", "minutia", "minutiae", "minx", "minyan", "minyanim", "mioses", "miosis", "miotic", "mips", "mir", "miracidia", "miracidium", "miracle", "miracles", "miraculous", "miraculously", "mirage", "mirasol", "mire", "mired", "mires", "miri", "mirid", "mirish", "mirkier", "mirkiest", "mirky", "mirror", "mirrored", "mirrorlike", "mirrors", "mirth", "mirthful", "mirthfully", "mirthfulness", "mirthless", "miry", "misaddress", "misadventure", "misadvise", "misadvises", "misalign", "misalignment", "misalliance", "misally", "misanthrope", "misanthropic", "misanthropical", "misanthropist", "misanthropy", "misapplication", "misapplied", "misapplies", "misapply", "misapprehend", "misapprehension", "misappropriate", "misappropriated", "misappropriates", "misappropriating", "misappropriation", "misbegot", "misbegotten", "misbehave", "misbehaved", "misbehaves", "misbehaving", "misbehavior", "misbehaviour", "misbelieve", "misbeliever", "misbrand", "misbranded", "misbranding", "misc", "miscalculate", "miscalculated", "miscalculates", "miscalculating", "miscalculation", "miscall", "miscarriage", "miscarried", "miscarries", "miscarry", "miscast", "miscegenate", "miscegenating", "miscegenation", "miscellanea", "miscellaneous", "miscellany", "mischance", "mischief", "mischiefs", "mischievous", "mischievously", "mischievousness", "miscible", "misclassified", "misclassifies", "misclassify", "misconceive", "misconception", "misconduct", "misconducted", "misconducting", "misconducts", "misconstrual", "misconstruction", "misconstrue", "miscount", "miscounting", "miscreant", "miscreate", "miscreation", "miscue", "misdate", "misdating", "misdeal", "misdeed", "misdeeds", "misdeliver", "misdelivers", "misdemean", "misdemeanor", "misdemeanors", "misdemeanour", "misdemeanours", "misdemeans", "misdirect", "misdirecting", "misdirection", "misdirects", "misdo", "miser", "miserable", "miserableness", "miserably", "miserliness", "miserly", "misery", "misestimate", "misestimation", "misfeasance", "misfire", "misfires", "misfiring", "misfit", "misfits", "misfitted", "misfitting", "misfortunate", "misfortune", "misfunction", "misfunctions", "misgauge", "misgauges", "misgive", "misgives", "misgiving", "misgovern", "misgovernment", "misguide", "misguided", "misguides", "mishandle", "mishandled", "mishandles", "mishandling", "mishap", "mishegaas", "mishegoss", "mishit", "mishits", "mishitting", "mishmash", "mishna", "mishnah", "mishnaic", "mishnayoth", "mishpachah", "mishpocha", "misidentifies", "misidentify", "misidentifying", "misinform", "misinformation", "misinformed", "misinforming", "misinforms", "misinterpret", "misinterpretation", "misinterpreted", "misinterpreting", "misinterprets", "misjudge", "misjudged", "misjudges", "misjudging", "mislabeled", "mislaid", "mislay", "mislead", "misleaded", "misleader", "misleading", "misleadingly", "misleads", "misled", "mismanage", "mismanagement", "mismanages", "mismanaging", "mismarry", "mismatch", "mismatched", "mismatches", "mismatching", "mismate", "mismated", "misname", "misnomer", "miso", "misocainea", "misogamist", "misogamy", "misogynic", "misogynism", "misogynist", "misogynistic", "misogynous", "misogyny", "misology", "misoneism", "misopedia", "misperceive", "mispickel", "misplace", "misplaced", "misplacement", "misplaces", "misplacing", "misplay", "misplead", "mispled", "mispricing", "misprint", "misprints", "mispronounce", "mispronounces", "mispronouncing", "mispronunciation", "misquotation", "misquote", "misquoting", "misread", "misreading", "misreads", "misreckoning", "misrelated", "misremember", "misremembering", "misremembers", "misreport", "misreported", "misreporting", "misreports", "misrepresent", "misrepresentation", "misrepresentations", "misrepresented", "misrepresenting", "misrepresents", "misrule", "miss", "MISS.", "Miss.", "miss.", "missal", "missed", "misses", "misshapen", "misshapenness", "missile", "missiles", "missing", "mission", "missional", "missionaries", "missionary", "missioner", "missions", "missis", "mississippi", "missive", "missouri", "misspeak", "misspeaking", "misspeaks", "misspell", "misspelled", "misspelling", "misspells", "misspelt", "misspend", "misspending", "misspends", "misspent", "misstate", "misstated", "misstatement", "misstates", "misstating", "misstep", "missus", "missy", "mist", "mistakable", "mistake", "mistaken", "mistakenly", "mistakes", "mistaking", "mistflower", "mistier", "mistiest", "mistily", "mistime", "mistiming", "mistiness", "misting", "mistletoe", "mistral", "mistranslate", "mistranslates", "mistranslating", "mistranslation", "mistreat", "mistreated", "mistreating", "mistreatment", "mistreats", "mistress", "mistrial", "mistrust", "mistrustful", "mistrustfully", "mistrusting", "mistrusts", "mists", "misty", "misunderstand", "misunderstanding", "misunderstands", "misunderstood", "misuse", "misused", "misuses", "misusing", "mit", "mite", "miter", "mitering", "miters", "miterwort", "mithan", "mithra", "mithracin", "mithraic", "mithraicism", "mithraistic", "mithramycin", "mitigable", "mitigate", "mitigated", "mitigates", "mitigating", "mitigation", "mitigative", "mitigatory", "mitochondria", "mitochondrion", "mitogen", "mitomycin", "mitosis", "mitotic", "mitral", "mitre", "mitres", "mitrewort", "mitsvah", "mitt", "mittelschmerz", "mitten", "mitzvah", "mitzvoth", "mix", "mixable", "mixed", "mixer", "mixes", "mixing", "mixologist", "mixology", "mixture", "mixtures", "mizen", "mizenmast", "mizzen", "mizzenmast", "mizzle", "mko", "ml", "mlitt", "mm", "mmpi", "mnemonic", "mnemonist", "mnemotechnic", "mnemotechnical", "mo", "MO.", "Mo.", "mo.", "moa", "moan", "moaned", "moaner", "moaning", "moans", "moat", "moated", "mob", "moban", "mobbed", "mobbing", "mobbish", "mobcap", "mobile", "mobilisation", "mobilise", "mobilised", "mobilises", "mobilising", "mobility", "mobilization", "mobilize", "mobilized", "mobilizes", "mobilizing", "moblike", "mobocracy", "mobster", "mobsters", "mocambique", "mocassin", "moccasin", "mocha", "mock", "mocked", "mocker", "mockernut", "mockery", "mocking", "mockingbird", "mockingly", "mocks", "mod", "modal", "modalities", "modality", "mode", "model", "modeled", "modeler", "modelers", "modeling", "modelled", "modeller", "modellers", "modelling", "models", "modem", "moderate", "moderated", "moderately", "moderateness", "moderates", "moderating", "moderation", "moderationism", "moderationist", "moderatism", "moderato", "moderator", "moderatorship", "modern", "moderne", "modernisation", "modernise", "modernised", "modernises", "modernising", "modernism", "modernist", "modernistic", "modernity", "modernization", "modernize", "modernized", "modernizes", "modernizing", "modernness", "modes", "modest", "modestly", "modestness", "modesty", "modicum", "modifiable", "modification", "modifications", "modified", "modifier", "modifies", "modify", "modifying", "modillion", "modioli", "modiolus", "modish", "modishly", "modishness", "modiste", "modular", "modulate", "modulated", "modulates", "modulating", "modulation", "module", "modules", "moduli", "modulus", "mogadiscio", "moghul", "mogul", "moguls", "mohair", "mohammad", "mohammedan", "mohammedanism", "moharram", "moho", "moieties", "moiety", "moil", "moirae", "moire", "moist", "moisten", "moistener", "moistening", "moistly", "moistness", "moisture", "moisturise", "moisturised", "moisturiser", "moisturisers", "moisturises", "moisturising", "moisturize", "moisturized", "moisturizer", "moisturizers", "moisturizes", "moisturizing", "mojarra", "mojo", "moke", "moksa", "mol", "mola", "molal", "molality", "molar", "molarity", "molasses", "mold", "moldable", "moldavia", "moldboard", "molded", "molder", "moldered", "moldering", "molders", "moldier", "moldiest", "moldiness", "molding", "moldings", "moldovan", "molds", "moldy", "mole", "molech", "molecular", "molecule", "molecules", "molehill", "moleskin", "molest", "molestation", "molester", "molesting", "molests", "molindone", "moll", "mollah", "molle", "mollie", "mollification", "mollified", "mollifies", "mollify", "mollifying", "mollusc", "molluscum", "mollusk", "molly", "mollycoddle", "mollycoddler", "mollycoddling", "mollymawk", "moloch", "molt", "molted", "molten", "molter", "molting", "molto", "molts", "molybdenite", "molybdenum", "mom", "mombin", "moment", "momenta", "momentaneous", "momentarily", "momentary", "momently", "momentous", "momentously", "momentousness", "moments", "momentum", "momi", "momism", "momma", "mommy", "momos", "momot", "moms", "momus", "mon", "MON.", "Mon.", "mon.", "mona", "monacan", "monad", "monades", "monal", "monandrous", "monandry", "monarch", "monarchal", "monarchic", "monarchical", "monarchism", "monarchist", "monarchs", "monarchy", "monarda", "monasteries", "monastery", "monastic", "monastical", "monasticism", "monatomic", "monaul", "monaural", "monaurally", "monazite", "monday", "monecious", "monegasque", "moneran", "moneron", "monestrous", "monetarism", "monetarist", "monetary", "monetisation", "monetise", "monetization", "monetize", "money", "money-wise", "moneybag", "moneyed", "moneyer", "moneygrubber", "moneylender", "moneyless", "moneymaker", "moneymaking", "moneyman", "moneywort", "monger", "mongering", "monggo", "mongo", "mongol", "Mongolia", "mongolia", "mongolian", "mongolianism", "mongolic", "mongolism", "mongoloid", "mongoose", "mongrel", "mongrelise", "mongrelises", "mongrelize", "mongrelizes", "monied", "moniker", "monilia", "moniliasis", "monish", "monism", "monistat", "monistic", "monition", "monitor", "monitored", "monitoring", "monitors", "monitory", "monitrice", "monk", "monkey", "monkeypod", "monkeys", "monkfish", "monkfishes", "monkish", "monks", "monkshood", "mono", "monoamine", "monoatomic", "monoblast", "monocarboxylic", "monocarp", "monocarpic", "monochasia", "monochasium", "monochromacy", "monochromasy", "monochromat", "monochromatic", "monochromatism", "monochrome", "monochromia", "monochromic", "monochromous", "monocle", "monocled", "monoclinal", "monocline", "monoclinic", "monoclinous", "monoclonal", "monocot", "monocotyledon", "monocotyledonae", "monocotyledonous", "monocracy", "monoculture", "monocycle", "monocyte", "monocytes", "monocytosis", "monodic", "monodical", "monody", "monoecious", "monoestrous", "monogamist", "monogamous", "monogamousness", "monogamy", "monogenesis", "monogenic", "monogram", "monograph", "monogynic", "monogynist", "monogynous", "monogyny", "monohybrid", "monohydrate", "monoicous", "monolatry", "monolingual", "monolingually", "monolith", "monolithic", "monolog", "monologist", "monologs", "monologue", "monologues", "monologuise", "monologuises", "monologuize", "monologuizes", "monomania", "monomaniac", "monomaniacal", "monomer", "monometallic", "monomorphemic", "mononeuropathy", "mononuclear", "mononucleate", "mononucleosis", "monophonic", "monophony", "monophthalmos", "monophysite", "monophysitic", "monoplane", "monoplegia", "monoploid", "monopodia", "monopodium", "monopolies", "monopolisation", "monopolise", "monopolised", "monopoliser", "monopolises", "monopolising", "monopolist", "monopolistic", "monopolization", "monopolize", "monopolized", "monopolizer", "monopolizes", "monopolizing", "monopoly", "monopsony", "monoptera", "monopteral", "monopteroi", "monopteron", "monopteros", "monorail", "monorchidism", "monorchism", "monosaccharide", "monosaccharose", "monosemous", "monosemy", "monosomy", "monosyllabic", "monosyllabically", "monosyllable", "monotheism", "monotheist", "monotheistic", "monotone", "monotonic", "monotonous", "monotonously", "monotony", "monotreme", "monotype", "monotypic", "monounsaturated", "monovalent", "monovular", "monoxide", "monozygotic", "monseigneur", "monsieur", "monsignor", "monsignori", "monsoon", "monster", "monstera", "monsters", "monstrance", "monstrosity", "monstrous", "monstrously", "MONT.", "Mont.", "mont.", "montage", "montana", "montane", "monte", "Montenegro", "montenegro", "month", "monthlong", "monthly", "months", "montserratian", "monument", "monumental", "monumentalise", "monumentalize", "monuments", "moo", "mooch", "moocher", "mood", "moodier", "moodiest", "moodily", "moodiness", "moods", "moody", "mooing", "moolah", "moon", "moonbeam", "mooncalf", "mooncalves", "mooneye", "moonfish", "moonfishes", "moonflower", "moong", "moonier", "mooniest", "moonily", "mooning", "moonless", "moonlight", "moonlighter", "moonlighting", "moonlights", "moonlike", "moonlit", "moonseed", "moonshell", "moonshine", "moonshiner", "moonstone", "moonstruck", "moonwalk", "moonwort", "moony", "moor", "moorage", "moorbird", "moorcock", "moorfowl", "moorgame", "moorhen", "mooring", "moorish", "moorland", "moors", "moorwort", "moose", "moosewood", "moot", "mooting", "moots", "mop", "mopboard", "mope", "moped", "moping", "mopped", "mopper", "moppet", "mopping", "mops", "moquette", "mora", "moraceous", "morae", "moraine", "moral", "morale", "moralisation", "moralise", "moralised", "moralises", "moralising", "moralism", "moralist", "moralistic", "morality", "moralization", "moralize", "moralized", "moralizes", "moralizing", "morally", "morals", "morass", "moratoria", "moratorium", "moravian", "moray", "morbid", "morbidity", "morbidly", "morbidness", "morbific", "morbilli", "morbilliform", "morceau", "morceaux", "mordacious", "mordaciously", "mordacity", "mordant", "mordvin", "mordvinian", "More", "more", "moreen", "morel", "morello", "Moreover", "moreover", "moresco", "morescoes", "moresque", "morganatic", "morganite", "morgen", "morgue", "moribund", "morion", "morisco", "moriscoes", "mormon", "morn", "morning", "mornings", "moroccan", "Morocco", "morocco", "moron", "moronic", "moronity", "morons", "morose", "morosely", "moroseness", "morosoph", "morph", "morphallaxes", "morphallaxis", "morphea", "morpheme", "morphemic", "morphia", "morphine", "morphing", "morphogenesis", "morphologic", "morphological", "morphologically", "morphology", "morphophoneme", "morphophonemic", "morphophonemics", "morphophysiology", "morphoses", "morphosis", "morphs", "morrigu", "morrow", "morse", "morsel", "morses", "mortal", "mortality", "mortally", "mortals", "mortar", "mortarboard", "mortaring", "mortgage", "mortgaged", "mortgagee", "mortgager", "mortgages", "mortgaging", "mortgagor", "mortice", "mortician", "mortification", "mortified", "mortifies", "mortify", "mortifying", "mortise", "mortmain", "mortuary", "morula", "morulae", "mosaic", "mosaicism", "mosaics", "mosasauri", "mosasaurus", "mosey", "mosh", "moshav", "moshavim", "moshing", "moslem", "moslim", "moslims", "mosque", "mosques", "mosquito", "mosquitoes", "mosquitofish", "moss", "mossback", "mosstone", "mossy", "Most", "most", "mostaccioli", "mostly", "mot", "mote", "motel", "motet", "moth", "mothball", "mother", "motherese", "motherfucker", "motherfucking", "motherhood", "mothering", "motherland", "motherless", "motherlike", "motherliness", "motherly", "mothers", "motherwort", "mothier", "mothiest", "mothproof", "mothy", "motif", "motifs", "motile", "motilin", "motility", "motion", "motional", "motioning", "motionless", "motionlessly", "motionlessness", "motions", "motivate", "motivated", "motivates", "motivating", "motivation", "motivational", "motivations", "motivative", "motivator", "motive", "motiveless", "motives", "motivity", "motley", "motmot", "motoneuron", "motor", "motorbike", "motorboat", "motorbus", "motorcade", "motorcar", "motorcoach", "motorcycle", "motorcycling", "motorcyclist", "motored", "motorial", "motoring", "motorisation", "motorise", "motorised", "motorist", "motorists", "motorization", "motorize", "motorized", "motorizes", "motorless", "motorman", "motormouth", "motors", "motortruck", "motorway", "motown", "motrin", "mottle", "mottled", "mottling", "motto", "mottoes", "moue", "moufflon", "mouflon", "moujik", "moukden", "mould", "mouldboard", "moulded", "moulder", "mouldered", "mouldering", "moulders", "mouldier", "mouldiest", "moulding", "mouldings", "moulds", "mouldy", "moulin", "moult", "moulted", "moulter", "moulting", "moults", "mound", "mounds", "Mount", "mount", "mountain", "mountaineer", "mountaineering", "mountaineers", "mountainous", "mountains", "mountainside", "mountebank", "mounted", "mounter", "mounting", "mounts", "mourn", "mourned", "mourner", "mourners", "mournful", "mournfully", "mournfulness", "mourning", "mourns", "mouse", "mouselike", "mousepad", "mouser", "mousetrap", "mousey", "mousier", "mousiest", "mousing", "moussaka", "mousse", "moussorgsky", "moustache", "moustached", "moustaches", "moustachio", "moustachioed", "mousy", "mouth", "mouthbreeder", "mouthed", "mouthful", "mouthier", "mouthiest", "mouthing", "mouthless", "mouthlike", "mouthpart", "mouthpiece", "mouths", "mouthwash", "mouthy", "mouton", "movability", "movable", "movableness", "move", "moveable", "moved", "movement", "movements", "mover", "movers", "moves", "movie", "moviegoer", "moviegoers", "moviemaking", "movies", "moving", "movingly", "mow", "mower", "mowing", "mown", "mows", "moxie", "mozambican", "Mozambique", "mozambique", "mozartean", "mozartian", "mozzarella", "mp", "mpeg", "mph", "MR.", "Mr.", "mr.", "mrd", "mrem", "mri", "mrna", "mrnas", "MRS.", "Mrs.", "mrs.", "mrta", "MS.", "Ms.", "ms.", "msasa", "msb", "msc", "msec", "msg", "msh", "mst", "MT.", "Mt.", "mt.", "muadhdhin", "muazzin", "much", "muchness", "muciferous", "mucilage", "mucilaginous", "mucin", "mucinoid", "mucinous", "muck", "mucked", "muckheap", "muckhill", "muckier", "muckiest", "mucking", "muckle", "muckrake", "muckraker", "muckrakes", "muckraking", "mucks", "mucky", "mucocutaneous", "mucoid", "mucoidal", "mucopolysaccharide", "mucopolysaccharidosis", "mucopurulent", "mucor", "mucosa", "mucosae", "mucosal", "mucose", "mucous", "mucoviscidosis", "mucro", "mucrones", "mucuna", "mucus", "mud", "mudcat", "mudded", "mudder", "muddied", "muddier", "muddies", "muddiest", "muddiness", "mudding", "muddle", "muddled", "muddleheaded", "muddles", "muddling", "muddy", "muddying", "mudejar", "mudejares", "mudfish", "mudfishes", "mudguard", "mudhif", "mudra", "mudskipper", "mudslide", "mudslinger", "mudspringer", "mudwrestle", "muenchen", "muesli", "muezzin", "muff", "muffin", "muffins", "muffle", "muffled", "muffler", "muffles", "muffling", "mufti", "mug", "mugful", "mugged", "muggee", "mugger", "muggier", "muggiest", "mugginess", "mugging", "muggins", "muggy", "mugs", "mugshot", "mugwort", "muhammad", "muhammadan", "muhammadanism", "muhammedan", "muharrum", "muishond", "mujahadeen", "mujahadein", "mujahadin", "mujahedeen", "mujahedin", "mujahid", "mujahideen", "mujahidin", "mujik", "mujtihad", "mukataa", "mukden", "mulatto", "mulattoes", "mulberry", "mulch", "mulching", "mulct", "mule", "muleteer", "muliebrity", "mulish", "mulishly", "mulishness", "mull", "mulla", "mullein", "mullet", "mulligan", "mulligatawny", "mulling", "mullion", "mullioned", "mulloway", "mulls", "multi-agency", "multi-column", "multi-crystal", "multi-family", "multi-gear", "multi-spired", "multibillion", "multicellular", "multicollinearity", "multicolor", "multicolored", "multicolour", "multicoloured", "multicultural", "multiculturalism", "multidimensional", "multiethnic", "multifaceted", "multifactorial", "multifarious", "multifariously", "multifariousness", "multiflora", "multiform", "multilane", "multilateral", "multilaterally", "multilevel", "multilingual", "multimedia", "multimillion", "multinational", "multinomial", "multinucleate", "multipara", "multiparae", "multiparous", "multipartite", "multiphase", "multiple", "multiples", "multiplex", "multiplexer", "multiplicand", "multiplication", "multiplicative", "multiplicatively", "multiplicity", "multiplied", "multiplier", "multiplies", "multiply", "multiplying", "multipotent", "multiprocessing", "multiprocessor", "multiprogramming", "multipurpose", "multiracial", "multistage", "multistorey", "multistoried", "multistory", "multitude", "multitudinous", "multitudinousness", "multivalence", "multivalency", "multivalent", "multivariate", "multiversity", "multivitamin", "mulwi", "mum", "mumble", "mumbled", "mumbler", "mumbles", "mumbling", "mummed", "mummer", "mummery", "mummichog", "mummification", "mummified", "mummifies", "mummify", "mumming", "mummy", "mumpish", "mumps", "mumpsimus", "munch", "munchausen", "munchener", "muncher", "munches", "munching", "mundane", "mundanely", "mundaneness", "mundanity", "mung", "munggo", "municipal", "municipality", "municipally", "munificence", "munificent", "munificently", "muniments", "munition", "munj", "munja", "munjeet", "munjuk", "muntjac", "muon", "mural", "muralist", "murals", "muramidase", "murder", "murdered", "murderee", "murderer", "murderers", "murderess", "murdering", "murderous", "murderously", "murderousness", "murders", "murex", "murices", "murine", "muritaniya", "murk", "murkier", "murkiest", "murkily", "murkiness", "murky", "murmur", "murmuration", "murmurer", "murmuring", "murmurous", "murmurs", "murphy", "murrain", "murre", "muscadel", "muscadelle", "muscadine", "muscatel", "musci", "muscle", "musclebuilder", "musclebuilding", "muscled", "muscleman", "muscles", "muscling", "muscovite", "muscular", "muscularity", "musculature", "musculoskeletal", "musculus", "musd", "muse", "muser", "muses", "musette", "museum", "museums", "musgoi", "mush", "musher", "mushier", "mushiest", "mushiness", "mushroom", "mushroomed", "mushrooming", "mushrooms", "mushy", "music", "musical", "musicality", "musically", "musicalness", "musicals", "musician", "musicians", "musicianship", "musicological", "musicologically", "musicologist", "musicology", "musing", "musingly", "musings", "musjid", "musk", "muskallunge", "muskat", "muskellunge", "musket", "musketeer", "musketry", "muskier", "muskiest", "muskiness", "muskmelon", "muskogean", "muskrat", "muskwood", "musky", "muslim", "muslimism", "muslin", "musnud", "musophobia", "musquash", "muss", "mussel", "mussiness", "mussitate", "mussitation", "mussy", "MUST", "Must", "must", "MUST'VE", "Must've", "must've", "mustache", "mustached", "mustaches", "mustachio", "mustachioed", "mustagh", "mustang", "mustard", "mustelid", "musteline", "muster", "mustering", "musters", "musth", "mustier", "mustiest", "mustiness", "MUSTN'T", "Mustn't", "mustn't", "MUSTN'T'VE", "Mustn't've", "mustn't've", "MUSTNT", "Mustnt", "mustnt", "MUSTN\u2019T", "Mustn\u2019t", "mustn\u2019t", "MUSTN\u2019T\u2019VE", "Mustn\u2019t\u2019ve", "mustn\u2019t\u2019ve", "MUSTVE", "Mustve", "mustve", "musty", "MUST\u2019VE", "Must\u2019ve", "must\u2019ve", "mutability", "mutable", "mutableness", "mutafacient", "mutagen", "mutagenesis", "mutagenic", "mutamycin", "mutant", "mutants", "mutate", "mutated", "mutating", "mutation", "mutational", "mutations", "mutative", "mutawa", "mutchkin", "mute", "muted", "mutely", "muteness", "mutes", "mutilate", "mutilated", "mutilates", "mutilating", "mutilation", "mutilator", "mutineer", "muting", "mutinied", "mutinous", "mutiny", "mutisia", "mutism", "muton", "mutsuhito", "mutt", "mutter", "mutterer", "muttering", "mutters", "mutton", "muttonfish", "muttonhead", "mutual", "mutualism", "mutualist", "mutuality", "mutually", "mutualness", "muumuu", "muzhik", "muzjik", "muztagh", "muzzier", "muzziest", "muzzle", "muzzler", "muzzles", "muzzy", "mv", "mvp", "My", "my", "myalgia", "myalgic", "Myanmar", "myanmar", "myasthenia", "mycelia", "mycelium", "mycenaean", "mycetoma", "mycetomata", "mycobacteria", "mycobacterium", "mycologist", "mycology", "mycomycin", "mycophage", "mycophagist", "mycophagy", "mycoplasma", "mycorrhiza", "mycorrhizae", "mycosis", "mycostatin", "mycotoxin", "mydriasis", "mydriatic", "myelatelia", "myelencephala", "myelencephalon", "myelic", "myelin", "myelinated", "myeline", "myelinic", "myelinisation", "myelinization", "myelitis", "myeloblast", "myelocyte", "myelofibrosis", "myelogram", "myelography", "myeloid", "myeloma", "myelomeningocele", "myg", "myiases", "myiasis", "mylitta", "mylodon", "mylodontid", "mym", "myna", "mynah", "myocardia", "myocardial", "myocardiopathy", "myocarditis", "myocardium", "myoclonus", "myodynia", "myofibril", "myofibrilla", "myofibrillae", "myoglobin", "myoglobinuria", "myogram", "myoid", "myology", "myoma", "myomata", "myometritis", "myometrium", "myonecrosis", "myopathic", "myopathy", "myope", "myopia", "myopic", "myosarcoma", "myoses", "myosin", "myosins", "myosis", "myositis", "myotic", "myotomy", "myotonia", "myotonic", "myrcia", "myriad", "myriagram", "myriameter", "myriametre", "myriapod", "myriapoda", "myringa", "myringectomy", "myringoplasty", "myringotomy", "myrmecophagous", "myrmecophile", "myrmecophilous", "myrmecophyte", "myrmecophytic", "myrmidon", "myrmidones", "myrobalan", "myrrh", "myrtle", "myself", "mysoandry", "mysoline", "mysophilia", "mysophobia", "mysophobic", "mysteries", "mysterious", "mysteriously", "mystery", "mystic", "mystical", "mystically", "mysticism", "mystification", "mystified", "mystifier", "mystifies", "mystify", "mystifying", "mystique", "myth", "mythic", "mythical", "mythicise", "mythicises", "mythicize", "mythicizes", "mythoi", "mythologic", "mythological", "mythologisation", "mythologise", "mythologist", "mythologization", "mythologize", "mythology", "mythos", "myths", "mytilene", "mytilid", "myxedema", "myxinoidea", "myxinoidei", "myxobacter", "myxobacterales", "myxobacteria", "myxobacteriaceae", "myxobacteriales", "myxobacterium", "myxoedema", "myxoma", "myxomata", "myxomatosis", "myxomycete", "myxosporidian", "myxovirus", "N'T", "n't", "N.C.", "n.c.", "N.DAK.", "N.Dak.", "n.dak.", "N.H.", "n.h.", "N.J.", "n.j.", "N.MEX.", "N.Mex.", "n.mex.", "N.Y.", "n.y.", "n00b", "Na", "na", "naan", "nab", "nabbed", "nabbing", "nabob", "naboom", "nabs", "nabumetone", "nac", "nacelle", "nacho", "nacre", "nacreous", "nad", "nada", "nadir", "nadolol", "nadp", "naevi", "naevus", "nafcil", "nafcillin", "nafta", "nafud", "nag", "nagami", "nagari", "nagged", "nagger", "nagging", "nagi", "nags", "nah", "naiad", "naiades", "naiant", "naif", "nail", "nailbrush", "nailed", "nailer", "nailfile", "nailhead", "nailing", "nailrod", "nails", "nainsook", "naira", "naive", "naively", "naiveness", "naivete", "naivety", "najadaceae", "najd", "naked", "nakedly", "nakedness", "nakedwood", "nalfon", "nalline", "nalorphine", "naloxone", "naltrexone", "name", "named", "namedrop", "nameing", "nameko", "nameless", "namelessness", "namely", "nameplate", "namer", "names", "namesake", "Namibia", "namibia", "namibian", "naming", "nammad", "namtaru", "nance", "nandrolone", "nandu", "nanism", "nankeen", "nanking", "nanny", "nanocephalic", "nanocephaly", "nanogram", "nanometer", "nanometre", "nanomia", "nanophthalmos", "nanosecond", "nanotechnology", "nanotube", "nanovolt", "nanus", "naoi", "naos", "nap", "napa", "napalm", "nape", "napery", "naphazoline", "naphtha", "naphthalene", "naphthol", "naphthoquinone", "napkin", "napoleonic", "napoli", "napped", "nappier", "nappiest", "napping", "nappy", "naprapath", "naprapathy", "naprosyn", "naproxen", "naps", "napu", "naqua", "nara", "naranjilla", "narc", "narcan", "narcism", "narcissi", "narcissism", "narcissist", "narcissistic", "narcissus", "narcist", "narcolepsy", "narcoleptic", "narcosis", "narcoterrorism", "narcotic", "narcotics", "narcotise", "narcotised", "narcotising", "narcotize", "narcotized", "narcotizes", "narcotizing", "narcotraffic", "nard", "nardil", "nardo", "nardoo", "nares", "narghile", "nargileh", "narial", "naris", "nark", "narrate", "narrates", "narrating", "narration", "narrative", "narratives", "narrator", "narrow", "narrowboat", "narrowed", "narrower", "narrowest", "narrowing", "narrowly", "narrowness", "narrows", "narthex", "narwal", "narwhal", "narwhale", "nary", "nasa", "nasal", "nasale", "nasalisation", "nasalise", "nasality", "nasalization", "nasalize", "nasally", "nascence", "nascency", "nascent", "NASDAQ", "nasdaq", "nasion", "nasopharyngeal", "nasopharynges", "nasopharynx", "nastier", "nastiest", "nastily", "nastiness", "nasturtium", "nasty", "natal", "natality", "natation", "natator", "natatoria", "natatorium", "nates", "nation", "national", "nationalisation", "nationalisations", "nationalise", "nationalised", "nationalises", "nationalising", "nationalism", "nationalist", "nationalistic", "nationalists", "nationalities", "nationality", "nationalization", "nationalizations", "nationalize", "nationalized", "nationalizes", "nationalizing", "nationally", "nationals", "nationhood", "nations", "nationwide", "native", "nativeness", "natives", "nativism", "nativist", "nativistic", "nativity", "nato", "natriuresis", "natriuretic", "natrolite", "natter", "nattering", "natterjack", "natters", "nattier", "nattiest", "nattily", "nattiness", "natty", "natural", "naturalisation", "naturalise", "naturalised", "naturalises", "naturalising", "naturalism", "naturalist", "naturalistic", "naturalization", "naturalize", "naturalized", "naturalizes", "naturalizing", "naturally", "naturalness", "nature", "naturism", "naturist", "naturistic", "naturopath", "naturopathy", "nauch", "naught", "naughtier", "naughtiest", "naughtily", "naughtiness", "naughty", "naumachia", "naumachiae", "naumachy", "naupathia", "nauplii", "nauplius", "Nauru", "nauru", "nauruan", "nausea", "nauseant", "nauseate", "nauseated", "nauseates", "nauseating", "nauseatingness", "nauseous", "nautch", "nautical", "nautili", "nautilus", "navaho", "navahoes", "navajo", "navajoes", "naval", "navane", "nave", "navel", "navicular", "navigability", "navigable", "navigate", "navigates", "navigating", "navigation", "navigational", "navigator", "navvy", "navy", "nawab", "nawcwpns", "nay", "naysayer", "naysaying", "nazarene", "naze", "nazi", "nazify", "naziism", "na\xEFve", "na\xEFvet\xE9", "NBA", "nba", "nbe", "nbw", "ncdc", "NCDEX", "ncdex", "nd", "NDA", "nda", "ndjamena", "ne", "neandertal", "neanderthal", "neanderthalian", "neap", "neapolitan", "Near", "near", "nearby", "neared", "nearer", "nearest", "nearing", "nearly", "nearness", "nears", "nearside", "nearsighted", "nearsightedness", "neat", "neaten", "neatly", "neatness", "neb", "NEB.", "Neb.", "neb.", "nebbech", "nebbish", "nebcin", "nebe", "nebiim", "nebn", "nebo", "NEBR.", "Nebr.", "nebr.", "nebraska", "nebuchadrezzar", "nebula", "nebulae", "nebular", "nebule", "nebuliser", "nebulizer", "nebulose", "nebulous", "nebulously", "nec", "necessarily", "necessary", "necessitarian", "necessitate", "necessitated", "necessitates", "necessitating", "necessities", "necessitous", "necessity", "neck", "neckband", "neckcloth", "necked", "necker", "neckerchief", "necking", "necklace", "neckless", "necklet", "necklike", "neckline", "neckpiece", "necks", "necktie", "neckwear", "necrobiosis", "necrology", "necrolysis", "necromancer", "necromancy", "necromania", "necromantic", "necromantical", "necrophagia", "necrophagy", "necrophilia", "necrophilism", "necropoleis", "necropolis", "necropsy", "necrose", "necrosis", "necrotic", "nectar", "nectariferous", "nectarine", "nectarous", "nectary", "nederland", "nee", "NEED", "Need", "need", "needed", "needer", "needful", "needfully", "needier", "neediest", "neediness", "needing", "needle", "needlebush", "needlecraft", "needled", "needlefish", "needlefishes", "needlelike", "needlepoint", "needles", "needless", "needlessly", "needlewoman", "needlewood", "needlework", "needleworker", "needling", "NEEDN'T", "Needn't", "needn't", "NEEDN\u2019T", "Needn\u2019t", "needn\u2019t", "needs", "needy", "neem", "neencephalon", "nefarious", "nefariously", "nefariousness", "nefazodone", "negate", "negated", "negates", "negating", "negation", "negative", "negatively", "negativeness", "negatives", "negativism", "negativist", "negativity", "negatron", "neggram", "neglect", "neglected", "neglecter", "neglectful", "neglectfully", "neglectfulness", "neglecting", "neglects", "neglige", "negligee", "negligence", "negligent", "negligently", "negligible", "negociate", "negotiable", "negotiant", "negotiate", "negotiated", "negotiates", "negotiating", "negotiation", "negotiations", "negotiator", "negotiators", "negotiatress", "negotiatrix", "negrillo", "negrilloes", "negrito", "negritoes", "negro", "negroes", "negroid", "negus", "neigh", "neighbor", "neighborhood", "neighborhoods", "neighboring", "neighborliness", "neighborly", "neighbors", "neighbour", "neighbourhood", "neighbourhoods", "neighbouring", "neighbourliness", "neighbourly", "neighbours", "Neither", "neither", "nekton", "nelfinavir", "nematode", "nematodes", "nembutal", "nemertean", "nemertina", "nemertine", "nemeses", "nemesis", "nemophila", "nentsi", "nentsy", "neo", "neobiotic", "neoclassic", "neoclassical", "neoclassicism", "neoclassicist", "neoclassicistic", "neocolonialism", "neocon", "neoconservatism", "neoconservative", "neocortex", "neocortical", "neodymium", "neoencephalon", "neoexpressionism", "neoliberal", "neoliberalism", "neolith", "neolithic", "neologism", "neologist", "neology", "neomycin", "neon", "neonatal", "neonate", "neonatology", "neopallium", "neophobia", "neophyte", "neoplasia", "neoplasm", "neoplastic", "neoprene", "neoromanticism", "neostigmine", "neotenic", "neotenous", "neoteny", "neotony", "Nepal", "nepal", "nepalese", "nepali", "nepheline", "nephelinite", "nephelite", "nephew", "nephews", "nephology", "nephoscope", "nephralgia", "nephrectomy", "nephridia", "nephridium", "nephrite", "nephritic", "nephritis", "nephroangiosclerosis", "nephroblastoma", "nephrocalcinosis", "nephrolith", "nephrolithiasis", "nephrology", "nephron", "nephropathy", "nephroptosia", "nephroptosis", "nephrosclerosis", "nephrosis", "nephrotomy", "nephrotoxic", "nephrotoxin", "nephthytis", "nepotism", "nepotist", "neptunium", "nerd", "nerds", "nereid", "nereides", "nerita", "neritic", "neritid", "neritina", "nerve", "nerveless", "nervelessly", "nervelessness", "nerveroot", "nerves", "nervier", "nerviest", "nervily", "nervous", "nervously", "nervousness", "nervure", "nervus", "nervy", "nescience", "nescient", "ness", "nessie", "nest", "nester", "nestle", "nestled", "nestles", "nestling", "nestorian", "nests", "net", "netball", "nether", "Netherland", "netherland", "Netherlands", "netherlands", "nethermost", "netherworld", "netkeeper", "netlike", "netmail", "netminder", "nets", "nett", "netted", "netting", "nettle", "nettled", "nettlesome", "network", "networking", "networklike", "networks", "neumann", "neural", "neuralgia", "neuralgic", "neuralgy", "neurasthenia", "neurasthenic", "neurectomy", "neurilemma", "neurilemoma", "neurinoma", "neuritis", "neuroanatomic", "neuroanatomical", "neuroanatomy", "neurobiological", "neurobiologist", "neurobiology", "neuroblast", "neuroblastoma", "neurochemical", "neurodermatitis", "neuroendocrine", "neuroepithelioma", "neuroepithelium", "neuroethics", "neurofibroma", "neurofibromatosis", "neurogenesis", "neurogenic", "neuroglia", "neurogliacyte", "neuroglial", "neurohormone", "neurohypophyses", "neurohypophysis", "neurolemma", "neuroleptic", "neurolinguist", "neurolinguistics", "neurologic", "neurological", "neurologist", "neurology", "neurolysin", "neuroma", "neuromarketing", "neuromata", "neuromatous", "neuromotor", "neuromuscular", "neuron", "neuronal", "neurone", "neuronic", "neurons", "neurontin", "neuropathy", "neurophysiological", "neurophysiology", "neuropil", "neuropile", "neuroplasty", "neuropsychiatric", "neuropsychiatry", "neuropsychological", "neuropsychology", "neuroptera", "neuropteran", "neuropteron", "neurosarcoma", "neuroscience", "neuroscientist", "neuroses", "neurosis", "neurosurgeon", "neurosurgery", "neurosyphilis", "neurotic", "neurotically", "neuroticism", "neurotoxic", "neurotoxin", "neurotransmitter", "neurotropic", "neurotropism", "neuter", "neutered", "neutering", "neutral", "neutralisation", "neutralise", "neutralised", "neutralises", "neutralising", "neutralism", "neutralist", "neutrality", "neutralization", "neutralize", "neutralized", "neutralizes", "neutralizing", "neutrino", "neutron", "neutropenia", "neutrophil", "neutrophile", "neutrophils", "NEV.", "Nev.", "nev.", "nevada", "neve", "never", "nevermore", "Nevertheless", "nevertheless", "nevi", "nevirapine", "Nevis", "nevis", "nevus", "New", "new", "newbie", "newborn", "newcomer", "newcomers", "newel", "newer", "newest", "newfangled", "newfound", "newly", "newlywed", "newmarket", "newness", "news", "newsagent", "newsboy", "newsbreak", "newscast", "newscaster", "newsdealer", "newsflash", "newsier", "newsiest", "newsless", "newsletter", "newsman", "newsmonger", "newspaper", "newspapering", "newspaperman", "newspapers", "newspaperwoman", "newspeak", "newsperson", "newsprint", "newsreader", "newsreel", "newsroom", "newssheet", "newsstand", "newsvendor", "newswoman", "newsworthiness", "newsworthy", "newswriter", "newsy", "newt", "newtonian", "Newzealand", "newzealand", "Next", "next", "nexus", "NFL", "nfl", "ng", "nga", "ngb", "ngf", "ngo", "ngu", "ngultrum", "ngwee", "NHL", "nhl", "niacin", "nib", "nibbed", "nibbing", "nibble", "nibbler", "nibbles", "nibbling", "nibelung", "nibelungen", "niblick", "nicad", "nicaean", "Nicaragua", "nicaragua", "nicaraguan", "nice", "nicely", "nicene", "niceness", "nicer", "nicety", "niche", "niches", "nick", "nicked", "nickel", "nickelled", "nickelling", "nickelodeon", "nicker", "nicking", "nicknack", "nickname", "nicknamed", "nicknames", "nicknaming", "nicks", "nicotine", "nictate", "nictation", "nictitate", "nictitation", "nicu", "nidaros", "nidation", "niddm", "nidi", "nidicolous", "nidified", "nidifies", "nidifugous", "nidify", "nidus", "niece", "nieces", "nielli", "niello", "nierembergia", "nifedipine", "niff", "niffy", "niftier", "niftiest", "nifty", "nigella", "Niger", "niger", "Nigeria", "nigeria", "nigerian", "nigerien", "nigga", "niggard", "niggardliness", "niggardly", "niggardness", "niggas", "nigger", "niggle", "niggler", "niggles", "niggling", "nigh", "nigher", "nighest", "night", "nightbird", "nightcap", "nightclothes", "nightclub", "nightclubs", "nightcrawler", "nightdress", "nighted", "nightfall", "nightgown", "nighthawk", "nightie", "nightjar", "nightlife", "nightlong", "nightly", "nightmare", "nightmares", "nightmarish", "nightrider", "nights", "nightshade", "nightshirt", "nightspot", "nightstick", "nighttime", "nightwalker", "nightwear", "nightwork", "nigrified", "nigrifies", "nigrify", "nih", "nihil", "nihilism", "nihilist", "nihilistic", "nihility", "nihon", "nij", "nil", "nilgai", "nilotic", "nilpotent", "nim", "nimbi", "nimble", "nimbleness", "nimblewill", "nimbly", "nimbostrati", "nimbostratus", "nimbus", "nimby", "nimiety", "nincompoop", "nine", "ninefold", "ninepence", "ninepenny", "ninepin", "niner", "nineteen", "nineteenth", "nineties", "ninetieth", "ninety", "ninhursag", "ninib", "ninja", "ninjitsu", "ninjutsu", "ninkharsag", "ninny", "ninon", "ninth", "nintoo", "niobite", "niobium", "nip", "nipped", "nipper", "nippier", "nippiest", "nipping", "nipple", "nipples", "nippon", "nipponese", "nippy", "nipr", "nips", "niqaabi", "niqab", "nirvana", "nisi", "nissan", "nist", "nisus", "nit", "niter", "nitid", "nitpick", "nitpicker", "nitpicking", "nitpicks", "nitramine", "nitrate", "nitrating", "nitrazepam", "nitre", "nitric", "nitride", "nitrification", "nitrified", "nitrifies", "nitrify", "nitril", "nitrile", "nitrite", "nitrobacteria", "nitrobacterium", "nitrobenzene", "nitrocalcite", "nitrocellulose", "nitrochloroform", "nitrochloromethane", "nitrocotton", "nitrofuran", "nitrofurantoin", "nitrogen", "nitrogenase", "nitrogenise", "nitrogenize", "nitrogenous", "nitroglycerin", "nitroglycerine", "nitrosobacteria", "nitrostat", "nitrous", "nittier", "nittiest", "nitty", "nitweed", "nitwit", "nitwitted", "Niue", "niue", "nix", "nixed", "nixes", "njorth", "nlp", "nlrb", "nm", "nmr", "nne", "nnrti", "nnw", "No", "no", "NO.", "No.", "no.", "noaa", "noachian", "nob", "nobble", "nobelium", "nobility", "noble", "nobleman", "nobleness", "nobles", "noblesse", "noblest", "noblewoman", "nobly", "Nobody", "nobody", "noc", "nocent", "nociceptive", "nock", "noctambulation", "noctambulism", "noctambulist", "noctiluca", "noctilucae", "noctilucent", "noctuid", "nocturia", "nocturnal", "nocturnally", "nocturne", "nod", "nodded", "nodding", "noddle", "node", "nodes", "nodi", "nods", "nodular", "nodulated", "nodule", "noduled", "nodulose", "nodus", "noel", "noemi", "noes", "noesis", "noetic", "nog", "noggin", "nogging", "nohow", "noise", "noiseless", "noiselessly", "noiselessness", "noisemaker", "noises", "noisier", "noisiest", "noisily", "noisiness", "noisome", "noisomeness", "noisy", "nol.pros.", "noma", "nomad", "nomadic", "nombril", "nomen", "nomenclature", "nomenklatura", "nomia", "nomina", "nominal", "nominalism", "nominalist", "nominalistic", "nominally", "nominate", "nominated", "nominates", "nominating", "nomination", "nominations", "nominative", "nominator", "nominee", "nominees", "nomogram", "nomograph", "nomothetic", "non", "non-accrual", "non-accruing", "non-alcoholic", "non-answer", "non-auto", "non-automotive", "non-binding", "non-building", "non-caffeine", "non-call", "non-callable", "non-cash", "non-clients", "non-communist", "non-communists", "non-competitive", "non-controlling", "non-convertible", "non-core", "non-daily", "non-dairy-creamer", "non-deductible", "non-defense", "non-dischargable", "non-drug", "non-dual", "non-duck", "non-economical", "non-encapsulating", "non-enforcement", "non-equity", "non-exclusive", "Non-executive", "non-executive", "non-farm", "non-financial", "non-firm", "non-food", "non-horticultural", "Non-interest", "non-interest", "non-interstate", "non-interventionist", "non-invasive", "non-lethal", "non-life", "non-mega", "non-member", "non-packaging", "non-patent", "non-performing", "non-pregnant", "non-prescription", "non-profit", "non-public", "non-recourse", "non-recurring", "non-regulated", "non-religious", "Non-residential", "non-residential", "non-retail", "non-sales", "Non-smoking", "non-smoking", "non-staple", "non-strategic", "non-striking", "non-subscription", "non-toxic", "non-union", "non-user", "non-violent", "non-viral", "non-virulent", "non-volatile", "non-voting", "non-warranty", "non-wealthy", "non-working", "nonabsorbency", "nonabsorbent", "nonabsorptive", "nonacceptance", "nonaccomplishment", "nonachievement", "nonachiever", "nonadaptive", "nonaddictive", "nonadhesive", "nonadjacent", "nonadsorbent", "nonadsorptive", "nonage", "nonaged", "nonagenarian", "nonaggression", "nonaggressive", "nonagon", "nonalcoholic", "nonaligned", "nonalignment", "nonalinement", "nonallele", "nonappearance", "nonappointive", "nonarbitrable", "nonarbitrary", "nonarboreal", "nonassertive", "nonassociative", "nonastringent", "nonattendance", "nonattender", "nonautonomous", "nonbearing", "nonbeing", "nonbeliever", "nonbelligerent", "noncaloric", "noncandidate", "noncarbonated", "noncausal", "noncausative", "nonce", "noncellular", "nonchalance", "nonchalant", "nonchalantly", "nonchristian", "nonchurchgoing", "noncitizen", "noncivilised", "noncivilized", "nonclassical", "noncollapsable", "noncollapsible", "noncolumned", "noncom", "noncombatant", "noncombinative", "noncombining", "noncombustible", "noncommercial", "noncommissioned", "noncommittal", "noncommunicable", "noncompetitive", "noncompetitively", "noncompliance", "noncompliant", "noncomprehensive", "noncomprehensively", "nonconcentric", "nonconducting", "nonconductive", "nonconductor", "nonconformance", "nonconforming", "nonconformism", "nonconformist", "nonconformity", "nonconscious", "noncontagious", "noncontentious", "noncontinuous", "noncontroversial", "nonconvergent", "noncritical", "noncrucial", "noncrystalline", "noncurrent", "noncyclic", "noncyclical", "nondeductible", "nondenominational", "nondescript", "nondevelopment", "nondigestible", "nondisjunction", "nondisposable", "nondrinker", "nondriver", "none", "nonechoic", "noneffervescent", "nonelected", "nonelective", "nonenterprising", "nonentity", "nonenzymatic", "nonequivalence", "nonequivalent", "nonessential", "nonesuch", "nonetheless", "nonevent", "nonexempt", "nonexistence", "nonexistent", "nonexplorative", "nonexploratory", "nonexplosive", "nonextant", "nonextensile", "nonfat", "nonfatal", "nonfeasance", "nonfiction", "nonfictional", "nonfigurative", "nonfinancial", "nonfinite", "nonfissile", "nonfissionable", "nonflammable", "nonflavored", "nonflavoured", "nonflowering", "nonfunctional", "nonglutinous", "nongranular", "nongregarious", "nonhairy", "nonharmonic", "nonhereditary", "nonheritable", "nonhierarchic", "nonhierarchical", "nonhuman", "nonimitative", "nonimmune", "nonindulgence", "nonindulgent", "nonindustrial", "noninfectious", "noninflammatory", "noninheritable", "noninstitutional", "noninstitutionalised", "noninstitutionalized", "nonintegrated", "nonintellectual", "noninterchangeable", "noninterference", "nonintersecting", "nonintervention", "noninvasive", "nonionic", "nonionised", "nonionized", "nonjudgmental", "nonkosher", "nonleaded", "nonlegal", "nonlethal", "nonlexical", "nonlexically", "nonlinear", "nonlinguistic", "nonliteral", "nonliterary", "nonliterate", "nonliving", "nonmagnetic", "nonmandatory", "nonmaterial", "nonmeaningful", "nonmechanical", "nonmechanistic", "nonmedicinal", "nonmember", "nonmetal", "nonmetallic", "nonmetamorphic", "nonmigratory", "nonmilitary", "nonmodern", "nonmonotonic", "nonmotile", "nonmoving", "nonmusical", "nonnative", "nonnatural", "nonnegative", "nonnomadic", "nonnormative", "nonobjective", "nonobligatory", "nonobservance", "nonobservant", "nonoccurrence", "nonopening", "nonoperational", "nonoscillatory", "nonparallel", "nonparametric", "nonparasitic", "nonpareil", "nonparticipant", "nonparticipation", "nonparticulate", "nonpartisan", "nonpartisanship", "nonpartizan", "nonpasserine", "nonpayment", "nonperformance", "nonperiodic", "nonperson", "nonpersonal", "nonphotosynthetic", "nonphysical", "nonplus", "nonplused", "nonplussed", "nonplussing", "nonpoisonous", "nonpolar", "nonpolitical", "nonporous", "nonpregnant", "nonprehensile", "nonprescription", "nonproductive", "nonprofessional", "nonprofit", "nonprognosticative", "nonprogressive", "nonproliferation", "nonproprietary", "nonprotractile", "nonpsychoactive", "nonpublic", "nonpurulent", "nonracial", "nonracist", "nonradioactive", "nonrandom", "nonrational", "nonreader", "nonreciprocal", "nonreciprocating", "nonrecreational", "nonreflecting", "nonreflective", "nonremittal", "nonrenewable", "nonrepetitive", "nonrepresentational", "nonrepresentative", "nonresident", "nonresidential", "nonresilient", "nonresinous", "nonresiny", "nonresistance", "nonresistant", "nonresonant", "nonrestrictive", "nonreticulate", "nonretractable", "nonretractile", "nonreturnable", "nonreversible", "nonrhythmic", "nonrigid", "nonruminant", "nonsectarian", "nonsegmental", "nonsegregated", "nonsense", "nonsensical", "nonsensicality", "nonsensitive", "nonsexual", "nonsignificant", "nonskid", "nonslip", "nonslippery", "nonsmoker", "nonsocial", "nonsovereign", "nonspatial", "nonspeaking", "nonspecific", "nonspecifically", "nonspherical", "nonstandard", "nonstarter", "nonsteroid", "nonsteroidal", "nonstick", "nonstop", "nonstructural", "nonsubjective", "nonsubmergible", "nonsubmersible", "nonsuch", "nonsuppurative", "nonsurgical", "nonsweet", "nonsyllabic", "nonsymbiotic", "nonsynchronous", "nonsynthetic", "nontaxable", "nontechnical", "nontelescopic", "nontelescoping", "nonterritorial", "nonthermal", "nontoxic", "nontraditional", "nontransferable", "nontranslational", "nontransmissible", "nontricyclic", "nonturbulent", "nonuniform", "nonuniformity", "nonunion", "nonunionised", "nonunionized", "nonuple", "nonvenomous", "nonverbal", "nonverbally", "nonviable", "nonviolence", "nonviolent", "nonviolently", "nonviscid", "nonvisual", "nonvolatile", "nonvolatilisable", "nonvolatilizable", "nonvoluntary", "nonwashable", "nonwoody", "nonworker", "noob", "noodle", "noodles", "nook", "nookie", "nooky", "noon", "noonday", "noontide", "noose", "nopal", "Nope", "nope", "nor", "noradrenaline", "nordic", "noreaster", "noreg", "norepinephrine", "norethandrolone", "norethindrone", "norethynodrel", "norflex", "norge", "norgestrel", "noria", "norlutin", "norm", "normal", "normalcy", "normalisation", "normalise", "normalised", "normaliser", "normalises", "normalising", "normality", "normalization", "normalize", "normalized", "normalizer", "normalizes", "normalizing", "normally", "norman", "normandy", "normative", "normodyne", "normotensive", "normothermia", "norms", "norse", "norseman", "North", "north", "northbound", "northeast", "northeaster", "northeasterly", "northeastern", "northeastward", "northeastwardly", "norther", "northerly", "Northern", "northern", "northerner", "northernmost", "northernness", "northland", "northman", "northmost", "northward", "northwards", "northwest", "northwester", "northwesterly", "northwestern", "northwestward", "northwestwardly", "nortriptyline", "norvasc", "norvir", "Norway", "norway", "norwegian", "NOS.", "Nos.", "nos.", "nose", "nosebag", "noseband", "nosebleed", "nosecount", "nosed", "nosedive", "nosegay", "noseless", "nosepiece", "noses", "nosewheel", "nosey", "nosh", "nosher", "noshes", "noshing", "nosier", "nosiest", "nosiness", "nosing", "nosocomial", "nosohusial", "nosology", "nostalgia", "nostalgic", "nostalgically", "nostoc", "nostril", "nostrum", "nosy", "NOT", "Not", "not", "NOT'VE", "Not've", "not've", "nota", "notability", "notable", "notably", "notarise", "notarises", "notarize", "notarizes", "notary", "notate", "notating", "notation", "notch", "notched", "notching", "note", "notebook", "notecase", "noted", "notepad", "notepaper", "notes", "noteworthy", "nothing", "nothingness", "nothosaur", "notice", "noticeability", "noticeable", "noticeableness", "noticeably", "noticed", "noticer", "notices", "noticing", "notifiable", "notification", "notified", "notifies", "notify", "notifying", "noting", "notion", "notional", "notions", "notochord", "notoriety", "notorious", "notoriously", "notornis", "notturno", "notum", "NOTVE", "Notve", "notve", "notwithstanding", "NOT\u2019VE", "Not\u2019ve", "not\u2019ve", "nougat", "nought", "noumena", "noumenon", "noun", "nouns", "nourish", "nourished", "nourishes", "nourishing", "nourishment", "nous", "nov", "NOV.", "Nov.", "nov.", "nova", "novae", "novate", "novation", "novel", "novelette", "novelisation", "novelise", "novelist", "novelists", "novelization", "novelize", "novella", "novelle", "novels", "novelty", "november", "novena", "novenae", "novice", "noviciate", "novillada", "novillero", "novitiate", "novobiocin", "novocain", "novocaine", "Now", "now", "nowadays", "nowhere", "nowise", "nowness", "nowrooz", "nowruz", "noxious", "noxiously", "noxiousness", "nozzle", "npa", "npc", "nra", "nrc", "nrem", "nrl", "nrna", "nro", "nrti", "nsa", "nsaid", "nsc", "NSE", "nse", "nsf", "nsu", "nsw", "nswc", "NT", "nt", "nth", "ntis", "nuance", "nuances", "nub", "nubbin", "nubbiness", "nubble", "nubbly", "nubby", "nubecula", "nubeculae", "nubile", "nucelli", "nucellus", "nucha", "nuchae", "nuclear", "nuclease", "nucleate", "nucleated", "nucleates", "nucleating", "nuclei", "nucleole", "nucleoli", "nucleolus", "nucleon", "nucleonics", "nucleoplasm", "nucleoprotein", "nucleoside", "nucleosynthesis", "nucleotide", "nucleotides", "nucleus", "nude", "nudeness", "nudge", "nudger", "nudges", "nudging", "nudibranch", "nudism", "nudist", "nudity", "nudnick", "nudnik", "nugatory", "nugget", "nuisance", "nuke", "nukes", "nuking", "null", "nullah", "nullification", "nullified", "nullifier", "nullifies", "nullify", "nullifying", "nullipara", "nulliparae", "nullity", "numb", "numbat", "Number", "number", "numbered", "numbering", "numberless", "numberplate", "numbers", "numbfish", "numbfishes", "numbing", "numbly", "numbness", "numdah", "numen", "numerable", "numeracy", "numeral", "numerate", "numeration", "numerator", "numeric", "numerical", "numerically", "numerological", "numerologist", "numerology", "numerosity", "numerous", "numerousness", "numidian", "numidinae", "numina", "numinous", "numismatics", "numismatist", "numismatologist", "numismatology", "nummulite", "numskull", "nun", "nuncio", "nung", "nunnery", "nuns", "nuprin", "nuptial", "nuptials", "nurnberg", "nurse", "nursed", "nurseling", "nursemaid", "nurser", "nursery", "nurseryman", "nurses", "nursing", "nursling", "nurtural", "nurturance", "nurturant", "nurture", "nurtured", "nurtures", "nurturing", "nut", "nutate", "nutation", "nutbrown", "nutcase", "nutcracker", "nutgrass", "nuthatch", "nuthouse", "nutlet", "nutlike", "nutmeg", "nutria", "nutrient", "nutrients", "nutrify", "nutriment", "nutrition", "nutritional", "nutritionally", "nutritionary", "nutritionist", "nutritious", "nutritiousness", "nutritive", "nutritiveness", "nuts", "nutsedge", "nutshell", "nutted", "nutter", "nuttier", "nuttiest", "nuttily", "nutting", "nutty", "nuwc", "nuzzle", "nuzzles", "nuzzling", "nwbn", "nwbw", "nyasaland", "nybble", "nyctalopia", "nyctophobia", "nycturia", "nydrazid", "nylghai", "nylghau", "nylon", "nymph", "nympha", "nymphae", "nymphalid", "nymphet", "nympho", "nympholepsy", "nympholept", "nymphomania", "nymphomaniac", "nymphomaniacal", "nypa", "nyse", "nystagmus", "nystan", "nystatin", "NZ", "nz", "N\u2019T", "n\u2019t", "O'CLOCK", "O'clock", "o'clock", "o.d.", "o.k.", "oaf", "oafish", "oak", "oaken", "oaks", "oakum", "oar", "oarfish", "oarfishes", "oarlock", "oarsman", "oarsmanship", "oarswoman", "oas", "oases", "oasis", "oast", "oat", "oatcake", "oaten", "oath", "oatmeal", "oats", "obbligato", "obduracy", "obdurate", "obdurately", "obeah", "obeche", "obechi", "obedience", "obedient", "obediently", "obeisance", "obeli", "obelion", "obelisk", "obelus", "obese", "obesity", "obey", "obeying", "obeys", "obfuscate", "obfuscating", "obfuscation", "obi", "obiism", "obit", "obituaries", "obituary", "object", "objected", "objectification", "objectified", "objectifies", "objectify", "objectifying", "objecting", "objection", "objectionable", "objectionableness", "objectionably", "objections", "objective", "objectively", "objectiveness", "objectives", "objectivity", "objector", "objects", "objurgate", "objurgation", "oblanceolate", "oblate", "oblateness", "obligate", "obligated", "obligates", "obligati", "obligating", "obligation", "obligational", "obligations", "obligato", "obligatorily", "obligatory", "oblige", "obliged", "obliger", "obliges", "obliging", "obligingly", "obligingness", "oblique", "obliquely", "obliqueness", "obliquity", "obliterable", "obliterate", "obliterated", "obliterates", "obliterating", "obliteration", "obliterator", "oblivion", "oblivious", "obliviousness", "oblong", "oblongness", "obloquy", "obnoxious", "obnoxiously", "obnoxiousness", "obnubilate", "oboe", "oboist", "oboli", "obolus", "obovate", "obscene", "obscenely", "obscenity", "obscurantism", "obscurantist", "obscure", "obscured", "obscurely", "obscureness", "obscures", "obscuring", "obscurity", "obsequious", "obsequiously", "obsequiousness", "obsequy", "observable", "observably", "observance", "observant", "observantly", "observation", "observational", "observations", "observatory", "observe", "observed", "observer", "observers", "observes", "observing", "observingly", "obsess", "obsessed", "obsesses", "obsessing", "obsession", "obsessional", "obsessionally", "obsessions", "obsessive", "obsessively", "obsessiveness", "obsessivity", "obsidian", "obsolesce", "obsolescence", "obsolescent", "obsolete", "obsoleteness", "obstacle", "obstacles", "obstetric", "obstetrical", "obstetrician", "obstetrics", "obstinacy", "obstinance", "obstinate", "obstinately", "obstipate", "obstipation", "obstreperous", "obstreperously", "obstreperousness", "obstruct", "obstructed", "obstructer", "obstructing", "obstruction", "obstructionism", "obstructionist", "obstructive", "obstructively", "obstructor", "obstructs", "obstruent", "obtain", "obtainable", "obtained", "obtaining", "obtainment", "obtains", "obtention", "obtrude", "obtrusive", "obtrusively", "obtrusiveness", "obtund", "obtunds", "obturate", "obturates", "obturator", "obtuse", "obtusely", "obtuseness", "obverse", "obviate", "obviates", "obviating", "obviation", "obvious", "obviously", "obviousness", "oca", "ocarina", "occasion", "occasional", "occasionally", "occasioning", "occasions", "occident", "occidental", "occidentalise", "occidentalize", "occipita", "occipital", "occiput", "occitan", "occlude", "occluded", "occludes", "occluding", "occlusion", "occlusive", "occult", "occultation", "occultism", "occultist", "occupancy", "occupant", "occupants", "occupation", "occupational", "occupations", "occupied", "occupier", "occupies", "occupy", "occupying", "occur", "occuring", "occurred", "occurrence", "occurrences", "occurrent", "occurring", "occurs", "ocean", "oceanaria", "oceanarium", "oceanaut", "oceanfront", "oceangoing", "oceanic", "oceanica", "oceanid", "oceanides", "oceanographer", "oceanography", "oceanology", "oceans", "ocellated", "ocelli", "ocellus", "ocelot", "ocher", "ochlocracy", "ochre", "ochrea", "ochreae", "ochronosis", "ockham", "OCLOCK", "Oclock", "oclock", "ocotillo", "ocreae", "oct", "OCT.", "Oct.", "oct.", "octad", "octagon", "octagonal", "octahedra", "octahedron", "octal", "octameter", "octane", "octangular", "octant", "octave", "octavian", "octavo", "octet", "octette", "octillion", "october", "octoberfest", "octogenarian", "octonary", "octopi", "octopod", "octopus", "octoroon", "octosyllabic", "octosyllable", "octroi", "octuple", "ocular", "oculi", "oculism", "oculist", "oculomotor", "oculus", "odalisque", "odd", "oddball", "oddest", "oddish", "oddity", "oddly", "oddment", "oddness", "odds", "ode", "odea", "odesa", "odeum", "odious", "odiously", "odiousness", "odist", "odium", "odo", "odometer", "odonate", "odontalgia", "odontaspididae", "odontaspis", "odontiasis", "odontoglossum", "odontology", "odor", "odoriferous", "odorize", "odorless", "odorous", "odors", "odour", "odourise", "odourless", "odours", "odovacar", "odovakar", "odynophagia", "odyssey", "oecumenic", "oecumenical", "oecumenism", "oed", "oedema", "oedemata", "oengus", "oenologist", "oenology", "oenomel", "oenophile", "oesophagi", "oesophagitis", "oesophagoscope", "oesophagus", "oesophaguses", "oesterreich", "oestradiol", "oestriol", "oestrogen", "oestrone", "oeuvre", "Of", "of", "off", "offal", "offbeat", "offence", "offenceless", "offences", "offend", "offended", "offender", "offenders", "offending", "offends", "offense", "offenseless", "offenses", "offensive", "offensively", "offensiveness", "offer", "offered", "offerer", "offering", "offerings", "offeror", "offers", "offhand", "offhanded", "offhandedly", "office", "officeholder", "officer", "officers", "offices", "official", "officialdom", "officialese", "officialise", "officialize", "officially", "officials", "officiant", "officiate", "officiates", "officiating", "officiation", "officious", "officiously", "officiousness", "offing", "offish", "offline", "offload", "offloading", "offloads", "offprint", "offsaddle", "offset", "offsets", "offsetting", "offshoot", "offshore", "offside", "offsides", "offspring", "offstage", "oft", "often", "oftener", "oftenness", "oftentimes", "ofttimes", "ogalala", "ogdoad", "ogee", "ogive", "ogle", "ogler", "ogles", "ogling", "ogre", "ogress", "Oh", "oh", "ohmage", "ohmic", "ohmmeter", "oig", "oil", "oilbird", "oilcan", "oilcloth", "oiled", "oiler", "oilfield", "oilfish", "oilier", "oiliest", "oiliness", "oiling", "oilman", "oilpaper", "oilrig", "oils", "oilseed", "oilskin", "oilstone", "oilstove", "oily", "oink", "ointment", "ois", "ojibway", "ok", "oka", "okapi", "okay", "okaying", "okays", "okeh", "okenfuss", "okey", "oki", "OKLA.", "Okla.", "okla.", "oklahoma", "okra", "oks", "ola", "old", "olden", "older", "oldest", "oldie", "oldies", "oldish", "oldline", "oldness", "olds", "oldster", "oldtimer", "oldwench", "oldwife", "oldwives", "olea", "oleaceous", "oleaginous", "oleaginousness", "oleander", "oleaster", "olecranon", "oled", "olefin", "olefine", "olein", "oleo", "oleomargarine", "oleophilic", "oleophobic", "oleoresin", "oleum", "olfaction", "olfactive", "olfactory", "olibanum", "oligarch", "oligarchic", "oligarchical", "oligarchy", "oligo", "oligochaete", "oligoclase", "oligodactyly", "oligodendria", "oligodendrocyte", "oligodendroglia", "oligodontia", "oligomenorrhea", "oligonucleotide", "oligonucleotides", "oligopoly", "oligos", "oligosaccharide", "oligospermia", "oliguria", "olimbos", "olive", "olivelike", "olivenite", "olives", "olivine", "olla", "olm", "ology", "olympian", "olympic", "olympics", "Oman", "oman", "omani", "omasa", "omasum", "omayyad", "omayyades", "omb", "ombu", "ombudsman", "omega", "omelet", "omelets", "omelette", "omelettes", "omen", "omenta", "omentum", "omeprazole", "omerta", "omicron", "ominous", "ominously", "omissible", "omission", "omissions", "omissive", "omit", "omits", "omitted", "omitting", "ommastrephes", "ommatidia", "ommatidium", "ommiad", "ommiades", "omnibus", "omnidirectional", "omnifarious", "omnipotence", "omnipotent", "omnipresence", "omnipresent", "omnirange", "omniscience", "omniscient", "omnivore", "omnivorous", "omophagia", "omphalocele", "omphalos", "omphaloskepsis", "omphalus", "On", "on", "onager", "onagri", "onanism", "onanist", "Once", "once", "onchocerciasis", "oncidium", "oncogene", "oncogenes", "oncologic", "oncological", "oncologist", "oncology", "oncoming", "oncovin", "One", "one", "onega", "oneiric", "oneirism", "oneiromancer", "oneiromancy", "oneness", "onerous", "onerously", "onerousness", "ones", "oneself", "onetime", "ongoing", "oni", "onion", "onions", "onionskin", "online", "onlooker", "onlookers", "Only", "only", "onomancer", "onomancy", "onomastic", "onomasticon", "onomastics", "onomatomania", "onomatopoeia", "onomatopoeic", "onomatopoeical", "onomatopoetic", "onopordon", "onrush", "onset", "onshore", "onside", "onslaught", "onstage", "onto", "ontogenesis", "ontogenetic", "ontogeny", "ontological", "ontology", "onus", "onward", "onwards", "onycholysis", "onychophoran", "onychosis", "onymous", "onyx", "onyxis", "oocyte", "oocytes", "oodles", "oogenesis", "oogonia", "oogonium", "ooh", "oohing", "oology", "oolong", "oomph", "oophorectomy", "oophoritis", "oophorosalpingectomy", "oops", "oosphere", "oospore", "ootheca", "oothecae", "ootid", "ooze", "oozes", "oozier", "ooziest", "oozing", "oozy", "opacification", "opacifies", "opacify", "opacity", "opah", "opal", "opalesce", "opalescence", "opalescent", "opaline", "opalise", "opalize", "opaque", "opaquely", "opaqueness", "opcw", "opec", "open", "openbill", "opencast", "opencut", "opened", "opener", "openhanded", "openhandedness", "openhearted", "opening", "openings", "openly", "openmouthed", "openness", "opens", "openwork", "opepe", "opera", "operable", "operagoer", "operand", "operant", "operas", "operate", "operated", "operates", "operatic", "operating", "operation", "operational", "operationalism", "operationalist", "operationally", "operations", "operative", "operatively", "operatives", "operator", "operators", "opercula", "operculate", "operculated", "operculum", "operetta", "operon", "operons", "operose", "operoseness", "ophidia", "ophidian", "ophidism", "ophiolatry", "ophryon", "ophthalmectomy", "ophthalmia", "ophthalmic", "ophthalmitis", "ophthalmologist", "ophthalmology", "ophthalmoplegia", "ophthalmoscope", "ophthalmoscopy", "opiate", "opiliones", "opine", "opines", "opining", "opinion", "opinionated", "opinionative", "opinions", "opisthognathous", "opisthorchiasis", "opisthotonos", "opium", "opopanax", "oporto", "opossum", "opponent", "opponents", "opportune", "opportunely", "opportuneness", "opportunism", "opportunist", "opportunistic", "opportunities", "opportunity", "opposable", "oppose", "opposed", "opposer", "opposes", "opposing", "opposite", "oppositely", "oppositeness", "opposites", "opposition", "oppositive", "oppress", "oppressed", "oppresses", "oppressing", "oppression", "oppressions", "oppressive", "oppressively", "oppressiveness", "oppressor", "opprobrious", "opprobrium", "oppugn", "opsin", "opsonin", "opsonisation", "opsonization", "opsonize", "opsonizing", "opt", "optative", "opted", "optic", "optical", "optically", "optician", "optics", "optima", "optimal", "optimally", "optimisation", "optimise", "optimised", "optimises", "optimising", "optimism", "optimist", "optimistic", "optimistically", "optimization", "optimize", "optimized", "optimizes", "optimizing", "optimum", "opting", "option", "optional", "optionally", "optionless", "options", "optometrist", "optometry", "opts", "opulence", "opulent", "opulently", "opus", "opv", "Or", "or", "ora", "orach", "orache", "oracle", "oracular", "orad", "oradexon", "oral", "orally", "orang", "orange", "orangeade", "orangeness", "orangery", "oranges", "orangewood", "orangish", "orangutan", "orangutang", "orasone", "orate", "orates", "orating", "oration", "orator", "oratorical", "oratorio", "oratory", "orb", "orbicular", "orbiculate", "orbit", "orbital", "orbitale", "orbiter", "orbiting", "orbits", "orbitual", "orca", "orchard", "orchards", "orchestra", "orchestral", "orchestrate", "orchestrated", "orchestrates", "orchestrating", "orchestration", "orchestrator", "orchid", "orchidalgia", "orchidectomy", "orchiectomy", "orchil", "orchiopexy", "orchis", "orchitis", "orchotomy", "orcus", "ordain", "ordained", "ordainer", "ordaining", "ordains", "ordeal", "order", "ordered", "orderer", "ordering", "orderliness", "orderly", "orders", "ordinal", "ordinance", "ordinand", "ordinarily", "ordinariness", "ordinary", "ordinate", "ordination", "ordnance", "ordure", "ore", "ORE.", "Ore.", "ore.", "oregano", "oregon", "oreide", "oreo", "organ", "organa", "organdie", "organdy", "organelle", "organelles", "organic", "organically", "organicism", "organicistic", "organification", "organisation", "organisational", "organisations", "organise", "organised", "organiser", "organisers", "organises", "organising", "organism", "organismal", "organismic", "organisms", "organist", "organization", "organizational", "organizationally", "organizations", "organize", "organized", "organizer", "organizers", "organizes", "organizing", "organon", "organophosphate", "organs", "organza", "orgasm", "orgiastic", "orgy", "oriel", "orient", "oriental", "orientalise", "orientalist", "orientalize", "orientalizing", "orientate", "orientated", "orientates", "orientating", "orientation", "orientations", "oriented", "orienting", "orients", "orifice", "oriflamme", "origami", "origanum", "origin", "original", "originalism", "originality", "originally", "originals", "originate", "originated", "originates", "originating", "origination", "originative", "originator", "origins", "orinasal", "orinase", "oriole", "orison", "orlop", "ormer", "ormolu", "ormuzd", "ornament", "ornamental", "ornamentalism", "ornamentalist", "ornamentally", "ornamentation", "ornamenting", "ornaments", "ornate", "ornately", "ornateness", "orneriness", "ornery", "ornithine", "ornithischian", "ornithological", "ornithologist", "ornithology", "ornithomimid", "ornithopod", "ornithopoda", "ornithopter", "ornithosis", "orogeny", "orography", "oroide", "orology", "oropharyngeal", "oropharynx", "orotund", "orphan", "orphanage", "orphaned", "orphanhood", "orphenadrine", "orphic", "orphrey", "orpiment", "orpin", "orpine", "orrery", "orris", "orrisroot", "orthicon", "orthochorea", "orthoclase", "orthodontia", "orthodontic", "orthodontics", "orthodontist", "orthodonture", "orthodox", "orthodoxy", "orthoepist", "orthoepy", "orthogonal", "orthogonality", "orthographic", "orthography", "orthomolecular", "orthomyxovirus", "orthopaedic", "orthopaedics", "orthopaedist", "orthopedic", "orthopedical", "orthopedics", "orthopedist", "orthophosphate", "orthopnea", "orthopter", "orthoptera", "orthopteran", "orthopteron", "orthoptic", "orthoptics", "orthoptist", "orthoscope", "orthostatic", "orthotropous", "ortolan", "ortygan", "orudis", "orumiyeh", "oruvail", "orwellian", "oryx", "orzo", "os", "osar", "oscar", "oscheocele", "oscheocoele", "oscillate", "oscillates", "oscillating", "oscillation", "oscillations", "oscillator", "oscillatory", "oscillogram", "oscillograph", "oscilloscope", "oscine", "oscitance", "oscitancy", "oscitant", "oscula", "osculate", "osculates", "osculation", "osculator", "osculum", "OSHA", "osha", "osier", "osmanli", "osmiridium", "osmitrol", "osmium", "osmoreceptor", "osmosis", "osmotic", "osmotically", "osmund", "osprey", "osseous", "ossicle", "ossicular", "ossiculate", "ossiculum", "ossiferous", "ossification", "ossified", "ossifies", "ossify", "ossuary", "osteal", "osteitis", "ostensible", "ostensibly", "ostensive", "ostensorium", "ostentate", "ostentates", "ostentation", "ostentatious", "ostentatiously", "ostentatiousness", "osteoarthritis", "osteoblast", "osteoblastoma", "osteoblasts", "osteochondroma", "osteoclasis", "osteoclast", "osteoclasts", "osteocyte", "osteodystrophy", "osteologer", "osteologist", "osteology", "osteolysis", "osteoma", "osteomalacia", "osteomata", "osteomyelitis", "osteopath", "osteopathist", "osteopathy", "osteopetrosis", "osteophyte", "osteoporosis", "osteosarcoma", "osteosclerosis", "osteostracan", "osteotomy", "ostia", "ostiarius", "ostiary", "ostinato", "ostiole", "ostium", "ostler", "ostomy", "ostracise", "ostracised", "ostracises", "ostracising", "ostracism", "ostracize", "ostracized", "ostracizes", "ostracizing", "ostracod", "ostracoderm", "ostrich", "otalgia", "otc", "Other", "other", "otherness", "otherwise", "otherworld", "otherworldliness", "otherworldly", "othman", "otho", "othonna", "otic", "otiose", "otitis", "otoe", "otoganglion", "otolaryngologist", "otolaryngology", "otologist", "otology", "otoplasty", "otorhinolaryngologist", "otorhinolaryngology", "otorrhea", "otosclerosis", "otoscope", "ototoxic", "ottar", "otter", "otterhound", "ottoman", "ottomans", "oubliette", "ouch", "OUGHT", "Ought", "ought", "OUGHTN'T", "Oughtn't", "oughtn't", "OUGHTNT", "Oughtnt", "oughtnt", "OUGHTN\u2019T", "Oughtn\u2019t", "oughtn\u2019t", "ouguiya", "ounce", "ounces", "Our", "our", "ours", "ourself", "ourselves", "ousel", "oust", "ousted", "ouster", "ousting", "ousts", "out", "outage", "outages", "outback", "outbalance", "outbalances", "outbid", "outbidding", "outbids", "outboard", "outbound", "outbrave", "outbraves", "outbreak", "outbreaks", "outbred", "outbreed", "outbreeds", "outbuilding", "outburst", "outcall", "outcalls", "outcast", "outcaste", "outclass", "outclassed", "outclasses", "outcome", "outcomes", "outcried", "outcries", "outcrop", "outcropped", "outcropping", "outcrops", "outcry", "outdated", "outdid", "outdistance", "outdistanced", "outdistances", "outdistancing", "outdo", "outdoes", "outdone", "outdoor", "outdoors", "outdoorsman", "outdoorswoman", "outdoorsy", "outdraw", "outdraws", "outer", "outercourse", "outermost", "outerwear", "outface", "outfaces", "outfall", "outfield", "outfielder", "outfight", "outfit", "outfits", "outfitted", "outfitter", "outfitting", "outflank", "outflanking", "outflanks", "outflow", "outflowing", "outfox", "outfoxes", "outgas", "outgases", "outgassed", "outgassing", "outgeneral", "outgeneralled", "outgeneralling", "outgo", "outgoer", "outgoing", "outgrew", "outgrow", "outgrowing", "outgrown", "outgrows", "outgrowth", "outguess", "outguesses", "outhouse", "outing", "outings", "outlander", "outlandish", "outlandishly", "outlandishness", "outlast", "outlasted", "outlasting", "outlasts", "outlaw", "outlawed", "outlawing", "outlawry", "outlaws", "outlay", "outlays", "outlet", "outlets", "outlier", "outliers", "outline", "outlined", "outlines", "outlining", "outlive", "outlives", "outliving", "outlook", "outlying", "outman", "outmaneuver", "outmaneuvere", "outmaneuvered", "outmaneuvering", "outmaneuvers", "outmanned", "outmanning", "outmanoeuvre", "outmanoeuvred", "outmanoeuvres", "outmanoeuvring", "outmans", "outmarch", "outmarches", "outmatch", "outmatches", "outmode", "outmoded", "outmodes", "outmost", "outnumber", "outnumbered", "outnumbering", "outnumbers", "outpace", "outpaced", "outpaces", "outpacing", "outpatient", "outperform", "outperformed", "outperforming", "outperforms", "outplay", "outplaying", "outplays", "outpoint", "outport", "outpost", "outpouring", "output", "outputing", "outputs", "outputted", "outputting", "outrage", "outraged", "outrageous", "outrageously", "outrageousness", "outrages", "outrange", "outranges", "outrank", "outranking", "outranks", "outre", "outreach", "outride", "outrider", "outrides", "outrigged", "outrigger", "outright", "outrival", "outroar", "outroars", "outrun", "outrunning", "outruns", "outs", "outsail", "outsails", "outscore", "outscores", "outscoring", "outsell", "outselling", "outsells", "outset", "outshine", "outshines", "outshout", "Outside", "outside", "outsider", "outsiders", "outsize", "outsized", "outskirt", "outskirts", "outsmart", "outsmarting", "outsmarts", "outsold", "outsole", "outsource", "outsources", "outsourcing", "outspan", "outspanned", "outspanning", "outspans", "outspoken", "outspokenly", "outspokenness", "outspread", "outstanding", "outstandingly", "outstare", "outstares", "outstation", "outstay", "outstays", "outstretched", "outstrip", "outstripped", "outstripping", "outstrips", "outstroke", "outtake", "outtakes", "outthrust", "outturn", "outvie", "outvote", "outvotes", "outward", "outwardly", "outwardness", "outwards", "outwear", "outwears", "outweigh", "outweighed", "outweighing", "outweighs", "outwit", "outwits", "outwitted", "outwitting", "outwork", "ouzel", "ouzo", "ova", "oval", "ovalbumin", "ovarian", "ovariectomy", "ovaries", "ovaritis", "ovary", "ovate", "ovation", "oven", "ovenbake", "ovenbird", "ovenware", "Over", "over", "over-allotment", "over-allotments", "over-magazined", "over-optimistic", "over-the-counter", "overabundance", "overabundant", "overachieve", "overachievement", "overachiever", "overachieves", "overachieving", "overact", "overacting", "overactive", "overactivity", "overacts", "overage", "overaged", "Overall", "overall", "overambitious", "overanxiety", "overanxious", "overappraisal", "overarch", "overarches", "overarching", "overarm", "overawe", "overawed", "overawing", "overbalance", "overbalances", "overbalancing", "overbear", "overbearing", "overbearingly", "overbearingness", "overbears", "overbid", "overbidding", "overbids", "overbite", "overblown", "overboard", "overboil", "overboils", "overbold", "overburden", "overburdened", "overburdening", "overburdens", "overbusy", "overcall", "overcame", "overcapitalisation", "overcapitalise", "overcapitalises", "overcapitalization", "overcapitalize", "overcapitalizes", "overcareful", "overcast", "overcasting", "overcasts", "overcautious", "overcharge", "overcharges", "overcharging", "overclothe", "overclothes", "overcloud", "overcoat", "overcoating", "overcome", "overcomer", "overcomes", "overcoming", "overcompensate", "overcompensates", "overcompensating", "overcompensation", "overconfidence", "overconfident", "overcook", "overcooks", "overcredulity", "overcredulous", "overcritical", "overcrop", "overcropped", "overcropping", "overcrops", "overcrossing", "overcrowd", "overcrowds", "overcultivate", "overcurious", "overdelicate", "overdo", "overdoes", "overdoing", "overdone", "overdose", "overdosed", "overdoses", "overdosing", "overdraft", "overdramatise", "overdramatises", "overdramatize", "overdramatizes", "overdraw", "overdrawing", "overdraws", "overdress", "overdressed", "overdresses", "overdrive", "overdrives", "overdue", "overeager", "overeat", "overeating", "overeats", "overemotional", "overemphasis", "overemphasise", "overemphasised", "overemphasises", "overemphasising", "overemphasize", "overemphasized", "overemphasizes", "overemphasizing", "overenthusiastic", "overestimate", "overestimates", "overestimating", "overestimation", "overexcited", "overexert", "overexertion", "overexerts", "overexploit", "overexploitation", "overexploits", "overexpose", "overexposes", "overexposure", "overextend", "overextends", "overfamiliar", "overfatigue", "overfed", "overfeed", "overfeeding", "overfeeds", "overfill", "overfills", "overflies", "overflight", "overflow", "overflowing", "overflows", "overfly", "overflying", "overfond", "overfull", "overgarment", "overgeneralise", "overgeneralize", "overgeneralizing", "overgenerous", "overgorge", "overgreedy", "overgrow", "overgrown", "overgrows", "overgrowth", "overhand", "overhanded", "overhang", "overhanging", "overhasty", "overhaul", "overhauled", "overhauling", "overhauls", "overhead", "overhear", "overhearing", "overhears", "overheat", "overheated", "overheating", "overheats", "overindulge", "overindulgence", "overindulgent", "overindulges", "overindulging", "overjealous", "overjoy", "overjoyed", "overkill", "overladen", "overlaid", "overland", "overlap", "overlapped", "overlapping", "overlaps", "overlarge", "overlay", "overlayer", "overlaying", "overlays", "overleaf", "overleap", "overlie", "overlies", "overlip", "overload", "overloaded", "overloading", "overloads", "overlook", "overlooked", "overlooking", "overlooks", "overlord", "overlordship", "overly", "overlying", "overman", "overmanned", "overmanning", "overmans", "overmantel", "overmaster", "overmasters", "overmodest", "overmuch", "overmuchness", "overnice", "overnight", "overnighter", "overpaid", "overpass", "overpay", "overpaying", "overpayment", "overpays", "overplay", "overplaying", "overplays", "overplus", "overpopulate", "overpopulates", "overpopulation", "overpower", "overpowering", "overpoweringly", "overpowers", "overpraise", "overpraises", "overpressure", "overprice", "overpriced", "overprices", "overprint", "overproduce", "overproduction", "overprotect", "overprotecting", "overprotection", "overprotective", "overprotects", "overproud", "overran", "overrate", "overrates", "overrating", "overreach", "overreaches", "overreaching", "overreact", "overreacted", "overreacting", "overreaction", "overreacts", "overreckoning", "overrefine", "overrefined", "overrefinement", "overrefines", "override", "overrides", "overriding", "overripe", "overrode", "overrule", "overruled", "overrules", "overruling", "overrun", "overrunning", "overruns", "oversaw", "oversea", "overseas", "oversee", "overseeing", "overseen", "overseer", "oversees", "oversell", "overselling", "oversells", "oversensitive", "oversensitiveness", "overserious", "overset", "oversetting", "oversew", "oversewn", "oversexed", "overshadow", "overshadowed", "overshadowing", "overshadows", "overshielding", "overshoe", "overshoot", "overshooting", "overshoots", "overshot", "overside", "oversight", "oversimplification", "oversimplified", "oversimplifies", "oversimplify", "oversimplifying", "oversize", "oversized", "overskirt", "oversleep", "oversleeping", "oversleeps", "oversold", "oversolicitous", "overspecialise", "overspecialize", "overspend", "overspending", "overspends", "overspill", "overspread", "overspreads", "overstate", "overstated", "overstatement", "overstatements", "overstates", "overstating", "overstay", "overstaying", "overstays", "overstep", "overstepped", "overstepping", "oversteps", "overstock", "overstocking", "overstrain", "overstrains", "overstress", "overstresses", "overstretch", "overstretches", "overstretching", "overstrung", "overstuff", "overstuffed", "overstuffs", "oversubscribed", "oversupplies", "oversupply", "oversuspicious", "overt", "overtake", "overtaken", "overtakes", "overtaking", "overtax", "overtaxed", "overtaxes", "overtaxing", "overthrow", "overthrowing", "overthrown", "overthrows", "overtime", "overtire", "overtly", "overtolerance", "overtone", "overtones", "overtop", "overtopped", "overtopping", "overtrump", "overture", "overturn", "overturned", "overturning", "overturns", "overuse", "overused", "overuses", "overusing", "overutilisation", "overutilization", "overvaliant", "overvaluation", "overvalue", "overvalued", "overvalues", "overview", "overweary", "overweening", "overweight", "overwhelm", "overwhelmed", "overwhelming", "overwhelmingly", "overwhelms", "overwinter", "overwintering", "overwork", "overworking", "overworks", "overwrite", "overwrites", "overwriting", "overwrought", "overzealous", "oviduct", "oviform", "ovimbundu", "ovine", "oviparous", "ovipositor", "oviraptorid", "ovoflavin", "ovoid", "ovoli", "ovolo", "ovotestes", "ovotestis", "ovoviviparous", "ovular", "ovulate", "ovulates", "ovulating", "ovulation", "ovule", "ovum", "owe", "owed", "owes", "owing", "owl", "owlclaws", "owlet", "owlish", "owlishly", "owlt", "own", "owned", "owner", "ownerless", "owners", "ownership", "owning", "owns", "ox", "oxacillin", "oxalacetate", "oxalate", "oxalic", "oxalis", "oxaloacetate", "oxaprozin", "oxazepam", "oxbow", "oxcart", "oxen", "oxeye", "oxheart", "oxidant", "oxidants", "oxidase", "oxidate", "oxidates", "oxidation", "oxidative", "oxide", "oxides", "oxidisation", "oxidise", "oxidised", "oxidiser", "oxidises", "oxidising", "oxidizable", "oxidization", "oxidize", "oxidized", "oxidizer", "oxidizes", "oxidizing", "oxidoreductase", "oxidoreduction", "oxime", "oximeter", "oxlip", "oxonian", "oxtail", "oxtant", "oxtongue", "oxyacetylene", "oxyacid", "oxybenzene", "oxycephaly", "oxygen", "oxygenase", "oxygenate", "oxygenates", "oxygenation", "oxygenise", "oxygenize", "oxyhaemoglobin", "oxyhemoglobin", "oxymora", "oxymoron", "oxyopia", "oxyphenbutazone", "oxyphencyclimine", "oxytetracycline", "oxytocic", "oxytocin", "oxytone", "oyabun", "oyster", "oystercatcher", "oysterfish", "oysters", "OZ.", "Oz.", "oz.", "ozaena", "ozena", "ozocerite", "ozokerite", "ozone", "ozonide", "ozonise", "ozonises", "ozonize", "ozonizes", "ozonosphere", "O\u2019CLOCK", "O\u2019clock", "o\u2019clock", "P.M.", "p.m.", "PA.", "Pa.", "pa.", "paba", "pabir", "pabulum", "pac", "paca", "pace", "paced", "pacemaker", "pacer", "paces", "pacesetter", "pacha", "pachinko", "pachisi", "pachouli", "pachuco", "pachycephalosaur", "pachycephalosaurus", "pachycheilia", "pachyderm", "pachyderma", "pachydermal", "pachydermatous", "pachydermic", "pachydermous", "pachysandra", "pachytene", "pacific", "pacifically", "pacification", "pacificism", "pacificist", "pacified", "pacifier", "pacifies", "pacifism", "pacifist", "pacifistic", "pacifistically", "pacify", "pacifying", "pacing", "pack", "packable", "package", "packaged", "packages", "packaging", "packed", "packer", "packet", "packets", "packhorse", "packing", "packinghouse", "packman", "packrat", "packs", "packsack", "packsaddle", "packthread", "pact", "pad", "padauk", "padded", "padder", "padding", "paddle", "paddlefish", "paddlefishes", "paddler", "paddlewheel", "paddling", "paddock", "paddymelon", "pademelon", "padlock", "padouk", "padova", "padre", "padrone", "pads", "paean", "paederast", "paederastic", "paederasts", "paederasty", "paediatric", "paediatrician", "paediatricians", "paediatrics", "paedophile", "paedophiles", "paedophilia", "paella", "paeony", "PAF", "paf", "pagad", "pagan", "paganise", "paganism", "paganize", "page", "pageant", "pageantry", "pageboy", "pager", "pages", "paginate", "pagination", "paging", "pagoda", "pahautea", "pahlevi", "pahoehoe", "paid", "paigle", "pail", "pailful", "paillasse", "pain", "pained", "painful", "painfully", "painfulness", "painkiller", "painless", "painlessly", "pains", "painstaking", "painstakingly", "painstakingness", "paint", "paintable", "paintball", "paintbox", "paintbrush", "painted", "painter", "painterly", "painters", "painting", "paintings", "paints", "pair", "paired", "pairing", "pairings", "pairs", "paisa", "paise", "paisley", "pajama", "pajamas", "pakchoi", "Pakistan", "pakistan", "pakistani", "pal", "palace", "palaces", "paladin", "palaeencephalon", "palaeoanthropology", "palaeobiology", "palaeobotany", "palaeoclimatology", "palaeodendrology", "palaeoecology", "palaeoethnography", "palaeogeography", "palaeogeology", "palaeolithic", "palaeology", "palaeontological", "palaeontologist", "palaeontologists", "palaeontology", "palaeopathology", "palaeornithology", "palaeozoology", "palaestra", "palaetiology", "palankeen", "palanquin", "palas", "palatability", "palatable", "palatableness", "palatably", "palatal", "palatalise", "palatalised", "palatalize", "palatalized", "palate", "palatial", "palatine", "palatoglossal", "palatopharyngoplasty", "Palau", "palau", "palaver", "palavering", "pale", "palea", "paleae", "paled", "paleencephalon", "palely", "paleness", "paleoanthropological", "paleoanthropology", "paleobiology", "paleobotany", "paleocerebellum", "paleoclimatology", "paleocortex", "paleocortical", "paleodendrology", "paleoecology", "paleoencephalon", "paleoethnography", "paleogeography", "paleogeology", "paleographer", "paleographist", "paleography", "paleolith", "paleolithic", "paleology", "paleomammalogy", "paleontological", "paleontologist", "paleontologists", "paleontology", "paleopathology", "paleornithology", "paleostriatum", "paleozoic", "paleozoology", "pales", "Palestine", "palestine", "palestinian", "palestra", "palestrae", "paletiology", "palette", "palfrey", "palilalia", "palimony", "palimpsest", "palindrome", "paling", "palingeneses", "palingenesis", "palingenetic", "palisade", "palisading", "palish", "pall", "palladian", "palladium", "pallasite", "pallbearer", "palled", "pallet", "pallette", "pallia", "palliasse", "palliate", "palliation", "palliative", "pallid", "pallidity", "pallidly", "pallidness", "pallidum", "pallier", "palliest", "palling", "pallium", "pallone", "pallor", "pally", "palm", "palmaceae", "palmar", "palmate", "palmately", "palmatifid", "palmature", "palmetto", "palmettoes", "palmier", "palmiest", "palming", "palmist", "palmister", "palmistry", "palmitin", "palmlike", "palms", "palmy", "palmyra", "palometa", "palomino", "palooka", "paloverde", "palpability", "palpable", "palpably", "palpate", "palpates", "palpating", "palpation", "palpatory", "palpebra", "palpebrate", "palpebration", "palpi", "palpitant", "palpitate", "palpitating", "palpitation", "palpus", "pals", "palsgrave", "palsied", "palsy", "palter", "paltering", "paltrier", "paltriest", "paltriness", "paltry", "pamelor", "pampas", "pamper", "pamperer", "pampering", "pampers", "pamphlet", "pamphleteer", "pan", "panache", "panadol", "Panama", "panama", "panamanian", "panamica", "panamiga", "panatela", "pancake", "pancakes", "pancarditis", "panchayat", "panchayet", "pancratia", "pancratium", "pancreas", "pancreatectomy", "pancreatic", "pancreatin", "pancreatitis", "pancytopenia", "panda", "pandanus", "pandar", "pandeism", "pandemic", "pandemonium", "pander", "panderer", "pandering", "panders", "pandiculation", "pandied", "pandies", "pandowdy", "pandurate", "panduriform", "pandy", "pane", "panegyric", "panegyrical", "panegyrist", "panel", "paneled", "paneling", "panelist", "panelists", "panelled", "panelling", "panellist", "panellists", "panels", "panencephalitis", "panenthesism", "panetela", "panetella", "panettone", "panettoni", "panfish", "pang", "panga", "pangea", "pangolin", "panhandle", "panhandler", "panhandles", "panhandling", "panhellenic", "panhysterectomy", "panic", "panicked", "panicking", "panicky", "panicle", "panicled", "panics", "paniculate", "panjabi", "panjandrum", "panned", "pannier", "pannikin", "panning", "panocha", "panoche", "panoplied", "panoply", "panoptic", "panoptical", "panopticon", "panorama", "panoramic", "panpipe", "pans", "pansa", "pansexual", "pansinusitis", "pansy", "pant", "pantalooned", "pantechnicon", "pantheism", "pantheist", "pantheistic", "pantheon", "panther", "pantie", "panties", "pantile", "panting", "panto", "pantograph", "pantomime", "pantomimer", "pantomimes", "pantomiming", "pantomimist", "pantothen", "pantropic", "pantropical", "pantry", "pantryman", "pants", "pantsuit", "panty", "pantyhose", "pantywaist", "panzer", "pap", "papa", "papacy", "papaia", "papain", "papal", "paparazzi", "paparazzo", "papaverales", "papaverine", "papaw", "papaya", "paper", "paperback", "paperbacked", "paperboard", "paperboy", "paperclip", "paperer", "paperhanger", "paperhanging", "papering", "paperknife", "paperknives", "paperlike", "papermaking", "papers", "paperweight", "paperwork", "papery", "papilla", "papillae", "papillary", "papillate", "papilledema", "papilliform", "papilloma", "papillomata", "papillon", "papillose", "papism", "papist", "papistic", "papistical", "papoose", "papooseroot", "papovavirus", "pappa", "pappi", "pappier", "pappiest", "pappoose", "pappose", "pappus", "pappy", "paprika", "Papua", "papua", "papuan", "papula", "papulae", "papule", "papulovesicle", "papyri", "papyrus", "par", "para", "parabases", "parabasis", "parable", "parabola", "parabolic", "parabolical", "paraboloid", "paraboloidal", "paracentesis", "parachute", "parachuter", "parachutes", "parachuting", "parachutist", "paraclete", "paracosm", "parade", "parader", "parades", "paradiddle", "paradigm", "paradigmatic", "parading", "paradisaic", "paradisaical", "paradisal", "paradise", "paradisiac", "paradisiacal", "paradox", "paradoxical", "paradoxically", "paraesthesia", "paraffin", "parafovea", "paragliding", "paragon", "paragonite", "paragraph", "paragrapher", "paragraphs", "Paraguay", "paraguay", "paraguayan", "parakeet", "paralanguage", "paraldehyde", "paralegal", "paraleipses", "paraleipsis", "paralepsis", "paralipsis", "parallax", "parallel", "parallelepiped", "parallelepipedon", "paralleling", "parallelism", "parallelize", "parallelled", "parallelling", "parallelogram", "parallelopiped", "parallelopipedon", "parallels", "paralogism", "paralyse", "paralysed", "paralyses", "paralysing", "paralysis", "paralytic", "paralytical", "paralyze", "paralyzed", "paralyzes", "paralyzing", "paramagnet", "paramagnetic", "paramagnetism", "paramecia", "paramecium", "paramedic", "paramedical", "parament", "paramenta", "parameter", "parameters", "parametric", "parametritis", "paramilitary", "paramnesia", "paramount", "paramountcy", "paramour", "paramyxovirus", "paranasal", "parang", "paranoia", "paranoiac", "paranoid", "paranormal", "paraparesis", "parapet", "paraph", "paraphernalia", "paraphilia", "paraphrase", "paraphrases", "paraphrasing", "paraphrasis", "paraphrastic", "paraphrenia", "paraphyses", "paraphysis", "paraplegia", "paraplegic", "parapodia", "parapodium", "parapraxes", "parapraxis", "paraprofessional", "parapsychological", "parapsychologist", "parapsychology", "paraquat", "paraquet", "parasail", "parasailing", "paraselenae", "paraselene", "parashah", "parashoth", "parasitaemia", "parasite", "parasitemia", "parasites", "parasitic", "parasitical", "parasitically", "parasiticidal", "parasitism", "parasol", "parasympathetic", "parasympathomimetic", "parasyntheta", "parasyntheton", "parathion", "parathormone", "parathyroid", "paratrooper", "paratroops", "paratyphoid", "parazoa", "parazoan", "parboil", "parboiling", "parboils", "parcel", "parceled", "parceling", "parcellation", "parcelled", "parcelling", "parcels", "parch", "parched", "parches", "parchesi", "parchisi", "parchment", "pardner", "pardon", "pardonable", "pardonably", "pardoned", "pardoner", "pardoning", "pardons", "pare", "pared", "paregmenon", "paregoric", "parenchyma", "parent", "parentage", "parental", "parentally", "parented", "parenteral", "parenterally", "parentheses", "parenthesis", "parenthetic", "parenthetical", "parenthetically", "parenthood", "parentless", "parents", "parer", "parerga", "parergon", "paresis", "paresthesia", "paretic", "pareve", "parfait", "parget", "pargeting", "pargetry", "pargetting", "parhelia", "parheliacal", "parhelic", "parhelion", "pariah", "paries", "parietal", "parietes", "parimutuel", "paring", "paripinnate", "parish", "parishes", "parishioner", "parishioners", "parisian", "parisology", "parity", "park", "parka", "parked", "parkier", "parkiest", "parking", "parkinsonism", "parkland", "parks", "parkway", "parky", "parlance", "parlay", "parlaying", "parlays", "parley", "parleys", "parliament", "parliamentarian", "parliamentary", "parlor", "parlormaid", "parlors", "parlour", "parlourmaid", "parlours", "parlous", "parnahiba", "parnassia", "parochial", "parochialism", "parochially", "parodied", "parodies", "parodist", "parody", "parodying", "paroicous", "parole", "parolee", "paroling", "paronomasia", "paronym", "paroquet", "parosamia", "parotid", "parotitis", "parous", "parousia", "paroxetime", "paroxysm", "paroxysmal", "paroxytone", "parquet", "parqueterie", "parquetry", "parrakeet", "parricide", "parried", "parries", "parroket", "parroquet", "parrot", "parrotfish", "parrotfishes", "parroting", "parrotlike", "parry", "parrying", "parse", "parsec", "parseeism", "parser", "parses", "parsi", "parsimonious", "parsimoniousness", "parsimony", "parsing", "parsley", "parsnip", "parson", "parsonage", "part", "partake", "partaker", "partakes", "partaking", "parte", "parted", "parterre", "parthenocarpy", "parthenogenesis", "parthenogenetic", "parthenogeny", "parthenote", "parthian", "partial", "partiality", "partially", "partialness", "partible", "participant", "participants", "participate", "participated", "participates", "participating", "participation", "participatory", "participial", "participle", "particle", "particles", "particolored", "particoloured", "particular", "particularisation", "particularise", "particularised", "particularises", "particularising", "particularism", "particularistic", "particularity", "particularization", "particularize", "particularized", "particularizes", "particularizing", "particularly", "particulars", "particulate", "parties", "parting", "partisan", "partisans", "partisanship", "partita", "partition", "partitioning", "partitionist", "partitions", "partitive", "partizan", "partly", "partner", "partnering", "partners", "partnership", "partnerships", "partridge", "partridgeberry", "parts", "partsong", "parttime", "parturiency", "parturient", "parturition", "party", "partygoer", "partying", "parulides", "parulis", "parve", "parvenu", "parvenue", "parvis", "parvo", "parvovirus", "pasang", "pascha", "paschal", "paseo", "pasha", "pashtoon", "pashtu", "pashtun", "paspalum", "pasqueflower", "pasquilled", "pasquilling", "pasquinade", "pass", "passable", "passably", "passado", "passage", "passages", "passageway", "passant", "passbook", "passe", "passed", "passee", "passel", "passementerie", "passenger", "passengers", "passerby", "passeres", "passerine", "passes", "passim", "passing", "passion", "passionate", "passionately", "passionateness", "passionflower", "passionless", "passions", "passive", "passively", "passiveness", "passivisation", "passivise", "passivised", "passivises", "passivising", "passivism", "passivity", "passivization", "passivize", "passivized", "passivizes", "passivizing", "passkey", "passport", "passports", "password", "passwords", "past", "pasta", "paste", "pasteboard", "pasted", "pastel", "pastelike", "paster", "pastern", "pastes", "pasteurellosis", "pasteurian", "pasteurisation", "pasteurise", "pasteurised", "pasteurises", "pasteurising", "pasteurization", "pasteurize", "pasteurized", "pasteurizes", "pasteurizing", "pastiche", "pastier", "pastiest", "pastil", "pastille", "pastime", "pasting", "pastis", "pastness", "pasto", "pastor", "pastoral", "pastorale", "pastorali", "pastorate", "pastorship", "pastrami", "pastry", "pasturage", "pasture", "pastureland", "pasty", "pat", "pataca", "patagia", "patagium", "patas", "patavium", "patch", "patchboard", "patchcord", "patched", "patches", "patchier", "patchiest", "patchily", "patchiness", "patching", "patchouli", "patchouly", "patchwork", "patchy", "pate", "patella", "patellae", "patellar", "patelliform", "patency", "patent", "patented", "patentee", "patenting", "patently", "patents", "pater", "paterfamilias", "paternal", "paternalism", "paternalistic", "paternally", "paternity", "path", "pathetic", "pathetically", "pathfinder", "pathless", "pathogen", "pathogenesis", "pathogenic", "pathogenically", "pathogens", "pathologic", "pathological", "pathologically", "pathologies", "pathologist", "pathologists", "pathology", "pathos", "paths", "pathway", "pathways", "patience", "patient", "patiently", "patients", "patina", "patinae", "patinate", "patinates", "patinise", "patinises", "patinize", "patinizes", "patio", "patisserie", "patka", "patness", "patois", "patrai", "patresfamilias", "patrial", "patriarch", "patriarchal", "patriarchate", "patriarchic", "patriarchy", "patricentric", "patrician", "patricide", "patrikin", "patrilineage", "patrilineal", "patrilineally", "patrilinear", "patrimonial", "patrimony", "patriot", "patrioteer", "patriotic", "patriotically", "patriotism", "patrisib", "patristic", "patristical", "patristics", "patrol", "patrolled", "patroller", "patrolling", "patrolman", "patrology", "patrols", "patron", "patronage", "patroness", "patronise", "patronised", "patronises", "patronising", "patronisingly", "patronize", "patronized", "patronizes", "patronizing", "patronizingly", "patronless", "patronne", "patrons", "patronym", "patronymic", "pats", "patsy", "patted", "patten", "patter", "pattering", "pattern", "patterned", "patterning", "patternmaker", "patterns", "patters", "patting", "patty", "patzer", "paucity", "pauline", "paunch", "paunchiness", "paunchy", "pauper", "pauperisation", "pauperise", "pauperism", "pauperization", "pauperize", "pause", "paused", "pauses", "pausing", "pavage", "pavan", "pavane", "pave", "paved", "pavement", "paves", "pavilion", "pavilions", "paving", "pavior", "paviour", "pavis", "pavise", "pavlovian", "pavonia", "paw", "pawer", "pawing", "pawkier", "pawkiest", "pawky", "pawl", "pawn", "pawnbroker", "pawning", "pawns", "pawnshop", "pawpaw", "paws", "pax", "paxil", "paxto", "pay", "payable", "payback", "paycheck", "paychecks", "payday", "paye", "payee", "payer", "paygrade", "paying", "payload", "paymaster", "payment", "payments", "paynim", "payoff", "payoffs", "payola", "payroll", "payrolls", "pays", "paysheet", "payslip", "pb", "pbit", "pbs", "pc", "pcp", "pcs", "pct", "PCT.", "Pct.", "pct.", "pda", "pdflp", "pdl", "pdt", "pea", "peace", "peaceable", "peaceableness", "peaceably", "peaceful", "peacefully", "peacefulness", "peacekeeper", "peacekeepers", "peacekeeping", "peacemaker", "peacenik", "peacetime", "peach", "peaches", "peachick", "peachier", "peachiest", "peachwood", "peachy", "peacoat", "peacock", "peafowl", "peag", "peahen", "peak", "peaked", "peaking", "peaks", "peaky", "peal", "pealing", "peals", "pean", "peanut", "peanuts", "pear", "Pearl", "pearl", "pearler", "pearlescent", "pearlfish", "pearlier", "pearliest", "pearlite", "pearls", "pearlweed", "pearlwort", "pearly", "pears", "peas", "peasant", "peasanthood", "peasantry", "peasants", "pease", "peasecod", "peat", "peaty", "peavey", "peavy", "peba", "pebble", "pebbly", "pebibit", "pebibyte", "pecan", "peccable", "peccadillo", "peccadilloes", "peccant", "peccary", "peck", "pecker", "peckerwood", "pecking", "peckish", "pecks", "pecopteris", "pecs", "pecten", "pectic", "pectin", "pectinate", "pectineal", "pectines", "pectoral", "pectoralis", "pectus", "peculate", "peculation", "peculator", "peculiar", "peculiarity", "peculiarly", "pecuniary", "pedagog", "pedagogic", "pedagogical", "pedagogically", "pedagogics", "pedagogue", "pedagogy", "pedal", "pedaled", "pedaler", "pedaling", "pedalled", "pedaller", "pedalling", "pedalo", "pedaloes", "pedals", "pedant", "pedantic", "pedantically", "pedantry", "pedate", "peddle", "peddled", "peddler", "peddles", "peddling", "pederast", "pederastic", "pederasts", "pederasty", "pedes", "pedesis", "pedestal", "pedestrian", "pedestrianisation", "pedestrianise", "pedestrianised", "pedestrianises", "pedestrianising", "pedestrianization", "pedestrianize", "pedestrianized", "pedestrianizes", "pedestrianizing", "pedestrians", "pediamycin", "pediapred", "pediatric", "pediatrician", "pediatricians", "pediatrics", "pediatrist", "pedicab", "pedicel", "pedicle", "pediculicide", "pediculosis", "pedicure", "pedigree", "pedigreed", "pedigrees", "pediment", "pedlar", "pedodontist", "pedology", "pedometer", "pedophile", "pedophiles", "pedophilia", "peduncle", "pedunculate", "pedwood", "pee", "peeing", "peek", "peekaboo", "peeking", "peeks", "peel", "peeled", "peeler", "peeling", "peels", "peen", "peep", "peeper", "peephole", "peeping", "peeps", "peepshow", "peepul", "peer", "peerage", "peeress", "peering", "peerless", "peers", "pees", "peeve", "peeved", "peevish", "peevishly", "peevishness", "peewee", "peewit", "peg", "pegboard", "pegged", "pegging", "pegleg", "pegmatite", "pegs", "pehlevi", "peignoir", "peiping", "peireskia", "pejorative", "pejoratively", "pekan", "peke", "pekinese", "peking", "pekingese", "pekoe", "pel", "pelage", "pelagic", "pelecypod", "pelecypodous", "pelew", "pelf", "pelican", "peliosis", "pelisse", "pellagra", "pellet", "pellets", "pellicle", "pellitory", "pellucid", "pellucidity", "pellucidly", "pellucidness", "pelmet", "peloponnesian", "peloponnesus", "pelota", "pelt", "peltate", "pelter", "pelting", "peltiphyllum", "pelts", "peludo", "pelves", "pelvic", "pelvimeter", "pelvimetry", "pelvis", "pelycosaur", "pemican", "pemmican", "pemphigous", "pemphigus", "pen", "penal", "penalisation", "penalise", "penalised", "penalises", "penalising", "penalization", "penalize", "penalized", "penalizes", "penalizing", "penally", "penalties", "penalty", "penance", "pence", "penchant", "pencil", "penciled", "penciling", "pencilled", "pencilling", "pencils", "pendant", "pendent", "pending", "pendragon", "pendulous", "pendulum", "peneplain", "peneplane", "penes", "penetrability", "penetrable", "penetralia", "penetralium", "penetrate", "penetrated", "penetrates", "penetrating", "penetratingly", "penetration", "penetrative", "penetratively", "penetrator", "penguin", "penguins", "penial", "penicillamine", "penicillia", "penicillin", "penicillinase", "penicillium", "penile", "peninsula", "peninsular", "penis", "penises", "penitence", "penitent", "penitential", "penitentially", "penitentiary", "penitently", "penknife", "penknives", "penlight", "penman", "penmanship", "penna", "pennae", "pennant", "pennate", "penne", "penned", "penni", "pennia", "pennies", "penniless", "pennilessness", "penning", "pennon", "pennoncel", "pennoncelle", "pennsylvania", "penny", "penny-wise", "pennycress", "pennyroyal", "pennyweight", "pennywhistle", "pennyworth", "penoche", "penologist", "penology", "penoncel", "penpusher", "pens", "pension", "pensionable", "pensionary", "pensioner", "pensions", "pensive", "pensively", "pensiveness", "penstock", "pent", "pentacle", "pentad", "pentaerythritol", "pentagonal", "pentagram", "pentahedra", "pentahedron", "pentail", "pentamerous", "pentameter", "pentamethylenetetrazol", "pentangle", "pentangular", "pentastomid", "pentasyllabic", "pentateuch", "pentathlete", "pentathlon", "pentatone", "pentatonic", "pentavalent", "pentazocine", "pentecost", "pentecostal", "pentecostalism", "pentecostalist", "penthouse", "pentimenti", "pentimento", "pentlandite", "pentobarbital", "pentode", "pentose", "pentothal", "pentoxide", "pentoxifylline", "pentylenetetrazol", "penuche", "penuchle", "penult", "penultima", "penultimate", "penumbra", "penumbrae", "penumbral", "penurious", "penuriously", "penuriousness", "penury", "peon", "peonage", "peony", "People", "people", "peopled", "peoples", "peopling", "pep", "pepcid", "peperomia", "pepla", "peplos", "peplum", "peplus", "pepped", "pepper", "peppercorn", "peppered", "pepperidge", "pepperiness", "peppering", "peppermint", "pepperoni", "peppers", "pepperwood", "pepperwort", "peppery", "peppier", "peppiest", "peppiness", "pepping", "peppy", "peps", "pepsin", "pepsinogen", "peptic", "peptidase", "peptide", "peptides", "peptisation", "peptise", "peptization", "peptize", "peptone", "per", "peradventure", "perambulate", "perambulating", "perambulation", "perambulator", "percale", "perceivable", "perceive", "perceived", "perceiver", "perceives", "perceiving", "Percent", "percent", "percentage", "percentages", "percentile", "percentiles", "percents", "percept", "perceptibility", "perceptible", "perceptibly", "perception", "perceptions", "perceptive", "perceptively", "perceptiveness", "perceptivity", "perceptual", "perceptually", "perch", "perchance", "perched", "percher", "perches", "perching", "perchlorate", "perchloride", "perchloromethane", "percipient", "percoid", "percoidean", "percolate", "percolates", "percolating", "percolation", "percolator", "percomorphi", "percuss", "percussion", "percussionist", "percussive", "percussor", "percutaneous", "perdicinae", "perdition", "perdurability", "perdurable", "peregrinate", "peregrination", "peregrine", "peremptorily", "peremptory", "perennate", "perennation", "perennial", "perennially", "perestroika", "perfect", "perfecta", "perfected", "perfecter", "perfectibility", "perfectible", "perfecting", "perfection", "perfectionism", "perfectionist", "perfective", "perfectly", "perfects", "perfervid", "perfidious", "perfidiously", "perfidiousness", "perfidy", "perfluorocarbon", "perfoliate", "perforate", "perforated", "perforation", "perforce", "perform", "performance", "performances", "performed", "performer", "performers", "performing", "performs", "perfume", "perfumed", "perfumer", "perfumery", "perfuming", "perfunctorily", "perfunctory", "perfuse", "perfuses", "perfusing", "perfusion", "pergola", "Perhaps", "perhaps", "peri", "periactin", "perianal", "perianth", "periapsis", "periarteritis", "pericardia", "pericardiac", "pericardial", "pericarditis", "pericardium", "pericarp", "pericementoclasia", "perichondria", "perichondrium", "periclase", "pericrania", "pericranium", "peridia", "peridinian", "peridium", "peridot", "peridotite", "perigee", "perigon", "perigonal", "perigone", "perigonia", "perigonium", "perihelia", "perihelion", "perijove", "peril", "perilous", "perilously", "perilousness", "perils", "perilune", "perilymph", "perimeter", "perimysium", "perinasal", "perinatal", "perinatologist", "perinatology", "perinea", "perineal", "perineotomy", "perinephria", "perinephrium", "perineum", "perineurium", "period", "periodic", "periodical", "periodically", "periodicals", "periodicity", "periodontal", "periodontia", "periodontic", "periodontics", "periodontist", "periodontitis", "periods", "perionychia", "perionychium", "periostea", "periosteum", "peripatetic", "peripateticism", "peripatus", "peripeteia", "peripetia", "peripety", "peripheral", "peripherally", "periphery", "periphrases", "periphrasis", "periphrastic", "peripteral", "perirhinal", "periscope", "periselene", "perish", "perishability", "perishable", "perishableness", "perished", "perisher", "perishes", "perishing", "perisperm", "perissodactyl", "peristalses", "peristalsis", "peristome", "peristylar", "peristyle", "perithecia", "perithecium", "perithelial", "perithelium", "peritonea", "peritoneal", "peritoneum", "peritonitis", "peritrate", "peritrichous", "periwig", "periwigged", "periwinkle", "perjure", "perjurer", "perjures", "perjuring", "perjury", "perk", "perked", "perkier", "perkiest", "perkily", "perkiness", "perking", "perks", "perky", "perleche", "perm", "permafrost", "permanence", "permanency", "permanent", "permanently", "permanganate", "permeability", "permeable", "permeableness", "permeant", "permeate", "permeated", "permeates", "permeating", "permeation", "permeative", "permed", "permissibility", "permissible", "permissibly", "permission", "permissive", "permissively", "permissiveness", "permit", "permits", "permitted", "permitting", "permutability", "permutable", "permutableness", "permutation", "permutations", "permute", "permutes", "permuting", "pernambuco", "pernicious", "perniciously", "perniciousness", "pernickety", "pernio", "peroneal", "peroneus", "perorate", "perorates", "perorating", "peroration", "peroxidase", "peroxide", "perpendicular", "perpendicularity", "perpendicularly", "perpetrate", "perpetrated", "perpetrates", "perpetrating", "perpetration", "perpetrator", "perpetrators", "perpetual", "perpetually", "perpetuate", "perpetuates", "perpetuating", "perpetuation", "perpetuity", "perphenazine", "perplex", "perplexed", "perplexedly", "perplexing", "perplexity", "perquisite", "persecute", "persecuted", "persecutes", "persecuting", "persecution", "persecutor", "perseverance", "perseverate", "perseveration", "persevere", "perseveres", "persevering", "perseveringly", "persia", "persian", "persiflage", "persimmon", "persist", "persisted", "persistence", "persistency", "persistent", "persistently", "persisting", "persists", "persnickety", "person", "persona", "personable", "personableness", "personae", "personage", "personal", "personalise", "personalised", "personalises", "personalising", "personalities", "personality", "personalize", "personalized", "personalizes", "personalizing", "personally", "personalty", "personate", "personates", "personation", "personhood", "personification", "personified", "personifies", "personify", "personifying", "personnel", "persons", "perspective", "perspectives", "perspex", "perspicacious", "perspicaciousness", "perspicacity", "perspicuity", "perspicuous", "perspicuously", "perspicuousness", "perspiration", "perspire", "perspirer", "perspires", "perspiring", "persuadable", "persuade", "persuaded", "persuader", "persuades", "persuading", "persuasible", "persuasion", "persuasive", "persuasively", "persuasiveness", "pert", "pertain", "pertaining", "pertains", "pertainym", "pertinacious", "pertinaciously", "pertinacity", "pertinence", "pertinency", "pertinent", "pertinently", "pertly", "pertness", "perturb", "perturbation", "perturbations", "perturbed", "perturbing", "perturbs", "pertussis", "Peru", "peru", "peruke", "peruked", "perusal", "peruse", "peruses", "perusing", "peruvian", "pervade", "pervaded", "pervades", "pervading", "pervaporate", "pervaporates", "pervaporation", "pervasion", "pervasive", "pervasively", "pervasiveness", "perverse", "perversely", "perverseness", "perversion", "perversity", "perversive", "pervert", "perverted", "perverting", "perverts", "pervious", "perviousness", "pes", "pesach", "pesah", "pesantran", "pesantren", "peseta", "pesewa", "peshmerga", "peskier", "peskiest", "pesky", "peso", "pessary", "pessimal", "pessimism", "pessimist", "pessimistic", "pessimistically", "pessimum", "pest", "pester", "pestered", "pesterer", "pestering", "pesters", "pesthole", "pesthouse", "pesticide", "pesticides", "pestiferous", "pestilence", "pestilent", "pestilential", "pestis", "pestle", "pesto", "pet", "petabit", "petabyte", "petal", "petaled", "petalled", "petalless", "petallike", "petaloid", "petalous", "petals", "petard", "petchary", "petcock", "petechia", "petechiae", "peterburg", "petfood", "petiole", "petiolule", "petite", "petiteness", "petitio", "petition", "petitionary", "petitioned", "petitioner", "petitioning", "petitions", "petrarca", "petrel", "petrifaction", "petrification", "petrified", "petrifies", "petrify", "petrifying", "petrissage", "petrochemical", "petroglyph", "petrograd", "petrol", "petrolatum", "petroleum", "petrology", "petrous", "pets", "petted", "petter", "petticoat", "petticoated", "pettier", "pettiest", "pettifog", "pettifogged", "pettifogger", "pettifoggery", "pettifogging", "pettifogs", "pettily", "pettiness", "petting", "pettish", "pettishly", "pettishness", "petty", "petulance", "petulant", "petulantly", "petunia", "peul", "pew", "pewee", "pewit", "pewter", "peyote", "pfalz", "pfannkuchen", "pfc", "pfennig", "pfennige", "pflp", "PGA", "pga", "ph", "phacelia", "phacoemulsification", "phaeochromocytoma", "phaeton", "phage", "phages", "phagocyte", "phagocytic", "phagocytosis", "phaius", "phalacrosis", "phalange", "phalangeal", "phalanger", "phalanges", "phalangist", "phalangitis", "phalanx", "phalarope", "phalguna", "phalli", "phallic", "phalloplasty", "phallus", "phalsa", "phanerogam", "phanerogamae", "phaneromania", "phantasied", "phantasm", "phantasma", "phantasmagoria", "phantasmagoric", "phantasmagorical", "phantasmal", "phantasy", "phantom", "pharaonic", "pharisaic", "pharisaical", "pharma", "pharmaceutic", "pharmaceutical", "pharmaceuticals", "pharmacies", "pharmacist", "pharmacogenetics", "pharmacokinetics", "pharmacologic", "pharmacological", "pharmacologically", "pharmacologist", "pharmacology", "pharmacopeia", "pharmacopeias", "pharmacopoeia", "pharmacopoeias", "pharmacy", "pharos", "pharyngeal", "pharynges", "pharyngitis", "pharynx", "phase", "phased", "phases", "phasianid", "phasing", "phasmatidae", "phasmatodea", "phasmid", "phd", "pheasant", "pheidias", "phellem", "phenacetin", "phenacomys", "phenaphen", "phenazopyridine", "phencyclidine", "phenelzine", "phenergan", "phenicia", "pheniramine", "phenobarbital", "phenobarbitone", "phenol", "phenolic", "phenolphthalein", "phenomena", "phenomenal", "phenomenally", "phenomenology", "phenomenon", "phenoplast", "phenothiazine", "phenotype", "phenotypes", "phenotypic", "phenotypical", "phensuximide", "phentolamine", "phenylacetamide", "phenylalanine", "phenylamine", "phenylbutazone", "phenylephrine", "phenylethylene", "phenylketonuria", "phenylpropanolamine", "phenyltoloxamine", "phenytoin", "pheochromocytoma", "pheresis", "pheromone", "phi", "phial", "philadelphus", "philander", "philanderer", "philandering", "philanders", "philanthropic", "philanthropically", "philanthropist", "philanthropy", "philatelic", "philatelical", "philatelically", "philatelist", "philately", "philharmonic", "philhellene", "philhellenic", "philhellenism", "philhellenist", "philia", "philippic", "philippine", "Philippines", "philippines", "philippopolis", "philistine", "philistinism", "phillidae", "phillipsite", "philodendra", "philodendron", "philogyny", "philological", "philologist", "philologue", "philology", "philomath", "philosopher", "philosophers", "philosophic", "philosophical", "philosophically", "philosophise", "philosophised", "philosophiser", "philosophises", "philosophising", "philosophize", "philosophized", "philosophizer", "philosophizes", "philosophizing", "philosophy", "philter", "philtre", "philtres", "phimosis", "phiz", "phlebectomy", "phlebitis", "phlebogram", "phlebothrombosis", "phlebotomise", "phlebotomist", "phlebotomize", "phlebotomy", "phlegm", "phlegmatic", "phlegmatical", "phlegmatically", "phlegmy", "phloem", "phlogiston", "phlogopite", "phlomis", "phlox", "phlyctaena", "phlyctenae", "phobia", "phobic", "phobophobia", "phocine", "phocomelia", "phoebus", "phoenician", "phoenicophorium", "phon", "phonate", "phonation", "Phone", "phone", "phonebook", "phoned", "phoneme", "phonemic", "phonemically", "phonemics", "phoner", "phones", "phonetic", "phonetically", "phonetician", "phonetics", "phoney", "phonic", "phonics", "phonier", "phoniest", "phoning", "phonogram", "phonogramic", "phonograph", "phonologic", "phonological", "phonologist", "phonology", "phonophobia", "phony", "phoronid", "phoronidea", "phosgene", "phosphatase", "phosphatases", "phosphate", "phosphine", "phosphocreatine", "phospholipid", "phospholipids", "phosphoprotein", "phosphor", "phosphoresce", "phosphorescence", "phosphorescent", "phosphoric", "phosphorous", "phosphorus", "phot", "photalgia", "photic", "photo", "photocathode", "photocell", "photochemical", "photochemistry", "photocoagulation", "photocoagulator", "photoconduction", "photoconductive", "photoconductivity", "photocopied", "photocopier", "photocopies", "photocopy", "photocopying", "photoelectric", "photoelectrical", "photoelectrically", "photoelectricity", "photoelectron", "photoemission", "photoemissive", "photoengraving", "photoflash", "photoflood", "photogenic", "photograph", "photographed", "photographer", "photographers", "photographic", "photographically", "photographing", "photographs", "photography", "photogravure", "photojournalism", "photojournalist", "photolithograph", "photolithography", "photomap", "photomapped", "photomapping", "photomechanical", "photomechanics", "photometer", "photometric", "photometrical", "photometrically", "photometrician", "photometrist", "photometry", "photomicrograph", "photomontage", "photomosaic", "photon", "photophobia", "photopigment", "photoretinitis", "photos", "photosensitise", "photosensitive", "photosensitivity", "photosensitize", "photosensitizes", "photoset", "photosets", "photosetting", "photosphere", "photostat", "photosynthesis", "photosynthetic", "phototherapy", "phototropism", "photovoltaic", "phragmacone", "phragmocone", "phrasal", "phrase", "phraseology", "phrases", "phrasing", "phratry", "phreatic", "phrenetic", "phrenic", "phrenitis", "phrenological", "phrenologist", "phrenology", "phrontistery", "phthirus", "phthisis", "phycobilin", "phycocyanin", "phycoerythrin", "phycology", "phycomycosis", "phyla", "phylactery", "phylae", "phyle", "phyletic", "phylliform", "phyllo", "phylloclad", "phylloclade", "phyllode", "phyllodial", "phylloquinone", "phyllostomatidae", "phyllotaxes", "phyllotaxis", "phylloxera", "phylloxerae", "phylogeneses", "phylogenesis", "phylogenetic", "phylogenetically", "phylogenies", "phylogeny", "phylum", "physa", "physiatrics", "physic", "physical", "physicalism", "physicality", "physically", "physicalness", "physician", "physicians", "physicist", "physicists", "physicked", "physicking", "physicochemical", "physics", "physiognomy", "physiography", "physiologic", "physiological", "physiologically", "physiologist", "physiology", "physiotherapeutic", "physiotherapist", "physiotherapy", "physique", "physostegia", "physostigmine", "phytelephas", "phytochemical", "phytochemist", "phytochemistry", "phytohormone", "phytologist", "phytology", "phytonadione", "phytophagic", "phytophagous", "phytophilous", "phytoplankton", "phytotherapy", "phytotoxin", "pi", "pia", "piaffe", "piagetian", "pianism", "pianissimo", "pianist", "pianistic", "piano", "pianoforte", "pianola", "piaster", "piastre", "piazza", "pib", "pibgorn", "pibit", "pibroch", "pic", "picador", "picaninny", "picardy", "picaresque", "picayune", "piccalilli", "piccaninny", "piccolo", "pichi", "pichiciago", "pichiciego", "pick", "pickaback", "pickaninny", "pickax", "pickaxe", "picked", "pickelhaube", "picker", "pickerel", "pickerelweed", "picket", "pickier", "pickiest", "picking", "pickle", "pickled", "picklepuss", "pickles", "pickling", "picknicker", "pickpocket", "picks", "pickup", "picky", "picnic", "picnicked", "picnicker", "picnicking", "picnics", "picofarad", "picometer", "picometre", "picornavirus", "picosecond", "picot", "picovolt", "pics", "pictograph", "pictographic", "pictorial", "pictorially", "pictural", "picture", "pictured", "pictures", "picturesque", "picturesquely", "picturesqueness", "picturing", "picul", "piculet", "pid", "piddle", "piddling", "piddock", "pidgin", "pidlimdi", "pie", "piebald", "piece", "pieced", "piecemeal", "pieces", "piecework", "piecing", "pied", "piemonte", "pieplant", "pier", "pierce", "pierced", "pierces", "piercing", "piercingly", "pierid", "pies", "pieta", "pietistic", "pietistical", "piety", "piezoelectric", "piezoelectricity", "piezometer", "piffle", "piffling", "pig", "pigboat", "pigeon", "pigeonhole", "pigeonholing", "pigeons", "pigfish", "pigfishes", "pigged", "piggery", "piggier", "piggiest", "pigging", "piggish", "piggishly", "piggishness", "piggy", "piggyback", "piggybacking", "piggybacks", "pigheaded", "pigheadedness", "piglet", "pigman", "pigment", "pigmentation", "pigmy", "pignolia", "pignut", "pigpen", "pigs", "pigskin", "pigsticking", "pigsty", "pigswill", "pigtail", "pigwash", "pigweed", "pij", "pika", "pike", "pikeblenny", "pikestaff", "pilaf", "pilaff", "pilar", "pilary", "pilaster", "pilau", "pilaw", "pilchard", "pile", "pilea", "piled", "pilei", "piles", "pileum", "pileup", "pileus", "pilewort", "pilfer", "pilferage", "pilferer", "pilfering", "pilfers", "pilgrim", "pilgrimage", "pilgrims", "piling", "pill", "pillage", "pillaged", "pillager", "pillages", "pillaging", "pillar", "pillared", "pillars", "pillbox", "pillion", "pillock", "pilloried", "pillories", "pillory", "pillorying", "pillow", "pillowcase", "pillows", "pills", "pillwort", "pilocarpine", "pilose", "pilosebaceous", "pilosity", "pilot", "pilotage", "pilotfish", "pilothouse", "piloting", "pilotless", "pilots", "pilous", "pilsener", "pilus", "pimento", "pimiento", "pimozide", "pimp", "pimpernel", "pimping", "pimple", "pimpled", "pimply", "pin", "pinafore", "pinata", "pinball", "pincer", "pinch", "pinchbeck", "pinche", "pinched", "pinches", "pinchgut", "pinching", "pincushion", "pindaric", "pindolol", "pine", "pineal", "pinealoma", "pineapple", "pinecone", "pines", "pinesap", "pineta", "pinetum", "pineweed", "pinfish", "pinfishes", "pinfold", "ping", "pinger", "pinging", "pings", "pinguecula", "pinhead", "pinhole", "pinier", "piniest", "pining", "pinion", "pinioned", "pinite", "pink", "pinkeye", "pinkie", "pinkifies", "pinkify", "pinkish", "pinkness", "pinko", "pinkoes", "pinkroot", "pinky", "pinna", "pinnace", "pinnacle", "pinnae", "pinnate", "pinnated", "pinnately", "pinnatifid", "pinnatiped", "pinnatisect", "pinned", "pinner", "pinning", "pinniped", "pinnula", "pinnulae", "pinnule", "pinny", "pinochle", "pinocle", "pinocytosis", "pinole", "pinon", "pinophytina", "pinpoint", "pinpointed", "pinpointing", "pinpoints", "pinprick", "pins", "pinscher", "pinstripe", "pinstriped", "pint", "pintado", "pintail", "pintle", "pinto", "pinwheel", "pinworm", "piny", "pinyon", "piolet", "pion", "pioneer", "pioneered", "pioneers", "pious", "piously", "piousness", "pip", "pipage", "pipal", "pipe", "pipeclay", "piped", "pipefish", "pipefishes", "pipefitting", "pipeful", "pipeline", "pipelines", "piperacillin", "piperazine", "piperin", "piperine", "piperocaine", "pipes", "pipet", "pipette", "pipework", "pipewort", "piping", "pipistrel", "pipistrelle", "pipit", "pipped", "pipping", "pipracil", "pipsissewa", "pipul", "piquance", "piquancy", "piquant", "piquantly", "piquantness", "pique", "piqued", "piques", "piquet", "piracy", "pirana", "piranha", "pirate", "pirated", "pirates", "piratical", "piratically", "pirating", "pirog", "pirogi", "pirogue", "piroplasm", "piroshki", "pirouette", "pirouetting", "piroxicam", "pirozhki", "pisanosaur", "pisanosaurus", "piscary", "piscatorial", "piscatory", "piscina", "piscinae", "piscine", "piscivorous", "pisiform", "pismire", "piss", "pissed", "pisser", "pisses", "pissing", "pistachio", "piste", "pistia", "pistil", "pistillate", "pistillode", "pistol", "pistoleer", "pistolled", "pistolling", "piston", "pit", "pita", "pitahaya", "pitanga", "pitapat", "pitapatted", "pitapatting", "pitch", "pitchblende", "pitched", "pitcher", "pitcherful", "pitchers", "pitches", "pitchfork", "pitchier", "pitchiest", "pitching", "pitchman", "pitchstone", "pitchy", "piteous", "piteously", "pitfall", "pitfalls", "pith", "pithead", "pithecanthropi", "pithecanthropus", "pithecolobium", "pithier", "pithiest", "pithily", "pithiness", "pithoi", "pithos", "pithy", "pitiable", "pitiably", "pitied", "pities", "pitiful", "pitifully", "pitiless", "pitilessly", "pitilessness", "pitman", "pitocin", "piton", "pitprop", "pitressin", "pits", "pitsaw", "pitta", "pittance", "pitted", "pitting", "pituitary", "pity", "pitying", "pityingly", "pityriasis", "piute", "pivot", "pivotal", "pivoting", "pix", "pixel", "pixels", "pixie", "pixilated", "pixy", "pizza", "pizzas", "pizzaz", "pizzazz", "pizzeria", "pizzicato", "pkd", "pku", "placable", "placard", "placate", "placated", "placates", "placating", "placatingly", "placation", "placative", "placatory", "place", "placeable", "placebo", "placeboes", "placed", "placeholder", "placekicker", "placeman", "placement", "placenta", "placentae", "placental", "placentation", "placer", "places", "placeseeker", "placid", "placidity", "placidly", "placidness", "placidyl", "placing", "placket", "placoderm", "placoid", "plage", "plagiarisation", "plagiarise", "plagiarised", "plagiariser", "plagiarises", "plagiarising", "plagiarism", "plagiarist", "plagiaristic", "plagiarization", "plagiarize", "plagiarized", "plagiarizer", "plagiarizes", "plagiarizing", "plagiocephaly", "plagioclase", "plagioclastic", "plague", "plagued", "plagues", "plaguey", "plaguily", "plaguing", "plaguy", "plaice", "plaid", "plain", "plainchant", "plainclothesman", "plainly", "plainness", "plains", "plainsman", "plainsong", "plainspoken", "plaint", "plaintiff", "plaintiffs", "plaintive", "plaintively", "plaintiveness", "plait", "plaiter", "plan", "planar", "planaria", "planarian", "planate", "planation", "planchet", "planchette", "plane", "planeness", "planer", "planes", "planet", "planetal", "planetaria", "planetarium", "planetary", "planetesimal", "planetoid", "planets", "plangency", "plangent", "planimeter", "planing", "plank", "planking", "planks", "plankton", "planktonic", "planless", "planned", "planner", "planners", "planning", "planoconcave", "planoconvex", "planographic", "planography", "plans", "plant", "plantain", "plantal", "plantar", "plantation", "plantations", "planted", "planter", "planthopper", "plantigrade", "planting", "plantlet", "plants", "plantsman", "planula", "planulae", "plaque", "plaquenil", "plaques", "plash", "plashier", "plashiest", "plashy", "plasm", "plasma", "plasmablast", "plasmacyte", "plasmacytoma", "plasmapheresis", "plasmid", "plasmids", "plasmin", "plasminogen", "plasmodesma", "plasmodesmata", "plasmodia", "plasmodium", "plaster", "plasterboard", "plastered", "plasterer", "plastering", "plasters", "plasterwork", "plastic", "plastically", "plasticise", "plasticiser", "plasticises", "plasticity", "plasticize", "plasticizer", "plasticizes", "plastics", "plastid", "plastinate", "plastination", "plastique", "plastron", "plat", "platan", "plate", "plateau", "plateaux", "plateful", "platelayer", "platelet", "plateletpheresis", "platelets", "platelike", "platen", "plater", "plates", "platform", "platforms", "platier", "platiest", "plating", "platinize", "platinum", "platitude", "platitudes", "platitudinal", "platitudinarian", "platitudinize", "platitudinous", "platonic", "platonistic", "platoon", "plats", "plattdeutsch", "platted", "plattensee", "platter", "platting", "platy", "platyctenean", "platyhelminth", "platypus", "platyrhine", "platyrhinian", "platyrrhine", "platyrrhinian", "platyrrhinic", "platysma", "plaudit", "plausibility", "plausible", "plausibleness", "plausibly", "plausive", "plavix", "play", "playable", "playact", "playacting", "playactor", "playback", "playbill", "playbook", "playbox", "playboy", "playday", "played", "player", "players", "playfellow", "playful", "playfully", "playfulness", "playgoer", "playground", "playhouse", "playing", "playlet", "playlist", "playmaker", "playmate", "playoff", "playoffs", "playpen", "playroom", "plays", "playschool", "playscript", "playsuit", "plaything", "playtime", "playwright", "plaza", "plea", "pleach", "pleaches", "plead", "pleaded", "pleader", "pleading", "pleadingly", "pleads", "pleas", "pleasance", "pleasant", "pleasantly", "pleasantness", "pleasantry", "Please", "please", "pleased", "pleaser", "pleases", "pleasing", "pleasingly", "pleasingness", "pleasurable", "pleasurably", "pleasure", "pleasures", "pleat", "pleating", "pleats", "pleb", "plebe", "plebeian", "plebiscite", "plecopteran", "plectognath", "plectra", "plectranthus", "plectron", "plectrum", "pled", "pledge", "pledged", "pledgee", "pledger", "pledges", "pledging", "plena", "plenarily", "plenary", "plenipotentiary", "plenitude", "plenteous", "plenteously", "plenteousness", "plentiful", "plentifully", "plentifulness", "plentitude", "plenty", "plenum", "pleochroic", "pleochroism", "pleomorphic", "pleomorphism", "pleonasm", "pleonaste", "pleonastic", "pleopod", "plesiosaur", "plesiosaurus", "plessimeter", "plessor", "plethodont", "plethora", "plethoric", "plethysmograph", "pleura", "pleural", "pleuralgia", "pleurisy", "pleurocarp", "pleurocarpous", "pleurodont", "pleurodynia", "pleuron", "pleuropneumonia", "pleurothallis", "pleven", "pleximeter", "pleximetry", "plexor", "plexus", "plf", "pliability", "pliable", "pliancy", "pliant", "pliantness", "plica", "plicae", "plicate", "plicates", "plication", "plied", "plier", "plies", "plight", "plimsoll", "plinth", "plo", "ploce", "plod", "plodded", "plodder", "plodding", "ploddingly", "plods", "plonk", "plonking", "plonks", "plop", "plopped", "plopping", "plops", "plosion", "plosive", "plot", "plots", "plotted", "plotter", "plotting", "plough", "ploughboy", "ploughed", "ploughing", "ploughland", "ploughman", "ploughmen", "ploughs", "ploughshare", "ploughshares", "ploughwright", "plover", "plow", "plowboy", "plowed", "plower", "plowing", "plowland", "plowman", "plowmen", "plows", "plowshare", "plowshares", "plowwright", "ploy", "pls", "pluck", "plucked", "pluckier", "pluckiest", "pluckily", "pluckiness", "plucking", "plucks", "plucky", "plug", "plugboard", "plugged", "plugger", "plugging", "plughole", "plugs", "plum", "plumage", "plumaged", "plumate", "plumb", "plumbable", "plumbaginaceous", "plumbago", "plumber", "plumbery", "plumbic", "plumbing", "plumbism", "plumbous", "plumbs", "plumcot", "plume", "plumed", "plumelike", "plumes", "plumier", "plumiera", "plumiest", "plumlike", "plummet", "plummeted", "plummeting", "plummets", "plummier", "plummiest", "plummy", "plumose", "plump", "plumping", "plumpness", "plumps", "plumule", "plumy", "plunder", "plunderage", "plundered", "plunderer", "plundering", "plunders", "plunge", "plunged", "plunger", "plunges", "plunging", "plunk", "plunker", "plunking", "plunks", "pluperfect", "plural", "pluralisation", "pluralise", "pluralises", "pluralism", "pluralist", "pluralistic", "plurality", "pluralization", "pluralize", "pluralizes", "plus", "pluses", "plush", "plushy", "plutocracy", "plutocrat", "plutocratic", "plutocratical", "pluton", "plutonian", "plutonic", "plutonium", "pluviometer", "ply", "plyboard", "plyer", "plying", "plywood", "plz", "plzen", "pm", "pneumatic", "pneumatically", "pneumatics", "pneumatophore", "pneumobacilli", "pneumobacillus", "pneumococcal", "pneumococci", "pneumococcus", "pneumoconiosis", "pneumocytosis", "pneumoencephalogram", "pneumogastric", "pneumonectomy", "pneumonia", "pneumonic", "pneumonitis", "pneumonoconiosis", "pneumothorax", "pneumovax", "poaceae", "poach", "poached", "poacher", "poaches", "poaching", "pob", "pochard", "pock", "pocked", "pocket", "pocketable", "pocketbook", "pocketcomb", "pocketful", "pocketing", "pocketknife", "pocketknives", "pockets", "pockmark", "pockmarked", "pod", "podalgia", "podcast", "podcasts", "podded", "podding", "podetia", "podetium", "podgier", "podgiest", "podgy", "podia", "podiatrist", "podiatry", "podicipediformes", "podium", "podlike", "podocarp", "pods", "podsol", "podzol", "poeciliid", "poem", "poems", "poenology", "poesy", "poet", "poetess", "poetic", "poetical", "poetically", "poetics", "poetise", "poetiser", "poetises", "poetize", "poetizer", "poetizes", "poetry", "poets", "pogey", "pogge", "pogonia", "pogonion", "pogonip", "pogonophoran", "pogrom", "pogy", "poi", "poignance", "poignancy", "poignant", "poignantly", "poikilotherm", "poikilothermic", "poikilothermous", "poilu", "poinsettia", "point", "pointed", "pointedly", "pointedness", "pointel", "pointer", "pointillism", "pointillist", "pointillistic", "pointing", "pointless", "pointlessly", "pointlessness", "pointrel", "points", "pointsman", "poise", "poised", "poises", "poising", "poison", "poisonberry", "poisoned", "poisoner", "poisoning", "poisonings", "poisonous", "poisonously", "poisons", "poitou", "poivrade", "poke", "poked", "poker", "pokes", "pokeweed", "pokey", "pokier", "pokiest", "poking", "poky", "pol", "polack", "polar", "polarimeter", "polarisation", "polariscope", "polarise", "polarised", "polarises", "polarising", "polarity", "polarization", "polarize", "polarized", "polarizes", "polarizing", "polarographic", "polarography", "polder", "pole", "poleax", "poleaxe", "polecat", "poleis", "polemic", "polemical", "polemically", "polemicise", "polemicises", "polemicist", "polemicize", "polemicizes", "polemise", "polemises", "polemist", "polemize", "polemizes", "polemoniaceous", "polemonium", "polenta", "poler", "poles", "polestar", "police", "policeman", "polices", "policewoman", "policies", "policing", "policy", "policyholder", "polio", "poliomyelitis", "poliosis", "poliovirus", "polis", "polish", "polished", "polisher", "polishes", "polishing", "politburo", "polite", "politely", "politeness", "politesse", "politic", "political", "politically", "politician", "politicians", "politicisation", "politicise", "politicised", "politicises", "politicising", "politicization", "politicize", "politicized", "politicizes", "politicizing", "politick", "politico", "politics", "polity", "polka", "polkas", "poll", "pollard", "polled", "pollen", "pollenate", "pollenation", "pollex", "pollices", "pollinate", "pollinated", "pollinates", "pollinating", "pollination", "pollinator", "pollinia", "pollinium", "pollinosis", "polliwog", "polls", "pollster", "pollsters", "pollucite", "pollutant", "pollutants", "pollute", "polluted", "polluter", "polluters", "pollutes", "polluting", "pollution", "pollyannaish", "pollyfish", "pollywog", "polo", "polonaise", "polonium", "polony", "pols", "polska", "poltergeist", "poltroon", "poltroonery", "polyamide", "polyandrist", "polyandrous", "polyandry", "polyanthus", "polyarteritis", "polyatomic", "polybotria", "polybutene", "polybutylene", "polychaete", "polychasia", "polychasium", "polychete", "polychromatic", "polychrome", "polychromic", "polychromise", "polychromises", "polychromize", "polychromizes", "polycillin", "polycrystalline", "polycythemia", "polydactyl", "polydactylous", "polydactyly", "polydipsia", "polyelectrolyte", "polyester", "polyestrous", "polyethylene", "polyfoam", "polygamist", "polygamous", "polygamy", "polygene", "polygenic", "polyglot", "polygon", "polygonal", "polygonally", "polygraph", "polygynist", "polygynous", "polygyny", "polyhedra", "polyhedral", "polyhedron", "polyhidrosis", "polymastigote", "polymath", "polymer", "polymerase", "polymerases", "polymeric", "polymerisation", "polymerise", "polymerises", "polymerization", "polymerize", "polymerizes", "polymers", "polymorph", "polymorphemic", "polymorphic", "polymorphism", "polymorphisms", "polymorphous", "polymox", "polymyositis", "polymyxin", "polynesian", "polyneuritis", "polynomial", "polynucleotide", "polynya", "polyoestrous", "polyoicous", "polyoma", "polyose", "polyp", "polyparia", "polyparium", "polypectomy", "polypeptide", "polypeptides", "polypetalous", "polyphase", "polyphone", "polyphonic", "polyphonically", "polyphonous", "polyphony", "polyphosphate", "polypi", "polyplacophore", "polyploid", "polyploidy", "polypodiales", "polypody", "polypore", "polypropene", "polypropenonitrile", "polypropylene", "polyptoton", "polypus", "polysaccharide", "polysemant", "polysemantic", "polysemous", "polysemy", "polysomy", "polystyrene", "polysyllabic", "polysyllabically", "polysyllable", "polysyndeton", "polysynthetic", "polytechnic", "polytetrafluoroethylene", "polytheism", "polytheist", "polytheistic", "polythene", "polytonal", "polytonalism", "polytonality", "polyunsaturated", "polyurethan", "polyurethane", "polyuria", "polyvalence", "polyvalency", "polyvalent", "polyzoa", "polyzoan", "polyzoaria", "polyzoarium", "pom", "pomade", "pomaded", "pomades", "pomatum", "pome", "pomegranate", "pomelo", "pomfret", "pommel", "pommelled", "pommelling", "pommels", "pommy", "pomologist", "pomology", "pomp", "pompadour", "pompadours", "pompano", "pompon", "pomposity", "pompous", "pompously", "pompousness", "ponce", "poncho", "pond", "ponder", "ponderable", "ponderer", "pondering", "ponderosa", "ponderosity", "ponderous", "ponderously", "ponderousness", "ponders", "ponds", "pondweed", "pone", "pong", "pongee", "pongid", "poniard", "ponka", "pons", "ponstel", "pontes", "pontifex", "pontiff", "pontifical", "pontificate", "pontificates", "pontificating", "pontifices", "pontoon", "pontos", "pony", "ponycart", "ponytail", "pooch", "pood", "poodle", "poof", "pool", "pooled", "pooler", "pooling", "poolroom", "pools", "poon", "poop", "poor", "poorer", "poorest", "poorhouse", "poorly", "poorness", "poorwill", "poove", "pop", "popcorn", "pope", "popery", "popeyed", "popgun", "popinjay", "popish", "popishly", "poplar", "poplin", "popliteal", "popover", "popped", "poppet", "popping", "poppy", "poppycock", "pops", "popsicle", "populace", "popular", "popularisation", "popularise", "popularised", "populariser", "popularises", "popularising", "popularism", "popularity", "popularization", "popularize", "popularized", "popularizer", "popularizes", "popularizing", "popularly", "populate", "populated", "populates", "populating", "population", "populations", "populism", "populist", "populous", "porbeagle", "porc", "porcelain", "porcelainize", "porch", "porches", "porcine", "porcupine", "porcupinefish", "pore", "pored", "pores", "porgy", "poriferan", "poriferous", "poring", "pork", "porkchop", "porker", "porkfish", "porkholt", "porkier", "porkiest", "porkpie", "porky", "porn", "porno", "pornographer", "pornographic", "pornographically", "pornography", "poroporo", "porose", "porosity", "porous", "porousness", "porphyria", "porphyrin", "porphyritic", "porphyry", "porpoise", "porridge", "porringer", "port", "porta", "portability", "portable", "portage", "portal", "portals", "portamenti", "portamento", "portcullis", "portend", "portending", "portends", "portent", "portentous", "portentously", "porter", "porterage", "porterhouse", "portfolio", "portfolios", "porthole", "portico", "porticoed", "porticoes", "portiere", "porting", "portion", "portions", "portlier", "portliest", "portly", "portmanteau", "portmanteaux", "portrait", "portraitist", "portraits", "portraiture", "portray", "portrayal", "portrayed", "portrayer", "portraying", "portrays", "ports", "Portugal", "portugal", "portuguese", "portulaca", "portwatcher", "pose", "posed", "poser", "poses", "poseur", "poseuse", "posh", "posing", "posit", "positing", "position", "positionable", "positional", "positioned", "positioner", "positioning", "positions", "positive", "positively", "positiveness", "positives", "positivism", "positivist", "positivistic", "positivity", "positron", "posits", "posology", "posse", "posseman", "possess", "possessed", "possesses", "possessing", "possession", "possessions", "possessive", "possessively", "possessiveness", "possessor", "posset", "possibilities", "possibility", "possible", "possibleness", "possibly", "possum", "possumwood", "post", "post-crash", "post-earthquake", "post-electoral", "post-game", "post-hearing", "post-production", "post-quake", "post-split", "post-war", "postage", "postal", "postbag", "postbiblical", "postbox", "postcard", "postcards", "postcava", "postcode", "postdate", "postdates", "postdiluvian", "postdoc", "postdoctoral", "posted", "poster", "posterboard", "posterior", "posteriority", "posterity", "postern", "posters", "postexilic", "postfix", "postganglionic", "postglacial", "postgraduate", "posthitis", "posthole", "posthouse", "posthumous", "posthumously", "postiche", "postictal", "postilion", "postillion", "postindustrial", "posting", "postings", "postliminia", "postliminium", "postlude", "postman", "postmark", "postmarked", "postmarking", "postmaster", "postmenopausal", "postmeridian", "postmillennial", "postmistress", "postmodern", "postmodernism", "postmodernist", "postmortal", "postmortem", "postnatal", "postnuptial", "postoperative", "postoperatively", "postpaid", "postpartum", "postpone", "postponed", "postponement", "postponer", "postpones", "postponing", "postpose", "postposition", "postpositive", "postprandial", "posts", "postscript", "postulant", "postulate", "postulates", "postulating", "postulation", "postulational", "postulator", "postural", "posture", "posturer", "posturing", "postwar", "posy", "pot", "potable", "potage", "potamogale", "potash", "potassium", "potation", "potato", "potatoes", "potbellied", "potbelly", "potboiler", "potbound", "potboy", "poteen", "potence", "potency", "potent", "potentate", "potential", "potentiality", "potentially", "potentials", "potentiate", "potentiates", "potentiating", "potentiation", "potentiometer", "potently", "potful", "pothead", "pother", "potherb", "potholder", "pothole", "potholed", "potholer", "pothook", "pothos", "pothouse", "pothunter", "potion", "potlatch", "potluck", "potman", "potomania", "potoroo", "potpie", "potpourri", "pots", "potsherd", "potshot", "pottage", "potted", "Potter", "potter", "potterer", "potters", "pottery", "pottier", "pottiest", "potting", "pottle", "potto", "potty", "POTUS", "potus", "potyokin", "pouch", "pouched", "pouchlike", "poudrin", "pouf", "pouffe", "pouffes", "poufs", "poulet", "poulette", "poulterer", "poultice", "poultry", "poultryman", "pounce", "pounces", "pouncing", "pound", "poundage", "poundal", "pounded", "pounder", "pounding", "pounds", "pour", "pourboire", "poured", "pouring", "pours", "pout", "pouter", "pouting", "poutingly", "pouts", "poverty", "pow", "powder", "powdered", "powderer", "powderiness", "powdering", "powderise", "powderises", "powderize", "powderizes", "powderpuff", "powdery", "power", "powerboat", "powerbroker", "powered", "powerful", "powerfully", "powerfulness", "powerhouse", "powering", "powerless", "powerlessly", "powerlessness", "powers", "powerwash", "powerwashes", "powwow", "pox", "poxvirus", "poyou", "pozsony", "PP.", "pp.", "ppk", "pplo", "ppp", "pr", "practicability", "practicable", "practicableness", "practicably", "practical", "practicality", "practically", "practice", "practiced", "practices", "practician", "practicing", "practise", "practised", "practises", "practising", "practitioner", "practitioners", "praenomen", "praenomina", "praesidium", "praesidiums", "praetor", "praetorial", "praetorian", "praetorium", "praetorship", "prag", "pragmatic", "pragmatical", "pragmatically", "pragmatism", "pragmatist", "praha", "prairie", "praise", "praised", "praiseful", "praises", "praiseworthily", "praiseworthiness", "praiseworthy", "praising", "praisworthiness", "prakritic", "praline", "pram", "prance", "prancer", "prances", "prancing", "prandial", "prang", "prangs", "prank", "prankish", "prankishness", "prankster", "praseodymium", "prat", "prate", "prater", "prates", "pratfall", "pratincole", "prattle", "prattler", "prattles", "prattling", "pravachol", "pravastatin", "prawn", "praxes", "praxis", "pray", "praya", "prayer", "prayerbook", "prayerful", "prayers", "praying", "prays", "prazosin", "prblm", "prblms", "PRC", "prc", "pre-approved", "pre-cooked", "pre-crash", "pre-eminence", "pre-empt", "pre-empted", "pre-existing", "pre-kindergarten", "pre-merger", "pre-noon", "pre-publication", "pre-recorded", "Pre-refunded", "pre-refunded", "pre-register", "pre-registered", "pre-sale", "pre-set", "pre-signed", "pre-tax", "pre-tested", "pre-trading", "Pre-trial", "pre-trial", "pre-try", "preach", "preacher", "preaches", "preachier", "preachiest", "preachification", "preachified", "preachifies", "preachify", "preaching", "preachment", "preachy", "preadolescent", "preamble", "preanal", "prearrange", "prearranged", "prearrangement", "prearranges", "preassemble", "preassembles", "prebend", "prebendary", "precancel", "precancelled", "precancelling", "precancels", "precancerous", "precarious", "precariously", "precariousness", "precast", "precative", "precatory", "precaution", "precautional", "precautionary", "precautions", "precava", "precede", "preceded", "precedence", "precedency", "precedent", "precedented", "precedentedly", "precedential", "precedents", "precedes", "preceding", "precentor", "precentorship", "precept", "preceptor", "preceptorship", "precess", "precesses", "precession", "prechlorination", "precinct", "preciosity", "precious", "preciously", "preciousness", "precipice", "precipitance", "precipitancy", "precipitant", "precipitate", "precipitated", "precipitately", "precipitateness", "precipitates", "precipitating", "precipitation", "precipitator", "precipitin", "precipitous", "precipitously", "precipitousness", "precis", "precise", "precisely", "preciseness", "precises", "precision", "preclinical", "preclude", "precluded", "precludes", "precluding", "preclusion", "preclusive", "precocial", "precocious", "precociously", "precociousness", "precocity", "precognition", "precognitive", "preconceive", "preconceived", "preconception", "preconcerted", "precondition", "preconditioned", "precook", "precooked", "precooks", "precooled", "precordial", "precordium", "precursor", "precursors", "precursory", "predaceous", "predacious", "predate", "predates", "predating", "predation", "predator", "predators", "predatory", "predecease", "predeceases", "predecessor", "predecessors", "predella", "predelle", "predestinarian", "predestinarianism", "predestinate", "predestination", "predestinationist", "predestine", "predestined", "predestines", "predetermination", "predetermine", "predetermined", "predetermines", "predicament", "predicate", "predicated", "predicates", "predication", "predicative", "predicatively", "predicator", "predict", "predictability", "predictable", "predictably", "predicted", "predicting", "prediction", "predictions", "predictive", "predictor", "predictors", "predicts", "predigest", "predigested", "predigests", "predilection", "predispose", "predisposed", "predisposes", "predisposing", "predisposition", "prednisolone", "prednisone", "predominance", "predominant", "predominantly", "predominate", "predominates", "predominating", "predomination", "preeclampsia", "preemie", "preeminence", "preeminent", "preeminently", "preempt", "preempting", "preemption", "preemptive", "preemptor", "preempts", "preen", "preening", "preens", "preexist", "preexistence", "preexistent", "preexisting", "preexists", "prefab", "prefabricate", "prefabricates", "prefabricating", "prefabrication", "preface", "prefaces", "prefacing", "prefaded", "prefatorial", "prefatory", "prefect", "prefectural", "prefecture", "prefer", "preferable", "preferably", "preference", "preferences", "preferent", "preferential", "preferentially", "preferment", "preferred", "preferring", "prefers", "prefiguration", "prefigurative", "prefigure", "prefiguring", "prefix", "prefixation", "preform", "preformation", "preforms", "prefrontal", "pregnancies", "pregnancy", "pregnanediol", "pregnant", "preheat", "preheats", "prehend", "prehends", "prehensile", "prehension", "prehensor", "prehistoric", "prehistorical", "prehistory", "preindication", "preisolate", "prejudge", "prejudgement", "prejudges", "prejudging", "prejudgment", "prejudice", "prejudiced", "prejudices", "prejudicial", "prejudicing", "prejudicious", "prelacy", "prelapsarian", "prelate", "prelature", "prelim", "preliminary", "preliterate", "prelone", "prelude", "premarital", "premature", "prematurely", "prematureness", "prematurity", "premaxilla", "premaxillae", "premedical", "premeditate", "premeditated", "premeditates", "premeditation", "premenopausal", "premenstrual", "premie", "premier", "premiere", "premiered", "premieres", "premiering", "premiership", "premise", "premises", "premiss", "premium", "premiums", "premix", "premolar", "premonition", "premonitory", "prenatal", "prenomen", "prenomina", "prenominal", "prentice", "prenuptial", "preoccupancy", "preoccupation", "preoccupied", "preoccupies", "preoccupy", "preoccupying", "preoperative", "preordain", "preordains", "preordination", "prep", "prepackaged", "prepacked", "prepaid", "preparation", "preparations", "preparative", "preparatory", "prepare", "prepared", "preparedness", "prepares", "preparing", "prepay", "prepayment", "prepays", "preponderance", "preponderant", "preponderantly", "preponderate", "preponderates", "preponderating", "prepose", "preposes", "preposition", "prepositional", "prepositionally", "prepossess", "prepossesses", "prepossessing", "prepossession", "preposterous", "preposterously", "prepotency", "preprandial", "prepubertal", "prepuberty", "prepubescent", "prepuce", "prepupal", "prerecord", "prerecorded", "prerecords", "prerequisite", "prerequisites", "prerogative", "presa", "presage", "presages", "presaging", "presbyope", "presbyopia", "presbyopic", "presbyter", "presbytery", "preschool", "preschooler", "preschoolers", "prescience", "prescient", "presciently", "prescribe", "prescribed", "prescribes", "prescribing", "prescript", "prescription", "prescriptions", "prescriptive", "prescriptivism", "prese", "preseason", "presence", "present", "presentable", "presentably", "presentation", "presentational", "presentations", "presented", "presenter", "presentiment", "presenting", "presentism", "presentist", "presently", "presentment", "presentness", "presents", "preservable", "preservation", "preservationist", "preservative", "preserve", "preserved", "preserver", "preserves", "preserving", "preset", "preside", "presided", "presidency", "president", "presidential", "presidentially", "presidents", "presidentship", "presides", "presiding", "presidio", "presidium", "presidiums", "presignified", "presignifies", "presignify", "presocratic", "press", "pressburg", "pressed", "presses", "pressing", "pressingly", "pressman", "pressmark", "pressor", "pressure", "pressured", "pressures", "pressuring", "pressurisation", "pressurise", "pressurised", "pressurises", "pressurising", "pressurization", "pressurize", "pressurized", "pressurizes", "pressurizing", "prestidigitation", "prestidigitator", "prestige", "prestigious", "prestigiousness", "prestissimo", "presto", "presumable", "presumably", "presume", "presumed", "presumes", "presuming", "presumption", "presumptive", "presumptively", "presumptuous", "presumptuously", "presumptuousness", "presuppose", "presupposes", "presupposition", "presymptomatic", "preteen", "preteenager", "pretence", "pretences", "pretend", "pretended", "pretender", "pretending", "pretends", "pretense", "pretenses", "pretension", "pretentious", "pretentiously", "pretentiousness", "preterist", "preterit", "preterite", "preterition", "pretermission", "pretermit", "pretermits", "pretermitted", "pretermitting", "preternatural", "preternaturally", "pretext", "pretor", "pretorial", "pretorian", "pretorium", "pretrial", "prettied", "prettier", "prettiest", "prettified", "prettifies", "prettify", "prettily", "prettiness", "pretty", "pretzel", "preussen", "prevacid", "prevail", "prevailed", "prevailing", "prevails", "prevalence", "prevalent", "prevaricate", "prevaricates", "prevaricating", "prevarication", "prevaricator", "prevenient", "prevent", "preventable", "preventative", "prevented", "preventing", "prevention", "preventive", "prevents", "preview", "previewing", "previews", "previous", "previously", "previse", "previses", "prevision", "prevue", "prewar", "prexy", "prey", "preying", "priapic", "priapism", "price", "priced", "priceless", "pricelessness", "prices", "pricey", "pricier", "priciest", "pricing", "prick", "pricked", "pricker", "pricket", "pricking", "prickle", "prickleback", "pricklier", "prickliest", "prickliness", "prickling", "prickly", "pricks", "prickteaser", "pricy", "pride", "prideful", "pridefulness", "prides", "priding", "pried", "priest", "priestcraft", "priestess", "priesthood", "priestlier", "priestliest", "priestlike", "priestly", "priests", "prig", "prigged", "prigging", "priggish", "priggishly", "priggishness", "prilosec", "prim", "prima", "primacy", "primaeval", "primal", "primality", "primaquine", "primaries", "primarily", "primary", "primate", "primates", "primateship", "primatology", "prime", "primed", "primer", "primers", "primeval", "primi", "primidone", "primigravida", "primigravidae", "priming", "primipara", "primiparae", "primiparous", "primitive", "primitively", "primitiveness", "primitivism", "primly", "primmed", "primmer", "primmest", "primming", "primness", "primo", "primogenitor", "primogeniture", "primordia", "primordial", "primordium", "primp", "primping", "primps", "primrose", "prims", "primula", "primus", "prince", "princedom", "princelier", "princeliest", "princeling", "princely", "princes", "princess", "princewood", "principal", "principality", "principally", "principals", "principalship", "Principe", "principe", "principen", "principia", "principium", "principle", "principled", "principles", "prinival", "prink", "prinks", "print", "printable", "printed", "printer", "printers", "printing", "printmaker", "printmaking", "printout", "prints", "prion", "prions", "prior", "prioress", "priorities", "prioritisation", "prioritise", "prioritised", "prioritises", "prioritising", "prioritization", "prioritize", "prioritized", "prioritizes", "prioritizing", "priority", "priorship", "priory", "priscoan", "prise", "prises", "prism", "prismatic", "prismatoid", "prismoid", "prison", "prisonbreak", "prisoner", "prisoners", "prisonlike", "prisons", "prissier", "prissiest", "prissily", "prissy", "pristine", "privacy", "private", "privateer", "privateersman", "privately", "privateness", "privation", "privatisation", "privatisations", "privatise", "privatised", "privatises", "privatising", "privatization", "privatizations", "privatize", "privatized", "privatizes", "privatizing", "privet", "privier", "priviest", "privilege", "privileged", "privileges", "privileging", "privily", "privine", "privy", "prize", "prized", "prizefight", "prizefighter", "prizefighting", "prizes", "prizewinning", "prizing", "prn", "pro", "pro-abortion", "pro-active", "pro-choice", "pro-consumer", "pro-consumption", "pro-democracy", "pro-enterprise", "pro-environment", "pro-family", "pro-forma", "pro-investment", "Pro-life", "pro-life", "pro-rata", "pro-selected", "pro-union", "proaccelerin", "proactive", "probabilism", "probabilistic", "probabilistically", "probabilities", "probability", "probable", "probably", "probate", "probation", "probationary", "probationer", "probative", "probatory", "probe", "probenecid", "probes", "probing", "probiotic", "probity", "problem", "problematic", "problematical", "problematically", "problems", "proboscidean", "proboscides", "proboscidian", "proboscis", "procaine", "procarbazine", "procardia", "procaryote", "procaryotic", "procedural", "procedure", "procedures", "proceed", "proceeded", "proceeding", "proceedings", "proceeds", "process", "processed", "processes", "processing", "procession", "processional", "processions", "processor", "processors", "prochlorperazine", "proclaim", "proclaimed", "proclaiming", "proclaims", "proclamation", "proclivity", "proconsul", "proconsular", "proconsulate", "proconsulship", "proconvertin", "procrastinate", "procrastinates", "procrastinating", "procrastination", "procrastinator", "procreate", "procreates", "procreation", "procreative", "procrustean", "proctalgia", "proctitis", "proctocele", "proctologist", "proctology", "proctoplasty", "proctor", "proctorship", "proctoscope", "proctoscopy", "procumbent", "procurable", "procural", "procurance", "procurator", "procure", "procurement", "procurer", "procures", "procuress", "procuring", "procyclidine", "procyonid", "prod", "prodded", "prodding", "prodigal", "prodigality", "prodigally", "prodigious", "prodigiously", "prodigy", "prodroma", "prodromal", "prodrome", "prodromic", "prods", "produce", "produced", "producer", "producers", "produces", "producing", "product", "production", "productions", "productive", "productively", "productiveness", "productivity", "products", "proenzyme", "prof", "PROF.", "Prof.", "prof.", "profanation", "profanatory", "profane", "profaned", "profanely", "profaneness", "profanity", "profess", "professed", "professedly", "professes", "professing", "profession", "professional", "professionalisation", "professionalise", "professionalised", "professionalises", "professionalising", "professionalism", "professionalization", "professionalize", "professionalized", "professionalizes", "professionalizing", "professionally", "professionals", "professions", "professor", "professorial", "professorially", "professors", "professorship", "proffer", "proffered", "proffers", "proficiency", "proficient", "proficiently", "profile", "profiled", "profiles", "profiling", "profit", "profitability", "profitable", "profitableness", "profitably", "profited", "profiteer", "profiteering", "profiterole", "profiting", "profitless", "profitlessly", "profits", "profligacy", "profligate", "profligately", "profound", "profoundly", "profoundness", "profundity", "profuse", "profusely", "profuseness", "profusion", "progenitor", "progenitors", "progeny", "progeria", "progestational", "progesterone", "progestin", "progestogen", "proglottid", "proglottides", "prognathic", "prognathism", "prognathous", "prognoses", "prognosis", "prognostic", "prognosticate", "prognosticates", "prognosticating", "prognostication", "prognosticative", "prognosticator", "program", "programing", "programma", "programme", "programmed", "programmer", "programmers", "programmes", "programming", "programs", "progress", "progressed", "progresses", "progressing", "progression", "progressive", "progressively", "progressiveness", "progressives", "progressivism", "progressivity", "progymnosperm", "prohibit", "prohibited", "prohibiting", "prohibition", "prohibitionist", "prohibitive", "prohibitively", "prohibitory", "prohibits", "proinflammatory", "project", "projected", "projectile", "projecting", "projection", "projectionist", "projections", "projector", "projects", "prokaryote", "prokaryotes", "prokaryotic", "prokayotae", "prolactin", "prolamine", "prolapse", "prolapsus", "prolate", "prole", "prolegomena", "prolegomenon", "prolepses", "prolepsis", "proletarian", "proletariat", "proliferate", "proliferated", "proliferates", "proliferating", "proliferation", "prolific", "prolificacy", "proline", "prolix", "prolixity", "prolixness", "prolog", "prologed", "prologing", "prologise", "prologises", "prologize", "prologizes", "prologs", "prologue", "prologues", "prologuize", "prolong", "prolongation", "prolonge", "prolonged", "prolonging", "prolusion", "prolusory", "prom", "promenade", "promenading", "promethazine", "promethium", "prominence", "prominent", "prominently", "promiscuity", "promiscuous", "promiscuously", "promiscuousness", "promise", "promised", "promisee", "promiser", "promises", "promising", "promisingly", "promisor", "promissory", "promo", "promontory", "promos", "promote", "promoted", "promoter", "promoters", "promotes", "promoting", "promotion", "promotional", "promotions", "promotive", "prompt", "promptbook", "prompted", "prompter", "prompting", "promptitude", "promptly", "promptness", "prompts", "promulgate", "promulgated", "promulgates", "promulgating", "promulgation", "promulgator", "promycelia", "promycelium", "pronate", "pronates", "pronation", "pronator", "prone", "proneness", "pronephra", "pronephroi", "pronephros", "prong", "prongbuck", "pronged", "pronghorn", "prongy", "pronk", "pronks", "pronominal", "pronoun", "pronounce", "pronounceable", "pronounced", "pronouncement", "pronouncements", "pronounces", "pronouncing", "pronto", "pronuclei", "pronucleus", "pronunciamento", "pronunciation", "pronunciations", "proof", "proofed", "proofing", "proofread", "proofreader", "proofreading", "prop", "propaedeutic", "propaganda", "propagandise", "propagandised", "propagandises", "propagandising", "propagandist", "propagandistic", "propagandize", "propagandized", "propagandizes", "propagandizing", "propagate", "propagates", "propagating", "propagation", "propagative", "propagator", "propanal", "propanamide", "propane", "propanediol", "propanol", "propanolol", "propanone", "proparoxytone", "propel", "propellant", "propelled", "propellent", "propeller", "propelling", "propellor", "propels", "propenal", "propene", "propenoate", "propenonitrile", "propensity", "proper", "properly", "properness", "propertied", "properties", "property", "propertyless", "prophase", "prophecies", "prophecy", "prophesied", "prophesier", "prophesies", "prophesy", "prophesying", "prophet", "prophetess", "prophetic", "prophetical", "prophetically", "prophylactic", "prophylaxis", "prophyll", "propinquity", "propionaldehyde", "propitiate", "propitiates", "propitiation", "propitiative", "propitiatory", "propitious", "propitiously", "propitiousness", "propjet", "propman", "proponent", "proponents", "proportion", "proportionable", "proportional", "proportionality", "proportionally", "proportionate", "proportionately", "proportionateness", "proportions", "proposal", "proposals", "propose", "proposed", "proposer", "proposes", "proposing", "propositi", "proposition", "propositioning", "propositus", "propound", "propounding", "propounds", "propoxyphene", "propped", "propping", "proprietary", "proprietor", "proprietorship", "proprietress", "propriety", "proprioception", "proprioceptive", "proprioceptor", "proprionamide", "props", "proptoses", "proptosis", "propulsion", "propulsive", "propyl", "propyla", "propylaea", "propylaeum", "propylene", "propylon", "propylthiouracil", "prorate", "prorates", "proration", "prorogation", "prorogue", "pros", "prosaic", "prosaically", "prosaicness", "proscenia", "proscenium", "prosciutto", "proscribe", "proscribed", "proscribes", "proscribing", "proscription", "prose", "prosecute", "prosecuted", "prosecutes", "prosecuting", "prosecution", "prosecutions", "prosecutor", "prosecutors", "proselyte", "proselytise", "proselytised", "proselytiser", "proselytisers", "proselytises", "proselytising", "proselytism", "proselytize", "proselytized", "proselytizer", "proselytizers", "proselytizes", "proselytizing", "prosencephala", "prosencephalon", "proserpine", "prosier", "prosiest", "prosily", "prosimian", "prosiness", "prosodic", "prosodion", "prosody", "prosom", "prosopopoeia", "prospect", "prospecting", "prospective", "prospector", "prospects", "prospectus", "prosper", "prospered", "prospering", "prosperity", "prosperous", "prosperously", "prospers", "prospicience", "prospicient", "prostaglandin", "prostate", "prostatectomy", "prostatic", "prostatitis", "prostheon", "prostheses", "prosthesis", "prosthetic", "prosthetics", "prosthetist", "prosthion", "prosthodontia", "prosthodontic", "prosthodontics", "prosthodontist", "prostigmin", "prostitute", "prostitutes", "prostituting", "prostitution", "prostomia", "prostomium", "prostrate", "prostrates", "prostrating", "prostration", "prostyle", "prosy", "protactinium", "protagonism", "protagonist", "protamine", "protanopia", "protanopic", "protases", "protasis", "protea", "protean", "protease", "proteases", "protect", "protected", "protecting", "protection", "protectionism", "protectionist", "protections", "protective", "protectively", "protectiveness", "protector", "protectorate", "protectorship", "protects", "protege", "protegee", "protein", "proteinaceous", "proteinase", "proteins", "proteinuria", "proteolysis", "proteolytic", "proteome", "proteomes", "proteomics", "proteosome", "proterozoic", "protest", "protestant", "protestation", "protested", "protester", "protesters", "protesting", "protests", "prothalamia", "prothalamion", "prothalamium", "prothalli", "prothallia", "prothallium", "prothallus", "prothoraces", "prothorax", "prothrombin", "prothrombinase", "protirelin", "protist", "protistan", "proto", "protoactinium", "protoanthropology", "protoarchaeology", "protoarcheology", "protoavis", "protoceratops", "protocol", "protocols", "protoctist", "protogeometric", "protoheme", "protohemin", "protohippus", "protohistory", "protology", "protomammal", "proton", "protonema", "protonemata", "protoplasm", "protoplast", "prototherian", "prototypal", "prototype", "prototypes", "prototypic", "prototypical", "protozoa", "protozoal", "protozoan", "protozoic", "protozoological", "protozoologist", "protozoology", "protozoon", "protract", "protracted", "protractedly", "protractible", "protractile", "protraction", "protractor", "protracts", "protriptyline", "protrude", "protrudes", "protruding", "protrusible", "protrusile", "protrusion", "protrusions", "protrusive", "protuberance", "protuberant", "protuberate", "protuberates", "proturan", "proud", "proudly", "proustian", "provability", "provable", "provably", "prove", "proved", "proven", "provenance", "provencal", "provender", "provenience", "proventil", "proventriculi", "proventriculus", "provera", "proverb", "proverbial", "proverbially", "proverbs", "proves", "provide", "provided", "provident", "providential", "providentially", "providently", "provider", "providers", "provides", "providing", "province", "provinces", "provincial", "provincialism", "provincially", "proving", "provirus", "provision", "provisional", "provisionally", "provisionary", "provisioner", "provisions", "proviso", "provisoes", "provisory", "provitamin", "provocateur", "provocation", "provocative", "provocatively", "provoke", "provoked", "provoker", "provokes", "provoking", "provokingly", "provost", "prow", "prowess", "prowl", "prowler", "prowling", "prowls", "prox", "proxemics", "proximal", "proximate", "proximity", "proximo", "proxy", "prozac", "prs", "prude", "prudence", "prudent", "prudential", "prudently", "prudery", "prudish", "prudishly", "prudishness", "prune", "pruned", "pruner", "prunes", "pruning", "pruno", "prurience", "pruriency", "prurient", "pruriently", "prurigo", "pruritus", "prussian", "pry", "prying", "pryingly", "prytanea", "prytaneum", "Pr\xEDncipe", "pr\xEDncipe", "psa", "psalm", "psalmist", "psalmody", "psalteria", "psalterium", "psaltery", "psammoma", "psephologist", "psephology", "pseud", "pseudo", "pseudo-lobbyists", "pseudobulb", "pseudocarp", "pseudocyesis", "pseudoephedrine", "pseudohallucination", "pseudohermaphrodite", "pseudohermaphroditic", "pseudohermaphroditism", "pseudomonad", "pseudonym", "pseudonymous", "pseudoperipteral", "pseudophloem", "pseudopod", "pseudopodia", "pseudopodium", "pseudoprostyle", "pseudorubella", "pseudoscience", "pseudoscientific", "pseudoscorpion", "pseudoscorpiones", "pseudoscorpionida", "pseudosmallpox", "pseudovariola", "psf", "psi", "psilocin", "psilocybin", "psilomelane", "psilophyte", "psilophyton", "psilosis", "psilotatae", "psittacosaur", "psittacosaurus", "psittacosis", "psoas", "psocid", "psoriasis", "pst", "psyche", "psychedelia", "psychedelic", "psychiatric", "psychiatrical", "psychiatrist", "psychiatrists", "psychiatry", "psychic", "psychical", "psychically", "psycho", "psychoactive", "psychoanalyse", "psychoanalysed", "psychoanalyses", "psychoanalysing", "psychoanalysis", "psychoanalyst", "psychoanalytic", "psychoanalytical", "psychoanalyze", "psychoanalyzed", "psychoanalyzes", "psychoanalyzing", "psychobabble", "psychodid", "psychodynamics", "psychogenesis", "psychogenetic", "psychogenic", "psychokinesis", "psychokinetic", "psycholinguist", "psycholinguistic", "psycholinguistics", "psychological", "psychologically", "psychologist", "psychologists", "psychology", "psychometric", "psychometrics", "psychometrika", "psychometry", "psychomotor", "psychoneuroses", "psychoneurosis", "psychoneurotic", "psychonomics", "psychopath", "psychopathic", "psychopathologic", "psychopathological", "psychopathology", "psychopathy", "psychopharmacological", "psychopharmacology", "psychophysicist", "psychophysics", "psychophysiology", "psychopomp", "psychoses", "psychosexual", "psychosexuality", "psychosis", "psychosomatic", "psychosurgery", "psychotherapeutic", "psychotherapeutics", "psychotherapist", "psychotherapy", "psychotic", "psychotropic", "psychrometer", "psylla", "psyllid", "psyllium", "psyop", "pt", "PT.", "Pt.", "pt.", "ptarmigan", "pteretis", "pteridological", "pteridologist", "pteridology", "pteridophyte", "pteridosperm", "pteridospermaphyta", "pterion", "pterodactyl", "pteropogon", "pterosaur", "pterygia", "pterygium", "pteryla", "pterylae", "pto", "ptolemaic", "ptomain", "ptomaine", "ptoses", "ptosis", "ptsd", "PTY.", "Pty.", "pty.", "ptyalin", "ptyalise", "ptyalism", "ptyalith", "ptyalize", "pub", "pubbed", "pubbing", "pubertal", "puberty", "puberulent", "pubes", "pubescence", "pubescent", "pubic", "pubis", "public", "publically", "publican", "publication", "publications", "publicise", "publicised", "publiciser", "publicises", "publicising", "publicist", "publicity", "publicize", "publicized", "publicizer", "publicizes", "publicizing", "publicly", "publish", "publishable", "published", "publisher", "publishers", "publishes", "publishing", "pubs", "puccoon", "puce", "pucka", "pucker", "puckerbush", "puckering", "puckers", "puckish", "puckishly", "puckishness", "pud", "pudding", "puddingheaded", "puddingwife", "puddle", "puddler", "puddles", "puddling", "pudenda", "pudendal", "pudendum", "pudge", "pudgier", "pudgiest", "pudginess", "pudgy", "puerile", "puerility", "puerpera", "puerperal", "puerperium", "puff", "puffball", "puffbird", "puffed", "puffer", "pufferfish", "puffery", "puffier", "puffiest", "puffin", "puffiness", "puffing", "puffs", "puffy", "pug", "pugged", "pugging", "pugilism", "pugilist", "pugilistic", "pugnacious", "pugnaciously", "pugnacity", "puissance", "puissant", "puka", "puke", "pukes", "puking", "pukka", "puku", "pul", "pula", "pulasan", "pulassan", "pulchritude", "pulchritudinous", "pule", "puli", "pull", "pullback", "pulled", "puller", "pullet", "pulley", "pulling", "pullout", "pullover", "pulls", "pullulate", "pullulates", "pullulation", "pulmonary", "pulmonic", "pulp", "pulpier", "pulpiest", "pulpiness", "pulpit", "pulpwood", "pulpy", "pulque", "pulsar", "pulsate", "pulsates", "pulsating", "pulsation", "pulse", "pulseless", "pulses", "pulsing", "pulverisation", "pulverise", "pulverised", "pulverises", "pulverising", "pulverization", "pulverize", "pulverized", "pulverizes", "pulverizing", "pulvilli", "pulvillus", "pulvini", "pulvinus", "puma", "pumice", "pummel", "pummeled", "pummelled", "pummelling", "pummelo", "pummels", "pump", "pumped", "pumpernickel", "pumping", "pumpkin", "pumpkinseed", "pumps", "pun", "punch", "punchayet", "punchball", "punchboard", "punched", "puncher", "punches", "punchier", "punchiest", "punchinello", "punchinelloes", "punching", "punchy", "punctilio", "punctilious", "punctiliously", "punctiliousness", "punctual", "punctuality", "punctually", "punctuate", "punctuates", "punctuating", "punctuation", "punctum", "puncturable", "puncture", "punctured", "punctureless", "punctures", "puncturing", "pundit", "pundits", "pung", "pungapung", "pungency", "pungent", "pungently", "punic", "punier", "puniest", "punily", "puniness", "punish", "punishable", "punished", "punishes", "punishing", "punishingly", "punishment", "punishments", "punitive", "punitively", "punitorily", "punitory", "punk", "punkah", "punkey", "punkie", "punky", "punned", "punnet", "punning", "puns", "punster", "punt", "punter", "punting", "puny", "pup", "pupa", "pupae", "pupal", "puparia", "puparium", "pupate", "pupates", "pupil", "pupillary", "pupils", "pupped", "puppet", "puppeteer", "puppetry", "puppets", "puppies", "pupping", "puppy", "puppyish", "puppylike", "pups", "puranic", "purau", "purblind", "purchasable", "purchase", "purchased", "purchaser", "purchases", "purchasing", "purdah", "pure", "pureblood", "pureblooded", "purebred", "puree", "pureeing", "purees", "purely", "pureness", "purest", "purgation", "purgative", "purgatorial", "purgatory", "purge", "purged", "purges", "purging", "purification", "purified", "purifier", "purifies", "purify", "purifying", "purine", "purinethol", "purism", "purist", "purists", "puritan", "puritanic", "puritanical", "puritanically", "purity", "purl", "purlieu", "purling", "purloin", "purloo", "purple", "purpleness", "purplish", "purport", "purportedly", "purporting", "purports", "purpose", "purposeful", "purposefully", "purposefulness", "purposeless", "purposelessly", "purposelessness", "purposely", "purposes", "purposive", "purpura", "purpurate", "purr", "purring", "purrs", "purse", "purser", "purses", "pursing", "purslane", "pursual", "pursuance", "pursuant", "pursue", "pursued", "pursuer", "pursues", "pursuing", "pursuit", "pursuits", "pursy", "purulence", "purulency", "purulent", "purvey", "purveyance", "purveying", "purveyor", "purveys", "purview", "puseyism", "push", "pushball", "pushcart", "pushchair", "pushed", "pusher", "pushes", "pushful", "pushier", "pushiest", "pushiness", "pushing", "pushover", "pushpin", "pushtun", "pushup", "pushy", "pusillanimity", "pusillanimous", "pusillanimously", "pusillanimousness", "pussier", "pussiest", "pussley", "pussly", "pussy", "pussycat", "pussyfoot", "pussytoes", "pustulate", "pustule", "put", "putamen", "putamina", "putative", "putdownable", "putoff", "putout", "putrefacient", "putrefaction", "putrefactive", "putrefiable", "putrefied", "putrefies", "putrefy", "putrefying", "putrescence", "putrescent", "putrescible", "putrescine", "putrid", "putridity", "putridness", "puts", "putsch", "putt", "puttee", "putter", "putterer", "puttering", "putti", "puttied", "putting", "putto", "putts", "putty", "puttyroot", "putz", "puzzle", "puzzled", "puzzlement", "puzzler", "puzzles", "puzzling", "pva", "pvc", "pwr", "pya", "pyaemia", "pyaemic", "pycnidia", "pycnidium", "pycnodysostosis", "pycnogonid", "pycnosis", "pycnotic", "pyelitis", "pyelogram", "pyelography", "pyelonephritis", "pyemia", "pyemic", "pygidia", "pygidium", "pyinma", "pyjama", "pyjamas", "pyknic", "pyknosis", "pyknotic", "pylon", "pylori", "pyloric", "pylorus", "pyocyanase", "pyocyanin", "pyogenic", "pyorrhea", "pyorrhoea", "pyracanth", "pyralid", "pyralididae", "pyramid", "pyramidal", "pyramidic", "pyramidical", "pyramidically", "pyramiding", "pyramids", "pyre", "pyrectic", "pyrene", "pyretic", "pyrexia", "pyridine", "pyridium", "pyridoxal", "pyridoxamine", "pyridoxine", "pyrilamine", "pyrimidine", "pyrite", "pyrocellulose", "pyrochemical", "pyrochemistry", "pyroelectric", "pyroelectrical", "pyroelectricity", "pyrogallic", "pyrogallol", "pyrogen", "pyrogenetic", "pyrogenic", "pyrogenous", "pyrograph", "pyrographer", "pyrographic", "pyrography", "pyrola", "pyrolatry", "pyroligneous", "pyrolignic", "pyrolusite", "pyrolysis", "pyrolytic", "pyromancer", "pyromancy", "pyromania", "pyromaniac", "pyrometer", "pyromorphite", "pyrope", "pyrophobia", "pyrophosphate", "pyrophyllite", "pyroscope", "pyrosis", "pyrostat", "pyrotechnic", "pyrotechnical", "pyrotechny", "pyroxene", "pyroxylin", "pyroxyline", "pyrrhic", "pyrrhotine", "pyrrhotite", "pyrrhuloxia", "pythagorean", "pythium", "pythoness", "pyuria", "pyx", "pyxides", "pyxidia", "pyxidium", "pyxie", "pyxis", "pzazz", "qabala", "qabalah", "qabalistic", "qabbala", "qabbalah", "qaddish", "qaddishim", "qadhafi", "qadi", "qaeda", "qandahar", "qat", "Qatar", "qatar", "qatari", "qcd", "qed", "qepiq", "qiangic", "qindarka", "qintar", "qoph", "QT.", "Qt.", "qt.", "quaalude", "quack", "quackery", "quackgrass", "quacking", "quacks", "quad", "quadrangle", "quadrangular", "quadrant", "quadrantanopia", "quadraphonic", "quadraphony", "quadrasonic", "quadrate", "quadratic", "quadrature", "quadrennia", "quadrennium", "quadric", "quadriceps", "quadriga", "quadrigae", "quadrilateral", "quadrille", "quadrillion", "quadrillionth", "quadripara", "quadripartite", "quadriphonic", "quadriplegia", "quadriplegic", "quadrisonic", "quadrivium", "quadroon", "quadrumvirate", "quadruped", "quadrupedal", "quadruple", "quadrupled", "quadruples", "quadruplet", "quadruplex", "quadruplicate", "quadruplicates", "quadrupling", "quaestor", "quaff", "quaffer", "quaffing", "quaffs", "quag", "quagga", "quaggier", "quaggiest", "quaggy", "quagmire", "quahaug", "quahog", "quail", "quaint", "quaintly", "quaintness", "quake", "quaker", "quakes", "quakier", "quakiest", "quaking", "quaky", "quale", "qualia", "qualification", "qualifications", "qualified", "qualifier", "qualifies", "qualify", "qualifying", "qualitative", "qualitatively", "qualities", "quality", "qualm", "qualms", "quamash", "quamassia", "quandang", "quandary", "quandong", "quango", "quanta", "quantal", "quantic", "quantifiability", "quantifiable", "quantification", "quantified", "quantifier", "quantifies", "quantify", "quantifying", "quantisation", "quantise", "quantises", "quantitative", "quantitatively", "quantities", "quantity", "quantization", "quantize", "quantized", "quantizes", "quantong", "quantum", "quarantine", "quarantined", "quarantines", "quark", "quarrel", "quarreled", "quarreler", "quarreling", "quarrelled", "quarreller", "quarrelling", "quarrels", "quarrelsome", "quarrelsomeness", "quarried", "quarrier", "quarries", "quarry", "quarrying", "quarryman", "quart", "quartan", "quarter", "quarterback", "quarterbacking", "quarterbacks", "quarterdeck", "quarterfinal", "quartering", "quarterlight", "quarterly", "quartermaster", "quartern", "quarters", "quarterstaff", "quarterstaves", "quartervine", "quartet", "quartette", "quartic", "quartile", "quartiles", "quarto", "quartz", "quartzite", "quartzose", "quasar", "quash", "quashed", "quashes", "quashing", "quasi", "quasi-federal", "quasi-governmental", "quasi-xenophobic", "quasiparticle", "quassia", "quat", "quatercentenary", "quatercentennial", "quatern", "quaternary", "quaternate", "quaternion", "quaternity", "quatrain", "quattrocento", "quaver", "quavering", "quaveringly", "quavers", "quay", "quayage", "queasier", "queasiest", "queasily", "queasiness", "queasy", "quebecois", "quechuan", "queen", "queenfish", "queening", "queenlier", "queenliest", "queenlike", "queenly", "queens", "queer", "queerly", "queerness", "quell", "quelled", "quelling", "quells", "quellung", "quench", "quenched", "quenches", "quenching", "quenchless", "quercitron", "queried", "querier", "queries", "quern", "querulous", "querulously", "querulousness", "query", "querying", "quesadilla", "quest", "quester", "questing", "question", "questionable", "questionably", "questioned", "questioner", "questioning", "questioningly", "questionnaire", "questionnaires", "questions", "quetch", "quetzal", "queue", "queues", "queuing", "quezal", "quezales", "quiaquia", "quibble", "quibbler", "quibbling", "quick", "quicken", "quickener", "quickening", "quickens", "quicker", "quickest", "quickie", "quicklime", "quickly", "quickness", "quicksand", "quickset", "quicksilver", "quickstep", "quickstepped", "quickstepping", "quicky", "quid", "quiddity", "quidnunc", "quiesce", "quiescence", "quiescency", "quiescent", "quiesces", "quiet", "quieted", "quieten", "quietens", "quieting", "quietism", "quietist", "quietly", "quietness", "quietude", "quietus", "quiff", "quill", "quillwort", "quilt", "quilted", "quilting", "quilts", "quin", "quinacrine", "quince", "quincentenary", "quincentennial", "quinidex", "quinidine", "quinine", "quinone", "quinora", "quinquefoliate", "quinquennia", "quinquennium", "quinsy", "quint", "quintal", "quintessence", "quintessential", "quintet", "quintette", "quintillion", "quintillionth", "quintipara", "quintuple", "quintuplet", "quintupling", "quip", "quipped", "quipping", "quips", "quipu", "quira", "quire", "quirk", "quirkiness", "quirky", "quirt", "quisling", "quislingism", "quit", "quitclaim", "quite", "quits", "quittance", "quitted", "quitter", "quitting", "quiver", "quivering", "quivers", "quixotic", "quixotically", "quixotism", "quiz", "quizmaster", "quizzed", "quizzer", "quizzes", "quizzical", "quizzically", "quizzing", "quodlibet", "quoin", "quoit", "quondam", "quorum", "quota", "quotability", "quotable", "quotas", "quotation", "quotations", "quote", "quoted", "quoter", "quotes", "quotidian", "quotient", "quoting", "quran", "qurush", "r.c.", "R.I.", "r.i.", "rabato", "rabatos", "rabbet", "rabbeting", "rabbi", "rabbinate", "rabbinic", "rabbinical", "rabbis", "rabbit", "rabbiteye", "rabbitfish", "rabbitfishes", "rabbits", "rabbitweed", "rabbitwood", "rabble", "rabelaisian", "rabid", "rabidity", "rabidly", "rabidness", "rabies", "raccoon", "race", "raceabout", "racecard", "racecourse", "raced", "racehorse", "raceme", "racemose", "racer", "racerunner", "races", "racetrack", "raceway", "rachet", "rachides", "rachis", "rachischisis", "rachitic", "rachitis", "rachmaninov", "racial", "racialism", "racialist", "racially", "racier", "raciest", "racily", "raciness", "racing", "racism", "racist", "racists", "rack", "racked", "racker", "racket", "racketeer", "racketeering", "racketiness", "rackety", "racking", "racks", "racon", "raconteur", "racoon", "racquet", "racquetball", "racy", "rad", "radar", "raddle", "raddled", "radial", "radially", "radian", "radiance", "radiancy", "radiant", "radiantly", "radiate", "radiates", "radiating", "radiation", "radiator", "radical", "radicalise", "radicalised", "radicalises", "radicalising", "radicalism", "radicalize", "radicalized", "radicalizes", "radicalizing", "radically", "radicals", "radicchio", "radices", "radicle", "radiculitis", "radii", "radio", "radioactive", "radioactively", "radioactivity", "radiobiologist", "radiobiology", "radiocarbon", "radiochemist", "radiochemistry", "radiochlorine", "radiocommunication", "radiogram", "radiograph", "radiographer", "radiographic", "radiography", "radioimmunoassay", "radioing", "radioisotope", "radiolarian", "radiolocate", "radiolocation", "radiological", "radiologist", "radiology", "radiolucent", "radiolysis", "radiometer", "radiomicrometer", "radiopacity", "radiopaque", "radiopharmaceutical", "radiophone", "radiophonic", "radiophoto", "radiophotograph", "radiophotography", "radioprotection", "radios", "radioscopy", "radiosensitive", "radiosensitivity", "radiotelegraph", "radiotelegraphy", "radiotelephone", "radiotelephonic", "radiotelephony", "radiotherapist", "radiotherapy", "radiothorium", "radish", "radium", "radius", "radix", "radome", "radon", "radula", "radulae", "raetam", "RAF", "raf", "raffinose", "raffish", "raffishly", "raffle", "raft", "rafter", "raftered", "rafting", "raftman", "raftsman", "rag", "ragamuffin", "ragbag", "rage", "raged", "ragee", "rageful", "rages", "ragged", "raggedly", "raggedness", "ragging", "ragi", "raging", "raglan", "ragnarok", "ragout", "ragpicker", "rags", "ragsorter", "ragtag", "ragtime", "ragusa", "ragweed", "ragwort", "raid", "raided", "raider", "raiding", "raids", "rail", "railbird", "railcar", "railhead", "railing", "railings", "raillery", "railroad", "railroader", "railroading", "rails", "railway", "railwayman", "railways", "railyard", "raiment", "raimentless", "rain", "rainbow", "raincoat", "raindrop", "rained", "rainfall", "rainfly", "rainforest", "rainier", "rainiest", "raininess", "raining", "rainless", "rainmaker", "rainmaking", "rainproof", "rains", "rainstorm", "rainwater", "rainy", "raisable", "raise", "raiseable", "raised", "raiser", "raises", "raisin", "raising", "raita", "raiu", "raj", "rajah", "rajanya", "rajpoot", "rake", "raked", "rakehell", "rakes", "raking", "rakish", "rakishly", "rakishness", "rale", "ralegh", "rallentando", "rallied", "rallies", "rally", "rallying", "RAM", "Ram", "ram", "ramate", "ramble", "rambled", "rambler", "rambles", "rambling", "ramblingly", "rambotan", "rambunctious", "rambutan", "ramee", "ramekin", "ramenta", "ramentum", "ramequin", "ramesses", "rami", "ramie", "ramification", "ramifications", "ramified", "ramifies", "ramify", "ramifying", "ramipril", "ramjet", "rammed", "rammer", "ramming", "ramona", "ramontchi", "ramose", "ramous", "ramp", "rampage", "rampageous", "rampages", "rampaging", "rampant", "rampantly", "rampart", "ramparts", "ramping", "rampion", "ramps", "ramrod", "Rams", "rams", "ramses", "ramshackle", "ramsons", "ramus", "ran", "ranch", "rancher", "ranchers", "ranches", "ranching", "rancid", "rancidity", "rancidness", "rancor", "rancorous", "rancour", "randier", "randiest", "random", "randomisation", "randomise", "randomised", "randomises", "randomising", "randomization", "randomize", "randomized", "randomizes", "randomizing", "randomly", "randomness", "randy", "ranee", "rang", "range", "ranged", "rangefinder", "rangeland", "ranger", "ranges", "rangier", "rangiest", "ranging", "rangoon", "rangpur", "rangy", "rani", "ranid", "ranitidine", "rank", "ranked", "ranker", "ranking", "rankings", "rankle", "rankled", "rankles", "rankling", "rankness", "ranks", "ransack", "ransacked", "ransacking", "ransacks", "ransom", "ransomed", "rant", "ranter", "ranters", "ranting", "rants", "ranula", "ranulae", "ranunculales", "ranunculi", "ranunculus", "rap", "rapacious", "rapaciously", "rapaciousness", "rapacity", "rape", "raped", "raper", "rapeseed", "raphae", "raphe", "raphia", "raphide", "raphides", "rapid", "rapidity", "rapidly", "rapidness", "rapids", "rapier", "rapine", "raping", "rapist", "rapped", "rappee", "rappel", "rappelled", "rappeller", "rappelling", "rappels", "rapper", "rappers", "rapping", "rapport", "rapporteur", "rapprochement", "raps", "rapscallion", "rapt", "raptor", "raptorial", "rapture", "raptured", "raptures", "rapturous", "rapturously", "raptus", "rare", "rarebit", "rarefaction", "rarefied", "rarefies", "rarefy", "rarely", "rareness", "rarer", "rarified", "rarify", "raring", "rariora", "rarity", "rascal", "rascality", "rascally", "rase", "rash", "rasher", "rashly", "rashness", "rasp", "raspberry", "rasping", "raspingly", "raspy", "rassling", "rasta", "rastafarian", "raster", "rasterize", "rat", "ratability", "ratable", "ratables", "ratafee", "ratafia", "ratan", "rataplan", "ratatouille", "ratch", "ratchet", "ratcheting", "rate", "rateability", "rateable", "rateables", "rated", "ratel", "ratepayer", "rates", "ratfish", "ratfishes", "Rather", "rather", "rathole", "rathskeller", "ratification", "ratified", "ratifier", "ratifies", "ratify", "ratifying", "rating", "ratings", "ratio", "ratiocinate", "ratiocination", "ratiocinative", "ratiocinator", "ration", "rational", "rationale", "rationalisation", "rationalisations", "rationalise", "rationalised", "rationalises", "rationalising", "rationalism", "rationalist", "rationalistic", "rationality", "rationalization", "rationalizations", "rationalize", "rationalized", "rationalizes", "rationalizing", "rationally", "rationalness", "rationed", "rationing", "rations", "ratios", "ratite", "ratlike", "ratlin", "ratline", "rats", "ratsbane", "rattail", "rattan", "ratted", "ratter", "rattes", "rattier", "rattiest", "ratting", "rattle", "rattlebox", "rattlebrained", "rattled", "rattlepated", "rattler", "rattles", "rattlesnake", "rattlier", "rattliest", "rattling", "rattly", "rattrap", "ratty", "raucous", "raucously", "raudixin", "raunch", "raunchier", "raunchiest", "raunchy", "rauvolfia", "rauwolfia", "ravage", "ravaged", "ravages", "ravaging", "rave", "ravehook", "ravel", "raveled", "raveling", "ravelled", "ravelling", "ravels", "raven", "ravenala", "ravening", "ravenous", "ravenously", "ravenousness", "raver", "raves", "ravigote", "ravigotte", "ravine", "raving", "ravingly", "ravioli", "ravish", "ravisher", "ravishes", "ravishing", "ravishingly", "ravishment", "raw", "rawboned", "rawhide", "rawness", "ray", "rayless", "rayon", "rays", "razbliuto", "raze", "razed", "razes", "razing", "razmataz", "razor", "razorback", "razorbill", "razorblade", "razz", "razzing", "razzle", "razzmatazz", "rbc", "rbi", "rcmp", "RD.", "Rd.", "rd.", "RE", "Re", "re", "re-creactions", "Re-creating", "re-creating", "re-creations", "re-elected", "re-election", "re-emerge", "re-emergence", "re-enacting", "re-enactment", "re-enactments", "re-energized", "re-enter", "re-entered", "re-establish", "re-establishing", "re-evaluate", "re-evaluating", "re-examine", "re-exports", "re-route", "re-routed", "re-routing", "re-thought", "reabsorb", "reabsorbing", "reabsorbs", "reabsorption", "reach", "reachable", "reached", "reaches", "reaching", "react", "reactance", "reactant", "reacted", "reacting", "reaction", "reactionary", "reactionism", "reactionist", "reactions", "reactivate", "reactivated", "reactivates", "reactivating", "reactive", "reactivity", "reactor", "reactors", "reacts", "read", "readability", "readable", "readably", "readapt", "reader", "readers", "readership", "readier", "readies", "readiest", "readily", "readiness", "reading", "readings", "readjust", "readjusting", "readjustment", "readjusts", "readmission", "readmit", "readout", "reads", "ready", "readying", "reaffiliation", "reaffirm", "reaffirmation", "reaffirmed", "reaffirming", "reaffirms", "reagent", "reagents", "reagin", "real", "reales", "realgar", "realign", "realigned", "realigning", "realigns", "realine", "realisable", "realisation", "realisations", "realise", "realised", "realises", "realising", "realism", "realist", "realistic", "realistically", "realities", "reality", "realizable", "realization", "realizations", "realize", "realized", "realizes", "realizing", "reallocate", "reallocated", "reallocates", "reallocating", "reallocation", "reallot", "reallotment", "really", "realm", "realms", "realness", "realpolitik", "realty", "ream", "reamer", "reams", "reanimate", "reanimated", "reanimates", "reanimating", "reap", "reaped", "reaper", "reaping", "reappear", "reappearance", "reappearing", "reappears", "reapportion", "reapportionment", "reappraisal", "reappraise", "reappraised", "reappraises", "reappraising", "reaps", "rear", "reared", "rearguard", "rearing", "rearm", "rearmament", "rearmice", "rearming", "rearmost", "rearmouse", "rearms", "rearrange", "rearrangement", "rearrangements", "rearranges", "rearranging", "rears", "rearward", "rearwards", "reason", "reasonable", "reasonableness", "reasonably", "reasoned", "reasoner", "reasoning", "reasonless", "reasons", "reassail", "reassails", "reassemble", "reassembles", "reassembling", "reassembly", "reassert", "reasserting", "reassertion", "reasserts", "reassess", "reassesses", "reassessing", "reassessment", "reassign", "reassigned", "reassigning", "reassignment", "reassigns", "reassurance", "reassure", "reassured", "reassures", "reassuring", "reassuringly", "reata", "reattribute", "reattributes", "reave", "reaves", "reawaken", "reawakening", "reawakens", "reb", "rebarbative", "rebate", "rebating", "rebato", "rebekah", "rebel", "rebelled", "rebelling", "rebellion", "rebellious", "rebelliously", "rebelliousness", "rebels", "rebind", "rebirth", "reboot", "rebooting", "reboots", "reborn", "rebound", "rebounded", "rebounding", "rebounds", "reboxetine", "rebozo", "rebroadcast", "rebroadcasting", "rebroadcasts", "rebuff", "rebuffed", "rebuffing", "rebuffs", "rebuild", "rebuilding", "rebuilds", "rebuilt", "rebuke", "rebuked", "rebuker", "rebuking", "rebukingly", "reburial", "reburies", "rebury", "reburying", "rebus", "rebut", "rebuts", "rebuttal", "rebutted", "rebutter", "rebutting", "recalcitrance", "recalcitrancy", "recalcitrant", "recalcitrate", "recalcitrates", "recalculate", "recalculated", "recalculates", "recalculating", "recalculation", "recall", "recalled", "recalling", "recalls", "recant", "recantation", "recanted", "recanting", "recap", "recapitulate", "recapitulates", "recapitulating", "recapitulation", "recapped", "recapping", "recaps", "recapture", "recaptures", "recapturing", "recast", "recasting", "recasts", "recce", "recco", "reccy", "recede", "recedes", "receding", "receipt", "receipts", "receivable", "receivables", "receive", "received", "receiver", "receivers", "receivership", "receives", "receiving", "recency", "recent", "recently", "recentness", "receptacle", "reception", "receptionist", "receptive", "receptively", "receptiveness", "receptivity", "receptor", "receptors", "recess", "recessed", "recesses", "recession", "recessional", "recessionary", "recessive", "recharge", "rechargeable", "recharges", "recharging", "rechauffe", "recherche", "recidivate", "recidivism", "recidivist", "recipe", "recipes", "recipient", "recipients", "reciprocal", "reciprocality", "reciprocally", "reciprocate", "reciprocates", "reciprocating", "reciprocation", "reciprocative", "reciprocatory", "reciprocity", "recirculation", "recission", "recital", "recitalist", "recitation", "recitative", "recite", "reciter", "recites", "reciting", "reckless", "recklessly", "recklessness", "reckon", "reckoned", "reckoner", "reckoning", "reckons", "reclaim", "reclaimable", "reclaimed", "reclaiming", "reclaims", "reclamation", "reclassification", "reclassified", "reclassifies", "reclassify", "recline", "recliner", "reclines", "reclining", "recluse", "reclusive", "reclusiveness", "recode", "recodes", "recoding", "recognisable", "recognisably", "recognisance", "recognise", "recognised", "recognises", "recognising", "recognition", "recognizable", "recognizably", "recognizance", "recognize", "recognized", "recognizes", "recognizing", "recoil", "recoiling", "recoilless", "recoils", "recollect", "recollecting", "recollection", "recollections", "recollective", "recollects", "recombinant", "recombination", "recombine", "recombines", "recombining", "recommence", "recommencement", "recommences", "recommencing", "recommend", "recommendation", "recommendations", "recommended", "recommending", "recommends", "recommit", "recommits", "recommitted", "recommitting", "recompense", "reconcilable", "reconcile", "reconciled", "reconciler", "reconciles", "reconciliation", "reconciling", "recondite", "reconditeness", "recondition", "reconditioning", "reconditions", "reconfirm", "reconfirming", "reconfirms", "reconnaissance", "reconnoiter", "reconnoitered", "reconnoitering", "reconnoiters", "reconnoitre", "reconnoitred", "reconnoitres", "reconnoitring", "reconquer", "reconquers", "reconsecrate", "reconsecrates", "reconsider", "reconsideration", "reconsidered", "reconsidering", "reconsiders", "reconstitute", "reconstitutes", "reconstituting", "reconstruct", "reconstructed", "reconstructing", "reconstruction", "reconstructive", "reconstructs", "reconvene", "reconvenes", "reconvert", "reconverts", "reconvict", "reconvicts", "recopied", "recopies", "recopy", "recopying", "record", "recorded", "recorder", "recorders", "recording", "recordings", "records", "recount", "recounted", "recounting", "recounts", "recoup", "recouped", "recouping", "recoups", "recourse", "recover", "recoverable", "recovered", "recoverer", "recovering", "recovers", "recovery", "recreant", "recreate", "recreates", "recreating", "recreation", "recreational", "recriminate", "recriminates", "recriminating", "recrimination", "recriminative", "recriminatory", "recrudesce", "recrudescence", "recrudescent", "recruit", "recruited", "recruiter", "recruiting", "recruitment", "recruits", "recta", "rectal", "rectangle", "rectangular", "rectangularity", "recti", "rectifiable", "rectification", "rectified", "rectifier", "rectifies", "rectify", "rectifying", "rectilineal", "rectilinear", "rectitude", "recto", "rectocele", "rectoplasty", "rector", "rectorate", "rectorship", "rectory", "rectosigmoid", "rectrices", "rectrix", "rectum", "rectus", "recumb", "recumbent", "recuperate", "recuperates", "recuperating", "recuperation", "recuperative", "recur", "recurred", "recurrence", "recurrent", "recurrently", "recurring", "recurs", "recursion", "recursive", "recurvate", "recurve", "recurved", "recusal", "recusancy", "recusant", "recusation", "recuse", "recused", "recuses", "recusing", "recyclable", "recycle", "recycled", "recycles", "recycling", "red", "redact", "redacting", "redaction", "redactor", "redacts", "redbelly", "redberry", "redbird", "redbone", "redbreast", "redbrick", "redbrush", "redbud", "redbug", "redcap", "redcoat", "redded", "redden", "reddened", "reddening", "reddens", "redder", "reddest", "redding", "reddish", "reddle", "rede", "redecorate", "redecorates", "redecorating", "rededicate", "rededicates", "rededication", "redeem", "redeemable", "redeemed", "redeemer", "redeeming", "redeems", "redefine", "redefined", "redefines", "redefining", "redefinition", "redemption", "redemptional", "redemptive", "redemptory", "redeploy", "redeploying", "redeployment", "redeploys", "redeposit", "redeposition", "redes", "redesign", "redesigned", "redesigning", "redesigns", "redetermination", "redetermine", "redetermines", "redevelop", "redeveloping", "redevelopment", "redevelops", "redeye", "redfish", "redfishes", "redhead", "redheaded", "redheader", "redhorse", "redia", "rediae", "redirect", "redirected", "redirecting", "redirects", "rediscover", "rediscovering", "rediscovers", "rediscovery", "redispose", "redisposition", "redistribute", "redistributed", "redistributes", "redistributing", "redistribution", "redline", "redlines", "redlining", "redly", "redmaids", "redneck", "redness", "redo", "redoes", "redoing", "redolence", "redolent", "redouble", "redoubled", "redoubles", "redoubling", "redoubt", "redoubtable", "redound", "redox", "redpoll", "redraft", "redress", "redresses", "redressing", "redroot", "reds", "redshank", "redshift", "redstart", "redtail", "reduce", "reduced", "reducer", "reduces", "reducible", "reducing", "reductant", "reductase", "reductio", "reduction", "reductionism", "reductionist", "reductions", "reductive", "reductivism", "redundance", "redundancy", "redundant", "reduplicate", "reduplication", "reduviid", "redux", "redwing", "redwood", "reecho", "reechoing", "reedbird", "reedier", "reediest", "reedlike", "reedmace", "reedy", "reef", "reefer", "reefers", "reefs", "reefy", "reek", "reeking", "reeks", "reel", "reelect", "reelecting", "reelection", "reelects", "reeled", "reeler", "reeling", "reels", "reenact", "reenacting", "reenactment", "reenactor", "reenacts", "reenforce", "reenforcement", "reenlistment", "reentrant", "reentry", "reestablish", "reestablishes", "reestablishing", "reevaluate", "reevaluates", "reevaluating", "reevaluation", "reeve", "reexamination", "reexamine", "reexamines", "reexamining", "ref", "refabrication", "reface", "refaces", "refashion", "refashions", "refection", "refectory", "refer", "referable", "referee", "refereeing", "referees", "reference", "referenced", "references", "referencing", "referenda", "referendum", "referent", "referential", "refering", "referral", "referrals", "referred", "referring", "refers", "refill", "refilling", "refills", "refinance", "refinanced", "refinances", "refinancing", "refine", "refined", "refinement", "refiner", "refinery", "refines", "refining", "refinish", "refinisher", "refinishes", "refinishing", "refit", "refits", "refitted", "refitting", "reflate", "reflating", "reflation", "reflect", "reflectance", "reflected", "reflecting", "reflection", "reflections", "reflective", "reflectively", "reflectiveness", "reflectivity", "reflectometer", "reflector", "reflectorise", "reflectorises", "reflectorize", "reflectorizes", "reflects", "reflex", "reflexed", "reflexes", "reflexion", "reflexive", "reflexively", "reflexiveness", "reflexivity", "reflexly", "reflexology", "refloat", "reflux", "refocus", "refocused", "refocuses", "refocusing", "reforest", "reforestation", "reforge", "reform", "reformable", "reformative", "reformatory", "reformed", "reformer", "reformers", "reforming", "reformism", "reformist", "reforms", "reformulate", "reformulated", "reformulates", "reformulating", "refract", "refractile", "refracting", "refraction", "refractive", "refractiveness", "refractivity", "refractometer", "refractoriness", "refractory", "refracts", "refracture", "refrain", "refrained", "refraining", "refrains", "refresh", "refreshed", "refreshen", "refresher", "refreshes", "refreshful", "refreshfully", "refreshing", "refreshingly", "refreshment", "refrigerant", "refrigerate", "refrigerated", "refrigerates", "refrigerating", "refrigeration", "refrigerator", "refrigerators", "refuel", "refueled", "refueling", "refuelled", "refuelling", "refuels", "refuge", "refugee", "refugees", "refugia", "refugium", "refulgence", "refulgency", "refulgent", "refund", "refunded", "refunding", "refunds", "refurbish", "refurbished", "refurbishes", "refurbishing", "refurbishment", "refurnish", "refusal", "refuse", "refused", "refuses", "refusing", "refutable", "refutal", "refutation", "refute", "refuted", "refuter", "refutes", "refuting", "regain", "regained", "regaining", "regains", "regal", "regale", "regales", "regalia", "regaling", "regally", "regard", "regardant", "regarded", "regardful", "regarding", "regardless", "Regards", "regards", "regatta", "regenerate", "regenerates", "regenerating", "regeneration", "regent", "reggae", "regicide", "regift", "regime", "regimen", "regimens", "regiment", "regimental", "regimentally", "regimentals", "regimentation", "regimented", "regimenting", "regimes", "regiomontanus", "region", "regional", "regionalism", "regionally", "regions", "register", "registered", "registering", "registers", "registrant", "registrar", "registration", "registry", "regnant", "regnellidium", "regorge", "regosol", "regress", "regresses", "regressing", "regression", "regressive", "regret", "regretful", "regretfully", "regrets", "regrettable", "regrettably", "regretted", "regretting", "regroup", "regrouping", "regroups", "regrow", "regrows", "regular", "regularisation", "regularise", "regularised", "regularises", "regularising", "regularity", "regularization", "regularize", "regularized", "regularizes", "regularizing", "regularly", "regulars", "regulate", "regulated", "regulates", "regulating", "regulation", "regulations", "regulative", "regulator", "regulators", "regulatory", "reguli", "regulus", "regur", "regurgitate", "regurgitates", "regurgitating", "regurgitation", "rehabilitate", "rehabilitated", "rehabilitates", "rehabilitating", "rehabilitation", "rehabilitative", "reharmonisation", "reharmonise", "reharmonization", "reharmonize", "rehash", "rehashes", "rehashing", "rehear", "rehearing", "rehearsal", "rehearsals", "rehearse", "rehearses", "rehearsing", "reheat", "reheating", "reheats", "reheel", "reheels", "rehouse", "rehouses", "rehousing", "reification", "reified", "reifies", "reify", "reifying", "reign", "reigned", "reigning", "reignite", "reignited", "reignites", "reigniting", "reigns", "reimburse", "reimbursed", "reimbursement", "reimburses", "reimbursing", "reimpose", "reimposition", "reims", "rein", "reincarnate", "reincarnation", "reincarnationism", "reindeer", "reinforce", "reinforced", "reinforcement", "reinforcer", "reinforces", "reinforcing", "reining", "reins", "reinstall", "reinstalled", "reinstalling", "reinstalls", "reinstate", "reinstated", "reinstatement", "reinstates", "reinstating", "reinsurance", "reinsure", "reinsures", "reintegrate", "reintegrated", "reintegrates", "reintegrating", "reinterpret", "reinterpretation", "reinterpreting", "reintroduce", "reintroduced", "reintroduces", "reintroducing", "reintroduction", "reinvent", "reinvented", "reinventing", "reinvents", "reinvigorate", "reinvigorated", "reinvigorates", "reinvigorating", "reis", "reissue", "reit", "reiterate", "reiterated", "reiterates", "reiterating", "reiteration", "reiterative", "reject", "rejected", "rejecting", "rejection", "rejective", "rejects", "rejig", "rejigs", "rejoice", "rejoiced", "rejoices", "rejoicing", "rejoin", "rejoinder", "rejoined", "rejoining", "rejoins", "rejuvenate", "rejuvenates", "rejuvenating", "rejuvenation", "rekindle", "rekindled", "rekindles", "rekindling", "relace", "relaces", "relafen", "relapse", "relapses", "relapsing", "relata", "relate", "related", "relatedness", "relates", "relating", "relation", "relational", "relations", "relationship", "relationships", "relative", "relatively", "relatives", "relativise", "relativism", "relativistic", "relativistically", "relativity", "relativize", "relatum", "relax", "relaxant", "relaxation", "relaxed", "relaxer", "relaxes", "relaxin", "relaxing", "relay", "relayed", "relaying", "relays", "relearn", "relearning", "relearns", "release", "released", "releases", "releasing", "relegate", "relegated", "relegates", "relegating", "relegation", "relent", "relented", "relenting", "relentless", "relentlessly", "relentlessness", "relents", "relevance", "relevancy", "relevant", "relevantly", "reliability", "reliable", "reliableness", "reliably", "reliance", "reliant", "relic", "relics", "relict", "relied", "relief", "reliefs", "relies", "relieve", "relieved", "reliever", "relieves", "relieving", "relievo", "religion", "religionism", "religionist", "religions", "religiosity", "religious", "religiousism", "religiously", "religiousness", "reline", "relines", "relinquish", "relinquished", "relinquishes", "relinquishing", "relinquishment", "reliquary", "relish", "relished", "relishes", "relishing", "relistening", "relive", "relives", "reliving", "reload", "reloading", "reloads", "relocate", "relocated", "relocates", "relocating", "relocation", "reluctance", "reluctant", "reluctantly", "reluctivity", "rely", "relying", "relyric", "rem", "remade", "remain", "remainder", "remained", "remaining", "remains", "remake", "remakes", "remaking", "remand", "remanded", "remands", "remark", "remarkable", "remarkably", "remarked", "remarking", "remarks", "remarriage", "remarried", "remarries", "remarry", "remarrying", "rematch", "rembrandtesque", "remediable", "remedial", "remediate", "remediation", "remedies", "remedy", "remedying", "remember", "remembered", "remembering", "remembers", "remembrance", "remex", "remicade", "remiges", "remilitarisation", "remilitarise", "remilitarization", "remilitarize", "remilitarizes", "remind", "reminded", "reminder", "reminders", "remindful", "reminding", "reminds", "reminisce", "reminiscence", "reminiscent", "reminiscently", "reminisces", "reminiscing", "remise", "remiss", "remission", "remissness", "remit", "remitment", "remits", "remittal", "remittance", "remitted", "remittent", "remitting", "remnant", "remnants", "remodel", "remodeled", "remodeling", "remodelled", "remodelling", "remodels", "remold", "remolded", "remolding", "remolds", "remonstrance", "remonstrate", "remonstration", "remora", "remorse", "remorseful", "remorsefully", "remorseless", "remorselessly", "remote", "remotely", "remoteness", "remotion", "remould", "remoulded", "remoulding", "remoulds", "remount", "removable", "removal", "remove", "removed", "remover", "removes", "removing", "remuda", "remunerate", "remunerated", "remunerates", "remuneration", "remunerative", "remunerator", "renaissance", "renal", "rename", "renamed", "renames", "renaming", "renascence", "renascent", "rend", "render", "rendered", "rendering", "renders", "rendezvous", "rending", "rendition", "rends", "renegade", "renege", "reneges", "reneging", "renegociate", "renegociates", "renegotiate", "renegotiated", "renegotiates", "renegotiating", "renew", "renewable", "renewal", "renewed", "renewing", "renews", "reniform", "renin", "rennet", "rennin", "renormalise", "renormalises", "renormalize", "renormalizes", "renounce", "renounced", "renouncement", "renounces", "renouncing", "renovate", "renovated", "renovates", "renovating", "renovation", "renovations", "renovator", "renown", "renowned", "rensselaerite", "rent", "rentable", "rental", "rentals", "rente", "rented", "renter", "rentier", "renting", "rents", "renunciant", "renunciation", "renunciative", "reopen", "reopened", "reopening", "reopens", "reorder", "reordering", "reorganisation", "reorganisations", "reorganise", "reorganised", "reorganises", "reorganising", "reorganization", "reorganizations", "reorganize", "reorganized", "reorganizes", "reorganizing", "reorient", "reorientate", "reorientation", "reoriented", "reorienting", "reorients", "reovirus", "rep", "REP.", "Rep.", "rep.", "repaid", "repaint", "repainted", "repainting", "repaints", "repair", "repaired", "repairer", "repairing", "repairman", "repairs", "repand", "reparable", "reparation", "repartee", "repast", "repatriate", "repatriation", "repay", "repayable", "repaying", "repayment", "repays", "repeal", "repealed", "repealing", "repeals", "repeat", "repeatable", "repeated", "repeatedly", "repeater", "repeating", "repeats", "repechage", "repel", "repellant", "repelled", "repellent", "repellently", "repelling", "repellingly", "repels", "repent", "repentance", "repentant", "repentantly", "repenting", "repents", "repercuss", "repercussion", "repercussions", "repertoire", "repertory", "repetition", "repetitious", "repetitiousness", "repetitive", "repetitively", "repetitiveness", "rephrase", "rephrases", "rephrasing", "repine", "repines", "replace", "replaceability", "replaceable", "replaced", "replacement", "replacements", "replaces", "replacing", "replant", "replanting", "replants", "replay", "replaying", "replays", "replenish", "replenished", "replenishes", "replenishing", "replenishment", "replete", "repletion", "replevied", "replevies", "replevy", "replica", "replicas", "replicate", "replicated", "replicates", "replicating", "replication", "replied", "replies", "reply", "replying", "repoint", "report", "reportable", "reportage", "reported", "reportedly", "reporter", "reporters", "reporting", "reports", "repose", "reposeful", "reposes", "reposing", "reposit", "repositing", "reposition", "repositioning", "repository", "repossess", "repossession", "repot", "repots", "repotted", "repotting", "repp", "reprehend", "reprehensibility", "reprehensible", "reprehensibly", "reprehension", "reprehensively", "represent", "representable", "representation", "representational", "representations", "representative", "representatives", "represented", "representing", "represents", "repress", "repressed", "represser", "represses", "repressing", "repression", "repressive", "repressor", "reprieve", "reprimand", "reprimanded", "reprimanding", "reprimands", "reprint", "reprinted", "reprinting", "reprints", "reprisal", "reprise", "reprises", "reprising", "reprize", "reproach", "reproacher", "reproaches", "reproachful", "reproachfully", "reproaching", "reprobate", "reprobates", "reprobating", "reprobation", "reprocess", "reprocesses", "reprocessing", "reproduce", "reproduced", "reproducer", "reproduces", "reproducibility", "reproducible", "reproducibly", "reproducing", "reproduction", "reproductions", "reproductive", "reproof", "reproval", "reprove", "reprover", "reproves", "reproving", "reprovingly", "REPS.", "Reps.", "reps.", "reptile", "reptilian", "Republic", "republic", "republican", "republicanism", "republicans", "republication", "Republics", "republics", "republish", "republishes", "republishing", "repudiate", "repudiates", "repudiating", "repudiation", "repudiative", "repugn", "repugnance", "repugnant", "repulse", "repulsed", "repulses", "repulsing", "repulsion", "repulsive", "repulsively", "repulsiveness", "repurchase", "repurchased", "repurchases", "repurchasing", "reputability", "reputable", "reputably", "reputation", "reputations", "repute", "reputed", "reputedly", "request", "requested", "requester", "requesting", "requests", "requiescat", "require", "required", "requirement", "requirements", "requires", "requiring", "requisite", "requisiteness", "requisition", "requisitioned", "requisitions", "requital", "requite", "requites", "reread", "rereading", "rereads", "rerebrace", "reredos", "reremice", "rerun", "rerunning", "reruns", "resale", "rescale", "rescales", "rescaling", "reschedule", "rescheduled", "reschedules", "rescheduling", "rescind", "rescindable", "rescinded", "rescinding", "rescinds", "rescission", "rescript", "rescriptor", "rescue", "rescued", "rescuer", "rescuers", "rescues", "rescuing", "reseal", "resealing", "reseals", "research", "researched", "researcher", "researchers", "researches", "researching", "reseat", "reseating", "reseats", "reseau", "reseaux", "resect", "resecting", "resection", "resects", "reseda", "reseed", "reseeding", "reseeds", "resell", "reselling", "resells", "resemblance", "resemble", "resembles", "resembling", "resent", "resented", "resentful", "resentfully", "resenting", "resentment", "resents", "reserpine", "reservation", "reservations", "reserve", "reserved", "reservedly", "reserves", "reserving", "reservist", "reservoir", "reservoirs", "reset", "resets", "resetting", "resettle", "resettled", "resettlement", "resettles", "resew", "resh", "reshape", "reshaped", "reshapes", "reshaping", "reship", "reshipment", "reshoot", "resht", "reshuffle", "reshuffled", "reshuffles", "reshuffling", "resid", "reside", "resided", "residence", "residences", "residency", "resident", "residential", "residentially", "residents", "resides", "residing", "residua", "residual", "residuals", "residuary", "residue", "residues", "residuum", "resift", "resifts", "resign", "resignation", "resigned", "resignedly", "resigning", "resigns", "resile", "resilience", "resiliency", "resilient", "resin", "resinate", "resinated", "resinlike", "resinoid", "resinous", "resiny", "resist", "resistance", "resistant", "resisted", "resister", "resistible", "resisting", "resistive", "resistivity", "resistless", "resistor", "resists", "resit", "resits", "resitting", "resize", "resizes", "resizing", "resmudge", "resmudges", "resole", "resoles", "resolute", "resolutely", "resoluteness", "resolution", "resolutions", "resolvable", "resolve", "resolved", "resolvent", "resolves", "resolving", "resonance", "resonant", "resonate", "resonated", "resonates", "resonating", "resonator", "resorb", "resorcinol", "resorcinolphthalein", "resorption", "resort", "resorting", "resorts", "resound", "resounding", "resoundingly", "resounds", "resource", "resourceful", "resourcefully", "resourcefulness", "resourceless", "resources", "respect", "respectability", "respectable", "respectably", "respected", "respecter", "respectful", "respectfully", "respectfulness", "respecting", "respective", "respectively", "respects", "respiration", "respirator", "respiratory", "respire", "respires", "respiring", "respite", "respites", "resplend", "resplendence", "resplendency", "resplendent", "resplendently", "resplends", "respond", "responded", "respondent", "respondents", "responder", "responders", "responding", "responds", "responsa", "response", "responses", "responsibilities", "responsibility", "responsible", "responsibleness", "responsibly", "responsive", "responsiveness", "responsum", "rest", "restart", "restarted", "restarting", "restarts", "restate", "restated", "restatement", "restates", "restating", "restaurant", "restauranter", "restaurants", "restaurateur", "rested", "rester", "restful", "restfully", "restfulness", "restharrow", "resting", "restitute", "restitution", "restive", "restively", "restiveness", "restless", "restlessly", "restlessness", "restock", "restocking", "restocks", "restoration", "restorative", "restore", "restored", "restorer", "restores", "restoril", "restoring", "restrain", "restrained", "restrainer", "restraining", "restrains", "restraint", "restraints", "restrengthen", "restrengthens", "restrict", "restricted", "restricting", "restriction", "restrictions", "restrictive", "restrictively", "restrictiveness", "restricts", "restroom", "restructure", "restructured", "restructures", "restructuring", "rests", "resublime", "resublimes", "resubmit", "resubmits", "result", "resultant", "resulted", "resulting", "results", "resume", "resumed", "resumes", "resuming", "resumption", "resupine", "resurface", "resurfaced", "resurfaces", "resurfacing", "resurge", "resurgence", "resurgent", "resurrect", "resurrected", "resurrecting", "resurrection", "resurrects", "resurvey", "resuscitate", "resuscitated", "resuscitates", "resuscitating", "resuscitation", "resuscitator", "resuspend", "resuspending", "resuspends", "resuspension", "ret", "retail", "retailer", "retailers", "retailing", "retails", "retain", "retained", "retainer", "retaining", "retains", "retake", "retakes", "retaking", "retaliate", "retaliates", "retaliating", "retaliation", "retaliative", "retaliator", "retaliatory", "retard", "retardant", "retardation", "retarded", "retardent", "retarding", "retards", "retch", "retching", "rete", "retell", "retelling", "retells", "retem", "retention", "retentive", "retentively", "retentiveness", "retentivity", "rethink", "rethinking", "rethinks", "retia", "retiarii", "retiarius", "reticence", "reticent", "reticently", "retick", "reticle", "reticula", "reticular", "reticulate", "reticulation", "reticule", "reticulocyte", "reticulum", "retie", "retina", "retinacula", "retinaculum", "retinae", "retinal", "retinene", "retinitis", "retinoblastoma", "retinol", "retinopathy", "retinue", "retire", "retired", "retiree", "retirees", "retirement", "retires", "retiring", "retool", "retooling", "retools", "retort", "retorting", "retorts", "retouch", "retouching", "retrace", "retraced", "retraces", "retracing", "retract", "retractable", "retracted", "retractile", "retracting", "retraction", "retractor", "retracts", "retrain", "retraining", "retrains", "retral", "retranslate", "retranslates", "retransmit", "retransmits", "retransmitted", "retransmitting", "retread", "retreading", "retreads", "retreat", "retreatant", "retreated", "retreating", "retreats", "retrench", "retrenches", "retrenching", "retrenchment", "retrial", "retribution", "retributive", "retributory", "retried", "retries", "retrievable", "retrieval", "retrieve", "retrieved", "retriever", "retrieves", "retrieving", "retro", "retroactive", "retroactively", "retrofit", "retrofits", "retrofitted", "retrofitting", "retroflection", "retroflex", "retroflexed", "retroflexion", "retrograde", "retrogrades", "retrogress", "retrogresses", "retrogression", "retrogressive", "retronym", "retrorocket", "retrorse", "retrospect", "retrospection", "retrospective", "retrospectively", "retrousse", "retroversion", "retrovert", "retrovir", "retrovirus", "retroviruses", "retrovision", "retry", "retrying", "retsina", "retted", "retting", "return", "returnable", "returned", "returning", "returns", "retweet", "reunification", "reunified", "reunifies", "reunify", "reunifying", "reunion", "reunions", "reunite", "reunited", "reunites", "reuniting", "reuptake", "reusable", "reuse", "reused", "reuses", "reusing", "rev", "revaluation", "revalue", "revalued", "revalues", "revamp", "revamped", "revamping", "revamps", "reveal", "revealed", "revealing", "reveals", "reveille", "revel", "revelation", "revelations", "revelatory", "reveled", "reveler", "revelers", "reveling", "revelled", "reveller", "revellers", "revelling", "revelry", "revels", "revenant", "revenge", "revengeful", "revengefully", "revenue", "revenuer", "revenues", "reverberance", "reverberant", "reverberate", "reverberated", "reverberates", "reverberating", "reverberation", "reverberative", "revere", "revered", "reverence", "reverend", "reverent", "reverential", "reverentially", "reverently", "reveres", "reverie", "revering", "revers", "reversal", "reverse", "reversed", "reversely", "reverses", "reversibility", "reversible", "reversibly", "reversing", "reversion", "reversionary", "reversioner", "reversionist", "reversive", "revert", "reverted", "revertible", "reverting", "reverts", "revery", "revet", "revetement", "revetment", "revets", "revetted", "revetting", "review", "reviewed", "reviewer", "reviewers", "reviewing", "reviews", "revile", "revilement", "revisal", "revise", "revised", "reviser", "revises", "revising", "revision", "revisionism", "revisionist", "revisions", "revisit", "revisited", "revisiting", "revisits", "revitalisation", "revitalise", "revitalised", "revitalises", "revitalising", "revitalization", "revitalize", "revitalized", "revitalizes", "revitalizing", "revival", "revivalism", "revivalist", "revivalistic", "revive", "revived", "revives", "revivification", "revivified", "revivifies", "revivify", "revivifying", "reviving", "revocable", "revocation", "revokable", "revoke", "revoked", "revokes", "revoking", "revolt", "revolting", "revoltingly", "revolts", "revolution", "revolutionaries", "revolutionary", "revolutionise", "revolutionised", "revolutionises", "revolutionising", "revolutionism", "revolutionist", "revolutionize", "revolutionized", "revolutionizes", "revolutionizing", "revolutions", "revolve", "revolved", "revolver", "revolves", "revolving", "revue", "revulsion", "revved", "revving", "reward", "rewarded", "rewardful", "rewarding", "rewardingly", "rewards", "rewind", "rewinding", "rewinds", "rewire", "rewires", "rewiring", "reword", "rewording", "rewords", "rework", "reworked", "reworking", "reworks", "rewrite", "rewriter", "rewrites", "rewriting", "rewritten", "rex", "reyes", "rfd", "rhabdomancer", "rhabdomancy", "rhabdomyoma", "rhabdomyomata", "rhabdomyosarcoma", "rhabdosarcoma", "rhabdovirus", "rhachides", "rhachis", "rhachises", "rhagades", "rhaphe", "rhapsodic", "rhapsodically", "rhapsodise", "rhapsodised", "rhapsodises", "rhapsodising", "rhapsodize", "rhapsodized", "rhapsodizes", "rhapsodizing", "rhapsody", "rhd", "rhein", "rheinland", "rhenish", "rhenium", "rheologic", "rheological", "rheology", "rheometer", "rheostat", "rhesus", "rhetoric", "rhetorical", "rhetorically", "rhetorician", "rheumatic", "rheumatism", "rheumatoid", "rheumatologist", "rheumatology", "rheumy", "rhibhus", "rhinal", "rhinencephala", "rhinencephalon", "rhinestone", "rhinion", "rhinitis", "rhino", "rhinoceros", "rhinolaryngologist", "rhinolaryngology", "rhinopathy", "rhinophyma", "rhinoplasty", "rhinorrhea", "rhinoscope", "rhinoscopy", "rhinosporidiosis", "rhinostenosis", "rhinotomy", "rhinotracheitis", "rhinovirus", "rhiptoglossa", "rhizobia", "rhizobium", "rhizoctinia", "rhizoid", "rhizoidal", "rhizomatous", "rhizome", "rhizomorph", "rhizopod", "rhizopodan", "rhizopus", "rhizotomy", "rho", "rhodanthe", "rhodesia", "rhodesian", "rhodium", "rhodochrosite", "rhododendron", "rhodolite", "rhodomontade", "rhodonite", "rhodopsin", "rhomb", "rhombencephalon", "rhombi", "rhombic", "rhombohedral", "rhombohedron", "rhomboid", "rhomboidal", "rhombus", "rhonchi", "rhonchus", "rhubarb", "rhumb", "rhumba", "rhyme", "rhymed", "rhymeless", "rhymer", "rhymes", "rhymester", "rhyming", "rhyolite", "rhyta", "rhythm", "rhythmic", "rhythmical", "rhythmically", "rhythmicity", "rhythms", "rhytidectomy", "rhytidoplasty", "rhyton", "rial", "riant", "riata", "rib", "ribald", "ribaldry", "riband", "ribavirin", "ribband", "ribbed", "ribbing", "ribbon", "ribbonfish", "ribbonfishes", "ribbonlike", "ribbons", "ribbonwood", "ribbony", "ribgrass", "ribier", "ribing", "ribless", "riblike", "riboflavin", "ribonuclease", "ribonucleinase", "ribose", "ribosome", "ribosomes", "ribs", "ribwort", "Rica", "rica", "rice", "ricebird", "ricegrass", "ricer", "ricercacari", "ricercare", "ricercari", "rich", "richer", "riches", "richest", "richly", "richness", "richweed", "ricin", "rick", "ricketiness", "rickets", "rickettsia", "rickettsiae", "rickettsial", "rickettsialpox", "rickettsiosis", "rickety", "rickey", "rickrack", "ricksha", "rickshaw", "rico", "ricochet", "ricocheting", "ricochets", "ricochetted", "ricochetting", "ricotta", "ricrac", "rictus", "rid", "riddance", "ridded", "ridding", "riddle", "riddled", "riddling", "ride", "rider", "riders", "rides", "ridge", "ridged", "ridgel", "ridgeline", "ridgeling", "ridgepole", "ridgil", "ridgling", "ridicule", "ridiculed", "ridiculer", "ridicules", "ridiculing", "ridiculous", "ridiculously", "ridiculousness", "riding", "ridley", "rids", "riel", "riemannian", "rifadin", "rifampin", "rife", "riff", "riffian", "riffing", "riffle", "riffraff", "riffs", "rifle", "riflebird", "rifled", "rifleman", "rifles", "rifling", "rift", "rig", "rigamarole", "rigatoni", "rigged", "rigger", "rigging", "Right", "right", "righted", "righteous", "righteously", "righteousness", "rightfield", "rightful", "rightfully", "rightfulness", "righthander", "righting", "rightish", "rightism", "rightist", "rightly", "rightmost", "rightness", "rights", "rigid", "rigidification", "rigidified", "rigidifies", "rigidify", "rigidifying", "rigidity", "rigidly", "rigidness", "rigil", "rigmarole", "rigor", "rigorous", "rigorously", "rigorousness", "rigors", "rigour", "rigourousness", "rigours", "rigout", "rigs", "rijstafel", "rijstaffel", "rijsttaffel", "riksmaal", "rile", "riled", "riles", "rilievi", "rilievo", "riling", "rill", "rim", "rima", "rimactane", "rimae", "rime", "rimed", "rimeless", "rimier", "rimiest", "riming", "rimless", "rimmed", "rimming", "rimose", "rims", "rimu", "rimy", "rind", "rinderpest", "ring", "ringdove", "ringed", "ringer", "ringgit", "ringhals", "ringing", "ringleader", "ringlet", "ringleted", "ringlike", "ringmaster", "rings", "ringside", "ringtail", "ringway", "ringworm", "rink", "rinkhals", "rinse", "rinses", "rinsing", "rio", "riot", "rioter", "rioting", "riotous", "riotously", "riots", "rip", "riparian", "ripcord", "ripe", "ripely", "ripen", "ripened", "ripeness", "ripening", "ripens", "riposte", "ripped", "ripper", "ripping", "ripple", "rippled", "ripples", "rippling", "rips", "ripsaw", "riptide", "rira", "risc", "rise", "risen", "riser", "rises", "risibility", "risible", "rising", "risk", "risked", "riskier", "riskiest", "riskily", "riskiness", "risking", "riskless", "risklessness", "risks", "risky", "risotto", "risque", "rissole", "rit.", "ritalin", "ritardando", "rite", "ritenuto", "ritonavir", "ritual", "ritualise", "ritualised", "ritualism", "ritualist", "ritualistic", "ritualize", "ritualized", "ritualizes", "ritualizing", "ritually", "rituals", "ritzier", "ritziest", "ritzy", "rival", "rivaled", "rivaling", "rivalled", "rivalling", "rivalrous", "rivalry", "rivals", "rive", "river", "riverbank", "riverbed", "rivers", "riverside", "rives", "rivet", "riveted", "riveter", "riveting", "rivets", "rivetter", "riving", "rivulet", "rivulus", "riyal", "rna", "rnase", "roach", "road", "roadbed", "roadblock", "roadbook", "roadhog", "roadhouse", "roadkill", "roadless", "roadman", "roadrunner", "roads", "roadside", "roadstead", "roadster", "roadway", "roadworthiness", "roam", "roamed", "roamer", "roaming", "roams", "roan", "roar", "roarer", "roaring", "roars", "roast", "roasted", "roaster", "roasting", "roasts", "rob", "robalo", "robaxin", "robbed", "robber", "robberies", "robbery", "robbing", "robe", "robed", "robes", "robin", "robing", "roble", "robot", "robotic", "robotics", "robotlike", "robots", "robs", "robust", "robustious", "robustly", "robustness", "roc", "rocambole", "roccella", "rocephin", "rock", "rockabilly", "rockbound", "rockchuck", "rockcress", "rocked", "rocker", "rockers", "rockery", "rocket", "rocketed", "rocketing", "rocketry", "rockets", "rockfish", "rockfishes", "rockfoil", "rockier", "rockiest", "rockiness", "rocking", "rocklike", "rockrose", "rocks", "rockslide", "rockweed", "rocky", "rococo", "rod", "rode", "rodent", "rodents", "rodeo", "rodhos", "rodlike", "rodomontade", "rods", "roe", "roebuck", "roentgenium", "roentgenogram", "roentgenographic", "roentgenography", "roentgenoscope", "rofecoxib", "rofl", "roflcopter", "roflmao", "rogaine", "rogation", "rogue", "roguery", "roguish", "roguishly", "roguishness", "rohypnol", "roi", "roil", "roiled", "roilier", "roiliest", "roiling", "roils", "roily", "roister", "roisterer", "role", "roleplay", "roleplaying", "roles", "rolf", "roll", "rollback", "rolled", "roller", "rollerblade", "rollerblader", "rollerblades", "rollerblading", "rollers", "rollick", "rollicking", "rollickingly", "rollicks", "rolling", "rollmops", "rollover", "rolls", "rolypoliness", "rom", "roma", "romaic", "romaine", "roman", "romance", "romances", "romancing", "romani", "Romania", "romania", "romanian", "romanic", "romanise", "romanist", "romanize", "romanoff", "romansh", "romantic", "romantical", "romantically", "romanticisation", "romanticise", "romanticised", "romanticises", "romanticising", "romanticist", "romanticistic", "romanticization", "romanticize", "romanticized", "romanticizes", "romanticizing", "romany", "romish", "rommany", "romp", "romper", "romping", "romps", "rondeau", "rondeaux", "rondel", "rondelet", "rondo", "roneo", "roneograph", "rontgen", "rood", "roof", "roofed", "roofer", "roofing", "roofless", "roofs", "rooftop", "rooftree", "roofy", "rooibos", "rook", "rookery", "rookie", "rookier", "rookiest", "rooky", "room", "roomer", "roomette", "roomful", "roomie", "roomier", "roomiest", "roomily", "roominess", "rooming", "roommate", "roommates", "rooms", "roomy", "roosevelt", "rooseveltian", "roost", "rooster", "roosting", "roosts", "root", "rootage", "rootbound", "rooted", "rooter", "rooting", "rootle", "rootless", "rootlet", "roots", "rootstalk", "rootstock", "rope", "ropebark", "ropedancer", "ropemaker", "roper", "ropes", "ropewalk", "ropewalker", "ropeway", "ropey", "rophy", "ropier", "ropiest", "ropiness", "roping", "ropy", "roquette", "roridula", "rorqual", "rosacea", "rosaceous", "rosaria", "rosarium", "rosary", "rose", "roseate", "rosebay", "rosebud", "rosebush", "rosefish", "rosefishes", "rosehip", "roselle", "rosemaling", "rosemary", "roseola", "roses", "rosette", "rosewood", "rosicrucian", "rosier", "rosiest", "rosilla", "rosin", "rosiness", "rosinweed", "rosita", "rostella", "rostellum", "roster", "rostra", "rostrate", "rostrum", "rosy", "rot", "rotary", "rotatable", "rotate", "rotated", "rotates", "rotating", "rotation", "rotational", "rotationally", "rotatory", "rotavirus", "rotc", "rote", "rotenone", "rotfl", "rotflmfao", "rotflol", "rotgut", "rotifer", "rotisserie", "rotl", "rotogravure", "rotor", "rots", "rotted", "rotten", "rottenly", "rottenness", "rottenstone", "rotter", "rotting", "rotund", "rotunda", "rotundity", "rotundly", "rotundness", "rouble", "roubles", "roue", "rouge", "rougeberry", "rouged", "rough", "roughage", "roughcast", "roughdried", "roughed", "roughen", "roughened", "rougher", "roughhewn", "roughhouse", "roughhousing", "roughing", "roughish", "roughleg", "roughly", "roughneck", "roughness", "roughrider", "roughshod", "roulade", "rouleau", "rouleaux", "roulette", "roumania", "roumanian", "round", "roundabout", "rounded", "roundedness", "roundel", "roundelay", "rounder", "roundhead", "roundheaded", "roundhouse", "rounding", "roundish", "roundly", "roundness", "rounds", "roundsman", "roundtable", "roundup", "roundworm", "rouse", "rouser", "rouses", "rousing", "rousseauan", "roustabout", "rout", "route", "routed", "routemarch", "router", "routes", "routine", "routinely", "routines", "routing", "routs", "roux", "rove", "rover", "roves", "roving", "row", "rowan", "rowanberry", "rowboat", "rowdier", "rowdiest", "rowdily", "rowdiness", "rowdy", "rowdyism", "rowed", "rowel", "rowelled", "rowelling", "rower", "rowing", "rowlock", "rows", "royal", "royalism", "royalist", "royally", "royalties", "royalty", "rozelle", "rpm", "RS.", "Rs.", "rs.", "rt", "rtlt", "ruanda", "ruandan", "rub", "rubato", "rubbed", "rubber", "rubberise", "rubberize", "rubberlike", "rubberneck", "rubbernecker", "rubbernecking", "rubberstamp", "rubbery", "rubbing", "rubbish", "rubbishy", "rubble", "rubdown", "rube", "rubefacient", "rubel", "rubella", "rubeola", "rubicelle", "rubicund", "rubidium", "rubify", "ruble", "rubor", "rubric", "rubricate", "rubs", "Ruby", "ruby", "ruck", "ruckle", "rucksack", "ruckus", "ruction", "rudapithecus", "rudd", "rudder", "rudderfish", "rudderless", "rudderpost", "rudderstock", "ruddier", "ruddiest", "ruddiness", "ruddle", "ruddy", "rude", "rudely", "rudeness", "rudiment", "rudimentary", "rue", "rueful", "ruefully", "ruefulness", "ruf", "ruff", "ruffian", "ruffianism", "ruffianly", "ruffle", "ruffled", "ruffles", "ruffling", "rug", "ruga", "rugae", "rugby", "rugelach", "rugged", "ruggedisation", "ruggedise", "ruggedization", "ruggedize", "ruggedly", "ruggedness", "ruggelach", "rugger", "rugose", "rugs", "rugulah", "ruin", "ruination", "ruined", "ruiner", "ruining", "ruinous", "ruinously", "ruins", "rule", "ruled", "ruler", "rulers", "rulership", "rules", "ruling", "rulings", "ruly", "rum", "rumania", "rumanian", "rumansh", "rumba", "rumble", "rumbled", "rumbles", "rumbling", "rumbustious", "rumen", "rumina", "ruminant", "ruminate", "ruminated", "ruminates", "ruminating", "rumination", "ruminative", "ruminator", "rummage", "rummages", "rummaging", "rummer", "rummy", "rumor", "rumored", "rumormonger", "rumors", "rumour", "rumoured", "rumourmonger", "rumours", "rump", "rumple", "rumpled", "rumpus", "rumrunner", "run", "runabout", "runaway", "runch", "runcinate", "rundle", "rundown", "rune", "rung", "runic", "runnel", "runner", "runners", "runnier", "runniest", "runniness", "running", "runny", "runoff", "runproof", "runs", "runt", "runtiness", "runty", "runup", "runway", "rupee", "rupees", "rupestral", "rupiah", "rupicolous", "rupture", "ruptured", "ruptures", "rupturewort", "rupturing", "rural", "ruralism", "ruralist", "rurality", "rurally", "ruritanian", "ruse", "rush", "rushed", "rusher", "rushes", "rushier", "rushiest", "rushing", "rushlight", "rushlike", "rushy", "rusk", "russet", "Russia", "russia", "russian", "rust", "rusted", "rustic", "rusticate", "rusticated", "rusticates", "rusticating", "rustication", "rusticism", "rusticity", "rustier", "rustiest", "rustiness", "rusting", "rustle", "rustler", "rustless", "rustling", "rustproof", "rustproofed", "rusts", "Rusty", "rusty", "rut", "rutabaga", "ruthenium", "rutherfordium", "ruthful", "ruthfulness", "ruthless", "ruthlessly", "ruthlessness", "rutile", "ruts", "rutted", "ruttier", "ruttiest", "rutting", "ruttish", "rutty", "rv", "Rwanda", "rwanda", "rwandan", "rya", "rydberg", "rye", "ryegrass", "S.C.", "s.c.", "SA", "sa", "saame", "saami", "saarinen", "sabahan", "sabaton", "sabayon", "sabbat", "sabbatarian", "sabbatia", "sabbatic", "sabbatical", "sabbatum", "saber", "sabers", "sabertooth", "sabertoothed", "sabicu", "sabine", "sable", "sabot", "sabotage", "sabotages", "sabotaging", "saboteur", "sabra", "sabre", "sabres", "sac", "sacajawea", "saccade", "saccadic", "saccharase", "saccharide", "saccharified", "saccharifies", "saccharify", "saccharin", "saccharine", "saccharinity", "saccharose", "sacculate", "sacculated", "saccule", "sacculus", "sacerdotal", "sacerdotalism", "saceur", "sachem", "sachet", "sachsen", "sack", "sackbut", "sackcloth", "sacked", "sackful", "sacking", "sacks", "saclant", "saclike", "sacque", "sacra", "sacral", "sacrament", "sacramental", "sacraria", "sacrarium", "sacred", "sacredly", "sacredness", "sacrifice", "sacrificeable", "sacrificer", "sacrifices", "sacrificial", "sacrificing", "sacrilege", "sacrilegious", "sacrilegiously", "sacrilegiousness", "sacristan", "sacristy", "sacrosanct", "sacrum", "sad", "saddam", "sadden", "saddened", "saddening", "saddens", "sadder", "saddest", "saddhu", "saddle", "saddleback", "saddlebag", "saddlebill", "saddlebow", "saddlecloth", "saddled", "saddler", "saddlery", "saddles", "saddling", "sadducean", "sadhe", "sadhu", "sadism", "sadist", "sadistic", "sadly", "sadness", "sadomasochism", "sadomasochist", "sadomasochistic", "safaqis", "safari", "safe", "safebreaker", "safecracker", "safeguard", "safeguarded", "safeguarding", "safeguards", "safehold", "safekeeping", "safely", "safeness", "safer", "safest", "safety", "safflower", "saffranine", "saffron", "safranin", "safranine", "sag", "saga", "sagacious", "sagaciously", "sagaciousness", "sagacity", "sagamore", "sage", "sagebrush", "sagely", "sagged", "sagging", "sagittal", "sagittate", "sagittiform", "sago", "sags", "saguaro", "saguaros", "sahaptin", "sahaptino", "saharan", "sahib", "Sahrawi", "sahrawi", "sahuaro", "said", "saida", "saiga", "saigon", "sail", "sailboat", "sailcloth", "sailed", "sailfish", "sailfishes", "sailing", "sailmaker", "sailor", "sailors", "sailplane", "sailplaning", "sails", "sainfoin", "Saint", "saint", "sainted", "sainthood", "saintlike", "saintliness", "saintly", "saints", "sakartvelo", "sake", "saki", "sakkara", "sakti", "saktism", "salaah", "salaam", "salaat", "salability", "salable", "salableness", "salacious", "salaciously", "salaciousness", "salacity", "salad", "salade", "salads", "salah", "salai", "salal", "salamander", "salamandriform", "salami", "salaried", "salaries", "salary", "salat", "sale", "saleable", "saleratus", "saleroom", "sales", "salesclerk", "salesgirl", "saleslady", "salesman", "salesmanship", "salespeople", "salesperson", "salesroom", "saleswoman", "salian", "salicylate", "salience", "saliency", "salient", "salientian", "saliferous", "salified", "salifies", "salify", "salim", "salinate", "saline", "salinity", "salinometer", "salisbury", "salishan", "saliva", "salivary", "salivate", "salivates", "salivating", "salivation", "sallet", "sallied", "sallow", "sallowness", "sally", "salmagundi", "salmi", "salmon", "salmonberry", "salmonella", "salmonellae", "salmonellosis", "salmonid", "salmwood", "salol", "salon", "salonica", "salonika", "saloon", "salp", "salpa", "salpae", "salpiglossis", "salpingectomy", "salpinges", "salpingitis", "salpinx", "salsa", "salsify", "salsilla", "salt", "saltarelli", "saltarello", "saltate", "saltation", "saltbox", "saltbush", "saltcellar", "salted", "salter", "saltier", "saltiest", "saltine", "saltiness", "salting", "saltire", "saltish", "saltlike", "saltpan", "saltpeter", "saltpetre", "salts", "saltshaker", "saltwater", "saltworks", "saltwort", "salty", "salubrious", "salubriousness", "salubrity", "salutary", "salutation", "salutatorian", "salutatory", "salute", "saluted", "saluter", "Salutes", "salutes", "saluting", "Salvador", "salvador", "salvadoran", "salvadorean", "salvadorian", "salvage", "salvageable", "salvaged", "salvager", "salvages", "salvaging", "salvation", "salve", "salver", "salverform", "salvia", "salvific", "salving", "salvinorin", "salvo", "salvoes", "salvor", "salwar", "sam", "saman", "samanala", "samara", "samarang", "samarcand", "samarium", "samarskite", "samba", "sambar", "sambuca", "sambur", "same", "samekh", "sameness", "sami", "samiel", "samisen", "samite", "samizdat", "Samoa", "samoa", "samoan", "samosa", "samovar", "samoyede", "sampan", "samphire", "sample", "sampled", "sampler", "samples", "sampling", "samsara", "samurai", "san", "sanaa", "sanatarium", "sanative", "sanatorium", "sancta", "sanctification", "sanctified", "sanctifies", "sanctify", "sanctifying", "sanctimonious", "sanctimoniously", "sanctimoniousness", "sanctimony", "sanction", "sanctionative", "sanctioned", "sanctioning", "sanctions", "sanctitude", "sanctity", "sanctuary", "sanctum", "sand", "sandal", "sandaled", "sandalled", "sandals", "sandalwood", "sandarac", "sandarach", "sandbag", "sandbagged", "sandbagger", "sandbagging", "sandbank", "sandbar", "sandberry", "sandblast", "sandblaster", "sandblasting", "sandblasts", "sandbox", "sandboy", "sandbur", "sander", "sanderling", "sandfish", "sandfly", "sandglass", "sandgrouse", "sandhi", "sandhopper", "sandier", "sandiest", "sandiness", "sanding", "sandlike", "sandlot", "sandman", "sandpaper", "sandpapery", "sandpile", "sandpiper", "sandpit", "sandril", "sands", "sandspur", "sandstone", "sandstorm", "sandwich", "sandwiched", "sandwiches", "sandwiching", "sandwichman", "sandwort", "sandy", "sane", "sanely", "saneness", "sanfoin", "sang", "sangapenum", "sangaree", "sangoma", "sangraal", "sangria", "sanguification", "sanguinary", "sanguine", "sanguineness", "sanguineous", "sanguinity", "sanicle", "sanies", "sanious", "sanitaria", "sanitariness", "sanitarium", "sanitary", "sanitate", "sanitation", "sanitisation", "sanitise", "sanitised", "sanitises", "sanitising", "sanitization", "sanitize", "sanitized", "sanitizes", "sanitizing", "sanity", "sank", "sannup", "sannyasi", "sannyasin", "sansevieria", "santa", "santimi", "santims", "sanyasi", "Sao", "sao", "sap", "saphar", "saphead", "saphena", "saphenae", "sapid", "sapidity", "sapidness", "sapience", "sapiens", "sapient", "sapiential", "sapiently", "sapless", "sapling", "sapodilla", "saponaceous", "saponification", "saponified", "saponifies", "saponify", "saponin", "saporous", "sapota", "sapote", "sapped", "sapper", "sapphic", "sapphire", "sapphirine", "sapphism", "sappier", "sappiest", "sapping", "sappy", "sapraemia", "sapremia", "saprobe", "saprobic", "saprolite", "sapropel", "saprophagous", "saprophyte", "saprophytic", "saprozoic", "saps", "sapsago", "sapsucker", "sapwood", "saqqarah", "saquinavir", "saraband", "sarafem", "saragossa", "saran", "sarape", "sarawakian", "sarcasm", "sarcastic", "sarcastically", "sarcenet", "sarcocystidean", "sarcocystieian", "sarcodine", "sarcodinian", "sarcoid", "sarcoidosis", "sarcolemma", "sarcolemmal", "sarcolemmic", "sarcolemnous", "sarcoma", "sarcomere", "sarcophagi", "sarcophagus", "sarcoplasm", "sarcoptid", "sarcosine", "sarcosomal", "sarcosome", "sarcosporidian", "sarcostyle", "sard", "sardegna", "sardine", "sardinian", "sardius", "sardonic", "sardonically", "sardonyx", "saree", "sargasso", "sargassum", "sari", "sarin", "sarong", "sars", "sarsaparilla", "sarsenet", "sartor", "sartorial", "sartorii", "sartorius", "sash", "sashay", "sashaying", "sashays", "sashimi", "sasquatch", "sass", "sassaby", "sassafras", "sassanid", "sassanidae", "sasses", "sassier", "sassiest", "sassing", "sassy", "sat", "SAT.", "Sat.", "sat.", "satang", "satanic", "satanism", "satanophobia", "satchel", "satchmo", "sate", "sateen", "satellite", "satellites", "sates", "satiable", "satiate", "satiated", "satiation", "satiety", "satin", "satinet", "satinette", "sating", "satinleaf", "satinpod", "satinwood", "satiny", "satire", "satiric", "satirical", "satirically", "satirise", "satirised", "satirises", "satirising", "satirist", "satirize", "satirized", "satirizes", "satirizing", "satisfaction", "satisfactorily", "satisfactoriness", "satisfactory", "satisfiable", "satisfice", "satisfices", "satisficing", "satisfied", "satisfier", "satisfies", "satisfise", "satisfy", "satisfying", "satisfyingly", "satori", "satrap", "satsuma", "saturate", "saturated", "saturates", "saturating", "saturation", "saturday", "satureia", "saturniid", "saturnine", "saturnism", "satyr", "satyriasis", "satyric", "satyrical", "sauce", "sauceboat", "saucepan", "saucepot", "saucer", "sauces", "saucier", "sauciest", "saucily", "sauciness", "saucy", "Saudi", "saudi", "sauerbraten", "sauerkraut", "sauna", "saunter", "saunterer", "sauntering", "saunters", "saurel", "saurian", "saurischian", "sauropod", "saury", "sausage", "sausages", "saussure", "saute", "sauteed", "sauteing", "savage", "savagely", "savageness", "savagery", "savages", "savaging", "savange", "savanges", "savanna", "savant", "savarin", "save", "saved", "saveloy", "saver", "saves", "savin", "saving", "savings", "savior", "saviors", "saviour", "saviours", "savor", "savored", "savories", "savoriness", "savoring", "savorless", "savorlessness", "savors", "savory", "savour", "savoured", "savouries", "savouring", "savourless", "savourlessness", "savours", "savoury", "savvied", "savvier", "savviest", "savvy", "saw", "sawbill", "sawbones", "sawbuck", "sawdust", "sawfish", "sawfishes", "sawfly", "sawhorse", "sawing", "sawm", "sawmill", "sawpit", "sawtooth", "sawwort", "sawyer", "saxatile", "saxegothea", "saxhorn", "saxicoline", "saxicolous", "saxifrage", "saxist", "saxitoxin", "saxon", "saxophone", "saxophonist", "say", "sayanci", "sayeret", "saying", "sayings", "sayonara", "says", "sba", "sbe", "sbw", "sc", "scab", "scabbard", "scabbier", "scabbiest", "scabby", "scabicide", "scabies", "scabiosa", "scabious", "scablands", "scabrous", "scad", "scaffold", "scaffolding", "scaffolds", "scag", "scagged", "scagging", "scalability", "scalable", "scalage", "scalar", "scalawag", "scald", "scaldfish", "scaldfishes", "scalding", "scalds", "scale", "scaled", "scaleless", "scalelike", "scalene", "scaleni", "scalenus", "scaler", "scales", "scaley", "scalic", "scalier", "scaliest", "scaliness", "scaling", "scallion", "scallop", "scalloped", "scallopine", "scalloping", "scallopini", "scallops", "scallywag", "scalp", "scalpel", "scalper", "scalping", "scalps", "scaly", "scam", "scammer", "scammony", "scammonyroot", "scamp", "scamper", "scampering", "scampers", "scampi", "scampo", "scams", "scan", "scandal", "scandalisation", "scandalise", "scandalised", "scandalises", "scandalising", "scandalization", "scandalize", "scandalized", "scandalizes", "scandalizing", "scandalmonger", "scandalmongering", "scandalous", "scandalously", "scandalousness", "scandals", "scandent", "scandinavian", "scandium", "scanned", "scanner", "scanning", "scans", "scansion", "scant", "scantier", "scantiest", "scantily", "scantiness", "scanting", "scantling", "scantness", "scants", "scanty", "scape", "scapegoat", "scapegoats", "scapegrace", "scaphocephaly", "scaphoid", "scaphopod", "scapose", "scapula", "scapulae", "scapular", "scapulary", "scapulohumeral", "scar", "scarab", "scarabaean", "scarabaei", "scarabaeid", "scarabaeus", "scaramouche", "scarce", "scarcely", "scarceness", "scarcity", "scare", "scarecrow", "scarecrowish", "scared", "scaremonger", "scarer", "scares", "scarf", "scarface", "scarfing", "scarfpin", "scarier", "scariest", "scarified", "scarifies", "scarify", "scarily", "scarlatina", "scarlet", "Scarlett", "scarp", "scarper", "scarred", "scarring", "scars", "scarves", "scary", "scat", "scathe", "scathing", "scathingly", "scatological", "scatology", "scatophagy", "scats", "scatted", "scatter", "scatterbrain", "scatterbrained", "scattered", "scattergood", "scattergun", "scattering", "scatters", "scattershot", "scatting", "scatty", "scaup", "scauper", "scavenge", "scavenger", "scavenges", "scavenging", "scd", "scenario", "scenarios", "scenarist", "scend", "scene", "scenery", "scenes", "sceneshifter", "scenic", "scenically", "scent", "scented", "scenting", "scentless", "scents", "scepter", "sceptered", "scepters", "sceptic", "sceptical", "sceptically", "scepticism", "sceptics", "sceptre", "sceptred", "sceptres", "scet", "schatchen", "schatchonim", "schedule", "scheduled", "scheduler", "schedules", "scheduling", "scheelite", "schema", "schemata", "schematic", "schematically", "schematisation", "schematise", "schematization", "schematize", "scheme", "schemer", "schemes", "scheming", "schemozzle", "scheol", "scherzandi", "scherzando", "scherzi", "scherzo", "schilling", "schipperke", "schism", "schismatic", "schismatical", "schismatically", "schist", "schistorrhachis", "schistosome", "schistosomiasis", "schizanthus", "schizocarp", "schizogony", "schizoid", "schizopetalon", "schizophrenia", "schizophrenic", "schizophyceae", "schizothymia", "schlemiel", "schlep", "schlepper", "schlesien", "schlimazel", "schlock", "schlockmeister", "schmaltz", "schmaltzy", "schmalz", "schmalzy", "schmear", "schmeer", "schmegegge", "schmo", "schmoes", "schmoose", "schmoosing", "schmooze", "schmoozer", "schmuck", "schnapps", "schnaps", "schnauzer", "schnecken", "schnittlaugh", "schnitzel", "schnook", "schnorchel", "schnorkel", "schnorr", "schnorrer", "schnoz", "schnozzle", "schoenberg", "scholar", "scholarly", "scholars", "scholarship", "scholarships", "scholastic", "scholastically", "scholia", "scholiast", "scholium", "school", "schoolbag", "schoolbook", "schoolboy", "schoolboyish", "schoolchild", "schooldays", "schoolfellow", "schoolfriend", "schoolgirl", "schoolgirlish", "schoolhouse", "schooling", "schoolman", "schoolmarm", "schoolmaster", "schoolmate", "schoolmistress", "schoolroom", "schools", "schoolteacher", "schooltime", "schoolwide", "schoolwork", "schoolyard", "schooner", "schorl", "schottische", "schrod", "schtick", "schtickl", "schtik", "schtikl", "schul", "schuln", "schuss", "schutzstaffel", "schutzstaffeln", "schwa", "schwarzwald", "schweiz", "sciaenid", "sciara", "sciarid", "sciatic", "sciatica", "scid", "science", "sciences", "scienter", "scientific", "scientifically", "scientist", "scientists", "scilla", "scimitar", "scincid", "scintilla", "scintillant", "scintillate", "scintillates", "scintillating", "scintillation", "sciolism", "sciolist", "sciolistic", "scion", "scirrhi", "scirrhus", "scission", "scissor", "scissoring", "scissors", "scissortail", "scissure", "sclaff", "sclera", "scleredema", "sclerite", "scleritis", "scleroma", "scleromata", "sclerometer", "scleroprotein", "sclerosed", "scleroses", "sclerosis", "sclerotia", "sclerotic", "sclerotinia", "sclerotium", "sclerotomy", "sclk", "scnt", "scoff", "scoffed", "scoffer", "scoffing", "scoffingly", "scofflaw", "scoffs", "scoke", "scold", "scolded", "scolder", "scolding", "scolds", "scoleces", "scolex", "scolices", "scolion", "scoliosis", "scollop", "scolopendrium", "scombresocidae", "scombresox", "scombroid", "sconce", "scone", "scoop", "scooped", "scoopful", "scooping", "scoops", "scoot", "scooted", "scooter", "scooting", "scoots", "scopal", "scope", "scopolamine", "scopula", "scopulae", "scorbutic", "scorbutus", "scorch", "scorched", "scorcher", "scorches", "scorching", "score", "score-wise", "scoreboard", "scorecard", "scored", "scorekeeper", "scoreless", "scorer", "scores", "scoria", "scoriae", "scorified", "scorifies", "scorify", "scoring", "scorn", "scorned", "scorner", "scornful", "scornfully", "scorning", "scorns", "scorpaenid", "scorpaenoid", "scorper", "scorpion", "scorpionfish", "scorpionweed", "scorzonera", "scotch", "scotchman", "scotchwoman", "scoter", "scotoma", "scotomata", "scotomatous", "scots", "scotsman", "scottie", "scottish", "scoundrel", "scoundrelly", "scour", "scoured", "scourer", "scourge", "scourger", "scourging", "scouring", "scours", "scouse", "scouser", "scout", "scouter", "scouting", "scoutmaster", "scouts", "scow", "scowl", "scowling", "scowls", "scpo", "scrabble", "scrabbles", "scrabbling", "scrabbly", "scrag", "scragged", "scraggier", "scraggiest", "scragging", "scragglier", "scraggliest", "scraggly", "scraggy", "scram", "scramble", "scrambled", "scrambler", "scrambles", "scrambling", "scrammed", "scramming", "scrams", "scranch", "scrap", "scrapbook", "scrape", "scraper", "scrapheap", "scrapie", "scraping", "scrapped", "scrapper", "scrappier", "scrappiest", "scrappily", "scrappiness", "scrapping", "scrapple", "scrappy", "scraps", "scratch", "scratched", "scratcher", "scratches", "scratchiness", "scratching", "scratchpad", "scratchy", "scraunch", "scrawl", "scrawler", "scrawnier", "scrawniest", "scrawniness", "scrawny", "screak", "screakily", "screaky", "scream", "screamed", "screamer", "screaming", "screamingly", "screams", "scree", "screech", "screeched", "screecher", "screeches", "screeching", "screechy", "screed", "screen", "screened", "screener", "screeners", "screening", "screenings", "screenland", "screenplay", "screens", "screenwriter", "screenwriters", "screw", "screwball", "screwballer", "screwbean", "screwdriver", "screwed", "screwier", "screwiest", "screwing", "screws", "screwtop", "screwup", "screwy", "scribble", "scribbled", "scribbler", "scribbles", "scribbling", "scribe", "scriber", "scried", "scries", "scrim", "scrimmage", "scrimp", "scrimped", "scrimping", "scrimps", "scrimpy", "scrimshank", "scrimshanker", "scrimshaw", "scrimy", "scrip", "script", "scripted", "scripting", "scriptoria", "scriptorium", "scripts", "scriptural", "scripture", "scriptwriter", "scrivened", "scrivener", "scrod", "scrofula", "scrofulous", "scroll", "scrolling", "scrolls", "scrooge", "scrota", "scrotal", "scrotum", "scrounge", "scrounged", "scrounger", "scrounges", "scrounging", "scrub", "scrubbed", "scrubber", "scrubbier", "scrubbiest", "scrubbiness", "scrubbing", "scrubbird", "scrubby", "scrubland", "scrubs", "scruff", "scruffier", "scruffiest", "scruffy", "scrum", "scrummage", "scrummed", "scrumming", "scrumptious", "scrumptiously", "scrumpy", "scrums", "scrunch", "scrunches", "scrunching", "scruple", "scrupulous", "scrupulously", "scrupulousness", "scrutineer", "scrutinise", "scrutinised", "scrutiniser", "scrutinises", "scrutinising", "scrutinize", "scrutinized", "scrutinizer", "scrutinizes", "scrutinizing", "scrutiny", "scry", "scsi", "scuba", "scud", "scudded", "scudding", "scudi", "scudo", "scuds", "scuff", "scuffer", "scuffing", "scuffle", "scuffles", "scuffling", "scuffs", "scull", "sculler", "scullery", "sculling", "scullion", "sculls", "sculpin", "sculpt", "sculpted", "sculpting", "sculptor", "sculptress", "sculpts", "sculptural", "sculpture", "sculptured", "sculpturer", "sculptures", "sculpturesque", "scum", "scumbag", "scumble", "scummed", "scumming", "scummy", "scums", "scungier", "scungiest", "scungy", "scunner", "scup", "scupper", "scuppering", "scuppernong", "scuppers", "scurf", "scurfy", "scurried", "scurries", "scurrility", "scurrilous", "scurrilously", "scurry", "scurrying", "scurvier", "scurviest", "scurvily", "scurvy", "scut", "scuta", "scutcheon", "scute", "scutella", "scutellum", "scuttle", "scuttlebutt", "scuttled", "scuttles", "scuttling", "scutum", "scyphi", "scyphistoma", "scyphistomae", "scyphozoa", "scyphozoan", "scyphus", "scythe", "scythian", "scything", "se", "sea", "seabag", "seabed", "seabird", "seaboard", "seaborgium", "seaborne", "seacoast", "seafarer", "seafaring", "seafood", "seafowl", "seafront", "seagirt", "seagoing", "seagrass", "seagull", "seahorse", "seal", "sealant", "sealed", "sealer", "sealing", "seals", "sealskin", "seam", "seaman", "seamanlike", "seamanly", "seamanship", "seamed", "seamier", "seamiest", "seaming", "seamless", "seamlessly", "seamount", "seams", "seamster", "seamstress", "seamy", "seanad", "seance", "seaplane", "seaport", "seaquake", "sear", "search", "searched", "searcher", "searches", "searching", "searchingly", "searchlight", "seared", "searing", "searobin", "seas", "seascape", "seashell", "seashore", "seasick", "seasickness", "seaside", "seasnail", "season", "seasonable", "seasonableness", "seasonably", "seasonal", "seasonally", "seasoned", "seasoner", "seasoning", "seasons", "seat", "seatbelt", "seated", "seating", "seats", "seawall", "seaward", "seawards", "seawater", "seaway", "seaweed", "seaworthiness", "seaworthy", "seb", "sebaceous", "sebe", "seborrhea", "sebum", "sec", "secant", "secateurs", "secede", "secedes", "seceding", "secern", "secernate", "secernment", "secerns", "secession", "secessionism", "secessionist", "sechuana", "seckel", "seclude", "secluded", "seclusion", "secobarbital", "seconal", "second", "secondarily", "secondary", "seconder", "secondhand", "secondi", "seconding", "secondly", "secondment", "secondo", "seconds", "secpar", "secrecy", "secret", "secretaire", "secretarial", "secretariate", "secretaries", "secretary", "secretaryship", "secretase", "secrete", "secreter", "secretes", "secretin", "secreting", "secretion", "secretive", "secretively", "secretiveness", "secretly", "secretor", "secretory", "secrets", "sect", "sectarian", "sectarianism", "sectarist", "sectary", "section", "sectional", "sectionalisation", "sectionalise", "sectionalism", "sectionalization", "sectionalize", "sectioned", "sectioning", "sections", "sector", "sectorial", "sectors", "sectral", "secular", "secularisation", "secularise", "secularised", "secularises", "secularising", "secularism", "secularist", "secularization", "secularize", "secularized", "secularizes", "secularizing", "secundigravida", "secure", "secured", "securely", "secureness", "securer", "secures", "securing", "securities", "security", "sedan", "sedate", "sedately", "sedateness", "sedates", "sedating", "sedation", "sedative", "sedentary", "sedge", "sedgelike", "sedgy", "sediment", "sedimentary", "sedimentation", "sedimenting", "sediments", "sedition", "seditious", "seduce", "seduced", "seducer", "seduces", "seducing", "seduction", "seductive", "seductively", "seductress", "sedulity", "sedulous", "sedulously", "sedulousness", "sedum", "see", "seeable", "seed", "seedbed", "seedcake", "seedcase", "seeded", "seeder", "seedier", "seediest", "seediness", "seeding", "seedless", "seedling", "seedlings", "seedman", "seedpod", "seeds", "seedsman", "seedtime", "seedy", "seeing", "seek", "seeker", "seeking", "seeks", "seel", "seeland", "seem", "seemed", "seeming", "seemingly", "seemlier", "seemliest", "seemliness", "seemly", "seems", "seen", "seep", "seepage", "seeped", "seeping", "seeps", "seer", "seersucker", "sees", "seesaw", "seesawing", "seethe", "seething", "segment", "segmental", "segmentation", "segmented", "segmenting", "segments", "segni", "segno", "segregate", "segregated", "segregates", "segregating", "segregation", "segregationism", "segregationist", "segregator", "segue", "segueing", "segues", "seguing", "seiche", "seidel", "seigneur", "seigneury", "seignior", "seigniorage", "seigniory", "seine", "seism", "seismal", "seismic", "seismogram", "seismograph", "seismography", "seismologic", "seismological", "seismologist", "seismology", "seismosaur", "seize", "seized", "seizer", "seizes", "seizing", "seizure", "seizures", "selachian", "selachii", "selcraig", "seldom", "select", "selected", "selecting", "selection", "selections", "selective", "selectively", "selectivity", "selectman", "selector", "selects", "selectwoman", "selenium", "selenolatry", "selenology", "seleucid", "seleucidae", "self", "selfish", "selfishly", "selfishness", "selfless", "selflessly", "selflessness", "selfsame", "selfsameness", "seljuk", "sell", "sellable", "seller", "sellers", "selling", "selloff", "sellotape", "sellout", "sells", "selsyn", "seltzer", "selva", "selvage", "selvedge", "selves", "semantic", "semantically", "semanticist", "semantics", "semaphore", "semasiology", "semblance", "semen", "semester", "semestral", "semestrial", "semi", "semi-annually", "semi-celebrities", "semi-liquefied", "semi-obscure", "semi-professional", "semi-public", "semi-retired", "semi-skilled", "semiabstract", "semiannual", "semiannually", "semiaquatic", "semiarid", "semiautobiographical", "semiautomatic", "semibreve", "semicentenary", "semicentennial", "semicircle", "semicircular", "semicolon", "semicoma", "semicomatose", "semiconducting", "semiconductive", "semiconductor", "semiconscious", "semiconsciousness", "semidark", "semidarkness", "semidesert", "semidetached", "semidiameter", "semiempirical", "semiepiphyte", "semifinal", "semifinalist", "semifluidity", "semiformal", "semigloss", "semihard", "semiliquid", "semiliterate", "semilunar", "semimonthly", "seminal", "seminar", "seminarian", "seminarist", "seminars", "seminary", "seminiferous", "seminoma", "seminude", "semiofficial", "semiology", "semiopaque", "semiotic", "semiotical", "semiotician", "semiotics", "semiparasite", "semiparasitic", "semipermanent", "semipermeable", "semipolitical", "semiprecious", "semiprivate", "semipro", "semiprofessional", "semipublic", "semiquaver", "semirigid", "semiskilled", "semisoft", "semisolid", "semisweet", "semisynthetic", "semite", "semiterrestrial", "semitic", "semitone", "semitrailer", "semitrance", "semitransparency", "semitransparent", "semitropic", "semitropical", "semitropics", "semivowel", "semiweekly", "semolina", "sempiternal", "sempiternity", "sempstress", "sen", "SEN.", "Sen.", "sen.", "senate", "senator", "senatorial", "senators", "senatorship", "send", "sendee", "sender", "sending", "sends", "sendup", "sene", "senecan", "senega", "Senegal", "senegal", "senegalese", "senesce", "senescence", "senescent", "seneschal", "senile", "senility", "senior", "seniority", "seniors", "seniti", "senna", "sennit", "senor", "senores", "sensate", "sensation", "sensational", "sensationalise", "sensationalised", "sensationalises", "sensationalising", "sensationalism", "sensationalist", "sensationalistic", "sensationalize", "sensationalized", "sensationalizes", "sensationalizing", "sensationally", "sense", "sensed", "senseless", "senselessly", "senselessness", "senses", "sensibilise", "sensibilities", "sensibility", "sensibilize", "sensible", "sensibleness", "sensibly", "sensify", "sensilla", "sensillum", "sensing", "sensitisation", "sensitise", "sensitised", "sensitiser", "sensitises", "sensitising", "sensitive", "sensitively", "sensitiveness", "sensitivities", "sensitivity", "sensitization", "sensitize", "sensitized", "sensitizer", "sensitizes", "sensitizing", "sensitometer", "sensor", "sensorial", "sensorimotor", "sensorineural", "sensorium", "sensors", "sensory", "sensual", "sensualise", "sensualism", "sensualist", "sensuality", "sensualize", "sensually", "sensualness", "sensuous", "sensuously", "sensuousness", "sent", "sente", "sentence", "sentenced", "sentences", "sentencing", "sentential", "sententious", "sententiously", "senti", "sentience", "sentiency", "sentient", "sentiment", "sentimental", "sentimentalisation", "sentimentalise", "sentimentalised", "sentimentalises", "sentimentalising", "sentimentalism", "sentimentalist", "sentimentality", "sentimentalization", "sentimentalize", "sentimentalized", "sentimentalizes", "sentimentalizing", "sentimentally", "sentimentise", "sentimentises", "sentimentize", "sentimentizes", "sentiments", "sentinel", "sentry", "senusi", "senussis", "sep", "SEP.", "Sep.", "sep.", "sepal", "sepaline", "sepaloid", "separability", "separable", "separably", "separate", "separated", "separately", "separateness", "separates", "separating", "separation", "separationism", "separationist", "separatism", "separatist", "separatists", "separative", "separator", "separatrices", "separatrix", "sephardi", "sephardim", "sepiolite", "seppuku", "sepsis", "sept", "SEPT.", "Sept.", "sept.", "septa", "septal", "septaria", "septarium", "septate", "septation", "septectomy", "september", "septenary", "septennia", "septennium", "septet", "septette", "septic", "septicaemia", "septicemia", "septicemic", "septillion", "septrional", "septuagenarian", "septum", "septuple", "sepulcher", "sepulchers", "sepulchral", "sepulchre", "sepulchres", "sepulture", "sequel", "sequela", "sequelae", "sequella", "sequels", "sequenator", "sequence", "sequencer", "sequences", "sequencing", "sequent", "sequential", "sequentially", "sequester", "sequestered", "sequestra", "sequestrate", "sequestration", "sequestrum", "sequin", "sequined", "sequoia", "sequoyah", "sera", "seraglio", "serail", "serape", "seraph", "seraphic", "seraphical", "seraphim", "serax", "serb", "serbian", "serdica", "sere", "serenade", "serenades", "serenading", "serendipitous", "serendipity", "serene", "serenely", "sereness", "serenity", "serf", "serfdom", "serfhood", "serflike", "serge", "sergeant", "serger", "serial", "serialisation", "serialisations", "serialise", "serialised", "serialises", "serialising", "serialism", "serialization", "serializations", "serialize", "serialized", "serializes", "serializing", "serially", "serials", "seriatim", "sericeous", "sericterium", "serictery", "sericultural", "sericulture", "sericulturist", "seriema", "series", "serif", "serigraph", "serigraphy", "serin", "serine", "seriocomedy", "seriocomic", "seriocomical", "serious", "seriously", "seriousness", "seriph", "serjeant", "sermon", "sermonise", "sermonised", "sermoniser", "sermonises", "sermonising", "sermonize", "sermonized", "sermonizer", "sermonizes", "sermonizing", "serologic", "serological", "serologist", "serology", "serosa", "serotine", "serotonin", "serous", "serow", "serpasil", "serpent", "serpentine", "serranid", "serrate", "serrated", "serratia", "serration", "serratus", "serried", "serrulate", "sertraline", "sertularian", "serum", "serval", "servant", "servants", "serve", "served", "server", "servers", "serves", "service", "serviceability", "serviceable", "serviceableness", "serviceberry", "serviced", "serviceman", "services", "servicing", "serviette", "servile", "servilely", "servility", "serving", "servings", "servitor", "servitude", "servo", "servomechanical", "servomechanism", "servosystem", "serzone", "sesame", "sesamoid", "sesbania", "sesquicentennial", "sesquipedalia", "sesquipedalian", "sesquipedality", "sess", "sessile", "session", "sessions", "sestertia", "sestertium", "sestet", "set", "seta", "setaceous", "setae", "setback", "setbacks", "setline", "setoff", "setose", "sets", "setscrew", "setswana", "sett", "settee", "setter", "setterwort", "setting", "settings", "settle", "settled", "settlement", "settlements", "settler", "settlers", "settles", "settling", "settlor", "setup", "sevastopol", "seven", "seven-fold", "sevener", "sevenfold", "sevensome", "seventeen", "seventeenth", "seventh", "seventhly", "seventies", "seventieth", "seventy", "sever", "severable", "several", "severalise", "severalises", "severalize", "severalizes", "severally", "severalty", "severance", "severe", "severed", "severely", "severeness", "severest", "severing", "severity", "severs", "seville", "sew", "sewage", "sewed", "sewellel", "sewer", "sewerage", "sewing", "sewn", "sex", "sexagenarian", "sexagesimal", "sexcapade", "sexed", "sexes", "sexier", "sexiest", "sexiness", "sexing", "sexism", "sexist", "sexistic", "sexless", "sexlessness", "sexploitation", "sexpot", "sext", "sextant", "sextet", "sextette", "sextillion", "sexton", "sextuple", "sextuplet", "sexual", "sexualise", "sexuality", "sexualize", "sexually", "sexy", "Seychelles", "seychelles", "seychellois", "sezession", "sforzando", "sgml", "sgraffiti", "sgraffito", "SGT.", "Sgt.", "sgt.", "SHA", "Sha", "sha", "shaaban", "shabbas", "shabbasim", "shabbat", "shabbatim", "shabbier", "shabbiest", "shabbily", "shabbiness", "shabby", "shabu", "shabuoth", "shack", "shacking", "shackle", "shackled", "shacko", "shackoes", "shad", "shadberry", "shadblow", "shadbush", "shadchan", "shadchanim", "shadchans", "shaddock", "shade", "shaded", "shades", "shadflower", "shadfly", "shadier", "shadiest", "shadiness", "shading", "shadow", "shadowbox", "shadowboxing", "shadowed", "shadower", "shadowgraph", "shadowiness", "shadowing", "shadows", "shadowy", "shady", "shaft", "shag", "shagbark", "shagged", "shaggier", "shaggiest", "shaggily", "shagginess", "shagging", "shaggy", "shaggymane", "shahadah", "shaheed", "shaitan", "shakable", "shake", "shakeable", "shakedown", "shaken", "shakeout", "shaker", "shakes", "shakespearean", "shakespearian", "shakeup", "shakier", "shakiest", "shakily", "shakiness", "shaking", "shako", "shakoes", "shakspere", "shaky", "shale", "SHALL", "Shall", "shall", "SHALLN'T", "Shalln't", "shalln't", "SHALLNT", "Shallnt", "shallnt", "SHALLN\u2019T", "Shalln\u2019t", "shalln\u2019t", "shallon", "shallot", "shallow", "shallower", "shallowly", "shallowness", "shallu", "shalwar", "sham", "shaman", "shamanise", "shamanism", "shamanist", "shamanistic", "shamanize", "shamble", "shambling", "shambolic", "shambolically", "shame", "shamed", "shamefaced", "shamefacedly", "shamefacedness", "shameful", "shamefully", "shamefulness", "shameless", "shamelessly", "shamelessness", "shaming", "shamisen", "shammas", "shammed", "shammer", "shamming", "shammosim", "shammy", "shampoo", "shamrock", "shams", "shamus", "shan", "SHAN'T", "Shan't", "shan't", "shandy", "shandygaff", "shanghai", "shanghaier", "shanghaiing", "shanghais", "shank", "shanny", "SHANT", "Shant", "shant", "shantung", "shanty", "shantytown", "SHAN\u2019T", "Shan\u2019t", "shan\u2019t", "shape", "shaped", "shapeless", "shapelessly", "shapelessness", "shapelier", "shapeliest", "shapeliness", "shapely", "shaper", "shapes", "shaping", "shard", "share", "sharecrop", "sharecropped", "sharecropper", "sharecropping", "shared", "shareholder", "shareholders", "shareholding", "shareowner", "sharer", "shares", "shareware", "sharia", "shariah", "sharing", "shark", "sharks", "sharkskin", "sharksucker", "sharp", "sharpen", "sharpened", "sharpener", "sharpening", "sharpens", "sharper", "sharpest", "sharpie", "sharply", "sharpness", "sharpshoot", "sharpshooter", "sharpy", "shatter", "shattered", "shattering", "shatterproof", "shatters", "shave", "shaved", "shaven", "shaver", "shaves", "shavian", "shaving", "shavuot", "shavuoth", "shawl", "shawm", "shawny", "shay", "shaytan", "shd", "SHE", "She", "she", "SHE'D", "She'd", "she'd", "SHE'LL", "She'll", "she'll", "SHE'S", "She's", "she's", "sheaf", "shear", "sheared", "shearer", "shearing", "shears", "shearwater", "sheatfish", "sheatfishes", "sheath", "sheathe", "sheathed", "sheathes", "sheathing", "sheaves", "shebang", "shebeen", "shed", "shedder", "shedding", "sheds", "sheen", "sheeny", "sheep", "sheepcote", "sheepdog", "sheepfold", "sheepherder", "sheepish", "sheepishly", "sheepishness", "sheeplike", "sheepman", "sheeprun", "sheepshank", "sheepshead", "sheepshearing", "sheepskin", "sheepwalk", "sheer", "sheering", "sheers", "sheesha", "sheet", "sheeting", "sheetlike", "sheets", "shegetz", "sheik", "sheika", "sheikdom", "sheikh", "sheikha", "sheikhdom", "shekel", "sheldrake", "shelduck", "shelf", "shelfful", "shelflike", "shelfy", "shell", "shellac", "shellack", "shellacked", "shellacking", "shellbark", "shelled", "sheller", "shellfire", "shellfish", "shellfishes", "shellflower", "shelling", "shellproof", "shells", "shelter", "shelterbelt", "sheltered", "sheltering", "shelters", "shelve", "shelved", "shelver", "shelves", "shelving", "shelvy", "shemozzle", "shenanigan", "shenanigans", "shepherd", "shepherded", "shepherdess", "shepherding", "shepherds", "sherbert", "sherbet", "sherd", "sheriff", "sherlock", "sherry", "SHES", "Shes", "shes", "shevat", "shew", "SHE\u2019D", "She\u2019d", "she\u2019d", "SHE\u2019LL", "She\u2019ll", "she\u2019ll", "SHE\u2019S", "She\u2019s", "she\u2019s", "shf", "shia", "shiatsu", "shibah", "shibboleth", "shied", "shield", "shielded", "shielder", "shielding", "shields", "shier", "shiest", "shift", "shifted", "shifter", "shiftier", "shiftiest", "shiftily", "shiftiness", "shifting", "shiftless", "shiftlessness", "shifts", "shifty", "shigella", "shigellosis", "shiitake", "shikar", "shikarred", "shikarring", "shiksa", "shikse", "shill", "shillalah", "shillelagh", "shilling", "shillyshallied", "shillyshally", "shim", "shimmed", "shimmer", "shimmered", "shimmery", "shimmied", "shimming", "shimmy", "shimmying", "shin", "shinbone", "shindig", "shindy", "shine", "shiner", "shines", "shingle", "shingler", "shingles", "shingling", "shingly", "shinier", "shiniest", "shininess", "shining", "shinleaf", "shinleaves", "shinned", "shinney", "shinning", "shinny", "shinpad", "shinplaster", "shinto", "shintoism", "shintoist", "shintoistic", "shiny", "ship", "shipboard", "shipbuilder", "shipbuilding", "shipload", "shipmate", "shipment", "shipments", "shipowner", "shipped", "shipper", "shipping", "ships", "shipshape", "shipside", "shipway", "shipworm", "shipwreck", "shipwright", "shipyard", "shire", "shirk", "shirker", "shirking", "shirks", "shirr", "shirring", "shirt", "shirtdress", "shirtfront", "shirtier", "shirtiest", "shirting", "shirtmaker", "shirts", "shirtsleeve", "shirttail", "shirtwaist", "shirtwaister", "shirty", "shisha", "shit", "shite", "shithead", "shitless", "shitlist", "shittah", "shitted", "shitter", "shittim", "shittimwood", "shitting", "shitty", "shitwork", "shiv", "shiva", "shivah", "shivaree", "shiver", "shivering", "shivers", "shivery", "shlemiel", "shlep", "shlepper", "shlimazel", "shlock", "shlockmeister", "shmaltz", "shmear", "shmegegge", "shmo", "shmoes", "shmoose", "shmooze", "shmoozing", "shmuck", "shnook", "shnorr", "shnorrer", "shoal", "shoaling", "shoaly", "shoat", "shock", "shockable", "shocked", "shocker", "shocking", "shockingly", "shocks", "shod", "shodden", "shoddier", "shoddiest", "shoddily", "shoddiness", "shoddy", "shoe", "shoebill", "shoebird", "shoeblack", "shoebox", "shoed", "shoeful", "shoehorn", "shoehorned", "shoehorning", "shoelace", "shoeless", "shoemaker", "shoemaking", "shoes", "shoeshine", "shoestring", "shoetree", "shofar", "shofroth", "shogi", "shogun", "shogunate", "shoji", "shona", "shoo", "shoody", "shoofly", "shooing", "shook", "shoos", "shoot", "shooter", "shooting", "shootings", "shootout", "shoots", "shop", "shopaholic", "shopfront", "shophar", "shophroth", "shoping", "shopkeeper", "shoplift", "shoplifter", "shoplifting", "shopped", "shopper", "shoppers", "shopping", "shops", "shopsoiled", "shopwalker", "shopwindow", "shopworn", "shore", "shorebird", "shoreline", "shores", "shoreward", "shoring", "shorn", "short", "shortage", "shortages", "shortbread", "shortcake", "shortcoming", "shortcomings", "shortcut", "shorted", "shorten", "shortened", "shortener", "shortening", "shortens", "shorter", "shortest", "shortfall", "shortgrass", "shorthand", "shorthorn", "shortia", "shorting", "shortish", "shortlist", "shortlisting", "shortlists", "shortly", "shortness", "shorts", "shortsighted", "shortsightedness", "shortstop", "shoshoni", "shoshonian", "shot", "shote", "shotgun", "shotgunned", "shotgunning", "shotguns", "shots", "SHOULD", "Should", "should", "SHOULD'VE", "Should've", "should've", "shoulder", "shouldered", "shouldering", "shoulders", "SHOULDN'T", "Shouldn't", "shouldn't", "SHOULDN'T'VE", "Shouldn't've", "shouldn't've", "SHOULDNT", "Shouldnt", "shouldnt", "SHOULDNTVE", "Shouldntve", "shouldntve", "SHOULDN\u2019T", "Shouldn\u2019t", "shouldn\u2019t", "SHOULDN\u2019T\u2019VE", "Shouldn\u2019t\u2019ve", "shouldn\u2019t\u2019ve", "SHOULDVE", "Shouldve", "shouldve", "SHOULD\u2019VE", "Should\u2019ve", "should\u2019ve", "shout", "shouted", "shouter", "shouting", "shouts", "shove", "shoved", "shovel", "shovelboard", "shoveled", "shoveler", "shovelful", "shovelhead", "shoveling", "shovelled", "shoveller", "shovelling", "shovels", "shover", "shoves", "shoving", "show", "showboat", "showcase", "showdown", "showed", "shower", "showerhead", "showering", "showers", "showery", "showgirl", "showier", "showiest", "showily", "showiness", "showing", "showjumping", "showman", "showmanship", "shown", "showpiece", "showplace", "showroom", "shows", "showstopper", "showtime", "showy", "shrank", "shrapnel", "shred", "shredded", "shredder", "shredding", "shrew", "shrewd", "shrewder", "shrewdly", "shrewdness", "shrewish", "shrewishly", "shrewishness", "shrewmice", "shrewmouse", "SHRI.", "Shri.", "shri.", "shriek", "shrieked", "shrieking", "shrift", "shrike", "shrill", "shrilling", "shrillness", "shrilly", "shrimp", "shrimper", "shrimpfish", "shrimpy", "shrine", "shrines", "shrink", "shrinkable", "shrinkage", "shrinking", "shrinks", "shrinkwrap", "shrinkwraps", "shrive", "shrivel", "shriveled", "shriveling", "shrivelled", "shrivelling", "shrivels", "shrives", "shriving", "shroud", "shrouded", "shrouding", "shrouds", "shrub", "shrubbery", "shrubbier", "shrubbiest", "shrubby", "shrublet", "shrubs", "shrug", "shrugged", "shrugging", "shrugs", "shrunk", "shrunken", "shtick", "shtickl", "shtik", "shtikl", "shtup", "shua", "shuck", "shucking", "shucks", "shudder", "shuddering", "shudderingly", "shuddery", "shuffle", "shuffleboard", "shuffled", "shuffler", "shuffles", "shuffling", "shufti", "shuha", "shul", "shuln", "shumac", "shun", "shunned", "shunning", "shuns", "shunt", "shunter", "shunting", "shunts", "shush", "shushes", "shushing", "shut", "shutdown", "shuteye", "shutout", "shuts", "shutter", "shutterbug", "shuttered", "shuttering", "shutters", "shutting", "shuttle", "shuttlecock", "shuttled", "shuttles", "shuttling", "shwa", "shy", "shyer", "shyest", "shying", "shyly", "shyness", "shyster", "si", "sial", "sialadenitis", "sialolith", "siam", "siamang", "siamese", "sian", "sib", "siberian", "sibilant", "sibilate", "sibilation", "sibine", "sibling", "siblings", "sibyl", "sibyllic", "sibylline", "sic", "siccative", "sichuan", "sicilia", "sicilian", "sick", "sickbag", "sickbay", "sickbed", "sicked", "sicken", "sickening", "sickeningly", "sickeningness", "sicking", "sickish", "sickle", "sicklepod", "sicklier", "sickliest", "sickly", "sickness", "sickroom", "sics", "siddhartha", "siddur", "siddurim", "side", "sidearm", "sidebar", "sideboard", "sideburn", "sidecar", "sided", "sidekick", "sidelight", "sideline", "sidelined", "sidelines", "sidelining", "sidelong", "sidereal", "siderite", "sideroblast", "siderocyte", "sideropenia", "siderophilin", "siderosis", "sides", "sidesaddle", "sideshow", "sideslip", "sideslipped", "sideslipping", "sidesman", "sidesplitter", "sidesplitting", "sidesplittingly", "sidestep", "sidestepped", "sidestepping", "sidesteps", "sidestroke", "sideswipe", "sidetrack", "sidetracking", "sidetracks", "sidewalk", "sidewalks", "sidewall", "sideward", "sidewards", "sideway", "sideways", "sidewinder", "sidewise", "siding", "sidle", "sidles", "sidling", "sidon", "sids", "siege", "sienna", "Sierra", "sierra", "siesta", "sieve", "sieves", "sieving", "sift", "sifted", "sifter", "sifting", "sifts", "sigeh", "sigh", "sighed", "sighing", "sighs", "sight", "sighted", "sightedness", "sighting", "sightless", "sightlessness", "sightlier", "sightliest", "sightly", "sightread", "sightreader", "sights", "sightsee", "sightseeing", "sightseer", "sightsing", "sigint", "sigloi", "siglos", "sigma", "sigmoid", "sigmoidal", "sigmoidectomy", "sigmoidoscope", "sigmoidoscopy", "sign", "signage", "signal", "signaled", "signaler", "signaling", "signalisation", "signalise", "signalised", "signalises", "signalising", "signalization", "signalize", "signalized", "signalizes", "signalizing", "signalled", "signaller", "signalling", "signally", "signalman", "signals", "signatory", "signature", "signatures", "signboard", "signed", "signer", "signet", "significance", "significant", "significantly", "signification", "significative", "signified", "signifier", "signifies", "signify", "signifying", "signing", "signior", "signor", "signora", "signore", "signori", "signorina", "signorine", "signory", "signpost", "signs", "sika", "sikh", "silage", "sild", "sildenafil", "silence", "silenced", "silencer", "silences", "silencing", "silene", "silent", "silently", "silents", "silhouette", "silica", "silicate", "siliceous", "silicide", "silicified", "silicifies", "silicify", "silicious", "silicle", "silicon", "silicone", "silicosis", "siliqua", "siliquae", "silique", "silk", "silken", "silkgrass", "silkier", "silkiest", "silkily", "silkiness", "silklike", "silks", "silkscreen", "silkweed", "silkwood", "silkworm", "silky", "sill", "sillabub", "sillier", "silliest", "silliness", "silly", "silo", "siloxane", "silt", "silted", "silting", "siltstone", "silty", "silurid", "silva", "silvae", "silvan", "silvanus", "silver", "silverback", "silverberry", "silverbush", "silverfish", "silverfishes", "silverish", "silvern", "silverplate", "silverpoint", "silverrod", "silverside", "silversmith", "silverspot", "silversword", "silvertip", "silvervine", "silverware", "silverweed", "silverwork", "silverworker", "silvery", "silvex", "silviculture", "sima", "simal", "simazine", "simian", "similar", "similarities", "similarity", "similarly", "simile", "similitude", "simmer", "simmering", "simmers", "simmpleness", "simnel", "simoleons", "simonise", "simonises", "simonize", "simonizes", "simony", "simoom", "simoon", "simper", "simperer", "simpering", "simperingly", "simpers", "simple", "simpleness", "simpler", "simplest", "simpleton", "simplex", "simplicity", "simplification", "simplified", "simplifies", "simplify", "simplifying", "simplism", "simplistic", "simply", "simulacra", "simulacrum", "simulate", "simulated", "simulates", "simulating", "simulation", "simulations", "simulator", "simulcast", "simultaneity", "simultaneous", "simultaneously", "simultaneousness", "simvastatin", "sin", "sinapism", "sinbad", "Since", "since", "sincere", "sincerely", "sincerest", "sincerity", "sincipita", "sinciput", "sine", "sinecure", "sinequan", "sinew", "sinewy", "sinfonia", "sinfonie", "sinful", "sinfulness", "sing", "singable", "singalong", "singan", "Singapore", "singapore", "singaporean", "singe", "singeing", "singer", "singers", "singes", "singhalese", "singing", "single", "singled", "singleminded", "singleness", "singles", "singlestick", "singlet", "singleton", "singling", "singly", "sings", "singsong", "singular", "singularise", "singularises", "singularity", "singularize", "singularizes", "singularizing", "singularly", "singultus", "sinhala", "sinhalese", "sinister", "sinistral", "sinistrality", "sinistrorsal", "sinistrorse", "sinitic", "sink", "sinkable", "sinker", "sinkhole", "sinkiang", "sinking", "sinks", "sinless", "sinlessness", "sinned", "sinner", "sinning", "sinoper", "sinopia", "sinopis", "sins", "sinter", "sintered", "sintering", "sinters", "sinuate", "sinuosity", "sinuous", "sinuously", "sinuousness", "sinus", "sinusitis", "sinusoid", "sinusoidal", "sinusoidally", "sinusoids", "sion", "siouan", "sip", "siphon", "siphoned", "siphoning", "siphonophore", "siphons", "sipped", "sipper", "sipping", "sips", "sipunculid", "sir", "sirach", "siracusa", "sirc", "sirdar", "sire", "siren", "sirenian", "sires", "siriasis", "siring", "siris", "sirloin", "sirocco", "sirrah", "sirup", "sis", "sisal", "sise", "sisham", "siskin", "siss", "sissified", "sissiness", "sissoo", "sissu", "sissy", "sissyish", "sister", "sisterhood", "sisterlike", "sisterly", "sisters", "sistership", "sistra", "sistrum", "sisyphean", "sit", "sitar", "sitcom", "sitcoms", "site", "sites", "siting", "sits", "sitsang", "sitter", "sitting", "situate", "situated", "situates", "situating", "situation", "situations", "situla", "situlae", "sivaism", "siwan", "six", "six-fold", "sixer", "sixfold", "sixpack", "sixpence", "sixpenny", "sixsome", "sixteen", "sixteenth", "sixth", "sixthly", "sixties", "sixtieth", "sixty", "sizable", "size", "sizeable", "sizeableness", "sized", "sizes", "sizing", "sizz", "sizzle", "sizzling", "sjaelland", "skag", "skagerak", "skank", "skanky", "skate", "skateboard", "skateboarder", "skateboarding", "skater", "skates", "skating", "skaw", "skedaddle", "skeet", "skeg", "skein", "skeletal", "skeleton", "skeletons", "skellied", "skellies", "skelly", "sken", "skenned", "skenning", "skep", "skepful", "skeptic", "skeptical", "skeptically", "skepticism", "skeptics", "sket", "sketch", "sketchbook", "sketcher", "sketches", "sketchier", "sketchiest", "sketchily", "sketchiness", "sketching", "sketchy", "skets", "sketted", "sketting", "skew", "skewed", "skewer", "skewering", "skewing", "skewness", "skews", "ski", "skiagram", "skiagraph", "skiagraphy", "skibob", "skid", "skidded", "skidder", "skidding", "skidpan", "skier", "skies", "skiff", "skiffle", "skiing", "skilful", "skilfully", "skill", "skilled", "skillet", "skilletfish", "skillful", "skillfully", "skillfulness", "skills", "skilly", "skim", "skimcoat", "skiming", "skimmed", "skimmer", "skimmers", "skimming", "skimp", "skimpier", "skimpiest", "skimpily", "skimping", "skimps", "skimpy", "skims", "skin", "skincare", "skinflint", "skinful", "skinhead", "skink", "skinless", "skinned", "skinnerian", "skinnier", "skinniest", "skinniness", "skinning", "skinny", "skins", "skint", "skintight", "skip", "skipjack", "skipped", "skipper", "skipping", "skips", "skirl", "skirmish", "skirmished", "skirmisher", "skirret", "skirt", "skirted", "skirting", "skirts", "skit", "skitter", "skittering", "skitters", "skittish", "skittishly", "skittishness", "skittle", "skive", "skives", "skivvied", "skivvy", "skoplje", "skreak", "skreaks", "skreigh", "skua", "skulduggery", "skulk", "skulker", "skulking", "skulks", "skull", "skullcap", "skullduggery", "skulls", "skunk", "skunkbush", "skunkweed", "sky", "skybox", "skycap", "skydive", "skydiver", "skydives", "skydiving", "skyhook", "skyjack", "skylark", "skylight", "skyline", "skyrocket", "skyrocketed", "skyrocketing", "skyrockets", "skysail", "skyscraper", "skyscrapers", "skywalk", "skyward", "skywards", "skyway", "skywriting", "slab", "slabbed", "slabber", "slabbing", "slabs", "slack", "slacken", "slackened", "slackening", "slackens", "slacker", "slacking", "slackly", "slackness", "slacks", "slag", "slagged", "slagging", "slagheap", "slags", "slain", "slake", "slaked", "slalom", "slam", "slammed", "slammer", "slamming", "slams", "slander", "slanderer", "slandering", "slanderous", "slanderously", "slanders", "slang", "slangily", "slanginess", "slanging", "slangs", "slanguage", "slangy", "slant", "slanted", "slanting", "slantingly", "slants", "slantways", "slantwise", "slap", "slapdash", "slaphappier", "slaphappiest", "slaphappy", "slapped", "slapper", "slapping", "slaps", "slapshot", "slapstick", "slash", "slashed", "slasher", "slashes", "slashing", "slask", "slat", "slate", "slated", "slater", "slatey", "slather", "slathering", "slathers", "slatier", "slatiest", "slating", "slatted", "slattern", "slatternliness", "slatternly", "slatting", "slaty", "slaughter", "slaughtered", "slaughterer", "slaughterhouse", "slaughtering", "slaughterous", "slaughters", "slav", "slave", "slaveholder", "slaveholding", "slaveless", "slavelike", "slaver", "slavering", "slavers", "slavery", "slaves", "slavey", "slavic", "slaving", "slavish", "slavishly", "slavonic", "slaw", "slay", "slayer", "slayers", "slaying", "slays", "sle", "sleaze", "sleazier", "sleaziest", "sleaziness", "sleazy", "sled", "sledder", "sledding", "sledge", "sledgehammer", "sleds", "sleek", "sleekly", "sleekness", "sleep", "sleeper", "sleepier", "sleepiest", "sleepily", "sleepiness", "sleeping", "sleepless", "sleeplessly", "sleeplessness", "sleepover", "sleeps", "sleepwalk", "sleepwalker", "sleepwalking", "sleepwalks", "sleepwear", "sleepy", "sleepyhead", "sleepyheaded", "sleet", "sleety", "sleeve", "sleeved", "sleeveless", "sleeves", "sleigh", "sleight", "slender", "slenderise", "slenderises", "slenderize", "slenderizes", "slenderizing", "slenderly", "slenderness", "slept", "sleuth", "sleuthhound", "sleuthing", "slew", "slewing", "slews", "slezsko", "slice", "sliced", "slicer", "slices", "slicing", "slick", "slicked", "slicker", "slickest", "slickly", "slickness", "slid", "slide", "slider", "slides", "slideway", "sliding", "slier", "sliest", "slight", "slightest", "slighting", "slightingly", "slightly", "slightness", "slim", "slime", "slimed", "slimier", "slimiest", "sliminess", "sliming", "slimly", "slimmer", "slimmest", "slimness", "slims", "slimsier", "slimsiest", "slimsy", "slimy", "sling", "slingback", "slinger", "slinging", "slings", "slingshot", "slink", "slinkier", "slinkiest", "slinking", "slinks", "slinky", "slip", "slipcover", "slipknot", "slipover", "slippage", "slipped", "slipper", "slippered", "slipperiness", "slipperwort", "slippery", "slippier", "slippiest", "slipping", "slippy", "slips", "slipshod", "slipstick", "slipstream", "slipway", "slit", "slither", "slithered", "slithering", "slithery", "slits", "slitting", "sliver", "slivery", "slivovitz", "slob", "slobber", "slobberer", "slobbering", "slobbers", "sloe", "slog", "slogan", "sloganeer", "sloganeering", "slogans", "slogged", "slogger", "slogging", "slogs", "sloop", "slop", "slope", "sloped", "slopes", "sloping", "slopingly", "slopped", "sloppier", "sloppiest", "sloppily", "sloppiness", "slopping", "sloppy", "slops", "slopseller", "slopshop", "slosh", "sloshed", "sloshes", "sloshing", "slot", "sloth", "slothful", "slothfulness", "slots", "slotted", "slotting", "slouch", "sloucher", "slouches", "slouchily", "slouching", "slouchingly", "slouchy", "slough", "sloughing", "sloughs", "sloughy", "Slovakia", "slovakia", "slovakian", "sloven", "slovenian", "slovenija", "slovenliness", "slovenly", "slow", "slowcoach", "slowdown", "slowed", "slower", "slowest", "slowgoing", "slowing", "slowly", "slowness", "slowpoke", "slows", "slowworm", "slub", "slubbed", "sludge", "slue", "slues", "slug", "slugabed", "slugfest", "sluggard", "slugged", "slugger", "slugging", "sluggish", "sluggishly", "sluggishness", "slugs", "sluice", "sluicegate", "sluices", "sluiceway", "sluicing", "slum", "slumber", "slumberer", "slumbering", "slumberous", "slumbers", "slumbery", "slumbrous", "slumgullion", "slummed", "slumming", "slummy", "slump", "slumped", "slumping", "slumps", "slur", "slurp", "slurping", "slurred", "slurring", "slurry", "slurs", "slush", "slushes", "slushing", "slushy", "slut", "sluttish", "sluttishness", "sly", "slyboots", "slyer", "slyest", "slyly", "slyness", "smack", "smacker", "smacking", "smacks", "small", "smaller", "smallest", "smallholder", "smallholding", "smallish", "smallmouth", "smallness", "smallpox", "smalti", "smaltite", "smalto", "smarm", "smarmier", "smarmiest", "smarmily", "smarminess", "smarmy", "smart", "smarta", "smarter", "smartest", "smarting", "smartly", "smartness", "smash", "smashed", "smasher", "smashes", "smashing", "smashingly", "smatter", "smattering", "smear", "smearing", "smears", "smegma", "smell", "smelled", "smellier", "smelliest", "smelling", "smells", "smelly", "smelt", "smelter", "smeltery", "smelting", "smew", "smidge", "smidgen", "smidgeon", "smidgin", "smilax", "smile", "smiled", "smiler", "smiles", "smiley", "smiling", "smilingly", "smilo", "smirch", "smirching", "smirk", "smirker", "smirking", "smirks", "smite", "smites", "smith", "smithereens", "smithy", "smiting", "smitten", "smock", "smocking", "smog", "smogginess", "smoggy", "smoke", "smoked", "smokehouse", "smokeless", "smoker", "smokers", "smokes", "smokescreen", "smokestack", "smokier", "smokiest", "smoking", "smoky", "smolder", "smoldered", "smoldering", "smolderingly", "smolders", "smooch", "smooches", "smooching", "smooth", "smoothbark", "smoothbore", "smoothed", "smoothen", "smoothened", "smoother", "smoothest", "smoothhound", "smoothie", "smoothing", "smoothly", "smoothness", "smooths", "smoothy", "smorgasbord", "smother", "smothered", "smotherer", "smothering", "smothers", "smoulder", "smouldered", "smouldering", "smoulderingly", "smoulders", "smsgt", "SMT.", "Smt.", "smt.", "smudge", "smudges", "smudging", "smudgy", "smug", "smugger", "smuggest", "smuggle", "smuggled", "smuggler", "smuggles", "smuggling", "smugly", "smugness", "smut", "smutch", "smutted", "smuttily", "smuttiness", "smutting", "smutty", "smyrna", "snack", "snacker", "snacking", "snacks", "snaffle", "snafu", "snag", "snagged", "snagging", "snaggleteeth", "snaggletooth", "snags", "snail", "snailfish", "snailfishes", "snailflower", "snake", "snakeberry", "snakebird", "snakebite", "snakeblenny", "snakefish", "snakefly", "snakehead", "snakelike", "snakeroot", "snakes", "snakeweed", "snakewood", "snakier", "snakiest", "snaking", "snaky", "snap", "snapdragon", "snapline", "snapped", "snapper", "snappier", "snappiest", "snapping", "snappish", "snappishly", "snappishness", "snappy", "snaps", "snapshot", "snapshots", "snare", "snarer", "snarf", "snarky", "snarl", "snarled", "snarling", "snarls", "snarly", "snatch", "snatched", "snatcher", "snatches", "snatchier", "snatchiest", "snatching", "snatchy", "snazzier", "snazziest", "snazzy", "sneak", "sneaked", "sneaker", "sneakers", "sneakily", "sneakiness", "sneaking", "sneakingly", "sneaks", "sneaky", "sned", "snedded", "snedding", "sneds", "sneer", "sneerer", "sneering", "sneeringly", "sneers", "sneeze", "sneezed", "sneezer", "sneezes", "sneezeweed", "sneezewort", "sneezing", "sneezy", "snick", "snicker", "snickering", "snickers", "snickersnee", "snicks", "snide", "snidely", "sniff", "sniffed", "sniffer", "sniffier", "sniffiest", "sniffing", "sniffle", "sniffler", "sniffles", "sniffling", "sniffly", "sniffs", "sniffy", "snifter", "snigger", "sniggering", "sniggers", "snip", "snipe", "sniped", "snipefish", "snipefishes", "sniper", "snipped", "snippet", "snippets", "snipping", "snips", "snit", "snitch", "snitcher", "snitches", "snitching", "snivel", "sniveled", "sniveler", "sniveling", "snivelled", "sniveller", "snivelling", "snivels", "snob", "snobbery", "snobbish", "snobbishly", "snobbishness", "snobbism", "snobby", "snoek", "snog", "snogged", "snogging", "snogs", "snood", "snook", "snooker", "snoop", "snooper", "snoopiness", "snooping", "snoops", "snoopy", "snoot", "snootier", "snootiest", "snootily", "snootiness", "snooty", "snooze", "snoozes", "snoozing", "snore", "snorer", "snores", "snoring", "snorkel", "snorkeled", "snorkeling", "snorkelled", "snorkelling", "snorkels", "snort", "snorter", "snorting", "snorts", "snorty", "snot", "snottier", "snottiest", "snotty", "snout", "snow", "snowball", "snowballed", "snowballing", "snowballs", "snowbank", "snowbell", "snowberry", "snowbird", "snowblindness", "snowboard", "snowboarder", "snowboarding", "snowboards", "snowbound", "snowcap", "snowdrift", "snowdrop", "snowfall", "snowfield", "snowflake", "snowier", "snowiest", "snowing", "snowman", "snowmobile", "snowplough", "snowploughs", "snowplow", "snows", "snowshoe", "snowshoeing", "snowstorm", "snowsuit", "snowy", "snp", "snub", "snubbed", "snubbing", "snubs", "snuff", "snuffbox", "snuffer", "snuffier", "snuffiest", "snuffing", "snuffle", "snuffler", "snuffles", "snuffling", "snuffly", "snuffs", "snuffy", "snug", "snugged", "snugger", "snuggery", "snuggest", "snugging", "snuggle", "snuggled", "snuggles", "snuggling", "snugly", "snugness", "snugs", "SO", "So", "so", "SO'RE", "So're", "so're", "soak", "soakage", "soaked", "soaker", "soaking", "soaks", "soap", "soapberry", "soapbox", "soapfish", "soapier", "soapiest", "soapiness", "soaping", "soaprock", "soaps", "soapstone", "soapsuds", "soapweed", "soapwort", "soapy", "soar", "soared", "soaring", "soars", "sob", "sobbed", "sobbing", "sobbingly", "sober", "sobered", "sobering", "soberly", "soberness", "sobers", "sobersided", "sobersides", "sobralia", "sobriety", "sobriquet", "sobs", "socage", "soccer", "sociability", "sociable", "sociableness", "sociably", "social", "socialisation", "socialise", "socialised", "socialiser", "socialises", "socialising", "socialism", "Socialist", "socialist", "socialistic", "socialite", "sociality", "socialization", "socialize", "socialized", "socializer", "socializes", "socializing", "socially", "societal", "societies", "society", "sociobiologic", "sociobiological", "sociobiologically", "sociobiologist", "sociobiology", "sociocultural", "socioeconomic", "socioeconomically", "sociolinguist", "sociolinguistic", "sociolinguistically", "sociolinguistics", "sociological", "sociologically", "sociologist", "sociology", "sociometry", "sociopath", "sociopathic", "sock", "socket", "sockeye", "socking", "socks", "socle", "socman", "socmen", "socratic", "sod", "soda", "sodalist", "sodalite", "sodality", "sodbuster", "sodded", "sodden", "sodding", "sodium", "sodoku", "sodomise", "sodomised", "sodomises", "sodomising", "sodomist", "sodomite", "sodomize", "sodomized", "sodomizes", "sodomizing", "sodomy", "sods", "sofa", "soffit", "soft", "softback", "softball", "soften", "softened", "softener", "softening", "softens", "softer", "softheaded", "softhearted", "softheartedness", "softie", "softish", "softly", "softness", "software", "softwood", "softy", "soggier", "soggiest", "sogginess", "soggy", "soh", "soigne", "soignee", "soil", "soiled", "soiling", "soils", "soilure", "soiree", "soja", "sojourn", "sojourner", "sojourning", "sol", "sola", "solace", "solacement", "solan", "solanaceous", "solar", "solaria", "solarisation", "solarise", "solarium", "solarization", "solarize", "solatia", "solatium", "sold", "solder", "solderer", "soldering", "soldi", "soldier", "soldierfish", "soldiering", "soldierlike", "soldierly", "soldiers", "soldiership", "soldiery", "soldo", "sole", "solecism", "soled", "soleirolia", "soleless", "solely", "solemn", "solemness", "solemnified", "solemnifies", "solemnify", "solemnisation", "solemnise", "solemnised", "solemnises", "solemnising", "solemnity", "solemnization", "solemnize", "solemnized", "solemnizes", "solemnizing", "solemnly", "solenogaster", "solenoid", "soles", "soleus", "solfa", "solfege", "solfeggi", "solfeggio", "soli", "solicit", "solicitation", "solicited", "soliciting", "solicitor", "solicitorship", "solicitous", "solicitously", "solicitousness", "solicits", "solicitude", "solid", "solidarity", "solidi", "solidification", "solidified", "solidifies", "solidify", "solidifying", "solidity", "solidly", "solidness", "solidus", "soliloquise", "soliloquises", "soliloquize", "soliloquizes", "soliloquy", "solipsism", "solitaire", "solitarily", "solitariness", "solitary", "soliton", "solitude", "solitudinarian", "solleret", "solmisation", "solmizate", "solmization", "solo", "soloes", "soloing", "soloist", "Solomon", "solomon", "solomonic", "solon", "solstice", "solubility", "soluble", "solubleness", "solum", "solute", "solutes", "solution", "solutions", "solvability", "solvable", "solvate", "solvation", "solve", "solved", "solvency", "solvent", "solver", "solves", "solving", "som", "soma", "somaesthesia", "somaesthesis", "somali", "Somalia", "somalia", "somalian", "soman", "somata", "somataesthesis", "somatesthesia", "somatic", "somatogenetic", "somatogenic", "somatosense", "somatosensory", "somatotrophin", "somatotropin", "somatotype", "somber", "somberly", "somberness", "sombre", "sombrely", "sombreness", "Some", "some", "somebody", "someday", "somehow", "Someone", "someone", "someplace", "somersault", "somersaulting", "somersaults", "somesthesia", "somesthesis", "something", "sometime", "Sometimes", "sometimes", "someway", "someways", "somewhat", "somewhere", "somite", "somme", "sommelier", "somnambulate", "somnambulates", "somnambulation", "somnambulism", "somnambulist", "somniferous", "somnific", "somniloquism", "somniloquist", "somniloquy", "somnolence", "somnolent", "somnolently", "son", "sonant", "sonar", "sonata", "sonatina", "sone", "song", "songbird", "songbook", "songful", "songfulness", "songlike", "songs", "songster", "songstress", "songwriter", "sonic", "sonnet", "sonneteer", "sonny", "sonogram", "sonograph", "sonography", "sonometer", "sonority", "sonorous", "sonorously", "sonorousness", "sons", "sonsie", "sonsier", "sonsiest", "sonsy", "soochong", "soon", "sooner", "soonest", "soot", "sooth", "soothe", "soothed", "soothes", "soothing", "soothingly", "soothsayer", "soothsaying", "sootier", "sootiest", "sootiness", "sooty", "sop", "soph", "sophism", "sophist", "sophistic", "sophistical", "sophisticate", "sophisticated", "sophistication", "sophistry", "sophomore", "sophonias", "sopor", "soporiferous", "soporific", "sopped", "soppier", "soppiest", "sopping", "soppy", "soprani", "sopranino", "soprano", "sorb", "sorbate", "sorbed", "sorbefacient", "sorbent", "sorbet", "sorbonne", "sorcerer", "sorceress", "sorcerise", "sorcerises", "sorcerize", "sorcerizes", "sorcerous", "sorcery", "sordid", "sordidly", "sordidness", "sordini", "sordino", "sore", "sorehead", "sorely", "soreness", "sorgho", "sorghum", "sorgo", "sori", "sororal", "sorority", "soroses", "sorosis", "sorption", "sorrel", "sorrier", "sorriest", "sorriness", "sorrow", "sorrower", "sorrowful", "sorrowfully", "sorrowfulness", "sorrowing", "Sorry", "sorry", "sort", "sorted", "sorter", "sortie", "sorting", "sortition", "sorts", "sorus", "sot", "soteriological", "soteriology", "sothis", "sotho", "sottish", "sottishly", "sottishness", "sou", "souari", "soubrette", "soubriquet", "souchong", "soudan", "souffle", "sough", "soughing", "soughingly", "soughs", "sought", "souk", "soul", "soulful", "soulfully", "soulfulness", "soulless", "soullessly", "souls", "sound", "soundable", "soundboard", "soundbox", "sounded", "sounder", "sounding", "soundless", "soundlessly", "soundlessness", "soundly", "soundman", "soundness", "soundproof", "soundproofing", "sounds", "soundtrack", "soup", "soupcon", "soupfin", "soupier", "soupiest", "soupiness", "souping", "soupspoon", "soupy", "sour", "sourball", "Source", "source", "sources", "sourcing", "sourdine", "sourdough", "soured", "souring", "sourish", "sourly", "sourness", "sourpuss", "sours", "soursop", "sourwood", "sousaphone", "souse", "soused", "souses", "sousing", "souslik", "soutache", "soutane", "South", "south", "southbound", "southeast", "southeaster", "southeasterly", "southeastern", "southeastward", "southeastwardly", "souther", "southerly", "southern", "southerner", "southernism", "southernmost", "southernness", "southernwood", "southland", "southmost", "southpaw", "southward", "southwards", "southwest", "southwester", "southwesterly", "southwestern", "southwestward", "southwestwardly", "souvenir", "souvenirs", "souvlaki", "souvlakia", "sovereign", "sovereignty", "Soviet", "soviet", "sovietise", "sovietises", "sovietism", "sovietize", "sovietizes", "sovkhoz", "sovkhozy", "sow", "sowbane", "sowbelly", "sowbread", "sowed", "sower", "sown", "sows", "soy", "soya", "soybean", "soymilk", "sozzled", "SO\u2019RE", "So\u2019re", "so\u2019re", "spa", "space", "spacecraft", "spaced", "spacefaring", "spaceflight", "spaceman", "spaces", "spaceship", "spacesuit", "spacewalk", "spacewalker", "spaceward", "spacewards", "spacey", "spacial", "spacing", "spaciotemporal", "spacious", "spaciously", "spaciousness", "spackle", "spacy", "spade", "spadefish", "spadefishes", "spadefoot", "spadeful", "spadework", "spadices", "spadix", "spag", "spagged", "spagging", "spaghetti", "spaghettini", "spall", "spallation", "spam", "spammer", "spammers", "spamming", "spams", "span", "spancel", "spancelled", "spancelling", "spancels", "spandex", "spandrel", "spandril", "spang", "spangle", "spangled", "spangles", "spangly", "spangs", "spaniel", "spanish", "spank", "spanker", "spanking", "spanks", "spanned", "spanner", "spanning", "spans", "spar", "spare", "spared", "spareness", "sparer", "sparerib", "spares", "sparge", "sparid", "sparing", "sparingly", "spark", "sparked", "sparker", "sparking", "sparkle", "sparkleberry", "sparkler", "sparkles", "sparkling", "sparkly", "sparks", "sparling", "sparred", "sparring", "sparrow", "spars", "sparse", "sparsely", "sparseness", "sparsity", "spartan", "spasm", "spasmodic", "spasmodically", "spasmolysis", "spasmolytic", "spastic", "spasticity", "spat", "spatchcock", "spate", "spathe", "spathiphyllum", "spatial", "spatiality", "spatially", "spatiotemporal", "spatted", "spatter", "spatterdock", "spattered", "spattering", "spatters", "spatting", "spatula", "spatulate", "spavin", "spavined", "spawl", "spawn", "spawned", "spawner", "spawning", "spawns", "spay", "spayed", "spaying", "spays", "speak", "speakable", "speakeasy", "speaker", "speakerphone", "speakers", "speakership", "speaking", "speaks", "spear", "spearfish", "spearfishes", "spearhead", "spearheaded", "spearheading", "spearheads", "spearing", "spearmint", "spearpoint", "spec", "special", "specialisation", "specialisations", "specialise", "specialised", "specialiser", "specialises", "specialising", "specialism", "specialist", "specialistic", "specialists", "speciality", "specialization", "specializations", "specialize", "specialized", "specializer", "specializes", "specializing", "specially", "specialness", "specials", "specialties", "specialty", "speciate", "speciates", "speciating", "speciation", "specie", "species", "specifiable", "specific", "specifically", "specification", "specifications", "specificities", "specificity", "specifics", "specified", "specifier", "specifies", "specify", "specifying", "specimen", "specimens", "specious", "speciously", "speciousness", "speck", "specked", "speckle", "speckled", "speckles", "speckless", "speckling", "spectacle", "spectacled", "spectacular", "spectacularly", "spectate", "spectates", "spectating", "spectator", "spectators", "specter", "specters", "spectinomycin", "spectra", "spectral", "spectre", "spectres", "spectrogram", "spectrograph", "spectrographic", "spectrographically", "spectrometer", "spectrometric", "spectrometry", "spectrophotometer", "spectroscope", "spectroscopic", "spectroscopical", "spectroscopy", "spectrum", "specula", "specular", "speculate", "speculated", "speculates", "speculating", "speculation", "speculative", "speculatively", "speculativeness", "speculator", "speculators", "speculum", "sped", "speech", "speeches", "speechified", "speechifier", "speechifies", "speechify", "speechifying", "speechless", "speechlessly", "speechlessness", "speechmaker", "speechmaking", "speechwriter", "speed", "speedboat", "speeded", "speeder", "speedier", "speediest", "speedily", "speediness", "speeding", "speedometer", "speeds", "speedskater", "speedup", "speedway", "speedwell", "speedy", "spelaeologist", "spelaeology", "speleologist", "speleology", "spell", "spellbind", "spellbinder", "spellbinding", "spellbinds", "spellbound", "spelldown", "spelled", "speller", "spelling", "spellings", "spells", "spelt", "spelter", "spelunk", "spelunker", "spelunking", "spelunks", "spend", "spendable", "spending", "spends", "spendthrift", "spent", "sperm", "spermaceti", "spermatia", "spermatic", "spermatid", "spermatium", "spermatocele", "spermatocide", "spermatocyte", "spermatogenesis", "spermatogonia", "spermatogonium", "spermatophyte", "spermatozoa", "spermatozoan", "spermatozoid", "spermatozoon", "spermicidal", "spermicide", "spermogonia", "spermogonium", "spermophile", "spermophilus", "spermous", "spew", "spewed", "spewer", "spewing", "spews", "spf", "sphacelate", "sphacelates", "sphacele", "sphacelus", "sphaerocarpos", "sphagnum", "sphalerite", "sphecoid", "sphenion", "sphenoid", "sphere", "spheric", "spherical", "spherically", "sphericalness", "sphericity", "spherocyte", "spheroid", "spheroidal", "spherometer", "spherule", "sphincter", "sphinges", "sphingid", "sphingine", "sphinx", "sphygmomanometer", "spic", "spica", "spicae", "spicate", "spiccato", "spice", "spiceberry", "spicebush", "spicemill", "spicery", "spices", "spicier", "spiciest", "spicily", "spiciness", "spicing", "spick", "spicula", "spicule", "spiculum", "spicy", "spider", "spiderflower", "spiderlike", "spiderly", "spiders", "spiderwort", "spidery", "spied", "spiegel", "spiegeleisen", "spiel", "spies", "spiff", "spiffier", "spiffiest", "spiffing", "spiffy", "spigot", "spik", "spike", "spiked", "spikelet", "spikelike", "spikemoss", "spikenard", "spikes", "spikier", "spikiest", "spiking", "spiky", "spile", "spill", "spillage", "spilled", "spiller", "spillikin", "spillover", "spills", "spillway", "spin", "spinach", "spinal", "spinally", "spindle", "spindleberry", "spindlelegs", "spindles", "spindleshanks", "spindlier", "spindliest", "spindly", "spindrift", "spine", "spinel", "spineless", "spinelessness", "spinet", "spinier", "spiniest", "spininess", "spinmeister", "spinnability", "spinnable", "spinnaker", "spinnbar", "spinnbarkeit", "spinner", "spinney", "spinning", "spinose", "spinous", "spins", "spinster", "spinsterhood", "spiny", "spiracle", "spiral", "spiraled", "spiraling", "spiralled", "spiralling", "spirally", "spirals", "spirant", "spire", "spirea", "spirilla", "spirillum", "spirit", "spirited", "spiritedly", "spiritedness", "spiriting", "spiritise", "spiritises", "spiritism", "spiritize", "spiritizes", "spiritless", "spiritlessness", "spiritous", "spirits", "spiritual", "spiritualisation", "spiritualise", "spiritualises", "spiritualism", "spiritualist", "spiritualistic", "spirituality", "spiritualization", "spiritualize", "spiritualizes", "spiritually", "spiritualty", "spirituous", "spirochaete", "spirochete", "spirogram", "spirograph", "spirogyra", "spirometer", "spirometry", "spironolactone", "spirt", "spirula", "spit", "spitball", "spite", "spiteful", "spitefully", "spitefulness", "spites", "spitfire", "spits", "spitted", "spitter", "spitting", "spittle", "spittlebug", "spittoon", "spitz", "spitzbergen", "spiv", "splanchnic", "splash", "splashboard", "splashdown", "splashed", "splasher", "splashes", "splashier", "splashiest", "splashiness", "splashing", "splashy", "splat", "splats", "splatter", "splattered", "splattering", "splatters", "splay", "splayfeet", "splayfoot", "splayfooted", "splays", "spleen", "spleenwort", "splendid", "splendidly", "splendiferous", "splendor", "splendors", "splendour", "splendours", "splenectomy", "splenetic", "splenic", "splenii", "splenitis", "splenius", "splenomegaly", "splice", "splicer", "splices", "splicing", "spliff", "spline", "splint", "splinter", "splintering", "splinterless", "splinterproof", "splinters", "splintery", "split", "splits", "splitsaw", "splitsville", "splitter", "splitting", "splitworm", "splodge", "splosh", "sploshes", "splotch", "splotched", "splotches", "splurge", "splurges", "splutter", "spluttering", "splutters", "spodumene", "spoil", "spoilable", "spoilage", "spoilation", "spoiled", "spoiler", "spoilers", "spoiling", "spoils", "spoilsport", "spoilt", "spoke", "spoken", "spokeshave", "spokesman", "spokesperson", "spokeswoman", "spoliation", "spondaic", "spondaise", "spondaises", "spondaize", "spondaizes", "spondee", "spondylarthritis", "spondylitis", "spondylolisthesis", "sponge", "spongefly", "spongelike", "sponger", "spongier", "spongiest", "spongillafly", "sponginess", "sponging", "spongioblast", "spongioblastoma", "spongy", "sponsor", "sponsored", "sponsoring", "sponsors", "sponsorship", "spontaneity", "spontaneous", "spontaneously", "spontaneousness", "spoof", "spoofing", "spook", "spooked", "spookier", "spookiest", "spookily", "spooky", "spool", "spoon", "spoonbill", "spoondrift", "spoonerism", "spoonfeed", "spoonfeeding", "spoonflower", "spoonful", "spoonier", "spooniest", "spooning", "spoons", "spoony", "spoor", "sporadic", "sporadically", "sporangia", "sporangiophore", "sporangium", "sporanox", "spore", "spores", "sporocarp", "sporogenous", "sporogonia", "sporogonium", "sporophore", "sporophyl", "sporophyll", "sporophyte", "sporotrichosis", "sporozoa", "sporozoan", "sporozoite", "sporran", "sport", "sported", "sportfishing", "sportier", "sportiest", "sporting", "sportingly", "sportive", "sportively", "sportiveness", "sports", "sportscast", "sportscaster", "sportscasting", "sportsman", "sportsmanlike", "sportsmanship", "sportswear", "sportswoman", "sportswriter", "sporty", "sporulate", "sporulates", "sporulation", "spot", "spotless", "spotlessly", "spotlessness", "spotlight", "spotlighting", "spots", "spotted", "spotter", "spottier", "spottiest", "spotting", "spotty", "spotweld", "spousal", "spouse", "spouses", "spout", "spouter", "spouting", "spouts", "sprachgefuhl", "sprag", "sprain", "spraining", "sprang", "sprat", "sprawl", "sprawler", "sprawling", "sprawls", "sprawly", "spray", "sprayer", "spraying", "sprays", "spread", "spreadeagle", "spreader", "spreadhead", "spreading", "spreads", "spreadsheet", "sprechgesang", "sprechstimme", "spree", "sprees", "sprier", "spriest", "sprig", "sprigged", "sprigger", "sprigging", "sprightlier", "sprightliest", "sprightliness", "sprightly", "sprigtail", "spring", "springboard", "springbok", "springbuck", "springer", "springhaas", "springhase", "springier", "springiest", "springiness", "springing", "springless", "springlike", "springs", "springtail", "springtide", "springtime", "springy", "sprinkle", "sprinkled", "sprinkler", "sprinkles", "sprinkling", "sprint", "sprinter", "sprinting", "sprints", "sprit", "sprite", "spritsail", "spritz", "spritzer", "spritzes", "spritzing", "sprocket", "sprog", "sprout", "sprouted", "sprouting", "sprouts", "spruce", "sprucely", "spruceness", "spruces", "sprucing", "sprue", "sprung", "spry", "spud", "spudded", "spudding", "spue", "spume", "spumone", "spumoni", "spumy", "spun", "spunk", "spunky", "spur", "spurge", "spurious", "spuriously", "spuriousness", "spurn", "spurned", "spurner", "spurning", "spurns", "spurred", "spurring", "spurs", "spurt", "spurted", "spurting", "spurts", "sputa", "sputnik", "sputter", "sputtered", "sputtering", "sputum", "spy", "spyglass", "spyhole", "spying", "spymaster", "spyware", "squab", "squabble", "squabbler", "squabby", "squad", "squadron", "squads", "squalid", "squalidly", "squalidness", "squall", "squalling", "squally", "squalor", "squama", "squamae", "squamule", "squamulose", "squander", "squandered", "squanderer", "squandering", "squandermania", "squanders", "square", "squared", "squarely", "squareness", "squares", "squaretail", "squaring", "squarish", "squark", "squash", "squashed", "squashes", "squashier", "squashiest", "squashing", "squashy", "squat", "squatness", "squats", "squatted", "squatter", "squattest", "squattier", "squattiest", "squattiness", "squatting", "squatty", "squaw", "squawbush", "squawk", "squawker", "squawking", "squawks", "squawkss", "squawky", "squawroot", "squeak", "squeaker", "squeaking", "squeaky", "squeal", "squealer", "squealing", "squeals", "squeamish", "squeamishly", "squeamishness", "squeegee", "squeegeeing", "squeegees", "squeezability", "squeezable", "squeeze", "squeezed", "squeezer", "squeezes", "squeezing", "squelch", "squelched", "squelcher", "squelching", "squib", "squibbed", "squibbing", "squid", "squidded", "squidding", "squids", "squiffier", "squiffiest", "squiffy", "squiggle", "squiggly", "squill", "squilla", "squillae", "squinch", "squinched", "squint", "squinted", "squinter", "squinting", "squints", "squinty", "squire", "squirearchy", "squirm", "squirmer", "squirming", "squirms", "squirrel", "squirreled", "squirrelfish", "squirrelfishes", "squirreling", "squirrelled", "squirrelling", "squirrels", "squirt", "squirter", "squirting", "squirts", "squish", "squishes", "squishing", "squishy", "squiz", "squizzes", "SR.", "Sr.", "sr.", "sravana", "srbija", "Sri", "sri", "ssa", "sse", "sspe", "ssri", "ssw", "ST.", "St.", "st.", "stab", "stabbed", "stabber", "stabbing", "stabile", "stabilisation", "stabilise", "stabilised", "stabiliser", "stabilisers", "stabilises", "stabilising", "stability", "stabilization", "stabilize", "stabilized", "stabilizer", "stabilizers", "stabilizes", "stabilizing", "stable", "stableboy", "stableman", "stablemate", "stableness", "stables", "stabling", "stably", "stabroek", "stabs", "staccato", "stachyose", "stack", "stacked", "stacker", "stacking", "stacks", "stacte", "staddle", "stadia", "stadium", "stadiums", "staff", "staffed", "staffer", "staffers", "staffing", "staffs", "stag", "stage", "stagecoach", "stagecraft", "staged", "stagehand", "stager", "stages", "stagey", "stagflation", "stagflationary", "stagger", "staggerbush", "staggerer", "staggering", "staggeringly", "staggers", "staghead", "staghound", "stagier", "stagiest", "stagily", "staginess", "staging", "stagirus", "stagnancy", "stagnant", "stagnate", "stagnated", "stagnates", "stagnating", "stagnation", "stagy", "staid", "staidly", "staidness", "stain", "stainability", "stainable", "stained", "stainer", "staining", "stainless", "stains", "stair", "staircase", "stairhead", "stairs", "stairway", "stairwell", "stake", "staked", "stakeholder", "stakeholders", "stakeout", "stakes", "staking", "stalactite", "stalagmite", "stale", "stalemate", "stalemated", "staleness", "stales", "stalinabad", "stalingrad", "stalinisation", "stalinise", "stalinises", "stalinism", "stalinist", "stalinize", "stalinizes", "stalino", "stalk", "stalked", "stalker", "stalkier", "stalkiest", "stalking", "stalkless", "stalky", "stall", "stalled", "stalling", "stallion", "stalls", "stalwart", "stalwartness", "stamboul", "stambul", "stamen", "stamina", "staminate", "staminodia", "staminodium", "stammel", "stammer", "stammerer", "stammering", "stammers", "stamp", "stampede", "stampeded", "stampedes", "stampeding", "stamper", "stamping", "stamps", "stance", "stanch", "stanches", "stanchion", "stanchly", "stand", "standard", "standardisation", "standardise", "standardised", "standardiser", "standardises", "standardising", "standardization", "standardize", "standardized", "standardizer", "standardizes", "standardizing", "standards", "standby", "standdown", "standee", "stander", "standing", "standings", "standoff", "standoffish", "standoffishly", "standoffishness", "standpat", "standpipe", "standpoint", "stands", "standstill", "stanhope", "stanhopea", "stank", "stannic", "stannite", "stannous", "stanza", "stapedectomy", "stapedes", "stapelia", "stapes", "staph", "staphylococcal", "staphylococci", "staphylococcus", "staple", "staplegun", "stapler", "staples", "stapling", "star", "starboard", "starch", "starches", "starchier", "starchiest", "starchless", "starchlike", "starchy", "stardom", "stardust", "stare", "stared", "starer", "stares", "starets", "staretsy", "starfish", "starfishes", "starflower", "stargaze", "stargazer", "stargazes", "stargazing", "staring", "Stark", "stark", "starkers", "starkey", "starkly", "starkness", "starless", "starlet", "starlight", "starlike", "starling", "starlit", "starred", "starrier", "starriest", "starring", "starry", "stars", "starship", "start", "started", "starter", "starters", "starting", "startle", "startled", "startles", "startling", "startlingly", "starts", "startsy", "startup", "starvation", "starve", "starved", "starveling", "starves", "starving", "starwort", "stash", "stashed", "stashes", "stashing", "stasis", "statant", "State", "state", "statecraft", "stated", "stateless", "statelier", "stateliest", "stateliness", "stately", "statement", "statements", "stater", "stateroom", "States", "states", "statesman", "statesmanlike", "statesmanly", "statesmanship", "stateswoman", "statewide", "static", "statice", "statin", "stating", "statins", "station", "stationariness", "stationary", "stationed", "stationer", "stationery", "stationing", "stationmaster", "stations", "statistic", "statistical", "statistically", "statistician", "statistics", "stative", "stator", "statuary", "statue", "statues", "statuesque", "statuette", "stature", "status", "statute", "statutes", "statutorily", "statutory", "staunch", "staunchest", "staunching", "staunchly", "staunchness", "staurikosaur", "staurikosaurus", "stave", "staving", "stay", "stayed", "stayer", "staying", "stays", "staysail", "std", "STE.", "Ste.", "ste.", "stead", "steadfast", "steadfastly", "steadfastness", "steadied", "steadier", "steadies", "steadiest", "steadily", "steadiness", "steady", "steadying", "steak", "steakhouse", "steaks", "steal", "stealer", "stealing", "steals", "stealth", "stealthier", "stealthiest", "stealthily", "stealthiness", "stealthy", "steam", "steamboat", "steamed", "steamer", "steamfitter", "steamier", "steamiest", "steaminess", "steaming", "steamroll", "steamroller", "steamrollering", "steams", "steamship", "steamy", "stearic", "stearin", "steatite", "steatocystoma", "steatopygia", "steatorrhea", "steed", "steel", "steeling", "steelmaker", "steelman", "steelworker", "steelworks", "steely", "steelyard", "steenbok", "steep", "steepen", "steepening", "steepens", "steeper", "steepest", "steepish", "steeple", "steeplechase", "steeplechaser", "steeplejack", "steeply", "steepness", "steer", "steerable", "steerage", "steerageway", "steered", "steerer", "steering", "steers", "steersman", "steganography", "stegosaur", "stegosaurus", "steinbok", "stela", "stelae", "stele", "stelis", "stellar", "stellate", "stellified", "stellifies", "stellify", "stem", "stemless", "stemma", "stemmata", "stemmatic", "stemmatics", "stemmatology", "stemmed", "stemmer", "stemming", "stems", "stench", "stencil", "stenciled", "stenciling", "stencilled", "stencilling", "stenograph", "stenographer", "stenographic", "stenographical", "stenography", "stenopterygius", "stenosed", "stenoses", "stenosis", "stenotic", "stent", "stentor", "stentorian", "step", "stepbrother", "stepchild", "stepchildren", "stepdaughter", "stepfather", "stephanion", "stephanotis", "stephead", "stepladder", "stepmother", "stepparent", "steppe", "stepped", "stepper", "stepping", "steprelationship", "steps", "stepsister", "stepson", "stepwise", "steradian", "stercobilinogen", "stercolith", "sterculia", "stereo", "stereophonic", "stereophony", "stereoscope", "stereoscopic", "stereoscopy", "stereotype", "stereotyped", "stereotypes", "stereotypic", "stereotypical", "stereotypically", "stereotyping", "sterile", "sterileness", "sterilisation", "sterilisations", "sterilise", "sterilised", "steriliser", "sterilisers", "sterilises", "sterilising", "sterility", "sterilization", "sterilizations", "sterilize", "sterilized", "sterilizer", "sterilizers", "sterilizes", "sterilizing", "sterling", "stern", "sterna", "sternal", "sternly", "sternness", "sternocleidomastoid", "sternpost", "sternum", "sternutation", "sternutative", "sternutator", "sternutatory", "sternwheeler", "steroid", "steroidal", "steroids", "sterol", "stertor", "stertorous", "stertorously", "stet", "stethoscope", "stets", "stetson", "stetted", "stetting", "Steve", "stevedore", "stevia", "stew", "steward", "stewardess", "stewardship", "stewed", "stewing", "stewpan", "stews", "sth", "sthene", "stibnite", "stick", "stickball", "sticker", "stickers", "stickily", "stickiness", "sticking", "stickle", "stickleback", "stickler", "stickles", "stickpin", "sticks", "sticktight", "stickup", "stickweed", "sticky", "stied", "stiff", "stiffen", "stiffener", "stiffening", "stiffens", "stiffer", "stiffest", "stiffly", "stiffness", "stifle", "stifled", "stifler", "stifles", "stifling", "stigma", "stigmata", "stigmatic", "stigmatisation", "stigmatise", "stigmatised", "stigmatises", "stigmatising", "stigmatism", "stigmatist", "stigmatization", "stigmatize", "stigmatized", "stigmatizes", "stigmatizing", "stilbesterol", "stilbestrol", "stilboestrol", "stile", "stiletto", "stilettoeing", "Still", "still", "stillbirth", "stillborn", "stillness", "stillroom", "stills", "stilly", "stilt", "stiltbird", "stilted", "stiltedly", "stimulant", "stimulate", "stimulated", "stimulates", "stimulating", "stimulation", "stimulative", "stimuli", "stimulus", "sting", "stingier", "stingiest", "stingily", "stinginess", "stinging", "stingless", "stingray", "stings", "stingy", "stink", "stinkbird", "stinked", "stinker", "stinkhorn", "stinkiness", "stinking", "stinkpot", "stinks", "stinkweed", "stinky", "stint", "stinter", "stinting", "stipe", "stipend", "stipendiary", "stipes", "stipites", "stipple", "stippled", "stippler", "stipples", "stippling", "stipulate", "stipulated", "stipulates", "stipulating", "stipulation", "stipulatory", "stipule", "stir", "stirk", "stirpes", "stirps", "stirred", "stirrer", "stirring", "stirringly", "stirrup", "stirs", "stitch", "stitched", "stitcher", "stitchery", "stitches", "stitching", "stitchwort", "stizolobium", "stm", "stoa", "stoae", "stoat", "stob", "stochastic", "stochastically", "stochasticity", "stock", "stockade", "stockbroker", "stockcar", "stocked", "stocker", "stockfish", "stockfishes", "stockholder", "stockholders", "stockholding", "stockhorn", "stockier", "stockiest", "stockily", "stockinet", "stockinette", "stocking", "stockinged", "stockings", "stockist", "stockjobber", "stockman", "stockpile", "stockpiling", "stockpot", "stockroom", "stocks", "stocktake", "stocktaker", "stocktaking", "stocky", "stockyard", "stodge", "stodgier", "stodgiest", "stodgily", "stodginess", "stodgy", "stoep", "stogie", "stogy", "stoic", "stoical", "stoically", "stoichiometric", "stoichiometry", "stoke", "stoked", "stokehold", "stokehole", "stoker", "stokes", "stoking", "stole", "stolen", "stolid", "stolidity", "stolidly", "stolidness", "stolon", "stoloniferous", "stoma", "stomach", "stomachache", "stomachal", "stomacher", "stomachic", "stomata", "stomatal", "stomate", "stomatitis", "stomatopod", "stomatous", "stomodaea", "stomodaeum", "stomodea", "stomodeum", "stomp", "stomped", "stomper", "stomping", "stomps", "stone", "stonechat", "stonecress", "stonecrop", "stonecutter", "stoned", "stoneface", "stonefish", "stonefishes", "stonefly", "stoneless", "stonelike", "stonemason", "stoner", "stoneroot", "stones", "stonewall", "stonewalled", "stonewaller", "stonewalling", "stonewalls", "stoneware", "stonewash", "stonework", "stonewort", "stonier", "stoniest", "stonily", "stoning", "stony", "stonyhearted", "stood", "stooge", "stool", "stoolie", "stoolpigeon", "stoop", "stooped", "stooper", "stooping", "stoops", "stop", "stopcock", "stopgap", "stoplight", "stopover", "stoppable", "stoppage", "stopped", "stopper", "stoppered", "stopping", "stopple", "stopples", "stops", "stopwatch", "storage", "storax", "store", "stored", "storefront", "storehouse", "storekeeper", "storeroom", "stores", "storey", "storeyed", "storeys", "storied", "stories", "storing", "stork", "storksbill", "storm", "stormbound", "stormed", "stormier", "stormiest", "stormily", "storminess", "storming", "stormproof", "storms", "Stormy", "stormy", "story", "storybook", "storyline", "storyteller", "stot", "stotinka", "stotinki", "stotkini", "stots", "stotted", "stotting", "stoup", "stout", "stouthearted", "stoutheartedness", "stoutly", "stoutness", "stove", "stovepipe", "stovepiped", "stovepiping", "stover", "stow", "stowage", "stowaway", "stowed", "stowing", "stows", "stp", "strabismus", "strabotomy", "strad", "straddle", "straddles", "straddling", "stradivarius", "strafe", "strafer", "strafes", "strafing", "straggle", "straggler", "straggles", "straggling", "stragglingly", "straggly", "straight", "straightarrow", "straightaway", "straightedge", "straighten", "straightener", "straightening", "straightens", "straightforward", "straightforwardly", "straightforwardness", "straightjacket", "straightlaced", "straightness", "straightway", "strain", "strained", "strainer", "straining", "strains", "strait", "straiten", "straitens", "straitjacket", "straitlaced", "strake", "strand", "stranded", "stranding", "strands", "strange", "strangely", "strangeness", "stranger", "strangers", "strangle", "strangled", "stranglehold", "strangler", "strangles", "strangling", "strangulate", "strangulates", "strangulation", "strap", "strapado", "straphanger", "strapless", "straplike", "strappado", "strappadoes", "strapped", "strapper", "strapping", "straps", "strassburg", "strata", "stratagem", "strategian", "strategic", "strategical", "strategically", "strategics", "strategies", "strategist", "strategists", "strategy", "strati", "stratification", "stratified", "stratifies", "stratify", "stratifying", "stratigraphy", "stratocracy", "stratocumuli", "stratocumulus", "stratosphere", "stratum", "stratus", "stravinskian", "stravinskyan", "straw", "strawberries", "strawberry", "strawboard", "strawflower", "strawman", "strawworm", "stray", "strayer", "straying", "strays", "streak", "streaked", "streaker", "streakier", "streakiest", "streaking", "streaks", "streaky", "stream", "streambed", "streamed", "streamer", "streamier", "streamiest", "streaming", "streamlet", "streamline", "streamlined", "streamliner", "streamlines", "streamlining", "streams", "streamy", "street", "streetcar", "streetlight", "streets", "streetwalk", "streetwalker", "streetwalking", "streetwise", "strength", "strengthen", "strengthened", "strengthener", "strengthening", "strengthens", "strengths", "strenuosity", "strenuous", "strenuously", "strenuousness", "strep", "strepsiceros", "streptobacillus", "streptocarpus", "streptococcal", "streptococci", "streptococcic", "streptococcus", "streptodornase", "streptokinase", "streptolysin", "streptomyces", "streptomycin", "streptothricin", "stress", "stressed", "stresses", "stressful", "stressing", "stressor", "stressors", "stretch", "stretchability", "stretchable", "stretched", "stretcher", "stretches", "stretchier", "stretchiest", "stretchiness", "stretching", "stretchy", "stretti", "stretto", "streusel", "strew", "strewing", "strewn", "strews", "stria", "striae", "striate", "striates", "striation", "striatum", "stricken", "strickle", "strict", "stricter", "strictly", "strictness", "stricture", "stride", "stridence", "stridency", "strident", "stridently", "strider", "strides", "striding", "stridor", "stridulate", "stridulation", "strife", "strike", "strikebound", "strikebreaker", "strikebreaking", "strikeout", "striker", "strikers", "strikes", "striking", "strikingly", "strikingness", "string", "stringency", "stringent", "stringently", "stringer", "stringier", "stringiest", "stringing", "strings", "stringy", "stringybark", "strip", "stripe", "striped", "striper", "stripes", "stripier", "stripiest", "striping", "stripling", "stripped", "stripper", "stripping", "strips", "striptease", "stripteaser", "stripy", "strive", "striven", "striver", "strives", "striving", "strobe", "strobile", "strobili", "strobilus", "stroboscope", "strode", "stroke", "strokes", "stroking", "stroll", "stroller", "strolling", "strolls", "stroma", "stromata", "stromateid", "strong", "strongbox", "stronger", "strongest", "stronghold", "strongly", "strongman", "strongroom", "strontianite", "strontium", "strop", "strophanthin", "strophanthus", "strophe", "stropped", "stroppier", "stroppiest", "stropping", "stroppy", "strops", "strove", "struck", "structural", "structuralism", "structurally", "structure", "structured", "structures", "structuring", "strudel", "struggle", "struggled", "struggler", "struggles", "struggling", "strum", "struma", "strumae", "strummed", "strumming", "strumpet", "strums", "strung", "strut", "struthiomimus", "struts", "strutted", "strutting", "strychnine", "stub", "stubbed", "stubbiness", "stubbing", "stubble", "stubbled", "stubbly", "stubborn", "stubbornly", "stubbornness", "stubby", "stucco", "stuccoes", "stuck", "stud", "studbook", "studded", "studding", "student", "students", "studentship", "studhorse", "studied", "studies", "studio", "studios", "studious", "studiously", "studiousness", "study", "studying", "stuff", "stuffed", "stuffer", "stuffier", "stuffiest", "stuffily", "stuffiness", "stuffing", "stuffs", "stuffy", "stultification", "stultified", "stultifies", "stultify", "stultifying", "stum", "stumble", "stumblebum", "stumbled", "stumbler", "stumbles", "stumbling", "stummed", "stumming", "stump", "stumper", "stumpier", "stumpiest", "stumping", "stumpknocker", "stumpy", "stun", "stung", "stunned", "stunner", "stunning", "stunningly", "stuns", "stunt", "stunted", "stuntedness", "stunting", "stunts", "stupa", "stupe", "stupefaction", "stupefied", "stupefies", "stupefy", "stupefying", "stupendous", "stupendously", "stupid", "stupidest", "stupidity", "stupidly", "stupor", "stuporous", "sturdier", "sturdiest", "sturdily", "sturdiness", "sturdy", "sturgeon", "sturmabteilung", "stutter", "stutterer", "stuttering", "stutters", "sty", "stye", "stygian", "style", "styled", "styleless", "stylemark", "styler", "styles", "stylet", "styli", "styling", "stylisation", "stylise", "stylised", "stylises", "stylish", "stylishly", "stylishness", "stylist", "stylistic", "stylistically", "stylite", "stylization", "stylize", "stylized", "stylizes", "stylopes", "stylopodia", "stylopodium", "stylops", "stylostixis", "stylus", "stymie", "stymied", "stymies", "stymy", "stymying", "stypsis", "styptic", "styracosaur", "styracosaurus", "styrax", "styrene", "styrofoam", "suasible", "suasion", "suave", "suavely", "suaveness", "suavity", "sub", "sub-markets", "sub-minimum", "sub-segments", "sub-station", "sub-underwriters", "sub-underwriting", "subacid", "subacute", "subalpine", "subaltern", "subaquatic", "subaqueous", "subarctic", "subartesian", "subatomic", "subbase", "subbed", "subbing", "subclass", "subclasses", "subclavian", "subclinical", "subcommittee", "subcompact", "subconscious", "subconsciously", "subconsciousness", "subcontinent", "subcontract", "subcontractor", "subcortex", "subcortical", "subcortices", "subculture", "subcutaneous", "subcutaneously", "subdeacon", "subdeliria", "subdelirium", "subdirectory", "subdivide", "subdivider", "subdivides", "subdividing", "subdivision", "subdominant", "subduable", "subduction", "subdue", "subdued", "subduedness", "subduer", "subdues", "subduing", "subdural", "subedit", "subeditor", "subedits", "subfamilies", "subfamily", "subfigure", "subfusc", "subgenera", "subgenus", "subgross", "subgroup", "subgroups", "subhead", "subheading", "subhuman", "subindex", "subindices", "subjacent", "subject", "subjected", "subjectified", "subjectifies", "subjectify", "subjecting", "subjection", "subjective", "subjectively", "subjectiveness", "subjectivism", "subjectivist", "subjectivity", "subjects", "subjoin", "subjoining", "subjoins", "subjugable", "subjugate", "subjugated", "subjugates", "subjugating", "subjugation", "subjugator", "subjunction", "subjunctive", "subkingdom", "sublease", "sublet", "sublets", "subletting", "sublieutenant", "sublimate", "sublimated", "sublimates", "sublimating", "sublimation", "sublimaze", "sublime", "sublimed", "sublimely", "sublimes", "subliminal", "sublimity", "sublingual", "subliterary", "sublittoral", "sublunar", "sublunary", "subluxate", "subluxation", "submarine", "submariner", "submaxilla", "submediant", "submenu", "submerge", "submerged", "submergence", "submerges", "submergible", "submerging", "submerse", "submersed", "submerses", "submersible", "submersion", "submission", "submissions", "submissive", "submissively", "submissiveness", "submit", "submits", "submitted", "submitter", "submitting", "submucosa", "submucosae", "subnormal", "subnormality", "subocean", "suboceanic", "subocular", "suborbital", "suborder", "subordinate", "subordinated", "subordinateness", "subordinating", "subordination", "subordinative", "suborn", "subornation", "suborner", "suborning", "subpart", "subphyla", "subphylum", "subpoena", "subpoenaed", "subpoenaing", "subpopulation", "subprogram", "subrogate", "subrogates", "subrogation", "subroutine", "subscribe", "subscribed", "subscriber", "subscribers", "subscribes", "subscribing", "subscript", "subscription", "subscriptions", "subsection", "subsequence", "subsequent", "subsequently", "subsequentness", "subserve", "subserves", "subservience", "subservient", "subserviently", "subservientness", "subset", "subsets", "subshrub", "subside", "subsided", "subsidence", "subsides", "subsidiaries", "subsidiarity", "subsidiary", "subsidies", "subsiding", "subsidisation", "subsidise", "subsidised", "subsidiser", "subsidisers", "subsidises", "subsidising", "subsidization", "subsidize", "subsidized", "subsidizer", "subsidizers", "subsidizes", "subsidizing", "subsidy", "subsist", "subsistence", "subsister", "subsisting", "subsists", "subsoil", "subsonic", "subspace", "subspecies", "substance", "substances", "substandard", "substantial", "substantiality", "substantially", "substantialness", "substantiate", "substantiates", "substantiating", "substantiation", "substantiative", "substantival", "substantive", "substation", "substitutability", "substitutable", "substitute", "substituted", "substitutes", "substituting", "substitution", "substitutions", "substrasta", "substrate", "substrates", "substratum", "substring", "substructure", "subsume", "subsumed", "subsumes", "subsumption", "subsurface", "subsystem", "subtend", "subtending", "subterfuge", "subterminal", "subterranean", "subterraneous", "subthalamus", "subtilin", "subtilise", "subtilize", "subtitle", "subtitled", "subtitles", "subtitling", "subtle", "subtlety", "subtly", "subtonic", "subtopia", "subtotal", "subtotalled", "subtotalling", "subtract", "subtracted", "subtracter", "subtracting", "subtraction", "subtractive", "subtracts", "subtrahend", "subtreasury", "subtropic", "subtropical", "subtropics", "subunit", "subunits", "suburb", "suburban", "suburbanise", "suburbanised", "suburbanite", "suburbanize", "suburbanized", "suburbanizing", "suburbia", "suburbs", "subvent", "subvention", "subversion", "subversive", "subversiveness", "subvert", "subverted", "subverter", "subverting", "subverts", "subvocalise", "subvocaliser", "subvocalize", "subvocalizer", "subway", "subwoofer", "succade", "succedanea", "succedaneum", "succeed", "succeeded", "succeeder", "succeeding", "succeeds", "success", "successes", "successful", "successfully", "successfulness", "succession", "successive", "successively", "successiveness", "successor", "successors", "succinct", "succinctly", "succinctness", "succinic", "succinylcholine", "succor", "succored", "succorer", "succoring", "succors", "succory", "succos", "succotash", "succour", "succoured", "succourer", "succouring", "succours", "succuba", "succubi", "succubus", "succulence", "succulency", "succulent", "succumb", "succumbed", "succumbing", "succumbs", "succus", "succuss", "succussion", "Such", "such", "suchlike", "suck", "sucked", "sucker", "suckerfish", "suckerfishes", "suckers", "suckfish", "suckfishes", "sucking", "suckle", "suckled", "suckles", "suckling", "sucks", "sucralfate", "sucrase", "sucrose", "suction", "suctioning", "suctorial", "sudafed", "Sudan", "sudan", "sudanese", "sudaria", "sudarium", "sudate", "sudation", "sudatoria", "sudatorium", "sudatory", "sudden", "suddenly", "suddenness", "sudoku", "sudor", "sudorific", "sudra", "suds", "sudsy", "sue", "sued", "suede", "sueing", "suer", "sues", "suet", "suety", "suffer", "sufferable", "sufferance", "suffered", "sufferer", "sufferers", "suffering", "suffers", "suffice", "sufficed", "suffices", "sufficiency", "sufficient", "sufficiently", "sufficing", "suffix", "suffixation", "suffocate", "suffocates", "suffocating", "suffocation", "suffocative", "suffragan", "suffrage", "suffragette", "suffragism", "suffragist", "suffrutescent", "suffrutex", "suffuse", "suffuses", "suffusing", "suffusion", "suffusive", "sufi", "sugar", "sugarberry", "sugarcane", "sugarcoat", "sugarcoating", "sugarcoats", "sugared", "sugariness", "sugarless", "sugarloaf", "sugarplum", "sugars", "sugary", "suggest", "suggested", "suggester", "suggestibility", "suggestible", "suggesting", "suggestion", "suggestions", "suggestive", "suggestively", "suggests", "sugi", "suicidal", "suicide", "suicides", "suing", "suisse", "suit", "suitability", "suitable", "suitableness", "suitably", "suitcase", "suite", "suited", "suites", "suiting", "suitor", "suits", "sukiyaki", "sukkoth", "suksdorfia", "sulamyd", "sulawesi", "sulcate", "sulci", "sulcus", "sulfa", "sulfacetamide", "sulfadiazine", "sulfamethazine", "sulfamethoxazole", "sulfamezathine", "sulfanilamide", "sulfapyridine", "sulfate", "sulfates", "sulfide", "sulfides", "sulfisoxazole", "sulfonamide", "sulfonate", "sulfonylurea", "sulfur", "sulfurette", "sulfuretted", "sulfuric", "sulfurized", "sulfurous", "sulindac", "sulk", "sulkier", "sulkiest", "sulkily", "sulkiness", "sulking", "sulks", "sulky", "sullen", "sullenly", "sullenness", "sullied", "sullies", "sully", "sulpha", "sulphate", "sulphates", "sulphide", "sulphides", "sulphur", "sulphuret", "sulphurette", "sulphuretted", "sulphuretting", "sulphuric", "sulphurous", "sultan", "sultana", "sultanate", "sultrier", "sultriest", "sultrily", "sultriness", "sultry", "sum", "sumac", "sumach", "sumatran", "sumerian", "summa", "summae", "summaries", "summarily", "summarisation", "summarise", "summarised", "summarises", "summarising", "summarization", "summarize", "summarized", "summarizes", "summarizing", "summary", "summate", "summation", "summational", "summative", "summed", "summer", "summercater", "summerhouse", "summering", "summerise", "summerize", "summers", "summersault", "summerset", "summertime", "summery", "summing", "summit", "summon", "summoned", "summoning", "summons", "sumo", "sump", "sumpsimus", "sumpter", "sumptuary", "sumptuosity", "sumptuous", "sumptuously", "sumptuousness", "sums", "sun", "SUN.", "Sun.", "sun.", "sunbaked", "sunbathe", "sunbather", "sunbathing", "sunbeam", "sunberry", "sunblind", "sunblock", "sunbonnet", "sunburn", "sunburned", "sunburnt", "sunburst", "sunchoke", "sundae", "sunday", "sunder", "sundering", "sunders", "sundew", "sundial", "sundog", "sundown", "sundowner", "sundress", "sundried", "sundries", "sundrops", "sundry", "sunfish", "sunfishes", "sunflower", "sung", "sunglass", "sunglasses", "sunhat", "sunk", "sunken", "sunlamp", "sunless", "sunlight", "sunlit", "sunna", "sunned", "sunnier", "sunniest", "sunnily", "sunniness", "sunning", "Sunny", "sunny", "sunporch", "sunray", "sunrise", "sunroof", "sunroom", "sunrose", "sunscreen", "sunset", "sunshade", "sunshine", "sunspot", "sunstone", "sunstroke", "sunstruck", "sunsuit", "suntan", "suntanned", "suntrap", "sunup", "suomi", "sup", "super", "super-absorbent", "super-expensive", "super-fast", "super-majority", "super-regulator", "super-rich", "super-spy", "super-user", "superable", "superabundance", "superabundant", "superannuate", "superannuated", "superannuates", "superannuation", "superb", "superbia", "superbly", "superbug", "supercargo", "supercargoes", "supercharge", "supercharged", "supercharger", "supercharges", "supercilious", "superciliously", "superciliousness", "supercilium", "superclass", "supercomputer", "superconductivity", "supercritical", "superego", "supererogation", "supererogatory", "superfamily", "superfatted", "superfecta", "superfecundation", "superfetate", "superfetation", "superficial", "superficiality", "superficially", "superficies", "superfine", "superfluity", "superfluous", "superfluously", "superfund", "supergiant", "supergrass", "superhero", "superheroes", "superhet", "superhighway", "superhuman", "superimpose", "superimposed", "superimposes", "superimposing", "superincumbent", "superinfect", "superinfecting", "superinfection", "superinfects", "superintend", "superintendence", "superintendent", "superintending", "superior", "superiority", "superiors", "superjacent", "superlative", "superlatively", "superload", "superlunar", "superlunary", "superman", "supermarket", "supermarketeer", "supermarketer", "supermarkets", "supermex", "supermodel", "supermolecule", "supermom", "supernal", "supernatant", "supernatants", "supernatural", "supernaturalism", "supernaturalist", "supernaturalistic", "supernaturally", "supernaturalness", "supernormal", "supernova", "supernovae", "supernumerary", "superorder", "superordinate", "superordination", "superoxide", "superpatriotic", "superpatriotism", "superphylum", "superposable", "superpose", "superposes", "superposition", "superpower", "supersaturated", "superscribe", "superscribes", "superscript", "superscription", "supersede", "superseded", "supersedes", "superseding", "supersedure", "supersensitised", "supersensitive", "supersensitized", "supersession", "superslasher", "supersonic", "superstar", "superstition", "superstitious", "superstitiously", "superstrata", "superstrate", "superstratum", "superstring", "superstructure", "supersymmetry", "supertanker", "supertax", "supertitle", "supertonic", "supertwister", "supervene", "supervention", "supervise", "supervised", "supervises", "supervising", "supervision", "supervisor", "supervisors", "supervisory", "supinate", "supination", "supinator", "supine", "supinely", "supped", "supper", "supperless", "suppertime", "supping", "supplant", "supplanter", "supplanting", "supplants", "supple", "supplejack", "supplement", "supplemental", "supplementary", "supplementation", "supplementing", "supplements", "suppleness", "supples", "suppliant", "supplicant", "supplicate", "supplication", "supplicatory", "supplied", "supplier", "suppliers", "supplies", "supply", "supplying", "support", "supportable", "supported", "supporter", "supporters", "supporting", "supportive", "supports", "supposable", "supposal", "suppose", "supposed", "supposedly", "supposes", "supposing", "supposition", "suppositional", "suppositious", "supposititious", "suppository", "suppress", "suppressant", "suppressed", "suppresser", "suppresses", "suppressing", "suppression", "suppressive", "suppressor", "suppurate", "suppuration", "suppurative", "supra", "suprainfection", "supranational", "supranormal", "supraocular", "supraorbital", "suprarenalectomy", "suprasegmental", "supremacism", "supremacist", "supremacy", "suprematism", "suprematist", "supreme", "supremely", "supremo", "sur", "sura", "surbase", "surcease", "surcharge", "surcoat", "surd", "Sure", "sure", "surefooted", "surely", "sureness", "surest", "surety", "surf", "surface", "surfaced", "surfaces", "surfacing", "surfactant", "surfbird", "surfboard", "surfboarder", "surfboarding", "surfboat", "surfeit", "surfer", "surfers", "surffish", "surficial", "surfing", "surfperch", "surfriding", "surfs", "surge", "surged", "surgeon", "surgeonfish", "surgeonfishes", "surgeons", "surgeries", "surgery", "surges", "surgical", "surgically", "surging", "suricate", "surinam", "surlier", "surliest", "surlily", "surliness", "surly", "surmisable", "surmisal", "surmise", "surmises", "surmising", "surmontil", "surmount", "surmountable", "surmounted", "surmounter", "surmounting", "surmounts", "surmullet", "surname", "surnames", "surpass", "surpassed", "surpasses", "surpassing", "surpassingly", "surplice", "surpliced", "surplus", "surplusage", "surpluses", "surprint", "surprisal", "surprise", "surprised", "surprisedly", "surpriser", "surprises", "surprising", "surprisingly", "surprisingness", "surreal", "surrealism", "surrealist", "surrealistic", "surrebuttal", "surrebutter", "surrejoinder", "surrender", "surrendered", "surrenderer", "surrendering", "surrenders", "surreptitious", "surreptitiously", "surrogate", "surrogates", "surround", "surrounded", "surrounding", "surroundings", "surrounds", "surtax", "surtitle", "surtout", "surveil", "surveillance", "surveils", "survey", "surveyed", "surveying", "surveyor", "surveys", "survival", "survivalist", "survive", "survived", "survives", "surviving", "survivor", "survivors", "susa", "susah", "susceptibility", "susceptible", "susceptibleness", "sushi", "susian", "susiana", "suslik", "suspect", "suspected", "suspecting", "suspects", "suspend", "suspended", "suspender", "suspending", "suspends", "suspense", "suspenseful", "suspension", "suspensions", "suspensive", "suspensor", "suspensory", "suspicion", "suspicions", "suspicious", "suspiciously", "suspiciousness", "suspiration", "suspire", "sustain", "sustainability", "sustainable", "sustainably", "sustained", "sustainer", "sustaining", "sustainment", "sustains", "sustenance", "sustentacular", "sustentation", "susurrant", "susurrate", "susurration", "susurrous", "susurrus", "sutler", "sutra", "suttee", "sutura", "suture", "suturing", "suv", "suzerain", "suzerainty", "svedberg", "svelte", "sverige", "svizzera", "svoboda", "svr", "swab", "swabbed", "swabbing", "swad", "swaddle", "swaddling", "swag", "swage", "swagged", "swagger", "swaggerer", "swaggering", "swaggie", "swagging", "swagman", "swain", "swale", "swallow", "swallowed", "swallowing", "swallows", "swallowtail", "swallowwort", "swami", "swamies", "swamp", "swamped", "swamphen", "swamping", "swampland", "swamps", "swampy", "swan", "swanflower", "swank", "swankier", "swankiest", "swanky", "swanneck", "swap", "swapped", "swapping", "swaps", "sward", "swarm", "swarming", "swart", "swarthier", "swarthiest", "swarthiness", "swarthy", "swash", "swashbuckler", "swashbuckling", "swastika", "swat", "swatch", "swath", "swathe", "swathed", "swathing", "swatted", "swatter", "swatting", "sway", "swayback", "swaybacked", "swayed", "swayer", "swaying", "sways", "swazi", "swbs", "swbw", "swear", "swearer", "swearing", "swears", "swearword", "sweat", "sweatband", "sweatbox", "sweated", "sweater", "sweaters", "sweatier", "sweatiest", "sweating", "sweatpants", "sweats", "sweatshirt", "sweatshop", "sweatsuit", "sweaty", "Sweden", "sweden", "swedish", "sweep", "sweeper", "sweeping", "sweepingly", "sweeps", "sweepstakes", "sweet", "sweetbread", "sweetbriar", "sweetbrier", "sweeten", "sweetened", "sweetener", "sweetening", "sweetens", "sweeter", "sweetest", "sweetheart", "sweetie", "sweetiewife", "sweetiewives", "sweetish", "sweetleaf", "sweetly", "sweetmeat", "sweetness", "sweetpea", "sweetsop", "swell", "swelled", "swellfish", "swellfishes", "swellhead", "swelling", "swells", "swelter", "sweltering", "sweltry", "swept", "sweptback", "sweptwing", "swerve", "swerving", "swift", "swiftlet", "swiftly", "swiftness", "swig", "swigged", "swigging", "swill", "swilling", "swim", "swiming", "swimmer", "swimmeret", "swimming", "swimmingly", "swims", "swimsuit", "swimwear", "swindle", "swindled", "swindler", "swindles", "swindling", "swine", "swineherd", "swing", "swinge", "swingeing", "swinger", "swinging", "swingletree", "swings", "swingy", "swinish", "swipe", "swipes", "swiping", "swirl", "swirling", "swirls", "swish", "swishing", "swishy", "swiss", "switch", "switchblade", "switchboard", "switched", "switcher", "switcheroo", "switches", "switching", "switchman", "swither", "Switzerland", "switzerland", "swivel", "swiveled", "swiveling", "swivelled", "swivelling", "swivels", "swivet", "swiz", "swizzle", "swob", "swollen", "swoon", "swooning", "swoop", "swooping", "swoops", "swoosh", "swop", "swopped", "swopping", "sword", "swordfish", "swordfishes", "swordlike", "swordplay", "swords", "swordsman", "swordsmanship", "swordtail", "swore", "sworn", "swosh", "swot", "swotted", "swotting", "swung", "sybarite", "sybaritic", "sycamore", "syconia", "syconium", "sycophancy", "sycophant", "sycophantic", "syllabary", "syllabi", "syllabic", "syllabically", "syllabicate", "syllabication", "syllabicity", "syllabification", "syllabified", "syllabifies", "syllabify", "syllabise", "syllabize", "syllable", "syllabled", "syllables", "syllabub", "syllabus", "syllepses", "syllepsis", "syllogise", "syllogiser", "syllogises", "syllogism", "syllogist", "syllogistic", "syllogize", "syllogizer", "syllogizes", "sylph", "sylphic", "sylphlike", "sylva", "sylvan", "sylvanite", "sylvine", "sylvite", "symbiosis", "symbiotic", "symbiotically", "symbol", "symbolatry", "symbolic", "symbolical", "symbolically", "symbolisation", "symbolise", "symbolised", "symboliser", "symbolises", "symbolising", "symbolism", "symbolist", "symbolization", "symbolize", "symbolized", "symbolizer", "symbolizes", "symbolizing", "symbolled", "symbolling", "symbology", "symbololatry", "symbols", "symmetric", "symmetrical", "symmetrically", "symmetricalness", "symmetrise", "symmetrize", "symmetry", "sympathectomy", "sympathetic", "sympathetically", "sympathies", "sympathise", "sympathised", "sympathiser", "sympathisers", "sympathises", "sympathising", "sympathize", "sympathized", "sympathizer", "sympathizers", "sympathizes", "sympathizing", "sympathomimetic", "sympathy", "sympatric", "sympatry", "sympetalous", "symphilid", "symphonic", "symphonious", "symphonise", "symphonises", "symphonist", "symphonize", "symphonizes", "symphony", "symphyses", "symphysion", "symphysis", "symploce", "sympodia", "sympodium", "symposia", "symposiarch", "symposiast", "symposium", "symptom", "symptomatic", "symptomatically", "symptomless", "symptoms", "synaeresis", "synaesthesia", "synaesthetic", "synagogue", "synapse", "synapses", "synapsid", "synapsis", "synaptic", "synarthroses", "synarthrosis", "sync", "syncarp", "syncarpous", "syncategorem", "syncategorematic", "syncategoreme", "synchro", "synchrocyclotron", "synchroflash", "synchromesh", "synchronal", "synchroneity", "synchronic", "synchronicity", "synchronisation", "synchronise", "synchronised", "synchroniser", "synchronises", "synchronising", "synchronism", "synchronization", "synchronize", "synchronized", "synchronizer", "synchronizes", "synchronizing", "synchronoscope", "synchronous", "synchronously", "synchrony", "synchroscope", "synchrotron", "syncing", "synclinal", "synclinoria", "synclinorium", "syncopate", "syncopated", "syncopation", "syncopator", "syncope", "syncretic", "syncretical", "syncretise", "syncretism", "syncretistic", "syncretistical", "syncretize", "syncs", "syncytia", "syncytium", "syndactylism", "syndactyly", "syndesmoses", "syndesmosis", "syndetic", "syndic", "syndicalism", "syndicalist", "syndicate", "syndicated", "syndicates", "syndication", "syndicator", "syndrome", "syndromes", "synecdoche", "synecdochic", "synecdochical", "synechia", "syneresis", "synergetic", "synergism", "synergist", "synergistic", "synergistically", "synergy", "synesthesia", "synesthetic", "synezesis", "synizesis", "synod", "synoecious", "synoicous", "synonym", "synonymist", "synonymity", "synonymous", "synonymously", "synonymousness", "synonyms", "synonymy", "synopses", "synopsis", "synoptic", "synoptical", "synoptics", "synovia", "synovial", "synovitis", "synovium", "synsemantic", "synset", "syntactic", "syntactical", "syntactically", "syntactician", "syntagm", "syntagma", "syntagmata", "syntagmatic", "syntax", "syntheses", "synthesis", "synthesise", "synthesised", "synthesiser", "synthesisers", "synthesises", "synthesising", "synthesist", "synthesize", "synthesized", "synthesizer", "synthesizers", "synthesizes", "synthesizing", "synthetic", "synthetical", "synthetically", "synthetism", "syph", "syphilis", "syphilitic", "syphiloma", "syphilomata", "syphon", "syphoned", "syphoning", "syphons", "Syria", "syria", "syrian", "syringa", "syringe", "syringes", "syrinx", "syrup", "syrupy", "syssarcoses", "syssarcosis", "system", "systematic", "systematically", "systematics", "systematisation", "systematise", "systematised", "systematiser", "systematises", "systematising", "systematism", "systematist", "systematization", "systematize", "systematized", "systematizer", "systematizes", "systematizing", "systemic", "systemise", "systemiser", "systemises", "systemize", "systemizer", "systemizes", "systems", "systole", "systolic", "syzygy", "szechuan", "S\xE3o", "s\xE3o", "taal", "tab", "tabard", "tabbed", "tabbing", "tabbouleh", "tabby", "tabes", "tabi", "tablature", "table", "tableau", "tableaux", "tablecloth", "tablefork", "tableland", "tablemate", "tables", "tablespoon", "tablespoonful", "tablespoons", "tablet", "tabletop", "tablets", "tableware", "tabling", "tabloid", "tabloids", "taboo", "tabooing", "tabooli", "taboos", "tabor", "taboret", "tabour", "tabouret", "tabs", "tabu", "tabular", "tabularise", "tabularises", "tabularize", "tabularizes", "tabulate", "tabulates", "tabulating", "tabulation", "tabulator", "tabun", "tacamahac", "tach", "tacheometer", "tachistoscope", "tachogram", "tachograph", "tachometer", "tachycardia", "tachygraphy", "tachylite", "tachymeter", "tacit", "tacitly", "taciturn", "taciturnity", "taciturnly", "tack", "tacked", "tacker", "tackier", "tackiest", "tackiness", "tacking", "tackle", "tackled", "tackler", "tackles", "tackling", "tacks", "tacky", "taco", "taconite", "tacos", "tact", "tactful", "tactfully", "tactfulness", "tactic", "tactical", "tactically", "tactician", "tactics", "tactile", "tactility", "tactless", "tactlessly", "tactlessness", "tactual", "tactually", "tad", "tadalafil", "tadjik", "tadpole", "tadzhik", "tadzhikistan", "taekwondo", "tael", "taenia", "taeniae", "taffeta", "taffrail", "taffy", "tag", "tagalong", "tagamet", "tagasaste", "tagged", "tagger", "tagging", "tagliatelle", "tags", "taguan", "tahini", "tahitian", "tai", "taichi", "taichichuan", "tail", "tailback", "tailboard", "tailcoat", "tailed", "tailfin", "tailflower", "tailgate", "tailgater", "tailgating", "tailing", "tailless", "taillight", "taillike", "tailor", "tailorbird", "tailored", "tailoring", "tailors", "tailpiece", "tailpipe", "tailplane", "tailrace", "tails", "tailspin", "tailstock", "tailwind", "tailwort", "taint", "tainted", "tainting", "taints", "taipan", "taipeh", "taira", "Taiwan", "taiwan", "taiwanese", "Tajikistan", "tajikistan", "tajikistani", "taka", "takahe", "take", "takeaway", "takedown", "taken", "takeoff", "takeout", "takeover", "taker", "takers", "takes", "takin", "taking", "tala", "talapoin", "talaria", "talc", "talcked", "talcking", "talcs", "talcum", "tale", "taleban", "talebearer", "talebearing", "talent", "talented", "talentless", "talentlessness", "talents", "tales", "taleteller", "tali", "talien", "taliped", "talipes", "talipot", "talisman", "talismanic", "talk", "talkative", "talkatively", "talkativeness", "talked", "talker", "talkie", "talkier", "talkiest", "talkily", "talking", "talks", "talky", "tall", "tallaisim", "tallboy", "taller", "tallest", "tallgrass", "tallied", "tallies", "tallin", "tallish", "tallith", "tallithes", "tallitoth", "tallness", "tallow", "tally", "tallying", "tallyman", "talon", "taloned", "talus", "talwin", "tam", "tamable", "tamal", "tamandu", "tamandua", "tamanoir", "tamarack", "tamarao", "tamarau", "tamarillo", "tamarin", "tamarind", "tamarindo", "tamarisk", "tambac", "tambala", "tambocor", "tambour", "tambourine", "tamburlaine", "tame", "tameable", "tamed", "tamely", "tameness", "tamer", "tames", "tamil", "taming", "tammany", "tammerfors", "tammied", "tammy", "tamoxifen", "tamp", "tamper", "tampering", "tampers", "tamping", "tampion", "tampon", "tamponade", "tamponage", "tamps", "tan", "tanach", "tanager", "tanbark", "tandearil", "tandem", "tandoor", "tanekaha", "tangelo", "tangency", "tangent", "tangential", "tangentially", "tangerine", "tangibility", "tangible", "tangibleness", "tangibly", "tangier", "tangiest", "tanginess", "tangle", "tanglebush", "tangled", "tangles", "tangling", "tango", "tangoes", "tangor", "tangos", "tangram", "tangy", "tank", "tanka", "tankage", "tankard", "tanked", "tanker", "tankers", "tankful", "tanking", "tanks", "tanned", "tanner", "tannery", "tannest", "tannia", "tannic", "tannin", "tanning", "tannish", "tannoy", "tans", "tansy", "tantalise", "tantalised", "tantaliser", "tantalises", "tantalising", "tantalisingly", "tantalite", "tantalization", "tantalize", "tantalized", "tantalizer", "tantalizes", "tantalizing", "tantalizingly", "tantalum", "tantamount", "tantric", "tantrik", "tantrum", "Tanzania", "tanzania", "tanzanian", "tanzim", "taoiseach", "taoist", "tap", "tapa", "tapdance", "tapdancing", "tape", "taped", "tapeline", "tapenade", "taper", "tapered", "tapering", "tapers", "tapes", "tapestried", "tapestries", "tapestry", "tapeta", "tapetum", "tapeworm", "taphephobia", "taphouse", "taping", "tapioca", "tapir", "tapis", "tapotement", "tappa", "tapped", "tapper", "tappet", "tapping", "taproom", "taproot", "taps", "tapster", "tar", "taradiddle", "taraktagenos", "taraktogenos", "tarantella", "tarantelle", "tarantism", "tarantula", "tarantulae", "tarboosh", "tard", "tardier", "tardiest", "tardigrade", "tardily", "tardiness", "tardive", "tardy", "tare", "target", "targeted", "targeting", "targets", "tarheel", "tariff", "tariffs", "tarmac", "tarmacadam", "tarn", "tarnish", "tarnished", "tarnishes", "tarnishing", "taro", "tarot", "tarp", "tarpan", "tarpaulin", "tarpon", "tarquinius", "tarradiddle", "tarragon", "tarred", "tarriance", "tarried", "tarries", "tarring", "tarry", "tars", "tarsal", "tarsi", "tarsier", "tarsitis", "tarsometatarsi", "tarsometatarsus", "tarsus", "tart", "tartan", "tartar", "tartarean", "tartaric", "tartarus", "tartlet", "tartly", "tartness", "tartrate", "tartufe", "tarweed", "tarwood", "tashmitum", "task", "taskent", "tasking", "taskmaster", "taskmistress", "tasks", "tasmanian", "tasse", "tassel", "tasseled", "tasselled", "tasselling", "tasset", "taste", "tastebud", "tasteful", "tastefully", "tastefulness", "tasteless", "tastelessly", "tastelessness", "taster", "tasters", "tastes", "tastier", "tastiest", "tastily", "tastiness", "tasting", "tasty", "tat", "tatary", "tater", "tatou", "tatouay", "tats", "tatted", "tatter", "tatterdemalion", "tattered", "tattier", "tattiest", "tattily", "tatting", "tattle", "tattler", "tattles", "tattletale", "tattling", "tattoo", "tattooing", "tattoos", "tatty", "tatu", "tau", "taught", "taunt", "taunted", "taunting", "tauntingly", "taunts", "tauon", "taupe", "taurine", "tauromachy", "taut", "tauten", "tautens", "tautly", "tautness", "tautog", "tautologic", "tautological", "tautology", "tavern", "taw", "tawdrier", "tawdriest", "tawdrily", "tawdriness", "tawdry", "tawniness", "tawny", "tawse", "tax", "taxa", "taxability", "taxable", "taxation", "taxed", "taxer", "taxes", "taxi", "taxicab", "taxidermist", "taxidermy", "taxidriver", "taxies", "taxiing", "taximan", "taximeter", "taxing", "taxis", "taxistand", "taxiway", "taxman", "taxon", "taxonomer", "taxonomic", "taxonomical", "taxonomically", "taxonomist", "taxonomy", "taxophytina", "taxpayer", "taxpayers", "taxpaying", "taxying", "tayra", "tazicef", "tb", "tbit", "TBSP.", "Tbsp.", "tbsp.", "tce", "tchad", "tchotchke", "tchotchkeleh", "tcp", "tdt", "te", "tea", "teaberry", "teacake", "teacart", "teach", "teachable", "teacher", "teachers", "teachership", "teaches", "teaching", "teachings", "teacup", "teacupful", "teahouse", "teak", "teakettle", "teakwood", "teal", "team", "teamed", "teaming", "teammate", "teammates", "teams", "teamster", "teamwork", "teapot", "tear", "tearaway", "teardrop", "tearful", "tearfully", "tearfulness", "teargas", "teargases", "tearing", "tearjerker", "tearless", "tearoom", "tears", "teary", "tease", "teased", "teasel", "teaselled", "teaselling", "teaser", "teases", "teashop", "teasing", "teasingly", "teasle", "teaspoon", "teaspoonful", "teaspoons", "teat", "teatime", "teazel", "tebibit", "tebibyte", "tec", "tech", "techie", "techier", "techiest", "technetium", "technical", "technicality", "technically", "technician", "technicians", "technicolor", "technicolour", "technique", "techniques", "techno", "technobabble", "technocracy", "technocrat", "technological", "technologically", "technologies", "technologist", "technology", "technophile", "technophilia", "technophilic", "technophobe", "technophobia", "technophobic", "techy", "tectonic", "tectonics", "tectrices", "tectrix", "tecumtha", "ted", "tedded", "tedding", "teddy", "tedious", "tediously", "tediousness", "tedium", "teds", "tee", "teeing", "teem", "teemed", "teeming", "teemingness", "teems", "teen", "teenage", "teenaged", "teenager", "teenagers", "teenier", "teeniest", "teens", "teensy", "teentsy", "teeny", "teeoff", "teepee", "tees", "teeter", "teeterboard", "teetering", "teeters", "teetertotter", "teeth", "teethe", "teethes", "teething", "teetotal", "teetotaler", "teetotaling", "teetotalism", "teetotalist", "teetotaller", "teetotum", "teff", "tefillin", "teg", "tegmen", "tegmina", "tegu", "tegular", "tegument", "tehran", "teiid", "teju", "tekki", "tektite", "tela", "telae", "telamon", "telamones", "telangiectases", "telangiectasia", "telco", "telecast", "telecaster", "telecasting", "telecom", "telecommerce", "telecommunicate", "telecommunication", "telecommunications", "telecommuting", "teleconference", "teleconferencing", "telefax", "telefaxes", "telefilm", "telegnosis", "telegnostic", "telegram", "telegraph", "telegraphed", "telegrapher", "telegraphese", "telegraphic", "telegraphically", "telegraphing", "telegraphist", "telegraphy", "telekinesis", "telemark", "telemarketing", "telemeter", "telemetered", "telemetry", "telencephalon", "teleological", "teleologist", "teleology", "teleost", "teleostan", "telepathic", "telepathise", "telepathises", "telepathist", "telepathize", "telepathizes", "telepathy", "telephone", "telephoned", "telephoner", "telephones", "telephonic", "telephoning", "telephonist", "telephony", "telephoto", "telephotograph", "telephotography", "teleport", "teleportation", "teleports", "teleprinter", "teleprocessing", "telerobotics", "telescope", "telescoped", "telescopic", "telescopically", "telescoping", "telescopy", "teleselling", "telethermometer", "teletypewriter", "televangelism", "televangelist", "televise", "televised", "televises", "television", "televisions", "teleworking", "telex", "telexing", "telfer", "telferage", "telia", "telint", "teliospore", "telium", "tell", "teller", "telling", "tellingly", "tells", "telltale", "tellurian", "telluric", "telluride", "tellurium", "telly", "telocentric", "telomerase", "telomere", "telophase", "telpher", "telpherage", "telsontail", "temazepam", "temblor", "temerarious", "temerity", "temp", "temper", "tempera", "temperament", "temperamental", "temperamentally", "temperance", "temperate", "temperately", "temperateness", "temperature", "temperatures", "tempered", "tempering", "tempers", "tempest", "tempestuous", "tempestuousness", "tempi", "templar", "template", "templates", "temple", "temples", "templet", "tempo", "temporal", "temporalis", "temporality", "temporally", "temporalty", "temporarily", "temporariness", "temporary", "temporise", "temporised", "temporiser", "temporises", "temporising", "temporize", "temporized", "temporizer", "temporizes", "temporizing", "tempra", "tempt", "temptable", "temptation", "tempted", "tempter", "tempting", "temptingly", "temptingness", "temptress", "tempts", "tempura", "temujin", "ten", "tenability", "tenable", "tenableness", "tenacious", "tenaciously", "tenaciousness", "tenacity", "tenacula", "tenaculum", "tenancy", "tenant", "tenanted", "tenantry", "tenants", "tench", "tend", "tended", "tendencies", "tendencious", "tendency", "tendentious", "tendentiously", "tendentiousness", "tender", "tendered", "tenderfeet", "tenderfoot", "tendergreen", "tenderhearted", "tenderheartedness", "tendering", "tenderisation", "tenderise", "tenderised", "tenderiser", "tenderises", "tenderising", "tenderization", "tenderize", "tenderized", "tenderizer", "tenderizes", "tenderizing", "tenderloin", "tenderly", "tenderness", "tending", "tendinitis", "tendinous", "tendon", "tendonitis", "tendosynovitis", "tendrac", "tendril", "tends", "tenebrific", "tenebrionid", "tenebrious", "tenebrous", "tenement", "tenesmus", "tenet", "tenfold", "tenge", "tenia", "teniae", "TENN.", "Tenn.", "tenn.", "tenner", "tennessee", "tennis", "tenno", "tenon", "tenonitis", "tenor", "tenorist", "tenormin", "tenoroon", "tenosynovitis", "tenpence", "tenpin", "tenpounder", "tenrec", "tens", "tense", "tensed", "tensely", "tenseness", "tensile", "tensimeter", "tensing", "tensiometer", "tension", "tensional", "tensionless", "tensions", "tensity", "tensor", "tent", "tentacle", "tentacled", "tentacular", "tentative", "tentatively", "tenter", "tenterhook", "tenth", "tenthly", "tenting", "tentmaker", "tentorium", "tents", "tenues", "tenuis", "tenuity", "tenuous", "tenuously", "tenure", "tenured", "tenuring", "tepal", "tepee", "tepefied", "tepefies", "tepefy", "tepid", "tepidity", "tepidly", "tepidness", "tequila", "terabit", "terabyte", "teraflop", "terahertz", "teraph", "teraphim", "teratogen", "teratogenesis", "teratogenic", "teratology", "teratoma", "terazosin", "terbinafine", "terbium", "terce", "tercel", "tercelet", "tercentenary", "tercentennial", "tercet", "terebinth", "teredines", "teredinid", "teredo", "terefah", "teres", "terete", "terga", "tergiversate", "tergiversation", "tergiversator", "tergum", "teriyaki", "term", "termagant", "termed", "termer", "terminable", "terminal", "terminally", "terminals", "terminate", "terminated", "terminates", "terminating", "termination", "terminative", "terminator", "terming", "termini", "terminological", "terminology", "terminus", "termite", "terms", "tern", "ternary", "ternate", "ternion", "terpene", "terpsichorean", "terrace", "terraces", "terracing", "terrain", "terramycin", "terrapin", "terraria", "terrarium", "terrasse", "terrene", "terreplein", "terrestrial", "terrestrially", "terrible", "terribleness", "terribly", "terrier", "terrietia", "terrific", "terrifically", "terrified", "terrifies", "terrify", "terrifying", "terrine", "territorial", "territorialisation", "territorialise", "territoriality", "territorialization", "territorialize", "territorially", "territories", "territory", "terror", "terrorisation", "terrorise", "terrorised", "terrorises", "terrorising", "terrorism", "terrorist", "terrorists", "terrorization", "terrorize", "terrorized", "terrorizes", "terrorizing", "terrycloth", "terse", "tersely", "terseness", "tertian", "tertiary", "tertigravida", "terylene", "terzetti", "terzetto", "tessella", "tessellate", "tessellated", "tessellates", "tessellation", "tessera", "tesseract", "tesserae", "tessin", "test", "testa", "testacean", "testaceous", "testae", "testament", "testamentary", "testate", "testator", "testatrix", "testcross", "tested", "testee", "tester", "testes", "testicle", "testicles", "testicular", "testier", "testiere", "testiest", "testified", "testifier", "testifies", "testify", "testifying", "testily", "testimonial", "testimony", "testiness", "testing", "testis", "testosterone", "tests", "testudinata", "testudines", "testudo", "testy", "tetanic", "tetanilla", "tetanus", "tetany", "tetartanopia", "tetchier", "tetchiest", "tetchily", "tetchiness", "tetchy", "teth", "tether", "tetherball", "tethered", "tethering", "tethers", "tethyidae", "tetra", "tetracaine", "tetrachlorethylene", "tetrachloride", "tetrachloroethylene", "tetrachloromethane", "tetracycline", "tetrad", "tetrafluoroethylene", "tetragon", "tetragonal", "tetragoniaceae", "tetragram", "tetrahalide", "tetrahedra", "tetrahedron", "tetrahydrocannabinol", "tetrahymena", "tetraiodothyronine", "tetralogy", "tetramerous", "tetrameter", "tetramethyldiarsine", "tetrametric", "tetranychid", "tetrapod", "tetrasaccharide", "tetraskele", "tetraskelia", "tetraskelion", "tetrasporangium", "tetraspore", "tetravalent", "tetri", "tetrode", "tetrodotoxin", "tetrose", "tetroxide", "tetryl", "tetterwort", "tettigoniid", "teutonic", "tevere", "tevet", "TEX.", "Tex.", "tex.", "texan", "texas", "text", "textbook", "textbooks", "textile", "textiles", "texts", "textual", "texture", "textured", "th", "thaddaeus", "thai", "Thailand", "thailand", "thalamencephala", "thalamencephalon", "thalami", "thalamocortical", "thalamus", "thalassaemia", "thalassemia", "thalassic", "thalidomide", "thalidone", "thalli", "thallium", "thalloid", "thallophyte", "thallophytic", "thallus", "thalmencephalon", "thalweg", "thammuz", "than", "thanatology", "thanatophobia", "thanatopsis", "thane", "thaneship", "thank", "thanked", "thankful", "thankfully", "thankfulness", "thanking", "thankless", "Thanks", "thanks", "THAT", "That", "that", "THAT'D", "That'd", "that'd", "THAT'LL", "That'll", "that'll", "THAT'RE", "That're", "that're", "THAT'S", "That's", "that's", "thatch", "thatcher", "thatching", "THATD", "Thatd", "thatd", "THATLL", "Thatll", "thatll", "THATRE", "Thatre", "thatre", "THATS", "Thats", "thats", "THAT\u2019D", "That\u2019d", "that\u2019d", "THAT\u2019LL", "That\u2019ll", "that\u2019ll", "THAT\u2019RE", "That\u2019re", "that\u2019re", "THAT\u2019S", "That\u2019s", "that\u2019s", "thaumatolatry", "thaumaturge", "thaumaturgist", "thaumaturgy", "thaw", "thawed", "thawing", "thaws", "thb", "thc", "thd", "THE", "The", "the", "theanthropism", "theater", "theatergoer", "theatergoers", "theaters", "theatre", "theatregoer", "theatregoers", "theatres", "theatrical", "theatricality", "theatrically", "theban", "thebe", "theca", "thecae", "thecodont", "theelin", "theft", "theia", "Their", "their", "theirs", "theism", "theist", "theistic", "theistical", "thelarche", "them", "thematic", "thematically", "theme", "themed", "themes", "themself", "themselves", "Then", "then", "thenal", "thenar", "thence", "thenceforth", "theobid", "theocracy", "theocratic", "theodicy", "theodolite", "theogony", "theologian", "theological", "theologically", "theologise", "theologiser", "theologises", "theologist", "theologize", "theologizer", "theologizes", "theology", "theophany", "theophylline", "theorem", "theoretic", "theoretical", "theoretically", "theoretician", "theories", "theorisation", "theorise", "theorised", "theoriser", "theorises", "theorising", "theorist", "theorists", "theorization", "theorize", "theorized", "theorizer", "theorizes", "theorizing", "theory", "theosophical", "theosophism", "theosophist", "theosophy", "theoterrorism", "therapeutic", "therapeutical", "therapeutically", "therapies", "therapist", "therapists", "therapsid", "therapy", "THERE", "There", "there", "THERE'D", "There'd", "there'd", "THERE'LL", "There'll", "there'll", "THERE'RE", "There're", "there're", "THERE'S", "There's", "there's", "thereabout", "thereabouts", "thereafter", "THEREARE", "Thereare", "thereare", "thereby", "THERED", "Thered", "thered", "therefor", "Therefore", "therefore", "therefrom", "therein", "thereinafter", "THERELL", "Therell", "therell", "theremin", "thereness", "thereof", "thereon", "THERES", "Theres", "theres", "theresa", "thereto", "theretofore", "therewith", "therewithal", "THERE\u2019D", "There\u2019d", "there\u2019d", "THERE\u2019LL", "There\u2019ll", "there\u2019ll", "THERE\u2019RE", "There\u2019re", "there\u2019re", "THERE\u2019S", "There\u2019s", "there\u2019s", "theridiid", "therm", "thermal", "thermalgesia", "thermally", "thermel", "thermic", "thermion", "thermionic", "thermionics", "thermistor", "thermoacidophile", "thermocautery", "thermochemistry", "thermocoagulation", "thermocouple", "thermodynamic", "thermodynamical", "thermodynamically", "thermodynamics", "thermoelectric", "thermoelectrical", "thermoelectricity", "thermogram", "thermograph", "thermography", "thermogravimeter", "thermogravimetric", "thermogravimetry", "thermohydrometer", "thermohydrometric", "thermojunction", "thermolabile", "thermometer", "thermometric", "thermometrograph", "thermometry", "thermonuclear", "thermopile", "thermoplastic", "thermoreceptor", "thermoregulator", "thermos", "thermoset", "thermosetting", "thermosphere", "thermostat", "thermostatic", "thermostatically", "thermostatics", "thermotherapy", "thermotropism", "theropod", "therses", "thesauri", "thesaurus", "THESE", "These", "these", "THESE'RE", "These're", "these're", "THESERE", "Thesere", "thesere", "theses", "THESE\u2019RE", "These\u2019re", "these\u2019re", "thesis", "thespian", "thessalonica", "thessaly", "theta", "theurgy", "THEY", "They", "they", "THEY'D", "They'd", "they'd", "THEY'LL", "They'll", "they'll", "THEY'LL'VE", "They'll've", "they'll've", "THEY'RE", "They're", "they're", "THEY'VE", "They've", "they've", "THEYLL", "Theyll", "theyll", "THEYRE", "Theyre", "theyre", "THEYVE", "Theyve", "theyve", "THEY\u2019D", "They\u2019d", "they\u2019d", "THEY\u2019LL", "They\u2019ll", "they\u2019ll", "THEY\u2019LL\u2019VE", "They\u2019ll\u2019ve", "they\u2019ll\u2019ve", "THEY\u2019RE", "They\u2019re", "they\u2019re", "THEY\u2019VE", "They\u2019ve", "they\u2019ve", "thiabendazole", "thiamin", "thiamine", "thiazide", "thiazine", "thibet", "thick", "thicken", "thickened", "thickener", "thickening", "thickens", "thicker", "thicket", "thickhead", "thickheaded", "thickleaf", "thickleaves", "thickly", "thickness", "thickset", "thickspread", "thief", "thieve", "thievery", "thieves", "thieving", "thievish", "thievishly", "thievishness", "thigh", "thighbone", "thighs", "thill", "thimble", "thimbleberry", "thimbleful", "thimblerig", "thimbleweed", "thimerosal", "thin", "thing", "thingamabob", "thingamajig", "thingmabob", "thingmajig", "things", "thingumabob", "thingumajig", "thingummy", "think", "thinkable", "thinker", "thinkers", "thinking", "thinks", "thinly", "thinned", "thinner", "thinness", "thinnest", "thinning", "thins", "thiobacillus", "thiobacteria", "thiocyanate", "thiodiphenylamine", "thioguanine", "thiopental", "thioridazine", "thiotepa", "thiothixene", "thiouracil", "third", "thirdhand", "thirdly", "thirds", "thirst", "thirster", "thirstier", "thirstiest", "thirstily", "thirstiness", "thirsting", "thirsty", "thirteen", "thirteenth", "thirties", "thirtieth", "thirty", "thiry", "THIS", "This", "this", "THIS'S", "This's", "this's", "THISS", "Thiss", "thiss", "thistle", "thistledown", "thistlelike", "THIS\u2019S", "This\u2019s", "this\u2019s", "thither", "thm", "thnx", "tho", "thole", "tholepin", "tholoi", "tholos", "thong", "thoracentesis", "thoraces", "thoracic", "thoracocentesis", "thoracotomy", "thorax", "thorazine", "thoreauvian", "thoriate", "thoriated", "thorite", "thorium", "thorn", "thornbill", "thornier", "thorniest", "thorniness", "thornless", "thorny", "thorough", "thoroughbred", "thoroughfare", "thoroughgoing", "thoroughly", "thoroughness", "thoroughwort", "thortveitite", "THOSE", "Those", "those", "THOSE'RE", "Those're", "those're", "THOSERE", "Thosere", "thosere", "THOSE\u2019RE", "Those\u2019re", "those\u2019re", "thou", "Though", "though", "thought", "thoughtful", "thoughtfully", "thoughtfulness", "thoughtless", "thoughtlessly", "thoughtlessness", "thoughts", "thousand", "thousands", "thousandth", "thracian", "thraldom", "thrall", "thralldom", "thrash", "thrashed", "thrasher", "thrashes", "thrashing", "thread", "threadbare", "threaded", "threader", "threadfin", "threadfish", "threadier", "threadiest", "threading", "threadlike", "threads", "threadworm", "thready", "threat", "threaten", "threatened", "threatening", "threateningly", "threatens", "threats", "three", "threefold", "threepence", "threepenny", "threescore", "threesome", "threnody", "threonine", "thresh", "thresher", "threshes", "threshing", "threshold", "thresholds", "threw", "thrice", "thrift", "thriftier", "thriftiest", "thriftily", "thriftiness", "thriftless", "thriftlessly", "thriftlessness", "thriftshop", "thrifty", "thrill", "thrilled", "thriller", "thrillful", "thrilling", "thrills", "thrip", "thripid", "thrive", "thrived", "thrives", "thriving", "throat", "throated", "throatier", "throatiest", "throats", "throatwort", "throaty", "throb", "throbbed", "throbbing", "throbs", "throe", "throes", "thrombasthenia", "thrombectomy", "thrombi", "thrombin", "thrombocyte", "thrombocytopenia", "thrombocytosis", "thromboembolism", "thrombokinase", "thrombolysis", "thrombolytic", "thrombopenia", "thrombophlebitis", "thromboplastin", "thrombose", "thrombosed", "thromboses", "thrombosis", "thrombus", "throne", "throng", "thronged", "thronging", "throstle", "throttle", "throttlehold", "throttler", "throttling", "through", "throughout", "throughput", "throughway", "throw", "throwaway", "throwback", "thrower", "throwing", "thrown", "throws", "throwster", "thru", "thrum", "thrummed", "thrumming", "thrush", "thrust", "thruster", "thrusting", "thrusts", "thruway", "thu", "THU.", "Thu.", "thu.", "thud", "thudded", "thudding", "thuds", "thug", "thuggee", "thuggery", "thugs", "thulium", "thumb", "thumbed", "thumbhole", "thumbing", "thumbnail", "thumbnut", "thumbprint", "thumbs", "thumbscrew", "thumbstall", "thumbtack", "thump", "thumping", "thumps", "thunder", "thunderbird", "thunderbolt", "thunderclap", "thundercloud", "thundered", "thunderer", "thunderhead", "thundering", "thunderous", "thunders", "thundershower", "thunderstorm", "thunderstorms", "thunderstruck", "thundery", "thunk", "thurible", "thurifer", "thurifies", "thurify", "thursday", "Thus", "thus", "thusly", "thwack", "thwacking", "thwacks", "thwart", "thwarted", "thwarter", "thwarting", "thwarts", "thwartwise", "thx", "thylacine", "thyme", "thymelaeales", "thymi", "thymidine", "thymine", "thymol", "thymosin", "thymus", "thyreophoran", "thyrocalcitonin", "thyroglobulin", "thyroid", "thyroidal", "thyroidectomy", "thyroiditis", "thyromegaly", "thyronine", "thyroprotein", "thyrotoxic", "thyrotoxicosis", "thyrotrophin", "thyrotropin", "thyroxin", "thyroxine", "thyrse", "thyrsi", "thyrsopteris", "thyrsus", "thysanopter", "thysanopteron", "thysanuron", "thz", "tia", "tiara", "tib", "tibetan", "tibia", "tibiae", "tibial", "tibialis", "tibit", "tibur", "tic", "tical", "tichodrome", "tick", "ticked", "ticker", "ticket", "ticketed", "ticketing", "tickets", "ticking", "tickle", "tickler", "tickles", "tickling", "ticklish", "ticks", "tickseed", "ticktack", "ticktacktoe", "ticktacktoo", "ticktock", "tickweed", "ticonderoga", "tictac", "tidal", "tidbit", "tidbits", "tiddler", "tiddly", "tiddlywinks", "tide", "tideland", "tidemark", "tides", "tideway", "tidied", "tidier", "tidies", "tidiest", "tidily", "tidiness", "tidings", "tidy", "tidying", "tidytips", "tie", "tieback", "tiebreaker", "tied", "tieing", "tientsin", "tiepin", "tier", "tierce", "tiercel", "tiered", "tiers", "ties", "tiff", "tiffin", "tiflis", "tiger", "tigerish", "tigers", "tight", "tighten", "tightened", "tightening", "tightens", "tighter", "tightfisted", "tightfistedness", "tightfitting", "tightlipped", "tightly", "tightness", "tightrope", "tights", "tightwad", "tiglon", "tigon", "tigress", "tike", "tilde", "tile", "tiled", "tilefish", "tilefishes", "tiler", "tiles", "tiling", "Till", "till", "tillable", "tillage", "tilled", "tiller", "tilling", "tilt", "tilted", "tilter", "tilth", "tilting", "tilts", "tiltyard", "Tim", "timbale", "timber", "timbered", "timberland", "timberline", "timberman", "timbre", "timbrel", "time", "timecard", "timed", "timekeeper", "timekeeping", "timeless", "timelessness", "timelier", "timeliest", "timeline", "timeliness", "timely", "timepiece", "timer", "times", "timeserver", "timeserving", "timetable", "timework", "timeworn", "timid", "timidity", "timidly", "timidness", "timing", "timolol", "Timor", "timor", "timorese", "timorous", "timorously", "timorousness", "timpani", "timpanist", "timucu", "timur", "tin", "tinamou", "tinct", "tincture", "tindal", "tindale", "tinder", "tinderbox", "tine", "tined", "tineid", "tineoid", "tinfoil", "ting", "tinge", "tinged", "tingle", "tingles", "tingling", "tinier", "tiniest", "tininess", "tink", "tinker", "tinkered", "tinkerer", "tinkering", "tinkers", "tinkle", "tinkles", "tinkling", "tinkly", "tinned", "tinner", "tinnier", "tinniest", "tinning", "tinnitus", "tinny", "tinplate", "tinpot", "tinsel", "tinseled", "tinselled", "tinselling", "tinselly", "tinsmith", "tinsnips", "tint", "tintack", "tinter", "tinting", "tintinnabula", "tintinnabulate", "tintinnabulation", "tintinnabulum", "tintometer", "tinware", "tiny", "tip", "tipi", "tipped", "tipper", "tippet", "tipping", "tipple", "tippler", "tipples", "tippy", "tippytoe", "tips", "tipsier", "tipsiest", "tipsiness", "tipstaff", "tipster", "tipsy", "tiptoe", "tiptoed", "tiptoeing", "tiptop", "tipu", "tirade", "tiramisu", "tire", "tired", "tiredly", "tiredness", "tireless", "tirelessly", "tirelessness", "tires", "tiresome", "tiresomely", "tiresomeness", "tiring", "tiro", "tirol", "tirolean", "tisane", "tissue", "tissues", "tit", "titanic", "titanium", "titanosaur", "titanosaurian", "titbit", "titer", "titers", "titfer", "tithe", "tither", "tithing", "tithonia", "titi", "titillate", "titillated", "titillates", "titillating", "titillation", "titivate", "titivates", "titivation", "titlark", "title", "titled", "titles", "titling", "titmice", "titmouse", "titrate", "titrates", "titrating", "titration", "titrator", "titre", "tits", "titter", "titterer", "tittering", "titters", "tittivate", "tittivates", "tittivation", "tittle", "tittup", "tittupped", "tittupping", "titty", "titular", "titulary", "tiyin", "tizzy", "tko", "tlc", "tm", "tmv", "tnf", "tnite", "tnt", "tnx", "To", "to", "toad", "toadfish", "toadfishes", "toadflax", "toadied", "toadies", "toadshade", "toadstool", "toady", "toadying", "toadyish", "toast", "toasted", "toaster", "toasting", "toastmaster", "toastrack", "tobacco", "tobaccoes", "tobacconist", "Tobago", "tobago", "tobagonian", "toboggan", "tobogganing", "tobogganist", "tobramycin", "toby", "tocainide", "toccata", "tocktact", "tocology", "tocopherol", "tocsin", "tod", "Today", "today", "toddle", "toddler", "toddlers", "toddles", "toddling", "toddy", "todo", "todos", "tody", "toe", "toea", "toecap", "toed", "toehold", "toeing", "toeless", "toenail", "toes", "toetoe", "toff", "toffee", "toffy", "tofranil", "tofu", "tog", "toga", "together", "togetherness", "togged", "togging", "toggle", "toggles", "Togo", "togo", "togolese", "togs", "toil", "toiled", "toiler", "toilet", "toiletry", "toilets", "toilette", "toiling", "toilsome", "toilsomeness", "toitoi", "tokamak", "tokay", "toke", "token", "tokenish", "tokens", "tokio", "tolazamide", "tolazoline", "tolbooth", "tolbukhin", "tolbutamide", "told", "tole", "tolectin", "tolerable", "tolerably", "tolerance", "tolerant", "tolerantly", "tolerate", "tolerates", "tolerating", "toleration", "tolinase", "toll", "tollbar", "tollbooth", "toller", "tollgate", "tollgatherer", "tollhouse", "tolling", "tollkeeper", "tollman", "tollon", "tolls", "tolu", "toluene", "tom", "tomahawk", "tomalley", "tomatillo", "tomato", "tomatoes", "tomb", "tombac", "tombak", "tombola", "tomboy", "tomboyish", "tomboyishness", "tombs", "tombstone", "tomcat", "Tome", "tome", "tomenta", "tomentose", "tomentous", "tomentum", "tomfool", "tomfoolery", "tommyrot", "tomograph", "tomography", "tomorrow", "tompion", "tomtate", "tomtit", "Tom\xE9", "tom\xE9", "ton", "tonal", "tonality", "tondi", "tondo", "tone", "toned", "toneless", "tonelessly", "toner", "tones", "tongan", "tongs", "tongue", "tongued", "tonguefish", "tongueflower", "tongueless", "tonguelike", "tongues", "tonguing", "tonic", "tonicity", "tonier", "toniest", "tonight", "toning", "tonnage", "tonne", "tonneau", "tonneaux", "tonnes", "tonocard", "tonometer", "tonometry", "tons", "tonsil", "tonsilla", "tonsillectomy", "tonsillitis", "tonsorial", "tonsure", "tonsured", "tontine", "tonus", "tony", "too", "took", "tool", "toolbox", "toolhouse", "toolmaker", "tools", "toolshed", "toon", "tooshie", "toot", "tooted", "tooth", "toothache", "toothbrush", "toothed", "toothier", "toothiest", "toothless", "toothlike", "toothpaste", "toothpick", "toothpowder", "toothsome", "toothsomeness", "toothwort", "toothy", "tooting", "tootle", "tootling", "top", "topaz", "topcoat", "topdress", "tope", "topee", "toper", "topgallant", "tophi", "tophus", "topi", "topiary", "topic", "topical", "topicality", "topicalization", "topicalize", "topicalizes", "topically", "topics", "topknot", "topknotted", "topless", "topmast", "topminnow", "topmost", "topnotch", "topognosia", "topognosis", "topographic", "topographical", "topographically", "topography", "topoi", "topolatry", "topologic", "topological", "topologically", "topologies", "topology", "toponomy", "toponym", "toponymy", "topos", "topped", "topper", "topping", "toppingly", "topple", "toppled", "topples", "toppling", "tops", "topsail", "topside", "topsoil", "topspin", "topv", "toque", "tor", "toradol", "torch", "torchbearer", "torched", "torching", "torchlight", "tore", "toreador", "torero", "tori", "torino", "torment", "tormented", "tormenter", "tormenting", "tormentor", "torments", "torn", "tornado", "tornadoes", "tornillo", "torodal", "toroid", "toroidal", "torpedo", "torpedoed", "torpedoes", "torpedoing", "torpid", "torpidity", "torpidly", "torpidness", "torpor", "torque", "torr", "torrefied", "torrefies", "torrefy", "torrent", "torrential", "torrid", "torridity", "torsi", "torsion", "torsk", "torso", "tort", "torte", "tortellini", "tortfeasor", "torticollis", "tortilla", "tortillas", "tortious", "tortoise", "tortoiseshell", "tortricid", "tortrix", "tortuosity", "tortuous", "tortuously", "tortuousness", "torture", "tortured", "torturer", "tortures", "torturesome", "torturing", "torturous", "torturously", "torulose", "torus", "toscana", "tosh", "toss", "tossed", "tosser", "tosses", "tossing", "tossup", "tostada", "tot", "total", "totaled", "totaling", "totalisator", "totalise", "totaliser", "totalises", "totalism", "totalistic", "totalitarian", "totalitarianism", "totality", "totalizator", "totalize", "totalizer", "totalizes", "totalled", "totalling", "totally", "totals", "totara", "tote", "toted", "totem", "totemic", "totemism", "totemist", "toter", "TOTHER", "Tother", "tother", "toting", "totipotence", "totipotency", "totipotent", "totted", "totter", "totterer", "tottering", "totters", "tottery", "totting", "toucan", "toucanet", "touch", "touchable", "touchback", "touchdown", "touchdowns", "touched", "toucher", "touches", "touchier", "touchiest", "touchily", "touchiness", "touching", "touchingly", "touchline", "touchscreen", "touchstone", "touchwood", "touchy", "tough", "toughen", "toughened", "toughening", "toughens", "tougher", "toughest", "toughie", "toughly", "toughness", "toupe", "toupee", "toupeed", "tour", "touraco", "touracos", "toured", "tourer", "touring", "tourism", "tourist", "touristed", "touristry", "tourists", "touristy", "tourmaline", "tournament", "tournaments", "tournedos", "tourney", "tourniquet", "tours", "tourtiere", "tousle", "tousled", "tout", "touted", "touter", "touting", "touts", "tovarich", "tovarisch", "tow", "towage", "toward", "towards", "towboat", "towel", "toweled", "toweling", "towelled", "towelling", "towels", "tower", "towering", "towers", "towhead", "towheaded", "towhee", "towing", "towline", "town", "townee", "towner", "townie", "towns", "townsfolk", "township", "townsman", "townspeople", "towny", "towpath", "towrope", "tows", "toxaemia", "toxemia", "toxic", "toxicant", "toxicants", "toxicity", "toxicognath", "toxicologic", "toxicological", "toxicologist", "toxicology", "toxin", "toxins", "toxoid", "toxoplasmosis", "toy", "toying", "toyon", "toys", "toyshop", "tpn", "trabeate", "trabeated", "trabecula", "trabeculae", "trabecular", "trabeculate", "trablous", "trace", "traceable", "traced", "tracer", "tracery", "traces", "trachea", "tracheae", "tracheal", "tracheid", "tracheitis", "tracheobronchitis", "tracheophyte", "tracheostomy", "tracheotomy", "trachodon", "trachodont", "trachoma", "tracing", "track", "trackable", "trackball", "tracked", "tracker", "tracking", "tracklayer", "trackless", "tracks", "tract", "tractability", "tractable", "tractableness", "tractile", "traction", "tractive", "tractor", "tracts", "trad", "trade", "tradecraft", "traded", "trademark", "trademarked", "tradeoff", "trader", "traders", "trades", "tradesman", "tradespeople", "Trading", "trading", "tradition", "traditional", "traditionalism", "traditionalist", "traditionalistic", "traditionality", "traditionally", "traditions", "traditor", "traditores", "traduce", "traduced", "traducement", "traducer", "traffic", "trafficator", "trafficked", "trafficker", "traffickers", "trafficking", "tragacanth", "tragedian", "tragedienne", "tragedies", "tragedy", "tragi", "tragic", "tragical", "tragically", "tragicomedy", "tragicomic", "tragicomical", "tragopan", "tragus", "trail", "trailblazer", "trailed", "trailer", "trailers", "trailhead", "trailing", "trails", "train", "trainband", "trainbandsman", "trainbearer", "trained", "trainee", "trainees", "traineeship", "trainer", "trainers", "training", "trainload", "trainman", "trainmaster", "trains", "traipse", "traipsing", "trait", "traitor", "traitorous", "traitorously", "traitorousness", "traitress", "traits", "trajectory", "tralatitious", "tram", "tramcar", "trameled", "trameles", "trameling", "tramelled", "tramelling", "tramline", "trammed", "trammel", "tramming", "tramontana", "tramontane", "tramp", "tramper", "tramping", "trample", "trampled", "trampler", "tramples", "trampling", "trampoline", "tramway", "trance", "trancelike", "tranche", "trandate", "trandolapril", "tranquil", "tranquilising", "tranquility", "tranquilize", "tranquilized", "tranquilizer", "tranquilizers", "tranquilizes", "tranquilizing", "tranquillise", "tranquillised", "tranquilliser", "tranquillisers", "tranquillises", "tranquillising", "tranquillity", "tranquillize", "tranquillized", "tranquillizer", "tranquillizers", "tranquillizes", "tranquillizing", "tranquilly", "transact", "transacting", "transactinide", "transaction", "transactions", "transactor", "transacts", "transalpine", "transaminase", "transaminate", "transaminates", "transamination", "transatlantic", "transcend", "transcendence", "transcendency", "transcendent", "transcendental", "transcendentalism", "transcendentalist", "transcendentally", "transcending", "transcends", "transcontinental", "transcribe", "transcribed", "transcriber", "transcribes", "transcribing", "transcript", "transcriptase", "transcription", "transcripts", "transcultural", "transcutaneous", "transdermal", "transdermic", "transduce", "transducer", "transduces", "transducing", "transduction", "transect", "transecting", "transects", "transept", "transeunt", "transexual", "transfer", "transferability", "transferable", "transferase", "transferee", "transference", "transferer", "transferor", "transferrable", "transferral", "transferred", "transferrer", "transferrin", "transferring", "transfers", "transfigure", "transfiguring", "transfix", "transfixed", "transfixing", "transform", "transformable", "transformation", "transformations", "transformed", "transformer", "transforming", "transforms", "transfuse", "transfuses", "transfusion", "transfusions", "transgender", "transgendered", "transgene", "transgenes", "transgress", "transgressed", "transgresses", "transgressing", "transgression", "transgressor", "tranship", "transhipped", "transhipping", "tranships", "transience", "transiency", "transient", "transiently", "transistor", "transistorise", "transistorised", "transistorises", "transistorize", "transistorized", "transistorizes", "transit", "transiting", "transition", "transitional", "transitionally", "transitioning", "transitions", "transitive", "transitively", "transitiveness", "transitivise", "transitivises", "transitivity", "transitivize", "transitivizes", "transitorily", "transitoriness", "transitory", "transits", "translatable", "translate", "translated", "translates", "translating", "translation", "translational", "translations", "translator", "translators", "transliterate", "transliterates", "transliterating", "transliteration", "translocate", "translocates", "translocation", "translucence", "translucency", "translucent", "translunar", "translunary", "transmigrante", "transmigrate", "transmigrates", "transmigration", "transmissible", "transmission", "transmissions", "transmit", "transmits", "transmittable", "transmittal", "transmittance", "transmitted", "transmitter", "transmitting", "transmogrification", "transmogrified", "transmogrifies", "transmogrify", "transmogrifying", "transmontane", "transmundane", "transmutability", "transmutable", "transmutation", "transmute", "transmutes", "transmuting", "transnational", "transoceanic", "transom", "transonic", "transparence", "transparency", "transparent", "transparently", "transparentness", "transpirate", "transpirates", "transpiration", "transpire", "transpires", "transpiring", "transplacental", "transplant", "transplantable", "transplantation", "transplanted", "transplanter", "transplanting", "transplants", "transpolar", "transponder", "transport", "transportable", "transportation", "transported", "transporter", "transporters", "transporting", "transports", "transposability", "transposable", "transpose", "transposed", "transposes", "transposing", "transposition", "transposon", "transposons", "transsexual", "transsexualism", "transship", "transshipment", "transshipped", "transshipping", "transships", "transubstantiate", "transubstantiation", "transudate", "transudation", "transude", "transuranic", "transversal", "transversally", "transverse", "transversely", "transvestic", "transvestism", "transvestite", "transvestitism", "tranylcypromine", "trap", "trapan", "trapanned", "trapanning", "trapeze", "trapezia", "trapezium", "trapezius", "trapezohedra", "trapezohedron", "trapezoid", "trapezoidal", "trapped", "trapper", "trapping", "trappings", "traps", "trapshooter", "trapshooting", "trash", "trashes", "trashier", "trashiest", "trashiness", "trashing", "trashy", "trauma", "traumata", "traumatic", "traumatise", "traumatised", "traumatises", "traumatising", "traumatize", "traumatized", "traumatizes", "traumatizing", "traumatology", "traumatophobia", "travail", "travails", "trave", "travel", "travelable", "traveled", "traveler", "travelers", "traveling", "travelled", "traveller", "travellers", "travelling", "travelog", "travelogs", "travelogue", "travelogues", "travels", "traversable", "traversal", "traverse", "traverser", "traverses", "traversing", "travestied", "travesty", "travestying", "trawl", "trawler", "trawling", "tray", "trays", "trazodone", "treacherous", "treacherously", "treachery", "treacle", "treacly", "tread", "treading", "treadle", "treadmill", "treads", "treadwheel", "treason", "treasonable", "treasonably", "treasonist", "treasonous", "treasure", "treasured", "treasurer", "treasurership", "treasures", "treasuring", "treasury", "treat", "treated", "treater", "treaties", "treating", "treatise", "treatment", "treatments", "treats", "treaty", "treble", "trebled", "trebling", "trebuchet", "trebucket", "tree", "treed", "treehopper", "treeing", "treeless", "treelet", "treelike", "treenail", "trees", "treetop", "tref", "trefoil", "treillage", "trek", "trekked", "trekker", "trekking", "trellis", "trellising", "trematode", "tremble", "trembler", "trembles", "trembling", "tremendous", "tremendously", "tremolite", "tremolo", "tremor", "tremors", "tremulous", "tremulously", "trenail", "trench", "trenchancy", "trenchant", "trenchantly", "trencher", "trencherman", "trenching", "trend", "trendier", "trendiest", "trending", "trends", "trendsetting", "trendy", "trental", "trepan", "trepang", "trepanned", "trepanning", "trephination", "trephine", "trephritidae", "trepid", "trepidation", "trepidly", "treponema", "treponemata", "trespass", "trespasser", "trespasses", "trespassing", "tress", "trestle", "trestlework", "trews", "trey", "trf", "trh", "triacetate", "triad", "triage", "trial", "trialed", "trialing", "trialled", "trialling", "trials", "triamcinolone", "triangle", "triangular", "triangularity", "triangulate", "triangulates", "triangulating", "triangulation", "triassic", "triavil", "triazine", "triazolam", "tribade", "tribadism", "tribadistic", "tribal", "tribalisation", "tribalism", "tribalization", "tribe", "tribes", "tribesman", "tribologist", "tribology", "tribromoethanol", "tribromomethane", "tribulate", "tribulates", "tribulation", "tribunal", "tribune", "tribuneship", "tributary", "tribute", "tributyrin", "trice", "tricentenary", "tricentennial", "triceps", "triceratops", "trichina", "trichinae", "trichiniasis", "trichinosis", "trichion", "trichloride", "trichlormethiazide", "trichloroethane", "trichloroethylene", "trichloromethane", "trichobezoar", "trichodesmium", "trichomonad", "trichomoniasis", "trichopteran", "trichopteron", "trichotillomania", "trichotomy", "trichroism", "trichromacy", "trichromatic", "trichrome", "trichuriasis", "trick", "tricked", "tricker", "trickery", "trickier", "trickiest", "trickily", "trickiness", "tricking", "trickle", "trickles", "trickling", "tricks", "tricksier", "tricksiest", "trickster", "tricksy", "tricky", "triclinia", "triclinic", "triclinium", "tricolor", "tricolors", "tricolour", "tricolours", "tricorn", "tricorne", "tricot", "tricuspid", "tricuspidate", "tricycle", "tricyclic", "trident", "tridymite", "tried", "triennia", "triennial", "triennium", "trier", "tries", "trifid", "trifle", "trifler", "trifling", "trifluoromethane", "trifoliata", "trifoliate", "trifoliated", "trifoliolate", "triforia", "triforium", "trifurcate", "trifurcation", "trig", "trigeminal", "trigeminus", "trigged", "trigger", "triggered", "triggerfish", "triggerfishes", "triggering", "triggerman", "triggers", "trigging", "triglyceride", "triglycerides", "trigon", "trigonal", "trigonometric", "trigonometrician", "trigonometry", "trigram", "trihedra", "trihedron", "trihydroxy", "triiodomethane", "triiodothyronine", "trike", "trilateral", "trilingual", "trill", "trilled", "trilling", "trillion", "trillions", "trillionth", "trillium", "trilobate", "trilobated", "trilobed", "trilobite", "trilogy", "trim", "trimaran", "trimer", "trimester", "trimipramine", "trimly", "trimmed", "trimmer", "trimmest", "trimming", "trimness", "trimotored", "trimox", "trims", "trine", "Trinidad", "trinidad", "trinidadian", "trinitroglycerin", "trinitrotoluene", "trinket", "trinketry", "trinuclear", "trinucleate", "trinucleated", "trio", "triode", "triolein", "triose", "trioxide", "trip", "tripalmitin", "tripartite", "tripe", "triphammer", "triphosphopyridine", "tripinnate", "tripinnated", "tripinnatifid", "triple", "tripled", "triples", "triplet", "tripletail", "triplex", "triplicate", "triplicates", "triplicity", "tripling", "triploid", "tripod", "tripoli", "tripos", "tripped", "tripper", "tripping", "trippingly", "trips", "triptych", "triquetral", "trireme", "trisaccharide", "trisect", "trisects", "triskaidekaphobia", "triskaidekaphobic", "triskele", "triskelia", "triskelion", "trismus", "trisoctahedra", "trisoctahedron", "trisomy", "tristearin", "tristram", "trisyllable", "tritanopia", "tritanopic", "trite", "tritely", "triteness", "tritheism", "tritheist", "tritium", "tritoma", "triumph", "triumphal", "triumphant", "triumphantly", "triumphed", "triumphing", "triumphs", "triumvir", "triumvirate", "triumviri", "triune", "trivalent", "trivet", "trivia", "trivial", "trivialise", "trivialised", "trivialises", "trivialising", "triviality", "trivialize", "trivialized", "trivializes", "trivializing", "trivially", "trivium", "trm", "trna", "troat", "trochaic", "trochanter", "troche", "trochee", "trochlea", "trochleae", "trochlear", "trochlearis", "trog", "trogged", "trogging", "troglodyte", "trogon", "troika", "trojan", "troll", "troller", "trolley", "trolleybus", "trolling", "trollop", "trombiculiasis", "trombiculid", "trombidiid", "trombone", "trombonist", "trompillo", "troop", "trooper", "troopers", "troops", "troopship", "tropaeola", "tropaeolum", "trope", "trophic", "trophobiosis", "trophoblast", "trophoblastic", "trophotropic", "trophotropism", "trophozoite", "trophy", "tropic", "tropical", "tropically", "tropicbird", "tropism", "troponomy", "troponym", "troponymy", "tropopause", "troposphere", "trot", "troth", "trotline", "trots", "trotskyist", "trotted", "trotter", "trotting", "troubadour", "trouble", "troubled", "troublemaker", "troubler", "troubles", "troubleshoot", "troubleshooter", "troubleshooting", "troubleshoots", "troublesome", "troublesomeness", "troubling", "troublous", "trough", "trounce", "trounces", "trouncing", "troupe", "trouper", "trouser", "trousered", "trousering", "trousers", "trousseau", "trousseaux", "trout", "trove", "trowel", "trowelled", "trowelling", "truancy", "truant", "truce", "truck", "truckage", "trucker", "trucking", "truckle", "truckler", "truckling", "trucks", "truculence", "truculency", "truculent", "truculently", "trudge", "trudger", "trudges", "trudging", "true", "truehearted", "truelove", "trueness", "truer", "truest", "truffle", "truism", "truly", "trump", "trumpery", "trumpet", "trumpeter", "trumpetfish", "trumpeting", "trumpets", "trumpetwood", "trumping", "trumps", "truncate", "truncated", "truncates", "truncating", "truncation", "truncheon", "trundle", "trunk", "trunkfish", "trunkfishes", "trunks", "trunnel", "truss", "trussed", "trust", "trustbuster", "trusted", "trustee", "trustees", "trusteeship", "truster", "trustful", "trustfully", "trustfulness", "trustier", "trustiest", "trustiness", "trusting", "trustingly", "trustingness", "trustor", "trusts", "trustworthiness", "trustworthy", "trusty", "truth", "truthful", "truthfully", "truthfulness", "truths", "try", "trying", "tryma", "trymata", "tryout", "trypsin", "trypsinogen", "tryptophan", "tryptophane", "tryst", "tsa", "tsar", "tsarina", "tsarist", "tsaristic", "tsaritsa", "tsaritsyn", "tsatske", "tsetse", "tsh", "tshatshke", "tshiluba", "tsine", "tsk", "tsoris", "TSP.", "Tsp.", "tsp.", "tss", "tsunami", "tsuris", "tuatara", "tub", "tuba", "tubae", "tubal", "tubbier", "tubbiest", "tubbiness", "tubby", "tube", "tubed", "tubeless", "tubelike", "tuber", "tubercle", "tubercular", "tuberculate", "tuberculin", "tuberculoid", "tuberculosis", "tuberculous", "tuberose", "tuberosity", "tuberous", "tubes", "tubful", "tubing", "tubocurarine", "tubular", "tubule", "tuck", "tuckahoe", "tucked", "tucker", "tucket", "tucking", "tucks", "tudor", "tudung", "tue", "TUE.", "Tue.", "tue.", "tuesday", "tufa", "tuff", "tuffet", "tuft", "tufted", "tug", "tugboat", "tugged", "tugger", "tugging", "tughrik", "tugrik", "tuille", "tuition", "tularaemia", "tularemia", "tulestoma", "tulip", "tulipwood", "tulle", "tully", "tulostomataceae", "tum", "tumble", "tumblebug", "tumbled", "tumbler", "tumbles", "tumbleweed", "tumbling", "tumbrel", "tumbril", "tumefaction", "tumefied", "tumefies", "tumefy", "tumesce", "tumescence", "tumescent", "tumid", "tumidity", "tumidness", "tummy", "tumor", "tumors", "tumour", "tumours", "tumult", "tumultuous", "tumultuously", "tumultuousness", "tumulus", "tun", "tuna", "tunaburger", "tundra", "tune", "tuned", "tuneful", "tunefully", "tunefulness", "tuneless", "tunelessly", "tuner", "tunes", "tung", "tungstate", "tungsten", "tunguska", "tunguz", "tunic", "tunica", "tunicata", "tunicate", "tuning", "Tunisia", "tunisia", "tunisian", "tunker", "tunnage", "tunned", "tunnel", "tunneled", "tunneling", "tunnelled", "tunnelling", "tunnels", "tunning", "tunny", "tup", "tupek", "tupik", "tupped", "tuppence", "tuppeny", "tupping", "turaco", "turacou", "turakoo", "turban", "turbaned", "turbatrix", "turbid", "turbidity", "turbidness", "turbinal", "turbinate", "turbine", "turbines", "turbofan", "turbogenerator", "turbojet", "turboprop", "turbot", "turbulence", "turbulency", "turbulent", "turbulently", "turcoman", "turd", "tureen", "turf", "turfier", "turfiest", "turfing", "turfy", "turgid", "turgidity", "turgidly", "turgidness", "turgor", "turkestan", "Turkey", "turkey", "turkeys", "turkic", "turkish", "turkmen", "turkmenia", "Turkmenistan", "turkmenistan", "turkomen", "turmeric", "turmoil", "turn", "turnabout", "turnaround", "turnbuckle", "turncoat", "turncock", "turndown", "turned", "turner", "turnery", "turning", "turnip", "turnkey", "turnoff", "turnout", "turnover", "turnpike", "turnround", "turns", "turnspit", "turnstile", "turnstone", "turntable", "turnup", "turnverein", "turp", "turpentine", "turpitude", "turquoise", "turreae", "turret", "turtle", "turtledove", "turtlehead", "turtleneck", "turtler", "turtles", "turtling", "turves", "tuscan", "tush", "tushery", "tusk", "tusked", "tusker", "tussah", "tusseh", "tusser", "tussle", "tussling", "tussock", "tussore", "tussur", "tut", "tutee", "tutelage", "tutelar", "tutelary", "tutor", "tutored", "tutorial", "tutorially", "tutoring", "tutors", "tutorship", "tutsan", "Tuvalu", "tuvalu", "tux", "tuxedo", "tuxedoed", "tv", "tvs", "twaddle", "twaddler", "twain", "twang", "twanging", "twat", "twayblade", "tweak", "tweaks", "twee", "tweed", "tweedier", "tweediest", "tweediness", "tweedle", "tweedles", "tweedy", "tweet", "tweeter", "tweeting", "tweets", "tweeze", "tweezer", "tweezes", "twelfth", "twelve", "twelvemonth", "twenties", "twentieth", "twenty", "twerp", "twice", "twiddle", "twiddler", "twiddles", "twiddling", "twig", "twigged", "twiggier", "twiggiest", "twigging", "twiggy", "twiglike", "twilight", "twilit", "twill", "twilled", "twin", "twinberry", "twine", "twiner", "twines", "twinflower", "twinge", "twining", "twinjet", "twinkle", "twinkler", "twinkling", "twinkly", "twinned", "twinning", "twins", "twirl", "twirler", "twirling", "twirlingly", "twirp", "twist", "twisted", "twister", "twisting", "twists", "twistwood", "twisty", "twit", "twitch", "twitching", "twitted", "twitter", "twitterer", "twittering", "twitting", "Two", "two", "twofer", "twofold", "twopence", "twopenny", "twoscore", "twosome", "tycoon", "tying", "tyiyn", "tylenol", "tympan", "tympana", "tympani", "tympanic", "tympanist", "tympanites", "tympanitic", "tympanitis", "tympanoplasty", "tympanum", "type", "typecast", "typecasting", "typecasts", "typed", "typeface", "types", "typescript", "typeset", "typesets", "typesetter", "typesetting", "typewrite", "typewriter", "typewrites", "typewriting", "typhoid", "typhoon", "typhus", "typic", "typical", "typicality", "typically", "typification", "typified", "typifies", "typify", "typifying", "typing", "typist", "typo", "typographer", "typographic", "typographical", "typographically", "typography", "typology", "tyramine", "tyran", "tyrannic", "tyrannical", "tyrannically", "tyrannicide", "tyrannid", "tyrannise", "tyrannised", "tyrannises", "tyrannising", "tyrannize", "tyrannized", "tyrannizes", "tyrannizing", "tyrannosaur", "tyrannosaurus", "tyrannous", "tyranny", "tyrans", "tyrant", "tyre", "tyres", "tyro", "tyrocidin", "tyrocidine", "tyrolean", "tyrolese", "tyros", "tyrosine", "tyrosinemia", "tyrothricin", "tyrr", "tzar", "tzarina", "tzarist", "tzetze", "u", "UAE", "uae", "uakari", "ubermensch", "ubermenschen", "ubiety", "ubiquinone", "ubiquitous", "ubiquitousness", "ubiquity", "uda", "udder", "udometer", "ufo", "Uganda", "uganda", "ugandan", "ugh", "ugli", "uglier", "uglies", "ugliest", "uglified", "uglifies", "uglify", "ugliness", "ugly", "ugrian", "uh", "uh-uh", "uhf", "uighur", "uigur", "uigurs", "uintathere", "UK", "uk", "ukase", "uke", "Ukraine", "ukraine", "ukrainian", "ukrayina", "ukulele", "ulaanbaatar", "ulalgia", "ulama", "ulatrophia", "ulcer", "ulcerate", "ulcerated", "ulcerates", "ulceration", "ulcerative", "ulcerous", "ulcers", "ulema", "ulemorrhagia", "ulfila", "ulitis", "ullage", "ullr", "ulna", "ulnae", "ulnar", "ult", "ulterior", "ulteriority", "ulteriorly", "ultima", "ultimacy", "ultimata", "ultimate", "ultimately", "ultimateness", "ultimatum", "ultimo", "ultra", "ultra-right", "ultra-thin", "ultracef", "ultracentrifugation", "ultracentrifuge", "ultraconservative", "ultramarine", "ultramicroscope", "ultramicroscopic", "ultramodern", "ultramontane", "ultramontanism", "ultranationalism", "ultranationalistic", "ultrasonic", "ultrasonically", "ultrasonography", "ultrasound", "ultraviolet", "ululate", "ululating", "ululation", "umbel", "umbellar", "umbellate", "umbellifer", "umbelliferous", "umbelliform", "umber", "umbilical", "umbilicate", "umbilici", "umbilicus", "umbo", "umbones", "umbra", "umbrae", "umbrage", "umbrageous", "umbrella", "umbrellalike", "umbrellas", "umbrellawort", "umlaut", "umma", "ump", "umpirage", "umpire", "umpires", "umpiring", "umpteen", "umpteenth", "umptieth", "umteen", "umteenth", "UN", "un", "un-advertisers", "unabashed", "unabashedly", "unabated", "unable", "unabridged", "unabused", "unaccented", "unacceptability", "unacceptable", "unacceptableness", "unacceptably", "unaccepted", "unaccessible", "unaccommodating", "unaccompanied", "unaccountable", "unaccountably", "unaccredited", "unaccustomed", "unachievable", "unachievably", "unacknowledged", "unacquainted", "unacquisitive", "unactable", "unadaptability", "unadaptable", "unadapted", "unaddicted", "unaddressed", "unadjustable", "unadjusted", "unadoptable", "unadorned", "unadulterated", "unadventurous", "unadvisable", "unadvised", "unadvisedly", "unaerated", "unaesthetic", "unaffected", "unaffectedness", "unaffecting", "unaffectionate", "unaffiliated", "unaffixed", "unafraid", "unaged", "unaggressive", "unagitated", "unai", "unaided", "unaired", "unairworthy", "unalarming", "unalert", "unalienable", "unalike", "unalloyed", "unalterability", "unalterable", "unalterably", "unaltered", "unambiguity", "unambiguous", "unambiguously", "unambitious", "unambitiously", "unamended", "unanalyzable", "unanalyzed", "unangry", "unanimated", "unanimity", "unanimous", "unanimously", "unannealed", "unannounced", "unanswerable", "unanswered", "unanticipated", "unapologetic", "unappareled", "unapparent", "unappealable", "unappealing", "unappealingly", "unappeasable", "unappendaged", "unappetising", "unappetisingness", "unappetizing", "unappetizingness", "unappreciated", "unappreciative", "unappreciatively", "unapprehensive", "unapproachability", "unapproachable", "unapproved", "unarbitrary", "unarguable", "unarguably", "unargumentative", "unarm", "unarmed", "unarmored", "unarmoured", "unarms", "unarticulate", "unarticulated", "unartistic", "unary", "unascertainable", "unascribable", "unashamed", "unashamedly", "unasked", "unassailable", "unassailably", "unassertive", "unassertively", "unassertiveness", "unassignable", "unassigned", "unassisted", "unassuming", "unassumingly", "unassumingness", "unassured", "unasterisked", "unattached", "unattackable", "unattainable", "unattainableness", "unattainably", "unattended", "unattired", "unattractive", "unattractively", "unattractiveness", "unattributable", "unau", "unauthentic", "unauthorised", "unauthorized", "unavailability", "unavailable", "unavailing", "unavenged", "unavoidability", "unavoidable", "unavoidably", "unavowed", "unawakened", "unaware", "unawareness", "unawares", "unawed", "unbacked", "unbaffled", "unbalance", "unbalanced", "unbalances", "unbalancing", "unbalconied", "unbanded", "unbaptised", "unbaptized", "unbar", "unbarred", "unbarreled", "unbarrelled", "unbarring", "unbars", "unbearable", "unbearably", "unbeatable", "unbeaten", "unbecoming", "unbecomingly", "unbecomingness", "unbefitting", "unbeholden", "unbeknown", "unbeknownst", "unbelief", "unbelievable", "unbelievably", "unbelieving", "unbelievingly", "unbeloved", "unbelt", "unbelted", "unbelts", "unbend", "unbendable", "unbending", "unbends", "unbeneficed", "unbent", "unbiased", "unbiassed", "unbigoted", "unbind", "unbinding", "unbinds", "unbitter", "unbleached", "unblemished", "unblended", "unblessed", "unblinking", "unblinkingly", "unblock", "unblocks", "unbloody", "unblushing", "unblushingly", "unbodied", "unbolt", "unbolted", "unbolting", "unbolts", "unbooked", "unbordered", "unborn", "unbosom", "unbosoms", "unbound", "unbounded", "unboundedness", "unbowed", "unbox", "unboxes", "unbrace", "unbraced", "unbraces", "unbraid", "unbraids", "unbrainwashed", "unbranched", "unbranching", "unbranded", "unbreakable", "unbreakableness", "unbridgeable", "unbridle", "unbridled", "unbroken", "unbrushed", "unbuckle", "unbuckles", "unburden", "unburdened", "unburdens", "unburied", "unburnished", "unbutton", "unbuttoned", "unbuttons", "uncamphorated", "uncannily", "uncanny", "uncap", "uncapped", "uncapping", "uncaps", "uncarbonated", "uncaring", "uncarpeted", "uncarved", "uncase", "uncastrated", "uncategorised", "uncategorized", "uncaulked", "uncaused", "unceasing", "unceasingly", "uncensored", "unceremonial", "unceremonious", "unceremoniously", "unceremoniousness", "uncertain", "uncertainly", "uncertainness", "uncertainties", "uncertainty", "uncertified", "unchain", "unchained", "unchains", "unchallengeable", "unchallenged", "unchangeability", "unchangeable", "unchangeableness", "unchangeably", "unchanged", "unchanging", "unchangingness", "uncharacteristic", "uncharacteristically", "uncharged", "uncharitable", "uncharted", "unchartered", "unchaste", "uncheckable", "unchecked", "uncheerful", "uncheerfulness", "unchewable", "unchivalrous", "unchivalrously", "unchristian", "unchristianly", "unchristlike", "unchurch", "unci", "uncial", "uncidia", "uncivil", "uncivilised", "uncivilized", "uncivilly", "unclad", "unclaimed", "unclasp", "unclasping", "unclasps", "unclassifiable", "unclassified", "uncle", "unclean", "uncleanliness", "uncleanly", "uncleanness", "unclear", "uncleared", "unclearly", "unclearness", "uncles", "unclimbable", "unclip", "unclipped", "unclips", "uncloak", "unclog", "unclogged", "unclogging", "unclogs", "unclothe", "unclothed", "unclothes", "unclouded", "uncloudedness", "unclutter", "uncluttered", "unclutters", "unco", "uncoated", "uncoerced", "uncoil", "uncoiled", "uncoils", "uncollected", "uncollectible", "uncolored", "uncoloured", "uncolumned", "uncombable", "uncombed", "uncombined", "uncomely", "uncomfortable", "uncomfortableness", "uncomfortably", "uncommercial", "uncommercialised", "uncommercialized", "uncommitted", "uncommon", "uncommonly", "uncommonness", "uncommunicative", "uncommunicativeness", "uncomparable", "uncomparably", "uncompartmented", "uncompassionate", "uncompensated", "uncompetitive", "uncomplaining", "uncomplainingly", "uncomplete", "uncompleted", "uncomplicated", "uncomplimentary", "uncompounded", "uncomprehended", "uncomprehending", "uncomprehensible", "uncompress", "uncompresses", "uncompromising", "uncompromisingly", "unconcealed", "unconcern", "unconcerned", "unconcernedly", "unconditional", "unconditionally", "unconditioned", "unconfessed", "unconfined", "unconfirmed", "unconformable", "unconformist", "unconfused", "uncongenial", "uncongeniality", "unconnected", "unconnectedness", "unconquerable", "unconquered", "unconscientious", "unconscientiousness", "unconscionable", "unconscious", "unconsciously", "unconsciousness", "unconsecrated", "unconsidered", "unconsolable", "unconsolidated", "unconstipated", "unconstitutional", "unconstitutionally", "unconstrained", "unconstraint", "unconstricted", "unconstructive", "unconsumed", "unconsummated", "uncontaminated", "uncontaminating", "uncontested", "uncontrived", "uncontrollable", "uncontrollably", "uncontrolled", "uncontroversial", "uncontroversially", "unconventional", "unconventionality", "unconventionally", "unconverted", "unconvertible", "unconvinced", "unconvincing", "unconvincingly", "uncooked", "uncool", "uncooperative", "uncoordinated", "uncordial", "uncork", "uncorking", "uncorks", "uncorrectable", "uncorrected", "uncorrelated", "uncorroborated", "uncorrupted", "uncounted", "uncouple", "uncoupled", "uncouples", "uncoupling", "uncousinly", "uncouth", "uncouthly", "uncouthness", "uncover", "uncovered", "uncovering", "uncovers", "uncrannied", "uncrate", "uncrates", "uncreased", "uncreative", "uncreativeness", "uncredited", "uncritical", "uncritically", "uncropped", "uncross", "uncrossed", "uncrosses", "uncrowded", "uncrowned", "uncrystallised", "uncrystallized", "unction", "unctuous", "unctuously", "unctuousness", "uncultivable", "uncultivatable", "uncultivated", "uncultured", "uncurbed", "uncured", "uncurl", "uncurled", "uncurls", "uncurtained", "uncurved", "uncurving", "uncus", "uncut", "undamaged", "undatable", "undated", "undaunted", "undecagon", "undeceive", "undeceived", "undeceives", "undecided", "undecipherable", "undecipherably", "undeciphered", "undeclared", "undecomposable", "undecomposed", "undecorated", "undedicated", "undefeated", "undefendable", "undefended", "undeferential", "undefiled", "undefinable", "undefined", "undelineated", "undemanding", "undemocratic", "undemocratically", "undemonstrative", "undeniable", "undeniably", "undenominational", "undependability", "undependable", "undependableness", "undependably", "undepicted", "Under", "under", "underachieve", "underachievement", "underachiever", "underachieves", "underachieving", "underact", "underactive", "underacts", "underage", "underarm", "underbelly", "underbid", "underbidding", "underbids", "underbodice", "underbody", "underboss", "underbred", "underbrush", "undercarriage", "undercharge", "undercharges", "undercharging", "underclass", "underclassman", "underclothed", "underclothes", "underclothing", "undercoat", "undercoated", "undercooked", "undercover", "undercurrent", "undercut", "undercuting", "undercuts", "undercutting", "underdevelop", "underdeveloped", "underdevelopment", "underdog", "underdone", "underdrawers", "underdress", "underdressed", "underdresses", "undereducated", "underemployed", "underestimate", "underestimated", "underestimates", "underestimating", "underestimation", "underevaluation", "underexpose", "underexposure", "underfed", "underfeed", "underfeeds", "underfelt", "underfoot", "underframe", "underfur", "undergarment", "undergird", "undergo", "undergoes", "undergoing", "undergone", "undergrad", "undergraduate", "undergraduates", "underground", "undergrow", "undergrows", "undergrowth", "underhand", "underhanded", "underhandedly", "underhung", "underivative", "underived", "underlay", "underlayment", "underlays", "underlet", "underletting", "underlie", "underlies", "underline", "underlined", "underlines", "underling", "underlining", "underlip", "underlying", "undermanned", "undermentioned", "undermine", "undermined", "undermines", "undermining", "underneath", "undernourish", "undernourished", "undernourishes", "undernourishment", "underpants", "underpart", "underpass", "underpay", "underpaying", "underpayment", "underpays", "underperform", "underperformed", "underperformer", "underperforming", "underperforms", "underpin", "underpinned", "underpinning", "underpins", "underplay", "underplaying", "underplays", "underpopulated", "underprice", "underpriced", "underprices", "underprivileged", "underproduce", "underproduces", "underproducing", "underproduction", "underprop", "underpropped", "underpropping", "underquote", "underquotes", "underrate", "underrates", "underrating", "underreckoning", "underrun", "underscore", "underscored", "underscores", "underscoring", "undersea", "underseal", "undersealed", "undersecretary", "undersell", "underseller", "underselling", "undersells", "underset", "undersetting", "undersexed", "undershirt", "undershoot", "undershoots", "undershot", "undershrub", "underside", "undersign", "undersigns", "undersize", "undersized", "underskirt", "underslung", "undersoil", "underspend", "underspending", "underspends", "understaffed", "understand", "understandability", "understandable", "understandably", "understanding", "understandingly", "understands", "understate", "understated", "understatement", "understates", "understating", "understock", "understocking", "understocks", "understood", "understructure", "understudied", "understudies", "understudy", "undersurface", "undertake", "undertaken", "undertaker", "undertakes", "undertaking", "undertide", "undertone", "undertook", "undertow", "underutilise", "underutilised", "underutilize", "underutilized", "undervaluation", "undervalue", "undervalued", "undervalues", "undervaluing", "underwater", "underway", "underwear", "underweight", "underwent", "underwing", "underwood", "underworld", "underwrite", "underwriter", "underwrites", "underwriting", "underwritten", "underwrote", "undescended", "undescriptive", "undeserved", "undeservedly", "undeserving", "undesigned", "undesirability", "undesirable", "undesirably", "undesired", "undesiring", "undesirous", "undestroyable", "undetectable", "undetected", "undeterminable", "undetermined", "undeterred", "undeveloped", "undeviating", "undiagnosable", "undiagnosed", "undid", "undies", "undifferentiated", "undigested", "undignified", "undiluted", "undiminished", "undimmed", "undine", "undiplomatic", "undiplomatically", "undirected", "undiscerning", "undischarged", "undiscipline", "undisciplined", "undisclosed", "undiscouraged", "undiscoverable", "undiscovered", "undiscriminating", "undisguised", "undismayed", "undisputable", "undisputed", "undisputedly", "undissolved", "undistinguishable", "undistinguished", "undistorted", "undistributed", "undisturbed", "undiversified", "undividable", "undivided", "undo", "undoable", "undock", "undocks", "undocumented", "undoer", "undoes", "undogmatic", "undogmatical", "undoing", "undomestic", "undomesticated", "undone", "undoubtedly", "undrained", "undramatic", "undramatically", "undrape", "undraped", "undrapes", "undrawn", "undreamed", "undreamt", "undress", "undressed", "undresses", "undressing", "undried", "undrinkable", "undue", "undulant", "undulate", "undulates", "undulating", "undulation", "undulatory", "unduly", "undutiful", "undutifulness", "undyed", "undying", "undynamic", "uneager", "unearned", "unearth", "unearthed", "unearthing", "unearthly", "unearths", "unease", "uneasily", "uneasiness", "uneasy", "uneatable", "uneconomic", "uneconomical", "unedifying", "unedited", "uneducated", "uneffective", "unelaborate", "unelaborated", "unembarrassed", "unembellished", "unembodied", "unemotional", "unemotionality", "unemotionally", "unemphatic", "unemployable", "unemployed", "unemployment", "unenclosed", "unencouraging", "unencumbered", "unended", "unending", "unendingly", "unendowed", "unendurable", "unenergetic", "unenergetically", "unenforceable", "unenforced", "unengaged", "unenlightened", "unenlightening", "unenlightenment", "unenlivened", "unenterprising", "unenthusiastic", "unenthusiastically", "unentitled", "unenviable", "unequal", "unequaled", "unequalised", "unequalized", "unequalled", "unequally", "unequipped", "unequivocal", "unequivocally", "unequivocalness", "unerasable", "unerect", "unerring", "unerringly", "unesco", "unessential", "unestablished", "unethical", "unethically", "uneven", "unevenly", "unevenness", "uneventful", "uneventfully", "unexacting", "unexampled", "unexceeded", "unexcelled", "unexceptionable", "unexceptional", "unexchangeability", "unexchangeable", "unexcitable", "unexcited", "unexciting", "unexcitingly", "unexclusive", "unexcused", "unexhausted", "unexpansive", "unexpected", "unexpectedly", "unexpectedness", "unexpendable", "unexpended", "unexpired", "unexplainable", "unexplained", "unexploded", "unexploited", "unexplorative", "unexploratory", "unexplored", "unexportable", "unexpressed", "unexpressible", "unexpressive", "unexpurgated", "unextended", "unfaceted", "unfading", "unfailing", "unfailingly", "unfair", "unfairly", "unfairness", "unfaithful", "unfaithfully", "unfaithfulness", "unfaltering", "unfalteringly", "unfamiliar", "unfamiliarity", "unfashionable", "unfashionably", "unfasten", "unfastened", "unfastener", "unfastening", "unfastens", "unfastidious", "unfathomable", "unfathomed", "unfattened", "unfavorable", "unfavorableness", "unfavorably", "unfavourable", "unfavourableness", "unfavourably", "unfearing", "unfeasibility", "unfeasible", "unfeathered", "unfed", "unfeeling", "unfeelingly", "unfeelingness", "unfeigned", "unfeignedly", "unfeminine", "unfenced", "unfermented", "unfertile", "unfertilised", "unfertilized", "unfettered", "unfilled", "unfilmed", "unfinished", "unfirm", "unfit", "unfitness", "unfitted", "unfitting", "unfixed", "unflagging", "unflappable", "unflattering", "unflavored", "unflavoured", "unflawed", "unfledged", "unflinching", "unfluctuating", "unflurried", "unflustered", "unfocused", "unfocussed", "unfold", "unfolded", "unfolding", "unfolds", "unforbearing", "unforced", "unforceful", "unforeseeable", "unforeseen", "unforesightful", "unforested", "unforethoughtful", "unforfeitable", "unforgettable", "unforgettably", "unforgivable", "unforgivably", "unforgiving", "unforgivingly", "unformed", "unfortunate", "Unfortunately", "unfortunately", "unfounded", "unframed", "unfree", "unfreeze", "unfreezes", "unfreezing", "unfrequented", "unfretted", "unfriendlier", "unfriendliest", "unfriendliness", "unfriendly", "unfrightened", "unfrock", "unfrosted", "unfrozen", "unfruitful", "unfueled", "unfulfilled", "unfunctional", "unfunded", "unfunny", "unfurl", "unfurling", "unfurls", "unfurnished", "unfurrowed", "ungainlier", "ungainliest", "ungainliness", "ungainly", "ungallant", "ungarbed", "ungarmented", "ungathered", "ungeared", "ungenerous", "ungentle", "ungentlemanlike", "ungentlemanly", "ungetatable", "unglamorous", "unglamourous", "unglazed", "ungodlier", "ungodliest", "ungodliness", "ungodly", "ungovernable", "ungoverned", "ungraceful", "ungracefully", "ungracefulness", "ungracious", "ungraciously", "ungraciousness", "ungraded", "ungrammatical", "ungrammatically", "ungrasped", "ungrateful", "ungratefully", "ungratefulness", "ungratified", "ungratifying", "ungreased", "ungregarious", "ungroomed", "ungrudging", "ungrudgingly", "ungual", "unguaranteed", "unguarded", "unguent", "unguiculate", "unguiculated", "unguided", "unguis", "ungulate", "ungulated", "ungummed", "ungusseted", "unhallow", "unhallowed", "unhampered", "unhand", "unhappier", "unhappiest", "unhappily", "unhappiness", "unhappy", "unhardened", "unharmed", "unharmonious", "unharmoniously", "unharness", "unharnesses", "unhatched", "unhazardous", "unheaded", "unhealed", "unhealthful", "unhealthfulness", "unhealthier", "unhealthiest", "unhealthiness", "unhealthy", "unhearable", "unheard", "unhearing", "unheated", "unheeded", "unheeding", "unhelpful", "unhelpfully", "unhelpfulness", "unheralded", "unhesitating", "unhesitatingly", "unhewn", "unhindered", "unhinge", "unhinged", "unhinges", "unhinging", "unhitch", "unhitches", "unholier", "unholiest", "unholiness", "unholy", "unhomogenised", "unhomogenized", "unhook", "unhooking", "unhooks", "unhoped", "unhopeful", "unhorse", "unhuman", "unhumorous", "unhurried", "unhurriedly", "unhurriedness", "unhurt", "unhygienic", "unhygienically", "uniate", "unicameral", "unicef", "unicellular", "unicorn", "unicuspid", "unicycle", "unicycling", "unicyclist", "unidentifiable", "unidentified", "unidimensional", "unidirectional", "unifacial", "unification", "unified", "unifies", "unifilar", "unifoliate", "uniform", "uniformed", "uniformise", "uniformises", "uniformity", "uniformize", "uniformizes", "uniformly", "uniformness", "uniforms", "unify", "unifying", "unilateral", "unilateralism", "unilateralist", "unilaterally", "unilluminated", "unilluminating", "unimaginable", "unimaginably", "unimaginative", "unimaginatively", "unimagined", "unimodal", "unimpaired", "unimpassioned", "unimpeachable", "unimpeachably", "unimpeded", "unimportance", "unimportant", "unimposing", "unimpregnated", "unimpressed", "unimpressionable", "unimpressive", "unimpressively", "unimprisoned", "unimproved", "unincorporated", "unindustrialised", "unindustrialized", "uninebriated", "uninfected", "uninflected", "uninfluenced", "uninfluential", "uninformative", "uninformatively", "uninformed", "uninhabitable", "uninhabited", "uninhibited", "uninitiate", "uninitiated", "uninjectable", "uninjured", "uninominal", "uninquiring", "uninquisitive", "uninspired", "uninspiring", "uninstructed", "uninstructive", "uninstructively", "uninsurability", "uninsurable", "uninsured", "unintegrated", "unintelligent", "unintelligently", "unintelligibility", "unintelligible", "unintelligibly", "unintended", "unintentional", "unintentionally", "uninterested", "uninteresting", "uninterestingly", "uninterestingness", "uninterrupted", "uninterruptedly", "unintimidated", "unintoxicated", "unintrusive", "uninucleate", "uninventive", "uninvited", "uninvitedly", "uninviting", "uninvolved", "uninvolving", "Union", "union", "unionisation", "unionise", "unionised", "unionises", "unionising", "unionism", "unionist", "unionization", "unionize", "unionized", "unionizes", "unionizing", "unions", "uniovular", "uniovulate", "uniparous", "unipolar", "unique", "uniquely", "uniqueness", "unironed", "unisex", "unisexual", "unison", "unit", "unitard", "unitarian", "unitary", "unite", "United", "united", "unitedly", "unites", "uniting", "unitisation", "unitise", "unitises", "unitization", "unitize", "unitizes", "units", "unity", "univalent", "univalve", "universal", "universalise", "universalises", "universalism", "universalist", "universalistic", "universality", "universalize", "universalizes", "universally", "universe", "universes", "universities", "university", "univocal", "unix", "unjointed", "unjust", "unjustifiable", "unjustifiably", "unjustified", "unjustly", "unjustness", "unkempt", "unkemptness", "unkennel", "unkennelled", "unkennelling", "unkept", "unkeyed", "unkind", "unkindled", "unkindly", "unkindness", "unknit", "unknits", "unknitted", "unknitting", "unknot", "unknots", "unknowable", "unknowing", "unknowingly", "unknowingness", "unknowledgeable", "unknown", "unlabeled", "unlabelled", "unlace", "unlaced", "unlaces", "unlade", "unlades", "unladylike", "unlamented", "unlash", "unlashes", "unlatched", "unlaureled", "unlaurelled", "unlawful", "unlawfully", "unlawfulness", "unlax", "unleaded", "unlearn", "unlearned", "unleash", "unleashed", "unleashes", "unleashing", "unleavened", "Unless", "unless", "unlettered", "unlicenced", "unlicensed", "unlifelike", "unlighted", "unlikable", "Unlike", "unlike", "unlikeable", "unlikelihood", "unlikeliness", "unlikely", "unlikeness", "unlimited", "unlined", "unlipped", "unlisted", "unlit", "unliterary", "unlittered", "unlivable", "unlive", "unliveable", "unliveried", "unload", "unloaded", "unloading", "unloads", "unlobed", "unlocated", "unlock", "unlocked", "unlocking", "unlocks", "unlogical", "unloose", "unloosen", "unloosens", "unlovable", "unloved", "unlovely", "unloving", "unlubricated", "unluckily", "unlucky", "unmade", "unmake", "unmakes", "unmaking", "unmalicious", "unmalleability", "unmalleable", "unmalted", "unman", "unmanageable", "unmanageableness", "unmanageably", "unmanful", "unmanfully", "unmanlike", "unmanliness", "unmanly", "unmanned", "unmannered", "unmannerly", "unmanning", "unmapped", "unmarked", "unmarketable", "unmarred", "unmarried", "unmask", "unmasking", "unmasks", "unmatchable", "unmatched", "unmated", "unmeaning", "unmeasurable", "unmeasured", "unmechanical", "unmechanised", "unmechanized", "unmediated", "unmedical", "unmedicative", "unmedicinal", "unmelodic", "unmelodious", "unmelodiously", "unmelted", "unmemorable", "unmemorably", "unmentionable", "unmercenary", "unmerchantable", "unmerciful", "unmercifully", "unmercifulness", "unmerited", "unmeritorious", "unmethodical", "unmilitary", "unmindful", "unmindfully", "unmindfulness", "unmined", "unmingled", "unmistakable", "unmistakably", "unmitigable", "unmitigated", "unmixable", "unmixed", "unmoderated", "unmodernised", "unmodernized", "unmodifiable", "unmodified", "unmodulated", "unmolested", "unmortgaged", "unmotivated", "unmotorised", "unmotorized", "unmourned", "unmovable", "unmoved", "unmoving", "unmown", "unmusical", "unmusically", "unmutilated", "unmuzzle", "unmyelinated", "unnameable", "unnamed", "unnatural", "unnaturalised", "unnaturalized", "unnaturally", "unnaturalness", "unnavigable", "unnecessarily", "unnecessary", "unneeded", "unneighborliness", "unneighborly", "unneighbourly", "unnerve", "unnerved", "unnerves", "unnerving", "unneurotic", "unnilquadium", "unnotched", "unnoted", "unnoticeable", "unnoticeableness", "unnoticeably", "unnoticed", "unnourished", "unnumberable", "unnumbered", "unnumerable", "unobjectionable", "unobjective", "unobligated", "unobliging", "unobservable", "unobservant", "unobserved", "unobstructed", "unobtainable", "unobtrusive", "unobtrusively", "unobtrusiveness", "unobvious", "unoccupied", "unoffending", "unofficial", "unofficially", "unoiled", "unopen", "unopened", "unopposable", "unopposed", "unordered", "unorganised", "unorganized", "unoriented", "unoriginal", "unoriginality", "unoriginally", "unornamented", "unorthodox", "unorthodoxy", "unostentatious", "unowned", "unoxygenated", "unpack", "unpackaged", "unpacking", "unpacks", "unpaid", "unpainful", "unpaintable", "unpainted", "unpaired", "unpalatability", "unpalatable", "unpalatableness", "unpalatably", "unparallel", "unparalleled", "unpardonable", "unpardonably", "unparented", "unparliamentary", "unpartitioned", "unpassable", "unpasteurised", "unpasteurized", "unpatented", "unpatriotic", "unpatriotically", "unpatronised", "unpatronized", "unpatterned", "unpaved", "unpeaceable", "unpeaceful", "unpeg", "unpegged", "unpegging", "unpeopled", "unperceivable", "unperceived", "unperceiving", "unperceptive", "unperceptiveness", "unperformed", "unpermed", "unpermissive", "unpermissiveness", "unperplexed", "unperson", "unpersuadable", "unpersuaded", "unpersuasive", "unpersuasiveness", "unperturbed", "unpick", "unpicking", "unpicks", "unpictured", "unpicturesque", "unpierced", "unpigmented", "unpillared", "unpin", "unpinned", "unpinning", "unpins", "unpitying", "unplaced", "unplanned", "unplanted", "unplayable", "unplayful", "unpleasant", "unpleasantly", "unpleasantness", "unpleasing", "unpleasingness", "unpledged", "unploughed", "unplowed", "unplug", "unplugged", "unplugging", "unplugs", "unplumbed", "unpointed", "unpointedness", "unpolished", "unpolitical", "unpolluted", "unpompous", "unpopular", "unpopularity", "unpopulated", "unportable", "unposed", "unpotted", "unpowered", "unpracticed", "unpractised", "unprecedented", "unprecedentedly", "unpredictability", "unpredictable", "unpredictably", "unpredicted", "unpredictive", "unprejudiced", "unpremeditated", "unprepared", "unprepossessing", "unpresentable", "unpresidential", "unpressed", "unpretending", "unpretentious", "unpretentiously", "unpretentiousness", "unpreventable", "unpriestly", "unprincipled", "unprintable", "unproblematic", "unprocessed", "unprocurable", "unproductive", "unproductively", "unproductiveness", "unprofessional", "unprofitability", "unprofitable", "unprofitableness", "unprofitably", "unprogressive", "unpromised", "unpromising", "unprompted", "unpronounceable", "unprophetic", "unpropitious", "unpropitiously", "unpropitiousness", "unprotected", "unprotectedness", "unprotective", "unprovable", "unproved", "unproven", "unprovocative", "unprovoked", "unprovoking", "unpublishable", "unpublished", "unpunctual", "unpunished", "unpurified", "unq", "unqualified", "unqualifiedly", "unquenchable", "unquestionability", "unquestionable", "unquestionableness", "unquestionably", "unquestioned", "unquestioning", "unquestioningly", "unquiet", "unquietly", "unquotable", "unraised", "unranked", "unratable", "unratified", "unravel", "unraveled", "unraveler", "unraveling", "unravelled", "unraveller", "unravelling", "unravels", "unreachable", "unreached", "unreactive", "unread", "unreadable", "unreadably", "unready", "unreal", "unrealised", "unrealism", "unrealistic", "unrealistically", "unreality", "unrealizable", "unrealized", "unreason", "unreasonable", "unreasonably", "unreasoning", "unreasoningly", "unreassuring", "unreceptive", "unreciprocated", "unrecognisable", "unrecognised", "unrecognizable", "unrecognizably", "unrecognized", "unreconcilable", "unreconciled", "unreconstructed", "unrecorded", "unrecoverable", "unredeemable", "unredeemed", "unreduced", "unreel", "unrefined", "unreflected", "unreflective", "unreformable", "unreformed", "unrefreshed", "unregenerate", "unregenerated", "unregistered", "unregretful", "unregretting", "unregularity", "unregulated", "unrehearsed", "unrelated", "unrelatedness", "unrelaxed", "unreleased", "unrelenting", "unrelentingly", "unreleting", "unreliability", "unreliable", "unreliableness", "unreliably", "unrelieved", "unremarkable", "unremarkably", "unremarked", "unremedied", "unremitting", "unremorseful", "unremunerative", "unrenewable", "unrenewed", "unrentable", "unrepaired", "unrepeatable", "unrepentant", "unrepentantly", "unreplaceable", "unreportable", "unreported", "unrepresentative", "unrepressed", "unreproducible", "unreproducibly", "unrequested", "unrequited", "unresearched", "unresentful", "unreserved", "unreservedly", "unresistant", "unresisting", "unresolvable", "unresolved", "unrespectability", "unrespectable", "unresponsive", "unresponsiveness", "unrest", "unrested", "unrestrained", "unrestrainedly", "unrestraint", "unrestricted", "unrestrictive", "unretentive", "unretrievable", "unrevealed", "unreverberant", "unrevised", "unrevived", "unrewarded", "unrewarding", "unrhetorical", "unrhymed", "unrhythmic", "unrhythmical", "unrifled", "unrig", "unrigged", "unrigging", "unrighteous", "unrighteously", "unrighteousness", "unrigs", "unrimed", "unrip", "unripe", "unripened", "unripped", "unripping", "unrips", "unrivaled", "unrivalled", "unroll", "unrolling", "unrolls", "unromantic", "unromantically", "unroofed", "unrouged", "unruffled", "unrulier", "unruliest", "unruliness", "unruly", "unsaddle", "unsaddled", "unsafe", "unsaid", "unsalable", "unsalaried", "unsaleable", "unsalted", "unsanctification", "unsanctified", "unsanctifies", "unsanctify", "unsanctioned", "unsanded", "unsanitariness", "unsanitary", "unsaponified", "unsarcastic", "unsated", "unsatiable", "unsatiably", "unsatiated", "unsatisfactorily", "unsatisfactoriness", "unsatisfactory", "unsatisfiable", "unsatisfied", "unsatisfying", "unsaturated", "unsaved", "unsavoriness", "unsavory", "unsavoury", "unsay", "unscalable", "unscathed", "unscheduled", "unscholarly", "unschooled", "unscientific", "unscientifically", "unscramble", "unscrambles", "unscrambling", "unscrew", "unscrewing", "unscrews", "unscripted", "unscrupulous", "unscrupulously", "unscrupulousness", "unseal", "unsealed", "unseals", "unseamanlike", "unseamed", "unseasonable", "unseasonableness", "unseasonably", "unseasoned", "unseat", "unseated", "unseating", "unseats", "unseaworthy", "unsectarian", "unsecured", "unseductive", "unseeable", "unseeded", "unseeing", "unseemliness", "unseemly", "unseen", "unsegmented", "unsegregated", "unselected", "unselective", "unselfconscious", "unselfconsciously", "unselfconsciousness", "unselfish", "unselfishly", "unselfishness", "unsensational", "unsent", "unsentimental", "unsentimentally", "unserviceable", "unservile", "unsettle", "unsettled", "unsettles", "unsex", "unsexed", "unsexy", "unshackled", "unshaded", "unshadowed", "unshakable", "unshakably", "unshaken", "unshaped", "unshapely", "unshapen", "unshared", "unsharpened", "unshaved", "unshaven", "unsheared", "unsheathe", "unsheathed", "unsheathes", "unshelled", "unshielded", "unship", "unshipped", "unshipping", "unships", "unshockable", "unshod", "unshoed", "unshorn", "unshrinkable", "unshrinking", "unshuttered", "unsighted", "unsightliness", "unsightly", "unsigned", "unsilenced", "unsimilarity", "unsinkable", "unsized", "unskilled", "unskillful", "unskillfulness", "unsleeping", "unsloped", "unsmiling", "unsmilingly", "unsmooth", "unsmoothed", "unsnap", "unsnapped", "unsnapping", "unsnaps", "unsnarl", "unsnarled", "unsnarling", "unsnarls", "unsociability", "unsociable", "unsociableness", "unsociably", "unsocial", "unsoiled", "unsold", "unsolder", "unsolders", "unsoldierly", "unsolicited", "unsoluble", "unsolvability", "unsolvable", "unsolved", "unsophisticated", "unsorted", "unsought", "unsound", "unsoundable", "unsounded", "unsoundness", "unsoured", "unsown", "unspaced", "unsparing", "unsparingly", "unspeakable", "unspeakably", "unspecialised", "unspecialized", "unspecific", "unspecified", "unspectacular", "unspell", "unspells", "unspent", "unspoiled", "unspoilt", "unspoken", "unsporting", "unsportingly", "unsportsmanlike", "unspotted", "unstable", "unstableness", "unstaged", "unstained", "unstaple", "unstarred", "unstated", "unstatesmanlike", "unsteadied", "unsteadies", "unsteadily", "unsteadiness", "unsteady", "unstep", "unstepped", "unstepping", "unsteps", "unsterilised", "unsterilized", "unstilted", "unstimulating", "unstinted", "unstinting", "unstintingly", "unstirred", "unstop", "unstoppable", "unstopped", "unstoppered", "unstopping", "unstrain", "unstrained", "unstrap", "unstraps", "unstratified", "unstressed", "unstring", "unstrings", "unstructured", "unstrung", "unstuck", "unstudied", "unstudious", "unstuff", "unstuffs", "unstylish", "unsuasible", "unsubdivided", "unsubduable", "unsubdued", "unsubmissive", "unsubstantial", "unsubstantialise", "unsubstantialize", "unsubstantiated", "unsubtle", "unsuccessful", "unsuccessfully", "unsufferable", "unsufferably", "unsugared", "unsuitability", "unsuitable", "unsuitableness", "unsuitably", "unsuited", "unsullied", "unsung", "unsupervised", "unsupportable", "unsupported", "unsupportive", "unsuppressed", "unsure", "unsurmountable", "unsurpassable", "unsurpassed", "unsurprised", "unsurprising", "unsusceptibility", "unsusceptible", "unsuspected", "unsuspecting", "unsuspectingly", "unsuspicious", "unswayed", "unsweet", "unsweetened", "unswept", "unswerving", "unswervingly", "unsworn", "unsyllabic", "unsyllabled", "unsymbolic", "unsymmetric", "unsymmetrical", "unsymmetrically", "unsympathetic", "unsympathetically", "unsympathising", "unsympathizing", "unsynchronised", "unsynchronized", "unsynchronous", "unsystematic", "unsystematically", "untactful", "untagged", "untainted", "untalented", "untalkative", "untamed", "untangle", "untangled", "untangles", "untangling", "untanned", "untaped", "untapped", "untarnished", "untasted", "untaught", "untaxed", "unteach", "untechnical", "untellable", "untempered", "untempting", "untenable", "untenanted", "untended", "untested", "untethered", "unthankful", "unthaw", "unthawed", "unthaws", "untheatrical", "unthematic", "unthinkable", "unthinkably", "unthinking", "unthinkingly", "unthought", "unthoughtful", "unthoughtfulness", "unthreatening", "untidied", "untidier", "untidies", "untidiest", "untidily", "untidiness", "untidy", "untie", "untied", "untier", "unties", "Until", "until", "untilled", "untimbered", "untimeliness", "untimely", "untipped", "untired", "untiring", "untitled", "unto", "untoasted", "untold", "untoothed", "untouchable", "untouched", "untoughened", "untoward", "untraceable", "untracked", "untraditional", "untrained", "untrammeled", "untrammelled", "untransferable", "untranslatable", "untransmutable", "untraveled", "untravelled", "untraversable", "untraversed", "untreated", "untried", "untrimmed", "untrod", "untrodden", "untroubled", "untrue", "untruly", "untrustiness", "untrusting", "untrustworthiness", "untrustworthy", "untrusty", "untruth", "untruthful", "untruthfully", "untruthfulness", "untucked", "untufted", "untune", "untuneful", "unturned", "untutored", "untwine", "untwines", "untwist", "untwisted", "untwists", "untying", "untypical", "untypicality", "untypically", "ununbium", "ununderstandably", "ununderstood", "ununhexium", "ununpentium", "ununquadium", "ununtrium", "unusable", "unuseable", "unused", "unusefulness", "unusual", "unusually", "unusualness", "unutterable", "unutterably", "unuttered", "unvaccinated", "unvalued", "unvaned", "unvanquishable", "unvanquished", "unvaried", "unvariedness", "unvarnished", "unvarying", "unveil", "unveiled", "unveiling", "unveils", "unvendible", "unvented", "unventilated", "unverbalised", "unverbalized", "unverifiable", "unverified", "unversed", "unvigilant", "unvindictive", "unvitrified", "unvoiced", "unvoluntary", "unvulcanised", "unvulcanized", "unwanted", "unwantedly", "unwarily", "unwariness", "unwarmed", "unwarrantable", "unwarrantably", "unwarranted", "unwary", "unwashed", "unwatchful", "unwavering", "unwaveringly", "unwaxed", "unweaned", "unwearable", "unwearied", "unweary", "unwearying", "unweathered", "unweave", "unwebbed", "unwed", "unwedded", "unwelcome", "unwell", "unwellness", "unwholesome", "unwholesomeness", "unwieldiness", "unwieldy", "unwilled", "unwilling", "unwillingly", "unwillingness", "unwind", "unwinding", "unwinds", "unwire", "unwise", "unwisely", "unwiseness", "unwished", "unwitting", "unwittingly", "unwomanly", "unwonted", "unwontedly", "unwooded", "unworkable", "unworkmanlike", "unworldly", "unworried", "unworthily", "unworthiness", "unworthy", "unwounded", "unwoven", "unwrap", "unwrapped", "unwrapping", "unwraps", "unwrinkled", "unwritten", "unyielding", "unyieldingness", "unyoke", "unzip", "unzipped", "unzipping", "unzips", "up", "UPA", "upa", "upbeat", "upbound", "upbraid", "upbraider", "upbraiding", "upbraids", "upbringing", "upcast", "upchuck", "upchucks", "upcoming", "upcountry", "upcurved", "update", "updated", "updates", "updating", "updraft", "upend", "upended", "upending", "upends", "upfield", "upfront", "upgrade", "upgraded", "upgrades", "upgrading", "upheaval", "upheave", "upheld", "uphill", "uphold", "upholder", "upholding", "upholds", "upholster", "upholsterer", "upholstery", "upkeep", "upland", "uplift", "uplifted", "uplifting", "uplifts", "uplink", "upload", "uploading", "uploads", "upmarket", "upmost", "upon", "upped", "upper", "uppercase", "uppercut", "uppercutting", "uppermost", "upping", "uppish", "uppishly", "uppishness", "uppity", "uppityness", "uppp", "upraise", "upraised", "upraises", "upright", "uprightly", "uprightness", "uprise", "uprises", "uprising", "upriver", "uproar", "uproarious", "uproariously", "uproot", "uprooted", "uprooter", "uprooting", "uproots", "UPS", "ups", "upsala", "upscale", "upset", "upsets", "upsetter", "upsetting", "upshot", "upside", "upsilon", "upstage", "upstager", "upstages", "upstaging", "upstair", "upstairs", "upstanding", "upstart", "upstate", "upstream", "upstroke", "upsurge", "uptake", "upthrow", "upthrust", "uptick", "uptight", "uptime", "uptown", "upturn", "upturned", "upward", "upwardly", "upwards", "upwind", "uracil", "uraemia", "uraemic", "uranalysis", "uraninite", "uranium", "uranologist", "uranology", "uranoplasty", "uranyl", "urarthritis", "urate", "uratemia", "uraturia", "urban", "urbane", "urbanely", "urbanisation", "urbanise", "urbanised", "urbanises", "urbanising", "urbanity", "urbanization", "urbanize", "urbanized", "urbanizes", "urbanizing", "urceolate", "urceole", "urchin", "urea", "urease", "uredines", "uredinia", "uredinium", "uredium", "uredo", "uredosori", "uredosorus", "uremia", "uremic", "ureter", "ureteritis", "ureterocele", "ureterostenosis", "urethane", "urethra", "urethrae", "urethral", "urethritis", "urethrocele", "urex", "urga", "urge", "urged", "urgency", "urgent", "urgently", "urges", "urging", "urial", "uric", "uricaciduria", "uricosuric", "urinal", "urinalyses", "urinalysis", "urinary", "urinate", "urinates", "urinating", "urination", "urinator", "urine", "url", "urn", "urobilin", "urobilinogen", "urocele", "urochesia", "urochezia", "urochord", "urochorda", "urochordate", "urodele", "urodynia", "urogenital", "urokinase", "urolith", "urologist", "urology", "uropathy", "uropygi", "uropygium", "ursine", "ursinia", "urth", "urticaria", "urticate", "urticates", "urticating", "urtication", "Uruguay", "uruguay", "uruguayan", "urus", "US", "us", "US$", "us$", "USA", "usa", "usability", "usable", "usableness", "usacil", "USAF", "usaf", "usage", "usages", "usance", "usbeg", "usbek", "uscb", "usd", "usda", "use", "useable", "useableness", "used", "useful", "usefully", "usefulness", "useless", "uselessly", "uselessness", "user", "users", "uses", "usher", "ushered", "usherette", "ushering", "ushers", "using", "USKUB", "uskub", "USMC", "usmc", "USN", "usn", "USPS", "usps", "USSR", "ussr", "USSS", "usss", "usual", "usually", "usualness", "usufruct", "usufructuary", "usumbura", "usurer", "usurious", "usuriously", "usurp", "usurpation", "usurper", "usurping", "usurps", "usury", "utahraptor", "utc", "utensil", "utensils", "uteri", "uterine", "uterus", "utile", "utilisable", "utilisation", "utilise", "utilised", "utiliser", "utilises", "utilising", "utilitarian", "utilitarianism", "utilities", "utility", "utilizable", "utilization", "utilize", "utilized", "utilizer", "utilizes", "utilizing", "utmost", "utn", "utopian", "utricle", "utriculi", "utriculus", "utter", "utterable", "utterance", "uttered", "utterer", "uttering", "utterly", "uttermost", "utterness", "utters", "utug", "uub", "uuh", "uup", "uuq", "uut", "uvea", "uveal", "uveitis", "uveous", "uvula", "uvulae", "uvular", "uvulitis", "uvulopalatopharyngoplasty", "uxor", "uxorial", "uxoricide", "uxorious", "uxoriously", "uxoriousness", "uygur", "uzbak", "uzbeg", "Uzbekistan", "uzbekistan", "uzbekistani", "VA.", "Va.", "va.", "vac", "vacancy", "vacant", "vacantly", "vacate", "vacated", "vacates", "vacating", "vacation", "vacationer", "vacationers", "vacationing", "vacationist", "vacations", "vacay", "vaccina", "vaccinate", "vaccinated", "vaccinates", "vaccinating", "vaccination", "vaccinator", "vaccine", "vaccinee", "vaccines", "vaccinia", "vaccinum", "vacillant", "vacillate", "vacillates", "vacillating", "vacillation", "vacillator", "vacua", "vacuity", "vacuolate", "vacuolated", "vacuolation", "vacuole", "vacuoles", "vacuolisation", "vacuolization", "vacuous", "vacuously", "vacuousness", "vacuum", "vacuuming", "vacuums", "vag", "vagabond", "vagabondage", "vagal", "vagary", "vagged", "vagging", "vagi", "vagile", "vagina", "vaginae", "vaginal", "vaginismus", "vaginitis", "vaginocele", "vagrancy", "vagrant", "vags", "vague", "vaguely", "vagueness", "vaguest", "vagus", "vain", "vainglorious", "vainglory", "vainly", "vaisakha", "vaisnavism", "valance", "valdecoxib", "vale", "valediction", "valedictorian", "valedictory", "valence", "valency", "valent", "valentine", "valentines", "valerian", "valet", "valetta", "valetudinarian", "valetudinarianism", "valetudinary", "valgus", "valiance", "valiancy", "valiant", "valiantly", "valid", "validate", "validated", "validates", "validating", "validation", "validatory", "validity", "validly", "validness", "valine", "valise", "valium", "vallecula", "valleculae", "valley", "valleys", "valor", "valorous", "valorously", "valorousness", "valour", "valsartan", "valse", "valuable", "valuableness", "valuate", "valuates", "valuation", "valuator", "value", "valued", "valueless", "valuelessness", "valuer", "values", "valuing", "valve", "valved", "valvelet", "valves", "valvotomy", "valvula", "valvular", "valvule", "valvulitis", "valvulotomy", "vambrace", "vamoose", "vamooses", "vamp", "vamper", "vamping", "vampire", "vampires", "vampirism", "vamps", "van", "vanadate", "vanadinite", "vanadium", "vancocin", "vancomycin", "vanda", "vandal", "vandalise", "vandalised", "vandalises", "vandalising", "vandalism", "vandalize", "vandalized", "vandalizes", "vandalizing", "vane", "vaned", "vanern", "vanguard", "vanilla", "vanillin", "vanish", "vanished", "vanisher", "vanishes", "vanishing", "vanishingly", "vanity", "vanquish", "vanquishable", "vanquisher", "vanquishes", "vanquishing", "vans", "vantage", "Vanuatu", "vanuatu", "vapid", "vapidity", "vapidly", "vapidness", "vapor", "vaporetti", "vaporetto", "vaporific", "vaporing", "vaporisation", "vaporise", "vaporised", "vaporiser", "vaporises", "vaporish", "vaporising", "vaporizable", "vaporization", "vaporize", "vaporized", "vaporizer", "vaporizes", "vaporizing", "vaporous", "vaporousness", "vapors", "vapour", "vapourific", "vapourisable", "vapourised", "vapourish", "vapourous", "vapourousness", "vapours", "vaquero", "vaquita", "var", "vara", "varan", "vardenafil", "variability", "variable", "variableness", "variables", "variably", "variance", "variances", "variant", "variants", "variate", "variation", "variations", "varicella", "varicelliform", "varices", "varicocele", "varicolored", "varicoloured", "varicose", "varicosis", "varicosity", "varied", "variedness", "variegate", "variegated", "variegates", "variegation", "varies", "varietal", "varieties", "variety", "variform", "variola", "variolar", "variolation", "variolic", "variolization", "variolous", "variometer", "variorum", "various", "variously", "varix", "varlet", "varment", "varmint", "varnish", "varnished", "varnisher", "varnishing", "varsity", "varus", "vary", "varying", "vas", "vasa", "vascula", "vascular", "vascularisation", "vascularise", "vascularises", "vascularity", "vascularization", "vascularize", "vascularizes", "vasculitis", "vasculum", "vase", "vasectomise", "vasectomises", "vasectomize", "vasectomizes", "vasectomy", "vasiform", "vasoconstriction", "vasoconstrictive", "vasoconstrictor", "vasodilation", "vasodilative", "vasodilator", "vasomax", "vasomotor", "vasopressin", "vasopressor", "vasosection", "vasotec", "vasotomy", "vasovasostomy", "vasovesiculitis", "vassal", "vassalage", "vast", "vastier", "vastiest", "vastly", "vastness", "vasty", "vat", "vatic", "vatical", "vaticinate", "vaticinates", "vaticination", "vaticinator", "vatted", "vatting", "vaudeville", "vaudevillian", "vaudois", "vault", "vaulted", "vaulter", "vaulting", "vaunt", "vaunter", "vaunting", "vauntingly", "vaunts", "vcr", "vcrs", "vdu", "VE", "ve", "veal", "veau", "vector", "vectors", "veda", "vedalia", "vedic", "veer", "veering", "veery", "veg", "vegan", "vegetable", "vegetables", "vegetal", "vegetarian", "vegetarianism", "vegetate", "vegetates", "vegetating", "vegetation", "vegetational", "vegetative", "vegetive", "veggie", "veggies", "vehemence", "vehement", "vehemently", "vehicle", "vehicles", "vehicular", "veil", "veiled", "veiling", "vein", "veinal", "veined", "veinlike", "veins", "vela", "velamen", "velamina", "velar", "velaria", "velarium", "velban", "velcro", "veld", "veldt", "velleity", "vellicate", "vellicates", "vellication", "vellum", "velocipede", "velociraptor", "velocities", "velocity", "velodrome", "velour", "veloute", "velum", "velvet", "velveteen", "velvetleaf", "velvetweed", "velvety", "vena", "venae", "venal", "venality", "venally", "venation", "vend", "vendable", "vendee", "vender", "vendetta", "vendible", "vending", "vendition", "vendor", "vendors", "vends", "vendue", "veneer", "veneering", "venerability", "venerable", "venerableness", "venerate", "venerates", "venerating", "veneration", "venerator", "venereal", "venesect", "venesection", "venesects", "venetia", "venetian", "venezia", "Venezuela", "venezuela", "venezuelan", "vengeance", "vengeful", "vengefully", "vengefulness", "venial", "venipuncture", "venire", "venison", "venogram", "venography", "venom", "venomed", "venomous", "venomously", "venose", "venous", "vent", "ventail", "vented", "venter", "venthole", "ventilate", "ventilated", "ventilates", "ventilating", "ventilation", "ventilator", "ventilatory", "venting", "ventolin", "ventral", "ventrally", "ventricle", "ventricose", "ventricous", "ventricular", "ventriculi", "ventriculus", "ventriloquism", "ventriloquist", "ventriloquy", "vents", "venture", "venturer", "ventures", "venturesome", "venturesomeness", "venturing", "venturous", "venue", "venues", "venula", "venule", "venushair", "vepse", "vepsian", "veracious", "veracity", "veranda", "verandah", "verapamil", "verb", "verbal", "verbalisation", "verbalise", "verbalised", "verbaliser", "verbalises", "verbalising", "verbalism", "verbalization", "verbalize", "verbalized", "verbalizer", "verbalizes", "verbalizing", "verbally", "verbatim", "verbena", "verbiage", "verbified", "verbifies", "verbify", "verbolatry", "verbose", "verbosely", "verboseness", "verbosity", "verboten", "verbs", "verdancy", "verdant", "Verde", "verde", "verdict", "verdicts", "verdigris", "verdin", "verdolagas", "verdure", "verge", "verged", "verger", "vergil", "verging", "veridical", "verifiable", "verification", "verificatory", "verified", "verifier", "verifies", "verify", "verifying", "verily", "verisimilar", "verisimilitude", "veritable", "verity", "vermes", "vermicelli", "vermicide", "vermicular", "vermiculate", "vermiculated", "vermiculates", "vermiculation", "vermiculite", "vermiform", "vermifuge", "vermilion", "vermillion", "vermin", "verminous", "vermis", "vermont", "vermouth", "vernacular", "vernal", "vernation", "vernix", "vernonia", "veronal", "veronica", "verrazzano", "verruca", "verrucae", "verrucose", "versa", "versant", "versatile", "versatility", "verse", "versed", "verses", "versicle", "versification", "versified", "versifier", "versifies", "versify", "version", "versions", "verso", "verst", "versus", "vertebra", "vertebrae", "vertebral", "vertebrate", "vertebrates", "vertex", "verthandi", "vertical", "verticality", "vertically", "verticalness", "vertices", "verticil", "verticillate", "verticillated", "verticilliosis", "verticillium", "vertigines", "vertiginous", "vertigo", "vertigoes", "vertu", "vervain", "verve", "vervet", "very", "vesica", "vesicae", "vesical", "vesicant", "vesicate", "vesicates", "vesication", "vesicatory", "vesicle", "vesicles", "vesicopapule", "vesicular", "vesiculate", "vesiculates", "vesiculation", "vesiculitis", "vesiculovirus", "vesper", "vespertilionid", "vespid", "vessel", "vessels", "vest", "vestal", "vested", "vestiary", "vestibular", "vestibule", "vestige", "vestiges", "vestigial", "vesting", "vestiture", "vestment", "vestmental", "vestmented", "vestry", "vestryman", "vestrywoman", "vests", "vesture", "vesuvian", "vesuvianite", "vet", "vetch", "vetchling", "vetchworm", "veteran", "veterans", "veterinarian", "veterinary", "veto", "vetoed", "vetoes", "vetoing", "vetted", "vetting", "vex", "vexation", "vexatious", "vexatiously", "vexed", "vexer", "vexes", "vexilla", "vexillum", "vexing", "vfw", "vhf", "via", "viability", "viable", "viaduct", "viagra", "vial", "vials", "viand", "viatica", "viatical", "viatication", "viaticum", "viaticus", "viator", "viatores", "vibe", "vibes", "vibist", "vibracula", "vibraculum", "vibraharp", "vibramycin", "vibrancy", "vibrant", "vibraphone", "vibraphonist", "vibrate", "vibrates", "vibrating", "vibration", "vibrational", "vibrato", "vibrator", "vibratory", "vibrio", "vibrion", "vibrionic", "vibrissa", "vibrissae", "vicar", "vicarage", "vicarial", "vicariate", "vicarious", "vicariously", "vicarship", "vice", "vice-president", "vicegerent", "vicenary", "vicennial", "viceregal", "vicereine", "viceroy", "viceroyalty", "viceroyship", "vices", "vichyssoise", "vicinal", "vicinity", "vicious", "viciously", "viciousness", "vicissitude", "victim", "victimisation", "victimise", "victimised", "victimiser", "victimises", "victimising", "victimization", "victimize", "victimized", "victimizer", "victimizes", "victimizing", "victims", "victor", "victorian", "victories", "victorious", "victoriously", "victors", "victory", "victual", "victualer", "victualled", "victualler", "victualling", "vicuna", "vidar", "videlicet", "video", "videocassette", "videodisc", "videodiscs", "videodisk", "videodisks", "videos", "videotape", "videotapes", "videotaping", "vie", "viennese", "vies", "Vietnam", "vietnam", "vietnamese", "view", "viewable", "viewed", "viewer", "viewers", "viewfinder", "viewgraph", "viewier", "viewiest", "viewing", "viewless", "viewpoint", "viewpoints", "views", "viewy", "vigesimal", "vigil", "vigilance", "vigilant", "vigilante", "vigilantism", "vigilantly", "vignette", "vigor", "vigorish", "vigorous", "vigorously", "vigour", "vii", "viii", "vila", "vile", "vilely", "vileness", "vilification", "vilified", "vilifier", "vilifies", "vilify", "vilifying", "vilipend", "villa", "village", "villager", "villagers", "villages", "villain", "villainage", "villainess", "villainous", "villainousness", "villains", "villainy", "villas", "villein", "villeinage", "villi", "villoma", "villus", "vilna", "vilno", "vim", "vimen", "vimina", "vinaceous", "vinaigrette", "vinblastine", "Vincent", "vincent", "vincible", "vincristine", "vincula", "vinculum", "vindicate", "vindicated", "vindicates", "vindicating", "vindication", "vindicator", "vindicatory", "vindictive", "vindictively", "vindictiveness", "vine", "vinegar", "vinegariness", "vinegarish", "vinegarishness", "vinegarroon", "vinegarweed", "vinegary", "vinery", "vines", "vineyard", "vineyards", "viniculture", "vinifera", "vinification", "vinify", "vino", "vinous", "vintage", "vintager", "vintner", "vinyl", "vinylbenzene", "viocin", "viol", "viola", "violable", "violate", "violated", "violates", "violating", "violation", "violations", "violative", "violator", "violence", "violent", "violently", "violet", "violin", "violinist", "violist", "violoncellist", "violoncello", "viomycin", "viosterol", "vioxx", "vip", "viper", "viracept", "viraemia", "virago", "viragoes", "viral", "viramune", "virazole", "viremia", "vireo", "vires", "virga", "virgin", "virginal", "virginia", "virginity", "virgins", "virgule", "viricidal", "viricide", "viridity", "virile", "virilisation", "virilise", "virilises", "virilism", "virility", "virilization", "virilize", "virilizes", "virino", "virion", "virions", "viroid", "virological", "virologist", "virology", "virtu", "virtual", "virtually", "virtue", "virtues", "virtuosi", "virtuosity", "virtuoso", "virtuous", "virtuously", "virtuousness", "virucidal", "virucide", "virulence", "virulency", "virulent", "virulently", "virus", "viruses", "virusoid", "vis", "visa", "visage", "visaged", "visas", "viscacha", "viscera", "visceral", "viscerally", "viscid", "viscidity", "viscidly", "viscidness", "viscoelastic", "viscometer", "viscometric", "viscometry", "viscose", "viscosimeter", "viscosimetric", "viscosimetry", "viscosity", "viscount", "viscountcy", "viscountess", "viscounty", "viscous", "viscousness", "viscus", "vise", "viselike", "vishnuism", "visibility", "visible", "visibleness", "visibly", "vision", "visionary", "visioning", "visions", "visit", "visitant", "visitation", "visited", "visiting", "visitor", "visitors", "visits", "visken", "visor", "visored", "vista", "vistaril", "vistas", "visual", "visualisation", "visualisations", "visualise", "visualised", "visualiser", "visualises", "visualising", "visualization", "visualizations", "visualize", "visualized", "visualizer", "visualizes", "visualizing", "visually", "vita", "vitae", "vital", "vitalisation", "vitalise", "vitaliser", "vitalises", "vitalism", "vitalist", "vitality", "vitalization", "vitalize", "vitalizer", "vitalizes", "vitalizing", "vitally", "vitalness", "vitals", "vitamin", "vitaminise", "vitaminize", "vitamins", "vitelli", "vitellus", "vithar", "vitiate", "vitiated", "vitiates", "vitiating", "vitiation", "viticulture", "viticulturist", "vitidaceae", "vitiliginous", "vitiligo", "vitis", "vitrectomy", "vitreous", "vitrification", "vitrified", "vitrifies", "vitrify", "vitrine", "vitriol", "vitriolic", "vitriolically", "vitriolled", "vitriolling", "vitta", "vittae", "vituperate", "vituperation", "vituperative", "viva", "vivace", "vivacious", "vivaciously", "vivacity", "vivaria", "vivarium", "viverrinae", "viverrine", "vivid", "vividly", "vividness", "vivification", "vivified", "vivifies", "vivify", "vivifying", "viviparous", "vivisect", "vivisecting", "vivisection", "vivisectionist", "vivisects", "vixen", "vixenish", "VIZ.", "viz.", "vizier", "viziership", "vizor", "vizsla", "vldl", "vlf", "vocable", "vocabularies", "vocabulary", "vocal", "vocalic", "vocalisation", "vocalisations", "vocalise", "vocalised", "vocaliser", "vocalises", "vocalising", "vocalism", "vocalist", "vocalization", "vocalizations", "vocalize", "vocalized", "vocalizer", "vocalizes", "vocalizing", "vocally", "vocals", "vocation", "vocational", "vocationally", "vocative", "voces", "vociferate", "vociferates", "vociferation", "vociferator", "vociferous", "vociferously", "vodka", "vodoun", "vogue", "voguish", "voice", "voiced", "voiceless", "voicelessness", "voicemail", "voiceprint", "voicer", "voices", "voicing", "void", "voidable", "voidance", "voided", "voider", "voiding", "voile", "Voilet", "volaille", "volant", "volar", "volary", "volatile", "volatilisable", "volatilise", "volatilised", "volatilises", "volatility", "volatilizable", "volatilize", "volatilized", "volatilizes", "volcanic", "volcanically", "volcanism", "volcano", "volcanoes", "volcanology", "vole", "volition", "volitional", "volitionally", "volkslied", "volkslieder", "volley", "volleyball", "volleying", "volt", "volta", "voltage", "voltaic", "voltarean", "voltaren", "voltarian", "volte", "voltmeter", "volubility", "voluble", "volubly", "volume", "volumed", "volumes", "volumeter", "volumetric", "volumetrical", "volumetrically", "voluminosity", "voluminous", "voluminously", "voluminousness", "voluntarily", "voluntary", "volunteer", "volunteered", "volunteers", "voluptuary", "voluptuous", "voluptuously", "voluptuousness", "volute", "voluted", "volution", "volva", "volvae", "volvelle", "volvulus", "vomer", "vomit", "vomited", "vomiter", "vomiting", "vomitive", "vomitory", "vomits", "vomitus", "voodoo", "voodooism", "voracious", "voraciously", "voraciousness", "voracity", "vortex", "vorticella", "vorticellae", "vortices", "votary", "vote", "voted", "voteless", "voter", "voters", "votes", "voting", "votive", "votyak", "vouch", "vouchee", "voucher", "vouchers", "vouches", "vouching", "vouchsafe", "vouge", "voussoir", "vow", "vowed", "vowel", "vowelise", "vowelize", "vowellike", "vowels", "vower", "vowing", "vows", "vox", "voyage", "voyager", "voyeur", "voyeurism", "voyeuristic", "voyeuristical", "voyeuristically", "vroom", "vrooming", "VS.", "Vs.", "vs.", "VT.", "Vt.", "vt.", "vulcanisation", "vulcanise", "vulcanised", "vulcaniser", "vulcanises", "vulcanite", "vulcanization", "vulcanize", "vulcanized", "vulcanizer", "vulcanizes", "vulcanology", "vulgar", "vulgarian", "vulgarisation", "vulgarise", "vulgarised", "vulgariser", "vulgarises", "vulgarising", "vulgarism", "vulgarity", "vulgarization", "vulgarize", "vulgarized", "vulgarizer", "vulgarizes", "vulgarizing", "vulgarly", "vulnerabilities", "vulnerability", "vulnerable", "vulnerably", "vulpecular", "vulpine", "vulture", "vulturine", "vulturous", "vulva", "vulvae", "vulval", "vulvar", "vulvectomy", "vulvitis", "vulvovaginitis", "vying", "W.VA.", "W.Va.", "w.va.", "wa", "wackier", "wackiest", "wackily", "wacko", "wacky", "wad", "wadded", "waddied", "waddies", "wadding", "waddle", "waddler", "waddles", "waddling", "waddy", "wade", "wader", "wadi", "wading", "wadset", "wadsets", "wadsetted", "wadsetting", "wafer", "waffle", "waffled", "waffler", "waffles", "waffling", "waft", "wafting", "wafts", "wafture", "wag", "wage", "waged", "wager", "wagerer", "wages", "wagged", "waggery", "wagging", "waggish", "waggishly", "waggishness", "waggle", "waggles", "waggling", "waggon", "waggoner", "waggons", "waggonwright", "waging", "wagnerian", "wagon", "wagoner", "wagons", "wagonwright", "wags", "wagtail", "wahabi", "wahabism", "wahhabis", "wahoo", "wahunsonacock", "wahvey", "waif", "wail", "wailer", "wailful", "wailing", "wainscot", "wainscoted", "wainscoting", "wainscotting", "wainwright", "waist", "waistband", "waistcloth", "waistcoat", "waistline", "wait", "waited", "waiter", "waiters", "waiting", "waitress", "waitresses", "waitressing", "waits", "waive", "waived", "waiver", "waivers", "waives", "waiving", "wake", "wakeboard", "wakeful", "wakefulness", "wakeless", "waken", "wakening", "wakens", "waker", "wakes", "waking", "waldmeister", "wale", "Wales", "wales", "walhalla", "walk", "walkabout", "walkaway", "walked", "walker", "walkers", "walking", "walkingstick", "walkout", "walkouts", "walkover", "walks", "walkway", "walkways", "wall", "wallaby", "wallah", "wallboard", "wallet", "walleye", "walleyed", "wallflower", "walling", "wallop", "walloper", "walloping", "wallops", "wallow", "wallowing", "wallows", "wallpaper", "wallpaperer", "wallpapering", "walls", "wally", "walnut", "walrus", "waltz", "waltzer", "waltzing", "wamble", "wambles", "wampee", "wampum", "wampumpeag", "wan", "wand", "wandala", "wander", "wanderer", "wandering", "wanderjahr", "wanderjahre", "wanderlust", "wanders", "wandflower", "wane", "waned", "wanes", "wangle", "wangler", "wangles", "wangling", "waning", "wank", "wanker", "wanking", "wanly", "wannabe", "wannabee", "wanned", "wanner", "wanness", "wannest", "wanning", "want", "wanted", "wanter", "wanting", "wanton", "wantonly", "wantonness", "wants", "wapiti", "war", "waratah", "warble", "warbler", "warbles", "warbling", "ward", "warded", "warden", "wardenship", "warder", "wardership", "warding", "wardress", "wardrobe", "wardroom", "ware", "warehouse", "warehouseman", "warehouser", "warehouses", "warehousing", "wares", "warfare", "warfarin", "warhead", "warheads", "warhorse", "warier", "wariest", "warily", "wariness", "warlike", "warlock", "warlord", "warlords", "warlpiri", "warm", "warmed", "warmer", "warmhearted", "warmheartedness", "warming", "warmly", "warmness", "warmonger", "warmongering", "warms", "warmth", "warn", "warned", "warner", "warning", "warnings", "warns", "warp", "warpath", "warped", "warping", "warplane", "warps", "warragal", "warrant", "warranted", "warrantee", "warranter", "warranting", "warrantor", "warrants", "warranty", "warred", "warrener", "warrigal", "warring", "warrior", "warriorlike", "warriors", "wars", "warsaw", "warship", "wart", "warthog", "wartime", "wartlike", "wartweed", "wartwort", "warty", "wary", "WAS", "Was", "was", "wasabi", "wash", "WASH.", "Wash.", "wash.", "washable", "washables", "washbasin", "washboard", "washbowl", "washcloth", "washday", "washed", "washer", "washerman", "washerwoman", "washes", "washhouse", "washier", "washiest", "washing", "washington", "washingtonian", "washout", "washrag", "washroom", "washstand", "washtub", "washup", "washwoman", "washy", "WASN'T", "Wasn't", "wasn't", "WASNT", "Wasnt", "wasnt", "WASN\u2019T", "Wasn\u2019t", "wasn\u2019t", "wasp", "waspish", "wassail", "wassailer", "wassails", "wastage", "waste", "wastebasket", "wastebin", "wasted", "wasteful", "wastefully", "wastefulness", "wasteland", "waster", "wastes", "wastewater", "wasteweir", "wasteyard", "wasting", "wastrel", "watch", "watchband", "watchdog", "watched", "watcher", "watchers", "watches", "watchful", "watchfully", "watchfulness", "watching", "watchmaker", "watchman", "watchstrap", "watchtower", "watchword", "water", "waterbird", "waterborne", "waterbuck", "watercannon", "watercolor", "watercolorist", "watercolors", "watercolour", "watercolourist", "watercolours", "watercourse", "watercraft", "watercress", "waterdog", "watered", "waterer", "waterfall", "waterfalls", "waterfinder", "waterfowl", "waterfront", "wateriness", "watering", "waterleaf", "waterless", "waterlessness", "waterline", "waterlogged", "waterman", "watermark", "watermeal", "watermelon", "waterpower", "waterproof", "waterproofed", "waterproofing", "waterproofs", "waters", "waterscape", "watershed", "waterside", "waterskin", "waterspout", "watertight", "waterway", "waterweed", "waterwheel", "waterworks", "waterworn", "watery", "wats", "wattage", "wattle", "wattmeter", "watusi", "watutsi", "waul", "wave", "waveband", "waved", "waveform", "wavefront", "waveguide", "wavelength", "wavelengths", "wavelet", "wavelike", "waver", "wavered", "waverer", "wavering", "wavers", "waves", "wavier", "waviest", "waviness", "waving", "wavy", "waw", "wawl", "wax", "waxberry", "waxed", "waxen", "waxes", "waxflower", "waxier", "waxiest", "waxiness", "waxing", "waxlike", "waxmallow", "waxwing", "waxwork", "waxy", "waxycap", "way", "waybill", "wayfarer", "wayfaring", "waylay", "waylaying", "waylays", "ways", "wayside", "wayward", "wbc", "wbn", "WE", "We", "we", "WE'D", "We'd", "we'd", "WE'D'VE", "We'd've", "we'd've", "WE'LL", "We'll", "we'll", "WE'RE", "We're", "we're", "WE'VE", "We've", "we've", "weak", "weaken", "weakened", "weakener", "weakening", "weakens", "weaker", "weakest", "weakfish", "weakfishes", "weaklier", "weakliest", "weakling", "weakly", "weakness", "weaknesses", "weal", "weald", "wealth", "wealthier", "wealthiest", "wealthily", "wealthiness", "wealthy", "wean", "weaned", "weaning", "weans", "weapon", "weaponed", "weaponize", "weaponizes", "weaponless", "weaponry", "weapons", "wear", "wearable", "wearer", "wearied", "wearier", "wearies", "weariest", "wearily", "weariness", "wearing", "wearisome", "wears", "weary", "wearying", "weasel", "weaseled", "weaseling", "weaselled", "weaselling", "weather", "weatherboard", "weatherboarding", "weathercock", "weathered", "weatherglass", "weathering", "weatherliness", "weatherly", "weatherman", "weatherproof", "weatherproofs", "weatherstrip", "weatherstripped", "weatherstripping", "weathervane", "weatherworn", "weave", "weaver", "weaverbird", "weaves", "weaving", "web", "webbed", "webbier", "webbiest", "webbing", "webby", "webcam", "webfoot", "weblike", "webmaster", "webpage", "website", "websites", "webworm", "wed", "WED.", "Wed.", "wed.", "wedded", "wedding", "weddings", "wedel", "wedge", "wedged", "wedgie", "wedging", "wedlock", "wednesday", "weds", "wee", "weed", "weeder", "weedier", "weediest", "weeding", "weedkiller", "weedless", "weeds", "weedy", "week", "weekday", "weekdays", "weekend", "weekender", "weekends", "weeklong", "weekly", "weeknight", "weeks", "weeness", "weenie", "weenier", "weeniest", "weensier", "weensiest", "weensy", "weeny", "weep", "weeper", "weepier", "weepiest", "weepiness", "weeping", "weeps", "weepy", "weevil", "weewee", "weft", "weigela", "weigh", "weighbridge", "weighed", "weigher", "weighing", "weighs", "weight", "weighted", "weightier", "weightiest", "weightily", "weightiness", "weighting", "weightless", "weightlessness", "weightlift", "weightlifter", "weightlifting", "weightlifts", "weights", "weighty", "weir", "weird", "weirdie", "weirdly", "weirdness", "weirdo", "weirdy", "weisenheimer", "weka", "welch", "welcher", "welches", "welcome", "welcomed", "welcomer", "welcomes", "welcoming", "weld", "welded", "welder", "welding", "weldment", "welds", "welfare", "welfarist", "welkin", "Well", "well", "wellbeing", "wellborn", "wellerism", "wellhead", "welling", "wellness", "wellpoint", "wells", "wellspring", "welsh", "welsher", "welshes", "welt", "welter", "welterweight", "weltschmerz", "welwitschia", "wen", "wench", "wencher", "wenching", "wend", "wending", "wends", "went", "wept", "WERE", "Were", "were", "WEREN'T", "Weren't", "weren't", "WERENT", "Werent", "werent", "WEREN\u2019T", "Weren\u2019t", "weren\u2019t", "werewolf", "werewolves", "wesleyan", "wesleyism", "west", "westbound", "wester", "westerly", "western", "westerner", "westernisation", "westernise", "westernised", "westernises", "westernising", "westernization", "westernize", "westernized", "westernizes", "westernizing", "westernmost", "westmost", "westside", "westward", "westwards", "wet", "wetback", "wether", "wetland", "wetness", "wetnurse", "wets", "wetted", "wetter", "wettest", "wetting", "WEVE", "Weve", "weve", "WE\u2019D", "We\u2019d", "we\u2019d", "WE\u2019D\u2019VE", "We\u2019d\u2019ve", "we\u2019d\u2019ve", "WE\u2019LL", "We\u2019ll", "we\u2019ll", "WE\u2019RE", "We\u2019re", "we\u2019re", "WE\u2019VE", "We\u2019ve", "we\u2019ve", "whack", "whacked", "whacker", "whackier", "whackiest", "whacking", "whacko", "whacks", "whacky", "whale", "whaleboat", "whalebone", "whaler", "whales", "whalesucker", "whaling", "wham", "whammed", "whamming", "whammy", "whang", "whangs", "whap", "whapped", "whapping", "whaps", "wharf", "wharfage", "wharves", "WHAT", "What", "what", "WHAT'D", "What'd", "what'd", "WHAT'LL", "What'll", "what'll", "WHAT'RE", "What're", "what're", "WHAT'S", "What's", "what's", "WHAT'VE", "What've", "what've", "whatchamacallit", "whatchamacallum", "WHATD", "Whatd", "whatd", "Whatever", "whatever", "WHATLL", "Whatll", "whatll", "whatnot", "WHATRE", "Whatre", "whatre", "WHATS", "Whats", "whats", "whatsis", "whatsoever", "WHATVE", "Whatve", "whatve", "WHAT\u2019D", "What\u2019d", "what\u2019d", "WHAT\u2019LL", "What\u2019ll", "what\u2019ll", "WHAT\u2019RE", "What\u2019re", "what\u2019re", "WHAT\u2019S", "What\u2019s", "what\u2019s", "WHAT\u2019VE", "What\u2019ve", "what\u2019ve", "wheal", "wheat", "wheatear", "wheaten", "wheatfield", "wheatflake", "wheatgrass", "wheatworm", "wheedle", "wheedler", "wheedles", "wheedling", "wheel", "wheelbarrow", "wheelbase", "wheelchair", "wheeled", "wheeler", "wheelhouse", "wheelless", "wheels", "wheelwork", "wheelwright", "wheeze", "wheezes", "wheezily", "wheeziness", "wheezing", "wheezingly", "wheezy", "whelk", "whelm", "whelms", "whelp", "WHEN", "When", "when", "WHEN'S", "When's", "when's", "whence", "Whenever", "whenever", "WHENS", "Whens", "whens", "WHEN\u2019S", "When\u2019s", "when\u2019s", "WHERE", "Where", "where", "WHERE'D", "Where'd", "where'd", "WHERE'RE", "Where're", "where're", "WHERE'S", "Where's", "where's", "WHERE'VE", "Where've", "where've", "whereabouts", "Whereas", "whereas", "Whereby", "whereby", "WHERED", "Whered", "whered", "wherefore", "Wherein", "wherein", "WHERERE", "Wherere", "wherere", "WHERES", "Wheres", "wheres", "wheresoever", "WHEREVE", "Whereve", "whereve", "Wherever", "wherever", "wherewithal", "WHERE\u2019D", "Where\u2019d", "where\u2019d", "WHERE\u2019RE", "Where\u2019re", "where\u2019re", "WHERE\u2019S", "Where\u2019s", "where\u2019s", "WHERE\u2019VE", "Where\u2019ve", "where\u2019ve", "wherry", "whet", "Whether", "whether", "whets", "whetstone", "whetted", "whetting", "whey", "WHICH", "Which", "which", "WHICH'S", "Which's", "which's", "Whichever", "whichever", "WHICHS", "Whichs", "whichs", "WHICH\u2019S", "Which\u2019s", "which\u2019s", "whicker", "whidah", "whiff", "whiffer", "whiffletree", "While", "while", "whim", "whimper", "whimpering", "whimpers", "whimsey", "whimsical", "whimsicality", "whimsically", "whimsier", "whimsiest", "whimsy", "whin", "whinberry", "whinchat", "whine", "whiner", "whines", "whiney", "whining", "whinnied", "whinny", "whinnying", "whinstone", "whiny", "whip", "whipcord", "whiplash", "whiplike", "whipped", "whipper", "whippersnapper", "whippet", "whipping", "whippletree", "whippoorwill", "whippy", "whips", "whipsaw", "whipsawed", "whipsnake", "whipstitch", "whipstitching", "whiptail", "whir", "whirl", "whirler", "whirligig", "whirling", "whirlpool", "whirls", "whirlwind", "whirlybird", "whirr", "whirred", "whirring", "whirrs", "whirs", "whish", "whishes", "whisk", "whisked", "whisker", "whiskered", "whiskerless", "whiskery", "whiskey", "whisking", "whisks", "whisky", "whisper", "whispered", "whisperer", "whispering", "whispers", "whist", "whistle", "whistleblower", "whistled", "whistler", "whistles", "whistlestop", "whistling", "whit", "white", "whitebait", "whitecap", "whitecup", "whiteface", "whitefish", "whitefishes", "whitefly", "whitelash", "whiten", "whitened", "whitener", "whiteness", "whitening", "whitens", "whiteout", "whites", "whitetail", "whitethorn", "whitethroat", "whitewash", "whitewashed", "whitewashes", "whitewashing", "whitewater", "whitewood", "whitey", "whiting", "whitish", "whitlavia", "whitlow", "whitlowwort", "whitsunday", "whitsuntide", "whittle", "whittled", "whittler", "whittles", "whittling", "whitweek", "whiz", "whizbang", "whizz", "whizzbang", "whizzed", "whizzes", "whizzing", "WHO", "Who", "who", "WHO'D", "Who'd", "who'd", "WHO'D'VE", "Who'd've", "who'd've", "WHO'LL", "Who'll", "who'll", "WHO'RE", "Who're", "who're", "WHO'S", "Who's", "who's", "WHO'VE", "Who've", "who've", "whodunit", "whoever", "whole", "wholehearted", "wholeheartedly", "wholeheartedness", "wholemeal", "wholeness", "wholesale", "wholesaler", "wholesalers", "wholesome", "wholesomely", "wholesomeness", "wholly", "WHOM", "Whom", "whom", "whomp", "whomping", "WHOMST'D'VE", "Whomst'd've", "whomst'd've", "WHOMST\u2019D\u2019VE", "Whomst\u2019d\u2019ve", "whomst\u2019d\u2019ve", "whoop", "whoopee", "whooper", "whooping", "whoops", "whoosh", "whooshes", "whooshing", "whop", "whopped", "whopper", "whopping", "whops", "whore", "whoredom", "whorehouse", "whoremaster", "whoremonger", "whoreson", "whorl", "whorled", "whorlywort", "whortleberry", "WHOS", "Whos", "whos", "Whose", "whose", "WHOVE", "Whove", "whove", "WHO\u2019D", "Who\u2019d", "who\u2019d", "WHO\u2019D\u2019VE", "Who\u2019d\u2019ve", "who\u2019d\u2019ve", "WHO\u2019LL", "Who\u2019ll", "who\u2019ll", "WHO\u2019RE", "Who\u2019re", "who\u2019re", "WHO\u2019S", "Who\u2019s", "who\u2019s", "WHO\u2019VE", "Who\u2019ve", "who\u2019ve", "WHY", "Why", "why", "WHY'D", "Why'd", "why'd", "WHY'RE", "Why're", "why're", "WHY'S", "Why's", "why's", "WHYD", "Whyd", "whyd", "whydah", "WHYRE", "Whyre", "whyre", "WHYS", "Whys", "whys", "WHY\u2019D", "Why\u2019d", "why\u2019d", "WHY\u2019RE", "Why\u2019re", "why\u2019re", "WHY\u2019S", "Why\u2019s", "why\u2019s", "wiccan", "wick", "wicked", "wickedly", "wickedness", "wicker", "wickerwork", "wicket", "wickiup", "wickliffe", "wickup", "wiclif", "wicopy", "wide", "wideband", "widely", "widen", "widened", "wideness", "widening", "widens", "wider", "widespread", "widest", "widgeon", "widget", "widow", "widowed", "widower", "widowhood", "widowman", "width", "wieland", "wield", "wielded", "wieldier", "wieldiest", "wielding", "wields", "wieldy", "wienerwurst", "wiesenboden", "wife", "wifelike", "wifely", "wifi", "wig", "wigeon", "wigged", "wigging", "wiggle", "wiggled", "wiggler", "wiggles", "wiggliness", "wiggling", "wiggly", "wigless", "wigmaker", "wigs", "wigwag", "wigwagged", "wigwagging", "wigwam", "wikiup", "wild", "wildcat", "wildcatted", "wildcatter", "wildcatting", "wildebeest", "wilderness", "wildfire", "wildfires", "wildflower", "wildfowl", "wilding", "wildlife", "wildly", "wildness", "wile", "Wiley", "wilful", "wilfully", "wilfulness", "wilier", "wiliest", "wiliness", "WILL", "Will", "will", "willet", "willful", "willfully", "willfulness", "willies", "willing", "willingly", "willingness", "willow", "willowherb", "willowware", "willowy", "willpower", "wills", "wilno", "wilsonian", "wilt", "wilted", "wilting", "wilts", "wily", "wimble", "wimp", "wimpish", "wimple", "wimpy", "win", "wince", "winces", "wincey", "winceyette", "winch", "winching", "wincing", "wind", "windage", "windbag", "windblown", "windbreak", "windbreaker", "windburn", "windburned", "windburnt", "windcheater", "winded", "winder", "windfall", "windflower", "windier", "windiest", "windily", "windiness", "winding", "windjammer", "windlass", "windless", "windlessness", "windmill", "window", "windowpane", "windows", "windowsill", "windpipe", "winds", "windscreen", "windshield", "windsock", "windstorm", "windsurf", "windsurfing", "windswept", "windtalker", "windup", "windward", "windy", "wine", "wineberry", "wineglass", "winemaker", "winemaking", "winepress", "winery", "wines", "wineskin", "winey", "winfred", "wing", "wingback", "winged", "winger", "winging", "wingless", "winglike", "wingman", "wings", "wingspan", "wingspread", "wingstem", "winier", "winiest", "wining", "wink", "winker", "winking", "winkle", "winks", "winless", "winner", "winners", "winning", "winningest", "winnow", "winnowing", "winnows", "wino", "wins", "winsome", "winsomely", "winsomeness", "winter", "wintera", "winterberry", "winterfed", "winterfeed", "wintergreen", "winterier", "winteriest", "wintering", "winterise", "winterises", "winterize", "winterizes", "winterizing", "winters", "wintertime", "wintery", "wintrier", "wintriest", "wintry", "winwin", "winy", "wipe", "wiped", "wipeout", "wiper", "wipes", "wiping", "wire", "wired", "wirehair", "wireless", "wireman", "wirer", "wires", "wiretap", "wiretapper", "wirework", "wireworm", "wirier", "wiriest", "wiriness", "wiring", "wiry", "WISC.", "Wisc.", "wisc.", "wisconsin", "wisdom", "wise", "wiseacre", "wisecrack", "wisecracking", "wisely", "wiseness", "wisenheimer", "wisent", "wiser", "wish", "wishbone", "wished", "wishes", "wishful", "wishfully", "wishfulness", "wishing", "wisp", "wispier", "wispiest", "wisplike", "wispy", "wistaria", "wisteria", "wistful", "wistfully", "wistfulness", "wit", "witch", "witchcraft", "witchery", "witches", "witchgrass", "witching", "witchlike", "With", "with", "withal", "withdraw", "withdrawal", "withdrawals", "withdrawer", "withdrawing", "withdrawn", "withdrawnness", "withdraws", "withdrew", "withe", "wither", "withered", "withering", "witheringly", "withers", "withheld", "withhold", "withholder", "withholding", "withholds", "Within", "within", "Without", "without", "withstand", "withstander", "withstanding", "withstands", "withstood", "withy", "witless", "witloof", "witness", "witnessed", "witnesser", "witnesses", "witnessing", "wits", "wittgensteinian", "witticism", "wittier", "wittiest", "wittily", "wittiness", "witting", "wittingly", "wittol", "witty", "wive", "wivern", "wives", "wiz", "wizard", "wizardly", "wizardry", "wizen", "wizened", "wlan", "wmd", "wmo", "wnw", "WO", "Wo", "wo", "woad", "woadwaxen", "wobble", "wobbler", "wobbles", "wobbling", "wobbly", "wodan", "woe", "woebegone", "woeful", "woefully", "woefulness", "woes", "wog", "wok", "woke", "woken", "wold", "wolf", "wolfbane", "wolffish", "wolffishes", "wolfhound", "wolfish", "wolfishly", "wolflike", "wolfman", "wolfram", "wolframite", "wolfsbane", "wollastonite", "wolverine", "wolves", "woman", "womanhood", "womanise", "womanised", "womaniser", "womanisers", "womanises", "womanish", "womanishness", "womanising", "womanize", "womanized", "womanizer", "womanizers", "womanizes", "womanizing", "womankind", "womanlike", "womanliness", "womanly", "womb", "wombat", "women", "won", "WON'T", "Won't", "won't", "wonder", "wonderberry", "wondered", "wonderer", "wonderful", "wonderfully", "wonderfulness", "wondering", "wonderingly", "wonderland", "wonderment", "wonders", "wonderworking", "wondrous", "wondrously", "wonk", "wonkier", "wonkiest", "wonky", "WONT", "Wont", "wont", "wonted", "wonton", "WON\u2019T", "Won\u2019t", "won\u2019t", "woo", "wood", "woodbine", "woodborer", "woodcarver", "woodcarving", "woodchuck", "woodcock", "woodcraft", "woodcreeper", "woodcut", "woodcutter", "wooded", "wooden", "woodenly", "woodenness", "woodenware", "woodfern", "woodgrain", "woodgraining", "woodhewer", "woodier", "woodiest", "woodiness", "woodland", "woodlet", "woodlice", "woodlouse", "woodman", "woodpecker", "woodpile", "woodruff", "woods", "woodscrew", "woodshed", "woodsia", "woodsier", "woodsiest", "woodsiness", "woodsman", "woodsy", "woodwaxen", "woodwind", "woodwork", "woodworker", "woodworking", "woodworm", "woody", "wooed", "wooer", "wooes", "woof", "woofer", "woohoo", "wooing", "wool", "woolen", "woolens", "woolgather", "woolgatherer", "woolgathering", "woolies", "woollen", "woollens", "woollier", "woollies", "woolliest", "woolly", "woolsorter", "wooly", "wooo", "woooot", "woosh", "wooshes", "wooshing", "woow", "woozier", "wooziest", "woozy", "wop", "worcestershire", "word", "wordbook", "worded", "wordfinder", "wordier", "wordiest", "wordily", "wordiness", "wording", "wordless", "wordlessly", "wordmonger", "wordnet", "wordplay", "words", "wordsmith", "wordsworthian", "wordy", "wore", "work", "workable", "workaday", "workaholic", "workaholism", "workbag", "workbasket", "workbench", "workboard", "workbook", "workbox", "workday", "worked", "worker", "workers", "workfellow", "workflow", "workforce", "workhorse", "workhouse", "working", "workingman", "workings", "workload", "workman", "workmanlike", "workmanship", "workmate", "workout", "workpiece", "workplace", "workplaces", "workroom", "works", "worksheet", "workshop", "workshops", "workspace", "workstation", "worktable", "workwear", "workweek", "world", "worldlier", "worldliest", "worldliness", "worldling", "worldly", "worlds", "worldwide", "worm", "wormcast", "wormhole", "wormier", "wormiest", "wormlike", "worms", "wormseed", "wormwood", "wormy", "worn", "worried", "worriedly", "worrier", "worries", "worriment", "worrisome", "worry", "worrying", "worryingly", "worrywart", "worse", "worsen", "worsened", "worsening", "worsens", "worship", "worshiped", "worshiper", "worshipful", "worshiping", "worshipped", "worshipper", "worshippers", "worshipping", "worships", "worst", "worsted", "wort", "worth", "worthful", "worthier", "worthiest", "worthily", "worthiness", "worthless", "worthlessly", "worthlessness", "worthwhile", "worthwhileness", "worthy", "WOULD", "Would", "would", "WOULD'VE", "Would've", "would've", "WOULDN'T", "Wouldn't", "wouldn't", "WOULDNT", "Wouldnt", "wouldnt", "WOULDN\u2019T", "Wouldn\u2019t", "wouldn\u2019t", "WOULDVE", "Wouldve", "wouldve", "WOULD\u2019VE", "Would\u2019ve", "would\u2019ve", "wound", "wounded", "wounding", "wounds", "woven", "wow", "wowing", "wowow", "wows", "wowww", "woz", "wpm", "wrack", "wracked", "wracking", "wraith", "wraithlike", "wrangle", "wrangler", "wrangles", "wrangling", "wrap", "wraparound", "wrapped", "wrapper", "wrapping", "wraps", "wrasse", "wrath", "wrathful", "wrathfully", "wrawl", "wreak", "wreaked", "wreaking", "wreaks", "wreath", "wreathe", "wreck", "wreckage", "wrecked", "wrecker", "wreckfish", "wreckfishes", "wrecking", "wrecks", "wrench", "wrenched", "wrenches", "wrenching", "wrest", "wrested", "wrester", "wresting", "wrestle", "wrestler", "wrestlers", "wrestles", "wrestling", "wrests", "wretch", "wretched", "wretchedly", "wretchedness", "wrick", "wried", "wrier", "wriest", "wriggle", "wriggler", "wriggles", "wriggling", "wriggly", "wright", "wring", "wringer", "wringing", "wrings", "wrinkle", "wrinkled", "wrinkleless", "wrinkleproof", "wrinkles", "wrinkling", "wrinkly", "wrist", "wristband", "wristlet", "wrists", "wristwatch", "writ", "write", "writer", "writers", "writes", "writhe", "writhed", "writhen", "writhes", "writhing", "writing", "writings", "written", "wrong", "wrongdoer", "wrongdoers", "wrongdoing", "wrongdoings", "wronged", "wrongful", "wrongfully", "wrongfulness", "wrongheaded", "wrongheadedly", "wronging", "wrongly", "wrongness", "wrongs", "Wrote", "wrote", "wroth", "wrothful", "wrought", "wrung", "wry", "wryer", "wryest", "wryly", "wrymouth", "wryneck", "wsw", "wtc", "wtf", "wtff", "wtfff", "wto", "wtv", "wuerzburg", "wulfenite", "wulfila", "wunderkind", "wunderkinder", "wurtzite", "wuss", "www", "wyat", "wyclif", "wye", "wynfrith", "WYO.", "Wyo.", "wyo.", "wyoming", "wysiwyg", "wytensin", "wyvern", "X-rays", "x-rays", "xanax", "xanthate", "xanthelasma", "xanthemia", "xanthine", "xanthoma", "xanthomatosis", "xanthomonad", "xanthophyl", "xanthophyll", "xanthopsia", "xanthosis", "xanthous", "xenogeneic", "xenogenesis", "xenograft", "xenolith", "xenon", "xenophobia", "xenophobic", "xenotime", "xenotransplant", "xenotransplantation", "xeranthemum", "xeric", "xeroderma", "xerodermia", "xerographic", "xerography", "xeroma", "xerophile", "xerophthalmia", "xerophthalmus", "xerophyte", "xerophytic", "xeroradiography", "xerostomia", "xerotes", "xerox", "xiphisterna", "xiphisternum", "xizang", "xmas", "xo", "xoxo", "xoxoxo", "xoxoxoxo", "xylem", "xylene", "xylocaine", "xylol", "xylophone", "xylophonist", "xylose", "xylosma", "xyy", "Y", "y", "Y'ALL", "Y'all", "y'all", "Y'ALL'D'VE", "Y'all'd've", "y'all'd've", "ya", "yacca", "yacht", "yachting", "yachts", "yachtsman", "yachtswoman", "yack", "yacking", "yafo", "yagi", "yah", "yahoo", "yahve", "yahveh", "yahwe", "yak", "yakked", "yakking", "yakuza", "YALL", "Yall", "yall", "YALLDVE", "Yalldve", "yalldve", "yaltopya", "yam", "yamaltu", "yammer", "yammering", "yammers", "yang", "yangtze", "yank", "yanked", "yankee", "yanker", "yanking", "yanks", "yanquapin", "yap", "yapped", "yapping", "yard", "yardage", "yardarm", "yardbird", "yarder", "yardgrass", "yardie", "yardman", "yardmaster", "yards", "yardstick", "yare", "yarer", "yarest", "yarmelke", "yarmulka", "yarmulke", "yarn", "yarrow", "yashmac", "yashmak", "yataghan", "yatobyo", "yaup", "yautia", "yaw", "yawl", "yawn", "yawner", "yawning", "yawns", "yawp", "yaws", "yay", "ybit", "ycleped", "YD.", "Yd.", "yd.", "ye", "yea", "Yeah", "yeah", "year", "yearbook", "yearling", "yearlong", "yearly", "yearn", "yearner", "yearning", "yearningly", "yearns", "years", "yeast", "yeastier", "yeastiest", "yeastlike", "yeasty", "yeatsian", "yeddo", "yedo", "yeees", "yekaterinoslav", "yell", "yelled", "yeller", "yelling", "yellow", "yellowbird", "yellowcake", "yellowed", "yellowfin", "yellowhammer", "yellowing", "yellowish", "yellowlegs", "yellowness", "yellowtail", "yellowthroat", "yellowwood", "yells", "yelp", "yelped", "yelping", "yelps", "Yemen", "yemen", "yemeni", "yen", "yenisey", "yenned", "yenning", "yenta", "yeoman", "yeomanry", "yep", "Yes", "yes", "yeshiva", "yeshivah", "yeshivahs", "yeshivoth", "yess", "yesss", "yesterday", "yesteryear", "Yet", "yet", "yeti", "yew", "yezo", "ygdrasil", "yhvh", "yhwh", "yib", "yibit", "yid", "yield", "yielded", "yielder", "yielding", "yieldingly", "yields", "yin", "yip", "yisrael", "ylem", "yob", "yobbo", "yobibit", "yobibyte", "yobo", "yodel", "yodeled", "yodeling", "yodelled", "yodeller", "yodelling", "yodels", "yodh", "yoga", "yoghourt", "yoghourts", "yoghurt", "yoghurts", "yogi", "yogic", "yogin", "yogistic", "yogurt", "yogurts", "yoke", "yokel", "yokelish", "yoking", "yolk", "yon", "yonder", "yore", "York", "york", "yottabit", "yottabyte", "YOU", "You", "you", "YOU'D", "You'd", "you'd", "YOU'D'VE", "You'd've", "you'd've", "YOU'DN'T'VE", "You'dn't've", "you'dn't've", "YOU'LL", "You'll", "you'll", "YOU'LL'VE", "You'll've", "you'll've", "YOU'RE", "You're", "you're", "YOU'VE", "You've", "you've", "YOUD", "Youd", "youd", "YOULL", "Youll", "youll", "young", "younger", "youngest", "youngish", "youngness", "youngster", "youngsters", "younker", "Your", "your", "YOURE", "Youre", "youre", "yours", "yourself", "yourselves", "youth", "youthful", "youthfully", "youthfulness", "youths", "YOUVE", "Youve", "youve", "YOU\u2019D", "You\u2019d", "you\u2019d", "YOU\u2019DN\u2019T\u2019VE", "You\u2019dn\u2019t\u2019ve", "you\u2019dn\u2019t\u2019ve", "YOU\u2019D\u2019VE", "You\u2019d\u2019ve", "you\u2019d\u2019ve", "YOU\u2019LL", "You\u2019ll", "you\u2019ll", "YOU\u2019LL\u2019VE", "You\u2019ll\u2019ve", "you\u2019ll\u2019ve", "YOU\u2019RE", "You\u2019re", "you\u2019re", "YOU\u2019VE", "You\u2019ve", "you\u2019ve", "yowl", "yowling", "yowls", "ypres", "yr", "ytterbite", "ytterbium", "yttrium", "yucateco", "yucca", "yucky", "yugoslav", "yugoslavia", "yugoslavian", "yule", "yuletide", "yum", "yuman", "yummier", "yummiest", "yummy", "yuppie", "yurt", "Y\u2019ALL", "Y\u2019all", "y\u2019all", "Y\u2019ALL\u2019D\u2019VE", "Y\u2019all\u2019d\u2019ve", "y\u2019all\u2019d\u2019ve", "zabaglione", "zacharias", "zaftig", "zag", "zaire", "zairean", "zairese", "zakat", "zalcitabine", "zaman", "zamang", "Zambia", "zambia", "zambian", "zamboorak", "zamburak", "zamburek", "zamia", "zamindari", "zamindaris", "zanier", "zaniest", "zantac", "zany", "zap", "zapotec", "zapotecan", "zapped", "zapper", "zapping", "zarathustra", "zarf", "zarontin", "zarpanit", "zarqa", "zayin", "zbit", "zdv", "zeal", "Zealand", "zealand", "zealot", "zealotry", "zealots", "zealous", "zealously", "zeaxanthin", "zebibit", "zebibyte", "zebra", "zebrawood", "zebu", "zecchini", "zecchino", "zed", "zee", "zend", "zenith", "zenithal", "zeno", "zeolite", "zep", "zeppo", "zero", "zeroes", "zeroing", "zeroth", "zest", "zestful", "zestfully", "zestfulness", "zestily", "zestril", "zesty", "zeta", "zetland", "zettabit", "zettabyte", "zeugma", "zey", "zib", "zibit", "zidovudine", "zig", "zigadene", "ziggurat", "zigzag", "zigzagged", "zigzagging", "zikkurat", "zikurat", "zilch", "zill", "zillion", "Zimbabwe", "zimbabwe", "zimbabwean", "zimmer", "zinacef", "zinc", "zing", "zinger", "zinkenite", "zinnia", "zinnwaldite", "zion", "zionist", "zip", "zipped", "zipper", "zippier", "zippiest", "zipping", "zippo", "zippy", "zips", "zirbanit", "zircon", "zirconia", "zirconium", "zit", "zither", "zithern", "zithromax", "ziti", "zizz", "zloty", "zoa", "zoaea", "zoaeae", "zoanthropy", "zocor", "zodiac", "zodiacal", "zoea", "zoeae", "zoeas", "zoftig", "zoic", "zoisia", "zolaesque", "zoloft", "zombi", "zombie", "zona", "zonal", "zonary", "zone", "zones", "zoning", "zonula", "zonule", "zoo", "zooerastia", "zooerasty", "zooflagellate", "zooid", "zoolatry", "zoological", "zoologist", "zoology", "zoom", "zoomastigote", "zoomed", "zooming", "zoomorphism", "zooms", "zoon", "zoonoses", "zoonosis", "zoonotic", "zoophagous", "zoophilia", "zoophilism", "zoophobia", "zoophyte", "zooplankton", "zoopsia", "zoosporangia", "zoosporangium", "zoospore", "zootoxin", "zori", "zoril", "zoroastrian", "zoster", "zovirax", "zoysia", "zubird", "zucchini", "zumbooruck", "zumbooruk", "zwieback", "zydeco", "zygnemales", "zygodactyl", "zygoma", "zygomatic", "zygomorphic", "zygomorphous", "zygomycotina", "zygospore", "zygote", "zygotene", "zygotic", "zyloprim", "zymase", "zymogen", "zymoid", "zymology", "zymolysis", "zymolytic", "zymosis", "zymotic", "zymurgy", "zyrian", "{", "}", "\xA3", "\xA5", "\xA9", "\xAE", "\u2013", "\u2014", "\u2018", "\u2019", "\u2019A", "\u2019a", "\u2019ALL", "\u2019all", "\u2019AM", "\u2019Am", "\u2019am", "\u2019D", "\u2019d", "\u2019LL", "\u2019ll", "\u2019M", "\u2019m", "\u2019RE", "\u2019Re", "\u2019re", "\u2019S", "\u2019s", "\u2019VE", "\u2019ve", "\u2019Y", "\u2019y", "\u201C", "\u201D", "\u2026", "\u20A8", "\u20A9", "\u20B9", "\u20BD", "\u20BF", "\u25B6", "\u2600", "\u2601", "\u2605", "\u2606", "\u2611", "\u2614", "\u2615", "\u261D", "\u262F", "\u2637", "\u263A", "\u2661", "\u2665", "\u2666", "\u266A", "\u266B", "\u26A0", "\u26A1", "\u26BD", "\u26C4", "\u26D4", "\u2708", "\u270A", "\u270B", "\u270C", "\u2713", "\u2714", "\u2716", "\u2728", "\u273F", "\u2744", "\u2757", "\u2764", "\u279C", "\u27A1", "\u2B50", "\u{1F1EA}", "\u{1F1F8}", "\u{1F1FA}", "\u{1F300}", "\u{1F308}", "\u{1F30A}", "\u{1F30D}", "\u{1F31A}", "\u{1F31E}", "\u{1F31F}", "\u{1F334}", "\u{1F337}", "\u{1F338}", "\u{1F339}", "\u{1F33A}", "\u{1F33B}", "\u{1F33C}", "\u{1F33F}", "\u{1F340}", "\u{1F341}", "\u{1F342}", "\u{1F343}", "\u{1F346}", "\u{1F349}", "\u{1F34C}", "\u{1F353}", "\u{1F354}", "\u{1F355}", "\u{1F35F}", "\u{1F366}", "\u{1F369}", "\u{1F36B}", "\u{1F370}", "\u{1F374}", "\u{1F377}", "\u{1F378}", "\u{1F379}", "\u{1F37A}", "\u{1F37B}", "\u{1F380}", "\u{1F381}", "\u{1F382}", "\u{1F383}", "\u{1F384}", "\u{1F385}", "\u{1F388}", "\u{1F389}", "\u{1F38A}", "\u{1F393}", "\u{1F3A4}", "\u{1F3A5}", "\u{1F3A7}", "\u{1F3AD}", "\u{1F3AE}", "\u{1F3B5}", "\u{1F3B6}", "\u{1F3B8}", "\u{1F3C0}", "\u{1F3C3}", "\u{1F3C6}", "\u{1F3C8}", "\u{1F3CA}", "\u{1F412}", "\u{1F413}", "\u{1F423}", "\u{1F425}", "\u{1F427}", "\u{1F42F}", "\u{1F431}", "\u{1F436}", "\u{1F437}", "\u{1F438}", "\u{1F43C}", "\u{1F43E}", "\u{1F440}", "\u{1F444}", "\u{1F445}", "\u{1F446}", "\u{1F447}", "\u{1F448}", "\u{1F449}", "\u{1F44A}", "\u{1F44B}", "\u{1F44C}", "\u{1F44D}", "\u{1F44E}", "\u{1F44F}", "\u{1F450}", "\u{1F451}", "\u{1F46B}", "\u{1F46C}", "\u{1F46D}", "\u{1F46F}", "\u{1F476}", "\u{1F478}", "\u{1F47B}", "\u{1F47C}", "\u{1F47D}", "\u{1F47E}", "\u{1F47F}", "\u{1F480}", "\u{1F481}", "\u{1F483}", "\u{1F484}", "\u{1F485}", "\u{1F486}", "\u{1F489}", "\u{1F48B}", "\u{1F48D}", "\u{1F48E}", "\u{1F48F}", "\u{1F490}", "\u{1F491}", "\u{1F493}", "\u{1F494}", "\u{1F495}", "\u{1F496}", "\u{1F497}", "\u{1F498}", "\u{1F499}", "\u{1F49A}", "\u{1F49B}", "\u{1F49C}", "\u{1F49D}", "\u{1F49E}", "\u{1F49F}", "\u{1F4A3}", "\u{1F4A4}", "\u{1F4A5}", "\u{1F4A6}", "\u{1F4A8}", "\u{1F4A9}", "\u{1F4AA}", "\u{1F4AB}", "\u{1F4AD}", "\u{1F4AF}", "\u{1F4B0}", "\u{1F4B8}", "\u{1F4D2}", "\u{1F4D6}", "\u{1F4DA}", "\u{1F4DD}", "\u{1F4F7}", "\u{1F51D}", "\u{1F525}", "\u{1F52A}", "\u{1F52B}", "\u{1F52E}", "\u{1F600}", "\u{1F601}", "\u{1F602}", "\u{1F603}", "\u{1F604}", "\u{1F605}", "\u{1F606}", "\u{1F607}", "\u{1F608}", "\u{1F609}", "\u{1F60A}", "\u{1F60B}", "\u{1F60C}", "\u{1F60D}", "\u{1F60E}", "\u{1F60F}", "\u{1F610}", "\u{1F611}", "\u{1F612}", "\u{1F613}", "\u{1F614}", "\u{1F615}", "\u{1F616}", "\u{1F618}", "\u{1F619}", "\u{1F61A}", "\u{1F61B}", "\u{1F61C}", "\u{1F61D}", "\u{1F61E}", "\u{1F61F}", "\u{1F620}", "\u{1F621}", "\u{1F622}", "\u{1F623}", "\u{1F624}", "\u{1F625}", "\u{1F627}", "\u{1F628}", "\u{1F629}", "\u{1F62A}", "\u{1F62B}", "\u{1F62C}", "\u{1F62D}", "\u{1F62E}", "\u{1F62F}", "\u{1F630}", "\u{1F631}", "\u{1F632}", "\u{1F633}", "\u{1F634}", "\u{1F635}", "\u{1F636}", "\u{1F637}", "\u{1F638}", "\u{1F639}", "\u{1F63B}", "\u{1F63D}", "\u{1F63F}", "\u{1F640}", "\u{1F645}", "\u{1F646}", "\u{1F647}", "\u{1F648}", "\u{1F649}", "\u{1F64A}", "\u{1F64B}", "\u{1F64C}", "\u{1F64F}", "\u{1F697}", "\u{1F6AB}", "\u{1F6AC}", "\u{1F6B6}"] }, tokenType: { list: ["unk", "word", "number", "url", "email", "mention", "hashtag", "emoji", "emoticon", "time", "ordinal", "currency", "punctuation", "symbol", "tabCRLF", "wordRP", "alpha", "apos", "decade", "shortForm"] }, pos: { list: ["UNK", "ADJ", "ADP", "ADV", "AUX", "CCONJ", "DET", "INTJ", "NOUN", "NUM", "PART", "PRON", "PROPN", "PUNCT", "SPACE", "SYM", "VERB", "X", "SCONJ"] }, posClusters: { list: ["$%^oov^%$", "NUM", "SPACE", "PUNCT", "SYM", "CCONJ", "NOUN", "DET", "AUX", "AUX_PART", "PRON", "ADJ", "PROPN", "VERB", "ADV", "NOUN_VERB", "ADJ_VERB", "ADJ_NOUN", "ADP_ADV", "ADP", "ADJ_ADP_ADV", "ADJ_ADP_ADV_NOUN", "ADJ_ADV", "ADJ_NOUN_VERB", "ADJ_ADV_NOUN", "ADV_NOUN", "INTJ", "ADV_INTJ", "ADJ_ADV_DET", "DET_NOUN", "ADJ_DET", "ADP_ADV_SCONJ", "SCONJ", "ADJ_ADP_ADV_NOUN_VERB", "ADV_NOUN_VERB", "AUX_NOUN", "ADJ_ADV_NOUN_VERB", "ADJ_ADV_VERB", "NOUN_PROPN", "ADJ_PROPN", "ADV_CCONJ", "AUX_NOUN_VERB", "PROPN_VERB", "X", "ADP_NOUN", "AUX_VERB", "ADV_VERB", "CCONJ_DET", "ADV_CCONJ_DET", "ADJ_NOUN_X", "ADP_VERB", "ADJ_ADP_SCONJ", "ADJ_AUX_NOUN_VERB", "INTJ_NOUN", "ADJ_ADV_DET_NOUN", "DET_PRON", "ADJ_ADP_NOUN_VERB", "AUX_PROPN", "NOUN_PRON_VERB", "ADJ_CCONJ_NOUN", "ADJ_AUX_NOUN", "PART", "ADJ_ADP_ADV_VERB", "ADJ_ADV_PROPN", "DET_INTJ", "ADJ_ADV_DET_INTJ_NOUN", "ADV_PRON", "ADJ_ADV_INTJ_NOUN", "ADJ_ADV_INTJ_NOUN_VERB", "NUM_PRON", "CCONJ_NOUN", "INTJ_VERB", "ADJ_INTJ_NOUN_VERB", "NOUN_NUM", "ADV_SCONJ", "ADP_DET_PRON", "ADP_DET_PRON_SCONJ", "ADP_NOUN_VERB", "ADP_PART", "ADJ_ADP", "NOUN_X", "ADJ_ADV_INTJ", "NOUN_SCONJ_VERB", "PRON_PROPN", "ADJ_ADP_NOUN", "INTJ_NOUN_VERB", "NOUN_PRON", "NOUN_NUM_VERB"] } }, tcat: { hash: { unk: 0, word: 1, number: 2, url: 3, email: 4, mention: 5, hashtag: 6, emoji: 7, emoticon: 8, time: 9, ordinal: 10, currency: 11, punctuation: 12, symbol: 13, tabCRLF: 14, wordRP: 15, alpha: 16, apos: 17, decade: 18, shortForm: 19 }, list: ["unk", "word", "number", "url", "email", "mention", "hashtag", "emoji", "emoticon", "time", "ordinal", "currency", "punctuation", "symbol", "tabCRLF", "wordRP", "alpha", "apos", "decade", "shortForm"] }, pos: { hash: { UNK: 0, ADJ: 1, ADP: 2, ADV: 3, AUX: 4, CCONJ: 5, DET: 6, INTJ: 7, NOUN: 8, NUM: 9, PART: 10, PRON: 11, PROPN: 12, PUNCT: 13, SPACE: 14, SYM: 15, VERB: 16, X: 17, SCONJ: 18 }, list: ["UNK", "ADJ", "ADP", "ADV", "AUX", "CCONJ", "DET", "INTJ", "NOUN", "NUM", "PART", "PRON", "PROPN", "PUNCT", "SPACE", "SYM", "VERB", "X", "SCONJ"] }, trex: { ltc: [["^[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF]+$", "i", 1], ['^[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF]+[\\\u2019\\\u201D\\"\\]\\)\\}\\\u2026\\,\\.\\!\\;\\?\\/\\:]$', "i", 15], ["^[\\+\\-]?\\d+(?:[\\.\\,\\-\\/\\:]?(?=(?\\d+))\\k)*$", "", 2], ["^(?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?:(?:[a-z\\u00A1-\\uFFFF\\d]-*)*[a-z\\u00A1-\\uFFFF\\d]+)(?:\\.(?:[a-z\\u00A1-\\uFFFF\\d]-*)*[a-z\\u00A1-\\uFFFF\\d]+)*(?:\\.(?:[a-z\\u00A1-\\uFFFF]{2,})))(?::\\d{2,5})?(?:[\\/?#]\\S*)?$", "i", 3], ["^[-!#$%&'*+\\/=?^\\w{|}~](?:\\.?[-!#$%&'*+\\/=?^\\w`{|}~])*@[a-z0-9](?:-?\\.?[a-z0-9])*(?:\\.[a-z](?:-?[a-z0-9])*)+$", "i", 4], ["^\\@\\w+$", "i", 5], ["^\\#[a-z][a-z0-9]*$", "i", 6], ["^[:;]['\u2019]?-?[\\)\\(]+$|^[:;]-?[\\]\\}3>\\[\\{@oO\\*PpDS\\/\\|X\\?\\\\]$|^<[\\\\\\/]?3+$|^[\\)\\(]-?'?[:;]$|^\\\\o\\/$", "i", 8], ["^(?:\\d|[01]\\d|2[0-3]):?(?:[0-5][0-9])?(?:[ap]\\.?m\\.?|hours|hrs)$", "i", 9], ["^1\\dth$|^[04-9]th$|^1st$|^2nd$|^3rd$|^[02-9]1st$|^[02-9]2nd$|^[02-9]3rd$|^[02-9][04-9]th$|^\\d+\\d[04-9]th$|^\\d+\\d1st$|^\\d+\\d2nd$|^\\d+\\d3rd$", "", 10], ["^\\\u20BF+$|^\\\u20BD+$|^\\\u20B9+$|^\\\u20A8$|^\\$+$|^\\\xA3+$|^\\\xA5+$|^\\\u20AC+$|^\\\u20A9+$|^US\\$$|^C\\$$|^A\\$$|^USD$|^AUD$|^INR$|^GBP$", "i", 11], ["^(?:\\.{2,}|\\-\\-|\\\u2013\\\u2013)$|^[\\\u2019\\'\\\u2018\\\u2019\\`\\\u201C\\\u201D\\\"\\[\\]\\(\\)\\{\\}\\\u2026\\,\\.\\!\\;\\?\\/\\:\\-\\\u2013\\\u2014]$", "", 12], ["^[\\~\\@\\#\\%\\^\\+\\=\\*\\|\\<\\>\\&\\u00A7\\u00A9\\u00B1\\u00F7\\u00D7\\u00B0]$", "", 13], ["^[\\'\\\u2019]?\\d0s(?![\\'\\\u2019])$|[1-2]\\d\\d0s$", "", 18], ["[\\t\\r\\n]+", "", 14]], rtc: [["(?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?:(?:[a-z\\u00A1-\\uFFFF\\d]-*)*[a-z\\u00A1-\\uFFFF\\d]+)(?:\\.(?:[a-z\\u00A1-\\uFFFF\\d]-*)*[a-z\\u00A1-\\uFFFF\\d]+)*(?:\\.(?:[a-z\\u00A1-\\uFFFF]{2,})))(?::\\d{2,5})?(?:[\\/?#]\\S*)?", "gi", 3], ["[-!#$%&'*+\\/=?^\\w{|}~](?:\\.?[-!#$%&'*+\\/=?^\\w`{|}~])*@[a-z0-9](?:-?\\.?[a-z0-9])*(?:\\.[a-z](?:-?[a-z0-9])*)+", "gi", 4], ["\\@\\w+", "g", 5], ["\\#[a-z][a-z0-9]*", "gi", 6], ["[\\u{1F300}-\\u{1F5FF}\\u{1F900}-\\u{1F9FF}\\u{1F600}-\\u{1F64F}\\u{1F680}-\\u{1F6FF}\\u{2600}-\\u{26FF}\\u{2700}-\\u{27BF}\\u{1F1E6}-\\u{1F1FF}\\u{1F191}-\\u{1F251}\\u{1F004}\\u{1F0CF}\\u{1F170}-\\u{1F171}\\u{1F17E}-\\u{1F17F}\\u{1F18E}\\u{3030}\\u{2B50}\\u{2B55}\\u{2934}-\\u{2935}\\u{2B05}-\\u{2B07}\\u{2B1B}-\\u{2B1C}\\u{3297}\\u{3299}\\u{303D}\\u{00A9}\\u{00AE}\\u{2122}\\u{23F3}\\u{24C2}\\u{23E9}-\\u{23EF}\\u{25B6}\\u{23F8}-\\u{23FA}]", "gu", 7], ["[:;]['\u2019]?-?[\\)\\(]+|[:;]-?[\\]\\}3>\\[\\{@oO\\*PpDS\\/\\|X\\?\\\\]|<[\\\\\\/]?3+|[\\)\\(]-?'?[:;]|\\\\o\\/", "gi", 8], ["(?:\\d|[01]\\d|2[0-3]):?(?:[0-5][0-9])?(?:[ap]\\.?m\\.?|hours|hrs)", "gi", 9], ["1\\dth|[04-9]th|1st|2nd|3rd|[02-9]1st|[02-9]2nd|[02-9]3rd|[02-9][04-9]th|\\d+\\d[04-9]th|\\d+\\d1st|\\d+\\d2nd|\\d+\\d3rd", "g", 10], ["\\\u20BF+|\\\u20BD+|\\\u20B9+|\\\u20A8+|\\$+|\\\xA3+|\\\xA5+|\\\u20AC+|\\\u20A9+|US\\$|C\\$|A\\$|USD|AUD|INR|GBP", "g", 11], ["[\\'\\\u2019]?\\d0s(?![\\'\\\u2019])|[1-2]\\d\\d0s", "g", 18], ['[\\\u2018\\`\\\u201C\\\u201D\\"\\[\\]\\(\\)\\{\\}\\\u2026\\!\\;\\?]', "g", 12], ["[\\'\\\u2019]s$", "gi", 17], ["[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF][a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF0-9]*(?:[\\.\\-\\\u2013\\'\\\u2019\\&]?[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF0-9]+\\.?)+", "gi", 1], ["[\\+\\-]?\\d+(?:[\\.\\,\\-\\/\\:]?\\d+)*", "g", 2], ["[\\~\\@\\#\\%\\^\\+\\=\\*\\|\\<\\>\\&\\u00A7\\u00A9\\u00B1\\u00F7\\u00D7\\u00B0]", "g", 13], ["(?:[a-z]\\.)", "gi", 1], ["(?:\\.{2,}|\\-\\-|\\\u2013\\\u2013)|[\\-\\\u2013\\\u2014\\.\\'\\\u2019\\/\\:\\,]", "g", 12], ["[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF]+", "gi", 1]], lex: [["^[\\'\\\u2019]?[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF][a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF0-9]*(?:[\\.\\-\\\u2013\\'\\\u2019\\&]?[a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF0-9.]+)*$", "i", 1], ["^\\d+(?:[\\.\\,\\-\\/\\:]?(?=(?\\d+))\\k)*$", "", 2], ["^1\\dth$|^[04-9]th$|^1st$|^2nd$|^3rd$|^[02-9]1st$|^[02-9]2nd$|^[02-9]3rd$|^[02-9][04-9]th$|^\\d+\\d[04-9]th$|^\\d+\\d1st$|^\\d+\\d2nd$|^\\d+\\d3rd$", "", 10], ["^\\\u20BF+$|^\\\u20BD+$|^\\\u20B9+$|^\\\u20A8$|^\\$+$|^\\\xA3+$|^\\\xA5+$|^\\\u20AC+$|^\\\u20A9+$|^US\\$$|^C\\$$|^A\\$$|^USD$|^AUD$|^INR$|^GBP$", "i", 11], ["^(?:\\.{2,}|\\-\\-|\\\u2013\\\u2013)$|^[\\\u2019\\'\\\u2018\\\u2019\\`\\\u201C\\\u201D\\\"\\[\\]\\(\\)\\{\\}\\\u2026\\,\\.\\!\\;\\?\\/\\:\\-\\\u2013\\\u2014]$", "", 12], ["^[\\~\\@\\#\\%\\^\\+\\=\\*\\|\\<\\>\\&\\u00A7\\u00A9\\u00B1\\u00F7\\u00D7\\u00B0]$", "", 13], ["^[\\'\\\u2019]?\\d0s(?![\\'\\\u2019])$|[1-2]\\d\\d0s$", "", 18], ["[\\t\\r\\n]+", "", 14], ["^[:;]['\u2019]?-?[\\)\\(]+$|^[:;]-?[\\]\\}3>\\[\\{@oO\\*PpDS\\/\\|X\\?\\\\]$|^<[\\\\\\/]?3+$|^[\\)\\(]-?'?[:;]$|^\\\\o\\/$", "i", 8], ["^[\\u{1F300}-\\u{1F5FF}\\u{1F900}-\\u{1F9FF}\\u{1F600}-\\u{1F64F}\\u{1F680}-\\u{1F6FF}\\u{2600}-\\u{26FF}\\u{2700}-\\u{27BF}\\u{1F1E6}-\\u{1F1FF}\\u{1F191}-\\u{1F251}\\u{1F004}\\u{1F0CF}\\u{1F170}-\\u{1F171}\\u{1F17E}-\\u{1F17F}\\u{1F18E}\\u{3030}\\u{2B50}\\u{2B55}\\u{2934}-\\u{2935}\\u{2B05}-\\u{2B07}\\u{2B1B}-\\u{2B1C}\\u{3297}\\u{3299}\\u{303D}\\u{00A9}\\u{00AE}\\u{2122}\\u{23F3}\\u{24C2}\\u{23E9}-\\u{23EF}\\u{25B6}\\u{23F8}-\\u{23FA}]+$", "u", 7]], helpers: { splitter: ["([ ]+|[\\n\\r\\t]+)", ""], anyWithRP: [`^([^\\\u2018\\\u201C\\"\\[\\(\\{\\\u2026\\-\\\u2013].+?)(\\.+|\u2013\u2013|--|[\\\u2019\\'\\\u201D\\"\\\u2026\\,\\.\\!\\;\\?\\-\\\u2013\\:\\u0964\\u0965]$|(?:\\'s))$`, ""], anyWithLP: [`^(\u2013\u2013|--|[\\\u2018\\'\\\u201C\\"\\[\\(\\{\\\u2026\\-\\\u2013])(.+?[^\\\u2019\\'\\\u201D\\"\\]\\)\\}\\\u2026\\,\\.\\!\\;\\?\\-\\\u2013\\:\\u0964\\u0965])$`, ""], LPanyRP: [`^(\u2013\u2013|--|[\\\u2018\\\u201C\\"\\[\\(\\{\\\u2026\\-\\\u2013])(.+?)(\u2013\u2013|--|[\\\u2019\\'\\\u201D\\"\\]\\)\\}\\\u2026\\,\\!\\;\\?\\-\\\u2013\\:\\u0964\\u0965]$|(?:\\'s))$`, ""], Emoji: ["[\\u{1F300}-\\u{1F5FF}\\u{1F900}-\\u{1F9FF}\\u{1F600}-\\u{1F64F}\\u{1F680}-\\u{1F6FF}\\u{2600}-\\u{26FF}\\u{2700}-\\u{27BF}\\u{1F1E6}-\\u{1F1FF}\\u{1F191}-\\u{1F251}\\u{1F004}\\u{1F0CF}\\u{1F170}-\\u{1F171}\\u{1F17E}-\\u{1F17F}\\u{1F18E}\\u{3030}\\u{2B50}\\u{2B55}\\u{2934}-\\u{2935}\\u{2B05}-\\u{2B07}\\u{2B1B}-\\u{2B1C}\\u{3297}\\u{3299}\\u{303D}\\u{00A9}\\u{00AE}\\u{2122}\\u{23F3}\\u{24C2}\\u{23E9}-\\u{23EF}\\u{25B6}\\u{23F8}-\\u{23FA}]", "gu"] } }, xpansions: "CysAAOAsAADgLAAABAAAALrCAADdyQAA3ckAAAoAAAALKwAA4CwAAOAsAAAEAAAAZsoAAN3JAADdyQAACgAAAKMrAADgLAAA4CwAAAQAAAC6wgAA3ckAAN3JAAAKAAAAoysAAOAsAADgLAAABAAAAGbKAADdyQAA3ckAAAoAAABangAAWp4AANccAAAEAAAAusIAAN3JAADdyQAACgAAAFqeAABangAA1xwAAAQAAABmygAA3ckAAN3JAAAKAAAAjEQAAIxEAACMRAAABAAAALrCAADdyQAA3ckAAAoAAACMRAAAjEQAAIxEAAAEAAAAZsoAAN3JAADdyQAACgAAAF65AABeuQAAXrkAAAQAAAC6wgAA3ckAAN3JAAAKAAAAXrkAAF65AABeuQAABAAAAGbKAADdyQAA3ckAAAoAAACkwQAApMEAAKTBAAAEAAAAusIAAN3JAADdyQAACgAAAKTBAACkwQAApMEAAAQAAABmygAA3ckAAN3JAAAKAAAAnbQAAJ20AACdtAAABAAAALrCAADdyQAA3ckAAAoAAACdtAAAnbQAAJ20AAAEAAAAZsoAAN3JAADdyQAACgAAAOAsAADgLAAA4CwAAAQAAADdyQAA3ckAAN3JAAAKAAAAcdAAAHHQAABx0AAAEAAAALrCAADdyQAA3ckAAAoAAABx0AAAcdAAAHHQAAAQAAAAZsoAAN3JAADdyQAACgAAAEcMAQBHDAEARwwBAAQAAAC6wgAA3ckAAN3JAAAKAAAARwwBAEcMAQBHDAEABAAAAGbKAADdyQAA3ckAAAoAAADzCwEARwwBAEcMAQAEAAAAusIAAN3JAADdyQAACgAAAPMLAQBHDAEARwwBAAQAAABmygAA3ckAAN3JAAAKAAAAaw4BAGsOAQBrDgEABAAAALrCAADdyQAA3ckAAAoAAABrDgEAaw4BAGsOAQAEAAAAZsoAAN3JAADdyQAACgAAAIhQAQB6TwEAek8BAAQAAAC6wgAA3ckAAN3JAAAKAAAAiFABAHpPAQB6TwEABAAAAGbKAADdyQAA3ckAAAoAAACsUQEArFEBAKxRAQAEAAAAusIAAN3JAADdyQAACgAAAKxRAQCsUQEArFEBAAQAAABmygAA3ckAAN3JAAAKAAAAtlQAALZUAAAqWgAABAAAALrCAADdyQAA3ckAAAoAAAC2VAAAtlQAACpaAAAEAAAAZsoAAN3JAADdyQAACgAAACpaAAAqWgAAKloAAAQAAAC6wgAA3ckAAN3JAAAKAAAAKloAACpaAAAqWgAABAAAAGbKAADdyQAA3ckAAAoAAAAohwAAKIcAAJCHAAAEAAAAusIAAN3JAADdyQAACgAAAJCHAACQhwAAkIcAAAQAAAC6wgAA3ckAAN3JAAAKAAAAkIcAAJCHAACQhwAABAAAAGbKAADdyQAA3ckAAAoAAADUSwAA1EsAANRLAAAQAAAAusIAAN3JAADdyQAACgAAANRLAADUSwAA1EsAABAAAABmygAA3ckAAN3JAAAKAAAA5EsAANRLAADUSwAAEAAAALrCAADdyQAA3ckAAAoAAADkSwAA1EsAANRLAAAEAAAAZsoAAN3JAADdyQAACgAAALSEAAC0hAAAkIcAAAQAAAC6wgAA3ckAAN3JAAAKAAAAtIQAALSEAACQhwAABAAAAGbKAADdyQAA3ckAAAoAAABrWgAAa1oAACpaAAAEAAAAusIAAN3JAADdyQAACgAAAGtaAABrWgAAKloAAAQAAABmygAA3ckAAN3JAAAKAAAAEEwAAGtaAAAqWgAABAAAALrCAADdyQAA3ckAAAoAAAAQTAAAa1oAACpaAAAEAAAAZsoAAN3JAADdyQAACgAAAJLEAACSxAAAksQAABAAAAC6wgAA3ckAAN3JAAAKAAAAdH8AAHR/AAB0fwAAEAAAALrCAADdyQAA3ckAAAoAAAB0fwAAdH8AAHR/AAAQAAAAZsoAAN3JAADdyQAACgAAAA4IAAD/EgAA1xwAAAQAAAC6wgAA3ckAAN3JAAAKAAAADggAAP8SAADXHAAABAAAAGbKAADdyQAA3ckAAAoAAAD/EgAA/xIAANccAAAEAAAAusIAAN3JAADdyQAACgAAAP8SAAD/EgAA1xwAAAQAAABmygAA3ckAAN3JAAAKAAAAXksBAF5LAQDXHAAABAAAALrCAADdyQAA3ckAAAoAAABeSwEAXksBANccAAAEAAAAZsoAAN3JAADdyQAACgAAAAlNAQAJTQEA1xwAAAQAAAC6wgAA3ckAAN3JAAAKAAAACU0BAAlNAQDXHAAABAAAAGbKAADdyQAA3ckAAAoAAAC7CgAAuwoAANccAAAEAAAAusIAAN3JAADdyQAACgAAALsKAAC7CgAA1xwAAAQAAABmygAA3ckAAN3JAAAKAAAAjEQAAIxEAACMRAAABAAAACUAAACQhwAAkIcAAAQAAACMRAAAjEQAAIxEAAAEAAAAHkYBAJCHAACQhwAABAAAAKxRAQCsUQEArFEBAAQAAAAlAAAAkIcAAJCHAAAEAAAArFEBAKxRAQCsUQEABAAAAB5GAQCQhwAAkIcAAAQAAACdtAAAnbQAAJ20AAAEAAAAJQAAAJCHAACQhwAABAAAAJ20AACdtAAAnbQAAAQAAAAeRgEAkIcAAJCHAAAEAAAAXrkAAF65AABeuQAABAAAACUAAACQhwAAkIcAAAQAAABeuQAAXrkAAF65AAAEAAAAHkYBAJCHAACQhwAABAAAAKTBAACkwQAApMEAAAQAAAAlAAAAkIcAAJCHAAAEAAAApMEAAKTBAACkwQAABAAAAB5GAQCQhwAAkIcAAAQAAABrDgEAaw4BAGsOAQAEAAAAJQAAAJCHAACQhwAABAAAAGsOAQBrDgEAaw4BAAQAAAAeRgEAkIcAAJCHAAAEAAAAXi0BAF4tAQBeLQEACwAAABwAAAB6TwEAek8BAAQAAABeLQEAXi0BAF4tAQALAAAAUqwAAHpPAQB6TwEABAAAAF4tAQBeLQEAXi0BAAsAAAAaAAAArFEBAKxRAQAEAAAAnY4AAJ2OAACdjgAAAwAAABoAAACsUQEArFEBAAQAAACdjgAAnY4AAJ2OAAADAAAAHAAAAHpPAQB6TwEABAAAAJ2OAACdjgAAnY4AAAMAAABSrAAAek8BAHpPAQAEAAAAxywBAMcsAQDHLAEACwAAABwAAAB6TwEAek8BAAQAAADHLAEAxywBAMcsAQALAAAAUqwAAHpPAQB6TwEABAAAAMcsAQDHLAEAxywBAAsAAAAaAAAArFEBAKxRAQAEAAAA4y0BAOMtAQDjLQEACwAAABwAAAB6TwEAek8BAAQAAADjLQEA4y0BAOMtAQALAAAAUqwAAHpPAQB6TwEABAAAAOMtAQDjLQEA4y0BAAsAAAAaAAAArFEBAKxRAQAEAAAAG0wBABtMAQAbTAEACwAAABoAAACsUQEArFEBAAQAAAAbTAEAG0wBABtMAQALAAAAHAAAAHpPAQB6TwEABAAAAG9TAQBvUwEAb1MBAAsAAAAaAAAArFEBAKxRAQAEAAAAb1MBAG9TAQBvUwEACwAAABwAAAB6TwEAek8BAAQAAABvUwEAb1MBAG9TAQALAAAAUqwAAHpPAQB6TwEABAAAAI2RAACNkQAAjZEAAAsAAAAaAAAArFEBAKxRAQAEAAAAjZEAAI2RAACNkQAACwAAABwAAAB6TwEAek8BAAQAAADohwAA6IcAAOiHAAALAAAAGgAAAKxRAQCsUQEABAAAAOiHAADohwAA6IcAAAsAAAAcAAAAek8BAHpPAQAEAAAA1QwBANUMAQDVDAEACwAAABoAAACsUQEArFEBAAQAAADVDAEA1QwBANUMAQALAAAAHAAAAHpPAQB6TwEABAAAANaeAADWngAA1p4AAAsAAAAaAAAArFEBAKxRAQAEAAAA1p4AANaeAADWngAACwAAABwAAAB6TwEAek8BAAQAAADWngAA1p4AANaeAAALAAAAUqwAAHpPAQB6TwEABAAAAGhNAQBoTQEAaE0BAAsAAAAcAAAAek8BAHpPAQAEAAAAaE0BAGhNAQBoTQEACwAAAFKsAAB6TwEAek8BAAQAAACjTgEAo04BAKNOAQALAAAAHAAAAHpPAQB6TwEABAAAAGhNAQBoTQEAaE0BAAsAAAAaAAAArFEBAKxRAQAEAAAA0E0BANBNAQDQTQEACwAAABoAAACsUQEArFEBAAQAAACjTgEAo04BAKNOAQALAAAAGgAAAKxRAQCsUQEABAAAAANPAQADTwEAA08BAAMAAAAaAAAArFEBAKxRAQAEAAAAxywBAMcsAQDHLAEACwAAACEAAAD/EgAA1xwAAAQAAADHLAEAxywBAMcsAQALAAAA0vMAAP8SAADXHAAABAAAANAtAQDQLQEA0C0BAAsAAAAhAAAA/xIAANccAAAEAAAA0C0BANAtAQDQLQEACwAAANLzAAD/EgAA1xwAAAQAAABeLQEAXi0BAF4tAQALAAAAIQAAAP8SAADXHAAABAAAAF4tAQBeLQEAXi0BAAsAAAD/EgAA/xIAANccAAAEAAAAxywBAMcsAQDHLAEACwAAACMAAABangAA1xwAAAQAAABeLQEAXi0BAF4tAQALAAAAIwAAAFqeAADXHAAABAAAAGguAQBoLgEAaC4BAAsAAAAjAAAAWp4AANccAAAEAAAAmy4BAJsuAQCbLgEABgAAACEAAAD/EgAA1xwAAAQAAACbLgEAmy4BAJsuAQAGAAAA0vMAAP8SAADXHAAABAAAABtMAQAbTAEAG0wBAAsAAAAhAAAA/xIAANccAAAEAAAAb1MBAG9TAQBvUwEACwAAACEAAAD/EgAA1xwAAAQAAABvUwEAb1MBAG9TAQALAAAA0vMAAP8SAADXHAAABAAAAOMtAQDjLQEA4y0BAAsAAAAhAAAA/xIAANccAAAEAAAA4y0BAOMtAQDjLQEACwAAANLzAAD/EgAA1xwAAAQAAADWngAA1p4AANaeAAALAAAAIwAAAFqeAADXHAAABAAAAOiHAADohwAA6IcAAAsAAAAjAAAAWp4AANccAAAEAAAA1QwBANUMAQDVDAEACwAAACMAAABangAA1xwAAAQAAABoTQEAaE0BAGhNAQALAAAAIwAAAFqeAADXHAAABAAAAMFNAQDBTQEAwU0BAAMAAAAjAAAAWp4AANccAAAEAAAADE4BAAxOAQAMTgEACwAAACMAAABangAA1xwAAAQAAACjTgEAo04BAKNOAQALAAAAIwAAAFqeAADXHAAABAAAAGhNAQBoTQEAaE0BAAsAAAAhAAAA/xIAANccAAAEAAAAaE0BAGhNAQBoTQEACwAAANLzAAD/EgAA1xwAAAQAAACjTgEAo04BAKNOAQALAAAAIQAAAP8SAADXHAAABAAAAANPAQADTwEAA08BAAsAAAAhAAAA/xIAANccAAAEAAAAA08BAANPAQADTwEACwAAANLzAAD/EgAA1xwAAAQAAACdjgAAnY4AAJ2OAAADAAAAIQAAAP8SAADXHAAABAAAAJ2OAACdjgAAnY4AAAMAAADS8wAA/xIAANccAAAEAAAAnY4AAJ2OAACdjgAAAwAAACMAAABangAA1xwAAAQAAACNkQAAjZEAAI2RAAALAAAAGAAAALsKAADXHAAABAAAAI2RAACNkQAAjZEAAAsAAAC7CgAAuwoAANccAAAEAAAA4y0BAOMtAQDjLQEACwAAACUAAACQhwAAkIcAAAQAAADjLQEA4y0BAOMtAQALAAAAHkYBAJCHAACQhwAABAAAABtMAQAbTAEAG0wBAAsAAAAlAAAAkIcAAJCHAAAEAAAAG0wBABtMAQAbTAEACwAAAB5GAQCQhwAAkIcAAAQAAACNkQAAjZEAAI2RAAALAAAAJQAAAJCHAACQhwAABAAAAI2RAACNkQAAjZEAAAsAAAAeRgEAkIcAAJCHAAAEAAAA6IcAAOiHAADohwAACwAAACUAAACQhwAAkIcAAAQAAADohwAA6IcAAOiHAAALAAAAHkYBAJCHAACQhwAABAAAAG9TAQBvUwEAb1MBAAsAAAAlAAAAkIcAAJCHAAAEAAAAb1MBAG9TAQBvUwEACwAAAB5GAQCQhwAAkIcAAAQAAABoTQEAaE0BAGhNAQALAAAAJQAAAJCHAACQhwAABAAAAGhNAQBoTQEAaE0BAAsAAAAeRgEAkIcAAJCHAAAEAAAA0E0BANBNAQDQTQEAAwAAACUAAACQhwAAkIcAAAQAAADQTQEA0E0BANBNAQADAAAAHkYBAJCHAACQhwAABAAAAKNOAQCjTgEAo04BAAsAAAAlAAAAkIcAAJCHAAAEAAAAo04BAKNOAQCjTgEACwAAAB5GAQCQhwAAkIcAAAQAAADQTQEA0E0BANBNAQADAAAAIwAAAFqeAADXHAAABAAAAANPAQADTwEAA08BAAMAAAAjAAAAWp4AANccAAAEAAAA0E0BANBNAQDQTQEAAwAAACEAAAD/EgAA1xwAAAQAAADQTQEA0E0BANBNAQADAAAA0vMAAP8SAADXHAAABAAAAB+KAAAfigAAH4oAAAMAAAAhAAAA/xIAANccAAAEAAAA3ckAAN3JAADdyQAACgAAACUAAACQhwAAkIcAAAQAAADdyQAA3ckAAN3JAAAKAAAAHkYBAJCHAACQhwAABAAAACMVAQAjFQEAIxUBAAMAAAAhAAAA/xIAANccAAAEAAAAG0wBABtMAQAbTAEACwAAABoAAACsUQEArFEBAAQAAAAlAAAAkIcAAJCHAAAEAAAAo04BAKNOAQCjTgEACwAAABoAAACsUQEArFEBAAQAAAAlAAAAkIcAAJCHAAAEAAAAx04BAMdOAQDHTgEACwAAABoAAACsUQEArFEBAAQAAAAlAAAAkIcAAJCHAAAEAAAAb1MBAG9TAQBvUwEACwAAABoAAACsUQEArFEBAAQAAAAlAAAAkIcAAJCHAAAEAAAAb1MBAG9TAQBvUwEACwAAABoAAACsUQEArFEBAAQAAAC6wgAA3ckAAN3JAAAKAAAAJQAAAJCHAACQhwAABAAAAG9TAQBvUwEAb1MBAAsAAAAcAAAAkgkAAJIJAAAGAAAAJQAAAJCHAACQhwAABAAAAOMtAQDjLQEA4y0BAAsAAAAcAAAAek8BAHpPAQAEAAAAJQAAAJCHAACQhwAABAAAAIxEAACMRAAAjEQAAAQAAAC6wgAA3ckAAN3JAAAKAAAAJQAAAJCHAACQhwAABAAAALSEAAC0hAAAkIcAAAQAAAC6wgAA3ckAAN3JAAAKAAAAJQAAAJCHAACQhwAABAAAAKTBAACkwQAApMEAAAQAAAC6wgAA3ckAAN3JAAAKAAAAJQAAAJCHAACQhwAABAAAAI2RAACNkQAAjZEAAAsAAAAcAAAAek8BAHpPAQAEAAAAJQAAAJCHAACQhwAABAAAAI2RAACNkQAAjZEAAAsAAAAaAAAArFEBAKxRAQAEAAAAJQAAAJCHAACQhwAABAAAANaeAADWngAA1p4AAAsAAAAcAAAAek8BAHpPAQAEAAAAJQAAAJCHAACQhwAABAAAANaeAADWngAA1p4AAAsAAAAaAAAArFEBAKxRAQAEAAAAJQAAAJCHAACQhwAABAAAAGsOAQBrDgEAaw4BAAQAAAC6wgAA3ckAAN3JAAAKAAAAJQAAAJCHAACQhwAABAAAAAsrAADgLAAA4CwAAAQAAAAxywAA3ckAAN3JAAAKAAAAoysAAOAsAADgLAAABAAAADHLAADdyQAA3ckAAAoAAABangAAWp4AANccAAAEAAAAMcsAAN3JAADdyQAACgAAAIxEAACMRAAAjEQAAAQAAAAxywAA3ckAAN3JAAAKAAAAXrkAAF65AABeuQAABAAAADHLAADdyQAA3ckAAAoAAACkwQAApMEAAKTBAAAEAAAAMcsAAN3JAADdyQAACgAAAJ20AACdtAAAnbQAAAQAAAAxywAA3ckAAN3JAAAKAAAAcdAAAHHQAABx0AAAEAAAADHLAADdyQAA3ckAAAoAAABHDAEARwwBAEcMAQAEAAAAMcsAAN3JAADdyQAACgAAAPMLAQBHDAEARwwBAAQAAAAxywAA3ckAAN3JAAAKAAAAaw4BAGsOAQBrDgEABAAAADHLAADdyQAA3ckAAAoAAACIUAEAek8BAHpPAQAEAAAAMcsAAN3JAADdyQAACgAAAKxRAQCsUQEArFEBAAQAAAAxywAA3ckAAN3JAAAKAAAAtlQAALZUAAAqWgAABAAAADHLAADdyQAA3ckAAAoAAAAqWgAAKloAACpaAAAEAAAAMcsAAN3JAADdyQAACgAAACiHAAAohwAAkIcAAAQAAAAxywAA3ckAAN3JAAAKAAAAkIcAAJCHAACQhwAABAAAADHLAADdyQAA3ckAAAoAAADUSwAA1EsAANRLAAAQAAAAMcsAAN3JAADdyQAACgAAAORLAADUSwAA1EsAABAAAAAxywAA3ckAAN3JAAAKAAAAtIQAALSEAACQhwAABAAAADHLAADdyQAA3ckAAAoAAABrWgAAa1oAACpaAAAEAAAAMcsAAN3JAADdyQAACgAAABBMAABrWgAAKloAAAQAAAAxywAA3ckAAN3JAAAKAAAAksQAAJLEAACSxAAAEAAAADHLAADdyQAA3ckAAAoAAAB0fwAAdH8AAHR/AAAQAAAAMcsAAN3JAADdyQAACgAAAA4IAAD/EgAA1xwAAAQAAAAxywAA3ckAAN3JAAAKAAAA/xIAAP8SAADXHAAABAAAADHLAADdyQAA3ckAAAoAAABeSwEAXksBANccAAAEAAAAMcsAAN3JAADdyQAACgAAAAlNAQAJTQEA1xwAAAQAAAAxywAA3ckAAN3JAAAKAAAAuwoAALsKAADXHAAABAAAADHLAADdyQAA3ckAAAoAAACMRAAAjEQAAIxEAAAEAAAAylQBAJCHAACQhwAABAAAAKxRAQCsUQEArFEBAAQAAADKVAEAkIcAAJCHAAAEAAAAnbQAAJ20AACdtAAABAAAAMpUAQCQhwAAkIcAAAQAAABeuQAAXrkAAF65AAAEAAAAylQBAJCHAACQhwAABAAAAKTBAACkwQAApMEAAAQAAADKVAEAkIcAAJCHAAAEAAAAaw4BAGsOAQBrDgEABAAAAMpUAQCQhwAAkIcAAAQAAABeLQEAXi0BAF4tAQALAAAAwVQBAHpPAQB6TwEABAAAAF4tAQBeLQEAXi0BAAsAAAC/VAEArFEBAKxRAQAEAAAAnY4AAJ2OAACdjgAAAwAAAL9UAQCsUQEArFEBAAQAAACdjgAAnY4AAJ2OAAADAAAAwVQBAHpPAQB6TwEABAAAAMcsAQDHLAEAxywBAAsAAADBVAEAek8BAHpPAQAEAAAAxywBAMcsAQDHLAEACwAAAL9UAQCsUQEArFEBAAQAAADjLQEA4y0BAOMtAQALAAAAwVQBAHpPAQB6TwEABAAAAOMtAQDjLQEA4y0BAAsAAAC/VAEArFEBAKxRAQAEAAAAG0wBABtMAQAbTAEACwAAAL9UAQCsUQEArFEBAAQAAAAbTAEAG0wBABtMAQALAAAAwVQBAHpPAQB6TwEABAAAAG9TAQBvUwEAb1MBAAsAAAC/VAEArFEBAKxRAQAEAAAAb1MBAG9TAQBvUwEACwAAAMFUAQB6TwEAek8BAAQAAACNkQAAjZEAAI2RAAALAAAAv1QBAKxRAQCsUQEABAAAAI2RAACNkQAAjZEAAAsAAADBVAEAek8BAHpPAQAEAAAA6IcAAOiHAADohwAACwAAAL9UAQCsUQEArFEBAAQAAADohwAA6IcAAOiHAAALAAAAwVQBAHpPAQB6TwEABAAAANUMAQDVDAEA1QwBAAsAAAC/VAEArFEBAKxRAQAEAAAA1QwBANUMAQDVDAEACwAAAMFUAQB6TwEAek8BAAQAAADWngAA1p4AANaeAAALAAAAv1QBAKxRAQCsUQEABAAAANaeAADWngAA1p4AAAsAAADBVAEAek8BAHpPAQAEAAAAaE0BAGhNAQBoTQEACwAAAMFUAQB6TwEAek8BAAQAAACjTgEAo04BAKNOAQALAAAAwVQBAHpPAQB6TwEABAAAAGhNAQBoTQEAaE0BAAsAAAC/VAEArFEBAKxRAQAEAAAA0E0BANBNAQDQTQEACwAAAL9UAQCsUQEArFEBAAQAAACjTgEAo04BAKNOAQALAAAAv1QBAKxRAQCsUQEABAAAAANPAQADTwEAA08BAAMAAAC/VAEArFEBAKxRAQAEAAAAxywBAMcsAQDHLAEACwAAAMZUAQD/EgAA1xwAAAQAAADQLQEA0C0BANAtAQALAAAAxlQBAP8SAADXHAAABAAAAF4tAQBeLQEAXi0BAAsAAADGVAEA/xIAANccAAAEAAAAxywBAMcsAQDHLAEACwAAAMhUAQBangAA1xwAAAQAAABeLQEAXi0BAF4tAQALAAAAyFQBAFqeAADXHAAABAAAAGguAQBoLgEAaC4BAAsAAADIVAEAWp4AANccAAAEAAAAmy4BAJsuAQCbLgEABgAAAMZUAQD/EgAA1xwAAAQAAAAbTAEAG0wBABtMAQALAAAAxlQBAP8SAADXHAAABAAAAG9TAQBvUwEAb1MBAAsAAADGVAEA/xIAANccAAAEAAAA4y0BAOMtAQDjLQEACwAAAMZUAQD/EgAA1xwAAAQAAADWngAA1p4AANaeAAALAAAAyFQBAFqeAADXHAAABAAAAOiHAADohwAA6IcAAAsAAADIVAEAWp4AANccAAAEAAAA1QwBANUMAQDVDAEACwAAAMhUAQBangAA1xwAAAQAAABoTQEAaE0BAGhNAQALAAAAyFQBAFqeAADXHAAABAAAAMFNAQDBTQEAwU0BAAMAAADIVAEAWp4AANccAAAEAAAADE4BAAxOAQAMTgEACwAAAMhUAQBangAA1xwAAAQAAACjTgEAo04BAKNOAQALAAAAyFQBAFqeAADXHAAABAAAAGhNAQBoTQEAaE0BAAsAAADGVAEA/xIAANccAAAEAAAAo04BAKNOAQCjTgEACwAAAMZUAQD/EgAA1xwAAAQAAAADTwEAA08BAANPAQALAAAAxlQBAP8SAADXHAAABAAAAJ2OAACdjgAAnY4AAAMAAADGVAEA/xIAANccAAAEAAAAnY4AAJ2OAACdjgAAAwAAAMhUAQBangAA1xwAAAQAAACNkQAAjZEAAI2RAAALAAAAvVQBALsKAADXHAAABAAAAOMtAQDjLQEA4y0BAAsAAADKVAEAkIcAAJCHAAAEAAAAG0wBABtMAQAbTAEACwAAAMpUAQCQhwAAkIcAAAQAAACNkQAAjZEAAI2RAAALAAAAylQBAJCHAACQhwAABAAAAOiHAADohwAA6IcAAAsAAADKVAEAkIcAAJCHAAAEAAAAb1MBAG9TAQBvUwEACwAAAMpUAQCQhwAAkIcAAAQAAABoTQEAaE0BAGhNAQALAAAAylQBAJCHAACQhwAABAAAANBNAQDQTQEA0E0BAAMAAADKVAEAkIcAAJCHAAAEAAAAo04BAKNOAQCjTgEACwAAAMpUAQCQhwAAkIcAAAQAAADQTQEA0E0BANBNAQADAAAAyFQBAFqeAADXHAAABAAAAB+KAAAfigAAH4oAAAMAAAAhAAAA/xIAANccAAAEAAAAA08BAANPAQADTwEAAwAAAMhUAQBangAA1xwAAAQAAADQTQEA0E0BANBNAQADAAAAxlQBAP8SAADXHAAABAAAAN3JAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAAIxUBACMVAQAjFQEAAwAAAMZUAQD/EgAA1xwAAAQAAAAbTAEAG0wBABtMAQALAAAAv1QBAKxRAQCsUQEABAAAAMpUAQCQhwAAkIcAAAQAAACjTgEAo04BAKNOAQALAAAAv1QBAKxRAQCsUQEABAAAAMpUAQCQhwAAkIcAAAQAAADHTgEAx04BAMdOAQALAAAAv1QBAKxRAQCsUQEABAAAAMpUAQCQhwAAkIcAAAQAAABvUwEAb1MBAG9TAQALAAAAv1QBAKxRAQCsUQEABAAAAMpUAQCQhwAAkIcAAAQAAABvUwEAb1MBAG9TAQALAAAAv1QBAKxRAQCsUQEABAAAADHLAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAAb1MBAG9TAQBvUwEACwAAAMFUAQCSCQAAkgkAAAYAAADKVAEAkIcAAJCHAAAEAAAA4y0BAOMtAQDjLQEACwAAAMFUAQB6TwEAek8BAAQAAADKVAEAkIcAAJCHAAAEAAAAjEQAAIxEAACMRAAABAAAADHLAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAAtIQAALSEAACQhwAABAAAADHLAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAApMEAAKTBAACkwQAABAAAADHLAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAAjZEAAI2RAACNkQAACwAAAMFUAQB6TwEAek8BAAQAAADKVAEAkIcAAJCHAAAEAAAA1p4AANaeAADWngAACwAAAMFUAQB6TwEAek8BAAQAAADKVAEAkIcAAJCHAAAEAAAA1p4AANaeAADWngAACwAAAL9UAQCsUQEArFEBAAQAAADKVAEAkIcAAJCHAAAEAAAAjZEAAI2RAACNkQAACwAAAL9UAQCsUQEArFEBAAQAAADKVAEAkIcAAJCHAAAEAAAAaw4BAGsOAQBrDgEABAAAADHLAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAACisAAOAsAADgLAAABAAAALrCAADdyQAA3ckAAAoAAAAKKwAA4CwAAOAsAAAEAAAAZsoAAN3JAADdyQAACgAAAKIrAADgLAAA4CwAAAQAAAC6wgAA3ckAAN3JAAAKAAAAoisAAOAsAADgLAAABAAAAGbKAADdyQAA3ckAAAoAAABZngAAWp4AANccAAAEAAAAusIAAN3JAADdyQAACgAAAFmeAABangAA1xwAAAQAAABmygAA3ckAAN3JAAAKAAAAi0QAAIxEAACMRAAABAAAALrCAADdyQAA3ckAAAoAAACLRAAAjEQAAIxEAAAEAAAAZsoAAN3JAADdyQAACgAAAF25AABeuQAAXrkAAAQAAAC6wgAA3ckAAN3JAAAKAAAAXbkAAF65AABeuQAABAAAAGbKAADdyQAA3ckAAAoAAACjwQAApMEAAKTBAAAEAAAAusIAAN3JAADdyQAACgAAAKPBAACkwQAApMEAAAQAAABmygAA3ckAAN3JAAAKAAAAnLQAAJ20AACdtAAABAAAALrCAADdyQAA3ckAAAoAAACctAAAnbQAAJ20AAAEAAAAZsoAAN3JAADdyQAACgAAAN8sAADgLAAA4CwAAAQAAADdyQAA3ckAAN3JAAAKAAAAcNAAAHHQAABx0AAAEAAAALrCAADdyQAA3ckAAAoAAABw0AAAcdAAAHHQAAAQAAAAZsoAAN3JAADdyQAACgAAAEYMAQBHDAEARwwBAAQAAAC6wgAA3ckAAN3JAAAKAAAARgwBAEcMAQBHDAEABAAAAGbKAADdyQAA3ckAAAoAAADyCwEARwwBAEcMAQAEAAAAusIAAN3JAADdyQAACgAAAPILAQBHDAEARwwBAAQAAABmygAA3ckAAN3JAAAKAAAAag4BAGsOAQBrDgEABAAAALrCAADdyQAA3ckAAAoAAABqDgEAaw4BAGsOAQAEAAAAZsoAAN3JAADdyQAACgAAAIdQAQB6TwEAek8BAAQAAAC6wgAA3ckAAN3JAAAKAAAAh1ABAHpPAQB6TwEABAAAAGbKAADdyQAA3ckAAAoAAACrUQEArFEBAKxRAQAEAAAAusIAAN3JAADdyQAACgAAAKtRAQCsUQEArFEBAAQAAABmygAA3ckAAN3JAAAKAAAAtVQAALZUAAAqWgAABAAAALrCAADdyQAA3ckAAAoAAAC1VAAAtlQAACpaAAAEAAAAZsoAAN3JAADdyQAACgAAAClaAAAqWgAAKloAAAQAAAC6wgAA3ckAAN3JAAAKAAAAKVoAACpaAAAqWgAABAAAAGbKAADdyQAA3ckAAAoAAAAnhwAAKIcAAJCHAAAEAAAAusIAAN3JAADdyQAACgAAAI+HAACQhwAAkIcAAAQAAAC6wgAA3ckAAN3JAAAKAAAAj4cAAJCHAACQhwAABAAAAGbKAADdyQAA3ckAAAoAAADTSwAA1EsAANRLAAAQAAAAusIAAN3JAADdyQAACgAAANNLAADUSwAA1EsAABAAAABmygAA3ckAAN3JAAAKAAAA40sAANRLAADUSwAAEAAAALrCAADdyQAA3ckAAAoAAADjSwAA1EsAANRLAAAEAAAAZsoAAN3JAADdyQAACgAAALOEAAC0hAAAkIcAAAQAAAC6wgAA3ckAAN3JAAAKAAAAs4QAALSEAACQhwAABAAAAGbKAADdyQAA3ckAAAoAAABqWgAAa1oAACpaAAAEAAAAusIAAN3JAADdyQAACgAAAGpaAABrWgAAKloAAAQAAABmygAA3ckAAN3JAAAKAAAAD0wAAGtaAAAqWgAABAAAALrCAADdyQAA3ckAAAoAAAAPTAAAa1oAACpaAAAEAAAAZsoAAN3JAADdyQAACgAAAJHEAACSxAAAksQAABAAAAC6wgAA3ckAAN3JAAAKAAAAc38AAHR/AAB0fwAAEAAAALrCAADdyQAA3ckAAAoAAABzfwAAdH8AAHR/AAAQAAAAZsoAAN3JAADdyQAACgAAAA0IAAD/EgAA1xwAAAQAAAC6wgAA3ckAAN3JAAAKAAAADQgAAP8SAADXHAAABAAAAGbKAADdyQAA3ckAAAoAAAD+EgAA/xIAANccAAAEAAAAusIAAN3JAADdyQAACgAAAP4SAAD/EgAA1xwAAAQAAABmygAA3ckAAN3JAAAKAAAAXUsBAF5LAQDXHAAABAAAALrCAADdyQAA3ckAAAoAAABdSwEAXksBANccAAAEAAAAZsoAAN3JAADdyQAACgAAAAhNAQAJTQEA1xwAAAQAAAC6wgAA3ckAAN3JAAAKAAAACE0BAAlNAQDXHAAABAAAAGbKAADdyQAA3ckAAAoAAAC6CgAAuwoAANccAAAEAAAAusIAAN3JAADdyQAACgAAALoKAAC7CgAA1xwAAAQAAABmygAA3ckAAN3JAAAKAAAAi0QAAIxEAACMRAAABAAAACUAAACQhwAAkIcAAAQAAACLRAAAjEQAAIxEAAAEAAAAHkYBAJCHAACQhwAABAAAAKtRAQCsUQEArFEBAAQAAAAlAAAAkIcAAJCHAAAEAAAAq1EBAKxRAQCsUQEABAAAAB5GAQCQhwAAkIcAAAQAAACctAAAnbQAAJ20AAAEAAAAJQAAAJCHAACQhwAABAAAAJy0AACdtAAAnbQAAAQAAAAeRgEAkIcAAJCHAAAEAAAAXbkAAF65AABeuQAABAAAACUAAACQhwAAkIcAAAQAAABduQAAXrkAAF65AAAEAAAAHkYBAJCHAACQhwAABAAAAKPBAACkwQAApMEAAAQAAAAlAAAAkIcAAJCHAAAEAAAAo8EAAKTBAACkwQAABAAAAB5GAQCQhwAAkIcAAAQAAABqDgEAaw4BAGsOAQAEAAAAJQAAAJCHAACQhwAABAAAAGoOAQBrDgEAaw4BAAQAAAAeRgEAkIcAAJCHAAAEAAAAXS0BAF4tAQBeLQEACwAAABwAAAB6TwEAek8BAAQAAABdLQEAXi0BAF4tAQALAAAAUqwAAHpPAQB6TwEABAAAAF0tAQBeLQEAXi0BAAsAAAAaAAAArFEBAKxRAQAEAAAAnI4AAJ2OAACdjgAAAwAAABoAAACsUQEArFEBAAQAAACcjgAAnY4AAJ2OAAADAAAAHAAAAHpPAQB6TwEABAAAAJyOAACdjgAAnY4AAAMAAABSrAAAek8BAHpPAQAEAAAAxiwBAMcsAQDHLAEACwAAABwAAAB6TwEAek8BAAQAAADGLAEAxywBAMcsAQALAAAAUqwAAHpPAQB6TwEABAAAAMYsAQDHLAEAxywBAAsAAAAaAAAArFEBAKxRAQAEAAAA4i0BAOMtAQDjLQEACwAAABwAAAB6TwEAek8BAAQAAADiLQEA4y0BAOMtAQALAAAAUqwAAHpPAQB6TwEABAAAAOItAQDjLQEA4y0BAAsAAAAaAAAArFEBAKxRAQAEAAAAGkwBABtMAQAbTAEACwAAABoAAACsUQEArFEBAAQAAAAaTAEAG0wBABtMAQALAAAAHAAAAHpPAQB6TwEABAAAAG5TAQBvUwEAb1MBAAsAAAAaAAAArFEBAKxRAQAEAAAAblMBAG9TAQBvUwEACwAAABwAAAB6TwEAek8BAAQAAABuUwEAb1MBAG9TAQALAAAAUqwAAHpPAQB6TwEABAAAAIyRAACNkQAAjZEAAAsAAAAaAAAArFEBAKxRAQAEAAAAjJEAAI2RAACNkQAACwAAABwAAAB6TwEAek8BAAQAAADnhwAA6IcAAOiHAAALAAAAGgAAAKxRAQCsUQEABAAAAOeHAADohwAA6IcAAAsAAAAcAAAAek8BAHpPAQAEAAAA1AwBANUMAQDVDAEACwAAABoAAACsUQEArFEBAAQAAADUDAEA1QwBANUMAQALAAAAHAAAAHpPAQB6TwEABAAAANWeAADWngAA1p4AAAsAAAAaAAAArFEBAKxRAQAEAAAA1Z4AANaeAADWngAACwAAABwAAAB6TwEAek8BAAQAAADVngAA1p4AANaeAAALAAAAUqwAAHpPAQB6TwEABAAAAGdNAQBoTQEAaE0BAAsAAAAcAAAAek8BAHpPAQAEAAAAZ00BAGhNAQBoTQEACwAAAFKsAAB6TwEAek8BAAQAAACiTgEAo04BAKNOAQALAAAAHAAAAHpPAQB6TwEABAAAAGdNAQBoTQEAaE0BAAsAAAAaAAAArFEBAKxRAQAEAAAAz00BANBNAQDQTQEACwAAABoAAACsUQEArFEBAAQAAACiTgEAo04BAKNOAQALAAAAGgAAAKxRAQCsUQEABAAAAAJPAQADTwEAA08BAAMAAAAaAAAArFEBAKxRAQAEAAAAxiwBAMcsAQDHLAEACwAAACEAAAD/EgAA1xwAAAQAAADGLAEAxywBAMcsAQALAAAA0vMAAP8SAADXHAAABAAAAM8tAQDQLQEA0C0BAAsAAAAhAAAA/xIAANccAAAEAAAAzy0BANAtAQDQLQEACwAAANLzAAD/EgAA1xwAAAQAAABdLQEAXi0BAF4tAQALAAAAIQAAAP8SAADXHAAABAAAAF0tAQBeLQEAXi0BAAsAAAD/EgAA/xIAANccAAAEAAAAxiwBAMcsAQDHLAEACwAAACMAAABangAA1xwAAAQAAABdLQEAXi0BAF4tAQALAAAAIwAAAFqeAADXHAAABAAAAGcuAQBoLgEAaC4BAAsAAAAjAAAAWp4AANccAAAEAAAAmi4BAJsuAQCbLgEABgAAACEAAAD/EgAA1xwAAAQAAACaLgEAmy4BAJsuAQAGAAAA0vMAAP8SAADXHAAABAAAABpMAQAbTAEAG0wBAAsAAAAhAAAA/xIAANccAAAEAAAAblMBAG9TAQBvUwEACwAAACEAAAD/EgAA1xwAAAQAAABuUwEAb1MBAG9TAQALAAAA0vMAAP8SAADXHAAABAAAAOItAQDjLQEA4y0BAAsAAAAhAAAA/xIAANccAAAEAAAA4i0BAOMtAQDjLQEACwAAANLzAAD/EgAA1xwAAAQAAADVngAA1p4AANaeAAALAAAAIwAAAFqeAADXHAAABAAAAOeHAADohwAA6IcAAAsAAAAjAAAAWp4AANccAAAEAAAA1AwBANUMAQDVDAEACwAAACMAAABangAA1xwAAAQAAABnTQEAaE0BAGhNAQALAAAAIwAAAFqeAADXHAAABAAAAMBNAQDBTQEAwU0BAAMAAAAjAAAAWp4AANccAAAEAAAAC04BAAxOAQAMTgEACwAAACMAAABangAA1xwAAAQAAACiTgEAo04BAKNOAQALAAAAIwAAAFqeAADXHAAABAAAAGdNAQBoTQEAaE0BAAsAAAAhAAAA/xIAANccAAAEAAAAZ00BAGhNAQBoTQEACwAAANLzAAD/EgAA1xwAAAQAAACiTgEAo04BAKNOAQALAAAAIQAAAP8SAADXHAAABAAAAAJPAQADTwEAA08BAAsAAAAhAAAA/xIAANccAAAEAAAAAk8BAANPAQADTwEACwAAANLzAAD/EgAA1xwAAAQAAACcjgAAnY4AAJ2OAAADAAAAIQAAAP8SAADXHAAABAAAAJyOAACdjgAAnY4AAAMAAADS8wAA/xIAANccAAAEAAAAnI4AAJ2OAACdjgAAAwAAACMAAABangAA1xwAAAQAAACMkQAAjZEAAI2RAAALAAAAGAAAALsKAADXHAAABAAAAIyRAACNkQAAjZEAAAsAAAC7CgAAuwoAANccAAAEAAAA4i0BAOMtAQDjLQEACwAAACUAAACQhwAAkIcAAAQAAADiLQEA4y0BAOMtAQALAAAAHkYBAJCHAACQhwAABAAAABpMAQAbTAEAG0wBAAsAAAAlAAAAkIcAAJCHAAAEAAAAGkwBABtMAQAbTAEACwAAAB5GAQCQhwAAkIcAAAQAAACMkQAAjZEAAI2RAAALAAAAJQAAAJCHAACQhwAABAAAAIyRAACNkQAAjZEAAAsAAAAeRgEAkIcAAJCHAAAEAAAA54cAAOiHAADohwAACwAAACUAAACQhwAAkIcAAAQAAADnhwAA6IcAAOiHAAALAAAAHkYBAJCHAACQhwAABAAAAG5TAQBvUwEAb1MBAAsAAAAlAAAAkIcAAJCHAAAEAAAAblMBAG9TAQBvUwEACwAAAB5GAQCQhwAAkIcAAAQAAABnTQEAaE0BAGhNAQALAAAAJQAAAJCHAACQhwAABAAAAGdNAQBoTQEAaE0BAAsAAAAeRgEAkIcAAJCHAAAEAAAAz00BANBNAQDQTQEAAwAAACUAAACQhwAAkIcAAAQAAADPTQEA0E0BANBNAQADAAAAHkYBAJCHAACQhwAABAAAAKJOAQCjTgEAo04BAAsAAAAlAAAAkIcAAJCHAAAEAAAAok4BAKNOAQCjTgEACwAAAB5GAQCQhwAAkIcAAAQAAADPTQEA0E0BANBNAQADAAAAIwAAAFqeAADXHAAABAAAAAJPAQADTwEAA08BAAMAAAAjAAAAWp4AANccAAAEAAAAz00BANBNAQDQTQEAAwAAACEAAAD/EgAA1xwAAAQAAADPTQEA0E0BANBNAQADAAAA0vMAAP8SAADXHAAABAAAAB6KAAAfigAAH4oAAAMAAAAhAAAA/xIAANccAAAEAAAA3MkAAN3JAADdyQAACgAAACUAAACQhwAAkIcAAAQAAADcyQAA3ckAAN3JAAAKAAAAHkYBAJCHAACQhwAABAAAACIVAQAjFQEAIxUBAAMAAAAhAAAA/xIAANccAAAEAAAAGkwBABtMAQAbTAEACwAAABoAAACsUQEArFEBAAQAAAAlAAAAkIcAAJCHAAAEAAAAok4BAKNOAQCjTgEACwAAABoAAACsUQEArFEBAAQAAAAlAAAAkIcAAJCHAAAEAAAAxk4BAMdOAQDHTgEACwAAABoAAACsUQEArFEBAAQAAAAlAAAAkIcAAJCHAAAEAAAAblMBAG9TAQBvUwEACwAAABoAAACsUQEArFEBAAQAAAAlAAAAkIcAAJCHAAAEAAAAblMBAG9TAQBvUwEACwAAABoAAACsUQEArFEBAAQAAAC6wgAA3ckAAN3JAAAKAAAAJQAAAJCHAACQhwAABAAAAG5TAQBvUwEAb1MBAAsAAAAcAAAAkgkAAJIJAAAGAAAAJQAAAJCHAACQhwAABAAAAOItAQDjLQEA4y0BAAsAAAAcAAAAek8BAHpPAQAEAAAAJQAAAJCHAACQhwAABAAAAItEAACMRAAAjEQAAAQAAAC6wgAA3ckAAN3JAAAKAAAAJQAAAJCHAACQhwAABAAAALOEAAC0hAAAkIcAAAQAAAC6wgAA3ckAAN3JAAAKAAAAJQAAAJCHAACQhwAABAAAAKPBAACkwQAApMEAAAQAAAC6wgAA3ckAAN3JAAAKAAAAJQAAAJCHAACQhwAABAAAAIyRAACNkQAAjZEAAAsAAAAcAAAAek8BAHpPAQAEAAAAJQAAAJCHAACQhwAABAAAAIyRAACNkQAAjZEAAAsAAAAaAAAArFEBAKxRAQAEAAAAJQAAAJCHAACQhwAABAAAANWeAADWngAA1p4AAAsAAAAcAAAAek8BAHpPAQAEAAAAJQAAAJCHAACQhwAABAAAANWeAADWngAA1p4AAAsAAAAaAAAArFEBAKxRAQAEAAAAJQAAAJCHAACQhwAABAAAAGoOAQBrDgEAaw4BAAQAAAC6wgAA3ckAAN3JAAAKAAAAJQAAAJCHAACQhwAABAAAAAorAADgLAAA4CwAAAQAAAAxywAA3ckAAN3JAAAKAAAAoisAAOAsAADgLAAABAAAADHLAADdyQAA3ckAAAoAAABZngAAWp4AANccAAAEAAAAMcsAAN3JAADdyQAACgAAAItEAACMRAAAjEQAAAQAAAAxywAA3ckAAN3JAAAKAAAAXbkAAF65AABeuQAABAAAADHLAADdyQAA3ckAAAoAAACjwQAApMEAAKTBAAAEAAAAMcsAAN3JAADdyQAACgAAAJy0AACdtAAAnbQAAAQAAAAxywAA3ckAAN3JAAAKAAAAcNAAAHHQAABx0AAAEAAAADHLAADdyQAA3ckAAAoAAABGDAEARwwBAEcMAQAEAAAAMcsAAN3JAADdyQAACgAAAPILAQBHDAEARwwBAAQAAAAxywAA3ckAAN3JAAAKAAAAag4BAGsOAQBrDgEABAAAADHLAADdyQAA3ckAAAoAAACHUAEAek8BAHpPAQAEAAAAMcsAAN3JAADdyQAACgAAAKtRAQCsUQEArFEBAAQAAAAxywAA3ckAAN3JAAAKAAAAtVQAALZUAAAqWgAABAAAADHLAADdyQAA3ckAAAoAAAApWgAAKloAACpaAAAEAAAAMcsAAN3JAADdyQAACgAAACeHAAAohwAAkIcAAAQAAAAxywAA3ckAAN3JAAAKAAAAj4cAAJCHAACQhwAABAAAADHLAADdyQAA3ckAAAoAAADTSwAA1EsAANRLAAAQAAAAMcsAAN3JAADdyQAACgAAAONLAADUSwAA1EsAABAAAAAxywAA3ckAAN3JAAAKAAAAs4QAALSEAACQhwAABAAAADHLAADdyQAA3ckAAAoAAABqWgAAa1oAACpaAAAEAAAAMcsAAN3JAADdyQAACgAAAA9MAABrWgAAKloAAAQAAAAxywAA3ckAAN3JAAAKAAAAkcQAAJLEAACSxAAAEAAAADHLAADdyQAA3ckAAAoAAABzfwAAdH8AAHR/AAAQAAAAMcsAAN3JAADdyQAACgAAAA0IAAD/EgAA1xwAAAQAAAAxywAA3ckAAN3JAAAKAAAA/hIAAP8SAADXHAAABAAAADHLAADdyQAA3ckAAAoAAABdSwEAXksBANccAAAEAAAAMcsAAN3JAADdyQAACgAAAAhNAQAJTQEA1xwAAAQAAAAxywAA3ckAAN3JAAAKAAAAugoAALsKAADXHAAABAAAADHLAADdyQAA3ckAAAoAAACLRAAAjEQAAIxEAAAEAAAAylQBAJCHAACQhwAABAAAAKtRAQCsUQEArFEBAAQAAADKVAEAkIcAAJCHAAAEAAAAnLQAAJ20AACdtAAABAAAAMpUAQCQhwAAkIcAAAQAAABduQAAXrkAAF65AAAEAAAAylQBAJCHAACQhwAABAAAAKPBAACkwQAApMEAAAQAAADKVAEAkIcAAJCHAAAEAAAAag4BAGsOAQBrDgEABAAAAMpUAQCQhwAAkIcAAAQAAABdLQEAXi0BAF4tAQALAAAAwVQBAHpPAQB6TwEABAAAAF0tAQBeLQEAXi0BAAsAAAC/VAEArFEBAKxRAQAEAAAAnI4AAJ2OAACdjgAAAwAAAL9UAQCsUQEArFEBAAQAAACcjgAAnY4AAJ2OAAADAAAAwVQBAHpPAQB6TwEABAAAAMYsAQDHLAEAxywBAAsAAADBVAEAek8BAHpPAQAEAAAAxiwBAMcsAQDHLAEACwAAAL9UAQCsUQEArFEBAAQAAADiLQEA4y0BAOMtAQALAAAAwVQBAHpPAQB6TwEABAAAAOItAQDjLQEA4y0BAAsAAAC/VAEArFEBAKxRAQAEAAAAGkwBABtMAQAbTAEACwAAAL9UAQCsUQEArFEBAAQAAAAaTAEAG0wBABtMAQALAAAAwVQBAHpPAQB6TwEABAAAAG5TAQBvUwEAb1MBAAsAAAC/VAEArFEBAKxRAQAEAAAAblMBAG9TAQBvUwEACwAAAMFUAQB6TwEAek8BAAQAAACMkQAAjZEAAI2RAAALAAAAv1QBAKxRAQCsUQEABAAAAIyRAACNkQAAjZEAAAsAAADBVAEAek8BAHpPAQAEAAAA54cAAOiHAADohwAACwAAAL9UAQCsUQEArFEBAAQAAADnhwAA6IcAAOiHAAALAAAAwVQBAHpPAQB6TwEABAAAANQMAQDVDAEA1QwBAAsAAAC/VAEArFEBAKxRAQAEAAAA1AwBANUMAQDVDAEACwAAAMFUAQB6TwEAek8BAAQAAADVngAA1p4AANaeAAALAAAAv1QBAKxRAQCsUQEABAAAANWeAADWngAA1p4AAAsAAADBVAEAek8BAHpPAQAEAAAAZ00BAGhNAQBoTQEACwAAAMFUAQB6TwEAek8BAAQAAACiTgEAo04BAKNOAQALAAAAwVQBAHpPAQB6TwEABAAAAGdNAQBoTQEAaE0BAAsAAAC/VAEArFEBAKxRAQAEAAAAz00BANBNAQDQTQEACwAAAL9UAQCsUQEArFEBAAQAAACiTgEAo04BAKNOAQALAAAAv1QBAKxRAQCsUQEABAAAAAJPAQADTwEAA08BAAMAAAC/VAEArFEBAKxRAQAEAAAAxiwBAMcsAQDHLAEACwAAAMZUAQD/EgAA1xwAAAQAAADPLQEA0C0BANAtAQALAAAAxlQBAP8SAADXHAAABAAAAF0tAQBeLQEAXi0BAAsAAADGVAEA/xIAANccAAAEAAAAxiwBAMcsAQDHLAEACwAAAMhUAQBangAA1xwAAAQAAABdLQEAXi0BAF4tAQALAAAAyFQBAFqeAADXHAAABAAAAGcuAQBoLgEAaC4BAAsAAADIVAEAWp4AANccAAAEAAAAmi4BAJsuAQCbLgEABgAAAMZUAQD/EgAA1xwAAAQAAAAaTAEAG0wBABtMAQALAAAAxlQBAP8SAADXHAAABAAAAG5TAQBvUwEAb1MBAAsAAADGVAEA/xIAANccAAAEAAAA4i0BAOMtAQDjLQEACwAAAMZUAQD/EgAA1xwAAAQAAADVngAA1p4AANaeAAALAAAAyFQBAFqeAADXHAAABAAAAOeHAADohwAA6IcAAAsAAADIVAEAWp4AANccAAAEAAAA1AwBANUMAQDVDAEACwAAAMhUAQBangAA1xwAAAQAAABnTQEAaE0BAGhNAQALAAAAyFQBAFqeAADXHAAABAAAAMBNAQDBTQEAwU0BAAMAAADIVAEAWp4AANccAAAEAAAAC04BAAxOAQAMTgEACwAAAMhUAQBangAA1xwAAAQAAACiTgEAo04BAKNOAQALAAAAyFQBAFqeAADXHAAABAAAAGdNAQBoTQEAaE0BAAsAAADGVAEA/xIAANccAAAEAAAAok4BAKNOAQCjTgEACwAAAMZUAQD/EgAA1xwAAAQAAAACTwEAA08BAANPAQALAAAAxlQBAP8SAADXHAAABAAAAJyOAACdjgAAnY4AAAMAAADGVAEA/xIAANccAAAEAAAAnI4AAJ2OAACdjgAAAwAAAMhUAQBangAA1xwAAAQAAACMkQAAjZEAAI2RAAALAAAAvVQBALsKAADXHAAABAAAAOItAQDjLQEA4y0BAAsAAADKVAEAkIcAAJCHAAAEAAAAGkwBABtMAQAbTAEACwAAAMpUAQCQhwAAkIcAAAQAAACMkQAAjZEAAI2RAAALAAAAylQBAJCHAACQhwAABAAAAOeHAADohwAA6IcAAAsAAADKVAEAkIcAAJCHAAAEAAAAblMBAG9TAQBvUwEACwAAAMpUAQCQhwAAkIcAAAQAAABnTQEAaE0BAGhNAQALAAAAylQBAJCHAACQhwAABAAAAM9NAQDQTQEA0E0BAAMAAADKVAEAkIcAAJCHAAAEAAAAok4BAKNOAQCjTgEACwAAAMpUAQCQhwAAkIcAAAQAAADPTQEA0E0BANBNAQADAAAAyFQBAFqeAADXHAAABAAAAB6KAAAfigAAH4oAAAMAAAAhAAAA/xIAANccAAAEAAAAAk8BAANPAQADTwEAAwAAAMhUAQBangAA1xwAAAQAAADPTQEA0E0BANBNAQADAAAAxlQBAP8SAADXHAAABAAAANzJAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAAIhUBACMVAQAjFQEAAwAAAMZUAQD/EgAA1xwAAAQAAAAaTAEAG0wBABtMAQALAAAAv1QBAKxRAQCsUQEABAAAAMpUAQCQhwAAkIcAAAQAAACiTgEAo04BAKNOAQALAAAAv1QBAKxRAQCsUQEABAAAAMpUAQCQhwAAkIcAAAQAAADGTgEAx04BAMdOAQALAAAAv1QBAKxRAQCsUQEABAAAAMpUAQCQhwAAkIcAAAQAAABuUwEAb1MBAG9TAQALAAAAv1QBAKxRAQCsUQEABAAAAMpUAQCQhwAAkIcAAAQAAABuUwEAb1MBAG9TAQALAAAAv1QBAKxRAQCsUQEABAAAADHLAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAAblMBAG9TAQBvUwEACwAAAMFUAQCSCQAAkgkAAAYAAADKVAEAkIcAAJCHAAAEAAAA4i0BAOMtAQDjLQEACwAAAMFUAQB6TwEAek8BAAQAAADKVAEAkIcAAJCHAAAEAAAAi0QAAIxEAACMRAAABAAAADHLAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAAs4QAALSEAACQhwAABAAAADHLAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAAo8EAAKTBAACkwQAABAAAADHLAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAAjJEAAI2RAACNkQAACwAAAMFUAQB6TwEAek8BAAQAAADKVAEAkIcAAJCHAAAEAAAA1Z4AANaeAADWngAACwAAAMFUAQB6TwEAek8BAAQAAADKVAEAkIcAAJCHAAAEAAAA1Z4AANaeAADWngAACwAAAL9UAQCsUQEArFEBAAQAAADKVAEAkIcAAJCHAAAEAAAAjJEAAI2RAACNkQAACwAAAL9UAQCsUQEArFEBAAQAAADKVAEAkIcAAJCHAAAEAAAAag4BAGsOAQBrDgEABAAAADHLAADdyQAA3ckAAAoAAADKVAEAkIcAAJCHAAAEAAAACSsAAOAsAADgLAAABAAAALnCAADdyQAA3ckAAAoAAAAJKwAA4CwAAOAsAAAEAAAAZcoAAN3JAADdyQAACgAAAKErAADgLAAA4CwAAAQAAAC5wgAA3ckAAN3JAAAKAAAAoSsAAOAsAADgLAAABAAAAGXKAADdyQAA3ckAAAoAAABYngAAWp4AANccAAAEAAAAucIAAN3JAADdyQAACgAAAFieAABangAA1xwAAAQAAABlygAA3ckAAN3JAAAKAAAAikQAAIxEAACMRAAABAAAALnCAADdyQAA3ckAAAoAAACKRAAAjEQAAIxEAAAEAAAAZcoAAN3JAADdyQAACgAAAFy5AABeuQAAXrkAAAQAAAC5wgAA3ckAAN3JAAAKAAAAXLkAAF65AABeuQAABAAAAGXKAADdyQAA3ckAAAoAAACiwQAApMEAAKTBAAAEAAAAucIAAN3JAADdyQAACgAAAKLBAACkwQAApMEAAAQAAABlygAA3ckAAN3JAAAKAAAAm7QAAJ20AACdtAAABAAAALnCAADdyQAA3ckAAAoAAACbtAAAnbQAAJ20AAAEAAAAZcoAAN3JAADdyQAACgAAAN4sAADgLAAA4CwAAAQAAADbyQAA3ckAAN3JAAAKAAAAb9AAAHHQAABx0AAAEAAAALnCAADdyQAA3ckAAAoAAABv0AAAcdAAAHHQAAAQAAAAZcoAAN3JAADdyQAACgAAAEUMAQBHDAEARwwBAAQAAAC5wgAA3ckAAN3JAAAKAAAARQwBAEcMAQBHDAEABAAAAGXKAADdyQAA3ckAAAoAAADxCwEARwwBAEcMAQAEAAAAucIAAN3JAADdyQAACgAAAPELAQBHDAEARwwBAAQAAABlygAA3ckAAN3JAAAKAAAAaQ4BAGsOAQBrDgEABAAAALnCAADdyQAA3ckAAAoAAABpDgEAaw4BAGsOAQAEAAAAZcoAAN3JAADdyQAACgAAAIZQAQB6TwEAek8BAAQAAAC5wgAA3ckAAN3JAAAKAAAAhlABAHpPAQB6TwEABAAAAGXKAADdyQAA3ckAAAoAAACqUQEArFEBAKxRAQAEAAAAucIAAN3JAADdyQAACgAAAKpRAQCsUQEArFEBAAQAAABlygAA3ckAAN3JAAAKAAAAtFQAALZUAAAqWgAABAAAALnCAADdyQAA3ckAAAoAAAC0VAAAtlQAACpaAAAEAAAAZcoAAN3JAADdyQAACgAAAChaAAAqWgAAKloAAAQAAAC5wgAA3ckAAN3JAAAKAAAAKFoAACpaAAAqWgAABAAAAGXKAADdyQAA3ckAAAoAAAAmhwAAKIcAAJCHAAAEAAAAucIAAN3JAADdyQAACgAAAI6HAACQhwAAkIcAAAQAAAC5wgAA3ckAAN3JAAAKAAAAjocAAJCHAACQhwAABAAAAGXKAADdyQAA3ckAAAoAAADSSwAA1EsAANRLAAAQAAAAucIAAN3JAADdyQAACgAAANJLAADUSwAA1EsAABAAAABlygAA3ckAAN3JAAAKAAAA4ksAANRLAADUSwAAEAAAALnCAADdyQAA3ckAAAoAAADiSwAA1EsAANRLAAAEAAAAZcoAAN3JAADdyQAACgAAALKEAAC0hAAAkIcAAAQAAAC5wgAA3ckAAN3JAAAKAAAAsoQAALSEAACQhwAABAAAAGXKAADdyQAA3ckAAAoAAABpWgAAa1oAACpaAAAEAAAAucIAAN3JAADdyQAACgAAAGlaAABrWgAAKloAAAQAAABlygAA3ckAAN3JAAAKAAAADkwAAGtaAAAqWgAABAAAALnCAADdyQAA3ckAAAoAAAAOTAAAa1oAACpaAAAEAAAAZcoAAN3JAADdyQAACgAAAJDEAACSxAAAksQAABAAAAC5wgAA3ckAAN3JAAAKAAAAcn8AAHR/AAB0fwAAEAAAALnCAADdyQAA3ckAAAoAAAByfwAAdH8AAHR/AAAQAAAAZcoAAN3JAADdyQAACgAAAAwIAAD/EgAA1xwAAAQAAAC5wgAA3ckAAN3JAAAKAAAADAgAAP8SAADXHAAABAAAAGXKAADdyQAA3ckAAAoAAAD9EgAA/xIAANccAAAEAAAAucIAAN3JAADdyQAACgAAAP0SAAD/EgAA1xwAAAQAAABlygAA3ckAAN3JAAAKAAAAXEsBAF5LAQDXHAAABAAAALnCAADdyQAA3ckAAAoAAABcSwEAXksBANccAAAEAAAAZcoAAN3JAADdyQAACgAAAAdNAQAJTQEA1xwAAAQAAAC5wgAA3ckAAN3JAAAKAAAAB00BAAlNAQDXHAAABAAAAGXKAADdyQAA3ckAAAoAAAC5CgAAuwoAANccAAAEAAAAucIAAN3JAADdyQAACgAAALkKAAC7CgAA1xwAAAQAAABlygAA3ckAAN3JAAAKAAAAikQAAIxEAACMRAAABAAAACQAAACQhwAAkIcAAAQAAACKRAAAjEQAAIxEAAAEAAAAHUYBAJCHAACQhwAABAAAAKpRAQCsUQEArFEBAAQAAAAkAAAAkIcAAJCHAAAEAAAAqlEBAKxRAQCsUQEABAAAAB1GAQCQhwAAkIcAAAQAAACbtAAAnbQAAJ20AAAEAAAAJAAAAJCHAACQhwAABAAAAJu0AACdtAAAnbQAAAQAAAAdRgEAkIcAAJCHAAAEAAAAXLkAAF65AABeuQAABAAAACQAAACQhwAAkIcAAAQAAABcuQAAXrkAAF65AAAEAAAAHUYBAJCHAACQhwAABAAAAKLBAACkwQAApMEAAAQAAAAkAAAAkIcAAJCHAAAEAAAAosEAAKTBAACkwQAABAAAAB1GAQCQhwAAkIcAAAQAAABpDgEAaw4BAGsOAQAEAAAAJAAAAJCHAACQhwAABAAAAGkOAQBrDgEAaw4BAAQAAAAdRgEAkIcAAJCHAAAEAAAAXC0BAF4tAQBeLQEACwAAABsAAAB6TwEAek8BAAQAAABcLQEAXi0BAF4tAQALAAAAUawAAHpPAQB6TwEABAAAAFwtAQBeLQEAXi0BAAsAAAAZAAAArFEBAKxRAQAEAAAAm44AAJ2OAACdjgAAAwAAABkAAACsUQEArFEBAAQAAACbjgAAnY4AAJ2OAAADAAAAGwAAAHpPAQB6TwEABAAAAJuOAACdjgAAnY4AAAMAAABRrAAAek8BAHpPAQAEAAAAxSwBAMcsAQDHLAEACwAAABsAAAB6TwEAek8BAAQAAADFLAEAxywBAMcsAQALAAAAUawAAHpPAQB6TwEABAAAAMUsAQDHLAEAxywBAAsAAAAZAAAArFEBAKxRAQAEAAAA4S0BAOMtAQDjLQEACwAAABsAAAB6TwEAek8BAAQAAADhLQEA4y0BAOMtAQALAAAAUawAAHpPAQB6TwEABAAAAOEtAQDjLQEA4y0BAAsAAAAZAAAArFEBAKxRAQAEAAAAGUwBABtMAQAbTAEACwAAABkAAACsUQEArFEBAAQAAAAZTAEAG0wBABtMAQALAAAAGwAAAHpPAQB6TwEABAAAAG1TAQBvUwEAb1MBAAsAAAAZAAAArFEBAKxRAQAEAAAAbVMBAG9TAQBvUwEACwAAABsAAAB6TwEAek8BAAQAAABtUwEAb1MBAG9TAQALAAAAUawAAHpPAQB6TwEABAAAAIyRAACNkQAAjZEAAAsAAAAZAAAArFEBAKxRAQAEAAAAjJEAAI2RAACNkQAACwAAABsAAAB6TwEAek8BAAQAAADmhwAA6IcAAOiHAAALAAAAGQAAAKxRAQCsUQEABAAAAOaHAADohwAA6IcAAAsAAAAbAAAAek8BAHpPAQAEAAAA0wwBANUMAQDVDAEACwAAABkAAACsUQEArFEBAAQAAADTDAEA1QwBANUMAQALAAAAGwAAAHpPAQB6TwEABAAAANSeAADWngAA1p4AAAsAAAAZAAAArFEBAKxRAQAEAAAA1J4AANaeAADWngAACwAAABsAAAB6TwEAek8BAAQAAADUngAA1p4AANaeAAALAAAAUawAAHpPAQB6TwEABAAAAGZNAQBoTQEAaE0BAAsAAAAbAAAAek8BAHpPAQAEAAAAZk0BAGhNAQBoTQEACwAAAFGsAAB6TwEAek8BAAQAAAChTgEAo04BAKNOAQALAAAAGwAAAHpPAQB6TwEABAAAAGZNAQBoTQEAaE0BAAsAAAAZAAAArFEBAKxRAQAEAAAAzk0BANBNAQDQTQEACwAAABkAAACsUQEArFEBAAQAAAChTgEAo04BAKNOAQALAAAAGQAAAKxRAQCsUQEABAAAAAFPAQADTwEAA08BAAMAAAAZAAAArFEBAKxRAQAEAAAAxSwBAMcsAQDHLAEACwAAAB8AAAD/EgAA1xwAAAQAAADFLAEAxywBAMcsAQALAAAA0PMAAP8SAADXHAAABAAAAM4tAQDQLQEA0C0BAAsAAAAfAAAA/xIAANccAAAEAAAAzi0BANAtAQDQLQEACwAAANDzAAD/EgAA1xwAAAQAAABcLQEAXi0BAF4tAQALAAAAHwAAAP8SAADXHAAABAAAAFwtAQBeLQEAXi0BAAsAAAD9EgAA/xIAANccAAAEAAAAxSwBAMcsAQDHLAEACwAAACIAAABangAA1xwAAAQAAABcLQEAXi0BAF4tAQALAAAAIgAAAFqeAADXHAAABAAAAGYuAQBoLgEAaC4BAAsAAAAiAAAAWp4AANccAAAEAAAAmS4BAJsuAQCbLgEABgAAAB8AAAD/EgAA1xwAAAQAAACZLgEAmy4BAJsuAQAGAAAA0PMAAP8SAADXHAAABAAAABlMAQAbTAEAG0wBAAsAAAAfAAAA/xIAANccAAAEAAAAbVMBAG9TAQBvUwEACwAAAB8AAAD/EgAA1xwAAAQAAABtUwEAb1MBAG9TAQALAAAA0PMAAP8SAADXHAAABAAAAOEtAQDjLQEA4y0BAAsAAAAfAAAA/xIAANccAAAEAAAA4S0BAOMtAQDjLQEACwAAANDzAAD/EgAA1xwAAAQAAADUngAA1p4AANaeAAALAAAAIgAAAFqeAADXHAAABAAAAOaHAADohwAA6IcAAAsAAAAiAAAAWp4AANccAAAEAAAA0wwBANUMAQDVDAEACwAAACIAAABangAA1xwAAAQAAABmTQEAaE0BAGhNAQALAAAAIgAAAFqeAADXHAAABAAAAL9NAQDBTQEAwU0BAAMAAAAiAAAAWp4AANccAAAEAAAACk4BAAxOAQAMTgEACwAAACIAAABangAA1xwAAAQAAAChTgEAo04BAKNOAQALAAAAIgAAAFqeAADXHAAABAAAAGZNAQBoTQEAaE0BAAsAAAAfAAAA/xIAANccAAAEAAAAZk0BAGhNAQBoTQEACwAAANDzAAD/EgAA1xwAAAQAAAChTgEAo04BAKNOAQALAAAAHwAAAP8SAADXHAAABAAAAAFPAQADTwEAA08BAAsAAAAfAAAA/xIAANccAAAEAAAAAU8BAANPAQADTwEACwAAANDzAAD/EgAA1xwAAAQAAACbjgAAnY4AAJ2OAAADAAAAHwAAAP8SAADXHAAABAAAAJuOAACdjgAAnY4AAAMAAADQ8wAA/xIAANccAAAEAAAAm44AAJ2OAACdjgAAAwAAACIAAABangAA1xwAAAQAAACMkQAAjZEAAI2RAAALAAAAFwAAALsKAADXHAAABAAAAIyRAACNkQAAjZEAAAsAAAC5CgAAuwoAANccAAAEAAAA4S0BAOMtAQDjLQEACwAAACQAAACQhwAAkIcAAAQAAADhLQEA4y0BAOMtAQALAAAAHUYBAJCHAACQhwAABAAAABlMAQAbTAEAG0wBAAsAAAAkAAAAkIcAAJCHAAAEAAAAGUwBABtMAQAbTAEACwAAAB1GAQCQhwAAkIcAAAQAAACMkQAAjZEAAI2RAAALAAAAJAAAAJCHAACQhwAABAAAAIyRAACNkQAAjZEAAAsAAAAdRgEAkIcAAJCHAAAEAAAA5ocAAOiHAADohwAACwAAACQAAACQhwAAkIcAAAQAAADmhwAA6IcAAOiHAAALAAAAHUYBAJCHAACQhwAABAAAAG1TAQBvUwEAb1MBAAsAAAAkAAAAkIcAAJCHAAAEAAAAbVMBAG9TAQBvUwEACwAAAB1GAQCQhwAAkIcAAAQAAABmTQEAaE0BAGhNAQALAAAAJAAAAJCHAACQhwAABAAAAGZNAQBoTQEAaE0BAAsAAAAdRgEAkIcAAJCHAAAEAAAAzk0BANBNAQDQTQEAAwAAACQAAACQhwAAkIcAAAQAAADOTQEA0E0BANBNAQADAAAAHUYBAJCHAACQhwAABAAAAKFOAQCjTgEAo04BAAsAAAAkAAAAkIcAAJCHAAAEAAAAoU4BAKNOAQCjTgEACwAAAB1GAQCQhwAAkIcAAAQAAADOTQEA0E0BANBNAQADAAAAIgAAAFqeAADXHAAABAAAAAFPAQADTwEAA08BAAMAAAAiAAAAWp4AANccAAAEAAAAzk0BANBNAQDQTQEAAwAAAB8AAAD/EgAA1xwAAAQAAADOTQEA0E0BANBNAQADAAAA0PMAAP8SAADXHAAABAAAAB2KAAAfigAAH4oAAAMAAAAfAAAA/xIAANccAAAEAAAA28kAAN3JAADdyQAACgAAACQAAACQhwAAkIcAAAQAAADbyQAA3ckAAN3JAAAKAAAAHUYBAJCHAACQhwAABAAAACEVAQAjFQEAIxUBAAMAAAAfAAAA/xIAANccAAAEAAAAGUwBABtMAQAbTAEACwAAABkAAACsUQEArFEBAAQAAAAkAAAAkIcAAJCHAAAEAAAAoU4BAKNOAQCjTgEACwAAABkAAACsUQEArFEBAAQAAAAkAAAAkIcAAJCHAAAEAAAAxU4BAMdOAQDHTgEACwAAABkAAACsUQEArFEBAAQAAAAkAAAAkIcAAJCHAAAEAAAAbVMBAG9TAQBvUwEACwAAABkAAACsUQEArFEBAAQAAAAkAAAAkIcAAJCHAAAEAAAAbVMBAG9TAQBvUwEACwAAABkAAACsUQEArFEBAAQAAAC5wgAA3ckAAN3JAAAKAAAAJAAAAJCHAACQhwAABAAAAG1TAQBvUwEAb1MBAAsAAAAbAAAAkgkAAJIJAAAGAAAAJAAAAJCHAACQhwAABAAAAOEtAQDjLQEA4y0BAAsAAAAbAAAAek8BAHpPAQAEAAAAJAAAAJCHAACQhwAABAAAAIpEAACMRAAAjEQAAAQAAAC5wgAA3ckAAN3JAAAKAAAAJAAAAJCHAACQhwAABAAAALKEAAC0hAAAkIcAAAQAAAC5wgAA3ckAAN3JAAAKAAAAJAAAAJCHAACQhwAABAAAAKLBAACkwQAApMEAAAQAAAC5wgAA3ckAAN3JAAAKAAAAJAAAAJCHAACQhwAABAAAAIyRAACNkQAAjZEAAAsAAAAbAAAAek8BAHpPAQAEAAAAJAAAAJCHAACQhwAABAAAAIyRAACNkQAAjZEAAAsAAAAZAAAArFEBAKxRAQAEAAAAJAAAAJCHAACQhwAABAAAANSeAADWngAA1p4AAAsAAAAbAAAAek8BAHpPAQAEAAAAJAAAAJCHAACQhwAABAAAANSeAADWngAA1p4AAAsAAAAZAAAArFEBAKxRAQAEAAAAJAAAAJCHAACQhwAABAAAAGkOAQBrDgEAaw4BAAQAAAC5wgAA3ckAAN3JAAAKAAAAJAAAAJCHAACQhwAABAAAAAkrAADgLAAA4CwAAAQAAAAwywAA3ckAAN3JAAAKAAAAoSsAAOAsAADgLAAABAAAADDLAADdyQAA3ckAAAoAAABYngAAWp4AANccAAAEAAAAMMsAAN3JAADdyQAACgAAAIpEAACMRAAAjEQAAAQAAAAwywAA3ckAAN3JAAAKAAAAXLkAAF65AABeuQAABAAAADDLAADdyQAA3ckAAAoAAACiwQAApMEAAKTBAAAEAAAAMMsAAN3JAADdyQAACgAAAJu0AACdtAAAnbQAAAQAAAAwywAA3ckAAN3JAAAKAAAAb9AAAHHQAABx0AAAEAAAADDLAADdyQAA3ckAAAoAAABFDAEARwwBAEcMAQAEAAAAMMsAAN3JAADdyQAACgAAAPELAQBHDAEARwwBAAQAAAAwywAA3ckAAN3JAAAKAAAAaQ4BAGsOAQBrDgEABAAAADDLAADdyQAA3ckAAAoAAACGUAEAek8BAHpPAQAEAAAAMMsAAN3JAADdyQAACgAAAKpRAQCsUQEArFEBAAQAAAAwywAA3ckAAN3JAAAKAAAAtFQAALZUAAAqWgAABAAAADDLAADdyQAA3ckAAAoAAAAoWgAAKloAACpaAAAEAAAAMMsAAN3JAADdyQAACgAAACaHAAAohwAAkIcAAAQAAAAwywAA3ckAAN3JAAAKAAAAjocAAJCHAACQhwAABAAAADDLAADdyQAA3ckAAAoAAADSSwAA1EsAANRLAAAQAAAAMMsAAN3JAADdyQAACgAAAOJLAADUSwAA1EsAABAAAAAwywAA3ckAAN3JAAAKAAAAsoQAALSEAACQhwAABAAAADDLAADdyQAA3ckAAAoAAABpWgAAa1oAACpaAAAEAAAAMMsAAN3JAADdyQAACgAAAA5MAABrWgAAKloAAAQAAAAwywAA3ckAAN3JAAAKAAAAkMQAAJLEAACSxAAAEAAAADDLAADdyQAA3ckAAAoAAAByfwAAdH8AAHR/AAAQAAAAMMsAAN3JAADdyQAACgAAAAwIAAD/EgAA1xwAAAQAAAAwywAA3ckAAN3JAAAKAAAA/RIAAP8SAADXHAAABAAAADDLAADdyQAA3ckAAAoAAABcSwEAXksBANccAAAEAAAAMMsAAN3JAADdyQAACgAAAAdNAQAJTQEA1xwAAAQAAAAwywAA3ckAAN3JAAAKAAAAuQoAALsKAADXHAAABAAAADDLAADdyQAA3ckAAAoAAACKRAAAjEQAAIxEAAAEAAAAyVQBAJCHAACQhwAABAAAAKpRAQCsUQEArFEBAAQAAADJVAEAkIcAAJCHAAAEAAAAm7QAAJ20AACdtAAABAAAAMlUAQCQhwAAkIcAAAQAAABcuQAAXrkAAF65AAAEAAAAyVQBAJCHAACQhwAABAAAAKLBAACkwQAApMEAAAQAAADJVAEAkIcAAJCHAAAEAAAAaQ4BAGsOAQBrDgEABAAAAMlUAQCQhwAAkIcAAAQAAABcLQEAXi0BAF4tAQALAAAAwFQBAHpPAQB6TwEABAAAAFwtAQBeLQEAXi0BAAsAAAC+VAEArFEBAKxRAQAEAAAAm44AAJ2OAACdjgAAAwAAAL5UAQCsUQEArFEBAAQAAACbjgAAnY4AAJ2OAAADAAAAwFQBAHpPAQB6TwEABAAAAMUsAQDHLAEAxywBAAsAAADAVAEAek8BAHpPAQAEAAAAxSwBAMcsAQDHLAEACwAAAL5UAQCsUQEArFEBAAQAAADhLQEA4y0BAOMtAQALAAAAwFQBAHpPAQB6TwEABAAAAOEtAQDjLQEA4y0BAAsAAAC+VAEArFEBAKxRAQAEAAAAGUwBABtMAQAbTAEACwAAAL5UAQCsUQEArFEBAAQAAAAZTAEAG0wBABtMAQALAAAAwFQBAHpPAQB6TwEABAAAAG1TAQBvUwEAb1MBAAsAAAC+VAEArFEBAKxRAQAEAAAAbVMBAG9TAQBvUwEACwAAAMBUAQB6TwEAek8BAAQAAACMkQAAjZEAAI2RAAALAAAAvlQBAKxRAQCsUQEABAAAAIyRAACNkQAAjZEAAAsAAADAVAEAek8BAHpPAQAEAAAA5ocAAOiHAADohwAACwAAAL5UAQCsUQEArFEBAAQAAADmhwAA6IcAAOiHAAALAAAAwFQBAHpPAQB6TwEABAAAANMMAQDVDAEA1QwBAAsAAAC+VAEArFEBAKxRAQAEAAAA0wwBANUMAQDVDAEACwAAAMBUAQB6TwEAek8BAAQAAADUngAA1p4AANaeAAALAAAAvlQBAKxRAQCsUQEABAAAANSeAADWngAA1p4AAAsAAADAVAEAek8BAHpPAQAEAAAAZk0BAGhNAQBoTQEACwAAAMBUAQB6TwEAek8BAAQAAAChTgEAo04BAKNOAQALAAAAwFQBAHpPAQB6TwEABAAAAGZNAQBoTQEAaE0BAAsAAAC+VAEArFEBAKxRAQAEAAAAzk0BANBNAQDQTQEACwAAAL5UAQCsUQEArFEBAAQAAAChTgEAo04BAKNOAQALAAAAvlQBAKxRAQCsUQEABAAAAAFPAQADTwEAA08BAAMAAAC+VAEArFEBAKxRAQAEAAAAxSwBAMcsAQDHLAEACwAAAMRUAQD/EgAA1xwAAAQAAADOLQEA0C0BANAtAQALAAAAxFQBAP8SAADXHAAABAAAAFwtAQBeLQEAXi0BAAsAAADEVAEA/xIAANccAAAEAAAAxSwBAMcsAQDHLAEACwAAAMdUAQBangAA1xwAAAQAAABcLQEAXi0BAF4tAQALAAAAx1QBAFqeAADXHAAABAAAAGYuAQBoLgEAaC4BAAsAAADHVAEAWp4AANccAAAEAAAAmS4BAJsuAQCbLgEABgAAAMRUAQD/EgAA1xwAAAQAAAAZTAEAG0wBABtMAQALAAAAxFQBAP8SAADXHAAABAAAAG1TAQBvUwEAb1MBAAsAAADEVAEA/xIAANccAAAEAAAA4S0BAOMtAQDjLQEACwAAAMRUAQD/EgAA1xwAAAQAAADUngAA1p4AANaeAAALAAAAx1QBAFqeAADXHAAABAAAAOaHAADohwAA6IcAAAsAAADHVAEAWp4AANccAAAEAAAA0wwBANUMAQDVDAEACwAAAMdUAQBangAA1xwAAAQAAABmTQEAaE0BAGhNAQALAAAAx1QBAFqeAADXHAAABAAAAL9NAQDBTQEAwU0BAAMAAADHVAEAWp4AANccAAAEAAAACk4BAAxOAQAMTgEACwAAAMdUAQBangAA1xwAAAQAAAChTgEAo04BAKNOAQALAAAAx1QBAFqeAADXHAAABAAAAGZNAQBoTQEAaE0BAAsAAADEVAEA/xIAANccAAAEAAAAoU4BAKNOAQCjTgEACwAAAMRUAQD/EgAA1xwAAAQAAAABTwEAA08BAANPAQALAAAAxFQBAP8SAADXHAAABAAAAJuOAACdjgAAnY4AAAMAAADEVAEA/xIAANccAAAEAAAAm44AAJ2OAACdjgAAAwAAAMdUAQBangAA1xwAAAQAAACMkQAAjZEAAI2RAAALAAAAu1QBALsKAADXHAAABAAAAOEtAQDjLQEA4y0BAAsAAADJVAEAkIcAAJCHAAAEAAAAGUwBABtMAQAbTAEACwAAAMlUAQCQhwAAkIcAAAQAAACMkQAAjZEAAI2RAAALAAAAyVQBAJCHAACQhwAABAAAAOaHAADohwAA6IcAAAsAAADJVAEAkIcAAJCHAAAEAAAAbVMBAG9TAQBvUwEACwAAAMlUAQCQhwAAkIcAAAQAAABmTQEAaE0BAGhNAQALAAAAyVQBAJCHAACQhwAABAAAAM5NAQDQTQEA0E0BAAMAAADJVAEAkIcAAJCHAAAEAAAAoU4BAKNOAQCjTgEACwAAAMlUAQCQhwAAkIcAAAQAAADOTQEA0E0BANBNAQADAAAAx1QBAFqeAADXHAAABAAAAB2KAAAfigAAH4oAAAMAAAAfAAAA/xIAANccAAAEAAAAAU8BAANPAQADTwEAAwAAAMdUAQBangAA1xwAAAQAAADOTQEA0E0BANBNAQADAAAAxFQBAP8SAADXHAAABAAAANvJAADdyQAA3ckAAAoAAADJVAEAkIcAAJCHAAAEAAAAIRUBACMVAQAjFQEAAwAAAMRUAQD/EgAA1xwAAAQAAAAZTAEAG0wBABtMAQALAAAAvlQBAKxRAQCsUQEABAAAAMlUAQCQhwAAkIcAAAQAAAChTgEAo04BAKNOAQALAAAAvlQBAKxRAQCsUQEABAAAAMlUAQCQhwAAkIcAAAQAAADFTgEAx04BAMdOAQALAAAAvlQBAKxRAQCsUQEABAAAAMlUAQCQhwAAkIcAAAQAAABtUwEAb1MBAG9TAQALAAAAvlQBAKxRAQCsUQEABAAAAMlUAQCQhwAAkIcAAAQAAABtUwEAb1MBAG9TAQALAAAAvlQBAKxRAQCsUQEABAAAADDLAADdyQAA3ckAAAoAAADJVAEAkIcAAJCHAAAEAAAAbVMBAG9TAQBvUwEACwAAAMBUAQCSCQAAkgkAAAYAAADJVAEAkIcAAJCHAAAEAAAA4S0BAOMtAQDjLQEACwAAAMBUAQB6TwEAek8BAAQAAADJVAEAkIcAAJCHAAAEAAAAikQAAIxEAACMRAAABAAAADDLAADdyQAA3ckAAAoAAADJVAEAkIcAAJCHAAAEAAAAsoQAALSEAACQhwAABAAAADDLAADdyQAA3ckAAAoAAADJVAEAkIcAAJCHAAAEAAAAosEAAKTBAACkwQAABAAAADDLAADdyQAA3ckAAAoAAADJVAEAkIcAAJCHAAAEAAAAjJEAAI2RAACNkQAACwAAAMBUAQB6TwEAek8BAAQAAADJVAEAkIcAAJCHAAAEAAAA1J4AANaeAADWngAACwAAAMBUAQB6TwEAek8BAAQAAADJVAEAkIcAAJCHAAAEAAAA1J4AANaeAADWngAACwAAAL5UAQCsUQEArFEBAAQAAADJVAEAkIcAAJCHAAAEAAAAjJEAAI2RAACNkQAACwAAAL5UAQCsUQEArFEBAAQAAADJVAEAkIcAAJCHAAAEAAAAaQ4BAGsOAQBrDgEABAAAADDLAADdyQAA3ckAAAoAAADJVAEAkIcAAJCHAAAEAAAAW6kAAF2pAABdqQAAEAAAAMdUAQAwRAEAMEQBAAsAAABcqQAAXakAAF2pAAAQAAAAyFQBADBEAQAwRAEACwAAAF2pAABdqQAAXakAABAAAADIVAEAMEQBADBEAQALAAAAW6kAAF2pAABdqQAAEAAAACIAAAAwRAEAMEQBAAsAAABcqQAAXakAAF2pAAAQAAAAIwAAADBEAQAwRAEACwAAAF2pAABdqQAAXakAABAAAAAjAAAAMEQBADBEAQALAAAA", preserve: { prefix: { e: true, E: true, a: true, A: true, u: true, U: true, x: true, X: true, anti: true, Anti: true, ANTI: true, agro: true, Agro: true, AGRO: true, be: true, Be: true, BE: true, bi: true, Bi: true, BI: true, bio: true, Bio: true, BIO: true, co: true, Co: true, CO: true, counter: true, Counter: true, COUNTER: true, cross: true, Cross: true, CROSS: true, cyber: true, Cyber: true, CYBER: true, de: true, De: true, DE: true, eco: true, Eco: true, ECO: true, ex: true, Ex: true, EX: true, extra: true, Extra: true, EXTRA: true, inter: true, Inter: true, INTER: true, intra: true, Intra: true, INTRA: true, macro: true, Macro: true, MACRO: true, mega: true, Mega: true, MEGA: true, micro: true, Micro: true, MICRO: true, mid: true, Mid: true, MID: true, mini: true, Mini: true, MINI: true, multi: true, Multi: true, MULTI: true, neo: true, Neo: true, NEO: true, non: true, Non: true, NON: true, over: true, Over: true, OVER: true, pan: true, Pan: true, PAN: true, para: true, Para: true, PARA: true, peri: true, Peri: true, PERI: true, post: true, Post: true, POST: true, pre: true, Pre: true, PRE: true, pro: true, Pro: true, PRO: true, pseudo: true, Pseudo: true, PSEUDO: true, quasi: true, Quasi: true, QUASI: true, re: true, Re: true, RE: true, semi: true, Semi: true, SEMI: true, sub: true, Sub: true, SUB: true, super: true, Super: true, SUPER: true, tri: true, Tri: true, TRI: true, ultra: true, Ultra: true, ULTRA: true, un: true, Un: true, UN: true, uni: true, Uni: true, UNI: true, vice: true, Vice: true, VICE: true }, suffix: { esque: true, ESQUE: true, fest: true, FEST: true, fold: true, FOLD: true, gate: true, GATE: true, itis: true, ITIS: true, less: true, LESS: true, most: true, MOST: true, rama: true, RAMA: true, wise: true, WISE: true } } }; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/read-core-model.js +var require_read_core_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/read-core-model.js"(exports2, module2) { + var originalModel = require_eng_core_web_model(); + var bufferFromBase64 = function(data) { + let decodedData; + try { + decodedData = atob(data); + } catch (e) { + throw Error("Unsupproted browser or node.js version;\n Refer to https://developer.mozilla.org/en-US/docs/Web/API/atob#browser_compatibility for supported versions."); + } + var size = decodedData.length, bytes = new Uint8Array(size); + for (let k = 0; k < size; k += 1) + bytes[k] = decodedData.charCodeAt(k); + return bytes.buffer; + }; + var readModel = function() { + const model = JSON.parse(JSON.stringify(originalModel)); + var packing = model.packing, featuresData = model.features, pos = model.pos; + model.lexicon = new Uint32Array(bufferFromBase64(model.lexicon)), model.xpansions = new Uint32Array(bufferFromBase64(model.xpansions)); + for (const f in model.packing.layout) + if (0 === packing.layout[f][3]) { + featuresData[f].hash = /* @__PURE__ */ Object.create(null); + for (let k = 0; k < featuresData[f].list.length; k += 1) + featuresData[f].hash[featuresData[f].list[k]] = k; + } + featuresData.lexeme.hash = /* @__PURE__ */ Object.create(null); + for (let k = 0; k < featuresData.lexeme.list.length; k += 1) + featuresData.lexeme.hash[featuresData.lexeme.list[k]] = k; + const clusters = featuresData.posClusters.list; + for (let k = 0; k < clusters.length; k += 1) + clusters[k] = new Set(clusters[k].split("_").map((e) => pos.hash[e] || 0)); + return model; + }; + module2.exports = readModel; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-core-model.js +var require_load_core_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-core-model.js"(exports2, module2) { + var readModel = require_read_core_model(); + var loadModel = function() { + var model = readModel(); + model.packing.efList = []; + for (const f in model.packing.layout) + 0 === model.packing.layout[f][3] && (model.features[f].intrinsicSize = model.features[f].list.length, model.features[f].index = model.features[f].list.length, model.features[f].maxIndex = model.packing.layout[f][1] >>> model.packing.layout[f][2]), 1 === model.packing.layout[f][4] && model.packing.efList.push(f); + return model.features.lexeme.intrinsicSize = model.features.lexeme.list.length, model.features.lexeme.index = model.features.lexeme.list.length, model; + }; + module2.exports = loadModel; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/ner-transformers.js +var require_ner_transformers = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/ner-transformers.js"(exports2, module2) { + var transformers = new Array(3); + var rgxDDMMYY = /^(?:0?[1-9]|[12]\d|30|31)[/.-](?:0?[1-9]|1[0-2])(?:[/.-]([12]\d)?\d\d)$/; + var rgxMMDDYY = /^(?:0?[1-9]|1[0-2])[/.-](?:0?[1-9]|[12]\d|30|31)(?:[/.-]([12]\d)?\d\d)$/; + var rgxISODate = /^(?:[12]\d\d\d)[/.-](?:0?[1-9]|1[0-2])[/.-](?:0?[1-9]|[12]\d|30|31)$/; + var rgxHHMM = /^(?:\d|[01]\d|2[0-3]):(?:\d|[0-5][0-9])$/; + var rgxPeriodComma = /[,.]/g; + var rgxCommaB4Period = /,(?=.*?\.)/g; + var rgxComma = /,/g; + var rgxPeriod = /\./; + var transformNumber = function(tv, token) { + var num = +(rgxPeriod.test(tv) ? tv.replace(rgxCommaB4Period, "") : tv.replace(rgxComma, "")); + if (isNaN(num)) { + const splitTV = tv.split("/"); + return 2 !== splitTV.length || isNaN(splitTV[0]) || isNaN(splitTV[1]) ? rgxDDMMYY.test(tv) || rgxMMDDYY.test(tv) || rgxISODate.test(tv) ? 1080049 : rgxHHMM.test(tv) ? 1080051 : token : 1080046; + } + return num >= 1200 && num <= 2100 && tv == num ? 1080045 : 1080046; + }; + transformers[0] = function(token, cache) { + const tv = cache.value(token); + if (void 0 === tv) + return token; + if ("\n" === tv || "\n\n" === tv || "" === tv.replace(rgxPeriodComma, "")) + return token; + var mapped = cache.property(token, "nerHint"); + if (mapped) + return mapped + 108e4; + switch (cache.property(token, "tokenType")) { + case "number": + return transformNumber(tv, token); + case "ordinal": + return 1080047; + case "time": + return 1080048; + case "tabCRLF": + return 1080050; + case "email": + return 1080052; + case "emoji": + return 1080053; + case "emoticon": + return 1080054; + case "hashtag": + return 1080055; + case "mention": + return 1080056; + case "url": + return 1080057; + default: + return token; + } + }, transformers[1] = void 0, transformers[2] = void 0, module2.exports = transformers; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-ner-model.json +var require_eng_ner_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-ner-model.json"(exports2, module2) { + module2.exports = ['[100,2126,{"0":{"9":1961,"40":1953,"47":1947,"219":1549,"1841":2095,"3361":1959,"4173":1886,"8001":1878,"8049":1876,"8056":1957,"13927":1916,"17725":1910,"19537":1528,"24289":1890,"26972":2094,"27001":1892,"32791":1874,"34173":1861,"37486":1888,"45276":1882,"47341":2041,"47365":2101,"47376":2102,"47396":2100,"47417":2099,"47792":1884,"48884":2093,"50853":2097,"51014":1880,"51561":2096,"61535":1853,"62019":1908,"69717":1872,"76999":1935,"77052":1870,"78222":2098,"86772":1955,"87219":1949,"87220":1951,"1080001":753,"1080002":758,"1080003":1098,"1080004":1,"1080005":2084,"1080006":2085,"1080007":2086,"1080008":2087,"1080009":2088,"1080011":2089,"1080012":2090,"1080013":8,"1080014":1639,"1080015":457,"1080016":464,"1080017":743,"1080018":748,"1080019":1580,"1080020":1193,"1080021":2104,"1080022":2105,"1080023":2106,"1080024":2107,"1080025":2108,"1080026":2113,"1080027":2073,"1080028":2065,"1080029":1963,"1080030":2066,"1080031":2069,"1080032":1075,"1080033":2067,"1080036":2112,"1080037":1538,"1080039":1506,"1080040":1912,"1080041":1533,"1080042":2071,"1080043":15,"1080044":2109,"1080045":1593,"1080046":1596,"1080047":2082,"1080048":1240,"1080049":2068,"1080051":529,"1080052":2121,"1080053":2122,"1080054":2123,"1080055":2124,"1080056":2125,"1080057":2126,"2070003":0},"1":{"1080014":2,"2070003":2083},"2":{"52424":3,"2070003":0},"3":{"19537":1126,"77052":4,"1080032":447,"1080037":1127,"1080045":1124,"2070003":0},"4":{"19537":450,"1080032":5,"1080037":451,"2070003":0},"5":{"19537":6,"1080037":7,"2070003":0},"8":{"47":1542,"12850":1079,"87219":1544,"87220":1546,"1080014":9,"2070003":2091},"9":{"52424":10,"2070003":0},"10":{"19537":1128,"77052":11,"1080032":452,"1080037":1129,"1080045":1125,"2070003":0},"11":{"19537":455,"1080032":12,"1080037":456,"2070003":0},"12":{"19537":13,"1080037":14,"2070003":0},"15":{"34173":1414,"61535":1406,"1080001":187,"1080002":192,"1080003":439,"1080014":1130,"1080015":16,"1080016":23,"1080017":177,"1080018":182,"1080048":525,"1080051":42,"2070003":2110},"16":{"219":471,"3361":17,"47818":991,"52020":1841,"54246":1842,"1080014":30,"1080034":169,"2070003":0},"17":{"219":18,"1080014":476,"2070003":0},"18":{"1080014":19,"2070003":0},"19":{"1080022":20,"1080023":21,"1080024":22,"2070003":480},"23":{"219":481,"3361":24,"47818":1005,"52020":1843,"54246":1844,"1080014":36,"1080034":173,"2070003":0},"24":{"219":25,"1080014":486,"2070003":0},"25":{"1080014":26,"2070003":0},"26":{"1080022":27,"1080023":28,"1080024":29,"2070003":490},"30":{"219":503,"52424":31,"1080022":1179,"1080023":1180,"1080024":1181,"2070003":1657},"31":{"219":32,"1080022":507,"1080023":508,"1080024":509,"2070003":0},"32":{"1080022":33,"1080023":34,"1080024":35,"2070003":0},"36":{"219":510,"52424":37,"1080022":1182,"1080023":1183,"1080024":1184,"2070003":1658},"37":{"219":38,"1080022":514,"1080023":515,"1080024":516,"2070003":0},"38":{"1080022":39,"1080023":40,"1080024":41,"2070003":0},"42":{"1496":1747,"2223":705,"5557":1742,"5733":730,"10219":542,"12631":1748,"12799":720,"18598":1743,"24379":725,"24626":1746,"26643":1741,"32599":1737,"34726":700,"36445":43,"36450":47,"38610":557,"40655":1738,"46316":1744,"49089":715,"49197":1739,"54279":710,"55528":1745,"60712":1740,"83058":1736,"1080034":51,"2070003":0},"43":{"1496":1212,"2223":69,"5557":1207,"5733":94,"10219":44,"12631":1213,"12799":84,"18598":1208,"24379":89,"24626":1211,"26643":1206,"32599":1202,"34726":64,"38610":55,"40655":1203,"46316":1209,"49089":79,"49197":1204,"54279":74,"55528":1210,"60712":1205,"83058":1201,"2070003":1733},"44":{"1080033":45,"2070003":0},"45":{"77841":46,"2070003":0},"47":{"1496":1225,"2223":104,"5557":1220,"5733":129,"10219":48,"12631":1226,"12799":119,"18598":1221,"24379":124,"24626":1224,"26643":1219,"32599":1215,"34726":99,"38610":58,"40655":1216,"46316":1222,"49089":114,"49197":1217,"54279":109,"55528":1223,"60712":1218,"83058":1214,"2070003":1734},"48":{"1080033":49,"2070003":0},"49":{"77841":50,"2070003":0},"51":{"1496":1238,"2223":139,"5557":1233,"5733":164,"10219":52,"12631":1239,"12799":154,"18598":1234,"24379":159,"24626":1237,"26643":1232,"32599":1228,"34726":134,"38610":61,"40655":1229,"46316":1235,"49089":149,"49197":1230,"54279":144,"55528":1236,"60712":1231,"83058":1227,"2070003":1735},"52":{"1080033":53,"2070003":0},"53":{"77841":54,"2070003":0},"55":{"72743":56,"2070003":0},"56":{"77841":57,"2070003":0},"58":{"72743":59,"2070003":0},"59":{"77841":60,"2070003":0},"61":{"72743":62,"2070003":0},"62":{"77841":63,"2070003":0},"64":{"19550":67,"72743":65,"2070003":0},"65":{"77841":66,"2070003":0},"67":{"77841":68,"2070003":0},"69":{"19550":72,"72743":70,"2070003":0},"70":{"77841":71,"2070003":0},"72":{"77841":73,"2070003":0},"74":{"19550":77,"72743":75,"2070003":0},"75":{"77841":76,"2070003":0},"77":{"77841":78,"2070003":0},"79":{"19550":82,"72743":80,"2070003":0},"80":{"77841":81,"2070003":0},"82":{"77841":83,"2070003":0},"84":{"19550":87,"72743":85,"2070003":0},"85":{"77841":86,"2070003":0},"87":{"77841":88,"2070003":0},"89":{"19550":92,"72743":90,"2070003":0},"90":{"77841":91,"2070003":0},"92":{"77841":93,"2070003":0},"94":{"19550":97,"72743":95,"2070003":0},"95":{"77841":96,"2070003":0},"97":{"77841":98,"2070003":0},"99":{"19550":102,"72743":100,"2070003":0},"100":{"77841":101,"2070003":0},"102":{"77841":103,"2070003":0},"104":{"19550":107,"72743":105,"2070003":0},"105":{"77841":106,"2070003":0},"107":{"77841":108,"2070003":0},"109":{"19550":112,"72743":110,"2070003":0},"110":{"77841":111,"2070003":0},"112":{"77841":113,"2070003":0},"114":{"19550":117,"72743":115,"2070003":0},"115":{"77841":116,"2070003":0},"117":{"77841":118,"2070003":0},"119":{"19550":122,"72743":120,"2070003":0},"120":{"77841":121,"2070003":0},"122":{"77841":123,"2070003":0},"124":{"19550":127,"72743":125,"2070003":0},"125":{"77841":126,"2070003":0},"127":{"77841":128,"2070003":0},"129":{"19550":132,"72743":130,"2070003":0},"130":{"77841":131,"2070003":0},"132":{"77841":133,"2070003":0},"134":{"19550":137,"72743":135,"2070003":0},"135":{"77841":136,"2070003":0},"137":{"77841":138,"2070003":0},"139":{"19550":142,"72743":140,"2070003":0},"140":{"77841":141,"2070003":0},"142":{"77841":143,"2070003":0},"144":{"19550":147,"72743":145,"2070003":0},"145":{"77841":146,"2070003":0},"147":{"77841":148,"2070003":0},"149":{"19550":152,"72743":150,"2070003":0},"150":{"77841":151,"2070003":0},"152":{"77841":153,"2070003":0},"154":{"19550":157,"72743":155,"2070003":0},"155":{"77841":156,"2070003":0},"157":{"77841":158,"2070003":0},"159":{"19550":162,"72743":160,"2070003":0},"160":{"77841":161,"2070003":0},"162":{"77841":163,"2070003":0},"164":{"19550":167,"72743":165,"2070003":0},"165":{"77841":166,"2070003":0},"167":{"77841":168,"2070003":0},"169":{"1496":1339,"2223":220,"5557":1334,"5733":245,"10219":170,"12631":1340,"12799":235,"18598":1335,"24379":240,"24626":1338,"26643":1333,"32599":1329,"34726":215,"38610":197,"40655":1330,"46316":1336,"49089":230,"49197":1331,"54279":225,"55528":1337,"60712":1332,"83058":1328,"2070003":1835},"170":{"1080033":171,"2070003":0},"171":{"77841":172,"2070003":0},"173":{"1496":1352,"2223":255,"5557":1347,"5733":280,"10219":174,"12631":1353,"12799":270,"18598":1348,"24379":275,"24626":1351,"26643":1346,"32599":1342,"34726":250,"38610":200,"40655":1343,"46316":1349,"49089":265,"49197":1344,"54279":260,"55528":1350,"60712":1345,"83058":1341,"2070003":1836},"174":{"1080033":175,"2070003":0},"175":{"77841":176,"2070003":0},"177":{"47818":1019,"52020":1845,"54246":1846,"1080034":178,"2070003":0},"178":{"1496":1365,"2223":290,"5557":1360,"5733":315,"10219":179,"12631":1366,"12799":305,"18598":1361,"24379":310,"24626":1364,"26643":1359,"32599":1355,"34726":285,"38610":203,"40655":1356,"46316":1362,"49089":300,"49197":1357,"54279":295,"55528":1363,"60712":1358,"83058":1354,"2070003":1837},"179":{"1080033":180,"2070003":0},"180":{"77841":181,"2070003":0},"182":{"47818":1033,"52020":1847,"54246":1848,"1080034":183,"2070003":0},"183":{"1496":1378,"2223":325,"5557":1373,"5733":350,"10219":184,"12631":1379,"12799":340,"18598":1374,"24379":345,"24626":1377,"26643":1372,"32599":1368,"34726":320,"38610":206,"40655":1369,"46316":1375,"49089":335,"49197":1370,"54279":330,"55528":1376,"60712":1371,"83058":1367,"2070003":1838},"184":{"1080033":185,"2070003":0},"185":{"77841":186,"2070003":0},"187":{"47":425,"19537":1106,"47818":1047,"52020":1849,"54246":1850,"1080034":188,"1080036":1110,"1080037":1108,"2070003":0},"188":{"1496":1391,"2223":360,"5557":1386,"5733":385,"10219":189,"12631":1392,"12799":375,"18598":1387,"24379":380,"24626":1390,"26643":1385,"32599":1381,"34726":355,"38610":209,"40655":1382,"46316":1388,"49089":370,"49197":1383,"54279":365,"55528":1389,"60712":1384,"83058":1380,"2070003":1839},"189":{"1080033":190,"2070003":0},"190":{"77841":191,"2070003":0},"192":{"47":432,"19537":1112,"47818":1061,"52020":1851,"54246":1852,"1080034":193,"1080036":1116,"1080037":1114,"2070003":0},"193":{"1496":1404,"2223":395,"5557":1399,"5733":420,"10219":194,"12631":1405,"12799":410,"18598":1400,"24379":415,"24626":1403,"26643":1398,"32599":1394,"34726":390,"38610":212,"40655":1395,"46316":1401,"49089":405,"49197":1396,"54279":400,"55528":1402,"60712":1397,"83058":1393,"2070003":1840},"194":{"1080033":195,"2070003":0},"195":{"77841":196,"2070003":0},"197":{"72743":198,"2070003":0},"198":{"77841":199,"2070003":0},"200":{"72743":201,"2070003":0},"201":{"77841":202,"2070003":0},"203":{"72743":204,"2070003":0},"204":{"77841":205,"2070003":0},"206":{"72743":207,"2070003":0},"207":{"77841":208,"2070003":0},"209":{"72743":210,"2070003":0},"210":{"77841":211,"2070003":0},"212":{"72743":213,"2070003":0},"213":{"77841":214,"2070003":0},"215":{"19550":218,"72743":216,"2070003":0},"216":{"77841":217,"2070003":0},"218":{"77841":219,"2070003":0},"220":{"19550":223,"72743":221,"2070003":0},"221":{"77841":222,"2070003":0},"223":{"77841":224,"2070003":0},"225":{"19550":228,"72743":226,"2070003":0},"226":{"77841":227,"2070003":0},"228":{"77841":229,"2070003":0},"230":{"19550":233,"72743":231,"2070003":0},"231":{"77841":232,"2070003":0},"233":{"77841":234,"2070003":0},"235":{"19550":238,"72743":236,"2070003":0},"236":{"77841":237,"2070003":0},"238":{"77841":239,"2070003":0},"240":{"19550":243,"72743":241,"2070003":0},"241":{"77841":242,"2070003":0},"243":{"77841":244,"2070003":0},"245":{"19550":248,"72743":246,"2070003":0},"246":{"77841":247,"2070003":0},"248":{"77841":249,"2070003":0},"250":{"19550":253,"72743":251,"2070003":0},"251":{"77841":252,"2070003":0},"253":{"77841":254,"2070003":0},"255":{"19550":258,"72743":256,"2070003":0},"256":{"77841":257,"2070003":0},"258":{"77841":259,"2070003":0},"260":{"19550":263,"72743":261,"2070003":0},"261":{"77841":262,"2070003":0},"263":{"77841":264,"2070003":0},"265":{"19550":268,"72743":266,"2070003":0},"266":{"77841":267,"2070003":0},"268":{"77841":269,"2070003":0},"270":{"19550":273,"72743":271,"2070003":0},"271":{"77841":272,"2070003":0},"273":{"77841":274,"2070003":0},"275":{"19550":278,"72743":276,"2070003":0},"276":{"77841":277,"2070003":0},"278":{"77841":279,"2070003":0},"280":{"19550":283,"72743":281,"2070003":0},"281":{"77841":282,"2070003":0},"283":{"77841":284,"2070003":0},"285":{"19550":288,"72743":286,"2070003":0},"286":{"77841":287,"2070003":0},"288":{"77841":289,"2070003":0},"290":{"19550":293,"72743":291,"2070003":0},"291":{"77841":292,"2070003":0},"293":{"77841":294,"2070003":0},"295":{"19550":298,"72743":296,"2070003":0},"296":{"77841":297,"2070003":0},"298":{"77841":299,"2070003":0},"300":{"19550":303,"72743":301,"2070003":0},"301":{"77841":302,"2070003":0},"303":{"77841":304,"2070003":0},"305":{"19550":308,"72743":306,"2070003":0},"306":{"77841":307,"2070003":0},"308":{"77841":309,"2070003":0},"310":{"19550":313,"72743":311,"2070003":0},"311":{"77841":312,"2070003":0},"313":{"77841":314,"2070003":0},"315":{"19550":318,"72743":316,"2070003":0},"316":{"77841":317,"2070003":0},"318":{"77841":319,"2070003":0},"320":{"19550":323,"72743":321,"2070003":0},"321":{"77841":322,"2070003":0},"323":{"77841":324,"2070003":0},"325":{"19550":328,"72743":326,"2070003":0},"326":{"77841":327,"2070003":0},"328":{"77841":329,"2070003":0},"330":{"19550":333,"72743":331,"2070003":0},"331":{"77841":332,"2070003":0},"333":{"77841":334,"2070003":0},"335":{"19550":338,"72743":336,"2070003":0},"336":{"77841":337,"2070003":0},"338":{"77841":339,"2070003":0},"340":{"19550":343,"72743":341,"2070003":0},"341":{"77841":342,"2070003":0},"343":{"77841":344,"2070003":0},"345":{"19550":348,"72743":346,"2070003":0},"346":{"77841":347,"2070003":0},"348":{"77841":349,"2070003":0},"350":{"19550":353,"72743":351,"2070003":0},"351":{"77841":352,"2070003":0},"353":{"77841":354,"2070003":0},"355":{"19550":358,"72743":356,"2070003":0},"356":{"77841":357,"2070003":0},"358":{"77841":359,"2070003":0},"360":{"19550":363,"72743":361,"2070003":0},"361":{"77841":362,"2070003":0},"363":{"77841":364,"2070003":0},"365":{"19550":368,"72743":366,"2070003":0},"366":{"77841":367,"2070003":0},"368":{"77841":369,"2070003":0},"370":{"19550":373,"72743":371,"2070003":0},"371":{"77841":372,"2070003":0},"373":{"77841":374,"2070003":0},"375":{"19550":378,"72743":376,"2070003":0},"376":{"77841":377,"2070003":0},"378":{"77841":379,"2070003":0},"380":{"19550":383,"72743":381,"2070003":0},"381":{"77841":382,"2070003":0},"383":{"77841":384,"2070003":0},"385":{"19550":388,"72743":386,"2070003":0},"386":{"77841":387,"2070003":0},"388":{"77841":389,"2070003":0},"390":{"19550":393,"72743":391,"2070003":0},"391":{"77841":392,"2070003":0},"393":{"77841":394,"2070003":0},"395":{"19550":398,"72743":396,"2070003":0},"396":{"77841":397,"2070003":0},"398":{"77841":399,"2070003":0},"400":{"19550":403,"72743":401,"2070003":0},"401":{"77841":402,"2070003":0},"403":{"77841":404,"2070003":0},"405":{"19550":408,"72743":406,"2070003":0},"406":{"77841":407,"2070003":0},"408":{"77841":409,"2070003":0},"410":{"19550":413,"72743":411,"2070003":0},"411":{"77841":412,"2070003":0},"413":{"77841":414,"2070003":0},"415":{"19550":418,"72743":416,"2070003":0},"416":{"77841":417,"2070003":0},"418":{"77841":419,"2070003":0},"420":{"19550":423,"72743":421,"2070003":0},"421":{"77841":422,"2070003":0},"423":{"77841":424,"2070003":0},"425":{"19537":426,"1080036":430,"1080037":428,"2070003":0},"426":{"1978":427,"2070003":0},"428":{"1978":429,"2070003":0},"430":{"1978":431,"2070003":0},"432":{"19537":433,"1080036":437,"1080037":435,"2070003":0},"433":{"1978":434,"2070003":0},"435":{"1978":436,"2070003":0},"437":{"1978":438,"2070003":0},"439":{"47":440,"19537":1118,"1080036":1122,"1080037":1120,"2070003":0},"440":{"19537":441,"1080036":445,"1080037":443,"2070003":0},"441":{"1978":442,"2070003":0},"443":{"1978":444,"2070003":0},"445":{"1978":446,"2070003":0},"447":{"19537":448,"1080037":449,"2070003":0},"452":{"19537":453,"1080037":454,"2070003":0},"457":{"219":1135,"3361":458,"11488":1899,"17548":1900,"19537":1556,"34600":1901,"40538":1894,"47818":1422,"49572":1896,"52020":2053,"54246":2054,"69227":1895,"85882":1898,"86444":1897,"1080014":491,"1080020":517,"1080021":1970,"1080034":735,"1080036":1560,"1080037":1558,"2070003":2074},"458":{"219":459,"1080014":1140,"2070003":0},"459":{"1080014":460,"2070003":0},"460":{"1080022":461,"1080023":462,"1080024":463,"2070003":1144},"464":{"219":1145,"3361":465,"19537":1562,"47818":1436,"52020":2055,"54246":2056,"1080014":497,"1080020":521,"1080021":1971,"1080034":739,"1080036":1566,"1080037":1564,"2070003":2075},"465":{"219":466,"1080014":1150,"2070003":0},"466":{"1080014":467,"2070003":0},"467":{"1080022":468,"1080023":469,"1080024":470,"2070003":1154},"471":{"1080014":472,"2070003":0},"472":{"1080022":473,"1080023":474,"1080024":475,"2070003":1158},"476":{"1080022":477,"1080023":478,"1080024":479,"2070003":1159},"481":{"1080014":482,"2070003":0},"482":{"1080022":483,"1080023":484,"1080024":485,"2070003":1163},"486":{"1080022":487,"1080023":488,"1080024":489,"2070003":1164},"491":{"219":1165,"52424":492,"1080022":1659,"1080023":1660,"1080024":1661,"2070003":1981},"492":{"219":493,"1080022":1169,"1080023":1170,"1080024":1171,"2070003":0},"493":{"1080022":494,"1080023":495,"1080024":496,"2070003":0},"497":{"219":1172,"52424":498,"1080022":1662,"1080023":1663,"1080024":1664,"2070003":1982},"498":{"219":499,"1080022":1176,"1080023":1177,"1080024":1178,"2070003":0},"499":{"1080022":500,"1080023":501,"1080024":502,"2070003":0},"503":{"1080022":504,"1080023":505,"1080024":506,"2070003":0},"510":{"1080022":511,"1080023":512,"1080024":513,"2070003":0},"517":{"3361":518,"1080004":1671,"1080005":1672,"1080006":1673,"1080007":1674,"1080019":1197,"1080021":1637,"2070003":1967},"518":{"1080004":1185,"1080005":1186,"1080006":1187,"1080007":1188,"1080019":519,"2070003":0},"519":{"1080004":520,"2070003":0},"521":{"3361":522,"1080004":1675,"1080005":1676,"1080006":1677,"1080007":1678,"1080019":1199,"1080021":1638,"2070003":1968},"522":{"1080004":1189,"1080005":1190,"1080006":1191,"1080007":1192,"1080019":523,"2070003":0},"523":{"1080004":524,"2070003":0},"525":{"1496":1692,"2223":565,"5557":1687,"5733":590,"10219":526,"12631":1693,"12799":580,"18598":1688,"24379":585,"24626":1691,"26643":1686,"32599":1682,"34726":560,"38610":545,"40655":1683,"46316":1689,"49089":575,"49197":1684,"54279":570,"55528":1690,"60712":1685,"83058":1681,"2070003":2016},"526":{"1080033":527,"2070003":0},"527":{"77841":528,"2070003":0},"529":{"1496":2031,"2223":1293,"5557":2026,"5733":1318,"10219":1244,"12631":2032,"12799":1308,"18598":2027,"24379":1313,"24626":2030,"26643":2025,"32599":2021,"34726":1288,"36445":530,"36450":534,"38610":1250,"40655":2022,"46316":2028,"49089":1303,"49197":2023,"54279":1298,"55528":2029,"60712":2024,"83058":2020,"1080034":538,"2070003":0},"530":{"1496":1705,"2223":600,"5557":1700,"5733":625,"10219":531,"12631":1706,"12799":615,"18598":1701,"24379":620,"24626":1704,"26643":1699,"32599":1695,"34726":595,"38610":548,"40655":1696,"46316":1702,"49089":610,"49197":1697,"54279":605,"55528":1703,"60712":1698,"83058":1694,"2070003":2017},"531":{"1080033":532,"2070003":0},"532":{"77841":533,"2070003":0},"534":{"1496":1718,"2223":635,"5557":1713,"5733":660,"10219":535,"12631":1719,"12799":650,"18598":1714,"24379":655,"24626":1717,"26643":1712,"32599":1708,"34726":630,"38610":551,"40655":1709,"46316":1715,"49089":645,"49197":1710,"54279":640,"55528":1716,"60712":1711,"83058":1707,"2070003":2018},"535":{"1080033":536,"2070003":0},"536":{"77841":537,"2070003":0},"538":{"1496":1731,"2223":670,"5557":1726,"5733":695,"10219":539,"12631":1732,"12799":685,"18598":1727,"24379":690,"24626":1730,"26643":1725,"32599":1721,"34726":665,"38610":554,"40655":1722,"46316":1728,"49089":680,"49197":1723,"54279":675,"55528":1729,"60712":1724,"83058":1720,"2070003":2019},"539":{"1080033":540,"2070003":0},"540":{"77841":541,"2070003":0},"542":{"1080033":543,"2070003":0},"543":{"77841":544,"2070003":0},"545":{"72743":546,"2070003":0},"546":{"77841":547,"2070003":0},"548":{"72743":549,"2070003":0},"549":{"77841":550,"2070003":0},"551":{"72743":552,"2070003":0},"552":{"77841":553,"2070003":0},"554":{"72743":555,"2070003":0},"555":{"77841":556,"2070003":0},"557":{"72743":558,"2070003":0},"558":{"77841":559,"2070003":0},"560":{"19550":563,"72743":561,"2070003":0},"561":{"77841":562,"2070003":0},"563":{"77841":564,"2070003":0},"565":{"19550":568,"72743":566,"2070003":0},"566":{"77841":567,"2070003":0},"568":{"77841":569,"2070003":0},"570":{"19550":573,"72743":571,"2070003":0},"571":{"77841":572,"2070003":0},"573":{"77841":574,"2070003":0},"575":{"19550":578,"72743":576,"2070003":0},"576":{"77841":577,"2070003":0},"578":{"77841":579,"2070003":0},"580":{"19550":583,"72743":581,"2070003":0},"581":{"77841":582,"2070003":0},"583":{"77841":584,"2070003":0},"585":{"19550":588,"72743":586,"2070003":0},"586":{"77841":587,"2070003":0},"588":{"77841":589,"2070003":0},"590":{"19550":593,"72743":591,"2070003":0},"591":{"77841":592,"2070003":0},"593":{"77841":594,"2070003":0},"595":{"19550":598,"72743":596,"2070003":0},"596":{"77841":597,"2070003":0},"598":{"77841":599,"2070003":0},"600":{"19550":603,"72743":601,"2070003":0},"601":{"77841":602,"2070003":0},"603":{"77841":604,"2070003":0},"605":{"19550":608,"72743":606,"2070003":0},"606":{"77841":607,"2070003":0},"608":{"77841":609,"2070003":0},"610":{"19550":613,"72743":611,"2070003":0},"611":{"77841":612,"2070003":0},"613":{"77841":614,"2070003":0},"615":{"19550":618,"72743":616,"2070003":0},"616":{"77841":617,"2070003":0},"618":{"77841":619,"2070003":0},"620":{"19550":623,"72743":621,"2070003":0},"621":{"77841":622,"2070003":0},"623":{"77841":624,"2070003":0},"625":{"19550":628,"72743":626,"2070003":0},"626":{"77841":627,"2070003":0},"628":{"77841":629,"2070003":0},"630":{"19550":633,"72743":631,"2070003":0},"631":{"77841":632,"2070003":0},"633":{"77841":634,"2070003":0},"635":{"19550":638,"72743":636,"2070003":0},"636":{"77841":637,"2070003":0},"638":{"77841":639,"2070003":0},"640":{"19550":643,"72743":641,"2070003":0},"641":{"77841":642,"2070003":0},"643":{"77841":644,"2070003":0},"645":{"19550":648,"72743":646,"2070003":0},"646":{"77841":647,"2070003":0},"648":{"77841":649,"2070003":0},"650":{"19550":653,"72743":651,"2070003":0},"651":{"77841":652,"2070003":0},"653":{"77841":654,"2070003":0},"655":{"19550":658,"72743":656,"2070003":0},"656":{"77841":657,"2070003":0},"658":{"77841":659,"2070003":0},"660":{"19550":663,"72743":661,"2070003":0},"661":{"77841":662,"2070003":0},"663":{"77841":664,"2070003":0},"665":{"19550":668,"72743":666,"2070003":0},"666":{"77841":667,"2070003":0},"668":{"77841":669,"2070003":0},"670":{"19550":673,"72743":671,"2070003":0},"671":{"77841":672,"2070003":0},"673":{"77841":674,"2070003":0},"675":{"19550":678,"72743":676,"2070003":0},"676":{"77841":677,"2070003":0},"678":{"77841":679,"2070003":0},"680":{"19550":683,"72743":681,"2070003":0},"681":{"77841":682,"2070003":0},"683":{"77841":684,"2070003":0},"685":{"19550":688,"72743":686,"2070003":0},"686":{"77841":687,"2070003":0},"688":{"77841":689,"2070003":0},"690":{"19550":693,"72743":691,"2070003":0},"691":{"77841":692,"2070003":0},"693":{"77841":694,"2070003":0},"695":{"19550":698,"72743":696,"2070003":0},"696":{"77841":697,"2070003":0},"698":{"77841":699,"2070003":0},"700":{"19550":703,"72743":701,"2070003":0},"701":{"77841":702,"2070003":0},"703":{"77841":704,"2070003":0},"705":{"19550":708,"72743":706,"2070003":0},"706":{"77841":707,"2070003":0},"708":{"77841":709,"2070003":0},"710":{"19550":713,"72743":711,"2070003":0},"711":{"77841":712,"2070003":0},"713":{"77841":714,"2070003":0},"715":{"19550":718,"72743":716,"2070003":0},"716":{"77841":717,"2070003":0},"718":{"77841":719,"2070003":0},"720":{"19550":723,"72743":721,"2070003":0},"721":{"77841":722,"2070003":0},"723":{"77841":724,"2070003":0},"725":{"19550":728,"72743":726,"2070003":0},"726":{"77841":727,"2070003":0},"728":{"77841":729,"2070003":0},"730":{"19550":733,"72743":731,"2070003":0},"731":{"77841":732,"2070003":0},"733":{"77841":734,"2070003":0},"735":{"1496":1768,"2223":786,"5557":1763,"5733":811,"10219":736,"12631":1769,"12799":801,"18598":1764,"24379":806,"24626":1767,"26643":1762,"32599":1758,"34726":781,"38610":763,"40655":1759,"46316":1765,"49089":796,"49197":1760,"54279":791,"55528":1766,"60712":1761,"83058":1757,"2070003":2047},"736":{"1080033":737,"2070003":0},"737":{"77841":738,"2070003":0},"739":{"1496":1781,"2223":821,"5557":1776,"5733":846,"10219":740,"12631":1782,"12799":836,"18598":1777,"24379":841,"24626":1780,"26643":1775,"32599":1771,"34726":816,"38610":766,"40655":1772,"46316":1778,"49089":831,"49197":1773,"54279":826,"55528":1779,"60712":1774,"83058":1770,"2070003":2048},"740":{"1080033":741,"2070003":0},"741":{"77841":742,"2070003":0},"743":{"19537":1568,"47818":1450,"52020":2057,"54246":2058,"1080021":1972,"1080034":744,"1080036":1572,"1080037":1570,"2070003":2076},"744":{"1496":1794,"2223":856,"5557":1789,"5733":881,"10219":745,"12631":1795,"12799":871,"18598":1790,"24379":876,"24626":1793,"26643":1788,"32599":1784,"34726":851,"38610":769,"40655":1785,"46316":1791,"49089":866,"49197":1786,"54279":861,"55528":1792,"60712":1787,"83058":1783,"2070003":2049},"745":{"1080033":746,"2070003":0},"746":{"77841":747,"2070003":0},"748":{"19537":1574,"47818":1464,"52020":2059,"54246":2060,"1080020":1969,"1080021":1973,"1080034":749,"1080036":1578,"1080037":1576,"2070003":2077},"749":{"1496":1807,"2223":891,"5557":1802,"5733":916,"10219":750,"12631":1808,"12799":906,"18598":1803,"24379":911,"24626":1806,"26643":1801,"32599":1797,"34726":886,"38610":772,"40655":1798,"46316":1804,"49089":901,"49197":1799,"54279":896,"55528":1805,"60712":1800,"83058":1796,"2070003":2050},"750":{"1080033":751,"2070003":0},"751":{"77841":752,"2070003":0},"753":{"47":1084,"226":1587,"6417":1599,"19537":1609,"47818":1478,"52020":2061,"54246":2062,"1080009":1988,"1080011":1989,"1080012":1990,"1080034":754,"1080036":1613,"1080037":1611,"1080038":1939,"2070003":2115},"754":{"1496":1820,"2223":926,"5557":1815,"5733":951,"10219":755,"12631":1821,"12799":941,"18598":1816,"24379":946,"24626":1819,"26643":1814,"32599":1810,"34726":921,"38610":775,"40655":1811,"46316":1817,"49089":936,"49197":1812,"54279":931,"55528":1818,"60712":1813,"83058":1809,"2070003":2051},"755":{"1080033":756,"2070003":0},"756":{"77841":757,"2070003":0},"758":{"47":1091,"226":1589,"6417":1601,"19537":1615,"47818":1492,"52020":2063,"54246":2064,"1080009":1991,"1080011":1992,"1080012":1993,"1080034":759,"1080036":1619,"1080037":1617,"1080038":1940,"2070003":2116},"759":{"1496":1833,"2223":961,"5557":1828,"5733":986,"10219":760,"12631":1834,"12799":976,"18598":1829,"24379":981,"24626":1832,"26643":1827,"32599":1823,"34726":956,"38610":778,"40655":1824,"46316":1830,"49089":971,"49197":1825,"54279":966,"55528":1831,"60712":1826,"83058":1822,"2070003":2052},"760":{"1080033":761,"2070003":0},"761":{"77841":762,"2070003":0},"763":{"72743":764,"2070003":0},"764":{"77841":765,"2070003":0},"766":{"72743":767,"2070003":0},"767":{"77841":768,"2070003":0},"769":{"72743":770,"2070003":0},"770":{"77841":771,"2070003":0},"772":{"72743":773,"2070003":0},"773":{"77841":774,"2070003":0},"775":{"72743":776,"2070003":0},"776":{"77841":777,"2070003":0},"778":{"72743":779,"2070003":0},"779":{"77841":780,"2070003":0},"781":{"19550":784,"72743":782,"2070003":0},"782":{"77841":783,"2070003":0},"784":{"77841":785,"2070003":0},"786":{"19550":789,"72743":787,"2070003":0},"787":{"77841":788,"2070003":0},"789":{"77841":790,"2070003":0},"791":{"19550":794,"72743":792,"2070003":0},"792":{"77841":793,"2070003":0},"794":{"77841":795,"2070003":0},"796":{"19550":799,"72743":797,"2070003":0},"797":{"77841":798,"2070003":0},"799":{"77841":800,"2070003":0},"801":{"19550":804,"72743":802,"2070003":0},"802":{"77841":803,"2070003":0},"804":{"77841":805,"2070003":0},"806":{"19550":809,"72743":807,"2070003":0},"807":{"77841":808,"2070003":0},"809":{"77841":810,"2070003":0},"811":{"19550":814,"72743":812,"2070003":0},"812":{"77841":813,"2070003":0},"814":{"77841":815,"2070003":0},"816":{"19550":819,"72743":817,"2070003":0},"817":{"77841":818,"2070003":0},"819":{"77841":820,"2070003":0},"821":{"19550":824,"72743":822,"2070003":0},"822":{"77841":823,"2070003":0},"824":{"77841":825,"2070003":0},"826":{"19550":829,"72743":827,"2070003":0},"827":{"77841":828,"2070003":0},"829":{"77841":830,"2070003":0},"831":{"19550":834,"72743":832,"2070003":0},"832":{"77841":833,"2070003":0},"834":{"77841":835,"2070003":0},"836":{"19550":839,"72743":837,"2070003":0},"837":{"77841":838,"2070003":0},"839":{"77841":840,"2070003":0},"841":{"19550":844,"72743":842,"2070003":0},"842":{"77841":843,"2070003":0},"844":{"77841":845,"2070003":0},"846":{"19550":849,"72743":847,"2070003":0},"847":{"77841":848,"2070003":0},"849":{"77841":850,"2070003":0},"851":{"19550":854,"72743":852,"2070003":0},"852":{"77841":853,"2070003":0},"854":{"77841":855,"2070003":0},"856":{"19550":859,"72743":857,"2070003":0},"857":{"77841":858,"2070003":0},"859":{"77841":860,"2070003":0},"861":{"19550":864,"72743":862,"2070003":0},"862":{"77841":863,"2070003":0},"864":{"77841":865,"2070003":0},"866":{"19550":869,"72743":867,"2070003":0},"867":{"77841":868,"2070003":0},"869":{"77841":870,"2070003":0},"871":{"19550":874,"72743":872,"2070003":0},"872":{"77841":873,"2070003":0},"874":{"77841":875,"2070003":0},"876":{"19550":879,"72743":877,"2070003":0},"877":{"77841":878,"2070003":0},"879":{"77841":880,"2070003":0},"881":{"19550":884,"72743":882,"2070003":0},"882":{"77841":883,"2070003":0},"884":{"77841":885,"2070003":0},"886":{"19550":889,"72743":887,"2070003":0},"887":{"77841":888,"2070003":0},"889":{"77841":890,"2070003":0},"891":{"19550":894,"72743":892,"2070003":0},"892":{"77841":893,"2070003":0},"894":{"77841":895,"2070003":0},"896":{"19550":899,"72743":897,"2070003":0},"897":{"77841":898,"2070003":0},"899":{"77841":900,"2070003":0},"901":{"19550":904,"72743":902,"2070003":0},"902":{"77841":903,"2070003":0},"904":{"77841":905,"2070003":0},"906":{"19550":909,"72743":907,"2070003":0},"907":{"77841":908,"2070003":0},"909":{"77841":910,"2070003":0},"911":{"19550":914,"72743":912,"2070003":0},"912":{"77841":913,"2070003":0},"914":{"77841":915,"2070003":0},"916":{"19550":919,"72743":917,"2070003":0},"917":{"77841":918,"2070003":0},"919":{"77841":920,"2070003":0},"921":{"19550":924,"72743":922,"2070003":0},"922":{"77841":923,"2070003":0},"924":{"77841":925,"2070003":0},"926":{"19550":929,"72743":927,"2070003":0},"927":{"77841":928,"2070003":0},"929":{"77841":930,"2070003":0},"931":{"19550":934,"72743":932,"2070003":0},"932":{"77841":933,"2070003":0},"934":{"77841":935,"2070003":0},"936":{"19550":939,"72743":937,"2070003":0},"937":{"77841":938,"2070003":0},"939":{"77841":940,"2070003":0},"941":{"19550":944,"72743":942,"2070003":0},"942":{"77841":943,"2070003":0},"944":{"77841":945,"2070003":0},"946":{"19550":949,"72743":947,"2070003":0},"947":{"77841":948,"2070003":0},"949":{"77841":950,"2070003":0},"951":{"19550":954,"72743":952,"2070003":0},"952":{"77841":953,"2070003":0},"954":{"77841":955,"2070003":0},"956":{"19550":959,"72743":957,"2070003":0},"957":{"77841":958,"2070003":0},"959":{"77841":960,"2070003":0},"961":{"19550":964,"72743":962,"2070003":0},"962":{"77841":963,"2070003":0},"964":{"77841":965,"2070003":0},"966":{"19550":969,"72743":967,"2070003":0},"967":{"77841":968,"2070003":0},"969":{"77841":970,"2070003":0},"971":{"19550":974,"72743":972,"2070003":0},"972":{"77841":973,"2070003":0},"974":{"77841":975,"2070003":0},"976":{"19550":979,"72743":977,"2070003":0},"977":{"77841":978,"2070003":0},"979":{"77841":980,"2070003":0},"981":{"19550":984,"72743":982,"2070003":0},"982":{"77841":983,"2070003":0},"984":{"77841":985,"2070003":0},"986":{"19550":989,"72743":987,"2070003":0},"987":{"77841":988,"2070003":0},"989":{"77841":990,"2070003":0},"991":{"78040":992,"2070003":0},"992":{"1080001":1003,"1080002":1004,"1080015":999,"1080016":1000,"1080017":1001,"1080018":1002,"2070003":0},"1005":{"78040":1006,"2070003":0},"1006":{"1080001":1017,"1080002":1018,"1080015":1013,"1080016":1014,"1080017":1015,"1080018":1016,"2070003":0},"1019":{"78040":1020,"2070003":0},"1020":{"1080001":1031,"1080002":1032,"1080015":1027,"1080016":1028,"1080017":1029,"1080018":1030,"2070003":0},"1033":{"78040":1034,"2070003":0},"1034":{"1080001":1045,"1080002":1046,"1080015":1041,"1080016":1042,"1080017":1043,"1080018":1044,"2070003":0},"1047":{"78040":1048,"2070003":0},"1048":{"1080001":1059,"1080002":1060,"1080015":1055,"1080016":1056,"1080017":1057,"1080018":1058,"2070003":0},"1061":{"78040":1062,"2070003":0},"1062":{"1080001":1073,"1080002":1074,"1080015":1069,"1080016":1070,"1080017":1071,"1080018":1072,"2070003":0},"1075":{"1841":2035,"13927":1930,"19537":1323,"26972":2034,"47341":1749,"47365":2044,"47376":2045,"47396":2040,"47417":2039,"48884":2033,"50853":2037,"51561":2036,"78222":2038,"1080036":1934,"1080037":1076,"2070003":2120},"1076":{"47":1077,"25521":1541,"2070003":1932},"1077":{"25521":1078,"2070003":0},"1079":{"226":1080,"6417":1082,"1080038":1548,"2070003":1938},"1080":{"19201":1081,"2070003":0},"1082":{"11016":1083,"2070003":0},"1084":{"19537":1085,"1080036":1089,"1080037":1087,"2070003":0},"1085":{"1978":1086,"2070003":0},"1087":{"1978":1088,"2070003":0},"1089":{"1978":1090,"2070003":0},"1091":{"19537":1092,"1080036":1096,"1080037":1094,"2070003":0},"1092":{"1978":1093,"2070003":0},"1094":{"1978":1095,"2070003":0},"1096":{"1978":1097,"2070003":0},"1098":{"47":1099,"226":1591,"6417":1603,"19537":1621,"1080009":1994,"1080011":1995,"1080012":1996,"1080036":1625,"1080037":1623,"1080038":1941,"2070003":2117},"1099":{"19537":1100,"1080036":1104,"1080037":1102,"2070003":0},"1100":{"1978":1101,"2070003":0},"1102":{"1978":1103,"2070003":0},"1104":{"1978":1105,"2070003":0},"1106":{"1978":1107,"2070003":0},"1108":{"1978":1109,"2070003":0},"1110":{"1978":1111,"2070003":0},"1112":{"1978":1113,"2070003":0},"1114":{"1978":1115,"2070003":0},"1116":{"1978":1117,"2070003":0},"1118":{"1978":1119,"2070003":0},"1120":{"1978":1121,"2070003":0},"1122":{"1978":1123,"2070003":0},"1130":{"219":1131,"1080022":1644,"1080023":1645,"1080024":1646,"2070003":1977},"1131":{"1080022":1132,"1080023":1133,"1080024":1134,"2070003":0},"1135":{"1080014":1136,"2070003":0},"1136":{"1080022":1137,"1080023":1138,"1080024":1139,"2070003":1650},"1140":{"1080022":1141,"1080023":1142,"1080024":1143,"2070003":1651},"1145":{"1080014":1146,"2070003":0},"1146":{"1080022":1147,"1080023":1148,"1080024":1149,"2070003":1655},"1150":{"1080022":1151,"1080023":1152,"1080024":1153,"2070003":1656},"1165":{"1080022":1166,"1080023":1167,"1080024":1168,"2070003":0},"1172":{"1080022":1173,"1080023":1174,"1080024":1175,"2070003":0},"1193":{"3361":1194,"1080004":1984,"1080005":1985,"1080006":1986,"1080007":1987,"1080019":1679,"1080021":1975,"2070003":2103},"1194":{"1080004":1667,"1080005":1668,"1080006":1669,"1080007":1670,"1080019":1195,"2070003":0},"1195":{"1080004":1196,"2070003":0},"1197":{"1080004":1198,"2070003":0},"1199":{"1080004":1200,"2070003":0},"1240":{"1496":2014,"2223":1258,"5557":2009,"5733":1283,"10219":1241,"12631":2015,"12799":1273,"18598":2010,"24379":1278,"24626":2013,"26643":2008,"32599":2004,"34726":1253,"38610":1247,"40655":2005,"46316":2011,"49089":1268,"49197":2006,"54279":1263,"55528":2012,"60712":2007,"83058":2003,"2070003":2092},"1241":{"1080033":1242,"2070003":0},"1242":{"77841":1243,"2070003":0},"1244":{"1080033":1245,"2070003":0},"1245":{"77841":1246,"2070003":0},"1247":{"72743":1248,"2070003":0},"1248":{"77841":1249,"2070003":0},"1250":{"72743":1251,"2070003":0},"1251":{"77841":1252,"2070003":0},"1253":{"19550":1256,"72743":1254,"2070003":0},"1254":{"77841":1255,"2070003":0},"1256":{"77841":1257,"2070003":0},"1258":{"19550":1261,"72743":1259,"2070003":0},"1259":{"77841":1260,"2070003":0},"1261":{"77841":1262,"2070003":0},"1263":{"19550":1266,"72743":1264,"2070003":0},"1264":{"77841":1265,"2070003":0},"1266":{"77841":1267,"2070003":0},"1268":{"19550":1271,"72743":1269,"2070003":0},"1269":{"77841":1270,"2070003":0},"1271":{"77841":1272,"2070003":0},"1273":{"19550":1276,"72743":1274,"2070003":0},"1274":{"77841":1275,"2070003":0},"1276":{"77841":1277,"2070003":0},"1278":{"19550":1281,"72743":1279,"2070003":0},"1279":{"77841":1280,"2070003":0},"1281":{"77841":1282,"2070003":0},"1283":{"19550":1286,"72743":1284,"2070003":0},"1284":{"77841":1285,"2070003":0},"1286":{"77841":1287,"2070003":0},"1288":{"19550":1291,"72743":1289,"2070003":0},"1289":{"77841":1290,"2070003":0},"1291":{"77841":1292,"2070003":0},"1293":{"19550":1296,"72743":1294,"2070003":0},"1294":{"77841":1295,"2070003":0},"1296":{"77841":1297,"2070003":0},"1298":{"19550":1301,"72743":1299,"2070003":0},"1299":{"77841":1300,"2070003":0},"1301":{"77841":1302,"2070003":0},"1303":{"19550":1306,"72743":1304,"2070003":0},"1304":{"77841":1305,"2070003":0},"1306":{"77841":1307,"2070003":0},"1308":{"19550":1311,"72743":1309,"2070003":0},"1309":{"77841":1310,"2070003":0},"1311":{"77841":1312,"2070003":0},"1313":{"19550":1316,"72743":1314,"2070003":0},"1314":{"77841":1315,"2070003":0},"1316":{"77841":1317,"2070003":0},"1318":{"19550":1321,"72743":1319,"2070003":0},"1319":{"77841":1320,"2070003":0},"1321":{"77841":1322,"2070003":0},"1323":{"47":1324,"25521":1756,"87219":1326,"2070003":1931},"1324":{"25521":1325,"2070003":0},"1326":{"25521":1327,"2070003":0},"1406":{"55255":1407,"2070003":0},"1407":{"1080001":1412,"1080002":1413,"1080015":1408,"1080016":1409,"1080017":1410,"1080018":1411,"2070003":0},"1414":{"55255":1415,"2070003":0},"1415":{"1080001":1420,"1080002":1421,"1080015":1416,"1080016":1417,"1080017":1418,"1080018":1419,"2070003":0},"1422":{"78040":1423,"2070003":0},"1423":{"1080001":1434,"1080002":1435,"1080015":1430,"1080016":1431,"1080017":1432,"1080018":1433,"2070003":0},"1436":{"78040":1437,"2070003":0},"1437":{"1080001":1448,"1080002":1449,"1080015":1444,"1080016":1445,"1080017":1446,"1080018":1447,"2070003":0},"1450":{"78040":1451,"2070003":0},"1451":{"1080001":1462,"1080002":1463,"1080015":1458,"1080016":1459,"1080017":1460,"1080018":1461,"2070003":0},"1464":{"78040":1465,"2070003":0},"1465":{"1080001":1476,"1080002":1477,"1080015":1472,"1080016":1473,"1080017":1474,"1080018":1475,"2070003":0},"1478":{"78040":1479,"2070003":0},"1479":{"1080001":1490,"1080002":1491,"1080015":1486,"1080016":1487,"1080017":1488,"1080018":1489,"2070003":0},"1492":{"78040":1493,"2070003":0},"1493":{"1080001":1504,"1080002":1505,"1080015":1500,"1080016":1501,"1080017":1502,"1080018":1503,"2070003":0},"1506":{"24313":1510,"28042":1906,"42761":1513,"45756":1903,"46237":1902,"66681":1904,"72345":1907,"74596":1905,"1080032":1507,"1080045":1944,"2070003":0},"1507":{"28042":1522,"45756":1509,"46237":1508,"66681":1516,"72345":1525,"74596":1517,"2070003":0},"1510":{"28042":1523,"45756":1512,"46237":1511,"66681":1518,"72345":1526,"74596":1519,"2070003":0},"1513":{"28042":1524,"45756":1515,"46237":1514,"66681":1520,"72345":1527,"74596":1521,"2070003":0},"1528":{"47":1752,"1829":1531,"7620":1529,"25521":2046,"87219":1754,"2070003":0},"1529":{"1080031":1530,"2070003":0},"1531":{"1080031":1532,"2070003":0},"1533":{"35":1534,"2070003":0},"1534":{"19537":1535,"1080036":1537,"1080037":1536,"2070003":0},"1538":{"47":1539,"25521":1933,"2070003":2111},"1539":{"25521":1540,"2070003":0},"1542":{"12850":1543,"2070003":0},"1544":{"12850":1545,"2070003":0},"1546":{"12850":1547,"2070003":0},"1549":{"19537":1550,"1080015":1869,"1080025":1976,"1080036":1554,"1080037":1552,"1080045":1946,"2070003":0},"1550":{"1978":1551,"2070003":0},"1552":{"1978":1553,"2070003":0},"1554":{"1978":1555,"2070003":0},"1556":{"1978":1557,"2070003":0},"1558":{"1978":1559,"2070003":0},"1560":{"1978":1561,"2070003":0},"1562":{"1978":1563,"2070003":0},"1564":{"1978":1565,"2070003":0},"1566":{"1978":1567,"2070003":0},"1568":{"1978":1569,"2070003":0},"1570":{"1978":1571,"2070003":0},"1572":{"1978":1573,"2070003":0},"1574":{"1978":1575,"2070003":0},"1576":{"1978":1577,"2070003":0},"1578":{"1978":1579,"2070003":0},"1580":{"47":1627,"19537":1581,"87219":1630,"1080004":1983,"1080015":1633,"1080016":1635,"1080021":1974,"1080036":1585,"1080037":1583,"2070003":2078},"1581":{"1978":1582,"2070003":0},"1583":{"1978":1584,"2070003":0},"1585":{"1978":1586,"2070003":0},"1587":{"19201":1588,"2070003":0},"1589":{"19201":1590,"2070003":0},"1591":{"19201":1592,"2070003":0},"1593":{"226":1594,"6417":1605,"1080009":1997,"1080011":1998,"1080012":1999,"1080038":1942,"2070003":2118},"1594":{"19201":1595,"2070003":0},"1596":{"226":1597,"6417":1607,"1080009":2000,"1080011":2001,"1080012":2002,"1080038":1943,"2070003":2119},"1597":{"19201":1598,"2070003":0},"1599":{"11016":1600,"2070003":0},"1601":{"11016":1602,"2070003":0},"1603":{"11016":1604,"2070003":0},"1605":{"11016":1606,"2070003":0},"1607":{"11016":1608,"2070003":0},"1609":{"1978":1610,"2070003":0},"1611":{"1978":1612,"2070003":0},"1613":{"1978":1614,"2070003":0},"1615":{"1978":1616,"2070003":0},"1617":{"1978":1618,"2070003":0},"1619":{"1978":1620,"2070003":0},"1621":{"1978":1622,"2070003":0},"1623":{"1978":1624,"2070003":0},"1625":{"1978":1626,"2070003":0},"1627":{"1080004":1665,"1080015":1628,"1080016":1629,"2070003":0},"1630":{"1080004":1666,"1080015":1631,"1080016":1632,"2070003":0},"1633":{"1080021":1634,"2070003":1965},"1635":{"1080021":1636,"2070003":1966},"1639":{"219":1640,"1080022":1978,"1080023":1979,"1080024":1980,"2070003":2114},"1640":{"1080022":1641,"1080023":1642,"1080024":1643,"2070003":0},"1679":{"1080004":1680,"2070003":0},"1749":{"19537":1750,"50853":1751,"2070003":0},"1752":{"25521":1753,"2070003":0},"1754":{"25521":1755,"2070003":0},"1853":{"55255":1854,"2070003":0},"1854":{"1080001":1859,"1080002":1860,"1080015":1855,"1080016":1856,"1080017":1857,"1080018":1858,"2070003":0},"1861":{"55255":1862,"2070003":0},"1862":{"1080001":1867,"1080002":1868,"1080015":1863,"1080016":1864,"1080017":1865,"1080018":1866,"2070003":0},"1870":{"1080015":1871,"1080045":1945,"2070003":0},"1872":{"1080015":1873,"2070003":0},"1874":{"1080015":1875,"2070003":0},"1876":{"1080015":1877,"2070003":0},"1878":{"1080015":1879,"2070003":0},"1880":{"1080015":1881,"2070003":0},"1882":{"1080015":1883,"2070003":0},"1884":{"1080015":1885,"2070003":0},"1886":{"1080015":1887,"2070003":0},"1888":{"1080015":1889,"2070003":0},"1890":{"1080015":1891,"2070003":0},"1892":{"1080015":1893,"2070003":0},"1908":{"67705":1909,"2070003":0},"1910":{"52424":1911,"2070003":0},"1912":{"19537":1913,"1080036":1915,"1080037":1914,"2070003":0},"1916":{"9376":1925,"12073":1928,"12084":1929,"17034":1922,"19952":1927,"36451":1921,"43643":1917,"43666":1918,"49526":1926,"55156":1924,"55182":1923,"79098":1919,"79106":1920,"2070003":2070},"1935":{"19537":1936,"1080037":1937,"2070003":0},"1947":{"1080045":1948,"2070003":0},"1949":{"1080045":1950,"2070003":0},"1951":{"1080045":1952,"2070003":0},"1953":{"1080045":1954,"2070003":0},"1955":{"1080045":1956,"2070003":0},"1957":{"1080045":1958,"2070003":0},"1959":{"1080045":1960,"2070003":0},"1961":{"1080045":1962,"2070003":0},"1963":{"1080045":1964,"2070003":2072},"2041":{"19537":2042,"50853":2043,"2070003":0}},{"6":1050004,"7":1050004,"13":1050004,"14":1050004,"20":1050010,"21":1050010,"22":1050010,"27":1050010,"28":1050010,"29":1050010,"33":1050010,"34":1050010,"35":1050010,"39":1050010,"40":1050010,"41":1050010,"46":1050013,"50":1050013,"54":1050013,"57":1050013,"60":1050013,"63":1050013,"66":1050013,"68":1050013,"71":1050013,"73":1050013,"76":1050013,"78":1050013,"81":1050013,"83":1050013,"86":1050013,"88":1050013,"91":1050013,"93":1050013,"96":1050013,"98":1050013,"101":1050013,"103":1050013,"106":1050013,"108":1050013,"111":1050013,"113":1050013,"116":1050013,"118":1050013,"121":1050013,"123":1050013,"126":1050013,"128":1050013,"131":1050013,"133":1050013,"136":1050013,"138":1050013,"141":1050013,"143":1050013,"146":1050013,"148":1050013,"151":1050013,"153":1050013,"156":1050013,"158":1050013,"161":1050013,"163":1050013,"166":1050013,"168":1050013,"172":1050013,"176":1050013,"181":1050013,"186":1050013,"191":1050013,"196":1050013,"199":1050013,"202":1050013,"205":1050013,"208":1050013,"211":1050013,"214":1050013,"217":1050013,"219":1050013,"222":1050013,"224":1050013,"227":1050013,"229":1050013,"232":1050013,"234":1050013,"237":1050013,"239":1050013,"242":1050013,"244":1050013,"247":1050013,"249":1050013,"252":1050013,"254":1050013,"257":1050013,"259":1050013,"262":1050013,"264":1050013,"267":1050013,"269":1050013,"272":1050013,"274":1050013,"277":1050013,"279":1050013,"282":1050013,"284":1050013,"287":1050013,"289":1050013,"292":1050013,"294":1050013,"297":1050013,"299":1050013,"302":1050013,"304":1050013,"307":1050013,"309":1050013,"312":1050013,"314":1050013,"317":1050013,"319":1050013,"322":1050013,"324":1050013,"327":1050013,"329":1050013,"332":1050013,"334":1050013,"337":1050013,"339":1050013,"342":1050013,"344":1050013,"347":1050013,"349":1050013,"352":1050013,"354":1050013,"357":1050013,"359":1050013,"362":1050013,"364":1050013,"367":1050013,"369":1050013,"372":1050013,"374":1050013,"377":1050013,"379":1050013,"382":1050013,"384":1050013,"387":1050013,"389":1050013,"392":1050013,"394":1050013,"397":1050013,"399":1050013,"402":1050013,"404":1050013,"407":1050013,"409":1050013,"412":1050013,"414":1050013,"417":1050013,"419":1050013,"422":1050013,"424":1050013,"427":1050004,"429":1050004,"431":1050004,"434":1050004,"436":1050004,"438":1050004,"442":1050004,"444":1050004,"446":1050004,"448":1050004,"449":1050004,"450":1050004,"451":1050004,"453":1050004,"454":1050004,"455":1050004,"456":1050004,"461":1050010,"462":1050010,"463":1050010,"468":1050010,"469":1050010,"470":1050010,"473":1050010,"474":1050010,"475":1050010,"477":1050010,"478":1050010,"479":1050010,"480":1050010,"483":1050010,"484":1050010,"485":1050010,"487":1050010,"488":1050010,"489":1050010,"490":1050010,"494":1050010,"495":1050010,"496":1050010,"500":1050010,"501":1050010,"502":1050010,"504":1050010,"505":1050010,"506":1050010,"507":1050010,"508":1050010,"509":1050010,"511":1050010,"512":1050010,"513":1050010,"514":1050010,"515":1050010,"516":1050010,"520":1050011,"524":1050011,"528":1050013,"533":1050013,"537":1050013,"541":1050013,"544":1050013,"547":1050013,"550":1050013,"553":1050013,"556":1050013,"559":1050013,"562":1050013,"564":1050013,"567":1050013,"569":1050013,"572":1050013,"574":1050013,"577":1050013,"579":1050013,"582":1050013,"584":1050013,"587":1050013,"589":1050013,"592":1050013,"594":1050013,"597":1050013,"599":1050013,"602":1050013,"604":1050013,"607":1050013,"609":1050013,"612":1050013,"614":1050013,"617":1050013,"619":1050013,"622":1050013,"624":1050013,"627":1050013,"629":1050013,"632":1050013,"634":1050013,"637":1050013,"639":1050013,"642":1050013,"644":1050013,"647":1050013,"649":1050013,"652":1050013,"654":1050013,"657":1050013,"659":1050013,"662":1050013,"664":1050013,"667":1050013,"669":1050013,"672":1050013,"674":1050013,"677":1050013,"679":1050013,"682":1050013,"684":1050013,"687":1050013,"689":1050013,"692":1050013,"694":1050013,"697":1050013,"699":1050013,"702":1050013,"704":1050013,"707":1050013,"709":1050013,"712":1050013,"714":1050013,"717":1050013,"719":1050013,"722":1050013,"724":1050013,"727":1050013,"729":1050013,"732":1050013,"734":1050013,"738":1050013,"742":1050013,"747":1050013,"752":1050013,"757":1050013,"762":1050013,"765":1050013,"768":1050013,"771":1050013,"774":1050013,"777":1050013,"780":1050013,"783":1050013,"785":1050013,"788":1050013,"790":1050013,"793":1050013,"795":1050013,"798":1050013,"800":1050013,"803":1050013,"805":1050013,"808":1050013,"810":1050013,"813":1050013,"815":1050013,"818":1050013,"820":1050013,"823":1050013,"825":1050013,"828":1050013,"830":1050013,"833":1050013,"835":1050013,"838":1050013,"840":1050013,"843":1050013,"845":1050013,"848":1050013,"850":1050013,"853":1050013,"855":1050013,"858":1050013,"860":1050013,"863":1050013,"865":1050013,"868":1050013,"870":1050013,"873":1050013,"875":1050013,"878":1050013,"880":1050013,"883":1050013,"885":1050013,"888":1050013,"890":1050013,"893":1050013,"895":1050013,"898":1050013,"900":1050013,"903":1050013,"905":1050013,"908":1050013,"910":1050013,"913":1050013,"915":1050013,"918":1050013,"920":1050013,"923":1050013,"925":1050013,"928":1050013,"930":1050013,"933":1050013,"935":1050013,"938":1050013,"940":1050013,"943":1050013,"945":1050013,"948":1050013,"950":1050013,"953":1050013,"955":1050013,"958":1050013,"960":1050013,"963":1050013,"965":1050013,"968":1050013,"970":1050013,"973":1050013,"975":1050013,"978":1050013,"980":1050013,"983":1050013,"985":1050013,"988":1050013,"990":1050013,"993":1050013,"994":1050013,"995":1050013,"996":1050013,"997":1050013,"998":1050013,"999":1050013,"1000":1050013,"1001":1050013,"1002":1050013,"1003":1050013,"1004":1050013,"1007":1050013,"1008":1050013,"1009":1050013,"1010":1050013,"1011":1050013,"1012":1050013,"1013":1050013,"1014":1050013,"1015":1050013,"1016":1050013,"1017":1050013,"1018":1050013,"1021":1050013,"1022":1050013,"1023":1050013,"1024":1050013,"1025":1050013,"1026":1050013,"1027":1050013,"1028":1050013,"1029":1050013,"1030":1050013,"1031":1050013,"1032":1050013,"1035":1050013,"1036":1050013,"1037":1050013,"1038":1050013,"1039":1050013,"1040":1050013,"1041":1050013,"1042":1050013,"1043":1050013,"1044":1050013,"1045":1050013,"1046":1050013,"1049":1050013,"1050":1050013,"1051":1050013,"1052":1050013,"1053":1050013,"1054":1050013,"1055":1050013,"1056":1050013,"1057":1050013,"1058":1050013,"1059":1050013,"1060":1050013,"1063":1050013,"1064":1050013,"1065":1050013,"1066":1050013,"1067":1050013,"1068":1050013,"1069":1050013,"1070":1050013,"1071":1050013,"1072":1050013,"1073":1050013,"1074":1050013,"1078":1050004,"1081":1050004,"1083":1050004,"1086":1050004,"1088":1050004,"1090":1050004,"1093":1050004,"1095":1050004,"1097":1050004,"1101":1050004,"1103":1050004,"1105":1050004,"1107":1050004,"1109":1050004,"1111":1050004,"1113":1050004,"1115":1050004,"1117":1050004,"1119":1050004,"1121":1050004,"1123":1050004,"1124":1050004,"1125":1050004,"1126":1050004,"1127":1050004,"1128":1050004,"1129":1050004,"1132":1050010,"1133":1050010,"1134":1050010,"1137":1050010,"1138":1050010,"1139":1050010,"1141":1050010,"1142":1050010,"1143":1050010,"1144":1050010,"1147":1050010,"1148":1050010,"1149":1050010,"1151":1050010,"1152":1050010,"1153":1050010,"1154":1050010,"1155":1050010,"1156":1050010,"1157":1050010,"1158":1050010,"1159":1050010,"1160":1050010,"1161":1050010,"1162":1050010,"1163":1050010,"1164":1050010,"1166":1050010,"1167":1050010,"1168":1050010,"1169":1050010,"1170":1050010,"1171":1050010,"1173":1050010,"1174":1050010,"1175":1050010,"1176":1050010,"1177":1050010,"1178":1050010,"1179":1050010,"1180":1050010,"1181":1050010,"1182":1050010,"1183":1050010,"1184":1050010,"1185":1050011,"1186":1050011,"1187":1050011,"1188":1050011,"1189":1050011,"1190":1050011,"1191":1050011,"1192":1050011,"1196":1050011,"1198":1050011,"1200":1050011,"1201":1050013,"1202":1050013,"1203":1050013,"1204":1050013,"1205":1050013,"1206":1050013,"1207":1050013,"1208":1050013,"1209":1050013,"1210":1050013,"1211":1050013,"1212":1050013,"1213":1050013,"1214":1050013,"1215":1050013,"1216":1050013,"1217":1050013,"1218":1050013,"1219":1050013,"1220":1050013,"1221":1050013,"1222":1050013,"1223":1050013,"1224":1050013,"1225":1050013,"1226":1050013,"1227":1050013,"1228":1050013,"1229":1050013,"1230":1050013,"1231":1050013,"1232":1050013,"1233":1050013,"1234":1050013,"1235":1050013,"1236":1050013,"1237":1050013,"1238":1050013,"1239":1050013,"1243":1050013,"1246":1050013,"1249":1050013,"1252":1050013,"1255":1050013,"1257":1050013,"1260":1050013,"1262":1050013,"1265":1050013,"1267":1050013,"1270":1050013,"1272":1050013,"1275":1050013,"1277":1050013,"1280":1050013,"1282":1050013,"1285":1050013,"1287":1050013,"1290":1050013,"1292":1050013,"1295":1050013,"1297":1050013,"1300":1050013,"1302":1050013,"1305":1050013,"1307":1050013,"1310":1050013,"1312":1050013,"1315":1050013,"1317":1050013,"1320":1050013,"1322":1050013,"1325":1050013,"1327":1050013,"1328":1050013,"1329":1050013,"1330":1050013,"1331":1050013,"1332":1050013,"1333":1050013,"1334":1050013,"1335":1050013,"1336":1050013,"1337":1050013,"1338":1050013,"1339":1050013,"1340":1050013,"1341":1050013,"1342":1050013,"1343":1050013,"1344":1050013,"1345":1050013,"1346":1050013,"1347":1050013,"1348":1050013,"1349":1050013,"1350":1050013,"1351":1050013,"1352":1050013,"1353":1050013,"1354":1050013,"1355":1050013,"1356":1050013,"1357":1050013,"1358":1050013,"1359":1050013,"1360":1050013,"1361":1050013,"1362":1050013,"1363":1050013,"1364":1050013,"1365":1050013,"1366":1050013,"1367":1050013,"1368":1050013,"1369":1050013,"1370":1050013,"1371":1050013,"1372":1050013,"1373":1050013,"1374":1050013,"1375":1050013,"1376":1050013,"1377":1050013,"1378":1050013,"1379":1050013,"1380":1050013,"1381":1050013,"1382":1050013,"1383":1050013,"1384":1050013,"1385":1050013,"1386":1050013,"1387":1050013,"1388":1050013,"1389":1050013,"1390":1050013,"1391":1050013,"1392":1050013,"1393":1050013,"1394":1050013,"1395":1050013,"1396":1050013,"1397":1050013,"1398":1050013,"1399":1050013,"1400":1050013,"1401":1050013,"1402":1050013,"1403":1050013,"1404":1050013,"1405":1050013,"1408":1050013,"1409":1050013,"1410":1050013,"1411":1050013,"1412":1050013,"1413":1050013,"1416":1050013,"1417":1050013,"1418":1050013,"1419":1050013,"1420":1050013,"1421":1050013,"1424":1050013,"1425":1050013,"1426":1050013,"1427":1050013,"1428":1050013,"1429":1050013,"1430":1050013,"1431":1050013,"1432":1050013,"1433":1050013,"1434":1050013,"1435":1050013,"1438":1050013,"1439":1050013,"1440":1050013,"1441":1050013,"1442":1050013,"1443":1050013,"1444":1050013,"1445":1050013,"1446":1050013,"1447":1050013,"1448":1050013,"1449":1050013,"1452":1050013,"1453":1050013,"1454":1050013,"1455":1050013,"1456":1050013,"1457":1050013,"1458":1050013,"1459":1050013,"1460":1050013,"1461":1050013,"1462":1050013,"1463":1050013,"1466":1050013,"1467":1050013,"1468":1050013,"1469":1050013,"1470":1050013,"1471":1050013,"1472":1050013,"1473":1050013,"1474":1050013,"1475":1050013,"1476":1050013,"1477":1050013,"1480":1050013,"1481":1050013,"1482":1050013,"1483":1050013,"1484":1050013,"1485":1050013,"1486":1050013,"1487":1050013,"1488":1050013,"1489":1050013,"1490":1050013,"1491":1050013,"1494":1050013,"1495":1050013,"1496":1050013,"1497":1050013,"1498":1050013,"1499":1050013,"1500":1050013,"1501":1050013,"1502":1050013,"1503":1050013,"1504":1050013,"1505":1050013,"1508":1050000,"1509":1050000,"1511":1050000,"1512":1050000,"1514":1050000,"1515":1050000,"1516":1050001,"1517":1050001,"1518":1050001,"1519":1050001,"1520":1050001,"1521":1050001,"1522":1050002,"1523":1050002,"1524":1050002,"1525":1050002,"1526":1050002,"1527":1050002,"1530":1050004,"1532":1050004,"1535":1050004,"1536":1050004,"1537":1050004,"1540":1050004,"1541":1050004,"1543":1050004,"1545":1050004,"1547":1050004,"1548":1050004,"1551":1050004,"1553":1050004,"1555":1050004,"1557":1050004,"1559":1050004,"1561":1050004,"1563":1050004,"1565":1050004,"1567":1050004,"1569":1050004,"1571":1050004,"1573":1050004,"1575":1050004,"1577":1050004,"1579":1050004,"1582":1050004,"1584":1050004,"1586":1050004,"1588":1050004,"1590":1050004,"1592":1050004,"1595":1050004,"1598":1050004,"1600":1050004,"1602":1050004,"1604":1050004,"1606":1050004,"1608":1050004,"1610":1050004,"1612":1050004,"1614":1050004,"1616":1050004,"1618":1050004,"1620":1050004,"1622":1050004,"1624":1050004,"1626":1050004,"1628":1050007,"1629":1050007,"1631":1050007,"1632":1050007,"1634":1050009,"1636":1050009,"1637":1050009,"1638":1050009,"1641":1050010,"1642":1050010,"1643":1050010,"1644":1050010,"1645":1050010,"1646":1050010,"1647":1050010,"1648":1050010,"1649":1050010,"1650":1050010,"1651":1050010,"1652":1050010,"1653":1050010,"1654":1050010,"1655":1050010,"1656":1050010,"1657":1050010,"1658":1050010,"1659":1050010,"1660":1050010,"1661":1050010,"1662":1050010,"1663":1050010,"1664":1050010,"1665":1050011,"1666":1050011,"1667":1050011,"1668":1050011,"1669":1050011,"1670":1050011,"1671":1050011,"1672":1050011,"1673":1050011,"1674":1050011,"1675":1050011,"1676":1050011,"1677":1050011,"1678":1050011,"1680":1050011,"1681":1050013,"1682":1050013,"1683":1050013,"1684":1050013,"1685":1050013,"1686":1050013,"1687":1050013,"1688":1050013,"1689":1050013,"1690":1050013,"1691":1050013,"1692":1050013,"1693":1050013,"1694":1050013,"1695":1050013,"1696":1050013,"1697":1050013,"1698":1050013,"1699":1050013,"1700":1050013,"1701":1050013,"1702":1050013,"1703":1050013,"1704":1050013,"1705":1050013,"1706":1050013,"1707":1050013,"1708":1050013,"1709":1050013,"1710":1050013,"1711":1050013,"1712":1050013,"1713":1050013,"1714":1050013,"1715":1050013,"1716":1050013,"1717":1050013,"1718":1050013,"1719":1050013,"1720":1050013,"1721":1050013,"1722":1050013,"1723":1050013,"1724":1050013,"1725":1050013,"1726":1050013,"1727":1050013,"1728":1050013,"1729":1050013,"1730":1050013,"1731":1050013,"1732":1050013,"1733":1050013,"1734":1050013,"1735":1050013,"1736":1050013,"1737":1050013,"1738":1050013,"1739":1050013,"1740":1050013,"1741":1050013,"1742":1050013,"1743":1050013,"1744":1050013,"1745":1050013,"1746":1050013,"1747":1050013,"1748":1050013,"1750":1050013,"1751":1050013,"1753":1050013,"1755":1050013,"1756":1050013,"1757":1050013,"1758":1050013,"1759":1050013,"1760":1050013,"1761":1050013,"1762":1050013,"1763":1050013,"1764":1050013,"1765":1050013,"1766":1050013,"1767":1050013,"1768":1050013,"1769":1050013,"1770":1050013,"1771":1050013,"1772":1050013,"1773":1050013,"1774":1050013,"1775":1050013,"1776":1050013,"1777":1050013,"1778":1050013,"1779":1050013,"1780":1050013,"1781":1050013,"1782":1050013,"1783":1050013,"1784":1050013,"1785":1050013,"1786":1050013,"1787":1050013,"1788":1050013,"1789":1050013,"1790":1050013,"1791":1050013,"1792":1050013,"1793":1050013,"1794":1050013,"1795":1050013,"1796":1050013,"1797":1050013,"1798":1050013,"1799":1050013,"1800":1050013,"1801":1050013,"1802":1050013,"1803":1050013,"1804":1050013,"1805":1050013,"1806":1050013,"1807":1050013,"1808":1050013,"1809":1050013,"1810":1050013,"1811":1050013,"1812":1050013,"1813":1050013,"1814":1050013,"1815":1050013,"1816":1050013,"1817":1050013,"1818":1050013,"1819":1050013,"1820":1050013,"1821":1050013,"1822":1050013,"1823":1050013,"1824":1050013,"1825":1050013,"1826":1050013,"1827":1050013,"1828":1050013,"1829":1050013,"1830":1050013,"1831":1050013,"1832":1050013,"1833":1050013,"1834":1050013,"1835":1050013,"1836":1050013,"1837":1050013,"1838":1050013,"1839":1050013,"1840":1050013,"1841":1050013,"1842":1050013,"1843":1050013,"1844":1050013,"1845":1050013,"1846":1050013,"1847":1050013,"1848":1050013,"1849":1050013,"1850":1050013,"1851":1050013,"1852":1050013,"1855":1050013,"1856":1050013,"1857":1050013,"1858":1050013,"1859":1050013,"1860":1050013,"1863":1050013,"1864":1050013,"1865":1050013,"1866":1050013,"1867":1050013,"1868":1050013,"1869":"0","1871":"0","1873":"0","1875":"0","1877":"0","1879":"0","1881":"0","1883":"0","1885":"0","1887":"0","1889":"0","1891":"0","1893":"0","1894":"0","1895":"0","1896":"0","1897":"0","1898":"0","1899":"0","1900":"0","1901":"0","1902":1050000,"1903":1050000,"1904":1050001,"1905":1050001,"1906":1050002,"1907":1050002,"1909":1050002,"1911":1050003,"1913":1050004,"1914":1050004,"1915":1050004,"1917":"0","1918":"0","1919":"0","1920":"0","1921":"0","1922":"0","1923":"0","1924":"0","1925":"0","1926":"0","1927":"0","1928":"0","1929":"0","1930":1050004,"1931":1050004,"1932":1050004,"1933":1050004,"1934":1050005,"1936":1050004,"1937":1050004,"1938":1050004,"1939":1050004,"1940":1050004,"1941":1050004,"1942":1050004,"1943":1050004,"1944":1050004,"1945":1050004,"1946":1050004,"1948":1050004,"1950":1050004,"1952":1050004,"1954":1050004,"1956":1050004,"1958":1050004,"1960":1050004,"1962":1050004,"1964":1050004,"1965":1050007,"1966":1050007,"1967":1050008,"1968":1050008,"1969":1050008,"1970":1050009,"1971":1050009,"1972":1050009,"1973":1050009,"1974":1050009,"1975":1050009,"1976":1050010,"1977":1050010,"1978":1050010,"1979":1050010,"1980":1050010,"1981":1050010,"1982":1050010,"1983":1050011,"1984":1050011,"1985":1050011,"1986":1050011,"1987":1050011,"1988":1050011,"1989":1050011,"1990":1050011,"1991":1050011,"1992":1050011,"1993":1050011,"1994":1050011,"1995":1050011,"1996":1050011,"1997":1050011,"1998":1050011,"1999":1050011,"2000":1050011,"2001":1050011,"2002":1050011,"2003":1050013,"2004":1050013,"2005":1050013,"2006":1050013,"2007":1050013,"2008":1050013,"2009":1050013,"2010":1050013,"2011":1050013,"2012":1050013,"2013":1050013,"2014":1050013,"2015":1050013,"2016":1050013,"2017":1050013,"2018":1050013,"2019":1050013,"2020":1050013,"2021":1050013,"2022":1050013,"2023":1050013,"2024":1050013,"2025":1050013,"2026":1050013,"2027":1050013,"2028":1050013,"2029":1050013,"2030":1050013,"2031":1050013,"2032":1050013,"2033":1050013,"2034":1050013,"2035":1050013,"2036":1050013,"2037":1050013,"2038":1050013,"2039":1050013,"2040":1050013,"2042":1050013,"2043":1050013,"2044":1050013,"2045":1050013,"2046":1050013,"2047":1050013,"2048":1050013,"2049":1050013,"2050":1050013,"2051":1050013,"2052":1050013,"2053":1050013,"2054":1050013,"2055":1050013,"2056":1050013,"2057":1050013,"2058":1050013,"2059":1050013,"2060":1050013,"2061":1050013,"2062":1050013,"2063":1050013,"2064":1050013,"2065":1050000,"2066":1050001,"2067":1050002,"2068":1050004,"2069":1050004,"2070":1050004,"2071":1050004,"2072":1050004,"2073":1050004,"2074":1050006,"2075":1050006,"2076":1050007,"2077":1050007,"2078":1050007,"2079":1050009,"2080":1050010,"2081":1050010,"2082":1050011,"2083":1050011,"2084":1050011,"2085":1050011,"2086":1050011,"2087":1050011,"2088":1050011,"2089":1050011,"2090":1050011,"2091":1050012,"2092":1050013,"2093":1050013,"2094":1050013,"2095":1050013,"2096":1050013,"2097":1050013,"2098":1050013,"2099":1050013,"2100":1050013,"2101":1050013,"2102":1050013,"2103":1050014,"2104":1050015,"2105":1050016,"2106":1050017,"2107":1050018,"2108":1050019,"2109":1050003,"2110":1050020,"2111":1050021,"2112":1050022,"2113":1050023,"2114":1050024,"2115":1050025,"2116":1050026,"2117":1050027,"2118":1050028,"2119":1050029,"2120":1050030,"2121":1050031,"2122":1050032,"2123":1050033,"2124":1050034,"2125":1050035,"2126":1050036},{"1508":[1,0],"1509":[1,0],"1511":[1,0],"1512":[1,0],"1514":[1,0],"1515":[1,0],"1516":[1,0],"1517":[1,0],"1518":[1,0],"1519":[1,0],"1520":[1,0],"1521":[1,0],"1522":[1,0],"1523":[1,0],"1524":[1,0],"1525":[1,0],"1526":[1,0],"1527":[1,0],"1902":[1,0],"1903":[1,0],"1904":[1,0],"1905":[1,0],"1906":[1,0],"1907":[1,0],"1944":[1,0],"1945":[1,0],"1946":[1,0],"1948":[1,0],"1950":[1,0],"1952":[1,0],"1954":[1,0],"1956":[1,0],"1958":[1,0],"1960":[1,0],"1962":[1,0]},{}]', '[100,1497,{"0":{"2894":1436,"6030":1439,"7651":1048,"10219":1448,"10987":948,"11495":1442,"24313":928,"25521":1064,"28042":1179,"38610":1456,"42761":938,"45756":1011,"46237":998,"47341":1056,"47398":1060,"58873":1454,"65972":1481,"65973":1482,"66681":1032,"72345":1182,"72836":1052,"74596":1040,"80126":1451,"82992":1445,"87060":1433,"1050000":985,"1050001":1024,"1050002":1176,"1050003":1068,"1050004":1487,"1050005":1488,"1050006":1,"1050007":35,"1050008":69,"1050009":137,"1050010":1489,"1050011":1490,"1050012":1248,"1050013":1491,"1050014":103,"1050015":1295,"1050016":1462,"1050017":1463,"1050018":1464,"1050019":1465,"1050020":1081,"1050021":1484,"1050022":1485,"1050023":1477,"1050025":1227,"1050026":1234,"1050027":1241,"1050028":1339,"1050029":1345,"1050030":1425,"1050031":1492,"1050032":1493,"1050033":1494,"1050034":1495,"1050035":1496,"1050036":1497,"2070003":0},"1":{"1050016":2,"1050017":1314,"1050018":1319,"2070003":1466},"2":{"46":3,"1050006":1113,"1050007":1112,"1050008":1110,"1050009":182,"1050014":1111,"2070003":1309},"3":{"1050006":897,"1050007":896,"1050008":894,"1050009":4,"1050014":895,"2070003":0},"4":{"46":5,"3361":20,"1050008":213,"1050014":220,"2070003":893},"5":{"1050006":508,"1050007":507,"1050008":6,"1050014":13,"2070003":0},"6":{"46":7,"3361":10,"1050006":228,"1050007":227,"2070003":583},"7":{"1050006":9,"1050007":8,"2070003":229},"10":{"1050006":12,"1050007":11,"2070003":230},"13":{"46":14,"3361":17,"1050006":232,"1050007":231,"2070003":584},"14":{"1050006":16,"1050007":15,"2070003":233},"17":{"1050006":19,"1050007":18,"2070003":234},"20":{"1050006":512,"1050007":511,"1050008":21,"1050014":28,"2070003":0},"21":{"46":22,"3361":25,"1050006":236,"1050007":235,"2070003":585},"22":{"1050006":24,"1050007":23,"2070003":237},"25":{"1050006":27,"1050007":26,"2070003":238},"28":{"46":29,"3361":32,"1050006":240,"1050007":239,"2070003":586},"29":{"1050006":31,"1050007":30,"2070003":241},"32":{"1050006":34,"1050007":33,"2070003":242},"35":{"1050016":36,"1050017":1315,"1050018":1320,"2070003":1467},"36":{"46":37,"1050006":1118,"1050007":1117,"1050008":1115,"1050009":243,"1050014":1116,"2070003":1310},"37":{"1050006":902,"1050007":901,"1050008":899,"1050009":38,"1050014":900,"2070003":0},"38":{"46":39,"3361":54,"1050008":274,"1050014":281,"2070003":898},"39":{"1050006":516,"1050007":515,"1050008":40,"1050014":47,"2070003":0},"40":{"46":41,"3361":44,"1050006":289,"1050007":288,"2070003":625},"41":{"1050006":43,"1050007":42,"2070003":290},"44":{"1050006":46,"1050007":45,"2070003":291},"47":{"46":48,"3361":51,"1050006":293,"1050007":292,"2070003":626},"48":{"1050006":50,"1050007":49,"2070003":294},"51":{"1050006":53,"1050007":52,"2070003":295},"54":{"1050006":520,"1050007":519,"1050008":55,"1050014":62,"2070003":0},"55":{"46":56,"3361":59,"1050006":297,"1050007":296,"2070003":627},"56":{"1050006":58,"1050007":57,"2070003":298},"59":{"1050006":61,"1050007":60,"2070003":299},"62":{"46":63,"3361":66,"1050006":301,"1050007":300,"2070003":628},"63":{"1050006":65,"1050007":64,"2070003":302},"66":{"1050006":68,"1050007":67,"2070003":303},"69":{"3361":1094,"1050006":1301,"1050007":879,"1050016":70,"1050017":1316,"1050018":1321,"2070003":1468},"70":{"46":71,"1050006":1123,"1050007":1122,"1050008":1120,"1050009":304,"1050014":1121,"2070003":1311},"71":{"1050006":907,"1050007":906,"1050008":904,"1050009":72,"1050014":905,"2070003":0},"72":{"46":73,"3361":88,"1050008":335,"1050014":342,"2070003":903},"73":{"1050006":524,"1050007":523,"1050008":74,"1050014":81,"2070003":0},"74":{"46":75,"3361":78,"1050006":350,"1050007":349,"2070003":667},"75":{"1050006":77,"1050007":76,"2070003":351},"78":{"1050006":80,"1050007":79,"2070003":352},"81":{"46":82,"3361":85,"1050006":354,"1050007":353,"2070003":668},"82":{"1050006":84,"1050007":83,"2070003":355},"85":{"1050006":87,"1050007":86,"2070003":356},"88":{"1050006":528,"1050007":527,"1050008":89,"1050014":96,"2070003":0},"89":{"46":90,"3361":93,"1050006":358,"1050007":357,"2070003":669},"90":{"1050006":92,"1050007":91,"2070003":359},"93":{"1050006":95,"1050007":94,"2070003":360},"96":{"46":97,"3361":100,"1050006":362,"1050007":361,"2070003":670},"97":{"1050006":99,"1050007":98,"2070003":363},"100":{"1050006":102,"1050007":101,"2070003":364},"103":{"3361":1096,"1050006":1302,"1050007":882,"1050015":1290,"1050016":104,"1050017":1317,"1050018":1322,"1050019":1294,"2070003":1469},"104":{"46":105,"1050006":1128,"1050007":1127,"1050008":1125,"1050009":365,"1050014":1126,"2070003":1312},"105":{"1050006":912,"1050007":911,"1050008":909,"1050009":106,"1050014":910,"2070003":0},"106":{"46":107,"3361":122,"1050008":396,"1050014":403,"2070003":908},"107":{"1050006":532,"1050007":531,"1050008":108,"1050014":115,"2070003":0},"108":{"46":109,"3361":112,"1050006":411,"1050007":410,"2070003":709},"109":{"1050006":111,"1050007":110,"2070003":412},"112":{"1050006":114,"1050007":113,"2070003":413},"115":{"46":116,"3361":119,"1050006":415,"1050007":414,"2070003":710},"116":{"1050006":118,"1050007":117,"2070003":416},"119":{"1050006":121,"1050007":120,"2070003":417},"122":{"1050006":536,"1050007":535,"1050008":123,"1050014":130,"2070003":0},"123":{"46":124,"3361":127,"1050006":419,"1050007":418,"2070003":711},"124":{"1050006":126,"1050007":125,"2070003":420},"127":{"1050006":129,"1050007":128,"2070003":421},"130":{"46":131,"3361":134,"1050006":423,"1050007":422,"2070003":712},"131":{"1050006":133,"1050007":132,"2070003":424},"134":{"1050006":136,"1050007":135,"2070003":425},"137":{"46":171,"3361":1102,"1050006":1308,"1050007":1307,"1050008":487,"1050014":492,"1050016":138,"1050017":1318,"1050018":1323,"2070003":1470},"138":{"46":139,"1050006":1133,"1050007":1132,"1050008":1130,"1050009":426,"1050014":1131,"2070003":1313},"139":{"1050006":917,"1050007":916,"1050008":914,"1050009":140,"1050014":915,"2070003":0},"140":{"46":141,"3361":156,"1050008":457,"1050014":464,"2070003":913},"141":{"1050006":540,"1050007":539,"1050008":142,"1050014":149,"2070003":0},"142":{"46":143,"3361":146,"1050006":472,"1050007":471,"2070003":751},"143":{"1050006":145,"1050007":144,"2070003":473},"146":{"1050006":148,"1050007":147,"2070003":474},"149":{"46":150,"3361":153,"1050006":476,"1050007":475,"2070003":752},"150":{"1050006":152,"1050007":151,"2070003":477},"153":{"1050006":155,"1050007":154,"2070003":478},"156":{"1050006":544,"1050007":543,"1050008":157,"1050014":164,"2070003":0},"157":{"46":158,"3361":161,"1050006":480,"1050007":479,"2070003":753},"158":{"1050006":160,"1050007":159,"2070003":481},"161":{"1050006":163,"1050007":162,"2070003":482},"164":{"46":165,"3361":168,"1050006":484,"1050007":483,"2070003":754},"165":{"1050006":167,"1050007":166,"2070003":485},"168":{"1050006":170,"1050007":169,"2070003":486},"171":{"1050008":172,"1050014":177,"2070003":0},"172":{"46":173,"3361":755,"1050007":497,"2070003":0},"173":{"1050007":174,"2070003":0},"174":{"3361":175,"1050006":500,"2070003":0},"175":{"1050006":176,"2070003":0},"177":{"46":178,"3361":757,"1050007":501,"2070003":0},"178":{"1050007":179,"2070003":0},"179":{"3361":180,"1050006":504,"2070003":0},"180":{"1050006":181,"2070003":0},"182":{"46":183,"3361":198,"1050008":545,"1050014":552,"2070003":1109},"183":{"1050006":772,"1050007":771,"1050008":184,"1050014":191,"2070003":0},"184":{"46":185,"3361":188,"1050006":560,"1050007":559,"2070003":817},"185":{"1050006":187,"1050007":186,"2070003":561},"188":{"1050006":190,"1050007":189,"2070003":562},"191":{"46":192,"3361":195,"1050006":564,"1050007":563,"2070003":818},"192":{"1050006":194,"1050007":193,"2070003":565},"195":{"1050006":197,"1050007":196,"2070003":566},"198":{"1050006":776,"1050007":775,"1050008":199,"1050014":206,"2070003":0},"199":{"46":200,"3361":203,"1050006":568,"1050007":567,"2070003":819},"200":{"1050006":202,"1050007":201,"2070003":569},"203":{"1050006":205,"1050007":204,"2070003":570},"206":{"46":207,"3361":210,"1050006":572,"1050007":571,"2070003":820},"207":{"1050006":209,"1050007":208,"2070003":573},"210":{"1050006":212,"1050007":211,"2070003":574},"213":{"46":214,"3361":217,"1050006":576,"1050007":575,"2070003":821},"214":{"1050006":216,"1050007":215,"2070003":577},"217":{"1050006":219,"1050007":218,"2070003":578},"220":{"46":221,"3361":224,"1050006":580,"1050007":579,"2070003":822},"221":{"1050006":223,"1050007":222,"2070003":581},"224":{"1050006":226,"1050007":225,"2070003":582},"243":{"46":244,"3361":259,"1050008":587,"1050014":594,"2070003":1114},"244":{"1050006":780,"1050007":779,"1050008":245,"1050014":252,"2070003":0},"245":{"46":246,"3361":249,"1050006":602,"1050007":601,"2070003":831},"246":{"1050006":248,"1050007":247,"2070003":603},"249":{"1050006":251,"1050007":250,"2070003":604},"252":{"46":253,"3361":256,"1050006":606,"1050007":605,"2070003":832},"253":{"1050006":255,"1050007":254,"2070003":607},"256":{"1050006":258,"1050007":257,"2070003":608},"259":{"1050006":784,"1050007":783,"1050008":260,"1050014":267,"2070003":0},"260":{"46":261,"3361":264,"1050006":610,"1050007":609,"2070003":833},"261":{"1050006":263,"1050007":262,"2070003":611},"264":{"1050006":266,"1050007":265,"2070003":612},"267":{"46":268,"3361":271,"1050006":614,"1050007":613,"2070003":834},"268":{"1050006":270,"1050007":269,"2070003":615},"271":{"1050006":273,"1050007":272,"2070003":616},"274":{"46":275,"3361":278,"1050006":618,"1050007":617,"2070003":835},"275":{"1050006":277,"1050007":276,"2070003":619},"278":{"1050006":280,"1050007":279,"2070003":620},"281":{"46":282,"3361":285,"1050006":622,"1050007":621,"2070003":836},"282":{"1050006":284,"1050007":283,"2070003":623},"285":{"1050006":287,"1050007":286,"2070003":624},"304":{"46":305,"3361":320,"1050008":629,"1050014":636,"2070003":1119},"305":{"1050006":788,"1050007":787,"1050008":306,"1050014":313,"2070003":0},"306":{"46":307,"3361":310,"1050006":644,"1050007":643,"2070003":845},"307":{"1050006":309,"1050007":308,"2070003":645},"310":{"1050006":312,"1050007":311,"2070003":646},"313":{"46":314,"3361":317,"1050006":648,"1050007":647,"2070003":846},"314":{"1050006":316,"1050007":315,"2070003":649},"317":{"1050006":319,"1050007":318,"2070003":650},"320":{"1050006":792,"1050007":791,"1050008":321,"1050014":328,"2070003":0},"321":{"46":322,"3361":325,"1050006":652,"1050007":651,"2070003":847},"322":{"1050006":324,"1050007":323,"2070003":653},"325":{"1050006":327,"1050007":326,"2070003":654},"328":{"46":329,"3361":332,"1050006":656,"1050007":655,"2070003":848},"329":{"1050006":331,"1050007":330,"2070003":657},"332":{"1050006":334,"1050007":333,"2070003":658},"335":{"46":336,"3361":339,"1050006":660,"1050007":659,"2070003":849},"336":{"1050006":338,"1050007":337,"2070003":661},"339":{"1050006":341,"1050007":340,"2070003":662},"342":{"46":343,"3361":346,"1050006":664,"1050007":663,"2070003":850},"343":{"1050006":345,"1050007":344,"2070003":665},"346":{"1050006":348,"1050007":347,"2070003":666},"365":{"46":366,"3361":381,"1050008":671,"1050014":678,"2070003":1124},"366":{"1050006":796,"1050007":795,"1050008":367,"1050014":374,"2070003":0},"367":{"46":368,"3361":371,"1050006":686,"1050007":685,"2070003":859},"368":{"1050006":370,"1050007":369,"2070003":687},"371":{"1050006":373,"1050007":372,"2070003":688},"374":{"46":375,"3361":378,"1050006":690,"1050007":689,"2070003":860},"375":{"1050006":377,"1050007":376,"2070003":691},"378":{"1050006":380,"1050007":379,"2070003":692},"381":{"1050006":800,"1050007":799,"1050008":382,"1050014":389,"2070003":0},"382":{"46":383,"3361":386,"1050006":694,"1050007":693,"2070003":861},"383":{"1050006":385,"1050007":384,"2070003":695},"386":{"1050006":388,"1050007":387,"2070003":696},"389":{"46":390,"3361":393,"1050006":698,"1050007":697,"2070003":862},"390":{"1050006":392,"1050007":391,"2070003":699},"393":{"1050006":395,"1050007":394,"2070003":700},"396":{"46":397,"3361":400,"1050006":702,"1050007":701,"2070003":863},"397":{"1050006":399,"1050007":398,"2070003":703},"400":{"1050006":402,"1050007":401,"2070003":704},"403":{"46":404,"3361":407,"1050006":706,"1050007":705,"2070003":864},"404":{"1050006":406,"1050007":405,"2070003":707},"407":{"1050006":409,"1050007":408,"2070003":708},"426":{"46":427,"3361":442,"1050008":713,"1050014":720,"2070003":1129},"427":{"1050006":804,"1050007":803,"1050008":428,"1050014":435,"2070003":0},"428":{"46":429,"3361":432,"1050006":728,"1050007":727,"2070003":873},"429":{"1050006":431,"1050007":430,"2070003":729},"432":{"1050006":434,"1050007":433,"2070003":730},"435":{"46":436,"3361":439,"1050006":732,"1050007":731,"2070003":874},"436":{"1050006":438,"1050007":437,"2070003":733},"439":{"1050006":441,"1050007":440,"2070003":734},"442":{"1050006":808,"1050007":807,"1050008":443,"1050014":450,"2070003":0},"443":{"46":444,"3361":447,"1050006":736,"1050007":735,"2070003":875},"444":{"1050006":446,"1050007":445,"2070003":737},"447":{"1050006":449,"1050007":448,"2070003":738},"450":{"46":451,"3361":454,"1050006":740,"1050007":739,"2070003":876},"451":{"1050006":453,"1050007":452,"2070003":741},"454":{"1050006":456,"1050007":455,"2070003":742},"457":{"46":458,"3361":461,"1050006":744,"1050007":743,"2070003":877},"458":{"1050006":460,"1050007":459,"2070003":745},"461":{"1050006":463,"1050007":462,"2070003":746},"464":{"46":465,"3361":468,"1050006":748,"1050007":747,"2070003":878},"465":{"1050006":467,"1050007":466,"2070003":749},"468":{"1050006":470,"1050007":469,"2070003":750},"487":{"46":488,"3361":885,"1050007":759,"2070003":1305},"488":{"1050007":489,"2070003":0},"489":{"3361":490,"1050006":762,"2070003":0},"490":{"1050006":491,"2070003":0},"492":{"46":493,"3361":887,"1050007":763,"2070003":1306},"493":{"1050007":494,"2070003":0},"494":{"3361":495,"1050006":766,"2070003":0},"495":{"1050006":496,"2070003":0},"497":{"3361":498,"1050006":767,"2070003":889},"498":{"1050006":499,"2070003":0},"501":{"3361":502,"1050006":768,"2070003":890},"502":{"1050006":503,"2070003":0},"545":{"46":546,"3361":549,"1050006":810,"1050007":809,"2070003":918},"546":{"1050006":548,"1050007":547,"2070003":811},"549":{"1050006":551,"1050007":550,"2070003":812},"552":{"46":553,"3361":556,"1050006":814,"1050007":813,"2070003":919},"553":{"1050006":555,"1050007":554,"2070003":815},"556":{"1050006":558,"1050007":557,"2070003":816},"587":{"46":588,"3361":591,"1050006":824,"1050007":823,"2070003":920},"588":{"1050006":590,"1050007":589,"2070003":825},"591":{"1050006":593,"1050007":592,"2070003":826},"594":{"46":595,"3361":598,"1050006":828,"1050007":827,"2070003":921},"595":{"1050006":597,"1050007":596,"2070003":829},"598":{"1050006":600,"1050007":599,"2070003":830},"629":{"46":630,"3361":633,"1050006":838,"1050007":837,"2070003":922},"630":{"1050006":632,"1050007":631,"2070003":839},"633":{"1050006":635,"1050007":634,"2070003":840},"636":{"46":637,"3361":640,"1050006":842,"1050007":841,"2070003":923},"637":{"1050006":639,"1050007":638,"2070003":843},"640":{"1050006":642,"1050007":641,"2070003":844},"671":{"46":672,"3361":675,"1050006":852,"1050007":851,"2070003":924},"672":{"1050006":674,"1050007":673,"2070003":853},"675":{"1050006":677,"1050007":676,"2070003":854},"678":{"46":679,"3361":682,"1050006":856,"1050007":855,"2070003":925},"679":{"1050006":681,"1050007":680,"2070003":857},"682":{"1050006":684,"1050007":683,"2070003":858},"713":{"46":714,"3361":717,"1050006":866,"1050007":865,"2070003":926},"714":{"1050006":716,"1050007":715,"2070003":867},"717":{"1050006":719,"1050007":718,"2070003":868},"720":{"46":721,"3361":724,"1050006":870,"1050007":869,"2070003":927},"721":{"1050006":723,"1050007":722,"2070003":871},"724":{"1050006":726,"1050007":725,"2070003":872},"755":{"1050007":756,"2070003":0},"757":{"1050007":758,"2070003":0},"759":{"3361":760,"1050006":891,"2070003":1107},"760":{"1050006":761,"2070003":0},"763":{"3361":764,"1050006":892,"2070003":1108},"764":{"1050006":765,"2070003":0},"879":{"46":880,"1050006":1100,"2070003":1303},"880":{"1050006":881,"2070003":0},"882":{"46":883,"1050006":1101,"2070003":1304},"883":{"1050006":884,"2070003":0},"885":{"1050007":886,"2070003":0},"887":{"1050007":888,"2070003":0},"928":{"28042":932,"45756":964,"46237":961,"72345":935,"1050000":958,"1050002":929,"1050023":1408,"1050028":1401,"2070003":0},"929":{"52424":930,"1050028":1167,"2070003":1402},"930":{"1050028":931,"2070003":0},"932":{"52424":933,"1050028":1168,"2070003":1403},"933":{"1050028":934,"2070003":0},"935":{"52424":936,"1050028":1169,"2070003":1404},"936":{"1050028":937,"2070003":0},"938":{"28042":942,"45756":973,"46237":970,"72345":945,"1050000":967,"1050002":939,"1050023":1416,"1050028":1409,"2070003":0},"939":{"52424":940,"1050028":1170,"2070003":1410},"940":{"1050028":941,"2070003":0},"942":{"52424":943,"1050028":1171,"2070003":1411},"943":{"1050028":944,"2070003":0},"945":{"52424":946,"1050028":1172,"2070003":1412},"946":{"1050028":947,"2070003":0},"948":{"28042":952,"45756":982,"46237":979,"72345":955,"1050000":976,"1050002":949,"1050023":1424,"1050028":1417,"2070003":0},"949":{"52424":950,"1050028":1173,"2070003":1418},"950":{"1050028":951,"2070003":0},"952":{"52424":953,"1050028":1174,"2070003":1419},"953":{"1050028":954,"2070003":0},"955":{"52424":956,"1050028":1175,"2070003":1420},"956":{"1050028":957,"2070003":0},"958":{"52424":959,"1050025":1185,"1050026":1186,"1050027":1187,"1050028":1188,"2070003":1405},"959":{"1050028":960,"2070003":0},"961":{"52424":962,"1050025":1189,"1050026":1190,"1050027":1191,"1050028":1192,"2070003":1406},"962":{"1050028":963,"2070003":0},"964":{"52424":965,"1050025":1193,"1050026":1194,"1050027":1195,"1050028":1196,"2070003":1407},"965":{"1050028":966,"2070003":0},"967":{"52424":968,"1050025":1197,"1050026":1198,"1050027":1199,"1050028":1200,"2070003":1413},"968":{"1050028":969,"2070003":0},"970":{"52424":971,"1050025":1201,"1050026":1202,"1050027":1203,"1050028":1204,"2070003":1414},"971":{"1050028":972,"2070003":0},"973":{"52424":974,"1050025":1205,"1050026":1206,"1050027":1207,"1050028":1208,"2070003":1415},"974":{"1050028":975,"2070003":0},"976":{"52424":977,"1050025":1209,"1050026":1210,"1050027":1211,"1050028":1212,"2070003":1421},"977":{"1050028":978,"2070003":0},"979":{"52424":980,"1050025":1213,"1050026":1214,"1050027":1215,"1050028":1216,"2070003":1422},"980":{"1050028":981,"2070003":0},"982":{"52424":983,"1050025":1217,"1050026":1218,"1050027":1219,"1050028":1220,"2070003":1423},"983":{"1050028":984,"2070003":0},"985":{"52424":1221,"1050012":995,"1050025":986,"1050026":989,"1050027":992,"1050028":1365,"2070003":1479},"986":{"46":987,"1050028":1255,"2070003":1386},"987":{"1050028":988,"2070003":0},"989":{"46":990,"1050028":1256,"2070003":1387},"990":{"1050028":991,"2070003":0},"992":{"46":993,"1050028":1257,"2070003":1388},"993":{"1050028":994,"2070003":0},"995":{"46":996,"1050028":1258,"2070003":1389},"996":{"1050028":997,"2070003":0},"998":{"52424":1223,"1050012":1008,"1050025":999,"1050026":1002,"1050027":1005,"1050028":1369,"2070003":0},"999":{"46":1000,"1050028":1259,"2070003":1390},"1000":{"1050028":1001,"2070003":0},"1002":{"46":1003,"1050028":1260,"2070003":1391},"1003":{"1050028":1004,"2070003":0},"1005":{"46":1006,"1050028":1261,"2070003":1392},"1006":{"1050028":1007,"2070003":0},"1008":{"46":1009,"1050028":1262,"2070003":1393},"1009":{"1050028":1010,"2070003":0},"1011":{"52424":1225,"1050012":1021,"1050025":1012,"1050026":1015,"1050027":1018,"1050028":1373,"2070003":0},"1012":{"46":1013,"1050028":1263,"2070003":1394},"1013":{"1050028":1014,"2070003":0},"1015":{"46":1016,"1050028":1264,"2070003":1395},"1016":{"1050028":1017,"2070003":0},"1018":{"46":1019,"1050028":1265,"2070003":1396},"1019":{"1050028":1020,"2070003":0},"1021":{"46":1022,"1050028":1266,"2070003":1397},"1022":{"1050028":1023,"2070003":0},"1024":{"52424":1025,"2070003":1478},"1025":{"45756":1030,"46237":1028,"1050000":1026,"2070003":0},"1026":{"1050028":1027,"2070003":0},"1028":{"1050028":1029,"2070003":0},"1030":{"1050028":1031,"2070003":0},"1032":{"52424":1033,"2070003":0},"1033":{"45756":1038,"46237":1036,"1050000":1034,"2070003":0},"1034":{"1050028":1035,"2070003":0},"1036":{"1050028":1037,"2070003":0},"1038":{"1050028":1039,"2070003":0},"1040":{"52424":1041,"2070003":0},"1041":{"45756":1046,"46237":1044,"1050000":1042,"2070003":0},"1042":{"1050028":1043,"2070003":0},"1044":{"1050028":1045,"2070003":0},"1046":{"1050028":1047,"2070003":0},"1048":{"52424":1049,"2070003":0},"1049":{"77052":1050,"1050028":1267,"2070003":0},"1050":{"1050028":1051,"2070003":0},"1052":{"52424":1053,"2070003":0},"1053":{"77052":1054,"1050028":1268,"2070003":0},"1054":{"1050028":1055,"2070003":0},"1056":{"52424":1057,"2070003":0},"1057":{"77052":1058,"1050028":1269,"2070003":0},"1058":{"1050028":1059,"2070003":0},"1060":{"52424":1061,"2070003":0},"1061":{"77052":1062,"1050028":1270,"2070003":0},"1062":{"1050028":1063,"2070003":0},"1064":{"52424":1065,"2070003":0},"1065":{"77052":1066,"1050028":1271,"2070003":0},"1066":{"1050028":1067,"2070003":0},"1068":{"19537":1272,"1050014":1069,"1050015":1075,"1050016":1280,"1050017":1281,"1050018":1282,"1050019":1283,"1050021":1274,"1050022":1276,"2070003":1486},"1069":{"1050015":1070,"1050016":1071,"1050017":1072,"1050018":1073,"1050019":1074,"2070003":1278},"1075":{"1050015":1076,"1050016":1077,"1050017":1078,"1050018":1079,"1050019":1080,"2070003":1279},"1081":{"1050014":1082,"1050015":1088,"1050016":1286,"1050017":1287,"1050018":1288,"1050019":1289,"1050025":1134,"1050026":1140,"1050027":1146,"1050028":1152,"1050029":1158,"2070003":0},"1082":{"1050015":1083,"1050016":1084,"1050017":1085,"1050018":1086,"1050019":1087,"2070003":1284},"1088":{"1050015":1089,"1050016":1090,"1050017":1091,"1050018":1092,"1050019":1093,"2070003":1285},"1094":{"1050006":1095,"1050007":1098,"2070003":0},"1096":{"1050006":1097,"1050007":1099,"2070003":0},"1102":{"1050006":1106,"1050007":1105,"1050008":1103,"1050014":1104,"2070003":0},"1134":{"1050015":1135,"1050016":1136,"1050017":1137,"1050018":1138,"1050019":1139,"2070003":1351},"1140":{"1050015":1141,"1050016":1142,"1050017":1143,"1050018":1144,"1050019":1145,"2070003":1352},"1146":{"1050015":1147,"1050016":1148,"1050017":1149,"1050018":1150,"1050019":1151,"2070003":1353},"1152":{"46":1165,"49":1164,"197":1166,"1050015":1153,"1050016":1154,"1050017":1155,"1050018":1156,"1050019":1157,"2070003":1354},"1158":{"1050015":1159,"1050016":1160,"1050017":1161,"1050018":1162,"1050019":1163,"2070003":1355},"1176":{"52424":1177,"1050028":1359,"2070003":1480},"1177":{"1050028":1178,"2070003":0},"1179":{"52424":1180,"1050028":1360,"2070003":0},"1180":{"1050028":1181,"2070003":0},"1182":{"52424":1183,"1050028":1361,"2070003":0},"1183":{"1050028":1184,"2070003":0},"1221":{"1050028":1222,"2070003":0},"1223":{"1050028":1224,"2070003":0},"1225":{"1050028":1226,"2070003":0},"1227":{"45756":1232,"46237":1230,"1050000":1228,"1050015":1324,"1050016":1325,"1050017":1326,"1050018":1327,"1050019":1328,"2070003":1472},"1228":{"1050028":1229,"2070003":1374},"1230":{"1050028":1231,"2070003":1375},"1232":{"1050028":1233,"2070003":1376},"1234":{"45756":1239,"46237":1237,"1050000":1235,"1050015":1329,"1050016":1330,"1050017":1331,"1050018":1332,"1050019":1333,"2070003":1473},"1235":{"1050028":1236,"2070003":1377},"1237":{"1050028":1238,"2070003":1378},"1239":{"1050028":1240,"2070003":1379},"1241":{"45756":1246,"46237":1244,"1050000":1242,"1050015":1334,"1050016":1335,"1050017":1336,"1050018":1337,"1050019":1338,"2070003":1474},"1242":{"1050028":1243,"2070003":1380},"1244":{"1050028":1245,"2070003":1381},"1246":{"1050028":1247,"2070003":1382},"1248":{"45756":1253,"46237":1251,"1050000":1249,"2070003":1471},"1249":{"1050028":1250,"2070003":1383},"1251":{"1050028":1252,"2070003":1384},"1253":{"1050028":1254,"2070003":1385},"1272":{"1978":1273,"2070003":1398},"1274":{"1978":1275,"2070003":1399},"1276":{"1978":1277,"2070003":1400},"1295":{"1050015":1296,"1050016":1297,"1050017":1298,"1050018":1299,"1050019":1300,"2070003":1461},"1339":{"46":1357,"49":1356,"197":1358,"1050015":1340,"1050016":1341,"1050017":1342,"1050018":1343,"1050019":1344,"2070003":1483},"1345":{"1050015":1346,"1050016":1347,"1050017":1348,"1050018":1349,"1050019":1350,"2070003":1476},"1425":{"45756":1431,"46237":1430,"66681":1427,"74596":1428,"1050000":1429,"1050001":1426,"1050002":1432,"2070003":0},"1433":{"36445":1434,"36450":1435,"2070003":1459},"1436":{"23226":1437,"23229":1438,"2070003":0},"1439":{"23226":1440,"23229":1441,"2070003":0},"1442":{"23226":1443,"23229":1444,"2070003":0},"1445":{"23226":1446,"23229":1447,"2070003":0},"1448":{"58873":1449,"58879":1450,"2070003":0},"1451":{"58873":1452,"58879":1453,"2070003":0},"1454":{"73112":1455,"2070003":0},"1456":{"65972":1457,"65973":1458,"2070003":0}},{"8":1050037,"9":1050037,"11":1050037,"12":1050037,"15":1050037,"16":1050037,"18":1050037,"19":1050037,"23":1050037,"24":1050037,"26":1050037,"27":1050037,"30":1050037,"31":1050037,"33":1050037,"34":1050037,"42":1050037,"43":1050037,"45":1050037,"46":1050037,"49":1050037,"50":1050037,"52":1050037,"53":1050037,"57":1050037,"58":1050037,"60":1050037,"61":1050037,"64":1050037,"65":1050037,"67":1050037,"68":1050037,"76":1050037,"77":1050037,"79":1050037,"80":1050037,"83":1050037,"84":1050037,"86":1050037,"87":1050037,"91":1050037,"92":1050037,"94":1050037,"95":1050037,"98":1050037,"99":1050037,"101":1050037,"102":1050037,"110":1050037,"111":1050037,"113":1050037,"114":1050037,"117":1050037,"118":1050037,"120":1050037,"121":1050037,"125":1050037,"126":1050037,"128":1050037,"129":1050037,"132":1050037,"133":1050037,"135":1050037,"136":1050037,"144":1050037,"145":1050037,"147":1050037,"148":1050037,"151":1050037,"152":1050037,"154":1050037,"155":1050037,"159":1050037,"160":1050037,"162":1050037,"163":1050037,"166":1050037,"167":1050037,"169":1050037,"170":1050037,"176":1050037,"181":1050037,"186":1050037,"187":1050037,"189":1050037,"190":1050037,"193":1050037,"194":1050037,"196":1050037,"197":1050037,"201":1050037,"202":1050037,"204":1050037,"205":1050037,"208":1050037,"209":1050037,"211":1050037,"212":1050037,"215":1050037,"216":1050037,"218":1050037,"219":1050037,"222":1050037,"223":1050037,"225":1050037,"226":1050037,"227":1050037,"228":1050037,"229":1050037,"230":1050037,"231":1050037,"232":1050037,"233":1050037,"234":1050037,"235":1050037,"236":1050037,"237":1050037,"238":1050037,"239":1050037,"240":1050037,"241":1050037,"242":1050037,"247":1050037,"248":1050037,"250":1050037,"251":1050037,"254":1050037,"255":1050037,"257":1050037,"258":1050037,"262":1050037,"263":1050037,"265":1050037,"266":1050037,"269":1050037,"270":1050037,"272":1050037,"273":1050037,"276":1050037,"277":1050037,"279":1050037,"280":1050037,"283":1050037,"284":1050037,"286":1050037,"287":1050037,"288":1050037,"289":1050037,"290":1050037,"291":1050037,"292":1050037,"293":1050037,"294":1050037,"295":1050037,"296":1050037,"297":1050037,"298":1050037,"299":1050037,"300":1050037,"301":1050037,"302":1050037,"303":1050037,"308":1050037,"309":1050037,"311":1050037,"312":1050037,"315":1050037,"316":1050037,"318":1050037,"319":1050037,"323":1050037,"324":1050037,"326":1050037,"327":1050037,"330":1050037,"331":1050037,"333":1050037,"334":1050037,"337":1050037,"338":1050037,"340":1050037,"341":1050037,"344":1050037,"345":1050037,"347":1050037,"348":1050037,"349":1050037,"350":1050037,"351":1050037,"352":1050037,"353":1050037,"354":1050037,"355":1050037,"356":1050037,"357":1050037,"358":1050037,"359":1050037,"360":1050037,"361":1050037,"362":1050037,"363":1050037,"364":1050037,"369":1050037,"370":1050037,"372":1050037,"373":1050037,"376":1050037,"377":1050037,"379":1050037,"380":1050037,"384":1050037,"385":1050037,"387":1050037,"388":1050037,"391":1050037,"392":1050037,"394":1050037,"395":1050037,"398":1050037,"399":1050037,"401":1050037,"402":1050037,"405":1050037,"406":1050037,"408":1050037,"409":1050037,"410":1050037,"411":1050037,"412":1050037,"413":1050037,"414":1050037,"415":1050037,"416":1050037,"417":1050037,"418":1050037,"419":1050037,"420":1050037,"421":1050037,"422":1050037,"423":1050037,"424":1050037,"425":1050037,"430":1050037,"431":1050037,"433":1050037,"434":1050037,"437":1050037,"438":1050037,"440":1050037,"441":1050037,"445":1050037,"446":1050037,"448":1050037,"449":1050037,"452":1050037,"453":1050037,"455":1050037,"456":1050037,"459":1050037,"460":1050037,"462":1050037,"463":1050037,"466":1050037,"467":1050037,"469":1050037,"470":1050037,"471":1050037,"472":1050037,"473":1050037,"474":1050037,"475":1050037,"476":1050037,"477":1050037,"478":1050037,"479":1050037,"480":1050037,"481":1050037,"482":1050037,"483":1050037,"484":1050037,"485":1050037,"486":1050037,"491":1050037,"496":1050037,"499":1050037,"500":1050037,"503":1050037,"504":1050037,"505":1050037,"506":1050037,"507":1050037,"508":1050037,"509":1050037,"510":1050037,"511":1050037,"512":1050037,"513":1050037,"514":1050037,"515":1050037,"516":1050037,"517":1050037,"518":1050037,"519":1050037,"520":1050037,"521":1050037,"522":1050037,"523":1050037,"524":1050037,"525":1050037,"526":1050037,"527":1050037,"528":1050037,"529":1050037,"530":1050037,"531":1050037,"532":1050037,"533":1050037,"534":1050037,"535":1050037,"536":1050037,"537":1050037,"538":1050037,"539":1050037,"540":1050037,"541":1050037,"542":1050037,"543":1050037,"544":1050037,"547":1050037,"548":1050037,"550":1050037,"551":1050037,"554":1050037,"555":1050037,"557":1050037,"558":1050037,"559":1050037,"560":1050037,"561":1050037,"562":1050037,"563":1050037,"564":1050037,"565":1050037,"566":1050037,"567":1050037,"568":1050037,"569":1050037,"570":1050037,"571":1050037,"572":1050037,"573":1050037,"574":1050037,"575":1050037,"576":1050037,"577":1050037,"578":1050037,"579":1050037,"580":1050037,"581":1050037,"582":1050037,"583":1050037,"584":1050037,"585":1050037,"586":1050037,"589":1050037,"590":1050037,"592":1050037,"593":1050037,"596":1050037,"597":1050037,"599":1050037,"600":1050037,"601":1050037,"602":1050037,"603":1050037,"604":1050037,"605":1050037,"606":1050037,"607":1050037,"608":1050037,"609":1050037,"610":1050037,"611":1050037,"612":1050037,"613":1050037,"614":1050037,"615":1050037,"616":1050037,"617":1050037,"618":1050037,"619":1050037,"620":1050037,"621":1050037,"622":1050037,"623":1050037,"624":1050037,"625":1050037,"626":1050037,"627":1050037,"628":1050037,"631":1050037,"632":1050037,"634":1050037,"635":1050037,"638":1050037,"639":1050037,"641":1050037,"642":1050037,"643":1050037,"644":1050037,"645":1050037,"646":1050037,"647":1050037,"648":1050037,"649":1050037,"650":1050037,"651":1050037,"652":1050037,"653":1050037,"654":1050037,"655":1050037,"656":1050037,"657":1050037,"658":1050037,"659":1050037,"660":1050037,"661":1050037,"662":1050037,"663":1050037,"664":1050037,"665":1050037,"666":1050037,"667":1050037,"668":1050037,"669":1050037,"670":1050037,"673":1050037,"674":1050037,"676":1050037,"677":1050037,"680":1050037,"681":1050037,"683":1050037,"684":1050037,"685":1050037,"686":1050037,"687":1050037,"688":1050037,"689":1050037,"690":1050037,"691":1050037,"692":1050037,"693":1050037,"694":1050037,"695":1050037,"696":1050037,"697":1050037,"698":1050037,"699":1050037,"700":1050037,"701":1050037,"702":1050037,"703":1050037,"704":1050037,"705":1050037,"706":1050037,"707":1050037,"708":1050037,"709":1050037,"710":1050037,"711":1050037,"712":1050037,"715":1050037,"716":1050037,"718":1050037,"719":1050037,"722":1050037,"723":1050037,"725":1050037,"726":1050037,"727":1050037,"728":1050037,"729":1050037,"730":1050037,"731":1050037,"732":1050037,"733":1050037,"734":1050037,"735":1050037,"736":1050037,"737":1050037,"738":1050037,"739":1050037,"740":1050037,"741":1050037,"742":1050037,"743":1050037,"744":1050037,"745":1050037,"746":1050037,"747":1050037,"748":1050037,"749":1050037,"750":1050037,"751":1050037,"752":1050037,"753":1050037,"754":1050037,"756":1050037,"758":1050037,"761":1050037,"762":1050037,"765":1050037,"766":1050037,"767":1050037,"768":1050037,"769":1050037,"770":1050037,"771":1050037,"772":1050037,"773":1050037,"774":1050037,"775":1050037,"776":1050037,"777":1050037,"778":1050037,"779":1050037,"780":1050037,"781":1050037,"782":1050037,"783":1050037,"784":1050037,"785":1050037,"786":1050037,"787":1050037,"788":1050037,"789":1050037,"790":1050037,"791":1050037,"792":1050037,"793":1050037,"794":1050037,"795":1050037,"796":1050037,"797":1050037,"798":1050037,"799":1050037,"800":1050037,"801":1050037,"802":1050037,"803":1050037,"804":1050037,"805":1050037,"806":1050037,"807":1050037,"808":1050037,"809":1050037,"810":1050037,"811":1050037,"812":1050037,"813":1050037,"814":1050037,"815":1050037,"816":1050037,"817":1050037,"818":1050037,"819":1050037,"820":1050037,"821":1050037,"822":1050037,"823":1050037,"824":1050037,"825":1050037,"826":1050037,"827":1050037,"828":1050037,"829":1050037,"830":1050037,"831":1050037,"832":1050037,"833":1050037,"834":1050037,"835":1050037,"836":1050037,"837":1050037,"838":1050037,"839":1050037,"840":1050037,"841":1050037,"842":1050037,"843":1050037,"844":1050037,"845":1050037,"846":1050037,"847":1050037,"848":1050037,"849":1050037,"850":1050037,"851":1050037,"852":1050037,"853":1050037,"854":1050037,"855":1050037,"856":1050037,"857":1050037,"858":1050037,"859":1050037,"860":1050037,"861":1050037,"862":1050037,"863":1050037,"864":1050037,"865":1050037,"866":1050037,"867":1050037,"868":1050037,"869":1050037,"870":1050037,"871":1050037,"872":1050037,"873":1050037,"874":1050037,"875":1050037,"876":1050037,"877":1050037,"878":1050037,"881":1050037,"884":1050037,"886":1050037,"888":1050037,"889":1050037,"890":1050037,"891":1050037,"892":1050037,"893":1050037,"894":1050037,"895":1050037,"896":1050037,"897":1050037,"898":1050037,"899":1050037,"900":1050037,"901":1050037,"902":1050037,"903":1050037,"904":1050037,"905":1050037,"906":1050037,"907":1050037,"908":1050037,"909":1050037,"910":1050037,"911":1050037,"912":1050037,"913":1050037,"914":1050037,"915":1050037,"916":1050037,"917":1050037,"918":1050037,"919":1050037,"920":1050037,"921":1050037,"922":1050037,"923":1050037,"924":1050037,"925":1050037,"926":1050037,"927":1050037,"931":1050039,"934":1050039,"937":1050039,"941":1050039,"944":1050039,"947":1050039,"951":1050039,"954":1050039,"957":1050039,"960":1050039,"963":1050039,"966":1050039,"969":1050039,"972":1050039,"975":1050039,"978":1050039,"981":1050039,"984":1050039,"988":1050039,"991":1050039,"994":1050039,"997":1050039,"1001":1050039,"1004":1050039,"1007":1050039,"1010":1050039,"1014":1050039,"1017":1050039,"1020":1050039,"1023":1050039,"1027":1050039,"1029":1050039,"1031":1050039,"1035":1050039,"1037":1050039,"1039":1050039,"1043":1050039,"1045":1050039,"1047":1050039,"1051":1050039,"1055":1050039,"1059":1050039,"1063":1050039,"1067":1050039,"1070":1050037,"1071":1050037,"1072":1050037,"1073":1050037,"1074":1050037,"1076":1050037,"1077":1050037,"1078":1050037,"1079":1050037,"1080":1050037,"1083":1050037,"1084":1050037,"1085":1050037,"1086":1050037,"1087":1050037,"1089":1050037,"1090":1050037,"1091":1050037,"1092":1050037,"1093":1050037,"1095":1050037,"1097":1050037,"1098":1050037,"1099":1050037,"1100":1050037,"1101":1050037,"1103":1050037,"1104":1050037,"1105":1050037,"1106":1050037,"1107":1050037,"1108":1050037,"1109":1050037,"1110":1050037,"1111":1050037,"1112":1050037,"1113":1050037,"1114":1050037,"1115":1050037,"1116":1050037,"1117":1050037,"1118":1050037,"1119":1050037,"1120":1050037,"1121":1050037,"1122":1050037,"1123":1050037,"1124":1050037,"1125":1050037,"1126":1050037,"1127":1050037,"1128":1050037,"1129":1050037,"1130":1050037,"1131":1050037,"1132":1050037,"1133":1050037,"1135":1050037,"1136":1050037,"1137":1050037,"1138":1050037,"1139":1050037,"1141":1050037,"1142":1050037,"1143":1050037,"1144":1050037,"1145":1050037,"1147":1050037,"1148":1050037,"1149":1050037,"1150":1050037,"1151":1050037,"1153":1050037,"1154":1050037,"1155":1050037,"1156":1050037,"1157":1050037,"1159":1050037,"1160":1050037,"1161":1050037,"1162":1050037,"1163":1050037,"1164":1050039,"1165":1050039,"1166":1050039,"1167":1050039,"1168":1050039,"1169":1050039,"1170":1050039,"1171":1050039,"1172":1050039,"1173":1050039,"1174":1050039,"1175":1050039,"1178":1050039,"1181":1050039,"1184":1050039,"1185":1050039,"1186":1050039,"1187":1050039,"1188":1050039,"1189":1050039,"1190":1050039,"1191":1050039,"1192":1050039,"1193":1050039,"1194":1050039,"1195":1050039,"1196":1050039,"1197":1050039,"1198":1050039,"1199":1050039,"1200":1050039,"1201":1050039,"1202":1050039,"1203":1050039,"1204":1050039,"1205":1050039,"1206":1050039,"1207":1050039,"1208":1050039,"1209":1050039,"1210":1050039,"1211":1050039,"1212":1050039,"1213":1050039,"1214":1050039,"1215":1050039,"1216":1050039,"1217":1050039,"1218":1050039,"1219":1050039,"1220":1050039,"1222":1050039,"1224":1050039,"1226":1050039,"1229":1050039,"1231":1050039,"1233":1050039,"1236":1050039,"1238":1050039,"1240":1050039,"1243":1050039,"1245":1050039,"1247":1050039,"1250":1050039,"1252":1050039,"1254":1050039,"1255":1050039,"1256":1050039,"1257":1050039,"1258":1050039,"1259":1050039,"1260":1050039,"1261":1050039,"1262":1050039,"1263":1050039,"1264":1050039,"1265":1050039,"1266":1050039,"1267":1050039,"1268":1050039,"1269":1050039,"1270":1050039,"1271":1050039,"1273":1050039,"1275":1050039,"1277":1050039,"1278":1050037,"1279":1050037,"1280":1050037,"1281":1050037,"1282":1050037,"1283":1050037,"1284":1050037,"1285":1050037,"1286":1050037,"1287":1050037,"1288":1050037,"1289":1050037,"1290":1050037,"1291":1050037,"1292":1050037,"1293":1050037,"1294":1050037,"1296":1050037,"1297":1050037,"1298":1050037,"1299":1050037,"1300":1050037,"1301":1050037,"1302":1050037,"1303":1050037,"1304":1050037,"1305":1050037,"1306":1050037,"1307":1050037,"1308":1050037,"1309":1050037,"1310":1050037,"1311":1050037,"1312":1050037,"1313":1050037,"1314":1050037,"1315":1050037,"1316":1050037,"1317":1050037,"1318":1050037,"1319":1050037,"1320":1050037,"1321":1050037,"1322":1050037,"1323":1050037,"1324":1050037,"1325":1050037,"1326":1050037,"1327":1050037,"1328":1050037,"1329":1050037,"1330":1050037,"1331":1050037,"1332":1050037,"1333":1050037,"1334":1050037,"1335":1050037,"1336":1050037,"1337":1050037,"1338":1050037,"1340":1050037,"1341":1050037,"1342":1050037,"1343":1050037,"1344":1050037,"1346":1050037,"1347":1050037,"1348":1050037,"1349":1050037,"1350":1050037,"1351":1050037,"1352":1050037,"1353":1050037,"1354":1050037,"1355":1050037,"1356":1050039,"1357":1050039,"1358":1050039,"1359":1050039,"1360":1050039,"1361":1050039,"1362":1050039,"1363":1050039,"1364":1050039,"1365":1050039,"1366":1050039,"1367":1050039,"1368":1050039,"1369":1050039,"1370":1050039,"1371":1050039,"1372":1050039,"1373":1050039,"1374":1050039,"1375":1050039,"1376":1050039,"1377":1050039,"1378":1050039,"1379":1050039,"1380":1050039,"1381":1050039,"1382":1050039,"1383":1050039,"1384":1050039,"1385":1050039,"1386":1050039,"1387":1050039,"1388":1050039,"1389":1050039,"1390":1050039,"1391":1050039,"1392":1050039,"1393":1050039,"1394":1050039,"1395":1050039,"1396":1050039,"1397":1050039,"1398":1050040,"1399":1050040,"1400":1050040,"1401":1050039,"1402":1050039,"1403":1050039,"1404":1050039,"1405":1050039,"1406":1050039,"1407":1050039,"1408":1050039,"1409":1050039,"1410":1050039,"1411":1050039,"1412":1050039,"1413":1050039,"1414":1050039,"1415":1050039,"1416":1050039,"1417":1050039,"1418":1050039,"1419":1050039,"1420":1050039,"1421":1050039,"1422":1050039,"1423":1050039,"1424":1050039,"1426":1050039,"1427":1050039,"1428":1050039,"1429":1050039,"1430":1050039,"1431":1050039,"1432":1050039,"1434":1050041,"1435":1050041,"1437":1050042,"1438":1050042,"1440":1050042,"1441":1050042,"1443":1050042,"1444":1050042,"1446":1050042,"1447":1050042,"1449":1050042,"1450":1050042,"1452":1050042,"1453":1050042,"1455":1050042,"1457":1050042,"1458":1050042,"1459":1050037,"1460":1050037,"1461":1050037,"1462":1050037,"1463":1050037,"1464":1050037,"1465":1050037,"1466":1050037,"1467":1050037,"1468":1050037,"1469":1050037,"1470":1050037,"1471":1050038,"1472":1050037,"1473":1050037,"1474":1050037,"1475":1050037,"1476":1050037,"1477":1050039,"1478":1050039,"1479":1050039,"1480":1050039,"1481":1050042,"1482":1050042,"1483":1050043,"1484":1050044,"1485":1050045,"1486":1050046,"1487":1050039,"1488":1050040,"1489":1050037,"1490":1050038,"1491":1050041,"1492":1050047,"1493":1050048,"1494":1050049,"1495":1050050,"1496":1050051,"1497":1050052},{"1164":[0,1],"1165":[0,1],"1166":[0,1],"1356":[0,1],"1357":[0,1],"1358":[0,1]},{}]', '[100,1535,{"0":{"7":1426,"221":1498,"5914":1502,"7651":976,"8056":906,"9518":1344,"11015":1506,"14150":1346,"19537":1520,"23226":1454,"23229":1474,"25521":1012,"26892":1462,"26901":1482,"30855":885,"31040":1137,"36445":1523,"36450":1524,"43343":755,"47341":994,"47398":1003,"47623":1528,"47624":1529,"47815":1525,"47818":1526,"48865":800,"53668":954,"58873":1458,"58879":1478,"65701":1470,"65702":1486,"67763":1527,"69775":1298,"72836":985,"77600":915,"77819":1304,"80790":932,"82584":1301,"82994":1494,"83009":1490,"86818":1466,"87216":1442,"87248":1450,"87249":1446,"87250":1438,"87251":1434,"87252":1430,"1050037":1,"1050038":1514,"1050039":1056,"1050040":1335,"1050041":1275,"1050042":1510,"1050043":88,"1050044":1521,"1050045":1522,"1050046":1173,"1050047":1530,"1050048":1531,"1050049":1532,"1050050":1533,"1050051":1534,"1050052":1535,"2070003":0},"1":{"7":1384,"8":1358,"47":2,"221":1401,"5914":1402,"11015":1403,"19537":679,"23226":1390,"23229":1395,"26892":1392,"26901":1397,"36445":175,"36450":196,"47623":1232,"47624":1237,"47815":1217,"47818":1222,"55521":1361,"55524":1362,"55994":1284,"56008":1359,"56013":1360,"58873":1391,"58879":1396,"65701":1394,"65702":1398,"67763":1227,"82994":1400,"83009":1399,"86818":1393,"87216":1388,"87219":45,"87249":1389,"87250":1387,"87251":1386,"87252":1385,"1050042":1404,"1050044":685,"1050045":691,"2070003":1515},"2":{"36445":3,"36450":24,"47623":1078,"47624":1079,"47815":1075,"47818":1076,"67763":1077,"2070003":0},"3":{"46":4,"3361":609,"1050037":217,"2070003":1073},"4":{"1050037":5,"2070003":0},"5":{"47815":6,"47818":15,"2070003":0},"6":{"46":7,"3361":11,"1050037":236,"2070003":607},"7":{"1050037":8,"2070003":0},"8":{"67753":9,"67763":10,"2070003":0},"11":{"1050037":12,"2070003":0},"12":{"67753":13,"67763":14,"2070003":0},"15":{"46":16,"3361":20,"1050037":239,"2070003":608},"16":{"1050037":17,"2070003":0},"17":{"67753":18,"67763":19,"2070003":0},"20":{"1050037":21,"2070003":0},"21":{"67753":22,"67763":23,"2070003":0},"24":{"46":25,"3361":615,"1050037":242,"2070003":1074},"25":{"1050037":26,"2070003":0},"26":{"47815":27,"47818":36,"2070003":0},"27":{"46":28,"3361":32,"1050037":261,"2070003":613},"28":{"1050037":29,"2070003":0},"29":{"67753":30,"67763":31,"2070003":0},"32":{"1050037":33,"2070003":0},"33":{"67753":34,"67763":35,"2070003":0},"36":{"46":37,"3361":41,"1050037":264,"2070003":614},"37":{"1050037":38,"2070003":0},"38":{"67753":39,"67763":40,"2070003":0},"41":{"1050037":42,"2070003":0},"42":{"67753":43,"67763":44,"2070003":0},"45":{"36445":46,"36450":67,"47623":1085,"47624":1086,"47815":1082,"47818":1083,"67763":1084,"2070003":0},"46":{"46":47,"3361":621,"1050037":267,"2070003":1080},"47":{"1050037":48,"2070003":0},"48":{"47815":49,"47818":58,"2070003":0},"49":{"46":50,"3361":54,"1050037":286,"2070003":619},"50":{"1050037":51,"2070003":0},"51":{"67753":52,"67763":53,"2070003":0},"54":{"1050037":55,"2070003":0},"55":{"67753":56,"67763":57,"2070003":0},"58":{"46":59,"3361":63,"1050037":289,"2070003":620},"59":{"1050037":60,"2070003":0},"60":{"67753":61,"67763":62,"2070003":0},"63":{"1050037":64,"2070003":0},"64":{"67753":65,"67763":66,"2070003":0},"67":{"46":68,"3361":627,"1050037":292,"2070003":1081},"68":{"1050037":69,"2070003":0},"69":{"47815":70,"47818":79,"2070003":0},"70":{"46":71,"3361":75,"1050037":311,"2070003":625},"71":{"1050037":72,"2070003":0},"72":{"67753":73,"67763":74,"2070003":0},"75":{"1050037":76,"2070003":0},"76":{"67753":77,"67763":78,"2070003":0},"79":{"46":80,"3361":84,"1050037":314,"2070003":626},"80":{"1050037":81,"2070003":0},"81":{"67753":82,"67763":83,"2070003":0},"84":{"1050037":85,"2070003":0},"85":{"67753":86,"67763":87,"2070003":0},"88":{"7":1405,"47":89,"221":1422,"5914":1423,"9395":1339,"11015":1424,"16025":1342,"16196":1341,"19537":697,"23226":1411,"23229":1416,"26892":1413,"26901":1418,"36445":317,"36450":338,"38371":1340,"47623":1265,"47624":1270,"47815":1250,"47818":1255,"58873":1412,"58879":1417,"65701":1415,"65702":1419,"67763":1260,"69280":1343,"78040":1060,"82994":1421,"83009":1420,"86818":1414,"87216":1409,"87219":132,"87249":1410,"87250":1408,"87251":1407,"87252":1406,"1050042":1425,"1050044":703,"1050045":709,"2070003":1516},"89":{"36445":90,"36450":111,"47623":1092,"47624":1093,"47815":1089,"47818":1090,"67763":1091,"1050039":1069,"1050043":1070,"2070003":0},"90":{"46":91,"3361":633,"1050037":359,"2070003":1087},"91":{"1050037":92,"2070003":0},"92":{"47815":93,"47818":102,"2070003":0},"93":{"46":94,"3361":98,"1050037":378,"2070003":631},"94":{"1050037":95,"2070003":0},"95":{"67753":96,"67763":97,"2070003":0},"98":{"1050037":99,"2070003":0},"99":{"67753":100,"67763":101,"2070003":0},"102":{"46":103,"3361":107,"1050037":381,"2070003":632},"103":{"1050037":104,"2070003":0},"104":{"67753":105,"67763":106,"2070003":0},"107":{"1050037":108,"2070003":0},"108":{"67753":109,"67763":110,"2070003":0},"111":{"46":112,"3361":639,"1050037":384,"2070003":1088},"112":{"1050037":113,"2070003":0},"113":{"47815":114,"47818":123,"2070003":0},"114":{"46":115,"3361":119,"1050037":403,"2070003":637},"115":{"1050037":116,"2070003":0},"116":{"67753":117,"67763":118,"2070003":0},"119":{"1050037":120,"2070003":0},"120":{"67753":121,"67763":122,"2070003":0},"123":{"46":124,"3361":128,"1050037":406,"2070003":638},"124":{"1050037":125,"2070003":0},"125":{"67753":126,"67763":127,"2070003":0},"128":{"1050037":129,"2070003":0},"129":{"67753":130,"67763":131,"2070003":0},"132":{"36445":133,"36450":154,"47623":1099,"47624":1100,"47815":1096,"47818":1097,"67763":1098,"1050039":1071,"1050043":1072,"2070003":0},"133":{"46":134,"3361":645,"1050037":409,"2070003":1094},"134":{"1050037":135,"2070003":0},"135":{"47815":136,"47818":145,"2070003":0},"136":{"46":137,"3361":141,"1050037":428,"2070003":643},"137":{"1050037":138,"2070003":0},"138":{"67753":139,"67763":140,"2070003":0},"141":{"1050037":142,"2070003":0},"142":{"67753":143,"67763":144,"2070003":0},"145":{"46":146,"3361":150,"1050037":431,"2070003":644},"146":{"1050037":147,"2070003":0},"147":{"67753":148,"67763":149,"2070003":0},"150":{"1050037":151,"2070003":0},"151":{"67753":152,"67763":153,"2070003":0},"154":{"46":155,"3361":651,"1050037":434,"2070003":1095},"155":{"1050037":156,"2070003":0},"156":{"47815":157,"47818":166,"2070003":0},"157":{"46":158,"3361":162,"1050037":453,"2070003":649},"158":{"1050037":159,"2070003":0},"159":{"67753":160,"67763":161,"2070003":0},"162":{"1050037":163,"2070003":0},"163":{"67753":164,"67763":165,"2070003":0},"166":{"46":167,"3361":171,"1050037":456,"2070003":650},"167":{"1050037":168,"2070003":0},"168":{"67753":169,"67763":170,"2070003":0},"171":{"1050037":172,"2070003":0},"172":{"67753":173,"67763":174,"2070003":0},"175":{"46":176,"1978":1211,"3361":717,"7620":1210,"24309":1212,"42769":1209,"1050037":459,"2070003":1321},"176":{"1050037":177,"2070003":0},"177":{"47815":178,"47818":187,"2070003":0},"178":{"46":179,"3361":183,"1050037":478,"2070003":715},"179":{"1050037":180,"2070003":0},"180":{"67753":181,"67763":182,"2070003":0},"183":{"1050037":184,"2070003":0},"184":{"67753":185,"67763":186,"2070003":0},"187":{"46":188,"3361":192,"1050037":481,"2070003":716},"188":{"1050037":189,"2070003":0},"189":{"67753":190,"67763":191,"2070003":0},"192":{"1050037":193,"2070003":0},"193":{"67753":194,"67763":195,"2070003":0},"196":{"46":197,"1978":1215,"3361":723,"7620":1214,"24309":1216,"42769":1213,"1050037":484,"2070003":1322},"197":{"1050037":198,"2070003":0},"198":{"47815":199,"47818":208,"2070003":0},"199":{"46":200,"3361":204,"1050037":503,"2070003":721},"200":{"1050037":201,"2070003":0},"201":{"67753":202,"67763":203,"2070003":0},"204":{"1050037":205,"2070003":0},"205":{"67753":206,"67763":207,"2070003":0},"208":{"46":209,"3361":213,"1050037":506,"2070003":722},"209":{"1050037":210,"2070003":0},"210":{"67753":211,"67763":212,"2070003":0},"213":{"1050037":214,"2070003":0},"214":{"67753":215,"67763":216,"2070003":0},"217":{"47815":218,"47818":227,"2070003":0},"218":{"46":219,"3361":223,"1050037":509,"2070003":727},"219":{"1050037":220,"2070003":0},"220":{"67753":221,"67763":222,"2070003":0},"223":{"1050037":224,"2070003":0},"224":{"67753":225,"67763":226,"2070003":0},"227":{"46":228,"3361":232,"1050037":512,"2070003":728},"228":{"1050037":229,"2070003":0},"229":{"67753":230,"67763":231,"2070003":0},"232":{"1050037":233,"2070003":0},"233":{"67753":234,"67763":235,"2070003":0},"236":{"67753":237,"67763":238,"2070003":0},"239":{"67753":240,"67763":241,"2070003":0},"242":{"47815":243,"47818":252,"2070003":0},"243":{"46":244,"3361":248,"1050037":515,"2070003":729},"244":{"1050037":245,"2070003":0},"245":{"67753":246,"67763":247,"2070003":0},"248":{"1050037":249,"2070003":0},"249":{"67753":250,"67763":251,"2070003":0},"252":{"46":253,"3361":257,"1050037":518,"2070003":730},"253":{"1050037":254,"2070003":0},"254":{"67753":255,"67763":256,"2070003":0},"257":{"1050037":258,"2070003":0},"258":{"67753":259,"67763":260,"2070003":0},"261":{"67753":262,"67763":263,"2070003":0},"264":{"67753":265,"67763":266,"2070003":0},"267":{"47815":268,"47818":277,"2070003":0},"268":{"46":269,"3361":273,"1050037":521,"2070003":731},"269":{"1050037":270,"2070003":0},"270":{"67753":271,"67763":272,"2070003":0},"273":{"1050037":274,"2070003":0},"274":{"67753":275,"67763":276,"2070003":0},"277":{"46":278,"3361":282,"1050037":524,"2070003":732},"278":{"1050037":279,"2070003":0},"279":{"67753":280,"67763":281,"2070003":0},"282":{"1050037":283,"2070003":0},"283":{"67753":284,"67763":285,"2070003":0},"286":{"67753":287,"67763":288,"2070003":0},"289":{"67753":290,"67763":291,"2070003":0},"292":{"47815":293,"47818":302,"2070003":0},"293":{"46":294,"3361":298,"1050037":527,"2070003":733},"294":{"1050037":295,"2070003":0},"295":{"67753":296,"67763":297,"2070003":0},"298":{"1050037":299,"2070003":0},"299":{"67753":300,"67763":301,"2070003":0},"302":{"46":303,"3361":307,"1050037":530,"2070003":734},"303":{"1050037":304,"2070003":0},"304":{"67753":305,"67763":306,"2070003":0},"307":{"1050037":308,"2070003":0},"308":{"67753":309,"67763":310,"2070003":0},"311":{"67753":312,"67763":313,"2070003":0},"314":{"67753":315,"67763":316,"2070003":0},"317":{"46":318,"1978":1244,"3361":737,"7620":1243,"24309":1245,"42769":1242,"1050037":533,"2070003":1328},"318":{"1050037":319,"2070003":0},"319":{"47815":320,"47818":329,"2070003":0},"320":{"46":321,"3361":325,"1050037":552,"2070003":735},"321":{"1050037":322,"2070003":0},"322":{"67753":323,"67763":324,"2070003":0},"325":{"1050037":326,"2070003":0},"326":{"67753":327,"67763":328,"2070003":0},"329":{"46":330,"3361":334,"1050037":555,"2070003":736},"330":{"1050037":331,"2070003":0},"331":{"67753":332,"67763":333,"2070003":0},"334":{"1050037":335,"2070003":0},"335":{"67753":336,"67763":337,"2070003":0},"338":{"46":339,"1978":1248,"3361":743,"7620":1247,"24309":1249,"42769":1246,"1050037":558,"2070003":1329},"339":{"1050037":340,"2070003":0},"340":{"47815":341,"47818":350,"2070003":0},"341":{"46":342,"3361":346,"1050037":577,"2070003":741},"342":{"1050037":343,"2070003":0},"343":{"67753":344,"67763":345,"2070003":0},"346":{"1050037":347,"2070003":0},"347":{"67753":348,"67763":349,"2070003":0},"350":{"46":351,"3361":355,"1050037":580,"2070003":742},"351":{"1050037":352,"2070003":0},"352":{"67753":353,"67763":354,"2070003":0},"355":{"1050037":356,"2070003":0},"356":{"67753":357,"67763":358,"2070003":0},"359":{"47815":360,"47818":369,"2070003":0},"360":{"46":361,"3361":365,"1050037":583,"2070003":747},"361":{"1050037":362,"2070003":0},"362":{"67753":363,"67763":364,"2070003":0},"365":{"1050037":366,"2070003":0},"366":{"67753":367,"67763":368,"2070003":0},"369":{"46":370,"3361":374,"1050037":586,"2070003":748},"370":{"1050037":371,"2070003":0},"371":{"67753":372,"67763":373,"2070003":0},"374":{"1050037":375,"2070003":0},"375":{"67753":376,"67763":377,"2070003":0},"378":{"67753":379,"67763":380,"2070003":0},"381":{"67753":382,"67763":383,"2070003":0},"384":{"47815":385,"47818":394,"2070003":0},"385":{"46":386,"3361":390,"1050037":589,"2070003":749},"386":{"1050037":387,"2070003":0},"387":{"67753":388,"67763":389,"2070003":0},"390":{"1050037":391,"2070003":0},"391":{"67753":392,"67763":393,"2070003":0},"394":{"46":395,"3361":399,"1050037":592,"2070003":750},"395":{"1050037":396,"2070003":0},"396":{"67753":397,"67763":398,"2070003":0},"399":{"1050037":400,"2070003":0},"400":{"67753":401,"67763":402,"2070003":0},"403":{"67753":404,"67763":405,"2070003":0},"406":{"67753":407,"67763":408,"2070003":0},"409":{"47815":410,"47818":419,"2070003":0},"410":{"46":411,"3361":415,"1050037":595,"2070003":751},"411":{"1050037":412,"2070003":0},"412":{"67753":413,"67763":414,"2070003":0},"415":{"1050037":416,"2070003":0},"416":{"67753":417,"67763":418,"2070003":0},"419":{"46":420,"3361":424,"1050037":598,"2070003":752},"420":{"1050037":421,"2070003":0},"421":{"67753":422,"67763":423,"2070003":0},"424":{"1050037":425,"2070003":0},"425":{"67753":426,"67763":427,"2070003":0},"428":{"67753":429,"67763":430,"2070003":0},"431":{"67753":432,"67763":433,"2070003":0},"434":{"47815":435,"47818":444,"2070003":0},"435":{"46":436,"3361":440,"1050037":601,"2070003":753},"436":{"1050037":437,"2070003":0},"437":{"67753":438,"67763":439,"2070003":0},"440":{"1050037":441,"2070003":0},"441":{"67753":442,"67763":443,"2070003":0},"444":{"46":445,"3361":449,"1050037":604,"2070003":754},"445":{"1050037":446,"2070003":0},"446":{"67753":447,"67763":448,"2070003":0},"449":{"1050037":450,"2070003":0},"450":{"67753":451,"67763":452,"2070003":0},"453":{"67753":454,"67763":455,"2070003":0},"456":{"67753":457,"67763":458,"2070003":0},"459":{"47815":460,"47818":469,"2070003":0},"460":{"46":461,"3361":465,"1050037":655,"2070003":924},"461":{"1050037":462,"2070003":0},"462":{"67753":463,"67763":464,"2070003":0},"465":{"1050037":466,"2070003":0},"466":{"67753":467,"67763":468,"2070003":0},"469":{"46":470,"3361":474,"1050037":658,"2070003":925},"470":{"1050037":471,"2070003":0},"471":{"67753":472,"67763":473,"2070003":0},"474":{"1050037":475,"2070003":0},"475":{"67753":476,"67763":477,"2070003":0},"478":{"67753":479,"67763":480,"2070003":0},"481":{"67753":482,"67763":483,"2070003":0},"484":{"47815":485,"47818":494,"2070003":0},"485":{"46":486,"3361":490,"1050037":661,"2070003":926},"486":{"1050037":487,"2070003":0},"487":{"67753":488,"67763":489,"2070003":0},"490":{"1050037":491,"2070003":0},"491":{"67753":492,"67763":493,"2070003":0},"494":{"46":495,"3361":499,"1050037":664,"2070003":927},"495":{"1050037":496,"2070003":0},"496":{"67753":497,"67763":498,"2070003":0},"499":{"1050037":500,"2070003":0},"500":{"67753":501,"67763":502,"2070003":0},"503":{"67753":504,"67763":505,"2070003":0},"506":{"67753":507,"67763":508,"2070003":0},"509":{"67753":510,"67763":511,"2070003":0},"512":{"67753":513,"67763":514,"2070003":0},"515":{"67753":516,"67763":517,"2070003":0},"518":{"67753":519,"67763":520,"2070003":0},"521":{"67753":522,"67763":523,"2070003":0},"524":{"67753":525,"67763":526,"2070003":0},"527":{"67753":528,"67763":529,"2070003":0},"530":{"67753":531,"67763":532,"2070003":0},"533":{"47815":534,"47818":543,"2070003":0},"534":{"46":535,"3361":539,"1050037":667,"2070003":928},"535":{"1050037":536,"2070003":0},"536":{"67753":537,"67763":538,"2070003":0},"539":{"1050037":540,"2070003":0},"540":{"67753":541,"67763":542,"2070003":0},"543":{"46":544,"3361":548,"1050037":670,"2070003":929},"544":{"1050037":545,"2070003":0},"545":{"67753":546,"67763":547,"2070003":0},"548":{"1050037":549,"2070003":0},"549":{"67753":550,"67763":551,"2070003":0},"552":{"67753":553,"67763":554,"2070003":0},"555":{"67753":556,"67763":557,"2070003":0},"558":{"47815":559,"47818":568,"2070003":0},"559":{"46":560,"3361":564,"1050037":673,"2070003":930},"560":{"1050037":561,"2070003":0},"561":{"67753":562,"67763":563,"2070003":0},"564":{"1050037":565,"2070003":0},"565":{"67753":566,"67763":567,"2070003":0},"568":{"46":569,"3361":573,"1050037":676,"2070003":931},"569":{"1050037":570,"2070003":0},"570":{"67753":571,"67763":572,"2070003":0},"573":{"1050037":574,"2070003":0},"574":{"67753":575,"67763":576,"2070003":0},"577":{"67753":578,"67763":579,"2070003":0},"580":{"67753":581,"67763":582,"2070003":0},"583":{"67753":584,"67763":585,"2070003":0},"586":{"67753":587,"67763":588,"2070003":0},"589":{"67753":590,"67763":591,"2070003":0},"592":{"67753":593,"67763":594,"2070003":0},"595":{"67753":596,"67763":597,"2070003":0},"598":{"67753":599,"67763":600,"2070003":0},"601":{"67753":602,"67763":603,"2070003":0},"604":{"67753":605,"67763":606,"2070003":0},"609":{"1050037":610,"2070003":0},"610":{"47815":611,"47818":612,"2070003":0},"615":{"1050037":616,"2070003":0},"616":{"47815":617,"47818":618,"2070003":0},"621":{"1050037":622,"2070003":0},"622":{"47815":623,"47818":624,"2070003":0},"627":{"1050037":628,"2070003":0},"628":{"47815":629,"47818":630,"2070003":0},"633":{"1050037":634,"2070003":0},"634":{"47815":635,"47818":636,"2070003":0},"639":{"1050037":640,"2070003":0},"640":{"47815":641,"47818":642,"2070003":0},"645":{"1050037":646,"2070003":0},"646":{"47815":647,"47818":648,"2070003":0},"651":{"1050037":652,"2070003":0},"652":{"47815":653,"47818":654,"2070003":0},"655":{"67753":656,"67763":657,"2070003":0},"658":{"67753":659,"67763":660,"2070003":0},"661":{"67753":662,"67763":663,"2070003":0},"664":{"67753":665,"67763":666,"2070003":0},"667":{"67753":668,"67763":669,"2070003":0},"670":{"67753":671,"67763":672,"2070003":0},"673":{"67753":674,"67763":675,"2070003":0},"676":{"67753":677,"67763":678,"2070003":0},"679":{"1978":1101,"3361":680,"2070003":1288},"680":{"1050037":681,"2070003":0},"681":{"19537":682,"1050044":683,"1050045":684,"2070003":0},"685":{"1978":1102,"3361":686,"2070003":1289},"686":{"1050037":687,"2070003":0},"687":{"19537":688,"1050044":689,"1050045":690,"2070003":0},"691":{"1978":1103,"3361":692,"2070003":1290},"692":{"1050037":693,"2070003":0},"693":{"19537":694,"1050044":695,"1050045":696,"2070003":0},"697":{"1978":1104,"3361":698,"2070003":1291},"698":{"1050037":699,"2070003":0},"699":{"19537":700,"1050044":701,"1050045":702,"2070003":0},"703":{"1978":1105,"3361":704,"2070003":1292},"704":{"1050037":705,"2070003":0},"705":{"19537":706,"1050044":707,"1050045":708,"2070003":0},"709":{"1978":1106,"3361":710,"2070003":1293},"710":{"1050037":711,"2070003":0},"711":{"19537":712,"1050044":713,"1050045":714,"2070003":0},"717":{"1050037":718,"2070003":0},"718":{"47815":719,"47818":720,"2070003":0},"723":{"1050037":724,"2070003":0},"724":{"47815":725,"47818":726,"2070003":0},"737":{"1050037":738,"2070003":0},"738":{"47815":739,"47818":740,"2070003":0},"743":{"1050037":744,"2070003":0},"744":{"47815":745,"47818":746,"2070003":0},"755":{"76982":778,"77090":756,"2070003":0},"756":{"219":757,"1050037":764,"1050040":1034,"1050043":771,"2070003":0},"757":{"19537":758,"1050040":845,"1050044":760,"1050045":762,"2070003":0},"758":{"1978":759,"2070003":849},"760":{"1978":761,"2070003":850},"762":{"1978":763,"2070003":851},"764":{"19537":765,"1050044":767,"1050045":769,"2070003":0},"765":{"1978":766,"2070003":852},"767":{"1978":768,"2070003":853},"769":{"1978":770,"2070003":854},"771":{"19537":772,"1050044":774,"1050045":776,"2070003":0},"772":{"1978":773,"2070003":855},"774":{"1978":775,"2070003":856},"776":{"1978":777,"2070003":857},"778":{"219":779,"1050037":786,"1050040":1035,"1050043":793,"2070003":0},"779":{"19537":780,"1050040":846,"1050044":782,"1050045":784,"2070003":0},"780":{"1978":781,"2070003":858},"782":{"1978":783,"2070003":859},"784":{"1978":785,"2070003":860},"786":{"19537":787,"1050044":789,"1050045":791,"2070003":0},"787":{"1978":788,"2070003":861},"789":{"1978":790,"2070003":862},"791":{"1978":792,"2070003":863},"793":{"19537":794,"1050044":796,"1050045":798,"2070003":0},"794":{"1978":795,"2070003":864},"796":{"1978":797,"2070003":865},"798":{"1978":799,"2070003":866},"800":{"76982":823,"77090":801,"2070003":0},"801":{"219":802,"1050037":809,"1050040":1036,"1050043":816,"2070003":0},"802":{"19537":803,"1050040":847,"1050044":805,"1050045":807,"2070003":0},"803":{"1978":804,"2070003":867},"805":{"1978":806,"2070003":868},"807":{"1978":808,"2070003":869},"809":{"19537":810,"1050044":812,"1050045":814,"2070003":0},"810":{"1978":811,"2070003":870},"812":{"1978":813,"2070003":871},"814":{"1978":815,"2070003":872},"816":{"19537":817,"1050044":819,"1050045":821,"2070003":0},"817":{"1978":818,"2070003":873},"819":{"1978":820,"2070003":874},"821":{"1978":822,"2070003":875},"823":{"219":824,"1050037":831,"1050040":1037,"1050043":838,"2070003":0},"824":{"19537":825,"1050040":848,"1050044":827,"1050045":829,"2070003":0},"825":{"1978":826,"2070003":876},"827":{"1978":828,"2070003":877},"829":{"1978":830,"2070003":878},"831":{"19537":832,"1050044":834,"1050045":836,"2070003":0},"832":{"1978":833,"2070003":879},"834":{"1978":835,"2070003":880},"836":{"1978":837,"2070003":881},"838":{"19537":839,"1050044":841,"1050045":843,"2070003":0},"839":{"1978":840,"2070003":882},"841":{"1978":842,"2070003":883},"843":{"1978":844,"2070003":884},"885":{"1050039":886,"1050041":1021,"1050043":890,"2070003":0},"886":{"77819":897,"78040":887,"82584":894,"2070003":0},"887":{"1050039":888,"1050043":889,"2070003":0},"890":{"77819":903,"78040":891,"82584":900,"2070003":0},"891":{"1050039":892,"1050043":893,"2070003":0},"894":{"1050039":895,"1050043":896,"2070003":0},"897":{"1050039":898,"1050043":899,"2070003":0},"900":{"1050039":901,"1050043":902,"2070003":0},"903":{"1050039":904,"1050043":905,"2070003":0},"906":{"1050039":907,"1050041":1028,"1050043":911,"2070003":0},"907":{"3361":908,"2070003":1294},"908":{"1050039":909,"1050043":910,"2070003":0},"911":{"3361":912,"2070003":1295},"912":{"1050039":913,"1050043":914,"2070003":0},"915":{"1050039":916,"1050041":1031,"1050043":920,"2070003":0},"916":{"3361":917,"2070003":1296},"917":{"1050039":918,"1050043":919,"2070003":0},"920":{"3361":921,"2070003":1297},"921":{"1050039":922,"1050043":923,"2070003":0},"932":{"219":933,"1050037":940,"1050043":947,"2070003":0},"933":{"19537":934,"1050044":936,"1050045":938,"2070003":0},"934":{"1978":935,"2070003":1038},"936":{"1978":937,"2070003":1039},"938":{"1978":939,"2070003":1040},"940":{"19537":941,"1050044":943,"1050045":945,"2070003":0},"941":{"1978":942,"2070003":1041},"943":{"1978":944,"2070003":1042},"945":{"1978":946,"2070003":1043},"947":{"19537":948,"1050044":950,"1050045":952,"2070003":0},"948":{"1978":949,"2070003":1044},"950":{"1978":951,"2070003":1045},"952":{"1978":953,"2070003":1046},"954":{"219":955,"1050037":962,"1050043":969,"2070003":0},"955":{"19537":956,"1050044":958,"1050045":960,"2070003":0},"956":{"1978":957,"2070003":1047},"958":{"1978":959,"2070003":1048},"960":{"1978":961,"2070003":1049},"962":{"19537":963,"1050044":965,"1050045":967,"2070003":0},"963":{"1978":964,"2070003":1050},"965":{"1978":966,"2070003":1051},"967":{"1978":968,"2070003":1052},"969":{"19537":970,"1050044":972,"1050045":974,"2070003":0},"970":{"1978":971,"2070003":1053},"972":{"1978":973,"2070003":1054},"974":{"1978":975,"2070003":1055},"976":{"52424":977,"2070003":0},"977":{"19537":1111,"45756":1110,"46237":1109,"77052":978,"1050039":1107,"1050040":1108,"1050044":1112,"2070003":0},"978":{"19537":983,"45756":982,"46237":981,"1050039":979,"1050040":980,"1050044":984,"2070003":0},"985":{"52424":986,"2070003":0},"986":{"19537":1117,"45756":1116,"46237":1115,"77052":987,"1050039":1113,"1050040":1114,"1050044":1118,"2070003":0},"987":{"19537":992,"45756":991,"46237":990,"1050039":988,"1050040":989,"1050044":993,"2070003":0},"994":{"52424":995,"2070003":0},"995":{"19537":1123,"45756":1122,"46237":1121,"77052":996,"1050039":1119,"1050040":1120,"1050044":1124,"2070003":0},"996":{"19537":1001,"45756":1000,"46237":999,"1050039":997,"1050040":998,"1050044":1002,"2070003":0},"1003":{"52424":1004,"2070003":0},"1004":{"19537":1129,"45756":1128,"46237":1127,"77052":1005,"1050039":1125,"1050040":1126,"1050044":1130,"2070003":0},"1005":{"19537":1010,"45756":1009,"46237":1008,"1050039":1006,"1050040":1007,"1050044":1011,"2070003":0},"1012":{"52424":1013,"2070003":0},"1013":{"19537":1135,"45756":1134,"46237":1133,"77052":1014,"1050039":1131,"1050040":1132,"1050044":1136,"2070003":0},"1014":{"19537":1019,"45756":1018,"46237":1017,"1050039":1015,"1050040":1016,"1050044":1020,"2070003":0},"1021":{"77819":1026,"78040":1022,"82584":1024,"2070003":0},"1022":{"1050041":1023,"2070003":0},"1024":{"1050041":1025,"2070003":0},"1026":{"1050041":1027,"2070003":0},"1028":{"3361":1029,"2070003":1348},"1029":{"1050041":1030,"2070003":0},"1031":{"3361":1032,"2070003":1349},"1032":{"1050041":1033,"2070003":0},"1056":{"47":1063,"78040":1057,"87219":1066,"2070003":1518},"1057":{"1050039":1058,"1050043":1059,"2070003":0},"1060":{"1050039":1061,"1050043":1062,"2070003":0},"1063":{"1050039":1064,"1050043":1065,"2070003":0},"1066":{"1050039":1067,"1050043":1068,"2070003":0},"1137":{"36445":1138,"36450":1143,"47623":1163,"47624":1168,"47815":1148,"47818":1153,"67763":1158,"2070003":0},"1138":{"1978":1141,"7620":1140,"24309":1142,"42769":1139,"2070003":1307},"1143":{"1978":1146,"7620":1145,"24309":1147,"42769":1144,"2070003":1308},"1148":{"1978":1151,"7620":1150,"24309":1152,"42769":1149,"2070003":1309},"1153":{"1978":1156,"7620":1155,"24309":1157,"42769":1154,"2070003":1310},"1158":{"1978":1161,"7620":1160,"24309":1162,"42769":1159,"2070003":1311},"1163":{"1978":1166,"7620":1165,"24309":1167,"42769":1164,"2070003":1312},"1168":{"1978":1171,"7620":1170,"24309":1172,"42769":1169,"2070003":1313},"1173":{"7":1363,"8":1353,"221":1380,"5914":1381,"11015":1382,"23226":1369,"23229":1374,"26892":1371,"26901":1376,"36445":1174,"36450":1179,"47623":1199,"47624":1204,"47815":1184,"47818":1189,"55521":1356,"55524":1357,"55994":1282,"56008":1354,"56013":1355,"58873":1370,"58879":1375,"65701":1373,"65702":1377,"67763":1194,"82994":1379,"83009":1378,"86818":1372,"87216":1367,"87249":1368,"87250":1366,"87251":1365,"87252":1364,"1050042":1383,"2070003":0},"1174":{"1978":1177,"7620":1176,"24309":1178,"42769":1175,"2070003":1314},"1179":{"1978":1182,"7620":1181,"24309":1183,"42769":1180,"2070003":1315},"1184":{"1978":1187,"7620":1186,"24309":1188,"42769":1185,"2070003":1316},"1189":{"1978":1192,"7620":1191,"24309":1193,"42769":1190,"2070003":1317},"1194":{"1978":1197,"7620":1196,"24309":1198,"42769":1195,"2070003":1318},"1199":{"1978":1202,"7620":1201,"24309":1203,"42769":1200,"2070003":1319},"1204":{"1978":1207,"7620":1206,"24309":1208,"42769":1205,"2070003":1320},"1217":{"1978":1220,"7620":1219,"24309":1221,"42769":1218,"2070003":1323},"1222":{"1978":1225,"7620":1224,"24309":1226,"42769":1223,"2070003":1324},"1227":{"1978":1230,"7620":1229,"24309":1231,"42769":1228,"2070003":1325},"1232":{"1978":1235,"7620":1234,"24309":1236,"42769":1233,"2070003":1326},"1237":{"1978":1240,"7620":1239,"24309":1241,"42769":1238,"2070003":1327},"1250":{"1978":1253,"7620":1252,"24309":1254,"42769":1251,"2070003":1330},"1255":{"1978":1258,"7620":1257,"24309":1259,"42769":1256,"2070003":1331},"1260":{"1978":1263,"7620":1262,"24309":1264,"42769":1261,"2070003":1332},"1265":{"1978":1268,"7620":1267,"24309":1269,"42769":1266,"2070003":1333},"1270":{"1978":1273,"7620":1272,"24309":1274,"42769":1271,"2070003":1334},"1275":{"47":1278,"78040":1276,"87219":1280,"2070003":1517},"1276":{"1050041":1277,"2070003":0},"1278":{"1050041":1279,"2070003":0},"1280":{"1050041":1281,"2070003":0},"1282":{"12752":1283,"12847":1286,"2070003":0},"1284":{"12752":1285,"12847":1287,"2070003":0},"1298":{"1050039":1299,"1050041":1350,"1050043":1300,"2070003":0},"1301":{"1050039":1302,"1050041":1351,"1050043":1303,"2070003":0},"1304":{"1050039":1305,"1050041":1352,"1050043":1306,"2070003":0},"1335":{"1978":1338,"24309":1336,"42769":1337,"2070003":1519},"1344":{"1050043":1345,"2070003":0},"1346":{"1050043":1347,"2070003":0},"1426":{"1050037":1428,"1050043":1429,"1050046":1427,"2070003":0},"1430":{"1050037":1432,"1050043":1433,"1050046":1431,"2070003":0},"1434":{"1050037":1436,"1050043":1437,"1050046":1435,"2070003":0},"1438":{"1050037":1440,"1050043":1441,"1050046":1439,"2070003":0},"1442":{"1050037":1444,"1050043":1445,"1050046":1443,"2070003":0},"1446":{"1050037":1448,"1050043":1449,"1050046":1447,"2070003":0},"1450":{"1050037":1452,"1050043":1453,"1050046":1451,"2070003":0},"1454":{"1050037":1456,"1050043":1457,"1050046":1455,"2070003":0},"1458":{"1050037":1460,"1050043":1461,"1050046":1459,"2070003":0},"1462":{"1050037":1464,"1050043":1465,"1050046":1463,"2070003":0},"1466":{"1050037":1468,"1050043":1469,"1050046":1467,"2070003":0},"1470":{"1050037":1472,"1050043":1473,"1050046":1471,"2070003":0},"1474":{"1050037":1476,"1050043":1477,"1050046":1475,"2070003":0},"1478":{"1050037":1480,"1050043":1481,"1050046":1479,"2070003":0},"1482":{"1050037":1484,"1050043":1485,"1050046":1483,"2070003":0},"1486":{"1050037":1488,"1050043":1489,"1050046":1487,"2070003":0},"1490":{"1050037":1492,"1050043":1493,"1050046":1491,"2070003":0},"1494":{"1050037":1496,"1050043":1497,"1050046":1495,"2070003":0},"1498":{"1050037":1500,"1050043":1501,"1050046":1499,"2070003":0},"1502":{"1050037":1504,"1050043":1505,"1050046":1503,"2070003":0},"1506":{"1050037":1508,"1050043":1509,"1050046":1507,"2070003":0},"1510":{"1050037":1512,"1050043":1513,"1050046":1511,"2070003":0}},{"9":"DURATION","10":"DURATION","13":"DURATION","14":"DURATION","18":"DURATION","19":"DURATION","22":"DURATION","23":"DURATION","30":"DURATION","31":"DURATION","34":"DURATION","35":"DURATION","39":"DURATION","40":"DURATION","43":"DURATION","44":"DURATION","52":"DURATION","53":"DURATION","56":"DURATION","57":"DURATION","61":"DURATION","62":"DURATION","65":"DURATION","66":"DURATION","73":"DURATION","74":"DURATION","77":"DURATION","78":"DURATION","82":"DURATION","83":"DURATION","86":"DURATION","87":"DURATION","96":"DURATION","97":"DURATION","100":"DURATION","101":"DURATION","105":"DURATION","106":"DURATION","109":"DURATION","110":"DURATION","117":"DURATION","118":"DURATION","121":"DURATION","122":"DURATION","126":"DURATION","127":"DURATION","130":"DURATION","131":"DURATION","139":"DURATION","140":"DURATION","143":"DURATION","144":"DURATION","148":"DURATION","149":"DURATION","152":"DURATION","153":"DURATION","160":"DURATION","161":"DURATION","164":"DURATION","165":"DURATION","169":"DURATION","170":"DURATION","173":"DURATION","174":"DURATION","181":"DURATION","182":"DURATION","185":"DURATION","186":"DURATION","190":"DURATION","191":"DURATION","194":"DURATION","195":"DURATION","202":"DURATION","203":"DURATION","206":"DURATION","207":"DURATION","211":"DURATION","212":"DURATION","215":"DURATION","216":"DURATION","221":"DURATION","222":"DURATION","225":"DURATION","226":"DURATION","230":"DURATION","231":"DURATION","234":"DURATION","235":"DURATION","237":"DURATION","238":"DURATION","240":"DURATION","241":"DURATION","246":"DURATION","247":"DURATION","250":"DURATION","251":"DURATION","255":"DURATION","256":"DURATION","259":"DURATION","260":"DURATION","262":"DURATION","263":"DURATION","265":"DURATION","266":"DURATION","271":"DURATION","272":"DURATION","275":"DURATION","276":"DURATION","280":"DURATION","281":"DURATION","284":"DURATION","285":"DURATION","287":"DURATION","288":"DURATION","290":"DURATION","291":"DURATION","296":"DURATION","297":"DURATION","300":"DURATION","301":"DURATION","305":"DURATION","306":"DURATION","309":"DURATION","310":"DURATION","312":"DURATION","313":"DURATION","315":"DURATION","316":"DURATION","323":"DURATION","324":"DURATION","327":"DURATION","328":"DURATION","332":"DURATION","333":"DURATION","336":"DURATION","337":"DURATION","344":"DURATION","345":"DURATION","348":"DURATION","349":"DURATION","353":"DURATION","354":"DURATION","357":"DURATION","358":"DURATION","363":"DURATION","364":"DURATION","367":"DURATION","368":"DURATION","372":"DURATION","373":"DURATION","376":"DURATION","377":"DURATION","379":"DURATION","380":"DURATION","382":"DURATION","383":"DURATION","388":"DURATION","389":"DURATION","392":"DURATION","393":"DURATION","397":"DURATION","398":"DURATION","401":"DURATION","402":"DURATION","404":"DURATION","405":"DURATION","407":"DURATION","408":"DURATION","413":"DURATION","414":"DURATION","417":"DURATION","418":"DURATION","422":"DURATION","423":"DURATION","426":"DURATION","427":"DURATION","429":"DURATION","430":"DURATION","432":"DURATION","433":"DURATION","438":"DURATION","439":"DURATION","442":"DURATION","443":"DURATION","447":"DURATION","448":"DURATION","451":"DURATION","452":"DURATION","454":"DURATION","455":"DURATION","457":"DURATION","458":"DURATION","463":"DURATION","464":"DURATION","467":"DURATION","468":"DURATION","472":"DURATION","473":"DURATION","476":"DURATION","477":"DURATION","479":"DURATION","480":"DURATION","482":"DURATION","483":"DURATION","488":"DURATION","489":"DURATION","492":"DURATION","493":"DURATION","497":"DURATION","498":"DURATION","501":"DURATION","502":"DURATION","504":"DURATION","505":"DURATION","507":"DURATION","508":"DURATION","510":"DURATION","511":"DURATION","513":"DURATION","514":"DURATION","516":"DURATION","517":"DURATION","519":"DURATION","520":"DURATION","522":"DURATION","523":"DURATION","525":"DURATION","526":"DURATION","528":"DURATION","529":"DURATION","531":"DURATION","532":"DURATION","537":"DURATION","538":"DURATION","541":"DURATION","542":"DURATION","546":"DURATION","547":"DURATION","550":"DURATION","551":"DURATION","553":"DURATION","554":"DURATION","556":"DURATION","557":"DURATION","562":"DURATION","563":"DURATION","566":"DURATION","567":"DURATION","571":"DURATION","572":"DURATION","575":"DURATION","576":"DURATION","578":"DURATION","579":"DURATION","581":"DURATION","582":"DURATION","584":"DURATION","585":"DURATION","587":"DURATION","588":"DURATION","590":"DURATION","591":"DURATION","593":"DURATION","594":"DURATION","596":"DURATION","597":"DURATION","599":"DURATION","600":"DURATION","602":"DURATION","603":"DURATION","605":"DURATION","606":"DURATION","607":"DURATION","608":"DURATION","611":"DURATION","612":"DURATION","613":"DURATION","614":"DURATION","617":"DURATION","618":"DURATION","619":"DURATION","620":"DURATION","623":"DURATION","624":"DURATION","625":"DURATION","626":"DURATION","629":"DURATION","630":"DURATION","631":"DURATION","632":"DURATION","635":"DURATION","636":"DURATION","637":"DURATION","638":"DURATION","641":"DURATION","642":"DURATION","643":"DURATION","644":"DURATION","647":"DURATION","648":"DURATION","649":"DURATION","650":"DURATION","653":"DURATION","654":"DURATION","656":"DURATION","657":"DURATION","659":"DURATION","660":"DURATION","662":"DURATION","663":"DURATION","665":"DURATION","666":"DURATION","668":"DURATION","669":"DURATION","671":"DURATION","672":"DURATION","674":"DURATION","675":"DURATION","677":"DURATION","678":"DURATION","682":"DURATION","683":"DURATION","684":"DURATION","688":"DURATION","689":"DURATION","690":"DURATION","694":"DURATION","695":"DURATION","696":"DURATION","700":"DURATION","701":"DURATION","702":"DURATION","706":"DURATION","707":"DURATION","708":"DURATION","712":"DURATION","713":"DURATION","714":"DURATION","715":"DURATION","716":"DURATION","719":"DURATION","720":"DURATION","721":"DURATION","722":"DURATION","725":"DURATION","726":"DURATION","727":"DURATION","728":"DURATION","729":"DURATION","730":"DURATION","731":"DURATION","732":"DURATION","733":"DURATION","734":"DURATION","735":"DURATION","736":"DURATION","739":"DURATION","740":"DURATION","741":"DURATION","742":"DURATION","745":"DURATION","746":"DURATION","747":"DURATION","748":"DURATION","749":"DURATION","750":"DURATION","751":"DURATION","752":"DURATION","753":"DURATION","754":"DURATION","759":"DATE","761":"DATE","763":"DATE","766":"DATE","768":"DATE","770":"DATE","773":"DATE","775":"DATE","777":"DATE","781":"DATE","783":"DATE","785":"DATE","788":"DATE","790":"DATE","792":"DATE","795":"DATE","797":"DATE","799":"DATE","804":"DATE","806":"DATE","808":"DATE","811":"DATE","813":"DATE","815":"DATE","818":"DATE","820":"DATE","822":"DATE","826":"DATE","828":"DATE","830":"DATE","833":"DATE","835":"DATE","837":"DATE","840":"DATE","842":"DATE","844":"DATE","845":"DURATION","846":"DURATION","847":"DURATION","848":"DURATION","849":"DURATION","850":"DURATION","851":"DURATION","852":"DURATION","853":"DURATION","854":"DURATION","855":"DURATION","856":"DURATION","857":"DURATION","858":"DURATION","859":"DURATION","860":"DURATION","861":"DURATION","862":"DURATION","863":"DURATION","864":"DURATION","865":"DURATION","866":"DURATION","867":"DURATION","868":"DURATION","869":"DURATION","870":"DURATION","871":"DURATION","872":"DURATION","873":"DURATION","874":"DURATION","875":"DURATION","876":"DURATION","877":"DURATION","878":"DURATION","879":"DURATION","880":"DURATION","881":"DURATION","882":"DURATION","883":"DURATION","884":"DURATION","888":"DURATION","889":"DURATION","892":"DURATION","893":"DURATION","895":"DURATION","896":"DURATION","898":"DURATION","899":"DURATION","901":"DURATION","902":"DURATION","904":"DURATION","905":"DURATION","909":"DURATION","910":"DURATION","913":"DURATION","914":"DURATION","918":"DURATION","919":"DURATION","922":"DURATION","923":"DURATION","924":"DURATION","925":"DURATION","926":"DURATION","927":"DURATION","928":"DURATION","929":"DURATION","930":"DURATION","931":"DURATION","935":"DATE","937":"DATE","939":"DATE","942":"DATE","944":"DATE","946":"DATE","949":"DATE","951":"DATE","953":"DATE","957":"DATE","959":"DATE","961":"DATE","964":"DATE","966":"DATE","968":"DATE","971":"DATE","973":"DATE","975":"DATE","979":"DATE","980":"DATE","981":"DATE","982":"DATE","983":"DATE","984":"DATE","988":"DATE","989":"DATE","990":"DATE","991":"DATE","992":"DATE","993":"DATE","997":"DATE","998":"DATE","999":"DATE","1000":"DATE","1001":"DATE","1002":"DATE","1006":"DATE","1007":"DATE","1008":"DATE","1009":"DATE","1010":"DATE","1011":"DATE","1015":"DATE","1016":"DATE","1017":"DATE","1018":"DATE","1019":"DATE","1020":"DATE","1023":"DURATION","1025":"DURATION","1027":"DURATION","1030":"DURATION","1033":"DURATION","1034":"DURATION","1035":"DURATION","1036":"DURATION","1037":"DURATION","1038":"DURATION","1039":"DURATION","1040":"DURATION","1041":"DURATION","1042":"DURATION","1043":"DURATION","1044":"DURATION","1045":"DURATION","1046":"DURATION","1047":"DURATION","1048":"DURATION","1049":"DURATION","1050":"DURATION","1051":"DURATION","1052":"DURATION","1053":"DURATION","1054":"DURATION","1055":"DURATION","1058":"DURATION","1059":"DURATION","1061":"DURATION","1062":"DURATION","1064":"DURATION","1065":"DURATION","1067":"DURATION","1068":"DURATION","1069":"DURATION","1070":"DURATION","1071":"DURATION","1072":"DURATION","1073":"DURATION","1074":"DURATION","1075":"DURATION","1076":"DURATION","1077":"DURATION","1078":"DURATION","1079":"DURATION","1080":"DURATION","1081":"DURATION","1082":"DURATION","1083":"DURATION","1084":"DURATION","1085":"DURATION","1086":"DURATION","1087":"DURATION","1088":"DURATION","1089":"DURATION","1090":"DURATION","1091":"DURATION","1092":"DURATION","1093":"DURATION","1094":"DURATION","1095":"DURATION","1096":"DURATION","1097":"DURATION","1098":"DURATION","1099":"DURATION","1100":"DURATION","1101":"DATE","1102":"DATE","1103":"DATE","1104":"DATE","1105":"DATE","1106":"DATE","1107":"DATE","1108":"DATE","1109":"DATE","1110":"DATE","1111":"DATE","1112":"DATE","1113":"DATE","1114":"DATE","1115":"DATE","1116":"DATE","1117":"DATE","1118":"DATE","1119":"DATE","1120":"DATE","1121":"DATE","1122":"DATE","1123":"DATE","1124":"DATE","1125":"DATE","1126":"DATE","1127":"DATE","1128":"DATE","1129":"DATE","1130":"DATE","1131":"DATE","1132":"DATE","1133":"DATE","1134":"DATE","1135":"DATE","1136":"DATE","1139":"TIME","1140":"TIME","1141":"TIME","1142":"TIME","1144":"TIME","1145":"TIME","1146":"TIME","1147":"TIME","1149":"TIME","1150":"TIME","1151":"TIME","1152":"TIME","1154":"TIME","1155":"TIME","1156":"TIME","1157":"TIME","1159":"TIME","1160":"TIME","1161":"TIME","1162":"TIME","1164":"TIME","1165":"TIME","1166":"TIME","1167":"TIME","1169":"TIME","1170":"TIME","1171":"TIME","1172":"TIME","1175":"TIME","1176":"TIME","1177":"TIME","1178":"TIME","1180":"TIME","1181":"TIME","1182":"TIME","1183":"TIME","1185":"TIME","1186":"TIME","1187":"TIME","1188":"TIME","1190":"TIME","1191":"TIME","1192":"TIME","1193":"TIME","1195":"TIME","1196":"TIME","1197":"TIME","1198":"TIME","1200":"TIME","1201":"TIME","1202":"TIME","1203":"TIME","1205":"TIME","1206":"TIME","1207":"TIME","1208":"TIME","1209":"TIME","1210":"TIME","1211":"TIME","1212":"TIME","1213":"TIME","1214":"TIME","1215":"TIME","1216":"TIME","1218":"TIME","1219":"TIME","1220":"TIME","1221":"TIME","1223":"TIME","1224":"TIME","1225":"TIME","1226":"TIME","1228":"TIME","1229":"TIME","1230":"TIME","1231":"TIME","1233":"TIME","1234":"TIME","1235":"TIME","1236":"TIME","1238":"TIME","1239":"TIME","1240":"TIME","1241":"TIME","1242":"TIME","1243":"TIME","1244":"TIME","1245":"TIME","1246":"TIME","1247":"TIME","1248":"TIME","1249":"TIME","1251":"TIME","1252":"TIME","1253":"TIME","1254":"TIME","1256":"TIME","1257":"TIME","1258":"TIME","1259":"TIME","1261":"TIME","1262":"TIME","1263":"TIME","1264":"TIME","1266":"TIME","1267":"TIME","1268":"TIME","1269":"TIME","1271":"TIME","1272":"TIME","1273":"TIME","1274":"TIME","1277":"DURATION","1279":"DURATION","1281":"DURATION","1283":"PERCENT","1285":"PERCENT","1286":"PERCENT","1287":"PERCENT","1288":"DURATION","1289":"DURATION","1290":"DURATION","1291":"DURATION","1292":"DURATION","1293":"DURATION","1294":"DURATION","1295":"DURATION","1296":"DURATION","1297":"DURATION","1299":"DURATION","1300":"DURATION","1302":"DURATION","1303":"DURATION","1305":"DURATION","1306":"DURATION","1307":"DURATION","1308":"DURATION","1309":"DURATION","1310":"DURATION","1311":"DURATION","1312":"DURATION","1313":"DURATION","1314":"DURATION","1315":"DURATION","1316":"DURATION","1317":"DURATION","1318":"DURATION","1319":"DURATION","1320":"DURATION","1321":"DURATION","1322":"DURATION","1323":"DURATION","1324":"DURATION","1325":"DURATION","1326":"DURATION","1327":"DURATION","1328":"DURATION","1329":"DURATION","1330":"DURATION","1331":"DURATION","1332":"DURATION","1333":"DURATION","1334":"DURATION","1336":"DATE","1337":"DATE","1338":"DATE","1339":"DATE","1340":"DATE","1341":"DATE","1342":"DATE","1343":"DATE","1345":"DATE","1347":"DATE","1348":"DURATION","1349":"DURATION","1350":"DURATION","1351":"DURATION","1352":"DURATION","1353":"PERCENT","1354":"PERCENT","1355":"PERCENT","1356":"PERCENT","1357":"PERCENT","1358":"PERCENT","1359":"PERCENT","1360":"PERCENT","1361":"PERCENT","1362":"PERCENT","1363":"MONEY","1364":"MONEY","1365":"MONEY","1366":"MONEY","1367":"MONEY","1368":"MONEY","1369":"MONEY","1370":"MONEY","1371":"MONEY","1372":"MONEY","1373":"MONEY","1374":"MONEY","1375":"MONEY","1376":"MONEY","1377":"MONEY","1378":"MONEY","1379":"MONEY","1380":"MONEY","1381":"MONEY","1382":"MONEY","1383":"MONEY","1384":"MONEY","1385":"MONEY","1386":"MONEY","1387":"MONEY","1388":"MONEY","1389":"MONEY","1390":"MONEY","1391":"MONEY","1392":"MONEY","1393":"MONEY","1394":"MONEY","1395":"MONEY","1396":"MONEY","1397":"MONEY","1398":"MONEY","1399":"MONEY","1400":"MONEY","1401":"MONEY","1402":"MONEY","1403":"MONEY","1404":"MONEY","1405":"MONEY","1406":"MONEY","1407":"MONEY","1408":"MONEY","1409":"MONEY","1410":"MONEY","1411":"MONEY","1412":"MONEY","1413":"MONEY","1414":"MONEY","1415":"MONEY","1416":"MONEY","1417":"MONEY","1418":"MONEY","1419":"MONEY","1420":"MONEY","1421":"MONEY","1422":"MONEY","1423":"MONEY","1424":"MONEY","1425":"MONEY","1427":"MONEY","1428":"MONEY","1429":"MONEY","1431":"MONEY","1432":"MONEY","1433":"MONEY","1435":"MONEY","1436":"MONEY","1437":"MONEY","1439":"MONEY","1440":"MONEY","1441":"MONEY","1443":"MONEY","1444":"MONEY","1445":"MONEY","1447":"MONEY","1448":"MONEY","1449":"MONEY","1451":"MONEY","1452":"MONEY","1453":"MONEY","1455":"MONEY","1456":"MONEY","1457":"MONEY","1459":"MONEY","1460":"MONEY","1461":"MONEY","1463":"MONEY","1464":"MONEY","1465":"MONEY","1467":"MONEY","1468":"MONEY","1469":"MONEY","1471":"MONEY","1472":"MONEY","1473":"MONEY","1475":"MONEY","1476":"MONEY","1477":"MONEY","1479":"MONEY","1480":"MONEY","1481":"MONEY","1483":"MONEY","1484":"MONEY","1485":"MONEY","1487":"MONEY","1488":"MONEY","1489":"MONEY","1491":"MONEY","1492":"MONEY","1493":"MONEY","1495":"MONEY","1496":"MONEY","1497":"MONEY","1499":"MONEY","1500":"MONEY","1501":"MONEY","1503":"MONEY","1504":"MONEY","1505":"MONEY","1507":"MONEY","1508":"MONEY","1509":"MONEY","1511":"MONEY","1512":"MONEY","1513":"MONEY","1514":"ORDINAL","1515":"CARDINAL","1516":"CARDINAL","1517":"TIME","1518":"DATE","1519":"DURATION","1520":"DURATION","1521":"DURATION","1522":"DURATION","1523":"DURATION","1524":"DURATION","1525":"DURATION","1526":"DURATION","1527":"DURATION","1528":"DURATION","1529":"DURATION","1530":"EMAIL","1531":"EMOJI","1532":"EMOTICON","1533":"HASHTAG","1534":"MENTION","1535":"URL"},{"1339":[0,1],"1340":[0,1],"1341":[0,1],"1342":[0,1],"1343":[0,1],"1345":[1,0],"1347":[1,0]},{}]']; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-ner-model.js +var require_load_ner_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-ner-model.js"(exports2, module2) { + var transformers = require_ner_transformers(); + var machines = require_eng_ner_model(); + var loadNERModel = function() { + return { machines, transformers }; + }; + module2.exports = loadNERModel; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/sbd-transformers.js +var require_sbd_transformers = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/sbd-transformers.js"(exports2, module2) { + var transformers = new Array(1); + transformers[0] = function(token, cache, rawTokens, i) { + var mapped = cache.property(token, "sbdHint") || cache.property(rawTokens[4 * i], "sbdHint"); + return 4 === mapped && (mapped = 65535 & rawTokens[4 * i + 1] ? 6 : 4), mapped ? mapped + 108e4 : cache.property(token, "isAbbrev") ? 108e4 + (2 === cache.value(token).length ? 8 : 7) : token; + }, module2.exports = transformers; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/sbd-setter.js +var require_sbd_setter = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/sbd-setter.js"(exports2, module2) { + var setter = function(px, rdd) { + var numOfTokens = rdd.numOfTokens, si = [0, numOfTokens - 1, 0, 0]; + for (let i = 0; i < px.length; i += 1) + si[1] = px[i][0], i < px.length - 1 && (rdd.sentences.push(si), si = [px[i][0] + 1, numOfTokens - 1, 0, 0]); + rdd.sentences.push(si), si[1] < numOfTokens - 1 && rdd.sentences.push([si[1] + 1, numOfTokens - 1, 0, 0]); + }; + module2.exports = setter; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-sbd-model.json +var require_eng_sbd_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-sbd-model.json"(exports2, module2) { + module2.exports = ['[100,89,{"0":{"2":87,"1080001":7,"1080002":1,"1080007":42,"2070003":0},"1":{"2":75,"1080002":39,"1080003":2,"1080004":21,"1080005":24,"2070003":88},"2":{"2":51,"1080001":5,"1080002":3,"1080003":33,"1080004":13,"1080005":15,"2070003":79},"3":{"2":4,"2070003":47},"5":{"2":6,"2070003":48},"7":{"2":76,"46":71,"47":72,"87219":73,"87220":74,"1080001":69,"1080003":8,"1080004":27,"1080005":30,"2070003":89},"8":{"2":54,"1080001":11,"1080002":9,"1080003":36,"1080004":17,"1080005":19,"2070003":82},"9":{"2":10,"2070003":49},"11":{"2":12,"2070003":50},"13":{"2":14,"2070003":57},"15":{"2":16,"2070003":58},"17":{"2":18,"2070003":59},"19":{"2":20,"2070003":60},"21":{"2":52,"1080003":22,"2070003":80},"22":{"2":23,"2070003":61},"24":{"2":53,"1080003":25,"2070003":81},"25":{"2":35,"2070003":62},"27":{"2":55,"1080003":28,"2070003":83},"28":{"2":29,"2070003":63},"30":{"2":56,"1080003":31,"2070003":84},"31":{"2":38,"2070003":64},"33":{"2":34,"2070003":65},"36":{"2":37,"2070003":66},"39":{"2":67,"1080002":40,"2070003":85},"40":{"2":41,"2070003":68},"42":{"1080009":45,"1080010":43,"2070003":0},"43":{"2":44,"2070003":77},"45":{"2":46,"2070003":78},"69":{"1080001":70,"2070003":86}},{"4":"SBD","6":"SBD","10":"SBD","12":"SBD","14":"SBD","16":"SBD","18":"SBD","20":"SBD","23":"SBD","26":"SBD","29":"SBD","32":"SBD","34":"SBD","35":"SBD","37":"SBD","38":"SBD","41":"SBD","44":"SBD","46":"SBD","47":"SBD","48":"SBD","49":"SBD","50":"SBD","51":"SBD","52":"SBD","53":"SBD","54":"SBD","55":"SBD","56":"SBD","57":"SBD","58":"SBD","59":"SBD","60":"SBD","61":"SBD","62":"SBD","63":"SBD","64":"SBD","65":"SBD","66":"SBD","67":"SBD","68":"SBD","70":"0","71":"0","72":"0","73":"0","74":"0","75":"SBD","76":"SBD","77":"SBD","78":"SBD","79":"SBD","80":"SBD","81":"SBD","82":"SBD","83":"SBD","84":"SBD","85":"SBD","86":"0","87":"SBD","88":"SBD","89":"SBD"},{"4":[2,1],"6":[2,1],"10":[2,1],"12":[2,1],"14":[2,1],"16":[2,1],"18":[2,1],"20":[2,1],"23":[2,1],"26":[2,1],"29":[2,1],"32":[2,1],"34":[2,1],"35":[2,1],"37":[2,1],"38":[2,1],"41":[2,1],"44":[0,2],"46":[0,2],"47":[2,0],"48":[2,0],"49":[2,0],"50":[2,0],"51":[1,1],"52":[1,1],"53":[1,1],"54":[1,1],"55":[1,1],"56":[1,1],"57":[2,0],"58":[2,0],"59":[2,0],"60":[2,0],"61":[2,0],"62":[2,0],"63":[2,0],"64":[2,0],"65":[2,0],"66":[2,0],"67":[1,1],"68":[2,0],"75":[0,1],"76":[0,1],"77":[0,1],"78":[0,1],"79":[1,0],"80":[1,0],"81":[1,0],"82":[1,0],"83":[1,0],"84":[1,0],"85":[1,0]},{}]']; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-sbd-model.js +var require_load_sbd_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-sbd-model.js"(exports2, module2) { + var transformers = require_sbd_transformers(); + var setter = require_sbd_setter(); + var machines = require_eng_sbd_model(); + var loadNERModel = function() { + return { machines, setter, transformers }; + }; + module2.exports = loadNERModel; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/pos-transformers.js +var require_pos_transformers = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/pos-transformers.js"(exports2, module2) { + var transformers = new Array(2); + transformers[0] = function(pos, cache, rawTokens, i) { + var mapped = cache.property(rawTokens[4 * i], "posHint"); + return mapped ? mapped + 108e4 : pos; + }, transformers[1] = transformers[0], module2.exports = transformers; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/pos-setter.js +var require_pos_setter = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/pos-setter.js"(exports2, module2) { + var setter = function(rdd, posTags, tkSize, bits4lemma) { + let pk = 0; + for (let i = 0; i < rdd.tokens.length; i += tkSize, pk += 1) + 0 === rdd.tokens[i + 2] && (rdd.tokens[i + 2] = posTags[pk] << bits4lemma); + }; + module2.exports = setter; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/pos-updater.js +var require_pos_updater = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/pos-updater.js"(exports2, module2) { + var updater = function(px, cache, posTags, normalizedTokens) { + for (let j = 0; j < px.length; j += 1) { + const targetPOS = px[j][2], tokenIdx = px[j][0]; + targetPOS < 0 ? posTags[tokenIdx] = Math.abs(targetPOS) : cache.isMemberPOS(normalizedTokens[tokenIdx], targetPOS) && (posTags[tokenIdx] = targetPOS); + } + }; + module2.exports = updater; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-pos-model.json +var require_eng_pos_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-pos-model.json"(exports2, module2) { + module2.exports = ['[100,177,{"0":{"1":160,"2":4,"3":89,"4":39,"5":42,"6":32,"8":155,"9":172,"12":168,"16":138,"1080003":26,"1080004":7,"1080005":1,"1080006":75,"1080008":134,"1080012":36,"1080013":96,"1080014":23,"1080016":29,"1080017":121,"1080018":77,"1080019":79,"1080020":81,"1080021":83,"1080022":85,"1080028":141,"2070003":0,"$of":175},"1":{"1080004":2,"1080014":120,"2070003":0},"2":{"8":3,"2070003":0},"4":{"1080004":5,"1080014":119,"1080016":45,"2070003":0},"5":{"8":6,"2070003":0},"7":{"1080018":8,"1080019":11,"1080020":14,"1080021":17,"1080022":20,"2070003":0},"8":{"13":9,"1080001":10,"2070003":91},"11":{"13":12,"1080001":13,"2070003":92},"14":{"13":15,"1080001":16,"2070003":93},"17":{"13":18,"1080001":19,"2070003":94},"20":{"13":21,"1080001":22,"2070003":95},"23":{"2":24,"3":113,"4":110,"5":115,"8":118,"10":116,"16":112,"1080001":114,"1080012":111,"2070003":0},"24":{"2":25,"2070003":0},"26":{"1":48,"2":69,"4":163,"5":70,"6":67,"8":47,"9":68,"11":54,"12":66,"13":71,"1080001":72,"1080010":27,"1080013":73,"1080014":74,"1080018":49,"1080019":50,"1080020":51,"1080021":52,"1080022":53,"1080023":55,"1080024":56,"1080025":57,"1080026":58,"1080027":59,"1080028":61,"1080030":63,"1080031":64,"1080032":65,"1080033":60,"2070003":0},"27":{"3":28,"2070003":0},"29":{"1080004":87,"1080009":158,"1080010":30,"1080014":117,"2070003":0},"30":{"3":31,"2070003":0},"32":{"1":33,"4":108,"16":137,"1080010":136,"1080012":109,"2070003":0},"33":{"16":35,"1080010":34,"2070003":0},"36":{"7":174,"8":143,"1080004":88,"1080013":107,"1080016":37,"2070003":0},"37":{"8":38,"2070003":0},"39":{"4":162,"8":144,"1080009":157,"1080013":106,"1080016":40,"2070003":0},"40":{"8":41,"2070003":0},"42":{"8":43,"2070003":0},"43":{"6":44,"2070003":0},"45":{"16":46,"2070003":0},"75":{"1080003":76,"2070003":0},"77":{"1":146,"8":145,"1080004":78,"2070003":0},"79":{"1":148,"8":147,"1080004":80,"2070003":0},"81":{"1":150,"8":149,"1080004":82,"2070003":0},"83":{"1":152,"8":151,"1080004":84,"2070003":0},"85":{"1":154,"8":153,"1080004":86,"2070003":0},"89":{"8":159,"1080004":90,"2070003":0},"96":{"2":99,"3":100,"4":97,"5":101,"13":103,"16":98,"18":102,"1080001":104,"1080012":105,"2070003":0},"121":{"1":132,"3":133,"1080018":122,"1080019":123,"1080020":124,"1080021":125,"1080022":126,"1080023":127,"1080024":128,"1080025":129,"1080026":130,"1080027":131,"2070003":0},"134":{"1080005":135,"2070003":0},"138":{"4":139,"12":167,"1080012":140,"2070003":0,"$of":177},"141":{"16":142,"2070003":0},"155":{"12":165,"1080016":164,"1080028":156,"2070003":0},"160":{"12":166,"16":161,"2070003":0},"168":{"1":170,"8":169,"16":171,"2070003":0},"172":{"16":173,"2070003":0},"175":{"16":176,"2070003":0}},{"3":"-1","6":"-1","9":"-2","10":"-2","12":"-2","13":"-2","15":"-2","16":"-2","18":"-2","19":"-2","21":"-2","22":"-2","25":"-11","28":"-16","31":"-16","34":"-8","35":"8","38":"16","41":"16","44":"16","46":"-3","47":"16","48":"16","49":"-2","50":"-2","51":"-2","52":"-2","53":"-2","54":"-2","55":"-2","56":"-2","57":"-2","58":"-2","59":"-2","60":"-2","61":"-2","62":"-2","63":"-2","64":"-2","65":"-2","66":"-2","67":"-2","68":"-2","69":"-2","70":"-2","71":"-2","72":"-2","73":"-2","74":"-2","76":"-2","78":"-16","80":"-16","82":"-16","84":"-16","86":"-16","87":"-16","88":"-16","90":"-16","91":"-18","92":"-18","93":"-18","94":"-18","95":"-18","97":"-11","98":"-11","99":"-11","100":"-11","101":"-11","102":"-11","103":"-11","104":"-11","105":"-11","106":"-11","107":"-11","108":"11","109":"11","110":"-11","111":"-11","112":"-11","113":"-11","114":"-11","115":"-11","116":"-11","117":"-3","118":"-6","119":"-6","120":"-6","122":"-18","123":"-18","124":"-18","125":"-18","126":"-18","127":"-18","128":"-18","129":"-18","130":"-18","131":"-18","132":"-3","133":"-3","135":"-2","136":"-8","137":"8","139":"8","140":"8","142":"8","143":"16","144":"16","145":"16","146":"16","147":"16","148":"16","149":"16","150":"16","151":"16","152":"16","153":"16","154":"16","156":"16","157":"-16","158":"-16","159":"16","161":"8","162":"16","163":"16","164":"-3","165":"12","166":"12","167":"12","169":"12","170":"12","171":"12","173":"8","174":"16","176":"8","177":"8"},{"3":[1,1],"6":[1,1],"9":[0,2],"10":[0,2],"12":[0,2],"13":[0,2],"15":[0,2],"16":[0,2],"18":[0,2],"19":[0,2],"21":[0,2],"22":[0,2],"25":[0,2],"28":[1,1],"31":[1,1],"34":[2,0],"35":[2,0],"38":[2,0],"41":[2,0],"44":[1,1],"46":[1,1],"47":[1,0],"48":[1,0],"49":[0,1],"50":[0,1],"51":[0,1],"52":[0,1],"53":[0,1],"54":[0,1],"55":[0,1],"56":[0,1],"57":[0,1],"58":[0,1],"59":[0,1],"60":[0,1],"61":[0,1],"62":[0,1],"63":[0,1],"64":[0,1],"65":[0,1],"66":[0,1],"67":[0,1],"68":[0,1],"69":[0,1],"70":[0,1],"71":[0,1],"72":[0,1],"73":[0,1],"74":[0,1],"76":[1,0],"78":[1,0],"80":[1,0],"82":[1,0],"84":[1,0],"86":[1,0],"87":[1,0],"88":[1,0],"90":[1,0],"91":[0,1],"92":[0,1],"93":[0,1],"94":[0,1],"95":[0,1],"97":[0,1],"98":[0,1],"99":[0,1],"100":[0,1],"101":[0,1],"102":[0,1],"103":[0,1],"104":[0,1],"105":[0,1],"106":[1,0],"107":[1,0],"108":[0,1],"109":[0,1],"110":[0,1],"111":[0,1],"112":[0,1],"113":[0,1],"114":[0,1],"115":[0,1],"116":[0,1],"117":[1,0],"118":[0,1],"119":[1,0],"120":[1,0],"122":[0,1],"123":[0,1],"124":[0,1],"125":[0,1],"126":[0,1],"127":[0,1],"128":[0,1],"129":[0,1],"130":[0,1],"131":[0,1],"132":[0,1],"133":[0,1],"135":[0,1],"136":[1,0],"137":[1,0],"139":[0,1],"140":[0,1],"142":[1,0],"143":[1,0],"144":[1,0],"145":[1,0],"146":[1,0],"147":[1,0],"148":[1,0],"149":[1,0],"150":[1,0],"151":[1,0],"152":[1,0],"153":[1,0],"154":[1,0],"156":[0,1],"157":[1,0],"158":[1,0],"159":[1,0],"161":[1,0],"162":[1,0],"163":[1,0],"164":[1,0],"165":[0,1],"166":[0,1],"167":[0,1],"169":[1,0],"170":[1,0],"171":[1,0],"173":[1,0],"174":[1,0],"176":[1,0],"177":[0,1]},{}]', '[100,115,{"0":{"1":64,"2":37,"3":51,"4":95,"6":19,"7":114,"8":6,"12":57,"13":43,"16":1,"1080002":34,"1080003":69,"1080004":14,"1080005":40,"1080007":106,"1080009":98,"1080014":74,"1080017":48,"1080018":79,"1080019":81,"1080020":83,"1080021":85,"1080022":87,"1080033":28,"2070003":0},"1":{"8":68,"16":17,"1080006":2,"1080011":94,"1080014":24,"2070003":0},"2":{"2":3,"5":27,"2070003":0},"3":{"6":4,"12":5,"2070003":0},"6":{"1080014":7,"2070003":0},"7":{"12":8,"1080018":9,"1080019":10,"1080020":11,"1080021":12,"1080022":13,"2070003":0},"14":{"16":61,"1080003":15,"2070003":0},"15":{"16":16,"2070003":0},"17":{"8":18,"2070003":0},"19":{"8":22,"16":20,"1080012":113,"2070003":0},"20":{"8":21,"2070003":0},"22":{"8":23,"2070003":0},"24":{"4":26,"16":25,"2070003":73},"28":{"1":29,"8":78,"1080002":31,"2070003":0},"29":{"8":30,"2070003":0},"31":{"9":32,"15":33,"2070003":0},"34":{"2":35,"9":103,"15":104,"2070003":0},"35":{"1":36,"2070003":0},"37":{"16":109,"1080002":105,"1080007":38,"1080011":97,"2070003":0},"38":{"1":39,"2070003":0},"40":{"1080007":41,"1080011":100,"2070003":0},"41":{"1":42,"2070003":0},"43":{"2":44,"2070003":0},"44":{"1080018":45,"1080019":46,"1080020":47,"2070003":0},"48":{"4":111,"8":54,"18":110,"1080003":49,"1080011":101,"1080012":112,"2070003":0},"49":{"16":50,"2070003":0},"51":{"8":63,"13":52,"2070003":0},"52":{"1080017":53,"2070003":0},"54":{"4":55,"1080012":56,"2070003":0},"57":{"17":58,"2070003":0},"58":{"12":59,"2070003":0},"64":{"1":66,"3":67,"16":65,"2070003":0},"69":{"1":71,"8":70,"12":72,"1080011":102,"2070003":0},"74":{"2":75,"13":77,"1080005":76,"2070003":0},"79":{"8":89,"1080004":80,"2070003":0},"81":{"8":90,"1080004":82,"2070003":0},"83":{"8":91,"1080004":84,"2070003":0},"85":{"8":92,"1080004":86,"2070003":0},"87":{"8":93,"1080004":88,"2070003":0},"95":{"1080011":96,"2070003":0},"98":{"1080011":99,"2070003":0},"106":{"8":108,"1080005":107,"2070003":0},"114":{"8":115,"2070003":0}},{"4":"-3","5":"-3","8":"-11","9":"-11","10":"-11","11":"-11","12":"-11","13":"-11","16":"-16","18":"1","21":"1","23":"1","25":"-11","26":"-11","27":"-3","30":"6","32":"-2","33":"-2","36":"-3","39":"-1","42":"-1","45":"18","46":"18","47":"18","50":"-18","53":"-18","55":"-18","56":"-18","59":"-12","60":"-18","61":"-8","62":"1","63":"16","65":"3","66":"3","67":"3","68":"3","70":"-2","71":"-2","72":"-2","73":"-18","75":"-11","76":"-11","77":"-11","78":"6","80":"-16","82":"-16","84":"-16","86":"-16","88":"-16","89":"16","90":"16","91":"16","92":"16","93":"16","94":"-11","96":"-11","97":"-11","99":"-11","100":"-11","101":"-11","102":"-16","103":"-3","104":"-3","105":"-3","107":"-1","108":"-1","109":"18","110":"-18","111":"-18","112":"-18","113":"8","115":"16"},{"4":[1,2],"5":[1,2],"8":[1,1],"9":[1,1],"10":[1,1],"11":[1,1],"12":[1,1],"13":[1,1],"16":[0,2],"18":[1,1],"21":[1,1],"23":[1,1],"25":[1,1],"26":[1,1],"27":[1,1],"30":[0,2],"32":[1,1],"33":[1,1],"36":[0,2],"39":[1,1],"42":[1,1],"45":[1,1],"46":[1,1],"47":[1,1],"50":[0,2],"53":[2,0],"55":[0,2],"56":[0,2],"59":[1,1],"60":[1,0],"61":[0,1],"62":[0,1],"63":[1,0],"65":[0,1],"66":[0,1],"67":[0,1],"68":[1,0],"70":[0,1],"71":[0,1],"72":[0,1],"73":[1,0],"75":[0,1],"76":[0,1],"77":[0,1],"78":[0,1],"80":[1,0],"82":[1,0],"84":[1,0],"86":[1,0],"88":[1,0],"89":[1,0],"90":[1,0],"91":[1,0],"92":[1,0],"93":[1,0],"94":[1,0],"96":[1,0],"97":[1,0],"99":[1,0],"100":[1,0],"101":[1,0],"102":[1,0],"103":[0,1],"104":[0,1],"105":[1,0],"107":[0,1],"108":[0,1],"109":[0,1],"110":[0,1],"111":[0,1],"112":[0,1],"113":[1,0],"115":[1,0]},{}]']; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-pos-model.js +var require_load_pos_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-pos-model.js"(exports2, module2) { + var transformers = require_pos_transformers(); + var setter = require_pos_setter(); + var updater = require_pos_updater(); + var machines = require_eng_pos_model(); + var loadNERModel = function() { + return { machines, setter, updater, transformers }; + }; + module2.exports = loadNERModel; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/negation-setter.js +var require_negation_setter = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/negation-setter.js"(exports2, module2) { + var setter = function(px, dd, constants, search) { + const getProperty = dd.cache.property; + let dnf = 0, k = 0; + for (; k < px.length; ) + if ("2" === px[k][2]) + k += 1; + else { + const snf = px[k][1] + 1, negSId = search(px[k][1], dd.sentences); + let tna = dd.sentences[negSId][1]; + dd.sentences[negSId][2] = 1, dnf = 1, k += 1, k < px.length ? tna = tna < px[k][0] ? tna : px[k][0] : tna += 1; + for (let i = snf; i < tna; i += 1) { + const tt = getProperty(dd.tokens[i * constants.tkSize], "tokenType"); + "punctuation" !== tt && "emoji" !== tt && "emoticon" !== tt && (dd.tokens[i * constants.tkSize + 3] = constants.negationFlag); + } + } + dd.document[2] = dnf; + }; + module2.exports = setter; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-negation-model.json +var require_eng_negation_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-negation-model.json"(exports2, module2) { + module2.exports = ['[100,127,{"0":{"5":111,"43":113,"46":108,"49":109,"197":110,"214":112,"2699":114,"5231":53,"7484":117,"10900":116,"12549":81,"12553":84,"25000":103,"27138":118,"27985":67,"27986":69,"27987":71,"27990":73,"32628":1,"34487":105,"36526":119,"38042":65,"46237":92,"47454":94,"50426":101,"50691":96,"50694":120,"51014":89,"51297":97,"51568":102,"51677":45,"59576":104,"62229":106,"65899":75,"65900":79,"65904":77,"66992":107,"70947":121,"73207":122,"77479":123,"81702":124,"81714":63,"82584":125,"85516":126,"86112":50,"86837":127,"2070003":0},"1":{"47":2,"51":26,"51014":34,"87219":10,"87220":18,"2070003":0},"2":{"51014":3,"2070003":0},"3":{"47":4,"32628":41,"87219":6,"87220":8,"2070003":0},"4":{"32628":5,"2070003":0},"6":{"32628":7,"2070003":0},"8":{"32628":9,"2070003":0},"10":{"51014":11,"2070003":0},"11":{"47":12,"32628":42,"87219":14,"87220":16,"2070003":0},"12":{"32628":13,"2070003":0},"14":{"32628":15,"2070003":0},"16":{"32628":17,"2070003":0},"18":{"51014":19,"2070003":0},"19":{"47":20,"32628":43,"87219":22,"87220":24,"2070003":0},"20":{"32628":21,"2070003":0},"22":{"32628":23,"2070003":0},"24":{"32628":25,"2070003":0},"26":{"51014":27,"2070003":0},"27":{"47":28,"32628":44,"87219":30,"87220":32,"2070003":0},"28":{"32628":29,"2070003":0},"30":{"32628":31,"2070003":0},"32":{"32628":33,"2070003":0},"34":{"47":35,"32628":62,"87219":37,"87220":39,"2070003":0},"35":{"32628":36,"2070003":0},"37":{"32628":38,"2070003":0},"39":{"32628":40,"2070003":0},"45":{"12924":48,"41435":88,"52716":87,"78040":46,"2070003":98},"46":{"46776":47,"2070003":0},"48":{"37486":49,"2070003":0},"50":{"31190":51,"2070003":100},"51":{"1432":52,"2070003":0},"53":{"32791":54,"44355":58,"49203":56,"71336":60,"2070003":115},"54":{"5231":55,"2070003":0},"56":{"5231":57,"2070003":0},"58":{"5231":59,"2070003":0},"60":{"5231":61,"2070003":0},"63":{"78040":64,"2070003":0},"65":{"78040":66,"2070003":0},"67":{"78040":68,"2070003":0},"69":{"78040":70,"2070003":0},"71":{"78040":72,"2070003":0},"73":{"78040":74,"2070003":0},"75":{"53385":76,"2070003":0},"77":{"53385":78,"2070003":0},"79":{"53385":80,"2070003":0},"81":{"30075":82,"52424":83,"2070003":0},"84":{"30075":85,"52424":86,"2070003":0},"89":{"31190":91,"86214":90,"2070003":99},"92":{"51677":93,"2070003":0},"94":{"51677":95,"2070003":0}},{"5":"0","7":"0","9":"0","13":"0","15":"0","17":"0","21":"0","23":"0","25":"0","29":"0","31":"0","33":"0","36":"0","38":"0","40":"0","41":"0","42":"0","43":"0","44":"0","47":"0","49":"0","52":"0","55":"0","57":"0","59":"0","61":"0","62":"0","64":"1","66":"1","68":"1","70":"1","72":"1","74":"1","76":"1","78":"1","80":"1","82":"2","83":"2","85":"2","86":"2","87":"0","88":"0","90":"0","91":"0","93":"0","95":"0","96":"1","97":"1","98":"1","99":"1","100":"1","101":"1","102":"1","103":"1","104":"1","105":"1","106":"1","107":"1","108":"2","109":"2","110":"2","111":"2","112":"2","113":"2","114":"2","115":"2","116":"2","117":"2","118":"2","119":"2","120":"2","121":"2","122":"2","123":"2","124":"2","125":"2","126":"2","127":"2"},{},{}]']; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-negation-model.js +var require_load_negation_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-negation-model.js"(exports2, module2) { + var setter = require_negation_setter(); + var machines = require_eng_negation_model(); + var loadNERModel = function() { + return { machines, setter }; + }; + module2.exports = loadNERModel; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/sa-setter.js +var require_sa_setter = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/sa-setter.js"(exports2, module2) { + var setter = function(px, rdd, constants, locate) { + const tkSize = constants.tkSize; + let dss = 0, k = 0; + for (; k < px.length; ) { + const sid = Math.ceil(locate(px[k][0], rdd.sentences)), kend = Math.floor(locate(rdd.sentences[sid][1], px)); + let sss = 0; + for (let i = k; i <= kend; i += 1) + px[i][2] = +px[i][2] / 1e3, rdd.tokens[px[i][0] * tkSize + 3] >= constants.negationFlag ? sss -= px[i][2] : sss += px[i][2]; + rdd.sentences[sid][3] = sss / (kend - k + 1), dss += rdd.sentences[sid][3], k = kend + 1; + } + rdd.document[3] = dss / rdd.numOfSentences; + }; + module2.exports = setter; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-sa-model.json +var require_eng_sa_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-sa-model.json"(exports2, module2) { + module2.exports = ['[100,12059,{"0":{"41":12021,"42":12019,"44":12022,"45":12020,"53":907,"55":933,"88":911,"114":915,"121":919,"125":938,"137":925,"141":929,"146":12017,"147":12018,"148":11990,"149":12048,"150":11989,"151":12036,"152":12037,"153":12038,"154":12039,"155":12040,"156":12041,"157":12042,"158":12043,"159":12044,"160":11998,"161":12000,"162":12045,"163":12046,"164":12047,"165":11999,"166":12028,"167":12029,"168":12030,"169":12031,"170":12032,"171":12033,"172":12034,"173":12035,"174":12007,"175":12012,"176":12006,"177":12005,"178":12003,"179":12002,"180":12008,"181":12009,"182":12011,"183":12010,"184":12001,"185":12004,"186":11996,"187":11993,"188":11997,"189":11992,"190":12013,"191":12014,"192":12016,"193":12015,"194":11995,"195":11991,"196":11994,"198":12025,"199":12024,"200":12049,"201":12050,"202":12023,"203":12026,"204":12027,"205":12051,"206":12052,"207":12053,"208":12054,"209":12055,"210":12056,"211":12057,"212":12058,"213":12059,"219":3075,"258":9156,"259":9157,"262":9158,"264":4742,"267":4743,"319":9159,"321":9160,"322":9161,"340":6789,"351":4744,"352":9162,"353":4745,"354":4746,"357":9163,"365":9164,"366":9165,"395":1519,"403":7267,"409":3865,"413":8175,"414":9166,"435":4747,"436":4748,"437":4749,"445":9167,"454":9168,"457":5884,"460":7268,"466":7269,"480":8176,"482":8177,"484":7270,"516":2700,"519":9169,"521":9170,"535":9171,"536":9172,"538":9173,"539":9174,"545":9175,"551":7271,"594":5885,"596":6198,"598":6790,"599":9176,"602":9177,"603":9178,"604":6791,"683":7272,"701":9179,"702":6199,"703":1734,"704":6201,"705":7273,"706":9180,"707":7274,"709":9181,"710":9182,"713":9183,"715":6202,"718":6203,"737":9184,"738":9185,"739":9186,"740":9187,"742":6204,"743":9188,"744":7275,"759":7276,"760":7277,"764":6205,"769":7278,"779":9189,"780":7279,"781":9190,"782":9191,"784":9192,"785":9193,"788":6206,"791":7280,"821":6207,"851":5683,"853":8178,"854":8179,"855":8180,"857":9194,"858":9195,"862":9196,"863":9197,"865":9198,"866":9199,"871":6208,"881":6792,"883":6793,"928":6794,"935":7281,"945":6795,"956":5886,"964":5887,"969":6796,"994":5888,"995":5889,"1016":6797,"1039":7282,"1042":7283,"1055":9200,"1056":9201,"1059":9202,"1060":9203,"1070":9204,"1071":6798,"1115":2703,"1153":7284,"1163":9205,"1179":3431,"1205":1252,"1222":6799,"1227":7285,"1233":7286,"1255":7287,"1263":6800,"1270":7288,"1305":4492,"1307":7289,"1308":3295,"1309":6210,"1310":6211,"1332":8181,"1364":7290,"1374":6212,"1382":6213,"1392":6214,"1393":4344,"1394":6215,"1395":4493,"1398":4494,"1399":4495,"1400":5684,"1403":9206,"1404":9207,"1405":6216,"1407":6217,"1410":7291,"1411":9208,"1412":9209,"1413":5685,"1415":9210,"1417":5686,"1421":9211,"1422":9212,"1424":8182,"1440":9213,"1441":5687,"1448":9214,"1450":5688,"1453":4496,"1454":9215,"1455":7292,"1457":9216,"1458":4497,"1459":9217,"1461":6218,"1475":7293,"1477":7294,"1483":5211,"1521":9218,"1525":7295,"1526":5689,"1527":7296,"1528":5690,"1530":9219,"1539":9220,"1541":9221,"1547":9222,"1553":9223,"1555":8183,"1561":7297,"1562":7298,"1581":6219,"1583":7299,"1601":5404,"1695":7300,"1696":6220,"1710":8184,"1712":5212,"1720":9224,"1725":4498,"1726":4499,"1727":4500,"1728":6221,"1729":4501,"1730":3867,"1749":7301,"1751":4502,"1754":6222,"1766":5405,"1767":9225,"1769":5406,"1770":5407,"1772":5213,"1773":7302,"1775":9226,"1787":9227,"1796":9228,"1814":4404,"1850":8185,"1870":7303,"1904":7304,"1905":7305,"1907":7306,"1920":4750,"1921":3358,"1922":9229,"1923":9230,"1925":4752,"1926":6801,"1935":4405,"1936":9231,"1937":9232,"1939":4753,"1941":4754,"1945":8186,"1946":7307,"1956":8187,"1958":8188,"1963":7308,"1965":8189,"1979":5691,"1985":6802,"1986":5890,"1987":9233,"1988":8190,"1994":6803,"1995":5891,"1996":9234,"1997":8191,"2006":8192,"2013":9235,"2014":6223,"2015":6224,"2016":5214,"2017":7309,"2018":9236,"2021":9237,"2023":9238,"2078":6804,"2081":8193,"2091":8194,"2131":8195,"2173":7310,"2210":4406,"2211":4755,"2212":6805,"2214":8196,"2215":9239,"2216":9240,"2218":8197,"2221":5892,"2255":8198,"2305":4756,"2340":5893,"2347":8199,"2357":5894,"2373":6806,"2374":9241,"2393":6225,"2394":6226,"2407":9242,"2414":8200,"2450":1881,"2460":9243,"2461":9244,"2468":6227,"2489":9245,"2495":5215,"2574":9246,"2591":6228,"2601":9247,"2624":9248,"2633":8201,"2663":7311,"2681":5692,"2715":9249,"2752":7312,"2753":7313,"2770":8202,"2772":5895,"2775":4503,"2777":4504,"2781":9250,"2782":9251,"2784":9252,"2785":9253,"2812":9254,"2817":9255,"2836":8203,"2839":6807,"2840":6808,"2869":5693,"2870":7314,"2878":5216,"2886":7315,"2888":7316,"2912":6229,"2913":5217,"2917":4505,"2969":6809,"3000":4757,"3011":6810,"3018":4345,"3122":4758,"3126":9256,"3127":6230,"3128":9257,"3129":9258,"3131":6231,"3133":5694,"3151":6811,"3157":3304,"3182":6812,"3189":8204,"3244":8205,"3300":8206,"3316":8207,"3318":8208,"3345":7317,"3351":8209,"3355":5695,"3405":6813,"3419":8210,"3421":8211,"3453":6232,"3455":6233,"3461":4407,"3462":4759,"3464":9259,"3468":8212,"3469":8213,"3470":8214,"3531":4760,"3533":4761,"3538":5408,"3539":5896,"3560":5409,"3574":6234,"3579":7318,"3591":9260,"3621":8215,"3648":8216,"3666":4762,"3667":4408,"3668":4409,"3670":4763,"3672":9261,"3766":7319,"3783":9262,"3816":8217,"3838":6235,"3839":6236,"3902":9263,"3987":9264,"4021":6237,"4050":6238,"4051":6239,"4055":7320,"4060":3869,"4075":4764,"4132":7321,"4154":4765,"4167":3555,"4168":3872,"4169":4767,"4170":4768,"4173":3063,"4190":3874,"4197":7322,"4201":9265,"4203":6814,"4219":9266,"4226":8220,"4240":8221,"4271":7323,"4280":8222,"4281":9267,"4282":6815,"4287":7324,"4290":7325,"4292":7326,"4311":9268,"4312":9269,"4313":9270,"4314":9271,"4316":9272,"4317":9273,"4318":9274,"4319":9275,"4321":9276,"4374":4769,"4377":4770,"4378":8223,"4379":9277,"4398":9278,"4408":6240,"4409":9279,"4410":9280,"4413":9281,"4414":7327,"4415":8224,"4443":7328,"4451":7329,"4454":6241,"4455":5218,"4456":9282,"4458":9283,"4459":9284,"4460":7330,"4472":7331,"4477":7332,"4479":7333,"4502":7334,"4506":6242,"4507":5696,"4517":6243,"4520":9285,"4521":9286,"4522":9287,"4523":9288,"4524":9289,"4526":4506,"4527":4507,"4535":4410,"4536":4771,"4537":4772,"4538":4773,"4550":6244,"4551":6245,"4555":7335,"4556":6246,"4557":4508,"4558":4509,"4560":5697,"4562":9290,"4563":7336,"4569":4346,"4571":4510,"4572":4511,"4574":9291,"4575":4512,"4576":6247,"4598":7337,"4610":6248,"4612":7338,"4651":7339,"4690":7340,"4853":9292,"4855":4513,"4856":4514,"4947":7341,"4989":3876,"5014":8225,"5073":9293,"5074":9294,"5077":9295,"5092":9296,"5107":8226,"5151":8227,"5210":7342,"5220":2290,"5231":572,"5245":7343,"5248":7344,"5251":7345,"5253":7346,"5257":7347,"5260":7348,"5294":6249,"5305":7349,"5311":9297,"5312":4774,"5389":7350,"5399":7351,"5404":9298,"5407":8228,"5415":6816,"5418":6817,"5419":9299,"5420":8229,"5421":9300,"5424":8230,"5425":9301,"5442":7352,"5444":5698,"5448":7353,"5449":7354,"5460":7355,"5468":9302,"5469":9303,"5475":9304,"5476":5897,"5480":6250,"5503":3878,"5507":6251,"5514":7356,"5527":5219,"5535":7357,"5541":5898,"5543":5410,"5550":4347,"5551":6252,"5556":7358,"5579":8231,"5592":9305,"5596":9306,"5597":9307,"5598":9308,"5599":9309,"5600":9310,"5608":8232,"5644":6253,"5656":5411,"5673":1123,"5765":6818,"5767":6819,"5769":6820,"5778":5899,"5786":4775,"5790":9311,"5794":5412,"5801":7359,"5808":3880,"5809":9313,"5811":8233,"5812":9314,"5822":6821,"5862":6254,"5875":9315,"5877":9316,"5879":9317,"5880":9318,"5881":9319,"5882":6255,"5883":9320,"5884":9321,"5886":9322,"5895":8234,"5898":7360,"5915":9323,"5979":9324,"6016":5220,"6018":7361,"6069":9325,"6102":8235,"6109":6256,"6113":7362,"6115":7363,"6116":7364,"6197":7365,"6223":9326,"6224":9327,"6225":9328,"6226":9329,"6227":9330,"6228":9331,"6235":1731,"6244":4776,"6246":9332,"6247":7366,"6248":9333,"6249":7367,"6251":9334,"6262":4515,"6263":4516,"6265":4517,"6280":9335,"6281":7368,"6283":9336,"6285":9337,"6288":7369,"6290":7370,"6300":9338,"6301":9339,"6303":9340,"6310":9341,"6311":9342,"6313":9343,"6314":6257,"6319":1896,"6320":7371,"6324":6258,"6327":9344,"6332":6259,"6333":4411,"6346":8236,"6351":9345,"6352":9346,"6353":7372,"6411":8237,"6412":7373,"6433":7374,"6504":9347,"6521":8238,"6523":9348,"6540":9349,"6564":8239,"6572":5413,"6614":1021,"6615":9351,"6623":6822,"6625":9352,"6629":9353,"6633":8240,"6681":9354,"6705":9355,"6732":5414,"6750":1901,"6788":2178,"6789":6823,"6819":9356,"6820":9357,"6821":9358,"6822":9359,"6866":6824,"6868":6825,"6870":1524,"6882":9360,"6892":5221,"6900":6260,"6901":9361,"6905":9362,"6906":9363,"6907":5222,"6926":6261,"6954":9364,"6955":6826,"6963":9365,"6996":2183,"7013":9366,"7029":8241,"7074":6262,"7114":9367,"7151":5900,"7221":5415,"7232":5901,"7233":9368,"7295":8242,"7313":3559,"7316":9369,"7325":9370,"7329":9371,"7355":3361,"7357":3363,"7383":977,"7399":7375,"7404":7376,"7414":4518,"7415":5223,"7448":8243,"7451":2710,"7453":2715,"7455":6263,"7457":6264,"7459":9373,"7465":5224,"7466":7377,"7468":9374,"7472":5225,"7473":9375,"7474":9376,"7476":9377,"7496":5226,"7504":4777,"7568":3653,"7573":2296,"7610":9378,"7612":7378,"7632":8245,"7658":8246,"7659":4778,"7661":4519,"7662":4520,"7693":8247,"7715":7379,"7764":9379,"7765":9380,"7782":4779,"7783":4780,"7784":4781,"7785":4782,"7795":1906,"7796":8248,"7808":4521,"7813":7380,"7834":8249,"7853":6828,"7861":9381,"7862":9382,"7864":4522,"7867":4523,"7868":4524,"7869":4525,"7870":4526,"7875":6265,"7878":9383,"7879":9384,"7880":9385,"7881":4527,"7882":4348,"7883":4528,"7890":5227,"7934":5902,"7937":5416,"7939":9386,"7940":4783,"7941":5903,"7942":9387,"7943":9388,"7944":4784,"7949":8250,"7965":8251,"7966":8252,"7981":8253,"8001":2301,"8035":5904,"8038":5417,"8039":9389,"8040":9390,"8042":9391,"8043":9392,"8046":7381,"8049":1529,"8052":7383,"8081":8254,"8085":4529,"8113":9393,"8114":9394,"8190":7384,"8207":8255,"8220":4295,"8234":7385,"8276":6829,"8277":6830,"8317":7386,"8342":7387,"8351":1127,"8407":3888,"8534":8256,"8561":9396,"8563":9397,"8566":5418,"8582":9398,"8584":9399,"8586":9400,"8588":4412,"8591":6831,"8616":9401,"8632":1256,"8660":6832,"8671":9402,"8672":9403,"8674":9404,"8675":9405,"8690":3892,"8705":9406,"8706":6833,"8707":5419,"8708":6834,"8709":5420,"8710":9407,"8711":5421,"8715":9408,"8717":5422,"8718":9409,"8730":6266,"8738":8257,"8741":8258,"8792":6267,"8830":5423,"8831":5424,"8833":8259,"8845":9410,"8846":6268,"8849":9411,"8850":9412,"8851":9413,"8852":5699,"8856":3229,"8863":3894,"8873":5905,"8890":9415,"8891":5229,"8897":9416,"8898":4530,"8899":4531,"8902":5230,"8904":8260,"8906":8261,"8910":9417,"8920":9418,"8921":9419,"8925":9420,"8927":9421,"8931":5425,"8933":9422,"8935":9423,"8946":3896,"8952":5426,"8982":9424,"9006":608,"9018":3226,"9047":1691,"9079":3561,"9102":9425,"9110":8262,"9113":8263,"9114":8264,"9136":9426,"9158":8265,"9184":8266,"9190":4785,"9204":5700,"9216":5427,"9238":9427,"9242":9428,"9258":3899,"9260":3901,"9276":8269,"9287":9429,"9340":5428,"9368":5231,"9373":5232,"9381":6269,"9382":6835,"9386":3903,"9409":7388,"9438":7389,"9442":8270,"9443":6836,"9445":6837,"9446":9430,"9447":9431,"9449":9432,"9450":9433,"9501":7390,"9507":9434,"9510":9435,"9515":9436,"9518":7391,"9554":7392,"9556":5233,"9574":3905,"9575":8272,"9584":4413,"9586":9437,"9588":9438,"9589":4786,"9609":3660,"9646":3662,"9653":5234,"9654":6270,"9660":7393,"9662":6838,"9668":7394,"9672":7395,"9720":6271,"9743":8273,"9754":9439,"9755":9440,"9756":9441,"9757":9442,"9802":6272,"9807":8274,"9820":5235,"9846":5906,"9859":9443,"9876":3907,"9905":5907,"9927":6839,"9929":6840,"9933":9444,"9936":9445,"9937":9446,"9942":7396,"9945":6841,"9955":2316,"9963":2724,"9964":9448,"9965":9449,"9966":9450,"9983":1266,"9984":6843,"10001":9451,"10042":7397,"10096":9452,"10097":9453,"10100":9454,"10101":9455,"10121":7398,"10150":2321,"10156":9457,"10158":9458,"10161":5236,"10162":9459,"10164":6273,"10178":3667,"10197":9460,"10276":6844,"10277":9461,"10278":5908,"10279":4787,"10303":8275,"10310":8276,"10322":4414,"10326":9462,"10330":6845,"10342":4532,"10343":4533,"10355":3910,"10372":8277,"10386":8278,"10393":3443,"10402":5909,"10403":5910,"10408":9463,"10420":9464,"10463":3096,"10469":3913,"10513":6846,"10516":3915,"10527":7399,"10558":7400,"10583":3124,"10614":8279,"10617":9465,"10620":5701,"10624":7401,"10629":9466,"10637":5237,"10639":9467,"10653":9468,"10655":3231,"10672":7402,"10695":8280,"10717":7403,"10727":9469,"10728":9470,"10729":9471,"10731":9472,"10733":6847,"10754":9473,"10759":9474,"10768":6848,"10788":1776,"10803":2326,"10826":3917,"10883":6849,"10892":7404,"10949":7405,"10952":7406,"10987":1617,"10995":5911,"11032":5429,"11090":6850,"11093":8281,"11094":8282,"11095":8283,"11105":8284,"11109":5430,"11115":7407,"11117":7408,"11155":8285,"11156":8286,"11161":6274,"11167":6275,"11189":6851,"11306":5431,"11317":1033,"11337":7409,"11338":7410,"11350":6852,"11351":5432,"11354":3098,"11355":9475,"11357":9476,"11360":9477,"11366":8287,"11378":8288,"11379":5433,"11380":5434,"11488":2331,"11519":6853,"11525":9479,"11534":9480,"11535":9481,"11537":9482,"11538":3921,"11641":7411,"11665":7412,"11670":6276,"11674":8289,"11698":6277,"11721":9484,"11722":9485,"11723":6278,"11724":7413,"11725":7414,"11751":3923,"11830":4534,"11831":4350,"11833":4535,"11835":4536,"11836":7415,"11948":2336,"11988":9486,"11998":9487,"12000":9488,"12001":9489,"12002":9490,"12005":9491,"12009":9492,"12028":8290,"12038":4537,"12051":5435,"12110":6279,"12138":1385,"12146":1134,"12216":755,"12218":7416,"12239":3037,"12265":3126,"12272":5436,"12295":9493,"12301":8291,"12317":5912,"12318":5913,"12383":9494,"12385":8292,"12392":6854,"12400":7417,"12462":7418,"12479":6280,"12508":5437,"12543":7419,"12549":1622,"12575":7420,"12579":8293,"12633":1141,"12643":5914,"12670":9495,"12671":5238,"12673":9496,"12674":9497,"12675":9498,"12676":9499,"12691":6281,"12739":9500,"12740":9501,"12743":8294,"12744":9502,"12746":5438,"12804":7421,"12813":7422,"12924":9503,"12929":7423,"12932":6282,"12939":7424,"12996":4415,"12997":6855,"13009":4788,"13010":4789,"13013":7425,"13054":9504,"13087":6283,"13088":9505,"13090":9506,"13093":7426,"13096":9507,"13097":8295,"13103":9508,"13160":9509,"13161":9510,"13201":7427,"13209":8296,"13212":3563,"13216":5915,"13217":9511,"13220":9512,"13229":3007,"13230":5702,"13231":4538,"13241":9514,"13242":4351,"13244":7428,"13245":9515,"13246":9516,"13248":5440,"13265":6284,"13282":6285,"13288":5916,"13289":9517,"13291":9518,"13292":9519,"13332":8297,"13336":3234,"13337":9521,"13338":9522,"13339":9523,"13341":9524,"13342":9525,"13374":8298,"13377":5917,"13379":3060,"13380":9526,"13382":4539,"13383":4540,"13384":4541,"13387":7429,"13388":4542,"13392":4790,"13393":4791,"13394":4792,"13395":9527,"13396":5239,"13435":3925,"13470":9528,"13471":5703,"13472":9529,"13473":9530,"13482":5240,"13485":3673,"13488":3928,"13496":8299,"13502":4793,"13503":4794,"13505":3366,"13506":6286,"13511":3369,"13526":6287,"13528":6856,"13534":3566,"13550":5918,"13551":9531,"13552":9532,"13553":9533,"13554":7430,"13569":2346,"13575":9534,"13580":7431,"13599":8300,"13600":4795,"13635":5441,"13652":6857,"13653":3934,"13660":5241,"13670":3100,"13685":6288,"13688":7432,"13692":7433,"13718":6289,"13727":4796,"13729":4797,"13788":7434,"13793":9535,"13795":9536,"13800":9537,"13802":9538,"13812":4798,"13815":4799,"13917":6290,"13922":7435,"13924":8301,"13925":6291,"13926":6292,"13994":7436,"14049":5442,"14051":3128,"14203":6293,"14208":7437,"14275":7438,"14289":7439,"14299":7440,"14329":5443,"14374":7441,"14382":9539,"14392":9540,"14396":6858,"14399":8302,"14402":3130,"14433":9541,"14452":6859,"14467":1199,"14468":7442,"14470":9543,"14475":6294,"14484":1914,"14544":6295,"14605":7443,"14655":5444,"14662":7444,"14665":7445,"14685":5919,"14686":6296,"14688":6297,"14694":3677,"14725":9544,"14730":7446,"14745":7447,"14746":7448,"14773":9545,"14781":8303,"14869":7449,"14888":6860,"14890":8304,"14922":7450,"14962":9546,"14995":9547,"14996":9548,"14997":7451,"15001":6861,"15002":9549,"15018":8305,"15073":9550,"15076":9551,"15089":1203,"15105":7452,"15111":5704,"15112":6298,"15113":6299,"15114":5705,"15120":6300,"15121":5706,"15125":5707,"15189":3568,"15190":8306,"15193":8307,"15196":8308,"15230":9552,"15231":9553,"15232":9554,"15234":9555,"15285":8309,"15287":9556,"15288":9557,"15300":9558,"15301":9559,"15320":9560,"15367":7453,"15400":7454,"15461":3570,"15467":9561,"15491":7455,"15497":3447,"15505":8310,"15506":9562,"15509":7456,"15510":5242,"15513":6301,"15522":9563,"15523":4353,"15524":4543,"15525":4544,"15528":4545,"15531":9564,"15533":6302,"15534":9565,"15572":9566,"15573":4546,"15574":6303,"15575":9567,"15610":8311,"15616":4800,"15618":4801,"15631":3937,"15633":9569,"15635":9570,"15637":7457,"15643":9571,"15652":2355,"15661":5243,"15662":5244,"15663":5245,"15722":7458,"15724":7459,"15725":6304,"15758":4802,"15759":9572,"15761":4803,"15763":6305,"15764":7460,"15768":9573,"15782":5708,"15783":9574,"15784":5709,"15785":6306,"15786":7461,"15791":9575,"15803":4547,"15804":4548,"15805":4549,"15807":9576,"15809":9577,"15811":8312,"15812":8313,"15813":9578,"15814":9579,"15815":8314,"15816":9580,"15818":6307,"15821":7462,"15832":7463,"15840":6863,"15842":6864,"15845":5710,"15846":8315,"15848":8316,"15850":9581,"15856":7464,"15858":9582,"15860":9583,"15894":7465,"15898":7466,"15900":7467,"15930":4804,"15951":6308,"15955":3449,"15977":6865,"16001":6309,"16021":9584,"16051":6310,"16052":9585,"16053":9586,"16054":9587,"16055":9588,"16056":6311,"16057":6312,"16059":7468,"16098":6313,"16103":4342,"16109":9589,"16110":5445,"16111":9590,"16112":5446,"16113":9591,"16114":5447,"16115":9592,"16123":6866,"16127":7469,"16133":6314,"16138":3132,"16139":5448,"16159":3939,"16160":2731,"16190":7471,"16192":7472,"16220":4354,"16221":4550,"16225":7473,"16241":7474,"16245":5711,"16246":5712,"16261":9593,"16263":9594,"16264":9595,"16265":9596,"16270":6315,"16276":5713,"16293":7475,"16294":9597,"16295":9598,"16299":4805,"16320":6316,"16345":9599,"16346":4355,"16349":9600,"16350":7476,"16351":5246,"16362":5714,"16364":5715,"16365":5247,"16366":5716,"16434":4806,"16464":5920,"16468":7477,"16471":7478,"16474":6317,"16475":6318,"16480":6319,"16482":6320,"16483":7479,"16485":7480,"16486":6321,"16487":9601,"16515":5717,"16518":7481,"16534":6322,"16539":8318,"16542":4551,"16554":6323,"16566":9602,"16575":8319,"16585":4807,"16588":9603,"16606":9604,"16608":7482,"16626":6324,"16628":7483,"16664":5248,"16665":6325,"16677":9605,"16678":9606,"16679":9607,"16693":9608,"16694":9609,"16695":9610,"16696":9611,"16697":9612,"16698":9613,"16699":9614,"16700":9615,"16702":4808,"16719":2734,"16720":5921,"16721":5922,"16723":5923,"16724":9616,"16725":5449,"16726":9617,"16728":9618,"16730":9619,"16732":4356,"16733":4552,"16737":9620,"16739":4553,"16743":9621,"16802":5450,"16806":6326,"16810":7484,"16822":8320,"16875":4809,"16877":4810,"16878":4811,"16887":6327,"16894":9622,"16896":9623,"16897":9624,"16898":9625,"16905":5924,"16940":7485,"16950":7486,"16963":3941,"16986":5451,"16987":9626,"16993":7487,"16994":4554,"16995":9627,"17000":6328,"17041":2737,"17080":5718,"17087":5719,"17092":5720,"17093":5721,"17101":7488,"17108":8321,"17137":7489,"17139":7490,"17146":7491,"17156":7492,"17181":3681,"17219":5249,"17241":9629,"17272":8322,"17300":9630,"17313":4357,"17314":6330,"17320":5250,"17321":6331,"17322":7493,"17323":6332,"17349":5722,"17355":5723,"17356":5724,"17367":9631,"17368":9632,"17370":7494,"17372":9633,"17373":9634,"17377":9635,"17409":7495,"17433":7496,"17474":2360,"17490":9636,"17501":5251,"17548":1,"17602":5725,"17640":8323,"17659":8324,"17712":2192,"17718":7497,"17722":6333,"17723":1781,"17734":9637,"17735":9638,"17736":9639,"17737":9640,"17751":4555,"17754":9641,"17757":5726,"17761":6334,"17764":5727,"17774":5252,"17775":5253,"17789":3039,"17800":4812,"17811":9642,"17814":9643,"17862":6867,"17868":9644,"17877":5925,"17878":8325,"17881":8326,"17883":5926,"17888":6335,"17889":6868,"17894":7498,"17896":5254,"17917":6336,"17918":6337,"17933":9645,"17973":9646,"17981":5452,"17988":9647,"17994":5453,"18005":8327,"18026":5927,"18027":9648,"18028":9649,"18031":3946,"18062":3451,"18064":6339,"18065":6340,"18083":7499,"18085":5255,"18087":7500,"18093":5728,"18109":4813,"18110":6870,"18142":6871,"18152":9650,"18157":8328,"18176":9651,"18178":9652,"18179":9653,"18180":9654,"18181":3948,"18183":6872,"18196":9656,"18197":9657,"18198":9658,"18199":9659,"18200":8329,"18201":8330,"18209":4814,"18212":7501,"18216":8331,"18220":8332,"18224":8333,"18229":9660,"18256":9661,"18261":9662,"18262":9663,"18263":9664,"18264":9665,"18265":9666,"18267":9667,"18268":9668,"18269":9669,"18270":9670,"18271":9671,"18272":9672,"18278":8334,"18280":8335,"18288":3371,"18293":3236,"18305":8336,"18310":8337,"18311":8338,"18348":8339,"18393":8340,"18412":9673,"18444":9674,"18449":6873,"18450":1270,"18455":4815,"18456":5928,"18457":4816,"18501":9675,"18502":9676,"18504":9677,"18505":9678,"18521":9679,"18525":9680,"18636":5454,"18640":2742,"18694":5455,"18703":7502,"18705":7503,"18725":9681,"18740":3950,"18754":5729,"18756":9682,"18757":2367,"18783":8343,"18785":7504,"18797":5730,"18812":6341,"18830":9683,"18846":5456,"18866":3574,"18867":3952,"18895":7505,"18934":5929,"18959":3685,"18963":9685,"18964":9686,"18966":6342,"18986":9687,"18987":6343,"18990":2370,"19100":9689,"19101":4817,"19103":9690,"19270":6874,"19306":6875,"19307":9691,"19308":9692,"19309":4818,"19320":3041,"19324":5930,"19325":9694,"19328":5931,"19329":9695,"19355":6344,"19370":5256,"19375":3576,"19376":5932,"19377":9697,"19387":5457,"19398":7506,"19414":8345,"19439":6876,"19441":1784,"19442":6877,"19443":8346,"19444":5458,"19447":9698,"19448":5459,"19449":5933,"19451":9699,"19453":7507,"19479":6345,"19491":8347,"19492":6878,"19493":8348,"19521":8349,"19523":8350,"19559":7508,"19560":4819,"19566":9700,"19589":1919,"19594":9702,"19603":9703,"19605":9704,"19610":590,"19613":9705,"19614":5934,"19633":6346,"19636":9706,"19640":3957,"19647":9708,"19676":3688,"19679":8351,"19688":5731,"19689":5732,"19693":7509,"19700":9709,"19774":5460,"19775":5461,"19781":9710,"19782":9711,"19785":5462,"19786":9712,"19788":9713,"19789":9714,"19790":6880,"19802":4358,"19815":9715,"19816":9716,"19817":6881,"19825":5733,"19858":9717,"19861":3454,"19873":7510,"19954":6347,"19963":5257,"19964":6348,"19965":5734,"19968":5735,"20000":6882,"20014":6349,"20017":9718,"20027":6350,"20064":5463,"20072":3964,"20078":9719,"20079":4820,"20089":5464,"20093":9720,"20098":9721,"20104":8353,"20111":9722,"20112":9723,"20118":9724,"20120":8354,"20127":9725,"20129":6351,"20130":6352,"20136":9726,"20142":9727,"20148":9729,"20149":3578,"20150":4821,"20151":9730,"20161":7511,"20163":7512,"20170":7513,"20207":9731,"20209":9732,"20210":9733,"20212":9734,"20216":9735,"20225":5736,"20228":9736,"20253":9737,"20254":9738,"20256":9739,"20275":9740,"20276":9741,"20277":9742,"20278":9743,"20309":4822,"20310":9744,"20312":4823,"20313":9745,"20315":9746,"20329":9747,"20330":9748,"20335":9749,"20345":8355,"20353":7514,"20366":6353,"20369":9750,"20370":4556,"20372":5258,"20373":9751,"20374":9752,"20375":9753,"20400":1924,"20401":7515,"20402":5259,"20421":5465,"20431":7516,"20445":9754,"20446":9755,"20448":9756,"20450":9757,"20462":5935,"20464":4824,"20524":6354,"20561":8356,"20582":9758,"20584":3302,"20590":4825,"20595":4826,"20596":9759,"20597":9760,"20598":9761,"20601":5466,"20657":7517,"20669":9762,"20670":9763,"20671":9764,"20672":9765,"20673":9766,"20674":9767,"20676":5467,"20678":5468,"20679":5469,"20704":9768,"20707":9769,"20718":9770,"20719":3966,"20743":9771,"20744":9772,"20779":5737,"20780":4359,"20781":5738,"20791":3968,"20796":3971,"20808":8357,"20821":4827,"20822":4828,"20823":9773,"20824":9774,"20825":9775,"20826":9776,"20845":9777,"20846":9781,"20847":9782,"20848":9778,"20850":9779,"20852":9780,"20872":8358,"20875":8359,"20888":4418,"20890":4829,"20892":4830,"20894":4419,"20899":9783,"20922":9784,"20923":9785,"20926":9786,"20928":5936,"20942":9787,"20945":7518,"20946":5937,"20947":9788,"20948":9789,"20949":9790,"20950":9791,"20951":5938,"20979":8360,"21013":6355,"21029":5470,"21035":7519,"21046":6883,"21053":7520,"21054":6356,"21055":7521,"21057":6357,"21085":6358,"21089":5260,"21091":9792,"21092":9793,"21095":9794,"21105":4831,"21107":4420,"21110":9795,"21111":4832,"21112":4833,"21113":9796,"21115":6884,"21117":3580,"21118":9797,"21120":5939,"21121":5471,"21122":5940,"21124":4834,"21125":4835,"21126":5941,"21127":4836,"21129":4837,"21130":4838,"21134":5472,"21141":4839,"21142":4840,"21143":4841,"21144":4842,"21146":8361,"21157":7522,"21181":9798,"21183":9799,"21185":9800,"21186":9801,"21187":6885,"21188":8362,"21191":9802,"21192":5942,"21194":5943,"21207":7523,"21208":9803,"21213":6359,"21216":9804,"21217":9805,"21235":9806,"21241":9807,"21242":9808,"21243":9809,"21244":9810,"21247":7524,"21256":9811,"21266":9812,"21270":4843,"21272":4844,"21273":4845,"21274":5944,"21296":9813,"21297":9814,"21303":9815,"21311":6886,"21312":8363,"21335":9816,"21336":9817,"21338":9818,"21339":9819,"21340":9820,"21364":1277,"21403":4557,"21410":9821,"21411":9822,"21428":1927,"21434":5739,"21447":5740,"21482":7525,"21543":9823,"21546":7526,"21598":8364,"21624":8365,"21649":9824,"21654":5473,"21690":7527,"21714":9825,"21716":9826,"21767":9827,"21769":5474,"21770":6887,"21771":4847,"21772":9828,"21793":7528,"21794":7529,"21795":7530,"21832":7531,"21834":9829,"21850":8366,"21864":9830,"21870":6360,"21874":9831,"21917":6888,"21937":6889,"21942":6890,"21947":4848,"22001":7532,"22002":5261,"22010":8367,"22017":9832,"22028":4849,"22049":4850,"22051":8368,"22053":7533,"22056":9833,"22058":9834,"22059":9835,"22062":3974,"22066":9837,"22067":9838,"22072":9839,"22073":7534,"22079":8369,"22080":9840,"22081":5475,"22091":9841,"22092":5476,"22093":5477,"22097":9842,"22111":9843,"22113":9844,"22115":9845,"22116":9846,"22117":4851,"22119":9847,"22121":9848,"22122":9849,"22123":9850,"22124":5945,"22125":4422,"22126":9851,"22127":4852,"22128":9852,"22129":9853,"22130":9854,"22131":6891,"22141":8370,"22150":9855,"22151":9856,"22152":9857,"22155":7535,"22169":9858,"22187":9859,"22188":9860,"22189":9861,"22190":9862,"22195":7536,"22196":7537,"22198":9863,"22211":7538,"22250":4853,"22252":4854,"22253":9864,"22257":4855,"22262":8371,"22264":4856,"22265":4857,"22273":4858,"22275":4859,"22276":9865,"22278":9866,"22288":5478,"22290":6892,"22298":9867,"22303":4860,"22304":9868,"22305":4861,"22307":4423,"22311":6893,"22313":8372,"22315":7539,"22322":8373,"22325":4862,"22336":7540,"22338":7541,"22339":6361,"22340":9869,"22341":9870,"22342":9871,"22344":7542,"22346":9872,"22359":4863,"22360":8374,"22365":9873,"22367":9874,"22400":8375,"22407":5946,"22410":5479,"22411":8376,"22412":8377,"22418":5480,"22428":6894,"22429":4864,"22430":4424,"22435":8378,"22439":9875,"22440":9876,"22441":9877,"22442":9878,"22443":4425,"22444":4865,"22445":4866,"22446":4867,"22447":4868,"22455":5481,"22457":5482,"22458":9879,"22471":9880,"22474":5483,"22475":6895,"22477":4869,"22478":4870,"22481":5484,"22482":8379,"22495":6362,"22497":9881,"22502":4871,"22503":4872,"22504":4873,"22512":7543,"22516":5947,"22528":6896,"22539":7544,"22541":9882,"22543":6897,"22552":4874,"22553":4875,"22554":5485,"22555":9883,"22567":8380,"22571":4876,"22578":4426,"22579":8381,"22586":9884,"22597":6898,"22601":6899,"22602":9885,"22603":4877,"22606":9886,"22612":9887,"22616":9888,"22622":9889,"22623":9890,"22626":9891,"22627":9892,"22663":4878,"22664":4879,"22665":4880,"22666":4881,"22676":4882,"22677":4883,"22678":4884,"22679":4885,"22680":4886,"22698":5948,"22699":6900,"22711":9893,"22712":9894,"22713":9895,"22714":9896,"22716":6901,"22720":9897,"22721":4887,"22724":4888,"22726":5486,"22727":9898,"22728":9899,"22730":9900,"22732":8382,"22734":8383,"22737":6902,"22738":9901,"22746":9902,"22747":9903,"22748":3976,"22749":9905,"22750":9906,"22751":9907,"22753":9908,"22757":9909,"22759":8384,"22769":6903,"22771":2748,"22783":6904,"22800":8385,"22801":5487,"22830":8386,"22838":5488,"22847":4889,"22848":4890,"22879":7545,"22883":9910,"22885":9911,"22886":9912,"22890":9913,"22891":9914,"22892":9915,"22895":9916,"22897":9917,"22902":4891,"22903":4427,"22904":9918,"22905":4892,"22906":4893,"22907":8387,"22908":4894,"22909":4895,"22910":8388,"22926":9919,"22927":9920,"22928":7546,"22929":8389,"22932":5949,"22935":4428,"22937":4896,"22939":9921,"22945":6905,"22957":9922,"22995":3979,"22999":6363,"23006":5741,"23035":6906,"23063":8390,"23082":1683,"23083":7547,"23090":6364,"23137":9923,"23139":9924,"23160":2197,"23192":6907,"23216":4897,"23217":4898,"23218":4899,"23241":4900,"23242":4901,"23243":4902,"23244":4903,"23249":5489,"23259":3981,"23302":7548,"23303":9925,"23304":9926,"23305":9927,"23306":9928,"23346":6908,"23347":9929,"23389":6909,"23409":6365,"23441":2377,"23454":9930,"23455":9931,"23457":9932,"23460":9933,"23463":9934,"23464":9935,"23465":9936,"23479":9937,"23500":6910,"23509":621,"23512":4904,"23515":9938,"23522":4905,"23523":4906,"23545":9939,"23551":6911,"23553":6912,"23554":6913,"23600":4430,"23607":6914,"23633":3375,"23635":9941,"23652":9942,"23656":9943,"23706":10968,"23712":8391,"23727":4907,"23728":4908,"23729":4909,"23732":9944,"23737":9945,"23744":4558,"23749":9946,"23753":4910,"23758":4911,"23760":3377,"23770":7549,"23777":3379,"23801":7550,"23806":6366,"23843":7551,"23860":9947,"23861":9948,"23870":9949,"23888":9950,"23889":9951,"23891":9952,"23904":9953,"23905":6915,"23928":845,"23967":9955,"23975":7552,"23990":7553,"23997":9956,"24026":5262,"24033":2753,"24042":9958,"24043":9959,"24047":5950,"24061":9960,"24063":9961,"24070":9962,"24075":5490,"24076":5491,"24103":6916,"24104":9963,"24105":9964,"24127":9965,"24150":1791,"24168":5951,"24215":9966,"24241":9967,"24252":8392,"24253":6918,"24257":5952,"24263":4912,"24264":4913,"24279":8393,"24291":9968,"24293":4559,"24323":6367,"24325":5742,"24364":4360,"24387":4361,"24391":6368,"24420":8394,"24422":5743,"24485":7554,"24532":5744,"24560":7555,"24581":8395,"24591":4914,"24595":6369,"24600":7556,"24602":6370,"24604":7557,"24629":7558,"24638":6371,"24654":9969,"24659":9970,"24669":9971,"24670":9972,"24671":9973,"24672":7559,"24677":7560,"24679":7561,"24698":6372,"24700":6373,"24701":6374,"24704":3322,"24722":9974,"24773":5492,"24830":6375,"24836":4560,"24847":5745,"24848":7562,"24850":6376,"24851":7563,"24855":4561,"24856":4362,"24860":4562,"24861":4563,"24867":7564,"24954":5263,"24956":9975,"24957":9976,"24960":8396,"24962":6919,"24967":6920,"24999":5746,"25011":7565,"25050":7566,"25102":7567,"25127":9977,"25128":4431,"25129":9978,"25130":4432,"25132":9979,"25150":9980,"25156":9981,"25168":4564,"25175":8397,"25176":7568,"25184":9982,"25223":7569,"25229":9983,"25279":3985,"25287":4565,"25293":7570,"25295":7571,"25345":9984,"25348":9985,"25355":9986,"25357":2758,"25360":5953,"25378":7572,"25381":6377,"25396":4566,"25398":4567,"25399":4568,"25440":7573,"25442":9988,"25444":4569,"25446":4570,"25471":5747,"25476":7574,"25484":4571,"25485":4572,"25486":4573,"25487":9989,"25488":4574,"25489":4575,"25512":6378,"25517":6379,"25528":6921,"25530":8398,"25534":7575,"25535":5748,"25550":7576,"25605":9990,"25606":9991,"25607":9992,"25610":9993,"25659":9994,"25660":9995,"25661":9996,"25677":8399,"25700":9997,"25704":9998,"25705":5749,"25735":9999,"25737":7577,"25745":7578,"25751":7579,"25760":6922,"25761":6923,"25763":4363,"25764":5750,"25766":7580,"25767":10000,"25769":10001,"25771":10002,"25783":10003,"25784":10004,"25785":10005,"25787":10006,"25795":5751,"25797":7581,"25799":8400,"25809":10007,"25820":7582,"25829":5493,"25830":4915,"25831":4916,"25832":10008,"25833":10009,"25834":10010,"25835":5752,"25863":10011,"25864":10012,"25866":10013,"25870":8401,"25878":10014,"25880":10015,"25893":8402,"25927":10016,"25932":6380,"25934":6381,"25939":10017,"25941":4576,"25942":4577,"25944":4578,"25954":4579,"25956":4580,"25957":4581,"25964":6382,"25971":10018,"26005":4582,"26009":4583,"26036":10019,"26060":7583,"26072":10020,"26073":10021,"26095":10022,"26096":10023,"26099":6383,"26189":6384,"26196":7584,"26197":7585,"26223":7586,"26310":1933,"26311":6385,"26393":6386,"26442":7587,"26478":5753,"26496":10024,"26499":10025,"26500":6387,"26501":10026,"26503":5954,"26510":7588,"26525":8403,"26534":6924,"26553":10027,"26557":10028,"26558":10029,"26610":5264,"26638":8404,"26656":4584,"26657":5265,"26668":7589,"26669":6388,"26675":4585,"26729":3989,"26759":6389,"26760":7590,"26828":6390,"26829":5266,"26830":6391,"26831":5267,"26832":6392,"26833":6393,"26837":7591,"26850":5754,"26871":6394,"26873":6395,"26874":7592,"26876":4586,"26877":4587,"26878":4588,"26879":4589,"26915":10030,"26916":10031,"26917":10032,"26918":10033,"26919":10034,"26931":6396,"26964":8405,"26990":10035,"26991":10037,"26992":10036,"27001":3077,"27011":10038,"27016":7593,"27017":7594,"27020":1628,"27032":7595,"27062":4918,"27063":10039,"27064":10040,"27065":10041,"27067":6397,"27074":10042,"27075":10043,"27077":10044,"27078":10045,"27082":5755,"27105":10046,"27106":4919,"27107":8406,"27108":10047,"27109":4920,"27111":4921,"27129":3691,"27131":10048,"27132":4590,"27141":5955,"27156":7596,"27174":10049,"27175":10050,"27177":10051,"27179":4591,"27186":10052,"27187":10053,"27190":10054,"27191":10055,"27200":8407,"27203":6925,"27215":8408,"27216":10056,"27217":6926,"27218":5268,"27231":10057,"27238":4922,"27239":4923,"27242":6398,"27245":6927,"27247":8409,"27270":10058,"27299":10059,"27303":7597,"27316":4592,"27317":4593,"27318":10060,"27319":4364,"27320":4594,"27323":7598,"27324":7599,"27373":5269,"27374":10061,"27375":10062,"27376":10063,"27402":7600,"27412":10064,"27417":10065,"27425":6399,"27434":2304,"27441":2310,"27443":2313,"27448":2307,"27451":6400,"27460":7601,"27463":10066,"27464":10067,"27465":10068,"27466":10069,"27482":3310,"27485":5756,"27496":4595,"27498":10070,"27515":6401,"27525":6402,"27530":7602,"27532":7603,"27534":6403,"27537":10071,"27541":10072,"27543":10073,"27545":10074,"27546":10075,"27547":10076,"27566":5757,"27572":10077,"27573":10078,"27574":10079,"27575":10080,"27590":3312,"27594":6404,"27620":10081,"27627":7604,"27643":10082,"27648":10083,"27663":7605,"27706":7606,"27708":7607,"27710":7608,"27747":7609,"27771":7610,"27777":3071,"27781":8410,"27782":10084,"27795":7611,"27803":4596,"27804":10085,"27814":4597,"27815":10086,"27816":4598,"27817":4599,"27842":8411,"27854":5494,"27871":5270,"27887":10087,"27888":10088,"27890":1938,"27891":7612,"27895":8412,"27899":6405,"27916":7613,"27924":6928,"27947":7614,"27949":7615,"27955":10089,"27975":10090,"27978":10091,"27980":10092,"27985":1389,"27986":10094,"27987":10095,"27990":10096,"27991":10097,"27992":10098,"27993":7616,"27996":6929,"27998":10099,"28002":634,"28009":10101,"28015":10102,"28016":6406,"28021":6930,"28022":6931,"28025":10103,"28027":10104,"28028":10105,"28042":148,"28049":6932,"28055":170,"28058":5956,"28061":10107,"28063":10108,"28064":8413,"28069":10109,"28072":6933,"28081":7617,"28082":5271,"28089":7618,"28095":7619,"28099":6934,"28101":7620,"28104":5272,"28108":10110,"28121":6407,"28122":3462,"28139":4600,"28149":8414,"28156":10111,"28160":8415,"28167":1536,"28173":10112,"28174":6408,"28176":8416,"28227":4601,"28228":7621,"28229":10113,"28230":4602,"28232":4603,"28237":10114,"28240":10115,"28250":3317,"28268":10116,"28272":10117,"28273":10118,"28282":5495,"28288":7622,"28290":7623,"28296":10119,"28297":10120,"28298":10121,"28299":10122,"28344":4924,"28358":4365,"28359":3694,"28361":4604,"28362":10123,"28364":10124,"28365":10125,"28366":10126,"28368":10127,"28369":4367,"28370":3696,"28372":4605,"28373":10128,"28375":10129,"28376":10130,"28377":10131,"28379":10132,"28400":4433,"28402":4434,"28403":10133,"28404":4925,"28405":10134,"28406":10135,"28408":10136,"28410":4926,"28413":6409,"28425":8417,"28440":7624,"28463":6410,"28467":3134,"28488":10137,"28490":5957,"28501":768,"28503":10138,"28504":6411,"28510":6935,"28511":5958,"28512":6936,"28527":5758,"28529":7625,"28530":6412,"28533":126,"28552":10139,"28555":10140,"28615":5959,"28620":5960,"28638":8419,"28639":5961,"28661":6413,"28670":5759,"28681":7626,"28682":10141,"28684":10142,"28686":7627,"28691":5760,"28698":5761,"28700":7628,"28712":5273,"28721":5496,"28722":8420,"28732":5962,"28738":7629,"28752":10143,"28753":5762,"28771":8421,"28827":6937,"28828":6938,"28865":4927,"28884":8422,"28888":5963,"28902":3464,"28907":10144,"28910":10145,"28934":8423,"28948":5497,"28970":8424,"28975":8425,"28988":7630,"29004":10153,"29009":4928,"29017":8426,"29052":1541,"29053":8427,"29059":10147,"29060":6414,"29062":10148,"29089":8428,"29090":8429,"29120":10149,"29127":8430,"29137":10150,"29168":10151,"29181":1428,"29216":7631,"29234":6415,"29235":6939,"29238":8431,"29241":10152,"29244":6416,"29246":6417,"29248":5763,"29249":2384,"29263":1380,"29309":8432,"29312":5498,"29316":10154,"29382":6940,"29433":5764,"29481":6941,"29482":5499,"29483":10155,"29484":10156,"29486":10157,"29494":2207,"29525":10158,"29548":3996,"29574":5964,"29583":8433,"29585":6942,"29600":1295,"29610":7632,"29655":3241,"29675":10159,"29682":10160,"29721":6418,"29724":5765,"29726":8434,"29727":8435,"29747":10161,"29748":8436,"29784":5965,"29830":8437,"29831":10162,"29845":694,"29870":1152,"29878":6943,"29889":10163,"29900":5500,"29904":5966,"29928":4929,"29938":7633,"29939":7634,"29944":7635,"29986":3103,"29994":4606,"30006":10164,"30007":10165,"30012":8438,"30014":10166,"30015":5501,"30018":10167,"30034":8439,"30062":8440,"30075":1303,"30091":10168,"30093":10169,"30094":6944,"30098":10170,"30102":5967,"30118":4930,"30130":10171,"30131":10172,"30136":8441,"30142":10173,"30189":6419,"30254":1633,"30255":10175,"30259":10176,"30264":10177,"30269":10178,"30275":10179,"30276":10180,"30283":4931,"30285":4932,"30309":6420,"30356":5502,"30392":5274,"30395":4607,"30396":5275,"30397":10181,"30404":1948,"30417":8442,"30423":8443,"30429":6421,"30438":1636,"30442":6945,"30444":6946,"30461":1105,"30496":6422,"30512":8444,"30525":5968,"30561":6947,"30563":6948,"30577":10182,"30603":10183,"30604":10184,"30605":10185,"30606":10186,"30607":10187,"30608":5969,"30609":6949,"30613":8445,"30614":6950,"30617":3999,"30629":10189,"30630":7636,"30631":7637,"30636":10190,"30637":10191,"30641":7638,"30669":7639,"30671":3244,"30689":8446,"30696":10192,"30709":2395,"30720":4933,"30753":10194,"30758":4608,"30759":4370,"30761":10195,"30771":4934,"30772":4935,"30773":4436,"30774":4936,"30775":4937,"30777":4938,"30782":5503,"30791":10196,"30810":6423,"30825":6951,"30875":8447,"30883":5504,"30890":1156,"30902":5505,"30903":5970,"30904":8448,"30908":6952,"30936":6424,"30938":10197,"30946":6953,"30953":10198,"30954":4939,"30955":10199,"30956":4940,"30957":10200,"30977":10201,"30980":4001,"30981":10203,"30982":10204,"30983":10205,"30984":10206,"30985":10207,"30986":10208,"30987":3047,"30989":10210,"30993":10211,"30996":8449,"31005":8450,"31012":8451,"31018":10212,"31020":10213,"31027":4609,"31028":4610,"31029":10214,"31031":10215,"31032":10216,"31036":7640,"31040":2400,"31046":3707,"31048":8452,"31072":10217,"31074":10218,"31105":10219,"31106":10220,"31125":6954,"31130":10221,"31138":10222,"31143":4003,"31161":4941,"31162":4942,"31163":5971,"31190":5276,"31202":4943,"31206":8453,"31209":7641,"31216":6955,"31233":10224,"31238":8454,"31295":10225,"31300":10226,"31309":5277,"31312":3315,"31313":10228,"31315":6425,"31317":7642,"31318":10229,"31319":8455,"31320":5766,"31321":10230,"31355":4437,"31357":6426,"31358":10231,"31359":10232,"31362":6956,"31375":4944,"31399":7643,"31406":7644,"31431":3044,"31466":5506,"31480":8456,"31483":8457,"31491":8458,"31522":7645,"31533":10233,"31559":6957,"31682":6958,"31687":8459,"31699":5507,"31718":8460,"31719":8461,"31725":8462,"31726":4371,"31729":4611,"31795":10234,"31800":8463,"31806":7646,"31845":3585,"31866":10235,"31867":10236,"31880":10237,"31920":7647,"31922":6427,"31923":6428,"31967":4006,"32015":7648,"32019":7649,"32053":603,"32055":7650,"32056":6429,"32059":7651,"32073":6959,"32091":10238,"32105":5508,"32133":5972,"32146":8464,"32148":3710,"32149":5278,"32184":2415,"32187":6960,"32201":7652,"32267":7653,"32283":4372,"32284":4373,"32285":4612,"32290":4613,"32297":4614,"32298":4615,"32299":4616,"32302":7654,"32311":10240,"32316":7655,"32317":10241,"32370":10242,"32371":4617,"32372":4618,"32373":4619,"32381":8465,"32395":7656,"32408":7657,"32411":7658,"32413":7659,"32417":5509,"32419":5510,"32463":4945,"32464":4946,"32467":4947,"32468":4948,"32469":4949,"32470":4438,"32480":5279,"32482":10243,"32487":8466,"32497":8467,"32501":7660,"32507":3713,"32514":8468,"32516":7661,"32539":4950,"32628":2764,"32661":8469,"32666":1641,"32670":10245,"32675":5511,"32676":5973,"32687":7663,"32700":8470,"32713":10246,"32719":4374,"32791":707,"32796":6430,"32799":10247,"32801":10248,"32802":4620,"32805":10249,"32807":1700,"32809":2769,"32813":10250,"32817":10251,"32858":5280,"32879":5512,"32917":6961,"32922":6431,"32943":10260,"32950":10252,"32951":7664,"32953":6432,"32954":8471,"32956":6962,"32964":4376,"32965":7665,"32966":6433,"32974":2426,"32998":8472,"32999":8473,"33033":6434,"33043":7666,"33070":8474,"33076":10253,"33077":10254,"33082":10255,"33084":10256,"33144":4621,"33146":4622,"33150":10257,"33153":4623,"33154":5281,"33157":8475,"33159":4624,"33163":5282,"33166":10258,"33168":4951,"33203":10259,"33233":10261,"33235":7667,"33236":6435,"33237":7668,"33244":10262,"33249":10263,"33252":984,"33265":8476,"33285":10264,"33286":10265,"33287":10266,"33288":10267,"33293":10268,"33294":10269,"33296":10270,"33297":10271,"33298":10272,"33317":10273,"33333":8477,"33335":1465,"33338":4439,"33339":10274,"33340":8478,"33342":4953,"33343":4440,"33357":4441,"33366":6963,"33368":8479,"33383":8480,"33388":7669,"33395":8481,"33412":6964,"33417":8482,"33418":10275,"33420":10276,"33421":10277,"33452":6436,"33461":3138,"33466":5974,"33479":5975,"33484":5976,"33489":5283,"33534":7670,"33540":10279,"33548":10280,"33549":10281,"33562":4954,"33570":8483,"33573":6965,"33591":5977,"33595":8484,"33615":8485,"33620":10282,"33629":5767,"33655":8486,"33656":8487,"33694":6437,"33700":3140,"33704":5513,"33707":3143,"33727":10283,"33728":10284,"33758":3383,"33805":7671,"33815":4625,"33890":8488,"33919":10286,"33932":2431,"33934":6438,"33958":10287,"34068":8489,"34103":10288,"34104":10289,"34105":10290,"34111":361,"34112":10292,"34163":6439,"34167":5768,"34169":5284,"34170":7672,"34173":1798,"34176":8490,"34190":10293,"34197":7673,"34198":6440,"34270":7674,"34282":858,"34296":7675,"34349":10294,"34352":2436,"34362":6441,"34380":5769,"34390":2781,"34391":8491,"34411":6966,"34415":10295,"34416":10296,"34423":8492,"34430":10297,"34431":4626,"34432":4627,"34433":4377,"34443":4957,"34444":4958,"34446":10298,"34447":10299,"34448":4959,"34460":724,"34475":5978,"34480":10301,"34482":8493,"34491":6967,"34499":10302,"34521":10303,"34523":10304,"34524":5514,"34527":10305,"34532":5770,"34535":5771,"34536":10307,"34540":5772,"34545":6442,"34548":5773,"34552":10306,"34553":10308,"34574":4960,"34578":8494,"34580":4961,"34582":6968,"34584":10309,"34585":10310,"34586":10311,"34624":4962,"34649":4020,"34653":4963,"34654":5979,"34659":10312,"34660":10313,"34661":10314,"34663":10315,"34668":4964,"34688":10316,"34689":10317,"34690":10318,"34691":10319,"34704":2790,"34723":10320,"34769":5980,"34771":8495,"34792":4286,"34806":10321,"34880":5774,"34882":3587,"34884":6443,"34885":6444,"34886":6445,"34889":6446,"34890":6447,"34899":2216,"34906":1959,"34907":4965,"34909":4966,"34911":4967,"34912":5981,"34913":8496,"34914":4968,"34915":4628,"34917":6448,"34918":6449,"34928":10322,"34931":4969,"34936":4970,"34937":4971,"34940":7677,"34942":7678,"34963":1705,"34964":10324,"34976":4023,"34977":4972,"34978":4973,"35031":5775,"35034":5776,"35035":7679,"35038":7680,"35059":10325,"35070":8497,"35112":1646,"35126":5516,"35129":5982,"35140":6450,"35143":10326,"35147":6451,"35148":7681,"35150":10327,"35151":10328,"35156":10329,"35276":8498,"35283":4025,"35312":8499,"35322":4302,"35411":7682,"35416":10330,"35417":10331,"35418":10332,"35423":5285,"35427":4027,"35448":10333,"35450":10334,"35474":8500,"35476":8501,"35485":8502,"35535":5983,"35578":10335,"35582":10336,"35585":4442,"35589":10337,"35590":10338,"35615":1470,"35621":5286,"35622":5287,"35624":1433,"35636":10339,"35641":3306,"35668":4629,"35670":4630,"35694":10340,"35711":10341,"35762":4299,"35768":8503,"35792":6452,"35798":7683,"35800":2793,"35845":10342,"35950":2227,"35987":2449,"35999":10344,"36003":6453,"36004":8504,"36013":7684,"36028":10345,"36039":6454,"36041":10346,"36042":10347,"36066":7685,"36129":6455,"36141":10348,"36143":7686,"36152":7687,"36165":8505,"36166":8506,"36169":8507,"36171":6456,"36172":4378,"36173":6457,"36174":6458,"36178":5288,"36180":5777,"36181":6459,"36183":6460,"36184":5778,"36185":6461,"36186":5779,"36187":10349,"36188":10350,"36192":8508,"36195":8509,"36219":8510,"36220":10351,"36221":10352,"36243":4379,"36245":4631,"36246":10353,"36250":4443,"36251":4974,"36252":10354,"36254":10355,"36255":3018,"36307":4975,"36308":4976,"36310":4977,"36313":4444,"36314":4978,"36316":4979,"36317":4980,"36318":4981,"36323":1475,"36325":3732,"36363":7688,"36364":7689,"36378":6462,"36379":6463,"36387":7690,"36391":10357,"36403":10358,"36404":4983,"36406":4445,"36410":1037,"36423":5984,"36451":773,"36556":8511,"36580":10359,"36590":6969,"36591":6970,"36593":4984,"36595":4985,"36596":4986,"36598":4987,"36599":10360,"36600":7691,"36606":10361,"36615":8512,"36620":4029,"36621":10362,"36648":4988,"36653":4989,"36655":5517,"36660":6971,"36663":10363,"36677":4990,"36678":10364,"36680":4991,"36682":10365,"36692":10366,"36697":8513,"36699":5780,"36700":7692,"36703":10367,"36707":8514,"36709":5781,"36714":8515,"36715":8516,"36727":8517,"36739":10368,"36768":10369,"36772":7693,"36778":6972,"36779":6973,"36780":6974,"36784":10370,"36890":2797,"36951":6464,"36952":6465,"36996":8518,"37049":8519,"37051":8520,"37060":8521,"37125":7694,"37132":7695,"37149":5985,"37150":5518,"37151":5519,"37152":5986,"37157":10371,"37171":8522,"37173":8523,"37175":6975,"37192":5987,"37205":8524,"37228":6976,"37237":4033,"37250":4992,"37251":8525,"37252":4035,"37254":10372,"37261":4282,"37313":2457,"37344":10373,"37349":8526,"37378":5289,"37387":5290,"37403":6466,"37413":3593,"37428":10374,"37441":10375,"37442":10376,"37461":7696,"37467":7697,"37477":6467,"37498":7698,"37512":4994,"37517":6977,"37518":6978,"37519":8527,"37520":5988,"37521":10377,"37522":10378,"37523":10379,"37550":1482,"37556":10380,"37557":6980,"37559":6981,"37560":10381,"37565":3254,"37575":8528,"37577":10382,"37578":10383,"37579":6982,"37580":10384,"37581":6983,"37583":6984,"37609":5782,"37622":6985,"37624":6468,"37640":6986,"37643":10385,"37645":8529,"37694":7699,"37730":10386,"37735":5521,"37737":5989,"37738":5990,"37742":8530,"37746":6987,"37747":8531,"37765":10387,"37768":8532,"37774":8533,"37781":7700,"37783":8534,"37784":6988,"37807":6989,"37809":6990,"37817":10388,"37818":10389,"37820":10390,"37821":10391,"37822":10392,"37845":5522,"37853":4995,"37854":10393,"37861":10394,"37862":10395,"37866":5783,"37870":10396,"37871":10397,"37872":10398,"37875":10399,"37876":10400,"37879":7701,"37890":8535,"37901":10401,"37906":5991,"37915":8536,"37939":6991,"37957":5992,"37963":5993,"37968":6992,"37970":5994,"37971":5995,"37974":5996,"37985":6469,"38003":5997,"38017":8537,"38020":10402,"38021":10403,"38029":7702,"38035":10404,"38036":10405,"38037":10406,"38038":6470,"38039":7703,"38046":10407,"38051":10408,"38069":6993,"38070":5998,"38072":6994,"38073":6995,"38082":10409,"38083":10410,"38084":10411,"38085":7704,"38088":7705,"38092":7706,"38093":7707,"38101":10412,"38103":10413,"38110":4996,"38111":5523,"38112":5524,"38113":8538,"38115":10414,"38116":10415,"38117":6471,"38120":10416,"38121":5999,"38124":7708,"38131":6000,"38132":6996,"38137":5525,"38141":8539,"38148":8540,"38161":1218,"38165":8541,"38171":6001,"38173":10417,"38181":6997,"38182":4997,"38183":6002,"38184":6003,"38186":5526,"38190":10418,"38192":6004,"38194":8542,"38195":8543,"38202":6998,"38204":6999,"38205":5527,"38206":8544,"38209":8545,"38211":10419,"38215":5528,"38216":8546,"38217":7000,"38221":8547,"38222":8548,"38237":4998,"38240":6005,"38261":8549,"38264":10420,"38265":10421,"38266":10422,"38267":5529,"38284":4999,"38285":5000,"38286":10423,"38287":10424,"38292":8550,"38329":6472,"38362":8551,"38363":6006,"38364":6007,"38365":8552,"38368":10425,"38378":8553,"38387":8554,"38388":5530,"38389":5531,"38390":10426,"38392":10427,"38394":8555,"38396":10428,"38397":7001,"38398":5532,"38400":6008,"38420":10429,"38427":8556,"38428":6009,"38443":8557,"38446":10430,"38450":5533,"38462":8558,"38468":7709,"38469":7710,"38470":10431,"38471":10432,"38476":10433,"38480":8559,"38487":8560,"38489":7002,"38490":8561,"38509":7003,"38510":8562,"38511":8563,"38527":8564,"38545":10434,"38548":8565,"38549":8566,"38550":5534,"38551":8567,"38555":7711,"38559":8568,"38591":8569,"38592":10435,"38626":6010,"38627":10436,"38634":10437,"38635":10438,"38643":8570,"38645":6011,"38648":5001,"38649":5002,"38650":10439,"38662":8571,"38669":8572,"38709":10440,"38710":10441,"38711":10442,"38712":10443,"38749":6473,"38785":7712,"38788":10444,"38792":7004,"38793":10445,"38794":6012,"38795":10446,"38796":6013,"38798":6014,"38801":5535,"38802":5536,"38803":5537,"38804":6015,"38805":10447,"38807":7005,"38808":5538,"38809":8573,"38810":8574,"38811":8575,"38813":7006,"38818":10448,"38819":10449,"38824":6016,"38848":8576,"38853":7007,"38858":8577,"38864":5539,"38865":5540,"38866":8578,"38868":6017,"38869":8579,"38872":8580,"38873":7008,"38877":7009,"38883":6018,"38884":6019,"38893":10450,"38896":10451,"38903":10452,"38904":10453,"38907":10454,"38908":10455,"38909":10456,"38910":10457,"38911":10458,"38912":10459,"38915":10460,"38923":2806,"38925":3393,"38927":7010,"38931":6020,"38933":10462,"38935":10463,"38936":10464,"38937":10465,"38962":10466,"38968":7713,"38982":7011,"38984":5541,"38988":6021,"38989":10467,"38990":10468,"38992":10469,"39002":7714,"39020":6474,"39027":10470,"39028":10471,"39029":10472,"39031":10473,"39033":8581,"39035":4040,"39038":8582,"39044":10474,"39050":10475,"39051":5003,"39052":10476,"39053":5004,"39054":5005,"39065":5291,"39081":5006,"39092":6475,"39096":5007,"39109":6476,"39126":5542,"39142":10477,"39155":6022,"39156":4042,"39159":8583,"39160":8584,"39163":7012,"39164":5008,"39213":10479,"39215":10480,"39217":8585,"39220":10481,"39221":10482,"39237":7715,"39268":10483,"39270":10484,"39272":10485,"39273":5292,"39275":5784,"39299":10486,"39300":6023,"39312":7716,"39318":8586,"39319":5009,"39328":10487,"39329":10488,"39341":10489,"39344":8587,"39345":10490,"39360":4044,"39371":4446,"39374":5010,"39384":10491,"39387":10492,"39388":7013,"39409":7717,"39414":10493,"39416":8588,"39418":8589,"39424":10494,"39447":6024,"39448":7718,"39449":10495,"39452":4632,"39467":10496,"39468":10497,"39471":10498,"39472":5785,"39474":10499,"39475":10500,"39477":6477,"39481":8590,"39572":7014,"39576":10501,"39577":10502,"39578":10503,"39594":8591,"39595":10504,"39596":6025,"39598":10505,"39620":8592,"39621":10506,"39636":7719,"39640":10507,"39646":7720,"39660":6478,"39671":7721,"39674":10508,"39689":6479,"39704":7722,"39771":10509,"39772":10510,"39774":10511,"39775":7723,"39776":6480,"39777":10512,"39928":6481,"39939":7015,"39952":10513,"39961":10514,"39962":10515,"39964":10516,"39965":10517,"39967":10518,"40028":4633,"40031":6482,"40036":10519,"40037":5011,"40038":10520,"40039":8593,"40040":10521,"40042":7016,"40043":7017,"40081":10522,"40082":10523,"40083":7018,"40102":8594,"40106":10524,"40111":10525,"40142":7724,"40146":7725,"40181":7726,"40191":8595,"40204":7727,"40212":10526,"40215":7019,"40227":6483,"40274":7728,"40276":7729,"40280":10527,"40283":7730,"40292":7731,"40293":10528,"40297":7732,"40312":5543,"40322":8596,"40333":7733,"40394":5012,"40395":5013,"40396":10529,"40403":5786,"40421":6026,"40426":4046,"40429":10530,"40446":10531,"40452":10532,"40454":7020,"40458":5544,"40463":7021,"40470":8597,"40471":8598,"40478":7734,"40480":10533,"40489":10534,"40491":10535,"40493":10536,"40494":10537,"40495":8599,"40500":10538,"40502":10539,"40509":6027,"40510":10540,"40524":6028,"40525":5014,"40526":5015,"40527":10541,"40528":5016,"40530":4447,"40598":10542,"40694":5017,"40718":6484,"40803":8600,"40805":10543,"40806":10544,"40866":4311,"40871":10545,"40925":6485,"40949":5787,"40976":4448,"40978":5018,"40982":7022,"40983":8601,"40984":6029,"40992":7023,"41016":8602,"41024":8603,"41026":8604,"41028":10546,"41035":8605,"41040":2811,"41043":6486,"41045":5293,"41052":10547,"41064":10548,"41065":7735,"41070":7736,"41076":10549,"41110":7737,"41111":7738,"41131":6030,"41162":5294,"41167":5295,"41168":4634,"41169":4635,"41170":4636,"41184":10550,"41198":10551,"41201":10552,"41203":5296,"41213":4637,"41214":4638,"41216":3107,"41244":8606,"41264":4640,"41265":4641,"41270":4380,"41271":4381,"41272":4642,"41273":4643,"41274":5019,"41275":5020,"41276":5021,"41277":4644,"41278":4645,"41279":4646,"41293":4647,"41294":4648,"41295":4382,"41296":4649,"41298":4650,"41314":7739,"41320":5297,"41364":7024,"41371":1438,"41377":4050,"41383":10553,"41399":10554,"41436":10555,"41440":6487,"41441":5298,"41446":10556,"41484":8607,"41528":3597,"41549":7025,"41615":7026,"41618":4651,"41619":3738,"41661":3486,"41662":8608,"41663":8609,"41680":8610,"41692":8611,"41722":2816,"41727":7740,"41783":3190,"41784":10557,"41785":10558,"41794":1548,"41799":10559,"41802":10560,"41804":10561,"41805":10562,"41806":10563,"41820":10564,"41823":10565,"41824":1815,"41828":6488,"41832":10566,"41867":3490,"41869":10567,"41873":7741,"41882":4652,"41883":10568,"41954":10569,"41974":6490,"41990":8612,"42014":6491,"42065":2819,"42069":4053,"42080":8613,"42085":5788,"42087":6492,"42088":7743,"42092":6493,"42152":6494,"42191":7744,"42214":6032,"42235":8614,"42271":7027,"42276":7745,"42281":7028,"42283":7746,"42295":3599,"42317":5022,"42322":10570,"42323":10571,"42373":7747,"42389":6495,"42396":10572,"42402":10573,"42404":10574,"42409":10575,"42419":3601,"42420":8615,"42442":3603,"42445":1323,"42459":6496,"42462":10576,"42470":7029,"42472":5023,"42473":8616,"42474":8617,"42475":8618,"42476":8619,"42551":10577,"42558":7748,"42583":8620,"42585":7030,"42591":8621,"42611":4055,"42656":10578,"42657":10579,"42674":2466,"42678":668,"42714":8622,"42728":3605,"42739":8623,"42744":4057,"42770":4059,"42823":7749,"42825":5299,"42827":4653,"42829":7750,"42830":5789,"42832":7751,"42835":5790,"42838":10580,"42840":5300,"42843":10581,"42845":10582,"42849":10583,"42863":5301,"42894":2471,"42897":10584,"42909":10585,"42910":10586,"42920":2825,"42928":4061,"42951":10587,"42966":4063,"42972":10588,"42973":10589,"42992":10590,"42994":10591,"43003":6497,"43023":6498,"43054":10592,"43106":8624,"43111":3084,"43124":10593,"43132":7753,"43138":10594,"43150":7754,"43157":7755,"43191":8625,"43230":3742,"43252":10595,"43304":8626,"43312":8627,"43363":10596,"43364":10597,"43365":10598,"43367":10599,"43369":1553,"43371":6499,"43419":1558,"43423":5302,"43491":5545,"43492":10600,"43501":5546,"43502":5547,"43558":6500,"43562":6501,"43568":7031,"43576":6502,"43588":2828,"43591":10601,"43594":6503,"43603":2022,"43608":10602,"43611":6504,"43615":10603,"43625":3110,"43643":2027,"43646":3495,"43656":5303,"43657":4654,"43668":6505,"43687":4655,"43690":4656,"43691":5304,"43702":10604,"43703":10605,"43705":4657,"43722":7756,"43743":10606,"43745":10607,"43752":10608,"43998":7032,"44049":10609,"44051":10610,"44077":5791,"44078":1441,"44079":5792,"44082":8628,"44088":10611,"44089":3497,"44093":6033,"44099":6034,"44103":10612,"44104":5024,"44106":6035,"44124":10613,"44125":10614,"44127":2478,"44139":7757,"44149":5025,"44150":10615,"44152":10616,"44153":5026,"44154":5027,"44155":4449,"44163":10617,"44166":10618,"44167":10619,"44169":10620,"44170":10621,"44238":4067,"44239":8629,"44272":6507,"44284":5548,"44287":8630,"44291":6508,"44292":5305,"44294":5306,"44299":8631,"44330":10622,"44338":10623,"44339":10624,"44340":10625,"44351":10626,"44353":10627,"44355":2234,"44370":10628,"44384":8632,"44397":1444,"44405":10629,"44406":4450,"44407":10630,"44408":10631,"44409":10632,"44411":7033,"44415":4069,"44416":10633,"44417":10634,"44427":10635,"44432":8633,"44437":10636,"44473":7035,"44474":8634,"44484":1329,"44485":10637,"44488":10638,"44489":7036,"44490":10639,"44491":7037,"44494":10640,"44525":7758,"44530":4071,"44534":7038,"44536":7039,"44544":6509,"44547":3257,"44548":6510,"44550":7759,"44551":5549,"44553":10641,"44555":7760,"44557":5307,"44563":10642,"44567":4658,"44570":4659,"44573":1029,"44579":7040,"44582":2835,"44590":10643,"44598":4451,"44605":6511,"44609":10644,"44648":7761,"44653":10645,"44656":5308,"44657":6512,"44658":8636,"44659":6513,"44660":6514,"44661":7762,"44666":7763,"44668":10646,"44687":8637,"44748":10647,"44749":10648,"44790":8638,"44792":10649,"44794":10650,"44795":10651,"44808":7764,"44821":6515,"44824":6516,"44859":6517,"44862":10652,"44873":8639,"44880":2241,"44911":6036,"44929":6518,"44930":7765,"44939":4075,"44960":8640,"44997":8641,"45024":7766,"45064":10653,"45071":6037,"45074":5028,"45075":5029,"45083":8642,"45084":1414,"45087":10655,"45104":7767,"45165":6519,"45166":5793,"45170":8643,"45176":7768,"45262":6520,"45272":5794,"45276":2838,"45285":3334,"45308":10656,"45313":7041,"45315":7042,"45339":10657,"45346":8644,"45349":5030,"45350":5031,"45351":8645,"45357":5032,"45359":4452,"45371":5033,"45373":5034,"45374":5035,"45375":5036,"45384":5037,"45386":5550,"45389":8646,"45395":5795,"45396":7769,"45411":6038,"45412":5551,"45413":8647,"45414":6039,"45415":5552,"45436":10658,"45473":6521,"45475":6522,"45503":10659,"45510":4078,"45512":8649,"45528":7770,"45542":8650,"45544":7043,"45560":7044,"45572":1653,"45597":5796,"45599":10660,"45601":10661,"45602":10662,"45611":5553,"45623":5309,"45633":7771,"45653":10663,"45654":8651,"45722":5554,"45732":4080,"45736":7045,"45777":3750,"45845":7772,"45878":7046,"45882":7773,"45934":5310,"45942":10664,"45944":10665,"45987":3260,"45992":5555,"46020":8652,"46023":7774,"46024":6523,"46025":5311,"46029":5312,"46031":10666,"46032":10667,"46072":7775,"46116":6524,"46155":10668,"46158":10669,"46165":10670,"46166":7776,"46219":8653,"46221":6525,"46234":4328,"46348":6527,"46349":6528,"46352":10671,"46424":10672,"46442":4082,"46460":4084,"46468":7777,"46469":7778,"46479":10673,"46484":10674,"46504":6529,"46510":6530,"46535":8654,"46551":8655,"46554":8656,"46555":8657,"46590":5038,"46591":5039,"46600":8658,"46611":8659,"46624":5313,"46625":5314,"46636":6531,"46676":10675,"46691":10676,"46709":10677,"46710":10678,"46711":10679,"46712":5556,"46769":3262,"46772":3264,"46796":6040,"46833":10680,"46853":7779,"46854":5315,"46855":6532,"46857":7047,"46860":5316,"46877":4660,"46878":6533,"46880":4661,"46900":7048,"46902":7049,"46903":7050,"46904":7051,"46905":7052,"46909":5797,"46911":7780,"46917":7781,"46920":5798,"46947":2244,"46951":10682,"46968":8660,"46975":4086,"47111":10683,"47112":10684,"47133":6534,"47136":6535,"47144":8661,"47174":8662,"47398":1333,"47446":7053,"47447":5040,"47502":2485,"47662":5557,"47666":5558,"47671":7782,"47673":1563,"47676":7783,"47677":7784,"47680":10685,"47772":7785,"47792":4088,"47801":7786,"47831":10686,"47848":6536,"47850":4662,"47851":4663,"47852":4664,"47853":4665,"47854":8663,"47865":4453,"47866":4454,"47868":5041,"47872":5559,"47880":5560,"47881":5561,"47882":10687,"47883":10688,"47884":10689,"47885":10690,"47886":5562,"47887":5563,"47892":10691,"47903":5564,"47904":10692,"47912":10693,"47913":10694,"47914":5565,"47917":7787,"47918":10695,"47919":10696,"47920":10697,"47923":10698,"47924":10699,"47925":10700,"47926":10701,"47934":8664,"47939":5566,"47955":10702,"47956":8665,"47957":5042,"47958":6041,"47960":5043,"47964":10703,"47972":10704,"47979":10705,"47981":7054,"48006":10706,"48007":10707,"48012":10708,"48022":10709,"48023":10710,"48025":6042,"48026":7055,"48027":10711,"48038":7788,"48046":5044,"48047":5045,"48049":5567,"48050":5568,"48051":5046,"48052":5047,"48053":5048,"48057":10712,"48058":10713,"48060":10714,"48061":10715,"48065":10716,"48072":8666,"48073":8667,"48075":10717,"48083":10718,"48084":10719,"48085":10720,"48086":10721,"48087":8668,"48088":10722,"48089":10723,"48090":10724,"48091":10725,"48092":10726,"48093":7056,"48094":10727,"48099":10728,"48105":10729,"48121":8669,"48137":7789,"48138":10730,"48139":10731,"48141":10732,"48142":10733,"48156":8670,"48165":8671,"48166":7790,"48171":10734,"48172":10735,"48173":10736,"48174":10737,"48175":5569,"48176":8672,"48177":10738,"48178":10739,"48192":6537,"48194":8673,"48217":7791,"48245":8674,"48246":10740,"48248":10741,"48249":10742,"48256":6043,"48270":6044,"48278":10743,"48279":10744,"48283":10745,"48286":10746,"48320":7792,"48328":10747,"48329":7793,"48330":10748,"48331":10749,"48433":5049,"48435":8675,"48509":7794,"48510":7795,"48543":10750,"48555":7057,"48556":7058,"48558":7059,"48683":10751,"48684":10752,"48686":10753,"48687":10754,"48709":10755,"48743":4322,"48746":4325,"48762":10756,"48778":8676,"48813":10757,"48815":10758,"48826":7796,"48835":6538,"48842":6539,"48889":10759,"48893":8677,"48895":7060,"48923":4093,"48940":5050,"48942":4455,"48943":4456,"48972":2032,"48979":2843,"48981":3266,"48983":5570,"48984":10760,"49000":7797,"49010":10761,"49011":7798,"49013":10762,"49014":10763,"49101":7061,"49102":10764,"49103":8678,"49105":4457,"49106":5051,"49107":5052,"49108":4096,"49109":10765,"49147":7799,"49203":3066,"49257":10766,"49283":8679,"49292":7800,"49303":8680,"49304":8681,"49305":8682,"49306":8683,"49307":8684,"49309":8685,"49310":8686,"49324":6045,"49377":2037,"49427":10767,"49460":3614,"49462":8687,"49463":8688,"49466":10768,"49467":10769,"49468":5054,"49469":5055,"49470":10770,"49475":7062,"49480":10771,"49495":4100,"49569":8689,"49572":7801,"49639":8690,"49651":8691,"49759":7802,"49795":8692,"49796":8693,"49797":6046,"49813":10772,"49865":10773,"49897":5572,"49916":10774,"49918":6047,"49919":6048,"49920":6049,"49932":4102,"49942":8694,"50000":7803,"50002":7804,"50009":8695,"50030":5056,"50072":8696,"50073":5573,"50075":10775,"50107":7805,"50127":7806,"50128":10776,"50168":4458,"50169":5057,"50171":5058,"50173":4459,"50207":10777,"50221":7063,"50222":7064,"50233":1398,"50238":7807,"50270":8697,"50277":8698,"50340":8699,"50354":10778,"50366":10779,"50367":10780,"50372":10781,"50375":10782,"50376":10783,"50381":10784,"50382":10785,"50415":7808,"50416":6540,"50422":7809,"50423":6541,"50436":7065,"50492":8700,"50526":2848,"50531":10786,"50535":3268,"50536":10788,"50540":5059,"50541":6050,"50555":3616,"50561":5574,"50570":5060,"50571":5061,"50572":5062,"50606":4108,"50661":8701,"50669":7810,"50675":4110,"50677":7811,"50691":942,"50745":7812,"50783":4384,"50827":6051,"50828":6052,"50831":5317,"50844":10789,"50845":10790,"50853":4112,"50868":7813,"50876":8702,"50900":2042,"50906":4114,"50999":5575,"51014":2047,"51024":1716,"51029":10792,"51036":8703,"51082":5063,"51084":10793,"51232":7815,"51240":7067,"51243":8704,"51265":5576,"51271":7068,"51273":7069,"51275":8705,"51290":8706,"51292":5577,"51302":8707,"51350":8708,"51356":6053,"51377":5578,"51397":8709,"51398":6542,"51416":7816,"51418":7817,"51427":6054,"51479":8710,"51485":10794,"51493":8711,"51521":8712,"51527":8713,"51555":10795,"51649":7818,"51656":10796,"51663":8714,"51677":973,"51683":5318,"51699":5319,"51701":8715,"51703":5320,"51704":1089,"51709":7819,"51728":10797,"51747":7820,"51749":6543,"51760":7821,"51784":4116,"51823":8716,"51824":8717,"51827":7822,"51880":10798,"51893":8718,"51899":7823,"51946":10799,"51947":2490,"51951":7070,"51955":8719,"51960":6544,"51969":6545,"51971":6546,"51973":10800,"51991":8720,"51992":8721,"52003":8722,"52007":8723,"52022":5799,"52024":7071,"52054":7824,"52063":5321,"52074":7072,"52083":6055,"52094":7073,"52114":6547,"52122":10801,"52123":10802,"52134":6056,"52143":10803,"52145":10804,"52151":8724,"52154":7074,"52159":6548,"52173":7825,"52176":10805,"52191":10806,"52193":10807,"52194":10808,"52201":10809,"52207":8725,"52208":10810,"52209":10811,"52211":10812,"52212":10813,"52218":10814,"52221":7826,"52231":6057,"52360":2855,"52374":5064,"52375":8726,"52377":5065,"52399":7075,"52402":7827,"52424":2016,"52425":2860,"52428":10816,"52430":10817,"52431":4460,"52432":6058,"52433":10818,"52435":10819,"52436":10820,"52437":10821,"52439":10822,"52440":4461,"52441":10823,"52442":8727,"52474":8728,"52475":10824,"52537":5800,"52540":5322,"52552":10825,"52554":2499,"52611":2867,"52619":6549,"52643":7076,"52645":7828,"52676":1568,"52694":1093,"52703":7077,"52763":10826,"52764":8729,"52792":786,"52798":7829,"52800":4666,"52810":6550,"52846":8730,"52848":8731,"52872":5323,"52873":7830,"52874":5801,"52876":5802,"52878":10827,"52879":10828,"52880":7831,"52893":10829,"52896":5066,"52897":10830,"52898":10831,"52899":5067,"52900":5068,"52902":5069,"52920":5324,"52927":4667,"52928":6551,"52929":4668,"52930":4669,"52936":5325,"52941":10832,"52947":6552,"53017":7078,"53073":4124,"53092":7832,"53095":7833,"53099":7834,"53116":6553,"53138":6059,"53139":8732,"53206":7835,"53260":8733,"53275":6060,"53298":7079,"53299":8734,"53301":8735,"53317":10833,"53318":10834,"53319":10835,"53331":7836,"53358":10836,"53385":799,"53386":10837,"53387":10838,"53398":10839,"53399":10840,"53420":8736,"53434":7837,"53488":7080,"53511":10841,"53530":10842,"53554":4462,"53555":5070,"53556":5071,"53566":10843,"53616":10844,"53663":2512,"53675":6554,"53690":7838,"53691":8737,"53692":8738,"53712":8739,"53717":8740,"53735":6555,"53753":7839,"53757":6556,"53785":7840,"53824":7841,"53869":7842,"53872":5072,"53874":6557,"53893":10845,"53897":7843,"53898":10846,"53913":8741,"53916":7844,"53933":5579,"53935":7845,"53947":10847,"53950":10848,"53951":7846,"53956":8742,"53957":10849,"53958":10850,"53959":10851,"53960":10852,"53961":10853,"53969":6558,"53970":6559,"53987":10854,"53988":10855,"53989":10856,"54009":10857,"54010":10858,"54011":10859,"54012":10860,"54013":10861,"54021":10862,"54033":10863,"54034":10864,"54060":8743,"54061":7847,"54077":8744,"54103":10865,"54107":5580,"54117":10866,"54147":7848,"54217":10867,"54279":6560,"54373":6061,"54374":6062,"54375":8745,"54376":5073,"54391":2876,"54392":6561,"54440":7849,"54457":8746,"54527":8747,"54528":8748,"54530":6063,"54537":6064,"54538":6562,"54557":5803,"54582":7081,"54607":4126,"54625":7082,"54638":5804,"54639":5805,"54642":7850,"54668":1493,"54669":5074,"54671":5075,"54674":10868,"54686":7851,"54721":8749,"54732":4128,"54742":7852,"54792":3765,"54820":10869,"54823":10870,"54859":8750,"54885":8751,"54886":6563,"54894":7083,"54900":8752,"54909":7084,"54910":7085,"54934":6564,"54966":10871,"54969":10872,"54971":10873,"54972":10874,"55038":10875,"55043":3767,"55046":3769,"55049":8753,"55073":7086,"55098":5581,"55132":7853,"55142":7854,"55150":7855,"55207":6565,"55228":10876,"55229":6566,"55235":10877,"55236":10878,"55282":5326,"55318":8754,"55339":5076,"55374":5806,"55380":4130,"55396":7856,"55416":7087,"55421":7088,"55479":7857,"55491":10879,"55501":3771,"55530":1447,"55531":4670,"55534":5327,"55535":10881,"55549":6567,"55568":4132,"55725":7089,"55726":5077,"55727":6065,"55729":8755,"55743":8756,"55794":6066,"55799":6067,"55800":10882,"55801":10883,"55802":10884,"55805":10885,"55808":4671,"55850":5078,"55851":5079,"55853":5080,"55855":5081,"55891":7859,"55895":10886,"55899":7860,"55945":7090,"55957":3113,"55965":881,"55981":5807,"56035":6568,"56051":7091,"56064":7861,"56066":10887,"56068":6569,"56069":5808,"56071":10888,"56075":7862,"56076":10889,"56097":6570,"56142":10890,"56143":8757,"56145":8758,"56196":7092,"56197":8759,"56198":7093,"56227":10891,"56229":3196,"56236":5809,"56262":7863,"56268":6571,"56278":6068,"56293":10892,"56297":10893,"56298":10894,"56307":5582,"56308":6069,"56310":8760,"56313":10895,"56314":10896,"56315":10897,"56316":10898,"56324":7864,"56341":5328,"56345":4135,"56367":4137,"56372":6572,"56392":7865,"56405":6573,"56412":10899,"56413":5082,"56442":10900,"56458":5083,"56462":5084,"56464":10901,"56465":5085,"56469":5086,"56471":5087,"56477":4464,"56504":4139,"56517":10902,"56546":6070,"56548":7094,"56549":4141,"56551":6071,"56691":7866,"56694":10903,"56705":4672,"56711":8761,"56717":5329,"56765":5583,"56789":5584,"56803":5585,"56850":5810,"56909":8762,"56950":3198,"57020":3622,"57043":8763,"57065":6574,"57099":6575,"57107":3624,"57125":8764,"57162":10904,"57165":5586,"57175":10905,"57216":7095,"57217":7096,"57233":3410,"57255":3413,"57299":2880,"57317":5811,"57319":6576,"57353":7867,"57356":5088,"57357":10906,"57389":2883,"57390":3156,"57393":10908,"57412":1659,"57426":10909,"57441":7868,"57444":10910,"57450":5090,"57459":7097,"57463":5091,"57490":7869,"57492":5812,"57493":7870,"57494":7871,"57511":4673,"57512":4674,"57514":4675,"57539":5092,"57540":10911,"57541":10912,"57542":5093,"57544":10913,"57545":5094,"57548":6072,"57558":2888,"57560":5095,"57562":5096,"57653":5813,"57709":7872,"57713":7873,"57714":4676,"57716":1178,"57717":6577,"57731":7874,"57738":8765,"57765":5814,"57766":7875,"57767":6578,"57768":7876,"57770":10914,"57771":4677,"57772":7877,"57774":4678,"57776":6579,"57777":5815,"57779":10915,"57796":6580,"57803":6581,"57806":6582,"57809":6583,"57813":8766,"57829":6584,"57851":7878,"57869":10916,"57960":3773,"57961":7880,"57977":3775,"57981":5330,"57993":4679,"57995":7881,"58056":8767,"58104":8768,"58106":10917,"58123":10918,"58125":5587,"58130":10919,"58133":10920,"58135":10921,"58141":10922,"58197":4145,"58210":3200,"58211":10923,"58216":6586,"58218":7882,"58220":5816,"58263":10924,"58265":10925,"58266":10926,"58267":10927,"58268":10928,"58269":10929,"58271":10930,"58272":5331,"58281":8770,"58425":7883,"58444":6073,"58447":6074,"58464":6075,"58496":1017,"58497":10932,"58498":10933,"58500":7098,"58525":10934,"58533":6587,"58573":4150,"58578":7884,"58660":4385,"58661":10935,"58671":8771,"58679":10936,"58716":3777,"58732":8772,"58763":10937,"58764":10938,"58767":10939,"58768":10940,"58789":6588,"58885":5097,"58890":2893,"58906":7885,"58907":10942,"58909":7886,"58912":10943,"58914":8773,"58930":7887,"58937":4680,"58942":5817,"58964":5332,"58965":10944,"58966":5818,"58967":10945,"58968":4681,"58970":5333,"58971":5819,"58972":7888,"58984":6076,"59003":10946,"59007":7889,"59009":10947,"59010":10948,"59012":10949,"59013":10950,"59052":7890,"59075":6589,"59102":6590,"59122":5334,"59124":7891,"59126":4153,"59148":6592,"59155":7099,"59164":10951,"59183":7100,"59206":4682,"59217":6593,"59255":6594,"59257":4386,"59260":5335,"59263":7892,"59336":6595,"59340":5098,"59341":7101,"59367":6596,"59375":6597,"59379":6598,"59387":5820,"59417":6599,"59432":5336,"59439":5099,"59447":6600,"59483":10952,"59484":10953,"59500":5821,"59511":7893,"59513":5588,"59524":6077,"59525":6078,"59527":10954,"59528":10955,"59532":6079,"59533":6080,"59534":7102,"59557":6601,"59560":2056,"59574":5589,"59576":10957,"59579":10958,"59580":10959,"59582":4155,"59583":10960,"59599":4158,"59601":7894,"59608":10961,"59641":6602,"59645":6603,"59646":7895,"59660":6604,"59674":6082,"59682":5337,"59700":7896,"59704":7897,"59715":7898,"59755":4308,"59757":10963,"59758":10964,"59764":7899,"59789":10965,"59795":5822,"59801":6605,"59822":10966,"59834":7900,"59835":7901,"59842":10967,"59846":10969,"59906":7902,"59928":8774,"59930":8775,"59941":6606,"59943":7903,"59954":8776,"59956":8777,"59957":8778,"59988":4683,"59994":5823,"59995":7904,"59996":6607,"60000":10970,"60004":8779,"60005":8780,"60006":10971,"60011":4161,"60014":7905,"60016":5338,"60017":5339,"60028":7103,"60050":10972,"60062":10973,"60070":10974,"60102":6608,"60103":5340,"60132":10975,"60138":10976,"60139":10977,"60142":10978,"60143":5824,"60150":10979,"60151":10980,"60154":10981,"60155":10982,"60159":5825,"60160":3319,"60166":10983,"60197":6609,"60216":10984,"60242":7906,"60244":7907,"60246":7908,"60254":6610,"60256":5341,"60271":8781,"60272":8782,"60274":6611,"60282":6612,"60284":7909,"60286":7910,"60321":5342,"60356":10985,"60357":10986,"60358":10987,"60360":10988,"60391":10989,"60395":10990,"60397":5343,"60399":5826,"60400":5344,"60401":6613,"60447":10991,"60448":10992,"60460":10993,"60467":8783,"60475":10994,"60476":5590,"60480":10995,"60481":10996,"60482":10997,"60545":7911,"60546":7912,"60555":3505,"60556":4684,"60562":7913,"60563":7914,"60579":7915,"60596":8784,"60608":10998,"60609":5100,"60611":10999,"60612":8785,"60616":7916,"60623":7917,"60631":11000,"60632":5827,"60633":7918,"60634":7919,"60636":6615,"60647":7920,"60653":8786,"60690":11001,"60761":7104,"60764":5591,"60765":5592,"60766":5593,"60838":2517,"60857":7921,"60866":7922,"60871":6083,"60885":8787,"60905":7105,"60924":7923,"60931":5828,"60934":737,"60963":8788,"61021":6616,"61024":8789,"61039":6084,"61040":8790,"61041":11002,"61042":11003,"61043":11004,"61047":8791,"61050":8792,"61097":11005,"61106":11006,"61134":5594,"61136":2898,"61138":2903,"61143":2522,"61144":7924,"61146":6617,"61149":8793,"61165":6618,"61184":4165,"61200":11007,"61201":7106,"61202":6085,"61204":7107,"61213":7108,"61215":2253,"61225":5595,"61232":5596,"61234":1836,"61252":7109,"61253":11008,"61254":8794,"61341":8795,"61350":8796,"61399":5597,"61457":7110,"61466":11009,"61479":11010,"61480":1070,"61493":7926,"61525":7111,"61560":8797,"61581":8798,"61590":4465,"61619":8799,"61629":11011,"61631":11012,"61633":11013,"61638":6086,"61649":1841,"61675":4685,"61677":4686,"61683":4687,"61684":4688,"61685":8800,"61743":8801,"61761":5345,"61830":11014,"61831":11015,"61832":11016,"61848":7927,"61882":4167,"61883":3628,"61919":8802,"61953":4466,"61956":7112,"61959":11017,"62000":4169,"62019":11018,"62020":7928,"62021":1846,"62022":7929,"62048":6619,"62086":5598,"62112":8803,"62113":5101,"62114":6087,"62115":5102,"62131":6620,"62149":1664,"62166":11019,"62167":11020,"62168":11021,"62170":11022,"62181":11023,"62182":5599,"62190":7930,"62198":11024,"62214":5829,"62217":11025,"62218":11026,"62219":11027,"62220":5830,"62230":8804,"62241":8805,"62246":2529,"62247":8806,"62248":8807,"62282":11028,"62283":7931,"62292":5831,"62295":6621,"62313":7932,"62343":5832,"62347":5600,"62350":6088,"62357":5601,"62359":7113,"62385":5833,"62406":7114,"62407":7115,"62447":11029,"62448":7933,"62449":11030,"62450":11031,"62451":11032,"62494":2061,"62549":5346,"62550":6623,"62589":6624,"62591":6625,"62592":6626,"62594":7934,"62617":4387,"62618":4689,"62619":11033,"62620":4690,"62636":11034,"62639":11035,"62643":11036,"62667":6089,"62748":11037,"62753":7935,"62757":6627,"62785":11038,"62794":6628,"62820":11039,"62821":7936,"62832":7937,"62836":6629,"62847":11040,"62850":11041,"62852":11042,"62858":7938,"62860":6630,"62864":6631,"62873":2908,"62898":5834,"62910":2064,"62927":7939,"62934":4388,"62960":7940,"62969":7941,"62988":6632,"63009":6633,"63014":2536,"63049":7942,"63050":11043,"63052":6634,"63173":6090,"63216":6635,"63241":11044,"63242":11045,"63246":11046,"63265":7943,"63297":7944,"63298":7945,"63321":8808,"63327":7946,"63328":7947,"63331":6636,"63333":6637,"63334":11047,"63366":7948,"63369":11048,"63370":11049,"63371":11050,"63372":11051,"63391":4389,"63394":6638,"63404":7949,"63442":4467,"63443":5103,"63444":8809,"63445":11052,"63447":6091,"63448":11053,"63449":11054,"63473":7950,"63490":3784,"63491":6639,"63521":11055,"63541":6640,"63577":7951,"63588":6641,"63589":11056,"63590":11057,"63591":11058,"63592":11059,"63594":11060,"63597":4390,"63598":11061,"63599":11062,"63600":4691,"63644":11063,"63659":6642,"63668":11064,"63676":5835,"63677":6643,"63678":5836,"63679":11065,"63681":11066,"63689":11067,"63690":11068,"63692":11069,"63693":11070,"63712":4692,"63715":11071,"63749":11072,"63762":6644,"63822":5104,"63823":5105,"63848":7952,"63868":7116,"63881":7953,"63904":5347,"63907":7954,"63960":7955,"63976":6645,"63983":4468,"63984":5106,"63986":5107,"63988":5108,"63992":5109,"63993":5110,"63994":5111,"63998":11073,"63999":11074,"64003":7956,"64032":7957,"64046":2541,"64074":7117,"64076":5602,"64078":7118,"64081":7958,"64099":7119,"64100":11075,"64101":11076,"64102":11077,"64112":7120,"64115":8810,"64136":7121,"64137":7122,"64138":8811,"64141":8812,"64165":5112,"64166":5113,"64167":5114,"64168":11078,"64171":5115,"64172":5116,"64173":5117,"64179":5348,"64180":5349,"64184":7959,"64192":8813,"64199":8814,"64232":5350,"64233":11079,"64236":11080,"64267":7123,"64269":5118,"64270":5119,"64272":5120,"64327":11081,"64329":11082,"64331":11083,"64332":11084,"64366":6646,"64369":11085,"64372":11086,"64373":11087,"64375":11088,"64376":11089,"64399":6092,"64401":4391,"64402":5351,"64403":4693,"64405":5352,"64407":5837,"64413":11090,"64425":5353,"64440":11091,"64441":11092,"64444":11093,"64461":7960,"64463":11094,"64473":11095,"64480":6647,"64481":11096,"64482":11097,"64484":11098,"64486":11099,"64496":11100,"64497":11101,"64498":7961,"64499":11102,"64501":11103,"64504":11104,"64556":7962,"64570":11105,"64573":11106,"64577":8815,"64639":7963,"64659":11107,"64692":4172,"64705":7964,"64735":6648,"64769":11108,"64770":11109,"64784":6649,"64786":6650,"64788":5354,"64828":6093,"64845":7965,"64847":7966,"64850":7967,"64852":7968,"64857":11110,"64858":7969,"64859":11111,"64863":5355,"64865":7970,"64869":7124,"64874":5121,"64897":5122,"64900":11112,"64901":11113,"64902":7971,"64903":7972,"64905":11114,"64939":5838,"65050":5356,"65089":11115,"65093":11116,"65094":6651,"65143":11117,"65167":3508,"65170":11119,"65174":1417,"65176":6652,"65178":5839,"65180":6653,"65181":11120,"65182":7973,"65192":8816,"65204":11121,"65205":11122,"65206":8817,"65209":8818,"65217":5123,"65218":5124,"65235":7974,"65266":11123,"65271":11124,"65272":2548,"65275":4393,"65278":7975,"65283":2553,"65295":11125,"65298":11126,"65302":2913,"65307":8819,"65309":8820,"65311":11128,"65312":5125,"65343":7976,"65355":7977,"65389":5840,"65396":11129,"65400":11130,"65405":11131,"65408":11132,"65415":11133,"65416":11134,"65424":2069,"65426":8821,"65445":8822,"65447":11135,"65469":11136,"65470":11137,"65471":11138,"65474":4175,"65482":5126,"65518":11139,"65532":11140,"65533":11141,"65570":5603,"65574":8823,"65598":3115,"65610":8824,"65620":5604,"65634":11142,"65663":4394,"65666":7978,"65679":11143,"65680":11144,"65681":11145,"65689":5605,"65690":5606,"65707":742,"65716":6094,"65719":7125,"65722":8825,"65732":2558,"65754":6654,"65781":6095,"65819":7126,"65820":5607,"65829":5841,"65855":6655,"65856":11146,"65858":6096,"65861":5127,"65862":5128,"65864":5129,"65867":8826,"65891":11147,"65893":11148,"65895":8827,"65896":8828,"65898":11149,"65916":8829,"65946":1849,"65957":2920,"66031":5130,"66032":5131,"66035":5132,"66042":6656,"66076":8830,"66108":1854,"66109":5608,"66122":6657,"66134":8831,"66137":7979,"66139":5133,"66141":5134,"66142":11150,"66148":2925,"66165":5135,"66166":5136,"66172":4395,"66179":7127,"66181":11151,"66183":11152,"66185":2074,"66193":6658,"66200":7980,"66237":5357,"66239":5358,"66241":5359,"66253":7981,"66273":7982,"66290":11154,"66366":6659,"66369":4694,"66373":11155,"66374":11156,"66377":11157,"66378":11158,"66390":11159,"66435":8832,"66440":5842,"66444":6660,"66452":7983,"66454":4695,"66455":7984,"66515":6661,"66516":6662,"66517":6663,"66527":4696,"66528":4697,"66530":4698,"66550":6664,"66564":7985,"66572":7986,"66573":7987,"66596":11160,"66620":11161,"66680":8833,"66686":8834,"66688":6097,"66696":4699,"66697":5843,"66698":5844,"66723":4700,"66724":5845,"66725":4701,"66726":4702,"66730":11162,"66734":4703,"66735":4704,"66748":8835,"66785":8836,"66791":11163,"66792":11164,"66796":11165,"66797":11166,"66802":7988,"66803":11167,"66829":2930,"66886":5846,"66924":11168,"66934":11169,"66936":11170,"66938":7128,"66943":7129,"66949":11171,"66952":11172,"66972":11173,"66973":11174,"66974":8837,"66984":11175,"66991":7130,"66993":7131,"66994":7132,"66995":5137,"66998":5138,"67011":5139,"67019":11176,"67021":5140,"67024":8838,"67068":11177,"67118":6098,"67135":7133,"67141":7134,"67157":7989,"67188":7990,"67224":7991,"67227":6665,"67260":7135,"67263":7136,"67268":7137,"67285":11178,"67322":5141,"67323":6099,"67324":8839,"67325":6100,"67348":7138,"67365":5609,"67366":6101,"67384":7139,"67414":8840,"67418":7140,"67427":11179,"67428":11180,"67430":4705,"67432":11181,"67452":2935,"67457":11182,"67464":8841,"67526":7141,"67589":11183,"67590":11184,"67610":5610,"67667":7992,"67668":7993,"67669":7994,"67674":11185,"67675":11186,"67695":8842,"67706":6666,"67711":6667,"67753":1347,"67755":4183,"67762":8843,"67766":3791,"67780":6668,"67820":11187,"67821":11188,"67825":11189,"67828":4185,"67830":6669,"67846":11190,"67847":11191,"67849":11192,"67858":6670,"67862":3159,"67863":7995,"67883":3631,"67896":5847,"67897":5848,"67962":6671,"67963":7996,"67979":1420,"67980":11193,"67982":5611,"68039":6672,"68040":6673,"68044":8844,"68082":7997,"68161":2097,"68165":5612,"68172":7998,"68173":5360,"68211":5849,"68216":3026,"68217":11194,"68218":3031,"68219":11195,"68303":7999,"68335":8000,"68343":8001,"68354":6674,"68356":4706,"68398":6675,"68399":6676,"68400":1741,"68442":3521,"68443":4336,"68446":4333,"68448":8002,"68449":6677,"68450":8003,"68460":4339,"68483":2577,"68503":11196,"68504":11197,"68508":8845,"68534":11198,"68536":8846,"68551":2582,"68555":8004,"68562":11199,"68563":11200,"68580":3802,"68581":11201,"68675":11202,"68697":6102,"68706":8847,"68708":4469,"68709":4470,"68713":4471,"68716":8005,"68752":3202,"68760":6678,"68763":6679,"68765":11203,"68770":11204,"68776":11205,"68785":1673,"68800":8848,"68821":4288,"68842":8006,"68892":3633,"68909":8849,"68936":8007,"68949":8850,"68968":7142,"68998":3806,"69009":6680,"69062":5613,"69064":8851,"69066":11206,"69075":5614,"69078":8852,"69079":8853,"69084":5142,"69094":7143,"69099":7144,"69107":11207,"69108":8008,"69109":8854,"69111":11208,"69113":11209,"69120":7145,"69147":11210,"69152":2946,"69173":8855,"69184":1863,"69185":11212,"69186":11213,"69189":5615,"69259":8856,"69283":5616,"69313":11214,"69318":5617,"69341":4192,"69342":8009,"69386":5143,"69409":3809,"69426":11215,"69431":5144,"69452":8857,"69457":3169,"69463":5145,"69467":5146,"69473":11217,"69479":4194,"69508":6681,"69548":11218,"69557":6103,"69560":5361,"69572":4197,"69576":8858,"69579":8010,"69606":11219,"69607":11220,"69636":11221,"69676":11222,"69689":2593,"69726":8859,"69745":8860,"69747":11223,"69749":6682,"69771":11224,"69776":5362,"69777":11225,"69778":11226,"69779":11227,"69789":11228,"69790":8861,"69792":8011,"69804":6683,"69807":11229,"69828":11230,"69835":6684,"69839":3171,"69841":5850,"69849":11231,"69892":6104,"69915":4200,"69965":5147,"69989":11232,"69990":11233,"69992":11234,"69993":11235,"70030":4707,"70031":8012,"70033":5363,"70036":4708,"70037":8013,"70038":5364,"70071":7146,"70073":2955,"70103":8862,"70110":2258,"70117":2598,"70165":11236,"70173":5618,"70190":1572,"70200":8014,"70201":11237,"70202":11238,"70204":11239,"70205":8015,"70232":11240,"70236":6685,"70240":11241,"70241":11242,"70249":5619,"70250":5620,"70252":5621,"70255":7147,"70278":11243,"70318":11244,"70320":11245,"70321":11246,"70322":8863,"70366":11247,"70424":11248,"70472":8864,"70483":11249,"70498":8016,"70506":11250,"70519":11251,"70522":6686,"70523":8865,"70550":7148,"70552":11252,"70553":11253,"70554":7149,"70557":3279,"70561":5365,"70565":11254,"70575":5622,"70586":11255,"70587":11256,"70589":11257,"70591":5366,"70609":11258,"70633":2603,"70652":8866,"70670":5623,"70671":11259,"70672":5624,"70673":11261,"70674":11260,"70697":3814,"70701":3425,"70726":8867,"70728":7150,"70735":5625,"70752":6687,"70762":11262,"70767":7151,"70768":8868,"70769":6105,"70772":11263,"70773":11264,"70775":11265,"70778":11266,"70779":8869,"70786":6106,"70817":8870,"70846":8871,"70873":5626,"70915":11267,"70916":11268,"70917":11269,"70918":11270,"70947":1404,"70976":3635,"70982":11271,"70995":5851,"71039":8872,"71074":1354,"71098":8017,"71099":8018,"71112":4709,"71125":8019,"71145":6688,"71182":11272,"71183":11273,"71186":11274,"71187":11275,"71188":11276,"71189":11277,"71226":11278,"71227":11279,"71229":8020,"71232":11280,"71233":11281,"71234":6689,"71237":11282,"71238":11283,"71251":8021,"71254":8873,"71259":7152,"71262":7153,"71266":3488,"71300":8022,"71302":1009,"71311":8023,"71312":8024,"71331":8025,"71334":8026,"71339":2962,"71341":4710,"71342":11284,"71344":11285,"71351":2967,"71359":6690,"71392":7154,"71395":5148,"71412":4472,"71413":8874,"71414":5149,"71415":4473,"71416":5150,"71417":5151,"71419":4474,"71449":2612,"71450":8027,"71456":1425,"71468":5367,"71490":8875,"71583":6691,"71584":11286,"71604":11287,"71605":11288,"71606":11289,"71607":11290,"71619":8028,"71621":8029,"71627":8030,"71644":11291,"71648":11292,"71651":11293,"71652":11294,"71653":6692,"71662":8876,"71663":8877,"71691":6107,"71703":6693,"71704":8878,"71709":8031,"71714":11295,"71726":8032,"71738":8033,"71753":6694,"71755":8034,"71770":8879,"71814":11296,"71821":2100,"71828":7155,"71849":3324,"71854":2617,"71857":5852,"71859":8035,"71873":8036,"71895":8880,"71971":5368,"71972":8037,"71997":3638,"72044":11297,"72045":11298,"72051":8038,"72054":11299,"72055":7156,"72084":5152,"72085":5153,"72087":5154,"72109":6108,"72125":4711,"72127":5369,"72128":6695,"72130":6696,"72172":5627,"72175":5155,"72181":5156,"72196":8881,"72242":8882,"72278":8039,"72288":11300,"72310":8883,"72343":8040,"72356":6109,"72362":8041,"72385":8042,"72392":8043,"72406":7157,"72408":7158,"72409":5628,"72411":8884,"72433":8885,"72436":8886,"72451":11301,"72452":11302,"72454":11303,"72455":7159,"72456":11304,"72457":2622,"72486":8887,"72515":11305,"72567":8044,"72580":11306,"72581":11307,"72591":8045,"72592":8046,"72599":8047,"72600":11308,"72604":6697,"72609":11309,"72629":3173,"72639":8888,"72661":5853,"72710":11310,"72711":11311,"72712":11312,"72715":6698,"72720":11313,"72730":11314,"72742":2627,"72746":6699,"72752":6700,"72761":4207,"72764":8889,"72774":11315,"72787":8048,"72792":8049,"72832":8050,"72833":1577,"72842":11316,"72844":11317,"72850":11318,"72851":11319,"72853":11320,"72854":6110,"72870":6701,"72878":8051,"72879":8052,"72882":6702,"72883":5629,"72915":5854,"72919":8890,"72924":4209,"72935":6703,"72949":11321,"72951":11322,"72952":11323,"72961":5157,"73004":8053,"73036":6111,"73086":11324,"73087":8891,"73089":8892,"73090":8893,"73098":7160,"73107":7161,"73112":6704,"73164":8894,"73181":11325,"73207":4397,"73219":11326,"73220":5370,"73221":11327,"73222":4712,"73224":8054,"73232":8895,"73236":8896,"73237":6112,"73239":11328,"73240":11329,"73242":8897,"73243":5630,"73245":11330,"73247":5631,"73272":3207,"73274":6705,"73293":7162,"73331":8898,"73334":8899,"73335":8900,"73348":11331,"73349":11332,"73357":7163,"73377":2261,"73406":2266,"73418":11333,"73425":11334,"73428":11335,"73431":11336,"73450":2976,"73474":8055,"73499":8901,"73508":2105,"73509":6706,"73520":6707,"73528":2110,"73538":11338,"73539":11339,"73544":11340,"73587":4214,"73632":11341,"73633":11342,"73634":6708,"73636":11343,"73637":11344,"73638":11345,"73657":11346,"73658":11347,"73660":8903,"73662":11348,"73663":11349,"73666":8056,"73674":8057,"73688":11350,"73694":7165,"73706":5632,"73707":11351,"73713":11352,"73714":11353,"73766":3211,"73768":11355,"73769":11356,"73784":8904,"73787":11357,"73796":11358,"73797":11359,"73799":11360,"73800":6113,"73822":11361,"73828":4216,"73831":6709,"73841":8058,"73878":5158,"73879":11363,"73881":11364,"73898":5159,"73900":8905,"73901":11365,"73920":6114,"73961":8059,"73962":5855,"73984":8906,"74022":8060,"74047":8061,"74059":8907,"74072":8062,"74078":6710,"74100":8063,"74105":8064,"74109":8065,"74120":7166,"74139":7167,"74179":8908,"74182":8066,"74189":8067,"74195":8068,"74207":11366,"74208":8069,"74209":11367,"74210":8070,"74213":5856,"74215":5857,"74288":11368,"74304":11369,"74305":11370,"74307":11371,"74308":11372,"74309":11373,"74311":5858,"74312":6711,"74313":5371,"74325":7168,"74333":7169,"74349":8909,"74354":11374,"74355":11376,"74367":11375,"74394":11377,"74395":11378,"74397":11379,"74399":11380,"74402":11381,"74405":11382,"74406":11383,"74407":11384,"74408":5160,"74409":11385,"74414":6712,"74421":8910,"74423":8911,"74462":5633,"74463":11386,"74464":11387,"74465":11388,"74469":5372,"74474":11389,"74510":5161,"74514":5162,"74515":11390,"74517":5163,"74518":11391,"74520":7170,"74592":6713,"74596":2115,"74646":8071,"74650":5373,"74660":11392,"74672":6714,"74683":6715,"74688":5374,"74698":8912,"74710":8913,"74744":4218,"74748":6716,"74776":4713,"74804":8914,"74805":4220,"74863":11393,"74865":11394,"74866":11395,"74867":11396,"74868":11397,"74869":6717,"74870":11398,"74902":8072,"74908":6718,"74919":1582,"74962":7171,"74963":5634,"74982":6719,"74991":3427,"75034":11399,"75036":11400,"75037":11401,"75042":6720,"75048":11402,"75049":11403,"75050":11404,"75051":11405,"75052":11406,"75053":11407,"75066":11408,"75072":11409,"75073":11410,"75074":11411,"75149":7172,"75153":7173,"75168":8915,"75169":8916,"75177":11412,"75179":11413,"75180":11414,"75181":7174,"75200":4222,"75206":1589,"75215":11415,"75216":11416,"75221":8073,"75223":5376,"75228":5377,"75243":11417,"75245":11418,"75261":11419,"75264":11420,"75265":11421,"75277":8917,"75310":7175,"75326":8074,"75329":6721,"75336":6722,"75410":8075,"75415":11422,"75431":11423,"75437":5859,"75470":8076,"75542":6723,"75570":8918,"75624":6724,"75714":3824,"75736":8077,"75737":6725,"75739":8078,"75741":4225,"75749":5635,"75808":11424,"75809":11425,"75823":1868,"75826":4228,"75834":5378,"75847":11426,"75848":5379,"75849":6115,"75850":5636,"75897":6726,"75917":6727,"76012":5164,"76032":8079,"76064":11427,"76083":11428,"76084":11429,"76085":11430,"76110":7176,"76139":6728,"76141":8080,"76142":7177,"76154":7178,"76163":8919,"76176":8920,"76182":6116,"76204":7179,"76261":6729,"76284":3642,"76285":6117,"76289":5165,"76290":8921,"76296":11431,"76299":4714,"76345":8922,"76347":6118,"76506":4230,"76511":8081,"76526":8923,"76529":4475,"76541":8082,"76543":5637,"76578":6730,"76587":5860,"76604":8083,"76606":8084,"76609":11432,"76631":11433,"76641":5638,"76643":5639,"76644":5640,"76646":8924,"76671":4232,"76679":11435,"76791":11436,"76793":11437,"76796":11438,"76797":11439,"76798":5166,"76801":8925,"76812":11440,"76818":8926,"76819":4234,"76820":11442,"76822":11443,"76823":11444,"76824":11445,"76856":6731,"76882":6119,"76892":6120,"76950":8085,"76984":8927,"76988":11446,"76990":4715,"76992":4716,"76994":8928,"76996":11447,"77052":3073,"77074":4305,"77140":6732,"77209":8929,"77283":4290,"77329":1871,"77338":5641,"77377":8086,"77456":11448,"77457":6733,"77480":1746,"77481":11449,"77484":11450,"77513":11451,"77514":11452,"77515":11453,"77516":7180,"77518":11454,"77519":11455,"77520":1101,"77526":8930,"77545":6734,"77547":11456,"77554":5380,"77557":5861,"77569":7181,"77570":6121,"77603":2981,"77629":8931,"77630":8932,"77635":7182,"77652":8933,"77676":11457,"77677":5167,"77679":11458,"77680":11459,"77737":3120,"77740":8087,"77791":2120,"77797":6122,"77799":8088,"77800":6735,"77801":3829,"77820":8089,"77841":1751,"77851":8090,"77852":3326,"77857":5862,"77861":5168,"77870":5169,"77895":8091,"77917":6123,"77936":2646,"77957":6737,"77962":3175,"77964":7183,"77994":4717,"77996":4718,"78014":11461,"78040":567,"78102":3528,"78105":4719,"78121":7184,"78128":8934,"78129":8935,"78140":5863,"78141":8092,"78142":11462,"78143":11463,"78175":8936,"78186":8093,"78210":681,"78219":8094,"78241":8095,"78243":4238,"78255":4240,"78261":11464,"78273":1596,"78294":8096,"78299":6738,"78319":5381,"78325":6739,"78334":8937,"78344":4476,"78350":11466,"78357":8938,"78364":8939,"78395":11467,"78396":6124,"78397":7185,"78398":11468,"78399":8940,"78400":8941,"78401":8942,"78424":11469,"78425":11470,"78459":894,"78478":4242,"78499":8097,"78502":8098,"78513":11471,"78514":11472,"78516":11473,"78517":11474,"78554":11475,"78557":8943,"78610":6740,"78643":8944,"78654":11476,"78655":11477,"78657":11478,"78658":6125,"78722":4720,"78727":4399,"78729":4721,"78730":4722,"78736":4723,"78742":4724,"78743":4725,"78816":8099,"78834":11479,"78835":11480,"78836":11481,"78837":11482,"78862":8100,"78905":8101,"78941":8102,"78950":8103,"78958":6741,"78988":4244,"79000":11484,"79004":11485,"79013":6126,"79014":11486,"79016":8945,"79017":6127,"79021":6128,"79052":11487,"79060":7186,"79071":11488,"79075":11489,"79076":11490,"79077":5864,"79080":11491,"79121":11492,"79122":6742,"79126":11493,"79127":11494,"79128":8946,"79144":8104,"79153":5170,"79154":5171,"79172":2985,"79206":11495,"79211":11496,"79241":3534,"79242":11497,"79244":11498,"79257":6743,"79258":4279,"79275":2132,"79284":6129,"79373":2137,"79399":8947,"79419":4400,"79420":4726,"79421":4727,"79463":11499,"79510":4477,"79511":7188,"79514":11500,"79520":6130,"79521":5172,"79541":8948,"79551":8949,"79552":8950,"79559":2142,"79560":6745,"79570":2652,"79592":11501,"79594":5382,"79599":8105,"79605":8106,"79609":11502,"79612":5865,"79614":6746,"79615":8107,"79616":8108,"79619":8951,"79641":7189,"79642":7190,"79736":11503,"79740":5173,"79751":8109,"79826":4246,"79836":5174,"79837":991,"79844":3539,"79885":8952,"79890":2271,"79915":11504,"79919":8110,"79953":8953,"79954":8954,"79968":8111,"79969":5383,"79978":4249,"79994":1097,"80053":11505,"80054":11506,"80055":11507,"80056":11508,"80057":7192,"80071":11509,"80097":11510,"80107":11511,"80111":4479,"80114":8955,"80115":11512,"80116":4478,"80167":8956,"80174":8112,"80205":5175,"80207":8113,"80229":11513,"80234":1025,"80236":7193,"80239":7194,"80243":8957,"80262":6131,"80266":8958,"80273":4728,"80274":8959,"80281":6747,"80282":6132,"80283":7195,"80285":6748,"80290":8114,"80299":5642,"80308":8960,"80310":8961,"80314":8962,"80316":7196,"80318":7197,"80320":11515,"80321":5643,"80323":8963,"80326":11516,"80328":7198,"80338":8964,"80359":7199,"80365":7200,"80370":6133,"80371":7201,"80372":4251,"80374":8965,"80375":11517,"80382":6134,"80383":8966,"80402":7203,"80404":7204,"80405":6749,"80406":8967,"80407":8968,"80414":11518,"80416":11519,"80424":5644,"80428":11520,"80430":8969,"80438":7205,"80444":8115,"80463":8970,"80470":8971,"80473":8972,"80483":6750,"80508":8973,"80509":7206,"80512":11521,"80533":6135,"80536":6136,"80537":7207,"80539":5176,"80540":5177,"80542":5645,"80544":8974,"80551":6137,"80564":5646,"80567":11522,"80572":6138,"80589":8116,"80596":5178,"80603":8975,"80604":11523,"80620":8976,"80630":8977,"80632":8117,"80637":7208,"80638":11524,"80645":11525,"80652":5647,"80654":6751,"80660":7209,"80661":6139,"80663":6140,"80666":8978,"80668":8118,"80671":5648,"80688":11526,"80693":5649,"80695":6141,"80699":6142,"80706":6752,"80710":7210,"80712":5650,"80721":6143,"80722":5651,"80723":11527,"80741":7211,"80752":8119,"80760":11528,"80766":4729,"80769":6753,"80772":8979,"80784":8980,"80785":6144,"80786":8981,"80790":2988,"80808":8982,"80821":11529,"80830":8983,"80833":8984,"80839":11530,"80840":11531,"80841":11532,"80842":11533,"80847":8985,"80885":8986,"80887":8987,"80889":11534,"80890":11535,"80891":11536,"80892":11537,"80895":8988,"80905":11538,"80906":11539,"80908":11540,"80909":11541,"80925":8989,"80956":8990,"80967":8991,"80976":5866,"80988":8992,"81014":7212,"81023":6145,"81024":8993,"81025":5652,"81028":11542,"81047":5653,"81052":6146,"81055":6147,"81063":8994,"81071":8995,"81074":8996,"81093":8997,"81115":8998,"81116":8999,"81120":9000,"81128":5179,"81130":4480,"81134":6148,"81137":9001,"81148":9002,"81149":11543,"81156":9003,"81157":7213,"81163":9004,"81165":5654,"81166":7214,"81167":9005,"81168":9006,"81169":9007,"81170":7215,"81171":5180,"81172":4253,"81173":11545,"81181":8120,"81189":11546,"81194":11547,"81200":5867,"81204":9008,"81206":9009,"81218":9010,"81227":7216,"81234":7217,"81235":11548,"81247":8121,"81256":3645,"81258":5655,"81259":9012,"81261":5656,"81262":9013,"81270":5384,"81272":9014,"81275":6149,"81276":6150,"81277":6151,"81282":9015,"81283":11549,"81285":11550,"81290":7218,"81295":9016,"81299":11551,"81305":9017,"81307":6152,"81308":6153,"81316":6154,"81318":9018,"81323":6155,"81334":5181,"81335":4481,"81342":11552,"81345":11553,"81355":5657,"81360":7219,"81365":6156,"81366":6157,"81370":6158,"81376":6159,"81377":9019,"81379":6160,"81384":7220,"81386":5182,"81387":6161,"81388":9020,"81396":7221,"81407":6162,"81412":7222,"81413":5183,"81414":4482,"81416":6754,"81422":9021,"81429":7223,"81430":11554,"81433":9022,"81434":9023,"81437":9024,"81441":8122,"81454":7224,"81461":5184,"81464":9025,"81469":11555,"81486":11556,"81498":9026,"81506":9027,"81510":11557,"81515":8123,"81521":9028,"81523":11558,"81527":8124,"81533":6755,"81550":11559,"81559":9029,"81564":9030,"81565":11560,"81573":9031,"81577":9032,"81582":11561,"81615":11562,"81629":3838,"81646":11563,"81648":9033,"81659":5185,"81662":6163,"81667":8125,"81669":6164,"81670":5658,"81672":7225,"81673":5659,"81692":8126,"81703":9034,"81704":9035,"81705":9036,"81714":11564,"81732":9037,"81741":11565,"81742":11566,"81743":9038,"81744":9039,"81746":6165,"81752":9040,"81753":5660,"81778":11567,"81783":9041,"81790":9042,"81802":5661,"81803":6166,"81804":9043,"81806":9044,"81807":9045,"81813":5662,"81820":7226,"81825":11568,"81845":5663,"81870":9046,"81871":5664,"81876":9047,"81877":9048,"81883":9049,"81888":9050,"81894":11569,"81895":9051,"81907":3840,"81913":9052,"81921":9053,"81923":5665,"81927":6167,"81934":6168,"81943":5666,"81946":6169,"81947":6170,"81950":7227,"81952":9054,"81959":9055,"81971":9056,"81972":9057,"81973":1678,"81975":11570,"81976":7228,"81977":5667,"81988":9059,"81990":8127,"81993":6171,"82008":8128,"82021":9060,"82025":9061,"82028":9062,"82029":11571,"82031":7229,"82040":6172,"82044":9063,"82047":9064,"82048":9065,"82058":7230,"82068":5186,"82075":11572,"82101":9066,"82104":7231,"82115":5668,"82117":9067,"82120":9068,"82123":7232,"82126":9069,"82131":7233,"82140":11573,"82141":9070,"82142":7234,"82143":9071,"82152":7235,"82156":9072,"82169":11574,"82177":9073,"82185":6173,"82204":7236,"82210":6174,"82211":6175,"82224":4730,"82227":9074,"82231":7237,"82234":9075,"82237":7238,"82238":6176,"82241":9076,"82244":9077,"82247":9078,"82250":9079,"82252":7239,"82254":9080,"82255":7240,"82258":9081,"82264":6756,"82266":7241,"82267":9082,"82268":11575,"82277":9083,"82278":7242,"82279":9084,"82295":3842,"82300":5669,"82301":9085,"82306":9086,"82310":11577,"82320":11578,"82324":9087,"82332":9088,"82356":6177,"82357":5670,"82365":9089,"82366":8129,"82377":9090,"82386":11579,"82395":11580,"82398":4483,"82401":7243,"82417":4731,"82418":4732,"82424":11581,"82425":9091,"82431":7244,"82441":9092,"82442":9093,"82443":8130,"82444":9094,"82450":11582,"82454":8131,"82469":9095,"82470":7245,"82475":6178,"82480":11583,"82481":7246,"82494":11584,"82497":5187,"82498":9096,"82513":6757,"82519":9097,"82531":9098,"82534":6179,"82536":9099,"82544":11585,"82546":9100,"82549":9101,"82552":7247,"82555":9102,"82558":9103,"82564":7248,"82577":9104,"82600":6180,"82601":7249,"82603":9105,"82612":5671,"82620":11586,"82623":9106,"82625":5672,"82626":5673,"82636":9107,"82653":11596,"82658":8132,"82667":6758,"82682":7250,"82684":6181,"82691":11587,"82695":9108,"82701":6182,"82709":8133,"82716":9109,"82724":9110,"82725":5674,"82731":5675,"82734":7251,"82736":9111,"82745":7252,"82746":5676,"82762":812,"82765":5385,"82767":9112,"82769":6183,"82789":6759,"82806":4733,"82807":8134,"82808":11588,"82833":4734,"82840":11589,"82841":4735,"82851":6760,"82852":11590,"82853":11591,"82855":9113,"82865":5386,"82875":11592,"82896":9114,"82899":8135,"82941":11593,"82947":9115,"82970":9116,"82997":8136,"82999":8137,"83013":8138,"83015":8139,"83017":11594,"83018":11595,"83020":11597,"83021":2147,"83064":8140,"83069":8141,"83073":8142,"83076":8143,"83080":8144,"83090":6761,"83117":8145,"83174":4255,"83195":11598,"83224":5387,"83225":5388,"83229":11599,"83230":8146,"83231":11600,"83232":5868,"83234":5869,"83245":5389,"83248":5390,"83249":5391,"83252":6762,"83259":5870,"83314":9117,"83324":11601,"83386":8147,"83455":8148,"83476":9118,"83576":8149,"83580":5392,"83596":5188,"83603":5189,"83604":9119,"83649":8150,"83684":6763,"83687":11602,"83688":11603,"83701":5871,"83702":8151,"83706":5872,"83726":6184,"83738":9120,"83746":5873,"83777":9121,"83782":6764,"83784":3069,"83809":11604,"83832":5874,"83842":4484,"83843":4485,"83844":5190,"83846":5191,"83851":4486,"83856":6765,"83877":11605,"83914":11606,"83916":9122,"83918":11607,"83925":11608,"83926":11609,"83927":11610,"83929":11611,"83930":11612,"83931":11613,"83932":11614,"83933":6766,"83934":11616,"83935":6767,"83937":11615,"83938":6768,"83964":6769,"83981":11617,"83986":11618,"83988":8152,"83994":5192,"83997":5677,"84024":6770,"84036":11619,"84037":11620,"84038":11621,"84039":11622,"84043":5193,"84045":5194,"84049":7253,"84053":7254,"84073":11623,"84074":9123,"84075":11624,"84076":11625,"84077":11626,"84078":11627,"84079":9124,"84081":11628,"84082":3286,"84083":11630,"84138":5393,"84139":6771,"84146":11631,"84184":8153,"84187":11632,"84188":11633,"84189":11634,"84190":11635,"84201":8154,"84230":6772,"84235":6773,"84239":11636,"84260":8155,"84265":11637,"84272":7255,"84273":9125,"84276":8156,"84284":11638,"84289":6774,"84298":9126,"84337":9127,"84339":11639,"84344":6775,"84366":7256,"84401":8157,"84414":5875,"84416":8158,"84419":6776,"84420":6777,"84431":11640,"84432":11641,"84434":11642,"84437":11643,"84450":2664,"84457":6778,"84473":6779,"84514":7257,"84515":6185,"84524":11644,"84525":11645,"84586":5876,"84611":7258,"84613":9128,"84614":9129,"84616":8159,"84629":8160,"84644":8161,"84656":1458,"84664":11646,"84665":11647,"84701":7259,"84715":7260,"84721":11648,"84728":6186,"84731":11649,"84737":9130,"84740":4257,"84763":11651,"84777":4401,"84780":4736,"84781":4402,"84784":4737,"84788":11652,"84789":11653,"84790":11654,"84792":2991,"84793":11656,"84794":11657,"84796":5195,"84813":7261,"84872":9131,"84877":5678,"84880":11658,"84890":3288,"84892":4260,"84908":2152,"84975":9132,"84979":11660,"85009":9133,"85019":4292,"85035":3290,"85037":11662,"85049":11663,"85050":11664,"85053":11665,"85054":11666,"85058":8162,"85070":4262,"85078":7262,"85082":8163,"85089":4264,"85093":9134,"85105":9135,"85147":8164,"85148":9136,"85168":5679,"85172":5196,"85173":5197,"85175":9137,"85180":3292,"85202":11667,"85203":9138,"85206":7263,"85207":9139,"85213":5877,"85214":11668,"85216":11669,"85217":8165,"85224":8166,"85228":577,"85229":5394,"85234":6780,"85352":4266,"85428":9140,"85436":9141,"85536":6187,"85540":11670,"85549":6188,"85552":9142,"85558":9143,"85565":9144,"85567":6781,"85589":8167,"85618":2994,"85638":11671,"85644":9145,"85697":5878,"85699":5879,"85725":11672,"85730":5680,"85794":4487,"85818":2999,"85819":11673,"85831":8168,"85872":7264,"85876":9146,"85884":4270,"85886":9147,"85890":5880,"85903":6782,"85906":6189,"85908":6190,"85909":3859,"85990":11675,"85992":5395,"85998":11676,"85999":5881,"86022":11677,"86050":4272,"86051":3861,"86055":8170,"86056":6783,"86060":11679,"86063":11680,"86067":11681,"86075":6191,"86077":9148,"86085":9149,"86090":11682,"86101":5681,"86119":5682,"86126":11683,"86134":8171,"86161":5198,"86162":5199,"86163":4488,"86164":5200,"86165":5201,"86210":11684,"86214":5396,"86218":5397,"86219":11685,"86220":6784,"86224":5398,"86227":5399,"86241":11686,"86254":1686,"86294":11687,"86295":5882,"86311":11688,"86316":11689,"86319":9150,"86322":1612,"86341":11690,"86342":6785,"86361":11692,"86366":5883,"86367":6786,"86374":11691,"86383":1514,"86391":1876,"86396":8172,"86401":11693,"86402":4489,"86405":11694,"86406":6192,"86407":5202,"86408":4490,"86409":5203,"86412":11695,"86413":11696,"86414":11697,"86415":11698,"86416":11699,"86418":11700,"86420":4738,"86422":8173,"86427":1013,"86430":11702,"86431":5400,"86435":5401,"86436":6193,"86439":5402,"86441":5403,"86444":420,"86468":11703,"86470":11704,"86472":11705,"86480":7265,"86486":3553,"86491":5204,"86492":5205,"86501":11706,"86503":6194,"86512":11707,"86524":4491,"86526":9151,"86555":2278,"86566":5206,"86569":11708,"86570":11709,"86571":11710,"86572":11711,"86573":11712,"86578":5207,"86583":5208,"86584":5209,"86595":11713,"86596":11714,"86597":11715,"86632":9152,"86640":6195,"86664":11716,"86665":11717,"86666":11718,"86667":11719,"86771":11720,"86772":4316,"86779":11721,"86782":4319,"86791":11722,"86797":3002,"86818":6196,"86827":11723,"86832":11724,"86833":11725,"86857":9153,"86858":9154,"86861":9155,"86882":2281,"86883":7266,"86895":4284,"86940":8174,"86978":5210,"86984":11727,"86988":11726,"87038":11728,"87040":11729,"87041":4739,"87064":4740,"87065":6787,"87067":4741,"87096":4276,"87111":6788,"87217":11798,"87218":11895,"87253":11903,"87254":11769,"87255":11920,"87256":11768,"87257":11826,"87258":11898,"87259":11915,"87260":11802,"87261":11860,"87262":11761,"87263":11881,"87264":11741,"87265":11742,"87266":11732,"87267":11987,"87268":11864,"87269":11786,"87270":11943,"87271":11842,"87272":11817,"87273":11862,"87274":11980,"87275":11814,"87276":11833,"87277":11804,"87278":11746,"87279":11947,"87280":11840,"87281":11859,"87282":11765,"87283":11970,"87284":11807,"87285":11856,"87286":11731,"87287":11872,"87288":11847,"87289":11879,"87290":11917,"87291":11937,"87292":11967,"87293":11975,"87294":11941,"87295":11930,"87296":11973,"87297":11887,"87298":11877,"87299":11854,"87300":11868,"87301":11910,"87302":11762,"87303":11870,"87304":11884,"87305":11921,"87306":11963,"87307":11852,"87308":11827,"87309":11878,"87310":11865,"87311":11822,"87312":11945,"87313":11896,"87314":11951,"87315":11932,"87316":11926,"87317":11806,"87318":11950,"87319":11931,"87320":11918,"87321":11960,"87322":11946,"87323":11935,"87324":11894,"87325":11893,"87326":11906,"87327":11902,"87328":11875,"87329":11880,"87330":11823,"87331":11853,"87332":11955,"87333":11844,"87334":11829,"87335":11828,"87336":11759,"87337":11805,"87338":11958,"87339":11889,"87340":11977,"87341":11891,"87343":11944,"87344":11846,"87345":11777,"87346":11905,"87347":11981,"87348":11899,"87349":11858,"87350":11913,"87351":11959,"87352":11972,"87353":11801,"87354":11954,"87355":11974,"87356":11825,"87357":11924,"87358":11965,"87359":11886,"87360":11882,"87361":11966,"87362":11976,"87363":11957,"87364":11799,"87365":11962,"87366":11863,"87367":11892,"87368":11933,"87369":11869,"87370":11821,"87371":11793,"87372":11803,"87373":11737,"87374":11743,"87375":11838,"87376":11739,"87377":11948,"87378":11819,"87379":11857,"87380":11953,"87381":11890,"87382":11850,"87383":11928,"87384":11916,"87385":11873,"87386":11925,"87387":11888,"87388":11919,"87389":11968,"87390":11794,"87391":11784,"87392":11754,"87393":11978,"87394":11885,"87395":11934,"87396":11982,"87397":11773,"87398":11914,"87399":11851,"87400":11866,"87401":11929,"87402":11952,"87403":11837,"87404":11811,"87405":11738,"87406":11755,"87407":11767,"87408":11800,"87409":11764,"87410":11785,"87411":11783,"87412":11763,"87413":11911,"87414":11778,"87415":11983,"87416":11901,"87417":11836,"87418":11810,"87419":11839,"87420":11912,"87421":11845,"87422":11751,"87423":11907,"87424":11988,"87425":11781,"87426":11874,"87427":11979,"87428":11923,"87429":11971,"87430":11908,"87431":11986,"87432":11961,"87433":11815,"87434":11780,"87435":11867,"87436":11782,"87437":11855,"87438":11795,"87439":11740,"87440":11730,"87441":11756,"87442":11752,"87443":11792,"87444":11788,"87445":11897,"87446":11813,"87447":11748,"87448":11736,"87449":11774,"87450":11779,"87451":11733,"87452":11771,"87453":11747,"87454":11832,"87455":11818,"87456":11753,"87457":11830,"87458":11757,"87459":11809,"87460":11835,"87461":11735,"87462":11861,"87463":11796,"87464":11848,"87465":11760,"87466":11789,"87467":11787,"87468":11956,"87469":11824,"87470":11770,"87471":11772,"87472":11831,"87473":11812,"87474":11808,"87475":11936,"87476":11834,"87477":11744,"87478":11790,"87479":11791,"87480":11849,"87481":11734,"87482":11938,"87483":11985,"87484":11816,"87485":11758,"87486":11904,"87487":11766,"87488":11776,"87489":11922,"87490":11909,"87491":11841,"87492":11927,"87493":11820,"87494":11797,"87495":11940,"87496":11900,"87497":11942,"87498":11876,"87499":11871,"87500":11949,"87501":11750,"87502":11883,"87503":11775,"87504":11843,"87505":11749,"87506":11745,"87507":11984,"87508":11939,"87509":11969,"87510":11964,"2070003":0},"1":{"51677":2,"2070003":0},"2":{"5336":192,"5339":202,"33972":85,"34600":44,"34704":3,"64187":212,"64188":222,"2070003":0},"3":{"5336":4,"5339":14,"7585":390,"64187":24,"64188":34,"2070003":0},"4":{"30075":5,"2070003":0},"5":{"219":6,"48865":232,"2070003":0},"6":{"48865":7,"2070003":0},"7":{"25764":11,"31030":10,"57777":12,"59941":13,"64903":9,"66735":8,"2070003":0},"14":{"30075":15,"2070003":0},"15":{"219":16,"48865":239,"2070003":0},"16":{"48865":17,"2070003":0},"17":{"25764":21,"31030":20,"57777":22,"59941":23,"64903":19,"66735":18,"2070003":0},"24":{"30075":25,"2070003":0},"25":{"219":26,"48865":246,"2070003":0},"26":{"48865":27,"2070003":0},"27":{"25764":31,"31030":30,"57777":32,"59941":33,"64903":29,"66735":28,"2070003":0},"34":{"30075":35,"2070003":0},"35":{"219":36,"48865":253,"2070003":0},"36":{"48865":37,"2070003":0},"37":{"25764":41,"31030":40,"57777":42,"59941":43,"64903":39,"66735":38,"2070003":0},"44":{"5336":45,"5339":55,"7585":400,"64187":65,"64188":75,"2070003":0},"45":{"30075":46,"2070003":0},"46":{"219":47,"48865":260,"2070003":0},"47":{"48865":48,"2070003":0},"48":{"25764":52,"31030":51,"57777":53,"59941":54,"64903":50,"66735":49,"2070003":0},"55":{"30075":56,"2070003":0},"56":{"219":57,"48865":267,"2070003":0},"57":{"48865":58,"2070003":0},"58":{"25764":62,"31030":61,"57777":63,"59941":64,"64903":60,"66735":59,"2070003":0},"65":{"30075":66,"2070003":0},"66":{"219":67,"48865":274,"2070003":0},"67":{"48865":68,"2070003":0},"68":{"25764":72,"31030":71,"57777":73,"59941":74,"64903":70,"66735":69,"2070003":0},"75":{"30075":76,"2070003":0},"76":{"219":77,"48865":281,"2070003":0},"77":{"48865":78,"2070003":0},"78":{"25764":82,"31030":81,"57777":83,"59941":84,"64903":80,"66735":79,"2070003":0},"85":{"5336":86,"5339":96,"7585":410,"64187":106,"64188":116,"2070003":0},"86":{"30075":87,"2070003":0},"87":{"219":88,"48865":288,"2070003":0},"88":{"48865":89,"2070003":0},"89":{"25764":93,"31030":92,"57777":94,"59941":95,"64903":91,"66735":90,"2070003":0},"96":{"30075":97,"2070003":0},"97":{"219":98,"48865":295,"2070003":0},"98":{"48865":99,"2070003":0},"99":{"25764":103,"31030":102,"57777":104,"59941":105,"64903":101,"66735":100,"2070003":0},"106":{"30075":107,"2070003":0},"107":{"219":108,"48865":302,"2070003":0},"108":{"48865":109,"2070003":0},"109":{"25764":113,"31030":112,"57777":114,"59941":115,"64903":111,"66735":110,"2070003":0},"116":{"30075":117,"2070003":0},"117":{"219":118,"48865":309,"2070003":0},"118":{"48865":119,"2070003":0},"119":{"25764":123,"31030":122,"57777":124,"59941":125,"64903":121,"66735":120,"2070003":0},"126":{"28167":1377,"34805":127,"38161":1408,"69184":3016,"86164":1374,"2070003":8418},"127":{"47":128,"53668":316,"87219":138,"2070003":0},"128":{"53668":129,"2070003":0},"129":{"47":130,"35047":325,"87219":134,"2070003":0},"130":{"35047":131,"2070003":0},"131":{"38161":132,"2070003":0},"132":{"44547":133,"2070003":0},"134":{"35047":135,"2070003":0},"135":{"38161":136,"2070003":0},"136":{"44547":137,"2070003":0},"138":{"53668":139,"2070003":0},"139":{"47":140,"35047":328,"87219":144,"2070003":0},"140":{"35047":141,"2070003":0},"141":{"38161":142,"2070003":0},"142":{"44547":143,"2070003":0},"144":{"35047":145,"2070003":0},"145":{"38161":146,"2070003":0},"146":{"44547":147,"2070003":0},"148":{"28167":1371,"29406":3994,"34805":149,"38161":1410,"69184":3014,"77599":3995,"86164":1368,"2070003":0},"149":{"47":150,"53668":331,"87219":160,"2070003":0},"150":{"53668":151,"2070003":0},"151":{"47":152,"35047":340,"87219":156,"2070003":0},"152":{"35047":153,"2070003":0},"153":{"38161":154,"2070003":0},"154":{"44547":155,"2070003":0},"156":{"35047":157,"2070003":0},"157":{"38161":158,"2070003":0},"158":{"44547":159,"2070003":0},"160":{"53668":161,"2070003":0},"161":{"47":162,"35047":343,"87219":166,"2070003":0},"162":{"35047":163,"2070003":0},"163":{"38161":164,"2070003":0},"164":{"44547":165,"2070003":0},"166":{"35047":167,"2070003":0},"167":{"38161":168,"2070003":0},"168":{"44547":169,"2070003":0},"170":{"34805":171,"38161":1412,"2070003":10106},"171":{"47":172,"53668":346,"87219":182,"2070003":0},"172":{"53668":173,"2070003":0},"173":{"47":174,"35047":355,"87219":178,"2070003":0},"174":{"35047":175,"2070003":0},"175":{"38161":176,"2070003":0},"176":{"44547":177,"2070003":0},"178":{"35047":179,"2070003":0},"179":{"38161":180,"2070003":0},"180":{"44547":181,"2070003":0},"182":{"53668":183,"2070003":0},"183":{"47":184,"35047":358,"87219":188,"2070003":0},"184":{"35047":185,"2070003":0},"185":{"38161":186,"2070003":0},"186":{"44547":187,"2070003":0},"188":{"35047":189,"2070003":0},"189":{"38161":190,"2070003":0},"190":{"44547":191,"2070003":0},"192":{"30075":193,"2070003":0},"193":{"219":194,"48865":455,"2070003":0},"194":{"48865":195,"2070003":0},"195":{"25764":199,"31030":198,"57777":200,"59941":201,"64903":197,"66735":196,"2070003":0},"202":{"30075":203,"2070003":0},"203":{"219":204,"48865":462,"2070003":0},"204":{"48865":205,"2070003":0},"205":{"25764":209,"31030":208,"57777":210,"59941":211,"64903":207,"66735":206,"2070003":0},"212":{"30075":213,"2070003":0},"213":{"219":214,"48865":469,"2070003":0},"214":{"48865":215,"2070003":0},"215":{"25764":219,"31030":218,"57777":220,"59941":221,"64903":217,"66735":216,"2070003":0},"222":{"30075":223,"2070003":0},"223":{"219":224,"48865":476,"2070003":0},"224":{"48865":225,"2070003":0},"225":{"25764":229,"31030":228,"57777":230,"59941":231,"64903":227,"66735":226,"2070003":0},"232":{"25764":236,"31030":235,"57777":237,"59941":238,"64903":234,"66735":233,"2070003":0},"239":{"25764":243,"31030":242,"57777":244,"59941":245,"64903":241,"66735":240,"2070003":0},"246":{"25764":250,"31030":249,"57777":251,"59941":252,"64903":248,"66735":247,"2070003":0},"253":{"25764":257,"31030":256,"57777":258,"59941":259,"64903":255,"66735":254,"2070003":0},"260":{"25764":264,"31030":263,"57777":265,"59941":266,"64903":262,"66735":261,"2070003":0},"267":{"25764":271,"31030":270,"57777":272,"59941":273,"64903":269,"66735":268,"2070003":0},"274":{"25764":278,"31030":277,"57777":279,"59941":280,"64903":276,"66735":275,"2070003":0},"281":{"25764":285,"31030":284,"57777":286,"59941":287,"64903":283,"66735":282,"2070003":0},"288":{"25764":292,"31030":291,"57777":293,"59941":294,"64903":290,"66735":289,"2070003":0},"295":{"25764":299,"31030":298,"57777":300,"59941":301,"64903":297,"66735":296,"2070003":0},"302":{"25764":306,"31030":305,"57777":307,"59941":308,"64903":304,"66735":303,"2070003":0},"309":{"25764":313,"31030":312,"57777":314,"59941":315,"64903":311,"66735":310,"2070003":0},"316":{"47":317,"35047":483,"87219":321,"2070003":0},"317":{"35047":318,"2070003":0},"318":{"38161":319,"2070003":0},"319":{"44547":320,"2070003":0},"321":{"35047":322,"2070003":0},"322":{"38161":323,"2070003":0},"323":{"44547":324,"2070003":0},"325":{"38161":326,"2070003":0},"326":{"44547":327,"2070003":0},"328":{"38161":329,"2070003":0},"329":{"44547":330,"2070003":0},"331":{"47":332,"35047":486,"87219":336,"2070003":0},"332":{"35047":333,"2070003":0},"333":{"38161":334,"2070003":0},"334":{"44547":335,"2070003":0},"336":{"35047":337,"2070003":0},"337":{"38161":338,"2070003":0},"338":{"44547":339,"2070003":0},"340":{"38161":341,"2070003":0},"341":{"44547":342,"2070003":0},"343":{"38161":344,"2070003":0},"344":{"44547":345,"2070003":0},"346":{"47":347,"35047":489,"87219":351,"2070003":0},"347":{"35047":348,"2070003":0},"348":{"38161":349,"2070003":0},"349":{"44547":350,"2070003":0},"351":{"35047":352,"2070003":0},"352":{"38161":353,"2070003":0},"353":{"44547":354,"2070003":0},"355":{"38161":356,"2070003":0},"356":{"44547":357,"2070003":0},"358":{"38161":359,"2070003":0},"359":{"44547":360,"2070003":0},"361":{"47":362,"28547":492,"87219":376,"2070003":10291},"362":{"28547":363,"2070003":0},"363":{"47":364,"85228":505,"87219":370,"2070003":1957},"364":{"85228":365,"2070003":0},"365":{"47":366,"46973":510,"87219":368,"2070003":0},"366":{"46973":367,"2070003":0},"368":{"46973":369,"2070003":0},"370":{"85228":371,"2070003":0},"371":{"47":372,"46973":511,"87219":374,"2070003":0},"372":{"46973":373,"2070003":0},"374":{"46973":375,"2070003":0},"376":{"28547":377,"2070003":0},"377":{"47":378,"85228":512,"87219":384,"2070003":1958},"378":{"85228":379,"2070003":0},"379":{"47":380,"46973":517,"87219":382,"2070003":0},"380":{"46973":381,"2070003":0},"382":{"46973":383,"2070003":0},"384":{"85228":385,"2070003":0},"385":{"47":386,"46973":518,"87219":388,"2070003":0},"386":{"46973":387,"2070003":0},"388":{"46973":389,"2070003":0},"390":{"8049":523,"20370":524,"34429":521,"34433":520,"48865":391,"57771":522,"59941":519,"66730":525,"77547":526,"2070003":0},"391":{"8049":396,"20370":397,"34429":394,"34433":393,"57771":395,"59941":392,"66730":398,"77547":399,"2070003":0},"400":{"8049":531,"20370":532,"34429":529,"34433":528,"48865":401,"57771":530,"59941":527,"66730":533,"77547":534,"2070003":0},"401":{"8049":406,"20370":407,"34429":404,"34433":403,"57771":405,"59941":402,"66730":408,"77547":409,"2070003":0},"410":{"8049":539,"20370":540,"34429":537,"34433":536,"48865":411,"57771":538,"59941":535,"66730":541,"77547":542,"2070003":0},"411":{"8049":416,"20370":417,"34429":414,"34433":413,"57771":415,"59941":412,"66730":418,"77547":419,"2070003":0},"420":{"51677":421,"2070003":0},"421":{"33972":444,"34600":433,"34704":422,"2070003":0},"422":{"7585":423,"2070003":0},"423":{"8049":547,"20370":548,"34429":545,"34433":544,"48865":424,"57771":546,"59941":543,"66730":549,"77547":550,"2070003":0},"424":{"8049":429,"20370":430,"34429":427,"34433":426,"57771":428,"59941":425,"66730":431,"77547":432,"2070003":0},"433":{"7585":434,"2070003":0},"434":{"8049":555,"20370":556,"34429":553,"34433":552,"48865":435,"57771":554,"59941":551,"66730":557,"77547":558,"2070003":0},"435":{"8049":440,"20370":441,"34429":438,"34433":437,"57771":439,"59941":436,"66730":442,"77547":443,"2070003":0},"444":{"7585":445,"2070003":0},"445":{"8049":563,"20370":564,"34429":561,"34433":560,"48865":446,"57771":562,"59941":559,"66730":565,"77547":566,"2070003":0},"446":{"8049":451,"20370":452,"34429":449,"34433":448,"57771":450,"59941":447,"66730":453,"77547":454,"2070003":0},"455":{"25764":459,"31030":458,"57777":460,"59941":461,"64903":457,"66735":456,"2070003":0},"462":{"25764":466,"31030":465,"57777":467,"59941":468,"64903":464,"66735":463,"2070003":0},"469":{"25764":473,"31030":472,"57777":474,"59941":475,"64903":471,"66735":470,"2070003":0},"476":{"25764":480,"31030":479,"57777":481,"59941":482,"64903":478,"66735":477,"2070003":0},"483":{"38161":484,"2070003":0},"484":{"44547":485,"2070003":0},"486":{"38161":487,"2070003":0},"487":{"44547":488,"2070003":0},"489":{"38161":490,"2070003":0},"490":{"44547":491,"2070003":0},"492":{"47":493,"85228":659,"87219":499,"2070003":3477},"493":{"85228":494,"2070003":0},"494":{"47":495,"46973":664,"87219":497,"2070003":0},"495":{"46973":496,"2070003":0},"497":{"46973":498,"2070003":0},"499":{"85228":500,"2070003":0},"500":{"47":501,"46973":665,"87219":503,"2070003":0},"501":{"46973":502,"2070003":0},"503":{"46973":504,"2070003":0},"505":{"47":506,"46973":666,"87219":508,"2070003":0},"506":{"46973":507,"2070003":0},"508":{"46973":509,"2070003":0},"512":{"47":513,"46973":667,"87219":515,"2070003":0},"513":{"46973":514,"2070003":0},"515":{"46973":516,"2070003":0},"567":{"219":1189,"32791":568,"2070003":0},"568":{"78040":569,"2070003":0},"569":{"7383":570,"2070003":0},"570":{"79559":571,"2070003":0},"572":{"32791":3062,"44653":573,"2070003":0},"573":{"86444":574,"2070003":0},"574":{"34704":575,"2070003":0},"575":{"40662":576,"2070003":0},"577":{"47":578,"1583":3845,"4489":3846,"7670":3224,"7714":3221,"9655":3847,"9877":3848,"10046":3849,"13902":3543,"16157":3350,"16419":3850,"20163":3851,"22687":3122,"24629":3544,"25634":3852,"28362":3222,"28467":3853,"29259":3854,"30445":3855,"30448":3351,"33491":3545,"39020":3352,"41661":3856,"45081":3353,"45621":3546,"51747":3857,"52425":3547,"59452":3223,"61472":3548,"62471":3549,"65734":3550,"69927":3858,"77480":995,"77843":3357,"78040":1245,"79275":3551,"79844":3355,"86067":3356,"87219":584,"2070003":4403},"578":{"1583":2667,"4489":2669,"7670":1603,"7714":1605,"9655":2671,"9877":2673,"10046":2675,"13902":2157,"16157":1758,"16419":2677,"20163":2679,"22687":1461,"24629":2159,"25634":2681,"28362":1607,"28467":2683,"29259":2685,"30445":2687,"30448":1760,"33491":2161,"39020":1762,"41661":2689,"45081":1764,"45621":2163,"51747":2691,"52425":2165,"59452":1609,"61472":2167,"62471":2169,"65734":2171,"69927":2693,"77480":579,"77843":1766,"78040":825,"79275":2173,"79844":1768,"86067":1770,"2070003":0},"579":{"47":580,"52424":1000,"87219":582,"2070003":0},"580":{"52424":581,"2070003":0},"582":{"52424":583,"2070003":0},"584":{"1583":2668,"4489":2670,"7670":1604,"7714":1606,"9655":2672,"9877":2674,"10046":2676,"13902":2158,"16157":1759,"16419":2678,"20163":2680,"22687":1462,"24629":2160,"25634":2682,"28362":1608,"28467":2684,"29259":2686,"30445":2688,"30448":1761,"33491":2162,"39020":1763,"41661":2690,"45081":1765,"45621":2164,"51747":2692,"52425":2166,"59452":1610,"61472":2168,"62471":2170,"65734":2172,"69927":2694,"77480":585,"77843":1767,"78040":830,"79275":2174,"79844":1769,"86067":1771,"2070003":0},"585":{"47":586,"52424":1001,"87219":588,"2070003":0},"586":{"52424":587,"2070003":0},"588":{"52424":589,"2070003":0},"590":{"47":591,"3361":1002,"5231":1274,"49634":3238,"56339":3956,"87219":597,"2070003":6879},"591":{"3361":592,"49634":1626,"2070003":0},"592":{"47":593,"24042":1007,"87219":595,"2070003":0},"593":{"24042":594,"2070003":0},"595":{"24042":596,"2070003":0},"597":{"3361":598,"49634":1627,"2070003":0},"598":{"47":599,"24042":1008,"87219":601,"2070003":0},"599":{"24042":600,"2070003":0},"601":{"24042":602,"2070003":0},"603":{"47":647,"2052":3328,"5673":1062,"80790":604,"85228":3709,"86412":4008,"87219":653,"2070003":0},"604":{"52694":605,"2070003":0},"605":{"35":606,"2070003":0},"606":{"70056":607,"2070003":0},"608":{"47":609,"219":2722,"10987":1041,"52694":1263,"82762":3228,"87219":615,"2070003":0},"609":{"10987":610,"2070003":0},"610":{"47":611,"9006":1046,"87219":613,"2070003":0},"611":{"9006":612,"2070003":0},"613":{"9006":614,"2070003":0},"615":{"10987":616,"2070003":0},"616":{"47":617,"9006":1047,"87219":619,"2070003":0},"617":{"9006":618,"2070003":0},"619":{"9006":620,"2070003":0},"621":{"47":622,"3361":1281,"38161":981,"55299":3459,"78040":1048,"87219":628,"2070003":4429},"622":{"3361":835,"78040":623,"2070003":0},"623":{"47":624,"24338":1053,"87219":626,"2070003":0},"624":{"24338":625,"2070003":0},"626":{"24338":627,"2070003":0},"628":{"3361":840,"78040":629,"2070003":0},"629":{"47":630,"24338":1054,"87219":632,"2070003":0},"630":{"24338":631,"2070003":0},"632":{"24338":633,"2070003":0},"634":{"47":635,"3361":1055,"31431":3993,"47674":3693,"78040":1534,"87219":641,"2070003":10100},"635":{"3361":636,"47674":2382,"2070003":0},"636":{"47":637,"72457":1060,"87219":639,"2070003":0},"637":{"72457":638,"2070003":0},"639":{"72457":640,"2070003":0},"641":{"3361":642,"47674":2383,"2070003":0},"642":{"47":643,"72457":1061,"87219":645,"2070003":0},"643":{"72457":644,"2070003":0},"645":{"72457":646,"2070003":0},"647":{"5673":648,"2070003":0},"648":{"47":649,"395":1067,"87219":651,"2070003":0},"649":{"395":650,"2070003":0},"651":{"395":652,"2070003":0},"653":{"5673":654,"2070003":0},"654":{"47":655,"395":1068,"87219":657,"2070003":0},"655":{"395":656,"2070003":0},"657":{"395":658,"2070003":0},"659":{"47":660,"46973":1069,"87219":662,"2070003":0},"660":{"46973":661,"2070003":0},"662":{"46973":663,"2070003":0},"668":{"47":669,"76982":1109,"87219":675,"2070003":0},"669":{"76982":670,"2070003":0},"670":{"47":671,"43603":1114,"87219":673,"2070003":0},"671":{"43603":672,"2070003":0},"673":{"43603":674,"2070003":0},"675":{"76982":676,"2070003":0},"676":{"47":677,"43603":1115,"87219":679,"2070003":0},"677":{"43603":678,"2070003":0},"679":{"43603":680,"2070003":0},"681":{"47":682,"38161":1116,"87219":688,"2070003":0},"682":{"38161":683,"2070003":0},"683":{"47":684,"13369":1121,"87219":686,"2070003":0},"684":{"13369":685,"2070003":0},"686":{"13369":687,"2070003":0},"688":{"38161":689,"2070003":0},"689":{"47":690,"13369":1122,"87219":692,"2070003":0},"690":{"13369":691,"2070003":0},"692":{"13369":693,"2070003":0},"694":{"47":695,"10987":1145,"35615":3470,"52425":1300,"87219":701,"2070003":0},"695":{"10987":696,"2070003":0},"696":{"47":697,"50853":1150,"87219":699,"2070003":0},"697":{"50853":698,"2070003":0},"699":{"50853":700,"2070003":0},"701":{"10987":702,"2070003":0},"702":{"47":703,"50853":1151,"87219":705,"2070003":0},"703":{"50853":704,"2070003":0},"705":{"50853":706,"2070003":0},"707":{"47":708,"24741":3184,"25820":3185,"30075":1160,"34882":3473,"36692":3186,"36703":3187,"44401":3183,"44653":2424,"45624":3474,"50144":3329,"50415":3715,"50422":3716,"56339":3475,"68161":3717,"72044":3476,"76529":3188,"77841":3472,"78040":1401,"85089":3718,"87219":714,"2070003":4375},"708":{"30075":709,"44401":1546,"50415":2420,"50422":2422,"77841":1954,"2070003":0},"709":{"47":710,"50151":1165,"51704":1169,"87219":712,"2070003":0},"710":{"50151":711,"51704":720,"2070003":0},"712":{"50151":713,"51704":721,"2070003":0},"714":{"30075":715,"44401":1547,"50415":2421,"50422":2423,"77841":1955,"2070003":0},"715":{"47":716,"50151":1166,"51704":1170,"87219":718,"2070003":0},"716":{"50151":717,"51704":722,"2070003":0},"718":{"50151":719,"51704":723,"2070003":0},"724":{"47":725,"3361":1314,"6691":4015,"13397":4017,"42070":4018,"51649":3723,"51677":3012,"52424":1171,"59476":4016,"61215":4019,"87219":731,"2070003":10300},"725":{"3361":871,"6691":2786,"51649":2441,"52424":726,"59476":2788,"2070003":0},"726":{"47":727,"34899":1176,"87219":729,"2070003":0},"727":{"34899":728,"2070003":0},"729":{"34899":730,"2070003":0},"731":{"3361":876,"6691":2787,"51649":2442,"52424":732,"59476":2789,"2070003":0},"732":{"47":733,"34899":1177,"87219":735,"2070003":0},"733":{"34899":734,"2070003":0},"735":{"34899":736,"2070003":0},"737":{"219":738,"2052":3337,"2070003":0},"738":{"28250":739,"2070003":0},"739":{"52694":740,"2070003":0},"740":{"52676":741,"2070003":0},"742":{"47":743,"3361":1182,"34126":4177,"70262":3630,"72183":3276,"87219":749,"2070003":0},"743":{"3361":744,"34126":2918,"72183":1669,"2070003":0},"744":{"47":745,"79716":1187,"87219":747,"2070003":0},"745":{"79716":746,"2070003":0},"747":{"79716":748,"2070003":0},"749":{"3361":750,"34126":2919,"72183":1670,"2070003":0},"750":{"47":751,"79716":1188,"87219":753,"2070003":0},"751":{"79716":752,"2070003":0},"753":{"79716":754,"2070003":0},"755":{"47":756,"10987":1192,"34470":3672,"87219":762,"2070003":0},"756":{"10987":757,"34470":2344,"2070003":0},"757":{"47":758,"12216":1197,"87219":760,"2070003":0},"758":{"12216":759,"2070003":0},"760":{"12216":761,"2070003":0},"762":{"10987":763,"34470":2345,"2070003":0},"763":{"47":764,"12216":1198,"87219":766,"2070003":0},"764":{"12216":765,"2070003":0},"766":{"12216":767,"2070003":0},"768":{"30075":3136,"43689":769,"2070003":0},"769":{"219":770,"2070003":0},"770":{"47612":771,"2070003":0},"771":{"23229":772,"2070003":1210},"773":{"47":774,"78040":1211,"87219":780,"2070003":0},"774":{"78040":775,"2070003":0},"775":{"47":776,"36451":1216,"87219":778,"2070003":0},"776":{"36451":777,"2070003":0},"778":{"36451":779,"2070003":0},"780":{"78040":781,"2070003":0},"781":{"47":782,"36451":1217,"87219":784,"2070003":0},"782":{"36451":783,"2070003":0},"784":{"36451":785,"2070003":0},"786":{"47":787,"3361":1222,"47674":3763,"87219":793,"2070003":0},"787":{"3361":788,"47674":2509,"2070003":0},"788":{"47":789,"69409":1227,"87219":791,"2070003":0},"789":{"69409":790,"2070003":0},"791":{"69409":792,"2070003":0},"793":{"3361":794,"47674":2510,"2070003":0},"794":{"47":795,"69409":1228,"87219":797,"2070003":0},"795":{"69409":796,"2070003":0},"797":{"69409":798,"2070003":0},"799":{"47":800,"3361":1229,"52424":2874,"87219":806,"2070003":0},"800":{"3361":801,"2070003":0},"801":{"47":802,"53437":1234,"87219":804,"2070003":0},"802":{"53437":803,"2070003":0},"804":{"53437":805,"2070003":0},"806":{"3361":807,"2070003":0},"807":{"47":808,"53437":1235,"87219":810,"2070003":0},"808":{"53437":809,"2070003":0},"810":{"53437":811,"2070003":0},"812":{"47":813,"52676":3844,"78040":1238,"87219":819,"2070003":0},"813":{"78040":814,"2070003":0},"814":{"47":815,"19502":1243,"87219":817,"2070003":0},"815":{"19502":816,"2070003":0},"817":{"19502":818,"2070003":0},"819":{"78040":820,"2070003":0},"820":{"47":821,"19502":1244,"87219":823,"2070003":0},"821":{"19502":822,"2070003":0},"823":{"19502":824,"2070003":0},"825":{"47":826,"23082":1250,"87219":828,"2070003":0},"826":{"23082":827,"2070003":0},"828":{"23082":829,"2070003":0},"830":{"47":831,"23082":1251,"87219":833,"2070003":0},"831":{"23082":832,"2070003":0},"833":{"23082":834,"2070003":0},"835":{"47":836,"53385":1286,"87219":838,"2070003":0},"836":{"53385":837,"2070003":0},"838":{"53385":839,"2070003":0},"840":{"47":841,"53385":1287,"87219":843,"2070003":0},"841":{"53385":842,"2070003":0},"843":{"53385":844,"2070003":0},"845":{"47":846,"3361":1288,"87219":852,"2070003":9954},"846":{"3361":847,"2070003":0},"847":{"47":848,"22605":1293,"87219":850,"2070003":0},"848":{"22605":849,"2070003":0},"850":{"22605":851,"2070003":0},"852":{"3361":853,"2070003":0},"853":{"47":854,"22605":1294,"87219":856,"2070003":0},"854":{"22605":855,"2070003":0},"856":{"22605":857,"2070003":0},"858":{"47":859,"14374":3721,"78040":1307,"87219":865,"2070003":0},"859":{"78040":860,"2070003":0},"860":{"47":861,"49128":1312,"87219":863,"2070003":0},"861":{"49128":862,"2070003":0},"863":{"49128":864,"2070003":0},"865":{"78040":866,"2070003":0},"866":{"47":867,"49128":1313,"87219":869,"2070003":0},"867":{"49128":868,"2070003":0},"869":{"49128":870,"2070003":0},"871":{"47":872,"28250":1319,"87219":874,"2070003":0},"872":{"28250":873,"2070003":0},"874":{"28250":875,"2070003":0},"876":{"47":877,"28250":1320,"87219":879,"2070003":0},"877":{"28250":878,"2070003":0},"879":{"28250":880,"2070003":0},"881":{"47":882,"3361":1340,"87219":888,"2070003":0},"882":{"3361":883,"2070003":0},"883":{"47":884,"66339":1345,"87219":886,"2070003":0},"884":{"66339":885,"2070003":0},"886":{"66339":887,"2070003":0},"888":{"3361":889,"2070003":0},"889":{"47":890,"66339":1346,"87219":892,"2070003":0},"890":{"66339":891,"2070003":0},"892":{"66339":893,"2070003":0},"894":{"47":895,"3361":1361,"87219":901,"2070003":0},"895":{"3361":896,"2070003":0},"896":{"47":897,"32628":1366,"87219":899,"2070003":0},"897":{"32628":898,"2070003":0},"899":{"32628":900,"2070003":0},"901":{"3361":902,"2070003":0},"902":{"47":903,"32628":1367,"87219":905,"2070003":0},"903":{"32628":904,"2070003":0},"905":{"32628":906,"2070003":0},"907":{"53385":908,"2070003":0},"908":{"52424":909,"2070003":0},"909":{"55":910,"125":923,"2070003":0},"911":{"53385":912,"2070003":0},"912":{"52424":913,"2070003":0},"913":{"55":914,"125":924,"2070003":0},"915":{"53385":916,"2070003":0},"916":{"52424":917,"2070003":0},"917":{"55":918,"2070003":0},"919":{"53385":920,"2070003":0},"920":{"52424":921,"2070003":0},"921":{"55":922,"125":937,"2070003":0},"925":{"53385":926,"2070003":0},"926":{"52424":927,"2070003":0},"927":{"55":928,"2070003":0},"929":{"53385":930,"2070003":0},"930":{"52424":931,"2070003":0},"931":{"55":932,"2070003":0},"933":{"53385":934,"2070003":0},"934":{"52424":935,"2070003":0},"935":{"55":936,"2070003":0},"938":{"53385":939,"2070003":0},"939":{"52424":940,"2070003":0},"940":{"125":941,"2070003":0},"942":{"12633":948,"12634":953,"12638":943,"27985":963,"27986":968,"27990":958,"2070003":0},"943":{"78040":944,"2070003":0},"944":{"2781":945,"38082":947,"74991":946,"2070003":0},"948":{"78040":949,"2070003":0},"949":{"2781":950,"38082":952,"74991":951,"2070003":0},"953":{"78040":954,"2070003":0},"954":{"2781":955,"38082":957,"74991":956,"2070003":0},"958":{"78040":959,"2070003":0},"959":{"2781":960,"38082":962,"74991":961,"2070003":0},"963":{"78040":964,"2070003":0},"964":{"2781":965,"38082":967,"74991":966,"2070003":0},"968":{"78040":969,"2070003":0},"969":{"2781":970,"38082":972,"74991":971,"2070003":0},"973":{"7383":974,"43689":4294,"2070003":0},"974":{"34429":1407,"48865":975,"2070003":0},"975":{"34433":976,"2070003":0},"977":{"5673":2708,"52676":978,"85228":3298,"2070003":0},"978":{"14722":979,"2070003":0},"979":{"50910":980,"2070003":0},"981":{"77052":982,"2070003":0},"982":{"49128":983,"2070003":0},"984":{"47":985,"27832":1463,"84832":3056,"84851":3057,"87219":988,"2070003":0},"985":{"27832":986,"2070003":0},"986":{"48727":987,"2070003":0},"988":{"27832":989,"2070003":0},"989":{"48727":990,"2070003":0},"991":{"219":1756,"52694":992,"65174":3079,"2070003":0},"992":{"35":993,"2070003":0},"993":{"73357":994,"2070003":0},"995":{"47":996,"52424":1611,"53385":2175,"87219":998,"2070003":0},"996":{"52424":997,"2070003":0},"998":{"52424":999,"2070003":0},"1002":{"47":1003,"24042":1625,"87219":1005,"2070003":0},"1003":{"24042":1004,"2070003":0},"1005":{"24042":1006,"2070003":0},"1009":{"52424":1010,"2070003":0},"1010":{"219":1011,"2070003":0},"1011":{"8561":1012,"2070003":0},"1013":{"38161":1721,"63676":3338,"64182":1014,"2070003":11701},"1014":{"30075":1015,"2070003":0},"1015":{"63676":1016,"2070003":0},"1017":{"47":1832,"5928":1976,"30000":1972,"38161":1723,"59938":1974,"61480":3482,"63676":3339,"64182":1018,"71456":1968,"72045":3416,"83947":1970,"85618":2891,"87219":1834,"2070003":10931},"1018":{"30075":1019,"2070003":0},"1019":{"63676":1020,"2070003":0},"1021":{"47":1772,"5928":1986,"24741":3882,"29234":3469,"30000":1982,"38161":1725,"44653":3036,"59938":1984,"61480":3483,"63676":3340,"64182":1022,"71456":1978,"76529":3123,"76540":3360,"83947":1980,"87219":1774,"2070003":9350},"1022":{"30075":1023,"2070003":0},"1023":{"63676":1024,"2070003":0},"1025":{"5928":1996,"30000":1992,"38161":1727,"59938":1994,"61480":3484,"63676":3341,"64182":1026,"71456":1988,"83947":1990,"2070003":11514},"1026":{"30075":1027,"2070003":0},"1027":{"63676":1028,"2070003":0},"1029":{"47":1487,"5928":2006,"9006":4073,"30000":2002,"38161":1729,"59938":2004,"61480":3485,"63676":3342,"64182":1030,"71456":1998,"72045":3151,"72047":3152,"83947":2000,"87219":1489,"2070003":0},"1030":{"30075":1031,"2070003":0},"1031":{"63676":1032,"2070003":0},"1033":{"47":2727,"52676":1034,"53385":3920,"87219":2729,"2070003":0},"1034":{"77052":1035,"2070003":0},"1035":{"12107":1036,"2070003":0},"1037":{"47":1803,"76540":3388,"80790":1038,"84740":3734,"84908":3248,"87219":1805,"2070003":0},"1038":{"77052":1039,"2070003":0},"1039":{"15235":1040,"2070003":0},"1041":{"47":1042,"9006":1911,"87219":1044,"2070003":0},"1042":{"9006":1043,"2070003":0},"1044":{"9006":1045,"2070003":0},"1048":{"47":1049,"24338":1932,"87219":1051,"2070003":0},"1049":{"24338":1050,"2070003":0},"1051":{"24338":1052,"2070003":0},"1055":{"47":1056,"72457":1943,"87219":1058,"2070003":0},"1056":{"72457":1057,"2070003":0},"1058":{"72457":1059,"2070003":0},"1062":{"47":1063,"395":1953,"87219":1065,"2070003":0},"1063":{"395":1064,"2070003":0},"1065":{"395":1066,"2070003":0},"1070":{"40538":1071,"84830":1080,"2070003":7925},"1071":{"6614":2009,"27777":1076,"58496":2008,"80234":2010,"83784":1072,"2070003":0},"1072":{"6614":1074,"58496":1073,"80234":1075,"2070003":0},"1076":{"6614":1078,"58496":1077,"80234":1079,"2070003":0},"1080":{"6614":2012,"27777":1085,"58496":2011,"80234":2013,"83784":1081,"2070003":0},"1081":{"6614":1083,"58496":1082,"80234":1084,"2070003":0},"1085":{"6614":1087,"58496":1086,"80234":1088,"2070003":0},"1089":{"52424":1090,"2070003":0},"1090":{"77052":1091,"2070003":0},"1091":{"41867":1092,"2070003":0},"1093":{"47":2504,"34306":3762,"52424":1094,"87219":2506,"2070003":0},"1094":{"219":1095,"2070003":0},"1095":{"41867":1096,"2070003":0},"1097":{"47":2657,"34306":3835,"50334":3836,"52424":1098,"87219":2659,"2070003":0},"1098":{"219":1099,"2070003":0},"1099":{"41867":1100,"2070003":0},"1101":{"47":2638,"50334":3826,"52424":1102,"87219":2640,"2070003":0},"1102":{"219":1103,"2070003":0},"1103":{"41867":1104,"2070003":0},"1105":{"47":2391,"50334":3700,"52424":1106,"87219":2393,"2070003":0},"1106":{"219":1107,"2070003":0},"1107":{"41867":1108,"2070003":0},"1109":{"47":1110,"43603":2021,"87219":1112,"2070003":0},"1110":{"43603":1111,"2070003":0},"1112":{"43603":1113,"2070003":0},"1116":{"47":1117,"13369":2125,"87219":1119,"2070003":0},"1117":{"13369":1118,"2070003":0},"1119":{"13369":1120,"2070003":0},"1123":{"219":1124,"8001":3438,"77052":1894,"2070003":0},"1124":{"44582":1125,"2070003":0},"1125":{"57495":1126,"2070003":0},"1127":{"47":1128,"24396":2188,"87219":1131,"2070003":0},"1128":{"24396":1129,"2070003":0},"1129":{"75535":1130,"2070003":0},"1131":{"24396":1132,"2070003":0},"1132":{"75535":1133,"2070003":0},"1134":{"47":1135,"77052":2190,"78040":2341,"87219":1138,"2070003":0},"1135":{"77052":1136,"2070003":0},"1136":{"11488":1137,"2070003":0},"1138":{"77052":1139,"2070003":0},"1139":{"11488":1140,"2070003":0},"1141":{"3361":1142,"2070003":0},"1142":{"21096":1143,"2070003":0},"1143":{"53018":1144,"2070003":0},"1145":{"47":1146,"50853":2212,"87219":1148,"2070003":0},"1146":{"50853":1147,"2070003":0},"1148":{"50853":1149,"2070003":0},"1152":{"5673":1153,"2070003":0},"1153":{"77052":1154,"2070003":0},"1154":{"49128":1155,"2070003":0},"1156":{"5673":1157,"2070003":0},"1157":{"77052":1158,"2070003":0},"1158":{"49128":1159,"2070003":0},"1160":{"47":1161,"50151":2213,"51704":2214,"86895":1956,"87219":1163,"2070003":0},"1161":{"50151":1162,"51704":1167,"2070003":0},"1163":{"50151":1164,"51704":1168,"2070003":0},"1171":{"47":1172,"34899":2215,"87219":1174,"2070003":0},"1172":{"34899":1173,"2070003":0},"1174":{"34899":1175,"2070003":0},"1178":{"219":1179,"58689":4144,"79253":3627,"2070003":0},"1179":{"79241":1180,"2070003":0},"1180":{"52676":1181,"2070003":0},"1182":{"47":1183,"79716":2257,"87219":1185,"2070003":0},"1183":{"79716":1184,"2070003":0},"1185":{"79716":1186,"2070003":0},"1189":{"35624":1236,"44582":1190,"2070003":0},"1190":{"57495":1191,"2070003":0},"1192":{"47":1193,"12216":2343,"87219":1195,"2070003":0},"1193":{"12216":1194,"2070003":0},"1195":{"12216":1196,"2070003":0},"1199":{"47":1696,"8282":1200,"43722":3676,"44107":3301,"87219":1698,"2070003":9542},"1200":{"52424":1201,"2070003":0},"1201":{"34882":1202,"2070003":0},"1203":{"47":1204,"75664":2353,"87219":1207,"2070003":0},"1204":{"75664":1205,"2070003":0},"1205":{"9395":1206,"2070003":0},"1207":{"75664":1208,"2070003":0},"1208":{"9395":1209,"2070003":0},"1211":{"47":1212,"36451":2456,"87219":1214,"2070003":0},"1212":{"36451":1213,"2070003":0},"1214":{"36451":1215,"2070003":0},"1218":{"47":2462,"219":1219,"13554":3736,"16129":3189,"32791":2014,"35615":1714,"41867":3492,"53018":3737,"87219":2464,"2070003":0},"1219":{"6614":1321,"35624":1220,"2070003":0},"1220":{"57495":1221,"2070003":0},"1222":{"47":1223,"69409":2508,"87219":1225,"2070003":0},"1223":{"69409":1224,"2070003":0},"1225":{"69409":1226,"2070003":0},"1229":{"47":1230,"53437":2511,"87219":1232,"2070003":0},"1230":{"53437":1231,"2070003":0},"1232":{"53437":1233,"2070003":0},"1236":{"57495":1237,"2070003":0},"1238":{"47":1239,"19502":2663,"87219":1241,"2070003":0},"1239":{"19502":1240,"2070003":0},"1241":{"19502":1242,"2070003":0},"1245":{"47":1246,"23082":2695,"87219":1248,"2070003":0},"1246":{"23082":1247,"2070003":0},"1248":{"23082":1249,"2070003":0},"1252":{"9838":2706,"53049":1253,"2070003":0},"1253":{"9838":1254,"2070003":0},"1254":{"75535":1255,"2070003":0},"1256":{"47":1257,"8262":3890,"10513":3891,"11787":2720,"87219":1260,"2070003":0},"1257":{"11787":1258,"2070003":0},"1258":{"13533":1259,"2070003":0},"1260":{"11787":1261,"2070003":0},"1261":{"13533":1262,"2070003":0},"1263":{"35":1264,"2070003":0},"1264":{"72612":1265,"2070003":0},"1266":{"71271":1267,"2070003":0},"1267":{"35":1268,"2070003":0},"1268":{"34906":1269,"2070003":0},"1270":{"3361":1271,"2070003":8341},"1271":{"82657":1272,"2070003":0},"1272":{"61045":1273,"2070003":0},"1274":{"219":1275,"2070003":0},"1275":{"58691":1276,"2070003":0},"1277":{"35":1278,"2070003":4846},"1278":{"30000":1279,"2070003":0},"1279":{"11196":1280,"2070003":2747},"1281":{"47":1282,"53385":2751,"87219":1284,"2070003":0},"1282":{"53385":1283,"2070003":0},"1284":{"53385":1285,"2070003":0},"1288":{"47":1289,"22605":2752,"87219":1291,"2070003":0},"1289":{"22605":1290,"2070003":0},"1291":{"22605":1292,"2070003":0},"1295":{"52694":1296,"2070003":0},"1296":{"35":1297,"2070003":0},"1297":{"43583":1298,"85838":1299,"2070003":0},"1300":{"77052":1301,"2070003":0},"1301":{"34330":1302,"2070003":0},"1303":{"32791":3068,"74919":3584,"77052":1304,"2070003":0},"1304":{"48468":2763,"77841":1305,"2070003":0},"1305":{"7714":1306,"2070003":0},"1307":{"47":1308,"49128":2780,"87219":1310,"2070003":0},"1308":{"49128":1309,"2070003":0},"1310":{"49128":1311,"2070003":0},"1314":{"47":1315,"28250":2785,"87219":1317,"2070003":0},"1315":{"28250":1316,"2070003":0},"1317":{"28250":1318,"2070003":0},"1321":{"85005":1322,"2070003":0},"1323":{"35":1324,"2070003":0},"1324":{"47":1325,"61535":2824,"87219":1327,"2070003":0},"1325":{"61535":1326,"2070003":0},"1327":{"61535":1328,"2070003":0},"1329":{"52694":1330,"2070003":0},"1330":{"35":1331,"2070003":0},"1331":{"76529":1332,"2070003":0},"1333":{"47":1334,"24298":2841,"87219":1337,"2070003":0},"1334":{"24298":1335,"2070003":0},"1335":{"19614":1336,"2070003":0},"1337":{"24298":1338,"2070003":0},"1338":{"19614":1339,"2070003":0},"1340":{"47":1341,"66339":2879,"87219":1343,"2070003":0},"1341":{"66339":1342,"2070003":0},"1343":{"66339":1344,"2070003":0},"1347":{"47":1348,"8001":4182,"20260":2940,"87219":1351,"2070003":0},"1348":{"8001":2079,"20260":1349,"2070003":0},"1349":{"10785":1350,"2070003":0},"1351":{"8001":2080,"20260":1352,"2070003":0},"1352":{"10785":1353,"2070003":0},"1354":{"47":1355,"68898":2960,"87219":1358,"2070003":0},"1355":{"68898":1356,"2070003":0},"1356":{"79868":1357,"2070003":0},"1358":{"68898":1359,"2070003":0},"1359":{"79868":1360,"2070003":0},"1361":{"47":1362,"32628":2984,"87219":1364,"2070003":0},"1362":{"32628":1363,"2070003":0},"1364":{"32628":1365,"2070003":0},"1368":{"69184":1369,"2070003":0},"1369":{"52424":1370,"2070003":0},"1371":{"69184":1372,"2070003":0},"1372":{"52424":1373,"2070003":0},"1374":{"69184":1375,"2070003":0},"1375":{"52424":1376,"2070003":0},"1377":{"69184":1378,"2070003":0},"1378":{"52424":1379,"2070003":0},"1380":{"2450":1381,"59842":4297,"59846":4298,"77052":3021,"2070003":0},"1381":{"59842":3024,"59846":3025,"77052":1382,"2070003":0},"1382":{"59842":1383,"59846":1384,"2070003":0},"1385":{"219":1386,"2070003":0},"1386":{"68216":1387,"2070003":0},"1387":{"52424":1388,"2070003":0},"1389":{"78040":1390,"2070003":10093},"1390":{"15866":1394,"31027":1395,"38082":1391,"46510":1393,"66734":1392,"68442":1396,"68447":1397,"2070003":0},"1398":{"5231":1399,"2070003":0},"1399":{"32791":1400,"2070003":0},"1401":{"6614":1402,"32628":1403,"2070003":0},"1404":{"47":2608,"32791":1405,"70947":3816,"87219":2610,"2070003":0},"1405":{"5231":1406,"2070003":0},"1408":{"44547":1409,"2070003":0},"1410":{"44547":1411,"2070003":0},"1412":{"44547":1413,"2070003":0},"1414":{"38161":1415,"2070003":10654},"1415":{"44547":1416,"2070003":0},"1417":{"47":1737,"3361":1418,"6481":3081,"7693":3080,"23509":3083,"27832":3787,"43111":3086,"47674":3345,"52425":3082,"87219":1739,"2070003":4392},"1418":{"86566":1419,"2070003":0},"1420":{"47":1421,"5551":3513,"15804":3117,"15805":3118,"16221":3514,"20874":3161,"21192":3277,"22030":3515,"22443":3162,"22926":3163,"23454":3164,"24629":3516,"29300":4187,"30255":4188,"34668":3165,"38036":3517,"38489":3421,"44726":3793,"45081":3518,"57463":3166,"63391":3794,"63681":3519,"64112":3167,"64401":3795,"66722":3119,"66730":3087,"74414":3796,"74416":3797,"74868":3520,"75077":3798,"78344":3422,"78395":3423,"86430":3799,"87219":1423,"2070003":0},"1421":{"5551":2081,"15804":1452,"15805":1454,"16221":2083,"20874":1500,"21192":1671,"22030":2085,"22443":1502,"22926":1504,"23454":1506,"24629":2087,"29300":2942,"30255":2944,"34668":1508,"38036":2089,"38489":1857,"44726":2563,"45081":2091,"57463":1510,"63391":2565,"63681":2093,"64112":1512,"64401":2567,"66722":1456,"66730":1422,"74414":2569,"74416":2571,"74868":2095,"75077":2573,"78344":1859,"78395":1861,"86430":2575,"2070003":0},"1423":{"5551":2082,"15804":1453,"15805":1455,"16221":2084,"20874":1501,"21192":1672,"22030":2086,"22443":1503,"22926":1505,"23454":1507,"24629":2088,"29300":2943,"30255":2945,"34668":1509,"38036":2090,"38489":1858,"44726":2564,"45081":2092,"57463":1511,"63391":2566,"63681":2094,"64112":1513,"64401":2568,"66722":1457,"66730":1424,"74414":2570,"74416":2572,"74868":2096,"75077":2574,"78344":1860,"78395":1862,"86430":2576,"2070003":0},"1425":{"1578":3090,"3361":1426,"30037":3089,"37374":3092,"41307":3093,"62588":3094,"74456":3091,"2070003":0},"1426":{"66172":1427,"2070003":0},"1428":{"47":1429,"14402":3102,"62267":3468,"87219":1431,"2070003":0},"1429":{"14402":1430,"62267":1946,"2070003":0},"1431":{"14402":1432,"62267":1947,"2070003":0},"1433":{"47":1434,"82762":3729,"87219":1436,"2070003":0},"1434":{"82762":1435,"2070003":0},"1436":{"82762":1437,"2070003":0},"1438":{"30075":1439,"2070003":0},"1439":{"41270":1440,"2070003":0},"1441":{"52676":4066,"82762":1442,"2070003":0},"1442":{"78040":1443,"2070003":0},"1444":{"23509":2833,"82762":1445,"2070003":0},"1445":{"78040":1446,"2070003":0},"1447":{"47":1448,"44570":3112,"87219":1450,"2070003":10880},"1448":{"44570":1449,"2070003":0},"1450":{"44570":1451,"2070003":0},"1458":{"52676":1459,"53385":2276,"2070003":0},"1459":{"2104":1460,"2070003":0},"1463":{"48727":1464,"2070003":0},"1465":{"47":1466,"73688":3137,"87219":1468,"2070003":4952},"1466":{"73688":1467,"2070003":0},"1468":{"73688":1469,"2070003":0},"1470":{"47":1471,"28860":3479,"32974":3480,"47674":3332,"56089":3333,"58906":3725,"59715":3726,"61480":3481,"65302":3145,"72057":3105,"72910":3728,"76679":3727,"87219":1473,"2070003":0},"1471":{"28860":1964,"32974":1966,"47674":1710,"56089":1712,"58906":2443,"59715":2445,"65302":1472,"76679":2447,"2070003":0},"1473":{"28860":1965,"32974":1967,"47674":1711,"56089":1713,"58906":2444,"59715":2446,"65302":1474,"76679":2448,"2070003":0},"1475":{"47":1476,"73688":3146,"73787":3147,"87219":1478,"2070003":4982},"1476":{"73688":1477,"73787":1480,"2070003":0},"1478":{"73688":1479,"73787":1481,"2070003":0},"1482":{"47":1483,"7714":3389,"10046":3595,"16518":3390,"28467":4037,"32903":4038,"34882":3596,"36692":3251,"36703":3252,"41306":3391,"44653":4039,"50144":3253,"67060":3249,"70573":3250,"76529":3149,"76540":3392,"77843":3148,"85882":3150,"87219":1485,"2070003":6979},"1483":{"7714":1807,"10046":2232,"16518":1809,"28467":2802,"32903":2804,"41306":1811,"67060":1649,"70573":1651,"76540":1813,"77843":1484,"2070003":0},"1485":{"7714":1808,"10046":2233,"16518":1810,"28467":2803,"32903":2805,"41306":1812,"67060":1650,"70573":1652,"76540":1814,"77843":1486,"2070003":0},"1487":{"72045":1488,"72047":1491,"2070003":0},"1489":{"72045":1490,"72047":1492,"2070003":0},"1493":{"47":1494,"5808":3155,"22602":3621,"73688":3153,"73787":3154,"87219":1496,"2070003":4463},"1494":{"73688":1495,"73787":1498,"2070003":0},"1496":{"73688":1497,"73787":1499,"2070003":0},"1514":{"47":1515,"14402":3552,"68671":3863,"68801":3864,"85078":3177,"87219":1517,"2070003":0},"1515":{"14402":2176,"68671":2696,"68801":2698,"85078":1516,"2070003":0},"1517":{"14402":2177,"68671":2697,"68801":2699,"85078":1518,"2070003":0},"1519":{"47":1520,"9186":3178,"87219":1522,"2070003":6197},"1520":{"9186":1521,"2070003":0},"1522":{"9186":1523,"2070003":0},"1524":{"47":1525,"82762":3179,"87219":1527,"2070003":0},"1525":{"82762":1526,"2070003":0},"1527":{"82762":1528,"2070003":0},"1529":{"47":1530,"44401":3180,"52425":3299,"87219":1532,"2070003":7382},"1530":{"44401":1531,"2070003":0},"1532":{"44401":1533,"2070003":0},"1534":{"47404":1535,"2070003":0},"1536":{"47":1537,"28082":3181,"87219":1539,"2070003":0},"1537":{"28082":1538,"2070003":0},"1539":{"28082":1540,"2070003":0},"1541":{"47":1542,"44401":3182,"79749":3467,"87219":1544,"2070003":10146},"1542":{"44401":1543,"79749":1944,"2070003":0},"1544":{"44401":1545,"79749":1945,"2070003":0},"1548":{"47":1549,"32507":3192,"87219":1551,"2070003":0},"1549":{"32507":1550,"2070003":0},"1551":{"32507":1552,"2070003":0},"1553":{"47":1554,"56064":3193,"87219":1556,"2070003":0},"1554":{"56064":1555,"2070003":0},"1556":{"56064":1557,"2070003":0},"1558":{"47":1559,"34815":3194,"87219":1561,"2070003":0},"1559":{"34815":1560,"2070003":0},"1561":{"34815":1562,"2070003":0},"1563":{"47":1564,"9212":3195,"87219":1566,"2070003":0},"1564":{"9212":1565,"2070003":0},"1566":{"9212":1567,"2070003":0},"1568":{"47":2052,"28015":3760,"34282":3761,"41727":3503,"77052":1569,"87219":2054,"2070003":0},"1569":{"10944":1570,"36208":1658,"51644":1571,"2070003":0},"1572":{"47":1573,"82762":3204,"87219":1575,"2070003":0},"1573":{"82762":1574,"2070003":0},"1575":{"82762":1576,"2070003":0},"1577":{"47":1578,"27832":3206,"87219":1580,"2070003":0},"1578":{"27832":1579,"2070003":0},"1580":{"27832":1581,"2070003":0},"1582":{"47":1583,"29120":3213,"34306":3214,"87219":1585,"2070003":0},"1583":{"29120":1584,"34306":1587,"2070003":0},"1585":{"29120":1586,"34306":1588,"2070003":0},"1589":{"47":1590,"27891":3823,"67060":3215,"70573":3216,"83729":4224,"87219":1592,"2070003":5375},"1590":{"27891":2634,"67060":1591,"70573":1594,"2070003":0},"1592":{"27891":2635,"67060":1593,"70573":1595,"2070003":0},"1596":{"47":1597,"29569":3218,"32974":3531,"35926":3219,"51693":3532,"61480":3533,"87219":1599,"2070003":11465},"1597":{"29569":1598,"32974":2126,"35926":1601,"51693":2128,"61480":2130,"2070003":0},"1599":{"29569":1600,"32974":2127,"35926":1602,"51693":2129,"61480":2131,"2070003":0},"1612":{"47":1613,"56064":3225,"87219":1615,"2070003":0},"1613":{"56064":1614,"2070003":0},"1615":{"56064":1616,"2070003":0},"1617":{"47":1618,"9006":3233,"44653":3919,"87219":1620,"2070003":0},"1618":{"9006":1619,"2070003":0},"1620":{"9006":1621,"2070003":0},"1622":{"52424":1623,"2070003":0},"1623":{"19640":1624,"2070003":0},"1628":{"47":1629,"44401":3240,"87219":1631,"2070003":4917},"1629":{"44401":1630,"2070003":0},"1631":{"44401":1632,"2070003":0},"1633":{"46317":1634,"2070003":10174},"1634":{"23906":1635,"2070003":0},"1636":{"47":1637,"70573":3243,"82762":3998,"87219":1639,"2070003":4435},"1637":{"70573":1638,"2070003":0},"1639":{"70573":1640,"2070003":0},"1641":{"47":1642,"6327":3247,"87219":1644,"2070003":10244},"1642":{"6327":1643,"2070003":0},"1644":{"6327":1645,"2070003":0},"1646":{"47":2221,"41965":3590,"52676":1647,"65595":3591,"87219":2223,"2070003":5515},"1647":{"24338":1648,"2070003":0},"1653":{"47":1654,"20895":3259,"22602":3611,"87219":1656,"2070003":0},"1654":{"20895":1655,"2070003":0},"1656":{"20895":1657,"2070003":0},"1659":{"47":1660,"8632":3274,"40041":3626,"87219":1662,"2070003":0},"1660":{"8632":1661,"2070003":0},"1662":{"8632":1663,"2070003":0},"1664":{"47":1665,"70573":3275,"87219":1667,"2070003":0},"1665":{"70573":1666,"2070003":0},"1667":{"70573":1668,"2070003":0},"1673":{"47":1674,"51649":3804,"68483":3805,"86324":3278,"87219":1676,"2070003":0},"1674":{"51649":2587,"68483":2589,"86324":1675,"2070003":0},"1676":{"51649":2588,"68483":2590,"86324":1677,"2070003":0},"1678":{"47":1679,"70573":3285,"87219":1681,"2070003":9058},"1679":{"70573":1680,"2070003":0},"1681":{"70573":1682,"2070003":0},"1683":{"32791":3458,"38161":3239,"51677":1684,"2070003":0},"1684":{"84877":1685,"2070003":0},"1686":{"47":1687,"34815":3294,"87219":1689,"2070003":0},"1687":{"34815":1688,"2070003":0},"1689":{"34815":1690,"2070003":0},"1691":{"47":1692,"13653":3300,"65060":3442,"87219":1694,"2070003":0},"1692":{"13653":1693,"65060":1912,"2070003":0},"1694":{"13653":1695,"65060":1913,"2070003":0},"1696":{"43722":2351,"44107":1697,"2070003":0},"1698":{"43722":2352,"44107":1699,"2070003":0},"1700":{"47":1701,"32807":3330,"87219":1703,"2070003":0},"1701":{"32807":1702,"2070003":0},"1703":{"32807":1704,"2070003":0},"1705":{"47":1706,"68214":3331,"87219":1708,"2070003":10323},"1706":{"68214":1707,"2070003":0},"1708":{"68214":1709,"2070003":0},"1714":{"72057":1715,"2070003":0},"1716":{"47":1717,"47674":3336,"87219":1719,"2070003":10791},"1717":{"47674":1718,"2070003":0},"1719":{"47674":1720,"2070003":0},"1721":{"63676":1722,"2070003":0},"1723":{"63676":1724,"2070003":0},"1725":{"63676":1726,"2070003":0},"1727":{"63676":1728,"2070003":0},"1729":{"63676":1730,"2070003":0},"1731":{"38161":1732,"63676":3343,"2070003":0},"1732":{"63676":1733,"2070003":0},"1734":{"38161":1735,"63676":3344,"2070003":6200},"1735":{"63676":1736,"2070003":0},"1737":{"27832":2546,"47674":1738,"2070003":0},"1739":{"27832":2547,"47674":1740,"2070003":0},"1741":{"47":1742,"47674":3346,"87219":1744,"2070003":0},"1742":{"47674":1743,"2070003":0},"1744":{"47674":1745,"2070003":0},"1746":{"47":1747,"60612":3348,"87219":1749,"2070003":0},"1747":{"60612":1748,"2070003":0},"1749":{"60612":1750,"2070003":0},"1751":{"47":1752,"36178":3349,"76856":3831,"87219":1754,"2070003":0},"1752":{"36178":1753,"76856":2644,"2070003":0},"1754":{"36178":1755,"76856":2645,"2070003":0},"1756":{"59994":1757,"2070003":0},"1772":{"76540":1773,"2070003":0},"1774":{"76540":1775,"2070003":0},"1776":{"47":1777,"53668":3365,"87219":1779,"2070003":0},"1777":{"53668":1778,"2070003":0},"1779":{"53668":1780,"2070003":0},"1781":{"19576":1782,"2070003":0},"1782":{"45247":1783,"2070003":0},"1784":{"47":1785,"15376":3373,"15405":3374,"87219":1787,"2070003":4417},"1785":{"15376":1786,"15405":1789,"2070003":0},"1787":{"15376":1788,"15405":1790,"2070003":0},"1791":{"47":1792,"15376":3381,"15405":3382,"87219":1794,"2070003":6917},"1792":{"15376":1793,"15405":1796,"2070003":0},"1794":{"15376":1795,"15405":1797,"2070003":0},"1798":{"47":1799,"14962":4012,"18026":3385,"46017":4013,"72622":4014,"87219":1801,"2070003":0},"1799":{"14962":2774,"18026":1800,"46017":2776,"72622":2778,"2070003":0},"1801":{"14962":2775,"18026":1802,"46017":2777,"72622":2779,"2070003":0},"1803":{"76540":1804,"2070003":0},"1805":{"76540":1806,"2070003":0},"1815":{"4373":3395,"7590":3403,"14999":3401,"15089":3405,"23770":3408,"30000":3400,"35047":3407,"37374":3406,"49154":3397,"50701":1816,"57739":3409,"59938":3398,"71090":3399,"76256":3404,"83963":3396,"85958":3402,"2070003":6031},"1816":{"4373":1817,"7590":1825,"14999":1823,"15089":1827,"23770":1830,"30000":1822,"35047":1829,"37374":1828,"49154":1819,"57739":1831,"59938":1820,"71090":1821,"76256":1826,"83963":1818,"85958":1824,"2070003":0},"1832":{"72045":1833,"2070003":0},"1834":{"72045":1835,"2070003":0},"1836":{"47":1837,"70573":3418,"87219":1839,"2070003":0},"1837":{"70573":1838,"2070003":0},"1839":{"70573":1840,"2070003":0},"1841":{"47":1842,"68447":3321,"76529":3158,"76540":3419,"87219":1844,"2070003":0},"1842":{"76540":1843,"2070003":0},"1844":{"76540":1845,"2070003":0},"1846":{"77052":1847,"2070003":0},"1847":{"65562":1848,"2070003":0},"1849":{"47":1850,"38161":3420,"87219":1852,"2070003":0},"1850":{"38161":1851,"2070003":0},"1852":{"38161":1853,"2070003":0},"1854":{"3361":1855,"2070003":0},"1855":{"5318":1856,"2070003":0},"1863":{"47":1864,"19504":3808,"34306":4190,"69553":3058,"69554":3059,"72623":4191,"76529":3168,"76540":3424,"87219":1866,"2070003":0},"1864":{"19504":2591,"34306":2951,"72623":2953,"76540":1865,"2070003":0},"1866":{"19504":2592,"34306":2952,"72623":2954,"76540":1867,"2070003":0},"1868":{"41882":2636,"54381":4227,"78040":1869,"2070003":0},"1869":{"76124":1870,"2070003":0},"1871":{"47":1872,"70063":3429,"87219":1874,"2070003":0},"1872":{"70063":1873,"2070003":0},"1874":{"70063":1875,"2070003":0},"1876":{"47":1877,"24393":3430,"87219":1879,"2070003":0},"1877":{"24393":1878,"2070003":0},"1879":{"24393":1880,"2070003":0},"1881":{"47":1882,"5046":3433,"25188":3434,"25476":3435,"38021":3651,"38360":3436,"50853":3650,"65174":3297,"65732":3437,"87219":1884,"2070003":0},"1882":{"5046":1883,"25188":1886,"25476":1888,"38021":2286,"38360":1890,"50853":2288,"65732":1892,"2070003":0},"1884":{"5046":1885,"25188":1887,"25476":1889,"38021":2287,"38360":1891,"50853":2289,"65732":1893,"2070003":0},"1894":{"8001":1895,"62494":2295,"2070003":0},"1896":{"47":1897,"39475":3439,"87219":1899,"2070003":0},"1897":{"39475":1898,"2070003":0},"1899":{"39475":1900,"2070003":0},"1901":{"47":1902,"34735":3440,"82762":3883,"87219":1904,"2070003":0},"1902":{"34735":1903,"2070003":0},"1904":{"34735":1905,"2070003":0},"1906":{"47":1907,"82762":3441,"87219":1909,"2070003":0},"1907":{"82762":1908,"2070003":0},"1909":{"82762":1910,"2070003":0},"1914":{"47":1915,"27832":3446,"87219":1917,"2070003":0},"1915":{"27832":1916,"2070003":0},"1917":{"27832":1918,"2070003":0},"1919":{"47":1920,"25521":3955,"52676":2375,"87219":1922,"2070003":9701},"1920":{"25521":2745,"52676":1921,"2070003":0},"1922":{"25521":2746,"52676":1923,"2070003":0},"1924":{"77052":1925,"2070003":0},"1925":{"32803":1926,"2070003":0},"1927":{"47":1928,"27832":3457,"87219":1930,"2070003":0},"1928":{"27832":1929,"2070003":0},"1930":{"27832":1931,"2070003":0},"1933":{"47":1934,"45297":3460,"87219":1936,"2070003":0},"1934":{"45297":1935,"2070003":0},"1936":{"45297":1937,"2070003":0},"1938":{"47":1939,"66802":3461,"77052":2205,"82762":3992,"87219":1941,"2070003":0},"1939":{"66802":1940,"2070003":0},"1941":{"66802":1942,"2070003":0},"1948":{"47":1949,"44401":3471,"49159":3699,"87219":1951,"2070003":0},"1949":{"44401":1950,"49159":2389,"2070003":0},"1951":{"44401":1952,"49159":2390,"2070003":0},"1959":{"47":1960,"34890":3478,"87219":1962,"2070003":0},"1960":{"34890":1961,"2070003":0},"1962":{"34890":1963,"2070003":0},"1968":{"61480":1969,"2070003":0},"1970":{"61480":1971,"2070003":0},"1972":{"61480":1973,"2070003":0},"1974":{"61480":1975,"2070003":0},"1976":{"61480":1977,"2070003":0},"1978":{"61480":1979,"2070003":0},"1980":{"61480":1981,"2070003":0},"1982":{"61480":1983,"2070003":0},"1984":{"61480":1985,"2070003":0},"1986":{"61480":1987,"2070003":0},"1988":{"61480":1989,"2070003":0},"1990":{"61480":1991,"2070003":0},"1992":{"61480":1993,"2070003":0},"1994":{"61480":1995,"2070003":0},"1996":{"61480":1997,"2070003":0},"1998":{"61480":1999,"2070003":0},"2000":{"61480":2001,"2070003":0},"2002":{"61480":2003,"2070003":0},"2004":{"61480":2005,"2070003":0},"2006":{"61480":2007,"2070003":0},"2014":{"76137":2015,"2070003":0},"2016":{"219":2019,"40733":2017,"71456":2495,"77052":2497,"2070003":0},"2017":{"41867":2018,"2070003":0},"2019":{"41867":2020,"2070003":0},"2022":{"47":2023,"32267":3493,"38103":3608,"77516":4065,"87219":2025,"2070003":0},"2023":{"32267":2024,"77516":2831,"2070003":0},"2025":{"32267":2026,"77516":2832,"2070003":0},"2027":{"47":2028,"29066":3494,"30028":3744,"87219":2030,"2070003":0},"2028":{"29066":2029,"30028":2476,"2070003":0},"2030":{"29066":2031,"30028":2477,"2070003":0},"2032":{"47":2033,"27482":3309,"83252":3499,"87219":2035,"2070003":0},"2033":{"83252":2034,"2070003":0},"2035":{"83252":2036,"2070003":0},"2037":{"47":2038,"13787":3500,"67252":4099,"87219":2040,"2070003":0},"2038":{"13787":2039,"2070003":0},"2040":{"13787":2041,"2070003":0},"2042":{"47":2043,"29066":3501,"87219":2045,"2070003":7814},"2043":{"29066":2044,"2070003":0},"2045":{"29066":2046,"2070003":0},"2047":{"47":2048,"801":3618,"17598":3619,"32791":3065,"35800":3502,"43603":4281,"87219":2050,"2070003":0},"2048":{"801":2249,"17598":2251,"35800":2049,"2070003":0},"2050":{"801":2250,"17598":2252,"35800":2051,"2070003":0},"2052":{"41727":2053,"2070003":0},"2054":{"41727":2055,"2070003":0},"2056":{"47":2057,"59560":3504,"87219":2059,"2070003":10956},"2057":{"59560":2058,"2070003":0},"2059":{"59560":2060,"2070003":0},"2061":{"3361":2534,"78040":2062,"2070003":6622},"2062":{"34282":2063,"2070003":0},"2064":{"47":2065,"9996":3507,"87219":2067,"2070003":0},"2065":{"9996":2066,"2070003":0},"2067":{"9996":2068,"2070003":0},"2069":{"47":2070,"44570":3510,"87219":2072,"2070003":0},"2070":{"44570":2071,"2070003":0},"2072":{"44570":2073,"2070003":0},"2074":{"47":2075,"63622":3511,"87219":2077,"2070003":11153},"2075":{"63622":2076,"2070003":0},"2077":{"63622":2078,"2070003":0},"2097":{"52424":2098,"2070003":0},"2098":{"61143":2099,"2070003":0},"2100":{"47":2101,"25634":3523,"87219":2103,"2070003":0},"2101":{"25634":2102,"2070003":0},"2103":{"25634":2104,"2070003":0},"2105":{"47":2106,"5097":3209,"42297":3524,"43150":3821,"69153":3210,"87219":2108,"2070003":11337},"2106":{"42297":2107,"43150":2632,"2070003":0},"2108":{"42297":2109,"43150":2633,"2070003":0},"2110":{"47":2111,"42297":3525,"87219":2113,"2070003":0},"2111":{"42297":2112,"2070003":0},"2113":{"42297":2114,"2070003":0},"2115":{"47":2116,"44570":3526,"87219":2118,"2070003":0},"2116":{"44570":2117,"2070003":0},"2118":{"44570":2119,"2070003":0},"2120":{"47":2121,"29246":3828,"42297":3527,"87219":2123,"2070003":0},"2121":{"29246":2642,"42297":2122,"2070003":0},"2123":{"29246":2643,"42297":2124,"2070003":0},"2132":{"3361":2133,"2070003":0},"2133":{"76856":2134,"79559":2651,"79594":2135,"2070003":0},"2137":{"47":2138,"18417":3537,"87219":2140,"2070003":0},"2138":{"18417":2139,"2070003":0},"2140":{"18417":2141,"2070003":0},"2142":{"47":2143,"9047":3538,"78040":3833,"87219":2145,"2070003":6744},"2143":{"9047":2144,"2070003":0},"2145":{"9047":2146,"2070003":0},"2147":{"47":2148,"30759":3541,"87219":2150,"2070003":0},"2148":{"30759":2149,"2070003":0},"2150":{"30759":2151,"2070003":0},"2152":{"47":2153,"44570":3542,"87219":2155,"2070003":0},"2153":{"44570":2154,"2070003":0},"2155":{"44570":2156,"2070003":0},"2178":{"47":2179,"82762":3557,"87219":2181,"2070003":0},"2179":{"82762":2180,"2070003":0},"2181":{"82762":2182,"2070003":0},"2183":{"47":2184,"42096":3558,"87219":2186,"2070003":0},"2184":{"42096":2185,"2070003":0},"2186":{"42096":2187,"2070003":0},"2188":{"75535":2189,"2070003":0},"2190":{"11488":2191,"2070003":0},"2192":{"47":2193,"10046":3573,"87219":2195,"2070003":0},"2193":{"10046":2194,"2070003":0},"2195":{"10046":2196,"2070003":0},"2197":{"35":2198,"47":2201,"24302":3582,"87219":2203,"2070003":0},"2198":{"9994":2199,"21955":2200,"2070003":0},"2201":{"24302":2202,"2070003":0},"2203":{"24302":2204,"2070003":0},"2205":{"49526":2206,"2070003":0},"2207":{"47":2208,"8581":3583,"87219":2210,"2070003":0},"2208":{"8581":2209,"2070003":0},"2210":{"8581":2211,"2070003":0},"2216":{"47":2217,"37818":3589,"44490":3387,"87219":2219,"2070003":7676},"2217":{"37818":2218,"2070003":0},"2219":{"37818":2220,"2070003":0},"2221":{"41965":2222,"65595":2225,"2070003":0},"2223":{"41965":2224,"65595":2226,"2070003":0},"2227":{"47":2228,"6481":3592,"87219":2230,"2070003":10343},"2228":{"6481":2229,"2070003":0},"2230":{"6481":2231,"2070003":0},"2234":{"47":2235,"19504":3746,"74404":3609,"74408":3610,"87219":2237,"2070003":0},"2235":{"19504":2483,"74404":2236,"74408":2239,"2070003":0},"2237":{"19504":2484,"74404":2238,"74408":2240,"2070003":0},"2241":{"38161":2242,"2070003":0},"2242":{"84625":2243,"2070003":0},"2244":{"47":2245,"82762":3613,"87219":2247,"2070003":10681},"2245":{"82762":2246,"2070003":0},"2247":{"82762":2248,"2070003":0},"2253":{"52425":3095,"52676":3417,"52694":2254,"2070003":0},"2254":{"1109":2255,"53668":2256,"2070003":0},"2258":{"3361":2259,"2070003":0},"2259":{"18348":2260,"2070003":0},"2261":{"47":2262,"10276":3640,"19610":4211,"87219":2264,"2070003":0},"2262":{"10276":2263,"19610":2974,"2070003":0},"2264":{"10276":2265,"19610":2975,"2070003":0},"2266":{"47":2267,"10276":3641,"87219":2269,"2070003":0},"2267":{"10276":2268,"2070003":0},"2269":{"10276":2270,"2070003":0},"2271":{"47":2272,"79890":3644,"87219":2274,"2070003":7191},"2272":{"79890":2273,"2070003":0},"2274":{"79890":2275,"2070003":0},"2276":{"52424":2277,"2070003":0},"2278":{"35":2279,"2070003":0},"2279":{"8920":2280,"2070003":0},"2281":{"47":2282,"43689":3648,"87219":2284,"2070003":0},"2282":{"43689":2283,"2070003":0},"2284":{"43689":2285,"2070003":0},"2290":{"47":2291,"17918":3652,"87219":2293,"2070003":0},"2291":{"17918":2292,"2070003":0},"2293":{"17918":2294,"2070003":0},"2296":{"47":2297,"82762":3655,"87219":2299,"2070003":0},"2297":{"82762":2298,"2070003":0},"2299":{"82762":2300,"2070003":0},"2301":{"52424":2302,"2070003":5228},"2302":{"2450":2303,"2070003":0},"2304":{"219":2305,"8049":3656,"2070003":0},"2305":{"8049":2306,"2070003":0},"2307":{"219":2308,"8049":3657,"2070003":0},"2308":{"8049":2309,"2070003":0},"2310":{"219":2311,"8049":3658,"2070003":0},"2311":{"8049":2312,"2070003":0},"2313":{"219":2314,"8049":3659,"2070003":0},"2314":{"8049":2315,"2070003":0},"2316":{"47":2317,"27891":3664,"87219":2319,"2070003":6842},"2317":{"27891":2318,"2070003":0},"2319":{"27891":2320,"2070003":0},"2321":{"47":2322,"9047":3666,"63014":3665,"69479":3909,"87219":2324,"2070003":9456},"2322":{"63014":2323,"2070003":0},"2324":{"63014":2325,"2070003":0},"2326":{"47":2327,"34815":3669,"87219":2329,"2070003":0},"2327":{"34815":2328,"2070003":0},"2329":{"34815":2330,"2070003":0},"2331":{"47":2332,"23082":3670,"87219":2334,"2070003":0},"2332":{"23082":2333,"2070003":0},"2334":{"23082":2335,"2070003":0},"2336":{"47":2337,"57737":3671,"87219":2339,"2070003":0},"2337":{"57737":2338,"2070003":0},"2339":{"57737":2340,"2070003":0},"2341":{"76750":2342,"2070003":0},"2346":{"47":2347,"12765":3675,"87219":2349,"2070003":0},"2347":{"12765":2348,"2070003":0},"2349":{"12765":2350,"2070003":0},"2353":{"9395":2354,"2070003":0},"2355":{"47":2356,"42890":3679,"68161":3680,"87219":2358,"2070003":0},"2356":{"42890":2357,"2070003":0},"2358":{"42890":2359,"2070003":0},"2360":{"47":2361,"24669":3683,"24704":3684,"87219":2363,"2070003":0},"2361":{"24669":2362,"24704":2365,"2070003":0},"2363":{"24669":2364,"24704":2366,"2070003":0},"2367":{"52424":2368,"2070003":0},"2368":{"76256":2369,"2070003":0},"2370":{"47":2371,"24582":3687,"87219":2373,"2070003":9688},"2371":{"24582":2372,"2070003":0},"2373":{"24582":2374,"2070003":0},"2375":{"76073":2376,"2070003":3453},"2377":{"47":2378,"18332":3983,"61649":3690,"87219":2380,"2070003":0},"2378":{"61649":2379,"2070003":0},"2380":{"61649":2381,"2070003":0},"2384":{"47":2385,"50334":3698,"87219":2387,"2070003":0},"2385":{"50334":2386,"2070003":0},"2387":{"50334":2388,"2070003":0},"2391":{"50334":2392,"2070003":0},"2393":{"50334":2394,"2070003":0},"2395":{"47":2396,"18959":3701,"87219":2398,"2070003":10193},"2396":{"18959":2397,"2070003":0},"2398":{"18959":2399,"2070003":0},"2400":{"47":2401,"9021":3702,"9186":3703,"9553":3704,"23770":3705,"28244":3706,"52424":2413,"87219":2403,"2070003":0},"2401":{"9021":2402,"9186":2405,"9553":2407,"23770":2409,"28244":2411,"2070003":0},"2403":{"9021":2404,"9186":2406,"9553":2408,"23770":2410,"28244":2412,"2070003":0},"2413":{"43603":2414,"2070003":0},"2415":{"47":2416,"24583":3712,"87219":2418,"2070003":0},"2416":{"24583":2417,"2070003":0},"2418":{"24583":2419,"2070003":0},"2424":{"13241":2425,"2070003":0},"2426":{"47":2427,"4560":3719,"87219":2429,"2070003":0},"2427":{"4560":2428,"2070003":0},"2429":{"4560":2430,"2070003":0},"2431":{"47":2432,"30325":3720,"87219":2434,"2070003":0},"2432":{"30325":2433,"2070003":0},"2434":{"30325":2435,"2070003":0},"2436":{"47":2437,"52676":3722,"87219":2439,"2070003":0},"2437":{"52676":2438,"2070003":0},"2439":{"52676":2440,"2070003":0},"2449":{"47":2450,"10084":3730,"18813":3731,"87219":2452,"2070003":0},"2450":{"10084":2451,"18813":2454,"2070003":0},"2452":{"10084":2453,"18813":2455,"2070003":0},"2457":{"47":2458,"30629":3735,"87219":2460,"2070003":0},"2458":{"30629":2459,"2070003":0},"2460":{"30629":2461,"2070003":0},"2462":{"13554":2463,"2070003":0},"2464":{"13554":2465,"2070003":0},"2466":{"47":2467,"47674":3740,"87219":2469,"2070003":0},"2467":{"47674":2468,"2070003":0},"2469":{"47674":2470,"2070003":0},"2471":{"47":2472,"7656":3741,"87219":2474,"2070003":7752},"2472":{"7656":2473,"2070003":0},"2474":{"7656":2475,"2070003":0},"2478":{"47":2479,"7438":3745,"87219":2481,"2070003":0},"2479":{"7438":2480,"2070003":0},"2481":{"7438":2482,"2070003":0},"2485":{"47":2486,"45621":3756,"87219":2488,"2070003":0},"2486":{"45621":2487,"2070003":0},"2488":{"45621":2489,"2070003":0},"2490":{"47":2491,"7438":3758,"36451":4118,"87219":2493,"2070003":0},"2491":{"7438":2492,"2070003":0},"2493":{"7438":2494,"2070003":0},"2495":{"47673":2496,"2070003":0},"2497":{"26636":2498,"2070003":0},"2499":{"47":2500,"6635":3620,"32713":4121,"77841":3759,"87219":2502,"2070003":0},"2500":{"77841":2501,"2070003":0},"2502":{"77841":2503,"2070003":0},"2504":{"34306":2505,"2070003":0},"2506":{"34306":2507,"2070003":0},"2512":{"47":2513,"62494":3764,"87219":2515,"2070003":0},"2513":{"62494":2514,"2070003":0},"2515":{"62494":2516,"2070003":0},"2517":{"47":2518,"72045":3779,"87219":2520,"2070003":0},"2518":{"72045":2519,"2070003":0},"2520":{"72045":2521,"2070003":0},"2522":{"47":2523,"10558":3780,"45081":3781,"87219":2525,"2070003":0},"2523":{"10558":2524,"45081":2527,"2070003":0},"2525":{"10558":2526,"45081":2528,"2070003":0},"2529":{"47":2530,"63014":3782,"87219":2532,"2070003":0},"2530":{"63014":2531,"2070003":0},"2532":{"63014":2533,"2070003":0},"2534":{"84629":2535,"2070003":0},"2536":{"47":2537,"8950":3783,"34306":4171,"87219":2539,"2070003":0},"2537":{"8950":2538,"34306":2911,"2070003":0},"2539":{"8950":2540,"34306":2912,"2070003":0},"2541":{"47":2542,"54368":3786,"87219":2544,"2070003":0},"2542":{"54368":2543,"2070003":0},"2544":{"54368":2545,"2070003":0},"2548":{"47":2549,"52425":3788,"87219":2551,"2070003":0},"2549":{"52425":2550,"2070003":0},"2551":{"52425":2552,"2070003":0},"2553":{"47":2554,"52425":3789,"87219":2556,"2070003":0},"2554":{"52425":2555,"2070003":0},"2556":{"52425":2557,"2070003":0},"2558":{"47":2559,"27832":3790,"87219":2561,"2070003":0},"2559":{"27832":2560,"2070003":0},"2561":{"27832":2562,"2070003":0},"2577":{"47":2578,"4197":3800,"87219":2580,"2070003":0},"2578":{"4197":2579,"2070003":0},"2580":{"4197":2581,"2070003":0},"2582":{"47":2583,"72851":3801,"87219":2585,"2070003":0},"2583":{"72851":2584,"2070003":0},"2585":{"72851":2586,"2070003":0},"2593":{"47":2594,"43846":4199,"78211":3811,"87219":2596,"2070003":0},"2594":{"78211":2595,"2070003":0},"2596":{"78211":2597,"2070003":0},"2598":{"47":2599,"9047":3812,"87219":2601,"2070003":0},"2599":{"9047":2600,"2070003":0},"2601":{"9047":2602,"2070003":0},"2603":{"47":2604,"72183":3813,"87219":2606,"2070003":4396},"2604":{"72183":2605,"2070003":0},"2606":{"72183":2607,"2070003":0},"2608":{"70947":2609,"2070003":0},"2610":{"70947":2611,"2070003":0},"2612":{"47":2613,"21185":4206,"73274":3817,"87219":2615,"2070003":0},"2613":{"21185":2972,"73274":2614,"2070003":0},"2615":{"21185":2973,"73274":2616,"2070003":0},"2617":{"47":2618,"9655":3818,"87219":2620,"2070003":0},"2618":{"9655":2619,"2070003":0},"2620":{"9655":2621,"2070003":0},"2622":{"47":2623,"10558":3819,"69153":3205,"87219":2625,"2070003":0},"2623":{"10558":2624,"2070003":0},"2625":{"10558":2626,"2070003":0},"2627":{"47":2628,"2624":3820,"87219":2630,"2070003":9478},"2628":{"2624":2629,"2070003":0},"2630":{"2624":2631,"2070003":0},"2636":{"78040":2637,"2070003":0},"2638":{"50334":2639,"2070003":0},"2640":{"50334":2641,"2070003":0},"2646":{"47":2647,"77826":3832,"87219":2649,"2070003":0},"2647":{"77826":2648,"2070003":0},"2649":{"77826":2650,"2070003":0},"2652":{"47":2653,"43689":3834,"87219":2655,"2070003":0},"2653":{"43689":2654,"2070003":0},"2655":{"43689":2656,"2070003":0},"2657":{"34306":2658,"50334":2661,"2070003":0},"2659":{"34306":2660,"50334":2662,"2070003":0},"2664":{"52424":2665,"2070003":0},"2665":{"16220":2666,"2070003":0},"2700":{"86112":2701,"2070003":0},"2701":{"43054":2702,"2070003":0},"2703":{"52424":2704,"2070003":0},"2704":{"76818":2705,"2070003":0},"2706":{"22602":2707,"2070003":0},"2708":{"54381":2709,"2070003":0},"2710":{"47":2711,"82762":3886,"87219":2713,"2070003":0},"2711":{"82762":2712,"2070003":0},"2713":{"82762":2714,"2070003":0},"2715":{"47":2716,"82762":3887,"87219":2718,"2070003":9372},"2716":{"82762":2717,"2070003":0},"2718":{"82762":2719,"2070003":0},"2720":{"13533":2721,"2070003":0},"2722":{"31208":2723,"2070003":0},"2724":{"52424":2725,"2070003":9447},"2725":{"84809":2726,"2070003":0},"2727":{"53385":2728,"2070003":0},"2729":{"53385":2730,"2070003":0},"2731":{"34899":2732,"2070003":7470},"2732":{"44490":2733,"2070003":0},"2734":{"52424":2735,"2070003":4416},"2735":{"17749":2736,"2070003":0},"2737":{"47":2738,"85618":3945,"87219":2740,"2070003":9628},"2738":{"85618":2739,"2070003":0},"2740":{"85618":2741,"2070003":0},"2742":{"35":2743,"2070003":0},"2743":{"50545":2744,"2070003":0},"2748":{"49377":2749,"67252":3978,"2070003":0},"2749":{"67252":2750,"2070003":0},"2753":{"47":2754,"85618":3984,"87219":2756,"2070003":9957},"2754":{"85618":2755,"2070003":0},"2756":{"85618":2757,"2070003":0},"2758":{"47":2759,"34815":3988,"87219":2761,"2070003":9987},"2759":{"34815":2760,"2070003":0},"2761":{"34815":2762,"2070003":0},"2764":{"47":2765,"6767":4010,"70458":4009,"86566":3246,"87219":2767,"2070003":7662},"2765":{"70458":2766,"2070003":0},"2767":{"70458":2768,"2070003":0},"2769":{"47":2770,"52425":4011,"87219":2772,"2070003":0},"2770":{"52425":2771,"2070003":0},"2772":{"52425":2773,"2070003":0},"2781":{"35":2782,"2070003":0},"2782":{"34235":2783,"65610":2784,"2070003":0},"2790":{"219":2791,"41975":4022,"86336":3386,"2070003":0},"2791":{"29234":2792,"2070003":0},"2793":{"77052":2794,"2070003":0},"2794":{"12665":2795,"65562":2796,"2070003":0},"2797":{"47":2798,"9287":4031,"74497":4032,"87219":2800,"2070003":0},"2798":{"9287":2799,"2070003":0},"2800":{"9287":2801,"2070003":0},"2806":{"12894":2807,"60947":2809,"2070003":10461},"2807":{"5146":2808,"2070003":0},"2809":{"83522":2810,"2070003":0},"2811":{"47":2812,"10558":4049,"87219":2814,"2070003":0},"2812":{"10558":2813,"2070003":0},"2814":{"10558":2815,"2070003":0},"2816":{"52424":2817,"2070003":0},"2817":{"29189":2818,"2070003":0},"2819":{"47":2820,"53385":4052,"87219":2822,"2070003":0},"2820":{"53385":2821,"2070003":0},"2822":{"53385":2823,"2070003":0},"2825":{"40041":3607,"84877":2826,"2070003":0},"2826":{"78040":2827,"2070003":0},"2828":{"38161":2829,"2070003":0},"2829":{"84625":2830,"2070003":0},"2833":{"52676":2834,"2070003":0},"2835":{"7967":4074,"64416":2836,"2070003":8635},"2836":{"38910":2837,"2070003":0},"2838":{"1730":2839,"2070003":0},"2839":{"22602":2840,"2070003":0},"2841":{"19614":2842,"2070003":0},"2843":{"47":2844,"64346":4095,"87219":2846,"2070003":0},"2844":{"64346":2845,"2070003":0},"2846":{"64346":2847,"2070003":0},"2848":{"47":2849,"61841":4104,"86477":4105,"87219":2851,"2070003":7066},"2849":{"61841":2850,"86477":2853,"2070003":0},"2851":{"61841":2852,"86477":2854,"2070003":0},"2855":{"47":2856,"41149":4119,"87219":2858,"2070003":10815},"2856":{"41149":2857,"2070003":0},"2858":{"41149":2859,"2070003":0},"2860":{"46":3271,"47":2861,"49":3270,"197":3272,"61246":4120,"77052":2865,"87219":2863,"2070003":0},"2861":{"61246":2862,"2070003":0},"2863":{"61246":2864,"2070003":0},"2865":{"36208":2866,"2070003":0},"2867":{"47":2868,"33203":4122,"33317":4123,"87219":2870,"2070003":0},"2868":{"33203":2869,"33317":2872,"2070003":0},"2870":{"33203":2871,"33317":2873,"2070003":0},"2874":{"73294":2875,"2070003":0},"2876":{"35":2877,"2070003":0},"2877":{"15207":2878,"2070003":0},"2880":{"3361":2881,"2070003":0},"2881":{"50339":2882,"2070003":0},"2883":{"47":2884,"82762":4143,"87219":2886,"2070003":10907},"2884":{"82762":2885,"2070003":0},"2886":{"82762":2887,"2070003":0},"2888":{"38161":2889,"2070003":0},"2889":{"26499":2890,"2070003":0},"2891":{"79007":2892,"2070003":0},"2893":{"47":2894,"73688":4152,"87219":2896,"2070003":10941},"2894":{"73688":2895,"2070003":0},"2896":{"73688":2897,"2070003":0},"2898":{"47":2899,"85618":4163,"87219":2901,"2070003":0},"2899":{"85618":2900,"2070003":0},"2901":{"85618":2902,"2070003":0},"2903":{"47":2904,"85618":4164,"87219":2906,"2070003":0},"2904":{"85618":2905,"2070003":0},"2906":{"85618":2907,"2070003":0},"2908":{"38161":2909,"2070003":0},"2909":{"30097":2910,"2070003":0},"2913":{"47":2914,"30629":4174,"87219":2916,"2070003":11127},"2914":{"30629":2915,"2070003":0},"2916":{"30629":2917,"2070003":0},"2920":{"47":2921,"82762":4178,"87219":2923,"2070003":0},"2921":{"82762":2922,"2070003":0},"2923":{"82762":2924,"2070003":0},"2925":{"47":2926,"71395":4179,"87219":2928,"2070003":0},"2926":{"71395":2927,"2070003":0},"2928":{"71395":2929,"2070003":0},"2930":{"47":2931,"43689":4180,"87219":2933,"2070003":0},"2931":{"43689":2932,"2070003":0},"2933":{"43689":2934,"2070003":0},"2935":{"47":2936,"44427":4181,"87219":2938,"2070003":0},"2936":{"44427":2937,"2070003":0},"2938":{"44427":2939,"2070003":0},"2940":{"10785":2941,"2070003":0},"2946":{"47":2947,"23509":4189,"87219":2949,"2070003":11211},"2947":{"23509":2948,"2070003":0},"2949":{"23509":2950,"2070003":0},"2955":{"47":2956,"9287":4202,"53668":4203,"87219":2958,"2070003":0},"2956":{"9287":2957,"2070003":0},"2958":{"9287":2959,"2070003":0},"2960":{"79868":2961,"2070003":0},"2962":{"47":2963,"8632":4204,"87219":2965,"2070003":0},"2963":{"8632":2964,"2070003":0},"2965":{"8632":2966,"2070003":0},"2967":{"47":2968,"8632":4205,"87219":2970,"2070003":0},"2968":{"8632":2969,"2070003":0},"2970":{"8632":2971,"2070003":0},"2976":{"47":2977,"7453":4212,"14722":4213,"87219":2979,"2070003":7164},"2977":{"7453":2978,"2070003":0},"2979":{"7453":2980,"2070003":0},"2981":{"219":2982,"2070003":0},"2982":{"29234":2983,"2070003":0},"2985":{"10987":2986,"2070003":0},"2986":{"53017":2987,"2070003":0},"2988":{"5808":3283,"29120":3284,"77052":2989,"86489":3837,"2070003":0},"2989":{"85089":2990,"2070003":0},"2991":{"52424":2992,"69579":4259,"2070003":11655},"2992":{"5808":2993,"2070003":0},"2994":{"47":2995,"43920":4268,"79007":4269,"87219":2997,"2070003":0},"2995":{"43920":2996,"2070003":0},"2997":{"43920":2998,"2070003":0},"2999":{"35":3000,"2070003":0},"3000":{"85148":3001,"2070003":0},"3002":{"47":3003,"8262":4275,"85618":4274,"87219":3005,"2070003":0},"3003":{"85618":3004,"2070003":0},"3005":{"85618":3006,"2070003":0},"3007":{"47":3008,"30629":4278,"87219":3010,"2070003":9513},"3008":{"30629":3009,"2070003":0},"3010":{"30629":3011,"2070003":0},"3012":{"78040":3013,"2070003":0},"3014":{"52424":3015,"2070003":0},"3016":{"52424":3017,"2070003":0},"3018":{"30075":3019,"2070003":10356},"3019":{"48865":3020,"2070003":0},"3021":{"59842":3022,"59846":3023,"2070003":0},"3026":{"52424":3027,"78040":3029,"2070003":0},"3027":{"43603":3028,"2070003":0},"3029":{"43603":3030,"2070003":0},"3031":{"52424":3032,"78040":3034,"2070003":0},"3032":{"43603":3033,"2070003":0},"3034":{"43603":3035,"2070003":0},"3037":{"38161":3038,"2070003":0},"3039":{"82762":3040,"2070003":0},"3041":{"18966":3043,"32791":3042,"2070003":9693},"3044":{"13130":3045,"13132":3046,"2070003":0},"3047":{"2785":3048,"7472":3049,"18966":3050,"28156":3051,"32791":3052,"33233":3053,"44547":3054,"56064":3055,"2070003":10209},"3060":{"82762":3061,"2070003":4352},"3063":{"32791":3064,"2070003":0},"3066":{"32791":3067,"2070003":0},"3069":{"27482":3308,"34433":3070,"71456":3088,"78104":3217,"2070003":0},"3071":{"34433":3072,"2070003":0},"3073":{"9451":4236,"21364":4237,"34430":3074,"57456":3282,"79559":3347,"2070003":0},"3075":{"41435":3076,"2070003":0},"3077":{"65174":3078,"2070003":0},"3084":{"65174":3085,"2070003":0},"3096":{"82762":3097,"2070003":0},"3098":{"23509":3099,"2070003":4349},"3100":{"82762":3101,"2070003":0},"3103":{"63391":3104,"2070003":4369},"3107":{"2627":3108,"82762":3109,"2070003":4639},"3110":{"82762":3111,"2070003":0},"3113":{"82762":3114,"2070003":0},"3115":{"52676":3116,"2070003":0},"3120":{"57259":3121,"2070003":0},"3124":{"42674":3125,"2070003":0},"3126":{"23509":3127,"2070003":0},"3128":{"82762":3129,"2070003":0},"3130":{"1115":3445,"28503":3131,"2070003":0},"3132":{"86087":3133,"2070003":8317},"3134":{"82762":3135,"2070003":0},"3138":{"53385":3139,"2070003":10278},"3140":{"28505":3141,"79364":3142,"2070003":4955},"3143":{"16463":3144,"2070003":4956},"3156":{"52425":3157,"2070003":5089},"3159":{"63014":3160,"2070003":0},"3169":{"52424":3170,"2070003":11216},"3171":{"28503":3172,"2070003":0},"3173":{"30771":3174,"2070003":0},"3175":{"52424":3176,"2070003":11460},"3190":{"23554":3256,"82864":3191,"2070003":0},"3196":{"82762":3197,"2070003":0},"3198":{"29241":3199,"2070003":0},"3200":{"82762":3201,"2070003":6585},"3202":{"82762":3203,"2070003":0},"3207":{"82762":3208,"2070003":0},"3211":{"58113":3212,"74467":3822,"2070003":11354},"3226":{"82762":3227,"2070003":0},"3229":{"82762":3230,"2070003":0},"3231":{"52425":3232,"2070003":0},"3234":{"52676":3235,"2070003":9520},"3236":{"76296":3237,"2070003":0},"3241":{"53385":3242,"2070003":0},"3244":{"52425":3245,"2070003":0},"3254":{"13569":3255,"2070003":5520},"3257":{"13569":3258,"2070003":4383},"3260":{"49460":3261,"2070003":0},"3262":{"366":3752,"3538":3612,"6704":3753,"34882":3754,"64572":3263,"71468":3755,"2070003":0},"3264":{"37550":3265,"2070003":0},"3266":{"30982":3267,"86078":3757,"2070003":0},"3268":{"9991":3269,"27302":4106,"60432":4107,"2070003":10787},"3279":{"82762":3280,"2070003":0},"3286":{"22602":3287,"2070003":11629},"3288":{"6317":3289,"2070003":11659},"3290":{"58113":3291,"2070003":11661},"3292":{"23509":3647,"52676":3293,"2070003":0},"3295":{"78040":3296,"2070003":6209},"3302":{"52424":3303,"2070003":0},"3304":{"27482":3305,"2070003":0},"3306":{"27482":3307,"2070003":0},"3310":{"38161":3311,"2070003":0},"3312":{"41270":3313,"47850":3314,"2070003":0},"3315":{"33485":3316,"2070003":10227},"3317":{"68447":3318,"2070003":0},"3319":{"68447":3320,"2070003":0},"3322":{"68447":3323,"2070003":0},"3324":{"68447":3325,"2070003":0},"3326":{"68447":3327,"2070003":6736},"3334":{"9238":4077,"31040":3747,"34749":3748,"34872":3335,"63644":3749,"2070003":0},"3358":{"5421":3359,"2070003":4751},"3361":{"53385":3362,"2070003":0},"3363":{"53385":3364,"2070003":0},"3366":{"53385":3367,"82762":3368,"2070003":0},"3369":{"53385":3370,"2070003":0},"3371":{"82762":3372,"2070003":0},"3375":{"82762":3376,"2070003":9940},"3377":{"82762":3378,"2070003":0},"3379":{"23509":3380,"2070003":0},"3383":{"23509":3384,"2070003":10285},"3393":{"63420":3394,"2070003":0},"3410":{"6317":3412,"30075":3411,"2070003":0},"3413":{"6317":3415,"30075":3414,"2070003":0},"3425":{"57405":3426,"2070003":0},"3427":{"5808":3428,"2070003":0},"3431":{"69771":3432,"2070003":0},"3443":{"23509":3912,"82762":3444,"2070003":0},"3447":{"2627":3448,"2070003":0},"3449":{"10189":3450,"2070003":0},"3451":{"77377":3452,"2070003":6338},"3454":{"53385":3455,"82762":3456,"2070003":0},"3462":{"82762":3463,"2070003":0},"3464":{"53385":3465,"82762":3466,"2070003":0},"3486":{"82762":3487,"2070003":0},"3488":{"41867":3489,"2070003":0},"3490":{"52424":3491,"2070003":6489},"3495":{"82762":3496,"2070003":0},"3497":{"82762":3498,"2070003":6506},"3505":{"52424":3506,"2070003":6614},"3508":{"53385":3509,"2070003":11118},"3521":{"68216":4331,"68218":4332,"85228":3522,"2070003":0},"3528":{"53385":3529,"82762":3530,"2070003":0},"3534":{"53385":3535,"82762":3536,"2070003":7187},"3539":{"52676":3540,"2070003":0},"3553":{"82762":3554,"2070003":0},"3555":{"22602":3556,"37250":3871,"2070003":4766},"3559":{"19306":3884,"28296":3560,"65791":3885,"2070003":6827},"3561":{"53385":3562,"2070003":0},"3563":{"33203":3564,"33317":3565,"2070003":5439},"3566":{"10006":3567,"23927":3932,"43122":3933,"2070003":0},"3568":{"84740":3569,"2070003":0},"3570":{"12295":3936,"28296":3571,"50651":3572,"2070003":6862},"3574":{"86322":3575,"2070003":8344},"3576":{"43791":3577,"87144":3954,"2070003":9696},"3578":{"22365":3579,"2070003":9728},"3580":{"18181":3581,"2070003":4421},"3585":{"26230":3586,"2070003":0},"3587":{"30000":3724,"59842":3588,"2070003":0},"3593":{"18229":3594,"2070003":0},"3597":{"17749":3598,"2070003":0},"3599":{"40041":3600,"2070003":0},"3601":{"82762":3602,"2070003":0},"3603":{"40041":3604,"2070003":0},"3605":{"53385":3606,"2070003":0},"3614":{"16990":3615,"2070003":5571},"3616":{"63420":3617,"2070003":0},"3622":{"4197":3623,"2070003":0},"3624":{"10006":3625,"2070003":0},"3628":{"24151":3629,"2070003":0},"3631":{"63014":3632,"2070003":0},"3633":{"69107":3634,"2070003":0},"3635":{"73462":3636,"73846":3637,"2070003":0},"3638":{"18898":3639,"2070003":0},"3642":{"40041":3643,"2070003":0},"3645":{"41311":3646,"2070003":9011},"3653":{"82762":3654,"2070003":8244},"3660":{"65732":3661,"2070003":0},"3662":{"6481":3663,"2070003":0},"3667":{"77599":3668,"2070003":0},"3673":{"46023":3674,"2070003":0},"3677":{"23662":3678,"2070003":0},"3681":{"62737":3682,"2070003":6329},"3685":{"53385":3686,"2070003":9684},"3688":{"9320":3689,"2070003":0},"3691":{"5673":3692,"2070003":0},"3694":{"62737":3695,"2070003":4366},"3696":{"62737":3697,"2070003":4368},"3707":{"28244":3708,"2070003":0},"3710":{"86484":3711,"2070003":10239},"3713":{"43041":3714,"2070003":0},"3732":{"68161":3733,"2070003":0},"3738":{"78599":3739,"2070003":0},"3742":{"52705":3743,"2070003":0},"3750":{"83075":3751,"2070003":0},"3765":{"27131":3766,"2070003":0},"3767":{"31431":3768,"2070003":0},"3769":{"31431":3770,"2070003":0},"3771":{"5840":3772,"2070003":7858},"3773":{"30075":3774,"2070003":7879},"3775":{"30075":3776,"2070003":0},"3777":{"9123":3778,"2070003":0},"3784":{"60040":3785,"2070003":0},"3791":{"4569":3792,"2070003":0},"3802":{"5882":3803,"2070003":0},"3806":{"5673":3807,"2070003":0},"3809":{"82762":3810,"2070003":0},"3814":{"45229":3815,"2070003":0},"3824":{"16482":3825,"2070003":0},"3829":{"29246":3830,"2070003":0},"3838":{"1895":3839,"2070003":0},"3840":{"86354":3841,"2070003":0},"3842":{"9320":3843,"2070003":11576},"3859":{"53668":3860,"2070003":11674},"3861":{"78040":3862,"2070003":8169},"3865":{"60753":3866,"2070003":0},"3867":{"22602":3868,"2070003":0},"3869":{"23906":3870,"2070003":8218},"3872":{"23906":3873,"2070003":8219},"3874":{"53101":3875,"2070003":0},"3876":{"6828":3877,"2070003":0},"3878":{"59979":3879,"2070003":0},"3880":{"74091":3881,"2070003":9312},"3888":{"74467":3889,"2070003":0},"3892":{"28752":3893,"2070003":0},"3894":{"56339":3895,"2070003":9414},"3896":{"22365":3897,"22602":3898,"2070003":0},"3899":{"82762":3900,"2070003":8267},"3901":{"82762":3902,"2070003":8268},"3903":{"34641":3904,"2070003":0},"3905":{"82762":3906,"2070003":8271},"3907":{"53385":3908,"2070003":0},"3910":{"52425":3911,"2070003":0},"3913":{"10312":3914,"2070003":0},"3915":{"87144":3916,"2070003":0},"3917":{"27557":3918,"2070003":0},"3921":{"23906":3922,"2070003":9483},"3923":{"61045":3924,"2070003":0},"3925":{"52825":3926,"84763":3927,"2070003":0},"3928":{"63425":3929,"78202":3930,"84345":3931,"2070003":0},"3934":{"52425":3935,"2070003":0},"3937":{"74463":3938,"2070003":9568},"3939":{"19614":3940,"2070003":0},"3941":{"22602":3942,"37250":3943,"62457":3944,"2070003":0},"3946":{"36451":3947,"2070003":6869},"3948":{"42890":3949,"2070003":9655},"3950":{"14722":3951,"2070003":8342},"3952":{"86087":3953,"2070003":0},"3957":{"36451":3958,"39525":3959,"55805":3960,"65773":3961,"68216":4314,"68218":4315,"84802":3962,"86060":3963,"2070003":9707},"3964":{"52676":3965,"2070003":8352},"3966":{"12028":3967,"2070003":0},"3968":{"22602":3969,"50651":3970,"2070003":0},"3971":{"22602":3972,"50651":3973,"2070003":0},"3974":{"79241":3975,"2070003":9836},"3976":{"27557":3977,"2070003":9904},"3979":{"42539":3980,"2070003":0},"3981":{"5404":3982,"2070003":0},"3985":{"22602":3986,"22933":3987,"2070003":0},"3989":{"64447":3990,"70269":3991,"2070003":0},"3996":{"69576":3997,"2070003":0},"3999":{"53385":4000,"2070003":10188},"4001":{"82762":4002,"2070003":10202},"4003":{"28187":4004,"36451":4005,"2070003":10223},"4006":{"40468":4007,"2070003":0},"4020":{"41149":4021,"2070003":0},"4023":{"43629":4024,"2070003":0},"4025":{"50293":4026,"2070003":0},"4027":{"84148":4028,"2070003":0},"4029":{"19640":4030,"2070003":0},"4033":{"69107":4034,"2070003":0},"4035":{"50651":4036,"2070003":4993},"4040":{"77147":4041,"2070003":0},"4042":{"79089":4043,"2070003":10478},"4044":{"8569":4045,"2070003":0},"4046":{"9451":4047,"35045":4048,"2070003":0},"4050":{"10209":4051,"2070003":0},"4053":{"60996":4054,"2070003":7742},"4055":{"40954":4056,"2070003":0},"4057":{"73590":4058,"2070003":0},"4059":{"16167":4060,"2070003":0},"4061":{"84877":4062,"2070003":0},"4063":{"15207":4064,"2070003":0},"4067":{"22365":4068,"2070003":0},"4069":{"8336":4070,"2070003":7034},"4071":{"82762":4072,"2070003":0},"4075":{"40044":4076,"2070003":0},"4078":{"51693":4079,"2070003":8648},"4080":{"43937":4081,"2070003":0},"4082":{"16167":4083,"2070003":0},"4084":{"60032":4085,"2070003":0},"4086":{"22602":4087,"2070003":0},"4088":{"74467":4089,"78732":4090,"78738":4091,"78745":4092,"2070003":0},"4093":{"25660":4094,"2070003":0},"4096":{"6828":4097,"65243":4098,"2070003":5053},"4100":{"71665":4101,"2070003":0},"4102":{"11333":4103,"2070003":0},"4108":{"8692":4109,"2070003":0},"4110":{"29120":4111,"2070003":0},"4112":{"8873":4113,"2070003":0},"4114":{"14722":4115,"2070003":0},"4116":{"51784":4117,"2070003":0},"4124":{"18179":4125,"2070003":0},"4126":{"79868":4127,"2070003":0},"4128":{"18332":4129,"2070003":0},"4130":{"18332":4131,"2070003":0},"4132":{"33203":4133,"33317":4134,"2070003":0},"4135":{"30438":4136,"2070003":0},"4137":{"12295":4138,"2070003":0},"4139":{"9680":4140,"2070003":0},"4141":{"9680":4142,"2070003":0},"4145":{"30097":4146,"40253":4147,"43602":4148,"86341":4149,"2070003":8769},"4150":{"34638":4151,"2070003":0},"4153":{"17033":4154,"2070003":6591},"4155":{"5808":4156,"73707":4157,"2070003":0},"4158":{"18959":4159,"18990":4160,"2070003":0},"4161":{"19610":4162,"2070003":0},"4165":{"77599":4166,"2070003":0},"4167":{"7412":4168,"2070003":0},"4169":{"14722":4170,"2070003":0},"4172":{"2968":4173,"2070003":0},"4175":{"24971":4176,"2070003":0},"4183":{"24253":4184,"2070003":0},"4185":{"8730":4186,"2070003":0},"4192":{"6481":4193,"2070003":0},"4194":{"24665":4195,"24675":4196,"2070003":0},"4197":{"83522":4198,"2070003":0},"4200":{"10987":4201,"2070003":0},"4207":{"53018":4208,"2070003":0},"4209":{"30709":4210,"2070003":0},"4214":{"14722":4215,"2070003":8902},"4216":{"86087":4217,"2070003":11362},"4218":{"17749":4219,"2070003":4398},"4220":{"51723":4221,"2070003":0},"4222":{"53668":4223,"2070003":0},"4225":{"84792":4226,"2070003":0},"4228":{"82762":4229,"2070003":0},"4230":{"52425":4231,"2070003":0},"4232":{"82762":4233,"2070003":11434},"4234":{"1115":4235,"2070003":11441},"4238":{"49203":4239,"2070003":0},"4240":{"19773":4241,"2070003":0},"4242":{"44653":4243,"2070003":0},"4244":{"8920":4245,"2070003":11483},"4246":{"23927":4247,"43122":4248,"2070003":0},"4249":{"5046":4250,"2070003":0},"4251":{"516":4252,"2070003":7202},"4253":{"78040":4254,"2070003":11544},"4255":{"13068":4256,"2070003":0},"4257":{"14722":4258,"2070003":11650},"4260":{"11720":4261,"2070003":0},"4262":{"77363":4263,"2070003":0},"4264":{"27824":4265,"2070003":0},"4266":{"30075":4267,"2070003":0},"4270":{"50375":4271,"2070003":0},"4272":{"78255":4273,"2070003":11678},"4276":{"20149":4277,"2070003":0},"4279":{"78040":4280,"2070003":0},"4282":{"43689":4283,"2070003":0},"4284":{"43689":4285,"2070003":0},"4286":{"43689":4287,"2070003":0},"4288":{"43689":4289,"2070003":0},"4290":{"43689":4291,"2070003":0},"4292":{"43689":4293,"2070003":0},"4295":{"23706":4296,"2070003":9395},"4299":{"68216":4300,"68218":4301,"2070003":0},"4302":{"68216":4303,"68218":4304,"2070003":0},"4305":{"68216":4306,"68218":4307,"2070003":0},"4308":{"68216":4309,"68218":4310,"2070003":10962},"4311":{"68216":4312,"68218":4313,"2070003":0},"4316":{"68216":4317,"68218":4318,"2070003":0},"4319":{"68216":4320,"68218":4321,"2070003":0},"4322":{"68216":4323,"68218":4324,"2070003":0},"4325":{"68216":4326,"68218":4327,"2070003":0},"4328":{"68216":4329,"68218":4330,"2070003":6526},"4333":{"68216":4334,"68218":4335,"2070003":0},"4336":{"68216":4337,"68218":4338,"2070003":0},"4339":{"68216":4340,"68218":4341,"2070003":0},"4342":{"68218":4343,"2070003":0}},{"8":"1000","9":"1000","10":"1000","11":"1000","12":"1000","13":"1000","18":"1000","19":"1000","20":"1000","21":"1000","22":"1000","23":"1000","28":"1000","29":"1000","30":"1000","31":"1000","32":"1000","33":"1000","38":"1000","39":"1000","40":"1000","41":"1000","42":"1000","43":"1000","49":"1000","50":"1000","51":"1000","52":"1000","53":"1000","54":"1000","59":"1000","60":"1000","61":"1000","62":"1000","63":"1000","64":"1000","69":"1000","70":"1000","71":"1000","72":"1000","73":"1000","74":"1000","79":"1000","80":"1000","81":"1000","82":"1000","83":"1000","84":"1000","90":"1000","91":"1000","92":"1000","93":"1000","94":"1000","95":"1000","100":"1000","101":"1000","102":"1000","103":"1000","104":"1000","105":"1000","110":"1000","111":"1000","112":"1000","113":"1000","114":"1000","115":"1000","120":"1000","121":"1000","122":"1000","123":"1000","124":"1000","125":"1000","133":"400","137":"400","143":"400","147":"400","155":"400","159":"400","165":"400","169":"400","177":"400","181":"400","187":"400","191":"400","196":"1000","197":"1000","198":"1000","199":"1000","200":"1000","201":"1000","206":"1000","207":"1000","208":"1000","209":"1000","210":"1000","211":"1000","216":"1000","217":"1000","218":"1000","219":"1000","220":"1000","221":"1000","226":"1000","227":"1000","228":"1000","229":"1000","230":"1000","231":"1000","233":"1000","234":"1000","235":"1000","236":"1000","237":"1000","238":"1000","240":"1000","241":"1000","242":"1000","243":"1000","244":"1000","245":"1000","247":"1000","248":"1000","249":"1000","250":"1000","251":"1000","252":"1000","254":"1000","255":"1000","256":"1000","257":"1000","258":"1000","259":"1000","261":"1000","262":"1000","263":"1000","264":"1000","265":"1000","266":"1000","268":"1000","269":"1000","270":"1000","271":"1000","272":"1000","273":"1000","275":"1000","276":"1000","277":"1000","278":"1000","279":"1000","280":"1000","282":"1000","283":"1000","284":"1000","285":"1000","286":"1000","287":"1000","289":"1000","290":"1000","291":"1000","292":"1000","293":"1000","294":"1000","296":"1000","297":"1000","298":"1000","299":"1000","300":"1000","301":"1000","303":"1000","304":"1000","305":"1000","306":"1000","307":"1000","308":"1000","310":"1000","311":"1000","312":"1000","313":"1000","314":"1000","315":"1000","320":"400","324":"400","327":"400","330":"400","335":"400","339":"400","342":"400","345":"400","350":"400","354":"400","357":"400","360":"400","367":"625","369":"625","373":"625","375":"625","381":"625","383":"625","387":"625","389":"625","392":"1000","393":"1000","394":"1000","395":"1000","396":"1000","397":"1000","398":"1000","399":"1000","402":"1000","403":"1000","404":"1000","405":"1000","406":"1000","407":"1000","408":"1000","409":"1000","412":"1000","413":"1000","414":"1000","415":"1000","416":"1000","417":"1000","418":"1000","419":"1000","425":"1000","426":"1000","427":"1000","428":"1000","429":"1000","430":"1000","431":"1000","432":"1000","436":"1000","437":"1000","438":"1000","439":"1000","440":"1000","441":"1000","442":"1000","443":"1000","447":"1000","448":"1000","449":"1000","450":"1000","451":"1000","452":"1000","453":"1000","454":"1000","456":"1000","457":"1000","458":"1000","459":"1000","460":"1000","461":"1000","463":"1000","464":"1000","465":"1000","466":"1000","467":"1000","468":"1000","470":"1000","471":"1000","472":"1000","473":"1000","474":"1000","475":"1000","477":"1000","478":"1000","479":"1000","480":"1000","481":"1000","482":"1000","485":"400","488":"400","491":"400","496":"625","498":"625","502":"625","504":"625","507":"625","509":"625","510":"625","511":"625","514":"625","516":"625","517":"625","518":"625","519":"1000","520":"1000","521":"1000","522":"1000","523":"1000","524":"1000","525":"1000","526":"1000","527":"1000","528":"1000","529":"1000","530":"1000","531":"1000","532":"1000","533":"1000","534":"1000","535":"1000","536":"1000","537":"1000","538":"1000","539":"1000","540":"1000","541":"1000","542":"1000","543":"1000","544":"1000","545":"1000","546":"1000","547":"1000","548":"1000","549":"1000","550":"1000","551":"1000","552":"1000","553":"1000","554":"1000","555":"1000","556":"1000","557":"1000","558":"1000","559":"1000","560":"1000","561":"1000","562":"1000","563":"1000","564":"1000","565":"1000","566":"1000","571":"0","576":"875","581":"875","583":"875","587":"875","589":"875","594":"-875","596":"-875","600":"-875","602":"-875","607":"-875","612":"625","614":"625","618":"625","620":"625","625":"625","627":"625","631":"625","633":"625","638":"625","640":"625","644":"625","646":"625","650":"625","652":"625","656":"625","658":"625","661":"625","663":"625","664":"625","665":"625","666":"625","667":"625","672":"625","674":"625","678":"625","680":"625","685":"625","687":"625","691":"625","693":"625","698":"-687","700":"-687","704":"-687","706":"-687","711":"-563","713":"-563","717":"-563","719":"-563","720":"-563","721":"-563","722":"-563","723":"-563","728":"-625","730":"-625","734":"-625","736":"-625","741":"-625","746":"-563","748":"-563","752":"-563","754":"-563","759":"500","761":"500","765":"500","767":"500","772":"500","777":"500","779":"500","783":"500","785":"500","790":"500","792":"500","796":"500","798":"500","803":"500","805":"500","809":"500","811":"500","816":"500","818":"500","822":"500","824":"500","827":"500","829":"500","832":"500","834":"500","837":"-500","839":"-500","842":"-500","844":"-500","849":"-500","851":"-500","855":"-500","857":"-500","862":"-500","864":"-500","868":"-500","870":"-500","873":"-500","875":"-500","878":"-500","880":"-500","885":"-500","887":"-500","891":"-500","893":"-500","898":"-500","900":"-500","904":"-500","906":"-500","910":"-1000","914":"-1000","918":"-1000","922":"-1000","923":"-1000","924":"-1000","928":"1000","932":"1000","936":"1000","937":"1000","941":"1000","945":"1000","946":"1000","947":"1000","950":"1000","951":"1000","952":"1000","955":"1000","956":"1000","957":"1000","960":"1000","961":"1000","962":"1000","965":"1000","966":"1000","967":"1000","970":"1000","971":"1000","972":"1000","976":"800","980":"250","983":"-500","987":"-250","990":"-250","994":"-250","997":"875","999":"875","1000":"875","1001":"875","1004":"-875","1006":"-875","1007":"-875","1008":"-875","1012":"-1000","1016":"-750","1020":"-750","1024":"-750","1028":"-750","1032":"-750","1036":"-750","1040":"-750","1043":"625","1045":"625","1046":"625","1047":"625","1050":"625","1052":"625","1053":"625","1054":"625","1057":"625","1059":"625","1060":"625","1061":"625","1064":"625","1066":"625","1067":"625","1068":"625","1069":"625","1073":"-625","1074":"-625","1075":"-625","1077":"-625","1078":"-625","1079":"-625","1082":"-625","1083":"-625","1084":"-625","1086":"-625","1087":"-625","1088":"-625","1092":"0","1096":"0","1100":"0","1104":"0","1108":"0","1111":"625","1113":"625","1114":"625","1115":"625","1118":"625","1120":"625","1121":"625","1122":"625","1126":"-625","1130":"-625","1133":"-625","1137":"-625","1140":"-625","1144":"-625","1147":"-687","1149":"-687","1150":"-687","1151":"-687","1155":"-625","1159":"-625","1162":"-563","1164":"-563","1165":"-563","1166":"-563","1167":"-563","1168":"-563","1169":"-563","1170":"-563","1173":"-625","1175":"-625","1176":"-625","1177":"-625","1181":"-625","1184":"-563","1186":"-563","1187":"-563","1188":"-563","1191":"-625","1194":"500","1196":"500","1197":"500","1198":"500","1202":"500","1206":"500","1209":"500","1210":"500","1213":"500","1215":"500","1216":"500","1217":"500","1221":"500","1224":"500","1226":"500","1227":"500","1228":"500","1231":"500","1233":"500","1234":"500","1235":"500","1237":"500","1240":"500","1242":"500","1243":"500","1244":"500","1247":"500","1249":"500","1250":"500","1251":"500","1255":"-500","1259":"-500","1262":"-500","1265":"-500","1269":"-500","1273":"-500","1276":"-500","1280":"-500","1283":"-500","1285":"-500","1286":"-500","1287":"-500","1290":"-500","1292":"-500","1293":"-500","1294":"-500","1298":"-500","1299":"-500","1302":"-500","1306":"-500","1309":"-500","1311":"-500","1312":"-500","1313":"-500","1316":"-500","1318":"-500","1319":"-500","1320":"-500","1322":"-500","1326":"-500","1328":"-500","1332":"-500","1336":"-500","1339":"-500","1342":"-500","1344":"-500","1345":"-500","1346":"-500","1350":"-500","1353":"-500","1357":"-500","1360":"-500","1363":"-500","1365":"-500","1366":"-500","1367":"-500","1370":"-400","1373":"-400","1376":"-400","1379":"-400","1383":"400","1384":"400","1388":"-400","1391":"-800","1392":"-800","1393":"-800","1394":"-800","1395":"-800","1396":"-800","1397":"-800","1400":"500","1402":"-800","1403":"0","1406":"0","1407":"800","1409":"400","1411":"400","1413":"400","1416":"400","1419":"0","1422":"688","1424":"688","1427":"556","1430":"750","1432":"750","1435":"500","1437":"500","1440":"250","1443":"750","1446":"875","1449":"750","1451":"750","1452":"625","1453":"625","1454":"875","1455":"875","1456":"625","1457":"625","1460":"250","1461":"375","1462":"375","1464":"-250","1467":"-500","1469":"-500","1472":"-250","1474":"-250","1477":"-750","1479":"-750","1480":"-750","1481":"-750","1484":"-250","1486":"-250","1488":"-500","1490":"-500","1491":"-250","1492":"-250","1495":"-250","1497":"-250","1498":"-250","1499":"-250","1500":"-250","1501":"-250","1502":"-250","1503":"-250","1504":"-1000","1505":"-1000","1506":"-1000","1507":"-1000","1508":"-250","1509":"-250","1510":"-250","1511":"-250","1512":"-250","1513":"-250","1516":"-375","1518":"-375","1521":"1000","1523":"1000","1526":"1000","1528":"1000","1531":"875","1533":"875","1535":"875","1538":"1000","1540":"1000","1543":"875","1545":"875","1546":"875","1547":"875","1550":"1000","1552":"1000","1555":"875","1557":"875","1560":"875","1562":"875","1565":"875","1567":"875","1570":"875","1571":"875","1574":"1000","1576":"1000","1579":"875","1581":"875","1584":"875","1586":"875","1587":"1000","1588":"1000","1591":"875","1593":"875","1594":"875","1595":"875","1598":"875","1600":"875","1601":"875","1602":"875","1603":"875","1604":"875","1605":"1000","1606":"1000","1607":"875","1608":"875","1609":"875","1610":"875","1611":"875","1614":"875","1616":"875","1619":"-1000","1621":"-1000","1624":"-1000","1625":"-875","1626":"-875","1627":"-875","1630":"-1000","1632":"-1000","1635":"-1000","1638":"-1000","1640":"-1000","1643":"-1000","1645":"-1000","1648":"-1000","1649":"-1000","1650":"-1000","1651":"-1000","1652":"-1000","1655":"-688","1657":"-688","1658":"-875","1661":"-875","1663":"-875","1666":"-875","1668":"-875","1669":"-875","1670":"-875","1671":"-875","1672":"-875","1675":"-1000","1677":"-1000","1680":"-1000","1682":"-1000","1685":"0","1688":"-1000","1690":"-1000","1693":"750","1695":"750","1697":"750","1699":"750","1702":"750","1704":"750","1707":"750","1709":"750","1710":"750","1711":"750","1712":"750","1713":"750","1715":"750","1718":"750","1720":"750","1722":"-750","1724":"-750","1726":"-750","1728":"-750","1730":"-750","1733":"50","1736":"50","1738":"750","1740":"750","1743":"750","1745":"750","1748":"750","1750":"750","1753":"750","1755":"750","1757":"750","1758":"750","1759":"750","1760":"750","1761":"750","1762":"750","1763":"750","1764":"750","1765":"750","1766":"750","1767":"750","1768":"750","1769":"750","1770":"750","1771":"750","1773":"-750","1775":"-750","1778":"-750","1780":"-750","1783":"-750","1786":"-750","1788":"-750","1789":"-750","1790":"-750","1793":"-750","1795":"-750","1796":"-750","1797":"-750","1800":"-750","1802":"-750","1804":"-750","1806":"-750","1807":"-750","1808":"-750","1809":"-750","1810":"-750","1811":"-750","1812":"-750","1813":"-750","1814":"-750","1817":"750","1818":"750","1819":"750","1820":"750","1821":"750","1822":"750","1823":"750","1824":"750","1825":"750","1826":"750","1827":"750","1828":"750","1829":"750","1830":"750","1831":"750","1833":"-750","1835":"-750","1838":"-750","1840":"-750","1843":"-750","1845":"-750","1848":"-750","1851":"-750","1853":"-750","1856":"-750","1857":"-750","1858":"-750","1859":"-750","1860":"-750","1861":"-750","1862":"-750","1865":"-750","1867":"-750","1870":"-750","1873":"-750","1875":"-750","1878":"-750","1880":"-750","1883":"625","1885":"625","1886":"625","1887":"625","1888":"625","1889":"625","1890":"625","1891":"625","1892":"625","1893":"625","1895":"625","1898":"625","1900":"625","1903":"625","1905":"625","1908":"625","1910":"625","1911":"625","1912":"625","1913":"625","1916":"625","1918":"625","1921":"625","1923":"625","1926":"625","1929":"625","1931":"625","1932":"625","1935":"625","1937":"625","1940":"625","1942":"625","1943":"625","1944":"583","1945":"583","1946":"625","1947":"625","1950":"625","1952":"625","1953":"625","1954":"625","1955":"625","1956":"625","1957":"625","1958":"625","1961":"625","1963":"625","1964":"625","1965":"625","1966":"625","1967":"625","1969":"-625","1971":"-625","1973":"-625","1975":"-625","1977":"-625","1979":"-625","1981":"-625","1983":"-625","1985":"-625","1987":"-625","1989":"-625","1991":"-625","1993":"-625","1995":"-625","1997":"-625","1999":"-625","2001":"-625","2003":"-625","2005":"-625","2007":"-625","2008":"-625","2009":"-625","2010":"-625","2011":"-625","2012":"-625","2013":"-625","2015":"625","2018":"0","2020":"-100","2021":"625","2024":"625","2026":"625","2029":"625","2031":"625","2034":"625","2036":"625","2039":"625","2041":"625","2044":"625","2046":"625","2049":"625","2051":"625","2053":"625","2055":"625","2058":"625","2060":"625","2063":"625","2066":"625","2068":"625","2071":"625","2073":"625","2076":"625","2078":"625","2079":"625","2080":"625","2081":"625","2082":"625","2083":"625","2084":"625","2085":"625","2086":"625","2087":"625","2088":"625","2089":"625","2090":"625","2091":"625","2092":"625","2093":"625","2094":"625","2095":"625","2096":"625","2099":"625","2102":"625","2104":"625","2107":"625","2109":"625","2112":"625","2114":"625","2117":"625","2119":"625","2122":"625","2124":"625","2125":"625","2126":"625","2127":"625","2128":"625","2129":"625","2130":"625","2131":"625","2134":"563","2135":"563","2136":"563","2139":"563","2141":"563","2144":"625","2146":"625","2149":"625","2151":"625","2154":"625","2156":"625","2157":"625","2158":"625","2159":"625","2160":"625","2161":"625","2162":"625","2163":"688","2164":"688","2165":"563","2166":"563","2167":"625","2168":"625","2169":"563","2170":"563","2171":"625","2172":"625","2173":"625","2174":"625","2175":"625","2176":"625","2177":"625","2180":"-625","2182":"-625","2185":"-625","2187":"-625","2189":"-625","2191":"-625","2194":"-625","2196":"-625","2199":"-625","2200":"-625","2202":"-625","2204":"-625","2206":"-625","2209":"-625","2211":"-625","2212":"-687","2213":"-563","2214":"-563","2215":"-625","2218":"-625","2220":"-625","2222":"-625","2224":"-625","2225":"-625","2226":"-625","2229":"-625","2231":"-625","2232":"-625","2233":"-625","2236":"-625","2238":"-625","2239":"-63","2240":"-63","2243":"-625","2246":"-625","2248":"-625","2249":"-563","2250":"-563","2251":"-625","2252":"-625","2255":"-625","2256":"-625","2257":"-563","2260":"-625","2263":"-625","2265":"-625","2268":"-625","2270":"-625","2273":"-625","2275":"-625","2277":"-625","2280":"-625","2283":"-625","2285":"-625","2286":"500","2287":"500","2288":"500","2289":"500","2292":"500","2294":"500","2295":"500","2298":"500","2300":"500","2303":"500","2306":"-200","2309":"-200","2312":"-200","2315":"-200","2318":"500","2320":"500","2323":"500","2325":"500","2328":"500","2330":"500","2333":"500","2335":"500","2338":"500","2340":"500","2342":"500","2343":"500","2344":"500","2345":"500","2348":"500","2350":"500","2351":"500","2352":"500","2354":"500","2357":"500","2359":"500","2362":"500","2364":"500","2365":"500","2366":"500","2369":"500","2372":"500","2374":"500","2376":"500","2379":"500","2381":"500","2382":"500","2383":"500","2386":"500","2388":"500","2389":"500","2390":"500","2392":"500","2394":"500","2397":"500","2399":"500","2402":"500","2404":"500","2405":"500","2406":"500","2407":"500","2408":"500","2409":"500","2410":"500","2411":"500","2412":"500","2414":"500","2417":"500","2419":"500","2420":"500","2421":"500","2422":"500","2423":"500","2425":"500","2428":"500","2430":"500","2433":"500","2435":"500","2438":"500","2440":"500","2441":"500","2442":"500","2443":"500","2444":"500","2445":"500","2446":"500","2447":"500","2448":"500","2451":"500","2453":"500","2454":"500","2455":"500","2456":"500","2459":"500","2461":"500","2463":"500","2465":"500","2468":"500","2470":"500","2473":"500","2475":"500","2476":"500","2477":"500","2480":"500","2482":"500","2483":"500","2484":"500","2487":"500","2489":"500","2492":"500","2494":"500","2496":"500","2498":"500","2501":"500","2503":"500","2505":"500","2507":"500","2508":"500","2509":"500","2510":"500","2511":"500","2514":"500","2516":"500","2519":"500","2521":"500","2524":"500","2526":"500","2527":"500","2528":"500","2531":"500","2533":"500","2535":"500","2538":"500","2540":"500","2543":"500","2545":"500","2546":"500","2547":"500","2550":"-750","2552":"-750","2555":"-750","2557":"-750","2560":"500","2562":"500","2563":"500","2564":"500","2565":"500","2566":"500","2567":"500","2568":"500","2569":"500","2570":"500","2571":"500","2572":"500","2573":"500","2574":"500","2575":"500","2576":"500","2579":"500","2581":"500","2584":"500","2586":"500","2587":"500","2588":"500","2589":"500","2590":"500","2591":"500","2592":"500","2595":"500","2597":"500","2600":"500","2602":"500","2605":"500","2607":"500","2609":"500","2611":"500","2614":"500","2616":"500","2619":"500","2621":"500","2624":"500","2626":"500","2629":"500","2631":"500","2632":"500","2633":"500","2634":"500","2635":"500","2637":"500","2639":"500","2641":"500","2642":"500","2643":"500","2644":"500","2645":"500","2648":"500","2650":"500","2651":"500","2654":"500","2656":"500","2658":"500","2660":"500","2661":"500","2662":"500","2663":"500","2666":"500","2667":"500","2668":"500","2669":"500","2670":"500","2671":"500","2672":"500","2673":"500","2674":"500","2675":"500","2676":"500","2677":"500","2678":"500","2679":"500","2680":"500","2681":"500","2682":"500","2683":"500","2684":"500","2685":"500","2686":"500","2687":"500","2688":"500","2689":"500","2690":"500","2691":"500","2692":"500","2693":"500","2694":"500","2695":"500","2696":"500","2697":"500","2698":"500","2699":"500","2702":"-500","2705":"-500","2707":"-500","2709":"-500","2712":"-500","2714":"-500","2717":"-500","2719":"-500","2721":"-500","2723":"-500","2726":"-500","2728":"-500","2730":"-500","2733":"-500","2736":"-500","2739":"-500","2741":"-500","2744":"-500","2745":"-500","2746":"-500","2747":"-500","2750":"-500","2751":"-500","2752":"-500","2755":"-500","2757":"-500","2760":"-500","2762":"-500","2763":"-500","2766":"-500","2768":"-500","2771":"-500","2773":"-500","2774":"-500","2775":"-500","2776":"-500","2777":"-500","2778":"-500","2779":"-500","2780":"-500","2783":"-500","2784":"-500","2785":"-500","2786":"-500","2787":"-500","2788":"-500","2789":"-500","2792":"-500","2795":"-500","2796":"-500","2799":"-500","2801":"-500","2802":"-500","2803":"-500","2804":"-500","2805":"-500","2808":"-500","2810":"-500","2813":"-500","2815":"-500","2818":"-500","2821":"-500","2823":"-500","2824":"-500","2827":"-500","2830":"-500","2831":"-500","2832":"-500","2834":"-500","2837":"-500","2840":"-500","2842":"-500","2845":"-500","2847":"-500","2850":"-500","2852":"-500","2853":"-500","2854":"-500","2857":"-500","2859":"-500","2862":"-500","2864":"-500","2866":"-500","2869":"-500","2871":"-500","2872":"-500","2873":"-500","2875":"-500","2878":"-500","2879":"-500","2882":"-500","2885":"-500","2887":"-500","2890":"-500","2892":"-500","2895":"-500","2897":"-500","2900":"-500","2902":"-500","2905":"-500","2907":"-500","2910":"-500","2911":"-500","2912":"-500","2915":"-500","2917":"-500","2918":"-500","2919":"-500","2922":"-500","2924":"-500","2927":"-500","2929":"-500","2932":"-500","2934":"-500","2937":"-500","2939":"-500","2941":"-500","2942":"-500","2943":"-500","2944":"-500","2945":"-500","2948":"-500","2950":"-500","2951":"-500","2952":"-500","2953":"-500","2954":"-500","2957":"-500","2959":"-500","2961":"-500","2964":"-500","2966":"-500","2969":"-500","2971":"-500","2972":"-500","2973":"-500","2974":"-500","2975":"-500","2978":"-500","2980":"-500","2983":"-500","2984":"-500","2987":"-500","2990":"-500","2993":"-500","2996":"-500","2998":"-500","3001":"-500","3004":"-500","3006":"-500","3009":"-400","3011":"-400","3013":"-50","3015":"-400","3017":"-400","3020":"-100","3022":"400","3023":"400","3024":"400","3025":"400","3028":"-400","3030":"-400","3033":"-400","3035":"-400","3036":"-600","3038":"-400","3040":"-600","3042":"750","3043":"750","3045":"600","3046":"600","3048":"800","3049":"800","3050":"800","3051":"800","3052":"800","3053":"800","3054":"800","3055":"800","3056":"-600","3057":"-600","3058":"-400","3059":"-400","3061":"750","3062":"0","3064":"0","3065":"0","3067":"0","3068":"0","3070":"800","3072":"800","3074":"850","3076":"656","3078":"0","3079":"0","3080":"0","3081":"0","3082":"0","3083":"0","3085":"0","3086":"0","3087":"688","3088":"556","3089":"556","3090":"556","3091":"556","3092":"556","3093":"556","3094":"556","3095":"-350","3097":"625","3099":"250","3101":"1000","3102":"750","3104":"375","3105":"250","3106":"500","3108":"500","3109":"500","3111":"625","3112":"750","3114":"250","3116":"250","3117":"625","3118":"875","3119":"625","3121":"250","3122":"375","3123":"-375","3125":"-875","3127":"-875","3129":"-375","3131":"-250","3133":"-625","3135":"-250","3136":"-625","3137":"-500","3139":"-437","3141":"-1000","3142":"-1000","3144":"-1000","3145":"-250","3146":"-750","3147":"-750","3148":"-250","3149":"-375","3150":"-312","3151":"-500","3152":"-250","3153":"-250","3154":"-250","3155":"-500","3157":"-750","3158":"-375","3160":"-750","3161":"-250","3162":"-250","3163":"-1000","3164":"-1000","3165":"-250","3166":"-250","3167":"-250","3168":"-375","3170":"-250","3172":"-250","3174":"-375","3176":"-250","3177":"-375","3178":"1000","3179":"1000","3180":"875","3181":"1000","3182":"875","3183":"875","3184":"875","3185":"1000","3186":"1000","3187":"1000","3188":"1000","3189":"875","3191":"1000","3192":"1000","3193":"875","3194":"875","3195":"875","3197":"875","3199":"875","3201":"1000","3203":"1000","3204":"1000","3205":"875","3206":"875","3208":"875","3209":"875","3210":"875","3212":"875","3213":"875","3214":"1000","3215":"875","3216":"875","3217":"1000","3218":"875","3219":"875","3220":"875","3221":"1000","3222":"875","3223":"875","3224":"875","3225":"875","3227":"-875","3228":"-875","3230":"-875","3232":"-1000","3233":"-1000","3235":"-875","3237":"-875","3238":"-875","3239":"-1000","3240":"-1000","3242":"-875","3243":"-1000","3245":"-1000","3246":"-875","3247":"-1000","3248":"-875","3249":"-1000","3250":"-1000","3251":"-1000","3252":"-1000","3253":"-1000","3255":"-1000","3256":"-875","3258":"-1000","3259":"-688","3261":"-1000","3263":"-875","3265":"-875","3267":"-1000","3269":"-875","3270":"-1000","3271":"-1000","3272":"-1000","3273":"-875","3274":"-875","3275":"-875","3276":"-875","3277":"-875","3278":"-1000","3280":"-875","3281":"-875","3282":"-1000","3283":"-1000","3284":"-1000","3285":"-1000","3287":"-875","3289":"-1000","3291":"-1000","3293":"-1000","3294":"-1000","3296":"750","3297":"750","3298":"750","3299":"750","3300":"750","3301":"750","3303":"750","3305":"750","3307":"750","3308":"750","3309":"750","3311":"750","3313":"750","3314":"750","3316":"750","3318":"750","3320":"750","3321":"750","3323":"750","3325":"750","3327":"750","3328":"750","3329":"750","3330":"750","3331":"750","3332":"750","3333":"750","3335":"750","3336":"750","3337":"750","3338":"-750","3339":"-750","3340":"-750","3341":"-750","3342":"-750","3343":"50","3344":"50","3345":"750","3346":"750","3347":"750","3348":"750","3349":"750","3350":"750","3351":"750","3352":"750","3353":"750","3354":"750","3355":"750","3356":"750","3357":"750","3359":"-750","3360":"-750","3362":"-750","3364":"-750","3365":"-750","3367":"-750","3368":"-750","3370":"-750","3372":"-750","3373":"-750","3374":"-750","3376":"-750","3378":"-750","3380":"-750","3381":"-750","3382":"-750","3384":"-750","3385":"-750","3386":"-750","3387":"-750","3388":"-750","3389":"-750","3390":"-750","3391":"-750","3392":"-750","3394":"-750","3395":"750","3396":"750","3397":"750","3398":"750","3399":"750","3400":"750","3401":"750","3402":"750","3403":"750","3404":"750","3405":"750","3406":"750","3407":"750","3408":"750","3409":"750","3411":"-750","3412":"-750","3414":"-750","3415":"-750","3416":"-750","3417":"-750","3418":"-750","3419":"-750","3420":"-750","3421":"-750","3422":"-750","3423":"-750","3424":"-750","3426":"-750","3428":"-750","3429":"-750","3430":"-750","3432":"625","3433":"625","3434":"625","3435":"625","3436":"625","3437":"625","3438":"625","3439":"625","3440":"625","3441":"625","3442":"625","3444":"563","3445":"625","3446":"625","3448":"625","3450":"625","3452":"625","3453":"625","3455":"625","3456":"625","3457":"625","3458":"625","3459":"625","3460":"625","3461":"625","3463":"625","3465":"625","3466":"625","3467":"583","3468":"625","3469":"-583","3470":"625","3471":"625","3472":"625","3473":"625","3474":"625","3475":"625","3476":"625","3477":"625","3478":"625","3479":"625","3480":"625","3481":"625","3482":"-625","3483":"-625","3484":"-625","3485":"-625","3487":"625","3489":"0","3491":"0","3492":"0","3493":"625","3494":"625","3496":"625","3498":"625","3499":"625","3500":"625","3501":"625","3502":"625","3503":"625","3504":"625","3506":"625","3507":"625","3509":"625","3510":"625","3511":"625","3512":"625","3513":"625","3514":"625","3515":"625","3516":"625","3517":"625","3518":"625","3519":"625","3520":"625","3522":"625","3523":"625","3524":"625","3525":"625","3526":"625","3527":"625","3529":"625","3530":"625","3531":"625","3532":"625","3533":"625","3535":"625","3536":"625","3537":"563","3538":"625","3540":"625","3541":"625","3542":"625","3543":"625","3544":"625","3545":"625","3546":"688","3547":"563","3548":"625","3549":"563","3550":"625","3551":"625","3552":"625","3554":"625","3556":"-625","3557":"-625","3558":"-625","3560":"-625","3562":"-625","3564":"-625","3565":"-625","3567":"-625","3569":"-625","3571":"-625","3572":"-625","3573":"-625","3575":"-625","3577":"-625","3579":"-625","3581":"-625","3582":"-625","3583":"-625","3584":"-625","3586":"-625","3588":"-625","3589":"-625","3590":"-625","3591":"-625","3592":"-625","3594":"-625","3595":"-625","3596":"-625","3598":"-625","3600":"-625","3602":"-625","3604":"-625","3606":"-625","3607":"-625","3608":"-625","3609":"-625","3610":"-63","3611":"-625","3612":"-625","3613":"-625","3615":"-625","3617":"-625","3618":"-563","3619":"-625","3620":"-625","3621":"-625","3623":"-625","3625":"-625","3626":"-625","3627":"-625","3629":"-625","3630":"-625","3632":"-625","3634":"-625","3636":"-625","3637":"-625","3639":"-625","3640":"-625","3641":"-625","3643":"-625","3644":"-625","3646":"-625","3647":"-687","3648":"-625","3649":"500","3650":"500","3651":"500","3652":"500","3654":"500","3655":"500","3656":"-200","3657":"-200","3658":"-200","3659":"-200","3661":"500","3663":"500","3664":"500","3665":"500","3666":"500","3668":"500","3669":"500","3670":"500","3671":"500","3672":"500","3674":"500","3675":"500","3676":"500","3678":"500","3679":"500","3680":"500","3682":"500","3683":"500","3684":"500","3686":"500","3687":"500","3689":"500","3690":"500","3692":"500","3693":"500","3695":"500","3697":"500","3698":"500","3699":"500","3700":"500","3701":"500","3702":"500","3703":"500","3704":"500","3705":"500","3706":"500","3708":"500","3709":"500","3711":"500","3712":"500","3714":"500","3715":"500","3716":"500","3717":"500","3718":"500","3719":"500","3720":"500","3721":"500","3722":"500","3723":"500","3724":"500","3725":"500","3726":"500","3727":"500","3728":"500","3729":"500","3730":"500","3731":"500","3733":"500","3734":"500","3735":"500","3736":"500","3737":"500","3739":"500","3740":"500","3741":"500","3743":"500","3744":"500","3745":"500","3746":"500","3747":"500","3748":"500","3749":"500","3751":"500","3752":"500","3753":"500","3754":"500","3755":"500","3756":"500","3757":"500","3758":"500","3759":"500","3760":"500","3761":"500","3762":"500","3763":"500","3764":"500","3766":"500","3768":"500","3770":"500","3772":"500","3774":"500","3776":"500","3778":"500","3779":"500","3780":"500","3781":"500","3782":"500","3783":"500","3785":"500","3786":"500","3787":"500","3788":"-750","3789":"-750","3790":"500","3792":"500","3793":"500","3794":"500","3795":"500","3796":"500","3797":"500","3798":"500","3799":"500","3800":"500","3801":"500","3803":"500","3804":"500","3805":"500","3807":"500","3808":"500","3810":"500","3811":"500","3812":"500","3813":"500","3815":"500","3816":"500","3817":"500","3818":"500","3819":"500","3820":"500","3821":"500","3822":"500","3823":"500","3825":"500","3826":"500","3827":"500","3828":"500","3830":"500","3831":"500","3832":"500","3833":"500","3834":"500","3835":"500","3836":"500","3837":"500","3839":"500","3841":"500","3843":"500","3844":"500","3845":"500","3846":"500","3847":"500","3848":"500","3849":"500","3850":"500","3851":"500","3852":"500","3853":"500","3854":"500","3855":"500","3856":"500","3857":"500","3858":"500","3860":"500","3862":"500","3863":"500","3864":"500","3866":"-500","3868":"-500","3870":"-500","3871":"-500","3873":"-500","3875":"-500","3877":"-500","3879":"-500","3881":"-500","3882":"-500","3883":"-500","3884":"-500","3885":"-500","3886":"-500","3887":"-500","3889":"-500","3890":"-500","3891":"-500","3893":"-500","3895":"-500","3897":"-500","3898":"-500","3900":"-500","3902":"-500","3904":"-500","3906":"-500","3908":"-500","3909":"-500","3911":"-500","3912":"-500","3914":"-500","3916":"-500","3918":"-500","3919":"-500","3920":"-500","3922":"-500","3924":"-500","3926":"-500","3927":"-500","3929":"-500","3930":"-500","3931":"-500","3932":"-500","3933":"-500","3935":"-500","3936":"-500","3938":"-500","3940":"-500","3942":"-500","3943":"-500","3944":"-500","3945":"-500","3947":"-500","3949":"-500","3951":"-500","3953":"-500","3954":"-500","3955":"-500","3956":"-500","3958":"-500","3959":"-500","3960":"-500","3961":"-500","3962":"-500","3963":"-500","3965":"-500","3967":"-500","3969":"-500","3970":"-500","3972":"-500","3973":"-500","3975":"-500","3977":"-500","3978":"-500","3980":"-500","3982":"-500","3983":"-500","3984":"-500","3986":"-500","3987":"-500","3988":"-500","3990":"-500","3991":"-500","3992":"-500","3993":"-500","3994":"-500","3995":"-500","3997":"-500","3998":"-500","4000":"-500","4002":"-500","4004":"-500","4005":"-500","4007":"-500","4008":"-500","4009":"-500","4010":"-500","4011":"-500","4012":"-500","4013":"-500","4014":"-500","4015":"-500","4016":"-500","4017":"-500","4018":"-500","4019":"-500","4021":"-500","4022":"-500","4024":"-500","4026":"-500","4028":"-500","4030":"-500","4031":"-500","4032":"-500","4034":"-500","4036":"-500","4037":"-500","4038":"-500","4039":"-500","4041":"-500","4043":"-500","4045":"-500","4047":"-500","4048":"-500","4049":"-500","4051":"-500","4052":"-500","4054":"-500","4056":"-500","4058":"-500","4060":"-500","4062":"-500","4064":"-500","4065":"-500","4066":"-500","4068":"-500","4070":"-500","4072":"-500","4073":"-500","4074":"-500","4076":"-500","4077":"-500","4079":"-500","4081":"-500","4083":"-500","4085":"-500","4087":"-500","4089":"-500","4090":"-500","4091":"-500","4092":"-500","4094":"-500","4095":"-500","4097":"-500","4098":"-500","4099":"-500","4101":"-500","4103":"-500","4104":"-500","4105":"-500","4106":"-500","4107":"-500","4109":"-500","4111":"-500","4113":"-500","4115":"-500","4117":"-500","4118":"-500","4119":"-500","4120":"-500","4121":"-500","4122":"-500","4123":"-500","4125":"-500","4127":"-500","4129":"-500","4131":"-500","4133":"-500","4134":"-500","4136":"-500","4138":"-500","4140":"-500","4142":"-500","4143":"-500","4144":"-500","4146":"-500","4147":"-500","4148":"-500","4149":"-500","4151":"-500","4152":"-500","4154":"-500","4156":"-500","4157":"-500","4159":"-500","4160":"-500","4162":"-500","4163":"-500","4164":"-500","4166":"-500","4168":"-500","4170":"-500","4171":"-500","4173":"-500","4174":"-500","4176":"-500","4177":"-500","4178":"-500","4179":"-500","4180":"-500","4181":"-500","4182":"-500","4184":"-500","4186":"-500","4187":"-500","4188":"-500","4189":"-500","4190":"-500","4191":"-500","4193":"-500","4195":"-500","4196":"-500","4198":"-500","4199":"-500","4201":"-500","4202":"-500","4203":"-500","4204":"-500","4205":"-500","4206":"-500","4208":"-500","4210":"-500","4211":"-500","4212":"-500","4213":"-500","4215":"-500","4217":"-500","4219":"-500","4221":"-500","4223":"-500","4224":"-500","4226":"-500","4227":"-500","4229":"-500","4231":"-500","4233":"-500","4235":"-500","4236":"-500","4237":"-500","4239":"-500","4241":"-500","4243":"-500","4245":"-500","4247":"-500","4248":"-500","4250":"-500","4252":"-500","4254":"-500","4256":"-500","4258":"-500","4259":"-500","4261":"-500","4263":"-500","4265":"-500","4267":"-500","4268":"-500","4269":"-500","4271":"-500","4273":"-500","4274":"-500","4275":"-500","4277":"-500","4278":"-400","4280":"-100","4281":"-200","4283":"400","4285":"400","4287":"400","4289":"400","4291":"400","4293":"400","4294":"-400","4296":"-300","4297":"400","4298":"400","4300":"-400","4301":"-400","4303":"-400","4304":"-400","4306":"-400","4307":"-400","4309":"-400","4310":"-400","4312":"-400","4313":"-400","4314":"-400","4315":"-400","4317":"-400","4318":"-400","4320":"-400","4321":"-400","4323":"-400","4324":"-400","4326":"-400","4327":"-400","4329":"-400","4330":"-400","4331":"-400","4332":"-400","4334":"-400","4335":"-400","4337":"-400","4338":"-400","4340":"-400","4341":"-400","4343":"-400","4344":"1000","4345":"438","4346":"594","4347":"354","4348":"469","4349":"297","4350":"438","4351":"438","4352":"650","4353":"550","4354":"375","4355":"250","4356":"500","4357":"875","4358":"563","4359":"656","4360":"250","4361":"292","4362":"688","4363":"475","4364":"750","4365":"325","4366":"725","4367":"325","4368":"813","4369":"313","4370":"344","4371":"542","4372":"750","4373":"875","4374":"583","4375":"776","4376":"750","4377":"750","4378":"625","4379":"250","4380":"531","4381":"563","4382":"563","4383":"370","4384":"825","4385":"307","4386":"281","4387":"438","4388":"750","4389":"339","4390":"333","4391":"518","4392":"527","4393":"500","4394":"719","4395":"250","4396":"375","4397":"281","4398":"304","4399":"375","4400":"391","4401":"438","4402":"500","4403":"631","4404":"-437","4405":"-275","4406":"-250","4407":"-500","4408":"-425","4409":"-687","4410":"-250","4411":"-271","4412":"-375","4413":"-271","4414":"-450","4415":"-354","4416":"-719","4417":"-375","4418":"-400","4419":"-250","4420":"-469","4421":"-313","4422":"-281","4423":"-250","4424":"-250","4425":"-344","4426":"-406","4427":"-750","4428":"-375","4429":"-292","4430":"-500","4431":"-250","4432":"-625","4433":"-300","4434":"-400","4435":"-250","4436":"-250","4437":"-479","4438":"-833","4439":"-687","4440":"-344","4441":"-437","4442":"-750","4443":"-406","4444":"-750","4445":"-375","4446":"-281","4447":"-429","4448":"-250","4449":"-375","4450":"-281","4451":"-312","4452":"-687","4453":"-875","4454":"-875","4455":"-375","4456":"-625","4457":"-750","4458":"-312","4459":"-250","4460":"-531","4461":"-429","4462":"-250","4463":"-281","4464":"-250","4465":"-375","4466":"-333","4467":"-516","4468":"-325","4469":"-375","4470":"-375","4471":"-250","4472":"-750","4473":"-250","4474":"-500","4475":"-281","4476":"-500","4477":"-562","4478":"-1000","4479":"-1000","4480":"-350","4481":"-281","4482":"-500","4483":"-271","4484":"-475","4485":"-469","4486":"-875","4487":"-375","4488":"-437","4489":"-750","4490":"-313","4491":"-400","4492":"1000","4493":"250","4494":"667","4495":"750","4496":"250","4497":"313","4498":"625","4499":"375","4500":"875","4501":"375","4502":"666","4503":"625","4504":"250","4505":"625","4506":"375","4507":"375","4508":"1000","4509":"1000","4510":"688","4511":"500","4512":"750","4513":"250","4514":"250","4515":"375","4516":"375","4517":"375","4518":"500","4519":"375","4520":"500","4521":"500","4522":"875","4523":"688","4524":"938","4525":"1000","4526":"375","4527":"500","4528":"375","4529":"875","4530":"625","4531":"625","4532":"375","4533":"375","4534":"375","4535":"875","4536":"313","4537":"250","4538":"417","4539":"938","4540":"625","4541":"313","4542":"500","4543":"375","4544":"292","4545":"375","4546":"625","4547":"625","4548":"625","4549":"875","4550":"500","4551":"375","4552":"625","4553":"500","4554":"250","4555":"875","4556":"438","4557":"625","4558":"250","4559":"250","4560":"292","4561":"1000","4562":"750","4563":"313","4564":"1000","4565":"375","4566":"375","4567":"250","4568":"375","4569":"875","4570":"250","4571":"458","4572":"625","4573":"375","4574":"438","4575":"375","4576":"500","4577":"875","4578":"500","4579":"500","4580":"375","4581":"375","4582":"500","4583":"875","4584":"625","4585":"625","4586":"750","4587":"750","4588":"1000","4589":"750","4590":"750","4591":"500","4592":"250","4593":"625","4594":"625","4595":"875","4596":"813","4597":"625","4598":"313","4599":"625","4600":"750","4601":"292","4602":"688","4603":"250","4604":"875","4605":"875","4606":"375","4607":"875","4608":"688","4609":"542","4610":"542","4611":"625","4612":"625","4613":"375","4614":"375","4615":"500","4616":"375","4617":"500","4618":"500","4619":"375","4620":"938","4621":"625","4622":"375","4623":"625","4624":"750","4625":"1000","4626":"500","4627":"813","4628":"1000","4629":"625","4630":"375","4631":"500","4632":"375","4633":"250","4634":"500","4635":"500","4636":"500","4637":"625","4638":"625","4639":"500","4640":"500","4641":"438","4642":"500","4643":"625","4644":"750","4645":"500","4646":"625","4647":"375","4648":"375","4649":"625","4650":"375","4651":"250","4652":"625","4653":"250","4654":"375","4655":"563","4656":"563","4657":"875","4658":"875","4659":"625","4660":"625","4661":"583","4662":"375","4663":"438","4664":"625","4665":"375","4666":"250","4667":"625","4668":"875","4669":"750","4670":"792","4671":"375","4672":"625","4673":"313","4674":"250","4675":"250","4676":"1000","4677":"688","4678":"1000","4679":"688","4680":"875","4681":"250","4682":"375","4683":"688","4684":"250","4685":"438","4686":"375","4687":"313","4688":"250","4689":"500","4690":"250","4691":"531","4692":"250","4693":"625","4694":"1000","4695":"375","4696":"875","4697":"625","4698":"625","4699":"625","4700":"500","4701":"750","4702":"625","4703":"875","4704":"625","4705":"292","4706":"313","4707":"1000","4708":"938","4709":"375","4710":"313","4711":"833","4712":"500","4713":"375","4714":"250","4715":"500","4716":"375","4717":"250","4718":"625","4719":"250","4720":"375","4721":"250","4722":"375","4723":"375","4724":"250","4725":"375","4726":"375","4727":"563","4728":"375","4729":"1000","4730":"500","4731":"563","4732":"1000","4733":"333","4734":"375","4735":"375","4736":"625","4737":"313","4738":"438","4739":"750","4740":"500","4741":"1000","4742":"-875","4743":"-250","4744":"-250","4745":"-625","4746":"-250","4747":"-312","4748":"-250","4749":"-500","4750":"-437","4751":"-375","4752":"-542","4753":"-333","4754":"-312","4755":"-250","4756":"-250","4757":"-250","4758":"-250","4759":"-250","4760":"-750","4761":"-667","4762":"-625","4763":"-1000","4764":"-312","4765":"-250","4766":"-375","4767":"-437","4768":"-500","4769":"-437","4770":"-437","4771":"-333","4772":"-500","4773":"-375","4774":"-250","4775":"-583","4776":"-250","4777":"-250","4778":"-312","4779":"-375","4780":"-375","4781":"-562","4782":"-375","4783":"-500","4784":"-375","4785":"-250","4786":"-1000","4787":"-625","4788":"-875","4789":"-250","4790":"-875","4791":"-375","4792":"-750","4793":"-375","4794":"-375","4795":"-625","4796":"-375","4797":"-375","4798":"-333","4799":"-500","4800":"-750","4801":"-625","4802":"-625","4803":"-750","4804":"-375","4805":"-437","4806":"-625","4807":"-375","4808":"-1000","4809":"-500","4810":"-250","4811":"-250","4812":"-500","4813":"-312","4814":"-375","4815":"-312","4816":"-458","4817":"-1000","4818":"-437","4819":"-406","4820":"-625","4821":"-250","4822":"-875","4823":"-250","4824":"-750","4825":"-312","4826":"-375","4827":"-333","4828":"-250","4829":"-292","4830":"-875","4831":"-531","4832":"-250","4833":"-500","4834":"-375","4835":"-1000","4836":"-375","4837":"-750","4838":"-500","4839":"-375","4840":"-375","4841":"-500","4842":"-500","4843":"-1000","4844":"-375","4845":"-625","4846":"-312","4847":"-1000","4848":"-625","4849":"-625","4850":"-750","4851":"-800","4852":"-375","4853":"-500","4854":"-250","4855":"-250","4856":"-250","4857":"-250","4858":"-875","4859":"-375","4860":"-333","4861":"-375","4862":"-375","4863":"-844","4864":"-750","4865":"-250","4866":"-500","4867":"-500","4868":"-500","4869":"-333","4870":"-750","4871":"-437","4872":"-250","4873":"-500","4874":"-500","4875":"-750","4876":"-1000","4877":"-292","4878":"-875","4879":"-312","4880":"-250","4881":"-250","4882":"-500","4883":"-500","4884":"-750","4885":"-250","4886":"-250","4887":"-750","4888":"-375","4889":"-375","4890":"-562","4891":"-437","4892":"-750","4893":"-750","4894":"-312","4895":"-375","4896":"-750","4897":"-750","4898":"-375","4899":"-875","4900":"-875","4901":"-500","4902":"-875","4903":"-500","4904":"-312","4905":"-500","4906":"-250","4907":"-594","4908":"-750","4909":"-667","4910":"-1000","4911":"-1000","4912":"-750","4913":"-750","4914":"-375","4915":"-250","4916":"-250","4917":"-292","4918":"-437","4919":"-333","4920":"-312","4921":"-312","4922":"-375","4923":"-458","4924":"-375","4925":"-250","4926":"-750","4927":"-250","4928":"-292","4929":"-500","4930":"-469","4931":"-1000","4932":"-375","4933":"-375","4934":"-250","4935":"-250","4936":"-750","4937":"-250","4938":"-375","4939":"-500","4940":"-250","4941":"-250","4942":"-292","4943":"-417","4944":"-1000","4945":"-250","4946":"-1000","4947":"-375","4948":"-250","4949":"-1000","4950":"-500","4951":"-458","4952":"-437","4953":"-500","4954":"-250","4955":"-1000","4956":"-312","4957":"-250","4958":"-625","4959":"-375","4960":"-625","4961":"-250","4962":"-469","4963":"-688","4964":"-375","4965":"-625","4966":"-625","4967":"-500","4968":"-625","4969":"-500","4970":"-625","4971":"-375","4972":"-500","4973":"-250","4974":"-417","4975":"-750","4976":"-1000","4977":"-312","4978":"-750","4979":"-250","4980":"-1000","4981":"-250","4982":"-500","4983":"-375","4984":"-625","4985":"-750","4986":"-375","4987":"-250","4988":"-687","4989":"-750","4990":"-875","4991":"-750","4992":"-375","4993":"-375","4994":"-500","4995":"-333","4996":"-375","4997":"-437","4998":"-625","4999":"-250","5000":"-500","5001":"-500","5002":"-250","5003":"-250","5004":"-750","5005":"-250","5006":"-625","5007":"-1000","5008":"-375","5009":"-375","5010":"-312","5011":"-500","5012":"-375","5013":"-625","5014":"-333","5015":"-750","5016":"-333","5017":"-375","5018":"-250","5019":"-375","5020":"-250","5021":"-250","5022":"-500","5023":"-250","5024":"-437","5025":"-250","5026":"-625","5027":"-500","5028":"-250","5029":"-750","5030":"-875","5031":"-562","5032":"-562","5033":"-625","5034":"-250","5035":"-875","5036":"-750","5037":"-562","5038":"-500","5039":"-531","5040":"-750","5041":"-437","5042":"-250","5043":"-437","5044":"-375","5045":"-625","5046":"-625","5047":"-250","5048":"-250","5049":"-250","5050":"-375","5051":"-250","5052":"-625","5053":"-531","5054":"-437","5055":"-375","5056":"-312","5057":"-250","5058":"-250","5059":"-500","5060":"-562","5061":"-750","5062":"-875","5063":"-625","5064":"-375","5065":"-437","5066":"-292","5067":"-250","5068":"-375","5069":"-750","5070":"-500","5071":"-375","5072":"-500","5073":"-375","5074":"-250","5075":"-250","5076":"-292","5077":"-750","5078":"-375","5079":"-500","5080":"-250","5081":"-250","5082":"-750","5083":"-1000","5084":"-375","5085":"-375","5086":"-625","5087":"-1000","5088":"-469","5089":"-437","5090":"-312","5091":"-500","5092":"-312","5093":"-500","5094":"-1000","5095":"-750","5096":"-375","5097":"-562","5098":"-250","5099":"-250","5100":"-750","5101":"-375","5102":"-375","5103":"-500","5104":"-375","5105":"-500","5106":"-375","5107":"-417","5108":"-500","5109":"-375","5110":"-500","5111":"-250","5112":"-312","5113":"-250","5114":"-292","5115":"-333","5116":"-333","5117":"-375","5118":"-625","5119":"-375","5120":"-375","5121":"-500","5122":"-625","5123":"-312","5124":"-750","5125":"-500","5126":"-312","5127":"-375","5128":"-500","5129":"-625","5130":"-500","5131":"-625","5132":"-312","5133":"-292","5134":"-562","5135":"-375","5136":"-708","5137":"-437","5138":"-250","5139":"-250","5140":"-625","5141":"-1000","5142":"-562","5143":"-625","5144":"-250","5145":"-250","5146":"-250","5147":"-500","5148":"-917","5149":"-375","5150":"-750","5151":"-500","5152":"-781","5153":"-500","5154":"-937","5155":"-437","5156":"-250","5157":"-375","5158":"-750","5159":"-458","5160":"-703","5161":"-625","5162":"-417","5163":"-625","5164":"-625","5165":"-625","5166":"-250","5167":"-500","5168":"-333","5169":"-250","5170":"-250","5171":"-250","5172":"-750","5173":"-292","5174":"-458","5175":"-375","5176":"-875","5177":"-250","5178":"-250","5179":"-500","5180":"-625","5181":"-500","5182":"-1000","5183":"-750","5184":"-500","5185":"-500","5186":"-437","5187":"-437","5188":"-250","5189":"-562","5190":"-1000","5191":"-437","5192":"-625","5193":"-312","5194":"-250","5195":"-375","5196":"-625","5197":"-250","5198":"-1000","5199":"-687","5200":"-250","5201":"-1000","5202":"-500","5203":"-750","5204":"-250","5205":"-500","5206":"-250","5207":"-250","5208":"-500","5209":"-500","5210":"-500","5211":"875","5212":"1000","5213":"1000","5214":"813","5215":"1000","5216":"1000","5217":"1000","5218":"1000","5219":"875","5220":"875","5221":"813","5222":"875","5223":"1000","5224":"875","5225":"813","5226":"813","5227":"813","5228":"875","5229":"875","5230":"875","5231":"1000","5232":"1000","5233":"875","5234":"813","5235":"875","5236":"875","5237":"1000","5238":"813","5239":"1000","5240":"1000","5241":"1000","5242":"875","5243":"875","5244":"875","5245":"875","5246":"875","5247":"813","5248":"875","5249":"1000","5250":"1000","5251":"1000","5252":"875","5253":"875","5254":"1000","5255":"875","5256":"1000","5257":"813","5258":"875","5259":"1000","5260":"875","5261":"1000","5262":"813","5263":"1000","5264":"875","5265":"875","5266":"1000","5267":"1000","5268":"875","5269":"875","5270":"1000","5271":"1000","5272":"1000","5273":"1000","5274":"875","5275":"875","5276":"875","5277":"875","5278":"875","5279":"792","5280":"875","5281":"875","5282":"875","5283":"875","5284":"875","5285":"1000","5286":"875","5287":"875","5288":"875","5289":"875","5290":"875","5291":"875","5292":"875","5293":"875","5294":"875","5295":"875","5296":"875","5297":"1000","5298":"875","5299":"1000","5300":"1000","5301":"875","5302":"875","5303":"875","5304":"875","5305":"875","5306":"875","5307":"813","5308":"875","5309":"875","5310":"750","5311":"1000","5312":"1000","5313":"875","5314":"875","5315":"1000","5316":"1000","5317":"1000","5318":"1000","5319":"875","5320":"875","5321":"875","5322":"812","5323":"875","5324":"1000","5325":"1000","5326":"875","5327":"875","5328":"875","5329":"875","5330":"875","5331":"875","5332":"1000","5333":"1000","5334":"813","5335":"875","5336":"875","5337":"875","5338":"875","5339":"875","5340":"875","5341":"1000","5342":"1000","5343":"1000","5344":"1000","5345":"813","5346":"1000","5347":"1000","5348":"875","5349":"1000","5350":"1000","5351":"875","5352":"875","5353":"1000","5354":"875","5355":"1000","5356":"1000","5357":"875","5358":"875","5359":"875","5360":"1000","5361":"1000","5362":"875","5363":"875","5364":"875","5365":"1000","5366":"1000","5367":"958","5368":"875","5369":"1000","5370":"875","5371":"1000","5372":"813","5373":"1000","5374":"938","5375":"687","5376":"875","5377":"1000","5378":"1000","5379":"875","5380":"813","5381":"875","5382":"875","5383":"1000","5384":"875","5385":"875","5386":"1000","5387":"1000","5388":"1000","5389":"1000","5390":"1000","5391":"1000","5392":"875","5393":"1000","5394":"1000","5395":"813","5396":"833","5397":"1000","5398":"1000","5399":"1000","5400":"875","5401":"1000","5402":"875","5403":"1000","5404":"-875","5405":"-812","5406":"-917","5407":"-1000","5408":"-1000","5409":"-875","5410":"-1000","5411":"-875","5412":"-813","5413":"-875","5414":"-875","5415":"-1000","5416":"-875","5417":"-771","5418":"-1000","5419":"-1000","5420":"-1000","5421":"-1000","5422":"-1000","5423":"-709","5424":"-875","5425":"-1000","5426":"-875","5427":"-1000","5428":"-1000","5429":"-875","5430":"-875","5431":"-1000","5432":"-875","5433":"-1000","5434":"-1000","5435":"-1000","5436":"-812","5437":"-1000","5438":"-1000","5439":"-1000","5440":"-875","5441":"-1000","5442":"-875","5443":"-875","5444":"-1000","5445":"-1000","5446":"-1000","5447":"-1000","5448":"-875","5449":"-875","5450":"-1000","5451":"-875","5452":"-1000","5453":"-1000","5454":"-875","5455":"-1000","5456":"-1000","5457":"-875","5458":"-875","5459":"-875","5460":"-875","5461":"-1000","5462":"-937","5463":"-1000","5464":"-781","5465":"-875","5466":"-875","5467":"-1000","5468":"-1000","5469":"-1000","5470":"-1000","5471":"-1000","5472":"-875","5473":"-1000","5474":"-1000","5475":"-875","5476":"-833","5477":"-875","5478":"-875","5479":"-875","5480":"-1000","5481":"-875","5482":"-1000","5483":"-875","5484":"-875","5485":"-1000","5486":"-812","5487":"-1000","5488":"-875","5489":"-1000","5490":"-1000","5491":"-1000","5492":"-875","5493":"-1000","5494":"-875","5495":"-1000","5496":"-1000","5497":"-875","5498":"-875","5499":"-1000","5500":"-1000","5501":"-875","5502":"-1000","5503":"-875","5504":"-875","5505":"-688","5506":"-875","5507":"-1000","5508":"-875","5509":"-875","5510":"-875","5511":"-1000","5512":"-1000","5513":"-1000","5514":"-1000","5515":"-937","5516":"-1000","5517":"-875","5518":"-1000","5519":"-1000","5520":"-1000","5521":"-875","5522":"-1000","5523":"-875","5524":"-1000","5525":"-875","5526":"-1000","5527":"-875","5528":"-1000","5529":"-1000","5530":"-875","5531":"-875","5532":"-1000","5533":"-1000","5534":"-1000","5535":"-1000","5536":"-1000","5537":"-875","5538":"-875","5539":"-1000","5540":"-1000","5541":"-1000","5542":"-875","5543":"-1000","5544":"-875","5545":"-1000","5546":"-1000","5547":"-1000","5548":"-1000","5549":"-1000","5550":"-875","5551":"-1000","5552":"-1000","5553":"-1000","5554":"-875","5555":"-1000","5556":"-1000","5557":"-1000","5558":"-1000","5559":"-875","5560":"-1000","5561":"-1000","5562":"-1000","5563":"-1000","5564":"-812","5565":"-875","5566":"-1000","5567":"-1000","5568":"-1000","5569":"-875","5570":"-1000","5571":"-1000","5572":"-1000","5573":"-792","5574":"-875","5575":"-1000","5576":"-1000","5577":"-1000","5578":"-875","5579":"-875","5580":"-875","5581":"-875","5582":"-875","5583":"-1000","5584":"-1000","5585":"-1000","5586":"-875","5587":"-875","5588":"-1000","5589":"-1000","5590":"-1000","5591":"-875","5592":"-875","5593":"-875","5594":"-875","5595":"-875","5596":"-875","5597":"-875","5598":"-875","5599":"-875","5600":"-875","5601":"-875","5602":"-1000","5603":"-1000","5604":"-1000","5605":"-1000","5606":"-1000","5607":"-875","5608":"-875","5609":"-813","5610":"-1000","5611":"-1000","5612":"-875","5613":"-1000","5614":"-1000","5615":"-1000","5616":"-875","5617":"-1000","5618":"-1000","5619":"-1000","5620":"-1000","5621":"-1000","5622":"-1000","5623":"-1000","5624":"-1000","5625":"-875","5626":"-1000","5627":"-875","5628":"-1000","5629":"-875","5630":"-1000","5631":"-1000","5632":"-812","5633":"-875","5634":"-1000","5635":"-1000","5636":"-875","5637":"-875","5638":"-1000","5639":"-1000","5640":"-1000","5641":"-1000","5642":"-1000","5643":"-1000","5644":"-1000","5645":"-875","5646":"-1000","5647":"-875","5648":"-1000","5649":"-812","5650":"-875","5651":"-1000","5652":"-1000","5653":"-875","5654":"-875","5655":"-875","5656":"-875","5657":"-875","5658":"-875","5659":"-1000","5660":"-1000","5661":"-1000","5662":"-1000","5663":"-875","5664":"-875","5665":"-1000","5666":"-1000","5667":"-1000","5668":"-875","5669":"-1000","5670":"-1000","5671":"-875","5672":"-1000","5673":"-1000","5674":"-1000","5675":"-875","5676":"-917","5677":"-812","5678":"-1000","5679":"-875","5680":"-1000","5681":"-1000","5682":"-1000","5683":"750","5684":"750","5685":"750","5686":"750","5687":"750","5688":"750","5689":"646","5690":"750","5691":"750","5692":"750","5693":"750","5694":"750","5695":"750","5696":"750","5697":"750","5698":"750","5699":"750","5700":"750","5701":"750","5702":"750","5703":"750","5704":"750","5705":"750","5706":"750","5707":"750","5708":"750","5709":"750","5710":"750","5711":"750","5712":"750","5713":"750","5714":"750","5715":"750","5716":"750","5717":"750","5718":"750","5719":"750","5720":"750","5721":"750","5722":"750","5723":"750","5724":"750","5725":"750","5726":"750","5727":"750","5728":"750","5729":"750","5730":"687","5731":"750","5732":"750","5733":"750","5734":"750","5735":"750","5736":"750","5737":"750","5738":"750","5739":"750","5740":"750","5741":"750","5742":"750","5743":"750","5744":"750","5745":"750","5746":"750","5747":"750","5748":"750","5749":"750","5750":"750","5751":"750","5752":"750","5753":"750","5754":"750","5755":"750","5756":"750","5757":"750","5758":"750","5759":"750","5760":"750","5761":"750","5762":"750","5763":"750","5764":"750","5765":"750","5766":"750","5767":"750","5768":"750","5769":"750","5770":"750","5771":"750","5772":"750","5773":"750","5774":"750","5775":"750","5776":"750","5777":"750","5778":"750","5779":"750","5780":"750","5781":"750","5782":"750","5783":"750","5784":"750","5785":"750","5786":"750","5787":"750","5788":"750","5789":"750","5790":"750","5791":"750","5792":"750","5793":"750","5794":"750","5795":"750","5796":"750","5797":"750","5798":"750","5799":"750","5800":"750","5801":"750","5802":"750","5803":"750","5804":"750","5805":"750","5806":"750","5807":"750","5808":"750","5809":"750","5810":"750","5811":"750","5812":"750","5813":"750","5814":"750","5815":"750","5816":"750","5817":"750","5818":"750","5819":"750","5820":"750","5821":"750","5822":"750","5823":"656","5824":"750","5825":"750","5826":"750","5827":"750","5828":"750","5829":"750","5830":"750","5831":"750","5832":"750","5833":"750","5834":"750","5835":"750","5836":"750","5837":"750","5838":"750","5839":"750","5840":"750","5841":"750","5842":"750","5843":"750","5844":"750","5845":"750","5846":"750","5847":"750","5848":"750","5849":"750","5850":"750","5851":"750","5852":"750","5853":"750","5854":"750","5855":"750","5856":"750","5857":"750","5858":"750","5859":"750","5860":"750","5861":"750","5862":"750","5863":"750","5864":"750","5865":"750","5866":"750","5867":"750","5868":"750","5869":"750","5870":"750","5871":"750","5872":"750","5873":"750","5874":"750","5875":"750","5876":"750","5877":"750","5878":"750","5879":"750","5880":"750","5881":"750","5882":"750","5883":"750","5884":"-750","5885":"-750","5886":"-750","5887":"-750","5888":"-750","5889":"-750","5890":"-750","5891":"-750","5892":"-750","5893":"-750","5894":"-750","5895":"-750","5896":"-750","5897":"-750","5898":"-750","5899":"-750","5900":"-750","5901":"-750","5902":"-750","5903":"-750","5904":"-750","5905":"-750","5906":"-750","5907":"-750","5908":"-750","5909":"-750","5910":"-750","5911":"-750","5912":"-750","5913":"-750","5914":"-750","5915":"-750","5916":"-750","5917":"-750","5918":"-750","5919":"-750","5920":"-750","5921":"-750","5922":"-750","5923":"-750","5924":"-750","5925":"-750","5926":"-750","5927":"-750","5928":"-750","5929":"-750","5930":"-750","5931":"-750","5932":"-750","5933":"-750","5934":"-750","5935":"-750","5936":"-750","5937":"-750","5938":"-750","5939":"-750","5940":"-750","5941":"-750","5942":"-750","5943":"-750","5944":"-750","5945":"-750","5946":"-750","5947":"-750","5948":"-750","5949":"-750","5950":"-750","5951":"-750","5952":"-750","5953":"-750","5954":"-688","5955":"-750","5956":"-750","5957":"-750","5958":"-750","5959":"-750","5960":"-750","5961":"-750","5962":"-750","5963":"-750","5964":"-750","5965":"-750","5966":"-750","5967":"-750","5968":"-750","5969":"-750","5970":"-750","5971":"-750","5972":"-750","5973":"-750","5974":"-750","5975":"-750","5976":"-750","5977":"-750","5978":"-750","5979":"-750","5980":"-750","5981":"-750","5982":"-750","5983":"-750","5984":"-750","5985":"-750","5986":"-750","5987":"-750","5988":"-750","5989":"-750","5990":"-750","5991":"-750","5992":"-750","5993":"-750","5994":"-750","5995":"-750","5996":"-750","5997":"-750","5998":"-750","5999":"-750","6000":"-750","6001":"-750","6002":"-750","6003":"-750","6004":"-750","6005":"-750","6006":"-750","6007":"-750","6008":"-750","6009":"-750","6010":"-750","6011":"-750","6012":"-750","6013":"-750","6014":"-750","6015":"-750","6016":"-750","6017":"-750","6018":"-750","6019":"-750","6020":"-750","6021":"-750","6022":"-750","6023":"-750","6024":"-750","6025":"-750","6026":"-750","6027":"-750","6028":"-750","6029":"-688","6030":"-750","6031":"-750","6032":"-750","6033":"-750","6034":"-750","6035":"-750","6036":"-750","6037":"-750","6038":"-750","6039":"-750","6040":"-750","6041":"-750","6042":"-750","6043":"-750","6044":"-750","6045":"-750","6046":"-750","6047":"-750","6048":"-750","6049":"-750","6050":"-750","6051":"-750","6052":"-750","6053":"-750","6054":"-750","6055":"-750","6056":"-750","6057":"-750","6058":"-750","6059":"-750","6060":"-750","6061":"-750","6062":"-750","6063":"-750","6064":"-750","6065":"-750","6066":"-750","6067":"-750","6068":"-750","6069":"-750","6070":"-750","6071":"-750","6072":"-750","6073":"-750","6074":"-750","6075":"-750","6076":"-750","6077":"-750","6078":"-750","6079":"-750","6080":"-750","6081":"-750","6082":"-750","6083":"-750","6084":"-750","6085":"-750","6086":"-750","6087":"-750","6088":"-750","6089":"-688","6090":"-750","6091":"-750","6092":"-750","6093":"-750","6094":"-750","6095":"-625","6096":"-750","6097":"-750","6098":"-750","6099":"-750","6100":"-750","6101":"-750","6102":"-719","6103":"-750","6104":"-750","6105":"-750","6106":"-750","6107":"-750","6108":"-750","6109":"-750","6110":"-750","6111":"-750","6112":"-750","6113":"-750","6114":"-750","6115":"-750","6116":"-750","6117":"-750","6118":"-750","6119":"-750","6120":"-750","6121":"-750","6122":"-750","6123":"-750","6124":"-750","6125":"-750","6126":"-750","6127":"-750","6128":"-750","6129":"-750","6130":"-750","6131":"-750","6132":"-750","6133":"-750","6134":"-750","6135":"-750","6136":"-750","6137":"-750","6138":"-750","6139":"-750","6140":"-750","6141":"-750","6142":"-750","6143":"-750","6144":"-750","6145":"-750","6146":"-750","6147":"-750","6148":"-750","6149":"-750","6150":"-750","6151":"-750","6152":"-750","6153":"-750","6154":"-750","6155":"-750","6156":"-750","6157":"-750","6158":"-750","6159":"-750","6160":"-750","6161":"-750","6162":"-750","6163":"-750","6164":"-750","6165":"-750","6166":"-750","6167":"-750","6168":"-750","6169":"-750","6170":"-750","6171":"-750","6172":"-750","6173":"-750","6174":"-750","6175":"-750","6176":"-750","6177":"-750","6178":"-750","6179":"-750","6180":"-750","6181":"-750","6182":"-750","6183":"-750","6184":"-750","6185":"-750","6186":"-750","6187":"-750","6188":"-750","6189":"-750","6190":"-750","6191":"-750","6192":"-750","6193":"-750","6194":"-750","6195":"-750","6196":"-750","6197":"688","6198":"625","6199":"625","6200":"656","6201":"625","6202":"625","6203":"563","6204":"562","6205":"625","6206":"563","6207":"625","6208":"625","6209":"708","6210":"625","6211":"625","6212":"688","6213":"625","6214":"625","6215":"625","6216":"625","6217":"625","6218":"625","6219":"625","6220":"625","6221":"625","6222":"625","6223":"625","6224":"708","6225":"625","6226":"625","6227":"625","6228":"625","6229":"625","6230":"625","6231":"563","6232":"583","6233":"583","6234":"531","6235":"625","6236":"625","6237":"625","6238":"625","6239":"625","6240":"625","6241":"625","6242":"625","6243":"625","6244":"625","6245":"583","6246":"688","6247":"625","6248":"625","6249":"625","6250":"625","6251":"625","6252":"688","6253":"625","6254":"625","6255":"667","6256":"625","6257":"563","6258":"625","6259":"625","6260":"625","6261":"625","6262":"625","6263":"688","6264":"625","6265":"688","6266":"625","6267":"625","6268":"550","6269":"625","6270":"625","6271":"625","6272":"625","6273":"521","6274":"563","6275":"563","6276":"625","6277":"625","6278":"650","6279":"625","6280":"625","6281":"625","6282":"625","6283":"625","6284":"625","6285":"583","6286":"625","6287":"625","6288":"625","6289":"625","6290":"625","6291":"625","6292":"625","6293":"625","6294":"625","6295":"667","6296":"625","6297":"625","6298":"625","6299":"625","6300":"625","6301":"625","6302":"625","6303":"625","6304":"625","6305":"625","6306":"625","6307":"625","6308":"625","6309":"625","6310":"625","6311":"708","6312":"625","6313":"625","6314":"688","6315":"667","6316":"688","6317":"625","6318":"625","6319":"625","6320":"625","6321":"625","6322":"625","6323":"688","6324":"688","6325":"667","6326":"625","6327":"625","6328":"625","6329":"667","6330":"625","6331":"563","6332":"563","6333":"625","6334":"625","6335":"625","6336":"625","6337":"625","6338":"625","6339":"625","6340":"625","6341":"625","6342":"563","6343":"625","6344":"625","6345":"625","6346":"531","6347":"625","6348":"625","6349":"625","6350":"625","6351":"625","6352":"625","6353":"563","6354":"625","6355":"625","6356":"625","6357":"625","6358":"625","6359":"625","6360":"563","6361":"625","6362":"625","6363":"625","6364":"542","6365":"625","6366":"625","6367":"542","6368":"625","6369":"625","6370":"625","6371":"625","6372":"625","6373":"625","6374":"625","6375":"625","6376":"625","6377":"625","6378":"625","6379":"625","6380":"625","6381":"625","6382":"625","6383":"625","6384":"688","6385":"625","6386":"625","6387":"625","6388":"625","6389":"542","6390":"625","6391":"625","6392":"625","6393":"625","6394":"563","6395":"625","6396":"625","6397":"563","6398":"625","6399":"625","6400":"625","6401":"625","6402":"625","6403":"625","6404":"625","6405":"625","6406":"667","6407":"625","6408":"625","6409":"625","6410":"563","6411":"625","6412":"625","6413":"563","6414":"563","6415":"583","6416":"625","6417":"625","6418":"542","6419":"625","6420":"625","6421":"542","6422":"625","6423":"625","6424":"625","6425":"625","6426":"594","6427":"625","6428":"625","6429":"625","6430":"625","6431":"625","6432":"625","6433":"688","6434":"594","6435":"625","6436":"625","6437":"625","6438":"625","6439":"563","6440":"625","6441":"688","6442":"625","6443":"563","6444":"625","6445":"625","6446":"625","6447":"675","6448":"625","6449":"625","6450":"625","6451":"625","6452":"625","6453":"625","6454":"625","6455":"625","6456":"521","6457":"625","6458":"563","6459":"625","6460":"521","6461":"625","6462":"667","6463":"625","6464":"625","6465":"625","6466":"625","6467":"688","6468":"625","6469":"625","6470":"625","6471":"542","6472":"563","6473":"667","6474":"625","6475":"563","6476":"625","6477":"625","6478":"625","6479":"625","6480":"625","6481":"625","6482":"625","6483":"625","6484":"625","6485":"625","6486":"625","6487":"625","6488":"625","6489":"542","6490":"625","6491":"625","6492":"531","6493":"625","6494":"563","6495":"625","6496":"625","6497":"625","6498":"542","6499":"625","6500":"625","6501":"625","6502":"625","6503":"625","6504":"563","6505":"688","6506":"625","6507":"708","6508":"625","6509":"625","6510":"625","6511":"542","6512":"625","6513":"708","6514":"625","6515":"542","6516":"563","6517":"625","6518":"625","6519":"625","6520":"563","6521":"563","6522":"625","6523":"625","6524":"625","6525":"625","6526":"625","6527":"625","6528":"625","6529":"542","6530":"625","6531":"625","6532":"625","6533":"625","6534":"688","6535":"563","6536":"625","6537":"625","6538":"625","6539":"625","6540":"625","6541":"625","6542":"625","6543":"625","6544":"625","6545":"625","6546":"625","6547":"625","6548":"625","6549":"688","6550":"542","6551":"625","6552":"625","6553":"563","6554":"625","6555":"625","6556":"625","6557":"625","6558":"625","6559":"625","6560":"688","6561":"625","6562":"625","6563":"625","6564":"625","6565":"563","6566":"625","6567":"688","6568":"625","6569":"625","6570":"625","6571":"625","6572":"563","6573":"563","6574":"563","6575":"625","6576":"625","6577":"625","6578":"625","6579":"625","6580":"625","6581":"625","6582":"625","6583":"583","6584":"625","6585":"667","6586":"542","6587":"625","6588":"625","6589":"583","6590":"656","6591":"625","6592":"625","6593":"625","6594":"625","6595":"625","6596":"542","6597":"625","6598":"625","6599":"625","6600":"625","6601":"625","6602":"625","6603":"563","6604":"625","6605":"625","6606":"531","6607":"625","6608":"563","6609":"625","6610":"531","6611":"542","6612":"625","6613":"688","6614":"688","6615":"625","6616":"625","6617":"625","6618":"625","6619":"625","6620":"625","6621":"594","6622":"525","6623":"625","6624":"542","6625":"688","6626":"625","6627":"625","6628":"625","6629":"625","6630":"625","6631":"625","6632":"625","6633":"625","6634":"563","6635":"625","6636":"625","6637":"563","6638":"625","6639":"688","6640":"563","6641":"625","6642":"625","6643":"708","6644":"688","6645":"625","6646":"563","6647":"563","6648":"625","6649":"625","6650":"625","6651":"571","6652":"688","6653":"563","6654":"563","6655":"563","6656":"625","6657":"575","6658":"625","6659":"688","6660":"625","6661":"563","6662":"688","6663":"625","6664":"625","6665":"542","6666":"563","6667":"563","6668":"625","6669":"563","6670":"625","6671":"688","6672":"625","6673":"625","6674":"625","6675":"625","6676":"625","6677":"542","6678":"625","6679":"625","6680":"583","6681":"625","6682":"625","6683":"625","6684":"625","6685":"625","6686":"625","6687":"625","6688":"563","6689":"625","6690":"542","6691":"625","6692":"563","6693":"625","6694":"625","6695":"563","6696":"563","6697":"625","6698":"542","6699":"625","6700":"625","6701":"583","6702":"625","6703":"563","6704":"625","6705":"563","6706":"625","6707":"625","6708":"625","6709":"625","6710":"719","6711":"625","6712":"625","6713":"625","6714":"542","6715":"625","6716":"625","6717":"625","6718":"531","6719":"563","6720":"563","6721":"563","6722":"625","6723":"625","6724":"625","6725":"688","6726":"625","6727":"625","6728":"563","6729":"625","6730":"625","6731":"563","6732":"625","6733":"563","6734":"563","6735":"625","6736":"563","6737":"625","6738":"625","6739":"625","6740":"625","6741":"625","6742":"583","6743":"625","6744":"573","6745":"625","6746":"688","6747":"625","6748":"625","6749":"625","6750":"625","6751":"625","6752":"625","6753":"625","6754":"625","6755":"625","6756":"625","6757":"563","6758":"625","6759":"525","6760":"625","6761":"625","6762":"688","6763":"625","6764":"625","6765":"563","6766":"625","6767":"563","6768":"625","6769":"625","6770":"625","6771":"625","6772":"625","6773":"625","6774":"688","6775":"563","6776":"625","6777":"583","6778":"625","6779":"625","6780":"625","6781":"625","6782":"625","6783":"563","6784":"625","6785":"625","6786":"625","6787":"625","6788":"625","6789":"-625","6790":"-667","6791":"-562","6792":"-562","6793":"-562","6794":"-542","6795":"-625","6796":"-625","6797":"-625","6798":"-625","6799":"-625","6800":"-562","6801":"-625","6802":"-625","6803":"-625","6804":"-562","6805":"-625","6806":"-625","6807":"-563","6808":"-625","6809":"-625","6810":"-625","6811":"-625","6812":"-562","6813":"-562","6814":"-687","6815":"-625","6816":"-625","6817":"-562","6818":"-625","6819":"-625","6820":"-625","6821":"-562","6822":"-625","6823":"-625","6824":"-625","6825":"-625","6826":"-562","6827":"-625","6828":"-625","6829":"-542","6830":"-625","6831":"-562","6832":"-625","6833":"-625","6834":"-562","6835":"-563","6836":"-625","6837":"-625","6838":"-625","6839":"-625","6840":"-625","6841":"-625","6842":"-625","6843":"-625","6844":"-625","6845":"-625","6846":"-625","6847":"-625","6848":"-625","6849":"-625","6850":"-625","6851":"-563","6852":"-625","6853":"-625","6854":"-625","6855":"-625","6856":"-625","6857":"-625","6858":"-542","6859":"-625","6860":"-625","6861":"-625","6862":"-625","6863":"-625","6864":"-625","6865":"-625","6866":"-625","6867":"-625","6868":"-625","6869":"-625","6870":"-562","6871":"-625","6872":"-625","6873":"-562","6874":"-625","6875":"-625","6876":"-625","6877":"-625","6878":"-625","6879":"-563","6880":"-625","6881":"-625","6882":"-625","6883":"-542","6884":"-625","6885":"-562","6886":"-625","6887":"-719","6888":"-542","6889":"-625","6890":"-625","6891":"-625","6892":"-531","6893":"-625","6894":"-667","6895":"-625","6896":"-625","6897":"-625","6898":"-625","6899":"-625","6900":"-687","6901":"-625","6902":"-531","6903":"-687","6904":"-625","6905":"-625","6906":"-625","6907":"-625","6908":"-625","6909":"-625","6910":"-625","6911":"-625","6912":"-625","6913":"-625","6914":"-625","6915":"-625","6916":"-625","6917":"-562","6918":"-625","6919":"-625","6920":"-625","6921":"-625","6922":"-625","6923":"-625","6924":"-625","6925":"-625","6926":"-562","6927":"-625","6928":"-625","6929":"-625","6930":"-625","6931":"-542","6932":"-531","6933":"-550","6934":"-562","6935":"-687","6936":"-562","6937":"-562","6938":"-625","6939":"-625","6940":"-625","6941":"-521","6942":"-625","6943":"-625","6944":"-562","6945":"-625","6946":"-625","6947":"-625","6948":"-625","6949":"-625","6950":"-625","6951":"-625","6952":"-625","6953":"-625","6954":"-625","6955":"-625","6956":"-625","6957":"-625","6958":"-625","6959":"-687","6960":"-625","6961":"-625","6962":"-562","6963":"-562","6964":"-625","6965":"-625","6966":"-625","6967":"-583","6968":"-625","6969":"-625","6970":"-625","6971":"-562","6972":"-571","6973":"-625","6974":"-625","6975":"-625","6976":"-625","6977":"-625","6978":"-667","6979":"-667","6980":"-625","6981":"-625","6982":"-625","6983":"-625","6984":"-625","6985":"-625","6986":"-562","6987":"-625","6988":"-625","6989":"-625","6990":"-625","6991":"-562","6992":"-562","6993":"-625","6994":"-625","6995":"-625","6996":"-625","6997":"-583","6998":"-542","6999":"-687","7000":"-625","7001":"-625","7002":"-625","7003":"-625","7004":"-583","7005":"-625","7006":"-562","7007":"-562","7008":"-625","7009":"-625","7010":"-625","7011":"-625","7012":"-625","7013":"-625","7014":"-687","7015":"-625","7016":"-625","7017":"-625","7018":"-625","7019":"-625","7020":"-625","7021":"-625","7022":"-625","7023":"-583","7024":"-625","7025":"-625","7026":"-625","7027":"-625","7028":"-625","7029":"-583","7030":"-583","7031":"-625","7032":"-562","7033":"-625","7034":"-625","7035":"-625","7036":"-625","7037":"-625","7038":"-542","7039":"-625","7040":"-625","7041":"-625","7042":"-625","7043":"-625","7044":"-625","7045":"-625","7046":"-625","7047":"-625","7048":"-625","7049":"-625","7050":"-625","7051":"-625","7052":"-625","7053":"-625","7054":"-625","7055":"-625","7056":"-625","7057":"-687","7058":"-625","7059":"-625","7060":"-562","7061":"-687","7062":"-625","7063":"-625","7064":"-625","7065":"-625","7066":"-625","7067":"-625","7068":"-562","7069":"-562","7070":"-625","7071":"-625","7072":"-562","7073":"-687","7074":"-625","7075":"-625","7076":"-687","7077":"-625","7078":"-562","7079":"-625","7080":"-625","7081":"-625","7082":"-625","7083":"-625","7084":"-625","7085":"-625","7086":"-625","7087":"-625","7088":"-625","7089":"-625","7090":"-562","7091":"-625","7092":"-625","7093":"-625","7094":"-625","7095":"-625","7096":"-625","7097":"-625","7098":"-563","7099":"-625","7100":"-625","7101":"-625","7102":"-562","7103":"-625","7104":"-625","7105":"-562","7106":"-625","7107":"-625","7108":"-625","7109":"-562","7110":"-625","7111":"-625","7112":"-583","7113":"-625","7114":"-625","7115":"-625","7116":"-625","7117":"-625","7118":"-625","7119":"-563","7120":"-594","7121":"-625","7122":"-625","7123":"-562","7124":"-625","7125":"-625","7126":"-625","7127":"-625","7128":"-625","7129":"-625","7130":"-625","7131":"-625","7132":"-625","7133":"-625","7134":"-625","7135":"-563","7136":"-625","7137":"-562","7138":"-625","7139":"-625","7140":"-625","7141":"-625","7142":"-625","7143":"-625","7144":"-625","7145":"-583","7146":"-625","7147":"-625","7148":"200","7149":"-625","7150":"-625","7151":"-562","7152":"-562","7153":"-562","7154":"-562","7155":"-625","7156":"-625","7157":"-667","7158":"-625","7159":"-625","7160":"-625","7161":"-625","7162":"-625","7163":"-562","7164":"-583","7165":"-625","7166":"-562","7167":"-625","7168":"-625","7169":"-625","7170":"-562","7171":"-625","7172":"-625","7173":"-625","7174":"-625","7175":"-625","7176":"-625","7177":"-625","7178":"-625","7179":"-562","7180":"-687","7181":"-687","7182":"-625","7183":"-625","7184":"-625","7185":"-625","7186":"-562","7187":"-625","7188":"-687","7189":"-625","7190":"-625","7191":"-625","7192":"-625","7193":"-625","7194":"-562","7195":"-625","7196":"-625","7197":"-625","7198":"-625","7199":"-625","7200":"-667","7201":"-687","7202":"-687","7203":"-625","7204":"-625","7205":"-625","7206":"-625","7207":"-625","7208":"-562","7209":"-625","7210":"-625","7211":"-625","7212":"-687","7213":"-625","7214":"-625","7215":"-625","7216":"-625","7217":"-625","7218":"-625","7219":"-625","7220":"-625","7221":"-625","7222":"-625","7223":"-625","7224":"-542","7225":"-625","7226":"-625","7227":"-625","7228":"-625","7229":"-625","7230":"-625","7231":"-625","7232":"-625","7233":"-625","7234":"-719","7235":"-625","7236":"-625","7237":"-625","7238":"-625","7239":"-625","7240":"-625","7241":"-625","7242":"-625","7243":"-583","7244":"-625","7245":"-625","7246":"-625","7247":"-625","7248":"-625","7249":"-625","7250":"-625","7251":"-625","7252":"-625","7253":"-562","7254":"-562","7255":"-625","7256":"-562","7257":"-562","7258":"-625","7259":"-583","7260":"-625","7261":"-625","7262":"-625","7263":"-562","7264":"-625","7265":"-562","7266":"-625","7267":"500","7268":"500","7269":"500","7270":"500","7271":"500","7272":"500","7273":"500","7274":"500","7275":"500","7276":"500","7277":"500","7278":"500","7279":"500","7280":"500","7281":"500","7282":"500","7283":"500","7284":"500","7285":"500","7286":"500","7287":"500","7288":"500","7289":"500","7290":"500","7291":"500","7292":"500","7293":"500","7294":"500","7295":"500","7296":"500","7297":"500","7298":"500","7299":"500","7300":"500","7301":"500","7302":"500","7303":"500","7304":"500","7305":"500","7306":"500","7307":"500","7308":"500","7309":"500","7310":"500","7311":"500","7312":"500","7313":"500","7314":"500","7315":"500","7316":"500","7317":"500","7318":"500","7319":"500","7320":"500","7321":"500","7322":"500","7323":"500","7324":"500","7325":"500","7326":"500","7327":"500","7328":"500","7329":"500","7330":"500","7331":"500","7332":"500","7333":"500","7334":"500","7335":"500","7336":"500","7337":"500","7338":"500","7339":"500","7340":"500","7341":"500","7342":"500","7343":"500","7344":"500","7345":"500","7346":"500","7347":"500","7348":"500","7349":"500","7350":"500","7351":"500","7352":"500","7353":"500","7354":"500","7355":"500","7356":"500","7357":"500","7358":"500","7359":"500","7360":"500","7361":"500","7362":"500","7363":"500","7364":"500","7365":"500","7366":"500","7367":"500","7368":"500","7369":"500","7370":"500","7371":"500","7372":"500","7373":"500","7374":"500","7375":"500","7376":"500","7377":"500","7378":"500","7379":"500","7380":"500","7381":"500","7382":"500","7383":"500","7384":"500","7385":"500","7386":"500","7387":"500","7388":"500","7389":"500","7390":"500","7391":"500","7392":"500","7393":"500","7394":"500","7395":"500","7396":"500","7397":"500","7398":"500","7399":"500","7400":"500","7401":"500","7402":"500","7403":"500","7404":"500","7405":"500","7406":"500","7407":"500","7408":"500","7409":"500","7410":"500","7411":"500","7412":"500","7413":"500","7414":"500","7415":"500","7416":"500","7417":"500","7418":"500","7419":"500","7420":"500","7421":"500","7422":"500","7423":"500","7424":"500","7425":"500","7426":"500","7427":"500","7428":"500","7429":"500","7430":"500","7431":"500","7432":"500","7433":"500","7434":"500","7435":"500","7436":"500","7437":"500","7438":"500","7439":"500","7440":"500","7441":"500","7442":"500","7443":"500","7444":"500","7445":"500","7446":"500","7447":"500","7448":"500","7449":"500","7450":"500","7451":"500","7452":"500","7453":"500","7454":"500","7455":"500","7456":"500","7457":"500","7458":"500","7459":"500","7460":"500","7461":"500","7462":"500","7463":"500","7464":"500","7465":"500","7466":"500","7467":"500","7468":"500","7469":"500","7470":"500","7471":"500","7472":"500","7473":"500","7474":"500","7475":"500","7476":"500","7477":"500","7478":"500","7479":"500","7480":"500","7481":"500","7482":"500","7483":"500","7484":"500","7485":"500","7486":"500","7487":"500","7488":"500","7489":"500","7490":"500","7491":"500","7492":"500","7493":"500","7494":"500","7495":"500","7496":"500","7497":"500","7498":"500","7499":"500","7500":"500","7501":"500","7502":"500","7503":"500","7504":"500","7505":"500","7506":"500","7507":"500","7508":"500","7509":"500","7510":"500","7511":"500","7512":"500","7513":"500","7514":"500","7515":"500","7516":"500","7517":"500","7518":"500","7519":"500","7520":"500","7521":"500","7522":"500","7523":"500","7524":"500","7525":"500","7526":"500","7527":"500","7528":"500","7529":"500","7530":"500","7531":"500","7532":"500","7533":"500","7534":"500","7535":"500","7536":"500","7537":"500","7538":"500","7539":"500","7540":"500","7541":"500","7542":"500","7543":"500","7544":"500","7545":"500","7546":"500","7547":"500","7548":"500","7549":"500","7550":"500","7551":"500","7552":"500","7553":"500","7554":"500","7555":"500","7556":"500","7557":"500","7558":"500","7559":"500","7560":"500","7561":"500","7562":"500","7563":"500","7564":"500","7565":"500","7566":"500","7567":"500","7568":"500","7569":"500","7570":"500","7571":"500","7572":"500","7573":"500","7574":"500","7575":"500","7576":"500","7577":"500","7578":"500","7579":"500","7580":"500","7581":"500","7582":"500","7583":"500","7584":"500","7585":"500","7586":"500","7587":"500","7588":"500","7589":"500","7590":"500","7591":"500","7592":"500","7593":"500","7594":"500","7595":"500","7596":"500","7597":"500","7598":"500","7599":"500","7600":"500","7601":"500","7602":"500","7603":"500","7604":"500","7605":"500","7606":"500","7607":"500","7608":"500","7609":"500","7610":"500","7611":"500","7612":"500","7613":"500","7614":"500","7615":"500","7616":"500","7617":"500","7618":"500","7619":"500","7620":"500","7621":"500","7622":"500","7623":"500","7624":"500","7625":"500","7626":"500","7627":"500","7628":"500","7629":"500","7630":"500","7631":"500","7632":"500","7633":"500","7634":"500","7635":"500","7636":"500","7637":"500","7638":"500","7639":"500","7640":"500","7641":"500","7642":"500","7643":"500","7644":"500","7645":"500","7646":"500","7647":"500","7648":"500","7649":"500","7650":"500","7651":"500","7652":"500","7653":"500","7654":"500","7655":"500","7656":"500","7657":"500","7658":"500","7659":"500","7660":"500","7661":"500","7662":"500","7663":"500","7664":"500","7665":"500","7666":"500","7667":"500","7668":"500","7669":"500","7670":"500","7671":"500","7672":"500","7673":"500","7674":"500","7675":"500","7676":"500","7677":"500","7678":"500","7679":"500","7680":"500","7681":"500","7682":"500","7683":"500","7684":"500","7685":"500","7686":"500","7687":"500","7688":"500","7689":"500","7690":"500","7691":"500","7692":"500","7693":"500","7694":"500","7695":"500","7696":"500","7697":"500","7698":"500","7699":"500","7700":"500","7701":"500","7702":"500","7703":"500","7704":"500","7705":"500","7706":"500","7707":"500","7708":"500","7709":"500","7710":"500","7711":"500","7712":"500","7713":"500","7714":"500","7715":"500","7716":"500","7717":"500","7718":"500","7719":"500","7720":"500","7721":"500","7722":"500","7723":"500","7724":"500","7725":"500","7726":"500","7727":"500","7728":"500","7729":"500","7730":"500","7731":"500","7732":"500","7733":"500","7734":"500","7735":"500","7736":"500","7737":"500","7738":"500","7739":"500","7740":"500","7741":"500","7742":"500","7743":"500","7744":"500","7745":"500","7746":"500","7747":"500","7748":"500","7749":"500","7750":"500","7751":"500","7752":"500","7753":"500","7754":"500","7755":"500","7756":"500","7757":"500","7758":"500","7759":"500","7760":"500","7761":"500","7762":"500","7763":"500","7764":"500","7765":"500","7766":"500","7767":"500","7768":"500","7769":"500","7770":"500","7771":"500","7772":"500","7773":"500","7774":"500","7775":"500","7776":"500","7777":"500","7778":"500","7779":"500","7780":"500","7781":"500","7782":"500","7783":"500","7784":"500","7785":"500","7786":"500","7787":"500","7788":"500","7789":"500","7790":"500","7791":"500","7792":"500","7793":"500","7794":"500","7795":"500","7796":"500","7797":"500","7798":"500","7799":"500","7800":"500","7801":"500","7802":"500","7803":"500","7804":"500","7805":"500","7806":"500","7807":"500","7808":"500","7809":"500","7810":"500","7811":"500","7812":"500","7813":"500","7814":"500","7815":"500","7816":"500","7817":"500","7818":"500","7819":"500","7820":"500","7821":"500","7822":"500","7823":"500","7824":"500","7825":"500","7826":"500","7827":"500","7828":"500","7829":"500","7830":"500","7831":"500","7832":"500","7833":"500","7834":"500","7835":"500","7836":"500","7837":"500","7838":"500","7839":"500","7840":"500","7841":"500","7842":"500","7843":"500","7844":"500","7845":"500","7846":"500","7847":"500","7848":"500","7849":"500","7850":"500","7851":"500","7852":"500","7853":"500","7854":"500","7855":"500","7856":"500","7857":"500","7858":"500","7859":"500","7860":"500","7861":"500","7862":"500","7863":"500","7864":"500","7865":"500","7866":"500","7867":"500","7868":"500","7869":"500","7870":"500","7871":"500","7872":"500","7873":"500","7874":"500","7875":"500","7876":"500","7877":"500","7878":"500","7879":"500","7880":"500","7881":"500","7882":"500","7883":"500","7884":"500","7885":"500","7886":"500","7887":"500","7888":"500","7889":"500","7890":"500","7891":"500","7892":"500","7893":"500","7894":"500","7895":"500","7896":"500","7897":"500","7898":"500","7899":"500","7900":"500","7901":"500","7902":"500","7903":"500","7904":"500","7905":"500","7906":"500","7907":"500","7908":"500","7909":"500","7910":"500","7911":"500","7912":"500","7913":"500","7914":"500","7915":"500","7916":"500","7917":"500","7918":"500","7919":"500","7920":"500","7921":"500","7922":"500","7923":"500","7924":"500","7925":"500","7926":"500","7927":"500","7928":"500","7929":"500","7930":"500","7931":"500","7932":"500","7933":"500","7934":"500","7935":"500","7936":"500","7937":"500","7938":"500","7939":"500","7940":"500","7941":"500","7942":"500","7943":"500","7944":"500","7945":"500","7946":"500","7947":"500","7948":"500","7949":"500","7950":"500","7951":"500","7952":"500","7953":"500","7954":"500","7955":"500","7956":"500","7957":"500","7958":"500","7959":"500","7960":"500","7961":"500","7962":"500","7963":"500","7964":"500","7965":"500","7966":"500","7967":"500","7968":"500","7969":"500","7970":"500","7971":"500","7972":"500","7973":"500","7974":"500","7975":"500","7976":"500","7977":"500","7978":"500","7979":"500","7980":"500","7981":"500","7982":"500","7983":"500","7984":"500","7985":"500","7986":"500","7987":"500","7988":"500","7989":"500","7990":"500","7991":"500","7992":"500","7993":"500","7994":"500","7995":"500","7996":"500","7997":"500","7998":"500","7999":"500","8000":"500","8001":"500","8002":"500","8003":"500","8004":"500","8005":"500","8006":"500","8007":"500","8008":"500","8009":"500","8010":"500","8011":"500","8012":"500","8013":"500","8014":"500","8015":"500","8016":"500","8017":"500","8018":"500","8019":"500","8020":"500","8021":"500","8022":"500","8023":"500","8024":"500","8025":"500","8026":"500","8027":"500","8028":"500","8029":"500","8030":"500","8031":"500","8032":"500","8033":"500","8034":"500","8035":"500","8036":"500","8037":"500","8038":"500","8039":"500","8040":"500","8041":"500","8042":"500","8043":"500","8044":"500","8045":"500","8046":"500","8047":"500","8048":"500","8049":"500","8050":"500","8051":"500","8052":"500","8053":"500","8054":"500","8055":"500","8056":"500","8057":"500","8058":"500","8059":"500","8060":"500","8061":"500","8062":"500","8063":"500","8064":"500","8065":"500","8066":"500","8067":"500","8068":"500","8069":"500","8070":"500","8071":"500","8072":"500","8073":"500","8074":"500","8075":"500","8076":"500","8077":"500","8078":"500","8079":"500","8080":"500","8081":"500","8082":"500","8083":"500","8084":"500","8085":"500","8086":"500","8087":"500","8088":"500","8089":"500","8090":"500","8091":"500","8092":"500","8093":"500","8094":"500","8095":"500","8096":"500","8097":"500","8098":"500","8099":"500","8100":"500","8101":"500","8102":"500","8103":"500","8104":"500","8105":"500","8106":"500","8107":"500","8108":"500","8109":"500","8110":"500","8111":"500","8112":"500","8113":"500","8114":"500","8115":"500","8116":"500","8117":"500","8118":"500","8119":"500","8120":"500","8121":"500","8122":"500","8123":"500","8124":"500","8125":"500","8126":"500","8127":"500","8128":"500","8129":"500","8130":"500","8131":"500","8132":"500","8133":"500","8134":"500","8135":"500","8136":"500","8137":"500","8138":"500","8139":"500","8140":"500","8141":"500","8142":"500","8143":"500","8144":"500","8145":"500","8146":"500","8147":"500","8148":"500","8149":"500","8150":"500","8151":"500","8152":"500","8153":"500","8154":"500","8155":"500","8156":"500","8157":"500","8158":"500","8159":"500","8160":"500","8161":"500","8162":"500","8163":"500","8164":"500","8165":"500","8166":"500","8167":"500","8168":"500","8169":"500","8170":"500","8171":"500","8172":"500","8173":"500","8174":"500","8175":"-500","8176":"-500","8177":"-500","8178":"-500","8179":"-500","8180":"-500","8181":"-500","8182":"-500","8183":"-500","8184":"-500","8185":"-500","8186":"-500","8187":"-500","8188":"-500","8189":"-500","8190":"-500","8191":"-500","8192":"-500","8193":"-500","8194":"-500","8195":"-500","8196":"-500","8197":"-500","8198":"-500","8199":"-500","8200":"-500","8201":"-500","8202":"-500","8203":"-500","8204":"-500","8205":"-500","8206":"-500","8207":"-500","8208":"-500","8209":"-500","8210":"-500","8211":"-500","8212":"-500","8213":"-500","8214":"-500","8215":"-500","8216":"-500","8217":"-500","8218":"-500","8219":"-500","8220":"-500","8221":"-500","8222":"-500","8223":"-500","8224":"-500","8225":"-500","8226":"-500","8227":"-500","8228":"-500","8229":"-500","8230":"-500","8231":"-500","8232":"-500","8233":"-500","8234":"-500","8235":"-500","8236":"-500","8237":"-500","8238":"-500","8239":"-500","8240":"-500","8241":"-500","8242":"-500","8243":"-500","8244":"-500","8245":"-500","8246":"-500","8247":"-500","8248":"-500","8249":"-500","8250":"-500","8251":"-500","8252":"-500","8253":"-500","8254":"-500","8255":"-500","8256":"-500","8257":"-500","8258":"-500","8259":"-500","8260":"-500","8261":"-500","8262":"-500","8263":"-500","8264":"-500","8265":"-500","8266":"-500","8267":"-500","8268":"-500","8269":"-500","8270":"-500","8271":"-500","8272":"-500","8273":"-500","8274":"-500","8275":"-500","8276":"-500","8277":"-500","8278":"-500","8279":"-500","8280":"-500","8281":"-500","8282":"-500","8283":"-500","8284":"-500","8285":"-500","8286":"-500","8287":"-500","8288":"-500","8289":"-500","8290":"-500","8291":"-500","8292":"-500","8293":"-500","8294":"-500","8295":"-500","8296":"-500","8297":"-500","8298":"-500","8299":"-500","8300":"-500","8301":"-500","8302":"-500","8303":"-500","8304":"-500","8305":"-500","8306":"-500","8307":"-500","8308":"-500","8309":"-500","8310":"-500","8311":"-500","8312":"-500","8313":"-500","8314":"-500","8315":"-500","8316":"-500","8317":"-500","8318":"-500","8319":"-500","8320":"-500","8321":"-500","8322":"-500","8323":"-500","8324":"-500","8325":"-500","8326":"-500","8327":"-500","8328":"-500","8329":"-500","8330":"-500","8331":"-500","8332":"-500","8333":"-500","8334":"-500","8335":"-500","8336":"-500","8337":"-500","8338":"-500","8339":"-500","8340":"-500","8341":"-500","8342":"-500","8343":"-500","8344":"-500","8345":"-500","8346":"-500","8347":"-500","8348":"-500","8349":"-500","8350":"-500","8351":"-500","8352":"-500","8353":"-500","8354":"-500","8355":"-500","8356":"-500","8357":"-500","8358":"-500","8359":"-500","8360":"-500","8361":"-500","8362":"-500","8363":"-500","8364":"-500","8365":"-500","8366":"-500","8367":"-500","8368":"-500","8369":"-500","8370":"-500","8371":"-500","8372":"-500","8373":"-500","8374":"-500","8375":"-500","8376":"-500","8377":"-500","8378":"-500","8379":"-500","8380":"-500","8381":"-500","8382":"-500","8383":"-500","8384":"-500","8385":"-500","8386":"-500","8387":"-500","8388":"-500","8389":"-500","8390":"-500","8391":"-500","8392":"-500","8393":"-500","8394":"-500","8395":"-500","8396":"-500","8397":"-500","8398":"-500","8399":"-500","8400":"-500","8401":"-500","8402":"-500","8403":"-500","8404":"-500","8405":"-500","8406":"-500","8407":"-500","8408":"-500","8409":"-500","8410":"-500","8411":"-500","8412":"-500","8413":"-500","8414":"-500","8415":"-500","8416":"-500","8417":"-500","8418":"-500","8419":"-500","8420":"-500","8421":"-500","8422":"-500","8423":"-500","8424":"-500","8425":"-500","8426":"-500","8427":"-500","8428":"-500","8429":"-500","8430":"-500","8431":"-500","8432":"-500","8433":"-500","8434":"-500","8435":"-500","8436":"-500","8437":"-500","8438":"-500","8439":"-500","8440":"-500","8441":"-500","8442":"-500","8443":"-500","8444":"-500","8445":"-500","8446":"-500","8447":"-500","8448":"-500","8449":"-500","8450":"-500","8451":"-500","8452":"-500","8453":"-500","8454":"-500","8455":"-500","8456":"-500","8457":"-500","8458":"-500","8459":"-500","8460":"-500","8461":"-500","8462":"-500","8463":"-500","8464":"-500","8465":"-500","8466":"-500","8467":"-500","8468":"-500","8469":"-500","8470":"-500","8471":"-500","8472":"-500","8473":"-500","8474":"-500","8475":"-500","8476":"-500","8477":"-500","8478":"-500","8479":"-500","8480":"-500","8481":"-500","8482":"-500","8483":"-500","8484":"-500","8485":"-500","8486":"-500","8487":"-500","8488":"-500","8489":"-500","8490":"-500","8491":"-500","8492":"-500","8493":"-500","8494":"-500","8495":"-500","8496":"-500","8497":"-500","8498":"-500","8499":"-500","8500":"-500","8501":"-500","8502":"-500","8503":"-500","8504":"-500","8505":"-500","8506":"-500","8507":"-500","8508":"-500","8509":"-500","8510":"-500","8511":"-500","8512":"-500","8513":"-500","8514":"-500","8515":"-500","8516":"-500","8517":"-500","8518":"-500","8519":"-500","8520":"-500","8521":"-500","8522":"-500","8523":"-500","8524":"-500","8525":"-500","8526":"-500","8527":"-500","8528":"-500","8529":"-500","8530":"-500","8531":"-500","8532":"-500","8533":"-500","8534":"-500","8535":"-500","8536":"-500","8537":"-500","8538":"-500","8539":"-500","8540":"-500","8541":"-500","8542":"-500","8543":"-500","8544":"-500","8545":"-500","8546":"-500","8547":"-500","8548":"-500","8549":"-500","8550":"-500","8551":"-500","8552":"-500","8553":"-500","8554":"-500","8555":"-500","8556":"-500","8557":"-500","8558":"-500","8559":"-500","8560":"-500","8561":"-500","8562":"-500","8563":"-500","8564":"-500","8565":"-500","8566":"-500","8567":"-500","8568":"-500","8569":"-500","8570":"-500","8571":"-500","8572":"-500","8573":"-500","8574":"-500","8575":"-500","8576":"-500","8577":"-500","8578":"-500","8579":"-500","8580":"-500","8581":"-500","8582":"-500","8583":"-500","8584":"-500","8585":"-500","8586":"-500","8587":"-500","8588":"-500","8589":"-500","8590":"-500","8591":"-500","8592":"-500","8593":"-500","8594":"-500","8595":"-500","8596":"-500","8597":"-500","8598":"-500","8599":"-500","8600":"-500","8601":"-500","8602":"-500","8603":"-500","8604":"-500","8605":"-500","8606":"-500","8607":"-500","8608":"-500","8609":"-500","8610":"-500","8611":"-500","8612":"-500","8613":"-500","8614":"-500","8615":"-500","8616":"-500","8617":"-500","8618":"-500","8619":"-500","8620":"-500","8621":"-500","8622":"-500","8623":"-500","8624":"-500","8625":"-500","8626":"-500","8627":"-500","8628":"-500","8629":"-500","8630":"-500","8631":"-500","8632":"-500","8633":"-500","8634":"-500","8635":"-500","8636":"-500","8637":"-500","8638":"-500","8639":"-500","8640":"-500","8641":"-500","8642":"-500","8643":"-500","8644":"-500","8645":"-500","8646":"-500","8647":"-500","8648":"-500","8649":"-500","8650":"-500","8651":"-500","8652":"-500","8653":"-500","8654":"-500","8655":"-500","8656":"-500","8657":"-500","8658":"-500","8659":"-500","8660":"-500","8661":"-500","8662":"-500","8663":"-500","8664":"-500","8665":"-500","8666":"-500","8667":"-500","8668":"-500","8669":"-500","8670":"-500","8671":"-500","8672":"-500","8673":"-500","8674":"-500","8675":"-500","8676":"-500","8677":"-500","8678":"-500","8679":"-500","8680":"-500","8681":"-500","8682":"-500","8683":"-500","8684":"-500","8685":"-500","8686":"-500","8687":"-500","8688":"-500","8689":"-500","8690":"-500","8691":"-500","8692":"-500","8693":"-500","8694":"-500","8695":"-500","8696":"-500","8697":"-500","8698":"-500","8699":"-500","8700":"-500","8701":"-500","8702":"-500","8703":"-500","8704":"-500","8705":"-500","8706":"-500","8707":"-500","8708":"-500","8709":"-500","8710":"-500","8711":"-500","8712":"-500","8713":"-500","8714":"-500","8715":"-500","8716":"-500","8717":"-500","8718":"-500","8719":"-500","8720":"-500","8721":"-500","8722":"-500","8723":"-500","8724":"-500","8725":"-500","8726":"-500","8727":"-500","8728":"-500","8729":"-500","8730":"-500","8731":"-500","8732":"-500","8733":"-500","8734":"-500","8735":"-500","8736":"-500","8737":"-500","8738":"-500","8739":"-500","8740":"-500","8741":"-500","8742":"-500","8743":"-500","8744":"-500","8745":"-500","8746":"-500","8747":"-500","8748":"-500","8749":"-500","8750":"-500","8751":"-500","8752":"-500","8753":"-500","8754":"-500","8755":"-500","8756":"-500","8757":"-500","8758":"-500","8759":"-500","8760":"-500","8761":"-500","8762":"-500","8763":"-500","8764":"-500","8765":"-500","8766":"100","8767":"-500","8768":"-500","8769":"-500","8770":"-500","8771":"-500","8772":"-500","8773":"-500","8774":"-500","8775":"-500","8776":"-500","8777":"-500","8778":"-500","8779":"-500","8780":"-500","8781":"-500","8782":"-500","8783":"-500","8784":"-500","8785":"-500","8786":"-500","8787":"-500","8788":"-500","8789":"-500","8790":"-500","8791":"-500","8792":"-500","8793":"-500","8794":"-500","8795":"-500","8796":"-500","8797":"-500","8798":"-500","8799":"-500","8800":"-500","8801":"-500","8802":"-500","8803":"-500","8804":"-500","8805":"-500","8806":"-500","8807":"-500","8808":"-500","8809":"-500","8810":"-500","8811":"-500","8812":"-500","8813":"-500","8814":"-500","8815":"-500","8816":"-500","8817":"-500","8818":"-500","8819":"-500","8820":"-500","8821":"-500","8822":"-500","8823":"-500","8824":"-500","8825":"-500","8826":"-500","8827":"-500","8828":"-500","8829":"-500","8830":"-500","8831":"-500","8832":"-500","8833":"-500","8834":"-500","8835":"-500","8836":"-500","8837":"-500","8838":"-500","8839":"-500","8840":"-500","8841":"-500","8842":"-500","8843":"-500","8844":"-500","8845":"-500","8846":"-500","8847":"-500","8848":"-500","8849":"-500","8850":"-500","8851":"-500","8852":"-500","8853":"-500","8854":"-500","8855":"-500","8856":"-500","8857":"-500","8858":"-500","8859":"-500","8860":"-500","8861":"-500","8862":"-500","8863":"-500","8864":"-500","8865":"-500","8866":"-500","8867":"-500","8868":"-500","8869":"-500","8870":"-500","8871":"-500","8872":"-500","8873":"-500","8874":"-500","8875":"-500","8876":"-500","8877":"-500","8878":"-500","8879":"-500","8880":"-500","8881":"-500","8882":"-500","8883":"-500","8884":"-500","8885":"-500","8886":"-500","8887":"-500","8888":"-500","8889":"-500","8890":"-500","8891":"-500","8892":"-500","8893":"-500","8894":"-500","8895":"-500","8896":"-500","8897":"-500","8898":"-500","8899":"-500","8900":"-500","8901":"-500","8902":"-500","8903":"-500","8904":"-500","8905":"-500","8906":"-500","8907":"-500","8908":"-500","8909":"-500","8910":"-500","8911":"-500","8912":"-500","8913":"-500","8914":"-500","8915":"-500","8916":"-500","8917":"-500","8918":"-500","8919":"-500","8920":"-500","8921":"-500","8922":"-500","8923":"-500","8924":"-500","8925":"-500","8926":"-500","8927":"-500","8928":"-500","8929":"-500","8930":"-500","8931":"-500","8932":"-500","8933":"-500","8934":"-500","8935":"-500","8936":"-500","8937":"-500","8938":"-500","8939":"-500","8940":"-500","8941":"-500","8942":"-500","8943":"-500","8944":"-500","8945":"-500","8946":"-500","8947":"-500","8948":"-500","8949":"-500","8950":"-500","8951":"-500","8952":"-500","8953":"-500","8954":"-500","8955":"-500","8956":"-500","8957":"-500","8958":"-500","8959":"-500","8960":"-500","8961":"-500","8962":"-500","8963":"-500","8964":"-500","8965":"-500","8966":"-500","8967":"-500","8968":"-500","8969":"-500","8970":"-500","8971":"-500","8972":"-500","8973":"-500","8974":"-500","8975":"-500","8976":"-500","8977":"-500","8978":"-500","8979":"-500","8980":"-500","8981":"-500","8982":"-500","8983":"-500","8984":"-500","8985":"-500","8986":"-500","8987":"-500","8988":"-500","8989":"-500","8990":"-500","8991":"-500","8992":"-500","8993":"-500","8994":"-500","8995":"-500","8996":"-500","8997":"-500","8998":"-500","8999":"-500","9000":"-500","9001":"-500","9002":"-500","9003":"-500","9004":"-500","9005":"-500","9006":"-500","9007":"-500","9008":"-500","9009":"-500","9010":"-500","9011":"-500","9012":"-500","9013":"-500","9014":"-500","9015":"-500","9016":"-500","9017":"-500","9018":"-500","9019":"-500","9020":"-500","9021":"-500","9022":"-500","9023":"-500","9024":"-500","9025":"-500","9026":"-500","9027":"-500","9028":"-500","9029":"-500","9030":"-500","9031":"-500","9032":"-500","9033":"-500","9034":"-500","9035":"-500","9036":"-500","9037":"-500","9038":"-500","9039":"-500","9040":"-500","9041":"-500","9042":"-500","9043":"-500","9044":"-500","9045":"-500","9046":"-500","9047":"-500","9048":"-500","9049":"-500","9050":"-500","9051":"-500","9052":"-500","9053":"-500","9054":"-500","9055":"-500","9056":"-500","9057":"-500","9058":"-500","9059":"-500","9060":"-500","9061":"-500","9062":"-500","9063":"-500","9064":"-500","9065":"-500","9066":"-500","9067":"-500","9068":"-500","9069":"-500","9070":"-500","9071":"-500","9072":"-500","9073":"-500","9074":"-500","9075":"-500","9076":"-500","9077":"-500","9078":"-500","9079":"-500","9080":"-500","9081":"-500","9082":"-500","9083":"-500","9084":"-500","9085":"-500","9086":"-500","9087":"-500","9088":"-500","9089":"-500","9090":"-500","9091":"-500","9092":"-500","9093":"-500","9094":"-500","9095":"-500","9096":"-500","9097":"-500","9098":"-500","9099":"-500","9100":"-500","9101":"-500","9102":"-500","9103":"-500","9104":"-500","9105":"-500","9106":"-500","9107":"-500","9108":"-500","9109":"-500","9110":"-500","9111":"-500","9112":"-500","9113":"-500","9114":"-500","9115":"-500","9116":"-500","9117":"-500","9118":"-500","9119":"-500","9120":"-500","9121":"-500","9122":"-500","9123":"-500","9124":"-500","9125":"-500","9126":"-500","9127":"-500","9128":"-500","9129":"-500","9130":"-500","9131":"-500","9132":"-500","9133":"-500","9134":"-500","9135":"-500","9136":"-500","9137":"-500","9138":"-500","9139":"-500","9140":"-500","9141":"-500","9142":"-500","9143":"-500","9144":"-500","9145":"-500","9146":"-500","9147":"-500","9148":"-500","9149":"-500","9150":"-500","9151":"-500","9152":"-500","9153":"-500","9154":"-500","9155":"-500","9156":"-400","9157":"-400","9158":"-400","9159":"-400","9160":"-400","9161":"-400","9162":"-600","9163":"-600","9164":"400","9165":"400","9166":"200","9167":"-200","9168":"-200","9169":"-200","9170":"-200","9171":"400","9172":"400","9173":"400","9174":"400","9175":"200","9176":"-600","9177":"-600","9178":"-600","9179":"200","9180":"200","9181":"200","9182":"200","9183":"200","9184":"-400","9185":"-400","9186":"-400","9187":"-400","9188":"400","9189":"400","9190":"400","9191":"400","9192":"400","9193":"400","9194":"-400","9195":"-400","9196":"-400","9197":"-400","9198":"-400","9199":"-400","9200":"400","9201":"400","9202":"400","9203":"400","9204":"-600","9205":"200","9206":"600","9207":"600","9208":"-200","9209":"-200","9210":"-200","9211":"-400","9212":"-400","9213":"200","9214":"200","9215":"600","9216":"600","9217":"600","9218":"200","9219":"400","9220":"400","9221":"400","9222":"400","9223":"-200","9224":"-200","9225":"-200","9226":"400","9227":"-200","9228":"400","9229":"-400","9230":"-400","9231":"-400","9232":"-400","9233":"-600","9234":"-600","9235":"200","9236":"200","9237":"200","9238":"200","9239":"-400","9240":"-400","9241":"-400","9242":"200","9243":"-400","9244":"-400","9245":"-400","9246":"200","9247":"400","9248":"-400","9249":"400","9250":"400","9251":"400","9252":"400","9253":"800","9254":"400","9255":"-200","9256":"600","9257":"600","9258":"600","9259":"-600","9260":"-400","9261":"-400","9262":"-400","9263":"-200","9264":"200","9265":"-600","9266":"-600","9267":"-400","9268":"-200","9269":"-200","9270":"-200","9271":"-200","9272":"-200","9273":"-200","9274":"-200","9275":"-200","9276":"-200","9277":"-400","9278":"400","9279":"400","9280":"400","9281":"400","9282":"400","9283":"400","9284":"400","9285":"400","9286":"400","9287":"400","9288":"400","9289":"400","9290":"400","9291":"400","9292":"200","9293":"-400","9294":"-600","9295":"-400","9296":"-400","9297":"-400","9298":"-800","9299":"-600","9300":"-400","9301":"-400","9302":"400","9303":"400","9304":"-800","9305":"400","9306":"600","9307":"600","9308":"600","9309":"600","9310":"600","9311":"-600","9312":"-200","9313":"-200","9314":"-200","9315":"200","9316":"200","9317":"400","9318":"400","9319":"400","9320":"400","9321":"400","9322":"200","9323":"600","9324":"200","9325":"200","9326":"-400","9327":"-400","9328":"-400","9329":"-400","9330":"-400","9331":"-400","9332":"-200","9333":"-200","9334":"-200","9335":"-200","9336":"-200","9337":"-200","9338":"-200","9339":"-200","9340":"-200","9341":"600","9342":"600","9343":"600","9344":"-600","9345":"-200","9346":"-200","9347":"200","9348":"400","9349":"200","9350":"-600","9351":"-600","9352":"-600","9353":"-600","9354":"-400","9355":"200","9356":"-400","9357":"-400","9358":"-400","9359":"-400","9360":"-200","9361":"-600","9362":"-600","9363":"-400","9364":"-400","9365":"-400","9366":"400","9367":"-400","9368":"-1000","9369":"-200","9370":"-200","9371":"-400","9372":"-400","9373":"-200","9374":"600","9375":"600","9376":"600","9377":"600","9378":"400","9379":"-400","9380":"-400","9381":"400","9382":"400","9383":"400","9384":"400","9385":"400","9386":"-400","9387":"-400","9388":"-400","9389":"-600","9390":"-600","9391":"-600","9392":"-600","9393":"-200","9394":"-400","9395":"200","9396":"-1000","9397":"-1000","9398":"-400","9399":"-400","9400":"-400","9401":"-400","9402":"-600","9403":"-600","9404":"-600","9405":"-600","9406":"-400","9407":"-400","9408":"-400","9409":"-400","9410":"400","9411":"400","9412":"600","9413":"600","9414":"-200","9415":"600","9416":"400","9417":"-200","9418":"-200","9419":"-400","9420":"600","9421":"-200","9422":"-200","9423":"-200","9424":"-600","9425":"-400","9426":"-400","9427":"400","9428":"400","9429":"-200","9430":"200","9431":"200","9432":"200","9433":"200","9434":"-400","9435":"-400","9436":"-600","9437":"-400","9438":"-400","9439":"-400","9440":"-400","9441":"-400","9442":"-400","9443":"-600","9444":"400","9445":"400","9446":"400","9447":"-400","9448":"-400","9449":"-400","9450":"-400","9451":"600","9452":"-600","9453":"-600","9454":"-600","9455":"-600","9456":"200","9457":"400","9458":"200","9459":"600","9460":"400","9461":"-200","9462":"-400","9463":"-600","9464":"-600","9465":"-400","9466":"-800","9467":"-400","9468":"-400","9469":"-400","9470":"-400","9471":"-400","9472":"-400","9473":"-400","9474":"-400","9475":"400","9476":"400","9477":"400","9478":"-600","9479":"-200","9480":"-200","9481":"-200","9482":"-200","9483":"-200","9484":"200","9485":"200","9486":"400","9487":"200","9488":"400","9489":"400","9490":"400","9491":"-400","9492":"400","9493":"-400","9494":"-600","9495":"600","9496":"600","9497":"600","9498":"600","9499":"600","9500":"-400","9501":"-400","9502":"-400","9503":"200","9504":"-200","9505":"400","9506":"400","9507":"400","9508":"400","9509":"-400","9510":"-400","9511":"-600","9512":"-400","9513":"400","9514":"600","9515":"600","9516":"-600","9517":"-600","9518":"-600","9519":"-600","9520":"-600","9521":"-600","9522":"-600","9523":"-600","9524":"-600","9525":"-600","9526":"400","9527":"400","9528":"400","9529":"400","9530":"400","9531":"-600","9532":"-600","9533":"-600","9534":"-400","9535":"-400","9536":"-400","9537":"-400","9538":"-400","9539":"400","9540":"400","9541":"600","9542":"400","9543":"400","9544":"-200","9545":"-400","9546":"-1000","9547":"-1000","9548":"-1000","9549":"-400","9550":"-400","9551":"-400","9552":"-400","9553":"-400","9554":"-400","9555":"-400","9556":"-200","9557":"-200","9558":"-400","9559":"-400","9560":"-600","9561":"-200","9562":"200","9563":"400","9564":"400","9565":"200","9566":"400","9567":"400","9568":"200","9569":"400","9570":"200","9571":"200","9572":"400","9573":"200","9574":"200","9575":"400","9576":"-400","9577":"-400","9578":"-400","9579":"-400","9580":"-400","9581":"-400","9582":"400","9583":"400","9584":"-400","9585":"400","9586":"400","9587":"400","9588":"400","9589":"-400","9590":"-400","9591":"-400","9592":"-400","9593":"-400","9594":"-400","9595":"-400","9596":"-400","9597":"-400","9598":"-400","9599":"400","9600":"400","9601":"400","9602":"-600","9603":"-400","9604":"-400","9605":"-400","9606":"-400","9607":"-200","9608":"-400","9609":"-400","9610":"-400","9611":"-400","9612":"-400","9613":"-400","9614":"-400","9615":"-400","9616":"-400","9617":"-200","9618":"-200","9619":"-200","9620":"-400","9621":"-400","9622":"-400","9623":"-400","9624":"-400","9625":"-400","9626":"-400","9627":"200","9628":"200","9629":"-400","9630":"-200","9631":"-600","9632":"-600","9633":"-600","9634":"-600","9635":"-600","9636":"-400","9637":"400","9638":"400","9639":"400","9640":"400","9641":"400","9642":"-400","9643":"-400","9644":"400","9645":"-200","9646":"-600","9647":"-400","9648":"-400","9649":"-400","9650":"-400","9651":"-400","9652":"-400","9653":"-600","9654":"-600","9655":"-600","9656":"-600","9657":"-600","9658":"-600","9659":"-600","9660":"-600","9661":"-400","9662":"-400","9663":"-400","9664":"-400","9665":"-400","9666":"-400","9667":"-400","9668":"-400","9669":"-400","9670":"-400","9671":"-400","9672":"-400","9673":"-200","9674":"-200","9675":"-200","9676":"-400","9677":"-200","9678":"-200","9679":"-200","9680":"-400","9681":"-400","9682":"-1000","9683":"200","9684":"-200","9685":"-400","9686":"-400","9687":"-200","9688":"-200","9689":"-400","9690":"-400","9691":"-600","9692":"-600","9693":"-400","9694":"-800","9695":"-800","9696":"-400","9697":"-400","9698":"-400","9699":"-200","9700":"600","9701":"-600","9702":"-400","9703":"-400","9704":"-600","9705":"-200","9706":"600","9707":"-400","9708":"-400","9709":"-400","9710":"-600","9711":"-600","9712":"-600","9713":"-600","9714":"-600","9715":"-600","9716":"-600","9717":"200","9718":"400","9719":"-400","9720":"-600","9721":"-600","9722":"400","9723":"400","9724":"-400","9725":"-200","9726":"-200","9727":"-200","9728":"-400","9729":"-400","9730":"-400","9731":"-400","9732":"-400","9733":"-400","9734":"-600","9735":"-600","9736":"-400","9737":"-400","9738":"-400","9739":"-400","9740":"-400","9741":"-400","9742":"-400","9743":"-400","9744":"-400","9745":"-400","9746":"-400","9747":"-200","9748":"-200","9749":"600","9750":"600","9751":"600","9752":"600","9753":"600","9754":"-200","9755":"-200","9756":"-200","9757":"-200","9758":"-200","9759":"-400","9760":"-400","9761":"-400","9762":"-400","9763":"-400","9764":"-400","9765":"-400","9766":"-400","9767":"-400","9768":"-400","9769":"-400","9770":"-400","9771":"-400","9772":"-400","9773":"-600","9774":"-600","9775":"-600","9776":"-600","9777":"-400","9778":"-400","9779":"-400","9780":"-400","9781":"-400","9782":"-400","9783":"-600","9784":"-400","9785":"-400","9786":"-400","9787":"-400","9788":"-400","9789":"-400","9790":"-400","9791":"-400","9792":"200","9793":"400","9794":"400","9795":"-600","9796":"-600","9797":"-600","9798":"-600","9799":"-600","9800":"-600","9801":"-600","9802":"-600","9803":"-200","9804":"-400","9805":"-400","9806":"-400","9807":"-400","9808":"-400","9809":"-400","9810":"-400","9811":"400","9812":"-400","9813":"-200","9814":"-200","9815":"-200","9816":"-400","9817":"-400","9818":"-400","9819":"-400","9820":"-400","9821":"400","9822":"400","9823":"200","9824":"-800","9825":"-600","9826":"-600","9827":"-200","9828":"-400","9829":"400","9830":"-200","9831":"400","9832":"-600","9833":"-400","9834":"-400","9835":"-400","9836":"-400","9837":"-400","9838":"-400","9839":"-200","9840":"-400","9841":"-400","9842":"-400","9843":"-200","9844":"-200","9845":"-200","9846":"-500","9847":"-800","9848":"-800","9849":"-800","9850":"-500","9851":"-400","9852":"-400","9853":"-400","9854":"-400","9855":"-400","9856":"-400","9857":"-600","9858":"-400","9859":"-200","9860":"-200","9861":"-200","9862":"-200","9863":"400","9864":"-400","9865":"-400","9866":"-400","9867":"-200","9868":"-400","9869":"-400","9870":"-400","9871":"-400","9872":"-400","9873":"-200","9874":"-200","9875":"-200","9876":"-200","9877":"-200","9878":"-200","9879":"-400","9880":"-400","9881":"-400","9882":"-400","9883":"-400","9884":"-400","9885":"-400","9886":"-400","9887":"-400","9888":"-400","9889":"-400","9890":"-400","9891":"-400","9892":"-400","9893":"-400","9894":"-400","9895":"-400","9896":"-400","9897":"-400","9898":"-400","9899":"-400","9900":"-400","9901":"-400","9902":"-400","9903":"-400","9904":"-400","9905":"-400","9906":"-400","9907":"-400","9908":"-400","9909":"-400","9910":"-400","9911":"-400","9912":"-400","9913":"-400","9914":"-400","9915":"-400","9916":"-400","9917":"-400","9918":"-400","9919":"-600","9920":"-600","9921":"-400","9922":"-400","9923":"-400","9924":"-400","9925":"400","9926":"400","9927":"400","9928":"400","9929":"-400","9930":"-200","9931":"-200","9932":"-200","9933":"-200","9934":"-200","9935":"-600","9936":"-600","9937":"-400","9938":"-400","9939":"-400","9940":"-200","9941":"-200","9942":"-200","9943":"-400","9944":"-400","9945":"200","9946":"200","9947":"-400","9948":"-200","9949":"-200","9950":"-400","9951":"-400","9952":"-400","9953":"-400","9954":"-400","9955":"-400","9956":"-400","9957":"-400","9958":"-600","9959":"-600","9960":"-200","9961":"-400","9962":"-200","9963":"-400","9964":"-400","9965":"400","9966":"-600","9967":"-400","9968":"400","9969":"-400","9970":"-400","9971":"400","9972":"400","9973":"400","9974":"400","9975":"400","9976":"400","9977":"-400","9978":"-400","9979":"-400","9980":"-600","9981":"-400","9982":"200","9983":"-400","9984":"400","9985":"400","9986":"-200","9987":"-200","9988":"400","9989":"400","9990":"400","9991":"400","9992":"400","9993":"400","9994":"-400","9995":"-400","9996":"400","9997":"200","9998":"200","9999":"200","10000":"400","10001":"400","10002":"400","10003":"400","10004":"400","10005":"400","10006":"400","10007":"-400","10008":"-400","10009":"-400","10010":"600","10011":"-400","10012":"-400","10013":"-400","10014":"200","10015":"200","10016":"200","10017":"600","10018":"200","10019":"400","10020":"-200","10021":"-400","10022":"-200","10023":"-200","10024":"-400","10025":"-400","10026":"-400","10027":"-200","10028":"-200","10029":"-200","10030":"-200","10031":"-200","10032":"-200","10033":"-200","10034":"-200","10035":"400","10036":"400","10037":"-600","10038":"-200","10039":"-400","10040":"-400","10041":"-400","10042":"-400","10043":"-400","10044":"-400","10045":"-400","10046":"-400","10047":"-400","10048":"600","10049":"600","10050":"600","10051":"600","10052":"-200","10053":"-400","10054":"-200","10055":"400","10056":"-200","10057":"-200","10058":"-200","10059":"-400","10060":"600","10061":"400","10062":"400","10063":"400","10064":"200","10065":"200","10066":"-400","10067":"-400","10068":"-400","10069":"-400","10070":"400","10071":"-400","10072":"-400","10073":"-400","10074":"-400","10075":"200","10076":"200","10077":"-200","10078":"-200","10079":"-200","10080":"-200","10081":"600","10082":"200","10083":"200","10084":"-400","10085":"800","10086":"600","10087":"800","10088":"800","10089":"-400","10090":"-600","10091":"-600","10092":"-600","10093":"-400","10094":"-400","10095":"-400","10096":"-400","10097":"-400","10098":"-400","10099":"-400","10100":"400","10101":"400","10102":"200","10103":"-600","10104":"-600","10105":"-600","10106":"-200","10107":"-200","10108":"-400","10109":"-600","10110":"600","10111":"800","10112":"-200","10113":"600","10114":"-400","10115":"-400","10116":"-600","10117":"-600","10118":"-600","10119":"-400","10120":"-400","10121":"-400","10122":"-400","10123":"400","10124":"400","10125":"400","10126":"400","10127":"400","10128":"400","10129":"400","10130":"400","10131":"400","10132":"400","10133":"-400","10134":"-400","10135":"400","10136":"400","10137":"-400","10138":"200","10139":"-600","10140":"-600","10141":"400","10142":"400","10143":"-400","10144":"-200","10145":"-400","10146":"400","10147":"-400","10148":"600","10149":"-400","10150":"-400","10151":"-400","10152":"200","10153":"-400","10154":"400","10155":"400","10156":"400","10157":"-400","10158":"-200","10159":"-400","10160":"-400","10161":"-400","10162":"-400","10163":"400","10164":"-400","10165":"-450","10166":"-400","10167":"-400","10168":"-200","10169":"-400","10170":"-200","10171":"-400","10172":"-400","10173":"200","10174":"-200","10175":"-400","10176":"-200","10177":"200","10178":"200","10179":"-200","10180":"-200","10181":"400","10182":"-200","10183":"-800","10184":"-800","10185":"-800","10186":"-800","10187":"-800","10188":"-400","10189":"200","10190":"400","10191":"400","10192":"-600","10193":"200","10194":"200","10195":"400","10196":"-400","10197":"-400","10198":"-400","10199":"-400","10200":"-400","10201":"600","10202":"-800","10203":"-800","10204":"-800","10205":"-800","10206":"-800","10207":"-800","10208":"-800","10209":"-800","10210":"-800","10211":"-600","10212":"-800","10213":"-800","10214":"400","10215":"400","10216":"400","10217":"-400","10218":"800","10219":"-200","10220":"-200","10221":"400","10222":"800","10223":"800","10224":"-400","10225":"-400","10226":"-400","10227":"400","10228":"400","10229":"400","10230":"400","10231":"600","10232":"600","10233":"-200","10234":"600","10235":"400","10236":"400","10237":"600","10238":"-200","10239":"400","10240":"600","10241":"600","10242":"600","10243":"400","10244":"200","10245":"-600","10246":"400","10247":"600","10248":"200","10249":"600","10250":"-400","10251":"-400","10252":"200","10253":"200","10254":"200","10255":"200","10256":"200","10257":"400","10258":"-400","10259":"-200","10260":"600","10261":"600","10262":"-600","10263":"-400","10264":"-600","10265":"-600","10266":"-600","10267":"-600","10268":"200","10269":"200","10270":"200","10271":"400","10272":"200","10273":"-200","10274":"-400","10275":"-400","10276":"-400","10277":"-400","10278":"-400","10279":"200","10280":"400","10281":"400","10282":"200","10283":"-400","10284":"-400","10285":"-200","10286":"400","10287":"-200","10288":"600","10289":"600","10290":"600","10291":"400","10292":"400","10293":"600","10294":"200","10295":"-400","10296":"-400","10297":"600","10298":"-600","10299":"-600","10300":"-200","10301":"400","10302":"400","10303":"-400","10304":"-400","10305":"-400","10306":"400","10307":"400","10308":"-400","10309":"-400","10310":"-400","10311":"-400","10312":"-600","10313":"-600","10314":"-600","10315":"-600","10316":"-200","10317":"-400","10318":"200","10319":"-200","10320":"-400","10321":"-400","10322":"-400","10323":"400","10324":"800","10325":"400","10326":"400","10327":"400","10328":"-400","10329":"400","10330":"400","10331":"400","10332":"600","10333":"-400","10334":"-400","10335":"-200","10336":"-200","10337":"-200","10338":"-200","10339":"400","10340":"-400","10341":"-400","10342":"-400","10343":"-200","10344":"-400","10345":"-400","10346":"-400","10347":"-400","10348":"400","10349":"400","10350":"400","10351":"-400","10352":"-400","10353":"400","10354":"-400","10355":"400","10356":"400","10357":"-400","10358":"-400","10359":"-400","10360":"400","10361":"400","10362":"400","10363":"600","10364":"-600","10365":"-600","10366":"400","10367":"400","10368":"-400","10369":"1000","10370":"-400","10371":"-400","10372":"-600","10373":"-600","10374":"-600","10375":"-600","10376":"-600","10377":"-200","10378":"-400","10379":"-200","10380":"-600","10381":"-600","10382":"-400","10383":"-400","10384":"-400","10385":"-600","10386":"-200","10387":"200","10388":"-400","10389":"-400","10390":"-400","10391":"-400","10392":"-400","10393":"-400","10394":"-600","10395":"-600","10396":"-400","10397":"-400","10398":"-400","10399":"-400","10400":"-400","10401":"-400","10402":"400","10403":"400","10404":"-200","10405":"-200","10406":"-200","10407":"-400","10408":"-400","10409":"600","10410":"600","10411":"600","10412":"-400","10413":"-400","10414":"400","10415":"400","10416":"400","10417":"-400","10418":"-400","10419":"-400","10420":"-400","10421":"-400","10422":"-400","10423":"-400","10424":"-400","10425":"-400","10426":"-400","10427":"-200","10428":"-400","10429":"-400","10430":"-400","10431":"200","10432":"200","10433":"200","10434":"-400","10435":"400","10436":"-400","10437":"-400","10438":"-400","10439":"-400","10440":"-400","10441":"-400","10442":"-400","10443":"-400","10444":"-400","10445":"-400","10446":"-400","10447":"-400","10448":"-400","10449":"-400","10450":"-400","10451":"-400","10452":"400","10453":"400","10454":"-400","10455":"-400","10456":"-400","10457":"-400","10458":"-400","10459":"-400","10460":"-400","10461":"-400","10462":"-400","10463":"-400","10464":"-400","10465":"-400","10466":"-400","10467":"-400","10468":"-400","10469":"-400","10470":"-400","10471":"-400","10472":"-400","10473":"-400","10474":"-400","10475":"-400","10476":"-400","10477":"-200","10478":"-400","10479":"-400","10480":"-400","10481":"-400","10482":"-400","10483":"200","10484":"200","10485":"200","10486":"-400","10487":"-400","10488":"400","10489":"-400","10490":"-400","10491":"-400","10492":"-400","10493":"-400","10494":"-400","10495":"-400","10496":"400","10497":"400","10498":"400","10499":"400","10500":"600","10501":"-400","10502":"-400","10503":"-400","10504":"-400","10505":"-400","10506":"400","10507":"400","10508":"200","10509":"200","10510":"400","10511":"400","10512":"200","10513":"-400","10514":"-400","10515":"-400","10516":"-400","10517":"-400","10518":"-400","10519":"-400","10520":"-400","10521":"-400","10522":"-400","10523":"-400","10524":"400","10525":"200","10526":"-200","10527":"400","10528":"200","10529":"-600","10530":"-200","10531":"-200","10532":"-200","10533":"-400","10534":"-400","10535":"400","10536":"400","10537":"-400","10538":"-400","10539":"-400","10540":"-200","10541":"-600","10542":"-200","10543":"-800","10544":"-800","10545":"-400","10546":"-600","10547":"200","10548":"200","10549":"200","10550":"200","10551":"400","10552":"400","10553":"-200","10554":"-400","10555":"400","10556":"400","10557":"-600","10558":"-600","10559":"-400","10560":"-400","10561":"-400","10562":"-400","10563":"-400","10564":"-600","10565":"-600","10566":"-600","10567":"400","10568":"400","10569":"400","10570":"-400","10571":"-400","10572":"-200","10573":"-400","10574":"-400","10575":"-400","10576":"-400","10577":"400","10578":"-200","10579":"-200","10580":"200","10581":"200","10582":"200","10583":"200","10584":"600","10585":"-400","10586":"-400","10587":"-200","10588":"200","10589":"400","10590":"-200","10591":"-200","10592":"-200","10593":"200","10594":"200","10595":"200","10596":"-400","10597":"-400","10598":"-400","10599":"-400","10600":"-600","10601":"-400","10602":"-200","10603":"800","10604":"400","10605":"400","10606":"-200","10607":"-200","10608":"-200","10609":"-200","10610":"-400","10611":"400","10612":"-400","10613":"800","10614":"800","10615":"-600","10616":"-600","10617":"-400","10618":"-400","10619":"-400","10620":"-400","10621":"-400","10622":"600","10623":"800","10624":"800","10625":"800","10626":"-400","10627":"-400","10628":"-200","10629":"600","10630":"-200","10631":"-200","10632":"-200","10633":"600","10634":"600","10635":"-600","10636":"-600","10637":"-600","10638":"-600","10639":"-600","10640":"-600","10641":"600","10642":"600","10643":"-200","10644":"600","10645":"600","10646":"-600","10647":"-600","10648":"-600","10649":"-200","10650":"-200","10651":"-200","10652":"400","10653":"-600","10654":"-600","10655":"-600","10656":"-400","10657":"-400","10658":"-400","10659":"-200","10660":"-200","10661":"-200","10662":"-200","10663":"-600","10664":"600","10665":"600","10666":"800","10667":"800","10668":"200","10669":"200","10670":"400","10671":"-400","10672":"600","10673":"-600","10674":"200","10675":"200","10676":"-400","10677":"-400","10678":"-400","10679":"-400","10680":"400","10681":"-400","10682":"-400","10683":"400","10684":"400","10685":"-400","10686":"800","10687":"-400","10688":"-400","10689":"-400","10690":"-400","10691":"-600","10692":"-400","10693":"-200","10694":"-200","10695":"-400","10696":"-400","10697":"-400","10698":"-400","10699":"-400","10700":"-400","10701":"-400","10702":"-600","10703":"-400","10704":"-400","10705":"-400","10706":"-400","10707":"-400","10708":"-400","10709":"-600","10710":"-600","10711":"-600","10712":"-400","10713":"-400","10714":"-400","10715":"-400","10716":"-600","10717":"-200","10718":"-400","10719":"-400","10720":"-400","10721":"-400","10722":"-400","10723":"-400","10724":"-400","10725":"-400","10726":"-400","10727":"-400","10728":"-400","10729":"-400","10730":"-400","10731":"-400","10732":"-400","10733":"-400","10734":"-400","10735":"-400","10736":"-400","10737":"-400","10738":"-400","10739":"-400","10740":"-400","10741":"-400","10742":"-400","10743":"-400","10744":"-400","10745":"-400","10746":"-400","10747":"400","10748":"400","10749":"400","10750":"-400","10751":"-400","10752":"-400","10753":"-400","10754":"-400","10755":"-200","10756":"-200","10757":"-200","10758":"-200","10759":"-600","10760":"-1000","10761":"200","10762":"400","10763":"200","10764":"-400","10765":"-400","10766":"-400","10767":"-400","10768":"-600","10769":"-600","10770":"-400","10771":"-400","10772":"-200","10773":"-400","10774":"-400","10775":"-600","10776":"200","10777":"-400","10778":"-400","10779":"-400","10780":"-400","10781":"-400","10782":"-400","10783":"-400","10784":"-400","10785":"-400","10786":"-200","10787":"-400","10788":"-400","10789":"-1000","10790":"-1000","10791":"400","10792":"400","10793":"-200","10794":"-400","10795":"-400","10796":"-400","10797":"-400","10798":"-200","10799":"400","10800":"-600","10801":"-400","10802":"-400","10803":"-400","10804":"-400","10805":"400","10806":"-400","10807":"-400","10808":"-400","10809":"-400","10810":"-400","10811":"-400","10812":"-400","10813":"-400","10814":"-400","10815":"-400","10816":"-400","10817":"-400","10818":"-400","10819":"-400","10820":"-400","10821":"-400","10822":"-400","10823":"-400","10824":"-200","10825":"400","10826":"-400","10827":"400","10828":"400","10829":"-400","10830":"-400","10831":"-400","10832":"-400","10833":"-400","10834":"-400","10835":"-400","10836":"-400","10837":"-400","10838":"-400","10839":"-400","10840":"-400","10841":"-400","10842":"-400","10843":"400","10844":"1000","10845":"-200","10846":"-200","10847":"-400","10848":"-400","10849":"-400","10850":"-400","10851":"-400","10852":"-400","10853":"-400","10854":"-400","10855":"-400","10856":"-400","10857":"-200","10858":"-400","10859":"-400","10860":"-400","10861":"-400","10862":"-400","10863":"-400","10864":"-400","10865":"-200","10866":"-600","10867":"-200","10868":"-600","10869":"600","10870":"-200","10871":"400","10872":"400","10873":"400","10874":"400","10875":"-200","10876":"200","10877":"-200","10878":"-200","10879":"-200","10880":"400","10881":"400","10882":"-400","10883":"-400","10884":"-400","10885":"-400","10886":"-200","10887":"400","10888":"600","10889":"400","10890":"-400","10891":"-600","10892":"-400","10893":"-400","10894":"-400","10895":"-400","10896":"-400","10897":"-400","10898":"-400","10899":"-400","10900":"-600","10901":"-400","10902":"-400","10903":"400","10904":"-200","10905":"-400","10906":"-400","10907":"-800","10908":"-600","10909":"-400","10910":"-200","10911":"-600","10912":"-600","10913":"-600","10914":"200","10915":"600","10916":"-400","10917":"400","10918":"-400","10919":"-400","10920":"-400","10921":"-400","10922":"-400","10923":"400","10924":"-400","10925":"-400","10926":"-400","10927":"-400","10928":"-400","10929":"-400","10930":"-400","10931":"-400","10932":"-400","10933":"-400","10934":"600","10935":"400","10936":"-400","10937":"-200","10938":"-200","10939":"-200","10940":"-200","10941":"-200","10942":"400","10943":"-400","10944":"600","10945":"600","10946":"200","10947":"200","10948":"200","10949":"-400","10950":"-400","10951":"-400","10952":"-200","10953":"-400","10954":"-200","10955":"-200","10956":"200","10957":"-200","10958":"-200","10959":"-200","10960":"-200","10961":"-1000","10962":"-400","10963":"-400","10964":"-400","10965":"400","10966":"400","10967":"-400","10968":"-300","10969":"-400","10970":"-400","10971":"400","10972":"400","10973":"-200","10974":"-200","10975":"400","10976":"200","10977":"200","10978":"200","10979":"200","10980":"200","10981":"200","10982":"200","10983":"200","10984":"-400","10985":"-200","10986":"-400","10987":"-200","10988":"-200","10989":"200","10990":"200","10991":"200","10992":"200","10993":"200","10994":"-400","10995":"-400","10996":"-400","10997":"-400","10998":"-200","10999":"-200","11000":"400","11001":"-600","11002":"-400","11003":"-400","11004":"-400","11005":"200","11006":"200","11007":"-200","11008":"-400","11009":"-400","11010":"400","11011":"-400","11012":"-200","11013":"-200","11014":"-600","11015":"-600","11016":"-600","11017":"-400","11018":"-200","11019":"-600","11020":"-600","11021":"-600","11022":"-600","11023":"-800","11024":"-800","11025":"400","11026":"400","11027":"400","11028":"400","11029":"200","11030":"200","11031":"200","11032":"200","11033":"200","11034":"-400","11035":"-400","11036":"-400","11037":"-400","11038":"-400","11039":"400","11040":"400","11041":"400","11042":"400","11043":"400","11044":"200","11045":"200","11046":"200","11047":"400","11048":"-400","11049":"-400","11050":"-400","11051":"-400","11052":"-400","11053":"-400","11054":"-400","11055":"200","11056":"-200","11057":"-200","11058":"-200","11059":"-400","11060":"-200","11061":"800","11062":"800","11063":"400","11064":"-200","11065":"400","11066":"400","11067":"200","11068":"400","11069":"200","11070":"400","11071":"400","11072":"400","11073":"-400","11074":"-400","11075":"-400","11076":"-400","11077":"-400","11078":"-400","11079":"400","11080":"400","11081":"-200","11082":"-200","11083":"-200","11084":"-200","11085":"400","11086":"400","11087":"400","11088":"400","11089":"400","11090":"400","11091":"200","11092":"400","11093":"400","11094":"400","11095":"-400","11096":"200","11097":"200","11098":"200","11099":"200","11100":"-400","11101":"-400","11102":"-400","11103":"-200","11104":"-400","11105":"-400","11106":"-400","11107":"-200","11108":"-400","11109":"-400","11110":"400","11111":"400","11112":"400","11113":"400","11114":"400","11115":"400","11116":"400","11117":"-600","11118":"-200","11119":"-200","11120":"400","11121":"600","11122":"600","11123":"-400","11124":"-400","11125":"200","11126":"200","11127":"-400","11128":"-400","11129":"-400","11130":"-400","11131":"-400","11132":"-400","11133":"-400","11134":"400","11135":"400","11136":"800","11137":"800","11138":"800","11139":"400","11140":"400","11141":"400","11142":"200","11143":"800","11144":"800","11145":"800","11146":"-400","11147":"-400","11148":"-400","11149":"-400","11150":"-400","11151":"200","11152":"400","11153":"200","11154":"200","11155":"400","11156":"400","11157":"400","11158":"400","11159":"400","11160":"-200","11161":"-400","11162":"400","11163":"-400","11164":"-400","11165":"400","11166":"400","11167":"200","11168":"-400","11169":"-400","11170":"-600","11171":"-600","11172":"-600","11173":"-400","11174":"-400","11175":"-400","11176":"-400","11177":"-400","11178":"600","11179":"-400","11180":"-400","11181":"-400","11182":"-400","11183":"-600","11184":"-800","11185":"400","11186":"400","11187":"400","11188":"400","11189":"400","11190":"-400","11191":"-400","11192":"-200","11193":"-600","11194":"-400","11195":"-400","11196":"200","11197":"200","11198":"-400","11199":"-400","11200":"-400","11201":"600","11202":"-400","11203":"200","11204":"200","11205":"200","11206":"-800","11207":"-400","11208":"-400","11209":"-400","11210":"-400","11211":"-200","11212":"-400","11213":"-400","11214":"-800","11215":"-200","11216":"-400","11217":"-400","11218":"-400","11219":"200","11220":"200","11221":"-200","11222":"-200","11223":"200","11224":"-400","11225":"400","11226":"400","11227":"400","11228":"-600","11229":"-400","11230":"-400","11231":"-400","11232":"-400","11233":"-400","11234":"-400","11235":"-400","11236":"-400","11237":"-400","11238":"-400","11239":"-400","11240":"-600","11241":"-600","11242":"-600","11243":"-400","11244":"400","11245":"400","11246":"400","11247":"-200","11248":"-400","11249":"-400","11250":"-200","11251":"-1000","11252":"400","11253":"400","11254":"-400","11255":"400","11256":"400","11257":"400","11258":"-400","11259":"-400","11260":"-400","11261":"-400","11262":"-200","11263":"-400","11264":"-400","11265":"-400","11266":"-400","11267":"-400","11268":"-400","11269":"-400","11270":"-400","11271":"200","11272":"400","11273":"400","11274":"400","11275":"400","11276":"400","11277":"400","11278":"200","11279":"200","11280":"200","11281":"200","11282":"200","11283":"200","11284":"600","11285":"600","11286":"200","11287":"-400","11288":"-600","11289":"-600","11290":"-400","11291":"200","11292":"600","11293":"600","11294":"600","11295":"400","11296":"-400","11297":"200","11298":"400","11299":"-400","11300":"400","11301":"-400","11302":"-400","11303":"-400","11304":"-400","11305":"-200","11306":"-400","11307":"-400","11308":"400","11309":"-400","11310":"-400","11311":"-400","11312":"-400","11313":"400","11314":"-400","11315":"-400","11316":"-400","11317":"600","11318":"-400","11319":"-400","11320":"-400","11321":"-400","11322":"-400","11323":"-400","11324":"-400","11325":"-200","11326":"200","11327":"200","11328":"-400","11329":"-400","11330":"-400","11331":"-400","11332":"-400","11333":"-200","11334":"-200","11335":"-200","11336":"-200","11337":"200","11338":"-200","11339":"-200","11340":"-400","11341":"400","11342":"400","11343":"400","11344":"400","11345":"400","11346":"-200","11347":"-400","11348":"-400","11349":"-400","11350":"-400","11351":"-200","11352":"-400","11353":"-200","11354":"400","11355":"400","11356":"400","11357":"-200","11358":"-400","11359":"-400","11360":"-400","11361":"-400","11362":"-400","11363":"-400","11364":"800","11365":"-400","11366":"200","11367":"200","11368":"-400","11369":"600","11370":"600","11371":"600","11372":"600","11373":"400","11374":"-600","11375":"-600","11376":"-600","11377":"-400","11378":"-400","11379":"-400","11380":"-400","11381":"-400","11382":"-400","11383":"-400","11384":"-400","11385":"-400","11386":"-400","11387":"-400","11388":"-400","11389":"400","11390":"-400","11391":"-400","11392":"400","11393":"400","11394":"400","11395":"200","11396":"200","11397":"200","11398":"400","11399":"400","11400":"400","11401":"400","11402":"-200","11403":"-200","11404":"-200","11405":"-200","11406":"-200","11407":"-200","11408":"-400","11409":"200","11410":"400","11411":"400","11412":"-400","11413":"-400","11414":"-400","11415":"600","11416":"600","11417":"400","11418":"400","11419":"-600","11420":"-600","11421":"-600","11422":"400","11423":"400","11424":"-400","11425":"-400","11426":"400","11427":"-400","11428":"-400","11429":"-400","11430":"-400","11431":"-400","11432":"400","11433":"400","11434":"-400","11435":"-200","11436":"-600","11437":"-600","11438":"800","11439":"800","11440":"-600","11441":"-400","11442":"-400","11443":"-600","11444":"-600","11445":"-600","11446":"400","11447":"400","11448":"-400","11449":"400","11450":"-400","11451":"-400","11452":"-400","11453":"-400","11454":"-400","11455":"-400","11456":"1000","11457":"-400","11458":"-400","11459":"-400","11460":"-400","11461":"-400","11462":"400","11463":"400","11464":"-400","11465":"400","11466":"-400","11467":"-800","11468":"-800","11469":"-400","11470":"-400","11471":"-400","11472":"-400","11473":"-400","11474":"-400","11475":"-600","11476":"-400","11477":"-400","11478":"-400","11479":"-400","11480":"-400","11481":"-400","11482":"-400","11483":"-200","11484":"-400","11485":"-200","11486":"-600","11487":"-400","11488":"-600","11489":"-600","11490":"400","11491":"400","11492":"-400","11493":"-400","11494":"-400","11495":"-400","11496":"400","11497":"-400","11498":"-400","11499":"-400","11500":"-400","11501":"200","11502":"200","11503":"-400","11504":"-1000","11505":"-600","11506":"-600","11507":"-600","11508":"-600","11509":"-600","11510":"400","11511":"-400","11512":"-600","11513":"-400","11514":"-400","11515":"-400","11516":"-400","11517":"-400","11518":"-200","11519":"-200","11520":"400","11521":"-200","11522":"-200","11523":"-400","11524":"-400","11525":"-200","11526":"-200","11527":"-200","11528":"-200","11529":"-400","11530":"-200","11531":"-200","11532":"-200","11533":"-200","11534":"-400","11535":"-400","11536":"-400","11537":"-400","11538":"-400","11539":"-400","11540":"-400","11541":"-400","11542":"-400","11543":"-400","11544":"-200","11545":"400","11546":"-400","11547":"-400","11548":"-400","11549":"-400","11550":"-400","11551":"-400","11552":"-400","11553":"-400","11554":"-400","11555":"-400","11556":"200","11557":"-400","11558":"-400","11559":"-400","11560":"-400","11561":"-400","11562":"200","11563":"-400","11564":"-200","11565":"-400","11566":"-400","11567":"200","11568":"-400","11569":"-400","11570":"-400","11571":"-400","11572":"200","11573":"-400","11574":"-400","11575":"-400","11576":"-400","11577":"400","11578":"-200","11579":"-200","11580":"-400","11581":"-400","11582":"400","11583":"-400","11584":"-400","11585":"400","11586":"-400","11587":"-400","11588":"400","11589":"-600","11590":"-400","11591":"-400","11592":"-400","11593":"-200","11594":"400","11595":"-400","11596":"-400","11597":"-400","11598":"-400","11599":"200","11600":"200","11601":"-400","11602":"-200","11603":"-200","11604":"200","11605":"600","11606":"-400","11607":"-600","11608":"-600","11609":"-600","11610":"-600","11611":"-600","11612":"-600","11613":"-600","11614":"600","11615":"600","11616":"600","11617":"600","11618":"600","11619":"400","11620":"400","11621":"400","11622":"400","11623":"-400","11624":"-400","11625":"-400","11626":"-400","11627":"-400","11628":"-600","11629":"-600","11630":"-600","11631":"-400","11632":"200","11633":"600","11634":"200","11635":"200","11636":"200","11637":"-600","11638":"400","11639":"-200","11640":"-600","11641":"-600","11642":"-600","11643":"-600","11644":"-400","11645":"-400","11646":"-400","11647":"-400","11648":"-600","11649":"200","11650":"-400","11651":"-400","11652":"400","11653":"-400","11654":"-400","11655":"-600","11656":"-600","11657":"-400","11658":"-400","11659":"-400","11660":"-200","11661":"-400","11662":"-400","11663":"-400","11664":"-400","11665":"600","11666":"400","11667":"-400","11668":"400","11669":"400","11670":"200","11671":"-600","11672":"-800","11673":"-200","11674":"800","11675":"800","11676":"800","11677":"600","11678":"200","11679":"200","11680":"200","11681":"200","11682":"-600","11683":"400","11684":"600","11685":"800","11686":"600","11687":"600","11688":"800","11689":"800","11690":"600","11691":"600","11692":"600","11693":"-200","11694":"-600","11695":"-600","11696":"-600","11697":"-600","11698":"-600","11699":"-600","11700":"600","11701":"-600","11702":"400","11703":"800","11704":"800","11705":"800","11706":"-400","11707":"-400","11708":"-400","11709":"-400","11710":"-400","11711":"-400","11712":"-400","11713":"-800","11714":"-800","11715":"-800","11716":"600","11717":"600","11718":"800","11719":"800","11720":"200","11721":"200","11722":"400","11723":"200","11724":"400","11725":"400","11726":"600","11727":"600","11728":"-400","11729":"-400","11730":"200","11731":"800","11732":"600","11733":"600","11734":"0","11735":"800","11736":"600","11737":"600","11738":"600","11739":"600","11740":"400","11741":"600","11742":"600","11743":"600","11744":"-400","11745":"400","11746":"400","11747":"400","11748":"400","11749":"600","11750":"400","11751":"600","11752":"400","11753":"-400","11754":"800","11755":"800","11756":"600","11757":"-200","11758":"200","11759":"800","11760":"400","11761":"0","11762":"600","11763":"600","11764":"800","11765":"400","11766":"0","11767":"600","11768":"200","11769":"400","11770":"-200","11771":"400","11772":"0","11773":"600","11774":"600","11775":"400","11776":"0","11777":"600","11778":"800","11779":"400","11780":"200","11781":"200","11782":"-200","11783":"800","11784":"400","11785":"600","11786":"200","11787":"-200","11788":"400","11789":"400","11790":"0","11791":"-200","11792":"200","11793":"200","11794":"-200","11795":"600","11796":"800","11797":"600","11798":"200","11799":"0","11800":"600","11801":"0","11802":"200","11803":"400","11804":"200","11805":"800","11806":"400","11807":"600","11808":"200","11809":"-400","11810":"200","11811":"-200","11812":"-200","11813":"200","11814":"400","11815":"400","11816":"0","11817":"600","11818":"-400","11819":"800","11820":"200","11821":"400","11822":"400","11823":"800","11824":"-400","11825":"400","11826":"400","11827":"200","11828":"800","11829":"400","11830":"0","11831":"-200","11832":"-400","11833":"400","11834":"-200","11835":"-200","11836":"400","11837":"600","11838":"-200","11839":"400","11840":"200","11841":"-200","11842":"200","11843":"400","11844":"600","11845":"-200","11846":"600","11847":"200","11848":"600","11849":"200","11850":"400","11851":"600","11852":"400","11853":"600","11854":"400","11855":"200","11856":"200","11857":"200","11858":"800","11859":"400","11860":"400","11861":"800","11862":"600","11863":"400","11864":"600","11865":"600","11866":"400","11867":"0","11868":"600","11869":"400","11870":"600","11871":"600","11872":"200","11873":"200","11874":"200","11875":"600","11876":"-200","11877":"600","11878":"400","11879":"600","11880":"600","11881":"0","11882":"400","11883":"400","11884":"600","11885":"400","11886":"600","11887":"400","11888":"400","11889":"400","11890":"400","11891":"400","11892":"400","11893":"600","11894":"400","11895":"200","11896":"600","11897":"600","11898":"200","11899":"400","11900":"-400","11901":"0","11902":"600","11903":"200","11904":"0","11905":"600","11906":"600","11907":"600","11908":"400","11909":"-200","11910":"600","11911":"600","11912":"400","11913":"600","11914":"400","11915":"200","11916":"600","11917":"600","11918":"400","11919":"400","11920":"400","11921":"600","11922":"0","11923":"0","11924":"400","11925":"400","11926":"200","11927":"400","11928":"400","11929":"800","11930":"600","11931":"400","11932":"600","11933":"200","11934":"200","11935":"600","11936":"0","11937":"600","11938":"200","11939":"-400","11940":"600","11941":"600","11942":"400","11943":"0","11944":"400","11945":"400","11946":"400","11947":"200","11948":"0","11949":"200","11950":"400","11951":"400","11952":"600","11953":"0","11954":"400","11955":"600","11956":"0","11957":"600","11958":"600","11959":"600","11960":"200","11961":"400","11962":"400","11963":"800","11964":"-200","11965":"600","11966":"0","11967":"600","11968":"-600","11969":"600","11970":"400","11971":"200","11972":"600","11973":"600","11974":"600","11975":"200","11976":"200","11977":"400","11978":"400","11979":"200","11980":"600","11981":"200","11982":"400","11983":"800","11984":"200","11985":"200","11986":"200","11987":"400","11988":"200","11989":"400","11990":"-400","11991":"-200","11992":"400","11993":"-400","11994":"400","11995":"-400","11996":"-400","11997":"-400","11998":"400","11999":"400","12000":"-400","12001":"-200","12002":"400","12003":"-400","12004":"400","12005":"-200","12006":"400","12007":"400","12008":"600","12009":"600","12010":"-400","12011":"600","12012":"-400","12013":"600","12014":"600","12015":"-400","12016":"600","12017":"-400","12018":"-400","12019":"400","12020":"-400","12021":"400","12022":"-400","12023":"-400","12024":"400","12025":"-400","12026":"400","12027":"600","12028":"600","12029":"600","12030":"600","12031":"600","12032":"800","12033":"800","12034":"800","12035":"800","12036":"600","12037":"600","12038":"600","12039":"600","12040":"800","12041":"800","12042":"800","12043":"800","12044":"800","12045":"-600","12046":"-600","12047":"-600","12048":"-600","12049":"600","12050":"600","12051":"600","12052":"600","12053":"800","12054":"800","12055":"800","12056":"800","12057":"800","12058":"800","12059":"800"},{},{}]']; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-sa-model.js +var require_load_sa_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-sa-model.js"(exports2, module2) { + var setter = require_sa_setter(); + var machines = require_eng_sa_model(); + var loadSAModel = function() { + return { machines, setter }; + }; + module2.exports = loadSAModel; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/constants.js +var require_constants5 = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/constants.js"(exports2, module2) { + var consts = /* @__PURE__ */ Object.create(null); + consts.UNK = 0, consts.bits4PrecedingSpace = 16, consts.bits4lemma = 20, consts.posMask = 66060288, consts.psMask = 65535, consts.xnMask = 1073676288, consts.tkSize = 4, consts.xpSize = 4, consts.xcMask = 31, consts.bits4xpPointer = 14, consts.negationFlag = Math.pow(2, 31), module2.exports = consts; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/cer-transformers.js +var require_cer_transformers = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/cer-transformers.js"(exports2, module2) { + var transformers = new Array(1); + var constants = require_constants5(); + var tkSize = constants.tkSize; + var bits4lemma = constants.bits4lemma; + var posMask = constants.posMask; + transformers[0] = function(t, itsUndefined, config, index) { + var normal, cache = config.rdd.cache, tokens = config.rdd.tokens, preserve = config.preserve, value = cache.value(tokens[index * tkSize]); + return "string" == typeof t ? t : preserve[value] ? preserve[value] : !config.matchValue && preserve[normal = cache.value(t)] ? preserve[normal] : config.usePOS ? cache.valueOf("pos", (tokens[index * tkSize + 2] & posMask) >>> bits4lemma) : config.matchValue ? value : normal; + }, module2.exports = transformers; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-cer-meta-model.json +var require_eng_cer_meta_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/languages/cur/models/eng-cer-meta-model.json"(exports2, module2) { + module2.exports = [100, 63, { "0": { " otherwise": 0, "^": 1, ADV: 33, INTJ: 34, ADJ: 35, NOUN: 36, URL: 37, PROPN: 38, MENTION: 39, VERB: 40, HASHTAG: 41, ADP: 42, EMOTICON: 43, AUX: 44, EMOJI: 45, CCONJ: 46, EMAIL: 47, TIME: 49, PART: 50, PERCENT: 51, PRON: 52, ORDINAL: 53, SCONJ: 54, MONEY: 55, PUNCT: 56, DURATION: 57, NUM: 58, DATE: 59, SYM: 60, CARDINAL: 61, X: 62, DET: 63 }, "1": { " otherwise": 48, ADV: 2, "^": 3, SYM: 4, CARDINAL: 5, NUM: 6, DATE: 7, PUNCT: 8, DURATION: 9, SCONJ: 10, MONEY: 11, PRON: 12, ORDINAL: 13, PART: 14, PERCENT: 15, DET: 16, TIME: 17, CCONJ: 18, EMAIL: 19, AUX: 20, EMOJI: 21, ADP: 22, EMOTICON: 23, VERB: 24, HASHTAG: 25, PROPN: 26, MENTION: 27, NOUN: 28, URL: 29, INTJ: 30, ADJ: 31, X: 32 } }, { "2": "ADV&", "3": "^", "4": "SYM&", "5": "CARDINAL&", "6": "NUM&", "7": "DATE&", "8": "PUNCT&", "9": "DURATION&", "10": "SCONJ&", "11": "MONEY&", "12": "PRON&", "13": "ORDINAL&", "14": "PART&", "15": "PERCENT&", "16": "DET&", "17": "TIME&", "18": "CCONJ&", "19": "EMAIL&", "20": "AUX&", "21": "EMOJI&", "22": "ADP&", "23": "EMOTICON&", "24": "VERB&", "25": "HASHTAG&", "26": "PROPN&", "27": "MENTION&", "28": "NOUN&", "29": "URL&", "30": "INTJ&", "31": "ADJ&", "32": "X&", "33": "ADV", "34": "INTJ", "35": "ADJ", "36": "NOUN", "37": "URL", "38": "PROPN", "39": "MENTION", "40": "VERB", "41": "HASHTAG", "42": "ADP", "43": "EMOTICON", "44": "AUX", "45": "EMOJI", "46": "CCONJ", "47": "EMAIL", "48": "", "49": "TIME", "50": "PART", "51": "PERCENT", "52": "PRON", "53": "ORDINAL", "54": "SCONJ", "55": "MONEY", "56": "PUNCT", "57": "DURATION", "58": "NUM", "59": "DATE", "60": "SYM", "61": "CARDINAL", "62": "X", "63": "DET" }, {}, { "2": { preserve: true }, "3": { preserve: true }, "4": { preserve: true }, "5": { preserve: true }, "6": { preserve: true }, "7": { preserve: true }, "8": { preserve: true }, "9": { preserve: true }, "10": { preserve: true }, "11": { preserve: true }, "12": { preserve: true }, "13": { preserve: true }, "14": { preserve: true }, "15": { preserve: true }, "16": { preserve: true }, "17": { preserve: true }, "18": { preserve: true }, "19": { preserve: true }, "20": { preserve: true }, "21": { preserve: true }, "22": { preserve: true }, "23": { preserve: true }, "24": { preserve: true }, "25": { preserve: true }, "26": { preserve: true }, "27": { preserve: true }, "28": { preserve: true }, "29": { preserve: true }, "30": { preserve: true }, "31": { preserve: true }, "32": { preserve: true }, "33": { preserve: false }, "34": { preserve: false }, "35": { preserve: false }, "36": { preserve: false }, "37": { preserve: false }, "38": { preserve: false }, "39": { preserve: false }, "40": { preserve: false }, "41": { preserve: false }, "42": { preserve: false }, "43": { preserve: false }, "44": { preserve: false }, "45": { preserve: false }, "46": { preserve: false }, "47": { preserve: false }, "48": { preserve: false }, "49": { preserve: false }, "50": { preserve: false }, "51": { preserve: false }, "52": { preserve: false }, "53": { preserve: false }, "54": { preserve: false }, "55": { preserve: false }, "56": { preserve: false }, "57": { preserve: false }, "58": { preserve: false }, "59": { preserve: false }, "60": { preserve: false }, "61": { preserve: false }, "62": { preserve: false }, "63": { preserve: false } }]; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-cer-meta-model.js +var require_load_cer_meta_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/load-cer-meta-model.js"(exports2, module2) { + var transformers = require_cer_transformers(); + var machines = require_eng_cer_meta_model(); + var loadNERModel = function() { + return { machines: machines = JSON.stringify(machines), transformers }; + }; + module2.exports = loadNERModel; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/token-categories.js +var require_token_categories = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/token-categories.js"(exports2, module2) { + var tcat = /* @__PURE__ */ Object.create(null); + tcat.hash = /* @__PURE__ */ Object.create(null), tcat.list = ["unk", "word", "number", "url", "email", "mention", "hashtag", "emoji", "emoticon", "time", "ordinal", "currency", "punctuation", "symbol", "tabCRLF", "wordRP", "alpha", "apos", "decade", "shortForm"], tcat.hash.unk = 0, tcat.hash.word = 1, tcat.hash.number = 2, tcat.hash.url = 3, tcat.hash.email = 4, tcat.hash.mention = 5, tcat.hash.hashtag = 6, tcat.hash.emoji = 7, tcat.hash.emoticon = 8, tcat.hash.time = 9, tcat.hash.ordinal = 10, tcat.hash.currency = 11, tcat.hash.punctuation = 12, tcat.hash.symbol = 13, tcat.hash.tabCRLF = 14, tcat.hash.wordRP = 15, tcat.hash.alpha = 16, tcat.hash.apos = 17, tcat.hash.decade = 18, tcat.hash.shortForm = 19, module2.exports = tcat; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/feature.js +var require_feature = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/feature.js"(exports2, module2) { + var tcat = require_token_categories(); + var tcat2pos = new Array(tcat.list.length); + tcat2pos.fill(0), tcat2pos[0] = 17, tcat2pos[2] = 9, tcat2pos[3] = 15, tcat2pos[4] = 15, tcat2pos[4] = 15, tcat2pos[5] = 12, tcat2pos[6] = 15, tcat2pos[7] = 15, tcat2pos[8] = 15, tcat2pos[9] = 15, tcat2pos[10] = 11, tcat2pos[11] = 15, tcat2pos[12] = 13, tcat2pos[13] = 15, tcat2pos[14] = 14, tcat2pos[18] = 9; + var suffix2pos = /* @__PURE__ */ Object.create(null); + suffix2pos.ing = 16, suffix2pos.ed = 16, suffix2pos.ly = 3, suffix2pos.able = 1, suffix2pos.tish = 1, suffix2pos.like = 1, suffix2pos.ous = 1, suffix2pos.ful = 1, suffix2pos.ary = 1, suffix2pos.less = 1, suffix2pos.ier = 1, suffix2pos.est = 1, suffix2pos.fy = 1, suffix2pos.ky = 1, suffix2pos.es = 8, suffix2pos.er = 8, suffix2pos.or = 8, suffix2pos.ity = 8, suffix2pos.ion = 8, suffix2pos.llah = 12, suffix2pos.stan = 12, suffix2pos.gton = 12, suffix2pos.abad = 12, suffix2pos.land = 12, suffix2pos.pur = 12, suffix2pos.tnam = 12; + var prefix2pos = /* @__PURE__ */ Object.create(null); + prefix2pos.anti = 1, prefix2pos.post = 1, prefix2pos.non = 1, prefix2pos.cross = 8; + var feature = function(config, lang, featuresData, isLexicographer) { + const rgxLC = /^[a-z][a-z\-\–\—\.]*$/, rgxUC = /^[A-Z][A-Z\-\–\—\.]*$/, rgxTC = /^[A-Z][a-z\-\–\—\.]*$/; + var i, rgxCatDetectors = [], regexes = lang ? lang.trex.lex : null, imax = lang ? regexes.length : 0; + const fd = featuresData; + var methods = /* @__PURE__ */ Object.create(null); + let prevWord = null; + for (i = 0; i < imax; i += 1) + rgxCatDetectors.push([new RegExp(regexes[i][0], regexes[i][1]), regexes[i][2]]); + return methods.shape = function(word) { + return word.replace(/[A-Z]{4,}/g, "XXXX").replace(/[A-Z]/g, "X").replace(/[a-z]{4,}/g, "xxxx").replace(/[a-z]/g, "x").replace(/\d{4,}/g, "dddd").replace(/\d/g, "d"); + }, methods.suffix = function(word) { + return word.slice(-config.suffix); + }, methods.prefix = function(word) { + return word.slice(0, config.prefix); + }, methods.lexeme = function(word) { + return word; + }, methods.lexemeCID = function(word) { + return word; + }, methods.isAbbrev = function(word) { + return /[a-z].*\.$/i.test(word) ? 1 : 0; + }, methods.normal = function(word) { + const lcwHash = fd.lexeme.hash[word.toLowerCase()]; + if (void 0 === lcwHash) + return console.log("\x1B[41m%s\x1B[0m entry is missing! (feature.normal)", JSON.stringify(word.toLowerCase())), 0; + const offset = lcwHash - fd.lexeme.hash[word]; + if (offset < 0 || offset > 3) + throw new Error("feature.normal: offset of " + offset + " for " + JSON.stringify(word)); + return offset; + }, methods.tokenType = function(word) { + var cat; + for (cat = 0; cat < rgxCatDetectors.length; cat += 1) + if (rgxCatDetectors[cat][0].test(word)) + return rgxCatDetectors[cat][1]; + return console.log("\x1B[41m%s\x1B[0m has unknown token type! (feature.tokenType)", JSON.stringify(word)), tcat.hash.word; + }, methods.pos = function(word, category, cache) { + if (isLexicographer) { + const tags = fd.pos.hash[word]; + return tags ? lang.xpos.hash[tags && 1 === tags.length ? tags[0] : "UNK"] : lang.xpos.hash.UNK; + } + var pos, wordInLC; + if (category === tcat.hash.word) { + wordInLC = word.toLowerCase(); + const hash = cache.lookup(wordInLC)[0]; + if (hash < cache.intrinsicSize()) { + const posOfWLC = cache.posOf(hash), isFirstToken = null === prevWord || /^[\t\r\n.?!]+$/.test(prevWord); + pos = !rgxTC.test(word) && !rgxUC.test(word) || isFirstToken ? posOfWLC : 12; + } else + pos = function(word2) { + if (!rgxLC.test(word2)) + return 12; + var wlc = word2.toLowerCase(); + return suffix2pos[wlc.slice(-4)] || suffix2pos[wlc.slice(-3)] || suffix2pos[wlc.slice(-2)] || prefix2pos[wlc.slice(0, 5)] || prefix2pos[wlc.slice(0, 4)] || prefix2pos[wlc.slice(0, 3)] || prefix2pos[wlc.slice(0, 2)] || 8; + }(word); + } + return prevWord = word, pos || tcat2pos[category] || (rgxTC.test(word) ? 12 : 8); + }, methods.isSPoS = function(word) { + const tags = fd.pos.hash[word]; + return tags && 1 === tags.length ? 1 : 0; + }, methods.lemma = function(word) { + if (0 === fd.lexeme.hash[word]) + return 0; + const lmh = fd.lemma.hash[word]; + return void 0 === lmh || void 0 === fd.lexeme.hash[lmh[0]] ? (console.log("\x1B[41m%s\x1B[0m entry is missing! (feature.lemma)", JSON.stringify(lmh[0])), 0) : fd.lexeme.hash[lmh[0]]; + }, methods.isSLemma = function(word) { + if (0 === fd.lexeme.hash[word]) + return 0; + const lmh = fd.lemma.hash[word]; + return lmh && fd.lexeme.hash[lmh[0]] && 1 === lmh.length ? 1 : 0; + }, methods.lutCase = function(word) { + return rgxLC.test(word) ? 1 : rgxUC.test(word) ? 2 : rgxTC.test(word) ? 3 : 0; + }, methods; + }; + module2.exports = feature; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/porter-stemmer.js +var require_porter_stemmer = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/porter-stemmer.js"(exports2, module2) { + var rgxDouble = /(bb|dd|ff|gg|mm|nn|pp|rr|tt)$/; + var rgxSFXsses = /(.+)(sses)$/; + var rgxSFXiedORies2 = /(.{2,})(ied|ies)$/; + var rgxSFXiedORies1 = /(.{1})(ied|ies)$/; + var rgxSFXusORss = /(.+)(us|ss)$/; + var rgxSFXs = /(.+)(s)$/; + var rgxSFXeedlyOReed = /(.*)(eedly|eed)$/; + var rgxSFXedORedlyORinglyORing = /([aeiouy].*)(ed|edly|ingly|ing)$/; + var rgxSFXatORblORiz = /(at|bl|iz)$/; + var rgxSFXyOR3 = /(.+[^aeiouy])([y3])$/; + var rgxSFXstep2 = /(ization|ational|fulness|ousness|iveness|tional|biliti|lessli|entli|ation|alism|aliti|ousli|iviti|fulli|enci|anci|abli|izer|ator|alli|bli|ogi|li)$/; + var rgxSFXstep2WithReplacements = [{ rgx: /ational$/, replacement: "ate" }, { rgx: /ization$/, replacement: "ize" }, { rgx: /fulness$/, replacement: "ful" }, { rgx: /ousness$/, replacement: "ous" }, { rgx: /iveness$/, replacement: "ive" }, { rgx: /tional$/, replacement: "tion" }, { rgx: /biliti$/, replacement: "ble" }, { rgx: /lessli$/, replacement: "less" }, { rgx: /iviti$/, replacement: "ive" }, { rgx: /ousli$/, replacement: "ous" }, { rgx: /ation$/, replacement: "ate" }, { rgx: /entli$/, replacement: "ent" }, { rgx: /(.*)(alism|aliti)$/, replacement: "$1al" }, { rgx: /fulli$/, replacement: "ful" }, { rgx: /alli$/, replacement: "al" }, { rgx: /ator$/, replacement: "ate" }, { rgx: /izer$/, replacement: "ize" }, { rgx: /enci$/, replacement: "ence" }, { rgx: /anci$/, replacement: "ance" }, { rgx: /abli$/, replacement: "able" }, { rgx: /bli$/, replacement: "ble" }, { rgx: /(.*)(l)(ogi)$/, replacement: "$1$2og" }, { rgx: /(.*)([cdeghkmnrt])(li)$/, replacement: "$1$2" }]; + var rgxSFXstep3 = /(ational|tional|alize|icate|iciti|ative|ical|ness|ful)$/; + var rgxSFXstep3WithReplacements = [{ rgx: /ational$/, replacement: "ate" }, { rgx: /tional$/, replacement: "tion" }, { rgx: /alize$/, replacement: "al" }, { rgx: /(.*)(icate|iciti|ical)$/, replacement: "$1ic" }, { rgx: /(ness|ful)$/, replacement: "" }]; + var rgxSFXstep4 = /(ement|ance|ence|able|ible|ment|ant|ent|ism|ate|iti|ous|ive|ize|al|er|ic)$/; + var rgxSFXstep4Full = /(ement|ance|ence|able|ible|ment|ant|ent|ism|ate|iti|ous|ive|ize|ion|al|er|ic)$/; + var rgxSFXstep4ion = /(.*)(s|t)(ion)$/; + var exceptions1 = /* @__PURE__ */ Object.create(null); + exceptions1.skis = "ski", exceptions1.skies = "sky", exceptions1.dying = "die", exceptions1.lying = "lie", exceptions1.tying = "tie", exceptions1.idly = "idl", exceptions1.gently = "gentl", exceptions1.ugly = "ugli", exceptions1.early = "earli", exceptions1.only = "onli", exceptions1.singly = "singl", exceptions1.sky = "sky", exceptions1.news = "news", exceptions1.atlas = "atlas", exceptions1.cosmos = "cosmos", exceptions1.bias = "bias", exceptions1.andes = "andes"; + var rgxException2 = /^(inning|outing|canning|herring|proceed|exceed|succeed|earring)$/; + var prelude = function(s) { + return s.replace(/^y/, "3").replace(/([aeiou])y/, "$13").replace(/\’s$|\'s$/, "").replace(/s\’$|s\'$/, "").replace(/[\’\']$/, ""); + }; + var isShort = function(s) { + return /[^aeiouy][aeiouy][^aeiouywx3]$/.test(s) || /^[aeiouy][^aeiouy]{0,1}$/.test(s); + }; + var markRegions = function(s) { + var m1, m2, rgxRegions = /[aeiouy]+([^aeiouy]{1}.+)/; + return (m1 = rgxRegions.exec(s)) ? (m1 = m1[1].slice(1), m1 = /^(gener|commun|arsen)/.test(s) ? s.replace(/^(gener|commun|arsen)(.*)/, "$2") : m1, (m2 = rgxRegions.exec(m1)) ? { r1: m1, r2: m2 = m2[1].slice(1) } : { r1: m1, r2: "" }) : { r1: "", r2: "" }; + }; + var step1a = function(s) { + var wordPart; + return rgxSFXsses.test(s) ? s.replace(rgxSFXsses, "$1ss") : rgxSFXiedORies2.test(s) ? s.replace(rgxSFXiedORies2, "$1i") : rgxSFXiedORies1.test(s) ? s.replace(rgxSFXiedORies1, "$1ie") : rgxSFXusORss.test(s) ? s : (wordPart = s.replace(rgxSFXs, "$1"), /[aeiuouy](.+)$/.test(wordPart) ? s.replace(rgxSFXs, "$1") : s); + }; + var step1b = function(s) { + var sd, rgn = markRegions(s); + return rgxSFXeedlyOReed.test(s) ? rgxSFXeedlyOReed.test(rgn.r1) ? s.replace(rgxSFXeedlyOReed, "$1ee") : s : rgxSFXedORedlyORinglyORing.test(s) ? (sd = s.replace(rgxSFXedORedlyORinglyORing, "$1"), rgn = markRegions(sd), rgxSFXatORblORiz.test(sd) ? sd + "e" : rgxDouble.test(sd) ? sd.replace(/.$/, "") : isShort(sd) && "" === rgn.r1 ? sd + "e" : sd) : s; + }; + var step1c = function(s) { + return s.replace(rgxSFXyOR3, "$1i"); + }; + var step2 = function(s) { + var i, imax, us, rgn = markRegions(s), match2 = s.match(rgxSFXstep2); + if (match2 = null === match2 ? "$$$$$" : match2[1], -1 !== rgn.r1.indexOf(match2)) { + for (i = 0, imax = rgxSFXstep2WithReplacements.length; i < imax; i += 1) + if (us = s.replace(rgxSFXstep2WithReplacements[i].rgx, rgxSFXstep2WithReplacements[i].replacement), s !== us) + return us; + } + return s; + }; + var step3 = function(s) { + var i, imax, us, rgn = markRegions(s), match2 = s.match(rgxSFXstep3); + if (match2 = null === match2 ? "$$$$$" : match2[1], -1 !== rgn.r1.indexOf(match2)) { + for (i = 0, imax = rgxSFXstep3WithReplacements.length; i < imax; i += 1) + if (us = s.replace(rgxSFXstep3WithReplacements[i].rgx, rgxSFXstep3WithReplacements[i].replacement), s !== us) + return us; + if (/ative/.test(rgn.r2)) + return s.replace(/ative$/, ""); + } + return s; + }; + var step4 = function(s) { + var rgn = markRegions(s), match2 = s.match(rgxSFXstep4Full); + return match2 = null === match2 ? "$$$$$" : match2[1], rgxSFXstep4Full.test(s) && -1 !== rgn.r2.indexOf(match2) ? rgxSFXstep4.test(s) ? s.replace(rgxSFXstep4, "") : rgxSFXstep4ion.test(s) ? s.replace(rgxSFXstep4ion, "$1$2") : s : s; + }; + var step5 = function(s) { + var preceding, rgn; + return rgn = markRegions(s), /e$/i.test(s) ? (preceding = s.replace(/e$/, ""), /e/.test(rgn.r2) || /e/.test(rgn.r1) && !isShort(preceding) ? preceding : s) : /l$/.test(s) && (rgn = markRegions(s)).r2 && /l$/.test(rgn.r2) ? s.replace(/ll$/, "l") : s; + }; + var stem = function(word) { + var str = word.toLowerCase(); + return str.length < 3 ? str : exceptions1[str] ? exceptions1[str] : (str = prelude(str), str = step1a(str), rgxException2.test(str) || (str = step1b(str), str = step1c(str), str = step2(str), str = step3(str), str = step4(str), str = step5(str)), str = str.replace(/3/g, "y")); + }; + module2.exports = stem; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/wn-adjective-exceptions.js +var require_wn_adjective_exceptions = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/wn-adjective-exceptions.js"(exports2, module2) { + var exceptions = /* @__PURE__ */ Object.create(null); + var acer = "acer"; + var after = "after"; + var airy = "airy"; + var angry = "angry"; + var archer = "archer"; + var arty = "arty"; + var ashy = "ashy"; + var assaulter = "assaulter"; + var attacker = "attacker"; + var backer = "backer"; + var baggy = "baggy"; + var balky = "balky"; + var balmy = "balmy"; + var bandy = "bandy"; + var bargainer = "bargainer"; + var barmy = "barmy"; + var batty = "batty"; + var baulky = "baulky"; + var bawdy = "bawdy"; + var bayer = "bayer"; + var beady = "beady"; + var beastly = "beastly"; + var beater = "beater"; + var beefy = "beefy"; + var beery = "beery"; + var bendy = "bendy"; + var good = "good"; + var big = "big"; + var bitchy = "bitchy"; + var biter = "biter"; + var bitty = "bitty"; + var bleary = "bleary"; + var bloody = "bloody"; + var bloodthirsty = "bloodthirsty"; + var blowy = "blowy"; + var blowsy = "blowsy"; + var blowzy = "blowzy"; + var blue = "blue"; + var boner = "boner"; + var bony = "bony"; + var bonny = "bonny"; + var boozy = "boozy"; + var bosky = "bosky"; + var bossy = "bossy"; + var botchy = "botchy"; + var bother = "bother"; + var bouncy = "bouncy"; + var bounder = "bounder"; + var bower = "bower"; + var brainy = "brainy"; + var brashy = "brashy"; + var brassy = "brassy"; + var brawny = "brawny"; + var breathy = "breathy"; + var breezy = "breezy"; + var briny = "briny"; + var britisher = "britisher"; + var broadcaster = "broadcaster"; + var brooder = "brooder"; + var broody = "broody"; + var bubbly = "bubbly"; + var buggy = "buggy"; + var bulky = "bulky"; + var bumpy = "bumpy"; + var bunchy = "bunchy"; + var burly = "burly"; + var burry = "burry"; + var burster = "burster"; + var bushy = "bushy"; + var busy = "busy"; + var buster = "buster"; + var busty = "busty"; + var cagey = "cagey"; + var camper = "camper"; + var canny = "canny"; + var canter = "canter"; + var canty = "canty"; + var caster = "caster"; + var catchy = "catchy"; + var catty = "catty"; + var cer = "cer"; + var chancy = "chancy"; + var chary = "chary"; + var chatty = "chatty"; + var cheeky = "cheeky"; + var cheery = "cheery"; + var cheesy = "cheesy"; + var chesty = "chesty"; + var chewy = "chewy"; + var chilly = "chilly"; + var chintzy = "chintzy"; + var chippy = "chippy"; + var choosy = "choosy"; + var choppy = "choppy"; + var chubby = "chubby"; + var chuffy = "chuffy"; + var chummy = "chummy"; + var chunky = "chunky"; + var churchy = "churchy"; + var clammy = "clammy"; + var classy = "classy"; + var cleanly = "cleanly"; + var clerkly = "clerkly"; + var cloudy = "cloudy"; + var clubby = "clubby"; + var clumsy = "clumsy"; + var cocky = "cocky"; + var coder = "coder"; + var colly = "colly"; + var comely = "comely"; + var comfy = "comfy"; + var corny = "corny"; + var cosy = "cosy"; + var costly = "costly"; + var costumer = "costumer"; + var counterfeiter = "counterfeiter"; + var courtly = "courtly"; + var cozy = "cozy"; + var crabby = "crabby"; + var cracker = "cracker"; + var crafty = "crafty"; + var craggy = "craggy"; + var cranky = "cranky"; + var crasher = "crasher"; + var crawly = "crawly"; + var crazy = "crazy"; + var creamer = "creamer"; + var creamy = "creamy"; + var creepy = "creepy"; + var crispy = "crispy"; + var crumby = "crumby"; + var crumbly = "crumbly"; + var crummy = "crummy"; + var crusty = "crusty"; + var curly = "curly"; + var customer = "customer"; + var cute = "cute"; + var daffy = "daffy"; + var dainty = "dainty"; + var dandy = "dandy"; + var deadly = "deadly"; + var dealer = "dealer"; + var deserter = "deserter"; + var dewy = "dewy"; + var dicey = "dicey"; + var dimer = "dimer"; + var dim = "dim"; + var dingy = "dingy"; + var dinky = "dinky"; + var dippy = "dippy"; + var dirty = "dirty"; + var dishy = "dishy"; + var dizzy = "dizzy"; + var dodgy = "dodgy"; + var dopey = "dopey"; + var dotty = "dotty"; + var doughy = "doughy"; + var doughty = "doughty"; + var dowdy = "dowdy"; + var dowie = "dowie"; + var downer = "downer"; + var downy = "downy"; + var dozy = "dozy"; + var drab = "drab"; + var drafty = "drafty"; + var draggy = "draggy"; + var draughty = "draughty"; + var dreamy = "dreamy"; + var dreary = "dreary"; + var dreggy = "dreggy"; + var dresser = "dresser"; + var dressy = "dressy"; + var dry = "dry"; + var drippy = "drippy"; + var drowsy = "drowsy"; + var dumpy = "dumpy"; + var dun = "dun"; + var dusky = "dusky"; + var dusty = "dusty"; + var early = "early"; + var earthy = "earthy"; + var earthly = "earthly"; + var easy = "easy"; + var easter = "easter"; + var eastsider = "eastsider"; + var edger = "edger"; + var edgy = "edgy"; + var eerie = "eerie"; + var empty = "empty"; + var faker = "faker"; + var fancy = "fancy"; + var far = "far"; + var fat = "fat"; + var fatty = "fatty"; + var faulty = "faulty"; + var feisty = "feisty"; + var feller = "feller"; + var fiddly = "fiddly"; + var filmy = "filmy"; + var filthy = "filthy"; + var finny = "finny"; + var fishy = "fishy"; + var fit = "fit"; + var flabby = "flabby"; + var flaggy = "flaggy"; + var flaky = "flaky"; + var flasher = "flasher"; + var flashy = "flashy"; + var flat = "flat"; + var flaunty = "flaunty"; + var fledgy = "fledgy"; + var fleecy = "fleecy"; + var fleshy = "fleshy"; + var fleshly = "fleshly"; + var flighty = "flighty"; + var flimsy = "flimsy"; + var flinty = "flinty"; + var floaty = "floaty"; + var floppy = "floppy"; + var flossy = "flossy"; + var fluffy = "fluffy"; + var fluky = "fluky"; + var foamy = "foamy"; + var foggy = "foggy"; + var folder = "folder"; + var folksy = "folksy"; + var foolhardy = "foolhardy"; + var foreigner = "foreigner"; + var forest = "forest"; + var founder = "founder"; + var foxy = "foxy"; + var fratchy = "fratchy"; + var freaky = "freaky"; + var free = "free"; + var frenchy = "frenchy"; + var friendly = "friendly"; + var frisky = "frisky"; + var frizzy = "frizzy"; + var frizzly = "frizzly"; + var frosty = "frosty"; + var frouzy = "frouzy"; + var frowsy = "frowsy"; + var frowzy = "frowzy"; + var fruity = "fruity"; + var funky = "funky"; + var funny = "funny"; + var furry = "furry"; + var fussy = "fussy"; + var fusty = "fusty"; + var fuzzy = "fuzzy"; + var gabby = "gabby"; + var gamy = "gamy"; + var gammy = "gammy"; + var gassy = "gassy"; + var gaudy = "gaudy"; + var gauzy = "gauzy"; + var gawky = "gawky"; + var ghastly = "ghastly"; + var ghostly = "ghostly"; + var giddy = "giddy"; + var glad = "glad"; + var glassy = "glassy"; + var glib = "glib"; + var gloomy = "gloomy"; + var glossy = "glossy"; + var glum = "glum"; + var godly = "godly"; + var goer = "goer"; + var goner = "goner"; + var goodly = "goodly"; + var goofy = "goofy"; + var gooey = "gooey"; + var goosy = "goosy"; + var gory = "gory"; + var gradely = "gradely"; + var grader = "grader"; + var grainy = "grainy"; + var grassy = "grassy"; + var greasy = "greasy"; + var greedy = "greedy"; + var grim = "grim"; + var grisly = "grisly"; + var gritty = "gritty"; + var grizzly = "grizzly"; + var groggy = "groggy"; + var groovy = "groovy"; + var grotty = "grotty"; + var grounder = "grounder"; + var grouper = "grouper"; + var grouty = "grouty"; + var grubby = "grubby"; + var grumpy = "grumpy"; + var guest = "guest"; + var guilty = "guilty"; + var gummy = "gummy"; + var gushy = "gushy"; + var gusty = "gusty"; + var gutsy = "gutsy"; + var hairy = "hairy"; + var halfway = "halfway"; + var halter = "halter"; + var hammy = "hammy"; + var handy = "handy"; + var happy = "happy"; + var hardy = "hardy"; + var hasty = "hasty"; + var haughty = "haughty"; + var hazy = "hazy"; + var header = "header"; + var heady = "heady"; + var healthy = "healthy"; + var hearty = "hearty"; + var heavy = "heavy"; + var hefty = "hefty"; + var hep = "hep"; + var herby = "herby"; + var hind = "hind"; + var hip = "hip"; + var hippy = "hippy"; + var hoary = "hoary"; + var holy = "holy"; + var homely = "homely"; + var homer = "homer"; + var homey = "homey"; + var horny = "horny"; + var horsy = "horsy"; + var hot = "hot"; + var humpy = "humpy"; + var hunger = "hunger"; + var hungry = "hungry"; + var husky = "husky"; + var icy = "icy"; + var inky = "inky"; + var insider = "insider"; + var interest = "interest"; + var jaggy = "jaggy"; + var jammy = "jammy"; + var jaunty = "jaunty"; + var jazzy = "jazzy"; + var jerky = "jerky"; + var jointer = "jointer"; + var jolly = "jolly"; + var juicy = "juicy"; + var jumpy = "jumpy"; + var kindly = "kindly"; + var kinky = "kinky"; + var knotty = "knotty"; + var knurly = "knurly"; + var kooky = "kooky"; + var lacy = "lacy"; + var lairy = "lairy"; + var laky = "laky"; + var lander = "lander"; + var lanky = "lanky"; + var lathy = "lathy"; + var layer = "layer"; + var lazy = "lazy"; + var leafy = "leafy"; + var leaky = "leaky"; + var leary = "leary"; + var leer = "leer"; + var leery = "leery"; + var leggy = "leggy"; + var lengthy = "lengthy"; + var ler = "ler"; + var leveler = "leveler"; + var limy = "limy"; + var lippy = "lippy"; + var liter = "liter"; + var lively = "lively"; + var liver = "liver"; + var loather = "loather"; + var lofty = "lofty"; + var logy = "logy"; + var lonely = "lonely"; + var loner = "loner"; + var loony = "loony"; + var loopy = "loopy"; + var lordly = "lordly"; + var lousy = "lousy"; + var lovely = "lovely"; + var lowlander = "lowlander"; + var lowly = "lowly"; + var lucky = "lucky"; + var lumpy = "lumpy"; + var luny = "luny"; + var lusty = "lusty"; + var mad = "mad"; + var mainer = "mainer"; + var maligner = "maligner"; + var malty = "malty"; + var mangy = "mangy"; + var manky = "manky"; + var manly = "manly"; + var mariner = "mariner"; + var marshy = "marshy"; + var massy = "massy"; + var matter = "matter"; + var maungy = "maungy"; + var mazy = "mazy"; + var mealy = "mealy"; + var measly = "measly"; + var meaty = "meaty"; + var meeter = "meeter"; + var merry = "merry"; + var messy = "messy"; + var miffy = "miffy"; + var mighty = "mighty"; + var milcher = "milcher"; + var milker = "milker"; + var milky = "milky"; + var mingy = "mingy"; + var minter = "minter"; + var mirky = "mirky"; + var miser = "miser"; + var misty = "misty"; + var mocker = "mocker"; + var modeler = "modeler"; + var modest = "modest"; + var moldy = "moldy"; + var moody = "moody"; + var moony = "moony"; + var mothy = "mothy"; + var mouldy = "mouldy"; + var mousy = "mousy"; + var mouthy = "mouthy"; + var mucky = "mucky"; + var muddy = "muddy"; + var muggy = "muggy"; + var multiplexer = "multiplexer"; + var murky = "murky"; + var mushy = "mushy"; + var musky = "musky"; + var muster = "muster"; + var musty = "musty"; + var muzzy = "muzzy"; + var nappy = "nappy"; + var nasty = "nasty"; + var natty = "natty"; + var naughty = "naughty"; + var needy = "needy"; + var nervy = "nervy"; + var newsy = "newsy"; + var nifty = "nifty"; + var nippy = "nippy"; + var nitty = "nitty"; + var noisy = "noisy"; + var northeasterner = "northeasterner"; + var norther = "norther"; + var northerner = "northerner"; + var nosy = "nosy"; + var number = "number"; + var nutty = "nutty"; + var offer = "offer"; + var oily = "oily"; + var oliver = "oliver"; + var oozy = "oozy"; + var opener = "opener"; + var outsider = "outsider"; + var overcomer = "overcomer"; + var overnighter = "overnighter"; + var owner = "owner"; + var pally = "pally"; + var palmy = "palmy"; + var paltry = "paltry"; + var pappy = "pappy"; + var parky = "parky"; + var passer = "passer"; + var paster = "paster"; + var pasty = "pasty"; + var patchy = "patchy"; + var pater = "pater"; + var pawky = "pawky"; + var peachy = "peachy"; + var pearler = "pearler"; + var pearly = "pearly"; + var pedaler = "pedaler"; + var peppy = "peppy"; + var perky = "perky"; + var pesky = "pesky"; + var peter = "peter"; + var petty = "petty"; + var phony = "phony"; + var picky = "picky"; + var piggy = "piggy"; + var piny = "piny"; + var pitchy = "pitchy"; + var pithy = "pithy"; + var planer = "planer"; + var plashy = "plashy"; + var platy = "platy"; + var player = "player"; + var plucky = "plucky"; + var plumber = "plumber"; + var plumy = "plumy"; + var plummy = "plummy"; + var podgy = "podgy"; + var poky = "poky"; + var polisher = "polisher"; + var porky = "porky"; + var porter = "porter"; + var portly = "portly"; + var poster = "poster"; + var potty = "potty"; + var preachy = "preachy"; + var presenter = "presenter"; + var pretender = "pretender"; + var pretty = "pretty"; + var pricy = "pricy"; + var prickly = "prickly"; + var priestly = "priestly"; + var primer = "primer"; + var prim = "prim"; + var princely = "princely"; + var printer = "printer"; + var prissy = "prissy"; + var privateer = "privateer"; + var privy = "privy"; + var prompter = "prompter"; + var prosy = "prosy"; + var pudgy = "pudgy"; + var puffer = "puffer"; + var puffy = "puffy"; + var pulpy = "pulpy"; + var punchy = "punchy"; + var puny = "puny"; + var pushy = "pushy"; + var pussy = "pussy"; + var quaggy = "quaggy"; + var quaky = "quaky"; + var queasy = "queasy"; + var queenly = "queenly"; + var racy = "racy"; + var rainy = "rainy"; + var randy = "randy"; + var rangy = "rangy"; + var ranker = "ranker"; + var ratty = "ratty"; + var rattly = "rattly"; + var raunchy = "raunchy"; + var ready = "ready"; + var recorder = "recorder"; + var red = "red"; + var reedy = "reedy"; + var renter = "renter"; + var retailer = "retailer"; + var rimy = "rimy"; + var risky = "risky"; + var ritzy = "ritzy"; + var roaster = "roaster"; + var rocky = "rocky"; + var roily = "roily"; + var rooky = "rooky"; + var roomy = "roomy"; + var ropy = "ropy"; + var rosy = "rosy"; + var rowdy = "rowdy"; + var ruddy = "ruddy"; + var runny = "runny"; + var rusher = "rusher"; + var rushy = "rushy"; + var rusty = "rusty"; + var rutty = "rutty"; + var sad = "sad"; + var salter = "salter"; + var salty = "salty"; + var sampler = "sampler"; + var sandy = "sandy"; + var sappy = "sappy"; + var sassy = "sassy"; + var saucy = "saucy"; + var savvy = "savvy"; + var scabby = "scabby"; + var scaly = "scaly"; + var scanty = "scanty"; + var scary = "scary"; + var scraggy = "scraggy"; + var scraggly = "scraggly"; + var scraper = "scraper"; + var scrappy = "scrappy"; + var scrawny = "scrawny"; + var screwy = "screwy"; + var scrubby = "scrubby"; + var scruffy = "scruffy"; + var scungy = "scungy"; + var scurvy = "scurvy"; + var seamy = "seamy"; + var seconder = "seconder"; + var seedy = "seedy"; + var seemly = "seemly"; + var serer = "serer"; + var sexy = "sexy"; + var shabby = "shabby"; + var shady = "shady"; + var shaggy = "shaggy"; + var shaky = "shaky"; + var shapely = "shapely"; + var shy = "shy"; + var shifty = "shifty"; + var shiny = "shiny"; + var shirty = "shirty"; + var shoddy = "shoddy"; + var showy = "showy"; + var shrubby = "shrubby"; + var sickly = "sickly"; + var sightly = "sightly"; + var signaler = "signaler"; + var signer = "signer"; + var silky = "silky"; + var silly = "silly"; + var sketchy = "sketchy"; + var skewer = "skewer"; + var skimpy = "skimpy"; + var skinny = "skinny"; + var slaphappy = "slaphappy"; + var slaty = "slaty"; + var slaver = "slaver"; + var sleazy = "sleazy"; + var sleepy = "sleepy"; + var sly = "sly"; + var slimy = "slimy"; + var slim = "slim"; + var slimsy = "slimsy"; + var slinky = "slinky"; + var slippy = "slippy"; + var sloppy = "sloppy"; + var smarmy = "smarmy"; + var smelly = "smelly"; + var smoky = "smoky"; + var smug = "smug"; + var snaky = "snaky"; + var snappy = "snappy"; + var snatchy = "snatchy"; + var snazzy = "snazzy"; + var sneaker = "sneaker"; + var sniffy = "sniffy"; + var snooty = "snooty"; + var snotty = "snotty"; + var snowy = "snowy"; + var snuffer = "snuffer"; + var snuffy = "snuffy"; + var snug = "snug"; + var soapy = "soapy"; + var soggy = "soggy"; + var solder = "solder"; + var sonsy = "sonsy"; + var sooty = "sooty"; + var soppy = "soppy"; + var sorry = "sorry"; + var soupy = "soupy"; + var souther = "souther"; + var southerner = "southerner"; + var speedy = "speedy"; + var spicy = "spicy"; + var spiffy = "spiffy"; + var spiky = "spiky"; + var spindly = "spindly"; + var spiny = "spiny"; + var splashy = "splashy"; + var spongy = "spongy"; + var spooky = "spooky"; + var spoony = "spoony"; + var sporty = "sporty"; + var spotty = "spotty"; + var spreader = "spreader"; + var spry = "spry"; + var sprightly = "sprightly"; + var springer = "springer"; + var springy = "springy"; + var squashy = "squashy"; + var squat = "squat"; + var squatty = "squatty"; + var squiffy = "squiffy"; + var stagy = "stagy"; + var stalky = "stalky"; + var stapler = "stapler"; + var starchy = "starchy"; + var starer = "starer"; + var starest = "starest"; + var starry = "starry"; + var stately = "stately"; + var steady = "steady"; + var stealthy = "stealthy"; + var steamy = "steamy"; + var stingy = "stingy"; + var striper = "striper"; + var stocker = "stocker"; + var stocky = "stocky"; + var stodgy = "stodgy"; + var stony = "stony"; + var stormy = "stormy"; + var streaky = "streaky"; + var streamy = "streamy"; + var stretcher = "stretcher"; + var stretchy = "stretchy"; + var stringy = "stringy"; + var stripy = "stripy"; + var strong = "strong"; + var stroppy = "stroppy"; + var stuffy = "stuffy"; + var stumpy = "stumpy"; + var sturdy = "sturdy"; + var submariner = "submariner"; + var sulky = "sulky"; + var sultry = "sultry"; + var sunny = "sunny"; + var surly = "surly"; + var swagger = "swagger"; + var swanky = "swanky"; + var swarthy = "swarthy"; + var sweaty = "sweaty"; + var tacky = "tacky"; + var talky = "talky"; + var tangy = "tangy"; + var tan = "tan"; + var tardy = "tardy"; + var tasty = "tasty"; + var tatty = "tatty"; + var tawdry = "tawdry"; + var techy = "techy"; + var teenager = "teenager"; + var teeny = "teeny"; + var teetotaler = "teetotaler"; + var tester = "tester"; + var testy = "testy"; + var tetchy = "tetchy"; + var thin = "thin"; + var thirsty = "thirsty"; + var thorny = "thorny"; + var thready = "thready"; + var thrifty = "thrifty"; + var throaty = "throaty"; + var tidy = "tidy"; + var timely = "timely"; + var tiny = "tiny"; + var tinny = "tinny"; + var tipsy = "tipsy"; + var tony = "tony"; + var toothy = "toothy"; + var toper = "toper"; + var touchy = "touchy"; + var trader = "trader"; + var trashy = "trashy"; + var trendy = "trendy"; + var tricky = "tricky"; + var tricksy = "tricksy"; + var trimer = "trimer"; + var trim2 = "trim"; + var true1 = "true"; + var trusty = "trusty"; + var tubby = "tubby"; + var turfy = "turfy"; + var tweedy = "tweedy"; + var twiggy = "twiggy"; + var ugly = "ugly"; + var unfriendly = "unfriendly"; + var ungainly = "ungainly"; + var ungodly = "ungodly"; + var unhappy = "unhappy"; + var unhealthy = "unhealthy"; + var unholy = "unholy"; + var unruly = "unruly"; + var untidy = "untidy"; + var vasty = "vasty"; + var vest = "vest"; + var viewy = "viewy"; + var wacky = "wacky"; + var wan = "wan"; + var wary = "wary"; + var washy = "washy"; + var waster = "waster"; + var wavy = "wavy"; + var waxy = "waxy"; + var weakly = "weakly"; + var wealthy = "wealthy"; + var weary = "weary"; + var webby = "webby"; + var weedy = "weedy"; + var weeny = "weeny"; + var weensy = "weensy"; + var weepy = "weepy"; + var weighty = "weighty"; + var welsher = "welsher"; + var wet = "wet"; + var whacky = "whacky"; + var whimsy = "whimsy"; + var wholesaler = "wholesaler"; + var wieldy = "wieldy"; + var wily = "wily"; + var windy = "windy"; + var winy = "winy"; + var wintery = "wintery"; + var wintry = "wintry"; + var wiry = "wiry"; + var wispy = "wispy"; + var witty = "witty"; + var wonky = "wonky"; + var woody = "woody"; + var woodsy = "woodsy"; + var woolly = "woolly"; + var woozy = "woozy"; + var wordy = "wordy"; + var worldly = "worldly"; + var wormy = "wormy"; + var bad = "bad"; + var worthy = "worthy"; + var wry = "wry"; + var yare = "yare"; + var yeasty = "yeasty"; + var young = "young"; + var yummy = "yummy"; + var zany = "zany"; + var zippy = "zippy"; + exceptions.acer = acer, exceptions.after = after, exceptions.airier = airy, exceptions.airiest = airy, exceptions.angrier = angry, exceptions.angriest = angry, exceptions.archer = archer, exceptions.artier = arty, exceptions.artiest = arty, exceptions.ashier = ashy, exceptions.ashiest = ashy, exceptions.assaulter = assaulter, exceptions.attacker = attacker, exceptions.backer = backer, exceptions.baggier = baggy, exceptions.baggiest = baggy, exceptions.balkier = balky, exceptions.balkiest = balky, exceptions.balmier = balmy, exceptions.balmiest = balmy, exceptions.bandier = bandy, exceptions.bandiest = bandy, exceptions.bargainer = bargainer, exceptions.barmier = barmy, exceptions.barmiest = barmy, exceptions.battier = batty, exceptions.battiest = batty, exceptions.baulkier = baulky, exceptions.baulkiest = baulky, exceptions.bawdier = bawdy, exceptions.bawdiest = bawdy, exceptions.bayer = bayer, exceptions.beadier = beady, exceptions.beadiest = beady, exceptions.beastlier = beastly, exceptions.beastliest = beastly, exceptions.beater = beater, exceptions.beefier = beefy, exceptions.beefiest = beefy, exceptions.beerier = beery, exceptions.beeriest = beery, exceptions.bendier = bendy, exceptions.bendiest = bendy, exceptions.best = good, exceptions.better = good, exceptions.bigger = big, exceptions.biggest = big, exceptions.bitchier = bitchy, exceptions.bitchiest = bitchy, exceptions.biter = biter, exceptions.bittier = bitty, exceptions.bittiest = bitty, exceptions.blearier = bleary, exceptions.bleariest = bleary, exceptions.bloodier = bloody, exceptions.bloodiest = bloody, exceptions.bloodthirstier = bloodthirsty, exceptions.bloodthirstiest = bloodthirsty, exceptions.blowier = blowy, exceptions.blowiest = blowy, exceptions.blowsier = blowsy, exceptions.blowsiest = blowsy, exceptions.blowzier = blowzy, exceptions.blowziest = blowzy, exceptions.bluer = blue, exceptions.bluest = blue, exceptions.boner = boner, exceptions.bonier = bony, exceptions.boniest = bony, exceptions.bonnier = bonny, exceptions.bonniest = bonny, exceptions.boozier = boozy, exceptions.booziest = boozy, exceptions.boskier = bosky, exceptions.boskiest = bosky, exceptions.bossier = bossy, exceptions.bossiest = bossy, exceptions.botchier = botchy, exceptions.botchiest = botchy, exceptions.bother = bother, exceptions.bouncier = bouncy, exceptions.bounciest = bouncy, exceptions.bounder = bounder, exceptions.bower = bower, exceptions.brainier = brainy, exceptions.brainiest = brainy, exceptions.brashier = brashy, exceptions.brashiest = brashy, exceptions.brassier = brassy, exceptions.brassiest = brassy, exceptions.brawnier = brawny, exceptions.brawniest = brawny, exceptions.breathier = breathy, exceptions.breathiest = breathy, exceptions.breezier = breezy, exceptions.breeziest = breezy, exceptions.brinier = briny, exceptions.briniest = briny, exceptions.britisher = britisher, exceptions.broadcaster = broadcaster, exceptions.brooder = brooder, exceptions.broodier = broody, exceptions.broodiest = broody, exceptions.bubblier = bubbly, exceptions.bubbliest = bubbly, exceptions.buggier = buggy, exceptions.buggiest = buggy, exceptions.bulkier = bulky, exceptions.bulkiest = bulky, exceptions.bumpier = bumpy, exceptions.bumpiest = bumpy, exceptions.bunchier = bunchy, exceptions.bunchiest = bunchy, exceptions.burlier = burly, exceptions.burliest = burly, exceptions.burrier = burry, exceptions.burriest = burry, exceptions.burster = burster, exceptions.bushier = bushy, exceptions.bushiest = bushy, exceptions.busier = busy, exceptions.busiest = busy, exceptions.buster = buster, exceptions.bustier = busty, exceptions.bustiest = busty, exceptions.cagier = cagey, exceptions.cagiest = cagey, exceptions.camper = camper, exceptions.cannier = canny, exceptions.canniest = canny, exceptions.canter = canter, exceptions.cantier = canty, exceptions.cantiest = canty, exceptions.caster = caster, exceptions.catchier = catchy, exceptions.catchiest = catchy, exceptions.cattier = catty, exceptions.cattiest = catty, exceptions.cer = cer, exceptions.chancier = chancy, exceptions.chanciest = chancy, exceptions.charier = chary, exceptions.chariest = chary, exceptions.chattier = chatty, exceptions.chattiest = chatty, exceptions.cheekier = cheeky, exceptions.cheekiest = cheeky, exceptions.cheerier = cheery, exceptions.cheeriest = cheery, exceptions.cheesier = cheesy, exceptions.cheesiest = cheesy, exceptions.chestier = chesty, exceptions.chestiest = chesty, exceptions.chewier = chewy, exceptions.chewiest = chewy, exceptions.chillier = chilly, exceptions.chilliest = chilly, exceptions.chintzier = chintzy, exceptions.chintziest = chintzy, exceptions.chippier = chippy, exceptions.chippiest = chippy, exceptions.choosier = choosy, exceptions.choosiest = choosy, exceptions.choppier = choppy, exceptions.choppiest = choppy, exceptions.chubbier = chubby, exceptions.chubbiest = chubby, exceptions.chuffier = chuffy, exceptions.chuffiest = chuffy, exceptions.chummier = chummy, exceptions.chummiest = chummy, exceptions.chunkier = chunky, exceptions.chunkiest = chunky, exceptions.churchier = churchy, exceptions.churchiest = churchy, exceptions.clammier = clammy, exceptions.clammiest = clammy, exceptions.classier = classy, exceptions.classiest = classy, exceptions.cleanlier = cleanly, exceptions.cleanliest = cleanly, exceptions.clerklier = clerkly, exceptions.clerkliest = clerkly, exceptions.cloudier = cloudy, exceptions.cloudiest = cloudy, exceptions.clubbier = clubby, exceptions.clubbiest = clubby, exceptions.clumsier = clumsy, exceptions.clumsiest = clumsy, exceptions.cockier = cocky, exceptions.cockiest = cocky, exceptions.coder = coder, exceptions.collier = colly, exceptions.colliest = colly, exceptions.comelier = comely, exceptions.comeliest = comely, exceptions.comfier = comfy, exceptions.comfiest = comfy, exceptions.cornier = corny, exceptions.corniest = corny, exceptions.cosier = cosy, exceptions.cosiest = cosy, exceptions.costlier = costly, exceptions.costliest = costly, exceptions.costumer = costumer, exceptions.counterfeiter = counterfeiter, exceptions.courtlier = courtly, exceptions.courtliest = courtly, exceptions.cozier = cozy, exceptions.coziest = cozy, exceptions.crabbier = crabby, exceptions.crabbiest = crabby, exceptions.cracker = cracker, exceptions.craftier = crafty, exceptions.craftiest = crafty, exceptions.craggier = craggy, exceptions.craggiest = craggy, exceptions.crankier = cranky, exceptions.crankiest = cranky, exceptions.crasher = crasher, exceptions.crawlier = crawly, exceptions.crawliest = crawly, exceptions.crazier = crazy, exceptions.craziest = crazy, exceptions.creamer = creamer, exceptions.creamier = creamy, exceptions.creamiest = creamy, exceptions.creepier = creepy, exceptions.creepiest = creepy, exceptions.crispier = crispy, exceptions.crispiest = crispy, exceptions.crumbier = crumby, exceptions.crumbiest = crumby, exceptions.crumblier = crumbly, exceptions.crumbliest = crumbly, exceptions.crummier = crummy, exceptions.crummiest = crummy, exceptions.crustier = crusty, exceptions.crustiest = crusty, exceptions.curlier = curly, exceptions.curliest = curly, exceptions.customer = customer, exceptions.cuter = cute, exceptions.daffier = daffy, exceptions.daffiest = daffy, exceptions.daintier = dainty, exceptions.daintiest = dainty, exceptions.dandier = dandy, exceptions.dandiest = dandy, exceptions.deadlier = deadly, exceptions.deadliest = deadly, exceptions.dealer = dealer, exceptions.deserter = deserter, exceptions.dewier = dewy, exceptions.dewiest = dewy, exceptions.dicier = dicey, exceptions.diciest = dicey, exceptions.dimer = dimer, exceptions.dimmer = dim, exceptions.dimmest = dim, exceptions.dingier = dingy, exceptions.dingiest = dingy, exceptions.dinkier = dinky, exceptions.dinkiest = dinky, exceptions.dippier = dippy, exceptions.dippiest = dippy, exceptions.dirtier = dirty, exceptions.dirtiest = dirty, exceptions.dishier = dishy, exceptions.dishiest = dishy, exceptions.dizzier = dizzy, exceptions.dizziest = dizzy, exceptions.dodgier = dodgy, exceptions.dodgiest = dodgy, exceptions.dopier = dopey, exceptions.dopiest = dopey, exceptions.dottier = dotty, exceptions.dottiest = dotty, exceptions.doughier = doughy, exceptions.doughiest = doughy, exceptions.doughtier = doughty, exceptions.doughtiest = doughty, exceptions.dowdier = dowdy, exceptions.dowdiest = dowdy, exceptions.dowier = dowie, exceptions.dowiest = dowie, exceptions.downer = downer, exceptions.downier = downy, exceptions.downiest = downy, exceptions.dozier = dozy, exceptions.doziest = dozy, exceptions.drabber = drab, exceptions.drabbest = drab, exceptions.draftier = drafty, exceptions.draftiest = drafty, exceptions.draggier = draggy, exceptions.draggiest = draggy, exceptions.draughtier = draughty, exceptions.draughtiest = draughty, exceptions.dreamier = dreamy, exceptions.dreamiest = dreamy, exceptions.drearier = dreary, exceptions.dreariest = dreary, exceptions.dreggier = dreggy, exceptions.dreggiest = dreggy, exceptions.dresser = dresser, exceptions.dressier = dressy, exceptions.dressiest = dressy, exceptions.drier = dry, exceptions.driest = dry, exceptions.drippier = drippy, exceptions.drippiest = drippy, exceptions.drowsier = drowsy, exceptions.drowsiest = drowsy, exceptions.dryer = dry, exceptions.dryest = dry, exceptions.dumpier = dumpy, exceptions.dumpiest = dumpy, exceptions.dunner = dun, exceptions.dunnest = dun, exceptions.duskier = dusky, exceptions.duskiest = dusky, exceptions.dustier = dusty, exceptions.dustiest = dusty, exceptions.earlier = early, exceptions.earliest = early, exceptions.earthier = earthy, exceptions.earthiest = earthy, exceptions.earthlier = earthly, exceptions.earthliest = earthly, exceptions.easier = easy, exceptions.easiest = easy, exceptions.easter = easter, exceptions.eastsider = eastsider, exceptions.edger = edger, exceptions.edgier = edgy, exceptions.edgiest = edgy, exceptions.eerier = eerie, exceptions.eeriest = eerie, exceptions.emptier = empty, exceptions.emptiest = empty, exceptions.faker = faker, exceptions.fancier = fancy, exceptions.fanciest = fancy, exceptions.furthest = far, exceptions.farthest = far, exceptions.fatter = fat, exceptions.fattest = fat, exceptions.fattier = fatty, exceptions.fattiest = fatty, exceptions.faultier = faulty, exceptions.faultiest = faulty, exceptions.feistier = feisty, exceptions.feistiest = feisty, exceptions.feller = feller, exceptions.fiddlier = fiddly, exceptions.fiddliest = fiddly, exceptions.filmier = filmy, exceptions.filmiest = filmy, exceptions.filthier = filthy, exceptions.filthiest = filthy, exceptions.finnier = finny, exceptions.finniest = finny, exceptions.fishier = fishy, exceptions.fishiest = fishy, exceptions.fitter = fit, exceptions.fittest = fit, exceptions.flabbier = flabby, exceptions.flabbiest = flabby, exceptions.flaggier = flaggy, exceptions.flaggiest = flaggy, exceptions.flakier = flaky, exceptions.flakiest = flaky, exceptions.flasher = flasher, exceptions.flashier = flashy, exceptions.flashiest = flashy, exceptions.flatter = flat, exceptions.flattest = flat, exceptions.flauntier = flaunty, exceptions.flauntiest = flaunty, exceptions.fledgier = fledgy, exceptions.fledgiest = fledgy, exceptions.fleecier = fleecy, exceptions.fleeciest = fleecy, exceptions.fleshier = fleshy, exceptions.fleshiest = fleshy, exceptions.fleshlier = fleshly, exceptions.fleshliest = fleshly, exceptions.flightier = flighty, exceptions.flightiest = flighty, exceptions.flimsier = flimsy, exceptions.flimsiest = flimsy, exceptions.flintier = flinty, exceptions.flintiest = flinty, exceptions.floatier = floaty, exceptions.floatiest = floaty, exceptions.floppier = floppy, exceptions.floppiest = floppy, exceptions.flossier = flossy, exceptions.flossiest = flossy, exceptions.fluffier = fluffy, exceptions.fluffiest = fluffy, exceptions.flukier = fluky, exceptions.flukiest = fluky, exceptions.foamier = foamy, exceptions.foamiest = foamy, exceptions.foggier = foggy, exceptions.foggiest = foggy, exceptions.folder = folder, exceptions.folksier = folksy, exceptions.folksiest = folksy, exceptions.foolhardier = foolhardy, exceptions.foolhardiest = foolhardy, exceptions.foreigner = foreigner, exceptions.forest = forest, exceptions.founder = founder, exceptions.foxier = foxy, exceptions.foxiest = foxy, exceptions.fratchier = fratchy, exceptions.fratchiest = fratchy, exceptions.freakier = freaky, exceptions.freakiest = freaky, exceptions.freer = free, exceptions.freest = free, exceptions.frenchier = frenchy, exceptions.frenchiest = frenchy, exceptions.friendlier = friendly, exceptions.friendliest = friendly, exceptions.friskier = frisky, exceptions.friskiest = frisky, exceptions.frizzier = frizzy, exceptions.frizziest = frizzy, exceptions.frizzlier = frizzly, exceptions.frizzliest = frizzly, exceptions.frostier = frosty, exceptions.frostiest = frosty, exceptions.frouzier = frouzy, exceptions.frouziest = frouzy, exceptions.frowsier = frowsy, exceptions.frowsiest = frowsy, exceptions.frowzier = frowzy, exceptions.frowziest = frowzy, exceptions.fruitier = fruity, exceptions.fruitiest = fruity, exceptions.funkier = funky, exceptions.funkiest = funky, exceptions.funnier = funny, exceptions.funniest = funny, exceptions.furrier = furry, exceptions.furriest = furry, exceptions.fussier = fussy, exceptions.fussiest = fussy, exceptions.fustier = fusty, exceptions.fustiest = fusty, exceptions.fuzzier = fuzzy, exceptions.fuzziest = fuzzy, exceptions.gabbier = gabby, exceptions.gabbiest = gabby, exceptions.gamier = gamy, exceptions.gamiest = gamy, exceptions.gammier = gammy, exceptions.gammiest = gammy, exceptions.gassier = gassy, exceptions.gassiest = gassy, exceptions.gaudier = gaudy, exceptions.gaudiest = gaudy, exceptions.gauzier = gauzy, exceptions.gauziest = gauzy, exceptions.gawkier = gawky, exceptions.gawkiest = gawky, exceptions.ghastlier = ghastly, exceptions.ghastliest = ghastly, exceptions.ghostlier = ghostly, exceptions.ghostliest = ghostly, exceptions.giddier = giddy, exceptions.giddiest = giddy, exceptions.gladder = glad, exceptions.gladdest = glad, exceptions.glassier = glassy, exceptions.glassiest = glassy, exceptions.glibber = glib, exceptions.glibbest = glib, exceptions.gloomier = gloomy, exceptions.gloomiest = gloomy, exceptions.glossier = glossy, exceptions.glossiest = glossy, exceptions.glummer = glum, exceptions.glummest = glum, exceptions.godlier = godly, exceptions.godliest = godly, exceptions.goer = goer, exceptions.goner = goner, exceptions.goodlier = goodly, exceptions.goodliest = goodly, exceptions.goofier = goofy, exceptions.goofiest = goofy, exceptions.gooier = gooey, exceptions.gooiest = gooey, exceptions.goosier = goosy, exceptions.goosiest = goosy, exceptions.gorier = gory, exceptions.goriest = gory, exceptions.gradelier = gradely, exceptions.gradeliest = gradely, exceptions.grader = grader, exceptions.grainier = grainy, exceptions.grainiest = grainy, exceptions.grassier = grassy, exceptions.grassiest = grassy, exceptions.greasier = greasy, exceptions.greasiest = greasy, exceptions.greedier = greedy, exceptions.greediest = greedy, exceptions.grimmer = grim, exceptions.grimmest = grim, exceptions.grislier = grisly, exceptions.grisliest = grisly, exceptions.grittier = gritty, exceptions.grittiest = gritty, exceptions.grizzlier = grizzly, exceptions.grizzliest = grizzly, exceptions.groggier = groggy, exceptions.groggiest = groggy, exceptions.groovier = groovy, exceptions.grooviest = groovy, exceptions.grottier = grotty, exceptions.grottiest = grotty, exceptions.grounder = grounder, exceptions.grouper = grouper, exceptions.groutier = grouty, exceptions.groutiest = grouty, exceptions.grubbier = grubby, exceptions.grubbiest = grubby, exceptions.grumpier = grumpy, exceptions.grumpiest = grumpy, exceptions.guest = guest, exceptions.guiltier = guilty, exceptions.guiltiest = guilty, exceptions.gummier = gummy, exceptions.gummiest = gummy, exceptions.gushier = gushy, exceptions.gushiest = gushy, exceptions.gustier = gusty, exceptions.gustiest = gusty, exceptions.gutsier = gutsy, exceptions.gutsiest = gutsy, exceptions.hairier = hairy, exceptions.hairiest = hairy, exceptions.halfways = halfway, exceptions.halter = halter, exceptions.hammier = hammy, exceptions.hammiest = hammy, exceptions.handier = handy, exceptions.handiest = handy, exceptions.happier = happy, exceptions.happiest = happy, exceptions.hardier = hardy, exceptions.hardiest = hardy, exceptions.hastier = hasty, exceptions.hastiest = hasty, exceptions.haughtier = haughty, exceptions.haughtiest = haughty, exceptions.hazier = hazy, exceptions.haziest = hazy, exceptions.header = header, exceptions.headier = heady, exceptions.headiest = heady, exceptions.healthier = healthy, exceptions.healthiest = healthy, exceptions.heartier = hearty, exceptions.heartiest = hearty, exceptions.heavier = heavy, exceptions.heaviest = heavy, exceptions.heftier = hefty, exceptions.heftiest = hefty, exceptions.hepper = hep, exceptions.heppest = hep, exceptions.herbier = herby, exceptions.herbiest = herby, exceptions.hinder = hind, exceptions.hipper = hip, exceptions.hippest = hip, exceptions.hippier = hippy, exceptions.hippiest = hippy, exceptions.hoarier = hoary, exceptions.hoariest = hoary, exceptions.holier = holy, exceptions.holiest = holy, exceptions.homelier = homely, exceptions.homeliest = homely, exceptions.homer = homer, exceptions.homier = homey, exceptions.homiest = homey, exceptions.hornier = horny, exceptions.horniest = horny, exceptions.horsier = horsy, exceptions.horsiest = horsy, exceptions.hotter = hot, exceptions.hottest = hot, exceptions.humpier = humpy, exceptions.humpiest = humpy, exceptions.hunger = hunger, exceptions.hungrier = hungry, exceptions.hungriest = hungry, exceptions.huskier = husky, exceptions.huskiest = husky, exceptions.icier = icy, exceptions.iciest = icy, exceptions.inkier = inky, exceptions.inkiest = inky, exceptions.insider = insider, exceptions.interest = interest, exceptions.jaggier = jaggy, exceptions.jaggiest = jaggy, exceptions.jammier = jammy, exceptions.jammiest = jammy, exceptions.jauntier = jaunty, exceptions.jauntiest = jaunty, exceptions.jazzier = jazzy, exceptions.jazziest = jazzy, exceptions.jerkier = jerky, exceptions.jerkiest = jerky, exceptions.jointer = jointer, exceptions.jollier = jolly, exceptions.jolliest = jolly, exceptions.juicier = juicy, exceptions.juiciest = juicy, exceptions.jumpier = jumpy, exceptions.jumpiest = jumpy, exceptions.kindlier = kindly, exceptions.kindliest = kindly, exceptions.kinkier = kinky, exceptions.kinkiest = kinky, exceptions.knottier = knotty, exceptions.knottiest = knotty, exceptions.knurlier = knurly, exceptions.knurliest = knurly, exceptions.kookier = kooky, exceptions.kookiest = kooky, exceptions.lacier = lacy, exceptions.laciest = lacy, exceptions.lairier = lairy, exceptions.lairiest = lairy, exceptions.lakier = laky, exceptions.lakiest = laky, exceptions.lander = lander, exceptions.lankier = lanky, exceptions.lankiest = lanky, exceptions.lathier = lathy, exceptions.lathiest = lathy, exceptions.layer = layer, exceptions.lazier = lazy, exceptions.laziest = lazy, exceptions.leafier = leafy, exceptions.leafiest = leafy, exceptions.leakier = leaky, exceptions.leakiest = leaky, exceptions.learier = leary, exceptions.leariest = leary, exceptions.leer = leer, exceptions.leerier = leery, exceptions.leeriest = leery, exceptions.leggier = leggy, exceptions.leggiest = leggy, exceptions.lengthier = lengthy, exceptions.lengthiest = lengthy, exceptions.ler = ler, exceptions.leveler = leveler, exceptions.limier = limy, exceptions.limiest = limy, exceptions.lippier = lippy, exceptions.lippiest = lippy, exceptions.liter = liter, exceptions.livelier = lively, exceptions.liveliest = lively, exceptions.liver = liver, exceptions.loather = loather, exceptions.loftier = lofty, exceptions.loftiest = lofty, exceptions.logier = logy, exceptions.logiest = logy, exceptions.lonelier = lonely, exceptions.loneliest = lonely, exceptions.loner = loner, exceptions.loonier = loony, exceptions.looniest = loony, exceptions.loopier = loopy, exceptions.loopiest = loopy, exceptions.lordlier = lordly, exceptions.lordliest = lordly, exceptions.lousier = lousy, exceptions.lousiest = lousy, exceptions.lovelier = lovely, exceptions.loveliest = lovely, exceptions.lowlander = lowlander, exceptions.lowlier = lowly, exceptions.lowliest = lowly, exceptions.luckier = lucky, exceptions.luckiest = lucky, exceptions.lumpier = lumpy, exceptions.lumpiest = lumpy, exceptions.lunier = luny, exceptions.luniest = luny, exceptions.lustier = lusty, exceptions.lustiest = lusty, exceptions.madder = mad, exceptions.maddest = mad, exceptions.mainer = mainer, exceptions.maligner = maligner, exceptions.maltier = malty, exceptions.maltiest = malty, exceptions.mangier = mangy, exceptions.mangiest = mangy, exceptions.mankier = manky, exceptions.mankiest = manky, exceptions.manlier = manly, exceptions.manliest = manly, exceptions.mariner = mariner, exceptions.marshier = marshy, exceptions.marshiest = marshy, exceptions.massier = massy, exceptions.massiest = massy, exceptions.matter = matter, exceptions.maungier = maungy, exceptions.maungiest = maungy, exceptions.mazier = mazy, exceptions.maziest = mazy, exceptions.mealier = mealy, exceptions.mealiest = mealy, exceptions.measlier = measly, exceptions.measliest = measly, exceptions.meatier = meaty, exceptions.meatiest = meaty, exceptions.meeter = meeter, exceptions.merrier = merry, exceptions.merriest = merry, exceptions.messier = messy, exceptions.messiest = messy, exceptions.miffier = miffy, exceptions.miffiest = miffy, exceptions.mightier = mighty, exceptions.mightiest = mighty, exceptions.milcher = milcher, exceptions.milker = milker, exceptions.milkier = milky, exceptions.milkiest = milky, exceptions.mingier = mingy, exceptions.mingiest = mingy, exceptions.minter = minter, exceptions.mirkier = mirky, exceptions.mirkiest = mirky, exceptions.miser = miser, exceptions.mistier = misty, exceptions.mistiest = misty, exceptions.mocker = mocker, exceptions.modeler = modeler, exceptions.modest = modest, exceptions.moldier = moldy, exceptions.moldiest = moldy, exceptions.moodier = moody, exceptions.moodiest = moody, exceptions.moonier = moony, exceptions.mooniest = moony, exceptions.mothier = mothy, exceptions.mothiest = mothy, exceptions.mouldier = mouldy, exceptions.mouldiest = mouldy, exceptions.mousier = mousy, exceptions.mousiest = mousy, exceptions.mouthier = mouthy, exceptions.mouthiest = mouthy, exceptions.muckier = mucky, exceptions.muckiest = mucky, exceptions.muddier = muddy, exceptions.muddiest = muddy, exceptions.muggier = muggy, exceptions.muggiest = muggy, exceptions.multiplexer = multiplexer, exceptions.murkier = murky, exceptions.murkiest = murky, exceptions.mushier = mushy, exceptions.mushiest = mushy, exceptions.muskier = musky, exceptions.muskiest = musky, exceptions.muster = muster, exceptions.mustier = musty, exceptions.mustiest = musty, exceptions.muzzier = muzzy, exceptions.muzziest = muzzy, exceptions.nappier = nappy, exceptions.nappiest = nappy, exceptions.nastier = nasty, exceptions.nastiest = nasty, exceptions.nattier = natty, exceptions.nattiest = natty, exceptions.naughtier = naughty, exceptions.naughtiest = naughty, exceptions.needier = needy, exceptions.neediest = needy, exceptions.nervier = nervy; + exceptions.nerviest = nervy, exceptions.newsier = newsy, exceptions.newsiest = newsy, exceptions.niftier = nifty, exceptions.niftiest = nifty, exceptions.nippier = nippy, exceptions.nippiest = nippy, exceptions.nittier = nitty, exceptions.nittiest = nitty, exceptions.noisier = noisy, exceptions.noisiest = noisy, exceptions.northeasterner = northeasterner, exceptions.norther = norther, exceptions.northerner = northerner, exceptions.nosier = nosy, exceptions.nosiest = nosy, exceptions.number = number, exceptions.nuttier = nutty, exceptions.nuttiest = nutty, exceptions.offer = offer, exceptions.oilier = oily, exceptions.oiliest = oily, exceptions.oliver = oliver, exceptions.oozier = oozy, exceptions.ooziest = oozy, exceptions.opener = opener, exceptions.outsider = outsider, exceptions.overcomer = overcomer, exceptions.overnighter = overnighter, exceptions.owner = owner, exceptions.pallier = pally, exceptions.palliest = pally, exceptions.palmier = palmy, exceptions.palmiest = palmy, exceptions.paltrier = paltry, exceptions.paltriest = paltry, exceptions.pappier = pappy, exceptions.pappiest = pappy, exceptions.parkier = parky, exceptions.parkiest = parky, exceptions.passer = passer, exceptions.paster = paster, exceptions.pastier = pasty, exceptions.pastiest = pasty, exceptions.patchier = patchy, exceptions.patchiest = patchy, exceptions.pater = pater, exceptions.pawkier = pawky, exceptions.pawkiest = pawky, exceptions.peachier = peachy, exceptions.peachiest = peachy, exceptions.pearler = pearler, exceptions.pearlier = pearly, exceptions.pearliest = pearly, exceptions.pedaler = pedaler, exceptions.peppier = peppy, exceptions.peppiest = peppy, exceptions.perkier = perky, exceptions.perkiest = perky, exceptions.peskier = pesky, exceptions.peskiest = pesky, exceptions.peter = peter, exceptions.pettier = petty, exceptions.pettiest = petty, exceptions.phonier = phony, exceptions.phoniest = phony, exceptions.pickier = picky, exceptions.pickiest = picky, exceptions.piggier = piggy, exceptions.piggiest = piggy, exceptions.pinier = piny, exceptions.piniest = piny, exceptions.pitchier = pitchy, exceptions.pitchiest = pitchy, exceptions.pithier = pithy, exceptions.pithiest = pithy, exceptions.planer = planer, exceptions.plashier = plashy, exceptions.plashiest = plashy, exceptions.platier = platy, exceptions.platiest = platy, exceptions.player = player, exceptions.pluckier = plucky, exceptions.pluckiest = plucky, exceptions.plumber = plumber, exceptions.plumier = plumy, exceptions.plumiest = plumy, exceptions.plummier = plummy, exceptions.plummiest = plummy, exceptions.podgier = podgy, exceptions.podgiest = podgy, exceptions.pokier = poky, exceptions.pokiest = poky, exceptions.polisher = polisher, exceptions.porkier = porky, exceptions.porkiest = porky, exceptions.porter = porter, exceptions.portlier = portly, exceptions.portliest = portly, exceptions.poster = poster, exceptions.pottier = potty, exceptions.pottiest = potty, exceptions.preachier = preachy, exceptions.preachiest = preachy, exceptions.presenter = presenter, exceptions.pretender = pretender, exceptions.prettier = pretty, exceptions.prettiest = pretty, exceptions.pricier = pricy, exceptions.priciest = pricy, exceptions.pricklier = prickly, exceptions.prickliest = prickly, exceptions.priestlier = priestly, exceptions.priestliest = priestly, exceptions.primer = primer, exceptions.primmer = prim, exceptions.primmest = prim, exceptions.princelier = princely, exceptions.princeliest = princely, exceptions.printer = printer, exceptions.prissier = prissy, exceptions.prissiest = prissy, exceptions.privateer = privateer, exceptions.privier = privy, exceptions.priviest = privy, exceptions.prompter = prompter, exceptions.prosier = prosy, exceptions.prosiest = prosy, exceptions.pudgier = pudgy, exceptions.pudgiest = pudgy, exceptions.puffer = puffer, exceptions.puffier = puffy, exceptions.puffiest = puffy, exceptions.pulpier = pulpy, exceptions.pulpiest = pulpy, exceptions.punchier = punchy, exceptions.punchiest = punchy, exceptions.punier = puny, exceptions.puniest = puny, exceptions.pushier = pushy, exceptions.pushiest = pushy, exceptions.pussier = pussy, exceptions.pussiest = pussy, exceptions.quaggier = quaggy, exceptions.quaggiest = quaggy, exceptions.quakier = quaky, exceptions.quakiest = quaky, exceptions.queasier = queasy, exceptions.queasiest = queasy, exceptions.queenlier = queenly, exceptions.queenliest = queenly, exceptions.racier = racy, exceptions.raciest = racy, exceptions.rainier = rainy, exceptions.rainiest = rainy, exceptions.randier = randy, exceptions.randiest = randy, exceptions.rangier = rangy, exceptions.rangiest = rangy, exceptions.ranker = ranker, exceptions.rattier = ratty, exceptions.rattiest = ratty, exceptions.rattlier = rattly, exceptions.rattliest = rattly, exceptions.raunchier = raunchy, exceptions.raunchiest = raunchy, exceptions.readier = ready, exceptions.readiest = ready, exceptions.recorder = recorder, exceptions.redder = red, exceptions.reddest = red, exceptions.reedier = reedy, exceptions.reediest = reedy, exceptions.renter = renter, exceptions.retailer = retailer, exceptions.rimier = rimy, exceptions.rimiest = rimy, exceptions.riskier = risky, exceptions.riskiest = risky, exceptions.ritzier = ritzy, exceptions.ritziest = ritzy, exceptions.roaster = roaster, exceptions.rockier = rocky, exceptions.rockiest = rocky, exceptions.roilier = roily, exceptions.roiliest = roily, exceptions.rookier = rooky, exceptions.rookiest = rooky, exceptions.roomier = roomy, exceptions.roomiest = roomy, exceptions.ropier = ropy, exceptions.ropiest = ropy, exceptions.rosier = rosy, exceptions.rosiest = rosy, exceptions.rowdier = rowdy, exceptions.rowdiest = rowdy, exceptions.ruddier = ruddy, exceptions.ruddiest = ruddy, exceptions.runnier = runny, exceptions.runniest = runny, exceptions.rusher = rusher, exceptions.rushier = rushy, exceptions.rushiest = rushy, exceptions.rustier = rusty, exceptions.rustiest = rusty, exceptions.ruttier = rutty, exceptions.ruttiest = rutty, exceptions.sadder = sad, exceptions.saddest = sad, exceptions.salter = salter, exceptions.saltier = salty, exceptions.saltiest = salty, exceptions.sampler = sampler, exceptions.sandier = sandy, exceptions.sandiest = sandy, exceptions.sappier = sappy, exceptions.sappiest = sappy, exceptions.sassier = sassy, exceptions.sassiest = sassy, exceptions.saucier = saucy, exceptions.sauciest = saucy, exceptions.savvier = savvy, exceptions.savviest = savvy, exceptions.scabbier = scabby, exceptions.scabbiest = scabby, exceptions.scalier = scaly, exceptions.scaliest = scaly, exceptions.scantier = scanty, exceptions.scantiest = scanty, exceptions.scarier = scary, exceptions.scariest = scary, exceptions.scraggier = scraggy, exceptions.scraggiest = scraggy, exceptions.scragglier = scraggly, exceptions.scraggliest = scraggly, exceptions.scraper = scraper, exceptions.scrappier = scrappy, exceptions.scrappiest = scrappy, exceptions.scrawnier = scrawny, exceptions.scrawniest = scrawny, exceptions.screwier = screwy, exceptions.screwiest = screwy, exceptions.scrubbier = scrubby, exceptions.scrubbiest = scrubby, exceptions.scruffier = scruffy, exceptions.scruffiest = scruffy, exceptions.scungier = scungy, exceptions.scungiest = scungy, exceptions.scurvier = scurvy, exceptions.scurviest = scurvy, exceptions.seamier = seamy, exceptions.seamiest = seamy, exceptions.seconder = seconder, exceptions.seedier = seedy, exceptions.seediest = seedy, exceptions.seemlier = seemly, exceptions.seemliest = seemly, exceptions.serer = serer, exceptions.sexier = sexy, exceptions.sexiest = sexy, exceptions.shabbier = shabby, exceptions.shabbiest = shabby, exceptions.shadier = shady, exceptions.shadiest = shady, exceptions.shaggier = shaggy, exceptions.shaggiest = shaggy, exceptions.shakier = shaky, exceptions.shakiest = shaky, exceptions.shapelier = shapely, exceptions.shapeliest = shapely, exceptions.shier = shy, exceptions.shiest = shy, exceptions.shiftier = shifty, exceptions.shiftiest = shifty, exceptions.shinier = shiny, exceptions.shiniest = shiny, exceptions.shirtier = shirty, exceptions.shirtiest = shirty, exceptions.shoddier = shoddy, exceptions.shoddiest = shoddy, exceptions.showier = showy, exceptions.showiest = showy, exceptions.shrubbier = shrubby, exceptions.shrubbiest = shrubby, exceptions.shyer = shy, exceptions.shyest = shy, exceptions.sicklier = sickly, exceptions.sickliest = sickly, exceptions.sightlier = sightly, exceptions.sightliest = sightly, exceptions.signaler = signaler, exceptions.signer = signer, exceptions.silkier = silky, exceptions.silkiest = silky, exceptions.sillier = silly, exceptions.silliest = silly, exceptions.sketchier = sketchy, exceptions.sketchiest = sketchy, exceptions.skewer = skewer, exceptions.skimpier = skimpy, exceptions.skimpiest = skimpy, exceptions.skinnier = skinny, exceptions.skinniest = skinny, exceptions.slaphappier = slaphappy, exceptions.slaphappiest = slaphappy, exceptions.slatier = slaty, exceptions.slatiest = slaty, exceptions.slaver = slaver, exceptions.sleazier = sleazy, exceptions.sleaziest = sleazy, exceptions.sleepier = sleepy, exceptions.sleepiest = sleepy, exceptions.slier = sly, exceptions.sliest = sly, exceptions.slimier = slimy, exceptions.slimiest = slimy, exceptions.slimmer = slim, exceptions.slimmest = slim, exceptions.slimsier = slimsy, exceptions.slimsiest = slimsy, exceptions.slinkier = slinky, exceptions.slinkiest = slinky, exceptions.slippier = slippy, exceptions.slippiest = slippy, exceptions.sloppier = sloppy, exceptions.sloppiest = sloppy, exceptions.slyer = sly, exceptions.slyest = sly, exceptions.smarmier = smarmy, exceptions.smarmiest = smarmy, exceptions.smellier = smelly, exceptions.smelliest = smelly, exceptions.smokier = smoky, exceptions.smokiest = smoky, exceptions.smugger = smug, exceptions.smuggest = smug, exceptions.snakier = snaky, exceptions.snakiest = snaky, exceptions.snappier = snappy, exceptions.snappiest = snappy, exceptions.snatchier = snatchy, exceptions.snatchiest = snatchy, exceptions.snazzier = snazzy, exceptions.snazziest = snazzy, exceptions.sneaker = sneaker, exceptions.sniffier = sniffy, exceptions.sniffiest = sniffy, exceptions.snootier = snooty, exceptions.snootiest = snooty, exceptions.snottier = snotty, exceptions.snottiest = snotty, exceptions.snowier = snowy, exceptions.snowiest = snowy, exceptions.snuffer = snuffer, exceptions.snuffier = snuffy, exceptions.snuffiest = snuffy, exceptions.snugger = snug, exceptions.snuggest = snug, exceptions.soapier = soapy, exceptions.soapiest = soapy, exceptions.soggier = soggy, exceptions.soggiest = soggy, exceptions.solder = solder, exceptions.sonsier = sonsy, exceptions.sonsiest = sonsy, exceptions.sootier = sooty, exceptions.sootiest = sooty, exceptions.soppier = soppy, exceptions.soppiest = soppy, exceptions.sorrier = sorry, exceptions.sorriest = sorry, exceptions.soupier = soupy, exceptions.soupiest = soupy, exceptions.souther = souther, exceptions.southerner = southerner, exceptions.speedier = speedy, exceptions.speediest = speedy, exceptions.spicier = spicy, exceptions.spiciest = spicy, exceptions.spiffier = spiffy, exceptions.spiffiest = spiffy, exceptions.spikier = spiky, exceptions.spikiest = spiky, exceptions.spindlier = spindly, exceptions.spindliest = spindly, exceptions.spinier = spiny, exceptions.spiniest = spiny, exceptions.splashier = splashy, exceptions.splashiest = splashy, exceptions.spongier = spongy, exceptions.spongiest = spongy, exceptions.spookier = spooky, exceptions.spookiest = spooky, exceptions.spoonier = spoony, exceptions.spooniest = spoony, exceptions.sportier = sporty, exceptions.sportiest = sporty, exceptions.spottier = spotty, exceptions.spottiest = spotty, exceptions.spreader = spreader, exceptions.sprier = spry, exceptions.spriest = spry, exceptions.sprightlier = sprightly, exceptions.sprightliest = sprightly, exceptions.springer = springer, exceptions.springier = springy, exceptions.springiest = springy, exceptions.squashier = squashy, exceptions.squashiest = squashy, exceptions.squatter = squat, exceptions.squattest = squat, exceptions.squattier = squatty, exceptions.squattiest = squatty, exceptions.squiffier = squiffy, exceptions.squiffiest = squiffy, exceptions.stagier = stagy, exceptions.stagiest = stagy, exceptions.stalkier = stalky, exceptions.stalkiest = stalky, exceptions.stapler = stapler, exceptions.starchier = starchy, exceptions.starchiest = starchy, exceptions.starer = starer, exceptions.starest = starest, exceptions.starrier = starry, exceptions.starriest = starry, exceptions.statelier = stately, exceptions.stateliest = stately, exceptions.steadier = steady, exceptions.steadiest = steady, exceptions.stealthier = stealthy, exceptions.stealthiest = stealthy, exceptions.steamier = steamy, exceptions.steamiest = steamy, exceptions.stingier = stingy, exceptions.stingiest = stingy, exceptions.stiper = striper, exceptions.stocker = stocker, exceptions.stockier = stocky, exceptions.stockiest = stocky, exceptions.stodgier = stodgy, exceptions.stodgiest = stodgy, exceptions.stonier = stony, exceptions.stoniest = stony, exceptions.stormier = stormy, exceptions.stormiest = stormy, exceptions.streakier = streaky, exceptions.streakiest = streaky, exceptions.streamier = streamy, exceptions.streamiest = streamy, exceptions.stretcher = stretcher, exceptions.stretchier = stretchy, exceptions.stretchiest = stretchy, exceptions.stringier = stringy, exceptions.stringiest = stringy, exceptions.stripier = stripy, exceptions.stripiest = stripy, exceptions.stronger = strong, exceptions.strongest = strong, exceptions.stroppier = stroppy, exceptions.stroppiest = stroppy, exceptions.stuffier = stuffy, exceptions.stuffiest = stuffy, exceptions.stumpier = stumpy, exceptions.stumpiest = stumpy, exceptions.sturdier = sturdy, exceptions.sturdiest = sturdy, exceptions.submariner = submariner, exceptions.sulkier = sulky, exceptions.sulkiest = sulky, exceptions.sultrier = sultry, exceptions.sultriest = sultry, exceptions.sunnier = sunny, exceptions.sunniest = sunny, exceptions.surlier = surly, exceptions.surliest = surly, exceptions.swagger = swagger, exceptions.swankier = swanky, exceptions.swankiest = swanky, exceptions.swarthier = swarthy, exceptions.swarthiest = swarthy, exceptions.sweatier = sweaty, exceptions.sweatiest = sweaty, exceptions.tackier = tacky, exceptions.tackiest = tacky, exceptions.talkier = talky, exceptions.talkiest = talky, exceptions.tangier = tangy, exceptions.tangiest = tangy, exceptions.tanner = tan, exceptions.tannest = tan, exceptions.tardier = tardy, exceptions.tardiest = tardy, exceptions.tastier = tasty, exceptions.tastiest = tasty, exceptions.tattier = tatty, exceptions.tattiest = tatty, exceptions.tawdrier = tawdry, exceptions.tawdriest = tawdry, exceptions.techier = techy, exceptions.techiest = techy, exceptions.teenager = teenager, exceptions.teenier = teeny, exceptions.teeniest = teeny, exceptions.teetotaler = teetotaler, exceptions.tester = tester, exceptions.testier = testy, exceptions.testiest = testy, exceptions.tetchier = tetchy, exceptions.tetchiest = tetchy, exceptions.thinner = thin, exceptions.thinnest = thin, exceptions.thirstier = thirsty, exceptions.thirstiest = thirsty, exceptions.thornier = thorny, exceptions.thorniest = thorny, exceptions.threadier = thready, exceptions.threadiest = thready, exceptions.thriftier = thrifty, exceptions.thriftiest = thrifty, exceptions.throatier = throaty, exceptions.throatiest = throaty, exceptions.tidier = tidy, exceptions.tidiest = tidy, exceptions.timelier = timely, exceptions.timeliest = timely, exceptions.tinier = tiny, exceptions.tiniest = tiny, exceptions.tinnier = tinny, exceptions.tinniest = tinny, exceptions.tipsier = tipsy, exceptions.tipsiest = tipsy, exceptions.tonier = tony, exceptions.toniest = tony, exceptions.toothier = toothy, exceptions.toothiest = toothy, exceptions.toper = toper, exceptions.touchier = touchy, exceptions.touchiest = touchy, exceptions.trader = trader, exceptions.trashier = trashy, exceptions.trashiest = trashy, exceptions.trendier = trendy, exceptions.trendiest = trendy, exceptions.trickier = tricky, exceptions.trickiest = tricky, exceptions.tricksier = tricksy, exceptions.tricksiest = tricksy, exceptions.trimer = trimer, exceptions.trimmer = trim2, exceptions.trimmest = trim2, exceptions.truer = true1, exceptions.truest = true1, exceptions.trustier = trusty, exceptions.trustiest = trusty, exceptions.tubbier = tubby, exceptions.tubbiest = tubby, exceptions.turfier = turfy, exceptions.turfiest = turfy, exceptions.tweedier = tweedy, exceptions.tweediest = tweedy, exceptions.twiggier = twiggy, exceptions.twiggiest = twiggy, exceptions.uglier = ugly, exceptions.ugliest = ugly, exceptions.unfriendlier = unfriendly, exceptions.unfriendliest = unfriendly, exceptions.ungainlier = ungainly, exceptions.ungainliest = ungainly, exceptions.ungodlier = ungodly, exceptions.ungodliest = ungodly, exceptions.unhappier = unhappy, exceptions.unhappiest = unhappy, exceptions.unhealthier = unhealthy, exceptions.unhealthiest = unhealthy, exceptions.unholier = unholy, exceptions.unholiest = unholy, exceptions.unrulier = unruly, exceptions.unruliest = unruly, exceptions.untidier = untidy, exceptions.untidiest = untidy, exceptions.vastier = vasty, exceptions.vastiest = vasty, exceptions.vest = vest, exceptions.viewier = viewy, exceptions.viewiest = viewy, exceptions.wackier = wacky, exceptions.wackiest = wacky, exceptions.wanner = wan, exceptions.wannest = wan, exceptions.warier = wary, exceptions.wariest = wary, exceptions.washier = washy, exceptions.washiest = washy, exceptions.waster = waster, exceptions.wavier = wavy, exceptions.waviest = wavy, exceptions.waxier = waxy, exceptions.waxiest = waxy, exceptions.weaklier = weakly, exceptions.weakliest = weakly, exceptions.wealthier = wealthy, exceptions.wealthiest = wealthy, exceptions.wearier = weary, exceptions.weariest = weary, exceptions.webbier = webby, exceptions.webbiest = webby, exceptions.weedier = weedy, exceptions.weediest = weedy, exceptions.weenier = weeny, exceptions.weeniest = weeny, exceptions.weensier = weensy, exceptions.weensiest = weensy, exceptions.weepier = weepy, exceptions.weepiest = weepy, exceptions.weightier = weighty, exceptions.weightiest = weighty, exceptions.welsher = welsher, exceptions.wetter = wet, exceptions.wettest = wet, exceptions.whackier = whacky, exceptions.whackiest = whacky, exceptions.whimsier = whimsy, exceptions.whimsiest = whimsy, exceptions.wholesaler = wholesaler, exceptions.wieldier = wieldy, exceptions.wieldiest = wieldy, exceptions.wilier = wily, exceptions.wiliest = wily, exceptions.windier = windy, exceptions.windiest = windy, exceptions.winier = winy, exceptions.winiest = winy, exceptions.winterier = wintery, exceptions.winteriest = wintery, exceptions.wintrier = wintry, exceptions.wintriest = wintry, exceptions.wirier = wiry, exceptions.wiriest = wiry, exceptions.wispier = wispy, exceptions.wispiest = wispy, exceptions.wittier = witty, exceptions.wittiest = witty, exceptions.wonkier = wonky, exceptions.wonkiest = wonky, exceptions.woodier = woody, exceptions.woodiest = woody, exceptions.woodsier = woodsy, exceptions.woodsiest = woodsy, exceptions.woollier = woolly, exceptions.woolliest = woolly, exceptions.woozier = woozy, exceptions.wooziest = woozy, exceptions.wordier = wordy, exceptions.wordiest = wordy, exceptions.worldlier = worldly, exceptions.worldliest = worldly, exceptions.wormier = wormy, exceptions.wormiest = wormy, exceptions.worse = bad, exceptions.worst = bad, exceptions.worthier = worthy, exceptions.worthiest = worthy, exceptions.wrier = wry, exceptions.wriest = wry, exceptions.wryer = wry, exceptions.wryest = wry, exceptions.yarer = yare, exceptions.yarest = yare, exceptions.yeastier = yeasty, exceptions.yeastiest = yeasty, exceptions.younger = young, exceptions.youngest = young, exceptions.yummier = yummy, exceptions.yummiest = yummy, exceptions.zanier = zany, exceptions.zaniest = zany, exceptions.zippier = zippy, exceptions.zippiest = zippy, module2.exports = exceptions; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/wn-noun-exceptions.js +var require_wn_noun_exceptions = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/wn-noun-exceptions.js"(exports2, module2) { + var exceptions = /* @__PURE__ */ Object.create(null); + var aardwolf = "aardwolf"; + var abacus = "abacus"; + var aboideau = "aboideau"; + var aboiteau = "aboiteau"; + var abscissa = "abscissa"; + var acanthus = "acanthus"; + var acarus = "acarus"; + var acciaccatura = "acciaccatura"; + var acetabulum = "acetabulum"; + var achaemenid = "achaemenid"; + var aciculum = "aciculum"; + var acicula = "acicula"; + var acinus = "acinus"; + var acromion = "acromion"; + var actinia = "actinia"; + var actinozoan = "actinozoan"; + var addendum = "addendum"; + var adenocarcinoma = "adenocarcinoma"; + var adenoma = "adenoma"; + var adieu = "adieu"; + var adytum = "adytum"; + var aecium = "aecium"; + var aecidium = "aecidium"; + var aerobium = "aerobium"; + var aggiornamento = "aggiornamento"; + var agnomen = "agnomen"; + var agon = "agon"; + var agora = "agora"; + var agouti = "agouti"; + var ala = "ala"; + var alewife = "alewife"; + var alkali = "alkali"; + var allodium = "allodium"; + var alluvium = "alluvium"; + var alodium = "alodium"; + var altocumulus = "altocumulus"; + var altostratus = "altostratus"; + var alula = "alula"; + var alumna = "alumna"; + var alumnus = "alumnus"; + var alveolus = "alveolus"; + var amanuensis = "amanuensis"; + var ambulacrum = "ambulacrum"; + var ameba = "ameba"; + var amnion = "amnion"; + var amniocentesis = "amniocentesis"; + var amoeba = "amoeba"; + var amoebiasis = "amoebiasis"; + var amora = "amora"; + var amoretto = "amoretto"; + var amorino = "amorino"; + var amphiarthrosis = "amphiarthrosis"; + var amphithecium = "amphithecium"; + var amphimixis = "amphimixis"; + var amphioxus = "amphioxus"; + var amphisbaena = "amphisbaena"; + var amphora = "amphora"; + var ampulla = "ampulla"; + var amygdala = "amygdala"; + var anabasis = "anabasis"; + var anacoluthon = "anacoluthon"; + var anacrusis = "anacrusis"; + var anaerobium = "anaerobium"; + var anagnorisis = "anagnorisis"; + var analemma = "analemma"; + var analysis = "analysis"; + var anamnesis = "anamnesis"; + var anamorphosis = "anamorphosis"; + var anastomosis = "anastomosis"; + var anaptyxis = "anaptyxis"; + var ancon = "ancon"; + var androclinium = "androclinium"; + var androecium = "androecium"; + var androsphinx = "androsphinx"; + var antheridium = "antheridium"; + var angelfish = "angelfish"; + var angioma = "angioma"; + var animalculum = "animalculum"; + var anlage = "anlage"; + var annatto = "annatto"; + var annulus = "annulus"; + var anta = "anta"; + var antalkali = "antalkali"; + var antefix = "antefix"; + var antenna = "antenna"; + var antependium = "antependium"; + var anthelion = "anthelion"; + var anthelix = "anthelix"; + var anthemion = "anthemion"; + var anthodium = "anthodium"; + var anthozoan = "anthozoan"; + var anthrax = "anthrax"; + var anticlinorium = "anticlinorium"; + var antihelix = "antihelix"; + var antihero = "antihero"; + var antiserum = "antiserum"; + var antithesis = "antithesis"; + var antitragus = "antitragus"; + var antrum = "antrum"; + var anus = "anus"; + var aorta = "aorta"; + var aphelion = "aphelion"; + var aphis = "aphis"; + var apex = "apex"; + var apodosis = "apodosis"; + var apomixis = "apomixis"; + var aponeurosis = "aponeurosis"; + var apophysis = "apophysis"; + var aposiopesis = "aposiopesis"; + var apothecium = "apothecium"; + var apotheosis = "apotheosis"; + var apparatus = "apparatus"; + var appendix = "appendix"; + var appoggiatura = "appoggiatura"; + var apsis = "apsis"; + var aqua = "aqua"; + var aquarium = "aquarium"; + var argali = "argali"; + var arboretum = "arboretum"; + var arcanum = "arcanum"; + var archegonium = "archegonium"; + var archerfish = "archerfish"; + var archesporium = "archesporium"; + var archipelago = "archipelago"; + var areola = "areola"; + var argumentum = "argumentum"; + var arietta = "arietta"; + var arista = "arista"; + var armamentarium = "armamentarium"; + var arsis = "arsis"; + var rotl = "rotl"; + var arteriosclerosis = "arteriosclerosis"; + var aruspex = "aruspex"; + var ascesis = "ascesis"; + var ascus = "ascus"; + var ascidium = "ascidium"; + var ascogonium = "ascogonium"; + var ash = "ash"; + var ashkenazi = "ashkenazi"; + var aspergillum = "aspergillum"; + var aspergillus = "aspergillus"; + var aspergillosis = "aspergillosis"; + var aspersorium = "aspersorium"; + var assegai = "assegai"; + var astragalus = "astragalus"; + var asyndeton = "asyndeton"; + var atheroma = "atheroma"; + var atherosclerosis = "atherosclerosis"; + var atmolysis = "atmolysis"; + var atrium = "atrium"; + var auditorium = "auditorium"; + var aura = "aura"; + var eyrir = "eyrir"; + var aureus = "aureus"; + var auricula = "auricula"; + var aurora = "aurora"; + var auspice = "auspice"; + var autocatalysis = "autocatalysis"; + var autochthon = "autochthon"; + var automaton = "automaton"; + var avitaminosis = "avitaminosis"; + var ax = "ax"; + var axilla = "axilla"; + var bacchante = "bacchante"; + var bacchius = "bacchius"; + var bacillus = "bacillus"; + var bacteriostasis = "bacteriostasis"; + var baculum = "baculum"; + var ballista = "ballista"; + var bambino = "bambino"; + var bandeau = "bandeau"; + var bandit = "bandit"; + var ban = "ban"; + var banjo = "banjo"; + var barklouse = "barklouse"; + var barramundi = "barramundi"; + var base = "base"; + var basidium = "basidium"; + var basileus = "basileus"; + var basso = "basso"; + var bastinado = "bastinado"; + var bateau = "bateau"; + var batfish = "batfish"; + var beadsman = "beadsman"; + var beau = "beau"; + var beef = "beef"; + var behoof = "behoof"; + var bersagliere = "bersagliere"; + var bhishti = "bhishti"; + var bibliotheca = "bibliotheca"; + var bicentenary = "bicentenary"; + var bijou = "bijou"; + var bilbo = "bilbo"; + var billfish = "billfish"; + var bimbo = "bimbo"; + var bisectrix = "bisectrix"; + var blackfoot = "blackfoot"; + var blackfish = "blackfish"; + var blastema = "blastema"; + var blastula = "blastula"; + var blindfish = "blindfish"; + var blowfish = "blowfish"; + var bluefish = "bluefish"; + var boarfish = "boarfish"; + var boschbok = "boschbok"; + var boletus = "boletus"; + var bolivar = "bolivar"; + var bolshevik = "bolshevik"; + var bonefish = "bonefish"; + var bongo = "bongo"; + var bonito = "bonito"; + var booklouse = "booklouse"; + var bookshelf = "bookshelf"; + var borax = "borax"; + var borborygmus = "borborygmus"; + var bordereau = "bordereau"; + var botargo = "botargo"; + var boxfish = "boxfish"; + var brachium = "brachium"; + var brainchild = "brainchild"; + var branchia = "branchia"; + var brant = "brant"; + var bravado = "bravado"; + var bravo = "bravo"; + var bregma = "bregma"; + var brother = "brother"; + var broadleaf = "broadleaf"; + var bronchus = "bronchus"; + var bryozoan = "bryozoan"; + var bubo = "bubo"; + var bucko = "bucko"; + var bucktooth = "bucktooth"; + var buffalo = "buffalo"; + var bulla = "bulla"; + var bund = "bund"; + var bureau = "bureau"; + var bursa = "bursa"; + var bus = "bus"; + var butterfish = "butterfish"; + var byssus = "byssus"; + var cactus = "cactus"; + var caduceus = "caduceus"; + var caecum = "caecum"; + var caesura = "caesura"; + var calamus = "calamus"; + var calathus = "calathus"; + var calcaneum = "calcaneum"; + var calx = "calx"; + var calculus = "calculus"; + var caldarium = "caldarium"; + var calix = "calix"; + var calico = "calico"; + var callus = "callus"; + var calf = "calf"; + var calyx = "calyx"; + var cambium = "cambium"; + var camera = "camera"; + var canaliculus = "canaliculus"; + var candelabrum = "candelabrum"; + var candlefish = "candlefish"; + var canthus = "canthus"; + var canula = "canula"; + var canzone = "canzone"; + var caput = "caput"; + var capitulum = "capitulum"; + var capriccio = "capriccio"; + var carabiniere = "carabiniere"; + var carbonado = "carbonado"; + var carcinoma = "carcinoma"; + var cargo = "cargo"; + var caryatid = "caryatid"; + var carina = "carina"; + var carolus = "carolus"; + var carpus = "carpus"; + var carpogonium = "carpogonium"; + var caryopsis = "caryopsis"; + var castrato = "castrato"; + var catabasis = "catabasis"; + var cataclasis = "cataclasis"; + var catalo = "catalo"; + var catalysis = "catalysis"; + var catena = "catena"; + var catfish = "catfish"; + var cathar = "cathar"; + var cathexis = "cathexis"; + var cattalo = "cattalo"; + var caudex = "caudex"; + var caulis = "caulis"; + var cavatina = "cavatina"; + var cavefish = "cavefish"; + var cavetto = "cavetto"; + var cecum = "cecum"; + var cella = "cella"; + var cembalo = "cembalo"; + var centesimo = "centesimo"; + var centrum = "centrum"; + var cephalothorax = "cephalothorax"; + var cercaria = "cercaria"; + var cercus = "cercus"; + var cerebellum = "cerebellum"; + var cerebrum = "cerebrum"; + var cervix = "cervix"; + var caestus = "caestus"; + var cesura = "cesura"; + var cheder = "cheder"; + var chaeta = "chaeta"; + var chalaza = "chalaza"; + var hallah = "hallah"; + var chalutz = "chalutz"; + var chapati = "chapati"; + var chapatti = "chapatti"; + var chapeau = "chapeau"; + var chasid = "chasid"; + var chassid = "chassid"; + var chateau = "chateau"; + var chazan = "chazan"; + var chela = "chela"; + var chelicera = "chelicera"; + var cherub = "cherub"; + var chiasma = "chiasma"; + var chiasmus = "chiasmus"; + var child = "child"; + var chilli = "chilli"; + var chitarrone = "chitarrone"; + var chlamys = "chlamys"; + var chondroma = "chondroma"; + var choragus = "choragus"; + var choriambus = "choriambus"; + var chou = "chou"; + var chromonema = "chromonema"; + var chrysalis = "chrysalis"; + var chuvash = "chuvash"; + var ciborium = "ciborium"; + var cicada = "cicada"; + var cicala = "cicala"; + var cicatrix = "cicatrix"; + var cicerone = "cicerone"; + var cicisbeo = "cicisbeo"; + var cilium = "cilium"; + var cimex = "cimex"; + var cinerarium = "cinerarium"; + var cingulum = "cingulum"; + var cirrus = "cirrus"; + var cirrocumulus = "cirrocumulus"; + var cirrostratus = "cirrostratus"; + var cisco = "cisco"; + var cisterna = "cisterna"; + var clarino = "clarino"; + var claro = "claro"; + var clepsydra = "clepsydra"; + var clinandrium = "clinandrium"; + var clingfish = "clingfish"; + var clitellum = "clitellum"; + var cloaca = "cloaca"; + var clostridium = "clostridium"; + var cloverleaf = "cloverleaf"; + var clypeus = "clypeus"; + var coagulum = "coagulum"; + var coalfish = "coalfish"; + var coccus = "coccus"; + var coccyx = "coccyx"; + var cochlea = "cochlea"; + var codfish = "codfish"; + var codex = "codex"; + var coelenteron = "coelenteron"; + var coenurus = "coenurus"; + var cognomen = "cognomen"; + var cognosente = "cognosente"; + var colon = "colon"; + var coleorhiza = "coleorhiza"; + var collegium = "collegium"; + var colloquium = "colloquium"; + var colluvium = "colluvium"; + var collyrium = "collyrium"; + var colossus = "colossus"; + var columbarium = "columbarium"; + var columella = "columella"; + var coma = "coma"; + var comatula = "comatula"; + var comedo = "comedo"; + var comic = "comic"; + var commando = "commando"; + var concertante = "concertante"; + var concerto = "concerto"; + var concertino = "concertino"; + var concha = "concha"; + var condottiere = "condottiere"; + var condyloma = "condyloma"; + var conferva = "conferva"; + var congius = "congius"; + var conidium = "conidium"; + var conjunctiva = "conjunctiva"; + var conquistador = "conquistador"; + var consortium = "consortium"; + var contagium = "contagium"; + var continuum = "continuum"; + var contralto = "contralto"; + var conversazione = "conversazione"; + var convolvulus = "convolvulus"; + var copula = "copula"; + var corbicula = "corbicula"; + var corium = "corium"; + var cornea = "cornea"; + var cornu = "cornu"; + var corona = "corona"; + var corpus = "corpus"; + var corrigendum = "corrigendum"; + var cortex = "cortex"; + var cortina = "cortina"; + var corybant = "corybant"; + var coryphaeus = "coryphaeus"; + var costa = "costa"; + var cothurnus = "cothurnus"; + var couteau = "couteau"; + var cowfish = "cowfish"; + var coxa = "coxa"; + var crambo = "crambo"; + var cranium = "cranium"; + var crasis = "crasis"; + var crawfish = "crawfish"; + var crayfish = "crayfish"; + var credendum = "credendum"; + var crematorium = "crematorium"; + var crescendo = "crescendo"; + var cribellum = "cribellum"; + var crisis = "crisis"; + var crissum = "crissum"; + var crista = "crista"; + var criterion = "criterion"; + var crux = "crux"; + var crus = "crus"; + var crusado = "crusado"; + var cruzado = "cruzado"; + var cry = "cry"; + var ctenidium = "ctenidium"; + var cubiculum = "cubiculum"; + var culex = "culex"; + var culpa = "culpa"; + var cultus = "cultus"; + var cumulus = "cumulus"; + var cumulonimbus = "cumulonimbus"; + var cumulostratus = "cumulostratus"; + var curia = "curia"; + var curriculum = "curriculum"; + var custos = "custos"; + var cutis = "cutis"; + var cuticula = "cuticula"; + var cuttlefish = "cuttlefish"; + var cyclops = "cyclops"; + var cyclosis = "cyclosis"; + var cylix = "cylix"; + var cyma = "cyma"; + var cymatium = "cymatium"; + var cypsela = "cypsela"; + var cysticercus = "cysticercus"; + var dado = "dado"; + var dago = "dago"; + var damselfish = "damselfish"; + var datum = "datum"; + var daimio = "daimio"; + var dealfish = "dealfish"; + var decemvir = "decemvir"; + var decennium = "decennium"; + var decidua = "decidua"; + var definiendum = "definiendum"; + var definiens = "definiens"; + var delphinium = "delphinium"; + var denarius = "denarius"; + var dentalium = "dentalium"; + var dermatosis = "dermatosis"; + var desideratum = "desideratum"; + var desperado = "desperado"; + var devilfish = "devilfish"; + var diaeresis = "diaeresis"; + var diagnosis = "diagnosis"; + var dialysis = "dialysis"; + var diaphysis = "diaphysis"; + var diapophysis = "diapophysis"; + var diarthrosis = "diarthrosis"; + var diastalsis = "diastalsis"; + var diastasis = "diastasis"; + var diastema = "diastema"; + var diathesis = "diathesis"; + var diazo = "diazo"; + var dibbuk = "dibbuk"; + var dichasium = "dichasium"; + var dictum = "dictum"; + var dido = "dido"; + var dieresis = "dieresis"; + var diesis = "diesis"; + var differentia = "differentia"; + var dilettante = "dilettante"; + var diluvium = "diluvium"; + var dingo = "dingo"; + var diplococcus = "diplococcus"; + var discus = "discus"; + var discobolus = "discobolus"; + var diva = "diva"; + var diverticulum = "diverticulum"; + var divertimento = "divertimento"; + var djinny = "djinny"; + var dodo = "dodo"; + var dogfish = "dogfish"; + var dogma = "dogma"; + var dogtooth = "dogtooth"; + var dollarfish = "dollarfish"; + var domatium = "domatium"; + var domino = "domino"; + var dormouse = "dormouse"; + var dorsum = "dorsum"; + var drachma = "drachma"; + var drawknife = "drawknife"; + var drosophila = "drosophila"; + var drumfish = "drumfish"; + var dryad = "dryad"; + var duo = "duo"; + var duodenum = "duodenum"; + var dupondius = "dupondius"; + var duumvir = "duumvir"; + var dwarf = "dwarf"; + var dybbuk = "dybbuk"; + var ecchymosis = "ecchymosis"; + var ecclesia = "ecclesia"; + var ecdysis = "ecdysis"; + var echidna = "echidna"; + var echinus = "echinus"; + var echinococcus = "echinococcus"; + var echo = "echo"; + var ectozoan = "ectozoan"; + var eddo = "eddo"; + var edema = "edema"; + var effluvium = "effluvium"; + var eidolon = "eidolon"; + var eisegesis = "eisegesis"; + var eisteddfod = "eisteddfod"; + var elenchus = "elenchus"; + var ellipsis = "ellipsis"; + var eluvium = "eluvium"; + var elf = "elf"; + var elytrum = "elytrum"; + var embargo = "embargo"; + var embolus = "embolus"; + var emphasis = "emphasis"; + var emporium = "emporium"; + var enarthrosis = "enarthrosis"; + var encephalon = "encephalon"; + var encephalitis = "encephalitis"; + var encephaloma = "encephaloma"; + var enchiridion = "enchiridion"; + var enchondroma = "enchondroma"; + var encomium = "encomium"; + var endameba = "endameba"; + var endamoeba = "endamoeba"; + var endocardium = "endocardium"; + var endocranium = "endocranium"; + var endometrium = "endometrium"; + var endosteum = "endosteum"; + var endostosis = "endostosis"; + var endothecium = "endothecium"; + var endothelium = "endothelium"; + var endothelioma = "endothelioma"; + var endozoan = "endozoan"; + var enema = "enema"; + var enneahedron = "enneahedron"; + var entameba = "entameba"; + var entamoeba = "entamoeba"; + var entasis = "entasis"; + var enteron = "enteron"; + var ens = "ens"; + var entozoan = "entozoan"; + var epencephalon = "epencephalon"; + var epenthesis = "epenthesis"; + var epexegesis = "epexegesis"; + var ephemeron = "ephemeron"; + var ephemera = "ephemera"; + var ephemeris = "ephemeris"; + var ephor = "ephor"; + var epicalyx = "epicalyx"; + var epicanthus = "epicanthus"; + var epicardium = "epicardium"; + var epicedium = "epicedium"; + var epiclesis = "epiclesis"; + var epididymis = "epididymis"; + var epigastrium = "epigastrium"; + var epiglottis = "epiglottis"; + var epimysium = "epimysium"; + var epiphenomenon = "epiphenomenon"; + var epiphysis = "epiphysis"; + var episternum = "episternum"; + var epithalamium = "epithalamium"; + var epithelium = "epithelium"; + var epithelioma = "epithelioma"; + var epizoan = "epizoan"; + var epyllion = "epyllion"; + var equilibrium = "equilibrium"; + var equisetum = "equisetum"; + var eringo = "eringo"; + var erratum = "erratum"; + var eryngo = "eryngo"; + var esophagus = "esophagus"; + var etymon = "etymon"; + var eucalyptus = "eucalyptus"; + var eupatrid = "eupatrid"; + var euripus = "euripus"; + var exanthema = "exanthema"; + var executrix = "executrix"; + var exegesis = "exegesis"; + var exemplum = "exemplum"; + var exordium = "exordium"; + var exostosis = "exostosis"; + var extremum = "extremum"; + var eyetooth = "eyetooth"; + var fabliau = "fabliau"; + var facia = "facia"; + var facula = "facula"; + var faeroese = "faeroese"; + var fallfish = "fallfish"; + var famulus = "famulus"; + var faroese = "faroese"; + var farrago = "farrago"; + var fascia = "fascia"; + var fasciculus = "fasciculus"; + var fatso = "fatso"; + var fauna = "fauna"; + var fecula = "fecula"; + var fedayee = "fedayee"; + var foot = "foot"; + var fellah = "fellah"; + var femur = "femur"; + var fenestella = "fenestella"; + var fenestra = "fenestra"; + var feria = "feria"; + var fermata = "fermata"; + var ferula = "ferula"; + var festschrift = "festschrift"; + var fetial = "fetial"; + var fez = "fez"; + var fiasco = "fiasco"; + var fibrilla = "fibrilla"; + var fibroma = "fibroma"; + var fibula = "fibula"; + var fico = "fico"; + var fideicommissum = "fideicommissum"; + var fieldmouse = "fieldmouse"; + var fig = "fig"; + var filum = "filum"; + var filaria = "filaria"; + var filefish = "filefish"; + var fimbria = "fimbria"; + var fish = "fish"; + var fishwife = "fishwife"; + var fistula = "fistula"; + var flabellum = "flabellum"; + var flagellum = "flagellum"; + var flagstaff = "flagstaff"; + var flambeau = "flambeau"; + var flamen = "flamen"; + var flamingo = "flamingo"; + var flatfoot = "flatfoot"; + var flatfish = "flatfish"; + var flittermouse = "flittermouse"; + var floccus = "floccus"; + var flocculus = "flocculus"; + var flora = "flora"; + var floreat = "floreat"; + var florilegium = "florilegium"; + var flyleaf = "flyleaf"; + var focus = "focus"; + var folium = "folium"; + var forum = "forum"; + var foramen = "foramen"; + var forceps = "forceps"; + var forefoot = "forefoot"; + var foretooth = "foretooth"; + var formicarium = "formicarium"; + var formula = "formula"; + var fornix = "fornix"; + var fortis = "fortis"; + var fossa = "fossa"; + var fovea = "fovea"; + var foveola = "foveola"; + var fractocumulus = "fractocumulus"; + var fractostratus = "fractostratus"; + var fraenum = "fraenum"; + var frau = "frau"; + var frenum = "frenum"; + var frenulum = "frenulum"; + var fresco = "fresco"; + var fricandeau = "fricandeau"; + var fricando = "fricando"; + var frijol = "frijol"; + var frogfish = "frogfish"; + var frons = "frons"; + var frustum = "frustum"; + var fucus = "fucus"; + var fulcrum = "fulcrum"; + var fumatorium = "fumatorium"; + var fundus = "fundus"; + var fungus = "fungus"; + var funiculus = "funiculus"; + var furculum = "furculum"; + var furcula = "furcula"; + var furfur = "furfur"; + var galea = "galea"; + var gambado = "gambado"; + var gametangium = "gametangium"; + var gametoecium = "gametoecium"; + var gammadion = "gammadion"; + var ganglion = "ganglion"; + var garfish = "garfish"; + var gas = "gas"; + var gastrula = "gastrula"; + var gateau = "gateau"; + var gazebo = "gazebo"; + var gecko = "gecko"; + var goose = "goose"; + var gelsemium = "gelsemium"; + var gemsbok = "gemsbok"; + var gemsbuck = "gemsbuck"; + var gemeinschaft = "gemeinschaft"; + var gemma = "gemma"; + var genus = "genus"; + var generatrix = "generatrix"; + var genesis = "genesis"; + var genius = "genius"; + var gens = "gens"; + var genu = "genu"; + var germen = "germen"; + var gesellschaft = "gesellschaft"; + var gestalt = "gestalt"; + var ghetto = "ghetto"; + var gingiva = "gingiva"; + var gingko = "gingko"; + var ginglymus = "ginglymus"; + var ginkgo = "ginkgo"; + var gippo = "gippo"; + var glabella = "glabella"; + var gladiolus = "gladiolus"; + var glans = "glans"; + var glioma = "glioma"; + var glissando = "glissando"; + var globefish = "globefish"; + var globigerina = "globigerina"; + var glochidium = "glochidium"; + var glomerulus = "glomerulus"; + var glossa = "glossa"; + var glottis = "glottis"; + var glutaeus = "glutaeus"; + var gluteus = "gluteus"; + var gnosis = "gnosis"; + var goatfish = "goatfish"; + var gobo = "gobo"; + var godchild = "godchild"; + var go = "go"; + var goldfish = "goldfish"; + var gomphosis = "gomphosis"; + var gonion = "gonion"; + var gonidium = "gonidium"; + var gonococcus = "gonococcus"; + var goodwife = "goodwife"; + var goosefish = "goosefish"; + var gorgoneion = "gorgoneion"; + var gospodin = "gospodin"; + var goy = "goy"; + var gps = "gps"; + var graf = "graf"; + var graffito = "graffito"; + var grandchild = "grandchild"; + var granuloma = "granuloma"; + var gravamen = "gravamen"; + var grosz = "grosz"; + var grotto = "grotto"; + var guilde = "guilde"; + var guitarfish = "guitarfish"; + var gumma = "gumma"; + var gurnar = "gurnar"; + var gutta = "gutta"; + var gymnasium = "gymnasium"; + var gynaeceum = "gynaeceum"; + var gynaecium = "gynaecium"; + var gynecium = "gynecium"; + var gynoecium = "gynoecium"; + var gyrus = "gyrus"; + var heder = "heder"; + var hadj = "hadj"; + var haematolysis = "haematolysis"; + var haematoma = "haematoma"; + var haematozoon = "haematozoon"; + var haemodialysis = "haemodialysis"; + var haemolysis = "haemolysis"; + var haemoptysis = "haemoptysis"; + var haeres = "haeres"; + var haftarah = "haftarah"; + var hagfish = "hagfish"; + var haggadah = "haggadah"; + var haggada = "haggada"; + var hajj = "hajj"; + var haler = "haler"; + var halfpenny = "halfpenny"; + var hallux = "hallux"; + var halo = "halo"; + var halter = "halter"; + var half = "half"; + var hamulus = "hamulus"; + var haphtarah = "haphtarah"; + var haredi = "haredi"; + var haruspex = "haruspex"; + var hasid = "hasid"; + var hassid = "hassid"; + var haustellum = "haustellum"; + var haustorium = "haustorium"; + var hazzan = "hazzan"; + var hectocotylus = "hectocotylus"; + var heldentenor = "heldentenor"; + var helix = "helix"; + var heliozoan = "heliozoan"; + var hematolysis = "hematolysis"; + var hematoma = "hematoma"; + var hematozoon = "hematozoon"; + var hemelytron = "hemelytron"; + var hemielytron = "hemielytron"; + var hemodialysis = "hemodialysis"; + var hemolysis = "hemolysis"; + var hemoptysis = "hemoptysis"; + var hendecahedron = "hendecahedron"; + var heraclid = "heraclid"; + var heraklid = "heraklid"; + var herbarium = "herbarium"; + var herma = "herma"; + var hernia = "hernia"; + var hero = "hero"; + var herr = "herr"; + var hetaera = "hetaera"; + var hetaira = "hetaira"; + var hibernaculum = "hibernaculum"; + var hieracosphinx = "hieracosphinx"; + var hilum = "hilum"; + var hilus = "hilus"; + var himation = "himation"; + var hippocampus = "hippocampus"; + var hippopotamus = "hippopotamus"; + var his = "his"; + var hobo = "hobo"; + var hogfish = "hogfish"; + var homunculus = "homunculus"; + var honorarium = "honorarium"; + var hoof = "hoof"; + var horologium = "horologium"; + var housewife = "housewife"; + var humerus = "humerus"; + var hydra = "hydra"; + var hydromedusa = "hydromedusa"; + var hydrozoan = "hydrozoan"; + var hymenopteran = "hymenopteran"; + var hymenium = "hymenium"; + var hypanthium = "hypanthium"; + var hyperostosis = "hyperostosis"; + var hypha = "hypha"; + var hypnosis = "hypnosis"; + var hypochondrium = "hypochondrium"; + var hypogastrium = "hypogastrium"; + var hypogeum = "hypogeum"; + var hypophysis = "hypophysis"; + var hypostasis = "hypostasis"; + var hypothalamus = "hypothalamus"; + var hypothesis = "hypothesis"; + var hyrax = "hyrax"; + var iamb = "iamb"; + var ibex = "ibex"; + var igbo = "igbo"; + var ichthyosaurus = "ichthyosaurus"; + var ichthyosaur = "ichthyosaur"; + var iconostas = "iconostas"; + var icosahedron = "icosahedron"; + var ideatum = "ideatum"; + var igorrote = "igorrote"; + var ilium = "ilium"; + var imago = "imago"; + var imperium = "imperium"; + var impi = "impi"; + var incubus = "incubus"; + var incus = "incus"; + var index = "index"; + var indigo = "indigo"; + var indumentum = "indumentum"; + var indusium = "indusium"; + var infundibulum = "infundibulum"; + var ingush = "ingush"; + var innuendo = "innuendo"; + var inoculum = "inoculum"; + var insectarium = "insectarium"; + var insula = "insula"; + var intaglio = "intaglio"; + var interleaf = "interleaf"; + var intermezzo = "intermezzo"; + var interrex = "interrex"; + var interregnum = "interregnum"; + var intima = "intima"; + var involucellum = "involucellum"; + var involucrum = "involucrum"; + var iris = "iris"; + var irs = "irs"; + var is = "is"; + var ischium = "ischium"; + var isthmus = "isthmus"; + var jackeroo = "jackeroo"; + var jackfish = "jackfish"; + var jackknife = "jackknife"; + var jambeau = "jambeau"; + var jellyfish = "jellyfish"; + var jewelfish = "jewelfish"; + var jewfish = "jewfish"; + var jingo = "jingo"; + var jinni = "jinni"; + var joe = "joe"; + var jus = "jus"; + var kaddish = "kaddish"; + var kalmuc = "kalmuc"; + var katabasis = "katabasis"; + var keeshond = "keeshond"; + var kibbutz = "kibbutz"; + var killifish = "killifish"; + var kingfish = "kingfish"; + var knife = "knife"; + var kohlrabi = "kohlrabi"; + var krone = "krone"; + var krona = "krona"; + var kroon = "kroon"; + var kylix = "kylix"; + var labarum = "labarum"; + var labellum = "labellum"; + var labium = "labium"; + var labrum = "labrum"; + var lactobacillus = "lactobacillus"; + var lacuna = "lacuna"; + var lacunar = "lacunar"; + var lamella = "lamella"; + var lamia = "lamia"; + var lamina = "lamina"; + var lapillus = "lapillus"; + var lapith = "lapith"; + var larva = "larva"; + var larynx = "larynx"; + var lasso = "lasso"; + var lat = "lat"; + var latex = "latex"; + var latifundium = "latifundium"; + var lavabo = "lavabo"; + var leaf = "leaf"; + var lecythus = "lecythus"; + var lex = "lex"; + var leu = "leu"; + var lemma = "lemma"; + var lemniscus = "lemniscus"; + var lenis = "lenis"; + var lentigo = "lentigo"; + var leonid = "leonid"; + var lepidopteran = "lepidopteran"; + var leprosarium = "leprosarium"; + var lepton = "lepton"; + var leptocephalus = "leptocephalus"; + var leucocytozoan = "leucocytozoan"; + var lev = "lev"; + var libra = "libra"; + var libretto = "libretto"; + var louse = "louse"; + var lied = "lied"; + var ligula = "ligula"; + var limbus = "limbus"; + var limen = "limen"; + var limes = "limes"; + var limulus = "limulus"; + var lingo = "lingo"; + var lingua = "lingua"; + var lionfish = "lionfish"; + var lipoma = "lipoma"; + var lira = "lira"; + var liriodendron = "liriodendron"; + var sente = "sente"; + var litas = "litas"; + var life = "life"; + var lixivium = "lixivium"; + var loaf = "loaf"; + var locus = "locus"; + var loculus = "loculus"; + var loggia = "loggia"; + var logion = "logion"; + var lomentum = "lomentum"; + var longobard = "longobard"; + var lorica = "lorica"; + var luba = "luba"; + var lubritorium = "lubritorium"; + var lumbus = "lumbus"; + var lumen = "lumen"; + var lumpfish = "lumpfish"; + var lungfish = "lungfish"; + var lunula = "lunula"; + var lure = "lure"; + var lustre = "lustre"; + var lymphangitis = "lymphangitis"; + var lymphoma = "lymphoma"; + var lymphopoiesis = "lymphopoiesis"; + var lysis = "lysis"; + var lytta = "lytta"; + var maar = "maar"; + var macaroni = "macaroni"; + var maccaroni = "maccaroni"; + var machzor = "machzor"; + var macronucleus = "macronucleus"; + var macrosporangium = "macrosporangium"; + var macula = "macula"; + var madrono = "madrono"; + var maestro = "maestro"; + var mafioso = "mafioso"; + var magus = "magus"; + var magma = "magma"; + var magnifico = "magnifico"; + var mahzor = "mahzor"; + var likuta = "likuta"; + var malleus = "malleus"; + var malleolus = "malleolus"; + var loti = "loti"; + var mamilla = "mamilla"; + var mamma = "mamma"; + var mammilla = "mammilla"; + var mandingo = "mandingo"; + var mango = "mango"; + var manifesto = "manifesto"; + var manteau = "manteau"; + var mantis = "mantis"; + var manubrium = "manubrium"; + var marchesa = "marchesa"; + var marchese = "marchese"; + var maremma = "maremma"; + var markka = "markka"; + var marsupium = "marsupium"; + var matrix = "matrix"; + var matzo = "matzo"; + var mausoleum = "mausoleum"; + var maxilla = "maxilla"; + var maximum = "maximum"; + var medium = "medium"; + var media = "media"; + var mediastinum = "mediastinum"; + var medulla = "medulla"; + var medusa = "medusa"; + var megaron = "megaron"; + var megasporangium = "megasporangium"; + var megillah = "megillah"; + var meiosis = "meiosis"; + var melanoma = "melanoma"; + var melisma = "melisma"; + var memento = "memento"; + var memorandum = "memorandum"; + var man = "man"; + var meniscus = "meniscus"; + var manservant = "manservant"; + var menstruum = "menstruum"; + var madame = "madame"; + var mademoiselle = "mademoiselle"; + var mesenteron = "mesenteron"; + var mesothorax = "mesothorax"; + var monseigneur = "monseigneur"; + var monsieur = "monsieur"; + var mestizo = "mestizo"; + var metacarpus = "metacarpus"; + var metamorphosis = "metamorphosis"; + var metanephros = "metanephros"; + var metastasis = "metastasis"; + var metatarsus = "metatarsus"; + var metathesis = "metathesis"; + var metathorax = "metathorax"; + var metazoan = "metazoan"; + var metempsychosis = "metempsychosis"; + var metencephalon = "metencephalon"; + var mezuzah = "mezuzah"; + var miasma = "miasma"; + var mouse = "mouse"; + var microanalysis = "microanalysis"; + var micrococcus = "micrococcus"; + var micronucleus = "micronucleus"; + var microsporangium = "microsporangium"; + var midrash = "midrash"; + var midwife = "midwife"; + var milium = "milium"; + var milieu = "milieu"; + var milkfish = "milkfish"; + var millennium = "millennium"; + var mina = "mina"; + var minimum = "minimum"; + var ministerium = "ministerium"; + var minutia = "minutia"; + var minyan = "minyan"; + var miosis = "miosis"; + var miracidium = "miracidium"; + var mir = "mir"; + var mitochondrion = "mitochondrion"; + var mitzvah = "mitzvah"; + var modiolus = "modiolus"; + var modulus = "modulus"; + var momentum = "momentum"; + var momus = "momus"; + var monad = "monad"; + var monkfish = "monkfish"; + var monochasium = "monochasium"; + var monopodium = "monopodium"; + var monopteron = "monopteron"; + var monopteros = "monopteros"; + var monsignor = "monsignor"; + var mooncalf = "mooncalf"; + var moonfish = "moonfish"; + var mora = "mora"; + var moratorium = "moratorium"; + var morceau = "morceau"; + var moresco = "moresco"; + var morisco = "morisco"; + var morphallaxis = "morphallaxis"; + var morphosis = "morphosis"; + var morula = "morula"; + var mosasaurus = "mosasaurus"; + var moshav = "moshav"; + var moslem = "moslem"; + var mosquito = "mosquito"; + var motto = "motto"; + var mucosa = "mucosa"; + var mucro = "mucro"; + var mudejar = "mudejar"; + var mudfish = "mudfish"; + var mulatto = "mulatto"; + var multipara = "multipara"; + var murex = "murex"; + var muskellunge = "muskellunge"; + var mycelium = "mycelium"; + var mycetoma = "mycetoma"; + var mycobacterium = "mycobacterium"; + var mycorrhiza = "mycorrhiza"; + var myelencephalon = "myelencephalon"; + var myiasis = "myiasis"; + var myocardium = "myocardium"; + var myofibrilla = "myofibrilla"; + var myoma = "myoma"; + var myosis = "myosis"; + var myrmidon = "myrmidon"; + var mythos = "mythos"; + var myxoma = "myxoma"; + var naevus = "naevus"; + var naiad = "naiad"; + var naos = "naos"; + var narcissus = "narcissus"; + var naris = "naris"; + var nasopharynx = "nasopharynx"; + var natatorium = "natatorium"; + var naumachia = "naumachia"; + var nauplius = "nauplius"; + var nautilus = "nautilus"; + var navaho = "navaho"; + var navajo = "navajo"; + var nebula = "nebula"; + var necropolis = "necropolis"; + var needlefish = "needlefish"; + var negrillo = "negrillo"; + var negrito = "negrito"; + var negro = "negro"; + var nemesis = "nemesis"; + var nephridium = "nephridium"; + var nereid = "nereid"; + var neurohypophysis = "neurohypophysis"; + var neuroma = "neuroma"; + var neuropteron = "neuropteron"; + var neurosis = "neurosis"; + var nevus = "nevus"; + var nibelung = "nibelung"; + var nidus = "nidus"; + var niello = "niello"; + var nilgai = "nilgai"; + var nimbus = "nimbus"; + var nimbostratus = "nimbostratus"; + var noctiluca = "noctiluca"; + var nodus = "nodus"; + var no = "no"; + var nomen = "nomen"; + var notum = "notum"; + var noumenon = "noumenon"; + var nova = "nova"; + var novella = "novella"; + var novena = "novena"; + var nubecula = "nubecula"; + var nucellus = "nucellus"; + var nucha = "nucha"; + var nucleus = "nucleus"; + var nucleolus = "nucleolus"; + var nullipara = "nullipara"; + var numbfish = "numbfish"; + var numen = "numen"; + var nympha = "nympha"; + var oarfish = "oarfish"; + var oasis = "oasis"; + var obelus = "obelus"; + var obligato = "obligato"; + var obolus = "obolus"; + var occiput = "occiput"; + var oceanarium = "oceanarium"; + var oceanid = "oceanid"; + var ocellus = "ocellus"; + var ochrea = "ochrea"; + var ocrea = "ocrea"; + var octahedron = "octahedron"; + var octopus = "octopus"; + var oculus = "oculus"; + var odeum = "odeum"; + var oedema = "oedema"; + var oesophagus = "oesophagus"; + var oldwife = "oldwife"; + var oleum = "oleum"; + var omasum = "omasum"; + var omayyad = "omayyad"; + var omentum = "omentum"; + var ommatidium = "ommatidium"; + var ommiad = "ommiad"; + var onager = "onager"; + var oogonium = "oogonium"; + var ootheca = "ootheca"; + var operculum = "operculum"; + var optimum = "optimum"; + var os8 = "os"; + var organum = "organum"; + var organa = "organa"; + var orthopteron = "orthopteron"; + var osculum = "osculum"; + var osteoma = "osteoma"; + var ostium = "ostium"; + var ottoman = "ottoman"; + var ovum = "ovum"; + var ovolo = "ovolo"; + var ovotestis = "ovotestis"; + var ox = "ox"; + var oxymoron = "oxymoron"; + var paddlefish = "paddlefish"; + var paisa = "paisa"; + var palea = "palea"; + var palestra = "palestra"; + var palingenesis = "palingenesis"; + var pallium = "pallium"; + var palmetto = "palmetto"; + var palpus = "palpus"; + var pancratium = "pancratium"; + var panettone = "panettone"; + var paparazzo = "paparazzo"; + var paperknife = "paperknife"; + var papilla = "papilla"; + var papilloma = "papilloma"; + var pappus = "pappus"; + var papula = "papula"; + var papyrus = "papyrus"; + var parabasis = "parabasis"; + var paraleipsis = "paraleipsis"; + var paralysis = "paralysis"; + var paramecium = "paramecium"; + var parament = "parament"; + var paraphysis = "paraphysis"; + var parapodium = "parapodium"; + var parapraxis = "parapraxis"; + var paraselene = "paraselene"; + var parashah = "parashah"; + var parasyntheton = "parasyntheton"; + var parazoan = "parazoan"; + var parenthesis = "parenthesis"; + var parergon = "parergon"; + var parhelion = "parhelion"; + var paries = "paries"; + var parrotfish = "parrotfish"; + var parulis = "parulis"; + var pastorale = "pastorale"; + var patagium = "patagium"; + var patella = "patella"; + var patina = "patina"; + var paterfamilias = "paterfamilias"; + var pea = "pea"; + var peccadillo = "peccadillo"; + var pecten = "pecten"; + var pedalo = "pedalo"; + var pes = "pes"; + var pekinese = "pekinese"; + var pelvis = "pelvis"; + var penny = "penny"; + var penis = "penis"; + var penetralium = "penetralium"; + var penicillium = "penicillium"; + var penknife = "penknife"; + var penna = "penna"; + var penni = "penni"; + var pentahedron = "pentahedron"; + var pentimento = "pentimento"; + var penumbra = "penumbra"; + var peplum = "peplum"; + var pericardium = "pericardium"; + var perichondrium = "perichondrium"; + var pericranium = "pericranium"; + var peridium = "peridium"; + var perigonium = "perigonium"; + var perihelion = "perihelion"; + var perineum = "perineum"; + var perinephrium = "perinephrium"; + var perionychium = "perionychium"; + var periosteum = "periosteum"; + var periphrasis = "periphrasis"; + var peristalsis = "peristalsis"; + var perithecium = "perithecium"; + var peritoneum = "peritoneum"; + var persona = "persona"; + var petechia = "petechia"; + var pfennig = "pfennig"; + var phalanx = "phalanx"; + var phallus = "phallus"; + var pharynx = "pharynx"; + var phenomenon = "phenomenon"; + var philodendron = "philodendron"; + var phlyctena = "phlyctena"; + var phylum = "phylum"; + var phyle = "phyle"; + var phyllotaxis = "phyllotaxis"; + var phylloxera = "phylloxera"; + var phylogenesis = "phylogenesis"; + var pigfish = "pigfish"; + var pileum = "pileum"; + var pileus = "pileus"; + var pinetum = "pinetum"; + var pinfish = "pinfish"; + var pinko = "pinko"; + var pinna = "pinna"; + var pinnula = "pinnula"; + var pipefish = "pipefish"; + var pirog = "pirog"; + var piscina = "piscina"; + var pithecanthropus = "pithecanthropus"; + var pithos = "pithos"; + var placebo = "placebo"; + var placenta = "placenta"; + var planetarium = "planetarium"; + var planula = "planula"; + var plasmodesma = "plasmodesma"; + var plasmodium = "plasmodium"; + var plateau = "plateau"; + var plectrum = "plectrum"; + var plenum = "plenum"; + var pleuron = "pleuron"; + var pleura = "pleura"; + var plica = "plica"; + var ploughman = "ploughman"; + var pneumobacillus = "pneumobacillus"; + var pneumococcus = "pneumococcus"; + var pocketknife = "pocketknife"; + var podetium = "podetium"; + var podium = "podium"; + var polis = "polis"; + var pollex = "pollex"; + var pollinium = "pollinium"; + var polychasium = "polychasium"; + var polyhedron = "polyhedron"; + var polyparium = "polyparium"; + var polypus = "polypus"; + var polyzoan = "polyzoan"; + var polyzoarium = "polyzoarium"; + var pons = "pons"; + var pontifex = "pontifex"; + var portamento = "portamento"; + var portico = "portico"; + var portmanteau = "portmanteau"; + var postliminium = "postliminium"; + var potato = "potato"; + var praenomen = "praenomen"; + var praxis = "praxis"; + var predella = "predella"; + var premaxilla = "premaxilla"; + var prenomen = "prenomen"; + var presa = "presa"; + var primo = "primo"; + var primigravida = "primigravida"; + var primipara = "primipara"; + var primordium = "primordium"; + var principium = "principium"; + var proboscis = "proboscis"; + var proglottis = "proglottis"; + var prognosis = "prognosis"; + var prolegomenon = "prolegomenon"; + var prolepsis = "prolepsis"; + var promycelium = "promycelium"; + var pronephros = "pronephros"; + var pronucleus = "pronucleus"; + var propositus = "propositus"; + var proptosis = "proptosis"; + var propylon = "propylon"; + var propylaeum = "propylaeum"; + var proscenium = "proscenium"; + var prosencephalon = "prosencephalon"; + var prosthesis = "prosthesis"; + var prostomium = "prostomium"; + var protasis = "protasis"; + var prothalamium = "prothalamium"; + var prothallus = "prothallus"; + var prothallium = "prothallium"; + var prothorax = "prothorax"; + var protonema = "protonema"; + var protozoan = "protozoan"; + var proventriculus = "proventriculus"; + var proviso = "proviso"; + var prytaneum = "prytaneum"; + var psalterium = "psalterium"; + var pseudopodium = "pseudopodium"; + var psychoneurosis = "psychoneurosis"; + var psychosis = "psychosis"; + var pterygium = "pterygium"; + var pteryla = "pteryla"; + var ptosis = "ptosis"; + var pubis = "pubis"; + var pudendum = "pudendum"; + var pul = "pul"; + var pulvillus = "pulvillus"; + var pulvinus = "pulvinus"; + var punchinello = "punchinello"; + var pupa = "pupa"; + var puparium = "puparium"; + var putamen = "putamen"; + var putto = "putto"; + var pycnidium = "pycnidium"; + var pygidium = "pygidium"; + var pylorus = "pylorus"; + var pyxis = "pyxis"; + var pyxidium = "pyxidium"; + var qaddish = "qaddish"; + var quadrennium = "quadrennium"; + var quadriga = "quadriga"; + var quale = "quale"; + var quantum = "quantum"; + var quarterstaff = "quarterstaff"; + var quezal = "quezal"; + var quinquennium = "quinquennium"; + var quiz = "quiz"; + var rabato = "rabato"; + var rabbitfish = "rabbitfish"; + var rhachis = "rhachis"; + var radix = "radix"; + var radius = "radius"; + var radula = "radula"; + var ramentum = "ramentum"; + var ramus = "ramus"; + var ranula = "ranula"; + var ranunculus = "ranunculus"; + var raphe = "raphe"; + var raphide = "raphide"; + var ratfish = "ratfish"; + var real = "real"; + var rearmouse = "rearmouse"; + var rectum = "rectum"; + var rectus = "rectus"; + var rectrix = "rectrix"; + var redfish = "redfish"; + var redia = "redia"; + var referendum = "referendum"; + var refugium = "refugium"; + var regulus = "regulus"; + var relatum = "relatum"; + var remex = "remex"; + var reremouse = "reremouse"; + var reseau = "reseau"; + var residuum = "residuum"; + var responsum = "responsum"; + var rete = "rete"; + var retiarius = "retiarius"; + var reticulum = "reticulum"; + var retinaculum = "retinaculum"; + var retina = "retina"; + var rhabdomyoma = "rhabdomyoma"; + var rachis = "rachis"; + var rhinencephalon = "rhinencephalon"; + var rhizobium = "rhizobium"; + var rhombus = "rhombus"; + var rhonchus = "rhonchus"; + var rhyton = "rhyton"; + var ribbonfish = "ribbonfish"; + var ricercare = "ricercare"; + var rickettsia = "rickettsia"; + var rilievo = "rilievo"; + var rima = "rima"; + var rockfish = "rockfish"; + var rom = "rom"; + var rondeau = "rondeau"; + var rosarium = "rosarium"; + var rosefish = "rosefish"; + var rostellum = "rostellum"; + var rostrum = "rostrum"; + var rouleau = "rouleau"; + var ruga = "ruga"; + var rumen = "rumen"; + var sacrum = "sacrum"; + var sacrarium = "sacrarium"; + var saguaro = "saguaro"; + var sailfish = "sailfish"; + var salesperson = "salesperson"; + var salmonella = "salmonella"; + var salpa = "salpa"; + var salpinx = "salpinx"; + var saltarello = "saltarello"; + var salvo = "salvo"; + var sanctum = "sanctum"; + var sanitarium = "sanitarium"; + var santims = "santims"; + var saphena = "saphena"; + var sarcophagus = "sarcophagus"; + var sartorius = "sartorius"; + var sassanid = "sassanid"; + var sawfish = "sawfish"; + var scaldfish = "scaldfish"; + var scalenus = "scalenus"; + var scapula = "scapula"; + var scarabaeus = "scarabaeus"; + var scarf = "scarf"; + var schatchen = "schatchen"; + var schema = "schema"; + var scherzando = "scherzando"; + var scherzo = "scherzo"; + var schmo = "schmo"; + var scholium = "scholium"; + var schul = "schul"; + var schutzstaffel = "schutzstaffel"; + var scirrhus = "scirrhus"; + var scleroma = "scleroma"; + var sclerosis = "sclerosis"; + var sclerotium = "sclerotium"; + var scolex = "scolex"; + var scopula = "scopula"; + var scoria = "scoria"; + var scotoma = "scotoma"; + var scriptorium = "scriptorium"; + var scrotum = "scrotum"; + var scudo = "scudo"; + var scutum = "scutum"; + var scutellum = "scutellum"; + var scyphus = "scyphus"; + var scyphistoma = "scyphistoma"; + var scyphozoan = "scyphozoan"; + var secondo = "secondo"; + var segno = "segno"; + var seleucid = "seleucid"; + var self2 = "self"; + var senor = "senor"; + var sensillum = "sensillum"; + var sent = "sent"; + var senussi = "senussi"; + var separatrix = "separatrix"; + var sephardi = "sephardi"; + var septum = "septum"; + var septarium = "septarium"; + var septennium = "septennium"; + var sequela = "sequela"; + var sequestrum = "sequestrum"; + var serum = "serum"; + var seraph = "seraph"; + var sestertium = "sestertium"; + var seta = "seta"; + var sgraffito = "sgraffito"; + var shabbas = "shabbas"; + var shabbat = "shabbat"; + var shacko = "shacko"; + var shadchan = "shadchan"; + var shako = "shako"; + var shammes = "shammes"; + var sheatfish = "sheatfish"; + var sheaf = "sheaf"; + var shellfish = "shellfish"; + var shelf = "shelf"; + var shinleaf = "shinleaf"; + var shittah = "shittah"; + var shmo = "shmo"; + var shophar = "shophar"; + var shrewmouse = "shrewmouse"; + var shul = "shul"; + var siddur = "siddur"; + var siglos = "siglos"; + var signora = "signora"; + var signore = "signore"; + var signorina = "signorina"; + var siliqua = "siliqua"; + var silva = "silva"; + var silverfish = "silverfish"; + var simulacrum = "simulacrum"; + var sinciput = "sinciput"; + var sinfonia = "sinfonia"; + var sistrum = "sistrum"; + var situla = "situla"; + var smalto = "smalto"; + var snaggletooth = "snaggletooth"; + var snailfish = "snailfish"; + var snipefish = "snipefish"; + var socman = "socman"; + var solum = "solum"; + var solarium = "solarium"; + var solatium = "solatium"; + var soldo = "soldo"; + var sol = "sol"; + var solfeggio = "solfeggio"; + var solo = "solo"; + var solidus = "solidus"; + var soma = "soma"; + var soprano = "soprano"; + var sordino = "sordino"; + var sorus = "sorus"; + var sorosis = "sorosis"; + var sovkhoz = "sovkhoz"; + var spadefish = "spadefish"; + var spadix = "spadix"; + var spearfish = "spearfish"; + var spectrum = "spectrum"; + var speculum = "speculum"; + var spermatium = "spermatium"; + var spermatogonium = "spermatogonium"; + var spermatozoon = "spermatozoon"; + var spermogonium = "spermogonium"; + var sphinx = "sphinx"; + var spica = "spica"; + var spiculum = "spiculum"; + var spirillum = "spirillum"; + var splayfoot = "splayfoot"; + var splenius = "splenius"; + var sporangium = "sporangium"; + var sporogonium = "sporogonium"; + var sporozoan = "sporozoan"; + var springhaas = "springhaas"; + var spumone = "spumone"; + var sputum = "sputum"; + var squama = "squama"; + var squash = "squash"; + var squilla = "squilla"; + var squirrelfish = "squirrelfish"; + var squiz = "squiz"; + var stadium = "stadium"; + var stamen = "stamen"; + var staminodium = "staminodium"; + var stapes = "stapes"; + var staphylococcus = "staphylococcus"; + var starets = "starets"; + var starfish = "starfish"; + var stele = "stele"; + var stemma = "stemma"; + var stenosis = "stenosis"; + var stepchild = "stepchild"; + var sternum = "sternum"; + var stigma = "stigma"; + var stimulus = "stimulus"; + var stipes = "stipes"; + var stirps = "stirps"; + var stoa = "stoa"; + var stockfish = "stockfish"; + var stoma = "stoma"; + var stomodaeum = "stomodaeum"; + var stomodeum = "stomodeum"; + var stonefish = "stonefish"; + var stotinka = "stotinka"; + var strappado = "strappado"; + var stratum = "stratum"; + var stratus = "stratus"; + var stratocumulus = "stratocumulus"; + var streptococcus = "streptococcus"; + var stretto = "stretto"; + var stria = "stria"; + var strobilus = "strobilus"; + var stroma = "stroma"; + var struma = "struma"; + var stucco = "stucco"; + var stylus = "stylus"; + var stylops = "stylops"; + var stylopodium = "stylopodium"; + var subcortex = "subcortex"; + var subdelirium = "subdelirium"; + var subgenus = "subgenus"; + var subindex = "subindex"; + var submucosa = "submucosa"; + var subphylum = "subphylum"; + var substratum = "substratum"; + var succedaneum = "succedaneum"; + var succubus = "succubus"; + var suckerfish = "suckerfish"; + var suckfish = "suckfish"; + var sudarium = "sudarium"; + var sudatorium = "sudatorium"; + var sulcus = "sulcus"; + var summa = "summa"; + var sunfish = "sunfish"; + var supercargo = "supercargo"; + var superhero = "superhero"; + var supernova = "supernova"; + var superstratum = "superstratum"; + var surgeonfish = "surgeonfish"; + var swami = "swami"; + var sweetiewife = "sweetiewife"; + var swellfish = "swellfish"; + var swordfish = "swordfish"; + var syconium = "syconium"; + var syllabus = "syllabus"; + var syllepsis = "syllepsis"; + var symphysis = "symphysis"; + var sympodium = "sympodium"; + var symposium = "symposium"; + var synapsis = "synapsis"; + var synarthrosis = "synarthrosis"; + var synclinorium = "synclinorium"; + var syncytium = "syncytium"; + var syndesmosis = "syndesmosis"; + var synopsis = "synopsis"; + var syntagma = "syntagma"; + var synthesis = "synthesis"; + var syphiloma = "syphiloma"; + var syrinx = "syrinx"; + var syssarcosis = "syssarcosis"; + var tableau = "tableau"; + var taenia = "taenia"; + var talus = "talus"; + var tallith = "tallith"; + var tapetum = "tapetum"; + var tarantula = "tarantula"; + var tarsus = "tarsus"; + var tarsometatarsus = "tarsometatarsus"; + var taxon = "taxon"; + var tax = "tax"; + var taxi = "taxi"; + var tectrix = "tectrix"; + var tooth = "tooth"; + var tegmen = "tegmen"; + var tela = "tela"; + var telamon = "telamon"; + var telangiectasia = "telangiectasia"; + var telium = "telium"; + var tempo = "tempo"; + var tenaculum = "tenaculum"; + var tenderfoot = "tenderfoot"; + var tenia = "tenia"; + var tenuis = "tenuis"; + var teraph = "teraph"; + var teras = "teras"; + var teredo = "teredo"; + var tergum = "tergum"; + var terminus = "terminus"; + var terrarium = "terrarium"; + var terzetto = "terzetto"; + var tessera = "tessera"; + var testa = "testa"; + var testis = "testis"; + var testudo = "testudo"; + var tetrahedron = "tetrahedron"; + var tetraskelion = "tetraskelion"; + var thalamencephalon = "thalamencephalon"; + var thalamus = "thalamus"; + var thallus = "thallus"; + var theca = "theca"; + var thyrse = "thyrse"; + var thesaurus = "thesaurus"; + var thesis = "thesis"; + var thickleaf = "thickleaf"; + var thief = "thief"; + var tholos = "tholos"; + var thorax = "thorax"; + var thrombus = "thrombus"; + var thymus = "thymus"; + var thyrsus = "thyrsus"; + var tibia = "tibia"; + var tilefish = "tilefish"; + var tintinnabulum = "tintinnabulum"; + var titmouse = "titmouse"; + var toadfish = "toadfish"; + var tobacco = "tobacco"; + var tomato = "tomato"; + var tomentum = "tomentum"; + var tondo = "tondo"; + var tonneau = "tonneau"; + var tophus = "tophus"; + var topos = "topos"; + var torus = "torus"; + var tornado = "tornado"; + var torpedo = "torpedo"; + var torso = "torso"; + var touraco = "touraco"; + var trabecula = "trabecula"; + var trachea = "trachea"; + var traditor = "traditor"; + var tragus = "tragus"; + var trapezium = "trapezium"; + var trapezohedron = "trapezohedron"; + var trauma = "trauma"; + var treponema = "treponema"; + var trichina = "trichina"; + var triclinium = "triclinium"; + var triennium = "triennium"; + var triforium = "triforium"; + var triggerfish = "triggerfish"; + var trihedron = "trihedron"; + var triskelion = "triskelion"; + var trisoctahedron = "trisoctahedron"; + var triumvir = "triumvir"; + var trivium = "trivium"; + var trochlea = "trochlea"; + var tropaeolum = "tropaeolum"; + var trousseau = "trousseau"; + var trunkfish = "trunkfish"; + var tryma = "tryma"; + var tuba = "tuba"; + var turf = "turf"; + var tympanum = "tympanum"; + var tyro = "tyro"; + var ubermensch = "ubermensch"; + var ugli = "ugli"; + var uighur = "uighur"; + var ulna = "ulna"; + var ultimatum = "ultimatum"; + var umbilicus = "umbilicus"; + var umbo = "umbo"; + var umbra = "umbra"; + var uncus = "uncus"; + var uredium = "uredium"; + var uredo = "uredo"; + var uredinium = "uredinium"; + var uredosorus = "uredosorus"; + var urethra = "urethra"; + var urinalysis = "urinalysis"; + var uterus = "uterus"; + var utriculus = "utriculus"; + var uvula = "uvula"; + var vacuum = "vacuum"; + var vagus = "vagus"; + var vagina = "vagina"; + var vallecula = "vallecula"; + var vaporetto = "vaporetto"; + var varix = "varix"; + var vas = "vas"; + var vasculum = "vasculum"; + var velum = "velum"; + var velamen = "velamen"; + var velarium = "velarium"; + var vena = "vena"; + var ventriculus = "ventriculus"; + var vermis = "vermis"; + var verruca = "verruca"; + var vertebra = "vertebra"; + var vertex = "vertex"; + var vertigo = "vertigo"; + var vesica = "vesica"; + var veto = "veto"; + var vexillum = "vexillum"; + var viaticum = "viaticum"; + var viator = "viator"; + var vibraculum = "vibraculum"; + var vibrissa = "vibrissa"; + var villus = "villus"; + var vimen = "vimen"; + var vinculum = "vinculum"; + var virago = "virago"; + var vis = "vis"; + var virtuoso = "virtuoso"; + var vita = "vita"; + var vitellus = "vitellus"; + var vitta = "vitta"; + var vivarium = "vivarium"; + var vox = "vox"; + var volcano = "volcano"; + var volkslied = "volkslied"; + var volta = "volta"; + var volva = "volva"; + var vorticella = "vorticella"; + var vortex = "vortex"; + var vulva = "vulva"; + var wahhabi = "wahhabi"; + var wanderjahr = "wanderjahr"; + var weakfish = "weakfish"; + var werewolf = "werewolf"; + var wharf = "wharf"; + var whitefish = "whitefish"; + var wife = "wife"; + var wolffish = "wolffish"; + var wolf = "wolf"; + var woman = "woman"; + var woodlouse = "woodlouse"; + var wreckfish = "wreckfish"; + var wunderkind = "wunderkind"; + var xiphisternum = "xiphisternum"; + var yeshiva = "yeshiva"; + var yogi = "yogi"; + var yourself = "yourself"; + var zamindari = "zamindari"; + var zecchino = "zecchino"; + var zero = "zero"; + var zoon = "zoon"; + var zoaea = "zoaea"; + var zoea = "zoea"; + var zoonosis = "zoonosis"; + exceptions.aardwolves = aardwolf, exceptions.abaci = abacus, exceptions.aboideaux = aboideau, exceptions.aboiteaux = aboiteau, exceptions.abscissae = abscissa, exceptions.acanthi = acanthus, exceptions.acari = acarus, exceptions.acciaccature = acciaccatura, exceptions.acetabula = acetabulum, exceptions.achaemenidae = achaemenid, exceptions.achaemenides = achaemenid, exceptions.acicula = aciculum, exceptions.aciculae = acicula, exceptions.acini = acinus, exceptions.acromia = acromion, exceptions.actiniae = actinia, exceptions.actinozoa = actinozoan, exceptions.addenda = addendum, exceptions.adenocarcinomata = adenocarcinoma, exceptions.adenomata = adenoma, exceptions.adieux = adieu, exceptions.adyta = adytum, exceptions.aecia = aecium, exceptions.aecidia = aecidium, exceptions.aerobia = aerobium, exceptions.aggiornamenti = aggiornamento, exceptions.agnomina = agnomen, exceptions.agones = agon, exceptions.agorae = agora, exceptions.agouties = agouti, exceptions.alae = ala, exceptions.alewives = alewife, exceptions.alkalies = alkali, exceptions.allodia = allodium, exceptions.alluvia = alluvium, exceptions.alodia = alodium, exceptions.altocumuli = altocumulus, exceptions.altostrati = altostratus, exceptions.alulae = alula, exceptions.alumnae = alumna, exceptions.alumni = alumnus, exceptions.alveoli = alveolus, exceptions.amanuenses = amanuensis, exceptions.ambulacra = ambulacrum, exceptions.amebae = ameba, exceptions.amnia = amnion, exceptions.amniocenteses = amniocentesis, exceptions.amoebae = amoeba, exceptions.amoebiases = amoebiasis, exceptions.amoraim = amora, exceptions.amoretti = amoretto, exceptions.amorini = amorino, exceptions.amphiarthroses = amphiarthrosis, exceptions.amphicia = amphithecium, exceptions.amphimixes = amphimixis, exceptions.amphioxi = amphioxus, exceptions.amphisbaenae = amphisbaena, exceptions.amphorae = amphora, exceptions.ampullae = ampulla, exceptions.amygdalae = amygdala, exceptions.anabases = anabasis, exceptions.anacolutha = anacoluthon, exceptions.anacruses = anacrusis, exceptions.anaerobia = anaerobium, exceptions.anagnorises = anagnorisis, exceptions.analemmata = analemma, exceptions.analyses = analysis, exceptions.anamneses = anamnesis, exceptions.anamorphoses = anamorphosis, exceptions.anastomoses = anastomosis, exceptions.anatyxes = anaptyxis, exceptions.ancones = ancon, exceptions.androclinia = androclinium, exceptions.androecia = androecium, exceptions.androsphinges = androsphinx, exceptions.andtheridia = antheridium, exceptions.angelfishes = angelfish, exceptions.angiomata = angioma, exceptions.animalcula = animalculum, exceptions.anlagen = anlage, exceptions.annattos = annatto, exceptions.annuli = annulus, exceptions.antae = anta, exceptions.antalkalies = antalkali, exceptions.antefixa = antefix, exceptions.antennae = antenna, exceptions.antependia = antependium, exceptions.anthelia = anthelion, exceptions.anthelices = anthelix, exceptions.anthemia = anthemion, exceptions.antheridia = antheridium, exceptions.anthodia = anthodium, exceptions.anthozoa = anthozoan, exceptions.anthraces = anthrax, exceptions.anticlinoria = anticlinorium, exceptions.antihelices = antihelix, exceptions.antiheroes = antihero, exceptions.antisera = antiserum, exceptions.antitheses = antithesis, exceptions.antitragi = antitragus, exceptions.antra = antrum, exceptions.anus = anus, exceptions.aortae = aorta, exceptions.aphelia = aphelion, exceptions.aphides = aphis, exceptions.apices = apex, exceptions.apodoses = apodosis, exceptions.apomixes = apomixis, exceptions.aponeuroses = aponeurosis, exceptions.apophyses = apophysis, exceptions.aposiopeses = aposiopesis, exceptions.apothecia = apothecium, exceptions.apotheoses = apotheosis, exceptions.apparatus = apparatus, exceptions.appendices = appendix, exceptions.appoggiature = appoggiatura, exceptions.apsides = apsis, exceptions.aquae = aqua, exceptions.aquaria = aquarium, exceptions.araglis = argali, exceptions.arboreta = arboretum, exceptions.arcana = arcanum, exceptions.archegonia = archegonium, exceptions.archerfishes = archerfish, exceptions.archesporia = archesporium, exceptions.archipelagoes = archipelago, exceptions.areolae = areola, exceptions.argali = argali, exceptions.argumenta = argumentum, exceptions.ariette = arietta, exceptions.aristae = arista, exceptions.armamentaria = armamentarium, exceptions.arses = arsis, exceptions.artal = rotl, exceptions.artel = rotl, exceptions.arterioscleroses = arteriosclerosis, exceptions.aruspices = aruspex, exceptions.asceses = ascesis, exceptions.asci = ascus, exceptions.ascidia = ascidium, exceptions.ascogonia = ascogonium, exceptions.ashes = ash, exceptions.ashkenazim = ashkenazi, exceptions.aspergilla = aspergillum, exceptions.aspergilli = aspergillus, exceptions.aspergilloses = aspergillosis, exceptions.aspersoria = aspersorium, exceptions.assegais = assegai, exceptions.astragali = astragalus, exceptions.asyndeta = asyndeton, exceptions.atheromata = atheroma, exceptions.atheroscleroses = atherosclerosis, exceptions.atmolyses = atmolysis, exceptions.atria = atrium, exceptions.auditoria = auditorium, exceptions.aurae = aura, exceptions.aurar = eyrir, exceptions.aurei = aureus, exceptions.auriculae = auricula, exceptions.aurorae = aurora, exceptions.auspices = auspice, exceptions.autocatalyses = autocatalysis, exceptions.autochthones = autochthon, exceptions.automata = automaton, exceptions.avitaminoses = avitaminosis, exceptions.axes = ax, exceptions.axillae = axilla, exceptions.bacchantes = bacchante, exceptions.bacchii = bacchius, exceptions.bacilli = bacillus, exceptions.bacteriostases = bacteriostasis, exceptions.bacula = baculum, exceptions.ballistae = ballista, exceptions.bambini = bambino, exceptions.bandeaux = bandeau, exceptions.banditti = bandit, exceptions.bani = ban, exceptions.banjoes = banjo, exceptions.barklice = barklouse, exceptions.barramundies = barramundi, exceptions.bases = base, exceptions.basidia = basidium, exceptions.basileis = basileus, exceptions.bassi = basso, exceptions.bastinadoes = bastinado, exceptions.bateaux = bateau, exceptions.batfishes = batfish, exceptions.beadsmen = beadsman, exceptions.beaux = beau, exceptions.beeves = beef, exceptions.behooves = behoof, exceptions.bersaglieri = bersagliere, exceptions.bhishties = bhishti, exceptions.bibliothecae = bibliotheca, exceptions.bicennaries = bicentenary, exceptions.bijoux = bijou, exceptions.bilboes = bilbo, exceptions.billfishes = billfish, exceptions.bimboes = bimbo, exceptions.bisectrices = bisectrix, exceptions.blackfeet = blackfoot, exceptions.blackfishes = blackfish, exceptions.blastemata = blastema, exceptions.blastulae = blastula, exceptions.blindfishes = blindfish, exceptions.blowfishes = blowfish, exceptions.bluefishes = bluefish, exceptions.boarfishes = boarfish, exceptions.bok = boschbok, exceptions.boleti = boletus, exceptions.bolivares = bolivar, exceptions.bolsheviki = bolshevik, exceptions.bonefishes = bonefish, exceptions.bongoes = bongo, exceptions.bonitoes = bonito, exceptions.booklice = booklouse, exceptions.bookshelves = bookshelf, exceptions.boraces = borax, exceptions.borborygmi = borborygmus, exceptions.bordereaux = bordereau, exceptions.botargoes = botargo, exceptions.boxfishes = boxfish, exceptions.brachia = brachium, exceptions.brainchildren = brainchild, exceptions.branchiae = branchia, exceptions.brants = brant, exceptions.bravadoes = bravado, exceptions.bravoes = bravo, exceptions.bregmata = bregma, exceptions.brethren = brother, exceptions.broadleaves = broadleaf, exceptions.bronchi = bronchus, exceptions.bryozoa = bryozoan, exceptions.buboes = bubo, exceptions.buckoes = bucko, exceptions.buckteeth = bucktooth, exceptions.buffaloes = buffalo, exceptions.bullae = bulla, exceptions.bunde = bund, exceptions.bureaux = bureau, exceptions.bursae = bursa, exceptions.bushbok = boschbok, exceptions.bushboks = boschbok, exceptions.busses = bus, exceptions.butterfishes = butterfish, exceptions.byssi = byssus, exceptions.cacti = cactus, exceptions.caducei = caduceus, exceptions.caeca = caecum, exceptions.caesurae = caesura, exceptions.calami = calamus, exceptions.calathi = calathus, exceptions.calcanei = calcaneum, exceptions.calces = calx, exceptions.calculi = calculus, exceptions.caldaria = caldarium, exceptions.calices = calix, exceptions.calicoes = calico, exceptions.calli = callus, exceptions.calves = calf, exceptions.calyces = calyx, exceptions.cambia = cambium, exceptions.camerae = camera, exceptions.canaliculi = canaliculus, exceptions.candelabra = candelabrum, exceptions.candlefishes = candlefish, exceptions.canthi = canthus, exceptions.canulae = canula, exceptions.canzoni = canzone, exceptions.capita = caput, exceptions.capitula = capitulum, exceptions.capricci = capriccio, exceptions.carabinieri = carabiniere, exceptions.carbonadoes = carbonado, exceptions.carcinomata = carcinoma, exceptions.cargoes = cargo, exceptions.carides = caryatid, exceptions.carinae = carina, exceptions.caroli = carolus, exceptions.carpi = carpus, exceptions.carpogonia = carpogonium, exceptions.caryopses = caryopsis, exceptions.caryopsides = caryopsis, exceptions.castrati = castrato, exceptions.catabases = catabasis, exceptions.cataclases = cataclasis, exceptions.cataloes = catalo, exceptions.catalyses = catalysis, exceptions.catenae = catena, exceptions.catfishes = catfish, exceptions.cathari = cathar, exceptions.cathexes = cathexis, exceptions.cattaloes = cattalo, exceptions.caudices = caudex, exceptions.caules = caulis, exceptions.cavatine = cavatina, exceptions.cavefishes = cavefish, exceptions.cavetti = cavetto, exceptions.ceca = cecum, exceptions.cellae = cella, exceptions.cembali = cembalo, exceptions.centesimi = centesimo, exceptions.centra = centrum, exceptions.cephalothoraces = cephalothorax, exceptions.cercariae = cercaria, exceptions.cercariiae = cercaria, exceptions.cerci = cercus, exceptions.cerebella = cerebellum, exceptions.cerebra = cerebrum, exceptions.cervices = cervix, exceptions.cestuses = caestus, exceptions.cesurae = cesura, exceptions.chadarim = cheder, exceptions.chaetae = chaeta, exceptions.chalazae = chalaza, exceptions.challoth = hallah, exceptions.chalutzim = chalutz, exceptions.chapaties = chapati, exceptions.chapatties = chapatti, exceptions.chapeaux = chapeau, exceptions.chasidim = chasid, exceptions.chassidim = chassid, exceptions.chateaux = chateau, exceptions.chazanim = chazan, exceptions.chedarim = cheder, exceptions.chelae = chela, exceptions.chelicerae = chelicera, exceptions.cherubim = cherub, exceptions.chiasmata = chiasma, exceptions.chiasmi = chiasmus, exceptions.children = child, exceptions.chillies = chilli, exceptions.chitarroni = chitarrone, exceptions.chlamydes = chlamys, exceptions.chlamyses = chlamys, exceptions.chondromata = chondroma, exceptions.choragi = choragus, exceptions.choriambi = choriambus, exceptions.choux = chou, exceptions.chromonemata = chromonema, exceptions.chrysalides = chrysalis, exceptions.chuvashes = chuvash, exceptions.ciboria = ciborium, exceptions.cicadae = cicada, exceptions.cicale = cicala, exceptions.cicatrices = cicatrix, exceptions.ciceroni = cicerone, exceptions.cicisbei = cicisbeo, exceptions.cilia = cilium, exceptions.cimices = cimex, exceptions.cineraria = cinerarium, exceptions.cingula = cingulum, exceptions.cirri = cirrus, exceptions.cirrocumuli = cirrocumulus, exceptions.cirrostrati = cirrostratus, exceptions.ciscoes = cisco, exceptions.cisternae = cisterna, exceptions.clani = clarino, exceptions.clanos = clarino, exceptions.claroes = claro, exceptions.clepsydrae = clepsydra, exceptions.clinandria = clinandrium, exceptions.clingfishes = clingfish, exceptions.clitella = clitellum, exceptions.cloacae = cloaca, exceptions.clostridia = clostridium, exceptions.cloverleaves = cloverleaf, exceptions.clypei = clypeus, exceptions.coagula = coagulum, exceptions.coalfishes = coalfish, exceptions.cocci = coccus, exceptions.coccyges = coccyx, exceptions.cochleae = cochlea, exceptions.codfishes = codfish, exceptions.codices = codex, exceptions.coelentera = coelenteron, exceptions.coenuri = coenurus, exceptions.cognomina = cognomen, exceptions.cognosenti = cognosente, exceptions.cola = colon, exceptions.coleorhizae = coleorhiza, exceptions.collegia = collegium, exceptions.colloquia = colloquium, exceptions.colluvia = colluvium, exceptions.collyria = collyrium, exceptions.colones = colon, exceptions.colossi = colossus, exceptions.columbaria = columbarium, exceptions.columellae = columella, exceptions.comae = coma, exceptions.comatulae = comatula, exceptions.comedones = comedo, exceptions.comics = comic, exceptions.commandoes = commando, exceptions.concertanti = concertante, exceptions.concerti = concerto, exceptions.concertini = concertino, exceptions.conchae = concha, exceptions.condottieri = condottiere, exceptions.condylomata = condyloma, exceptions.confervae = conferva, exceptions.congii = congius, exceptions.conidia = conidium, exceptions.conjunctivae = conjunctiva, exceptions.conquistadores = conquistador, exceptions.consortia = consortium, exceptions.contagia = contagium, exceptions.continua = continuum, exceptions.contralti = contralto, exceptions.conversazioni = conversazione, exceptions.convolvuli = convolvulus, exceptions.copulae = copula, exceptions.corbiculae = corbicula, exceptions.coria = corium, exceptions.corneae = cornea, exceptions.cornua = cornu, exceptions.coronae = corona, exceptions.corpora = corpus, exceptions.corrigenda = corrigendum, exceptions.cortices = cortex, exceptions.cortinae = cortina, exceptions.corybantes = corybant, exceptions.coryphaei = coryphaeus, exceptions.costae = costa, exceptions.cothurni = cothurnus, exceptions.couteaux = couteau, exceptions.cowfishes = cowfish, exceptions.coxae = coxa, exceptions.cramboes = crambo, exceptions.crania = cranium, exceptions.crases = crasis, exceptions.crawfishes = crawfish, exceptions.crayfishes = crayfish, exceptions.credenda = credendum, exceptions.crematoria = crematorium, exceptions.crescendi = crescendo, exceptions.cribella = cribellum, exceptions.crises = crisis, exceptions.crissa = crissum, exceptions.cristae = crista, exceptions.criteria = criterion, exceptions.cruces = crux, exceptions.crura = crus, exceptions.crusadoes = crusado, exceptions.cruzadoes = cruzado, exceptions.crying = cry, exceptions.cryings = cry, exceptions.ctenidia = ctenidium, exceptions.cubicula = cubiculum, exceptions.culices = culex, exceptions.culpae = culpa, exceptions.culti = cultus, exceptions.cumuli = cumulus, exceptions.cumulonimbi = cumulonimbus, exceptions.cumulostrati = cumulostratus, exceptions.curiae = curia, exceptions.curricula = curriculum, exceptions.custodes = custos, exceptions.cutes = cutis, exceptions.cuticulae = cuticula, exceptions.cuttlefishes = cuttlefish, exceptions.cyclopes = cyclops, exceptions.cycloses = cyclosis, exceptions.cylices = cylix, exceptions.cylikes = cylix, exceptions.cymae = cyma, exceptions.cymatia = cymatium, exceptions.cypselae = cypsela, exceptions.cysticerci = cysticercus, exceptions.dadoes = dado, exceptions.dagoes = dago, exceptions.damselfishes = damselfish, exceptions.data = datum, exceptions.daymio = daimio, exceptions.daymios = daimio, exceptions.dealfishes = dealfish, exceptions.decemviri = decemvir, exceptions.decennia = decennium, exceptions.deciduae = decidua, exceptions.definienda = definiendum, exceptions.definientia = definiens, exceptions.delphinia = delphinium, exceptions.denarii = denarius, exceptions.dentalia = dentalium, exceptions.dermatoses = dermatosis, exceptions.desiderata = desideratum, exceptions.desperadoes = desperado, exceptions.devilfishes = devilfish, exceptions.diaereses = diaeresis, exceptions.diaerses = diaeresis, exceptions.diagnoses = diagnosis, exceptions.dialyses = dialysis, exceptions.diaphyses = diaphysis, exceptions.diapophyses = diapophysis, exceptions.diarthroses = diarthrosis, exceptions.diastalses = diastalsis, exceptions.diastases = diastasis, exceptions.diastemata = diastema, exceptions.diastemata = diastema, exceptions.diathses = diathesis, exceptions.diazoes = diazo, exceptions.dibbukkim = dibbuk, exceptions.dichasia = dichasium, exceptions.dicta = dictum, exceptions.didoes = dido, exceptions.diereses = dieresis, exceptions.dieses = diesis, exceptions.differentiae = differentia, exceptions.dilettanti = dilettante, exceptions.diluvia = diluvium, exceptions.dingoes = dingo, exceptions.diplococci = diplococcus, exceptions.disci = discus, exceptions.discoboli = discobolus, exceptions.dive = diva, exceptions.diverticula = diverticulum, exceptions.divertimenti = divertimento, exceptions.djinn = djinny, exceptions.dodoes = dodo, exceptions.dogfishes = dogfish, exceptions.dogmata = dogma, exceptions.dogteeth = dogtooth, exceptions.dollarfishes = dollarfish, exceptions.domatia = domatium, exceptions.dominoes = domino, exceptions.dormice = dormouse, exceptions.dorsa = dorsum, exceptions.drachmae = drachma, exceptions.drawknives = drawknife, exceptions.drosophilae = drosophila, exceptions.drumfishes = drumfish, exceptions.dryades = dryad, exceptions.dui = duo, exceptions.duona = duodenum, exceptions.duonas = duodenum, exceptions.dupondii = dupondius, exceptions.duumviri = duumvir, exceptions.dwarves = dwarf, exceptions.dybbukkim = dybbuk, exceptions.ecchymoses = ecchymosis, exceptions.ecclesiae = ecclesia, exceptions.ecdyses = ecdysis, exceptions.echidnae = echidna, exceptions.echini = echinus, exceptions.echinococci = echinococcus, exceptions.echoes = echo, exceptions.ectozoa = ectozoan, exceptions.eddoes = eddo, exceptions.edemata = edema, exceptions.effluvia = effluvium, exceptions.eidola = eidolon, exceptions.eisegeses = eisegesis, exceptions.eisteddfodau = eisteddfod, exceptions.elenchi = elenchus, exceptions.ellipses = ellipsis, exceptions.eluvia = eluvium, exceptions.elves = elf, exceptions.elytra = elytrum, exceptions.embargoes = embargo, exceptions.emboli = embolus, exceptions.emphases = emphasis, exceptions.emporia = emporium, exceptions.enarthroses = enarthrosis, exceptions.encephala = encephalon, exceptions.encephalitides = encephalitis, exceptions.encephalomata = encephaloma, exceptions.enchiridia = enchiridion, exceptions.enchondromata = enchondroma, exceptions.encomia = encomium, exceptions.endamebae = endameba, exceptions.endamoebae = endamoeba, exceptions.endocardia = endocardium, exceptions.endocrania = endocranium, exceptions.endometria = endometrium, exceptions.endostea = endosteum, exceptions.endostoses = endostosis, exceptions.endothecia = endothecium, exceptions.endothelia = endothelium, exceptions.endotheliomata = endothelioma, exceptions.endozoa = endozoan, exceptions.enemata = enema, exceptions.enneahedra = enneahedron, exceptions.entamebae = entameba, exceptions.entamoebae = entamoeba, exceptions.entases = entasis, exceptions.entera = enteron, exceptions.entia = ens, exceptions.entozoa = entozoan, exceptions.epencephala = epencephalon, exceptions.epentheses = epenthesis, exceptions.epexegeses = epexegesis, exceptions.ephemera = ephemeron, exceptions.ephemerae = ephemera, exceptions.ephemerides = ephemeris, exceptions.ephori = ephor, exceptions.epicalyces = epicalyx, exceptions.epicanthi = epicanthus, exceptions.epicardia = epicardium, exceptions.epicedia = epicedium, exceptions.epicleses = epiclesis, exceptions.epididymides = epididymis, exceptions.epigastria = epigastrium, exceptions.epiglottides = epiglottis, exceptions.epimysia = epimysium, exceptions.epiphenomena = epiphenomenon, exceptions.epiphyses = epiphysis, exceptions.episterna = episternum, exceptions.epithalamia = epithalamium, exceptions.epithelia = epithelium, exceptions.epitheliomata = epithelioma, exceptions.epizoa = epizoan, exceptions.epyllia = epyllion, exceptions.equilibria = equilibrium, exceptions.equiseta = equisetum, exceptions.eringoes = eringo, exceptions.errata = erratum, exceptions.eryngoes = eryngo, exceptions.esophagi = esophagus, exceptions.etyma = etymon, exceptions.eucalypti = eucalyptus, exceptions.eupatridae = eupatrid, exceptions.euripi = euripus, exceptions.exanthemata = exanthema, exceptions.executrices = executrix, exceptions.exegeses = exegesis, exceptions.exempla = exemplum, exceptions.exordia = exordium, exceptions.exostoses = exostosis, exceptions.extrema = extremum, exceptions.eyeteeth = eyetooth, exceptions.fabliaux = fabliau, exceptions.faciae = facia, exceptions.faculae = facula, exceptions.faeroese = faeroese, exceptions.fallfishes = fallfish, exceptions.famuli = famulus, exceptions.faroese = faroese, exceptions.farragoes = farrago, exceptions.fasciae = fascia, exceptions.fasciculi = fasciculus, exceptions.fatsoes = fatso, exceptions.faunae = fauna, exceptions.feculae = fecula, exceptions.fedayeen = fedayee, exceptions.feet = foot, exceptions.fellaheen = fellah, exceptions.fellahin = fellah, exceptions.femora = femur, exceptions.fenestellae = fenestella, exceptions.fenestrae = fenestra, exceptions.feriae = feria, exceptions.fermate = fermata, exceptions.ferulae = ferula, exceptions.festschriften = festschrift, exceptions.fetiales = fetial, exceptions.fezzes = fez, exceptions.fiascoes = fiasco, exceptions.fibrillae = fibrilla, exceptions.fibromata = fibroma, exceptions.fibulae = fibula, exceptions.ficoes = fico, exceptions.fideicommissa = fideicommissum, exceptions.fieldmice = fieldmouse, exceptions.figs = fig, exceptions.fila = filum, exceptions.filariiae = filaria, exceptions.filefishes = filefish, exceptions.fimbriae = fimbria, exceptions.fishes = fish, exceptions.fishwives = fishwife, exceptions.fistulae = fistula, exceptions.flabella = flabellum, exceptions.flagella = flagellum, exceptions.flagstaves = flagstaff, exceptions.flambeaux = flambeau, exceptions.flamines = flamen, exceptions.flamingoes = flamingo, exceptions.flatfeet = flatfoot, exceptions.flatfishes = flatfish, exceptions.flittermice = flittermouse, exceptions.flocci = floccus, exceptions.flocculi = flocculus, exceptions.florae = flora, exceptions.floreant = floreat, exceptions.florilegia = florilegium, exceptions.flyleaves = flyleaf, exceptions.foci = focus, exceptions.folia = folium, exceptions.fora = forum, exceptions.foramina = foramen, exceptions.forceps = forceps, exceptions.forefeet = forefoot, exceptions.foreteeth = foretooth, exceptions.formicaria = formicarium, exceptions.formulae = formula, exceptions.fornices = fornix, exceptions.fortes = fortis, exceptions.fossae = fossa, exceptions.foveae = fovea, exceptions.foveolae = foveola, exceptions.fractocumuli = fractocumulus, exceptions.fractostrati = fractostratus, exceptions.fraena = fraenum, exceptions.frauen = frau, exceptions.frena = frenum, exceptions.frenula = frenulum, exceptions.frescoes = fresco, exceptions.fricandeaux = fricandeau, exceptions.fricandoes = fricando, exceptions.frijoles = frijol, exceptions.frogfishes = frogfish, exceptions.frontes = frons, exceptions.frusta = frustum, exceptions.fuci = fucus, exceptions.fulcra = fulcrum, exceptions.fumatoria = fumatorium, exceptions.fundi = fundus, exceptions.fungi = fungus, exceptions.funiculi = funiculus, exceptions.furcula = furculum, exceptions.furculae = furcula, exceptions.furfures = furfur, exceptions.galeae = galea, exceptions.gambadoes = gambado, exceptions.gametangia = gametangium, exceptions.gametoecia = gametoecium, exceptions.gammadia = gammadion, exceptions.ganglia = ganglion, exceptions.garfishes = garfish, exceptions.gas = gas, exceptions.gasses = gas, exceptions.gastrulae = gastrula, exceptions.gateaux = gateau, exceptions.gazeboes = gazebo, exceptions.geckoes = gecko, exceptions.geese = goose, exceptions.gelsemia = gelsemium, exceptions.gemboks = gemsbok, exceptions.gembucks = gemsbuck, exceptions.gemeinschaften = gemeinschaft, exceptions.gemmae = gemma, exceptions.genera = genus, exceptions.generatrices = generatrix, exceptions.geneses = genesis, exceptions.genii = genius, exceptions.gentes = gens, exceptions.genua = genu, exceptions.genus = genus, exceptions.germina = germen, exceptions.gesellschaften = gesellschaft, exceptions.gestalten = gestalt, exceptions.ghettoes = ghetto, exceptions.gingivae = gingiva, exceptions.gingkoes = gingko, exceptions.ginglymi = ginglymus, exceptions.ginkgoes = ginkgo, exceptions.gippoes = gippo, exceptions.glabellae = glabella, exceptions.gladioli = gladiolus, exceptions.glandes = glans, exceptions.gliomata = glioma, exceptions.glissandi = glissando, exceptions.globefishes = globefish, exceptions.globigerinae = globigerina, exceptions.glochidcia = glochidium, exceptions.glochidia = glochidium, exceptions.glomeruli = glomerulus, exceptions.glossae = glossa, exceptions.glottides = glottis, exceptions.glutaei = glutaeus, exceptions.glutei = gluteus, exceptions.gnoses = gnosis, exceptions.goatfishes = goatfish, exceptions.goboes = gobo, exceptions.godchildren = godchild, exceptions.goes = go, exceptions.goldfishes = goldfish, exceptions.gomphoses = gomphosis, exceptions.gonia = gonion, exceptions.gonidia = gonidium, exceptions.gonococci = gonococcus, exceptions.goodwives = goodwife, exceptions.goosefishes = goosefish, exceptions.gorgoneia = gorgoneion, exceptions.gospopoda = gospodin, exceptions.goyim = goy, exceptions.gps = gps, exceptions.grafen = graf, exceptions.graffiti = graffito, exceptions.grandchildren = grandchild, exceptions.granulomata = granuloma, exceptions.gravamina = gravamen, exceptions.groszy = grosz, exceptions.grottoes = grotto, exceptions.guilder = guilde, exceptions.guilders = guilde, exceptions.guitarfishes = guitarfish, exceptions.gummata = gumma, exceptions.gurnard = gurnar, exceptions.gurnards = gurnar; + exceptions.guttae = gutta, exceptions.gymnasia = gymnasium, exceptions.gynaecea = gynaeceum, exceptions.gynaecia = gynaecium, exceptions.gynecea = gynecium, exceptions.gynecia = gynecium, exceptions.gynoecea = gynoecium, exceptions.gynoecia = gynoecium, exceptions.gyri = gyrus, exceptions.hadarim = heder, exceptions.hadjes = hadj, exceptions.haematolyses = haematolysis, exceptions.haematomata = haematoma, exceptions.haematozoa = haematozoon, exceptions.haemodialyses = haemodialysis, exceptions.haemolyses = haemolysis, exceptions.haemoptyses = haemoptysis, exceptions.haeredes = haeres, exceptions.haftaroth = haftarah, exceptions.hagfishes = hagfish, exceptions.haggadas = haggadah, exceptions.haggadoth = haggada, exceptions.hajjes = hajj, exceptions.haleru = haler, exceptions.halfpence = halfpenny, exceptions.hallot = hallah, exceptions.halloth = hallah, exceptions.halluces = hallux, exceptions.haloes = halo, exceptions.halteres = halter, exceptions.halves = half, exceptions.hamuli = hamulus, exceptions.haphtaroth = haphtarah, exceptions.haredim = haredi, exceptions.haruspices = haruspex, exceptions.hasidim = hasid, exceptions.hassidim = hassid, exceptions.haustella = haustellum, exceptions.haustoria = haustorium, exceptions.hazzanim = hazzan, exceptions.hectocotyli = hectocotylus, exceptions.heldentenore = heldentenor, exceptions.helices = helix, exceptions.heliozoa = heliozoan, exceptions.hematolyses = hematolysis, exceptions.hematomata = hematoma, exceptions.hematozoa = hematozoon, exceptions.hemelytra = hemelytron, exceptions.hemielytra = hemielytron, exceptions.hemodialyses = hemodialysis, exceptions.hemolyses = hemolysis, exceptions.hemoptyses = hemoptysis, exceptions.hendecahedra = hendecahedron, exceptions.heraclidae = heraclid, exceptions.heraklidae = heraklid, exceptions.herbaria = herbarium, exceptions.hermae = herma, exceptions.hermai = herma, exceptions.herniae = hernia, exceptions.heroes = hero, exceptions.herren = herr, exceptions.hetaerae = hetaera, exceptions.hetairai = hetaira, exceptions.hibernacula = hibernaculum, exceptions.hieracosphinges = hieracosphinx, exceptions.hila = hilum, exceptions.hili = hilus, exceptions.himatia = himation, exceptions.hippocampi = hippocampus, exceptions.hippopotami = hippopotamus, exceptions.his = his, exceptions.hoboes = hobo, exceptions.hogfishes = hogfish, exceptions.homunculi = homunculus, exceptions.honoraria = honorarium, exceptions.hooves = hoof, exceptions.horologia = horologium, exceptions.housewives = housewife, exceptions.humeri = humerus, exceptions.hydrae = hydra, exceptions.hydromedusae = hydromedusa, exceptions.hydrozoa = hydrozoan, exceptions.hymenoptera = hymenopteran, exceptions.hynia = hymenium, exceptions.hyniums = hymenium, exceptions.hypanthia = hypanthium, exceptions.hyperostoses = hyperostosis, exceptions.hyphae = hypha, exceptions.hypnoses = hypnosis, exceptions.hypochondria = hypochondrium, exceptions.hypogastria = hypogastrium, exceptions.hypogea = hypogeum, exceptions.hypophyses = hypophysis, exceptions.hypostases = hypostasis, exceptions.hypothalami = hypothalamus, exceptions.hypotheses = hypothesis, exceptions.hyraces = hyrax, exceptions.iambi = iamb, exceptions.ibices = ibex, exceptions.ibo = igbo, exceptions.ichthyosauri = ichthyosaurus, exceptions.ichthyosauruses = ichthyosaur, exceptions.iconostases = iconostas, exceptions.icosahedra = icosahedron, exceptions.ideata = ideatum, exceptions.igorrorote = igorrote, exceptions.ilia = ilium, exceptions.imagines = imago, exceptions.imagoes = imago, exceptions.imperia = imperium, exceptions.impies = impi, exceptions.incubi = incubus, exceptions.incudes = incus, exceptions.indices = index, exceptions.indigoes = indigo, exceptions.indumenta = indumentum, exceptions.indusia = indusium, exceptions.infundibula = infundibulum, exceptions.ingushes = ingush, exceptions.innuendoes = innuendo, exceptions.inocula = inoculum, exceptions.insectaria = insectarium, exceptions.insulae = insula, exceptions.intagli = intaglio, exceptions.interleaves = interleaf, exceptions.intermezzi = intermezzo, exceptions.interreges = interrex, exceptions.interregna = interregnum, exceptions.intimae = intima, exceptions.involucella = involucellum, exceptions.involucra = involucrum, exceptions.irides = iris, exceptions.irs = irs, exceptions.is = is, exceptions.ischia = ischium, exceptions.isthmi = isthmus, exceptions.jackeroos = jackeroo, exceptions.jackfishes = jackfish, exceptions.jackknives = jackknife, exceptions.jambeaux = jambeau, exceptions.jellyfishes = jellyfish, exceptions.jewelfishes = jewelfish, exceptions.jewfishes = jewfish, exceptions.jingoes = jingo, exceptions.jinn = jinni, exceptions.joes = joe, exceptions.jura = jus, exceptions.kaddishim = kaddish, exceptions.kalmuck = kalmuc, exceptions.kalmucks = kalmuc, exceptions.katabases = katabasis, exceptions.keeshonden = keeshond, exceptions.kibbutzim = kibbutz, exceptions.killifishes = killifish, exceptions.kingfishes = kingfish, exceptions.knives = knife, exceptions.kohlrabies = kohlrabi, exceptions.kronen = krone, exceptions.kroner = krone, exceptions.kronur = krona, exceptions.krooni = kroon, exceptions.kylikes = kylix, exceptions.labara = labarum, exceptions.labella = labellum, exceptions.labia = labium, exceptions.labra = labrum, exceptions.lactobacilli = lactobacillus, exceptions.lacunae = lacuna, exceptions.lacunaria = lacunar, exceptions.lamellae = lamella, exceptions.lamiae = lamia, exceptions.laminae = lamina, exceptions.lapilli = lapillus, exceptions.lapithae = lapith, exceptions.larvae = larva, exceptions.larynges = larynx, exceptions.lassoes = lasso, exceptions.lati = lat, exceptions.latices = latex, exceptions.latifundia = latifundium, exceptions.latu = lat, exceptions.lavaboes = lavabo, exceptions.leaves = leaf, exceptions.lecythi = lecythus, exceptions.leges = lex, exceptions.lei = leu, exceptions.lemmata = lemma, exceptions.lemnisci = lemniscus, exceptions.lenes = lenis, exceptions.lentigines = lentigo, exceptions.leonides = leonid, exceptions.lepidoptera = lepidopteran, exceptions.leprosaria = leprosarium, exceptions.lepta = lepton, exceptions.leptocephali = leptocephalus, exceptions.leucocytozoa = leucocytozoan, exceptions.leva = lev, exceptions.librae = libra, exceptions.libretti = libretto, exceptions.lice = louse, exceptions.lieder = lied, exceptions.ligulae = ligula, exceptions.limbi = limbus, exceptions.limina = limen, exceptions.limites = limes, exceptions.limuli = limulus, exceptions.lingoes = lingo, exceptions.linguae = lingua, exceptions.lionfishes = lionfish, exceptions.lipomata = lipoma, exceptions.lire = lira, exceptions.liriodendra = liriodendron, exceptions.lisente = sente, exceptions.listente = sente, exceptions.litai = litas, exceptions.litu = litas, exceptions.lives = life, exceptions.lixivia = lixivium, exceptions.loaves = loaf, exceptions.loci = locus, exceptions.loculi = loculus, exceptions.loggie = loggia, exceptions.logia = logion, exceptions.lomenta = lomentum, exceptions.longobardi = longobard, exceptions.loricae = lorica, exceptions.luba = luba, exceptions.lubritoria = lubritorium, exceptions.lumbi = lumbus, exceptions.lumina = lumen, exceptions.lumpfishes = lumpfish, exceptions.lungfishes = lungfish, exceptions.lunulae = lunula, exceptions.lures = lure, exceptions.lustra = lustre, exceptions.lymphangitides = lymphangitis, exceptions.lymphomata = lymphoma, exceptions.lymphopoieses = lymphopoiesis, exceptions.lyses = lysis, exceptions.lyttae = lytta, exceptions.maare = maar, exceptions.macaronies = macaroni, exceptions.maccaronies = maccaroni, exceptions.machzorim = machzor, exceptions.macronuclei = macronucleus, exceptions.macrosporangia = macrosporangium, exceptions.maculae = macula, exceptions.madornos = madrono, exceptions.maestri = maestro, exceptions.mafiosi = mafioso, exceptions.magi = magus, exceptions.magmata = magma, exceptions.magnificoes = magnifico, exceptions.mahzorim = mahzor, exceptions.makuta = likuta, exceptions.mallei = malleus, exceptions.malleoli = malleolus, exceptions.maloti = loti, exceptions.mamillae = mamilla, exceptions.mammae = mamma, exceptions.mammillae = mammilla, exceptions.mandingoes = mandingo, exceptions.mangoes = mango, exceptions.manifestoes = manifesto, exceptions.manteaux = manteau, exceptions.mantes = mantis, exceptions.manubria = manubrium, exceptions.marchese = marchesa, exceptions.marchesi = marchese, exceptions.maremme = maremma, exceptions.markkaa = markka, exceptions.marsupia = marsupium, exceptions.matrices = matrix, exceptions.matzoth = matzo, exceptions.mausolea = mausoleum, exceptions.maxillae = maxilla, exceptions.maxima = maximum, exceptions.media = medium, exceptions.mediae = media, exceptions.mediastina = mediastinum, exceptions.medullae = medulla, exceptions.medusae = medusa, exceptions.megara = megaron, exceptions.megasporangia = megasporangium, exceptions.megilloth = megillah, exceptions.meioses = meiosis, exceptions.melanomata = melanoma, exceptions.melismata = melisma, exceptions.mementoes = memento, exceptions.memoranda = memorandum, exceptions.men = man, exceptions.menisci = meniscus, exceptions.menservants = manservant, exceptions.menstrua = menstruum, exceptions.mesdames = madame, exceptions.mesdemoiselles = mademoiselle, exceptions.mesentera = mesenteron, exceptions.mesothoraces = mesothorax, exceptions.messeigneurs = monseigneur, exceptions.messieurs = monsieur, exceptions.mestizoes = mestizo, exceptions.metacarpi = metacarpus, exceptions.metamorphoses = metamorphosis, exceptions.metanephroi = metanephros, exceptions.metastases = metastasis, exceptions.metatarsi = metatarsus, exceptions.metatheses = metathesis, exceptions.metathoraces = metathorax, exceptions.metazoa = metazoan, exceptions.metempsychoses = metempsychosis, exceptions.metencephala = metencephalon, exceptions.mezuzoth = mezuzah, exceptions.miasmata = miasma, exceptions.mice = mouse, exceptions.microanalyses = microanalysis, exceptions.micrococci = micrococcus, exceptions.micronuclei = micronucleus, exceptions.microsporangia = microsporangium, exceptions.midrashim = midrash, exceptions.midwives = midwife, exceptions.milia = milium, exceptions.milieux = milieu, exceptions.milkfishes = milkfish, exceptions.millennia = millennium, exceptions.minae = mina, exceptions.minima = minimum, exceptions.ministeria = ministerium, exceptions.minutiae = minutia, exceptions.minyanim = minyan, exceptions.mioses = miosis, exceptions.miracidia = miracidium, exceptions.miri = mir, exceptions.mitochondria = mitochondrion, exceptions.mitzvoth = mitzvah, exceptions.modioli = modiolus, exceptions.moduli = modulus, exceptions.momenta = momentum, exceptions.momi = momus, exceptions.monades = monad, exceptions.monkfishes = monkfish, exceptions.monochasia = monochasium, exceptions.monopodia = monopodium, exceptions.monoptera = monopteron, exceptions.monopteroi = monopteros, exceptions.monsignori = monsignor, exceptions.mooncalves = mooncalf, exceptions.moonfishes = moonfish, exceptions.morae = mora, exceptions.moratoria = moratorium, exceptions.morceaux = morceau, exceptions.morescoes = moresco, exceptions.moriscoes = morisco, exceptions.morphallaxes = morphallaxis, exceptions.morphoses = morphosis, exceptions.morulae = morula, exceptions.mosasauri = mosasaurus, exceptions.moshavim = moshav, exceptions.moslim = moslem, exceptions.moslims = moslem, exceptions.mosquitoes = mosquito, exceptions.mottoes = motto, exceptions.mucosae = mucosa, exceptions.mucrones = mucro, exceptions.mudejares = mudejar, exceptions.mudfishes = mudfish, exceptions.mulattoes = mulatto, exceptions.multiparae = multipara, exceptions.murices = murex, exceptions.muskallunge = muskellunge, exceptions.mycelia = mycelium, exceptions.mycetomata = mycetoma, exceptions.mycobacteria = mycobacterium, exceptions.mycorrhizae = mycorrhiza, exceptions.myelencephala = myelencephalon, exceptions.myiases = myiasis, exceptions.myocardia = myocardium, exceptions.myofibrillae = myofibrilla, exceptions.myomata = myoma, exceptions.myoses = myosis, exceptions.myrmidones = myrmidon, exceptions.mythoi = mythos, exceptions.myxomata = myxoma, exceptions.naevi = naevus, exceptions.naiades = naiad, exceptions.naoi = naos, exceptions.narcissi = narcissus, exceptions.nares = naris, exceptions.nasopharynges = nasopharynx, exceptions.natatoria = natatorium, exceptions.naumachiae = naumachia, exceptions.nauplii = nauplius, exceptions.nautili = nautilus, exceptions.navahoes = navaho, exceptions.navajoes = navajo, exceptions.nebulae = nebula, exceptions.necropoleis = necropolis, exceptions.needlefishes = needlefish, exceptions.negrilloes = negrillo, exceptions.negritoes = negrito, exceptions.negroes = negro, exceptions.nemeses = nemesis, exceptions.nephridia = nephridium, exceptions.nereides = nereid, exceptions.neurohypophyses = neurohypophysis, exceptions.neuromata = neuroma, exceptions.neuroptera = neuropteron, exceptions.neuroses = neurosis, exceptions.nevi = nevus, exceptions.nibelungen = nibelung, exceptions.nidi = nidus, exceptions.nielli = niello, exceptions.nilgai = nilgai, exceptions.nimbi = nimbus, exceptions.nimbostrati = nimbostratus, exceptions.noctilucae = noctiluca, exceptions.nodi = nodus, exceptions.noes = no, exceptions.nomina = nomen, exceptions.nota = notum, exceptions.noumena = noumenon, exceptions.novae = nova, exceptions.novelle = novella, exceptions.novenae = novena, exceptions.nubeculae = nubecula, exceptions.nucelli = nucellus, exceptions.nuchae = nucha, exceptions.nuclei = nucleus, exceptions.nucleoli = nucleolus, exceptions.nulliparae = nullipara, exceptions.numbfishes = numbfish, exceptions.numina = numen, exceptions.nymphae = nympha, exceptions.oarfishes = oarfish, exceptions.oases = oasis, exceptions.obeli = obelus, exceptions.obligati = obligato, exceptions.oboli = obolus, exceptions.occipita = occiput, exceptions.oceanaria = oceanarium, exceptions.oceanides = oceanid, exceptions.ocelli = ocellus, exceptions.ochreae = ochrea, exceptions.ocreae = ocrea, exceptions.octahedra = octahedron, exceptions.octopi = octopus, exceptions.oculi = oculus, exceptions.odea = odeum, exceptions.oedemata = oedema, exceptions.oesophagi = oesophagus, exceptions.oldwives = oldwife, exceptions.olea = oleum, exceptions.omasa = omasum, exceptions.omayyades = omayyad, exceptions.omenta = omentum, exceptions.ommatidia = ommatidium, exceptions.ommiades = ommiad, exceptions.onagri = onager, exceptions.oogonia = oogonium, exceptions.oothecae = ootheca, exceptions.opercula = operculum, exceptions.optima = optimum, exceptions.ora = os8, exceptions.organa = organum, exceptions.organums = organa, exceptions.orthoptera = orthopteron, exceptions.osar = os8, exceptions.oscula = osculum, exceptions.ossa = os8, exceptions.osteomata = osteoma, exceptions.ostia = ostium, exceptions.ottomans = ottoman, exceptions.ova = ovum, exceptions.ovoli = ovolo, exceptions.ovotestes = ovotestis, exceptions.oxen = ox, exceptions.oxymora = oxymoron, exceptions.paddlefishes = paddlefish, exceptions.paise = paisa, exceptions.paleae = palea, exceptions.palestrae = palestra, exceptions.palingeneses = palingenesis, exceptions.pallia = pallium, exceptions.palmettoes = palmetto, exceptions.palpi = palpus, exceptions.pancratia = pancratium, exceptions.panettoni = panettone, exceptions.paparazzi = paparazzo, exceptions.paperknives = paperknife, exceptions.papillae = papilla, exceptions.papillomata = papilloma, exceptions.pappi = pappus, exceptions.papulae = papula, exceptions.papyri = papyrus, exceptions.parabases = parabasis, exceptions.paraleipses = paraleipsis, exceptions.paralyses = paralysis, exceptions.paramecia = paramecium, exceptions.paramenta = parament, exceptions.paraphyses = paraphysis, exceptions.parapodia = parapodium, exceptions.parapraxes = parapraxis, exceptions.paraselenae = paraselene, exceptions.parashoth = parashah, exceptions.parasyntheta = parasyntheton, exceptions.parazoa = parazoan, exceptions.parentheses = parenthesis, exceptions.parerga = parergon, exceptions.parhelia = parhelion, exceptions.parietes = paries, exceptions.parrotfishes = parrotfish, exceptions.parulides = parulis, exceptions.pastorali = pastorale, exceptions.patagia = patagium, exceptions.patellae = patella, exceptions.patinae = patina, exceptions.patresfamilias = paterfamilias, exceptions.pease = pea, exceptions.peccadilloes = peccadillo, exceptions.pectines = pecten, exceptions.pedaloes = pedalo, exceptions.pedes = pes, exceptions.pekingese = pekinese, exceptions.pelves = pelvis, exceptions.pence = penny, exceptions.penes = penis, exceptions.penetralia = penetralium, exceptions.penicillia = penicillium, exceptions.penknives = penknife, exceptions.pennae = penna, exceptions.pennia = penni, exceptions.pentahedra = pentahedron, exceptions.pentimenti = pentimento, exceptions.penumbrae = penumbra, exceptions.pepla = peplum, exceptions.pericardia = pericardium, exceptions.perichondria = perichondrium, exceptions.pericrania = pericranium, exceptions.peridia = peridium, exceptions.perigonia = perigonium, exceptions.perihelia = perihelion, exceptions.perinea = perineum, exceptions.perinephria = perinephrium, exceptions.perionychia = perionychium, exceptions.periostea = periosteum, exceptions.periphrases = periphrasis, exceptions.peristalses = peristalsis, exceptions.perithecia = perithecium, exceptions.peritonea = peritoneum, exceptions.personae = persona, exceptions.petechiae = petechia, exceptions.pfennige = pfennig, exceptions.phalanges = phalanx, exceptions.phalli = phallus, exceptions.pharynges = pharynx, exceptions.phenomena = phenomenon, exceptions.philodendra = philodendron, exceptions.phlyctenae = phlyctena, exceptions.phyla = phylum, exceptions.phylae = phyle, exceptions.phyllotaxes = phyllotaxis, exceptions.phylloxerae = phylloxera, exceptions.phylogeneses = phylogenesis, exceptions.pigfishes = pigfish, exceptions.pilea = pileum, exceptions.pilei = pileus, exceptions.pineta = pinetum, exceptions.pinfishes = pinfish, exceptions.pinkoes = pinko, exceptions.pinnae = pinna, exceptions.pinnulae = pinnula, exceptions.pipefishes = pipefish, exceptions.pirogi = pirog, exceptions.piscinae = piscina, exceptions.pithecanthropi = pithecanthropus, exceptions.pithoi = pithos, exceptions.placeboes = placebo, exceptions.placentae = placenta, exceptions.planetaria = planetarium, exceptions.planulae = planula, exceptions.plasmodesmata = plasmodesma, exceptions.plasmodia = plasmodium, exceptions.plateaux = plateau, exceptions.plectra = plectrum, exceptions.plena = plenum, exceptions.pleura = pleuron, exceptions.pleurae = pleura, exceptions.plicae = plica, exceptions.ploughmen = ploughman, exceptions.pneumobacilli = pneumobacillus, exceptions.pneumococci = pneumococcus, exceptions.pocketknives = pocketknife, exceptions.podetia = podetium, exceptions.podia = podium, exceptions.poleis = polis, exceptions.pollices = pollex, exceptions.pollinia = pollinium, exceptions.polychasia = polychasium, exceptions.polyhedra = polyhedron, exceptions.polyparia = polyparium, exceptions.polypi = polypus, exceptions.polyzoa = polyzoan, exceptions.polyzoaria = polyzoarium, exceptions.pontes = pons, exceptions.pontifices = pontifex, exceptions.portamenti = portamento, exceptions.porticoes = portico, exceptions.portmanteaux = portmanteau, exceptions.postliminia = postliminium, exceptions.potatoes = potato, exceptions.praenomina = praenomen, exceptions.praxes = praxis, exceptions.predelle = predella, exceptions.premaxillae = premaxilla, exceptions.prenomina = prenomen, exceptions.prese = presa, exceptions.primi = primo, exceptions.primigravidae = primigravida, exceptions.primiparae = primipara, exceptions.primordia = primordium, exceptions.principia = principium, exceptions.proboscides = proboscis, exceptions.proglottides = proglottis, exceptions.prognoses = prognosis, exceptions.prolegomena = prolegomenon, exceptions.prolepses = prolepsis, exceptions.promycelia = promycelium, exceptions.pronephra = pronephros, exceptions.pronephroi = pronephros, exceptions.pronuclei = pronucleus, exceptions.propositi = propositus, exceptions.proptoses = proptosis, exceptions.propyla = propylon, exceptions.propylaea = propylaeum, exceptions.proscenia = proscenium, exceptions.prosencephala = prosencephalon, exceptions.prostheses = prosthesis, exceptions.prostomia = prostomium, exceptions.protases = protasis, exceptions.prothalamia = prothalamium, exceptions.prothalli = prothallus, exceptions.prothallia = prothallium, exceptions.prothoraces = prothorax, exceptions.protonemata = protonema, exceptions.protozoa = protozoan, exceptions.proventriculi = proventriculus, exceptions.provisoes = proviso, exceptions.prytanea = prytaneum, exceptions.psalteria = psalterium, exceptions.pseudopodia = pseudopodium, exceptions.psychoneuroses = psychoneurosis, exceptions.psychoses = psychosis, exceptions.pterygia = pterygium, exceptions.pterylae = pteryla, exceptions.ptoses = ptosis, exceptions.pubes = pubis, exceptions.pudenda = pudendum, exceptions.puli = pul, exceptions.pulvilli = pulvillus, exceptions.pulvini = pulvinus, exceptions.punchinelloes = punchinello, exceptions.pupae = pupa, exceptions.puparia = puparium, exceptions.putamina = putamen, exceptions.putti = putto, exceptions.pycnidia = pycnidium, exceptions.pygidia = pygidium, exceptions.pylori = pylorus, exceptions.pyxides = pyxis, exceptions.pyxidia = pyxidium, exceptions.qaddishim = qaddish, exceptions.quadrennia = quadrennium, exceptions.quadrigae = quadriga, exceptions.qualia = quale, exceptions.quanta = quantum, exceptions.quarterstaves = quarterstaff, exceptions.quezales = quezal, exceptions.quinquennia = quinquennium, exceptions.quizzes = quiz, exceptions.rabatos = rabato, exceptions.rabbitfishes = rabbitfish, exceptions.rachides = rhachis, exceptions.radices = radix, exceptions.radii = radius, exceptions.radulae = radula, exceptions.ramenta = ramentum, exceptions.rami = ramus, exceptions.ranulae = ranula, exceptions.ranunculi = ranunculus, exceptions.raphae = raphe, exceptions.raphides = raphide, exceptions.ratfishes = ratfish, exceptions.reales = real, exceptions.rearmice = rearmouse, exceptions.recta = rectum, exceptions.recti = rectus, exceptions.rectrices = rectrix, exceptions.redfishes = redfish, exceptions.rediae = redia, exceptions.referenda = referendum, exceptions.refugia = refugium, exceptions.reguli = regulus, exceptions.reis = real, exceptions.relata = relatum, exceptions.remiges = remex, exceptions.reremice = reremouse, exceptions.reseaux = reseau, exceptions.residua = residuum, exceptions.responsa = responsum, exceptions.retia = rete, exceptions.retiarii = retiarius, exceptions.reticula = reticulum, exceptions.retinacula = retinaculum, exceptions.retinae = retina, exceptions.rhabdomyomata = rhabdomyoma, exceptions.rhachides = rhachis, exceptions.rhachises = rachis, exceptions.rhinencephala = rhinencephalon, exceptions.rhizobia = rhizobium, exceptions.rhombi = rhombus, exceptions.rhonchi = rhonchus, exceptions.rhyta = rhyton, exceptions.ribbonfishes = ribbonfish, exceptions.ricercacari = ricercare, exceptions.ricercari = ricercare, exceptions.rickettsiae = rickettsia, exceptions.rilievi = rilievo, exceptions.rimae = rima, exceptions.rockfishes = rockfish, exceptions.roma = rom, exceptions.rondeaux = rondeau, exceptions.rosaria = rosarium, exceptions.rosefishes = rosefish, exceptions.rostella = rostellum, exceptions.rostra = rostrum, exceptions.rouleaux = rouleau, exceptions.rugae = ruga, exceptions.rumina = rumen, exceptions.sacra = sacrum, exceptions.sacraria = sacrarium, exceptions.saguaros = saguaro, exceptions.sailfishes = sailfish, exceptions.salespeople = salesperson, exceptions.salmonellae = salmonella, exceptions.salpae = salpa, exceptions.salpinges = salpinx, exceptions.saltarelli = saltarello, exceptions.salvoes = salvo, exceptions.sancta = sanctum, exceptions.sanitaria = sanitarium, exceptions.santimi = santims, exceptions.saphenae = saphena, exceptions.sarcophagi = sarcophagus, exceptions.sartorii = sartorius, exceptions.sassanidae = sassanid, exceptions.sawfishes = sawfish, exceptions.scaldfishes = scaldfish, exceptions.scaleni = scalenus, exceptions.scapulae = scapula, exceptions.scarabaei = scarabaeus, exceptions.scarves = scarf, exceptions.schatchonim = schatchen, exceptions.schemata = schema, exceptions.scherzandi = scherzando, exceptions.scherzi = scherzo, exceptions.schmoes = schmo, exceptions.scholia = scholium, exceptions.schuln = schul, exceptions.schutzstaffeln = schutzstaffel, exceptions.scirrhi = scirrhus, exceptions.scleromata = scleroma, exceptions.scleroses = sclerosis, exceptions.sclerotia = sclerotium, exceptions.scoleces = scolex, exceptions.scolices = scolex, exceptions.scopulae = scopula, exceptions.scoriae = scoria, exceptions.scotomata = scotoma, exceptions.scriptoria = scriptorium, exceptions.scrota = scrotum, exceptions.scudi = scudo, exceptions.scuta = scutum, exceptions.scutella = scutellum, exceptions.scyphi = scyphus, exceptions.scyphistomae = scyphistoma, exceptions.scyphozoa = scyphozoan, exceptions.secondi = secondo, exceptions.segni = segno, exceptions.seleucidae = seleucid, exceptions.selves = self2, exceptions.senores = senor, exceptions.sensilla = sensillum, exceptions.senti = sent, exceptions.senussis = senussi, exceptions.separatrices = separatrix, exceptions.sephardim = sephardi, exceptions.septa = septum, exceptions.septaria = septarium, exceptions.septennia = septennium, exceptions.sequelae = sequela, exceptions.sequestra = sequestrum; + exceptions.sera = serum, exceptions.seraphim = seraph, exceptions.sestertia = sestertium, exceptions.setae = seta, exceptions.sgraffiti = sgraffito, exceptions.shabbasim = shabbas, exceptions.shabbatim = shabbat, exceptions.shackoes = shacko, exceptions.shadchanim = shadchan, exceptions.shadchans = shadchan, exceptions.shakoes = shako, exceptions.shammosim = shammes, exceptions.sheatfishes = sheatfish, exceptions.sheaves = sheaf, exceptions.shellfishes = shellfish, exceptions.shelves = shelf, exceptions.shinleaves = shinleaf, exceptions.shittim = shittah, exceptions.shmoes = shmo, exceptions.shofroth = shophar, exceptions.shophroth = shophar, exceptions.shrewmice = shrewmouse, exceptions.shuln = shul, exceptions.siddurim = siddur, exceptions.sigloi = siglos, exceptions.signore = signora, exceptions.signori = signore, exceptions.signorine = signorina, exceptions.siliquae = siliqua, exceptions.silvae = silva, exceptions.silverfishes = silverfish, exceptions.simulacra = simulacrum, exceptions.sincipita = sinciput, exceptions.sinfonie = sinfonia, exceptions.sistra = sistrum, exceptions.situlae = situla, exceptions.smalti = smalto, exceptions.snaggleteeth = snaggletooth, exceptions.snailfishes = snailfish, exceptions.snipefishes = snipefish, exceptions.socmen = socman, exceptions.sola = solum, exceptions.solaria = solarium, exceptions.solatia = solatium, exceptions.soldi = soldo, exceptions.soles = sol, exceptions.solfeggi = solfeggio, exceptions.soli = solo, exceptions.solidi = solidus, exceptions.somata = soma, exceptions.soprani = soprano, exceptions.sordini = sordino, exceptions.sori = sorus, exceptions.soroses = sorosis, exceptions.sovkhozy = sovkhoz, exceptions.spadefishes = spadefish, exceptions.spadices = spadix, exceptions.spearfishes = spearfish, exceptions.spectra = spectrum, exceptions.specula = speculum, exceptions.spermatia = spermatium, exceptions.spermatogonia = spermatogonium, exceptions.spermatozoa = spermatozoon, exceptions.spermogonia = spermogonium, exceptions.sphinges = sphinx, exceptions.spicae = spica, exceptions.spicula = spiculum, exceptions.spirilla = spirillum, exceptions.splayfeet = splayfoot, exceptions.splenii = splenius, exceptions.sporangia = sporangium, exceptions.sporogonia = sporogonium, exceptions.sporozoa = sporozoan, exceptions.springhase = springhaas, exceptions.spumoni = spumone, exceptions.sputa = sputum, exceptions.squamae = squama, exceptions.squashes = squash, exceptions.squillae = squilla, exceptions.squirrelfishes = squirrelfish, exceptions.squizzes = squiz, exceptions.stadia = stadium, exceptions.stamina = stamen, exceptions.staminodia = staminodium, exceptions.stapedes = stapes, exceptions.staphylococci = staphylococcus, exceptions.staretsy = starets, exceptions.starfishes = starfish, exceptions.startsy = starets, exceptions.stelae = stele, exceptions.stemmata = stemma, exceptions.stenoses = stenosis, exceptions.stepchildren = stepchild, exceptions.sterna = sternum, exceptions.stigmata = stigma, exceptions.stimuli = stimulus, exceptions.stipites = stipes, exceptions.stirpes = stirps, exceptions.stoae = stoa, exceptions.stockfishes = stockfish, exceptions.stomata = stoma, exceptions.stomodaea = stomodaeum, exceptions.stomodea = stomodeum, exceptions.stonefishes = stonefish, exceptions.stotinki = stotinka, exceptions.stotkini = stotinka, exceptions.strappadoes = strappado, exceptions.strata = stratum, exceptions.strati = stratus, exceptions.stratocumuli = stratocumulus, exceptions.streptococci = streptococcus, exceptions.stretti = stretto, exceptions.striae = stria, exceptions.strobili = strobilus, exceptions.stromata = stroma, exceptions.strumae = struma, exceptions.stuccoes = stucco, exceptions.styli = stylus, exceptions.stylopes = stylops, exceptions.stylopodia = stylopodium, exceptions.subcortices = subcortex, exceptions.subdeliria = subdelirium, exceptions.subgenera = subgenus, exceptions.subindices = subindex, exceptions.submucosae = submucosa, exceptions.subphyla = subphylum, exceptions.substrasta = substratum, exceptions.succedanea = succedaneum, exceptions.succubi = succubus, exceptions.suckerfishes = suckerfish, exceptions.suckfishes = suckfish, exceptions.sudaria = sudarium, exceptions.sudatoria = sudatorium, exceptions.sudatoria = sudatorium, exceptions.sulci = sulcus, exceptions.summae = summa, exceptions.sunfishes = sunfish, exceptions.supercargoes = supercargo, exceptions.superheroes = superhero, exceptions.supernovae = supernova, exceptions.superstrata = superstratum, exceptions.surgeonfishes = surgeonfish, exceptions.swamies = swami, exceptions.sweetiewives = sweetiewife, exceptions.swellfishes = swellfish, exceptions.swordfishes = swordfish, exceptions.syconia = syconium, exceptions.syllabi = syllabus, exceptions.syllepses = syllepsis, exceptions.symphyses = symphysis, exceptions.sympodia = sympodium, exceptions.symposia = symposium, exceptions.synapses = synapsis, exceptions.synarthroses = synarthrosis, exceptions.synclinoria = synclinorium, exceptions.syncytia = syncytium, exceptions.syndesmoses = syndesmosis, exceptions.synopses = synopsis, exceptions.syntagmata = syntagma, exceptions.syntheses = synthesis, exceptions.syphilomata = syphiloma, exceptions.syringes = syrinx, exceptions.syssarcoses = syssarcosis, exceptions.tableaux = tableau, exceptions.taeniae = taenia, exceptions.tali = talus, exceptions.tallaisim = tallith, exceptions.tallithes = tallith, exceptions.tallitoth = tallith, exceptions.tapeta = tapetum, exceptions.tarantulae = tarantula, exceptions.tarsi = tarsus, exceptions.tarsometatarsi = tarsometatarsus, exceptions.taxa = taxon, exceptions.taxes = tax, exceptions.taxies = taxi, exceptions.tectrices = tectrix, exceptions.teeth = tooth, exceptions.tegmina = tegmen, exceptions.telae = tela, exceptions.telamones = telamon, exceptions.telangiectases = telangiectasia, exceptions.telia = telium, exceptions.tempi = tempo, exceptions.tenacula = tenaculum, exceptions.tenderfeet = tenderfoot, exceptions.teniae = tenia, exceptions.tenues = tenuis, exceptions.teraphim = teraph, exceptions.terata = teras, exceptions.teredines = teredo, exceptions.terga = tergum, exceptions.termini = terminus, exceptions.terraria = terrarium, exceptions.terzetti = terzetto, exceptions.tesserae = tessera, exceptions.testae = testa, exceptions.testes = testis, exceptions.testudines = testudo, exceptions.tetrahedra = tetrahedron, exceptions.tetraskelia = tetraskelion, exceptions.thalamencephala = thalamencephalon, exceptions.thalami = thalamus, exceptions.thalli = thallus, exceptions.thecae = theca, exceptions.therses = thyrse, exceptions.thesauri = thesaurus, exceptions.theses = thesis, exceptions.thickleaves = thickleaf, exceptions.thieves = thief, exceptions.tholoi = tholos, exceptions.thoraces = thorax, exceptions.thrombi = thrombus, exceptions.thymi = thymus, exceptions.thyrsi = thyrsus, exceptions.tibiae = tibia, exceptions.tilefishes = tilefish, exceptions.tintinnabula = tintinnabulum, exceptions.titmice = titmouse, exceptions.toadfishes = toadfish, exceptions.tobaccoes = tobacco, exceptions.tomatoes = tomato, exceptions.tomenta = tomentum, exceptions.tondi = tondo, exceptions.tonneaux = tonneau, exceptions.tophi = tophus, exceptions.topoi = topos, exceptions.tori = torus, exceptions.tornadoes = tornado, exceptions.torpedoes = torpedo, exceptions.torsi = torso, exceptions.touracos = touraco, exceptions.trabeculae = trabecula, exceptions.tracheae = trachea, exceptions.traditores = traditor, exceptions.tragi = tragus, exceptions.trapezia = trapezium, exceptions.trapezohedra = trapezohedron, exceptions.traumata = trauma, exceptions.treponemata = treponema, exceptions.trichinae = trichina, exceptions.triclinia = triclinium, exceptions.triennia = triennium, exceptions.triforia = triforium, exceptions.triggerfishes = triggerfish, exceptions.trihedra = trihedron, exceptions.triskelia = triskelion, exceptions.trisoctahedra = trisoctahedron, exceptions.triumviri = triumvir, exceptions.trivia = trivium, exceptions.trochleae = trochlea, exceptions.tropaeola = tropaeolum, exceptions.trousseaux = trousseau, exceptions.trunkfishes = trunkfish, exceptions.trymata = tryma, exceptions.tubae = tuba, exceptions.turves = turf, exceptions.tympana = tympanum, exceptions.tyros = tyro, exceptions.ubermenschen = ubermensch, exceptions.uglies = ugli, exceptions.uigurs = uighur, exceptions.ulnae = ulna, exceptions.ultimata = ultimatum, exceptions.umbilici = umbilicus, exceptions.umbones = umbo, exceptions.umbrae = umbra, exceptions.unci = uncus, exceptions.uncidia = uredium, exceptions.uredines = uredo, exceptions.uredinia = uredinium, exceptions.uredosori = uredosorus, exceptions.urethrae = urethra, exceptions.urinalyses = urinalysis, exceptions.uteri = uterus, exceptions.utriculi = utriculus, exceptions.uvulae = uvula, exceptions.vacua = vacuum, exceptions.vagi = vagus, exceptions.vaginae = vagina, exceptions.valleculae = vallecula, exceptions.vaporetti = vaporetto, exceptions.varices = varix, exceptions.vasa = vas, exceptions.vascula = vasculum, exceptions.vela = velum, exceptions.velamina = velamen, exceptions.velaria = velarium, exceptions.venae = vena, exceptions.ventriculi = ventriculus, exceptions.vermes = vermis, exceptions.verrucae = verruca, exceptions.vertebrae = vertebra, exceptions.vertices = vertex, exceptions.vertigines = vertigo, exceptions.vertigoes = vertigo, exceptions.vesicae = vesica, exceptions.vetoes = veto, exceptions.vexilla = vexillum, exceptions.viatica = viaticum, exceptions.viatores = viator, exceptions.vibracula = vibraculum, exceptions.vibrissae = vibrissa, exceptions.villi = villus, exceptions.vimina = vimen, exceptions.vincula = vinculum, exceptions.viragoes = virago, exceptions.vires = vis, exceptions.virtuosi = virtuoso, exceptions.vitae = vita, exceptions.vitelli = vitellus, exceptions.vittae = vitta, exceptions.vivaria = vivarium, exceptions.voces = vox, exceptions.volcanoes = volcano, exceptions.volkslieder = volkslied, exceptions.volte = volta, exceptions.volvae = volva, exceptions.vorticellae = vorticella, exceptions.vortices = vortex, exceptions.vulvae = vulva, exceptions.wahhabis = wahhabi, exceptions.wanderjahre = wanderjahr, exceptions.weakfishes = weakfish, exceptions.werewolves = werewolf, exceptions.wharves = wharf, exceptions.whitefishes = whitefish, exceptions.wives = wife, exceptions.wolffishes = wolffish, exceptions.wolves = wolf, exceptions.women = woman, exceptions.woodlice = woodlouse, exceptions.wreckfishes = wreckfish, exceptions.wunderkinder = wunderkind, exceptions.xiphisterna = xiphisternum, exceptions.yeshivahs = yeshiva, exceptions.yeshivoth = yeshiva, exceptions.yogin = yogi, exceptions.yourselves = yourself, exceptions.zamindaris = zamindari, exceptions.zecchini = zecchino, exceptions.zeroes = zero, exceptions.zoa = zoon, exceptions.zoaeae = zoaea, exceptions.zoeae = zoea, exceptions.zoeas = zoaea, exceptions.zoonoses = zoonosis, module2.exports = exceptions; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/wn-verb-exceptions.js +var require_wn_verb_exceptions = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/wn-verb-exceptions.js"(exports2, module2) { + var exceptions = /* @__PURE__ */ Object.create(null); + var abet = "abet"; + var abhor = "abhor"; + var abide = "abide"; + var aby = "aby"; + var abut = "abut"; + var accompany = "accompany"; + var acetify = "acetify"; + var acidify = "acidify"; + var acquit = "acquit"; + var address = "address"; + var admit = "admit"; + var aerify = "aerify"; + var airdrop = "airdrop"; + var alkalify = "alkalify"; + var ally = "ally"; + var allot = "allot"; + var be = "be"; + var ammonify = "ammonify"; + var amnesty = "amnesty"; + var amplify = "amplify"; + var anglify = "anglify"; + var annul = "annul"; + var appal = "appal"; + var apply = "apply"; + var arc = "arc"; + var argufy = "argufy"; + var arise = "arise"; + var eat = "eat"; + var atrophy = "atrophy"; + var aver = "aver"; + var awake = "awake"; + var baby = "baby"; + var backbite = "backbite"; + var backslide = "backslide"; + var bid = "bid"; + var bag = "bag"; + var ballyrag = "ballyrag"; + var bandy = "bandy"; + var ban = "ban"; + var bar = "bar"; + var barrel = "barrel"; + var basify = "basify"; + var bat = "bat"; + var bayonet = "bayonet"; + var beat = "beat"; + var beatify = "beatify"; + var beautify = "beautify"; + var become = "become"; + var bed = "bed"; + var bedevil = "bedevil"; + var bedim = "bedim"; + var befall = "befall"; + var befit = "befit"; + var befog = "befog"; + var begin = "begin"; + var beget = "beget"; + var beg = "beg"; + var begird = "begird"; + var behold = "behold"; + var bejewel = "bejewel"; + var belly = "belly"; + var belie = "belie"; + var benefit = "benefit"; + var bename = "bename"; + var bend = "bend"; + var berry = "berry"; + var beset = "beset"; + var beseech = "beseech"; + var bespeak = "bespeak"; + var bestir = "bestir"; + var bestrew = "bestrew"; + var bestride = "bestride"; + var betake = "betake"; + var bethink = "bethink"; + var bet = "bet"; + var bevel = "bevel"; + var bias = "bias"; + var bing = "bing"; + var bin = "bin"; + var bite = "bite"; + var bit = "bit"; + var bivouac = "bivouac"; + var blab = "blab"; + var blackberry = "blackberry"; + var blackleg = "blackleg"; + var blat = "blat"; + var bleed = "bleed"; + var bless = "bless"; + var blow = "blow"; + var blip = "blip"; + var blob = "blob"; + var bloody = "bloody"; + var blot = "blot"; + var blub = "blub"; + var blur = "blur"; + var bob = "bob"; + var body2 = "body"; + var bootleg = "bootleg"; + var bop = "bop"; + var bear = "bear"; + var buy = "buy"; + var bind2 = "bind"; + var brag = "brag"; + var breed = "breed"; + var brevet = "brevet"; + var brim = "brim"; + var break1 = "break"; + var bring = "bring"; + var browbeat = "browbeat"; + var brutify = "brutify"; + var bud = "bud"; + var bug = "bug"; + var build = "build"; + var bulldog = "bulldog"; + var bully = "bully"; + var bullshit = "bullshit"; + var bullwhip = "bullwhip"; + var bullyrag = "bullyrag"; + var bum = "bum"; + var bury = "bury"; + var burn = "burn"; + var bur = "bur"; + var bushel = "bushel"; + var busy = "busy"; + var bypass = "bypass"; + var cabal = "cabal"; + var caddy = "caddy"; + var calcify = "calcify"; + var come = "come"; + var canal = "canal"; + var cancel = "cancel"; + var candy = "candy"; + var can = "can"; + var canopy = "canopy"; + var cap = "cap"; + var carburet = "carburet"; + var carillon = "carillon"; + var carny = "carny"; + var carnify = "carnify"; + var carol = "carol"; + var carry = "carry"; + var casefy = "casefy"; + var catnap = "catnap"; + var cat = "cat"; + var catch1 = "catch"; + var cavil = "cavil"; + var certify = "certify"; + var channel = "channel"; + var chap = "chap"; + var char = "char"; + var chat = "chat"; + var chivy = "chivy"; + var chide = "chide"; + var chin = "chin"; + var chip = "chip"; + var chisel = "chisel"; + var chitchat = "chitchat"; + var chiv = "chiv"; + var chondrify = "chondrify"; + var chop = "chop"; + var choose = "choose"; + var chug = "chug"; + var chum = "chum"; + var citify = "citify"; + var clothe = "clothe"; + var clad = "clad"; + var clam = "clam"; + var clap = "clap"; + var clarify = "clarify"; + var classify = "classify"; + var cleave = "cleave"; + var clem = "clem"; + var clepe = "clepe"; + var clip = "clip"; + var clog = "clog"; + var clop = "clop"; + var clot = "clot"; + var club = "club"; + var cling = "cling"; + var cockneyfy = "cockneyfy"; + var cod = "cod"; + var codify = "codify"; + var cog = "cog"; + var coif = "coif"; + var colly = "colly"; + var combat = "combat"; + var commit = "commit"; + var compel = "compel"; + var comply = "comply"; + var complot = "complot"; + var concur = "concur"; + var confab = "confab"; + var confer = "confer"; + var con = "con"; + var control = "control"; + var copy = "copy"; + var cop = "cop"; + var coquet = "coquet"; + var corral = "corral"; + var counsel = "counsel"; + var counterplot = "counterplot"; + var countersink = "countersink"; + var crab = "crab"; + var cram = "cram"; + var crap = "crap"; + var creep = "creep"; + var crib = "crib"; + var cry = "cry"; + var crop = "crop"; + var crossbreed = "crossbreed"; + var crosscut = "crosscut"; + var crucify = "crucify"; + var cub = "cub"; + var cudgel = "cudgel"; + var cupel = "cupel"; + var cup = "cup"; + var curet = "curet"; + var curry = "curry"; + var curse = "curse"; + var curtsy = "curtsy"; + var curvet = "curvet"; + var cut = "cut"; + var dab = "dab"; + var dag = "dag"; + var dally = "dally"; + var dam = "dam"; + var damnify = "damnify"; + var dandify = "dandify"; + var dap = "dap"; + var deal = "deal"; + var debar = "debar"; + var debug = "debug"; + var debus = "debus"; + var decalcify = "decalcify"; + var declassify = "declassify"; + var decontrol = "decontrol"; + var decry = "decry"; + var defer2 = "defer"; + var defy = "defy"; + var degas = "degas"; + var dehumidify = "dehumidify"; + var deify = "deify"; + var demit = "demit"; + var demob = "demob"; + var demulsify = "demulsify"; + var demur = "demur"; + var demystify = "demystify"; + var denazify = "denazify"; + var deny = "deny"; + var denitrify = "denitrify"; + var den = "den"; + var descry = "descry"; + var deter = "deter"; + var detoxify = "detoxify"; + var devil = "devil"; + var devitrify = "devitrify"; + var diagram = "diagram"; + var dial = "dial"; + var dib = "dib"; + var do1 = "do"; + var dig = "dig"; + var dignify = "dignify"; + var dim = "dim"; + var din = "din"; + var dip = "dip"; + var dirty = "dirty"; + var disannul = "disannul"; + var disbar = "disbar"; + var disbud = "disbud"; + var disembody = "disembody"; + var disembowel = "disembowel"; + var disenthral = "disenthral"; + var disenthrall = "disenthrall"; + var dishevel = "dishevel"; + var disinter = "disinter"; + var dispel = "dispel"; + var disqualify = "disqualify"; + var dissatisfy = "dissatisfy"; + var distil = "distil"; + var diversify = "diversify"; + var divvy = "divvy"; + var dizzy = "dizzy"; + var dog = "dog"; + var dogleg = "dogleg"; + var dolly = "dolly"; + var don = "don"; + var dot = "dot"; + var dow = "dow"; + var dive = "dive"; + var drab = "drab"; + var drag = "drag"; + var drink = "drink"; + var draw = "draw"; + var dream = "dream"; + var dry = "dry"; + var drip = "drip"; + var drivel = "drivel"; + var drive = "drive"; + var drop = "drop"; + var drub = "drub"; + var drug = "drug"; + var drum = "drum"; + var dub = "dub"; + var duel = "duel"; + var dulcify = "dulcify"; + var dummy = "dummy"; + var dun = "dun"; + var dwell = "dwell"; + var die = "die"; + var easy = "easy"; + var eavesdrop = "eavesdrop"; + var eddy = "eddy"; + var edify = "edify"; + var electrify = "electrify"; + var embed = "embed"; + var embody = "embody"; + var embus = "embus"; + var emit = "emit"; + var empanel = "empanel"; + var empty = "empty"; + var emulsify = "emulsify"; + var enamel = "enamel"; + var englut = "englut"; + var enrol = "enrol"; + var enthral = "enthral"; + var entrammel = "entrammel"; + var entrap = "entrap"; + var envy = "envy"; + var enwind = "enwind"; + var enwrap = "enwrap"; + var equal = "equal"; + var equip = "equip"; + var espy = "espy"; + var esterify = "esterify"; + var estop = "estop"; + var etherify = "etherify"; + var excel = "excel"; + var exemplify = "exemplify"; + var expel = "expel"; + var extol = "extol"; + var facet = "facet"; + var fag = "fag"; + var fall = "fall"; + var falsify = "falsify"; + var fancy = "fancy"; + var fan = "fan"; + var fantasy = "fantasy"; + var fat = "fat"; + var featherbed = "featherbed"; + var feed = "feed"; + var feel = "feel"; + var ferry = "ferry"; + var fib = "fib"; + var fig = "fig"; + var fin = "fin"; + var fit = "fit"; + var flag = "flag"; + var flam = "flam"; + var flannel = "flannel"; + var flap = "flap"; + var flat = "flat"; + var flee = "flee"; + var fly = "fly"; + var flimflam = "flimflam"; + var flip = "flip"; + var flit = "flit"; + var flog = "flog"; + var floodlight = "floodlight"; + var flop = "flop"; + var flub = "flub"; + var fling = "fling"; + var flurry = "flurry"; + var flyblow = "flyblow"; + var fob = "fob"; + var fog = "fog"; + var footslog = "footslog"; + var forbid = "forbid"; + var forbear = "forbear"; + var fordo = "fordo"; + var foredo = "foredo"; + var forego = "forego"; + var foreknow = "foreknow"; + var forerun = "forerun"; + var foresee = "foresee"; + var foreshow = "foreshow"; + var forespeak = "forespeak"; + var foretell = "foretell"; + var forgive = "forgive"; + var forget = "forget"; + var forgo = "forgo"; + var format = "format"; + var forsake = "forsake"; + var forspeak = "forspeak"; + var forswear = "forswear"; + var fortify = "fortify"; + var fight = "fight"; + var find = "find"; + var foxtrot = "foxtrot"; + var frap = "frap"; + var frenchify = "frenchify"; + var frenzy = "frenzy"; + var fret = "fret"; + var fry = "fry"; + var frig = "frig"; + var frit = "frit"; + var frivol = "frivol"; + var frog = "frog"; + var frolic = "frolic"; + var freeze = "freeze"; + var fructify = "fructify"; + var fuel = "fuel"; + var fulfil = "fulfil"; + var fun = "fun"; + var funnel = "funnel"; + var fur = "fur"; + var gad = "gad"; + var gag = "gag"; + var gainsay = "gainsay"; + var gambol = "gambol"; + var gam = "gam"; + var gin = "gin"; + var gan = "gan"; + var gap = "gap"; + var gasify = "gasify"; + var gas = "gas"; + var give = "give"; + var gel = "gel"; + var geld = "geld"; + var gem = "gem"; + var get = "get"; + var ghostwrite = "ghostwrite"; + var gib = "gib"; + var giddy = "giddy"; + var giftwrap = "giftwrap"; + var gig = "gig"; + var gild = "gild"; + var gip = "gip"; + var gird = "gird"; + var glom = "glom"; + var glory = "glory"; + var glorify = "glorify"; + var glut = "glut"; + var gnaw = "gnaw"; + var golly = "golly"; + var go = "go"; + var grab = "grab"; + var gratify = "gratify"; + var gravel = "gravel"; + var grave = "grave"; + var grow = "grow"; + var grin = "grin"; + var grip = "grip"; + var grit = "grit"; + var grind = "grind"; + var grovel = "grovel"; + var grub = "grub"; + var guaranty = "guaranty"; + var gully = "gully"; + var gum = "gum"; + var gun = "gun"; + var gyp = "gyp"; + var hacksaw = "hacksaw"; + var have = "have"; + var ham = "ham"; + var hamstring = "hamstring"; + var handfeed = "handfeed"; + var handicap = "handicap"; + var handsel = "handsel"; + var harry = "harry"; + var hatchel = "hatchel"; + var hat = "hat"; + var hear = "hear"; + var hedgehop = "hedgehop"; + var hold = "hold"; + var hem = "hem"; + var hew = "hew"; + var hiccup = "hiccup"; + var hide = "hide"; + var hinny = "hinny"; + var hit = "hit"; + var hob = "hob"; + var hobnob = "hobnob"; + var hocus = "hocus"; + var hog = "hog"; + var hogtie = "hogtie"; + var honey = "honey"; + var hop = "hop"; + var horrify = "horrify"; + var horsewhip = "horsewhip"; + var housel = "housel"; + var heave = "heave"; + var hovel = "hovel"; + var hug = "hug"; + var humbug = "humbug"; + var humidify = "humidify"; + var hum = "hum"; + var hang = "hang"; + var hurry = "hurry"; + var hypertrophy = "hypertrophy"; + var identify = "identify"; + var imbed = "imbed"; + var impanel = "impanel"; + var impel = "impel"; + var imply = "imply"; + var inbreed = "inbreed"; + var incur = "incur"; + var indemnify = "indemnify"; + var indwell = "indwell"; + var infer = "infer"; + var initial = "initial"; + var inlay = "inlay"; + var inset = "inset"; + var inspan = "inspan"; + var install = "install"; + var intensify = "intensify"; + var interbreed = "interbreed"; + var intercrop = "intercrop"; + var intercut = "intercut"; + var interlay = "interlay"; + var interlap = "interlap"; + var intermarry = "intermarry"; + var intermit = "intermit"; + var interplead = "interplead"; + var inter = "inter"; + var interstratify = "interstratify"; + var interweave = "interweave"; + var intromit = "intromit"; + var inweave = "inweave"; + var inwrap = "inwrap"; + var jab = "jab"; + var jag = "jag"; + var jam = "jam"; + var japan = "japan"; + var jar = "jar"; + var jelly = "jelly"; + var jellify = "jellify"; + var jemmy = "jemmy"; + var jet = "jet"; + var jewel = "jewel"; + var jib = "jib"; + var jig = "jig"; + var jimmy = "jimmy"; + var jitterbug = "jitterbug"; + var job = "job"; + var jog = "jog"; + var jolly = "jolly"; + var jollify = "jollify"; + var jot = "jot"; + var joypop = "joypop"; + var jug = "jug"; + var justify = "justify"; + var jut = "jut"; + var ken = "ken"; + var kennel = "kennel"; + var keep = "keep"; + var kernel = "kernel"; + var kid = "kid"; + var kidnap = "kidnap"; + var kip = "kip"; + var knap = "knap"; + var kneecap = "kneecap"; + var kneel = "kneel"; + var know = "know"; + var knit = "knit"; + var knob = "knob"; + var knot = "knot"; + var label = "label"; + var lade = "lade"; + var ladify = "ladify"; + var lag = "lag"; + var lay = "lay"; + var lie = "lie"; + var lallygag = "lallygag"; + var lam = "lam"; + var lapidify = "lapidify"; + var lap = "lap"; + var laurel = "laurel"; + var lean = "lean"; + var leapfrog = "leapfrog"; + var leap = "leap"; + var learn = "learn"; + var lead = "lead"; + var leave = "leave"; + var lend = "lend"; + var let1 = "let"; + var level = "level"; + var levy = "levy"; + var libel = "libel"; + var lignify = "lignify"; + var lip = "lip"; + var liquefy = "liquefy"; + var liquify = "liquify"; + var light = "light"; + var lob = "lob"; + var lobby = "lobby"; + var log2 = "log"; + var lop = "lop"; + var lose = "lose"; + var lot = "lot"; + var lug = "lug"; + var lullaby = "lullaby"; + var mad = "mad"; + var make = "make"; + var magnify = "magnify"; + var man = "man"; + var manumit = "manumit"; + var map = "map"; + var marcel = "marcel"; + var mar = "mar"; + var marry = "marry"; + var marshal = "marshal"; + var marvel = "marvel"; + var mat = "mat"; + var mean = "mean"; + var medal = "medal"; + var meet = "meet"; + var metal = "metal"; + var metrify = "metrify"; + var may = "may"; + var mimic = "mimic"; + var minify = "minify"; + var misapply = "misapply"; + var misbecome = "misbecome"; + var miscarry = "miscarry"; + var misdeal = "misdeal"; + var misfit = "misfit"; + var misgive = "misgive"; + var mishit = "mishit"; + var mislay = "mislay"; + var mislead = "mislead"; + var misplead = "misplead"; + var misspell = "misspell"; + var misspend = "misspend"; + var mistake = "mistake"; + var misunderstand = "misunderstand"; + var mob = "mob"; + var model = "model"; + var modify = "modify"; + var mollify = "mollify"; + var melt = "melt"; + var mop = "mop"; + var mortify = "mortify"; + var mow = "mow"; + var mud = "mud"; + var muddy = "muddy"; + var mug = "mug"; + var multiply = "multiply"; + var mum = "mum"; + var mummify = "mummify"; + var mutiny = "mutiny"; + var mystify = "mystify"; + var nab = "nab"; + var nag = "nag"; + var nap = "nap"; + var net = "net"; + var nib = "nib"; + var nickel = "nickel"; + var nidify = "nidify"; + var nigrify = "nigrify"; + var nip = "nip"; + var nitrify = "nitrify"; + var nod = "nod"; + var nonplus = "nonplus"; + var notify = "notify"; + var nullify = "nullify"; + var nut = "nut"; + var objectify = "objectify"; + var occupy = "occupy"; + var occur = "occur"; + var offset = "offset"; + var omit2 = "omit"; + var ossify = "ossify"; + var outbid = "outbid"; + var outbreed = "outbreed"; + var outcry = "outcry"; + var outcrop = "outcrop"; + var outdo = "outdo"; + var outdraw = "outdraw"; + var outfit = "outfit"; + var outfight = "outfight"; + var outgas = "outgas"; + var outgeneral = "outgeneral"; + var outgo = "outgo"; + var outgrow = "outgrow"; + var outlay = "outlay"; + var outman = "outman"; + var output = "output"; + var outrun = "outrun"; + var outride = "outride"; + var outshine = "outshine"; + var outshoot = "outshoot"; + var outsell = "outsell"; + var outspan = "outspan"; + var outstand = "outstand"; + var outstrip = "outstrip"; + var outthink = "outthink"; + var outwit = "outwit"; + var outwear = "outwear"; + var overbid = "overbid"; + var overblow = "overblow"; + var overbear = "overbear"; + var overbuild = "overbuild"; + var overcome = "overcome"; + var overcrop = "overcrop"; + var overdo = "overdo"; + var overdraw = "overdraw"; + var overdrive = "overdrive"; + var overfly = "overfly"; + var overflow = "overflow"; + var overgrow = "overgrow"; + var overhear = "overhear"; + var overhang = "overhang"; + var overlay = "overlay"; + var overlie = "overlie"; + var overlap = "overlap"; + var overman = "overman"; + var overpay = "overpay"; + var overpass = "overpass"; + var overrun = "overrun"; + var override = "override"; + var oversee = "oversee"; + var overset = "overset"; + var oversew = "oversew"; + var overshoot = "overshoot"; + var oversimplify = "oversimplify"; + var oversleep = "oversleep"; + var oversell = "oversell"; + var overspend = "overspend"; + var overspill = "overspill"; + var overstep = "overstep"; + var overtake = "overtake"; + var overthrow = "overthrow"; + var overtop = "overtop"; + var overwind = "overwind"; + var overwrite = "overwrite"; + var pacify = "pacify"; + var pad = "pad"; + var pay = "pay"; + var pal = "pal"; + var palsy = "palsy"; + var pandy = "pandy"; + var panel = "panel"; + var panic = "panic"; + var pan = "pan"; + var parallel = "parallel"; + var parcel = "parcel"; + var parody = "parody"; + var parry = "parry"; + var partake = "partake"; + var pasquinade = "pasquinade"; + var patrol = "patrol"; + var pat = "pat"; + var pedal = "pedal"; + var peg = "peg"; + var pencil = "pencil"; + var pen = "pen"; + var pep = "pep"; + var permit = "permit"; + var personify = "personify"; + var petrify = "petrify"; + var pet = "pet"; + var pettifog = "pettifog"; + var phantasy = "phantasy"; + var photocopy = "photocopy"; + var photomap = "photomap"; + var photoset = "photoset"; + var physic = "physic"; + var picnic = "picnic"; + var pig = "pig"; + var pillory = "pillory"; + var pin = "pin"; + var pip = "pip"; + var pistol = "pistol"; + var pitapat = "pitapat"; + var pity = "pity"; + var pit = "pit"; + var plan = "plan"; + var plat = "plat"; + var plead = "plead"; + var ply = "ply"; + var plod = "plod"; + var plop = "plop"; + var plot = "plot"; + var plug = "plug"; + var pod = "pod"; + var pommel = "pommel"; + var popes = "popes"; + var pop = "pop"; + var pot = "pot"; + var preachify = "preachify"; + var precancel = "precancel"; + var prefer = "prefer"; + var preoccupy = "preoccupy"; + var prepay = "prepay"; + var presignify = "presignify"; + var pretermit = "pretermit"; + var pretty = "pretty"; + var prettify = "prettify"; + var pry = "pry"; + var prig = "prig"; + var prim = "prim"; + var prod = "prod"; + var program2 = "program"; + var prologue = "prologue"; + var propel = "propel"; + var prophesy = "prophesy"; + var prop = "prop"; + var prove = "prove"; + var pub = "pub"; + var pug = "pug"; + var pummel = "pummel"; + var pun = "pun"; + var pup = "pup"; + var purify = "purify"; + var putrefy = "putrefy"; + var putty = "putty"; + var put = "put"; + var qualify = "qualify"; + var quantify = "quantify"; + var quarrel = "quarrel"; + var quarry = "quarry"; + var quartersaw = "quartersaw"; + var query = "query"; + var quickstep = "quickstep"; + var quip = "quip"; + var quit = "quit"; + var quiz = "quiz"; + var rag = "rag"; + var rally = "rally"; + var ramify = "ramify"; + var ram = "ram"; + var run2 = "run"; + var ring = "ring"; + var rap = "rap"; + var rappel = "rappel"; + var rarefy = "rarefy"; + var ratify = "ratify"; + var rat = "rat"; + var ravel = "ravel"; + var rebel = "rebel"; + var rebuild = "rebuild"; + var rebut = "rebut"; + var recap = "recap"; + var reclassify = "reclassify"; + var recommit = "recommit"; + var recopy = "recopy"; + var rectify = "rectify"; + var recur = "recur"; + var red = "red"; + var redo = "redo"; + var refer = "refer"; + var refit = "refit"; + var reave = "reave"; + var refuel = "refuel"; + var regret = "regret"; + var rehear = "rehear"; + var reify = "reify"; + var rely = "rely"; + var remake = "remake"; + var remarry = "remarry"; + var remit = "remit"; + var rend = "rend"; + var repay = "repay"; + var repel = "repel"; + var replevy = "replevy"; + var reply = "reply"; + var repot = "repot"; + var rerun = "rerun"; + var resit = "resit"; + var reset = "reset"; + var resew = "resew"; + var retake = "retake"; + var rethink = "rethink"; + var retell = "retell"; + var retransmit = "retransmit"; + var retry = "retry"; + var retrofit = "retrofit"; + var ret2 = "ret"; + var reunify = "reunify"; + var revel = "revel"; + var revet = "revet"; + var revivify = "revivify"; + var rev = "rev"; + var rewind = "rewind"; + var rewrite = "rewrite"; + var rib = "rib"; + var ricochet = "ricochet"; + var rid = "rid"; + var ride = "ride"; + var rig = "rig"; + var rigidify = "rigidify"; + var rim = "rim"; + var rip = "rip"; + var rise = "rise"; + var rival = "rival"; + var rive = "rive"; + var rob = "rob"; + var rot = "rot"; + var reeve = "reeve"; + var rowel = "rowel"; + var rub = "rub"; + var rut = "rut"; + var saccharify = "saccharify"; + var sag = "sag"; + var say = "say"; + var salary = "salary"; + var salify = "salify"; + var sally = "sally"; + var sanctify = "sanctify"; + var sandbag = "sandbag"; + var sing = "sing"; + var sink = "sink"; + var saponify = "saponify"; + var sap = "sap"; + var sit = "sit"; + var satisfy = "satisfy"; + var savvy = "savvy"; + var see = "see"; + var saw = "saw"; + var scag = "scag"; + var scan = "scan"; + var scarify = "scarify"; + var scar = "scar"; + var scat = "scat"; + var scorify = "scorify"; + var scrag = "scrag"; + var scram = "scram"; + var scrap = "scrap"; + var scry = "scry"; + var scrub = "scrub"; + var scrum = "scrum"; + var scud = "scud"; + var scum = "scum"; + var scurry = "scurry"; + var seed = "seed"; + var send = "send"; + var set = "set"; + var sew = "sew"; + var shag = "shag"; + var shake = "shake"; + var sham = "sham"; + var sharecrop = "sharecrop"; + var shit = "shit"; + var shave = "shave"; + var shed = "shed"; + var shellac = "shellac"; + var shend = "shend"; + var shew = "shew"; + var shy = "shy"; + var shikar = "shikar"; + var shillyshally = "shillyshally"; + var shim = "shim"; + var shimmy = "shimmy"; + var shin = "shin"; + var ship = "ship"; + var shoe = "shoe"; + var shine = "shine"; + var shop = "shop"; + var shoot = "shoot"; + var shotgun = "shotgun"; + var shot = "shot"; + var shovel = "shovel"; + var show = "show"; + var shrink = "shrink"; + var shred = "shred"; + var shrivel = "shrivel"; + var shrive = "shrive"; + var shrug = "shrug"; + var shun = "shun"; + var shut = "shut"; + var sic = "sic"; + var sideslip = "sideslip"; + var sidestep = "sidestep"; + var sightsee = "sightsee"; + var signal = "signal"; + var signify = "signify"; + var silicify = "silicify"; + var simplify = "simplify"; + var sin = "sin"; + var sip = "sip"; + var shear = "shear"; + var skelly = "skelly"; + var sken = "sken"; + var sket = "sket"; + var skid = "skid"; + var skim = "skim"; + var skin = "skin"; + var skip = "skip"; + var skivvy = "skivvy"; + var skydive = "skydive"; + var slab = "slab"; + var slag = "slag"; + var slay = "slay"; + var slam = "slam"; + var slap = "slap"; + var slat = "slat"; + var sled = "sled"; + var sleep = "sleep"; + var slide = "slide"; + var slip = "slip"; + var slit = "slit"; + var slog = "slog"; + var slop = "slop"; + var slot = "slot"; + var slug = "slug"; + var slum = "slum"; + var sling = "sling"; + var slink = "slink"; + var slur = "slur"; + var smell = "smell"; + var smite = "smite"; + var smut = "smut"; + var snag = "snag"; + var snap = "snap"; + var sned = "sned"; + var snip = "snip"; + var snivel = "snivel"; + var snog = "snog"; + var snub = "snub"; + var sneak = "sneak"; + var snug = "snug"; + var sob = "sob"; + var sod = "sod"; + var sell = "sell"; + var solemnify = "solemnify"; + var solidify = "solidify"; + var soothsay = "soothsay"; + var sop = "sop"; + var seek = "seek"; + var sow = "sow"; + var spag = "spag"; + var spancel = "spancel"; + var span = "span"; + var spar = "spar"; + var spit = "spit"; + var spat = "spat"; + var specify = "specify"; + var speed = "speed"; + var speechify = "speechify"; + var spellbind = "spellbind"; + var spell = "spell"; + var spend = "spend"; + var spy = "spy"; + var spill = "spill"; + var spin = "spin"; + var spiral = "spiral"; + var split = "split"; + var spoil = "spoil"; + var speak = "speak"; + var spotlight = "spotlight"; + var spot = "spot"; + var spring = "spring"; + var sprig = "sprig"; + var spud = "spud"; + var spur = "spur"; + var squat = "squat"; + var squib = "squib"; + var squid = "squid"; + var squeegee = "squeegee"; + var stab = "stab"; + var stink = "stink"; + var star3 = "star"; + var steady = "steady"; + var stellify = "stellify"; + var stem = "stem"; + var stencil = "stencil"; + var step = "step"; + var stet = "stet"; + var sty = "sty"; + var stiletto = "stiletto"; + var stir = "stir"; + var steal = "steal"; + var stand = "stand"; + var stop2 = "stop"; + var story = "story"; + var stot = "stot"; + var stave = "stave"; + var strap = "strap"; + var stratify = "stratify"; + var strew = "strew"; + var stride = "stride"; + var strip = "strip"; + var strive = "strive"; + var strop = "strop"; + var strow = "strow"; + var strike = "strike"; + var strum = "strum"; + var string = "string"; + var strut = "strut"; + var stub = "stub"; + var stick = "stick"; + var stud = "stud"; + var study = "study"; + var stultify = "stultify"; + var stum = "stum"; + var sting = "sting"; + var stun = "stun"; + var stupefy = "stupefy"; + var stymie = "stymie"; + var sub = "sub"; + var subjectify = "subjectify"; + var sublet = "sublet"; + var submit = "submit"; + var subtotal = "subtotal"; + var sully = "sully"; + var sulphuret = "sulphuret"; + var sum = "sum"; + var sun = "sun"; + var sup = "sup"; + var supply = "supply"; + var swab = "swab"; + var swag = "swag"; + var swim = "swim"; + var swap = "swap"; + var swat = "swat"; + var sweep = "sweep"; + var swig = "swig"; + var swivel = "swivel"; + var swell = "swell"; + var swear = "swear"; + var swot = "swot"; + var swing = "swing"; + var syllabify = "syllabify"; + var symbol = "symbol"; + var tab = "tab"; + var tag = "tag"; + var take = "take"; + var talc = "talc"; + var tally = "tally"; + var tammy = "tammy"; + var tan = "tan"; + var tap = "tap"; + var tar = "tar"; + var tarry = "tarry"; + var tassel = "tassel"; + var tat = "tat"; + var teach = "teach"; + var taxis = "taxis"; + var taxi = "taxi"; + var teasel = "teasel"; + var ted = "ted"; + var tepefy = "tepefy"; + var terrify = "terrify"; + var testes = "testes"; + var testify = "testify"; + var thin = "thin"; + var think = "think"; + var throw1 = "throw"; + var thrive = "thrive"; + var throb = "throb"; + var thrum = "thrum"; + var thud = "thud"; + var tidy = "tidy"; + var tin = "tin"; + var tinsel = "tinsel"; + var tip = "tip"; + var tittup = "tittup"; + var toady = "toady"; + var tog = "tog"; + var tell = "tell"; + var top = "top"; + var tear = "tear"; + var torrefy = "torrefy"; + var total = "total"; + var tot = "tot"; + var towel = "towel"; + var traffic = "traffic"; + var trammel = "trammel"; + var tram = "tram"; + var transfer = "transfer"; + var transfix = "transfix"; + var transship = "transship"; + var tranship = "tranship"; + var transmit = "transmit"; + var transmogrify = "transmogrify"; + var trapan = "trapan"; + var trap = "trap"; + var travel = "travel"; + var travesty = "travesty"; + var trek = "trek"; + var trepan = "trepan"; + var try1 = "try"; + var trig = "trig"; + var trim2 = "trim"; + var trip = "trip"; + var tread = "tread"; + var trog = "trog"; + var trot = "trot"; + var trowel = "trowel"; + var tug = "tug"; + var tumefy = "tumefy"; + var tun = "tun"; + var tunnel = "tunnel"; + var tup = "tup"; + var twig = "twig"; + var twin = "twin"; + var twit = "twit"; + var tie = "tie"; + var typeset = "typeset"; + var typewrite = "typewrite"; + var typify = "typify"; + var uglify = "uglify"; + var unbar = "unbar"; + var unbend = "unbend"; + var unbind = "unbind"; + var uncap = "uncap"; + var unclothe = "unclothe"; + var unclog = "unclog"; + var underbid = "underbid"; + var underbuy = "underbuy"; + var undercut = "undercut"; + var underfeed = "underfeed"; + var undergird = "undergird"; + var undergo = "undergo"; + var underlay = "underlay"; + var underlie = "underlie"; + var underlet = "underlet"; + var underpay = "underpay"; + var underpin = "underpin"; + var underprop = "underprop"; + var underset = "underset"; + var undershoot = "undershoot"; + var undersell = "undersell"; + var understand = "understand"; + var understudy = "understudy"; + var undertake = "undertake"; + var underwrite = "underwrite"; + var undo = "undo"; + var unfit = "unfit"; + var unfreeze = "unfreeze"; + var unify = "unify"; + var unkennel = "unkennel"; + var unknit = "unknit"; + var unlay = "unlay"; + var unlearn = "unlearn"; + var unmake = "unmake"; + var unman = "unman"; + var unpeg = "unpeg"; + var unpin = "unpin"; + var unplug = "unplug"; + var unravel = "unravel"; + var unrig = "unrig"; + var unrip = "unrip"; + var unreeve = "unreeve"; + var unsay = "unsay"; + var unship = "unship"; + var unsling = "unsling"; + var unsnap = "unsnap"; + var unspeak = "unspeak"; + var unsteady = "unsteady"; + var unstep = "unstep"; + var unstop = "unstop"; + var unstring = "unstring"; + var unstick = "unstick"; + var unswear = "unswear"; + var unteach = "unteach"; + var unthink = "unthink"; + var untidy = "untidy"; + var untread = "untread"; + var untie = "untie"; + var unwind = "unwind"; + var unwrap = "unwrap"; + var unzip2 = "unzip"; + var upbuild = "upbuild"; + var uphold = "uphold"; + var upheave = "upheave"; + var up = "up"; + var uppercut = "uppercut"; + var uprise = "uprise"; + var upset = "upset"; + var upspring = "upspring"; + var upsweep = "upsweep"; + var upswell = "upswell"; + var upswing = "upswing"; + var vag = "vag"; + var vary = "vary"; + var vat = "vat"; + var verbify = "verbify"; + var verify = "verify"; + var versify = "versify"; + var vet = "vet"; + var victual = "victual"; + var vilify = "vilify"; + var vitrify = "vitrify"; + var vitriol = "vitriol"; + var vivify = "vivify"; + var vie = "vie"; + var wad = "wad"; + var waddy = "waddy"; + var wadset = "wadset"; + var wag = "wag"; + var wan = "wan"; + var war = "war"; + var waylay = "waylay"; + var weary = "weary"; + var weatherstrip = "weatherstrip"; + var web = "web"; + var wed = "wed"; + var weed = "weed"; + var weep = "weep"; + var wet = "wet"; + var wham = "wham"; + var whap = "whap"; + var whet = "whet"; + var whinny = "whinny"; + var whip = "whip"; + var whipsaw = "whipsaw"; + var whir = "whir"; + var whiz = "whiz"; + var whop = "whop"; + var wig = "wig"; + var wigwag = "wigwag"; + var wildcat = "wildcat"; + var will = "will"; + var win = "win"; + var winterfeed = "winterfeed"; + var wiredraw = "wiredraw"; + var withdraw = "withdraw"; + var withhold = "withhold"; + var withstand = "withstand"; + var wake = "wake"; + var won = "won"; + var wear = "wear"; + var worry = "worry"; + var worship = "worship"; + var wind = "wind"; + var weave = "weave"; + var wrap2 = "wrap"; + var wry = "wry"; + var write = "write"; + var work = "work"; + var wring = "wring"; + var yak = "yak"; + var yap = "yap"; + var yen = "yen"; + var yodel = "yodel"; + var zap = "zap"; + var zigzag = "zigzag"; + var zip = "zip"; + exceptions.abetted = abet, exceptions.abetting = abet, exceptions.abhorred = abhor, exceptions.abhorring = abhor, exceptions.abode = abide, exceptions.abought = aby, exceptions.abutted = abut, exceptions.abutting = abut, exceptions.abye = aby, exceptions.accompanied = accompany, exceptions.acetified = acetify, exceptions.acidified = acidify, exceptions.acquitted = acquit, exceptions.acquitting = acquit, exceptions.addrest = address, exceptions.admitted = admit, exceptions.admitting = admit, exceptions.aerified = aerify, exceptions.airdropped = airdrop, exceptions.airdropping = airdrop, exceptions.alkalified = alkalify, exceptions.allied = ally, exceptions.allotted = allot, exceptions.allotting = allot, exceptions.am = be, exceptions.ammonified = ammonify, exceptions.amnestied = amnesty, exceptions.amplified = amplify, exceptions.anglified = anglify, exceptions.annulled = annul, exceptions.annulling = annul, exceptions.appalled = appal, exceptions.appalling = appal, exceptions.applied = apply, exceptions.arcked = arc, exceptions.arcking = arc, exceptions.are = be, exceptions.argufied = argufy, exceptions.arisen = arise, exceptions.arose = arise, exceptions.ate = eat, exceptions.atrophied = atrophy, exceptions.averred = aver, exceptions.averring = aver, exceptions.awoke = awake, exceptions.awoken = awake, exceptions.babied = baby, exceptions.backbit = backbite, exceptions.backbitten = backbite, exceptions.backslid = backslide, exceptions.backslidden = backslide, exceptions.bade = bid, exceptions.bagged = bag, exceptions.bagging = bag, exceptions.ballyragged = ballyrag, exceptions.ballyragging = ballyrag, exceptions.bandied = bandy, exceptions.banned = ban, exceptions.banning = ban, exceptions.barred = bar, exceptions.barrelled = barrel, exceptions.barrelling = barrel, exceptions.barring = bar, exceptions.basified = basify, exceptions.batted = bat, exceptions.batting = bat, exceptions.bayonetted = bayonet, exceptions.bayonetting = bayonet, exceptions.beaten = beat, exceptions.beatified = beatify, exceptions.beautified = beautify, exceptions.became = become, exceptions.bed = bed, exceptions.bedded = bed, exceptions.bedding = bed, exceptions.bedevilled = bedevil, exceptions.bedevilling = bedevil, exceptions.bedimmed = bedim, exceptions.bedimming = bedim, exceptions.been = be, exceptions.befallen = befall, exceptions.befell = befall, exceptions.befitted = befit, exceptions.befitting = befit, exceptions.befogged = befog, exceptions.befogging = befog, exceptions.began = begin, exceptions.begat = beget, exceptions.begetting = beget, exceptions.begged = beg, exceptions.begging = beg, exceptions.beginning = begin, exceptions.begirt = begird, exceptions.begot = beget, exceptions.begotten = beget, exceptions.begun = begin, exceptions.beheld = behold, exceptions.beholden = behold, exceptions.bejewelled = bejewel, exceptions.bejewelling = bejewel, exceptions.bellied = belly, exceptions.belying = belie, exceptions.benefitted = benefit, exceptions.benefitting = benefit, exceptions.benempt = bename, exceptions.bent = bend, exceptions.berried = berry, exceptions.besetting = beset, exceptions.besought = beseech, exceptions.bespoke = bespeak, exceptions.bespoken = bespeak, exceptions.bestirred = bestir, exceptions.bestirring = bestir, exceptions.bestrewn = bestrew, exceptions.bestrid = bestride, exceptions.bestridden = bestride, exceptions.bestrode = bestride, exceptions.betaken = betake, exceptions.bethought = bethink, exceptions.betook = betake, exceptions.betted = bet, exceptions.betting = bet, exceptions.bevelled = bevel, exceptions.bevelling = bevel, exceptions.biassed = bias, exceptions.biassing = bias, exceptions.bidden = bid, exceptions.bidding = bid, exceptions.bing = bing, exceptions.binned = bin, exceptions.binning = bin, exceptions.bit = bite, exceptions.bitted = bit, exceptions.bitten = bite, exceptions.bitting = bit, exceptions.bivouacked = bivouac, exceptions.bivouacking = bivouac, exceptions.blabbed = blab, exceptions.blabbing = blab, exceptions.blackberried = blackberry, exceptions.blacklegged = blackleg, exceptions.blacklegging = blackleg, exceptions.blatted = blat, exceptions.blatting = blat, exceptions.bled = bleed, exceptions.blest = bless, exceptions.blew = blow, exceptions.blipped = blip, exceptions.blipping = blip, exceptions.blobbed = blob, exceptions.blobbing = blob, exceptions.bloodied = bloody, exceptions.blotted = blot, exceptions.blotting = blot, exceptions.blown = blow, exceptions.blubbed = blub, exceptions.blubbing = blub, exceptions.blurred = blur, exceptions.blurring = blur, exceptions.bobbed = bob, exceptions.bobbing = bob, exceptions.bodied = body2, exceptions.bootlegged = bootleg, exceptions.bootlegging = bootleg, exceptions.bopped = bop, exceptions.bopping = bop, exceptions.bore = bear, exceptions.born = bear, exceptions.borne = bear, exceptions.bought = buy, exceptions.bound = bind2, exceptions.bragged = brag, exceptions.bragging = brag, exceptions.bred = breed, exceptions.brevetted = brevet, exceptions.brevetting = brevet, exceptions.brimmed = brim, exceptions.brimming = brim, exceptions.broke = break1, exceptions.broken = break1, exceptions.brought = bring, exceptions.browbeaten = browbeat, exceptions.brutified = brutify, exceptions.budded = bud, exceptions.budding = bud, exceptions.bugged = bug, exceptions.bugging = bug, exceptions.built = build, exceptions.bulldogging = bulldog, exceptions.bullied = bully, exceptions.bullshitted = bullshit, exceptions.bullshitting = bullshit, exceptions.bullwhipped = bullwhip, exceptions.bullwhipping = bullwhip, exceptions.bullyragged = bullyrag, exceptions.bullyragging = bullyrag, exceptions.bummed = bum, exceptions.bumming = bum, exceptions.buried = bury, exceptions.burnt = burn, exceptions.burred = bur, exceptions.burring = bur, exceptions.bushelled = bushel, exceptions.bushelling = bushel, exceptions.busied = busy, exceptions.bypast = bypass, exceptions.caballed = cabal, exceptions.caballing = cabal, exceptions.caddied = caddy, exceptions.caddies = caddy, exceptions.caddying = caddy, exceptions.calcified = calcify, exceptions.came = come, exceptions.canalled = canal, exceptions.canalling = canal, exceptions.cancelled = cancel, exceptions.cancelling = cancel, exceptions.candied = candy, exceptions.canned = can, exceptions.canning = can, exceptions.canopied = canopy, exceptions.capped = cap, exceptions.capping = cap, exceptions.carburetted = carburet, exceptions.carburetting = carburet, exceptions.carillonned = carillon, exceptions.carillonning = carillon, exceptions.carnied = carny, exceptions.carnified = carnify, exceptions.carolled = carol, exceptions.carolling = carol, exceptions.carried = carry, exceptions.casefied = casefy, exceptions.catnapped = catnap, exceptions.catnapping = catnap, exceptions.catted = cat, exceptions.catting = cat, exceptions.caught = catch1, exceptions.cavilled = cavil, exceptions.cavilling = cavil, exceptions.certified = certify, exceptions.channelled = channel, exceptions.channelling = channel, exceptions.chapped = chap, exceptions.chapping = chap, exceptions.charred = char, exceptions.charring = char, exceptions.chatted = chat, exceptions.chatting = chat, exceptions.chevied = chivy, exceptions.chevies = chivy, exceptions.chevying = chivy, exceptions.chid = chide, exceptions.chidden = chide, exceptions.chinned = chin, exceptions.chinning = chin, exceptions.chipped = chip, exceptions.chipping = chip, exceptions.chiselled = chisel, exceptions.chiselling = chisel, exceptions.chitchatted = chitchat, exceptions.chitchatting = chitchat, exceptions.chivied = chivy, exceptions.chivved = chiv, exceptions.chivvied = chivy, exceptions.chivvies = chivy, exceptions.chivving = chiv, exceptions.chivvying = chivy, exceptions.chondrified = chondrify, exceptions.chopped = chop, exceptions.chopping = chop, exceptions.chose = choose, exceptions.chosen = choose, exceptions.chugged = chug, exceptions.chugging = chug, exceptions.chummed = chum, exceptions.chumming = chum, exceptions.citified = citify, exceptions.clad = clothe, exceptions.cladded = clad, exceptions.cladding = clad, exceptions.clammed = clam, exceptions.clamming = clam, exceptions.clapped = clap, exceptions.clapping = clap, exceptions.clarified = clarify, exceptions.classified = classify, exceptions.cleft = cleave, exceptions.clemmed = clem, exceptions.clemming = clem, exceptions.clept = clepe, exceptions.clipped = clip, exceptions.clipping = clip, exceptions.clogged = clog, exceptions.clogging = clog, exceptions.clopped = clop, exceptions.clopping = clop, exceptions.clotted = clot, exceptions.clotting = clot, exceptions.clove = cleave, exceptions.cloven = cleave, exceptions.clubbed = club, exceptions.clubbing = club, exceptions.clung = cling, exceptions.cockneyfied = cockneyfy, exceptions.codded = cod, exceptions.codding = cod, exceptions.codified = codify, exceptions.cogged = cog, exceptions.cogging = cog, exceptions.coiffed = coif, exceptions.coiffing = coif, exceptions.collied = colly, exceptions.combatted = combat, exceptions.combatting = combat, exceptions.committed = commit, exceptions.committing = commit, exceptions.compelled = compel, exceptions.compelling = compel, exceptions.complied = comply, exceptions.complotted = complot, exceptions.complotting = complot, exceptions.concurred = concur, exceptions.concurring = concur, exceptions.confabbed = confab, exceptions.confabbing = confab, exceptions.conferred = confer, exceptions.conferring = confer, exceptions.conned = con, exceptions.conning = con, exceptions.controlled = control, exceptions.controlling = control, exceptions.copied = copy, exceptions.copped = cop, exceptions.copping = cop, exceptions.coquetted = coquet, exceptions.coquetting = coquet, exceptions.corralled = corral, exceptions.corralling = corral, exceptions.could = can, exceptions.counselled = counsel, exceptions.counselling = counsel, exceptions.counterplotted = counterplot, exceptions.counterplotting = counterplot, exceptions.countersank = countersink, exceptions.countersunk = countersink, exceptions.crabbed = crab, exceptions.crabbing = crab, exceptions.crammed = cram, exceptions.cramming = cram, exceptions.crapped = crap, exceptions.crapping = crap, exceptions.creeped = creep, exceptions.crept = creep, exceptions.cribbed = crib, exceptions.cribbing = crib, exceptions.cried = cry, exceptions.cropped = crop, exceptions.cropping = crop, exceptions.crossbred = crossbreed, exceptions.crosscutting = crosscut, exceptions.crucified = crucify, exceptions.cubbed = cub, exceptions.cubbing = cub, exceptions.cudgelled = cudgel, exceptions.cudgelling = cudgel, exceptions.cupelled = cupel, exceptions.cupelling = cupel, exceptions.cupped = cup, exceptions.cupping = cup, exceptions.curetted = curet, exceptions.curettes = curet, exceptions.curetting = curet, exceptions.curried = curry, exceptions.curst = curse, exceptions.curtsied = curtsy, exceptions.curvetted = curvet, exceptions.curvetting = curvet, exceptions.cutting = cut, exceptions.dabbed = dab, exceptions.dabbing = dab, exceptions.dagged = dag, exceptions.dagging = dag, exceptions.dallied = dally, exceptions.dammed = dam, exceptions.damming = dam, exceptions.damnified = damnify, exceptions.dandified = dandify, exceptions.dapped = dap, exceptions.dapping = dap, exceptions.dealt = deal, exceptions.debarred = debar, exceptions.debarring = debar, exceptions.debugged = debug, exceptions.debugging = debug, exceptions.debussed = debus, exceptions.debusses = debus, exceptions.debussing = debus, exceptions.decalcified = decalcify, exceptions.declassified = declassify, exceptions.decontrolled = decontrol, exceptions.decontrolling = decontrol, exceptions.decried = decry, exceptions.deferred = defer2, exceptions.deferring = defer2, exceptions.defied = defy, exceptions.degassed = degas, exceptions.degasses = degas, exceptions.degassing = degas, exceptions.dehumidified = dehumidify, exceptions.deified = deify, exceptions.demitted = demit, exceptions.demitting = demit, exceptions.demobbed = demob, exceptions.demobbing = demob, exceptions.demulsified = demulsify, exceptions.demurred = demur, exceptions.demurring = demur, exceptions.demystified = demystify, exceptions.denazified = denazify, exceptions.denied = deny, exceptions.denitrified = denitrify, exceptions.denned = den, exceptions.denning = den, exceptions.descried = descry, exceptions.deterred = deter, exceptions.deterring = deter, exceptions.detoxified = detoxify, exceptions.devilled = devil, exceptions.devilling = devil, exceptions.devitrified = devitrify, exceptions.diagrammed = diagram, exceptions.diagramming = diagram, exceptions.dialled = dial, exceptions.dialling = dial, exceptions.dibbed = dib, exceptions.dibbing = dib, exceptions.did = do1, exceptions.digging = dig, exceptions.dignified = dignify, exceptions.dimmed = dim, exceptions.dimming = dim, exceptions.dinned = din, exceptions.dinning = din, exceptions.dipped = dip, exceptions.dipping = dip, exceptions.dirtied = dirty, exceptions.disannulled = disannul, exceptions.disannulling = disannul, exceptions.disbarred = disbar, exceptions.disbarring = disbar, exceptions.disbudded = disbud, exceptions.disbudding = disbud, exceptions.disembodied = disembody, exceptions.disembowelled = disembowel, exceptions.disembowelling = disembowel, exceptions.disenthralled = disenthral, exceptions.disenthralling = disenthral, exceptions.disenthralls = disenthral, exceptions.disenthrals = disenthrall, exceptions.dishevelled = dishevel, exceptions.dishevelling = dishevel, exceptions.disinterred = disinter, exceptions.disinterring = disinter, exceptions.dispelled = dispel, exceptions.dispelling = dispel, exceptions.disqualified = disqualify, exceptions.dissatisfied = dissatisfy, exceptions.distilled = distil, exceptions.distilling = distil, exceptions.diversified = diversify, exceptions.divvied = divvy, exceptions.dizzied = dizzy, exceptions.does = do1, exceptions.dogged = dog, exceptions.dogging = dog, exceptions.doglegged = dogleg, exceptions.doglegging = dogleg, exceptions.dollied = dolly, exceptions.done = do1, exceptions.donned = don, exceptions.donning = don, exceptions.dotted = dot, exceptions.dotting = dot, exceptions.dought = dow, exceptions.dove = dive, exceptions.drabbed = drab, exceptions.drabbing = drab, exceptions.dragged = drag, exceptions.dragging = drag, exceptions.drank = drink, exceptions.drawn = draw, exceptions.dreamt = dream, exceptions.drew = draw, exceptions.dried = dry, exceptions.dripped = drip, exceptions.dripping = drip, exceptions.drivelled = drivel, exceptions.drivelling = drivel, exceptions.driven = drive, exceptions.dropped = drop, exceptions.dropping = drop, exceptions.drove = drive, exceptions.drubbed = drub, exceptions.drubbing = drub, exceptions.drugged = drug, exceptions.drugging = drug, exceptions.drummed = drum, exceptions.drumming = drum, exceptions.drunk = drink, exceptions.dubbed = dub, exceptions.dubbing = dub, exceptions.duelled = duel, exceptions.duelling = duel, exceptions.dug = dig, exceptions.dulcified = dulcify, exceptions.dummied = dummy, exceptions.dunned = dun, exceptions.dunning = dun, exceptions.dwelt = dwell, exceptions.dying = die, exceptions.easied = easy, exceptions.eaten = eat, exceptions.eavesdropped = eavesdrop, exceptions.eavesdropping = eavesdrop, exceptions.eddied = eddy, exceptions.edified = edify, exceptions.electrified = electrify, exceptions.embedded = embed, exceptions.embedding = embed, exceptions.embodied = embody, exceptions.embussed = embus, exceptions.embusses = embus, exceptions.embussing = embus, exceptions.emitted = emit, exceptions.emitting = emit, exceptions.empanelled = empanel, exceptions.empanelling = empanel, exceptions.emptied = empty, exceptions.emulsified = emulsify, exceptions.enamelled = enamel, exceptions.enamelling = enamel, exceptions.englutted = englut, exceptions.englutting = englut, exceptions.enrolled = enrol, exceptions.enrolling = enrol, exceptions.enthralled = enthral, exceptions.enthralling = enthral, exceptions.entrammelled = entrammel, exceptions.entrammelling = entrammel, exceptions.entrapped = entrap, exceptions.entrapping = entrap, exceptions.envied = envy, exceptions.enwound = enwind, exceptions.enwrapped = enwrap, exceptions.enwrapping = enwrap, exceptions.equalled = equal, exceptions.equalling = equal, exceptions.equipped = equip, exceptions.equipping = equip, exceptions.espied = espy, exceptions.esterified = esterify, exceptions.estopped = estop, exceptions.estopping = estop, exceptions.etherified = etherify, exceptions.excelled = excel, exceptions.excelling = excel, exceptions.exemplified = exemplify, exceptions.expelled = expel, exceptions.expelling = expel, exceptions.extolled = extol, exceptions.extolling = extol, exceptions.facetted = facet, exceptions.facetting = facet, exceptions.fagged = fag, exceptions.fagging = fag, exceptions.fallen = fall, exceptions.falsified = falsify, exceptions.fancied = fancy, exceptions.fanned = fan, exceptions.fanning = fan, exceptions.fantasied = fantasy, exceptions.fatted = fat, exceptions.fatting = fat, exceptions.featherbedded = featherbed, exceptions.featherbedding = featherbed, exceptions.fed = feed, exceptions.feed = feed, exceptions.fell = fall, exceptions.felt = feel, exceptions.ferried = ferry, exceptions.fibbed = fib, exceptions.fibbing = fib, exceptions.figged = fig, exceptions.figging = fig, exceptions.finned = fin, exceptions.finning = fin, exceptions.fitted = fit, exceptions.fitting = fit, exceptions.flagged = flag, exceptions.flagging = flag, exceptions.flammed = flam, exceptions.flamming = flam, exceptions.flannelled = flannel, exceptions.flannelling = flannel, exceptions.flapped = flap, exceptions.flapping = flap, exceptions.flatted = flat, exceptions.flatting = flat, exceptions.fled = flee, exceptions.flew = fly, exceptions.flimflammed = flimflam, exceptions.flimflamming = flimflam, exceptions.flipped = flip, exceptions.flipping = flip, exceptions.flitted = flit, exceptions.flitting = flit, exceptions.flogged = flog, exceptions.flogging = flog, exceptions.floodlit = floodlight, exceptions.flopped = flop, exceptions.flopping = flop, exceptions.flown = fly, exceptions.flubbed = flub, exceptions.flubbing = flub, exceptions.flung = fling, exceptions.flurried = flurry, exceptions.flyblew = flyblow, exceptions.flyblown = flyblow, exceptions.fobbed = fob, exceptions.fobbing = fob, exceptions.fogged = fog, exceptions.fogging = fog, exceptions.footslogged = footslog, exceptions.footslogging = footslog, exceptions.forbad = forbid, exceptions.forbade = forbid, exceptions.forbidden = forbid, exceptions.forbidding = forbid, exceptions.forbore = forbear, exceptions.forborne = forbear, exceptions.fordid = fordo, exceptions.fordone = fordo, exceptions.foredid = foredo, exceptions.foredone = foredo, exceptions.foregone = forego, exceptions.foreknew = foreknow, exceptions.foreknown = foreknow, exceptions.foreran = forerun, exceptions.forerunning = forerun, exceptions.foresaw = foresee, exceptions.foreseen = foresee, exceptions.foreshown = foreshow, exceptions.forespoke = forespeak, exceptions.forespoken = forespeak, exceptions.foretold = foretell, exceptions.forewent = forego, exceptions.forgave = forgive, exceptions.forgetting = forget, exceptions.forgiven = forgive, exceptions.forgone = forgo, exceptions.forgot = forget, exceptions.forgotten = forget, exceptions.formatted = format, exceptions.formatting = format, exceptions.forsaken = forsake, exceptions.forsook = forsake, exceptions.forspoke = forspeak, exceptions.forspoken = forspeak, exceptions.forswore = forswear, exceptions.forsworn = forswear, exceptions.fortified = fortify, exceptions.forwent = forgo, exceptions.fought = fight, exceptions.found = find, exceptions.foxtrotted = foxtrot, exceptions.foxtrotting = foxtrot, exceptions.frapped = frap, exceptions.frapping = frap, exceptions.frenchified = frenchify, exceptions.frenzied = frenzy, exceptions.fretted = fret, exceptions.fretting = fret, exceptions.fried = fry, exceptions.frigged = frig, exceptions.frigging = frig, exceptions.fritted = frit, exceptions.fritting = frit, exceptions.frivolled = frivol, exceptions.frivolling = frivol, exceptions.frogged = frog, exceptions.frogging = frog, exceptions.frolicked = frolic, exceptions.frolicking = frolic, exceptions.froze = freeze, exceptions.frozen = freeze, exceptions.fructified = fructify, exceptions.fuelled = fuel, exceptions.fuelling = fuel, exceptions.fulfilled = fulfil, exceptions.fulfilling = fulfil, exceptions.funned = fun, exceptions.funnelled = funnel, exceptions.funnelling = funnel, exceptions.funning = fun, exceptions.furred = fur, exceptions.furring = fur, exceptions.gadded = gad, exceptions.gadding = gad, exceptions.gagged = gag, exceptions.gagging = gag, exceptions.gainsaid = gainsay, exceptions.gambolled = gambol, exceptions.gambolling = gambol, exceptions.gammed = gam, exceptions.gamming = gam, exceptions.gan = gin, exceptions.ganned = gan, exceptions.ganning = gan, exceptions.gapped = gap, exceptions.gapping = gap, exceptions.gasified = gasify, exceptions.gassed = gas, exceptions.gasses = gas, exceptions.gassing = gas, exceptions.gave = give, exceptions.gelled = gel, exceptions.gelling = gel, exceptions.gelt = geld, exceptions.gemmed = gem, exceptions.gemming = gem, exceptions.getting = get, exceptions.ghostwritten = ghostwrite, exceptions.ghostwrote = ghostwrite, exceptions.gibbed = gib, exceptions.gibbing = gib, exceptions.giddied = giddy, exceptions.giftwrapped = giftwrap, exceptions.giftwrapping = giftwrap, exceptions.gigged = gig, exceptions.gigging = gig, exceptions.gilt = gild, exceptions.ginned = gin, exceptions.ginning = gin, exceptions.gipped = gip, exceptions.gipping = gip, exceptions.girt = gird, exceptions.given = give, exceptions.glommed = glom, exceptions.glomming = glom, exceptions.gloried = glory, exceptions.glorified = glorify, exceptions.glutted = glut, exceptions.glutting = glut, exceptions.gnawn = gnaw, exceptions.gollied = golly, exceptions.gone = go, exceptions.got = get, exceptions.gotten = get, exceptions.grabbed = grab, exceptions.grabbing = grab, exceptions.gratified = gratify, exceptions.gravelled = gravel, exceptions.gravelling = gravel, exceptions.graven = grave, exceptions.grew = grow, exceptions.grinned = grin, exceptions.grinning = grin, exceptions.gripped = grip, exceptions.gripping = grip, exceptions.gript = grip, exceptions.gritted = grit, exceptions.gritting = grit, exceptions.ground = grind, exceptions.grovelled = grovel, exceptions.grovelling = grovel, exceptions.grown = grow, exceptions.grubbed = grub, exceptions.grubbing = grub, exceptions.guarantied = guaranty, exceptions.gullied = gully, exceptions.gummed = gum, exceptions.gumming = gum, exceptions.gunned = gun, exceptions.gunning = gun, exceptions.gypped = gyp, exceptions.gypping = gyp, exceptions.hacksawn = hacksaw, exceptions.had = have, exceptions.hammed = ham, exceptions.hamming = ham, exceptions.hamstrung = hamstring, exceptions.handfed = handfeed, exceptions.handicapped = handicap, exceptions.handicapping = handicap, exceptions.handselled = handsel, exceptions.handselling = handsel, exceptions.harried = harry, exceptions.has = have, exceptions.hatchelled = hatchel; + exceptions.hatchelling = hatchel, exceptions.hatted = hat, exceptions.hatting = hat, exceptions.heard = hear, exceptions.hedgehopped = hedgehop, exceptions.hedgehopping = hedgehop, exceptions.held = hold, exceptions.hemmed = hem, exceptions.hemming = hem, exceptions.hewn = hew, exceptions.hiccupped = hiccup, exceptions.hiccupping = hiccup, exceptions.hid = hide, exceptions.hidden = hide, exceptions.hinnied = hinny, exceptions.hitting = hit, exceptions.hobbed = hob, exceptions.hobbing = hob, exceptions.hobnobbed = hobnob, exceptions.hobnobbing = hobnob, exceptions.hocussed = hocus, exceptions.hocussing = hocus, exceptions.hogged = hog, exceptions.hogging = hog, exceptions.hogtying = hogtie, exceptions.honied = honey, exceptions.hopped = hop, exceptions.hopping = hop, exceptions.horrified = horrify, exceptions.horsewhipped = horsewhip, exceptions.horsewhipping = horsewhip, exceptions.houselled = housel, exceptions.houselling = housel, exceptions.hove = heave, exceptions.hovelled = hovel, exceptions.hovelling = hovel, exceptions.hugged = hug, exceptions.hugging = hug, exceptions.humbugged = humbug, exceptions.humbugging = humbug, exceptions.humidified = humidify, exceptions.hummed = hum, exceptions.humming = hum, exceptions.hung = hang, exceptions.hurried = hurry, exceptions.hypertrophied = hypertrophy, exceptions.identified = identify, exceptions.imbedded = imbed, exceptions.imbedding = imbed, exceptions.impanelled = impanel, exceptions.impanelling = impanel, exceptions.impelled = impel, exceptions.impelling = impel, exceptions.implied = imply, exceptions.inbred = inbreed, exceptions.incurred = incur, exceptions.incurring = incur, exceptions.indemnified = indemnify, exceptions.indwelt = indwell, exceptions.inferred = infer, exceptions.inferring = infer, exceptions.initialled = initial, exceptions.initialling = initial, exceptions.inlaid = inlay, exceptions.insetting = inset, exceptions.inspanned = inspan, exceptions.inspanning = inspan, exceptions.installed = install, exceptions.installing = install, exceptions.intensified = intensify, exceptions.interbred = interbreed, exceptions.intercropped = intercrop, exceptions.intercropping = intercrop, exceptions.intercutting = intercut, exceptions.interlaid = interlay, exceptions.interlapped = interlap, exceptions.interlapping = interlap, exceptions.intermarried = intermarry, exceptions.intermitted = intermit, exceptions.intermitting = intermit, exceptions.interpled = interplead, exceptions.interred = inter, exceptions.interring = inter, exceptions.interstratified = interstratify, exceptions.interwove = interweave, exceptions.interwoven = interweave, exceptions.intromitted = intromit, exceptions.intromitting = intromit, exceptions.inwove = inweave, exceptions.inwoven = inweave, exceptions.inwrapped = inwrap, exceptions.inwrapping = inwrap, exceptions.is = be, exceptions.jabbed = jab, exceptions.jabbing = jab, exceptions.jagged = jag, exceptions.jagging = jag, exceptions.jammed = jam, exceptions.jamming = jam, exceptions.japanned = japan, exceptions.japanning = japan, exceptions.jarred = jar, exceptions.jarring = jar, exceptions.jellied = jelly, exceptions.jellified = jellify, exceptions.jemmied = jemmy, exceptions.jetted = jet, exceptions.jetting = jet, exceptions.jewelled = jewel, exceptions.jewelling = jewel, exceptions.jibbed = jib, exceptions.jibbing = jib, exceptions.jigged = jig, exceptions.jigging = jig, exceptions.jimmied = jimmy, exceptions.jitterbugged = jitterbug, exceptions.jitterbugging = jitterbug, exceptions.jobbed = job, exceptions.jobbing = job, exceptions.jogged = jog, exceptions.jogging = jog, exceptions.jollied = jolly, exceptions.jollified = jollify, exceptions.jotted = jot, exceptions.jotting = jot, exceptions.joypopped = joypop, exceptions.joypopping = joypop, exceptions.jugged = jug, exceptions.jugging = jug, exceptions.justified = justify, exceptions.jutted = jut, exceptions.jutting = jut, exceptions.kenned = ken, exceptions.kennelled = kennel, exceptions.kennelling = kennel, exceptions.kenning = ken, exceptions.kent = ken, exceptions.kept = keep, exceptions.kernelled = kernel, exceptions.kernelling = kernel, exceptions.kidded = kid, exceptions.kidding = kid, exceptions.kidnapped = kidnap, exceptions.kidnapping = kidnap, exceptions.kipped = kip, exceptions.kipping = kip, exceptions.knapped = knap, exceptions.knapping = knap, exceptions.kneecapped = kneecap, exceptions.kneecapping = kneecap, exceptions.knelt = kneel, exceptions.knew = know, exceptions.knitted = knit, exceptions.knitting = knit, exceptions.knobbed = knob, exceptions.knobbing = knob, exceptions.knotted = knot, exceptions.knotting = knot, exceptions.known = know, exceptions.labelled = label, exceptions.labelling = label, exceptions.laden = lade, exceptions.ladyfied = ladify, exceptions.ladyfies = ladify, exceptions.ladyfying = ladify, exceptions.lagged = lag, exceptions.lagging = lag, exceptions.laid = lay, exceptions.lain = lie, exceptions.lallygagged = lallygag, exceptions.lallygagging = lallygag, exceptions.lammed = lam, exceptions.lamming = lam, exceptions.lapidified = lapidify, exceptions.lapped = lap, exceptions.lapping = lap, exceptions.laurelled = laurel, exceptions.laurelling = laurel, exceptions.lay = lie, exceptions.leant = lean, exceptions.leapfrogged = leapfrog, exceptions.leapfrogging = leapfrog, exceptions.leapt = leap, exceptions.learnt = learn, exceptions.led = lead, exceptions.left = leave, exceptions.lent = lend, exceptions.letting = let1, exceptions.levelled = level, exceptions.levelling = level, exceptions.levied = levy, exceptions.libelled = libel, exceptions.libelling = libel, exceptions.lignified = lignify, exceptions.lipped = lip, exceptions.lipping = lip, exceptions.liquefied = liquefy, exceptions.liquified = liquify, exceptions.lit = light, exceptions.lobbed = lob, exceptions.lobbied = lobby, exceptions.lobbing = lob, exceptions.logged = log2, exceptions.logging = log2, exceptions.lopped = lop, exceptions.lopping = lop, exceptions.lost = lose, exceptions.lotted = lot, exceptions.lotting = lot, exceptions.lugged = lug, exceptions.lugging = lug, exceptions.lullabied = lullaby, exceptions.lying = lie, exceptions.madded = mad, exceptions.madding = mad, exceptions.made = make, exceptions.magnified = magnify, exceptions.manned = man, exceptions.manning = man, exceptions.manumitted = manumit, exceptions.manumitting = manumit, exceptions.mapped = map, exceptions.mapping = map, exceptions.marcelled = marcel, exceptions.marcelling = marcel, exceptions.marred = mar, exceptions.married = marry, exceptions.marring = mar, exceptions.marshalled = marshal, exceptions.marshalling = marshal, exceptions.marvelled = marvel, exceptions.marvelling = marvel, exceptions.matted = mat, exceptions.matting = mat, exceptions.meant = mean, exceptions.medalled = medal, exceptions.medalling = medal, exceptions.met = meet, exceptions.metalled = metal, exceptions.metalling = metal, exceptions.metrified = metrify, exceptions.might = may, exceptions.mimicked = mimic, exceptions.mimicking = mimic, exceptions.minified = minify, exceptions.misapplied = misapply, exceptions.misbecame = misbecome, exceptions.miscarried = miscarry, exceptions.misdealt = misdeal, exceptions.misfitted = misfit, exceptions.misfitting = misfit, exceptions.misgave = misgive, exceptions.misgiven = misgive, exceptions.mishitting = mishit, exceptions.mislaid = mislay, exceptions.misled = mislead, exceptions.mispled = misplead, exceptions.misspelt = misspell, exceptions.misspent = misspend, exceptions.mistaken = mistake, exceptions.mistook = mistake, exceptions.misunderstood = misunderstand, exceptions.mobbed = mob, exceptions.mobbing = mob, exceptions.modelled = model, exceptions.modelling = model, exceptions.modified = modify, exceptions.mollified = mollify, exceptions.molten = melt, exceptions.mopped = mop, exceptions.mopping = mop, exceptions.mortified = mortify, exceptions.mown = mow, exceptions.mudded = mud, exceptions.muddied = muddy, exceptions.mudding = mud, exceptions.mugged = mug, exceptions.mugging = mug, exceptions.multiplied = multiply, exceptions.mummed = mum, exceptions.mummified = mummify, exceptions.mumming = mum, exceptions.mutinied = mutiny, exceptions.mystified = mystify, exceptions.nabbed = nab, exceptions.nabbing = nab, exceptions.nagged = nag, exceptions.nagging = nag, exceptions.napped = nap, exceptions.napping = nap, exceptions.netted = net, exceptions.netting = net, exceptions.nibbed = nib, exceptions.nibbing = nib, exceptions.nickelled = nickel, exceptions.nickelling = nickel, exceptions.nidified = nidify, exceptions.nigrified = nigrify, exceptions.nipped = nip, exceptions.nipping = nip, exceptions.nitrified = nitrify, exceptions.nodded = nod, exceptions.nodding = nod, exceptions.nonplussed = nonplus, exceptions.nonplusses = nonplus, exceptions.nonplussing = nonplus, exceptions.notified = notify, exceptions.nullified = nullify, exceptions.nutted = nut, exceptions.nutting = nut, exceptions.objectified = objectify, exceptions.occupied = occupy, exceptions.occurred = occur, exceptions.occurring = occur, exceptions.offsetting = offset, exceptions.omitted = omit2, exceptions.omitting = omit2, exceptions.ossified = ossify, exceptions.outbidden = outbid, exceptions.outbidding = outbid, exceptions.outbred = outbreed, exceptions.outcried = outcry, exceptions.outcropped = outcrop, exceptions.outcropping = outcrop, exceptions.outdid = outdo, exceptions.outdone = outdo, exceptions.outdrawn = outdraw, exceptions.outdrew = outdraw, exceptions.outfitted = outfit, exceptions.outfitting = outfit, exceptions.outfought = outfight, exceptions.outgassed = outgas, exceptions.outgasses = outgas, exceptions.outgassing = outgas, exceptions.outgeneralled = outgeneral, exceptions.outgeneralling = outgeneral, exceptions.outgone = outgo, exceptions.outgrew = outgrow, exceptions.outgrown = outgrow, exceptions.outlaid = outlay, exceptions.outmanned = outman, exceptions.outmanning = outman, exceptions.outputted = output, exceptions.outputting = output, exceptions.outran = outrun, exceptions.outridden = outride, exceptions.outrode = outride, exceptions.outrunning = outrun, exceptions.outshone = outshine, exceptions.outshot = outshoot, exceptions.outsold = outsell, exceptions.outspanned = outspan, exceptions.outspanning = outspan, exceptions.outstood = outstand, exceptions.outstripped = outstrip, exceptions.outstripping = outstrip, exceptions.outthought = outthink, exceptions.outwent = outgo, exceptions.outwitted = outwit, exceptions.outwitting = outwit, exceptions.outwore = outwear, exceptions.outworn = outwear, exceptions.overbidden = overbid, exceptions.overbidding = overbid, exceptions.overblew = overblow, exceptions.overblown = overblow, exceptions.overbore = overbear, exceptions.overborne = overbear, exceptions.overbuilt = overbuild, exceptions.overcame = overcome, exceptions.overcropped = overcrop, exceptions.overcropping = overcrop, exceptions.overdid = overdo, exceptions.overdone = overdo, exceptions.overdrawn = overdraw, exceptions.overdrew = overdraw, exceptions.overdriven = overdrive, exceptions.overdrove = overdrive, exceptions.overflew = overfly, exceptions.overflown = overflow, exceptions.overgrew = overgrow, exceptions.overgrown = overgrow, exceptions.overheard = overhear, exceptions.overhung = overhang, exceptions.overlaid = overlay, exceptions.overlain = overlie, exceptions.overlapped = overlap, exceptions.overlapping = overlap, exceptions.overlay = overlie, exceptions.overlying = overlie, exceptions.overmanned = overman, exceptions.overmanning = overman, exceptions.overpaid = overpay, exceptions.overpast = overpass, exceptions.overran = overrun, exceptions.overridden = override, exceptions.overrode = override, exceptions.overrunning = overrun, exceptions.oversaw = oversee, exceptions.overseen = oversee, exceptions.oversetting = overset, exceptions.oversewn = oversew, exceptions.overshot = overshoot, exceptions.oversimplified = oversimplify, exceptions.overslept = oversleep, exceptions.oversold = oversell, exceptions.overspent = overspend, exceptions.overspilt = overspill, exceptions.overstepped = overstep, exceptions.overstepping = overstep, exceptions.overtaken = overtake, exceptions.overthrew = overthrow, exceptions.overthrown = overthrow, exceptions.overtook = overtake, exceptions.overtopped = overtop, exceptions.overtopping = overtop, exceptions.overwound = overwind, exceptions.overwritten = overwrite, exceptions.overwrote = overwrite, exceptions.pacified = pacify, exceptions.padded = pad, exceptions.padding = pad, exceptions.paid = pay, exceptions.palled = pal, exceptions.palling = pal, exceptions.palsied = palsy, exceptions.pandied = pandy, exceptions.panelled = panel, exceptions.panelling = panel, exceptions.panicked = panic, exceptions.panicking = panic, exceptions.panned = pan, exceptions.panning = pan, exceptions.parallelled = parallel, exceptions.parallelling = parallel, exceptions.parcelled = parcel, exceptions.parcelling = parcel, exceptions.parodied = parody, exceptions.parried = parry, exceptions.partaken = partake, exceptions.partook = partake, exceptions.pasquil = pasquinade, exceptions.pasquilled = pasquinade, exceptions.pasquilling = pasquinade, exceptions.pasquils = pasquinade, exceptions.patrolled = patrol, exceptions.patrolling = patrol, exceptions.patted = pat, exceptions.patting = pat, exceptions.pedalled = pedal, exceptions.pedalling = pedal, exceptions.pegged = peg, exceptions.pegging = peg, exceptions.pencilled = pencil, exceptions.pencilling = pencil, exceptions.penned = pen, exceptions.penning = pen, exceptions.pent = pen, exceptions.pepped = pep, exceptions.pepping = pep, exceptions.permitted = permit, exceptions.permitting = permit, exceptions.personified = personify, exceptions.petrified = petrify, exceptions.petted = pet, exceptions.pettifogged = pettifog, exceptions.pettifogging = pettifog, exceptions.petting = pet, exceptions.phantasied = phantasy, exceptions.photocopied = photocopy, exceptions.photomapped = photomap, exceptions.photomapping = photomap, exceptions.photosetting = photoset, exceptions.physicked = physic, exceptions.physicking = physic, exceptions.picnicked = picnic, exceptions.picnicking = picnic, exceptions.pigged = pig, exceptions.pigging = pig, exceptions.pilloried = pillory, exceptions.pinned = pin, exceptions.pinning = pin, exceptions.pipped = pip, exceptions.pipping = pip, exceptions.pistolled = pistol, exceptions.pistolling = pistol, exceptions.pitapatted = pitapat, exceptions.pitapatting = pitapat, exceptions.pitied = pity, exceptions.pitted = pit, exceptions.pitting = pit, exceptions.planned = plan, exceptions.planning = plan, exceptions.platted = plat, exceptions.platting = plat, exceptions.pled = plead, exceptions.plied = ply, exceptions.plodded = plod, exceptions.plodding = plod, exceptions.plopped = plop, exceptions.plopping = plop, exceptions.plotted = plot, exceptions.plotting = plot, exceptions.plugged = plug, exceptions.plugging = plug, exceptions.podded = pod, exceptions.podding = pod, exceptions.pommelled = pommel, exceptions.pommelling = pommel, exceptions.popes = popes, exceptions.popped = pop, exceptions.popping = pop, exceptions.potted = pot, exceptions.potting = pot, exceptions.preachified = preachify, exceptions.precancelled = precancel, exceptions.precancelling = precancel, exceptions.preferred = prefer, exceptions.preferring = prefer, exceptions.preoccupied = preoccupy, exceptions.prepaid = prepay, exceptions.presignified = presignify, exceptions.pretermitted = pretermit, exceptions.pretermitting = pretermit, exceptions.prettied = pretty, exceptions.prettified = prettify, exceptions.pried = pry, exceptions.prigged = prig, exceptions.prigging = prig, exceptions.primmed = prim, exceptions.primming = prim, exceptions.prodded = prod, exceptions.prodding = prod, exceptions.programmed = program2, exceptions.programmes = program2, exceptions.programming = program2, exceptions.prologed = prologue, exceptions.prologing = prologue, exceptions.prologs = prologue, exceptions.propelled = propel, exceptions.propelling = propel, exceptions.prophesied = prophesy, exceptions.propped = prop, exceptions.propping = prop, exceptions.proven = prove, exceptions.pubbed = pub, exceptions.pubbing = pub, exceptions.pugged = pug, exceptions.pugging = pug, exceptions.pummelled = pummel, exceptions.pummelling = pummel, exceptions.punned = pun, exceptions.punning = pun, exceptions.pupped = pup, exceptions.pupping = pup, exceptions.purified = purify, exceptions.putrefied = putrefy, exceptions.puttied = putty, exceptions.putting = put, exceptions.qualified = qualify, exceptions.quantified = quantify, exceptions.quarrelled = quarrel, exceptions.quarrelling = quarrel, exceptions.quarried = quarry, exceptions.quartersawn = quartersaw, exceptions.queried = query, exceptions.quickstepped = quickstep, exceptions.quickstepping = quickstep, exceptions.quipped = quip, exceptions.quipping = quip, exceptions.quitted = quit, exceptions.quitting = quit, exceptions.quizzed = quiz, exceptions.quizzes = quiz, exceptions.quizzing = quiz, exceptions.ragged = rag, exceptions.ragging = rag, exceptions.rallied = rally, exceptions.ramified = ramify, exceptions.rammed = ram, exceptions.ramming = ram, exceptions.ran = run2, exceptions.rang = ring, exceptions.rapped = rap, exceptions.rappelled = rappel, exceptions.rappelling = rappel, exceptions.rapping = rap, exceptions.rarefied = rarefy, exceptions.ratified = ratify, exceptions.ratted = rat, exceptions.ratting = rat, exceptions.ravelled = ravel, exceptions.ravelling = ravel, exceptions.rebelled = rebel, exceptions.rebelling = rebel, exceptions.rebuilt = rebuild, exceptions.rebutted = rebut, exceptions.rebutting = rebut, exceptions.recapped = recap, exceptions.recapping = recap, exceptions.reclassified = reclassify, exceptions.recommitted = recommit, exceptions.recommitting = recommit, exceptions.recopied = recopy, exceptions.rectified = rectify, exceptions.recurred = recur, exceptions.recurring = recur, exceptions.red = red, exceptions.redded = red, exceptions.redding = red, exceptions.redid = redo, exceptions.redone = redo, exceptions.referred = refer, exceptions.referring = refer, exceptions.refitted = refit, exceptions.refitting = refit, exceptions.reft = reave, exceptions.refuelled = refuel, exceptions.refuelling = refuel, exceptions.regretted = regret, exceptions.regretting = regret, exceptions.reheard = rehear, exceptions.reified = reify, exceptions.relied = rely, exceptions.remade = remake, exceptions.remarried = remarry, exceptions.remitted = remit, exceptions.remitting = remit, exceptions.rent = rend, exceptions.repaid = repay, exceptions.repelled = repel, exceptions.repelling = repel, exceptions.replevied = replevy, exceptions.replied = reply, exceptions.repotted = repot, exceptions.repotting = repot, exceptions.reran = rerun, exceptions.rerunning = rerun, exceptions.resat = resit, exceptions.resetting = reset, exceptions.resewn = resew, exceptions.resitting = resit, exceptions.retaken = retake, exceptions.rethought = rethink, exceptions.retold = retell, exceptions.retook = retake, exceptions.retransmitted = retransmit, exceptions.retransmitting = retransmit, exceptions.retried = retry, exceptions.retrofitted = retrofit, exceptions.retrofitting = retrofit, exceptions.retted = ret2, exceptions.retting = ret2, exceptions.reunified = reunify, exceptions.revelled = revel, exceptions.revelling = revel, exceptions.revetted = revet, exceptions.revetting = revet, exceptions.revivified = revivify, exceptions.revved = rev, exceptions.revving = rev, exceptions.rewound = rewind, exceptions.rewritten = rewrite, exceptions.rewrote = rewrite, exceptions.ribbed = rib, exceptions.ribbing = rib, exceptions.ricochetted = ricochet, exceptions.ricochetting = ricochet, exceptions.ridded = rid, exceptions.ridden = ride, exceptions.ridding = rid, exceptions.rigged = rig, exceptions.rigging = rig, exceptions.rigidified = rigidify, exceptions.rimmed = rim, exceptions.rimming = rim, exceptions.ripped = rip, exceptions.ripping = rip, exceptions.risen = rise, exceptions.rivalled = rival, exceptions.rivalling = rival, exceptions.riven = rive, exceptions.robbed = rob, exceptions.robbing = rob, exceptions.rode = ride, exceptions.rose = rise, exceptions.rotted = rot, exceptions.rotting = rot, exceptions.rove = reeve, exceptions.rowelled = rowel, exceptions.rowelling = rowel, exceptions.rubbed = rub, exceptions.rubbing = rub, exceptions.rung = ring, exceptions.running = run2, exceptions.rutted = rut, exceptions.rutting = rut, exceptions.saccharified = saccharify, exceptions.sagged = sag, exceptions.sagging = sag, exceptions.said = say, exceptions.salaried = salary, exceptions.salified = salify, exceptions.sallied = sally, exceptions.sanctified = sanctify, exceptions.sandbagged = sandbag, exceptions.sandbagging = sandbag, exceptions.sang = sing, exceptions.sank = sink, exceptions.saponified = saponify, exceptions.sapped = sap, exceptions.sapping = sap, exceptions.sat = sit, exceptions.satisfied = satisfy, exceptions.savvied = savvy, exceptions.saw = see, exceptions.sawn = saw, exceptions.scagged = scag, exceptions.scagging = scag, exceptions.scanned = scan, exceptions.scanning = scan, exceptions.scarified = scarify, exceptions.scarred = scar, exceptions.scarring = scar, exceptions.scatted = scat, exceptions.scatting = scat, exceptions.scorified = scorify, exceptions.scragged = scrag, exceptions.scragging = scrag, exceptions.scrammed = scram, exceptions.scramming = scram, exceptions.scrapped = scrap, exceptions.scrapping = scrap, exceptions.scried = scry, exceptions.scrubbed = scrub, exceptions.scrubbing = scrub, exceptions.scrummed = scrum, exceptions.scrumming = scrum, exceptions.scudded = scud, exceptions.scudding = scud, exceptions.scummed = scum, exceptions.scumming = scum, exceptions.scurried = scurry, exceptions.seed = seed, exceptions.seen = see, exceptions.sent = send, exceptions.setting = set, exceptions.sewn = sew, exceptions.shagged = shag, exceptions.shagging = shag, exceptions.shaken = shake, exceptions.shammed = sham, exceptions.shamming = sham, exceptions.sharecropped = sharecrop, exceptions.sharecropping = sharecrop, exceptions.shat = shit, exceptions.shaven = shave, exceptions.shorn = shear, exceptions.shed = shed, exceptions.shedding = shed, exceptions.shellacked = shellac, exceptions.shellacking = shellac, exceptions.shent = shend, exceptions.shewn = shew, exceptions.shied = shy, exceptions.shikarred = shikar, exceptions.shikarring = shikar, exceptions.shillyshallied = shillyshally, exceptions.shimmed = shim, exceptions.shimmied = shimmy, exceptions.shimming = shim, exceptions.shinned = shin, exceptions.shinning = shin, exceptions.shipped = ship, exceptions.shipping = ship, exceptions.shitted = shit, exceptions.shitting = shit, exceptions.shod = shoe, exceptions.shone = shine, exceptions.shook = shake, exceptions.shopped = shop, exceptions.shopping = shop, exceptions.shot = shoot, exceptions.shotgunned = shotgun, exceptions.shotgunning = shotgun, exceptions.shotted = shot, exceptions.shotting = shot, exceptions.shovelled = shovel, exceptions.shovelling = shovel, exceptions.shown = show, exceptions.shrank = shrink, exceptions.shredded = shred, exceptions.shredding = shred, exceptions.shrivelled = shrivel, exceptions.shrivelling = shrivel, exceptions.shriven = shrive, exceptions.shrove = shrive, exceptions.shrugged = shrug, exceptions.shrugging = shrug, exceptions.shrunk = shrink; + exceptions.shrunken = shrink, exceptions.shunned = shun, exceptions.shunning = shun, exceptions.shutting = shut, exceptions.sicked = sic, exceptions.sicking = sic, exceptions.sideslipped = sideslip, exceptions.sideslipping = sideslip, exceptions.sidestepped = sidestep, exceptions.sidestepping = sidestep, exceptions.sightsaw = sightsee, exceptions.sightseen = sightsee, exceptions.signalled = signal, exceptions.signalling = signal, exceptions.signified = signify, exceptions.silicified = silicify, exceptions.simplified = simplify, exceptions.singing = sing, exceptions.sinned = sin, exceptions.sinning = sin, exceptions.sipped = sip, exceptions.sipping = sip, exceptions.sitting = sit, exceptions.skellied = skelly, exceptions.skenned = sken, exceptions.skenning = sken, exceptions.sketted = sket, exceptions.sketting = sket, exceptions.skidded = skid, exceptions.skidding = skid, exceptions.skimmed = skim, exceptions.skimming = skim, exceptions.skinned = skin, exceptions.skinning = skin, exceptions.skipped = skip, exceptions.skipping = skip, exceptions.skivvied = skivvy, exceptions.skydove = skydive, exceptions.slabbed = slab, exceptions.slabbing = slab, exceptions.slagged = slag, exceptions.slagging = slag, exceptions.slain = slay, exceptions.slammed = slam, exceptions.slamming = slam, exceptions.slapped = slap, exceptions.slapping = slap, exceptions.slatted = slat, exceptions.slatting = slat, exceptions.sledding = sled, exceptions.slept = sleep, exceptions.slew = slay, exceptions.slid = slide, exceptions.slidden = slide, exceptions.slipped = slip, exceptions.slipping = slip, exceptions.slitting = slit, exceptions.slogged = slog, exceptions.slogging = slog, exceptions.slopped = slop, exceptions.slopping = slop, exceptions.slotted = slot, exceptions.slotting = slot, exceptions.slugged = slug, exceptions.slugging = slug, exceptions.slummed = slum, exceptions.slumming = slum, exceptions.slung = sling, exceptions.slunk = slink, exceptions.slurred = slur, exceptions.slurring = slur, exceptions.smelt = smell, exceptions.smit = smite, exceptions.smitten = smite, exceptions.smote = smite, exceptions.smutted = smut, exceptions.smutting = smut, exceptions.snagged = snag, exceptions.snagging = snag, exceptions.snapped = snap, exceptions.snapping = snap, exceptions.snedded = sned, exceptions.snedding = sned, exceptions.snipped = snip, exceptions.snipping = snip, exceptions.snivelled = snivel, exceptions.snivelling = snivel, exceptions.snogged = snog, exceptions.snogging = snog, exceptions.snubbed = snub, exceptions.snubbing = snub, exceptions.snuck = sneak, exceptions.snugged = snug, exceptions.snugging = snug, exceptions.sobbed = sob, exceptions.sobbing = sob, exceptions.sodded = sod, exceptions.sodding = sod, exceptions.sold = sell, exceptions.solemnified = solemnify, exceptions.solidified = solidify, exceptions.soothsaid = soothsay, exceptions.sopped = sop, exceptions.sopping = sop, exceptions.sought = seek, exceptions.sown = sow, exceptions.spagged = spag, exceptions.spagging = spag, exceptions.spancelled = spancel, exceptions.spancelling = spancel, exceptions.spanned = span, exceptions.spanning = span, exceptions.sparred = spar, exceptions.sparring = spar, exceptions.spat = spit, exceptions.spatted = spat, exceptions.spatting = spat, exceptions.specified = specify, exceptions.sped = speed, exceptions.speechified = speechify, exceptions.spellbound = spellbind, exceptions.spelt = spell, exceptions.spent = spend, exceptions.spied = spy, exceptions.spilt = spill, exceptions.spinning = spin, exceptions.spiralled = spiral, exceptions.spiralling = spiral, exceptions.spitted = spit, exceptions.spitting = spit, exceptions.splitting = split, exceptions.spoilt = spoil, exceptions.spoke = speak, exceptions.spoken = speak, exceptions.spotlit = spotlight, exceptions.spotted = spot, exceptions.spotting = spot, exceptions.sprang = spring, exceptions.sprigged = sprig, exceptions.sprigging = sprig, exceptions.sprung = spring, exceptions.spudded = spud, exceptions.spudding = spud, exceptions.spun = spin, exceptions.spurred = spur, exceptions.spurring = spur, exceptions.squatted = squat, exceptions.squatting = squat, exceptions.squibbed = squib, exceptions.squibbing = squib, exceptions.squidded = squid, exceptions.squidding = squid, exceptions.squilgee = squeegee, exceptions.stabbed = stab, exceptions.stabbing = stab, exceptions.stank = stink, exceptions.starred = star3, exceptions.starring = star3, exceptions.steadied = steady, exceptions.stellified = stellify, exceptions.stemmed = stem, exceptions.stemming = stem, exceptions.stencilled = stencil, exceptions.stencilling = stencil, exceptions.stepped = step, exceptions.stepping = step, exceptions.stetted = stet, exceptions.stetting = stet, exceptions.stied = sty, exceptions.stilettoeing = stiletto, exceptions.stirred = stir, exceptions.stirring = stir, exceptions.stole = steal, exceptions.stolen = steal, exceptions.stood = stand, exceptions.stopped = stop2, exceptions.stopping = stop2, exceptions.storied = story, exceptions.stotted = stot, exceptions.stotting = stot, exceptions.stove = stave, exceptions.strapped = strap, exceptions.strapping = strap, exceptions.stratified = stratify, exceptions.strewn = strew, exceptions.stridden = stride, exceptions.stripped = strip, exceptions.stripping = strip, exceptions.striven = strive, exceptions.strode = stride, exceptions.stropped = strop, exceptions.stropping = strop, exceptions.strove = strive, exceptions.strown = strow, exceptions.stricken = strike, exceptions.struck = strike, exceptions.strummed = strum, exceptions.strumming = strum, exceptions.strung = string, exceptions.strutted = strut, exceptions.strutting = strut, exceptions.stubbed = stub, exceptions.stubbing = stub, exceptions.stuck = stick, exceptions.studded = stud, exceptions.studding = stud, exceptions.studied = study, exceptions.stultified = stultify, exceptions.stummed = stum, exceptions.stumming = stum, exceptions.stung = sting, exceptions.stunk = stink, exceptions.stunned = stun, exceptions.stunning = stun, exceptions.stupefied = stupefy, exceptions.stymying = stymie, exceptions.subbed = sub, exceptions.subbing = sub, exceptions.subjectified = subjectify, exceptions.subletting = sublet, exceptions.submitted = submit, exceptions.submitting = submit, exceptions.subtotalled = subtotal, exceptions.subtotalling = subtotal, exceptions.sullied = sully, exceptions.sulphuretted = sulphuret, exceptions.sulphuretting = sulphuret, exceptions.summed = sum, exceptions.summing = sum, exceptions.sung = sing, exceptions.sunk = sink, exceptions.sunken = sink, exceptions.sunned = sun, exceptions.sunning = sun, exceptions.supped = sup, exceptions.supping = sup, exceptions.supplied = supply, exceptions.swabbed = swab, exceptions.swabbing = swab, exceptions.swagged = swag, exceptions.swagging = swag, exceptions.swam = swim, exceptions.swapped = swap, exceptions.swapping = swap, exceptions.swatted = swat, exceptions.swatting = swat, exceptions.swept = sweep, exceptions.swigged = swig, exceptions.swigging = swig, exceptions.swimming = swim, exceptions.swivelled = swivel, exceptions.swivelling = swivel, exceptions.swollen = swell, exceptions.swopped = swap, exceptions.swopping = swap, exceptions.swops = swap, exceptions.swore = swear, exceptions.sworn = swear, exceptions.swotted = swot, exceptions.swotting = swot, exceptions.swum = swim, exceptions.swung = swing, exceptions.syllabified = syllabify, exceptions.symbolled = symbol, exceptions.symbolling = symbol, exceptions.tabbed = tab, exceptions.tabbing = tab, exceptions.tagged = tag, exceptions.tagging = tag, exceptions.taken = take, exceptions.talcked = talc, exceptions.talcking = talc, exceptions.tallied = tally, exceptions.tammied = tammy, exceptions.tanned = tan, exceptions.tanning = tan, exceptions.tapped = tap, exceptions.tapping = tap, exceptions.tarred = tar, exceptions.tarried = tarry, exceptions.tarring = tar, exceptions.tasselled = tassel, exceptions.tasselling = tassel, exceptions.tatted = tat, exceptions.tatting = tat, exceptions.taught = teach, exceptions.taxis = taxis, exceptions.taxying = taxi, exceptions.teaselled = teasel, exceptions.teaselling = teasel, exceptions.tedded = ted, exceptions.tedding = ted, exceptions.tepefied = tepefy, exceptions.terrified = terrify, exceptions.testes = testes, exceptions.testified = testify, exceptions.thinned = thin, exceptions.thinning = thin, exceptions.thought = think, exceptions.threw = throw1, exceptions.thriven = thrive, exceptions.throbbed = throb, exceptions.throbbing = throb, exceptions.throve = thrive, exceptions.thrown = throw1, exceptions.thrummed = thrum, exceptions.thrumming = thrum, exceptions.thudded = thud, exceptions.thudding = thud, exceptions.tidied = tidy, exceptions.tinned = tin, exceptions.tinning = tin, exceptions.tinselled = tinsel, exceptions.tinselling = tinsel, exceptions.tipped = tip, exceptions.tipping = tip, exceptions.tittupped = tittup, exceptions.tittupping = tittup, exceptions.toadied = toady, exceptions.togged = tog, exceptions.togging = tog, exceptions.told = tell, exceptions.took = take, exceptions.topped = top, exceptions.topping = top, exceptions.tore = tear, exceptions.torn = tear, exceptions.torrefied = torrefy, exceptions.torrify = torrefy, exceptions.totalled = total, exceptions.totalling = total, exceptions.totted = tot, exceptions.totting = tot, exceptions.towelled = towel, exceptions.towelling = towel, exceptions.trafficked = traffic, exceptions.trafficking = traffic, exceptions.trameled = trammel, exceptions.trameling = trammel, exceptions.tramelled = trammel, exceptions.tramelling = trammel, exceptions.tramels = trammel, exceptions.trammed = tram, exceptions.tramming = tram, exceptions.transferred = transfer, exceptions.transferring = transfer, exceptions.transfixt = transfix, exceptions.tranship = transship, exceptions.transhipped = tranship, exceptions.transhipping = tranship, exceptions.transmitted = transmit, exceptions.transmitting = transmit, exceptions.transmogrified = transmogrify, exceptions.transshipped = transship, exceptions.transshipping = transship, exceptions.trapanned = trapan, exceptions.trapanning = trapan, exceptions.trapped = trap, exceptions.trapping = trap, exceptions.travelled = travel, exceptions.travelling = travel, exceptions.travestied = travesty, exceptions.trekked = trek, exceptions.trekking = trek, exceptions.trepanned = trepan, exceptions.trepanning = trepan, exceptions.tried = try1, exceptions.trigged = trig, exceptions.trigging = trig, exceptions.trimmed = trim2, exceptions.trimming = trim2, exceptions.tripped = trip, exceptions.tripping = trip, exceptions.trod = tread, exceptions.trodden = tread, exceptions.trogged = trog, exceptions.trogging = trog, exceptions.trotted = trot, exceptions.trotting = trot, exceptions.trowelled = trowel, exceptions.trowelling = trowel, exceptions.tugged = tug, exceptions.tugging = tug, exceptions.tumefied = tumefy, exceptions.tunned = tun, exceptions.tunnelled = tunnel, exceptions.tunnelling = tunnel, exceptions.tunning = tun, exceptions.tupped = tup, exceptions.tupping = tup, exceptions.twigged = twig, exceptions.twigging = twig, exceptions.twinned = twin, exceptions.twinning = twin, exceptions.twitted = twit, exceptions.twitting = twit, exceptions.tying = tie, exceptions.typesetting = typeset, exceptions.typewritten = typewrite, exceptions.typewrote = typewrite, exceptions.typified = typify, exceptions.uglified = uglify, exceptions.unbarred = unbar, exceptions.unbarring = unbar, exceptions.unbent = unbend, exceptions.unbound = unbind, exceptions.uncapped = uncap, exceptions.uncapping = uncap, exceptions.unclad = unclothe, exceptions.unclogged = unclog, exceptions.unclogging = unclog, exceptions.underbidding = underbid, exceptions.underbought = underbuy, exceptions.undercutting = undercut, exceptions.underfed = underfeed, exceptions.undergirt = undergird, exceptions.undergone = undergo, exceptions.underlaid = underlay, exceptions.underlain = underlie, exceptions.underlay = underlie, exceptions.underletting = underlet, exceptions.underlying = underlie, exceptions.underpaid = underpay, exceptions.underpinned = underpin, exceptions.underpinning = underpin, exceptions.underpropped = underprop, exceptions.underpropping = underprop, exceptions.undersetting = underset, exceptions.undershot = undershoot, exceptions.undersold = undersell, exceptions.understood = understand, exceptions.understudied = understudy, exceptions.undertaken = undertake, exceptions.undertook = undertake, exceptions.underwent = undergo, exceptions.underwritten = underwrite, exceptions.underwrote = underwrite, exceptions.undid = undo, exceptions.undone = undo, exceptions.unfitted = unfit, exceptions.unfitting = unfit, exceptions.unfroze = unfreeze, exceptions.unfrozen = unfreeze, exceptions.unified = unify, exceptions.unkennelled = unkennel, exceptions.unkennelling = unkennel, exceptions.unknitted = unknit, exceptions.unknitting = unknit, exceptions.unlaid = unlay, exceptions.unlearnt = unlearn, exceptions.unmade = unmake, exceptions.unmanned = unman, exceptions.unmanning = unman, exceptions.unpegged = unpeg, exceptions.unpegging = unpeg, exceptions.unpinned = unpin, exceptions.unpinning = unpin, exceptions.unplugged = unplug, exceptions.unplugging = unplug, exceptions.unravelled = unravel, exceptions.unravelling = unravel, exceptions.unrigged = unrig, exceptions.unrigging = unrig, exceptions.unripped = unrip, exceptions.unripping = unrip, exceptions.unrove = unreeve, exceptions.unsaid = unsay, exceptions.unshipped = unship, exceptions.unshipping = unship, exceptions.unslung = unsling, exceptions.unsnapped = unsnap, exceptions.unsnapping = unsnap, exceptions.unspoke = unspeak, exceptions.unspoken = unspeak, exceptions.unsteadied = unsteady, exceptions.unstepped = unstep, exceptions.unstepping = unstep, exceptions.unstopped = unstop, exceptions.unstopping = unstop, exceptions.unstrung = unstring, exceptions.unstuck = unstick, exceptions.unswore = unswear, exceptions.unsworn = unswear, exceptions.untaught = unteach, exceptions.unthought = unthink, exceptions.untidied = untidy, exceptions.untrod = untread, exceptions.untrodden = untread, exceptions.untying = untie, exceptions.unwound = unwind, exceptions.unwrapped = unwrap, exceptions.unwrapping = unwrap, exceptions.unzipped = unzip2, exceptions.unzipping = unzip2, exceptions.upbuilt = upbuild, exceptions.upheld = uphold, exceptions.uphove = upheave, exceptions.upped = up, exceptions.uppercutting = uppercut, exceptions.upping = up, exceptions.uprisen = uprise, exceptions.uprose = uprise, exceptions.upsetting = upset, exceptions.upsprang = upspring, exceptions.upsprung = upspring, exceptions.upswept = upsweep, exceptions.upswollen = upswell, exceptions.upswung = upswing, exceptions.vagged = vag, exceptions.vagging = vag, exceptions.varied = vary, exceptions.vatted = vat, exceptions.vatting = vat, exceptions.verbified = verbify, exceptions.verified = verify, exceptions.versified = versify, exceptions.vetted = vet, exceptions.vetting = vet, exceptions.victualled = victual, exceptions.victualling = victual, exceptions.vilified = vilify, exceptions.vitrified = vitrify, exceptions.vitriolled = vitriol, exceptions.vitriolling = vitriol, exceptions.vivified = vivify, exceptions.vying = vie, exceptions.wadded = wad, exceptions.waddied = waddy, exceptions.wadding = wad, exceptions.wadsetted = wadset, exceptions.wadsetting = wadset, exceptions.wagged = wag, exceptions.wagging = wag, exceptions.wanned = wan, exceptions.wanning = wan, exceptions.warred = war, exceptions.warring = war, exceptions.was = be, exceptions.waylaid = waylay, exceptions.wearied = weary, exceptions.weatherstripped = weatherstrip, exceptions.weatherstripping = weatherstrip, exceptions.webbed = web, exceptions.webbing = web, exceptions.wedded = wed, exceptions.wedding = wed, exceptions.weed = weed, exceptions.went = go, exceptions.wept = weep, exceptions.were = be, exceptions.wetted = wet, exceptions.wetting = wet, exceptions.whammed = wham, exceptions.whamming = wham, exceptions.whapped = whap, exceptions.whapping = whap, exceptions.whetted = whet, exceptions.whetting = whet, exceptions.whinnied = whinny, exceptions.whipped = whip, exceptions.whipping = whip, exceptions.whipsawn = whipsaw, exceptions.whirred = whir, exceptions.whirring = whir, exceptions.whizzed = whiz, exceptions.whizzes = whiz, exceptions.whizzing = whiz, exceptions.whopped = whop, exceptions.whopping = whop, exceptions.wigged = wig, exceptions.wigging = wig, exceptions.wigwagged = wigwag, exceptions.wigwagging = wigwag, exceptions.wildcatted = wildcat, exceptions.wildcatting = wildcat, exceptions.winning = win, exceptions.winterfed = winterfeed, exceptions.wiredrawn = wiredraw, exceptions.wiredrew = wiredraw, exceptions.withdrawn = withdraw, exceptions.withdrew = withdraw, exceptions.withheld = withhold, exceptions.withstood = withstand, exceptions.woke = wake, exceptions.woken = wake, exceptions.won = win, exceptions.wonned = won, exceptions.wonning = won, exceptions.wore = wear, exceptions.worn = wear, exceptions.worried = worry, exceptions.worshipped = worship, exceptions.worshipping = worship, exceptions.wound = wind, exceptions.wove = weave, exceptions.woven = weave, exceptions.wrapped = wrap2, exceptions.wrapping = wrap2, exceptions.wried = wry, exceptions.written = write, exceptions.wrote = write, exceptions.wrought = work, exceptions.wrung = wring, exceptions.would = will, exceptions.yakked = yak, exceptions.yakking = yak, exceptions.yapped = yap, exceptions.yapping = yap, exceptions.ycleped = clepe, exceptions.yclept = clepe, exceptions.yenned = yen, exceptions.yenning = yen, exceptions.yodelled = yodel, exceptions.yodelling = yodel, exceptions.zapped = zap, exceptions.zapping = zap, exceptions.zigzagged = zigzag, exceptions.zigzagging = zigzag, exceptions.zipped = zip, exceptions.zipping = zip, module2.exports = exceptions; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/lemmatize.js +var require_lemmatize = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/lemmatize.js"(exports2, module2) { + var adjectiveExceptions = require_wn_adjective_exceptions(); + var nounExceptions = require_wn_noun_exceptions(); + var verbExceptions = require_wn_verb_exceptions(); + var lemmatizeAdjective = function(value, cache) { + var lemma = adjectiveExceptions[value]; + return lemma || ((lemma = value.replace(/est$|er$/, "")).length === value.length ? value : cache.hasSamePOS(lemma, "ADJ") ? lemma : (lemma += "e", cache.hasSamePOS(lemma, "ADJ") ? lemma : value)); + }; + var lemmatizeVerb = function(value, cache) { + var lemma = verbExceptions[value]; + if (lemma) + return lemma; + if ((lemma = value.replace(/s$/, "")).length !== value.length && cache.hasSamePOS(lemma, "VERB")) + return lemma; + if ((lemma = value.replace(/ies$/, "y")).length !== value.length && cache.hasSamePOS(lemma, "VERB")) + return lemma; + if ((lemma = value.replace(/es$|ed$|ing$/, "")).length !== value.length) { + if (cache.hasSamePOS(lemma, "VERB")) + return lemma; + if (lemma += "e", cache.hasSamePOS(lemma, "VERB")) + return lemma; + } + return value; + }; + var nounRegexes = [{ replace: /s$/, by: "" }, { replace: /ses$/, by: "s" }, { replace: /xes$/, by: "x" }, { replace: /zes$/, by: "s" }, { replace: /ves$/, by: "f" }, { replace: /ches$/, by: "ch" }, { replace: /shes$/, by: "sh" }, { replace: /ies$/, by: "y" }]; + var lemmatizeNoun = function(value, cache) { + var lemma = nounExceptions[value]; + if (lemma) + return lemma; + lemma = value; + for (let k = 0; k < nounRegexes.length; k += 1) + if ((lemma = value.replace(nounRegexes[k].replace, nounRegexes[k].by)).length !== value.length && cache.hasSamePOS(lemma, "NOUN")) + return lemma; + return value.replace(/men$/, "man"); + }; + var lemmatize = function(value, pos, cache) { + var lemma; + switch (pos) { + case "ADJ": + lemma = lemmatizeAdjective(value, cache); + break; + case "NOUN": + lemma = lemmatizeNoun(value, cache); + break; + case "VERB": + lemma = lemmatizeVerb(value, cache); + break; + default: + lemma = value; + } + return lemma; + }; + module2.exports = lemmatize; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/syllables.js +var require_syllables = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/syllables.js"(exports2, module2) { + var rgx = /[^aeiouy]+/; + var exceptions = /* @__PURE__ */ Object.create(null); + exceptions.adobe = 3, exceptions.anemone = 4, exceptions.anyone = 3, exceptions.apache = 3, exceptions.aphrodite = 4, exceptions.apostrophe = 4, exceptions.ariadne = 4, exceptions.chummed = 1, exceptions.cafe = 2, exceptions.calliope = 4, exceptions.catastrophe = 4, exceptions.chile = 2, exceptions.chloe = 2, exceptions.circe = 2, exceptions.coyote = 3, exceptions.daphne = 2, exceptions.epitome = 4, exceptions.eurydice = 4, exceptions.euterpe = 3, exceptions.every = 2, exceptions.everywhere = 3, exceptions.forever = 3, exceptions.gethsemane = 4, exceptions.guacamole = 4, exceptions.hermione = 4, exceptions.hyperbole = 4, exceptions.jesse = 2, exceptions.jukebox = 2, exceptions.karate = 3, exceptions.peeped = 1, exceptions.moustaches = 2, exceptions.shamefully = 3, exceptions.messieurs = 2, exceptions.satiated = 4, exceptions.sailmaker = 4, exceptions.sheered = 1, exceptions.disinterred = 3, exceptions.propitiatory = 6, exceptions.bepatched = 2, exceptions.particularized = 5, exceptions.caressed = 2, exceptions.trespassed = 2, exceptions.sepulchre = 3, exceptions.flapped = 1, exceptions.hemispheres = 3, exceptions.pencilled = 2, exceptions.motioned = 2, exceptions.machete = 3, exceptions.maybe = 2, exceptions.naive = 2, exceptions.newlywed = 3, exceptions.penelope = 4, exceptions.people = 2, exceptions.persephone = 4, exceptions.phoebe = 2, exceptions.pulse = 1, exceptions.queue = 1, exceptions.recipe = 3, exceptions.riverbed = 3, exceptions.sesame = 3, exceptions.shoreline = 2, exceptions.simile = 3, exceptions.snuffleupagus = 5, exceptions.sometimes = 2, exceptions.syncope = 3, exceptions.poleman = 2, exceptions.slandered = 2, exceptions.sombre = 2, exceptions.etc = 4, exceptions.sidespring = 2, exceptions.mimes = 1, exceptions.effaces = 2, exceptions.mr = 2, exceptions.mrs = 2, exceptions.ms = 1, exceptions.dr = 2, exceptions.st = 1, exceptions.sr = 2, exceptions.jr = 2, exceptions.truckle = 2, exceptions.foamed = 1, exceptions.fringed = 2, exceptions.clattered = 2, exceptions.capered = 2, exceptions.mangroves = 2, exceptions.suavely = 2, exceptions.reclined = 2, exceptions.brutes = 1, exceptions.effaced = 2, exceptions.quivered = 2, exceptions.veriest = 3, exceptions.sententiously = 4, exceptions.deafened = 2, exceptions.manoeuvred = 3, exceptions.unstained = 2, exceptions.gaped = 1, exceptions.stammered = 2, exceptions.shivered = 2, exceptions.discoloured = 3, exceptions.gravesend = 2, exceptions.lb = 1, exceptions.unexpressed = 3, exceptions.greyish = 2, exceptions.unostentatious = 5, exceptions.tamale = 3, exceptions.waterbed = 3, exceptions.wednesday = 2, exceptions.yosemite = 4; + var subtract = [/cial/, /tia/, /cius/, /cious/, /gui/, /ion/, /iou/, /sia$/, /.ely$/, /.[^aeiuoycgltdb]{2,}ed$/, /(?:s[chkls]|g[hn])ed$/, /(?:[aeiouy](?:[bdfklmnprstvy]|ch|dg|g[hn]|lch|s[cklst]))es$/, /(?:[aeiouy](?:[bcfgklmnprsvwxyz]|s[chkls]))ed$/]; + var add = [/ia/, /riet/, /dien/, /iu/, /io/, /ii/, /[aeiouy]bl$/, /mbl$/, /[aeiou]{3}/, /^mc/, /ism$/, /(.)(?!\\1)([aeiouy])\\2l$/, /[^l]llien/, /^coad./, /^coag./, /^coal./, /^coax./, /(.)(?!\\1)[gq]ua(.)(?!\\2)[aeiou]/, /dnt$/, /eings?$/, /react?$/, /[aeiouy]sh?e[rs]$/, /(?:eo|asm|dea|gean|oa|ua|uity|thm|ism|orbed|shred)$/]; + var syllables = function(word) { + if (word.length < 3) + return 1; + if (exceptions[word]) + return exceptions[word]; + const w = word.replace(/e$/, ""); + let count = w.split(rgx).filter((s) => s).length; + for (let k = 0; k < add.length; k += 1) + add[k].test(w) && (count += 1); + for (let k = 0; k < subtract.length; k += 1) + subtract[k].test(w) && (count -= 1); + return count < 1 ? 1 : count; + }; + module2.exports = syllables; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/readability-stats.js +var require_readability_stats = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/readability-stats.js"(exports2, module2) { + var syllables = require_syllables(); + var consts = require_constants5(); + var tkSize = consts.tkSize; + var readabilityStats = function(rdd, its) { + var token, cache = rdd.cache, tokens = rdd.tokens, numOfSentences = rdd.sentences.length, numOfWords = 0, numOfSyllables = 0, complexWords = /* @__PURE__ */ Object.create(null), fres = 121; + for (let k = 0; k < tokens.length; k += 1) { + if ("word" === its.type(k, tokens, cache)) { + token = its.normal(k, tokens, cache), numOfWords += 1; + const ns = syllables(token.toLowerCase()); + numOfSyllables += ns, ns > 3 && (complexWords[token] = ns - 3); + } + fres = 206.835 - 1.015 * numOfWords / numOfSentences - 84.6 * numOfSyllables / numOfWords; + } + const readingTimeInMins = numOfWords / (200 + fres); + return { fres: Math.round(fres), sentiment: +rdd.document[3].toFixed(2), numOfTokens: tokens.length / tkSize, numOfWords, numOfComplexWords: Object.keys(complexWords).length, complexWords, numOfSentences, readingTimeMins: Math.floor(readingTimeInMins), readingTimeSecs: Math.round(60 * (readingTimeInMins - Math.floor(readingTimeInMins))) }; + }; + module2.exports = readabilityStats; + } +}); + +// ../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/model.js +var require_model = __commonJS({ + "../node_modules/.pnpm/wink-eng-lite-web-model@1.5.0_wink-nlp@1.13.1/node_modules/wink-eng-lite-web-model/dist/model.js"(exports2, module2) { + var loadCoreModel = require_load_core_model(); + var loadNERModel = require_load_ner_model(); + var loadSBDModel = require_load_sbd_model(); + var loadPOSModel = require_load_pos_model(); + var loadNEGATIONModel = require_load_negation_model(); + var loadSAModel = require_load_sa_model(); + var loadCERMetaModel = require_load_cer_meta_model(); + var featureFn = require_feature(); + var stem = require_porter_stemmer(); + var lemmatize = require_lemmatize(); + var readabilityStats = require_readability_stats(); + var model = /* @__PURE__ */ Object.create(null); + model.core = loadCoreModel, model.sbd = loadSBDModel, model.pos = loadPOSModel, model.ner = loadNERModel, model.negation = loadNEGATIONModel, model.sa = loadSAModel, model.metaCER = loadCERMetaModel, model.featureFn = featureFn, model.addons = /* @__PURE__ */ Object.create(null), model.addons.stem = stem, model.addons.lemmatize = lemmatize, model.addons.readabilityStats = readabilityStats, model.addons.wordVectors = void 0, module2.exports = model; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-sentences.js +var require_string_sentences = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-sentences.js"(exports2, module2) { + var winkNLP = require_wink_nlp(); + var model = require_model(); + var nlp = winkNLP(model, ["sbd"]); + var punkt = function(paragraph) { + return nlp.readDoc(paragraph).sentences().out(); + }; + module2.exports = punkt; + } +}); + +// ../node_modules/.pnpm/wink-helpers@2.0.0/node_modules/wink-helpers/src/wink-helpers.js +var require_wink_helpers = __commonJS({ + "../node_modules/.pnpm/wink-helpers@2.0.0/node_modules/wink-helpers/src/wink-helpers.js"(exports2, module2) { + var helpers = /* @__PURE__ */ Object.create(null); + var productReducer = function(prev, curr) { + var c, cmax = curr.length; + var p, pmax = prev.length; + var result = []; + for (p = 0; p < pmax; p += 1) { + for (c = 0; c < cmax; c += 1) { + result.push(prev[p].concat(curr[c])); + } + } + return result; + }; + helpers.array = /* @__PURE__ */ Object.create(null); + helpers.array.isArray = function(v) { + return v !== void 0 && v !== null && Object.prototype.toString.call(v) === "[object Array]"; + }; + helpers.array.ascending = function(a, b) { + return a > b ? 1 : a === b ? 0 : -1; + }; + helpers.array.descending = function(a, b) { + return b > a ? 1 : b === a ? 0 : -1; + }; + helpers.array.ascendingOnKey = function(a, b) { + return a[0] > b[0] ? 1 : a[0] === b[0] ? 0 : -1; + }; + helpers.array.descendingOnKey = function(a, b) { + return b[0] > a[0] ? 1 : b[0] === a[0] ? 0 : -1; + }; + helpers.array.ascendingOnValue = function(a, b) { + return a[1] > b[1] ? 1 : a[1] === b[1] ? 0 : -1; + }; + helpers.array.descendingOnValue = function(a, b) { + return b[1] > a[1] ? 1 : b[1] === a[1] ? 0 : -1; + }; + helpers.array.ascendingOn = function(accessor1, accessor2) { + if (accessor2) { + return function(a, b) { + return a[accessor1][accessor2] > b[accessor1][accessor2] ? 1 : a[accessor1][accessor2] === b[accessor1][accessor2] ? 0 : -1; + }; + } + return function(a, b) { + return a[accessor1] > b[accessor1] ? 1 : a[accessor1] === b[accessor1] ? 0 : -1; + }; + }; + helpers.array.descendingOn = function(accessor1, accessor2) { + if (accessor2) { + return function(a, b) { + return b[accessor1][accessor2] > a[accessor1][accessor2] ? 1 : b[accessor1][accessor2] === a[accessor1][accessor2] ? 0 : -1; + }; + } + return function(a, b) { + return b[accessor1] > a[accessor1] ? 1 : b[accessor1] === a[accessor1] ? 0 : -1; + }; + }; + helpers.array.pluck = function(a, key, limit) { + var k, plucked; + k = a.length; + var i = key || 0; + var lim = limit || k; + if (lim > k) + lim = k; + plucked = new Array(lim); + for (k = 0; k < lim; k += 1) + plucked[k] = a[k][i]; + return plucked; + }; + helpers.array.product = function(a) { + return a.reduce(productReducer, [[]]); + }; + helpers.array.shuffle = function(array) { + var a = array; + var balance = a.length; + var candidate; + var temp; + while (balance) { + candidate = Math.floor(Math.random() * balance); + balance -= 1; + temp = a[balance]; + a[balance] = a[candidate]; + a[candidate] = temp; + } + return a; + }; + var objectKeys = Object.keys; + var objectCreate = Object.create; + helpers.object = /* @__PURE__ */ Object.create(null); + helpers.object.isObject = function(v) { + return v && Object.prototype.toString.call(v) === "[object Object]" ? true : false; + }; + helpers.object.keys = function(obj2) { + return objectKeys(obj2); + }; + helpers.object.size = function(obj2) { + return objectKeys(obj2).length; + }; + helpers.object.values = function(obj2) { + var keys = helpers.object.keys(obj2); + var length = keys.length; + var values = new Array(length); + for (var i = 0; i < length; i += 1) { + values[i] = obj2[keys[i]]; + } + return values; + }; + helpers.object.valueFreq = function(obj2) { + var keys = helpers.object.keys(obj2); + var length = keys.length; + var val; + var vf = objectCreate(null); + for (var i = 0; i < length; i += 1) { + val = obj2[keys[i]]; + vf[val] = 1 + (vf[val] || 0); + } + return vf; + }; + helpers.object.table = function(obj2, f) { + var keys = helpers.object.keys(obj2); + var length = keys.length; + var pairs = new Array(length); + var ak, av; + for (var i = 0; i < length; i += 1) { + ak = keys[i]; + av = obj2[ak]; + if (typeof f === "function") + f(av); + pairs[i] = [ak, av]; + } + return pairs; + }; + helpers.validate = /* @__PURE__ */ Object.create(null); + helpers.validate.isObject = helpers.object.isObject; + helpers.validate.isArray = helpers.array.isArray; + helpers.validate.isFiniteInteger = function(n) { + return typeof n === "number" && !isNaN(n) && isFinite(n) && n === Math.round(n); + }; + helpers.validate.isFiniteNumber = function(n) { + return typeof n === "number" && !isNaN(n) && isFinite(n); + }; + helpers.validate.cross = function(classLabels) { + const unknown = "unknown"; + var evaluated = false; + var cm; + var precision; + var recall; + var fmeasure; + var labels; + var labelCount; + var labelsObj = /* @__PURE__ */ Object.create(null); + var methods = /* @__PURE__ */ Object.create(null); + var reset = function() { + evaluated = false; + cm = /* @__PURE__ */ Object.create(null); + precision = /* @__PURE__ */ Object.create(null); + recall = /* @__PURE__ */ Object.create(null); + fmeasure = /* @__PURE__ */ Object.create(null); + for (let i = 0; i < labelCount; i += 1) { + const row = labels[i]; + labelsObj[row] = true; + cm[row] = /* @__PURE__ */ Object.create(null); + precision[row] = 0; + recall[row] = 0; + fmeasure[row] = 0; + for (let j = 0; j < labelCount; j += 1) { + const col = labels[j]; + cm[row][col] = 0; + } + } + }; + var evaluate = function(truth, guess) { + if (guess === unknown || !labelsObj[truth] || !labelsObj[guess]) + return false; + if (guess === truth) { + cm[truth][guess] += 1; + } else { + cm[guess][truth] += 1; + } + evaluated = true; + return true; + }; + var metrics = function() { + if (!evaluated) + return null; + var n = /* @__PURE__ */ Object.create(null); + var pd = /* @__PURE__ */ Object.create(null); + var rd = /* @__PURE__ */ Object.create(null); + var col, row; + var i, j; + var avgPrecision = 0; + var avgRecall = 0; + var avgFMeasure = 0; + for (i = 0; i < labelCount; i += 1) { + row = labels[i]; + for (j = 0; j < labelCount; j += 1) { + col = labels[j]; + if (row === col) { + n[row] = cm[row][col]; + } + pd[row] = cm[row][col] + (pd[row] || 0); + rd[row] = cm[col][row] + (rd[row] || 0); + } + } + for (i = 0; i < labelCount; i += 1) { + row = labels[i]; + precision[row] = +(n[row] / pd[row]).toFixed(4); + if (isNaN(precision[row])) + precision[row] = 0; + recall[row] = +(n[row] / rd[row]).toFixed(4); + if (isNaN(recall[row])) + recall[row] = 0; + fmeasure[row] = +(2 * precision[row] * recall[row] / (precision[row] + recall[row])).toFixed(4); + if (isNaN(fmeasure[row])) + fmeasure[row] = 0; + } + for (i = 0; i < labelCount; i += 1) { + avgPrecision += precision[labels[i]] / labelCount; + avgRecall += recall[labels[i]] / labelCount; + avgFMeasure += fmeasure[labels[i]] / labelCount; + } + return { + // Macro-averaged metrics. + avgPrecision: +avgPrecision.toFixed(4), + avgRecall: +avgRecall.toFixed(4), + avgFMeasure: +avgFMeasure.toFixed(4), + details: { + // Confusion Matrix. + confusionMatrix: cm, + // Label wise metrics details, from those averages were computed. + precision, + recall, + fmeasure + } + }; + }; + if (!helpers.validate.isArray(classLabels)) { + throw Error("cross validate: class labels must be an array."); + } + if (classLabels.length < 2) { + throw Error("cross validate: at least 2 class labels are required."); + } + labels = classLabels; + labelCount = labels.length; + reset(); + methods.reset = reset; + methods.evaluate = evaluate; + methods.metrics = metrics; + return methods; + }; + helpers.string = /* @__PURE__ */ Object.create(null); + var rgxDiacritical = /[\u0300-\u036f]/g; + helpers.string.normalize = function(str) { + return str.toLowerCase().normalize("NFD").replace(rgxDiacritical, ""); + }; + module2.exports = helpers; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-compose-corpus.js +var require_string_compose_corpus = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-compose-corpus.js"(exports2, module2) { + var helpers = require_wink_helpers(); + var returnQuotedTextExtractor = require_helper_return_quoted_text_extractor(); + var extractQuotedText = returnQuotedTextExtractor("[", "]"); + var composeCorpus = function(str) { + if (!str || typeof str !== "string") + return []; + var quotedTextElems = extractQuotedText(str); + var corpus = []; + var finalCorpus = []; + if (!quotedTextElems) + return []; + quotedTextElems.forEach(function(e) { + corpus.push(e.split("|")); + }); + helpers.array.product(corpus).forEach(function(e) { + finalCorpus.push(e.join(" ")); + }); + return finalCorpus; + }; + module2.exports = composeCorpus; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-tokenize0.js +var require_string_tokenize0 = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-tokenize0.js"(exports2, module2) { + var removeElisions = require_string_remove_elisions(); + var amplifyNotElision = require_string_amplify_not_elision(); + var rgx = require_util_regexes(); + var tokenize0 = function(str) { + var tokens = removeElisions(amplifyNotElision(str)).replace(rgx.cannot, "$1 $2").split(rgx.nonWords); + if (tokens[0] === "") + tokens.shift(); + if (tokens[tokens.length - 1] === "") + tokens.pop(); + return tokens; + }; + module2.exports = tokenize0; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-tokenize.js +var require_string_tokenize = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-tokenize.js"(exports2, module2) { + var winkNLP = require_wink_nlp(); + var model = require_model(); + var nlp = winkNLP(model, []); + var its = nlp.its; + var tokenize = function(sentence, detailed) { + const doc = nlp.readDoc(sentence.replace("...", "\u2026")); + const tokens = []; + if (detailed) { + doc.tokens().each((t) => { + tokens.push({ value: t.out(), tag: t.out(its.type) }); + }); + return tokens; + } + return doc.tokens().out(); + }; + module2.exports = tokenize; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/phonetize_regexes.js +var require_phonetize_regexes = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/phonetize_regexes.js"(exports2, module2) { + var rgx = /* @__PURE__ */ Object.create(null); + rgx.repeatingChars = /([^c])\1/g; + rgx.kngnPairs = /^(kn|gn|pn|ae|wr)/; + rgx.__vowels = /(?!^)[aeiou]/g; + rgx.ough = /ough$/; + rgx.dge = /dge/g; + rgx.dgi = /dgi/g; + rgx.dgy = /dgy/g; + rgx.sch = /sch/g; + rgx.sci = /sci/g; + rgx.sce = /sce/g; + rgx.scy = /scy/g; + rgx.tio = /tio/g; + rgx.tia = /tia/g; + rgx.tch = /tch/g; + rgx.mb_ = /mb$/; + rgx.cq = /cq/g; + rgx.ck = /ck/g; + rgx.ce = /ce/g; + rgx.ci = /ci/g; + rgx.cy = /cy/g; + rgx.ph = /ph/g; + rgx.sh = /sh|sio|sia/g; + rgx.vrnotvy = /([aeiou])(r)([^aeiouy])/g; + rgx.th = /th/g; + rgx.cnoth = /(c)([^h])/g; + rgx.q = /q/g; + rgx._x = /^x/; + rgx.x = /x/g; + rgx.ynotv = /(y)([^aeiou])/g; + rgx.y_ = /y$/; + rgx.z = /z/g; + module2.exports = rgx; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-phonetize.js +var require_string_phonetize = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-phonetize.js"(exports2, module2) { + var phnrgx = require_phonetize_regexes(); + var phonetize = function(word) { + var p = word.toLowerCase(); + p = p.replace(phnrgx.repeatingChars, "$1"); + if (phnrgx.kngnPairs.test(p)) { + p = p.substr(1, p.length - 1); + } + p = p.replace(phnrgx.ough, "f").replace(phnrgx.dge, "je").replace(phnrgx.dgi, "ji").replace(phnrgx.dgy, "jy").replace(phnrgx.sch, "sk").replace(phnrgx.sci, "si").replace(phnrgx.sce, "se").replace(phnrgx.scy, "sy").replace(phnrgx.tch, "ch").replace(phnrgx.tio, "sh").replace(phnrgx.tia, "sh").replace(phnrgx.mb_, "m").replace(phnrgx.ce, "se").replace(phnrgx.ci, "si").replace(phnrgx.cy, "sy").replace(phnrgx.cq, "q").replace(phnrgx.ck, "k").replace(phnrgx.ph, "f").replace(phnrgx.th, "0").replace(phnrgx.cnoth, "k$2").replace(phnrgx.q, "k").replace(phnrgx._x, "s").replace(phnrgx.x, "ks").replace(phnrgx.sh, "x").replace(phnrgx.ynotv, "$2").replace(phnrgx.y_, "").replace(phnrgx.z, "s").replace(phnrgx.__vowels, ""); + return p; + }; + module2.exports = phonetize; + } +}); + +// ../node_modules/.pnpm/wink-distance@2.0.2/node_modules/wink-distance/src/soundex.js +var require_soundex = __commonJS({ + "../node_modules/.pnpm/wink-distance@2.0.2/node_modules/wink-distance/src/soundex.js"(exports2, module2) { + var soundexMap = { + A: 0, + E: 0, + I: 0, + O: 0, + U: 0, + Y: 0, + B: 1, + F: 1, + P: 1, + V: 1, + C: 2, + G: 2, + J: 2, + K: 2, + Q: 2, + S: 2, + X: 2, + Z: 2, + D: 3, + T: 3, + L: 4, + M: 5, + N: 5, + R: 6 + }; + var soundex = function(word, maxLength) { + var s = word.length ? word.toUpperCase() : "?"; + var i, imax = s.length; + var sound = []; + var ch, code, prevCode = 9; + var maxLen = maxLength || 4; + for (i = 0; i < imax; i += 1) { + ch = s[i]; + code = soundexMap[ch]; + if (i) { + if (code && code !== prevCode) { + sound.push(code); + } else if (code !== 0) { + code = prevCode; + } + } else { + sound.push(ch); + } + prevCode = code; + } + s = sound.join(""); + if (s.length < 4) + s += "000"; + return s.substr(0, maxLen); + }; + module2.exports = soundex; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-soundex.js +var require_string_soundex = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/string-soundex.js"(exports2, module2) { + var sndx = require_soundex(); + var soundex = function(word, maxLength) { + return sndx(word, maxLength); + }; + module2.exports = soundex; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-stem.js +var require_tokens_stem = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-stem.js"(exports2, module2) { + var porter2Stemmer = require_wink_porter2_stemmer(); + var stem = function(tokens) { + return tokens.map(porter2Stemmer); + }; + module2.exports = stem; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-phonetize.js +var require_tokens_phonetize = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-phonetize.js"(exports2, module2) { + var stringPhonetize = require_string_phonetize(); + var phonetize = function(tokens) { + return tokens.map(stringPhonetize); + }; + module2.exports = phonetize; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-soundex.js +var require_tokens_soundex = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-soundex.js"(exports2, module2) { + var stringSoundex = require_string_soundex(); + var soundex = function(tokens) { + return tokens.map((t) => stringSoundex(t)); + }; + module2.exports = soundex; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/dictionaries/stop_words.json +var require_stop_words = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/dictionaries/stop_words.json"(exports2, module2) { + module2.exports = [ + "i", + "me", + "my", + "myself", + "we", + "our", + "ours", + "ourselves", + "you", + "your", + "yours", + "yourself", + "yourselves", + "he", + "him", + "his", + "himself", + "she", + "her", + "hers", + "herself", + "it", + "its", + "itself", + "they", + "them", + "their", + "theirs", + "themselves", + "what", + "which", + "who", + "whom", + "this", + "that", + "these", + "those", + "am", + "is", + "are", + "was", + "were", + "be", + "been", + "being", + "have", + "has", + "had", + "having", + "do", + "does", + "did", + "doing", + "would", + "should", + "could", + "ought", + "i'm", + "you're", + "he's", + "she's", + "it's", + "we're", + "they're", + "i've", + "you've", + "we've", + "they've", + "i'd", + "you'd", + "he'd", + "she'd", + "we'd", + "they'd", + "i'll", + "you'll", + "he'll", + "she'll", + "we'll", + "they'll", + "let's", + "that's", + "who's", + "what's", + "here's", + "there's", + "when's", + "where's", + "why's", + "how's", + "a", + "an", + "the", + "and", + "but", + "if", + "or", + "because", + "as", + "until", + "while", + "of", + "at", + "by", + "for", + "with", + "about", + "against", + "between", + "into", + "through", + "during", + "before", + "after", + "above", + "below", + "to", + "from", + "up", + "down", + "in", + "out", + "on", + "off", + "over", + "under", + "again", + "further", + "then", + "once", + "here", + "there", + "when", + "where", + "why", + "how", + "all", + "any", + "both", + "each", + "few", + "more", + "most", + "other", + "some", + "such", + "only", + "own", + "same", + "so", + "than", + "too", + "very" + ]; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-remove-words.js +var require_tokens_remove_words = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-remove-words.js"(exports2, module2) { + var defaultStopWords = require_stop_words(); + var words = require_helper_return_words_filter(); + defaultStopWords = words(defaultStopWords); + var removeWords = function(tokens, stopWords) { + var givenStopWords = stopWords || defaultStopWords; + return tokens.filter(givenStopWords.exclude); + }; + module2.exports = removeWords; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-bow.js +var require_tokens_bow = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-bow.js"(exports2, module2) { + var bagOfWords = function(tokens, logCounts, ifn, idx) { + var bow1 = /* @__PURE__ */ Object.create(null), i, imax, token, words; + for (i = 0, imax = tokens.length; i < imax; i += 1) { + token = tokens[i]; + if (typeof ifn === "function" && !bow1[token]) { + ifn(token, idx); + } + bow1[token] = 1 + (bow1[token] || 0); + } + if (!logCounts) + return bow1; + words = Object.keys(bow1); + for (i = 0, imax = words.length; i < imax; i += 1) { + bow1[words[i]] = Math.log2(bow1[words[i]] + 1); + } + return bow1; + }; + module2.exports = bagOfWords; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-sow.js +var require_tokens_sow = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-sow.js"(exports2, module2) { + var setOfWords = function(tokens, ifn, idx) { + var tset = new Set(tokens); + if (typeof ifn === "function") { + tset.forEach(function(m) { + ifn(m, idx); + }); + } + return tset; + }; + module2.exports = setOfWords; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-propagate-negations.js +var require_tokens_propagate_negations = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-propagate-negations.js"(exports2, module2) { + var rgx = require_util_regexes(); + var propagateNegations = function(tokens, upto) { + var i, imax, j, jmax; + var tkns = tokens; + var limit = upto || 2; + for (i = 0, imax = tkns.length; i < imax; i += 1) { + if (rgx.negations.test(tkns[i])) { + for (j = i + 1, jmax = Math.min(imax, i + limit + 1); j < jmax; j += 1) { + if (/[\,\.\;\:\!\?]/.test(tkns[j])) + break; + tkns[j] = "!" + tkns[j]; + } + i = j; + } + } + return tkns; + }; + module2.exports = propagateNegations; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-bigrams.js +var require_tokens_bigrams = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-bigrams.js"(exports2, module2) { + var bigrams = function(tokens) { + var bgs = []; + var i, imax; + for (i = 0, imax = tokens.length - 1; i < imax; i += 1) { + bgs.push([tokens[i], tokens[i + 1]]); + } + return bgs; + }; + module2.exports = bigrams; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-append-bigrams.js +var require_tokens_append_bigrams = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/tokens-append-bigrams.js"(exports2, module2) { + var appendBigrams = function(tokens) { + var i, imax; + for (i = 0, imax = tokens.length - 1; i < imax; i += 1) { + tokens.push(tokens[i] + "_" + tokens[i + 1]); + } + return tokens; + }; + module2.exports = appendBigrams; + } +}); + +// ../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/wink-nlp-utils.js +var require_wink_nlp_utils = __commonJS({ + "../node_modules/.pnpm/wink-nlp-utils@2.1.0/node_modules/wink-nlp-utils/src/wink-nlp-utils.js"(exports2, module2) { + var porter2Stemmer = require_wink_porter2_stemmer(); + var prepare = /* @__PURE__ */ Object.create(null); + prepare.helper = /* @__PURE__ */ Object.create(null); + prepare.helper.returnWordsFilter = require_helper_return_words_filter(); + prepare.helper.words = prepare.helper.returnWordsFilter; + prepare.helper.index = require_helper_return_indexer(); + prepare.helper.returnIndexer = prepare.helper.index; + prepare.helper.returnQuotedTextExtractor = require_helper_return_quoted_text_extractor(); + prepare.string = /* @__PURE__ */ Object.create(null); + prepare.string.lowerCase = require_string_lower_case(); + prepare.string.upperCase = require_string_upper_case(); + prepare.string.trim = require_string_trim(); + prepare.string.removeExtraSpaces = require_string_remove_extra_spaces(); + prepare.string.retainAlphaNums = require_string_retain_alpha_nums(); + prepare.string.extractPersonsName = require_string_extract_persons_name(); + prepare.string.extractRunOfCapitalWords = require_string_extract_run_of_capital_words(); + prepare.string.removePunctuations = require_string_remove_punctuations(); + prepare.string.removeSplChars = require_string_remove_spl_chars(); + prepare.string.removeHTMLTags = require_string_remove_html_tags(); + prepare.string.removeElisions = require_string_remove_elisions(); + prepare.string.splitElisions = require_string_split_elisions(); + prepare.string.amplifyNotElision = require_string_amplify_not_elision(); + prepare.string.marker = require_string_marker(); + prepare.string.soc = require_string_soc(); + prepare.string.setOfChars = require_string_soc(); + prepare.string.ngram = require_string_ngram(); + prepare.string.edgeNGrams = require_string_edge_ngrams(); + prepare.string.bong = require_string_bong(); + prepare.string.bagOfNGrams = require_string_bong(); + prepare.string.song = require_string_song(); + prepare.string.setOfNGrams = require_string_song(); + prepare.string.sentences = require_string_sentences(); + prepare.string.composeCorpus = require_string_compose_corpus(); + prepare.string.tokenize0 = require_string_tokenize0(); + prepare.string.tokenize = require_string_tokenize(); + prepare.string.stem = porter2Stemmer; + prepare.string.phonetize = require_string_phonetize(); + prepare.string.soundex = require_string_soundex(); + prepare.tokens = /* @__PURE__ */ Object.create(null); + prepare.tokens.stem = require_tokens_stem(); + prepare.tokens.phonetize = require_tokens_phonetize(); + prepare.tokens.soundex = require_tokens_soundex(); + prepare.tokens.removeWords = require_tokens_remove_words(); + prepare.tokens.bow = require_tokens_bow(); + prepare.tokens.bagOfWords = require_tokens_bow(); + prepare.tokens.sow = require_tokens_sow(); + prepare.tokens.setOfWords = require_tokens_sow(); + prepare.tokens.propagateNegations = require_tokens_propagate_negations(); + prepare.tokens.bigrams = require_tokens_bigrams(); + prepare.tokens.appendBigrams = require_tokens_append_bigrams(); + module2.exports = prepare; + } +}); + +// ../node_modules/.pnpm/@fortaine+fetch-event-source@3.0.6/node_modules/@fortaine/fetch-event-source/lib/cjs/parse.cjs +var require_parse4 = __commonJS({ + "../node_modules/.pnpm/@fortaine+fetch-event-source@3.0.6/node_modules/@fortaine/fetch-event-source/lib/cjs/parse.cjs"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getMessages = exports2.getLines = exports2.getBytes = void 0; + async function getBytes(stream5, onChunk) { + const reader = stream5.getReader(); + let result; + while (!(result = await reader.read()).done) { + onChunk(result.value); + } + } + exports2.getBytes = getBytes; + function getLines(onLine) { + let buffer2; + let position; + let fieldLength; + let discardTrailingNewline = false; + return function onChunk(arr) { + if (buffer2 === void 0) { + buffer2 = arr; + position = 0; + fieldLength = -1; + } else { + buffer2 = concat(buffer2, arr); + } + const bufLength = buffer2.length; + let lineStart = 0; + while (position < bufLength) { + if (discardTrailingNewline) { + if (buffer2[position] === 10) { + lineStart = ++position; + } + discardTrailingNewline = false; + } + let lineEnd = -1; + for (; position < bufLength && lineEnd === -1; ++position) { + switch (buffer2[position]) { + case 58: + if (fieldLength === -1) { + fieldLength = position - lineStart; + } + break; + case 13: + discardTrailingNewline = true; + case 10: + lineEnd = position; + break; + } + } + if (lineEnd === -1) { + break; + } + onLine(buffer2.subarray(lineStart, lineEnd), fieldLength); + lineStart = position; + fieldLength = -1; + } + if (lineStart === bufLength) { + buffer2 = void 0; + } else if (lineStart !== 0) { + buffer2 = buffer2.subarray(lineStart); + position -= lineStart; + } + }; + } + exports2.getLines = getLines; + function getMessages(onMessage, onId, onRetry) { + let message = newMessage(); + const decoder = new TextDecoder(); + return function onLine(line, fieldLength) { + if (line.length === 0) { + onMessage === null || onMessage === void 0 ? void 0 : onMessage(message); + message = newMessage(); + } else if (fieldLength > 0) { + const field = decoder.decode(line.subarray(0, fieldLength)); + const valueOffset = fieldLength + (line[fieldLength + 1] === 32 ? 2 : 1); + const value = decoder.decode(line.subarray(valueOffset)); + switch (field) { + case "data": + message.data = message.data ? message.data + "\n" + value : value; + break; + case "event": + message.event = value; + break; + case "id": + onId === null || onId === void 0 ? void 0 : onId(message.id = value); + break; + case "retry": + const retry = parseInt(value, 10); + if (!isNaN(retry)) { + onRetry === null || onRetry === void 0 ? void 0 : onRetry(message.retry = retry); + } + break; + } + } + }; + } + exports2.getMessages = getMessages; + function concat(a, b) { + const res = new Uint8Array(a.length + b.length); + res.set(a); + res.set(b, a.length); + return res; + } + function newMessage() { + return { + data: "", + event: "", + id: "", + retry: void 0 + }; + } + } +}); + +// ../node_modules/.pnpm/@fortaine+fetch-event-source@3.0.6/node_modules/@fortaine/fetch-event-source/lib/cjs/fetch.cjs +var require_fetch2 = __commonJS({ + "../node_modules/.pnpm/@fortaine+fetch-event-source@3.0.6/node_modules/@fortaine/fetch-event-source/lib/cjs/fetch.cjs"(exports2) { + "use strict"; + var __rest = exports2 && exports2.__rest || function(s, e) { + var t = {}; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.fetchEventSource = exports2.EventStreamContentType = void 0; + var parse_js_1 = require_parse4(); + exports2.EventStreamContentType = "text/event-stream"; + var DefaultRetryInterval = 1e3; + var LastEventId = "last-event-id"; + function fetchEventSource2(input, _a) { + var { signal: inputSignal, headers: inputHeaders, onopen: inputOnOpen, onmessage, onclose, onerror, openWhenHidden, fetch: inputFetch } = _a, rest = __rest(_a, ["signal", "headers", "onopen", "onmessage", "onclose", "onerror", "openWhenHidden", "fetch"]); + return new Promise((resolve8, reject) => { + const headers = Object.assign({}, inputHeaders); + if (!headers.accept) { + headers.accept = exports2.EventStreamContentType; + } + let curRequestController; + function onVisibilityChange() { + curRequestController.abort(); + if (!document.hidden) { + create2(); + } + } + if (typeof document !== "undefined" && !openWhenHidden) { + document.addEventListener("visibilitychange", onVisibilityChange); + } + let retryInterval = DefaultRetryInterval; + let retryTimer = 0; + function dispose() { + if (typeof document !== "undefined" && !openWhenHidden) { + document.removeEventListener("visibilitychange", onVisibilityChange); + } + clearTimeout(retryTimer); + curRequestController.abort(); + } + inputSignal === null || inputSignal === void 0 ? void 0 : inputSignal.addEventListener("abort", () => { + dispose(); + resolve8(); + }); + const fetchFn = inputFetch !== null && inputFetch !== void 0 ? inputFetch : fetch; + const onopen = inputOnOpen !== null && inputOnOpen !== void 0 ? inputOnOpen : defaultOnOpen; + async function create2() { + var _a2; + curRequestController = new AbortController(); + try { + const response = await fetchFn(input, Object.assign(Object.assign({}, rest), { headers, signal: curRequestController.signal })); + await onopen(response); + await (0, parse_js_1.getBytes)(response.body, (0, parse_js_1.getLines)((0, parse_js_1.getMessages)(onmessage, (id) => { + if (id) { + headers[LastEventId] = id; + } else { + delete headers[LastEventId]; + } + }, (retry) => { + retryInterval = retry; + }))); + onclose === null || onclose === void 0 ? void 0 : onclose(); + dispose(); + resolve8(); + } catch (err2) { + if (!curRequestController.signal.aborted) { + try { + const interval = (_a2 = onerror === null || onerror === void 0 ? void 0 : onerror(err2)) !== null && _a2 !== void 0 ? _a2 : retryInterval; + clearTimeout(retryTimer); + retryTimer = setTimeout(create2, interval); + } catch (innerErr) { + dispose(); + reject(innerErr); + } + } + } + } + create2(); + }); + } + exports2.fetchEventSource = fetchEventSource2; + function defaultOnOpen(response) { + const contentType = response.headers.get("content-type"); + if (!(contentType === null || contentType === void 0 ? void 0 : contentType.startsWith(exports2.EventStreamContentType))) { + throw new Error(`Expected content-type to be ${exports2.EventStreamContentType}, Actual: ${contentType}`); + } + } + } +}); + +// ../node_modules/.pnpm/@fortaine+fetch-event-source@3.0.6/node_modules/@fortaine/fetch-event-source/lib/cjs/index.cjs +var require_cjs5 = __commonJS({ + "../node_modules/.pnpm/@fortaine+fetch-event-source@3.0.6/node_modules/@fortaine/fetch-event-source/lib/cjs/index.cjs"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.EventStreamContentType = exports2.fetchEventSource = void 0; + var fetch_js_1 = require_fetch2(); + Object.defineProperty(exports2, "fetchEventSource", { enumerable: true, get: function() { + return fetch_js_1.fetchEventSource; + } }); + Object.defineProperty(exports2, "EventStreamContentType", { enumerable: true, get: function() { + return fetch_js_1.EventStreamContentType; + } }); + } +}); + +// ../node_modules/.pnpm/cross-fetch@3.1.6/node_modules/cross-fetch/dist/node-ponyfill.js +var require_node_ponyfill = __commonJS({ + "../node_modules/.pnpm/cross-fetch@3.1.6/node_modules/cross-fetch/dist/node-ponyfill.js"(exports2, module2) { + var nodeFetch = require_lib2(); + var realFetch = nodeFetch.default || nodeFetch; + var fetch4 = function(url2, options2) { + if (/^\/\//.test(url2)) { + url2 = "https:" + url2; + } + return realFetch.call(this, url2, options2); + }; + fetch4.ponyfill = true; + module2.exports = exports2 = fetch4; + exports2.fetch = fetch4; + exports2.Headers = nodeFetch.Headers; + exports2.Request = nodeFetch.Request; + exports2.Response = nodeFetch.Response; + exports2.default = fetch4; + } +}); + +// ../node_modules/.pnpm/@anthropic-ai+sdk@0.4.3/node_modules/@anthropic-ai/sdk/build/src/index.js +var require_src2 = __commonJS({ + "../node_modules/.pnpm/@anthropic-ai+sdk@0.4.3/node_modules/@anthropic-ai/sdk/build/src/index.js"(exports2) { + "use strict"; + var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve8) { + resolve8(value); + }); + } + return new (P || (P = Promise))(function(resolve8, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve8(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __importDefault = exports2 && exports2.__importDefault || function(mod2) { + return mod2 && mod2.__esModule ? mod2 : { "default": mod2 }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Client = exports2.AI_PROMPT = exports2.HUMAN_PROMPT = void 0; + var fetch_event_source_1 = require_cjs5(); + var cross_fetch_1 = __importDefault(require_node_ponyfill()); + exports2.HUMAN_PROMPT = "\n\nHuman:"; + exports2.AI_PROMPT = "\n\nAssistant:"; + var CLIENT_ID = "anthropic-typescript/0.4.3"; + var DEFAULT_API_URL = "https://api.anthropic.com"; + var Event2; + (function(Event3) { + Event3["Ping"] = "ping"; + })(Event2 || (Event2 = {})); + var DONE_MESSAGE = "[DONE]"; + var Client2 = class { + constructor(apiKey, options2) { + var _a; + this.apiKey = apiKey; + this.apiUrl = (_a = options2 === null || options2 === void 0 ? void 0 : options2.apiUrl) !== null && _a !== void 0 ? _a : DEFAULT_API_URL; + } + complete(params, options2) { + return __awaiter(this, void 0, void 0, function* () { + const response = yield (0, cross_fetch_1.default)(`${this.apiUrl}/v1/complete`, { + method: "POST", + headers: { + Accept: "application/json", + "Content-Type": "application/json", + Client: CLIENT_ID, + "X-API-Key": this.apiKey + }, + body: JSON.stringify(Object.assign(Object.assign({}, params), { stream: false })), + signal: options2 === null || options2 === void 0 ? void 0 : options2.signal + }); + if (!response.ok) { + const error = new Error(`Sampling error: ${response.status} ${response.statusText}`); + console.error(error); + throw error; + } + const completion = yield response.json(); + return completion; + }); + } + completeStream(params, { onOpen, onUpdate, signal }) { + const abortController = new AbortController(); + return new Promise((resolve8, reject) => { + signal === null || signal === void 0 ? void 0 : signal.addEventListener("abort", (event) => { + abortController.abort(event); + reject({ + name: "AbortError", + message: "Caller aborted completeStream" + }); + }); + (0, fetch_event_source_1.fetchEventSource)(`${this.apiUrl}/v1/complete`, { + method: "POST", + headers: { + Accept: "application/json", + "Content-Type": "application/json", + Client: CLIENT_ID, + "X-API-Key": this.apiKey + }, + body: JSON.stringify(Object.assign(Object.assign({}, params), { stream: true })), + signal: abortController.signal, + onopen: (response) => __awaiter(this, void 0, void 0, function* () { + if (!response.ok) { + abortController.abort(); + return reject(Error(`Failed to open sampling stream, HTTP status code ${response.status}: ${response.statusText}`)); + } + if (onOpen) { + yield Promise.resolve(onOpen(response)); + } + }), + onmessage: (ev) => { + if (ev.event === Event2.Ping) { + return; + } + if (ev.data === DONE_MESSAGE) { + console.error("Unexpected done message before stop_reason has been issued"); + return; + } + const completion = JSON.parse(ev.data); + if (onUpdate) { + Promise.resolve(onUpdate(completion)).catch((error) => { + abortController.abort(); + reject(error); + }); + } + if (completion.stop_reason !== null) { + abortController.abort(); + return resolve8(completion); + } + }, + onerror: (error) => { + console.error("Sampling error:", error); + abortController.abort(); + return reject(error); + } + }); + }); + } + }; + exports2.Client = Client2; + } +}); + +// ../node_modules/.pnpm/js-levenshtein@1.1.6/node_modules/js-levenshtein/index.js +var require_js_levenshtein = __commonJS({ + "../node_modules/.pnpm/js-levenshtein@1.1.6/node_modules/js-levenshtein/index.js"(exports2, module2) { + "use strict"; + module2.exports = function() { + function _min(d0, d1, d2, bx, ay) { + return d0 < d1 || d2 < d1 ? d0 > d2 ? d2 + 1 : d0 + 1 : bx === ay ? d1 : d1 + 1; + } + return function(a, b) { + if (a === b) { + return 0; + } + if (a.length > b.length) { + var tmp = a; + a = b; + b = tmp; + } + var la = a.length; + var lb = b.length; + while (la > 0 && a.charCodeAt(la - 1) === b.charCodeAt(lb - 1)) { + la--; + lb--; + } + var offset = 0; + while (offset < la && a.charCodeAt(offset) === b.charCodeAt(offset)) { + offset++; + } + la -= offset; + lb -= offset; + if (la === 0 || lb < 3) { + return lb; + } + var x = 0; + var y; + var d0; + var d1; + var d2; + var d3; + var dd; + var dy; + var ay; + var bx0; + var bx1; + var bx2; + var bx3; + var vector = []; + for (y = 0; y < la; y++) { + vector.push(y + 1); + vector.push(a.charCodeAt(offset + y)); + } + var len = vector.length - 1; + for (; x < lb - 3; ) { + bx0 = b.charCodeAt(offset + (d0 = x)); + bx1 = b.charCodeAt(offset + (d1 = x + 1)); + bx2 = b.charCodeAt(offset + (d2 = x + 2)); + bx3 = b.charCodeAt(offset + (d3 = x + 3)); + dd = x += 4; + for (y = 0; y < len; y += 2) { + dy = vector[y]; + ay = vector[y + 1]; + d0 = _min(dy, d0, d1, bx0, ay); + d1 = _min(d0, d1, d2, bx1, ay); + d2 = _min(d1, d2, d3, bx2, ay); + dd = _min(d2, d3, dd, bx3, ay); + vector[y] = dd; + d3 = d2; + d2 = d1; + d1 = d0; + d0 = dy; + } + } + for (; x < lb; ) { + bx0 = b.charCodeAt(offset + (d0 = x)); + dd = ++x; + for (y = 0; y < len; y += 2) { + dy = vector[y]; + vector[y] = dd = _min(dy, d0, dd, bx0, vector[y + 1]); + d0 = dy; + } + } + return dd; + }; + }(); + } +}); + +// ../node_modules/.pnpm/ip@2.0.0/node_modules/ip/lib/ip.js +var require_ip = __commonJS({ + "../node_modules/.pnpm/ip@2.0.0/node_modules/ip/lib/ip.js"(exports2) { + var ip = exports2; + var { Buffer: Buffer2 } = require("buffer"); + var os8 = require("os"); + ip.toBuffer = function(ip2, buff, offset) { + offset = ~~offset; + let result; + if (this.isV4Format(ip2)) { + result = buff || Buffer2.alloc(offset + 4); + ip2.split(/\./g).map((byte) => { + result[offset++] = parseInt(byte, 10) & 255; + }); + } else if (this.isV6Format(ip2)) { + const sections = ip2.split(":", 8); + let i; + for (i = 0; i < sections.length; i++) { + const isv4 = this.isV4Format(sections[i]); + let v4Buffer; + if (isv4) { + v4Buffer = this.toBuffer(sections[i]); + sections[i] = v4Buffer.slice(0, 2).toString("hex"); + } + if (v4Buffer && ++i < 8) { + sections.splice(i, 0, v4Buffer.slice(2, 4).toString("hex")); + } + } + if (sections[0] === "") { + while (sections.length < 8) + sections.unshift("0"); + } else if (sections[sections.length - 1] === "") { + while (sections.length < 8) + sections.push("0"); + } else if (sections.length < 8) { + for (i = 0; i < sections.length && sections[i] !== ""; i++) + ; + const argv = [i, 1]; + for (i = 9 - sections.length; i > 0; i--) { + argv.push("0"); + } + sections.splice(...argv); + } + result = buff || Buffer2.alloc(offset + 16); + for (i = 0; i < sections.length; i++) { + const word = parseInt(sections[i], 16); + result[offset++] = word >> 8 & 255; + result[offset++] = word & 255; + } + } + if (!result) { + throw Error(`Invalid ip address: ${ip2}`); + } + return result; + }; + ip.toString = function(buff, offset, length) { + offset = ~~offset; + length = length || buff.length - offset; + let result = []; + if (length === 4) { + for (let i = 0; i < length; i++) { + result.push(buff[offset + i]); + } + result = result.join("."); + } else if (length === 16) { + for (let i = 0; i < length; i += 2) { + result.push(buff.readUInt16BE(offset + i).toString(16)); + } + result = result.join(":"); + result = result.replace(/(^|:)0(:0)*:0(:|$)/, "$1::$3"); + result = result.replace(/:{3,4}/, "::"); + } + return result; + }; + var ipv4Regex = /^(\d{1,3}\.){3,3}\d{1,3}$/; + var ipv6Regex = /^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i; + ip.isV4Format = function(ip2) { + return ipv4Regex.test(ip2); + }; + ip.isV6Format = function(ip2) { + return ipv6Regex.test(ip2); + }; + function _normalizeFamily(family) { + if (family === 4) { + return "ipv4"; + } + if (family === 6) { + return "ipv6"; + } + return family ? family.toLowerCase() : "ipv4"; + } + ip.fromPrefixLen = function(prefixlen, family) { + if (prefixlen > 32) { + family = "ipv6"; + } else { + family = _normalizeFamily(family); + } + let len = 4; + if (family === "ipv6") { + len = 16; + } + const buff = Buffer2.alloc(len); + for (let i = 0, n = buff.length; i < n; ++i) { + let bits = 8; + if (prefixlen < 8) { + bits = prefixlen; + } + prefixlen -= bits; + buff[i] = ~(255 >> bits) & 255; + } + return ip.toString(buff); + }; + ip.mask = function(addr2, mask) { + addr2 = ip.toBuffer(addr2); + mask = ip.toBuffer(mask); + const result = Buffer2.alloc(Math.max(addr2.length, mask.length)); + let i; + if (addr2.length === mask.length) { + for (i = 0; i < addr2.length; i++) { + result[i] = addr2[i] & mask[i]; + } + } else if (mask.length === 4) { + for (i = 0; i < mask.length; i++) { + result[i] = addr2[addr2.length - 4 + i] & mask[i]; + } + } else { + for (i = 0; i < result.length - 6; i++) { + result[i] = 0; + } + result[10] = 255; + result[11] = 255; + for (i = 0; i < addr2.length; i++) { + result[i + 12] = addr2[i] & mask[i + 12]; + } + i += 12; + } + for (; i < result.length; i++) { + result[i] = 0; + } + return ip.toString(result); + }; + ip.cidr = function(cidrString) { + const cidrParts = cidrString.split("/"); + const addr2 = cidrParts[0]; + if (cidrParts.length !== 2) { + throw new Error(`invalid CIDR subnet: ${addr2}`); + } + const mask = ip.fromPrefixLen(parseInt(cidrParts[1], 10)); + return ip.mask(addr2, mask); + }; + ip.subnet = function(addr2, mask) { + const networkAddress = ip.toLong(ip.mask(addr2, mask)); + const maskBuffer = ip.toBuffer(mask); + let maskLength = 0; + for (let i = 0; i < maskBuffer.length; i++) { + if (maskBuffer[i] === 255) { + maskLength += 8; + } else { + let octet = maskBuffer[i] & 255; + while (octet) { + octet = octet << 1 & 255; + maskLength++; + } + } + } + const numberOfAddresses = 2 ** (32 - maskLength); + return { + networkAddress: ip.fromLong(networkAddress), + firstAddress: numberOfAddresses <= 2 ? ip.fromLong(networkAddress) : ip.fromLong(networkAddress + 1), + lastAddress: numberOfAddresses <= 2 ? ip.fromLong(networkAddress + numberOfAddresses - 1) : ip.fromLong(networkAddress + numberOfAddresses - 2), + broadcastAddress: ip.fromLong(networkAddress + numberOfAddresses - 1), + subnetMask: mask, + subnetMaskLength: maskLength, + numHosts: numberOfAddresses <= 2 ? numberOfAddresses : numberOfAddresses - 2, + length: numberOfAddresses, + contains(other) { + return networkAddress === ip.toLong(ip.mask(other, mask)); + } + }; + }; + ip.cidrSubnet = function(cidrString) { + const cidrParts = cidrString.split("/"); + const addr2 = cidrParts[0]; + if (cidrParts.length !== 2) { + throw new Error(`invalid CIDR subnet: ${addr2}`); + } + const mask = ip.fromPrefixLen(parseInt(cidrParts[1], 10)); + return ip.subnet(addr2, mask); + }; + ip.not = function(addr2) { + const buff = ip.toBuffer(addr2); + for (let i = 0; i < buff.length; i++) { + buff[i] = 255 ^ buff[i]; + } + return ip.toString(buff); + }; + ip.or = function(a, b) { + a = ip.toBuffer(a); + b = ip.toBuffer(b); + if (a.length === b.length) { + for (let i = 0; i < a.length; ++i) { + a[i] |= b[i]; + } + return ip.toString(a); + } + let buff = a; + let other = b; + if (b.length > a.length) { + buff = b; + other = a; + } + const offset = buff.length - other.length; + for (let i = offset; i < buff.length; ++i) { + buff[i] |= other[i - offset]; + } + return ip.toString(buff); + }; + ip.isEqual = function(a, b) { + a = ip.toBuffer(a); + b = ip.toBuffer(b); + if (a.length === b.length) { + for (let i = 0; i < a.length; i++) { + if (a[i] !== b[i]) + return false; + } + return true; + } + if (b.length === 4) { + const t = b; + b = a; + a = t; + } + for (let i = 0; i < 10; i++) { + if (b[i] !== 0) + return false; + } + const word = b.readUInt16BE(10); + if (word !== 0 && word !== 65535) + return false; + for (let i = 0; i < 4; i++) { + if (a[i] !== b[i + 12]) + return false; + } + return true; + }; + ip.isPrivate = function(addr2) { + return /^(::f{4}:)?10\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr2) || /^(::f{4}:)?192\.168\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr2) || /^(::f{4}:)?172\.(1[6-9]|2\d|30|31)\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr2) || /^(::f{4}:)?127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr2) || /^(::f{4}:)?169\.254\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr2) || /^f[cd][0-9a-f]{2}:/i.test(addr2) || /^fe80:/i.test(addr2) || /^::1$/.test(addr2) || /^::$/.test(addr2); + }; + ip.isPublic = function(addr2) { + return !ip.isPrivate(addr2); + }; + ip.isLoopback = function(addr2) { + return /^(::f{4}:)?127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})/.test(addr2) || /^fe80::1$/.test(addr2) || /^::1$/.test(addr2) || /^::$/.test(addr2); + }; + ip.loopback = function(family) { + family = _normalizeFamily(family); + if (family !== "ipv4" && family !== "ipv6") { + throw new Error("family must be ipv4 or ipv6"); + } + return family === "ipv4" ? "127.0.0.1" : "fe80::1"; + }; + ip.address = function(name, family) { + const interfaces = os8.networkInterfaces(); + family = _normalizeFamily(family); + if (name && name !== "private" && name !== "public") { + const res = interfaces[name].filter((details) => { + const itemFamily = _normalizeFamily(details.family); + return itemFamily === family; + }); + if (res.length === 0) { + return void 0; + } + return res[0].address; + } + const all3 = Object.keys(interfaces).map((nic) => { + const addresses = interfaces[nic].filter((details) => { + details.family = _normalizeFamily(details.family); + if (details.family !== family || ip.isLoopback(details.address)) { + return false; + } + if (!name) { + return true; + } + return name === "public" ? ip.isPrivate(details.address) : ip.isPublic(details.address); + }); + return addresses.length ? addresses[0].address : void 0; + }).filter(Boolean); + return !all3.length ? ip.loopback(family) : all3[0]; + }; + ip.toLong = function(ip2) { + let ipl = 0; + ip2.split(".").forEach((octet) => { + ipl <<= 8; + ipl += parseInt(octet); + }); + return ipl >>> 0; + }; + ip.fromLong = function(ipl) { + return `${ipl >>> 24}.${ipl >> 16 & 255}.${ipl >> 8 & 255}.${ipl & 255}`; + }; + } +}); + +// ../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/utils.js +var require_utils6 = __commonJS({ + "../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var buffer_1 = require("buffer"); + var ERRORS = { + INVALID_ENCODING: "Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.", + INVALID_SMARTBUFFER_SIZE: "Invalid size provided. Size must be a valid integer greater than zero.", + INVALID_SMARTBUFFER_BUFFER: "Invalid Buffer provided in SmartBufferOptions.", + INVALID_SMARTBUFFER_OBJECT: "Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.", + INVALID_OFFSET: "An invalid offset value was provided.", + INVALID_OFFSET_NON_NUMBER: "An invalid offset value was provided. A numeric value is required.", + INVALID_LENGTH: "An invalid length value was provided.", + INVALID_LENGTH_NON_NUMBER: "An invalid length value was provived. A numeric value is required.", + INVALID_TARGET_OFFSET: "Target offset is beyond the bounds of the internal SmartBuffer data.", + INVALID_TARGET_LENGTH: "Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.", + INVALID_READ_BEYOND_BOUNDS: "Attempted to read beyond the bounds of the managed data.", + INVALID_WRITE_BEYOND_BOUNDS: "Attempted to write beyond the bounds of the managed data." + }; + exports2.ERRORS = ERRORS; + function checkEncoding(encoding) { + if (!buffer_1.Buffer.isEncoding(encoding)) { + throw new Error(ERRORS.INVALID_ENCODING); + } + } + exports2.checkEncoding = checkEncoding; + function isFiniteInteger(value) { + return typeof value === "number" && isFinite(value) && isInteger(value); + } + exports2.isFiniteInteger = isFiniteInteger; + function checkOffsetOrLengthValue(value, offset) { + if (typeof value === "number") { + if (!isFiniteInteger(value) || value < 0) { + throw new Error(offset ? ERRORS.INVALID_OFFSET : ERRORS.INVALID_LENGTH); + } + } else { + throw new Error(offset ? ERRORS.INVALID_OFFSET_NON_NUMBER : ERRORS.INVALID_LENGTH_NON_NUMBER); + } + } + function checkLengthValue(length) { + checkOffsetOrLengthValue(length, false); + } + exports2.checkLengthValue = checkLengthValue; + function checkOffsetValue(offset) { + checkOffsetOrLengthValue(offset, true); + } + exports2.checkOffsetValue = checkOffsetValue; + function checkTargetOffset(offset, buff) { + if (offset < 0 || offset > buff.length) { + throw new Error(ERRORS.INVALID_TARGET_OFFSET); + } + } + exports2.checkTargetOffset = checkTargetOffset; + function isInteger(value) { + return typeof value === "number" && isFinite(value) && Math.floor(value) === value; + } + function bigIntAndBufferInt64Check(bufferMethod) { + if (typeof BigInt === "undefined") { + throw new Error("Platform does not support JS BigInt type."); + } + if (typeof buffer_1.Buffer.prototype[bufferMethod] === "undefined") { + throw new Error(`Platform does not support Buffer.prototype.${bufferMethod}.`); + } + } + exports2.bigIntAndBufferInt64Check = bigIntAndBufferInt64Check; + } +}); + +// ../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/smartbuffer.js +var require_smartbuffer = __commonJS({ + "../node_modules/.pnpm/smart-buffer@4.2.0/node_modules/smart-buffer/build/smartbuffer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils_1 = require_utils6(); + var DEFAULT_SMARTBUFFER_SIZE = 4096; + var DEFAULT_SMARTBUFFER_ENCODING = "utf8"; + var SmartBuffer = class _SmartBuffer { + /** + * Creates a new SmartBuffer instance. + * + * @param options { SmartBufferOptions } The SmartBufferOptions to apply to this instance. + */ + constructor(options2) { + this.length = 0; + this._encoding = DEFAULT_SMARTBUFFER_ENCODING; + this._writeOffset = 0; + this._readOffset = 0; + if (_SmartBuffer.isSmartBufferOptions(options2)) { + if (options2.encoding) { + utils_1.checkEncoding(options2.encoding); + this._encoding = options2.encoding; + } + if (options2.size) { + if (utils_1.isFiniteInteger(options2.size) && options2.size > 0) { + this._buff = Buffer.allocUnsafe(options2.size); + } else { + throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_SIZE); + } + } else if (options2.buff) { + if (Buffer.isBuffer(options2.buff)) { + this._buff = options2.buff; + this.length = options2.buff.length; + } else { + throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_BUFFER); + } + } else { + this._buff = Buffer.allocUnsafe(DEFAULT_SMARTBUFFER_SIZE); + } + } else { + if (typeof options2 !== "undefined") { + throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_OBJECT); + } + this._buff = Buffer.allocUnsafe(DEFAULT_SMARTBUFFER_SIZE); + } + } + /** + * Creates a new SmartBuffer instance with the provided internal Buffer size and optional encoding. + * + * @param size { Number } The size of the internal Buffer. + * @param encoding { String } The BufferEncoding to use for strings. + * + * @return { SmartBuffer } + */ + static fromSize(size, encoding) { + return new this({ + size, + encoding + }); + } + /** + * Creates a new SmartBuffer instance with the provided Buffer and optional encoding. + * + * @param buffer { Buffer } The Buffer to use as the internal Buffer value. + * @param encoding { String } The BufferEncoding to use for strings. + * + * @return { SmartBuffer } + */ + static fromBuffer(buff, encoding) { + return new this({ + buff, + encoding + }); + } + /** + * Creates a new SmartBuffer instance with the provided SmartBufferOptions options. + * + * @param options { SmartBufferOptions } The options to use when creating the SmartBuffer instance. + */ + static fromOptions(options2) { + return new this(options2); + } + /** + * Type checking function that determines if an object is a SmartBufferOptions object. + */ + static isSmartBufferOptions(options2) { + const castOptions = options2; + return castOptions && (castOptions.encoding !== void 0 || castOptions.size !== void 0 || castOptions.buff !== void 0); + } + // Signed integers + /** + * Reads an Int8 value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readInt8(offset) { + return this._readNumberValue(Buffer.prototype.readInt8, 1, offset); + } + /** + * Reads an Int16BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readInt16BE(offset) { + return this._readNumberValue(Buffer.prototype.readInt16BE, 2, offset); + } + /** + * Reads an Int16LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readInt16LE(offset) { + return this._readNumberValue(Buffer.prototype.readInt16LE, 2, offset); + } + /** + * Reads an Int32BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readInt32BE(offset) { + return this._readNumberValue(Buffer.prototype.readInt32BE, 4, offset); + } + /** + * Reads an Int32LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readInt32LE(offset) { + return this._readNumberValue(Buffer.prototype.readInt32LE, 4, offset); + } + /** + * Reads a BigInt64BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { BigInt } + */ + readBigInt64BE(offset) { + utils_1.bigIntAndBufferInt64Check("readBigInt64BE"); + return this._readNumberValue(Buffer.prototype.readBigInt64BE, 8, offset); + } + /** + * Reads a BigInt64LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { BigInt } + */ + readBigInt64LE(offset) { + utils_1.bigIntAndBufferInt64Check("readBigInt64LE"); + return this._readNumberValue(Buffer.prototype.readBigInt64LE, 8, offset); + } + /** + * Writes an Int8 value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeInt8(value, offset) { + this._writeNumberValue(Buffer.prototype.writeInt8, 1, value, offset); + return this; + } + /** + * Inserts an Int8 value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertInt8(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeInt8, 1, value, offset); + } + /** + * Writes an Int16BE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeInt16BE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeInt16BE, 2, value, offset); + } + /** + * Inserts an Int16BE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertInt16BE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeInt16BE, 2, value, offset); + } + /** + * Writes an Int16LE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeInt16LE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeInt16LE, 2, value, offset); + } + /** + * Inserts an Int16LE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertInt16LE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeInt16LE, 2, value, offset); + } + /** + * Writes an Int32BE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeInt32BE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeInt32BE, 4, value, offset); + } + /** + * Inserts an Int32BE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertInt32BE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeInt32BE, 4, value, offset); + } + /** + * Writes an Int32LE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeInt32LE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeInt32LE, 4, value, offset); + } + /** + * Inserts an Int32LE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertInt32LE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeInt32LE, 4, value, offset); + } + /** + * Writes a BigInt64BE value to the current write position (or at optional offset). + * + * @param value { BigInt } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeBigInt64BE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigInt64BE"); + return this._writeNumberValue(Buffer.prototype.writeBigInt64BE, 8, value, offset); + } + /** + * Inserts a BigInt64BE value at the given offset value. + * + * @param value { BigInt } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertBigInt64BE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigInt64BE"); + return this._insertNumberValue(Buffer.prototype.writeBigInt64BE, 8, value, offset); + } + /** + * Writes a BigInt64LE value to the current write position (or at optional offset). + * + * @param value { BigInt } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeBigInt64LE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigInt64LE"); + return this._writeNumberValue(Buffer.prototype.writeBigInt64LE, 8, value, offset); + } + /** + * Inserts a Int64LE value at the given offset value. + * + * @param value { BigInt } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertBigInt64LE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigInt64LE"); + return this._insertNumberValue(Buffer.prototype.writeBigInt64LE, 8, value, offset); + } + // Unsigned Integers + /** + * Reads an UInt8 value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readUInt8(offset) { + return this._readNumberValue(Buffer.prototype.readUInt8, 1, offset); + } + /** + * Reads an UInt16BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readUInt16BE(offset) { + return this._readNumberValue(Buffer.prototype.readUInt16BE, 2, offset); + } + /** + * Reads an UInt16LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readUInt16LE(offset) { + return this._readNumberValue(Buffer.prototype.readUInt16LE, 2, offset); + } + /** + * Reads an UInt32BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readUInt32BE(offset) { + return this._readNumberValue(Buffer.prototype.readUInt32BE, 4, offset); + } + /** + * Reads an UInt32LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readUInt32LE(offset) { + return this._readNumberValue(Buffer.prototype.readUInt32LE, 4, offset); + } + /** + * Reads a BigUInt64BE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { BigInt } + */ + readBigUInt64BE(offset) { + utils_1.bigIntAndBufferInt64Check("readBigUInt64BE"); + return this._readNumberValue(Buffer.prototype.readBigUInt64BE, 8, offset); + } + /** + * Reads a BigUInt64LE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { BigInt } + */ + readBigUInt64LE(offset) { + utils_1.bigIntAndBufferInt64Check("readBigUInt64LE"); + return this._readNumberValue(Buffer.prototype.readBigUInt64LE, 8, offset); + } + /** + * Writes an UInt8 value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeUInt8(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeUInt8, 1, value, offset); + } + /** + * Inserts an UInt8 value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertUInt8(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeUInt8, 1, value, offset); + } + /** + * Writes an UInt16BE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeUInt16BE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeUInt16BE, 2, value, offset); + } + /** + * Inserts an UInt16BE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertUInt16BE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeUInt16BE, 2, value, offset); + } + /** + * Writes an UInt16LE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeUInt16LE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeUInt16LE, 2, value, offset); + } + /** + * Inserts an UInt16LE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertUInt16LE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeUInt16LE, 2, value, offset); + } + /** + * Writes an UInt32BE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeUInt32BE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeUInt32BE, 4, value, offset); + } + /** + * Inserts an UInt32BE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertUInt32BE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeUInt32BE, 4, value, offset); + } + /** + * Writes an UInt32LE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeUInt32LE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeUInt32LE, 4, value, offset); + } + /** + * Inserts an UInt32LE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertUInt32LE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeUInt32LE, 4, value, offset); + } + /** + * Writes a BigUInt64BE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeBigUInt64BE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigUInt64BE"); + return this._writeNumberValue(Buffer.prototype.writeBigUInt64BE, 8, value, offset); + } + /** + * Inserts a BigUInt64BE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertBigUInt64BE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigUInt64BE"); + return this._insertNumberValue(Buffer.prototype.writeBigUInt64BE, 8, value, offset); + } + /** + * Writes a BigUInt64LE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeBigUInt64LE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigUInt64LE"); + return this._writeNumberValue(Buffer.prototype.writeBigUInt64LE, 8, value, offset); + } + /** + * Inserts a BigUInt64LE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertBigUInt64LE(value, offset) { + utils_1.bigIntAndBufferInt64Check("writeBigUInt64LE"); + return this._insertNumberValue(Buffer.prototype.writeBigUInt64LE, 8, value, offset); + } + // Floating Point + /** + * Reads an FloatBE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readFloatBE(offset) { + return this._readNumberValue(Buffer.prototype.readFloatBE, 4, offset); + } + /** + * Reads an FloatLE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readFloatLE(offset) { + return this._readNumberValue(Buffer.prototype.readFloatLE, 4, offset); + } + /** + * Writes a FloatBE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeFloatBE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeFloatBE, 4, value, offset); + } + /** + * Inserts a FloatBE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertFloatBE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeFloatBE, 4, value, offset); + } + /** + * Writes a FloatLE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeFloatLE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeFloatLE, 4, value, offset); + } + /** + * Inserts a FloatLE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertFloatLE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeFloatLE, 4, value, offset); + } + // Double Floating Point + /** + * Reads an DoublEBE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readDoubleBE(offset) { + return this._readNumberValue(Buffer.prototype.readDoubleBE, 8, offset); + } + /** + * Reads an DoubleLE value from the current read position or an optionally provided offset. + * + * @param offset { Number } The offset to read data from (optional) + * @return { Number } + */ + readDoubleLE(offset) { + return this._readNumberValue(Buffer.prototype.readDoubleLE, 8, offset); + } + /** + * Writes a DoubleBE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeDoubleBE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeDoubleBE, 8, value, offset); + } + /** + * Inserts a DoubleBE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertDoubleBE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeDoubleBE, 8, value, offset); + } + /** + * Writes a DoubleLE value to the current write position (or at optional offset). + * + * @param value { Number } The value to write. + * @param offset { Number } The offset to write the value at. + * + * @return this + */ + writeDoubleLE(value, offset) { + return this._writeNumberValue(Buffer.prototype.writeDoubleLE, 8, value, offset); + } + /** + * Inserts a DoubleLE value at the given offset value. + * + * @param value { Number } The value to insert. + * @param offset { Number } The offset to insert the value at. + * + * @return this + */ + insertDoubleLE(value, offset) { + return this._insertNumberValue(Buffer.prototype.writeDoubleLE, 8, value, offset); + } + // Strings + /** + * Reads a String from the current read position. + * + * @param arg1 { Number | String } The number of bytes to read as a String, or the BufferEncoding to use for + * the string (Defaults to instance level encoding). + * @param encoding { String } The BufferEncoding to use for the string (Defaults to instance level encoding). + * + * @return { String } + */ + readString(arg1, encoding) { + let lengthVal; + if (typeof arg1 === "number") { + utils_1.checkLengthValue(arg1); + lengthVal = Math.min(arg1, this.length - this._readOffset); + } else { + encoding = arg1; + lengthVal = this.length - this._readOffset; + } + if (typeof encoding !== "undefined") { + utils_1.checkEncoding(encoding); + } + const value = this._buff.slice(this._readOffset, this._readOffset + lengthVal).toString(encoding || this._encoding); + this._readOffset += lengthVal; + return value; + } + /** + * Inserts a String + * + * @param value { String } The String value to insert. + * @param offset { Number } The offset to insert the string at. + * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding). + * + * @return this + */ + insertString(value, offset, encoding) { + utils_1.checkOffsetValue(offset); + return this._handleString(value, true, offset, encoding); + } + /** + * Writes a String + * + * @param value { String } The String value to write. + * @param arg2 { Number | String } The offset to write the string at, or the BufferEncoding to use. + * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding). + * + * @return this + */ + writeString(value, arg2, encoding) { + return this._handleString(value, false, arg2, encoding); + } + /** + * Reads a null-terminated String from the current read position. + * + * @param encoding { String } The BufferEncoding to use for the string (Defaults to instance level encoding). + * + * @return { String } + */ + readStringNT(encoding) { + if (typeof encoding !== "undefined") { + utils_1.checkEncoding(encoding); + } + let nullPos = this.length; + for (let i = this._readOffset; i < this.length; i++) { + if (this._buff[i] === 0) { + nullPos = i; + break; + } + } + const value = this._buff.slice(this._readOffset, nullPos); + this._readOffset = nullPos + 1; + return value.toString(encoding || this._encoding); + } + /** + * Inserts a null-terminated String. + * + * @param value { String } The String value to write. + * @param arg2 { Number | String } The offset to write the string to, or the BufferEncoding to use. + * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding). + * + * @return this + */ + insertStringNT(value, offset, encoding) { + utils_1.checkOffsetValue(offset); + this.insertString(value, offset, encoding); + this.insertUInt8(0, offset + value.length); + return this; + } + /** + * Writes a null-terminated String. + * + * @param value { String } The String value to write. + * @param arg2 { Number | String } The offset to write the string to, or the BufferEncoding to use. + * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding). + * + * @return this + */ + writeStringNT(value, arg2, encoding) { + this.writeString(value, arg2, encoding); + this.writeUInt8(0, typeof arg2 === "number" ? arg2 + value.length : this.writeOffset); + return this; + } + // Buffers + /** + * Reads a Buffer from the internal read position. + * + * @param length { Number } The length of data to read as a Buffer. + * + * @return { Buffer } + */ + readBuffer(length) { + if (typeof length !== "undefined") { + utils_1.checkLengthValue(length); + } + const lengthVal = typeof length === "number" ? length : this.length; + const endPoint = Math.min(this.length, this._readOffset + lengthVal); + const value = this._buff.slice(this._readOffset, endPoint); + this._readOffset = endPoint; + return value; + } + /** + * Writes a Buffer to the current write position. + * + * @param value { Buffer } The Buffer to write. + * @param offset { Number } The offset to write the Buffer to. + * + * @return this + */ + insertBuffer(value, offset) { + utils_1.checkOffsetValue(offset); + return this._handleBuffer(value, true, offset); + } + /** + * Writes a Buffer to the current write position. + * + * @param value { Buffer } The Buffer to write. + * @param offset { Number } The offset to write the Buffer to. + * + * @return this + */ + writeBuffer(value, offset) { + return this._handleBuffer(value, false, offset); + } + /** + * Reads a null-terminated Buffer from the current read poisiton. + * + * @return { Buffer } + */ + readBufferNT() { + let nullPos = this.length; + for (let i = this._readOffset; i < this.length; i++) { + if (this._buff[i] === 0) { + nullPos = i; + break; + } + } + const value = this._buff.slice(this._readOffset, nullPos); + this._readOffset = nullPos + 1; + return value; + } + /** + * Inserts a null-terminated Buffer. + * + * @param value { Buffer } The Buffer to write. + * @param offset { Number } The offset to write the Buffer to. + * + * @return this + */ + insertBufferNT(value, offset) { + utils_1.checkOffsetValue(offset); + this.insertBuffer(value, offset); + this.insertUInt8(0, offset + value.length); + return this; + } + /** + * Writes a null-terminated Buffer. + * + * @param value { Buffer } The Buffer to write. + * @param offset { Number } The offset to write the Buffer to. + * + * @return this + */ + writeBufferNT(value, offset) { + if (typeof offset !== "undefined") { + utils_1.checkOffsetValue(offset); + } + this.writeBuffer(value, offset); + this.writeUInt8(0, typeof offset === "number" ? offset + value.length : this._writeOffset); + return this; + } + /** + * Clears the SmartBuffer instance to its original empty state. + */ + clear() { + this._writeOffset = 0; + this._readOffset = 0; + this.length = 0; + return this; + } + /** + * Gets the remaining data left to be read from the SmartBuffer instance. + * + * @return { Number } + */ + remaining() { + return this.length - this._readOffset; + } + /** + * Gets the current read offset value of the SmartBuffer instance. + * + * @return { Number } + */ + get readOffset() { + return this._readOffset; + } + /** + * Sets the read offset value of the SmartBuffer instance. + * + * @param offset { Number } - The offset value to set. + */ + set readOffset(offset) { + utils_1.checkOffsetValue(offset); + utils_1.checkTargetOffset(offset, this); + this._readOffset = offset; + } + /** + * Gets the current write offset value of the SmartBuffer instance. + * + * @return { Number } + */ + get writeOffset() { + return this._writeOffset; + } + /** + * Sets the write offset value of the SmartBuffer instance. + * + * @param offset { Number } - The offset value to set. + */ + set writeOffset(offset) { + utils_1.checkOffsetValue(offset); + utils_1.checkTargetOffset(offset, this); + this._writeOffset = offset; + } + /** + * Gets the currently set string encoding of the SmartBuffer instance. + * + * @return { BufferEncoding } The string Buffer encoding currently set. + */ + get encoding() { + return this._encoding; + } + /** + * Sets the string encoding of the SmartBuffer instance. + * + * @param encoding { BufferEncoding } The string Buffer encoding to set. + */ + set encoding(encoding) { + utils_1.checkEncoding(encoding); + this._encoding = encoding; + } + /** + * Gets the underlying internal Buffer. (This includes unmanaged data in the Buffer) + * + * @return { Buffer } The Buffer value. + */ + get internalBuffer() { + return this._buff; + } + /** + * Gets the value of the internal managed Buffer (Includes managed data only) + * + * @param { Buffer } + */ + toBuffer() { + return this._buff.slice(0, this.length); + } + /** + * Gets the String value of the internal managed Buffer + * + * @param encoding { String } The BufferEncoding to display the Buffer as (defaults to instance level encoding). + */ + toString(encoding) { + const encodingVal = typeof encoding === "string" ? encoding : this._encoding; + utils_1.checkEncoding(encodingVal); + return this._buff.toString(encodingVal, 0, this.length); + } + /** + * Destroys the SmartBuffer instance. + */ + destroy() { + this.clear(); + return this; + } + /** + * Handles inserting and writing strings. + * + * @param value { String } The String value to insert. + * @param isInsert { Boolean } True if inserting a string, false if writing. + * @param arg2 { Number | String } The offset to insert the string at, or the BufferEncoding to use. + * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding). + */ + _handleString(value, isInsert, arg3, encoding) { + let offsetVal = this._writeOffset; + let encodingVal = this._encoding; + if (typeof arg3 === "number") { + offsetVal = arg3; + } else if (typeof arg3 === "string") { + utils_1.checkEncoding(arg3); + encodingVal = arg3; + } + if (typeof encoding === "string") { + utils_1.checkEncoding(encoding); + encodingVal = encoding; + } + const byteLength = Buffer.byteLength(value, encodingVal); + if (isInsert) { + this.ensureInsertable(byteLength, offsetVal); + } else { + this._ensureWriteable(byteLength, offsetVal); + } + this._buff.write(value, offsetVal, byteLength, encodingVal); + if (isInsert) { + this._writeOffset += byteLength; + } else { + if (typeof arg3 === "number") { + this._writeOffset = Math.max(this._writeOffset, offsetVal + byteLength); + } else { + this._writeOffset += byteLength; + } + } + return this; + } + /** + * Handles writing or insert of a Buffer. + * + * @param value { Buffer } The Buffer to write. + * @param offset { Number } The offset to write the Buffer to. + */ + _handleBuffer(value, isInsert, offset) { + const offsetVal = typeof offset === "number" ? offset : this._writeOffset; + if (isInsert) { + this.ensureInsertable(value.length, offsetVal); + } else { + this._ensureWriteable(value.length, offsetVal); + } + value.copy(this._buff, offsetVal); + if (isInsert) { + this._writeOffset += value.length; + } else { + if (typeof offset === "number") { + this._writeOffset = Math.max(this._writeOffset, offsetVal + value.length); + } else { + this._writeOffset += value.length; + } + } + return this; + } + /** + * Ensures that the internal Buffer is large enough to read data. + * + * @param length { Number } The length of the data that needs to be read. + * @param offset { Number } The offset of the data that needs to be read. + */ + ensureReadable(length, offset) { + let offsetVal = this._readOffset; + if (typeof offset !== "undefined") { + utils_1.checkOffsetValue(offset); + offsetVal = offset; + } + if (offsetVal < 0 || offsetVal + length > this.length) { + throw new Error(utils_1.ERRORS.INVALID_READ_BEYOND_BOUNDS); + } + } + /** + * Ensures that the internal Buffer is large enough to insert data. + * + * @param dataLength { Number } The length of the data that needs to be written. + * @param offset { Number } The offset of the data to be written. + */ + ensureInsertable(dataLength, offset) { + utils_1.checkOffsetValue(offset); + this._ensureCapacity(this.length + dataLength); + if (offset < this.length) { + this._buff.copy(this._buff, offset + dataLength, offset, this._buff.length); + } + if (offset + dataLength > this.length) { + this.length = offset + dataLength; + } else { + this.length += dataLength; + } + } + /** + * Ensures that the internal Buffer is large enough to write data. + * + * @param dataLength { Number } The length of the data that needs to be written. + * @param offset { Number } The offset of the data to be written (defaults to writeOffset). + */ + _ensureWriteable(dataLength, offset) { + const offsetVal = typeof offset === "number" ? offset : this._writeOffset; + this._ensureCapacity(offsetVal + dataLength); + if (offsetVal + dataLength > this.length) { + this.length = offsetVal + dataLength; + } + } + /** + * Ensures that the internal Buffer is large enough to write at least the given amount of data. + * + * @param minLength { Number } The minimum length of the data needs to be written. + */ + _ensureCapacity(minLength) { + const oldLength = this._buff.length; + if (minLength > oldLength) { + let data = this._buff; + let newLength = oldLength * 3 / 2 + 1; + if (newLength < minLength) { + newLength = minLength; + } + this._buff = Buffer.allocUnsafe(newLength); + data.copy(this._buff, 0, 0, oldLength); + } + } + /** + * Reads a numeric number value using the provided function. + * + * @typeparam T { number | bigint } The type of the value to be read + * + * @param func { Function(offset: number) => number } The function to read data on the internal Buffer with. + * @param byteSize { Number } The number of bytes read. + * @param offset { Number } The offset to read from (optional). When this is not provided, the managed readOffset is used instead. + * + * @returns { T } the number value + */ + _readNumberValue(func2, byteSize, offset) { + this.ensureReadable(byteSize, offset); + const value = func2.call(this._buff, typeof offset === "number" ? offset : this._readOffset); + if (typeof offset === "undefined") { + this._readOffset += byteSize; + } + return value; + } + /** + * Inserts a numeric number value based on the given offset and value. + * + * @typeparam T { number | bigint } The type of the value to be written + * + * @param func { Function(offset: T, offset?) => number} The function to write data on the internal Buffer with. + * @param byteSize { Number } The number of bytes written. + * @param value { T } The number value to write. + * @param offset { Number } the offset to write the number at (REQUIRED). + * + * @returns SmartBuffer this buffer + */ + _insertNumberValue(func2, byteSize, value, offset) { + utils_1.checkOffsetValue(offset); + this.ensureInsertable(byteSize, offset); + func2.call(this._buff, value, offset); + this._writeOffset += byteSize; + return this; + } + /** + * Writes a numeric number value based on the given offset and value. + * + * @typeparam T { number | bigint } The type of the value to be written + * + * @param func { Function(offset: T, offset?) => number} The function to write data on the internal Buffer with. + * @param byteSize { Number } The number of bytes written. + * @param value { T } The number value to write. + * @param offset { Number } the offset to write the number at (REQUIRED). + * + * @returns SmartBuffer this buffer + */ + _writeNumberValue(func2, byteSize, value, offset) { + if (typeof offset === "number") { + if (offset < 0) { + throw new Error(utils_1.ERRORS.INVALID_WRITE_BEYOND_BOUNDS); + } + utils_1.checkOffsetValue(offset); + } + const offsetVal = typeof offset === "number" ? offset : this._writeOffset; + this._ensureWriteable(byteSize, offsetVal); + func2.call(this._buff, value, offsetVal); + if (typeof offset === "number") { + this._writeOffset = Math.max(this._writeOffset, offsetVal + byteSize); + } else { + this._writeOffset += byteSize; + } + return this; + } + }; + exports2.SmartBuffer = SmartBuffer; + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/constants.js +var require_constants6 = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SOCKS5_NO_ACCEPTABLE_AUTH = exports2.SOCKS5_CUSTOM_AUTH_END = exports2.SOCKS5_CUSTOM_AUTH_START = exports2.SOCKS_INCOMING_PACKET_SIZES = exports2.SocksClientState = exports2.Socks5Response = exports2.Socks5HostType = exports2.Socks5Auth = exports2.Socks4Response = exports2.SocksCommand = exports2.ERRORS = exports2.DEFAULT_TIMEOUT = void 0; + var DEFAULT_TIMEOUT = 3e4; + exports2.DEFAULT_TIMEOUT = DEFAULT_TIMEOUT; + var ERRORS = { + InvalidSocksCommand: "An invalid SOCKS command was provided. Valid options are connect, bind, and associate.", + InvalidSocksCommandForOperation: "An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.", + InvalidSocksCommandChain: "An invalid SOCKS command was provided. Chaining currently only supports the connect command.", + InvalidSocksClientOptionsDestination: "An invalid destination host was provided.", + InvalidSocksClientOptionsExistingSocket: "An invalid existing socket was provided. This should be an instance of stream.Duplex.", + InvalidSocksClientOptionsProxy: "Invalid SOCKS proxy details were provided.", + InvalidSocksClientOptionsTimeout: "An invalid timeout value was provided. Please enter a value above 0 (in ms).", + InvalidSocksClientOptionsProxiesLength: "At least two socks proxies must be provided for chaining.", + InvalidSocksClientOptionsCustomAuthRange: "Custom auth must be a value between 0x80 and 0xFE.", + InvalidSocksClientOptionsCustomAuthOptions: "When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.", + NegotiationError: "Negotiation error", + SocketClosed: "Socket closed", + ProxyConnectionTimedOut: "Proxy connection timed out", + InternalError: "SocksClient internal error (this should not happen)", + InvalidSocks4HandshakeResponse: "Received invalid Socks4 handshake response", + Socks4ProxyRejectedConnection: "Socks4 Proxy rejected connection", + InvalidSocks4IncomingConnectionResponse: "Socks4 invalid incoming connection response", + Socks4ProxyRejectedIncomingBoundConnection: "Socks4 Proxy rejected incoming bound connection", + InvalidSocks5InitialHandshakeResponse: "Received invalid Socks5 initial handshake response", + InvalidSocks5IntiailHandshakeSocksVersion: "Received invalid Socks5 initial handshake (invalid socks version)", + InvalidSocks5InitialHandshakeNoAcceptedAuthType: "Received invalid Socks5 initial handshake (no accepted authentication type)", + InvalidSocks5InitialHandshakeUnknownAuthType: "Received invalid Socks5 initial handshake (unknown authentication type)", + Socks5AuthenticationFailed: "Socks5 Authentication failed", + InvalidSocks5FinalHandshake: "Received invalid Socks5 final handshake response", + InvalidSocks5FinalHandshakeRejected: "Socks5 proxy rejected connection", + InvalidSocks5IncomingConnectionResponse: "Received invalid Socks5 incoming connection response", + Socks5ProxyRejectedIncomingBoundConnection: "Socks5 Proxy rejected incoming bound connection" + }; + exports2.ERRORS = ERRORS; + var SOCKS_INCOMING_PACKET_SIZES = { + Socks5InitialHandshakeResponse: 2, + Socks5UserPassAuthenticationResponse: 2, + // Command response + incoming connection (bind) + Socks5ResponseHeader: 5, + Socks5ResponseIPv4: 10, + Socks5ResponseIPv6: 22, + Socks5ResponseHostname: (hostNameLength) => hostNameLength + 7, + // Command response + incoming connection (bind) + Socks4Response: 8 + // 2 header + 2 port + 4 ip + }; + exports2.SOCKS_INCOMING_PACKET_SIZES = SOCKS_INCOMING_PACKET_SIZES; + var SocksCommand; + (function(SocksCommand2) { + SocksCommand2[SocksCommand2["connect"] = 1] = "connect"; + SocksCommand2[SocksCommand2["bind"] = 2] = "bind"; + SocksCommand2[SocksCommand2["associate"] = 3] = "associate"; + })(SocksCommand || (SocksCommand = {})); + exports2.SocksCommand = SocksCommand; + var Socks4Response; + (function(Socks4Response2) { + Socks4Response2[Socks4Response2["Granted"] = 90] = "Granted"; + Socks4Response2[Socks4Response2["Failed"] = 91] = "Failed"; + Socks4Response2[Socks4Response2["Rejected"] = 92] = "Rejected"; + Socks4Response2[Socks4Response2["RejectedIdent"] = 93] = "RejectedIdent"; + })(Socks4Response || (Socks4Response = {})); + exports2.Socks4Response = Socks4Response; + var Socks5Auth; + (function(Socks5Auth2) { + Socks5Auth2[Socks5Auth2["NoAuth"] = 0] = "NoAuth"; + Socks5Auth2[Socks5Auth2["GSSApi"] = 1] = "GSSApi"; + Socks5Auth2[Socks5Auth2["UserPass"] = 2] = "UserPass"; + })(Socks5Auth || (Socks5Auth = {})); + exports2.Socks5Auth = Socks5Auth; + var SOCKS5_CUSTOM_AUTH_START = 128; + exports2.SOCKS5_CUSTOM_AUTH_START = SOCKS5_CUSTOM_AUTH_START; + var SOCKS5_CUSTOM_AUTH_END = 254; + exports2.SOCKS5_CUSTOM_AUTH_END = SOCKS5_CUSTOM_AUTH_END; + var SOCKS5_NO_ACCEPTABLE_AUTH = 255; + exports2.SOCKS5_NO_ACCEPTABLE_AUTH = SOCKS5_NO_ACCEPTABLE_AUTH; + var Socks5Response; + (function(Socks5Response2) { + Socks5Response2[Socks5Response2["Granted"] = 0] = "Granted"; + Socks5Response2[Socks5Response2["Failure"] = 1] = "Failure"; + Socks5Response2[Socks5Response2["NotAllowed"] = 2] = "NotAllowed"; + Socks5Response2[Socks5Response2["NetworkUnreachable"] = 3] = "NetworkUnreachable"; + Socks5Response2[Socks5Response2["HostUnreachable"] = 4] = "HostUnreachable"; + Socks5Response2[Socks5Response2["ConnectionRefused"] = 5] = "ConnectionRefused"; + Socks5Response2[Socks5Response2["TTLExpired"] = 6] = "TTLExpired"; + Socks5Response2[Socks5Response2["CommandNotSupported"] = 7] = "CommandNotSupported"; + Socks5Response2[Socks5Response2["AddressNotSupported"] = 8] = "AddressNotSupported"; + })(Socks5Response || (Socks5Response = {})); + exports2.Socks5Response = Socks5Response; + var Socks5HostType; + (function(Socks5HostType2) { + Socks5HostType2[Socks5HostType2["IPv4"] = 1] = "IPv4"; + Socks5HostType2[Socks5HostType2["Hostname"] = 3] = "Hostname"; + Socks5HostType2[Socks5HostType2["IPv6"] = 4] = "IPv6"; + })(Socks5HostType || (Socks5HostType = {})); + exports2.Socks5HostType = Socks5HostType; + var SocksClientState; + (function(SocksClientState2) { + SocksClientState2[SocksClientState2["Created"] = 0] = "Created"; + SocksClientState2[SocksClientState2["Connecting"] = 1] = "Connecting"; + SocksClientState2[SocksClientState2["Connected"] = 2] = "Connected"; + SocksClientState2[SocksClientState2["SentInitialHandshake"] = 3] = "SentInitialHandshake"; + SocksClientState2[SocksClientState2["ReceivedInitialHandshakeResponse"] = 4] = "ReceivedInitialHandshakeResponse"; + SocksClientState2[SocksClientState2["SentAuthentication"] = 5] = "SentAuthentication"; + SocksClientState2[SocksClientState2["ReceivedAuthenticationResponse"] = 6] = "ReceivedAuthenticationResponse"; + SocksClientState2[SocksClientState2["SentFinalHandshake"] = 7] = "SentFinalHandshake"; + SocksClientState2[SocksClientState2["ReceivedFinalResponse"] = 8] = "ReceivedFinalResponse"; + SocksClientState2[SocksClientState2["BoundWaitingForConnection"] = 9] = "BoundWaitingForConnection"; + SocksClientState2[SocksClientState2["Established"] = 10] = "Established"; + SocksClientState2[SocksClientState2["Disconnected"] = 11] = "Disconnected"; + SocksClientState2[SocksClientState2["Error"] = 99] = "Error"; + })(SocksClientState || (SocksClientState = {})); + exports2.SocksClientState = SocksClientState; + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/util.js +var require_util3 = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.shuffleArray = exports2.SocksClientError = void 0; + var SocksClientError = class extends Error { + constructor(message, options2) { + super(message); + this.options = options2; + } + }; + exports2.SocksClientError = SocksClientError; + function shuffleArray(array) { + for (let i = array.length - 1; i > 0; i--) { + const j = Math.floor(Math.random() * (i + 1)); + [array[i], array[j]] = [array[j], array[i]]; + } + } + exports2.shuffleArray = shuffleArray; + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/helpers.js +var require_helpers = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/helpers.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateSocksClientChainOptions = exports2.validateSocksClientOptions = void 0; + var util_1 = require_util3(); + var constants_1 = require_constants6(); + var stream5 = require("stream"); + function validateSocksClientOptions(options2, acceptedCommands = ["connect", "bind", "associate"]) { + if (!constants_1.SocksCommand[options2.command]) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommand, options2); + } + if (acceptedCommands.indexOf(options2.command) === -1) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommandForOperation, options2); + } + if (!isValidSocksRemoteHost(options2.destination)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsDestination, options2); + } + if (!isValidSocksProxy(options2.proxy)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxy, options2); + } + validateCustomProxyAuth(options2.proxy, options2); + if (options2.timeout && !isValidTimeoutValue(options2.timeout)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsTimeout, options2); + } + if (options2.existing_socket && !(options2.existing_socket instanceof stream5.Duplex)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsExistingSocket, options2); + } + } + exports2.validateSocksClientOptions = validateSocksClientOptions; + function validateSocksClientChainOptions(options2) { + if (options2.command !== "connect") { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommandChain, options2); + } + if (!isValidSocksRemoteHost(options2.destination)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsDestination, options2); + } + if (!(options2.proxies && Array.isArray(options2.proxies) && options2.proxies.length >= 2)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxiesLength, options2); + } + options2.proxies.forEach((proxy2) => { + if (!isValidSocksProxy(proxy2)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxy, options2); + } + validateCustomProxyAuth(proxy2, options2); + }); + if (options2.timeout && !isValidTimeoutValue(options2.timeout)) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsTimeout, options2); + } + } + exports2.validateSocksClientChainOptions = validateSocksClientChainOptions; + function validateCustomProxyAuth(proxy2, options2) { + if (proxy2.custom_auth_method !== void 0) { + if (proxy2.custom_auth_method < constants_1.SOCKS5_CUSTOM_AUTH_START || proxy2.custom_auth_method > constants_1.SOCKS5_CUSTOM_AUTH_END) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthRange, options2); + } + if (proxy2.custom_auth_request_handler === void 0 || typeof proxy2.custom_auth_request_handler !== "function") { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options2); + } + if (proxy2.custom_auth_response_size === void 0) { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options2); + } + if (proxy2.custom_auth_response_handler === void 0 || typeof proxy2.custom_auth_response_handler !== "function") { + throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options2); + } + } + } + function isValidSocksRemoteHost(remoteHost) { + return remoteHost && typeof remoteHost.host === "string" && typeof remoteHost.port === "number" && remoteHost.port >= 0 && remoteHost.port <= 65535; + } + function isValidSocksProxy(proxy2) { + return proxy2 && (typeof proxy2.host === "string" || typeof proxy2.ipaddress === "string") && typeof proxy2.port === "number" && proxy2.port >= 0 && proxy2.port <= 65535 && (proxy2.type === 4 || proxy2.type === 5); + } + function isValidTimeoutValue(value) { + return typeof value === "number" && value > 0; + } + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/receivebuffer.js +var require_receivebuffer = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/common/receivebuffer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ReceiveBuffer = void 0; + var ReceiveBuffer = class { + constructor(size = 4096) { + this.buffer = Buffer.allocUnsafe(size); + this.offset = 0; + this.originalSize = size; + } + get length() { + return this.offset; + } + append(data) { + if (!Buffer.isBuffer(data)) { + throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer."); + } + if (this.offset + data.length >= this.buffer.length) { + const tmp = this.buffer; + this.buffer = Buffer.allocUnsafe(Math.max(this.buffer.length + this.originalSize, this.buffer.length + data.length)); + tmp.copy(this.buffer); + } + data.copy(this.buffer, this.offset); + return this.offset += data.length; + } + peek(length) { + if (length > this.offset) { + throw new Error("Attempted to read beyond the bounds of the managed internal data."); + } + return this.buffer.slice(0, length); + } + get(length) { + if (length > this.offset) { + throw new Error("Attempted to read beyond the bounds of the managed internal data."); + } + const value = Buffer.allocUnsafe(length); + this.buffer.slice(0, length).copy(value); + this.buffer.copyWithin(0, length, length + this.offset - length); + this.offset -= length; + return value; + } + }; + exports2.ReceiveBuffer = ReceiveBuffer; + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/client/socksclient.js +var require_socksclient = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/client/socksclient.js"(exports2) { + "use strict"; + var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve8) { + resolve8(value); + }); + } + return new (P || (P = Promise))(function(resolve8, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve8(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SocksClientError = exports2.SocksClient = void 0; + var events_1 = require("events"); + var net = require("net"); + var ip = require_ip(); + var smart_buffer_1 = require_smartbuffer(); + var constants_1 = require_constants6(); + var helpers_1 = require_helpers(); + var receivebuffer_1 = require_receivebuffer(); + var util_1 = require_util3(); + Object.defineProperty(exports2, "SocksClientError", { enumerable: true, get: function() { + return util_1.SocksClientError; + } }); + var SocksClient = class _SocksClient extends events_1.EventEmitter { + constructor(options2) { + super(); + this.options = Object.assign({}, options2); + (0, helpers_1.validateSocksClientOptions)(options2); + this.setState(constants_1.SocksClientState.Created); + } + /** + * Creates a new SOCKS connection. + * + * Note: Supports callbacks and promises. Only supports the connect command. + * @param options { SocksClientOptions } Options. + * @param callback { Function } An optional callback function. + * @returns { Promise } + */ + static createConnection(options2, callback) { + return new Promise((resolve8, reject) => { + try { + (0, helpers_1.validateSocksClientOptions)(options2, ["connect"]); + } catch (err2) { + if (typeof callback === "function") { + callback(err2); + return resolve8(err2); + } else { + return reject(err2); + } + } + const client = new _SocksClient(options2); + client.connect(options2.existing_socket); + client.once("established", (info2) => { + client.removeAllListeners(); + if (typeof callback === "function") { + callback(null, info2); + resolve8(info2); + } else { + resolve8(info2); + } + }); + client.once("error", (err2) => { + client.removeAllListeners(); + if (typeof callback === "function") { + callback(err2); + resolve8(err2); + } else { + reject(err2); + } + }); + }); + } + /** + * Creates a new SOCKS connection chain to a destination host through 2 or more SOCKS proxies. + * + * Note: Supports callbacks and promises. Only supports the connect method. + * Note: Implemented via createConnection() factory function. + * @param options { SocksClientChainOptions } Options + * @param callback { Function } An optional callback function. + * @returns { Promise } + */ + static createConnectionChain(options2, callback) { + return new Promise((resolve8, reject) => __awaiter(this, void 0, void 0, function* () { + try { + (0, helpers_1.validateSocksClientChainOptions)(options2); + } catch (err2) { + if (typeof callback === "function") { + callback(err2); + return resolve8(err2); + } else { + return reject(err2); + } + } + if (options2.randomizeChain) { + (0, util_1.shuffleArray)(options2.proxies); + } + try { + let sock; + for (let i = 0; i < options2.proxies.length; i++) { + const nextProxy = options2.proxies[i]; + const nextDestination = i === options2.proxies.length - 1 ? options2.destination : { + host: options2.proxies[i + 1].host || options2.proxies[i + 1].ipaddress, + port: options2.proxies[i + 1].port + }; + const result = yield _SocksClient.createConnection({ + command: "connect", + proxy: nextProxy, + destination: nextDestination, + existing_socket: sock + }); + sock = sock || result.socket; + } + if (typeof callback === "function") { + callback(null, { socket: sock }); + resolve8({ socket: sock }); + } else { + resolve8({ socket: sock }); + } + } catch (err2) { + if (typeof callback === "function") { + callback(err2); + resolve8(err2); + } else { + reject(err2); + } + } + })); + } + /** + * Creates a SOCKS UDP Frame. + * @param options + */ + static createUDPFrame(options2) { + const buff = new smart_buffer_1.SmartBuffer(); + buff.writeUInt16BE(0); + buff.writeUInt8(options2.frameNumber || 0); + if (net.isIPv4(options2.remoteHost.host)) { + buff.writeUInt8(constants_1.Socks5HostType.IPv4); + buff.writeUInt32BE(ip.toLong(options2.remoteHost.host)); + } else if (net.isIPv6(options2.remoteHost.host)) { + buff.writeUInt8(constants_1.Socks5HostType.IPv6); + buff.writeBuffer(ip.toBuffer(options2.remoteHost.host)); + } else { + buff.writeUInt8(constants_1.Socks5HostType.Hostname); + buff.writeUInt8(Buffer.byteLength(options2.remoteHost.host)); + buff.writeString(options2.remoteHost.host); + } + buff.writeUInt16BE(options2.remoteHost.port); + buff.writeBuffer(options2.data); + return buff.toBuffer(); + } + /** + * Parses a SOCKS UDP frame. + * @param data + */ + static parseUDPFrame(data) { + const buff = smart_buffer_1.SmartBuffer.fromBuffer(data); + buff.readOffset = 2; + const frameNumber = buff.readUInt8(); + const hostType = buff.readUInt8(); + let remoteHost; + if (hostType === constants_1.Socks5HostType.IPv4) { + remoteHost = ip.fromLong(buff.readUInt32BE()); + } else if (hostType === constants_1.Socks5HostType.IPv6) { + remoteHost = ip.toString(buff.readBuffer(16)); + } else { + remoteHost = buff.readString(buff.readUInt8()); + } + const remotePort = buff.readUInt16BE(); + return { + frameNumber, + remoteHost: { + host: remoteHost, + port: remotePort + }, + data: buff.readBuffer() + }; + } + /** + * Internal state setter. If the SocksClient is in an error state, it cannot be changed to a non error state. + */ + setState(newState) { + if (this.state !== constants_1.SocksClientState.Error) { + this.state = newState; + } + } + /** + * Starts the connection establishment to the proxy and destination. + * @param existingSocket Connected socket to use instead of creating a new one (internal use). + */ + connect(existingSocket) { + this.onDataReceived = (data) => this.onDataReceivedHandler(data); + this.onClose = () => this.onCloseHandler(); + this.onError = (err2) => this.onErrorHandler(err2); + this.onConnect = () => this.onConnectHandler(); + const timer = setTimeout(() => this.onEstablishedTimeout(), this.options.timeout || constants_1.DEFAULT_TIMEOUT); + if (timer.unref && typeof timer.unref === "function") { + timer.unref(); + } + if (existingSocket) { + this.socket = existingSocket; + } else { + this.socket = new net.Socket(); + } + this.socket.once("close", this.onClose); + this.socket.once("error", this.onError); + this.socket.once("connect", this.onConnect); + this.socket.on("data", this.onDataReceived); + this.setState(constants_1.SocksClientState.Connecting); + this.receiveBuffer = new receivebuffer_1.ReceiveBuffer(); + if (existingSocket) { + this.socket.emit("connect"); + } else { + this.socket.connect(this.getSocketOptions()); + if (this.options.set_tcp_nodelay !== void 0 && this.options.set_tcp_nodelay !== null) { + this.socket.setNoDelay(!!this.options.set_tcp_nodelay); + } + } + this.prependOnceListener("established", (info2) => { + setImmediate(() => { + if (this.receiveBuffer.length > 0) { + const excessData = this.receiveBuffer.get(this.receiveBuffer.length); + info2.socket.emit("data", excessData); + } + info2.socket.resume(); + }); + }); + } + // Socket options (defaults host/port to options.proxy.host/options.proxy.port) + getSocketOptions() { + return Object.assign(Object.assign({}, this.options.socket_options), { host: this.options.proxy.host || this.options.proxy.ipaddress, port: this.options.proxy.port }); + } + /** + * Handles internal Socks timeout callback. + * Note: If the Socks client is not BoundWaitingForConnection or Established, the connection will be closed. + */ + onEstablishedTimeout() { + if (this.state !== constants_1.SocksClientState.Established && this.state !== constants_1.SocksClientState.BoundWaitingForConnection) { + this.closeSocket(constants_1.ERRORS.ProxyConnectionTimedOut); + } + } + /** + * Handles Socket connect event. + */ + onConnectHandler() { + this.setState(constants_1.SocksClientState.Connected); + if (this.options.proxy.type === 4) { + this.sendSocks4InitialHandshake(); + } else { + this.sendSocks5InitialHandshake(); + } + this.setState(constants_1.SocksClientState.SentInitialHandshake); + } + /** + * Handles Socket data event. + * @param data + */ + onDataReceivedHandler(data) { + this.receiveBuffer.append(data); + this.processData(); + } + /** + * Handles processing of the data we have received. + */ + processData() { + while (this.state !== constants_1.SocksClientState.Established && this.state !== constants_1.SocksClientState.Error && this.receiveBuffer.length >= this.nextRequiredPacketBufferSize) { + if (this.state === constants_1.SocksClientState.SentInitialHandshake) { + if (this.options.proxy.type === 4) { + this.handleSocks4FinalHandshakeResponse(); + } else { + this.handleInitialSocks5HandshakeResponse(); + } + } else if (this.state === constants_1.SocksClientState.SentAuthentication) { + this.handleInitialSocks5AuthenticationHandshakeResponse(); + } else if (this.state === constants_1.SocksClientState.SentFinalHandshake) { + this.handleSocks5FinalHandshakeResponse(); + } else if (this.state === constants_1.SocksClientState.BoundWaitingForConnection) { + if (this.options.proxy.type === 4) { + this.handleSocks4IncomingConnectionResponse(); + } else { + this.handleSocks5IncomingConnectionResponse(); + } + } else { + this.closeSocket(constants_1.ERRORS.InternalError); + break; + } + } + } + /** + * Handles Socket close event. + * @param had_error + */ + onCloseHandler() { + this.closeSocket(constants_1.ERRORS.SocketClosed); + } + /** + * Handles Socket error event. + * @param err + */ + onErrorHandler(err2) { + this.closeSocket(err2.message); + } + /** + * Removes internal event listeners on the underlying Socket. + */ + removeInternalSocketHandlers() { + this.socket.pause(); + this.socket.removeListener("data", this.onDataReceived); + this.socket.removeListener("close", this.onClose); + this.socket.removeListener("error", this.onError); + this.socket.removeListener("connect", this.onConnect); + } + /** + * Closes and destroys the underlying Socket. Emits an error event. + * @param err { String } An error string to include in error event. + */ + closeSocket(err2) { + if (this.state !== constants_1.SocksClientState.Error) { + this.setState(constants_1.SocksClientState.Error); + this.socket.destroy(); + this.removeInternalSocketHandlers(); + this.emit("error", new util_1.SocksClientError(err2, this.options)); + } + } + /** + * Sends initial Socks v4 handshake request. + */ + sendSocks4InitialHandshake() { + const userId = this.options.proxy.userId || ""; + const buff = new smart_buffer_1.SmartBuffer(); + buff.writeUInt8(4); + buff.writeUInt8(constants_1.SocksCommand[this.options.command]); + buff.writeUInt16BE(this.options.destination.port); + if (net.isIPv4(this.options.destination.host)) { + buff.writeBuffer(ip.toBuffer(this.options.destination.host)); + buff.writeStringNT(userId); + } else { + buff.writeUInt8(0); + buff.writeUInt8(0); + buff.writeUInt8(0); + buff.writeUInt8(1); + buff.writeStringNT(userId); + buff.writeStringNT(this.options.destination.host); + } + this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks4Response; + this.socket.write(buff.toBuffer()); + } + /** + * Handles Socks v4 handshake response. + * @param data + */ + handleSocks4FinalHandshakeResponse() { + const data = this.receiveBuffer.get(8); + if (data[1] !== constants_1.Socks4Response.Granted) { + this.closeSocket(`${constants_1.ERRORS.Socks4ProxyRejectedConnection} - (${constants_1.Socks4Response[data[1]]})`); + } else { + if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.bind) { + const buff = smart_buffer_1.SmartBuffer.fromBuffer(data); + buff.readOffset = 2; + const remoteHost = { + port: buff.readUInt16BE(), + host: ip.fromLong(buff.readUInt32BE()) + }; + if (remoteHost.host === "0.0.0.0") { + remoteHost.host = this.options.proxy.ipaddress; + } + this.setState(constants_1.SocksClientState.BoundWaitingForConnection); + this.emit("bound", { remoteHost, socket: this.socket }); + } else { + this.setState(constants_1.SocksClientState.Established); + this.removeInternalSocketHandlers(); + this.emit("established", { socket: this.socket }); + } + } + } + /** + * Handles Socks v4 incoming connection request (BIND) + * @param data + */ + handleSocks4IncomingConnectionResponse() { + const data = this.receiveBuffer.get(8); + if (data[1] !== constants_1.Socks4Response.Granted) { + this.closeSocket(`${constants_1.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${constants_1.Socks4Response[data[1]]})`); + } else { + const buff = smart_buffer_1.SmartBuffer.fromBuffer(data); + buff.readOffset = 2; + const remoteHost = { + port: buff.readUInt16BE(), + host: ip.fromLong(buff.readUInt32BE()) + }; + this.setState(constants_1.SocksClientState.Established); + this.removeInternalSocketHandlers(); + this.emit("established", { remoteHost, socket: this.socket }); + } + } + /** + * Sends initial Socks v5 handshake request. + */ + sendSocks5InitialHandshake() { + const buff = new smart_buffer_1.SmartBuffer(); + const supportedAuthMethods = [constants_1.Socks5Auth.NoAuth]; + if (this.options.proxy.userId || this.options.proxy.password) { + supportedAuthMethods.push(constants_1.Socks5Auth.UserPass); + } + if (this.options.proxy.custom_auth_method !== void 0) { + supportedAuthMethods.push(this.options.proxy.custom_auth_method); + } + buff.writeUInt8(5); + buff.writeUInt8(supportedAuthMethods.length); + for (const authMethod of supportedAuthMethods) { + buff.writeUInt8(authMethod); + } + this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse; + this.socket.write(buff.toBuffer()); + this.setState(constants_1.SocksClientState.SentInitialHandshake); + } + /** + * Handles initial Socks v5 handshake response. + * @param data + */ + handleInitialSocks5HandshakeResponse() { + const data = this.receiveBuffer.get(2); + if (data[0] !== 5) { + this.closeSocket(constants_1.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion); + } else if (data[1] === constants_1.SOCKS5_NO_ACCEPTABLE_AUTH) { + this.closeSocket(constants_1.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType); + } else { + if (data[1] === constants_1.Socks5Auth.NoAuth) { + this.socks5ChosenAuthType = constants_1.Socks5Auth.NoAuth; + this.sendSocks5CommandRequest(); + } else if (data[1] === constants_1.Socks5Auth.UserPass) { + this.socks5ChosenAuthType = constants_1.Socks5Auth.UserPass; + this.sendSocks5UserPassAuthentication(); + } else if (data[1] === this.options.proxy.custom_auth_method) { + this.socks5ChosenAuthType = this.options.proxy.custom_auth_method; + this.sendSocks5CustomAuthentication(); + } else { + this.closeSocket(constants_1.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType); + } + } + } + /** + * Sends Socks v5 user & password auth handshake. + * + * Note: No auth and user/pass are currently supported. + */ + sendSocks5UserPassAuthentication() { + const userId = this.options.proxy.userId || ""; + const password = this.options.proxy.password || ""; + const buff = new smart_buffer_1.SmartBuffer(); + buff.writeUInt8(1); + buff.writeUInt8(Buffer.byteLength(userId)); + buff.writeString(userId); + buff.writeUInt8(Buffer.byteLength(password)); + buff.writeString(password); + this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse; + this.socket.write(buff.toBuffer()); + this.setState(constants_1.SocksClientState.SentAuthentication); + } + sendSocks5CustomAuthentication() { + return __awaiter(this, void 0, void 0, function* () { + this.nextRequiredPacketBufferSize = this.options.proxy.custom_auth_response_size; + this.socket.write(yield this.options.proxy.custom_auth_request_handler()); + this.setState(constants_1.SocksClientState.SentAuthentication); + }); + } + handleSocks5CustomAuthHandshakeResponse(data) { + return __awaiter(this, void 0, void 0, function* () { + return yield this.options.proxy.custom_auth_response_handler(data); + }); + } + handleSocks5AuthenticationNoAuthHandshakeResponse(data) { + return __awaiter(this, void 0, void 0, function* () { + return data[1] === 0; + }); + } + handleSocks5AuthenticationUserPassHandshakeResponse(data) { + return __awaiter(this, void 0, void 0, function* () { + return data[1] === 0; + }); + } + /** + * Handles Socks v5 auth handshake response. + * @param data + */ + handleInitialSocks5AuthenticationHandshakeResponse() { + return __awaiter(this, void 0, void 0, function* () { + this.setState(constants_1.SocksClientState.ReceivedAuthenticationResponse); + let authResult = false; + if (this.socks5ChosenAuthType === constants_1.Socks5Auth.NoAuth) { + authResult = yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)); + } else if (this.socks5ChosenAuthType === constants_1.Socks5Auth.UserPass) { + authResult = yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)); + } else if (this.socks5ChosenAuthType === this.options.proxy.custom_auth_method) { + authResult = yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size)); + } + if (!authResult) { + this.closeSocket(constants_1.ERRORS.Socks5AuthenticationFailed); + } else { + this.sendSocks5CommandRequest(); + } + }); + } + /** + * Sends Socks v5 final handshake request. + */ + sendSocks5CommandRequest() { + const buff = new smart_buffer_1.SmartBuffer(); + buff.writeUInt8(5); + buff.writeUInt8(constants_1.SocksCommand[this.options.command]); + buff.writeUInt8(0); + if (net.isIPv4(this.options.destination.host)) { + buff.writeUInt8(constants_1.Socks5HostType.IPv4); + buff.writeBuffer(ip.toBuffer(this.options.destination.host)); + } else if (net.isIPv6(this.options.destination.host)) { + buff.writeUInt8(constants_1.Socks5HostType.IPv6); + buff.writeBuffer(ip.toBuffer(this.options.destination.host)); + } else { + buff.writeUInt8(constants_1.Socks5HostType.Hostname); + buff.writeUInt8(this.options.destination.host.length); + buff.writeString(this.options.destination.host); + } + buff.writeUInt16BE(this.options.destination.port); + this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader; + this.socket.write(buff.toBuffer()); + this.setState(constants_1.SocksClientState.SentFinalHandshake); + } + /** + * Handles Socks v5 final handshake response. + * @param data + */ + handleSocks5FinalHandshakeResponse() { + const header = this.receiveBuffer.peek(5); + if (header[0] !== 5 || header[1] !== constants_1.Socks5Response.Granted) { + this.closeSocket(`${constants_1.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${constants_1.Socks5Response[header[1]]}`); + } else { + const addressType = header[3]; + let remoteHost; + let buff; + if (addressType === constants_1.Socks5HostType.IPv4) { + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4; + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); + remoteHost = { + host: ip.fromLong(buff.readUInt32BE()), + port: buff.readUInt16BE() + }; + if (remoteHost.host === "0.0.0.0") { + remoteHost.host = this.options.proxy.ipaddress; + } + } else if (addressType === constants_1.Socks5HostType.Hostname) { + const hostLength = header[4]; + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(hostLength); + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(5)); + remoteHost = { + host: buff.readString(hostLength), + port: buff.readUInt16BE() + }; + } else if (addressType === constants_1.Socks5HostType.IPv6) { + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6; + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); + remoteHost = { + host: ip.toString(buff.readBuffer(16)), + port: buff.readUInt16BE() + }; + } + this.setState(constants_1.SocksClientState.ReceivedFinalResponse); + if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.connect) { + this.setState(constants_1.SocksClientState.Established); + this.removeInternalSocketHandlers(); + this.emit("established", { remoteHost, socket: this.socket }); + } else if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.bind) { + this.setState(constants_1.SocksClientState.BoundWaitingForConnection); + this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader; + this.emit("bound", { remoteHost, socket: this.socket }); + } else if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.associate) { + this.setState(constants_1.SocksClientState.Established); + this.removeInternalSocketHandlers(); + this.emit("established", { + remoteHost, + socket: this.socket + }); + } + } + } + /** + * Handles Socks v5 incoming connection request (BIND). + */ + handleSocks5IncomingConnectionResponse() { + const header = this.receiveBuffer.peek(5); + if (header[0] !== 5 || header[1] !== constants_1.Socks5Response.Granted) { + this.closeSocket(`${constants_1.ERRORS.Socks5ProxyRejectedIncomingBoundConnection} - ${constants_1.Socks5Response[header[1]]}`); + } else { + const addressType = header[3]; + let remoteHost; + let buff; + if (addressType === constants_1.Socks5HostType.IPv4) { + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4; + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); + remoteHost = { + host: ip.fromLong(buff.readUInt32BE()), + port: buff.readUInt16BE() + }; + if (remoteHost.host === "0.0.0.0") { + remoteHost.host = this.options.proxy.ipaddress; + } + } else if (addressType === constants_1.Socks5HostType.Hostname) { + const hostLength = header[4]; + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(hostLength); + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(5)); + remoteHost = { + host: buff.readString(hostLength), + port: buff.readUInt16BE() + }; + } else if (addressType === constants_1.Socks5HostType.IPv6) { + const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6; + if (this.receiveBuffer.length < dataNeeded) { + this.nextRequiredPacketBufferSize = dataNeeded; + return; + } + buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4)); + remoteHost = { + host: ip.toString(buff.readBuffer(16)), + port: buff.readUInt16BE() + }; + } + this.setState(constants_1.SocksClientState.Established); + this.removeInternalSocketHandlers(); + this.emit("established", { remoteHost, socket: this.socket }); + } + } + get socksClientOptions() { + return Object.assign({}, this.options); + } + }; + exports2.SocksClient = SocksClient; + } +}); + +// ../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/index.js +var require_build = __commonJS({ + "../node_modules/.pnpm/socks@2.7.1/node_modules/socks/build/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_socksclient(), exports2); + } +}); + +// ../node_modules/.pnpm/agent-base@7.1.0/node_modules/agent-base/dist/helpers.js +var require_helpers2 = __commonJS({ + "../node_modules/.pnpm/agent-base@7.1.0/node_modules/agent-base/dist/helpers.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar = exports2 && exports2.__importStar || function(mod2) { + if (mod2 && mod2.__esModule) + return mod2; + var result = {}; + if (mod2 != null) { + for (var k in mod2) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod2, k)) + __createBinding(result, mod2, k); + } + __setModuleDefault(result, mod2); + return result; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.req = exports2.json = exports2.toBuffer = void 0; + var http4 = __importStar(require("http")); + var https4 = __importStar(require("https")); + async function toBuffer(stream5) { + let length = 0; + const chunks = []; + for await (const chunk of stream5) { + length += chunk.length; + chunks.push(chunk); + } + return Buffer.concat(chunks, length); + } + exports2.toBuffer = toBuffer; + async function json(stream5) { + const buf = await toBuffer(stream5); + const str = buf.toString("utf8"); + try { + return JSON.parse(str); + } catch (_err) { + const err2 = _err; + err2.message += ` (input: ${str})`; + throw err2; + } + } + exports2.json = json; + function req(url2, opts = {}) { + const href = typeof url2 === "string" ? url2 : url2.href; + const req2 = (href.startsWith("https:") ? https4 : http4).request(url2, opts); + const promise = new Promise((resolve8, reject) => { + req2.once("response", resolve8).once("error", reject).end(); + }); + req2.then = promise.then.bind(promise); + return req2; + } + exports2.req = req; + } +}); + +// ../node_modules/.pnpm/agent-base@7.1.0/node_modules/agent-base/dist/index.js +var require_dist2 = __commonJS({ + "../node_modules/.pnpm/agent-base@7.1.0/node_modules/agent-base/dist/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar = exports2 && exports2.__importStar || function(mod2) { + if (mod2 && mod2.__esModule) + return mod2; + var result = {}; + if (mod2 != null) { + for (var k in mod2) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod2, k)) + __createBinding(result, mod2, k); + } + __setModuleDefault(result, mod2); + return result; + }; + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Agent = void 0; + var http4 = __importStar(require("http")); + __exportStar(require_helpers2(), exports2); + var INTERNAL2 = Symbol("AgentBaseInternalState"); + var Agent2 = class extends http4.Agent { + constructor(opts) { + super(opts); + this[INTERNAL2] = {}; + } + /** + * Determine whether this is an `http` or `https` request. + */ + isSecureEndpoint(options2) { + if (options2) { + if (typeof options2.secureEndpoint === "boolean") { + return options2.secureEndpoint; + } + if (typeof options2.protocol === "string") { + return options2.protocol === "https:"; + } + } + const { stack } = new Error(); + if (typeof stack !== "string") + return false; + return stack.split("\n").some((l2) => l2.indexOf("(https.js:") !== -1 || l2.indexOf("node:https:") !== -1); + } + createSocket(req, options2, cb) { + const connectOpts = { + ...options2, + secureEndpoint: this.isSecureEndpoint(options2) + }; + Promise.resolve().then(() => this.connect(req, connectOpts)).then((socket) => { + if (socket instanceof http4.Agent) { + return socket.addRequest(req, connectOpts); + } + this[INTERNAL2].currentSocket = socket; + super.createSocket(req, options2, cb); + }, cb); + } + createConnection() { + const socket = this[INTERNAL2].currentSocket; + this[INTERNAL2].currentSocket = void 0; + if (!socket) { + throw new Error("No socket was returned in the `connect()` function"); + } + return socket; + } + get defaultPort() { + return this[INTERNAL2].defaultPort ?? (this.protocol === "https:" ? 443 : 80); + } + set defaultPort(v) { + if (this[INTERNAL2]) { + this[INTERNAL2].defaultPort = v; + } + } + get protocol() { + return this[INTERNAL2].protocol ?? (this.isSecureEndpoint() ? "https:" : "http:"); + } + set protocol(v) { + if (this[INTERNAL2]) { + this[INTERNAL2].protocol = v; + } + } + }; + exports2.Agent = Agent2; + } +}); + +// ../node_modules/.pnpm/ms@2.1.2/node_modules/ms/index.js +var require_ms = __commonJS({ + "../node_modules/.pnpm/ms@2.1.2/node_modules/ms/index.js"(exports2, module2) { + var s = 1e3; + var m = s * 60; + var h = m * 60; + var d = h * 24; + var w = d * 7; + var y = d * 365.25; + module2.exports = function(val, options2) { + options2 = options2 || {}; + var type2 = typeof val; + if (type2 === "string" && val.length > 0) { + return parse7(val); + } else if (type2 === "number" && isFinite(val)) { + return options2.long ? fmtLong(val) : fmtShort(val); + } + throw new Error( + "val is not a non-empty string or a valid number. val=" + JSON.stringify(val) + ); + }; + function parse7(str) { + str = String(str); + if (str.length > 100) { + return; + } + var match2 = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( + str + ); + if (!match2) { + return; + } + var n = parseFloat(match2[1]); + var type2 = (match2[2] || "ms").toLowerCase(); + switch (type2) { + case "years": + case "year": + case "yrs": + case "yr": + case "y": + return n * y; + case "weeks": + case "week": + case "w": + return n * w; + case "days": + case "day": + case "d": + return n * d; + case "hours": + case "hour": + case "hrs": + case "hr": + case "h": + return n * h; + case "minutes": + case "minute": + case "mins": + case "min": + case "m": + return n * m; + case "seconds": + case "second": + case "secs": + case "sec": + case "s": + return n * s; + case "milliseconds": + case "millisecond": + case "msecs": + case "msec": + case "ms": + return n; + default: + return void 0; + } + } + function fmtShort(ms) { + var msAbs = Math.abs(ms); + if (msAbs >= d) { + return Math.round(ms / d) + "d"; + } + if (msAbs >= h) { + return Math.round(ms / h) + "h"; + } + if (msAbs >= m) { + return Math.round(ms / m) + "m"; + } + if (msAbs >= s) { + return Math.round(ms / s) + "s"; + } + return ms + "ms"; + } + function fmtLong(ms) { + var msAbs = Math.abs(ms); + if (msAbs >= d) { + return plural(ms, msAbs, d, "day"); + } + if (msAbs >= h) { + return plural(ms, msAbs, h, "hour"); + } + if (msAbs >= m) { + return plural(ms, msAbs, m, "minute"); + } + if (msAbs >= s) { + return plural(ms, msAbs, s, "second"); + } + return ms + " ms"; + } + function plural(ms, msAbs, n, name) { + var isPlural = msAbs >= n * 1.5; + return Math.round(ms / n) + " " + name + (isPlural ? "s" : ""); + } + } +}); + +// ../node_modules/.pnpm/debug@4.3.4_supports-color@8.1.1/node_modules/debug/src/common.js +var require_common2 = __commonJS({ + "../node_modules/.pnpm/debug@4.3.4_supports-color@8.1.1/node_modules/debug/src/common.js"(exports2, module2) { + function setup(env4) { + createDebug.debug = createDebug; + createDebug.default = createDebug; + createDebug.coerce = coerce; + createDebug.disable = disable; + createDebug.enable = enable; + createDebug.enabled = enabled; + createDebug.humanize = require_ms(); + createDebug.destroy = destroy; + Object.keys(env4).forEach((key) => { + createDebug[key] = env4[key]; + }); + createDebug.names = []; + createDebug.skips = []; + createDebug.formatters = {}; + function selectColor(namespace) { + let hash = 0; + for (let i = 0; i < namespace.length; i++) { + hash = (hash << 5) - hash + namespace.charCodeAt(i); + hash |= 0; + } + return createDebug.colors[Math.abs(hash) % createDebug.colors.length]; + } + createDebug.selectColor = selectColor; + function createDebug(namespace) { + let prevTime; + let enableOverride = null; + let namespacesCache; + let enabledCache; + function debug(...args3) { + if (!debug.enabled) { + return; + } + const self2 = debug; + const curr = Number(/* @__PURE__ */ new Date()); + const ms = curr - (prevTime || curr); + self2.diff = ms; + self2.prev = prevTime; + self2.curr = curr; + prevTime = curr; + args3[0] = createDebug.coerce(args3[0]); + if (typeof args3[0] !== "string") { + args3.unshift("%O"); + } + let index = 0; + args3[0] = args3[0].replace(/%([a-zA-Z%])/g, (match2, format) => { + if (match2 === "%%") { + return "%"; + } + index++; + const formatter = createDebug.formatters[format]; + if (typeof formatter === "function") { + const val = args3[index]; + match2 = formatter.call(self2, val); + args3.splice(index, 1); + index--; + } + return match2; + }); + createDebug.formatArgs.call(self2, args3); + const logFn = self2.log || createDebug.log; + logFn.apply(self2, args3); + } + debug.namespace = namespace; + debug.useColors = createDebug.useColors(); + debug.color = createDebug.selectColor(namespace); + debug.extend = extend2; + debug.destroy = createDebug.destroy; + Object.defineProperty(debug, "enabled", { + enumerable: true, + configurable: false, + get: () => { + if (enableOverride !== null) { + return enableOverride; + } + if (namespacesCache !== createDebug.namespaces) { + namespacesCache = createDebug.namespaces; + enabledCache = createDebug.enabled(namespace); + } + return enabledCache; + }, + set: (v) => { + enableOverride = v; + } + }); + if (typeof createDebug.init === "function") { + createDebug.init(debug); + } + return debug; + } + function extend2(namespace, delimiter) { + const newDebug = createDebug(this.namespace + (typeof delimiter === "undefined" ? ":" : delimiter) + namespace); + newDebug.log = this.log; + return newDebug; + } + function enable(namespaces) { + createDebug.save(namespaces); + createDebug.namespaces = namespaces; + createDebug.names = []; + createDebug.skips = []; + let i; + const split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/); + const len = split.length; + for (i = 0; i < len; i++) { + if (!split[i]) { + continue; + } + namespaces = split[i].replace(/\*/g, ".*?"); + if (namespaces[0] === "-") { + createDebug.skips.push(new RegExp("^" + namespaces.slice(1) + "$")); + } else { + createDebug.names.push(new RegExp("^" + namespaces + "$")); + } + } + } + function disable() { + const namespaces = [ + ...createDebug.names.map(toNamespace), + ...createDebug.skips.map(toNamespace).map((namespace) => "-" + namespace) + ].join(","); + createDebug.enable(""); + return namespaces; + } + function enabled(name) { + if (name[name.length - 1] === "*") { + return true; + } + let i; + let len; + for (i = 0, len = createDebug.skips.length; i < len; i++) { + if (createDebug.skips[i].test(name)) { + return false; + } + } + for (i = 0, len = createDebug.names.length; i < len; i++) { + if (createDebug.names[i].test(name)) { + return true; + } + } + return false; + } + function toNamespace(regexp) { + return regexp.toString().substring(2, regexp.toString().length - 2).replace(/\.\*\?$/, "*"); + } + function coerce(val) { + if (val instanceof Error) { + return val.stack || val.message; + } + return val; + } + function destroy() { + console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."); + } + createDebug.enable(createDebug.load()); + return createDebug; + } + module2.exports = setup; + } +}); + +// ../node_modules/.pnpm/debug@4.3.4_supports-color@8.1.1/node_modules/debug/src/browser.js +var require_browser2 = __commonJS({ + "../node_modules/.pnpm/debug@4.3.4_supports-color@8.1.1/node_modules/debug/src/browser.js"(exports2, module2) { + exports2.formatArgs = formatArgs; + exports2.save = save; + exports2.load = load; + exports2.useColors = useColors; + exports2.storage = localstorage(); + exports2.destroy = (() => { + let warned2 = false; + return () => { + if (!warned2) { + warned2 = true; + console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."); + } + }; + })(); + exports2.colors = [ + "#0000CC", + "#0000FF", + "#0033CC", + "#0033FF", + "#0066CC", + "#0066FF", + "#0099CC", + "#0099FF", + "#00CC00", + "#00CC33", + "#00CC66", + "#00CC99", + "#00CCCC", + "#00CCFF", + "#3300CC", + "#3300FF", + "#3333CC", + "#3333FF", + "#3366CC", + "#3366FF", + "#3399CC", + "#3399FF", + "#33CC00", + "#33CC33", + "#33CC66", + "#33CC99", + "#33CCCC", + "#33CCFF", + "#6600CC", + "#6600FF", + "#6633CC", + "#6633FF", + "#66CC00", + "#66CC33", + "#9900CC", + "#9900FF", + "#9933CC", + "#9933FF", + "#99CC00", + "#99CC33", + "#CC0000", + "#CC0033", + "#CC0066", + "#CC0099", + "#CC00CC", + "#CC00FF", + "#CC3300", + "#CC3333", + "#CC3366", + "#CC3399", + "#CC33CC", + "#CC33FF", + "#CC6600", + "#CC6633", + "#CC9900", + "#CC9933", + "#CCCC00", + "#CCCC33", + "#FF0000", + "#FF0033", + "#FF0066", + "#FF0099", + "#FF00CC", + "#FF00FF", + "#FF3300", + "#FF3333", + "#FF3366", + "#FF3399", + "#FF33CC", + "#FF33FF", + "#FF6600", + "#FF6633", + "#FF9900", + "#FF9933", + "#FFCC00", + "#FFCC33" + ]; + function useColors() { + if (typeof window !== "undefined" && window.process && (window.process.type === "renderer" || window.process.__nwjs)) { + return true; + } + if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { + return false; + } + return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773 + typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31? + // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages + typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker + typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); + } + function formatArgs(args3) { + args3[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + args3[0] + (this.useColors ? "%c " : " ") + "+" + module2.exports.humanize(this.diff); + if (!this.useColors) { + return; + } + const c = "color: " + this.color; + args3.splice(1, 0, c, "color: inherit"); + let index = 0; + let lastC = 0; + args3[0].replace(/%[a-zA-Z%]/g, (match2) => { + if (match2 === "%%") { + return; + } + index++; + if (match2 === "%c") { + lastC = index; + } + }); + args3.splice(lastC, 0, c); + } + exports2.log = console.debug || console.log || (() => { + }); + function save(namespaces) { + try { + if (namespaces) { + exports2.storage.setItem("debug", namespaces); + } else { + exports2.storage.removeItem("debug"); + } + } catch (error) { + } + } + function load() { + let r; + try { + r = exports2.storage.getItem("debug"); + } catch (error) { + } + if (!r && typeof process !== "undefined" && "env" in process) { + r = process.env.DEBUG; + } + return r; + } + function localstorage() { + try { + return localStorage; + } catch (error) { + } + } + module2.exports = require_common2()(exports2); + var { formatters } = module2.exports; + formatters.j = function(v) { + try { + return JSON.stringify(v); + } catch (error) { + return "[UnexpectedJSONParseError]: " + error.message; + } + }; + } +}); + +// ../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js +var require_has_flag = __commonJS({ + "../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js"(exports2, module2) { + "use strict"; + module2.exports = (flag, argv = process.argv) => { + const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; + const position = argv.indexOf(prefix + flag); + const terminatorPosition = argv.indexOf("--"); + return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition); + }; + } +}); + +// ../node_modules/.pnpm/supports-color@8.1.1/node_modules/supports-color/index.js +var require_supports_color = __commonJS({ + "../node_modules/.pnpm/supports-color@8.1.1/node_modules/supports-color/index.js"(exports2, module2) { + "use strict"; + var os8 = require("os"); + var tty = require("tty"); + var hasFlag = require_has_flag(); + var { env: env4 } = process; + var flagForceColor; + if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) { + flagForceColor = 0; + } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { + flagForceColor = 1; + } + function envForceColor() { + if ("FORCE_COLOR" in env4) { + if (env4.FORCE_COLOR === "true") { + return 1; + } + if (env4.FORCE_COLOR === "false") { + return 0; + } + return env4.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env4.FORCE_COLOR, 10), 3); + } + } + function translateLevel(level) { + if (level === 0) { + return false; + } + return { + level, + hasBasic: true, + has256: level >= 2, + has16m: level >= 3 + }; + } + function supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) { + const noFlagForceColor = envForceColor(); + if (noFlagForceColor !== void 0) { + flagForceColor = noFlagForceColor; + } + const forceColor = sniffFlags ? flagForceColor : noFlagForceColor; + if (forceColor === 0) { + return 0; + } + if (sniffFlags) { + if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { + return 3; + } + if (hasFlag("color=256")) { + return 2; + } + } + if (haveStream && !streamIsTTY && forceColor === void 0) { + return 0; + } + const min = forceColor || 0; + if (env4.TERM === "dumb") { + return min; + } + if (process.platform === "win32") { + const osRelease = os8.release().split("."); + if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { + return Number(osRelease[2]) >= 14931 ? 3 : 2; + } + return 1; + } + if ("CI" in env4) { + if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE", "DRONE"].some((sign) => sign in env4) || env4.CI_NAME === "codeship") { + return 1; + } + return min; + } + if ("TEAMCITY_VERSION" in env4) { + return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env4.TEAMCITY_VERSION) ? 1 : 0; + } + if (env4.COLORTERM === "truecolor") { + return 3; + } + if ("TERM_PROGRAM" in env4) { + const version4 = Number.parseInt((env4.TERM_PROGRAM_VERSION || "").split(".")[0], 10); + switch (env4.TERM_PROGRAM) { + case "iTerm.app": + return version4 >= 3 ? 3 : 2; + case "Apple_Terminal": + return 2; + } + } + if (/-256(color)?$/i.test(env4.TERM)) { + return 2; + } + if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env4.TERM)) { + return 1; + } + if ("COLORTERM" in env4) { + return 1; + } + return min; + } + function getSupportLevel(stream5, options2 = {}) { + const level = supportsColor(stream5, { + streamIsTTY: stream5 && stream5.isTTY, + ...options2 + }); + return translateLevel(level); + } + module2.exports = { + supportsColor: getSupportLevel, + stdout: getSupportLevel({ isTTY: tty.isatty(1) }), + stderr: getSupportLevel({ isTTY: tty.isatty(2) }) + }; + } +}); + +// ../node_modules/.pnpm/debug@4.3.4_supports-color@8.1.1/node_modules/debug/src/node.js +var require_node4 = __commonJS({ + "../node_modules/.pnpm/debug@4.3.4_supports-color@8.1.1/node_modules/debug/src/node.js"(exports2, module2) { + var tty = require("tty"); + var util2 = require("util"); + exports2.init = init5; + exports2.log = log2; + exports2.formatArgs = formatArgs; + exports2.save = save; + exports2.load = load; + exports2.useColors = useColors; + exports2.destroy = util2.deprecate( + () => { + }, + "Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`." + ); + exports2.colors = [6, 2, 3, 4, 5, 1]; + try { + const supportsColor = require_supports_color(); + if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) { + exports2.colors = [ + 20, + 21, + 26, + 27, + 32, + 33, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 56, + 57, + 62, + 63, + 68, + 69, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 92, + 93, + 98, + 99, + 112, + 113, + 128, + 129, + 134, + 135, + 148, + 149, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 178, + 179, + 184, + 185, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 214, + 215, + 220, + 221 + ]; + } + } catch (error) { + } + exports2.inspectOpts = Object.keys(process.env).filter((key) => { + return /^debug_/i.test(key); + }).reduce((obj2, key) => { + const prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, (_, k) => { + return k.toUpperCase(); + }); + let val = process.env[key]; + if (/^(yes|on|true|enabled)$/i.test(val)) { + val = true; + } else if (/^(no|off|false|disabled)$/i.test(val)) { + val = false; + } else if (val === "null") { + val = null; + } else { + val = Number(val); + } + obj2[prop] = val; + return obj2; + }, {}); + function useColors() { + return "colors" in exports2.inspectOpts ? Boolean(exports2.inspectOpts.colors) : tty.isatty(process.stderr.fd); + } + function formatArgs(args3) { + const { namespace: name, useColors: useColors2 } = this; + if (useColors2) { + const c = this.color; + const colorCode = "\x1B[3" + (c < 8 ? c : "8;5;" + c); + const prefix = ` ${colorCode};1m${name} \x1B[0m`; + args3[0] = prefix + args3[0].split("\n").join("\n" + prefix); + args3.push(colorCode + "m+" + module2.exports.humanize(this.diff) + "\x1B[0m"); + } else { + args3[0] = getDate() + name + " " + args3[0]; + } + } + function getDate() { + if (exports2.inspectOpts.hideDate) { + return ""; + } + return (/* @__PURE__ */ new Date()).toISOString() + " "; + } + function log2(...args3) { + return process.stderr.write(util2.format(...args3) + "\n"); + } + function save(namespaces) { + if (namespaces) { + process.env.DEBUG = namespaces; + } else { + delete process.env.DEBUG; + } + } + function load() { + return process.env.DEBUG; + } + function init5(debug) { + debug.inspectOpts = {}; + const keys = Object.keys(exports2.inspectOpts); + for (let i = 0; i < keys.length; i++) { + debug.inspectOpts[keys[i]] = exports2.inspectOpts[keys[i]]; + } + } + module2.exports = require_common2()(exports2); + var { formatters } = module2.exports; + formatters.o = function(v) { + this.inspectOpts.colors = this.useColors; + return util2.inspect(v, this.inspectOpts).split("\n").map((str) => str.trim()).join(" "); + }; + formatters.O = function(v) { + this.inspectOpts.colors = this.useColors; + return util2.inspect(v, this.inspectOpts); + }; + } +}); + +// ../node_modules/.pnpm/debug@4.3.4_supports-color@8.1.1/node_modules/debug/src/index.js +var require_src3 = __commonJS({ + "../node_modules/.pnpm/debug@4.3.4_supports-color@8.1.1/node_modules/debug/src/index.js"(exports2, module2) { + if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) { + module2.exports = require_browser2(); + } else { + module2.exports = require_node4(); + } + } +}); + +// ../node_modules/.pnpm/socks-proxy-agent@8.0.1/node_modules/socks-proxy-agent/dist/index.js +var require_dist3 = __commonJS({ + "../node_modules/.pnpm/socks-proxy-agent@8.0.1/node_modules/socks-proxy-agent/dist/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { + return m[k]; + } }; + } + Object.defineProperty(o, k2, desc); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } : function(o, v) { + o["default"] = v; + }); + var __importStar = exports2 && exports2.__importStar || function(mod2) { + if (mod2 && mod2.__esModule) + return mod2; + var result = {}; + if (mod2 != null) { + for (var k in mod2) + if (k !== "default" && Object.prototype.hasOwnProperty.call(mod2, k)) + __createBinding(result, mod2, k); + } + __setModuleDefault(result, mod2); + return result; + }; + var __importDefault = exports2 && exports2.__importDefault || function(mod2) { + return mod2 && mod2.__esModule ? mod2 : { "default": mod2 }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SocksProxyAgent = void 0; + var socks_1 = require_build(); + var agent_base_1 = require_dist2(); + var debug_1 = __importDefault(require_src3()); + var dns = __importStar(require("dns")); + var net = __importStar(require("net")); + var tls = __importStar(require("tls")); + var debug = (0, debug_1.default)("socks-proxy-agent"); + function parseSocksURL(url2) { + let lookup = false; + let type2 = 5; + const host = url2.hostname; + const port = parseInt(url2.port, 10) || 1080; + switch (url2.protocol.replace(":", "")) { + case "socks4": + lookup = true; + type2 = 4; + break; + case "socks4a": + type2 = 4; + break; + case "socks5": + lookup = true; + type2 = 5; + break; + case "socks": + type2 = 5; + break; + case "socks5h": + type2 = 5; + break; + default: + throw new TypeError(`A "socks" protocol must be specified! Got: ${String(url2.protocol)}`); + } + const proxy2 = { + host, + port, + type: type2 + }; + if (url2.username) { + Object.defineProperty(proxy2, "userId", { + value: decodeURIComponent(url2.username), + enumerable: false + }); + } + if (url2.password != null) { + Object.defineProperty(proxy2, "password", { + value: decodeURIComponent(url2.password), + enumerable: false + }); + } + return { lookup, proxy: proxy2 }; + } + var SocksProxyAgent2 = class extends agent_base_1.Agent { + constructor(uri, opts) { + super(opts); + const url2 = typeof uri === "string" ? new URL(uri) : uri; + const { proxy: proxy2, lookup } = parseSocksURL(url2); + this.shouldLookup = lookup; + this.proxy = proxy2; + this.timeout = opts?.timeout ?? null; + } + /** + * Initiates a SOCKS connection to the specified SOCKS proxy server, + * which in turn connects to the specified remote host and port. + */ + async connect(req, opts) { + const { shouldLookup, proxy: proxy2, timeout } = this; + if (!opts.host) { + throw new Error("No `host` defined!"); + } + let { host } = opts; + const { port, lookup: lookupFn = dns.lookup } = opts; + if (shouldLookup) { + host = await new Promise((resolve8, reject) => { + lookupFn(host, {}, (err2, res) => { + if (err2) { + reject(err2); + } else { + resolve8(res); + } + }); + }); + } + const socksOpts = { + proxy: proxy2, + destination: { + host, + port: typeof port === "number" ? port : parseInt(port, 10) + }, + command: "connect", + timeout: timeout ?? void 0 + }; + const cleanup = (tlsSocket) => { + req.destroy(); + socket.destroy(); + if (tlsSocket) + tlsSocket.destroy(); + }; + debug("Creating socks proxy connection: %o", socksOpts); + const { socket } = await socks_1.SocksClient.createConnection(socksOpts); + debug("Successfully created socks proxy connection"); + if (timeout !== null) { + socket.setTimeout(timeout); + socket.on("timeout", () => cleanup()); + } + if (opts.secureEndpoint) { + debug("Upgrading socket connection to TLS"); + const servername = opts.servername || opts.host; + const tlsSocket = tls.connect({ + ...omit2(opts, "host", "path", "port"), + socket, + servername: net.isIP(servername) ? void 0 : servername + }); + tlsSocket.once("error", (error) => { + debug("Socket TLS error", error.message); + cleanup(tlsSocket); + }); + return tlsSocket; + } + return socket; + } + }; + SocksProxyAgent2.protocols = [ + "socks", + "socks4", + "socks4a", + "socks5", + "socks5h" + ]; + exports2.SocksProxyAgent = SocksProxyAgent2; + function omit2(obj2, ...keys) { + const ret2 = {}; + let key; + for (key in obj2) { + if (!keys.includes(key)) { + ret2[key] = obj2[key]; + } + } + return ret2; + } + } +}); + +// ../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/Assembler.js +var require_Assembler = __commonJS({ + "../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/Assembler.js"(exports2, module2) { + "use strict"; + var EventEmitter4 = require("events"); + var startObject = (Ctr) => function() { + if (this.done) { + this.done = false; + } else { + this.stack.push(this.current, this.key); + } + this.current = new Ctr(); + this.key = null; + }; + var Assembler = class _Assembler extends EventEmitter4 { + static connectTo(stream5, options2) { + return new _Assembler(options2).connectTo(stream5); + } + constructor(options2) { + super(); + this.stack = []; + this.current = this.key = null; + this.done = true; + if (options2) { + this.reviver = typeof options2.reviver == "function" && options2.reviver; + if (this.reviver) { + this.stringValue = this._saveValue = this._saveValueWithReviver; + } + if (options2.numberAsString) { + this.numberValue = this.stringValue; + } + } + } + connectTo(stream5) { + stream5.on("data", (chunk) => { + if (this[chunk.name]) { + this[chunk.name](chunk.value); + if (this.done) + this.emit("done", this); + } + }); + return this; + } + get depth() { + return (this.stack.length >> 1) + (this.done ? 0 : 1); + } + get path() { + const path30 = []; + for (let i = 0; i < this.stack.length; i += 2) { + const key = this.stack[i + 1]; + path30.push(key === null ? this.stack[i].length : key); + } + return path30; + } + dropToLevel(level) { + if (level < this.depth) { + if (level) { + const index = level - 1 << 1; + this.current = this.stack[index]; + this.key = this.stack[index + 1]; + this.stack.splice(index); + } else { + this.stack = []; + this.current = this.key = null; + this.done = true; + } + } + return this; + } + consume(chunk) { + this[chunk.name] && this[chunk.name](chunk.value); + return this; + } + keyValue(value) { + this.key = value; + } + //stringValue() - aliased below to _saveValue() + numberValue(value) { + this._saveValue(parseFloat(value)); + } + nullValue() { + this._saveValue(null); + } + trueValue() { + this._saveValue(true); + } + falseValue() { + this._saveValue(false); + } + //startObject() - assigned below + endObject() { + if (this.stack.length) { + const value = this.current; + this.key = this.stack.pop(); + this.current = this.stack.pop(); + this._saveValue(value); + } else { + this.done = true; + } + } + //startArray() - assigned below + //endArray() - aliased below to endObject() + _saveValue(value) { + if (this.done) { + this.current = value; + } else { + if (this.current instanceof Array) { + this.current.push(value); + } else { + this.current[this.key] = value; + this.key = null; + } + } + } + _saveValueWithReviver(value) { + if (this.done) { + this.current = this.reviver("", value); + } else { + if (this.current instanceof Array) { + value = this.reviver("" + this.current.length, value); + this.current.push(value); + if (value === void 0) { + delete this.current[this.current.length - 1]; + } + } else { + value = this.reviver(this.key, value); + if (value !== void 0) { + this.current[this.key] = value; + } + this.key = null; + } + } + } + }; + Assembler.prototype.stringValue = Assembler.prototype._saveValue; + Assembler.prototype.startObject = startObject(Object); + Assembler.prototype.startArray = startObject(Array); + Assembler.prototype.endArray = Assembler.prototype.endObject; + module2.exports = Assembler; + } +}); + +// ../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/streamers/StreamBase.js +var require_StreamBase = __commonJS({ + "../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/streamers/StreamBase.js"(exports2, module2) { + "use strict"; + var { Transform } = require("stream"); + var Assembler = require_Assembler(); + var Counter = class { + constructor(initialDepth) { + this.depth = initialDepth; + } + startObject() { + ++this.depth; + } + endObject() { + --this.depth; + } + startArray() { + ++this.depth; + } + endArray() { + --this.depth; + } + }; + var StreamBase = class extends Transform { + constructor(options2) { + super(Object.assign({}, options2, { writableObjectMode: true, readableObjectMode: true })); + if (options2) { + this.objectFilter = options2.objectFilter; + this.includeUndecided = options2.includeUndecided; + } + if (typeof this.objectFilter != "function") { + this._filter = this._transform; + } + this._transform = this._wait || this._filter; + this._assembler = new Assembler(options2); + } + _transform(chunk, encoding, callback) { + if (this._assembler[chunk.name]) { + this._assembler[chunk.name](chunk.value); + if (this._assembler.depth === this._level) { + this._push(); + } + } + callback(null); + } + _filter(chunk, encoding, callback) { + if (this._assembler[chunk.name]) { + this._assembler[chunk.name](chunk.value); + const result = this.objectFilter(this._assembler); + if (result) { + if (this._assembler.depth === this._level) { + this._push(); + this._transform = this._filter; + } + this._transform = this._accept; + return callback(null); + } + if (result === false) { + this._saved_assembler = this._assembler; + this._assembler = new Counter(this._saved_assembler.depth); + this._saved_assembler.dropToLevel(this._level); + if (this._assembler.depth === this._level) { + this._assembler = this._saved_assembler; + this._transform = this._filter; + } + this._transform = this._reject; + return callback(null); + } + if (this._assembler.depth === this._level) { + this._push(!this.includeUndecided); + } + } + callback(null); + } + _accept(chunk, encoding, callback) { + if (this._assembler[chunk.name]) { + this._assembler[chunk.name](chunk.value); + if (this._assembler.depth === this._level) { + this._push(); + this._transform = this._filter; + } + } + callback(null); + } + _reject(chunk, encoding, callback) { + if (this._assembler[chunk.name]) { + this._assembler[chunk.name](chunk.value); + if (this._assembler.depth === this._level) { + this._assembler = this._saved_assembler; + this._transform = this._filter; + } + } + callback(null); + } + }; + module2.exports = StreamBase; + } +}); + +// ../node_modules/.pnpm/stream-chain@2.2.5/node_modules/stream-chain/index.js +var require_stream_chain = __commonJS({ + "../node_modules/.pnpm/stream-chain@2.2.5/node_modules/stream-chain/index.js"(exports2, module2) { + "use strict"; + var { Readable: Readable3, Writable: Writable2, Duplex, Transform } = require("stream"); + var none = Symbol.for("object-stream.none"); + var finalSymbol = Symbol.for("object-stream.final"); + var manySymbol = Symbol.for("object-stream.many"); + var final = (value) => ({ [finalSymbol]: value }); + var many = (values) => ({ [manySymbol]: values }); + var isFinal = (o) => o && typeof o == "object" && finalSymbol in o; + var isMany = (o) => o && typeof o == "object" && manySymbol in o; + var getFinalValue = (o) => o[finalSymbol]; + var getManyValues = (o) => o[manySymbol]; + var runAsyncGenerator = async (gen, stream5) => { + for (; ; ) { + let data = gen.next(); + if (data && typeof data.then == "function") { + data = await data; + } + if (data.done) + break; + let value = data.value; + if (value && typeof value.then == "function") { + value = await value; + } + Chain.sanitize(value, stream5); + } + }; + var wrapFunction = (fn) => new Transform({ + writableObjectMode: true, + readableObjectMode: true, + transform(chunk, encoding, callback) { + try { + const result = fn.call(this, chunk, encoding); + if (result && typeof result.then == "function") { + result.then( + (result2) => (Chain.sanitize(result2, this), callback(null)), + (error) => callback(error) + ); + return; + } + if (result && typeof result.next == "function") { + runAsyncGenerator(result, this).then( + () => callback(null), + (error) => callback(error) + ); + return; + } + Chain.sanitize(result, this); + callback(null); + } catch (error) { + callback(error); + } + } + }); + var wrapArray = (fns) => new Transform({ + writableObjectMode: true, + readableObjectMode: true, + transform(chunk, encoding, callback) { + try { + let value = chunk; + for (let i = 0; i < fns.length; ++i) { + const result = fns[i].call(this, value, encoding); + if (result === Chain.none) { + callback(null); + return; + } + if (Chain.isFinal(result)) { + value = Chain.getFinalValue(result); + break; + } + value = result; + } + Chain.sanitize(value, this); + callback(null); + } catch (error) { + callback(error); + } + } + }); + var isReadableNodeStream = (obj2) => obj2 && typeof obj2.pipe === "function" && typeof obj2.on === "function" && (!obj2._writableState || (typeof obj2._readableState === "object" ? obj2._readableState.readable : null) !== false) && // Duplex + (!obj2._writableState || obj2._readableState); + var isWritableNodeStream = (obj2) => obj2 && typeof obj2.write === "function" && typeof obj2.on === "function" && (!obj2._readableState || (typeof obj2._writableState === "object" ? obj2._writableState.writable : null) !== false); + var isDuplexNodeStream = (obj2) => obj2 && typeof obj2.pipe === "function" && obj2._readableState && typeof obj2.on === "function" && typeof obj2.write === "function"; + var Chain = class _Chain extends Duplex { + constructor(fns, options2) { + super(options2 || { writableObjectMode: true, readableObjectMode: true }); + if (!(fns instanceof Array) || !fns.length) { + throw Error("Chain's argument should be a non-empty array."); + } + this.streams = fns.filter((fn) => fn).map((fn, index, fns2) => { + if (typeof fn === "function" || fn instanceof Array) + return _Chain.convertToTransform(fn); + if (isDuplexNodeStream(fn) || !index && isReadableNodeStream(fn) || index === fns2.length - 1 && isWritableNodeStream(fn)) { + return fn; + } + throw Error("Arguments should be functions, arrays or streams."); + }).filter((s) => s); + this.input = this.streams[0]; + this.output = this.streams.reduce((output, stream5) => output && output.pipe(stream5) || stream5); + if (!isWritableNodeStream(this.input)) { + this._write = (_1, _2, callback) => callback(null); + this._final = (callback) => callback(null); + this.input.on("end", () => this.end()); + } + if (isReadableNodeStream(this.output)) { + this.output.on("data", (chunk) => !this.push(chunk) && this.output.pause()); + this.output.on("end", () => this.push(null)); + } else { + this._read = () => { + }; + this.resume(); + this.output.on("finish", () => this.push(null)); + } + if (!options2 || !options2.skipEvents) { + this.streams.forEach((stream5) => stream5.on("error", (error) => this.emit("error", error))); + } + } + _write(chunk, encoding, callback) { + let error = null; + try { + this.input.write(chunk, encoding, (e) => callback(e || error)); + } catch (e) { + error = e; + } + } + _final(callback) { + let error = null; + try { + this.input.end(null, null, (e) => callback(e || error)); + } catch (e) { + error = e; + } + } + _read() { + this.output.resume(); + } + static make(fns, options2) { + return new _Chain(fns, options2); + } + static sanitize(result, stream5) { + if (_Chain.isFinal(result)) { + result = _Chain.getFinalValue(result); + } else if (_Chain.isMany(result)) { + result = _Chain.getManyValues(result); + } + if (result !== void 0 && result !== null && result !== _Chain.none) { + if (result instanceof Array) { + result.forEach((value) => value !== void 0 && value !== null && stream5.push(value)); + } else { + stream5.push(result); + } + } + } + static convertToTransform(fn) { + if (typeof fn === "function") + return wrapFunction(fn); + if (fn instanceof Array) + return fn.length ? wrapArray(fn) : null; + return null; + } + }; + Chain.none = none; + Chain.final = final; + Chain.isFinal = isFinal; + Chain.getFinalValue = getFinalValue; + Chain.many = many; + Chain.isMany = isMany; + Chain.getManyValues = getManyValues; + Chain.chain = Chain.make; + Chain.make.Constructor = Chain; + module2.exports = Chain; + } +}); + +// ../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/utils/Utf8Stream.js +var require_Utf8Stream = __commonJS({ + "../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/utils/Utf8Stream.js"(exports2, module2) { + "use strict"; + var { Transform } = require("stream"); + var { StringDecoder: StringDecoder2 } = require("string_decoder"); + var Utf8Stream = class extends Transform { + constructor(options2) { + super(Object.assign({}, options2, { writableObjectMode: false })); + this._buffer = ""; + } + _transform(chunk, encoding, callback) { + if (typeof chunk == "string") { + this._transform = this._transformString; + } else { + this._stringDecoder = new StringDecoder2(); + this._transform = this._transformBuffer; + } + this._transform(chunk, encoding, callback); + } + _transformBuffer(chunk, _, callback) { + this._buffer += this._stringDecoder.write(chunk); + this._processBuffer(callback); + } + _transformString(chunk, _, callback) { + this._buffer += chunk.toString(); + this._processBuffer(callback); + } + _processBuffer(callback) { + if (this._buffer) { + this.push(this._buffer, "utf8"); + this._buffer = ""; + } + callback(null); + } + _flushInput() { + if (this._stringDecoder) { + this._buffer += this._stringDecoder.end(); + } + } + _flush(callback) { + this._flushInput(); + this._processBuffer(callback); + } + }; + module2.exports = Utf8Stream; + } +}); + +// ../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/Parser.js +var require_Parser2 = __commonJS({ + "../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/Parser.js"(exports2, module2) { + "use strict"; + var Utf8Stream = require_Utf8Stream(); + var patterns = { + value1: /^(?:[\"\{\[\]\-\d]|true\b|false\b|null\b|\s{1,256})/, + string: /^(?:[^\"\\]{1,256}|\\[bfnrt\"\\\/]|\\u[\da-fA-F]{4}|\")/, + key1: /^(?:[\"\}]|\s{1,256})/, + colon: /^(?:\:|\s{1,256})/, + comma: /^(?:[\,\]\}]|\s{1,256})/, + ws: /^\s{1,256}/, + numberStart: /^\d/, + numberDigit: /^\d{0,256}/, + numberFraction: /^[\.eE]/, + numberExponent: /^[eE]/, + numberExpSign: /^[-+]/ + }; + var MAX_PATTERN_SIZE = 16; + var noSticky = true; + try { + new RegExp(".", "y"); + noSticky = false; + } catch (e) { + } + !noSticky && Object.keys(patterns).forEach((key) => { + let src = patterns[key].source.slice(1); + if (src.slice(0, 3) === "(?:" && src.slice(-1) === ")") { + src = src.slice(3, -1); + } + patterns[key] = new RegExp(src, "y"); + }); + patterns.numberFracStart = patterns.numberExpStart = patterns.numberStart; + patterns.numberFracDigit = patterns.numberExpDigit = patterns.numberDigit; + var values = { true: true, false: false, null: null }; + var expected = { object: "objectStop", array: "arrayStop", "": "done" }; + var fromHex = (s) => String.fromCharCode(parseInt(s.slice(2), 16)); + var codes2 = { b: "\b", f: "\f", n: "\n", r: "\r", t: " ", '"': '"', "\\": "\\", "/": "/" }; + var Parser3 = class _Parser2 extends Utf8Stream { + static make(options2) { + return new _Parser2(options2); + } + constructor(options2) { + super(Object.assign({}, options2, { readableObjectMode: true })); + this._packKeys = this._packStrings = this._packNumbers = this._streamKeys = this._streamStrings = this._streamNumbers = true; + if (options2) { + "packValues" in options2 && (this._packKeys = this._packStrings = this._packNumbers = options2.packValues); + "packKeys" in options2 && (this._packKeys = options2.packKeys); + "packStrings" in options2 && (this._packStrings = options2.packStrings); + "packNumbers" in options2 && (this._packNumbers = options2.packNumbers); + "streamValues" in options2 && (this._streamKeys = this._streamStrings = this._streamNumbers = options2.streamValues); + "streamKeys" in options2 && (this._streamKeys = options2.streamKeys); + "streamStrings" in options2 && (this._streamStrings = options2.streamStrings); + "streamNumbers" in options2 && (this._streamNumbers = options2.streamNumbers); + this._jsonStreaming = options2.jsonStreaming; + } + !this._packKeys && (this._streamKeys = true); + !this._packStrings && (this._streamStrings = true); + !this._packNumbers && (this._streamNumbers = true); + this._done = false; + this._expect = this._jsonStreaming ? "done" : "value"; + this._stack = []; + this._parent = ""; + this._open_number = false; + this._accumulator = ""; + } + _flush(callback) { + this._done = true; + super._flush((error) => { + if (error) + return callback(error); + if (this._open_number) { + if (this._streamNumbers) { + this.push({ name: "endNumber" }); + } + this._open_number = false; + if (this._packNumbers) { + this.push({ name: "numberValue", value: this._accumulator }); + this._accumulator = ""; + } + } + callback(null); + }); + } + _processBuffer(callback) { + let match2, value, index = 0; + main: + for (; ; ) { + switch (this._expect) { + case "value1": + case "value": + patterns.value1.lastIndex = index; + match2 = patterns.value1.exec(this._buffer); + if (!match2) { + if (this._done || index + MAX_PATTERN_SIZE < this._buffer.length) { + if (index < this._buffer.length) + return callback(new Error("Parser cannot parse input: expected a value")); + return callback(new Error("Parser has expected a value")); + } + break main; + } + value = match2[0]; + switch (value) { + case '"': + this._streamStrings && this.push({ name: "startString" }); + this._expect = "string"; + break; + case "{": + this.push({ name: "startObject" }); + this._stack.push(this._parent); + this._parent = "object"; + this._expect = "key1"; + break; + case "[": + this.push({ name: "startArray" }); + this._stack.push(this._parent); + this._parent = "array"; + this._expect = "value1"; + break; + case "]": + if (this._expect !== "value1") + return callback(new Error("Parser cannot parse input: unexpected token ']'")); + if (this._open_number) { + this._streamNumbers && this.push({ name: "endNumber" }); + this._open_number = false; + if (this._packNumbers) { + this.push({ name: "numberValue", value: this._accumulator }); + this._accumulator = ""; + } + } + this.push({ name: "endArray" }); + this._parent = this._stack.pop(); + this._expect = expected[this._parent]; + break; + case "-": + this._open_number = true; + if (this._streamNumbers) { + this.push({ name: "startNumber" }); + this.push({ name: "numberChunk", value: "-" }); + } + this._packNumbers && (this._accumulator = "-"); + this._expect = "numberStart"; + break; + case "0": + this._open_number = true; + if (this._streamNumbers) { + this.push({ name: "startNumber" }); + this.push({ name: "numberChunk", value: "0" }); + } + this._packNumbers && (this._accumulator = "0"); + this._expect = "numberFraction"; + break; + case "1": + case "2": + case "3": + case "4": + case "5": + case "6": + case "7": + case "8": + case "9": + this._open_number = true; + if (this._streamNumbers) { + this.push({ name: "startNumber" }); + this.push({ name: "numberChunk", value }); + } + this._packNumbers && (this._accumulator = value); + this._expect = "numberDigit"; + break; + case "true": + case "false": + case "null": + if (this._buffer.length - index === value.length && !this._done) + break main; + this.push({ name: value + "Value", value: values[value] }); + this._expect = expected[this._parent]; + break; + } + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "keyVal": + case "string": + patterns.string.lastIndex = index; + match2 = patterns.string.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length && (this._done || this._buffer.length - index >= 6)) + return callback(new Error("Parser cannot parse input: escaped characters")); + if (this._done) + return callback(new Error("Parser has expected a string value")); + break main; + } + value = match2[0]; + if (value === '"') { + if (this._expect === "keyVal") { + this._streamKeys && this.push({ name: "endKey" }); + if (this._packKeys) { + this.push({ name: "keyValue", value: this._accumulator }); + this._accumulator = ""; + } + this._expect = "colon"; + } else { + this._streamStrings && this.push({ name: "endString" }); + if (this._packStrings) { + this.push({ name: "stringValue", value: this._accumulator }); + this._accumulator = ""; + } + this._expect = expected[this._parent]; + } + } else if (value.length > 1 && value.charAt(0) === "\\") { + const t = value.length == 2 ? codes2[value.charAt(1)] : fromHex(value); + if (this._expect === "keyVal" ? this._streamKeys : this._streamStrings) { + this.push({ name: "stringChunk", value: t }); + } + if (this._expect === "keyVal" ? this._packKeys : this._packStrings) { + this._accumulator += t; + } + } else { + if (this._expect === "keyVal" ? this._streamKeys : this._streamStrings) { + this.push({ name: "stringChunk", value }); + } + if (this._expect === "keyVal" ? this._packKeys : this._packStrings) { + this._accumulator += value; + } + } + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "key1": + case "key": + patterns.key1.lastIndex = index; + match2 = patterns.key1.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length || this._done) + return callback(new Error("Parser cannot parse input: expected an object key")); + break main; + } + value = match2[0]; + if (value === '"') { + this._streamKeys && this.push({ name: "startKey" }); + this._expect = "keyVal"; + } else if (value === "}") { + if (this._expect !== "key1") + return callback(new Error("Parser cannot parse input: unexpected token '}'")); + this.push({ name: "endObject" }); + this._parent = this._stack.pop(); + this._expect = expected[this._parent]; + } + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "colon": + patterns.colon.lastIndex = index; + match2 = patterns.colon.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length || this._done) + return callback(new Error("Parser cannot parse input: expected ':'")); + break main; + } + value = match2[0]; + value === ":" && (this._expect = "value"); + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "arrayStop": + case "objectStop": + patterns.comma.lastIndex = index; + match2 = patterns.comma.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length || this._done) + return callback(new Error("Parser cannot parse input: expected ','")); + break main; + } + if (this._open_number) { + this._streamNumbers && this.push({ name: "endNumber" }); + this._open_number = false; + if (this._packNumbers) { + this.push({ name: "numberValue", value: this._accumulator }); + this._accumulator = ""; + } + } + value = match2[0]; + if (value === ",") { + this._expect = this._expect === "arrayStop" ? "value" : "key"; + } else if (value === "}" || value === "]") { + if (value === "}" ? this._expect === "arrayStop" : this._expect !== "arrayStop") { + return callback(new Error("Parser cannot parse input: expected '" + (this._expect === "arrayStop" ? "]" : "}") + "'")); + } + this.push({ name: value === "}" ? "endObject" : "endArray" }); + this._parent = this._stack.pop(); + this._expect = expected[this._parent]; + } + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "numberStart": + patterns.numberStart.lastIndex = index; + match2 = patterns.numberStart.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length || this._done) + return callback(new Error("Parser cannot parse input: expected a starting digit")); + break main; + } + value = match2[0]; + this._streamNumbers && this.push({ name: "numberChunk", value }); + this._packNumbers && (this._accumulator += value); + this._expect = value === "0" ? "numberFraction" : "numberDigit"; + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "numberDigit": + patterns.numberDigit.lastIndex = index; + match2 = patterns.numberDigit.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length || this._done) + return callback(new Error("Parser cannot parse input: expected a digit")); + break main; + } + value = match2[0]; + if (value) { + this._streamNumbers && this.push({ name: "numberChunk", value }); + this._packNumbers && (this._accumulator += value); + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + } else { + if (index < this._buffer.length) { + this._expect = "numberFraction"; + break; + } + if (this._done) { + this._expect = expected[this._parent]; + break; + } + break main; + } + break; + case "numberFraction": + patterns.numberFraction.lastIndex = index; + match2 = patterns.numberFraction.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length || this._done) { + this._expect = expected[this._parent]; + break; + } + break main; + } + value = match2[0]; + this._streamNumbers && this.push({ name: "numberChunk", value }); + this._packNumbers && (this._accumulator += value); + this._expect = value === "." ? "numberFracStart" : "numberExpSign"; + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "numberFracStart": + patterns.numberFracStart.lastIndex = index; + match2 = patterns.numberFracStart.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length || this._done) + return callback(new Error("Parser cannot parse input: expected a fractional part of a number")); + break main; + } + value = match2[0]; + this._streamNumbers && this.push({ name: "numberChunk", value }); + this._packNumbers && (this._accumulator += value); + this._expect = "numberFracDigit"; + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "numberFracDigit": + patterns.numberFracDigit.lastIndex = index; + match2 = patterns.numberFracDigit.exec(this._buffer); + value = match2[0]; + if (value) { + this._streamNumbers && this.push({ name: "numberChunk", value }); + this._packNumbers && (this._accumulator += value); + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + } else { + if (index < this._buffer.length) { + this._expect = "numberExponent"; + break; + } + if (this._done) { + this._expect = expected[this._parent]; + break; + } + break main; + } + break; + case "numberExponent": + patterns.numberExponent.lastIndex = index; + match2 = patterns.numberExponent.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length) { + this._expect = expected[this._parent]; + break; + } + if (this._done) { + this._expect = "done"; + break; + } + break main; + } + value = match2[0]; + this._streamNumbers && this.push({ name: "numberChunk", value }); + this._packNumbers && (this._accumulator += value); + this._expect = "numberExpSign"; + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "numberExpSign": + patterns.numberExpSign.lastIndex = index; + match2 = patterns.numberExpSign.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length) { + this._expect = "numberExpStart"; + break; + } + if (this._done) + return callback(new Error("Parser has expected an exponent value of a number")); + break main; + } + value = match2[0]; + this._streamNumbers && this.push({ name: "numberChunk", value }); + this._packNumbers && (this._accumulator += value); + this._expect = "numberExpStart"; + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "numberExpStart": + patterns.numberExpStart.lastIndex = index; + match2 = patterns.numberExpStart.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length || this._done) + return callback(new Error("Parser cannot parse input: expected an exponent part of a number")); + break main; + } + value = match2[0]; + this._streamNumbers && this.push({ name: "numberChunk", value }); + this._packNumbers && (this._accumulator += value); + this._expect = "numberExpDigit"; + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + case "numberExpDigit": + patterns.numberExpDigit.lastIndex = index; + match2 = patterns.numberExpDigit.exec(this._buffer); + value = match2[0]; + if (value) { + this._streamNumbers && this.push({ name: "numberChunk", value }); + this._packNumbers && (this._accumulator += value); + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + } else { + if (index < this._buffer.length || this._done) { + this._expect = expected[this._parent]; + break; + } + break main; + } + break; + case "done": + patterns.ws.lastIndex = index; + match2 = patterns.ws.exec(this._buffer); + if (!match2) { + if (index < this._buffer.length) { + if (this._jsonStreaming) { + this._expect = "value"; + break; + } + return callback(new Error("Parser cannot parse input: unexpected characters")); + } + break main; + } + value = match2[0]; + if (this._open_number) { + this._streamNumbers && this.push({ name: "endNumber" }); + this._open_number = false; + if (this._packNumbers) { + this.push({ name: "numberValue", value: this._accumulator }); + this._accumulator = ""; + } + } + if (noSticky) { + this._buffer = this._buffer.slice(value.length); + } else { + index += value.length; + } + break; + } + } + !noSticky && (this._buffer = this._buffer.slice(index)); + callback(null); + } + }; + Parser3.parser = Parser3.make; + Parser3.make.Constructor = Parser3; + module2.exports = Parser3; + } +}); + +// ../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/utils/withParser.js +var require_withParser = __commonJS({ + "../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/utils/withParser.js"(exports2, module2) { + "use strict"; + var Chain = require_stream_chain(); + var Parser3 = require_Parser2(); + var withParser = (fn, options2) => new Chain([new Parser3(options2), fn(options2)], Object.assign({}, options2, { writableObjectMode: false, readableObjectMode: true })); + module2.exports = withParser; + } +}); + +// ../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/streamers/StreamValues.js +var require_StreamValues = __commonJS({ + "../node_modules/.pnpm/stream-json@1.8.0/node_modules/stream-json/streamers/StreamValues.js"(exports2, module2) { + "use strict"; + var StreamBase = require_StreamBase(); + var withParser = require_withParser(); + var StreamValues2 = class _StreamValues extends StreamBase { + static make(options2) { + return new _StreamValues(options2); + } + static withParser(options2) { + return withParser(_StreamValues.make, Object.assign({}, options2, { jsonStreaming: true })); + } + constructor(options2) { + super(options2); + this._counter = 0; + this._level = 0; + } + _push(discard) { + if (discard) { + ++this._counter; + } else { + this.push({ key: this._counter++, value: this._assembler.current }); + } + this._assembler.current = this._assembler.key = null; + } + }; + StreamValues2.streamValues = StreamValues2.make; + StreamValues2.make.Constructor = StreamValues2; + module2.exports = StreamValues2; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/suppress-tracing.js +var require_suppress_tracing = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/suppress-tracing.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isTracingSuppressed = exports2.unsuppressTracing = exports2.suppressTracing = void 0; + var api_1 = require_src(); + var SUPPRESS_TRACING_KEY = (0, api_1.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING"); + function suppressTracing(context2) { + return context2.setValue(SUPPRESS_TRACING_KEY, true); + } + exports2.suppressTracing = suppressTracing; + function unsuppressTracing(context2) { + return context2.deleteValue(SUPPRESS_TRACING_KEY); + } + exports2.unsuppressTracing = unsuppressTracing; + function isTracingSuppressed(context2) { + return context2.getValue(SUPPRESS_TRACING_KEY) === true; + } + exports2.isTracingSuppressed = isTracingSuppressed; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/baggage/constants.js +var require_constants7 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/baggage/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BAGGAGE_MAX_TOTAL_LENGTH = exports2.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS = exports2.BAGGAGE_MAX_NAME_VALUE_PAIRS = exports2.BAGGAGE_HEADER = exports2.BAGGAGE_ITEMS_SEPARATOR = exports2.BAGGAGE_PROPERTIES_SEPARATOR = exports2.BAGGAGE_KEY_PAIR_SEPARATOR = void 0; + exports2.BAGGAGE_KEY_PAIR_SEPARATOR = "="; + exports2.BAGGAGE_PROPERTIES_SEPARATOR = ";"; + exports2.BAGGAGE_ITEMS_SEPARATOR = ","; + exports2.BAGGAGE_HEADER = "baggage"; + exports2.BAGGAGE_MAX_NAME_VALUE_PAIRS = 180; + exports2.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS = 4096; + exports2.BAGGAGE_MAX_TOTAL_LENGTH = 8192; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/baggage/utils.js +var require_utils7 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/baggage/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseKeyPairsIntoRecord = exports2.parsePairKeyValue = exports2.getKeyPairs = exports2.serializeKeyPairs = void 0; + var api_1 = require_src(); + var constants_1 = require_constants7(); + function serializeKeyPairs(keyPairs) { + return keyPairs.reduce((hValue, current) => { + const value = `${hValue}${hValue !== "" ? constants_1.BAGGAGE_ITEMS_SEPARATOR : ""}${current}`; + return value.length > constants_1.BAGGAGE_MAX_TOTAL_LENGTH ? hValue : value; + }, ""); + } + exports2.serializeKeyPairs = serializeKeyPairs; + function getKeyPairs(baggage) { + return baggage.getAllEntries().map(([key, value]) => { + let entry = `${encodeURIComponent(key)}=${encodeURIComponent(value.value)}`; + if (value.metadata !== void 0) { + entry += constants_1.BAGGAGE_PROPERTIES_SEPARATOR + value.metadata.toString(); + } + return entry; + }); + } + exports2.getKeyPairs = getKeyPairs; + function parsePairKeyValue(entry) { + const valueProps = entry.split(constants_1.BAGGAGE_PROPERTIES_SEPARATOR); + if (valueProps.length <= 0) + return; + const keyPairPart = valueProps.shift(); + if (!keyPairPart) + return; + const separatorIndex = keyPairPart.indexOf(constants_1.BAGGAGE_KEY_PAIR_SEPARATOR); + if (separatorIndex <= 0) + return; + const key = decodeURIComponent(keyPairPart.substring(0, separatorIndex).trim()); + const value = decodeURIComponent(keyPairPart.substring(separatorIndex + 1).trim()); + let metadata2; + if (valueProps.length > 0) { + metadata2 = (0, api_1.baggageEntryMetadataFromString)(valueProps.join(constants_1.BAGGAGE_PROPERTIES_SEPARATOR)); + } + return { key, value, metadata: metadata2 }; + } + exports2.parsePairKeyValue = parsePairKeyValue; + function parseKeyPairsIntoRecord(value) { + if (typeof value !== "string" || value.length === 0) + return {}; + return value.split(constants_1.BAGGAGE_ITEMS_SEPARATOR).map((entry) => { + return parsePairKeyValue(entry); + }).filter((keyPair) => keyPair !== void 0 && keyPair.value.length > 0).reduce((headers, keyPair) => { + headers[keyPair.key] = keyPair.value; + return headers; + }, {}); + } + exports2.parseKeyPairsIntoRecord = parseKeyPairsIntoRecord; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/baggage/propagation/W3CBaggagePropagator.js +var require_W3CBaggagePropagator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/baggage/propagation/W3CBaggagePropagator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.W3CBaggagePropagator = void 0; + var api_1 = require_src(); + var suppress_tracing_1 = require_suppress_tracing(); + var constants_1 = require_constants7(); + var utils_1 = require_utils7(); + var W3CBaggagePropagator = class { + inject(context2, carrier, setter) { + const baggage = api_1.propagation.getBaggage(context2); + if (!baggage || (0, suppress_tracing_1.isTracingSuppressed)(context2)) + return; + const keyPairs = (0, utils_1.getKeyPairs)(baggage).filter((pair) => { + return pair.length <= constants_1.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS; + }).slice(0, constants_1.BAGGAGE_MAX_NAME_VALUE_PAIRS); + const headerValue = (0, utils_1.serializeKeyPairs)(keyPairs); + if (headerValue.length > 0) { + setter.set(carrier, constants_1.BAGGAGE_HEADER, headerValue); + } + } + extract(context2, carrier, getter) { + const headerValue = getter.get(carrier, constants_1.BAGGAGE_HEADER); + const baggageString = Array.isArray(headerValue) ? headerValue.join(constants_1.BAGGAGE_ITEMS_SEPARATOR) : headerValue; + if (!baggageString) + return context2; + const baggage = {}; + if (baggageString.length === 0) { + return context2; + } + const pairs = baggageString.split(constants_1.BAGGAGE_ITEMS_SEPARATOR); + pairs.forEach((entry) => { + const keyPair = (0, utils_1.parsePairKeyValue)(entry); + if (keyPair) { + const baggageEntry = { value: keyPair.value }; + if (keyPair.metadata) { + baggageEntry.metadata = keyPair.metadata; + } + baggage[keyPair.key] = baggageEntry; + } + }); + if (Object.entries(baggage).length === 0) { + return context2; + } + return api_1.propagation.setBaggage(context2, api_1.propagation.createBaggage(baggage)); + } + fields() { + return [constants_1.BAGGAGE_HEADER]; + } + }; + exports2.W3CBaggagePropagator = W3CBaggagePropagator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/anchored-clock.js +var require_anchored_clock = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/anchored-clock.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AnchoredClock = void 0; + var AnchoredClock = class { + /** + * Create a new AnchoredClock anchored to the current time returned by systemClock. + * + * @param systemClock should be a clock that returns the number of milliseconds since January 1 1970 such as Date + * @param monotonicClock should be a clock that counts milliseconds monotonically such as window.performance or perf_hooks.performance + */ + constructor(systemClock, monotonicClock) { + this._monotonicClock = monotonicClock; + this._epochMillis = systemClock.now(); + this._performanceMillis = monotonicClock.now(); + } + /** + * Returns the current time by adding the number of milliseconds since the + * AnchoredClock was created to the creation epoch time + */ + now() { + const delta = this._monotonicClock.now() - this._performanceMillis; + return this._epochMillis + delta; + } + }; + exports2.AnchoredClock = AnchoredClock; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/attributes.js +var require_attributes = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/attributes.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isAttributeValue = exports2.isAttributeKey = exports2.sanitizeAttributes = void 0; + var api_1 = require_src(); + function sanitizeAttributes(attributes) { + const out2 = {}; + if (typeof attributes !== "object" || attributes == null) { + return out2; + } + for (const [key, val] of Object.entries(attributes)) { + if (!isAttributeKey(key)) { + api_1.diag.warn(`Invalid attribute key: ${key}`); + continue; + } + if (!isAttributeValue(val)) { + api_1.diag.warn(`Invalid attribute value set for key: ${key}`); + continue; + } + if (Array.isArray(val)) { + out2[key] = val.slice(); + } else { + out2[key] = val; + } + } + return out2; + } + exports2.sanitizeAttributes = sanitizeAttributes; + function isAttributeKey(key) { + return typeof key === "string" && key.length > 0; + } + exports2.isAttributeKey = isAttributeKey; + function isAttributeValue(val) { + if (val == null) { + return true; + } + if (Array.isArray(val)) { + return isHomogeneousAttributeValueArray(val); + } + return isValidPrimitiveAttributeValue(val); + } + exports2.isAttributeValue = isAttributeValue; + function isHomogeneousAttributeValueArray(arr) { + let type2; + for (const element of arr) { + if (element == null) + continue; + if (!type2) { + if (isValidPrimitiveAttributeValue(element)) { + type2 = typeof element; + continue; + } + return false; + } + if (typeof element === type2) { + continue; + } + return false; + } + return true; + } + function isValidPrimitiveAttributeValue(val) { + switch (typeof val) { + case "number": + case "boolean": + case "string": + return true; + } + return false; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/logging-error-handler.js +var require_logging_error_handler = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/logging-error-handler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.loggingErrorHandler = void 0; + var api_1 = require_src(); + function loggingErrorHandler() { + return (ex) => { + api_1.diag.error(stringifyException(ex)); + }; + } + exports2.loggingErrorHandler = loggingErrorHandler; + function stringifyException(ex) { + if (typeof ex === "string") { + return ex; + } else { + return JSON.stringify(flattenException(ex)); + } + } + function flattenException(ex) { + const result = {}; + let current = ex; + while (current !== null) { + Object.getOwnPropertyNames(current).forEach((propertyName) => { + if (result[propertyName]) + return; + const value = current[propertyName]; + if (value) { + result[propertyName] = String(value); + } + }); + current = Object.getPrototypeOf(current); + } + return result; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/global-error-handler.js +var require_global_error_handler = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/global-error-handler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.globalErrorHandler = exports2.setGlobalErrorHandler = void 0; + var logging_error_handler_1 = require_logging_error_handler(); + var delegateHandler = (0, logging_error_handler_1.loggingErrorHandler)(); + function setGlobalErrorHandler(handler) { + delegateHandler = handler; + } + exports2.setGlobalErrorHandler = setGlobalErrorHandler; + function globalErrorHandler(ex) { + try { + delegateHandler(ex); + } catch (_a) { + } + } + exports2.globalErrorHandler = globalErrorHandler; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/sampling.js +var require_sampling = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/sampling.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TracesSamplerValues = void 0; + var TracesSamplerValues; + (function(TracesSamplerValues2) { + TracesSamplerValues2["AlwaysOff"] = "always_off"; + TracesSamplerValues2["AlwaysOn"] = "always_on"; + TracesSamplerValues2["ParentBasedAlwaysOff"] = "parentbased_always_off"; + TracesSamplerValues2["ParentBasedAlwaysOn"] = "parentbased_always_on"; + TracesSamplerValues2["ParentBasedTraceIdRatio"] = "parentbased_traceidratio"; + TracesSamplerValues2["TraceIdRatio"] = "traceidratio"; + })(TracesSamplerValues = exports2.TracesSamplerValues || (exports2.TracesSamplerValues = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/browser/globalThis.js +var require_globalThis2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/browser/globalThis.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2._globalThis = void 0; + exports2._globalThis = typeof globalThis === "object" ? globalThis : typeof self === "object" ? self : typeof window === "object" ? window : typeof global === "object" ? global : {}; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/environment.js +var require_environment = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/environment.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getEnvWithoutDefaults = exports2.parseEnvironment = exports2.DEFAULT_ENVIRONMENT = exports2.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT = exports2.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT = exports2.DEFAULT_ATTRIBUTE_COUNT_LIMIT = exports2.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT = void 0; + var api_1 = require_src(); + var sampling_1 = require_sampling(); + var globalThis_1 = require_globalThis2(); + var DEFAULT_LIST_SEPARATOR = ","; + var ENVIRONMENT_BOOLEAN_KEYS = ["OTEL_SDK_DISABLED"]; + function isEnvVarABoolean(key) { + return ENVIRONMENT_BOOLEAN_KEYS.indexOf(key) > -1; + } + var ENVIRONMENT_NUMBERS_KEYS = [ + "OTEL_BSP_EXPORT_TIMEOUT", + "OTEL_BSP_MAX_EXPORT_BATCH_SIZE", + "OTEL_BSP_MAX_QUEUE_SIZE", + "OTEL_BSP_SCHEDULE_DELAY", + "OTEL_BLRP_EXPORT_TIMEOUT", + "OTEL_BLRP_MAX_EXPORT_BATCH_SIZE", + "OTEL_BLRP_MAX_QUEUE_SIZE", + "OTEL_BLRP_SCHEDULE_DELAY", + "OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT", + "OTEL_ATTRIBUTE_COUNT_LIMIT", + "OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT", + "OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT", + "OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT", + "OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT", + "OTEL_SPAN_EVENT_COUNT_LIMIT", + "OTEL_SPAN_LINK_COUNT_LIMIT", + "OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT", + "OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT", + "OTEL_EXPORTER_OTLP_TIMEOUT", + "OTEL_EXPORTER_OTLP_TRACES_TIMEOUT", + "OTEL_EXPORTER_OTLP_METRICS_TIMEOUT", + "OTEL_EXPORTER_OTLP_LOGS_TIMEOUT", + "OTEL_EXPORTER_JAEGER_AGENT_PORT" + ]; + function isEnvVarANumber(key) { + return ENVIRONMENT_NUMBERS_KEYS.indexOf(key) > -1; + } + var ENVIRONMENT_LISTS_KEYS = [ + "OTEL_NO_PATCH_MODULES", + "OTEL_PROPAGATORS" + ]; + function isEnvVarAList(key) { + return ENVIRONMENT_LISTS_KEYS.indexOf(key) > -1; + } + exports2.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT = Infinity; + exports2.DEFAULT_ATTRIBUTE_COUNT_LIMIT = 128; + exports2.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT = 128; + exports2.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT = 128; + exports2.DEFAULT_ENVIRONMENT = { + OTEL_SDK_DISABLED: false, + CONTAINER_NAME: "", + ECS_CONTAINER_METADATA_URI_V4: "", + ECS_CONTAINER_METADATA_URI: "", + HOSTNAME: "", + KUBERNETES_SERVICE_HOST: "", + NAMESPACE: "", + OTEL_BSP_EXPORT_TIMEOUT: 3e4, + OTEL_BSP_MAX_EXPORT_BATCH_SIZE: 512, + OTEL_BSP_MAX_QUEUE_SIZE: 2048, + OTEL_BSP_SCHEDULE_DELAY: 5e3, + OTEL_BLRP_EXPORT_TIMEOUT: 3e4, + OTEL_BLRP_MAX_EXPORT_BATCH_SIZE: 512, + OTEL_BLRP_MAX_QUEUE_SIZE: 2048, + OTEL_BLRP_SCHEDULE_DELAY: 5e3, + OTEL_EXPORTER_JAEGER_AGENT_HOST: "", + OTEL_EXPORTER_JAEGER_AGENT_PORT: 6832, + OTEL_EXPORTER_JAEGER_ENDPOINT: "", + OTEL_EXPORTER_JAEGER_PASSWORD: "", + OTEL_EXPORTER_JAEGER_USER: "", + OTEL_EXPORTER_OTLP_ENDPOINT: "", + OTEL_EXPORTER_OTLP_TRACES_ENDPOINT: "", + OTEL_EXPORTER_OTLP_METRICS_ENDPOINT: "", + OTEL_EXPORTER_OTLP_LOGS_ENDPOINT: "", + OTEL_EXPORTER_OTLP_HEADERS: "", + OTEL_EXPORTER_OTLP_TRACES_HEADERS: "", + OTEL_EXPORTER_OTLP_METRICS_HEADERS: "", + OTEL_EXPORTER_OTLP_LOGS_HEADERS: "", + OTEL_EXPORTER_OTLP_TIMEOUT: 1e4, + OTEL_EXPORTER_OTLP_TRACES_TIMEOUT: 1e4, + OTEL_EXPORTER_OTLP_METRICS_TIMEOUT: 1e4, + OTEL_EXPORTER_OTLP_LOGS_TIMEOUT: 1e4, + OTEL_EXPORTER_ZIPKIN_ENDPOINT: "http://localhost:9411/api/v2/spans", + OTEL_LOG_LEVEL: api_1.DiagLogLevel.INFO, + OTEL_NO_PATCH_MODULES: [], + OTEL_PROPAGATORS: ["tracecontext", "baggage"], + OTEL_RESOURCE_ATTRIBUTES: "", + OTEL_SERVICE_NAME: "", + OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT: exports2.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT, + OTEL_ATTRIBUTE_COUNT_LIMIT: exports2.DEFAULT_ATTRIBUTE_COUNT_LIMIT, + OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT: exports2.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT, + OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT: exports2.DEFAULT_ATTRIBUTE_COUNT_LIMIT, + OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT: exports2.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT, + OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT: exports2.DEFAULT_ATTRIBUTE_COUNT_LIMIT, + OTEL_SPAN_EVENT_COUNT_LIMIT: 128, + OTEL_SPAN_LINK_COUNT_LIMIT: 128, + OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT: exports2.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT, + OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT: exports2.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT, + OTEL_TRACES_EXPORTER: "", + OTEL_TRACES_SAMPLER: sampling_1.TracesSamplerValues.ParentBasedAlwaysOn, + OTEL_TRACES_SAMPLER_ARG: "", + OTEL_LOGS_EXPORTER: "", + OTEL_EXPORTER_OTLP_INSECURE: "", + OTEL_EXPORTER_OTLP_TRACES_INSECURE: "", + OTEL_EXPORTER_OTLP_METRICS_INSECURE: "", + OTEL_EXPORTER_OTLP_LOGS_INSECURE: "", + OTEL_EXPORTER_OTLP_CERTIFICATE: "", + OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE: "", + OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE: "", + OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE: "", + OTEL_EXPORTER_OTLP_COMPRESSION: "", + OTEL_EXPORTER_OTLP_TRACES_COMPRESSION: "", + OTEL_EXPORTER_OTLP_METRICS_COMPRESSION: "", + OTEL_EXPORTER_OTLP_LOGS_COMPRESSION: "", + OTEL_EXPORTER_OTLP_CLIENT_KEY: "", + OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY: "", + OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY: "", + OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY: "", + OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE: "", + OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE: "", + OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE: "", + OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE: "", + OTEL_EXPORTER_OTLP_PROTOCOL: "http/protobuf", + OTEL_EXPORTER_OTLP_TRACES_PROTOCOL: "http/protobuf", + OTEL_EXPORTER_OTLP_METRICS_PROTOCOL: "http/protobuf", + OTEL_EXPORTER_OTLP_LOGS_PROTOCOL: "http/protobuf", + OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE: "cumulative" + }; + function parseBoolean(key, environment, values) { + if (typeof values[key] === "undefined") { + return; + } + const value = String(values[key]); + environment[key] = value.toLowerCase() === "true"; + } + function parseNumber(name, environment, values, min = -Infinity, max = Infinity) { + if (typeof values[name] !== "undefined") { + const value = Number(values[name]); + if (!isNaN(value)) { + if (value < min) { + environment[name] = min; + } else if (value > max) { + environment[name] = max; + } else { + environment[name] = value; + } + } + } + } + function parseStringList(name, output, input, separator = DEFAULT_LIST_SEPARATOR) { + const givenValue = input[name]; + if (typeof givenValue === "string") { + output[name] = givenValue.split(separator).map((v) => v.trim()); + } + } + var logLevelMap = { + ALL: api_1.DiagLogLevel.ALL, + VERBOSE: api_1.DiagLogLevel.VERBOSE, + DEBUG: api_1.DiagLogLevel.DEBUG, + INFO: api_1.DiagLogLevel.INFO, + WARN: api_1.DiagLogLevel.WARN, + ERROR: api_1.DiagLogLevel.ERROR, + NONE: api_1.DiagLogLevel.NONE + }; + function setLogLevelFromEnv(key, environment, values) { + const value = values[key]; + if (typeof value === "string") { + const theLevel = logLevelMap[value.toUpperCase()]; + if (theLevel != null) { + environment[key] = theLevel; + } + } + } + function parseEnvironment(values) { + const environment = {}; + for (const env4 in exports2.DEFAULT_ENVIRONMENT) { + const key = env4; + switch (key) { + case "OTEL_LOG_LEVEL": + setLogLevelFromEnv(key, environment, values); + break; + default: + if (isEnvVarABoolean(key)) { + parseBoolean(key, environment, values); + } else if (isEnvVarANumber(key)) { + parseNumber(key, environment, values); + } else if (isEnvVarAList(key)) { + parseStringList(key, environment, values); + } else { + const value = values[key]; + if (typeof value !== "undefined" && value !== null) { + environment[key] = String(value); + } + } + } + } + return environment; + } + exports2.parseEnvironment = parseEnvironment; + function getEnvWithoutDefaults() { + return typeof process !== "undefined" && process && process.env ? parseEnvironment(process.env) : parseEnvironment(globalThis_1._globalThis); + } + exports2.getEnvWithoutDefaults = getEnvWithoutDefaults; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/environment.js +var require_environment2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/environment.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getEnv = void 0; + var os8 = require("os"); + var environment_1 = require_environment(); + function getEnv() { + const processEnv = (0, environment_1.parseEnvironment)(process.env); + return Object.assign({ + HOSTNAME: os8.hostname() + }, environment_1.DEFAULT_ENVIRONMENT, processEnv); + } + exports2.getEnv = getEnv; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/globalThis.js +var require_globalThis3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/globalThis.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2._globalThis = void 0; + exports2._globalThis = typeof globalThis === "object" ? globalThis : global; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/hex-to-base64.js +var require_hex_to_base64 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/hex-to-base64.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.hexToBase64 = void 0; + function intValue(charCode) { + if (charCode >= 48 && charCode <= 57) { + return charCode - 48; + } + if (charCode >= 97 && charCode <= 102) { + return charCode - 87; + } + return charCode - 55; + } + var buf8 = Buffer.alloc(8); + var buf16 = Buffer.alloc(16); + function hexToBase64(hexStr) { + let buf; + if (hexStr.length === 16) { + buf = buf8; + } else if (hexStr.length === 32) { + buf = buf16; + } else { + buf = Buffer.alloc(hexStr.length / 2); + } + let offset = 0; + for (let i = 0; i < hexStr.length; i += 2) { + const hi = intValue(hexStr.charCodeAt(i)); + const lo = intValue(hexStr.charCodeAt(i + 1)); + buf.writeUInt8(hi << 4 | lo, offset++); + } + return buf.toString("base64"); + } + exports2.hexToBase64 = hexToBase64; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/RandomIdGenerator.js +var require_RandomIdGenerator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/RandomIdGenerator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.RandomIdGenerator = void 0; + var SPAN_ID_BYTES = 8; + var TRACE_ID_BYTES = 16; + var RandomIdGenerator = class { + constructor() { + this.generateTraceId = getIdGenerator(TRACE_ID_BYTES); + this.generateSpanId = getIdGenerator(SPAN_ID_BYTES); + } + }; + exports2.RandomIdGenerator = RandomIdGenerator; + var SHARED_BUFFER = Buffer.allocUnsafe(TRACE_ID_BYTES); + function getIdGenerator(bytes) { + return function generateId() { + for (let i = 0; i < bytes / 4; i++) { + SHARED_BUFFER.writeUInt32BE(Math.random() * 2 ** 32 >>> 0, i * 4); + } + for (let i = 0; i < bytes; i++) { + if (SHARED_BUFFER[i] > 0) { + break; + } else if (i === bytes - 1) { + SHARED_BUFFER[bytes - 1] = 1; + } + } + return SHARED_BUFFER.toString("hex", 0, bytes); + }; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/performance.js +var require_performance = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/performance.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.otperformance = void 0; + var perf_hooks_1 = require("perf_hooks"); + exports2.otperformance = perf_hooks_1.performance; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/version.js +var require_version3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/version.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VERSION = void 0; + exports2.VERSION = "1.18.1"; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+semantic-conventions@1.18.1/node_modules/@opentelemetry/semantic-conventions/build/src/trace/SemanticAttributes.js +var require_SemanticAttributes = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+semantic-conventions@1.18.1/node_modules/@opentelemetry/semantic-conventions/build/src/trace/SemanticAttributes.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MessageTypeValues = exports2.RpcGrpcStatusCodeValues = exports2.MessagingOperationValues = exports2.MessagingDestinationKindValues = exports2.HttpFlavorValues = exports2.NetHostConnectionSubtypeValues = exports2.NetHostConnectionTypeValues = exports2.NetTransportValues = exports2.FaasInvokedProviderValues = exports2.FaasDocumentOperationValues = exports2.FaasTriggerValues = exports2.DbCassandraConsistencyLevelValues = exports2.DbSystemValues = exports2.SemanticAttributes = void 0; + exports2.SemanticAttributes = { + /** + * The full invoked ARN as provided on the `Context` passed to the function (`Lambda-Runtime-Invoked-Function-Arn` header on the `/runtime/invocation/next` applicable). + * + * Note: This may be different from `faas.id` if an alias is involved. + */ + AWS_LAMBDA_INVOKED_ARN: "aws.lambda.invoked_arn", + /** + * An identifier for the database management system (DBMS) product being used. See below for a list of well-known identifiers. + */ + DB_SYSTEM: "db.system", + /** + * The connection string used to connect to the database. It is recommended to remove embedded credentials. + */ + DB_CONNECTION_STRING: "db.connection_string", + /** + * Username for accessing the database. + */ + DB_USER: "db.user", + /** + * The fully-qualified class name of the [Java Database Connectivity (JDBC)](https://docs.oracle.com/javase/8/docs/technotes/guides/jdbc/) driver used to connect. + */ + DB_JDBC_DRIVER_CLASSNAME: "db.jdbc.driver_classname", + /** + * If no [tech-specific attribute](#call-level-attributes-for-specific-technologies) is defined, this attribute is used to report the name of the database being accessed. For commands that switch the database, this should be set to the target database (even if the command fails). + * + * Note: In some SQL databases, the database name to be used is called "schema name". + */ + DB_NAME: "db.name", + /** + * The database statement being executed. + * + * Note: The value may be sanitized to exclude sensitive information. + */ + DB_STATEMENT: "db.statement", + /** + * The name of the operation being executed, e.g. the [MongoDB command name](https://docs.mongodb.com/manual/reference/command/#database-operations) such as `findAndModify`, or the SQL keyword. + * + * Note: When setting this to an SQL keyword, it is not recommended to attempt any client-side parsing of `db.statement` just to get this property, but it should be set if the operation name is provided by the library being instrumented. If the SQL statement has an ambiguous operation, or performs more than one operation, this value may be omitted. + */ + DB_OPERATION: "db.operation", + /** + * The Microsoft SQL Server [instance name](https://docs.microsoft.com/en-us/sql/connect/jdbc/building-the-connection-url?view=sql-server-ver15) connecting to. This name is used to determine the port of a named instance. + * + * Note: If setting a `db.mssql.instance_name`, `net.peer.port` is no longer required (but still recommended if non-standard). + */ + DB_MSSQL_INSTANCE_NAME: "db.mssql.instance_name", + /** + * The name of the keyspace being accessed. To be used instead of the generic `db.name` attribute. + */ + DB_CASSANDRA_KEYSPACE: "db.cassandra.keyspace", + /** + * The fetch size used for paging, i.e. how many rows will be returned at once. + */ + DB_CASSANDRA_PAGE_SIZE: "db.cassandra.page_size", + /** + * The consistency level of the query. Based on consistency values from [CQL](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.html). + */ + DB_CASSANDRA_CONSISTENCY_LEVEL: "db.cassandra.consistency_level", + /** + * The name of the primary table that the operation is acting upon, including the schema name (if applicable). + * + * Note: This mirrors the db.sql.table attribute but references cassandra rather than sql. It is not recommended to attempt any client-side parsing of `db.statement` just to get this property, but it should be set if it is provided by the library being instrumented. If the operation is acting upon an anonymous table, or more than one table, this value MUST NOT be set. + */ + DB_CASSANDRA_TABLE: "db.cassandra.table", + /** + * Whether or not the query is idempotent. + */ + DB_CASSANDRA_IDEMPOTENCE: "db.cassandra.idempotence", + /** + * The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. + */ + DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT: "db.cassandra.speculative_execution_count", + /** + * The ID of the coordinating node for a query. + */ + DB_CASSANDRA_COORDINATOR_ID: "db.cassandra.coordinator.id", + /** + * The data center of the coordinating node for a query. + */ + DB_CASSANDRA_COORDINATOR_DC: "db.cassandra.coordinator.dc", + /** + * The [HBase namespace](https://hbase.apache.org/book.html#_namespace) being accessed. To be used instead of the generic `db.name` attribute. + */ + DB_HBASE_NAMESPACE: "db.hbase.namespace", + /** + * The index of the database being accessed as used in the [`SELECT` command](https://redis.io/commands/select), provided as an integer. To be used instead of the generic `db.name` attribute. + */ + DB_REDIS_DATABASE_INDEX: "db.redis.database_index", + /** + * The collection being accessed within the database stated in `db.name`. + */ + DB_MONGODB_COLLECTION: "db.mongodb.collection", + /** + * The name of the primary table that the operation is acting upon, including the schema name (if applicable). + * + * Note: It is not recommended to attempt any client-side parsing of `db.statement` just to get this property, but it should be set if it is provided by the library being instrumented. If the operation is acting upon an anonymous table, or more than one table, this value MUST NOT be set. + */ + DB_SQL_TABLE: "db.sql.table", + /** + * The type of the exception (its fully-qualified class name, if applicable). The dynamic type of the exception should be preferred over the static type in languages that support it. + */ + EXCEPTION_TYPE: "exception.type", + /** + * The exception message. + */ + EXCEPTION_MESSAGE: "exception.message", + /** + * A stacktrace as a string in the natural representation for the language runtime. The representation is to be determined and documented by each language SIG. + */ + EXCEPTION_STACKTRACE: "exception.stacktrace", + /** + * SHOULD be set to true if the exception event is recorded at a point where it is known that the exception is escaping the scope of the span. + * + * Note: An exception is considered to have escaped (or left) the scope of a span, + if that span is ended while the exception is still logically "in flight". + This may be actually "in flight" in some languages (e.g. if the exception + is passed to a Context manager's `__exit__` method in Python) but will + usually be caught at the point of recording the exception in most languages. + + It is usually not possible to determine at the point where an exception is thrown + whether it will escape the scope of a span. + However, it is trivial to know that an exception + will escape, if one checks for an active exception just before ending the span, + as done in the [example above](#exception-end-example). + + It follows that an exception may still escape the scope of the span + even if the `exception.escaped` attribute was not set or set to false, + since the event might have been recorded at a time where it was not + clear whether the exception will escape. + */ + EXCEPTION_ESCAPED: "exception.escaped", + /** + * Type of the trigger on which the function is executed. + */ + FAAS_TRIGGER: "faas.trigger", + /** + * The execution ID of the current function execution. + */ + FAAS_EXECUTION: "faas.execution", + /** + * The name of the source on which the triggering operation was performed. For example, in Cloud Storage or S3 corresponds to the bucket name, and in Cosmos DB to the database name. + */ + FAAS_DOCUMENT_COLLECTION: "faas.document.collection", + /** + * Describes the type of the operation that was performed on the data. + */ + FAAS_DOCUMENT_OPERATION: "faas.document.operation", + /** + * A string containing the time when the data was accessed in the [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format expressed in [UTC](https://www.w3.org/TR/NOTE-datetime). + */ + FAAS_DOCUMENT_TIME: "faas.document.time", + /** + * The document name/table subjected to the operation. For example, in Cloud Storage or S3 is the name of the file, and in Cosmos DB the table name. + */ + FAAS_DOCUMENT_NAME: "faas.document.name", + /** + * A string containing the function invocation time in the [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format expressed in [UTC](https://www.w3.org/TR/NOTE-datetime). + */ + FAAS_TIME: "faas.time", + /** + * A string containing the schedule period as [Cron Expression](https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron_expressions.htm). + */ + FAAS_CRON: "faas.cron", + /** + * A boolean that is true if the serverless function is executed for the first time (aka cold-start). + */ + FAAS_COLDSTART: "faas.coldstart", + /** + * The name of the invoked function. + * + * Note: SHOULD be equal to the `faas.name` resource attribute of the invoked function. + */ + FAAS_INVOKED_NAME: "faas.invoked_name", + /** + * The cloud provider of the invoked function. + * + * Note: SHOULD be equal to the `cloud.provider` resource attribute of the invoked function. + */ + FAAS_INVOKED_PROVIDER: "faas.invoked_provider", + /** + * The cloud region of the invoked function. + * + * Note: SHOULD be equal to the `cloud.region` resource attribute of the invoked function. + */ + FAAS_INVOKED_REGION: "faas.invoked_region", + /** + * Transport protocol used. See note below. + */ + NET_TRANSPORT: "net.transport", + /** + * Remote address of the peer (dotted decimal for IPv4 or [RFC5952](https://tools.ietf.org/html/rfc5952) for IPv6). + */ + NET_PEER_IP: "net.peer.ip", + /** + * Remote port number. + */ + NET_PEER_PORT: "net.peer.port", + /** + * Remote hostname or similar, see note below. + */ + NET_PEER_NAME: "net.peer.name", + /** + * Like `net.peer.ip` but for the host IP. Useful in case of a multi-IP host. + */ + NET_HOST_IP: "net.host.ip", + /** + * Like `net.peer.port` but for the host port. + */ + NET_HOST_PORT: "net.host.port", + /** + * Local hostname or similar, see note below. + */ + NET_HOST_NAME: "net.host.name", + /** + * The internet connection type currently being used by the host. + */ + NET_HOST_CONNECTION_TYPE: "net.host.connection.type", + /** + * This describes more details regarding the connection.type. It may be the type of cell technology connection, but it could be used for describing details about a wifi connection. + */ + NET_HOST_CONNECTION_SUBTYPE: "net.host.connection.subtype", + /** + * The name of the mobile carrier. + */ + NET_HOST_CARRIER_NAME: "net.host.carrier.name", + /** + * The mobile carrier country code. + */ + NET_HOST_CARRIER_MCC: "net.host.carrier.mcc", + /** + * The mobile carrier network code. + */ + NET_HOST_CARRIER_MNC: "net.host.carrier.mnc", + /** + * The ISO 3166-1 alpha-2 2-character country code associated with the mobile carrier network. + */ + NET_HOST_CARRIER_ICC: "net.host.carrier.icc", + /** + * The [`service.name`](../../resource/semantic_conventions/README.md#service) of the remote service. SHOULD be equal to the actual `service.name` resource attribute of the remote service if any. + */ + PEER_SERVICE: "peer.service", + /** + * Username or client_id extracted from the access token or [Authorization](https://tools.ietf.org/html/rfc7235#section-4.2) header in the inbound request from outside the system. + */ + ENDUSER_ID: "enduser.id", + /** + * Actual/assumed role the client is making the request under extracted from token or application security context. + */ + ENDUSER_ROLE: "enduser.role", + /** + * Scopes or granted authorities the client currently possesses extracted from token or application security context. The value would come from the scope associated with an [OAuth 2.0 Access Token](https://tools.ietf.org/html/rfc6749#section-3.3) or an attribute value in a [SAML 2.0 Assertion](http://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0.html). + */ + ENDUSER_SCOPE: "enduser.scope", + /** + * Current "managed" thread ID (as opposed to OS thread ID). + */ + THREAD_ID: "thread.id", + /** + * Current thread name. + */ + THREAD_NAME: "thread.name", + /** + * The method or function name, or equivalent (usually rightmost part of the code unit's name). + */ + CODE_FUNCTION: "code.function", + /** + * The "namespace" within which `code.function` is defined. Usually the qualified class or module name, such that `code.namespace` + some separator + `code.function` form a unique identifier for the code unit. + */ + CODE_NAMESPACE: "code.namespace", + /** + * The source code file name that identifies the code unit as uniquely as possible (preferably an absolute file path). + */ + CODE_FILEPATH: "code.filepath", + /** + * The line number in `code.filepath` best representing the operation. It SHOULD point within the code unit named in `code.function`. + */ + CODE_LINENO: "code.lineno", + /** + * HTTP request method. + */ + HTTP_METHOD: "http.method", + /** + * Full HTTP request URL in the form `scheme://host[:port]/path?query[#fragment]`. Usually the fragment is not transmitted over HTTP, but if it is known, it should be included nevertheless. + * + * Note: `http.url` MUST NOT contain credentials passed via URL in form of `https://username:password@www.example.com/`. In such case the attribute's value should be `https://www.example.com/`. + */ + HTTP_URL: "http.url", + /** + * The full request target as passed in a HTTP request line or equivalent. + */ + HTTP_TARGET: "http.target", + /** + * The value of the [HTTP host header](https://tools.ietf.org/html/rfc7230#section-5.4). An empty Host header should also be reported, see note. + * + * Note: When the header is present but empty the attribute SHOULD be set to the empty string. Note that this is a valid situation that is expected in certain cases, according the aforementioned [section of RFC 7230](https://tools.ietf.org/html/rfc7230#section-5.4). When the header is not set the attribute MUST NOT be set. + */ + HTTP_HOST: "http.host", + /** + * The URI scheme identifying the used protocol. + */ + HTTP_SCHEME: "http.scheme", + /** + * [HTTP response status code](https://tools.ietf.org/html/rfc7231#section-6). + */ + HTTP_STATUS_CODE: "http.status_code", + /** + * Kind of HTTP protocol used. + * + * Note: If `net.transport` is not specified, it can be assumed to be `IP.TCP` except if `http.flavor` is `QUIC`, in which case `IP.UDP` is assumed. + */ + HTTP_FLAVOR: "http.flavor", + /** + * Value of the [HTTP User-Agent](https://tools.ietf.org/html/rfc7231#section-5.5.3) header sent by the client. + */ + HTTP_USER_AGENT: "http.user_agent", + /** + * The size of the request payload body in bytes. This is the number of bytes transferred excluding headers and is often, but not always, present as the [Content-Length](https://tools.ietf.org/html/rfc7230#section-3.3.2) header. For requests using transport encoding, this should be the compressed size. + */ + HTTP_REQUEST_CONTENT_LENGTH: "http.request_content_length", + /** + * The size of the uncompressed request payload body after transport decoding. Not set if transport encoding not used. + */ + HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED: "http.request_content_length_uncompressed", + /** + * The size of the response payload body in bytes. This is the number of bytes transferred excluding headers and is often, but not always, present as the [Content-Length](https://tools.ietf.org/html/rfc7230#section-3.3.2) header. For requests using transport encoding, this should be the compressed size. + */ + HTTP_RESPONSE_CONTENT_LENGTH: "http.response_content_length", + /** + * The size of the uncompressed response payload body after transport decoding. Not set if transport encoding not used. + */ + HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED: "http.response_content_length_uncompressed", + /** + * The primary server name of the matched virtual host. This should be obtained via configuration. If no such configuration can be obtained, this attribute MUST NOT be set ( `net.host.name` should be used instead). + * + * Note: `http.url` is usually not readily available on the server side but would have to be assembled in a cumbersome and sometimes lossy process from other information (see e.g. open-telemetry/opentelemetry-python/pull/148). It is thus preferred to supply the raw data that is available. + */ + HTTP_SERVER_NAME: "http.server_name", + /** + * The matched route (path template). + */ + HTTP_ROUTE: "http.route", + /** + * The IP address of the original client behind all proxies, if known (e.g. from [X-Forwarded-For](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For)). + * + * Note: This is not necessarily the same as `net.peer.ip`, which would + identify the network-level peer, which may be a proxy. + + This attribute should be set when a source of information different + from the one used for `net.peer.ip`, is available even if that other + source just confirms the same value as `net.peer.ip`. + Rationale: For `net.peer.ip`, one typically does not know if it + comes from a proxy, reverse proxy, or the actual client. Setting + `http.client_ip` when it's the same as `net.peer.ip` means that + one is at least somewhat confident that the address is not that of + the closest proxy. + */ + HTTP_CLIENT_IP: "http.client_ip", + /** + * The keys in the `RequestItems` object field. + */ + AWS_DYNAMODB_TABLE_NAMES: "aws.dynamodb.table_names", + /** + * The JSON-serialized value of each item in the `ConsumedCapacity` response field. + */ + AWS_DYNAMODB_CONSUMED_CAPACITY: "aws.dynamodb.consumed_capacity", + /** + * The JSON-serialized value of the `ItemCollectionMetrics` response field. + */ + AWS_DYNAMODB_ITEM_COLLECTION_METRICS: "aws.dynamodb.item_collection_metrics", + /** + * The value of the `ProvisionedThroughput.ReadCapacityUnits` request parameter. + */ + AWS_DYNAMODB_PROVISIONED_READ_CAPACITY: "aws.dynamodb.provisioned_read_capacity", + /** + * The value of the `ProvisionedThroughput.WriteCapacityUnits` request parameter. + */ + AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY: "aws.dynamodb.provisioned_write_capacity", + /** + * The value of the `ConsistentRead` request parameter. + */ + AWS_DYNAMODB_CONSISTENT_READ: "aws.dynamodb.consistent_read", + /** + * The value of the `ProjectionExpression` request parameter. + */ + AWS_DYNAMODB_PROJECTION: "aws.dynamodb.projection", + /** + * The value of the `Limit` request parameter. + */ + AWS_DYNAMODB_LIMIT: "aws.dynamodb.limit", + /** + * The value of the `AttributesToGet` request parameter. + */ + AWS_DYNAMODB_ATTRIBUTES_TO_GET: "aws.dynamodb.attributes_to_get", + /** + * The value of the `IndexName` request parameter. + */ + AWS_DYNAMODB_INDEX_NAME: "aws.dynamodb.index_name", + /** + * The value of the `Select` request parameter. + */ + AWS_DYNAMODB_SELECT: "aws.dynamodb.select", + /** + * The JSON-serialized value of each item of the `GlobalSecondaryIndexes` request field. + */ + AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES: "aws.dynamodb.global_secondary_indexes", + /** + * The JSON-serialized value of each item of the `LocalSecondaryIndexes` request field. + */ + AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES: "aws.dynamodb.local_secondary_indexes", + /** + * The value of the `ExclusiveStartTableName` request parameter. + */ + AWS_DYNAMODB_EXCLUSIVE_START_TABLE: "aws.dynamodb.exclusive_start_table", + /** + * The the number of items in the `TableNames` response parameter. + */ + AWS_DYNAMODB_TABLE_COUNT: "aws.dynamodb.table_count", + /** + * The value of the `ScanIndexForward` request parameter. + */ + AWS_DYNAMODB_SCAN_FORWARD: "aws.dynamodb.scan_forward", + /** + * The value of the `Segment` request parameter. + */ + AWS_DYNAMODB_SEGMENT: "aws.dynamodb.segment", + /** + * The value of the `TotalSegments` request parameter. + */ + AWS_DYNAMODB_TOTAL_SEGMENTS: "aws.dynamodb.total_segments", + /** + * The value of the `Count` response parameter. + */ + AWS_DYNAMODB_COUNT: "aws.dynamodb.count", + /** + * The value of the `ScannedCount` response parameter. + */ + AWS_DYNAMODB_SCANNED_COUNT: "aws.dynamodb.scanned_count", + /** + * The JSON-serialized value of each item in the `AttributeDefinitions` request field. + */ + AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS: "aws.dynamodb.attribute_definitions", + /** + * The JSON-serialized value of each item in the the `GlobalSecondaryIndexUpdates` request field. + */ + AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES: "aws.dynamodb.global_secondary_index_updates", + /** + * A string identifying the messaging system. + */ + MESSAGING_SYSTEM: "messaging.system", + /** + * The message destination name. This might be equal to the span name but is required nevertheless. + */ + MESSAGING_DESTINATION: "messaging.destination", + /** + * The kind of message destination. + */ + MESSAGING_DESTINATION_KIND: "messaging.destination_kind", + /** + * A boolean that is true if the message destination is temporary. + */ + MESSAGING_TEMP_DESTINATION: "messaging.temp_destination", + /** + * The name of the transport protocol. + */ + MESSAGING_PROTOCOL: "messaging.protocol", + /** + * The version of the transport protocol. + */ + MESSAGING_PROTOCOL_VERSION: "messaging.protocol_version", + /** + * Connection string. + */ + MESSAGING_URL: "messaging.url", + /** + * A value used by the messaging system as an identifier for the message, represented as a string. + */ + MESSAGING_MESSAGE_ID: "messaging.message_id", + /** + * The [conversation ID](#conversations) identifying the conversation to which the message belongs, represented as a string. Sometimes called "Correlation ID". + */ + MESSAGING_CONVERSATION_ID: "messaging.conversation_id", + /** + * The (uncompressed) size of the message payload in bytes. Also use this attribute if it is unknown whether the compressed or uncompressed payload size is reported. + */ + MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES: "messaging.message_payload_size_bytes", + /** + * The compressed size of the message payload in bytes. + */ + MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES: "messaging.message_payload_compressed_size_bytes", + /** + * A string identifying the kind of message consumption as defined in the [Operation names](#operation-names) section above. If the operation is "send", this attribute MUST NOT be set, since the operation can be inferred from the span kind in that case. + */ + MESSAGING_OPERATION: "messaging.operation", + /** + * The identifier for the consumer receiving a message. For Kafka, set it to `{messaging.kafka.consumer_group} - {messaging.kafka.client_id}`, if both are present, or only `messaging.kafka.consumer_group`. For brokers, such as RabbitMQ and Artemis, set it to the `client_id` of the client consuming the message. + */ + MESSAGING_CONSUMER_ID: "messaging.consumer_id", + /** + * RabbitMQ message routing key. + */ + MESSAGING_RABBITMQ_ROUTING_KEY: "messaging.rabbitmq.routing_key", + /** + * Message keys in Kafka are used for grouping alike messages to ensure they're processed on the same partition. They differ from `messaging.message_id` in that they're not unique. If the key is `null`, the attribute MUST NOT be set. + * + * Note: If the key type is not string, it's string representation has to be supplied for the attribute. If the key has no unambiguous, canonical string form, don't include its value. + */ + MESSAGING_KAFKA_MESSAGE_KEY: "messaging.kafka.message_key", + /** + * Name of the Kafka Consumer Group that is handling the message. Only applies to consumers, not producers. + */ + MESSAGING_KAFKA_CONSUMER_GROUP: "messaging.kafka.consumer_group", + /** + * Client Id for the Consumer or Producer that is handling the message. + */ + MESSAGING_KAFKA_CLIENT_ID: "messaging.kafka.client_id", + /** + * Partition the message is sent to. + */ + MESSAGING_KAFKA_PARTITION: "messaging.kafka.partition", + /** + * A boolean that is true if the message is a tombstone. + */ + MESSAGING_KAFKA_TOMBSTONE: "messaging.kafka.tombstone", + /** + * A string identifying the remoting system. + */ + RPC_SYSTEM: "rpc.system", + /** + * The full (logical) name of the service being called, including its package name, if applicable. + * + * Note: This is the logical name of the service from the RPC interface perspective, which can be different from the name of any implementing class. The `code.namespace` attribute may be used to store the latter (despite the attribute name, it may include a class name; e.g., class with method actually executing the call on the server side, RPC client stub class on the client side). + */ + RPC_SERVICE: "rpc.service", + /** + * The name of the (logical) method being called, must be equal to the $method part in the span name. + * + * Note: This is the logical name of the method from the RPC interface perspective, which can be different from the name of any implementing method/function. The `code.function` attribute may be used to store the latter (e.g., method actually executing the call on the server side, RPC client stub method on the client side). + */ + RPC_METHOD: "rpc.method", + /** + * The [numeric status code](https://github.com/grpc/grpc/blob/v1.33.2/doc/statuscodes.md) of the gRPC request. + */ + RPC_GRPC_STATUS_CODE: "rpc.grpc.status_code", + /** + * Protocol version as in `jsonrpc` property of request/response. Since JSON-RPC 1.0 does not specify this, the value can be omitted. + */ + RPC_JSONRPC_VERSION: "rpc.jsonrpc.version", + /** + * `id` property of request or response. Since protocol allows id to be int, string, `null` or missing (for notifications), value is expected to be cast to string for simplicity. Use empty string in case of `null` value. Omit entirely if this is a notification. + */ + RPC_JSONRPC_REQUEST_ID: "rpc.jsonrpc.request_id", + /** + * `error.code` property of response if it is an error response. + */ + RPC_JSONRPC_ERROR_CODE: "rpc.jsonrpc.error_code", + /** + * `error.message` property of response if it is an error response. + */ + RPC_JSONRPC_ERROR_MESSAGE: "rpc.jsonrpc.error_message", + /** + * Whether this is a received or sent message. + */ + MESSAGE_TYPE: "message.type", + /** + * MUST be calculated as two different counters starting from `1` one for sent messages and one for received message. + * + * Note: This way we guarantee that the values will be consistent between different implementations. + */ + MESSAGE_ID: "message.id", + /** + * Compressed size of the message in bytes. + */ + MESSAGE_COMPRESSED_SIZE: "message.compressed_size", + /** + * Uncompressed size of the message in bytes. + */ + MESSAGE_UNCOMPRESSED_SIZE: "message.uncompressed_size" + }; + exports2.DbSystemValues = { + /** Some other SQL database. Fallback only. See notes. */ + OTHER_SQL: "other_sql", + /** Microsoft SQL Server. */ + MSSQL: "mssql", + /** MySQL. */ + MYSQL: "mysql", + /** Oracle Database. */ + ORACLE: "oracle", + /** IBM Db2. */ + DB2: "db2", + /** PostgreSQL. */ + POSTGRESQL: "postgresql", + /** Amazon Redshift. */ + REDSHIFT: "redshift", + /** Apache Hive. */ + HIVE: "hive", + /** Cloudscape. */ + CLOUDSCAPE: "cloudscape", + /** HyperSQL DataBase. */ + HSQLDB: "hsqldb", + /** Progress Database. */ + PROGRESS: "progress", + /** SAP MaxDB. */ + MAXDB: "maxdb", + /** SAP HANA. */ + HANADB: "hanadb", + /** Ingres. */ + INGRES: "ingres", + /** FirstSQL. */ + FIRSTSQL: "firstsql", + /** EnterpriseDB. */ + EDB: "edb", + /** InterSystems Caché. */ + CACHE: "cache", + /** Adabas (Adaptable Database System). */ + ADABAS: "adabas", + /** Firebird. */ + FIREBIRD: "firebird", + /** Apache Derby. */ + DERBY: "derby", + /** FileMaker. */ + FILEMAKER: "filemaker", + /** Informix. */ + INFORMIX: "informix", + /** InstantDB. */ + INSTANTDB: "instantdb", + /** InterBase. */ + INTERBASE: "interbase", + /** MariaDB. */ + MARIADB: "mariadb", + /** Netezza. */ + NETEZZA: "netezza", + /** Pervasive PSQL. */ + PERVASIVE: "pervasive", + /** PointBase. */ + POINTBASE: "pointbase", + /** SQLite. */ + SQLITE: "sqlite", + /** Sybase. */ + SYBASE: "sybase", + /** Teradata. */ + TERADATA: "teradata", + /** Vertica. */ + VERTICA: "vertica", + /** H2. */ + H2: "h2", + /** ColdFusion IMQ. */ + COLDFUSION: "coldfusion", + /** Apache Cassandra. */ + CASSANDRA: "cassandra", + /** Apache HBase. */ + HBASE: "hbase", + /** MongoDB. */ + MONGODB: "mongodb", + /** Redis. */ + REDIS: "redis", + /** Couchbase. */ + COUCHBASE: "couchbase", + /** CouchDB. */ + COUCHDB: "couchdb", + /** Microsoft Azure Cosmos DB. */ + COSMOSDB: "cosmosdb", + /** Amazon DynamoDB. */ + DYNAMODB: "dynamodb", + /** Neo4j. */ + NEO4J: "neo4j", + /** Apache Geode. */ + GEODE: "geode", + /** Elasticsearch. */ + ELASTICSEARCH: "elasticsearch", + /** Memcached. */ + MEMCACHED: "memcached", + /** CockroachDB. */ + COCKROACHDB: "cockroachdb" + }; + exports2.DbCassandraConsistencyLevelValues = { + /** all. */ + ALL: "all", + /** each_quorum. */ + EACH_QUORUM: "each_quorum", + /** quorum. */ + QUORUM: "quorum", + /** local_quorum. */ + LOCAL_QUORUM: "local_quorum", + /** one. */ + ONE: "one", + /** two. */ + TWO: "two", + /** three. */ + THREE: "three", + /** local_one. */ + LOCAL_ONE: "local_one", + /** any. */ + ANY: "any", + /** serial. */ + SERIAL: "serial", + /** local_serial. */ + LOCAL_SERIAL: "local_serial" + }; + exports2.FaasTriggerValues = { + /** A response to some data source operation such as a database or filesystem read/write. */ + DATASOURCE: "datasource", + /** To provide an answer to an inbound HTTP request. */ + HTTP: "http", + /** A function is set to be executed when messages are sent to a messaging system. */ + PUBSUB: "pubsub", + /** A function is scheduled to be executed regularly. */ + TIMER: "timer", + /** If none of the others apply. */ + OTHER: "other" + }; + exports2.FaasDocumentOperationValues = { + /** When a new object is created. */ + INSERT: "insert", + /** When an object is modified. */ + EDIT: "edit", + /** When an object is deleted. */ + DELETE: "delete" + }; + exports2.FaasInvokedProviderValues = { + /** Alibaba Cloud. */ + ALIBABA_CLOUD: "alibaba_cloud", + /** Amazon Web Services. */ + AWS: "aws", + /** Microsoft Azure. */ + AZURE: "azure", + /** Google Cloud Platform. */ + GCP: "gcp" + }; + exports2.NetTransportValues = { + /** ip_tcp. */ + IP_TCP: "ip_tcp", + /** ip_udp. */ + IP_UDP: "ip_udp", + /** Another IP-based protocol. */ + IP: "ip", + /** Unix Domain socket. See below. */ + UNIX: "unix", + /** Named or anonymous pipe. See note below. */ + PIPE: "pipe", + /** In-process communication. */ + INPROC: "inproc", + /** Something else (non IP-based). */ + OTHER: "other" + }; + exports2.NetHostConnectionTypeValues = { + /** wifi. */ + WIFI: "wifi", + /** wired. */ + WIRED: "wired", + /** cell. */ + CELL: "cell", + /** unavailable. */ + UNAVAILABLE: "unavailable", + /** unknown. */ + UNKNOWN: "unknown" + }; + exports2.NetHostConnectionSubtypeValues = { + /** GPRS. */ + GPRS: "gprs", + /** EDGE. */ + EDGE: "edge", + /** UMTS. */ + UMTS: "umts", + /** CDMA. */ + CDMA: "cdma", + /** EVDO Rel. 0. */ + EVDO_0: "evdo_0", + /** EVDO Rev. A. */ + EVDO_A: "evdo_a", + /** CDMA2000 1XRTT. */ + CDMA2000_1XRTT: "cdma2000_1xrtt", + /** HSDPA. */ + HSDPA: "hsdpa", + /** HSUPA. */ + HSUPA: "hsupa", + /** HSPA. */ + HSPA: "hspa", + /** IDEN. */ + IDEN: "iden", + /** EVDO Rev. B. */ + EVDO_B: "evdo_b", + /** LTE. */ + LTE: "lte", + /** EHRPD. */ + EHRPD: "ehrpd", + /** HSPAP. */ + HSPAP: "hspap", + /** GSM. */ + GSM: "gsm", + /** TD-SCDMA. */ + TD_SCDMA: "td_scdma", + /** IWLAN. */ + IWLAN: "iwlan", + /** 5G NR (New Radio). */ + NR: "nr", + /** 5G NRNSA (New Radio Non-Standalone). */ + NRNSA: "nrnsa", + /** LTE CA. */ + LTE_CA: "lte_ca" + }; + exports2.HttpFlavorValues = { + /** HTTP 1.0. */ + HTTP_1_0: "1.0", + /** HTTP 1.1. */ + HTTP_1_1: "1.1", + /** HTTP 2. */ + HTTP_2_0: "2.0", + /** SPDY protocol. */ + SPDY: "SPDY", + /** QUIC protocol. */ + QUIC: "QUIC" + }; + exports2.MessagingDestinationKindValues = { + /** A message sent to a queue. */ + QUEUE: "queue", + /** A message sent to a topic. */ + TOPIC: "topic" + }; + exports2.MessagingOperationValues = { + /** receive. */ + RECEIVE: "receive", + /** process. */ + PROCESS: "process" + }; + exports2.RpcGrpcStatusCodeValues = { + /** OK. */ + OK: 0, + /** CANCELLED. */ + CANCELLED: 1, + /** UNKNOWN. */ + UNKNOWN: 2, + /** INVALID_ARGUMENT. */ + INVALID_ARGUMENT: 3, + /** DEADLINE_EXCEEDED. */ + DEADLINE_EXCEEDED: 4, + /** NOT_FOUND. */ + NOT_FOUND: 5, + /** ALREADY_EXISTS. */ + ALREADY_EXISTS: 6, + /** PERMISSION_DENIED. */ + PERMISSION_DENIED: 7, + /** RESOURCE_EXHAUSTED. */ + RESOURCE_EXHAUSTED: 8, + /** FAILED_PRECONDITION. */ + FAILED_PRECONDITION: 9, + /** ABORTED. */ + ABORTED: 10, + /** OUT_OF_RANGE. */ + OUT_OF_RANGE: 11, + /** UNIMPLEMENTED. */ + UNIMPLEMENTED: 12, + /** INTERNAL. */ + INTERNAL: 13, + /** UNAVAILABLE. */ + UNAVAILABLE: 14, + /** DATA_LOSS. */ + DATA_LOSS: 15, + /** UNAUTHENTICATED. */ + UNAUTHENTICATED: 16 + }; + exports2.MessageTypeValues = { + /** sent. */ + SENT: "SENT", + /** received. */ + RECEIVED: "RECEIVED" + }; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+semantic-conventions@1.18.1/node_modules/@opentelemetry/semantic-conventions/build/src/trace/index.js +var require_trace3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+semantic-conventions@1.18.1/node_modules/@opentelemetry/semantic-conventions/build/src/trace/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_SemanticAttributes(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+semantic-conventions@1.18.1/node_modules/@opentelemetry/semantic-conventions/build/src/resource/SemanticResourceAttributes.js +var require_SemanticResourceAttributes = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+semantic-conventions@1.18.1/node_modules/@opentelemetry/semantic-conventions/build/src/resource/SemanticResourceAttributes.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TelemetrySdkLanguageValues = exports2.OsTypeValues = exports2.HostArchValues = exports2.AwsEcsLaunchtypeValues = exports2.CloudPlatformValues = exports2.CloudProviderValues = exports2.SemanticResourceAttributes = void 0; + exports2.SemanticResourceAttributes = { + /** + * Name of the cloud provider. + */ + CLOUD_PROVIDER: "cloud.provider", + /** + * The cloud account ID the resource is assigned to. + */ + CLOUD_ACCOUNT_ID: "cloud.account.id", + /** + * The geographical region the resource is running. Refer to your provider's docs to see the available regions, for example [Alibaba Cloud regions](https://www.alibabacloud.com/help/doc-detail/40654.htm), [AWS regions](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/), [Azure regions](https://azure.microsoft.com/en-us/global-infrastructure/geographies/), or [Google Cloud regions](https://cloud.google.com/about/locations). + */ + CLOUD_REGION: "cloud.region", + /** + * Cloud regions often have multiple, isolated locations known as zones to increase availability. Availability zone represents the zone where the resource is running. + * + * Note: Availability zones are called "zones" on Alibaba Cloud and Google Cloud. + */ + CLOUD_AVAILABILITY_ZONE: "cloud.availability_zone", + /** + * The cloud platform in use. + * + * Note: The prefix of the service SHOULD match the one specified in `cloud.provider`. + */ + CLOUD_PLATFORM: "cloud.platform", + /** + * The Amazon Resource Name (ARN) of an [ECS container instance](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.html). + */ + AWS_ECS_CONTAINER_ARN: "aws.ecs.container.arn", + /** + * The ARN of an [ECS cluster](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/clusters.html). + */ + AWS_ECS_CLUSTER_ARN: "aws.ecs.cluster.arn", + /** + * The [launch type](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html) for an ECS task. + */ + AWS_ECS_LAUNCHTYPE: "aws.ecs.launchtype", + /** + * The ARN of an [ECS task definition](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definitions.html). + */ + AWS_ECS_TASK_ARN: "aws.ecs.task.arn", + /** + * The task definition family this task definition is a member of. + */ + AWS_ECS_TASK_FAMILY: "aws.ecs.task.family", + /** + * The revision for this task definition. + */ + AWS_ECS_TASK_REVISION: "aws.ecs.task.revision", + /** + * The ARN of an EKS cluster. + */ + AWS_EKS_CLUSTER_ARN: "aws.eks.cluster.arn", + /** + * The name(s) of the AWS log group(s) an application is writing to. + * + * Note: Multiple log groups must be supported for cases like multi-container applications, where a single application has sidecar containers, and each write to their own log group. + */ + AWS_LOG_GROUP_NAMES: "aws.log.group.names", + /** + * The Amazon Resource Name(s) (ARN) of the AWS log group(s). + * + * Note: See the [log group ARN format documentation](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html#CWL_ARN_Format). + */ + AWS_LOG_GROUP_ARNS: "aws.log.group.arns", + /** + * The name(s) of the AWS log stream(s) an application is writing to. + */ + AWS_LOG_STREAM_NAMES: "aws.log.stream.names", + /** + * The ARN(s) of the AWS log stream(s). + * + * Note: See the [log stream ARN format documentation](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html#CWL_ARN_Format). One log group can contain several log streams, so these ARNs necessarily identify both a log group and a log stream. + */ + AWS_LOG_STREAM_ARNS: "aws.log.stream.arns", + /** + * Container name. + */ + CONTAINER_NAME: "container.name", + /** + * Container ID. Usually a UUID, as for example used to [identify Docker containers](https://docs.docker.com/engine/reference/run/#container-identification). The UUID might be abbreviated. + */ + CONTAINER_ID: "container.id", + /** + * The container runtime managing this container. + */ + CONTAINER_RUNTIME: "container.runtime", + /** + * Name of the image the container was built on. + */ + CONTAINER_IMAGE_NAME: "container.image.name", + /** + * Container image tag. + */ + CONTAINER_IMAGE_TAG: "container.image.tag", + /** + * Name of the [deployment environment](https://en.wikipedia.org/wiki/Deployment_environment) (aka deployment tier). + */ + DEPLOYMENT_ENVIRONMENT: "deployment.environment", + /** + * A unique identifier representing the device. + * + * Note: The device identifier MUST only be defined using the values outlined below. This value is not an advertising identifier and MUST NOT be used as such. On iOS (Swift or Objective-C), this value MUST be equal to the [vendor identifier](https://developer.apple.com/documentation/uikit/uidevice/1620059-identifierforvendor). On Android (Java or Kotlin), this value MUST be equal to the Firebase Installation ID or a globally unique UUID which is persisted across sessions in your application. More information can be found [here](https://developer.android.com/training/articles/user-data-ids) on best practices and exact implementation details. Caution should be taken when storing personal data or anything which can identify a user. GDPR and data protection laws may apply, ensure you do your own due diligence. + */ + DEVICE_ID: "device.id", + /** + * The model identifier for the device. + * + * Note: It's recommended this value represents a machine readable version of the model identifier rather than the market or consumer-friendly name of the device. + */ + DEVICE_MODEL_IDENTIFIER: "device.model.identifier", + /** + * The marketing name for the device model. + * + * Note: It's recommended this value represents a human readable version of the device model rather than a machine readable alternative. + */ + DEVICE_MODEL_NAME: "device.model.name", + /** + * The name of the single function that this runtime instance executes. + * + * Note: This is the name of the function as configured/deployed on the FaaS platform and is usually different from the name of the callback function (which may be stored in the [`code.namespace`/`code.function`](../../trace/semantic_conventions/span-general.md#source-code-attributes) span attributes). + */ + FAAS_NAME: "faas.name", + /** + * The unique ID of the single function that this runtime instance executes. + * + * Note: Depending on the cloud provider, use: + + * **AWS Lambda:** The function [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). + Take care not to use the "invoked ARN" directly but replace any + [alias suffix](https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html) with the resolved function version, as the same runtime instance may be invokable with multiple + different aliases. + * **GCP:** The [URI of the resource](https://cloud.google.com/iam/docs/full-resource-names) + * **Azure:** The [Fully Qualified Resource ID](https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id). + + On some providers, it may not be possible to determine the full ID at startup, + which is why this field cannot be made required. For example, on AWS the account ID + part of the ARN is not available without calling another AWS API + which may be deemed too slow for a short-running lambda function. + As an alternative, consider setting `faas.id` as a span attribute instead. + */ + FAAS_ID: "faas.id", + /** + * The immutable version of the function being executed. + * + * Note: Depending on the cloud provider and platform, use: + + * **AWS Lambda:** The [function version](https://docs.aws.amazon.com/lambda/latest/dg/configuration-versions.html) + (an integer represented as a decimal string). + * **Google Cloud Run:** The [revision](https://cloud.google.com/run/docs/managing/revisions) + (i.e., the function name plus the revision suffix). + * **Google Cloud Functions:** The value of the + [`K_REVISION` environment variable](https://cloud.google.com/functions/docs/env-var#runtime_environment_variables_set_automatically). + * **Azure Functions:** Not applicable. Do not set this attribute. + */ + FAAS_VERSION: "faas.version", + /** + * The execution environment ID as a string, that will be potentially reused for other invocations to the same function/function version. + * + * Note: * **AWS Lambda:** Use the (full) log stream name. + */ + FAAS_INSTANCE: "faas.instance", + /** + * The amount of memory available to the serverless function in MiB. + * + * Note: It's recommended to set this attribute since e.g. too little memory can easily stop a Java AWS Lambda function from working correctly. On AWS Lambda, the environment variable `AWS_LAMBDA_FUNCTION_MEMORY_SIZE` provides this information. + */ + FAAS_MAX_MEMORY: "faas.max_memory", + /** + * Unique host ID. For Cloud, this must be the instance_id assigned by the cloud provider. + */ + HOST_ID: "host.id", + /** + * Name of the host. On Unix systems, it may contain what the hostname command returns, or the fully qualified hostname, or another name specified by the user. + */ + HOST_NAME: "host.name", + /** + * Type of host. For Cloud, this must be the machine type. + */ + HOST_TYPE: "host.type", + /** + * The CPU architecture the host system is running on. + */ + HOST_ARCH: "host.arch", + /** + * Name of the VM image or OS install the host was instantiated from. + */ + HOST_IMAGE_NAME: "host.image.name", + /** + * VM image ID. For Cloud, this value is from the provider. + */ + HOST_IMAGE_ID: "host.image.id", + /** + * The version string of the VM image as defined in [Version SpanAttributes](README.md#version-attributes). + */ + HOST_IMAGE_VERSION: "host.image.version", + /** + * The name of the cluster. + */ + K8S_CLUSTER_NAME: "k8s.cluster.name", + /** + * The name of the Node. + */ + K8S_NODE_NAME: "k8s.node.name", + /** + * The UID of the Node. + */ + K8S_NODE_UID: "k8s.node.uid", + /** + * The name of the namespace that the pod is running in. + */ + K8S_NAMESPACE_NAME: "k8s.namespace.name", + /** + * The UID of the Pod. + */ + K8S_POD_UID: "k8s.pod.uid", + /** + * The name of the Pod. + */ + K8S_POD_NAME: "k8s.pod.name", + /** + * The name of the Container in a Pod template. + */ + K8S_CONTAINER_NAME: "k8s.container.name", + /** + * The UID of the ReplicaSet. + */ + K8S_REPLICASET_UID: "k8s.replicaset.uid", + /** + * The name of the ReplicaSet. + */ + K8S_REPLICASET_NAME: "k8s.replicaset.name", + /** + * The UID of the Deployment. + */ + K8S_DEPLOYMENT_UID: "k8s.deployment.uid", + /** + * The name of the Deployment. + */ + K8S_DEPLOYMENT_NAME: "k8s.deployment.name", + /** + * The UID of the StatefulSet. + */ + K8S_STATEFULSET_UID: "k8s.statefulset.uid", + /** + * The name of the StatefulSet. + */ + K8S_STATEFULSET_NAME: "k8s.statefulset.name", + /** + * The UID of the DaemonSet. + */ + K8S_DAEMONSET_UID: "k8s.daemonset.uid", + /** + * The name of the DaemonSet. + */ + K8S_DAEMONSET_NAME: "k8s.daemonset.name", + /** + * The UID of the Job. + */ + K8S_JOB_UID: "k8s.job.uid", + /** + * The name of the Job. + */ + K8S_JOB_NAME: "k8s.job.name", + /** + * The UID of the CronJob. + */ + K8S_CRONJOB_UID: "k8s.cronjob.uid", + /** + * The name of the CronJob. + */ + K8S_CRONJOB_NAME: "k8s.cronjob.name", + /** + * The operating system type. + */ + OS_TYPE: "os.type", + /** + * Human readable (not intended to be parsed) OS version information, like e.g. reported by `ver` or `lsb_release -a` commands. + */ + OS_DESCRIPTION: "os.description", + /** + * Human readable operating system name. + */ + OS_NAME: "os.name", + /** + * The version string of the operating system as defined in [Version SpanAttributes](../../resource/semantic_conventions/README.md#version-attributes). + */ + OS_VERSION: "os.version", + /** + * Process identifier (PID). + */ + PROCESS_PID: "process.pid", + /** + * The name of the process executable. On Linux based systems, can be set to the `Name` in `proc/[pid]/status`. On Windows, can be set to the base name of `GetProcessImageFileNameW`. + */ + PROCESS_EXECUTABLE_NAME: "process.executable.name", + /** + * The full path to the process executable. On Linux based systems, can be set to the target of `proc/[pid]/exe`. On Windows, can be set to the result of `GetProcessImageFileNameW`. + */ + PROCESS_EXECUTABLE_PATH: "process.executable.path", + /** + * The command used to launch the process (i.e. the command name). On Linux based systems, can be set to the zeroth string in `proc/[pid]/cmdline`. On Windows, can be set to the first parameter extracted from `GetCommandLineW`. + */ + PROCESS_COMMAND: "process.command", + /** + * The full command used to launch the process as a single string representing the full command. On Windows, can be set to the result of `GetCommandLineW`. Do not set this if you have to assemble it just for monitoring; use `process.command_args` instead. + */ + PROCESS_COMMAND_LINE: "process.command_line", + /** + * All the command arguments (including the command/executable itself) as received by the process. On Linux-based systems (and some other Unixoid systems supporting procfs), can be set according to the list of null-delimited strings extracted from `proc/[pid]/cmdline`. For libc-based executables, this would be the full argv vector passed to `main`. + */ + PROCESS_COMMAND_ARGS: "process.command_args", + /** + * The username of the user that owns the process. + */ + PROCESS_OWNER: "process.owner", + /** + * The name of the runtime of this process. For compiled native binaries, this SHOULD be the name of the compiler. + */ + PROCESS_RUNTIME_NAME: "process.runtime.name", + /** + * The version of the runtime of this process, as returned by the runtime without modification. + */ + PROCESS_RUNTIME_VERSION: "process.runtime.version", + /** + * An additional description about the runtime of the process, for example a specific vendor customization of the runtime environment. + */ + PROCESS_RUNTIME_DESCRIPTION: "process.runtime.description", + /** + * Logical name of the service. + * + * Note: MUST be the same for all instances of horizontally scaled services. If the value was not specified, SDKs MUST fallback to `unknown_service:` concatenated with [`process.executable.name`](process.md#process), e.g. `unknown_service:bash`. If `process.executable.name` is not available, the value MUST be set to `unknown_service`. + */ + SERVICE_NAME: "service.name", + /** + * A namespace for `service.name`. + * + * Note: A string value having a meaning that helps to distinguish a group of services, for example the team name that owns a group of services. `service.name` is expected to be unique within the same namespace. If `service.namespace` is not specified in the Resource then `service.name` is expected to be unique for all services that have no explicit namespace defined (so the empty/unspecified namespace is simply one more valid namespace). Zero-length namespace string is assumed equal to unspecified namespace. + */ + SERVICE_NAMESPACE: "service.namespace", + /** + * The string ID of the service instance. + * + * Note: MUST be unique for each instance of the same `service.namespace,service.name` pair (in other words `service.namespace,service.name,service.instance.id` triplet MUST be globally unique). The ID helps to distinguish instances of the same service that exist at the same time (e.g. instances of a horizontally scaled service). It is preferable for the ID to be persistent and stay the same for the lifetime of the service instance, however it is acceptable that the ID is ephemeral and changes during important lifetime events for the service (e.g. service restarts). If the service has no inherent unique ID that can be used as the value of this attribute it is recommended to generate a random Version 1 or Version 4 RFC 4122 UUID (services aiming for reproducible UUIDs may also use Version 5, see RFC 4122 for more recommendations). + */ + SERVICE_INSTANCE_ID: "service.instance.id", + /** + * The version string of the service API or implementation. + */ + SERVICE_VERSION: "service.version", + /** + * The name of the telemetry SDK as defined above. + */ + TELEMETRY_SDK_NAME: "telemetry.sdk.name", + /** + * The language of the telemetry SDK. + */ + TELEMETRY_SDK_LANGUAGE: "telemetry.sdk.language", + /** + * The version string of the telemetry SDK. + */ + TELEMETRY_SDK_VERSION: "telemetry.sdk.version", + /** + * The version string of the auto instrumentation agent, if used. + */ + TELEMETRY_AUTO_VERSION: "telemetry.auto.version", + /** + * The name of the web engine. + */ + WEBENGINE_NAME: "webengine.name", + /** + * The version of the web engine. + */ + WEBENGINE_VERSION: "webengine.version", + /** + * Additional description of the web engine (e.g. detailed version and edition information). + */ + WEBENGINE_DESCRIPTION: "webengine.description" + }; + exports2.CloudProviderValues = { + /** Alibaba Cloud. */ + ALIBABA_CLOUD: "alibaba_cloud", + /** Amazon Web Services. */ + AWS: "aws", + /** Microsoft Azure. */ + AZURE: "azure", + /** Google Cloud Platform. */ + GCP: "gcp" + }; + exports2.CloudPlatformValues = { + /** Alibaba Cloud Elastic Compute Service. */ + ALIBABA_CLOUD_ECS: "alibaba_cloud_ecs", + /** Alibaba Cloud Function Compute. */ + ALIBABA_CLOUD_FC: "alibaba_cloud_fc", + /** AWS Elastic Compute Cloud. */ + AWS_EC2: "aws_ec2", + /** AWS Elastic Container Service. */ + AWS_ECS: "aws_ecs", + /** AWS Elastic Kubernetes Service. */ + AWS_EKS: "aws_eks", + /** AWS Lambda. */ + AWS_LAMBDA: "aws_lambda", + /** AWS Elastic Beanstalk. */ + AWS_ELASTIC_BEANSTALK: "aws_elastic_beanstalk", + /** Azure Virtual Machines. */ + AZURE_VM: "azure_vm", + /** Azure Container Instances. */ + AZURE_CONTAINER_INSTANCES: "azure_container_instances", + /** Azure Kubernetes Service. */ + AZURE_AKS: "azure_aks", + /** Azure Functions. */ + AZURE_FUNCTIONS: "azure_functions", + /** Azure App Service. */ + AZURE_APP_SERVICE: "azure_app_service", + /** Google Cloud Compute Engine (GCE). */ + GCP_COMPUTE_ENGINE: "gcp_compute_engine", + /** Google Cloud Run. */ + GCP_CLOUD_RUN: "gcp_cloud_run", + /** Google Cloud Kubernetes Engine (GKE). */ + GCP_KUBERNETES_ENGINE: "gcp_kubernetes_engine", + /** Google Cloud Functions (GCF). */ + GCP_CLOUD_FUNCTIONS: "gcp_cloud_functions", + /** Google Cloud App Engine (GAE). */ + GCP_APP_ENGINE: "gcp_app_engine" + }; + exports2.AwsEcsLaunchtypeValues = { + /** ec2. */ + EC2: "ec2", + /** fargate. */ + FARGATE: "fargate" + }; + exports2.HostArchValues = { + /** AMD64. */ + AMD64: "amd64", + /** ARM32. */ + ARM32: "arm32", + /** ARM64. */ + ARM64: "arm64", + /** Itanium. */ + IA64: "ia64", + /** 32-bit PowerPC. */ + PPC32: "ppc32", + /** 64-bit PowerPC. */ + PPC64: "ppc64", + /** 32-bit x86. */ + X86: "x86" + }; + exports2.OsTypeValues = { + /** Microsoft Windows. */ + WINDOWS: "windows", + /** Linux. */ + LINUX: "linux", + /** Apple Darwin. */ + DARWIN: "darwin", + /** FreeBSD. */ + FREEBSD: "freebsd", + /** NetBSD. */ + NETBSD: "netbsd", + /** OpenBSD. */ + OPENBSD: "openbsd", + /** DragonFly BSD. */ + DRAGONFLYBSD: "dragonflybsd", + /** HP-UX (Hewlett Packard Unix). */ + HPUX: "hpux", + /** AIX (Advanced Interactive eXecutive). */ + AIX: "aix", + /** Oracle Solaris. */ + SOLARIS: "solaris", + /** IBM z/OS. */ + Z_OS: "z_os" + }; + exports2.TelemetrySdkLanguageValues = { + /** cpp. */ + CPP: "cpp", + /** dotnet. */ + DOTNET: "dotnet", + /** erlang. */ + ERLANG: "erlang", + /** go. */ + GO: "go", + /** java. */ + JAVA: "java", + /** nodejs. */ + NODEJS: "nodejs", + /** php. */ + PHP: "php", + /** python. */ + PYTHON: "python", + /** ruby. */ + RUBY: "ruby", + /** webjs. */ + WEBJS: "webjs" + }; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+semantic-conventions@1.18.1/node_modules/@opentelemetry/semantic-conventions/build/src/resource/index.js +var require_resource = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+semantic-conventions@1.18.1/node_modules/@opentelemetry/semantic-conventions/build/src/resource/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_SemanticResourceAttributes(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+semantic-conventions@1.18.1/node_modules/@opentelemetry/semantic-conventions/build/src/index.js +var require_src4 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+semantic-conventions@1.18.1/node_modules/@opentelemetry/semantic-conventions/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_trace3(), exports2); + __exportStar(require_resource(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/sdk-info.js +var require_sdk_info = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/sdk-info.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SDK_INFO = void 0; + var version_1 = require_version3(); + var semantic_conventions_1 = require_src4(); + exports2.SDK_INFO = { + [semantic_conventions_1.SemanticResourceAttributes.TELEMETRY_SDK_NAME]: "opentelemetry", + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]: "node", + [semantic_conventions_1.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]: semantic_conventions_1.TelemetrySdkLanguageValues.NODEJS, + [semantic_conventions_1.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]: version_1.VERSION + }; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/timer-util.js +var require_timer_util = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/timer-util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.unrefTimer = void 0; + function unrefTimer(timer) { + timer.unref(); + } + exports2.unrefTimer = unrefTimer; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/index.js +var require_node5 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/node/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_environment2(), exports2); + __exportStar(require_globalThis3(), exports2); + __exportStar(require_hex_to_base64(), exports2); + __exportStar(require_RandomIdGenerator(), exports2); + __exportStar(require_performance(), exports2); + __exportStar(require_sdk_info(), exports2); + __exportStar(require_timer_util(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/index.js +var require_platform2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/platform/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_node5(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/time.js +var require_time2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/time.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addHrTimes = exports2.isTimeInput = exports2.isTimeInputHrTime = exports2.hrTimeToMicroseconds = exports2.hrTimeToMilliseconds = exports2.hrTimeToNanoseconds = exports2.hrTimeToTimeStamp = exports2.hrTimeDuration = exports2.timeInputToHrTime = exports2.hrTime = exports2.getTimeOrigin = exports2.millisToHrTime = void 0; + var platform_1 = require_platform2(); + var NANOSECOND_DIGITS = 9; + var NANOSECOND_DIGITS_IN_MILLIS = 6; + var MILLISECONDS_TO_NANOSECONDS = Math.pow(10, NANOSECOND_DIGITS_IN_MILLIS); + var SECOND_TO_NANOSECONDS = Math.pow(10, NANOSECOND_DIGITS); + function millisToHrTime(epochMillis) { + const epochSeconds = epochMillis / 1e3; + const seconds = Math.trunc(epochSeconds); + const nanos = Math.round(epochMillis % 1e3 * MILLISECONDS_TO_NANOSECONDS); + return [seconds, nanos]; + } + exports2.millisToHrTime = millisToHrTime; + function getTimeOrigin() { + let timeOrigin = platform_1.otperformance.timeOrigin; + if (typeof timeOrigin !== "number") { + const perf2 = platform_1.otperformance; + timeOrigin = perf2.timing && perf2.timing.fetchStart; + } + return timeOrigin; + } + exports2.getTimeOrigin = getTimeOrigin; + function hrTime(performanceNow) { + const timeOrigin = millisToHrTime(getTimeOrigin()); + const now = millisToHrTime(typeof performanceNow === "number" ? performanceNow : platform_1.otperformance.now()); + return addHrTimes(timeOrigin, now); + } + exports2.hrTime = hrTime; + function timeInputToHrTime(time) { + if (isTimeInputHrTime(time)) { + return time; + } else if (typeof time === "number") { + if (time < getTimeOrigin()) { + return hrTime(time); + } else { + return millisToHrTime(time); + } + } else if (time instanceof Date) { + return millisToHrTime(time.getTime()); + } else { + throw TypeError("Invalid input type"); + } + } + exports2.timeInputToHrTime = timeInputToHrTime; + function hrTimeDuration(startTime, endTime) { + let seconds = endTime[0] - startTime[0]; + let nanos = endTime[1] - startTime[1]; + if (nanos < 0) { + seconds -= 1; + nanos += SECOND_TO_NANOSECONDS; + } + return [seconds, nanos]; + } + exports2.hrTimeDuration = hrTimeDuration; + function hrTimeToTimeStamp(time) { + const precision = NANOSECOND_DIGITS; + const tmp = `${"0".repeat(precision)}${time[1]}Z`; + const nanoString = tmp.substr(tmp.length - precision - 1); + const date = new Date(time[0] * 1e3).toISOString(); + return date.replace("000Z", nanoString); + } + exports2.hrTimeToTimeStamp = hrTimeToTimeStamp; + function hrTimeToNanoseconds(time) { + return time[0] * SECOND_TO_NANOSECONDS + time[1]; + } + exports2.hrTimeToNanoseconds = hrTimeToNanoseconds; + function hrTimeToMilliseconds(time) { + return time[0] * 1e3 + time[1] / 1e6; + } + exports2.hrTimeToMilliseconds = hrTimeToMilliseconds; + function hrTimeToMicroseconds(time) { + return time[0] * 1e6 + time[1] / 1e3; + } + exports2.hrTimeToMicroseconds = hrTimeToMicroseconds; + function isTimeInputHrTime(value) { + return Array.isArray(value) && value.length === 2 && typeof value[0] === "number" && typeof value[1] === "number"; + } + exports2.isTimeInputHrTime = isTimeInputHrTime; + function isTimeInput(value) { + return isTimeInputHrTime(value) || typeof value === "number" || value instanceof Date; + } + exports2.isTimeInput = isTimeInput; + function addHrTimes(time1, time2) { + const out2 = [time1[0] + time2[0], time1[1] + time2[1]]; + if (out2[1] >= SECOND_TO_NANOSECONDS) { + out2[1] -= SECOND_TO_NANOSECONDS; + out2[0] += 1; + } + return out2; + } + exports2.addHrTimes = addHrTimes; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/types.js +var require_types3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/common/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/ExportResult.js +var require_ExportResult = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/ExportResult.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ExportResultCode = void 0; + var ExportResultCode; + (function(ExportResultCode2) { + ExportResultCode2[ExportResultCode2["SUCCESS"] = 0] = "SUCCESS"; + ExportResultCode2[ExportResultCode2["FAILED"] = 1] = "FAILED"; + })(ExportResultCode = exports2.ExportResultCode || (exports2.ExportResultCode = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/propagation/composite.js +var require_composite = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/propagation/composite.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CompositePropagator = void 0; + var api_1 = require_src(); + var CompositePropagator = class { + /** + * Construct a composite propagator from a list of propagators. + * + * @param [config] Configuration object for composite propagator + */ + constructor(config = {}) { + var _a; + this._propagators = (_a = config.propagators) !== null && _a !== void 0 ? _a : []; + this._fields = Array.from(new Set(this._propagators.map((p) => typeof p.fields === "function" ? p.fields() : []).reduce((x, y) => x.concat(y), []))); + } + /** + * Run each of the configured propagators with the given context and carrier. + * Propagators are run in the order they are configured, so if multiple + * propagators write the same carrier key, the propagator later in the list + * will "win". + * + * @param context Context to inject + * @param carrier Carrier into which context will be injected + */ + inject(context2, carrier, setter) { + for (const propagator of this._propagators) { + try { + propagator.inject(context2, carrier, setter); + } catch (err2) { + api_1.diag.warn(`Failed to inject with ${propagator.constructor.name}. Err: ${err2.message}`); + } + } + } + /** + * Run each of the configured propagators with the given context and carrier. + * Propagators are run in the order they are configured, so if multiple + * propagators write the same context key, the propagator later in the list + * will "win". + * + * @param context Context to add values to + * @param carrier Carrier from which to extract context + */ + extract(context2, carrier, getter) { + return this._propagators.reduce((ctx, propagator) => { + try { + return propagator.extract(ctx, carrier, getter); + } catch (err2) { + api_1.diag.warn(`Failed to inject with ${propagator.constructor.name}. Err: ${err2.message}`); + } + return ctx; + }, context2); + } + fields() { + return this._fields.slice(); + } + }; + exports2.CompositePropagator = CompositePropagator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/internal/validators.js +var require_validators = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/internal/validators.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateValue = exports2.validateKey = void 0; + var VALID_KEY_CHAR_RANGE = "[_0-9a-z-*/]"; + var VALID_KEY = `[a-z]${VALID_KEY_CHAR_RANGE}{0,255}`; + var VALID_VENDOR_KEY = `[a-z0-9]${VALID_KEY_CHAR_RANGE}{0,240}@[a-z]${VALID_KEY_CHAR_RANGE}{0,13}`; + var VALID_KEY_REGEX = new RegExp(`^(?:${VALID_KEY}|${VALID_VENDOR_KEY})$`); + var VALID_VALUE_BASE_REGEX = /^[ -~]{0,255}[!-~]$/; + var INVALID_VALUE_COMMA_EQUAL_REGEX = /,|=/; + function validateKey(key) { + return VALID_KEY_REGEX.test(key); + } + exports2.validateKey = validateKey; + function validateValue(value) { + return VALID_VALUE_BASE_REGEX.test(value) && !INVALID_VALUE_COMMA_EQUAL_REGEX.test(value); + } + exports2.validateValue = validateValue; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/TraceState.js +var require_TraceState = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/TraceState.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TraceState = void 0; + var validators_1 = require_validators(); + var MAX_TRACE_STATE_ITEMS = 32; + var MAX_TRACE_STATE_LEN = 512; + var LIST_MEMBERS_SEPARATOR = ","; + var LIST_MEMBER_KEY_VALUE_SPLITTER = "="; + var TraceState = class _TraceState { + constructor(rawTraceState) { + this._internalState = /* @__PURE__ */ new Map(); + if (rawTraceState) + this._parse(rawTraceState); + } + set(key, value) { + const traceState = this._clone(); + if (traceState._internalState.has(key)) { + traceState._internalState.delete(key); + } + traceState._internalState.set(key, value); + return traceState; + } + unset(key) { + const traceState = this._clone(); + traceState._internalState.delete(key); + return traceState; + } + get(key) { + return this._internalState.get(key); + } + serialize() { + return this._keys().reduce((agg, key) => { + agg.push(key + LIST_MEMBER_KEY_VALUE_SPLITTER + this.get(key)); + return agg; + }, []).join(LIST_MEMBERS_SEPARATOR); + } + _parse(rawTraceState) { + if (rawTraceState.length > MAX_TRACE_STATE_LEN) + return; + this._internalState = rawTraceState.split(LIST_MEMBERS_SEPARATOR).reverse().reduce((agg, part) => { + const listMember = part.trim(); + const i = listMember.indexOf(LIST_MEMBER_KEY_VALUE_SPLITTER); + if (i !== -1) { + const key = listMember.slice(0, i); + const value = listMember.slice(i + 1, part.length); + if ((0, validators_1.validateKey)(key) && (0, validators_1.validateValue)(value)) { + agg.set(key, value); + } else { + } + } + return agg; + }, /* @__PURE__ */ new Map()); + if (this._internalState.size > MAX_TRACE_STATE_ITEMS) { + this._internalState = new Map(Array.from(this._internalState.entries()).reverse().slice(0, MAX_TRACE_STATE_ITEMS)); + } + } + _keys() { + return Array.from(this._internalState.keys()).reverse(); + } + _clone() { + const traceState = new _TraceState(); + traceState._internalState = new Map(this._internalState); + return traceState; + } + }; + exports2.TraceState = TraceState; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/W3CTraceContextPropagator.js +var require_W3CTraceContextPropagator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/W3CTraceContextPropagator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.W3CTraceContextPropagator = exports2.parseTraceParent = exports2.TRACE_STATE_HEADER = exports2.TRACE_PARENT_HEADER = void 0; + var api_1 = require_src(); + var suppress_tracing_1 = require_suppress_tracing(); + var TraceState_1 = require_TraceState(); + exports2.TRACE_PARENT_HEADER = "traceparent"; + exports2.TRACE_STATE_HEADER = "tracestate"; + var VERSION4 = "00"; + var VERSION_PART = "(?!ff)[\\da-f]{2}"; + var TRACE_ID_PART = "(?![0]{32})[\\da-f]{32}"; + var PARENT_ID_PART = "(?![0]{16})[\\da-f]{16}"; + var FLAGS_PART = "[\\da-f]{2}"; + var TRACE_PARENT_REGEX = new RegExp(`^\\s?(${VERSION_PART})-(${TRACE_ID_PART})-(${PARENT_ID_PART})-(${FLAGS_PART})(-.*)?\\s?$`); + function parseTraceParent(traceParent) { + const match2 = TRACE_PARENT_REGEX.exec(traceParent); + if (!match2) + return null; + if (match2[1] === "00" && match2[5]) + return null; + return { + traceId: match2[2], + spanId: match2[3], + traceFlags: parseInt(match2[4], 16) + }; + } + exports2.parseTraceParent = parseTraceParent; + var W3CTraceContextPropagator = class { + inject(context2, carrier, setter) { + const spanContext = api_1.trace.getSpanContext(context2); + if (!spanContext || (0, suppress_tracing_1.isTracingSuppressed)(context2) || !(0, api_1.isSpanContextValid)(spanContext)) + return; + const traceParent = `${VERSION4}-${spanContext.traceId}-${spanContext.spanId}-0${Number(spanContext.traceFlags || api_1.TraceFlags.NONE).toString(16)}`; + setter.set(carrier, exports2.TRACE_PARENT_HEADER, traceParent); + if (spanContext.traceState) { + setter.set(carrier, exports2.TRACE_STATE_HEADER, spanContext.traceState.serialize()); + } + } + extract(context2, carrier, getter) { + const traceParentHeader = getter.get(carrier, exports2.TRACE_PARENT_HEADER); + if (!traceParentHeader) + return context2; + const traceParent = Array.isArray(traceParentHeader) ? traceParentHeader[0] : traceParentHeader; + if (typeof traceParent !== "string") + return context2; + const spanContext = parseTraceParent(traceParent); + if (!spanContext) + return context2; + spanContext.isRemote = true; + const traceStateHeader = getter.get(carrier, exports2.TRACE_STATE_HEADER); + if (traceStateHeader) { + const state = Array.isArray(traceStateHeader) ? traceStateHeader.join(",") : traceStateHeader; + spanContext.traceState = new TraceState_1.TraceState(typeof state === "string" ? state : void 0); + } + return api_1.trace.setSpanContext(context2, spanContext); + } + fields() { + return [exports2.TRACE_PARENT_HEADER, exports2.TRACE_STATE_HEADER]; + } + }; + exports2.W3CTraceContextPropagator = W3CTraceContextPropagator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/IdGenerator.js +var require_IdGenerator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/IdGenerator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/rpc-metadata.js +var require_rpc_metadata = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/rpc-metadata.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getRPCMetadata = exports2.deleteRPCMetadata = exports2.setRPCMetadata = exports2.RPCType = void 0; + var api_1 = require_src(); + var RPC_METADATA_KEY = (0, api_1.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"); + var RPCType; + (function(RPCType2) { + RPCType2["HTTP"] = "http"; + })(RPCType = exports2.RPCType || (exports2.RPCType = {})); + function setRPCMetadata(context2, meta) { + return context2.setValue(RPC_METADATA_KEY, meta); + } + exports2.setRPCMetadata = setRPCMetadata; + function deleteRPCMetadata(context2) { + return context2.deleteValue(RPC_METADATA_KEY); + } + exports2.deleteRPCMetadata = deleteRPCMetadata; + function getRPCMetadata(context2) { + return context2.getValue(RPC_METADATA_KEY); + } + exports2.getRPCMetadata = getRPCMetadata; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/sampler/AlwaysOffSampler.js +var require_AlwaysOffSampler = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/sampler/AlwaysOffSampler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AlwaysOffSampler = void 0; + var api_1 = require_src(); + var AlwaysOffSampler = class { + shouldSample() { + return { + decision: api_1.SamplingDecision.NOT_RECORD + }; + } + toString() { + return "AlwaysOffSampler"; + } + }; + exports2.AlwaysOffSampler = AlwaysOffSampler; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/sampler/AlwaysOnSampler.js +var require_AlwaysOnSampler = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/sampler/AlwaysOnSampler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AlwaysOnSampler = void 0; + var api_1 = require_src(); + var AlwaysOnSampler = class { + shouldSample() { + return { + decision: api_1.SamplingDecision.RECORD_AND_SAMPLED + }; + } + toString() { + return "AlwaysOnSampler"; + } + }; + exports2.AlwaysOnSampler = AlwaysOnSampler; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/sampler/ParentBasedSampler.js +var require_ParentBasedSampler = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/sampler/ParentBasedSampler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ParentBasedSampler = void 0; + var api_1 = require_src(); + var global_error_handler_1 = require_global_error_handler(); + var AlwaysOffSampler_1 = require_AlwaysOffSampler(); + var AlwaysOnSampler_1 = require_AlwaysOnSampler(); + var ParentBasedSampler = class { + constructor(config) { + var _a, _b, _c, _d; + this._root = config.root; + if (!this._root) { + (0, global_error_handler_1.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")); + this._root = new AlwaysOnSampler_1.AlwaysOnSampler(); + } + this._remoteParentSampled = (_a = config.remoteParentSampled) !== null && _a !== void 0 ? _a : new AlwaysOnSampler_1.AlwaysOnSampler(); + this._remoteParentNotSampled = (_b = config.remoteParentNotSampled) !== null && _b !== void 0 ? _b : new AlwaysOffSampler_1.AlwaysOffSampler(); + this._localParentSampled = (_c = config.localParentSampled) !== null && _c !== void 0 ? _c : new AlwaysOnSampler_1.AlwaysOnSampler(); + this._localParentNotSampled = (_d = config.localParentNotSampled) !== null && _d !== void 0 ? _d : new AlwaysOffSampler_1.AlwaysOffSampler(); + } + shouldSample(context2, traceId, spanName, spanKind, attributes, links) { + const parentContext = api_1.trace.getSpanContext(context2); + if (!parentContext || !(0, api_1.isSpanContextValid)(parentContext)) { + return this._root.shouldSample(context2, traceId, spanName, spanKind, attributes, links); + } + if (parentContext.isRemote) { + if (parentContext.traceFlags & api_1.TraceFlags.SAMPLED) { + return this._remoteParentSampled.shouldSample(context2, traceId, spanName, spanKind, attributes, links); + } + return this._remoteParentNotSampled.shouldSample(context2, traceId, spanName, spanKind, attributes, links); + } + if (parentContext.traceFlags & api_1.TraceFlags.SAMPLED) { + return this._localParentSampled.shouldSample(context2, traceId, spanName, spanKind, attributes, links); + } + return this._localParentNotSampled.shouldSample(context2, traceId, spanName, spanKind, attributes, links); + } + toString() { + return `ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`; + } + }; + exports2.ParentBasedSampler = ParentBasedSampler; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/sampler/TraceIdRatioBasedSampler.js +var require_TraceIdRatioBasedSampler = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/trace/sampler/TraceIdRatioBasedSampler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TraceIdRatioBasedSampler = void 0; + var api_1 = require_src(); + var TraceIdRatioBasedSampler = class { + constructor(_ratio = 0) { + this._ratio = _ratio; + this._ratio = this._normalize(_ratio); + this._upperBound = Math.floor(this._ratio * 4294967295); + } + shouldSample(context2, traceId) { + return { + decision: (0, api_1.isValidTraceId)(traceId) && this._accumulate(traceId) < this._upperBound ? api_1.SamplingDecision.RECORD_AND_SAMPLED : api_1.SamplingDecision.NOT_RECORD + }; + } + toString() { + return `TraceIdRatioBased{${this._ratio}}`; + } + _normalize(ratio) { + if (typeof ratio !== "number" || isNaN(ratio)) + return 0; + return ratio >= 1 ? 1 : ratio <= 0 ? 0 : ratio; + } + _accumulate(traceId) { + let accumulation = 0; + for (let i = 0; i < traceId.length / 8; i++) { + const pos = i * 8; + const part = parseInt(traceId.slice(pos, pos + 8), 16); + accumulation = (accumulation ^ part) >>> 0; + } + return accumulation; + } + }; + exports2.TraceIdRatioBasedSampler = TraceIdRatioBasedSampler; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/lodash.merge.js +var require_lodash_merge = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/lodash.merge.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isPlainObject = void 0; + var objectTag = "[object Object]"; + var nullTag = "[object Null]"; + var undefinedTag = "[object Undefined]"; + var funcProto = Function.prototype; + var funcToString = funcProto.toString; + var objectCtorString = funcToString.call(Object); + var getPrototype = overArg(Object.getPrototypeOf, Object); + var objectProto = Object.prototype; + var hasOwnProperty2 = objectProto.hasOwnProperty; + var symToStringTag = Symbol ? Symbol.toStringTag : void 0; + var nativeObjectToString = objectProto.toString; + function overArg(func2, transform) { + return function(arg) { + return func2(transform(arg)); + }; + } + function isPlainObject2(value) { + if (!isObjectLike(value) || baseGetTag(value) !== objectTag) { + return false; + } + const proto = getPrototype(value); + if (proto === null) { + return true; + } + const Ctor = hasOwnProperty2.call(proto, "constructor") && proto.constructor; + return typeof Ctor == "function" && Ctor instanceof Ctor && funcToString.call(Ctor) === objectCtorString; + } + exports2.isPlainObject = isPlainObject2; + function isObjectLike(value) { + return value != null && typeof value == "object"; + } + function baseGetTag(value) { + if (value == null) { + return value === void 0 ? undefinedTag : nullTag; + } + return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value); + } + function getRawTag(value) { + const isOwn = hasOwnProperty2.call(value, symToStringTag), tag = value[symToStringTag]; + let unmasked = false; + try { + value[symToStringTag] = void 0; + unmasked = true; + } catch (e) { + } + const result = nativeObjectToString.call(value); + if (unmasked) { + if (isOwn) { + value[symToStringTag] = tag; + } else { + delete value[symToStringTag]; + } + } + return result; + } + function objectToString(value) { + return nativeObjectToString.call(value); + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/merge.js +var require_merge3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/merge.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.merge = void 0; + var lodash_merge_1 = require_lodash_merge(); + var MAX_LEVEL = 20; + function merge3(...args3) { + let result = args3.shift(); + const objects = /* @__PURE__ */ new WeakMap(); + while (args3.length > 0) { + result = mergeTwoObjects(result, args3.shift(), 0, objects); + } + return result; + } + exports2.merge = merge3; + function takeValue(value) { + if (isArray2(value)) { + return value.slice(); + } + return value; + } + function mergeTwoObjects(one, two, level = 0, objects) { + let result; + if (level > MAX_LEVEL) { + return void 0; + } + level++; + if (isPrimitive2(one) || isPrimitive2(two) || isFunction2(two)) { + result = takeValue(two); + } else if (isArray2(one)) { + result = one.slice(); + if (isArray2(two)) { + for (let i = 0, j = two.length; i < j; i++) { + result.push(takeValue(two[i])); + } + } else if (isObject3(two)) { + const keys = Object.keys(two); + for (let i = 0, j = keys.length; i < j; i++) { + const key = keys[i]; + result[key] = takeValue(two[key]); + } + } + } else if (isObject3(one)) { + if (isObject3(two)) { + if (!shouldMerge(one, two)) { + return two; + } + result = Object.assign({}, one); + const keys = Object.keys(two); + for (let i = 0, j = keys.length; i < j; i++) { + const key = keys[i]; + const twoValue = two[key]; + if (isPrimitive2(twoValue)) { + if (typeof twoValue === "undefined") { + delete result[key]; + } else { + result[key] = twoValue; + } + } else { + const obj1 = result[key]; + const obj2 = twoValue; + if (wasObjectReferenced(one, key, objects) || wasObjectReferenced(two, key, objects)) { + delete result[key]; + } else { + if (isObject3(obj1) && isObject3(obj2)) { + const arr1 = objects.get(obj1) || []; + const arr2 = objects.get(obj2) || []; + arr1.push({ obj: one, key }); + arr2.push({ obj: two, key }); + objects.set(obj1, arr1); + objects.set(obj2, arr2); + } + result[key] = mergeTwoObjects(result[key], twoValue, level, objects); + } + } + } + } else { + result = two; + } + } + return result; + } + function wasObjectReferenced(obj2, key, objects) { + const arr = objects.get(obj2[key]) || []; + for (let i = 0, j = arr.length; i < j; i++) { + const info2 = arr[i]; + if (info2.key === key && info2.obj === obj2) { + return true; + } + } + return false; + } + function isArray2(value) { + return Array.isArray(value); + } + function isFunction2(value) { + return typeof value === "function"; + } + function isObject3(value) { + return !isPrimitive2(value) && !isArray2(value) && !isFunction2(value) && typeof value === "object"; + } + function isPrimitive2(value) { + return typeof value === "string" || typeof value === "number" || typeof value === "boolean" || typeof value === "undefined" || value instanceof Date || value instanceof RegExp || value === null; + } + function shouldMerge(one, two) { + if (!(0, lodash_merge_1.isPlainObject)(one) || !(0, lodash_merge_1.isPlainObject)(two)) { + return false; + } + return true; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/timeout.js +var require_timeout2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/timeout.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.callWithTimeout = exports2.TimeoutError = void 0; + var TimeoutError2 = class _TimeoutError extends Error { + constructor(message) { + super(message); + Object.setPrototypeOf(this, _TimeoutError.prototype); + } + }; + exports2.TimeoutError = TimeoutError2; + function callWithTimeout(promise, timeout) { + let timeoutHandle; + const timeoutPromise = new Promise(function timeoutFunction(_resolve, reject) { + timeoutHandle = setTimeout(function timeoutHandler() { + reject(new TimeoutError2("Operation timed out.")); + }, timeout); + }); + return Promise.race([promise, timeoutPromise]).then((result) => { + clearTimeout(timeoutHandle); + return result; + }, (reason) => { + clearTimeout(timeoutHandle); + throw reason; + }); + } + exports2.callWithTimeout = callWithTimeout; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/url.js +var require_url2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/url.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isUrlIgnored = exports2.urlMatches = void 0; + function urlMatches(url2, urlToMatch) { + if (typeof urlToMatch === "string") { + return url2 === urlToMatch; + } else { + return !!url2.match(urlToMatch); + } + } + exports2.urlMatches = urlMatches; + function isUrlIgnored(url2, ignoredUrls) { + if (!ignoredUrls) { + return false; + } + for (const ignoreUrl of ignoredUrls) { + if (urlMatches(url2, ignoreUrl)) { + return true; + } + } + return false; + } + exports2.isUrlIgnored = isUrlIgnored; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/wrap.js +var require_wrap = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/wrap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isWrapped = void 0; + function isWrapped(func2) { + return typeof func2 === "function" && typeof func2.__original === "function" && typeof func2.__unwrap === "function" && func2.__wrapped === true; + } + exports2.isWrapped = isWrapped; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/promise.js +var require_promise2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/promise.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Deferred = void 0; + var Deferred = class { + constructor() { + this._promise = new Promise((resolve8, reject) => { + this._resolve = resolve8; + this._reject = reject; + }); + } + get promise() { + return this._promise; + } + resolve(val) { + this._resolve(val); + } + reject(err2) { + this._reject(err2); + } + }; + exports2.Deferred = Deferred; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/callback.js +var require_callback2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/utils/callback.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BindOnceFuture = void 0; + var promise_1 = require_promise2(); + var BindOnceFuture = class { + constructor(_callback, _that) { + this._callback = _callback; + this._that = _that; + this._isCalled = false; + this._deferred = new promise_1.Deferred(); + } + get isCalled() { + return this._isCalled; + } + get promise() { + return this._deferred.promise; + } + call(...args3) { + if (!this._isCalled) { + this._isCalled = true; + try { + Promise.resolve(this._callback.call(this._that, ...args3)).then((val) => this._deferred.resolve(val), (err2) => this._deferred.reject(err2)); + } catch (err2) { + this._deferred.reject(err2); + } + } + return this._deferred.promise; + } + }; + exports2.BindOnceFuture = BindOnceFuture; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/internal/exporter.js +var require_exporter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/internal/exporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2._export = void 0; + var api_1 = require_src(); + var suppress_tracing_1 = require_suppress_tracing(); + function _export(exporter, arg) { + return new Promise((resolve8) => { + api_1.context.with((0, suppress_tracing_1.suppressTracing)(api_1.context.active()), () => { + exporter.export(arg, (result) => { + resolve8(result); + }); + }); + }); + } + exports2._export = _export; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/index.js +var require_src5 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+core@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/core/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.internal = exports2.baggageUtils = void 0; + __exportStar(require_W3CBaggagePropagator(), exports2); + __exportStar(require_anchored_clock(), exports2); + __exportStar(require_attributes(), exports2); + __exportStar(require_global_error_handler(), exports2); + __exportStar(require_logging_error_handler(), exports2); + __exportStar(require_time2(), exports2); + __exportStar(require_types3(), exports2); + __exportStar(require_ExportResult(), exports2); + exports2.baggageUtils = require_utils7(); + __exportStar(require_platform2(), exports2); + __exportStar(require_composite(), exports2); + __exportStar(require_W3CTraceContextPropagator(), exports2); + __exportStar(require_IdGenerator(), exports2); + __exportStar(require_rpc_metadata(), exports2); + __exportStar(require_AlwaysOffSampler(), exports2); + __exportStar(require_AlwaysOnSampler(), exports2); + __exportStar(require_ParentBasedSampler(), exports2); + __exportStar(require_TraceIdRatioBasedSampler(), exports2); + __exportStar(require_suppress_tracing(), exports2); + __exportStar(require_TraceState(), exports2); + __exportStar(require_environment(), exports2); + __exportStar(require_merge3(), exports2); + __exportStar(require_sampling(), exports2); + __exportStar(require_timeout2(), exports2); + __exportStar(require_url2(), exports2); + __exportStar(require_wrap(), exports2); + __exportStar(require_callback2(), exports2); + __exportStar(require_version3(), exports2); + var exporter_1 = require_exporter(); + exports2.internal = { + _export: exporter_1._export + }; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/util.js +var require_util4 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseRetryAfterToMills = exports2.isExportRetryable = exports2.invalidTimeout = exports2.configureExporterTimeout = exports2.appendRootPathToUrlIfNeeded = exports2.appendResourcePathToUrl = exports2.parseHeaders = exports2.DEFAULT_EXPORT_BACKOFF_MULTIPLIER = exports2.DEFAULT_EXPORT_MAX_BACKOFF = exports2.DEFAULT_EXPORT_INITIAL_BACKOFF = exports2.DEFAULT_EXPORT_MAX_ATTEMPTS = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var DEFAULT_TRACE_TIMEOUT = 1e4; + exports2.DEFAULT_EXPORT_MAX_ATTEMPTS = 5; + exports2.DEFAULT_EXPORT_INITIAL_BACKOFF = 1e3; + exports2.DEFAULT_EXPORT_MAX_BACKOFF = 5e3; + exports2.DEFAULT_EXPORT_BACKOFF_MULTIPLIER = 1.5; + function parseHeaders(partialHeaders = {}) { + const headers = {}; + Object.entries(partialHeaders).forEach(([key, value]) => { + if (typeof value !== "undefined") { + headers[key] = String(value); + } else { + api_1.diag.warn(`Header "${key}" has wrong value and will be ignored`); + } + }); + return headers; + } + exports2.parseHeaders = parseHeaders; + function appendResourcePathToUrl(url2, path30) { + if (!url2.endsWith("/")) { + url2 = url2 + "/"; + } + return url2 + path30; + } + exports2.appendResourcePathToUrl = appendResourcePathToUrl; + function appendRootPathToUrlIfNeeded(url2) { + try { + const parsedUrl = new URL(url2); + if (parsedUrl.pathname === "") { + parsedUrl.pathname = parsedUrl.pathname + "/"; + } + return parsedUrl.toString(); + } catch (_a) { + api_1.diag.warn(`Could not parse export URL: '${url2}'`); + return url2; + } + } + exports2.appendRootPathToUrlIfNeeded = appendRootPathToUrlIfNeeded; + function configureExporterTimeout(timeoutMillis) { + if (typeof timeoutMillis === "number") { + if (timeoutMillis <= 0) { + return invalidTimeout(timeoutMillis, DEFAULT_TRACE_TIMEOUT); + } + return timeoutMillis; + } else { + return getExporterTimeoutFromEnv(); + } + } + exports2.configureExporterTimeout = configureExporterTimeout; + function getExporterTimeoutFromEnv() { + var _a; + const definedTimeout = Number((_a = (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_TIMEOUT) !== null && _a !== void 0 ? _a : (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TIMEOUT); + if (definedTimeout <= 0) { + return invalidTimeout(definedTimeout, DEFAULT_TRACE_TIMEOUT); + } else { + return definedTimeout; + } + } + function invalidTimeout(timeout, defaultTimeout) { + api_1.diag.warn("Timeout must be greater than 0", timeout); + return defaultTimeout; + } + exports2.invalidTimeout = invalidTimeout; + function isExportRetryable(statusCode) { + const retryCodes = [429, 502, 503, 504]; + return retryCodes.includes(statusCode); + } + exports2.isExportRetryable = isExportRetryable; + function parseRetryAfterToMills(retryAfter) { + if (retryAfter == null) { + return -1; + } + const seconds = Number.parseInt(retryAfter, 10); + if (Number.isInteger(seconds)) { + return seconds > 0 ? seconds * 1e3 : -1; + } + const delay = new Date(retryAfter).getTime() - Date.now(); + if (delay >= 0) { + return delay; + } + return 0; + } + exports2.parseRetryAfterToMills = parseRetryAfterToMills; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/OTLPExporterBase.js +var require_OTLPExporterBase = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/OTLPExporterBase.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPExporterBase = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var util_1 = require_util4(); + var OTLPExporterBase = class { + /** + * @param config + */ + constructor(config = {}) { + this._sendingPromises = []; + this.url = this.getDefaultUrl(config); + if (typeof config.hostname === "string") { + this.hostname = config.hostname; + } + this.shutdown = this.shutdown.bind(this); + this._shutdownOnce = new core_1.BindOnceFuture(this._shutdown, this); + this._concurrencyLimit = typeof config.concurrencyLimit === "number" ? config.concurrencyLimit : Infinity; + this.timeoutMillis = (0, util_1.configureExporterTimeout)(config.timeoutMillis); + this.onInit(config); + } + /** + * Export items. + * @param items + * @param resultCallback + */ + export(items, resultCallback) { + if (this._shutdownOnce.isCalled) { + resultCallback({ + code: core_1.ExportResultCode.FAILED, + error: new Error("Exporter has been shutdown") + }); + return; + } + if (this._sendingPromises.length >= this._concurrencyLimit) { + resultCallback({ + code: core_1.ExportResultCode.FAILED, + error: new Error("Concurrent export limit reached") + }); + return; + } + this._export(items).then(() => { + resultCallback({ code: core_1.ExportResultCode.SUCCESS }); + }).catch((error) => { + resultCallback({ code: core_1.ExportResultCode.FAILED, error }); + }); + } + _export(items) { + return new Promise((resolve8, reject) => { + try { + api_1.diag.debug("items to be sent", items); + this.send(items, resolve8, reject); + } catch (e) { + reject(e); + } + }); + } + /** + * Shutdown the exporter. + */ + shutdown() { + return this._shutdownOnce.call(); + } + /** + * Exports any pending spans in the exporter + */ + forceFlush() { + return Promise.all(this._sendingPromises).then(() => { + }); + } + /** + * Called by _shutdownOnce with BindOnceFuture + */ + _shutdown() { + api_1.diag.debug("shutdown started"); + this.onShutdown(); + return this.forceFlush(); + } + }; + exports2.OTLPExporterBase = OTLPExporterBase; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/node/types.js +var require_types4 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/node/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CompressionAlgorithm = void 0; + var CompressionAlgorithm; + (function(CompressionAlgorithm2) { + CompressionAlgorithm2["NONE"] = "none"; + CompressionAlgorithm2["GZIP"] = "gzip"; + })(CompressionAlgorithm = exports2.CompressionAlgorithm || (exports2.CompressionAlgorithm = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/types.js +var require_types5 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPExporterError = void 0; + var OTLPExporterError = class extends Error { + constructor(message, code, data) { + super(message); + this.name = "OTLPExporterError"; + this.data = data; + this.code = code; + } + }; + exports2.OTLPExporterError = OTLPExporterError; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/node/util.js +var require_util5 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/node/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.configureCompression = exports2.createHttpAgent = exports2.sendWithHttp = void 0; + var url2 = require("url"); + var http4 = require("http"); + var https4 = require("https"); + var zlib2 = require("zlib"); + var stream_1 = require("stream"); + var api_1 = require_src(); + var types_1 = require_types4(); + var core_1 = require_src5(); + var types_2 = require_types5(); + var util_1 = require_util4(); + function sendWithHttp(collector, data, contentType, onSuccess, onError) { + const exporterTimeout = collector.timeoutMillis; + const parsedUrl = new url2.URL(collector.url); + const nodeVersion = Number(process.versions.node.split(".")[0]); + let retryTimer; + let req; + let reqIsDestroyed = false; + const exporterTimer = setTimeout(() => { + clearTimeout(retryTimer); + reqIsDestroyed = true; + if (req.destroyed) { + const err2 = new types_2.OTLPExporterError("Request Timeout"); + onError(err2); + } else { + nodeVersion >= 14 ? req.destroy() : req.abort(); + } + }, exporterTimeout); + const options2 = { + hostname: parsedUrl.hostname, + port: parsedUrl.port, + path: parsedUrl.pathname, + method: "POST", + headers: Object.assign({ "Content-Type": contentType }, collector.headers), + agent: collector.agent + }; + const request = parsedUrl.protocol === "http:" ? http4.request : https4.request; + const sendWithRetry = (retries = util_1.DEFAULT_EXPORT_MAX_ATTEMPTS, minDelay = util_1.DEFAULT_EXPORT_INITIAL_BACKOFF) => { + req = request(options2, (res) => { + let responseData = ""; + res.on("data", (chunk) => responseData += chunk); + res.on("aborted", () => { + if (reqIsDestroyed) { + const err2 = new types_2.OTLPExporterError("Request Timeout"); + onError(err2); + } + }); + res.on("end", () => { + if (reqIsDestroyed === false) { + if (res.statusCode && res.statusCode < 299) { + api_1.diag.debug(`statusCode: ${res.statusCode}`, responseData); + onSuccess(); + clearTimeout(exporterTimer); + clearTimeout(retryTimer); + } else if (res.statusCode && (0, util_1.isExportRetryable)(res.statusCode) && retries > 0) { + let retryTime; + minDelay = util_1.DEFAULT_EXPORT_BACKOFF_MULTIPLIER * minDelay; + if (res.headers["retry-after"]) { + retryTime = (0, util_1.parseRetryAfterToMills)(res.headers["retry-after"]); + } else { + retryTime = Math.round(Math.random() * (util_1.DEFAULT_EXPORT_MAX_BACKOFF - minDelay) + minDelay); + } + retryTimer = setTimeout(() => { + sendWithRetry(retries - 1, minDelay); + }, retryTime); + } else { + const error = new types_2.OTLPExporterError(res.statusMessage, res.statusCode, responseData); + onError(error); + clearTimeout(exporterTimer); + clearTimeout(retryTimer); + } + } + }); + }); + req.on("error", (error) => { + if (reqIsDestroyed) { + const err2 = new types_2.OTLPExporterError("Request Timeout", error.code); + onError(err2); + } else { + onError(error); + } + clearTimeout(exporterTimer); + clearTimeout(retryTimer); + }); + req.on("abort", () => { + if (reqIsDestroyed) { + const err2 = new types_2.OTLPExporterError("Request Timeout"); + onError(err2); + } + clearTimeout(exporterTimer); + clearTimeout(retryTimer); + }); + switch (collector.compression) { + case types_1.CompressionAlgorithm.GZIP: { + req.setHeader("Content-Encoding", "gzip"); + const dataStream = readableFromBuffer(data); + dataStream.on("error", onError).pipe(zlib2.createGzip()).on("error", onError).pipe(req); + break; + } + default: + req.end(data); + break; + } + }; + sendWithRetry(); + } + exports2.sendWithHttp = sendWithHttp; + function readableFromBuffer(buff) { + const readable = new stream_1.Readable(); + readable.push(buff); + readable.push(null); + return readable; + } + function createHttpAgent(config) { + if (config.httpAgentOptions && config.keepAlive === false) { + api_1.diag.warn("httpAgentOptions is used only when keepAlive is true"); + return void 0; + } + if (config.keepAlive === false || !config.url) + return void 0; + try { + const parsedUrl = new url2.URL(config.url); + const Agent2 = parsedUrl.protocol === "http:" ? http4.Agent : https4.Agent; + return new Agent2(Object.assign({ keepAlive: true }, config.httpAgentOptions)); + } catch (err2) { + api_1.diag.error(`collector exporter failed to create http agent. err: ${err2.message}`); + return void 0; + } + } + exports2.createHttpAgent = createHttpAgent; + function configureCompression(compression) { + if (compression) { + return compression; + } else { + const definedCompression = (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_COMPRESSION || (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_COMPRESSION; + return definedCompression === types_1.CompressionAlgorithm.GZIP ? types_1.CompressionAlgorithm.GZIP : types_1.CompressionAlgorithm.NONE; + } + } + exports2.configureCompression = configureCompression; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/node/OTLPExporterNodeBase.js +var require_OTLPExporterNodeBase = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/node/OTLPExporterNodeBase.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPExporterNodeBase = void 0; + var OTLPExporterBase_1 = require_OTLPExporterBase(); + var util_1 = require_util4(); + var util_2 = require_util5(); + var api_1 = require_src(); + var core_1 = require_src5(); + var OTLPExporterNodeBase = class extends OTLPExporterBase_1.OTLPExporterBase { + constructor(config = {}) { + super(config); + this.DEFAULT_HEADERS = {}; + if (config.metadata) { + api_1.diag.warn("Metadata cannot be set when using http"); + } + this.headers = Object.assign(this.DEFAULT_HEADERS, (0, util_1.parseHeaders)(config.headers), core_1.baggageUtils.parseKeyPairsIntoRecord((0, core_1.getEnv)().OTEL_EXPORTER_OTLP_HEADERS)); + this.agent = (0, util_2.createHttpAgent)(config); + this.compression = (0, util_2.configureCompression)(config.compression); + } + onInit(_config) { + } + send(objects, onSuccess, onError) { + if (this._shutdownOnce.isCalled) { + api_1.diag.debug("Shutdown already started. Cannot send objects"); + return; + } + const serviceRequest = this.convert(objects); + const promise = new Promise((resolve8, reject) => { + (0, util_2.sendWithHttp)(this, JSON.stringify(serviceRequest), "application/json", resolve8, reject); + }).then(onSuccess, onError); + this._sendingPromises.push(promise); + const popPromise = () => { + const index = this._sendingPromises.indexOf(promise); + this._sendingPromises.splice(index, 1); + }; + promise.then(popPromise, popPromise); + } + onShutdown() { + } + }; + exports2.OTLPExporterNodeBase = OTLPExporterNodeBase; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/node/index.js +var require_node6 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/node/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CompressionAlgorithm = exports2.configureCompression = exports2.createHttpAgent = exports2.sendWithHttp = exports2.OTLPExporterNodeBase = void 0; + var OTLPExporterNodeBase_1 = require_OTLPExporterNodeBase(); + Object.defineProperty(exports2, "OTLPExporterNodeBase", { enumerable: true, get: function() { + return OTLPExporterNodeBase_1.OTLPExporterNodeBase; + } }); + var util_1 = require_util5(); + Object.defineProperty(exports2, "sendWithHttp", { enumerable: true, get: function() { + return util_1.sendWithHttp; + } }); + Object.defineProperty(exports2, "createHttpAgent", { enumerable: true, get: function() { + return util_1.createHttpAgent; + } }); + Object.defineProperty(exports2, "configureCompression", { enumerable: true, get: function() { + return util_1.configureCompression; + } }); + var types_1 = require_types4(); + Object.defineProperty(exports2, "CompressionAlgorithm", { enumerable: true, get: function() { + return types_1.CompressionAlgorithm; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/browser/util.js +var require_util6 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/browser/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.sendWithXhr = exports2.sendWithBeacon = void 0; + var api_1 = require_src(); + var types_1 = require_types5(); + var util_1 = require_util4(); + function sendWithBeacon(body2, url2, blobPropertyBag, onSuccess, onError) { + if (navigator.sendBeacon(url2, new Blob([body2], blobPropertyBag))) { + api_1.diag.debug("sendBeacon - can send", body2); + onSuccess(); + } else { + const error = new types_1.OTLPExporterError(`sendBeacon - cannot send ${body2}`); + onError(error); + } + } + exports2.sendWithBeacon = sendWithBeacon; + function sendWithXhr(body2, url2, headers, exporterTimeout, onSuccess, onError) { + let retryTimer; + let xhr; + let reqIsDestroyed = false; + const exporterTimer = setTimeout(() => { + clearTimeout(retryTimer); + reqIsDestroyed = true; + if (xhr.readyState === XMLHttpRequest.DONE) { + const err2 = new types_1.OTLPExporterError("Request Timeout"); + onError(err2); + } else { + xhr.abort(); + } + }, exporterTimeout); + const sendWithRetry = (retries = util_1.DEFAULT_EXPORT_MAX_ATTEMPTS, minDelay = util_1.DEFAULT_EXPORT_INITIAL_BACKOFF) => { + xhr = new XMLHttpRequest(); + xhr.open("POST", url2); + const defaultHeaders = { + Accept: "application/json", + "Content-Type": "application/json" + }; + Object.entries(Object.assign(Object.assign({}, defaultHeaders), headers)).forEach(([k, v]) => { + xhr.setRequestHeader(k, v); + }); + xhr.send(body2); + xhr.onreadystatechange = () => { + if (xhr.readyState === XMLHttpRequest.DONE && reqIsDestroyed === false) { + if (xhr.status >= 200 && xhr.status <= 299) { + api_1.diag.debug("xhr success", body2); + onSuccess(); + clearTimeout(exporterTimer); + clearTimeout(retryTimer); + } else if (xhr.status && (0, util_1.isExportRetryable)(xhr.status) && retries > 0) { + let retryTime; + minDelay = util_1.DEFAULT_EXPORT_BACKOFF_MULTIPLIER * minDelay; + if (xhr.getResponseHeader("Retry-After")) { + retryTime = (0, util_1.parseRetryAfterToMills)(xhr.getResponseHeader("Retry-After")); + } else { + retryTime = Math.round(Math.random() * (util_1.DEFAULT_EXPORT_MAX_BACKOFF - minDelay) + minDelay); + } + retryTimer = setTimeout(() => { + sendWithRetry(retries - 1, minDelay); + }, retryTime); + } else { + const error = new types_1.OTLPExporterError(`Failed to export with XHR (status: ${xhr.status})`, xhr.status); + onError(error); + clearTimeout(exporterTimer); + clearTimeout(retryTimer); + } + } + }; + xhr.onabort = () => { + if (reqIsDestroyed) { + const err2 = new types_1.OTLPExporterError("Request Timeout"); + onError(err2); + } + clearTimeout(exporterTimer); + clearTimeout(retryTimer); + }; + xhr.onerror = () => { + if (reqIsDestroyed) { + const err2 = new types_1.OTLPExporterError("Request Timeout"); + onError(err2); + } + clearTimeout(exporterTimer); + clearTimeout(retryTimer); + }; + }; + sendWithRetry(); + } + exports2.sendWithXhr = sendWithXhr; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/browser/OTLPExporterBrowserBase.js +var require_OTLPExporterBrowserBase = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/browser/OTLPExporterBrowserBase.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPExporterBrowserBase = void 0; + var OTLPExporterBase_1 = require_OTLPExporterBase(); + var util_1 = require_util4(); + var util_2 = require_util6(); + var api_1 = require_src(); + var core_1 = require_src5(); + var OTLPExporterBrowserBase = class extends OTLPExporterBase_1.OTLPExporterBase { + /** + * @param config + */ + constructor(config = {}) { + super(config); + this._useXHR = false; + this._useXHR = !!config.headers || typeof navigator.sendBeacon !== "function"; + if (this._useXHR) { + this._headers = Object.assign({}, (0, util_1.parseHeaders)(config.headers), core_1.baggageUtils.parseKeyPairsIntoRecord((0, core_1.getEnv)().OTEL_EXPORTER_OTLP_HEADERS)); + } else { + this._headers = {}; + } + } + onInit() { + core_1._globalThis.addEventListener("unload", this.shutdown); + } + onShutdown() { + core_1._globalThis.removeEventListener("unload", this.shutdown); + } + send(items, onSuccess, onError) { + if (this._shutdownOnce.isCalled) { + api_1.diag.debug("Shutdown already started. Cannot send objects"); + return; + } + const serviceRequest = this.convert(items); + const body2 = JSON.stringify(serviceRequest); + const promise = new Promise((resolve8, reject) => { + if (this._useXHR) { + (0, util_2.sendWithXhr)(body2, this.url, this._headers, this.timeoutMillis, resolve8, reject); + } else { + (0, util_2.sendWithBeacon)(body2, this.url, { type: "application/json" }, resolve8, reject); + } + }).then(onSuccess, onError); + this._sendingPromises.push(promise); + const popPromise = () => { + const index = this._sendingPromises.indexOf(promise); + this._sendingPromises.splice(index, 1); + }; + promise.then(popPromise, popPromise); + } + }; + exports2.OTLPExporterBrowserBase = OTLPExporterBrowserBase; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/browser/index.js +var require_browser3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/browser/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.sendWithXhr = exports2.OTLPExporterBrowserBase = void 0; + var OTLPExporterBrowserBase_1 = require_OTLPExporterBrowserBase(); + Object.defineProperty(exports2, "OTLPExporterBrowserBase", { enumerable: true, get: function() { + return OTLPExporterBrowserBase_1.OTLPExporterBrowserBase; + } }); + var util_1 = require_util6(); + Object.defineProperty(exports2, "sendWithXhr", { enumerable: true, get: function() { + return util_1.sendWithXhr; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/index.js +var require_platform3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/platform/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.sendWithXhr = exports2.OTLPExporterBrowserBase = exports2.CompressionAlgorithm = exports2.configureCompression = exports2.createHttpAgent = exports2.sendWithHttp = exports2.OTLPExporterNodeBase = void 0; + var node_1 = require_node6(); + Object.defineProperty(exports2, "OTLPExporterNodeBase", { enumerable: true, get: function() { + return node_1.OTLPExporterNodeBase; + } }); + Object.defineProperty(exports2, "sendWithHttp", { enumerable: true, get: function() { + return node_1.sendWithHttp; + } }); + Object.defineProperty(exports2, "createHttpAgent", { enumerable: true, get: function() { + return node_1.createHttpAgent; + } }); + Object.defineProperty(exports2, "configureCompression", { enumerable: true, get: function() { + return node_1.configureCompression; + } }); + Object.defineProperty(exports2, "CompressionAlgorithm", { enumerable: true, get: function() { + return node_1.CompressionAlgorithm; + } }); + var browser_1 = require_browser3(); + Object.defineProperty(exports2, "OTLPExporterBrowserBase", { enumerable: true, get: function() { + return browser_1.OTLPExporterBrowserBase; + } }); + Object.defineProperty(exports2, "sendWithXhr", { enumerable: true, get: function() { + return browser_1.sendWithXhr; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/index.js +var require_src6 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-exporter-base/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.invalidTimeout = exports2.configureExporterTimeout = exports2.appendRootPathToUrlIfNeeded = exports2.appendResourcePathToUrl = exports2.parseHeaders = exports2.OTLPExporterError = exports2.OTLPExporterBase = void 0; + __exportStar(require_platform3(), exports2); + var OTLPExporterBase_1 = require_OTLPExporterBase(); + Object.defineProperty(exports2, "OTLPExporterBase", { enumerable: true, get: function() { + return OTLPExporterBase_1.OTLPExporterBase; + } }); + var types_1 = require_types5(); + Object.defineProperty(exports2, "OTLPExporterError", { enumerable: true, get: function() { + return types_1.OTLPExporterError; + } }); + var util_1 = require_util4(); + Object.defineProperty(exports2, "parseHeaders", { enumerable: true, get: function() { + return util_1.parseHeaders; + } }); + Object.defineProperty(exports2, "appendResourcePathToUrl", { enumerable: true, get: function() { + return util_1.appendResourcePathToUrl; + } }); + Object.defineProperty(exports2, "appendRootPathToUrlIfNeeded", { enumerable: true, get: function() { + return util_1.appendRootPathToUrlIfNeeded; + } }); + Object.defineProperty(exports2, "configureExporterTimeout", { enumerable: true, get: function() { + return util_1.configureExporterTimeout; + } }); + Object.defineProperty(exports2, "invalidTimeout", { enumerable: true, get: function() { + return util_1.invalidTimeout; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/common/types.js +var require_types6 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/common/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/common/index.js +var require_common3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/common/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getOtlpEncoder = exports2.encodeAsString = exports2.encodeAsLongBits = exports2.toLongBits = exports2.hrTimeToNanos = void 0; + var core_1 = require_src5(); + var NANOSECONDS = BigInt(1e9); + function hrTimeToNanos(hrTime) { + return BigInt(hrTime[0]) * NANOSECONDS + BigInt(hrTime[1]); + } + exports2.hrTimeToNanos = hrTimeToNanos; + function toLongBits(value) { + const low = Number(BigInt.asUintN(32, value)); + const high = Number(BigInt.asUintN(32, value >> BigInt(32))); + return { low, high }; + } + exports2.toLongBits = toLongBits; + function encodeAsLongBits(hrTime) { + const nanos = hrTimeToNanos(hrTime); + return toLongBits(nanos); + } + exports2.encodeAsLongBits = encodeAsLongBits; + function encodeAsString(hrTime) { + const nanos = hrTimeToNanos(hrTime); + return nanos.toString(); + } + exports2.encodeAsString = encodeAsString; + var encodeTimestamp = typeof BigInt !== "undefined" ? encodeAsString : core_1.hrTimeToNanoseconds; + function identity2(value) { + return value; + } + function optionalHexToBase64(str) { + if (str === void 0) + return void 0; + return (0, core_1.hexToBase64)(str); + } + var DEFAULT_ENCODER = { + encodeHrTime: encodeAsLongBits, + encodeSpanContext: core_1.hexToBase64, + encodeOptionalSpanContext: optionalHexToBase64 + }; + function getOtlpEncoder(options2) { + var _a, _b; + if (options2 === void 0) { + return DEFAULT_ENCODER; + } + const useLongBits = (_a = options2.useLongBits) !== null && _a !== void 0 ? _a : true; + const useHex = (_b = options2.useHex) !== null && _b !== void 0 ? _b : false; + return { + encodeHrTime: useLongBits ? encodeAsLongBits : encodeTimestamp, + encodeSpanContext: useHex ? identity2 : core_1.hexToBase64, + encodeOptionalSpanContext: useHex ? identity2 : optionalHexToBase64 + }; + } + exports2.getOtlpEncoder = getOtlpEncoder; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/metrics/types.js +var require_types7 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/metrics/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/resource/types.js +var require_types8 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/resource/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/trace/types.js +var require_types9 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/trace/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ESpanKind = void 0; + var ESpanKind; + (function(ESpanKind2) { + ESpanKind2[ESpanKind2["SPAN_KIND_UNSPECIFIED"] = 0] = "SPAN_KIND_UNSPECIFIED"; + ESpanKind2[ESpanKind2["SPAN_KIND_INTERNAL"] = 1] = "SPAN_KIND_INTERNAL"; + ESpanKind2[ESpanKind2["SPAN_KIND_SERVER"] = 2] = "SPAN_KIND_SERVER"; + ESpanKind2[ESpanKind2["SPAN_KIND_CLIENT"] = 3] = "SPAN_KIND_CLIENT"; + ESpanKind2[ESpanKind2["SPAN_KIND_PRODUCER"] = 4] = "SPAN_KIND_PRODUCER"; + ESpanKind2[ESpanKind2["SPAN_KIND_CONSUMER"] = 5] = "SPAN_KIND_CONSUMER"; + })(ESpanKind = exports2.ESpanKind || (exports2.ESpanKind = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/logs/types.js +var require_types10 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/logs/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/common/internal.js +var require_internal = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/common/internal.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toAnyValue = exports2.toKeyValue = exports2.toAttributes = void 0; + function toAttributes(attributes) { + return Object.keys(attributes).map((key) => toKeyValue(key, attributes[key])); + } + exports2.toAttributes = toAttributes; + function toKeyValue(key, value) { + return { + key, + value: toAnyValue(value) + }; + } + exports2.toKeyValue = toKeyValue; + function toAnyValue(value) { + const t = typeof value; + if (t === "string") + return { stringValue: value }; + if (t === "number") { + if (!Number.isInteger(value)) + return { doubleValue: value }; + return { intValue: value }; + } + if (t === "boolean") + return { boolValue: value }; + if (value instanceof Uint8Array) + return { bytesValue: value }; + if (Array.isArray(value)) + return { arrayValue: { values: value.map(toAnyValue) } }; + if (t === "object" && value != null) + return { + kvlistValue: { + values: Object.entries(value).map(([k, v]) => toKeyValue(k, v)) + } + }; + return {}; + } + exports2.toAnyValue = toAnyValue; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/trace/internal.js +var require_internal2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/trace/internal.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toOtlpSpanEvent = exports2.toOtlpLink = exports2.sdkSpanToOtlpSpan = void 0; + var internal_1 = require_internal(); + function sdkSpanToOtlpSpan(span, encoder) { + var _a; + const ctx = span.spanContext(); + const status = span.status; + return { + traceId: encoder.encodeSpanContext(ctx.traceId), + spanId: encoder.encodeSpanContext(ctx.spanId), + parentSpanId: encoder.encodeOptionalSpanContext(span.parentSpanId), + traceState: (_a = ctx.traceState) === null || _a === void 0 ? void 0 : _a.serialize(), + name: span.name, + // Span kind is offset by 1 because the API does not define a value for unset + kind: span.kind == null ? 0 : span.kind + 1, + startTimeUnixNano: encoder.encodeHrTime(span.startTime), + endTimeUnixNano: encoder.encodeHrTime(span.endTime), + attributes: (0, internal_1.toAttributes)(span.attributes), + droppedAttributesCount: span.droppedAttributesCount, + events: span.events.map((event) => toOtlpSpanEvent(event, encoder)), + droppedEventsCount: span.droppedEventsCount, + status: { + // API and proto enums share the same values + code: status.code, + message: status.message + }, + links: span.links.map((link) => toOtlpLink(link, encoder)), + droppedLinksCount: span.droppedLinksCount + }; + } + exports2.sdkSpanToOtlpSpan = sdkSpanToOtlpSpan; + function toOtlpLink(link, encoder) { + var _a; + return { + attributes: link.attributes ? (0, internal_1.toAttributes)(link.attributes) : [], + spanId: encoder.encodeSpanContext(link.context.spanId), + traceId: encoder.encodeSpanContext(link.context.traceId), + traceState: (_a = link.context.traceState) === null || _a === void 0 ? void 0 : _a.serialize(), + droppedAttributesCount: link.droppedAttributesCount || 0 + }; + } + exports2.toOtlpLink = toOtlpLink; + function toOtlpSpanEvent(timedEvent, encoder) { + return { + attributes: timedEvent.attributes ? (0, internal_1.toAttributes)(timedEvent.attributes) : [], + name: timedEvent.name, + timeUnixNano: encoder.encodeHrTime(timedEvent.time), + droppedAttributesCount: timedEvent.droppedAttributesCount || 0 + }; + } + exports2.toOtlpSpanEvent = toOtlpSpanEvent; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/trace/index.js +var require_trace4 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/trace/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createExportTraceServiceRequest = void 0; + var internal_1 = require_internal(); + var internal_2 = require_internal2(); + var common_1 = require_common3(); + function createExportTraceServiceRequest(spans, options2) { + const encoder = (0, common_1.getOtlpEncoder)(options2); + return { + resourceSpans: spanRecordsToResourceSpans(spans, encoder) + }; + } + exports2.createExportTraceServiceRequest = createExportTraceServiceRequest; + function createResourceMap(readableSpans) { + const resourceMap = /* @__PURE__ */ new Map(); + for (const record of readableSpans) { + let ilmMap = resourceMap.get(record.resource); + if (!ilmMap) { + ilmMap = /* @__PURE__ */ new Map(); + resourceMap.set(record.resource, ilmMap); + } + const instrumentationLibraryKey = `${record.instrumentationLibrary.name}@${record.instrumentationLibrary.version || ""}:${record.instrumentationLibrary.schemaUrl || ""}`; + let records = ilmMap.get(instrumentationLibraryKey); + if (!records) { + records = []; + ilmMap.set(instrumentationLibraryKey, records); + } + records.push(record); + } + return resourceMap; + } + function spanRecordsToResourceSpans(readableSpans, encoder) { + const resourceMap = createResourceMap(readableSpans); + const out2 = []; + const entryIterator = resourceMap.entries(); + let entry = entryIterator.next(); + while (!entry.done) { + const [resource, ilmMap] = entry.value; + const scopeResourceSpans = []; + const ilmIterator = ilmMap.values(); + let ilmEntry = ilmIterator.next(); + while (!ilmEntry.done) { + const scopeSpans = ilmEntry.value; + if (scopeSpans.length > 0) { + const { name, version: version4, schemaUrl } = scopeSpans[0].instrumentationLibrary; + const spans = scopeSpans.map((readableSpan) => (0, internal_2.sdkSpanToOtlpSpan)(readableSpan, encoder)); + scopeResourceSpans.push({ + scope: { name, version: version4 }, + spans, + schemaUrl + }); + } + ilmEntry = ilmIterator.next(); + } + const transformedSpans = { + resource: { + attributes: (0, internal_1.toAttributes)(resource.attributes), + droppedAttributesCount: 0 + }, + scopeSpans: scopeResourceSpans, + schemaUrl: void 0 + }; + out2.push(transformedSpans); + entry = entryIterator.next(); + } + return out2; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/AggregationTemporality.js +var require_AggregationTemporality = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/AggregationTemporality.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AggregationTemporality = void 0; + var AggregationTemporality; + (function(AggregationTemporality2) { + AggregationTemporality2[AggregationTemporality2["DELTA"] = 0] = "DELTA"; + AggregationTemporality2[AggregationTemporality2["CUMULATIVE"] = 1] = "CUMULATIVE"; + })(AggregationTemporality = exports2.AggregationTemporality || (exports2.AggregationTemporality = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricData.js +var require_MetricData = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricData.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DataPointType = void 0; + var DataPointType; + (function(DataPointType2) { + DataPointType2[DataPointType2["HISTOGRAM"] = 0] = "HISTOGRAM"; + DataPointType2[DataPointType2["EXPONENTIAL_HISTOGRAM"] = 1] = "EXPONENTIAL_HISTOGRAM"; + DataPointType2[DataPointType2["GAUGE"] = 2] = "GAUGE"; + DataPointType2[DataPointType2["SUM"] = 3] = "SUM"; + })(DataPointType = exports2.DataPointType || (exports2.DataPointType = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/utils.js +var require_utils8 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.equalsCaseInsensitive = exports2.binarySearchLB = exports2.setEquals = exports2.FlatMap = exports2.isPromiseAllSettledRejectionResult = exports2.PromiseAllSettled = exports2.callWithTimeout = exports2.TimeoutError = exports2.instrumentationScopeId = exports2.hashAttributes = exports2.isNotNullish = void 0; + function isNotNullish(item) { + return item !== void 0 && item !== null; + } + exports2.isNotNullish = isNotNullish; + function hashAttributes(attributes) { + let keys = Object.keys(attributes); + if (keys.length === 0) + return ""; + keys = keys.sort(); + return JSON.stringify(keys.map((key) => [key, attributes[key]])); + } + exports2.hashAttributes = hashAttributes; + function instrumentationScopeId(instrumentationScope) { + var _a, _b; + return `${instrumentationScope.name}:${(_a = instrumentationScope.version) !== null && _a !== void 0 ? _a : ""}:${(_b = instrumentationScope.schemaUrl) !== null && _b !== void 0 ? _b : ""}`; + } + exports2.instrumentationScopeId = instrumentationScopeId; + var TimeoutError2 = class _TimeoutError extends Error { + constructor(message) { + super(message); + Object.setPrototypeOf(this, _TimeoutError.prototype); + } + }; + exports2.TimeoutError = TimeoutError2; + function callWithTimeout(promise, timeout) { + let timeoutHandle; + const timeoutPromise = new Promise(function timeoutFunction(_resolve, reject) { + timeoutHandle = setTimeout(function timeoutHandler() { + reject(new TimeoutError2("Operation timed out.")); + }, timeout); + }); + return Promise.race([promise, timeoutPromise]).then((result) => { + clearTimeout(timeoutHandle); + return result; + }, (reason) => { + clearTimeout(timeoutHandle); + throw reason; + }); + } + exports2.callWithTimeout = callWithTimeout; + async function PromiseAllSettled(promises2) { + return Promise.all(promises2.map(async (p) => { + try { + const ret2 = await p; + return { + status: "fulfilled", + value: ret2 + }; + } catch (e) { + return { + status: "rejected", + reason: e + }; + } + })); + } + exports2.PromiseAllSettled = PromiseAllSettled; + function isPromiseAllSettledRejectionResult(it) { + return it.status === "rejected"; + } + exports2.isPromiseAllSettledRejectionResult = isPromiseAllSettledRejectionResult; + function FlatMap(arr, fn) { + const result = []; + arr.forEach((it) => { + result.push(...fn(it)); + }); + return result; + } + exports2.FlatMap = FlatMap; + function setEquals(lhs, rhs) { + if (lhs.size !== rhs.size) { + return false; + } + for (const item of lhs) { + if (!rhs.has(item)) { + return false; + } + } + return true; + } + exports2.setEquals = setEquals; + function binarySearchLB(arr, value) { + let lo = 0; + let hi = arr.length - 1; + while (hi - lo > 1) { + const mid = Math.trunc((hi + lo) / 2); + if (arr[mid] <= value) { + lo = mid; + } else { + hi = mid - 1; + } + } + if (arr[hi] <= value) { + return hi; + } else if (arr[lo] <= value) { + return lo; + } + return -1; + } + exports2.binarySearchLB = binarySearchLB; + function equalsCaseInsensitive(lhs, rhs) { + return lhs.toLowerCase() === rhs.toLowerCase(); + } + exports2.equalsCaseInsensitive = equalsCaseInsensitive; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/types.js +var require_types11 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AggregatorKind = void 0; + var AggregatorKind; + (function(AggregatorKind2) { + AggregatorKind2[AggregatorKind2["DROP"] = 0] = "DROP"; + AggregatorKind2[AggregatorKind2["SUM"] = 1] = "SUM"; + AggregatorKind2[AggregatorKind2["LAST_VALUE"] = 2] = "LAST_VALUE"; + AggregatorKind2[AggregatorKind2["HISTOGRAM"] = 3] = "HISTOGRAM"; + AggregatorKind2[AggregatorKind2["EXPONENTIAL_HISTOGRAM"] = 4] = "EXPONENTIAL_HISTOGRAM"; + })(AggregatorKind = exports2.AggregatorKind || (exports2.AggregatorKind = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Drop.js +var require_Drop = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Drop.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DropAggregator = void 0; + var types_1 = require_types11(); + var DropAggregator = class { + constructor() { + this.kind = types_1.AggregatorKind.DROP; + } + createAccumulation() { + return void 0; + } + merge(_previous, _delta) { + return void 0; + } + diff(_previous, _current) { + return void 0; + } + toMetricData(_descriptor, _aggregationTemporality, _accumulationByAttributes, _endTime) { + return void 0; + } + }; + exports2.DropAggregator = DropAggregator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/InstrumentDescriptor.js +var require_InstrumentDescriptor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/InstrumentDescriptor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isValidName = exports2.isDescriptorCompatibleWith = exports2.createInstrumentDescriptorWithView = exports2.createInstrumentDescriptor = exports2.InstrumentType = void 0; + var api_1 = require_src(); + var utils_1 = require_utils8(); + var InstrumentType; + (function(InstrumentType2) { + InstrumentType2["COUNTER"] = "COUNTER"; + InstrumentType2["HISTOGRAM"] = "HISTOGRAM"; + InstrumentType2["UP_DOWN_COUNTER"] = "UP_DOWN_COUNTER"; + InstrumentType2["OBSERVABLE_COUNTER"] = "OBSERVABLE_COUNTER"; + InstrumentType2["OBSERVABLE_GAUGE"] = "OBSERVABLE_GAUGE"; + InstrumentType2["OBSERVABLE_UP_DOWN_COUNTER"] = "OBSERVABLE_UP_DOWN_COUNTER"; + })(InstrumentType = exports2.InstrumentType || (exports2.InstrumentType = {})); + function createInstrumentDescriptor(name, type2, options2) { + var _a, _b, _c, _d; + if (!isValidName(name)) { + api_1.diag.warn(`Invalid metric name: "${name}". The metric name should be a ASCII string with a length no greater than 255 characters.`); + } + return { + name, + type: type2, + description: (_a = options2 === null || options2 === void 0 ? void 0 : options2.description) !== null && _a !== void 0 ? _a : "", + unit: (_b = options2 === null || options2 === void 0 ? void 0 : options2.unit) !== null && _b !== void 0 ? _b : "", + valueType: (_c = options2 === null || options2 === void 0 ? void 0 : options2.valueType) !== null && _c !== void 0 ? _c : api_1.ValueType.DOUBLE, + advice: (_d = options2 === null || options2 === void 0 ? void 0 : options2.advice) !== null && _d !== void 0 ? _d : {} + }; + } + exports2.createInstrumentDescriptor = createInstrumentDescriptor; + function createInstrumentDescriptorWithView(view, instrument) { + var _a, _b; + return { + name: (_a = view.name) !== null && _a !== void 0 ? _a : instrument.name, + description: (_b = view.description) !== null && _b !== void 0 ? _b : instrument.description, + type: instrument.type, + unit: instrument.unit, + valueType: instrument.valueType, + advice: instrument.advice + }; + } + exports2.createInstrumentDescriptorWithView = createInstrumentDescriptorWithView; + function isDescriptorCompatibleWith(descriptor, otherDescriptor) { + return (0, utils_1.equalsCaseInsensitive)(descriptor.name, otherDescriptor.name) && descriptor.unit === otherDescriptor.unit && descriptor.type === otherDescriptor.type && descriptor.valueType === otherDescriptor.valueType; + } + exports2.isDescriptorCompatibleWith = isDescriptorCompatibleWith; + var NAME_REGEXP = /^[a-z][a-z0-9_.\-/]{0,254}$/i; + function isValidName(name) { + return name.match(NAME_REGEXP) != null; + } + exports2.isValidName = isValidName; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Histogram.js +var require_Histogram = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Histogram.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.HistogramAggregator = exports2.HistogramAccumulation = void 0; + var types_1 = require_types11(); + var MetricData_1 = require_MetricData(); + var InstrumentDescriptor_1 = require_InstrumentDescriptor(); + var utils_1 = require_utils8(); + function createNewEmptyCheckpoint(boundaries) { + const counts = boundaries.map(() => 0); + counts.push(0); + return { + buckets: { + boundaries, + counts + }, + sum: 0, + count: 0, + hasMinMax: false, + min: Infinity, + max: -Infinity + }; + } + var HistogramAccumulation = class { + constructor(startTime, _boundaries, _recordMinMax = true, _current = createNewEmptyCheckpoint(_boundaries)) { + this.startTime = startTime; + this._boundaries = _boundaries; + this._recordMinMax = _recordMinMax; + this._current = _current; + } + record(value) { + this._current.count += 1; + this._current.sum += value; + if (this._recordMinMax) { + this._current.min = Math.min(value, this._current.min); + this._current.max = Math.max(value, this._current.max); + this._current.hasMinMax = true; + } + const idx = (0, utils_1.binarySearchLB)(this._boundaries, value); + this._current.buckets.counts[idx + 1] += 1; + } + setStartTime(startTime) { + this.startTime = startTime; + } + toPointValue() { + return this._current; + } + }; + exports2.HistogramAccumulation = HistogramAccumulation; + var HistogramAggregator = class { + /** + * @param _boundaries sorted upper bounds of recorded values. + * @param _recordMinMax If set to true, min and max will be recorded. Otherwise, min and max will not be recorded. + */ + constructor(_boundaries, _recordMinMax) { + this._boundaries = _boundaries; + this._recordMinMax = _recordMinMax; + this.kind = types_1.AggregatorKind.HISTOGRAM; + } + createAccumulation(startTime) { + return new HistogramAccumulation(startTime, this._boundaries, this._recordMinMax); + } + /** + * Return the result of the merge of two histogram accumulations. As long as one Aggregator + * instance produces all Accumulations with constant boundaries we don't need to worry about + * merging accumulations with different boundaries. + */ + merge(previous, delta) { + const previousValue = previous.toPointValue(); + const deltaValue = delta.toPointValue(); + const previousCounts = previousValue.buckets.counts; + const deltaCounts = deltaValue.buckets.counts; + const mergedCounts = new Array(previousCounts.length); + for (let idx = 0; idx < previousCounts.length; idx++) { + mergedCounts[idx] = previousCounts[idx] + deltaCounts[idx]; + } + let min = Infinity; + let max = -Infinity; + if (this._recordMinMax) { + if (previousValue.hasMinMax && deltaValue.hasMinMax) { + min = Math.min(previousValue.min, deltaValue.min); + max = Math.max(previousValue.max, deltaValue.max); + } else if (previousValue.hasMinMax) { + min = previousValue.min; + max = previousValue.max; + } else if (deltaValue.hasMinMax) { + min = deltaValue.min; + max = deltaValue.max; + } + } + return new HistogramAccumulation(previous.startTime, previousValue.buckets.boundaries, this._recordMinMax, { + buckets: { + boundaries: previousValue.buckets.boundaries, + counts: mergedCounts + }, + count: previousValue.count + deltaValue.count, + sum: previousValue.sum + deltaValue.sum, + hasMinMax: this._recordMinMax && (previousValue.hasMinMax || deltaValue.hasMinMax), + min, + max + }); + } + /** + * Returns a new DELTA aggregation by comparing two cumulative measurements. + */ + diff(previous, current) { + const previousValue = previous.toPointValue(); + const currentValue = current.toPointValue(); + const previousCounts = previousValue.buckets.counts; + const currentCounts = currentValue.buckets.counts; + const diffedCounts = new Array(previousCounts.length); + for (let idx = 0; idx < previousCounts.length; idx++) { + diffedCounts[idx] = currentCounts[idx] - previousCounts[idx]; + } + return new HistogramAccumulation(current.startTime, previousValue.buckets.boundaries, this._recordMinMax, { + buckets: { + boundaries: previousValue.buckets.boundaries, + counts: diffedCounts + }, + count: currentValue.count - previousValue.count, + sum: currentValue.sum - previousValue.sum, + hasMinMax: false, + min: Infinity, + max: -Infinity + }); + } + toMetricData(descriptor, aggregationTemporality, accumulationByAttributes, endTime) { + return { + descriptor, + aggregationTemporality, + dataPointType: MetricData_1.DataPointType.HISTOGRAM, + dataPoints: accumulationByAttributes.map(([attributes, accumulation]) => { + const pointValue = accumulation.toPointValue(); + const allowsNegativeValues = descriptor.type === InstrumentDescriptor_1.InstrumentType.UP_DOWN_COUNTER || descriptor.type === InstrumentDescriptor_1.InstrumentType.OBSERVABLE_GAUGE || descriptor.type === InstrumentDescriptor_1.InstrumentType.OBSERVABLE_UP_DOWN_COUNTER; + return { + attributes, + startTime: accumulation.startTime, + endTime, + value: { + min: pointValue.hasMinMax ? pointValue.min : void 0, + max: pointValue.hasMinMax ? pointValue.max : void 0, + sum: !allowsNegativeValues ? pointValue.sum : void 0, + buckets: pointValue.buckets, + count: pointValue.count + } + }; + }) + }; + } + }; + exports2.HistogramAggregator = HistogramAggregator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/Buckets.js +var require_Buckets = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/Buckets.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Buckets = void 0; + var Buckets = class _Buckets { + /** + * The term index refers to the number of the exponential histogram bucket + * used to determine its boundaries. The lower boundary of a bucket is + * determined by base ** index and the upper boundary of a bucket is + * determined by base ** (index + 1). index values are signed to account + * for values less than or equal to 1. + * + * indexBase is the index of the 0th position in the + * backing array, i.e., backing[0] is the count + * in the bucket with index `indexBase`. + * + * indexStart is the smallest index value represented + * in the backing array. + * + * indexEnd is the largest index value represented in + * the backing array. + */ + constructor(backing = new BucketsBacking(), indexBase = 0, indexStart = 0, indexEnd = 0) { + this.backing = backing; + this.indexBase = indexBase; + this.indexStart = indexStart; + this.indexEnd = indexEnd; + } + /** + * Offset is the bucket index of the smallest entry in the counts array + * @returns {number} + */ + get offset() { + return this.indexStart; + } + /** + * Buckets is a view into the backing array. + * @returns {number} + */ + get length() { + if (this.backing.length === 0) { + return 0; + } + if (this.indexEnd === this.indexStart && this.at(0) === 0) { + return 0; + } + return this.indexEnd - this.indexStart + 1; + } + /** + * An array of counts, where count[i] carries the count + * of the bucket at index (offset+i). count[i] is the count of + * values greater than base^(offset+i) and less than or equal to + * base^(offset+i+1). + * @returns {number} The logical counts based on the backing array + */ + counts() { + return Array.from({ length: this.length }, (_, i) => this.at(i)); + } + /** + * At returns the count of the bucket at a position in the logical + * array of counts. + * @param position + * @returns {number} + */ + at(position) { + const bias = this.indexBase - this.indexStart; + if (position < bias) { + position += this.backing.length; + } + position -= bias; + return this.backing.countAt(position); + } + /** + * incrementBucket increments the backing array index by `increment` + * @param bucketIndex + * @param increment + */ + incrementBucket(bucketIndex, increment) { + this.backing.increment(bucketIndex, increment); + } + /** + * decrementBucket decrements the backing array index by `decrement` + * if decrement is greater than the current value, it's set to 0. + * @param bucketIndex + * @param decrement + */ + decrementBucket(bucketIndex, decrement) { + this.backing.decrement(bucketIndex, decrement); + } + /** + * trim removes leading and / or trailing zero buckets (which can occur + * after diffing two histos) and rotates the backing array so that the + * smallest non-zero index is in the 0th position of the backing array + */ + trim() { + for (let i = 0; i < this.length; i++) { + if (this.at(i) !== 0) { + this.indexStart += i; + break; + } else if (i === this.length - 1) { + this.indexStart = this.indexEnd = this.indexBase = 0; + return; + } + } + for (let i = this.length - 1; i >= 0; i--) { + if (this.at(i) !== 0) { + this.indexEnd -= this.length - i - 1; + break; + } + } + this._rotate(); + } + /** + * downscale first rotates, then collapses 2**`by`-to-1 buckets. + * @param by + */ + downscale(by) { + this._rotate(); + const size = 1 + this.indexEnd - this.indexStart; + const each = 1 << by; + let inpos = 0; + let outpos = 0; + for (let pos = this.indexStart; pos <= this.indexEnd; ) { + let mod2 = pos % each; + if (mod2 < 0) { + mod2 += each; + } + for (let i = mod2; i < each && inpos < size; i++) { + this._relocateBucket(outpos, inpos); + inpos++; + pos++; + } + outpos++; + } + this.indexStart >>= by; + this.indexEnd >>= by; + this.indexBase = this.indexStart; + } + /** + * Clone returns a deep copy of Buckets + * @returns {Buckets} + */ + clone() { + return new _Buckets(this.backing.clone(), this.indexBase, this.indexStart, this.indexEnd); + } + /** + * _rotate shifts the backing array contents so that indexStart == + * indexBase to simplify the downscale logic. + */ + _rotate() { + const bias = this.indexBase - this.indexStart; + if (bias === 0) { + return; + } else if (bias > 0) { + this.backing.reverse(0, this.backing.length); + this.backing.reverse(0, bias); + this.backing.reverse(bias, this.backing.length); + } else { + this.backing.reverse(0, this.backing.length); + this.backing.reverse(0, this.backing.length + bias); + } + this.indexBase = this.indexStart; + } + /** + * _relocateBucket adds the count in counts[src] to counts[dest] and + * resets count[src] to zero. + */ + _relocateBucket(dest, src) { + if (dest === src) { + return; + } + this.incrementBucket(dest, this.backing.emptyBucket(src)); + } + }; + exports2.Buckets = Buckets; + var BucketsBacking = class _BucketsBacking { + constructor(_counts = [0]) { + this._counts = _counts; + } + /** + * length returns the physical size of the backing array, which + * is >= buckets.length() + */ + get length() { + return this._counts.length; + } + /** + * countAt returns the count in a specific bucket + */ + countAt(pos) { + return this._counts[pos]; + } + /** + * growTo grows a backing array and copies old entries + * into their correct new positions. + */ + growTo(newSize, oldPositiveLimit, newPositiveLimit) { + const tmp = new Array(newSize).fill(0); + tmp.splice(newPositiveLimit, this._counts.length - oldPositiveLimit, ...this._counts.slice(oldPositiveLimit)); + tmp.splice(0, oldPositiveLimit, ...this._counts.slice(0, oldPositiveLimit)); + this._counts = tmp; + } + /** + * reverse the items in the backing array in the range [from, limit). + */ + reverse(from, limit) { + const num = Math.floor((from + limit) / 2) - from; + for (let i = 0; i < num; i++) { + const tmp = this._counts[from + i]; + this._counts[from + i] = this._counts[limit - i - 1]; + this._counts[limit - i - 1] = tmp; + } + } + /** + * emptyBucket empties the count from a bucket, for + * moving into another. + */ + emptyBucket(src) { + const tmp = this._counts[src]; + this._counts[src] = 0; + return tmp; + } + /** + * increments a bucket by `increment` + */ + increment(bucketIndex, increment) { + this._counts[bucketIndex] += increment; + } + /** + * decrements a bucket by `decrement` + */ + decrement(bucketIndex, decrement) { + if (this._counts[bucketIndex] >= decrement) { + this._counts[bucketIndex] -= decrement; + } else { + this._counts[bucketIndex] = 0; + } + } + /** + * clone returns a deep copy of BucketsBacking + */ + clone() { + return new _BucketsBacking([...this._counts]); + } + }; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/mapping/ieee754.js +var require_ieee754 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/mapping/ieee754.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSignificand = exports2.getNormalBase2 = exports2.MIN_VALUE = exports2.MAX_NORMAL_EXPONENT = exports2.MIN_NORMAL_EXPONENT = exports2.SIGNIFICAND_WIDTH = void 0; + exports2.SIGNIFICAND_WIDTH = 52; + var EXPONENT_MASK = 2146435072; + var SIGNIFICAND_MASK = 1048575; + var EXPONENT_BIAS = 1023; + exports2.MIN_NORMAL_EXPONENT = -EXPONENT_BIAS + 1; + exports2.MAX_NORMAL_EXPONENT = EXPONENT_BIAS; + exports2.MIN_VALUE = Math.pow(2, -1022); + function getNormalBase2(value) { + const dv = new DataView(new ArrayBuffer(8)); + dv.setFloat64(0, value); + const hiBits = dv.getUint32(0); + const expBits = (hiBits & EXPONENT_MASK) >> 20; + return expBits - EXPONENT_BIAS; + } + exports2.getNormalBase2 = getNormalBase2; + function getSignificand(value) { + const dv = new DataView(new ArrayBuffer(8)); + dv.setFloat64(0, value); + const hiBits = dv.getUint32(0); + const loBits = dv.getUint32(4); + const significandHiBits = (hiBits & SIGNIFICAND_MASK) * Math.pow(2, 32); + return significandHiBits + loBits; + } + exports2.getSignificand = getSignificand; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/util.js +var require_util7 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.nextGreaterSquare = exports2.ldexp = void 0; + function ldexp(frac, exp) { + if (frac === 0 || frac === Number.POSITIVE_INFINITY || frac === Number.NEGATIVE_INFINITY || Number.isNaN(frac)) { + return frac; + } + return frac * Math.pow(2, exp); + } + exports2.ldexp = ldexp; + function nextGreaterSquare(v) { + v--; + v |= v >> 1; + v |= v >> 2; + v |= v >> 4; + v |= v >> 8; + v |= v >> 16; + v++; + return v; + } + exports2.nextGreaterSquare = nextGreaterSquare; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/mapping/types.js +var require_types12 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/mapping/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MappingError = void 0; + var MappingError = class extends Error { + }; + exports2.MappingError = MappingError; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/mapping/ExponentMapping.js +var require_ExponentMapping = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/mapping/ExponentMapping.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ExponentMapping = void 0; + var ieee754 = require_ieee754(); + var util2 = require_util7(); + var types_1 = require_types12(); + var ExponentMapping = class { + constructor(scale) { + this._shift = -scale; + } + /** + * Maps positive floating point values to indexes corresponding to scale + * @param value + * @returns {number} index for provided value at the current scale + */ + mapToIndex(value) { + if (value < ieee754.MIN_VALUE) { + return this._minNormalLowerBoundaryIndex(); + } + const exp = ieee754.getNormalBase2(value); + const correction = this._rightShift(ieee754.getSignificand(value) - 1, ieee754.SIGNIFICAND_WIDTH); + return exp + correction >> this._shift; + } + /** + * Returns the lower bucket boundary for the given index for scale + * + * @param index + * @returns {number} + */ + lowerBoundary(index) { + const minIndex = this._minNormalLowerBoundaryIndex(); + if (index < minIndex) { + throw new types_1.MappingError(`underflow: ${index} is < minimum lower boundary: ${minIndex}`); + } + const maxIndex = this._maxNormalLowerBoundaryIndex(); + if (index > maxIndex) { + throw new types_1.MappingError(`overflow: ${index} is > maximum lower boundary: ${maxIndex}`); + } + return util2.ldexp(1, index << this._shift); + } + /** + * The scale used by this mapping + * @returns {number} + */ + get scale() { + if (this._shift === 0) { + return 0; + } + return -this._shift; + } + _minNormalLowerBoundaryIndex() { + let index = ieee754.MIN_NORMAL_EXPONENT >> this._shift; + if (this._shift < 2) { + index--; + } + return index; + } + _maxNormalLowerBoundaryIndex() { + return ieee754.MAX_NORMAL_EXPONENT >> this._shift; + } + _rightShift(value, shift) { + return Math.floor(value * Math.pow(2, -shift)); + } + }; + exports2.ExponentMapping = ExponentMapping; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/mapping/LogarithmMapping.js +var require_LogarithmMapping = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/mapping/LogarithmMapping.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LogarithmMapping = void 0; + var ieee754 = require_ieee754(); + var util2 = require_util7(); + var types_1 = require_types12(); + var LogarithmMapping = class { + constructor(scale) { + this._scale = scale; + this._scaleFactor = util2.ldexp(Math.LOG2E, scale); + this._inverseFactor = util2.ldexp(Math.LN2, -scale); + } + /** + * Maps positive floating point values to indexes corresponding to scale + * @param value + * @returns {number} index for provided value at the current scale + */ + mapToIndex(value) { + if (value <= ieee754.MIN_VALUE) { + return this._minNormalLowerBoundaryIndex() - 1; + } + if (ieee754.getSignificand(value) === 0) { + const exp = ieee754.getNormalBase2(value); + return (exp << this._scale) - 1; + } + const index = Math.floor(Math.log(value) * this._scaleFactor); + const maxIndex = this._maxNormalLowerBoundaryIndex(); + if (index >= maxIndex) { + return maxIndex; + } + return index; + } + /** + * Returns the lower bucket boundary for the given index for scale + * + * @param index + * @returns {number} + */ + lowerBoundary(index) { + const maxIndex = this._maxNormalLowerBoundaryIndex(); + if (index >= maxIndex) { + if (index === maxIndex) { + return 2 * Math.exp((index - (1 << this._scale)) / this._scaleFactor); + } + throw new types_1.MappingError(`overflow: ${index} is > maximum lower boundary: ${maxIndex}`); + } + const minIndex = this._minNormalLowerBoundaryIndex(); + if (index <= minIndex) { + if (index === minIndex) { + return ieee754.MIN_VALUE; + } else if (index === minIndex - 1) { + return Math.exp((index + (1 << this._scale)) / this._scaleFactor) / 2; + } + throw new types_1.MappingError(`overflow: ${index} is < minimum lower boundary: ${minIndex}`); + } + return Math.exp(index * this._inverseFactor); + } + /** + * The scale used by this mapping + * @returns {number} + */ + get scale() { + return this._scale; + } + _minNormalLowerBoundaryIndex() { + return ieee754.MIN_NORMAL_EXPONENT << this._scale; + } + _maxNormalLowerBoundaryIndex() { + return (ieee754.MAX_NORMAL_EXPONENT + 1 << this._scale) - 1; + } + }; + exports2.LogarithmMapping = LogarithmMapping; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/mapping/getMapping.js +var require_getMapping = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/mapping/getMapping.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getMapping = void 0; + var ExponentMapping_1 = require_ExponentMapping(); + var LogarithmMapping_1 = require_LogarithmMapping(); + var types_1 = require_types12(); + var MIN_SCALE = -10; + var MAX_SCALE = 20; + var PREBUILT_MAPPINGS = Array.from({ length: 31 }, (_, i) => { + if (i > 10) { + return new LogarithmMapping_1.LogarithmMapping(i - 10); + } + return new ExponentMapping_1.ExponentMapping(i - 10); + }); + function getMapping2(scale) { + if (scale > MAX_SCALE || scale < MIN_SCALE) { + throw new types_1.MappingError(`expected scale >= ${MIN_SCALE} && <= ${MAX_SCALE}, got: ${scale}`); + } + return PREBUILT_MAPPINGS[scale + 10]; + } + exports2.getMapping = getMapping2; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/ExponentialHistogram.js +var require_ExponentialHistogram = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/ExponentialHistogram.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ExponentialHistogramAggregator = exports2.ExponentialHistogramAccumulation = void 0; + var types_1 = require_types11(); + var MetricData_1 = require_MetricData(); + var api_1 = require_src(); + var InstrumentDescriptor_1 = require_InstrumentDescriptor(); + var Buckets_1 = require_Buckets(); + var getMapping_1 = require_getMapping(); + var util_1 = require_util7(); + var HighLow = class _HighLow { + constructor(low, high) { + this.low = low; + this.high = high; + } + static combine(h1, h2) { + return new _HighLow(Math.min(h1.low, h2.low), Math.max(h1.high, h2.high)); + } + }; + var MAX_SCALE = 20; + var DEFAULT_MAX_SIZE = 160; + var MIN_MAX_SIZE = 2; + var ExponentialHistogramAccumulation = class _ExponentialHistogramAccumulation { + constructor(startTime = startTime, _maxSize = DEFAULT_MAX_SIZE, _recordMinMax = true, _sum = 0, _count = 0, _zeroCount = 0, _min = Number.POSITIVE_INFINITY, _max = Number.NEGATIVE_INFINITY, _positive = new Buckets_1.Buckets(), _negative = new Buckets_1.Buckets(), _mapping = (0, getMapping_1.getMapping)(MAX_SCALE)) { + this.startTime = startTime; + this._maxSize = _maxSize; + this._recordMinMax = _recordMinMax; + this._sum = _sum; + this._count = _count; + this._zeroCount = _zeroCount; + this._min = _min; + this._max = _max; + this._positive = _positive; + this._negative = _negative; + this._mapping = _mapping; + if (this._maxSize < MIN_MAX_SIZE) { + api_1.diag.warn(`Exponential Histogram Max Size set to ${this._maxSize}, changing to the minimum size of: ${MIN_MAX_SIZE}`); + this._maxSize = MIN_MAX_SIZE; + } + } + /** + * record updates a histogram with a single count + * @param {Number} value + */ + record(value) { + this.updateByIncrement(value, 1); + } + /** + * Sets the start time for this accumulation + * @param {HrTime} startTime + */ + setStartTime(startTime) { + this.startTime = startTime; + } + /** + * Returns the datapoint representation of this accumulation + * @param {HrTime} startTime + */ + toPointValue() { + return { + hasMinMax: this._recordMinMax, + min: this.min, + max: this.max, + sum: this.sum, + positive: { + offset: this.positive.offset, + bucketCounts: this.positive.counts() + }, + negative: { + offset: this.negative.offset, + bucketCounts: this.negative.counts() + }, + count: this.count, + scale: this.scale, + zeroCount: this.zeroCount + }; + } + /** + * @returns {Number} The sum of values recorded by this accumulation + */ + get sum() { + return this._sum; + } + /** + * @returns {Number} The minimum value recorded by this accumulation + */ + get min() { + return this._min; + } + /** + * @returns {Number} The maximum value recorded by this accumulation + */ + get max() { + return this._max; + } + /** + * @returns {Number} The count of values recorded by this accumulation + */ + get count() { + return this._count; + } + /** + * @returns {Number} The number of 0 values recorded by this accumulation + */ + get zeroCount() { + return this._zeroCount; + } + /** + * @returns {Number} The scale used by thie accumulation + */ + get scale() { + if (this._count === this._zeroCount) { + return 0; + } + return this._mapping.scale; + } + /** + * positive holds the postive values + * @returns {Buckets} + */ + get positive() { + return this._positive; + } + /** + * negative holds the negative values by their absolute value + * @returns {Buckets} + */ + get negative() { + return this._negative; + } + /** + * uppdateByIncr supports updating a histogram with a non-negative + * increment. + * @param value + * @param increment + */ + updateByIncrement(value, increment) { + if (value > this._max) { + this._max = value; + } + if (value < this._min) { + this._min = value; + } + this._count += increment; + if (value === 0) { + this._zeroCount += increment; + return; + } + this._sum += value * increment; + if (value > 0) { + this._updateBuckets(this._positive, value, increment); + } else { + this._updateBuckets(this._negative, -value, increment); + } + } + /** + * merge combines data from previous value into self + * @param {ExponentialHistogramAccumulation} previous + */ + merge(previous) { + if (this._count === 0) { + this._min = previous.min; + this._max = previous.max; + } else if (previous.count !== 0) { + if (previous.min < this.min) { + this._min = previous.min; + } + if (previous.max > this.max) { + this._max = previous.max; + } + } + this.startTime = previous.startTime; + this._sum += previous.sum; + this._count += previous.count; + this._zeroCount += previous.zeroCount; + const minScale = this._minScale(previous); + this._downscale(this.scale - minScale); + this._mergeBuckets(this.positive, previous, previous.positive, minScale); + this._mergeBuckets(this.negative, previous, previous.negative, minScale); + } + /** + * diff substracts other from self + * @param {ExponentialHistogramAccumulation} other + */ + diff(other) { + this._min = Infinity; + this._max = -Infinity; + this._sum -= other.sum; + this._count -= other.count; + this._zeroCount -= other.zeroCount; + const minScale = this._minScale(other); + this._downscale(this.scale - minScale); + this._diffBuckets(this.positive, other, other.positive, minScale); + this._diffBuckets(this.negative, other, other.negative, minScale); + } + /** + * clone returns a deep copy of self + * @returns {ExponentialHistogramAccumulation} + */ + clone() { + return new _ExponentialHistogramAccumulation(this.startTime, this._maxSize, this._recordMinMax, this._sum, this._count, this._zeroCount, this._min, this._max, this.positive.clone(), this.negative.clone(), this._mapping); + } + /** + * _updateBuckets maps the incoming value to a bucket index for the current + * scale. If the bucket index is outside of the range of the backing array, + * it will rescale the backing array and update the mapping for the new scale. + */ + _updateBuckets(buckets, value, increment) { + let index = this._mapping.mapToIndex(value); + let rescalingNeeded = false; + let high = 0; + let low = 0; + if (buckets.length === 0) { + buckets.indexStart = index; + buckets.indexEnd = buckets.indexStart; + buckets.indexBase = buckets.indexStart; + } else if (index < buckets.indexStart && buckets.indexEnd - index >= this._maxSize) { + rescalingNeeded = true; + low = index; + high = buckets.indexEnd; + } else if (index > buckets.indexEnd && index - buckets.indexStart >= this._maxSize) { + rescalingNeeded = true; + low = buckets.indexStart; + high = index; + } + if (rescalingNeeded) { + const change = this._changeScale(high, low); + this._downscale(change); + index = this._mapping.mapToIndex(value); + } + this._incrementIndexBy(buckets, index, increment); + } + /** + * _incrementIndexBy increments the count of the bucket specified by `index`. + * If the index is outside of the range [buckets.indexStart, buckets.indexEnd] + * the boundaries of the backing array will be adjusted and more buckets will + * be added if needed. + */ + _incrementIndexBy(buckets, index, increment) { + if (increment === 0) { + return; + } + if (index < buckets.indexStart) { + const span = buckets.indexEnd - index; + if (span >= buckets.backing.length) { + this._grow(buckets, span + 1); + } + buckets.indexStart = index; + } else if (index > buckets.indexEnd) { + const span = index - buckets.indexStart; + if (span >= buckets.backing.length) { + this._grow(buckets, span + 1); + } + buckets.indexEnd = index; + } + let bucketIndex = index - buckets.indexBase; + if (bucketIndex < 0) { + bucketIndex += buckets.backing.length; + } + buckets.incrementBucket(bucketIndex, increment); + } + /** + * grow resizes the backing array by doubling in size up to maxSize. + * This extends the array with a bunch of zeros and copies the + * existing counts to the same position. + */ + _grow(buckets, needed) { + const size = buckets.backing.length; + const bias = buckets.indexBase - buckets.indexStart; + const oldPositiveLimit = size - bias; + let newSize = (0, util_1.nextGreaterSquare)(needed); + if (newSize > this._maxSize) { + newSize = this._maxSize; + } + const newPositiveLimit = newSize - bias; + buckets.backing.growTo(newSize, oldPositiveLimit, newPositiveLimit); + } + /** + * _changeScale computes how much downscaling is needed by shifting the + * high and low values until they are separated by no more than size. + */ + _changeScale(high, low) { + let change = 0; + while (high - low >= this._maxSize) { + high >>= 1; + low >>= 1; + change++; + } + return change; + } + /** + * _downscale subtracts `change` from the current mapping scale. + */ + _downscale(change) { + if (change === 0) { + return; + } + if (change < 0) { + throw new Error(`impossible change of scale: ${this.scale}`); + } + const newScale = this._mapping.scale - change; + this._positive.downscale(change); + this._negative.downscale(change); + this._mapping = (0, getMapping_1.getMapping)(newScale); + } + /** + * _minScale is used by diff and merge to compute an ideal combined scale + */ + _minScale(other) { + const minScale = Math.min(this.scale, other.scale); + const highLowPos = HighLow.combine(this._highLowAtScale(this.positive, this.scale, minScale), this._highLowAtScale(other.positive, other.scale, minScale)); + const highLowNeg = HighLow.combine(this._highLowAtScale(this.negative, this.scale, minScale), this._highLowAtScale(other.negative, other.scale, minScale)); + return Math.min(minScale - this._changeScale(highLowPos.high, highLowPos.low), minScale - this._changeScale(highLowNeg.high, highLowNeg.low)); + } + /** + * _highLowAtScale is used by diff and merge to compute an ideal combined scale. + */ + _highLowAtScale(buckets, currentScale, newScale) { + if (buckets.length === 0) { + return new HighLow(0, -1); + } + const shift = currentScale - newScale; + return new HighLow(buckets.indexStart >> shift, buckets.indexEnd >> shift); + } + /** + * _mergeBuckets translates index values from another histogram and + * adds the values into the corresponding buckets of this histogram. + */ + _mergeBuckets(ours, other, theirs, scale) { + const theirOffset = theirs.offset; + const theirChange = other.scale - scale; + for (let i = 0; i < theirs.length; i++) { + this._incrementIndexBy(ours, theirOffset + i >> theirChange, theirs.at(i)); + } + } + /** + * _diffBuckets translates index values from another histogram and + * subtracts the values in the corresponding buckets of this histogram. + */ + _diffBuckets(ours, other, theirs, scale) { + const theirOffset = theirs.offset; + const theirChange = other.scale - scale; + for (let i = 0; i < theirs.length; i++) { + const ourIndex = theirOffset + i >> theirChange; + let bucketIndex = ourIndex - ours.indexBase; + if (bucketIndex < 0) { + bucketIndex += ours.backing.length; + } + ours.decrementBucket(bucketIndex, theirs.at(i)); + } + ours.trim(); + } + }; + exports2.ExponentialHistogramAccumulation = ExponentialHistogramAccumulation; + var ExponentialHistogramAggregator = class { + /** + * @param _maxSize Maximum number of buckets for each of the positive + * and negative ranges, exclusive of the zero-bucket. + * @param _recordMinMax If set to true, min and max will be recorded. + * Otherwise, min and max will not be recorded. + */ + constructor(_maxSize, _recordMinMax) { + this._maxSize = _maxSize; + this._recordMinMax = _recordMinMax; + this.kind = types_1.AggregatorKind.EXPONENTIAL_HISTOGRAM; + } + createAccumulation(startTime) { + return new ExponentialHistogramAccumulation(startTime, this._maxSize, this._recordMinMax); + } + /** + * Return the result of the merge of two exponential histogram accumulations. + */ + merge(previous, delta) { + const result = delta.clone(); + result.merge(previous); + return result; + } + /** + * Returns a new DELTA aggregation by comparing two cumulative measurements. + */ + diff(previous, current) { + const result = current.clone(); + result.diff(previous); + return result; + } + toMetricData(descriptor, aggregationTemporality, accumulationByAttributes, endTime) { + return { + descriptor, + aggregationTemporality, + dataPointType: MetricData_1.DataPointType.EXPONENTIAL_HISTOGRAM, + dataPoints: accumulationByAttributes.map(([attributes, accumulation]) => { + const pointValue = accumulation.toPointValue(); + const allowsNegativeValues = descriptor.type === InstrumentDescriptor_1.InstrumentType.UP_DOWN_COUNTER || descriptor.type === InstrumentDescriptor_1.InstrumentType.OBSERVABLE_GAUGE || descriptor.type === InstrumentDescriptor_1.InstrumentType.OBSERVABLE_UP_DOWN_COUNTER; + return { + attributes, + startTime: accumulation.startTime, + endTime, + value: { + min: pointValue.hasMinMax ? pointValue.min : void 0, + max: pointValue.hasMinMax ? pointValue.max : void 0, + sum: !allowsNegativeValues ? pointValue.sum : void 0, + positive: { + offset: pointValue.positive.offset, + bucketCounts: pointValue.positive.bucketCounts + }, + negative: { + offset: pointValue.negative.offset, + bucketCounts: pointValue.negative.bucketCounts + }, + count: pointValue.count, + scale: pointValue.scale, + zeroCount: pointValue.zeroCount + } + }; + }) + }; + } + }; + exports2.ExponentialHistogramAggregator = ExponentialHistogramAggregator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/LastValue.js +var require_LastValue = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/LastValue.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LastValueAggregator = exports2.LastValueAccumulation = void 0; + var types_1 = require_types11(); + var core_1 = require_src5(); + var MetricData_1 = require_MetricData(); + var LastValueAccumulation = class { + constructor(startTime, _current = 0, sampleTime = [0, 0]) { + this.startTime = startTime; + this._current = _current; + this.sampleTime = sampleTime; + } + record(value) { + this._current = value; + this.sampleTime = (0, core_1.millisToHrTime)(Date.now()); + } + setStartTime(startTime) { + this.startTime = startTime; + } + toPointValue() { + return this._current; + } + }; + exports2.LastValueAccumulation = LastValueAccumulation; + var LastValueAggregator = class { + constructor() { + this.kind = types_1.AggregatorKind.LAST_VALUE; + } + createAccumulation(startTime) { + return new LastValueAccumulation(startTime); + } + /** + * Returns the result of the merge of the given accumulations. + * + * Return the newly captured (delta) accumulation for LastValueAggregator. + */ + merge(previous, delta) { + const latestAccumulation = (0, core_1.hrTimeToMicroseconds)(delta.sampleTime) >= (0, core_1.hrTimeToMicroseconds)(previous.sampleTime) ? delta : previous; + return new LastValueAccumulation(previous.startTime, latestAccumulation.toPointValue(), latestAccumulation.sampleTime); + } + /** + * Returns a new DELTA aggregation by comparing two cumulative measurements. + * + * A delta aggregation is not meaningful to LastValueAggregator, just return + * the newly captured (delta) accumulation for LastValueAggregator. + */ + diff(previous, current) { + const latestAccumulation = (0, core_1.hrTimeToMicroseconds)(current.sampleTime) >= (0, core_1.hrTimeToMicroseconds)(previous.sampleTime) ? current : previous; + return new LastValueAccumulation(current.startTime, latestAccumulation.toPointValue(), latestAccumulation.sampleTime); + } + toMetricData(descriptor, aggregationTemporality, accumulationByAttributes, endTime) { + return { + descriptor, + aggregationTemporality, + dataPointType: MetricData_1.DataPointType.GAUGE, + dataPoints: accumulationByAttributes.map(([attributes, accumulation]) => { + return { + attributes, + startTime: accumulation.startTime, + endTime, + value: accumulation.toPointValue() + }; + }) + }; + } + }; + exports2.LastValueAggregator = LastValueAggregator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Sum.js +var require_Sum = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Sum.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SumAggregator = exports2.SumAccumulation = void 0; + var types_1 = require_types11(); + var MetricData_1 = require_MetricData(); + var SumAccumulation = class { + constructor(startTime, monotonic, _current = 0, reset = false) { + this.startTime = startTime; + this.monotonic = monotonic; + this._current = _current; + this.reset = reset; + } + record(value) { + if (this.monotonic && value < 0) { + return; + } + this._current += value; + } + setStartTime(startTime) { + this.startTime = startTime; + } + toPointValue() { + return this._current; + } + }; + exports2.SumAccumulation = SumAccumulation; + var SumAggregator = class { + constructor(monotonic) { + this.monotonic = monotonic; + this.kind = types_1.AggregatorKind.SUM; + } + createAccumulation(startTime) { + return new SumAccumulation(startTime, this.monotonic); + } + /** + * Returns the result of the merge of the given accumulations. + */ + merge(previous, delta) { + const prevPv = previous.toPointValue(); + const deltaPv = delta.toPointValue(); + if (delta.reset) { + return new SumAccumulation(delta.startTime, this.monotonic, deltaPv, delta.reset); + } + return new SumAccumulation(previous.startTime, this.monotonic, prevPv + deltaPv); + } + /** + * Returns a new DELTA aggregation by comparing two cumulative measurements. + */ + diff(previous, current) { + const prevPv = previous.toPointValue(); + const currPv = current.toPointValue(); + if (this.monotonic && prevPv > currPv) { + return new SumAccumulation(current.startTime, this.monotonic, currPv, true); + } + return new SumAccumulation(current.startTime, this.monotonic, currPv - prevPv); + } + toMetricData(descriptor, aggregationTemporality, accumulationByAttributes, endTime) { + return { + descriptor, + aggregationTemporality, + dataPointType: MetricData_1.DataPointType.SUM, + dataPoints: accumulationByAttributes.map(([attributes, accumulation]) => { + return { + attributes, + startTime: accumulation.startTime, + endTime, + value: accumulation.toPointValue() + }; + }), + isMonotonic: this.monotonic + }; + } + }; + exports2.SumAggregator = SumAggregator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/index.js +var require_aggregator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_Drop(), exports2); + __exportStar(require_Histogram(), exports2); + __exportStar(require_ExponentialHistogram(), exports2); + __exportStar(require_LastValue(), exports2); + __exportStar(require_Sum(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/Aggregation.js +var require_Aggregation = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/Aggregation.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DefaultAggregation = exports2.ExponentialHistogramAggregation = exports2.ExplicitBucketHistogramAggregation = exports2.HistogramAggregation = exports2.LastValueAggregation = exports2.SumAggregation = exports2.DropAggregation = exports2.Aggregation = void 0; + var api = require_src(); + var aggregator_1 = require_aggregator(); + var InstrumentDescriptor_1 = require_InstrumentDescriptor(); + var Aggregation = class { + static Drop() { + return DROP_AGGREGATION; + } + static Sum() { + return SUM_AGGREGATION; + } + static LastValue() { + return LAST_VALUE_AGGREGATION; + } + static Histogram() { + return HISTOGRAM_AGGREGATION; + } + static ExponentialHistogram() { + return EXPONENTIAL_HISTOGRAM_AGGREGATION; + } + static Default() { + return DEFAULT_AGGREGATION; + } + }; + exports2.Aggregation = Aggregation; + var DropAggregation = class _DropAggregation extends Aggregation { + createAggregator(_instrument) { + return _DropAggregation.DEFAULT_INSTANCE; + } + }; + exports2.DropAggregation = DropAggregation; + DropAggregation.DEFAULT_INSTANCE = new aggregator_1.DropAggregator(); + var SumAggregation = class _SumAggregation extends Aggregation { + createAggregator(instrument) { + switch (instrument.type) { + case InstrumentDescriptor_1.InstrumentType.COUNTER: + case InstrumentDescriptor_1.InstrumentType.OBSERVABLE_COUNTER: + case InstrumentDescriptor_1.InstrumentType.HISTOGRAM: { + return _SumAggregation.MONOTONIC_INSTANCE; + } + default: { + return _SumAggregation.NON_MONOTONIC_INSTANCE; + } + } + } + }; + exports2.SumAggregation = SumAggregation; + SumAggregation.MONOTONIC_INSTANCE = new aggregator_1.SumAggregator(true); + SumAggregation.NON_MONOTONIC_INSTANCE = new aggregator_1.SumAggregator(false); + var LastValueAggregation = class _LastValueAggregation extends Aggregation { + createAggregator(_instrument) { + return _LastValueAggregation.DEFAULT_INSTANCE; + } + }; + exports2.LastValueAggregation = LastValueAggregation; + LastValueAggregation.DEFAULT_INSTANCE = new aggregator_1.LastValueAggregator(); + var HistogramAggregation = class _HistogramAggregation extends Aggregation { + createAggregator(_instrument) { + return _HistogramAggregation.DEFAULT_INSTANCE; + } + }; + exports2.HistogramAggregation = HistogramAggregation; + HistogramAggregation.DEFAULT_INSTANCE = new aggregator_1.HistogramAggregator([0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1e3, 2500, 5e3, 7500, 1e4], true); + var ExplicitBucketHistogramAggregation = class extends Aggregation { + /** + * @param boundaries the bucket boundaries of the histogram aggregation + * @param _recordMinMax If set to true, min and max will be recorded. Otherwise, min and max will not be recorded. + */ + constructor(boundaries, _recordMinMax = true) { + super(); + this._recordMinMax = _recordMinMax; + if (boundaries === void 0 || boundaries.length === 0) { + throw new Error("HistogramAggregator should be created with boundaries."); + } + boundaries = boundaries.concat(); + boundaries = boundaries.sort((a, b) => a - b); + const minusInfinityIndex = boundaries.lastIndexOf(-Infinity); + let infinityIndex = boundaries.indexOf(Infinity); + if (infinityIndex === -1) { + infinityIndex = void 0; + } + this._boundaries = boundaries.slice(minusInfinityIndex + 1, infinityIndex); + } + createAggregator(_instrument) { + return new aggregator_1.HistogramAggregator(this._boundaries, this._recordMinMax); + } + }; + exports2.ExplicitBucketHistogramAggregation = ExplicitBucketHistogramAggregation; + var ExponentialHistogramAggregation = class extends Aggregation { + constructor(_maxSize = 160, _recordMinMax = true) { + super(); + this._maxSize = _maxSize; + this._recordMinMax = _recordMinMax; + } + createAggregator(_instrument) { + return new aggregator_1.ExponentialHistogramAggregator(this._maxSize, this._recordMinMax); + } + }; + exports2.ExponentialHistogramAggregation = ExponentialHistogramAggregation; + var DefaultAggregation = class extends Aggregation { + _resolve(instrument) { + switch (instrument.type) { + case InstrumentDescriptor_1.InstrumentType.COUNTER: + case InstrumentDescriptor_1.InstrumentType.UP_DOWN_COUNTER: + case InstrumentDescriptor_1.InstrumentType.OBSERVABLE_COUNTER: + case InstrumentDescriptor_1.InstrumentType.OBSERVABLE_UP_DOWN_COUNTER: { + return SUM_AGGREGATION; + } + case InstrumentDescriptor_1.InstrumentType.OBSERVABLE_GAUGE: { + return LAST_VALUE_AGGREGATION; + } + case InstrumentDescriptor_1.InstrumentType.HISTOGRAM: { + if (instrument.advice.explicitBucketBoundaries) { + return new ExplicitBucketHistogramAggregation(instrument.advice.explicitBucketBoundaries); + } + return HISTOGRAM_AGGREGATION; + } + } + api.diag.warn(`Unable to recognize instrument type: ${instrument.type}`); + return DROP_AGGREGATION; + } + createAggregator(instrument) { + return this._resolve(instrument).createAggregator(instrument); + } + }; + exports2.DefaultAggregation = DefaultAggregation; + var DROP_AGGREGATION = new DropAggregation(); + var SUM_AGGREGATION = new SumAggregation(); + var LAST_VALUE_AGGREGATION = new LastValueAggregation(); + var HISTOGRAM_AGGREGATION = new HistogramAggregation(); + var EXPONENTIAL_HISTOGRAM_AGGREGATION = new ExponentialHistogramAggregation(); + var DEFAULT_AGGREGATION = new DefaultAggregation(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/AggregationSelector.js +var require_AggregationSelector = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/AggregationSelector.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DEFAULT_AGGREGATION_TEMPORALITY_SELECTOR = exports2.DEFAULT_AGGREGATION_SELECTOR = void 0; + var Aggregation_1 = require_Aggregation(); + var AggregationTemporality_1 = require_AggregationTemporality(); + var DEFAULT_AGGREGATION_SELECTOR = (_instrumentType) => Aggregation_1.Aggregation.Default(); + exports2.DEFAULT_AGGREGATION_SELECTOR = DEFAULT_AGGREGATION_SELECTOR; + var DEFAULT_AGGREGATION_TEMPORALITY_SELECTOR = (_instrumentType) => AggregationTemporality_1.AggregationTemporality.CUMULATIVE; + exports2.DEFAULT_AGGREGATION_TEMPORALITY_SELECTOR = DEFAULT_AGGREGATION_TEMPORALITY_SELECTOR; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricReader.js +var require_MetricReader = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricReader.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MetricReader = void 0; + var api = require_src(); + var utils_1 = require_utils8(); + var AggregationSelector_1 = require_AggregationSelector(); + var MetricReader = class { + constructor(options2) { + var _a, _b, _c; + this._shutdown = false; + this._aggregationSelector = (_a = options2 === null || options2 === void 0 ? void 0 : options2.aggregationSelector) !== null && _a !== void 0 ? _a : AggregationSelector_1.DEFAULT_AGGREGATION_SELECTOR; + this._aggregationTemporalitySelector = (_b = options2 === null || options2 === void 0 ? void 0 : options2.aggregationTemporalitySelector) !== null && _b !== void 0 ? _b : AggregationSelector_1.DEFAULT_AGGREGATION_TEMPORALITY_SELECTOR; + this._metricProducers = (_c = options2 === null || options2 === void 0 ? void 0 : options2.metricProducers) !== null && _c !== void 0 ? _c : []; + } + /** + * Set the {@link MetricProducer} used by this instance. **This should only be called by the + * SDK and should be considered internal.** + * + * To add additional {@link MetricProducer}s to a {@link MetricReader}, pass them to the + * constructor as {@link MetricReaderOptions.metricProducers}. + * + * @internal + * @param metricProducer + */ + setMetricProducer(metricProducer) { + if (this._sdkMetricProducer) { + throw new Error("MetricReader can not be bound to a MeterProvider again."); + } + this._sdkMetricProducer = metricProducer; + this.onInitialized(); + } + /** + * Select the {@link Aggregation} for the given {@link InstrumentType} for this + * reader. + */ + selectAggregation(instrumentType) { + return this._aggregationSelector(instrumentType); + } + /** + * Select the {@link AggregationTemporality} for the given + * {@link InstrumentType} for this reader. + */ + selectAggregationTemporality(instrumentType) { + return this._aggregationTemporalitySelector(instrumentType); + } + /** + * Handle once the SDK has initialized this {@link MetricReader} + * Overriding this method is optional. + */ + onInitialized() { + } + /** + * Collect all metrics from the associated {@link MetricProducer} + */ + async collect(options2) { + if (this._sdkMetricProducer === void 0) { + throw new Error("MetricReader is not bound to a MetricProducer"); + } + if (this._shutdown) { + throw new Error("MetricReader is shutdown"); + } + const [sdkCollectionResults, ...additionalCollectionResults] = await Promise.all([ + this._sdkMetricProducer.collect({ + timeoutMillis: options2 === null || options2 === void 0 ? void 0 : options2.timeoutMillis + }), + ...this._metricProducers.map((producer) => producer.collect({ + timeoutMillis: options2 === null || options2 === void 0 ? void 0 : options2.timeoutMillis + })) + ]); + const errors = sdkCollectionResults.errors.concat((0, utils_1.FlatMap)(additionalCollectionResults, (result) => result.errors)); + const resource = sdkCollectionResults.resourceMetrics.resource; + const scopeMetrics = sdkCollectionResults.resourceMetrics.scopeMetrics.concat((0, utils_1.FlatMap)(additionalCollectionResults, (result) => result.resourceMetrics.scopeMetrics)); + return { + resourceMetrics: { + resource, + scopeMetrics + }, + errors + }; + } + /** + * Shuts down the metric reader, the promise will reject after the optional timeout or resolve after completion. + * + *

NOTE: this operation will continue even after the promise rejects due to a timeout. + * @param options options with timeout. + */ + async shutdown(options2) { + if (this._shutdown) { + api.diag.error("Cannot call shutdown twice."); + return; + } + if ((options2 === null || options2 === void 0 ? void 0 : options2.timeoutMillis) == null) { + await this.onShutdown(); + } else { + await (0, utils_1.callWithTimeout)(this.onShutdown(), options2.timeoutMillis); + } + this._shutdown = true; + } + /** + * Flushes metrics read by this reader, the promise will reject after the optional timeout or resolve after completion. + * + *

NOTE: this operation will continue even after the promise rejects due to a timeout. + * @param options options with timeout. + */ + async forceFlush(options2) { + if (this._shutdown) { + api.diag.warn("Cannot forceFlush on already shutdown MetricReader."); + return; + } + if ((options2 === null || options2 === void 0 ? void 0 : options2.timeoutMillis) == null) { + await this.onForceFlush(); + return; + } + await (0, utils_1.callWithTimeout)(this.onForceFlush(), options2.timeoutMillis); + } + }; + exports2.MetricReader = MetricReader; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/PeriodicExportingMetricReader.js +var require_PeriodicExportingMetricReader = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/PeriodicExportingMetricReader.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.PeriodicExportingMetricReader = void 0; + var api = require_src(); + var core_1 = require_src5(); + var MetricReader_1 = require_MetricReader(); + var utils_1 = require_utils8(); + var api_1 = require_src(); + var PeriodicExportingMetricReader = class extends MetricReader_1.MetricReader { + constructor(options2) { + var _a, _b, _c, _d; + super({ + aggregationSelector: (_a = options2.exporter.selectAggregation) === null || _a === void 0 ? void 0 : _a.bind(options2.exporter), + aggregationTemporalitySelector: (_b = options2.exporter.selectAggregationTemporality) === null || _b === void 0 ? void 0 : _b.bind(options2.exporter), + metricProducers: options2.metricProducers + }); + if (options2.exportIntervalMillis !== void 0 && options2.exportIntervalMillis <= 0) { + throw Error("exportIntervalMillis must be greater than 0"); + } + if (options2.exportTimeoutMillis !== void 0 && options2.exportTimeoutMillis <= 0) { + throw Error("exportTimeoutMillis must be greater than 0"); + } + if (options2.exportTimeoutMillis !== void 0 && options2.exportIntervalMillis !== void 0 && options2.exportIntervalMillis < options2.exportTimeoutMillis) { + throw Error("exportIntervalMillis must be greater than or equal to exportTimeoutMillis"); + } + this._exportInterval = (_c = options2.exportIntervalMillis) !== null && _c !== void 0 ? _c : 6e4; + this._exportTimeout = (_d = options2.exportTimeoutMillis) !== null && _d !== void 0 ? _d : 3e4; + this._exporter = options2.exporter; + } + async _runOnce() { + try { + await (0, utils_1.callWithTimeout)(this._doRun(), this._exportTimeout); + } catch (err2) { + if (err2 instanceof utils_1.TimeoutError) { + api.diag.error("Export took longer than %s milliseconds and timed out.", this._exportTimeout); + return; + } + (0, core_1.globalErrorHandler)(err2); + } + } + async _doRun() { + var _a, _b; + const { resourceMetrics, errors } = await this.collect({ + timeoutMillis: this._exportTimeout + }); + if (errors.length > 0) { + api.diag.error("PeriodicExportingMetricReader: metrics collection errors", ...errors); + } + const doExport = async () => { + const result = await core_1.internal._export(this._exporter, resourceMetrics); + if (result.code !== core_1.ExportResultCode.SUCCESS) { + throw new Error(`PeriodicExportingMetricReader: metrics export failed (error ${result.error})`); + } + }; + if (resourceMetrics.resource.asyncAttributesPending) { + (_b = (_a = resourceMetrics.resource).waitForAsyncAttributes) === null || _b === void 0 ? void 0 : _b.call(_a).then(doExport, (err2) => api_1.diag.debug("Error while resolving async portion of resource: ", err2)); + } else { + await doExport(); + } + } + onInitialized() { + this._interval = setInterval(() => { + void this._runOnce(); + }, this._exportInterval); + (0, core_1.unrefTimer)(this._interval); + } + async onForceFlush() { + await this._runOnce(); + await this._exporter.forceFlush(); + } + async onShutdown() { + if (this._interval) { + clearInterval(this._interval); + } + await this._exporter.shutdown(); + } + }; + exports2.PeriodicExportingMetricReader = PeriodicExportingMetricReader; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/InMemoryMetricExporter.js +var require_InMemoryMetricExporter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/InMemoryMetricExporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.InMemoryMetricExporter = void 0; + var core_1 = require_src5(); + var InMemoryMetricExporter = class { + constructor(aggregationTemporality) { + this._shutdown = false; + this._metrics = []; + this._aggregationTemporality = aggregationTemporality; + } + /** + * @inheritedDoc + */ + export(metrics, resultCallback) { + if (this._shutdown) { + setTimeout(() => resultCallback({ code: core_1.ExportResultCode.FAILED }), 0); + return; + } + this._metrics.push(metrics); + setTimeout(() => resultCallback({ code: core_1.ExportResultCode.SUCCESS }), 0); + } + /** + * Returns all the collected resource metrics + * @returns ResourceMetrics[] + */ + getMetrics() { + return this._metrics; + } + forceFlush() { + return Promise.resolve(); + } + reset() { + this._metrics = []; + } + selectAggregationTemporality(_instrumentType) { + return this._aggregationTemporality; + } + shutdown() { + this._shutdown = true; + return Promise.resolve(); + } + }; + exports2.InMemoryMetricExporter = InMemoryMetricExporter; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/ConsoleMetricExporter.js +var require_ConsoleMetricExporter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/export/ConsoleMetricExporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ConsoleMetricExporter = void 0; + var core_1 = require_src5(); + var AggregationSelector_1 = require_AggregationSelector(); + var ConsoleMetricExporter = class _ConsoleMetricExporter { + constructor(options2) { + var _a; + this._shutdown = false; + this._temporalitySelector = (_a = options2 === null || options2 === void 0 ? void 0 : options2.temporalitySelector) !== null && _a !== void 0 ? _a : AggregationSelector_1.DEFAULT_AGGREGATION_TEMPORALITY_SELECTOR; + } + export(metrics, resultCallback) { + if (this._shutdown) { + setImmediate(resultCallback, { code: core_1.ExportResultCode.FAILED }); + return; + } + return _ConsoleMetricExporter._sendMetrics(metrics, resultCallback); + } + forceFlush() { + return Promise.resolve(); + } + selectAggregationTemporality(_instrumentType) { + return this._temporalitySelector(_instrumentType); + } + shutdown() { + this._shutdown = true; + return Promise.resolve(); + } + static _sendMetrics(metrics, done) { + for (const scopeMetrics of metrics.scopeMetrics) { + for (const metric of scopeMetrics.metrics) { + console.dir({ + descriptor: metric.descriptor, + dataPointType: metric.dataPointType, + dataPoints: metric.dataPoints + }); + } + } + done({ code: core_1.ExportResultCode.SUCCESS }); + } + }; + exports2.ConsoleMetricExporter = ConsoleMetricExporter; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/default-service-name.js +var require_default_service_name = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/default-service-name.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.defaultServiceName = void 0; + function defaultServiceName() { + return `unknown_service:${process.argv0}`; + } + exports2.defaultServiceName = defaultServiceName; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/utils.js +var require_utils9 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.normalizeType = exports2.normalizeArch = void 0; + var normalizeArch = (nodeArchString) => { + switch (nodeArchString) { + case "arm": + return "arm32"; + case "ppc": + return "ppc32"; + case "x64": + return "amd64"; + default: + return nodeArchString; + } + }; + exports2.normalizeArch = normalizeArch; + var normalizeType = (nodePlatform) => { + switch (nodePlatform) { + case "sunos": + return "solaris"; + case "win32": + return "windows"; + default: + return nodePlatform; + } + }; + exports2.normalizeType = normalizeType; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/execAsync.js +var require_execAsync = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/execAsync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.execAsync = void 0; + var child_process2 = require("child_process"); + var util2 = require("util"); + exports2.execAsync = util2.promisify(child_process2.exec); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId-darwin.js +var require_getMachineId_darwin = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId-darwin.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getMachineId = void 0; + var execAsync_1 = require_execAsync(); + var api_1 = require_src(); + async function getMachineId() { + try { + const result = await (0, execAsync_1.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"'); + const idLine = result.stdout.split("\n").find((line) => line.includes("IOPlatformUUID")); + if (!idLine) { + return ""; + } + const parts = idLine.split('" = "'); + if (parts.length === 2) { + return parts[1].slice(0, -1); + } + } catch (e) { + api_1.diag.debug(`error reading machine id: ${e}`); + } + return ""; + } + exports2.getMachineId = getMachineId; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId-linux.js +var require_getMachineId_linux = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId-linux.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getMachineId = void 0; + var fs_1 = require("fs"); + var api_1 = require_src(); + async function getMachineId() { + const paths = ["/etc/machine-id", "/var/lib/dbus/machine-id"]; + for (const path30 of paths) { + try { + const result = await fs_1.promises.readFile(path30, { encoding: "utf8" }); + return result.trim(); + } catch (e) { + api_1.diag.debug(`error reading machine id: ${e}`); + } + } + return ""; + } + exports2.getMachineId = getMachineId; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId-bsd.js +var require_getMachineId_bsd = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId-bsd.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getMachineId = void 0; + var fs_1 = require("fs"); + var execAsync_1 = require_execAsync(); + var api_1 = require_src(); + async function getMachineId() { + try { + const result = await fs_1.promises.readFile("/etc/hostid", { encoding: "utf8" }); + return result.trim(); + } catch (e) { + api_1.diag.debug(`error reading machine id: ${e}`); + } + try { + const result = await (0, execAsync_1.execAsync)("kenv -q smbios.system.uuid"); + return result.stdout.trim(); + } catch (e) { + api_1.diag.debug(`error reading machine id: ${e}`); + } + return ""; + } + exports2.getMachineId = getMachineId; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId-win.js +var require_getMachineId_win = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId-win.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getMachineId = void 0; + var process3 = require("process"); + var execAsync_1 = require_execAsync(); + var api_1 = require_src(); + async function getMachineId() { + const args3 = "QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid"; + let command = "%windir%\\System32\\REG.exe"; + if (process3.arch === "ia32" && "PROCESSOR_ARCHITEW6432" in process3.env) { + command = "%windir%\\sysnative\\cmd.exe /c " + command; + } + try { + const result = await (0, execAsync_1.execAsync)(`${command} ${args3}`); + const parts = result.stdout.split("REG_SZ"); + if (parts.length === 2) { + return parts[1].trim(); + } + } catch (e) { + api_1.diag.debug(`error reading machine id: ${e}`); + } + return ""; + } + exports2.getMachineId = getMachineId; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId-unsupported.js +var require_getMachineId_unsupported = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId-unsupported.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getMachineId = void 0; + var api_1 = require_src(); + async function getMachineId() { + api_1.diag.debug("could not read machine-id: unsupported platform"); + return ""; + } + exports2.getMachineId = getMachineId; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId.js +var require_getMachineId = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/machine-id/getMachineId.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getMachineId = void 0; + var process3 = require("process"); + var getMachineId; + exports2.getMachineId = getMachineId; + switch (process3.platform) { + case "darwin": + exports2.getMachineId = getMachineId = require_getMachineId_darwin().getMachineId; + break; + case "linux": + exports2.getMachineId = getMachineId = require_getMachineId_linux().getMachineId; + break; + case "freebsd": + exports2.getMachineId = getMachineId = require_getMachineId_bsd().getMachineId; + break; + case "win32": + exports2.getMachineId = getMachineId = require_getMachineId_win().getMachineId; + break; + default: + exports2.getMachineId = getMachineId = require_getMachineId_unsupported().getMachineId; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/HostDetectorSync.js +var require_HostDetectorSync = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/HostDetectorSync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.hostDetectorSync = void 0; + var semantic_conventions_1 = require_src4(); + var Resource_1 = require_Resource(); + var os_1 = require("os"); + var utils_1 = require_utils9(); + var getMachineId_1 = require_getMachineId(); + var HostDetectorSync = class { + detect(_config) { + const attributes = { + [semantic_conventions_1.SemanticResourceAttributes.HOST_NAME]: (0, os_1.hostname)(), + [semantic_conventions_1.SemanticResourceAttributes.HOST_ARCH]: (0, utils_1.normalizeArch)((0, os_1.arch)()) + }; + return new Resource_1.Resource(attributes, this._getAsyncAttributes()); + } + _getAsyncAttributes() { + return (0, getMachineId_1.getMachineId)().then((machineId) => { + const attributes = {}; + if (machineId) { + attributes[semantic_conventions_1.SemanticResourceAttributes.HOST_ID] = machineId; + } + return attributes; + }); + } + }; + exports2.hostDetectorSync = new HostDetectorSync(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/HostDetector.js +var require_HostDetector = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/HostDetector.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.hostDetector = void 0; + var HostDetectorSync_1 = require_HostDetectorSync(); + var HostDetector = class { + detect(_config) { + return Promise.resolve(HostDetectorSync_1.hostDetectorSync.detect(_config)); + } + }; + exports2.hostDetector = new HostDetector(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/OSDetectorSync.js +var require_OSDetectorSync = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/OSDetectorSync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.osDetectorSync = void 0; + var semantic_conventions_1 = require_src4(); + var Resource_1 = require_Resource(); + var os_1 = require("os"); + var utils_1 = require_utils9(); + var OSDetectorSync = class { + detect(_config) { + const attributes = { + [semantic_conventions_1.SemanticResourceAttributes.OS_TYPE]: (0, utils_1.normalizeType)((0, os_1.platform)()), + [semantic_conventions_1.SemanticResourceAttributes.OS_VERSION]: (0, os_1.release)() + }; + return new Resource_1.Resource(attributes); + } + }; + exports2.osDetectorSync = new OSDetectorSync(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/OSDetector.js +var require_OSDetector = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/OSDetector.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.osDetector = void 0; + var OSDetectorSync_1 = require_OSDetectorSync(); + var OSDetector = class { + detect(_config) { + return Promise.resolve(OSDetectorSync_1.osDetectorSync.detect(_config)); + } + }; + exports2.osDetector = new OSDetector(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/ProcessDetectorSync.js +var require_ProcessDetectorSync = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/ProcessDetectorSync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.processDetectorSync = void 0; + var api_1 = require_src(); + var semantic_conventions_1 = require_src4(); + var Resource_1 = require_Resource(); + var os8 = require("os"); + var ProcessDetectorSync = class { + detect(_config) { + const attributes = { + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_PID]: process.pid, + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_EXECUTABLE_NAME]: process.title, + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_EXECUTABLE_PATH]: process.execPath, + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_COMMAND_ARGS]: [ + process.argv[0], + ...process.execArgv, + ...process.argv.slice(1) + ], + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]: process.versions.node, + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]: "nodejs", + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]: "Node.js" + }; + if (process.argv.length > 1) { + attributes[semantic_conventions_1.SemanticResourceAttributes.PROCESS_COMMAND] = process.argv[1]; + } + try { + const userInfo = os8.userInfo(); + attributes[semantic_conventions_1.SemanticResourceAttributes.PROCESS_OWNER] = userInfo.username; + } catch (e) { + api_1.diag.debug(`error obtaining process owner: ${e}`); + } + return new Resource_1.Resource(attributes); + } + }; + exports2.processDetectorSync = new ProcessDetectorSync(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/ProcessDetector.js +var require_ProcessDetector = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/ProcessDetector.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.processDetector = void 0; + var ProcessDetectorSync_1 = require_ProcessDetectorSync(); + var ProcessDetector = class { + detect(config) { + return Promise.resolve(ProcessDetectorSync_1.processDetectorSync.detect(config)); + } + }; + exports2.processDetector = new ProcessDetector(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/index.js +var require_node7 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/node/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_default_service_name(), exports2); + __exportStar(require_HostDetector(), exports2); + __exportStar(require_OSDetector(), exports2); + __exportStar(require_HostDetectorSync(), exports2); + __exportStar(require_OSDetectorSync(), exports2); + __exportStar(require_ProcessDetector(), exports2); + __exportStar(require_ProcessDetectorSync(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/index.js +var require_platform4 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/platform/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_node7(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/Resource.js +var require_Resource = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/Resource.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Resource = void 0; + var api_1 = require_src(); + var semantic_conventions_1 = require_src4(); + var core_1 = require_src5(); + var platform_1 = require_platform4(); + var Resource2 = class _Resource { + constructor(attributes, asyncAttributesPromise) { + var _a; + this._attributes = attributes; + this.asyncAttributesPending = asyncAttributesPromise != null; + this._syncAttributes = (_a = this._attributes) !== null && _a !== void 0 ? _a : {}; + this._asyncAttributesPromise = asyncAttributesPromise === null || asyncAttributesPromise === void 0 ? void 0 : asyncAttributesPromise.then((asyncAttributes) => { + this._attributes = Object.assign({}, this._attributes, asyncAttributes); + this.asyncAttributesPending = false; + return asyncAttributes; + }, (err2) => { + api_1.diag.debug("a resource's async attributes promise rejected: %s", err2); + this.asyncAttributesPending = false; + return {}; + }); + } + /** + * Returns an empty Resource + */ + static empty() { + return _Resource.EMPTY; + } + /** + * Returns a Resource that identifies the SDK in use. + */ + static default() { + return new _Resource({ + [semantic_conventions_1.SemanticResourceAttributes.SERVICE_NAME]: (0, platform_1.defaultServiceName)(), + [semantic_conventions_1.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE]: core_1.SDK_INFO[semantic_conventions_1.SemanticResourceAttributes.TELEMETRY_SDK_LANGUAGE], + [semantic_conventions_1.SemanticResourceAttributes.TELEMETRY_SDK_NAME]: core_1.SDK_INFO[semantic_conventions_1.SemanticResourceAttributes.TELEMETRY_SDK_NAME], + [semantic_conventions_1.SemanticResourceAttributes.TELEMETRY_SDK_VERSION]: core_1.SDK_INFO[semantic_conventions_1.SemanticResourceAttributes.TELEMETRY_SDK_VERSION] + }); + } + get attributes() { + var _a; + if (this.asyncAttributesPending) { + api_1.diag.error("Accessing resource attributes before async attributes settled"); + } + return (_a = this._attributes) !== null && _a !== void 0 ? _a : {}; + } + /** + * Returns a promise that will never be rejected. Resolves when all async attributes have finished being added to + * this Resource's attributes. This is useful in exporters to block until resource detection + * has finished. + */ + async waitForAsyncAttributes() { + if (this.asyncAttributesPending) { + await this._asyncAttributesPromise; + } + } + /** + * Returns a new, merged {@link Resource} by merging the current Resource + * with the other Resource. In case of a collision, other Resource takes + * precedence. + * + * @param other the Resource that will be merged with this. + * @returns the newly merged Resource. + */ + merge(other) { + var _a; + if (!other) + return this; + const mergedSyncAttributes = Object.assign(Object.assign({}, this._syncAttributes), (_a = other._syncAttributes) !== null && _a !== void 0 ? _a : other.attributes); + if (!this._asyncAttributesPromise && !other._asyncAttributesPromise) { + return new _Resource(mergedSyncAttributes); + } + const mergedAttributesPromise = Promise.all([ + this._asyncAttributesPromise, + other._asyncAttributesPromise + ]).then(([thisAsyncAttributes, otherAsyncAttributes]) => { + var _a2; + return Object.assign(Object.assign(Object.assign(Object.assign({}, this._syncAttributes), thisAsyncAttributes), (_a2 = other._syncAttributes) !== null && _a2 !== void 0 ? _a2 : other.attributes), otherAsyncAttributes); + }); + return new _Resource(mergedSyncAttributes, mergedAttributesPromise); + } + }; + exports2.Resource = Resource2; + Resource2.EMPTY = new Resource2({}); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/IResource.js +var require_IResource = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/IResource.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/types.js +var require_types13 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/config.js +var require_config2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/config.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detectors/BrowserDetector.js +var require_BrowserDetector = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detectors/BrowserDetector.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.browserDetector = void 0; + var __1 = require_src7(); + var BrowserDetector = class { + detect(config) { + return Promise.resolve(__1.browserDetectorSync.detect(config)); + } + }; + exports2.browserDetector = new BrowserDetector(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detectors/EnvDetectorSync.js +var require_EnvDetectorSync = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detectors/EnvDetectorSync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.envDetectorSync = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var semantic_conventions_1 = require_src4(); + var Resource_1 = require_Resource(); + var EnvDetectorSync = class { + constructor() { + this._MAX_LENGTH = 255; + this._COMMA_SEPARATOR = ","; + this._LABEL_KEY_VALUE_SPLITTER = "="; + this._ERROR_MESSAGE_INVALID_CHARS = "should be a ASCII string with a length greater than 0 and not exceed " + this._MAX_LENGTH + " characters."; + this._ERROR_MESSAGE_INVALID_VALUE = "should be a ASCII string with a length not exceed " + this._MAX_LENGTH + " characters."; + } + /** + * Returns a {@link Resource} populated with attributes from the + * OTEL_RESOURCE_ATTRIBUTES environment variable. Note this is an async + * function to conform to the Detector interface. + * + * @param config The resource detection config + */ + detect(_config) { + const attributes = {}; + const env4 = (0, core_1.getEnv)(); + const rawAttributes = env4.OTEL_RESOURCE_ATTRIBUTES; + const serviceName = env4.OTEL_SERVICE_NAME; + if (rawAttributes) { + try { + const parsedAttributes = this._parseResourceAttributes(rawAttributes); + Object.assign(attributes, parsedAttributes); + } catch (e) { + api_1.diag.debug(`EnvDetector failed: ${e.message}`); + } + } + if (serviceName) { + attributes[semantic_conventions_1.SemanticResourceAttributes.SERVICE_NAME] = serviceName; + } + return new Resource_1.Resource(attributes); + } + /** + * Creates an attribute map from the OTEL_RESOURCE_ATTRIBUTES environment + * variable. + * + * OTEL_RESOURCE_ATTRIBUTES: A comma-separated list of attributes describing + * the source in more detail, e.g. “key1=val1,key2=val2”. Domain names and + * paths are accepted as attribute keys. Values may be quoted or unquoted in + * general. If a value contains whitespaces, =, or " characters, it must + * always be quoted. + * + * @param rawEnvAttributes The resource attributes as a comma-seperated list + * of key/value pairs. + * @returns The sanitized resource attributes. + */ + _parseResourceAttributes(rawEnvAttributes) { + if (!rawEnvAttributes) + return {}; + const attributes = {}; + const rawAttributes = rawEnvAttributes.split(this._COMMA_SEPARATOR, -1); + for (const rawAttribute of rawAttributes) { + const keyValuePair = rawAttribute.split(this._LABEL_KEY_VALUE_SPLITTER, -1); + if (keyValuePair.length !== 2) { + continue; + } + let [key, value] = keyValuePair; + key = key.trim(); + value = value.trim().split(/^"|"$/).join(""); + if (!this._isValidAndNotEmpty(key)) { + throw new Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`); + } + if (!this._isValid(value)) { + throw new Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`); + } + attributes[key] = decodeURIComponent(value); + } + return attributes; + } + /** + * Determines whether the given String is a valid printable ASCII string with + * a length not exceed _MAX_LENGTH characters. + * + * @param str The String to be validated. + * @returns Whether the String is valid. + */ + _isValid(name) { + return name.length <= this._MAX_LENGTH && this._isBaggageOctetString(name); + } + // https://www.w3.org/TR/baggage/#definition + _isBaggageOctetString(str) { + for (let i = 0; i < str.length; i++) { + const ch = str.charCodeAt(i); + if (ch < 33 || ch === 44 || ch === 59 || ch === 92 || ch > 126) { + return false; + } + } + return true; + } + /** + * Determines whether the given String is a valid printable ASCII string with + * a length greater than 0 and not exceed _MAX_LENGTH characters. + * + * @param str The String to be validated. + * @returns Whether the String is valid and not empty. + */ + _isValidAndNotEmpty(str) { + return str.length > 0 && this._isValid(str); + } + }; + exports2.envDetectorSync = new EnvDetectorSync(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detectors/EnvDetector.js +var require_EnvDetector = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detectors/EnvDetector.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.envDetector = void 0; + var EnvDetectorSync_1 = require_EnvDetectorSync(); + var EnvDetector = class { + /** + * Returns a {@link Resource} populated with attributes from the + * OTEL_RESOURCE_ATTRIBUTES environment variable. Note this is an async + * function to conform to the Detector interface. + * + * @param config The resource detection config + */ + detect(config) { + return Promise.resolve(EnvDetectorSync_1.envDetectorSync.detect(config)); + } + }; + exports2.envDetector = new EnvDetector(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detectors/BrowserDetectorSync.js +var require_BrowserDetectorSync = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detectors/BrowserDetectorSync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.browserDetectorSync = void 0; + var semantic_conventions_1 = require_src4(); + var __1 = require_src7(); + var api_1 = require_src(); + var BrowserDetectorSync = class { + detect(config) { + const isBrowser = typeof navigator !== "undefined"; + if (!isBrowser) { + return __1.Resource.empty(); + } + const browserResource = { + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_RUNTIME_NAME]: "browser", + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_RUNTIME_DESCRIPTION]: "Web Browser", + [semantic_conventions_1.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION]: navigator.userAgent + }; + return this._getResourceAttributes(browserResource, config); + } + /** + * Validates process resource attribute map from process variables + * + * @param browserResource The un-sanitized resource attributes from process as key/value pairs. + * @param config: Config + * @returns The sanitized resource attributes. + */ + _getResourceAttributes(browserResource, _config) { + if (browserResource[semantic_conventions_1.SemanticResourceAttributes.PROCESS_RUNTIME_VERSION] === "") { + api_1.diag.debug("BrowserDetector failed: Unable to find required browser resources. "); + return __1.Resource.empty(); + } else { + return new __1.Resource(Object.assign({}, browserResource)); + } + } + }; + exports2.browserDetectorSync = new BrowserDetectorSync(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detectors/index.js +var require_detectors = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detectors/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_BrowserDetector(), exports2); + __exportStar(require_EnvDetector(), exports2); + __exportStar(require_BrowserDetectorSync(), exports2); + __exportStar(require_EnvDetectorSync(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/utils.js +var require_utils10 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isPromiseLike = void 0; + var isPromiseLike = (val) => { + return val !== null && typeof val === "object" && typeof val.then === "function"; + }; + exports2.isPromiseLike = isPromiseLike; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detect-resources.js +var require_detect_resources = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/detect-resources.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.detectResourcesSync = exports2.detectResources = void 0; + var Resource_1 = require_Resource(); + var api_1 = require_src(); + var utils_1 = require_utils10(); + var detectResources = async (config = {}) => { + const resources = await Promise.all((config.detectors || []).map(async (d) => { + try { + const resource = await d.detect(config); + api_1.diag.debug(`${d.constructor.name} found resource.`, resource); + return resource; + } catch (e) { + api_1.diag.debug(`${d.constructor.name} failed: ${e.message}`); + return Resource_1.Resource.empty(); + } + })); + logResources(resources); + return resources.reduce((acc, resource) => acc.merge(resource), Resource_1.Resource.empty()); + }; + exports2.detectResources = detectResources; + var detectResourcesSync = (config = {}) => { + var _a; + const resources = ((_a = config.detectors) !== null && _a !== void 0 ? _a : []).map((d) => { + try { + const resourceOrPromise = d.detect(config); + let resource; + if ((0, utils_1.isPromiseLike)(resourceOrPromise)) { + const createPromise = async () => { + const resolvedResource = await resourceOrPromise; + return resolvedResource.attributes; + }; + resource = new Resource_1.Resource({}, createPromise()); + } else { + resource = resourceOrPromise; + } + if (resource.waitForAsyncAttributes) { + void resource.waitForAsyncAttributes().then(() => api_1.diag.debug(`${d.constructor.name} found resource.`, resource)); + } else { + api_1.diag.debug(`${d.constructor.name} found resource.`, resource); + } + return resource; + } catch (e) { + api_1.diag.error(`${d.constructor.name} failed: ${e.message}`); + return Resource_1.Resource.empty(); + } + }); + const mergedResources = resources.reduce((acc, resource) => acc.merge(resource), Resource_1.Resource.empty()); + if (mergedResources.waitForAsyncAttributes) { + void mergedResources.waitForAsyncAttributes().then(() => { + logResources(resources); + }); + } + return mergedResources; + }; + exports2.detectResourcesSync = detectResourcesSync; + var logResources = (resources) => { + resources.forEach((resource) => { + if (Object.keys(resource.attributes).length > 0) { + const resourceDebugString = JSON.stringify(resource.attributes, null, 4); + api_1.diag.verbose(resourceDebugString); + } + }); + }; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/index.js +var require_src7 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+resources@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/resources/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_Resource(), exports2); + __exportStar(require_IResource(), exports2); + __exportStar(require_platform4(), exports2); + __exportStar(require_types13(), exports2); + __exportStar(require_config2(), exports2); + __exportStar(require_detectors(), exports2); + __exportStar(require_detect_resources(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/ViewRegistry.js +var require_ViewRegistry = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/ViewRegistry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ViewRegistry = void 0; + var ViewRegistry = class { + constructor() { + this._registeredViews = []; + } + addView(view) { + this._registeredViews.push(view); + } + findViews(instrument, meter) { + const views = this._registeredViews.filter((registeredView) => { + return this._matchInstrument(registeredView.instrumentSelector, instrument) && this._matchMeter(registeredView.meterSelector, meter); + }); + return views; + } + _matchInstrument(selector, instrument) { + return (selector.getType() === void 0 || instrument.type === selector.getType()) && selector.getNameFilter().match(instrument.name) && selector.getUnitFilter().match(instrument.unit); + } + _matchMeter(selector, meter) { + return selector.getNameFilter().match(meter.name) && (meter.version === void 0 || selector.getVersionFilter().match(meter.version)) && (meter.schemaUrl === void 0 || selector.getSchemaUrlFilter().match(meter.schemaUrl)); + } + }; + exports2.ViewRegistry = ViewRegistry; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/Instruments.js +var require_Instruments = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/Instruments.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isObservableInstrument = exports2.ObservableUpDownCounterInstrument = exports2.ObservableGaugeInstrument = exports2.ObservableCounterInstrument = exports2.ObservableInstrument = exports2.HistogramInstrument = exports2.CounterInstrument = exports2.UpDownCounterInstrument = exports2.SyncInstrument = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var SyncInstrument = class { + constructor(_writableMetricStorage, _descriptor) { + this._writableMetricStorage = _writableMetricStorage; + this._descriptor = _descriptor; + } + _record(value, attributes = {}, context2 = api_1.context.active()) { + if (typeof value !== "number") { + api_1.diag.warn(`non-number value provided to metric ${this._descriptor.name}: ${value}`); + return; + } + if (this._descriptor.valueType === api_1.ValueType.INT && !Number.isInteger(value)) { + api_1.diag.warn(`INT value type cannot accept a floating-point value for ${this._descriptor.name}, ignoring the fractional digits.`); + value = Math.trunc(value); + if (!Number.isInteger(value)) { + return; + } + } + this._writableMetricStorage.record(value, attributes, context2, (0, core_1.millisToHrTime)(Date.now())); + } + }; + exports2.SyncInstrument = SyncInstrument; + var UpDownCounterInstrument = class extends SyncInstrument { + /** + * Increment value of counter by the input. Inputs may be negative. + */ + add(value, attributes, ctx) { + this._record(value, attributes, ctx); + } + }; + exports2.UpDownCounterInstrument = UpDownCounterInstrument; + var CounterInstrument = class extends SyncInstrument { + /** + * Increment value of counter by the input. Inputs may not be negative. + */ + add(value, attributes, ctx) { + if (value < 0) { + api_1.diag.warn(`negative value provided to counter ${this._descriptor.name}: ${value}`); + return; + } + this._record(value, attributes, ctx); + } + }; + exports2.CounterInstrument = CounterInstrument; + var HistogramInstrument = class extends SyncInstrument { + /** + * Records a measurement. Value of the measurement must not be negative. + */ + record(value, attributes, ctx) { + if (value < 0) { + api_1.diag.warn(`negative value provided to histogram ${this._descriptor.name}: ${value}`); + return; + } + this._record(value, attributes, ctx); + } + }; + exports2.HistogramInstrument = HistogramInstrument; + var ObservableInstrument = class { + constructor(descriptor, metricStorages, _observableRegistry) { + this._observableRegistry = _observableRegistry; + this._descriptor = descriptor; + this._metricStorages = metricStorages; + } + /** + * @see {Observable.addCallback} + */ + addCallback(callback) { + this._observableRegistry.addCallback(callback, this); + } + /** + * @see {Observable.removeCallback} + */ + removeCallback(callback) { + this._observableRegistry.removeCallback(callback, this); + } + }; + exports2.ObservableInstrument = ObservableInstrument; + var ObservableCounterInstrument = class extends ObservableInstrument { + }; + exports2.ObservableCounterInstrument = ObservableCounterInstrument; + var ObservableGaugeInstrument = class extends ObservableInstrument { + }; + exports2.ObservableGaugeInstrument = ObservableGaugeInstrument; + var ObservableUpDownCounterInstrument = class extends ObservableInstrument { + }; + exports2.ObservableUpDownCounterInstrument = ObservableUpDownCounterInstrument; + function isObservableInstrument(it) { + return it instanceof ObservableInstrument; + } + exports2.isObservableInstrument = isObservableInstrument; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/Meter.js +var require_Meter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/Meter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Meter = void 0; + var InstrumentDescriptor_1 = require_InstrumentDescriptor(); + var Instruments_1 = require_Instruments(); + var Meter = class { + constructor(_meterSharedState) { + this._meterSharedState = _meterSharedState; + } + /** + * Create a {@link Histogram} instrument. + */ + createHistogram(name, options2) { + const descriptor = (0, InstrumentDescriptor_1.createInstrumentDescriptor)(name, InstrumentDescriptor_1.InstrumentType.HISTOGRAM, options2); + const storage = this._meterSharedState.registerMetricStorage(descriptor); + return new Instruments_1.HistogramInstrument(storage, descriptor); + } + /** + * Create a {@link Counter} instrument. + */ + createCounter(name, options2) { + const descriptor = (0, InstrumentDescriptor_1.createInstrumentDescriptor)(name, InstrumentDescriptor_1.InstrumentType.COUNTER, options2); + const storage = this._meterSharedState.registerMetricStorage(descriptor); + return new Instruments_1.CounterInstrument(storage, descriptor); + } + /** + * Create a {@link UpDownCounter} instrument. + */ + createUpDownCounter(name, options2) { + const descriptor = (0, InstrumentDescriptor_1.createInstrumentDescriptor)(name, InstrumentDescriptor_1.InstrumentType.UP_DOWN_COUNTER, options2); + const storage = this._meterSharedState.registerMetricStorage(descriptor); + return new Instruments_1.UpDownCounterInstrument(storage, descriptor); + } + /** + * Create a {@link ObservableGauge} instrument. + */ + createObservableGauge(name, options2) { + const descriptor = (0, InstrumentDescriptor_1.createInstrumentDescriptor)(name, InstrumentDescriptor_1.InstrumentType.OBSERVABLE_GAUGE, options2); + const storages = this._meterSharedState.registerAsyncMetricStorage(descriptor); + return new Instruments_1.ObservableGaugeInstrument(descriptor, storages, this._meterSharedState.observableRegistry); + } + /** + * Create a {@link ObservableCounter} instrument. + */ + createObservableCounter(name, options2) { + const descriptor = (0, InstrumentDescriptor_1.createInstrumentDescriptor)(name, InstrumentDescriptor_1.InstrumentType.OBSERVABLE_COUNTER, options2); + const storages = this._meterSharedState.registerAsyncMetricStorage(descriptor); + return new Instruments_1.ObservableCounterInstrument(descriptor, storages, this._meterSharedState.observableRegistry); + } + /** + * Create a {@link ObservableUpDownCounter} instrument. + */ + createObservableUpDownCounter(name, options2) { + const descriptor = (0, InstrumentDescriptor_1.createInstrumentDescriptor)(name, InstrumentDescriptor_1.InstrumentType.OBSERVABLE_UP_DOWN_COUNTER, options2); + const storages = this._meterSharedState.registerAsyncMetricStorage(descriptor); + return new Instruments_1.ObservableUpDownCounterInstrument(descriptor, storages, this._meterSharedState.observableRegistry); + } + /** + * @see {@link Meter.addBatchObservableCallback} + */ + addBatchObservableCallback(callback, observables) { + this._meterSharedState.observableRegistry.addBatchCallback(callback, observables); + } + /** + * @see {@link Meter.removeBatchObservableCallback} + */ + removeBatchObservableCallback(callback, observables) { + this._meterSharedState.observableRegistry.removeBatchCallback(callback, observables); + } + }; + exports2.Meter = Meter; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricStorage.js +var require_MetricStorage = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricStorage.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MetricStorage = void 0; + var InstrumentDescriptor_1 = require_InstrumentDescriptor(); + var MetricStorage = class { + constructor(_instrumentDescriptor) { + this._instrumentDescriptor = _instrumentDescriptor; + } + getInstrumentDescriptor() { + return this._instrumentDescriptor; + } + updateDescription(description) { + this._instrumentDescriptor = (0, InstrumentDescriptor_1.createInstrumentDescriptor)(this._instrumentDescriptor.name, this._instrumentDescriptor.type, { + description, + valueType: this._instrumentDescriptor.valueType, + unit: this._instrumentDescriptor.unit, + advice: this._instrumentDescriptor.advice + }); + } + }; + exports2.MetricStorage = MetricStorage; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/HashMap.js +var require_HashMap = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/HashMap.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AttributeHashMap = exports2.HashMap = void 0; + var utils_1 = require_utils8(); + var HashMap = class { + constructor(_hash) { + this._hash = _hash; + this._valueMap = /* @__PURE__ */ new Map(); + this._keyMap = /* @__PURE__ */ new Map(); + } + get(key, hashCode) { + hashCode !== null && hashCode !== void 0 ? hashCode : hashCode = this._hash(key); + return this._valueMap.get(hashCode); + } + getOrDefault(key, defaultFactory) { + const hash = this._hash(key); + if (this._valueMap.has(hash)) { + return this._valueMap.get(hash); + } + const val = defaultFactory(); + if (!this._keyMap.has(hash)) { + this._keyMap.set(hash, key); + } + this._valueMap.set(hash, val); + return val; + } + set(key, value, hashCode) { + hashCode !== null && hashCode !== void 0 ? hashCode : hashCode = this._hash(key); + if (!this._keyMap.has(hashCode)) { + this._keyMap.set(hashCode, key); + } + this._valueMap.set(hashCode, value); + } + has(key, hashCode) { + hashCode !== null && hashCode !== void 0 ? hashCode : hashCode = this._hash(key); + return this._valueMap.has(hashCode); + } + *keys() { + const keyIterator = this._keyMap.entries(); + let next = keyIterator.next(); + while (next.done !== true) { + yield [next.value[1], next.value[0]]; + next = keyIterator.next(); + } + } + *entries() { + const valueIterator = this._valueMap.entries(); + let next = valueIterator.next(); + while (next.done !== true) { + yield [this._keyMap.get(next.value[0]), next.value[1], next.value[0]]; + next = valueIterator.next(); + } + } + get size() { + return this._valueMap.size; + } + }; + exports2.HashMap = HashMap; + var AttributeHashMap = class extends HashMap { + constructor() { + super(utils_1.hashAttributes); + } + }; + exports2.AttributeHashMap = AttributeHashMap; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/DeltaMetricProcessor.js +var require_DeltaMetricProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/DeltaMetricProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DeltaMetricProcessor = void 0; + var HashMap_1 = require_HashMap(); + var DeltaMetricProcessor = class { + constructor(_aggregator) { + this._aggregator = _aggregator; + this._activeCollectionStorage = new HashMap_1.AttributeHashMap(); + this._cumulativeMemoStorage = new HashMap_1.AttributeHashMap(); + } + record(value, attributes, _context, collectionTime) { + const accumulation = this._activeCollectionStorage.getOrDefault(attributes, () => this._aggregator.createAccumulation(collectionTime)); + accumulation === null || accumulation === void 0 ? void 0 : accumulation.record(value); + } + batchCumulate(measurements, collectionTime) { + Array.from(measurements.entries()).forEach(([attributes, value, hashCode]) => { + const accumulation = this._aggregator.createAccumulation(collectionTime); + accumulation === null || accumulation === void 0 ? void 0 : accumulation.record(value); + let delta = accumulation; + if (this._cumulativeMemoStorage.has(attributes, hashCode)) { + const previous = this._cumulativeMemoStorage.get(attributes, hashCode); + delta = this._aggregator.diff(previous, accumulation); + } + if (this._activeCollectionStorage.has(attributes, hashCode)) { + const active = this._activeCollectionStorage.get(attributes, hashCode); + delta = this._aggregator.merge(active, delta); + } + this._cumulativeMemoStorage.set(attributes, accumulation, hashCode); + this._activeCollectionStorage.set(attributes, delta, hashCode); + }); + } + /** + * Returns a collection of delta metrics. Start time is the when first + * time event collected. + */ + collect() { + const unreportedDelta = this._activeCollectionStorage; + this._activeCollectionStorage = new HashMap_1.AttributeHashMap(); + return unreportedDelta; + } + }; + exports2.DeltaMetricProcessor = DeltaMetricProcessor; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/TemporalMetricProcessor.js +var require_TemporalMetricProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/TemporalMetricProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TemporalMetricProcessor = void 0; + var AggregationTemporality_1 = require_AggregationTemporality(); + var HashMap_1 = require_HashMap(); + var TemporalMetricProcessor = class _TemporalMetricProcessor { + constructor(_aggregator, collectorHandles) { + this._aggregator = _aggregator; + this._unreportedAccumulations = /* @__PURE__ */ new Map(); + this._reportHistory = /* @__PURE__ */ new Map(); + collectorHandles.forEach((handle2) => { + this._unreportedAccumulations.set(handle2, []); + }); + } + /** + * Builds the {@link MetricData} streams to report against a specific MetricCollector. + * @param collector The information of the MetricCollector. + * @param collectors The registered collectors. + * @param instrumentDescriptor The instrumentation descriptor that these metrics generated with. + * @param currentAccumulations The current accumulation of metric data from instruments. + * @param collectionTime The current collection timestamp. + * @returns The {@link MetricData} points or `null`. + */ + buildMetrics(collector, instrumentDescriptor, currentAccumulations, collectionTime) { + this._stashAccumulations(currentAccumulations); + const unreportedAccumulations = this._getMergedUnreportedAccumulations(collector); + let result = unreportedAccumulations; + let aggregationTemporality; + if (this._reportHistory.has(collector)) { + const last = this._reportHistory.get(collector); + const lastCollectionTime = last.collectionTime; + aggregationTemporality = last.aggregationTemporality; + if (aggregationTemporality === AggregationTemporality_1.AggregationTemporality.CUMULATIVE) { + result = _TemporalMetricProcessor.merge(last.accumulations, unreportedAccumulations, this._aggregator); + } else { + result = _TemporalMetricProcessor.calibrateStartTime(last.accumulations, unreportedAccumulations, lastCollectionTime); + } + } else { + aggregationTemporality = collector.selectAggregationTemporality(instrumentDescriptor.type); + } + this._reportHistory.set(collector, { + accumulations: result, + collectionTime, + aggregationTemporality + }); + const accumulationRecords = AttributesMapToAccumulationRecords(result); + if (accumulationRecords.length === 0) { + return void 0; + } + return this._aggregator.toMetricData( + instrumentDescriptor, + aggregationTemporality, + accumulationRecords, + /* endTime */ + collectionTime + ); + } + _stashAccumulations(currentAccumulation) { + const registeredCollectors = this._unreportedAccumulations.keys(); + for (const collector of registeredCollectors) { + let stash = this._unreportedAccumulations.get(collector); + if (stash === void 0) { + stash = []; + this._unreportedAccumulations.set(collector, stash); + } + stash.push(currentAccumulation); + } + } + _getMergedUnreportedAccumulations(collector) { + let result = new HashMap_1.AttributeHashMap(); + const unreportedList = this._unreportedAccumulations.get(collector); + this._unreportedAccumulations.set(collector, []); + if (unreportedList === void 0) { + return result; + } + for (const it of unreportedList) { + result = _TemporalMetricProcessor.merge(result, it, this._aggregator); + } + return result; + } + static merge(last, current, aggregator) { + const result = last; + const iterator = current.entries(); + let next = iterator.next(); + while (next.done !== true) { + const [key, record, hash] = next.value; + if (last.has(key, hash)) { + const lastAccumulation = last.get(key, hash); + const accumulation = aggregator.merge(lastAccumulation, record); + result.set(key, accumulation, hash); + } else { + result.set(key, record, hash); + } + next = iterator.next(); + } + return result; + } + /** + * Calibrate the reported metric streams' startTime to lastCollectionTime. Leaves + * the new stream to be the initial observation time unchanged. + */ + static calibrateStartTime(last, current, lastCollectionTime) { + for (const [key, hash] of last.keys()) { + const currentAccumulation = current.get(key, hash); + currentAccumulation === null || currentAccumulation === void 0 ? void 0 : currentAccumulation.setStartTime(lastCollectionTime); + } + return current; + } + }; + exports2.TemporalMetricProcessor = TemporalMetricProcessor; + function AttributesMapToAccumulationRecords(map) { + return Array.from(map.entries()); + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/AsyncMetricStorage.js +var require_AsyncMetricStorage = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/AsyncMetricStorage.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsyncMetricStorage = void 0; + var MetricStorage_1 = require_MetricStorage(); + var DeltaMetricProcessor_1 = require_DeltaMetricProcessor(); + var TemporalMetricProcessor_1 = require_TemporalMetricProcessor(); + var HashMap_1 = require_HashMap(); + var AsyncMetricStorage = class extends MetricStorage_1.MetricStorage { + constructor(_instrumentDescriptor, aggregator, _attributesProcessor, collectorHandles) { + super(_instrumentDescriptor); + this._attributesProcessor = _attributesProcessor; + this._deltaMetricStorage = new DeltaMetricProcessor_1.DeltaMetricProcessor(aggregator); + this._temporalMetricStorage = new TemporalMetricProcessor_1.TemporalMetricProcessor(aggregator, collectorHandles); + } + record(measurements, observationTime) { + const processed = new HashMap_1.AttributeHashMap(); + Array.from(measurements.entries()).forEach(([attributes, value]) => { + processed.set(this._attributesProcessor.process(attributes), value); + }); + this._deltaMetricStorage.batchCumulate(processed, observationTime); + } + /** + * Collects the metrics from this storage. The ObservableCallback is invoked + * during the collection. + * + * Note: This is a stateful operation and may reset any interval-related + * state for the MetricCollector. + */ + collect(collector, collectionTime) { + const accumulations = this._deltaMetricStorage.collect(); + return this._temporalMetricStorage.buildMetrics(collector, this._instrumentDescriptor, accumulations, collectionTime); + } + }; + exports2.AsyncMetricStorage = AsyncMetricStorage; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/RegistrationConflicts.js +var require_RegistrationConflicts = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/RegistrationConflicts.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getConflictResolutionRecipe = exports2.getDescriptionResolutionRecipe = exports2.getTypeConflictResolutionRecipe = exports2.getUnitConflictResolutionRecipe = exports2.getValueTypeConflictResolutionRecipe = exports2.getIncompatibilityDetails = void 0; + function getIncompatibilityDetails(existing, otherDescriptor) { + let incompatibility = ""; + if (existing.unit !== otherDescriptor.unit) { + incompatibility += ` - Unit '${existing.unit}' does not match '${otherDescriptor.unit}' +`; + } + if (existing.type !== otherDescriptor.type) { + incompatibility += ` - Type '${existing.type}' does not match '${otherDescriptor.type}' +`; + } + if (existing.valueType !== otherDescriptor.valueType) { + incompatibility += ` - Value Type '${existing.valueType}' does not match '${otherDescriptor.valueType}' +`; + } + if (existing.description !== otherDescriptor.description) { + incompatibility += ` - Description '${existing.description}' does not match '${otherDescriptor.description}' +`; + } + return incompatibility; + } + exports2.getIncompatibilityDetails = getIncompatibilityDetails; + function getValueTypeConflictResolutionRecipe(existing, otherDescriptor) { + return ` - use valueType '${existing.valueType}' on instrument creation or use an instrument name other than '${otherDescriptor.name}'`; + } + exports2.getValueTypeConflictResolutionRecipe = getValueTypeConflictResolutionRecipe; + function getUnitConflictResolutionRecipe(existing, otherDescriptor) { + return ` - use unit '${existing.unit}' on instrument creation or use an instrument name other than '${otherDescriptor.name}'`; + } + exports2.getUnitConflictResolutionRecipe = getUnitConflictResolutionRecipe; + function getTypeConflictResolutionRecipe(existing, otherDescriptor) { + const selector = { + name: otherDescriptor.name, + type: otherDescriptor.type, + unit: otherDescriptor.unit + }; + const selectorString = JSON.stringify(selector); + return ` - create a new view with a name other than '${existing.name}' and InstrumentSelector '${selectorString}'`; + } + exports2.getTypeConflictResolutionRecipe = getTypeConflictResolutionRecipe; + function getDescriptionResolutionRecipe(existing, otherDescriptor) { + const selector = { + name: otherDescriptor.name, + type: otherDescriptor.type, + unit: otherDescriptor.unit + }; + const selectorString = JSON.stringify(selector); + return ` - create a new view with a name other than '${existing.name}' and InstrumentSelector '${selectorString}' + - OR - create a new view with the name ${existing.name} and description '${existing.description}' and InstrumentSelector ${selectorString} + - OR - create a new view with the name ${otherDescriptor.name} and description '${existing.description}' and InstrumentSelector ${selectorString}`; + } + exports2.getDescriptionResolutionRecipe = getDescriptionResolutionRecipe; + function getConflictResolutionRecipe(existing, otherDescriptor) { + if (existing.valueType !== otherDescriptor.valueType) { + return getValueTypeConflictResolutionRecipe(existing, otherDescriptor); + } + if (existing.unit !== otherDescriptor.unit) { + return getUnitConflictResolutionRecipe(existing, otherDescriptor); + } + if (existing.type !== otherDescriptor.type) { + return getTypeConflictResolutionRecipe(existing, otherDescriptor); + } + if (existing.description !== otherDescriptor.description) { + return getDescriptionResolutionRecipe(existing, otherDescriptor); + } + return ""; + } + exports2.getConflictResolutionRecipe = getConflictResolutionRecipe; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricStorageRegistry.js +var require_MetricStorageRegistry = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricStorageRegistry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MetricStorageRegistry = void 0; + var InstrumentDescriptor_1 = require_InstrumentDescriptor(); + var api = require_src(); + var RegistrationConflicts_1 = require_RegistrationConflicts(); + var MetricStorageRegistry = class _MetricStorageRegistry { + constructor() { + this._sharedRegistry = /* @__PURE__ */ new Map(); + this._perCollectorRegistry = /* @__PURE__ */ new Map(); + } + static create() { + return new _MetricStorageRegistry(); + } + getStorages(collector) { + let storages = []; + for (const metricStorages of this._sharedRegistry.values()) { + storages = storages.concat(metricStorages); + } + const perCollectorStorages = this._perCollectorRegistry.get(collector); + if (perCollectorStorages != null) { + for (const metricStorages of perCollectorStorages.values()) { + storages = storages.concat(metricStorages); + } + } + return storages; + } + register(storage) { + this._registerStorage(storage, this._sharedRegistry); + } + registerForCollector(collector, storage) { + let storageMap = this._perCollectorRegistry.get(collector); + if (storageMap == null) { + storageMap = /* @__PURE__ */ new Map(); + this._perCollectorRegistry.set(collector, storageMap); + } + this._registerStorage(storage, storageMap); + } + findOrUpdateCompatibleStorage(expectedDescriptor) { + const storages = this._sharedRegistry.get(expectedDescriptor.name); + if (storages === void 0) { + return null; + } + return this._findOrUpdateCompatibleStorage(expectedDescriptor, storages); + } + findOrUpdateCompatibleCollectorStorage(collector, expectedDescriptor) { + const storageMap = this._perCollectorRegistry.get(collector); + if (storageMap === void 0) { + return null; + } + const storages = storageMap.get(expectedDescriptor.name); + if (storages === void 0) { + return null; + } + return this._findOrUpdateCompatibleStorage(expectedDescriptor, storages); + } + _registerStorage(storage, storageMap) { + const descriptor = storage.getInstrumentDescriptor(); + const storages = storageMap.get(descriptor.name); + if (storages === void 0) { + storageMap.set(descriptor.name, [storage]); + return; + } + storages.push(storage); + } + _findOrUpdateCompatibleStorage(expectedDescriptor, existingStorages) { + let compatibleStorage = null; + for (const existingStorage of existingStorages) { + const existingDescriptor = existingStorage.getInstrumentDescriptor(); + if ((0, InstrumentDescriptor_1.isDescriptorCompatibleWith)(existingDescriptor, expectedDescriptor)) { + if (existingDescriptor.description !== expectedDescriptor.description) { + if (expectedDescriptor.description.length > existingDescriptor.description.length) { + existingStorage.updateDescription(expectedDescriptor.description); + } + api.diag.warn("A view or instrument with the name ", expectedDescriptor.name, " has already been registered, but has a different description and is incompatible with another registered view.\n", "Details:\n", (0, RegistrationConflicts_1.getIncompatibilityDetails)(existingDescriptor, expectedDescriptor), "The longer description will be used.\nTo resolve the conflict:", (0, RegistrationConflicts_1.getConflictResolutionRecipe)(existingDescriptor, expectedDescriptor)); + } + compatibleStorage = existingStorage; + } else { + api.diag.warn("A view or instrument with the name ", expectedDescriptor.name, " has already been registered and is incompatible with another registered view.\n", "Details:\n", (0, RegistrationConflicts_1.getIncompatibilityDetails)(existingDescriptor, expectedDescriptor), "To resolve the conflict:\n", (0, RegistrationConflicts_1.getConflictResolutionRecipe)(existingDescriptor, expectedDescriptor)); + } + } + return compatibleStorage; + } + }; + exports2.MetricStorageRegistry = MetricStorageRegistry; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MultiWritableMetricStorage.js +var require_MultiWritableMetricStorage = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MultiWritableMetricStorage.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MultiMetricStorage = void 0; + var MultiMetricStorage = class { + constructor(_backingStorages) { + this._backingStorages = _backingStorages; + } + record(value, attributes, context2, recordTime) { + this._backingStorages.forEach((it) => { + it.record(value, attributes, context2, recordTime); + }); + } + }; + exports2.MultiMetricStorage = MultiMetricStorage; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/ObservableResult.js +var require_ObservableResult = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/ObservableResult.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchObservableResultImpl = exports2.ObservableResultImpl = void 0; + var api_1 = require_src(); + var HashMap_1 = require_HashMap(); + var Instruments_1 = require_Instruments(); + var ObservableResultImpl = class { + constructor(_instrumentName, _valueType) { + this._instrumentName = _instrumentName; + this._valueType = _valueType; + this._buffer = new HashMap_1.AttributeHashMap(); + } + /** + * Observe a measurement of the value associated with the given attributes. + */ + observe(value, attributes = {}) { + if (typeof value !== "number") { + api_1.diag.warn(`non-number value provided to metric ${this._instrumentName}: ${value}`); + return; + } + if (this._valueType === api_1.ValueType.INT && !Number.isInteger(value)) { + api_1.diag.warn(`INT value type cannot accept a floating-point value for ${this._instrumentName}, ignoring the fractional digits.`); + value = Math.trunc(value); + if (!Number.isInteger(value)) { + return; + } + } + this._buffer.set(attributes, value); + } + }; + exports2.ObservableResultImpl = ObservableResultImpl; + var BatchObservableResultImpl = class { + constructor() { + this._buffer = /* @__PURE__ */ new Map(); + } + /** + * Observe a measurement of the value associated with the given attributes. + */ + observe(metric, value, attributes = {}) { + if (!(0, Instruments_1.isObservableInstrument)(metric)) { + return; + } + let map = this._buffer.get(metric); + if (map == null) { + map = new HashMap_1.AttributeHashMap(); + this._buffer.set(metric, map); + } + if (typeof value !== "number") { + api_1.diag.warn(`non-number value provided to metric ${metric._descriptor.name}: ${value}`); + return; + } + if (metric._descriptor.valueType === api_1.ValueType.INT && !Number.isInteger(value)) { + api_1.diag.warn(`INT value type cannot accept a floating-point value for ${metric._descriptor.name}, ignoring the fractional digits.`); + value = Math.trunc(value); + if (!Number.isInteger(value)) { + return; + } + } + map.set(attributes, value); + } + }; + exports2.BatchObservableResultImpl = BatchObservableResultImpl; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/ObservableRegistry.js +var require_ObservableRegistry = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/ObservableRegistry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ObservableRegistry = void 0; + var api_1 = require_src(); + var Instruments_1 = require_Instruments(); + var ObservableResult_1 = require_ObservableResult(); + var utils_1 = require_utils8(); + var ObservableRegistry = class { + constructor() { + this._callbacks = []; + this._batchCallbacks = []; + } + addCallback(callback, instrument) { + const idx = this._findCallback(callback, instrument); + if (idx >= 0) { + return; + } + this._callbacks.push({ callback, instrument }); + } + removeCallback(callback, instrument) { + const idx = this._findCallback(callback, instrument); + if (idx < 0) { + return; + } + this._callbacks.splice(idx, 1); + } + addBatchCallback(callback, instruments) { + const observableInstruments = new Set(instruments.filter(Instruments_1.isObservableInstrument)); + if (observableInstruments.size === 0) { + api_1.diag.error("BatchObservableCallback is not associated with valid instruments", instruments); + return; + } + const idx = this._findBatchCallback(callback, observableInstruments); + if (idx >= 0) { + return; + } + this._batchCallbacks.push({ callback, instruments: observableInstruments }); + } + removeBatchCallback(callback, instruments) { + const observableInstruments = new Set(instruments.filter(Instruments_1.isObservableInstrument)); + const idx = this._findBatchCallback(callback, observableInstruments); + if (idx < 0) { + return; + } + this._batchCallbacks.splice(idx, 1); + } + /** + * @returns a promise of rejected reasons for invoking callbacks. + */ + async observe(collectionTime, timeoutMillis) { + const callbackFutures = this._observeCallbacks(collectionTime, timeoutMillis); + const batchCallbackFutures = this._observeBatchCallbacks(collectionTime, timeoutMillis); + const results = await (0, utils_1.PromiseAllSettled)([ + ...callbackFutures, + ...batchCallbackFutures + ]); + const rejections = results.filter(utils_1.isPromiseAllSettledRejectionResult).map((it) => it.reason); + return rejections; + } + _observeCallbacks(observationTime, timeoutMillis) { + return this._callbacks.map(async ({ callback, instrument }) => { + const observableResult = new ObservableResult_1.ObservableResultImpl(instrument._descriptor.name, instrument._descriptor.valueType); + let callPromise = Promise.resolve(callback(observableResult)); + if (timeoutMillis != null) { + callPromise = (0, utils_1.callWithTimeout)(callPromise, timeoutMillis); + } + await callPromise; + instrument._metricStorages.forEach((metricStorage) => { + metricStorage.record(observableResult._buffer, observationTime); + }); + }); + } + _observeBatchCallbacks(observationTime, timeoutMillis) { + return this._batchCallbacks.map(async ({ callback, instruments }) => { + const observableResult = new ObservableResult_1.BatchObservableResultImpl(); + let callPromise = Promise.resolve(callback(observableResult)); + if (timeoutMillis != null) { + callPromise = (0, utils_1.callWithTimeout)(callPromise, timeoutMillis); + } + await callPromise; + instruments.forEach((instrument) => { + const buffer2 = observableResult._buffer.get(instrument); + if (buffer2 == null) { + return; + } + instrument._metricStorages.forEach((metricStorage) => { + metricStorage.record(buffer2, observationTime); + }); + }); + }); + } + _findCallback(callback, instrument) { + return this._callbacks.findIndex((record) => { + return record.callback === callback && record.instrument === instrument; + }); + } + _findBatchCallback(callback, instruments) { + return this._batchCallbacks.findIndex((record) => { + return record.callback === callback && (0, utils_1.setEquals)(record.instruments, instruments); + }); + } + }; + exports2.ObservableRegistry = ObservableRegistry; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/SyncMetricStorage.js +var require_SyncMetricStorage = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/SyncMetricStorage.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SyncMetricStorage = void 0; + var MetricStorage_1 = require_MetricStorage(); + var DeltaMetricProcessor_1 = require_DeltaMetricProcessor(); + var TemporalMetricProcessor_1 = require_TemporalMetricProcessor(); + var SyncMetricStorage = class extends MetricStorage_1.MetricStorage { + constructor(instrumentDescriptor, aggregator, _attributesProcessor, collectorHandles) { + super(instrumentDescriptor); + this._attributesProcessor = _attributesProcessor; + this._deltaMetricStorage = new DeltaMetricProcessor_1.DeltaMetricProcessor(aggregator); + this._temporalMetricStorage = new TemporalMetricProcessor_1.TemporalMetricProcessor(aggregator, collectorHandles); + } + record(value, attributes, context2, recordTime) { + attributes = this._attributesProcessor.process(attributes, context2); + this._deltaMetricStorage.record(value, attributes, context2, recordTime); + } + /** + * Collects the metrics from this storage. + * + * Note: This is a stateful operation and may reset any interval-related + * state for the MetricCollector. + */ + collect(collector, collectionTime) { + const accumulations = this._deltaMetricStorage.collect(); + return this._temporalMetricStorage.buildMetrics(collector, this._instrumentDescriptor, accumulations, collectionTime); + } + }; + exports2.SyncMetricStorage = SyncMetricStorage; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/AttributesProcessor.js +var require_AttributesProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/AttributesProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.FilteringAttributesProcessor = exports2.NoopAttributesProcessor = exports2.AttributesProcessor = void 0; + var AttributesProcessor = class { + static Noop() { + return NOOP; + } + }; + exports2.AttributesProcessor = AttributesProcessor; + var NoopAttributesProcessor = class extends AttributesProcessor { + process(incoming, _context) { + return incoming; + } + }; + exports2.NoopAttributesProcessor = NoopAttributesProcessor; + var FilteringAttributesProcessor = class extends AttributesProcessor { + constructor(_allowedAttributeNames) { + super(); + this._allowedAttributeNames = _allowedAttributeNames; + } + process(incoming, _context) { + const filteredAttributes = {}; + Object.keys(incoming).filter((attributeName) => this._allowedAttributeNames.includes(attributeName)).forEach((attributeName) => filteredAttributes[attributeName] = incoming[attributeName]); + return filteredAttributes; + } + }; + exports2.FilteringAttributesProcessor = FilteringAttributesProcessor; + var NOOP = new NoopAttributesProcessor(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MeterSharedState.js +var require_MeterSharedState = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MeterSharedState.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MeterSharedState = void 0; + var InstrumentDescriptor_1 = require_InstrumentDescriptor(); + var Meter_1 = require_Meter(); + var utils_1 = require_utils8(); + var AsyncMetricStorage_1 = require_AsyncMetricStorage(); + var MetricStorageRegistry_1 = require_MetricStorageRegistry(); + var MultiWritableMetricStorage_1 = require_MultiWritableMetricStorage(); + var ObservableRegistry_1 = require_ObservableRegistry(); + var SyncMetricStorage_1 = require_SyncMetricStorage(); + var AttributesProcessor_1 = require_AttributesProcessor(); + var MeterSharedState = class { + constructor(_meterProviderSharedState, _instrumentationScope) { + this._meterProviderSharedState = _meterProviderSharedState; + this._instrumentationScope = _instrumentationScope; + this.metricStorageRegistry = new MetricStorageRegistry_1.MetricStorageRegistry(); + this.observableRegistry = new ObservableRegistry_1.ObservableRegistry(); + this.meter = new Meter_1.Meter(this); + } + registerMetricStorage(descriptor) { + const storages = this._registerMetricStorage(descriptor, SyncMetricStorage_1.SyncMetricStorage); + if (storages.length === 1) { + return storages[0]; + } + return new MultiWritableMetricStorage_1.MultiMetricStorage(storages); + } + registerAsyncMetricStorage(descriptor) { + const storages = this._registerMetricStorage(descriptor, AsyncMetricStorage_1.AsyncMetricStorage); + return storages; + } + /** + * @param collector opaque handle of {@link MetricCollector} which initiated the collection. + * @param collectionTime the HrTime at which the collection was initiated. + * @param options options for collection. + * @returns the list of metric data collected. + */ + async collect(collector, collectionTime, options2) { + const errors = await this.observableRegistry.observe(collectionTime, options2 === null || options2 === void 0 ? void 0 : options2.timeoutMillis); + const storages = this.metricStorageRegistry.getStorages(collector); + if (storages.length === 0) { + return null; + } + const metricDataList = storages.map((metricStorage) => { + return metricStorage.collect(collector, collectionTime); + }).filter(utils_1.isNotNullish); + if (metricDataList.length === 0) { + return { errors }; + } + return { + scopeMetrics: { + scope: this._instrumentationScope, + metrics: metricDataList + }, + errors + }; + } + _registerMetricStorage(descriptor, MetricStorageType) { + const views = this._meterProviderSharedState.viewRegistry.findViews(descriptor, this._instrumentationScope); + let storages = views.map((view) => { + const viewDescriptor = (0, InstrumentDescriptor_1.createInstrumentDescriptorWithView)(view, descriptor); + const compatibleStorage = this.metricStorageRegistry.findOrUpdateCompatibleStorage(viewDescriptor); + if (compatibleStorage != null) { + return compatibleStorage; + } + const aggregator = view.aggregation.createAggregator(viewDescriptor); + const viewStorage = new MetricStorageType(viewDescriptor, aggregator, view.attributesProcessor, this._meterProviderSharedState.metricCollectors); + this.metricStorageRegistry.register(viewStorage); + return viewStorage; + }); + if (storages.length === 0) { + const perCollectorAggregations = this._meterProviderSharedState.selectAggregations(descriptor.type); + const collectorStorages = perCollectorAggregations.map(([collector, aggregation]) => { + const compatibleStorage = this.metricStorageRegistry.findOrUpdateCompatibleCollectorStorage(collector, descriptor); + if (compatibleStorage != null) { + return compatibleStorage; + } + const aggregator = aggregation.createAggregator(descriptor); + const storage = new MetricStorageType(descriptor, aggregator, AttributesProcessor_1.AttributesProcessor.Noop(), [collector]); + this.metricStorageRegistry.registerForCollector(collector, storage); + return storage; + }); + storages = storages.concat(collectorStorages); + } + return storages; + } + }; + exports2.MeterSharedState = MeterSharedState; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MeterProviderSharedState.js +var require_MeterProviderSharedState = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MeterProviderSharedState.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MeterProviderSharedState = void 0; + var utils_1 = require_utils8(); + var ViewRegistry_1 = require_ViewRegistry(); + var MeterSharedState_1 = require_MeterSharedState(); + var MeterProviderSharedState = class { + constructor(resource) { + this.resource = resource; + this.viewRegistry = new ViewRegistry_1.ViewRegistry(); + this.metricCollectors = []; + this.meterSharedStates = /* @__PURE__ */ new Map(); + } + getMeterSharedState(instrumentationScope) { + const id = (0, utils_1.instrumentationScopeId)(instrumentationScope); + let meterSharedState = this.meterSharedStates.get(id); + if (meterSharedState == null) { + meterSharedState = new MeterSharedState_1.MeterSharedState(this, instrumentationScope); + this.meterSharedStates.set(id, meterSharedState); + } + return meterSharedState; + } + selectAggregations(instrumentType) { + const result = []; + for (const collector of this.metricCollectors) { + result.push([collector, collector.selectAggregation(instrumentType)]); + } + return result; + } + }; + exports2.MeterProviderSharedState = MeterProviderSharedState; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricCollector.js +var require_MetricCollector = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricCollector.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MetricCollector = void 0; + var core_1 = require_src5(); + var MetricCollector = class { + constructor(_sharedState, _metricReader) { + this._sharedState = _sharedState; + this._metricReader = _metricReader; + } + async collect(options2) { + const collectionTime = (0, core_1.millisToHrTime)(Date.now()); + const scopeMetrics = []; + const errors = []; + const meterCollectionPromises = Array.from(this._sharedState.meterSharedStates.values()).map(async (meterSharedState) => { + const current = await meterSharedState.collect(this, collectionTime, options2); + if ((current === null || current === void 0 ? void 0 : current.scopeMetrics) != null) { + scopeMetrics.push(current.scopeMetrics); + } + if ((current === null || current === void 0 ? void 0 : current.errors) != null) { + errors.push(...current.errors); + } + }); + await Promise.all(meterCollectionPromises); + return { + resourceMetrics: { + resource: this._sharedState.resource, + scopeMetrics + }, + errors + }; + } + /** + * Delegates for MetricReader.forceFlush. + */ + async forceFlush(options2) { + await this._metricReader.forceFlush(options2); + } + /** + * Delegates for MetricReader.shutdown. + */ + async shutdown(options2) { + await this._metricReader.shutdown(options2); + } + selectAggregationTemporality(instrumentType) { + return this._metricReader.selectAggregationTemporality(instrumentType); + } + selectAggregation(instrumentType) { + return this._metricReader.selectAggregation(instrumentType); + } + }; + exports2.MetricCollector = MetricCollector; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/MeterProvider.js +var require_MeterProvider = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/MeterProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MeterProvider = void 0; + var api_1 = require_src(); + var resources_1 = require_src7(); + var MeterProviderSharedState_1 = require_MeterProviderSharedState(); + var MetricCollector_1 = require_MetricCollector(); + var MeterProvider = class { + constructor(options2) { + var _a; + this._shutdown = false; + const resource = resources_1.Resource.default().merge((_a = options2 === null || options2 === void 0 ? void 0 : options2.resource) !== null && _a !== void 0 ? _a : resources_1.Resource.empty()); + this._sharedState = new MeterProviderSharedState_1.MeterProviderSharedState(resource); + if ((options2 === null || options2 === void 0 ? void 0 : options2.views) != null && options2.views.length > 0) { + for (const view of options2.views) { + this._sharedState.viewRegistry.addView(view); + } + } + } + /** + * Get a meter with the configuration of the MeterProvider. + */ + getMeter(name, version4 = "", options2 = {}) { + if (this._shutdown) { + api_1.diag.warn("A shutdown MeterProvider cannot provide a Meter"); + return (0, api_1.createNoopMeter)(); + } + return this._sharedState.getMeterSharedState({ + name, + version: version4, + schemaUrl: options2.schemaUrl + }).meter; + } + /** + * Register a {@link MetricReader} to the meter provider. After the + * registration, the MetricReader can start metrics collection. + * + * @param metricReader the metric reader to be registered. + */ + addMetricReader(metricReader) { + const collector = new MetricCollector_1.MetricCollector(this._sharedState, metricReader); + metricReader.setMetricProducer(collector); + this._sharedState.metricCollectors.push(collector); + } + /** + * Flush all buffered data and shut down the MeterProvider and all registered + * MetricReaders. + * + * Returns a promise which is resolved when all flushes are complete. + */ + async shutdown(options2) { + if (this._shutdown) { + api_1.diag.warn("shutdown may only be called once per MeterProvider"); + return; + } + this._shutdown = true; + await Promise.all(this._sharedState.metricCollectors.map((collector) => { + return collector.shutdown(options2); + })); + } + /** + * Notifies all registered MetricReaders to flush any buffered data. + * + * Returns a promise which is resolved when all flushes are complete. + */ + async forceFlush(options2) { + if (this._shutdown) { + api_1.diag.warn("invalid attempt to force flush after MeterProvider shutdown"); + return; + } + await Promise.all(this._sharedState.metricCollectors.map((collector) => { + return collector.forceFlush(options2); + })); + } + }; + exports2.MeterProvider = MeterProvider; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/Predicate.js +var require_Predicate = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/Predicate.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ExactPredicate = exports2.PatternPredicate = void 0; + var ESCAPE = /[\^$\\.+?()[\]{}|]/g; + var PatternPredicate = class _PatternPredicate { + constructor(pattern) { + if (pattern === "*") { + this._matchAll = true; + this._regexp = /.*/; + } else { + this._matchAll = false; + this._regexp = new RegExp(_PatternPredicate.escapePattern(pattern)); + } + } + match(str) { + if (this._matchAll) { + return true; + } + return this._regexp.test(str); + } + static escapePattern(pattern) { + return `^${pattern.replace(ESCAPE, "\\$&").replace("*", ".*")}$`; + } + static hasWildcard(pattern) { + return pattern.includes("*"); + } + }; + exports2.PatternPredicate = PatternPredicate; + var ExactPredicate = class { + constructor(pattern) { + this._matchAll = pattern === void 0; + this._pattern = pattern; + } + match(str) { + if (this._matchAll) { + return true; + } + if (str === this._pattern) { + return true; + } + return false; + } + }; + exports2.ExactPredicate = ExactPredicate; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/InstrumentSelector.js +var require_InstrumentSelector = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/InstrumentSelector.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.InstrumentSelector = void 0; + var Predicate_1 = require_Predicate(); + var InstrumentSelector = class { + constructor(criteria) { + var _a; + this._nameFilter = new Predicate_1.PatternPredicate((_a = criteria === null || criteria === void 0 ? void 0 : criteria.name) !== null && _a !== void 0 ? _a : "*"); + this._type = criteria === null || criteria === void 0 ? void 0 : criteria.type; + this._unitFilter = new Predicate_1.ExactPredicate(criteria === null || criteria === void 0 ? void 0 : criteria.unit); + } + getType() { + return this._type; + } + getNameFilter() { + return this._nameFilter; + } + getUnitFilter() { + return this._unitFilter; + } + }; + exports2.InstrumentSelector = InstrumentSelector; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/MeterSelector.js +var require_MeterSelector = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/MeterSelector.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MeterSelector = void 0; + var Predicate_1 = require_Predicate(); + var MeterSelector = class { + constructor(criteria) { + this._nameFilter = new Predicate_1.ExactPredicate(criteria === null || criteria === void 0 ? void 0 : criteria.name); + this._versionFilter = new Predicate_1.ExactPredicate(criteria === null || criteria === void 0 ? void 0 : criteria.version); + this._schemaUrlFilter = new Predicate_1.ExactPredicate(criteria === null || criteria === void 0 ? void 0 : criteria.schemaUrl); + } + getNameFilter() { + return this._nameFilter; + } + /** + * TODO: semver filter? no spec yet. + */ + getVersionFilter() { + return this._versionFilter; + } + getSchemaUrlFilter() { + return this._schemaUrlFilter; + } + }; + exports2.MeterSelector = MeterSelector; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/View.js +var require_View = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/view/View.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.View = void 0; + var Predicate_1 = require_Predicate(); + var AttributesProcessor_1 = require_AttributesProcessor(); + var InstrumentSelector_1 = require_InstrumentSelector(); + var MeterSelector_1 = require_MeterSelector(); + var Aggregation_1 = require_Aggregation(); + function isSelectorNotProvided(options2) { + return options2.instrumentName == null && options2.instrumentType == null && options2.instrumentUnit == null && options2.meterName == null && options2.meterVersion == null && options2.meterSchemaUrl == null; + } + var View = class { + /** + * Create a new {@link View} instance. + * + * Parameters can be categorized as two types: + * Instrument selection criteria: Used to describe the instrument(s) this view will be applied to. + * Will be treated as additive (the Instrument has to meet all the provided criteria to be selected). + * + * Metric stream altering: Alter the metric stream of instruments selected by instrument selection criteria. + * + * @param viewOptions {@link ViewOptions} for altering the metric stream and instrument selection. + * @param viewOptions.name + * Alters the metric stream: + * This will be used as the name of the metrics stream. + * If not provided, the original Instrument name will be used. + * @param viewOptions.description + * Alters the metric stream: + * This will be used as the description of the metrics stream. + * If not provided, the original Instrument description will be used by default. + * @param viewOptions.attributeKeys + * Alters the metric stream: + * If provided, the attributes that are not in the list will be ignored. + * If not provided, all attribute keys will be used by default. + * @param viewOptions.aggregation + * Alters the metric stream: + * Alters the {@link Aggregation} of the metric stream. + * @param viewOptions.instrumentName + * Instrument selection criteria: + * Original name of the Instrument(s) with wildcard support. + * @param viewOptions.instrumentType + * Instrument selection criteria: + * The original type of the Instrument(s). + * @param viewOptions.instrumentUnit + * Instrument selection criteria: + * The unit of the Instrument(s). + * @param viewOptions.meterName + * Instrument selection criteria: + * The name of the Meter. No wildcard support, name must match the meter exactly. + * @param viewOptions.meterVersion + * Instrument selection criteria: + * The version of the Meter. No wildcard support, version must match exactly. + * @param viewOptions.meterSchemaUrl + * Instrument selection criteria: + * The schema URL of the Meter. No wildcard support, schema URL must match exactly. + * + * @example + * // Create a view that changes the Instrument 'my.instrument' to use to an + * // ExplicitBucketHistogramAggregation with the boundaries [20, 30, 40] + * new View({ + * aggregation: new ExplicitBucketHistogramAggregation([20, 30, 40]), + * instrumentName: 'my.instrument' + * }) + */ + constructor(viewOptions) { + var _a; + if (isSelectorNotProvided(viewOptions)) { + throw new Error("Cannot create view with no selector arguments supplied"); + } + if (viewOptions.name != null && ((viewOptions === null || viewOptions === void 0 ? void 0 : viewOptions.instrumentName) == null || Predicate_1.PatternPredicate.hasWildcard(viewOptions.instrumentName))) { + throw new Error("Views with a specified name must be declared with an instrument selector that selects at most one instrument per meter."); + } + if (viewOptions.attributeKeys != null) { + this.attributesProcessor = new AttributesProcessor_1.FilteringAttributesProcessor(viewOptions.attributeKeys); + } else { + this.attributesProcessor = AttributesProcessor_1.AttributesProcessor.Noop(); + } + this.name = viewOptions.name; + this.description = viewOptions.description; + this.aggregation = (_a = viewOptions.aggregation) !== null && _a !== void 0 ? _a : Aggregation_1.Aggregation.Default(); + this.instrumentSelector = new InstrumentSelector_1.InstrumentSelector({ + name: viewOptions.instrumentName, + type: viewOptions.instrumentType, + unit: viewOptions.instrumentUnit + }); + this.meterSelector = new MeterSelector_1.MeterSelector({ + name: viewOptions.meterName, + version: viewOptions.meterVersion, + schemaUrl: viewOptions.meterSchemaUrl + }); + } + }; + exports2.View = View; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/index.js +var require_src8 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-metrics@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-metrics/build/src/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TimeoutError = exports2.View = exports2.Aggregation = exports2.SumAggregation = exports2.LastValueAggregation = exports2.HistogramAggregation = exports2.DropAggregation = exports2.ExponentialHistogramAggregation = exports2.ExplicitBucketHistogramAggregation = exports2.DefaultAggregation = exports2.MeterProvider = exports2.InstrumentType = exports2.ConsoleMetricExporter = exports2.InMemoryMetricExporter = exports2.PeriodicExportingMetricReader = exports2.MetricReader = exports2.DataPointType = exports2.AggregationTemporality = void 0; + var AggregationTemporality_1 = require_AggregationTemporality(); + Object.defineProperty(exports2, "AggregationTemporality", { enumerable: true, get: function() { + return AggregationTemporality_1.AggregationTemporality; + } }); + var MetricData_1 = require_MetricData(); + Object.defineProperty(exports2, "DataPointType", { enumerable: true, get: function() { + return MetricData_1.DataPointType; + } }); + var MetricReader_1 = require_MetricReader(); + Object.defineProperty(exports2, "MetricReader", { enumerable: true, get: function() { + return MetricReader_1.MetricReader; + } }); + var PeriodicExportingMetricReader_1 = require_PeriodicExportingMetricReader(); + Object.defineProperty(exports2, "PeriodicExportingMetricReader", { enumerable: true, get: function() { + return PeriodicExportingMetricReader_1.PeriodicExportingMetricReader; + } }); + var InMemoryMetricExporter_1 = require_InMemoryMetricExporter(); + Object.defineProperty(exports2, "InMemoryMetricExporter", { enumerable: true, get: function() { + return InMemoryMetricExporter_1.InMemoryMetricExporter; + } }); + var ConsoleMetricExporter_1 = require_ConsoleMetricExporter(); + Object.defineProperty(exports2, "ConsoleMetricExporter", { enumerable: true, get: function() { + return ConsoleMetricExporter_1.ConsoleMetricExporter; + } }); + var InstrumentDescriptor_1 = require_InstrumentDescriptor(); + Object.defineProperty(exports2, "InstrumentType", { enumerable: true, get: function() { + return InstrumentDescriptor_1.InstrumentType; + } }); + var MeterProvider_1 = require_MeterProvider(); + Object.defineProperty(exports2, "MeterProvider", { enumerable: true, get: function() { + return MeterProvider_1.MeterProvider; + } }); + var Aggregation_1 = require_Aggregation(); + Object.defineProperty(exports2, "DefaultAggregation", { enumerable: true, get: function() { + return Aggregation_1.DefaultAggregation; + } }); + Object.defineProperty(exports2, "ExplicitBucketHistogramAggregation", { enumerable: true, get: function() { + return Aggregation_1.ExplicitBucketHistogramAggregation; + } }); + Object.defineProperty(exports2, "ExponentialHistogramAggregation", { enumerable: true, get: function() { + return Aggregation_1.ExponentialHistogramAggregation; + } }); + Object.defineProperty(exports2, "DropAggregation", { enumerable: true, get: function() { + return Aggregation_1.DropAggregation; + } }); + Object.defineProperty(exports2, "HistogramAggregation", { enumerable: true, get: function() { + return Aggregation_1.HistogramAggregation; + } }); + Object.defineProperty(exports2, "LastValueAggregation", { enumerable: true, get: function() { + return Aggregation_1.LastValueAggregation; + } }); + Object.defineProperty(exports2, "SumAggregation", { enumerable: true, get: function() { + return Aggregation_1.SumAggregation; + } }); + Object.defineProperty(exports2, "Aggregation", { enumerable: true, get: function() { + return Aggregation_1.Aggregation; + } }); + var View_1 = require_View(); + Object.defineProperty(exports2, "View", { enumerable: true, get: function() { + return View_1.View; + } }); + var utils_1 = require_utils8(); + Object.defineProperty(exports2, "TimeoutError", { enumerable: true, get: function() { + return utils_1.TimeoutError; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/metrics/internal.js +var require_internal3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/metrics/internal.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toMetric = exports2.toScopeMetrics = exports2.toResourceMetrics = void 0; + var api_1 = require_src(); + var sdk_metrics_1 = require_src8(); + var internal_1 = require_internal(); + var common_1 = require_common3(); + function toResourceMetrics(resourceMetrics, options2) { + const encoder = (0, common_1.getOtlpEncoder)(options2); + return { + resource: { + attributes: (0, internal_1.toAttributes)(resourceMetrics.resource.attributes), + droppedAttributesCount: 0 + }, + schemaUrl: void 0, + scopeMetrics: toScopeMetrics(resourceMetrics.scopeMetrics, encoder) + }; + } + exports2.toResourceMetrics = toResourceMetrics; + function toScopeMetrics(scopeMetrics, encoder) { + return Array.from(scopeMetrics.map((metrics) => ({ + scope: { + name: metrics.scope.name, + version: metrics.scope.version + }, + metrics: metrics.metrics.map((metricData) => toMetric(metricData, encoder)), + schemaUrl: metrics.scope.schemaUrl + }))); + } + exports2.toScopeMetrics = toScopeMetrics; + function toMetric(metricData, encoder) { + const out2 = { + name: metricData.descriptor.name, + description: metricData.descriptor.description, + unit: metricData.descriptor.unit + }; + const aggregationTemporality = toAggregationTemporality(metricData.aggregationTemporality); + switch (metricData.dataPointType) { + case sdk_metrics_1.DataPointType.SUM: + out2.sum = { + aggregationTemporality, + isMonotonic: metricData.isMonotonic, + dataPoints: toSingularDataPoints(metricData, encoder) + }; + break; + case sdk_metrics_1.DataPointType.GAUGE: + out2.gauge = { + dataPoints: toSingularDataPoints(metricData, encoder) + }; + break; + case sdk_metrics_1.DataPointType.HISTOGRAM: + out2.histogram = { + aggregationTemporality, + dataPoints: toHistogramDataPoints(metricData, encoder) + }; + break; + case sdk_metrics_1.DataPointType.EXPONENTIAL_HISTOGRAM: + out2.exponentialHistogram = { + aggregationTemporality, + dataPoints: toExponentialHistogramDataPoints(metricData, encoder) + }; + break; + } + return out2; + } + exports2.toMetric = toMetric; + function toSingularDataPoint(dataPoint, valueType, encoder) { + const out2 = { + attributes: (0, internal_1.toAttributes)(dataPoint.attributes), + startTimeUnixNano: encoder.encodeHrTime(dataPoint.startTime), + timeUnixNano: encoder.encodeHrTime(dataPoint.endTime) + }; + switch (valueType) { + case api_1.ValueType.INT: + out2.asInt = dataPoint.value; + break; + case api_1.ValueType.DOUBLE: + out2.asDouble = dataPoint.value; + break; + } + return out2; + } + function toSingularDataPoints(metricData, encoder) { + return metricData.dataPoints.map((dataPoint) => { + return toSingularDataPoint(dataPoint, metricData.descriptor.valueType, encoder); + }); + } + function toHistogramDataPoints(metricData, encoder) { + return metricData.dataPoints.map((dataPoint) => { + const histogram = dataPoint.value; + return { + attributes: (0, internal_1.toAttributes)(dataPoint.attributes), + bucketCounts: histogram.buckets.counts, + explicitBounds: histogram.buckets.boundaries, + count: histogram.count, + sum: histogram.sum, + min: histogram.min, + max: histogram.max, + startTimeUnixNano: encoder.encodeHrTime(dataPoint.startTime), + timeUnixNano: encoder.encodeHrTime(dataPoint.endTime) + }; + }); + } + function toExponentialHistogramDataPoints(metricData, encoder) { + return metricData.dataPoints.map((dataPoint) => { + const histogram = dataPoint.value; + return { + attributes: (0, internal_1.toAttributes)(dataPoint.attributes), + count: histogram.count, + min: histogram.min, + max: histogram.max, + sum: histogram.sum, + positive: { + offset: histogram.positive.offset, + bucketCounts: histogram.positive.bucketCounts + }, + negative: { + offset: histogram.negative.offset, + bucketCounts: histogram.negative.bucketCounts + }, + scale: histogram.scale, + zeroCount: histogram.zeroCount, + startTimeUnixNano: encoder.encodeHrTime(dataPoint.startTime), + timeUnixNano: encoder.encodeHrTime(dataPoint.endTime) + }; + }); + } + function toAggregationTemporality(temporality) { + switch (temporality) { + case sdk_metrics_1.AggregationTemporality.DELTA: + return 1; + case sdk_metrics_1.AggregationTemporality.CUMULATIVE: + return 2; + } + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/metrics/index.js +var require_metrics2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/metrics/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createExportMetricsServiceRequest = void 0; + var internal_1 = require_internal3(); + function createExportMetricsServiceRequest(resourceMetrics, options2) { + return { + resourceMetrics: resourceMetrics.map((metrics) => (0, internal_1.toResourceMetrics)(metrics, options2)) + }; + } + exports2.createExportMetricsServiceRequest = createExportMetricsServiceRequest; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/logs/index.js +var require_logs = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/logs/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.toLogAttributes = exports2.createExportLogsServiceRequest = void 0; + var common_1 = require_common3(); + var internal_1 = require_internal(); + function createExportLogsServiceRequest(logRecords, options2) { + const encoder = (0, common_1.getOtlpEncoder)(options2); + return { + resourceLogs: logRecordsToResourceLogs(logRecords, encoder) + }; + } + exports2.createExportLogsServiceRequest = createExportLogsServiceRequest; + function createResourceMap(logRecords) { + const resourceMap = /* @__PURE__ */ new Map(); + for (const record of logRecords) { + const { resource, instrumentationScope: { name, version: version4 = "", schemaUrl = "" } } = record; + let ismMap = resourceMap.get(resource); + if (!ismMap) { + ismMap = /* @__PURE__ */ new Map(); + resourceMap.set(resource, ismMap); + } + const ismKey = `${name}@${version4}:${schemaUrl}`; + let records = ismMap.get(ismKey); + if (!records) { + records = []; + ismMap.set(ismKey, records); + } + records.push(record); + } + return resourceMap; + } + function logRecordsToResourceLogs(logRecords, encoder) { + const resourceMap = createResourceMap(logRecords); + return Array.from(resourceMap, ([resource, ismMap]) => ({ + resource: { + attributes: (0, internal_1.toAttributes)(resource.attributes), + droppedAttributesCount: 0 + }, + scopeLogs: Array.from(ismMap, ([, scopeLogs]) => { + const { instrumentationScope: { name, version: version4, schemaUrl } } = scopeLogs[0]; + return { + scope: { name, version: version4 }, + logRecords: scopeLogs.map((log2) => toLogRecord(log2, encoder)), + schemaUrl + }; + }), + schemaUrl: void 0 + })); + } + function toLogRecord(log2, encoder) { + var _a, _b, _c; + return { + timeUnixNano: encoder.encodeHrTime(log2.hrTime), + observedTimeUnixNano: encoder.encodeHrTime(log2.hrTimeObserved), + severityNumber: toSeverityNumber(log2.severityNumber), + severityText: log2.severityText, + body: (0, internal_1.toAnyValue)(log2.body), + attributes: toLogAttributes(log2.attributes), + droppedAttributesCount: 0, + flags: (_a = log2.spanContext) === null || _a === void 0 ? void 0 : _a.traceFlags, + traceId: encoder.encodeOptionalSpanContext((_b = log2.spanContext) === null || _b === void 0 ? void 0 : _b.traceId), + spanId: encoder.encodeOptionalSpanContext((_c = log2.spanContext) === null || _c === void 0 ? void 0 : _c.spanId) + }; + } + function toSeverityNumber(severityNumber) { + return severityNumber; + } + function toLogAttributes(attributes) { + return Object.keys(attributes).map((key) => (0, internal_1.toKeyValue)(key, attributes[key])); + } + exports2.toLogAttributes = toLogAttributes; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/index.js +var require_src9 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-transformer@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-transformer/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.createExportLogsServiceRequest = exports2.createExportMetricsServiceRequest = exports2.createExportTraceServiceRequest = void 0; + __exportStar(require_types6(), exports2); + __exportStar(require_common3(), exports2); + __exportStar(require_types7(), exports2); + __exportStar(require_types8(), exports2); + __exportStar(require_types9(), exports2); + __exportStar(require_types10(), exports2); + var trace_1 = require_trace4(); + Object.defineProperty(exports2, "createExportTraceServiceRequest", { enumerable: true, get: function() { + return trace_1.createExportTraceServiceRequest; + } }); + var metrics_1 = require_metrics2(); + Object.defineProperty(exports2, "createExportMetricsServiceRequest", { enumerable: true, get: function() { + return metrics_1.createExportMetricsServiceRequest; + } }); + var logs_1 = require_logs(); + Object.defineProperty(exports2, "createExportLogsServiceRequest", { enumerable: true, get: function() { + return logs_1.createExportLogsServiceRequest; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/version.js +var require_version4 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/version.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VERSION = void 0; + exports2.VERSION = "0.45.1"; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/platform/node/OTLPTraceExporter.js +var require_OTLPTraceExporter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/platform/node/OTLPTraceExporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPTraceExporter = void 0; + var core_1 = require_src5(); + var otlp_exporter_base_1 = require_src6(); + var otlp_exporter_base_2 = require_src6(); + var otlp_transformer_1 = require_src9(); + var version_1 = require_version4(); + var DEFAULT_COLLECTOR_RESOURCE_PATH = "v1/traces"; + var DEFAULT_COLLECTOR_URL = `http://localhost:4318/${DEFAULT_COLLECTOR_RESOURCE_PATH}`; + var USER_AGENT = { + "User-Agent": `OTel-OTLP-Exporter-JavaScript/${version_1.VERSION}` + }; + var OTLPTraceExporter2 = class extends otlp_exporter_base_1.OTLPExporterNodeBase { + constructor(config = {}) { + super(config); + this.headers = Object.assign(Object.assign(Object.assign({}, this.headers), USER_AGENT), core_1.baggageUtils.parseKeyPairsIntoRecord((0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_HEADERS)); + } + convert(spans) { + return (0, otlp_transformer_1.createExportTraceServiceRequest)(spans, { + useHex: true, + useLongBits: false + }); + } + getDefaultUrl(config) { + return typeof config.url === "string" ? config.url : (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_ENDPOINT.length > 0 ? (0, otlp_exporter_base_2.appendRootPathToUrlIfNeeded)((0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_ENDPOINT) : (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_ENDPOINT.length > 0 ? (0, otlp_exporter_base_2.appendResourcePathToUrl)((0, core_1.getEnv)().OTEL_EXPORTER_OTLP_ENDPOINT, DEFAULT_COLLECTOR_RESOURCE_PATH) : DEFAULT_COLLECTOR_URL; + } + }; + exports2.OTLPTraceExporter = OTLPTraceExporter2; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/platform/node/index.js +var require_node8 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/platform/node/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_OTLPTraceExporter(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/platform/index.js +var require_platform5 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/platform/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_node8(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/index.js +var require_src10 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_platform5(), exports2); + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/constants.js +var require_constants8 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/constants.js"(exports2, module2) { + var SEMVER_SPEC_VERSION = "2.0.0"; + var MAX_LENGTH = 256; + var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */ + 9007199254740991; + var MAX_SAFE_COMPONENT_LENGTH = 16; + var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6; + var RELEASE_TYPES = [ + "major", + "premajor", + "minor", + "preminor", + "patch", + "prepatch", + "prerelease" + ]; + module2.exports = { + MAX_LENGTH, + MAX_SAFE_COMPONENT_LENGTH, + MAX_SAFE_BUILD_LENGTH, + MAX_SAFE_INTEGER, + RELEASE_TYPES, + SEMVER_SPEC_VERSION, + FLAG_INCLUDE_PRERELEASE: 1, + FLAG_LOOSE: 2 + }; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/debug.js +var require_debug2 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/debug.js"(exports2, module2) { + var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args3) => console.error("SEMVER", ...args3) : () => { + }; + module2.exports = debug; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/re.js +var require_re = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/re.js"(exports2, module2) { + var { + MAX_SAFE_COMPONENT_LENGTH, + MAX_SAFE_BUILD_LENGTH, + MAX_LENGTH + } = require_constants8(); + var debug = require_debug2(); + exports2 = module2.exports = {}; + var re = exports2.re = []; + var safeRe = exports2.safeRe = []; + var src = exports2.src = []; + var t = exports2.t = {}; + var R = 0; + var LETTERDASHNUMBER = "[a-zA-Z0-9-]"; + var safeRegexReplacements = [ + ["\\s", 1], + ["\\d", MAX_LENGTH], + [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH] + ]; + var makeSafeRegex = (value) => { + for (const [token, max] of safeRegexReplacements) { + value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`); + } + return value; + }; + var createToken = (name, value, isGlobal) => { + const safe = makeSafeRegex(value); + const index = R++; + debug(name, index, value); + t[name] = index; + src[index] = value; + re[index] = new RegExp(value, isGlobal ? "g" : void 0); + safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0); + }; + createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*"); + createToken("NUMERICIDENTIFIERLOOSE", "\\d+"); + createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`); + createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`); + createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`); + createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NUMERICIDENTIFIER]}|${src[t.NONNUMERICIDENTIFIER]})`); + createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NUMERICIDENTIFIERLOOSE]}|${src[t.NONNUMERICIDENTIFIER]})`); + createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`); + createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`); + createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`); + createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`); + createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`); + createToken("FULL", `^${src[t.FULLPLAIN]}$`); + createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`); + createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`); + createToken("GTLT", "((?:<|>)?=?)"); + createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`); + createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`); + createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?)?)?`); + createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`); + createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`); + createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`); + createToken("COERCE", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:$|[^\\d])`); + createToken("COERCERTL", src[t.COERCE], true); + createToken("LONETILDE", "(?:~>?)"); + createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true); + exports2.tildeTrimReplace = "$1~"; + createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`); + createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`); + createToken("LONECARET", "(?:\\^)"); + createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true); + exports2.caretTrimReplace = "$1^"; + createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`); + createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`); + createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`); + createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`); + createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true); + exports2.comparatorTrimReplace = "$1$2$3"; + createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})\\s+-\\s+(${src[t.XRANGEPLAIN]})\\s*$`); + createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t.XRANGEPLAINLOOSE]})\\s*$`); + createToken("STAR", "(<|>)?=?\\s*\\*"); + createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$"); + createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$"); + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/parse-options.js +var require_parse_options = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/parse-options.js"(exports2, module2) { + var looseOption = Object.freeze({ loose: true }); + var emptyOpts = Object.freeze({}); + var parseOptions = (options2) => { + if (!options2) { + return emptyOpts; + } + if (typeof options2 !== "object") { + return looseOption; + } + return options2; + }; + module2.exports = parseOptions; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/identifiers.js +var require_identifiers = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/identifiers.js"(exports2, module2) { + var numeric = /^[0-9]+$/; + var compareIdentifiers = (a, b) => { + const anum = numeric.test(a); + const bnum = numeric.test(b); + if (anum && bnum) { + a = +a; + b = +b; + } + return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1; + }; + var rcompareIdentifiers = (a, b) => compareIdentifiers(b, a); + module2.exports = { + compareIdentifiers, + rcompareIdentifiers + }; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/classes/semver.js +var require_semver2 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/classes/semver.js"(exports2, module2) { + var debug = require_debug2(); + var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants8(); + var { safeRe: re, t } = require_re(); + var parseOptions = require_parse_options(); + var { compareIdentifiers } = require_identifiers(); + var SemVer = class _SemVer { + constructor(version4, options2) { + options2 = parseOptions(options2); + if (version4 instanceof _SemVer) { + if (version4.loose === !!options2.loose && version4.includePrerelease === !!options2.includePrerelease) { + return version4; + } else { + version4 = version4.version; + } + } else if (typeof version4 !== "string") { + throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version4}".`); + } + if (version4.length > MAX_LENGTH) { + throw new TypeError( + `version is longer than ${MAX_LENGTH} characters` + ); + } + debug("SemVer", version4, options2); + this.options = options2; + this.loose = !!options2.loose; + this.includePrerelease = !!options2.includePrerelease; + const m = version4.trim().match(options2.loose ? re[t.LOOSE] : re[t.FULL]); + if (!m) { + throw new TypeError(`Invalid Version: ${version4}`); + } + this.raw = version4; + this.major = +m[1]; + this.minor = +m[2]; + this.patch = +m[3]; + if (this.major > MAX_SAFE_INTEGER || this.major < 0) { + throw new TypeError("Invalid major version"); + } + if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { + throw new TypeError("Invalid minor version"); + } + if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { + throw new TypeError("Invalid patch version"); + } + if (!m[4]) { + this.prerelease = []; + } else { + this.prerelease = m[4].split(".").map((id) => { + if (/^[0-9]+$/.test(id)) { + const num = +id; + if (num >= 0 && num < MAX_SAFE_INTEGER) { + return num; + } + } + return id; + }); + } + this.build = m[5] ? m[5].split(".") : []; + this.format(); + } + format() { + this.version = `${this.major}.${this.minor}.${this.patch}`; + if (this.prerelease.length) { + this.version += `-${this.prerelease.join(".")}`; + } + return this.version; + } + toString() { + return this.version; + } + compare(other) { + debug("SemVer.compare", this.version, this.options, other); + if (!(other instanceof _SemVer)) { + if (typeof other === "string" && other === this.version) { + return 0; + } + other = new _SemVer(other, this.options); + } + if (other.version === this.version) { + return 0; + } + return this.compareMain(other) || this.comparePre(other); + } + compareMain(other) { + if (!(other instanceof _SemVer)) { + other = new _SemVer(other, this.options); + } + return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch); + } + comparePre(other) { + if (!(other instanceof _SemVer)) { + other = new _SemVer(other, this.options); + } + if (this.prerelease.length && !other.prerelease.length) { + return -1; + } else if (!this.prerelease.length && other.prerelease.length) { + return 1; + } else if (!this.prerelease.length && !other.prerelease.length) { + return 0; + } + let i = 0; + do { + const a = this.prerelease[i]; + const b = other.prerelease[i]; + debug("prerelease compare", i, a, b); + if (a === void 0 && b === void 0) { + return 0; + } else if (b === void 0) { + return 1; + } else if (a === void 0) { + return -1; + } else if (a === b) { + continue; + } else { + return compareIdentifiers(a, b); + } + } while (++i); + } + compareBuild(other) { + if (!(other instanceof _SemVer)) { + other = new _SemVer(other, this.options); + } + let i = 0; + do { + const a = this.build[i]; + const b = other.build[i]; + debug("prerelease compare", i, a, b); + if (a === void 0 && b === void 0) { + return 0; + } else if (b === void 0) { + return 1; + } else if (a === void 0) { + return -1; + } else if (a === b) { + continue; + } else { + return compareIdentifiers(a, b); + } + } while (++i); + } + // preminor will bump the version up to the next minor release, and immediately + // down to pre-release. premajor and prepatch work the same way. + inc(release, identifier, identifierBase) { + switch (release) { + case "premajor": + this.prerelease.length = 0; + this.patch = 0; + this.minor = 0; + this.major++; + this.inc("pre", identifier, identifierBase); + break; + case "preminor": + this.prerelease.length = 0; + this.patch = 0; + this.minor++; + this.inc("pre", identifier, identifierBase); + break; + case "prepatch": + this.prerelease.length = 0; + this.inc("patch", identifier, identifierBase); + this.inc("pre", identifier, identifierBase); + break; + case "prerelease": + if (this.prerelease.length === 0) { + this.inc("patch", identifier, identifierBase); + } + this.inc("pre", identifier, identifierBase); + break; + case "major": + if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { + this.major++; + } + this.minor = 0; + this.patch = 0; + this.prerelease = []; + break; + case "minor": + if (this.patch !== 0 || this.prerelease.length === 0) { + this.minor++; + } + this.patch = 0; + this.prerelease = []; + break; + case "patch": + if (this.prerelease.length === 0) { + this.patch++; + } + this.prerelease = []; + break; + case "pre": { + const base = Number(identifierBase) ? 1 : 0; + if (!identifier && identifierBase === false) { + throw new Error("invalid increment argument: identifier is empty"); + } + if (this.prerelease.length === 0) { + this.prerelease = [base]; + } else { + let i = this.prerelease.length; + while (--i >= 0) { + if (typeof this.prerelease[i] === "number") { + this.prerelease[i]++; + i = -2; + } + } + if (i === -1) { + if (identifier === this.prerelease.join(".") && identifierBase === false) { + throw new Error("invalid increment argument: identifier already exists"); + } + this.prerelease.push(base); + } + } + if (identifier) { + let prerelease = [identifier, base]; + if (identifierBase === false) { + prerelease = [identifier]; + } + if (compareIdentifiers(this.prerelease[0], identifier) === 0) { + if (isNaN(this.prerelease[1])) { + this.prerelease = prerelease; + } + } else { + this.prerelease = prerelease; + } + } + break; + } + default: + throw new Error(`invalid increment argument: ${release}`); + } + this.raw = this.format(); + if (this.build.length) { + this.raw += `+${this.build.join(".")}`; + } + return this; + } + }; + module2.exports = SemVer; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/parse.js +var require_parse5 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/parse.js"(exports2, module2) { + var SemVer = require_semver2(); + var parse7 = (version4, options2, throwErrors = false) => { + if (version4 instanceof SemVer) { + return version4; + } + try { + return new SemVer(version4, options2); + } catch (er) { + if (!throwErrors) { + return null; + } + throw er; + } + }; + module2.exports = parse7; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/valid.js +var require_valid = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/valid.js"(exports2, module2) { + var parse7 = require_parse5(); + var valid = (version4, options2) => { + const v = parse7(version4, options2); + return v ? v.version : null; + }; + module2.exports = valid; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/clean.js +var require_clean = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/clean.js"(exports2, module2) { + var parse7 = require_parse5(); + var clean = (version4, options2) => { + const s = parse7(version4.trim().replace(/^[=v]+/, ""), options2); + return s ? s.version : null; + }; + module2.exports = clean; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/inc.js +var require_inc = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/inc.js"(exports2, module2) { + var SemVer = require_semver2(); + var inc = (version4, release, options2, identifier, identifierBase) => { + if (typeof options2 === "string") { + identifierBase = identifier; + identifier = options2; + options2 = void 0; + } + try { + return new SemVer( + version4 instanceof SemVer ? version4.version : version4, + options2 + ).inc(release, identifier, identifierBase).version; + } catch (er) { + return null; + } + }; + module2.exports = inc; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/diff.js +var require_diff = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/diff.js"(exports2, module2) { + var parse7 = require_parse5(); + var diff = (version1, version22) => { + const v1 = parse7(version1, null, true); + const v2 = parse7(version22, null, true); + const comparison = v1.compare(v2); + if (comparison === 0) { + return null; + } + const v1Higher = comparison > 0; + const highVersion = v1Higher ? v1 : v2; + const lowVersion = v1Higher ? v2 : v1; + const highHasPre = !!highVersion.prerelease.length; + const lowHasPre = !!lowVersion.prerelease.length; + if (lowHasPre && !highHasPre) { + if (!lowVersion.patch && !lowVersion.minor) { + return "major"; + } + if (highVersion.patch) { + return "patch"; + } + if (highVersion.minor) { + return "minor"; + } + return "major"; + } + const prefix = highHasPre ? "pre" : ""; + if (v1.major !== v2.major) { + return prefix + "major"; + } + if (v1.minor !== v2.minor) { + return prefix + "minor"; + } + if (v1.patch !== v2.patch) { + return prefix + "patch"; + } + return "prerelease"; + }; + module2.exports = diff; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/major.js +var require_major = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/major.js"(exports2, module2) { + var SemVer = require_semver2(); + var major2 = (a, loose) => new SemVer(a, loose).major; + module2.exports = major2; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/minor.js +var require_minor = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/minor.js"(exports2, module2) { + var SemVer = require_semver2(); + var minor2 = (a, loose) => new SemVer(a, loose).minor; + module2.exports = minor2; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/patch.js +var require_patch = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/patch.js"(exports2, module2) { + var SemVer = require_semver2(); + var patch = (a, loose) => new SemVer(a, loose).patch; + module2.exports = patch; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/prerelease.js +var require_prerelease = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/prerelease.js"(exports2, module2) { + var parse7 = require_parse5(); + var prerelease = (version4, options2) => { + const parsed = parse7(version4, options2); + return parsed && parsed.prerelease.length ? parsed.prerelease : null; + }; + module2.exports = prerelease; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/compare.js +var require_compare = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/compare.js"(exports2, module2) { + var SemVer = require_semver2(); + var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose)); + module2.exports = compare; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/rcompare.js +var require_rcompare = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/rcompare.js"(exports2, module2) { + var compare = require_compare(); + var rcompare = (a, b, loose) => compare(b, a, loose); + module2.exports = rcompare; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/compare-loose.js +var require_compare_loose = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/compare-loose.js"(exports2, module2) { + var compare = require_compare(); + var compareLoose = (a, b) => compare(a, b, true); + module2.exports = compareLoose; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/compare-build.js +var require_compare_build = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/compare-build.js"(exports2, module2) { + var SemVer = require_semver2(); + var compareBuild = (a, b, loose) => { + const versionA = new SemVer(a, loose); + const versionB = new SemVer(b, loose); + return versionA.compare(versionB) || versionA.compareBuild(versionB); + }; + module2.exports = compareBuild; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/sort.js +var require_sort = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/sort.js"(exports2, module2) { + var compareBuild = require_compare_build(); + var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose)); + module2.exports = sort; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/rsort.js +var require_rsort = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/rsort.js"(exports2, module2) { + var compareBuild = require_compare_build(); + var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose)); + module2.exports = rsort; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/gt.js +var require_gt = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/gt.js"(exports2, module2) { + var compare = require_compare(); + var gt = (a, b, loose) => compare(a, b, loose) > 0; + module2.exports = gt; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/lt.js +var require_lt = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/lt.js"(exports2, module2) { + var compare = require_compare(); + var lt = (a, b, loose) => compare(a, b, loose) < 0; + module2.exports = lt; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/eq.js +var require_eq = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/eq.js"(exports2, module2) { + var compare = require_compare(); + var eq = (a, b, loose) => compare(a, b, loose) === 0; + module2.exports = eq; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/neq.js +var require_neq = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/neq.js"(exports2, module2) { + var compare = require_compare(); + var neq = (a, b, loose) => compare(a, b, loose) !== 0; + module2.exports = neq; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/gte.js +var require_gte = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/gte.js"(exports2, module2) { + var compare = require_compare(); + var gte = (a, b, loose) => compare(a, b, loose) >= 0; + module2.exports = gte; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/lte.js +var require_lte = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/lte.js"(exports2, module2) { + var compare = require_compare(); + var lte = (a, b, loose) => compare(a, b, loose) <= 0; + module2.exports = lte; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/cmp.js +var require_cmp = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/cmp.js"(exports2, module2) { + var eq = require_eq(); + var neq = require_neq(); + var gt = require_gt(); + var gte = require_gte(); + var lt = require_lt(); + var lte = require_lte(); + var cmp = (a, op, b, loose) => { + switch (op) { + case "===": + if (typeof a === "object") { + a = a.version; + } + if (typeof b === "object") { + b = b.version; + } + return a === b; + case "!==": + if (typeof a === "object") { + a = a.version; + } + if (typeof b === "object") { + b = b.version; + } + return a !== b; + case "": + case "=": + case "==": + return eq(a, b, loose); + case "!=": + return neq(a, b, loose); + case ">": + return gt(a, b, loose); + case ">=": + return gte(a, b, loose); + case "<": + return lt(a, b, loose); + case "<=": + return lte(a, b, loose); + default: + throw new TypeError(`Invalid operator: ${op}`); + } + }; + module2.exports = cmp; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/coerce.js +var require_coerce = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/coerce.js"(exports2, module2) { + var SemVer = require_semver2(); + var parse7 = require_parse5(); + var { safeRe: re, t } = require_re(); + var coerce = (version4, options2) => { + if (version4 instanceof SemVer) { + return version4; + } + if (typeof version4 === "number") { + version4 = String(version4); + } + if (typeof version4 !== "string") { + return null; + } + options2 = options2 || {}; + let match2 = null; + if (!options2.rtl) { + match2 = version4.match(re[t.COERCE]); + } else { + let next; + while ((next = re[t.COERCERTL].exec(version4)) && (!match2 || match2.index + match2[0].length !== version4.length)) { + if (!match2 || next.index + next[0].length !== match2.index + match2[0].length) { + match2 = next; + } + re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length; + } + re[t.COERCERTL].lastIndex = -1; + } + if (match2 === null) { + return null; + } + return parse7(`${match2[2]}.${match2[3] || "0"}.${match2[4] || "0"}`, options2); + }; + module2.exports = coerce; + } +}); + +// ../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/iterator.js +var require_iterator2 = __commonJS({ + "../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/iterator.js"(exports2, module2) { + "use strict"; + module2.exports = function(Yallist) { + Yallist.prototype[Symbol.iterator] = function* () { + for (let walker = this.head; walker; walker = walker.next) { + yield walker.value; + } + }; + }; + } +}); + +// ../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/yallist.js +var require_yallist = __commonJS({ + "../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/yallist.js"(exports2, module2) { + "use strict"; + module2.exports = Yallist; + Yallist.Node = Node2; + Yallist.create = Yallist; + function Yallist(list) { + var self2 = this; + if (!(self2 instanceof Yallist)) { + self2 = new Yallist(); + } + self2.tail = null; + self2.head = null; + self2.length = 0; + if (list && typeof list.forEach === "function") { + list.forEach(function(item) { + self2.push(item); + }); + } else if (arguments.length > 0) { + for (var i = 0, l2 = arguments.length; i < l2; i++) { + self2.push(arguments[i]); + } + } + return self2; + } + Yallist.prototype.removeNode = function(node) { + if (node.list !== this) { + throw new Error("removing node which does not belong to this list"); + } + var next = node.next; + var prev = node.prev; + if (next) { + next.prev = prev; + } + if (prev) { + prev.next = next; + } + if (node === this.head) { + this.head = next; + } + if (node === this.tail) { + this.tail = prev; + } + node.list.length--; + node.next = null; + node.prev = null; + node.list = null; + return next; + }; + Yallist.prototype.unshiftNode = function(node) { + if (node === this.head) { + return; + } + if (node.list) { + node.list.removeNode(node); + } + var head = this.head; + node.list = this; + node.next = head; + if (head) { + head.prev = node; + } + this.head = node; + if (!this.tail) { + this.tail = node; + } + this.length++; + }; + Yallist.prototype.pushNode = function(node) { + if (node === this.tail) { + return; + } + if (node.list) { + node.list.removeNode(node); + } + var tail = this.tail; + node.list = this; + node.prev = tail; + if (tail) { + tail.next = node; + } + this.tail = node; + if (!this.head) { + this.head = node; + } + this.length++; + }; + Yallist.prototype.push = function() { + for (var i = 0, l2 = arguments.length; i < l2; i++) { + push(this, arguments[i]); + } + return this.length; + }; + Yallist.prototype.unshift = function() { + for (var i = 0, l2 = arguments.length; i < l2; i++) { + unshift(this, arguments[i]); + } + return this.length; + }; + Yallist.prototype.pop = function() { + if (!this.tail) { + return void 0; + } + var res = this.tail.value; + this.tail = this.tail.prev; + if (this.tail) { + this.tail.next = null; + } else { + this.head = null; + } + this.length--; + return res; + }; + Yallist.prototype.shift = function() { + if (!this.head) { + return void 0; + } + var res = this.head.value; + this.head = this.head.next; + if (this.head) { + this.head.prev = null; + } else { + this.tail = null; + } + this.length--; + return res; + }; + Yallist.prototype.forEach = function(fn, thisp) { + thisp = thisp || this; + for (var walker = this.head, i = 0; walker !== null; i++) { + fn.call(thisp, walker.value, i, this); + walker = walker.next; + } + }; + Yallist.prototype.forEachReverse = function(fn, thisp) { + thisp = thisp || this; + for (var walker = this.tail, i = this.length - 1; walker !== null; i--) { + fn.call(thisp, walker.value, i, this); + walker = walker.prev; + } + }; + Yallist.prototype.get = function(n) { + for (var i = 0, walker = this.head; walker !== null && i < n; i++) { + walker = walker.next; + } + if (i === n && walker !== null) { + return walker.value; + } + }; + Yallist.prototype.getReverse = function(n) { + for (var i = 0, walker = this.tail; walker !== null && i < n; i++) { + walker = walker.prev; + } + if (i === n && walker !== null) { + return walker.value; + } + }; + Yallist.prototype.map = function(fn, thisp) { + thisp = thisp || this; + var res = new Yallist(); + for (var walker = this.head; walker !== null; ) { + res.push(fn.call(thisp, walker.value, this)); + walker = walker.next; + } + return res; + }; + Yallist.prototype.mapReverse = function(fn, thisp) { + thisp = thisp || this; + var res = new Yallist(); + for (var walker = this.tail; walker !== null; ) { + res.push(fn.call(thisp, walker.value, this)); + walker = walker.prev; + } + return res; + }; + Yallist.prototype.reduce = function(fn, initial) { + var acc; + var walker = this.head; + if (arguments.length > 1) { + acc = initial; + } else if (this.head) { + walker = this.head.next; + acc = this.head.value; + } else { + throw new TypeError("Reduce of empty list with no initial value"); + } + for (var i = 0; walker !== null; i++) { + acc = fn(acc, walker.value, i); + walker = walker.next; + } + return acc; + }; + Yallist.prototype.reduceReverse = function(fn, initial) { + var acc; + var walker = this.tail; + if (arguments.length > 1) { + acc = initial; + } else if (this.tail) { + walker = this.tail.prev; + acc = this.tail.value; + } else { + throw new TypeError("Reduce of empty list with no initial value"); + } + for (var i = this.length - 1; walker !== null; i--) { + acc = fn(acc, walker.value, i); + walker = walker.prev; + } + return acc; + }; + Yallist.prototype.toArray = function() { + var arr = new Array(this.length); + for (var i = 0, walker = this.head; walker !== null; i++) { + arr[i] = walker.value; + walker = walker.next; + } + return arr; + }; + Yallist.prototype.toArrayReverse = function() { + var arr = new Array(this.length); + for (var i = 0, walker = this.tail; walker !== null; i++) { + arr[i] = walker.value; + walker = walker.prev; + } + return arr; + }; + Yallist.prototype.slice = function(from, to) { + to = to || this.length; + if (to < 0) { + to += this.length; + } + from = from || 0; + if (from < 0) { + from += this.length; + } + var ret2 = new Yallist(); + if (to < from || to < 0) { + return ret2; + } + if (from < 0) { + from = 0; + } + if (to > this.length) { + to = this.length; + } + for (var i = 0, walker = this.head; walker !== null && i < from; i++) { + walker = walker.next; + } + for (; walker !== null && i < to; i++, walker = walker.next) { + ret2.push(walker.value); + } + return ret2; + }; + Yallist.prototype.sliceReverse = function(from, to) { + to = to || this.length; + if (to < 0) { + to += this.length; + } + from = from || 0; + if (from < 0) { + from += this.length; + } + var ret2 = new Yallist(); + if (to < from || to < 0) { + return ret2; + } + if (from < 0) { + from = 0; + } + if (to > this.length) { + to = this.length; + } + for (var i = this.length, walker = this.tail; walker !== null && i > to; i--) { + walker = walker.prev; + } + for (; walker !== null && i > from; i--, walker = walker.prev) { + ret2.push(walker.value); + } + return ret2; + }; + Yallist.prototype.splice = function(start4, deleteCount, ...nodes) { + if (start4 > this.length) { + start4 = this.length - 1; + } + if (start4 < 0) { + start4 = this.length + start4; + } + for (var i = 0, walker = this.head; walker !== null && i < start4; i++) { + walker = walker.next; + } + var ret2 = []; + for (var i = 0; walker && i < deleteCount; i++) { + ret2.push(walker.value); + walker = this.removeNode(walker); + } + if (walker === null) { + walker = this.tail; + } + if (walker !== this.head && walker !== this.tail) { + walker = walker.prev; + } + for (var i = 0; i < nodes.length; i++) { + walker = insert(this, walker, nodes[i]); + } + return ret2; + }; + Yallist.prototype.reverse = function() { + var head = this.head; + var tail = this.tail; + for (var walker = head; walker !== null; walker = walker.prev) { + var p = walker.prev; + walker.prev = walker.next; + walker.next = p; + } + this.head = tail; + this.tail = head; + return this; + }; + function insert(self2, node, value) { + var inserted = node === self2.head ? new Node2(value, null, node, self2) : new Node2(value, node, node.next, self2); + if (inserted.next === null) { + self2.tail = inserted; + } + if (inserted.prev === null) { + self2.head = inserted; + } + self2.length++; + return inserted; + } + function push(self2, item) { + self2.tail = new Node2(item, self2.tail, null, self2); + if (!self2.head) { + self2.head = self2.tail; + } + self2.length++; + } + function unshift(self2, item) { + self2.head = new Node2(item, null, self2.head, self2); + if (!self2.tail) { + self2.tail = self2.head; + } + self2.length++; + } + function Node2(value, prev, next, list) { + if (!(this instanceof Node2)) { + return new Node2(value, prev, next, list); + } + this.list = list; + this.value = value; + if (prev) { + prev.next = this; + this.prev = prev; + } else { + this.prev = null; + } + if (next) { + next.prev = this; + this.next = next; + } else { + this.next = null; + } + } + try { + require_iterator2()(Yallist); + } catch (er) { + } + } +}); + +// ../node_modules/.pnpm/lru-cache@6.0.0/node_modules/lru-cache/index.js +var require_lru_cache = __commonJS({ + "../node_modules/.pnpm/lru-cache@6.0.0/node_modules/lru-cache/index.js"(exports2, module2) { + "use strict"; + var Yallist = require_yallist(); + var MAX = Symbol("max"); + var LENGTH = Symbol("length"); + var LENGTH_CALCULATOR = Symbol("lengthCalculator"); + var ALLOW_STALE = Symbol("allowStale"); + var MAX_AGE = Symbol("maxAge"); + var DISPOSE = Symbol("dispose"); + var NO_DISPOSE_ON_SET = Symbol("noDisposeOnSet"); + var LRU_LIST = Symbol("lruList"); + var CACHE = Symbol("cache"); + var UPDATE_AGE_ON_GET = Symbol("updateAgeOnGet"); + var naiveLength = () => 1; + var LRUCache2 = class { + constructor(options2) { + if (typeof options2 === "number") + options2 = { max: options2 }; + if (!options2) + options2 = {}; + if (options2.max && (typeof options2.max !== "number" || options2.max < 0)) + throw new TypeError("max must be a non-negative number"); + const max = this[MAX] = options2.max || Infinity; + const lc = options2.length || naiveLength; + this[LENGTH_CALCULATOR] = typeof lc !== "function" ? naiveLength : lc; + this[ALLOW_STALE] = options2.stale || false; + if (options2.maxAge && typeof options2.maxAge !== "number") + throw new TypeError("maxAge must be a number"); + this[MAX_AGE] = options2.maxAge || 0; + this[DISPOSE] = options2.dispose; + this[NO_DISPOSE_ON_SET] = options2.noDisposeOnSet || false; + this[UPDATE_AGE_ON_GET] = options2.updateAgeOnGet || false; + this.reset(); + } + // resize the cache when the max changes. + set max(mL) { + if (typeof mL !== "number" || mL < 0) + throw new TypeError("max must be a non-negative number"); + this[MAX] = mL || Infinity; + trim2(this); + } + get max() { + return this[MAX]; + } + set allowStale(allowStale) { + this[ALLOW_STALE] = !!allowStale; + } + get allowStale() { + return this[ALLOW_STALE]; + } + set maxAge(mA) { + if (typeof mA !== "number") + throw new TypeError("maxAge must be a non-negative number"); + this[MAX_AGE] = mA; + trim2(this); + } + get maxAge() { + return this[MAX_AGE]; + } + // resize the cache when the lengthCalculator changes. + set lengthCalculator(lC) { + if (typeof lC !== "function") + lC = naiveLength; + if (lC !== this[LENGTH_CALCULATOR]) { + this[LENGTH_CALCULATOR] = lC; + this[LENGTH] = 0; + this[LRU_LIST].forEach((hit) => { + hit.length = this[LENGTH_CALCULATOR](hit.value, hit.key); + this[LENGTH] += hit.length; + }); + } + trim2(this); + } + get lengthCalculator() { + return this[LENGTH_CALCULATOR]; + } + get length() { + return this[LENGTH]; + } + get itemCount() { + return this[LRU_LIST].length; + } + rforEach(fn, thisp) { + thisp = thisp || this; + for (let walker = this[LRU_LIST].tail; walker !== null; ) { + const prev = walker.prev; + forEachStep(this, fn, walker, thisp); + walker = prev; + } + } + forEach(fn, thisp) { + thisp = thisp || this; + for (let walker = this[LRU_LIST].head; walker !== null; ) { + const next = walker.next; + forEachStep(this, fn, walker, thisp); + walker = next; + } + } + keys() { + return this[LRU_LIST].toArray().map((k) => k.key); + } + values() { + return this[LRU_LIST].toArray().map((k) => k.value); + } + reset() { + if (this[DISPOSE] && this[LRU_LIST] && this[LRU_LIST].length) { + this[LRU_LIST].forEach((hit) => this[DISPOSE](hit.key, hit.value)); + } + this[CACHE] = /* @__PURE__ */ new Map(); + this[LRU_LIST] = new Yallist(); + this[LENGTH] = 0; + } + dump() { + return this[LRU_LIST].map((hit) => isStale(this, hit) ? false : { + k: hit.key, + v: hit.value, + e: hit.now + (hit.maxAge || 0) + }).toArray().filter((h) => h); + } + dumpLru() { + return this[LRU_LIST]; + } + set(key, value, maxAge) { + maxAge = maxAge || this[MAX_AGE]; + if (maxAge && typeof maxAge !== "number") + throw new TypeError("maxAge must be a number"); + const now = maxAge ? Date.now() : 0; + const len = this[LENGTH_CALCULATOR](value, key); + if (this[CACHE].has(key)) { + if (len > this[MAX]) { + del(this, this[CACHE].get(key)); + return false; + } + const node = this[CACHE].get(key); + const item = node.value; + if (this[DISPOSE]) { + if (!this[NO_DISPOSE_ON_SET]) + this[DISPOSE](key, item.value); + } + item.now = now; + item.maxAge = maxAge; + item.value = value; + this[LENGTH] += len - item.length; + item.length = len; + this.get(key); + trim2(this); + return true; + } + const hit = new Entry(key, value, len, now, maxAge); + if (hit.length > this[MAX]) { + if (this[DISPOSE]) + this[DISPOSE](key, value); + return false; + } + this[LENGTH] += hit.length; + this[LRU_LIST].unshift(hit); + this[CACHE].set(key, this[LRU_LIST].head); + trim2(this); + return true; + } + has(key) { + if (!this[CACHE].has(key)) + return false; + const hit = this[CACHE].get(key).value; + return !isStale(this, hit); + } + get(key) { + return get(this, key, true); + } + peek(key) { + return get(this, key, false); + } + pop() { + const node = this[LRU_LIST].tail; + if (!node) + return null; + del(this, node); + return node.value; + } + del(key) { + del(this, this[CACHE].get(key)); + } + load(arr) { + this.reset(); + const now = Date.now(); + for (let l2 = arr.length - 1; l2 >= 0; l2--) { + const hit = arr[l2]; + const expiresAt = hit.e || 0; + if (expiresAt === 0) + this.set(hit.k, hit.v); + else { + const maxAge = expiresAt - now; + if (maxAge > 0) { + this.set(hit.k, hit.v, maxAge); + } + } + } + } + prune() { + this[CACHE].forEach((value, key) => get(this, key, false)); + } + }; + var get = (self2, key, doUse) => { + const node = self2[CACHE].get(key); + if (node) { + const hit = node.value; + if (isStale(self2, hit)) { + del(self2, node); + if (!self2[ALLOW_STALE]) + return void 0; + } else { + if (doUse) { + if (self2[UPDATE_AGE_ON_GET]) + node.value.now = Date.now(); + self2[LRU_LIST].unshiftNode(node); + } + } + return hit.value; + } + }; + var isStale = (self2, hit) => { + if (!hit || !hit.maxAge && !self2[MAX_AGE]) + return false; + const diff = Date.now() - hit.now; + return hit.maxAge ? diff > hit.maxAge : self2[MAX_AGE] && diff > self2[MAX_AGE]; + }; + var trim2 = (self2) => { + if (self2[LENGTH] > self2[MAX]) { + for (let walker = self2[LRU_LIST].tail; self2[LENGTH] > self2[MAX] && walker !== null; ) { + const prev = walker.prev; + del(self2, walker); + walker = prev; + } + } + }; + var del = (self2, node) => { + if (node) { + const hit = node.value; + if (self2[DISPOSE]) + self2[DISPOSE](hit.key, hit.value); + self2[LENGTH] -= hit.length; + self2[CACHE].delete(hit.key); + self2[LRU_LIST].removeNode(node); + } + }; + var Entry = class { + constructor(key, value, length, now, maxAge) { + this.key = key; + this.value = value; + this.length = length; + this.now = now; + this.maxAge = maxAge || 0; + } + }; + var forEachStep = (self2, fn, node, thisp) => { + let hit = node.value; + if (isStale(self2, hit)) { + del(self2, node); + if (!self2[ALLOW_STALE]) + hit = void 0; + } + if (hit) + fn.call(thisp, hit.value, hit.key, self2); + }; + module2.exports = LRUCache2; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/classes/range.js +var require_range2 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/classes/range.js"(exports2, module2) { + var Range2 = class _Range { + constructor(range, options2) { + options2 = parseOptions(options2); + if (range instanceof _Range) { + if (range.loose === !!options2.loose && range.includePrerelease === !!options2.includePrerelease) { + return range; + } else { + return new _Range(range.raw, options2); + } + } + if (range instanceof Comparator) { + this.raw = range.value; + this.set = [[range]]; + this.format(); + return this; + } + this.options = options2; + this.loose = !!options2.loose; + this.includePrerelease = !!options2.includePrerelease; + this.raw = range.trim().split(/\s+/).join(" "); + this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length); + if (!this.set.length) { + throw new TypeError(`Invalid SemVer Range: ${this.raw}`); + } + if (this.set.length > 1) { + const first = this.set[0]; + this.set = this.set.filter((c) => !isNullSet(c[0])); + if (this.set.length === 0) { + this.set = [first]; + } else if (this.set.length > 1) { + for (const c of this.set) { + if (c.length === 1 && isAny(c[0])) { + this.set = [c]; + break; + } + } + } + } + this.format(); + } + format() { + this.range = this.set.map((comps) => comps.join(" ").trim()).join("||").trim(); + return this.range; + } + toString() { + return this.range; + } + parseRange(range) { + const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE); + const memoKey = memoOpts + ":" + range; + const cached = cache.get(memoKey); + if (cached) { + return cached; + } + const loose = this.options.loose; + const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]; + range = range.replace(hr, hyphenReplace(this.options.includePrerelease)); + debug("hyphen replace", range); + range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace); + debug("comparator trim", range); + range = range.replace(re[t.TILDETRIM], tildeTrimReplace); + debug("tilde trim", range); + range = range.replace(re[t.CARETTRIM], caretTrimReplace); + debug("caret trim", range); + let rangeList = range.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options)); + if (loose) { + rangeList = rangeList.filter((comp) => { + debug("loose invalid filter", comp, this.options); + return !!comp.match(re[t.COMPARATORLOOSE]); + }); + } + debug("range list", rangeList); + const rangeMap = /* @__PURE__ */ new Map(); + const comparators = rangeList.map((comp) => new Comparator(comp, this.options)); + for (const comp of comparators) { + if (isNullSet(comp)) { + return [comp]; + } + rangeMap.set(comp.value, comp); + } + if (rangeMap.size > 1 && rangeMap.has("")) { + rangeMap.delete(""); + } + const result = [...rangeMap.values()]; + cache.set(memoKey, result); + return result; + } + intersects(range, options2) { + if (!(range instanceof _Range)) { + throw new TypeError("a Range is required"); + } + return this.set.some((thisComparators) => { + return isSatisfiable(thisComparators, options2) && range.set.some((rangeComparators) => { + return isSatisfiable(rangeComparators, options2) && thisComparators.every((thisComparator) => { + return rangeComparators.every((rangeComparator) => { + return thisComparator.intersects(rangeComparator, options2); + }); + }); + }); + }); + } + // if ANY of the sets match ALL of its comparators, then pass + test(version4) { + if (!version4) { + return false; + } + if (typeof version4 === "string") { + try { + version4 = new SemVer(version4, this.options); + } catch (er) { + return false; + } + } + for (let i = 0; i < this.set.length; i++) { + if (testSet(this.set[i], version4, this.options)) { + return true; + } + } + return false; + } + }; + module2.exports = Range2; + var LRU = require_lru_cache(); + var cache = new LRU({ max: 1e3 }); + var parseOptions = require_parse_options(); + var Comparator = require_comparator(); + var debug = require_debug2(); + var SemVer = require_semver2(); + var { + safeRe: re, + t, + comparatorTrimReplace, + tildeTrimReplace, + caretTrimReplace + } = require_re(); + var { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants8(); + var isNullSet = (c) => c.value === "<0.0.0-0"; + var isAny = (c) => c.value === ""; + var isSatisfiable = (comparators, options2) => { + let result = true; + const remainingComparators = comparators.slice(); + let testComparator = remainingComparators.pop(); + while (result && remainingComparators.length) { + result = remainingComparators.every((otherComparator) => { + return testComparator.intersects(otherComparator, options2); + }); + testComparator = remainingComparators.pop(); + } + return result; + }; + var parseComparator = (comp, options2) => { + debug("comp", comp, options2); + comp = replaceCarets(comp, options2); + debug("caret", comp); + comp = replaceTildes(comp, options2); + debug("tildes", comp); + comp = replaceXRanges(comp, options2); + debug("xrange", comp); + comp = replaceStars(comp, options2); + debug("stars", comp); + return comp; + }; + var isX = (id) => !id || id.toLowerCase() === "x" || id === "*"; + var replaceTildes = (comp, options2) => { + return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options2)).join(" "); + }; + var replaceTilde = (comp, options2) => { + const r = options2.loose ? re[t.TILDELOOSE] : re[t.TILDE]; + return comp.replace(r, (_, M, m, p, pr) => { + debug("tilde", comp, _, M, m, p, pr); + let ret2; + if (isX(M)) { + ret2 = ""; + } else if (isX(m)) { + ret2 = `>=${M}.0.0 <${+M + 1}.0.0-0`; + } else if (isX(p)) { + ret2 = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`; + } else if (pr) { + debug("replaceTilde pr", pr); + ret2 = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`; + } else { + ret2 = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`; + } + debug("tilde return", ret2); + return ret2; + }); + }; + var replaceCarets = (comp, options2) => { + return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options2)).join(" "); + }; + var replaceCaret = (comp, options2) => { + debug("caret", comp, options2); + const r = options2.loose ? re[t.CARETLOOSE] : re[t.CARET]; + const z = options2.includePrerelease ? "-0" : ""; + return comp.replace(r, (_, M, m, p, pr) => { + debug("caret", comp, _, M, m, p, pr); + let ret2; + if (isX(M)) { + ret2 = ""; + } else if (isX(m)) { + ret2 = `>=${M}.0.0${z} <${+M + 1}.0.0-0`; + } else if (isX(p)) { + if (M === "0") { + ret2 = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`; + } else { + ret2 = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`; + } + } else if (pr) { + debug("replaceCaret pr", pr); + if (M === "0") { + if (m === "0") { + ret2 = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`; + } else { + ret2 = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`; + } + } else { + ret2 = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`; + } + } else { + debug("no pr"); + if (M === "0") { + if (m === "0") { + ret2 = `>=${M}.${m}.${p}${z} <${M}.${m}.${+p + 1}-0`; + } else { + ret2 = `>=${M}.${m}.${p}${z} <${M}.${+m + 1}.0-0`; + } + } else { + ret2 = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`; + } + } + debug("caret return", ret2); + return ret2; + }); + }; + var replaceXRanges = (comp, options2) => { + debug("replaceXRanges", comp, options2); + return comp.split(/\s+/).map((c) => replaceXRange(c, options2)).join(" "); + }; + var replaceXRange = (comp, options2) => { + comp = comp.trim(); + const r = options2.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]; + return comp.replace(r, (ret2, gtlt, M, m, p, pr) => { + debug("xRange", comp, ret2, gtlt, M, m, p, pr); + const xM = isX(M); + const xm = xM || isX(m); + const xp = xm || isX(p); + const anyX = xp; + if (gtlt === "=" && anyX) { + gtlt = ""; + } + pr = options2.includePrerelease ? "-0" : ""; + if (xM) { + if (gtlt === ">" || gtlt === "<") { + ret2 = "<0.0.0-0"; + } else { + ret2 = "*"; + } + } else if (gtlt && anyX) { + if (xm) { + m = 0; + } + p = 0; + if (gtlt === ">") { + gtlt = ">="; + if (xm) { + M = +M + 1; + m = 0; + p = 0; + } else { + m = +m + 1; + p = 0; + } + } else if (gtlt === "<=") { + gtlt = "<"; + if (xm) { + M = +M + 1; + } else { + m = +m + 1; + } + } + if (gtlt === "<") { + pr = "-0"; + } + ret2 = `${gtlt + M}.${m}.${p}${pr}`; + } else if (xm) { + ret2 = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`; + } else if (xp) { + ret2 = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`; + } + debug("xRange return", ret2); + return ret2; + }); + }; + var replaceStars = (comp, options2) => { + debug("replaceStars", comp, options2); + return comp.trim().replace(re[t.STAR], ""); + }; + var replaceGTE0 = (comp, options2) => { + debug("replaceGTE0", comp, options2); + return comp.trim().replace(re[options2.includePrerelease ? t.GTE0PRE : t.GTE0], ""); + }; + var hyphenReplace = (incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr, tb) => { + if (isX(fM)) { + from = ""; + } else if (isX(fm)) { + from = `>=${fM}.0.0${incPr ? "-0" : ""}`; + } else if (isX(fp)) { + from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`; + } else if (fpr) { + from = `>=${from}`; + } else { + from = `>=${from}${incPr ? "-0" : ""}`; + } + if (isX(tM)) { + to = ""; + } else if (isX(tm)) { + to = `<${+tM + 1}.0.0-0`; + } else if (isX(tp)) { + to = `<${tM}.${+tm + 1}.0-0`; + } else if (tpr) { + to = `<=${tM}.${tm}.${tp}-${tpr}`; + } else if (incPr) { + to = `<${tM}.${tm}.${+tp + 1}-0`; + } else { + to = `<=${to}`; + } + return `${from} ${to}`.trim(); + }; + var testSet = (set, version4, options2) => { + for (let i = 0; i < set.length; i++) { + if (!set[i].test(version4)) { + return false; + } + } + if (version4.prerelease.length && !options2.includePrerelease) { + for (let i = 0; i < set.length; i++) { + debug(set[i].semver); + if (set[i].semver === Comparator.ANY) { + continue; + } + if (set[i].semver.prerelease.length > 0) { + const allowed = set[i].semver; + if (allowed.major === version4.major && allowed.minor === version4.minor && allowed.patch === version4.patch) { + return true; + } + } + } + return false; + } + return true; + }; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/classes/comparator.js +var require_comparator = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/classes/comparator.js"(exports2, module2) { + var ANY = Symbol("SemVer ANY"); + var Comparator = class _Comparator { + static get ANY() { + return ANY; + } + constructor(comp, options2) { + options2 = parseOptions(options2); + if (comp instanceof _Comparator) { + if (comp.loose === !!options2.loose) { + return comp; + } else { + comp = comp.value; + } + } + comp = comp.trim().split(/\s+/).join(" "); + debug("comparator", comp, options2); + this.options = options2; + this.loose = !!options2.loose; + this.parse(comp); + if (this.semver === ANY) { + this.value = ""; + } else { + this.value = this.operator + this.semver.version; + } + debug("comp", this); + } + parse(comp) { + const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]; + const m = comp.match(r); + if (!m) { + throw new TypeError(`Invalid comparator: ${comp}`); + } + this.operator = m[1] !== void 0 ? m[1] : ""; + if (this.operator === "=") { + this.operator = ""; + } + if (!m[2]) { + this.semver = ANY; + } else { + this.semver = new SemVer(m[2], this.options.loose); + } + } + toString() { + return this.value; + } + test(version4) { + debug("Comparator.test", version4, this.options.loose); + if (this.semver === ANY || version4 === ANY) { + return true; + } + if (typeof version4 === "string") { + try { + version4 = new SemVer(version4, this.options); + } catch (er) { + return false; + } + } + return cmp(version4, this.operator, this.semver, this.options); + } + intersects(comp, options2) { + if (!(comp instanceof _Comparator)) { + throw new TypeError("a Comparator is required"); + } + if (this.operator === "") { + if (this.value === "") { + return true; + } + return new Range2(comp.value, options2).test(this.value); + } else if (comp.operator === "") { + if (comp.value === "") { + return true; + } + return new Range2(this.value, options2).test(comp.semver); + } + options2 = parseOptions(options2); + if (options2.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) { + return false; + } + if (!options2.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) { + return false; + } + if (this.operator.startsWith(">") && comp.operator.startsWith(">")) { + return true; + } + if (this.operator.startsWith("<") && comp.operator.startsWith("<")) { + return true; + } + if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) { + return true; + } + if (cmp(this.semver, "<", comp.semver, options2) && this.operator.startsWith(">") && comp.operator.startsWith("<")) { + return true; + } + if (cmp(this.semver, ">", comp.semver, options2) && this.operator.startsWith("<") && comp.operator.startsWith(">")) { + return true; + } + return false; + } + }; + module2.exports = Comparator; + var parseOptions = require_parse_options(); + var { safeRe: re, t } = require_re(); + var cmp = require_cmp(); + var debug = require_debug2(); + var SemVer = require_semver2(); + var Range2 = require_range2(); + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/satisfies.js +var require_satisfies = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/functions/satisfies.js"(exports2, module2) { + var Range2 = require_range2(); + var satisfies = (version4, range, options2) => { + try { + range = new Range2(range, options2); + } catch (er) { + return false; + } + return range.test(version4); + }; + module2.exports = satisfies; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/to-comparators.js +var require_to_comparators = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/to-comparators.js"(exports2, module2) { + var Range2 = require_range2(); + var toComparators = (range, options2) => new Range2(range, options2).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" ")); + module2.exports = toComparators; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/max-satisfying.js +var require_max_satisfying = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) { + var SemVer = require_semver2(); + var Range2 = require_range2(); + var maxSatisfying = (versions, range, options2) => { + let max = null; + let maxSV = null; + let rangeObj = null; + try { + rangeObj = new Range2(range, options2); + } catch (er) { + return null; + } + versions.forEach((v) => { + if (rangeObj.test(v)) { + if (!max || maxSV.compare(v) === -1) { + max = v; + maxSV = new SemVer(max, options2); + } + } + }); + return max; + }; + module2.exports = maxSatisfying; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/min-satisfying.js +var require_min_satisfying = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) { + var SemVer = require_semver2(); + var Range2 = require_range2(); + var minSatisfying = (versions, range, options2) => { + let min = null; + let minSV = null; + let rangeObj = null; + try { + rangeObj = new Range2(range, options2); + } catch (er) { + return null; + } + versions.forEach((v) => { + if (rangeObj.test(v)) { + if (!min || minSV.compare(v) === 1) { + min = v; + minSV = new SemVer(min, options2); + } + } + }); + return min; + }; + module2.exports = minSatisfying; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/min-version.js +var require_min_version = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/min-version.js"(exports2, module2) { + var SemVer = require_semver2(); + var Range2 = require_range2(); + var gt = require_gt(); + var minVersion = (range, loose) => { + range = new Range2(range, loose); + let minver = new SemVer("0.0.0"); + if (range.test(minver)) { + return minver; + } + minver = new SemVer("0.0.0-0"); + if (range.test(minver)) { + return minver; + } + minver = null; + for (let i = 0; i < range.set.length; ++i) { + const comparators = range.set[i]; + let setMin = null; + comparators.forEach((comparator) => { + const compver = new SemVer(comparator.semver.version); + switch (comparator.operator) { + case ">": + if (compver.prerelease.length === 0) { + compver.patch++; + } else { + compver.prerelease.push(0); + } + compver.raw = compver.format(); + case "": + case ">=": + if (!setMin || gt(compver, setMin)) { + setMin = compver; + } + break; + case "<": + case "<=": + break; + default: + throw new Error(`Unexpected operation: ${comparator.operator}`); + } + }); + if (setMin && (!minver || gt(minver, setMin))) { + minver = setMin; + } + } + if (minver && range.test(minver)) { + return minver; + } + return null; + }; + module2.exports = minVersion; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/valid.js +var require_valid2 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/valid.js"(exports2, module2) { + var Range2 = require_range2(); + var validRange = (range, options2) => { + try { + return new Range2(range, options2).range || "*"; + } catch (er) { + return null; + } + }; + module2.exports = validRange; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/outside.js +var require_outside = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/outside.js"(exports2, module2) { + var SemVer = require_semver2(); + var Comparator = require_comparator(); + var { ANY } = Comparator; + var Range2 = require_range2(); + var satisfies = require_satisfies(); + var gt = require_gt(); + var lt = require_lt(); + var lte = require_lte(); + var gte = require_gte(); + var outside = (version4, range, hilo, options2) => { + version4 = new SemVer(version4, options2); + range = new Range2(range, options2); + let gtfn, ltefn, ltfn, comp, ecomp; + switch (hilo) { + case ">": + gtfn = gt; + ltefn = lte; + ltfn = lt; + comp = ">"; + ecomp = ">="; + break; + case "<": + gtfn = lt; + ltefn = gte; + ltfn = gt; + comp = "<"; + ecomp = "<="; + break; + default: + throw new TypeError('Must provide a hilo val of "<" or ">"'); + } + if (satisfies(version4, range, options2)) { + return false; + } + for (let i = 0; i < range.set.length; ++i) { + const comparators = range.set[i]; + let high = null; + let low = null; + comparators.forEach((comparator) => { + if (comparator.semver === ANY) { + comparator = new Comparator(">=0.0.0"); + } + high = high || comparator; + low = low || comparator; + if (gtfn(comparator.semver, high.semver, options2)) { + high = comparator; + } else if (ltfn(comparator.semver, low.semver, options2)) { + low = comparator; + } + }); + if (high.operator === comp || high.operator === ecomp) { + return false; + } + if ((!low.operator || low.operator === comp) && ltefn(version4, low.semver)) { + return false; + } else if (low.operator === ecomp && ltfn(version4, low.semver)) { + return false; + } + } + return true; + }; + module2.exports = outside; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/gtr.js +var require_gtr = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/gtr.js"(exports2, module2) { + var outside = require_outside(); + var gtr = (version4, range, options2) => outside(version4, range, ">", options2); + module2.exports = gtr; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/ltr.js +var require_ltr = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/ltr.js"(exports2, module2) { + var outside = require_outside(); + var ltr = (version4, range, options2) => outside(version4, range, "<", options2); + module2.exports = ltr; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/intersects.js +var require_intersects = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/intersects.js"(exports2, module2) { + var Range2 = require_range2(); + var intersects = (r1, r2, options2) => { + r1 = new Range2(r1, options2); + r2 = new Range2(r2, options2); + return r1.intersects(r2, options2); + }; + module2.exports = intersects; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/simplify.js +var require_simplify = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/simplify.js"(exports2, module2) { + var satisfies = require_satisfies(); + var compare = require_compare(); + module2.exports = (versions, range, options2) => { + const set = []; + let first = null; + let prev = null; + const v = versions.sort((a, b) => compare(a, b, options2)); + for (const version4 of v) { + const included = satisfies(version4, range, options2); + if (included) { + prev = version4; + if (!first) { + first = version4; + } + } else { + if (prev) { + set.push([first, prev]); + } + prev = null; + first = null; + } + } + if (first) { + set.push([first, null]); + } + const ranges = []; + for (const [min, max] of set) { + if (min === max) { + ranges.push(min); + } else if (!max && min === v[0]) { + ranges.push("*"); + } else if (!max) { + ranges.push(`>=${min}`); + } else if (min === v[0]) { + ranges.push(`<=${max}`); + } else { + ranges.push(`${min} - ${max}`); + } + } + const simplified = ranges.join(" || "); + const original = typeof range.raw === "string" ? range.raw : String(range); + return simplified.length < original.length ? simplified : range; + }; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/subset.js +var require_subset = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/ranges/subset.js"(exports2, module2) { + var Range2 = require_range2(); + var Comparator = require_comparator(); + var { ANY } = Comparator; + var satisfies = require_satisfies(); + var compare = require_compare(); + var subset = (sub, dom, options2 = {}) => { + if (sub === dom) { + return true; + } + sub = new Range2(sub, options2); + dom = new Range2(dom, options2); + let sawNonNull = false; + OUTER: + for (const simpleSub of sub.set) { + for (const simpleDom of dom.set) { + const isSub = simpleSubset(simpleSub, simpleDom, options2); + sawNonNull = sawNonNull || isSub !== null; + if (isSub) { + continue OUTER; + } + } + if (sawNonNull) { + return false; + } + } + return true; + }; + var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")]; + var minimumVersion = [new Comparator(">=0.0.0")]; + var simpleSubset = (sub, dom, options2) => { + if (sub === dom) { + return true; + } + if (sub.length === 1 && sub[0].semver === ANY) { + if (dom.length === 1 && dom[0].semver === ANY) { + return true; + } else if (options2.includePrerelease) { + sub = minimumVersionWithPreRelease; + } else { + sub = minimumVersion; + } + } + if (dom.length === 1 && dom[0].semver === ANY) { + if (options2.includePrerelease) { + return true; + } else { + dom = minimumVersion; + } + } + const eqSet = /* @__PURE__ */ new Set(); + let gt, lt; + for (const c of sub) { + if (c.operator === ">" || c.operator === ">=") { + gt = higherGT(gt, c, options2); + } else if (c.operator === "<" || c.operator === "<=") { + lt = lowerLT(lt, c, options2); + } else { + eqSet.add(c.semver); + } + } + if (eqSet.size > 1) { + return null; + } + let gtltComp; + if (gt && lt) { + gtltComp = compare(gt.semver, lt.semver, options2); + if (gtltComp > 0) { + return null; + } else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) { + return null; + } + } + for (const eq of eqSet) { + if (gt && !satisfies(eq, String(gt), options2)) { + return null; + } + if (lt && !satisfies(eq, String(lt), options2)) { + return null; + } + for (const c of dom) { + if (!satisfies(eq, String(c), options2)) { + return false; + } + } + return true; + } + let higher, lower; + let hasDomLT, hasDomGT; + let needDomLTPre = lt && !options2.includePrerelease && lt.semver.prerelease.length ? lt.semver : false; + let needDomGTPre = gt && !options2.includePrerelease && gt.semver.prerelease.length ? gt.semver : false; + if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) { + needDomLTPre = false; + } + for (const c of dom) { + hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">="; + hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<="; + if (gt) { + if (needDomGTPre) { + if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) { + needDomGTPre = false; + } + } + if (c.operator === ">" || c.operator === ">=") { + higher = higherGT(gt, c, options2); + if (higher === c && higher !== gt) { + return false; + } + } else if (gt.operator === ">=" && !satisfies(gt.semver, String(c), options2)) { + return false; + } + } + if (lt) { + if (needDomLTPre) { + if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch) { + needDomLTPre = false; + } + } + if (c.operator === "<" || c.operator === "<=") { + lower = lowerLT(lt, c, options2); + if (lower === c && lower !== lt) { + return false; + } + } else if (lt.operator === "<=" && !satisfies(lt.semver, String(c), options2)) { + return false; + } + } + if (!c.operator && (lt || gt) && gtltComp !== 0) { + return false; + } + } + if (gt && hasDomLT && !lt && gtltComp !== 0) { + return false; + } + if (lt && hasDomGT && !gt && gtltComp !== 0) { + return false; + } + if (needDomGTPre || needDomLTPre) { + return false; + } + return true; + }; + var higherGT = (a, b, options2) => { + if (!a) { + return b; + } + const comp = compare(a.semver, b.semver, options2); + return comp > 0 ? a : comp < 0 ? b : b.operator === ">" && a.operator === ">=" ? b : a; + }; + var lowerLT = (a, b, options2) => { + if (!a) { + return b; + } + const comp = compare(a.semver, b.semver, options2); + return comp < 0 ? a : comp > 0 ? b : b.operator === "<" && a.operator === "<=" ? b : a; + }; + module2.exports = subset; + } +}); + +// ../node_modules/.pnpm/semver@7.5.4/node_modules/semver/index.js +var require_semver3 = __commonJS({ + "../node_modules/.pnpm/semver@7.5.4/node_modules/semver/index.js"(exports2, module2) { + var internalRe = require_re(); + var constants = require_constants8(); + var SemVer = require_semver2(); + var identifiers = require_identifiers(); + var parse7 = require_parse5(); + var valid = require_valid(); + var clean = require_clean(); + var inc = require_inc(); + var diff = require_diff(); + var major2 = require_major(); + var minor2 = require_minor(); + var patch = require_patch(); + var prerelease = require_prerelease(); + var compare = require_compare(); + var rcompare = require_rcompare(); + var compareLoose = require_compare_loose(); + var compareBuild = require_compare_build(); + var sort = require_sort(); + var rsort = require_rsort(); + var gt = require_gt(); + var lt = require_lt(); + var eq = require_eq(); + var neq = require_neq(); + var gte = require_gte(); + var lte = require_lte(); + var cmp = require_cmp(); + var coerce = require_coerce(); + var Comparator = require_comparator(); + var Range2 = require_range2(); + var satisfies = require_satisfies(); + var toComparators = require_to_comparators(); + var maxSatisfying = require_max_satisfying(); + var minSatisfying = require_min_satisfying(); + var minVersion = require_min_version(); + var validRange = require_valid2(); + var outside = require_outside(); + var gtr = require_gtr(); + var ltr = require_ltr(); + var intersects = require_intersects(); + var simplifyRange = require_simplify(); + var subset = require_subset(); + module2.exports = { + parse: parse7, + valid, + clean, + inc, + diff, + major: major2, + minor: minor2, + patch, + prerelease, + compare, + rcompare, + compareLoose, + compareBuild, + sort, + rsort, + gt, + lt, + eq, + neq, + gte, + lte, + cmp, + coerce, + Comparator, + Range: Range2, + satisfies, + toComparators, + maxSatisfying, + minSatisfying, + minVersion, + validRange, + outside, + gtr, + ltr, + intersects, + simplifyRange, + subset, + SemVer, + re: internalRe.re, + src: internalRe.src, + tokens: internalRe.t, + SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION, + RELEASE_TYPES: constants.RELEASE_TYPES, + compareIdentifiers: identifiers.compareIdentifiers, + rcompareIdentifiers: identifiers.rcompareIdentifiers + }; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/enums/AttributeNames.js +var require_AttributeNames = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/enums/AttributeNames.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AttributeNames = void 0; + var AttributeNames; + (function(AttributeNames2) { + AttributeNames2["HTTP_ERROR_NAME"] = "http.error_name"; + AttributeNames2["HTTP_ERROR_MESSAGE"] = "http.error_message"; + AttributeNames2["HTTP_STATUS_TEXT"] = "http.status_text"; + })(AttributeNames = exports2.AttributeNames || (exports2.AttributeNames = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/utils.js +var require_utils11 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.headerCapture = exports2.getIncomingRequestMetricAttributesOnResponse = exports2.getIncomingRequestAttributesOnResponse = exports2.getIncomingRequestMetricAttributes = exports2.getIncomingRequestAttributes = exports2.getOutgoingRequestMetricAttributesOnResponse = exports2.getOutgoingRequestAttributesOnResponse = exports2.getAttributesFromHttpKind = exports2.getOutgoingRequestMetricAttributes = exports2.getOutgoingRequestAttributes = exports2.extractHostnameAndPort = exports2.isValidOptionsType = exports2.getRequestInfo = exports2.isCompressed = exports2.setResponseContentLengthAttribute = exports2.setRequestContentLengthAttribute = exports2.setSpanWithError = exports2.isIgnored = exports2.satisfiesPattern = exports2.parseResponseStatus = exports2.getAbsoluteUrl = void 0; + var api_1 = require_src(); + var semantic_conventions_1 = require_src4(); + var core_1 = require_src5(); + var url2 = require("url"); + var AttributeNames_1 = require_AttributeNames(); + var getAbsoluteUrl = (requestUrl, headers, fallbackProtocol = "http:") => { + const reqUrlObject = requestUrl || {}; + const protocol2 = reqUrlObject.protocol || fallbackProtocol; + const port = (reqUrlObject.port || "").toString(); + const path30 = reqUrlObject.path || "/"; + let host = reqUrlObject.host || reqUrlObject.hostname || headers.host || "localhost"; + if (host.indexOf(":") === -1 && port && port !== "80" && port !== "443") { + host += `:${port}`; + } + return `${protocol2}//${host}${path30}`; + }; + exports2.getAbsoluteUrl = getAbsoluteUrl; + var parseResponseStatus = (kind, statusCode) => { + const upperBound = kind === api_1.SpanKind.CLIENT ? 400 : 500; + if (statusCode && statusCode >= 100 && statusCode < upperBound) { + return api_1.SpanStatusCode.UNSET; + } + return api_1.SpanStatusCode.ERROR; + }; + exports2.parseResponseStatus = parseResponseStatus; + var satisfiesPattern = (constant, pattern) => { + if (typeof pattern === "string") { + return pattern === constant; + } else if (pattern instanceof RegExp) { + return pattern.test(constant); + } else if (typeof pattern === "function") { + return pattern(constant); + } else { + throw new TypeError("Pattern is in unsupported datatype"); + } + }; + exports2.satisfiesPattern = satisfiesPattern; + var isIgnored = (constant, list, onException) => { + if (!list) { + return false; + } + try { + for (const pattern of list) { + if ((0, exports2.satisfiesPattern)(constant, pattern)) { + return true; + } + } + } catch (e) { + if (onException) { + onException(e); + } + } + return false; + }; + exports2.isIgnored = isIgnored; + var setSpanWithError = (span, error) => { + const message = error.message; + span.setAttributes({ + [AttributeNames_1.AttributeNames.HTTP_ERROR_NAME]: error.name, + [AttributeNames_1.AttributeNames.HTTP_ERROR_MESSAGE]: message + }); + span.setStatus({ code: api_1.SpanStatusCode.ERROR, message }); + span.recordException(error); + }; + exports2.setSpanWithError = setSpanWithError; + var setRequestContentLengthAttribute = (request, attributes) => { + const length = getContentLength(request.headers); + if (length === null) + return; + if ((0, exports2.isCompressed)(request.headers)) { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_REQUEST_CONTENT_LENGTH] = length; + } else { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED] = length; + } + }; + exports2.setRequestContentLengthAttribute = setRequestContentLengthAttribute; + var setResponseContentLengthAttribute = (response, attributes) => { + const length = getContentLength(response.headers); + if (length === null) + return; + if ((0, exports2.isCompressed)(response.headers)) { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_RESPONSE_CONTENT_LENGTH] = length; + } else { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED] = length; + } + }; + exports2.setResponseContentLengthAttribute = setResponseContentLengthAttribute; + function getContentLength(headers) { + const contentLengthHeader = headers["content-length"]; + if (contentLengthHeader === void 0) + return null; + const contentLength = parseInt(contentLengthHeader, 10); + if (isNaN(contentLength)) + return null; + return contentLength; + } + var isCompressed = (headers) => { + const encoding = headers["content-encoding"]; + return !!encoding && encoding !== "identity"; + }; + exports2.isCompressed = isCompressed; + var getRequestInfo = (options2, extraOptions) => { + let pathname = "/"; + let origin = ""; + let optionsParsed; + if (typeof options2 === "string") { + optionsParsed = url2.parse(options2); + pathname = optionsParsed.pathname || "/"; + origin = `${optionsParsed.protocol || "http:"}//${optionsParsed.host}`; + if (extraOptions !== void 0) { + Object.assign(optionsParsed, extraOptions); + } + } else if (options2 instanceof url2.URL) { + optionsParsed = { + protocol: options2.protocol, + hostname: typeof options2.hostname === "string" && options2.hostname.startsWith("[") ? options2.hostname.slice(1, -1) : options2.hostname, + path: `${options2.pathname || ""}${options2.search || ""}` + }; + if (options2.port !== "") { + optionsParsed.port = Number(options2.port); + } + if (options2.username || options2.password) { + optionsParsed.auth = `${options2.username}:${options2.password}`; + } + pathname = options2.pathname; + origin = options2.origin; + if (extraOptions !== void 0) { + Object.assign(optionsParsed, extraOptions); + } + } else { + optionsParsed = Object.assign({ protocol: options2.host ? "http:" : void 0 }, options2); + pathname = options2.pathname; + if (!pathname && optionsParsed.path) { + pathname = url2.parse(optionsParsed.path).pathname || "/"; + } + const hostname = optionsParsed.host || (optionsParsed.port != null ? `${optionsParsed.hostname}${optionsParsed.port}` : optionsParsed.hostname); + origin = `${optionsParsed.protocol || "http:"}//${hostname}`; + } + const method = optionsParsed.method ? optionsParsed.method.toUpperCase() : "GET"; + return { origin, pathname, method, optionsParsed }; + }; + exports2.getRequestInfo = getRequestInfo; + var isValidOptionsType = (options2) => { + if (!options2) { + return false; + } + const type2 = typeof options2; + return type2 === "string" || type2 === "object" && !Array.isArray(options2); + }; + exports2.isValidOptionsType = isValidOptionsType; + var extractHostnameAndPort = (requestOptions) => { + var _a; + if (requestOptions.hostname && requestOptions.port) { + return { hostname: requestOptions.hostname, port: requestOptions.port }; + } + const matches = ((_a = requestOptions.host) === null || _a === void 0 ? void 0 : _a.match(/^([^:/ ]+)(:\d{1,5})?/)) || null; + const hostname = requestOptions.hostname || (matches === null ? "localhost" : matches[1]); + let port = requestOptions.port; + if (!port) { + if (matches && matches[2]) { + port = matches[2].substring(1); + } else { + port = requestOptions.protocol === "https:" ? "443" : "80"; + } + } + return { hostname, port }; + }; + exports2.extractHostnameAndPort = extractHostnameAndPort; + var getOutgoingRequestAttributes = (requestOptions, options2) => { + var _a, _b; + const hostname = options2.hostname; + const port = options2.port; + const requestMethod = requestOptions.method; + const method = requestMethod ? requestMethod.toUpperCase() : "GET"; + const headers = requestOptions.headers || {}; + const userAgent = headers["user-agent"]; + const attributes = { + [semantic_conventions_1.SemanticAttributes.HTTP_URL]: (0, exports2.getAbsoluteUrl)(requestOptions, headers, `${options2.component}:`), + [semantic_conventions_1.SemanticAttributes.HTTP_METHOD]: method, + [semantic_conventions_1.SemanticAttributes.HTTP_TARGET]: requestOptions.path || "/", + [semantic_conventions_1.SemanticAttributes.NET_PEER_NAME]: hostname, + [semantic_conventions_1.SemanticAttributes.HTTP_HOST]: (_b = (_a = requestOptions.headers) === null || _a === void 0 ? void 0 : _a.host) !== null && _b !== void 0 ? _b : `${hostname}:${port}` + }; + if (userAgent !== void 0) { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_USER_AGENT] = userAgent; + } + return Object.assign(attributes, options2.hookAttributes); + }; + exports2.getOutgoingRequestAttributes = getOutgoingRequestAttributes; + var getOutgoingRequestMetricAttributes = (spanAttributes) => { + const metricAttributes = {}; + metricAttributes[semantic_conventions_1.SemanticAttributes.HTTP_METHOD] = spanAttributes[semantic_conventions_1.SemanticAttributes.HTTP_METHOD]; + metricAttributes[semantic_conventions_1.SemanticAttributes.NET_PEER_NAME] = spanAttributes[semantic_conventions_1.SemanticAttributes.NET_PEER_NAME]; + return metricAttributes; + }; + exports2.getOutgoingRequestMetricAttributes = getOutgoingRequestMetricAttributes; + var getAttributesFromHttpKind = (kind) => { + const attributes = {}; + if (kind) { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_FLAVOR] = kind; + if (kind.toUpperCase() !== "QUIC") { + attributes[semantic_conventions_1.SemanticAttributes.NET_TRANSPORT] = semantic_conventions_1.NetTransportValues.IP_TCP; + } else { + attributes[semantic_conventions_1.SemanticAttributes.NET_TRANSPORT] = semantic_conventions_1.NetTransportValues.IP_UDP; + } + } + return attributes; + }; + exports2.getAttributesFromHttpKind = getAttributesFromHttpKind; + var getOutgoingRequestAttributesOnResponse = (response) => { + const { statusCode, statusMessage, httpVersion, socket } = response; + const attributes = {}; + if (socket) { + const { remoteAddress, remotePort } = socket; + attributes[semantic_conventions_1.SemanticAttributes.NET_PEER_IP] = remoteAddress; + attributes[semantic_conventions_1.SemanticAttributes.NET_PEER_PORT] = remotePort; + } + (0, exports2.setResponseContentLengthAttribute)(response, attributes); + if (statusCode) { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_STATUS_CODE] = statusCode; + attributes[AttributeNames_1.AttributeNames.HTTP_STATUS_TEXT] = (statusMessage || "").toUpperCase(); + } + const httpKindAttributes = (0, exports2.getAttributesFromHttpKind)(httpVersion); + return Object.assign(attributes, httpKindAttributes); + }; + exports2.getOutgoingRequestAttributesOnResponse = getOutgoingRequestAttributesOnResponse; + var getOutgoingRequestMetricAttributesOnResponse = (spanAttributes) => { + const metricAttributes = {}; + metricAttributes[semantic_conventions_1.SemanticAttributes.NET_PEER_PORT] = spanAttributes[semantic_conventions_1.SemanticAttributes.NET_PEER_PORT]; + metricAttributes[semantic_conventions_1.SemanticAttributes.HTTP_STATUS_CODE] = spanAttributes[semantic_conventions_1.SemanticAttributes.HTTP_STATUS_CODE]; + metricAttributes[semantic_conventions_1.SemanticAttributes.HTTP_FLAVOR] = spanAttributes[semantic_conventions_1.SemanticAttributes.HTTP_FLAVOR]; + return metricAttributes; + }; + exports2.getOutgoingRequestMetricAttributesOnResponse = getOutgoingRequestMetricAttributesOnResponse; + var getIncomingRequestAttributes = (request, options2) => { + const headers = request.headers; + const userAgent = headers["user-agent"]; + const ips = headers["x-forwarded-for"]; + const method = request.method || "GET"; + const httpVersion = request.httpVersion; + const requestUrl = request.url ? url2.parse(request.url) : null; + const host = (requestUrl === null || requestUrl === void 0 ? void 0 : requestUrl.host) || headers.host; + const hostname = (requestUrl === null || requestUrl === void 0 ? void 0 : requestUrl.hostname) || (host === null || host === void 0 ? void 0 : host.replace(/^(.*)(:[0-9]{1,5})/, "$1")) || "localhost"; + const serverName = options2.serverName; + const attributes = { + [semantic_conventions_1.SemanticAttributes.HTTP_URL]: (0, exports2.getAbsoluteUrl)(requestUrl, headers, `${options2.component}:`), + [semantic_conventions_1.SemanticAttributes.HTTP_HOST]: host, + [semantic_conventions_1.SemanticAttributes.NET_HOST_NAME]: hostname, + [semantic_conventions_1.SemanticAttributes.HTTP_METHOD]: method, + [semantic_conventions_1.SemanticAttributes.HTTP_SCHEME]: options2.component + }; + if (typeof ips === "string") { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_CLIENT_IP] = ips.split(",")[0]; + } + if (typeof serverName === "string") { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_SERVER_NAME] = serverName; + } + if (requestUrl) { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_TARGET] = requestUrl.path || "/"; + } + if (userAgent !== void 0) { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_USER_AGENT] = userAgent; + } + (0, exports2.setRequestContentLengthAttribute)(request, attributes); + const httpKindAttributes = (0, exports2.getAttributesFromHttpKind)(httpVersion); + return Object.assign(attributes, httpKindAttributes, options2.hookAttributes); + }; + exports2.getIncomingRequestAttributes = getIncomingRequestAttributes; + var getIncomingRequestMetricAttributes = (spanAttributes) => { + const metricAttributes = {}; + metricAttributes[semantic_conventions_1.SemanticAttributes.HTTP_SCHEME] = spanAttributes[semantic_conventions_1.SemanticAttributes.HTTP_SCHEME]; + metricAttributes[semantic_conventions_1.SemanticAttributes.HTTP_METHOD] = spanAttributes[semantic_conventions_1.SemanticAttributes.HTTP_METHOD]; + metricAttributes[semantic_conventions_1.SemanticAttributes.NET_HOST_NAME] = spanAttributes[semantic_conventions_1.SemanticAttributes.NET_HOST_NAME]; + metricAttributes[semantic_conventions_1.SemanticAttributes.HTTP_FLAVOR] = spanAttributes[semantic_conventions_1.SemanticAttributes.HTTP_FLAVOR]; + return metricAttributes; + }; + exports2.getIncomingRequestMetricAttributes = getIncomingRequestMetricAttributes; + var getIncomingRequestAttributesOnResponse = (request, response) => { + const { socket } = request; + const { statusCode, statusMessage } = response; + const rpcMetadata = (0, core_1.getRPCMetadata)(api_1.context.active()); + const attributes = {}; + if (socket) { + const { localAddress, localPort, remoteAddress, remotePort } = socket; + attributes[semantic_conventions_1.SemanticAttributes.NET_HOST_IP] = localAddress; + attributes[semantic_conventions_1.SemanticAttributes.NET_HOST_PORT] = localPort; + attributes[semantic_conventions_1.SemanticAttributes.NET_PEER_IP] = remoteAddress; + attributes[semantic_conventions_1.SemanticAttributes.NET_PEER_PORT] = remotePort; + } + attributes[semantic_conventions_1.SemanticAttributes.HTTP_STATUS_CODE] = statusCode; + attributes[AttributeNames_1.AttributeNames.HTTP_STATUS_TEXT] = (statusMessage || "").toUpperCase(); + if ((rpcMetadata === null || rpcMetadata === void 0 ? void 0 : rpcMetadata.type) === core_1.RPCType.HTTP && rpcMetadata.route !== void 0) { + attributes[semantic_conventions_1.SemanticAttributes.HTTP_ROUTE] = rpcMetadata.route; + } + return attributes; + }; + exports2.getIncomingRequestAttributesOnResponse = getIncomingRequestAttributesOnResponse; + var getIncomingRequestMetricAttributesOnResponse = (spanAttributes) => { + const metricAttributes = {}; + metricAttributes[semantic_conventions_1.SemanticAttributes.HTTP_STATUS_CODE] = spanAttributes[semantic_conventions_1.SemanticAttributes.HTTP_STATUS_CODE]; + metricAttributes[semantic_conventions_1.SemanticAttributes.NET_HOST_PORT] = spanAttributes[semantic_conventions_1.SemanticAttributes.NET_HOST_PORT]; + if (spanAttributes[semantic_conventions_1.SemanticAttributes.HTTP_ROUTE] !== void 0) { + metricAttributes[semantic_conventions_1.SemanticAttributes.HTTP_ROUTE] = spanAttributes[semantic_conventions_1.SemanticAttributes.HTTP_ROUTE]; + } + return metricAttributes; + }; + exports2.getIncomingRequestMetricAttributesOnResponse = getIncomingRequestMetricAttributesOnResponse; + function headerCapture(type2, headers) { + const normalizedHeaders = new Map(headers.map((header) => [ + header.toLowerCase(), + header.toLowerCase().replace(/-/g, "_") + ])); + return (span, getHeader) => { + for (const [capturedHeader, normalizedHeader] of normalizedHeaders) { + const value = getHeader(capturedHeader); + if (value === void 0) { + continue; + } + const key = `http.${type2}.header.${normalizedHeader}`; + if (typeof value === "string") { + span.setAttribute(key, [value]); + } else if (Array.isArray(value)) { + span.setAttribute(key, value); + } else { + span.setAttribute(key, [value]); + } + } + }; + } + exports2.headerCapture = headerCapture; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/version.js +var require_version5 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/version.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VERSION = void 0; + exports2.VERSION = "0.45.1"; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/autoLoaderUtils.js +var require_autoLoaderUtils = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/autoLoaderUtils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.disableInstrumentations = exports2.enableInstrumentations = exports2.parseInstrumentationOptions = void 0; + function parseInstrumentationOptions(options2 = []) { + let instrumentations = []; + for (let i = 0, j = options2.length; i < j; i++) { + const option = options2[i]; + if (Array.isArray(option)) { + const results = parseInstrumentationOptions(option); + instrumentations = instrumentations.concat(results.instrumentations); + } else if (typeof option === "function") { + instrumentations.push(new option()); + } else if (option.instrumentationName) { + instrumentations.push(option); + } + } + return { instrumentations }; + } + exports2.parseInstrumentationOptions = parseInstrumentationOptions; + function enableInstrumentations(instrumentations, tracerProvider, meterProvider) { + for (let i = 0, j = instrumentations.length; i < j; i++) { + const instrumentation = instrumentations[i]; + if (tracerProvider) { + instrumentation.setTracerProvider(tracerProvider); + } + if (meterProvider) { + instrumentation.setMeterProvider(meterProvider); + } + if (!instrumentation.getConfig().enabled) { + instrumentation.enable(); + } + } + } + exports2.enableInstrumentations = enableInstrumentations; + function disableInstrumentations(instrumentations) { + instrumentations.forEach((instrumentation) => instrumentation.disable()); + } + exports2.disableInstrumentations = disableInstrumentations; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/autoLoader.js +var require_autoLoader = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/autoLoader.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.registerInstrumentations = void 0; + var api_1 = require_src(); + var autoLoaderUtils_1 = require_autoLoaderUtils(); + function registerInstrumentations(options2) { + const { instrumentations } = (0, autoLoaderUtils_1.parseInstrumentationOptions)(options2.instrumentations); + const tracerProvider = options2.tracerProvider || api_1.trace.getTracerProvider(); + const meterProvider = options2.meterProvider || api_1.metrics.getMeterProvider(); + (0, autoLoaderUtils_1.enableInstrumentations)(instrumentations, tracerProvider, meterProvider); + return () => { + (0, autoLoaderUtils_1.disableInstrumentations)(instrumentations); + }; + } + exports2.registerInstrumentations = registerInstrumentations; + } +}); + +// ../node_modules/.pnpm/shimmer@1.2.1/node_modules/shimmer/index.js +var require_shimmer = __commonJS({ + "../node_modules/.pnpm/shimmer@1.2.1/node_modules/shimmer/index.js"(exports2, module2) { + "use strict"; + function isFunction2(funktion) { + return typeof funktion === "function"; + } + var logger2 = console.error.bind(console); + function defineProperty(obj2, name, value) { + var enumerable = !!obj2[name] && obj2.propertyIsEnumerable(name); + Object.defineProperty(obj2, name, { + configurable: true, + enumerable, + writable: true, + value + }); + } + function shimmer(options2) { + if (options2 && options2.logger) { + if (!isFunction2(options2.logger)) + logger2("new logger isn't a function, not replacing"); + else + logger2 = options2.logger; + } + } + function wrap2(nodule, name, wrapper) { + if (!nodule || !nodule[name]) { + logger2("no original function " + name + " to wrap"); + return; + } + if (!wrapper) { + logger2("no wrapper function"); + logger2(new Error().stack); + return; + } + if (!isFunction2(nodule[name]) || !isFunction2(wrapper)) { + logger2("original object and wrapper must be functions"); + return; + } + var original = nodule[name]; + var wrapped = wrapper(original, name); + defineProperty(wrapped, "__original", original); + defineProperty(wrapped, "__unwrap", function() { + if (nodule[name] === wrapped) + defineProperty(nodule, name, original); + }); + defineProperty(wrapped, "__wrapped", true); + defineProperty(nodule, name, wrapped); + return wrapped; + } + function massWrap(nodules, names, wrapper) { + if (!nodules) { + logger2("must provide one or more modules to patch"); + logger2(new Error().stack); + return; + } else if (!Array.isArray(nodules)) { + nodules = [nodules]; + } + if (!(names && Array.isArray(names))) { + logger2("must provide one or more functions to wrap on modules"); + return; + } + nodules.forEach(function(nodule) { + names.forEach(function(name) { + wrap2(nodule, name, wrapper); + }); + }); + } + function unwrap(nodule, name) { + if (!nodule || !nodule[name]) { + logger2("no function to unwrap."); + logger2(new Error().stack); + return; + } + if (!nodule[name].__unwrap) { + logger2("no original to unwrap to -- has " + name + " already been unwrapped?"); + } else { + return nodule[name].__unwrap(); + } + } + function massUnwrap(nodules, names) { + if (!nodules) { + logger2("must provide one or more modules to patch"); + logger2(new Error().stack); + return; + } else if (!Array.isArray(nodules)) { + nodules = [nodules]; + } + if (!(names && Array.isArray(names))) { + logger2("must provide one or more functions to unwrap on modules"); + return; + } + nodules.forEach(function(nodule) { + names.forEach(function(name) { + unwrap(nodule, name); + }); + }); + } + shimmer.wrap = wrap2; + shimmer.massWrap = massWrap; + shimmer.unwrap = unwrap; + shimmer.massUnwrap = massUnwrap; + module2.exports = shimmer; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/instrumentation.js +var require_instrumentation = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/instrumentation.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.InstrumentationAbstract = void 0; + var api_1 = require_src(); + var shimmer = require_shimmer(); + var InstrumentationAbstract = class { + constructor(instrumentationName, instrumentationVersion, config = {}) { + this.instrumentationName = instrumentationName; + this.instrumentationVersion = instrumentationVersion; + this._wrap = shimmer.wrap; + this._unwrap = shimmer.unwrap; + this._massWrap = shimmer.massWrap; + this._massUnwrap = shimmer.massUnwrap; + this._config = Object.assign({ enabled: true }, config); + this._diag = api_1.diag.createComponentLogger({ + namespace: instrumentationName + }); + this._tracer = api_1.trace.getTracer(instrumentationName, instrumentationVersion); + this._meter = api_1.metrics.getMeter(instrumentationName, instrumentationVersion); + this._updateMetricInstruments(); + } + /* Returns meter */ + get meter() { + return this._meter; + } + /** + * Sets MeterProvider to this plugin + * @param meterProvider + */ + setMeterProvider(meterProvider) { + this._meter = meterProvider.getMeter(this.instrumentationName, this.instrumentationVersion); + this._updateMetricInstruments(); + } + /** + * Sets the new metric instruments with the current Meter. + */ + _updateMetricInstruments() { + return; + } + /* Returns InstrumentationConfig */ + getConfig() { + return this._config; + } + /** + * Sets InstrumentationConfig to this plugin + * @param InstrumentationConfig + */ + setConfig(config = {}) { + this._config = Object.assign({}, config); + } + /** + * Sets TraceProvider to this plugin + * @param tracerProvider + */ + setTracerProvider(tracerProvider) { + this._tracer = tracerProvider.getTracer(this.instrumentationName, this.instrumentationVersion); + } + /* Returns tracer */ + get tracer() { + return this._tracer; + } + }; + exports2.InstrumentationAbstract = InstrumentationAbstract; + } +}); + +// ../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/homedir.js +var require_homedir = __commonJS({ + "../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/homedir.js"(exports2, module2) { + "use strict"; + var os8 = require("os"); + module2.exports = os8.homedir || function homedir3() { + var home = process.env.HOME; + var user = process.env.LOGNAME || process.env.USER || process.env.LNAME || process.env.USERNAME; + if (process.platform === "win32") { + return process.env.USERPROFILE || process.env.HOMEDRIVE + process.env.HOMEPATH || home || null; + } + if (process.platform === "darwin") { + return home || (user ? "/Users/" + user : null); + } + if (process.platform === "linux") { + return home || (process.getuid() === 0 ? "/root" : user ? "/home/" + user : null); + } + return home || null; + }; + } +}); + +// ../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/caller.js +var require_caller = __commonJS({ + "../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/caller.js"(exports2, module2) { + module2.exports = function() { + var origPrepareStackTrace = Error.prepareStackTrace; + Error.prepareStackTrace = function(_, stack2) { + return stack2; + }; + var stack = new Error().stack; + Error.prepareStackTrace = origPrepareStackTrace; + return stack[2].getFileName(); + }; + } +}); + +// ../node_modules/.pnpm/path-parse@1.0.7/node_modules/path-parse/index.js +var require_path_parse = __commonJS({ + "../node_modules/.pnpm/path-parse@1.0.7/node_modules/path-parse/index.js"(exports2, module2) { + "use strict"; + var isWindows = process.platform === "win32"; + var splitWindowsRe = /^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/; + var win322 = {}; + function win32SplitPath(filename) { + return splitWindowsRe.exec(filename).slice(1); + } + win322.parse = function(pathString) { + if (typeof pathString !== "string") { + throw new TypeError( + "Parameter 'pathString' must be a string, not " + typeof pathString + ); + } + var allParts = win32SplitPath(pathString); + if (!allParts || allParts.length !== 5) { + throw new TypeError("Invalid path '" + pathString + "'"); + } + return { + root: allParts[1], + dir: allParts[0] === allParts[1] ? allParts[0] : allParts[0].slice(0, -1), + base: allParts[2], + ext: allParts[4], + name: allParts[3] + }; + }; + var splitPathRe = /^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/; + var posix3 = {}; + function posixSplitPath(filename) { + return splitPathRe.exec(filename).slice(1); + } + posix3.parse = function(pathString) { + if (typeof pathString !== "string") { + throw new TypeError( + "Parameter 'pathString' must be a string, not " + typeof pathString + ); + } + var allParts = posixSplitPath(pathString); + if (!allParts || allParts.length !== 5) { + throw new TypeError("Invalid path '" + pathString + "'"); + } + return { + root: allParts[1], + dir: allParts[0].slice(0, -1), + base: allParts[2], + ext: allParts[4], + name: allParts[3] + }; + }; + if (isWindows) + module2.exports = win322.parse; + else + module2.exports = posix3.parse; + module2.exports.posix = posix3.parse; + module2.exports.win32 = win322.parse; + } +}); + +// ../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/node-modules-paths.js +var require_node_modules_paths = __commonJS({ + "../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/node-modules-paths.js"(exports2, module2) { + var path30 = require("path"); + var parse7 = path30.parse || require_path_parse(); + var getNodeModulesDirs = function getNodeModulesDirs2(absoluteStart, modules) { + var prefix = "/"; + if (/^([A-Za-z]:)/.test(absoluteStart)) { + prefix = ""; + } else if (/^\\\\/.test(absoluteStart)) { + prefix = "\\\\"; + } + var paths = [absoluteStart]; + var parsed = parse7(absoluteStart); + while (parsed.dir !== paths[paths.length - 1]) { + paths.push(parsed.dir); + parsed = parse7(parsed.dir); + } + return paths.reduce(function(dirs, aPath) { + return dirs.concat(modules.map(function(moduleDir) { + return path30.resolve(prefix, aPath, moduleDir); + })); + }, []); + }; + module2.exports = function nodeModulesPaths(start4, opts, request) { + var modules = opts && opts.moduleDirectory ? [].concat(opts.moduleDirectory) : ["node_modules"]; + if (opts && typeof opts.paths === "function") { + return opts.paths( + request, + start4, + function() { + return getNodeModulesDirs(start4, modules); + }, + opts + ); + } + var dirs = getNodeModulesDirs(start4, modules); + return opts && opts.paths ? dirs.concat(opts.paths) : dirs; + }; + } +}); + +// ../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/normalize-options.js +var require_normalize_options = __commonJS({ + "../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/normalize-options.js"(exports2, module2) { + module2.exports = function(x, opts) { + return opts || {}; + }; + } +}); + +// ../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/implementation.js +var require_implementation = __commonJS({ + "../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/implementation.js"(exports2, module2) { + "use strict"; + var ERROR_MESSAGE = "Function.prototype.bind called on incompatible "; + var slice = Array.prototype.slice; + var toStr = Object.prototype.toString; + var funcType = "[object Function]"; + module2.exports = function bind2(that) { + var target = this; + if (typeof target !== "function" || toStr.call(target) !== funcType) { + throw new TypeError(ERROR_MESSAGE + target); + } + var args3 = slice.call(arguments, 1); + var bound; + var binder = function() { + if (this instanceof bound) { + var result = target.apply( + this, + args3.concat(slice.call(arguments)) + ); + if (Object(result) === result) { + return result; + } + return this; + } else { + return target.apply( + that, + args3.concat(slice.call(arguments)) + ); + } + }; + var boundLength = Math.max(0, target.length - args3.length); + var boundArgs = []; + for (var i = 0; i < boundLength; i++) { + boundArgs.push("$" + i); + } + bound = Function("binder", "return function (" + boundArgs.join(",") + "){ return binder.apply(this,arguments); }")(binder); + if (target.prototype) { + var Empty = function Empty2() { + }; + Empty.prototype = target.prototype; + bound.prototype = new Empty(); + Empty.prototype = null; + } + return bound; + }; + } +}); + +// ../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/index.js +var require_function_bind = __commonJS({ + "../node_modules/.pnpm/function-bind@1.1.1/node_modules/function-bind/index.js"(exports2, module2) { + "use strict"; + var implementation = require_implementation(); + module2.exports = Function.prototype.bind || implementation; + } +}); + +// ../node_modules/.pnpm/has@1.0.3/node_modules/has/src/index.js +var require_src11 = __commonJS({ + "../node_modules/.pnpm/has@1.0.3/node_modules/has/src/index.js"(exports2, module2) { + "use strict"; + var bind2 = require_function_bind(); + module2.exports = bind2.call(Function.call, Object.prototype.hasOwnProperty); + } +}); + +// ../node_modules/.pnpm/is-core-module@2.11.0/node_modules/is-core-module/core.json +var require_core2 = __commonJS({ + "../node_modules/.pnpm/is-core-module@2.11.0/node_modules/is-core-module/core.json"(exports2, module2) { + module2.exports = { + assert: true, + "node:assert": [">= 14.18 && < 15", ">= 16"], + "assert/strict": ">= 15", + "node:assert/strict": ">= 16", + async_hooks: ">= 8", + "node:async_hooks": [">= 14.18 && < 15", ">= 16"], + buffer_ieee754: ">= 0.5 && < 0.9.7", + buffer: true, + "node:buffer": [">= 14.18 && < 15", ">= 16"], + child_process: true, + "node:child_process": [">= 14.18 && < 15", ">= 16"], + cluster: ">= 0.5", + "node:cluster": [">= 14.18 && < 15", ">= 16"], + console: true, + "node:console": [">= 14.18 && < 15", ">= 16"], + constants: true, + "node:constants": [">= 14.18 && < 15", ">= 16"], + crypto: true, + "node:crypto": [">= 14.18 && < 15", ">= 16"], + _debug_agent: ">= 1 && < 8", + _debugger: "< 8", + dgram: true, + "node:dgram": [">= 14.18 && < 15", ">= 16"], + diagnostics_channel: [">= 14.17 && < 15", ">= 15.1"], + "node:diagnostics_channel": [">= 14.18 && < 15", ">= 16"], + dns: true, + "node:dns": [">= 14.18 && < 15", ">= 16"], + "dns/promises": ">= 15", + "node:dns/promises": ">= 16", + domain: ">= 0.7.12", + "node:domain": [">= 14.18 && < 15", ">= 16"], + events: true, + "node:events": [">= 14.18 && < 15", ">= 16"], + freelist: "< 6", + fs: true, + "node:fs": [">= 14.18 && < 15", ">= 16"], + "fs/promises": [">= 10 && < 10.1", ">= 14"], + "node:fs/promises": [">= 14.18 && < 15", ">= 16"], + _http_agent: ">= 0.11.1", + "node:_http_agent": [">= 14.18 && < 15", ">= 16"], + _http_client: ">= 0.11.1", + "node:_http_client": [">= 14.18 && < 15", ">= 16"], + _http_common: ">= 0.11.1", + "node:_http_common": [">= 14.18 && < 15", ">= 16"], + _http_incoming: ">= 0.11.1", + "node:_http_incoming": [">= 14.18 && < 15", ">= 16"], + _http_outgoing: ">= 0.11.1", + "node:_http_outgoing": [">= 14.18 && < 15", ">= 16"], + _http_server: ">= 0.11.1", + "node:_http_server": [">= 14.18 && < 15", ">= 16"], + http: true, + "node:http": [">= 14.18 && < 15", ">= 16"], + http2: ">= 8.8", + "node:http2": [">= 14.18 && < 15", ">= 16"], + https: true, + "node:https": [">= 14.18 && < 15", ">= 16"], + inspector: ">= 8", + "node:inspector": [">= 14.18 && < 15", ">= 16"], + "inspector/promises": [">= 19"], + "node:inspector/promises": [">= 19"], + _linklist: "< 8", + module: true, + "node:module": [">= 14.18 && < 15", ">= 16"], + net: true, + "node:net": [">= 14.18 && < 15", ">= 16"], + "node-inspect/lib/_inspect": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_client": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_repl": ">= 7.6 && < 12", + os: true, + "node:os": [">= 14.18 && < 15", ">= 16"], + path: true, + "node:path": [">= 14.18 && < 15", ">= 16"], + "path/posix": ">= 15.3", + "node:path/posix": ">= 16", + "path/win32": ">= 15.3", + "node:path/win32": ">= 16", + perf_hooks: ">= 8.5", + "node:perf_hooks": [">= 14.18 && < 15", ">= 16"], + process: ">= 1", + "node:process": [">= 14.18 && < 15", ">= 16"], + punycode: ">= 0.5", + "node:punycode": [">= 14.18 && < 15", ">= 16"], + querystring: true, + "node:querystring": [">= 14.18 && < 15", ">= 16"], + readline: true, + "node:readline": [">= 14.18 && < 15", ">= 16"], + "readline/promises": ">= 17", + "node:readline/promises": ">= 17", + repl: true, + "node:repl": [">= 14.18 && < 15", ">= 16"], + smalloc: ">= 0.11.5 && < 3", + _stream_duplex: ">= 0.9.4", + "node:_stream_duplex": [">= 14.18 && < 15", ">= 16"], + _stream_transform: ">= 0.9.4", + "node:_stream_transform": [">= 14.18 && < 15", ">= 16"], + _stream_wrap: ">= 1.4.1", + "node:_stream_wrap": [">= 14.18 && < 15", ">= 16"], + _stream_passthrough: ">= 0.9.4", + "node:_stream_passthrough": [">= 14.18 && < 15", ">= 16"], + _stream_readable: ">= 0.9.4", + "node:_stream_readable": [">= 14.18 && < 15", ">= 16"], + _stream_writable: ">= 0.9.4", + "node:_stream_writable": [">= 14.18 && < 15", ">= 16"], + stream: true, + "node:stream": [">= 14.18 && < 15", ">= 16"], + "stream/consumers": ">= 16.7", + "node:stream/consumers": ">= 16.7", + "stream/promises": ">= 15", + "node:stream/promises": ">= 16", + "stream/web": ">= 16.5", + "node:stream/web": ">= 16.5", + string_decoder: true, + "node:string_decoder": [">= 14.18 && < 15", ">= 16"], + sys: [">= 0.4 && < 0.7", ">= 0.8"], + "node:sys": [">= 14.18 && < 15", ">= 16"], + "node:test": [">= 16.17 && < 17", ">= 18"], + timers: true, + "node:timers": [">= 14.18 && < 15", ">= 16"], + "timers/promises": ">= 15", + "node:timers/promises": ">= 16", + _tls_common: ">= 0.11.13", + "node:_tls_common": [">= 14.18 && < 15", ">= 16"], + _tls_legacy: ">= 0.11.3 && < 10", + _tls_wrap: ">= 0.11.3", + "node:_tls_wrap": [">= 14.18 && < 15", ">= 16"], + tls: true, + "node:tls": [">= 14.18 && < 15", ">= 16"], + trace_events: ">= 10", + "node:trace_events": [">= 14.18 && < 15", ">= 16"], + tty: true, + "node:tty": [">= 14.18 && < 15", ">= 16"], + url: true, + "node:url": [">= 14.18 && < 15", ">= 16"], + util: true, + "node:util": [">= 14.18 && < 15", ">= 16"], + "util/types": ">= 15.3", + "node:util/types": ">= 16", + "v8/tools/arguments": ">= 10 && < 12", + "v8/tools/codemap": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/consarray": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/csvparser": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/logreader": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/profile_view": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/splaytree": [">= 4.4 && < 5", ">= 5.2 && < 12"], + v8: ">= 1", + "node:v8": [">= 14.18 && < 15", ">= 16"], + vm: true, + "node:vm": [">= 14.18 && < 15", ">= 16"], + wasi: ">= 13.4 && < 13.5", + worker_threads: ">= 11.7", + "node:worker_threads": [">= 14.18 && < 15", ">= 16"], + zlib: ">= 0.5", + "node:zlib": [">= 14.18 && < 15", ">= 16"] + }; + } +}); + +// ../node_modules/.pnpm/is-core-module@2.11.0/node_modules/is-core-module/index.js +var require_is_core_module = __commonJS({ + "../node_modules/.pnpm/is-core-module@2.11.0/node_modules/is-core-module/index.js"(exports2, module2) { + "use strict"; + var has = require_src11(); + function specifierIncluded(current, specifier) { + var nodeParts = current.split("."); + var parts = specifier.split(" "); + var op = parts.length > 1 ? parts[0] : "="; + var versionParts = (parts.length > 1 ? parts[1] : parts[0]).split("."); + for (var i = 0; i < 3; ++i) { + var cur = parseInt(nodeParts[i] || 0, 10); + var ver = parseInt(versionParts[i] || 0, 10); + if (cur === ver) { + continue; + } + if (op === "<") { + return cur < ver; + } + if (op === ">=") { + return cur >= ver; + } + return false; + } + return op === ">="; + } + function matchesRange(current, range) { + var specifiers = range.split(/ ?&& ?/); + if (specifiers.length === 0) { + return false; + } + for (var i = 0; i < specifiers.length; ++i) { + if (!specifierIncluded(current, specifiers[i])) { + return false; + } + } + return true; + } + function versionIncluded(nodeVersion, specifierValue) { + if (typeof specifierValue === "boolean") { + return specifierValue; + } + var current = typeof nodeVersion === "undefined" ? process.versions && process.versions.node : nodeVersion; + if (typeof current !== "string") { + throw new TypeError(typeof nodeVersion === "undefined" ? "Unable to determine current node version" : "If provided, a valid node version is required"); + } + if (specifierValue && typeof specifierValue === "object") { + for (var i = 0; i < specifierValue.length; ++i) { + if (matchesRange(current, specifierValue[i])) { + return true; + } + } + return false; + } + return matchesRange(current, specifierValue); + } + var data = require_core2(); + module2.exports = function isCore(x, nodeVersion) { + return has(data, x) && versionIncluded(nodeVersion, data[x]); + }; + } +}); + +// ../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/async.js +var require_async4 = __commonJS({ + "../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/async.js"(exports2, module2) { + var fs6 = require("fs"); + var getHomedir = require_homedir(); + var path30 = require("path"); + var caller = require_caller(); + var nodeModulesPaths = require_node_modules_paths(); + var normalizeOptions = require_normalize_options(); + var isCore = require_is_core_module(); + var realpathFS = process.platform !== "win32" && fs6.realpath && typeof fs6.realpath.native === "function" ? fs6.realpath.native : fs6.realpath; + var homedir3 = getHomedir(); + var defaultPaths = function() { + return [ + path30.join(homedir3, ".node_modules"), + path30.join(homedir3, ".node_libraries") + ]; + }; + var defaultIsFile = function isFile2(file, cb) { + fs6.stat(file, function(err2, stat7) { + if (!err2) { + return cb(null, stat7.isFile() || stat7.isFIFO()); + } + if (err2.code === "ENOENT" || err2.code === "ENOTDIR") + return cb(null, false); + return cb(err2); + }); + }; + var defaultIsDir = function isDirectory(dir, cb) { + fs6.stat(dir, function(err2, stat7) { + if (!err2) { + return cb(null, stat7.isDirectory()); + } + if (err2.code === "ENOENT" || err2.code === "ENOTDIR") + return cb(null, false); + return cb(err2); + }); + }; + var defaultRealpath = function realpath2(x, cb) { + realpathFS(x, function(realpathErr, realPath) { + if (realpathErr && realpathErr.code !== "ENOENT") + cb(realpathErr); + else + cb(null, realpathErr ? x : realPath); + }); + }; + var maybeRealpath = function maybeRealpath2(realpath2, x, opts, cb) { + if (opts && opts.preserveSymlinks === false) { + realpath2(x, cb); + } else { + cb(null, x); + } + }; + var defaultReadPackage = function defaultReadPackage2(readFile5, pkgfile, cb) { + readFile5(pkgfile, function(readFileErr, body2) { + if (readFileErr) + cb(readFileErr); + else { + try { + var pkg = JSON.parse(body2); + cb(null, pkg); + } catch (jsonErr) { + cb(null); + } + } + }); + }; + var getPackageCandidates = function getPackageCandidates2(x, start4, opts) { + var dirs = nodeModulesPaths(start4, opts, x); + for (var i = 0; i < dirs.length; i++) { + dirs[i] = path30.join(dirs[i], x); + } + return dirs; + }; + module2.exports = function resolve8(x, options2, callback) { + var cb = callback; + var opts = options2; + if (typeof options2 === "function") { + cb = opts; + opts = {}; + } + if (typeof x !== "string") { + var err2 = new TypeError("Path must be a string."); + return process.nextTick(function() { + cb(err2); + }); + } + opts = normalizeOptions(x, opts); + var isFile2 = opts.isFile || defaultIsFile; + var isDirectory = opts.isDirectory || defaultIsDir; + var readFile5 = opts.readFile || fs6.readFile; + var realpath2 = opts.realpath || defaultRealpath; + var readPackage = opts.readPackage || defaultReadPackage; + if (opts.readFile && opts.readPackage) { + var conflictErr = new TypeError("`readFile` and `readPackage` are mutually exclusive."); + return process.nextTick(function() { + cb(conflictErr); + }); + } + var packageIterator = opts.packageIterator; + var extensions2 = opts.extensions || [".js"]; + var includeCoreModules = opts.includeCoreModules !== false; + var basedir = opts.basedir || path30.dirname(caller()); + var parent = opts.filename || basedir; + opts.paths = opts.paths || defaultPaths(); + var absoluteStart = path30.resolve(basedir); + maybeRealpath( + realpath2, + absoluteStart, + opts, + function(err3, realStart) { + if (err3) + cb(err3); + else + init5(realStart); + } + ); + var res; + function init5(basedir2) { + if (/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/.test(x)) { + res = path30.resolve(basedir2, x); + if (x === "." || x === ".." || x.slice(-1) === "/") + res += "/"; + if (/\/$/.test(x) && res === basedir2) { + loadAsDirectory(res, opts.package, onfile); + } else + loadAsFile(res, opts.package, onfile); + } else if (includeCoreModules && isCore(x)) { + return cb(null, x); + } else + loadNodeModules(x, basedir2, function(err3, n, pkg) { + if (err3) + cb(err3); + else if (n) { + return maybeRealpath(realpath2, n, opts, function(err4, realN) { + if (err4) { + cb(err4); + } else { + cb(null, realN, pkg); + } + }); + } else { + var moduleError = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + moduleError.code = "MODULE_NOT_FOUND"; + cb(moduleError); + } + }); + } + function onfile(err3, m, pkg) { + if (err3) + cb(err3); + else if (m) + cb(null, m, pkg); + else + loadAsDirectory(res, function(err4, d, pkg2) { + if (err4) + cb(err4); + else if (d) { + maybeRealpath(realpath2, d, opts, function(err5, realD) { + if (err5) { + cb(err5); + } else { + cb(null, realD, pkg2); + } + }); + } else { + var moduleError = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + moduleError.code = "MODULE_NOT_FOUND"; + cb(moduleError); + } + }); + } + function loadAsFile(x2, thePackage, callback2) { + var loadAsFilePackage = thePackage; + var cb2 = callback2; + if (typeof loadAsFilePackage === "function") { + cb2 = loadAsFilePackage; + loadAsFilePackage = void 0; + } + var exts = [""].concat(extensions2); + load(exts, x2, loadAsFilePackage); + function load(exts2, x3, loadPackage) { + if (exts2.length === 0) + return cb2(null, void 0, loadPackage); + var file = x3 + exts2[0]; + var pkg = loadPackage; + if (pkg) + onpkg(null, pkg); + else + loadpkg(path30.dirname(file), onpkg); + function onpkg(err3, pkg_, dir) { + pkg = pkg_; + if (err3) + return cb2(err3); + if (dir && pkg && opts.pathFilter) { + var rfile = path30.relative(dir, file); + var rel = rfile.slice(0, rfile.length - exts2[0].length); + var r = opts.pathFilter(pkg, x3, rel); + if (r) + return load( + [""].concat(extensions2.slice()), + path30.resolve(dir, r), + pkg + ); + } + isFile2(file, onex); + } + function onex(err3, ex) { + if (err3) + return cb2(err3); + if (ex) + return cb2(null, file, pkg); + load(exts2.slice(1), x3, pkg); + } + } + } + function loadpkg(dir, cb2) { + if (dir === "" || dir === "/") + return cb2(null); + if (process.platform === "win32" && /^\w:[/\\]*$/.test(dir)) { + return cb2(null); + } + if (/[/\\]node_modules[/\\]*$/.test(dir)) + return cb2(null); + maybeRealpath(realpath2, dir, opts, function(unwrapErr, pkgdir) { + if (unwrapErr) + return loadpkg(path30.dirname(dir), cb2); + var pkgfile = path30.join(pkgdir, "package.json"); + isFile2(pkgfile, function(err3, ex) { + if (!ex) + return loadpkg(path30.dirname(dir), cb2); + readPackage(readFile5, pkgfile, function(err4, pkgParam) { + if (err4) + cb2(err4); + var pkg = pkgParam; + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter(pkg, pkgfile); + } + cb2(null, pkg, dir); + }); + }); + }); + } + function loadAsDirectory(x2, loadAsDirectoryPackage, callback2) { + var cb2 = callback2; + var fpkg = loadAsDirectoryPackage; + if (typeof fpkg === "function") { + cb2 = fpkg; + fpkg = opts.package; + } + maybeRealpath(realpath2, x2, opts, function(unwrapErr, pkgdir) { + if (unwrapErr) + return cb2(unwrapErr); + var pkgfile = path30.join(pkgdir, "package.json"); + isFile2(pkgfile, function(err3, ex) { + if (err3) + return cb2(err3); + if (!ex) + return loadAsFile(path30.join(x2, "index"), fpkg, cb2); + readPackage(readFile5, pkgfile, function(err4, pkgParam) { + if (err4) + return cb2(err4); + var pkg = pkgParam; + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter(pkg, pkgfile); + } + if (pkg && pkg.main) { + if (typeof pkg.main !== "string") { + var mainError = new TypeError("package \u201C" + pkg.name + "\u201D `main` must be a string"); + mainError.code = "INVALID_PACKAGE_MAIN"; + return cb2(mainError); + } + if (pkg.main === "." || pkg.main === "./") { + pkg.main = "index"; + } + loadAsFile(path30.resolve(x2, pkg.main), pkg, function(err5, m, pkg2) { + if (err5) + return cb2(err5); + if (m) + return cb2(null, m, pkg2); + if (!pkg2) + return loadAsFile(path30.join(x2, "index"), pkg2, cb2); + var dir = path30.resolve(x2, pkg2.main); + loadAsDirectory(dir, pkg2, function(err6, n, pkg3) { + if (err6) + return cb2(err6); + if (n) + return cb2(null, n, pkg3); + loadAsFile(path30.join(x2, "index"), pkg3, cb2); + }); + }); + return; + } + loadAsFile(path30.join(x2, "/index"), pkg, cb2); + }); + }); + }); + } + function processDirs(cb2, dirs) { + if (dirs.length === 0) + return cb2(null, void 0); + var dir = dirs[0]; + isDirectory(path30.dirname(dir), isdir); + function isdir(err3, isdir2) { + if (err3) + return cb2(err3); + if (!isdir2) + return processDirs(cb2, dirs.slice(1)); + loadAsFile(dir, opts.package, onfile2); + } + function onfile2(err3, m, pkg) { + if (err3) + return cb2(err3); + if (m) + return cb2(null, m, pkg); + loadAsDirectory(dir, opts.package, ondir); + } + function ondir(err3, n, pkg) { + if (err3) + return cb2(err3); + if (n) + return cb2(null, n, pkg); + processDirs(cb2, dirs.slice(1)); + } + } + function loadNodeModules(x2, start4, cb2) { + var thunk = function() { + return getPackageCandidates(x2, start4, opts); + }; + processDirs( + cb2, + packageIterator ? packageIterator(x2, start4, thunk, opts) : thunk() + ); + } + }; + } +}); + +// ../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/core.json +var require_core3 = __commonJS({ + "../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/core.json"(exports2, module2) { + module2.exports = { + assert: true, + "node:assert": [">= 14.18 && < 15", ">= 16"], + "assert/strict": ">= 15", + "node:assert/strict": ">= 16", + async_hooks: ">= 8", + "node:async_hooks": [">= 14.18 && < 15", ">= 16"], + buffer_ieee754: ">= 0.5 && < 0.9.7", + buffer: true, + "node:buffer": [">= 14.18 && < 15", ">= 16"], + child_process: true, + "node:child_process": [">= 14.18 && < 15", ">= 16"], + cluster: ">= 0.5", + "node:cluster": [">= 14.18 && < 15", ">= 16"], + console: true, + "node:console": [">= 14.18 && < 15", ">= 16"], + constants: true, + "node:constants": [">= 14.18 && < 15", ">= 16"], + crypto: true, + "node:crypto": [">= 14.18 && < 15", ">= 16"], + _debug_agent: ">= 1 && < 8", + _debugger: "< 8", + dgram: true, + "node:dgram": [">= 14.18 && < 15", ">= 16"], + diagnostics_channel: [">= 14.17 && < 15", ">= 15.1"], + "node:diagnostics_channel": [">= 14.18 && < 15", ">= 16"], + dns: true, + "node:dns": [">= 14.18 && < 15", ">= 16"], + "dns/promises": ">= 15", + "node:dns/promises": ">= 16", + domain: ">= 0.7.12", + "node:domain": [">= 14.18 && < 15", ">= 16"], + events: true, + "node:events": [">= 14.18 && < 15", ">= 16"], + freelist: "< 6", + fs: true, + "node:fs": [">= 14.18 && < 15", ">= 16"], + "fs/promises": [">= 10 && < 10.1", ">= 14"], + "node:fs/promises": [">= 14.18 && < 15", ">= 16"], + _http_agent: ">= 0.11.1", + "node:_http_agent": [">= 14.18 && < 15", ">= 16"], + _http_client: ">= 0.11.1", + "node:_http_client": [">= 14.18 && < 15", ">= 16"], + _http_common: ">= 0.11.1", + "node:_http_common": [">= 14.18 && < 15", ">= 16"], + _http_incoming: ">= 0.11.1", + "node:_http_incoming": [">= 14.18 && < 15", ">= 16"], + _http_outgoing: ">= 0.11.1", + "node:_http_outgoing": [">= 14.18 && < 15", ">= 16"], + _http_server: ">= 0.11.1", + "node:_http_server": [">= 14.18 && < 15", ">= 16"], + http: true, + "node:http": [">= 14.18 && < 15", ">= 16"], + http2: ">= 8.8", + "node:http2": [">= 14.18 && < 15", ">= 16"], + https: true, + "node:https": [">= 14.18 && < 15", ">= 16"], + inspector: ">= 8", + "node:inspector": [">= 14.18 && < 15", ">= 16"], + _linklist: "< 8", + module: true, + "node:module": [">= 14.18 && < 15", ">= 16"], + net: true, + "node:net": [">= 14.18 && < 15", ">= 16"], + "node-inspect/lib/_inspect": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_client": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_repl": ">= 7.6 && < 12", + os: true, + "node:os": [">= 14.18 && < 15", ">= 16"], + path: true, + "node:path": [">= 14.18 && < 15", ">= 16"], + "path/posix": ">= 15.3", + "node:path/posix": ">= 16", + "path/win32": ">= 15.3", + "node:path/win32": ">= 16", + perf_hooks: ">= 8.5", + "node:perf_hooks": [">= 14.18 && < 15", ">= 16"], + process: ">= 1", + "node:process": [">= 14.18 && < 15", ">= 16"], + punycode: ">= 0.5", + "node:punycode": [">= 14.18 && < 15", ">= 16"], + querystring: true, + "node:querystring": [">= 14.18 && < 15", ">= 16"], + readline: true, + "node:readline": [">= 14.18 && < 15", ">= 16"], + "readline/promises": ">= 17", + "node:readline/promises": ">= 17", + repl: true, + "node:repl": [">= 14.18 && < 15", ">= 16"], + smalloc: ">= 0.11.5 && < 3", + _stream_duplex: ">= 0.9.4", + "node:_stream_duplex": [">= 14.18 && < 15", ">= 16"], + _stream_transform: ">= 0.9.4", + "node:_stream_transform": [">= 14.18 && < 15", ">= 16"], + _stream_wrap: ">= 1.4.1", + "node:_stream_wrap": [">= 14.18 && < 15", ">= 16"], + _stream_passthrough: ">= 0.9.4", + "node:_stream_passthrough": [">= 14.18 && < 15", ">= 16"], + _stream_readable: ">= 0.9.4", + "node:_stream_readable": [">= 14.18 && < 15", ">= 16"], + _stream_writable: ">= 0.9.4", + "node:_stream_writable": [">= 14.18 && < 15", ">= 16"], + stream: true, + "node:stream": [">= 14.18 && < 15", ">= 16"], + "stream/consumers": ">= 16.7", + "node:stream/consumers": ">= 16.7", + "stream/promises": ">= 15", + "node:stream/promises": ">= 16", + "stream/web": ">= 16.5", + "node:stream/web": ">= 16.5", + string_decoder: true, + "node:string_decoder": [">= 14.18 && < 15", ">= 16"], + sys: [">= 0.4 && < 0.7", ">= 0.8"], + "node:sys": [">= 14.18 && < 15", ">= 16"], + "node:test": ">= 18", + timers: true, + "node:timers": [">= 14.18 && < 15", ">= 16"], + "timers/promises": ">= 15", + "node:timers/promises": ">= 16", + _tls_common: ">= 0.11.13", + "node:_tls_common": [">= 14.18 && < 15", ">= 16"], + _tls_legacy: ">= 0.11.3 && < 10", + _tls_wrap: ">= 0.11.3", + "node:_tls_wrap": [">= 14.18 && < 15", ">= 16"], + tls: true, + "node:tls": [">= 14.18 && < 15", ">= 16"], + trace_events: ">= 10", + "node:trace_events": [">= 14.18 && < 15", ">= 16"], + tty: true, + "node:tty": [">= 14.18 && < 15", ">= 16"], + url: true, + "node:url": [">= 14.18 && < 15", ">= 16"], + util: true, + "node:util": [">= 14.18 && < 15", ">= 16"], + "util/types": ">= 15.3", + "node:util/types": ">= 16", + "v8/tools/arguments": ">= 10 && < 12", + "v8/tools/codemap": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/consarray": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/csvparser": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/logreader": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/profile_view": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/splaytree": [">= 4.4 && < 5", ">= 5.2 && < 12"], + v8: ">= 1", + "node:v8": [">= 14.18 && < 15", ">= 16"], + vm: true, + "node:vm": [">= 14.18 && < 15", ">= 16"], + wasi: ">= 13.4 && < 13.5", + worker_threads: ">= 11.7", + "node:worker_threads": [">= 14.18 && < 15", ">= 16"], + zlib: ">= 0.5", + "node:zlib": [">= 14.18 && < 15", ">= 16"] + }; + } +}); + +// ../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/core.js +var require_core4 = __commonJS({ + "../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/core.js"(exports2, module2) { + var current = process.versions && process.versions.node && process.versions.node.split(".") || []; + function specifierIncluded(specifier) { + var parts = specifier.split(" "); + var op = parts.length > 1 ? parts[0] : "="; + var versionParts = (parts.length > 1 ? parts[1] : parts[0]).split("."); + for (var i = 0; i < 3; ++i) { + var cur = parseInt(current[i] || 0, 10); + var ver = parseInt(versionParts[i] || 0, 10); + if (cur === ver) { + continue; + } + if (op === "<") { + return cur < ver; + } else if (op === ">=") { + return cur >= ver; + } + return false; + } + return op === ">="; + } + function matchesRange(range) { + var specifiers = range.split(/ ?&& ?/); + if (specifiers.length === 0) { + return false; + } + for (var i = 0; i < specifiers.length; ++i) { + if (!specifierIncluded(specifiers[i])) { + return false; + } + } + return true; + } + function versionIncluded(specifierValue) { + if (typeof specifierValue === "boolean") { + return specifierValue; + } + if (specifierValue && typeof specifierValue === "object") { + for (var i = 0; i < specifierValue.length; ++i) { + if (matchesRange(specifierValue[i])) { + return true; + } + } + return false; + } + return matchesRange(specifierValue); + } + var data = require_core3(); + var core = {}; + for (mod2 in data) { + if (Object.prototype.hasOwnProperty.call(data, mod2)) { + core[mod2] = versionIncluded(data[mod2]); + } + } + var mod2; + module2.exports = core; + } +}); + +// ../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/is-core.js +var require_is_core = __commonJS({ + "../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/is-core.js"(exports2, module2) { + var isCoreModule = require_is_core_module(); + module2.exports = function isCore(x) { + return isCoreModule(x); + }; + } +}); + +// ../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/sync.js +var require_sync2 = __commonJS({ + "../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/lib/sync.js"(exports2, module2) { + var isCore = require_is_core_module(); + var fs6 = require("fs"); + var path30 = require("path"); + var getHomedir = require_homedir(); + var caller = require_caller(); + var nodeModulesPaths = require_node_modules_paths(); + var normalizeOptions = require_normalize_options(); + var realpathFS = process.platform !== "win32" && fs6.realpathSync && typeof fs6.realpathSync.native === "function" ? fs6.realpathSync.native : fs6.realpathSync; + var homedir3 = getHomedir(); + var defaultPaths = function() { + return [ + path30.join(homedir3, ".node_modules"), + path30.join(homedir3, ".node_libraries") + ]; + }; + var defaultIsFile = function isFile2(file) { + try { + var stat7 = fs6.statSync(file, { throwIfNoEntry: false }); + } catch (e) { + if (e && (e.code === "ENOENT" || e.code === "ENOTDIR")) + return false; + throw e; + } + return !!stat7 && (stat7.isFile() || stat7.isFIFO()); + }; + var defaultIsDir = function isDirectory(dir) { + try { + var stat7 = fs6.statSync(dir, { throwIfNoEntry: false }); + } catch (e) { + if (e && (e.code === "ENOENT" || e.code === "ENOTDIR")) + return false; + throw e; + } + return !!stat7 && stat7.isDirectory(); + }; + var defaultRealpathSync = function realpathSync2(x) { + try { + return realpathFS(x); + } catch (realpathErr) { + if (realpathErr.code !== "ENOENT") { + throw realpathErr; + } + } + return x; + }; + var maybeRealpathSync = function maybeRealpathSync2(realpathSync2, x, opts) { + if (opts && opts.preserveSymlinks === false) { + return realpathSync2(x); + } + return x; + }; + var defaultReadPackageSync = function defaultReadPackageSync2(readFileSync2, pkgfile) { + var body2 = readFileSync2(pkgfile); + try { + var pkg = JSON.parse(body2); + return pkg; + } catch (jsonErr) { + } + }; + var getPackageCandidates = function getPackageCandidates2(x, start4, opts) { + var dirs = nodeModulesPaths(start4, opts, x); + for (var i = 0; i < dirs.length; i++) { + dirs[i] = path30.join(dirs[i], x); + } + return dirs; + }; + module2.exports = function resolveSync(x, options2) { + if (typeof x !== "string") { + throw new TypeError("Path must be a string."); + } + var opts = normalizeOptions(x, options2); + var isFile2 = opts.isFile || defaultIsFile; + var readFileSync2 = opts.readFileSync || fs6.readFileSync; + var isDirectory = opts.isDirectory || defaultIsDir; + var realpathSync2 = opts.realpathSync || defaultRealpathSync; + var readPackageSync = opts.readPackageSync || defaultReadPackageSync; + if (opts.readFileSync && opts.readPackageSync) { + throw new TypeError("`readFileSync` and `readPackageSync` are mutually exclusive."); + } + var packageIterator = opts.packageIterator; + var extensions2 = opts.extensions || [".js"]; + var includeCoreModules = opts.includeCoreModules !== false; + var basedir = opts.basedir || path30.dirname(caller()); + var parent = opts.filename || basedir; + opts.paths = opts.paths || defaultPaths(); + var absoluteStart = maybeRealpathSync(realpathSync2, path30.resolve(basedir), opts); + if (/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/.test(x)) { + var res = path30.resolve(absoluteStart, x); + if (x === "." || x === ".." || x.slice(-1) === "/") + res += "/"; + var m = loadAsFileSync(res) || loadAsDirectorySync(res); + if (m) + return maybeRealpathSync(realpathSync2, m, opts); + } else if (includeCoreModules && isCore(x)) { + return x; + } else { + var n = loadNodeModulesSync(x, absoluteStart); + if (n) + return maybeRealpathSync(realpathSync2, n, opts); + } + var err2 = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + err2.code = "MODULE_NOT_FOUND"; + throw err2; + function loadAsFileSync(x2) { + var pkg = loadpkg(path30.dirname(x2)); + if (pkg && pkg.dir && pkg.pkg && opts.pathFilter) { + var rfile = path30.relative(pkg.dir, x2); + var r = opts.pathFilter(pkg.pkg, x2, rfile); + if (r) { + x2 = path30.resolve(pkg.dir, r); + } + } + if (isFile2(x2)) { + return x2; + } + for (var i = 0; i < extensions2.length; i++) { + var file = x2 + extensions2[i]; + if (isFile2(file)) { + return file; + } + } + } + function loadpkg(dir) { + if (dir === "" || dir === "/") + return; + if (process.platform === "win32" && /^\w:[/\\]*$/.test(dir)) { + return; + } + if (/[/\\]node_modules[/\\]*$/.test(dir)) + return; + var pkgfile = path30.join(maybeRealpathSync(realpathSync2, dir, opts), "package.json"); + if (!isFile2(pkgfile)) { + return loadpkg(path30.dirname(dir)); + } + var pkg = readPackageSync(readFileSync2, pkgfile); + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter( + pkg, + /*pkgfile,*/ + dir + ); + } + return { pkg, dir }; + } + function loadAsDirectorySync(x2) { + var pkgfile = path30.join(maybeRealpathSync(realpathSync2, x2, opts), "/package.json"); + if (isFile2(pkgfile)) { + try { + var pkg = readPackageSync(readFileSync2, pkgfile); + } catch (e) { + } + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter( + pkg, + /*pkgfile,*/ + x2 + ); + } + if (pkg && pkg.main) { + if (typeof pkg.main !== "string") { + var mainError = new TypeError("package \u201C" + pkg.name + "\u201D `main` must be a string"); + mainError.code = "INVALID_PACKAGE_MAIN"; + throw mainError; + } + if (pkg.main === "." || pkg.main === "./") { + pkg.main = "index"; + } + try { + var m2 = loadAsFileSync(path30.resolve(x2, pkg.main)); + if (m2) + return m2; + var n2 = loadAsDirectorySync(path30.resolve(x2, pkg.main)); + if (n2) + return n2; + } catch (e) { + } + } + } + return loadAsFileSync(path30.join(x2, "/index")); + } + function loadNodeModulesSync(x2, start4) { + var thunk = function() { + return getPackageCandidates(x2, start4, opts); + }; + var dirs = packageIterator ? packageIterator(x2, start4, thunk, opts) : thunk(); + for (var i = 0; i < dirs.length; i++) { + var dir = dirs[i]; + if (isDirectory(path30.dirname(dir))) { + var m2 = loadAsFileSync(dir); + if (m2) + return m2; + var n2 = loadAsDirectorySync(dir); + if (n2) + return n2; + } + } + } + }; + } +}); + +// ../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/index.js +var require_resolve = __commonJS({ + "../node_modules/.pnpm/resolve@1.22.1/node_modules/resolve/index.js"(exports2, module2) { + var async = require_async4(); + async.core = require_core4(); + async.isCore = require_is_core(); + async.sync = require_sync2(); + module2.exports = async; + } +}); + +// ../node_modules/.pnpm/module-details-from-path@1.0.3/node_modules/module-details-from-path/index.js +var require_module_details_from_path = __commonJS({ + "../node_modules/.pnpm/module-details-from-path@1.0.3/node_modules/module-details-from-path/index.js"(exports2, module2) { + "use strict"; + var path30 = require("path"); + module2.exports = function(file) { + var segments = file.split(path30.sep); + var index = segments.lastIndexOf("node_modules"); + if (index === -1) + return; + if (!segments[index + 1]) + return; + var scoped = segments[index + 1][0] === "@"; + var name = scoped ? segments[index + 1] + "/" + segments[index + 2] : segments[index + 1]; + var offset = scoped ? 3 : 2; + return { + name, + basedir: segments.slice(0, index + offset).join(path30.sep), + path: segments.slice(index + offset).join(path30.sep) + }; + }; + } +}); + +// ../node_modules/.pnpm/require-in-the-middle@7.2.0/node_modules/require-in-the-middle/package.json +var require_package = __commonJS({ + "../node_modules/.pnpm/require-in-the-middle@7.2.0/node_modules/require-in-the-middle/package.json"(exports2, module2) { + module2.exports = { + name: "require-in-the-middle", + version: "7.2.0", + description: "Module to hook into the Node.js require function", + main: "index.js", + types: "types/index.d.ts", + dependencies: { + debug: "^4.1.1", + "module-details-from-path": "^1.0.3", + resolve: "^1.22.1" + }, + devDependencies: { + "@babel/core": "^7.9.0", + "@babel/preset-env": "^7.9.5", + "@babel/preset-typescript": "^7.9.0", + "@babel/register": "^7.9.0", + "ipp-printer": "^1.0.0", + patterns: "^1.0.3", + roundround: "^0.2.0", + semver: "^6.3.0", + standard: "^14.3.1", + tape: "^4.11.0" + }, + scripts: { + test: "npm run test:lint && npm run test:tape && npm run test:babel", + "test:lint": "standard", + "test:tape": "tape test/*.js", + "test:babel": "node test/babel/babel-register.js" + }, + repository: { + type: "git", + url: "git+https://github.com/elastic/require-in-the-middle.git" + }, + keywords: [ + "require", + "hook", + "shim", + "shimmer", + "shimming", + "patch", + "monkey", + "monkeypatch", + "module", + "load" + ], + files: [ + "types" + ], + author: "Thomas Watson Steen (https://twitter.com/wa7son)", + license: "MIT", + bugs: { + url: "https://github.com/elastic/require-in-the-middle/issues" + }, + homepage: "https://github.com/elastic/require-in-the-middle#readme", + engines: { + node: ">=8.6.0" + } + }; + } +}); + +// ../node_modules/.pnpm/require-in-the-middle@7.2.0/node_modules/require-in-the-middle/index.js +var require_require_in_the_middle = __commonJS({ + "../node_modules/.pnpm/require-in-the-middle@7.2.0/node_modules/require-in-the-middle/index.js"(exports2, module2) { + "use strict"; + var path30 = require("path"); + var Module2 = require("module"); + var resolve8 = require_resolve(); + var debug = require_src3()("require-in-the-middle"); + var moduleDetailsFromPath = require_module_details_from_path(); + module2.exports = Hook; + module2.exports.Hook = Hook; + var isCore; + if (Module2.isBuiltin) { + isCore = Module2.isBuiltin; + } else { + const [major2, minor2] = process.versions.node.split(".").map(Number); + if (major2 === 8 && minor2 < 8) { + isCore = (moduleName2) => { + if (moduleName2 === "http2") { + return true; + } + return !!resolve8.core[moduleName2]; + }; + } else { + isCore = (moduleName2) => { + return !!resolve8.core[moduleName2]; + }; + } + } + var normalize6 = /([/\\]index)?(\.js)?$/; + var ExportsCache = class { + constructor() { + this._localCache = /* @__PURE__ */ new Map(); + this._kRitmExports = Symbol("RitmExports"); + } + has(filename, isBuiltin) { + if (this._localCache.has(filename)) { + return true; + } else if (!isBuiltin) { + const mod2 = require.cache[filename]; + return !!(mod2 && this._kRitmExports in mod2); + } else { + return false; + } + } + get(filename, isBuiltin) { + const cachedExports = this._localCache.get(filename); + if (cachedExports !== void 0) { + return cachedExports; + } else if (!isBuiltin) { + const mod2 = require.cache[filename]; + return mod2 && mod2[this._kRitmExports]; + } + } + set(filename, exports3, isBuiltin) { + if (isBuiltin) { + this._localCache.set(filename, exports3); + } else if (filename in require.cache) { + require.cache[filename][this._kRitmExports] = exports3; + } else { + debug('non-core module is unexpectedly not in require.cache: "%s"', filename); + this._localCache.set(filename, exports3); + } + } + }; + function Hook(modules, options2, onrequire) { + if (this instanceof Hook === false) + return new Hook(modules, options2, onrequire); + if (typeof modules === "function") { + onrequire = modules; + modules = null; + options2 = null; + } else if (typeof options2 === "function") { + onrequire = options2; + options2 = null; + } + if (typeof Module2._resolveFilename !== "function") { + console.error("Error: Expected Module._resolveFilename to be a function (was: %s) - aborting!", typeof Module2._resolveFilename); + console.error("Please report this error as an issue related to Node.js %s at %s", process.version, require_package().bugs.url); + return; + } + this._cache = new ExportsCache(); + this._unhooked = false; + this._origRequire = Module2.prototype.require; + const self2 = this; + const patching = /* @__PURE__ */ new Set(); + const internals = options2 ? options2.internals === true : false; + const hasWhitelist = Array.isArray(modules); + debug("registering require hook"); + this._require = Module2.prototype.require = function(id) { + if (self2._unhooked === true) { + debug("ignoring require call - module is soft-unhooked"); + return self2._origRequire.apply(this, arguments); + } + const core = isCore(id); + let filename; + if (core) { + filename = id; + if (id.startsWith("node:")) { + const idWithoutPrefix = id.slice(5); + if (isCore(idWithoutPrefix)) { + filename = idWithoutPrefix; + } + } + } else { + try { + filename = Module2._resolveFilename(id, this); + } catch (resolveErr) { + debug('Module._resolveFilename("%s") threw %j, calling original Module.require', id, resolveErr.message); + return self2._origRequire.apply(this, arguments); + } + } + let moduleName2, basedir; + debug("processing %s module require('%s'): %s", core === true ? "core" : "non-core", id, filename); + if (self2._cache.has(filename, core) === true) { + debug("returning already patched cached module: %s", filename); + return self2._cache.get(filename, core); + } + const isPatching = patching.has(filename); + if (isPatching === false) { + patching.add(filename); + } + const exports3 = self2._origRequire.apply(this, arguments); + if (isPatching === true) { + debug("module is in the process of being patched already - ignoring: %s", filename); + return exports3; + } + patching.delete(filename); + if (core === true) { + if (hasWhitelist === true && modules.includes(filename) === false) { + debug("ignoring core module not on whitelist: %s", filename); + return exports3; + } + moduleName2 = filename; + } else if (hasWhitelist === true && modules.includes(filename)) { + const parsedPath = path30.parse(filename); + moduleName2 = parsedPath.name; + basedir = parsedPath.dir; + } else { + const stat7 = moduleDetailsFromPath(filename); + if (stat7 === void 0) { + debug("could not parse filename: %s", filename); + return exports3; + } + moduleName2 = stat7.name; + basedir = stat7.basedir; + const fullModuleName = resolveModuleName(stat7); + debug("resolved filename to module: %s (id: %s, resolved: %s, basedir: %s)", moduleName2, id, fullModuleName, basedir); + if (hasWhitelist === true && modules.includes(moduleName2) === false) { + if (modules.includes(fullModuleName) === false) + return exports3; + moduleName2 = fullModuleName; + } else { + let res; + try { + res = resolve8.sync(moduleName2, { basedir }); + } catch (e) { + debug("could not resolve module: %s", moduleName2); + self2._cache.set(filename, exports3, core); + return exports3; + } + if (res !== filename) { + if (internals === true) { + moduleName2 = moduleName2 + path30.sep + path30.relative(basedir, filename); + debug("preparing to process require of internal file: %s", moduleName2); + } else { + debug("ignoring require of non-main module file: %s", res); + self2._cache.set(filename, exports3, core); + return exports3; + } + } + } + } + self2._cache.set(filename, exports3, core); + debug("calling require hook: %s", moduleName2); + const patchedExports = onrequire(exports3, moduleName2, basedir); + self2._cache.set(filename, patchedExports, core); + debug("returning module: %s", moduleName2); + return patchedExports; + }; + } + Hook.prototype.unhook = function() { + this._unhooked = true; + if (this._require === Module2.prototype.require) { + Module2.prototype.require = this._origRequire; + debug("unhook successful"); + } else { + debug("unhook unsuccessful"); + } + }; + function resolveModuleName(stat7) { + const normalizedPath = path30.sep !== "/" ? stat7.path.split(path30.sep).join("/") : stat7.path; + return path30.posix.join(stat7.name, normalizedPath).replace(normalize6, ""); + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/ModuleNameTrie.js +var require_ModuleNameTrie = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/ModuleNameTrie.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ModuleNameTrie = exports2.ModuleNameSeparator = void 0; + exports2.ModuleNameSeparator = "/"; + var ModuleNameTrieNode = class { + constructor() { + this.hooks = []; + this.children = /* @__PURE__ */ new Map(); + } + }; + var ModuleNameTrie = class { + constructor() { + this._trie = new ModuleNameTrieNode(); + this._counter = 0; + } + /** + * Insert a module hook into the trie + * + * @param {Hooked} hook Hook + */ + insert(hook) { + let trieNode = this._trie; + for (const moduleNamePart of hook.moduleName.split(exports2.ModuleNameSeparator)) { + let nextNode = trieNode.children.get(moduleNamePart); + if (!nextNode) { + nextNode = new ModuleNameTrieNode(); + trieNode.children.set(moduleNamePart, nextNode); + } + trieNode = nextNode; + } + trieNode.hooks.push({ hook, insertedId: this._counter++ }); + } + /** + * Search for matching hooks in the trie + * + * @param {string} moduleName Module name + * @param {boolean} maintainInsertionOrder Whether to return the results in insertion order + * @param {boolean} fullOnly Whether to return only full matches + * @returns {Hooked[]} Matching hooks + */ + search(moduleName2, { maintainInsertionOrder, fullOnly } = {}) { + let trieNode = this._trie; + const results = []; + let foundFull = true; + for (const moduleNamePart of moduleName2.split(exports2.ModuleNameSeparator)) { + const nextNode = trieNode.children.get(moduleNamePart); + if (!nextNode) { + foundFull = false; + break; + } + if (!fullOnly) { + results.push(...nextNode.hooks); + } + trieNode = nextNode; + } + if (fullOnly && foundFull) { + results.push(...trieNode.hooks); + } + if (results.length === 0) { + return []; + } + if (results.length === 1) { + return [results[0].hook]; + } + if (maintainInsertionOrder) { + results.sort((a, b) => a.insertedId - b.insertedId); + } + return results.map(({ hook }) => hook); + } + }; + exports2.ModuleNameTrie = ModuleNameTrie; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/RequireInTheMiddleSingleton.js +var require_RequireInTheMiddleSingleton = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/RequireInTheMiddleSingleton.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.RequireInTheMiddleSingleton = void 0; + var require_in_the_middle_1 = require_require_in_the_middle(); + var path30 = require("path"); + var ModuleNameTrie_1 = require_ModuleNameTrie(); + var isMocha = [ + "afterEach", + "after", + "beforeEach", + "before", + "describe", + "it" + ].every((fn) => { + return typeof global[fn] === "function"; + }); + var RequireInTheMiddleSingleton = class _RequireInTheMiddleSingleton { + constructor() { + this._moduleNameTrie = new ModuleNameTrie_1.ModuleNameTrie(); + this._initialize(); + } + _initialize() { + new require_in_the_middle_1.Hook( + // Intercept all `require` calls; we will filter the matching ones below + null, + { internals: true }, + (exports3, name, basedir) => { + const normalizedModuleName = normalizePathSeparators(name); + const matches = this._moduleNameTrie.search(normalizedModuleName, { + maintainInsertionOrder: true, + // For core modules (e.g. `fs`), do not match on sub-paths (e.g. `fs/promises'). + // This matches the behavior of `require-in-the-middle`. + // `basedir` is always `undefined` for core modules. + fullOnly: basedir === void 0 + }); + for (const { onRequire } of matches) { + exports3 = onRequire(exports3, name, basedir); + } + return exports3; + } + ); + } + /** + * Register a hook with `require-in-the-middle` + * + * @param {string} moduleName Module name + * @param {OnRequireFn} onRequire Hook function + * @returns {Hooked} Registered hook + */ + register(moduleName2, onRequire) { + const hooked = { moduleName: moduleName2, onRequire }; + this._moduleNameTrie.insert(hooked); + return hooked; + } + /** + * Get the `RequireInTheMiddleSingleton` singleton + * + * @returns {RequireInTheMiddleSingleton} Singleton of `RequireInTheMiddleSingleton` + */ + static getInstance() { + var _a; + if (isMocha) + return new _RequireInTheMiddleSingleton(); + return this._instance = (_a = this._instance) !== null && _a !== void 0 ? _a : new _RequireInTheMiddleSingleton(); + } + }; + exports2.RequireInTheMiddleSingleton = RequireInTheMiddleSingleton; + function normalizePathSeparators(moduleNameOrPath) { + return path30.sep !== ModuleNameTrie_1.ModuleNameSeparator ? moduleNameOrPath.split(path30.sep).join(ModuleNameTrie_1.ModuleNameSeparator) : moduleNameOrPath; + } + } +}); + +// ../node_modules/.pnpm/import-in-the-middle@1.4.2/node_modules/import-in-the-middle/lib/register.js +var require_register = __commonJS({ + "../node_modules/.pnpm/import-in-the-middle@1.4.2/node_modules/import-in-the-middle/lib/register.js"(exports2) { + var importHooks = []; + var setters = /* @__PURE__ */ new WeakMap(); + var specifiers = /* @__PURE__ */ new Map(); + var toHook = []; + var proxyHandler2 = { + set(target, name, value) { + return setters.get(target)[name](value); + }, + defineProperty(target, property, descriptor) { + if (!("value" in descriptor)) { + throw new Error("Getters/setters are not supported for exports property descriptors."); + } + return setters.get(target)[property](descriptor.value); + } + }; + function register2(name, namespace, set, specifier) { + specifiers.set(name, specifier); + setters.set(namespace, set); + const proxy2 = new Proxy(namespace, proxyHandler2); + importHooks.forEach((hook) => hook(name, proxy2)); + toHook.push([name, proxy2]); + } + exports2.register = register2; + exports2.importHooks = importHooks; + exports2.specifiers = specifiers; + exports2.toHook = toHook; + } +}); + +// ../node_modules/.pnpm/import-in-the-middle@1.4.2/node_modules/import-in-the-middle/index.js +var require_import_in_the_middle = __commonJS({ + "../node_modules/.pnpm/import-in-the-middle@1.4.2/node_modules/import-in-the-middle/index.js"(exports2, module2) { + var path30 = require("path"); + var parse7 = require_module_details_from_path(); + var { fileURLToPath: fileURLToPath3 } = require("url"); + var { + importHooks, + specifiers, + toHook + } = require_register(); + function addHook(hook) { + importHooks.push(hook); + toHook.forEach(([name, namespace]) => hook(name, namespace)); + } + function removeHook(hook) { + const index = importHooks.indexOf(hook); + if (index > -1) { + importHooks.splice(index, 1); + } + } + function callHookFn(hookFn, namespace, name, baseDir) { + const newDefault = hookFn(namespace, name, baseDir); + if (newDefault && newDefault !== namespace) { + namespace.default = newDefault; + } + } + function Hook(modules, options2, hookFn) { + if (this instanceof Hook === false) + return new Hook(modules, options2, hookFn); + if (typeof modules === "function") { + hookFn = modules; + modules = null; + options2 = null; + } else if (typeof options2 === "function") { + hookFn = options2; + options2 = null; + } + const internals = options2 ? options2.internals === true : false; + this._iitmHook = (name, namespace) => { + const filename = name; + const isBuiltin = name.startsWith("node:"); + let baseDir; + if (isBuiltin) { + name = name.replace(/^node:/, ""); + } else { + if (name.startsWith("file://")) { + try { + name = fileURLToPath3(name); + } catch (e) { + } + } + const details = parse7(name); + if (details) { + name = details.name; + baseDir = details.basedir; + } + } + if (modules) { + for (const moduleName2 of modules) { + if (moduleName2 === name) { + if (baseDir) { + if (internals) { + name = name + path30.sep + path30.relative(baseDir, fileURLToPath3(filename)); + } else { + if (!baseDir.endsWith(specifiers.get(filename))) + continue; + } + } + callHookFn(hookFn, namespace, name, baseDir); + } + } + } else { + callHookFn(hookFn, namespace, name, baseDir); + } + }; + addHook(this._iitmHook); + } + Hook.prototype.unhook = function() { + removeHook(this._iitmHook); + }; + module2.exports = Hook; + module2.exports.addHook = addHook; + module2.exports.removeHook = removeHook; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/instrumentation.js +var require_instrumentation2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/instrumentation.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.InstrumentationBase = void 0; + var path30 = require("path"); + var util_1 = require("util"); + var semver_1 = require_semver3(); + var shimmer_1 = require_shimmer(); + var instrumentation_1 = require_instrumentation(); + var RequireInTheMiddleSingleton_1 = require_RequireInTheMiddleSingleton(); + var ImportInTheMiddle = require_import_in_the_middle(); + var api_1 = require_src(); + var require_in_the_middle_1 = require_require_in_the_middle(); + var InstrumentationBase = class extends instrumentation_1.InstrumentationAbstract { + constructor(instrumentationName, instrumentationVersion, config = {}) { + super(instrumentationName, instrumentationVersion, config); + this._hooks = []; + this._requireInTheMiddleSingleton = RequireInTheMiddleSingleton_1.RequireInTheMiddleSingleton.getInstance(); + this._enabled = false; + this._wrap = (moduleExports2, name, wrapper) => { + if (!util_1.types.isProxy(moduleExports2)) { + return (0, shimmer_1.wrap)(moduleExports2, name, wrapper); + } else { + const wrapped = (0, shimmer_1.wrap)(Object.assign({}, moduleExports2), name, wrapper); + return Object.defineProperty(moduleExports2, name, { + value: wrapped + }); + } + }; + this._unwrap = (moduleExports2, name) => { + if (!util_1.types.isProxy(moduleExports2)) { + return (0, shimmer_1.unwrap)(moduleExports2, name); + } else { + return Object.defineProperty(moduleExports2, name, { + value: moduleExports2[name] + }); + } + }; + this._massWrap = (moduleExportsArray, names, wrapper) => { + if (!moduleExportsArray) { + api_1.diag.error("must provide one or more modules to patch"); + return; + } else if (!Array.isArray(moduleExportsArray)) { + moduleExportsArray = [moduleExportsArray]; + } + if (!(names && Array.isArray(names))) { + api_1.diag.error("must provide one or more functions to wrap on modules"); + return; + } + moduleExportsArray.forEach((moduleExports2) => { + names.forEach((name) => { + this._wrap(moduleExports2, name, wrapper); + }); + }); + }; + this._massUnwrap = (moduleExportsArray, names) => { + if (!moduleExportsArray) { + api_1.diag.error("must provide one or more modules to patch"); + return; + } else if (!Array.isArray(moduleExportsArray)) { + moduleExportsArray = [moduleExportsArray]; + } + if (!(names && Array.isArray(names))) { + api_1.diag.error("must provide one or more functions to wrap on modules"); + return; + } + moduleExportsArray.forEach((moduleExports2) => { + names.forEach((name) => { + this._unwrap(moduleExports2, name); + }); + }); + }; + let modules = this.init(); + if (modules && !Array.isArray(modules)) { + modules = [modules]; + } + this._modules = modules || []; + if (this._modules.length === 0) { + api_1.diag.debug(`No modules instrumentation has been defined for '${this.instrumentationName}@${this.instrumentationVersion}', nothing will be patched`); + } + if (this._config.enabled) { + this.enable(); + } + } + _warnOnPreloadedModules() { + this._modules.forEach((module3) => { + const { name } = module3; + try { + const resolvedModule = require.resolve(name); + if (require.cache[resolvedModule]) { + this._diag.warn(`Module ${name} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${name}`); + } + } catch (_a) { + } + }); + } + _extractPackageVersion(baseDir) { + try { + const version4 = require(path30.join(baseDir, "package.json")).version; + return typeof version4 === "string" ? version4 : void 0; + } catch (error) { + api_1.diag.warn("Failed extracting version", baseDir); + } + return void 0; + } + _onRequire(module3, exports3, name, baseDir) { + var _a; + if (!baseDir) { + if (typeof module3.patch === "function") { + module3.moduleExports = exports3; + if (this._enabled) { + return module3.patch(exports3); + } + } + return exports3; + } + const version4 = this._extractPackageVersion(baseDir); + module3.moduleVersion = version4; + if (module3.name === name) { + if (isSupported(module3.supportedVersions, version4, module3.includePrerelease)) { + if (typeof module3.patch === "function") { + module3.moduleExports = exports3; + if (this._enabled) { + return module3.patch(exports3, module3.moduleVersion); + } + } + } + return exports3; + } + const files = (_a = module3.files) !== null && _a !== void 0 ? _a : []; + const supportedFileInstrumentations = files.filter((f) => f.name === name).filter((f) => isSupported(f.supportedVersions, version4, module3.includePrerelease)); + return supportedFileInstrumentations.reduce((patchedExports, file) => { + file.moduleExports = patchedExports; + if (this._enabled) { + return file.patch(patchedExports, module3.moduleVersion); + } + return patchedExports; + }, exports3); + } + enable() { + if (this._enabled) { + return; + } + this._enabled = true; + if (this._hooks.length > 0) { + for (const module3 of this._modules) { + if (typeof module3.patch === "function" && module3.moduleExports) { + module3.patch(module3.moduleExports, module3.moduleVersion); + } + for (const file of module3.files) { + if (file.moduleExports) { + file.patch(file.moduleExports, module3.moduleVersion); + } + } + } + return; + } + this._warnOnPreloadedModules(); + for (const module3 of this._modules) { + const hookFn = (exports3, name, baseDir) => { + return this._onRequire(module3, exports3, name, baseDir); + }; + const onRequire = (exports3, name, baseDir) => { + return this._onRequire(module3, exports3, name, baseDir); + }; + const hook = path30.isAbsolute(module3.name) ? new require_in_the_middle_1.Hook([module3.name], { internals: true }, onRequire) : this._requireInTheMiddleSingleton.register(module3.name, onRequire); + this._hooks.push(hook); + const esmHook = new ImportInTheMiddle([module3.name], { internals: false }, hookFn); + this._hooks.push(esmHook); + } + } + disable() { + if (!this._enabled) { + return; + } + this._enabled = false; + for (const module3 of this._modules) { + if (typeof module3.unpatch === "function" && module3.moduleExports) { + module3.unpatch(module3.moduleExports, module3.moduleVersion); + } + for (const file of module3.files) { + if (file.moduleExports) { + file.unpatch(file.moduleExports, module3.moduleVersion); + } + } + } + } + isEnabled() { + return this._enabled; + } + }; + exports2.InstrumentationBase = InstrumentationBase; + function isSupported(supportedVersions, version4, includePrerelease) { + if (typeof version4 === "undefined") { + return supportedVersions.includes("*"); + } + return supportedVersions.some((supportedVersion) => { + return (0, semver_1.satisfies)(version4, supportedVersion, { includePrerelease }); + }); + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/instrumentationNodeModuleDefinition.js +var require_instrumentationNodeModuleDefinition = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/instrumentationNodeModuleDefinition.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.InstrumentationNodeModuleDefinition = void 0; + var InstrumentationNodeModuleDefinition = class { + constructor(name, supportedVersions, patch, unpatch, files) { + this.name = name; + this.supportedVersions = supportedVersions; + this.patch = patch; + this.unpatch = unpatch; + this.files = files || []; + } + }; + exports2.InstrumentationNodeModuleDefinition = InstrumentationNodeModuleDefinition; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/instrumentationNodeModuleFile.js +var require_instrumentationNodeModuleFile = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/instrumentationNodeModuleFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.InstrumentationNodeModuleFile = void 0; + var path_1 = require("path"); + var InstrumentationNodeModuleFile = class { + constructor(name, supportedVersions, patch, unpatch) { + this.supportedVersions = supportedVersions; + this.patch = patch; + this.unpatch = unpatch; + this.name = (0, path_1.normalize)(name); + } + }; + exports2.InstrumentationNodeModuleFile = InstrumentationNodeModuleFile; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/types.js +var require_types14 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/index.js +var require_node9 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/node/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_instrumentation2(), exports2); + __exportStar(require_instrumentationNodeModuleDefinition(), exports2); + __exportStar(require_instrumentationNodeModuleFile(), exports2); + __exportStar(require_types14(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/index.js +var require_platform6 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/platform/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_node9(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/types.js +var require_types15 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/types_internal.js +var require_types_internal = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/types_internal.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/utils.js +var require_utils12 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isWrapped = exports2.safeExecuteInTheMiddleAsync = exports2.safeExecuteInTheMiddle = void 0; + function safeExecuteInTheMiddle(execute, onFinish, preventThrowingError) { + let error; + let result; + try { + result = execute(); + } catch (e) { + error = e; + } finally { + onFinish(error, result); + if (error && !preventThrowingError) { + throw error; + } + return result; + } + } + exports2.safeExecuteInTheMiddle = safeExecuteInTheMiddle; + async function safeExecuteInTheMiddleAsync(execute, onFinish, preventThrowingError) { + let error; + let result; + try { + result = await execute(); + } catch (e) { + error = e; + } finally { + onFinish(error, result); + if (error && !preventThrowingError) { + throw error; + } + return result; + } + } + exports2.safeExecuteInTheMiddleAsync = safeExecuteInTheMiddleAsync; + function isWrapped(func2) { + return typeof func2 === "function" && typeof func2.__original === "function" && typeof func2.__unwrap === "function" && func2.__wrapped === true; + } + exports2.isWrapped = isWrapped; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/index.js +var require_src12 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_autoLoader(), exports2); + __exportStar(require_platform6(), exports2); + __exportStar(require_types15(), exports2); + __exportStar(require_types_internal(), exports2); + __exportStar(require_utils12(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/http.js +var require_http = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/http.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.HttpInstrumentation = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var semver = require_semver3(); + var url2 = require("url"); + var utils = require_utils11(); + var version_1 = require_version5(); + var instrumentation_1 = require_src12(); + var core_2 = require_src5(); + var events_1 = require("events"); + var semantic_conventions_1 = require_src4(); + var HttpInstrumentation2 = class extends instrumentation_1.InstrumentationBase { + constructor(config) { + super("@opentelemetry/instrumentation-http", version_1.VERSION, config); + this._spanNotEnded = /* @__PURE__ */ new WeakSet(); + this._headerCapture = this._createHeaderCapture(); + } + _updateMetricInstruments() { + this._httpServerDurationHistogram = this.meter.createHistogram("http.server.duration", { + description: "Measures the duration of inbound HTTP requests.", + unit: "ms", + valueType: api_1.ValueType.DOUBLE + }); + this._httpClientDurationHistogram = this.meter.createHistogram("http.client.duration", { + description: "Measures the duration of outbound HTTP requests.", + unit: "ms", + valueType: api_1.ValueType.DOUBLE + }); + } + _getConfig() { + return this._config; + } + setConfig(config) { + super.setConfig(config); + this._headerCapture = this._createHeaderCapture(); + } + init() { + return [this._getHttpsInstrumentation(), this._getHttpInstrumentation()]; + } + _getHttpInstrumentation() { + const version4 = process.versions.node; + return new instrumentation_1.InstrumentationNodeModuleDefinition("http", ["*"], (moduleExports2) => { + this._diag.debug(`Applying patch for http@${version4}`); + if ((0, instrumentation_1.isWrapped)(moduleExports2.request)) { + this._unwrap(moduleExports2, "request"); + } + this._wrap(moduleExports2, "request", this._getPatchOutgoingRequestFunction("http")); + if ((0, instrumentation_1.isWrapped)(moduleExports2.get)) { + this._unwrap(moduleExports2, "get"); + } + this._wrap(moduleExports2, "get", this._getPatchOutgoingGetFunction(moduleExports2.request)); + if ((0, instrumentation_1.isWrapped)(moduleExports2.Server.prototype.emit)) { + this._unwrap(moduleExports2.Server.prototype, "emit"); + } + this._wrap(moduleExports2.Server.prototype, "emit", this._getPatchIncomingRequestFunction("http")); + return moduleExports2; + }, (moduleExports2) => { + if (moduleExports2 === void 0) + return; + this._diag.debug(`Removing patch for http@${version4}`); + this._unwrap(moduleExports2, "request"); + this._unwrap(moduleExports2, "get"); + this._unwrap(moduleExports2.Server.prototype, "emit"); + }); + } + _getHttpsInstrumentation() { + const version4 = process.versions.node; + return new instrumentation_1.InstrumentationNodeModuleDefinition("https", ["*"], (moduleExports2) => { + this._diag.debug(`Applying patch for https@${version4}`); + if ((0, instrumentation_1.isWrapped)(moduleExports2.request)) { + this._unwrap(moduleExports2, "request"); + } + this._wrap(moduleExports2, "request", this._getPatchHttpsOutgoingRequestFunction("https")); + if ((0, instrumentation_1.isWrapped)(moduleExports2.get)) { + this._unwrap(moduleExports2, "get"); + } + this._wrap(moduleExports2, "get", this._getPatchHttpsOutgoingGetFunction(moduleExports2.request)); + if ((0, instrumentation_1.isWrapped)(moduleExports2.Server.prototype.emit)) { + this._unwrap(moduleExports2.Server.prototype, "emit"); + } + this._wrap(moduleExports2.Server.prototype, "emit", this._getPatchIncomingRequestFunction("https")); + return moduleExports2; + }, (moduleExports2) => { + if (moduleExports2 === void 0) + return; + this._diag.debug(`Removing patch for https@${version4}`); + this._unwrap(moduleExports2, "request"); + this._unwrap(moduleExports2, "get"); + this._unwrap(moduleExports2.Server.prototype, "emit"); + }); + } + /** + * Creates spans for incoming requests, restoring spans' context if applied. + */ + _getPatchIncomingRequestFunction(component) { + return (original) => { + return this._incomingRequestFunction(component, original); + }; + } + /** + * Creates spans for outgoing requests, sending spans' context for distributed + * tracing. + */ + _getPatchOutgoingRequestFunction(component) { + return (original) => { + return this._outgoingRequestFunction(component, original); + }; + } + _getPatchOutgoingGetFunction(clientRequest) { + return (_original) => { + return function outgoingGetRequest(options2, ...args3) { + const req = clientRequest(options2, ...args3); + req.end(); + return req; + }; + }; + } + /** Patches HTTPS outgoing requests */ + _getPatchHttpsOutgoingRequestFunction(component) { + return (original) => { + const instrumentation = this; + return function httpsOutgoingRequest(options2, ...args3) { + var _a; + if (component === "https" && typeof options2 === "object" && ((_a = options2 === null || options2 === void 0 ? void 0 : options2.constructor) === null || _a === void 0 ? void 0 : _a.name) !== "URL") { + options2 = Object.assign({}, options2); + instrumentation._setDefaultOptions(options2); + } + return instrumentation._getPatchOutgoingRequestFunction(component)(original)(options2, ...args3); + }; + }; + } + _setDefaultOptions(options2) { + options2.protocol = options2.protocol || "https:"; + options2.port = options2.port || 443; + } + /** Patches HTTPS outgoing get requests */ + _getPatchHttpsOutgoingGetFunction(clientRequest) { + return (original) => { + const instrumentation = this; + return function httpsOutgoingRequest(options2, ...args3) { + return instrumentation._getPatchOutgoingGetFunction(clientRequest)(original)(options2, ...args3); + }; + }; + } + /** + * Attach event listeners to a client request to end span and add span attributes. + * + * @param request The original request object. + * @param span representing the current operation + * @param startTime representing the start time of the request to calculate duration in Metric + * @param metricAttributes metric attributes + */ + _traceClientRequest(request, span, startTime, metricAttributes) { + if (this._getConfig().requestHook) { + this._callRequestHook(span, request); + } + let responseFinished = false; + request.prependListener("response", (response) => { + this._diag.debug("outgoingRequest on response()"); + const responseAttributes = utils.getOutgoingRequestAttributesOnResponse(response); + span.setAttributes(responseAttributes); + metricAttributes = Object.assign(metricAttributes, utils.getOutgoingRequestMetricAttributesOnResponse(responseAttributes)); + if (this._getConfig().responseHook) { + this._callResponseHook(span, response); + } + this._headerCapture.client.captureRequestHeaders(span, (header) => request.getHeader(header)); + this._headerCapture.client.captureResponseHeaders(span, (header) => response.headers[header]); + api_1.context.bind(api_1.context.active(), response); + const endHandler = () => { + this._diag.debug("outgoingRequest on end()"); + if (responseFinished) { + return; + } + responseFinished = true; + let status; + if (response.aborted && !response.complete) { + status = { code: api_1.SpanStatusCode.ERROR }; + } else { + status = { + code: utils.parseResponseStatus(api_1.SpanKind.CLIENT, response.statusCode) + }; + } + span.setStatus(status); + if (this._getConfig().applyCustomAttributesOnSpan) { + (0, instrumentation_1.safeExecuteInTheMiddle)(() => this._getConfig().applyCustomAttributesOnSpan(span, request, response), () => { + }, true); + } + this._closeHttpSpan(span, api_1.SpanKind.CLIENT, startTime, metricAttributes); + }; + response.on("end", endHandler); + if (semver.lt(process.version, "16.0.0")) { + response.on("close", endHandler); + } + response.on(events_1.errorMonitor, (error) => { + this._diag.debug("outgoingRequest on error()", error); + if (responseFinished) { + return; + } + responseFinished = true; + utils.setSpanWithError(span, error); + span.setStatus({ + code: api_1.SpanStatusCode.ERROR, + message: error.message + }); + this._closeHttpSpan(span, api_1.SpanKind.CLIENT, startTime, metricAttributes); + }); + }); + request.on("close", () => { + this._diag.debug("outgoingRequest on request close()"); + if (request.aborted || responseFinished) { + return; + } + responseFinished = true; + this._closeHttpSpan(span, api_1.SpanKind.CLIENT, startTime, metricAttributes); + }); + request.on(events_1.errorMonitor, (error) => { + this._diag.debug("outgoingRequest on request error()", error); + if (responseFinished) { + return; + } + responseFinished = true; + utils.setSpanWithError(span, error); + this._closeHttpSpan(span, api_1.SpanKind.CLIENT, startTime, metricAttributes); + }); + this._diag.debug("http.ClientRequest return request"); + return request; + } + _incomingRequestFunction(component, original) { + const instrumentation = this; + return function incomingRequest(event, ...args3) { + if (event !== "request") { + return original.apply(this, [event, ...args3]); + } + const request = args3[0]; + const response = args3[1]; + const pathname = request.url ? url2.parse(request.url).pathname || "/" : "/"; + const method = request.method || "GET"; + instrumentation._diag.debug(`${component} instrumentation incomingRequest`); + if (utils.isIgnored(pathname, instrumentation._getConfig().ignoreIncomingPaths, (e) => instrumentation._diag.error("caught ignoreIncomingPaths error: ", e)) || (0, instrumentation_1.safeExecuteInTheMiddle)(() => { + var _a, _b; + return (_b = (_a = instrumentation._getConfig()).ignoreIncomingRequestHook) === null || _b === void 0 ? void 0 : _b.call(_a, request); + }, (e) => { + if (e != null) { + instrumentation._diag.error("caught ignoreIncomingRequestHook error: ", e); + } + }, true)) { + return api_1.context.with((0, core_1.suppressTracing)(api_1.context.active()), () => { + api_1.context.bind(api_1.context.active(), request); + api_1.context.bind(api_1.context.active(), response); + return original.apply(this, [event, ...args3]); + }); + } + const headers = request.headers; + const spanAttributes = utils.getIncomingRequestAttributes(request, { + component, + serverName: instrumentation._getConfig().serverName, + hookAttributes: instrumentation._callStartSpanHook(request, instrumentation._getConfig().startIncomingSpanHook) + }); + const spanOptions = { + kind: api_1.SpanKind.SERVER, + attributes: spanAttributes + }; + const startTime = (0, core_1.hrTime)(); + const metricAttributes = utils.getIncomingRequestMetricAttributes(spanAttributes); + const ctx = api_1.propagation.extract(api_1.ROOT_CONTEXT, headers); + const span = instrumentation._startHttpSpan(method, spanOptions, ctx); + const rpcMetadata = { + type: core_2.RPCType.HTTP, + span + }; + return api_1.context.with((0, core_2.setRPCMetadata)(api_1.trace.setSpan(ctx, span), rpcMetadata), () => { + api_1.context.bind(api_1.context.active(), request); + api_1.context.bind(api_1.context.active(), response); + if (instrumentation._getConfig().requestHook) { + instrumentation._callRequestHook(span, request); + } + if (instrumentation._getConfig().responseHook) { + instrumentation._callResponseHook(span, response); + } + instrumentation._headerCapture.server.captureRequestHeaders(span, (header) => request.headers[header]); + let hasError = false; + response.on("close", () => { + if (hasError) { + return; + } + instrumentation._onServerResponseFinish(request, response, span, metricAttributes, startTime); + }); + response.on(events_1.errorMonitor, (err2) => { + hasError = true; + instrumentation._onServerResponseError(span, metricAttributes, startTime, err2); + }); + return (0, instrumentation_1.safeExecuteInTheMiddle)(() => original.apply(this, [event, ...args3]), (error) => { + if (error) { + utils.setSpanWithError(span, error); + instrumentation._closeHttpSpan(span, api_1.SpanKind.SERVER, startTime, metricAttributes); + throw error; + } + }); + }); + }; + } + _outgoingRequestFunction(component, original) { + const instrumentation = this; + return function outgoingRequest(options2, ...args3) { + if (!utils.isValidOptionsType(options2)) { + return original.apply(this, [options2, ...args3]); + } + const extraOptions = typeof args3[0] === "object" && (typeof options2 === "string" || options2 instanceof url2.URL) ? args3.shift() : void 0; + const { origin, pathname, method, optionsParsed } = utils.getRequestInfo(options2, extraOptions); + if (component === "http" && semver.lt(process.version, "9.0.0") && optionsParsed.protocol === "https:") { + return original.apply(this, [optionsParsed, ...args3]); + } + if (utils.isIgnored(origin + pathname, instrumentation._getConfig().ignoreOutgoingUrls, (e) => instrumentation._diag.error("caught ignoreOutgoingUrls error: ", e)) || (0, instrumentation_1.safeExecuteInTheMiddle)(() => { + var _a, _b; + return (_b = (_a = instrumentation._getConfig()).ignoreOutgoingRequestHook) === null || _b === void 0 ? void 0 : _b.call(_a, optionsParsed); + }, (e) => { + if (e != null) { + instrumentation._diag.error("caught ignoreOutgoingRequestHook error: ", e); + } + }, true)) { + return original.apply(this, [optionsParsed, ...args3]); + } + const { hostname, port } = utils.extractHostnameAndPort(optionsParsed); + const attributes = utils.getOutgoingRequestAttributes(optionsParsed, { + component, + port, + hostname, + hookAttributes: instrumentation._callStartSpanHook(optionsParsed, instrumentation._getConfig().startOutgoingSpanHook) + }); + const startTime = (0, core_1.hrTime)(); + const metricAttributes = utils.getOutgoingRequestMetricAttributes(attributes); + const spanOptions = { + kind: api_1.SpanKind.CLIENT, + attributes + }; + const span = instrumentation._startHttpSpan(method, spanOptions); + const parentContext = api_1.context.active(); + const requestContext = api_1.trace.setSpan(parentContext, span); + if (!optionsParsed.headers) { + optionsParsed.headers = {}; + } + api_1.propagation.inject(requestContext, optionsParsed.headers); + return api_1.context.with(requestContext, () => { + const cb = args3[args3.length - 1]; + if (typeof cb === "function") { + args3[args3.length - 1] = api_1.context.bind(parentContext, cb); + } + const request = (0, instrumentation_1.safeExecuteInTheMiddle)(() => original.apply(this, [optionsParsed, ...args3]), (error) => { + if (error) { + utils.setSpanWithError(span, error); + instrumentation._closeHttpSpan(span, api_1.SpanKind.CLIENT, startTime, metricAttributes); + throw error; + } + }); + instrumentation._diag.debug(`${component} instrumentation outgoingRequest`); + api_1.context.bind(parentContext, request); + return instrumentation._traceClientRequest(request, span, startTime, metricAttributes); + }); + }; + } + _onServerResponseFinish(request, response, span, metricAttributes, startTime) { + const attributes = utils.getIncomingRequestAttributesOnResponse(request, response); + metricAttributes = Object.assign(metricAttributes, utils.getIncomingRequestMetricAttributesOnResponse(attributes)); + this._headerCapture.server.captureResponseHeaders(span, (header) => response.getHeader(header)); + span.setAttributes(attributes).setStatus({ + code: utils.parseResponseStatus(api_1.SpanKind.SERVER, response.statusCode) + }); + const route = attributes[semantic_conventions_1.SemanticAttributes.HTTP_ROUTE]; + if (route) { + span.updateName(`${request.method || "GET"} ${route}`); + } + if (this._getConfig().applyCustomAttributesOnSpan) { + (0, instrumentation_1.safeExecuteInTheMiddle)(() => this._getConfig().applyCustomAttributesOnSpan(span, request, response), () => { + }, true); + } + this._closeHttpSpan(span, api_1.SpanKind.SERVER, startTime, metricAttributes); + } + _onServerResponseError(span, metricAttributes, startTime, error) { + utils.setSpanWithError(span, error); + this._closeHttpSpan(span, api_1.SpanKind.SERVER, startTime, metricAttributes); + } + _startHttpSpan(name, options2, ctx = api_1.context.active()) { + const requireParent = options2.kind === api_1.SpanKind.CLIENT ? this._getConfig().requireParentforOutgoingSpans : this._getConfig().requireParentforIncomingSpans; + let span; + const currentSpan = api_1.trace.getSpan(ctx); + if (requireParent === true && currentSpan === void 0) { + span = api_1.trace.wrapSpanContext(api_1.INVALID_SPAN_CONTEXT); + } else if (requireParent === true && (currentSpan === null || currentSpan === void 0 ? void 0 : currentSpan.spanContext().isRemote)) { + span = currentSpan; + } else { + span = this.tracer.startSpan(name, options2, ctx); + } + this._spanNotEnded.add(span); + return span; + } + _closeHttpSpan(span, spanKind, startTime, metricAttributes) { + if (!this._spanNotEnded.has(span)) { + return; + } + span.end(); + this._spanNotEnded.delete(span); + const duration = (0, core_1.hrTimeToMilliseconds)((0, core_1.hrTimeDuration)(startTime, (0, core_1.hrTime)())); + if (spanKind === api_1.SpanKind.SERVER) { + this._httpServerDurationHistogram.record(duration, metricAttributes); + } else if (spanKind === api_1.SpanKind.CLIENT) { + this._httpClientDurationHistogram.record(duration, metricAttributes); + } + } + _callResponseHook(span, response) { + (0, instrumentation_1.safeExecuteInTheMiddle)(() => this._getConfig().responseHook(span, response), () => { + }, true); + } + _callRequestHook(span, request) { + (0, instrumentation_1.safeExecuteInTheMiddle)(() => this._getConfig().requestHook(span, request), () => { + }, true); + } + _callStartSpanHook(request, hookFunc) { + if (typeof hookFunc === "function") { + return (0, instrumentation_1.safeExecuteInTheMiddle)(() => hookFunc(request), () => { + }, true); + } + } + _createHeaderCapture() { + var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m; + const config = this._getConfig(); + return { + client: { + captureRequestHeaders: utils.headerCapture("request", (_c = (_b = (_a = config.headersToSpanAttributes) === null || _a === void 0 ? void 0 : _a.client) === null || _b === void 0 ? void 0 : _b.requestHeaders) !== null && _c !== void 0 ? _c : []), + captureResponseHeaders: utils.headerCapture("response", (_f = (_e = (_d = config.headersToSpanAttributes) === null || _d === void 0 ? void 0 : _d.client) === null || _e === void 0 ? void 0 : _e.responseHeaders) !== null && _f !== void 0 ? _f : []) + }, + server: { + captureRequestHeaders: utils.headerCapture("request", (_j = (_h = (_g = config.headersToSpanAttributes) === null || _g === void 0 ? void 0 : _g.server) === null || _h === void 0 ? void 0 : _h.requestHeaders) !== null && _j !== void 0 ? _j : []), + captureResponseHeaders: utils.headerCapture("response", (_m = (_l = (_k = config.headersToSpanAttributes) === null || _k === void 0 ? void 0 : _k.server) === null || _l === void 0 ? void 0 : _l.responseHeaders) !== null && _m !== void 0 ? _m : []) + } + }; + } + }; + exports2.HttpInstrumentation = HttpInstrumentation2; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/types.js +var require_types16 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/index.js +var require_src13 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+instrumentation-http@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/instrumentation-http/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_http(), exports2); + __exportStar(require_types16(), exports2); + __exportStar(require_utils11(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/types/Logger.js +var require_Logger = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/types/Logger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/types/LoggerProvider.js +var require_LoggerProvider = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/types/LoggerProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/types/LogRecord.js +var require_LogRecord = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/types/LogRecord.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SeverityNumber = void 0; + var SeverityNumber; + (function(SeverityNumber2) { + SeverityNumber2[SeverityNumber2["UNSPECIFIED"] = 0] = "UNSPECIFIED"; + SeverityNumber2[SeverityNumber2["TRACE"] = 1] = "TRACE"; + SeverityNumber2[SeverityNumber2["TRACE2"] = 2] = "TRACE2"; + SeverityNumber2[SeverityNumber2["TRACE3"] = 3] = "TRACE3"; + SeverityNumber2[SeverityNumber2["TRACE4"] = 4] = "TRACE4"; + SeverityNumber2[SeverityNumber2["DEBUG"] = 5] = "DEBUG"; + SeverityNumber2[SeverityNumber2["DEBUG2"] = 6] = "DEBUG2"; + SeverityNumber2[SeverityNumber2["DEBUG3"] = 7] = "DEBUG3"; + SeverityNumber2[SeverityNumber2["DEBUG4"] = 8] = "DEBUG4"; + SeverityNumber2[SeverityNumber2["INFO"] = 9] = "INFO"; + SeverityNumber2[SeverityNumber2["INFO2"] = 10] = "INFO2"; + SeverityNumber2[SeverityNumber2["INFO3"] = 11] = "INFO3"; + SeverityNumber2[SeverityNumber2["INFO4"] = 12] = "INFO4"; + SeverityNumber2[SeverityNumber2["WARN"] = 13] = "WARN"; + SeverityNumber2[SeverityNumber2["WARN2"] = 14] = "WARN2"; + SeverityNumber2[SeverityNumber2["WARN3"] = 15] = "WARN3"; + SeverityNumber2[SeverityNumber2["WARN4"] = 16] = "WARN4"; + SeverityNumber2[SeverityNumber2["ERROR"] = 17] = "ERROR"; + SeverityNumber2[SeverityNumber2["ERROR2"] = 18] = "ERROR2"; + SeverityNumber2[SeverityNumber2["ERROR3"] = 19] = "ERROR3"; + SeverityNumber2[SeverityNumber2["ERROR4"] = 20] = "ERROR4"; + SeverityNumber2[SeverityNumber2["FATAL"] = 21] = "FATAL"; + SeverityNumber2[SeverityNumber2["FATAL2"] = 22] = "FATAL2"; + SeverityNumber2[SeverityNumber2["FATAL3"] = 23] = "FATAL3"; + SeverityNumber2[SeverityNumber2["FATAL4"] = 24] = "FATAL4"; + })(SeverityNumber = exports2.SeverityNumber || (exports2.SeverityNumber = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/types/LoggerOptions.js +var require_LoggerOptions = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/types/LoggerOptions.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/NoopLogger.js +var require_NoopLogger = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/NoopLogger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NOOP_LOGGER = exports2.NoopLogger = void 0; + var NoopLogger = class { + emit(_logRecord) { + } + }; + exports2.NoopLogger = NoopLogger; + exports2.NOOP_LOGGER = new NoopLogger(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/NoopLoggerProvider.js +var require_NoopLoggerProvider = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/NoopLoggerProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NOOP_LOGGER_PROVIDER = exports2.NoopLoggerProvider = void 0; + var NoopLogger_1 = require_NoopLogger(); + var NoopLoggerProvider = class { + getLogger(_name, _version, _options) { + return new NoopLogger_1.NoopLogger(); + } + }; + exports2.NoopLoggerProvider = NoopLoggerProvider; + exports2.NOOP_LOGGER_PROVIDER = new NoopLoggerProvider(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/platform/node/globalThis.js +var require_globalThis4 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/platform/node/globalThis.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2._globalThis = void 0; + exports2._globalThis = typeof globalThis === "object" ? globalThis : global; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/platform/node/index.js +var require_node10 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/platform/node/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_globalThis4(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/platform/index.js +var require_platform7 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/platform/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_node10(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/internal/global-utils.js +var require_global_utils2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/internal/global-utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.API_BACKWARDS_COMPATIBILITY_VERSION = exports2.makeGetter = exports2._global = exports2.GLOBAL_LOGS_API_KEY = void 0; + var platform_1 = require_platform7(); + exports2.GLOBAL_LOGS_API_KEY = Symbol.for("io.opentelemetry.js.api.logs"); + exports2._global = platform_1._globalThis; + function makeGetter(requiredVersion, instance2, fallback) { + return (version4) => version4 === requiredVersion ? instance2 : fallback; + } + exports2.makeGetter = makeGetter; + exports2.API_BACKWARDS_COMPATIBILITY_VERSION = 1; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/api/logs.js +var require_logs2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/api/logs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LogsAPI = void 0; + var global_utils_1 = require_global_utils2(); + var NoopLoggerProvider_1 = require_NoopLoggerProvider(); + var LogsAPI = class _LogsAPI { + constructor() { + } + static getInstance() { + if (!this._instance) { + this._instance = new _LogsAPI(); + } + return this._instance; + } + setGlobalLoggerProvider(provider) { + if (global_utils_1._global[global_utils_1.GLOBAL_LOGS_API_KEY]) { + return this.getLoggerProvider(); + } + global_utils_1._global[global_utils_1.GLOBAL_LOGS_API_KEY] = (0, global_utils_1.makeGetter)(global_utils_1.API_BACKWARDS_COMPATIBILITY_VERSION, provider, NoopLoggerProvider_1.NOOP_LOGGER_PROVIDER); + return provider; + } + /** + * Returns the global logger provider. + * + * @returns LoggerProvider + */ + getLoggerProvider() { + var _a, _b; + return (_b = (_a = global_utils_1._global[global_utils_1.GLOBAL_LOGS_API_KEY]) === null || _a === void 0 ? void 0 : _a.call(global_utils_1._global, global_utils_1.API_BACKWARDS_COMPATIBILITY_VERSION)) !== null && _b !== void 0 ? _b : NoopLoggerProvider_1.NOOP_LOGGER_PROVIDER; + } + /** + * Returns a logger from the global logger provider. + * + * @returns Logger + */ + getLogger(name, version4, options2) { + return this.getLoggerProvider().getLogger(name, version4, options2); + } + /** Remove the global logger provider */ + disable() { + delete global_utils_1._global[global_utils_1.GLOBAL_LOGS_API_KEY]; + } + }; + exports2.LogsAPI = LogsAPI; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/index.js +var require_src14 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+api-logs@0.45.1/node_modules/@opentelemetry/api-logs/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.logs = void 0; + __exportStar(require_Logger(), exports2); + __exportStar(require_LoggerProvider(), exports2); + __exportStar(require_LogRecord(), exports2); + __exportStar(require_LoggerOptions(), exports2); + __exportStar(require_NoopLogger(), exports2); + __exportStar(require_NoopLoggerProvider(), exports2); + var logs_1 = require_logs2(); + exports2.logs = logs_1.LogsAPI.getInstance(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/LogRecord.js +var require_LogRecord2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/LogRecord.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LogRecord = void 0; + var api_1 = require_src(); + var api = require_src(); + var core_1 = require_src5(); + var LogRecord = class { + constructor(_sharedState, instrumentationScope, logRecord) { + this.attributes = {}; + this._isReadonly = false; + const { timestamp, observedTimestamp, severityNumber, severityText, body: body2, attributes = {}, context: context2 } = logRecord; + const now = Date.now(); + this.hrTime = (0, core_1.timeInputToHrTime)(timestamp !== null && timestamp !== void 0 ? timestamp : now); + this.hrTimeObserved = (0, core_1.timeInputToHrTime)(observedTimestamp !== null && observedTimestamp !== void 0 ? observedTimestamp : now); + if (context2) { + const spanContext = api.trace.getSpanContext(context2); + if (spanContext && api.isSpanContextValid(spanContext)) { + this.spanContext = spanContext; + } + } + this.severityNumber = severityNumber; + this.severityText = severityText; + this.body = body2; + this.resource = _sharedState.resource; + this.instrumentationScope = instrumentationScope; + this._logRecordLimits = _sharedState.logRecordLimits; + this.setAttributes(attributes); + } + set severityText(severityText) { + if (this._isLogRecordReadonly()) { + return; + } + this._severityText = severityText; + } + get severityText() { + return this._severityText; + } + set severityNumber(severityNumber) { + if (this._isLogRecordReadonly()) { + return; + } + this._severityNumber = severityNumber; + } + get severityNumber() { + return this._severityNumber; + } + set body(body2) { + if (this._isLogRecordReadonly()) { + return; + } + this._body = body2; + } + get body() { + return this._body; + } + setAttribute(key, value) { + if (this._isLogRecordReadonly()) { + return this; + } + if (value === null) { + return this; + } + if (typeof value === "object" && !Array.isArray(value) && Object.keys(value).length > 0) { + this.attributes[key] = value; + } + if (key.length === 0) { + api.diag.warn(`Invalid attribute key: ${key}`); + return this; + } + if (!(0, core_1.isAttributeValue)(value)) { + api.diag.warn(`Invalid attribute value set for key: ${key}`); + return this; + } + if (Object.keys(this.attributes).length >= this._logRecordLimits.attributeCountLimit && !Object.prototype.hasOwnProperty.call(this.attributes, key)) { + return this; + } + this.attributes[key] = this._truncateToSize(value); + return this; + } + setAttributes(attributes) { + for (const [k, v] of Object.entries(attributes)) { + this.setAttribute(k, v); + } + return this; + } + setBody(body2) { + this.body = body2; + return this; + } + setSeverityNumber(severityNumber) { + this.severityNumber = severityNumber; + return this; + } + setSeverityText(severityText) { + this.severityText = severityText; + return this; + } + /** + * @internal + * A LogRecordProcessor may freely modify logRecord for the duration of the OnEmit call. + * If logRecord is needed after OnEmit returns (i.e. for asynchronous processing) only reads are permitted. + */ + _makeReadonly() { + this._isReadonly = true; + } + _truncateToSize(value) { + const limit = this._logRecordLimits.attributeValueLengthLimit; + if (limit <= 0) { + api.diag.warn(`Attribute value limit must be positive, got ${limit}`); + return value; + } + if (typeof value === "string") { + return this._truncateToLimitUtil(value, limit); + } + if (Array.isArray(value)) { + return value.map((val) => typeof val === "string" ? this._truncateToLimitUtil(val, limit) : val); + } + return value; + } + _truncateToLimitUtil(value, limit) { + if (value.length <= limit) { + return value; + } + return value.substring(0, limit); + } + _isLogRecordReadonly() { + if (this._isReadonly) { + api_1.diag.warn("Can not execute the operation on emitted log record"); + } + return this._isReadonly; + } + }; + exports2.LogRecord = LogRecord; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/Logger.js +var require_Logger2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/Logger.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Logger = void 0; + var api_1 = require_src(); + var LogRecord_1 = require_LogRecord2(); + var Logger = class { + constructor(instrumentationScope, _sharedState) { + this.instrumentationScope = instrumentationScope; + this._sharedState = _sharedState; + } + emit(logRecord) { + const currentContext = logRecord.context || api_1.context.active(); + const logRecordInstance = new LogRecord_1.LogRecord(this._sharedState, this.instrumentationScope, Object.assign({ context: currentContext }, logRecord)); + this._sharedState.activeProcessor.onEmit(logRecordInstance, currentContext); + logRecordInstance._makeReadonly(); + } + }; + exports2.Logger = Logger; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/config.js +var require_config3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/config.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reconfigureLimits = exports2.loadDefaultConfig = void 0; + var core_1 = require_src5(); + function loadDefaultConfig() { + return { + forceFlushTimeoutMillis: 3e4, + logRecordLimits: { + attributeValueLengthLimit: (0, core_1.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT, + attributeCountLimit: (0, core_1.getEnv)().OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT + }, + includeTraceContext: true + }; + } + exports2.loadDefaultConfig = loadDefaultConfig; + function reconfigureLimits(logRecordLimits) { + var _a, _b, _c, _d, _e, _f; + const parsedEnvConfig = (0, core_1.getEnvWithoutDefaults)(); + return { + /** + * Reassign log record attribute count limit to use first non null value defined by user or use default value + */ + attributeCountLimit: (_c = (_b = (_a = logRecordLimits.attributeCountLimit) !== null && _a !== void 0 ? _a : parsedEnvConfig.OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT) !== null && _b !== void 0 ? _b : parsedEnvConfig.OTEL_ATTRIBUTE_COUNT_LIMIT) !== null && _c !== void 0 ? _c : core_1.DEFAULT_ATTRIBUTE_COUNT_LIMIT, + /** + * Reassign log record attribute value length limit to use first non null value defined by user or use default value + */ + attributeValueLengthLimit: (_f = (_e = (_d = logRecordLimits.attributeValueLengthLimit) !== null && _d !== void 0 ? _d : parsedEnvConfig.OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT) !== null && _e !== void 0 ? _e : parsedEnvConfig.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT) !== null && _f !== void 0 ? _f : core_1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT + }; + } + exports2.reconfigureLimits = reconfigureLimits; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/MultiLogRecordProcessor.js +var require_MultiLogRecordProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/MultiLogRecordProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MultiLogRecordProcessor = void 0; + var core_1 = require_src5(); + var MultiLogRecordProcessor = class { + constructor(processors, forceFlushTimeoutMillis) { + this.processors = processors; + this.forceFlushTimeoutMillis = forceFlushTimeoutMillis; + } + async forceFlush() { + const timeout = this.forceFlushTimeoutMillis; + await Promise.all(this.processors.map((processor) => (0, core_1.callWithTimeout)(processor.forceFlush(), timeout))); + } + onEmit(logRecord, context2) { + this.processors.forEach((processors) => processors.onEmit(logRecord, context2)); + } + async shutdown() { + await Promise.all(this.processors.map((processor) => processor.shutdown())); + } + }; + exports2.MultiLogRecordProcessor = MultiLogRecordProcessor; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/export/NoopLogRecordProcessor.js +var require_NoopLogRecordProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/export/NoopLogRecordProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NoopLogRecordProcessor = void 0; + var NoopLogRecordProcessor = class { + forceFlush() { + return Promise.resolve(); + } + onEmit(_logRecord, _context) { + } + shutdown() { + return Promise.resolve(); + } + }; + exports2.NoopLogRecordProcessor = NoopLogRecordProcessor; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/internal/LoggerProviderSharedState.js +var require_LoggerProviderSharedState = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/internal/LoggerProviderSharedState.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LoggerProviderSharedState = void 0; + var NoopLogRecordProcessor_1 = require_NoopLogRecordProcessor(); + var LoggerProviderSharedState = class { + constructor(resource, forceFlushTimeoutMillis, logRecordLimits) { + this.resource = resource; + this.forceFlushTimeoutMillis = forceFlushTimeoutMillis; + this.logRecordLimits = logRecordLimits; + this.loggers = /* @__PURE__ */ new Map(); + this.registeredLogRecordProcessors = []; + this.activeProcessor = new NoopLogRecordProcessor_1.NoopLogRecordProcessor(); + } + }; + exports2.LoggerProviderSharedState = LoggerProviderSharedState; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/LoggerProvider.js +var require_LoggerProvider2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/LoggerProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LoggerProvider = exports2.DEFAULT_LOGGER_NAME = void 0; + var api_1 = require_src(); + var api_logs_1 = require_src14(); + var resources_1 = require_src7(); + var core_1 = require_src5(); + var Logger_1 = require_Logger2(); + var config_1 = require_config3(); + var MultiLogRecordProcessor_1 = require_MultiLogRecordProcessor(); + var LoggerProviderSharedState_1 = require_LoggerProviderSharedState(); + exports2.DEFAULT_LOGGER_NAME = "unknown"; + var LoggerProvider = class { + constructor(config = {}) { + const { resource = resources_1.Resource.default(), logRecordLimits, forceFlushTimeoutMillis } = (0, core_1.merge)({}, (0, config_1.loadDefaultConfig)(), config); + this._sharedState = new LoggerProviderSharedState_1.LoggerProviderSharedState(resource, forceFlushTimeoutMillis, (0, config_1.reconfigureLimits)(logRecordLimits)); + this._shutdownOnce = new core_1.BindOnceFuture(this._shutdown, this); + } + /** + * Get a logger with the configuration of the LoggerProvider. + */ + getLogger(name, version4, options2) { + if (this._shutdownOnce.isCalled) { + api_1.diag.warn("A shutdown LoggerProvider cannot provide a Logger"); + return api_logs_1.NOOP_LOGGER; + } + if (!name) { + api_1.diag.warn("Logger requested without instrumentation scope name."); + } + const loggerName = name || exports2.DEFAULT_LOGGER_NAME; + const key = `${loggerName}@${version4 || ""}:${(options2 === null || options2 === void 0 ? void 0 : options2.schemaUrl) || ""}`; + if (!this._sharedState.loggers.has(key)) { + this._sharedState.loggers.set(key, new Logger_1.Logger({ name: loggerName, version: version4, schemaUrl: options2 === null || options2 === void 0 ? void 0 : options2.schemaUrl }, this._sharedState)); + } + return this._sharedState.loggers.get(key); + } + /** + * Adds a new {@link LogRecordProcessor} to this logger. + * @param processor the new LogRecordProcessor to be added. + */ + addLogRecordProcessor(processor) { + if (this._sharedState.registeredLogRecordProcessors.length === 0) { + this._sharedState.activeProcessor.shutdown().catch((err2) => api_1.diag.error("Error while trying to shutdown current log record processor", err2)); + } + this._sharedState.registeredLogRecordProcessors.push(processor); + this._sharedState.activeProcessor = new MultiLogRecordProcessor_1.MultiLogRecordProcessor(this._sharedState.registeredLogRecordProcessors, this._sharedState.forceFlushTimeoutMillis); + } + /** + * Notifies all registered LogRecordProcessor to flush any buffered data. + * + * Returns a promise which is resolved when all flushes are complete. + */ + forceFlush() { + if (this._shutdownOnce.isCalled) { + api_1.diag.warn("invalid attempt to force flush after LoggerProvider shutdown"); + return this._shutdownOnce.promise; + } + return this._sharedState.activeProcessor.forceFlush(); + } + /** + * Flush all buffered data and shut down the LoggerProvider and all registered + * LogRecordProcessor. + * + * Returns a promise which is resolved when all flushes are complete. + */ + shutdown() { + if (this._shutdownOnce.isCalled) { + api_1.diag.warn("shutdown may only be called once per LoggerProvider"); + return this._shutdownOnce.promise; + } + return this._shutdownOnce.call(); + } + _shutdown() { + return this._sharedState.activeProcessor.shutdown(); + } + }; + exports2.LoggerProvider = LoggerProvider; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/export/ConsoleLogRecordExporter.js +var require_ConsoleLogRecordExporter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/export/ConsoleLogRecordExporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ConsoleLogRecordExporter = void 0; + var core_1 = require_src5(); + var core_2 = require_src5(); + var ConsoleLogRecordExporter = class { + /** + * Export logs. + * @param logs + * @param resultCallback + */ + export(logs, resultCallback) { + this._sendLogRecords(logs, resultCallback); + } + /** + * Shutdown the exporter. + */ + shutdown() { + return Promise.resolve(); + } + /** + * converts logRecord info into more readable format + * @param logRecord + */ + _exportInfo(logRecord) { + var _a, _b, _c; + return { + timestamp: (0, core_1.hrTimeToMicroseconds)(logRecord.hrTime), + traceId: (_a = logRecord.spanContext) === null || _a === void 0 ? void 0 : _a.traceId, + spanId: (_b = logRecord.spanContext) === null || _b === void 0 ? void 0 : _b.spanId, + traceFlags: (_c = logRecord.spanContext) === null || _c === void 0 ? void 0 : _c.traceFlags, + severityText: logRecord.severityText, + severityNumber: logRecord.severityNumber, + body: logRecord.body, + attributes: logRecord.attributes + }; + } + /** + * Showing logs in console + * @param logRecords + * @param done + */ + _sendLogRecords(logRecords, done) { + for (const logRecord of logRecords) { + console.dir(this._exportInfo(logRecord), { depth: 3 }); + } + done === null || done === void 0 ? void 0 : done({ code: core_2.ExportResultCode.SUCCESS }); + } + }; + exports2.ConsoleLogRecordExporter = ConsoleLogRecordExporter; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/export/SimpleLogRecordProcessor.js +var require_SimpleLogRecordProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/export/SimpleLogRecordProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SimpleLogRecordProcessor = void 0; + var core_1 = require_src5(); + var SimpleLogRecordProcessor = class { + constructor(_exporter) { + this._exporter = _exporter; + this._shutdownOnce = new core_1.BindOnceFuture(this._shutdown, this); + } + onEmit(logRecord) { + if (this._shutdownOnce.isCalled) { + return; + } + this._exporter.export([logRecord], (res) => { + var _a; + if (res.code !== core_1.ExportResultCode.SUCCESS) { + (0, core_1.globalErrorHandler)((_a = res.error) !== null && _a !== void 0 ? _a : new Error(`SimpleLogRecordProcessor: log record export failed (status ${res})`)); + return; + } + }); + } + forceFlush() { + return Promise.resolve(); + } + shutdown() { + return this._shutdownOnce.call(); + } + _shutdown() { + return this._exporter.shutdown(); + } + }; + exports2.SimpleLogRecordProcessor = SimpleLogRecordProcessor; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/export/InMemoryLogRecordExporter.js +var require_InMemoryLogRecordExporter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/export/InMemoryLogRecordExporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.InMemoryLogRecordExporter = void 0; + var core_1 = require_src5(); + var InMemoryLogRecordExporter = class { + constructor() { + this._finishedLogRecords = []; + this._stopped = false; + } + export(logs, resultCallback) { + if (this._stopped) { + return resultCallback({ + code: core_1.ExportResultCode.FAILED, + error: new Error("Exporter has been stopped") + }); + } + this._finishedLogRecords.push(...logs); + resultCallback({ code: core_1.ExportResultCode.SUCCESS }); + } + shutdown() { + this._stopped = true; + this.reset(); + return Promise.resolve(); + } + getFinishedLogRecords() { + return this._finishedLogRecords; + } + reset() { + this._finishedLogRecords = []; + } + }; + exports2.InMemoryLogRecordExporter = InMemoryLogRecordExporter; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/export/BatchLogRecordProcessorBase.js +var require_BatchLogRecordProcessorBase = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/export/BatchLogRecordProcessorBase.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchLogRecordProcessorBase = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var BatchLogRecordProcessorBase = class { + constructor(_exporter, config) { + var _a, _b, _c, _d; + this._exporter = _exporter; + this._finishedLogRecords = []; + const env4 = (0, core_1.getEnv)(); + this._maxExportBatchSize = (_a = config === null || config === void 0 ? void 0 : config.maxExportBatchSize) !== null && _a !== void 0 ? _a : env4.OTEL_BLRP_MAX_EXPORT_BATCH_SIZE; + this._maxQueueSize = (_b = config === null || config === void 0 ? void 0 : config.maxQueueSize) !== null && _b !== void 0 ? _b : env4.OTEL_BLRP_MAX_QUEUE_SIZE; + this._scheduledDelayMillis = (_c = config === null || config === void 0 ? void 0 : config.scheduledDelayMillis) !== null && _c !== void 0 ? _c : env4.OTEL_BLRP_SCHEDULE_DELAY; + this._exportTimeoutMillis = (_d = config === null || config === void 0 ? void 0 : config.exportTimeoutMillis) !== null && _d !== void 0 ? _d : env4.OTEL_BLRP_EXPORT_TIMEOUT; + this._shutdownOnce = new core_1.BindOnceFuture(this._shutdown, this); + if (this._maxExportBatchSize > this._maxQueueSize) { + api_1.diag.warn("BatchLogRecordProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"); + this._maxExportBatchSize = this._maxQueueSize; + } + } + onEmit(logRecord) { + if (this._shutdownOnce.isCalled) { + return; + } + this._addToBuffer(logRecord); + } + forceFlush() { + if (this._shutdownOnce.isCalled) { + return this._shutdownOnce.promise; + } + return this._flushAll(); + } + shutdown() { + return this._shutdownOnce.call(); + } + async _shutdown() { + this.onShutdown(); + await this._flushAll(); + await this._exporter.shutdown(); + } + /** Add a LogRecord in the buffer. */ + _addToBuffer(logRecord) { + if (this._finishedLogRecords.length >= this._maxQueueSize) { + return; + } + this._finishedLogRecords.push(logRecord); + this._maybeStartTimer(); + } + /** + * Send all LogRecords to the exporter respecting the batch size limit + * This function is used only on forceFlush or shutdown, + * for all other cases _flush should be used + * */ + _flushAll() { + return new Promise((resolve8, reject) => { + const promises2 = []; + const batchCount = Math.ceil(this._finishedLogRecords.length / this._maxExportBatchSize); + for (let i = 0; i < batchCount; i++) { + promises2.push(this._flushOneBatch()); + } + Promise.all(promises2).then(() => { + resolve8(); + }).catch(reject); + }); + } + _flushOneBatch() { + this._clearTimer(); + if (this._finishedLogRecords.length === 0) { + return Promise.resolve(); + } + return new Promise((resolve8, reject) => { + (0, core_1.callWithTimeout)(this._export(this._finishedLogRecords.splice(0, this._maxExportBatchSize)), this._exportTimeoutMillis).then(() => resolve8()).catch(reject); + }); + } + _maybeStartTimer() { + if (this._timer !== void 0) { + return; + } + this._timer = setTimeout(() => { + this._flushOneBatch().then(() => { + if (this._finishedLogRecords.length > 0) { + this._clearTimer(); + this._maybeStartTimer(); + } + }).catch((e) => { + (0, core_1.globalErrorHandler)(e); + }); + }, this._scheduledDelayMillis); + (0, core_1.unrefTimer)(this._timer); + } + _clearTimer() { + if (this._timer !== void 0) { + clearTimeout(this._timer); + this._timer = void 0; + } + } + _export(logRecords) { + return new Promise((resolve8, reject) => { + this._exporter.export(logRecords, (res) => { + var _a; + if (res.code !== core_1.ExportResultCode.SUCCESS) { + reject((_a = res.error) !== null && _a !== void 0 ? _a : new Error(`BatchLogRecordProcessorBase: log record export failed (status ${res})`)); + return; + } + resolve8(res); + }); + }); + } + }; + exports2.BatchLogRecordProcessorBase = BatchLogRecordProcessorBase; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/platform/node/export/BatchLogRecordProcessor.js +var require_BatchLogRecordProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/platform/node/export/BatchLogRecordProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchLogRecordProcessor = void 0; + var BatchLogRecordProcessorBase_1 = require_BatchLogRecordProcessorBase(); + var BatchLogRecordProcessor = class extends BatchLogRecordProcessorBase_1.BatchLogRecordProcessorBase { + onShutdown() { + } + }; + exports2.BatchLogRecordProcessor = BatchLogRecordProcessor; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/platform/node/index.js +var require_node11 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/platform/node/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchLogRecordProcessor = void 0; + var BatchLogRecordProcessor_1 = require_BatchLogRecordProcessor(); + Object.defineProperty(exports2, "BatchLogRecordProcessor", { enumerable: true, get: function() { + return BatchLogRecordProcessor_1.BatchLogRecordProcessor; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/platform/index.js +var require_platform8 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/platform/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchLogRecordProcessor = void 0; + var node_1 = require_node11(); + Object.defineProperty(exports2, "BatchLogRecordProcessor", { enumerable: true, get: function() { + return node_1.BatchLogRecordProcessor; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/index.js +var require_src15 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-logs@0.45.1_@opentelemetry+api-logs@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-logs/build/src/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchLogRecordProcessor = exports2.InMemoryLogRecordExporter = exports2.SimpleLogRecordProcessor = exports2.ConsoleLogRecordExporter = exports2.NoopLogRecordProcessor = exports2.LogRecord = exports2.LoggerProvider = void 0; + var LoggerProvider_1 = require_LoggerProvider2(); + Object.defineProperty(exports2, "LoggerProvider", { enumerable: true, get: function() { + return LoggerProvider_1.LoggerProvider; + } }); + var LogRecord_1 = require_LogRecord2(); + Object.defineProperty(exports2, "LogRecord", { enumerable: true, get: function() { + return LogRecord_1.LogRecord; + } }); + var NoopLogRecordProcessor_1 = require_NoopLogRecordProcessor(); + Object.defineProperty(exports2, "NoopLogRecordProcessor", { enumerable: true, get: function() { + return NoopLogRecordProcessor_1.NoopLogRecordProcessor; + } }); + var ConsoleLogRecordExporter_1 = require_ConsoleLogRecordExporter(); + Object.defineProperty(exports2, "ConsoleLogRecordExporter", { enumerable: true, get: function() { + return ConsoleLogRecordExporter_1.ConsoleLogRecordExporter; + } }); + var SimpleLogRecordProcessor_1 = require_SimpleLogRecordProcessor(); + Object.defineProperty(exports2, "SimpleLogRecordProcessor", { enumerable: true, get: function() { + return SimpleLogRecordProcessor_1.SimpleLogRecordProcessor; + } }); + var InMemoryLogRecordExporter_1 = require_InMemoryLogRecordExporter(); + Object.defineProperty(exports2, "InMemoryLogRecordExporter", { enumerable: true, get: function() { + return InMemoryLogRecordExporter_1.InMemoryLogRecordExporter; + } }); + var platform_1 = require_platform8(); + Object.defineProperty(exports2, "BatchLogRecordProcessor", { enumerable: true, get: function() { + return platform_1.BatchLogRecordProcessor; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+context-async-hooks@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/context-async-hooks/build/src/AbstractAsyncHooksContextManager.js +var require_AbstractAsyncHooksContextManager = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+context-async-hooks@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/context-async-hooks/build/src/AbstractAsyncHooksContextManager.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AbstractAsyncHooksContextManager = void 0; + var events_1 = require("events"); + var ADD_LISTENER_METHODS = [ + "addListener", + "on", + "once", + "prependListener", + "prependOnceListener" + ]; + var AbstractAsyncHooksContextManager = class { + constructor() { + this._kOtListeners = Symbol("OtListeners"); + this._wrapped = false; + } + /** + * Binds a the certain context or the active one to the target function and then returns the target + * @param context A context (span) to be bind to target + * @param target a function or event emitter. When target or one of its callbacks is called, + * the provided context will be used as the active context for the duration of the call. + */ + bind(context2, target) { + if (target instanceof events_1.EventEmitter) { + return this._bindEventEmitter(context2, target); + } + if (typeof target === "function") { + return this._bindFunction(context2, target); + } + return target; + } + _bindFunction(context2, target) { + const manager = this; + const contextWrapper = function(...args3) { + return manager.with(context2, () => target.apply(this, args3)); + }; + Object.defineProperty(contextWrapper, "length", { + enumerable: false, + configurable: true, + writable: false, + value: target.length + }); + return contextWrapper; + } + /** + * By default, EventEmitter call their callback with their context, which we do + * not want, instead we will bind a specific context to all callbacks that + * go through it. + * @param context the context we want to bind + * @param ee EventEmitter an instance of EventEmitter to patch + */ + _bindEventEmitter(context2, ee) { + const map = this._getPatchMap(ee); + if (map !== void 0) + return ee; + this._createPatchMap(ee); + ADD_LISTENER_METHODS.forEach((methodName) => { + if (ee[methodName] === void 0) + return; + ee[methodName] = this._patchAddListener(ee, ee[methodName], context2); + }); + if (typeof ee.removeListener === "function") { + ee.removeListener = this._patchRemoveListener(ee, ee.removeListener); + } + if (typeof ee.off === "function") { + ee.off = this._patchRemoveListener(ee, ee.off); + } + if (typeof ee.removeAllListeners === "function") { + ee.removeAllListeners = this._patchRemoveAllListeners(ee, ee.removeAllListeners); + } + return ee; + } + /** + * Patch methods that remove a given listener so that we match the "patched" + * version of that listener (the one that propagate context). + * @param ee EventEmitter instance + * @param original reference to the patched method + */ + _patchRemoveListener(ee, original) { + const contextManager = this; + return function(event, listener) { + var _a; + const events = (_a = contextManager._getPatchMap(ee)) === null || _a === void 0 ? void 0 : _a[event]; + if (events === void 0) { + return original.call(this, event, listener); + } + const patchedListener = events.get(listener); + return original.call(this, event, patchedListener || listener); + }; + } + /** + * Patch methods that remove all listeners so we remove our + * internal references for a given event. + * @param ee EventEmitter instance + * @param original reference to the patched method + */ + _patchRemoveAllListeners(ee, original) { + const contextManager = this; + return function(event) { + const map = contextManager._getPatchMap(ee); + if (map !== void 0) { + if (arguments.length === 0) { + contextManager._createPatchMap(ee); + } else if (map[event] !== void 0) { + delete map[event]; + } + } + return original.apply(this, arguments); + }; + } + /** + * Patch methods on an event emitter instance that can add listeners so we + * can force them to propagate a given context. + * @param ee EventEmitter instance + * @param original reference to the patched method + * @param [context] context to propagate when calling listeners + */ + _patchAddListener(ee, original, context2) { + const contextManager = this; + return function(event, listener) { + if (contextManager._wrapped) { + return original.call(this, event, listener); + } + let map = contextManager._getPatchMap(ee); + if (map === void 0) { + map = contextManager._createPatchMap(ee); + } + let listeners = map[event]; + if (listeners === void 0) { + listeners = /* @__PURE__ */ new WeakMap(); + map[event] = listeners; + } + const patchedListener = contextManager.bind(context2, listener); + listeners.set(listener, patchedListener); + contextManager._wrapped = true; + try { + return original.call(this, event, patchedListener); + } finally { + contextManager._wrapped = false; + } + }; + } + _createPatchMap(ee) { + const map = /* @__PURE__ */ Object.create(null); + ee[this._kOtListeners] = map; + return map; + } + _getPatchMap(ee) { + return ee[this._kOtListeners]; + } + }; + exports2.AbstractAsyncHooksContextManager = AbstractAsyncHooksContextManager; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+context-async-hooks@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/context-async-hooks/build/src/AsyncHooksContextManager.js +var require_AsyncHooksContextManager = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+context-async-hooks@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/context-async-hooks/build/src/AsyncHooksContextManager.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsyncHooksContextManager = void 0; + var api_1 = require_src(); + var asyncHooks = require("async_hooks"); + var AbstractAsyncHooksContextManager_1 = require_AbstractAsyncHooksContextManager(); + var AsyncHooksContextManager = class extends AbstractAsyncHooksContextManager_1.AbstractAsyncHooksContextManager { + constructor() { + super(); + this._contexts = /* @__PURE__ */ new Map(); + this._stack = []; + this._asyncHook = asyncHooks.createHook({ + init: this._init.bind(this), + before: this._before.bind(this), + after: this._after.bind(this), + destroy: this._destroy.bind(this), + promiseResolve: this._destroy.bind(this) + }); + } + active() { + var _a; + return (_a = this._stack[this._stack.length - 1]) !== null && _a !== void 0 ? _a : api_1.ROOT_CONTEXT; + } + with(context2, fn, thisArg, ...args3) { + this._enterContext(context2); + try { + return fn.call(thisArg, ...args3); + } finally { + this._exitContext(); + } + } + enable() { + this._asyncHook.enable(); + return this; + } + disable() { + this._asyncHook.disable(); + this._contexts.clear(); + this._stack = []; + return this; + } + /** + * Init hook will be called when userland create a async context, setting the + * context as the current one if it exist. + * @param uid id of the async context + * @param type the resource type + */ + _init(uid, type2) { + if (type2 === "TIMERWRAP") + return; + const context2 = this._stack[this._stack.length - 1]; + if (context2 !== void 0) { + this._contexts.set(uid, context2); + } + } + /** + * Destroy hook will be called when a given context is no longer used so we can + * remove its attached context. + * @param uid uid of the async context + */ + _destroy(uid) { + this._contexts.delete(uid); + } + /** + * Before hook is called just before executing a async context. + * @param uid uid of the async context + */ + _before(uid) { + const context2 = this._contexts.get(uid); + if (context2 !== void 0) { + this._enterContext(context2); + } + } + /** + * After hook is called just after completing the execution of a async context. + */ + _after() { + this._exitContext(); + } + /** + * Set the given context as active + */ + _enterContext(context2) { + this._stack.push(context2); + } + /** + * Remove the context at the root of the stack + */ + _exitContext() { + this._stack.pop(); + } + }; + exports2.AsyncHooksContextManager = AsyncHooksContextManager; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+context-async-hooks@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/context-async-hooks/build/src/AsyncLocalStorageContextManager.js +var require_AsyncLocalStorageContextManager = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+context-async-hooks@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/context-async-hooks/build/src/AsyncLocalStorageContextManager.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AsyncLocalStorageContextManager = void 0; + var api_1 = require_src(); + var async_hooks_1 = require("async_hooks"); + var AbstractAsyncHooksContextManager_1 = require_AbstractAsyncHooksContextManager(); + var AsyncLocalStorageContextManager = class extends AbstractAsyncHooksContextManager_1.AbstractAsyncHooksContextManager { + constructor() { + super(); + this._asyncLocalStorage = new async_hooks_1.AsyncLocalStorage(); + } + active() { + var _a; + return (_a = this._asyncLocalStorage.getStore()) !== null && _a !== void 0 ? _a : api_1.ROOT_CONTEXT; + } + with(context2, fn, thisArg, ...args3) { + const cb = thisArg == null ? fn : fn.bind(thisArg); + return this._asyncLocalStorage.run(context2, cb, ...args3); + } + enable() { + return this; + } + disable() { + this._asyncLocalStorage.disable(); + return this; + } + }; + exports2.AsyncLocalStorageContextManager = AsyncLocalStorageContextManager; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+context-async-hooks@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/context-async-hooks/build/src/index.js +var require_src16 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+context-async-hooks@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/context-async-hooks/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_AsyncHooksContextManager(), exports2); + __exportStar(require_AsyncLocalStorageContextManager(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/common.js +var require_common4 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/common.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.B3_DEBUG_FLAG_KEY = void 0; + var api_1 = require_src(); + exports2.B3_DEBUG_FLAG_KEY = (0, api_1.createContextKey)("OpenTelemetry Context Key B3 Debug Flag"); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/constants.js +var require_constants9 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.X_B3_FLAGS = exports2.X_B3_PARENT_SPAN_ID = exports2.X_B3_SAMPLED = exports2.X_B3_SPAN_ID = exports2.X_B3_TRACE_ID = exports2.B3_CONTEXT_HEADER = void 0; + exports2.B3_CONTEXT_HEADER = "b3"; + exports2.X_B3_TRACE_ID = "x-b3-traceid"; + exports2.X_B3_SPAN_ID = "x-b3-spanid"; + exports2.X_B3_SAMPLED = "x-b3-sampled"; + exports2.X_B3_PARENT_SPAN_ID = "x-b3-parentspanid"; + exports2.X_B3_FLAGS = "x-b3-flags"; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/B3MultiPropagator.js +var require_B3MultiPropagator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/B3MultiPropagator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.B3MultiPropagator = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var common_1 = require_common4(); + var constants_1 = require_constants9(); + var VALID_SAMPLED_VALUES = /* @__PURE__ */ new Set([true, "true", "True", "1", 1]); + var VALID_UNSAMPLED_VALUES = /* @__PURE__ */ new Set([false, "false", "False", "0", 0]); + function isValidSampledValue(sampled) { + return sampled === api_1.TraceFlags.SAMPLED || sampled === api_1.TraceFlags.NONE; + } + function parseHeader(header) { + return Array.isArray(header) ? header[0] : header; + } + function getHeaderValue(carrier, getter, key) { + const header = getter.get(carrier, key); + return parseHeader(header); + } + function getTraceId(carrier, getter) { + const traceId = getHeaderValue(carrier, getter, constants_1.X_B3_TRACE_ID); + if (typeof traceId === "string") { + return traceId.padStart(32, "0"); + } + return ""; + } + function getSpanId(carrier, getter) { + const spanId = getHeaderValue(carrier, getter, constants_1.X_B3_SPAN_ID); + if (typeof spanId === "string") { + return spanId; + } + return ""; + } + function getDebug(carrier, getter) { + const debug = getHeaderValue(carrier, getter, constants_1.X_B3_FLAGS); + return debug === "1" ? "1" : void 0; + } + function getTraceFlags(carrier, getter) { + const traceFlags = getHeaderValue(carrier, getter, constants_1.X_B3_SAMPLED); + const debug = getDebug(carrier, getter); + if (debug === "1" || VALID_SAMPLED_VALUES.has(traceFlags)) { + return api_1.TraceFlags.SAMPLED; + } + if (traceFlags === void 0 || VALID_UNSAMPLED_VALUES.has(traceFlags)) { + return api_1.TraceFlags.NONE; + } + return; + } + var B3MultiPropagator = class { + inject(context2, carrier, setter) { + const spanContext = api_1.trace.getSpanContext(context2); + if (!spanContext || !(0, api_1.isSpanContextValid)(spanContext) || (0, core_1.isTracingSuppressed)(context2)) + return; + const debug = context2.getValue(common_1.B3_DEBUG_FLAG_KEY); + setter.set(carrier, constants_1.X_B3_TRACE_ID, spanContext.traceId); + setter.set(carrier, constants_1.X_B3_SPAN_ID, spanContext.spanId); + if (debug === "1") { + setter.set(carrier, constants_1.X_B3_FLAGS, debug); + } else if (spanContext.traceFlags !== void 0) { + setter.set(carrier, constants_1.X_B3_SAMPLED, (api_1.TraceFlags.SAMPLED & spanContext.traceFlags) === api_1.TraceFlags.SAMPLED ? "1" : "0"); + } + } + extract(context2, carrier, getter) { + const traceId = getTraceId(carrier, getter); + const spanId = getSpanId(carrier, getter); + const traceFlags = getTraceFlags(carrier, getter); + const debug = getDebug(carrier, getter); + if ((0, api_1.isValidTraceId)(traceId) && (0, api_1.isValidSpanId)(spanId) && isValidSampledValue(traceFlags)) { + context2 = context2.setValue(common_1.B3_DEBUG_FLAG_KEY, debug); + return api_1.trace.setSpanContext(context2, { + traceId, + spanId, + isRemote: true, + traceFlags + }); + } + return context2; + } + fields() { + return [ + constants_1.X_B3_TRACE_ID, + constants_1.X_B3_SPAN_ID, + constants_1.X_B3_FLAGS, + constants_1.X_B3_SAMPLED, + constants_1.X_B3_PARENT_SPAN_ID + ]; + } + }; + exports2.B3MultiPropagator = B3MultiPropagator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/B3SinglePropagator.js +var require_B3SinglePropagator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/B3SinglePropagator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.B3SinglePropagator = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var common_1 = require_common4(); + var constants_1 = require_constants9(); + var B3_CONTEXT_REGEX = /((?:[0-9a-f]{16}){1,2})-([0-9a-f]{16})(?:-([01d](?![0-9a-f])))?(?:-([0-9a-f]{16}))?/; + var PADDING = "0".repeat(16); + var SAMPLED_VALUES = /* @__PURE__ */ new Set(["d", "1"]); + var DEBUG_STATE = "d"; + function convertToTraceId128(traceId) { + return traceId.length === 32 ? traceId : `${PADDING}${traceId}`; + } + function convertToTraceFlags(samplingState) { + if (samplingState && SAMPLED_VALUES.has(samplingState)) { + return api_1.TraceFlags.SAMPLED; + } + return api_1.TraceFlags.NONE; + } + var B3SinglePropagator = class { + inject(context2, carrier, setter) { + const spanContext = api_1.trace.getSpanContext(context2); + if (!spanContext || !(0, api_1.isSpanContextValid)(spanContext) || (0, core_1.isTracingSuppressed)(context2)) + return; + const samplingState = context2.getValue(common_1.B3_DEBUG_FLAG_KEY) || spanContext.traceFlags & 1; + const value = `${spanContext.traceId}-${spanContext.spanId}-${samplingState}`; + setter.set(carrier, constants_1.B3_CONTEXT_HEADER, value); + } + extract(context2, carrier, getter) { + const header = getter.get(carrier, constants_1.B3_CONTEXT_HEADER); + const b3Context = Array.isArray(header) ? header[0] : header; + if (typeof b3Context !== "string") + return context2; + const match2 = b3Context.match(B3_CONTEXT_REGEX); + if (!match2) + return context2; + const [, extractedTraceId, spanId, samplingState] = match2; + const traceId = convertToTraceId128(extractedTraceId); + if (!(0, api_1.isValidTraceId)(traceId) || !(0, api_1.isValidSpanId)(spanId)) + return context2; + const traceFlags = convertToTraceFlags(samplingState); + if (samplingState === DEBUG_STATE) { + context2 = context2.setValue(common_1.B3_DEBUG_FLAG_KEY, samplingState); + } + return api_1.trace.setSpanContext(context2, { + traceId, + spanId, + isRemote: true, + traceFlags + }); + } + fields() { + return [constants_1.B3_CONTEXT_HEADER]; + } + }; + exports2.B3SinglePropagator = B3SinglePropagator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/types.js +var require_types17 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.B3InjectEncoding = void 0; + var B3InjectEncoding; + (function(B3InjectEncoding2) { + B3InjectEncoding2[B3InjectEncoding2["SINGLE_HEADER"] = 0] = "SINGLE_HEADER"; + B3InjectEncoding2[B3InjectEncoding2["MULTI_HEADER"] = 1] = "MULTI_HEADER"; + })(B3InjectEncoding = exports2.B3InjectEncoding || (exports2.B3InjectEncoding = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/B3Propagator.js +var require_B3Propagator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/B3Propagator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.B3Propagator = void 0; + var core_1 = require_src5(); + var B3MultiPropagator_1 = require_B3MultiPropagator(); + var B3SinglePropagator_1 = require_B3SinglePropagator(); + var constants_1 = require_constants9(); + var types_1 = require_types17(); + var B3Propagator = class { + constructor(config = {}) { + this._b3MultiPropagator = new B3MultiPropagator_1.B3MultiPropagator(); + this._b3SinglePropagator = new B3SinglePropagator_1.B3SinglePropagator(); + if (config.injectEncoding === types_1.B3InjectEncoding.MULTI_HEADER) { + this._inject = this._b3MultiPropagator.inject; + this._fields = this._b3MultiPropagator.fields(); + } else { + this._inject = this._b3SinglePropagator.inject; + this._fields = this._b3SinglePropagator.fields(); + } + } + inject(context2, carrier, setter) { + if ((0, core_1.isTracingSuppressed)(context2)) { + return; + } + this._inject(context2, carrier, setter); + } + extract(context2, carrier, getter) { + const header = getter.get(carrier, constants_1.B3_CONTEXT_HEADER); + const b3Context = Array.isArray(header) ? header[0] : header; + if (b3Context) { + return this._b3SinglePropagator.extract(context2, carrier, getter); + } else { + return this._b3MultiPropagator.extract(context2, carrier, getter); + } + } + fields() { + return this._fields; + } + }; + exports2.B3Propagator = B3Propagator; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/index.js +var require_src17 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+propagator-b3@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-b3/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_B3Propagator(), exports2); + __exportStar(require_constants9(), exports2); + __exportStar(require_types17(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/enums.js +var require_enums = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/enums.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ExceptionEventName = void 0; + exports2.ExceptionEventName = "exception"; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/Span.js +var require_Span = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/Span.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Span = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var semantic_conventions_1 = require_src4(); + var enums_1 = require_enums(); + var Span = class { + /** + * Constructs a new Span instance. + * + * @deprecated calling Span constructor directly is not supported. Please use tracer.startSpan. + * */ + constructor(parentTracer, context2, spanName, spanContext, kind, parentSpanId, links = [], startTime, _deprecatedClock) { + this.attributes = {}; + this.links = []; + this.events = []; + this._droppedAttributesCount = 0; + this._droppedEventsCount = 0; + this._droppedLinksCount = 0; + this.status = { + code: api_1.SpanStatusCode.UNSET + }; + this.endTime = [0, 0]; + this._ended = false; + this._duration = [-1, -1]; + this.name = spanName; + this._spanContext = spanContext; + this.parentSpanId = parentSpanId; + this.kind = kind; + this.links = links; + const now = Date.now(); + this._performanceStartTime = core_1.otperformance.now(); + this._performanceOffset = now - (this._performanceStartTime + (0, core_1.getTimeOrigin)()); + this._startTimeProvided = startTime != null; + this.startTime = this._getTime(startTime !== null && startTime !== void 0 ? startTime : now); + this.resource = parentTracer.resource; + this.instrumentationLibrary = parentTracer.instrumentationLibrary; + this._spanLimits = parentTracer.getSpanLimits(); + this._spanProcessor = parentTracer.getActiveSpanProcessor(); + this._spanProcessor.onStart(this, context2); + this._attributeValueLengthLimit = this._spanLimits.attributeValueLengthLimit || 0; + } + spanContext() { + return this._spanContext; + } + setAttribute(key, value) { + if (value == null || this._isSpanEnded()) + return this; + if (key.length === 0) { + api_1.diag.warn(`Invalid attribute key: ${key}`); + return this; + } + if (!(0, core_1.isAttributeValue)(value)) { + api_1.diag.warn(`Invalid attribute value set for key: ${key}`); + return this; + } + if (Object.keys(this.attributes).length >= this._spanLimits.attributeCountLimit && !Object.prototype.hasOwnProperty.call(this.attributes, key)) { + this._droppedAttributesCount++; + return this; + } + this.attributes[key] = this._truncateToSize(value); + return this; + } + setAttributes(attributes) { + for (const [k, v] of Object.entries(attributes)) { + this.setAttribute(k, v); + } + return this; + } + /** + * + * @param name Span Name + * @param [attributesOrStartTime] Span attributes or start time + * if type is {@type TimeInput} and 3rd param is undefined + * @param [timeStamp] Specified time stamp for the event + */ + addEvent(name, attributesOrStartTime, timeStamp) { + if (this._isSpanEnded()) + return this; + if (this._spanLimits.eventCountLimit === 0) { + api_1.diag.warn("No events allowed."); + this._droppedEventsCount++; + return this; + } + if (this.events.length >= this._spanLimits.eventCountLimit) { + api_1.diag.warn("Dropping extra events."); + this.events.shift(); + this._droppedEventsCount++; + } + if ((0, core_1.isTimeInput)(attributesOrStartTime)) { + if (!(0, core_1.isTimeInput)(timeStamp)) { + timeStamp = attributesOrStartTime; + } + attributesOrStartTime = void 0; + } + const attributes = (0, core_1.sanitizeAttributes)(attributesOrStartTime); + this.events.push({ + name, + attributes, + time: this._getTime(timeStamp), + droppedAttributesCount: 0 + }); + return this; + } + setStatus(status) { + if (this._isSpanEnded()) + return this; + this.status = status; + return this; + } + updateName(name) { + if (this._isSpanEnded()) + return this; + this.name = name; + return this; + } + end(endTime) { + if (this._isSpanEnded()) { + api_1.diag.error(`${this.name} ${this._spanContext.traceId}-${this._spanContext.spanId} - You can only call end() on a span once.`); + return; + } + this._ended = true; + this.endTime = this._getTime(endTime); + this._duration = (0, core_1.hrTimeDuration)(this.startTime, this.endTime); + if (this._duration[0] < 0) { + api_1.diag.warn("Inconsistent start and end time, startTime > endTime. Setting span duration to 0ms.", this.startTime, this.endTime); + this.endTime = this.startTime.slice(); + this._duration = [0, 0]; + } + this._spanProcessor.onEnd(this); + } + _getTime(inp) { + if (typeof inp === "number" && inp < core_1.otperformance.now()) { + return (0, core_1.hrTime)(inp + this._performanceOffset); + } + if (typeof inp === "number") { + return (0, core_1.millisToHrTime)(inp); + } + if (inp instanceof Date) { + return (0, core_1.millisToHrTime)(inp.getTime()); + } + if ((0, core_1.isTimeInputHrTime)(inp)) { + return inp; + } + if (this._startTimeProvided) { + return (0, core_1.millisToHrTime)(Date.now()); + } + const msDuration = core_1.otperformance.now() - this._performanceStartTime; + return (0, core_1.addHrTimes)(this.startTime, (0, core_1.millisToHrTime)(msDuration)); + } + isRecording() { + return this._ended === false; + } + recordException(exception, time) { + const attributes = {}; + if (typeof exception === "string") { + attributes[semantic_conventions_1.SemanticAttributes.EXCEPTION_MESSAGE] = exception; + } else if (exception) { + if (exception.code) { + attributes[semantic_conventions_1.SemanticAttributes.EXCEPTION_TYPE] = exception.code.toString(); + } else if (exception.name) { + attributes[semantic_conventions_1.SemanticAttributes.EXCEPTION_TYPE] = exception.name; + } + if (exception.message) { + attributes[semantic_conventions_1.SemanticAttributes.EXCEPTION_MESSAGE] = exception.message; + } + if (exception.stack) { + attributes[semantic_conventions_1.SemanticAttributes.EXCEPTION_STACKTRACE] = exception.stack; + } + } + if (attributes[semantic_conventions_1.SemanticAttributes.EXCEPTION_TYPE] || attributes[semantic_conventions_1.SemanticAttributes.EXCEPTION_MESSAGE]) { + this.addEvent(enums_1.ExceptionEventName, attributes, time); + } else { + api_1.diag.warn(`Failed to record an exception ${exception}`); + } + } + get duration() { + return this._duration; + } + get ended() { + return this._ended; + } + get droppedAttributesCount() { + return this._droppedAttributesCount; + } + get droppedEventsCount() { + return this._droppedEventsCount; + } + get droppedLinksCount() { + return this._droppedLinksCount; + } + _isSpanEnded() { + if (this._ended) { + api_1.diag.warn(`Can not execute the operation on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`); + } + return this._ended; + } + // Utility function to truncate given value within size + // for value type of string, will truncate to given limit + // for type of non-string, will return same value + _truncateToLimitUtil(value, limit) { + if (value.length <= limit) { + return value; + } + return value.substr(0, limit); + } + /** + * If the given attribute value is of type string and has more characters than given {@code attributeValueLengthLimit} then + * return string with trucated to {@code attributeValueLengthLimit} characters + * + * If the given attribute value is array of strings then + * return new array of strings with each element truncated to {@code attributeValueLengthLimit} characters + * + * Otherwise return same Attribute {@code value} + * + * @param value Attribute value + * @returns truncated attribute value if required, otherwise same value + */ + _truncateToSize(value) { + const limit = this._attributeValueLengthLimit; + if (limit <= 0) { + api_1.diag.warn(`Attribute value limit must be positive, got ${limit}`); + return value; + } + if (typeof value === "string") { + return this._truncateToLimitUtil(value, limit); + } + if (Array.isArray(value)) { + return value.map((val) => typeof val === "string" ? this._truncateToLimitUtil(val, limit) : val); + } + return value; + } + }; + exports2.Span = Span; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/Sampler.js +var require_Sampler = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/Sampler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SamplingDecision = void 0; + var SamplingDecision; + (function(SamplingDecision2) { + SamplingDecision2[SamplingDecision2["NOT_RECORD"] = 0] = "NOT_RECORD"; + SamplingDecision2[SamplingDecision2["RECORD"] = 1] = "RECORD"; + SamplingDecision2[SamplingDecision2["RECORD_AND_SAMPLED"] = 2] = "RECORD_AND_SAMPLED"; + })(SamplingDecision = exports2.SamplingDecision || (exports2.SamplingDecision = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/AlwaysOffSampler.js +var require_AlwaysOffSampler2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/AlwaysOffSampler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AlwaysOffSampler = void 0; + var Sampler_1 = require_Sampler(); + var AlwaysOffSampler = class { + shouldSample() { + return { + decision: Sampler_1.SamplingDecision.NOT_RECORD + }; + } + toString() { + return "AlwaysOffSampler"; + } + }; + exports2.AlwaysOffSampler = AlwaysOffSampler; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/AlwaysOnSampler.js +var require_AlwaysOnSampler2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/AlwaysOnSampler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.AlwaysOnSampler = void 0; + var Sampler_1 = require_Sampler(); + var AlwaysOnSampler = class { + shouldSample() { + return { + decision: Sampler_1.SamplingDecision.RECORD_AND_SAMPLED + }; + } + toString() { + return "AlwaysOnSampler"; + } + }; + exports2.AlwaysOnSampler = AlwaysOnSampler; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/ParentBasedSampler.js +var require_ParentBasedSampler2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/ParentBasedSampler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ParentBasedSampler = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var AlwaysOffSampler_1 = require_AlwaysOffSampler2(); + var AlwaysOnSampler_1 = require_AlwaysOnSampler2(); + var ParentBasedSampler = class { + constructor(config) { + var _a, _b, _c, _d; + this._root = config.root; + if (!this._root) { + (0, core_1.globalErrorHandler)(new Error("ParentBasedSampler must have a root sampler configured")); + this._root = new AlwaysOnSampler_1.AlwaysOnSampler(); + } + this._remoteParentSampled = (_a = config.remoteParentSampled) !== null && _a !== void 0 ? _a : new AlwaysOnSampler_1.AlwaysOnSampler(); + this._remoteParentNotSampled = (_b = config.remoteParentNotSampled) !== null && _b !== void 0 ? _b : new AlwaysOffSampler_1.AlwaysOffSampler(); + this._localParentSampled = (_c = config.localParentSampled) !== null && _c !== void 0 ? _c : new AlwaysOnSampler_1.AlwaysOnSampler(); + this._localParentNotSampled = (_d = config.localParentNotSampled) !== null && _d !== void 0 ? _d : new AlwaysOffSampler_1.AlwaysOffSampler(); + } + shouldSample(context2, traceId, spanName, spanKind, attributes, links) { + const parentContext = api_1.trace.getSpanContext(context2); + if (!parentContext || !(0, api_1.isSpanContextValid)(parentContext)) { + return this._root.shouldSample(context2, traceId, spanName, spanKind, attributes, links); + } + if (parentContext.isRemote) { + if (parentContext.traceFlags & api_1.TraceFlags.SAMPLED) { + return this._remoteParentSampled.shouldSample(context2, traceId, spanName, spanKind, attributes, links); + } + return this._remoteParentNotSampled.shouldSample(context2, traceId, spanName, spanKind, attributes, links); + } + if (parentContext.traceFlags & api_1.TraceFlags.SAMPLED) { + return this._localParentSampled.shouldSample(context2, traceId, spanName, spanKind, attributes, links); + } + return this._localParentNotSampled.shouldSample(context2, traceId, spanName, spanKind, attributes, links); + } + toString() { + return `ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`; + } + }; + exports2.ParentBasedSampler = ParentBasedSampler; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/TraceIdRatioBasedSampler.js +var require_TraceIdRatioBasedSampler2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/sampler/TraceIdRatioBasedSampler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TraceIdRatioBasedSampler = void 0; + var api_1 = require_src(); + var Sampler_1 = require_Sampler(); + var TraceIdRatioBasedSampler = class { + constructor(_ratio = 0) { + this._ratio = _ratio; + this._ratio = this._normalize(_ratio); + this._upperBound = Math.floor(this._ratio * 4294967295); + } + shouldSample(context2, traceId) { + return { + decision: (0, api_1.isValidTraceId)(traceId) && this._accumulate(traceId) < this._upperBound ? Sampler_1.SamplingDecision.RECORD_AND_SAMPLED : Sampler_1.SamplingDecision.NOT_RECORD + }; + } + toString() { + return `TraceIdRatioBased{${this._ratio}}`; + } + _normalize(ratio) { + if (typeof ratio !== "number" || isNaN(ratio)) + return 0; + return ratio >= 1 ? 1 : ratio <= 0 ? 0 : ratio; + } + _accumulate(traceId) { + let accumulation = 0; + for (let i = 0; i < traceId.length / 8; i++) { + const pos = i * 8; + const part = parseInt(traceId.slice(pos, pos + 8), 16); + accumulation = (accumulation ^ part) >>> 0; + } + return accumulation; + } + }; + exports2.TraceIdRatioBasedSampler = TraceIdRatioBasedSampler; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/config.js +var require_config4 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/config.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.buildSamplerFromEnv = exports2.loadDefaultConfig = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var AlwaysOffSampler_1 = require_AlwaysOffSampler2(); + var AlwaysOnSampler_1 = require_AlwaysOnSampler2(); + var ParentBasedSampler_1 = require_ParentBasedSampler2(); + var TraceIdRatioBasedSampler_1 = require_TraceIdRatioBasedSampler2(); + var env4 = (0, core_1.getEnv)(); + var FALLBACK_OTEL_TRACES_SAMPLER = core_1.TracesSamplerValues.AlwaysOn; + var DEFAULT_RATIO = 1; + function loadDefaultConfig() { + return { + sampler: buildSamplerFromEnv(env4), + forceFlushTimeoutMillis: 3e4, + generalLimits: { + attributeValueLengthLimit: (0, core_1.getEnv)().OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT, + attributeCountLimit: (0, core_1.getEnv)().OTEL_ATTRIBUTE_COUNT_LIMIT + }, + spanLimits: { + attributeValueLengthLimit: (0, core_1.getEnv)().OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT, + attributeCountLimit: (0, core_1.getEnv)().OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT, + linkCountLimit: (0, core_1.getEnv)().OTEL_SPAN_LINK_COUNT_LIMIT, + eventCountLimit: (0, core_1.getEnv)().OTEL_SPAN_EVENT_COUNT_LIMIT, + attributePerEventCountLimit: (0, core_1.getEnv)().OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT, + attributePerLinkCountLimit: (0, core_1.getEnv)().OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT + } + }; + } + exports2.loadDefaultConfig = loadDefaultConfig; + function buildSamplerFromEnv(environment = (0, core_1.getEnv)()) { + switch (environment.OTEL_TRACES_SAMPLER) { + case core_1.TracesSamplerValues.AlwaysOn: + return new AlwaysOnSampler_1.AlwaysOnSampler(); + case core_1.TracesSamplerValues.AlwaysOff: + return new AlwaysOffSampler_1.AlwaysOffSampler(); + case core_1.TracesSamplerValues.ParentBasedAlwaysOn: + return new ParentBasedSampler_1.ParentBasedSampler({ + root: new AlwaysOnSampler_1.AlwaysOnSampler() + }); + case core_1.TracesSamplerValues.ParentBasedAlwaysOff: + return new ParentBasedSampler_1.ParentBasedSampler({ + root: new AlwaysOffSampler_1.AlwaysOffSampler() + }); + case core_1.TracesSamplerValues.TraceIdRatio: + return new TraceIdRatioBasedSampler_1.TraceIdRatioBasedSampler(getSamplerProbabilityFromEnv(environment)); + case core_1.TracesSamplerValues.ParentBasedTraceIdRatio: + return new ParentBasedSampler_1.ParentBasedSampler({ + root: new TraceIdRatioBasedSampler_1.TraceIdRatioBasedSampler(getSamplerProbabilityFromEnv(environment)) + }); + default: + api_1.diag.error(`OTEL_TRACES_SAMPLER value "${environment.OTEL_TRACES_SAMPLER} invalid, defaulting to ${FALLBACK_OTEL_TRACES_SAMPLER}".`); + return new AlwaysOnSampler_1.AlwaysOnSampler(); + } + } + exports2.buildSamplerFromEnv = buildSamplerFromEnv; + function getSamplerProbabilityFromEnv(environment) { + if (environment.OTEL_TRACES_SAMPLER_ARG === void 0 || environment.OTEL_TRACES_SAMPLER_ARG === "") { + api_1.diag.error(`OTEL_TRACES_SAMPLER_ARG is blank, defaulting to ${DEFAULT_RATIO}.`); + return DEFAULT_RATIO; + } + const probability = Number(environment.OTEL_TRACES_SAMPLER_ARG); + if (isNaN(probability)) { + api_1.diag.error(`OTEL_TRACES_SAMPLER_ARG=${environment.OTEL_TRACES_SAMPLER_ARG} was given, but it is invalid, defaulting to ${DEFAULT_RATIO}.`); + return DEFAULT_RATIO; + } + if (probability < 0 || probability > 1) { + api_1.diag.error(`OTEL_TRACES_SAMPLER_ARG=${environment.OTEL_TRACES_SAMPLER_ARG} was given, but it is out of range ([0..1]), defaulting to ${DEFAULT_RATIO}.`); + return DEFAULT_RATIO; + } + return probability; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/utility.js +var require_utility = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/utility.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.reconfigureLimits = exports2.mergeConfig = void 0; + var config_1 = require_config4(); + var core_1 = require_src5(); + function mergeConfig3(userConfig) { + const perInstanceDefaults = { + sampler: (0, config_1.buildSamplerFromEnv)() + }; + const DEFAULT_CONFIG = (0, config_1.loadDefaultConfig)(); + const target = Object.assign({}, DEFAULT_CONFIG, perInstanceDefaults, userConfig); + target.generalLimits = Object.assign({}, DEFAULT_CONFIG.generalLimits, userConfig.generalLimits || {}); + target.spanLimits = Object.assign({}, DEFAULT_CONFIG.spanLimits, userConfig.spanLimits || {}); + return target; + } + exports2.mergeConfig = mergeConfig3; + function reconfigureLimits(userConfig) { + var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m; + const spanLimits = Object.assign({}, userConfig.spanLimits); + const parsedEnvConfig = (0, core_1.getEnvWithoutDefaults)(); + spanLimits.attributeCountLimit = (_f = (_e = (_d = (_b = (_a = userConfig.spanLimits) === null || _a === void 0 ? void 0 : _a.attributeCountLimit) !== null && _b !== void 0 ? _b : (_c = userConfig.generalLimits) === null || _c === void 0 ? void 0 : _c.attributeCountLimit) !== null && _d !== void 0 ? _d : parsedEnvConfig.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT) !== null && _e !== void 0 ? _e : parsedEnvConfig.OTEL_ATTRIBUTE_COUNT_LIMIT) !== null && _f !== void 0 ? _f : core_1.DEFAULT_ATTRIBUTE_COUNT_LIMIT; + spanLimits.attributeValueLengthLimit = (_m = (_l = (_k = (_h = (_g = userConfig.spanLimits) === null || _g === void 0 ? void 0 : _g.attributeValueLengthLimit) !== null && _h !== void 0 ? _h : (_j = userConfig.generalLimits) === null || _j === void 0 ? void 0 : _j.attributeValueLengthLimit) !== null && _k !== void 0 ? _k : parsedEnvConfig.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT) !== null && _l !== void 0 ? _l : parsedEnvConfig.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT) !== null && _m !== void 0 ? _m : core_1.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT; + return Object.assign({}, userConfig, { spanLimits }); + } + exports2.reconfigureLimits = reconfigureLimits; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/BatchSpanProcessorBase.js +var require_BatchSpanProcessorBase = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/BatchSpanProcessorBase.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchSpanProcessorBase = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var BatchSpanProcessorBase = class { + constructor(_exporter, config) { + this._exporter = _exporter; + this._isExporting = false; + this._finishedSpans = []; + this._droppedSpansCount = 0; + const env4 = (0, core_1.getEnv)(); + this._maxExportBatchSize = typeof (config === null || config === void 0 ? void 0 : config.maxExportBatchSize) === "number" ? config.maxExportBatchSize : env4.OTEL_BSP_MAX_EXPORT_BATCH_SIZE; + this._maxQueueSize = typeof (config === null || config === void 0 ? void 0 : config.maxQueueSize) === "number" ? config.maxQueueSize : env4.OTEL_BSP_MAX_QUEUE_SIZE; + this._scheduledDelayMillis = typeof (config === null || config === void 0 ? void 0 : config.scheduledDelayMillis) === "number" ? config.scheduledDelayMillis : env4.OTEL_BSP_SCHEDULE_DELAY; + this._exportTimeoutMillis = typeof (config === null || config === void 0 ? void 0 : config.exportTimeoutMillis) === "number" ? config.exportTimeoutMillis : env4.OTEL_BSP_EXPORT_TIMEOUT; + this._shutdownOnce = new core_1.BindOnceFuture(this._shutdown, this); + if (this._maxExportBatchSize > this._maxQueueSize) { + api_1.diag.warn("BatchSpanProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"); + this._maxExportBatchSize = this._maxQueueSize; + } + } + forceFlush() { + if (this._shutdownOnce.isCalled) { + return this._shutdownOnce.promise; + } + return this._flushAll(); + } + // does nothing. + onStart(_span, _parentContext) { + } + onEnd(span) { + if (this._shutdownOnce.isCalled) { + return; + } + if ((span.spanContext().traceFlags & api_1.TraceFlags.SAMPLED) === 0) { + return; + } + this._addToBuffer(span); + } + shutdown() { + return this._shutdownOnce.call(); + } + _shutdown() { + return Promise.resolve().then(() => { + return this.onShutdown(); + }).then(() => { + return this._flushAll(); + }).then(() => { + return this._exporter.shutdown(); + }); + } + /** Add a span in the buffer. */ + _addToBuffer(span) { + if (this._finishedSpans.length >= this._maxQueueSize) { + if (this._droppedSpansCount === 0) { + api_1.diag.debug("maxQueueSize reached, dropping spans"); + } + this._droppedSpansCount++; + return; + } + if (this._droppedSpansCount > 0) { + api_1.diag.warn(`Dropped ${this._droppedSpansCount} spans because maxQueueSize reached`); + this._droppedSpansCount = 0; + } + this._finishedSpans.push(span); + this._maybeStartTimer(); + } + /** + * Send all spans to the exporter respecting the batch size limit + * This function is used only on forceFlush or shutdown, + * for all other cases _flush should be used + * */ + _flushAll() { + return new Promise((resolve8, reject) => { + const promises2 = []; + const count = Math.ceil(this._finishedSpans.length / this._maxExportBatchSize); + for (let i = 0, j = count; i < j; i++) { + promises2.push(this._flushOneBatch()); + } + Promise.all(promises2).then(() => { + resolve8(); + }).catch(reject); + }); + } + _flushOneBatch() { + this._clearTimer(); + if (this._finishedSpans.length === 0) { + return Promise.resolve(); + } + return new Promise((resolve8, reject) => { + const timer = setTimeout(() => { + reject(new Error("Timeout")); + }, this._exportTimeoutMillis); + api_1.context.with((0, core_1.suppressTracing)(api_1.context.active()), () => { + const spans = this._finishedSpans.splice(0, this._maxExportBatchSize); + const doExport = () => this._exporter.export(spans, (result) => { + var _a; + clearTimeout(timer); + if (result.code === core_1.ExportResultCode.SUCCESS) { + resolve8(); + } else { + reject((_a = result.error) !== null && _a !== void 0 ? _a : new Error("BatchSpanProcessor: span export failed")); + } + }); + const pendingResources = spans.map((span) => span.resource).filter((resource) => resource.asyncAttributesPending); + if (pendingResources.length === 0) { + doExport(); + } else { + Promise.all(pendingResources.map((resource) => { + var _a; + return (_a = resource.waitForAsyncAttributes) === null || _a === void 0 ? void 0 : _a.call(resource); + })).then(doExport, (err2) => { + (0, core_1.globalErrorHandler)(err2); + reject(err2); + }); + } + }); + }); + } + _maybeStartTimer() { + if (this._isExporting) + return; + const flush = () => { + this._isExporting = true; + this._flushOneBatch().then(() => { + this._isExporting = false; + if (this._finishedSpans.length > 0) { + this._clearTimer(); + this._maybeStartTimer(); + } + }).catch((e) => { + this._isExporting = false; + (0, core_1.globalErrorHandler)(e); + }); + }; + if (this._finishedSpans.length >= this._maxExportBatchSize) { + return flush(); + } + if (this._timer !== void 0) + return; + this._timer = setTimeout(() => flush(), this._scheduledDelayMillis); + (0, core_1.unrefTimer)(this._timer); + } + _clearTimer() { + if (this._timer !== void 0) { + clearTimeout(this._timer); + this._timer = void 0; + } + } + }; + exports2.BatchSpanProcessorBase = BatchSpanProcessorBase; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/node/export/BatchSpanProcessor.js +var require_BatchSpanProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/node/export/BatchSpanProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BatchSpanProcessor = void 0; + var BatchSpanProcessorBase_1 = require_BatchSpanProcessorBase(); + var BatchSpanProcessor = class extends BatchSpanProcessorBase_1.BatchSpanProcessorBase { + onShutdown() { + } + }; + exports2.BatchSpanProcessor = BatchSpanProcessor; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/node/RandomIdGenerator.js +var require_RandomIdGenerator2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/node/RandomIdGenerator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.RandomIdGenerator = void 0; + var SPAN_ID_BYTES = 8; + var TRACE_ID_BYTES = 16; + var RandomIdGenerator = class { + constructor() { + this.generateTraceId = getIdGenerator(TRACE_ID_BYTES); + this.generateSpanId = getIdGenerator(SPAN_ID_BYTES); + } + }; + exports2.RandomIdGenerator = RandomIdGenerator; + var SHARED_BUFFER = Buffer.allocUnsafe(TRACE_ID_BYTES); + function getIdGenerator(bytes) { + return function generateId() { + for (let i = 0; i < bytes / 4; i++) { + SHARED_BUFFER.writeUInt32BE(Math.random() * 2 ** 32 >>> 0, i * 4); + } + for (let i = 0; i < bytes; i++) { + if (SHARED_BUFFER[i] > 0) { + break; + } else if (i === bytes - 1) { + SHARED_BUFFER[bytes - 1] = 1; + } + } + return SHARED_BUFFER.toString("hex", 0, bytes); + }; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/node/index.js +var require_node12 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/node/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_BatchSpanProcessor(), exports2); + __exportStar(require_RandomIdGenerator2(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/index.js +var require_platform9 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/platform/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_node12(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/Tracer.js +var require_Tracer = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/Tracer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Tracer = void 0; + var api = require_src(); + var core_1 = require_src5(); + var Span_1 = require_Span(); + var utility_1 = require_utility(); + var platform_1 = require_platform9(); + var Tracer = class { + /** + * Constructs a new Tracer instance. + */ + constructor(instrumentationLibrary, config, _tracerProvider) { + this._tracerProvider = _tracerProvider; + const localConfig = (0, utility_1.mergeConfig)(config); + this._sampler = localConfig.sampler; + this._generalLimits = localConfig.generalLimits; + this._spanLimits = localConfig.spanLimits; + this._idGenerator = config.idGenerator || new platform_1.RandomIdGenerator(); + this.resource = _tracerProvider.resource; + this.instrumentationLibrary = instrumentationLibrary; + } + /** + * Starts a new Span or returns the default NoopSpan based on the sampling + * decision. + */ + startSpan(name, options2 = {}, context2 = api.context.active()) { + var _a, _b, _c; + if (options2.root) { + context2 = api.trace.deleteSpan(context2); + } + const parentSpan = api.trace.getSpan(context2); + if ((0, core_1.isTracingSuppressed)(context2)) { + api.diag.debug("Instrumentation suppressed, returning Noop Span"); + const nonRecordingSpan = api.trace.wrapSpanContext(api.INVALID_SPAN_CONTEXT); + return nonRecordingSpan; + } + const parentSpanContext = parentSpan === null || parentSpan === void 0 ? void 0 : parentSpan.spanContext(); + const spanId = this._idGenerator.generateSpanId(); + let traceId; + let traceState; + let parentSpanId; + if (!parentSpanContext || !api.trace.isSpanContextValid(parentSpanContext)) { + traceId = this._idGenerator.generateTraceId(); + } else { + traceId = parentSpanContext.traceId; + traceState = parentSpanContext.traceState; + parentSpanId = parentSpanContext.spanId; + } + const spanKind = (_a = options2.kind) !== null && _a !== void 0 ? _a : api.SpanKind.INTERNAL; + const links = ((_b = options2.links) !== null && _b !== void 0 ? _b : []).map((link) => { + return { + context: link.context, + attributes: (0, core_1.sanitizeAttributes)(link.attributes) + }; + }); + const attributes = (0, core_1.sanitizeAttributes)(options2.attributes); + const samplingResult = this._sampler.shouldSample(context2, traceId, name, spanKind, attributes, links); + traceState = (_c = samplingResult.traceState) !== null && _c !== void 0 ? _c : traceState; + const traceFlags = samplingResult.decision === api.SamplingDecision.RECORD_AND_SAMPLED ? api.TraceFlags.SAMPLED : api.TraceFlags.NONE; + const spanContext = { traceId, spanId, traceFlags, traceState }; + if (samplingResult.decision === api.SamplingDecision.NOT_RECORD) { + api.diag.debug("Recording is off, propagating context in a non-recording span"); + const nonRecordingSpan = api.trace.wrapSpanContext(spanContext); + return nonRecordingSpan; + } + const span = new Span_1.Span(this, context2, name, spanContext, spanKind, parentSpanId, links, options2.startTime); + const initAttributes = (0, core_1.sanitizeAttributes)(Object.assign(attributes, samplingResult.attributes)); + span.setAttributes(initAttributes); + return span; + } + startActiveSpan(name, arg2, arg3, arg4) { + let opts; + let ctx; + let fn; + if (arguments.length < 2) { + return; + } else if (arguments.length === 2) { + fn = arg2; + } else if (arguments.length === 3) { + opts = arg2; + fn = arg3; + } else { + opts = arg2; + ctx = arg3; + fn = arg4; + } + const parentContext = ctx !== null && ctx !== void 0 ? ctx : api.context.active(); + const span = this.startSpan(name, opts, parentContext); + const contextWithSpanSet = api.trace.setSpan(parentContext, span); + return api.context.with(contextWithSpanSet, fn, void 0, span); + } + /** Returns the active {@link GeneralLimits}. */ + getGeneralLimits() { + return this._generalLimits; + } + /** Returns the active {@link SpanLimits}. */ + getSpanLimits() { + return this._spanLimits; + } + getActiveSpanProcessor() { + return this._tracerProvider.getActiveSpanProcessor(); + } + }; + exports2.Tracer = Tracer; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/MultiSpanProcessor.js +var require_MultiSpanProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/MultiSpanProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MultiSpanProcessor = void 0; + var core_1 = require_src5(); + var MultiSpanProcessor = class { + constructor(_spanProcessors) { + this._spanProcessors = _spanProcessors; + } + forceFlush() { + const promises2 = []; + for (const spanProcessor of this._spanProcessors) { + promises2.push(spanProcessor.forceFlush()); + } + return new Promise((resolve8) => { + Promise.all(promises2).then(() => { + resolve8(); + }).catch((error) => { + (0, core_1.globalErrorHandler)(error || new Error("MultiSpanProcessor: forceFlush failed")); + resolve8(); + }); + }); + } + onStart(span, context2) { + for (const spanProcessor of this._spanProcessors) { + spanProcessor.onStart(span, context2); + } + } + onEnd(span) { + for (const spanProcessor of this._spanProcessors) { + spanProcessor.onEnd(span); + } + } + shutdown() { + const promises2 = []; + for (const spanProcessor of this._spanProcessors) { + promises2.push(spanProcessor.shutdown()); + } + return new Promise((resolve8, reject) => { + Promise.all(promises2).then(() => { + resolve8(); + }, reject); + }); + } + }; + exports2.MultiSpanProcessor = MultiSpanProcessor; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/NoopSpanProcessor.js +var require_NoopSpanProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/NoopSpanProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NoopSpanProcessor = void 0; + var NoopSpanProcessor = class { + onStart(_span, _context) { + } + onEnd(_span) { + } + shutdown() { + return Promise.resolve(); + } + forceFlush() { + return Promise.resolve(); + } + }; + exports2.NoopSpanProcessor = NoopSpanProcessor; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/BasicTracerProvider.js +var require_BasicTracerProvider = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/BasicTracerProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BasicTracerProvider = exports2.ForceFlushState = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var resources_1 = require_src7(); + var _1 = require_src18(); + var config_1 = require_config4(); + var MultiSpanProcessor_1 = require_MultiSpanProcessor(); + var NoopSpanProcessor_1 = require_NoopSpanProcessor(); + var platform_1 = require_platform9(); + var utility_1 = require_utility(); + var ForceFlushState; + (function(ForceFlushState2) { + ForceFlushState2[ForceFlushState2["resolved"] = 0] = "resolved"; + ForceFlushState2[ForceFlushState2["timeout"] = 1] = "timeout"; + ForceFlushState2[ForceFlushState2["error"] = 2] = "error"; + ForceFlushState2[ForceFlushState2["unresolved"] = 3] = "unresolved"; + })(ForceFlushState = exports2.ForceFlushState || (exports2.ForceFlushState = {})); + var BasicTracerProvider = class { + constructor(config = {}) { + var _a; + this._registeredSpanProcessors = []; + this._tracers = /* @__PURE__ */ new Map(); + const mergedConfig = (0, core_1.merge)({}, (0, config_1.loadDefaultConfig)(), (0, utility_1.reconfigureLimits)(config)); + this.resource = (_a = mergedConfig.resource) !== null && _a !== void 0 ? _a : resources_1.Resource.empty(); + this.resource = resources_1.Resource.default().merge(this.resource); + this._config = Object.assign({}, mergedConfig, { + resource: this.resource + }); + const defaultExporter = this._buildExporterFromEnv(); + if (defaultExporter !== void 0) { + const batchProcessor = new platform_1.BatchSpanProcessor(defaultExporter); + this.activeSpanProcessor = batchProcessor; + } else { + this.activeSpanProcessor = new NoopSpanProcessor_1.NoopSpanProcessor(); + } + } + getTracer(name, version4, options2) { + const key = `${name}@${version4 || ""}:${(options2 === null || options2 === void 0 ? void 0 : options2.schemaUrl) || ""}`; + if (!this._tracers.has(key)) { + this._tracers.set(key, new _1.Tracer({ name, version: version4, schemaUrl: options2 === null || options2 === void 0 ? void 0 : options2.schemaUrl }, this._config, this)); + } + return this._tracers.get(key); + } + /** + * Adds a new {@link SpanProcessor} to this tracer. + * @param spanProcessor the new SpanProcessor to be added. + */ + addSpanProcessor(spanProcessor) { + if (this._registeredSpanProcessors.length === 0) { + this.activeSpanProcessor.shutdown().catch((err2) => api_1.diag.error("Error while trying to shutdown current span processor", err2)); + } + this._registeredSpanProcessors.push(spanProcessor); + this.activeSpanProcessor = new MultiSpanProcessor_1.MultiSpanProcessor(this._registeredSpanProcessors); + } + getActiveSpanProcessor() { + return this.activeSpanProcessor; + } + /** + * Register this TracerProvider for use with the OpenTelemetry API. + * Undefined values may be replaced with defaults, and + * null values will be skipped. + * + * @param config Configuration object for SDK registration + */ + register(config = {}) { + api_1.trace.setGlobalTracerProvider(this); + if (config.propagator === void 0) { + config.propagator = this._buildPropagatorFromEnv(); + } + if (config.contextManager) { + api_1.context.setGlobalContextManager(config.contextManager); + } + if (config.propagator) { + api_1.propagation.setGlobalPropagator(config.propagator); + } + } + forceFlush() { + const timeout = this._config.forceFlushTimeoutMillis; + const promises2 = this._registeredSpanProcessors.map((spanProcessor) => { + return new Promise((resolve8) => { + let state; + const timeoutInterval = setTimeout(() => { + resolve8(new Error(`Span processor did not completed within timeout period of ${timeout} ms`)); + state = ForceFlushState.timeout; + }, timeout); + spanProcessor.forceFlush().then(() => { + clearTimeout(timeoutInterval); + if (state !== ForceFlushState.timeout) { + state = ForceFlushState.resolved; + resolve8(state); + } + }).catch((error) => { + clearTimeout(timeoutInterval); + state = ForceFlushState.error; + resolve8(error); + }); + }); + }); + return new Promise((resolve8, reject) => { + Promise.all(promises2).then((results) => { + const errors = results.filter((result) => result !== ForceFlushState.resolved); + if (errors.length > 0) { + reject(errors); + } else { + resolve8(); + } + }).catch((error) => reject([error])); + }); + } + shutdown() { + return this.activeSpanProcessor.shutdown(); + } + /** + * TS cannot yet infer the type of this.constructor: + * https://github.com/Microsoft/TypeScript/issues/3841#issuecomment-337560146 + * There is no need to override either of the getters in your child class. + * The type of the registered component maps should be the same across all + * classes in the inheritance tree. + */ + _getPropagator(name) { + var _a; + return (_a = this.constructor._registeredPropagators.get(name)) === null || _a === void 0 ? void 0 : _a(); + } + _getSpanExporter(name) { + var _a; + return (_a = this.constructor._registeredExporters.get(name)) === null || _a === void 0 ? void 0 : _a(); + } + _buildPropagatorFromEnv() { + const uniquePropagatorNames = Array.from(new Set((0, core_1.getEnv)().OTEL_PROPAGATORS)); + const propagators = uniquePropagatorNames.map((name) => { + const propagator = this._getPropagator(name); + if (!propagator) { + api_1.diag.warn(`Propagator "${name}" requested through environment variable is unavailable.`); + } + return propagator; + }); + const validPropagators = propagators.reduce((list, item) => { + if (item) { + list.push(item); + } + return list; + }, []); + if (validPropagators.length === 0) { + return; + } else if (uniquePropagatorNames.length === 1) { + return validPropagators[0]; + } else { + return new core_1.CompositePropagator({ + propagators: validPropagators + }); + } + } + _buildExporterFromEnv() { + const exporterName = (0, core_1.getEnv)().OTEL_TRACES_EXPORTER; + if (exporterName === "none" || exporterName === "") + return; + const exporter = this._getSpanExporter(exporterName); + if (!exporter) { + api_1.diag.error(`Exporter "${exporterName}" requested through environment variable is unavailable.`); + } + return exporter; + } + }; + exports2.BasicTracerProvider = BasicTracerProvider; + BasicTracerProvider._registeredPropagators = /* @__PURE__ */ new Map([ + ["tracecontext", () => new core_1.W3CTraceContextPropagator()], + ["baggage", () => new core_1.W3CBaggagePropagator()] + ]); + BasicTracerProvider._registeredExporters = /* @__PURE__ */ new Map(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/ConsoleSpanExporter.js +var require_ConsoleSpanExporter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/ConsoleSpanExporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ConsoleSpanExporter = void 0; + var core_1 = require_src5(); + var ConsoleSpanExporter = class { + /** + * Export spans. + * @param spans + * @param resultCallback + */ + export(spans, resultCallback) { + return this._sendSpans(spans, resultCallback); + } + /** + * Shutdown the exporter. + */ + shutdown() { + this._sendSpans([]); + return this.forceFlush(); + } + /** + * Exports any pending spans in exporter + */ + forceFlush() { + return Promise.resolve(); + } + /** + * converts span info into more readable format + * @param span + */ + _exportInfo(span) { + var _a; + return { + traceId: span.spanContext().traceId, + parentId: span.parentSpanId, + traceState: (_a = span.spanContext().traceState) === null || _a === void 0 ? void 0 : _a.serialize(), + name: span.name, + id: span.spanContext().spanId, + kind: span.kind, + timestamp: (0, core_1.hrTimeToMicroseconds)(span.startTime), + duration: (0, core_1.hrTimeToMicroseconds)(span.duration), + attributes: span.attributes, + status: span.status, + events: span.events, + links: span.links + }; + } + /** + * Showing spans in console + * @param spans + * @param done + */ + _sendSpans(spans, done) { + for (const span of spans) { + console.dir(this._exportInfo(span), { depth: 3 }); + } + if (done) { + return done({ code: core_1.ExportResultCode.SUCCESS }); + } + } + }; + exports2.ConsoleSpanExporter = ConsoleSpanExporter; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/InMemorySpanExporter.js +var require_InMemorySpanExporter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/InMemorySpanExporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.InMemorySpanExporter = void 0; + var core_1 = require_src5(); + var InMemorySpanExporter = class { + constructor() { + this._finishedSpans = []; + this._stopped = false; + } + export(spans, resultCallback) { + if (this._stopped) + return resultCallback({ + code: core_1.ExportResultCode.FAILED, + error: new Error("Exporter has been stopped") + }); + this._finishedSpans.push(...spans); + setTimeout(() => resultCallback({ code: core_1.ExportResultCode.SUCCESS }), 0); + } + shutdown() { + this._stopped = true; + this._finishedSpans = []; + return this.forceFlush(); + } + /** + * Exports any pending spans in the exporter + */ + forceFlush() { + return Promise.resolve(); + } + reset() { + this._finishedSpans = []; + } + getFinishedSpans() { + return this._finishedSpans; + } + }; + exports2.InMemorySpanExporter = InMemorySpanExporter; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/ReadableSpan.js +var require_ReadableSpan = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/ReadableSpan.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/SimpleSpanProcessor.js +var require_SimpleSpanProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/SimpleSpanProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SimpleSpanProcessor = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var SimpleSpanProcessor = class { + constructor(_exporter) { + this._exporter = _exporter; + this._shutdownOnce = new core_1.BindOnceFuture(this._shutdown, this); + this._unresolvedExports = /* @__PURE__ */ new Set(); + } + async forceFlush() { + await Promise.all(Array.from(this._unresolvedExports)); + if (this._exporter.forceFlush) { + await this._exporter.forceFlush(); + } + } + onStart(_span, _parentContext) { + } + onEnd(span) { + var _a, _b; + if (this._shutdownOnce.isCalled) { + return; + } + if ((span.spanContext().traceFlags & api_1.TraceFlags.SAMPLED) === 0) { + return; + } + const doExport = () => core_1.internal._export(this._exporter, [span]).then((result) => { + var _a2; + if (result.code !== core_1.ExportResultCode.SUCCESS) { + (0, core_1.globalErrorHandler)((_a2 = result.error) !== null && _a2 !== void 0 ? _a2 : new Error(`SimpleSpanProcessor: span export failed (status ${result})`)); + } + }).catch((error) => { + (0, core_1.globalErrorHandler)(error); + }); + if (span.resource.asyncAttributesPending) { + const exportPromise = (_b = (_a = span.resource).waitForAsyncAttributes) === null || _b === void 0 ? void 0 : _b.call(_a).then(() => { + if (exportPromise != null) { + this._unresolvedExports.delete(exportPromise); + } + return doExport(); + }, (err2) => (0, core_1.globalErrorHandler)(err2)); + if (exportPromise != null) { + this._unresolvedExports.add(exportPromise); + } + } else { + void doExport(); + } + } + shutdown() { + return this._shutdownOnce.call(); + } + _shutdown() { + return this._exporter.shutdown(); + } + }; + exports2.SimpleSpanProcessor = SimpleSpanProcessor; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/SpanExporter.js +var require_SpanExporter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/export/SpanExporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/SpanProcessor.js +var require_SpanProcessor = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/SpanProcessor.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/TimedEvent.js +var require_TimedEvent = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/TimedEvent.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/types.js +var require_types18 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/IdGenerator.js +var require_IdGenerator2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/IdGenerator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/index.js +var require_src18 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-base@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-base/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_Tracer(), exports2); + __exportStar(require_BasicTracerProvider(), exports2); + __exportStar(require_platform9(), exports2); + __exportStar(require_ConsoleSpanExporter(), exports2); + __exportStar(require_InMemorySpanExporter(), exports2); + __exportStar(require_ReadableSpan(), exports2); + __exportStar(require_SimpleSpanProcessor(), exports2); + __exportStar(require_SpanExporter(), exports2); + __exportStar(require_NoopSpanProcessor(), exports2); + __exportStar(require_AlwaysOffSampler2(), exports2); + __exportStar(require_AlwaysOnSampler2(), exports2); + __exportStar(require_ParentBasedSampler2(), exports2); + __exportStar(require_TraceIdRatioBasedSampler2(), exports2); + __exportStar(require_Sampler(), exports2); + __exportStar(require_Span(), exports2); + __exportStar(require_SpanProcessor(), exports2); + __exportStar(require_TimedEvent(), exports2); + __exportStar(require_types18(), exports2); + __exportStar(require_IdGenerator2(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+propagator-jaeger@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-jaeger/build/src/JaegerPropagator.js +var require_JaegerPropagator = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+propagator-jaeger@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-jaeger/build/src/JaegerPropagator.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.JaegerPropagator = exports2.UBER_BAGGAGE_HEADER_PREFIX = exports2.UBER_TRACE_ID_HEADER = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + exports2.UBER_TRACE_ID_HEADER = "uber-trace-id"; + exports2.UBER_BAGGAGE_HEADER_PREFIX = "uberctx"; + var JaegerPropagator = class { + constructor(config) { + if (typeof config === "string") { + this._jaegerTraceHeader = config; + this._jaegerBaggageHeaderPrefix = exports2.UBER_BAGGAGE_HEADER_PREFIX; + } else { + this._jaegerTraceHeader = (config === null || config === void 0 ? void 0 : config.customTraceHeader) || exports2.UBER_TRACE_ID_HEADER; + this._jaegerBaggageHeaderPrefix = (config === null || config === void 0 ? void 0 : config.customBaggageHeaderPrefix) || exports2.UBER_BAGGAGE_HEADER_PREFIX; + } + } + inject(context2, carrier, setter) { + const spanContext = api_1.trace.getSpanContext(context2); + const baggage = api_1.propagation.getBaggage(context2); + if (spanContext && (0, core_1.isTracingSuppressed)(context2) === false) { + const traceFlags = `0${(spanContext.traceFlags || api_1.TraceFlags.NONE).toString(16)}`; + setter.set(carrier, this._jaegerTraceHeader, `${spanContext.traceId}:${spanContext.spanId}:0:${traceFlags}`); + } + if (baggage) { + for (const [key, entry] of baggage.getAllEntries()) { + setter.set(carrier, `${this._jaegerBaggageHeaderPrefix}-${key}`, encodeURIComponent(entry.value)); + } + } + } + extract(context2, carrier, getter) { + var _a; + const uberTraceIdHeader = getter.get(carrier, this._jaegerTraceHeader); + const uberTraceId = Array.isArray(uberTraceIdHeader) ? uberTraceIdHeader[0] : uberTraceIdHeader; + const baggageValues = getter.keys(carrier).filter((key) => key.startsWith(`${this._jaegerBaggageHeaderPrefix}-`)).map((key) => { + const value = getter.get(carrier, key); + return { + key: key.substring(this._jaegerBaggageHeaderPrefix.length + 1), + value: Array.isArray(value) ? value[0] : value + }; + }); + let newContext = context2; + if (typeof uberTraceId === "string") { + const spanContext = deserializeSpanContext(uberTraceId); + if (spanContext) { + newContext = api_1.trace.setSpanContext(newContext, spanContext); + } + } + if (baggageValues.length === 0) + return newContext; + let currentBaggage = (_a = api_1.propagation.getBaggage(context2)) !== null && _a !== void 0 ? _a : api_1.propagation.createBaggage(); + for (const baggageEntry of baggageValues) { + if (baggageEntry.value === void 0) + continue; + currentBaggage = currentBaggage.setEntry(baggageEntry.key, { + value: decodeURIComponent(baggageEntry.value) + }); + } + newContext = api_1.propagation.setBaggage(newContext, currentBaggage); + return newContext; + } + fields() { + return [this._jaegerTraceHeader]; + } + }; + exports2.JaegerPropagator = JaegerPropagator; + var VALID_HEX_RE = /^[0-9a-f]{1,2}$/i; + function deserializeSpanContext(serializedString) { + const headers = decodeURIComponent(serializedString).split(":"); + if (headers.length !== 4) { + return null; + } + const [_traceId, _spanId, , flags2] = headers; + const traceId = _traceId.padStart(32, "0"); + const spanId = _spanId.padStart(16, "0"); + const traceFlags = VALID_HEX_RE.test(flags2) ? parseInt(flags2, 16) & 1 : 1; + return { traceId, spanId, isRemote: true, traceFlags }; + } + } +}); + +// ../node_modules/.pnpm/@opentelemetry+propagator-jaeger@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-jaeger/build/src/index.js +var require_src19 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+propagator-jaeger@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/propagator-jaeger/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_JaegerPropagator(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-node@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-node/build/src/NodeTracerProvider.js +var require_NodeTracerProvider = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-node@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-node/build/src/NodeTracerProvider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NodeTracerProvider = void 0; + var context_async_hooks_1 = require_src16(); + var propagator_b3_1 = require_src17(); + var sdk_trace_base_1 = require_src18(); + var semver = require_semver3(); + var propagator_jaeger_1 = require_src19(); + var NodeTracerProvider = class extends sdk_trace_base_1.BasicTracerProvider { + constructor(config = {}) { + super(config); + } + register(config = {}) { + if (config.contextManager === void 0) { + const ContextManager = semver.gte(process.version, "14.8.0") ? context_async_hooks_1.AsyncLocalStorageContextManager : context_async_hooks_1.AsyncHooksContextManager; + config.contextManager = new ContextManager(); + config.contextManager.enable(); + } + super.register(config); + } + }; + exports2.NodeTracerProvider = NodeTracerProvider; + NodeTracerProvider._registeredPropagators = new Map([ + ...sdk_trace_base_1.BasicTracerProvider._registeredPropagators, + [ + "b3", + () => new propagator_b3_1.B3Propagator({ injectEncoding: propagator_b3_1.B3InjectEncoding.SINGLE_HEADER }) + ], + [ + "b3multi", + () => new propagator_b3_1.B3Propagator({ injectEncoding: propagator_b3_1.B3InjectEncoding.MULTI_HEADER }) + ], + ["jaeger", () => new propagator_jaeger_1.JaegerPropagator()] + ]); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-trace-node@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-node/build/src/index.js +var require_src20 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-trace-node@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-trace-node/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_NodeTracerProvider(), exports2); + __exportStar(require_src18(), exports2); + } +}); + +// ../node_modules/.pnpm/@protobufjs+aspromise@1.1.2/node_modules/@protobufjs/aspromise/index.js +var require_aspromise = __commonJS({ + "../node_modules/.pnpm/@protobufjs+aspromise@1.1.2/node_modules/@protobufjs/aspromise/index.js"(exports2, module2) { + "use strict"; + module2.exports = asPromise; + function asPromise(fn, ctx) { + var params = new Array(arguments.length - 1), offset = 0, index = 2, pending = true; + while (index < arguments.length) + params[offset++] = arguments[index++]; + return new Promise(function executor(resolve8, reject) { + params[offset] = function callback(err2) { + if (pending) { + pending = false; + if (err2) + reject(err2); + else { + var params2 = new Array(arguments.length - 1), offset2 = 0; + while (offset2 < params2.length) + params2[offset2++] = arguments[offset2]; + resolve8.apply(null, params2); + } + } + }; + try { + fn.apply(ctx || null, params); + } catch (err2) { + if (pending) { + pending = false; + reject(err2); + } + } + }); + } + } +}); + +// ../node_modules/.pnpm/@protobufjs+base64@1.1.2/node_modules/@protobufjs/base64/index.js +var require_base64 = __commonJS({ + "../node_modules/.pnpm/@protobufjs+base64@1.1.2/node_modules/@protobufjs/base64/index.js"(exports2) { + "use strict"; + var base64 = exports2; + base64.length = function length(string) { + var p = string.length; + if (!p) + return 0; + var n = 0; + while (--p % 4 > 1 && string.charAt(p) === "=") + ++n; + return Math.ceil(string.length * 3) / 4 - n; + }; + var b64 = new Array(64); + var s64 = new Array(123); + for (i = 0; i < 64; ) + s64[b64[i] = i < 26 ? i + 65 : i < 52 ? i + 71 : i < 62 ? i - 4 : i - 59 | 43] = i++; + var i; + base64.encode = function encode3(buffer2, start4, end) { + var parts = null, chunk = []; + var i2 = 0, j = 0, t; + while (start4 < end) { + var b = buffer2[start4++]; + switch (j) { + case 0: + chunk[i2++] = b64[b >> 2]; + t = (b & 3) << 4; + j = 1; + break; + case 1: + chunk[i2++] = b64[t | b >> 4]; + t = (b & 15) << 2; + j = 2; + break; + case 2: + chunk[i2++] = b64[t | b >> 6]; + chunk[i2++] = b64[b & 63]; + j = 0; + break; + } + if (i2 > 8191) { + (parts || (parts = [])).push(String.fromCharCode.apply(String, chunk)); + i2 = 0; + } + } + if (j) { + chunk[i2++] = b64[t]; + chunk[i2++] = 61; + if (j === 1) + chunk[i2++] = 61; + } + if (parts) { + if (i2) + parts.push(String.fromCharCode.apply(String, chunk.slice(0, i2))); + return parts.join(""); + } + return String.fromCharCode.apply(String, chunk.slice(0, i2)); + }; + var invalidEncoding = "invalid encoding"; + base64.decode = function decode(string, buffer2, offset) { + var start4 = offset; + var j = 0, t; + for (var i2 = 0; i2 < string.length; ) { + var c = string.charCodeAt(i2++); + if (c === 61 && j > 1) + break; + if ((c = s64[c]) === void 0) + throw Error(invalidEncoding); + switch (j) { + case 0: + t = c; + j = 1; + break; + case 1: + buffer2[offset++] = t << 2 | (c & 48) >> 4; + t = c; + j = 2; + break; + case 2: + buffer2[offset++] = (t & 15) << 4 | (c & 60) >> 2; + t = c; + j = 3; + break; + case 3: + buffer2[offset++] = (t & 3) << 6 | c; + j = 0; + break; + } + } + if (j === 1) + throw Error(invalidEncoding); + return offset - start4; + }; + base64.test = function test(string) { + return /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(string); + }; + } +}); + +// ../node_modules/.pnpm/@protobufjs+eventemitter@1.1.0/node_modules/@protobufjs/eventemitter/index.js +var require_eventemitter = __commonJS({ + "../node_modules/.pnpm/@protobufjs+eventemitter@1.1.0/node_modules/@protobufjs/eventemitter/index.js"(exports2, module2) { + "use strict"; + module2.exports = EventEmitter4; + function EventEmitter4() { + this._listeners = {}; + } + EventEmitter4.prototype.on = function on(evt, fn, ctx) { + (this._listeners[evt] || (this._listeners[evt] = [])).push({ + fn, + ctx: ctx || this + }); + return this; + }; + EventEmitter4.prototype.off = function off(evt, fn) { + if (evt === void 0) + this._listeners = {}; + else { + if (fn === void 0) + this._listeners[evt] = []; + else { + var listeners = this._listeners[evt]; + for (var i = 0; i < listeners.length; ) + if (listeners[i].fn === fn) + listeners.splice(i, 1); + else + ++i; + } + } + return this; + }; + EventEmitter4.prototype.emit = function emit(evt) { + var listeners = this._listeners[evt]; + if (listeners) { + var args3 = [], i = 1; + for (; i < arguments.length; ) + args3.push(arguments[i++]); + for (i = 0; i < listeners.length; ) + listeners[i].fn.apply(listeners[i++].ctx, args3); + } + return this; + }; + } +}); + +// ../node_modules/.pnpm/@protobufjs+float@1.0.2/node_modules/@protobufjs/float/index.js +var require_float = __commonJS({ + "../node_modules/.pnpm/@protobufjs+float@1.0.2/node_modules/@protobufjs/float/index.js"(exports2, module2) { + "use strict"; + module2.exports = factory(factory); + function factory(exports3) { + if (typeof Float32Array !== "undefined") + (function() { + var f32 = new Float32Array([-0]), f8b = new Uint8Array(f32.buffer), le = f8b[3] === 128; + function writeFloat_f32_cpy(val, buf, pos) { + f32[0] = val; + buf[pos] = f8b[0]; + buf[pos + 1] = f8b[1]; + buf[pos + 2] = f8b[2]; + buf[pos + 3] = f8b[3]; + } + function writeFloat_f32_rev(val, buf, pos) { + f32[0] = val; + buf[pos] = f8b[3]; + buf[pos + 1] = f8b[2]; + buf[pos + 2] = f8b[1]; + buf[pos + 3] = f8b[0]; + } + exports3.writeFloatLE = le ? writeFloat_f32_cpy : writeFloat_f32_rev; + exports3.writeFloatBE = le ? writeFloat_f32_rev : writeFloat_f32_cpy; + function readFloat_f32_cpy(buf, pos) { + f8b[0] = buf[pos]; + f8b[1] = buf[pos + 1]; + f8b[2] = buf[pos + 2]; + f8b[3] = buf[pos + 3]; + return f32[0]; + } + function readFloat_f32_rev(buf, pos) { + f8b[3] = buf[pos]; + f8b[2] = buf[pos + 1]; + f8b[1] = buf[pos + 2]; + f8b[0] = buf[pos + 3]; + return f32[0]; + } + exports3.readFloatLE = le ? readFloat_f32_cpy : readFloat_f32_rev; + exports3.readFloatBE = le ? readFloat_f32_rev : readFloat_f32_cpy; + })(); + else + (function() { + function writeFloat_ieee754(writeUint, val, buf, pos) { + var sign = val < 0 ? 1 : 0; + if (sign) + val = -val; + if (val === 0) + writeUint(1 / val > 0 ? ( + /* positive */ + 0 + ) : ( + /* negative 0 */ + 2147483648 + ), buf, pos); + else if (isNaN(val)) + writeUint(2143289344, buf, pos); + else if (val > 34028234663852886e22) + writeUint((sign << 31 | 2139095040) >>> 0, buf, pos); + else if (val < 11754943508222875e-54) + writeUint((sign << 31 | Math.round(val / 1401298464324817e-60)) >>> 0, buf, pos); + else { + var exponent = Math.floor(Math.log(val) / Math.LN2), mantissa = Math.round(val * Math.pow(2, -exponent) * 8388608) & 8388607; + writeUint((sign << 31 | exponent + 127 << 23 | mantissa) >>> 0, buf, pos); + } + } + exports3.writeFloatLE = writeFloat_ieee754.bind(null, writeUintLE); + exports3.writeFloatBE = writeFloat_ieee754.bind(null, writeUintBE); + function readFloat_ieee754(readUint, buf, pos) { + var uint = readUint(buf, pos), sign = (uint >> 31) * 2 + 1, exponent = uint >>> 23 & 255, mantissa = uint & 8388607; + return exponent === 255 ? mantissa ? NaN : sign * Infinity : exponent === 0 ? sign * 1401298464324817e-60 * mantissa : sign * Math.pow(2, exponent - 150) * (mantissa + 8388608); + } + exports3.readFloatLE = readFloat_ieee754.bind(null, readUintLE); + exports3.readFloatBE = readFloat_ieee754.bind(null, readUintBE); + })(); + if (typeof Float64Array !== "undefined") + (function() { + var f64 = new Float64Array([-0]), f8b = new Uint8Array(f64.buffer), le = f8b[7] === 128; + function writeDouble_f64_cpy(val, buf, pos) { + f64[0] = val; + buf[pos] = f8b[0]; + buf[pos + 1] = f8b[1]; + buf[pos + 2] = f8b[2]; + buf[pos + 3] = f8b[3]; + buf[pos + 4] = f8b[4]; + buf[pos + 5] = f8b[5]; + buf[pos + 6] = f8b[6]; + buf[pos + 7] = f8b[7]; + } + function writeDouble_f64_rev(val, buf, pos) { + f64[0] = val; + buf[pos] = f8b[7]; + buf[pos + 1] = f8b[6]; + buf[pos + 2] = f8b[5]; + buf[pos + 3] = f8b[4]; + buf[pos + 4] = f8b[3]; + buf[pos + 5] = f8b[2]; + buf[pos + 6] = f8b[1]; + buf[pos + 7] = f8b[0]; + } + exports3.writeDoubleLE = le ? writeDouble_f64_cpy : writeDouble_f64_rev; + exports3.writeDoubleBE = le ? writeDouble_f64_rev : writeDouble_f64_cpy; + function readDouble_f64_cpy(buf, pos) { + f8b[0] = buf[pos]; + f8b[1] = buf[pos + 1]; + f8b[2] = buf[pos + 2]; + f8b[3] = buf[pos + 3]; + f8b[4] = buf[pos + 4]; + f8b[5] = buf[pos + 5]; + f8b[6] = buf[pos + 6]; + f8b[7] = buf[pos + 7]; + return f64[0]; + } + function readDouble_f64_rev(buf, pos) { + f8b[7] = buf[pos]; + f8b[6] = buf[pos + 1]; + f8b[5] = buf[pos + 2]; + f8b[4] = buf[pos + 3]; + f8b[3] = buf[pos + 4]; + f8b[2] = buf[pos + 5]; + f8b[1] = buf[pos + 6]; + f8b[0] = buf[pos + 7]; + return f64[0]; + } + exports3.readDoubleLE = le ? readDouble_f64_cpy : readDouble_f64_rev; + exports3.readDoubleBE = le ? readDouble_f64_rev : readDouble_f64_cpy; + })(); + else + (function() { + function writeDouble_ieee754(writeUint, off0, off1, val, buf, pos) { + var sign = val < 0 ? 1 : 0; + if (sign) + val = -val; + if (val === 0) { + writeUint(0, buf, pos + off0); + writeUint(1 / val > 0 ? ( + /* positive */ + 0 + ) : ( + /* negative 0 */ + 2147483648 + ), buf, pos + off1); + } else if (isNaN(val)) { + writeUint(0, buf, pos + off0); + writeUint(2146959360, buf, pos + off1); + } else if (val > 17976931348623157e292) { + writeUint(0, buf, pos + off0); + writeUint((sign << 31 | 2146435072) >>> 0, buf, pos + off1); + } else { + var mantissa; + if (val < 22250738585072014e-324) { + mantissa = val / 5e-324; + writeUint(mantissa >>> 0, buf, pos + off0); + writeUint((sign << 31 | mantissa / 4294967296) >>> 0, buf, pos + off1); + } else { + var exponent = Math.floor(Math.log(val) / Math.LN2); + if (exponent === 1024) + exponent = 1023; + mantissa = val * Math.pow(2, -exponent); + writeUint(mantissa * 4503599627370496 >>> 0, buf, pos + off0); + writeUint((sign << 31 | exponent + 1023 << 20 | mantissa * 1048576 & 1048575) >>> 0, buf, pos + off1); + } + } + } + exports3.writeDoubleLE = writeDouble_ieee754.bind(null, writeUintLE, 0, 4); + exports3.writeDoubleBE = writeDouble_ieee754.bind(null, writeUintBE, 4, 0); + function readDouble_ieee754(readUint, off0, off1, buf, pos) { + var lo = readUint(buf, pos + off0), hi = readUint(buf, pos + off1); + var sign = (hi >> 31) * 2 + 1, exponent = hi >>> 20 & 2047, mantissa = 4294967296 * (hi & 1048575) + lo; + return exponent === 2047 ? mantissa ? NaN : sign * Infinity : exponent === 0 ? sign * 5e-324 * mantissa : sign * Math.pow(2, exponent - 1075) * (mantissa + 4503599627370496); + } + exports3.readDoubleLE = readDouble_ieee754.bind(null, readUintLE, 0, 4); + exports3.readDoubleBE = readDouble_ieee754.bind(null, readUintBE, 4, 0); + })(); + return exports3; + } + function writeUintLE(val, buf, pos) { + buf[pos] = val & 255; + buf[pos + 1] = val >>> 8 & 255; + buf[pos + 2] = val >>> 16 & 255; + buf[pos + 3] = val >>> 24; + } + function writeUintBE(val, buf, pos) { + buf[pos] = val >>> 24; + buf[pos + 1] = val >>> 16 & 255; + buf[pos + 2] = val >>> 8 & 255; + buf[pos + 3] = val & 255; + } + function readUintLE(buf, pos) { + return (buf[pos] | buf[pos + 1] << 8 | buf[pos + 2] << 16 | buf[pos + 3] << 24) >>> 0; + } + function readUintBE(buf, pos) { + return (buf[pos] << 24 | buf[pos + 1] << 16 | buf[pos + 2] << 8 | buf[pos + 3]) >>> 0; + } + } +}); + +// ../node_modules/.pnpm/@protobufjs+inquire@1.1.0/node_modules/@protobufjs/inquire/index.js +var require_inquire = __commonJS({ + "../node_modules/.pnpm/@protobufjs+inquire@1.1.0/node_modules/@protobufjs/inquire/index.js"(exports, module) { + "use strict"; + module.exports = inquire; + function inquire(moduleName) { + try { + var mod = eval("quire".replace(/^/, "re"))(moduleName); + if (mod && (mod.length || Object.keys(mod).length)) + return mod; + } catch (e) { + } + return null; + } + } +}); + +// ../node_modules/.pnpm/@protobufjs+utf8@1.1.0/node_modules/@protobufjs/utf8/index.js +var require_utf8 = __commonJS({ + "../node_modules/.pnpm/@protobufjs+utf8@1.1.0/node_modules/@protobufjs/utf8/index.js"(exports2) { + "use strict"; + var utf8 = exports2; + utf8.length = function utf8_length(string) { + var len = 0, c = 0; + for (var i = 0; i < string.length; ++i) { + c = string.charCodeAt(i); + if (c < 128) + len += 1; + else if (c < 2048) + len += 2; + else if ((c & 64512) === 55296 && (string.charCodeAt(i + 1) & 64512) === 56320) { + ++i; + len += 4; + } else + len += 3; + } + return len; + }; + utf8.read = function utf8_read(buffer2, start4, end) { + var len = end - start4; + if (len < 1) + return ""; + var parts = null, chunk = [], i = 0, t; + while (start4 < end) { + t = buffer2[start4++]; + if (t < 128) + chunk[i++] = t; + else if (t > 191 && t < 224) + chunk[i++] = (t & 31) << 6 | buffer2[start4++] & 63; + else if (t > 239 && t < 365) { + t = ((t & 7) << 18 | (buffer2[start4++] & 63) << 12 | (buffer2[start4++] & 63) << 6 | buffer2[start4++] & 63) - 65536; + chunk[i++] = 55296 + (t >> 10); + chunk[i++] = 56320 + (t & 1023); + } else + chunk[i++] = (t & 15) << 12 | (buffer2[start4++] & 63) << 6 | buffer2[start4++] & 63; + if (i > 8191) { + (parts || (parts = [])).push(String.fromCharCode.apply(String, chunk)); + i = 0; + } + } + if (parts) { + if (i) + parts.push(String.fromCharCode.apply(String, chunk.slice(0, i))); + return parts.join(""); + } + return String.fromCharCode.apply(String, chunk.slice(0, i)); + }; + utf8.write = function utf8_write(string, buffer2, offset) { + var start4 = offset, c1, c2; + for (var i = 0; i < string.length; ++i) { + c1 = string.charCodeAt(i); + if (c1 < 128) { + buffer2[offset++] = c1; + } else if (c1 < 2048) { + buffer2[offset++] = c1 >> 6 | 192; + buffer2[offset++] = c1 & 63 | 128; + } else if ((c1 & 64512) === 55296 && ((c2 = string.charCodeAt(i + 1)) & 64512) === 56320) { + c1 = 65536 + ((c1 & 1023) << 10) + (c2 & 1023); + ++i; + buffer2[offset++] = c1 >> 18 | 240; + buffer2[offset++] = c1 >> 12 & 63 | 128; + buffer2[offset++] = c1 >> 6 & 63 | 128; + buffer2[offset++] = c1 & 63 | 128; + } else { + buffer2[offset++] = c1 >> 12 | 224; + buffer2[offset++] = c1 >> 6 & 63 | 128; + buffer2[offset++] = c1 & 63 | 128; + } + } + return offset - start4; + }; + } +}); + +// ../node_modules/.pnpm/@protobufjs+pool@1.1.0/node_modules/@protobufjs/pool/index.js +var require_pool = __commonJS({ + "../node_modules/.pnpm/@protobufjs+pool@1.1.0/node_modules/@protobufjs/pool/index.js"(exports2, module2) { + "use strict"; + module2.exports = pool; + function pool(alloc, slice, size) { + var SIZE = size || 8192; + var MAX = SIZE >>> 1; + var slab = null; + var offset = SIZE; + return function pool_alloc(size2) { + if (size2 < 1 || size2 > MAX) + return alloc(size2); + if (offset + size2 > SIZE) { + slab = alloc(SIZE); + offset = 0; + } + var buf = slice.call(slab, offset, offset += size2); + if (offset & 7) + offset = (offset | 7) + 1; + return buf; + }; + } + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/util/longbits.js +var require_longbits = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/util/longbits.js"(exports2, module2) { + "use strict"; + module2.exports = LongBits; + var util2 = require_minimal(); + function LongBits(lo, hi) { + this.lo = lo >>> 0; + this.hi = hi >>> 0; + } + var zero = LongBits.zero = new LongBits(0, 0); + zero.toNumber = function() { + return 0; + }; + zero.zzEncode = zero.zzDecode = function() { + return this; + }; + zero.length = function() { + return 1; + }; + var zeroHash = LongBits.zeroHash = "\0\0\0\0\0\0\0\0"; + LongBits.fromNumber = function fromNumber(value) { + if (value === 0) + return zero; + var sign = value < 0; + if (sign) + value = -value; + var lo = value >>> 0, hi = (value - lo) / 4294967296 >>> 0; + if (sign) { + hi = ~hi >>> 0; + lo = ~lo >>> 0; + if (++lo > 4294967295) { + lo = 0; + if (++hi > 4294967295) + hi = 0; + } + } + return new LongBits(lo, hi); + }; + LongBits.from = function from(value) { + if (typeof value === "number") + return LongBits.fromNumber(value); + if (util2.isString(value)) { + if (util2.Long) + value = util2.Long.fromString(value); + else + return LongBits.fromNumber(parseInt(value, 10)); + } + return value.low || value.high ? new LongBits(value.low >>> 0, value.high >>> 0) : zero; + }; + LongBits.prototype.toNumber = function toNumber(unsigned) { + if (!unsigned && this.hi >>> 31) { + var lo = ~this.lo + 1 >>> 0, hi = ~this.hi >>> 0; + if (!lo) + hi = hi + 1 >>> 0; + return -(lo + hi * 4294967296); + } + return this.lo + this.hi * 4294967296; + }; + LongBits.prototype.toLong = function toLong(unsigned) { + return util2.Long ? new util2.Long(this.lo | 0, this.hi | 0, Boolean(unsigned)) : { low: this.lo | 0, high: this.hi | 0, unsigned: Boolean(unsigned) }; + }; + var charCodeAt = String.prototype.charCodeAt; + LongBits.fromHash = function fromHash(hash) { + if (hash === zeroHash) + return zero; + return new LongBits( + (charCodeAt.call(hash, 0) | charCodeAt.call(hash, 1) << 8 | charCodeAt.call(hash, 2) << 16 | charCodeAt.call(hash, 3) << 24) >>> 0, + (charCodeAt.call(hash, 4) | charCodeAt.call(hash, 5) << 8 | charCodeAt.call(hash, 6) << 16 | charCodeAt.call(hash, 7) << 24) >>> 0 + ); + }; + LongBits.prototype.toHash = function toHash() { + return String.fromCharCode( + this.lo & 255, + this.lo >>> 8 & 255, + this.lo >>> 16 & 255, + this.lo >>> 24, + this.hi & 255, + this.hi >>> 8 & 255, + this.hi >>> 16 & 255, + this.hi >>> 24 + ); + }; + LongBits.prototype.zzEncode = function zzEncode() { + var mask = this.hi >> 31; + this.hi = ((this.hi << 1 | this.lo >>> 31) ^ mask) >>> 0; + this.lo = (this.lo << 1 ^ mask) >>> 0; + return this; + }; + LongBits.prototype.zzDecode = function zzDecode() { + var mask = -(this.lo & 1); + this.lo = ((this.lo >>> 1 | this.hi << 31) ^ mask) >>> 0; + this.hi = (this.hi >>> 1 ^ mask) >>> 0; + return this; + }; + LongBits.prototype.length = function length() { + var part0 = this.lo, part1 = (this.lo >>> 28 | this.hi << 4) >>> 0, part2 = this.hi >>> 24; + return part2 === 0 ? part1 === 0 ? part0 < 16384 ? part0 < 128 ? 1 : 2 : part0 < 2097152 ? 3 : 4 : part1 < 16384 ? part1 < 128 ? 5 : 6 : part1 < 2097152 ? 7 : 8 : part2 < 128 ? 9 : 10; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/util/minimal.js +var require_minimal = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/util/minimal.js"(exports2) { + "use strict"; + var util2 = exports2; + util2.asPromise = require_aspromise(); + util2.base64 = require_base64(); + util2.EventEmitter = require_eventemitter(); + util2.float = require_float(); + util2.inquire = require_inquire(); + util2.utf8 = require_utf8(); + util2.pool = require_pool(); + util2.LongBits = require_longbits(); + util2.isNode = Boolean(typeof global !== "undefined" && global && global.process && global.process.versions && global.process.versions.node); + util2.global = util2.isNode && global || typeof window !== "undefined" && window || typeof self !== "undefined" && self || exports2; + util2.emptyArray = Object.freeze ? Object.freeze([]) : ( + /* istanbul ignore next */ + [] + ); + util2.emptyObject = Object.freeze ? Object.freeze({}) : ( + /* istanbul ignore next */ + {} + ); + util2.isInteger = Number.isInteger || /* istanbul ignore next */ + function isInteger(value) { + return typeof value === "number" && isFinite(value) && Math.floor(value) === value; + }; + util2.isString = function isString2(value) { + return typeof value === "string" || value instanceof String; + }; + util2.isObject = function isObject3(value) { + return value && typeof value === "object"; + }; + util2.isset = /** + * Checks if a property on a message is considered to be present. + * @param {Object} obj Plain object or message instance + * @param {string} prop Property name + * @returns {boolean} `true` if considered to be present, otherwise `false` + */ + util2.isSet = function isSet(obj2, prop) { + var value = obj2[prop]; + if (value != null && obj2.hasOwnProperty(prop)) + return typeof value !== "object" || (Array.isArray(value) ? value.length : Object.keys(value).length) > 0; + return false; + }; + util2.Buffer = function() { + try { + var Buffer2 = util2.inquire("buffer").Buffer; + return Buffer2.prototype.utf8Write ? Buffer2 : ( + /* istanbul ignore next */ + null + ); + } catch (e) { + return null; + } + }(); + util2._Buffer_from = null; + util2._Buffer_allocUnsafe = null; + util2.newBuffer = function newBuffer(sizeOrArray) { + return typeof sizeOrArray === "number" ? util2.Buffer ? util2._Buffer_allocUnsafe(sizeOrArray) : new util2.Array(sizeOrArray) : util2.Buffer ? util2._Buffer_from(sizeOrArray) : typeof Uint8Array === "undefined" ? sizeOrArray : new Uint8Array(sizeOrArray); + }; + util2.Array = typeof Uint8Array !== "undefined" ? Uint8Array : Array; + util2.Long = /* istanbul ignore next */ + util2.global.dcodeIO && /* istanbul ignore next */ + util2.global.dcodeIO.Long || /* istanbul ignore next */ + util2.global.Long || util2.inquire("long"); + util2.key2Re = /^true|false|0|1$/; + util2.key32Re = /^-?(?:0|[1-9][0-9]*)$/; + util2.key64Re = /^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/; + util2.longToHash = function longToHash(value) { + return value ? util2.LongBits.from(value).toHash() : util2.LongBits.zeroHash; + }; + util2.longFromHash = function longFromHash(hash, unsigned) { + var bits = util2.LongBits.fromHash(hash); + if (util2.Long) + return util2.Long.fromBits(bits.lo, bits.hi, unsigned); + return bits.toNumber(Boolean(unsigned)); + }; + function merge3(dst, src, ifNotSet) { + for (var keys = Object.keys(src), i = 0; i < keys.length; ++i) + if (dst[keys[i]] === void 0 || !ifNotSet) + dst[keys[i]] = src[keys[i]]; + return dst; + } + util2.merge = merge3; + util2.lcFirst = function lcFirst(str) { + return str.charAt(0).toLowerCase() + str.substring(1); + }; + function newError(name) { + function CustomError(message, properties2) { + if (!(this instanceof CustomError)) + return new CustomError(message, properties2); + Object.defineProperty(this, "message", { get: function() { + return message; + } }); + if (Error.captureStackTrace) + Error.captureStackTrace(this, CustomError); + else + Object.defineProperty(this, "stack", { value: new Error().stack || "" }); + if (properties2) + merge3(this, properties2); + } + CustomError.prototype = Object.create(Error.prototype, { + constructor: { + value: CustomError, + writable: true, + enumerable: false, + configurable: true + }, + name: { + get: function get() { + return name; + }, + set: void 0, + enumerable: false, + // configurable: false would accurately preserve the behavior of + // the original, but I'm guessing that was not intentional. + // For an actual error subclass, this property would + // be configurable. + configurable: true + }, + toString: { + value: function value() { + return this.name + ": " + this.message; + }, + writable: true, + enumerable: false, + configurable: true + } + }); + return CustomError; + } + util2.newError = newError; + util2.ProtocolError = newError("ProtocolError"); + util2.oneOfGetter = function getOneOf(fieldNames) { + var fieldMap = {}; + for (var i = 0; i < fieldNames.length; ++i) + fieldMap[fieldNames[i]] = 1; + return function() { + for (var keys = Object.keys(this), i2 = keys.length - 1; i2 > -1; --i2) + if (fieldMap[keys[i2]] === 1 && this[keys[i2]] !== void 0 && this[keys[i2]] !== null) + return keys[i2]; + }; + }; + util2.oneOfSetter = function setOneOf(fieldNames) { + return function(name) { + for (var i = 0; i < fieldNames.length; ++i) + if (fieldNames[i] !== name) + delete this[fieldNames[i]]; + }; + }; + util2.toJSONOptions = { + longs: String, + enums: String, + bytes: String, + json: true + }; + util2._configure = function() { + var Buffer2 = util2.Buffer; + if (!Buffer2) { + util2._Buffer_from = util2._Buffer_allocUnsafe = null; + return; + } + util2._Buffer_from = Buffer2.from !== Uint8Array.from && Buffer2.from || /* istanbul ignore next */ + function Buffer_from(value, encoding) { + return new Buffer2(value, encoding); + }; + util2._Buffer_allocUnsafe = Buffer2.allocUnsafe || /* istanbul ignore next */ + function Buffer_allocUnsafe(size) { + return new Buffer2(size); + }; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/writer.js +var require_writer2 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/writer.js"(exports2, module2) { + "use strict"; + module2.exports = Writer; + var util2 = require_minimal(); + var BufferWriter; + var LongBits = util2.LongBits; + var base64 = util2.base64; + var utf8 = util2.utf8; + function Op(fn, len, val) { + this.fn = fn; + this.len = len; + this.next = void 0; + this.val = val; + } + function noop2() { + } + function State(writer) { + this.head = writer.head; + this.tail = writer.tail; + this.len = writer.len; + this.next = writer.states; + } + function Writer() { + this.len = 0; + this.head = new Op(noop2, 0, 0); + this.tail = this.head; + this.states = null; + } + var create2 = function create3() { + return util2.Buffer ? function create_buffer_setup() { + return (Writer.create = function create_buffer() { + return new BufferWriter(); + })(); + } : function create_array() { + return new Writer(); + }; + }; + Writer.create = create2(); + Writer.alloc = function alloc(size) { + return new util2.Array(size); + }; + if (util2.Array !== Array) + Writer.alloc = util2.pool(Writer.alloc, util2.Array.prototype.subarray); + Writer.prototype._push = function push(fn, len, val) { + this.tail = this.tail.next = new Op(fn, len, val); + this.len += len; + return this; + }; + function writeByte(val, buf, pos) { + buf[pos] = val & 255; + } + function writeVarint32(val, buf, pos) { + while (val > 127) { + buf[pos++] = val & 127 | 128; + val >>>= 7; + } + buf[pos] = val; + } + function VarintOp(len, val) { + this.len = len; + this.next = void 0; + this.val = val; + } + VarintOp.prototype = Object.create(Op.prototype); + VarintOp.prototype.fn = writeVarint32; + Writer.prototype.uint32 = function write_uint32(value) { + this.len += (this.tail = this.tail.next = new VarintOp( + (value = value >>> 0) < 128 ? 1 : value < 16384 ? 2 : value < 2097152 ? 3 : value < 268435456 ? 4 : 5, + value + )).len; + return this; + }; + Writer.prototype.int32 = function write_int32(value) { + return value < 0 ? this._push(writeVarint64, 10, LongBits.fromNumber(value)) : this.uint32(value); + }; + Writer.prototype.sint32 = function write_sint32(value) { + return this.uint32((value << 1 ^ value >> 31) >>> 0); + }; + function writeVarint64(val, buf, pos) { + while (val.hi) { + buf[pos++] = val.lo & 127 | 128; + val.lo = (val.lo >>> 7 | val.hi << 25) >>> 0; + val.hi >>>= 7; + } + while (val.lo > 127) { + buf[pos++] = val.lo & 127 | 128; + val.lo = val.lo >>> 7; + } + buf[pos++] = val.lo; + } + Writer.prototype.uint64 = function write_uint64(value) { + var bits = LongBits.from(value); + return this._push(writeVarint64, bits.length(), bits); + }; + Writer.prototype.int64 = Writer.prototype.uint64; + Writer.prototype.sint64 = function write_sint64(value) { + var bits = LongBits.from(value).zzEncode(); + return this._push(writeVarint64, bits.length(), bits); + }; + Writer.prototype.bool = function write_bool(value) { + return this._push(writeByte, 1, value ? 1 : 0); + }; + function writeFixed32(val, buf, pos) { + buf[pos] = val & 255; + buf[pos + 1] = val >>> 8 & 255; + buf[pos + 2] = val >>> 16 & 255; + buf[pos + 3] = val >>> 24; + } + Writer.prototype.fixed32 = function write_fixed32(value) { + return this._push(writeFixed32, 4, value >>> 0); + }; + Writer.prototype.sfixed32 = Writer.prototype.fixed32; + Writer.prototype.fixed64 = function write_fixed64(value) { + var bits = LongBits.from(value); + return this._push(writeFixed32, 4, bits.lo)._push(writeFixed32, 4, bits.hi); + }; + Writer.prototype.sfixed64 = Writer.prototype.fixed64; + Writer.prototype.float = function write_float(value) { + return this._push(util2.float.writeFloatLE, 4, value); + }; + Writer.prototype.double = function write_double(value) { + return this._push(util2.float.writeDoubleLE, 8, value); + }; + var writeBytes = util2.Array.prototype.set ? function writeBytes_set(val, buf, pos) { + buf.set(val, pos); + } : function writeBytes_for(val, buf, pos) { + for (var i = 0; i < val.length; ++i) + buf[pos + i] = val[i]; + }; + Writer.prototype.bytes = function write_bytes(value) { + var len = value.length >>> 0; + if (!len) + return this._push(writeByte, 1, 0); + if (util2.isString(value)) { + var buf = Writer.alloc(len = base64.length(value)); + base64.decode(value, buf, 0); + value = buf; + } + return this.uint32(len)._push(writeBytes, len, value); + }; + Writer.prototype.string = function write_string(value) { + var len = utf8.length(value); + return len ? this.uint32(len)._push(utf8.write, len, value) : this._push(writeByte, 1, 0); + }; + Writer.prototype.fork = function fork() { + this.states = new State(this); + this.head = this.tail = new Op(noop2, 0, 0); + this.len = 0; + return this; + }; + Writer.prototype.reset = function reset() { + if (this.states) { + this.head = this.states.head; + this.tail = this.states.tail; + this.len = this.states.len; + this.states = this.states.next; + } else { + this.head = this.tail = new Op(noop2, 0, 0); + this.len = 0; + } + return this; + }; + Writer.prototype.ldelim = function ldelim() { + var head = this.head, tail = this.tail, len = this.len; + this.reset().uint32(len); + if (len) { + this.tail.next = head.next; + this.tail = tail; + this.len += len; + } + return this; + }; + Writer.prototype.finish = function finish() { + var head = this.head.next, buf = this.constructor.alloc(this.len), pos = 0; + while (head) { + head.fn(head.val, buf, pos); + pos += head.len; + head = head.next; + } + return buf; + }; + Writer._configure = function(BufferWriter_) { + BufferWriter = BufferWriter_; + Writer.create = create2(); + BufferWriter._configure(); + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/writer_buffer.js +var require_writer_buffer = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/writer_buffer.js"(exports2, module2) { + "use strict"; + module2.exports = BufferWriter; + var Writer = require_writer2(); + (BufferWriter.prototype = Object.create(Writer.prototype)).constructor = BufferWriter; + var util2 = require_minimal(); + function BufferWriter() { + Writer.call(this); + } + BufferWriter._configure = function() { + BufferWriter.alloc = util2._Buffer_allocUnsafe; + BufferWriter.writeBytesBuffer = util2.Buffer && util2.Buffer.prototype instanceof Uint8Array && util2.Buffer.prototype.set.name === "set" ? function writeBytesBuffer_set(val, buf, pos) { + buf.set(val, pos); + } : function writeBytesBuffer_copy(val, buf, pos) { + if (val.copy) + val.copy(buf, pos, 0, val.length); + else + for (var i = 0; i < val.length; ) + buf[pos++] = val[i++]; + }; + }; + BufferWriter.prototype.bytes = function write_bytes_buffer(value) { + if (util2.isString(value)) + value = util2._Buffer_from(value, "base64"); + var len = value.length >>> 0; + this.uint32(len); + if (len) + this._push(BufferWriter.writeBytesBuffer, len, value); + return this; + }; + function writeStringBuffer(val, buf, pos) { + if (val.length < 40) + util2.utf8.write(val, buf, pos); + else if (buf.utf8Write) + buf.utf8Write(val, pos); + else + buf.write(val, pos); + } + BufferWriter.prototype.string = function write_string_buffer(value) { + var len = util2.Buffer.byteLength(value); + this.uint32(len); + if (len) + this._push(writeStringBuffer, len, value); + return this; + }; + BufferWriter._configure(); + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/reader.js +var require_reader2 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/reader.js"(exports2, module2) { + "use strict"; + module2.exports = Reader; + var util2 = require_minimal(); + var BufferReader; + var LongBits = util2.LongBits; + var utf8 = util2.utf8; + function indexOutOfRange(reader, writeLength) { + return RangeError("index out of range: " + reader.pos + " + " + (writeLength || 1) + " > " + reader.len); + } + function Reader(buffer2) { + this.buf = buffer2; + this.pos = 0; + this.len = buffer2.length; + } + var create_array = typeof Uint8Array !== "undefined" ? function create_typed_array(buffer2) { + if (buffer2 instanceof Uint8Array || Array.isArray(buffer2)) + return new Reader(buffer2); + throw Error("illegal buffer"); + } : function create_array2(buffer2) { + if (Array.isArray(buffer2)) + return new Reader(buffer2); + throw Error("illegal buffer"); + }; + var create2 = function create3() { + return util2.Buffer ? function create_buffer_setup(buffer2) { + return (Reader.create = function create_buffer(buffer3) { + return util2.Buffer.isBuffer(buffer3) ? new BufferReader(buffer3) : create_array(buffer3); + })(buffer2); + } : create_array; + }; + Reader.create = create2(); + Reader.prototype._slice = util2.Array.prototype.subarray || /* istanbul ignore next */ + util2.Array.prototype.slice; + Reader.prototype.uint32 = function read_uint32_setup() { + var value = 4294967295; + return function read_uint32() { + value = (this.buf[this.pos] & 127) >>> 0; + if (this.buf[this.pos++] < 128) + return value; + value = (value | (this.buf[this.pos] & 127) << 7) >>> 0; + if (this.buf[this.pos++] < 128) + return value; + value = (value | (this.buf[this.pos] & 127) << 14) >>> 0; + if (this.buf[this.pos++] < 128) + return value; + value = (value | (this.buf[this.pos] & 127) << 21) >>> 0; + if (this.buf[this.pos++] < 128) + return value; + value = (value | (this.buf[this.pos] & 15) << 28) >>> 0; + if (this.buf[this.pos++] < 128) + return value; + if ((this.pos += 5) > this.len) { + this.pos = this.len; + throw indexOutOfRange(this, 10); + } + return value; + }; + }(); + Reader.prototype.int32 = function read_int32() { + return this.uint32() | 0; + }; + Reader.prototype.sint32 = function read_sint32() { + var value = this.uint32(); + return value >>> 1 ^ -(value & 1) | 0; + }; + function readLongVarint() { + var bits = new LongBits(0, 0); + var i = 0; + if (this.len - this.pos > 4) { + for (; i < 4; ++i) { + bits.lo = (bits.lo | (this.buf[this.pos] & 127) << i * 7) >>> 0; + if (this.buf[this.pos++] < 128) + return bits; + } + bits.lo = (bits.lo | (this.buf[this.pos] & 127) << 28) >>> 0; + bits.hi = (bits.hi | (this.buf[this.pos] & 127) >> 4) >>> 0; + if (this.buf[this.pos++] < 128) + return bits; + i = 0; + } else { + for (; i < 3; ++i) { + if (this.pos >= this.len) + throw indexOutOfRange(this); + bits.lo = (bits.lo | (this.buf[this.pos] & 127) << i * 7) >>> 0; + if (this.buf[this.pos++] < 128) + return bits; + } + bits.lo = (bits.lo | (this.buf[this.pos++] & 127) << i * 7) >>> 0; + return bits; + } + if (this.len - this.pos > 4) { + for (; i < 5; ++i) { + bits.hi = (bits.hi | (this.buf[this.pos] & 127) << i * 7 + 3) >>> 0; + if (this.buf[this.pos++] < 128) + return bits; + } + } else { + for (; i < 5; ++i) { + if (this.pos >= this.len) + throw indexOutOfRange(this); + bits.hi = (bits.hi | (this.buf[this.pos] & 127) << i * 7 + 3) >>> 0; + if (this.buf[this.pos++] < 128) + return bits; + } + } + throw Error("invalid varint encoding"); + } + Reader.prototype.bool = function read_bool() { + return this.uint32() !== 0; + }; + function readFixed32_end(buf, end) { + return (buf[end - 4] | buf[end - 3] << 8 | buf[end - 2] << 16 | buf[end - 1] << 24) >>> 0; + } + Reader.prototype.fixed32 = function read_fixed32() { + if (this.pos + 4 > this.len) + throw indexOutOfRange(this, 4); + return readFixed32_end(this.buf, this.pos += 4); + }; + Reader.prototype.sfixed32 = function read_sfixed32() { + if (this.pos + 4 > this.len) + throw indexOutOfRange(this, 4); + return readFixed32_end(this.buf, this.pos += 4) | 0; + }; + function readFixed64() { + if (this.pos + 8 > this.len) + throw indexOutOfRange(this, 8); + return new LongBits(readFixed32_end(this.buf, this.pos += 4), readFixed32_end(this.buf, this.pos += 4)); + } + Reader.prototype.float = function read_float() { + if (this.pos + 4 > this.len) + throw indexOutOfRange(this, 4); + var value = util2.float.readFloatLE(this.buf, this.pos); + this.pos += 4; + return value; + }; + Reader.prototype.double = function read_double() { + if (this.pos + 8 > this.len) + throw indexOutOfRange(this, 4); + var value = util2.float.readDoubleLE(this.buf, this.pos); + this.pos += 8; + return value; + }; + Reader.prototype.bytes = function read_bytes() { + var length = this.uint32(), start4 = this.pos, end = this.pos + length; + if (end > this.len) + throw indexOutOfRange(this, length); + this.pos += length; + if (Array.isArray(this.buf)) + return this.buf.slice(start4, end); + return start4 === end ? new this.buf.constructor(0) : this._slice.call(this.buf, start4, end); + }; + Reader.prototype.string = function read_string() { + var bytes = this.bytes(); + return utf8.read(bytes, 0, bytes.length); + }; + Reader.prototype.skip = function skip(length) { + if (typeof length === "number") { + if (this.pos + length > this.len) + throw indexOutOfRange(this, length); + this.pos += length; + } else { + do { + if (this.pos >= this.len) + throw indexOutOfRange(this); + } while (this.buf[this.pos++] & 128); + } + return this; + }; + Reader.prototype.skipType = function(wireType) { + switch (wireType) { + case 0: + this.skip(); + break; + case 1: + this.skip(8); + break; + case 2: + this.skip(this.uint32()); + break; + case 3: + while ((wireType = this.uint32() & 7) !== 4) { + this.skipType(wireType); + } + break; + case 5: + this.skip(4); + break; + default: + throw Error("invalid wire type " + wireType + " at offset " + this.pos); + } + return this; + }; + Reader._configure = function(BufferReader_) { + BufferReader = BufferReader_; + Reader.create = create2(); + BufferReader._configure(); + var fn = util2.Long ? "toLong" : ( + /* istanbul ignore next */ + "toNumber" + ); + util2.merge(Reader.prototype, { + int64: function read_int64() { + return readLongVarint.call(this)[fn](false); + }, + uint64: function read_uint64() { + return readLongVarint.call(this)[fn](true); + }, + sint64: function read_sint64() { + return readLongVarint.call(this).zzDecode()[fn](false); + }, + fixed64: function read_fixed64() { + return readFixed64.call(this)[fn](true); + }, + sfixed64: function read_sfixed64() { + return readFixed64.call(this)[fn](false); + } + }); + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/reader_buffer.js +var require_reader_buffer = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/reader_buffer.js"(exports2, module2) { + "use strict"; + module2.exports = BufferReader; + var Reader = require_reader2(); + (BufferReader.prototype = Object.create(Reader.prototype)).constructor = BufferReader; + var util2 = require_minimal(); + function BufferReader(buffer2) { + Reader.call(this, buffer2); + } + BufferReader._configure = function() { + if (util2.Buffer) + BufferReader.prototype._slice = util2.Buffer.prototype.slice; + }; + BufferReader.prototype.string = function read_string_buffer() { + var len = this.uint32(); + return this.buf.utf8Slice ? this.buf.utf8Slice(this.pos, this.pos = Math.min(this.pos + len, this.len)) : this.buf.toString("utf-8", this.pos, this.pos = Math.min(this.pos + len, this.len)); + }; + BufferReader._configure(); + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/rpc/service.js +var require_service = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/rpc/service.js"(exports2, module2) { + "use strict"; + module2.exports = Service; + var util2 = require_minimal(); + (Service.prototype = Object.create(util2.EventEmitter.prototype)).constructor = Service; + function Service(rpcImpl, requestDelimited, responseDelimited) { + if (typeof rpcImpl !== "function") + throw TypeError("rpcImpl must be a function"); + util2.EventEmitter.call(this); + this.rpcImpl = rpcImpl; + this.requestDelimited = Boolean(requestDelimited); + this.responseDelimited = Boolean(responseDelimited); + } + Service.prototype.rpcCall = function rpcCall(method, requestCtor, responseCtor, request, callback) { + if (!request) + throw TypeError("request must be specified"); + var self2 = this; + if (!callback) + return util2.asPromise(rpcCall, self2, method, requestCtor, responseCtor, request); + if (!self2.rpcImpl) { + setTimeout(function() { + callback(Error("already ended")); + }, 0); + return void 0; + } + try { + return self2.rpcImpl( + method, + requestCtor[self2.requestDelimited ? "encodeDelimited" : "encode"](request).finish(), + function rpcCallback(err2, response) { + if (err2) { + self2.emit("error", err2, method); + return callback(err2); + } + if (response === null) { + self2.end( + /* endedByRPC */ + true + ); + return void 0; + } + if (!(response instanceof responseCtor)) { + try { + response = responseCtor[self2.responseDelimited ? "decodeDelimited" : "decode"](response); + } catch (err3) { + self2.emit("error", err3, method); + return callback(err3); + } + } + self2.emit("data", response, method); + return callback(null, response); + } + ); + } catch (err2) { + self2.emit("error", err2, method); + setTimeout(function() { + callback(err2); + }, 0); + return void 0; + } + }; + Service.prototype.end = function end(endedByRPC) { + if (this.rpcImpl) { + if (!endedByRPC) + this.rpcImpl(null, null, null); + this.rpcImpl = null; + this.emit("end").off(); + } + return this; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/rpc.js +var require_rpc = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/rpc.js"(exports2) { + "use strict"; + var rpc = exports2; + rpc.Service = require_service(); + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/roots.js +var require_roots = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/roots.js"(exports2, module2) { + "use strict"; + module2.exports = {}; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/index-minimal.js +var require_index_minimal = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/index-minimal.js"(exports2) { + "use strict"; + var protobuf = exports2; + protobuf.build = "minimal"; + protobuf.Writer = require_writer2(); + protobuf.BufferWriter = require_writer_buffer(); + protobuf.Reader = require_reader2(); + protobuf.BufferReader = require_reader_buffer(); + protobuf.util = require_minimal(); + protobuf.rpc = require_rpc(); + protobuf.roots = require_roots(); + protobuf.configure = configure; + function configure() { + protobuf.util._configure(); + protobuf.Writer._configure(protobuf.BufferWriter); + protobuf.Reader._configure(protobuf.BufferReader); + } + configure(); + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/minimal.js +var require_minimal2 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/minimal.js"(exports2, module2) { + "use strict"; + module2.exports = require_index_minimal(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/generated/root.js +var require_root = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/generated/root.js"(exports2, module2) { + "use strict"; + var $protobuf = require_minimal2(); + var $Reader = $protobuf.Reader; + var $Writer = $protobuf.Writer; + var $util = $protobuf.util; + var $root = $protobuf.roots["default"] || ($protobuf.roots["default"] = {}); + $root.opentelemetry = function() { + var opentelemetry2 = {}; + opentelemetry2.proto = function() { + var proto = {}; + proto.common = function() { + var common = {}; + common.v1 = function() { + var v1 = {}; + v1.AnyValue = function() { + function AnyValue(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + AnyValue.prototype.stringValue = null; + AnyValue.prototype.boolValue = null; + AnyValue.prototype.intValue = null; + AnyValue.prototype.doubleValue = null; + AnyValue.prototype.arrayValue = null; + AnyValue.prototype.kvlistValue = null; + AnyValue.prototype.bytesValue = null; + var $oneOfFields; + Object.defineProperty(AnyValue.prototype, "value", { + get: $util.oneOfGetter($oneOfFields = ["stringValue", "boolValue", "intValue", "doubleValue", "arrayValue", "kvlistValue", "bytesValue"]), + set: $util.oneOfSetter($oneOfFields) + }); + AnyValue.create = function create2(properties2) { + return new AnyValue(properties2); + }; + AnyValue.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).string(message.stringValue); + if (message.boolValue != null && Object.hasOwnProperty.call(message, "boolValue")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).bool(message.boolValue); + if (message.intValue != null && Object.hasOwnProperty.call(message, "intValue")) + writer.uint32( + /* id 3, wireType 0 =*/ + 24 + ).int64(message.intValue); + if (message.doubleValue != null && Object.hasOwnProperty.call(message, "doubleValue")) + writer.uint32( + /* id 4, wireType 1 =*/ + 33 + ).double(message.doubleValue); + if (message.arrayValue != null && Object.hasOwnProperty.call(message, "arrayValue")) + $root.opentelemetry.proto.common.v1.ArrayValue.encode(message.arrayValue, writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).fork()).ldelim(); + if (message.kvlistValue != null && Object.hasOwnProperty.call(message, "kvlistValue")) + $root.opentelemetry.proto.common.v1.KeyValueList.encode(message.kvlistValue, writer.uint32( + /* id 6, wireType 2 =*/ + 50 + ).fork()).ldelim(); + if (message.bytesValue != null && Object.hasOwnProperty.call(message, "bytesValue")) + writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).bytes(message.bytesValue); + return writer; + }; + AnyValue.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + AnyValue.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.common.v1.AnyValue(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.stringValue = reader.string(); + break; + } + case 2: { + message.boolValue = reader.bool(); + break; + } + case 3: { + message.intValue = reader.int64(); + break; + } + case 4: { + message.doubleValue = reader.double(); + break; + } + case 5: { + message.arrayValue = $root.opentelemetry.proto.common.v1.ArrayValue.decode(reader, reader.uint32()); + break; + } + case 6: { + message.kvlistValue = $root.opentelemetry.proto.common.v1.KeyValueList.decode(reader, reader.uint32()); + break; + } + case 7: { + message.bytesValue = reader.bytes(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + AnyValue.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + AnyValue.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.stringValue != null && message.hasOwnProperty("stringValue")) { + properties2.value = 1; + if (!$util.isString(message.stringValue)) + return "stringValue: string expected"; + } + if (message.boolValue != null && message.hasOwnProperty("boolValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (typeof message.boolValue !== "boolean") + return "boolValue: boolean expected"; + } + if (message.intValue != null && message.hasOwnProperty("intValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (!$util.isInteger(message.intValue) && !(message.intValue && $util.isInteger(message.intValue.low) && $util.isInteger(message.intValue.high))) + return "intValue: integer|Long expected"; + } + if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (typeof message.doubleValue !== "number") + return "doubleValue: number expected"; + } + if (message.arrayValue != null && message.hasOwnProperty("arrayValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + { + var error = $root.opentelemetry.proto.common.v1.ArrayValue.verify(message.arrayValue); + if (error) + return "arrayValue." + error; + } + } + if (message.kvlistValue != null && message.hasOwnProperty("kvlistValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + { + var error = $root.opentelemetry.proto.common.v1.KeyValueList.verify(message.kvlistValue); + if (error) + return "kvlistValue." + error; + } + } + if (message.bytesValue != null && message.hasOwnProperty("bytesValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (!(message.bytesValue && typeof message.bytesValue.length === "number" || $util.isString(message.bytesValue))) + return "bytesValue: buffer expected"; + } + return null; + }; + AnyValue.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.common.v1.AnyValue) + return object; + var message = new $root.opentelemetry.proto.common.v1.AnyValue(); + if (object.stringValue != null) + message.stringValue = String(object.stringValue); + if (object.boolValue != null) + message.boolValue = Boolean(object.boolValue); + if (object.intValue != null) { + if ($util.Long) + (message.intValue = $util.Long.fromValue(object.intValue)).unsigned = false; + else if (typeof object.intValue === "string") + message.intValue = parseInt(object.intValue, 10); + else if (typeof object.intValue === "number") + message.intValue = object.intValue; + else if (typeof object.intValue === "object") + message.intValue = new $util.LongBits(object.intValue.low >>> 0, object.intValue.high >>> 0).toNumber(); + } + if (object.doubleValue != null) + message.doubleValue = Number(object.doubleValue); + if (object.arrayValue != null) { + if (typeof object.arrayValue !== "object") + throw TypeError(".opentelemetry.proto.common.v1.AnyValue.arrayValue: object expected"); + message.arrayValue = $root.opentelemetry.proto.common.v1.ArrayValue.fromObject(object.arrayValue); + } + if (object.kvlistValue != null) { + if (typeof object.kvlistValue !== "object") + throw TypeError(".opentelemetry.proto.common.v1.AnyValue.kvlistValue: object expected"); + message.kvlistValue = $root.opentelemetry.proto.common.v1.KeyValueList.fromObject(object.kvlistValue); + } + if (object.bytesValue != null) { + if (typeof object.bytesValue === "string") + $util.base64.decode(object.bytesValue, message.bytesValue = $util.newBuffer($util.base64.length(object.bytesValue)), 0); + else if (object.bytesValue.length >= 0) + message.bytesValue = object.bytesValue; + } + return message; + }; + AnyValue.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (message.stringValue != null && message.hasOwnProperty("stringValue")) { + object.stringValue = message.stringValue; + if (options2.oneofs) + object.value = "stringValue"; + } + if (message.boolValue != null && message.hasOwnProperty("boolValue")) { + object.boolValue = message.boolValue; + if (options2.oneofs) + object.value = "boolValue"; + } + if (message.intValue != null && message.hasOwnProperty("intValue")) { + if (typeof message.intValue === "number") + object.intValue = options2.longs === String ? String(message.intValue) : message.intValue; + else + object.intValue = options2.longs === String ? $util.Long.prototype.toString.call(message.intValue) : options2.longs === Number ? new $util.LongBits(message.intValue.low >>> 0, message.intValue.high >>> 0).toNumber() : message.intValue; + if (options2.oneofs) + object.value = "intValue"; + } + if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) { + object.doubleValue = options2.json && !isFinite(message.doubleValue) ? String(message.doubleValue) : message.doubleValue; + if (options2.oneofs) + object.value = "doubleValue"; + } + if (message.arrayValue != null && message.hasOwnProperty("arrayValue")) { + object.arrayValue = $root.opentelemetry.proto.common.v1.ArrayValue.toObject(message.arrayValue, options2); + if (options2.oneofs) + object.value = "arrayValue"; + } + if (message.kvlistValue != null && message.hasOwnProperty("kvlistValue")) { + object.kvlistValue = $root.opentelemetry.proto.common.v1.KeyValueList.toObject(message.kvlistValue, options2); + if (options2.oneofs) + object.value = "kvlistValue"; + } + if (message.bytesValue != null && message.hasOwnProperty("bytesValue")) { + object.bytesValue = options2.bytes === String ? $util.base64.encode(message.bytesValue, 0, message.bytesValue.length) : options2.bytes === Array ? Array.prototype.slice.call(message.bytesValue) : message.bytesValue; + if (options2.oneofs) + object.value = "bytesValue"; + } + return object; + }; + AnyValue.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + AnyValue.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.common.v1.AnyValue"; + }; + return AnyValue; + }(); + v1.ArrayValue = function() { + function ArrayValue(properties2) { + this.values = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ArrayValue.prototype.values = $util.emptyArray; + ArrayValue.create = function create2(properties2) { + return new ArrayValue(properties2); + }; + ArrayValue.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.values != null && message.values.length) + for (var i = 0; i < message.values.length; ++i) + $root.opentelemetry.proto.common.v1.AnyValue.encode(message.values[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ArrayValue.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ArrayValue.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.common.v1.ArrayValue(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.values && message.values.length)) + message.values = []; + message.values.push($root.opentelemetry.proto.common.v1.AnyValue.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ArrayValue.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ArrayValue.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.values != null && message.hasOwnProperty("values")) { + if (!Array.isArray(message.values)) + return "values: array expected"; + for (var i = 0; i < message.values.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.AnyValue.verify(message.values[i]); + if (error) + return "values." + error; + } + } + return null; + }; + ArrayValue.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.common.v1.ArrayValue) + return object; + var message = new $root.opentelemetry.proto.common.v1.ArrayValue(); + if (object.values) { + if (!Array.isArray(object.values)) + throw TypeError(".opentelemetry.proto.common.v1.ArrayValue.values: array expected"); + message.values = []; + for (var i = 0; i < object.values.length; ++i) { + if (typeof object.values[i] !== "object") + throw TypeError(".opentelemetry.proto.common.v1.ArrayValue.values: object expected"); + message.values[i] = $root.opentelemetry.proto.common.v1.AnyValue.fromObject(object.values[i]); + } + } + return message; + }; + ArrayValue.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.values = []; + if (message.values && message.values.length) { + object.values = []; + for (var j = 0; j < message.values.length; ++j) + object.values[j] = $root.opentelemetry.proto.common.v1.AnyValue.toObject(message.values[j], options2); + } + return object; + }; + ArrayValue.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ArrayValue.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.common.v1.ArrayValue"; + }; + return ArrayValue; + }(); + v1.KeyValueList = function() { + function KeyValueList(properties2) { + this.values = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + KeyValueList.prototype.values = $util.emptyArray; + KeyValueList.create = function create2(properties2) { + return new KeyValueList(properties2); + }; + KeyValueList.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.values != null && message.values.length) + for (var i = 0; i < message.values.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.values[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + KeyValueList.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + KeyValueList.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.common.v1.KeyValueList(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.values && message.values.length)) + message.values = []; + message.values.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + KeyValueList.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + KeyValueList.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.values != null && message.hasOwnProperty("values")) { + if (!Array.isArray(message.values)) + return "values: array expected"; + for (var i = 0; i < message.values.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.values[i]); + if (error) + return "values." + error; + } + } + return null; + }; + KeyValueList.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.common.v1.KeyValueList) + return object; + var message = new $root.opentelemetry.proto.common.v1.KeyValueList(); + if (object.values) { + if (!Array.isArray(object.values)) + throw TypeError(".opentelemetry.proto.common.v1.KeyValueList.values: array expected"); + message.values = []; + for (var i = 0; i < object.values.length; ++i) { + if (typeof object.values[i] !== "object") + throw TypeError(".opentelemetry.proto.common.v1.KeyValueList.values: object expected"); + message.values[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.values[i]); + } + } + return message; + }; + KeyValueList.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.values = []; + if (message.values && message.values.length) { + object.values = []; + for (var j = 0; j < message.values.length; ++j) + object.values[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.values[j], options2); + } + return object; + }; + KeyValueList.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + KeyValueList.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.common.v1.KeyValueList"; + }; + return KeyValueList; + }(); + v1.KeyValue = function() { + function KeyValue(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + KeyValue.prototype.key = null; + KeyValue.prototype.value = null; + KeyValue.create = function create2(properties2) { + return new KeyValue(properties2); + }; + KeyValue.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.key != null && Object.hasOwnProperty.call(message, "key")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).string(message.key); + if (message.value != null && Object.hasOwnProperty.call(message, "value")) + $root.opentelemetry.proto.common.v1.AnyValue.encode(message.value, writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + return writer; + }; + KeyValue.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + KeyValue.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.common.v1.KeyValue(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.key = reader.string(); + break; + } + case 2: { + message.value = $root.opentelemetry.proto.common.v1.AnyValue.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + KeyValue.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + KeyValue.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.key != null && message.hasOwnProperty("key")) { + if (!$util.isString(message.key)) + return "key: string expected"; + } + if (message.value != null && message.hasOwnProperty("value")) { + var error = $root.opentelemetry.proto.common.v1.AnyValue.verify(message.value); + if (error) + return "value." + error; + } + return null; + }; + KeyValue.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.common.v1.KeyValue) + return object; + var message = new $root.opentelemetry.proto.common.v1.KeyValue(); + if (object.key != null) + message.key = String(object.key); + if (object.value != null) { + if (typeof object.value !== "object") + throw TypeError(".opentelemetry.proto.common.v1.KeyValue.value: object expected"); + message.value = $root.opentelemetry.proto.common.v1.AnyValue.fromObject(object.value); + } + return message; + }; + KeyValue.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + object.key = ""; + object.value = null; + } + if (message.key != null && message.hasOwnProperty("key")) + object.key = message.key; + if (message.value != null && message.hasOwnProperty("value")) + object.value = $root.opentelemetry.proto.common.v1.AnyValue.toObject(message.value, options2); + return object; + }; + KeyValue.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + KeyValue.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.common.v1.KeyValue"; + }; + return KeyValue; + }(); + v1.InstrumentationScope = function() { + function InstrumentationScope(properties2) { + this.attributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + InstrumentationScope.prototype.name = null; + InstrumentationScope.prototype.version = null; + InstrumentationScope.prototype.attributes = $util.emptyArray; + InstrumentationScope.prototype.droppedAttributesCount = null; + InstrumentationScope.create = function create2(properties2) { + return new InstrumentationScope(properties2); + }; + InstrumentationScope.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).string(message.name); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.version); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 4, wireType 0 =*/ + 32 + ).uint32(message.droppedAttributesCount); + return writer; + }; + InstrumentationScope.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + InstrumentationScope.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.common.v1.InstrumentationScope(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.version = reader.string(); + break; + } + case 3: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 4: { + message.droppedAttributesCount = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + InstrumentationScope.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + InstrumentationScope.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) { + if (!$util.isString(message.name)) + return "name: string expected"; + } + if (message.version != null && message.hasOwnProperty("version")) { + if (!$util.isString(message.version)) + return "version: string expected"; + } + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + return null; + }; + InstrumentationScope.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.common.v1.InstrumentationScope) + return object; + var message = new $root.opentelemetry.proto.common.v1.InstrumentationScope(); + if (object.name != null) + message.name = String(object.name); + if (object.version != null) + message.version = String(object.version); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.common.v1.InstrumentationScope.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.common.v1.InstrumentationScope.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + return message; + }; + InstrumentationScope.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.attributes = []; + if (options2.defaults) { + object.name = ""; + object.version = ""; + object.droppedAttributesCount = 0; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + return object; + }; + InstrumentationScope.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + InstrumentationScope.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.common.v1.InstrumentationScope"; + }; + return InstrumentationScope; + }(); + return v1; + }(); + return common; + }(); + proto.resource = function() { + var resource = {}; + resource.v1 = function() { + var v1 = {}; + v1.Resource = function() { + function Resource2(properties2) { + this.attributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Resource2.prototype.attributes = $util.emptyArray; + Resource2.prototype.droppedAttributesCount = null; + Resource2.create = function create2(properties2) { + return new Resource2(properties2); + }; + Resource2.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).uint32(message.droppedAttributesCount); + return writer; + }; + Resource2.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Resource2.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.resource.v1.Resource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.droppedAttributesCount = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Resource2.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Resource2.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + return null; + }; + Resource2.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.resource.v1.Resource) + return object; + var message = new $root.opentelemetry.proto.resource.v1.Resource(); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.resource.v1.Resource.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.resource.v1.Resource.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + return message; + }; + Resource2.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.attributes = []; + if (options2.defaults) + object.droppedAttributesCount = 0; + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + return object; + }; + Resource2.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Resource2.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.resource.v1.Resource"; + }; + return Resource2; + }(); + return v1; + }(); + return resource; + }(); + proto.trace = function() { + var trace = {}; + trace.v1 = function() { + var v1 = {}; + v1.TracesData = function() { + function TracesData(properties2) { + this.resourceSpans = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + TracesData.prototype.resourceSpans = $util.emptyArray; + TracesData.create = function create2(properties2) { + return new TracesData(properties2); + }; + TracesData.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceSpans != null && message.resourceSpans.length) + for (var i = 0; i < message.resourceSpans.length; ++i) + $root.opentelemetry.proto.trace.v1.ResourceSpans.encode(message.resourceSpans[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + TracesData.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + TracesData.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.TracesData(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceSpans && message.resourceSpans.length)) + message.resourceSpans = []; + message.resourceSpans.push($root.opentelemetry.proto.trace.v1.ResourceSpans.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + TracesData.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + TracesData.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceSpans != null && message.hasOwnProperty("resourceSpans")) { + if (!Array.isArray(message.resourceSpans)) + return "resourceSpans: array expected"; + for (var i = 0; i < message.resourceSpans.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.ResourceSpans.verify(message.resourceSpans[i]); + if (error) + return "resourceSpans." + error; + } + } + return null; + }; + TracesData.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.TracesData) + return object; + var message = new $root.opentelemetry.proto.trace.v1.TracesData(); + if (object.resourceSpans) { + if (!Array.isArray(object.resourceSpans)) + throw TypeError(".opentelemetry.proto.trace.v1.TracesData.resourceSpans: array expected"); + message.resourceSpans = []; + for (var i = 0; i < object.resourceSpans.length; ++i) { + if (typeof object.resourceSpans[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.TracesData.resourceSpans: object expected"); + message.resourceSpans[i] = $root.opentelemetry.proto.trace.v1.ResourceSpans.fromObject(object.resourceSpans[i]); + } + } + return message; + }; + TracesData.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceSpans = []; + if (message.resourceSpans && message.resourceSpans.length) { + object.resourceSpans = []; + for (var j = 0; j < message.resourceSpans.length; ++j) + object.resourceSpans[j] = $root.opentelemetry.proto.trace.v1.ResourceSpans.toObject(message.resourceSpans[j], options2); + } + return object; + }; + TracesData.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + TracesData.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.TracesData"; + }; + return TracesData; + }(); + v1.ResourceSpans = function() { + function ResourceSpans(properties2) { + this.scopeSpans = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ResourceSpans.prototype.resource = null; + ResourceSpans.prototype.scopeSpans = $util.emptyArray; + ResourceSpans.prototype.schemaUrl = null; + ResourceSpans.create = function create2(properties2) { + return new ResourceSpans(properties2); + }; + ResourceSpans.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.opentelemetry.proto.resource.v1.Resource.encode(message.resource, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.scopeSpans != null && message.scopeSpans.length) + for (var i = 0; i < message.scopeSpans.length; ++i) + $root.opentelemetry.proto.trace.v1.ScopeSpans.encode(message.scopeSpans[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ResourceSpans.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ResourceSpans.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.ResourceSpans(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.resource = $root.opentelemetry.proto.resource.v1.Resource.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.scopeSpans && message.scopeSpans.length)) + message.scopeSpans = []; + message.scopeSpans.push($root.opentelemetry.proto.trace.v1.ScopeSpans.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ResourceSpans.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ResourceSpans.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.opentelemetry.proto.resource.v1.Resource.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.scopeSpans != null && message.hasOwnProperty("scopeSpans")) { + if (!Array.isArray(message.scopeSpans)) + return "scopeSpans: array expected"; + for (var i = 0; i < message.scopeSpans.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.ScopeSpans.verify(message.scopeSpans[i]); + if (error) + return "scopeSpans." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ResourceSpans.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.ResourceSpans) + return object; + var message = new $root.opentelemetry.proto.trace.v1.ResourceSpans(); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.ResourceSpans.resource: object expected"); + message.resource = $root.opentelemetry.proto.resource.v1.Resource.fromObject(object.resource); + } + if (object.scopeSpans) { + if (!Array.isArray(object.scopeSpans)) + throw TypeError(".opentelemetry.proto.trace.v1.ResourceSpans.scopeSpans: array expected"); + message.scopeSpans = []; + for (var i = 0; i < object.scopeSpans.length; ++i) { + if (typeof object.scopeSpans[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.ResourceSpans.scopeSpans: object expected"); + message.scopeSpans[i] = $root.opentelemetry.proto.trace.v1.ScopeSpans.fromObject(object.scopeSpans[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ResourceSpans.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.scopeSpans = []; + if (options2.defaults) { + object.resource = null; + object.schemaUrl = ""; + } + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.opentelemetry.proto.resource.v1.Resource.toObject(message.resource, options2); + if (message.scopeSpans && message.scopeSpans.length) { + object.scopeSpans = []; + for (var j = 0; j < message.scopeSpans.length; ++j) + object.scopeSpans[j] = $root.opentelemetry.proto.trace.v1.ScopeSpans.toObject(message.scopeSpans[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ResourceSpans.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ResourceSpans.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.ResourceSpans"; + }; + return ResourceSpans; + }(); + v1.ScopeSpans = function() { + function ScopeSpans(properties2) { + this.spans = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ScopeSpans.prototype.scope = null; + ScopeSpans.prototype.spans = $util.emptyArray; + ScopeSpans.prototype.schemaUrl = null; + ScopeSpans.create = function create2(properties2) { + return new ScopeSpans(properties2); + }; + ScopeSpans.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.scope != null && Object.hasOwnProperty.call(message, "scope")) + $root.opentelemetry.proto.common.v1.InstrumentationScope.encode(message.scope, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.spans != null && message.spans.length) + for (var i = 0; i < message.spans.length; ++i) + $root.opentelemetry.proto.trace.v1.Span.encode(message.spans[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ScopeSpans.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ScopeSpans.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.ScopeSpans(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.spans && message.spans.length)) + message.spans = []; + message.spans.push($root.opentelemetry.proto.trace.v1.Span.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ScopeSpans.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ScopeSpans.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.scope != null && message.hasOwnProperty("scope")) { + var error = $root.opentelemetry.proto.common.v1.InstrumentationScope.verify(message.scope); + if (error) + return "scope." + error; + } + if (message.spans != null && message.hasOwnProperty("spans")) { + if (!Array.isArray(message.spans)) + return "spans: array expected"; + for (var i = 0; i < message.spans.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.Span.verify(message.spans[i]); + if (error) + return "spans." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ScopeSpans.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.ScopeSpans) + return object; + var message = new $root.opentelemetry.proto.trace.v1.ScopeSpans(); + if (object.scope != null) { + if (typeof object.scope !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.ScopeSpans.scope: object expected"); + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.fromObject(object.scope); + } + if (object.spans) { + if (!Array.isArray(object.spans)) + throw TypeError(".opentelemetry.proto.trace.v1.ScopeSpans.spans: array expected"); + message.spans = []; + for (var i = 0; i < object.spans.length; ++i) { + if (typeof object.spans[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.ScopeSpans.spans: object expected"); + message.spans[i] = $root.opentelemetry.proto.trace.v1.Span.fromObject(object.spans[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ScopeSpans.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.spans = []; + if (options2.defaults) { + object.scope = null; + object.schemaUrl = ""; + } + if (message.scope != null && message.hasOwnProperty("scope")) + object.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.toObject(message.scope, options2); + if (message.spans && message.spans.length) { + object.spans = []; + for (var j = 0; j < message.spans.length; ++j) + object.spans[j] = $root.opentelemetry.proto.trace.v1.Span.toObject(message.spans[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ScopeSpans.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ScopeSpans.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.ScopeSpans"; + }; + return ScopeSpans; + }(); + v1.Span = function() { + function Span(properties2) { + this.attributes = []; + this.events = []; + this.links = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Span.prototype.traceId = null; + Span.prototype.spanId = null; + Span.prototype.traceState = null; + Span.prototype.parentSpanId = null; + Span.prototype.name = null; + Span.prototype.kind = null; + Span.prototype.startTimeUnixNano = null; + Span.prototype.endTimeUnixNano = null; + Span.prototype.attributes = $util.emptyArray; + Span.prototype.droppedAttributesCount = null; + Span.prototype.events = $util.emptyArray; + Span.prototype.droppedEventsCount = null; + Span.prototype.links = $util.emptyArray; + Span.prototype.droppedLinksCount = null; + Span.prototype.status = null; + Span.create = function create2(properties2) { + return new Span(properties2); + }; + Span.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.traceId != null && Object.hasOwnProperty.call(message, "traceId")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).bytes(message.traceId); + if (message.spanId != null && Object.hasOwnProperty.call(message, "spanId")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).bytes(message.spanId); + if (message.traceState != null && Object.hasOwnProperty.call(message, "traceState")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.traceState); + if (message.parentSpanId != null && Object.hasOwnProperty.call(message, "parentSpanId")) + writer.uint32( + /* id 4, wireType 2 =*/ + 34 + ).bytes(message.parentSpanId); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).string(message.name); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32( + /* id 6, wireType 0 =*/ + 48 + ).int32(message.kind); + if (message.startTimeUnixNano != null && Object.hasOwnProperty.call(message, "startTimeUnixNano")) + writer.uint32( + /* id 7, wireType 1 =*/ + 57 + ).fixed64(message.startTimeUnixNano); + if (message.endTimeUnixNano != null && Object.hasOwnProperty.call(message, "endTimeUnixNano")) + writer.uint32( + /* id 8, wireType 1 =*/ + 65 + ).fixed64(message.endTimeUnixNano); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 9, wireType 2 =*/ + 74 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 10, wireType 0 =*/ + 80 + ).uint32(message.droppedAttributesCount); + if (message.events != null && message.events.length) + for (var i = 0; i < message.events.length; ++i) + $root.opentelemetry.proto.trace.v1.Span.Event.encode(message.events[i], writer.uint32( + /* id 11, wireType 2 =*/ + 90 + ).fork()).ldelim(); + if (message.droppedEventsCount != null && Object.hasOwnProperty.call(message, "droppedEventsCount")) + writer.uint32( + /* id 12, wireType 0 =*/ + 96 + ).uint32(message.droppedEventsCount); + if (message.links != null && message.links.length) + for (var i = 0; i < message.links.length; ++i) + $root.opentelemetry.proto.trace.v1.Span.Link.encode(message.links[i], writer.uint32( + /* id 13, wireType 2 =*/ + 106 + ).fork()).ldelim(); + if (message.droppedLinksCount != null && Object.hasOwnProperty.call(message, "droppedLinksCount")) + writer.uint32( + /* id 14, wireType 0 =*/ + 112 + ).uint32(message.droppedLinksCount); + if (message.status != null && Object.hasOwnProperty.call(message, "status")) + $root.opentelemetry.proto.trace.v1.Status.encode(message.status, writer.uint32( + /* id 15, wireType 2 =*/ + 122 + ).fork()).ldelim(); + return writer; + }; + Span.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Span.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.Span(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.traceId = reader.bytes(); + break; + } + case 2: { + message.spanId = reader.bytes(); + break; + } + case 3: { + message.traceState = reader.string(); + break; + } + case 4: { + message.parentSpanId = reader.bytes(); + break; + } + case 5: { + message.name = reader.string(); + break; + } + case 6: { + message.kind = reader.int32(); + break; + } + case 7: { + message.startTimeUnixNano = reader.fixed64(); + break; + } + case 8: { + message.endTimeUnixNano = reader.fixed64(); + break; + } + case 9: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 10: { + message.droppedAttributesCount = reader.uint32(); + break; + } + case 11: { + if (!(message.events && message.events.length)) + message.events = []; + message.events.push($root.opentelemetry.proto.trace.v1.Span.Event.decode(reader, reader.uint32())); + break; + } + case 12: { + message.droppedEventsCount = reader.uint32(); + break; + } + case 13: { + if (!(message.links && message.links.length)) + message.links = []; + message.links.push($root.opentelemetry.proto.trace.v1.Span.Link.decode(reader, reader.uint32())); + break; + } + case 14: { + message.droppedLinksCount = reader.uint32(); + break; + } + case 15: { + message.status = $root.opentelemetry.proto.trace.v1.Status.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Span.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Span.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.traceId != null && message.hasOwnProperty("traceId")) { + if (!(message.traceId && typeof message.traceId.length === "number" || $util.isString(message.traceId))) + return "traceId: buffer expected"; + } + if (message.spanId != null && message.hasOwnProperty("spanId")) { + if (!(message.spanId && typeof message.spanId.length === "number" || $util.isString(message.spanId))) + return "spanId: buffer expected"; + } + if (message.traceState != null && message.hasOwnProperty("traceState")) { + if (!$util.isString(message.traceState)) + return "traceState: string expected"; + } + if (message.parentSpanId != null && message.hasOwnProperty("parentSpanId")) { + if (!(message.parentSpanId && typeof message.parentSpanId.length === "number" || $util.isString(message.parentSpanId))) + return "parentSpanId: buffer expected"; + } + if (message.name != null && message.hasOwnProperty("name")) { + if (!$util.isString(message.name)) + return "name: string expected"; + } + if (message.kind != null && message.hasOwnProperty("kind")) + switch (message.kind) { + default: + return "kind: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + break; + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) { + if (!$util.isInteger(message.startTimeUnixNano) && !(message.startTimeUnixNano && $util.isInteger(message.startTimeUnixNano.low) && $util.isInteger(message.startTimeUnixNano.high))) + return "startTimeUnixNano: integer|Long expected"; + } + if (message.endTimeUnixNano != null && message.hasOwnProperty("endTimeUnixNano")) { + if (!$util.isInteger(message.endTimeUnixNano) && !(message.endTimeUnixNano && $util.isInteger(message.endTimeUnixNano.low) && $util.isInteger(message.endTimeUnixNano.high))) + return "endTimeUnixNano: integer|Long expected"; + } + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + if (message.events != null && message.hasOwnProperty("events")) { + if (!Array.isArray(message.events)) + return "events: array expected"; + for (var i = 0; i < message.events.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.Span.Event.verify(message.events[i]); + if (error) + return "events." + error; + } + } + if (message.droppedEventsCount != null && message.hasOwnProperty("droppedEventsCount")) { + if (!$util.isInteger(message.droppedEventsCount)) + return "droppedEventsCount: integer expected"; + } + if (message.links != null && message.hasOwnProperty("links")) { + if (!Array.isArray(message.links)) + return "links: array expected"; + for (var i = 0; i < message.links.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.Span.Link.verify(message.links[i]); + if (error) + return "links." + error; + } + } + if (message.droppedLinksCount != null && message.hasOwnProperty("droppedLinksCount")) { + if (!$util.isInteger(message.droppedLinksCount)) + return "droppedLinksCount: integer expected"; + } + if (message.status != null && message.hasOwnProperty("status")) { + var error = $root.opentelemetry.proto.trace.v1.Status.verify(message.status); + if (error) + return "status." + error; + } + return null; + }; + Span.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.Span) + return object; + var message = new $root.opentelemetry.proto.trace.v1.Span(); + if (object.traceId != null) { + if (typeof object.traceId === "string") + $util.base64.decode(object.traceId, message.traceId = $util.newBuffer($util.base64.length(object.traceId)), 0); + else if (object.traceId.length >= 0) + message.traceId = object.traceId; + } + if (object.spanId != null) { + if (typeof object.spanId === "string") + $util.base64.decode(object.spanId, message.spanId = $util.newBuffer($util.base64.length(object.spanId)), 0); + else if (object.spanId.length >= 0) + message.spanId = object.spanId; + } + if (object.traceState != null) + message.traceState = String(object.traceState); + if (object.parentSpanId != null) { + if (typeof object.parentSpanId === "string") + $util.base64.decode(object.parentSpanId, message.parentSpanId = $util.newBuffer($util.base64.length(object.parentSpanId)), 0); + else if (object.parentSpanId.length >= 0) + message.parentSpanId = object.parentSpanId; + } + if (object.name != null) + message.name = String(object.name); + switch (object.kind) { + default: + if (typeof object.kind === "number") { + message.kind = object.kind; + break; + } + break; + case "SPAN_KIND_UNSPECIFIED": + case 0: + message.kind = 0; + break; + case "SPAN_KIND_INTERNAL": + case 1: + message.kind = 1; + break; + case "SPAN_KIND_SERVER": + case 2: + message.kind = 2; + break; + case "SPAN_KIND_CLIENT": + case 3: + message.kind = 3; + break; + case "SPAN_KIND_PRODUCER": + case 4: + message.kind = 4; + break; + case "SPAN_KIND_CONSUMER": + case 5: + message.kind = 5; + break; + } + if (object.startTimeUnixNano != null) { + if ($util.Long) + (message.startTimeUnixNano = $util.Long.fromValue(object.startTimeUnixNano)).unsigned = false; + else if (typeof object.startTimeUnixNano === "string") + message.startTimeUnixNano = parseInt(object.startTimeUnixNano, 10); + else if (typeof object.startTimeUnixNano === "number") + message.startTimeUnixNano = object.startTimeUnixNano; + else if (typeof object.startTimeUnixNano === "object") + message.startTimeUnixNano = new $util.LongBits(object.startTimeUnixNano.low >>> 0, object.startTimeUnixNano.high >>> 0).toNumber(); + } + if (object.endTimeUnixNano != null) { + if ($util.Long) + (message.endTimeUnixNano = $util.Long.fromValue(object.endTimeUnixNano)).unsigned = false; + else if (typeof object.endTimeUnixNano === "string") + message.endTimeUnixNano = parseInt(object.endTimeUnixNano, 10); + else if (typeof object.endTimeUnixNano === "number") + message.endTimeUnixNano = object.endTimeUnixNano; + else if (typeof object.endTimeUnixNano === "object") + message.endTimeUnixNano = new $util.LongBits(object.endTimeUnixNano.low >>> 0, object.endTimeUnixNano.high >>> 0).toNumber(); + } + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.trace.v1.Span.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + if (object.events) { + if (!Array.isArray(object.events)) + throw TypeError(".opentelemetry.proto.trace.v1.Span.events: array expected"); + message.events = []; + for (var i = 0; i < object.events.length; ++i) { + if (typeof object.events[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.events: object expected"); + message.events[i] = $root.opentelemetry.proto.trace.v1.Span.Event.fromObject(object.events[i]); + } + } + if (object.droppedEventsCount != null) + message.droppedEventsCount = object.droppedEventsCount >>> 0; + if (object.links) { + if (!Array.isArray(object.links)) + throw TypeError(".opentelemetry.proto.trace.v1.Span.links: array expected"); + message.links = []; + for (var i = 0; i < object.links.length; ++i) { + if (typeof object.links[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.links: object expected"); + message.links[i] = $root.opentelemetry.proto.trace.v1.Span.Link.fromObject(object.links[i]); + } + } + if (object.droppedLinksCount != null) + message.droppedLinksCount = object.droppedLinksCount >>> 0; + if (object.status != null) { + if (typeof object.status !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.status: object expected"); + message.status = $root.opentelemetry.proto.trace.v1.Status.fromObject(object.status); + } + return message; + }; + Span.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) { + object.attributes = []; + object.events = []; + object.links = []; + } + if (options2.defaults) { + if (options2.bytes === String) + object.traceId = ""; + else { + object.traceId = []; + if (options2.bytes !== Array) + object.traceId = $util.newBuffer(object.traceId); + } + if (options2.bytes === String) + object.spanId = ""; + else { + object.spanId = []; + if (options2.bytes !== Array) + object.spanId = $util.newBuffer(object.spanId); + } + object.traceState = ""; + if (options2.bytes === String) + object.parentSpanId = ""; + else { + object.parentSpanId = []; + if (options2.bytes !== Array) + object.parentSpanId = $util.newBuffer(object.parentSpanId); + } + object.name = ""; + object.kind = options2.enums === String ? "SPAN_KIND_UNSPECIFIED" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.startTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.startTimeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.endTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.endTimeUnixNano = options2.longs === String ? "0" : 0; + object.droppedAttributesCount = 0; + object.droppedEventsCount = 0; + object.droppedLinksCount = 0; + object.status = null; + } + if (message.traceId != null && message.hasOwnProperty("traceId")) + object.traceId = options2.bytes === String ? $util.base64.encode(message.traceId, 0, message.traceId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.traceId) : message.traceId; + if (message.spanId != null && message.hasOwnProperty("spanId")) + object.spanId = options2.bytes === String ? $util.base64.encode(message.spanId, 0, message.spanId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.spanId) : message.spanId; + if (message.traceState != null && message.hasOwnProperty("traceState")) + object.traceState = message.traceState; + if (message.parentSpanId != null && message.hasOwnProperty("parentSpanId")) + object.parentSpanId = options2.bytes === String ? $util.base64.encode(message.parentSpanId, 0, message.parentSpanId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.parentSpanId) : message.parentSpanId; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = options2.enums === String ? $root.opentelemetry.proto.trace.v1.Span.SpanKind[message.kind] === void 0 ? message.kind : $root.opentelemetry.proto.trace.v1.Span.SpanKind[message.kind] : message.kind; + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) + if (typeof message.startTimeUnixNano === "number") + object.startTimeUnixNano = options2.longs === String ? String(message.startTimeUnixNano) : message.startTimeUnixNano; + else + object.startTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.startTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.startTimeUnixNano.low >>> 0, message.startTimeUnixNano.high >>> 0).toNumber() : message.startTimeUnixNano; + if (message.endTimeUnixNano != null && message.hasOwnProperty("endTimeUnixNano")) + if (typeof message.endTimeUnixNano === "number") + object.endTimeUnixNano = options2.longs === String ? String(message.endTimeUnixNano) : message.endTimeUnixNano; + else + object.endTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.endTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.endTimeUnixNano.low >>> 0, message.endTimeUnixNano.high >>> 0).toNumber() : message.endTimeUnixNano; + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + if (message.events && message.events.length) { + object.events = []; + for (var j = 0; j < message.events.length; ++j) + object.events[j] = $root.opentelemetry.proto.trace.v1.Span.Event.toObject(message.events[j], options2); + } + if (message.droppedEventsCount != null && message.hasOwnProperty("droppedEventsCount")) + object.droppedEventsCount = message.droppedEventsCount; + if (message.links && message.links.length) { + object.links = []; + for (var j = 0; j < message.links.length; ++j) + object.links[j] = $root.opentelemetry.proto.trace.v1.Span.Link.toObject(message.links[j], options2); + } + if (message.droppedLinksCount != null && message.hasOwnProperty("droppedLinksCount")) + object.droppedLinksCount = message.droppedLinksCount; + if (message.status != null && message.hasOwnProperty("status")) + object.status = $root.opentelemetry.proto.trace.v1.Status.toObject(message.status, options2); + return object; + }; + Span.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Span.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.Span"; + }; + Span.SpanKind = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SPAN_KIND_UNSPECIFIED"] = 0; + values[valuesById[1] = "SPAN_KIND_INTERNAL"] = 1; + values[valuesById[2] = "SPAN_KIND_SERVER"] = 2; + values[valuesById[3] = "SPAN_KIND_CLIENT"] = 3; + values[valuesById[4] = "SPAN_KIND_PRODUCER"] = 4; + values[valuesById[5] = "SPAN_KIND_CONSUMER"] = 5; + return values; + }(); + Span.Event = function() { + function Event2(properties2) { + this.attributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Event2.prototype.timeUnixNano = null; + Event2.prototype.name = null; + Event2.prototype.attributes = $util.emptyArray; + Event2.prototype.droppedAttributesCount = null; + Event2.create = function create2(properties2) { + return new Event2(properties2); + }; + Event2.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 1, wireType 1 =*/ + 9 + ).fixed64(message.timeUnixNano); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.name); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 4, wireType 0 =*/ + 32 + ).uint32(message.droppedAttributesCount); + return writer; + }; + Event2.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Event2.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.Span.Event(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 2: { + message.name = reader.string(); + break; + } + case 3: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 4: { + message.droppedAttributesCount = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Event2.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Event2.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.name != null && message.hasOwnProperty("name")) { + if (!$util.isString(message.name)) + return "name: string expected"; + } + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + return null; + }; + Event2.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.Span.Event) + return object; + var message = new $root.opentelemetry.proto.trace.v1.Span.Event(); + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.name != null) + message.name = String(object.name); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.trace.v1.Span.Event.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.Event.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + return message; + }; + Event2.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.attributes = []; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + object.name = ""; + object.droppedAttributesCount = 0; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + return object; + }; + Event2.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Event2.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.Span.Event"; + }; + return Event2; + }(); + Span.Link = function() { + function Link(properties2) { + this.attributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Link.prototype.traceId = null; + Link.prototype.spanId = null; + Link.prototype.traceState = null; + Link.prototype.attributes = $util.emptyArray; + Link.prototype.droppedAttributesCount = null; + Link.create = function create2(properties2) { + return new Link(properties2); + }; + Link.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.traceId != null && Object.hasOwnProperty.call(message, "traceId")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).bytes(message.traceId); + if (message.spanId != null && Object.hasOwnProperty.call(message, "spanId")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).bytes(message.spanId); + if (message.traceState != null && Object.hasOwnProperty.call(message, "traceState")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.traceState); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 4, wireType 2 =*/ + 34 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 5, wireType 0 =*/ + 40 + ).uint32(message.droppedAttributesCount); + return writer; + }; + Link.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Link.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.Span.Link(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.traceId = reader.bytes(); + break; + } + case 2: { + message.spanId = reader.bytes(); + break; + } + case 3: { + message.traceState = reader.string(); + break; + } + case 4: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 5: { + message.droppedAttributesCount = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Link.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Link.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.traceId != null && message.hasOwnProperty("traceId")) { + if (!(message.traceId && typeof message.traceId.length === "number" || $util.isString(message.traceId))) + return "traceId: buffer expected"; + } + if (message.spanId != null && message.hasOwnProperty("spanId")) { + if (!(message.spanId && typeof message.spanId.length === "number" || $util.isString(message.spanId))) + return "spanId: buffer expected"; + } + if (message.traceState != null && message.hasOwnProperty("traceState")) { + if (!$util.isString(message.traceState)) + return "traceState: string expected"; + } + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + return null; + }; + Link.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.Span.Link) + return object; + var message = new $root.opentelemetry.proto.trace.v1.Span.Link(); + if (object.traceId != null) { + if (typeof object.traceId === "string") + $util.base64.decode(object.traceId, message.traceId = $util.newBuffer($util.base64.length(object.traceId)), 0); + else if (object.traceId.length >= 0) + message.traceId = object.traceId; + } + if (object.spanId != null) { + if (typeof object.spanId === "string") + $util.base64.decode(object.spanId, message.spanId = $util.newBuffer($util.base64.length(object.spanId)), 0); + else if (object.spanId.length >= 0) + message.spanId = object.spanId; + } + if (object.traceState != null) + message.traceState = String(object.traceState); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.trace.v1.Span.Link.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.Link.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + return message; + }; + Link.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.attributes = []; + if (options2.defaults) { + if (options2.bytes === String) + object.traceId = ""; + else { + object.traceId = []; + if (options2.bytes !== Array) + object.traceId = $util.newBuffer(object.traceId); + } + if (options2.bytes === String) + object.spanId = ""; + else { + object.spanId = []; + if (options2.bytes !== Array) + object.spanId = $util.newBuffer(object.spanId); + } + object.traceState = ""; + object.droppedAttributesCount = 0; + } + if (message.traceId != null && message.hasOwnProperty("traceId")) + object.traceId = options2.bytes === String ? $util.base64.encode(message.traceId, 0, message.traceId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.traceId) : message.traceId; + if (message.spanId != null && message.hasOwnProperty("spanId")) + object.spanId = options2.bytes === String ? $util.base64.encode(message.spanId, 0, message.spanId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.spanId) : message.spanId; + if (message.traceState != null && message.hasOwnProperty("traceState")) + object.traceState = message.traceState; + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + return object; + }; + Link.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Link.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.Span.Link"; + }; + return Link; + }(); + return Span; + }(); + v1.Status = function() { + function Status(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Status.prototype.message = null; + Status.prototype.code = null; + Status.create = function create2(properties2) { + return new Status(properties2); + }; + Status.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.message != null && Object.hasOwnProperty.call(message, "message")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.message); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32( + /* id 3, wireType 0 =*/ + 24 + ).int32(message.code); + return writer; + }; + Status.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Status.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.Status(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: { + message.message = reader.string(); + break; + } + case 3: { + message.code = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Status.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Status.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.message != null && message.hasOwnProperty("message")) { + if (!$util.isString(message.message)) + return "message: string expected"; + } + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + Status.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.Status) + return object; + var message = new $root.opentelemetry.proto.trace.v1.Status(); + if (object.message != null) + message.message = String(object.message); + switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; + case "STATUS_CODE_UNSET": + case 0: + message.code = 0; + break; + case "STATUS_CODE_OK": + case 1: + message.code = 1; + break; + case "STATUS_CODE_ERROR": + case 2: + message.code = 2; + break; + } + return message; + }; + Status.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + object.message = ""; + object.code = options2.enums === String ? "STATUS_CODE_UNSET" : 0; + } + if (message.message != null && message.hasOwnProperty("message")) + object.message = message.message; + if (message.code != null && message.hasOwnProperty("code")) + object.code = options2.enums === String ? $root.opentelemetry.proto.trace.v1.Status.StatusCode[message.code] === void 0 ? message.code : $root.opentelemetry.proto.trace.v1.Status.StatusCode[message.code] : message.code; + return object; + }; + Status.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Status.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.Status"; + }; + Status.StatusCode = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STATUS_CODE_UNSET"] = 0; + values[valuesById[1] = "STATUS_CODE_OK"] = 1; + values[valuesById[2] = "STATUS_CODE_ERROR"] = 2; + return values; + }(); + return Status; + }(); + return v1; + }(); + return trace; + }(); + proto.collector = function() { + var collector = {}; + collector.trace = function() { + var trace = {}; + trace.v1 = function() { + var v1 = {}; + v1.TraceService = function() { + function TraceService(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + (TraceService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = TraceService; + TraceService.create = function create2(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + Object.defineProperty(TraceService.prototype["export"] = function export_(request, callback) { + return this.rpcCall(export_, $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest, $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse, request, callback); + }, "name", { value: "Export" }); + return TraceService; + }(); + v1.ExportTraceServiceRequest = function() { + function ExportTraceServiceRequest(properties2) { + this.resourceSpans = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportTraceServiceRequest.prototype.resourceSpans = $util.emptyArray; + ExportTraceServiceRequest.create = function create2(properties2) { + return new ExportTraceServiceRequest(properties2); + }; + ExportTraceServiceRequest.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceSpans != null && message.resourceSpans.length) + for (var i = 0; i < message.resourceSpans.length; ++i) + $root.opentelemetry.proto.trace.v1.ResourceSpans.encode(message.resourceSpans[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportTraceServiceRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportTraceServiceRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceSpans && message.resourceSpans.length)) + message.resourceSpans = []; + message.resourceSpans.push($root.opentelemetry.proto.trace.v1.ResourceSpans.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportTraceServiceRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportTraceServiceRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceSpans != null && message.hasOwnProperty("resourceSpans")) { + if (!Array.isArray(message.resourceSpans)) + return "resourceSpans: array expected"; + for (var i = 0; i < message.resourceSpans.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.ResourceSpans.verify(message.resourceSpans[i]); + if (error) + return "resourceSpans." + error; + } + } + return null; + }; + ExportTraceServiceRequest.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest) + return object; + var message = new $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest(); + if (object.resourceSpans) { + if (!Array.isArray(object.resourceSpans)) + throw TypeError(".opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest.resourceSpans: array expected"); + message.resourceSpans = []; + for (var i = 0; i < object.resourceSpans.length; ++i) { + if (typeof object.resourceSpans[i] !== "object") + throw TypeError(".opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest.resourceSpans: object expected"); + message.resourceSpans[i] = $root.opentelemetry.proto.trace.v1.ResourceSpans.fromObject(object.resourceSpans[i]); + } + } + return message; + }; + ExportTraceServiceRequest.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceSpans = []; + if (message.resourceSpans && message.resourceSpans.length) { + object.resourceSpans = []; + for (var j = 0; j < message.resourceSpans.length; ++j) + object.resourceSpans[j] = $root.opentelemetry.proto.trace.v1.ResourceSpans.toObject(message.resourceSpans[j], options2); + } + return object; + }; + ExportTraceServiceRequest.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportTraceServiceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest"; + }; + return ExportTraceServiceRequest; + }(); + v1.ExportTraceServiceResponse = function() { + function ExportTraceServiceResponse(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportTraceServiceResponse.prototype.partialSuccess = null; + ExportTraceServiceResponse.create = function create2(properties2) { + return new ExportTraceServiceResponse(properties2); + }; + ExportTraceServiceResponse.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.partialSuccess != null && Object.hasOwnProperty.call(message, "partialSuccess")) + $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess.encode(message.partialSuccess, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportTraceServiceResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportTraceServiceResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.partialSuccess = $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportTraceServiceResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportTraceServiceResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) { + var error = $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess.verify(message.partialSuccess); + if (error) + return "partialSuccess." + error; + } + return null; + }; + ExportTraceServiceResponse.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse) + return object; + var message = new $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse(); + if (object.partialSuccess != null) { + if (typeof object.partialSuccess !== "object") + throw TypeError(".opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse.partialSuccess: object expected"); + message.partialSuccess = $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess.fromObject(object.partialSuccess); + } + return message; + }; + ExportTraceServiceResponse.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) + object.partialSuccess = null; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) + object.partialSuccess = $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess.toObject(message.partialSuccess, options2); + return object; + }; + ExportTraceServiceResponse.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportTraceServiceResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse"; + }; + return ExportTraceServiceResponse; + }(); + v1.ExportTracePartialSuccess = function() { + function ExportTracePartialSuccess(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportTracePartialSuccess.prototype.rejectedSpans = null; + ExportTracePartialSuccess.prototype.errorMessage = null; + ExportTracePartialSuccess.create = function create2(properties2) { + return new ExportTracePartialSuccess(properties2); + }; + ExportTracePartialSuccess.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.rejectedSpans != null && Object.hasOwnProperty.call(message, "rejectedSpans")) + writer.uint32( + /* id 1, wireType 0 =*/ + 8 + ).int64(message.rejectedSpans); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.errorMessage); + return writer; + }; + ExportTracePartialSuccess.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportTracePartialSuccess.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.rejectedSpans = reader.int64(); + break; + } + case 2: { + message.errorMessage = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportTracePartialSuccess.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportTracePartialSuccess.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.rejectedSpans != null && message.hasOwnProperty("rejectedSpans")) { + if (!$util.isInteger(message.rejectedSpans) && !(message.rejectedSpans && $util.isInteger(message.rejectedSpans.low) && $util.isInteger(message.rejectedSpans.high))) + return "rejectedSpans: integer|Long expected"; + } + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) { + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + } + return null; + }; + ExportTracePartialSuccess.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess) + return object; + var message = new $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess(); + if (object.rejectedSpans != null) { + if ($util.Long) + (message.rejectedSpans = $util.Long.fromValue(object.rejectedSpans)).unsigned = false; + else if (typeof object.rejectedSpans === "string") + message.rejectedSpans = parseInt(object.rejectedSpans, 10); + else if (typeof object.rejectedSpans === "number") + message.rejectedSpans = object.rejectedSpans; + else if (typeof object.rejectedSpans === "object") + message.rejectedSpans = new $util.LongBits(object.rejectedSpans.low >>> 0, object.rejectedSpans.high >>> 0).toNumber(); + } + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + return message; + }; + ExportTracePartialSuccess.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.rejectedSpans = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.rejectedSpans = options2.longs === String ? "0" : 0; + object.errorMessage = ""; + } + if (message.rejectedSpans != null && message.hasOwnProperty("rejectedSpans")) + if (typeof message.rejectedSpans === "number") + object.rejectedSpans = options2.longs === String ? String(message.rejectedSpans) : message.rejectedSpans; + else + object.rejectedSpans = options2.longs === String ? $util.Long.prototype.toString.call(message.rejectedSpans) : options2.longs === Number ? new $util.LongBits(message.rejectedSpans.low >>> 0, message.rejectedSpans.high >>> 0).toNumber() : message.rejectedSpans; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + return object; + }; + ExportTracePartialSuccess.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportTracePartialSuccess.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess"; + }; + return ExportTracePartialSuccess; + }(); + return v1; + }(); + return trace; + }(); + collector.metrics = function() { + var metrics = {}; + metrics.v1 = function() { + var v1 = {}; + v1.MetricsService = function() { + function MetricsService(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + (MetricsService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = MetricsService; + MetricsService.create = function create2(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + Object.defineProperty(MetricsService.prototype["export"] = function export_(request, callback) { + return this.rpcCall(export_, $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest, $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse, request, callback); + }, "name", { value: "Export" }); + return MetricsService; + }(); + v1.ExportMetricsServiceRequest = function() { + function ExportMetricsServiceRequest(properties2) { + this.resourceMetrics = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportMetricsServiceRequest.prototype.resourceMetrics = $util.emptyArray; + ExportMetricsServiceRequest.create = function create2(properties2) { + return new ExportMetricsServiceRequest(properties2); + }; + ExportMetricsServiceRequest.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceMetrics != null && message.resourceMetrics.length) + for (var i = 0; i < message.resourceMetrics.length; ++i) + $root.opentelemetry.proto.metrics.v1.ResourceMetrics.encode(message.resourceMetrics[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportMetricsServiceRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportMetricsServiceRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceMetrics && message.resourceMetrics.length)) + message.resourceMetrics = []; + message.resourceMetrics.push($root.opentelemetry.proto.metrics.v1.ResourceMetrics.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportMetricsServiceRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportMetricsServiceRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceMetrics != null && message.hasOwnProperty("resourceMetrics")) { + if (!Array.isArray(message.resourceMetrics)) + return "resourceMetrics: array expected"; + for (var i = 0; i < message.resourceMetrics.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.verify(message.resourceMetrics[i]); + if (error) + return "resourceMetrics." + error; + } + } + return null; + }; + ExportMetricsServiceRequest.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest) + return object; + var message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest(); + if (object.resourceMetrics) { + if (!Array.isArray(object.resourceMetrics)) + throw TypeError(".opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest.resourceMetrics: array expected"); + message.resourceMetrics = []; + for (var i = 0; i < object.resourceMetrics.length; ++i) { + if (typeof object.resourceMetrics[i] !== "object") + throw TypeError(".opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest.resourceMetrics: object expected"); + message.resourceMetrics[i] = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.fromObject(object.resourceMetrics[i]); + } + } + return message; + }; + ExportMetricsServiceRequest.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceMetrics = []; + if (message.resourceMetrics && message.resourceMetrics.length) { + object.resourceMetrics = []; + for (var j = 0; j < message.resourceMetrics.length; ++j) + object.resourceMetrics[j] = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.toObject(message.resourceMetrics[j], options2); + } + return object; + }; + ExportMetricsServiceRequest.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportMetricsServiceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest"; + }; + return ExportMetricsServiceRequest; + }(); + v1.ExportMetricsServiceResponse = function() { + function ExportMetricsServiceResponse(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportMetricsServiceResponse.prototype.partialSuccess = null; + ExportMetricsServiceResponse.create = function create2(properties2) { + return new ExportMetricsServiceResponse(properties2); + }; + ExportMetricsServiceResponse.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.partialSuccess != null && Object.hasOwnProperty.call(message, "partialSuccess")) + $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess.encode(message.partialSuccess, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportMetricsServiceResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportMetricsServiceResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.partialSuccess = $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportMetricsServiceResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportMetricsServiceResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) { + var error = $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess.verify(message.partialSuccess); + if (error) + return "partialSuccess." + error; + } + return null; + }; + ExportMetricsServiceResponse.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse) + return object; + var message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse(); + if (object.partialSuccess != null) { + if (typeof object.partialSuccess !== "object") + throw TypeError(".opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse.partialSuccess: object expected"); + message.partialSuccess = $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess.fromObject(object.partialSuccess); + } + return message; + }; + ExportMetricsServiceResponse.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) + object.partialSuccess = null; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) + object.partialSuccess = $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess.toObject(message.partialSuccess, options2); + return object; + }; + ExportMetricsServiceResponse.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportMetricsServiceResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse"; + }; + return ExportMetricsServiceResponse; + }(); + v1.ExportMetricsPartialSuccess = function() { + function ExportMetricsPartialSuccess(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportMetricsPartialSuccess.prototype.rejectedDataPoints = null; + ExportMetricsPartialSuccess.prototype.errorMessage = null; + ExportMetricsPartialSuccess.create = function create2(properties2) { + return new ExportMetricsPartialSuccess(properties2); + }; + ExportMetricsPartialSuccess.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.rejectedDataPoints != null && Object.hasOwnProperty.call(message, "rejectedDataPoints")) + writer.uint32( + /* id 1, wireType 0 =*/ + 8 + ).int64(message.rejectedDataPoints); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.errorMessage); + return writer; + }; + ExportMetricsPartialSuccess.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportMetricsPartialSuccess.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.rejectedDataPoints = reader.int64(); + break; + } + case 2: { + message.errorMessage = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportMetricsPartialSuccess.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportMetricsPartialSuccess.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.rejectedDataPoints != null && message.hasOwnProperty("rejectedDataPoints")) { + if (!$util.isInteger(message.rejectedDataPoints) && !(message.rejectedDataPoints && $util.isInteger(message.rejectedDataPoints.low) && $util.isInteger(message.rejectedDataPoints.high))) + return "rejectedDataPoints: integer|Long expected"; + } + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) { + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + } + return null; + }; + ExportMetricsPartialSuccess.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess) + return object; + var message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess(); + if (object.rejectedDataPoints != null) { + if ($util.Long) + (message.rejectedDataPoints = $util.Long.fromValue(object.rejectedDataPoints)).unsigned = false; + else if (typeof object.rejectedDataPoints === "string") + message.rejectedDataPoints = parseInt(object.rejectedDataPoints, 10); + else if (typeof object.rejectedDataPoints === "number") + message.rejectedDataPoints = object.rejectedDataPoints; + else if (typeof object.rejectedDataPoints === "object") + message.rejectedDataPoints = new $util.LongBits(object.rejectedDataPoints.low >>> 0, object.rejectedDataPoints.high >>> 0).toNumber(); + } + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + return message; + }; + ExportMetricsPartialSuccess.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.rejectedDataPoints = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.rejectedDataPoints = options2.longs === String ? "0" : 0; + object.errorMessage = ""; + } + if (message.rejectedDataPoints != null && message.hasOwnProperty("rejectedDataPoints")) + if (typeof message.rejectedDataPoints === "number") + object.rejectedDataPoints = options2.longs === String ? String(message.rejectedDataPoints) : message.rejectedDataPoints; + else + object.rejectedDataPoints = options2.longs === String ? $util.Long.prototype.toString.call(message.rejectedDataPoints) : options2.longs === Number ? new $util.LongBits(message.rejectedDataPoints.low >>> 0, message.rejectedDataPoints.high >>> 0).toNumber() : message.rejectedDataPoints; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + return object; + }; + ExportMetricsPartialSuccess.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportMetricsPartialSuccess.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess"; + }; + return ExportMetricsPartialSuccess; + }(); + return v1; + }(); + return metrics; + }(); + collector.logs = function() { + var logs = {}; + logs.v1 = function() { + var v1 = {}; + v1.LogsService = function() { + function LogsService(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + (LogsService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = LogsService; + LogsService.create = function create2(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + Object.defineProperty(LogsService.prototype["export"] = function export_(request, callback) { + return this.rpcCall(export_, $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest, $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse, request, callback); + }, "name", { value: "Export" }); + return LogsService; + }(); + v1.ExportLogsServiceRequest = function() { + function ExportLogsServiceRequest(properties2) { + this.resourceLogs = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportLogsServiceRequest.prototype.resourceLogs = $util.emptyArray; + ExportLogsServiceRequest.create = function create2(properties2) { + return new ExportLogsServiceRequest(properties2); + }; + ExportLogsServiceRequest.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLogs != null && message.resourceLogs.length) + for (var i = 0; i < message.resourceLogs.length; ++i) + $root.opentelemetry.proto.logs.v1.ResourceLogs.encode(message.resourceLogs[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportLogsServiceRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportLogsServiceRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceLogs && message.resourceLogs.length)) + message.resourceLogs = []; + message.resourceLogs.push($root.opentelemetry.proto.logs.v1.ResourceLogs.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportLogsServiceRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportLogsServiceRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLogs != null && message.hasOwnProperty("resourceLogs")) { + if (!Array.isArray(message.resourceLogs)) + return "resourceLogs: array expected"; + for (var i = 0; i < message.resourceLogs.length; ++i) { + var error = $root.opentelemetry.proto.logs.v1.ResourceLogs.verify(message.resourceLogs[i]); + if (error) + return "resourceLogs." + error; + } + } + return null; + }; + ExportLogsServiceRequest.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest) + return object; + var message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest(); + if (object.resourceLogs) { + if (!Array.isArray(object.resourceLogs)) + throw TypeError(".opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest.resourceLogs: array expected"); + message.resourceLogs = []; + for (var i = 0; i < object.resourceLogs.length; ++i) { + if (typeof object.resourceLogs[i] !== "object") + throw TypeError(".opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest.resourceLogs: object expected"); + message.resourceLogs[i] = $root.opentelemetry.proto.logs.v1.ResourceLogs.fromObject(object.resourceLogs[i]); + } + } + return message; + }; + ExportLogsServiceRequest.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceLogs = []; + if (message.resourceLogs && message.resourceLogs.length) { + object.resourceLogs = []; + for (var j = 0; j < message.resourceLogs.length; ++j) + object.resourceLogs[j] = $root.opentelemetry.proto.logs.v1.ResourceLogs.toObject(message.resourceLogs[j], options2); + } + return object; + }; + ExportLogsServiceRequest.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportLogsServiceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest"; + }; + return ExportLogsServiceRequest; + }(); + v1.ExportLogsServiceResponse = function() { + function ExportLogsServiceResponse(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportLogsServiceResponse.prototype.partialSuccess = null; + ExportLogsServiceResponse.create = function create2(properties2) { + return new ExportLogsServiceResponse(properties2); + }; + ExportLogsServiceResponse.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.partialSuccess != null && Object.hasOwnProperty.call(message, "partialSuccess")) + $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess.encode(message.partialSuccess, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportLogsServiceResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportLogsServiceResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.partialSuccess = $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportLogsServiceResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportLogsServiceResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) { + var error = $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess.verify(message.partialSuccess); + if (error) + return "partialSuccess." + error; + } + return null; + }; + ExportLogsServiceResponse.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse) + return object; + var message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse(); + if (object.partialSuccess != null) { + if (typeof object.partialSuccess !== "object") + throw TypeError(".opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse.partialSuccess: object expected"); + message.partialSuccess = $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess.fromObject(object.partialSuccess); + } + return message; + }; + ExportLogsServiceResponse.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) + object.partialSuccess = null; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) + object.partialSuccess = $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess.toObject(message.partialSuccess, options2); + return object; + }; + ExportLogsServiceResponse.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportLogsServiceResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse"; + }; + return ExportLogsServiceResponse; + }(); + v1.ExportLogsPartialSuccess = function() { + function ExportLogsPartialSuccess(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportLogsPartialSuccess.prototype.rejectedLogRecords = null; + ExportLogsPartialSuccess.prototype.errorMessage = null; + ExportLogsPartialSuccess.create = function create2(properties2) { + return new ExportLogsPartialSuccess(properties2); + }; + ExportLogsPartialSuccess.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.rejectedLogRecords != null && Object.hasOwnProperty.call(message, "rejectedLogRecords")) + writer.uint32( + /* id 1, wireType 0 =*/ + 8 + ).int64(message.rejectedLogRecords); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.errorMessage); + return writer; + }; + ExportLogsPartialSuccess.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportLogsPartialSuccess.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.rejectedLogRecords = reader.int64(); + break; + } + case 2: { + message.errorMessage = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportLogsPartialSuccess.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportLogsPartialSuccess.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.rejectedLogRecords != null && message.hasOwnProperty("rejectedLogRecords")) { + if (!$util.isInteger(message.rejectedLogRecords) && !(message.rejectedLogRecords && $util.isInteger(message.rejectedLogRecords.low) && $util.isInteger(message.rejectedLogRecords.high))) + return "rejectedLogRecords: integer|Long expected"; + } + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) { + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + } + return null; + }; + ExportLogsPartialSuccess.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess) + return object; + var message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess(); + if (object.rejectedLogRecords != null) { + if ($util.Long) + (message.rejectedLogRecords = $util.Long.fromValue(object.rejectedLogRecords)).unsigned = false; + else if (typeof object.rejectedLogRecords === "string") + message.rejectedLogRecords = parseInt(object.rejectedLogRecords, 10); + else if (typeof object.rejectedLogRecords === "number") + message.rejectedLogRecords = object.rejectedLogRecords; + else if (typeof object.rejectedLogRecords === "object") + message.rejectedLogRecords = new $util.LongBits(object.rejectedLogRecords.low >>> 0, object.rejectedLogRecords.high >>> 0).toNumber(); + } + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + return message; + }; + ExportLogsPartialSuccess.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.rejectedLogRecords = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.rejectedLogRecords = options2.longs === String ? "0" : 0; + object.errorMessage = ""; + } + if (message.rejectedLogRecords != null && message.hasOwnProperty("rejectedLogRecords")) + if (typeof message.rejectedLogRecords === "number") + object.rejectedLogRecords = options2.longs === String ? String(message.rejectedLogRecords) : message.rejectedLogRecords; + else + object.rejectedLogRecords = options2.longs === String ? $util.Long.prototype.toString.call(message.rejectedLogRecords) : options2.longs === Number ? new $util.LongBits(message.rejectedLogRecords.low >>> 0, message.rejectedLogRecords.high >>> 0).toNumber() : message.rejectedLogRecords; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + return object; + }; + ExportLogsPartialSuccess.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportLogsPartialSuccess.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess"; + }; + return ExportLogsPartialSuccess; + }(); + return v1; + }(); + return logs; + }(); + return collector; + }(); + proto.metrics = function() { + var metrics = {}; + metrics.v1 = function() { + var v1 = {}; + v1.MetricsData = function() { + function MetricsData(properties2) { + this.resourceMetrics = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + MetricsData.prototype.resourceMetrics = $util.emptyArray; + MetricsData.create = function create2(properties2) { + return new MetricsData(properties2); + }; + MetricsData.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceMetrics != null && message.resourceMetrics.length) + for (var i = 0; i < message.resourceMetrics.length; ++i) + $root.opentelemetry.proto.metrics.v1.ResourceMetrics.encode(message.resourceMetrics[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + MetricsData.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + MetricsData.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.MetricsData(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceMetrics && message.resourceMetrics.length)) + message.resourceMetrics = []; + message.resourceMetrics.push($root.opentelemetry.proto.metrics.v1.ResourceMetrics.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + MetricsData.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + MetricsData.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceMetrics != null && message.hasOwnProperty("resourceMetrics")) { + if (!Array.isArray(message.resourceMetrics)) + return "resourceMetrics: array expected"; + for (var i = 0; i < message.resourceMetrics.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.verify(message.resourceMetrics[i]); + if (error) + return "resourceMetrics." + error; + } + } + return null; + }; + MetricsData.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.MetricsData) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.MetricsData(); + if (object.resourceMetrics) { + if (!Array.isArray(object.resourceMetrics)) + throw TypeError(".opentelemetry.proto.metrics.v1.MetricsData.resourceMetrics: array expected"); + message.resourceMetrics = []; + for (var i = 0; i < object.resourceMetrics.length; ++i) { + if (typeof object.resourceMetrics[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.MetricsData.resourceMetrics: object expected"); + message.resourceMetrics[i] = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.fromObject(object.resourceMetrics[i]); + } + } + return message; + }; + MetricsData.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceMetrics = []; + if (message.resourceMetrics && message.resourceMetrics.length) { + object.resourceMetrics = []; + for (var j = 0; j < message.resourceMetrics.length; ++j) + object.resourceMetrics[j] = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.toObject(message.resourceMetrics[j], options2); + } + return object; + }; + MetricsData.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + MetricsData.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.MetricsData"; + }; + return MetricsData; + }(); + v1.ResourceMetrics = function() { + function ResourceMetrics(properties2) { + this.scopeMetrics = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ResourceMetrics.prototype.resource = null; + ResourceMetrics.prototype.scopeMetrics = $util.emptyArray; + ResourceMetrics.prototype.schemaUrl = null; + ResourceMetrics.create = function create2(properties2) { + return new ResourceMetrics(properties2); + }; + ResourceMetrics.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.opentelemetry.proto.resource.v1.Resource.encode(message.resource, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.scopeMetrics != null && message.scopeMetrics.length) + for (var i = 0; i < message.scopeMetrics.length; ++i) + $root.opentelemetry.proto.metrics.v1.ScopeMetrics.encode(message.scopeMetrics[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ResourceMetrics.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ResourceMetrics.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.ResourceMetrics(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.resource = $root.opentelemetry.proto.resource.v1.Resource.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.scopeMetrics && message.scopeMetrics.length)) + message.scopeMetrics = []; + message.scopeMetrics.push($root.opentelemetry.proto.metrics.v1.ScopeMetrics.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ResourceMetrics.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ResourceMetrics.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.opentelemetry.proto.resource.v1.Resource.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.scopeMetrics != null && message.hasOwnProperty("scopeMetrics")) { + if (!Array.isArray(message.scopeMetrics)) + return "scopeMetrics: array expected"; + for (var i = 0; i < message.scopeMetrics.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.ScopeMetrics.verify(message.scopeMetrics[i]); + if (error) + return "scopeMetrics." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ResourceMetrics.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.ResourceMetrics) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.ResourceMetrics(); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ResourceMetrics.resource: object expected"); + message.resource = $root.opentelemetry.proto.resource.v1.Resource.fromObject(object.resource); + } + if (object.scopeMetrics) { + if (!Array.isArray(object.scopeMetrics)) + throw TypeError(".opentelemetry.proto.metrics.v1.ResourceMetrics.scopeMetrics: array expected"); + message.scopeMetrics = []; + for (var i = 0; i < object.scopeMetrics.length; ++i) { + if (typeof object.scopeMetrics[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ResourceMetrics.scopeMetrics: object expected"); + message.scopeMetrics[i] = $root.opentelemetry.proto.metrics.v1.ScopeMetrics.fromObject(object.scopeMetrics[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ResourceMetrics.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.scopeMetrics = []; + if (options2.defaults) { + object.resource = null; + object.schemaUrl = ""; + } + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.opentelemetry.proto.resource.v1.Resource.toObject(message.resource, options2); + if (message.scopeMetrics && message.scopeMetrics.length) { + object.scopeMetrics = []; + for (var j = 0; j < message.scopeMetrics.length; ++j) + object.scopeMetrics[j] = $root.opentelemetry.proto.metrics.v1.ScopeMetrics.toObject(message.scopeMetrics[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ResourceMetrics.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ResourceMetrics.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.ResourceMetrics"; + }; + return ResourceMetrics; + }(); + v1.ScopeMetrics = function() { + function ScopeMetrics(properties2) { + this.metrics = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ScopeMetrics.prototype.scope = null; + ScopeMetrics.prototype.metrics = $util.emptyArray; + ScopeMetrics.prototype.schemaUrl = null; + ScopeMetrics.create = function create2(properties2) { + return new ScopeMetrics(properties2); + }; + ScopeMetrics.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.scope != null && Object.hasOwnProperty.call(message, "scope")) + $root.opentelemetry.proto.common.v1.InstrumentationScope.encode(message.scope, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.metrics != null && message.metrics.length) + for (var i = 0; i < message.metrics.length; ++i) + $root.opentelemetry.proto.metrics.v1.Metric.encode(message.metrics[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ScopeMetrics.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ScopeMetrics.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.ScopeMetrics(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.metrics && message.metrics.length)) + message.metrics = []; + message.metrics.push($root.opentelemetry.proto.metrics.v1.Metric.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ScopeMetrics.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ScopeMetrics.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.scope != null && message.hasOwnProperty("scope")) { + var error = $root.opentelemetry.proto.common.v1.InstrumentationScope.verify(message.scope); + if (error) + return "scope." + error; + } + if (message.metrics != null && message.hasOwnProperty("metrics")) { + if (!Array.isArray(message.metrics)) + return "metrics: array expected"; + for (var i = 0; i < message.metrics.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.Metric.verify(message.metrics[i]); + if (error) + return "metrics." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ScopeMetrics.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.ScopeMetrics) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.ScopeMetrics(); + if (object.scope != null) { + if (typeof object.scope !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ScopeMetrics.scope: object expected"); + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.fromObject(object.scope); + } + if (object.metrics) { + if (!Array.isArray(object.metrics)) + throw TypeError(".opentelemetry.proto.metrics.v1.ScopeMetrics.metrics: array expected"); + message.metrics = []; + for (var i = 0; i < object.metrics.length; ++i) { + if (typeof object.metrics[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ScopeMetrics.metrics: object expected"); + message.metrics[i] = $root.opentelemetry.proto.metrics.v1.Metric.fromObject(object.metrics[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ScopeMetrics.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.metrics = []; + if (options2.defaults) { + object.scope = null; + object.schemaUrl = ""; + } + if (message.scope != null && message.hasOwnProperty("scope")) + object.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.toObject(message.scope, options2); + if (message.metrics && message.metrics.length) { + object.metrics = []; + for (var j = 0; j < message.metrics.length; ++j) + object.metrics[j] = $root.opentelemetry.proto.metrics.v1.Metric.toObject(message.metrics[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ScopeMetrics.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ScopeMetrics.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.ScopeMetrics"; + }; + return ScopeMetrics; + }(); + v1.Metric = function() { + function Metric(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Metric.prototype.name = null; + Metric.prototype.description = null; + Metric.prototype.unit = null; + Metric.prototype.gauge = null; + Metric.prototype.sum = null; + Metric.prototype.histogram = null; + Metric.prototype.exponentialHistogram = null; + Metric.prototype.summary = null; + var $oneOfFields; + Object.defineProperty(Metric.prototype, "data", { + get: $util.oneOfGetter($oneOfFields = ["gauge", "sum", "histogram", "exponentialHistogram", "summary"]), + set: $util.oneOfSetter($oneOfFields) + }); + Metric.create = function create2(properties2) { + return new Metric(properties2); + }; + Metric.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).string(message.name); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.description); + if (message.unit != null && Object.hasOwnProperty.call(message, "unit")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.unit); + if (message.gauge != null && Object.hasOwnProperty.call(message, "gauge")) + $root.opentelemetry.proto.metrics.v1.Gauge.encode(message.gauge, writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).fork()).ldelim(); + if (message.sum != null && Object.hasOwnProperty.call(message, "sum")) + $root.opentelemetry.proto.metrics.v1.Sum.encode(message.sum, writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).fork()).ldelim(); + if (message.histogram != null && Object.hasOwnProperty.call(message, "histogram")) + $root.opentelemetry.proto.metrics.v1.Histogram.encode(message.histogram, writer.uint32( + /* id 9, wireType 2 =*/ + 74 + ).fork()).ldelim(); + if (message.exponentialHistogram != null && Object.hasOwnProperty.call(message, "exponentialHistogram")) + $root.opentelemetry.proto.metrics.v1.ExponentialHistogram.encode(message.exponentialHistogram, writer.uint32( + /* id 10, wireType 2 =*/ + 82 + ).fork()).ldelim(); + if (message.summary != null && Object.hasOwnProperty.call(message, "summary")) + $root.opentelemetry.proto.metrics.v1.Summary.encode(message.summary, writer.uint32( + /* id 11, wireType 2 =*/ + 90 + ).fork()).ldelim(); + return writer; + }; + Metric.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Metric.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Metric(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.description = reader.string(); + break; + } + case 3: { + message.unit = reader.string(); + break; + } + case 5: { + message.gauge = $root.opentelemetry.proto.metrics.v1.Gauge.decode(reader, reader.uint32()); + break; + } + case 7: { + message.sum = $root.opentelemetry.proto.metrics.v1.Sum.decode(reader, reader.uint32()); + break; + } + case 9: { + message.histogram = $root.opentelemetry.proto.metrics.v1.Histogram.decode(reader, reader.uint32()); + break; + } + case 10: { + message.exponentialHistogram = $root.opentelemetry.proto.metrics.v1.ExponentialHistogram.decode(reader, reader.uint32()); + break; + } + case 11: { + message.summary = $root.opentelemetry.proto.metrics.v1.Summary.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Metric.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Metric.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.name != null && message.hasOwnProperty("name")) { + if (!$util.isString(message.name)) + return "name: string expected"; + } + if (message.description != null && message.hasOwnProperty("description")) { + if (!$util.isString(message.description)) + return "description: string expected"; + } + if (message.unit != null && message.hasOwnProperty("unit")) { + if (!$util.isString(message.unit)) + return "unit: string expected"; + } + if (message.gauge != null && message.hasOwnProperty("gauge")) { + properties2.data = 1; + { + var error = $root.opentelemetry.proto.metrics.v1.Gauge.verify(message.gauge); + if (error) + return "gauge." + error; + } + } + if (message.sum != null && message.hasOwnProperty("sum")) { + if (properties2.data === 1) + return "data: multiple values"; + properties2.data = 1; + { + var error = $root.opentelemetry.proto.metrics.v1.Sum.verify(message.sum); + if (error) + return "sum." + error; + } + } + if (message.histogram != null && message.hasOwnProperty("histogram")) { + if (properties2.data === 1) + return "data: multiple values"; + properties2.data = 1; + { + var error = $root.opentelemetry.proto.metrics.v1.Histogram.verify(message.histogram); + if (error) + return "histogram." + error; + } + } + if (message.exponentialHistogram != null && message.hasOwnProperty("exponentialHistogram")) { + if (properties2.data === 1) + return "data: multiple values"; + properties2.data = 1; + { + var error = $root.opentelemetry.proto.metrics.v1.ExponentialHistogram.verify(message.exponentialHistogram); + if (error) + return "exponentialHistogram." + error; + } + } + if (message.summary != null && message.hasOwnProperty("summary")) { + if (properties2.data === 1) + return "data: multiple values"; + properties2.data = 1; + { + var error = $root.opentelemetry.proto.metrics.v1.Summary.verify(message.summary); + if (error) + return "summary." + error; + } + } + return null; + }; + Metric.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Metric) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Metric(); + if (object.name != null) + message.name = String(object.name); + if (object.description != null) + message.description = String(object.description); + if (object.unit != null) + message.unit = String(object.unit); + if (object.gauge != null) { + if (typeof object.gauge !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Metric.gauge: object expected"); + message.gauge = $root.opentelemetry.proto.metrics.v1.Gauge.fromObject(object.gauge); + } + if (object.sum != null) { + if (typeof object.sum !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Metric.sum: object expected"); + message.sum = $root.opentelemetry.proto.metrics.v1.Sum.fromObject(object.sum); + } + if (object.histogram != null) { + if (typeof object.histogram !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Metric.histogram: object expected"); + message.histogram = $root.opentelemetry.proto.metrics.v1.Histogram.fromObject(object.histogram); + } + if (object.exponentialHistogram != null) { + if (typeof object.exponentialHistogram !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Metric.exponentialHistogram: object expected"); + message.exponentialHistogram = $root.opentelemetry.proto.metrics.v1.ExponentialHistogram.fromObject(object.exponentialHistogram); + } + if (object.summary != null) { + if (typeof object.summary !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Metric.summary: object expected"); + message.summary = $root.opentelemetry.proto.metrics.v1.Summary.fromObject(object.summary); + } + return message; + }; + Metric.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + object.name = ""; + object.description = ""; + object.unit = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.unit != null && message.hasOwnProperty("unit")) + object.unit = message.unit; + if (message.gauge != null && message.hasOwnProperty("gauge")) { + object.gauge = $root.opentelemetry.proto.metrics.v1.Gauge.toObject(message.gauge, options2); + if (options2.oneofs) + object.data = "gauge"; + } + if (message.sum != null && message.hasOwnProperty("sum")) { + object.sum = $root.opentelemetry.proto.metrics.v1.Sum.toObject(message.sum, options2); + if (options2.oneofs) + object.data = "sum"; + } + if (message.histogram != null && message.hasOwnProperty("histogram")) { + object.histogram = $root.opentelemetry.proto.metrics.v1.Histogram.toObject(message.histogram, options2); + if (options2.oneofs) + object.data = "histogram"; + } + if (message.exponentialHistogram != null && message.hasOwnProperty("exponentialHistogram")) { + object.exponentialHistogram = $root.opentelemetry.proto.metrics.v1.ExponentialHistogram.toObject(message.exponentialHistogram, options2); + if (options2.oneofs) + object.data = "exponentialHistogram"; + } + if (message.summary != null && message.hasOwnProperty("summary")) { + object.summary = $root.opentelemetry.proto.metrics.v1.Summary.toObject(message.summary, options2); + if (options2.oneofs) + object.data = "summary"; + } + return object; + }; + Metric.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Metric.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Metric"; + }; + return Metric; + }(); + v1.Gauge = function() { + function Gauge(properties2) { + this.dataPoints = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Gauge.prototype.dataPoints = $util.emptyArray; + Gauge.create = function create2(properties2) { + return new Gauge(properties2); + }; + Gauge.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataPoints != null && message.dataPoints.length) + for (var i = 0; i < message.dataPoints.length; ++i) + $root.opentelemetry.proto.metrics.v1.NumberDataPoint.encode(message.dataPoints[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + Gauge.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Gauge.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Gauge(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.dataPoints && message.dataPoints.length)) + message.dataPoints = []; + message.dataPoints.push($root.opentelemetry.proto.metrics.v1.NumberDataPoint.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Gauge.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Gauge.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataPoints != null && message.hasOwnProperty("dataPoints")) { + if (!Array.isArray(message.dataPoints)) + return "dataPoints: array expected"; + for (var i = 0; i < message.dataPoints.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.verify(message.dataPoints[i]); + if (error) + return "dataPoints." + error; + } + } + return null; + }; + Gauge.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Gauge) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Gauge(); + if (object.dataPoints) { + if (!Array.isArray(object.dataPoints)) + throw TypeError(".opentelemetry.proto.metrics.v1.Gauge.dataPoints: array expected"); + message.dataPoints = []; + for (var i = 0; i < object.dataPoints.length; ++i) { + if (typeof object.dataPoints[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Gauge.dataPoints: object expected"); + message.dataPoints[i] = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.fromObject(object.dataPoints[i]); + } + } + return message; + }; + Gauge.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.dataPoints = []; + if (message.dataPoints && message.dataPoints.length) { + object.dataPoints = []; + for (var j = 0; j < message.dataPoints.length; ++j) + object.dataPoints[j] = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.toObject(message.dataPoints[j], options2); + } + return object; + }; + Gauge.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Gauge.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Gauge"; + }; + return Gauge; + }(); + v1.Sum = function() { + function Sum(properties2) { + this.dataPoints = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Sum.prototype.dataPoints = $util.emptyArray; + Sum.prototype.aggregationTemporality = null; + Sum.prototype.isMonotonic = null; + Sum.create = function create2(properties2) { + return new Sum(properties2); + }; + Sum.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataPoints != null && message.dataPoints.length) + for (var i = 0; i < message.dataPoints.length; ++i) + $root.opentelemetry.proto.metrics.v1.NumberDataPoint.encode(message.dataPoints[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.aggregationTemporality != null && Object.hasOwnProperty.call(message, "aggregationTemporality")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).int32(message.aggregationTemporality); + if (message.isMonotonic != null && Object.hasOwnProperty.call(message, "isMonotonic")) + writer.uint32( + /* id 3, wireType 0 =*/ + 24 + ).bool(message.isMonotonic); + return writer; + }; + Sum.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Sum.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Sum(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.dataPoints && message.dataPoints.length)) + message.dataPoints = []; + message.dataPoints.push($root.opentelemetry.proto.metrics.v1.NumberDataPoint.decode(reader, reader.uint32())); + break; + } + case 2: { + message.aggregationTemporality = reader.int32(); + break; + } + case 3: { + message.isMonotonic = reader.bool(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Sum.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Sum.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataPoints != null && message.hasOwnProperty("dataPoints")) { + if (!Array.isArray(message.dataPoints)) + return "dataPoints: array expected"; + for (var i = 0; i < message.dataPoints.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.verify(message.dataPoints[i]); + if (error) + return "dataPoints." + error; + } + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + switch (message.aggregationTemporality) { + default: + return "aggregationTemporality: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.isMonotonic != null && message.hasOwnProperty("isMonotonic")) { + if (typeof message.isMonotonic !== "boolean") + return "isMonotonic: boolean expected"; + } + return null; + }; + Sum.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Sum) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Sum(); + if (object.dataPoints) { + if (!Array.isArray(object.dataPoints)) + throw TypeError(".opentelemetry.proto.metrics.v1.Sum.dataPoints: array expected"); + message.dataPoints = []; + for (var i = 0; i < object.dataPoints.length; ++i) { + if (typeof object.dataPoints[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Sum.dataPoints: object expected"); + message.dataPoints[i] = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.fromObject(object.dataPoints[i]); + } + } + switch (object.aggregationTemporality) { + default: + if (typeof object.aggregationTemporality === "number") { + message.aggregationTemporality = object.aggregationTemporality; + break; + } + break; + case "AGGREGATION_TEMPORALITY_UNSPECIFIED": + case 0: + message.aggregationTemporality = 0; + break; + case "AGGREGATION_TEMPORALITY_DELTA": + case 1: + message.aggregationTemporality = 1; + break; + case "AGGREGATION_TEMPORALITY_CUMULATIVE": + case 2: + message.aggregationTemporality = 2; + break; + } + if (object.isMonotonic != null) + message.isMonotonic = Boolean(object.isMonotonic); + return message; + }; + Sum.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.dataPoints = []; + if (options2.defaults) { + object.aggregationTemporality = options2.enums === String ? "AGGREGATION_TEMPORALITY_UNSPECIFIED" : 0; + object.isMonotonic = false; + } + if (message.dataPoints && message.dataPoints.length) { + object.dataPoints = []; + for (var j = 0; j < message.dataPoints.length; ++j) + object.dataPoints[j] = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.toObject(message.dataPoints[j], options2); + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + object.aggregationTemporality = options2.enums === String ? $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] === void 0 ? message.aggregationTemporality : $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] : message.aggregationTemporality; + if (message.isMonotonic != null && message.hasOwnProperty("isMonotonic")) + object.isMonotonic = message.isMonotonic; + return object; + }; + Sum.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Sum.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Sum"; + }; + return Sum; + }(); + v1.Histogram = function() { + function Histogram(properties2) { + this.dataPoints = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Histogram.prototype.dataPoints = $util.emptyArray; + Histogram.prototype.aggregationTemporality = null; + Histogram.create = function create2(properties2) { + return new Histogram(properties2); + }; + Histogram.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataPoints != null && message.dataPoints.length) + for (var i = 0; i < message.dataPoints.length; ++i) + $root.opentelemetry.proto.metrics.v1.HistogramDataPoint.encode(message.dataPoints[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.aggregationTemporality != null && Object.hasOwnProperty.call(message, "aggregationTemporality")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).int32(message.aggregationTemporality); + return writer; + }; + Histogram.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Histogram.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Histogram(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.dataPoints && message.dataPoints.length)) + message.dataPoints = []; + message.dataPoints.push($root.opentelemetry.proto.metrics.v1.HistogramDataPoint.decode(reader, reader.uint32())); + break; + } + case 2: { + message.aggregationTemporality = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Histogram.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Histogram.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataPoints != null && message.hasOwnProperty("dataPoints")) { + if (!Array.isArray(message.dataPoints)) + return "dataPoints: array expected"; + for (var i = 0; i < message.dataPoints.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.HistogramDataPoint.verify(message.dataPoints[i]); + if (error) + return "dataPoints." + error; + } + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + switch (message.aggregationTemporality) { + default: + return "aggregationTemporality: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + Histogram.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Histogram) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Histogram(); + if (object.dataPoints) { + if (!Array.isArray(object.dataPoints)) + throw TypeError(".opentelemetry.proto.metrics.v1.Histogram.dataPoints: array expected"); + message.dataPoints = []; + for (var i = 0; i < object.dataPoints.length; ++i) { + if (typeof object.dataPoints[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Histogram.dataPoints: object expected"); + message.dataPoints[i] = $root.opentelemetry.proto.metrics.v1.HistogramDataPoint.fromObject(object.dataPoints[i]); + } + } + switch (object.aggregationTemporality) { + default: + if (typeof object.aggregationTemporality === "number") { + message.aggregationTemporality = object.aggregationTemporality; + break; + } + break; + case "AGGREGATION_TEMPORALITY_UNSPECIFIED": + case 0: + message.aggregationTemporality = 0; + break; + case "AGGREGATION_TEMPORALITY_DELTA": + case 1: + message.aggregationTemporality = 1; + break; + case "AGGREGATION_TEMPORALITY_CUMULATIVE": + case 2: + message.aggregationTemporality = 2; + break; + } + return message; + }; + Histogram.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.dataPoints = []; + if (options2.defaults) + object.aggregationTemporality = options2.enums === String ? "AGGREGATION_TEMPORALITY_UNSPECIFIED" : 0; + if (message.dataPoints && message.dataPoints.length) { + object.dataPoints = []; + for (var j = 0; j < message.dataPoints.length; ++j) + object.dataPoints[j] = $root.opentelemetry.proto.metrics.v1.HistogramDataPoint.toObject(message.dataPoints[j], options2); + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + object.aggregationTemporality = options2.enums === String ? $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] === void 0 ? message.aggregationTemporality : $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] : message.aggregationTemporality; + return object; + }; + Histogram.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Histogram.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Histogram"; + }; + return Histogram; + }(); + v1.ExponentialHistogram = function() { + function ExponentialHistogram(properties2) { + this.dataPoints = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExponentialHistogram.prototype.dataPoints = $util.emptyArray; + ExponentialHistogram.prototype.aggregationTemporality = null; + ExponentialHistogram.create = function create2(properties2) { + return new ExponentialHistogram(properties2); + }; + ExponentialHistogram.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataPoints != null && message.dataPoints.length) + for (var i = 0; i < message.dataPoints.length; ++i) + $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.encode(message.dataPoints[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.aggregationTemporality != null && Object.hasOwnProperty.call(message, "aggregationTemporality")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).int32(message.aggregationTemporality); + return writer; + }; + ExponentialHistogram.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExponentialHistogram.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogram(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.dataPoints && message.dataPoints.length)) + message.dataPoints = []; + message.dataPoints.push($root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.decode(reader, reader.uint32())); + break; + } + case 2: { + message.aggregationTemporality = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExponentialHistogram.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExponentialHistogram.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataPoints != null && message.hasOwnProperty("dataPoints")) { + if (!Array.isArray(message.dataPoints)) + return "dataPoints: array expected"; + for (var i = 0; i < message.dataPoints.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.verify(message.dataPoints[i]); + if (error) + return "dataPoints." + error; + } + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + switch (message.aggregationTemporality) { + default: + return "aggregationTemporality: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + ExponentialHistogram.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.ExponentialHistogram) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogram(); + if (object.dataPoints) { + if (!Array.isArray(object.dataPoints)) + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogram.dataPoints: array expected"); + message.dataPoints = []; + for (var i = 0; i < object.dataPoints.length; ++i) { + if (typeof object.dataPoints[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogram.dataPoints: object expected"); + message.dataPoints[i] = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.fromObject(object.dataPoints[i]); + } + } + switch (object.aggregationTemporality) { + default: + if (typeof object.aggregationTemporality === "number") { + message.aggregationTemporality = object.aggregationTemporality; + break; + } + break; + case "AGGREGATION_TEMPORALITY_UNSPECIFIED": + case 0: + message.aggregationTemporality = 0; + break; + case "AGGREGATION_TEMPORALITY_DELTA": + case 1: + message.aggregationTemporality = 1; + break; + case "AGGREGATION_TEMPORALITY_CUMULATIVE": + case 2: + message.aggregationTemporality = 2; + break; + } + return message; + }; + ExponentialHistogram.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.dataPoints = []; + if (options2.defaults) + object.aggregationTemporality = options2.enums === String ? "AGGREGATION_TEMPORALITY_UNSPECIFIED" : 0; + if (message.dataPoints && message.dataPoints.length) { + object.dataPoints = []; + for (var j = 0; j < message.dataPoints.length; ++j) + object.dataPoints[j] = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.toObject(message.dataPoints[j], options2); + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + object.aggregationTemporality = options2.enums === String ? $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] === void 0 ? message.aggregationTemporality : $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] : message.aggregationTemporality; + return object; + }; + ExponentialHistogram.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExponentialHistogram.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.ExponentialHistogram"; + }; + return ExponentialHistogram; + }(); + v1.Summary = function() { + function Summary(properties2) { + this.dataPoints = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Summary.prototype.dataPoints = $util.emptyArray; + Summary.create = function create2(properties2) { + return new Summary(properties2); + }; + Summary.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataPoints != null && message.dataPoints.length) + for (var i = 0; i < message.dataPoints.length; ++i) + $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.encode(message.dataPoints[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + Summary.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Summary.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Summary(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.dataPoints && message.dataPoints.length)) + message.dataPoints = []; + message.dataPoints.push($root.opentelemetry.proto.metrics.v1.SummaryDataPoint.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Summary.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Summary.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataPoints != null && message.hasOwnProperty("dataPoints")) { + if (!Array.isArray(message.dataPoints)) + return "dataPoints: array expected"; + for (var i = 0; i < message.dataPoints.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.verify(message.dataPoints[i]); + if (error) + return "dataPoints." + error; + } + } + return null; + }; + Summary.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Summary) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Summary(); + if (object.dataPoints) { + if (!Array.isArray(object.dataPoints)) + throw TypeError(".opentelemetry.proto.metrics.v1.Summary.dataPoints: array expected"); + message.dataPoints = []; + for (var i = 0; i < object.dataPoints.length; ++i) { + if (typeof object.dataPoints[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Summary.dataPoints: object expected"); + message.dataPoints[i] = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.fromObject(object.dataPoints[i]); + } + } + return message; + }; + Summary.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.dataPoints = []; + if (message.dataPoints && message.dataPoints.length) { + object.dataPoints = []; + for (var j = 0; j < message.dataPoints.length; ++j) + object.dataPoints[j] = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.toObject(message.dataPoints[j], options2); + } + return object; + }; + Summary.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Summary.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Summary"; + }; + return Summary; + }(); + v1.AggregationTemporality = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "AGGREGATION_TEMPORALITY_UNSPECIFIED"] = 0; + values[valuesById[1] = "AGGREGATION_TEMPORALITY_DELTA"] = 1; + values[valuesById[2] = "AGGREGATION_TEMPORALITY_CUMULATIVE"] = 2; + return values; + }(); + v1.DataPointFlags = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "DATA_POINT_FLAGS_DO_NOT_USE"] = 0; + values[valuesById[1] = "DATA_POINT_FLAGS_NO_RECORDED_VALUE_MASK"] = 1; + return values; + }(); + v1.NumberDataPoint = function() { + function NumberDataPoint(properties2) { + this.attributes = []; + this.exemplars = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + NumberDataPoint.prototype.attributes = $util.emptyArray; + NumberDataPoint.prototype.startTimeUnixNano = null; + NumberDataPoint.prototype.timeUnixNano = null; + NumberDataPoint.prototype.asDouble = null; + NumberDataPoint.prototype.asInt = null; + NumberDataPoint.prototype.exemplars = $util.emptyArray; + NumberDataPoint.prototype.flags = null; + var $oneOfFields; + Object.defineProperty(NumberDataPoint.prototype, "value", { + get: $util.oneOfGetter($oneOfFields = ["asDouble", "asInt"]), + set: $util.oneOfSetter($oneOfFields) + }); + NumberDataPoint.create = function create2(properties2) { + return new NumberDataPoint(properties2); + }; + NumberDataPoint.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.startTimeUnixNano != null && Object.hasOwnProperty.call(message, "startTimeUnixNano")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).fixed64(message.startTimeUnixNano); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 3, wireType 1 =*/ + 25 + ).fixed64(message.timeUnixNano); + if (message.asDouble != null && Object.hasOwnProperty.call(message, "asDouble")) + writer.uint32( + /* id 4, wireType 1 =*/ + 33 + ).double(message.asDouble); + if (message.exemplars != null && message.exemplars.length) + for (var i = 0; i < message.exemplars.length; ++i) + $root.opentelemetry.proto.metrics.v1.Exemplar.encode(message.exemplars[i], writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).fork()).ldelim(); + if (message.asInt != null && Object.hasOwnProperty.call(message, "asInt")) + writer.uint32( + /* id 6, wireType 1 =*/ + 49 + ).sfixed64(message.asInt); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).fork()).ldelim(); + if (message.flags != null && Object.hasOwnProperty.call(message, "flags")) + writer.uint32( + /* id 8, wireType 0 =*/ + 64 + ).uint32(message.flags); + return writer; + }; + NumberDataPoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + NumberDataPoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.NumberDataPoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 7: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.startTimeUnixNano = reader.fixed64(); + break; + } + case 3: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 4: { + message.asDouble = reader.double(); + break; + } + case 6: { + message.asInt = reader.sfixed64(); + break; + } + case 5: { + if (!(message.exemplars && message.exemplars.length)) + message.exemplars = []; + message.exemplars.push($root.opentelemetry.proto.metrics.v1.Exemplar.decode(reader, reader.uint32())); + break; + } + case 8: { + message.flags = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + NumberDataPoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + NumberDataPoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) { + if (!$util.isInteger(message.startTimeUnixNano) && !(message.startTimeUnixNano && $util.isInteger(message.startTimeUnixNano.low) && $util.isInteger(message.startTimeUnixNano.high))) + return "startTimeUnixNano: integer|Long expected"; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.asDouble != null && message.hasOwnProperty("asDouble")) { + properties2.value = 1; + if (typeof message.asDouble !== "number") + return "asDouble: number expected"; + } + if (message.asInt != null && message.hasOwnProperty("asInt")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (!$util.isInteger(message.asInt) && !(message.asInt && $util.isInteger(message.asInt.low) && $util.isInteger(message.asInt.high))) + return "asInt: integer|Long expected"; + } + if (message.exemplars != null && message.hasOwnProperty("exemplars")) { + if (!Array.isArray(message.exemplars)) + return "exemplars: array expected"; + for (var i = 0; i < message.exemplars.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.Exemplar.verify(message.exemplars[i]); + if (error) + return "exemplars." + error; + } + } + if (message.flags != null && message.hasOwnProperty("flags")) { + if (!$util.isInteger(message.flags)) + return "flags: integer expected"; + } + return null; + }; + NumberDataPoint.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.NumberDataPoint) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.NumberDataPoint(); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.metrics.v1.NumberDataPoint.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.NumberDataPoint.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.startTimeUnixNano != null) { + if ($util.Long) + (message.startTimeUnixNano = $util.Long.fromValue(object.startTimeUnixNano)).unsigned = false; + else if (typeof object.startTimeUnixNano === "string") + message.startTimeUnixNano = parseInt(object.startTimeUnixNano, 10); + else if (typeof object.startTimeUnixNano === "number") + message.startTimeUnixNano = object.startTimeUnixNano; + else if (typeof object.startTimeUnixNano === "object") + message.startTimeUnixNano = new $util.LongBits(object.startTimeUnixNano.low >>> 0, object.startTimeUnixNano.high >>> 0).toNumber(); + } + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.asDouble != null) + message.asDouble = Number(object.asDouble); + if (object.asInt != null) { + if ($util.Long) + (message.asInt = $util.Long.fromValue(object.asInt)).unsigned = false; + else if (typeof object.asInt === "string") + message.asInt = parseInt(object.asInt, 10); + else if (typeof object.asInt === "number") + message.asInt = object.asInt; + else if (typeof object.asInt === "object") + message.asInt = new $util.LongBits(object.asInt.low >>> 0, object.asInt.high >>> 0).toNumber(); + } + if (object.exemplars) { + if (!Array.isArray(object.exemplars)) + throw TypeError(".opentelemetry.proto.metrics.v1.NumberDataPoint.exemplars: array expected"); + message.exemplars = []; + for (var i = 0; i < object.exemplars.length; ++i) { + if (typeof object.exemplars[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.NumberDataPoint.exemplars: object expected"); + message.exemplars[i] = $root.opentelemetry.proto.metrics.v1.Exemplar.fromObject(object.exemplars[i]); + } + } + if (object.flags != null) + message.flags = object.flags >>> 0; + return message; + }; + NumberDataPoint.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) { + object.exemplars = []; + object.attributes = []; + } + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.startTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.startTimeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + object.flags = 0; + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) + if (typeof message.startTimeUnixNano === "number") + object.startTimeUnixNano = options2.longs === String ? String(message.startTimeUnixNano) : message.startTimeUnixNano; + else + object.startTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.startTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.startTimeUnixNano.low >>> 0, message.startTimeUnixNano.high >>> 0).toNumber() : message.startTimeUnixNano; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.asDouble != null && message.hasOwnProperty("asDouble")) { + object.asDouble = options2.json && !isFinite(message.asDouble) ? String(message.asDouble) : message.asDouble; + if (options2.oneofs) + object.value = "asDouble"; + } + if (message.exemplars && message.exemplars.length) { + object.exemplars = []; + for (var j = 0; j < message.exemplars.length; ++j) + object.exemplars[j] = $root.opentelemetry.proto.metrics.v1.Exemplar.toObject(message.exemplars[j], options2); + } + if (message.asInt != null && message.hasOwnProperty("asInt")) { + if (typeof message.asInt === "number") + object.asInt = options2.longs === String ? String(message.asInt) : message.asInt; + else + object.asInt = options2.longs === String ? $util.Long.prototype.toString.call(message.asInt) : options2.longs === Number ? new $util.LongBits(message.asInt.low >>> 0, message.asInt.high >>> 0).toNumber() : message.asInt; + if (options2.oneofs) + object.value = "asInt"; + } + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.flags != null && message.hasOwnProperty("flags")) + object.flags = message.flags; + return object; + }; + NumberDataPoint.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + NumberDataPoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.NumberDataPoint"; + }; + return NumberDataPoint; + }(); + v1.HistogramDataPoint = function() { + function HistogramDataPoint(properties2) { + this.attributes = []; + this.bucketCounts = []; + this.explicitBounds = []; + this.exemplars = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + HistogramDataPoint.prototype.attributes = $util.emptyArray; + HistogramDataPoint.prototype.startTimeUnixNano = null; + HistogramDataPoint.prototype.timeUnixNano = null; + HistogramDataPoint.prototype.count = null; + HistogramDataPoint.prototype.sum = null; + HistogramDataPoint.prototype.bucketCounts = $util.emptyArray; + HistogramDataPoint.prototype.explicitBounds = $util.emptyArray; + HistogramDataPoint.prototype.exemplars = $util.emptyArray; + HistogramDataPoint.prototype.flags = null; + HistogramDataPoint.prototype.min = null; + HistogramDataPoint.prototype.max = null; + var $oneOfFields; + Object.defineProperty(HistogramDataPoint.prototype, "_sum", { + get: $util.oneOfGetter($oneOfFields = ["sum"]), + set: $util.oneOfSetter($oneOfFields) + }); + Object.defineProperty(HistogramDataPoint.prototype, "_min", { + get: $util.oneOfGetter($oneOfFields = ["min"]), + set: $util.oneOfSetter($oneOfFields) + }); + Object.defineProperty(HistogramDataPoint.prototype, "_max", { + get: $util.oneOfGetter($oneOfFields = ["max"]), + set: $util.oneOfSetter($oneOfFields) + }); + HistogramDataPoint.create = function create2(properties2) { + return new HistogramDataPoint(properties2); + }; + HistogramDataPoint.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.startTimeUnixNano != null && Object.hasOwnProperty.call(message, "startTimeUnixNano")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).fixed64(message.startTimeUnixNano); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 3, wireType 1 =*/ + 25 + ).fixed64(message.timeUnixNano); + if (message.count != null && Object.hasOwnProperty.call(message, "count")) + writer.uint32( + /* id 4, wireType 1 =*/ + 33 + ).fixed64(message.count); + if (message.sum != null && Object.hasOwnProperty.call(message, "sum")) + writer.uint32( + /* id 5, wireType 1 =*/ + 41 + ).double(message.sum); + if (message.bucketCounts != null && message.bucketCounts.length) { + writer.uint32( + /* id 6, wireType 2 =*/ + 50 + ).fork(); + for (var i = 0; i < message.bucketCounts.length; ++i) + writer.fixed64(message.bucketCounts[i]); + writer.ldelim(); + } + if (message.explicitBounds != null && message.explicitBounds.length) { + writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).fork(); + for (var i = 0; i < message.explicitBounds.length; ++i) + writer.double(message.explicitBounds[i]); + writer.ldelim(); + } + if (message.exemplars != null && message.exemplars.length) + for (var i = 0; i < message.exemplars.length; ++i) + $root.opentelemetry.proto.metrics.v1.Exemplar.encode(message.exemplars[i], writer.uint32( + /* id 8, wireType 2 =*/ + 66 + ).fork()).ldelim(); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 9, wireType 2 =*/ + 74 + ).fork()).ldelim(); + if (message.flags != null && Object.hasOwnProperty.call(message, "flags")) + writer.uint32( + /* id 10, wireType 0 =*/ + 80 + ).uint32(message.flags); + if (message.min != null && Object.hasOwnProperty.call(message, "min")) + writer.uint32( + /* id 11, wireType 1 =*/ + 89 + ).double(message.min); + if (message.max != null && Object.hasOwnProperty.call(message, "max")) + writer.uint32( + /* id 12, wireType 1 =*/ + 97 + ).double(message.max); + return writer; + }; + HistogramDataPoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + HistogramDataPoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.HistogramDataPoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 9: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.startTimeUnixNano = reader.fixed64(); + break; + } + case 3: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 4: { + message.count = reader.fixed64(); + break; + } + case 5: { + message.sum = reader.double(); + break; + } + case 6: { + if (!(message.bucketCounts && message.bucketCounts.length)) + message.bucketCounts = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.bucketCounts.push(reader.fixed64()); + } else + message.bucketCounts.push(reader.fixed64()); + break; + } + case 7: { + if (!(message.explicitBounds && message.explicitBounds.length)) + message.explicitBounds = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.explicitBounds.push(reader.double()); + } else + message.explicitBounds.push(reader.double()); + break; + } + case 8: { + if (!(message.exemplars && message.exemplars.length)) + message.exemplars = []; + message.exemplars.push($root.opentelemetry.proto.metrics.v1.Exemplar.decode(reader, reader.uint32())); + break; + } + case 10: { + message.flags = reader.uint32(); + break; + } + case 11: { + message.min = reader.double(); + break; + } + case 12: { + message.max = reader.double(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + HistogramDataPoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + HistogramDataPoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) { + if (!$util.isInteger(message.startTimeUnixNano) && !(message.startTimeUnixNano && $util.isInteger(message.startTimeUnixNano.low) && $util.isInteger(message.startTimeUnixNano.high))) + return "startTimeUnixNano: integer|Long expected"; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.count != null && message.hasOwnProperty("count")) { + if (!$util.isInteger(message.count) && !(message.count && $util.isInteger(message.count.low) && $util.isInteger(message.count.high))) + return "count: integer|Long expected"; + } + if (message.sum != null && message.hasOwnProperty("sum")) { + properties2._sum = 1; + if (typeof message.sum !== "number") + return "sum: number expected"; + } + if (message.bucketCounts != null && message.hasOwnProperty("bucketCounts")) { + if (!Array.isArray(message.bucketCounts)) + return "bucketCounts: array expected"; + for (var i = 0; i < message.bucketCounts.length; ++i) + if (!$util.isInteger(message.bucketCounts[i]) && !(message.bucketCounts[i] && $util.isInteger(message.bucketCounts[i].low) && $util.isInteger(message.bucketCounts[i].high))) + return "bucketCounts: integer|Long[] expected"; + } + if (message.explicitBounds != null && message.hasOwnProperty("explicitBounds")) { + if (!Array.isArray(message.explicitBounds)) + return "explicitBounds: array expected"; + for (var i = 0; i < message.explicitBounds.length; ++i) + if (typeof message.explicitBounds[i] !== "number") + return "explicitBounds: number[] expected"; + } + if (message.exemplars != null && message.hasOwnProperty("exemplars")) { + if (!Array.isArray(message.exemplars)) + return "exemplars: array expected"; + for (var i = 0; i < message.exemplars.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.Exemplar.verify(message.exemplars[i]); + if (error) + return "exemplars." + error; + } + } + if (message.flags != null && message.hasOwnProperty("flags")) { + if (!$util.isInteger(message.flags)) + return "flags: integer expected"; + } + if (message.min != null && message.hasOwnProperty("min")) { + properties2._min = 1; + if (typeof message.min !== "number") + return "min: number expected"; + } + if (message.max != null && message.hasOwnProperty("max")) { + properties2._max = 1; + if (typeof message.max !== "number") + return "max: number expected"; + } + return null; + }; + HistogramDataPoint.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.HistogramDataPoint) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.HistogramDataPoint(); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.startTimeUnixNano != null) { + if ($util.Long) + (message.startTimeUnixNano = $util.Long.fromValue(object.startTimeUnixNano)).unsigned = false; + else if (typeof object.startTimeUnixNano === "string") + message.startTimeUnixNano = parseInt(object.startTimeUnixNano, 10); + else if (typeof object.startTimeUnixNano === "number") + message.startTimeUnixNano = object.startTimeUnixNano; + else if (typeof object.startTimeUnixNano === "object") + message.startTimeUnixNano = new $util.LongBits(object.startTimeUnixNano.low >>> 0, object.startTimeUnixNano.high >>> 0).toNumber(); + } + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.count != null) { + if ($util.Long) + (message.count = $util.Long.fromValue(object.count)).unsigned = false; + else if (typeof object.count === "string") + message.count = parseInt(object.count, 10); + else if (typeof object.count === "number") + message.count = object.count; + else if (typeof object.count === "object") + message.count = new $util.LongBits(object.count.low >>> 0, object.count.high >>> 0).toNumber(); + } + if (object.sum != null) + message.sum = Number(object.sum); + if (object.bucketCounts) { + if (!Array.isArray(object.bucketCounts)) + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.bucketCounts: array expected"); + message.bucketCounts = []; + for (var i = 0; i < object.bucketCounts.length; ++i) + if ($util.Long) + (message.bucketCounts[i] = $util.Long.fromValue(object.bucketCounts[i])).unsigned = false; + else if (typeof object.bucketCounts[i] === "string") + message.bucketCounts[i] = parseInt(object.bucketCounts[i], 10); + else if (typeof object.bucketCounts[i] === "number") + message.bucketCounts[i] = object.bucketCounts[i]; + else if (typeof object.bucketCounts[i] === "object") + message.bucketCounts[i] = new $util.LongBits(object.bucketCounts[i].low >>> 0, object.bucketCounts[i].high >>> 0).toNumber(); + } + if (object.explicitBounds) { + if (!Array.isArray(object.explicitBounds)) + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.explicitBounds: array expected"); + message.explicitBounds = []; + for (var i = 0; i < object.explicitBounds.length; ++i) + message.explicitBounds[i] = Number(object.explicitBounds[i]); + } + if (object.exemplars) { + if (!Array.isArray(object.exemplars)) + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.exemplars: array expected"); + message.exemplars = []; + for (var i = 0; i < object.exemplars.length; ++i) { + if (typeof object.exemplars[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.exemplars: object expected"); + message.exemplars[i] = $root.opentelemetry.proto.metrics.v1.Exemplar.fromObject(object.exemplars[i]); + } + } + if (object.flags != null) + message.flags = object.flags >>> 0; + if (object.min != null) + message.min = Number(object.min); + if (object.max != null) + message.max = Number(object.max); + return message; + }; + HistogramDataPoint.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) { + object.bucketCounts = []; + object.explicitBounds = []; + object.exemplars = []; + object.attributes = []; + } + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.startTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.startTimeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.count = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.count = options2.longs === String ? "0" : 0; + object.flags = 0; + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) + if (typeof message.startTimeUnixNano === "number") + object.startTimeUnixNano = options2.longs === String ? String(message.startTimeUnixNano) : message.startTimeUnixNano; + else + object.startTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.startTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.startTimeUnixNano.low >>> 0, message.startTimeUnixNano.high >>> 0).toNumber() : message.startTimeUnixNano; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.count != null && message.hasOwnProperty("count")) + if (typeof message.count === "number") + object.count = options2.longs === String ? String(message.count) : message.count; + else + object.count = options2.longs === String ? $util.Long.prototype.toString.call(message.count) : options2.longs === Number ? new $util.LongBits(message.count.low >>> 0, message.count.high >>> 0).toNumber() : message.count; + if (message.sum != null && message.hasOwnProperty("sum")) { + object.sum = options2.json && !isFinite(message.sum) ? String(message.sum) : message.sum; + if (options2.oneofs) + object._sum = "sum"; + } + if (message.bucketCounts && message.bucketCounts.length) { + object.bucketCounts = []; + for (var j = 0; j < message.bucketCounts.length; ++j) + if (typeof message.bucketCounts[j] === "number") + object.bucketCounts[j] = options2.longs === String ? String(message.bucketCounts[j]) : message.bucketCounts[j]; + else + object.bucketCounts[j] = options2.longs === String ? $util.Long.prototype.toString.call(message.bucketCounts[j]) : options2.longs === Number ? new $util.LongBits(message.bucketCounts[j].low >>> 0, message.bucketCounts[j].high >>> 0).toNumber() : message.bucketCounts[j]; + } + if (message.explicitBounds && message.explicitBounds.length) { + object.explicitBounds = []; + for (var j = 0; j < message.explicitBounds.length; ++j) + object.explicitBounds[j] = options2.json && !isFinite(message.explicitBounds[j]) ? String(message.explicitBounds[j]) : message.explicitBounds[j]; + } + if (message.exemplars && message.exemplars.length) { + object.exemplars = []; + for (var j = 0; j < message.exemplars.length; ++j) + object.exemplars[j] = $root.opentelemetry.proto.metrics.v1.Exemplar.toObject(message.exemplars[j], options2); + } + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.flags != null && message.hasOwnProperty("flags")) + object.flags = message.flags; + if (message.min != null && message.hasOwnProperty("min")) { + object.min = options2.json && !isFinite(message.min) ? String(message.min) : message.min; + if (options2.oneofs) + object._min = "min"; + } + if (message.max != null && message.hasOwnProperty("max")) { + object.max = options2.json && !isFinite(message.max) ? String(message.max) : message.max; + if (options2.oneofs) + object._max = "max"; + } + return object; + }; + HistogramDataPoint.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + HistogramDataPoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.HistogramDataPoint"; + }; + return HistogramDataPoint; + }(); + v1.ExponentialHistogramDataPoint = function() { + function ExponentialHistogramDataPoint(properties2) { + this.attributes = []; + this.exemplars = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExponentialHistogramDataPoint.prototype.attributes = $util.emptyArray; + ExponentialHistogramDataPoint.prototype.startTimeUnixNano = null; + ExponentialHistogramDataPoint.prototype.timeUnixNano = null; + ExponentialHistogramDataPoint.prototype.count = null; + ExponentialHistogramDataPoint.prototype.sum = null; + ExponentialHistogramDataPoint.prototype.scale = null; + ExponentialHistogramDataPoint.prototype.zeroCount = null; + ExponentialHistogramDataPoint.prototype.positive = null; + ExponentialHistogramDataPoint.prototype.negative = null; + ExponentialHistogramDataPoint.prototype.flags = null; + ExponentialHistogramDataPoint.prototype.exemplars = $util.emptyArray; + ExponentialHistogramDataPoint.prototype.min = null; + ExponentialHistogramDataPoint.prototype.max = null; + ExponentialHistogramDataPoint.prototype.zeroThreshold = null; + var $oneOfFields; + Object.defineProperty(ExponentialHistogramDataPoint.prototype, "_sum", { + get: $util.oneOfGetter($oneOfFields = ["sum"]), + set: $util.oneOfSetter($oneOfFields) + }); + Object.defineProperty(ExponentialHistogramDataPoint.prototype, "_min", { + get: $util.oneOfGetter($oneOfFields = ["min"]), + set: $util.oneOfSetter($oneOfFields) + }); + Object.defineProperty(ExponentialHistogramDataPoint.prototype, "_max", { + get: $util.oneOfGetter($oneOfFields = ["max"]), + set: $util.oneOfSetter($oneOfFields) + }); + ExponentialHistogramDataPoint.create = function create2(properties2) { + return new ExponentialHistogramDataPoint(properties2); + }; + ExponentialHistogramDataPoint.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.startTimeUnixNano != null && Object.hasOwnProperty.call(message, "startTimeUnixNano")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).fixed64(message.startTimeUnixNano); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 3, wireType 1 =*/ + 25 + ).fixed64(message.timeUnixNano); + if (message.count != null && Object.hasOwnProperty.call(message, "count")) + writer.uint32( + /* id 4, wireType 1 =*/ + 33 + ).fixed64(message.count); + if (message.sum != null && Object.hasOwnProperty.call(message, "sum")) + writer.uint32( + /* id 5, wireType 1 =*/ + 41 + ).double(message.sum); + if (message.scale != null && Object.hasOwnProperty.call(message, "scale")) + writer.uint32( + /* id 6, wireType 0 =*/ + 48 + ).sint32(message.scale); + if (message.zeroCount != null && Object.hasOwnProperty.call(message, "zeroCount")) + writer.uint32( + /* id 7, wireType 1 =*/ + 57 + ).fixed64(message.zeroCount); + if (message.positive != null && Object.hasOwnProperty.call(message, "positive")) + $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.encode(message.positive, writer.uint32( + /* id 8, wireType 2 =*/ + 66 + ).fork()).ldelim(); + if (message.negative != null && Object.hasOwnProperty.call(message, "negative")) + $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.encode(message.negative, writer.uint32( + /* id 9, wireType 2 =*/ + 74 + ).fork()).ldelim(); + if (message.flags != null && Object.hasOwnProperty.call(message, "flags")) + writer.uint32( + /* id 10, wireType 0 =*/ + 80 + ).uint32(message.flags); + if (message.exemplars != null && message.exemplars.length) + for (var i = 0; i < message.exemplars.length; ++i) + $root.opentelemetry.proto.metrics.v1.Exemplar.encode(message.exemplars[i], writer.uint32( + /* id 11, wireType 2 =*/ + 90 + ).fork()).ldelim(); + if (message.min != null && Object.hasOwnProperty.call(message, "min")) + writer.uint32( + /* id 12, wireType 1 =*/ + 97 + ).double(message.min); + if (message.max != null && Object.hasOwnProperty.call(message, "max")) + writer.uint32( + /* id 13, wireType 1 =*/ + 105 + ).double(message.max); + if (message.zeroThreshold != null && Object.hasOwnProperty.call(message, "zeroThreshold")) + writer.uint32( + /* id 14, wireType 1 =*/ + 113 + ).double(message.zeroThreshold); + return writer; + }; + ExponentialHistogramDataPoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExponentialHistogramDataPoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.startTimeUnixNano = reader.fixed64(); + break; + } + case 3: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 4: { + message.count = reader.fixed64(); + break; + } + case 5: { + message.sum = reader.double(); + break; + } + case 6: { + message.scale = reader.sint32(); + break; + } + case 7: { + message.zeroCount = reader.fixed64(); + break; + } + case 8: { + message.positive = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.decode(reader, reader.uint32()); + break; + } + case 9: { + message.negative = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.decode(reader, reader.uint32()); + break; + } + case 10: { + message.flags = reader.uint32(); + break; + } + case 11: { + if (!(message.exemplars && message.exemplars.length)) + message.exemplars = []; + message.exemplars.push($root.opentelemetry.proto.metrics.v1.Exemplar.decode(reader, reader.uint32())); + break; + } + case 12: { + message.min = reader.double(); + break; + } + case 13: { + message.max = reader.double(); + break; + } + case 14: { + message.zeroThreshold = reader.double(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExponentialHistogramDataPoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExponentialHistogramDataPoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) { + if (!$util.isInteger(message.startTimeUnixNano) && !(message.startTimeUnixNano && $util.isInteger(message.startTimeUnixNano.low) && $util.isInteger(message.startTimeUnixNano.high))) + return "startTimeUnixNano: integer|Long expected"; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.count != null && message.hasOwnProperty("count")) { + if (!$util.isInteger(message.count) && !(message.count && $util.isInteger(message.count.low) && $util.isInteger(message.count.high))) + return "count: integer|Long expected"; + } + if (message.sum != null && message.hasOwnProperty("sum")) { + properties2._sum = 1; + if (typeof message.sum !== "number") + return "sum: number expected"; + } + if (message.scale != null && message.hasOwnProperty("scale")) { + if (!$util.isInteger(message.scale)) + return "scale: integer expected"; + } + if (message.zeroCount != null && message.hasOwnProperty("zeroCount")) { + if (!$util.isInteger(message.zeroCount) && !(message.zeroCount && $util.isInteger(message.zeroCount.low) && $util.isInteger(message.zeroCount.high))) + return "zeroCount: integer|Long expected"; + } + if (message.positive != null && message.hasOwnProperty("positive")) { + var error = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.verify(message.positive); + if (error) + return "positive." + error; + } + if (message.negative != null && message.hasOwnProperty("negative")) { + var error = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.verify(message.negative); + if (error) + return "negative." + error; + } + if (message.flags != null && message.hasOwnProperty("flags")) { + if (!$util.isInteger(message.flags)) + return "flags: integer expected"; + } + if (message.exemplars != null && message.hasOwnProperty("exemplars")) { + if (!Array.isArray(message.exemplars)) + return "exemplars: array expected"; + for (var i = 0; i < message.exemplars.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.Exemplar.verify(message.exemplars[i]); + if (error) + return "exemplars." + error; + } + } + if (message.min != null && message.hasOwnProperty("min")) { + properties2._min = 1; + if (typeof message.min !== "number") + return "min: number expected"; + } + if (message.max != null && message.hasOwnProperty("max")) { + properties2._max = 1; + if (typeof message.max !== "number") + return "max: number expected"; + } + if (message.zeroThreshold != null && message.hasOwnProperty("zeroThreshold")) { + if (typeof message.zeroThreshold !== "number") + return "zeroThreshold: number expected"; + } + return null; + }; + ExponentialHistogramDataPoint.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint(); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.startTimeUnixNano != null) { + if ($util.Long) + (message.startTimeUnixNano = $util.Long.fromValue(object.startTimeUnixNano)).unsigned = false; + else if (typeof object.startTimeUnixNano === "string") + message.startTimeUnixNano = parseInt(object.startTimeUnixNano, 10); + else if (typeof object.startTimeUnixNano === "number") + message.startTimeUnixNano = object.startTimeUnixNano; + else if (typeof object.startTimeUnixNano === "object") + message.startTimeUnixNano = new $util.LongBits(object.startTimeUnixNano.low >>> 0, object.startTimeUnixNano.high >>> 0).toNumber(); + } + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.count != null) { + if ($util.Long) + (message.count = $util.Long.fromValue(object.count)).unsigned = false; + else if (typeof object.count === "string") + message.count = parseInt(object.count, 10); + else if (typeof object.count === "number") + message.count = object.count; + else if (typeof object.count === "object") + message.count = new $util.LongBits(object.count.low >>> 0, object.count.high >>> 0).toNumber(); + } + if (object.sum != null) + message.sum = Number(object.sum); + if (object.scale != null) + message.scale = object.scale | 0; + if (object.zeroCount != null) { + if ($util.Long) + (message.zeroCount = $util.Long.fromValue(object.zeroCount)).unsigned = false; + else if (typeof object.zeroCount === "string") + message.zeroCount = parseInt(object.zeroCount, 10); + else if (typeof object.zeroCount === "number") + message.zeroCount = object.zeroCount; + else if (typeof object.zeroCount === "object") + message.zeroCount = new $util.LongBits(object.zeroCount.low >>> 0, object.zeroCount.high >>> 0).toNumber(); + } + if (object.positive != null) { + if (typeof object.positive !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.positive: object expected"); + message.positive = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.fromObject(object.positive); + } + if (object.negative != null) { + if (typeof object.negative !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.negative: object expected"); + message.negative = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.fromObject(object.negative); + } + if (object.flags != null) + message.flags = object.flags >>> 0; + if (object.exemplars) { + if (!Array.isArray(object.exemplars)) + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.exemplars: array expected"); + message.exemplars = []; + for (var i = 0; i < object.exemplars.length; ++i) { + if (typeof object.exemplars[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.exemplars: object expected"); + message.exemplars[i] = $root.opentelemetry.proto.metrics.v1.Exemplar.fromObject(object.exemplars[i]); + } + } + if (object.min != null) + message.min = Number(object.min); + if (object.max != null) + message.max = Number(object.max); + if (object.zeroThreshold != null) + message.zeroThreshold = Number(object.zeroThreshold); + return message; + }; + ExponentialHistogramDataPoint.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) { + object.attributes = []; + object.exemplars = []; + } + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.startTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.startTimeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.count = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.count = options2.longs === String ? "0" : 0; + object.scale = 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.zeroCount = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.zeroCount = options2.longs === String ? "0" : 0; + object.positive = null; + object.negative = null; + object.flags = 0; + object.zeroThreshold = 0; + } + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) + if (typeof message.startTimeUnixNano === "number") + object.startTimeUnixNano = options2.longs === String ? String(message.startTimeUnixNano) : message.startTimeUnixNano; + else + object.startTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.startTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.startTimeUnixNano.low >>> 0, message.startTimeUnixNano.high >>> 0).toNumber() : message.startTimeUnixNano; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.count != null && message.hasOwnProperty("count")) + if (typeof message.count === "number") + object.count = options2.longs === String ? String(message.count) : message.count; + else + object.count = options2.longs === String ? $util.Long.prototype.toString.call(message.count) : options2.longs === Number ? new $util.LongBits(message.count.low >>> 0, message.count.high >>> 0).toNumber() : message.count; + if (message.sum != null && message.hasOwnProperty("sum")) { + object.sum = options2.json && !isFinite(message.sum) ? String(message.sum) : message.sum; + if (options2.oneofs) + object._sum = "sum"; + } + if (message.scale != null && message.hasOwnProperty("scale")) + object.scale = message.scale; + if (message.zeroCount != null && message.hasOwnProperty("zeroCount")) + if (typeof message.zeroCount === "number") + object.zeroCount = options2.longs === String ? String(message.zeroCount) : message.zeroCount; + else + object.zeroCount = options2.longs === String ? $util.Long.prototype.toString.call(message.zeroCount) : options2.longs === Number ? new $util.LongBits(message.zeroCount.low >>> 0, message.zeroCount.high >>> 0).toNumber() : message.zeroCount; + if (message.positive != null && message.hasOwnProperty("positive")) + object.positive = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.toObject(message.positive, options2); + if (message.negative != null && message.hasOwnProperty("negative")) + object.negative = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.toObject(message.negative, options2); + if (message.flags != null && message.hasOwnProperty("flags")) + object.flags = message.flags; + if (message.exemplars && message.exemplars.length) { + object.exemplars = []; + for (var j = 0; j < message.exemplars.length; ++j) + object.exemplars[j] = $root.opentelemetry.proto.metrics.v1.Exemplar.toObject(message.exemplars[j], options2); + } + if (message.min != null && message.hasOwnProperty("min")) { + object.min = options2.json && !isFinite(message.min) ? String(message.min) : message.min; + if (options2.oneofs) + object._min = "min"; + } + if (message.max != null && message.hasOwnProperty("max")) { + object.max = options2.json && !isFinite(message.max) ? String(message.max) : message.max; + if (options2.oneofs) + object._max = "max"; + } + if (message.zeroThreshold != null && message.hasOwnProperty("zeroThreshold")) + object.zeroThreshold = options2.json && !isFinite(message.zeroThreshold) ? String(message.zeroThreshold) : message.zeroThreshold; + return object; + }; + ExponentialHistogramDataPoint.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExponentialHistogramDataPoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint"; + }; + ExponentialHistogramDataPoint.Buckets = function() { + function Buckets(properties2) { + this.bucketCounts = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Buckets.prototype.offset = null; + Buckets.prototype.bucketCounts = $util.emptyArray; + Buckets.create = function create2(properties2) { + return new Buckets(properties2); + }; + Buckets.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.offset != null && Object.hasOwnProperty.call(message, "offset")) + writer.uint32( + /* id 1, wireType 0 =*/ + 8 + ).sint32(message.offset); + if (message.bucketCounts != null && message.bucketCounts.length) { + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork(); + for (var i = 0; i < message.bucketCounts.length; ++i) + writer.uint64(message.bucketCounts[i]); + writer.ldelim(); + } + return writer; + }; + Buckets.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Buckets.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.offset = reader.sint32(); + break; + } + case 2: { + if (!(message.bucketCounts && message.bucketCounts.length)) + message.bucketCounts = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.bucketCounts.push(reader.uint64()); + } else + message.bucketCounts.push(reader.uint64()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Buckets.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Buckets.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.offset != null && message.hasOwnProperty("offset")) { + if (!$util.isInteger(message.offset)) + return "offset: integer expected"; + } + if (message.bucketCounts != null && message.hasOwnProperty("bucketCounts")) { + if (!Array.isArray(message.bucketCounts)) + return "bucketCounts: array expected"; + for (var i = 0; i < message.bucketCounts.length; ++i) + if (!$util.isInteger(message.bucketCounts[i]) && !(message.bucketCounts[i] && $util.isInteger(message.bucketCounts[i].low) && $util.isInteger(message.bucketCounts[i].high))) + return "bucketCounts: integer|Long[] expected"; + } + return null; + }; + Buckets.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets(); + if (object.offset != null) + message.offset = object.offset | 0; + if (object.bucketCounts) { + if (!Array.isArray(object.bucketCounts)) + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.bucketCounts: array expected"); + message.bucketCounts = []; + for (var i = 0; i < object.bucketCounts.length; ++i) + if ($util.Long) + (message.bucketCounts[i] = $util.Long.fromValue(object.bucketCounts[i])).unsigned = true; + else if (typeof object.bucketCounts[i] === "string") + message.bucketCounts[i] = parseInt(object.bucketCounts[i], 10); + else if (typeof object.bucketCounts[i] === "number") + message.bucketCounts[i] = object.bucketCounts[i]; + else if (typeof object.bucketCounts[i] === "object") + message.bucketCounts[i] = new $util.LongBits(object.bucketCounts[i].low >>> 0, object.bucketCounts[i].high >>> 0).toNumber(true); + } + return message; + }; + Buckets.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.bucketCounts = []; + if (options2.defaults) + object.offset = 0; + if (message.offset != null && message.hasOwnProperty("offset")) + object.offset = message.offset; + if (message.bucketCounts && message.bucketCounts.length) { + object.bucketCounts = []; + for (var j = 0; j < message.bucketCounts.length; ++j) + if (typeof message.bucketCounts[j] === "number") + object.bucketCounts[j] = options2.longs === String ? String(message.bucketCounts[j]) : message.bucketCounts[j]; + else + object.bucketCounts[j] = options2.longs === String ? $util.Long.prototype.toString.call(message.bucketCounts[j]) : options2.longs === Number ? new $util.LongBits(message.bucketCounts[j].low >>> 0, message.bucketCounts[j].high >>> 0).toNumber(true) : message.bucketCounts[j]; + } + return object; + }; + Buckets.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Buckets.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets"; + }; + return Buckets; + }(); + return ExponentialHistogramDataPoint; + }(); + v1.SummaryDataPoint = function() { + function SummaryDataPoint(properties2) { + this.attributes = []; + this.quantileValues = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + SummaryDataPoint.prototype.attributes = $util.emptyArray; + SummaryDataPoint.prototype.startTimeUnixNano = null; + SummaryDataPoint.prototype.timeUnixNano = null; + SummaryDataPoint.prototype.count = null; + SummaryDataPoint.prototype.sum = null; + SummaryDataPoint.prototype.quantileValues = $util.emptyArray; + SummaryDataPoint.prototype.flags = null; + SummaryDataPoint.create = function create2(properties2) { + return new SummaryDataPoint(properties2); + }; + SummaryDataPoint.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.startTimeUnixNano != null && Object.hasOwnProperty.call(message, "startTimeUnixNano")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).fixed64(message.startTimeUnixNano); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 3, wireType 1 =*/ + 25 + ).fixed64(message.timeUnixNano); + if (message.count != null && Object.hasOwnProperty.call(message, "count")) + writer.uint32( + /* id 4, wireType 1 =*/ + 33 + ).fixed64(message.count); + if (message.sum != null && Object.hasOwnProperty.call(message, "sum")) + writer.uint32( + /* id 5, wireType 1 =*/ + 41 + ).double(message.sum); + if (message.quantileValues != null && message.quantileValues.length) + for (var i = 0; i < message.quantileValues.length; ++i) + $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.encode(message.quantileValues[i], writer.uint32( + /* id 6, wireType 2 =*/ + 50 + ).fork()).ldelim(); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).fork()).ldelim(); + if (message.flags != null && Object.hasOwnProperty.call(message, "flags")) + writer.uint32( + /* id 8, wireType 0 =*/ + 64 + ).uint32(message.flags); + return writer; + }; + SummaryDataPoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + SummaryDataPoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.SummaryDataPoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 7: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.startTimeUnixNano = reader.fixed64(); + break; + } + case 3: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 4: { + message.count = reader.fixed64(); + break; + } + case 5: { + message.sum = reader.double(); + break; + } + case 6: { + if (!(message.quantileValues && message.quantileValues.length)) + message.quantileValues = []; + message.quantileValues.push($root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.decode(reader, reader.uint32())); + break; + } + case 8: { + message.flags = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + SummaryDataPoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + SummaryDataPoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) { + if (!$util.isInteger(message.startTimeUnixNano) && !(message.startTimeUnixNano && $util.isInteger(message.startTimeUnixNano.low) && $util.isInteger(message.startTimeUnixNano.high))) + return "startTimeUnixNano: integer|Long expected"; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.count != null && message.hasOwnProperty("count")) { + if (!$util.isInteger(message.count) && !(message.count && $util.isInteger(message.count.low) && $util.isInteger(message.count.high))) + return "count: integer|Long expected"; + } + if (message.sum != null && message.hasOwnProperty("sum")) { + if (typeof message.sum !== "number") + return "sum: number expected"; + } + if (message.quantileValues != null && message.hasOwnProperty("quantileValues")) { + if (!Array.isArray(message.quantileValues)) + return "quantileValues: array expected"; + for (var i = 0; i < message.quantileValues.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.verify(message.quantileValues[i]); + if (error) + return "quantileValues." + error; + } + } + if (message.flags != null && message.hasOwnProperty("flags")) { + if (!$util.isInteger(message.flags)) + return "flags: integer expected"; + } + return null; + }; + SummaryDataPoint.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.SummaryDataPoint) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.SummaryDataPoint(); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.metrics.v1.SummaryDataPoint.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.SummaryDataPoint.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.startTimeUnixNano != null) { + if ($util.Long) + (message.startTimeUnixNano = $util.Long.fromValue(object.startTimeUnixNano)).unsigned = false; + else if (typeof object.startTimeUnixNano === "string") + message.startTimeUnixNano = parseInt(object.startTimeUnixNano, 10); + else if (typeof object.startTimeUnixNano === "number") + message.startTimeUnixNano = object.startTimeUnixNano; + else if (typeof object.startTimeUnixNano === "object") + message.startTimeUnixNano = new $util.LongBits(object.startTimeUnixNano.low >>> 0, object.startTimeUnixNano.high >>> 0).toNumber(); + } + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.count != null) { + if ($util.Long) + (message.count = $util.Long.fromValue(object.count)).unsigned = false; + else if (typeof object.count === "string") + message.count = parseInt(object.count, 10); + else if (typeof object.count === "number") + message.count = object.count; + else if (typeof object.count === "object") + message.count = new $util.LongBits(object.count.low >>> 0, object.count.high >>> 0).toNumber(); + } + if (object.sum != null) + message.sum = Number(object.sum); + if (object.quantileValues) { + if (!Array.isArray(object.quantileValues)) + throw TypeError(".opentelemetry.proto.metrics.v1.SummaryDataPoint.quantileValues: array expected"); + message.quantileValues = []; + for (var i = 0; i < object.quantileValues.length; ++i) { + if (typeof object.quantileValues[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.SummaryDataPoint.quantileValues: object expected"); + message.quantileValues[i] = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.fromObject(object.quantileValues[i]); + } + } + if (object.flags != null) + message.flags = object.flags >>> 0; + return message; + }; + SummaryDataPoint.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) { + object.quantileValues = []; + object.attributes = []; + } + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.startTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.startTimeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.count = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.count = options2.longs === String ? "0" : 0; + object.sum = 0; + object.flags = 0; + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) + if (typeof message.startTimeUnixNano === "number") + object.startTimeUnixNano = options2.longs === String ? String(message.startTimeUnixNano) : message.startTimeUnixNano; + else + object.startTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.startTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.startTimeUnixNano.low >>> 0, message.startTimeUnixNano.high >>> 0).toNumber() : message.startTimeUnixNano; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.count != null && message.hasOwnProperty("count")) + if (typeof message.count === "number") + object.count = options2.longs === String ? String(message.count) : message.count; + else + object.count = options2.longs === String ? $util.Long.prototype.toString.call(message.count) : options2.longs === Number ? new $util.LongBits(message.count.low >>> 0, message.count.high >>> 0).toNumber() : message.count; + if (message.sum != null && message.hasOwnProperty("sum")) + object.sum = options2.json && !isFinite(message.sum) ? String(message.sum) : message.sum; + if (message.quantileValues && message.quantileValues.length) { + object.quantileValues = []; + for (var j = 0; j < message.quantileValues.length; ++j) + object.quantileValues[j] = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.toObject(message.quantileValues[j], options2); + } + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.flags != null && message.hasOwnProperty("flags")) + object.flags = message.flags; + return object; + }; + SummaryDataPoint.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + SummaryDataPoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.SummaryDataPoint"; + }; + SummaryDataPoint.ValueAtQuantile = function() { + function ValueAtQuantile(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ValueAtQuantile.prototype.quantile = null; + ValueAtQuantile.prototype.value = null; + ValueAtQuantile.create = function create2(properties2) { + return new ValueAtQuantile(properties2); + }; + ValueAtQuantile.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.quantile != null && Object.hasOwnProperty.call(message, "quantile")) + writer.uint32( + /* id 1, wireType 1 =*/ + 9 + ).double(message.quantile); + if (message.value != null && Object.hasOwnProperty.call(message, "value")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).double(message.value); + return writer; + }; + ValueAtQuantile.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ValueAtQuantile.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.quantile = reader.double(); + break; + } + case 2: { + message.value = reader.double(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ValueAtQuantile.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ValueAtQuantile.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.quantile != null && message.hasOwnProperty("quantile")) { + if (typeof message.quantile !== "number") + return "quantile: number expected"; + } + if (message.value != null && message.hasOwnProperty("value")) { + if (typeof message.value !== "number") + return "value: number expected"; + } + return null; + }; + ValueAtQuantile.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile(); + if (object.quantile != null) + message.quantile = Number(object.quantile); + if (object.value != null) + message.value = Number(object.value); + return message; + }; + ValueAtQuantile.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + object.quantile = 0; + object.value = 0; + } + if (message.quantile != null && message.hasOwnProperty("quantile")) + object.quantile = options2.json && !isFinite(message.quantile) ? String(message.quantile) : message.quantile; + if (message.value != null && message.hasOwnProperty("value")) + object.value = options2.json && !isFinite(message.value) ? String(message.value) : message.value; + return object; + }; + ValueAtQuantile.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ValueAtQuantile.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile"; + }; + return ValueAtQuantile; + }(); + return SummaryDataPoint; + }(); + v1.Exemplar = function() { + function Exemplar(properties2) { + this.filteredAttributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Exemplar.prototype.filteredAttributes = $util.emptyArray; + Exemplar.prototype.timeUnixNano = null; + Exemplar.prototype.asDouble = null; + Exemplar.prototype.asInt = null; + Exemplar.prototype.spanId = null; + Exemplar.prototype.traceId = null; + var $oneOfFields; + Object.defineProperty(Exemplar.prototype, "value", { + get: $util.oneOfGetter($oneOfFields = ["asDouble", "asInt"]), + set: $util.oneOfSetter($oneOfFields) + }); + Exemplar.create = function create2(properties2) { + return new Exemplar(properties2); + }; + Exemplar.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).fixed64(message.timeUnixNano); + if (message.asDouble != null && Object.hasOwnProperty.call(message, "asDouble")) + writer.uint32( + /* id 3, wireType 1 =*/ + 25 + ).double(message.asDouble); + if (message.spanId != null && Object.hasOwnProperty.call(message, "spanId")) + writer.uint32( + /* id 4, wireType 2 =*/ + 34 + ).bytes(message.spanId); + if (message.traceId != null && Object.hasOwnProperty.call(message, "traceId")) + writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).bytes(message.traceId); + if (message.asInt != null && Object.hasOwnProperty.call(message, "asInt")) + writer.uint32( + /* id 6, wireType 1 =*/ + 49 + ).sfixed64(message.asInt); + if (message.filteredAttributes != null && message.filteredAttributes.length) + for (var i = 0; i < message.filteredAttributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.filteredAttributes[i], writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).fork()).ldelim(); + return writer; + }; + Exemplar.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Exemplar.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Exemplar(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 7: { + if (!(message.filteredAttributes && message.filteredAttributes.length)) + message.filteredAttributes = []; + message.filteredAttributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 3: { + message.asDouble = reader.double(); + break; + } + case 6: { + message.asInt = reader.sfixed64(); + break; + } + case 4: { + message.spanId = reader.bytes(); + break; + } + case 5: { + message.traceId = reader.bytes(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Exemplar.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Exemplar.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.filteredAttributes != null && message.hasOwnProperty("filteredAttributes")) { + if (!Array.isArray(message.filteredAttributes)) + return "filteredAttributes: array expected"; + for (var i = 0; i < message.filteredAttributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.filteredAttributes[i]); + if (error) + return "filteredAttributes." + error; + } + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.asDouble != null && message.hasOwnProperty("asDouble")) { + properties2.value = 1; + if (typeof message.asDouble !== "number") + return "asDouble: number expected"; + } + if (message.asInt != null && message.hasOwnProperty("asInt")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (!$util.isInteger(message.asInt) && !(message.asInt && $util.isInteger(message.asInt.low) && $util.isInteger(message.asInt.high))) + return "asInt: integer|Long expected"; + } + if (message.spanId != null && message.hasOwnProperty("spanId")) { + if (!(message.spanId && typeof message.spanId.length === "number" || $util.isString(message.spanId))) + return "spanId: buffer expected"; + } + if (message.traceId != null && message.hasOwnProperty("traceId")) { + if (!(message.traceId && typeof message.traceId.length === "number" || $util.isString(message.traceId))) + return "traceId: buffer expected"; + } + return null; + }; + Exemplar.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Exemplar) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Exemplar(); + if (object.filteredAttributes) { + if (!Array.isArray(object.filteredAttributes)) + throw TypeError(".opentelemetry.proto.metrics.v1.Exemplar.filteredAttributes: array expected"); + message.filteredAttributes = []; + for (var i = 0; i < object.filteredAttributes.length; ++i) { + if (typeof object.filteredAttributes[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Exemplar.filteredAttributes: object expected"); + message.filteredAttributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.filteredAttributes[i]); + } + } + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.asDouble != null) + message.asDouble = Number(object.asDouble); + if (object.asInt != null) { + if ($util.Long) + (message.asInt = $util.Long.fromValue(object.asInt)).unsigned = false; + else if (typeof object.asInt === "string") + message.asInt = parseInt(object.asInt, 10); + else if (typeof object.asInt === "number") + message.asInt = object.asInt; + else if (typeof object.asInt === "object") + message.asInt = new $util.LongBits(object.asInt.low >>> 0, object.asInt.high >>> 0).toNumber(); + } + if (object.spanId != null) { + if (typeof object.spanId === "string") + $util.base64.decode(object.spanId, message.spanId = $util.newBuffer($util.base64.length(object.spanId)), 0); + else if (object.spanId.length >= 0) + message.spanId = object.spanId; + } + if (object.traceId != null) { + if (typeof object.traceId === "string") + $util.base64.decode(object.traceId, message.traceId = $util.newBuffer($util.base64.length(object.traceId)), 0); + else if (object.traceId.length >= 0) + message.traceId = object.traceId; + } + return message; + }; + Exemplar.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.filteredAttributes = []; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + if (options2.bytes === String) + object.spanId = ""; + else { + object.spanId = []; + if (options2.bytes !== Array) + object.spanId = $util.newBuffer(object.spanId); + } + if (options2.bytes === String) + object.traceId = ""; + else { + object.traceId = []; + if (options2.bytes !== Array) + object.traceId = $util.newBuffer(object.traceId); + } + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.asDouble != null && message.hasOwnProperty("asDouble")) { + object.asDouble = options2.json && !isFinite(message.asDouble) ? String(message.asDouble) : message.asDouble; + if (options2.oneofs) + object.value = "asDouble"; + } + if (message.spanId != null && message.hasOwnProperty("spanId")) + object.spanId = options2.bytes === String ? $util.base64.encode(message.spanId, 0, message.spanId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.spanId) : message.spanId; + if (message.traceId != null && message.hasOwnProperty("traceId")) + object.traceId = options2.bytes === String ? $util.base64.encode(message.traceId, 0, message.traceId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.traceId) : message.traceId; + if (message.asInt != null && message.hasOwnProperty("asInt")) { + if (typeof message.asInt === "number") + object.asInt = options2.longs === String ? String(message.asInt) : message.asInt; + else + object.asInt = options2.longs === String ? $util.Long.prototype.toString.call(message.asInt) : options2.longs === Number ? new $util.LongBits(message.asInt.low >>> 0, message.asInt.high >>> 0).toNumber() : message.asInt; + if (options2.oneofs) + object.value = "asInt"; + } + if (message.filteredAttributes && message.filteredAttributes.length) { + object.filteredAttributes = []; + for (var j = 0; j < message.filteredAttributes.length; ++j) + object.filteredAttributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.filteredAttributes[j], options2); + } + return object; + }; + Exemplar.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Exemplar.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Exemplar"; + }; + return Exemplar; + }(); + return v1; + }(); + return metrics; + }(); + proto.logs = function() { + var logs = {}; + logs.v1 = function() { + var v1 = {}; + v1.LogsData = function() { + function LogsData(properties2) { + this.resourceLogs = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + LogsData.prototype.resourceLogs = $util.emptyArray; + LogsData.create = function create2(properties2) { + return new LogsData(properties2); + }; + LogsData.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLogs != null && message.resourceLogs.length) + for (var i = 0; i < message.resourceLogs.length; ++i) + $root.opentelemetry.proto.logs.v1.ResourceLogs.encode(message.resourceLogs[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + LogsData.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + LogsData.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.logs.v1.LogsData(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceLogs && message.resourceLogs.length)) + message.resourceLogs = []; + message.resourceLogs.push($root.opentelemetry.proto.logs.v1.ResourceLogs.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + LogsData.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + LogsData.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLogs != null && message.hasOwnProperty("resourceLogs")) { + if (!Array.isArray(message.resourceLogs)) + return "resourceLogs: array expected"; + for (var i = 0; i < message.resourceLogs.length; ++i) { + var error = $root.opentelemetry.proto.logs.v1.ResourceLogs.verify(message.resourceLogs[i]); + if (error) + return "resourceLogs." + error; + } + } + return null; + }; + LogsData.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.logs.v1.LogsData) + return object; + var message = new $root.opentelemetry.proto.logs.v1.LogsData(); + if (object.resourceLogs) { + if (!Array.isArray(object.resourceLogs)) + throw TypeError(".opentelemetry.proto.logs.v1.LogsData.resourceLogs: array expected"); + message.resourceLogs = []; + for (var i = 0; i < object.resourceLogs.length; ++i) { + if (typeof object.resourceLogs[i] !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.LogsData.resourceLogs: object expected"); + message.resourceLogs[i] = $root.opentelemetry.proto.logs.v1.ResourceLogs.fromObject(object.resourceLogs[i]); + } + } + return message; + }; + LogsData.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceLogs = []; + if (message.resourceLogs && message.resourceLogs.length) { + object.resourceLogs = []; + for (var j = 0; j < message.resourceLogs.length; ++j) + object.resourceLogs[j] = $root.opentelemetry.proto.logs.v1.ResourceLogs.toObject(message.resourceLogs[j], options2); + } + return object; + }; + LogsData.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + LogsData.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.logs.v1.LogsData"; + }; + return LogsData; + }(); + v1.ResourceLogs = function() { + function ResourceLogs(properties2) { + this.scopeLogs = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ResourceLogs.prototype.resource = null; + ResourceLogs.prototype.scopeLogs = $util.emptyArray; + ResourceLogs.prototype.schemaUrl = null; + ResourceLogs.create = function create2(properties2) { + return new ResourceLogs(properties2); + }; + ResourceLogs.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.opentelemetry.proto.resource.v1.Resource.encode(message.resource, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.scopeLogs != null && message.scopeLogs.length) + for (var i = 0; i < message.scopeLogs.length; ++i) + $root.opentelemetry.proto.logs.v1.ScopeLogs.encode(message.scopeLogs[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ResourceLogs.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ResourceLogs.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.logs.v1.ResourceLogs(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.resource = $root.opentelemetry.proto.resource.v1.Resource.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.scopeLogs && message.scopeLogs.length)) + message.scopeLogs = []; + message.scopeLogs.push($root.opentelemetry.proto.logs.v1.ScopeLogs.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ResourceLogs.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ResourceLogs.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.opentelemetry.proto.resource.v1.Resource.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.scopeLogs != null && message.hasOwnProperty("scopeLogs")) { + if (!Array.isArray(message.scopeLogs)) + return "scopeLogs: array expected"; + for (var i = 0; i < message.scopeLogs.length; ++i) { + var error = $root.opentelemetry.proto.logs.v1.ScopeLogs.verify(message.scopeLogs[i]); + if (error) + return "scopeLogs." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ResourceLogs.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.logs.v1.ResourceLogs) + return object; + var message = new $root.opentelemetry.proto.logs.v1.ResourceLogs(); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.ResourceLogs.resource: object expected"); + message.resource = $root.opentelemetry.proto.resource.v1.Resource.fromObject(object.resource); + } + if (object.scopeLogs) { + if (!Array.isArray(object.scopeLogs)) + throw TypeError(".opentelemetry.proto.logs.v1.ResourceLogs.scopeLogs: array expected"); + message.scopeLogs = []; + for (var i = 0; i < object.scopeLogs.length; ++i) { + if (typeof object.scopeLogs[i] !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.ResourceLogs.scopeLogs: object expected"); + message.scopeLogs[i] = $root.opentelemetry.proto.logs.v1.ScopeLogs.fromObject(object.scopeLogs[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ResourceLogs.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.scopeLogs = []; + if (options2.defaults) { + object.resource = null; + object.schemaUrl = ""; + } + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.opentelemetry.proto.resource.v1.Resource.toObject(message.resource, options2); + if (message.scopeLogs && message.scopeLogs.length) { + object.scopeLogs = []; + for (var j = 0; j < message.scopeLogs.length; ++j) + object.scopeLogs[j] = $root.opentelemetry.proto.logs.v1.ScopeLogs.toObject(message.scopeLogs[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ResourceLogs.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ResourceLogs.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.logs.v1.ResourceLogs"; + }; + return ResourceLogs; + }(); + v1.ScopeLogs = function() { + function ScopeLogs(properties2) { + this.logRecords = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ScopeLogs.prototype.scope = null; + ScopeLogs.prototype.logRecords = $util.emptyArray; + ScopeLogs.prototype.schemaUrl = null; + ScopeLogs.create = function create2(properties2) { + return new ScopeLogs(properties2); + }; + ScopeLogs.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.scope != null && Object.hasOwnProperty.call(message, "scope")) + $root.opentelemetry.proto.common.v1.InstrumentationScope.encode(message.scope, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.logRecords != null && message.logRecords.length) + for (var i = 0; i < message.logRecords.length; ++i) + $root.opentelemetry.proto.logs.v1.LogRecord.encode(message.logRecords[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ScopeLogs.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ScopeLogs.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.logs.v1.ScopeLogs(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.logRecords && message.logRecords.length)) + message.logRecords = []; + message.logRecords.push($root.opentelemetry.proto.logs.v1.LogRecord.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ScopeLogs.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ScopeLogs.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.scope != null && message.hasOwnProperty("scope")) { + var error = $root.opentelemetry.proto.common.v1.InstrumentationScope.verify(message.scope); + if (error) + return "scope." + error; + } + if (message.logRecords != null && message.hasOwnProperty("logRecords")) { + if (!Array.isArray(message.logRecords)) + return "logRecords: array expected"; + for (var i = 0; i < message.logRecords.length; ++i) { + var error = $root.opentelemetry.proto.logs.v1.LogRecord.verify(message.logRecords[i]); + if (error) + return "logRecords." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ScopeLogs.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.logs.v1.ScopeLogs) + return object; + var message = new $root.opentelemetry.proto.logs.v1.ScopeLogs(); + if (object.scope != null) { + if (typeof object.scope !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.ScopeLogs.scope: object expected"); + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.fromObject(object.scope); + } + if (object.logRecords) { + if (!Array.isArray(object.logRecords)) + throw TypeError(".opentelemetry.proto.logs.v1.ScopeLogs.logRecords: array expected"); + message.logRecords = []; + for (var i = 0; i < object.logRecords.length; ++i) { + if (typeof object.logRecords[i] !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.ScopeLogs.logRecords: object expected"); + message.logRecords[i] = $root.opentelemetry.proto.logs.v1.LogRecord.fromObject(object.logRecords[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ScopeLogs.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.logRecords = []; + if (options2.defaults) { + object.scope = null; + object.schemaUrl = ""; + } + if (message.scope != null && message.hasOwnProperty("scope")) + object.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.toObject(message.scope, options2); + if (message.logRecords && message.logRecords.length) { + object.logRecords = []; + for (var j = 0; j < message.logRecords.length; ++j) + object.logRecords[j] = $root.opentelemetry.proto.logs.v1.LogRecord.toObject(message.logRecords[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ScopeLogs.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ScopeLogs.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.logs.v1.ScopeLogs"; + }; + return ScopeLogs; + }(); + v1.SeverityNumber = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SEVERITY_NUMBER_UNSPECIFIED"] = 0; + values[valuesById[1] = "SEVERITY_NUMBER_TRACE"] = 1; + values[valuesById[2] = "SEVERITY_NUMBER_TRACE2"] = 2; + values[valuesById[3] = "SEVERITY_NUMBER_TRACE3"] = 3; + values[valuesById[4] = "SEVERITY_NUMBER_TRACE4"] = 4; + values[valuesById[5] = "SEVERITY_NUMBER_DEBUG"] = 5; + values[valuesById[6] = "SEVERITY_NUMBER_DEBUG2"] = 6; + values[valuesById[7] = "SEVERITY_NUMBER_DEBUG3"] = 7; + values[valuesById[8] = "SEVERITY_NUMBER_DEBUG4"] = 8; + values[valuesById[9] = "SEVERITY_NUMBER_INFO"] = 9; + values[valuesById[10] = "SEVERITY_NUMBER_INFO2"] = 10; + values[valuesById[11] = "SEVERITY_NUMBER_INFO3"] = 11; + values[valuesById[12] = "SEVERITY_NUMBER_INFO4"] = 12; + values[valuesById[13] = "SEVERITY_NUMBER_WARN"] = 13; + values[valuesById[14] = "SEVERITY_NUMBER_WARN2"] = 14; + values[valuesById[15] = "SEVERITY_NUMBER_WARN3"] = 15; + values[valuesById[16] = "SEVERITY_NUMBER_WARN4"] = 16; + values[valuesById[17] = "SEVERITY_NUMBER_ERROR"] = 17; + values[valuesById[18] = "SEVERITY_NUMBER_ERROR2"] = 18; + values[valuesById[19] = "SEVERITY_NUMBER_ERROR3"] = 19; + values[valuesById[20] = "SEVERITY_NUMBER_ERROR4"] = 20; + values[valuesById[21] = "SEVERITY_NUMBER_FATAL"] = 21; + values[valuesById[22] = "SEVERITY_NUMBER_FATAL2"] = 22; + values[valuesById[23] = "SEVERITY_NUMBER_FATAL3"] = 23; + values[valuesById[24] = "SEVERITY_NUMBER_FATAL4"] = 24; + return values; + }(); + v1.LogRecordFlags = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "LOG_RECORD_FLAGS_DO_NOT_USE"] = 0; + values[valuesById[255] = "LOG_RECORD_FLAGS_TRACE_FLAGS_MASK"] = 255; + return values; + }(); + v1.LogRecord = function() { + function LogRecord(properties2) { + this.attributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + LogRecord.prototype.timeUnixNano = null; + LogRecord.prototype.observedTimeUnixNano = null; + LogRecord.prototype.severityNumber = null; + LogRecord.prototype.severityText = null; + LogRecord.prototype.body = null; + LogRecord.prototype.attributes = $util.emptyArray; + LogRecord.prototype.droppedAttributesCount = null; + LogRecord.prototype.flags = null; + LogRecord.prototype.traceId = null; + LogRecord.prototype.spanId = null; + LogRecord.create = function create2(properties2) { + return new LogRecord(properties2); + }; + LogRecord.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 1, wireType 1 =*/ + 9 + ).fixed64(message.timeUnixNano); + if (message.severityNumber != null && Object.hasOwnProperty.call(message, "severityNumber")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).int32(message.severityNumber); + if (message.severityText != null && Object.hasOwnProperty.call(message, "severityText")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.severityText); + if (message.body != null && Object.hasOwnProperty.call(message, "body")) + $root.opentelemetry.proto.common.v1.AnyValue.encode(message.body, writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).fork()).ldelim(); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 6, wireType 2 =*/ + 50 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 7, wireType 0 =*/ + 56 + ).uint32(message.droppedAttributesCount); + if (message.flags != null && Object.hasOwnProperty.call(message, "flags")) + writer.uint32( + /* id 8, wireType 5 =*/ + 69 + ).fixed32(message.flags); + if (message.traceId != null && Object.hasOwnProperty.call(message, "traceId")) + writer.uint32( + /* id 9, wireType 2 =*/ + 74 + ).bytes(message.traceId); + if (message.spanId != null && Object.hasOwnProperty.call(message, "spanId")) + writer.uint32( + /* id 10, wireType 2 =*/ + 82 + ).bytes(message.spanId); + if (message.observedTimeUnixNano != null && Object.hasOwnProperty.call(message, "observedTimeUnixNano")) + writer.uint32( + /* id 11, wireType 1 =*/ + 89 + ).fixed64(message.observedTimeUnixNano); + return writer; + }; + LogRecord.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + LogRecord.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.logs.v1.LogRecord(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 11: { + message.observedTimeUnixNano = reader.fixed64(); + break; + } + case 2: { + message.severityNumber = reader.int32(); + break; + } + case 3: { + message.severityText = reader.string(); + break; + } + case 5: { + message.body = $root.opentelemetry.proto.common.v1.AnyValue.decode(reader, reader.uint32()); + break; + } + case 6: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 7: { + message.droppedAttributesCount = reader.uint32(); + break; + } + case 8: { + message.flags = reader.fixed32(); + break; + } + case 9: { + message.traceId = reader.bytes(); + break; + } + case 10: { + message.spanId = reader.bytes(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + LogRecord.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + LogRecord.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.observedTimeUnixNano != null && message.hasOwnProperty("observedTimeUnixNano")) { + if (!$util.isInteger(message.observedTimeUnixNano) && !(message.observedTimeUnixNano && $util.isInteger(message.observedTimeUnixNano.low) && $util.isInteger(message.observedTimeUnixNano.high))) + return "observedTimeUnixNano: integer|Long expected"; + } + if (message.severityNumber != null && message.hasOwnProperty("severityNumber")) + switch (message.severityNumber) { + default: + return "severityNumber: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + case 12: + case 13: + case 14: + case 15: + case 16: + case 17: + case 18: + case 19: + case 20: + case 21: + case 22: + case 23: + case 24: + break; + } + if (message.severityText != null && message.hasOwnProperty("severityText")) { + if (!$util.isString(message.severityText)) + return "severityText: string expected"; + } + if (message.body != null && message.hasOwnProperty("body")) { + var error = $root.opentelemetry.proto.common.v1.AnyValue.verify(message.body); + if (error) + return "body." + error; + } + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + if (message.flags != null && message.hasOwnProperty("flags")) { + if (!$util.isInteger(message.flags)) + return "flags: integer expected"; + } + if (message.traceId != null && message.hasOwnProperty("traceId")) { + if (!(message.traceId && typeof message.traceId.length === "number" || $util.isString(message.traceId))) + return "traceId: buffer expected"; + } + if (message.spanId != null && message.hasOwnProperty("spanId")) { + if (!(message.spanId && typeof message.spanId.length === "number" || $util.isString(message.spanId))) + return "spanId: buffer expected"; + } + return null; + }; + LogRecord.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.logs.v1.LogRecord) + return object; + var message = new $root.opentelemetry.proto.logs.v1.LogRecord(); + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.observedTimeUnixNano != null) { + if ($util.Long) + (message.observedTimeUnixNano = $util.Long.fromValue(object.observedTimeUnixNano)).unsigned = false; + else if (typeof object.observedTimeUnixNano === "string") + message.observedTimeUnixNano = parseInt(object.observedTimeUnixNano, 10); + else if (typeof object.observedTimeUnixNano === "number") + message.observedTimeUnixNano = object.observedTimeUnixNano; + else if (typeof object.observedTimeUnixNano === "object") + message.observedTimeUnixNano = new $util.LongBits(object.observedTimeUnixNano.low >>> 0, object.observedTimeUnixNano.high >>> 0).toNumber(); + } + switch (object.severityNumber) { + default: + if (typeof object.severityNumber === "number") { + message.severityNumber = object.severityNumber; + break; + } + break; + case "SEVERITY_NUMBER_UNSPECIFIED": + case 0: + message.severityNumber = 0; + break; + case "SEVERITY_NUMBER_TRACE": + case 1: + message.severityNumber = 1; + break; + case "SEVERITY_NUMBER_TRACE2": + case 2: + message.severityNumber = 2; + break; + case "SEVERITY_NUMBER_TRACE3": + case 3: + message.severityNumber = 3; + break; + case "SEVERITY_NUMBER_TRACE4": + case 4: + message.severityNumber = 4; + break; + case "SEVERITY_NUMBER_DEBUG": + case 5: + message.severityNumber = 5; + break; + case "SEVERITY_NUMBER_DEBUG2": + case 6: + message.severityNumber = 6; + break; + case "SEVERITY_NUMBER_DEBUG3": + case 7: + message.severityNumber = 7; + break; + case "SEVERITY_NUMBER_DEBUG4": + case 8: + message.severityNumber = 8; + break; + case "SEVERITY_NUMBER_INFO": + case 9: + message.severityNumber = 9; + break; + case "SEVERITY_NUMBER_INFO2": + case 10: + message.severityNumber = 10; + break; + case "SEVERITY_NUMBER_INFO3": + case 11: + message.severityNumber = 11; + break; + case "SEVERITY_NUMBER_INFO4": + case 12: + message.severityNumber = 12; + break; + case "SEVERITY_NUMBER_WARN": + case 13: + message.severityNumber = 13; + break; + case "SEVERITY_NUMBER_WARN2": + case 14: + message.severityNumber = 14; + break; + case "SEVERITY_NUMBER_WARN3": + case 15: + message.severityNumber = 15; + break; + case "SEVERITY_NUMBER_WARN4": + case 16: + message.severityNumber = 16; + break; + case "SEVERITY_NUMBER_ERROR": + case 17: + message.severityNumber = 17; + break; + case "SEVERITY_NUMBER_ERROR2": + case 18: + message.severityNumber = 18; + break; + case "SEVERITY_NUMBER_ERROR3": + case 19: + message.severityNumber = 19; + break; + case "SEVERITY_NUMBER_ERROR4": + case 20: + message.severityNumber = 20; + break; + case "SEVERITY_NUMBER_FATAL": + case 21: + message.severityNumber = 21; + break; + case "SEVERITY_NUMBER_FATAL2": + case 22: + message.severityNumber = 22; + break; + case "SEVERITY_NUMBER_FATAL3": + case 23: + message.severityNumber = 23; + break; + case "SEVERITY_NUMBER_FATAL4": + case 24: + message.severityNumber = 24; + break; + } + if (object.severityText != null) + message.severityText = String(object.severityText); + if (object.body != null) { + if (typeof object.body !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.LogRecord.body: object expected"); + message.body = $root.opentelemetry.proto.common.v1.AnyValue.fromObject(object.body); + } + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.logs.v1.LogRecord.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.LogRecord.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + if (object.flags != null) + message.flags = object.flags >>> 0; + if (object.traceId != null) { + if (typeof object.traceId === "string") + $util.base64.decode(object.traceId, message.traceId = $util.newBuffer($util.base64.length(object.traceId)), 0); + else if (object.traceId.length >= 0) + message.traceId = object.traceId; + } + if (object.spanId != null) { + if (typeof object.spanId === "string") + $util.base64.decode(object.spanId, message.spanId = $util.newBuffer($util.base64.length(object.spanId)), 0); + else if (object.spanId.length >= 0) + message.spanId = object.spanId; + } + return message; + }; + LogRecord.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.attributes = []; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + object.severityNumber = options2.enums === String ? "SEVERITY_NUMBER_UNSPECIFIED" : 0; + object.severityText = ""; + object.body = null; + object.droppedAttributesCount = 0; + object.flags = 0; + if (options2.bytes === String) + object.traceId = ""; + else { + object.traceId = []; + if (options2.bytes !== Array) + object.traceId = $util.newBuffer(object.traceId); + } + if (options2.bytes === String) + object.spanId = ""; + else { + object.spanId = []; + if (options2.bytes !== Array) + object.spanId = $util.newBuffer(object.spanId); + } + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.observedTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.observedTimeUnixNano = options2.longs === String ? "0" : 0; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.severityNumber != null && message.hasOwnProperty("severityNumber")) + object.severityNumber = options2.enums === String ? $root.opentelemetry.proto.logs.v1.SeverityNumber[message.severityNumber] === void 0 ? message.severityNumber : $root.opentelemetry.proto.logs.v1.SeverityNumber[message.severityNumber] : message.severityNumber; + if (message.severityText != null && message.hasOwnProperty("severityText")) + object.severityText = message.severityText; + if (message.body != null && message.hasOwnProperty("body")) + object.body = $root.opentelemetry.proto.common.v1.AnyValue.toObject(message.body, options2); + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + if (message.flags != null && message.hasOwnProperty("flags")) + object.flags = message.flags; + if (message.traceId != null && message.hasOwnProperty("traceId")) + object.traceId = options2.bytes === String ? $util.base64.encode(message.traceId, 0, message.traceId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.traceId) : message.traceId; + if (message.spanId != null && message.hasOwnProperty("spanId")) + object.spanId = options2.bytes === String ? $util.base64.encode(message.spanId, 0, message.spanId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.spanId) : message.spanId; + if (message.observedTimeUnixNano != null && message.hasOwnProperty("observedTimeUnixNano")) + if (typeof message.observedTimeUnixNano === "number") + object.observedTimeUnixNano = options2.longs === String ? String(message.observedTimeUnixNano) : message.observedTimeUnixNano; + else + object.observedTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.observedTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.observedTimeUnixNano.low >>> 0, message.observedTimeUnixNano.high >>> 0).toNumber() : message.observedTimeUnixNano; + return object; + }; + LogRecord.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + LogRecord.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.logs.v1.LogRecord"; + }; + return LogRecord; + }(); + return v1; + }(); + return logs; + }(); + return proto; + }(); + return opentelemetry2; + }(); + module2.exports = $root; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/types.js +var require_types19 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ServiceClientType = void 0; + var ServiceClientType; + (function(ServiceClientType2) { + ServiceClientType2[ServiceClientType2["SPANS"] = 0] = "SPANS"; + ServiceClientType2[ServiceClientType2["METRICS"] = 1] = "METRICS"; + ServiceClientType2[ServiceClientType2["LOGS"] = 2] = "LOGS"; + })(ServiceClientType = exports2.ServiceClientType || (exports2.ServiceClientType = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/util.js +var require_util8 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getExportRequestProto = void 0; + var root = require_root(); + var types_1 = require_types19(); + function getExportRequestProto(clientType) { + if (clientType === types_1.ServiceClientType.SPANS) { + return root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest; + } else if (clientType === types_1.ServiceClientType.LOGS) { + return root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest; + } else { + return root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest; + } + } + exports2.getExportRequestProto = getExportRequestProto; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/node/util.js +var require_util9 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/node/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.send = void 0; + var otlp_exporter_base_1 = require_src6(); + var util_1 = require_util8(); + function send(collector, objects, compression, onSuccess, onError) { + const serviceRequest = collector.convert(objects); + const exportRequestType = (0, util_1.getExportRequestProto)(collector.getServiceClientType()); + const message = exportRequestType.create(serviceRequest); + if (message) { + const body2 = exportRequestType.encode(message).finish(); + if (body2) { + (0, otlp_exporter_base_1.sendWithHttp)(collector, Buffer.from(body2), "application/x-protobuf", onSuccess, onError); + } + } else { + onError(new otlp_exporter_base_1.OTLPExporterError("No proto")); + } + } + exports2.send = send; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/node/OTLPProtoExporterNodeBase.js +var require_OTLPProtoExporterNodeBase = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/node/OTLPProtoExporterNodeBase.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPProtoExporterNodeBase = void 0; + var api_1 = require_src(); + var otlp_exporter_base_1 = require_src6(); + var OTLPProtoExporterNodeBase = class extends otlp_exporter_base_1.OTLPExporterNodeBase { + constructor(config = {}) { + super(config); + } + _sendPromise(objects, onSuccess, onError) { + const promise = new Promise((resolve8, reject) => { + this._send(this, objects, this.compression, resolve8, reject); + }).then(onSuccess, onError); + this._sendingPromises.push(promise); + const popPromise = () => { + const index = this._sendingPromises.indexOf(promise); + this._sendingPromises.splice(index, 1); + }; + promise.then(popPromise, popPromise); + } + send(objects, onSuccess, onError) { + if (this._shutdownOnce.isCalled) { + api_1.diag.debug("Shutdown already started. Cannot send objects"); + return; + } + if (!this._send) { + setImmediate(() => { + const { send } = require_util9(); + this._send = send; + this._sendPromise(objects, onSuccess, onError); + }); + } else { + this._sendPromise(objects, onSuccess, onError); + } + } + }; + exports2.OTLPProtoExporterNodeBase = OTLPProtoExporterNodeBase; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/node/index.js +var require_node13 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/node/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.send = exports2.OTLPProtoExporterNodeBase = void 0; + var OTLPProtoExporterNodeBase_1 = require_OTLPProtoExporterNodeBase(); + Object.defineProperty(exports2, "OTLPProtoExporterNodeBase", { enumerable: true, get: function() { + return OTLPProtoExporterNodeBase_1.OTLPProtoExporterNodeBase; + } }); + var util_1 = require_util9(); + Object.defineProperty(exports2, "send", { enumerable: true, get: function() { + return util_1.send; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/browser/OTLPProtoExporterBrowserBase.js +var require_OTLPProtoExporterBrowserBase = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/browser/OTLPProtoExporterBrowserBase.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPProtoExporterBrowserBase = void 0; + var api_1 = require_src(); + var otlp_exporter_base_1 = require_src6(); + var util_1 = require_util8(); + var OTLPProtoExporterBrowserBase = class extends otlp_exporter_base_1.OTLPExporterBrowserBase { + constructor(config = {}) { + super(config); + } + send(objects, onSuccess, onError) { + if (this._shutdownOnce.isCalled) { + api_1.diag.debug("Shutdown already started. Cannot send objects"); + return; + } + const serviceRequest = this.convert(objects); + const exportRequestType = (0, util_1.getExportRequestProto)(this.getServiceClientType()); + const message = exportRequestType.create(serviceRequest); + if (message) { + const body2 = exportRequestType.encode(message).finish(); + if (body2) { + (0, otlp_exporter_base_1.sendWithXhr)(new Blob([body2], { type: "application/x-protobuf" }), this.url, Object.assign(Object.assign({}, this._headers), { "Content-Type": "application/x-protobuf", Accept: "application/x-protobuf" }), this.timeoutMillis, onSuccess, onError); + } + } else { + onError(new otlp_exporter_base_1.OTLPExporterError("No proto")); + } + } + }; + exports2.OTLPProtoExporterBrowserBase = OTLPProtoExporterBrowserBase; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/browser/index.js +var require_browser4 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/browser/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ServiceClientType = exports2.OTLPProtoExporterBrowserBase = void 0; + var OTLPProtoExporterBrowserBase_1 = require_OTLPProtoExporterBrowserBase(); + Object.defineProperty(exports2, "OTLPProtoExporterBrowserBase", { enumerable: true, get: function() { + return OTLPProtoExporterBrowserBase_1.OTLPProtoExporterBrowserBase; + } }); + var types_1 = require_types19(); + Object.defineProperty(exports2, "ServiceClientType", { enumerable: true, get: function() { + return types_1.ServiceClientType; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/index.js +var require_platform10 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/platform/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getExportRequestProto = exports2.ServiceClientType = exports2.OTLPProtoExporterBrowserBase = exports2.send = exports2.OTLPProtoExporterNodeBase = void 0; + var node_1 = require_node13(); + Object.defineProperty(exports2, "OTLPProtoExporterNodeBase", { enumerable: true, get: function() { + return node_1.OTLPProtoExporterNodeBase; + } }); + Object.defineProperty(exports2, "send", { enumerable: true, get: function() { + return node_1.send; + } }); + var browser_1 = require_browser4(); + Object.defineProperty(exports2, "OTLPProtoExporterBrowserBase", { enumerable: true, get: function() { + return browser_1.OTLPProtoExporterBrowserBase; + } }); + var types_1 = require_types19(); + Object.defineProperty(exports2, "ServiceClientType", { enumerable: true, get: function() { + return types_1.ServiceClientType; + } }); + var util_1 = require_util8(); + Object.defineProperty(exports2, "getExportRequestProto", { enumerable: true, get: function() { + return util_1.getExportRequestProto; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/index.js +var require_src21 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-proto-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-proto-exporter-base/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_platform10(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-proto@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/version.js +var require_version6 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-proto@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/version.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VERSION = void 0; + exports2.VERSION = "0.45.1"; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-proto@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/platform/node/OTLPTraceExporter.js +var require_OTLPTraceExporter2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-proto@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/platform/node/OTLPTraceExporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPTraceExporter = void 0; + var core_1 = require_src5(); + var otlp_exporter_base_1 = require_src6(); + var otlp_proto_exporter_base_1 = require_src21(); + var otlp_transformer_1 = require_src9(); + var version_1 = require_version6(); + var DEFAULT_COLLECTOR_RESOURCE_PATH = "v1/traces"; + var DEFAULT_COLLECTOR_URL = `http://localhost:4318/${DEFAULT_COLLECTOR_RESOURCE_PATH}`; + var USER_AGENT = { + "User-Agent": `OTel-OTLP-Exporter-JavaScript/${version_1.VERSION}` + }; + var OTLPTraceExporter2 = class extends otlp_proto_exporter_base_1.OTLPProtoExporterNodeBase { + constructor(config = {}) { + super(config); + this.headers = Object.assign(Object.assign(Object.assign({}, this.headers), USER_AGENT), core_1.baggageUtils.parseKeyPairsIntoRecord((0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_HEADERS)); + } + convert(spans) { + return (0, otlp_transformer_1.createExportTraceServiceRequest)(spans); + } + getDefaultUrl(config) { + return typeof config.url === "string" ? config.url : (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_ENDPOINT.length > 0 ? (0, otlp_exporter_base_1.appendRootPathToUrlIfNeeded)((0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_ENDPOINT) : (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_ENDPOINT.length > 0 ? (0, otlp_exporter_base_1.appendResourcePathToUrl)((0, core_1.getEnv)().OTEL_EXPORTER_OTLP_ENDPOINT, DEFAULT_COLLECTOR_RESOURCE_PATH) : DEFAULT_COLLECTOR_URL; + } + getServiceClientType() { + return otlp_proto_exporter_base_1.ServiceClientType.SPANS; + } + }; + exports2.OTLPTraceExporter = OTLPTraceExporter2; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-proto@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/platform/node/index.js +var require_node14 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-proto@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/platform/node/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPTraceExporter = void 0; + var OTLPTraceExporter_1 = require_OTLPTraceExporter2(); + Object.defineProperty(exports2, "OTLPTraceExporter", { enumerable: true, get: function() { + return OTLPTraceExporter_1.OTLPTraceExporter; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-proto@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/platform/index.js +var require_platform11 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-proto@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/platform/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPTraceExporter = void 0; + var node_1 = require_node14(); + Object.defineProperty(exports2, "OTLPTraceExporter", { enumerable: true, get: function() { + return node_1.OTLPTraceExporter; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-proto@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/index.js +var require_src22 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-proto@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPTraceExporter = void 0; + var platform_1 = require_platform11(); + Object.defineProperty(exports2, "OTLPTraceExporter", { enumerable: true, get: function() { + return platform_1.OTLPTraceExporter; + } }); + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/constants.js +var require_constants10 = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.DEFAULT_MAX_RECEIVE_MESSAGE_LENGTH = exports2.DEFAULT_MAX_SEND_MESSAGE_LENGTH = exports2.Propagate = exports2.LogVerbosity = exports2.Status = void 0; + var Status; + (function(Status2) { + Status2[Status2["OK"] = 0] = "OK"; + Status2[Status2["CANCELLED"] = 1] = "CANCELLED"; + Status2[Status2["UNKNOWN"] = 2] = "UNKNOWN"; + Status2[Status2["INVALID_ARGUMENT"] = 3] = "INVALID_ARGUMENT"; + Status2[Status2["DEADLINE_EXCEEDED"] = 4] = "DEADLINE_EXCEEDED"; + Status2[Status2["NOT_FOUND"] = 5] = "NOT_FOUND"; + Status2[Status2["ALREADY_EXISTS"] = 6] = "ALREADY_EXISTS"; + Status2[Status2["PERMISSION_DENIED"] = 7] = "PERMISSION_DENIED"; + Status2[Status2["RESOURCE_EXHAUSTED"] = 8] = "RESOURCE_EXHAUSTED"; + Status2[Status2["FAILED_PRECONDITION"] = 9] = "FAILED_PRECONDITION"; + Status2[Status2["ABORTED"] = 10] = "ABORTED"; + Status2[Status2["OUT_OF_RANGE"] = 11] = "OUT_OF_RANGE"; + Status2[Status2["UNIMPLEMENTED"] = 12] = "UNIMPLEMENTED"; + Status2[Status2["INTERNAL"] = 13] = "INTERNAL"; + Status2[Status2["UNAVAILABLE"] = 14] = "UNAVAILABLE"; + Status2[Status2["DATA_LOSS"] = 15] = "DATA_LOSS"; + Status2[Status2["UNAUTHENTICATED"] = 16] = "UNAUTHENTICATED"; + })(Status = exports2.Status || (exports2.Status = {})); + var LogVerbosity; + (function(LogVerbosity2) { + LogVerbosity2[LogVerbosity2["DEBUG"] = 0] = "DEBUG"; + LogVerbosity2[LogVerbosity2["INFO"] = 1] = "INFO"; + LogVerbosity2[LogVerbosity2["ERROR"] = 2] = "ERROR"; + LogVerbosity2[LogVerbosity2["NONE"] = 3] = "NONE"; + })(LogVerbosity = exports2.LogVerbosity || (exports2.LogVerbosity = {})); + var Propagate; + (function(Propagate2) { + Propagate2[Propagate2["DEADLINE"] = 1] = "DEADLINE"; + Propagate2[Propagate2["CENSUS_STATS_CONTEXT"] = 2] = "CENSUS_STATS_CONTEXT"; + Propagate2[Propagate2["CENSUS_TRACING_CONTEXT"] = 4] = "CENSUS_TRACING_CONTEXT"; + Propagate2[Propagate2["CANCELLATION"] = 8] = "CANCELLATION"; + Propagate2[Propagate2["DEFAULTS"] = 65535] = "DEFAULTS"; + })(Propagate = exports2.Propagate || (exports2.Propagate = {})); + exports2.DEFAULT_MAX_SEND_MESSAGE_LENGTH = -1; + exports2.DEFAULT_MAX_RECEIVE_MESSAGE_LENGTH = 4 * 1024 * 1024; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/logging.js +var require_logging = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/logging.js"(exports2) { + "use strict"; + var _a; + var _b; + var _c; + var _d; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isTracerEnabled = exports2.trace = exports2.log = exports2.setLoggerVerbosity = exports2.setLogger = exports2.getLogger = void 0; + var constants_1 = require_constants10(); + var DEFAULT_LOGGER = { + error: (message, ...optionalParams) => { + console.error("E " + message, ...optionalParams); + }, + info: (message, ...optionalParams) => { + console.error("I " + message, ...optionalParams); + }, + debug: (message, ...optionalParams) => { + console.error("D " + message, ...optionalParams); + } + }; + var _logger = DEFAULT_LOGGER; + var _logVerbosity = constants_1.LogVerbosity.ERROR; + var verbosityString = (_b = (_a = process.env.GRPC_NODE_VERBOSITY) !== null && _a !== void 0 ? _a : process.env.GRPC_VERBOSITY) !== null && _b !== void 0 ? _b : ""; + switch (verbosityString.toUpperCase()) { + case "DEBUG": + _logVerbosity = constants_1.LogVerbosity.DEBUG; + break; + case "INFO": + _logVerbosity = constants_1.LogVerbosity.INFO; + break; + case "ERROR": + _logVerbosity = constants_1.LogVerbosity.ERROR; + break; + case "NONE": + _logVerbosity = constants_1.LogVerbosity.NONE; + break; + default: + } + var getLogger = () => { + return _logger; + }; + exports2.getLogger = getLogger; + var setLogger = (logger2) => { + _logger = logger2; + }; + exports2.setLogger = setLogger; + var setLoggerVerbosity = (verbosity) => { + _logVerbosity = verbosity; + }; + exports2.setLoggerVerbosity = setLoggerVerbosity; + var log2 = (severity, ...args3) => { + let logFunction; + if (severity >= _logVerbosity) { + switch (severity) { + case constants_1.LogVerbosity.DEBUG: + logFunction = _logger.debug; + break; + case constants_1.LogVerbosity.INFO: + logFunction = _logger.info; + break; + case constants_1.LogVerbosity.ERROR: + logFunction = _logger.error; + break; + } + if (!logFunction) { + logFunction = _logger.error; + } + if (logFunction) { + logFunction.bind(_logger)(...args3); + } + } + }; + exports2.log = log2; + var tracersString = (_d = (_c = process.env.GRPC_NODE_TRACE) !== null && _c !== void 0 ? _c : process.env.GRPC_TRACE) !== null && _d !== void 0 ? _d : ""; + var enabledTracers = /* @__PURE__ */ new Set(); + var disabledTracers = /* @__PURE__ */ new Set(); + for (const tracerName of tracersString.split(",")) { + if (tracerName.startsWith("-")) { + disabledTracers.add(tracerName.substring(1)); + } else { + enabledTracers.add(tracerName); + } + } + var allEnabled = enabledTracers.has("all"); + function trace(severity, tracer2, text) { + if (isTracerEnabled(tracer2)) { + (0, exports2.log)(severity, (/* @__PURE__ */ new Date()).toISOString() + " | " + tracer2 + " | " + text); + } + } + exports2.trace = trace; + function isTracerEnabled(tracer2) { + return !disabledTracers.has(tracer2) && (allEnabled || enabledTracers.has(tracer2)); + } + exports2.isTracerEnabled = isTracerEnabled; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/error.js +var require_error3 = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/error.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getErrorCode = exports2.getErrorMessage = void 0; + function getErrorMessage(error) { + if (error instanceof Error) { + return error.message; + } else { + return String(error); + } + } + exports2.getErrorMessage = getErrorMessage; + function getErrorCode(error) { + if (typeof error === "object" && error !== null && "code" in error && typeof error.code === "number") { + return error.code; + } else { + return null; + } + } + exports2.getErrorCode = getErrorCode; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/metadata.js +var require_metadata3 = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/metadata.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Metadata = void 0; + var logging_1 = require_logging(); + var constants_1 = require_constants10(); + var error_1 = require_error3(); + var LEGAL_KEY_REGEX = /^[0-9a-z_.-]+$/; + var LEGAL_NON_BINARY_VALUE_REGEX = /^[ -~]*$/; + function isLegalKey(key) { + return LEGAL_KEY_REGEX.test(key); + } + function isLegalNonBinaryValue(value) { + return LEGAL_NON_BINARY_VALUE_REGEX.test(value); + } + function isBinaryKey(key) { + return key.endsWith("-bin"); + } + function isCustomMetadata(key) { + return !key.startsWith("grpc-"); + } + function normalizeKey(key) { + return key.toLowerCase(); + } + function validate(key, value) { + if (!isLegalKey(key)) { + throw new Error('Metadata key "' + key + '" contains illegal characters'); + } + if (value !== null && value !== void 0) { + if (isBinaryKey(key)) { + if (!Buffer.isBuffer(value)) { + throw new Error("keys that end with '-bin' must have Buffer values"); + } + } else { + if (Buffer.isBuffer(value)) { + throw new Error("keys that don't end with '-bin' must have String values"); + } + if (!isLegalNonBinaryValue(value)) { + throw new Error('Metadata string value "' + value + '" contains illegal characters'); + } + } + } + } + var Metadata = class _Metadata { + constructor(options2 = {}) { + this.internalRepr = /* @__PURE__ */ new Map(); + this.options = options2; + } + /** + * Sets the given value for the given key by replacing any other values + * associated with that key. Normalizes the key. + * @param key The key to whose value should be set. + * @param value The value to set. Must be a buffer if and only + * if the normalized key ends with '-bin'. + */ + set(key, value) { + key = normalizeKey(key); + validate(key, value); + this.internalRepr.set(key, [value]); + } + /** + * Adds the given value for the given key by appending to a list of previous + * values associated with that key. Normalizes the key. + * @param key The key for which a new value should be appended. + * @param value The value to add. Must be a buffer if and only + * if the normalized key ends with '-bin'. + */ + add(key, value) { + key = normalizeKey(key); + validate(key, value); + const existingValue = this.internalRepr.get(key); + if (existingValue === void 0) { + this.internalRepr.set(key, [value]); + } else { + existingValue.push(value); + } + } + /** + * Removes the given key and any associated values. Normalizes the key. + * @param key The key whose values should be removed. + */ + remove(key) { + key = normalizeKey(key); + this.internalRepr.delete(key); + } + /** + * Gets a list of all values associated with the key. Normalizes the key. + * @param key The key whose value should be retrieved. + * @return A list of values associated with the given key. + */ + get(key) { + key = normalizeKey(key); + return this.internalRepr.get(key) || []; + } + /** + * Gets a plain object mapping each key to the first value associated with it. + * This reflects the most common way that people will want to see metadata. + * @return A key/value mapping of the metadata. + */ + getMap() { + const result = {}; + for (const [key, values] of this.internalRepr) { + if (values.length > 0) { + const v = values[0]; + result[key] = Buffer.isBuffer(v) ? Buffer.from(v) : v; + } + } + return result; + } + /** + * Clones the metadata object. + * @return The newly cloned object. + */ + clone() { + const newMetadata = new _Metadata(this.options); + const newInternalRepr = newMetadata.internalRepr; + for (const [key, value] of this.internalRepr) { + const clonedValue = value.map((v) => { + if (Buffer.isBuffer(v)) { + return Buffer.from(v); + } else { + return v; + } + }); + newInternalRepr.set(key, clonedValue); + } + return newMetadata; + } + /** + * Merges all key-value pairs from a given Metadata object into this one. + * If both this object and the given object have values in the same key, + * values from the other Metadata object will be appended to this object's + * values. + * @param other A Metadata object. + */ + merge(other) { + for (const [key, values] of other.internalRepr) { + const mergedValue = (this.internalRepr.get(key) || []).concat(values); + this.internalRepr.set(key, mergedValue); + } + } + setOptions(options2) { + this.options = options2; + } + getOptions() { + return this.options; + } + /** + * Creates an OutgoingHttpHeaders object that can be used with the http2 API. + */ + toHttp2Headers() { + const result = {}; + for (const [key, values] of this.internalRepr) { + result[key] = values.map(bufToString); + } + return result; + } + /** + * This modifies the behavior of JSON.stringify to show an object + * representation of the metadata map. + */ + toJSON() { + const result = {}; + for (const [key, values] of this.internalRepr) { + result[key] = values; + } + return result; + } + /** + * Returns a new Metadata object based fields in a given IncomingHttpHeaders + * object. + * @param headers An IncomingHttpHeaders object. + */ + static fromHttp2Headers(headers) { + const result = new _Metadata(); + for (const key of Object.keys(headers)) { + if (key.charAt(0) === ":") { + continue; + } + const values = headers[key]; + try { + if (isBinaryKey(key)) { + if (Array.isArray(values)) { + values.forEach((value) => { + result.add(key, Buffer.from(value, "base64")); + }); + } else if (values !== void 0) { + if (isCustomMetadata(key)) { + values.split(",").forEach((v) => { + result.add(key, Buffer.from(v.trim(), "base64")); + }); + } else { + result.add(key, Buffer.from(values, "base64")); + } + } + } else { + if (Array.isArray(values)) { + values.forEach((value) => { + result.add(key, value); + }); + } else if (values !== void 0) { + result.add(key, values); + } + } + } catch (error) { + const message = `Failed to add metadata entry ${key}: ${values}. ${(0, error_1.getErrorMessage)(error)}. For more information see https://github.com/grpc/grpc-node/issues/1173`; + (0, logging_1.log)(constants_1.LogVerbosity.ERROR, message); + } + } + return result; + } + }; + exports2.Metadata = Metadata; + var bufToString = (val) => { + return Buffer.isBuffer(val) ? val.toString("base64") : val; + }; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/call-credentials.js +var require_call_credentials = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/call-credentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CallCredentials = void 0; + var metadata_1 = require_metadata3(); + function isCurrentOauth2Client(client) { + return "getRequestHeaders" in client && typeof client.getRequestHeaders === "function"; + } + var CallCredentials = class _CallCredentials { + /** + * Creates a new CallCredentials object from a given function that generates + * Metadata objects. + * @param metadataGenerator A function that accepts a set of options, and + * generates a Metadata object based on these options, which is passed back + * to the caller via a supplied (err, metadata) callback. + */ + static createFromMetadataGenerator(metadataGenerator) { + return new SingleCallCredentials(metadataGenerator); + } + /** + * Create a gRPC credential from a Google credential object. + * @param googleCredentials The authentication client to use. + * @return The resulting CallCredentials object. + */ + static createFromGoogleCredential(googleCredentials) { + return _CallCredentials.createFromMetadataGenerator((options2, callback) => { + let getHeaders; + if (isCurrentOauth2Client(googleCredentials)) { + getHeaders = googleCredentials.getRequestHeaders(options2.service_url); + } else { + getHeaders = new Promise((resolve8, reject) => { + googleCredentials.getRequestMetadata(options2.service_url, (err2, headers) => { + if (err2) { + reject(err2); + return; + } + if (!headers) { + reject(new Error("Headers not set by metadata plugin")); + return; + } + resolve8(headers); + }); + }); + } + getHeaders.then((headers) => { + const metadata2 = new metadata_1.Metadata(); + for (const key of Object.keys(headers)) { + metadata2.add(key, headers[key]); + } + callback(null, metadata2); + }, (err2) => { + callback(err2); + }); + }); + } + static createEmpty() { + return new EmptyCallCredentials(); + } + }; + exports2.CallCredentials = CallCredentials; + var ComposedCallCredentials = class _ComposedCallCredentials extends CallCredentials { + constructor(creds) { + super(); + this.creds = creds; + } + async generateMetadata(options2) { + const base = new metadata_1.Metadata(); + const generated = await Promise.all(this.creds.map((cred) => cred.generateMetadata(options2))); + for (const gen of generated) { + base.merge(gen); + } + return base; + } + compose(other) { + return new _ComposedCallCredentials(this.creds.concat([other])); + } + _equals(other) { + if (this === other) { + return true; + } + if (other instanceof _ComposedCallCredentials) { + return this.creds.every((value, index) => value._equals(other.creds[index])); + } else { + return false; + } + } + }; + var SingleCallCredentials = class _SingleCallCredentials extends CallCredentials { + constructor(metadataGenerator) { + super(); + this.metadataGenerator = metadataGenerator; + } + generateMetadata(options2) { + return new Promise((resolve8, reject) => { + this.metadataGenerator(options2, (err2, metadata2) => { + if (metadata2 !== void 0) { + resolve8(metadata2); + } else { + reject(err2); + } + }); + }); + } + compose(other) { + return new ComposedCallCredentials([this, other]); + } + _equals(other) { + if (this === other) { + return true; + } + if (other instanceof _SingleCallCredentials) { + return this.metadataGenerator === other.metadataGenerator; + } else { + return false; + } + } + }; + var EmptyCallCredentials = class _EmptyCallCredentials extends CallCredentials { + generateMetadata(options2) { + return Promise.resolve(new metadata_1.Metadata()); + } + compose(other) { + return other; + } + _equals(other) { + return other instanceof _EmptyCallCredentials; + } + }; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/tls-helpers.js +var require_tls_helpers = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/tls-helpers.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getDefaultRootsData = exports2.CIPHER_SUITES = void 0; + var fs6 = require("fs"); + exports2.CIPHER_SUITES = process.env.GRPC_SSL_CIPHER_SUITES; + var DEFAULT_ROOTS_FILE_PATH = process.env.GRPC_DEFAULT_SSL_ROOTS_FILE_PATH; + var defaultRootsData = null; + function getDefaultRootsData() { + if (DEFAULT_ROOTS_FILE_PATH) { + if (defaultRootsData === null) { + defaultRootsData = fs6.readFileSync(DEFAULT_ROOTS_FILE_PATH); + } + return defaultRootsData; + } + return null; + } + exports2.getDefaultRootsData = getDefaultRootsData; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/channel-credentials.js +var require_channel_credentials = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/channel-credentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ChannelCredentials = void 0; + var tls_1 = require("tls"); + var call_credentials_1 = require_call_credentials(); + var tls_helpers_1 = require_tls_helpers(); + function verifyIsBufferOrNull(obj2, friendlyName) { + if (obj2 && !(obj2 instanceof Buffer)) { + throw new TypeError(`${friendlyName}, if provided, must be a Buffer.`); + } + } + var ChannelCredentials = class { + constructor(callCredentials) { + this.callCredentials = callCredentials || call_credentials_1.CallCredentials.createEmpty(); + } + /** + * Gets the set of per-call credentials associated with this instance. + */ + _getCallCredentials() { + return this.callCredentials; + } + /** + * Return a new ChannelCredentials instance with a given set of credentials. + * The resulting instance can be used to construct a Channel that communicates + * over TLS. + * @param rootCerts The root certificate data. + * @param privateKey The client certificate private key, if available. + * @param certChain The client certificate key chain, if available. + * @param verifyOptions Additional options to modify certificate verification + */ + static createSsl(rootCerts, privateKey, certChain, verifyOptions) { + var _a; + verifyIsBufferOrNull(rootCerts, "Root certificate"); + verifyIsBufferOrNull(privateKey, "Private key"); + verifyIsBufferOrNull(certChain, "Certificate chain"); + if (privateKey && !certChain) { + throw new Error("Private key must be given with accompanying certificate chain"); + } + if (!privateKey && certChain) { + throw new Error("Certificate chain must be given with accompanying private key"); + } + const secureContext = (0, tls_1.createSecureContext)({ + ca: (_a = rootCerts !== null && rootCerts !== void 0 ? rootCerts : (0, tls_helpers_1.getDefaultRootsData)()) !== null && _a !== void 0 ? _a : void 0, + key: privateKey !== null && privateKey !== void 0 ? privateKey : void 0, + cert: certChain !== null && certChain !== void 0 ? certChain : void 0, + ciphers: tls_helpers_1.CIPHER_SUITES + }); + return new SecureChannelCredentialsImpl(secureContext, verifyOptions !== null && verifyOptions !== void 0 ? verifyOptions : {}); + } + /** + * Return a new ChannelCredentials instance with credentials created using + * the provided secureContext. The resulting instances can be used to + * construct a Channel that communicates over TLS. gRPC will not override + * anything in the provided secureContext, so the environment variables + * GRPC_SSL_CIPHER_SUITES and GRPC_DEFAULT_SSL_ROOTS_FILE_PATH will + * not be applied. + * @param secureContext The return value of tls.createSecureContext() + * @param verifyOptions Additional options to modify certificate verification + */ + static createFromSecureContext(secureContext, verifyOptions) { + return new SecureChannelCredentialsImpl(secureContext, verifyOptions !== null && verifyOptions !== void 0 ? verifyOptions : {}); + } + /** + * Return a new ChannelCredentials instance with no credentials. + */ + static createInsecure() { + return new InsecureChannelCredentialsImpl(); + } + }; + exports2.ChannelCredentials = ChannelCredentials; + var InsecureChannelCredentialsImpl = class _InsecureChannelCredentialsImpl extends ChannelCredentials { + constructor(callCredentials) { + super(callCredentials); + } + compose(callCredentials) { + throw new Error("Cannot compose insecure credentials"); + } + _getConnectionOptions() { + return null; + } + _isSecure() { + return false; + } + _equals(other) { + return other instanceof _InsecureChannelCredentialsImpl; + } + }; + var SecureChannelCredentialsImpl = class _SecureChannelCredentialsImpl extends ChannelCredentials { + constructor(secureContext, verifyOptions) { + super(); + this.secureContext = secureContext; + this.verifyOptions = verifyOptions; + this.connectionOptions = { + secureContext + }; + if (verifyOptions === null || verifyOptions === void 0 ? void 0 : verifyOptions.checkServerIdentity) { + this.connectionOptions.checkServerIdentity = verifyOptions.checkServerIdentity; + } + } + compose(callCredentials) { + const combinedCallCredentials = this.callCredentials.compose(callCredentials); + return new ComposedChannelCredentialsImpl(this, combinedCallCredentials); + } + _getConnectionOptions() { + return Object.assign({}, this.connectionOptions); + } + _isSecure() { + return true; + } + _equals(other) { + if (this === other) { + return true; + } + if (other instanceof _SecureChannelCredentialsImpl) { + return this.secureContext === other.secureContext && this.verifyOptions.checkServerIdentity === other.verifyOptions.checkServerIdentity; + } else { + return false; + } + } + }; + var ComposedChannelCredentialsImpl = class _ComposedChannelCredentialsImpl extends ChannelCredentials { + constructor(channelCredentials, callCreds) { + super(callCreds); + this.channelCredentials = channelCredentials; + } + compose(callCredentials) { + const combinedCallCredentials = this.callCredentials.compose(callCredentials); + return new _ComposedChannelCredentialsImpl(this.channelCredentials, combinedCallCredentials); + } + _getConnectionOptions() { + return this.channelCredentials._getConnectionOptions(); + } + _isSecure() { + return true; + } + _equals(other) { + if (this === other) { + return true; + } + if (other instanceof _ComposedChannelCredentialsImpl) { + return this.channelCredentials._equals(other.channelCredentials) && this.callCredentials._equals(other.callCredentials); + } else { + return false; + } + } + }; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancer.js +var require_load_balancer = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.validateLoadBalancingConfig = exports2.getFirstUsableConfig = exports2.isLoadBalancerNameRegistered = exports2.createLoadBalancer = exports2.registerDefaultLoadBalancerType = exports2.registerLoadBalancerType = exports2.createChildChannelControlHelper = void 0; + function createChildChannelControlHelper(parent, overrides) { + var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k; + return { + createSubchannel: (_b = (_a = overrides.createSubchannel) === null || _a === void 0 ? void 0 : _a.bind(overrides)) !== null && _b !== void 0 ? _b : parent.createSubchannel.bind(parent), + updateState: (_d = (_c = overrides.updateState) === null || _c === void 0 ? void 0 : _c.bind(overrides)) !== null && _d !== void 0 ? _d : parent.updateState.bind(parent), + requestReresolution: (_f = (_e = overrides.requestReresolution) === null || _e === void 0 ? void 0 : _e.bind(overrides)) !== null && _f !== void 0 ? _f : parent.requestReresolution.bind(parent), + addChannelzChild: (_h = (_g = overrides.addChannelzChild) === null || _g === void 0 ? void 0 : _g.bind(overrides)) !== null && _h !== void 0 ? _h : parent.addChannelzChild.bind(parent), + removeChannelzChild: (_k = (_j = overrides.removeChannelzChild) === null || _j === void 0 ? void 0 : _j.bind(overrides)) !== null && _k !== void 0 ? _k : parent.removeChannelzChild.bind(parent) + }; + } + exports2.createChildChannelControlHelper = createChildChannelControlHelper; + var registeredLoadBalancerTypes = {}; + var defaultLoadBalancerType = null; + function registerLoadBalancerType(typeName, loadBalancerType, loadBalancingConfigType) { + registeredLoadBalancerTypes[typeName] = { + LoadBalancer: loadBalancerType, + LoadBalancingConfig: loadBalancingConfigType + }; + } + exports2.registerLoadBalancerType = registerLoadBalancerType; + function registerDefaultLoadBalancerType(typeName) { + defaultLoadBalancerType = typeName; + } + exports2.registerDefaultLoadBalancerType = registerDefaultLoadBalancerType; + function createLoadBalancer(config, channelControlHelper) { + const typeName = config.getLoadBalancerName(); + if (typeName in registeredLoadBalancerTypes) { + return new registeredLoadBalancerTypes[typeName].LoadBalancer(channelControlHelper); + } else { + return null; + } + } + exports2.createLoadBalancer = createLoadBalancer; + function isLoadBalancerNameRegistered(typeName) { + return typeName in registeredLoadBalancerTypes; + } + exports2.isLoadBalancerNameRegistered = isLoadBalancerNameRegistered; + function getFirstUsableConfig(configs, fallbackTodefault = false) { + for (const config of configs) { + if (config.getLoadBalancerName() in registeredLoadBalancerTypes) { + return config; + } + } + if (fallbackTodefault) { + if (defaultLoadBalancerType) { + return new registeredLoadBalancerTypes[defaultLoadBalancerType].LoadBalancingConfig(); + } else { + return null; + } + } else { + return null; + } + } + exports2.getFirstUsableConfig = getFirstUsableConfig; + function validateLoadBalancingConfig(obj2) { + if (!(obj2 !== null && typeof obj2 === "object")) { + throw new Error("Load balancing config must be an object"); + } + const keys = Object.keys(obj2); + if (keys.length !== 1) { + throw new Error("Provided load balancing config has multiple conflicting entries"); + } + const typeName = keys[0]; + if (typeName in registeredLoadBalancerTypes) { + return registeredLoadBalancerTypes[typeName].LoadBalancingConfig.createFromJson(obj2[typeName]); + } else { + throw new Error(`Unrecognized load balancing config name ${typeName}`); + } + } + exports2.validateLoadBalancingConfig = validateLoadBalancingConfig; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/service-config.js +var require_service_config = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/service-config.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.extractAndSelectServiceConfig = exports2.validateServiceConfig = exports2.validateRetryThrottling = void 0; + var os8 = require("os"); + var constants_1 = require_constants10(); + var load_balancer_1 = require_load_balancer(); + var DURATION_REGEX = /^\d+(\.\d{1,9})?s$/; + var CLIENT_LANGUAGE_STRING = "node"; + function validateName(obj2) { + if (!("service" in obj2) || typeof obj2.service !== "string") { + throw new Error("Invalid method config name: invalid service"); + } + const result = { + service: obj2.service + }; + if ("method" in obj2) { + if (typeof obj2.method === "string") { + result.method = obj2.method; + } else { + throw new Error("Invalid method config name: invalid method"); + } + } + return result; + } + function validateRetryPolicy(obj2) { + if (!("maxAttempts" in obj2) || !Number.isInteger(obj2.maxAttempts) || obj2.maxAttempts < 2) { + throw new Error("Invalid method config retry policy: maxAttempts must be an integer at least 2"); + } + if (!("initialBackoff" in obj2) || typeof obj2.initialBackoff !== "string" || !DURATION_REGEX.test(obj2.initialBackoff)) { + throw new Error("Invalid method config retry policy: initialBackoff must be a string consisting of a positive integer followed by s"); + } + if (!("maxBackoff" in obj2) || typeof obj2.maxBackoff !== "string" || !DURATION_REGEX.test(obj2.maxBackoff)) { + throw new Error("Invalid method config retry policy: maxBackoff must be a string consisting of a positive integer followed by s"); + } + if (!("backoffMultiplier" in obj2) || typeof obj2.backoffMultiplier !== "number" || obj2.backoffMultiplier <= 0) { + throw new Error("Invalid method config retry policy: backoffMultiplier must be a number greater than 0"); + } + if (!("retryableStatusCodes" in obj2 && Array.isArray(obj2.retryableStatusCodes))) { + throw new Error("Invalid method config retry policy: retryableStatusCodes is required"); + } + if (obj2.retryableStatusCodes.length === 0) { + throw new Error("Invalid method config retry policy: retryableStatusCodes must be non-empty"); + } + for (const value of obj2.retryableStatusCodes) { + if (typeof value === "number") { + if (!Object.values(constants_1.Status).includes(value)) { + throw new Error("Invalid method config retry policy: retryableStatusCodes value not in status code range"); + } + } else if (typeof value === "string") { + if (!Object.values(constants_1.Status).includes(value.toUpperCase())) { + throw new Error("Invalid method config retry policy: retryableStatusCodes value not a status code name"); + } + } else { + throw new Error("Invalid method config retry policy: retryableStatusCodes value must be a string or number"); + } + } + return { + maxAttempts: obj2.maxAttempts, + initialBackoff: obj2.initialBackoff, + maxBackoff: obj2.maxBackoff, + backoffMultiplier: obj2.backoffMultiplier, + retryableStatusCodes: obj2.retryableStatusCodes + }; + } + function validateHedgingPolicy(obj2) { + if (!("maxAttempts" in obj2) || !Number.isInteger(obj2.maxAttempts) || obj2.maxAttempts < 2) { + throw new Error("Invalid method config hedging policy: maxAttempts must be an integer at least 2"); + } + if ("hedgingDelay" in obj2 && (typeof obj2.hedgingDelay !== "string" || !DURATION_REGEX.test(obj2.hedgingDelay))) { + throw new Error("Invalid method config hedging policy: hedgingDelay must be a string consisting of a positive integer followed by s"); + } + if ("nonFatalStatusCodes" in obj2 && Array.isArray(obj2.nonFatalStatusCodes)) { + for (const value of obj2.nonFatalStatusCodes) { + if (typeof value === "number") { + if (!Object.values(constants_1.Status).includes(value)) { + throw new Error("Invlid method config hedging policy: nonFatalStatusCodes value not in status code range"); + } + } else if (typeof value === "string") { + if (!Object.values(constants_1.Status).includes(value.toUpperCase())) { + throw new Error("Invlid method config hedging policy: nonFatalStatusCodes value not a status code name"); + } + } else { + throw new Error("Invlid method config hedging policy: nonFatalStatusCodes value must be a string or number"); + } + } + } + const result = { + maxAttempts: obj2.maxAttempts + }; + if (obj2.hedgingDelay) { + result.hedgingDelay = obj2.hedgingDelay; + } + if (obj2.nonFatalStatusCodes) { + result.nonFatalStatusCodes = obj2.nonFatalStatusCodes; + } + return result; + } + function validateMethodConfig(obj2) { + var _a; + const result = { + name: [] + }; + if (!("name" in obj2) || !Array.isArray(obj2.name)) { + throw new Error("Invalid method config: invalid name array"); + } + for (const name of obj2.name) { + result.name.push(validateName(name)); + } + if ("waitForReady" in obj2) { + if (typeof obj2.waitForReady !== "boolean") { + throw new Error("Invalid method config: invalid waitForReady"); + } + result.waitForReady = obj2.waitForReady; + } + if ("timeout" in obj2) { + if (typeof obj2.timeout === "object") { + if (!("seconds" in obj2.timeout) || !(typeof obj2.timeout.seconds === "number")) { + throw new Error("Invalid method config: invalid timeout.seconds"); + } + if (!("nanos" in obj2.timeout) || !(typeof obj2.timeout.nanos === "number")) { + throw new Error("Invalid method config: invalid timeout.nanos"); + } + result.timeout = obj2.timeout; + } else if (typeof obj2.timeout === "string" && DURATION_REGEX.test(obj2.timeout)) { + const timeoutParts = obj2.timeout.substring(0, obj2.timeout.length - 1).split("."); + result.timeout = { + seconds: timeoutParts[0] | 0, + nanos: ((_a = timeoutParts[1]) !== null && _a !== void 0 ? _a : 0) | 0 + }; + } else { + throw new Error("Invalid method config: invalid timeout"); + } + } + if ("maxRequestBytes" in obj2) { + if (typeof obj2.maxRequestBytes !== "number") { + throw new Error("Invalid method config: invalid maxRequestBytes"); + } + result.maxRequestBytes = obj2.maxRequestBytes; + } + if ("maxResponseBytes" in obj2) { + if (typeof obj2.maxResponseBytes !== "number") { + throw new Error("Invalid method config: invalid maxRequestBytes"); + } + result.maxResponseBytes = obj2.maxResponseBytes; + } + if ("retryPolicy" in obj2) { + if ("hedgingPolicy" in obj2) { + throw new Error("Invalid method config: retryPolicy and hedgingPolicy cannot both be specified"); + } else { + result.retryPolicy = validateRetryPolicy(obj2.retryPolicy); + } + } else if ("hedgingPolicy" in obj2) { + result.hedgingPolicy = validateHedgingPolicy(obj2.hedgingPolicy); + } + return result; + } + function validateRetryThrottling(obj2) { + if (!("maxTokens" in obj2) || typeof obj2.maxTokens !== "number" || obj2.maxTokens <= 0 || obj2.maxTokens > 1e3) { + throw new Error("Invalid retryThrottling: maxTokens must be a number in (0, 1000]"); + } + if (!("tokenRatio" in obj2) || typeof obj2.tokenRatio !== "number" || obj2.tokenRatio <= 0) { + throw new Error("Invalid retryThrottling: tokenRatio must be a number greater than 0"); + } + return { + maxTokens: +obj2.maxTokens.toFixed(3), + tokenRatio: +obj2.tokenRatio.toFixed(3) + }; + } + exports2.validateRetryThrottling = validateRetryThrottling; + function validateServiceConfig(obj2) { + const result = { + loadBalancingConfig: [], + methodConfig: [] + }; + if ("loadBalancingPolicy" in obj2) { + if (typeof obj2.loadBalancingPolicy === "string") { + result.loadBalancingPolicy = obj2.loadBalancingPolicy; + } else { + throw new Error("Invalid service config: invalid loadBalancingPolicy"); + } + } + if ("loadBalancingConfig" in obj2) { + if (Array.isArray(obj2.loadBalancingConfig)) { + for (const config of obj2.loadBalancingConfig) { + result.loadBalancingConfig.push((0, load_balancer_1.validateLoadBalancingConfig)(config)); + } + } else { + throw new Error("Invalid service config: invalid loadBalancingConfig"); + } + } + if ("methodConfig" in obj2) { + if (Array.isArray(obj2.methodConfig)) { + for (const methodConfig of obj2.methodConfig) { + result.methodConfig.push(validateMethodConfig(methodConfig)); + } + } + } + if ("retryThrottling" in obj2) { + result.retryThrottling = validateRetryThrottling(obj2.retryThrottling); + } + const seenMethodNames = []; + for (const methodConfig of result.methodConfig) { + for (const name of methodConfig.name) { + for (const seenName of seenMethodNames) { + if (name.service === seenName.service && name.method === seenName.method) { + throw new Error(`Invalid service config: duplicate name ${name.service}/${name.method}`); + } + } + seenMethodNames.push(name); + } + } + return result; + } + exports2.validateServiceConfig = validateServiceConfig; + function validateCanaryConfig(obj2) { + if (!("serviceConfig" in obj2)) { + throw new Error("Invalid service config choice: missing service config"); + } + const result = { + serviceConfig: validateServiceConfig(obj2.serviceConfig) + }; + if ("clientLanguage" in obj2) { + if (Array.isArray(obj2.clientLanguage)) { + result.clientLanguage = []; + for (const lang of obj2.clientLanguage) { + if (typeof lang === "string") { + result.clientLanguage.push(lang); + } else { + throw new Error("Invalid service config choice: invalid clientLanguage"); + } + } + } else { + throw new Error("Invalid service config choice: invalid clientLanguage"); + } + } + if ("clientHostname" in obj2) { + if (Array.isArray(obj2.clientHostname)) { + result.clientHostname = []; + for (const lang of obj2.clientHostname) { + if (typeof lang === "string") { + result.clientHostname.push(lang); + } else { + throw new Error("Invalid service config choice: invalid clientHostname"); + } + } + } else { + throw new Error("Invalid service config choice: invalid clientHostname"); + } + } + if ("percentage" in obj2) { + if (typeof obj2.percentage === "number" && 0 <= obj2.percentage && obj2.percentage <= 100) { + result.percentage = obj2.percentage; + } else { + throw new Error("Invalid service config choice: invalid percentage"); + } + } + const allowedFields = [ + "clientLanguage", + "percentage", + "clientHostname", + "serviceConfig" + ]; + for (const field in obj2) { + if (!allowedFields.includes(field)) { + throw new Error(`Invalid service config choice: unexpected field ${field}`); + } + } + return result; + } + function validateAndSelectCanaryConfig(obj2, percentage) { + if (!Array.isArray(obj2)) { + throw new Error("Invalid service config list"); + } + for (const config of obj2) { + const validatedConfig = validateCanaryConfig(config); + if (typeof validatedConfig.percentage === "number" && percentage > validatedConfig.percentage) { + continue; + } + if (Array.isArray(validatedConfig.clientHostname)) { + let hostnameMatched = false; + for (const hostname of validatedConfig.clientHostname) { + if (hostname === os8.hostname()) { + hostnameMatched = true; + } + } + if (!hostnameMatched) { + continue; + } + } + if (Array.isArray(validatedConfig.clientLanguage)) { + let languageMatched = false; + for (const language of validatedConfig.clientLanguage) { + if (language === CLIENT_LANGUAGE_STRING) { + languageMatched = true; + } + } + if (!languageMatched) { + continue; + } + } + return validatedConfig.serviceConfig; + } + throw new Error("No matching service config found"); + } + function extractAndSelectServiceConfig(txtRecord, percentage) { + for (const record of txtRecord) { + if (record.length > 0 && record[0].startsWith("grpc_config=")) { + const recordString = record.join("").substring("grpc_config=".length); + const recordJson = JSON.parse(recordString); + return validateAndSelectCanaryConfig(recordJson, percentage); + } + } + return null; + } + exports2.extractAndSelectServiceConfig = extractAndSelectServiceConfig; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/connectivity-state.js +var require_connectivity_state = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/connectivity-state.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ConnectivityState = void 0; + var ConnectivityState; + (function(ConnectivityState2) { + ConnectivityState2[ConnectivityState2["IDLE"] = 0] = "IDLE"; + ConnectivityState2[ConnectivityState2["CONNECTING"] = 1] = "CONNECTING"; + ConnectivityState2[ConnectivityState2["READY"] = 2] = "READY"; + ConnectivityState2[ConnectivityState2["TRANSIENT_FAILURE"] = 3] = "TRANSIENT_FAILURE"; + ConnectivityState2[ConnectivityState2["SHUTDOWN"] = 4] = "SHUTDOWN"; + })(ConnectivityState = exports2.ConnectivityState || (exports2.ConnectivityState = {})); + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/uri-parser.js +var require_uri_parser = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/uri-parser.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.uriToString = exports2.splitHostPort = exports2.parseUri = void 0; + var URI_REGEX = /^(?:([A-Za-z0-9+.-]+):)?(?:\/\/([^/]*)\/)?(.+)$/; + function parseUri(uriString) { + const parsedUri = URI_REGEX.exec(uriString); + if (parsedUri === null) { + return null; + } + return { + scheme: parsedUri[1], + authority: parsedUri[2], + path: parsedUri[3] + }; + } + exports2.parseUri = parseUri; + var NUMBER_REGEX = /^\d+$/; + function splitHostPort(path30) { + if (path30.startsWith("[")) { + const hostEnd = path30.indexOf("]"); + if (hostEnd === -1) { + return null; + } + const host = path30.substring(1, hostEnd); + if (host.indexOf(":") === -1) { + return null; + } + if (path30.length > hostEnd + 1) { + if (path30[hostEnd + 1] === ":") { + const portString = path30.substring(hostEnd + 2); + if (NUMBER_REGEX.test(portString)) { + return { + host, + port: +portString + }; + } else { + return null; + } + } else { + return null; + } + } else { + return { + host + }; + } + } else { + const splitPath = path30.split(":"); + if (splitPath.length === 2) { + if (NUMBER_REGEX.test(splitPath[1])) { + return { + host: splitPath[0], + port: +splitPath[1] + }; + } else { + return null; + } + } else { + return { + host: path30 + }; + } + } + } + exports2.splitHostPort = splitHostPort; + function uriToString(uri) { + let result = ""; + if (uri.scheme !== void 0) { + result += uri.scheme + ":"; + } + if (uri.authority !== void 0) { + result += "//" + uri.authority + "/"; + } + result += uri.path; + return result; + } + exports2.uriToString = uriToString; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolver.js +var require_resolver = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolver.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.mapUriDefaultScheme = exports2.getDefaultAuthority = exports2.createResolver = exports2.registerDefaultScheme = exports2.registerResolver = void 0; + var uri_parser_1 = require_uri_parser(); + var registeredResolvers = {}; + var defaultScheme = null; + function registerResolver(scheme, resolverClass) { + registeredResolvers[scheme] = resolverClass; + } + exports2.registerResolver = registerResolver; + function registerDefaultScheme(scheme) { + defaultScheme = scheme; + } + exports2.registerDefaultScheme = registerDefaultScheme; + function createResolver(target, listener, options2) { + if (target.scheme !== void 0 && target.scheme in registeredResolvers) { + return new registeredResolvers[target.scheme](target, listener, options2); + } else { + throw new Error(`No resolver could be created for target ${(0, uri_parser_1.uriToString)(target)}`); + } + } + exports2.createResolver = createResolver; + function getDefaultAuthority(target) { + if (target.scheme !== void 0 && target.scheme in registeredResolvers) { + return registeredResolvers[target.scheme].getDefaultAuthority(target); + } else { + throw new Error(`Invalid target ${(0, uri_parser_1.uriToString)(target)}`); + } + } + exports2.getDefaultAuthority = getDefaultAuthority; + function mapUriDefaultScheme(target) { + if (target.scheme === void 0 || !(target.scheme in registeredResolvers)) { + if (defaultScheme !== null) { + return { + scheme: defaultScheme, + authority: void 0, + path: (0, uri_parser_1.uriToString)(target) + }; + } else { + return null; + } + } + return target; + } + exports2.mapUriDefaultScheme = mapUriDefaultScheme; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/picker.js +var require_picker = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/picker.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.QueuePicker = exports2.UnavailablePicker = exports2.PickResultType = void 0; + var metadata_1 = require_metadata3(); + var constants_1 = require_constants10(); + var PickResultType; + (function(PickResultType2) { + PickResultType2[PickResultType2["COMPLETE"] = 0] = "COMPLETE"; + PickResultType2[PickResultType2["QUEUE"] = 1] = "QUEUE"; + PickResultType2[PickResultType2["TRANSIENT_FAILURE"] = 2] = "TRANSIENT_FAILURE"; + PickResultType2[PickResultType2["DROP"] = 3] = "DROP"; + })(PickResultType = exports2.PickResultType || (exports2.PickResultType = {})); + var UnavailablePicker = class { + constructor(status) { + if (status !== void 0) { + this.status = status; + } else { + this.status = { + code: constants_1.Status.UNAVAILABLE, + details: "No connection established", + metadata: new metadata_1.Metadata() + }; + } + } + pick(pickArgs) { + return { + pickResultType: PickResultType.TRANSIENT_FAILURE, + subchannel: null, + status: this.status, + onCallStarted: null, + onCallEnded: null + }; + } + }; + exports2.UnavailablePicker = UnavailablePicker; + var QueuePicker = class { + // Constructed with a load balancer. Calls exitIdle on it the first time pick is called + constructor(loadBalancer) { + this.loadBalancer = loadBalancer; + this.calledExitIdle = false; + } + pick(pickArgs) { + if (!this.calledExitIdle) { + process.nextTick(() => { + this.loadBalancer.exitIdle(); + }); + this.calledExitIdle = true; + } + return { + pickResultType: PickResultType.QUEUE, + subchannel: null, + status: null, + onCallStarted: null, + onCallEnded: null + }; + } + }; + exports2.QueuePicker = QueuePicker; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/backoff-timeout.js +var require_backoff_timeout = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/backoff-timeout.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BackoffTimeout = void 0; + var INITIAL_BACKOFF_MS = 1e3; + var BACKOFF_MULTIPLIER = 1.6; + var MAX_BACKOFF_MS = 12e4; + var BACKOFF_JITTER = 0.2; + function uniformRandom(min, max) { + return Math.random() * (max - min) + min; + } + var BackoffTimeout = class { + constructor(callback, options2) { + this.callback = callback; + this.initialDelay = INITIAL_BACKOFF_MS; + this.multiplier = BACKOFF_MULTIPLIER; + this.maxDelay = MAX_BACKOFF_MS; + this.jitter = BACKOFF_JITTER; + this.running = false; + this.hasRef = true; + this.startTime = /* @__PURE__ */ new Date(); + if (options2) { + if (options2.initialDelay) { + this.initialDelay = options2.initialDelay; + } + if (options2.multiplier) { + this.multiplier = options2.multiplier; + } + if (options2.jitter) { + this.jitter = options2.jitter; + } + if (options2.maxDelay) { + this.maxDelay = options2.maxDelay; + } + } + this.nextDelay = this.initialDelay; + this.timerId = setTimeout(() => { + }, 0); + clearTimeout(this.timerId); + } + runTimer(delay) { + var _a, _b; + clearTimeout(this.timerId); + this.timerId = setTimeout(() => { + this.callback(); + this.running = false; + }, delay); + if (!this.hasRef) { + (_b = (_a = this.timerId).unref) === null || _b === void 0 ? void 0 : _b.call(_a); + } + } + /** + * Call the callback after the current amount of delay time + */ + runOnce() { + this.running = true; + this.startTime = /* @__PURE__ */ new Date(); + this.runTimer(this.nextDelay); + const nextBackoff = Math.min(this.nextDelay * this.multiplier, this.maxDelay); + const jitterMagnitude = nextBackoff * this.jitter; + this.nextDelay = nextBackoff + uniformRandom(-jitterMagnitude, jitterMagnitude); + } + /** + * Stop the timer. The callback will not be called until `runOnce` is called + * again. + */ + stop() { + clearTimeout(this.timerId); + this.running = false; + } + /** + * Reset the delay time to its initial value. If the timer is still running, + * retroactively apply that reset to the current timer. + */ + reset() { + this.nextDelay = this.initialDelay; + if (this.running) { + const now = /* @__PURE__ */ new Date(); + const newEndTime = this.startTime; + newEndTime.setMilliseconds(newEndTime.getMilliseconds() + this.nextDelay); + clearTimeout(this.timerId); + if (now < newEndTime) { + this.runTimer(newEndTime.getTime() - now.getTime()); + } else { + this.running = false; + } + } + } + /** + * Check whether the timer is currently running. + */ + isRunning() { + return this.running; + } + /** + * Set that while the timer is running, it should keep the Node process + * running. + */ + ref() { + var _a, _b; + this.hasRef = true; + (_b = (_a = this.timerId).ref) === null || _b === void 0 ? void 0 : _b.call(_a); + } + /** + * Set that while the timer is running, it should not keep the Node process + * running. + */ + unref() { + var _a, _b; + this.hasRef = false; + (_b = (_a = this.timerId).unref) === null || _b === void 0 ? void 0 : _b.call(_a); + } + }; + exports2.BackoffTimeout = BackoffTimeout; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancer-child-handler.js +var require_load_balancer_child_handler = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancer-child-handler.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ChildLoadBalancerHandler = void 0; + var load_balancer_1 = require_load_balancer(); + var connectivity_state_1 = require_connectivity_state(); + var TYPE_NAME = "child_load_balancer_helper"; + var ChildLoadBalancerHandler = class { + constructor(channelControlHelper) { + this.channelControlHelper = channelControlHelper; + this.currentChild = null; + this.pendingChild = null; + this.ChildPolicyHelper = class { + constructor(parent) { + this.parent = parent; + this.child = null; + } + createSubchannel(subchannelAddress, subchannelArgs) { + return this.parent.channelControlHelper.createSubchannel(subchannelAddress, subchannelArgs); + } + updateState(connectivityState, picker) { + var _a; + if (this.calledByPendingChild()) { + if (connectivityState === connectivity_state_1.ConnectivityState.CONNECTING) { + return; + } + (_a = this.parent.currentChild) === null || _a === void 0 ? void 0 : _a.destroy(); + this.parent.currentChild = this.parent.pendingChild; + this.parent.pendingChild = null; + } else if (!this.calledByCurrentChild()) { + return; + } + this.parent.channelControlHelper.updateState(connectivityState, picker); + } + requestReresolution() { + var _a; + const latestChild = (_a = this.parent.pendingChild) !== null && _a !== void 0 ? _a : this.parent.currentChild; + if (this.child === latestChild) { + this.parent.channelControlHelper.requestReresolution(); + } + } + setChild(newChild) { + this.child = newChild; + } + addChannelzChild(child) { + this.parent.channelControlHelper.addChannelzChild(child); + } + removeChannelzChild(child) { + this.parent.channelControlHelper.removeChannelzChild(child); + } + calledByPendingChild() { + return this.child === this.parent.pendingChild; + } + calledByCurrentChild() { + return this.child === this.parent.currentChild; + } + }; + } + /** + * Prerequisites: lbConfig !== null and lbConfig.name is registered + * @param addressList + * @param lbConfig + * @param attributes + */ + updateAddressList(addressList, lbConfig, attributes) { + let childToUpdate; + if (this.currentChild === null || this.currentChild.getTypeName() !== lbConfig.getLoadBalancerName()) { + const newHelper = new this.ChildPolicyHelper(this); + const newChild = (0, load_balancer_1.createLoadBalancer)(lbConfig, newHelper); + newHelper.setChild(newChild); + if (this.currentChild === null) { + this.currentChild = newChild; + childToUpdate = this.currentChild; + } else { + if (this.pendingChild) { + this.pendingChild.destroy(); + } + this.pendingChild = newChild; + childToUpdate = this.pendingChild; + } + } else { + if (this.pendingChild === null) { + childToUpdate = this.currentChild; + } else { + childToUpdate = this.pendingChild; + } + } + childToUpdate.updateAddressList(addressList, lbConfig, attributes); + } + exitIdle() { + if (this.currentChild) { + this.currentChild.exitIdle(); + if (this.pendingChild) { + this.pendingChild.exitIdle(); + } + } + } + resetBackoff() { + if (this.currentChild) { + this.currentChild.resetBackoff(); + if (this.pendingChild) { + this.pendingChild.resetBackoff(); + } + } + } + destroy() { + if (this.currentChild) { + this.currentChild.destroy(); + this.currentChild = null; + } + if (this.pendingChild) { + this.pendingChild.destroy(); + this.pendingChild = null; + } + } + getTypeName() { + return TYPE_NAME; + } + }; + exports2.ChildLoadBalancerHandler = ChildLoadBalancerHandler; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolving-load-balancer.js +var require_resolving_load_balancer = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolving-load-balancer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ResolvingLoadBalancer = void 0; + var load_balancer_1 = require_load_balancer(); + var service_config_1 = require_service_config(); + var connectivity_state_1 = require_connectivity_state(); + var resolver_1 = require_resolver(); + var picker_1 = require_picker(); + var backoff_timeout_1 = require_backoff_timeout(); + var constants_1 = require_constants10(); + var metadata_1 = require_metadata3(); + var logging = require_logging(); + var constants_2 = require_constants10(); + var uri_parser_1 = require_uri_parser(); + var load_balancer_child_handler_1 = require_load_balancer_child_handler(); + var TRACER_NAME = "resolving_load_balancer"; + function trace(text) { + logging.trace(constants_2.LogVerbosity.DEBUG, TRACER_NAME, text); + } + function getDefaultConfigSelector(serviceConfig) { + return function defaultConfigSelector(methodName, metadata2) { + var _a, _b; + const splitName = methodName.split("/").filter((x) => x.length > 0); + const service = (_a = splitName[0]) !== null && _a !== void 0 ? _a : ""; + const method = (_b = splitName[1]) !== null && _b !== void 0 ? _b : ""; + if (serviceConfig && serviceConfig.methodConfig) { + for (const methodConfig of serviceConfig.methodConfig) { + for (const name of methodConfig.name) { + if (name.service === service && (name.method === void 0 || name.method === method)) { + return { + methodConfig, + pickInformation: {}, + status: constants_1.Status.OK, + dynamicFilterFactories: [] + }; + } + } + } + } + return { + methodConfig: { name: [] }, + pickInformation: {}, + status: constants_1.Status.OK, + dynamicFilterFactories: [] + }; + }; + } + var ResolvingLoadBalancer = class { + /** + * Wrapper class that behaves like a `LoadBalancer` and also handles name + * resolution internally. + * @param target The address of the backend to connect to. + * @param channelControlHelper `ChannelControlHelper` instance provided by + * this load balancer's owner. + * @param defaultServiceConfig The default service configuration to be used + * if none is provided by the name resolver. A `null` value indicates + * that the default behavior should be the default unconfigured behavior. + * In practice, that means using the "pick first" load balancer + * implmentation + */ + constructor(target, channelControlHelper, channelOptions, onSuccessfulResolution, onFailedResolution) { + this.target = target; + this.channelControlHelper = channelControlHelper; + this.onSuccessfulResolution = onSuccessfulResolution; + this.onFailedResolution = onFailedResolution; + this.latestChildState = connectivity_state_1.ConnectivityState.IDLE; + this.latestChildPicker = new picker_1.QueuePicker(this); + this.currentState = connectivity_state_1.ConnectivityState.IDLE; + this.previousServiceConfig = null; + this.continueResolving = false; + if (channelOptions["grpc.service_config"]) { + this.defaultServiceConfig = (0, service_config_1.validateServiceConfig)(JSON.parse(channelOptions["grpc.service_config"])); + } else { + this.defaultServiceConfig = { + loadBalancingConfig: [], + methodConfig: [] + }; + } + this.updateState(connectivity_state_1.ConnectivityState.IDLE, new picker_1.QueuePicker(this)); + this.childLoadBalancer = new load_balancer_child_handler_1.ChildLoadBalancerHandler({ + createSubchannel: channelControlHelper.createSubchannel.bind(channelControlHelper), + requestReresolution: () => { + if (this.backoffTimeout.isRunning()) { + this.continueResolving = true; + } else { + this.updateResolution(); + } + }, + updateState: (newState, picker) => { + this.latestChildState = newState; + this.latestChildPicker = picker; + this.updateState(newState, picker); + }, + addChannelzChild: channelControlHelper.addChannelzChild.bind(channelControlHelper), + removeChannelzChild: channelControlHelper.removeChannelzChild.bind(channelControlHelper) + }); + this.innerResolver = (0, resolver_1.createResolver)(target, { + onSuccessfulResolution: (addressList, serviceConfig, serviceConfigError, configSelector, attributes) => { + var _a; + let workingServiceConfig = null; + if (serviceConfig === null) { + if (serviceConfigError === null) { + this.previousServiceConfig = null; + workingServiceConfig = this.defaultServiceConfig; + } else { + if (this.previousServiceConfig === null) { + this.handleResolutionFailure(serviceConfigError); + } else { + workingServiceConfig = this.previousServiceConfig; + } + } + } else { + workingServiceConfig = serviceConfig; + this.previousServiceConfig = serviceConfig; + } + const workingConfigList = (_a = workingServiceConfig === null || workingServiceConfig === void 0 ? void 0 : workingServiceConfig.loadBalancingConfig) !== null && _a !== void 0 ? _a : []; + const loadBalancingConfig = (0, load_balancer_1.getFirstUsableConfig)(workingConfigList, true); + if (loadBalancingConfig === null) { + this.handleResolutionFailure({ + code: constants_1.Status.UNAVAILABLE, + details: "All load balancer options in service config are not compatible", + metadata: new metadata_1.Metadata() + }); + return; + } + this.childLoadBalancer.updateAddressList(addressList, loadBalancingConfig, attributes); + const finalServiceConfig = workingServiceConfig !== null && workingServiceConfig !== void 0 ? workingServiceConfig : this.defaultServiceConfig; + this.onSuccessfulResolution(finalServiceConfig, configSelector !== null && configSelector !== void 0 ? configSelector : getDefaultConfigSelector(finalServiceConfig)); + }, + onError: (error) => { + this.handleResolutionFailure(error); + } + }, channelOptions); + const backoffOptions = { + initialDelay: channelOptions["grpc.initial_reconnect_backoff_ms"], + maxDelay: channelOptions["grpc.max_reconnect_backoff_ms"] + }; + this.backoffTimeout = new backoff_timeout_1.BackoffTimeout(() => { + if (this.continueResolving) { + this.updateResolution(); + this.continueResolving = false; + } else { + this.updateState(this.latestChildState, this.latestChildPicker); + } + }, backoffOptions); + this.backoffTimeout.unref(); + } + updateResolution() { + this.innerResolver.updateResolution(); + if (this.currentState === connectivity_state_1.ConnectivityState.IDLE) { + this.updateState(connectivity_state_1.ConnectivityState.CONNECTING, new picker_1.QueuePicker(this)); + } + this.backoffTimeout.runOnce(); + } + updateState(connectivityState, picker) { + trace((0, uri_parser_1.uriToString)(this.target) + " " + connectivity_state_1.ConnectivityState[this.currentState] + " -> " + connectivity_state_1.ConnectivityState[connectivityState]); + if (connectivityState === connectivity_state_1.ConnectivityState.IDLE) { + picker = new picker_1.QueuePicker(this); + } + this.currentState = connectivityState; + this.channelControlHelper.updateState(connectivityState, picker); + } + handleResolutionFailure(error) { + if (this.latestChildState === connectivity_state_1.ConnectivityState.IDLE) { + this.updateState(connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE, new picker_1.UnavailablePicker(error)); + this.onFailedResolution(error); + } + } + exitIdle() { + if (this.currentState === connectivity_state_1.ConnectivityState.IDLE || this.currentState === connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE) { + if (this.backoffTimeout.isRunning()) { + this.continueResolving = true; + } else { + this.updateResolution(); + } + } + this.childLoadBalancer.exitIdle(); + } + updateAddressList(addressList, lbConfig) { + throw new Error("updateAddressList not supported on ResolvingLoadBalancer"); + } + resetBackoff() { + this.backoffTimeout.reset(); + this.childLoadBalancer.resetBackoff(); + } + destroy() { + this.childLoadBalancer.destroy(); + this.innerResolver.destroy(); + this.updateState(connectivity_state_1.ConnectivityState.SHUTDOWN, new picker_1.UnavailablePicker()); + } + getTypeName() { + return "resolving_load_balancer"; + } + }; + exports2.ResolvingLoadBalancer = ResolvingLoadBalancer; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/channel-options.js +var require_channel_options = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/channel-options.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.channelOptionsEqual = exports2.recognizedOptions = void 0; + exports2.recognizedOptions = { + "grpc.ssl_target_name_override": true, + "grpc.primary_user_agent": true, + "grpc.secondary_user_agent": true, + "grpc.default_authority": true, + "grpc.keepalive_time_ms": true, + "grpc.keepalive_timeout_ms": true, + "grpc.keepalive_permit_without_calls": true, + "grpc.service_config": true, + "grpc.max_concurrent_streams": true, + "grpc.initial_reconnect_backoff_ms": true, + "grpc.max_reconnect_backoff_ms": true, + "grpc.use_local_subchannel_pool": true, + "grpc.max_send_message_length": true, + "grpc.max_receive_message_length": true, + "grpc.enable_http_proxy": true, + "grpc.enable_channelz": true, + "grpc.dns_min_time_between_resolutions_ms": true, + "grpc.enable_retries": true, + "grpc.per_rpc_retry_buffer_size": true, + "grpc.retry_buffer_size": true, + "grpc.max_connection_age_ms": true, + "grpc.max_connection_age_grace_ms": true, + "grpc-node.max_session_memory": true, + "grpc.service_config_disable_resolution": true + }; + function channelOptionsEqual(options1, options2) { + const keys1 = Object.keys(options1).sort(); + const keys2 = Object.keys(options2).sort(); + if (keys1.length !== keys2.length) { + return false; + } + for (let i = 0; i < keys1.length; i += 1) { + if (keys1[i] !== keys2[i]) { + return false; + } + if (options1[keys1[i]] !== options2[keys2[i]]) { + return false; + } + } + return true; + } + exports2.channelOptionsEqual = channelOptionsEqual; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/subchannel-address.js +var require_subchannel_address = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/subchannel-address.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.stringToSubchannelAddress = exports2.subchannelAddressToString = exports2.subchannelAddressEqual = exports2.isTcpSubchannelAddress = void 0; + var net_1 = require("net"); + function isTcpSubchannelAddress(address) { + return "port" in address; + } + exports2.isTcpSubchannelAddress = isTcpSubchannelAddress; + function subchannelAddressEqual(address1, address2) { + if (!address1 && !address2) { + return true; + } + if (!address1 || !address2) { + return false; + } + if (isTcpSubchannelAddress(address1)) { + return isTcpSubchannelAddress(address2) && address1.host === address2.host && address1.port === address2.port; + } else { + return !isTcpSubchannelAddress(address2) && address1.path === address2.path; + } + } + exports2.subchannelAddressEqual = subchannelAddressEqual; + function subchannelAddressToString(address) { + if (isTcpSubchannelAddress(address)) { + return address.host + ":" + address.port; + } else { + return address.path; + } + } + exports2.subchannelAddressToString = subchannelAddressToString; + var DEFAULT_PORT = 443; + function stringToSubchannelAddress(addressString, port) { + if ((0, net_1.isIP)(addressString)) { + return { + host: addressString, + port: port !== null && port !== void 0 ? port : DEFAULT_PORT + }; + } else { + return { + path: addressString + }; + } + } + exports2.stringToSubchannelAddress = stringToSubchannelAddress; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/admin.js +var require_admin = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/admin.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addAdminServicesToServer = exports2.registerAdminService = void 0; + var registeredAdminServices = []; + function registerAdminService(getServiceDefinition, getHandlers) { + registeredAdminServices.push({ getServiceDefinition, getHandlers }); + } + exports2.registerAdminService = registerAdminService; + function addAdminServicesToServer(server) { + for (const { getServiceDefinition, getHandlers } of registeredAdminServices) { + server.addService(getServiceDefinition(), getHandlers()); + } + } + exports2.addAdminServicesToServer = addAdminServicesToServer; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/call.js +var require_call = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/call.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ClientDuplexStreamImpl = exports2.ClientWritableStreamImpl = exports2.ClientReadableStreamImpl = exports2.ClientUnaryCallImpl = exports2.callErrorFromStatus = void 0; + var events_1 = require("events"); + var stream_1 = require("stream"); + var constants_1 = require_constants10(); + function callErrorFromStatus(status, callerStack) { + const message = `${status.code} ${constants_1.Status[status.code]}: ${status.details}`; + const error = new Error(message); + const stack = `${error.stack} +for call at +${callerStack}`; + return Object.assign(new Error(message), status, { stack }); + } + exports2.callErrorFromStatus = callErrorFromStatus; + var ClientUnaryCallImpl = class extends events_1.EventEmitter { + constructor() { + super(); + } + cancel() { + var _a; + (_a = this.call) === null || _a === void 0 ? void 0 : _a.cancelWithStatus(constants_1.Status.CANCELLED, "Cancelled on client"); + } + getPeer() { + var _a, _b; + return (_b = (_a = this.call) === null || _a === void 0 ? void 0 : _a.getPeer()) !== null && _b !== void 0 ? _b : "unknown"; + } + }; + exports2.ClientUnaryCallImpl = ClientUnaryCallImpl; + var ClientReadableStreamImpl = class extends stream_1.Readable { + constructor(deserialize) { + super({ objectMode: true }); + this.deserialize = deserialize; + } + cancel() { + var _a; + (_a = this.call) === null || _a === void 0 ? void 0 : _a.cancelWithStatus(constants_1.Status.CANCELLED, "Cancelled on client"); + } + getPeer() { + var _a, _b; + return (_b = (_a = this.call) === null || _a === void 0 ? void 0 : _a.getPeer()) !== null && _b !== void 0 ? _b : "unknown"; + } + _read(_size) { + var _a; + (_a = this.call) === null || _a === void 0 ? void 0 : _a.startRead(); + } + }; + exports2.ClientReadableStreamImpl = ClientReadableStreamImpl; + var ClientWritableStreamImpl = class extends stream_1.Writable { + constructor(serialize) { + super({ objectMode: true }); + this.serialize = serialize; + } + cancel() { + var _a; + (_a = this.call) === null || _a === void 0 ? void 0 : _a.cancelWithStatus(constants_1.Status.CANCELLED, "Cancelled on client"); + } + getPeer() { + var _a, _b; + return (_b = (_a = this.call) === null || _a === void 0 ? void 0 : _a.getPeer()) !== null && _b !== void 0 ? _b : "unknown"; + } + _write(chunk, encoding, cb) { + var _a; + const context2 = { + callback: cb + }; + const flags2 = Number(encoding); + if (!Number.isNaN(flags2)) { + context2.flags = flags2; + } + (_a = this.call) === null || _a === void 0 ? void 0 : _a.sendMessageWithContext(context2, chunk); + } + _final(cb) { + var _a; + (_a = this.call) === null || _a === void 0 ? void 0 : _a.halfClose(); + cb(); + } + }; + exports2.ClientWritableStreamImpl = ClientWritableStreamImpl; + var ClientDuplexStreamImpl = class extends stream_1.Duplex { + constructor(serialize, deserialize) { + super({ objectMode: true }); + this.serialize = serialize; + this.deserialize = deserialize; + } + cancel() { + var _a; + (_a = this.call) === null || _a === void 0 ? void 0 : _a.cancelWithStatus(constants_1.Status.CANCELLED, "Cancelled on client"); + } + getPeer() { + var _a, _b; + return (_b = (_a = this.call) === null || _a === void 0 ? void 0 : _a.getPeer()) !== null && _b !== void 0 ? _b : "unknown"; + } + _read(_size) { + var _a; + (_a = this.call) === null || _a === void 0 ? void 0 : _a.startRead(); + } + _write(chunk, encoding, cb) { + var _a; + const context2 = { + callback: cb + }; + const flags2 = Number(encoding); + if (!Number.isNaN(flags2)) { + context2.flags = flags2; + } + (_a = this.call) === null || _a === void 0 ? void 0 : _a.sendMessageWithContext(context2, chunk); + } + _final(cb) { + var _a; + (_a = this.call) === null || _a === void 0 ? void 0 : _a.halfClose(); + cb(); + } + }; + exports2.ClientDuplexStreamImpl = ClientDuplexStreamImpl; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/call-interface.js +var require_call_interface = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/call-interface.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.InterceptingListenerImpl = exports2.isInterceptingListener = void 0; + function isInterceptingListener(listener) { + return listener.onReceiveMetadata !== void 0 && listener.onReceiveMetadata.length === 1; + } + exports2.isInterceptingListener = isInterceptingListener; + var InterceptingListenerImpl = class { + constructor(listener, nextListener) { + this.listener = listener; + this.nextListener = nextListener; + this.processingMetadata = false; + this.hasPendingMessage = false; + this.processingMessage = false; + this.pendingStatus = null; + } + processPendingMessage() { + if (this.hasPendingMessage) { + this.nextListener.onReceiveMessage(this.pendingMessage); + this.pendingMessage = null; + this.hasPendingMessage = false; + } + } + processPendingStatus() { + if (this.pendingStatus) { + this.nextListener.onReceiveStatus(this.pendingStatus); + } + } + onReceiveMetadata(metadata2) { + this.processingMetadata = true; + this.listener.onReceiveMetadata(metadata2, (metadata3) => { + this.processingMetadata = false; + this.nextListener.onReceiveMetadata(metadata3); + this.processPendingMessage(); + this.processPendingStatus(); + }); + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any + onReceiveMessage(message) { + this.processingMessage = true; + this.listener.onReceiveMessage(message, (msg) => { + this.processingMessage = false; + if (this.processingMetadata) { + this.pendingMessage = msg; + this.hasPendingMessage = true; + } else { + this.nextListener.onReceiveMessage(msg); + this.processPendingStatus(); + } + }); + } + onReceiveStatus(status) { + this.listener.onReceiveStatus(status, (processedStatus) => { + if (this.processingMetadata || this.processingMessage) { + this.pendingStatus = processedStatus; + } else { + this.nextListener.onReceiveStatus(processedStatus); + } + }); + } + }; + exports2.InterceptingListenerImpl = InterceptingListenerImpl; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/client-interceptors.js +var require_client_interceptors = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/client-interceptors.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getInterceptingCall = exports2.InterceptingCall = exports2.RequesterBuilder = exports2.ListenerBuilder = exports2.InterceptorConfigurationError = void 0; + var metadata_1 = require_metadata3(); + var call_interface_1 = require_call_interface(); + var constants_1 = require_constants10(); + var error_1 = require_error3(); + var InterceptorConfigurationError = class _InterceptorConfigurationError extends Error { + constructor(message) { + super(message); + this.name = "InterceptorConfigurationError"; + Error.captureStackTrace(this, _InterceptorConfigurationError); + } + }; + exports2.InterceptorConfigurationError = InterceptorConfigurationError; + var ListenerBuilder = class { + constructor() { + this.metadata = void 0; + this.message = void 0; + this.status = void 0; + } + withOnReceiveMetadata(onReceiveMetadata) { + this.metadata = onReceiveMetadata; + return this; + } + withOnReceiveMessage(onReceiveMessage) { + this.message = onReceiveMessage; + return this; + } + withOnReceiveStatus(onReceiveStatus) { + this.status = onReceiveStatus; + return this; + } + build() { + return { + onReceiveMetadata: this.metadata, + onReceiveMessage: this.message, + onReceiveStatus: this.status + }; + } + }; + exports2.ListenerBuilder = ListenerBuilder; + var RequesterBuilder = class { + constructor() { + this.start = void 0; + this.message = void 0; + this.halfClose = void 0; + this.cancel = void 0; + } + withStart(start4) { + this.start = start4; + return this; + } + withSendMessage(sendMessage) { + this.message = sendMessage; + return this; + } + withHalfClose(halfClose) { + this.halfClose = halfClose; + return this; + } + withCancel(cancel) { + this.cancel = cancel; + return this; + } + build() { + return { + start: this.start, + sendMessage: this.message, + halfClose: this.halfClose, + cancel: this.cancel + }; + } + }; + exports2.RequesterBuilder = RequesterBuilder; + var defaultListener = { + onReceiveMetadata: (metadata2, next) => { + next(metadata2); + }, + onReceiveMessage: (message, next) => { + next(message); + }, + onReceiveStatus: (status, next) => { + next(status); + } + }; + var defaultRequester = { + start: (metadata2, listener, next) => { + next(metadata2, listener); + }, + sendMessage: (message, next) => { + next(message); + }, + halfClose: (next) => { + next(); + }, + cancel: (next) => { + next(); + } + }; + var InterceptingCall = class { + constructor(nextCall, requester) { + var _a, _b, _c, _d; + this.nextCall = nextCall; + this.processingMetadata = false; + this.pendingMessageContext = null; + this.processingMessage = false; + this.pendingHalfClose = false; + if (requester) { + this.requester = { + start: (_a = requester.start) !== null && _a !== void 0 ? _a : defaultRequester.start, + sendMessage: (_b = requester.sendMessage) !== null && _b !== void 0 ? _b : defaultRequester.sendMessage, + halfClose: (_c = requester.halfClose) !== null && _c !== void 0 ? _c : defaultRequester.halfClose, + cancel: (_d = requester.cancel) !== null && _d !== void 0 ? _d : defaultRequester.cancel + }; + } else { + this.requester = defaultRequester; + } + } + cancelWithStatus(status, details) { + this.requester.cancel(() => { + this.nextCall.cancelWithStatus(status, details); + }); + } + getPeer() { + return this.nextCall.getPeer(); + } + processPendingMessage() { + if (this.pendingMessageContext) { + this.nextCall.sendMessageWithContext(this.pendingMessageContext, this.pendingMessage); + this.pendingMessageContext = null; + this.pendingMessage = null; + } + } + processPendingHalfClose() { + if (this.pendingHalfClose) { + this.nextCall.halfClose(); + } + } + start(metadata2, interceptingListener) { + var _a, _b, _c, _d, _e, _f; + const fullInterceptingListener = { + onReceiveMetadata: (_b = (_a = interceptingListener === null || interceptingListener === void 0 ? void 0 : interceptingListener.onReceiveMetadata) === null || _a === void 0 ? void 0 : _a.bind(interceptingListener)) !== null && _b !== void 0 ? _b : (metadata3) => { + }, + onReceiveMessage: (_d = (_c = interceptingListener === null || interceptingListener === void 0 ? void 0 : interceptingListener.onReceiveMessage) === null || _c === void 0 ? void 0 : _c.bind(interceptingListener)) !== null && _d !== void 0 ? _d : (message) => { + }, + onReceiveStatus: (_f = (_e = interceptingListener === null || interceptingListener === void 0 ? void 0 : interceptingListener.onReceiveStatus) === null || _e === void 0 ? void 0 : _e.bind(interceptingListener)) !== null && _f !== void 0 ? _f : (status) => { + } + }; + this.processingMetadata = true; + this.requester.start(metadata2, fullInterceptingListener, (md, listener) => { + var _a2, _b2, _c2; + this.processingMetadata = false; + let finalInterceptingListener; + if ((0, call_interface_1.isInterceptingListener)(listener)) { + finalInterceptingListener = listener; + } else { + const fullListener = { + onReceiveMetadata: (_a2 = listener.onReceiveMetadata) !== null && _a2 !== void 0 ? _a2 : defaultListener.onReceiveMetadata, + onReceiveMessage: (_b2 = listener.onReceiveMessage) !== null && _b2 !== void 0 ? _b2 : defaultListener.onReceiveMessage, + onReceiveStatus: (_c2 = listener.onReceiveStatus) !== null && _c2 !== void 0 ? _c2 : defaultListener.onReceiveStatus + }; + finalInterceptingListener = new call_interface_1.InterceptingListenerImpl(fullListener, fullInterceptingListener); + } + this.nextCall.start(md, finalInterceptingListener); + this.processPendingMessage(); + this.processPendingHalfClose(); + }); + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any + sendMessageWithContext(context2, message) { + this.processingMessage = true; + this.requester.sendMessage(message, (finalMessage) => { + this.processingMessage = false; + if (this.processingMetadata) { + this.pendingMessageContext = context2; + this.pendingMessage = message; + } else { + this.nextCall.sendMessageWithContext(context2, finalMessage); + this.processPendingHalfClose(); + } + }); + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any + sendMessage(message) { + this.sendMessageWithContext({}, message); + } + startRead() { + this.nextCall.startRead(); + } + halfClose() { + this.requester.halfClose(() => { + if (this.processingMetadata || this.processingMessage) { + this.pendingHalfClose = true; + } else { + this.nextCall.halfClose(); + } + }); + } + }; + exports2.InterceptingCall = InterceptingCall; + function getCall(channel, path30, options2) { + var _a, _b; + const deadline = (_a = options2.deadline) !== null && _a !== void 0 ? _a : Infinity; + const host = options2.host; + const parent = (_b = options2.parent) !== null && _b !== void 0 ? _b : null; + const propagateFlags = options2.propagate_flags; + const credentials = options2.credentials; + const call = channel.createCall(path30, deadline, host, parent, propagateFlags); + if (credentials) { + call.setCredentials(credentials); + } + return call; + } + var BaseInterceptingCall = class { + constructor(call, methodDefinition) { + this.call = call; + this.methodDefinition = methodDefinition; + } + cancelWithStatus(status, details) { + this.call.cancelWithStatus(status, details); + } + getPeer() { + return this.call.getPeer(); + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any + sendMessageWithContext(context2, message) { + let serialized; + try { + serialized = this.methodDefinition.requestSerialize(message); + } catch (e) { + this.call.cancelWithStatus(constants_1.Status.INTERNAL, `Request message serialization failure: ${(0, error_1.getErrorMessage)(e)}`); + return; + } + this.call.sendMessageWithContext(context2, serialized); + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any + sendMessage(message) { + this.sendMessageWithContext({}, message); + } + start(metadata2, interceptingListener) { + let readError = null; + this.call.start(metadata2, { + onReceiveMetadata: (metadata3) => { + var _a; + (_a = interceptingListener === null || interceptingListener === void 0 ? void 0 : interceptingListener.onReceiveMetadata) === null || _a === void 0 ? void 0 : _a.call(interceptingListener, metadata3); + }, + onReceiveMessage: (message) => { + var _a; + let deserialized; + try { + deserialized = this.methodDefinition.responseDeserialize(message); + } catch (e) { + readError = { + code: constants_1.Status.INTERNAL, + details: `Response message parsing error: ${(0, error_1.getErrorMessage)(e)}`, + metadata: new metadata_1.Metadata() + }; + this.call.cancelWithStatus(readError.code, readError.details); + return; + } + (_a = interceptingListener === null || interceptingListener === void 0 ? void 0 : interceptingListener.onReceiveMessage) === null || _a === void 0 ? void 0 : _a.call(interceptingListener, deserialized); + }, + onReceiveStatus: (status) => { + var _a, _b; + if (readError) { + (_a = interceptingListener === null || interceptingListener === void 0 ? void 0 : interceptingListener.onReceiveStatus) === null || _a === void 0 ? void 0 : _a.call(interceptingListener, readError); + } else { + (_b = interceptingListener === null || interceptingListener === void 0 ? void 0 : interceptingListener.onReceiveStatus) === null || _b === void 0 ? void 0 : _b.call(interceptingListener, status); + } + } + }); + } + startRead() { + this.call.startRead(); + } + halfClose() { + this.call.halfClose(); + } + }; + var BaseUnaryInterceptingCall = class extends BaseInterceptingCall { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + constructor(call, methodDefinition) { + super(call, methodDefinition); + } + start(metadata2, listener) { + var _a, _b; + let receivedMessage = false; + const wrapperListener = { + onReceiveMetadata: (_b = (_a = listener === null || listener === void 0 ? void 0 : listener.onReceiveMetadata) === null || _a === void 0 ? void 0 : _a.bind(listener)) !== null && _b !== void 0 ? _b : (metadata3) => { + }, + // eslint-disable-next-line @typescript-eslint/no-explicit-any + onReceiveMessage: (message) => { + var _a2; + receivedMessage = true; + (_a2 = listener === null || listener === void 0 ? void 0 : listener.onReceiveMessage) === null || _a2 === void 0 ? void 0 : _a2.call(listener, message); + }, + onReceiveStatus: (status) => { + var _a2, _b2; + if (!receivedMessage) { + (_a2 = listener === null || listener === void 0 ? void 0 : listener.onReceiveMessage) === null || _a2 === void 0 ? void 0 : _a2.call(listener, null); + } + (_b2 = listener === null || listener === void 0 ? void 0 : listener.onReceiveStatus) === null || _b2 === void 0 ? void 0 : _b2.call(listener, status); + } + }; + super.start(metadata2, wrapperListener); + this.call.startRead(); + } + }; + var BaseStreamingInterceptingCall = class extends BaseInterceptingCall { + }; + function getBottomInterceptingCall(channel, options2, methodDefinition) { + const call = getCall(channel, methodDefinition.path, options2); + if (methodDefinition.responseStream) { + return new BaseStreamingInterceptingCall(call, methodDefinition); + } else { + return new BaseUnaryInterceptingCall(call, methodDefinition); + } + } + function getInterceptingCall(interceptorArgs, methodDefinition, options2, channel) { + if (interceptorArgs.clientInterceptors.length > 0 && interceptorArgs.clientInterceptorProviders.length > 0) { + throw new InterceptorConfigurationError("Both interceptors and interceptor_providers were passed as options to the client constructor. Only one of these is allowed."); + } + if (interceptorArgs.callInterceptors.length > 0 && interceptorArgs.callInterceptorProviders.length > 0) { + throw new InterceptorConfigurationError("Both interceptors and interceptor_providers were passed as call options. Only one of these is allowed."); + } + let interceptors = []; + if (interceptorArgs.callInterceptors.length > 0 || interceptorArgs.callInterceptorProviders.length > 0) { + interceptors = [].concat(interceptorArgs.callInterceptors, interceptorArgs.callInterceptorProviders.map((provider) => provider(methodDefinition))).filter((interceptor) => interceptor); + } else { + interceptors = [].concat(interceptorArgs.clientInterceptors, interceptorArgs.clientInterceptorProviders.map((provider) => provider(methodDefinition))).filter((interceptor) => interceptor); + } + const interceptorOptions = Object.assign({}, options2, { + method_definition: methodDefinition + }); + const getCall2 = interceptors.reduceRight((nextCall, nextInterceptor) => { + return (currentOptions) => nextInterceptor(currentOptions, nextCall); + }, (finalOptions) => getBottomInterceptingCall(channel, finalOptions, methodDefinition)); + return getCall2(interceptorOptions); + } + exports2.getInterceptingCall = getInterceptingCall; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/client.js +var require_client = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/client.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Client = void 0; + var call_1 = require_call(); + var channel_1 = require_channel(); + var connectivity_state_1 = require_connectivity_state(); + var constants_1 = require_constants10(); + var metadata_1 = require_metadata3(); + var client_interceptors_1 = require_client_interceptors(); + var CHANNEL_SYMBOL = Symbol(); + var INTERCEPTOR_SYMBOL = Symbol(); + var INTERCEPTOR_PROVIDER_SYMBOL = Symbol(); + var CALL_INVOCATION_TRANSFORMER_SYMBOL = Symbol(); + function isFunction2(arg) { + return typeof arg === "function"; + } + function getErrorStackString(error) { + return error.stack.split("\n").slice(1).join("\n"); + } + var Client2 = class { + constructor(address, credentials, options2 = {}) { + var _a, _b; + options2 = Object.assign({}, options2); + this[INTERCEPTOR_SYMBOL] = (_a = options2.interceptors) !== null && _a !== void 0 ? _a : []; + delete options2.interceptors; + this[INTERCEPTOR_PROVIDER_SYMBOL] = (_b = options2.interceptor_providers) !== null && _b !== void 0 ? _b : []; + delete options2.interceptor_providers; + if (this[INTERCEPTOR_SYMBOL].length > 0 && this[INTERCEPTOR_PROVIDER_SYMBOL].length > 0) { + throw new Error("Both interceptors and interceptor_providers were passed as options to the client constructor. Only one of these is allowed."); + } + this[CALL_INVOCATION_TRANSFORMER_SYMBOL] = options2.callInvocationTransformer; + delete options2.callInvocationTransformer; + if (options2.channelOverride) { + this[CHANNEL_SYMBOL] = options2.channelOverride; + } else if (options2.channelFactoryOverride) { + const channelFactoryOverride = options2.channelFactoryOverride; + delete options2.channelFactoryOverride; + this[CHANNEL_SYMBOL] = channelFactoryOverride(address, credentials, options2); + } else { + this[CHANNEL_SYMBOL] = new channel_1.ChannelImplementation(address, credentials, options2); + } + } + close() { + this[CHANNEL_SYMBOL].close(); + } + getChannel() { + return this[CHANNEL_SYMBOL]; + } + waitForReady(deadline, callback) { + const checkState = (err2) => { + if (err2) { + callback(new Error("Failed to connect before the deadline")); + return; + } + let newState; + try { + newState = this[CHANNEL_SYMBOL].getConnectivityState(true); + } catch (e) { + callback(new Error("The channel has been closed")); + return; + } + if (newState === connectivity_state_1.ConnectivityState.READY) { + callback(); + } else { + try { + this[CHANNEL_SYMBOL].watchConnectivityState(newState, deadline, checkState); + } catch (e) { + callback(new Error("The channel has been closed")); + } + } + }; + setImmediate(checkState); + } + checkOptionalUnaryResponseArguments(arg1, arg2, arg3) { + if (isFunction2(arg1)) { + return { metadata: new metadata_1.Metadata(), options: {}, callback: arg1 }; + } else if (isFunction2(arg2)) { + if (arg1 instanceof metadata_1.Metadata) { + return { metadata: arg1, options: {}, callback: arg2 }; + } else { + return { metadata: new metadata_1.Metadata(), options: arg1, callback: arg2 }; + } + } else { + if (!(arg1 instanceof metadata_1.Metadata && arg2 instanceof Object && isFunction2(arg3))) { + throw new Error("Incorrect arguments passed"); + } + return { metadata: arg1, options: arg2, callback: arg3 }; + } + } + makeUnaryRequest(method, serialize, deserialize, argument, metadata2, options2, callback) { + var _a, _b; + const checkedArguments = this.checkOptionalUnaryResponseArguments(metadata2, options2, callback); + const methodDefinition = { + path: method, + requestStream: false, + responseStream: false, + requestSerialize: serialize, + responseDeserialize: deserialize + }; + let callProperties = { + argument, + metadata: checkedArguments.metadata, + call: new call_1.ClientUnaryCallImpl(), + channel: this[CHANNEL_SYMBOL], + methodDefinition, + callOptions: checkedArguments.options, + callback: checkedArguments.callback + }; + if (this[CALL_INVOCATION_TRANSFORMER_SYMBOL]) { + callProperties = this[CALL_INVOCATION_TRANSFORMER_SYMBOL](callProperties); + } + const emitter = callProperties.call; + const interceptorArgs = { + clientInterceptors: this[INTERCEPTOR_SYMBOL], + clientInterceptorProviders: this[INTERCEPTOR_PROVIDER_SYMBOL], + callInterceptors: (_a = callProperties.callOptions.interceptors) !== null && _a !== void 0 ? _a : [], + callInterceptorProviders: (_b = callProperties.callOptions.interceptor_providers) !== null && _b !== void 0 ? _b : [] + }; + const call = (0, client_interceptors_1.getInterceptingCall)(interceptorArgs, callProperties.methodDefinition, callProperties.callOptions, callProperties.channel); + emitter.call = call; + let responseMessage = null; + let receivedStatus = false; + let callerStackError = new Error(); + call.start(callProperties.metadata, { + onReceiveMetadata: (metadata3) => { + emitter.emit("metadata", metadata3); + }, + // eslint-disable-next-line @typescript-eslint/no-explicit-any + onReceiveMessage(message) { + if (responseMessage !== null) { + call.cancelWithStatus(constants_1.Status.INTERNAL, "Too many responses received"); + } + responseMessage = message; + }, + onReceiveStatus(status) { + if (receivedStatus) { + return; + } + receivedStatus = true; + if (status.code === constants_1.Status.OK) { + if (responseMessage === null) { + const callerStack = getErrorStackString(callerStackError); + callProperties.callback((0, call_1.callErrorFromStatus)({ + code: constants_1.Status.INTERNAL, + details: "No message received", + metadata: status.metadata + }, callerStack)); + } else { + callProperties.callback(null, responseMessage); + } + } else { + const callerStack = getErrorStackString(callerStackError); + callProperties.callback((0, call_1.callErrorFromStatus)(status, callerStack)); + } + callerStackError = null; + emitter.emit("status", status); + } + }); + call.sendMessage(argument); + call.halfClose(); + return emitter; + } + makeClientStreamRequest(method, serialize, deserialize, metadata2, options2, callback) { + var _a, _b; + const checkedArguments = this.checkOptionalUnaryResponseArguments(metadata2, options2, callback); + const methodDefinition = { + path: method, + requestStream: true, + responseStream: false, + requestSerialize: serialize, + responseDeserialize: deserialize + }; + let callProperties = { + metadata: checkedArguments.metadata, + call: new call_1.ClientWritableStreamImpl(serialize), + channel: this[CHANNEL_SYMBOL], + methodDefinition, + callOptions: checkedArguments.options, + callback: checkedArguments.callback + }; + if (this[CALL_INVOCATION_TRANSFORMER_SYMBOL]) { + callProperties = this[CALL_INVOCATION_TRANSFORMER_SYMBOL](callProperties); + } + const emitter = callProperties.call; + const interceptorArgs = { + clientInterceptors: this[INTERCEPTOR_SYMBOL], + clientInterceptorProviders: this[INTERCEPTOR_PROVIDER_SYMBOL], + callInterceptors: (_a = callProperties.callOptions.interceptors) !== null && _a !== void 0 ? _a : [], + callInterceptorProviders: (_b = callProperties.callOptions.interceptor_providers) !== null && _b !== void 0 ? _b : [] + }; + const call = (0, client_interceptors_1.getInterceptingCall)(interceptorArgs, callProperties.methodDefinition, callProperties.callOptions, callProperties.channel); + emitter.call = call; + let responseMessage = null; + let receivedStatus = false; + let callerStackError = new Error(); + call.start(callProperties.metadata, { + onReceiveMetadata: (metadata3) => { + emitter.emit("metadata", metadata3); + }, + // eslint-disable-next-line @typescript-eslint/no-explicit-any + onReceiveMessage(message) { + if (responseMessage !== null) { + call.cancelWithStatus(constants_1.Status.INTERNAL, "Too many responses received"); + } + responseMessage = message; + }, + onReceiveStatus(status) { + if (receivedStatus) { + return; + } + receivedStatus = true; + if (status.code === constants_1.Status.OK) { + if (responseMessage === null) { + const callerStack = getErrorStackString(callerStackError); + callProperties.callback((0, call_1.callErrorFromStatus)({ + code: constants_1.Status.INTERNAL, + details: "No message received", + metadata: status.metadata + }, callerStack)); + } else { + callProperties.callback(null, responseMessage); + } + } else { + const callerStack = getErrorStackString(callerStackError); + callProperties.callback((0, call_1.callErrorFromStatus)(status, callerStack)); + } + callerStackError = null; + emitter.emit("status", status); + } + }); + return emitter; + } + checkMetadataAndOptions(arg1, arg2) { + let metadata2; + let options2; + if (arg1 instanceof metadata_1.Metadata) { + metadata2 = arg1; + if (arg2) { + options2 = arg2; + } else { + options2 = {}; + } + } else { + if (arg1) { + options2 = arg1; + } else { + options2 = {}; + } + metadata2 = new metadata_1.Metadata(); + } + return { metadata: metadata2, options: options2 }; + } + makeServerStreamRequest(method, serialize, deserialize, argument, metadata2, options2) { + var _a, _b; + const checkedArguments = this.checkMetadataAndOptions(metadata2, options2); + const methodDefinition = { + path: method, + requestStream: false, + responseStream: true, + requestSerialize: serialize, + responseDeserialize: deserialize + }; + let callProperties = { + argument, + metadata: checkedArguments.metadata, + call: new call_1.ClientReadableStreamImpl(deserialize), + channel: this[CHANNEL_SYMBOL], + methodDefinition, + callOptions: checkedArguments.options + }; + if (this[CALL_INVOCATION_TRANSFORMER_SYMBOL]) { + callProperties = this[CALL_INVOCATION_TRANSFORMER_SYMBOL](callProperties); + } + const stream5 = callProperties.call; + const interceptorArgs = { + clientInterceptors: this[INTERCEPTOR_SYMBOL], + clientInterceptorProviders: this[INTERCEPTOR_PROVIDER_SYMBOL], + callInterceptors: (_a = callProperties.callOptions.interceptors) !== null && _a !== void 0 ? _a : [], + callInterceptorProviders: (_b = callProperties.callOptions.interceptor_providers) !== null && _b !== void 0 ? _b : [] + }; + const call = (0, client_interceptors_1.getInterceptingCall)(interceptorArgs, callProperties.methodDefinition, callProperties.callOptions, callProperties.channel); + stream5.call = call; + let receivedStatus = false; + let callerStackError = new Error(); + call.start(callProperties.metadata, { + onReceiveMetadata(metadata3) { + stream5.emit("metadata", metadata3); + }, + // eslint-disable-next-line @typescript-eslint/no-explicit-any + onReceiveMessage(message) { + stream5.push(message); + }, + onReceiveStatus(status) { + if (receivedStatus) { + return; + } + receivedStatus = true; + stream5.push(null); + if (status.code !== constants_1.Status.OK) { + const callerStack = getErrorStackString(callerStackError); + stream5.emit("error", (0, call_1.callErrorFromStatus)(status, callerStack)); + } + callerStackError = null; + stream5.emit("status", status); + } + }); + call.sendMessage(argument); + call.halfClose(); + return stream5; + } + makeBidiStreamRequest(method, serialize, deserialize, metadata2, options2) { + var _a, _b; + const checkedArguments = this.checkMetadataAndOptions(metadata2, options2); + const methodDefinition = { + path: method, + requestStream: true, + responseStream: true, + requestSerialize: serialize, + responseDeserialize: deserialize + }; + let callProperties = { + metadata: checkedArguments.metadata, + call: new call_1.ClientDuplexStreamImpl(serialize, deserialize), + channel: this[CHANNEL_SYMBOL], + methodDefinition, + callOptions: checkedArguments.options + }; + if (this[CALL_INVOCATION_TRANSFORMER_SYMBOL]) { + callProperties = this[CALL_INVOCATION_TRANSFORMER_SYMBOL](callProperties); + } + const stream5 = callProperties.call; + const interceptorArgs = { + clientInterceptors: this[INTERCEPTOR_SYMBOL], + clientInterceptorProviders: this[INTERCEPTOR_PROVIDER_SYMBOL], + callInterceptors: (_a = callProperties.callOptions.interceptors) !== null && _a !== void 0 ? _a : [], + callInterceptorProviders: (_b = callProperties.callOptions.interceptor_providers) !== null && _b !== void 0 ? _b : [] + }; + const call = (0, client_interceptors_1.getInterceptingCall)(interceptorArgs, callProperties.methodDefinition, callProperties.callOptions, callProperties.channel); + stream5.call = call; + let receivedStatus = false; + let callerStackError = new Error(); + call.start(callProperties.metadata, { + onReceiveMetadata(metadata3) { + stream5.emit("metadata", metadata3); + }, + onReceiveMessage(message) { + stream5.push(message); + }, + onReceiveStatus(status) { + if (receivedStatus) { + return; + } + receivedStatus = true; + stream5.push(null); + if (status.code !== constants_1.Status.OK) { + const callerStack = getErrorStackString(callerStackError); + stream5.emit("error", (0, call_1.callErrorFromStatus)(status, callerStack)); + } + callerStackError = null; + stream5.emit("status", status); + } + }); + return stream5; + } + }; + exports2.Client = Client2; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/make-client.js +var require_make_client = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/make-client.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.loadPackageDefinition = exports2.makeClientConstructor = void 0; + var client_1 = require_client(); + var requesterFuncs = { + unary: client_1.Client.prototype.makeUnaryRequest, + server_stream: client_1.Client.prototype.makeServerStreamRequest, + client_stream: client_1.Client.prototype.makeClientStreamRequest, + bidi: client_1.Client.prototype.makeBidiStreamRequest + }; + function isPrototypePolluted(key) { + return ["__proto__", "prototype", "constructor"].includes(key); + } + function makeClientConstructor(methods, serviceName, classOptions) { + if (!classOptions) { + classOptions = {}; + } + class ServiceClientImpl extends client_1.Client { + } + Object.keys(methods).forEach((name) => { + if (isPrototypePolluted(name)) { + return; + } + const attrs = methods[name]; + let methodType; + if (typeof name === "string" && name.charAt(0) === "$") { + throw new Error("Method names cannot start with $"); + } + if (attrs.requestStream) { + if (attrs.responseStream) { + methodType = "bidi"; + } else { + methodType = "client_stream"; + } + } else { + if (attrs.responseStream) { + methodType = "server_stream"; + } else { + methodType = "unary"; + } + } + const serialize = attrs.requestSerialize; + const deserialize = attrs.responseDeserialize; + const methodFunc = partial(requesterFuncs[methodType], attrs.path, serialize, deserialize); + ServiceClientImpl.prototype[name] = methodFunc; + Object.assign(ServiceClientImpl.prototype[name], attrs); + if (attrs.originalName && !isPrototypePolluted(attrs.originalName)) { + ServiceClientImpl.prototype[attrs.originalName] = ServiceClientImpl.prototype[name]; + } + }); + ServiceClientImpl.service = methods; + ServiceClientImpl.serviceName = serviceName; + return ServiceClientImpl; + } + exports2.makeClientConstructor = makeClientConstructor; + function partial(fn, path30, serialize, deserialize) { + return function(...args3) { + return fn.call(this, path30, serialize, deserialize, ...args3); + }; + } + function isProtobufTypeDefinition(obj2) { + return "format" in obj2; + } + function loadPackageDefinition(packageDef) { + const result = {}; + for (const serviceFqn in packageDef) { + if (Object.prototype.hasOwnProperty.call(packageDef, serviceFqn)) { + const service = packageDef[serviceFqn]; + const nameComponents = serviceFqn.split("."); + if (nameComponents.some((comp) => isPrototypePolluted(comp))) { + continue; + } + const serviceName = nameComponents[nameComponents.length - 1]; + let current = result; + for (const packageName of nameComponents.slice(0, -1)) { + if (!current[packageName]) { + current[packageName] = {}; + } + current = current[packageName]; + } + if (isProtobufTypeDefinition(service)) { + current[serviceName] = service; + } else { + current[serviceName] = makeClientConstructor(service, serviceName, {}); + } + } + } + return result; + } + exports2.loadPackageDefinition = loadPackageDefinition; + } +}); + +// ../node_modules/.pnpm/lodash.camelcase@4.3.0/node_modules/lodash.camelcase/index.js +var require_lodash2 = __commonJS({ + "../node_modules/.pnpm/lodash.camelcase@4.3.0/node_modules/lodash.camelcase/index.js"(exports2, module2) { + var INFINITY = 1 / 0; + var symbolTag = "[object Symbol]"; + var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; + var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; + var rsAstralRange = "\\ud800-\\udfff"; + var rsComboMarksRange = "\\u0300-\\u036f\\ufe20-\\ufe23"; + var rsComboSymbolsRange = "\\u20d0-\\u20f0"; + var rsDingbatRange = "\\u2700-\\u27bf"; + var rsLowerRange = "a-z\\xdf-\\xf6\\xf8-\\xff"; + var rsMathOpRange = "\\xac\\xb1\\xd7\\xf7"; + var rsNonCharRange = "\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf"; + var rsPunctuationRange = "\\u2000-\\u206f"; + var rsSpaceRange = " \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000"; + var rsUpperRange = "A-Z\\xc0-\\xd6\\xd8-\\xde"; + var rsVarRange = "\\ufe0e\\ufe0f"; + var rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; + var rsApos = "['\u2019]"; + var rsAstral = "[" + rsAstralRange + "]"; + var rsBreak = "[" + rsBreakRange + "]"; + var rsCombo = "[" + rsComboMarksRange + rsComboSymbolsRange + "]"; + var rsDigits = "\\d+"; + var rsDingbat = "[" + rsDingbatRange + "]"; + var rsLower = "[" + rsLowerRange + "]"; + var rsMisc = "[^" + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + "]"; + var rsFitz = "\\ud83c[\\udffb-\\udfff]"; + var rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")"; + var rsNonAstral = "[^" + rsAstralRange + "]"; + var rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}"; + var rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]"; + var rsUpper = "[" + rsUpperRange + "]"; + var rsZWJ = "\\u200d"; + var rsLowerMisc = "(?:" + rsLower + "|" + rsMisc + ")"; + var rsUpperMisc = "(?:" + rsUpper + "|" + rsMisc + ")"; + var rsOptLowerContr = "(?:" + rsApos + "(?:d|ll|m|re|s|t|ve))?"; + var rsOptUpperContr = "(?:" + rsApos + "(?:D|LL|M|RE|S|T|VE))?"; + var reOptMod = rsModifier + "?"; + var rsOptVar = "[" + rsVarRange + "]?"; + var rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*"; + var rsSeq = rsOptVar + reOptMod + rsOptJoin; + var rsEmoji = "(?:" + [rsDingbat, rsRegional, rsSurrPair].join("|") + ")" + rsSeq; + var rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")"; + var reApos = RegExp(rsApos, "g"); + var reComboMark = RegExp(rsCombo, "g"); + var reUnicode = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g"); + var reUnicodeWord = RegExp([ + rsUpper + "?" + rsLower + "+" + rsOptLowerContr + "(?=" + [rsBreak, rsUpper, "$"].join("|") + ")", + rsUpperMisc + "+" + rsOptUpperContr + "(?=" + [rsBreak, rsUpper + rsLowerMisc, "$"].join("|") + ")", + rsUpper + "?" + rsLowerMisc + "+" + rsOptLowerContr, + rsUpper + "+" + rsOptUpperContr, + rsDigits, + rsEmoji + ].join("|"), "g"); + var reHasUnicode = RegExp("[" + rsZWJ + rsAstralRange + rsComboMarksRange + rsComboSymbolsRange + rsVarRange + "]"); + var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; + var deburredLetters = { + // Latin-1 Supplement block. + "\xC0": "A", + "\xC1": "A", + "\xC2": "A", + "\xC3": "A", + "\xC4": "A", + "\xC5": "A", + "\xE0": "a", + "\xE1": "a", + "\xE2": "a", + "\xE3": "a", + "\xE4": "a", + "\xE5": "a", + "\xC7": "C", + "\xE7": "c", + "\xD0": "D", + "\xF0": "d", + "\xC8": "E", + "\xC9": "E", + "\xCA": "E", + "\xCB": "E", + "\xE8": "e", + "\xE9": "e", + "\xEA": "e", + "\xEB": "e", + "\xCC": "I", + "\xCD": "I", + "\xCE": "I", + "\xCF": "I", + "\xEC": "i", + "\xED": "i", + "\xEE": "i", + "\xEF": "i", + "\xD1": "N", + "\xF1": "n", + "\xD2": "O", + "\xD3": "O", + "\xD4": "O", + "\xD5": "O", + "\xD6": "O", + "\xD8": "O", + "\xF2": "o", + "\xF3": "o", + "\xF4": "o", + "\xF5": "o", + "\xF6": "o", + "\xF8": "o", + "\xD9": "U", + "\xDA": "U", + "\xDB": "U", + "\xDC": "U", + "\xF9": "u", + "\xFA": "u", + "\xFB": "u", + "\xFC": "u", + "\xDD": "Y", + "\xFD": "y", + "\xFF": "y", + "\xC6": "Ae", + "\xE6": "ae", + "\xDE": "Th", + "\xFE": "th", + "\xDF": "ss", + // Latin Extended-A block. + "\u0100": "A", + "\u0102": "A", + "\u0104": "A", + "\u0101": "a", + "\u0103": "a", + "\u0105": "a", + "\u0106": "C", + "\u0108": "C", + "\u010A": "C", + "\u010C": "C", + "\u0107": "c", + "\u0109": "c", + "\u010B": "c", + "\u010D": "c", + "\u010E": "D", + "\u0110": "D", + "\u010F": "d", + "\u0111": "d", + "\u0112": "E", + "\u0114": "E", + "\u0116": "E", + "\u0118": "E", + "\u011A": "E", + "\u0113": "e", + "\u0115": "e", + "\u0117": "e", + "\u0119": "e", + "\u011B": "e", + "\u011C": "G", + "\u011E": "G", + "\u0120": "G", + "\u0122": "G", + "\u011D": "g", + "\u011F": "g", + "\u0121": "g", + "\u0123": "g", + "\u0124": "H", + "\u0126": "H", + "\u0125": "h", + "\u0127": "h", + "\u0128": "I", + "\u012A": "I", + "\u012C": "I", + "\u012E": "I", + "\u0130": "I", + "\u0129": "i", + "\u012B": "i", + "\u012D": "i", + "\u012F": "i", + "\u0131": "i", + "\u0134": "J", + "\u0135": "j", + "\u0136": "K", + "\u0137": "k", + "\u0138": "k", + "\u0139": "L", + "\u013B": "L", + "\u013D": "L", + "\u013F": "L", + "\u0141": "L", + "\u013A": "l", + "\u013C": "l", + "\u013E": "l", + "\u0140": "l", + "\u0142": "l", + "\u0143": "N", + "\u0145": "N", + "\u0147": "N", + "\u014A": "N", + "\u0144": "n", + "\u0146": "n", + "\u0148": "n", + "\u014B": "n", + "\u014C": "O", + "\u014E": "O", + "\u0150": "O", + "\u014D": "o", + "\u014F": "o", + "\u0151": "o", + "\u0154": "R", + "\u0156": "R", + "\u0158": "R", + "\u0155": "r", + "\u0157": "r", + "\u0159": "r", + "\u015A": "S", + "\u015C": "S", + "\u015E": "S", + "\u0160": "S", + "\u015B": "s", + "\u015D": "s", + "\u015F": "s", + "\u0161": "s", + "\u0162": "T", + "\u0164": "T", + "\u0166": "T", + "\u0163": "t", + "\u0165": "t", + "\u0167": "t", + "\u0168": "U", + "\u016A": "U", + "\u016C": "U", + "\u016E": "U", + "\u0170": "U", + "\u0172": "U", + "\u0169": "u", + "\u016B": "u", + "\u016D": "u", + "\u016F": "u", + "\u0171": "u", + "\u0173": "u", + "\u0174": "W", + "\u0175": "w", + "\u0176": "Y", + "\u0177": "y", + "\u0178": "Y", + "\u0179": "Z", + "\u017B": "Z", + "\u017D": "Z", + "\u017A": "z", + "\u017C": "z", + "\u017E": "z", + "\u0132": "IJ", + "\u0133": "ij", + "\u0152": "Oe", + "\u0153": "oe", + "\u0149": "'n", + "\u017F": "ss" + }; + var freeGlobal = typeof global == "object" && global && global.Object === Object && global; + var freeSelf = typeof self == "object" && self && self.Object === Object && self; + var root = freeGlobal || freeSelf || Function("return this")(); + function arrayReduce(array, iteratee, accumulator, initAccum) { + var index = -1, length = array ? array.length : 0; + if (initAccum && length) { + accumulator = array[++index]; + } + while (++index < length) { + accumulator = iteratee(accumulator, array[index], index, array); + } + return accumulator; + } + function asciiToArray(string) { + return string.split(""); + } + function asciiWords(string) { + return string.match(reAsciiWord) || []; + } + function basePropertyOf(object) { + return function(key) { + return object == null ? void 0 : object[key]; + }; + } + var deburrLetter = basePropertyOf(deburredLetters); + function hasUnicode(string) { + return reHasUnicode.test(string); + } + function hasUnicodeWord(string) { + return reHasUnicodeWord.test(string); + } + function stringToArray(string) { + return hasUnicode(string) ? unicodeToArray(string) : asciiToArray(string); + } + function unicodeToArray(string) { + return string.match(reUnicode) || []; + } + function unicodeWords(string) { + return string.match(reUnicodeWord) || []; + } + var objectProto = Object.prototype; + var objectToString = objectProto.toString; + var Symbol2 = root.Symbol; + var symbolProto = Symbol2 ? Symbol2.prototype : void 0; + var symbolToString = symbolProto ? symbolProto.toString : void 0; + function baseSlice(array, start4, end) { + var index = -1, length = array.length; + if (start4 < 0) { + start4 = -start4 > length ? 0 : length + start4; + } + end = end > length ? length : end; + if (end < 0) { + end += length; + } + length = start4 > end ? 0 : end - start4 >>> 0; + start4 >>>= 0; + var result = Array(length); + while (++index < length) { + result[index] = array[index + start4]; + } + return result; + } + function baseToString(value) { + if (typeof value == "string") { + return value; + } + if (isSymbol(value)) { + return symbolToString ? symbolToString.call(value) : ""; + } + var result = value + ""; + return result == "0" && 1 / value == -INFINITY ? "-0" : result; + } + function castSlice(array, start4, end) { + var length = array.length; + end = end === void 0 ? length : end; + return !start4 && end >= length ? array : baseSlice(array, start4, end); + } + function createCaseFirst(methodName) { + return function(string) { + string = toString3(string); + var strSymbols = hasUnicode(string) ? stringToArray(string) : void 0; + var chr = strSymbols ? strSymbols[0] : string.charAt(0); + var trailing = strSymbols ? castSlice(strSymbols, 1).join("") : string.slice(1); + return chr[methodName]() + trailing; + }; + } + function createCompounder(callback) { + return function(string) { + return arrayReduce(words(deburr(string).replace(reApos, "")), callback, ""); + }; + } + function isObjectLike(value) { + return !!value && typeof value == "object"; + } + function isSymbol(value) { + return typeof value == "symbol" || isObjectLike(value) && objectToString.call(value) == symbolTag; + } + function toString3(value) { + return value == null ? "" : baseToString(value); + } + var camelCase2 = createCompounder(function(result, word, index) { + word = word.toLowerCase(); + return result + (index ? capitalize(word) : word); + }); + function capitalize(string) { + return upperFirst(toString3(string).toLowerCase()); + } + function deburr(string) { + string = toString3(string); + return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ""); + } + var upperFirst = createCaseFirst("toUpperCase"); + function words(string, pattern, guard) { + string = toString3(string); + pattern = guard ? void 0 : pattern; + if (pattern === void 0) { + return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string); + } + return string.match(pattern) || []; + } + module2.exports = camelCase2; + } +}); + +// ../node_modules/.pnpm/@protobufjs+codegen@2.0.4/node_modules/@protobufjs/codegen/index.js +var require_codegen = __commonJS({ + "../node_modules/.pnpm/@protobufjs+codegen@2.0.4/node_modules/@protobufjs/codegen/index.js"(exports2, module2) { + "use strict"; + module2.exports = codegen; + function codegen(functionParams, functionName) { + if (typeof functionParams === "string") { + functionName = functionParams; + functionParams = void 0; + } + var body2 = []; + function Codegen(formatStringOrScope) { + if (typeof formatStringOrScope !== "string") { + var source2 = toString3(); + if (codegen.verbose) + console.log("codegen: " + source2); + source2 = "return " + source2; + if (formatStringOrScope) { + var scopeKeys = Object.keys(formatStringOrScope), scopeParams = new Array(scopeKeys.length + 1), scopeValues = new Array(scopeKeys.length), scopeOffset = 0; + while (scopeOffset < scopeKeys.length) { + scopeParams[scopeOffset] = scopeKeys[scopeOffset]; + scopeValues[scopeOffset] = formatStringOrScope[scopeKeys[scopeOffset++]]; + } + scopeParams[scopeOffset] = source2; + return Function.apply(null, scopeParams).apply(null, scopeValues); + } + return Function(source2)(); + } + var formatParams = new Array(arguments.length - 1), formatOffset = 0; + while (formatOffset < formatParams.length) + formatParams[formatOffset] = arguments[++formatOffset]; + formatOffset = 0; + formatStringOrScope = formatStringOrScope.replace(/%([%dfijs])/g, function replace($0, $1) { + var value = formatParams[formatOffset++]; + switch ($1) { + case "d": + case "f": + return String(Number(value)); + case "i": + return String(Math.floor(value)); + case "j": + return JSON.stringify(value); + case "s": + return String(value); + } + return "%"; + }); + if (formatOffset !== formatParams.length) + throw Error("parameter count mismatch"); + body2.push(formatStringOrScope); + return Codegen; + } + function toString3(functionNameOverride) { + return "function " + (functionNameOverride || functionName || "") + "(" + (functionParams && functionParams.join(",") || "") + "){\n " + body2.join("\n ") + "\n}"; + } + Codegen.toString = toString3; + return Codegen; + } + codegen.verbose = false; + } +}); + +// ../node_modules/.pnpm/@protobufjs+fetch@1.1.0/node_modules/@protobufjs/fetch/index.js +var require_fetch3 = __commonJS({ + "../node_modules/.pnpm/@protobufjs+fetch@1.1.0/node_modules/@protobufjs/fetch/index.js"(exports2, module2) { + "use strict"; + module2.exports = fetch4; + var asPromise = require_aspromise(); + var inquire2 = require_inquire(); + var fs6 = inquire2("fs"); + function fetch4(filename, options2, callback) { + if (typeof options2 === "function") { + callback = options2; + options2 = {}; + } else if (!options2) + options2 = {}; + if (!callback) + return asPromise(fetch4, this, filename, options2); + if (!options2.xhr && fs6 && fs6.readFile) + return fs6.readFile(filename, function fetchReadFileCallback(err2, contents) { + return err2 && typeof XMLHttpRequest !== "undefined" ? fetch4.xhr(filename, options2, callback) : err2 ? callback(err2) : callback(null, options2.binary ? contents : contents.toString("utf8")); + }); + return fetch4.xhr(filename, options2, callback); + } + fetch4.xhr = function fetch_xhr(filename, options2, callback) { + var xhr = new XMLHttpRequest(); + xhr.onreadystatechange = function fetchOnReadyStateChange() { + if (xhr.readyState !== 4) + return void 0; + if (xhr.status !== 0 && xhr.status !== 200) + return callback(Error("status " + xhr.status)); + if (options2.binary) { + var buffer2 = xhr.response; + if (!buffer2) { + buffer2 = []; + for (var i = 0; i < xhr.responseText.length; ++i) + buffer2.push(xhr.responseText.charCodeAt(i) & 255); + } + return callback(null, typeof Uint8Array !== "undefined" ? new Uint8Array(buffer2) : buffer2); + } + return callback(null, xhr.responseText); + }; + if (options2.binary) { + if ("overrideMimeType" in xhr) + xhr.overrideMimeType("text/plain; charset=x-user-defined"); + xhr.responseType = "arraybuffer"; + } + xhr.open("GET", filename); + xhr.send(); + }; + } +}); + +// ../node_modules/.pnpm/@protobufjs+path@1.1.2/node_modules/@protobufjs/path/index.js +var require_path2 = __commonJS({ + "../node_modules/.pnpm/@protobufjs+path@1.1.2/node_modules/@protobufjs/path/index.js"(exports2) { + "use strict"; + var path30 = exports2; + var isAbsolute = ( + /** + * Tests if the specified path is absolute. + * @param {string} path Path to test + * @returns {boolean} `true` if path is absolute + */ + path30.isAbsolute = function isAbsolute2(path31) { + return /^(?:\/|\w+:)/.test(path31); + } + ); + var normalize6 = ( + /** + * Normalizes the specified path. + * @param {string} path Path to normalize + * @returns {string} Normalized path + */ + path30.normalize = function normalize7(path31) { + path31 = path31.replace(/\\/g, "/").replace(/\/{2,}/g, "/"); + var parts = path31.split("/"), absolute = isAbsolute(path31), prefix = ""; + if (absolute) + prefix = parts.shift() + "/"; + for (var i = 0; i < parts.length; ) { + if (parts[i] === "..") { + if (i > 0 && parts[i - 1] !== "..") + parts.splice(--i, 2); + else if (absolute) + parts.splice(i, 1); + else + ++i; + } else if (parts[i] === ".") + parts.splice(i, 1); + else + ++i; + } + return prefix + parts.join("/"); + } + ); + path30.resolve = function resolve8(originPath, includePath, alreadyNormalized) { + if (!alreadyNormalized) + includePath = normalize6(includePath); + if (isAbsolute(includePath)) + return includePath; + if (!alreadyNormalized) + originPath = normalize6(originPath); + return (originPath = originPath.replace(/(?:\/|^)[^/]+$/, "")).length ? normalize6(originPath + "/" + includePath) : includePath; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/types.js +var require_types20 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/types.js"(exports2) { + "use strict"; + var types2 = exports2; + var util2 = require_util10(); + var s = [ + "double", + // 0 + "float", + // 1 + "int32", + // 2 + "uint32", + // 3 + "sint32", + // 4 + "fixed32", + // 5 + "sfixed32", + // 6 + "int64", + // 7 + "uint64", + // 8 + "sint64", + // 9 + "fixed64", + // 10 + "sfixed64", + // 11 + "bool", + // 12 + "string", + // 13 + "bytes" + // 14 + ]; + function bake(values, offset) { + var i = 0, o = {}; + offset |= 0; + while (i < values.length) + o[s[i + offset]] = values[i++]; + return o; + } + types2.basic = bake([ + /* double */ + 1, + /* float */ + 5, + /* int32 */ + 0, + /* uint32 */ + 0, + /* sint32 */ + 0, + /* fixed32 */ + 5, + /* sfixed32 */ + 5, + /* int64 */ + 0, + /* uint64 */ + 0, + /* sint64 */ + 0, + /* fixed64 */ + 1, + /* sfixed64 */ + 1, + /* bool */ + 0, + /* string */ + 2, + /* bytes */ + 2 + ]); + types2.defaults = bake([ + /* double */ + 0, + /* float */ + 0, + /* int32 */ + 0, + /* uint32 */ + 0, + /* sint32 */ + 0, + /* fixed32 */ + 0, + /* sfixed32 */ + 0, + /* int64 */ + 0, + /* uint64 */ + 0, + /* sint64 */ + 0, + /* fixed64 */ + 0, + /* sfixed64 */ + 0, + /* bool */ + false, + /* string */ + "", + /* bytes */ + util2.emptyArray, + /* message */ + null + ]); + types2.long = bake([ + /* int64 */ + 0, + /* uint64 */ + 0, + /* sint64 */ + 0, + /* fixed64 */ + 1, + /* sfixed64 */ + 1 + ], 7); + types2.mapKey = bake([ + /* int32 */ + 0, + /* uint32 */ + 0, + /* sint32 */ + 0, + /* fixed32 */ + 5, + /* sfixed32 */ + 5, + /* int64 */ + 0, + /* uint64 */ + 0, + /* sint64 */ + 0, + /* fixed64 */ + 1, + /* sfixed64 */ + 1, + /* bool */ + 0, + /* string */ + 2 + ], 2); + types2.packed = bake([ + /* double */ + 1, + /* float */ + 5, + /* int32 */ + 0, + /* uint32 */ + 0, + /* sint32 */ + 0, + /* fixed32 */ + 5, + /* sfixed32 */ + 5, + /* int64 */ + 0, + /* uint64 */ + 0, + /* sint64 */ + 0, + /* fixed64 */ + 1, + /* sfixed64 */ + 1, + /* bool */ + 0 + ]); + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/field.js +var require_field = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/field.js"(exports2, module2) { + "use strict"; + module2.exports = Field; + var ReflectionObject = require_object2(); + ((Field.prototype = Object.create(ReflectionObject.prototype)).constructor = Field).className = "Field"; + var Enum = require_enum(); + var types2 = require_types20(); + var util2 = require_util10(); + var Type; + var ruleRe = /^required|optional|repeated$/; + Field.fromJSON = function fromJSON(name, json) { + return new Field(name, json.id, json.type, json.rule, json.extend, json.options, json.comment); + }; + function Field(name, id, type2, rule, extend2, options2, comment) { + if (util2.isObject(rule)) { + comment = extend2; + options2 = rule; + rule = extend2 = void 0; + } else if (util2.isObject(extend2)) { + comment = options2; + options2 = extend2; + extend2 = void 0; + } + ReflectionObject.call(this, name, options2); + if (!util2.isInteger(id) || id < 0) + throw TypeError("id must be a non-negative integer"); + if (!util2.isString(type2)) + throw TypeError("type must be a string"); + if (rule !== void 0 && !ruleRe.test(rule = rule.toString().toLowerCase())) + throw TypeError("rule must be a string rule"); + if (extend2 !== void 0 && !util2.isString(extend2)) + throw TypeError("extend must be a string"); + if (rule === "proto3_optional") { + rule = "optional"; + } + this.rule = rule && rule !== "optional" ? rule : void 0; + this.type = type2; + this.id = id; + this.extend = extend2 || void 0; + this.required = rule === "required"; + this.optional = !this.required; + this.repeated = rule === "repeated"; + this.map = false; + this.message = null; + this.partOf = null; + this.typeDefault = null; + this.defaultValue = null; + this.long = util2.Long ? types2.long[type2] !== void 0 : ( + /* istanbul ignore next */ + false + ); + this.bytes = type2 === "bytes"; + this.resolvedType = null; + this.extensionField = null; + this.declaringField = null; + this._packed = null; + this.comment = comment; + } + Object.defineProperty(Field.prototype, "packed", { + get: function() { + if (this._packed === null) + this._packed = this.getOption("packed") !== false; + return this._packed; + } + }); + Field.prototype.setOption = function setOption(name, value, ifNotSet) { + if (name === "packed") + this._packed = null; + return ReflectionObject.prototype.setOption.call(this, name, value, ifNotSet); + }; + Field.prototype.toJSON = function toJSON2(toJSONOptions) { + var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false; + return util2.toObject([ + "rule", + this.rule !== "optional" && this.rule || void 0, + "type", + this.type, + "id", + this.id, + "extend", + this.extend, + "options", + this.options, + "comment", + keepComments ? this.comment : void 0 + ]); + }; + Field.prototype.resolve = function resolve8() { + if (this.resolved) + return this; + if ((this.typeDefault = types2.defaults[this.type]) === void 0) { + this.resolvedType = (this.declaringField ? this.declaringField.parent : this.parent).lookupTypeOrEnum(this.type); + if (this.resolvedType instanceof Type) + this.typeDefault = null; + else + this.typeDefault = this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]; + } else if (this.options && this.options.proto3_optional) { + this.typeDefault = null; + } + if (this.options && this.options["default"] != null) { + this.typeDefault = this.options["default"]; + if (this.resolvedType instanceof Enum && typeof this.typeDefault === "string") + this.typeDefault = this.resolvedType.values[this.typeDefault]; + } + if (this.options) { + if (this.options.packed === true || this.options.packed !== void 0 && this.resolvedType && !(this.resolvedType instanceof Enum)) + delete this.options.packed; + if (!Object.keys(this.options).length) + this.options = void 0; + } + if (this.long) { + this.typeDefault = util2.Long.fromNumber(this.typeDefault, this.type.charAt(0) === "u"); + if (Object.freeze) + Object.freeze(this.typeDefault); + } else if (this.bytes && typeof this.typeDefault === "string") { + var buf; + if (util2.base64.test(this.typeDefault)) + util2.base64.decode(this.typeDefault, buf = util2.newBuffer(util2.base64.length(this.typeDefault)), 0); + else + util2.utf8.write(this.typeDefault, buf = util2.newBuffer(util2.utf8.length(this.typeDefault)), 0); + this.typeDefault = buf; + } + if (this.map) + this.defaultValue = util2.emptyObject; + else if (this.repeated) + this.defaultValue = util2.emptyArray; + else + this.defaultValue = this.typeDefault; + if (this.parent instanceof Type) + this.parent.ctor.prototype[this.name] = this.defaultValue; + return ReflectionObject.prototype.resolve.call(this); + }; + Field.d = function decorateField(fieldId, fieldType, fieldRule, defaultValue) { + if (typeof fieldType === "function") + fieldType = util2.decorateType(fieldType).name; + else if (fieldType && typeof fieldType === "object") + fieldType = util2.decorateEnum(fieldType).name; + return function fieldDecorator(prototype3, fieldName) { + util2.decorateType(prototype3.constructor).add(new Field(fieldName, fieldId, fieldType, fieldRule, { "default": defaultValue })); + }; + }; + Field._configure = function configure(Type_) { + Type = Type_; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/oneof.js +var require_oneof = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/oneof.js"(exports2, module2) { + "use strict"; + module2.exports = OneOf; + var ReflectionObject = require_object2(); + ((OneOf.prototype = Object.create(ReflectionObject.prototype)).constructor = OneOf).className = "OneOf"; + var Field = require_field(); + var util2 = require_util10(); + function OneOf(name, fieldNames, options2, comment) { + if (!Array.isArray(fieldNames)) { + options2 = fieldNames; + fieldNames = void 0; + } + ReflectionObject.call(this, name, options2); + if (!(fieldNames === void 0 || Array.isArray(fieldNames))) + throw TypeError("fieldNames must be an Array"); + this.oneof = fieldNames || []; + this.fieldsArray = []; + this.comment = comment; + } + OneOf.fromJSON = function fromJSON(name, json) { + return new OneOf(name, json.oneof, json.options, json.comment); + }; + OneOf.prototype.toJSON = function toJSON2(toJSONOptions) { + var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false; + return util2.toObject([ + "options", + this.options, + "oneof", + this.oneof, + "comment", + keepComments ? this.comment : void 0 + ]); + }; + function addFieldsToParent(oneof) { + if (oneof.parent) { + for (var i = 0; i < oneof.fieldsArray.length; ++i) + if (!oneof.fieldsArray[i].parent) + oneof.parent.add(oneof.fieldsArray[i]); + } + } + OneOf.prototype.add = function add(field) { + if (!(field instanceof Field)) + throw TypeError("field must be a Field"); + if (field.parent && field.parent !== this.parent) + field.parent.remove(field); + this.oneof.push(field.name); + this.fieldsArray.push(field); + field.partOf = this; + addFieldsToParent(this); + return this; + }; + OneOf.prototype.remove = function remove(field) { + if (!(field instanceof Field)) + throw TypeError("field must be a Field"); + var index = this.fieldsArray.indexOf(field); + if (index < 0) + throw Error(field + " is not a member of " + this); + this.fieldsArray.splice(index, 1); + index = this.oneof.indexOf(field.name); + if (index > -1) + this.oneof.splice(index, 1); + field.partOf = null; + return this; + }; + OneOf.prototype.onAdd = function onAdd(parent) { + ReflectionObject.prototype.onAdd.call(this, parent); + var self2 = this; + for (var i = 0; i < this.oneof.length; ++i) { + var field = parent.get(this.oneof[i]); + if (field && !field.partOf) { + field.partOf = self2; + self2.fieldsArray.push(field); + } + } + addFieldsToParent(this); + }; + OneOf.prototype.onRemove = function onRemove(parent) { + for (var i = 0, field; i < this.fieldsArray.length; ++i) + if ((field = this.fieldsArray[i]).parent) + field.parent.remove(field); + ReflectionObject.prototype.onRemove.call(this, parent); + }; + OneOf.d = function decorateOneOf() { + var fieldNames = new Array(arguments.length), index = 0; + while (index < arguments.length) + fieldNames[index] = arguments[index++]; + return function oneOfDecorator(prototype3, oneofName) { + util2.decorateType(prototype3.constructor).add(new OneOf(oneofName, fieldNames)); + Object.defineProperty(prototype3, oneofName, { + get: util2.oneOfGetter(fieldNames), + set: util2.oneOfSetter(fieldNames) + }); + }; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/namespace.js +var require_namespace = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/namespace.js"(exports2, module2) { + "use strict"; + module2.exports = Namespace; + var ReflectionObject = require_object2(); + ((Namespace.prototype = Object.create(ReflectionObject.prototype)).constructor = Namespace).className = "Namespace"; + var Field = require_field(); + var util2 = require_util10(); + var OneOf = require_oneof(); + var Type; + var Service; + var Enum; + Namespace.fromJSON = function fromJSON(name, json) { + return new Namespace(name, json.options).addJSON(json.nested); + }; + function arrayToJSON(array, toJSONOptions) { + if (!(array && array.length)) + return void 0; + var obj2 = {}; + for (var i = 0; i < array.length; ++i) + obj2[array[i].name] = array[i].toJSON(toJSONOptions); + return obj2; + } + Namespace.arrayToJSON = arrayToJSON; + Namespace.isReservedId = function isReservedId(reserved, id) { + if (reserved) { + for (var i = 0; i < reserved.length; ++i) + if (typeof reserved[i] !== "string" && reserved[i][0] <= id && reserved[i][1] > id) + return true; + } + return false; + }; + Namespace.isReservedName = function isReservedName(reserved, name) { + if (reserved) { + for (var i = 0; i < reserved.length; ++i) + if (reserved[i] === name) + return true; + } + return false; + }; + function Namespace(name, options2) { + ReflectionObject.call(this, name, options2); + this.nested = void 0; + this._nestedArray = null; + } + function clearCache(namespace) { + namespace._nestedArray = null; + return namespace; + } + Object.defineProperty(Namespace.prototype, "nestedArray", { + get: function() { + return this._nestedArray || (this._nestedArray = util2.toArray(this.nested)); + } + }); + Namespace.prototype.toJSON = function toJSON2(toJSONOptions) { + return util2.toObject([ + "options", + this.options, + "nested", + arrayToJSON(this.nestedArray, toJSONOptions) + ]); + }; + Namespace.prototype.addJSON = function addJSON(nestedJson) { + var ns = this; + if (nestedJson) { + for (var names = Object.keys(nestedJson), i = 0, nested; i < names.length; ++i) { + nested = nestedJson[names[i]]; + ns.add( + // most to least likely + (nested.fields !== void 0 ? Type.fromJSON : nested.values !== void 0 ? Enum.fromJSON : nested.methods !== void 0 ? Service.fromJSON : nested.id !== void 0 ? Field.fromJSON : Namespace.fromJSON)(names[i], nested) + ); + } + } + return this; + }; + Namespace.prototype.get = function get(name) { + return this.nested && this.nested[name] || null; + }; + Namespace.prototype.getEnum = function getEnum(name) { + if (this.nested && this.nested[name] instanceof Enum) + return this.nested[name].values; + throw Error("no such enum: " + name); + }; + Namespace.prototype.add = function add(object) { + if (!(object instanceof Field && object.extend !== void 0 || object instanceof Type || object instanceof OneOf || object instanceof Enum || object instanceof Service || object instanceof Namespace)) + throw TypeError("object must be a valid nested object"); + if (!this.nested) + this.nested = {}; + else { + var prev = this.get(object.name); + if (prev) { + if (prev instanceof Namespace && object instanceof Namespace && !(prev instanceof Type || prev instanceof Service)) { + var nested = prev.nestedArray; + for (var i = 0; i < nested.length; ++i) + object.add(nested[i]); + this.remove(prev); + if (!this.nested) + this.nested = {}; + object.setOptions(prev.options, true); + } else + throw Error("duplicate name '" + object.name + "' in " + this); + } + } + this.nested[object.name] = object; + object.onAdd(this); + return clearCache(this); + }; + Namespace.prototype.remove = function remove(object) { + if (!(object instanceof ReflectionObject)) + throw TypeError("object must be a ReflectionObject"); + if (object.parent !== this) + throw Error(object + " is not a member of " + this); + delete this.nested[object.name]; + if (!Object.keys(this.nested).length) + this.nested = void 0; + object.onRemove(this); + return clearCache(this); + }; + Namespace.prototype.define = function define2(path30, json) { + if (util2.isString(path30)) + path30 = path30.split("."); + else if (!Array.isArray(path30)) + throw TypeError("illegal path"); + if (path30 && path30.length && path30[0] === "") + throw Error("path must be relative"); + var ptr = this; + while (path30.length > 0) { + var part = path30.shift(); + if (ptr.nested && ptr.nested[part]) { + ptr = ptr.nested[part]; + if (!(ptr instanceof Namespace)) + throw Error("path conflicts with non-namespace objects"); + } else + ptr.add(ptr = new Namespace(part)); + } + if (json) + ptr.addJSON(json); + return ptr; + }; + Namespace.prototype.resolveAll = function resolveAll() { + var nested = this.nestedArray, i = 0; + while (i < nested.length) + if (nested[i] instanceof Namespace) + nested[i++].resolveAll(); + else + nested[i++].resolve(); + return this.resolve(); + }; + Namespace.prototype.lookup = function lookup(path30, filterTypes, parentAlreadyChecked) { + if (typeof filterTypes === "boolean") { + parentAlreadyChecked = filterTypes; + filterTypes = void 0; + } else if (filterTypes && !Array.isArray(filterTypes)) + filterTypes = [filterTypes]; + if (util2.isString(path30) && path30.length) { + if (path30 === ".") + return this.root; + path30 = path30.split("."); + } else if (!path30.length) + return this; + if (path30[0] === "") + return this.root.lookup(path30.slice(1), filterTypes); + var found = this.get(path30[0]); + if (found) { + if (path30.length === 1) { + if (!filterTypes || filterTypes.indexOf(found.constructor) > -1) + return found; + } else if (found instanceof Namespace && (found = found.lookup(path30.slice(1), filterTypes, true))) + return found; + } else + for (var i = 0; i < this.nestedArray.length; ++i) + if (this._nestedArray[i] instanceof Namespace && (found = this._nestedArray[i].lookup(path30, filterTypes, true))) + return found; + if (this.parent === null || parentAlreadyChecked) + return null; + return this.parent.lookup(path30, filterTypes); + }; + Namespace.prototype.lookupType = function lookupType(path30) { + var found = this.lookup(path30, [Type]); + if (!found) + throw Error("no such type: " + path30); + return found; + }; + Namespace.prototype.lookupEnum = function lookupEnum(path30) { + var found = this.lookup(path30, [Enum]); + if (!found) + throw Error("no such Enum '" + path30 + "' in " + this); + return found; + }; + Namespace.prototype.lookupTypeOrEnum = function lookupTypeOrEnum(path30) { + var found = this.lookup(path30, [Type, Enum]); + if (!found) + throw Error("no such Type or Enum '" + path30 + "' in " + this); + return found; + }; + Namespace.prototype.lookupService = function lookupService(path30) { + var found = this.lookup(path30, [Service]); + if (!found) + throw Error("no such Service '" + path30 + "' in " + this); + return found; + }; + Namespace._configure = function(Type_, Service_, Enum_) { + Type = Type_; + Service = Service_; + Enum = Enum_; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/mapfield.js +var require_mapfield = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/mapfield.js"(exports2, module2) { + "use strict"; + module2.exports = MapField; + var Field = require_field(); + ((MapField.prototype = Object.create(Field.prototype)).constructor = MapField).className = "MapField"; + var types2 = require_types20(); + var util2 = require_util10(); + function MapField(name, id, keyType, type2, options2, comment) { + Field.call(this, name, id, type2, void 0, void 0, options2, comment); + if (!util2.isString(keyType)) + throw TypeError("keyType must be a string"); + this.keyType = keyType; + this.resolvedKeyType = null; + this.map = true; + } + MapField.fromJSON = function fromJSON(name, json) { + return new MapField(name, json.id, json.keyType, json.type, json.options, json.comment); + }; + MapField.prototype.toJSON = function toJSON2(toJSONOptions) { + var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false; + return util2.toObject([ + "keyType", + this.keyType, + "type", + this.type, + "id", + this.id, + "extend", + this.extend, + "options", + this.options, + "comment", + keepComments ? this.comment : void 0 + ]); + }; + MapField.prototype.resolve = function resolve8() { + if (this.resolved) + return this; + if (types2.mapKey[this.keyType] === void 0) + throw Error("invalid key type: " + this.keyType); + return Field.prototype.resolve.call(this); + }; + MapField.d = function decorateMapField(fieldId, fieldKeyType, fieldValueType) { + if (typeof fieldValueType === "function") + fieldValueType = util2.decorateType(fieldValueType).name; + else if (fieldValueType && typeof fieldValueType === "object") + fieldValueType = util2.decorateEnum(fieldValueType).name; + return function mapFieldDecorator(prototype3, fieldName) { + util2.decorateType(prototype3.constructor).add(new MapField(fieldName, fieldId, fieldKeyType, fieldValueType)); + }; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/method.js +var require_method2 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/method.js"(exports2, module2) { + "use strict"; + module2.exports = Method; + var ReflectionObject = require_object2(); + ((Method.prototype = Object.create(ReflectionObject.prototype)).constructor = Method).className = "Method"; + var util2 = require_util10(); + function Method(name, type2, requestType, responseType, requestStream, responseStream, options2, comment, parsedOptions) { + if (util2.isObject(requestStream)) { + options2 = requestStream; + requestStream = responseStream = void 0; + } else if (util2.isObject(responseStream)) { + options2 = responseStream; + responseStream = void 0; + } + if (!(type2 === void 0 || util2.isString(type2))) + throw TypeError("type must be a string"); + if (!util2.isString(requestType)) + throw TypeError("requestType must be a string"); + if (!util2.isString(responseType)) + throw TypeError("responseType must be a string"); + ReflectionObject.call(this, name, options2); + this.type = type2 || "rpc"; + this.requestType = requestType; + this.requestStream = requestStream ? true : void 0; + this.responseType = responseType; + this.responseStream = responseStream ? true : void 0; + this.resolvedRequestType = null; + this.resolvedResponseType = null; + this.comment = comment; + this.parsedOptions = parsedOptions; + } + Method.fromJSON = function fromJSON(name, json) { + return new Method(name, json.type, json.requestType, json.responseType, json.requestStream, json.responseStream, json.options, json.comment, json.parsedOptions); + }; + Method.prototype.toJSON = function toJSON2(toJSONOptions) { + var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false; + return util2.toObject([ + "type", + this.type !== "rpc" && /* istanbul ignore next */ + this.type || void 0, + "requestType", + this.requestType, + "requestStream", + this.requestStream, + "responseType", + this.responseType, + "responseStream", + this.responseStream, + "options", + this.options, + "comment", + keepComments ? this.comment : void 0, + "parsedOptions", + this.parsedOptions + ]); + }; + Method.prototype.resolve = function resolve8() { + if (this.resolved) + return this; + this.resolvedRequestType = this.parent.lookupType(this.requestType); + this.resolvedResponseType = this.parent.lookupType(this.responseType); + return ReflectionObject.prototype.resolve.call(this); + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/service.js +var require_service2 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/service.js"(exports2, module2) { + "use strict"; + module2.exports = Service; + var Namespace = require_namespace(); + ((Service.prototype = Object.create(Namespace.prototype)).constructor = Service).className = "Service"; + var Method = require_method2(); + var util2 = require_util10(); + var rpc = require_rpc(); + function Service(name, options2) { + Namespace.call(this, name, options2); + this.methods = {}; + this._methodsArray = null; + } + Service.fromJSON = function fromJSON(name, json) { + var service = new Service(name, json.options); + if (json.methods) + for (var names = Object.keys(json.methods), i = 0; i < names.length; ++i) + service.add(Method.fromJSON(names[i], json.methods[names[i]])); + if (json.nested) + service.addJSON(json.nested); + service.comment = json.comment; + return service; + }; + Service.prototype.toJSON = function toJSON2(toJSONOptions) { + var inherited = Namespace.prototype.toJSON.call(this, toJSONOptions); + var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false; + return util2.toObject([ + "options", + inherited && inherited.options || void 0, + "methods", + Namespace.arrayToJSON(this.methodsArray, toJSONOptions) || /* istanbul ignore next */ + {}, + "nested", + inherited && inherited.nested || void 0, + "comment", + keepComments ? this.comment : void 0 + ]); + }; + Object.defineProperty(Service.prototype, "methodsArray", { + get: function() { + return this._methodsArray || (this._methodsArray = util2.toArray(this.methods)); + } + }); + function clearCache(service) { + service._methodsArray = null; + return service; + } + Service.prototype.get = function get(name) { + return this.methods[name] || Namespace.prototype.get.call(this, name); + }; + Service.prototype.resolveAll = function resolveAll() { + var methods = this.methodsArray; + for (var i = 0; i < methods.length; ++i) + methods[i].resolve(); + return Namespace.prototype.resolve.call(this); + }; + Service.prototype.add = function add(object) { + if (this.get(object.name)) + throw Error("duplicate name '" + object.name + "' in " + this); + if (object instanceof Method) { + this.methods[object.name] = object; + object.parent = this; + return clearCache(this); + } + return Namespace.prototype.add.call(this, object); + }; + Service.prototype.remove = function remove(object) { + if (object instanceof Method) { + if (this.methods[object.name] !== object) + throw Error(object + " is not a member of " + this); + delete this.methods[object.name]; + object.parent = null; + return clearCache(this); + } + return Namespace.prototype.remove.call(this, object); + }; + Service.prototype.create = function create2(rpcImpl, requestDelimited, responseDelimited) { + var rpcService = new rpc.Service(rpcImpl, requestDelimited, responseDelimited); + for (var i = 0, method; i < /* initializes */ + this.methodsArray.length; ++i) { + var methodName = util2.lcFirst((method = this._methodsArray[i]).resolve().name).replace(/[^$\w_]/g, ""); + rpcService[methodName] = util2.codegen(["r", "c"], util2.isReserved(methodName) ? methodName + "_" : methodName)("return this.rpcCall(m,q,s,r,c)")({ + m: method, + q: method.resolvedRequestType.ctor, + s: method.resolvedResponseType.ctor + }); + } + return rpcService; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/message.js +var require_message = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/message.js"(exports2, module2) { + "use strict"; + module2.exports = Message; + var util2 = require_minimal(); + function Message(properties2) { + if (properties2) + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + this[keys[i]] = properties2[keys[i]]; + } + Message.create = function create2(properties2) { + return this.$type.create(properties2); + }; + Message.encode = function encode3(message, writer) { + return this.$type.encode(message, writer); + }; + Message.encodeDelimited = function encodeDelimited(message, writer) { + return this.$type.encodeDelimited(message, writer); + }; + Message.decode = function decode(reader) { + return this.$type.decode(reader); + }; + Message.decodeDelimited = function decodeDelimited(reader) { + return this.$type.decodeDelimited(reader); + }; + Message.verify = function verify(message) { + return this.$type.verify(message); + }; + Message.fromObject = function fromObject(object) { + return this.$type.fromObject(object); + }; + Message.toObject = function toObject(message, options2) { + return this.$type.toObject(message, options2); + }; + Message.prototype.toJSON = function toJSON2() { + return this.$type.toObject(this, util2.toJSONOptions); + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/decoder.js +var require_decoder = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/decoder.js"(exports2, module2) { + "use strict"; + module2.exports = decoder; + var Enum = require_enum(); + var types2 = require_types20(); + var util2 = require_util10(); + function missing(field) { + return "missing required '" + field.name + "'"; + } + function decoder(mtype) { + var gen = util2.codegen(["r", "l"], mtype.name + "$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor" + (mtype.fieldsArray.filter(function(field2) { + return field2.map; + }).length ? ",k,value" : ""))("while(r.pos>>3){"); + var i = 0; + for (; i < /* initializes */ + mtype.fieldsArray.length; ++i) { + var field = mtype._fieldsArray[i].resolve(), type2 = field.resolvedType instanceof Enum ? "int32" : field.type, ref = "m" + util2.safeProp(field.name); + gen("case %i: {", field.id); + if (field.map) { + gen("if(%s===util.emptyObject)", ref)("%s={}", ref)("var c2 = r.uint32()+r.pos"); + if (types2.defaults[field.keyType] !== void 0) + gen("k=%j", types2.defaults[field.keyType]); + else + gen("k=null"); + if (types2.defaults[type2] !== void 0) + gen("value=%j", types2.defaults[type2]); + else + gen("value=null"); + gen("while(r.pos>>3){")("case 1: k=r.%s(); break", field.keyType)("case 2:"); + if (types2.basic[type2] === void 0) + gen("value=types[%i].decode(r,r.uint32())", i); + else + gen("value=r.%s()", type2); + gen("break")("default:")("r.skipType(tag2&7)")("break")("}")("}"); + if (types2.long[field.keyType] !== void 0) + gen('%s[typeof k==="object"?util.longToHash(k):k]=value', ref); + else + gen("%s[k]=value", ref); + } else if (field.repeated) { + gen("if(!(%s&&%s.length))", ref, ref)("%s=[]", ref); + if (types2.packed[type2] !== void 0) + gen("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos>>0", prop, prop); + break; + case "int32": + case "sint32": + case "sfixed32": + gen("m%s=d%s|0", prop, prop); + break; + case "uint64": + isUnsigned = true; + case "int64": + case "sint64": + case "fixed64": + case "sfixed64": + gen("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j", prop, prop, isUnsigned)('else if(typeof d%s==="string")', prop)("m%s=parseInt(d%s,10)", prop, prop)('else if(typeof d%s==="number")', prop)("m%s=d%s", prop, prop)('else if(typeof d%s==="object")', prop)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)", prop, prop, prop, isUnsigned ? "true" : ""); + break; + case "bytes": + gen('if(typeof d%s==="string")', prop)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)", prop, prop, prop)("else if(d%s.length >= 0)", prop)("m%s=d%s", prop, prop); + break; + case "string": + gen("m%s=String(d%s)", prop, prop); + break; + case "bool": + gen("m%s=Boolean(d%s)", prop, prop); + break; + } + } + return gen; + } + converter.fromObject = function fromObject(mtype) { + var fields = mtype.fieldsArray; + var gen = util2.codegen(["d"], mtype.name + "$fromObject")("if(d instanceof this.ctor)")("return d"); + if (!fields.length) + return gen("return new this.ctor"); + gen("var m=new this.ctor"); + for (var i = 0; i < fields.length; ++i) { + var field = fields[i].resolve(), prop = util2.safeProp(field.name); + if (field.map) { + gen("if(d%s){", prop)('if(typeof d%s!=="object")', prop)("throw TypeError(%j)", field.fullName + ": object expected")("m%s={}", prop)("for(var ks=Object.keys(d%s),i=0;i>>0,m%s.high>>>0).toNumber(%s):m%s", prop, prop, prop, prop, isUnsigned ? "true" : "", prop); + break; + case "bytes": + gen("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s", prop, prop, prop, prop, prop); + break; + default: + gen("d%s=m%s", prop, prop); + break; + } + } + return gen; + } + converter.toObject = function toObject(mtype) { + var fields = mtype.fieldsArray.slice().sort(util2.compareFieldsById); + if (!fields.length) + return util2.codegen()("return {}"); + var gen = util2.codegen(["m", "o"], mtype.name + "$toObject")("if(!o)")("o={}")("var d={}"); + var repeatedFields = [], mapFields = [], normalFields = [], i = 0; + for (; i < fields.length; ++i) + if (!fields[i].partOf) + (fields[i].resolve().repeated ? repeatedFields : fields[i].map ? mapFields : normalFields).push(fields[i]); + if (repeatedFields.length) { + gen("if(o.arrays||o.defaults){"); + for (i = 0; i < repeatedFields.length; ++i) + gen("d%s=[]", util2.safeProp(repeatedFields[i].name)); + gen("}"); + } + if (mapFields.length) { + gen("if(o.objects||o.defaults){"); + for (i = 0; i < mapFields.length; ++i) + gen("d%s={}", util2.safeProp(mapFields[i].name)); + gen("}"); + } + if (normalFields.length) { + gen("if(o.defaults){"); + for (i = 0; i < normalFields.length; ++i) { + var field = normalFields[i], prop = util2.safeProp(field.name); + if (field.resolvedType instanceof Enum) + gen("d%s=o.enums===String?%j:%j", prop, field.resolvedType.valuesById[field.typeDefault], field.typeDefault); + else if (field.long) + gen("if(util.Long){")("var n=new util.Long(%i,%i,%j)", field.typeDefault.low, field.typeDefault.high, field.typeDefault.unsigned)("d%s=o.longs===String?n.toString():o.longs===Number?n.toNumber():n", prop)("}else")("d%s=o.longs===String?%j:%i", prop, field.typeDefault.toString(), field.typeDefault.toNumber()); + else if (field.bytes) { + var arrayDefault = "[" + Array.prototype.slice.call(field.typeDefault).join(",") + "]"; + gen("if(o.bytes===String)d%s=%j", prop, String.fromCharCode.apply(String, field.typeDefault))("else{")("d%s=%s", prop, arrayDefault)("if(o.bytes!==Array)d%s=util.newBuffer(d%s)", prop, prop)("}"); + } else + gen("d%s=%j", prop, field.typeDefault); + } + gen("}"); + } + var hasKs2 = false; + for (i = 0; i < fields.length; ++i) { + var field = fields[i], index = mtype._fieldsArray.indexOf(field), prop = util2.safeProp(field.name); + if (field.map) { + if (!hasKs2) { + hasKs2 = true; + gen("var ks2"); + } + gen("if(m%s&&(ks2=Object.keys(m%s)).length){", prop, prop)("d%s={}", prop)("for(var j=0;j} + * @readonly + */ + fieldsById: { + get: function() { + if (this._fieldsById) + return this._fieldsById; + this._fieldsById = {}; + for (var names = Object.keys(this.fields), i = 0; i < names.length; ++i) { + var field = this.fields[names[i]], id = field.id; + if (this._fieldsById[id]) + throw Error("duplicate id " + id + " in " + this); + this._fieldsById[id] = field; + } + return this._fieldsById; + } + }, + /** + * Fields of this message as an array for iteration. + * @name Type#fieldsArray + * @type {Field[]} + * @readonly + */ + fieldsArray: { + get: function() { + return this._fieldsArray || (this._fieldsArray = util2.toArray(this.fields)); + } + }, + /** + * Oneofs of this message as an array for iteration. + * @name Type#oneofsArray + * @type {OneOf[]} + * @readonly + */ + oneofsArray: { + get: function() { + return this._oneofsArray || (this._oneofsArray = util2.toArray(this.oneofs)); + } + }, + /** + * The registered constructor, if any registered, otherwise a generic constructor. + * Assigning a function replaces the internal constructor. If the function does not extend {@link Message} yet, its prototype will be setup accordingly and static methods will be populated. If it already extends {@link Message}, it will just replace the internal constructor. + * @name Type#ctor + * @type {Constructor<{}>} + */ + ctor: { + get: function() { + return this._ctor || (this.ctor = Type.generateConstructor(this)()); + }, + set: function(ctor) { + var prototype3 = ctor.prototype; + if (!(prototype3 instanceof Message)) { + (ctor.prototype = new Message()).constructor = ctor; + util2.merge(ctor.prototype, prototype3); + } + ctor.$type = ctor.prototype.$type = this; + util2.merge(ctor, Message, true); + this._ctor = ctor; + var i = 0; + for (; i < /* initializes */ + this.fieldsArray.length; ++i) + this._fieldsArray[i].resolve(); + var ctorProperties = {}; + for (i = 0; i < /* initializes */ + this.oneofsArray.length; ++i) + ctorProperties[this._oneofsArray[i].resolve().name] = { + get: util2.oneOfGetter(this._oneofsArray[i].oneof), + set: util2.oneOfSetter(this._oneofsArray[i].oneof) + }; + if (i) + Object.defineProperties(ctor.prototype, ctorProperties); + } + } + }); + Type.generateConstructor = function generateConstructor(mtype) { + var gen = util2.codegen(["p"], mtype.name); + for (var i = 0, field; i < mtype.fieldsArray.length; ++i) + if ((field = mtype._fieldsArray[i]).map) + gen("this%s={}", util2.safeProp(field.name)); + else if (field.repeated) + gen("this%s=[]", util2.safeProp(field.name)); + return gen("if(p)for(var ks=Object.keys(p),i=0;i -1) { + var altname = filename2.substring(idx); + if (altname in common) + return altname; + } + return null; + } + function process3(filename2, source2) { + try { + if (util2.isString(source2) && source2.charAt(0) === "{") + source2 = JSON.parse(source2); + if (!util2.isString(source2)) + self2.setOptions(source2.options).addJSON(source2.nested); + else { + parse7.filename = filename2; + var parsed = parse7(source2, self2, options2), resolved2, i2 = 0; + if (parsed.imports) { + for (; i2 < parsed.imports.length; ++i2) + if (resolved2 = getBundledFileName(parsed.imports[i2]) || self2.resolvePath(filename2, parsed.imports[i2])) + fetch4(resolved2); + } + if (parsed.weakImports) { + for (i2 = 0; i2 < parsed.weakImports.length; ++i2) + if (resolved2 = getBundledFileName(parsed.weakImports[i2]) || self2.resolvePath(filename2, parsed.weakImports[i2])) + fetch4(resolved2, true); + } + } + } catch (err2) { + finish(err2); + } + if (!sync2 && !queued) + finish(null, self2); + } + function fetch4(filename2, weak) { + filename2 = getBundledFileName(filename2) || filename2; + if (self2.files.indexOf(filename2) > -1) + return; + self2.files.push(filename2); + if (filename2 in common) { + if (sync2) + process3(filename2, common[filename2]); + else { + ++queued; + setTimeout(function() { + --queued; + process3(filename2, common[filename2]); + }); + } + return; + } + if (sync2) { + var source2; + try { + source2 = util2.fs.readFileSync(filename2).toString("utf8"); + } catch (err2) { + if (!weak) + finish(err2); + return; + } + process3(filename2, source2); + } else { + ++queued; + self2.fetch(filename2, function(err2, source3) { + --queued; + if (!callback) + return; + if (err2) { + if (!weak) + finish(err2); + else if (!queued) + finish(null, self2); + return; + } + process3(filename2, source3); + }); + } + } + var queued = 0; + if (util2.isString(filename)) + filename = [filename]; + for (var i = 0, resolved; i < filename.length; ++i) + if (resolved = self2.resolvePath("", filename[i])) + fetch4(resolved); + if (sync2) + return self2; + if (!queued) + finish(null, self2); + return void 0; + }; + Root.prototype.loadSync = function loadSync(filename, options2) { + if (!util2.isNode) + throw Error("not supported"); + return this.load(filename, options2, SYNC); + }; + Root.prototype.resolveAll = function resolveAll() { + if (this.deferred.length) + throw Error("unresolvable extensions: " + this.deferred.map(function(field) { + return "'extend " + field.extend + "' in " + field.parent.fullName; + }).join(", ")); + return Namespace.prototype.resolveAll.call(this); + }; + var exposeRe = /^[A-Z]/; + function tryHandleExtension(root, field) { + var extendedType = field.parent.lookup(field.extend); + if (extendedType) { + var sisterField = new Field(field.fullName, field.id, field.type, field.rule, void 0, field.options); + if (extendedType.get(sisterField.name)) { + return true; + } + sisterField.declaringField = field; + field.extensionField = sisterField; + extendedType.add(sisterField); + return true; + } + return false; + } + Root.prototype._handleAdd = function _handleAdd(object) { + if (object instanceof Field) { + if ( + /* an extension field (implies not part of a oneof) */ + object.extend !== void 0 && /* not already handled */ + !object.extensionField + ) { + if (!tryHandleExtension(this, object)) + this.deferred.push(object); + } + } else if (object instanceof Enum) { + if (exposeRe.test(object.name)) + object.parent[object.name] = object.values; + } else if (!(object instanceof OneOf)) { + if (object instanceof Type) + for (var i = 0; i < this.deferred.length; ) + if (tryHandleExtension(this, this.deferred[i])) + this.deferred.splice(i, 1); + else + ++i; + for (var j = 0; j < /* initializes */ + object.nestedArray.length; ++j) + this._handleAdd(object._nestedArray[j]); + if (exposeRe.test(object.name)) + object.parent[object.name] = object; + } + }; + Root.prototype._handleRemove = function _handleRemove(object) { + if (object instanceof Field) { + if ( + /* an extension field */ + object.extend !== void 0 + ) { + if ( + /* already handled */ + object.extensionField + ) { + object.extensionField.parent.remove(object.extensionField); + object.extensionField = null; + } else { + var index = this.deferred.indexOf(object); + if (index > -1) + this.deferred.splice(index, 1); + } + } + } else if (object instanceof Enum) { + if (exposeRe.test(object.name)) + delete object.parent[object.name]; + } else if (object instanceof Namespace) { + for (var i = 0; i < /* initializes */ + object.nestedArray.length; ++i) + this._handleRemove(object._nestedArray[i]); + if (exposeRe.test(object.name)) + delete object.parent[object.name]; + } + }; + Root._configure = function(Type_, parse_, common_) { + Type = Type_; + parse7 = parse_; + common = common_; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/util.js +var require_util10 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/util.js"(exports2, module2) { + "use strict"; + var util2 = module2.exports = require_minimal(); + var roots = require_roots(); + var Type; + var Enum; + util2.codegen = require_codegen(); + util2.fetch = require_fetch3(); + util2.path = require_path2(); + util2.fs = util2.inquire("fs"); + util2.toArray = function toArray2(object) { + if (object) { + var keys = Object.keys(object), array = new Array(keys.length), index = 0; + while (index < keys.length) + array[index] = object[keys[index++]]; + return array; + } + return []; + }; + util2.toObject = function toObject(array) { + var object = {}, index = 0; + while (index < array.length) { + var key = array[index++], val = array[index++]; + if (val !== void 0) + object[key] = val; + } + return object; + }; + var safePropBackslashRe = /\\/g; + var safePropQuoteRe = /"/g; + util2.isReserved = function isReserved(name) { + return /^(?:do|if|in|for|let|new|try|var|case|else|enum|eval|false|null|this|true|void|with|break|catch|class|const|super|throw|while|yield|delete|export|import|public|return|static|switch|typeof|default|extends|finally|package|private|continue|debugger|function|arguments|interface|protected|implements|instanceof)$/.test(name); + }; + util2.safeProp = function safeProp(prop) { + if (!/^[$\w_]+$/.test(prop) || util2.isReserved(prop)) + return '["' + prop.replace(safePropBackslashRe, "\\\\").replace(safePropQuoteRe, '\\"') + '"]'; + return "." + prop; + }; + util2.ucFirst = function ucFirst(str) { + return str.charAt(0).toUpperCase() + str.substring(1); + }; + var camelCaseRe = /_([a-z])/g; + util2.camelCase = function camelCase2(str) { + return str.substring(0, 1) + str.substring(1).replace(camelCaseRe, function($0, $1) { + return $1.toUpperCase(); + }); + }; + util2.compareFieldsById = function compareFieldsById(a, b) { + return a.id - b.id; + }; + util2.decorateType = function decorateType(ctor, typeName) { + if (ctor.$type) { + if (typeName && ctor.$type.name !== typeName) { + util2.decorateRoot.remove(ctor.$type); + ctor.$type.name = typeName; + util2.decorateRoot.add(ctor.$type); + } + return ctor.$type; + } + if (!Type) + Type = require_type(); + var type2 = new Type(typeName || ctor.name); + util2.decorateRoot.add(type2); + type2.ctor = ctor; + Object.defineProperty(ctor, "$type", { value: type2, enumerable: false }); + Object.defineProperty(ctor.prototype, "$type", { value: type2, enumerable: false }); + return type2; + }; + var decorateEnumIndex = 0; + util2.decorateEnum = function decorateEnum(object) { + if (object.$type) + return object.$type; + if (!Enum) + Enum = require_enum(); + var enm = new Enum("Enum" + decorateEnumIndex++, object); + util2.decorateRoot.add(enm); + Object.defineProperty(object, "$type", { value: enm, enumerable: false }); + return enm; + }; + util2.setProperty = function setProperty(dst, path30, value) { + function setProp(dst2, path31, value2) { + var part = path31.shift(); + if (part === "__proto__" || part === "prototype") { + return dst2; + } + if (path31.length > 0) { + dst2[part] = setProp(dst2[part] || {}, path31, value2); + } else { + var prevValue = dst2[part]; + if (prevValue) + value2 = [].concat(prevValue).concat(value2); + dst2[part] = value2; + } + return dst2; + } + if (typeof dst !== "object") + throw TypeError("dst must be an object"); + if (!path30) + throw TypeError("path must be specified"); + path30 = path30.split("."); + return setProp(dst, path30, value); + }; + Object.defineProperty(util2, "decorateRoot", { + get: function() { + return roots["decorated"] || (roots["decorated"] = new (require_root2())()); + } + }); + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/object.js +var require_object2 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/object.js"(exports2, module2) { + "use strict"; + module2.exports = ReflectionObject; + ReflectionObject.className = "ReflectionObject"; + var util2 = require_util10(); + var Root; + function ReflectionObject(name, options2) { + if (!util2.isString(name)) + throw TypeError("name must be a string"); + if (options2 && !util2.isObject(options2)) + throw TypeError("options must be an object"); + this.options = options2; + this.parsedOptions = null; + this.name = name; + this.parent = null; + this.resolved = false; + this.comment = null; + this.filename = null; + } + Object.defineProperties(ReflectionObject.prototype, { + /** + * Reference to the root namespace. + * @name ReflectionObject#root + * @type {Root} + * @readonly + */ + root: { + get: function() { + var ptr = this; + while (ptr.parent !== null) + ptr = ptr.parent; + return ptr; + } + }, + /** + * Full name including leading dot. + * @name ReflectionObject#fullName + * @type {string} + * @readonly + */ + fullName: { + get: function() { + var path30 = [this.name], ptr = this.parent; + while (ptr) { + path30.unshift(ptr.name); + ptr = ptr.parent; + } + return path30.join("."); + } + } + }); + ReflectionObject.prototype.toJSON = /* istanbul ignore next */ + function toJSON2() { + throw Error(); + }; + ReflectionObject.prototype.onAdd = function onAdd(parent) { + if (this.parent && this.parent !== parent) + this.parent.remove(this); + this.parent = parent; + this.resolved = false; + var root = parent.root; + if (root instanceof Root) + root._handleAdd(this); + }; + ReflectionObject.prototype.onRemove = function onRemove(parent) { + var root = parent.root; + if (root instanceof Root) + root._handleRemove(this); + this.parent = null; + this.resolved = false; + }; + ReflectionObject.prototype.resolve = function resolve8() { + if (this.resolved) + return this; + if (this.root instanceof Root) + this.resolved = true; + return this; + }; + ReflectionObject.prototype.getOption = function getOption(name) { + if (this.options) + return this.options[name]; + return void 0; + }; + ReflectionObject.prototype.setOption = function setOption(name, value, ifNotSet) { + if (!ifNotSet || !this.options || this.options[name] === void 0) + (this.options || (this.options = {}))[name] = value; + return this; + }; + ReflectionObject.prototype.setParsedOption = function setParsedOption(name, value, propName) { + if (!this.parsedOptions) { + this.parsedOptions = []; + } + var parsedOptions = this.parsedOptions; + if (propName) { + var opt = parsedOptions.find(function(opt2) { + return Object.prototype.hasOwnProperty.call(opt2, name); + }); + if (opt) { + var newValue = opt[name]; + util2.setProperty(newValue, propName, value); + } else { + opt = {}; + opt[name] = util2.setProperty({}, propName, value); + parsedOptions.push(opt); + } + } else { + var newOpt = {}; + newOpt[name] = value; + parsedOptions.push(newOpt); + } + return this; + }; + ReflectionObject.prototype.setOptions = function setOptions2(options2, ifNotSet) { + if (options2) + for (var keys = Object.keys(options2), i = 0; i < keys.length; ++i) + this.setOption(keys[i], options2[keys[i]], ifNotSet); + return this; + }; + ReflectionObject.prototype.toString = function toString3() { + var className = this.constructor.className, fullName = this.fullName; + if (fullName.length) + return className + " " + fullName; + return className; + }; + ReflectionObject._configure = function(Root_) { + Root = Root_; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/enum.js +var require_enum = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/enum.js"(exports2, module2) { + "use strict"; + module2.exports = Enum; + var ReflectionObject = require_object2(); + ((Enum.prototype = Object.create(ReflectionObject.prototype)).constructor = Enum).className = "Enum"; + var Namespace = require_namespace(); + var util2 = require_util10(); + function Enum(name, values, options2, comment, comments2, valuesOptions) { + ReflectionObject.call(this, name, options2); + if (values && typeof values !== "object") + throw TypeError("values must be an object"); + this.valuesById = {}; + this.values = Object.create(this.valuesById); + this.comment = comment; + this.comments = comments2 || {}; + this.valuesOptions = valuesOptions; + this.reserved = void 0; + if (values) { + for (var keys = Object.keys(values), i = 0; i < keys.length; ++i) + if (typeof values[keys[i]] === "number") + this.valuesById[this.values[keys[i]] = values[keys[i]]] = keys[i]; + } + } + Enum.fromJSON = function fromJSON(name, json) { + var enm = new Enum(name, json.values, json.options, json.comment, json.comments); + enm.reserved = json.reserved; + return enm; + }; + Enum.prototype.toJSON = function toJSON2(toJSONOptions) { + var keepComments = toJSONOptions ? Boolean(toJSONOptions.keepComments) : false; + return util2.toObject([ + "options", + this.options, + "valuesOptions", + this.valuesOptions, + "values", + this.values, + "reserved", + this.reserved && this.reserved.length ? this.reserved : void 0, + "comment", + keepComments ? this.comment : void 0, + "comments", + keepComments ? this.comments : void 0 + ]); + }; + Enum.prototype.add = function add(name, id, comment, options2) { + if (!util2.isString(name)) + throw TypeError("name must be a string"); + if (!util2.isInteger(id)) + throw TypeError("id must be an integer"); + if (this.values[name] !== void 0) + throw Error("duplicate name '" + name + "' in " + this); + if (this.isReservedId(id)) + throw Error("id " + id + " is reserved in " + this); + if (this.isReservedName(name)) + throw Error("name '" + name + "' is reserved in " + this); + if (this.valuesById[id] !== void 0) { + if (!(this.options && this.options.allow_alias)) + throw Error("duplicate id " + id + " in " + this); + this.values[name] = id; + } else + this.valuesById[this.values[name] = id] = name; + if (options2) { + if (this.valuesOptions === void 0) + this.valuesOptions = {}; + this.valuesOptions[name] = options2 || null; + } + this.comments[name] = comment || null; + return this; + }; + Enum.prototype.remove = function remove(name) { + if (!util2.isString(name)) + throw TypeError("name must be a string"); + var val = this.values[name]; + if (val == null) + throw Error("name '" + name + "' does not exist in " + this); + delete this.valuesById[val]; + delete this.values[name]; + delete this.comments[name]; + if (this.valuesOptions) + delete this.valuesOptions[name]; + return this; + }; + Enum.prototype.isReservedId = function isReservedId(id) { + return Namespace.isReservedId(this.reserved, id); + }; + Enum.prototype.isReservedName = function isReservedName(name) { + return Namespace.isReservedName(this.reserved, name); + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/encoder.js +var require_encoder = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/encoder.js"(exports2, module2) { + "use strict"; + module2.exports = encoder; + var Enum = require_enum(); + var types2 = require_types20(); + var util2 = require_util10(); + function genTypePartial(gen, field, fieldIndex, ref) { + return field.resolvedType.group ? gen("types[%i].encode(%s,w.uint32(%i)).uint32(%i)", fieldIndex, ref, (field.id << 3 | 3) >>> 0, (field.id << 3 | 4) >>> 0) : gen("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()", fieldIndex, ref, (field.id << 3 | 2) >>> 0); + } + function encoder(mtype) { + var gen = util2.codegen(["m", "w"], mtype.name + "$encode")("if(!w)")("w=Writer.create()"); + var i, ref; + var fields = ( + /* initializes */ + mtype.fieldsArray.slice().sort(util2.compareFieldsById) + ); + for (var i = 0; i < fields.length; ++i) { + var field = fields[i].resolve(), index = mtype._fieldsArray.indexOf(field), type2 = field.resolvedType instanceof Enum ? "int32" : field.type, wireType = types2.basic[type2]; + ref = "m" + util2.safeProp(field.name); + if (field.map) { + gen("if(%s!=null&&Object.hasOwnProperty.call(m,%j)){", ref, field.name)("for(var ks=Object.keys(%s),i=0;i>> 0, 8 | types2.mapKey[field.keyType], field.keyType); + if (wireType === void 0) + gen("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()", index, ref); + else + gen(".uint32(%i).%s(%s[ks[i]]).ldelim()", 16 | wireType, type2, ref); + gen("}")("}"); + } else if (field.repeated) { + gen("if(%s!=null&&%s.length){", ref, ref); + if (field.packed && types2.packed[type2] !== void 0) { + gen("w.uint32(%i).fork()", (field.id << 3 | 2) >>> 0)("for(var i=0;i<%s.length;++i)", ref)("w.%s(%s[i])", type2, ref)("w.ldelim()"); + } else { + gen("for(var i=0;i<%s.length;++i)", ref); + if (wireType === void 0) + genTypePartial(gen, field, index, ref + "[i]"); + else + gen("w.uint32(%i).%s(%s[i])", (field.id << 3 | wireType) >>> 0, type2, ref); + } + gen("}"); + } else { + if (field.optional) + gen("if(%s!=null&&Object.hasOwnProperty.call(m,%j))", ref, field.name); + if (wireType === void 0) + genTypePartial(gen, field, index, ref); + else + gen("w.uint32(%i).%s(%s)", (field.id << 3 | wireType) >>> 0, type2, ref); + } + } + return gen("return w"); + } + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/index-light.js +var require_index_light = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/index-light.js"(exports2, module2) { + "use strict"; + var protobuf = module2.exports = require_index_minimal(); + protobuf.build = "light"; + function load(filename, root, callback) { + if (typeof root === "function") { + callback = root; + root = new protobuf.Root(); + } else if (!root) + root = new protobuf.Root(); + return root.load(filename, callback); + } + protobuf.load = load; + function loadSync(filename, root) { + if (!root) + root = new protobuf.Root(); + return root.loadSync(filename); + } + protobuf.loadSync = loadSync; + protobuf.encoder = require_encoder(); + protobuf.decoder = require_decoder(); + protobuf.verifier = require_verifier(); + protobuf.converter = require_converter(); + protobuf.ReflectionObject = require_object2(); + protobuf.Namespace = require_namespace(); + protobuf.Root = require_root2(); + protobuf.Enum = require_enum(); + protobuf.Type = require_type(); + protobuf.Field = require_field(); + protobuf.OneOf = require_oneof(); + protobuf.MapField = require_mapfield(); + protobuf.Service = require_service2(); + protobuf.Method = require_method2(); + protobuf.Message = require_message(); + protobuf.wrappers = require_wrappers(); + protobuf.types = require_types20(); + protobuf.util = require_util10(); + protobuf.ReflectionObject._configure(protobuf.Root); + protobuf.Namespace._configure(protobuf.Type, protobuf.Service, protobuf.Enum); + protobuf.Root._configure(protobuf.Type); + protobuf.Field._configure(protobuf.Type); + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/tokenize.js +var require_tokenize = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/tokenize.js"(exports2, module2) { + "use strict"; + module2.exports = tokenize; + var delimRe = /[\s{}=;:[\],'"()<>]/g; + var stringDoubleRe = /(?:"([^"\\]*(?:\\.[^"\\]*)*)")/g; + var stringSingleRe = /(?:'([^'\\]*(?:\\.[^'\\]*)*)')/g; + var setCommentRe = /^ *[*/]+ */; + var setCommentAltRe = /^\s*\*?\/*/; + var setCommentSplitRe = /\n/g; + var whitespaceRe = /\s/; + var unescapeRe = /\\(.?)/g; + var unescapeMap = { + "0": "\0", + "r": "\r", + "n": "\n", + "t": " " + }; + function unescape4(str) { + return str.replace(unescapeRe, function($0, $1) { + switch ($1) { + case "\\": + case "": + return $1; + default: + return unescapeMap[$1] || ""; + } + }); + } + tokenize.unescape = unescape4; + function tokenize(source2, alternateCommentMode) { + source2 = source2.toString(); + var offset = 0, length = source2.length, line = 1, lastCommentLine = 0, comments2 = {}; + var stack = []; + var stringDelim = null; + function illegal(subject) { + return Error("illegal " + subject + " (line " + line + ")"); + } + function readString() { + var re = stringDelim === "'" ? stringSingleRe : stringDoubleRe; + re.lastIndex = offset - 1; + var match2 = re.exec(source2); + if (!match2) + throw illegal("string"); + offset = re.lastIndex; + push(stringDelim); + stringDelim = null; + return unescape4(match2[1]); + } + function charAt(pos) { + return source2.charAt(pos); + } + function setComment(start4, end, isLeading) { + var comment = { + type: source2.charAt(start4++), + lineEmpty: false, + leading: isLeading + }; + var lookback; + if (alternateCommentMode) { + lookback = 2; + } else { + lookback = 3; + } + var commentOffset = start4 - lookback, c; + do { + if (--commentOffset < 0 || (c = source2.charAt(commentOffset)) === "\n") { + comment.lineEmpty = true; + break; + } + } while (c === " " || c === " "); + var lines2 = source2.substring(start4, end).split(setCommentSplitRe); + for (var i = 0; i < lines2.length; ++i) + lines2[i] = lines2[i].replace(alternateCommentMode ? setCommentAltRe : setCommentRe, "").trim(); + comment.text = lines2.join("\n").trim(); + comments2[line] = comment; + lastCommentLine = line; + } + function isDoubleSlashCommentLine(startOffset) { + var endOffset = findEndOfLine(startOffset); + var lineText = source2.substring(startOffset, endOffset); + var isComment = /^\s*\/{1,2}/.test(lineText); + return isComment; + } + function findEndOfLine(cursor) { + var endOffset = cursor; + while (endOffset < length && charAt(endOffset) !== "\n") { + endOffset++; + } + return endOffset; + } + function next() { + if (stack.length > 0) + return stack.shift(); + if (stringDelim) + return readString(); + var repeat, prev, curr, start4, isDoc, isLeadingComment = offset === 0; + do { + if (offset === length) + return null; + repeat = false; + while (whitespaceRe.test(curr = charAt(offset))) { + if (curr === "\n") { + isLeadingComment = true; + ++line; + } + if (++offset === length) + return null; + } + if (charAt(offset) === "/") { + if (++offset === length) { + throw illegal("comment"); + } + if (charAt(offset) === "/") { + if (!alternateCommentMode) { + isDoc = charAt(start4 = offset + 1) === "/"; + while (charAt(++offset) !== "\n") { + if (offset === length) { + return null; + } + } + ++offset; + if (isDoc) { + setComment(start4, offset - 1, isLeadingComment); + isLeadingComment = true; + } + ++line; + repeat = true; + } else { + start4 = offset; + isDoc = false; + if (isDoubleSlashCommentLine(offset)) { + isDoc = true; + do { + offset = findEndOfLine(offset); + if (offset === length) { + break; + } + offset++; + if (!isLeadingComment) { + break; + } + } while (isDoubleSlashCommentLine(offset)); + } else { + offset = Math.min(length, findEndOfLine(offset) + 1); + } + if (isDoc) { + setComment(start4, offset, isLeadingComment); + isLeadingComment = true; + } + line++; + repeat = true; + } + } else if ((curr = charAt(offset)) === "*") { + start4 = offset + 1; + isDoc = alternateCommentMode || charAt(start4) === "*"; + do { + if (curr === "\n") { + ++line; + } + if (++offset === length) { + throw illegal("comment"); + } + prev = curr; + curr = charAt(offset); + } while (prev !== "*" || curr !== "/"); + ++offset; + if (isDoc) { + setComment(start4, offset - 2, isLeadingComment); + isLeadingComment = true; + } + repeat = true; + } else { + return "/"; + } + } + } while (repeat); + var end = offset; + delimRe.lastIndex = 0; + var delim = delimRe.test(charAt(end++)); + if (!delim) + while (end < length && !delimRe.test(charAt(end))) + ++end; + var token = source2.substring(offset, offset = end); + if (token === '"' || token === "'") + stringDelim = token; + return token; + } + function push(token) { + stack.push(token); + } + function peek() { + if (!stack.length) { + var token = next(); + if (token === null) + return null; + push(token); + } + return stack[0]; + } + function skip(expected, optional) { + var actual = peek(), equals = actual === expected; + if (equals) { + next(); + return true; + } + if (!optional) + throw illegal("token '" + actual + "', '" + expected + "' expected"); + return false; + } + function cmnt(trailingLine) { + var ret2 = null; + var comment; + if (trailingLine === void 0) { + comment = comments2[line - 1]; + delete comments2[line - 1]; + if (comment && (alternateCommentMode || comment.type === "*" || comment.lineEmpty)) { + ret2 = comment.leading ? comment.text : null; + } + } else { + if (lastCommentLine < trailingLine) { + peek(); + } + comment = comments2[trailingLine]; + delete comments2[trailingLine]; + if (comment && !comment.lineEmpty && (alternateCommentMode || comment.type === "/")) { + ret2 = comment.leading ? null : comment.text; + } + } + return ret2; + } + return Object.defineProperty({ + next, + peek, + push, + skip, + cmnt + }, "line", { + get: function() { + return line; + } + }); + } + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/parse.js +var require_parse6 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/parse.js"(exports2, module2) { + "use strict"; + module2.exports = parse7; + parse7.filename = null; + parse7.defaults = { keepCase: false }; + var tokenize = require_tokenize(); + var Root = require_root2(); + var Type = require_type(); + var Field = require_field(); + var MapField = require_mapfield(); + var OneOf = require_oneof(); + var Enum = require_enum(); + var Service = require_service2(); + var Method = require_method2(); + var types2 = require_types20(); + var util2 = require_util10(); + var base10Re = /^[1-9][0-9]*$/; + var base10NegRe = /^-?[1-9][0-9]*$/; + var base16Re = /^0[x][0-9a-fA-F]+$/; + var base16NegRe = /^-?0[x][0-9a-fA-F]+$/; + var base8Re = /^0[0-7]+$/; + var base8NegRe = /^-?0[0-7]+$/; + var numberRe = /^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/; + var nameRe = /^[a-zA-Z_][a-zA-Z_0-9]*$/; + var typeRefRe = /^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*$/; + var fqTypeRefRe = /^(?:\.[a-zA-Z_][a-zA-Z_0-9]*)+$/; + function parse7(source2, root, options2) { + if (!(root instanceof Root)) { + options2 = root; + root = new Root(); + } + if (!options2) + options2 = parse7.defaults; + var preferTrailingComment = options2.preferTrailingComment || false; + var tn = tokenize(source2, options2.alternateCommentMode || false), next = tn.next, push = tn.push, peek = tn.peek, skip = tn.skip, cmnt = tn.cmnt; + var head = true, pkg, imports, weakImports, syntax, isProto3 = false; + var ptr = root; + var applyCase = options2.keepCase ? function(name) { + return name; + } : util2.camelCase; + function illegal(token2, name, insideTryCatch) { + var filename = parse7.filename; + if (!insideTryCatch) + parse7.filename = null; + return Error("illegal " + (name || "token") + " '" + token2 + "' (" + (filename ? filename + ", " : "") + "line " + tn.line + ")"); + } + function readString() { + var values = [], token2; + do { + if ((token2 = next()) !== '"' && token2 !== "'") + throw illegal(token2); + values.push(next()); + skip(token2); + token2 = peek(); + } while (token2 === '"' || token2 === "'"); + return values.join(""); + } + function readValue(acceptTypeRef) { + var token2 = next(); + switch (token2) { + case "'": + case '"': + push(token2); + return readString(); + case "true": + case "TRUE": + return true; + case "false": + case "FALSE": + return false; + } + try { + return parseNumber( + token2, + /* insideTryCatch */ + true + ); + } catch (e) { + if (acceptTypeRef && typeRefRe.test(token2)) + return token2; + throw illegal(token2, "value"); + } + } + function readRanges(target, acceptStrings) { + var token2, start4; + do { + if (acceptStrings && ((token2 = peek()) === '"' || token2 === "'")) + target.push(readString()); + else + target.push([start4 = parseId(next()), skip("to", true) ? parseId(next()) : start4]); + } while (skip(",", true)); + skip(";"); + } + function parseNumber(token2, insideTryCatch) { + var sign = 1; + if (token2.charAt(0) === "-") { + sign = -1; + token2 = token2.substring(1); + } + switch (token2) { + case "inf": + case "INF": + case "Inf": + return sign * Infinity; + case "nan": + case "NAN": + case "Nan": + case "NaN": + return NaN; + case "0": + return 0; + } + if (base10Re.test(token2)) + return sign * parseInt(token2, 10); + if (base16Re.test(token2)) + return sign * parseInt(token2, 16); + if (base8Re.test(token2)) + return sign * parseInt(token2, 8); + if (numberRe.test(token2)) + return sign * parseFloat(token2); + throw illegal(token2, "number", insideTryCatch); + } + function parseId(token2, acceptNegative) { + switch (token2) { + case "max": + case "MAX": + case "Max": + return 536870911; + case "0": + return 0; + } + if (!acceptNegative && token2.charAt(0) === "-") + throw illegal(token2, "id"); + if (base10NegRe.test(token2)) + return parseInt(token2, 10); + if (base16NegRe.test(token2)) + return parseInt(token2, 16); + if (base8NegRe.test(token2)) + return parseInt(token2, 8); + throw illegal(token2, "id"); + } + function parsePackage() { + if (pkg !== void 0) + throw illegal("package"); + pkg = next(); + if (!typeRefRe.test(pkg)) + throw illegal(pkg, "name"); + ptr = ptr.define(pkg); + skip(";"); + } + function parseImport() { + var token2 = peek(); + var whichImports; + switch (token2) { + case "weak": + whichImports = weakImports || (weakImports = []); + next(); + break; + case "public": + next(); + default: + whichImports = imports || (imports = []); + break; + } + token2 = readString(); + skip(";"); + whichImports.push(token2); + } + function parseSyntax() { + skip("="); + syntax = readString(); + isProto3 = syntax === "proto3"; + if (!isProto3 && syntax !== "proto2") + throw illegal(syntax, "syntax"); + skip(";"); + } + function parseCommon(parent, token2) { + switch (token2) { + case "option": + parseOption(parent, token2); + skip(";"); + return true; + case "message": + parseType(parent, token2); + return true; + case "enum": + parseEnum(parent, token2); + return true; + case "service": + parseService(parent, token2); + return true; + case "extend": + parseExtension(parent, token2); + return true; + } + return false; + } + function ifBlock(obj2, fnIf, fnElse) { + var trailingLine = tn.line; + if (obj2) { + if (typeof obj2.comment !== "string") { + obj2.comment = cmnt(); + } + obj2.filename = parse7.filename; + } + if (skip("{", true)) { + var token2; + while ((token2 = next()) !== "}") + fnIf(token2); + skip(";", true); + } else { + if (fnElse) + fnElse(); + skip(";"); + if (obj2 && (typeof obj2.comment !== "string" || preferTrailingComment)) + obj2.comment = cmnt(trailingLine) || obj2.comment; + } + } + function parseType(parent, token2) { + if (!nameRe.test(token2 = next())) + throw illegal(token2, "type name"); + var type2 = new Type(token2); + ifBlock(type2, function parseType_block(token3) { + if (parseCommon(type2, token3)) + return; + switch (token3) { + case "map": + parseMapField(type2, token3); + break; + case "required": + case "repeated": + parseField(type2, token3); + break; + case "optional": + if (isProto3) { + parseField(type2, "proto3_optional"); + } else { + parseField(type2, "optional"); + } + break; + case "oneof": + parseOneOf(type2, token3); + break; + case "extensions": + readRanges(type2.extensions || (type2.extensions = [])); + break; + case "reserved": + readRanges(type2.reserved || (type2.reserved = []), true); + break; + default: + if (!isProto3 || !typeRefRe.test(token3)) + throw illegal(token3); + push(token3); + parseField(type2, "optional"); + break; + } + }); + parent.add(type2); + } + function parseField(parent, rule, extend2) { + var type2 = next(); + if (type2 === "group") { + parseGroup(parent, rule); + return; + } + while (type2.endsWith(".") || peek().startsWith(".")) { + type2 += next(); + } + if (!typeRefRe.test(type2)) + throw illegal(type2, "type"); + var name = next(); + if (!nameRe.test(name)) + throw illegal(name, "name"); + name = applyCase(name); + skip("="); + var field = new Field(name, parseId(next()), type2, rule, extend2); + ifBlock(field, function parseField_block(token2) { + if (token2 === "option") { + parseOption(field, token2); + skip(";"); + } else + throw illegal(token2); + }, function parseField_line() { + parseInlineOptions(field); + }); + if (rule === "proto3_optional") { + var oneof = new OneOf("_" + name); + field.setOption("proto3_optional", true); + oneof.add(field); + parent.add(oneof); + } else { + parent.add(field); + } + if (!isProto3 && field.repeated && (types2.packed[type2] !== void 0 || types2.basic[type2] === void 0)) + field.setOption( + "packed", + false, + /* ifNotSet */ + true + ); + } + function parseGroup(parent, rule) { + var name = next(); + if (!nameRe.test(name)) + throw illegal(name, "name"); + var fieldName = util2.lcFirst(name); + if (name === fieldName) + name = util2.ucFirst(name); + skip("="); + var id = parseId(next()); + var type2 = new Type(name); + type2.group = true; + var field = new Field(fieldName, id, name, rule); + field.filename = parse7.filename; + ifBlock(type2, function parseGroup_block(token2) { + switch (token2) { + case "option": + parseOption(type2, token2); + skip(";"); + break; + case "required": + case "repeated": + parseField(type2, token2); + break; + case "optional": + if (isProto3) { + parseField(type2, "proto3_optional"); + } else { + parseField(type2, "optional"); + } + break; + case "message": + parseType(type2, token2); + break; + case "enum": + parseEnum(type2, token2); + break; + default: + throw illegal(token2); + } + }); + parent.add(type2).add(field); + } + function parseMapField(parent) { + skip("<"); + var keyType = next(); + if (types2.mapKey[keyType] === void 0) + throw illegal(keyType, "type"); + skip(","); + var valueType = next(); + if (!typeRefRe.test(valueType)) + throw illegal(valueType, "type"); + skip(">"); + var name = next(); + if (!nameRe.test(name)) + throw illegal(name, "name"); + skip("="); + var field = new MapField(applyCase(name), parseId(next()), keyType, valueType); + ifBlock(field, function parseMapField_block(token2) { + if (token2 === "option") { + parseOption(field, token2); + skip(";"); + } else + throw illegal(token2); + }, function parseMapField_line() { + parseInlineOptions(field); + }); + parent.add(field); + } + function parseOneOf(parent, token2) { + if (!nameRe.test(token2 = next())) + throw illegal(token2, "name"); + var oneof = new OneOf(applyCase(token2)); + ifBlock(oneof, function parseOneOf_block(token3) { + if (token3 === "option") { + parseOption(oneof, token3); + skip(";"); + } else { + push(token3); + parseField(oneof, "optional"); + } + }); + parent.add(oneof); + } + function parseEnum(parent, token2) { + if (!nameRe.test(token2 = next())) + throw illegal(token2, "name"); + var enm = new Enum(token2); + ifBlock(enm, function parseEnum_block(token3) { + switch (token3) { + case "option": + parseOption(enm, token3); + skip(";"); + break; + case "reserved": + readRanges(enm.reserved || (enm.reserved = []), true); + break; + default: + parseEnumValue(enm, token3); + } + }); + parent.add(enm); + } + function parseEnumValue(parent, token2) { + if (!nameRe.test(token2)) + throw illegal(token2, "name"); + skip("="); + var value = parseId(next(), true), dummy = { + options: void 0 + }; + dummy.setOption = function(name, value2) { + if (this.options === void 0) + this.options = {}; + this.options[name] = value2; + }; + ifBlock(dummy, function parseEnumValue_block(token3) { + if (token3 === "option") { + parseOption(dummy, token3); + skip(";"); + } else + throw illegal(token3); + }, function parseEnumValue_line() { + parseInlineOptions(dummy); + }); + parent.add(token2, value, dummy.comment, dummy.options); + } + function parseOption(parent, token2) { + var isCustom = skip("(", true); + if (!typeRefRe.test(token2 = next())) + throw illegal(token2, "name"); + var name = token2; + var option = name; + var propName; + if (isCustom) { + skip(")"); + name = "(" + name + ")"; + option = name; + token2 = peek(); + if (fqTypeRefRe.test(token2)) { + propName = token2.slice(1); + name += token2; + next(); + } + } + skip("="); + var optionValue = parseOptionValue(parent, name); + setParsedOption(parent, option, optionValue, propName); + } + function parseOptionValue(parent, name) { + if (skip("{", true)) { + var objectResult = {}; + while (!skip("}", true)) { + if (!nameRe.test(token = next())) { + throw illegal(token, "name"); + } + var value; + var propName = token; + skip(":", true); + if (peek() === "{") + value = parseOptionValue(parent, name + "." + token); + else if (peek() === "[") { + value = []; + var lastValue; + if (skip("[", true)) { + do { + lastValue = readValue(true); + value.push(lastValue); + } while (skip(",", true)); + skip("]"); + if (typeof lastValue !== "undefined") { + setOption(parent, name + "." + token, lastValue); + } + } + } else { + value = readValue(true); + setOption(parent, name + "." + token, value); + } + var prevValue = objectResult[propName]; + if (prevValue) + value = [].concat(prevValue).concat(value); + objectResult[propName] = value; + skip(",", true); + skip(";", true); + } + return objectResult; + } + var simpleValue = readValue(true); + setOption(parent, name, simpleValue); + return simpleValue; + } + function setOption(parent, name, value) { + if (parent.setOption) + parent.setOption(name, value); + } + function setParsedOption(parent, name, value, propName) { + if (parent.setParsedOption) + parent.setParsedOption(name, value, propName); + } + function parseInlineOptions(parent) { + if (skip("[", true)) { + do { + parseOption(parent, "option"); + } while (skip(",", true)); + skip("]"); + } + return parent; + } + function parseService(parent, token2) { + if (!nameRe.test(token2 = next())) + throw illegal(token2, "service name"); + var service = new Service(token2); + ifBlock(service, function parseService_block(token3) { + if (parseCommon(service, token3)) + return; + if (token3 === "rpc") + parseMethod(service, token3); + else + throw illegal(token3); + }); + parent.add(service); + } + function parseMethod(parent, token2) { + var commentText = cmnt(); + var type2 = token2; + if (!nameRe.test(token2 = next())) + throw illegal(token2, "name"); + var name = token2, requestType, requestStream, responseType, responseStream; + skip("("); + if (skip("stream", true)) + requestStream = true; + if (!typeRefRe.test(token2 = next())) + throw illegal(token2); + requestType = token2; + skip(")"); + skip("returns"); + skip("("); + if (skip("stream", true)) + responseStream = true; + if (!typeRefRe.test(token2 = next())) + throw illegal(token2); + responseType = token2; + skip(")"); + var method = new Method(name, type2, requestType, responseType, requestStream, responseStream); + method.comment = commentText; + ifBlock(method, function parseMethod_block(token3) { + if (token3 === "option") { + parseOption(method, token3); + skip(";"); + } else + throw illegal(token3); + }); + parent.add(method); + } + function parseExtension(parent, token2) { + if (!typeRefRe.test(token2 = next())) + throw illegal(token2, "reference"); + var reference = token2; + ifBlock(null, function parseExtension_block(token3) { + switch (token3) { + case "required": + case "repeated": + parseField(parent, token3, reference); + break; + case "optional": + if (isProto3) { + parseField(parent, "proto3_optional", reference); + } else { + parseField(parent, "optional", reference); + } + break; + default: + if (!isProto3 || !typeRefRe.test(token3)) + throw illegal(token3); + push(token3); + parseField(parent, "optional", reference); + break; + } + }); + } + var token; + while ((token = next()) !== null) { + switch (token) { + case "package": + if (!head) + throw illegal(token); + parsePackage(); + break; + case "import": + if (!head) + throw illegal(token); + parseImport(); + break; + case "syntax": + if (!head) + throw illegal(token); + parseSyntax(); + break; + case "option": + parseOption(ptr, token); + skip(";"); + break; + default: + if (parseCommon(ptr, token)) { + head = false; + continue; + } + throw illegal(token); + } + } + parse7.filename = null; + return { + "package": pkg, + "imports": imports, + weakImports, + syntax, + root + }; + } + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/common.js +var require_common5 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/common.js"(exports2, module2) { + "use strict"; + module2.exports = common; + var commonRe = /\/|\./; + function common(name, json) { + if (!commonRe.test(name)) { + name = "google/protobuf/" + name + ".proto"; + json = { nested: { google: { nested: { protobuf: { nested: json } } } } }; + } + common[name] = json; + } + common("any", { + /** + * Properties of a google.protobuf.Any message. + * @interface IAny + * @type {Object} + * @property {string} [typeUrl] + * @property {Uint8Array} [bytes] + * @memberof common + */ + Any: { + fields: { + type_url: { + type: "string", + id: 1 + }, + value: { + type: "bytes", + id: 2 + } + } + } + }); + var timeType; + common("duration", { + /** + * Properties of a google.protobuf.Duration message. + * @interface IDuration + * @type {Object} + * @property {number|Long} [seconds] + * @property {number} [nanos] + * @memberof common + */ + Duration: timeType = { + fields: { + seconds: { + type: "int64", + id: 1 + }, + nanos: { + type: "int32", + id: 2 + } + } + } + }); + common("timestamp", { + /** + * Properties of a google.protobuf.Timestamp message. + * @interface ITimestamp + * @type {Object} + * @property {number|Long} [seconds] + * @property {number} [nanos] + * @memberof common + */ + Timestamp: timeType + }); + common("empty", { + /** + * Properties of a google.protobuf.Empty message. + * @interface IEmpty + * @memberof common + */ + Empty: { + fields: {} + } + }); + common("struct", { + /** + * Properties of a google.protobuf.Struct message. + * @interface IStruct + * @type {Object} + * @property {Object.} [fields] + * @memberof common + */ + Struct: { + fields: { + fields: { + keyType: "string", + type: "Value", + id: 1 + } + } + }, + /** + * Properties of a google.protobuf.Value message. + * @interface IValue + * @type {Object} + * @property {string} [kind] + * @property {0} [nullValue] + * @property {number} [numberValue] + * @property {string} [stringValue] + * @property {boolean} [boolValue] + * @property {IStruct} [structValue] + * @property {IListValue} [listValue] + * @memberof common + */ + Value: { + oneofs: { + kind: { + oneof: [ + "nullValue", + "numberValue", + "stringValue", + "boolValue", + "structValue", + "listValue" + ] + } + }, + fields: { + nullValue: { + type: "NullValue", + id: 1 + }, + numberValue: { + type: "double", + id: 2 + }, + stringValue: { + type: "string", + id: 3 + }, + boolValue: { + type: "bool", + id: 4 + }, + structValue: { + type: "Struct", + id: 5 + }, + listValue: { + type: "ListValue", + id: 6 + } + } + }, + NullValue: { + values: { + NULL_VALUE: 0 + } + }, + /** + * Properties of a google.protobuf.ListValue message. + * @interface IListValue + * @type {Object} + * @property {Array.} [values] + * @memberof common + */ + ListValue: { + fields: { + values: { + rule: "repeated", + type: "Value", + id: 1 + } + } + } + }); + common("wrappers", { + /** + * Properties of a google.protobuf.DoubleValue message. + * @interface IDoubleValue + * @type {Object} + * @property {number} [value] + * @memberof common + */ + DoubleValue: { + fields: { + value: { + type: "double", + id: 1 + } + } + }, + /** + * Properties of a google.protobuf.FloatValue message. + * @interface IFloatValue + * @type {Object} + * @property {number} [value] + * @memberof common + */ + FloatValue: { + fields: { + value: { + type: "float", + id: 1 + } + } + }, + /** + * Properties of a google.protobuf.Int64Value message. + * @interface IInt64Value + * @type {Object} + * @property {number|Long} [value] + * @memberof common + */ + Int64Value: { + fields: { + value: { + type: "int64", + id: 1 + } + } + }, + /** + * Properties of a google.protobuf.UInt64Value message. + * @interface IUInt64Value + * @type {Object} + * @property {number|Long} [value] + * @memberof common + */ + UInt64Value: { + fields: { + value: { + type: "uint64", + id: 1 + } + } + }, + /** + * Properties of a google.protobuf.Int32Value message. + * @interface IInt32Value + * @type {Object} + * @property {number} [value] + * @memberof common + */ + Int32Value: { + fields: { + value: { + type: "int32", + id: 1 + } + } + }, + /** + * Properties of a google.protobuf.UInt32Value message. + * @interface IUInt32Value + * @type {Object} + * @property {number} [value] + * @memberof common + */ + UInt32Value: { + fields: { + value: { + type: "uint32", + id: 1 + } + } + }, + /** + * Properties of a google.protobuf.BoolValue message. + * @interface IBoolValue + * @type {Object} + * @property {boolean} [value] + * @memberof common + */ + BoolValue: { + fields: { + value: { + type: "bool", + id: 1 + } + } + }, + /** + * Properties of a google.protobuf.StringValue message. + * @interface IStringValue + * @type {Object} + * @property {string} [value] + * @memberof common + */ + StringValue: { + fields: { + value: { + type: "string", + id: 1 + } + } + }, + /** + * Properties of a google.protobuf.BytesValue message. + * @interface IBytesValue + * @type {Object} + * @property {Uint8Array} [value] + * @memberof common + */ + BytesValue: { + fields: { + value: { + type: "bytes", + id: 1 + } + } + } + }); + common("field_mask", { + /** + * Properties of a google.protobuf.FieldMask message. + * @interface IDoubleValue + * @type {Object} + * @property {number} [value] + * @memberof common + */ + FieldMask: { + fields: { + paths: { + rule: "repeated", + type: "string", + id: 1 + } + } + } + }); + common.get = function get(file) { + return common[file] || null; + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/index.js +var require_src23 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/src/index.js"(exports2, module2) { + "use strict"; + var protobuf = module2.exports = require_index_light(); + protobuf.build = "full"; + protobuf.tokenize = require_tokenize(); + protobuf.parse = require_parse6(); + protobuf.common = require_common5(); + protobuf.Root._configure(protobuf.Type, protobuf.parse, protobuf.common); + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/index.js +var require_protobufjs = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/index.js"(exports2, module2) { + "use strict"; + module2.exports = require_src23(); + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/google/protobuf/descriptor.json +var require_descriptor = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/google/protobuf/descriptor.json"(exports2, module2) { + module2.exports = { + nested: { + google: { + nested: { + protobuf: { + nested: { + FileDescriptorSet: { + fields: { + file: { + rule: "repeated", + type: "FileDescriptorProto", + id: 1 + } + } + }, + FileDescriptorProto: { + fields: { + name: { + type: "string", + id: 1 + }, + package: { + type: "string", + id: 2 + }, + dependency: { + rule: "repeated", + type: "string", + id: 3 + }, + publicDependency: { + rule: "repeated", + type: "int32", + id: 10, + options: { + packed: false + } + }, + weakDependency: { + rule: "repeated", + type: "int32", + id: 11, + options: { + packed: false + } + }, + messageType: { + rule: "repeated", + type: "DescriptorProto", + id: 4 + }, + enumType: { + rule: "repeated", + type: "EnumDescriptorProto", + id: 5 + }, + service: { + rule: "repeated", + type: "ServiceDescriptorProto", + id: 6 + }, + extension: { + rule: "repeated", + type: "FieldDescriptorProto", + id: 7 + }, + options: { + type: "FileOptions", + id: 8 + }, + sourceCodeInfo: { + type: "SourceCodeInfo", + id: 9 + }, + syntax: { + type: "string", + id: 12 + } + } + }, + DescriptorProto: { + fields: { + name: { + type: "string", + id: 1 + }, + field: { + rule: "repeated", + type: "FieldDescriptorProto", + id: 2 + }, + extension: { + rule: "repeated", + type: "FieldDescriptorProto", + id: 6 + }, + nestedType: { + rule: "repeated", + type: "DescriptorProto", + id: 3 + }, + enumType: { + rule: "repeated", + type: "EnumDescriptorProto", + id: 4 + }, + extensionRange: { + rule: "repeated", + type: "ExtensionRange", + id: 5 + }, + oneofDecl: { + rule: "repeated", + type: "OneofDescriptorProto", + id: 8 + }, + options: { + type: "MessageOptions", + id: 7 + }, + reservedRange: { + rule: "repeated", + type: "ReservedRange", + id: 9 + }, + reservedName: { + rule: "repeated", + type: "string", + id: 10 + } + }, + nested: { + ExtensionRange: { + fields: { + start: { + type: "int32", + id: 1 + }, + end: { + type: "int32", + id: 2 + } + } + }, + ReservedRange: { + fields: { + start: { + type: "int32", + id: 1 + }, + end: { + type: "int32", + id: 2 + } + } + } + } + }, + FieldDescriptorProto: { + fields: { + name: { + type: "string", + id: 1 + }, + number: { + type: "int32", + id: 3 + }, + label: { + type: "Label", + id: 4 + }, + type: { + type: "Type", + id: 5 + }, + typeName: { + type: "string", + id: 6 + }, + extendee: { + type: "string", + id: 2 + }, + defaultValue: { + type: "string", + id: 7 + }, + oneofIndex: { + type: "int32", + id: 9 + }, + jsonName: { + type: "string", + id: 10 + }, + options: { + type: "FieldOptions", + id: 8 + } + }, + nested: { + Type: { + values: { + TYPE_DOUBLE: 1, + TYPE_FLOAT: 2, + TYPE_INT64: 3, + TYPE_UINT64: 4, + TYPE_INT32: 5, + TYPE_FIXED64: 6, + TYPE_FIXED32: 7, + TYPE_BOOL: 8, + TYPE_STRING: 9, + TYPE_GROUP: 10, + TYPE_MESSAGE: 11, + TYPE_BYTES: 12, + TYPE_UINT32: 13, + TYPE_ENUM: 14, + TYPE_SFIXED32: 15, + TYPE_SFIXED64: 16, + TYPE_SINT32: 17, + TYPE_SINT64: 18 + } + }, + Label: { + values: { + LABEL_OPTIONAL: 1, + LABEL_REQUIRED: 2, + LABEL_REPEATED: 3 + } + } + } + }, + OneofDescriptorProto: { + fields: { + name: { + type: "string", + id: 1 + }, + options: { + type: "OneofOptions", + id: 2 + } + } + }, + EnumDescriptorProto: { + fields: { + name: { + type: "string", + id: 1 + }, + value: { + rule: "repeated", + type: "EnumValueDescriptorProto", + id: 2 + }, + options: { + type: "EnumOptions", + id: 3 + } + } + }, + EnumValueDescriptorProto: { + fields: { + name: { + type: "string", + id: 1 + }, + number: { + type: "int32", + id: 2 + }, + options: { + type: "EnumValueOptions", + id: 3 + } + } + }, + ServiceDescriptorProto: { + fields: { + name: { + type: "string", + id: 1 + }, + method: { + rule: "repeated", + type: "MethodDescriptorProto", + id: 2 + }, + options: { + type: "ServiceOptions", + id: 3 + } + } + }, + MethodDescriptorProto: { + fields: { + name: { + type: "string", + id: 1 + }, + inputType: { + type: "string", + id: 2 + }, + outputType: { + type: "string", + id: 3 + }, + options: { + type: "MethodOptions", + id: 4 + }, + clientStreaming: { + type: "bool", + id: 5 + }, + serverStreaming: { + type: "bool", + id: 6 + } + } + }, + FileOptions: { + fields: { + javaPackage: { + type: "string", + id: 1 + }, + javaOuterClassname: { + type: "string", + id: 8 + }, + javaMultipleFiles: { + type: "bool", + id: 10 + }, + javaGenerateEqualsAndHash: { + type: "bool", + id: 20, + options: { + deprecated: true + } + }, + javaStringCheckUtf8: { + type: "bool", + id: 27 + }, + optimizeFor: { + type: "OptimizeMode", + id: 9, + options: { + default: "SPEED" + } + }, + goPackage: { + type: "string", + id: 11 + }, + ccGenericServices: { + type: "bool", + id: 16 + }, + javaGenericServices: { + type: "bool", + id: 17 + }, + pyGenericServices: { + type: "bool", + id: 18 + }, + deprecated: { + type: "bool", + id: 23 + }, + ccEnableArenas: { + type: "bool", + id: 31 + }, + objcClassPrefix: { + type: "string", + id: 36 + }, + csharpNamespace: { + type: "string", + id: 37 + }, + uninterpretedOption: { + rule: "repeated", + type: "UninterpretedOption", + id: 999 + } + }, + extensions: [ + [ + 1e3, + 536870911 + ] + ], + reserved: [ + [ + 38, + 38 + ] + ], + nested: { + OptimizeMode: { + values: { + SPEED: 1, + CODE_SIZE: 2, + LITE_RUNTIME: 3 + } + } + } + }, + MessageOptions: { + fields: { + messageSetWireFormat: { + type: "bool", + id: 1 + }, + noStandardDescriptorAccessor: { + type: "bool", + id: 2 + }, + deprecated: { + type: "bool", + id: 3 + }, + mapEntry: { + type: "bool", + id: 7 + }, + uninterpretedOption: { + rule: "repeated", + type: "UninterpretedOption", + id: 999 + } + }, + extensions: [ + [ + 1e3, + 536870911 + ] + ], + reserved: [ + [ + 8, + 8 + ] + ] + }, + FieldOptions: { + fields: { + ctype: { + type: "CType", + id: 1, + options: { + default: "STRING" + } + }, + packed: { + type: "bool", + id: 2 + }, + jstype: { + type: "JSType", + id: 6, + options: { + default: "JS_NORMAL" + } + }, + lazy: { + type: "bool", + id: 5 + }, + deprecated: { + type: "bool", + id: 3 + }, + weak: { + type: "bool", + id: 10 + }, + uninterpretedOption: { + rule: "repeated", + type: "UninterpretedOption", + id: 999 + } + }, + extensions: [ + [ + 1e3, + 536870911 + ] + ], + reserved: [ + [ + 4, + 4 + ] + ], + nested: { + CType: { + values: { + STRING: 0, + CORD: 1, + STRING_PIECE: 2 + } + }, + JSType: { + values: { + JS_NORMAL: 0, + JS_STRING: 1, + JS_NUMBER: 2 + } + } + } + }, + OneofOptions: { + fields: { + uninterpretedOption: { + rule: "repeated", + type: "UninterpretedOption", + id: 999 + } + }, + extensions: [ + [ + 1e3, + 536870911 + ] + ] + }, + EnumOptions: { + fields: { + allowAlias: { + type: "bool", + id: 2 + }, + deprecated: { + type: "bool", + id: 3 + }, + uninterpretedOption: { + rule: "repeated", + type: "UninterpretedOption", + id: 999 + } + }, + extensions: [ + [ + 1e3, + 536870911 + ] + ] + }, + EnumValueOptions: { + fields: { + deprecated: { + type: "bool", + id: 1 + }, + uninterpretedOption: { + rule: "repeated", + type: "UninterpretedOption", + id: 999 + } + }, + extensions: [ + [ + 1e3, + 536870911 + ] + ] + }, + ServiceOptions: { + fields: { + deprecated: { + type: "bool", + id: 33 + }, + uninterpretedOption: { + rule: "repeated", + type: "UninterpretedOption", + id: 999 + } + }, + extensions: [ + [ + 1e3, + 536870911 + ] + ] + }, + MethodOptions: { + fields: { + deprecated: { + type: "bool", + id: 33 + }, + uninterpretedOption: { + rule: "repeated", + type: "UninterpretedOption", + id: 999 + } + }, + extensions: [ + [ + 1e3, + 536870911 + ] + ] + }, + UninterpretedOption: { + fields: { + name: { + rule: "repeated", + type: "NamePart", + id: 2 + }, + identifierValue: { + type: "string", + id: 3 + }, + positiveIntValue: { + type: "uint64", + id: 4 + }, + negativeIntValue: { + type: "int64", + id: 5 + }, + doubleValue: { + type: "double", + id: 6 + }, + stringValue: { + type: "bytes", + id: 7 + }, + aggregateValue: { + type: "string", + id: 8 + } + }, + nested: { + NamePart: { + fields: { + namePart: { + rule: "required", + type: "string", + id: 1 + }, + isExtension: { + rule: "required", + type: "bool", + id: 2 + } + } + } + } + }, + SourceCodeInfo: { + fields: { + location: { + rule: "repeated", + type: "Location", + id: 1 + } + }, + nested: { + Location: { + fields: { + path: { + rule: "repeated", + type: "int32", + id: 1 + }, + span: { + rule: "repeated", + type: "int32", + id: 2 + }, + leadingComments: { + type: "string", + id: 3 + }, + trailingComments: { + type: "string", + id: 4 + }, + leadingDetachedComments: { + rule: "repeated", + type: "string", + id: 6 + } + } + } + } + }, + GeneratedCodeInfo: { + fields: { + annotation: { + rule: "repeated", + type: "Annotation", + id: 1 + } + }, + nested: { + Annotation: { + fields: { + path: { + rule: "repeated", + type: "int32", + id: 1 + }, + sourceFile: { + type: "string", + id: 2 + }, + begin: { + type: "int32", + id: 3 + }, + end: { + type: "int32", + id: 4 + } + } + } + } + } + } + } + } + } + } + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/ext/descriptor/index.js +var require_descriptor2 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/ext/descriptor/index.js"(exports2, module2) { + "use strict"; + var $protobuf = require_protobufjs(); + module2.exports = exports2 = $protobuf.descriptor = $protobuf.Root.fromJSON(require_descriptor()).lookup(".google.protobuf"); + var Namespace = $protobuf.Namespace; + var Root = $protobuf.Root; + var Enum = $protobuf.Enum; + var Type = $protobuf.Type; + var Field = $protobuf.Field; + var MapField = $protobuf.MapField; + var OneOf = $protobuf.OneOf; + var Service = $protobuf.Service; + var Method = $protobuf.Method; + Root.fromDescriptor = function fromDescriptor(descriptor) { + if (typeof descriptor.length === "number") + descriptor = exports2.FileDescriptorSet.decode(descriptor); + var root = new Root(); + if (descriptor.file) { + var fileDescriptor, filePackage; + for (var j = 0, i; j < descriptor.file.length; ++j) { + filePackage = root; + if ((fileDescriptor = descriptor.file[j])["package"] && fileDescriptor["package"].length) + filePackage = root.define(fileDescriptor["package"]); + if (fileDescriptor.name && fileDescriptor.name.length) + root.files.push(filePackage.filename = fileDescriptor.name); + if (fileDescriptor.messageType) + for (i = 0; i < fileDescriptor.messageType.length; ++i) + filePackage.add(Type.fromDescriptor(fileDescriptor.messageType[i], fileDescriptor.syntax)); + if (fileDescriptor.enumType) + for (i = 0; i < fileDescriptor.enumType.length; ++i) + filePackage.add(Enum.fromDescriptor(fileDescriptor.enumType[i])); + if (fileDescriptor.extension) + for (i = 0; i < fileDescriptor.extension.length; ++i) + filePackage.add(Field.fromDescriptor(fileDescriptor.extension[i])); + if (fileDescriptor.service) + for (i = 0; i < fileDescriptor.service.length; ++i) + filePackage.add(Service.fromDescriptor(fileDescriptor.service[i])); + var opts = fromDescriptorOptions(fileDescriptor.options, exports2.FileOptions); + if (opts) { + var ks = Object.keys(opts); + for (i = 0; i < ks.length; ++i) + filePackage.setOption(ks[i], opts[ks[i]]); + } + } + } + return root; + }; + Root.prototype.toDescriptor = function toDescriptor(syntax) { + var set = exports2.FileDescriptorSet.create(); + Root_toDescriptorRecursive(this, set.file, syntax); + return set; + }; + function Root_toDescriptorRecursive(ns, files, syntax) { + var file = exports2.FileDescriptorProto.create({ name: ns.filename || (ns.fullName.substring(1).replace(/\./g, "_") || "root") + ".proto" }); + if (syntax) + file.syntax = syntax; + if (!(ns instanceof Root)) + file["package"] = ns.fullName.substring(1); + for (var i = 0, nested; i < ns.nestedArray.length; ++i) + if ((nested = ns._nestedArray[i]) instanceof Type) + file.messageType.push(nested.toDescriptor(syntax)); + else if (nested instanceof Enum) + file.enumType.push(nested.toDescriptor()); + else if (nested instanceof Field) + file.extension.push(nested.toDescriptor(syntax)); + else if (nested instanceof Service) + file.service.push(nested.toDescriptor()); + else if (nested instanceof /* plain */ + Namespace) + Root_toDescriptorRecursive(nested, files, syntax); + file.options = toDescriptorOptions(ns.options, exports2.FileOptions); + if (file.messageType.length + file.enumType.length + file.extension.length + file.service.length) + files.push(file); + } + var unnamedMessageIndex = 0; + Type.fromDescriptor = function fromDescriptor(descriptor, syntax) { + if (typeof descriptor.length === "number") + descriptor = exports2.DescriptorProto.decode(descriptor); + var type2 = new Type(descriptor.name.length ? descriptor.name : "Type" + unnamedMessageIndex++, fromDescriptorOptions(descriptor.options, exports2.MessageOptions)), i; + if (descriptor.oneofDecl) + for (i = 0; i < descriptor.oneofDecl.length; ++i) + type2.add(OneOf.fromDescriptor(descriptor.oneofDecl[i])); + if (descriptor.field) + for (i = 0; i < descriptor.field.length; ++i) { + var field = Field.fromDescriptor(descriptor.field[i], syntax); + type2.add(field); + if (descriptor.field[i].hasOwnProperty("oneofIndex")) + type2.oneofsArray[descriptor.field[i].oneofIndex].add(field); + } + if (descriptor.extension) + for (i = 0; i < descriptor.extension.length; ++i) + type2.add(Field.fromDescriptor(descriptor.extension[i], syntax)); + if (descriptor.nestedType) + for (i = 0; i < descriptor.nestedType.length; ++i) { + type2.add(Type.fromDescriptor(descriptor.nestedType[i], syntax)); + if (descriptor.nestedType[i].options && descriptor.nestedType[i].options.mapEntry) + type2.setOption("map_entry", true); + } + if (descriptor.enumType) + for (i = 0; i < descriptor.enumType.length; ++i) + type2.add(Enum.fromDescriptor(descriptor.enumType[i])); + if (descriptor.extensionRange && descriptor.extensionRange.length) { + type2.extensions = []; + for (i = 0; i < descriptor.extensionRange.length; ++i) + type2.extensions.push([descriptor.extensionRange[i].start, descriptor.extensionRange[i].end]); + } + if (descriptor.reservedRange && descriptor.reservedRange.length || descriptor.reservedName && descriptor.reservedName.length) { + type2.reserved = []; + if (descriptor.reservedRange) + for (i = 0; i < descriptor.reservedRange.length; ++i) + type2.reserved.push([descriptor.reservedRange[i].start, descriptor.reservedRange[i].end]); + if (descriptor.reservedName) + for (i = 0; i < descriptor.reservedName.length; ++i) + type2.reserved.push(descriptor.reservedName[i]); + } + return type2; + }; + Type.prototype.toDescriptor = function toDescriptor(syntax) { + var descriptor = exports2.DescriptorProto.create({ name: this.name }), i; + for (i = 0; i < this.fieldsArray.length; ++i) { + var fieldDescriptor; + descriptor.field.push(fieldDescriptor = this._fieldsArray[i].toDescriptor(syntax)); + if (this._fieldsArray[i] instanceof MapField) { + var keyType = toDescriptorType(this._fieldsArray[i].keyType, this._fieldsArray[i].resolvedKeyType), valueType = toDescriptorType(this._fieldsArray[i].type, this._fieldsArray[i].resolvedType), valueTypeName = valueType === /* type */ + 11 || valueType === /* enum */ + 14 ? this._fieldsArray[i].resolvedType && shortname(this.parent, this._fieldsArray[i].resolvedType) || this._fieldsArray[i].type : void 0; + descriptor.nestedType.push(exports2.DescriptorProto.create({ + name: fieldDescriptor.typeName, + field: [ + exports2.FieldDescriptorProto.create({ name: "key", number: 1, label: 1, type: keyType }), + // can't reference a type or enum + exports2.FieldDescriptorProto.create({ name: "value", number: 2, label: 1, type: valueType, typeName: valueTypeName }) + ], + options: exports2.MessageOptions.create({ mapEntry: true }) + })); + } + } + for (i = 0; i < this.oneofsArray.length; ++i) + descriptor.oneofDecl.push(this._oneofsArray[i].toDescriptor()); + for (i = 0; i < this.nestedArray.length; ++i) { + if (this._nestedArray[i] instanceof Field) + descriptor.field.push(this._nestedArray[i].toDescriptor(syntax)); + else if (this._nestedArray[i] instanceof Type) + descriptor.nestedType.push(this._nestedArray[i].toDescriptor(syntax)); + else if (this._nestedArray[i] instanceof Enum) + descriptor.enumType.push(this._nestedArray[i].toDescriptor()); + } + if (this.extensions) + for (i = 0; i < this.extensions.length; ++i) + descriptor.extensionRange.push(exports2.DescriptorProto.ExtensionRange.create({ start: this.extensions[i][0], end: this.extensions[i][1] })); + if (this.reserved) + for (i = 0; i < this.reserved.length; ++i) + if (typeof this.reserved[i] === "string") + descriptor.reservedName.push(this.reserved[i]); + else + descriptor.reservedRange.push(exports2.DescriptorProto.ReservedRange.create({ start: this.reserved[i][0], end: this.reserved[i][1] })); + descriptor.options = toDescriptorOptions(this.options, exports2.MessageOptions); + return descriptor; + }; + var numberRe = /^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/; + Field.fromDescriptor = function fromDescriptor(descriptor, syntax) { + if (typeof descriptor.length === "number") + descriptor = exports2.DescriptorProto.decode(descriptor); + if (typeof descriptor.number !== "number") + throw Error("missing field id"); + var fieldType; + if (descriptor.typeName && descriptor.typeName.length) + fieldType = descriptor.typeName; + else + fieldType = fromDescriptorType(descriptor.type); + var fieldRule; + switch (descriptor.label) { + case 1: + fieldRule = void 0; + break; + case 2: + fieldRule = "required"; + break; + case 3: + fieldRule = "repeated"; + break; + default: + throw Error("illegal label: " + descriptor.label); + } + var extendee = descriptor.extendee; + if (descriptor.extendee !== void 0) { + extendee = extendee.length ? extendee : void 0; + } + var field = new Field( + descriptor.name.length ? descriptor.name : "field" + descriptor.number, + descriptor.number, + fieldType, + fieldRule, + extendee + ); + field.options = fromDescriptorOptions(descriptor.options, exports2.FieldOptions); + if (descriptor.defaultValue && descriptor.defaultValue.length) { + var defaultValue = descriptor.defaultValue; + switch (defaultValue) { + case "true": + case "TRUE": + defaultValue = true; + break; + case "false": + case "FALSE": + defaultValue = false; + break; + default: + var match2 = numberRe.exec(defaultValue); + if (match2) + defaultValue = parseInt(defaultValue); + break; + } + field.setOption("default", defaultValue); + } + if (packableDescriptorType(descriptor.type)) { + if (syntax === "proto3") { + if (descriptor.options && !descriptor.options.packed) + field.setOption("packed", false); + } else if (!(descriptor.options && descriptor.options.packed)) + field.setOption("packed", false); + } + return field; + }; + Field.prototype.toDescriptor = function toDescriptor(syntax) { + var descriptor = exports2.FieldDescriptorProto.create({ name: this.name, number: this.id }); + if (this.map) { + descriptor.type = 11; + descriptor.typeName = $protobuf.util.ucFirst(this.name); + descriptor.label = 3; + } else { + switch (descriptor.type = toDescriptorType(this.type, this.resolve().resolvedType)) { + case 10: + case 11: + case 14: + descriptor.typeName = this.resolvedType ? shortname(this.parent, this.resolvedType) : this.type; + break; + } + switch (this.rule) { + case "repeated": + descriptor.label = 3; + break; + case "required": + descriptor.label = 2; + break; + default: + descriptor.label = 1; + break; + } + } + descriptor.extendee = this.extensionField ? this.extensionField.parent.fullName : this.extend; + if (this.partOf) { + if ((descriptor.oneofIndex = this.parent.oneofsArray.indexOf(this.partOf)) < 0) + throw Error("missing oneof"); + } + if (this.options) { + descriptor.options = toDescriptorOptions(this.options, exports2.FieldOptions); + if (this.options["default"] != null) + descriptor.defaultValue = String(this.options["default"]); + } + if (syntax === "proto3") { + if (!this.packed) + (descriptor.options || (descriptor.options = exports2.FieldOptions.create())).packed = false; + } else if (this.packed) + (descriptor.options || (descriptor.options = exports2.FieldOptions.create())).packed = true; + return descriptor; + }; + var unnamedEnumIndex = 0; + Enum.fromDescriptor = function fromDescriptor(descriptor) { + if (typeof descriptor.length === "number") + descriptor = exports2.EnumDescriptorProto.decode(descriptor); + var values = {}; + if (descriptor.value) + for (var i = 0; i < descriptor.value.length; ++i) { + var name = descriptor.value[i].name, value = descriptor.value[i].number || 0; + values[name && name.length ? name : "NAME" + value] = value; + } + return new Enum( + descriptor.name && descriptor.name.length ? descriptor.name : "Enum" + unnamedEnumIndex++, + values, + fromDescriptorOptions(descriptor.options, exports2.EnumOptions) + ); + }; + Enum.prototype.toDescriptor = function toDescriptor() { + var values = []; + for (var i = 0, ks = Object.keys(this.values); i < ks.length; ++i) + values.push(exports2.EnumValueDescriptorProto.create({ name: ks[i], number: this.values[ks[i]] })); + return exports2.EnumDescriptorProto.create({ + name: this.name, + value: values, + options: toDescriptorOptions(this.options, exports2.EnumOptions) + }); + }; + var unnamedOneofIndex = 0; + OneOf.fromDescriptor = function fromDescriptor(descriptor) { + if (typeof descriptor.length === "number") + descriptor = exports2.OneofDescriptorProto.decode(descriptor); + return new OneOf( + // unnamedOneOfIndex is global, not per type, because we have no ref to a type here + descriptor.name && descriptor.name.length ? descriptor.name : "oneof" + unnamedOneofIndex++ + // fromDescriptorOptions(descriptor.options, exports.OneofOptions) - only uninterpreted_option + ); + }; + OneOf.prototype.toDescriptor = function toDescriptor() { + return exports2.OneofDescriptorProto.create({ + name: this.name + // options: toDescriptorOptions(this.options, exports.OneofOptions) - only uninterpreted_option + }); + }; + var unnamedServiceIndex = 0; + Service.fromDescriptor = function fromDescriptor(descriptor) { + if (typeof descriptor.length === "number") + descriptor = exports2.ServiceDescriptorProto.decode(descriptor); + var service = new Service(descriptor.name && descriptor.name.length ? descriptor.name : "Service" + unnamedServiceIndex++, fromDescriptorOptions(descriptor.options, exports2.ServiceOptions)); + if (descriptor.method) + for (var i = 0; i < descriptor.method.length; ++i) + service.add(Method.fromDescriptor(descriptor.method[i])); + return service; + }; + Service.prototype.toDescriptor = function toDescriptor() { + var methods = []; + for (var i = 0; i < this.methodsArray.length; ++i) + methods.push(this._methodsArray[i].toDescriptor()); + return exports2.ServiceDescriptorProto.create({ + name: this.name, + method: methods, + options: toDescriptorOptions(this.options, exports2.ServiceOptions) + }); + }; + var unnamedMethodIndex = 0; + Method.fromDescriptor = function fromDescriptor(descriptor) { + if (typeof descriptor.length === "number") + descriptor = exports2.MethodDescriptorProto.decode(descriptor); + return new Method( + // unnamedMethodIndex is global, not per service, because we have no ref to a service here + descriptor.name && descriptor.name.length ? descriptor.name : "Method" + unnamedMethodIndex++, + "rpc", + descriptor.inputType, + descriptor.outputType, + Boolean(descriptor.clientStreaming), + Boolean(descriptor.serverStreaming), + fromDescriptorOptions(descriptor.options, exports2.MethodOptions) + ); + }; + Method.prototype.toDescriptor = function toDescriptor() { + return exports2.MethodDescriptorProto.create({ + name: this.name, + inputType: this.resolvedRequestType ? this.resolvedRequestType.fullName : this.requestType, + outputType: this.resolvedResponseType ? this.resolvedResponseType.fullName : this.responseType, + clientStreaming: this.requestStream, + serverStreaming: this.responseStream, + options: toDescriptorOptions(this.options, exports2.MethodOptions) + }); + }; + function fromDescriptorType(type2) { + switch (type2) { + case 1: + return "double"; + case 2: + return "float"; + case 3: + return "int64"; + case 4: + return "uint64"; + case 5: + return "int32"; + case 6: + return "fixed64"; + case 7: + return "fixed32"; + case 8: + return "bool"; + case 9: + return "string"; + case 12: + return "bytes"; + case 13: + return "uint32"; + case 15: + return "sfixed32"; + case 16: + return "sfixed64"; + case 17: + return "sint32"; + case 18: + return "sint64"; + } + throw Error("illegal type: " + type2); + } + function packableDescriptorType(type2) { + switch (type2) { + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 13: + case 14: + case 15: + case 16: + case 17: + case 18: + return true; + } + return false; + } + function toDescriptorType(type2, resolvedType) { + switch (type2) { + case "double": + return 1; + case "float": + return 2; + case "int64": + return 3; + case "uint64": + return 4; + case "int32": + return 5; + case "fixed64": + return 6; + case "fixed32": + return 7; + case "bool": + return 8; + case "string": + return 9; + case "bytes": + return 12; + case "uint32": + return 13; + case "sfixed32": + return 15; + case "sfixed64": + return 16; + case "sint32": + return 17; + case "sint64": + return 18; + } + if (resolvedType instanceof Enum) + return 14; + if (resolvedType instanceof Type) + return resolvedType.group ? 10 : 11; + throw Error("illegal type: " + type2); + } + function fromDescriptorOptions(options2, type2) { + if (!options2) + return void 0; + var out2 = []; + for (var i = 0, field, key, val; i < type2.fieldsArray.length; ++i) + if ((key = (field = type2._fieldsArray[i]).name) !== "uninterpretedOption") { + if (options2.hasOwnProperty(key)) { + val = options2[key]; + if (field.resolvedType instanceof Enum && typeof val === "number" && field.resolvedType.valuesById[val] !== void 0) + val = field.resolvedType.valuesById[val]; + out2.push(underScore(key), val); + } + } + return out2.length ? $protobuf.util.toObject(out2) : void 0; + } + function toDescriptorOptions(options2, type2) { + if (!options2) + return void 0; + var out2 = []; + for (var i = 0, ks = Object.keys(options2), key, val; i < ks.length; ++i) { + val = options2[key = ks[i]]; + if (key === "default") + continue; + var field = type2.fields[key]; + if (!field && !(field = type2.fields[key = $protobuf.util.camelCase(key)])) + continue; + out2.push(key, val); + } + return out2.length ? type2.fromObject($protobuf.util.toObject(out2)) : void 0; + } + function shortname(from, to) { + var fromPath = from.fullName.split("."), toPath = to.fullName.split("."), i = 0, j = 0, k = toPath.length - 1; + if (!(from instanceof Root) && to instanceof Namespace) + while (i < fromPath.length && j < k && fromPath[i] === toPath[j]) { + var other = to.lookup(fromPath[i++], true); + if (other !== null && other !== to) + break; + ++j; + } + else + for (; i < fromPath.length && j < k && fromPath[i] === toPath[j]; ++i, ++j) + ; + return toPath.slice(j).join("."); + } + function underScore(str) { + return str.substring(0, 1) + str.substring(1).replace(/([A-Z])(?=[a-z]|$)/g, function($0, $1) { + return "_" + $1.toLowerCase(); + }); + } + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/google/protobuf/api.json +var require_api3 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/google/protobuf/api.json"(exports2, module2) { + module2.exports = { + nested: { + google: { + nested: { + protobuf: { + nested: { + Api: { + fields: { + name: { + type: "string", + id: 1 + }, + methods: { + rule: "repeated", + type: "Method", + id: 2 + }, + options: { + rule: "repeated", + type: "Option", + id: 3 + }, + version: { + type: "string", + id: 4 + }, + sourceContext: { + type: "SourceContext", + id: 5 + }, + mixins: { + rule: "repeated", + type: "Mixin", + id: 6 + }, + syntax: { + type: "Syntax", + id: 7 + } + } + }, + Method: { + fields: { + name: { + type: "string", + id: 1 + }, + requestTypeUrl: { + type: "string", + id: 2 + }, + requestStreaming: { + type: "bool", + id: 3 + }, + responseTypeUrl: { + type: "string", + id: 4 + }, + responseStreaming: { + type: "bool", + id: 5 + }, + options: { + rule: "repeated", + type: "Option", + id: 6 + }, + syntax: { + type: "Syntax", + id: 7 + } + } + }, + Mixin: { + fields: { + name: { + type: "string", + id: 1 + }, + root: { + type: "string", + id: 2 + } + } + }, + SourceContext: { + fields: { + fileName: { + type: "string", + id: 1 + } + } + }, + Option: { + fields: { + name: { + type: "string", + id: 1 + }, + value: { + type: "Any", + id: 2 + } + } + }, + Syntax: { + values: { + SYNTAX_PROTO2: 0, + SYNTAX_PROTO3: 1 + } + } + } + } + } + } + } + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/google/protobuf/source_context.json +var require_source_context = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/google/protobuf/source_context.json"(exports2, module2) { + module2.exports = { + nested: { + google: { + nested: { + protobuf: { + nested: { + SourceContext: { + fields: { + fileName: { + type: "string", + id: 1 + } + } + } + } + } + } + } + } + }; + } +}); + +// ../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/google/protobuf/type.json +var require_type2 = __commonJS({ + "../node_modules/.pnpm/protobufjs@7.2.4/node_modules/protobufjs/google/protobuf/type.json"(exports2, module2) { + module2.exports = { + nested: { + google: { + nested: { + protobuf: { + nested: { + Type: { + fields: { + name: { + type: "string", + id: 1 + }, + fields: { + rule: "repeated", + type: "Field", + id: 2 + }, + oneofs: { + rule: "repeated", + type: "string", + id: 3 + }, + options: { + rule: "repeated", + type: "Option", + id: 4 + }, + sourceContext: { + type: "SourceContext", + id: 5 + }, + syntax: { + type: "Syntax", + id: 6 + } + } + }, + Field: { + fields: { + kind: { + type: "Kind", + id: 1 + }, + cardinality: { + type: "Cardinality", + id: 2 + }, + number: { + type: "int32", + id: 3 + }, + name: { + type: "string", + id: 4 + }, + typeUrl: { + type: "string", + id: 6 + }, + oneofIndex: { + type: "int32", + id: 7 + }, + packed: { + type: "bool", + id: 8 + }, + options: { + rule: "repeated", + type: "Option", + id: 9 + }, + jsonName: { + type: "string", + id: 10 + }, + defaultValue: { + type: "string", + id: 11 + } + }, + nested: { + Kind: { + values: { + TYPE_UNKNOWN: 0, + TYPE_DOUBLE: 1, + TYPE_FLOAT: 2, + TYPE_INT64: 3, + TYPE_UINT64: 4, + TYPE_INT32: 5, + TYPE_FIXED64: 6, + TYPE_FIXED32: 7, + TYPE_BOOL: 8, + TYPE_STRING: 9, + TYPE_GROUP: 10, + TYPE_MESSAGE: 11, + TYPE_BYTES: 12, + TYPE_UINT32: 13, + TYPE_ENUM: 14, + TYPE_SFIXED32: 15, + TYPE_SFIXED64: 16, + TYPE_SINT32: 17, + TYPE_SINT64: 18 + } + }, + Cardinality: { + values: { + CARDINALITY_UNKNOWN: 0, + CARDINALITY_OPTIONAL: 1, + CARDINALITY_REQUIRED: 2, + CARDINALITY_REPEATED: 3 + } + } + } + }, + Enum: { + fields: { + name: { + type: "string", + id: 1 + }, + enumvalue: { + rule: "repeated", + type: "EnumValue", + id: 2 + }, + options: { + rule: "repeated", + type: "Option", + id: 3 + }, + sourceContext: { + type: "SourceContext", + id: 4 + }, + syntax: { + type: "Syntax", + id: 5 + } + } + }, + EnumValue: { + fields: { + name: { + type: "string", + id: 1 + }, + number: { + type: "int32", + id: 2 + }, + options: { + rule: "repeated", + type: "Option", + id: 3 + } + } + }, + Option: { + fields: { + name: { + type: "string", + id: 1 + }, + value: { + type: "Any", + id: 2 + } + } + }, + Syntax: { + values: { + SYNTAX_PROTO2: 0, + SYNTAX_PROTO3: 1 + } + }, + Any: { + fields: { + type_url: { + type: "string", + id: 1 + }, + value: { + type: "bytes", + id: 2 + } + } + }, + SourceContext: { + fields: { + fileName: { + type: "string", + id: 1 + } + } + } + } + } + } + } + } + }; + } +}); + +// ../node_modules/.pnpm/@grpc+proto-loader@0.7.8/node_modules/@grpc/proto-loader/build/src/util.js +var require_util11 = __commonJS({ + "../node_modules/.pnpm/@grpc+proto-loader@0.7.8/node_modules/@grpc/proto-loader/build/src/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.addCommonProtos = exports2.loadProtosWithOptionsSync = exports2.loadProtosWithOptions = void 0; + var fs6 = require("fs"); + var path30 = require("path"); + var Protobuf = require_protobufjs(); + function addIncludePathResolver(root, includePaths) { + const originalResolvePath = root.resolvePath; + root.resolvePath = (origin, target) => { + if (path30.isAbsolute(target)) { + return target; + } + for (const directory of includePaths) { + const fullPath = path30.join(directory, target); + try { + fs6.accessSync(fullPath, fs6.constants.R_OK); + return fullPath; + } catch (err2) { + continue; + } + } + process.emitWarning(`${target} not found in any of the include paths ${includePaths}`); + return originalResolvePath(origin, target); + }; + } + async function loadProtosWithOptions(filename, options2) { + const root = new Protobuf.Root(); + options2 = options2 || {}; + if (!!options2.includeDirs) { + if (!Array.isArray(options2.includeDirs)) { + return Promise.reject(new Error("The includeDirs option must be an array")); + } + addIncludePathResolver(root, options2.includeDirs); + } + const loadedRoot = await root.load(filename, options2); + loadedRoot.resolveAll(); + return loadedRoot; + } + exports2.loadProtosWithOptions = loadProtosWithOptions; + function loadProtosWithOptionsSync(filename, options2) { + const root = new Protobuf.Root(); + options2 = options2 || {}; + if (!!options2.includeDirs) { + if (!Array.isArray(options2.includeDirs)) { + throw new Error("The includeDirs option must be an array"); + } + addIncludePathResolver(root, options2.includeDirs); + } + const loadedRoot = root.loadSync(filename, options2); + loadedRoot.resolveAll(); + return loadedRoot; + } + exports2.loadProtosWithOptionsSync = loadProtosWithOptionsSync; + function addCommonProtos() { + const apiDescriptor = require_api3(); + const descriptorDescriptor = require_descriptor(); + const sourceContextDescriptor = require_source_context(); + const typeDescriptor = require_type2(); + Protobuf.common("api", apiDescriptor.nested.google.nested.protobuf.nested); + Protobuf.common("descriptor", descriptorDescriptor.nested.google.nested.protobuf.nested); + Protobuf.common("source_context", sourceContextDescriptor.nested.google.nested.protobuf.nested); + Protobuf.common("type", typeDescriptor.nested.google.nested.protobuf.nested); + } + exports2.addCommonProtos = addCommonProtos; + } +}); + +// ../node_modules/.pnpm/long@4.0.0/node_modules/long/src/long.js +var require_long = __commonJS({ + "../node_modules/.pnpm/long@4.0.0/node_modules/long/src/long.js"(exports2, module2) { + module2.exports = Long; + var wasm = null; + try { + wasm = new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([ + 0, + 97, + 115, + 109, + 1, + 0, + 0, + 0, + 1, + 13, + 2, + 96, + 0, + 1, + 127, + 96, + 4, + 127, + 127, + 127, + 127, + 1, + 127, + 3, + 7, + 6, + 0, + 1, + 1, + 1, + 1, + 1, + 6, + 6, + 1, + 127, + 1, + 65, + 0, + 11, + 7, + 50, + 6, + 3, + 109, + 117, + 108, + 0, + 1, + 5, + 100, + 105, + 118, + 95, + 115, + 0, + 2, + 5, + 100, + 105, + 118, + 95, + 117, + 0, + 3, + 5, + 114, + 101, + 109, + 95, + 115, + 0, + 4, + 5, + 114, + 101, + 109, + 95, + 117, + 0, + 5, + 8, + 103, + 101, + 116, + 95, + 104, + 105, + 103, + 104, + 0, + 0, + 10, + 191, + 1, + 6, + 4, + 0, + 35, + 0, + 11, + 36, + 1, + 1, + 126, + 32, + 0, + 173, + 32, + 1, + 173, + 66, + 32, + 134, + 132, + 32, + 2, + 173, + 32, + 3, + 173, + 66, + 32, + 134, + 132, + 126, + 34, + 4, + 66, + 32, + 135, + 167, + 36, + 0, + 32, + 4, + 167, + 11, + 36, + 1, + 1, + 126, + 32, + 0, + 173, + 32, + 1, + 173, + 66, + 32, + 134, + 132, + 32, + 2, + 173, + 32, + 3, + 173, + 66, + 32, + 134, + 132, + 127, + 34, + 4, + 66, + 32, + 135, + 167, + 36, + 0, + 32, + 4, + 167, + 11, + 36, + 1, + 1, + 126, + 32, + 0, + 173, + 32, + 1, + 173, + 66, + 32, + 134, + 132, + 32, + 2, + 173, + 32, + 3, + 173, + 66, + 32, + 134, + 132, + 128, + 34, + 4, + 66, + 32, + 135, + 167, + 36, + 0, + 32, + 4, + 167, + 11, + 36, + 1, + 1, + 126, + 32, + 0, + 173, + 32, + 1, + 173, + 66, + 32, + 134, + 132, + 32, + 2, + 173, + 32, + 3, + 173, + 66, + 32, + 134, + 132, + 129, + 34, + 4, + 66, + 32, + 135, + 167, + 36, + 0, + 32, + 4, + 167, + 11, + 36, + 1, + 1, + 126, + 32, + 0, + 173, + 32, + 1, + 173, + 66, + 32, + 134, + 132, + 32, + 2, + 173, + 32, + 3, + 173, + 66, + 32, + 134, + 132, + 130, + 34, + 4, + 66, + 32, + 135, + 167, + 36, + 0, + 32, + 4, + 167, + 11 + ])), {}).exports; + } catch (e) { + } + function Long(low, high, unsigned) { + this.low = low | 0; + this.high = high | 0; + this.unsigned = !!unsigned; + } + Long.prototype.__isLong__; + Object.defineProperty(Long.prototype, "__isLong__", { value: true }); + function isLong(obj2) { + return (obj2 && obj2["__isLong__"]) === true; + } + Long.isLong = isLong; + var INT_CACHE = {}; + var UINT_CACHE = {}; + function fromInt(value, unsigned) { + var obj2, cachedObj, cache; + if (unsigned) { + value >>>= 0; + if (cache = 0 <= value && value < 256) { + cachedObj = UINT_CACHE[value]; + if (cachedObj) + return cachedObj; + } + obj2 = fromBits(value, (value | 0) < 0 ? -1 : 0, true); + if (cache) + UINT_CACHE[value] = obj2; + return obj2; + } else { + value |= 0; + if (cache = -128 <= value && value < 128) { + cachedObj = INT_CACHE[value]; + if (cachedObj) + return cachedObj; + } + obj2 = fromBits(value, value < 0 ? -1 : 0, false); + if (cache) + INT_CACHE[value] = obj2; + return obj2; + } + } + Long.fromInt = fromInt; + function fromNumber(value, unsigned) { + if (isNaN(value)) + return unsigned ? UZERO : ZERO; + if (unsigned) { + if (value < 0) + return UZERO; + if (value >= TWO_PWR_64_DBL) + return MAX_UNSIGNED_VALUE; + } else { + if (value <= -TWO_PWR_63_DBL) + return MIN_VALUE; + if (value + 1 >= TWO_PWR_63_DBL) + return MAX_VALUE; + } + if (value < 0) + return fromNumber(-value, unsigned).neg(); + return fromBits(value % TWO_PWR_32_DBL | 0, value / TWO_PWR_32_DBL | 0, unsigned); + } + Long.fromNumber = fromNumber; + function fromBits(lowBits, highBits, unsigned) { + return new Long(lowBits, highBits, unsigned); + } + Long.fromBits = fromBits; + var pow_dbl = Math.pow; + function fromString(str, unsigned, radix) { + if (str.length === 0) + throw Error("empty string"); + if (str === "NaN" || str === "Infinity" || str === "+Infinity" || str === "-Infinity") + return ZERO; + if (typeof unsigned === "number") { + radix = unsigned, unsigned = false; + } else { + unsigned = !!unsigned; + } + radix = radix || 10; + if (radix < 2 || 36 < radix) + throw RangeError("radix"); + var p; + if ((p = str.indexOf("-")) > 0) + throw Error("interior hyphen"); + else if (p === 0) { + return fromString(str.substring(1), unsigned, radix).neg(); + } + var radixToPower = fromNumber(pow_dbl(radix, 8)); + var result = ZERO; + for (var i = 0; i < str.length; i += 8) { + var size = Math.min(8, str.length - i), value = parseInt(str.substring(i, i + size), radix); + if (size < 8) { + var power = fromNumber(pow_dbl(radix, size)); + result = result.mul(power).add(fromNumber(value)); + } else { + result = result.mul(radixToPower); + result = result.add(fromNumber(value)); + } + } + result.unsigned = unsigned; + return result; + } + Long.fromString = fromString; + function fromValue(val, unsigned) { + if (typeof val === "number") + return fromNumber(val, unsigned); + if (typeof val === "string") + return fromString(val, unsigned); + return fromBits(val.low, val.high, typeof unsigned === "boolean" ? unsigned : val.unsigned); + } + Long.fromValue = fromValue; + var TWO_PWR_16_DBL = 1 << 16; + var TWO_PWR_24_DBL = 1 << 24; + var TWO_PWR_32_DBL = TWO_PWR_16_DBL * TWO_PWR_16_DBL; + var TWO_PWR_64_DBL = TWO_PWR_32_DBL * TWO_PWR_32_DBL; + var TWO_PWR_63_DBL = TWO_PWR_64_DBL / 2; + var TWO_PWR_24 = fromInt(TWO_PWR_24_DBL); + var ZERO = fromInt(0); + Long.ZERO = ZERO; + var UZERO = fromInt(0, true); + Long.UZERO = UZERO; + var ONE = fromInt(1); + Long.ONE = ONE; + var UONE = fromInt(1, true); + Long.UONE = UONE; + var NEG_ONE = fromInt(-1); + Long.NEG_ONE = NEG_ONE; + var MAX_VALUE = fromBits(4294967295 | 0, 2147483647 | 0, false); + Long.MAX_VALUE = MAX_VALUE; + var MAX_UNSIGNED_VALUE = fromBits(4294967295 | 0, 4294967295 | 0, true); + Long.MAX_UNSIGNED_VALUE = MAX_UNSIGNED_VALUE; + var MIN_VALUE = fromBits(0, 2147483648 | 0, false); + Long.MIN_VALUE = MIN_VALUE; + var LongPrototype = Long.prototype; + LongPrototype.toInt = function toInt() { + return this.unsigned ? this.low >>> 0 : this.low; + }; + LongPrototype.toNumber = function toNumber() { + if (this.unsigned) + return (this.high >>> 0) * TWO_PWR_32_DBL + (this.low >>> 0); + return this.high * TWO_PWR_32_DBL + (this.low >>> 0); + }; + LongPrototype.toString = function toString3(radix) { + radix = radix || 10; + if (radix < 2 || 36 < radix) + throw RangeError("radix"); + if (this.isZero()) + return "0"; + if (this.isNegative()) { + if (this.eq(MIN_VALUE)) { + var radixLong = fromNumber(radix), div = this.div(radixLong), rem1 = div.mul(radixLong).sub(this); + return div.toString(radix) + rem1.toInt().toString(radix); + } else + return "-" + this.neg().toString(radix); + } + var radixToPower = fromNumber(pow_dbl(radix, 6), this.unsigned), rem = this; + var result = ""; + while (true) { + var remDiv = rem.div(radixToPower), intval = rem.sub(remDiv.mul(radixToPower)).toInt() >>> 0, digits = intval.toString(radix); + rem = remDiv; + if (rem.isZero()) + return digits + result; + else { + while (digits.length < 6) + digits = "0" + digits; + result = "" + digits + result; + } + } + }; + LongPrototype.getHighBits = function getHighBits() { + return this.high; + }; + LongPrototype.getHighBitsUnsigned = function getHighBitsUnsigned() { + return this.high >>> 0; + }; + LongPrototype.getLowBits = function getLowBits() { + return this.low; + }; + LongPrototype.getLowBitsUnsigned = function getLowBitsUnsigned() { + return this.low >>> 0; + }; + LongPrototype.getNumBitsAbs = function getNumBitsAbs() { + if (this.isNegative()) + return this.eq(MIN_VALUE) ? 64 : this.neg().getNumBitsAbs(); + var val = this.high != 0 ? this.high : this.low; + for (var bit = 31; bit > 0; bit--) + if ((val & 1 << bit) != 0) + break; + return this.high != 0 ? bit + 33 : bit + 1; + }; + LongPrototype.isZero = function isZero() { + return this.high === 0 && this.low === 0; + }; + LongPrototype.eqz = LongPrototype.isZero; + LongPrototype.isNegative = function isNegative() { + return !this.unsigned && this.high < 0; + }; + LongPrototype.isPositive = function isPositive() { + return this.unsigned || this.high >= 0; + }; + LongPrototype.isOdd = function isOdd() { + return (this.low & 1) === 1; + }; + LongPrototype.isEven = function isEven() { + return (this.low & 1) === 0; + }; + LongPrototype.equals = function equals(other) { + if (!isLong(other)) + other = fromValue(other); + if (this.unsigned !== other.unsigned && this.high >>> 31 === 1 && other.high >>> 31 === 1) + return false; + return this.high === other.high && this.low === other.low; + }; + LongPrototype.eq = LongPrototype.equals; + LongPrototype.notEquals = function notEquals(other) { + return !this.eq( + /* validates */ + other + ); + }; + LongPrototype.neq = LongPrototype.notEquals; + LongPrototype.ne = LongPrototype.notEquals; + LongPrototype.lessThan = function lessThan(other) { + return this.comp( + /* validates */ + other + ) < 0; + }; + LongPrototype.lt = LongPrototype.lessThan; + LongPrototype.lessThanOrEqual = function lessThanOrEqual(other) { + return this.comp( + /* validates */ + other + ) <= 0; + }; + LongPrototype.lte = LongPrototype.lessThanOrEqual; + LongPrototype.le = LongPrototype.lessThanOrEqual; + LongPrototype.greaterThan = function greaterThan(other) { + return this.comp( + /* validates */ + other + ) > 0; + }; + LongPrototype.gt = LongPrototype.greaterThan; + LongPrototype.greaterThanOrEqual = function greaterThanOrEqual(other) { + return this.comp( + /* validates */ + other + ) >= 0; + }; + LongPrototype.gte = LongPrototype.greaterThanOrEqual; + LongPrototype.ge = LongPrototype.greaterThanOrEqual; + LongPrototype.compare = function compare(other) { + if (!isLong(other)) + other = fromValue(other); + if (this.eq(other)) + return 0; + var thisNeg = this.isNegative(), otherNeg = other.isNegative(); + if (thisNeg && !otherNeg) + return -1; + if (!thisNeg && otherNeg) + return 1; + if (!this.unsigned) + return this.sub(other).isNegative() ? -1 : 1; + return other.high >>> 0 > this.high >>> 0 || other.high === this.high && other.low >>> 0 > this.low >>> 0 ? -1 : 1; + }; + LongPrototype.comp = LongPrototype.compare; + LongPrototype.negate = function negate() { + if (!this.unsigned && this.eq(MIN_VALUE)) + return MIN_VALUE; + return this.not().add(ONE); + }; + LongPrototype.neg = LongPrototype.negate; + LongPrototype.add = function add(addend) { + if (!isLong(addend)) + addend = fromValue(addend); + var a48 = this.high >>> 16; + var a32 = this.high & 65535; + var a16 = this.low >>> 16; + var a00 = this.low & 65535; + var b48 = addend.high >>> 16; + var b32 = addend.high & 65535; + var b16 = addend.low >>> 16; + var b00 = addend.low & 65535; + var c48 = 0, c32 = 0, c16 = 0, c00 = 0; + c00 += a00 + b00; + c16 += c00 >>> 16; + c00 &= 65535; + c16 += a16 + b16; + c32 += c16 >>> 16; + c16 &= 65535; + c32 += a32 + b32; + c48 += c32 >>> 16; + c32 &= 65535; + c48 += a48 + b48; + c48 &= 65535; + return fromBits(c16 << 16 | c00, c48 << 16 | c32, this.unsigned); + }; + LongPrototype.subtract = function subtract(subtrahend) { + if (!isLong(subtrahend)) + subtrahend = fromValue(subtrahend); + return this.add(subtrahend.neg()); + }; + LongPrototype.sub = LongPrototype.subtract; + LongPrototype.multiply = function multiply(multiplier) { + if (this.isZero()) + return ZERO; + if (!isLong(multiplier)) + multiplier = fromValue(multiplier); + if (wasm) { + var low = wasm.mul( + this.low, + this.high, + multiplier.low, + multiplier.high + ); + return fromBits(low, wasm.get_high(), this.unsigned); + } + if (multiplier.isZero()) + return ZERO; + if (this.eq(MIN_VALUE)) + return multiplier.isOdd() ? MIN_VALUE : ZERO; + if (multiplier.eq(MIN_VALUE)) + return this.isOdd() ? MIN_VALUE : ZERO; + if (this.isNegative()) { + if (multiplier.isNegative()) + return this.neg().mul(multiplier.neg()); + else + return this.neg().mul(multiplier).neg(); + } else if (multiplier.isNegative()) + return this.mul(multiplier.neg()).neg(); + if (this.lt(TWO_PWR_24) && multiplier.lt(TWO_PWR_24)) + return fromNumber(this.toNumber() * multiplier.toNumber(), this.unsigned); + var a48 = this.high >>> 16; + var a32 = this.high & 65535; + var a16 = this.low >>> 16; + var a00 = this.low & 65535; + var b48 = multiplier.high >>> 16; + var b32 = multiplier.high & 65535; + var b16 = multiplier.low >>> 16; + var b00 = multiplier.low & 65535; + var c48 = 0, c32 = 0, c16 = 0, c00 = 0; + c00 += a00 * b00; + c16 += c00 >>> 16; + c00 &= 65535; + c16 += a16 * b00; + c32 += c16 >>> 16; + c16 &= 65535; + c16 += a00 * b16; + c32 += c16 >>> 16; + c16 &= 65535; + c32 += a32 * b00; + c48 += c32 >>> 16; + c32 &= 65535; + c32 += a16 * b16; + c48 += c32 >>> 16; + c32 &= 65535; + c32 += a00 * b32; + c48 += c32 >>> 16; + c32 &= 65535; + c48 += a48 * b00 + a32 * b16 + a16 * b32 + a00 * b48; + c48 &= 65535; + return fromBits(c16 << 16 | c00, c48 << 16 | c32, this.unsigned); + }; + LongPrototype.mul = LongPrototype.multiply; + LongPrototype.divide = function divide(divisor) { + if (!isLong(divisor)) + divisor = fromValue(divisor); + if (divisor.isZero()) + throw Error("division by zero"); + if (wasm) { + if (!this.unsigned && this.high === -2147483648 && divisor.low === -1 && divisor.high === -1) { + return this; + } + var low = (this.unsigned ? wasm.div_u : wasm.div_s)( + this.low, + this.high, + divisor.low, + divisor.high + ); + return fromBits(low, wasm.get_high(), this.unsigned); + } + if (this.isZero()) + return this.unsigned ? UZERO : ZERO; + var approx, rem, res; + if (!this.unsigned) { + if (this.eq(MIN_VALUE)) { + if (divisor.eq(ONE) || divisor.eq(NEG_ONE)) + return MIN_VALUE; + else if (divisor.eq(MIN_VALUE)) + return ONE; + else { + var halfThis = this.shr(1); + approx = halfThis.div(divisor).shl(1); + if (approx.eq(ZERO)) { + return divisor.isNegative() ? ONE : NEG_ONE; + } else { + rem = this.sub(divisor.mul(approx)); + res = approx.add(rem.div(divisor)); + return res; + } + } + } else if (divisor.eq(MIN_VALUE)) + return this.unsigned ? UZERO : ZERO; + if (this.isNegative()) { + if (divisor.isNegative()) + return this.neg().div(divisor.neg()); + return this.neg().div(divisor).neg(); + } else if (divisor.isNegative()) + return this.div(divisor.neg()).neg(); + res = ZERO; + } else { + if (!divisor.unsigned) + divisor = divisor.toUnsigned(); + if (divisor.gt(this)) + return UZERO; + if (divisor.gt(this.shru(1))) + return UONE; + res = UZERO; + } + rem = this; + while (rem.gte(divisor)) { + approx = Math.max(1, Math.floor(rem.toNumber() / divisor.toNumber())); + var log2 = Math.ceil(Math.log(approx) / Math.LN2), delta = log2 <= 48 ? 1 : pow_dbl(2, log2 - 48), approxRes = fromNumber(approx), approxRem = approxRes.mul(divisor); + while (approxRem.isNegative() || approxRem.gt(rem)) { + approx -= delta; + approxRes = fromNumber(approx, this.unsigned); + approxRem = approxRes.mul(divisor); + } + if (approxRes.isZero()) + approxRes = ONE; + res = res.add(approxRes); + rem = rem.sub(approxRem); + } + return res; + }; + LongPrototype.div = LongPrototype.divide; + LongPrototype.modulo = function modulo(divisor) { + if (!isLong(divisor)) + divisor = fromValue(divisor); + if (wasm) { + var low = (this.unsigned ? wasm.rem_u : wasm.rem_s)( + this.low, + this.high, + divisor.low, + divisor.high + ); + return fromBits(low, wasm.get_high(), this.unsigned); + } + return this.sub(this.div(divisor).mul(divisor)); + }; + LongPrototype.mod = LongPrototype.modulo; + LongPrototype.rem = LongPrototype.modulo; + LongPrototype.not = function not() { + return fromBits(~this.low, ~this.high, this.unsigned); + }; + LongPrototype.and = function and(other) { + if (!isLong(other)) + other = fromValue(other); + return fromBits(this.low & other.low, this.high & other.high, this.unsigned); + }; + LongPrototype.or = function or(other) { + if (!isLong(other)) + other = fromValue(other); + return fromBits(this.low | other.low, this.high | other.high, this.unsigned); + }; + LongPrototype.xor = function xor(other) { + if (!isLong(other)) + other = fromValue(other); + return fromBits(this.low ^ other.low, this.high ^ other.high, this.unsigned); + }; + LongPrototype.shiftLeft = function shiftLeft(numBits) { + if (isLong(numBits)) + numBits = numBits.toInt(); + if ((numBits &= 63) === 0) + return this; + else if (numBits < 32) + return fromBits(this.low << numBits, this.high << numBits | this.low >>> 32 - numBits, this.unsigned); + else + return fromBits(0, this.low << numBits - 32, this.unsigned); + }; + LongPrototype.shl = LongPrototype.shiftLeft; + LongPrototype.shiftRight = function shiftRight(numBits) { + if (isLong(numBits)) + numBits = numBits.toInt(); + if ((numBits &= 63) === 0) + return this; + else if (numBits < 32) + return fromBits(this.low >>> numBits | this.high << 32 - numBits, this.high >> numBits, this.unsigned); + else + return fromBits(this.high >> numBits - 32, this.high >= 0 ? 0 : -1, this.unsigned); + }; + LongPrototype.shr = LongPrototype.shiftRight; + LongPrototype.shiftRightUnsigned = function shiftRightUnsigned(numBits) { + if (isLong(numBits)) + numBits = numBits.toInt(); + numBits &= 63; + if (numBits === 0) + return this; + else { + var high = this.high; + if (numBits < 32) { + var low = this.low; + return fromBits(low >>> numBits | high << 32 - numBits, high >>> numBits, this.unsigned); + } else if (numBits === 32) + return fromBits(high, 0, this.unsigned); + else + return fromBits(high >>> numBits - 32, 0, this.unsigned); + } + }; + LongPrototype.shru = LongPrototype.shiftRightUnsigned; + LongPrototype.shr_u = LongPrototype.shiftRightUnsigned; + LongPrototype.toSigned = function toSigned() { + if (!this.unsigned) + return this; + return fromBits(this.low, this.high, false); + }; + LongPrototype.toUnsigned = function toUnsigned() { + if (this.unsigned) + return this; + return fromBits(this.low, this.high, true); + }; + LongPrototype.toBytes = function toBytes(le) { + return le ? this.toBytesLE() : this.toBytesBE(); + }; + LongPrototype.toBytesLE = function toBytesLE() { + var hi = this.high, lo = this.low; + return [ + lo & 255, + lo >>> 8 & 255, + lo >>> 16 & 255, + lo >>> 24, + hi & 255, + hi >>> 8 & 255, + hi >>> 16 & 255, + hi >>> 24 + ]; + }; + LongPrototype.toBytesBE = function toBytesBE() { + var hi = this.high, lo = this.low; + return [ + hi >>> 24, + hi >>> 16 & 255, + hi >>> 8 & 255, + hi & 255, + lo >>> 24, + lo >>> 16 & 255, + lo >>> 8 & 255, + lo & 255 + ]; + }; + Long.fromBytes = function fromBytes(bytes, unsigned, le) { + return le ? Long.fromBytesLE(bytes, unsigned) : Long.fromBytesBE(bytes, unsigned); + }; + Long.fromBytesLE = function fromBytesLE(bytes, unsigned) { + return new Long( + bytes[0] | bytes[1] << 8 | bytes[2] << 16 | bytes[3] << 24, + bytes[4] | bytes[5] << 8 | bytes[6] << 16 | bytes[7] << 24, + unsigned + ); + }; + Long.fromBytesBE = function fromBytesBE(bytes, unsigned) { + return new Long( + bytes[4] << 24 | bytes[5] << 16 | bytes[6] << 8 | bytes[7], + bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], + unsigned + ); + }; + } +}); + +// ../node_modules/.pnpm/@grpc+proto-loader@0.7.8/node_modules/@grpc/proto-loader/build/src/index.js +var require_src24 = __commonJS({ + "../node_modules/.pnpm/@grpc+proto-loader@0.7.8/node_modules/@grpc/proto-loader/build/src/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.loadFileDescriptorSetFromObject = exports2.loadFileDescriptorSetFromBuffer = exports2.fromJSON = exports2.loadSync = exports2.load = exports2.isAnyExtension = exports2.Long = void 0; + var camelCase2 = require_lodash2(); + var Protobuf = require_protobufjs(); + var descriptor = require_descriptor2(); + var util_1 = require_util11(); + var Long = require_long(); + exports2.Long = Long; + function isAnyExtension(obj2) { + return "@type" in obj2 && typeof obj2["@type"] === "string"; + } + exports2.isAnyExtension = isAnyExtension; + var descriptorOptions = { + longs: String, + enums: String, + bytes: String, + defaults: true, + oneofs: true, + json: true + }; + function joinName(baseName, name) { + if (baseName === "") { + return name; + } else { + return baseName + "." + name; + } + } + function isHandledReflectionObject(obj2) { + return obj2 instanceof Protobuf.Service || obj2 instanceof Protobuf.Type || obj2 instanceof Protobuf.Enum; + } + function isNamespaceBase(obj2) { + return obj2 instanceof Protobuf.Namespace || obj2 instanceof Protobuf.Root; + } + function getAllHandledReflectionObjects(obj2, parentName) { + const objName = joinName(parentName, obj2.name); + if (isHandledReflectionObject(obj2)) { + return [[objName, obj2]]; + } else { + if (isNamespaceBase(obj2) && typeof obj2.nested !== "undefined") { + return Object.keys(obj2.nested).map((name) => { + return getAllHandledReflectionObjects(obj2.nested[name], objName); + }).reduce((accumulator, currentValue) => accumulator.concat(currentValue), []); + } + } + return []; + } + function createDeserializer(cls, options2) { + return function deserialize(argBuf) { + return cls.toObject(cls.decode(argBuf), options2); + }; + } + function createSerializer(cls) { + return function serialize(arg) { + if (Array.isArray(arg)) { + throw new Error(`Failed to serialize message: expected object with ${cls.name} structure, got array instead`); + } + const message = cls.fromObject(arg); + return cls.encode(message).finish(); + }; + } + function createMethodDefinition(method, serviceName, options2, fileDescriptors) { + const requestType = method.resolvedRequestType; + const responseType = method.resolvedResponseType; + return { + path: "/" + serviceName + "/" + method.name, + requestStream: !!method.requestStream, + responseStream: !!method.responseStream, + requestSerialize: createSerializer(requestType), + requestDeserialize: createDeserializer(requestType, options2), + responseSerialize: createSerializer(responseType), + responseDeserialize: createDeserializer(responseType, options2), + // TODO(murgatroid99): Find a better way to handle this + originalName: camelCase2(method.name), + requestType: createMessageDefinition(requestType, fileDescriptors), + responseType: createMessageDefinition(responseType, fileDescriptors) + }; + } + function createServiceDefinition(service, name, options2, fileDescriptors) { + const def = {}; + for (const method of service.methodsArray) { + def[method.name] = createMethodDefinition(method, name, options2, fileDescriptors); + } + return def; + } + function createMessageDefinition(message, fileDescriptors) { + const messageDescriptor = message.toDescriptor("proto3"); + return { + format: "Protocol Buffer 3 DescriptorProto", + type: messageDescriptor.$type.toObject(messageDescriptor, descriptorOptions), + fileDescriptorProtos: fileDescriptors + }; + } + function createEnumDefinition(enumType, fileDescriptors) { + const enumDescriptor = enumType.toDescriptor("proto3"); + return { + format: "Protocol Buffer 3 EnumDescriptorProto", + type: enumDescriptor.$type.toObject(enumDescriptor, descriptorOptions), + fileDescriptorProtos: fileDescriptors + }; + } + function createDefinition(obj2, name, options2, fileDescriptors) { + if (obj2 instanceof Protobuf.Service) { + return createServiceDefinition(obj2, name, options2, fileDescriptors); + } else if (obj2 instanceof Protobuf.Type) { + return createMessageDefinition(obj2, fileDescriptors); + } else if (obj2 instanceof Protobuf.Enum) { + return createEnumDefinition(obj2, fileDescriptors); + } else { + throw new Error("Type mismatch in reflection object handling"); + } + } + function createPackageDefinition(root, options2) { + const def = {}; + root.resolveAll(); + const descriptorList = root.toDescriptor("proto3").file; + const bufferList = descriptorList.map((value) => Buffer.from(descriptor.FileDescriptorProto.encode(value).finish())); + for (const [name, obj2] of getAllHandledReflectionObjects(root, "")) { + def[name] = createDefinition(obj2, name, options2, bufferList); + } + return def; + } + function createPackageDefinitionFromDescriptorSet(decodedDescriptorSet, options2) { + options2 = options2 || {}; + const root = Protobuf.Root.fromDescriptor(decodedDescriptorSet); + root.resolveAll(); + return createPackageDefinition(root, options2); + } + function load(filename, options2) { + return (0, util_1.loadProtosWithOptions)(filename, options2).then((loadedRoot) => { + return createPackageDefinition(loadedRoot, options2); + }); + } + exports2.load = load; + function loadSync(filename, options2) { + const loadedRoot = (0, util_1.loadProtosWithOptionsSync)(filename, options2); + return createPackageDefinition(loadedRoot, options2); + } + exports2.loadSync = loadSync; + function fromJSON(json, options2) { + options2 = options2 || {}; + const loadedRoot = Protobuf.Root.fromJSON(json); + loadedRoot.resolveAll(); + return createPackageDefinition(loadedRoot, options2); + } + exports2.fromJSON = fromJSON; + function loadFileDescriptorSetFromBuffer(descriptorSet, options2) { + const decodedDescriptorSet = descriptor.FileDescriptorSet.decode(descriptorSet); + return createPackageDefinitionFromDescriptorSet(decodedDescriptorSet, options2); + } + exports2.loadFileDescriptorSetFromBuffer = loadFileDescriptorSetFromBuffer; + function loadFileDescriptorSetFromObject(descriptorSet, options2) { + const decodedDescriptorSet = descriptor.FileDescriptorSet.fromObject(descriptorSet); + return createPackageDefinitionFromDescriptorSet(decodedDescriptorSet, options2); + } + exports2.loadFileDescriptorSetFromObject = loadFileDescriptorSetFromObject; + (0, util_1.addCommonProtos)(); + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/channelz.js +var require_channelz = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/channelz.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.setup = exports2.getChannelzServiceDefinition = exports2.getChannelzHandlers = exports2.unregisterChannelzRef = exports2.registerChannelzSocket = exports2.registerChannelzServer = exports2.registerChannelzSubchannel = exports2.registerChannelzChannel = exports2.ChannelzCallTracker = exports2.ChannelzChildrenTracker = exports2.ChannelzTrace = void 0; + var net_1 = require("net"); + var connectivity_state_1 = require_connectivity_state(); + var constants_1 = require_constants10(); + var subchannel_address_1 = require_subchannel_address(); + var admin_1 = require_admin(); + var make_client_1 = require_make_client(); + function channelRefToMessage(ref) { + return { + channel_id: ref.id, + name: ref.name + }; + } + function subchannelRefToMessage(ref) { + return { + subchannel_id: ref.id, + name: ref.name + }; + } + function serverRefToMessage(ref) { + return { + server_id: ref.id + }; + } + function socketRefToMessage(ref) { + return { + socket_id: ref.id, + name: ref.name + }; + } + var TARGET_RETAINED_TRACES = 32; + var ChannelzTrace = class { + constructor() { + this.events = []; + this.eventsLogged = 0; + this.creationTimestamp = /* @__PURE__ */ new Date(); + } + addTrace(severity, description, child) { + const timestamp = /* @__PURE__ */ new Date(); + this.events.push({ + description, + severity, + timestamp, + childChannel: (child === null || child === void 0 ? void 0 : child.kind) === "channel" ? child : void 0, + childSubchannel: (child === null || child === void 0 ? void 0 : child.kind) === "subchannel" ? child : void 0 + }); + if (this.events.length >= TARGET_RETAINED_TRACES * 2) { + this.events = this.events.slice(TARGET_RETAINED_TRACES); + } + this.eventsLogged += 1; + } + getTraceMessage() { + return { + creation_timestamp: dateToProtoTimestamp(this.creationTimestamp), + num_events_logged: this.eventsLogged, + events: this.events.map((event) => { + return { + description: event.description, + severity: event.severity, + timestamp: dateToProtoTimestamp(event.timestamp), + channel_ref: event.childChannel ? channelRefToMessage(event.childChannel) : null, + subchannel_ref: event.childSubchannel ? subchannelRefToMessage(event.childSubchannel) : null + }; + }) + }; + } + }; + exports2.ChannelzTrace = ChannelzTrace; + var ChannelzChildrenTracker = class { + constructor() { + this.channelChildren = /* @__PURE__ */ new Map(); + this.subchannelChildren = /* @__PURE__ */ new Map(); + this.socketChildren = /* @__PURE__ */ new Map(); + } + refChild(child) { + var _a, _b, _c; + switch (child.kind) { + case "channel": { + let trackedChild = (_a = this.channelChildren.get(child.id)) !== null && _a !== void 0 ? _a : { ref: child, count: 0 }; + trackedChild.count += 1; + this.channelChildren.set(child.id, trackedChild); + break; + } + case "subchannel": { + let trackedChild = (_b = this.subchannelChildren.get(child.id)) !== null && _b !== void 0 ? _b : { ref: child, count: 0 }; + trackedChild.count += 1; + this.subchannelChildren.set(child.id, trackedChild); + break; + } + case "socket": { + let trackedChild = (_c = this.socketChildren.get(child.id)) !== null && _c !== void 0 ? _c : { ref: child, count: 0 }; + trackedChild.count += 1; + this.socketChildren.set(child.id, trackedChild); + break; + } + } + } + unrefChild(child) { + switch (child.kind) { + case "channel": { + let trackedChild = this.channelChildren.get(child.id); + if (trackedChild !== void 0) { + trackedChild.count -= 1; + if (trackedChild.count === 0) { + this.channelChildren.delete(child.id); + } else { + this.channelChildren.set(child.id, trackedChild); + } + } + break; + } + case "subchannel": { + let trackedChild = this.subchannelChildren.get(child.id); + if (trackedChild !== void 0) { + trackedChild.count -= 1; + if (trackedChild.count === 0) { + this.subchannelChildren.delete(child.id); + } else { + this.subchannelChildren.set(child.id, trackedChild); + } + } + break; + } + case "socket": { + let trackedChild = this.socketChildren.get(child.id); + if (trackedChild !== void 0) { + trackedChild.count -= 1; + if (trackedChild.count === 0) { + this.socketChildren.delete(child.id); + } else { + this.socketChildren.set(child.id, trackedChild); + } + } + break; + } + } + } + getChildLists() { + const channels2 = []; + for (const { ref } of this.channelChildren.values()) { + channels2.push(ref); + } + const subchannels2 = []; + for (const { ref } of this.subchannelChildren.values()) { + subchannels2.push(ref); + } + const sockets2 = []; + for (const { ref } of this.socketChildren.values()) { + sockets2.push(ref); + } + return { channels: channels2, subchannels: subchannels2, sockets: sockets2 }; + } + }; + exports2.ChannelzChildrenTracker = ChannelzChildrenTracker; + var ChannelzCallTracker = class { + constructor() { + this.callsStarted = 0; + this.callsSucceeded = 0; + this.callsFailed = 0; + this.lastCallStartedTimestamp = null; + } + addCallStarted() { + this.callsStarted += 1; + this.lastCallStartedTimestamp = /* @__PURE__ */ new Date(); + } + addCallSucceeded() { + this.callsSucceeded += 1; + } + addCallFailed() { + this.callsFailed += 1; + } + }; + exports2.ChannelzCallTracker = ChannelzCallTracker; + var nextId = 1; + function getNextId() { + return nextId++; + } + var channels = []; + var subchannels = []; + var servers = []; + var sockets = []; + function registerChannelzChannel(name, getInfo, channelzEnabled) { + const id = getNextId(); + const ref = { id, name, kind: "channel" }; + if (channelzEnabled) { + channels[id] = { ref, getInfo }; + } + return ref; + } + exports2.registerChannelzChannel = registerChannelzChannel; + function registerChannelzSubchannel(name, getInfo, channelzEnabled) { + const id = getNextId(); + const ref = { id, name, kind: "subchannel" }; + if (channelzEnabled) { + subchannels[id] = { ref, getInfo }; + } + return ref; + } + exports2.registerChannelzSubchannel = registerChannelzSubchannel; + function registerChannelzServer(getInfo, channelzEnabled) { + const id = getNextId(); + const ref = { id, kind: "server" }; + if (channelzEnabled) { + servers[id] = { ref, getInfo }; + } + return ref; + } + exports2.registerChannelzServer = registerChannelzServer; + function registerChannelzSocket(name, getInfo, channelzEnabled) { + const id = getNextId(); + const ref = { id, name, kind: "socket" }; + if (channelzEnabled) { + sockets[id] = { ref, getInfo }; + } + return ref; + } + exports2.registerChannelzSocket = registerChannelzSocket; + function unregisterChannelzRef(ref) { + switch (ref.kind) { + case "channel": + delete channels[ref.id]; + return; + case "subchannel": + delete subchannels[ref.id]; + return; + case "server": + delete servers[ref.id]; + return; + case "socket": + delete sockets[ref.id]; + return; + } + } + exports2.unregisterChannelzRef = unregisterChannelzRef; + function parseIPv6Section(addressSection) { + const numberValue = Number.parseInt(addressSection, 16); + return [numberValue / 256 | 0, numberValue % 256]; + } + function parseIPv6Chunk(addressChunk) { + if (addressChunk === "") { + return []; + } + const bytePairs = addressChunk.split(":").map((section) => parseIPv6Section(section)); + const result = []; + return result.concat(...bytePairs); + } + function ipAddressStringToBuffer(ipAddress) { + if ((0, net_1.isIPv4)(ipAddress)) { + return Buffer.from(Uint8Array.from(ipAddress.split(".").map((segment) => Number.parseInt(segment)))); + } else if ((0, net_1.isIPv6)(ipAddress)) { + let leftSection; + let rightSection; + const doubleColonIndex = ipAddress.indexOf("::"); + if (doubleColonIndex === -1) { + leftSection = ipAddress; + rightSection = ""; + } else { + leftSection = ipAddress.substring(0, doubleColonIndex); + rightSection = ipAddress.substring(doubleColonIndex + 2); + } + const leftBuffer = Buffer.from(parseIPv6Chunk(leftSection)); + const rightBuffer = Buffer.from(parseIPv6Chunk(rightSection)); + const middleBuffer = Buffer.alloc(16 - leftBuffer.length - rightBuffer.length, 0); + return Buffer.concat([leftBuffer, middleBuffer, rightBuffer]); + } else { + return null; + } + } + function connectivityStateToMessage(state) { + switch (state) { + case connectivity_state_1.ConnectivityState.CONNECTING: + return { + state: "CONNECTING" + }; + case connectivity_state_1.ConnectivityState.IDLE: + return { + state: "IDLE" + }; + case connectivity_state_1.ConnectivityState.READY: + return { + state: "READY" + }; + case connectivity_state_1.ConnectivityState.SHUTDOWN: + return { + state: "SHUTDOWN" + }; + case connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE: + return { + state: "TRANSIENT_FAILURE" + }; + default: + return { + state: "UNKNOWN" + }; + } + } + function dateToProtoTimestamp(date) { + if (!date) { + return null; + } + const millisSinceEpoch = date.getTime(); + return { + seconds: millisSinceEpoch / 1e3 | 0, + nanos: millisSinceEpoch % 1e3 * 1e6 + }; + } + function getChannelMessage(channelEntry) { + const resolvedInfo = channelEntry.getInfo(); + return { + ref: channelRefToMessage(channelEntry.ref), + data: { + target: resolvedInfo.target, + state: connectivityStateToMessage(resolvedInfo.state), + calls_started: resolvedInfo.callTracker.callsStarted, + calls_succeeded: resolvedInfo.callTracker.callsSucceeded, + calls_failed: resolvedInfo.callTracker.callsFailed, + last_call_started_timestamp: dateToProtoTimestamp(resolvedInfo.callTracker.lastCallStartedTimestamp), + trace: resolvedInfo.trace.getTraceMessage() + }, + channel_ref: resolvedInfo.children.channels.map((ref) => channelRefToMessage(ref)), + subchannel_ref: resolvedInfo.children.subchannels.map((ref) => subchannelRefToMessage(ref)) + }; + } + function GetChannel(call, callback) { + const channelId = Number.parseInt(call.request.channel_id); + const channelEntry = channels[channelId]; + if (channelEntry === void 0) { + callback({ + "code": constants_1.Status.NOT_FOUND, + "details": "No channel data found for id " + channelId + }); + return; + } + callback(null, { channel: getChannelMessage(channelEntry) }); + } + function GetTopChannels(call, callback) { + const maxResults = Number.parseInt(call.request.max_results); + const resultList = []; + let i = Number.parseInt(call.request.start_channel_id); + for (; i < channels.length; i++) { + const channelEntry = channels[i]; + if (channelEntry === void 0) { + continue; + } + resultList.push(getChannelMessage(channelEntry)); + if (resultList.length >= maxResults) { + break; + } + } + callback(null, { + channel: resultList, + end: i >= servers.length + }); + } + function getServerMessage(serverEntry) { + const resolvedInfo = serverEntry.getInfo(); + return { + ref: serverRefToMessage(serverEntry.ref), + data: { + calls_started: resolvedInfo.callTracker.callsStarted, + calls_succeeded: resolvedInfo.callTracker.callsSucceeded, + calls_failed: resolvedInfo.callTracker.callsFailed, + last_call_started_timestamp: dateToProtoTimestamp(resolvedInfo.callTracker.lastCallStartedTimestamp), + trace: resolvedInfo.trace.getTraceMessage() + }, + listen_socket: resolvedInfo.listenerChildren.sockets.map((ref) => socketRefToMessage(ref)) + }; + } + function GetServer(call, callback) { + const serverId = Number.parseInt(call.request.server_id); + const serverEntry = servers[serverId]; + if (serverEntry === void 0) { + callback({ + "code": constants_1.Status.NOT_FOUND, + "details": "No server data found for id " + serverId + }); + return; + } + callback(null, { server: getServerMessage(serverEntry) }); + } + function GetServers(call, callback) { + const maxResults = Number.parseInt(call.request.max_results); + const resultList = []; + let i = Number.parseInt(call.request.start_server_id); + for (; i < servers.length; i++) { + const serverEntry = servers[i]; + if (serverEntry === void 0) { + continue; + } + resultList.push(getServerMessage(serverEntry)); + if (resultList.length >= maxResults) { + break; + } + } + callback(null, { + server: resultList, + end: i >= servers.length + }); + } + function GetSubchannel(call, callback) { + const subchannelId = Number.parseInt(call.request.subchannel_id); + const subchannelEntry = subchannels[subchannelId]; + if (subchannelEntry === void 0) { + callback({ + "code": constants_1.Status.NOT_FOUND, + "details": "No subchannel data found for id " + subchannelId + }); + return; + } + const resolvedInfo = subchannelEntry.getInfo(); + const subchannelMessage = { + ref: subchannelRefToMessage(subchannelEntry.ref), + data: { + target: resolvedInfo.target, + state: connectivityStateToMessage(resolvedInfo.state), + calls_started: resolvedInfo.callTracker.callsStarted, + calls_succeeded: resolvedInfo.callTracker.callsSucceeded, + calls_failed: resolvedInfo.callTracker.callsFailed, + last_call_started_timestamp: dateToProtoTimestamp(resolvedInfo.callTracker.lastCallStartedTimestamp), + trace: resolvedInfo.trace.getTraceMessage() + }, + socket_ref: resolvedInfo.children.sockets.map((ref) => socketRefToMessage(ref)) + }; + callback(null, { subchannel: subchannelMessage }); + } + function subchannelAddressToAddressMessage(subchannelAddress) { + var _a; + if ((0, subchannel_address_1.isTcpSubchannelAddress)(subchannelAddress)) { + return { + address: "tcpip_address", + tcpip_address: { + ip_address: (_a = ipAddressStringToBuffer(subchannelAddress.host)) !== null && _a !== void 0 ? _a : void 0, + port: subchannelAddress.port + } + }; + } else { + return { + address: "uds_address", + uds_address: { + filename: subchannelAddress.path + } + }; + } + } + function GetSocket(call, callback) { + var _a, _b, _c, _d, _e; + const socketId = Number.parseInt(call.request.socket_id); + const socketEntry = sockets[socketId]; + if (socketEntry === void 0) { + callback({ + "code": constants_1.Status.NOT_FOUND, + "details": "No socket data found for id " + socketId + }); + return; + } + const resolvedInfo = socketEntry.getInfo(); + const securityMessage = resolvedInfo.security ? { + model: "tls", + tls: { + cipher_suite: resolvedInfo.security.cipherSuiteStandardName ? "standard_name" : "other_name", + standard_name: (_a = resolvedInfo.security.cipherSuiteStandardName) !== null && _a !== void 0 ? _a : void 0, + other_name: (_b = resolvedInfo.security.cipherSuiteOtherName) !== null && _b !== void 0 ? _b : void 0, + local_certificate: (_c = resolvedInfo.security.localCertificate) !== null && _c !== void 0 ? _c : void 0, + remote_certificate: (_d = resolvedInfo.security.remoteCertificate) !== null && _d !== void 0 ? _d : void 0 + } + } : null; + const socketMessage = { + ref: socketRefToMessage(socketEntry.ref), + local: resolvedInfo.localAddress ? subchannelAddressToAddressMessage(resolvedInfo.localAddress) : null, + remote: resolvedInfo.remoteAddress ? subchannelAddressToAddressMessage(resolvedInfo.remoteAddress) : null, + remote_name: (_e = resolvedInfo.remoteName) !== null && _e !== void 0 ? _e : void 0, + security: securityMessage, + data: { + keep_alives_sent: resolvedInfo.keepAlivesSent, + streams_started: resolvedInfo.streamsStarted, + streams_succeeded: resolvedInfo.streamsSucceeded, + streams_failed: resolvedInfo.streamsFailed, + last_local_stream_created_timestamp: dateToProtoTimestamp(resolvedInfo.lastLocalStreamCreatedTimestamp), + last_remote_stream_created_timestamp: dateToProtoTimestamp(resolvedInfo.lastRemoteStreamCreatedTimestamp), + messages_received: resolvedInfo.messagesReceived, + messages_sent: resolvedInfo.messagesSent, + last_message_received_timestamp: dateToProtoTimestamp(resolvedInfo.lastMessageReceivedTimestamp), + last_message_sent_timestamp: dateToProtoTimestamp(resolvedInfo.lastMessageSentTimestamp), + local_flow_control_window: resolvedInfo.localFlowControlWindow ? { value: resolvedInfo.localFlowControlWindow } : null, + remote_flow_control_window: resolvedInfo.remoteFlowControlWindow ? { value: resolvedInfo.remoteFlowControlWindow } : null + } + }; + callback(null, { socket: socketMessage }); + } + function GetServerSockets(call, callback) { + const serverId = Number.parseInt(call.request.server_id); + const serverEntry = servers[serverId]; + if (serverEntry === void 0) { + callback({ + "code": constants_1.Status.NOT_FOUND, + "details": "No server data found for id " + serverId + }); + return; + } + const startId = Number.parseInt(call.request.start_socket_id); + const maxResults = Number.parseInt(call.request.max_results); + const resolvedInfo = serverEntry.getInfo(); + const allSockets = resolvedInfo.sessionChildren.sockets.sort((ref1, ref2) => ref1.id - ref2.id); + const resultList = []; + let i = 0; + for (; i < allSockets.length; i++) { + if (allSockets[i].id >= startId) { + resultList.push(socketRefToMessage(allSockets[i])); + if (resultList.length >= maxResults) { + break; + } + } + } + callback(null, { + socket_ref: resultList, + end: i >= allSockets.length + }); + } + function getChannelzHandlers() { + return { + GetChannel, + GetTopChannels, + GetServer, + GetServers, + GetSubchannel, + GetSocket, + GetServerSockets + }; + } + exports2.getChannelzHandlers = getChannelzHandlers; + var loadedChannelzDefinition = null; + function getChannelzServiceDefinition() { + if (loadedChannelzDefinition) { + return loadedChannelzDefinition; + } + const loaderLoadSync = require_src24().loadSync; + const loadedProto = loaderLoadSync("channelz.proto", { + keepCase: true, + longs: String, + enums: String, + defaults: true, + oneofs: true, + includeDirs: [ + `${__dirname}/../../proto` + ] + }); + const channelzGrpcObject = (0, make_client_1.loadPackageDefinition)(loadedProto); + loadedChannelzDefinition = channelzGrpcObject.grpc.channelz.v1.Channelz.service; + return loadedChannelzDefinition; + } + exports2.getChannelzServiceDefinition = getChannelzServiceDefinition; + function setup() { + (0, admin_1.registerAdminService)(getChannelzServiceDefinition, getChannelzHandlers); + } + exports2.setup = setup; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/subchannel.js +var require_subchannel = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/subchannel.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Subchannel = void 0; + var connectivity_state_1 = require_connectivity_state(); + var backoff_timeout_1 = require_backoff_timeout(); + var logging = require_logging(); + var constants_1 = require_constants10(); + var uri_parser_1 = require_uri_parser(); + var subchannel_address_1 = require_subchannel_address(); + var channelz_1 = require_channelz(); + var TRACER_NAME = "subchannel"; + var KEEPALIVE_MAX_TIME_MS = ~(1 << 31); + var Subchannel = class { + /** + * A class representing a connection to a single backend. + * @param channelTarget The target string for the channel as a whole + * @param subchannelAddress The address for the backend that this subchannel + * will connect to + * @param options The channel options, plus any specific subchannel options + * for this subchannel + * @param credentials The channel credentials used to establish this + * connection + */ + constructor(channelTarget, subchannelAddress, options2, credentials, connector) { + var _a; + this.channelTarget = channelTarget; + this.subchannelAddress = subchannelAddress; + this.options = options2; + this.credentials = credentials; + this.connector = connector; + this.connectivityState = connectivity_state_1.ConnectivityState.IDLE; + this.transport = null; + this.continueConnecting = false; + this.stateListeners = /* @__PURE__ */ new Set(); + this.refcount = 0; + this.channelzEnabled = true; + this.callTracker = new channelz_1.ChannelzCallTracker(); + this.childrenTracker = new channelz_1.ChannelzChildrenTracker(); + this.streamTracker = new channelz_1.ChannelzCallTracker(); + const backoffOptions = { + initialDelay: options2["grpc.initial_reconnect_backoff_ms"], + maxDelay: options2["grpc.max_reconnect_backoff_ms"] + }; + this.backoffTimeout = new backoff_timeout_1.BackoffTimeout(() => { + this.handleBackoffTimer(); + }, backoffOptions); + this.subchannelAddressString = (0, subchannel_address_1.subchannelAddressToString)(subchannelAddress); + this.keepaliveTime = (_a = options2["grpc.keepalive_time_ms"]) !== null && _a !== void 0 ? _a : -1; + if (options2["grpc.enable_channelz"] === 0) { + this.channelzEnabled = false; + } + this.channelzTrace = new channelz_1.ChannelzTrace(); + this.channelzRef = (0, channelz_1.registerChannelzSubchannel)(this.subchannelAddressString, () => this.getChannelzInfo(), this.channelzEnabled); + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", "Subchannel created"); + } + this.trace("Subchannel constructed with options " + JSON.stringify(options2, void 0, 2)); + } + getChannelzInfo() { + return { + state: this.connectivityState, + trace: this.channelzTrace, + callTracker: this.callTracker, + children: this.childrenTracker.getChildLists(), + target: this.subchannelAddressString + }; + } + trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, "(" + this.channelzRef.id + ") " + this.subchannelAddressString + " " + text); + } + refTrace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, "subchannel_refcount", "(" + this.channelzRef.id + ") " + this.subchannelAddressString + " " + text); + } + handleBackoffTimer() { + if (this.continueConnecting) { + this.transitionToState([connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE], connectivity_state_1.ConnectivityState.CONNECTING); + } else { + this.transitionToState([connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE], connectivity_state_1.ConnectivityState.IDLE); + } + } + /** + * Start a backoff timer with the current nextBackoff timeout + */ + startBackoff() { + this.backoffTimeout.runOnce(); + } + stopBackoff() { + this.backoffTimeout.stop(); + this.backoffTimeout.reset(); + } + startConnectingInternal() { + let options2 = this.options; + if (options2["grpc.keepalive_time_ms"]) { + const adjustedKeepaliveTime = Math.min(this.keepaliveTime, KEEPALIVE_MAX_TIME_MS); + options2 = Object.assign(Object.assign({}, options2), { "grpc.keepalive_time_ms": adjustedKeepaliveTime }); + } + this.connector.connect(this.subchannelAddress, this.credentials, options2).then((transport) => { + if (this.transitionToState([connectivity_state_1.ConnectivityState.CONNECTING], connectivity_state_1.ConnectivityState.READY)) { + this.transport = transport; + if (this.channelzEnabled) { + this.childrenTracker.refChild(transport.getChannelzRef()); + } + transport.addDisconnectListener((tooManyPings) => { + this.transitionToState([connectivity_state_1.ConnectivityState.READY], connectivity_state_1.ConnectivityState.IDLE); + if (tooManyPings && this.keepaliveTime > 0) { + this.keepaliveTime *= 2; + logging.log(constants_1.LogVerbosity.ERROR, `Connection to ${(0, uri_parser_1.uriToString)(this.channelTarget)} at ${this.subchannelAddressString} rejected by server because of excess pings. Increasing ping interval to ${this.keepaliveTime} ms`); + } + }); + } + }, (error) => { + this.transitionToState([connectivity_state_1.ConnectivityState.CONNECTING], connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE); + }); + } + /** + * Initiate a state transition from any element of oldStates to the new + * state. If the current connectivityState is not in oldStates, do nothing. + * @param oldStates The set of states to transition from + * @param newState The state to transition to + * @returns True if the state changed, false otherwise + */ + transitionToState(oldStates, newState) { + var _a, _b; + if (oldStates.indexOf(this.connectivityState) === -1) { + return false; + } + this.trace(connectivity_state_1.ConnectivityState[this.connectivityState] + " -> " + connectivity_state_1.ConnectivityState[newState]); + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", connectivity_state_1.ConnectivityState[this.connectivityState] + " -> " + connectivity_state_1.ConnectivityState[newState]); + } + const previousState = this.connectivityState; + this.connectivityState = newState; + switch (newState) { + case connectivity_state_1.ConnectivityState.READY: + this.stopBackoff(); + break; + case connectivity_state_1.ConnectivityState.CONNECTING: + this.startBackoff(); + this.startConnectingInternal(); + this.continueConnecting = false; + break; + case connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE: + if (this.channelzEnabled && this.transport) { + this.childrenTracker.unrefChild(this.transport.getChannelzRef()); + } + (_a = this.transport) === null || _a === void 0 ? void 0 : _a.shutdown(); + this.transport = null; + if (!this.backoffTimeout.isRunning()) { + process.nextTick(() => { + this.handleBackoffTimer(); + }); + } + break; + case connectivity_state_1.ConnectivityState.IDLE: + if (this.channelzEnabled && this.transport) { + this.childrenTracker.unrefChild(this.transport.getChannelzRef()); + } + (_b = this.transport) === null || _b === void 0 ? void 0 : _b.shutdown(); + this.transport = null; + break; + default: + throw new Error(`Invalid state: unknown ConnectivityState ${newState}`); + } + for (const listener of this.stateListeners) { + listener(this, previousState, newState, this.keepaliveTime); + } + return true; + } + ref() { + this.refTrace("refcount " + this.refcount + " -> " + (this.refcount + 1)); + this.refcount += 1; + } + unref() { + this.refTrace("refcount " + this.refcount + " -> " + (this.refcount - 1)); + this.refcount -= 1; + if (this.refcount === 0) { + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", "Shutting down"); + } + if (this.channelzEnabled) { + (0, channelz_1.unregisterChannelzRef)(this.channelzRef); + } + process.nextTick(() => { + this.transitionToState([connectivity_state_1.ConnectivityState.CONNECTING, connectivity_state_1.ConnectivityState.READY], connectivity_state_1.ConnectivityState.IDLE); + }); + } + } + unrefIfOneRef() { + if (this.refcount === 1) { + this.unref(); + return true; + } + return false; + } + createCall(metadata2, host, method, listener) { + if (!this.transport) { + throw new Error("Cannot create call, subchannel not READY"); + } + let statsTracker; + if (this.channelzEnabled) { + this.callTracker.addCallStarted(); + this.streamTracker.addCallStarted(); + statsTracker = { + onCallEnd: (status) => { + if (status.code === constants_1.Status.OK) { + this.callTracker.addCallSucceeded(); + } else { + this.callTracker.addCallFailed(); + } + } + }; + } else { + statsTracker = {}; + } + return this.transport.createCall(metadata2, host, method, listener, statsTracker); + } + /** + * If the subchannel is currently IDLE, start connecting and switch to the + * CONNECTING state. If the subchannel is current in TRANSIENT_FAILURE, + * the next time it would transition to IDLE, start connecting again instead. + * Otherwise, do nothing. + */ + startConnecting() { + process.nextTick(() => { + if (!this.transitionToState([connectivity_state_1.ConnectivityState.IDLE], connectivity_state_1.ConnectivityState.CONNECTING)) { + if (this.connectivityState === connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE) { + this.continueConnecting = true; + } + } + }); + } + /** + * Get the subchannel's current connectivity state. + */ + getConnectivityState() { + return this.connectivityState; + } + /** + * Add a listener function to be called whenever the subchannel's + * connectivity state changes. + * @param listener + */ + addConnectivityStateListener(listener) { + this.stateListeners.add(listener); + } + /** + * Remove a listener previously added with `addConnectivityStateListener` + * @param listener A reference to a function previously passed to + * `addConnectivityStateListener` + */ + removeConnectivityStateListener(listener) { + this.stateListeners.delete(listener); + } + /** + * Reset the backoff timeout, and immediately start connecting if in backoff. + */ + resetBackoff() { + process.nextTick(() => { + this.backoffTimeout.reset(); + this.transitionToState([connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE], connectivity_state_1.ConnectivityState.CONNECTING); + }); + } + getAddress() { + return this.subchannelAddressString; + } + getChannelzRef() { + return this.channelzRef; + } + getRealSubchannel() { + return this; + } + throttleKeepalive(newKeepaliveTime) { + if (newKeepaliveTime > this.keepaliveTime) { + this.keepaliveTime = newKeepaliveTime; + } + } + }; + exports2.Subchannel = Subchannel; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/http_proxy.js +var require_http_proxy = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/http_proxy.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getProxiedConnection = exports2.mapProxyName = void 0; + var logging_1 = require_logging(); + var constants_1 = require_constants10(); + var resolver_1 = require_resolver(); + var http4 = require("http"); + var tls = require("tls"); + var logging = require_logging(); + var subchannel_address_1 = require_subchannel_address(); + var uri_parser_1 = require_uri_parser(); + var url_1 = require("url"); + var TRACER_NAME = "proxy"; + function trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, text); + } + function getProxyInfo() { + let proxyEnv = ""; + let envVar = ""; + if (process.env.grpc_proxy) { + envVar = "grpc_proxy"; + proxyEnv = process.env.grpc_proxy; + } else if (process.env.https_proxy) { + envVar = "https_proxy"; + proxyEnv = process.env.https_proxy; + } else if (process.env.http_proxy) { + envVar = "http_proxy"; + proxyEnv = process.env.http_proxy; + } else { + return {}; + } + let proxyUrl; + try { + proxyUrl = new url_1.URL(proxyEnv); + } catch (e) { + (0, logging_1.log)(constants_1.LogVerbosity.ERROR, `cannot parse value of "${envVar}" env var`); + return {}; + } + if (proxyUrl.protocol !== "http:") { + (0, logging_1.log)(constants_1.LogVerbosity.ERROR, `"${proxyUrl.protocol}" scheme not supported in proxy URI`); + return {}; + } + let userCred = null; + if (proxyUrl.username) { + if (proxyUrl.password) { + (0, logging_1.log)(constants_1.LogVerbosity.INFO, "userinfo found in proxy URI"); + userCred = `${proxyUrl.username}:${proxyUrl.password}`; + } else { + userCred = proxyUrl.username; + } + } + const hostname = proxyUrl.hostname; + let port = proxyUrl.port; + if (port === "") { + port = "80"; + } + const result = { + address: `${hostname}:${port}` + }; + if (userCred) { + result.creds = userCred; + } + trace("Proxy server " + result.address + " set by environment variable " + envVar); + return result; + } + function getNoProxyHostList() { + let noProxyStr = process.env.no_grpc_proxy; + let envVar = "no_grpc_proxy"; + if (!noProxyStr) { + noProxyStr = process.env.no_proxy; + envVar = "no_proxy"; + } + if (noProxyStr) { + trace("No proxy server list set by environment variable " + envVar); + return noProxyStr.split(","); + } else { + return []; + } + } + function mapProxyName(target, options2) { + var _a; + const noProxyResult = { + target, + extraOptions: {} + }; + if (((_a = options2["grpc.enable_http_proxy"]) !== null && _a !== void 0 ? _a : 1) === 0) { + return noProxyResult; + } + if (target.scheme === "unix") { + return noProxyResult; + } + const proxyInfo = getProxyInfo(); + if (!proxyInfo.address) { + return noProxyResult; + } + const hostPort = (0, uri_parser_1.splitHostPort)(target.path); + if (!hostPort) { + return noProxyResult; + } + const serverHost = hostPort.host; + for (const host of getNoProxyHostList()) { + if (host === serverHost) { + trace("Not using proxy for target in no_proxy list: " + (0, uri_parser_1.uriToString)(target)); + return noProxyResult; + } + } + const extraOptions = { + "grpc.http_connect_target": (0, uri_parser_1.uriToString)(target) + }; + if (proxyInfo.creds) { + extraOptions["grpc.http_connect_creds"] = proxyInfo.creds; + } + return { + target: { + scheme: "dns", + path: proxyInfo.address + }, + extraOptions + }; + } + exports2.mapProxyName = mapProxyName; + function getProxiedConnection(address, channelOptions, connectionOptions) { + if (!("grpc.http_connect_target" in channelOptions)) { + return Promise.resolve({}); + } + const realTarget = channelOptions["grpc.http_connect_target"]; + const parsedTarget = (0, uri_parser_1.parseUri)(realTarget); + if (parsedTarget === null) { + return Promise.resolve({}); + } + const options2 = { + method: "CONNECT", + path: parsedTarget.path + }; + const headers = { + Host: parsedTarget.path + }; + if ((0, subchannel_address_1.isTcpSubchannelAddress)(address)) { + options2.host = address.host; + options2.port = address.port; + } else { + options2.socketPath = address.path; + } + if ("grpc.http_connect_creds" in channelOptions) { + headers["Proxy-Authorization"] = "Basic " + Buffer.from(channelOptions["grpc.http_connect_creds"]).toString("base64"); + } + options2.headers = headers; + const proxyAddressString = (0, subchannel_address_1.subchannelAddressToString)(address); + trace("Using proxy " + proxyAddressString + " to connect to " + options2.path); + return new Promise((resolve8, reject) => { + const request = http4.request(options2); + request.once("connect", (res, socket, head) => { + var _a; + request.removeAllListeners(); + socket.removeAllListeners(); + if (res.statusCode === 200) { + trace("Successfully connected to " + options2.path + " through proxy " + proxyAddressString); + if ("secureContext" in connectionOptions) { + const targetPath = (0, resolver_1.getDefaultAuthority)(parsedTarget); + const hostPort = (0, uri_parser_1.splitHostPort)(targetPath); + const remoteHost = (_a = hostPort === null || hostPort === void 0 ? void 0 : hostPort.host) !== null && _a !== void 0 ? _a : targetPath; + const cts = tls.connect(Object.assign({ host: remoteHost, servername: remoteHost, socket }, connectionOptions), () => { + trace("Successfully established a TLS connection to " + options2.path + " through proxy " + proxyAddressString); + resolve8({ socket: cts, realTarget: parsedTarget }); + }); + cts.on("error", (error) => { + trace("Failed to establish a TLS connection to " + options2.path + " through proxy " + proxyAddressString + " with error " + error.message); + reject(); + }); + } else { + trace("Successfully established a plaintext connection to " + options2.path + " through proxy " + proxyAddressString); + resolve8({ + socket, + realTarget: parsedTarget + }); + } + } else { + (0, logging_1.log)(constants_1.LogVerbosity.ERROR, "Failed to connect to " + options2.path + " through proxy " + proxyAddressString + " with status " + res.statusCode); + reject(); + } + }); + request.once("error", (err2) => { + request.removeAllListeners(); + (0, logging_1.log)(constants_1.LogVerbosity.ERROR, "Failed to connect to proxy " + proxyAddressString + " with error " + err2.message); + reject(); + }); + request.end(); + }); + } + exports2.getProxiedConnection = getProxiedConnection; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/stream-decoder.js +var require_stream_decoder = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/stream-decoder.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.StreamDecoder = void 0; + var ReadState; + (function(ReadState2) { + ReadState2[ReadState2["NO_DATA"] = 0] = "NO_DATA"; + ReadState2[ReadState2["READING_SIZE"] = 1] = "READING_SIZE"; + ReadState2[ReadState2["READING_MESSAGE"] = 2] = "READING_MESSAGE"; + })(ReadState || (ReadState = {})); + var StreamDecoder = class { + constructor() { + this.readState = ReadState.NO_DATA; + this.readCompressFlag = Buffer.alloc(1); + this.readPartialSize = Buffer.alloc(4); + this.readSizeRemaining = 4; + this.readMessageSize = 0; + this.readPartialMessage = []; + this.readMessageRemaining = 0; + } + write(data) { + let readHead = 0; + let toRead; + const result = []; + while (readHead < data.length) { + switch (this.readState) { + case ReadState.NO_DATA: + this.readCompressFlag = data.slice(readHead, readHead + 1); + readHead += 1; + this.readState = ReadState.READING_SIZE; + this.readPartialSize.fill(0); + this.readSizeRemaining = 4; + this.readMessageSize = 0; + this.readMessageRemaining = 0; + this.readPartialMessage = []; + break; + case ReadState.READING_SIZE: + toRead = Math.min(data.length - readHead, this.readSizeRemaining); + data.copy(this.readPartialSize, 4 - this.readSizeRemaining, readHead, readHead + toRead); + this.readSizeRemaining -= toRead; + readHead += toRead; + if (this.readSizeRemaining === 0) { + this.readMessageSize = this.readPartialSize.readUInt32BE(0); + this.readMessageRemaining = this.readMessageSize; + if (this.readMessageRemaining > 0) { + this.readState = ReadState.READING_MESSAGE; + } else { + const message = Buffer.concat([this.readCompressFlag, this.readPartialSize], 5); + this.readState = ReadState.NO_DATA; + result.push(message); + } + } + break; + case ReadState.READING_MESSAGE: + toRead = Math.min(data.length - readHead, this.readMessageRemaining); + this.readPartialMessage.push(data.slice(readHead, readHead + toRead)); + this.readMessageRemaining -= toRead; + readHead += toRead; + if (this.readMessageRemaining === 0) { + const framedMessageBuffers = [ + this.readCompressFlag, + this.readPartialSize + ].concat(this.readPartialMessage); + const framedMessage = Buffer.concat(framedMessageBuffers, this.readMessageSize + 5); + this.readState = ReadState.NO_DATA; + result.push(framedMessage); + } + break; + default: + throw new Error("Unexpected read state"); + } + } + return result; + } + }; + exports2.StreamDecoder = StreamDecoder; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/subchannel-call.js +var require_subchannel_call = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/subchannel-call.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Http2SubchannelCall = void 0; + var http22 = require("http2"); + var os8 = require("os"); + var constants_1 = require_constants10(); + var metadata_1 = require_metadata3(); + var stream_decoder_1 = require_stream_decoder(); + var logging = require_logging(); + var constants_2 = require_constants10(); + var TRACER_NAME = "subchannel_call"; + function getSystemErrorName(errno) { + for (const [name, num] of Object.entries(os8.constants.errno)) { + if (num === errno) { + return name; + } + } + return "Unknown system error " + errno; + } + var Http2SubchannelCall = class { + constructor(http2Stream, callEventTracker, listener, transport, callId) { + this.http2Stream = http2Stream; + this.callEventTracker = callEventTracker; + this.listener = listener; + this.transport = transport; + this.callId = callId; + this.decoder = new stream_decoder_1.StreamDecoder(); + this.isReadFilterPending = false; + this.isPushPending = false; + this.canPush = false; + this.readsClosed = false; + this.statusOutput = false; + this.unpushedReadMessages = []; + this.mappedStatusCode = constants_1.Status.UNKNOWN; + this.finalStatus = null; + this.internalError = null; + http2Stream.on("response", (headers, flags2) => { + let headersString = ""; + for (const header of Object.keys(headers)) { + headersString += " " + header + ": " + headers[header] + "\n"; + } + this.trace("Received server headers:\n" + headersString); + switch (headers[":status"]) { + case 400: + this.mappedStatusCode = constants_1.Status.INTERNAL; + break; + case 401: + this.mappedStatusCode = constants_1.Status.UNAUTHENTICATED; + break; + case 403: + this.mappedStatusCode = constants_1.Status.PERMISSION_DENIED; + break; + case 404: + this.mappedStatusCode = constants_1.Status.UNIMPLEMENTED; + break; + case 429: + case 502: + case 503: + case 504: + this.mappedStatusCode = constants_1.Status.UNAVAILABLE; + break; + default: + this.mappedStatusCode = constants_1.Status.UNKNOWN; + } + if (flags2 & http22.constants.NGHTTP2_FLAG_END_STREAM) { + this.handleTrailers(headers); + } else { + let metadata2; + try { + metadata2 = metadata_1.Metadata.fromHttp2Headers(headers); + } catch (error) { + this.endCall({ + code: constants_1.Status.UNKNOWN, + details: error.message, + metadata: new metadata_1.Metadata() + }); + return; + } + this.listener.onReceiveMetadata(metadata2); + } + }); + http2Stream.on("trailers", (headers) => { + this.handleTrailers(headers); + }); + http2Stream.on("data", (data) => { + if (this.statusOutput) { + return; + } + this.trace("receive HTTP/2 data frame of length " + data.length); + const messages = this.decoder.write(data); + for (const message of messages) { + this.trace("parsed message of length " + message.length); + this.callEventTracker.addMessageReceived(); + this.tryPush(message); + } + }); + http2Stream.on("end", () => { + this.readsClosed = true; + this.maybeOutputStatus(); + }); + http2Stream.on("close", () => { + process.nextTick(() => { + var _a; + this.trace("HTTP/2 stream closed with code " + http2Stream.rstCode); + if (((_a = this.finalStatus) === null || _a === void 0 ? void 0 : _a.code) === constants_1.Status.OK) { + return; + } + let code; + let details = ""; + switch (http2Stream.rstCode) { + case http22.constants.NGHTTP2_NO_ERROR: + if (this.finalStatus !== null) { + return; + } + code = constants_1.Status.INTERNAL; + details = `Received RST_STREAM with code ${http2Stream.rstCode}`; + break; + case http22.constants.NGHTTP2_REFUSED_STREAM: + code = constants_1.Status.UNAVAILABLE; + details = "Stream refused by server"; + break; + case http22.constants.NGHTTP2_CANCEL: + code = constants_1.Status.CANCELLED; + details = "Call cancelled"; + break; + case http22.constants.NGHTTP2_ENHANCE_YOUR_CALM: + code = constants_1.Status.RESOURCE_EXHAUSTED; + details = "Bandwidth exhausted or memory limit exceeded"; + break; + case http22.constants.NGHTTP2_INADEQUATE_SECURITY: + code = constants_1.Status.PERMISSION_DENIED; + details = "Protocol not secure enough"; + break; + case http22.constants.NGHTTP2_INTERNAL_ERROR: + code = constants_1.Status.INTERNAL; + if (this.internalError === null) { + details = `Received RST_STREAM with code ${http2Stream.rstCode} (Internal server error)`; + } else { + if (this.internalError.code === "ECONNRESET" || this.internalError.code === "ETIMEDOUT") { + code = constants_1.Status.UNAVAILABLE; + details = this.internalError.message; + } else { + details = `Received RST_STREAM with code ${http2Stream.rstCode} triggered by internal client error: ${this.internalError.message}`; + } + } + break; + default: + code = constants_1.Status.INTERNAL; + details = `Received RST_STREAM with code ${http2Stream.rstCode}`; + } + this.endCall({ code, details, metadata: new metadata_1.Metadata(), rstCode: http2Stream.rstCode }); + }); + }); + http2Stream.on("error", (err2) => { + if (err2.code !== "ERR_HTTP2_STREAM_ERROR") { + this.trace("Node error event: message=" + err2.message + " code=" + err2.code + " errno=" + getSystemErrorName(err2.errno) + " syscall=" + err2.syscall); + this.internalError = err2; + } + this.callEventTracker.onStreamEnd(false); + }); + } + onDisconnect() { + this.endCall({ + code: constants_1.Status.UNAVAILABLE, + details: "Connection dropped", + metadata: new metadata_1.Metadata() + }); + } + outputStatus() { + if (!this.statusOutput) { + this.statusOutput = true; + this.trace("ended with status: code=" + this.finalStatus.code + ' details="' + this.finalStatus.details + '"'); + this.callEventTracker.onCallEnd(this.finalStatus); + process.nextTick(() => { + this.listener.onReceiveStatus(this.finalStatus); + }); + this.http2Stream.resume(); + } + } + trace(text) { + logging.trace(constants_2.LogVerbosity.DEBUG, TRACER_NAME, "[" + this.callId + "] " + text); + } + /** + * On first call, emits a 'status' event with the given StatusObject. + * Subsequent calls are no-ops. + * @param status The status of the call. + */ + endCall(status) { + if (this.finalStatus === null || this.finalStatus.code === constants_1.Status.OK) { + this.finalStatus = status; + this.maybeOutputStatus(); + } + this.destroyHttp2Stream(); + } + maybeOutputStatus() { + if (this.finalStatus !== null) { + if (this.finalStatus.code !== constants_1.Status.OK || this.readsClosed && this.unpushedReadMessages.length === 0 && !this.isReadFilterPending && !this.isPushPending) { + this.outputStatus(); + } + } + } + push(message) { + this.trace("pushing to reader message of length " + (message instanceof Buffer ? message.length : null)); + this.canPush = false; + this.isPushPending = true; + process.nextTick(() => { + this.isPushPending = false; + if (this.statusOutput) { + return; + } + this.listener.onReceiveMessage(message); + this.maybeOutputStatus(); + }); + } + tryPush(messageBytes) { + if (this.canPush) { + this.http2Stream.pause(); + this.push(messageBytes); + } else { + this.trace("unpushedReadMessages.push message of length " + messageBytes.length); + this.unpushedReadMessages.push(messageBytes); + } + } + handleTrailers(headers) { + this.callEventTracker.onStreamEnd(true); + let headersString = ""; + for (const header of Object.keys(headers)) { + headersString += " " + header + ": " + headers[header] + "\n"; + } + this.trace("Received server trailers:\n" + headersString); + let metadata2; + try { + metadata2 = metadata_1.Metadata.fromHttp2Headers(headers); + } catch (e) { + metadata2 = new metadata_1.Metadata(); + } + const metadataMap = metadata2.getMap(); + let code = this.mappedStatusCode; + if (code === constants_1.Status.UNKNOWN && typeof metadataMap["grpc-status"] === "string") { + const receivedStatus = Number(metadataMap["grpc-status"]); + if (receivedStatus in constants_1.Status) { + code = receivedStatus; + this.trace("received status code " + receivedStatus + " from server"); + } + metadata2.remove("grpc-status"); + } + let details = ""; + if (typeof metadataMap["grpc-message"] === "string") { + try { + details = decodeURI(metadataMap["grpc-message"]); + } catch (e) { + details = metadataMap["grpc-message"]; + } + metadata2.remove("grpc-message"); + this.trace('received status details string "' + details + '" from server'); + } + const status = { code, details, metadata: metadata2 }; + this.endCall(status); + } + destroyHttp2Stream() { + var _a; + if (!this.http2Stream.destroyed) { + let code; + if (((_a = this.finalStatus) === null || _a === void 0 ? void 0 : _a.code) === constants_1.Status.OK) { + code = http22.constants.NGHTTP2_NO_ERROR; + } else { + code = http22.constants.NGHTTP2_CANCEL; + } + this.trace("close http2 stream with code " + code); + this.http2Stream.close(code); + } + } + cancelWithStatus(status, details) { + this.trace("cancelWithStatus code: " + status + ' details: "' + details + '"'); + this.endCall({ code: status, details, metadata: new metadata_1.Metadata() }); + } + getStatus() { + return this.finalStatus; + } + getPeer() { + return this.transport.getPeerName(); + } + getCallNumber() { + return this.callId; + } + startRead() { + if (this.finalStatus !== null && this.finalStatus.code !== constants_1.Status.OK) { + this.readsClosed = true; + this.maybeOutputStatus(); + return; + } + this.canPush = true; + if (this.unpushedReadMessages.length > 0) { + const nextMessage = this.unpushedReadMessages.shift(); + this.push(nextMessage); + return; + } + this.http2Stream.resume(); + } + sendMessageWithContext(context2, message) { + this.trace("write() called with message of length " + message.length); + const cb = (error) => { + var _a; + let code = constants_1.Status.UNAVAILABLE; + if ((error === null || error === void 0 ? void 0 : error.code) === "ERR_STREAM_WRITE_AFTER_END") { + code = constants_1.Status.INTERNAL; + } + if (error) { + this.cancelWithStatus(code, `Write error: ${error.message}`); + } + (_a = context2.callback) === null || _a === void 0 ? void 0 : _a.call(context2); + }; + this.trace("sending data chunk of length " + message.length); + this.callEventTracker.addMessageSent(); + try { + this.http2Stream.write(message, cb); + } catch (error) { + this.endCall({ + code: constants_1.Status.UNAVAILABLE, + details: `Write failed with error ${error.message}`, + metadata: new metadata_1.Metadata() + }); + } + } + halfClose() { + this.trace("end() called"); + this.trace("calling end() on HTTP/2 stream"); + this.http2Stream.end(); + } + }; + exports2.Http2SubchannelCall = Http2SubchannelCall; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/call-number.js +var require_call_number = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/call-number.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getNextCallNumber = void 0; + var nextCallNumber = 0; + function getNextCallNumber() { + return nextCallNumber++; + } + exports2.getNextCallNumber = getNextCallNumber; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/package.json +var require_package2 = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/package.json"(exports2, module2) { + module2.exports = { + name: "@grpc/grpc-js", + version: "1.8.20", + description: "gRPC Library for Node - pure JS implementation", + homepage: "https://grpc.io/", + repository: "https://github.com/grpc/grpc-node/tree/master/packages/grpc-js", + main: "build/src/index.js", + engines: { + node: "^8.13.0 || >=10.10.0" + }, + keywords: [], + author: { + name: "Google Inc." + }, + types: "build/src/index.d.ts", + license: "Apache-2.0", + devDependencies: { + "@types/gulp": "^4.0.6", + "@types/gulp-mocha": "0.0.32", + "@types/lodash": "^4.14.186", + "@types/mocha": "^5.2.6", + "@types/ncp": "^2.0.1", + "@types/pify": "^3.0.2", + "@types/semver": "^7.3.9", + "clang-format": "^1.0.55", + execa: "^2.0.3", + gts: "^3.1.1", + gulp: "^4.0.2", + "gulp-mocha": "^6.0.0", + lodash: "^4.17.4", + madge: "^5.0.1", + "mocha-jenkins-reporter": "^0.4.1", + ncp: "^2.0.0", + pify: "^4.0.1", + rimraf: "^3.0.2", + semver: "^7.3.5", + "ts-node": "^8.3.0", + typescript: "^4.8.4" + }, + contributors: [ + { + name: "Google Inc." + } + ], + scripts: { + build: "npm run compile", + clean: "rimraf ./build", + compile: "tsc -p .", + format: 'clang-format -i -style="{Language: JavaScript, BasedOnStyle: Google, ColumnLimit: 80}" src/*.ts test/*.ts', + lint: "npm run check", + prepare: "npm run generate-types && npm run compile", + test: "gulp test", + check: "gts check src/**/*.ts", + fix: "gts fix src/*.ts", + pretest: "npm run generate-types && npm run generate-test-types && npm run compile", + posttest: "npm run check && madge -c ./build/src", + "generate-types": "proto-loader-gen-types --keepCase --longs String --enums String --defaults --oneofs --includeComments --includeDirs proto/ --include-dirs test/fixtures/ -O src/generated/ --grpcLib ../index channelz.proto", + "generate-test-types": "proto-loader-gen-types --keepCase --longs String --enums String --defaults --oneofs --includeComments --include-dirs test/fixtures/ -O test/generated/ --grpcLib ../../src/index test_service.proto" + }, + dependencies: { + "@grpc/proto-loader": "^0.7.0", + "@types/node": ">=12.12.47" + }, + files: [ + "src/**/*.ts", + "build/src/**/*.{js,d.ts,js.map}", + "proto/*.proto", + "LICENSE", + "deps/envoy-api/envoy/api/v2/**/*.proto", + "deps/envoy-api/envoy/config/**/*.proto", + "deps/envoy-api/envoy/service/**/*.proto", + "deps/envoy-api/envoy/type/**/*.proto", + "deps/udpa/udpa/**/*.proto", + "deps/googleapis/google/api/*.proto", + "deps/googleapis/google/rpc/*.proto", + "deps/protoc-gen-validate/validate/**/*.proto" + ] + }; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/transport.js +var require_transport = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/transport.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Http2SubchannelConnector = void 0; + var http22 = require("http2"); + var tls_1 = require("tls"); + var channelz_1 = require_channelz(); + var constants_1 = require_constants10(); + var http_proxy_1 = require_http_proxy(); + var logging = require_logging(); + var resolver_1 = require_resolver(); + var subchannel_address_1 = require_subchannel_address(); + var uri_parser_1 = require_uri_parser(); + var net = require("net"); + var subchannel_call_1 = require_subchannel_call(); + var call_number_1 = require_call_number(); + var TRACER_NAME = "transport"; + var FLOW_CONTROL_TRACER_NAME = "transport_flowctrl"; + var clientVersion = require_package2().version; + var { HTTP2_HEADER_AUTHORITY, HTTP2_HEADER_CONTENT_TYPE, HTTP2_HEADER_METHOD, HTTP2_HEADER_PATH, HTTP2_HEADER_TE, HTTP2_HEADER_USER_AGENT } = http22.constants; + var KEEPALIVE_TIMEOUT_MS = 2e4; + var tooManyPingsData = Buffer.from("too_many_pings", "ascii"); + var Http2Transport = class { + constructor(session, subchannelAddress, options2, remoteName) { + this.session = session; + this.remoteName = remoteName; + this.keepaliveTimeMs = -1; + this.keepaliveTimeoutMs = KEEPALIVE_TIMEOUT_MS; + this.keepaliveTimerId = null; + this.pendingSendKeepalivePing = false; + this.keepaliveTimeoutId = null; + this.keepaliveWithoutCalls = false; + this.activeCalls = /* @__PURE__ */ new Set(); + this.disconnectListeners = []; + this.disconnectHandled = false; + this.channelzEnabled = true; + this.streamTracker = new channelz_1.ChannelzCallTracker(); + this.keepalivesSent = 0; + this.messagesSent = 0; + this.messagesReceived = 0; + this.lastMessageSentTimestamp = null; + this.lastMessageReceivedTimestamp = null; + this.subchannelAddressString = (0, subchannel_address_1.subchannelAddressToString)(subchannelAddress); + if (options2["grpc.enable_channelz"] === 0) { + this.channelzEnabled = false; + } + this.channelzRef = (0, channelz_1.registerChannelzSocket)(this.subchannelAddressString, () => this.getChannelzInfo(), this.channelzEnabled); + this.userAgent = [ + options2["grpc.primary_user_agent"], + `grpc-node-js/${clientVersion}`, + options2["grpc.secondary_user_agent"] + ].filter((e) => e).join(" "); + if ("grpc.keepalive_time_ms" in options2) { + this.keepaliveTimeMs = options2["grpc.keepalive_time_ms"]; + } + if ("grpc.keepalive_timeout_ms" in options2) { + this.keepaliveTimeoutMs = options2["grpc.keepalive_timeout_ms"]; + } + if ("grpc.keepalive_permit_without_calls" in options2) { + this.keepaliveWithoutCalls = options2["grpc.keepalive_permit_without_calls"] === 1; + } else { + this.keepaliveWithoutCalls = false; + } + session.once("close", () => { + this.trace("session closed"); + this.stopKeepalivePings(); + this.handleDisconnect(); + }); + session.once("goaway", (errorCode, lastStreamID, opaqueData) => { + let tooManyPings = false; + if (errorCode === http22.constants.NGHTTP2_ENHANCE_YOUR_CALM && opaqueData.equals(tooManyPingsData)) { + tooManyPings = true; + } + this.trace("connection closed by GOAWAY with code " + errorCode); + this.reportDisconnectToOwner(tooManyPings); + }); + session.once("error", (error) => { + this.trace("connection closed with error " + error.message); + }); + if (logging.isTracerEnabled(TRACER_NAME)) { + session.on("remoteSettings", (settings) => { + this.trace("new settings received" + (this.session !== session ? " on the old connection" : "") + ": " + JSON.stringify(settings)); + }); + session.on("localSettings", (settings) => { + this.trace("local settings acknowledged by remote" + (this.session !== session ? " on the old connection" : "") + ": " + JSON.stringify(settings)); + }); + } + if (this.keepaliveWithoutCalls) { + this.maybeStartKeepalivePingTimer(); + } + } + getChannelzInfo() { + var _a, _b, _c; + const sessionSocket = this.session.socket; + const remoteAddress = sessionSocket.remoteAddress ? (0, subchannel_address_1.stringToSubchannelAddress)(sessionSocket.remoteAddress, sessionSocket.remotePort) : null; + const localAddress = sessionSocket.localAddress ? (0, subchannel_address_1.stringToSubchannelAddress)(sessionSocket.localAddress, sessionSocket.localPort) : null; + let tlsInfo; + if (this.session.encrypted) { + const tlsSocket = sessionSocket; + const cipherInfo = tlsSocket.getCipher(); + const certificate = tlsSocket.getCertificate(); + const peerCertificate = tlsSocket.getPeerCertificate(); + tlsInfo = { + cipherSuiteStandardName: (_a = cipherInfo.standardName) !== null && _a !== void 0 ? _a : null, + cipherSuiteOtherName: cipherInfo.standardName ? null : cipherInfo.name, + localCertificate: certificate && "raw" in certificate ? certificate.raw : null, + remoteCertificate: peerCertificate && "raw" in peerCertificate ? peerCertificate.raw : null + }; + } else { + tlsInfo = null; + } + const socketInfo = { + remoteAddress, + localAddress, + security: tlsInfo, + remoteName: this.remoteName, + streamsStarted: this.streamTracker.callsStarted, + streamsSucceeded: this.streamTracker.callsSucceeded, + streamsFailed: this.streamTracker.callsFailed, + messagesSent: this.messagesSent, + messagesReceived: this.messagesReceived, + keepAlivesSent: this.keepalivesSent, + lastLocalStreamCreatedTimestamp: this.streamTracker.lastCallStartedTimestamp, + lastRemoteStreamCreatedTimestamp: null, + lastMessageSentTimestamp: this.lastMessageSentTimestamp, + lastMessageReceivedTimestamp: this.lastMessageReceivedTimestamp, + localFlowControlWindow: (_b = this.session.state.localWindowSize) !== null && _b !== void 0 ? _b : null, + remoteFlowControlWindow: (_c = this.session.state.remoteWindowSize) !== null && _c !== void 0 ? _c : null + }; + return socketInfo; + } + trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, "(" + this.channelzRef.id + ") " + this.subchannelAddressString + " " + text); + } + keepaliveTrace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, "keepalive", "(" + this.channelzRef.id + ") " + this.subchannelAddressString + " " + text); + } + flowControlTrace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, FLOW_CONTROL_TRACER_NAME, "(" + this.channelzRef.id + ") " + this.subchannelAddressString + " " + text); + } + internalsTrace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, "transport_internals", "(" + this.channelzRef.id + ") " + this.subchannelAddressString + " " + text); + } + /** + * Indicate to the owner of this object that this transport should no longer + * be used. That happens if the connection drops, or if the server sends a + * GOAWAY. + * @param tooManyPings If true, this was triggered by a GOAWAY with data + * indicating that the session was closed becaues the client sent too many + * pings. + * @returns + */ + reportDisconnectToOwner(tooManyPings) { + if (this.disconnectHandled) { + return; + } + this.disconnectHandled = true; + this.disconnectListeners.forEach((listener) => listener(tooManyPings)); + } + /** + * Handle connection drops, but not GOAWAYs. + */ + handleDisconnect() { + this.reportDisconnectToOwner(false); + setImmediate(() => { + for (const call of this.activeCalls) { + call.onDisconnect(); + } + }); + } + addDisconnectListener(listener) { + this.disconnectListeners.push(listener); + } + clearKeepaliveTimer() { + if (!this.keepaliveTimerId) { + return; + } + clearTimeout(this.keepaliveTimerId); + this.keepaliveTimerId = null; + } + clearKeepaliveTimeout() { + if (!this.keepaliveTimeoutId) { + return; + } + clearTimeout(this.keepaliveTimeoutId); + this.keepaliveTimeoutId = null; + } + canSendPing() { + return this.keepaliveTimeMs > 0 && (this.keepaliveWithoutCalls || this.activeCalls.size > 0); + } + maybeSendPing() { + var _a, _b; + this.clearKeepaliveTimer(); + if (!this.canSendPing()) { + this.pendingSendKeepalivePing = true; + return; + } + if (this.channelzEnabled) { + this.keepalivesSent += 1; + } + this.keepaliveTrace("Sending ping with timeout " + this.keepaliveTimeoutMs + "ms"); + if (!this.keepaliveTimeoutId) { + this.keepaliveTimeoutId = setTimeout(() => { + this.keepaliveTrace("Ping timeout passed without response"); + this.handleDisconnect(); + }, this.keepaliveTimeoutMs); + (_b = (_a = this.keepaliveTimeoutId).unref) === null || _b === void 0 ? void 0 : _b.call(_a); + } + try { + this.session.ping((err2, duration, payload) => { + this.keepaliveTrace("Received ping response"); + this.clearKeepaliveTimeout(); + this.maybeStartKeepalivePingTimer(); + }); + } catch (e) { + this.handleDisconnect(); + } + } + /** + * Starts the keepalive ping timer if appropriate. If the timer already ran + * out while there were no active requests, instead send a ping immediately. + * If the ping timer is already running or a ping is currently in flight, + * instead do nothing and wait for them to resolve. + */ + maybeStartKeepalivePingTimer() { + var _a, _b; + if (!this.canSendPing()) { + return; + } + if (this.pendingSendKeepalivePing) { + this.pendingSendKeepalivePing = false; + this.maybeSendPing(); + } else if (!this.keepaliveTimerId && !this.keepaliveTimeoutId) { + this.keepaliveTrace("Starting keepalive timer for " + this.keepaliveTimeMs + "ms"); + this.keepaliveTimerId = (_b = (_a = setTimeout(() => { + this.maybeSendPing(); + }, this.keepaliveTimeMs)).unref) === null || _b === void 0 ? void 0 : _b.call(_a); + } + } + stopKeepalivePings() { + if (this.keepaliveTimerId) { + clearTimeout(this.keepaliveTimerId); + this.keepaliveTimerId = null; + } + this.clearKeepaliveTimeout(); + } + removeActiveCall(call) { + this.activeCalls.delete(call); + if (this.activeCalls.size === 0) { + this.session.unref(); + } + } + addActiveCall(call) { + this.activeCalls.add(call); + if (this.activeCalls.size === 1) { + this.session.ref(); + if (!this.keepaliveWithoutCalls) { + this.maybeStartKeepalivePingTimer(); + } + } + } + createCall(metadata2, host, method, listener, subchannelCallStatsTracker) { + const headers = metadata2.toHttp2Headers(); + headers[HTTP2_HEADER_AUTHORITY] = host; + headers[HTTP2_HEADER_USER_AGENT] = this.userAgent; + headers[HTTP2_HEADER_CONTENT_TYPE] = "application/grpc"; + headers[HTTP2_HEADER_METHOD] = "POST"; + headers[HTTP2_HEADER_PATH] = method; + headers[HTTP2_HEADER_TE] = "trailers"; + let http2Stream; + try { + http2Stream = this.session.request(headers); + } catch (e) { + this.handleDisconnect(); + throw e; + } + this.flowControlTrace("local window size: " + this.session.state.localWindowSize + " remote window size: " + this.session.state.remoteWindowSize); + this.internalsTrace("session.closed=" + this.session.closed + " session.destroyed=" + this.session.destroyed + " session.socket.destroyed=" + this.session.socket.destroyed); + let eventTracker; + let call; + if (this.channelzEnabled) { + this.streamTracker.addCallStarted(); + eventTracker = { + addMessageSent: () => { + var _a; + this.messagesSent += 1; + this.lastMessageSentTimestamp = /* @__PURE__ */ new Date(); + (_a = subchannelCallStatsTracker.addMessageSent) === null || _a === void 0 ? void 0 : _a.call(subchannelCallStatsTracker); + }, + addMessageReceived: () => { + var _a; + this.messagesReceived += 1; + this.lastMessageReceivedTimestamp = /* @__PURE__ */ new Date(); + (_a = subchannelCallStatsTracker.addMessageReceived) === null || _a === void 0 ? void 0 : _a.call(subchannelCallStatsTracker); + }, + onCallEnd: (status) => { + var _a; + (_a = subchannelCallStatsTracker.onCallEnd) === null || _a === void 0 ? void 0 : _a.call(subchannelCallStatsTracker, status); + this.removeActiveCall(call); + }, + onStreamEnd: (success) => { + var _a; + if (success) { + this.streamTracker.addCallSucceeded(); + } else { + this.streamTracker.addCallFailed(); + } + (_a = subchannelCallStatsTracker.onStreamEnd) === null || _a === void 0 ? void 0 : _a.call(subchannelCallStatsTracker, success); + } + }; + } else { + eventTracker = { + addMessageSent: () => { + var _a; + (_a = subchannelCallStatsTracker.addMessageSent) === null || _a === void 0 ? void 0 : _a.call(subchannelCallStatsTracker); + }, + addMessageReceived: () => { + var _a; + (_a = subchannelCallStatsTracker.addMessageReceived) === null || _a === void 0 ? void 0 : _a.call(subchannelCallStatsTracker); + }, + onCallEnd: (status) => { + var _a; + (_a = subchannelCallStatsTracker.onCallEnd) === null || _a === void 0 ? void 0 : _a.call(subchannelCallStatsTracker, status); + this.removeActiveCall(call); + }, + onStreamEnd: (success) => { + var _a; + (_a = subchannelCallStatsTracker.onStreamEnd) === null || _a === void 0 ? void 0 : _a.call(subchannelCallStatsTracker, success); + } + }; + } + call = new subchannel_call_1.Http2SubchannelCall(http2Stream, eventTracker, listener, this, (0, call_number_1.getNextCallNumber)()); + this.addActiveCall(call); + return call; + } + getChannelzRef() { + return this.channelzRef; + } + getPeerName() { + return this.subchannelAddressString; + } + shutdown() { + this.session.close(); + (0, channelz_1.unregisterChannelzRef)(this.channelzRef); + } + }; + var Http2SubchannelConnector = class { + constructor(channelTarget) { + this.channelTarget = channelTarget; + this.session = null; + this.isShutdown = false; + } + trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, this.channelTarget + " " + text); + } + createSession(address, credentials, options2, proxyConnectionResult) { + if (this.isShutdown) { + return Promise.reject(); + } + return new Promise((resolve8, reject) => { + var _a, _b, _c; + let remoteName; + if (proxyConnectionResult.realTarget) { + remoteName = (0, uri_parser_1.uriToString)(proxyConnectionResult.realTarget); + this.trace("creating HTTP/2 session through proxy to " + (0, uri_parser_1.uriToString)(proxyConnectionResult.realTarget)); + } else { + remoteName = null; + this.trace("creating HTTP/2 session to " + (0, subchannel_address_1.subchannelAddressToString)(address)); + } + const targetAuthority = (0, resolver_1.getDefaultAuthority)((_a = proxyConnectionResult.realTarget) !== null && _a !== void 0 ? _a : this.channelTarget); + let connectionOptions = credentials._getConnectionOptions() || {}; + connectionOptions.maxSendHeaderBlockLength = Number.MAX_SAFE_INTEGER; + if ("grpc-node.max_session_memory" in options2) { + connectionOptions.maxSessionMemory = options2["grpc-node.max_session_memory"]; + } else { + connectionOptions.maxSessionMemory = Number.MAX_SAFE_INTEGER; + } + let addressScheme = "http://"; + if ("secureContext" in connectionOptions) { + addressScheme = "https://"; + if (options2["grpc.ssl_target_name_override"]) { + const sslTargetNameOverride = options2["grpc.ssl_target_name_override"]; + connectionOptions.checkServerIdentity = (host, cert) => { + return (0, tls_1.checkServerIdentity)(sslTargetNameOverride, cert); + }; + connectionOptions.servername = sslTargetNameOverride; + } else { + const authorityHostname = (_c = (_b = (0, uri_parser_1.splitHostPort)(targetAuthority)) === null || _b === void 0 ? void 0 : _b.host) !== null && _c !== void 0 ? _c : "localhost"; + connectionOptions.servername = authorityHostname; + } + if (proxyConnectionResult.socket) { + connectionOptions.createConnection = (authority, option) => { + return proxyConnectionResult.socket; + }; + } + } else { + connectionOptions.createConnection = (authority, option) => { + if (proxyConnectionResult.socket) { + return proxyConnectionResult.socket; + } else { + return net.connect(address); + } + }; + } + connectionOptions = Object.assign(Object.assign({}, connectionOptions), address); + const session = http22.connect(addressScheme + targetAuthority, connectionOptions); + this.session = session; + session.unref(); + session.once("connect", () => { + session.removeAllListeners(); + resolve8(new Http2Transport(session, address, options2, remoteName)); + this.session = null; + }); + session.once("close", () => { + this.session = null; + reject(); + }); + session.once("error", (error) => { + this.trace("connection failed with error " + error.message); + }); + }); + } + connect(address, credentials, options2) { + var _a, _b; + if (this.isShutdown) { + return Promise.reject(); + } + const connectionOptions = credentials._getConnectionOptions() || {}; + if ("secureContext" in connectionOptions) { + connectionOptions.ALPNProtocols = ["h2"]; + if (options2["grpc.ssl_target_name_override"]) { + const sslTargetNameOverride = options2["grpc.ssl_target_name_override"]; + connectionOptions.checkServerIdentity = (host, cert) => { + return (0, tls_1.checkServerIdentity)(sslTargetNameOverride, cert); + }; + connectionOptions.servername = sslTargetNameOverride; + } else { + if ("grpc.http_connect_target" in options2) { + const targetPath = (0, resolver_1.getDefaultAuthority)((_a = (0, uri_parser_1.parseUri)(options2["grpc.http_connect_target"])) !== null && _a !== void 0 ? _a : { + path: "localhost" + }); + const hostPort = (0, uri_parser_1.splitHostPort)(targetPath); + connectionOptions.servername = (_b = hostPort === null || hostPort === void 0 ? void 0 : hostPort.host) !== null && _b !== void 0 ? _b : targetPath; + } + } + } + return (0, http_proxy_1.getProxiedConnection)(address, options2, connectionOptions).then((result) => this.createSession(address, credentials, options2, result)); + } + shutdown() { + var _a; + this.isShutdown = true; + (_a = this.session) === null || _a === void 0 ? void 0 : _a.close(); + this.session = null; + } + }; + exports2.Http2SubchannelConnector = Http2SubchannelConnector; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/subchannel-pool.js +var require_subchannel_pool = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/subchannel-pool.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.getSubchannelPool = exports2.SubchannelPool = void 0; + var channel_options_1 = require_channel_options(); + var subchannel_1 = require_subchannel(); + var subchannel_address_1 = require_subchannel_address(); + var uri_parser_1 = require_uri_parser(); + var transport_1 = require_transport(); + var REF_CHECK_INTERVAL = 1e4; + var SubchannelPool = class { + /** + * A pool of subchannels use for making connections. Subchannels with the + * exact same parameters will be reused. + */ + constructor() { + this.pool = /* @__PURE__ */ Object.create(null); + this.cleanupTimer = null; + } + /** + * Unrefs all unused subchannels and cancels the cleanup task if all + * subchannels have been unrefed. + */ + unrefUnusedSubchannels() { + let allSubchannelsUnrefed = true; + for (const channelTarget in this.pool) { + const subchannelObjArray = this.pool[channelTarget]; + const refedSubchannels = subchannelObjArray.filter((value) => !value.subchannel.unrefIfOneRef()); + if (refedSubchannels.length > 0) { + allSubchannelsUnrefed = false; + } + this.pool[channelTarget] = refedSubchannels; + } + if (allSubchannelsUnrefed && this.cleanupTimer !== null) { + clearInterval(this.cleanupTimer); + this.cleanupTimer = null; + } + } + /** + * Ensures that the cleanup task is spawned. + */ + ensureCleanupTask() { + var _a, _b; + if (this.cleanupTimer === null) { + this.cleanupTimer = setInterval(() => { + this.unrefUnusedSubchannels(); + }, REF_CHECK_INTERVAL); + (_b = (_a = this.cleanupTimer).unref) === null || _b === void 0 ? void 0 : _b.call(_a); + } + } + /** + * Get a subchannel if one already exists with exactly matching parameters. + * Otherwise, create and save a subchannel with those parameters. + * @param channelTarget + * @param subchannelTarget + * @param channelArguments + * @param channelCredentials + */ + getOrCreateSubchannel(channelTargetUri, subchannelTarget, channelArguments, channelCredentials) { + this.ensureCleanupTask(); + const channelTarget = (0, uri_parser_1.uriToString)(channelTargetUri); + if (channelTarget in this.pool) { + const subchannelObjArray = this.pool[channelTarget]; + for (const subchannelObj of subchannelObjArray) { + if ((0, subchannel_address_1.subchannelAddressEqual)(subchannelTarget, subchannelObj.subchannelAddress) && (0, channel_options_1.channelOptionsEqual)(channelArguments, subchannelObj.channelArguments) && channelCredentials._equals(subchannelObj.channelCredentials)) { + return subchannelObj.subchannel; + } + } + } + const subchannel = new subchannel_1.Subchannel(channelTargetUri, subchannelTarget, channelArguments, channelCredentials, new transport_1.Http2SubchannelConnector(channelTargetUri)); + if (!(channelTarget in this.pool)) { + this.pool[channelTarget] = []; + } + this.pool[channelTarget].push({ + subchannelAddress: subchannelTarget, + channelArguments, + channelCredentials, + subchannel + }); + subchannel.ref(); + return subchannel; + } + }; + exports2.SubchannelPool = SubchannelPool; + var globalSubchannelPool = new SubchannelPool(); + function getSubchannelPool(global2) { + if (global2) { + return globalSubchannelPool; + } else { + return new SubchannelPool(); + } + } + exports2.getSubchannelPool = getSubchannelPool; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/filter-stack.js +var require_filter_stack = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/filter-stack.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.FilterStackFactory = exports2.FilterStack = void 0; + var FilterStack = class { + constructor(filters) { + this.filters = filters; + } + sendMetadata(metadata2) { + let result = metadata2; + for (let i = 0; i < this.filters.length; i++) { + result = this.filters[i].sendMetadata(result); + } + return result; + } + receiveMetadata(metadata2) { + let result = metadata2; + for (let i = this.filters.length - 1; i >= 0; i--) { + result = this.filters[i].receiveMetadata(result); + } + return result; + } + sendMessage(message) { + let result = message; + for (let i = 0; i < this.filters.length; i++) { + result = this.filters[i].sendMessage(result); + } + return result; + } + receiveMessage(message) { + let result = message; + for (let i = this.filters.length - 1; i >= 0; i--) { + result = this.filters[i].receiveMessage(result); + } + return result; + } + receiveTrailers(status) { + let result = status; + for (let i = this.filters.length - 1; i >= 0; i--) { + result = this.filters[i].receiveTrailers(result); + } + return result; + } + push(filters) { + this.filters.unshift(...filters); + } + getFilters() { + return this.filters; + } + }; + exports2.FilterStack = FilterStack; + var FilterStackFactory = class _FilterStackFactory { + constructor(factories) { + this.factories = factories; + } + push(filterFactories) { + this.factories.unshift(...filterFactories); + } + clone() { + return new _FilterStackFactory([...this.factories]); + } + createFilter() { + return new FilterStack(this.factories.map((factory) => factory.createFilter())); + } + }; + exports2.FilterStackFactory = FilterStackFactory; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/compression-algorithms.js +var require_compression_algorithms = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/compression-algorithms.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CompressionAlgorithms = void 0; + var CompressionAlgorithms; + (function(CompressionAlgorithms2) { + CompressionAlgorithms2[CompressionAlgorithms2["identity"] = 0] = "identity"; + CompressionAlgorithms2[CompressionAlgorithms2["deflate"] = 1] = "deflate"; + CompressionAlgorithms2[CompressionAlgorithms2["gzip"] = 2] = "gzip"; + })(CompressionAlgorithms = exports2.CompressionAlgorithms || (exports2.CompressionAlgorithms = {})); + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/filter.js +var require_filter3 = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/filter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BaseFilter = void 0; + var BaseFilter = class { + async sendMetadata(metadata2) { + return metadata2; + } + receiveMetadata(metadata2) { + return metadata2; + } + async sendMessage(message) { + return message; + } + async receiveMessage(message) { + return message; + } + receiveTrailers(status) { + return status; + } + }; + exports2.BaseFilter = BaseFilter; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/compression-filter.js +var require_compression_filter = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/compression-filter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.CompressionFilterFactory = exports2.CompressionFilter = void 0; + var zlib2 = require("zlib"); + var compression_algorithms_1 = require_compression_algorithms(); + var constants_1 = require_constants10(); + var filter_1 = require_filter3(); + var logging = require_logging(); + var isCompressionAlgorithmKey = (key) => { + return typeof key === "number" && typeof compression_algorithms_1.CompressionAlgorithms[key] === "string"; + }; + var CompressionHandler = class { + /** + * @param message Raw uncompressed message bytes + * @param compress Indicates whether the message should be compressed + * @return Framed message, compressed if applicable + */ + async writeMessage(message, compress) { + let messageBuffer = message; + if (compress) { + messageBuffer = await this.compressMessage(messageBuffer); + } + const output = Buffer.allocUnsafe(messageBuffer.length + 5); + output.writeUInt8(compress ? 1 : 0, 0); + output.writeUInt32BE(messageBuffer.length, 1); + messageBuffer.copy(output, 5); + return output; + } + /** + * @param data Framed message, possibly compressed + * @return Uncompressed message + */ + async readMessage(data) { + const compressed = data.readUInt8(0) === 1; + let messageBuffer = data.slice(5); + if (compressed) { + messageBuffer = await this.decompressMessage(messageBuffer); + } + return messageBuffer; + } + }; + var IdentityHandler = class extends CompressionHandler { + async compressMessage(message) { + return message; + } + async writeMessage(message, compress) { + const output = Buffer.allocUnsafe(message.length + 5); + output.writeUInt8(0, 0); + output.writeUInt32BE(message.length, 1); + message.copy(output, 5); + return output; + } + decompressMessage(message) { + return Promise.reject(new Error('Received compressed message but "grpc-encoding" header was identity')); + } + }; + var DeflateHandler = class extends CompressionHandler { + compressMessage(message) { + return new Promise((resolve8, reject) => { + zlib2.deflate(message, (err2, output) => { + if (err2) { + reject(err2); + } else { + resolve8(output); + } + }); + }); + } + decompressMessage(message) { + return new Promise((resolve8, reject) => { + zlib2.inflate(message, (err2, output) => { + if (err2) { + reject(err2); + } else { + resolve8(output); + } + }); + }); + } + }; + var GzipHandler = class extends CompressionHandler { + compressMessage(message) { + return new Promise((resolve8, reject) => { + zlib2.gzip(message, (err2, output) => { + if (err2) { + reject(err2); + } else { + resolve8(output); + } + }); + }); + } + decompressMessage(message) { + return new Promise((resolve8, reject) => { + zlib2.unzip(message, (err2, output) => { + if (err2) { + reject(err2); + } else { + resolve8(output); + } + }); + }); + } + }; + var UnknownHandler = class extends CompressionHandler { + constructor(compressionName) { + super(); + this.compressionName = compressionName; + } + compressMessage(message) { + return Promise.reject(new Error(`Received message compressed with unsupported compression method ${this.compressionName}`)); + } + decompressMessage(message) { + return Promise.reject(new Error(`Compression method not supported: ${this.compressionName}`)); + } + }; + function getCompressionHandler(compressionName) { + switch (compressionName) { + case "identity": + return new IdentityHandler(); + case "deflate": + return new DeflateHandler(); + case "gzip": + return new GzipHandler(); + default: + return new UnknownHandler(compressionName); + } + } + var CompressionFilter = class extends filter_1.BaseFilter { + constructor(channelOptions, sharedFilterConfig) { + var _a; + super(); + this.sharedFilterConfig = sharedFilterConfig; + this.sendCompression = new IdentityHandler(); + this.receiveCompression = new IdentityHandler(); + this.currentCompressionAlgorithm = "identity"; + const compressionAlgorithmKey = channelOptions["grpc.default_compression_algorithm"]; + if (compressionAlgorithmKey !== void 0) { + if (isCompressionAlgorithmKey(compressionAlgorithmKey)) { + const clientSelectedEncoding = compression_algorithms_1.CompressionAlgorithms[compressionAlgorithmKey]; + const serverSupportedEncodings = (_a = sharedFilterConfig.serverSupportedEncodingHeader) === null || _a === void 0 ? void 0 : _a.split(","); + if (!serverSupportedEncodings || serverSupportedEncodings.includes(clientSelectedEncoding)) { + this.currentCompressionAlgorithm = clientSelectedEncoding; + this.sendCompression = getCompressionHandler(this.currentCompressionAlgorithm); + } + } else { + logging.log(constants_1.LogVerbosity.ERROR, `Invalid value provided for grpc.default_compression_algorithm option: ${compressionAlgorithmKey}`); + } + } + } + async sendMetadata(metadata2) { + const headers = await metadata2; + headers.set("grpc-accept-encoding", "identity,deflate,gzip"); + headers.set("accept-encoding", "identity"); + if (this.currentCompressionAlgorithm === "identity") { + headers.remove("grpc-encoding"); + } else { + headers.set("grpc-encoding", this.currentCompressionAlgorithm); + } + return headers; + } + receiveMetadata(metadata2) { + const receiveEncoding = metadata2.get("grpc-encoding"); + if (receiveEncoding.length > 0) { + const encoding = receiveEncoding[0]; + if (typeof encoding === "string") { + this.receiveCompression = getCompressionHandler(encoding); + } + } + metadata2.remove("grpc-encoding"); + const serverSupportedEncodingsHeader = metadata2.get("grpc-accept-encoding")[0]; + if (serverSupportedEncodingsHeader) { + this.sharedFilterConfig.serverSupportedEncodingHeader = serverSupportedEncodingsHeader; + const serverSupportedEncodings = serverSupportedEncodingsHeader.split(","); + if (!serverSupportedEncodings.includes(this.currentCompressionAlgorithm)) { + this.sendCompression = new IdentityHandler(); + this.currentCompressionAlgorithm = "identity"; + } + } + metadata2.remove("grpc-accept-encoding"); + return metadata2; + } + async sendMessage(message) { + var _a; + const resolvedMessage = await message; + let compress; + if (this.sendCompression instanceof IdentityHandler) { + compress = false; + } else { + compress = (((_a = resolvedMessage.flags) !== null && _a !== void 0 ? _a : 0) & 2) === 0; + } + return { + message: await this.sendCompression.writeMessage(resolvedMessage.message, compress), + flags: resolvedMessage.flags + }; + } + async receiveMessage(message) { + return this.receiveCompression.readMessage(await message); + } + }; + exports2.CompressionFilter = CompressionFilter; + var CompressionFilterFactory = class { + constructor(channel, options2) { + this.options = options2; + this.sharedFilterConfig = {}; + } + createFilter() { + return new CompressionFilter(this.options, this.sharedFilterConfig); + } + }; + exports2.CompressionFilterFactory = CompressionFilterFactory; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/max-message-size-filter.js +var require_max_message_size_filter = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/max-message-size-filter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MaxMessageSizeFilterFactory = exports2.MaxMessageSizeFilter = void 0; + var filter_1 = require_filter3(); + var constants_1 = require_constants10(); + var metadata_1 = require_metadata3(); + var MaxMessageSizeFilter = class extends filter_1.BaseFilter { + constructor(options2) { + super(); + this.maxSendMessageSize = constants_1.DEFAULT_MAX_SEND_MESSAGE_LENGTH; + this.maxReceiveMessageSize = constants_1.DEFAULT_MAX_RECEIVE_MESSAGE_LENGTH; + if ("grpc.max_send_message_length" in options2) { + this.maxSendMessageSize = options2["grpc.max_send_message_length"]; + } + if ("grpc.max_receive_message_length" in options2) { + this.maxReceiveMessageSize = options2["grpc.max_receive_message_length"]; + } + } + async sendMessage(message) { + if (this.maxSendMessageSize === -1) { + return message; + } else { + const concreteMessage = await message; + if (concreteMessage.message.length > this.maxSendMessageSize) { + throw { + code: constants_1.Status.RESOURCE_EXHAUSTED, + details: `Sent message larger than max (${concreteMessage.message.length} vs. ${this.maxSendMessageSize})`, + metadata: new metadata_1.Metadata() + }; + } else { + return concreteMessage; + } + } + } + async receiveMessage(message) { + if (this.maxReceiveMessageSize === -1) { + return message; + } else { + const concreteMessage = await message; + if (concreteMessage.length > this.maxReceiveMessageSize) { + throw { + code: constants_1.Status.RESOURCE_EXHAUSTED, + details: `Received message larger than max (${concreteMessage.length} vs. ${this.maxReceiveMessageSize})`, + metadata: new metadata_1.Metadata() + }; + } else { + return concreteMessage; + } + } + } + }; + exports2.MaxMessageSizeFilter = MaxMessageSizeFilter; + var MaxMessageSizeFilterFactory = class { + constructor(options2) { + this.options = options2; + } + createFilter() { + return new MaxMessageSizeFilter(this.options); + } + }; + exports2.MaxMessageSizeFilterFactory = MaxMessageSizeFilterFactory; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/deadline.js +var require_deadline = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/deadline.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.deadlineToString = exports2.getRelativeTimeout = exports2.getDeadlineTimeoutString = exports2.minDeadline = void 0; + function minDeadline(...deadlineList) { + let minValue = Infinity; + for (const deadline of deadlineList) { + const deadlineMsecs = deadline instanceof Date ? deadline.getTime() : deadline; + if (deadlineMsecs < minValue) { + minValue = deadlineMsecs; + } + } + return minValue; + } + exports2.minDeadline = minDeadline; + var units = [ + ["m", 1], + ["S", 1e3], + ["M", 60 * 1e3], + ["H", 60 * 60 * 1e3] + ]; + function getDeadlineTimeoutString(deadline) { + const now = (/* @__PURE__ */ new Date()).getTime(); + if (deadline instanceof Date) { + deadline = deadline.getTime(); + } + const timeoutMs = Math.max(deadline - now, 0); + for (const [unit, factor] of units) { + const amount = timeoutMs / factor; + if (amount < 1e8) { + return String(Math.ceil(amount)) + unit; + } + } + throw new Error("Deadline is too far in the future"); + } + exports2.getDeadlineTimeoutString = getDeadlineTimeoutString; + var MAX_TIMEOUT_TIME = 2147483647; + function getRelativeTimeout(deadline) { + const deadlineMs = deadline instanceof Date ? deadline.getTime() : deadline; + const now = (/* @__PURE__ */ new Date()).getTime(); + const timeout = deadlineMs - now; + if (timeout < 0) { + return 0; + } else if (timeout > MAX_TIMEOUT_TIME) { + return Infinity; + } else { + return timeout; + } + } + exports2.getRelativeTimeout = getRelativeTimeout; + function deadlineToString(deadline) { + if (deadline instanceof Date) { + return deadline.toISOString(); + } else { + const dateDeadline = new Date(deadline); + if (Number.isNaN(dateDeadline.getTime())) { + return "" + deadline; + } else { + return dateDeadline.toISOString(); + } + } + } + exports2.deadlineToString = deadlineToString; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/control-plane-status.js +var require_control_plane_status = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/control-plane-status.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.restrictControlPlaneStatusCode = void 0; + var constants_1 = require_constants10(); + var INAPPROPRIATE_CONTROL_PLANE_CODES = [ + constants_1.Status.OK, + constants_1.Status.INVALID_ARGUMENT, + constants_1.Status.NOT_FOUND, + constants_1.Status.ALREADY_EXISTS, + constants_1.Status.FAILED_PRECONDITION, + constants_1.Status.ABORTED, + constants_1.Status.OUT_OF_RANGE, + constants_1.Status.DATA_LOSS + ]; + function restrictControlPlaneStatusCode(code, details) { + if (INAPPROPRIATE_CONTROL_PLANE_CODES.includes(code)) { + return { + code: constants_1.Status.INTERNAL, + details: `Invalid status from control plane: ${code} ${constants_1.Status[code]} ${details}` + }; + } else { + return { code, details }; + } + } + exports2.restrictControlPlaneStatusCode = restrictControlPlaneStatusCode; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancing-call.js +var require_load_balancing_call = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancing-call.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LoadBalancingCall = void 0; + var connectivity_state_1 = require_connectivity_state(); + var constants_1 = require_constants10(); + var deadline_1 = require_deadline(); + var metadata_1 = require_metadata3(); + var picker_1 = require_picker(); + var uri_parser_1 = require_uri_parser(); + var logging = require_logging(); + var control_plane_status_1 = require_control_plane_status(); + var http22 = require("http2"); + var TRACER_NAME = "load_balancing_call"; + var LoadBalancingCall = class { + constructor(channel, callConfig, methodName, host, credentials, deadline, callNumber) { + var _a, _b; + this.channel = channel; + this.callConfig = callConfig; + this.methodName = methodName; + this.host = host; + this.credentials = credentials; + this.deadline = deadline; + this.callNumber = callNumber; + this.child = null; + this.readPending = false; + this.pendingMessage = null; + this.pendingHalfClose = false; + this.ended = false; + this.metadata = null; + this.listener = null; + this.onCallEnded = null; + const splitPath = this.methodName.split("/"); + let serviceName = ""; + if (splitPath.length >= 2) { + serviceName = splitPath[1]; + } + const hostname = (_b = (_a = (0, uri_parser_1.splitHostPort)(this.host)) === null || _a === void 0 ? void 0 : _a.host) !== null && _b !== void 0 ? _b : "localhost"; + this.serviceUrl = `https://${hostname}/${serviceName}`; + } + trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, "[" + this.callNumber + "] " + text); + } + outputStatus(status, progress) { + var _a, _b; + if (!this.ended) { + this.ended = true; + this.trace("ended with status: code=" + status.code + ' details="' + status.details + '"'); + const finalStatus = Object.assign(Object.assign({}, status), { progress }); + (_a = this.listener) === null || _a === void 0 ? void 0 : _a.onReceiveStatus(finalStatus); + (_b = this.onCallEnded) === null || _b === void 0 ? void 0 : _b.call(this, finalStatus.code); + } + } + doPick() { + var _a, _b; + if (this.ended) { + return; + } + if (!this.metadata) { + throw new Error("doPick called before start"); + } + this.trace("Pick called"); + const pickResult = this.channel.doPick(this.metadata, this.callConfig.pickInformation); + const subchannelString = pickResult.subchannel ? "(" + pickResult.subchannel.getChannelzRef().id + ") " + pickResult.subchannel.getAddress() : "" + pickResult.subchannel; + this.trace("Pick result: " + picker_1.PickResultType[pickResult.pickResultType] + " subchannel: " + subchannelString + " status: " + ((_a = pickResult.status) === null || _a === void 0 ? void 0 : _a.code) + " " + ((_b = pickResult.status) === null || _b === void 0 ? void 0 : _b.details)); + switch (pickResult.pickResultType) { + case picker_1.PickResultType.COMPLETE: + this.credentials.generateMetadata({ service_url: this.serviceUrl }).then((credsMetadata) => { + var _a2, _b2, _c; + const finalMetadata = this.metadata.clone(); + finalMetadata.merge(credsMetadata); + if (finalMetadata.get("authorization").length > 1) { + this.outputStatus({ + code: constants_1.Status.INTERNAL, + details: '"authorization" metadata cannot have multiple values', + metadata: new metadata_1.Metadata() + }, "PROCESSED"); + } + if (pickResult.subchannel.getConnectivityState() !== connectivity_state_1.ConnectivityState.READY) { + this.trace("Picked subchannel " + subchannelString + " has state " + connectivity_state_1.ConnectivityState[pickResult.subchannel.getConnectivityState()] + " after getting credentials metadata. Retrying pick"); + this.doPick(); + return; + } + if (this.deadline !== Infinity) { + finalMetadata.set("grpc-timeout", (0, deadline_1.getDeadlineTimeoutString)(this.deadline)); + } + try { + this.child = pickResult.subchannel.getRealSubchannel().createCall(finalMetadata, this.host, this.methodName, { + onReceiveMetadata: (metadata2) => { + this.trace("Received metadata"); + this.listener.onReceiveMetadata(metadata2); + }, + onReceiveMessage: (message) => { + this.trace("Received message"); + this.listener.onReceiveMessage(message); + }, + onReceiveStatus: (status) => { + this.trace("Received status"); + if (status.rstCode === http22.constants.NGHTTP2_REFUSED_STREAM) { + this.outputStatus(status, "REFUSED"); + } else { + this.outputStatus(status, "PROCESSED"); + } + } + }); + } catch (error) { + this.trace("Failed to start call on picked subchannel " + subchannelString + " with error " + error.message); + this.outputStatus({ + code: constants_1.Status.INTERNAL, + details: "Failed to start HTTP/2 stream with error " + error.message, + metadata: new metadata_1.Metadata() + }, "NOT_STARTED"); + return; + } + (_b2 = (_a2 = this.callConfig).onCommitted) === null || _b2 === void 0 ? void 0 : _b2.call(_a2); + (_c = pickResult.onCallStarted) === null || _c === void 0 ? void 0 : _c.call(pickResult); + this.onCallEnded = pickResult.onCallEnded; + this.trace("Created child call [" + this.child.getCallNumber() + "]"); + if (this.readPending) { + this.child.startRead(); + } + if (this.pendingMessage) { + this.child.sendMessageWithContext(this.pendingMessage.context, this.pendingMessage.message); + } + if (this.pendingHalfClose) { + this.child.halfClose(); + } + }, (error) => { + const { code: code2, details: details2 } = (0, control_plane_status_1.restrictControlPlaneStatusCode)(typeof error.code === "number" ? error.code : constants_1.Status.UNKNOWN, `Getting metadata from plugin failed with error: ${error.message}`); + this.outputStatus({ + code: code2, + details: details2, + metadata: new metadata_1.Metadata() + }, "PROCESSED"); + }); + break; + case picker_1.PickResultType.DROP: + const { code, details } = (0, control_plane_status_1.restrictControlPlaneStatusCode)(pickResult.status.code, pickResult.status.details); + setImmediate(() => { + this.outputStatus({ code, details, metadata: pickResult.status.metadata }, "DROP"); + }); + break; + case picker_1.PickResultType.TRANSIENT_FAILURE: + if (this.metadata.getOptions().waitForReady) { + this.channel.queueCallForPick(this); + } else { + const { code: code2, details: details2 } = (0, control_plane_status_1.restrictControlPlaneStatusCode)(pickResult.status.code, pickResult.status.details); + setImmediate(() => { + this.outputStatus({ code: code2, details: details2, metadata: pickResult.status.metadata }, "PROCESSED"); + }); + } + break; + case picker_1.PickResultType.QUEUE: + this.channel.queueCallForPick(this); + } + } + cancelWithStatus(status, details) { + var _a; + this.trace("cancelWithStatus code: " + status + ' details: "' + details + '"'); + (_a = this.child) === null || _a === void 0 ? void 0 : _a.cancelWithStatus(status, details); + this.outputStatus({ code: status, details, metadata: new metadata_1.Metadata() }, "PROCESSED"); + } + getPeer() { + var _a, _b; + return (_b = (_a = this.child) === null || _a === void 0 ? void 0 : _a.getPeer()) !== null && _b !== void 0 ? _b : this.channel.getTarget(); + } + start(metadata2, listener) { + this.trace("start called"); + this.listener = listener; + this.metadata = metadata2; + this.doPick(); + } + sendMessageWithContext(context2, message) { + this.trace("write() called with message of length " + message.length); + if (this.child) { + this.child.sendMessageWithContext(context2, message); + } else { + this.pendingMessage = { context: context2, message }; + } + } + startRead() { + this.trace("startRead called"); + if (this.child) { + this.child.startRead(); + } else { + this.readPending = true; + } + } + halfClose() { + this.trace("halfClose called"); + if (this.child) { + this.child.halfClose(); + } else { + this.pendingHalfClose = true; + } + } + setCredentials(credentials) { + throw new Error("Method not implemented."); + } + getCallNumber() { + return this.callNumber; + } + }; + exports2.LoadBalancingCall = LoadBalancingCall; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolving-call.js +var require_resolving_call = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolving-call.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ResolvingCall = void 0; + var constants_1 = require_constants10(); + var deadline_1 = require_deadline(); + var metadata_1 = require_metadata3(); + var logging = require_logging(); + var control_plane_status_1 = require_control_plane_status(); + var TRACER_NAME = "resolving_call"; + var ResolvingCall = class { + constructor(channel, method, options2, filterStackFactory, credentials, callNumber) { + this.channel = channel; + this.method = method; + this.filterStackFactory = filterStackFactory; + this.credentials = credentials; + this.callNumber = callNumber; + this.child = null; + this.readPending = false; + this.pendingMessage = null; + this.pendingHalfClose = false; + this.ended = false; + this.readFilterPending = false; + this.writeFilterPending = false; + this.pendingChildStatus = null; + this.metadata = null; + this.listener = null; + this.statusWatchers = []; + this.deadlineTimer = setTimeout(() => { + }, 0); + this.filterStack = null; + this.deadline = options2.deadline; + this.host = options2.host; + if (options2.parentCall) { + if (options2.flags & constants_1.Propagate.CANCELLATION) { + options2.parentCall.on("cancelled", () => { + this.cancelWithStatus(constants_1.Status.CANCELLED, "Cancelled by parent call"); + }); + } + if (options2.flags & constants_1.Propagate.DEADLINE) { + this.trace("Propagating deadline from parent: " + options2.parentCall.getDeadline()); + this.deadline = (0, deadline_1.minDeadline)(this.deadline, options2.parentCall.getDeadline()); + } + } + this.trace("Created"); + this.runDeadlineTimer(); + } + trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, "[" + this.callNumber + "] " + text); + } + runDeadlineTimer() { + clearTimeout(this.deadlineTimer); + this.trace("Deadline: " + (0, deadline_1.deadlineToString)(this.deadline)); + const timeout = (0, deadline_1.getRelativeTimeout)(this.deadline); + if (timeout !== Infinity) { + this.trace("Deadline will be reached in " + timeout + "ms"); + const handleDeadline = () => { + this.cancelWithStatus(constants_1.Status.DEADLINE_EXCEEDED, "Deadline exceeded"); + }; + if (timeout <= 0) { + process.nextTick(handleDeadline); + } else { + this.deadlineTimer = setTimeout(handleDeadline, timeout); + } + } + } + outputStatus(status) { + if (!this.ended) { + this.ended = true; + if (!this.filterStack) { + this.filterStack = this.filterStackFactory.createFilter(); + } + clearTimeout(this.deadlineTimer); + const filteredStatus = this.filterStack.receiveTrailers(status); + this.trace("ended with status: code=" + filteredStatus.code + ' details="' + filteredStatus.details + '"'); + this.statusWatchers.forEach((watcher) => watcher(filteredStatus)); + process.nextTick(() => { + var _a; + (_a = this.listener) === null || _a === void 0 ? void 0 : _a.onReceiveStatus(filteredStatus); + }); + } + } + sendMessageOnChild(context2, message) { + if (!this.child) { + throw new Error("sendMessageonChild called with child not populated"); + } + const child = this.child; + this.writeFilterPending = true; + this.filterStack.sendMessage(Promise.resolve({ message, flags: context2.flags })).then((filteredMessage) => { + this.writeFilterPending = false; + child.sendMessageWithContext(context2, filteredMessage.message); + if (this.pendingHalfClose) { + child.halfClose(); + } + }, (status) => { + this.cancelWithStatus(status.code, status.details); + }); + } + getConfig() { + if (this.ended) { + return; + } + if (!this.metadata || !this.listener) { + throw new Error("getConfig called before start"); + } + const configResult = this.channel.getConfig(this.method, this.metadata); + if (configResult.type === "NONE") { + this.channel.queueCallForConfig(this); + return; + } else if (configResult.type === "ERROR") { + if (this.metadata.getOptions().waitForReady) { + this.channel.queueCallForConfig(this); + } else { + this.outputStatus(configResult.error); + } + return; + } + const config = configResult.config; + if (config.status !== constants_1.Status.OK) { + const { code, details } = (0, control_plane_status_1.restrictControlPlaneStatusCode)(config.status, "Failed to route call to method " + this.method); + this.outputStatus({ + code, + details, + metadata: new metadata_1.Metadata() + }); + return; + } + if (config.methodConfig.timeout) { + const configDeadline = /* @__PURE__ */ new Date(); + configDeadline.setSeconds(configDeadline.getSeconds() + config.methodConfig.timeout.seconds); + configDeadline.setMilliseconds(configDeadline.getMilliseconds() + config.methodConfig.timeout.nanos / 1e6); + this.deadline = (0, deadline_1.minDeadline)(this.deadline, configDeadline); + this.runDeadlineTimer(); + } + this.filterStackFactory.push(config.dynamicFilterFactories); + this.filterStack = this.filterStackFactory.createFilter(); + this.filterStack.sendMetadata(Promise.resolve(this.metadata)).then((filteredMetadata) => { + this.child = this.channel.createInnerCall(config, this.method, this.host, this.credentials, this.deadline); + this.trace("Created child [" + this.child.getCallNumber() + "]"); + this.child.start(filteredMetadata, { + onReceiveMetadata: (metadata2) => { + this.trace("Received metadata"); + this.listener.onReceiveMetadata(this.filterStack.receiveMetadata(metadata2)); + }, + onReceiveMessage: (message) => { + this.trace("Received message"); + this.readFilterPending = true; + this.filterStack.receiveMessage(message).then((filteredMesssage) => { + this.trace("Finished filtering received message"); + this.readFilterPending = false; + this.listener.onReceiveMessage(filteredMesssage); + if (this.pendingChildStatus) { + this.outputStatus(this.pendingChildStatus); + } + }, (status) => { + this.cancelWithStatus(status.code, status.details); + }); + }, + onReceiveStatus: (status) => { + this.trace("Received status"); + if (this.readFilterPending) { + this.pendingChildStatus = status; + } else { + this.outputStatus(status); + } + } + }); + if (this.readPending) { + this.child.startRead(); + } + if (this.pendingMessage) { + this.sendMessageOnChild(this.pendingMessage.context, this.pendingMessage.message); + } else if (this.pendingHalfClose) { + this.child.halfClose(); + } + }, (status) => { + this.outputStatus(status); + }); + } + reportResolverError(status) { + var _a; + if ((_a = this.metadata) === null || _a === void 0 ? void 0 : _a.getOptions().waitForReady) { + this.channel.queueCallForConfig(this); + } else { + this.outputStatus(status); + } + } + cancelWithStatus(status, details) { + var _a; + this.trace("cancelWithStatus code: " + status + ' details: "' + details + '"'); + (_a = this.child) === null || _a === void 0 ? void 0 : _a.cancelWithStatus(status, details); + this.outputStatus({ code: status, details, metadata: new metadata_1.Metadata() }); + } + getPeer() { + var _a, _b; + return (_b = (_a = this.child) === null || _a === void 0 ? void 0 : _a.getPeer()) !== null && _b !== void 0 ? _b : this.channel.getTarget(); + } + start(metadata2, listener) { + this.trace("start called"); + this.metadata = metadata2.clone(); + this.listener = listener; + this.getConfig(); + } + sendMessageWithContext(context2, message) { + this.trace("write() called with message of length " + message.length); + if (this.child) { + this.sendMessageOnChild(context2, message); + } else { + this.pendingMessage = { context: context2, message }; + } + } + startRead() { + this.trace("startRead called"); + if (this.child) { + this.child.startRead(); + } else { + this.readPending = true; + } + } + halfClose() { + this.trace("halfClose called"); + if (this.child && !this.writeFilterPending) { + this.child.halfClose(); + } else { + this.pendingHalfClose = true; + } + } + setCredentials(credentials) { + this.credentials = this.credentials.compose(credentials); + } + addStatusWatcher(watcher) { + this.statusWatchers.push(watcher); + } + getCallNumber() { + return this.callNumber; + } + }; + exports2.ResolvingCall = ResolvingCall; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/retrying-call.js +var require_retrying_call = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/retrying-call.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.RetryingCall = exports2.MessageBufferTracker = exports2.RetryThrottler = void 0; + var constants_1 = require_constants10(); + var metadata_1 = require_metadata3(); + var logging = require_logging(); + var TRACER_NAME = "retrying_call"; + var RetryThrottler = class { + constructor(maxTokens, tokenRatio, previousRetryThrottler) { + this.maxTokens = maxTokens; + this.tokenRatio = tokenRatio; + if (previousRetryThrottler) { + this.tokens = previousRetryThrottler.tokens * (maxTokens / previousRetryThrottler.maxTokens); + } else { + this.tokens = maxTokens; + } + } + addCallSucceeded() { + this.tokens = Math.max(this.tokens + this.tokenRatio, this.maxTokens); + } + addCallFailed() { + this.tokens = Math.min(this.tokens - 1, 0); + } + canRetryCall() { + return this.tokens > this.maxTokens / 2; + } + }; + exports2.RetryThrottler = RetryThrottler; + var MessageBufferTracker = class { + constructor(totalLimit, limitPerCall) { + this.totalLimit = totalLimit; + this.limitPerCall = limitPerCall; + this.totalAllocated = 0; + this.allocatedPerCall = /* @__PURE__ */ new Map(); + } + allocate(size, callId) { + var _a; + const currentPerCall = (_a = this.allocatedPerCall.get(callId)) !== null && _a !== void 0 ? _a : 0; + if (this.limitPerCall - currentPerCall < size || this.totalLimit - this.totalAllocated < size) { + return false; + } + this.allocatedPerCall.set(callId, currentPerCall + size); + this.totalAllocated += size; + return true; + } + free(size, callId) { + var _a; + if (this.totalAllocated < size) { + throw new Error(`Invalid buffer allocation state: call ${callId} freed ${size} > total allocated ${this.totalAllocated}`); + } + this.totalAllocated -= size; + const currentPerCall = (_a = this.allocatedPerCall.get(callId)) !== null && _a !== void 0 ? _a : 0; + if (currentPerCall < size) { + throw new Error(`Invalid buffer allocation state: call ${callId} freed ${size} > allocated for call ${currentPerCall}`); + } + this.allocatedPerCall.set(callId, currentPerCall - size); + } + freeAll(callId) { + var _a; + const currentPerCall = (_a = this.allocatedPerCall.get(callId)) !== null && _a !== void 0 ? _a : 0; + if (this.totalAllocated < currentPerCall) { + throw new Error(`Invalid buffer allocation state: call ${callId} allocated ${currentPerCall} > total allocated ${this.totalAllocated}`); + } + this.totalAllocated -= currentPerCall; + this.allocatedPerCall.delete(callId); + } + }; + exports2.MessageBufferTracker = MessageBufferTracker; + var PREVIONS_RPC_ATTEMPTS_METADATA_KEY = "grpc-previous-rpc-attempts"; + var RetryingCall = class { + constructor(channel, callConfig, methodName, host, credentials, deadline, callNumber, bufferTracker, retryThrottler) { + this.channel = channel; + this.callConfig = callConfig; + this.methodName = methodName; + this.host = host; + this.credentials = credentials; + this.deadline = deadline; + this.callNumber = callNumber; + this.bufferTracker = bufferTracker; + this.retryThrottler = retryThrottler; + this.listener = null; + this.initialMetadata = null; + this.underlyingCalls = []; + this.writeBuffer = []; + this.writeBufferOffset = 0; + this.readStarted = false; + this.transparentRetryUsed = false; + this.attempts = 0; + this.hedgingTimer = null; + this.committedCallIndex = null; + this.initialRetryBackoffSec = 0; + this.nextRetryBackoffSec = 0; + if (callConfig.methodConfig.retryPolicy) { + this.state = "RETRY"; + const retryPolicy = callConfig.methodConfig.retryPolicy; + this.nextRetryBackoffSec = this.initialRetryBackoffSec = Number(retryPolicy.initialBackoff.substring(0, retryPolicy.initialBackoff.length - 1)); + } else if (callConfig.methodConfig.hedgingPolicy) { + this.state = "HEDGING"; + } else { + this.state = "TRANSPARENT_ONLY"; + } + } + getCallNumber() { + return this.callNumber; + } + trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, "[" + this.callNumber + "] " + text); + } + reportStatus(statusObject) { + this.trace("ended with status: code=" + statusObject.code + ' details="' + statusObject.details + '"'); + this.bufferTracker.freeAll(this.callNumber); + this.writeBufferOffset = this.writeBufferOffset + this.writeBuffer.length; + this.writeBuffer = []; + process.nextTick(() => { + var _a; + (_a = this.listener) === null || _a === void 0 ? void 0 : _a.onReceiveStatus({ + code: statusObject.code, + details: statusObject.details, + metadata: statusObject.metadata + }); + }); + } + cancelWithStatus(status, details) { + this.trace("cancelWithStatus code: " + status + ' details: "' + details + '"'); + this.reportStatus({ code: status, details, metadata: new metadata_1.Metadata() }); + for (const { call } of this.underlyingCalls) { + call.cancelWithStatus(status, details); + } + } + getPeer() { + if (this.committedCallIndex !== null) { + return this.underlyingCalls[this.committedCallIndex].call.getPeer(); + } else { + return "unknown"; + } + } + getBufferEntry(messageIndex) { + var _a; + return (_a = this.writeBuffer[messageIndex - this.writeBufferOffset]) !== null && _a !== void 0 ? _a : { entryType: "FREED", allocated: false }; + } + getNextBufferIndex() { + return this.writeBufferOffset + this.writeBuffer.length; + } + clearSentMessages() { + if (this.state !== "COMMITTED") { + return; + } + const earliestNeededMessageIndex = this.underlyingCalls[this.committedCallIndex].nextMessageToSend; + for (let messageIndex = this.writeBufferOffset; messageIndex < earliestNeededMessageIndex; messageIndex++) { + const bufferEntry = this.getBufferEntry(messageIndex); + if (bufferEntry.allocated) { + this.bufferTracker.free(bufferEntry.message.message.length, this.callNumber); + } + } + this.writeBuffer = this.writeBuffer.slice(earliestNeededMessageIndex - this.writeBufferOffset); + this.writeBufferOffset = earliestNeededMessageIndex; + } + commitCall(index) { + if (this.state === "COMMITTED") { + return; + } + if (this.underlyingCalls[index].state === "COMPLETED") { + return; + } + this.trace("Committing call [" + this.underlyingCalls[index].call.getCallNumber() + "] at index " + index); + this.state = "COMMITTED"; + this.committedCallIndex = index; + for (let i = 0; i < this.underlyingCalls.length; i++) { + if (i === index) { + continue; + } + if (this.underlyingCalls[i].state === "COMPLETED") { + continue; + } + this.underlyingCalls[i].state = "COMPLETED"; + this.underlyingCalls[i].call.cancelWithStatus(constants_1.Status.CANCELLED, "Discarded in favor of other hedged attempt"); + } + this.clearSentMessages(); + } + commitCallWithMostMessages() { + if (this.state === "COMMITTED") { + return; + } + let mostMessages = -1; + let callWithMostMessages = -1; + for (const [index, childCall] of this.underlyingCalls.entries()) { + if (childCall.state === "ACTIVE" && childCall.nextMessageToSend > mostMessages) { + mostMessages = childCall.nextMessageToSend; + callWithMostMessages = index; + } + } + if (callWithMostMessages === -1) { + this.state = "TRANSPARENT_ONLY"; + } else { + this.commitCall(callWithMostMessages); + } + } + isStatusCodeInList(list, code) { + return list.some((value) => value === code || value.toString().toLowerCase() === constants_1.Status[code].toLowerCase()); + } + getNextRetryBackoffMs() { + var _a; + const retryPolicy = (_a = this.callConfig) === null || _a === void 0 ? void 0 : _a.methodConfig.retryPolicy; + if (!retryPolicy) { + return 0; + } + const nextBackoffMs = Math.random() * this.nextRetryBackoffSec * 1e3; + const maxBackoffSec = Number(retryPolicy.maxBackoff.substring(0, retryPolicy.maxBackoff.length - 1)); + this.nextRetryBackoffSec = Math.min(this.nextRetryBackoffSec * retryPolicy.backoffMultiplier, maxBackoffSec); + return nextBackoffMs; + } + maybeRetryCall(pushback, callback) { + if (this.state !== "RETRY") { + callback(false); + return; + } + const retryPolicy = this.callConfig.methodConfig.retryPolicy; + if (this.attempts >= Math.min(retryPolicy.maxAttempts, 5)) { + callback(false); + return; + } + let retryDelayMs; + if (pushback === null) { + retryDelayMs = this.getNextRetryBackoffMs(); + } else if (pushback < 0) { + this.state = "TRANSPARENT_ONLY"; + callback(false); + return; + } else { + retryDelayMs = pushback; + this.nextRetryBackoffSec = this.initialRetryBackoffSec; + } + setTimeout(() => { + var _a, _b; + if (this.state !== "RETRY") { + callback(false); + return; + } + if ((_b = (_a = this.retryThrottler) === null || _a === void 0 ? void 0 : _a.canRetryCall()) !== null && _b !== void 0 ? _b : true) { + callback(true); + this.attempts += 1; + this.startNewAttempt(); + } + }, retryDelayMs); + } + countActiveCalls() { + let count = 0; + for (const call of this.underlyingCalls) { + if ((call === null || call === void 0 ? void 0 : call.state) === "ACTIVE") { + count += 1; + } + } + return count; + } + handleProcessedStatus(status, callIndex, pushback) { + var _a, _b, _c; + switch (this.state) { + case "COMMITTED": + case "TRANSPARENT_ONLY": + this.commitCall(callIndex); + this.reportStatus(status); + break; + case "HEDGING": + if (this.isStatusCodeInList((_a = this.callConfig.methodConfig.hedgingPolicy.nonFatalStatusCodes) !== null && _a !== void 0 ? _a : [], status.code)) { + (_b = this.retryThrottler) === null || _b === void 0 ? void 0 : _b.addCallFailed(); + let delayMs; + if (pushback === null) { + delayMs = 0; + } else if (pushback < 0) { + this.state = "TRANSPARENT_ONLY"; + this.commitCall(callIndex); + this.reportStatus(status); + return; + } else { + delayMs = pushback; + } + setTimeout(() => { + this.maybeStartHedgingAttempt(); + if (this.countActiveCalls() === 0) { + this.commitCall(callIndex); + this.reportStatus(status); + } + }, delayMs); + } else { + this.commitCall(callIndex); + this.reportStatus(status); + } + break; + case "RETRY": + if (this.isStatusCodeInList(this.callConfig.methodConfig.retryPolicy.retryableStatusCodes, status.code)) { + (_c = this.retryThrottler) === null || _c === void 0 ? void 0 : _c.addCallFailed(); + this.maybeRetryCall(pushback, (retried) => { + if (!retried) { + this.commitCall(callIndex); + this.reportStatus(status); + } + }); + } else { + this.commitCall(callIndex); + this.reportStatus(status); + } + break; + } + } + getPushback(metadata2) { + const mdValue = metadata2.get("grpc-retry-pushback-ms"); + if (mdValue.length === 0) { + return null; + } + try { + return parseInt(mdValue[0]); + } catch (e) { + return -1; + } + } + handleChildStatus(status, callIndex) { + var _a; + if (this.underlyingCalls[callIndex].state === "COMPLETED") { + return; + } + this.trace("state=" + this.state + " handling status with progress " + status.progress + " from child [" + this.underlyingCalls[callIndex].call.getCallNumber() + "] in state " + this.underlyingCalls[callIndex].state); + this.underlyingCalls[callIndex].state = "COMPLETED"; + if (status.code === constants_1.Status.OK) { + (_a = this.retryThrottler) === null || _a === void 0 ? void 0 : _a.addCallSucceeded(); + this.commitCall(callIndex); + this.reportStatus(status); + return; + } + if (this.state === "COMMITTED") { + this.reportStatus(status); + return; + } + const pushback = this.getPushback(status.metadata); + switch (status.progress) { + case "NOT_STARTED": + this.startNewAttempt(); + break; + case "REFUSED": + if (this.transparentRetryUsed) { + this.handleProcessedStatus(status, callIndex, pushback); + } else { + this.transparentRetryUsed = true; + this.startNewAttempt(); + } + ; + break; + case "DROP": + this.commitCall(callIndex); + this.reportStatus(status); + break; + case "PROCESSED": + this.handleProcessedStatus(status, callIndex, pushback); + break; + } + } + maybeStartHedgingAttempt() { + if (this.state !== "HEDGING") { + return; + } + if (!this.callConfig.methodConfig.hedgingPolicy) { + return; + } + const hedgingPolicy = this.callConfig.methodConfig.hedgingPolicy; + if (this.attempts >= Math.min(hedgingPolicy.maxAttempts, 5)) { + return; + } + this.attempts += 1; + this.startNewAttempt(); + this.maybeStartHedgingTimer(); + } + maybeStartHedgingTimer() { + var _a, _b, _c; + if (this.hedgingTimer) { + clearTimeout(this.hedgingTimer); + } + if (this.state !== "HEDGING") { + return; + } + if (!this.callConfig.methodConfig.hedgingPolicy) { + return; + } + const hedgingPolicy = this.callConfig.methodConfig.hedgingPolicy; + if (this.attempts >= Math.min(hedgingPolicy.maxAttempts, 5)) { + return; + } + const hedgingDelayString = (_a = hedgingPolicy.hedgingDelay) !== null && _a !== void 0 ? _a : "0s"; + const hedgingDelaySec = Number(hedgingDelayString.substring(0, hedgingDelayString.length - 1)); + this.hedgingTimer = setTimeout(() => { + this.maybeStartHedgingAttempt(); + }, hedgingDelaySec * 1e3); + (_c = (_b = this.hedgingTimer).unref) === null || _c === void 0 ? void 0 : _c.call(_b); + } + startNewAttempt() { + const child = this.channel.createLoadBalancingCall(this.callConfig, this.methodName, this.host, this.credentials, this.deadline); + this.trace("Created child call [" + child.getCallNumber() + "] for attempt " + this.attempts); + const index = this.underlyingCalls.length; + this.underlyingCalls.push({ state: "ACTIVE", call: child, nextMessageToSend: 0 }); + const previousAttempts = this.attempts - 1; + const initialMetadata = this.initialMetadata.clone(); + if (previousAttempts > 0) { + initialMetadata.set(PREVIONS_RPC_ATTEMPTS_METADATA_KEY, `${previousAttempts}`); + } + let receivedMetadata = false; + child.start(initialMetadata, { + onReceiveMetadata: (metadata2) => { + this.trace("Received metadata from child [" + child.getCallNumber() + "]"); + this.commitCall(index); + receivedMetadata = true; + if (previousAttempts > 0) { + metadata2.set(PREVIONS_RPC_ATTEMPTS_METADATA_KEY, `${previousAttempts}`); + } + if (this.underlyingCalls[index].state === "ACTIVE") { + this.listener.onReceiveMetadata(metadata2); + } + }, + onReceiveMessage: (message) => { + this.trace("Received message from child [" + child.getCallNumber() + "]"); + this.commitCall(index); + if (this.underlyingCalls[index].state === "ACTIVE") { + this.listener.onReceiveMessage(message); + } + }, + onReceiveStatus: (status) => { + this.trace("Received status from child [" + child.getCallNumber() + "]"); + if (!receivedMetadata && previousAttempts > 0) { + status.metadata.set(PREVIONS_RPC_ATTEMPTS_METADATA_KEY, `${previousAttempts}`); + } + this.handleChildStatus(status, index); + } + }); + this.sendNextChildMessage(index); + if (this.readStarted) { + child.startRead(); + } + } + start(metadata2, listener) { + this.trace("start called"); + this.listener = listener; + this.initialMetadata = metadata2; + this.attempts += 1; + this.startNewAttempt(); + this.maybeStartHedgingTimer(); + } + handleChildWriteCompleted(childIndex) { + var _a, _b; + const childCall = this.underlyingCalls[childIndex]; + const messageIndex = childCall.nextMessageToSend; + (_b = (_a = this.getBufferEntry(messageIndex)).callback) === null || _b === void 0 ? void 0 : _b.call(_a); + this.clearSentMessages(); + childCall.nextMessageToSend += 1; + this.sendNextChildMessage(childIndex); + } + sendNextChildMessage(childIndex) { + const childCall = this.underlyingCalls[childIndex]; + if (childCall.state === "COMPLETED") { + return; + } + if (this.getBufferEntry(childCall.nextMessageToSend)) { + const bufferEntry = this.getBufferEntry(childCall.nextMessageToSend); + switch (bufferEntry.entryType) { + case "MESSAGE": + childCall.call.sendMessageWithContext({ + callback: (error) => { + this.handleChildWriteCompleted(childIndex); + } + }, bufferEntry.message.message); + break; + case "HALF_CLOSE": + childCall.nextMessageToSend += 1; + childCall.call.halfClose(); + break; + case "FREED": + break; + } + } + } + sendMessageWithContext(context2, message) { + var _a; + this.trace("write() called with message of length " + message.length); + const writeObj = { + message, + flags: context2.flags + }; + const messageIndex = this.getNextBufferIndex(); + const bufferEntry = { + entryType: "MESSAGE", + message: writeObj, + allocated: this.bufferTracker.allocate(message.length, this.callNumber) + }; + this.writeBuffer.push(bufferEntry); + if (bufferEntry.allocated) { + (_a = context2.callback) === null || _a === void 0 ? void 0 : _a.call(context2); + for (const [callIndex, call] of this.underlyingCalls.entries()) { + if (call.state === "ACTIVE" && call.nextMessageToSend === messageIndex) { + call.call.sendMessageWithContext({ + callback: (error) => { + this.handleChildWriteCompleted(callIndex); + } + }, message); + } + } + } else { + this.commitCallWithMostMessages(); + if (this.committedCallIndex === null) { + return; + } + const call = this.underlyingCalls[this.committedCallIndex]; + bufferEntry.callback = context2.callback; + if (call.state === "ACTIVE" && call.nextMessageToSend === messageIndex) { + call.call.sendMessageWithContext({ + callback: (error) => { + this.handleChildWriteCompleted(this.committedCallIndex); + } + }, message); + } + } + } + startRead() { + this.trace("startRead called"); + this.readStarted = true; + for (const underlyingCall of this.underlyingCalls) { + if ((underlyingCall === null || underlyingCall === void 0 ? void 0 : underlyingCall.state) === "ACTIVE") { + underlyingCall.call.startRead(); + } + } + } + halfClose() { + this.trace("halfClose called"); + const halfCloseIndex = this.getNextBufferIndex(); + this.writeBuffer.push({ + entryType: "HALF_CLOSE", + allocated: false + }); + for (const call of this.underlyingCalls) { + if ((call === null || call === void 0 ? void 0 : call.state) === "ACTIVE" && call.nextMessageToSend === halfCloseIndex) { + call.nextMessageToSend += 1; + call.call.halfClose(); + } + } + } + setCredentials(newCredentials) { + throw new Error("Method not implemented."); + } + getMethod() { + return this.methodName; + } + getHost() { + return this.host; + } + }; + exports2.RetryingCall = RetryingCall; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/subchannel-interface.js +var require_subchannel_interface = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/subchannel-interface.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.BaseSubchannelWrapper = void 0; + var BaseSubchannelWrapper = class { + constructor(child) { + this.child = child; + } + getConnectivityState() { + return this.child.getConnectivityState(); + } + addConnectivityStateListener(listener) { + this.child.addConnectivityStateListener(listener); + } + removeConnectivityStateListener(listener) { + this.child.removeConnectivityStateListener(listener); + } + startConnecting() { + this.child.startConnecting(); + } + getAddress() { + return this.child.getAddress(); + } + throttleKeepalive(newKeepaliveTime) { + this.child.throttleKeepalive(newKeepaliveTime); + } + ref() { + this.child.ref(); + } + unref() { + this.child.unref(); + } + getChannelzRef() { + return this.child.getChannelzRef(); + } + getRealSubchannel() { + return this.child.getRealSubchannel(); + } + }; + exports2.BaseSubchannelWrapper = BaseSubchannelWrapper; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/internal-channel.js +var require_internal_channel = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/internal-channel.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.InternalChannel = void 0; + var channel_credentials_1 = require_channel_credentials(); + var resolving_load_balancer_1 = require_resolving_load_balancer(); + var subchannel_pool_1 = require_subchannel_pool(); + var picker_1 = require_picker(); + var constants_1 = require_constants10(); + var filter_stack_1 = require_filter_stack(); + var compression_filter_1 = require_compression_filter(); + var resolver_1 = require_resolver(); + var logging_1 = require_logging(); + var max_message_size_filter_1 = require_max_message_size_filter(); + var http_proxy_1 = require_http_proxy(); + var uri_parser_1 = require_uri_parser(); + var connectivity_state_1 = require_connectivity_state(); + var channelz_1 = require_channelz(); + var load_balancing_call_1 = require_load_balancing_call(); + var deadline_1 = require_deadline(); + var resolving_call_1 = require_resolving_call(); + var call_number_1 = require_call_number(); + var control_plane_status_1 = require_control_plane_status(); + var retrying_call_1 = require_retrying_call(); + var subchannel_interface_1 = require_subchannel_interface(); + var MAX_TIMEOUT_TIME = 2147483647; + var RETRY_THROTTLER_MAP = /* @__PURE__ */ new Map(); + var DEFAULT_RETRY_BUFFER_SIZE_BYTES = 1 << 24; + var DEFAULT_PER_RPC_RETRY_BUFFER_SIZE_BYTES = 1 << 20; + var ChannelSubchannelWrapper = class extends subchannel_interface_1.BaseSubchannelWrapper { + constructor(childSubchannel, channel) { + super(childSubchannel); + this.channel = channel; + this.refCount = 0; + this.subchannelStateListener = (subchannel, previousState, newState, keepaliveTime) => { + channel.throttleKeepalive(keepaliveTime); + }; + childSubchannel.addConnectivityStateListener(this.subchannelStateListener); + } + ref() { + this.child.ref(); + this.refCount += 1; + } + unref() { + this.child.unref(); + this.refCount -= 1; + if (this.refCount <= 0) { + this.child.removeConnectivityStateListener(this.subchannelStateListener); + this.channel.removeWrappedSubchannel(this); + } + } + }; + var InternalChannel = class { + constructor(target, credentials, options2) { + var _a, _b, _c, _d, _e, _f, _g; + this.credentials = credentials; + this.options = options2; + this.connectivityState = connectivity_state_1.ConnectivityState.IDLE; + this.currentPicker = new picker_1.UnavailablePicker(); + this.configSelectionQueue = []; + this.pickQueue = []; + this.connectivityStateWatchers = []; + this.configSelector = null; + this.currentResolutionError = null; + this.wrappedSubchannels = /* @__PURE__ */ new Set(); + this.channelzEnabled = true; + this.callTracker = new channelz_1.ChannelzCallTracker(); + this.childrenTracker = new channelz_1.ChannelzChildrenTracker(); + if (typeof target !== "string") { + throw new TypeError("Channel target must be a string"); + } + if (!(credentials instanceof channel_credentials_1.ChannelCredentials)) { + throw new TypeError("Channel credentials must be a ChannelCredentials object"); + } + if (options2) { + if (typeof options2 !== "object") { + throw new TypeError("Channel options must be an object"); + } + } + this.originalTarget = target; + const originalTargetUri = (0, uri_parser_1.parseUri)(target); + if (originalTargetUri === null) { + throw new Error(`Could not parse target name "${target}"`); + } + const defaultSchemeMapResult = (0, resolver_1.mapUriDefaultScheme)(originalTargetUri); + if (defaultSchemeMapResult === null) { + throw new Error(`Could not find a default scheme for target name "${target}"`); + } + this.callRefTimer = setInterval(() => { + }, MAX_TIMEOUT_TIME); + (_b = (_a = this.callRefTimer).unref) === null || _b === void 0 ? void 0 : _b.call(_a); + if (this.options["grpc.enable_channelz"] === 0) { + this.channelzEnabled = false; + } + this.channelzTrace = new channelz_1.ChannelzTrace(); + this.channelzRef = (0, channelz_1.registerChannelzChannel)(target, () => this.getChannelzInfo(), this.channelzEnabled); + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", "Channel created"); + } + if (this.options["grpc.default_authority"]) { + this.defaultAuthority = this.options["grpc.default_authority"]; + } else { + this.defaultAuthority = (0, resolver_1.getDefaultAuthority)(defaultSchemeMapResult); + } + const proxyMapResult = (0, http_proxy_1.mapProxyName)(defaultSchemeMapResult, options2); + this.target = proxyMapResult.target; + this.options = Object.assign({}, this.options, proxyMapResult.extraOptions); + this.subchannelPool = (0, subchannel_pool_1.getSubchannelPool)(((_c = options2["grpc.use_local_subchannel_pool"]) !== null && _c !== void 0 ? _c : 0) === 0); + this.retryBufferTracker = new retrying_call_1.MessageBufferTracker((_d = options2["grpc.retry_buffer_size"]) !== null && _d !== void 0 ? _d : DEFAULT_RETRY_BUFFER_SIZE_BYTES, (_e = options2["grpc.per_rpc_retry_buffer_size"]) !== null && _e !== void 0 ? _e : DEFAULT_PER_RPC_RETRY_BUFFER_SIZE_BYTES); + this.keepaliveTime = (_f = options2["grpc.keepalive_time_ms"]) !== null && _f !== void 0 ? _f : -1; + const channelControlHelper = { + createSubchannel: (subchannelAddress, subchannelArgs) => { + const subchannel = this.subchannelPool.getOrCreateSubchannel(this.target, subchannelAddress, Object.assign({}, this.options, subchannelArgs), this.credentials); + subchannel.throttleKeepalive(this.keepaliveTime); + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", "Created subchannel or used existing subchannel", subchannel.getChannelzRef()); + } + const wrappedSubchannel = new ChannelSubchannelWrapper(subchannel, this); + this.wrappedSubchannels.add(wrappedSubchannel); + return wrappedSubchannel; + }, + updateState: (connectivityState, picker) => { + this.currentPicker = picker; + const queueCopy = this.pickQueue.slice(); + this.pickQueue = []; + this.callRefTimerUnref(); + for (const call of queueCopy) { + call.doPick(); + } + this.updateState(connectivityState); + }, + requestReresolution: () => { + throw new Error("Resolving load balancer should never call requestReresolution"); + }, + addChannelzChild: (child) => { + if (this.channelzEnabled) { + this.childrenTracker.refChild(child); + } + }, + removeChannelzChild: (child) => { + if (this.channelzEnabled) { + this.childrenTracker.unrefChild(child); + } + } + }; + this.resolvingLoadBalancer = new resolving_load_balancer_1.ResolvingLoadBalancer(this.target, channelControlHelper, options2, (serviceConfig, configSelector) => { + if (serviceConfig.retryThrottling) { + RETRY_THROTTLER_MAP.set(this.getTarget(), new retrying_call_1.RetryThrottler(serviceConfig.retryThrottling.maxTokens, serviceConfig.retryThrottling.tokenRatio, RETRY_THROTTLER_MAP.get(this.getTarget()))); + } else { + RETRY_THROTTLER_MAP.delete(this.getTarget()); + } + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", "Address resolution succeeded"); + } + this.configSelector = configSelector; + this.currentResolutionError = null; + process.nextTick(() => { + const localQueue = this.configSelectionQueue; + this.configSelectionQueue = []; + this.callRefTimerUnref(); + for (const call of localQueue) { + call.getConfig(); + } + this.configSelectionQueue = []; + }); + }, (status) => { + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_WARNING", "Address resolution failed with code " + status.code + ' and details "' + status.details + '"'); + } + if (this.configSelectionQueue.length > 0) { + this.trace("Name resolution failed with calls queued for config selection"); + } + if (this.configSelector === null) { + this.currentResolutionError = Object.assign(Object.assign({}, (0, control_plane_status_1.restrictControlPlaneStatusCode)(status.code, status.details)), { metadata: status.metadata }); + } + const localQueue = this.configSelectionQueue; + this.configSelectionQueue = []; + this.callRefTimerUnref(); + for (const call of localQueue) { + call.reportResolverError(status); + } + }); + this.filterStackFactory = new filter_stack_1.FilterStackFactory([ + new max_message_size_filter_1.MaxMessageSizeFilterFactory(this.options), + new compression_filter_1.CompressionFilterFactory(this, this.options) + ]); + this.trace("Channel constructed with options " + JSON.stringify(options2, void 0, 2)); + const error = new Error(); + (0, logging_1.trace)(constants_1.LogVerbosity.DEBUG, "channel_stacktrace", "(" + this.channelzRef.id + ") Channel constructed \n" + ((_g = error.stack) === null || _g === void 0 ? void 0 : _g.substring(error.stack.indexOf("\n") + 1))); + } + getChannelzInfo() { + return { + target: this.originalTarget, + state: this.connectivityState, + trace: this.channelzTrace, + callTracker: this.callTracker, + children: this.childrenTracker.getChildLists() + }; + } + trace(text, verbosityOverride) { + (0, logging_1.trace)(verbosityOverride !== null && verbosityOverride !== void 0 ? verbosityOverride : constants_1.LogVerbosity.DEBUG, "channel", "(" + this.channelzRef.id + ") " + (0, uri_parser_1.uriToString)(this.target) + " " + text); + } + callRefTimerRef() { + var _a, _b, _c, _d; + if (!((_b = (_a = this.callRefTimer).hasRef) === null || _b === void 0 ? void 0 : _b.call(_a))) { + this.trace("callRefTimer.ref | configSelectionQueue.length=" + this.configSelectionQueue.length + " pickQueue.length=" + this.pickQueue.length); + (_d = (_c = this.callRefTimer).ref) === null || _d === void 0 ? void 0 : _d.call(_c); + } + } + callRefTimerUnref() { + var _a, _b; + if (!this.callRefTimer.hasRef || this.callRefTimer.hasRef()) { + this.trace("callRefTimer.unref | configSelectionQueue.length=" + this.configSelectionQueue.length + " pickQueue.length=" + this.pickQueue.length); + (_b = (_a = this.callRefTimer).unref) === null || _b === void 0 ? void 0 : _b.call(_a); + } + } + removeConnectivityStateWatcher(watcherObject) { + const watcherIndex = this.connectivityStateWatchers.findIndex((value) => value === watcherObject); + if (watcherIndex >= 0) { + this.connectivityStateWatchers.splice(watcherIndex, 1); + } + } + updateState(newState) { + (0, logging_1.trace)(constants_1.LogVerbosity.DEBUG, "connectivity_state", "(" + this.channelzRef.id + ") " + (0, uri_parser_1.uriToString)(this.target) + " " + connectivity_state_1.ConnectivityState[this.connectivityState] + " -> " + connectivity_state_1.ConnectivityState[newState]); + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", connectivity_state_1.ConnectivityState[this.connectivityState] + " -> " + connectivity_state_1.ConnectivityState[newState]); + } + this.connectivityState = newState; + const watchersCopy = this.connectivityStateWatchers.slice(); + for (const watcherObject of watchersCopy) { + if (newState !== watcherObject.currentState) { + if (watcherObject.timer) { + clearTimeout(watcherObject.timer); + } + this.removeConnectivityStateWatcher(watcherObject); + watcherObject.callback(); + } + } + if (newState !== connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE) { + this.currentResolutionError = null; + } + } + throttleKeepalive(newKeepaliveTime) { + if (newKeepaliveTime > this.keepaliveTime) { + this.keepaliveTime = newKeepaliveTime; + for (const wrappedSubchannel of this.wrappedSubchannels) { + wrappedSubchannel.throttleKeepalive(newKeepaliveTime); + } + } + } + removeWrappedSubchannel(wrappedSubchannel) { + this.wrappedSubchannels.delete(wrappedSubchannel); + } + doPick(metadata2, extraPickInfo) { + return this.currentPicker.pick({ metadata: metadata2, extraPickInfo }); + } + queueCallForPick(call) { + this.pickQueue.push(call); + this.callRefTimerRef(); + } + getConfig(method, metadata2) { + this.resolvingLoadBalancer.exitIdle(); + if (this.configSelector) { + return { + type: "SUCCESS", + config: this.configSelector(method, metadata2) + }; + } else { + if (this.currentResolutionError) { + return { + type: "ERROR", + error: this.currentResolutionError + }; + } else { + return { + type: "NONE" + }; + } + } + } + queueCallForConfig(call) { + this.configSelectionQueue.push(call); + this.callRefTimerRef(); + } + createLoadBalancingCall(callConfig, method, host, credentials, deadline) { + const callNumber = (0, call_number_1.getNextCallNumber)(); + this.trace("createLoadBalancingCall [" + callNumber + '] method="' + method + '"'); + return new load_balancing_call_1.LoadBalancingCall(this, callConfig, method, host, credentials, deadline, callNumber); + } + createRetryingCall(callConfig, method, host, credentials, deadline) { + const callNumber = (0, call_number_1.getNextCallNumber)(); + this.trace("createRetryingCall [" + callNumber + '] method="' + method + '"'); + return new retrying_call_1.RetryingCall(this, callConfig, method, host, credentials, deadline, callNumber, this.retryBufferTracker, RETRY_THROTTLER_MAP.get(this.getTarget())); + } + createInnerCall(callConfig, method, host, credentials, deadline) { + if (this.options["grpc.enable_retries"] === 0) { + return this.createLoadBalancingCall(callConfig, method, host, credentials, deadline); + } else { + return this.createRetryingCall(callConfig, method, host, credentials, deadline); + } + } + createResolvingCall(method, deadline, host, parentCall, propagateFlags) { + const callNumber = (0, call_number_1.getNextCallNumber)(); + this.trace("createResolvingCall [" + callNumber + '] method="' + method + '", deadline=' + (0, deadline_1.deadlineToString)(deadline)); + const finalOptions = { + deadline, + flags: propagateFlags !== null && propagateFlags !== void 0 ? propagateFlags : constants_1.Propagate.DEFAULTS, + host: host !== null && host !== void 0 ? host : this.defaultAuthority, + parentCall + }; + const call = new resolving_call_1.ResolvingCall(this, method, finalOptions, this.filterStackFactory.clone(), this.credentials._getCallCredentials(), callNumber); + if (this.channelzEnabled) { + this.callTracker.addCallStarted(); + call.addStatusWatcher((status) => { + if (status.code === constants_1.Status.OK) { + this.callTracker.addCallSucceeded(); + } else { + this.callTracker.addCallFailed(); + } + }); + } + return call; + } + close() { + this.resolvingLoadBalancer.destroy(); + this.updateState(connectivity_state_1.ConnectivityState.SHUTDOWN); + clearInterval(this.callRefTimer); + if (this.channelzEnabled) { + (0, channelz_1.unregisterChannelzRef)(this.channelzRef); + } + this.subchannelPool.unrefUnusedSubchannels(); + } + getTarget() { + return (0, uri_parser_1.uriToString)(this.target); + } + getConnectivityState(tryToConnect) { + const connectivityState = this.connectivityState; + if (tryToConnect) { + this.resolvingLoadBalancer.exitIdle(); + } + return connectivityState; + } + watchConnectivityState(currentState, deadline, callback) { + if (this.connectivityState === connectivity_state_1.ConnectivityState.SHUTDOWN) { + throw new Error("Channel has been shut down"); + } + let timer = null; + if (deadline !== Infinity) { + const deadlineDate = deadline instanceof Date ? deadline : new Date(deadline); + const now = /* @__PURE__ */ new Date(); + if (deadline === -Infinity || deadlineDate <= now) { + process.nextTick(callback, new Error("Deadline passed without connectivity state change")); + return; + } + timer = setTimeout(() => { + this.removeConnectivityStateWatcher(watcherObject); + callback(new Error("Deadline passed without connectivity state change")); + }, deadlineDate.getTime() - now.getTime()); + } + const watcherObject = { + currentState, + callback, + timer + }; + this.connectivityStateWatchers.push(watcherObject); + } + /** + * Get the channelz reference object for this channel. The returned value is + * garbage if channelz is disabled for this channel. + * @returns + */ + getChannelzRef() { + return this.channelzRef; + } + createCall(method, deadline, host, parentCall, propagateFlags) { + if (typeof method !== "string") { + throw new TypeError("Channel#createCall: method must be a string"); + } + if (!(typeof deadline === "number" || deadline instanceof Date)) { + throw new TypeError("Channel#createCall: deadline must be a number or Date"); + } + if (this.connectivityState === connectivity_state_1.ConnectivityState.SHUTDOWN) { + throw new Error("Channel has been shut down"); + } + return this.createResolvingCall(method, deadline, host, parentCall, propagateFlags); + } + }; + exports2.InternalChannel = InternalChannel; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/channel.js +var require_channel = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/channel.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ChannelImplementation = void 0; + var channel_credentials_1 = require_channel_credentials(); + var internal_channel_1 = require_internal_channel(); + var ChannelImplementation = class { + constructor(target, credentials, options2) { + if (typeof target !== "string") { + throw new TypeError("Channel target must be a string"); + } + if (!(credentials instanceof channel_credentials_1.ChannelCredentials)) { + throw new TypeError("Channel credentials must be a ChannelCredentials object"); + } + if (options2) { + if (typeof options2 !== "object") { + throw new TypeError("Channel options must be an object"); + } + } + this.internalChannel = new internal_channel_1.InternalChannel(target, credentials, options2); + } + close() { + this.internalChannel.close(); + } + getTarget() { + return this.internalChannel.getTarget(); + } + getConnectivityState(tryToConnect) { + return this.internalChannel.getConnectivityState(tryToConnect); + } + watchConnectivityState(currentState, deadline, callback) { + this.internalChannel.watchConnectivityState(currentState, deadline, callback); + } + /** + * Get the channelz reference object for this channel. The returned value is + * garbage if channelz is disabled for this channel. + * @returns + */ + getChannelzRef() { + return this.internalChannel.getChannelzRef(); + } + createCall(method, deadline, host, parentCall, propagateFlags) { + if (typeof method !== "string") { + throw new TypeError("Channel#createCall: method must be a string"); + } + if (!(typeof deadline === "number" || deadline instanceof Date)) { + throw new TypeError("Channel#createCall: deadline must be a number or Date"); + } + return this.internalChannel.createCall(method, deadline, host, parentCall, propagateFlags); + } + }; + exports2.ChannelImplementation = ChannelImplementation; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/server-call.js +var require_server_call = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/server-call.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Http2ServerCallStream = exports2.ServerDuplexStreamImpl = exports2.ServerWritableStreamImpl = exports2.ServerReadableStreamImpl = exports2.ServerUnaryCallImpl = void 0; + var events_1 = require("events"); + var http22 = require("http2"); + var stream_1 = require("stream"); + var zlib2 = require("zlib"); + var util_1 = require("util"); + var constants_1 = require_constants10(); + var metadata_1 = require_metadata3(); + var stream_decoder_1 = require_stream_decoder(); + var logging = require_logging(); + var error_1 = require_error3(); + var TRACER_NAME = "server_call"; + var unzip2 = (0, util_1.promisify)(zlib2.unzip); + var inflate = (0, util_1.promisify)(zlib2.inflate); + function trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, text); + } + var GRPC_ACCEPT_ENCODING_HEADER = "grpc-accept-encoding"; + var GRPC_ENCODING_HEADER = "grpc-encoding"; + var GRPC_MESSAGE_HEADER = "grpc-message"; + var GRPC_STATUS_HEADER = "grpc-status"; + var GRPC_TIMEOUT_HEADER = "grpc-timeout"; + var DEADLINE_REGEX = /(\d{1,8})\s*([HMSmun])/; + var deadlineUnitsToMs = { + H: 36e5, + M: 6e4, + S: 1e3, + m: 1, + u: 1e-3, + n: 1e-6 + }; + var defaultCompressionHeaders = { + // TODO(cjihrig): Remove these encoding headers from the default response + // once compression is integrated. + [GRPC_ACCEPT_ENCODING_HEADER]: "identity,deflate,gzip", + [GRPC_ENCODING_HEADER]: "identity" + }; + var defaultResponseHeaders = { + [http22.constants.HTTP2_HEADER_STATUS]: http22.constants.HTTP_STATUS_OK, + [http22.constants.HTTP2_HEADER_CONTENT_TYPE]: "application/grpc+proto" + }; + var defaultResponseOptions = { + waitForTrailers: true + }; + var ServerUnaryCallImpl = class extends events_1.EventEmitter { + constructor(call, metadata2, request) { + super(); + this.call = call; + this.metadata = metadata2; + this.request = request; + this.cancelled = false; + this.call.setupSurfaceCall(this); + } + getPeer() { + return this.call.getPeer(); + } + sendMetadata(responseMetadata) { + this.call.sendMetadata(responseMetadata); + } + getDeadline() { + return this.call.getDeadline(); + } + getPath() { + return this.call.getPath(); + } + }; + exports2.ServerUnaryCallImpl = ServerUnaryCallImpl; + var ServerReadableStreamImpl = class extends stream_1.Readable { + constructor(call, metadata2, deserialize, encoding) { + super({ objectMode: true }); + this.call = call; + this.metadata = metadata2; + this.deserialize = deserialize; + this.cancelled = false; + this.call.setupSurfaceCall(this); + this.call.setupReadable(this, encoding); + } + _read(size) { + if (!this.call.consumeUnpushedMessages(this)) { + return; + } + this.call.resume(); + } + getPeer() { + return this.call.getPeer(); + } + sendMetadata(responseMetadata) { + this.call.sendMetadata(responseMetadata); + } + getDeadline() { + return this.call.getDeadline(); + } + getPath() { + return this.call.getPath(); + } + }; + exports2.ServerReadableStreamImpl = ServerReadableStreamImpl; + var ServerWritableStreamImpl = class extends stream_1.Writable { + constructor(call, metadata2, serialize, request) { + super({ objectMode: true }); + this.call = call; + this.metadata = metadata2; + this.serialize = serialize; + this.request = request; + this.cancelled = false; + this.trailingMetadata = new metadata_1.Metadata(); + this.call.setupSurfaceCall(this); + this.on("error", (err2) => { + this.call.sendError(err2); + this.end(); + }); + } + getPeer() { + return this.call.getPeer(); + } + sendMetadata(responseMetadata) { + this.call.sendMetadata(responseMetadata); + } + getDeadline() { + return this.call.getDeadline(); + } + getPath() { + return this.call.getPath(); + } + _write(chunk, encoding, callback) { + try { + const response = this.call.serializeMessage(chunk); + if (!this.call.write(response)) { + this.call.once("drain", callback); + return; + } + } catch (err2) { + this.emit("error", { + details: (0, error_1.getErrorMessage)(err2), + code: constants_1.Status.INTERNAL + }); + } + callback(); + } + _final(callback) { + this.call.sendStatus({ + code: constants_1.Status.OK, + details: "OK", + metadata: this.trailingMetadata + }); + callback(null); + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any + end(metadata2) { + if (metadata2) { + this.trailingMetadata = metadata2; + } + return super.end(); + } + }; + exports2.ServerWritableStreamImpl = ServerWritableStreamImpl; + var ServerDuplexStreamImpl = class extends stream_1.Duplex { + constructor(call, metadata2, serialize, deserialize, encoding) { + super({ objectMode: true }); + this.call = call; + this.metadata = metadata2; + this.serialize = serialize; + this.deserialize = deserialize; + this.cancelled = false; + this.trailingMetadata = new metadata_1.Metadata(); + this.call.setupSurfaceCall(this); + this.call.setupReadable(this, encoding); + this.on("error", (err2) => { + this.call.sendError(err2); + this.end(); + }); + } + getPeer() { + return this.call.getPeer(); + } + sendMetadata(responseMetadata) { + this.call.sendMetadata(responseMetadata); + } + getDeadline() { + return this.call.getDeadline(); + } + getPath() { + return this.call.getPath(); + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any + end(metadata2) { + if (metadata2) { + this.trailingMetadata = metadata2; + } + return super.end(); + } + }; + exports2.ServerDuplexStreamImpl = ServerDuplexStreamImpl; + ServerDuplexStreamImpl.prototype._read = ServerReadableStreamImpl.prototype._read; + ServerDuplexStreamImpl.prototype._write = ServerWritableStreamImpl.prototype._write; + ServerDuplexStreamImpl.prototype._final = ServerWritableStreamImpl.prototype._final; + var Http2ServerCallStream = class extends events_1.EventEmitter { + constructor(stream5, handler, options2) { + super(); + this.stream = stream5; + this.handler = handler; + this.cancelled = false; + this.deadlineTimer = null; + this.statusSent = false; + this.deadline = Infinity; + this.wantTrailers = false; + this.metadataSent = false; + this.canPush = false; + this.isPushPending = false; + this.bufferedMessages = []; + this.messagesToPush = []; + this.maxSendMessageSize = constants_1.DEFAULT_MAX_SEND_MESSAGE_LENGTH; + this.maxReceiveMessageSize = constants_1.DEFAULT_MAX_RECEIVE_MESSAGE_LENGTH; + this.stream.once("error", (err2) => { + }); + this.stream.once("close", () => { + var _a; + trace("Request to method " + ((_a = this.handler) === null || _a === void 0 ? void 0 : _a.path) + " stream closed with rstCode " + this.stream.rstCode); + if (!this.statusSent) { + this.cancelled = true; + this.emit("cancelled", "cancelled"); + this.emit("streamEnd", false); + this.sendStatus({ + code: constants_1.Status.CANCELLED, + details: "Cancelled by client", + metadata: null + }); + } + }); + this.stream.on("drain", () => { + this.emit("drain"); + }); + if ("grpc.max_send_message_length" in options2) { + this.maxSendMessageSize = options2["grpc.max_send_message_length"]; + } + if ("grpc.max_receive_message_length" in options2) { + this.maxReceiveMessageSize = options2["grpc.max_receive_message_length"]; + } + } + checkCancelled() { + if (this.stream.destroyed || this.stream.closed) { + this.cancelled = true; + } + return this.cancelled; + } + getDecompressedMessage(message, encoding) { + if (encoding === "deflate") { + return inflate(message.subarray(5)); + } else if (encoding === "gzip") { + return unzip2(message.subarray(5)); + } else if (encoding === "identity") { + return message.subarray(5); + } + return Promise.reject({ + code: constants_1.Status.UNIMPLEMENTED, + details: `Received message compressed with unsupported encoding "${encoding}"` + }); + } + sendMetadata(customMetadata) { + if (this.checkCancelled()) { + return; + } + if (this.metadataSent) { + return; + } + this.metadataSent = true; + const custom = customMetadata ? customMetadata.toHttp2Headers() : null; + const headers = Object.assign(Object.assign(Object.assign({}, defaultResponseHeaders), defaultCompressionHeaders), custom); + this.stream.respond(headers, defaultResponseOptions); + } + receiveMetadata(headers) { + const metadata2 = metadata_1.Metadata.fromHttp2Headers(headers); + if (logging.isTracerEnabled(TRACER_NAME)) { + trace("Request to " + this.handler.path + " received headers " + JSON.stringify(metadata2.toJSON())); + } + const timeoutHeader = metadata2.get(GRPC_TIMEOUT_HEADER); + if (timeoutHeader.length > 0) { + const match2 = timeoutHeader[0].toString().match(DEADLINE_REGEX); + if (match2 === null) { + const err2 = new Error("Invalid deadline"); + err2.code = constants_1.Status.OUT_OF_RANGE; + this.sendError(err2); + return metadata2; + } + const timeout = +match2[1] * deadlineUnitsToMs[match2[2]] | 0; + const now = /* @__PURE__ */ new Date(); + this.deadline = now.setMilliseconds(now.getMilliseconds() + timeout); + this.deadlineTimer = setTimeout(handleExpiredDeadline, timeout, this); + metadata2.remove(GRPC_TIMEOUT_HEADER); + } + metadata2.remove(http22.constants.HTTP2_HEADER_ACCEPT_ENCODING); + metadata2.remove(http22.constants.HTTP2_HEADER_TE); + metadata2.remove(http22.constants.HTTP2_HEADER_CONTENT_TYPE); + metadata2.remove("grpc-accept-encoding"); + return metadata2; + } + receiveUnaryMessage(encoding, next) { + const { stream: stream5 } = this; + let receivedLength = 0; + const call = this; + const body2 = []; + const limit = this.maxReceiveMessageSize; + stream5.on("data", onData); + stream5.on("end", onEnd); + stream5.on("error", onEnd); + function onData(chunk) { + receivedLength += chunk.byteLength; + if (limit !== -1 && receivedLength > limit) { + stream5.removeListener("data", onData); + stream5.removeListener("end", onEnd); + stream5.removeListener("error", onEnd); + next({ + code: constants_1.Status.RESOURCE_EXHAUSTED, + details: `Received message larger than max (${receivedLength} vs. ${limit})` + }); + return; + } + body2.push(chunk); + } + function onEnd(err2) { + stream5.removeListener("data", onData); + stream5.removeListener("end", onEnd); + stream5.removeListener("error", onEnd); + if (err2 !== void 0) { + next({ code: constants_1.Status.INTERNAL, details: err2.message }); + return; + } + if (receivedLength === 0) { + next({ code: constants_1.Status.INTERNAL, details: "received empty unary message" }); + return; + } + call.emit("receiveMessage"); + const requestBytes = Buffer.concat(body2, receivedLength); + const compressed = requestBytes.readUInt8(0) === 1; + const compressedMessageEncoding = compressed ? encoding : "identity"; + const decompressedMessage = call.getDecompressedMessage(requestBytes, compressedMessageEncoding); + if (Buffer.isBuffer(decompressedMessage)) { + call.safeDeserializeMessage(decompressedMessage, next); + return; + } + decompressedMessage.then((decompressed) => call.safeDeserializeMessage(decompressed, next), (err3) => next(err3.code ? err3 : { + code: constants_1.Status.INTERNAL, + details: `Received "grpc-encoding" header "${encoding}" but ${encoding} decompression failed` + })); + } + } + safeDeserializeMessage(buffer2, next) { + try { + next(null, this.deserializeMessage(buffer2)); + } catch (err2) { + next({ + details: (0, error_1.getErrorMessage)(err2), + code: constants_1.Status.INTERNAL + }); + } + } + serializeMessage(value) { + const messageBuffer = this.handler.serialize(value); + const byteLength = messageBuffer.byteLength; + const output = Buffer.allocUnsafe(byteLength + 5); + output.writeUInt8(0, 0); + output.writeUInt32BE(byteLength, 1); + messageBuffer.copy(output, 5); + return output; + } + deserializeMessage(bytes) { + return this.handler.deserialize(bytes); + } + async sendUnaryMessage(err2, value, metadata2, flags2) { + if (this.checkCancelled()) { + return; + } + if (metadata2 === void 0) { + metadata2 = null; + } + if (err2) { + if (!Object.prototype.hasOwnProperty.call(err2, "metadata") && metadata2) { + err2.metadata = metadata2; + } + this.sendError(err2); + return; + } + try { + const response = this.serializeMessage(value); + this.write(response); + this.sendStatus({ code: constants_1.Status.OK, details: "OK", metadata: metadata2 }); + } catch (err3) { + this.sendError({ + details: (0, error_1.getErrorMessage)(err3), + code: constants_1.Status.INTERNAL + }); + } + } + sendStatus(statusObj) { + var _a, _b; + this.emit("callEnd", statusObj.code); + this.emit("streamEnd", statusObj.code === constants_1.Status.OK); + if (this.checkCancelled()) { + return; + } + trace("Request to method " + ((_a = this.handler) === null || _a === void 0 ? void 0 : _a.path) + " ended with status code: " + constants_1.Status[statusObj.code] + " details: " + statusObj.details); + if (this.deadlineTimer) + clearTimeout(this.deadlineTimer); + if (this.stream.headersSent) { + if (!this.wantTrailers) { + this.wantTrailers = true; + this.stream.once("wantTrailers", () => { + var _a2; + const trailersToSend = Object.assign({ [GRPC_STATUS_HEADER]: statusObj.code, [GRPC_MESSAGE_HEADER]: encodeURI(statusObj.details) }, (_a2 = statusObj.metadata) === null || _a2 === void 0 ? void 0 : _a2.toHttp2Headers()); + this.stream.sendTrailers(trailersToSend); + this.statusSent = true; + }); + this.stream.end(); + } + } else { + const trailersToSend = Object.assign(Object.assign({ [GRPC_STATUS_HEADER]: statusObj.code, [GRPC_MESSAGE_HEADER]: encodeURI(statusObj.details) }, defaultResponseHeaders), (_b = statusObj.metadata) === null || _b === void 0 ? void 0 : _b.toHttp2Headers()); + this.stream.respond(trailersToSend, { endStream: true }); + this.statusSent = true; + } + } + sendError(error) { + const status = { + code: constants_1.Status.UNKNOWN, + details: "message" in error ? error.message : "Unknown Error", + metadata: "metadata" in error && error.metadata !== void 0 ? error.metadata : null + }; + if ("code" in error && typeof error.code === "number" && Number.isInteger(error.code)) { + status.code = error.code; + if ("details" in error && typeof error.details === "string") { + status.details = error.details; + } + } + this.sendStatus(status); + } + write(chunk) { + if (this.checkCancelled()) { + return; + } + if (this.maxSendMessageSize !== -1 && chunk.length > this.maxSendMessageSize) { + this.sendError({ + code: constants_1.Status.RESOURCE_EXHAUSTED, + details: `Sent message larger than max (${chunk.length} vs. ${this.maxSendMessageSize})` + }); + return; + } + this.sendMetadata(); + this.emit("sendMessage"); + return this.stream.write(chunk); + } + resume() { + this.stream.resume(); + } + setupSurfaceCall(call) { + this.once("cancelled", (reason) => { + call.cancelled = true; + call.emit("cancelled", reason); + }); + this.once("callEnd", (status) => call.emit("callEnd", status)); + } + setupReadable(readable, encoding) { + const decoder = new stream_decoder_1.StreamDecoder(); + let readsDone = false; + let pendingMessageProcessing = false; + let pushedEnd = false; + const maybePushEnd = async () => { + if (!pushedEnd && readsDone && !pendingMessageProcessing) { + pushedEnd = true; + await this.pushOrBufferMessage(readable, null); + } + }; + this.stream.on("data", async (data) => { + const messages = decoder.write(data); + pendingMessageProcessing = true; + this.stream.pause(); + for (const message of messages) { + if (this.maxReceiveMessageSize !== -1 && message.length > this.maxReceiveMessageSize) { + this.sendError({ + code: constants_1.Status.RESOURCE_EXHAUSTED, + details: `Received message larger than max (${message.length} vs. ${this.maxReceiveMessageSize})` + }); + return; + } + this.emit("receiveMessage"); + const compressed = message.readUInt8(0) === 1; + const compressedMessageEncoding = compressed ? encoding : "identity"; + const decompressedMessage = await this.getDecompressedMessage(message, compressedMessageEncoding); + if (!decompressedMessage) + return; + await this.pushOrBufferMessage(readable, decompressedMessage); + } + pendingMessageProcessing = false; + this.stream.resume(); + await maybePushEnd(); + }); + this.stream.once("end", async () => { + readsDone = true; + await maybePushEnd(); + }); + } + consumeUnpushedMessages(readable) { + this.canPush = true; + while (this.messagesToPush.length > 0) { + const nextMessage = this.messagesToPush.shift(); + const canPush = readable.push(nextMessage); + if (nextMessage === null || canPush === false) { + this.canPush = false; + break; + } + } + return this.canPush; + } + async pushOrBufferMessage(readable, messageBytes) { + if (this.isPushPending) { + this.bufferedMessages.push(messageBytes); + } else { + await this.pushMessage(readable, messageBytes); + } + } + async pushMessage(readable, messageBytes) { + if (messageBytes === null) { + trace("Received end of stream"); + if (this.canPush) { + readable.push(null); + } else { + this.messagesToPush.push(null); + } + return; + } + trace("Received message of length " + messageBytes.length); + this.isPushPending = true; + try { + const deserialized = await this.deserializeMessage(messageBytes); + if (this.canPush) { + if (!readable.push(deserialized)) { + this.canPush = false; + this.stream.pause(); + } + } else { + this.messagesToPush.push(deserialized); + } + } catch (error) { + this.bufferedMessages.length = 0; + let code = (0, error_1.getErrorCode)(error); + if (code === null || code < constants_1.Status.OK || code > constants_1.Status.UNAUTHENTICATED) { + code = constants_1.Status.INTERNAL; + } + readable.emit("error", { + details: (0, error_1.getErrorMessage)(error), + code + }); + } + this.isPushPending = false; + if (this.bufferedMessages.length > 0) { + await this.pushMessage(readable, this.bufferedMessages.shift()); + } + } + getPeer() { + var _a; + const socket = (_a = this.stream.session) === null || _a === void 0 ? void 0 : _a.socket; + if (socket === null || socket === void 0 ? void 0 : socket.remoteAddress) { + if (socket.remotePort) { + return `${socket.remoteAddress}:${socket.remotePort}`; + } else { + return socket.remoteAddress; + } + } else { + return "unknown"; + } + } + getDeadline() { + return this.deadline; + } + getPath() { + return this.handler.path; + } + }; + exports2.Http2ServerCallStream = Http2ServerCallStream; + function handleExpiredDeadline(call) { + const err2 = new Error("Deadline exceeded"); + err2.code = constants_1.Status.DEADLINE_EXCEEDED; + call.sendError(err2); + call.cancelled = true; + call.emit("cancelled", "deadline"); + } + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/server-credentials.js +var require_server_credentials = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/server-credentials.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ServerCredentials = void 0; + var tls_helpers_1 = require_tls_helpers(); + var ServerCredentials = class { + static createInsecure() { + return new InsecureServerCredentials(); + } + static createSsl(rootCerts, keyCertPairs, checkClientCertificate = false) { + if (rootCerts !== null && !Buffer.isBuffer(rootCerts)) { + throw new TypeError("rootCerts must be null or a Buffer"); + } + if (!Array.isArray(keyCertPairs)) { + throw new TypeError("keyCertPairs must be an array"); + } + if (typeof checkClientCertificate !== "boolean") { + throw new TypeError("checkClientCertificate must be a boolean"); + } + const cert = []; + const key = []; + for (let i = 0; i < keyCertPairs.length; i++) { + const pair = keyCertPairs[i]; + if (pair === null || typeof pair !== "object") { + throw new TypeError(`keyCertPair[${i}] must be an object`); + } + if (!Buffer.isBuffer(pair.private_key)) { + throw new TypeError(`keyCertPair[${i}].private_key must be a Buffer`); + } + if (!Buffer.isBuffer(pair.cert_chain)) { + throw new TypeError(`keyCertPair[${i}].cert_chain must be a Buffer`); + } + cert.push(pair.cert_chain); + key.push(pair.private_key); + } + return new SecureServerCredentials({ + ca: rootCerts || (0, tls_helpers_1.getDefaultRootsData)() || void 0, + cert, + key, + requestCert: checkClientCertificate, + ciphers: tls_helpers_1.CIPHER_SUITES + }); + } + }; + exports2.ServerCredentials = ServerCredentials; + var InsecureServerCredentials = class extends ServerCredentials { + _isSecure() { + return false; + } + _getSettings() { + return null; + } + }; + var SecureServerCredentials = class extends ServerCredentials { + constructor(options2) { + super(); + this.options = options2; + } + _isSecure() { + return true; + } + _getSettings() { + return this.options; + } + }; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/server.js +var require_server = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/server.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.Server = void 0; + var http22 = require("http2"); + var constants_1 = require_constants10(); + var server_call_1 = require_server_call(); + var server_credentials_1 = require_server_credentials(); + var resolver_1 = require_resolver(); + var logging = require_logging(); + var subchannel_address_1 = require_subchannel_address(); + var uri_parser_1 = require_uri_parser(); + var channelz_1 = require_channelz(); + var error_1 = require_error3(); + var UNLIMITED_CONNECTION_AGE_MS = ~(1 << 31); + var KEEPALIVE_MAX_TIME_MS = ~(1 << 31); + var KEEPALIVE_TIMEOUT_MS = 2e4; + var { HTTP2_HEADER_PATH } = http22.constants; + var TRACER_NAME = "server"; + function noop2() { + } + function getUnimplementedStatusResponse(methodName) { + return { + code: constants_1.Status.UNIMPLEMENTED, + details: `The server does not implement the method ${methodName}` + }; + } + function getDefaultHandler(handlerType, methodName) { + const unimplementedStatusResponse = getUnimplementedStatusResponse(methodName); + switch (handlerType) { + case "unary": + return (call, callback) => { + callback(unimplementedStatusResponse, null); + }; + case "clientStream": + return (call, callback) => { + callback(unimplementedStatusResponse, null); + }; + case "serverStream": + return (call) => { + call.emit("error", unimplementedStatusResponse); + }; + case "bidi": + return (call) => { + call.emit("error", unimplementedStatusResponse); + }; + default: + throw new Error(`Invalid handlerType ${handlerType}`); + } + } + var Server = class { + constructor(options2) { + var _a, _b, _c, _d; + this.http2ServerList = []; + this.handlers = /* @__PURE__ */ new Map(); + this.sessions = /* @__PURE__ */ new Map(); + this.started = false; + this.serverAddressString = "null"; + this.channelzEnabled = true; + this.channelzTrace = new channelz_1.ChannelzTrace(); + this.callTracker = new channelz_1.ChannelzCallTracker(); + this.listenerChildrenTracker = new channelz_1.ChannelzChildrenTracker(); + this.sessionChildrenTracker = new channelz_1.ChannelzChildrenTracker(); + this.options = options2 !== null && options2 !== void 0 ? options2 : {}; + if (this.options["grpc.enable_channelz"] === 0) { + this.channelzEnabled = false; + } + this.channelzRef = (0, channelz_1.registerChannelzServer)(() => this.getChannelzInfo(), this.channelzEnabled); + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", "Server created"); + } + this.maxConnectionAgeMs = (_a = this.options["grpc.max_connection_age_ms"]) !== null && _a !== void 0 ? _a : UNLIMITED_CONNECTION_AGE_MS; + this.maxConnectionAgeGraceMs = (_b = this.options["grpc.max_connection_age_grace_ms"]) !== null && _b !== void 0 ? _b : UNLIMITED_CONNECTION_AGE_MS; + this.keepaliveTimeMs = (_c = this.options["grpc.keepalive_time_ms"]) !== null && _c !== void 0 ? _c : KEEPALIVE_MAX_TIME_MS; + this.keepaliveTimeoutMs = (_d = this.options["grpc.keepalive_timeout_ms"]) !== null && _d !== void 0 ? _d : KEEPALIVE_TIMEOUT_MS; + this.trace("Server constructed"); + } + getChannelzInfo() { + return { + trace: this.channelzTrace, + callTracker: this.callTracker, + listenerChildren: this.listenerChildrenTracker.getChildLists(), + sessionChildren: this.sessionChildrenTracker.getChildLists() + }; + } + getChannelzSessionInfoGetter(session) { + return () => { + var _a, _b, _c; + const sessionInfo = this.sessions.get(session); + const sessionSocket = session.socket; + const remoteAddress = sessionSocket.remoteAddress ? (0, subchannel_address_1.stringToSubchannelAddress)(sessionSocket.remoteAddress, sessionSocket.remotePort) : null; + const localAddress = sessionSocket.localAddress ? (0, subchannel_address_1.stringToSubchannelAddress)(sessionSocket.localAddress, sessionSocket.localPort) : null; + let tlsInfo; + if (session.encrypted) { + const tlsSocket = sessionSocket; + const cipherInfo = tlsSocket.getCipher(); + const certificate = tlsSocket.getCertificate(); + const peerCertificate = tlsSocket.getPeerCertificate(); + tlsInfo = { + cipherSuiteStandardName: (_a = cipherInfo.standardName) !== null && _a !== void 0 ? _a : null, + cipherSuiteOtherName: cipherInfo.standardName ? null : cipherInfo.name, + localCertificate: certificate && "raw" in certificate ? certificate.raw : null, + remoteCertificate: peerCertificate && "raw" in peerCertificate ? peerCertificate.raw : null + }; + } else { + tlsInfo = null; + } + const socketInfo = { + remoteAddress, + localAddress, + security: tlsInfo, + remoteName: null, + streamsStarted: sessionInfo.streamTracker.callsStarted, + streamsSucceeded: sessionInfo.streamTracker.callsSucceeded, + streamsFailed: sessionInfo.streamTracker.callsFailed, + messagesSent: sessionInfo.messagesSent, + messagesReceived: sessionInfo.messagesReceived, + keepAlivesSent: 0, + lastLocalStreamCreatedTimestamp: null, + lastRemoteStreamCreatedTimestamp: sessionInfo.streamTracker.lastCallStartedTimestamp, + lastMessageSentTimestamp: sessionInfo.lastMessageSentTimestamp, + lastMessageReceivedTimestamp: sessionInfo.lastMessageReceivedTimestamp, + localFlowControlWindow: (_b = session.state.localWindowSize) !== null && _b !== void 0 ? _b : null, + remoteFlowControlWindow: (_c = session.state.remoteWindowSize) !== null && _c !== void 0 ? _c : null + }; + return socketInfo; + }; + } + trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, "(" + this.channelzRef.id + ") " + text); + } + addProtoService() { + throw new Error("Not implemented. Use addService() instead"); + } + addService(service, implementation) { + if (service === null || typeof service !== "object" || implementation === null || typeof implementation !== "object") { + throw new Error("addService() requires two objects as arguments"); + } + const serviceKeys = Object.keys(service); + if (serviceKeys.length === 0) { + throw new Error("Cannot add an empty service to a server"); + } + serviceKeys.forEach((name) => { + const attrs = service[name]; + let methodType; + if (attrs.requestStream) { + if (attrs.responseStream) { + methodType = "bidi"; + } else { + methodType = "clientStream"; + } + } else { + if (attrs.responseStream) { + methodType = "serverStream"; + } else { + methodType = "unary"; + } + } + let implFn = implementation[name]; + let impl; + if (implFn === void 0 && typeof attrs.originalName === "string") { + implFn = implementation[attrs.originalName]; + } + if (implFn !== void 0) { + impl = implFn.bind(implementation); + } else { + impl = getDefaultHandler(methodType, name); + } + const success = this.register(attrs.path, impl, attrs.responseSerialize, attrs.requestDeserialize, methodType); + if (success === false) { + throw new Error(`Method handler for ${attrs.path} already provided.`); + } + }); + } + removeService(service) { + if (service === null || typeof service !== "object") { + throw new Error("removeService() requires object as argument"); + } + const serviceKeys = Object.keys(service); + serviceKeys.forEach((name) => { + const attrs = service[name]; + this.unregister(attrs.path); + }); + } + bind(port, creds) { + throw new Error("Not implemented. Use bindAsync() instead"); + } + bindAsync(port, creds, callback) { + if (this.started === true) { + throw new Error("server is already started"); + } + if (typeof port !== "string") { + throw new TypeError("port must be a string"); + } + if (creds === null || !(creds instanceof server_credentials_1.ServerCredentials)) { + throw new TypeError("creds must be a ServerCredentials object"); + } + if (typeof callback !== "function") { + throw new TypeError("callback must be a function"); + } + const initialPortUri = (0, uri_parser_1.parseUri)(port); + if (initialPortUri === null) { + throw new Error(`Could not parse port "${port}"`); + } + const portUri = (0, resolver_1.mapUriDefaultScheme)(initialPortUri); + if (portUri === null) { + throw new Error(`Could not get a default scheme for port "${port}"`); + } + const serverOptions = { + maxSendHeaderBlockLength: Number.MAX_SAFE_INTEGER + }; + if ("grpc-node.max_session_memory" in this.options) { + serverOptions.maxSessionMemory = this.options["grpc-node.max_session_memory"]; + } else { + serverOptions.maxSessionMemory = Number.MAX_SAFE_INTEGER; + } + if ("grpc.max_concurrent_streams" in this.options) { + serverOptions.settings = { + maxConcurrentStreams: this.options["grpc.max_concurrent_streams"] + }; + } + const deferredCallback = (error, port2) => { + process.nextTick(() => callback(error, port2)); + }; + const setupServer = () => { + let http2Server; + if (creds._isSecure()) { + const secureServerOptions = Object.assign(serverOptions, creds._getSettings()); + http2Server = http22.createSecureServer(secureServerOptions); + http2Server.on("secureConnection", (socket) => { + socket.on("error", (e) => { + this.trace("An incoming TLS connection closed with error: " + e.message); + }); + }); + } else { + http2Server = http22.createServer(serverOptions); + } + http2Server.setTimeout(0, noop2); + this._setupHandlers(http2Server); + return http2Server; + }; + const bindSpecificPort = (addressList, portNum, previousCount) => { + if (addressList.length === 0) { + return Promise.resolve({ port: portNum, count: previousCount }); + } + return Promise.all(addressList.map((address) => { + this.trace("Attempting to bind " + (0, subchannel_address_1.subchannelAddressToString)(address)); + let addr2; + if ((0, subchannel_address_1.isTcpSubchannelAddress)(address)) { + addr2 = { + host: address.host, + port: portNum + }; + } else { + addr2 = address; + } + const http2Server = setupServer(); + return new Promise((resolve8, reject) => { + const onError = (err2) => { + this.trace("Failed to bind " + (0, subchannel_address_1.subchannelAddressToString)(address) + " with error " + err2.message); + resolve8(err2); + }; + http2Server.once("error", onError); + http2Server.listen(addr2, () => { + const boundAddress = http2Server.address(); + let boundSubchannelAddress; + if (typeof boundAddress === "string") { + boundSubchannelAddress = { + path: boundAddress + }; + } else { + boundSubchannelAddress = { + host: boundAddress.address, + port: boundAddress.port + }; + } + let channelzRef; + channelzRef = (0, channelz_1.registerChannelzSocket)((0, subchannel_address_1.subchannelAddressToString)(boundSubchannelAddress), () => { + return { + localAddress: boundSubchannelAddress, + remoteAddress: null, + security: null, + remoteName: null, + streamsStarted: 0, + streamsSucceeded: 0, + streamsFailed: 0, + messagesSent: 0, + messagesReceived: 0, + keepAlivesSent: 0, + lastLocalStreamCreatedTimestamp: null, + lastRemoteStreamCreatedTimestamp: null, + lastMessageSentTimestamp: null, + lastMessageReceivedTimestamp: null, + localFlowControlWindow: null, + remoteFlowControlWindow: null + }; + }, this.channelzEnabled); + if (this.channelzEnabled) { + this.listenerChildrenTracker.refChild(channelzRef); + } + this.http2ServerList.push({ server: http2Server, channelzRef }); + this.trace("Successfully bound " + (0, subchannel_address_1.subchannelAddressToString)(boundSubchannelAddress)); + resolve8("port" in boundSubchannelAddress ? boundSubchannelAddress.port : portNum); + http2Server.removeListener("error", onError); + }); + }); + })).then((results) => { + let count = 0; + for (const result of results) { + if (typeof result === "number") { + count += 1; + if (result !== portNum) { + throw new Error("Invalid state: multiple port numbers added from single address"); + } + } + } + return { + port: portNum, + count: count + previousCount + }; + }); + }; + const bindWildcardPort = (addressList) => { + if (addressList.length === 0) { + return Promise.resolve({ port: 0, count: 0 }); + } + const address = addressList[0]; + const http2Server = setupServer(); + return new Promise((resolve8, reject) => { + const onError = (err2) => { + this.trace("Failed to bind " + (0, subchannel_address_1.subchannelAddressToString)(address) + " with error " + err2.message); + resolve8(bindWildcardPort(addressList.slice(1))); + }; + http2Server.once("error", onError); + http2Server.listen(address, () => { + const boundAddress = http2Server.address(); + const boundSubchannelAddress = { + host: boundAddress.address, + port: boundAddress.port + }; + let channelzRef; + channelzRef = (0, channelz_1.registerChannelzSocket)((0, subchannel_address_1.subchannelAddressToString)(boundSubchannelAddress), () => { + return { + localAddress: boundSubchannelAddress, + remoteAddress: null, + security: null, + remoteName: null, + streamsStarted: 0, + streamsSucceeded: 0, + streamsFailed: 0, + messagesSent: 0, + messagesReceived: 0, + keepAlivesSent: 0, + lastLocalStreamCreatedTimestamp: null, + lastRemoteStreamCreatedTimestamp: null, + lastMessageSentTimestamp: null, + lastMessageReceivedTimestamp: null, + localFlowControlWindow: null, + remoteFlowControlWindow: null + }; + }, this.channelzEnabled); + if (this.channelzEnabled) { + this.listenerChildrenTracker.refChild(channelzRef); + } + this.http2ServerList.push({ server: http2Server, channelzRef }); + this.trace("Successfully bound " + (0, subchannel_address_1.subchannelAddressToString)(boundSubchannelAddress)); + resolve8(bindSpecificPort(addressList.slice(1), boundAddress.port, 1)); + http2Server.removeListener("error", onError); + }); + }); + }; + const resolverListener = { + onSuccessfulResolution: (addressList, serviceConfig, serviceConfigError) => { + resolverListener.onSuccessfulResolution = () => { + }; + if (addressList.length === 0) { + deferredCallback(new Error(`No addresses resolved for port ${port}`), 0); + return; + } + let bindResultPromise; + if ((0, subchannel_address_1.isTcpSubchannelAddress)(addressList[0])) { + if (addressList[0].port === 0) { + bindResultPromise = bindWildcardPort(addressList); + } else { + bindResultPromise = bindSpecificPort(addressList, addressList[0].port, 0); + } + } else { + bindResultPromise = bindSpecificPort(addressList, 1, 0); + } + bindResultPromise.then((bindResult) => { + if (bindResult.count === 0) { + const errorString = `No address added out of total ${addressList.length} resolved`; + logging.log(constants_1.LogVerbosity.ERROR, errorString); + deferredCallback(new Error(errorString), 0); + } else { + if (bindResult.count < addressList.length) { + logging.log(constants_1.LogVerbosity.INFO, `WARNING Only ${bindResult.count} addresses added out of total ${addressList.length} resolved`); + } + deferredCallback(null, bindResult.port); + } + }, (error) => { + const errorString = `No address added out of total ${addressList.length} resolved`; + logging.log(constants_1.LogVerbosity.ERROR, errorString); + deferredCallback(new Error(errorString), 0); + }); + }, + onError: (error) => { + deferredCallback(new Error(error.details), 0); + } + }; + const resolver = (0, resolver_1.createResolver)(portUri, resolverListener, this.options); + resolver.updateResolution(); + } + forceShutdown() { + for (const { server: http2Server, channelzRef: ref } of this.http2ServerList) { + if (http2Server.listening) { + http2Server.close(() => { + if (this.channelzEnabled) { + this.listenerChildrenTracker.unrefChild(ref); + (0, channelz_1.unregisterChannelzRef)(ref); + } + }); + } + } + this.started = false; + this.sessions.forEach((channelzInfo, session) => { + session.destroy(http22.constants.NGHTTP2_CANCEL); + }); + this.sessions.clear(); + if (this.channelzEnabled) { + (0, channelz_1.unregisterChannelzRef)(this.channelzRef); + } + } + register(name, handler, serialize, deserialize, type2) { + if (this.handlers.has(name)) { + return false; + } + this.handlers.set(name, { + func: handler, + serialize, + deserialize, + type: type2, + path: name + }); + return true; + } + unregister(name) { + return this.handlers.delete(name); + } + start() { + if (this.http2ServerList.length === 0 || this.http2ServerList.every(({ server: http2Server }) => http2Server.listening !== true)) { + throw new Error("server must be bound in order to start"); + } + if (this.started === true) { + throw new Error("server is already started"); + } + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", "Starting"); + } + this.started = true; + } + tryShutdown(callback) { + const wrappedCallback = (error) => { + if (this.channelzEnabled) { + (0, channelz_1.unregisterChannelzRef)(this.channelzRef); + } + callback(error); + }; + let pendingChecks = 0; + function maybeCallback() { + pendingChecks--; + if (pendingChecks === 0) { + wrappedCallback(); + } + } + this.started = false; + for (const { server: http2Server, channelzRef: ref } of this.http2ServerList) { + if (http2Server.listening) { + pendingChecks++; + http2Server.close(() => { + if (this.channelzEnabled) { + this.listenerChildrenTracker.unrefChild(ref); + (0, channelz_1.unregisterChannelzRef)(ref); + } + maybeCallback(); + }); + } + } + this.sessions.forEach((channelzInfo, session) => { + if (!session.closed) { + pendingChecks += 1; + session.close(maybeCallback); + } + }); + if (pendingChecks === 0) { + wrappedCallback(); + } + } + addHttp2Port() { + throw new Error("Not yet implemented"); + } + /** + * Get the channelz reference object for this server. The returned value is + * garbage if channelz is disabled for this server. + * @returns + */ + getChannelzRef() { + return this.channelzRef; + } + _verifyContentType(stream5, headers) { + const contentType = headers[http22.constants.HTTP2_HEADER_CONTENT_TYPE]; + if (typeof contentType !== "string" || !contentType.startsWith("application/grpc")) { + stream5.respond({ + [http22.constants.HTTP2_HEADER_STATUS]: http22.constants.HTTP_STATUS_UNSUPPORTED_MEDIA_TYPE + }, { endStream: true }); + return false; + } + return true; + } + _retrieveHandler(headers) { + const path30 = headers[HTTP2_HEADER_PATH]; + this.trace("Received call to method " + path30 + " at address " + this.serverAddressString); + const handler = this.handlers.get(path30); + if (handler === void 0) { + this.trace("No handler registered for method " + path30 + ". Sending UNIMPLEMENTED status."); + throw getUnimplementedStatusResponse(path30); + } + return handler; + } + _respondWithError(err2, stream5, channelzSessionInfo = null) { + const call = new server_call_1.Http2ServerCallStream(stream5, null, this.options); + if (err2.code === void 0) { + err2.code = constants_1.Status.INTERNAL; + } + if (this.channelzEnabled) { + this.callTracker.addCallFailed(); + channelzSessionInfo === null || channelzSessionInfo === void 0 ? void 0 : channelzSessionInfo.streamTracker.addCallFailed(); + } + call.sendError(err2); + } + _channelzHandler(stream5, headers) { + var _a; + const channelzSessionInfo = this.sessions.get(stream5.session); + this.callTracker.addCallStarted(); + channelzSessionInfo === null || channelzSessionInfo === void 0 ? void 0 : channelzSessionInfo.streamTracker.addCallStarted(); + if (!this._verifyContentType(stream5, headers)) { + this.callTracker.addCallFailed(); + channelzSessionInfo === null || channelzSessionInfo === void 0 ? void 0 : channelzSessionInfo.streamTracker.addCallFailed(); + return; + } + let handler; + try { + handler = this._retrieveHandler(headers); + } catch (err2) { + this._respondWithError({ + details: (0, error_1.getErrorMessage)(err2), + code: (_a = (0, error_1.getErrorCode)(err2)) !== null && _a !== void 0 ? _a : void 0 + }, stream5, channelzSessionInfo); + return; + } + const call = new server_call_1.Http2ServerCallStream(stream5, handler, this.options); + call.once("callEnd", (code) => { + if (code === constants_1.Status.OK) { + this.callTracker.addCallSucceeded(); + } else { + this.callTracker.addCallFailed(); + } + }); + if (channelzSessionInfo) { + call.once("streamEnd", (success) => { + if (success) { + channelzSessionInfo.streamTracker.addCallSucceeded(); + } else { + channelzSessionInfo.streamTracker.addCallFailed(); + } + }); + call.on("sendMessage", () => { + channelzSessionInfo.messagesSent += 1; + channelzSessionInfo.lastMessageSentTimestamp = /* @__PURE__ */ new Date(); + }); + call.on("receiveMessage", () => { + channelzSessionInfo.messagesReceived += 1; + channelzSessionInfo.lastMessageReceivedTimestamp = /* @__PURE__ */ new Date(); + }); + } + if (!this._runHandlerForCall(call, handler, headers)) { + this.callTracker.addCallFailed(); + channelzSessionInfo === null || channelzSessionInfo === void 0 ? void 0 : channelzSessionInfo.streamTracker.addCallFailed(); + call.sendError({ + code: constants_1.Status.INTERNAL, + details: `Unknown handler type: ${handler.type}` + }); + } + } + _streamHandler(stream5, headers) { + var _a; + if (this._verifyContentType(stream5, headers) !== true) { + return; + } + let handler; + try { + handler = this._retrieveHandler(headers); + } catch (err2) { + this._respondWithError({ + details: (0, error_1.getErrorMessage)(err2), + code: (_a = (0, error_1.getErrorCode)(err2)) !== null && _a !== void 0 ? _a : void 0 + }, stream5, null); + return; + } + const call = new server_call_1.Http2ServerCallStream(stream5, handler, this.options); + if (!this._runHandlerForCall(call, handler, headers)) { + call.sendError({ + code: constants_1.Status.INTERNAL, + details: `Unknown handler type: ${handler.type}` + }); + } + } + _runHandlerForCall(call, handler, headers) { + var _a; + const metadata2 = call.receiveMetadata(headers); + const encoding = (_a = metadata2.get("grpc-encoding")[0]) !== null && _a !== void 0 ? _a : "identity"; + metadata2.remove("grpc-encoding"); + const { type: type2 } = handler; + if (type2 === "unary") { + handleUnary(call, handler, metadata2, encoding); + } else if (type2 === "clientStream") { + handleClientStreaming(call, handler, metadata2, encoding); + } else if (type2 === "serverStream") { + handleServerStreaming(call, handler, metadata2, encoding); + } else if (type2 === "bidi") { + handleBidiStreaming(call, handler, metadata2, encoding); + } else { + return false; + } + return true; + } + _setupHandlers(http2Server) { + if (http2Server === null) { + return; + } + const serverAddress = http2Server.address(); + let serverAddressString = "null"; + if (serverAddress) { + if (typeof serverAddress === "string") { + serverAddressString = serverAddress; + } else { + serverAddressString = serverAddress.address + ":" + serverAddress.port; + } + } + this.serverAddressString = serverAddressString; + const handler = this.channelzEnabled ? this._channelzHandler : this._streamHandler; + http2Server.on("stream", handler.bind(this)); + http2Server.on("session", (session) => { + var _a, _b, _c, _d, _e; + if (!this.started) { + session.destroy(); + return; + } + let channelzRef; + channelzRef = (0, channelz_1.registerChannelzSocket)((_a = session.socket.remoteAddress) !== null && _a !== void 0 ? _a : "unknown", this.getChannelzSessionInfoGetter(session), this.channelzEnabled); + const channelzSessionInfo = { + ref: channelzRef, + streamTracker: new channelz_1.ChannelzCallTracker(), + messagesSent: 0, + messagesReceived: 0, + lastMessageSentTimestamp: null, + lastMessageReceivedTimestamp: null + }; + this.sessions.set(session, channelzSessionInfo); + const clientAddress = session.socket.remoteAddress; + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", "Connection established by client " + clientAddress); + this.sessionChildrenTracker.refChild(channelzRef); + } + let connectionAgeTimer = null; + let connectionAgeGraceTimer = null; + let sessionClosedByServer = false; + if (this.maxConnectionAgeMs !== UNLIMITED_CONNECTION_AGE_MS) { + const jitterMagnitude = this.maxConnectionAgeMs / 10; + const jitter = Math.random() * jitterMagnitude * 2 - jitterMagnitude; + connectionAgeTimer = (_c = (_b = setTimeout(() => { + var _a2, _b2; + sessionClosedByServer = true; + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", "Connection dropped by max connection age from " + clientAddress); + } + try { + session.goaway(http22.constants.NGHTTP2_NO_ERROR, ~(1 << 31), Buffer.from("max_age")); + } catch (e) { + session.destroy(); + return; + } + session.close(); + if (this.maxConnectionAgeGraceMs !== UNLIMITED_CONNECTION_AGE_MS) { + connectionAgeGraceTimer = (_b2 = (_a2 = setTimeout(() => { + session.destroy(); + }, this.maxConnectionAgeGraceMs)).unref) === null || _b2 === void 0 ? void 0 : _b2.call(_a2); + } + }, this.maxConnectionAgeMs + jitter)).unref) === null || _c === void 0 ? void 0 : _c.call(_b); + } + const keeapliveTimeTimer = (_e = (_d = setInterval(() => { + var _a2, _b2; + const timeoutTImer = (_b2 = (_a2 = setTimeout(() => { + sessionClosedByServer = true; + if (this.channelzEnabled) { + this.channelzTrace.addTrace("CT_INFO", "Connection dropped by keepalive timeout from " + clientAddress); + } + session.close(); + }, this.keepaliveTimeoutMs)).unref) === null || _b2 === void 0 ? void 0 : _b2.call(_a2); + try { + session.ping((err2, duration, payload) => { + clearTimeout(timeoutTImer); + }); + } catch (e) { + session.destroy(); + } + }, this.keepaliveTimeMs)).unref) === null || _e === void 0 ? void 0 : _e.call(_d); + session.on("close", () => { + if (this.channelzEnabled) { + if (!sessionClosedByServer) { + this.channelzTrace.addTrace("CT_INFO", "Connection dropped by client " + clientAddress); + } + this.sessionChildrenTracker.unrefChild(channelzRef); + (0, channelz_1.unregisterChannelzRef)(channelzRef); + } + if (connectionAgeTimer) { + clearTimeout(connectionAgeTimer); + } + if (connectionAgeGraceTimer) { + clearTimeout(connectionAgeGraceTimer); + } + if (keeapliveTimeTimer) { + clearTimeout(keeapliveTimeTimer); + } + this.sessions.delete(session); + }); + }); + } + }; + exports2.Server = Server; + function handleUnary(call, handler, metadata2, encoding) { + call.receiveUnaryMessage(encoding, (err2, request) => { + if (err2) { + call.sendError(err2); + return; + } + if (request === void 0 || call.cancelled) { + return; + } + const emitter = new server_call_1.ServerUnaryCallImpl(call, metadata2, request); + handler.func(emitter, (err3, value, trailer, flags2) => { + call.sendUnaryMessage(err3, value, trailer, flags2); + }); + }); + } + function handleClientStreaming(call, handler, metadata2, encoding) { + const stream5 = new server_call_1.ServerReadableStreamImpl(call, metadata2, handler.deserialize, encoding); + function respond(err2, value, trailer, flags2) { + stream5.destroy(); + call.sendUnaryMessage(err2, value, trailer, flags2); + } + if (call.cancelled) { + return; + } + stream5.on("error", respond); + handler.func(stream5, respond); + } + function handleServerStreaming(call, handler, metadata2, encoding) { + call.receiveUnaryMessage(encoding, (err2, request) => { + if (err2) { + call.sendError(err2); + return; + } + if (request === void 0 || call.cancelled) { + return; + } + const stream5 = new server_call_1.ServerWritableStreamImpl(call, metadata2, handler.serialize, request); + handler.func(stream5); + }); + } + function handleBidiStreaming(call, handler, metadata2, encoding) { + const stream5 = new server_call_1.ServerDuplexStreamImpl(call, metadata2, handler.serialize, handler.deserialize, encoding); + if (call.cancelled) { + return; + } + handler.func(stream5); + } + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/status-builder.js +var require_status_builder = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/status-builder.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.StatusBuilder = void 0; + var StatusBuilder = class { + constructor() { + this.code = null; + this.details = null; + this.metadata = null; + } + /** + * Adds a status code to the builder. + */ + withCode(code) { + this.code = code; + return this; + } + /** + * Adds details to the builder. + */ + withDetails(details) { + this.details = details; + return this; + } + /** + * Adds metadata to the builder. + */ + withMetadata(metadata2) { + this.metadata = metadata2; + return this; + } + /** + * Builds the status object. + */ + build() { + const status = {}; + if (this.code !== null) { + status.code = this.code; + } + if (this.details !== null) { + status.details = this.details; + } + if (this.metadata !== null) { + status.metadata = this.metadata; + } + return status; + } + }; + exports2.StatusBuilder = StatusBuilder; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/duration.js +var require_duration = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/duration.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isDuration = exports2.durationToMs = exports2.msToDuration = void 0; + function msToDuration(millis) { + return { + seconds: millis / 1e3 | 0, + nanos: millis % 1e3 * 1e6 | 0 + }; + } + exports2.msToDuration = msToDuration; + function durationToMs(duration) { + return duration.seconds * 1e3 + duration.nanos / 1e6 | 0; + } + exports2.durationToMs = durationToMs; + function isDuration(value) { + return typeof value.seconds === "number" && typeof value.nanos === "number"; + } + exports2.isDuration = isDuration; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancer-outlier-detection.js +var require_load_balancer_outlier_detection = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancer-outlier-detection.js"(exports2) { + "use strict"; + var _a; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.setup = exports2.OutlierDetectionLoadBalancer = exports2.OutlierDetectionLoadBalancingConfig = void 0; + var connectivity_state_1 = require_connectivity_state(); + var constants_1 = require_constants10(); + var duration_1 = require_duration(); + var experimental_1 = require_experimental(); + var load_balancer_1 = require_load_balancer(); + var load_balancer_child_handler_1 = require_load_balancer_child_handler(); + var picker_1 = require_picker(); + var subchannel_address_1 = require_subchannel_address(); + var subchannel_interface_1 = require_subchannel_interface(); + var logging = require_logging(); + var TRACER_NAME = "outlier_detection"; + function trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, text); + } + var TYPE_NAME = "outlier_detection"; + var OUTLIER_DETECTION_ENABLED = ((_a = process.env.GRPC_EXPERIMENTAL_ENABLE_OUTLIER_DETECTION) !== null && _a !== void 0 ? _a : "true") === "true"; + var defaultSuccessRateEjectionConfig = { + stdev_factor: 1900, + enforcement_percentage: 100, + minimum_hosts: 5, + request_volume: 100 + }; + var defaultFailurePercentageEjectionConfig = { + threshold: 85, + enforcement_percentage: 100, + minimum_hosts: 5, + request_volume: 50 + }; + function validateFieldType(obj2, fieldName, expectedType, objectName) { + if (fieldName in obj2 && typeof obj2[fieldName] !== expectedType) { + const fullFieldName = objectName ? `${objectName}.${fieldName}` : fieldName; + throw new Error(`outlier detection config ${fullFieldName} parse error: expected ${expectedType}, got ${typeof obj2[fieldName]}`); + } + } + function validatePositiveDuration(obj2, fieldName, objectName) { + const fullFieldName = objectName ? `${objectName}.${fieldName}` : fieldName; + if (fieldName in obj2) { + if (!(0, duration_1.isDuration)(obj2[fieldName])) { + throw new Error(`outlier detection config ${fullFieldName} parse error: expected Duration, got ${typeof obj2[fieldName]}`); + } + if (!(obj2[fieldName].seconds >= 0 && obj2[fieldName].seconds <= 315576e6 && obj2[fieldName].nanos >= 0 && obj2[fieldName].nanos <= 999999999)) { + throw new Error(`outlier detection config ${fullFieldName} parse error: values out of range for non-negative Duaration`); + } + } + } + function validatePercentage(obj2, fieldName, objectName) { + const fullFieldName = objectName ? `${objectName}.${fieldName}` : fieldName; + validateFieldType(obj2, fieldName, "number", objectName); + if (fieldName in obj2 && !(obj2[fieldName] >= 0 && obj2[fieldName] <= 100)) { + throw new Error(`outlier detection config ${fullFieldName} parse error: value out of range for percentage (0-100)`); + } + } + var OutlierDetectionLoadBalancingConfig = class _OutlierDetectionLoadBalancingConfig { + constructor(intervalMs, baseEjectionTimeMs, maxEjectionTimeMs, maxEjectionPercent, successRateEjection, failurePercentageEjection, childPolicy) { + this.childPolicy = childPolicy; + if (childPolicy.length > 0 && childPolicy[0].getLoadBalancerName() === "pick_first") { + throw new Error("outlier_detection LB policy cannot have a pick_first child policy"); + } + this.intervalMs = intervalMs !== null && intervalMs !== void 0 ? intervalMs : 1e4; + this.baseEjectionTimeMs = baseEjectionTimeMs !== null && baseEjectionTimeMs !== void 0 ? baseEjectionTimeMs : 3e4; + this.maxEjectionTimeMs = maxEjectionTimeMs !== null && maxEjectionTimeMs !== void 0 ? maxEjectionTimeMs : 3e5; + this.maxEjectionPercent = maxEjectionPercent !== null && maxEjectionPercent !== void 0 ? maxEjectionPercent : 10; + this.successRateEjection = successRateEjection ? Object.assign(Object.assign({}, defaultSuccessRateEjectionConfig), successRateEjection) : null; + this.failurePercentageEjection = failurePercentageEjection ? Object.assign(Object.assign({}, defaultFailurePercentageEjectionConfig), failurePercentageEjection) : null; + } + getLoadBalancerName() { + return TYPE_NAME; + } + toJsonObject() { + return { + interval: (0, duration_1.msToDuration)(this.intervalMs), + base_ejection_time: (0, duration_1.msToDuration)(this.baseEjectionTimeMs), + max_ejection_time: (0, duration_1.msToDuration)(this.maxEjectionTimeMs), + max_ejection_percent: this.maxEjectionPercent, + success_rate_ejection: this.successRateEjection, + failure_percentage_ejection: this.failurePercentageEjection, + child_policy: this.childPolicy.map((policy) => policy.toJsonObject()) + }; + } + getIntervalMs() { + return this.intervalMs; + } + getBaseEjectionTimeMs() { + return this.baseEjectionTimeMs; + } + getMaxEjectionTimeMs() { + return this.maxEjectionTimeMs; + } + getMaxEjectionPercent() { + return this.maxEjectionPercent; + } + getSuccessRateEjectionConfig() { + return this.successRateEjection; + } + getFailurePercentageEjectionConfig() { + return this.failurePercentageEjection; + } + getChildPolicy() { + return this.childPolicy; + } + copyWithChildPolicy(childPolicy) { + return new _OutlierDetectionLoadBalancingConfig(this.intervalMs, this.baseEjectionTimeMs, this.maxEjectionTimeMs, this.maxEjectionPercent, this.successRateEjection, this.failurePercentageEjection, childPolicy); + } + static createFromJson(obj2) { + var _a2; + validatePositiveDuration(obj2, "interval"); + validatePositiveDuration(obj2, "base_ejection_time"); + validatePositiveDuration(obj2, "max_ejection_time"); + validatePercentage(obj2, "max_ejection_percent"); + if ("success_rate_ejection" in obj2) { + if (typeof obj2.success_rate_ejection !== "object") { + throw new Error("outlier detection config success_rate_ejection must be an object"); + } + validateFieldType(obj2.success_rate_ejection, "stdev_factor", "number", "success_rate_ejection"); + validatePercentage(obj2.success_rate_ejection, "enforcement_percentage", "success_rate_ejection"); + validateFieldType(obj2.success_rate_ejection, "minimum_hosts", "number", "success_rate_ejection"); + validateFieldType(obj2.success_rate_ejection, "request_volume", "number", "success_rate_ejection"); + } + if ("failure_percentage_ejection" in obj2) { + if (typeof obj2.failure_percentage_ejection !== "object") { + throw new Error("outlier detection config failure_percentage_ejection must be an object"); + } + validatePercentage(obj2.failure_percentage_ejection, "threshold", "failure_percentage_ejection"); + validatePercentage(obj2.failure_percentage_ejection, "enforcement_percentage", "failure_percentage_ejection"); + validateFieldType(obj2.failure_percentage_ejection, "minimum_hosts", "number", "failure_percentage_ejection"); + validateFieldType(obj2.failure_percentage_ejection, "request_volume", "number", "failure_percentage_ejection"); + } + return new _OutlierDetectionLoadBalancingConfig(obj2.interval ? (0, duration_1.durationToMs)(obj2.interval) : null, obj2.base_ejection_time ? (0, duration_1.durationToMs)(obj2.base_ejection_time) : null, obj2.max_ejection_time ? (0, duration_1.durationToMs)(obj2.max_ejection_time) : null, (_a2 = obj2.max_ejection_percent) !== null && _a2 !== void 0 ? _a2 : null, obj2.success_rate_ejection, obj2.failure_percentage_ejection, obj2.child_policy.map(load_balancer_1.validateLoadBalancingConfig)); + } + }; + exports2.OutlierDetectionLoadBalancingConfig = OutlierDetectionLoadBalancingConfig; + var OutlierDetectionSubchannelWrapper = class extends subchannel_interface_1.BaseSubchannelWrapper { + constructor(childSubchannel, mapEntry) { + super(childSubchannel); + this.mapEntry = mapEntry; + this.stateListeners = []; + this.ejected = false; + this.refCount = 0; + this.childSubchannelState = childSubchannel.getConnectivityState(); + childSubchannel.addConnectivityStateListener((subchannel, previousState, newState, keepaliveTime) => { + this.childSubchannelState = newState; + if (!this.ejected) { + for (const listener of this.stateListeners) { + listener(this, previousState, newState, keepaliveTime); + } + } + }); + } + getConnectivityState() { + if (this.ejected) { + return connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE; + } else { + return this.childSubchannelState; + } + } + /** + * Add a listener function to be called whenever the wrapper's + * connectivity state changes. + * @param listener + */ + addConnectivityStateListener(listener) { + this.stateListeners.push(listener); + } + /** + * Remove a listener previously added with `addConnectivityStateListener` + * @param listener A reference to a function previously passed to + * `addConnectivityStateListener` + */ + removeConnectivityStateListener(listener) { + const listenerIndex = this.stateListeners.indexOf(listener); + if (listenerIndex > -1) { + this.stateListeners.splice(listenerIndex, 1); + } + } + ref() { + this.child.ref(); + this.refCount += 1; + } + unref() { + this.child.unref(); + this.refCount -= 1; + if (this.refCount <= 0) { + if (this.mapEntry) { + const index = this.mapEntry.subchannelWrappers.indexOf(this); + if (index >= 0) { + this.mapEntry.subchannelWrappers.splice(index, 1); + } + } + } + } + eject() { + this.ejected = true; + for (const listener of this.stateListeners) { + listener(this, this.childSubchannelState, connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE, -1); + } + } + uneject() { + this.ejected = false; + for (const listener of this.stateListeners) { + listener(this, connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE, this.childSubchannelState, -1); + } + } + getMapEntry() { + return this.mapEntry; + } + getWrappedSubchannel() { + return this.child; + } + }; + function createEmptyBucket() { + return { + success: 0, + failure: 0 + }; + } + var CallCounter = class { + constructor() { + this.activeBucket = createEmptyBucket(); + this.inactiveBucket = createEmptyBucket(); + } + addSuccess() { + this.activeBucket.success += 1; + } + addFailure() { + this.activeBucket.failure += 1; + } + switchBuckets() { + this.inactiveBucket = this.activeBucket; + this.activeBucket = createEmptyBucket(); + } + getLastSuccesses() { + return this.inactiveBucket.success; + } + getLastFailures() { + return this.inactiveBucket.failure; + } + }; + var OutlierDetectionPicker = class { + constructor(wrappedPicker, countCalls) { + this.wrappedPicker = wrappedPicker; + this.countCalls = countCalls; + } + pick(pickArgs) { + const wrappedPick = this.wrappedPicker.pick(pickArgs); + if (wrappedPick.pickResultType === picker_1.PickResultType.COMPLETE) { + const subchannelWrapper = wrappedPick.subchannel; + const mapEntry = subchannelWrapper.getMapEntry(); + if (mapEntry) { + let onCallEnded = wrappedPick.onCallEnded; + if (this.countCalls) { + onCallEnded = (statusCode) => { + var _a2; + if (statusCode === constants_1.Status.OK) { + mapEntry.counter.addSuccess(); + } else { + mapEntry.counter.addFailure(); + } + (_a2 = wrappedPick.onCallEnded) === null || _a2 === void 0 ? void 0 : _a2.call(wrappedPick, statusCode); + }; + } + return Object.assign(Object.assign({}, wrappedPick), { subchannel: subchannelWrapper.getWrappedSubchannel(), onCallEnded }); + } else { + return Object.assign(Object.assign({}, wrappedPick), { subchannel: subchannelWrapper.getWrappedSubchannel() }); + } + } else { + return wrappedPick; + } + } + }; + var OutlierDetectionLoadBalancer = class { + constructor(channelControlHelper) { + this.addressMap = /* @__PURE__ */ new Map(); + this.latestConfig = null; + this.timerStartTime = null; + this.childBalancer = new load_balancer_child_handler_1.ChildLoadBalancerHandler((0, experimental_1.createChildChannelControlHelper)(channelControlHelper, { + createSubchannel: (subchannelAddress, subchannelArgs) => { + const originalSubchannel = channelControlHelper.createSubchannel(subchannelAddress, subchannelArgs); + const mapEntry = this.addressMap.get((0, subchannel_address_1.subchannelAddressToString)(subchannelAddress)); + const subchannelWrapper = new OutlierDetectionSubchannelWrapper(originalSubchannel, mapEntry); + if ((mapEntry === null || mapEntry === void 0 ? void 0 : mapEntry.currentEjectionTimestamp) !== null) { + subchannelWrapper.eject(); + } + mapEntry === null || mapEntry === void 0 ? void 0 : mapEntry.subchannelWrappers.push(subchannelWrapper); + return subchannelWrapper; + }, + updateState: (connectivityState, picker) => { + if (connectivityState === connectivity_state_1.ConnectivityState.READY) { + channelControlHelper.updateState(connectivityState, new OutlierDetectionPicker(picker, this.isCountingEnabled())); + } else { + channelControlHelper.updateState(connectivityState, picker); + } + } + })); + this.ejectionTimer = setInterval(() => { + }, 0); + clearInterval(this.ejectionTimer); + } + isCountingEnabled() { + return this.latestConfig !== null && (this.latestConfig.getSuccessRateEjectionConfig() !== null || this.latestConfig.getFailurePercentageEjectionConfig() !== null); + } + getCurrentEjectionPercent() { + let ejectionCount = 0; + for (const mapEntry of this.addressMap.values()) { + if (mapEntry.currentEjectionTimestamp !== null) { + ejectionCount += 1; + } + } + return ejectionCount * 100 / this.addressMap.size; + } + runSuccessRateCheck(ejectionTimestamp) { + if (!this.latestConfig) { + return; + } + const successRateConfig = this.latestConfig.getSuccessRateEjectionConfig(); + if (!successRateConfig) { + return; + } + trace("Running success rate check"); + const targetRequestVolume = successRateConfig.request_volume; + let addresesWithTargetVolume = 0; + const successRates = []; + for (const [address, mapEntry] of this.addressMap) { + const successes = mapEntry.counter.getLastSuccesses(); + const failures = mapEntry.counter.getLastFailures(); + trace("Stats for " + address + ": successes=" + successes + " failures=" + failures + " targetRequestVolume=" + targetRequestVolume); + if (successes + failures >= targetRequestVolume) { + addresesWithTargetVolume += 1; + successRates.push(successes / (successes + failures)); + } + } + trace("Found " + addresesWithTargetVolume + " success rate candidates; currentEjectionPercent=" + this.getCurrentEjectionPercent() + " successRates=[" + successRates + "]"); + if (addresesWithTargetVolume < successRateConfig.minimum_hosts) { + return; + } + const successRateMean = successRates.reduce((a, b) => a + b) / successRates.length; + let successRateDeviationSum = 0; + for (const rate of successRates) { + const deviation = rate - successRateMean; + successRateDeviationSum += deviation * deviation; + } + const successRateVariance = successRateDeviationSum / successRates.length; + const successRateStdev = Math.sqrt(successRateVariance); + const ejectionThreshold = successRateMean - successRateStdev * (successRateConfig.stdev_factor / 1e3); + trace("stdev=" + successRateStdev + " ejectionThreshold=" + ejectionThreshold); + for (const [address, mapEntry] of this.addressMap.entries()) { + if (this.getCurrentEjectionPercent() >= this.latestConfig.getMaxEjectionPercent()) { + break; + } + const successes = mapEntry.counter.getLastSuccesses(); + const failures = mapEntry.counter.getLastFailures(); + if (successes + failures < targetRequestVolume) { + continue; + } + const successRate = successes / (successes + failures); + trace("Checking candidate " + address + " successRate=" + successRate); + if (successRate < ejectionThreshold) { + const randomNumber = Math.random() * 100; + trace("Candidate " + address + " randomNumber=" + randomNumber + " enforcement_percentage=" + successRateConfig.enforcement_percentage); + if (randomNumber < successRateConfig.enforcement_percentage) { + trace("Ejecting candidate " + address); + this.eject(mapEntry, ejectionTimestamp); + } + } + } + } + runFailurePercentageCheck(ejectionTimestamp) { + if (!this.latestConfig) { + return; + } + const failurePercentageConfig = this.latestConfig.getFailurePercentageEjectionConfig(); + if (!failurePercentageConfig) { + return; + } + trace("Running failure percentage check. threshold=" + failurePercentageConfig.threshold + " request volume threshold=" + failurePercentageConfig.request_volume); + let addressesWithTargetVolume = 0; + for (const mapEntry of this.addressMap.values()) { + const successes = mapEntry.counter.getLastSuccesses(); + const failures = mapEntry.counter.getLastFailures(); + if (successes + failures >= failurePercentageConfig.request_volume) { + addressesWithTargetVolume += 1; + } + } + if (addressesWithTargetVolume < failurePercentageConfig.minimum_hosts) { + return; + } + for (const [address, mapEntry] of this.addressMap.entries()) { + if (this.getCurrentEjectionPercent() >= this.latestConfig.getMaxEjectionPercent()) { + break; + } + const successes = mapEntry.counter.getLastSuccesses(); + const failures = mapEntry.counter.getLastFailures(); + trace("Candidate successes=" + successes + " failures=" + failures); + if (successes + failures < failurePercentageConfig.request_volume) { + continue; + } + const failurePercentage = failures * 100 / (failures + successes); + if (failurePercentage > failurePercentageConfig.threshold) { + const randomNumber = Math.random() * 100; + trace("Candidate " + address + " randomNumber=" + randomNumber + " enforcement_percentage=" + failurePercentageConfig.enforcement_percentage); + if (randomNumber < failurePercentageConfig.enforcement_percentage) { + trace("Ejecting candidate " + address); + this.eject(mapEntry, ejectionTimestamp); + } + } + } + } + eject(mapEntry, ejectionTimestamp) { + mapEntry.currentEjectionTimestamp = /* @__PURE__ */ new Date(); + mapEntry.ejectionTimeMultiplier += 1; + for (const subchannelWrapper of mapEntry.subchannelWrappers) { + subchannelWrapper.eject(); + } + } + uneject(mapEntry) { + mapEntry.currentEjectionTimestamp = null; + for (const subchannelWrapper of mapEntry.subchannelWrappers) { + subchannelWrapper.uneject(); + } + } + switchAllBuckets() { + for (const mapEntry of this.addressMap.values()) { + mapEntry.counter.switchBuckets(); + } + } + startTimer(delayMs) { + var _a2, _b; + this.ejectionTimer = setTimeout(() => this.runChecks(), delayMs); + (_b = (_a2 = this.ejectionTimer).unref) === null || _b === void 0 ? void 0 : _b.call(_a2); + } + runChecks() { + const ejectionTimestamp = /* @__PURE__ */ new Date(); + trace("Ejection timer running"); + this.switchAllBuckets(); + if (!this.latestConfig) { + return; + } + this.timerStartTime = ejectionTimestamp; + this.startTimer(this.latestConfig.getIntervalMs()); + this.runSuccessRateCheck(ejectionTimestamp); + this.runFailurePercentageCheck(ejectionTimestamp); + for (const [address, mapEntry] of this.addressMap.entries()) { + if (mapEntry.currentEjectionTimestamp === null) { + if (mapEntry.ejectionTimeMultiplier > 0) { + mapEntry.ejectionTimeMultiplier -= 1; + } + } else { + const baseEjectionTimeMs = this.latestConfig.getBaseEjectionTimeMs(); + const maxEjectionTimeMs = this.latestConfig.getMaxEjectionTimeMs(); + const returnTime = new Date(mapEntry.currentEjectionTimestamp.getTime()); + returnTime.setMilliseconds(returnTime.getMilliseconds() + Math.min(baseEjectionTimeMs * mapEntry.ejectionTimeMultiplier, Math.max(baseEjectionTimeMs, maxEjectionTimeMs))); + if (returnTime < /* @__PURE__ */ new Date()) { + trace("Unejecting " + address); + this.uneject(mapEntry); + } + } + } + } + updateAddressList(addressList, lbConfig, attributes) { + if (!(lbConfig instanceof OutlierDetectionLoadBalancingConfig)) { + return; + } + const subchannelAddresses = /* @__PURE__ */ new Set(); + for (const address of addressList) { + subchannelAddresses.add((0, subchannel_address_1.subchannelAddressToString)(address)); + } + for (const address of subchannelAddresses) { + if (!this.addressMap.has(address)) { + trace("Adding map entry for " + address); + this.addressMap.set(address, { + counter: new CallCounter(), + currentEjectionTimestamp: null, + ejectionTimeMultiplier: 0, + subchannelWrappers: [] + }); + } + } + for (const key of this.addressMap.keys()) { + if (!subchannelAddresses.has(key)) { + trace("Removing map entry for " + key); + this.addressMap.delete(key); + } + } + const childPolicy = (0, load_balancer_1.getFirstUsableConfig)(lbConfig.getChildPolicy(), true); + this.childBalancer.updateAddressList(addressList, childPolicy, attributes); + if (lbConfig.getSuccessRateEjectionConfig() || lbConfig.getFailurePercentageEjectionConfig()) { + if (this.timerStartTime) { + trace("Previous timer existed. Replacing timer"); + clearTimeout(this.ejectionTimer); + const remainingDelay = lbConfig.getIntervalMs() - ((/* @__PURE__ */ new Date()).getTime() - this.timerStartTime.getTime()); + this.startTimer(remainingDelay); + } else { + trace("Starting new timer"); + this.timerStartTime = /* @__PURE__ */ new Date(); + this.startTimer(lbConfig.getIntervalMs()); + this.switchAllBuckets(); + } + } else { + trace("Counting disabled. Cancelling timer."); + this.timerStartTime = null; + clearTimeout(this.ejectionTimer); + for (const mapEntry of this.addressMap.values()) { + this.uneject(mapEntry); + mapEntry.ejectionTimeMultiplier = 0; + } + } + this.latestConfig = lbConfig; + } + exitIdle() { + this.childBalancer.exitIdle(); + } + resetBackoff() { + this.childBalancer.resetBackoff(); + } + destroy() { + clearTimeout(this.ejectionTimer); + this.childBalancer.destroy(); + } + getTypeName() { + return TYPE_NAME; + } + }; + exports2.OutlierDetectionLoadBalancer = OutlierDetectionLoadBalancer; + function setup() { + if (OUTLIER_DETECTION_ENABLED) { + (0, experimental_1.registerLoadBalancerType)(TYPE_NAME, OutlierDetectionLoadBalancer, OutlierDetectionLoadBalancingConfig); + } + } + exports2.setup = setup; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/experimental.js +var require_experimental = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/experimental.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OutlierDetectionLoadBalancingConfig = exports2.BaseSubchannelWrapper = exports2.registerAdminService = exports2.FilterStackFactory = exports2.BaseFilter = exports2.PickResultType = exports2.QueuePicker = exports2.UnavailablePicker = exports2.ChildLoadBalancerHandler = exports2.subchannelAddressToString = exports2.validateLoadBalancingConfig = exports2.getFirstUsableConfig = exports2.registerLoadBalancerType = exports2.createChildChannelControlHelper = exports2.BackoffTimeout = exports2.durationToMs = exports2.uriToString = exports2.registerResolver = exports2.log = exports2.trace = void 0; + var logging_1 = require_logging(); + Object.defineProperty(exports2, "trace", { enumerable: true, get: function() { + return logging_1.trace; + } }); + Object.defineProperty(exports2, "log", { enumerable: true, get: function() { + return logging_1.log; + } }); + var resolver_1 = require_resolver(); + Object.defineProperty(exports2, "registerResolver", { enumerable: true, get: function() { + return resolver_1.registerResolver; + } }); + var uri_parser_1 = require_uri_parser(); + Object.defineProperty(exports2, "uriToString", { enumerable: true, get: function() { + return uri_parser_1.uriToString; + } }); + var duration_1 = require_duration(); + Object.defineProperty(exports2, "durationToMs", { enumerable: true, get: function() { + return duration_1.durationToMs; + } }); + var backoff_timeout_1 = require_backoff_timeout(); + Object.defineProperty(exports2, "BackoffTimeout", { enumerable: true, get: function() { + return backoff_timeout_1.BackoffTimeout; + } }); + var load_balancer_1 = require_load_balancer(); + Object.defineProperty(exports2, "createChildChannelControlHelper", { enumerable: true, get: function() { + return load_balancer_1.createChildChannelControlHelper; + } }); + Object.defineProperty(exports2, "registerLoadBalancerType", { enumerable: true, get: function() { + return load_balancer_1.registerLoadBalancerType; + } }); + Object.defineProperty(exports2, "getFirstUsableConfig", { enumerable: true, get: function() { + return load_balancer_1.getFirstUsableConfig; + } }); + Object.defineProperty(exports2, "validateLoadBalancingConfig", { enumerable: true, get: function() { + return load_balancer_1.validateLoadBalancingConfig; + } }); + var subchannel_address_1 = require_subchannel_address(); + Object.defineProperty(exports2, "subchannelAddressToString", { enumerable: true, get: function() { + return subchannel_address_1.subchannelAddressToString; + } }); + var load_balancer_child_handler_1 = require_load_balancer_child_handler(); + Object.defineProperty(exports2, "ChildLoadBalancerHandler", { enumerable: true, get: function() { + return load_balancer_child_handler_1.ChildLoadBalancerHandler; + } }); + var picker_1 = require_picker(); + Object.defineProperty(exports2, "UnavailablePicker", { enumerable: true, get: function() { + return picker_1.UnavailablePicker; + } }); + Object.defineProperty(exports2, "QueuePicker", { enumerable: true, get: function() { + return picker_1.QueuePicker; + } }); + Object.defineProperty(exports2, "PickResultType", { enumerable: true, get: function() { + return picker_1.PickResultType; + } }); + var filter_1 = require_filter3(); + Object.defineProperty(exports2, "BaseFilter", { enumerable: true, get: function() { + return filter_1.BaseFilter; + } }); + var filter_stack_1 = require_filter_stack(); + Object.defineProperty(exports2, "FilterStackFactory", { enumerable: true, get: function() { + return filter_stack_1.FilterStackFactory; + } }); + var admin_1 = require_admin(); + Object.defineProperty(exports2, "registerAdminService", { enumerable: true, get: function() { + return admin_1.registerAdminService; + } }); + var subchannel_interface_1 = require_subchannel_interface(); + Object.defineProperty(exports2, "BaseSubchannelWrapper", { enumerable: true, get: function() { + return subchannel_interface_1.BaseSubchannelWrapper; + } }); + var load_balancer_outlier_detection_1 = require_load_balancer_outlier_detection(); + Object.defineProperty(exports2, "OutlierDetectionLoadBalancingConfig", { enumerable: true, get: function() { + return load_balancer_outlier_detection_1.OutlierDetectionLoadBalancingConfig; + } }); + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolver-dns.js +var require_resolver_dns = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolver-dns.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.setup = void 0; + var resolver_1 = require_resolver(); + var dns = require("dns"); + var util2 = require("util"); + var service_config_1 = require_service_config(); + var constants_1 = require_constants10(); + var metadata_1 = require_metadata3(); + var logging = require_logging(); + var constants_2 = require_constants10(); + var uri_parser_1 = require_uri_parser(); + var net_1 = require("net"); + var backoff_timeout_1 = require_backoff_timeout(); + var TRACER_NAME = "dns_resolver"; + function trace(text) { + logging.trace(constants_2.LogVerbosity.DEBUG, TRACER_NAME, text); + } + var DEFAULT_PORT = 443; + var DEFAULT_MIN_TIME_BETWEEN_RESOLUTIONS_MS = 3e4; + var resolveTxtPromise = util2.promisify(dns.resolveTxt); + var dnsLookupPromise = util2.promisify(dns.lookup); + function mergeArrays(...arrays) { + const result = []; + for (let i = 0; i < Math.max.apply(null, arrays.map((array) => array.length)); i++) { + for (const array of arrays) { + if (i < array.length) { + result.push(array[i]); + } + } + } + return result; + } + var DnsResolver = class { + constructor(target, listener, channelOptions) { + var _a, _b, _c; + this.target = target; + this.listener = listener; + this.pendingLookupPromise = null; + this.pendingTxtPromise = null; + this.latestLookupResult = null; + this.latestServiceConfig = null; + this.latestServiceConfigError = null; + this.continueResolving = false; + this.isNextResolutionTimerRunning = false; + this.isServiceConfigEnabled = true; + trace("Resolver constructed for target " + (0, uri_parser_1.uriToString)(target)); + const hostPort = (0, uri_parser_1.splitHostPort)(target.path); + if (hostPort === null) { + this.ipResult = null; + this.dnsHostname = null; + this.port = null; + } else { + if ((0, net_1.isIPv4)(hostPort.host) || (0, net_1.isIPv6)(hostPort.host)) { + this.ipResult = [ + { + host: hostPort.host, + port: (_a = hostPort.port) !== null && _a !== void 0 ? _a : DEFAULT_PORT + } + ]; + this.dnsHostname = null; + this.port = null; + } else { + this.ipResult = null; + this.dnsHostname = hostPort.host; + this.port = (_b = hostPort.port) !== null && _b !== void 0 ? _b : DEFAULT_PORT; + } + } + this.percentage = Math.random() * 100; + if (channelOptions["grpc.service_config_disable_resolution"] === 1) { + this.isServiceConfigEnabled = false; + } + this.defaultResolutionError = { + code: constants_1.Status.UNAVAILABLE, + details: `Name resolution failed for target ${(0, uri_parser_1.uriToString)(this.target)}`, + metadata: new metadata_1.Metadata() + }; + const backoffOptions = { + initialDelay: channelOptions["grpc.initial_reconnect_backoff_ms"], + maxDelay: channelOptions["grpc.max_reconnect_backoff_ms"] + }; + this.backoff = new backoff_timeout_1.BackoffTimeout(() => { + if (this.continueResolving) { + this.startResolutionWithBackoff(); + } + }, backoffOptions); + this.backoff.unref(); + this.minTimeBetweenResolutionsMs = (_c = channelOptions["grpc.dns_min_time_between_resolutions_ms"]) !== null && _c !== void 0 ? _c : DEFAULT_MIN_TIME_BETWEEN_RESOLUTIONS_MS; + this.nextResolutionTimer = setTimeout(() => { + }, 0); + clearTimeout(this.nextResolutionTimer); + } + /** + * If the target is an IP address, just provide that address as a result. + * Otherwise, initiate A, AAAA, and TXT lookups + */ + startResolution() { + if (this.ipResult !== null) { + trace("Returning IP address for target " + (0, uri_parser_1.uriToString)(this.target)); + setImmediate(() => { + this.listener.onSuccessfulResolution(this.ipResult, null, null, null, {}); + }); + this.backoff.stop(); + this.backoff.reset(); + return; + } + if (this.dnsHostname === null) { + trace("Failed to parse DNS address " + (0, uri_parser_1.uriToString)(this.target)); + setImmediate(() => { + this.listener.onError({ + code: constants_1.Status.UNAVAILABLE, + details: `Failed to parse DNS address ${(0, uri_parser_1.uriToString)(this.target)}`, + metadata: new metadata_1.Metadata() + }); + }); + this.stopNextResolutionTimer(); + } else { + if (this.pendingLookupPromise !== null) { + return; + } + trace("Looking up DNS hostname " + this.dnsHostname); + this.latestLookupResult = null; + const hostname = this.dnsHostname; + this.pendingLookupPromise = dnsLookupPromise(hostname, { all: true }); + this.pendingLookupPromise.then((addressList) => { + this.pendingLookupPromise = null; + this.backoff.reset(); + this.backoff.stop(); + const ip4Addresses = addressList.filter((addr2) => addr2.family === 4); + const ip6Addresses = addressList.filter((addr2) => addr2.family === 6); + this.latestLookupResult = mergeArrays(ip6Addresses, ip4Addresses).map((addr2) => ({ host: addr2.address, port: +this.port })); + const allAddressesString = "[" + this.latestLookupResult.map((addr2) => addr2.host + ":" + addr2.port).join(",") + "]"; + trace("Resolved addresses for target " + (0, uri_parser_1.uriToString)(this.target) + ": " + allAddressesString); + if (this.latestLookupResult.length === 0) { + this.listener.onError(this.defaultResolutionError); + return; + } + this.listener.onSuccessfulResolution(this.latestLookupResult, this.latestServiceConfig, this.latestServiceConfigError, null, {}); + }, (err2) => { + trace("Resolution error for target " + (0, uri_parser_1.uriToString)(this.target) + ": " + err2.message); + this.pendingLookupPromise = null; + this.stopNextResolutionTimer(); + this.listener.onError(this.defaultResolutionError); + }); + if (this.isServiceConfigEnabled && this.pendingTxtPromise === null) { + this.pendingTxtPromise = resolveTxtPromise(hostname); + this.pendingTxtPromise.then((txtRecord) => { + this.pendingTxtPromise = null; + try { + this.latestServiceConfig = (0, service_config_1.extractAndSelectServiceConfig)(txtRecord, this.percentage); + } catch (err2) { + this.latestServiceConfigError = { + code: constants_1.Status.UNAVAILABLE, + details: `Parsing service config failed with error ${err2.message}`, + metadata: new metadata_1.Metadata() + }; + } + if (this.latestLookupResult !== null) { + this.listener.onSuccessfulResolution(this.latestLookupResult, this.latestServiceConfig, this.latestServiceConfigError, null, {}); + } + }, (err2) => { + }); + } + } + } + startNextResolutionTimer() { + var _a, _b; + clearTimeout(this.nextResolutionTimer); + this.nextResolutionTimer = (_b = (_a = setTimeout(() => { + this.stopNextResolutionTimer(); + if (this.continueResolving) { + this.startResolutionWithBackoff(); + } + }, this.minTimeBetweenResolutionsMs)).unref) === null || _b === void 0 ? void 0 : _b.call(_a); + this.isNextResolutionTimerRunning = true; + } + stopNextResolutionTimer() { + clearTimeout(this.nextResolutionTimer); + this.isNextResolutionTimerRunning = false; + } + startResolutionWithBackoff() { + if (this.pendingLookupPromise === null) { + this.continueResolving = false; + this.startResolution(); + this.backoff.runOnce(); + this.startNextResolutionTimer(); + } + } + updateResolution() { + if (this.pendingLookupPromise === null) { + if (this.isNextResolutionTimerRunning || this.backoff.isRunning()) { + this.continueResolving = true; + } else { + this.startResolutionWithBackoff(); + } + } + } + destroy() { + this.continueResolving = false; + this.backoff.stop(); + this.stopNextResolutionTimer(); + } + /** + * Get the default authority for the given target. For IP targets, that is + * the IP address. For DNS targets, it is the hostname. + * @param target + */ + static getDefaultAuthority(target) { + return target.path; + } + }; + function setup() { + (0, resolver_1.registerResolver)("dns", DnsResolver); + (0, resolver_1.registerDefaultScheme)("dns"); + } + exports2.setup = setup; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolver-uds.js +var require_resolver_uds = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolver-uds.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.setup = void 0; + var resolver_1 = require_resolver(); + var UdsResolver = class { + constructor(target, listener, channelOptions) { + this.listener = listener; + this.addresses = []; + let path30; + if (target.authority === "") { + path30 = "/" + target.path; + } else { + path30 = target.path; + } + this.addresses = [{ path: path30 }]; + } + updateResolution() { + process.nextTick(this.listener.onSuccessfulResolution, this.addresses, null, null, null, {}); + } + destroy() { + } + static getDefaultAuthority(target) { + return "localhost"; + } + }; + function setup() { + (0, resolver_1.registerResolver)("unix", UdsResolver); + } + exports2.setup = setup; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolver-ip.js +var require_resolver_ip = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/resolver-ip.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.setup = void 0; + var net_1 = require("net"); + var constants_1 = require_constants10(); + var metadata_1 = require_metadata3(); + var resolver_1 = require_resolver(); + var uri_parser_1 = require_uri_parser(); + var logging = require_logging(); + var TRACER_NAME = "ip_resolver"; + function trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, text); + } + var IPV4_SCHEME = "ipv4"; + var IPV6_SCHEME = "ipv6"; + var DEFAULT_PORT = 443; + var IpResolver = class { + constructor(target, listener, channelOptions) { + var _a; + this.listener = listener; + this.addresses = []; + this.error = null; + trace("Resolver constructed for target " + (0, uri_parser_1.uriToString)(target)); + const addresses = []; + if (!(target.scheme === IPV4_SCHEME || target.scheme === IPV6_SCHEME)) { + this.error = { + code: constants_1.Status.UNAVAILABLE, + details: `Unrecognized scheme ${target.scheme} in IP resolver`, + metadata: new metadata_1.Metadata() + }; + return; + } + const pathList = target.path.split(","); + for (const path30 of pathList) { + const hostPort = (0, uri_parser_1.splitHostPort)(path30); + if (hostPort === null) { + this.error = { + code: constants_1.Status.UNAVAILABLE, + details: `Failed to parse ${target.scheme} address ${path30}`, + metadata: new metadata_1.Metadata() + }; + return; + } + if (target.scheme === IPV4_SCHEME && !(0, net_1.isIPv4)(hostPort.host) || target.scheme === IPV6_SCHEME && !(0, net_1.isIPv6)(hostPort.host)) { + this.error = { + code: constants_1.Status.UNAVAILABLE, + details: `Failed to parse ${target.scheme} address ${path30}`, + metadata: new metadata_1.Metadata() + }; + return; + } + addresses.push({ + host: hostPort.host, + port: (_a = hostPort.port) !== null && _a !== void 0 ? _a : DEFAULT_PORT + }); + } + this.addresses = addresses; + trace("Parsed " + target.scheme + " address list " + this.addresses); + } + updateResolution() { + process.nextTick(() => { + if (this.error) { + this.listener.onError(this.error); + } else { + this.listener.onSuccessfulResolution(this.addresses, null, null, null, {}); + } + }); + } + destroy() { + } + static getDefaultAuthority(target) { + return target.path.split(",")[0]; + } + }; + function setup() { + (0, resolver_1.registerResolver)(IPV4_SCHEME, IpResolver); + (0, resolver_1.registerResolver)(IPV6_SCHEME, IpResolver); + } + exports2.setup = setup; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancer-pick-first.js +var require_load_balancer_pick_first = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancer-pick-first.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.setup = exports2.PickFirstLoadBalancer = exports2.PickFirstLoadBalancingConfig = void 0; + var load_balancer_1 = require_load_balancer(); + var connectivity_state_1 = require_connectivity_state(); + var picker_1 = require_picker(); + var subchannel_address_1 = require_subchannel_address(); + var logging = require_logging(); + var constants_1 = require_constants10(); + var TRACER_NAME = "pick_first"; + function trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, text); + } + var TYPE_NAME = "pick_first"; + var CONNECTION_DELAY_INTERVAL_MS = 250; + var PickFirstLoadBalancingConfig = class _PickFirstLoadBalancingConfig { + getLoadBalancerName() { + return TYPE_NAME; + } + constructor() { + } + toJsonObject() { + return { + [TYPE_NAME]: {} + }; + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any + static createFromJson(obj2) { + return new _PickFirstLoadBalancingConfig(); + } + }; + exports2.PickFirstLoadBalancingConfig = PickFirstLoadBalancingConfig; + var PickFirstPicker = class { + constructor(subchannel) { + this.subchannel = subchannel; + } + pick(pickArgs) { + return { + pickResultType: picker_1.PickResultType.COMPLETE, + subchannel: this.subchannel, + status: null, + onCallStarted: null, + onCallEnded: null + }; + } + }; + var PickFirstLoadBalancer = class { + /** + * Load balancer that attempts to connect to each backend in the address list + * in order, and picks the first one that connects, using it for every + * request. + * @param channelControlHelper `ChannelControlHelper` instance provided by + * this load balancer's owner. + */ + constructor(channelControlHelper) { + this.channelControlHelper = channelControlHelper; + this.latestAddressList = []; + this.subchannels = []; + this.currentState = connectivity_state_1.ConnectivityState.IDLE; + this.currentSubchannelIndex = 0; + this.currentPick = null; + this.triedAllSubchannels = false; + this.subchannelStateCounts = { + [connectivity_state_1.ConnectivityState.CONNECTING]: 0, + [connectivity_state_1.ConnectivityState.IDLE]: 0, + [connectivity_state_1.ConnectivityState.READY]: 0, + [connectivity_state_1.ConnectivityState.SHUTDOWN]: 0, + [connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE]: 0 + }; + this.subchannelStateListener = (subchannel, previousState, newState) => { + this.subchannelStateCounts[previousState] -= 1; + this.subchannelStateCounts[newState] += 1; + if (subchannel.getRealSubchannel() === this.subchannels[this.currentSubchannelIndex].getRealSubchannel() && newState === connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE) { + this.startNextSubchannelConnecting(); + } + if (newState === connectivity_state_1.ConnectivityState.READY) { + this.pickSubchannel(subchannel); + return; + } else { + if (this.triedAllSubchannels && this.subchannelStateCounts[connectivity_state_1.ConnectivityState.IDLE] === this.subchannels.length) { + this.resetSubchannelList(false); + this.updateState(connectivity_state_1.ConnectivityState.IDLE, new picker_1.QueuePicker(this)); + return; + } + if (this.currentPick === null) { + if (this.triedAllSubchannels) { + let newLBState; + if (this.subchannelStateCounts[connectivity_state_1.ConnectivityState.CONNECTING] > 0) { + newLBState = connectivity_state_1.ConnectivityState.CONNECTING; + } else if (this.subchannelStateCounts[connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE] > 0) { + newLBState = connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE; + } else { + newLBState = connectivity_state_1.ConnectivityState.IDLE; + } + if (newLBState !== this.currentState) { + if (newLBState === connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE) { + this.updateState(newLBState, new picker_1.UnavailablePicker()); + } else { + this.updateState(newLBState, new picker_1.QueuePicker(this)); + } + } + } else { + this.updateState(connectivity_state_1.ConnectivityState.CONNECTING, new picker_1.QueuePicker(this)); + } + } + } + }; + this.pickedSubchannelStateListener = (subchannel, previousState, newState) => { + if (newState !== connectivity_state_1.ConnectivityState.READY) { + this.currentPick = null; + subchannel.unref(); + subchannel.removeConnectivityStateListener(this.pickedSubchannelStateListener); + this.channelControlHelper.removeChannelzChild(subchannel.getChannelzRef()); + if (this.subchannels.length > 0) { + if (this.triedAllSubchannels) { + let newLBState; + if (this.subchannelStateCounts[connectivity_state_1.ConnectivityState.CONNECTING] > 0) { + newLBState = connectivity_state_1.ConnectivityState.CONNECTING; + } else if (this.subchannelStateCounts[connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE] > 0) { + newLBState = connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE; + } else { + newLBState = connectivity_state_1.ConnectivityState.IDLE; + } + if (newLBState === connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE) { + this.updateState(newLBState, new picker_1.UnavailablePicker()); + } else { + this.updateState(newLBState, new picker_1.QueuePicker(this)); + } + } else { + this.updateState(connectivity_state_1.ConnectivityState.CONNECTING, new picker_1.QueuePicker(this)); + } + } else { + this.updateState(connectivity_state_1.ConnectivityState.IDLE, new picker_1.QueuePicker(this)); + } + } + }; + this.connectionDelayTimeout = setTimeout(() => { + }, 0); + clearTimeout(this.connectionDelayTimeout); + } + startNextSubchannelConnecting() { + if (this.triedAllSubchannels) { + return; + } + for (const [index, subchannel] of this.subchannels.entries()) { + if (index > this.currentSubchannelIndex) { + const subchannelState = subchannel.getConnectivityState(); + if (subchannelState === connectivity_state_1.ConnectivityState.IDLE || subchannelState === connectivity_state_1.ConnectivityState.CONNECTING) { + this.startConnecting(index); + return; + } + } + } + this.triedAllSubchannels = true; + } + /** + * Have a single subchannel in the `subchannels` list start connecting. + * @param subchannelIndex The index into the `subchannels` list. + */ + startConnecting(subchannelIndex) { + clearTimeout(this.connectionDelayTimeout); + this.currentSubchannelIndex = subchannelIndex; + if (this.subchannels[subchannelIndex].getConnectivityState() === connectivity_state_1.ConnectivityState.IDLE) { + trace("Start connecting to subchannel with address " + this.subchannels[subchannelIndex].getAddress()); + process.nextTick(() => { + this.subchannels[subchannelIndex].startConnecting(); + }); + } + this.connectionDelayTimeout = setTimeout(() => { + this.startNextSubchannelConnecting(); + }, CONNECTION_DELAY_INTERVAL_MS); + } + pickSubchannel(subchannel) { + trace("Pick subchannel with address " + subchannel.getAddress()); + if (this.currentPick !== null) { + this.currentPick.unref(); + this.currentPick.removeConnectivityStateListener(this.pickedSubchannelStateListener); + } + this.currentPick = subchannel; + subchannel.addConnectivityStateListener(this.pickedSubchannelStateListener); + subchannel.ref(); + this.channelControlHelper.addChannelzChild(subchannel.getChannelzRef()); + this.resetSubchannelList(); + clearTimeout(this.connectionDelayTimeout); + this.updateState(connectivity_state_1.ConnectivityState.READY, new PickFirstPicker(subchannel)); + } + updateState(newState, picker) { + trace(connectivity_state_1.ConnectivityState[this.currentState] + " -> " + connectivity_state_1.ConnectivityState[newState]); + this.currentState = newState; + this.channelControlHelper.updateState(newState, picker); + } + resetSubchannelList(resetTriedAllSubchannels = true) { + for (const subchannel of this.subchannels) { + subchannel.removeConnectivityStateListener(this.subchannelStateListener); + subchannel.unref(); + this.channelControlHelper.removeChannelzChild(subchannel.getChannelzRef()); + } + this.currentSubchannelIndex = 0; + this.subchannelStateCounts = { + [connectivity_state_1.ConnectivityState.CONNECTING]: 0, + [connectivity_state_1.ConnectivityState.IDLE]: 0, + [connectivity_state_1.ConnectivityState.READY]: 0, + [connectivity_state_1.ConnectivityState.SHUTDOWN]: 0, + [connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE]: 0 + }; + this.subchannels = []; + if (resetTriedAllSubchannels) { + this.triedAllSubchannels = false; + } + } + /** + * Start connecting to the address list most recently passed to + * `updateAddressList`. + */ + connectToAddressList() { + this.resetSubchannelList(); + trace("Connect to address list " + this.latestAddressList.map((address) => (0, subchannel_address_1.subchannelAddressToString)(address))); + this.subchannels = this.latestAddressList.map((address) => this.channelControlHelper.createSubchannel(address, {})); + for (const subchannel of this.subchannels) { + subchannel.ref(); + this.channelControlHelper.addChannelzChild(subchannel.getChannelzRef()); + } + for (const subchannel of this.subchannels) { + subchannel.addConnectivityStateListener(this.subchannelStateListener); + this.subchannelStateCounts[subchannel.getConnectivityState()] += 1; + if (subchannel.getConnectivityState() === connectivity_state_1.ConnectivityState.READY) { + this.pickSubchannel(subchannel); + this.resetSubchannelList(); + return; + } + } + for (const [index, subchannel] of this.subchannels.entries()) { + const subchannelState = subchannel.getConnectivityState(); + if (subchannelState === connectivity_state_1.ConnectivityState.IDLE || subchannelState === connectivity_state_1.ConnectivityState.CONNECTING) { + this.startConnecting(index); + if (this.currentPick === null) { + this.updateState(connectivity_state_1.ConnectivityState.CONNECTING, new picker_1.QueuePicker(this)); + } + return; + } + } + if (this.currentPick === null) { + this.updateState(connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE, new picker_1.UnavailablePicker()); + } + } + updateAddressList(addressList, lbConfig) { + if (this.subchannels.length === 0 || this.latestAddressList.length !== addressList.length || !this.latestAddressList.every((value, index) => addressList[index] && (0, subchannel_address_1.subchannelAddressEqual)(addressList[index], value))) { + this.latestAddressList = addressList; + this.connectToAddressList(); + } + } + exitIdle() { + if (this.currentState === connectivity_state_1.ConnectivityState.IDLE || this.triedAllSubchannels) { + this.channelControlHelper.requestReresolution(); + } + for (const subchannel of this.subchannels) { + subchannel.startConnecting(); + } + if (this.currentState === connectivity_state_1.ConnectivityState.IDLE) { + if (this.latestAddressList.length > 0) { + this.connectToAddressList(); + } + } + } + resetBackoff() { + } + destroy() { + this.resetSubchannelList(); + if (this.currentPick !== null) { + const currentPick = this.currentPick; + currentPick.unref(); + currentPick.removeConnectivityStateListener(this.pickedSubchannelStateListener); + this.channelControlHelper.removeChannelzChild(currentPick.getChannelzRef()); + } + } + getTypeName() { + return TYPE_NAME; + } + }; + exports2.PickFirstLoadBalancer = PickFirstLoadBalancer; + function setup() { + (0, load_balancer_1.registerLoadBalancerType)(TYPE_NAME, PickFirstLoadBalancer, PickFirstLoadBalancingConfig); + (0, load_balancer_1.registerDefaultLoadBalancerType)(TYPE_NAME); + } + exports2.setup = setup; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancer-round-robin.js +var require_load_balancer_round_robin = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/load-balancer-round-robin.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.setup = exports2.RoundRobinLoadBalancer = void 0; + var load_balancer_1 = require_load_balancer(); + var connectivity_state_1 = require_connectivity_state(); + var picker_1 = require_picker(); + var subchannel_address_1 = require_subchannel_address(); + var logging = require_logging(); + var constants_1 = require_constants10(); + var TRACER_NAME = "round_robin"; + function trace(text) { + logging.trace(constants_1.LogVerbosity.DEBUG, TRACER_NAME, text); + } + var TYPE_NAME = "round_robin"; + var RoundRobinLoadBalancingConfig = class _RoundRobinLoadBalancingConfig { + getLoadBalancerName() { + return TYPE_NAME; + } + constructor() { + } + toJsonObject() { + return { + [TYPE_NAME]: {} + }; + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any + static createFromJson(obj2) { + return new _RoundRobinLoadBalancingConfig(); + } + }; + var RoundRobinPicker = class { + constructor(subchannelList, nextIndex = 0) { + this.subchannelList = subchannelList; + this.nextIndex = nextIndex; + } + pick(pickArgs) { + const pickedSubchannel = this.subchannelList[this.nextIndex]; + this.nextIndex = (this.nextIndex + 1) % this.subchannelList.length; + return { + pickResultType: picker_1.PickResultType.COMPLETE, + subchannel: pickedSubchannel, + status: null, + onCallStarted: null, + onCallEnded: null + }; + } + /** + * Check what the next subchannel returned would be. Used by the load + * balancer implementation to preserve this part of the picker state if + * possible when a subchannel connects or disconnects. + */ + peekNextSubchannel() { + return this.subchannelList[this.nextIndex]; + } + }; + var RoundRobinLoadBalancer = class { + constructor(channelControlHelper) { + this.channelControlHelper = channelControlHelper; + this.subchannels = []; + this.currentState = connectivity_state_1.ConnectivityState.IDLE; + this.currentReadyPicker = null; + this.subchannelStateCounts = { + [connectivity_state_1.ConnectivityState.CONNECTING]: 0, + [connectivity_state_1.ConnectivityState.IDLE]: 0, + [connectivity_state_1.ConnectivityState.READY]: 0, + [connectivity_state_1.ConnectivityState.SHUTDOWN]: 0, + [connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE]: 0 + }; + this.subchannelStateListener = (subchannel, previousState, newState) => { + this.subchannelStateCounts[previousState] -= 1; + this.subchannelStateCounts[newState] += 1; + this.calculateAndUpdateState(); + if (newState === connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE || newState === connectivity_state_1.ConnectivityState.IDLE) { + this.channelControlHelper.requestReresolution(); + subchannel.startConnecting(); + } + }; + } + calculateAndUpdateState() { + if (this.subchannelStateCounts[connectivity_state_1.ConnectivityState.READY] > 0) { + const readySubchannels = this.subchannels.filter((subchannel) => subchannel.getConnectivityState() === connectivity_state_1.ConnectivityState.READY); + let index = 0; + if (this.currentReadyPicker !== null) { + index = readySubchannels.indexOf(this.currentReadyPicker.peekNextSubchannel()); + if (index < 0) { + index = 0; + } + } + this.updateState(connectivity_state_1.ConnectivityState.READY, new RoundRobinPicker(readySubchannels, index)); + } else if (this.subchannelStateCounts[connectivity_state_1.ConnectivityState.CONNECTING] > 0) { + this.updateState(connectivity_state_1.ConnectivityState.CONNECTING, new picker_1.QueuePicker(this)); + } else if (this.subchannelStateCounts[connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE] > 0) { + this.updateState(connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE, new picker_1.UnavailablePicker()); + } else { + this.updateState(connectivity_state_1.ConnectivityState.IDLE, new picker_1.QueuePicker(this)); + } + } + updateState(newState, picker) { + trace(connectivity_state_1.ConnectivityState[this.currentState] + " -> " + connectivity_state_1.ConnectivityState[newState]); + if (newState === connectivity_state_1.ConnectivityState.READY) { + this.currentReadyPicker = picker; + } else { + this.currentReadyPicker = null; + } + this.currentState = newState; + this.channelControlHelper.updateState(newState, picker); + } + resetSubchannelList() { + for (const subchannel of this.subchannels) { + subchannel.removeConnectivityStateListener(this.subchannelStateListener); + subchannel.unref(); + this.channelControlHelper.removeChannelzChild(subchannel.getChannelzRef()); + } + this.subchannelStateCounts = { + [connectivity_state_1.ConnectivityState.CONNECTING]: 0, + [connectivity_state_1.ConnectivityState.IDLE]: 0, + [connectivity_state_1.ConnectivityState.READY]: 0, + [connectivity_state_1.ConnectivityState.SHUTDOWN]: 0, + [connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE]: 0 + }; + this.subchannels = []; + } + updateAddressList(addressList, lbConfig) { + this.resetSubchannelList(); + trace("Connect to address list " + addressList.map((address) => (0, subchannel_address_1.subchannelAddressToString)(address))); + this.subchannels = addressList.map((address) => this.channelControlHelper.createSubchannel(address, {})); + for (const subchannel of this.subchannels) { + subchannel.ref(); + subchannel.addConnectivityStateListener(this.subchannelStateListener); + this.channelControlHelper.addChannelzChild(subchannel.getChannelzRef()); + const subchannelState = subchannel.getConnectivityState(); + this.subchannelStateCounts[subchannelState] += 1; + if (subchannelState === connectivity_state_1.ConnectivityState.IDLE || subchannelState === connectivity_state_1.ConnectivityState.TRANSIENT_FAILURE) { + subchannel.startConnecting(); + } + } + this.calculateAndUpdateState(); + } + exitIdle() { + for (const subchannel of this.subchannels) { + subchannel.startConnecting(); + } + } + resetBackoff() { + } + destroy() { + this.resetSubchannelList(); + } + getTypeName() { + return TYPE_NAME; + } + }; + exports2.RoundRobinLoadBalancer = RoundRobinLoadBalancer; + function setup() { + (0, load_balancer_1.registerLoadBalancerType)(TYPE_NAME, RoundRobinLoadBalancer, RoundRobinLoadBalancingConfig); + } + exports2.setup = setup; + } +}); + +// ../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/index.js +var require_src25 = __commonJS({ + "../node_modules/.pnpm/@grpc+grpc-js@1.8.20/node_modules/@grpc/grpc-js/build/src/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.experimental = exports2.addAdminServicesToServer = exports2.getChannelzHandlers = exports2.getChannelzServiceDefinition = exports2.InterceptorConfigurationError = exports2.InterceptingCall = exports2.RequesterBuilder = exports2.ListenerBuilder = exports2.StatusBuilder = exports2.getClientChannel = exports2.ServerCredentials = exports2.Server = exports2.setLogVerbosity = exports2.setLogger = exports2.load = exports2.loadObject = exports2.CallCredentials = exports2.ChannelCredentials = exports2.waitForClientReady = exports2.closeClient = exports2.Channel = exports2.makeGenericClientConstructor = exports2.makeClientConstructor = exports2.loadPackageDefinition = exports2.Client = exports2.compressionAlgorithms = exports2.propagate = exports2.connectivityState = exports2.status = exports2.logVerbosity = exports2.Metadata = exports2.credentials = void 0; + var call_credentials_1 = require_call_credentials(); + Object.defineProperty(exports2, "CallCredentials", { enumerable: true, get: function() { + return call_credentials_1.CallCredentials; + } }); + var channel_1 = require_channel(); + Object.defineProperty(exports2, "Channel", { enumerable: true, get: function() { + return channel_1.ChannelImplementation; + } }); + var compression_algorithms_1 = require_compression_algorithms(); + Object.defineProperty(exports2, "compressionAlgorithms", { enumerable: true, get: function() { + return compression_algorithms_1.CompressionAlgorithms; + } }); + var connectivity_state_1 = require_connectivity_state(); + Object.defineProperty(exports2, "connectivityState", { enumerable: true, get: function() { + return connectivity_state_1.ConnectivityState; + } }); + var channel_credentials_1 = require_channel_credentials(); + Object.defineProperty(exports2, "ChannelCredentials", { enumerable: true, get: function() { + return channel_credentials_1.ChannelCredentials; + } }); + var client_1 = require_client(); + Object.defineProperty(exports2, "Client", { enumerable: true, get: function() { + return client_1.Client; + } }); + var constants_1 = require_constants10(); + Object.defineProperty(exports2, "logVerbosity", { enumerable: true, get: function() { + return constants_1.LogVerbosity; + } }); + Object.defineProperty(exports2, "status", { enumerable: true, get: function() { + return constants_1.Status; + } }); + Object.defineProperty(exports2, "propagate", { enumerable: true, get: function() { + return constants_1.Propagate; + } }); + var logging = require_logging(); + var make_client_1 = require_make_client(); + Object.defineProperty(exports2, "loadPackageDefinition", { enumerable: true, get: function() { + return make_client_1.loadPackageDefinition; + } }); + Object.defineProperty(exports2, "makeClientConstructor", { enumerable: true, get: function() { + return make_client_1.makeClientConstructor; + } }); + Object.defineProperty(exports2, "makeGenericClientConstructor", { enumerable: true, get: function() { + return make_client_1.makeClientConstructor; + } }); + var metadata_1 = require_metadata3(); + Object.defineProperty(exports2, "Metadata", { enumerable: true, get: function() { + return metadata_1.Metadata; + } }); + var server_1 = require_server(); + Object.defineProperty(exports2, "Server", { enumerable: true, get: function() { + return server_1.Server; + } }); + var server_credentials_1 = require_server_credentials(); + Object.defineProperty(exports2, "ServerCredentials", { enumerable: true, get: function() { + return server_credentials_1.ServerCredentials; + } }); + var status_builder_1 = require_status_builder(); + Object.defineProperty(exports2, "StatusBuilder", { enumerable: true, get: function() { + return status_builder_1.StatusBuilder; + } }); + exports2.credentials = { + /** + * Combine a ChannelCredentials with any number of CallCredentials into a + * single ChannelCredentials object. + * @param channelCredentials The ChannelCredentials object. + * @param callCredentials Any number of CallCredentials objects. + * @return The resulting ChannelCredentials object. + */ + combineChannelCredentials: (channelCredentials, ...callCredentials) => { + return callCredentials.reduce((acc, other) => acc.compose(other), channelCredentials); + }, + /** + * Combine any number of CallCredentials into a single CallCredentials + * object. + * @param first The first CallCredentials object. + * @param additional Any number of additional CallCredentials objects. + * @return The resulting CallCredentials object. + */ + combineCallCredentials: (first, ...additional) => { + return additional.reduce((acc, other) => acc.compose(other), first); + }, + // from channel-credentials.ts + createInsecure: channel_credentials_1.ChannelCredentials.createInsecure, + createSsl: channel_credentials_1.ChannelCredentials.createSsl, + createFromSecureContext: channel_credentials_1.ChannelCredentials.createFromSecureContext, + // from call-credentials.ts + createFromMetadataGenerator: call_credentials_1.CallCredentials.createFromMetadataGenerator, + createFromGoogleCredential: call_credentials_1.CallCredentials.createFromGoogleCredential, + createEmpty: call_credentials_1.CallCredentials.createEmpty + }; + var closeClient = (client) => client.close(); + exports2.closeClient = closeClient; + var waitForClientReady = (client, deadline, callback) => client.waitForReady(deadline, callback); + exports2.waitForClientReady = waitForClientReady; + var loadObject = (value, options2) => { + throw new Error("Not available in this library. Use @grpc/proto-loader and loadPackageDefinition instead"); + }; + exports2.loadObject = loadObject; + var load = (filename, format, options2) => { + throw new Error("Not available in this library. Use @grpc/proto-loader and loadPackageDefinition instead"); + }; + exports2.load = load; + var setLogger = (logger2) => { + logging.setLogger(logger2); + }; + exports2.setLogger = setLogger; + var setLogVerbosity = (verbosity) => { + logging.setLoggerVerbosity(verbosity); + }; + exports2.setLogVerbosity = setLogVerbosity; + var getClientChannel = (client) => { + return client_1.Client.prototype.getChannel.call(client); + }; + exports2.getClientChannel = getClientChannel; + var client_interceptors_1 = require_client_interceptors(); + Object.defineProperty(exports2, "ListenerBuilder", { enumerable: true, get: function() { + return client_interceptors_1.ListenerBuilder; + } }); + Object.defineProperty(exports2, "RequesterBuilder", { enumerable: true, get: function() { + return client_interceptors_1.RequesterBuilder; + } }); + Object.defineProperty(exports2, "InterceptingCall", { enumerable: true, get: function() { + return client_interceptors_1.InterceptingCall; + } }); + Object.defineProperty(exports2, "InterceptorConfigurationError", { enumerable: true, get: function() { + return client_interceptors_1.InterceptorConfigurationError; + } }); + var channelz_1 = require_channelz(); + Object.defineProperty(exports2, "getChannelzServiceDefinition", { enumerable: true, get: function() { + return channelz_1.getChannelzServiceDefinition; + } }); + Object.defineProperty(exports2, "getChannelzHandlers", { enumerable: true, get: function() { + return channelz_1.getChannelzHandlers; + } }); + var admin_1 = require_admin(); + Object.defineProperty(exports2, "addAdminServicesToServer", { enumerable: true, get: function() { + return admin_1.addAdminServicesToServer; + } }); + var experimental = require_experimental(); + exports2.experimental = experimental; + var resolver_dns = require_resolver_dns(); + var resolver_uds = require_resolver_uds(); + var resolver_ip = require_resolver_ip(); + var load_balancer_pick_first = require_load_balancer_pick_first(); + var load_balancer_round_robin = require_load_balancer_round_robin(); + var load_balancer_outlier_detection = require_load_balancer_outlier_detection(); + var channelz = require_channelz(); + var clientVersion = require_package2().version; + (() => { + logging.trace(constants_1.LogVerbosity.DEBUG, "index", "Loading @grpc/grpc-js version " + clientVersion); + resolver_dns.setup(); + resolver_uds.setup(); + resolver_ip.setup(); + load_balancer_pick_first.setup(); + load_balancer_round_robin.setup(); + load_balancer_outlier_detection.setup(); + channelz.setup(); + })(); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/types.js +var require_types21 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ServiceClientType = void 0; + var ServiceClientType; + (function(ServiceClientType2) { + ServiceClientType2[ServiceClientType2["SPANS"] = 0] = "SPANS"; + ServiceClientType2[ServiceClientType2["METRICS"] = 1] = "METRICS"; + ServiceClientType2[ServiceClientType2["LOGS"] = 2] = "LOGS"; + })(ServiceClientType = exports2.ServiceClientType || (exports2.ServiceClientType = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/generated/root.js +var require_root3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/generated/root.js"(exports2, module2) { + "use strict"; + var $protobuf = require_minimal2(); + var $Reader = $protobuf.Reader; + var $Writer = $protobuf.Writer; + var $util = $protobuf.util; + var $root = $protobuf.roots["default"] || ($protobuf.roots["default"] = {}); + $root.opentelemetry = function() { + var opentelemetry2 = {}; + opentelemetry2.proto = function() { + var proto = {}; + proto.common = function() { + var common = {}; + common.v1 = function() { + var v1 = {}; + v1.AnyValue = function() { + function AnyValue(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + AnyValue.prototype.stringValue = null; + AnyValue.prototype.boolValue = null; + AnyValue.prototype.intValue = null; + AnyValue.prototype.doubleValue = null; + AnyValue.prototype.arrayValue = null; + AnyValue.prototype.kvlistValue = null; + AnyValue.prototype.bytesValue = null; + var $oneOfFields; + Object.defineProperty(AnyValue.prototype, "value", { + get: $util.oneOfGetter($oneOfFields = ["stringValue", "boolValue", "intValue", "doubleValue", "arrayValue", "kvlistValue", "bytesValue"]), + set: $util.oneOfSetter($oneOfFields) + }); + AnyValue.create = function create2(properties2) { + return new AnyValue(properties2); + }; + AnyValue.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).string(message.stringValue); + if (message.boolValue != null && Object.hasOwnProperty.call(message, "boolValue")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).bool(message.boolValue); + if (message.intValue != null && Object.hasOwnProperty.call(message, "intValue")) + writer.uint32( + /* id 3, wireType 0 =*/ + 24 + ).int64(message.intValue); + if (message.doubleValue != null && Object.hasOwnProperty.call(message, "doubleValue")) + writer.uint32( + /* id 4, wireType 1 =*/ + 33 + ).double(message.doubleValue); + if (message.arrayValue != null && Object.hasOwnProperty.call(message, "arrayValue")) + $root.opentelemetry.proto.common.v1.ArrayValue.encode(message.arrayValue, writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).fork()).ldelim(); + if (message.kvlistValue != null && Object.hasOwnProperty.call(message, "kvlistValue")) + $root.opentelemetry.proto.common.v1.KeyValueList.encode(message.kvlistValue, writer.uint32( + /* id 6, wireType 2 =*/ + 50 + ).fork()).ldelim(); + if (message.bytesValue != null && Object.hasOwnProperty.call(message, "bytesValue")) + writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).bytes(message.bytesValue); + return writer; + }; + AnyValue.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + AnyValue.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.common.v1.AnyValue(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.stringValue = reader.string(); + break; + } + case 2: { + message.boolValue = reader.bool(); + break; + } + case 3: { + message.intValue = reader.int64(); + break; + } + case 4: { + message.doubleValue = reader.double(); + break; + } + case 5: { + message.arrayValue = $root.opentelemetry.proto.common.v1.ArrayValue.decode(reader, reader.uint32()); + break; + } + case 6: { + message.kvlistValue = $root.opentelemetry.proto.common.v1.KeyValueList.decode(reader, reader.uint32()); + break; + } + case 7: { + message.bytesValue = reader.bytes(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + AnyValue.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + AnyValue.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.stringValue != null && message.hasOwnProperty("stringValue")) { + properties2.value = 1; + if (!$util.isString(message.stringValue)) + return "stringValue: string expected"; + } + if (message.boolValue != null && message.hasOwnProperty("boolValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (typeof message.boolValue !== "boolean") + return "boolValue: boolean expected"; + } + if (message.intValue != null && message.hasOwnProperty("intValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (!$util.isInteger(message.intValue) && !(message.intValue && $util.isInteger(message.intValue.low) && $util.isInteger(message.intValue.high))) + return "intValue: integer|Long expected"; + } + if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (typeof message.doubleValue !== "number") + return "doubleValue: number expected"; + } + if (message.arrayValue != null && message.hasOwnProperty("arrayValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + { + var error = $root.opentelemetry.proto.common.v1.ArrayValue.verify(message.arrayValue); + if (error) + return "arrayValue." + error; + } + } + if (message.kvlistValue != null && message.hasOwnProperty("kvlistValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + { + var error = $root.opentelemetry.proto.common.v1.KeyValueList.verify(message.kvlistValue); + if (error) + return "kvlistValue." + error; + } + } + if (message.bytesValue != null && message.hasOwnProperty("bytesValue")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (!(message.bytesValue && typeof message.bytesValue.length === "number" || $util.isString(message.bytesValue))) + return "bytesValue: buffer expected"; + } + return null; + }; + AnyValue.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.common.v1.AnyValue) + return object; + var message = new $root.opentelemetry.proto.common.v1.AnyValue(); + if (object.stringValue != null) + message.stringValue = String(object.stringValue); + if (object.boolValue != null) + message.boolValue = Boolean(object.boolValue); + if (object.intValue != null) { + if ($util.Long) + (message.intValue = $util.Long.fromValue(object.intValue)).unsigned = false; + else if (typeof object.intValue === "string") + message.intValue = parseInt(object.intValue, 10); + else if (typeof object.intValue === "number") + message.intValue = object.intValue; + else if (typeof object.intValue === "object") + message.intValue = new $util.LongBits(object.intValue.low >>> 0, object.intValue.high >>> 0).toNumber(); + } + if (object.doubleValue != null) + message.doubleValue = Number(object.doubleValue); + if (object.arrayValue != null) { + if (typeof object.arrayValue !== "object") + throw TypeError(".opentelemetry.proto.common.v1.AnyValue.arrayValue: object expected"); + message.arrayValue = $root.opentelemetry.proto.common.v1.ArrayValue.fromObject(object.arrayValue); + } + if (object.kvlistValue != null) { + if (typeof object.kvlistValue !== "object") + throw TypeError(".opentelemetry.proto.common.v1.AnyValue.kvlistValue: object expected"); + message.kvlistValue = $root.opentelemetry.proto.common.v1.KeyValueList.fromObject(object.kvlistValue); + } + if (object.bytesValue != null) { + if (typeof object.bytesValue === "string") + $util.base64.decode(object.bytesValue, message.bytesValue = $util.newBuffer($util.base64.length(object.bytesValue)), 0); + else if (object.bytesValue.length >= 0) + message.bytesValue = object.bytesValue; + } + return message; + }; + AnyValue.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (message.stringValue != null && message.hasOwnProperty("stringValue")) { + object.stringValue = message.stringValue; + if (options2.oneofs) + object.value = "stringValue"; + } + if (message.boolValue != null && message.hasOwnProperty("boolValue")) { + object.boolValue = message.boolValue; + if (options2.oneofs) + object.value = "boolValue"; + } + if (message.intValue != null && message.hasOwnProperty("intValue")) { + if (typeof message.intValue === "number") + object.intValue = options2.longs === String ? String(message.intValue) : message.intValue; + else + object.intValue = options2.longs === String ? $util.Long.prototype.toString.call(message.intValue) : options2.longs === Number ? new $util.LongBits(message.intValue.low >>> 0, message.intValue.high >>> 0).toNumber() : message.intValue; + if (options2.oneofs) + object.value = "intValue"; + } + if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) { + object.doubleValue = options2.json && !isFinite(message.doubleValue) ? String(message.doubleValue) : message.doubleValue; + if (options2.oneofs) + object.value = "doubleValue"; + } + if (message.arrayValue != null && message.hasOwnProperty("arrayValue")) { + object.arrayValue = $root.opentelemetry.proto.common.v1.ArrayValue.toObject(message.arrayValue, options2); + if (options2.oneofs) + object.value = "arrayValue"; + } + if (message.kvlistValue != null && message.hasOwnProperty("kvlistValue")) { + object.kvlistValue = $root.opentelemetry.proto.common.v1.KeyValueList.toObject(message.kvlistValue, options2); + if (options2.oneofs) + object.value = "kvlistValue"; + } + if (message.bytesValue != null && message.hasOwnProperty("bytesValue")) { + object.bytesValue = options2.bytes === String ? $util.base64.encode(message.bytesValue, 0, message.bytesValue.length) : options2.bytes === Array ? Array.prototype.slice.call(message.bytesValue) : message.bytesValue; + if (options2.oneofs) + object.value = "bytesValue"; + } + return object; + }; + AnyValue.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + AnyValue.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.common.v1.AnyValue"; + }; + return AnyValue; + }(); + v1.ArrayValue = function() { + function ArrayValue(properties2) { + this.values = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ArrayValue.prototype.values = $util.emptyArray; + ArrayValue.create = function create2(properties2) { + return new ArrayValue(properties2); + }; + ArrayValue.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.values != null && message.values.length) + for (var i = 0; i < message.values.length; ++i) + $root.opentelemetry.proto.common.v1.AnyValue.encode(message.values[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ArrayValue.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ArrayValue.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.common.v1.ArrayValue(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.values && message.values.length)) + message.values = []; + message.values.push($root.opentelemetry.proto.common.v1.AnyValue.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ArrayValue.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ArrayValue.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.values != null && message.hasOwnProperty("values")) { + if (!Array.isArray(message.values)) + return "values: array expected"; + for (var i = 0; i < message.values.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.AnyValue.verify(message.values[i]); + if (error) + return "values." + error; + } + } + return null; + }; + ArrayValue.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.common.v1.ArrayValue) + return object; + var message = new $root.opentelemetry.proto.common.v1.ArrayValue(); + if (object.values) { + if (!Array.isArray(object.values)) + throw TypeError(".opentelemetry.proto.common.v1.ArrayValue.values: array expected"); + message.values = []; + for (var i = 0; i < object.values.length; ++i) { + if (typeof object.values[i] !== "object") + throw TypeError(".opentelemetry.proto.common.v1.ArrayValue.values: object expected"); + message.values[i] = $root.opentelemetry.proto.common.v1.AnyValue.fromObject(object.values[i]); + } + } + return message; + }; + ArrayValue.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.values = []; + if (message.values && message.values.length) { + object.values = []; + for (var j = 0; j < message.values.length; ++j) + object.values[j] = $root.opentelemetry.proto.common.v1.AnyValue.toObject(message.values[j], options2); + } + return object; + }; + ArrayValue.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ArrayValue.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.common.v1.ArrayValue"; + }; + return ArrayValue; + }(); + v1.KeyValueList = function() { + function KeyValueList(properties2) { + this.values = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + KeyValueList.prototype.values = $util.emptyArray; + KeyValueList.create = function create2(properties2) { + return new KeyValueList(properties2); + }; + KeyValueList.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.values != null && message.values.length) + for (var i = 0; i < message.values.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.values[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + KeyValueList.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + KeyValueList.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.common.v1.KeyValueList(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.values && message.values.length)) + message.values = []; + message.values.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + KeyValueList.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + KeyValueList.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.values != null && message.hasOwnProperty("values")) { + if (!Array.isArray(message.values)) + return "values: array expected"; + for (var i = 0; i < message.values.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.values[i]); + if (error) + return "values." + error; + } + } + return null; + }; + KeyValueList.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.common.v1.KeyValueList) + return object; + var message = new $root.opentelemetry.proto.common.v1.KeyValueList(); + if (object.values) { + if (!Array.isArray(object.values)) + throw TypeError(".opentelemetry.proto.common.v1.KeyValueList.values: array expected"); + message.values = []; + for (var i = 0; i < object.values.length; ++i) { + if (typeof object.values[i] !== "object") + throw TypeError(".opentelemetry.proto.common.v1.KeyValueList.values: object expected"); + message.values[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.values[i]); + } + } + return message; + }; + KeyValueList.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.values = []; + if (message.values && message.values.length) { + object.values = []; + for (var j = 0; j < message.values.length; ++j) + object.values[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.values[j], options2); + } + return object; + }; + KeyValueList.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + KeyValueList.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.common.v1.KeyValueList"; + }; + return KeyValueList; + }(); + v1.KeyValue = function() { + function KeyValue(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + KeyValue.prototype.key = null; + KeyValue.prototype.value = null; + KeyValue.create = function create2(properties2) { + return new KeyValue(properties2); + }; + KeyValue.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.key != null && Object.hasOwnProperty.call(message, "key")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).string(message.key); + if (message.value != null && Object.hasOwnProperty.call(message, "value")) + $root.opentelemetry.proto.common.v1.AnyValue.encode(message.value, writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + return writer; + }; + KeyValue.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + KeyValue.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.common.v1.KeyValue(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.key = reader.string(); + break; + } + case 2: { + message.value = $root.opentelemetry.proto.common.v1.AnyValue.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + KeyValue.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + KeyValue.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.key != null && message.hasOwnProperty("key")) { + if (!$util.isString(message.key)) + return "key: string expected"; + } + if (message.value != null && message.hasOwnProperty("value")) { + var error = $root.opentelemetry.proto.common.v1.AnyValue.verify(message.value); + if (error) + return "value." + error; + } + return null; + }; + KeyValue.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.common.v1.KeyValue) + return object; + var message = new $root.opentelemetry.proto.common.v1.KeyValue(); + if (object.key != null) + message.key = String(object.key); + if (object.value != null) { + if (typeof object.value !== "object") + throw TypeError(".opentelemetry.proto.common.v1.KeyValue.value: object expected"); + message.value = $root.opentelemetry.proto.common.v1.AnyValue.fromObject(object.value); + } + return message; + }; + KeyValue.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + object.key = ""; + object.value = null; + } + if (message.key != null && message.hasOwnProperty("key")) + object.key = message.key; + if (message.value != null && message.hasOwnProperty("value")) + object.value = $root.opentelemetry.proto.common.v1.AnyValue.toObject(message.value, options2); + return object; + }; + KeyValue.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + KeyValue.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.common.v1.KeyValue"; + }; + return KeyValue; + }(); + v1.InstrumentationScope = function() { + function InstrumentationScope(properties2) { + this.attributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + InstrumentationScope.prototype.name = null; + InstrumentationScope.prototype.version = null; + InstrumentationScope.prototype.attributes = $util.emptyArray; + InstrumentationScope.prototype.droppedAttributesCount = null; + InstrumentationScope.create = function create2(properties2) { + return new InstrumentationScope(properties2); + }; + InstrumentationScope.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).string(message.name); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.version); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 4, wireType 0 =*/ + 32 + ).uint32(message.droppedAttributesCount); + return writer; + }; + InstrumentationScope.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + InstrumentationScope.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.common.v1.InstrumentationScope(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.version = reader.string(); + break; + } + case 3: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 4: { + message.droppedAttributesCount = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + InstrumentationScope.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + InstrumentationScope.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) { + if (!$util.isString(message.name)) + return "name: string expected"; + } + if (message.version != null && message.hasOwnProperty("version")) { + if (!$util.isString(message.version)) + return "version: string expected"; + } + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + return null; + }; + InstrumentationScope.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.common.v1.InstrumentationScope) + return object; + var message = new $root.opentelemetry.proto.common.v1.InstrumentationScope(); + if (object.name != null) + message.name = String(object.name); + if (object.version != null) + message.version = String(object.version); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.common.v1.InstrumentationScope.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.common.v1.InstrumentationScope.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + return message; + }; + InstrumentationScope.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.attributes = []; + if (options2.defaults) { + object.name = ""; + object.version = ""; + object.droppedAttributesCount = 0; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + return object; + }; + InstrumentationScope.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + InstrumentationScope.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.common.v1.InstrumentationScope"; + }; + return InstrumentationScope; + }(); + return v1; + }(); + return common; + }(); + proto.resource = function() { + var resource = {}; + resource.v1 = function() { + var v1 = {}; + v1.Resource = function() { + function Resource2(properties2) { + this.attributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Resource2.prototype.attributes = $util.emptyArray; + Resource2.prototype.droppedAttributesCount = null; + Resource2.create = function create2(properties2) { + return new Resource2(properties2); + }; + Resource2.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).uint32(message.droppedAttributesCount); + return writer; + }; + Resource2.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Resource2.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.resource.v1.Resource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.droppedAttributesCount = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Resource2.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Resource2.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + return null; + }; + Resource2.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.resource.v1.Resource) + return object; + var message = new $root.opentelemetry.proto.resource.v1.Resource(); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.resource.v1.Resource.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.resource.v1.Resource.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + return message; + }; + Resource2.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.attributes = []; + if (options2.defaults) + object.droppedAttributesCount = 0; + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + return object; + }; + Resource2.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Resource2.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.resource.v1.Resource"; + }; + return Resource2; + }(); + return v1; + }(); + return resource; + }(); + proto.trace = function() { + var trace = {}; + trace.v1 = function() { + var v1 = {}; + v1.TracesData = function() { + function TracesData(properties2) { + this.resourceSpans = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + TracesData.prototype.resourceSpans = $util.emptyArray; + TracesData.create = function create2(properties2) { + return new TracesData(properties2); + }; + TracesData.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceSpans != null && message.resourceSpans.length) + for (var i = 0; i < message.resourceSpans.length; ++i) + $root.opentelemetry.proto.trace.v1.ResourceSpans.encode(message.resourceSpans[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + TracesData.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + TracesData.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.TracesData(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceSpans && message.resourceSpans.length)) + message.resourceSpans = []; + message.resourceSpans.push($root.opentelemetry.proto.trace.v1.ResourceSpans.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + TracesData.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + TracesData.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceSpans != null && message.hasOwnProperty("resourceSpans")) { + if (!Array.isArray(message.resourceSpans)) + return "resourceSpans: array expected"; + for (var i = 0; i < message.resourceSpans.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.ResourceSpans.verify(message.resourceSpans[i]); + if (error) + return "resourceSpans." + error; + } + } + return null; + }; + TracesData.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.TracesData) + return object; + var message = new $root.opentelemetry.proto.trace.v1.TracesData(); + if (object.resourceSpans) { + if (!Array.isArray(object.resourceSpans)) + throw TypeError(".opentelemetry.proto.trace.v1.TracesData.resourceSpans: array expected"); + message.resourceSpans = []; + for (var i = 0; i < object.resourceSpans.length; ++i) { + if (typeof object.resourceSpans[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.TracesData.resourceSpans: object expected"); + message.resourceSpans[i] = $root.opentelemetry.proto.trace.v1.ResourceSpans.fromObject(object.resourceSpans[i]); + } + } + return message; + }; + TracesData.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceSpans = []; + if (message.resourceSpans && message.resourceSpans.length) { + object.resourceSpans = []; + for (var j = 0; j < message.resourceSpans.length; ++j) + object.resourceSpans[j] = $root.opentelemetry.proto.trace.v1.ResourceSpans.toObject(message.resourceSpans[j], options2); + } + return object; + }; + TracesData.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + TracesData.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.TracesData"; + }; + return TracesData; + }(); + v1.ResourceSpans = function() { + function ResourceSpans(properties2) { + this.scopeSpans = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ResourceSpans.prototype.resource = null; + ResourceSpans.prototype.scopeSpans = $util.emptyArray; + ResourceSpans.prototype.schemaUrl = null; + ResourceSpans.create = function create2(properties2) { + return new ResourceSpans(properties2); + }; + ResourceSpans.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.opentelemetry.proto.resource.v1.Resource.encode(message.resource, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.scopeSpans != null && message.scopeSpans.length) + for (var i = 0; i < message.scopeSpans.length; ++i) + $root.opentelemetry.proto.trace.v1.ScopeSpans.encode(message.scopeSpans[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ResourceSpans.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ResourceSpans.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.ResourceSpans(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.resource = $root.opentelemetry.proto.resource.v1.Resource.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.scopeSpans && message.scopeSpans.length)) + message.scopeSpans = []; + message.scopeSpans.push($root.opentelemetry.proto.trace.v1.ScopeSpans.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ResourceSpans.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ResourceSpans.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.opentelemetry.proto.resource.v1.Resource.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.scopeSpans != null && message.hasOwnProperty("scopeSpans")) { + if (!Array.isArray(message.scopeSpans)) + return "scopeSpans: array expected"; + for (var i = 0; i < message.scopeSpans.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.ScopeSpans.verify(message.scopeSpans[i]); + if (error) + return "scopeSpans." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ResourceSpans.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.ResourceSpans) + return object; + var message = new $root.opentelemetry.proto.trace.v1.ResourceSpans(); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.ResourceSpans.resource: object expected"); + message.resource = $root.opentelemetry.proto.resource.v1.Resource.fromObject(object.resource); + } + if (object.scopeSpans) { + if (!Array.isArray(object.scopeSpans)) + throw TypeError(".opentelemetry.proto.trace.v1.ResourceSpans.scopeSpans: array expected"); + message.scopeSpans = []; + for (var i = 0; i < object.scopeSpans.length; ++i) { + if (typeof object.scopeSpans[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.ResourceSpans.scopeSpans: object expected"); + message.scopeSpans[i] = $root.opentelemetry.proto.trace.v1.ScopeSpans.fromObject(object.scopeSpans[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ResourceSpans.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.scopeSpans = []; + if (options2.defaults) { + object.resource = null; + object.schemaUrl = ""; + } + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.opentelemetry.proto.resource.v1.Resource.toObject(message.resource, options2); + if (message.scopeSpans && message.scopeSpans.length) { + object.scopeSpans = []; + for (var j = 0; j < message.scopeSpans.length; ++j) + object.scopeSpans[j] = $root.opentelemetry.proto.trace.v1.ScopeSpans.toObject(message.scopeSpans[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ResourceSpans.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ResourceSpans.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.ResourceSpans"; + }; + return ResourceSpans; + }(); + v1.ScopeSpans = function() { + function ScopeSpans(properties2) { + this.spans = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ScopeSpans.prototype.scope = null; + ScopeSpans.prototype.spans = $util.emptyArray; + ScopeSpans.prototype.schemaUrl = null; + ScopeSpans.create = function create2(properties2) { + return new ScopeSpans(properties2); + }; + ScopeSpans.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.scope != null && Object.hasOwnProperty.call(message, "scope")) + $root.opentelemetry.proto.common.v1.InstrumentationScope.encode(message.scope, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.spans != null && message.spans.length) + for (var i = 0; i < message.spans.length; ++i) + $root.opentelemetry.proto.trace.v1.Span.encode(message.spans[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ScopeSpans.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ScopeSpans.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.ScopeSpans(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.spans && message.spans.length)) + message.spans = []; + message.spans.push($root.opentelemetry.proto.trace.v1.Span.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ScopeSpans.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ScopeSpans.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.scope != null && message.hasOwnProperty("scope")) { + var error = $root.opentelemetry.proto.common.v1.InstrumentationScope.verify(message.scope); + if (error) + return "scope." + error; + } + if (message.spans != null && message.hasOwnProperty("spans")) { + if (!Array.isArray(message.spans)) + return "spans: array expected"; + for (var i = 0; i < message.spans.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.Span.verify(message.spans[i]); + if (error) + return "spans." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ScopeSpans.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.ScopeSpans) + return object; + var message = new $root.opentelemetry.proto.trace.v1.ScopeSpans(); + if (object.scope != null) { + if (typeof object.scope !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.ScopeSpans.scope: object expected"); + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.fromObject(object.scope); + } + if (object.spans) { + if (!Array.isArray(object.spans)) + throw TypeError(".opentelemetry.proto.trace.v1.ScopeSpans.spans: array expected"); + message.spans = []; + for (var i = 0; i < object.spans.length; ++i) { + if (typeof object.spans[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.ScopeSpans.spans: object expected"); + message.spans[i] = $root.opentelemetry.proto.trace.v1.Span.fromObject(object.spans[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ScopeSpans.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.spans = []; + if (options2.defaults) { + object.scope = null; + object.schemaUrl = ""; + } + if (message.scope != null && message.hasOwnProperty("scope")) + object.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.toObject(message.scope, options2); + if (message.spans && message.spans.length) { + object.spans = []; + for (var j = 0; j < message.spans.length; ++j) + object.spans[j] = $root.opentelemetry.proto.trace.v1.Span.toObject(message.spans[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ScopeSpans.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ScopeSpans.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.ScopeSpans"; + }; + return ScopeSpans; + }(); + v1.Span = function() { + function Span(properties2) { + this.attributes = []; + this.events = []; + this.links = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Span.prototype.traceId = null; + Span.prototype.spanId = null; + Span.prototype.traceState = null; + Span.prototype.parentSpanId = null; + Span.prototype.name = null; + Span.prototype.kind = null; + Span.prototype.startTimeUnixNano = null; + Span.prototype.endTimeUnixNano = null; + Span.prototype.attributes = $util.emptyArray; + Span.prototype.droppedAttributesCount = null; + Span.prototype.events = $util.emptyArray; + Span.prototype.droppedEventsCount = null; + Span.prototype.links = $util.emptyArray; + Span.prototype.droppedLinksCount = null; + Span.prototype.status = null; + Span.create = function create2(properties2) { + return new Span(properties2); + }; + Span.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.traceId != null && Object.hasOwnProperty.call(message, "traceId")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).bytes(message.traceId); + if (message.spanId != null && Object.hasOwnProperty.call(message, "spanId")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).bytes(message.spanId); + if (message.traceState != null && Object.hasOwnProperty.call(message, "traceState")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.traceState); + if (message.parentSpanId != null && Object.hasOwnProperty.call(message, "parentSpanId")) + writer.uint32( + /* id 4, wireType 2 =*/ + 34 + ).bytes(message.parentSpanId); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).string(message.name); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32( + /* id 6, wireType 0 =*/ + 48 + ).int32(message.kind); + if (message.startTimeUnixNano != null && Object.hasOwnProperty.call(message, "startTimeUnixNano")) + writer.uint32( + /* id 7, wireType 1 =*/ + 57 + ).fixed64(message.startTimeUnixNano); + if (message.endTimeUnixNano != null && Object.hasOwnProperty.call(message, "endTimeUnixNano")) + writer.uint32( + /* id 8, wireType 1 =*/ + 65 + ).fixed64(message.endTimeUnixNano); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 9, wireType 2 =*/ + 74 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 10, wireType 0 =*/ + 80 + ).uint32(message.droppedAttributesCount); + if (message.events != null && message.events.length) + for (var i = 0; i < message.events.length; ++i) + $root.opentelemetry.proto.trace.v1.Span.Event.encode(message.events[i], writer.uint32( + /* id 11, wireType 2 =*/ + 90 + ).fork()).ldelim(); + if (message.droppedEventsCount != null && Object.hasOwnProperty.call(message, "droppedEventsCount")) + writer.uint32( + /* id 12, wireType 0 =*/ + 96 + ).uint32(message.droppedEventsCount); + if (message.links != null && message.links.length) + for (var i = 0; i < message.links.length; ++i) + $root.opentelemetry.proto.trace.v1.Span.Link.encode(message.links[i], writer.uint32( + /* id 13, wireType 2 =*/ + 106 + ).fork()).ldelim(); + if (message.droppedLinksCount != null && Object.hasOwnProperty.call(message, "droppedLinksCount")) + writer.uint32( + /* id 14, wireType 0 =*/ + 112 + ).uint32(message.droppedLinksCount); + if (message.status != null && Object.hasOwnProperty.call(message, "status")) + $root.opentelemetry.proto.trace.v1.Status.encode(message.status, writer.uint32( + /* id 15, wireType 2 =*/ + 122 + ).fork()).ldelim(); + return writer; + }; + Span.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Span.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.Span(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.traceId = reader.bytes(); + break; + } + case 2: { + message.spanId = reader.bytes(); + break; + } + case 3: { + message.traceState = reader.string(); + break; + } + case 4: { + message.parentSpanId = reader.bytes(); + break; + } + case 5: { + message.name = reader.string(); + break; + } + case 6: { + message.kind = reader.int32(); + break; + } + case 7: { + message.startTimeUnixNano = reader.fixed64(); + break; + } + case 8: { + message.endTimeUnixNano = reader.fixed64(); + break; + } + case 9: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 10: { + message.droppedAttributesCount = reader.uint32(); + break; + } + case 11: { + if (!(message.events && message.events.length)) + message.events = []; + message.events.push($root.opentelemetry.proto.trace.v1.Span.Event.decode(reader, reader.uint32())); + break; + } + case 12: { + message.droppedEventsCount = reader.uint32(); + break; + } + case 13: { + if (!(message.links && message.links.length)) + message.links = []; + message.links.push($root.opentelemetry.proto.trace.v1.Span.Link.decode(reader, reader.uint32())); + break; + } + case 14: { + message.droppedLinksCount = reader.uint32(); + break; + } + case 15: { + message.status = $root.opentelemetry.proto.trace.v1.Status.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Span.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Span.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.traceId != null && message.hasOwnProperty("traceId")) { + if (!(message.traceId && typeof message.traceId.length === "number" || $util.isString(message.traceId))) + return "traceId: buffer expected"; + } + if (message.spanId != null && message.hasOwnProperty("spanId")) { + if (!(message.spanId && typeof message.spanId.length === "number" || $util.isString(message.spanId))) + return "spanId: buffer expected"; + } + if (message.traceState != null && message.hasOwnProperty("traceState")) { + if (!$util.isString(message.traceState)) + return "traceState: string expected"; + } + if (message.parentSpanId != null && message.hasOwnProperty("parentSpanId")) { + if (!(message.parentSpanId && typeof message.parentSpanId.length === "number" || $util.isString(message.parentSpanId))) + return "parentSpanId: buffer expected"; + } + if (message.name != null && message.hasOwnProperty("name")) { + if (!$util.isString(message.name)) + return "name: string expected"; + } + if (message.kind != null && message.hasOwnProperty("kind")) + switch (message.kind) { + default: + return "kind: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + break; + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) { + if (!$util.isInteger(message.startTimeUnixNano) && !(message.startTimeUnixNano && $util.isInteger(message.startTimeUnixNano.low) && $util.isInteger(message.startTimeUnixNano.high))) + return "startTimeUnixNano: integer|Long expected"; + } + if (message.endTimeUnixNano != null && message.hasOwnProperty("endTimeUnixNano")) { + if (!$util.isInteger(message.endTimeUnixNano) && !(message.endTimeUnixNano && $util.isInteger(message.endTimeUnixNano.low) && $util.isInteger(message.endTimeUnixNano.high))) + return "endTimeUnixNano: integer|Long expected"; + } + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + if (message.events != null && message.hasOwnProperty("events")) { + if (!Array.isArray(message.events)) + return "events: array expected"; + for (var i = 0; i < message.events.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.Span.Event.verify(message.events[i]); + if (error) + return "events." + error; + } + } + if (message.droppedEventsCount != null && message.hasOwnProperty("droppedEventsCount")) { + if (!$util.isInteger(message.droppedEventsCount)) + return "droppedEventsCount: integer expected"; + } + if (message.links != null && message.hasOwnProperty("links")) { + if (!Array.isArray(message.links)) + return "links: array expected"; + for (var i = 0; i < message.links.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.Span.Link.verify(message.links[i]); + if (error) + return "links." + error; + } + } + if (message.droppedLinksCount != null && message.hasOwnProperty("droppedLinksCount")) { + if (!$util.isInteger(message.droppedLinksCount)) + return "droppedLinksCount: integer expected"; + } + if (message.status != null && message.hasOwnProperty("status")) { + var error = $root.opentelemetry.proto.trace.v1.Status.verify(message.status); + if (error) + return "status." + error; + } + return null; + }; + Span.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.Span) + return object; + var message = new $root.opentelemetry.proto.trace.v1.Span(); + if (object.traceId != null) { + if (typeof object.traceId === "string") + $util.base64.decode(object.traceId, message.traceId = $util.newBuffer($util.base64.length(object.traceId)), 0); + else if (object.traceId.length >= 0) + message.traceId = object.traceId; + } + if (object.spanId != null) { + if (typeof object.spanId === "string") + $util.base64.decode(object.spanId, message.spanId = $util.newBuffer($util.base64.length(object.spanId)), 0); + else if (object.spanId.length >= 0) + message.spanId = object.spanId; + } + if (object.traceState != null) + message.traceState = String(object.traceState); + if (object.parentSpanId != null) { + if (typeof object.parentSpanId === "string") + $util.base64.decode(object.parentSpanId, message.parentSpanId = $util.newBuffer($util.base64.length(object.parentSpanId)), 0); + else if (object.parentSpanId.length >= 0) + message.parentSpanId = object.parentSpanId; + } + if (object.name != null) + message.name = String(object.name); + switch (object.kind) { + default: + if (typeof object.kind === "number") { + message.kind = object.kind; + break; + } + break; + case "SPAN_KIND_UNSPECIFIED": + case 0: + message.kind = 0; + break; + case "SPAN_KIND_INTERNAL": + case 1: + message.kind = 1; + break; + case "SPAN_KIND_SERVER": + case 2: + message.kind = 2; + break; + case "SPAN_KIND_CLIENT": + case 3: + message.kind = 3; + break; + case "SPAN_KIND_PRODUCER": + case 4: + message.kind = 4; + break; + case "SPAN_KIND_CONSUMER": + case 5: + message.kind = 5; + break; + } + if (object.startTimeUnixNano != null) { + if ($util.Long) + (message.startTimeUnixNano = $util.Long.fromValue(object.startTimeUnixNano)).unsigned = false; + else if (typeof object.startTimeUnixNano === "string") + message.startTimeUnixNano = parseInt(object.startTimeUnixNano, 10); + else if (typeof object.startTimeUnixNano === "number") + message.startTimeUnixNano = object.startTimeUnixNano; + else if (typeof object.startTimeUnixNano === "object") + message.startTimeUnixNano = new $util.LongBits(object.startTimeUnixNano.low >>> 0, object.startTimeUnixNano.high >>> 0).toNumber(); + } + if (object.endTimeUnixNano != null) { + if ($util.Long) + (message.endTimeUnixNano = $util.Long.fromValue(object.endTimeUnixNano)).unsigned = false; + else if (typeof object.endTimeUnixNano === "string") + message.endTimeUnixNano = parseInt(object.endTimeUnixNano, 10); + else if (typeof object.endTimeUnixNano === "number") + message.endTimeUnixNano = object.endTimeUnixNano; + else if (typeof object.endTimeUnixNano === "object") + message.endTimeUnixNano = new $util.LongBits(object.endTimeUnixNano.low >>> 0, object.endTimeUnixNano.high >>> 0).toNumber(); + } + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.trace.v1.Span.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + if (object.events) { + if (!Array.isArray(object.events)) + throw TypeError(".opentelemetry.proto.trace.v1.Span.events: array expected"); + message.events = []; + for (var i = 0; i < object.events.length; ++i) { + if (typeof object.events[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.events: object expected"); + message.events[i] = $root.opentelemetry.proto.trace.v1.Span.Event.fromObject(object.events[i]); + } + } + if (object.droppedEventsCount != null) + message.droppedEventsCount = object.droppedEventsCount >>> 0; + if (object.links) { + if (!Array.isArray(object.links)) + throw TypeError(".opentelemetry.proto.trace.v1.Span.links: array expected"); + message.links = []; + for (var i = 0; i < object.links.length; ++i) { + if (typeof object.links[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.links: object expected"); + message.links[i] = $root.opentelemetry.proto.trace.v1.Span.Link.fromObject(object.links[i]); + } + } + if (object.droppedLinksCount != null) + message.droppedLinksCount = object.droppedLinksCount >>> 0; + if (object.status != null) { + if (typeof object.status !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.status: object expected"); + message.status = $root.opentelemetry.proto.trace.v1.Status.fromObject(object.status); + } + return message; + }; + Span.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) { + object.attributes = []; + object.events = []; + object.links = []; + } + if (options2.defaults) { + if (options2.bytes === String) + object.traceId = ""; + else { + object.traceId = []; + if (options2.bytes !== Array) + object.traceId = $util.newBuffer(object.traceId); + } + if (options2.bytes === String) + object.spanId = ""; + else { + object.spanId = []; + if (options2.bytes !== Array) + object.spanId = $util.newBuffer(object.spanId); + } + object.traceState = ""; + if (options2.bytes === String) + object.parentSpanId = ""; + else { + object.parentSpanId = []; + if (options2.bytes !== Array) + object.parentSpanId = $util.newBuffer(object.parentSpanId); + } + object.name = ""; + object.kind = options2.enums === String ? "SPAN_KIND_UNSPECIFIED" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.startTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.startTimeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.endTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.endTimeUnixNano = options2.longs === String ? "0" : 0; + object.droppedAttributesCount = 0; + object.droppedEventsCount = 0; + object.droppedLinksCount = 0; + object.status = null; + } + if (message.traceId != null && message.hasOwnProperty("traceId")) + object.traceId = options2.bytes === String ? $util.base64.encode(message.traceId, 0, message.traceId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.traceId) : message.traceId; + if (message.spanId != null && message.hasOwnProperty("spanId")) + object.spanId = options2.bytes === String ? $util.base64.encode(message.spanId, 0, message.spanId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.spanId) : message.spanId; + if (message.traceState != null && message.hasOwnProperty("traceState")) + object.traceState = message.traceState; + if (message.parentSpanId != null && message.hasOwnProperty("parentSpanId")) + object.parentSpanId = options2.bytes === String ? $util.base64.encode(message.parentSpanId, 0, message.parentSpanId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.parentSpanId) : message.parentSpanId; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = options2.enums === String ? $root.opentelemetry.proto.trace.v1.Span.SpanKind[message.kind] === void 0 ? message.kind : $root.opentelemetry.proto.trace.v1.Span.SpanKind[message.kind] : message.kind; + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) + if (typeof message.startTimeUnixNano === "number") + object.startTimeUnixNano = options2.longs === String ? String(message.startTimeUnixNano) : message.startTimeUnixNano; + else + object.startTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.startTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.startTimeUnixNano.low >>> 0, message.startTimeUnixNano.high >>> 0).toNumber() : message.startTimeUnixNano; + if (message.endTimeUnixNano != null && message.hasOwnProperty("endTimeUnixNano")) + if (typeof message.endTimeUnixNano === "number") + object.endTimeUnixNano = options2.longs === String ? String(message.endTimeUnixNano) : message.endTimeUnixNano; + else + object.endTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.endTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.endTimeUnixNano.low >>> 0, message.endTimeUnixNano.high >>> 0).toNumber() : message.endTimeUnixNano; + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + if (message.events && message.events.length) { + object.events = []; + for (var j = 0; j < message.events.length; ++j) + object.events[j] = $root.opentelemetry.proto.trace.v1.Span.Event.toObject(message.events[j], options2); + } + if (message.droppedEventsCount != null && message.hasOwnProperty("droppedEventsCount")) + object.droppedEventsCount = message.droppedEventsCount; + if (message.links && message.links.length) { + object.links = []; + for (var j = 0; j < message.links.length; ++j) + object.links[j] = $root.opentelemetry.proto.trace.v1.Span.Link.toObject(message.links[j], options2); + } + if (message.droppedLinksCount != null && message.hasOwnProperty("droppedLinksCount")) + object.droppedLinksCount = message.droppedLinksCount; + if (message.status != null && message.hasOwnProperty("status")) + object.status = $root.opentelemetry.proto.trace.v1.Status.toObject(message.status, options2); + return object; + }; + Span.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Span.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.Span"; + }; + Span.SpanKind = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SPAN_KIND_UNSPECIFIED"] = 0; + values[valuesById[1] = "SPAN_KIND_INTERNAL"] = 1; + values[valuesById[2] = "SPAN_KIND_SERVER"] = 2; + values[valuesById[3] = "SPAN_KIND_CLIENT"] = 3; + values[valuesById[4] = "SPAN_KIND_PRODUCER"] = 4; + values[valuesById[5] = "SPAN_KIND_CONSUMER"] = 5; + return values; + }(); + Span.Event = function() { + function Event2(properties2) { + this.attributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Event2.prototype.timeUnixNano = null; + Event2.prototype.name = null; + Event2.prototype.attributes = $util.emptyArray; + Event2.prototype.droppedAttributesCount = null; + Event2.create = function create2(properties2) { + return new Event2(properties2); + }; + Event2.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 1, wireType 1 =*/ + 9 + ).fixed64(message.timeUnixNano); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.name); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 4, wireType 0 =*/ + 32 + ).uint32(message.droppedAttributesCount); + return writer; + }; + Event2.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Event2.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.Span.Event(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 2: { + message.name = reader.string(); + break; + } + case 3: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 4: { + message.droppedAttributesCount = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Event2.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Event2.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.name != null && message.hasOwnProperty("name")) { + if (!$util.isString(message.name)) + return "name: string expected"; + } + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + return null; + }; + Event2.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.Span.Event) + return object; + var message = new $root.opentelemetry.proto.trace.v1.Span.Event(); + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.name != null) + message.name = String(object.name); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.trace.v1.Span.Event.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.Event.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + return message; + }; + Event2.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.attributes = []; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + object.name = ""; + object.droppedAttributesCount = 0; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + return object; + }; + Event2.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Event2.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.Span.Event"; + }; + return Event2; + }(); + Span.Link = function() { + function Link(properties2) { + this.attributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Link.prototype.traceId = null; + Link.prototype.spanId = null; + Link.prototype.traceState = null; + Link.prototype.attributes = $util.emptyArray; + Link.prototype.droppedAttributesCount = null; + Link.create = function create2(properties2) { + return new Link(properties2); + }; + Link.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.traceId != null && Object.hasOwnProperty.call(message, "traceId")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).bytes(message.traceId); + if (message.spanId != null && Object.hasOwnProperty.call(message, "spanId")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).bytes(message.spanId); + if (message.traceState != null && Object.hasOwnProperty.call(message, "traceState")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.traceState); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 4, wireType 2 =*/ + 34 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 5, wireType 0 =*/ + 40 + ).uint32(message.droppedAttributesCount); + return writer; + }; + Link.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Link.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.Span.Link(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.traceId = reader.bytes(); + break; + } + case 2: { + message.spanId = reader.bytes(); + break; + } + case 3: { + message.traceState = reader.string(); + break; + } + case 4: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 5: { + message.droppedAttributesCount = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Link.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Link.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.traceId != null && message.hasOwnProperty("traceId")) { + if (!(message.traceId && typeof message.traceId.length === "number" || $util.isString(message.traceId))) + return "traceId: buffer expected"; + } + if (message.spanId != null && message.hasOwnProperty("spanId")) { + if (!(message.spanId && typeof message.spanId.length === "number" || $util.isString(message.spanId))) + return "spanId: buffer expected"; + } + if (message.traceState != null && message.hasOwnProperty("traceState")) { + if (!$util.isString(message.traceState)) + return "traceState: string expected"; + } + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + return null; + }; + Link.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.Span.Link) + return object; + var message = new $root.opentelemetry.proto.trace.v1.Span.Link(); + if (object.traceId != null) { + if (typeof object.traceId === "string") + $util.base64.decode(object.traceId, message.traceId = $util.newBuffer($util.base64.length(object.traceId)), 0); + else if (object.traceId.length >= 0) + message.traceId = object.traceId; + } + if (object.spanId != null) { + if (typeof object.spanId === "string") + $util.base64.decode(object.spanId, message.spanId = $util.newBuffer($util.base64.length(object.spanId)), 0); + else if (object.spanId.length >= 0) + message.spanId = object.spanId; + } + if (object.traceState != null) + message.traceState = String(object.traceState); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.trace.v1.Span.Link.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.trace.v1.Span.Link.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + return message; + }; + Link.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.attributes = []; + if (options2.defaults) { + if (options2.bytes === String) + object.traceId = ""; + else { + object.traceId = []; + if (options2.bytes !== Array) + object.traceId = $util.newBuffer(object.traceId); + } + if (options2.bytes === String) + object.spanId = ""; + else { + object.spanId = []; + if (options2.bytes !== Array) + object.spanId = $util.newBuffer(object.spanId); + } + object.traceState = ""; + object.droppedAttributesCount = 0; + } + if (message.traceId != null && message.hasOwnProperty("traceId")) + object.traceId = options2.bytes === String ? $util.base64.encode(message.traceId, 0, message.traceId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.traceId) : message.traceId; + if (message.spanId != null && message.hasOwnProperty("spanId")) + object.spanId = options2.bytes === String ? $util.base64.encode(message.spanId, 0, message.spanId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.spanId) : message.spanId; + if (message.traceState != null && message.hasOwnProperty("traceState")) + object.traceState = message.traceState; + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + return object; + }; + Link.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Link.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.Span.Link"; + }; + return Link; + }(); + return Span; + }(); + v1.Status = function() { + function Status(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Status.prototype.message = null; + Status.prototype.code = null; + Status.create = function create2(properties2) { + return new Status(properties2); + }; + Status.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.message != null && Object.hasOwnProperty.call(message, "message")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.message); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32( + /* id 3, wireType 0 =*/ + 24 + ).int32(message.code); + return writer; + }; + Status.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Status.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.trace.v1.Status(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: { + message.message = reader.string(); + break; + } + case 3: { + message.code = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Status.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Status.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.message != null && message.hasOwnProperty("message")) { + if (!$util.isString(message.message)) + return "message: string expected"; + } + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + Status.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.trace.v1.Status) + return object; + var message = new $root.opentelemetry.proto.trace.v1.Status(); + if (object.message != null) + message.message = String(object.message); + switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; + case "STATUS_CODE_UNSET": + case 0: + message.code = 0; + break; + case "STATUS_CODE_OK": + case 1: + message.code = 1; + break; + case "STATUS_CODE_ERROR": + case 2: + message.code = 2; + break; + } + return message; + }; + Status.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + object.message = ""; + object.code = options2.enums === String ? "STATUS_CODE_UNSET" : 0; + } + if (message.message != null && message.hasOwnProperty("message")) + object.message = message.message; + if (message.code != null && message.hasOwnProperty("code")) + object.code = options2.enums === String ? $root.opentelemetry.proto.trace.v1.Status.StatusCode[message.code] === void 0 ? message.code : $root.opentelemetry.proto.trace.v1.Status.StatusCode[message.code] : message.code; + return object; + }; + Status.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Status.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.trace.v1.Status"; + }; + Status.StatusCode = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STATUS_CODE_UNSET"] = 0; + values[valuesById[1] = "STATUS_CODE_OK"] = 1; + values[valuesById[2] = "STATUS_CODE_ERROR"] = 2; + return values; + }(); + return Status; + }(); + return v1; + }(); + return trace; + }(); + proto.collector = function() { + var collector = {}; + collector.trace = function() { + var trace = {}; + trace.v1 = function() { + var v1 = {}; + v1.TraceService = function() { + function TraceService(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + (TraceService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = TraceService; + TraceService.create = function create2(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + Object.defineProperty(TraceService.prototype["export"] = function export_(request, callback) { + return this.rpcCall(export_, $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest, $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse, request, callback); + }, "name", { value: "Export" }); + return TraceService; + }(); + v1.ExportTraceServiceRequest = function() { + function ExportTraceServiceRequest(properties2) { + this.resourceSpans = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportTraceServiceRequest.prototype.resourceSpans = $util.emptyArray; + ExportTraceServiceRequest.create = function create2(properties2) { + return new ExportTraceServiceRequest(properties2); + }; + ExportTraceServiceRequest.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceSpans != null && message.resourceSpans.length) + for (var i = 0; i < message.resourceSpans.length; ++i) + $root.opentelemetry.proto.trace.v1.ResourceSpans.encode(message.resourceSpans[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportTraceServiceRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportTraceServiceRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceSpans && message.resourceSpans.length)) + message.resourceSpans = []; + message.resourceSpans.push($root.opentelemetry.proto.trace.v1.ResourceSpans.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportTraceServiceRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportTraceServiceRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceSpans != null && message.hasOwnProperty("resourceSpans")) { + if (!Array.isArray(message.resourceSpans)) + return "resourceSpans: array expected"; + for (var i = 0; i < message.resourceSpans.length; ++i) { + var error = $root.opentelemetry.proto.trace.v1.ResourceSpans.verify(message.resourceSpans[i]); + if (error) + return "resourceSpans." + error; + } + } + return null; + }; + ExportTraceServiceRequest.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest) + return object; + var message = new $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest(); + if (object.resourceSpans) { + if (!Array.isArray(object.resourceSpans)) + throw TypeError(".opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest.resourceSpans: array expected"); + message.resourceSpans = []; + for (var i = 0; i < object.resourceSpans.length; ++i) { + if (typeof object.resourceSpans[i] !== "object") + throw TypeError(".opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest.resourceSpans: object expected"); + message.resourceSpans[i] = $root.opentelemetry.proto.trace.v1.ResourceSpans.fromObject(object.resourceSpans[i]); + } + } + return message; + }; + ExportTraceServiceRequest.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceSpans = []; + if (message.resourceSpans && message.resourceSpans.length) { + object.resourceSpans = []; + for (var j = 0; j < message.resourceSpans.length; ++j) + object.resourceSpans[j] = $root.opentelemetry.proto.trace.v1.ResourceSpans.toObject(message.resourceSpans[j], options2); + } + return object; + }; + ExportTraceServiceRequest.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportTraceServiceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest"; + }; + return ExportTraceServiceRequest; + }(); + v1.ExportTraceServiceResponse = function() { + function ExportTraceServiceResponse(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportTraceServiceResponse.prototype.partialSuccess = null; + ExportTraceServiceResponse.create = function create2(properties2) { + return new ExportTraceServiceResponse(properties2); + }; + ExportTraceServiceResponse.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.partialSuccess != null && Object.hasOwnProperty.call(message, "partialSuccess")) + $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess.encode(message.partialSuccess, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportTraceServiceResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportTraceServiceResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.partialSuccess = $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportTraceServiceResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportTraceServiceResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) { + var error = $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess.verify(message.partialSuccess); + if (error) + return "partialSuccess." + error; + } + return null; + }; + ExportTraceServiceResponse.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse) + return object; + var message = new $root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse(); + if (object.partialSuccess != null) { + if (typeof object.partialSuccess !== "object") + throw TypeError(".opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse.partialSuccess: object expected"); + message.partialSuccess = $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess.fromObject(object.partialSuccess); + } + return message; + }; + ExportTraceServiceResponse.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) + object.partialSuccess = null; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) + object.partialSuccess = $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess.toObject(message.partialSuccess, options2); + return object; + }; + ExportTraceServiceResponse.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportTraceServiceResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse"; + }; + return ExportTraceServiceResponse; + }(); + v1.ExportTracePartialSuccess = function() { + function ExportTracePartialSuccess(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportTracePartialSuccess.prototype.rejectedSpans = null; + ExportTracePartialSuccess.prototype.errorMessage = null; + ExportTracePartialSuccess.create = function create2(properties2) { + return new ExportTracePartialSuccess(properties2); + }; + ExportTracePartialSuccess.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.rejectedSpans != null && Object.hasOwnProperty.call(message, "rejectedSpans")) + writer.uint32( + /* id 1, wireType 0 =*/ + 8 + ).int64(message.rejectedSpans); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.errorMessage); + return writer; + }; + ExportTracePartialSuccess.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportTracePartialSuccess.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.rejectedSpans = reader.int64(); + break; + } + case 2: { + message.errorMessage = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportTracePartialSuccess.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportTracePartialSuccess.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.rejectedSpans != null && message.hasOwnProperty("rejectedSpans")) { + if (!$util.isInteger(message.rejectedSpans) && !(message.rejectedSpans && $util.isInteger(message.rejectedSpans.low) && $util.isInteger(message.rejectedSpans.high))) + return "rejectedSpans: integer|Long expected"; + } + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) { + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + } + return null; + }; + ExportTracePartialSuccess.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess) + return object; + var message = new $root.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess(); + if (object.rejectedSpans != null) { + if ($util.Long) + (message.rejectedSpans = $util.Long.fromValue(object.rejectedSpans)).unsigned = false; + else if (typeof object.rejectedSpans === "string") + message.rejectedSpans = parseInt(object.rejectedSpans, 10); + else if (typeof object.rejectedSpans === "number") + message.rejectedSpans = object.rejectedSpans; + else if (typeof object.rejectedSpans === "object") + message.rejectedSpans = new $util.LongBits(object.rejectedSpans.low >>> 0, object.rejectedSpans.high >>> 0).toNumber(); + } + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + return message; + }; + ExportTracePartialSuccess.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.rejectedSpans = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.rejectedSpans = options2.longs === String ? "0" : 0; + object.errorMessage = ""; + } + if (message.rejectedSpans != null && message.hasOwnProperty("rejectedSpans")) + if (typeof message.rejectedSpans === "number") + object.rejectedSpans = options2.longs === String ? String(message.rejectedSpans) : message.rejectedSpans; + else + object.rejectedSpans = options2.longs === String ? $util.Long.prototype.toString.call(message.rejectedSpans) : options2.longs === Number ? new $util.LongBits(message.rejectedSpans.low >>> 0, message.rejectedSpans.high >>> 0).toNumber() : message.rejectedSpans; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + return object; + }; + ExportTracePartialSuccess.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportTracePartialSuccess.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess"; + }; + return ExportTracePartialSuccess; + }(); + return v1; + }(); + return trace; + }(); + collector.metrics = function() { + var metrics = {}; + metrics.v1 = function() { + var v1 = {}; + v1.MetricsService = function() { + function MetricsService(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + (MetricsService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = MetricsService; + MetricsService.create = function create2(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + Object.defineProperty(MetricsService.prototype["export"] = function export_(request, callback) { + return this.rpcCall(export_, $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest, $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse, request, callback); + }, "name", { value: "Export" }); + return MetricsService; + }(); + v1.ExportMetricsServiceRequest = function() { + function ExportMetricsServiceRequest(properties2) { + this.resourceMetrics = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportMetricsServiceRequest.prototype.resourceMetrics = $util.emptyArray; + ExportMetricsServiceRequest.create = function create2(properties2) { + return new ExportMetricsServiceRequest(properties2); + }; + ExportMetricsServiceRequest.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceMetrics != null && message.resourceMetrics.length) + for (var i = 0; i < message.resourceMetrics.length; ++i) + $root.opentelemetry.proto.metrics.v1.ResourceMetrics.encode(message.resourceMetrics[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportMetricsServiceRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportMetricsServiceRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceMetrics && message.resourceMetrics.length)) + message.resourceMetrics = []; + message.resourceMetrics.push($root.opentelemetry.proto.metrics.v1.ResourceMetrics.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportMetricsServiceRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportMetricsServiceRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceMetrics != null && message.hasOwnProperty("resourceMetrics")) { + if (!Array.isArray(message.resourceMetrics)) + return "resourceMetrics: array expected"; + for (var i = 0; i < message.resourceMetrics.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.verify(message.resourceMetrics[i]); + if (error) + return "resourceMetrics." + error; + } + } + return null; + }; + ExportMetricsServiceRequest.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest) + return object; + var message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest(); + if (object.resourceMetrics) { + if (!Array.isArray(object.resourceMetrics)) + throw TypeError(".opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest.resourceMetrics: array expected"); + message.resourceMetrics = []; + for (var i = 0; i < object.resourceMetrics.length; ++i) { + if (typeof object.resourceMetrics[i] !== "object") + throw TypeError(".opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest.resourceMetrics: object expected"); + message.resourceMetrics[i] = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.fromObject(object.resourceMetrics[i]); + } + } + return message; + }; + ExportMetricsServiceRequest.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceMetrics = []; + if (message.resourceMetrics && message.resourceMetrics.length) { + object.resourceMetrics = []; + for (var j = 0; j < message.resourceMetrics.length; ++j) + object.resourceMetrics[j] = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.toObject(message.resourceMetrics[j], options2); + } + return object; + }; + ExportMetricsServiceRequest.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportMetricsServiceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest"; + }; + return ExportMetricsServiceRequest; + }(); + v1.ExportMetricsServiceResponse = function() { + function ExportMetricsServiceResponse(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportMetricsServiceResponse.prototype.partialSuccess = null; + ExportMetricsServiceResponse.create = function create2(properties2) { + return new ExportMetricsServiceResponse(properties2); + }; + ExportMetricsServiceResponse.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.partialSuccess != null && Object.hasOwnProperty.call(message, "partialSuccess")) + $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess.encode(message.partialSuccess, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportMetricsServiceResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportMetricsServiceResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.partialSuccess = $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportMetricsServiceResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportMetricsServiceResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) { + var error = $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess.verify(message.partialSuccess); + if (error) + return "partialSuccess." + error; + } + return null; + }; + ExportMetricsServiceResponse.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse) + return object; + var message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse(); + if (object.partialSuccess != null) { + if (typeof object.partialSuccess !== "object") + throw TypeError(".opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse.partialSuccess: object expected"); + message.partialSuccess = $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess.fromObject(object.partialSuccess); + } + return message; + }; + ExportMetricsServiceResponse.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) + object.partialSuccess = null; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) + object.partialSuccess = $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess.toObject(message.partialSuccess, options2); + return object; + }; + ExportMetricsServiceResponse.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportMetricsServiceResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse"; + }; + return ExportMetricsServiceResponse; + }(); + v1.ExportMetricsPartialSuccess = function() { + function ExportMetricsPartialSuccess(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportMetricsPartialSuccess.prototype.rejectedDataPoints = null; + ExportMetricsPartialSuccess.prototype.errorMessage = null; + ExportMetricsPartialSuccess.create = function create2(properties2) { + return new ExportMetricsPartialSuccess(properties2); + }; + ExportMetricsPartialSuccess.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.rejectedDataPoints != null && Object.hasOwnProperty.call(message, "rejectedDataPoints")) + writer.uint32( + /* id 1, wireType 0 =*/ + 8 + ).int64(message.rejectedDataPoints); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.errorMessage); + return writer; + }; + ExportMetricsPartialSuccess.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportMetricsPartialSuccess.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.rejectedDataPoints = reader.int64(); + break; + } + case 2: { + message.errorMessage = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportMetricsPartialSuccess.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportMetricsPartialSuccess.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.rejectedDataPoints != null && message.hasOwnProperty("rejectedDataPoints")) { + if (!$util.isInteger(message.rejectedDataPoints) && !(message.rejectedDataPoints && $util.isInteger(message.rejectedDataPoints.low) && $util.isInteger(message.rejectedDataPoints.high))) + return "rejectedDataPoints: integer|Long expected"; + } + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) { + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + } + return null; + }; + ExportMetricsPartialSuccess.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess) + return object; + var message = new $root.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess(); + if (object.rejectedDataPoints != null) { + if ($util.Long) + (message.rejectedDataPoints = $util.Long.fromValue(object.rejectedDataPoints)).unsigned = false; + else if (typeof object.rejectedDataPoints === "string") + message.rejectedDataPoints = parseInt(object.rejectedDataPoints, 10); + else if (typeof object.rejectedDataPoints === "number") + message.rejectedDataPoints = object.rejectedDataPoints; + else if (typeof object.rejectedDataPoints === "object") + message.rejectedDataPoints = new $util.LongBits(object.rejectedDataPoints.low >>> 0, object.rejectedDataPoints.high >>> 0).toNumber(); + } + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + return message; + }; + ExportMetricsPartialSuccess.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.rejectedDataPoints = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.rejectedDataPoints = options2.longs === String ? "0" : 0; + object.errorMessage = ""; + } + if (message.rejectedDataPoints != null && message.hasOwnProperty("rejectedDataPoints")) + if (typeof message.rejectedDataPoints === "number") + object.rejectedDataPoints = options2.longs === String ? String(message.rejectedDataPoints) : message.rejectedDataPoints; + else + object.rejectedDataPoints = options2.longs === String ? $util.Long.prototype.toString.call(message.rejectedDataPoints) : options2.longs === Number ? new $util.LongBits(message.rejectedDataPoints.low >>> 0, message.rejectedDataPoints.high >>> 0).toNumber() : message.rejectedDataPoints; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + return object; + }; + ExportMetricsPartialSuccess.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportMetricsPartialSuccess.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess"; + }; + return ExportMetricsPartialSuccess; + }(); + return v1; + }(); + return metrics; + }(); + collector.logs = function() { + var logs = {}; + logs.v1 = function() { + var v1 = {}; + v1.LogsService = function() { + function LogsService(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + (LogsService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = LogsService; + LogsService.create = function create2(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + Object.defineProperty(LogsService.prototype["export"] = function export_(request, callback) { + return this.rpcCall(export_, $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest, $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse, request, callback); + }, "name", { value: "Export" }); + return LogsService; + }(); + v1.ExportLogsServiceRequest = function() { + function ExportLogsServiceRequest(properties2) { + this.resourceLogs = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportLogsServiceRequest.prototype.resourceLogs = $util.emptyArray; + ExportLogsServiceRequest.create = function create2(properties2) { + return new ExportLogsServiceRequest(properties2); + }; + ExportLogsServiceRequest.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLogs != null && message.resourceLogs.length) + for (var i = 0; i < message.resourceLogs.length; ++i) + $root.opentelemetry.proto.logs.v1.ResourceLogs.encode(message.resourceLogs[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportLogsServiceRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportLogsServiceRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceLogs && message.resourceLogs.length)) + message.resourceLogs = []; + message.resourceLogs.push($root.opentelemetry.proto.logs.v1.ResourceLogs.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportLogsServiceRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportLogsServiceRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLogs != null && message.hasOwnProperty("resourceLogs")) { + if (!Array.isArray(message.resourceLogs)) + return "resourceLogs: array expected"; + for (var i = 0; i < message.resourceLogs.length; ++i) { + var error = $root.opentelemetry.proto.logs.v1.ResourceLogs.verify(message.resourceLogs[i]); + if (error) + return "resourceLogs." + error; + } + } + return null; + }; + ExportLogsServiceRequest.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest) + return object; + var message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest(); + if (object.resourceLogs) { + if (!Array.isArray(object.resourceLogs)) + throw TypeError(".opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest.resourceLogs: array expected"); + message.resourceLogs = []; + for (var i = 0; i < object.resourceLogs.length; ++i) { + if (typeof object.resourceLogs[i] !== "object") + throw TypeError(".opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest.resourceLogs: object expected"); + message.resourceLogs[i] = $root.opentelemetry.proto.logs.v1.ResourceLogs.fromObject(object.resourceLogs[i]); + } + } + return message; + }; + ExportLogsServiceRequest.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceLogs = []; + if (message.resourceLogs && message.resourceLogs.length) { + object.resourceLogs = []; + for (var j = 0; j < message.resourceLogs.length; ++j) + object.resourceLogs[j] = $root.opentelemetry.proto.logs.v1.ResourceLogs.toObject(message.resourceLogs[j], options2); + } + return object; + }; + ExportLogsServiceRequest.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportLogsServiceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest"; + }; + return ExportLogsServiceRequest; + }(); + v1.ExportLogsServiceResponse = function() { + function ExportLogsServiceResponse(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportLogsServiceResponse.prototype.partialSuccess = null; + ExportLogsServiceResponse.create = function create2(properties2) { + return new ExportLogsServiceResponse(properties2); + }; + ExportLogsServiceResponse.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.partialSuccess != null && Object.hasOwnProperty.call(message, "partialSuccess")) + $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess.encode(message.partialSuccess, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + ExportLogsServiceResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportLogsServiceResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.partialSuccess = $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportLogsServiceResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportLogsServiceResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) { + var error = $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess.verify(message.partialSuccess); + if (error) + return "partialSuccess." + error; + } + return null; + }; + ExportLogsServiceResponse.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse) + return object; + var message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse(); + if (object.partialSuccess != null) { + if (typeof object.partialSuccess !== "object") + throw TypeError(".opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse.partialSuccess: object expected"); + message.partialSuccess = $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess.fromObject(object.partialSuccess); + } + return message; + }; + ExportLogsServiceResponse.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) + object.partialSuccess = null; + if (message.partialSuccess != null && message.hasOwnProperty("partialSuccess")) + object.partialSuccess = $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess.toObject(message.partialSuccess, options2); + return object; + }; + ExportLogsServiceResponse.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportLogsServiceResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse"; + }; + return ExportLogsServiceResponse; + }(); + v1.ExportLogsPartialSuccess = function() { + function ExportLogsPartialSuccess(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExportLogsPartialSuccess.prototype.rejectedLogRecords = null; + ExportLogsPartialSuccess.prototype.errorMessage = null; + ExportLogsPartialSuccess.create = function create2(properties2) { + return new ExportLogsPartialSuccess(properties2); + }; + ExportLogsPartialSuccess.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.rejectedLogRecords != null && Object.hasOwnProperty.call(message, "rejectedLogRecords")) + writer.uint32( + /* id 1, wireType 0 =*/ + 8 + ).int64(message.rejectedLogRecords); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.errorMessage); + return writer; + }; + ExportLogsPartialSuccess.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExportLogsPartialSuccess.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.rejectedLogRecords = reader.int64(); + break; + } + case 2: { + message.errorMessage = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExportLogsPartialSuccess.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExportLogsPartialSuccess.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.rejectedLogRecords != null && message.hasOwnProperty("rejectedLogRecords")) { + if (!$util.isInteger(message.rejectedLogRecords) && !(message.rejectedLogRecords && $util.isInteger(message.rejectedLogRecords.low) && $util.isInteger(message.rejectedLogRecords.high))) + return "rejectedLogRecords: integer|Long expected"; + } + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) { + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + } + return null; + }; + ExportLogsPartialSuccess.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess) + return object; + var message = new $root.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess(); + if (object.rejectedLogRecords != null) { + if ($util.Long) + (message.rejectedLogRecords = $util.Long.fromValue(object.rejectedLogRecords)).unsigned = false; + else if (typeof object.rejectedLogRecords === "string") + message.rejectedLogRecords = parseInt(object.rejectedLogRecords, 10); + else if (typeof object.rejectedLogRecords === "number") + message.rejectedLogRecords = object.rejectedLogRecords; + else if (typeof object.rejectedLogRecords === "object") + message.rejectedLogRecords = new $util.LongBits(object.rejectedLogRecords.low >>> 0, object.rejectedLogRecords.high >>> 0).toNumber(); + } + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + return message; + }; + ExportLogsPartialSuccess.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.rejectedLogRecords = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.rejectedLogRecords = options2.longs === String ? "0" : 0; + object.errorMessage = ""; + } + if (message.rejectedLogRecords != null && message.hasOwnProperty("rejectedLogRecords")) + if (typeof message.rejectedLogRecords === "number") + object.rejectedLogRecords = options2.longs === String ? String(message.rejectedLogRecords) : message.rejectedLogRecords; + else + object.rejectedLogRecords = options2.longs === String ? $util.Long.prototype.toString.call(message.rejectedLogRecords) : options2.longs === Number ? new $util.LongBits(message.rejectedLogRecords.low >>> 0, message.rejectedLogRecords.high >>> 0).toNumber() : message.rejectedLogRecords; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + return object; + }; + ExportLogsPartialSuccess.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExportLogsPartialSuccess.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess"; + }; + return ExportLogsPartialSuccess; + }(); + return v1; + }(); + return logs; + }(); + return collector; + }(); + proto.metrics = function() { + var metrics = {}; + metrics.v1 = function() { + var v1 = {}; + v1.MetricsData = function() { + function MetricsData(properties2) { + this.resourceMetrics = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + MetricsData.prototype.resourceMetrics = $util.emptyArray; + MetricsData.create = function create2(properties2) { + return new MetricsData(properties2); + }; + MetricsData.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceMetrics != null && message.resourceMetrics.length) + for (var i = 0; i < message.resourceMetrics.length; ++i) + $root.opentelemetry.proto.metrics.v1.ResourceMetrics.encode(message.resourceMetrics[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + MetricsData.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + MetricsData.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.MetricsData(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceMetrics && message.resourceMetrics.length)) + message.resourceMetrics = []; + message.resourceMetrics.push($root.opentelemetry.proto.metrics.v1.ResourceMetrics.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + MetricsData.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + MetricsData.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceMetrics != null && message.hasOwnProperty("resourceMetrics")) { + if (!Array.isArray(message.resourceMetrics)) + return "resourceMetrics: array expected"; + for (var i = 0; i < message.resourceMetrics.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.verify(message.resourceMetrics[i]); + if (error) + return "resourceMetrics." + error; + } + } + return null; + }; + MetricsData.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.MetricsData) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.MetricsData(); + if (object.resourceMetrics) { + if (!Array.isArray(object.resourceMetrics)) + throw TypeError(".opentelemetry.proto.metrics.v1.MetricsData.resourceMetrics: array expected"); + message.resourceMetrics = []; + for (var i = 0; i < object.resourceMetrics.length; ++i) { + if (typeof object.resourceMetrics[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.MetricsData.resourceMetrics: object expected"); + message.resourceMetrics[i] = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.fromObject(object.resourceMetrics[i]); + } + } + return message; + }; + MetricsData.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceMetrics = []; + if (message.resourceMetrics && message.resourceMetrics.length) { + object.resourceMetrics = []; + for (var j = 0; j < message.resourceMetrics.length; ++j) + object.resourceMetrics[j] = $root.opentelemetry.proto.metrics.v1.ResourceMetrics.toObject(message.resourceMetrics[j], options2); + } + return object; + }; + MetricsData.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + MetricsData.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.MetricsData"; + }; + return MetricsData; + }(); + v1.ResourceMetrics = function() { + function ResourceMetrics(properties2) { + this.scopeMetrics = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ResourceMetrics.prototype.resource = null; + ResourceMetrics.prototype.scopeMetrics = $util.emptyArray; + ResourceMetrics.prototype.schemaUrl = null; + ResourceMetrics.create = function create2(properties2) { + return new ResourceMetrics(properties2); + }; + ResourceMetrics.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.opentelemetry.proto.resource.v1.Resource.encode(message.resource, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.scopeMetrics != null && message.scopeMetrics.length) + for (var i = 0; i < message.scopeMetrics.length; ++i) + $root.opentelemetry.proto.metrics.v1.ScopeMetrics.encode(message.scopeMetrics[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ResourceMetrics.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ResourceMetrics.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.ResourceMetrics(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.resource = $root.opentelemetry.proto.resource.v1.Resource.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.scopeMetrics && message.scopeMetrics.length)) + message.scopeMetrics = []; + message.scopeMetrics.push($root.opentelemetry.proto.metrics.v1.ScopeMetrics.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ResourceMetrics.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ResourceMetrics.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.opentelemetry.proto.resource.v1.Resource.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.scopeMetrics != null && message.hasOwnProperty("scopeMetrics")) { + if (!Array.isArray(message.scopeMetrics)) + return "scopeMetrics: array expected"; + for (var i = 0; i < message.scopeMetrics.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.ScopeMetrics.verify(message.scopeMetrics[i]); + if (error) + return "scopeMetrics." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ResourceMetrics.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.ResourceMetrics) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.ResourceMetrics(); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ResourceMetrics.resource: object expected"); + message.resource = $root.opentelemetry.proto.resource.v1.Resource.fromObject(object.resource); + } + if (object.scopeMetrics) { + if (!Array.isArray(object.scopeMetrics)) + throw TypeError(".opentelemetry.proto.metrics.v1.ResourceMetrics.scopeMetrics: array expected"); + message.scopeMetrics = []; + for (var i = 0; i < object.scopeMetrics.length; ++i) { + if (typeof object.scopeMetrics[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ResourceMetrics.scopeMetrics: object expected"); + message.scopeMetrics[i] = $root.opentelemetry.proto.metrics.v1.ScopeMetrics.fromObject(object.scopeMetrics[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ResourceMetrics.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.scopeMetrics = []; + if (options2.defaults) { + object.resource = null; + object.schemaUrl = ""; + } + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.opentelemetry.proto.resource.v1.Resource.toObject(message.resource, options2); + if (message.scopeMetrics && message.scopeMetrics.length) { + object.scopeMetrics = []; + for (var j = 0; j < message.scopeMetrics.length; ++j) + object.scopeMetrics[j] = $root.opentelemetry.proto.metrics.v1.ScopeMetrics.toObject(message.scopeMetrics[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ResourceMetrics.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ResourceMetrics.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.ResourceMetrics"; + }; + return ResourceMetrics; + }(); + v1.ScopeMetrics = function() { + function ScopeMetrics(properties2) { + this.metrics = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ScopeMetrics.prototype.scope = null; + ScopeMetrics.prototype.metrics = $util.emptyArray; + ScopeMetrics.prototype.schemaUrl = null; + ScopeMetrics.create = function create2(properties2) { + return new ScopeMetrics(properties2); + }; + ScopeMetrics.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.scope != null && Object.hasOwnProperty.call(message, "scope")) + $root.opentelemetry.proto.common.v1.InstrumentationScope.encode(message.scope, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.metrics != null && message.metrics.length) + for (var i = 0; i < message.metrics.length; ++i) + $root.opentelemetry.proto.metrics.v1.Metric.encode(message.metrics[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ScopeMetrics.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ScopeMetrics.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.ScopeMetrics(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.metrics && message.metrics.length)) + message.metrics = []; + message.metrics.push($root.opentelemetry.proto.metrics.v1.Metric.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ScopeMetrics.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ScopeMetrics.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.scope != null && message.hasOwnProperty("scope")) { + var error = $root.opentelemetry.proto.common.v1.InstrumentationScope.verify(message.scope); + if (error) + return "scope." + error; + } + if (message.metrics != null && message.hasOwnProperty("metrics")) { + if (!Array.isArray(message.metrics)) + return "metrics: array expected"; + for (var i = 0; i < message.metrics.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.Metric.verify(message.metrics[i]); + if (error) + return "metrics." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ScopeMetrics.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.ScopeMetrics) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.ScopeMetrics(); + if (object.scope != null) { + if (typeof object.scope !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ScopeMetrics.scope: object expected"); + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.fromObject(object.scope); + } + if (object.metrics) { + if (!Array.isArray(object.metrics)) + throw TypeError(".opentelemetry.proto.metrics.v1.ScopeMetrics.metrics: array expected"); + message.metrics = []; + for (var i = 0; i < object.metrics.length; ++i) { + if (typeof object.metrics[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ScopeMetrics.metrics: object expected"); + message.metrics[i] = $root.opentelemetry.proto.metrics.v1.Metric.fromObject(object.metrics[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ScopeMetrics.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.metrics = []; + if (options2.defaults) { + object.scope = null; + object.schemaUrl = ""; + } + if (message.scope != null && message.hasOwnProperty("scope")) + object.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.toObject(message.scope, options2); + if (message.metrics && message.metrics.length) { + object.metrics = []; + for (var j = 0; j < message.metrics.length; ++j) + object.metrics[j] = $root.opentelemetry.proto.metrics.v1.Metric.toObject(message.metrics[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ScopeMetrics.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ScopeMetrics.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.ScopeMetrics"; + }; + return ScopeMetrics; + }(); + v1.Metric = function() { + function Metric(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Metric.prototype.name = null; + Metric.prototype.description = null; + Metric.prototype.unit = null; + Metric.prototype.gauge = null; + Metric.prototype.sum = null; + Metric.prototype.histogram = null; + Metric.prototype.exponentialHistogram = null; + Metric.prototype.summary = null; + var $oneOfFields; + Object.defineProperty(Metric.prototype, "data", { + get: $util.oneOfGetter($oneOfFields = ["gauge", "sum", "histogram", "exponentialHistogram", "summary"]), + set: $util.oneOfSetter($oneOfFields) + }); + Metric.create = function create2(properties2) { + return new Metric(properties2); + }; + Metric.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).string(message.name); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).string(message.description); + if (message.unit != null && Object.hasOwnProperty.call(message, "unit")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.unit); + if (message.gauge != null && Object.hasOwnProperty.call(message, "gauge")) + $root.opentelemetry.proto.metrics.v1.Gauge.encode(message.gauge, writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).fork()).ldelim(); + if (message.sum != null && Object.hasOwnProperty.call(message, "sum")) + $root.opentelemetry.proto.metrics.v1.Sum.encode(message.sum, writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).fork()).ldelim(); + if (message.histogram != null && Object.hasOwnProperty.call(message, "histogram")) + $root.opentelemetry.proto.metrics.v1.Histogram.encode(message.histogram, writer.uint32( + /* id 9, wireType 2 =*/ + 74 + ).fork()).ldelim(); + if (message.exponentialHistogram != null && Object.hasOwnProperty.call(message, "exponentialHistogram")) + $root.opentelemetry.proto.metrics.v1.ExponentialHistogram.encode(message.exponentialHistogram, writer.uint32( + /* id 10, wireType 2 =*/ + 82 + ).fork()).ldelim(); + if (message.summary != null && Object.hasOwnProperty.call(message, "summary")) + $root.opentelemetry.proto.metrics.v1.Summary.encode(message.summary, writer.uint32( + /* id 11, wireType 2 =*/ + 90 + ).fork()).ldelim(); + return writer; + }; + Metric.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Metric.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Metric(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.description = reader.string(); + break; + } + case 3: { + message.unit = reader.string(); + break; + } + case 5: { + message.gauge = $root.opentelemetry.proto.metrics.v1.Gauge.decode(reader, reader.uint32()); + break; + } + case 7: { + message.sum = $root.opentelemetry.proto.metrics.v1.Sum.decode(reader, reader.uint32()); + break; + } + case 9: { + message.histogram = $root.opentelemetry.proto.metrics.v1.Histogram.decode(reader, reader.uint32()); + break; + } + case 10: { + message.exponentialHistogram = $root.opentelemetry.proto.metrics.v1.ExponentialHistogram.decode(reader, reader.uint32()); + break; + } + case 11: { + message.summary = $root.opentelemetry.proto.metrics.v1.Summary.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Metric.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Metric.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.name != null && message.hasOwnProperty("name")) { + if (!$util.isString(message.name)) + return "name: string expected"; + } + if (message.description != null && message.hasOwnProperty("description")) { + if (!$util.isString(message.description)) + return "description: string expected"; + } + if (message.unit != null && message.hasOwnProperty("unit")) { + if (!$util.isString(message.unit)) + return "unit: string expected"; + } + if (message.gauge != null && message.hasOwnProperty("gauge")) { + properties2.data = 1; + { + var error = $root.opentelemetry.proto.metrics.v1.Gauge.verify(message.gauge); + if (error) + return "gauge." + error; + } + } + if (message.sum != null && message.hasOwnProperty("sum")) { + if (properties2.data === 1) + return "data: multiple values"; + properties2.data = 1; + { + var error = $root.opentelemetry.proto.metrics.v1.Sum.verify(message.sum); + if (error) + return "sum." + error; + } + } + if (message.histogram != null && message.hasOwnProperty("histogram")) { + if (properties2.data === 1) + return "data: multiple values"; + properties2.data = 1; + { + var error = $root.opentelemetry.proto.metrics.v1.Histogram.verify(message.histogram); + if (error) + return "histogram." + error; + } + } + if (message.exponentialHistogram != null && message.hasOwnProperty("exponentialHistogram")) { + if (properties2.data === 1) + return "data: multiple values"; + properties2.data = 1; + { + var error = $root.opentelemetry.proto.metrics.v1.ExponentialHistogram.verify(message.exponentialHistogram); + if (error) + return "exponentialHistogram." + error; + } + } + if (message.summary != null && message.hasOwnProperty("summary")) { + if (properties2.data === 1) + return "data: multiple values"; + properties2.data = 1; + { + var error = $root.opentelemetry.proto.metrics.v1.Summary.verify(message.summary); + if (error) + return "summary." + error; + } + } + return null; + }; + Metric.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Metric) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Metric(); + if (object.name != null) + message.name = String(object.name); + if (object.description != null) + message.description = String(object.description); + if (object.unit != null) + message.unit = String(object.unit); + if (object.gauge != null) { + if (typeof object.gauge !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Metric.gauge: object expected"); + message.gauge = $root.opentelemetry.proto.metrics.v1.Gauge.fromObject(object.gauge); + } + if (object.sum != null) { + if (typeof object.sum !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Metric.sum: object expected"); + message.sum = $root.opentelemetry.proto.metrics.v1.Sum.fromObject(object.sum); + } + if (object.histogram != null) { + if (typeof object.histogram !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Metric.histogram: object expected"); + message.histogram = $root.opentelemetry.proto.metrics.v1.Histogram.fromObject(object.histogram); + } + if (object.exponentialHistogram != null) { + if (typeof object.exponentialHistogram !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Metric.exponentialHistogram: object expected"); + message.exponentialHistogram = $root.opentelemetry.proto.metrics.v1.ExponentialHistogram.fromObject(object.exponentialHistogram); + } + if (object.summary != null) { + if (typeof object.summary !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Metric.summary: object expected"); + message.summary = $root.opentelemetry.proto.metrics.v1.Summary.fromObject(object.summary); + } + return message; + }; + Metric.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + object.name = ""; + object.description = ""; + object.unit = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.unit != null && message.hasOwnProperty("unit")) + object.unit = message.unit; + if (message.gauge != null && message.hasOwnProperty("gauge")) { + object.gauge = $root.opentelemetry.proto.metrics.v1.Gauge.toObject(message.gauge, options2); + if (options2.oneofs) + object.data = "gauge"; + } + if (message.sum != null && message.hasOwnProperty("sum")) { + object.sum = $root.opentelemetry.proto.metrics.v1.Sum.toObject(message.sum, options2); + if (options2.oneofs) + object.data = "sum"; + } + if (message.histogram != null && message.hasOwnProperty("histogram")) { + object.histogram = $root.opentelemetry.proto.metrics.v1.Histogram.toObject(message.histogram, options2); + if (options2.oneofs) + object.data = "histogram"; + } + if (message.exponentialHistogram != null && message.hasOwnProperty("exponentialHistogram")) { + object.exponentialHistogram = $root.opentelemetry.proto.metrics.v1.ExponentialHistogram.toObject(message.exponentialHistogram, options2); + if (options2.oneofs) + object.data = "exponentialHistogram"; + } + if (message.summary != null && message.hasOwnProperty("summary")) { + object.summary = $root.opentelemetry.proto.metrics.v1.Summary.toObject(message.summary, options2); + if (options2.oneofs) + object.data = "summary"; + } + return object; + }; + Metric.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Metric.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Metric"; + }; + return Metric; + }(); + v1.Gauge = function() { + function Gauge(properties2) { + this.dataPoints = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Gauge.prototype.dataPoints = $util.emptyArray; + Gauge.create = function create2(properties2) { + return new Gauge(properties2); + }; + Gauge.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataPoints != null && message.dataPoints.length) + for (var i = 0; i < message.dataPoints.length; ++i) + $root.opentelemetry.proto.metrics.v1.NumberDataPoint.encode(message.dataPoints[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + Gauge.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Gauge.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Gauge(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.dataPoints && message.dataPoints.length)) + message.dataPoints = []; + message.dataPoints.push($root.opentelemetry.proto.metrics.v1.NumberDataPoint.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Gauge.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Gauge.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataPoints != null && message.hasOwnProperty("dataPoints")) { + if (!Array.isArray(message.dataPoints)) + return "dataPoints: array expected"; + for (var i = 0; i < message.dataPoints.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.verify(message.dataPoints[i]); + if (error) + return "dataPoints." + error; + } + } + return null; + }; + Gauge.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Gauge) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Gauge(); + if (object.dataPoints) { + if (!Array.isArray(object.dataPoints)) + throw TypeError(".opentelemetry.proto.metrics.v1.Gauge.dataPoints: array expected"); + message.dataPoints = []; + for (var i = 0; i < object.dataPoints.length; ++i) { + if (typeof object.dataPoints[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Gauge.dataPoints: object expected"); + message.dataPoints[i] = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.fromObject(object.dataPoints[i]); + } + } + return message; + }; + Gauge.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.dataPoints = []; + if (message.dataPoints && message.dataPoints.length) { + object.dataPoints = []; + for (var j = 0; j < message.dataPoints.length; ++j) + object.dataPoints[j] = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.toObject(message.dataPoints[j], options2); + } + return object; + }; + Gauge.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Gauge.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Gauge"; + }; + return Gauge; + }(); + v1.Sum = function() { + function Sum(properties2) { + this.dataPoints = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Sum.prototype.dataPoints = $util.emptyArray; + Sum.prototype.aggregationTemporality = null; + Sum.prototype.isMonotonic = null; + Sum.create = function create2(properties2) { + return new Sum(properties2); + }; + Sum.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataPoints != null && message.dataPoints.length) + for (var i = 0; i < message.dataPoints.length; ++i) + $root.opentelemetry.proto.metrics.v1.NumberDataPoint.encode(message.dataPoints[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.aggregationTemporality != null && Object.hasOwnProperty.call(message, "aggregationTemporality")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).int32(message.aggregationTemporality); + if (message.isMonotonic != null && Object.hasOwnProperty.call(message, "isMonotonic")) + writer.uint32( + /* id 3, wireType 0 =*/ + 24 + ).bool(message.isMonotonic); + return writer; + }; + Sum.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Sum.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Sum(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.dataPoints && message.dataPoints.length)) + message.dataPoints = []; + message.dataPoints.push($root.opentelemetry.proto.metrics.v1.NumberDataPoint.decode(reader, reader.uint32())); + break; + } + case 2: { + message.aggregationTemporality = reader.int32(); + break; + } + case 3: { + message.isMonotonic = reader.bool(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Sum.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Sum.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataPoints != null && message.hasOwnProperty("dataPoints")) { + if (!Array.isArray(message.dataPoints)) + return "dataPoints: array expected"; + for (var i = 0; i < message.dataPoints.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.verify(message.dataPoints[i]); + if (error) + return "dataPoints." + error; + } + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + switch (message.aggregationTemporality) { + default: + return "aggregationTemporality: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.isMonotonic != null && message.hasOwnProperty("isMonotonic")) { + if (typeof message.isMonotonic !== "boolean") + return "isMonotonic: boolean expected"; + } + return null; + }; + Sum.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Sum) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Sum(); + if (object.dataPoints) { + if (!Array.isArray(object.dataPoints)) + throw TypeError(".opentelemetry.proto.metrics.v1.Sum.dataPoints: array expected"); + message.dataPoints = []; + for (var i = 0; i < object.dataPoints.length; ++i) { + if (typeof object.dataPoints[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Sum.dataPoints: object expected"); + message.dataPoints[i] = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.fromObject(object.dataPoints[i]); + } + } + switch (object.aggregationTemporality) { + default: + if (typeof object.aggregationTemporality === "number") { + message.aggregationTemporality = object.aggregationTemporality; + break; + } + break; + case "AGGREGATION_TEMPORALITY_UNSPECIFIED": + case 0: + message.aggregationTemporality = 0; + break; + case "AGGREGATION_TEMPORALITY_DELTA": + case 1: + message.aggregationTemporality = 1; + break; + case "AGGREGATION_TEMPORALITY_CUMULATIVE": + case 2: + message.aggregationTemporality = 2; + break; + } + if (object.isMonotonic != null) + message.isMonotonic = Boolean(object.isMonotonic); + return message; + }; + Sum.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.dataPoints = []; + if (options2.defaults) { + object.aggregationTemporality = options2.enums === String ? "AGGREGATION_TEMPORALITY_UNSPECIFIED" : 0; + object.isMonotonic = false; + } + if (message.dataPoints && message.dataPoints.length) { + object.dataPoints = []; + for (var j = 0; j < message.dataPoints.length; ++j) + object.dataPoints[j] = $root.opentelemetry.proto.metrics.v1.NumberDataPoint.toObject(message.dataPoints[j], options2); + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + object.aggregationTemporality = options2.enums === String ? $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] === void 0 ? message.aggregationTemporality : $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] : message.aggregationTemporality; + if (message.isMonotonic != null && message.hasOwnProperty("isMonotonic")) + object.isMonotonic = message.isMonotonic; + return object; + }; + Sum.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Sum.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Sum"; + }; + return Sum; + }(); + v1.Histogram = function() { + function Histogram(properties2) { + this.dataPoints = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Histogram.prototype.dataPoints = $util.emptyArray; + Histogram.prototype.aggregationTemporality = null; + Histogram.create = function create2(properties2) { + return new Histogram(properties2); + }; + Histogram.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataPoints != null && message.dataPoints.length) + for (var i = 0; i < message.dataPoints.length; ++i) + $root.opentelemetry.proto.metrics.v1.HistogramDataPoint.encode(message.dataPoints[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.aggregationTemporality != null && Object.hasOwnProperty.call(message, "aggregationTemporality")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).int32(message.aggregationTemporality); + return writer; + }; + Histogram.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Histogram.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Histogram(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.dataPoints && message.dataPoints.length)) + message.dataPoints = []; + message.dataPoints.push($root.opentelemetry.proto.metrics.v1.HistogramDataPoint.decode(reader, reader.uint32())); + break; + } + case 2: { + message.aggregationTemporality = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Histogram.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Histogram.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataPoints != null && message.hasOwnProperty("dataPoints")) { + if (!Array.isArray(message.dataPoints)) + return "dataPoints: array expected"; + for (var i = 0; i < message.dataPoints.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.HistogramDataPoint.verify(message.dataPoints[i]); + if (error) + return "dataPoints." + error; + } + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + switch (message.aggregationTemporality) { + default: + return "aggregationTemporality: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + Histogram.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Histogram) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Histogram(); + if (object.dataPoints) { + if (!Array.isArray(object.dataPoints)) + throw TypeError(".opentelemetry.proto.metrics.v1.Histogram.dataPoints: array expected"); + message.dataPoints = []; + for (var i = 0; i < object.dataPoints.length; ++i) { + if (typeof object.dataPoints[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Histogram.dataPoints: object expected"); + message.dataPoints[i] = $root.opentelemetry.proto.metrics.v1.HistogramDataPoint.fromObject(object.dataPoints[i]); + } + } + switch (object.aggregationTemporality) { + default: + if (typeof object.aggregationTemporality === "number") { + message.aggregationTemporality = object.aggregationTemporality; + break; + } + break; + case "AGGREGATION_TEMPORALITY_UNSPECIFIED": + case 0: + message.aggregationTemporality = 0; + break; + case "AGGREGATION_TEMPORALITY_DELTA": + case 1: + message.aggregationTemporality = 1; + break; + case "AGGREGATION_TEMPORALITY_CUMULATIVE": + case 2: + message.aggregationTemporality = 2; + break; + } + return message; + }; + Histogram.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.dataPoints = []; + if (options2.defaults) + object.aggregationTemporality = options2.enums === String ? "AGGREGATION_TEMPORALITY_UNSPECIFIED" : 0; + if (message.dataPoints && message.dataPoints.length) { + object.dataPoints = []; + for (var j = 0; j < message.dataPoints.length; ++j) + object.dataPoints[j] = $root.opentelemetry.proto.metrics.v1.HistogramDataPoint.toObject(message.dataPoints[j], options2); + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + object.aggregationTemporality = options2.enums === String ? $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] === void 0 ? message.aggregationTemporality : $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] : message.aggregationTemporality; + return object; + }; + Histogram.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Histogram.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Histogram"; + }; + return Histogram; + }(); + v1.ExponentialHistogram = function() { + function ExponentialHistogram(properties2) { + this.dataPoints = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExponentialHistogram.prototype.dataPoints = $util.emptyArray; + ExponentialHistogram.prototype.aggregationTemporality = null; + ExponentialHistogram.create = function create2(properties2) { + return new ExponentialHistogram(properties2); + }; + ExponentialHistogram.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataPoints != null && message.dataPoints.length) + for (var i = 0; i < message.dataPoints.length; ++i) + $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.encode(message.dataPoints[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.aggregationTemporality != null && Object.hasOwnProperty.call(message, "aggregationTemporality")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).int32(message.aggregationTemporality); + return writer; + }; + ExponentialHistogram.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExponentialHistogram.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogram(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.dataPoints && message.dataPoints.length)) + message.dataPoints = []; + message.dataPoints.push($root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.decode(reader, reader.uint32())); + break; + } + case 2: { + message.aggregationTemporality = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExponentialHistogram.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExponentialHistogram.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataPoints != null && message.hasOwnProperty("dataPoints")) { + if (!Array.isArray(message.dataPoints)) + return "dataPoints: array expected"; + for (var i = 0; i < message.dataPoints.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.verify(message.dataPoints[i]); + if (error) + return "dataPoints." + error; + } + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + switch (message.aggregationTemporality) { + default: + return "aggregationTemporality: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + ExponentialHistogram.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.ExponentialHistogram) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogram(); + if (object.dataPoints) { + if (!Array.isArray(object.dataPoints)) + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogram.dataPoints: array expected"); + message.dataPoints = []; + for (var i = 0; i < object.dataPoints.length; ++i) { + if (typeof object.dataPoints[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogram.dataPoints: object expected"); + message.dataPoints[i] = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.fromObject(object.dataPoints[i]); + } + } + switch (object.aggregationTemporality) { + default: + if (typeof object.aggregationTemporality === "number") { + message.aggregationTemporality = object.aggregationTemporality; + break; + } + break; + case "AGGREGATION_TEMPORALITY_UNSPECIFIED": + case 0: + message.aggregationTemporality = 0; + break; + case "AGGREGATION_TEMPORALITY_DELTA": + case 1: + message.aggregationTemporality = 1; + break; + case "AGGREGATION_TEMPORALITY_CUMULATIVE": + case 2: + message.aggregationTemporality = 2; + break; + } + return message; + }; + ExponentialHistogram.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.dataPoints = []; + if (options2.defaults) + object.aggregationTemporality = options2.enums === String ? "AGGREGATION_TEMPORALITY_UNSPECIFIED" : 0; + if (message.dataPoints && message.dataPoints.length) { + object.dataPoints = []; + for (var j = 0; j < message.dataPoints.length; ++j) + object.dataPoints[j] = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.toObject(message.dataPoints[j], options2); + } + if (message.aggregationTemporality != null && message.hasOwnProperty("aggregationTemporality")) + object.aggregationTemporality = options2.enums === String ? $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] === void 0 ? message.aggregationTemporality : $root.opentelemetry.proto.metrics.v1.AggregationTemporality[message.aggregationTemporality] : message.aggregationTemporality; + return object; + }; + ExponentialHistogram.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExponentialHistogram.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.ExponentialHistogram"; + }; + return ExponentialHistogram; + }(); + v1.Summary = function() { + function Summary(properties2) { + this.dataPoints = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Summary.prototype.dataPoints = $util.emptyArray; + Summary.create = function create2(properties2) { + return new Summary(properties2); + }; + Summary.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataPoints != null && message.dataPoints.length) + for (var i = 0; i < message.dataPoints.length; ++i) + $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.encode(message.dataPoints[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + Summary.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Summary.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Summary(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.dataPoints && message.dataPoints.length)) + message.dataPoints = []; + message.dataPoints.push($root.opentelemetry.proto.metrics.v1.SummaryDataPoint.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Summary.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Summary.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataPoints != null && message.hasOwnProperty("dataPoints")) { + if (!Array.isArray(message.dataPoints)) + return "dataPoints: array expected"; + for (var i = 0; i < message.dataPoints.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.verify(message.dataPoints[i]); + if (error) + return "dataPoints." + error; + } + } + return null; + }; + Summary.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Summary) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Summary(); + if (object.dataPoints) { + if (!Array.isArray(object.dataPoints)) + throw TypeError(".opentelemetry.proto.metrics.v1.Summary.dataPoints: array expected"); + message.dataPoints = []; + for (var i = 0; i < object.dataPoints.length; ++i) { + if (typeof object.dataPoints[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Summary.dataPoints: object expected"); + message.dataPoints[i] = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.fromObject(object.dataPoints[i]); + } + } + return message; + }; + Summary.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.dataPoints = []; + if (message.dataPoints && message.dataPoints.length) { + object.dataPoints = []; + for (var j = 0; j < message.dataPoints.length; ++j) + object.dataPoints[j] = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.toObject(message.dataPoints[j], options2); + } + return object; + }; + Summary.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Summary.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Summary"; + }; + return Summary; + }(); + v1.AggregationTemporality = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "AGGREGATION_TEMPORALITY_UNSPECIFIED"] = 0; + values[valuesById[1] = "AGGREGATION_TEMPORALITY_DELTA"] = 1; + values[valuesById[2] = "AGGREGATION_TEMPORALITY_CUMULATIVE"] = 2; + return values; + }(); + v1.DataPointFlags = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "DATA_POINT_FLAGS_DO_NOT_USE"] = 0; + values[valuesById[1] = "DATA_POINT_FLAGS_NO_RECORDED_VALUE_MASK"] = 1; + return values; + }(); + v1.NumberDataPoint = function() { + function NumberDataPoint(properties2) { + this.attributes = []; + this.exemplars = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + NumberDataPoint.prototype.attributes = $util.emptyArray; + NumberDataPoint.prototype.startTimeUnixNano = null; + NumberDataPoint.prototype.timeUnixNano = null; + NumberDataPoint.prototype.asDouble = null; + NumberDataPoint.prototype.asInt = null; + NumberDataPoint.prototype.exemplars = $util.emptyArray; + NumberDataPoint.prototype.flags = null; + var $oneOfFields; + Object.defineProperty(NumberDataPoint.prototype, "value", { + get: $util.oneOfGetter($oneOfFields = ["asDouble", "asInt"]), + set: $util.oneOfSetter($oneOfFields) + }); + NumberDataPoint.create = function create2(properties2) { + return new NumberDataPoint(properties2); + }; + NumberDataPoint.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.startTimeUnixNano != null && Object.hasOwnProperty.call(message, "startTimeUnixNano")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).fixed64(message.startTimeUnixNano); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 3, wireType 1 =*/ + 25 + ).fixed64(message.timeUnixNano); + if (message.asDouble != null && Object.hasOwnProperty.call(message, "asDouble")) + writer.uint32( + /* id 4, wireType 1 =*/ + 33 + ).double(message.asDouble); + if (message.exemplars != null && message.exemplars.length) + for (var i = 0; i < message.exemplars.length; ++i) + $root.opentelemetry.proto.metrics.v1.Exemplar.encode(message.exemplars[i], writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).fork()).ldelim(); + if (message.asInt != null && Object.hasOwnProperty.call(message, "asInt")) + writer.uint32( + /* id 6, wireType 1 =*/ + 49 + ).sfixed64(message.asInt); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).fork()).ldelim(); + if (message.flags != null && Object.hasOwnProperty.call(message, "flags")) + writer.uint32( + /* id 8, wireType 0 =*/ + 64 + ).uint32(message.flags); + return writer; + }; + NumberDataPoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + NumberDataPoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.NumberDataPoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 7: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.startTimeUnixNano = reader.fixed64(); + break; + } + case 3: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 4: { + message.asDouble = reader.double(); + break; + } + case 6: { + message.asInt = reader.sfixed64(); + break; + } + case 5: { + if (!(message.exemplars && message.exemplars.length)) + message.exemplars = []; + message.exemplars.push($root.opentelemetry.proto.metrics.v1.Exemplar.decode(reader, reader.uint32())); + break; + } + case 8: { + message.flags = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + NumberDataPoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + NumberDataPoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) { + if (!$util.isInteger(message.startTimeUnixNano) && !(message.startTimeUnixNano && $util.isInteger(message.startTimeUnixNano.low) && $util.isInteger(message.startTimeUnixNano.high))) + return "startTimeUnixNano: integer|Long expected"; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.asDouble != null && message.hasOwnProperty("asDouble")) { + properties2.value = 1; + if (typeof message.asDouble !== "number") + return "asDouble: number expected"; + } + if (message.asInt != null && message.hasOwnProperty("asInt")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (!$util.isInteger(message.asInt) && !(message.asInt && $util.isInteger(message.asInt.low) && $util.isInteger(message.asInt.high))) + return "asInt: integer|Long expected"; + } + if (message.exemplars != null && message.hasOwnProperty("exemplars")) { + if (!Array.isArray(message.exemplars)) + return "exemplars: array expected"; + for (var i = 0; i < message.exemplars.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.Exemplar.verify(message.exemplars[i]); + if (error) + return "exemplars." + error; + } + } + if (message.flags != null && message.hasOwnProperty("flags")) { + if (!$util.isInteger(message.flags)) + return "flags: integer expected"; + } + return null; + }; + NumberDataPoint.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.NumberDataPoint) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.NumberDataPoint(); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.metrics.v1.NumberDataPoint.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.NumberDataPoint.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.startTimeUnixNano != null) { + if ($util.Long) + (message.startTimeUnixNano = $util.Long.fromValue(object.startTimeUnixNano)).unsigned = false; + else if (typeof object.startTimeUnixNano === "string") + message.startTimeUnixNano = parseInt(object.startTimeUnixNano, 10); + else if (typeof object.startTimeUnixNano === "number") + message.startTimeUnixNano = object.startTimeUnixNano; + else if (typeof object.startTimeUnixNano === "object") + message.startTimeUnixNano = new $util.LongBits(object.startTimeUnixNano.low >>> 0, object.startTimeUnixNano.high >>> 0).toNumber(); + } + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.asDouble != null) + message.asDouble = Number(object.asDouble); + if (object.asInt != null) { + if ($util.Long) + (message.asInt = $util.Long.fromValue(object.asInt)).unsigned = false; + else if (typeof object.asInt === "string") + message.asInt = parseInt(object.asInt, 10); + else if (typeof object.asInt === "number") + message.asInt = object.asInt; + else if (typeof object.asInt === "object") + message.asInt = new $util.LongBits(object.asInt.low >>> 0, object.asInt.high >>> 0).toNumber(); + } + if (object.exemplars) { + if (!Array.isArray(object.exemplars)) + throw TypeError(".opentelemetry.proto.metrics.v1.NumberDataPoint.exemplars: array expected"); + message.exemplars = []; + for (var i = 0; i < object.exemplars.length; ++i) { + if (typeof object.exemplars[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.NumberDataPoint.exemplars: object expected"); + message.exemplars[i] = $root.opentelemetry.proto.metrics.v1.Exemplar.fromObject(object.exemplars[i]); + } + } + if (object.flags != null) + message.flags = object.flags >>> 0; + return message; + }; + NumberDataPoint.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) { + object.exemplars = []; + object.attributes = []; + } + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.startTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.startTimeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + object.flags = 0; + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) + if (typeof message.startTimeUnixNano === "number") + object.startTimeUnixNano = options2.longs === String ? String(message.startTimeUnixNano) : message.startTimeUnixNano; + else + object.startTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.startTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.startTimeUnixNano.low >>> 0, message.startTimeUnixNano.high >>> 0).toNumber() : message.startTimeUnixNano; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.asDouble != null && message.hasOwnProperty("asDouble")) { + object.asDouble = options2.json && !isFinite(message.asDouble) ? String(message.asDouble) : message.asDouble; + if (options2.oneofs) + object.value = "asDouble"; + } + if (message.exemplars && message.exemplars.length) { + object.exemplars = []; + for (var j = 0; j < message.exemplars.length; ++j) + object.exemplars[j] = $root.opentelemetry.proto.metrics.v1.Exemplar.toObject(message.exemplars[j], options2); + } + if (message.asInt != null && message.hasOwnProperty("asInt")) { + if (typeof message.asInt === "number") + object.asInt = options2.longs === String ? String(message.asInt) : message.asInt; + else + object.asInt = options2.longs === String ? $util.Long.prototype.toString.call(message.asInt) : options2.longs === Number ? new $util.LongBits(message.asInt.low >>> 0, message.asInt.high >>> 0).toNumber() : message.asInt; + if (options2.oneofs) + object.value = "asInt"; + } + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.flags != null && message.hasOwnProperty("flags")) + object.flags = message.flags; + return object; + }; + NumberDataPoint.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + NumberDataPoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.NumberDataPoint"; + }; + return NumberDataPoint; + }(); + v1.HistogramDataPoint = function() { + function HistogramDataPoint(properties2) { + this.attributes = []; + this.bucketCounts = []; + this.explicitBounds = []; + this.exemplars = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + HistogramDataPoint.prototype.attributes = $util.emptyArray; + HistogramDataPoint.prototype.startTimeUnixNano = null; + HistogramDataPoint.prototype.timeUnixNano = null; + HistogramDataPoint.prototype.count = null; + HistogramDataPoint.prototype.sum = null; + HistogramDataPoint.prototype.bucketCounts = $util.emptyArray; + HistogramDataPoint.prototype.explicitBounds = $util.emptyArray; + HistogramDataPoint.prototype.exemplars = $util.emptyArray; + HistogramDataPoint.prototype.flags = null; + HistogramDataPoint.prototype.min = null; + HistogramDataPoint.prototype.max = null; + var $oneOfFields; + Object.defineProperty(HistogramDataPoint.prototype, "_sum", { + get: $util.oneOfGetter($oneOfFields = ["sum"]), + set: $util.oneOfSetter($oneOfFields) + }); + Object.defineProperty(HistogramDataPoint.prototype, "_min", { + get: $util.oneOfGetter($oneOfFields = ["min"]), + set: $util.oneOfSetter($oneOfFields) + }); + Object.defineProperty(HistogramDataPoint.prototype, "_max", { + get: $util.oneOfGetter($oneOfFields = ["max"]), + set: $util.oneOfSetter($oneOfFields) + }); + HistogramDataPoint.create = function create2(properties2) { + return new HistogramDataPoint(properties2); + }; + HistogramDataPoint.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.startTimeUnixNano != null && Object.hasOwnProperty.call(message, "startTimeUnixNano")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).fixed64(message.startTimeUnixNano); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 3, wireType 1 =*/ + 25 + ).fixed64(message.timeUnixNano); + if (message.count != null && Object.hasOwnProperty.call(message, "count")) + writer.uint32( + /* id 4, wireType 1 =*/ + 33 + ).fixed64(message.count); + if (message.sum != null && Object.hasOwnProperty.call(message, "sum")) + writer.uint32( + /* id 5, wireType 1 =*/ + 41 + ).double(message.sum); + if (message.bucketCounts != null && message.bucketCounts.length) { + writer.uint32( + /* id 6, wireType 2 =*/ + 50 + ).fork(); + for (var i = 0; i < message.bucketCounts.length; ++i) + writer.fixed64(message.bucketCounts[i]); + writer.ldelim(); + } + if (message.explicitBounds != null && message.explicitBounds.length) { + writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).fork(); + for (var i = 0; i < message.explicitBounds.length; ++i) + writer.double(message.explicitBounds[i]); + writer.ldelim(); + } + if (message.exemplars != null && message.exemplars.length) + for (var i = 0; i < message.exemplars.length; ++i) + $root.opentelemetry.proto.metrics.v1.Exemplar.encode(message.exemplars[i], writer.uint32( + /* id 8, wireType 2 =*/ + 66 + ).fork()).ldelim(); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 9, wireType 2 =*/ + 74 + ).fork()).ldelim(); + if (message.flags != null && Object.hasOwnProperty.call(message, "flags")) + writer.uint32( + /* id 10, wireType 0 =*/ + 80 + ).uint32(message.flags); + if (message.min != null && Object.hasOwnProperty.call(message, "min")) + writer.uint32( + /* id 11, wireType 1 =*/ + 89 + ).double(message.min); + if (message.max != null && Object.hasOwnProperty.call(message, "max")) + writer.uint32( + /* id 12, wireType 1 =*/ + 97 + ).double(message.max); + return writer; + }; + HistogramDataPoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + HistogramDataPoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.HistogramDataPoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 9: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.startTimeUnixNano = reader.fixed64(); + break; + } + case 3: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 4: { + message.count = reader.fixed64(); + break; + } + case 5: { + message.sum = reader.double(); + break; + } + case 6: { + if (!(message.bucketCounts && message.bucketCounts.length)) + message.bucketCounts = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.bucketCounts.push(reader.fixed64()); + } else + message.bucketCounts.push(reader.fixed64()); + break; + } + case 7: { + if (!(message.explicitBounds && message.explicitBounds.length)) + message.explicitBounds = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.explicitBounds.push(reader.double()); + } else + message.explicitBounds.push(reader.double()); + break; + } + case 8: { + if (!(message.exemplars && message.exemplars.length)) + message.exemplars = []; + message.exemplars.push($root.opentelemetry.proto.metrics.v1.Exemplar.decode(reader, reader.uint32())); + break; + } + case 10: { + message.flags = reader.uint32(); + break; + } + case 11: { + message.min = reader.double(); + break; + } + case 12: { + message.max = reader.double(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + HistogramDataPoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + HistogramDataPoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) { + if (!$util.isInteger(message.startTimeUnixNano) && !(message.startTimeUnixNano && $util.isInteger(message.startTimeUnixNano.low) && $util.isInteger(message.startTimeUnixNano.high))) + return "startTimeUnixNano: integer|Long expected"; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.count != null && message.hasOwnProperty("count")) { + if (!$util.isInteger(message.count) && !(message.count && $util.isInteger(message.count.low) && $util.isInteger(message.count.high))) + return "count: integer|Long expected"; + } + if (message.sum != null && message.hasOwnProperty("sum")) { + properties2._sum = 1; + if (typeof message.sum !== "number") + return "sum: number expected"; + } + if (message.bucketCounts != null && message.hasOwnProperty("bucketCounts")) { + if (!Array.isArray(message.bucketCounts)) + return "bucketCounts: array expected"; + for (var i = 0; i < message.bucketCounts.length; ++i) + if (!$util.isInteger(message.bucketCounts[i]) && !(message.bucketCounts[i] && $util.isInteger(message.bucketCounts[i].low) && $util.isInteger(message.bucketCounts[i].high))) + return "bucketCounts: integer|Long[] expected"; + } + if (message.explicitBounds != null && message.hasOwnProperty("explicitBounds")) { + if (!Array.isArray(message.explicitBounds)) + return "explicitBounds: array expected"; + for (var i = 0; i < message.explicitBounds.length; ++i) + if (typeof message.explicitBounds[i] !== "number") + return "explicitBounds: number[] expected"; + } + if (message.exemplars != null && message.hasOwnProperty("exemplars")) { + if (!Array.isArray(message.exemplars)) + return "exemplars: array expected"; + for (var i = 0; i < message.exemplars.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.Exemplar.verify(message.exemplars[i]); + if (error) + return "exemplars." + error; + } + } + if (message.flags != null && message.hasOwnProperty("flags")) { + if (!$util.isInteger(message.flags)) + return "flags: integer expected"; + } + if (message.min != null && message.hasOwnProperty("min")) { + properties2._min = 1; + if (typeof message.min !== "number") + return "min: number expected"; + } + if (message.max != null && message.hasOwnProperty("max")) { + properties2._max = 1; + if (typeof message.max !== "number") + return "max: number expected"; + } + return null; + }; + HistogramDataPoint.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.HistogramDataPoint) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.HistogramDataPoint(); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.startTimeUnixNano != null) { + if ($util.Long) + (message.startTimeUnixNano = $util.Long.fromValue(object.startTimeUnixNano)).unsigned = false; + else if (typeof object.startTimeUnixNano === "string") + message.startTimeUnixNano = parseInt(object.startTimeUnixNano, 10); + else if (typeof object.startTimeUnixNano === "number") + message.startTimeUnixNano = object.startTimeUnixNano; + else if (typeof object.startTimeUnixNano === "object") + message.startTimeUnixNano = new $util.LongBits(object.startTimeUnixNano.low >>> 0, object.startTimeUnixNano.high >>> 0).toNumber(); + } + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.count != null) { + if ($util.Long) + (message.count = $util.Long.fromValue(object.count)).unsigned = false; + else if (typeof object.count === "string") + message.count = parseInt(object.count, 10); + else if (typeof object.count === "number") + message.count = object.count; + else if (typeof object.count === "object") + message.count = new $util.LongBits(object.count.low >>> 0, object.count.high >>> 0).toNumber(); + } + if (object.sum != null) + message.sum = Number(object.sum); + if (object.bucketCounts) { + if (!Array.isArray(object.bucketCounts)) + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.bucketCounts: array expected"); + message.bucketCounts = []; + for (var i = 0; i < object.bucketCounts.length; ++i) + if ($util.Long) + (message.bucketCounts[i] = $util.Long.fromValue(object.bucketCounts[i])).unsigned = false; + else if (typeof object.bucketCounts[i] === "string") + message.bucketCounts[i] = parseInt(object.bucketCounts[i], 10); + else if (typeof object.bucketCounts[i] === "number") + message.bucketCounts[i] = object.bucketCounts[i]; + else if (typeof object.bucketCounts[i] === "object") + message.bucketCounts[i] = new $util.LongBits(object.bucketCounts[i].low >>> 0, object.bucketCounts[i].high >>> 0).toNumber(); + } + if (object.explicitBounds) { + if (!Array.isArray(object.explicitBounds)) + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.explicitBounds: array expected"); + message.explicitBounds = []; + for (var i = 0; i < object.explicitBounds.length; ++i) + message.explicitBounds[i] = Number(object.explicitBounds[i]); + } + if (object.exemplars) { + if (!Array.isArray(object.exemplars)) + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.exemplars: array expected"); + message.exemplars = []; + for (var i = 0; i < object.exemplars.length; ++i) { + if (typeof object.exemplars[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.HistogramDataPoint.exemplars: object expected"); + message.exemplars[i] = $root.opentelemetry.proto.metrics.v1.Exemplar.fromObject(object.exemplars[i]); + } + } + if (object.flags != null) + message.flags = object.flags >>> 0; + if (object.min != null) + message.min = Number(object.min); + if (object.max != null) + message.max = Number(object.max); + return message; + }; + HistogramDataPoint.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) { + object.bucketCounts = []; + object.explicitBounds = []; + object.exemplars = []; + object.attributes = []; + } + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.startTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.startTimeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.count = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.count = options2.longs === String ? "0" : 0; + object.flags = 0; + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) + if (typeof message.startTimeUnixNano === "number") + object.startTimeUnixNano = options2.longs === String ? String(message.startTimeUnixNano) : message.startTimeUnixNano; + else + object.startTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.startTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.startTimeUnixNano.low >>> 0, message.startTimeUnixNano.high >>> 0).toNumber() : message.startTimeUnixNano; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.count != null && message.hasOwnProperty("count")) + if (typeof message.count === "number") + object.count = options2.longs === String ? String(message.count) : message.count; + else + object.count = options2.longs === String ? $util.Long.prototype.toString.call(message.count) : options2.longs === Number ? new $util.LongBits(message.count.low >>> 0, message.count.high >>> 0).toNumber() : message.count; + if (message.sum != null && message.hasOwnProperty("sum")) { + object.sum = options2.json && !isFinite(message.sum) ? String(message.sum) : message.sum; + if (options2.oneofs) + object._sum = "sum"; + } + if (message.bucketCounts && message.bucketCounts.length) { + object.bucketCounts = []; + for (var j = 0; j < message.bucketCounts.length; ++j) + if (typeof message.bucketCounts[j] === "number") + object.bucketCounts[j] = options2.longs === String ? String(message.bucketCounts[j]) : message.bucketCounts[j]; + else + object.bucketCounts[j] = options2.longs === String ? $util.Long.prototype.toString.call(message.bucketCounts[j]) : options2.longs === Number ? new $util.LongBits(message.bucketCounts[j].low >>> 0, message.bucketCounts[j].high >>> 0).toNumber() : message.bucketCounts[j]; + } + if (message.explicitBounds && message.explicitBounds.length) { + object.explicitBounds = []; + for (var j = 0; j < message.explicitBounds.length; ++j) + object.explicitBounds[j] = options2.json && !isFinite(message.explicitBounds[j]) ? String(message.explicitBounds[j]) : message.explicitBounds[j]; + } + if (message.exemplars && message.exemplars.length) { + object.exemplars = []; + for (var j = 0; j < message.exemplars.length; ++j) + object.exemplars[j] = $root.opentelemetry.proto.metrics.v1.Exemplar.toObject(message.exemplars[j], options2); + } + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.flags != null && message.hasOwnProperty("flags")) + object.flags = message.flags; + if (message.min != null && message.hasOwnProperty("min")) { + object.min = options2.json && !isFinite(message.min) ? String(message.min) : message.min; + if (options2.oneofs) + object._min = "min"; + } + if (message.max != null && message.hasOwnProperty("max")) { + object.max = options2.json && !isFinite(message.max) ? String(message.max) : message.max; + if (options2.oneofs) + object._max = "max"; + } + return object; + }; + HistogramDataPoint.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + HistogramDataPoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.HistogramDataPoint"; + }; + return HistogramDataPoint; + }(); + v1.ExponentialHistogramDataPoint = function() { + function ExponentialHistogramDataPoint(properties2) { + this.attributes = []; + this.exemplars = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ExponentialHistogramDataPoint.prototype.attributes = $util.emptyArray; + ExponentialHistogramDataPoint.prototype.startTimeUnixNano = null; + ExponentialHistogramDataPoint.prototype.timeUnixNano = null; + ExponentialHistogramDataPoint.prototype.count = null; + ExponentialHistogramDataPoint.prototype.sum = null; + ExponentialHistogramDataPoint.prototype.scale = null; + ExponentialHistogramDataPoint.prototype.zeroCount = null; + ExponentialHistogramDataPoint.prototype.positive = null; + ExponentialHistogramDataPoint.prototype.negative = null; + ExponentialHistogramDataPoint.prototype.flags = null; + ExponentialHistogramDataPoint.prototype.exemplars = $util.emptyArray; + ExponentialHistogramDataPoint.prototype.min = null; + ExponentialHistogramDataPoint.prototype.max = null; + ExponentialHistogramDataPoint.prototype.zeroThreshold = null; + var $oneOfFields; + Object.defineProperty(ExponentialHistogramDataPoint.prototype, "_sum", { + get: $util.oneOfGetter($oneOfFields = ["sum"]), + set: $util.oneOfSetter($oneOfFields) + }); + Object.defineProperty(ExponentialHistogramDataPoint.prototype, "_min", { + get: $util.oneOfGetter($oneOfFields = ["min"]), + set: $util.oneOfSetter($oneOfFields) + }); + Object.defineProperty(ExponentialHistogramDataPoint.prototype, "_max", { + get: $util.oneOfGetter($oneOfFields = ["max"]), + set: $util.oneOfSetter($oneOfFields) + }); + ExponentialHistogramDataPoint.create = function create2(properties2) { + return new ExponentialHistogramDataPoint(properties2); + }; + ExponentialHistogramDataPoint.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.startTimeUnixNano != null && Object.hasOwnProperty.call(message, "startTimeUnixNano")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).fixed64(message.startTimeUnixNano); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 3, wireType 1 =*/ + 25 + ).fixed64(message.timeUnixNano); + if (message.count != null && Object.hasOwnProperty.call(message, "count")) + writer.uint32( + /* id 4, wireType 1 =*/ + 33 + ).fixed64(message.count); + if (message.sum != null && Object.hasOwnProperty.call(message, "sum")) + writer.uint32( + /* id 5, wireType 1 =*/ + 41 + ).double(message.sum); + if (message.scale != null && Object.hasOwnProperty.call(message, "scale")) + writer.uint32( + /* id 6, wireType 0 =*/ + 48 + ).sint32(message.scale); + if (message.zeroCount != null && Object.hasOwnProperty.call(message, "zeroCount")) + writer.uint32( + /* id 7, wireType 1 =*/ + 57 + ).fixed64(message.zeroCount); + if (message.positive != null && Object.hasOwnProperty.call(message, "positive")) + $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.encode(message.positive, writer.uint32( + /* id 8, wireType 2 =*/ + 66 + ).fork()).ldelim(); + if (message.negative != null && Object.hasOwnProperty.call(message, "negative")) + $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.encode(message.negative, writer.uint32( + /* id 9, wireType 2 =*/ + 74 + ).fork()).ldelim(); + if (message.flags != null && Object.hasOwnProperty.call(message, "flags")) + writer.uint32( + /* id 10, wireType 0 =*/ + 80 + ).uint32(message.flags); + if (message.exemplars != null && message.exemplars.length) + for (var i = 0; i < message.exemplars.length; ++i) + $root.opentelemetry.proto.metrics.v1.Exemplar.encode(message.exemplars[i], writer.uint32( + /* id 11, wireType 2 =*/ + 90 + ).fork()).ldelim(); + if (message.min != null && Object.hasOwnProperty.call(message, "min")) + writer.uint32( + /* id 12, wireType 1 =*/ + 97 + ).double(message.min); + if (message.max != null && Object.hasOwnProperty.call(message, "max")) + writer.uint32( + /* id 13, wireType 1 =*/ + 105 + ).double(message.max); + if (message.zeroThreshold != null && Object.hasOwnProperty.call(message, "zeroThreshold")) + writer.uint32( + /* id 14, wireType 1 =*/ + 113 + ).double(message.zeroThreshold); + return writer; + }; + ExponentialHistogramDataPoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ExponentialHistogramDataPoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.startTimeUnixNano = reader.fixed64(); + break; + } + case 3: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 4: { + message.count = reader.fixed64(); + break; + } + case 5: { + message.sum = reader.double(); + break; + } + case 6: { + message.scale = reader.sint32(); + break; + } + case 7: { + message.zeroCount = reader.fixed64(); + break; + } + case 8: { + message.positive = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.decode(reader, reader.uint32()); + break; + } + case 9: { + message.negative = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.decode(reader, reader.uint32()); + break; + } + case 10: { + message.flags = reader.uint32(); + break; + } + case 11: { + if (!(message.exemplars && message.exemplars.length)) + message.exemplars = []; + message.exemplars.push($root.opentelemetry.proto.metrics.v1.Exemplar.decode(reader, reader.uint32())); + break; + } + case 12: { + message.min = reader.double(); + break; + } + case 13: { + message.max = reader.double(); + break; + } + case 14: { + message.zeroThreshold = reader.double(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ExponentialHistogramDataPoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ExponentialHistogramDataPoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) { + if (!$util.isInteger(message.startTimeUnixNano) && !(message.startTimeUnixNano && $util.isInteger(message.startTimeUnixNano.low) && $util.isInteger(message.startTimeUnixNano.high))) + return "startTimeUnixNano: integer|Long expected"; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.count != null && message.hasOwnProperty("count")) { + if (!$util.isInteger(message.count) && !(message.count && $util.isInteger(message.count.low) && $util.isInteger(message.count.high))) + return "count: integer|Long expected"; + } + if (message.sum != null && message.hasOwnProperty("sum")) { + properties2._sum = 1; + if (typeof message.sum !== "number") + return "sum: number expected"; + } + if (message.scale != null && message.hasOwnProperty("scale")) { + if (!$util.isInteger(message.scale)) + return "scale: integer expected"; + } + if (message.zeroCount != null && message.hasOwnProperty("zeroCount")) { + if (!$util.isInteger(message.zeroCount) && !(message.zeroCount && $util.isInteger(message.zeroCount.low) && $util.isInteger(message.zeroCount.high))) + return "zeroCount: integer|Long expected"; + } + if (message.positive != null && message.hasOwnProperty("positive")) { + var error = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.verify(message.positive); + if (error) + return "positive." + error; + } + if (message.negative != null && message.hasOwnProperty("negative")) { + var error = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.verify(message.negative); + if (error) + return "negative." + error; + } + if (message.flags != null && message.hasOwnProperty("flags")) { + if (!$util.isInteger(message.flags)) + return "flags: integer expected"; + } + if (message.exemplars != null && message.hasOwnProperty("exemplars")) { + if (!Array.isArray(message.exemplars)) + return "exemplars: array expected"; + for (var i = 0; i < message.exemplars.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.Exemplar.verify(message.exemplars[i]); + if (error) + return "exemplars." + error; + } + } + if (message.min != null && message.hasOwnProperty("min")) { + properties2._min = 1; + if (typeof message.min !== "number") + return "min: number expected"; + } + if (message.max != null && message.hasOwnProperty("max")) { + properties2._max = 1; + if (typeof message.max !== "number") + return "max: number expected"; + } + if (message.zeroThreshold != null && message.hasOwnProperty("zeroThreshold")) { + if (typeof message.zeroThreshold !== "number") + return "zeroThreshold: number expected"; + } + return null; + }; + ExponentialHistogramDataPoint.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint(); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.startTimeUnixNano != null) { + if ($util.Long) + (message.startTimeUnixNano = $util.Long.fromValue(object.startTimeUnixNano)).unsigned = false; + else if (typeof object.startTimeUnixNano === "string") + message.startTimeUnixNano = parseInt(object.startTimeUnixNano, 10); + else if (typeof object.startTimeUnixNano === "number") + message.startTimeUnixNano = object.startTimeUnixNano; + else if (typeof object.startTimeUnixNano === "object") + message.startTimeUnixNano = new $util.LongBits(object.startTimeUnixNano.low >>> 0, object.startTimeUnixNano.high >>> 0).toNumber(); + } + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.count != null) { + if ($util.Long) + (message.count = $util.Long.fromValue(object.count)).unsigned = false; + else if (typeof object.count === "string") + message.count = parseInt(object.count, 10); + else if (typeof object.count === "number") + message.count = object.count; + else if (typeof object.count === "object") + message.count = new $util.LongBits(object.count.low >>> 0, object.count.high >>> 0).toNumber(); + } + if (object.sum != null) + message.sum = Number(object.sum); + if (object.scale != null) + message.scale = object.scale | 0; + if (object.zeroCount != null) { + if ($util.Long) + (message.zeroCount = $util.Long.fromValue(object.zeroCount)).unsigned = false; + else if (typeof object.zeroCount === "string") + message.zeroCount = parseInt(object.zeroCount, 10); + else if (typeof object.zeroCount === "number") + message.zeroCount = object.zeroCount; + else if (typeof object.zeroCount === "object") + message.zeroCount = new $util.LongBits(object.zeroCount.low >>> 0, object.zeroCount.high >>> 0).toNumber(); + } + if (object.positive != null) { + if (typeof object.positive !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.positive: object expected"); + message.positive = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.fromObject(object.positive); + } + if (object.negative != null) { + if (typeof object.negative !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.negative: object expected"); + message.negative = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.fromObject(object.negative); + } + if (object.flags != null) + message.flags = object.flags >>> 0; + if (object.exemplars) { + if (!Array.isArray(object.exemplars)) + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.exemplars: array expected"); + message.exemplars = []; + for (var i = 0; i < object.exemplars.length; ++i) { + if (typeof object.exemplars[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.exemplars: object expected"); + message.exemplars[i] = $root.opentelemetry.proto.metrics.v1.Exemplar.fromObject(object.exemplars[i]); + } + } + if (object.min != null) + message.min = Number(object.min); + if (object.max != null) + message.max = Number(object.max); + if (object.zeroThreshold != null) + message.zeroThreshold = Number(object.zeroThreshold); + return message; + }; + ExponentialHistogramDataPoint.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) { + object.attributes = []; + object.exemplars = []; + } + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.startTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.startTimeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.count = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.count = options2.longs === String ? "0" : 0; + object.scale = 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.zeroCount = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.zeroCount = options2.longs === String ? "0" : 0; + object.positive = null; + object.negative = null; + object.flags = 0; + object.zeroThreshold = 0; + } + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) + if (typeof message.startTimeUnixNano === "number") + object.startTimeUnixNano = options2.longs === String ? String(message.startTimeUnixNano) : message.startTimeUnixNano; + else + object.startTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.startTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.startTimeUnixNano.low >>> 0, message.startTimeUnixNano.high >>> 0).toNumber() : message.startTimeUnixNano; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.count != null && message.hasOwnProperty("count")) + if (typeof message.count === "number") + object.count = options2.longs === String ? String(message.count) : message.count; + else + object.count = options2.longs === String ? $util.Long.prototype.toString.call(message.count) : options2.longs === Number ? new $util.LongBits(message.count.low >>> 0, message.count.high >>> 0).toNumber() : message.count; + if (message.sum != null && message.hasOwnProperty("sum")) { + object.sum = options2.json && !isFinite(message.sum) ? String(message.sum) : message.sum; + if (options2.oneofs) + object._sum = "sum"; + } + if (message.scale != null && message.hasOwnProperty("scale")) + object.scale = message.scale; + if (message.zeroCount != null && message.hasOwnProperty("zeroCount")) + if (typeof message.zeroCount === "number") + object.zeroCount = options2.longs === String ? String(message.zeroCount) : message.zeroCount; + else + object.zeroCount = options2.longs === String ? $util.Long.prototype.toString.call(message.zeroCount) : options2.longs === Number ? new $util.LongBits(message.zeroCount.low >>> 0, message.zeroCount.high >>> 0).toNumber() : message.zeroCount; + if (message.positive != null && message.hasOwnProperty("positive")) + object.positive = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.toObject(message.positive, options2); + if (message.negative != null && message.hasOwnProperty("negative")) + object.negative = $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.toObject(message.negative, options2); + if (message.flags != null && message.hasOwnProperty("flags")) + object.flags = message.flags; + if (message.exemplars && message.exemplars.length) { + object.exemplars = []; + for (var j = 0; j < message.exemplars.length; ++j) + object.exemplars[j] = $root.opentelemetry.proto.metrics.v1.Exemplar.toObject(message.exemplars[j], options2); + } + if (message.min != null && message.hasOwnProperty("min")) { + object.min = options2.json && !isFinite(message.min) ? String(message.min) : message.min; + if (options2.oneofs) + object._min = "min"; + } + if (message.max != null && message.hasOwnProperty("max")) { + object.max = options2.json && !isFinite(message.max) ? String(message.max) : message.max; + if (options2.oneofs) + object._max = "max"; + } + if (message.zeroThreshold != null && message.hasOwnProperty("zeroThreshold")) + object.zeroThreshold = options2.json && !isFinite(message.zeroThreshold) ? String(message.zeroThreshold) : message.zeroThreshold; + return object; + }; + ExponentialHistogramDataPoint.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ExponentialHistogramDataPoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint"; + }; + ExponentialHistogramDataPoint.Buckets = function() { + function Buckets(properties2) { + this.bucketCounts = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Buckets.prototype.offset = null; + Buckets.prototype.bucketCounts = $util.emptyArray; + Buckets.create = function create2(properties2) { + return new Buckets(properties2); + }; + Buckets.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.offset != null && Object.hasOwnProperty.call(message, "offset")) + writer.uint32( + /* id 1, wireType 0 =*/ + 8 + ).sint32(message.offset); + if (message.bucketCounts != null && message.bucketCounts.length) { + writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork(); + for (var i = 0; i < message.bucketCounts.length; ++i) + writer.uint64(message.bucketCounts[i]); + writer.ldelim(); + } + return writer; + }; + Buckets.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Buckets.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.offset = reader.sint32(); + break; + } + case 2: { + if (!(message.bucketCounts && message.bucketCounts.length)) + message.bucketCounts = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.bucketCounts.push(reader.uint64()); + } else + message.bucketCounts.push(reader.uint64()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Buckets.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Buckets.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.offset != null && message.hasOwnProperty("offset")) { + if (!$util.isInteger(message.offset)) + return "offset: integer expected"; + } + if (message.bucketCounts != null && message.hasOwnProperty("bucketCounts")) { + if (!Array.isArray(message.bucketCounts)) + return "bucketCounts: array expected"; + for (var i = 0; i < message.bucketCounts.length; ++i) + if (!$util.isInteger(message.bucketCounts[i]) && !(message.bucketCounts[i] && $util.isInteger(message.bucketCounts[i].low) && $util.isInteger(message.bucketCounts[i].high))) + return "bucketCounts: integer|Long[] expected"; + } + return null; + }; + Buckets.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets(); + if (object.offset != null) + message.offset = object.offset | 0; + if (object.bucketCounts) { + if (!Array.isArray(object.bucketCounts)) + throw TypeError(".opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.bucketCounts: array expected"); + message.bucketCounts = []; + for (var i = 0; i < object.bucketCounts.length; ++i) + if ($util.Long) + (message.bucketCounts[i] = $util.Long.fromValue(object.bucketCounts[i])).unsigned = true; + else if (typeof object.bucketCounts[i] === "string") + message.bucketCounts[i] = parseInt(object.bucketCounts[i], 10); + else if (typeof object.bucketCounts[i] === "number") + message.bucketCounts[i] = object.bucketCounts[i]; + else if (typeof object.bucketCounts[i] === "object") + message.bucketCounts[i] = new $util.LongBits(object.bucketCounts[i].low >>> 0, object.bucketCounts[i].high >>> 0).toNumber(true); + } + return message; + }; + Buckets.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.bucketCounts = []; + if (options2.defaults) + object.offset = 0; + if (message.offset != null && message.hasOwnProperty("offset")) + object.offset = message.offset; + if (message.bucketCounts && message.bucketCounts.length) { + object.bucketCounts = []; + for (var j = 0; j < message.bucketCounts.length; ++j) + if (typeof message.bucketCounts[j] === "number") + object.bucketCounts[j] = options2.longs === String ? String(message.bucketCounts[j]) : message.bucketCounts[j]; + else + object.bucketCounts[j] = options2.longs === String ? $util.Long.prototype.toString.call(message.bucketCounts[j]) : options2.longs === Number ? new $util.LongBits(message.bucketCounts[j].low >>> 0, message.bucketCounts[j].high >>> 0).toNumber(true) : message.bucketCounts[j]; + } + return object; + }; + Buckets.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Buckets.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets"; + }; + return Buckets; + }(); + return ExponentialHistogramDataPoint; + }(); + v1.SummaryDataPoint = function() { + function SummaryDataPoint(properties2) { + this.attributes = []; + this.quantileValues = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + SummaryDataPoint.prototype.attributes = $util.emptyArray; + SummaryDataPoint.prototype.startTimeUnixNano = null; + SummaryDataPoint.prototype.timeUnixNano = null; + SummaryDataPoint.prototype.count = null; + SummaryDataPoint.prototype.sum = null; + SummaryDataPoint.prototype.quantileValues = $util.emptyArray; + SummaryDataPoint.prototype.flags = null; + SummaryDataPoint.create = function create2(properties2) { + return new SummaryDataPoint(properties2); + }; + SummaryDataPoint.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.startTimeUnixNano != null && Object.hasOwnProperty.call(message, "startTimeUnixNano")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).fixed64(message.startTimeUnixNano); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 3, wireType 1 =*/ + 25 + ).fixed64(message.timeUnixNano); + if (message.count != null && Object.hasOwnProperty.call(message, "count")) + writer.uint32( + /* id 4, wireType 1 =*/ + 33 + ).fixed64(message.count); + if (message.sum != null && Object.hasOwnProperty.call(message, "sum")) + writer.uint32( + /* id 5, wireType 1 =*/ + 41 + ).double(message.sum); + if (message.quantileValues != null && message.quantileValues.length) + for (var i = 0; i < message.quantileValues.length; ++i) + $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.encode(message.quantileValues[i], writer.uint32( + /* id 6, wireType 2 =*/ + 50 + ).fork()).ldelim(); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).fork()).ldelim(); + if (message.flags != null && Object.hasOwnProperty.call(message, "flags")) + writer.uint32( + /* id 8, wireType 0 =*/ + 64 + ).uint32(message.flags); + return writer; + }; + SummaryDataPoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + SummaryDataPoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.SummaryDataPoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 7: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.startTimeUnixNano = reader.fixed64(); + break; + } + case 3: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 4: { + message.count = reader.fixed64(); + break; + } + case 5: { + message.sum = reader.double(); + break; + } + case 6: { + if (!(message.quantileValues && message.quantileValues.length)) + message.quantileValues = []; + message.quantileValues.push($root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.decode(reader, reader.uint32())); + break; + } + case 8: { + message.flags = reader.uint32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + SummaryDataPoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + SummaryDataPoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) { + if (!$util.isInteger(message.startTimeUnixNano) && !(message.startTimeUnixNano && $util.isInteger(message.startTimeUnixNano.low) && $util.isInteger(message.startTimeUnixNano.high))) + return "startTimeUnixNano: integer|Long expected"; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.count != null && message.hasOwnProperty("count")) { + if (!$util.isInteger(message.count) && !(message.count && $util.isInteger(message.count.low) && $util.isInteger(message.count.high))) + return "count: integer|Long expected"; + } + if (message.sum != null && message.hasOwnProperty("sum")) { + if (typeof message.sum !== "number") + return "sum: number expected"; + } + if (message.quantileValues != null && message.hasOwnProperty("quantileValues")) { + if (!Array.isArray(message.quantileValues)) + return "quantileValues: array expected"; + for (var i = 0; i < message.quantileValues.length; ++i) { + var error = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.verify(message.quantileValues[i]); + if (error) + return "quantileValues." + error; + } + } + if (message.flags != null && message.hasOwnProperty("flags")) { + if (!$util.isInteger(message.flags)) + return "flags: integer expected"; + } + return null; + }; + SummaryDataPoint.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.SummaryDataPoint) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.SummaryDataPoint(); + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.metrics.v1.SummaryDataPoint.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.SummaryDataPoint.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.startTimeUnixNano != null) { + if ($util.Long) + (message.startTimeUnixNano = $util.Long.fromValue(object.startTimeUnixNano)).unsigned = false; + else if (typeof object.startTimeUnixNano === "string") + message.startTimeUnixNano = parseInt(object.startTimeUnixNano, 10); + else if (typeof object.startTimeUnixNano === "number") + message.startTimeUnixNano = object.startTimeUnixNano; + else if (typeof object.startTimeUnixNano === "object") + message.startTimeUnixNano = new $util.LongBits(object.startTimeUnixNano.low >>> 0, object.startTimeUnixNano.high >>> 0).toNumber(); + } + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.count != null) { + if ($util.Long) + (message.count = $util.Long.fromValue(object.count)).unsigned = false; + else if (typeof object.count === "string") + message.count = parseInt(object.count, 10); + else if (typeof object.count === "number") + message.count = object.count; + else if (typeof object.count === "object") + message.count = new $util.LongBits(object.count.low >>> 0, object.count.high >>> 0).toNumber(); + } + if (object.sum != null) + message.sum = Number(object.sum); + if (object.quantileValues) { + if (!Array.isArray(object.quantileValues)) + throw TypeError(".opentelemetry.proto.metrics.v1.SummaryDataPoint.quantileValues: array expected"); + message.quantileValues = []; + for (var i = 0; i < object.quantileValues.length; ++i) { + if (typeof object.quantileValues[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.SummaryDataPoint.quantileValues: object expected"); + message.quantileValues[i] = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.fromObject(object.quantileValues[i]); + } + } + if (object.flags != null) + message.flags = object.flags >>> 0; + return message; + }; + SummaryDataPoint.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) { + object.quantileValues = []; + object.attributes = []; + } + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.startTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.startTimeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.count = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.count = options2.longs === String ? "0" : 0; + object.sum = 0; + object.flags = 0; + } + if (message.startTimeUnixNano != null && message.hasOwnProperty("startTimeUnixNano")) + if (typeof message.startTimeUnixNano === "number") + object.startTimeUnixNano = options2.longs === String ? String(message.startTimeUnixNano) : message.startTimeUnixNano; + else + object.startTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.startTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.startTimeUnixNano.low >>> 0, message.startTimeUnixNano.high >>> 0).toNumber() : message.startTimeUnixNano; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.count != null && message.hasOwnProperty("count")) + if (typeof message.count === "number") + object.count = options2.longs === String ? String(message.count) : message.count; + else + object.count = options2.longs === String ? $util.Long.prototype.toString.call(message.count) : options2.longs === Number ? new $util.LongBits(message.count.low >>> 0, message.count.high >>> 0).toNumber() : message.count; + if (message.sum != null && message.hasOwnProperty("sum")) + object.sum = options2.json && !isFinite(message.sum) ? String(message.sum) : message.sum; + if (message.quantileValues && message.quantileValues.length) { + object.quantileValues = []; + for (var j = 0; j < message.quantileValues.length; ++j) + object.quantileValues[j] = $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.toObject(message.quantileValues[j], options2); + } + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.flags != null && message.hasOwnProperty("flags")) + object.flags = message.flags; + return object; + }; + SummaryDataPoint.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + SummaryDataPoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.SummaryDataPoint"; + }; + SummaryDataPoint.ValueAtQuantile = function() { + function ValueAtQuantile(properties2) { + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ValueAtQuantile.prototype.quantile = null; + ValueAtQuantile.prototype.value = null; + ValueAtQuantile.create = function create2(properties2) { + return new ValueAtQuantile(properties2); + }; + ValueAtQuantile.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.quantile != null && Object.hasOwnProperty.call(message, "quantile")) + writer.uint32( + /* id 1, wireType 1 =*/ + 9 + ).double(message.quantile); + if (message.value != null && Object.hasOwnProperty.call(message, "value")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).double(message.value); + return writer; + }; + ValueAtQuantile.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ValueAtQuantile.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.quantile = reader.double(); + break; + } + case 2: { + message.value = reader.double(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ValueAtQuantile.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ValueAtQuantile.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.quantile != null && message.hasOwnProperty("quantile")) { + if (typeof message.quantile !== "number") + return "quantile: number expected"; + } + if (message.value != null && message.hasOwnProperty("value")) { + if (typeof message.value !== "number") + return "value: number expected"; + } + return null; + }; + ValueAtQuantile.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile(); + if (object.quantile != null) + message.quantile = Number(object.quantile); + if (object.value != null) + message.value = Number(object.value); + return message; + }; + ValueAtQuantile.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.defaults) { + object.quantile = 0; + object.value = 0; + } + if (message.quantile != null && message.hasOwnProperty("quantile")) + object.quantile = options2.json && !isFinite(message.quantile) ? String(message.quantile) : message.quantile; + if (message.value != null && message.hasOwnProperty("value")) + object.value = options2.json && !isFinite(message.value) ? String(message.value) : message.value; + return object; + }; + ValueAtQuantile.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ValueAtQuantile.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile"; + }; + return ValueAtQuantile; + }(); + return SummaryDataPoint; + }(); + v1.Exemplar = function() { + function Exemplar(properties2) { + this.filteredAttributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + Exemplar.prototype.filteredAttributes = $util.emptyArray; + Exemplar.prototype.timeUnixNano = null; + Exemplar.prototype.asDouble = null; + Exemplar.prototype.asInt = null; + Exemplar.prototype.spanId = null; + Exemplar.prototype.traceId = null; + var $oneOfFields; + Object.defineProperty(Exemplar.prototype, "value", { + get: $util.oneOfGetter($oneOfFields = ["asDouble", "asInt"]), + set: $util.oneOfSetter($oneOfFields) + }); + Exemplar.create = function create2(properties2) { + return new Exemplar(properties2); + }; + Exemplar.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 2, wireType 1 =*/ + 17 + ).fixed64(message.timeUnixNano); + if (message.asDouble != null && Object.hasOwnProperty.call(message, "asDouble")) + writer.uint32( + /* id 3, wireType 1 =*/ + 25 + ).double(message.asDouble); + if (message.spanId != null && Object.hasOwnProperty.call(message, "spanId")) + writer.uint32( + /* id 4, wireType 2 =*/ + 34 + ).bytes(message.spanId); + if (message.traceId != null && Object.hasOwnProperty.call(message, "traceId")) + writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).bytes(message.traceId); + if (message.asInt != null && Object.hasOwnProperty.call(message, "asInt")) + writer.uint32( + /* id 6, wireType 1 =*/ + 49 + ).sfixed64(message.asInt); + if (message.filteredAttributes != null && message.filteredAttributes.length) + for (var i = 0; i < message.filteredAttributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.filteredAttributes[i], writer.uint32( + /* id 7, wireType 2 =*/ + 58 + ).fork()).ldelim(); + return writer; + }; + Exemplar.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + Exemplar.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.metrics.v1.Exemplar(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 7: { + if (!(message.filteredAttributes && message.filteredAttributes.length)) + message.filteredAttributes = []; + message.filteredAttributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 3: { + message.asDouble = reader.double(); + break; + } + case 6: { + message.asInt = reader.sfixed64(); + break; + } + case 4: { + message.spanId = reader.bytes(); + break; + } + case 5: { + message.traceId = reader.bytes(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + Exemplar.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + Exemplar.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties2 = {}; + if (message.filteredAttributes != null && message.hasOwnProperty("filteredAttributes")) { + if (!Array.isArray(message.filteredAttributes)) + return "filteredAttributes: array expected"; + for (var i = 0; i < message.filteredAttributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.filteredAttributes[i]); + if (error) + return "filteredAttributes." + error; + } + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.asDouble != null && message.hasOwnProperty("asDouble")) { + properties2.value = 1; + if (typeof message.asDouble !== "number") + return "asDouble: number expected"; + } + if (message.asInt != null && message.hasOwnProperty("asInt")) { + if (properties2.value === 1) + return "value: multiple values"; + properties2.value = 1; + if (!$util.isInteger(message.asInt) && !(message.asInt && $util.isInteger(message.asInt.low) && $util.isInteger(message.asInt.high))) + return "asInt: integer|Long expected"; + } + if (message.spanId != null && message.hasOwnProperty("spanId")) { + if (!(message.spanId && typeof message.spanId.length === "number" || $util.isString(message.spanId))) + return "spanId: buffer expected"; + } + if (message.traceId != null && message.hasOwnProperty("traceId")) { + if (!(message.traceId && typeof message.traceId.length === "number" || $util.isString(message.traceId))) + return "traceId: buffer expected"; + } + return null; + }; + Exemplar.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.metrics.v1.Exemplar) + return object; + var message = new $root.opentelemetry.proto.metrics.v1.Exemplar(); + if (object.filteredAttributes) { + if (!Array.isArray(object.filteredAttributes)) + throw TypeError(".opentelemetry.proto.metrics.v1.Exemplar.filteredAttributes: array expected"); + message.filteredAttributes = []; + for (var i = 0; i < object.filteredAttributes.length; ++i) { + if (typeof object.filteredAttributes[i] !== "object") + throw TypeError(".opentelemetry.proto.metrics.v1.Exemplar.filteredAttributes: object expected"); + message.filteredAttributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.filteredAttributes[i]); + } + } + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.asDouble != null) + message.asDouble = Number(object.asDouble); + if (object.asInt != null) { + if ($util.Long) + (message.asInt = $util.Long.fromValue(object.asInt)).unsigned = false; + else if (typeof object.asInt === "string") + message.asInt = parseInt(object.asInt, 10); + else if (typeof object.asInt === "number") + message.asInt = object.asInt; + else if (typeof object.asInt === "object") + message.asInt = new $util.LongBits(object.asInt.low >>> 0, object.asInt.high >>> 0).toNumber(); + } + if (object.spanId != null) { + if (typeof object.spanId === "string") + $util.base64.decode(object.spanId, message.spanId = $util.newBuffer($util.base64.length(object.spanId)), 0); + else if (object.spanId.length >= 0) + message.spanId = object.spanId; + } + if (object.traceId != null) { + if (typeof object.traceId === "string") + $util.base64.decode(object.traceId, message.traceId = $util.newBuffer($util.base64.length(object.traceId)), 0); + else if (object.traceId.length >= 0) + message.traceId = object.traceId; + } + return message; + }; + Exemplar.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.filteredAttributes = []; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + if (options2.bytes === String) + object.spanId = ""; + else { + object.spanId = []; + if (options2.bytes !== Array) + object.spanId = $util.newBuffer(object.spanId); + } + if (options2.bytes === String) + object.traceId = ""; + else { + object.traceId = []; + if (options2.bytes !== Array) + object.traceId = $util.newBuffer(object.traceId); + } + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.asDouble != null && message.hasOwnProperty("asDouble")) { + object.asDouble = options2.json && !isFinite(message.asDouble) ? String(message.asDouble) : message.asDouble; + if (options2.oneofs) + object.value = "asDouble"; + } + if (message.spanId != null && message.hasOwnProperty("spanId")) + object.spanId = options2.bytes === String ? $util.base64.encode(message.spanId, 0, message.spanId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.spanId) : message.spanId; + if (message.traceId != null && message.hasOwnProperty("traceId")) + object.traceId = options2.bytes === String ? $util.base64.encode(message.traceId, 0, message.traceId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.traceId) : message.traceId; + if (message.asInt != null && message.hasOwnProperty("asInt")) { + if (typeof message.asInt === "number") + object.asInt = options2.longs === String ? String(message.asInt) : message.asInt; + else + object.asInt = options2.longs === String ? $util.Long.prototype.toString.call(message.asInt) : options2.longs === Number ? new $util.LongBits(message.asInt.low >>> 0, message.asInt.high >>> 0).toNumber() : message.asInt; + if (options2.oneofs) + object.value = "asInt"; + } + if (message.filteredAttributes && message.filteredAttributes.length) { + object.filteredAttributes = []; + for (var j = 0; j < message.filteredAttributes.length; ++j) + object.filteredAttributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.filteredAttributes[j], options2); + } + return object; + }; + Exemplar.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + Exemplar.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.metrics.v1.Exemplar"; + }; + return Exemplar; + }(); + return v1; + }(); + return metrics; + }(); + proto.logs = function() { + var logs = {}; + logs.v1 = function() { + var v1 = {}; + v1.LogsData = function() { + function LogsData(properties2) { + this.resourceLogs = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + LogsData.prototype.resourceLogs = $util.emptyArray; + LogsData.create = function create2(properties2) { + return new LogsData(properties2); + }; + LogsData.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLogs != null && message.resourceLogs.length) + for (var i = 0; i < message.resourceLogs.length; ++i) + $root.opentelemetry.proto.logs.v1.ResourceLogs.encode(message.resourceLogs[i], writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + return writer; + }; + LogsData.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + LogsData.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.logs.v1.LogsData(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.resourceLogs && message.resourceLogs.length)) + message.resourceLogs = []; + message.resourceLogs.push($root.opentelemetry.proto.logs.v1.ResourceLogs.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + LogsData.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + LogsData.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLogs != null && message.hasOwnProperty("resourceLogs")) { + if (!Array.isArray(message.resourceLogs)) + return "resourceLogs: array expected"; + for (var i = 0; i < message.resourceLogs.length; ++i) { + var error = $root.opentelemetry.proto.logs.v1.ResourceLogs.verify(message.resourceLogs[i]); + if (error) + return "resourceLogs." + error; + } + } + return null; + }; + LogsData.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.logs.v1.LogsData) + return object; + var message = new $root.opentelemetry.proto.logs.v1.LogsData(); + if (object.resourceLogs) { + if (!Array.isArray(object.resourceLogs)) + throw TypeError(".opentelemetry.proto.logs.v1.LogsData.resourceLogs: array expected"); + message.resourceLogs = []; + for (var i = 0; i < object.resourceLogs.length; ++i) { + if (typeof object.resourceLogs[i] !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.LogsData.resourceLogs: object expected"); + message.resourceLogs[i] = $root.opentelemetry.proto.logs.v1.ResourceLogs.fromObject(object.resourceLogs[i]); + } + } + return message; + }; + LogsData.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.resourceLogs = []; + if (message.resourceLogs && message.resourceLogs.length) { + object.resourceLogs = []; + for (var j = 0; j < message.resourceLogs.length; ++j) + object.resourceLogs[j] = $root.opentelemetry.proto.logs.v1.ResourceLogs.toObject(message.resourceLogs[j], options2); + } + return object; + }; + LogsData.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + LogsData.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.logs.v1.LogsData"; + }; + return LogsData; + }(); + v1.ResourceLogs = function() { + function ResourceLogs(properties2) { + this.scopeLogs = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ResourceLogs.prototype.resource = null; + ResourceLogs.prototype.scopeLogs = $util.emptyArray; + ResourceLogs.prototype.schemaUrl = null; + ResourceLogs.create = function create2(properties2) { + return new ResourceLogs(properties2); + }; + ResourceLogs.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.opentelemetry.proto.resource.v1.Resource.encode(message.resource, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.scopeLogs != null && message.scopeLogs.length) + for (var i = 0; i < message.scopeLogs.length; ++i) + $root.opentelemetry.proto.logs.v1.ScopeLogs.encode(message.scopeLogs[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ResourceLogs.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ResourceLogs.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.logs.v1.ResourceLogs(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.resource = $root.opentelemetry.proto.resource.v1.Resource.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.scopeLogs && message.scopeLogs.length)) + message.scopeLogs = []; + message.scopeLogs.push($root.opentelemetry.proto.logs.v1.ScopeLogs.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ResourceLogs.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ResourceLogs.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.opentelemetry.proto.resource.v1.Resource.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.scopeLogs != null && message.hasOwnProperty("scopeLogs")) { + if (!Array.isArray(message.scopeLogs)) + return "scopeLogs: array expected"; + for (var i = 0; i < message.scopeLogs.length; ++i) { + var error = $root.opentelemetry.proto.logs.v1.ScopeLogs.verify(message.scopeLogs[i]); + if (error) + return "scopeLogs." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ResourceLogs.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.logs.v1.ResourceLogs) + return object; + var message = new $root.opentelemetry.proto.logs.v1.ResourceLogs(); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.ResourceLogs.resource: object expected"); + message.resource = $root.opentelemetry.proto.resource.v1.Resource.fromObject(object.resource); + } + if (object.scopeLogs) { + if (!Array.isArray(object.scopeLogs)) + throw TypeError(".opentelemetry.proto.logs.v1.ResourceLogs.scopeLogs: array expected"); + message.scopeLogs = []; + for (var i = 0; i < object.scopeLogs.length; ++i) { + if (typeof object.scopeLogs[i] !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.ResourceLogs.scopeLogs: object expected"); + message.scopeLogs[i] = $root.opentelemetry.proto.logs.v1.ScopeLogs.fromObject(object.scopeLogs[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ResourceLogs.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.scopeLogs = []; + if (options2.defaults) { + object.resource = null; + object.schemaUrl = ""; + } + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.opentelemetry.proto.resource.v1.Resource.toObject(message.resource, options2); + if (message.scopeLogs && message.scopeLogs.length) { + object.scopeLogs = []; + for (var j = 0; j < message.scopeLogs.length; ++j) + object.scopeLogs[j] = $root.opentelemetry.proto.logs.v1.ScopeLogs.toObject(message.scopeLogs[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ResourceLogs.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ResourceLogs.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.logs.v1.ResourceLogs"; + }; + return ResourceLogs; + }(); + v1.ScopeLogs = function() { + function ScopeLogs(properties2) { + this.logRecords = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + ScopeLogs.prototype.scope = null; + ScopeLogs.prototype.logRecords = $util.emptyArray; + ScopeLogs.prototype.schemaUrl = null; + ScopeLogs.create = function create2(properties2) { + return new ScopeLogs(properties2); + }; + ScopeLogs.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.scope != null && Object.hasOwnProperty.call(message, "scope")) + $root.opentelemetry.proto.common.v1.InstrumentationScope.encode(message.scope, writer.uint32( + /* id 1, wireType 2 =*/ + 10 + ).fork()).ldelim(); + if (message.logRecords != null && message.logRecords.length) + for (var i = 0; i < message.logRecords.length; ++i) + $root.opentelemetry.proto.logs.v1.LogRecord.encode(message.logRecords[i], writer.uint32( + /* id 2, wireType 2 =*/ + 18 + ).fork()).ldelim(); + if (message.schemaUrl != null && Object.hasOwnProperty.call(message, "schemaUrl")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.schemaUrl); + return writer; + }; + ScopeLogs.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + ScopeLogs.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.logs.v1.ScopeLogs(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.decode(reader, reader.uint32()); + break; + } + case 2: { + if (!(message.logRecords && message.logRecords.length)) + message.logRecords = []; + message.logRecords.push($root.opentelemetry.proto.logs.v1.LogRecord.decode(reader, reader.uint32())); + break; + } + case 3: { + message.schemaUrl = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + ScopeLogs.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + ScopeLogs.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.scope != null && message.hasOwnProperty("scope")) { + var error = $root.opentelemetry.proto.common.v1.InstrumentationScope.verify(message.scope); + if (error) + return "scope." + error; + } + if (message.logRecords != null && message.hasOwnProperty("logRecords")) { + if (!Array.isArray(message.logRecords)) + return "logRecords: array expected"; + for (var i = 0; i < message.logRecords.length; ++i) { + var error = $root.opentelemetry.proto.logs.v1.LogRecord.verify(message.logRecords[i]); + if (error) + return "logRecords." + error; + } + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) { + if (!$util.isString(message.schemaUrl)) + return "schemaUrl: string expected"; + } + return null; + }; + ScopeLogs.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.logs.v1.ScopeLogs) + return object; + var message = new $root.opentelemetry.proto.logs.v1.ScopeLogs(); + if (object.scope != null) { + if (typeof object.scope !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.ScopeLogs.scope: object expected"); + message.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.fromObject(object.scope); + } + if (object.logRecords) { + if (!Array.isArray(object.logRecords)) + throw TypeError(".opentelemetry.proto.logs.v1.ScopeLogs.logRecords: array expected"); + message.logRecords = []; + for (var i = 0; i < object.logRecords.length; ++i) { + if (typeof object.logRecords[i] !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.ScopeLogs.logRecords: object expected"); + message.logRecords[i] = $root.opentelemetry.proto.logs.v1.LogRecord.fromObject(object.logRecords[i]); + } + } + if (object.schemaUrl != null) + message.schemaUrl = String(object.schemaUrl); + return message; + }; + ScopeLogs.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.logRecords = []; + if (options2.defaults) { + object.scope = null; + object.schemaUrl = ""; + } + if (message.scope != null && message.hasOwnProperty("scope")) + object.scope = $root.opentelemetry.proto.common.v1.InstrumentationScope.toObject(message.scope, options2); + if (message.logRecords && message.logRecords.length) { + object.logRecords = []; + for (var j = 0; j < message.logRecords.length; ++j) + object.logRecords[j] = $root.opentelemetry.proto.logs.v1.LogRecord.toObject(message.logRecords[j], options2); + } + if (message.schemaUrl != null && message.hasOwnProperty("schemaUrl")) + object.schemaUrl = message.schemaUrl; + return object; + }; + ScopeLogs.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + ScopeLogs.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.logs.v1.ScopeLogs"; + }; + return ScopeLogs; + }(); + v1.SeverityNumber = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SEVERITY_NUMBER_UNSPECIFIED"] = 0; + values[valuesById[1] = "SEVERITY_NUMBER_TRACE"] = 1; + values[valuesById[2] = "SEVERITY_NUMBER_TRACE2"] = 2; + values[valuesById[3] = "SEVERITY_NUMBER_TRACE3"] = 3; + values[valuesById[4] = "SEVERITY_NUMBER_TRACE4"] = 4; + values[valuesById[5] = "SEVERITY_NUMBER_DEBUG"] = 5; + values[valuesById[6] = "SEVERITY_NUMBER_DEBUG2"] = 6; + values[valuesById[7] = "SEVERITY_NUMBER_DEBUG3"] = 7; + values[valuesById[8] = "SEVERITY_NUMBER_DEBUG4"] = 8; + values[valuesById[9] = "SEVERITY_NUMBER_INFO"] = 9; + values[valuesById[10] = "SEVERITY_NUMBER_INFO2"] = 10; + values[valuesById[11] = "SEVERITY_NUMBER_INFO3"] = 11; + values[valuesById[12] = "SEVERITY_NUMBER_INFO4"] = 12; + values[valuesById[13] = "SEVERITY_NUMBER_WARN"] = 13; + values[valuesById[14] = "SEVERITY_NUMBER_WARN2"] = 14; + values[valuesById[15] = "SEVERITY_NUMBER_WARN3"] = 15; + values[valuesById[16] = "SEVERITY_NUMBER_WARN4"] = 16; + values[valuesById[17] = "SEVERITY_NUMBER_ERROR"] = 17; + values[valuesById[18] = "SEVERITY_NUMBER_ERROR2"] = 18; + values[valuesById[19] = "SEVERITY_NUMBER_ERROR3"] = 19; + values[valuesById[20] = "SEVERITY_NUMBER_ERROR4"] = 20; + values[valuesById[21] = "SEVERITY_NUMBER_FATAL"] = 21; + values[valuesById[22] = "SEVERITY_NUMBER_FATAL2"] = 22; + values[valuesById[23] = "SEVERITY_NUMBER_FATAL3"] = 23; + values[valuesById[24] = "SEVERITY_NUMBER_FATAL4"] = 24; + return values; + }(); + v1.LogRecordFlags = function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "LOG_RECORD_FLAGS_DO_NOT_USE"] = 0; + values[valuesById[255] = "LOG_RECORD_FLAGS_TRACE_FLAGS_MASK"] = 255; + return values; + }(); + v1.LogRecord = function() { + function LogRecord(properties2) { + this.attributes = []; + if (properties2) { + for (var keys = Object.keys(properties2), i = 0; i < keys.length; ++i) + if (properties2[keys[i]] != null) + this[keys[i]] = properties2[keys[i]]; + } + } + LogRecord.prototype.timeUnixNano = null; + LogRecord.prototype.observedTimeUnixNano = null; + LogRecord.prototype.severityNumber = null; + LogRecord.prototype.severityText = null; + LogRecord.prototype.body = null; + LogRecord.prototype.attributes = $util.emptyArray; + LogRecord.prototype.droppedAttributesCount = null; + LogRecord.prototype.flags = null; + LogRecord.prototype.traceId = null; + LogRecord.prototype.spanId = null; + LogRecord.create = function create2(properties2) { + return new LogRecord(properties2); + }; + LogRecord.encode = function encode3(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.timeUnixNano != null && Object.hasOwnProperty.call(message, "timeUnixNano")) + writer.uint32( + /* id 1, wireType 1 =*/ + 9 + ).fixed64(message.timeUnixNano); + if (message.severityNumber != null && Object.hasOwnProperty.call(message, "severityNumber")) + writer.uint32( + /* id 2, wireType 0 =*/ + 16 + ).int32(message.severityNumber); + if (message.severityText != null && Object.hasOwnProperty.call(message, "severityText")) + writer.uint32( + /* id 3, wireType 2 =*/ + 26 + ).string(message.severityText); + if (message.body != null && Object.hasOwnProperty.call(message, "body")) + $root.opentelemetry.proto.common.v1.AnyValue.encode(message.body, writer.uint32( + /* id 5, wireType 2 =*/ + 42 + ).fork()).ldelim(); + if (message.attributes != null && message.attributes.length) + for (var i = 0; i < message.attributes.length; ++i) + $root.opentelemetry.proto.common.v1.KeyValue.encode(message.attributes[i], writer.uint32( + /* id 6, wireType 2 =*/ + 50 + ).fork()).ldelim(); + if (message.droppedAttributesCount != null && Object.hasOwnProperty.call(message, "droppedAttributesCount")) + writer.uint32( + /* id 7, wireType 0 =*/ + 56 + ).uint32(message.droppedAttributesCount); + if (message.flags != null && Object.hasOwnProperty.call(message, "flags")) + writer.uint32( + /* id 8, wireType 5 =*/ + 69 + ).fixed32(message.flags); + if (message.traceId != null && Object.hasOwnProperty.call(message, "traceId")) + writer.uint32( + /* id 9, wireType 2 =*/ + 74 + ).bytes(message.traceId); + if (message.spanId != null && Object.hasOwnProperty.call(message, "spanId")) + writer.uint32( + /* id 10, wireType 2 =*/ + 82 + ).bytes(message.spanId); + if (message.observedTimeUnixNano != null && Object.hasOwnProperty.call(message, "observedTimeUnixNano")) + writer.uint32( + /* id 11, wireType 1 =*/ + 89 + ).fixed64(message.observedTimeUnixNano); + return writer; + }; + LogRecord.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + LogRecord.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === void 0 ? reader.len : reader.pos + length, message = new $root.opentelemetry.proto.logs.v1.LogRecord(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.timeUnixNano = reader.fixed64(); + break; + } + case 11: { + message.observedTimeUnixNano = reader.fixed64(); + break; + } + case 2: { + message.severityNumber = reader.int32(); + break; + } + case 3: { + message.severityText = reader.string(); + break; + } + case 5: { + message.body = $root.opentelemetry.proto.common.v1.AnyValue.decode(reader, reader.uint32()); + break; + } + case 6: { + if (!(message.attributes && message.attributes.length)) + message.attributes = []; + message.attributes.push($root.opentelemetry.proto.common.v1.KeyValue.decode(reader, reader.uint32())); + break; + } + case 7: { + message.droppedAttributesCount = reader.uint32(); + break; + } + case 8: { + message.flags = reader.fixed32(); + break; + } + case 9: { + message.traceId = reader.bytes(); + break; + } + case 10: { + message.spanId = reader.bytes(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + LogRecord.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + LogRecord.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) { + if (!$util.isInteger(message.timeUnixNano) && !(message.timeUnixNano && $util.isInteger(message.timeUnixNano.low) && $util.isInteger(message.timeUnixNano.high))) + return "timeUnixNano: integer|Long expected"; + } + if (message.observedTimeUnixNano != null && message.hasOwnProperty("observedTimeUnixNano")) { + if (!$util.isInteger(message.observedTimeUnixNano) && !(message.observedTimeUnixNano && $util.isInteger(message.observedTimeUnixNano.low) && $util.isInteger(message.observedTimeUnixNano.high))) + return "observedTimeUnixNano: integer|Long expected"; + } + if (message.severityNumber != null && message.hasOwnProperty("severityNumber")) + switch (message.severityNumber) { + default: + return "severityNumber: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + case 12: + case 13: + case 14: + case 15: + case 16: + case 17: + case 18: + case 19: + case 20: + case 21: + case 22: + case 23: + case 24: + break; + } + if (message.severityText != null && message.hasOwnProperty("severityText")) { + if (!$util.isString(message.severityText)) + return "severityText: string expected"; + } + if (message.body != null && message.hasOwnProperty("body")) { + var error = $root.opentelemetry.proto.common.v1.AnyValue.verify(message.body); + if (error) + return "body." + error; + } + if (message.attributes != null && message.hasOwnProperty("attributes")) { + if (!Array.isArray(message.attributes)) + return "attributes: array expected"; + for (var i = 0; i < message.attributes.length; ++i) { + var error = $root.opentelemetry.proto.common.v1.KeyValue.verify(message.attributes[i]); + if (error) + return "attributes." + error; + } + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) { + if (!$util.isInteger(message.droppedAttributesCount)) + return "droppedAttributesCount: integer expected"; + } + if (message.flags != null && message.hasOwnProperty("flags")) { + if (!$util.isInteger(message.flags)) + return "flags: integer expected"; + } + if (message.traceId != null && message.hasOwnProperty("traceId")) { + if (!(message.traceId && typeof message.traceId.length === "number" || $util.isString(message.traceId))) + return "traceId: buffer expected"; + } + if (message.spanId != null && message.hasOwnProperty("spanId")) { + if (!(message.spanId && typeof message.spanId.length === "number" || $util.isString(message.spanId))) + return "spanId: buffer expected"; + } + return null; + }; + LogRecord.fromObject = function fromObject(object) { + if (object instanceof $root.opentelemetry.proto.logs.v1.LogRecord) + return object; + var message = new $root.opentelemetry.proto.logs.v1.LogRecord(); + if (object.timeUnixNano != null) { + if ($util.Long) + (message.timeUnixNano = $util.Long.fromValue(object.timeUnixNano)).unsigned = false; + else if (typeof object.timeUnixNano === "string") + message.timeUnixNano = parseInt(object.timeUnixNano, 10); + else if (typeof object.timeUnixNano === "number") + message.timeUnixNano = object.timeUnixNano; + else if (typeof object.timeUnixNano === "object") + message.timeUnixNano = new $util.LongBits(object.timeUnixNano.low >>> 0, object.timeUnixNano.high >>> 0).toNumber(); + } + if (object.observedTimeUnixNano != null) { + if ($util.Long) + (message.observedTimeUnixNano = $util.Long.fromValue(object.observedTimeUnixNano)).unsigned = false; + else if (typeof object.observedTimeUnixNano === "string") + message.observedTimeUnixNano = parseInt(object.observedTimeUnixNano, 10); + else if (typeof object.observedTimeUnixNano === "number") + message.observedTimeUnixNano = object.observedTimeUnixNano; + else if (typeof object.observedTimeUnixNano === "object") + message.observedTimeUnixNano = new $util.LongBits(object.observedTimeUnixNano.low >>> 0, object.observedTimeUnixNano.high >>> 0).toNumber(); + } + switch (object.severityNumber) { + default: + if (typeof object.severityNumber === "number") { + message.severityNumber = object.severityNumber; + break; + } + break; + case "SEVERITY_NUMBER_UNSPECIFIED": + case 0: + message.severityNumber = 0; + break; + case "SEVERITY_NUMBER_TRACE": + case 1: + message.severityNumber = 1; + break; + case "SEVERITY_NUMBER_TRACE2": + case 2: + message.severityNumber = 2; + break; + case "SEVERITY_NUMBER_TRACE3": + case 3: + message.severityNumber = 3; + break; + case "SEVERITY_NUMBER_TRACE4": + case 4: + message.severityNumber = 4; + break; + case "SEVERITY_NUMBER_DEBUG": + case 5: + message.severityNumber = 5; + break; + case "SEVERITY_NUMBER_DEBUG2": + case 6: + message.severityNumber = 6; + break; + case "SEVERITY_NUMBER_DEBUG3": + case 7: + message.severityNumber = 7; + break; + case "SEVERITY_NUMBER_DEBUG4": + case 8: + message.severityNumber = 8; + break; + case "SEVERITY_NUMBER_INFO": + case 9: + message.severityNumber = 9; + break; + case "SEVERITY_NUMBER_INFO2": + case 10: + message.severityNumber = 10; + break; + case "SEVERITY_NUMBER_INFO3": + case 11: + message.severityNumber = 11; + break; + case "SEVERITY_NUMBER_INFO4": + case 12: + message.severityNumber = 12; + break; + case "SEVERITY_NUMBER_WARN": + case 13: + message.severityNumber = 13; + break; + case "SEVERITY_NUMBER_WARN2": + case 14: + message.severityNumber = 14; + break; + case "SEVERITY_NUMBER_WARN3": + case 15: + message.severityNumber = 15; + break; + case "SEVERITY_NUMBER_WARN4": + case 16: + message.severityNumber = 16; + break; + case "SEVERITY_NUMBER_ERROR": + case 17: + message.severityNumber = 17; + break; + case "SEVERITY_NUMBER_ERROR2": + case 18: + message.severityNumber = 18; + break; + case "SEVERITY_NUMBER_ERROR3": + case 19: + message.severityNumber = 19; + break; + case "SEVERITY_NUMBER_ERROR4": + case 20: + message.severityNumber = 20; + break; + case "SEVERITY_NUMBER_FATAL": + case 21: + message.severityNumber = 21; + break; + case "SEVERITY_NUMBER_FATAL2": + case 22: + message.severityNumber = 22; + break; + case "SEVERITY_NUMBER_FATAL3": + case 23: + message.severityNumber = 23; + break; + case "SEVERITY_NUMBER_FATAL4": + case 24: + message.severityNumber = 24; + break; + } + if (object.severityText != null) + message.severityText = String(object.severityText); + if (object.body != null) { + if (typeof object.body !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.LogRecord.body: object expected"); + message.body = $root.opentelemetry.proto.common.v1.AnyValue.fromObject(object.body); + } + if (object.attributes) { + if (!Array.isArray(object.attributes)) + throw TypeError(".opentelemetry.proto.logs.v1.LogRecord.attributes: array expected"); + message.attributes = []; + for (var i = 0; i < object.attributes.length; ++i) { + if (typeof object.attributes[i] !== "object") + throw TypeError(".opentelemetry.proto.logs.v1.LogRecord.attributes: object expected"); + message.attributes[i] = $root.opentelemetry.proto.common.v1.KeyValue.fromObject(object.attributes[i]); + } + } + if (object.droppedAttributesCount != null) + message.droppedAttributesCount = object.droppedAttributesCount >>> 0; + if (object.flags != null) + message.flags = object.flags >>> 0; + if (object.traceId != null) { + if (typeof object.traceId === "string") + $util.base64.decode(object.traceId, message.traceId = $util.newBuffer($util.base64.length(object.traceId)), 0); + else if (object.traceId.length >= 0) + message.traceId = object.traceId; + } + if (object.spanId != null) { + if (typeof object.spanId === "string") + $util.base64.decode(object.spanId, message.spanId = $util.newBuffer($util.base64.length(object.spanId)), 0); + else if (object.spanId.length >= 0) + message.spanId = object.spanId; + } + return message; + }; + LogRecord.toObject = function toObject(message, options2) { + if (!options2) + options2 = {}; + var object = {}; + if (options2.arrays || options2.defaults) + object.attributes = []; + if (options2.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.timeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.timeUnixNano = options2.longs === String ? "0" : 0; + object.severityNumber = options2.enums === String ? "SEVERITY_NUMBER_UNSPECIFIED" : 0; + object.severityText = ""; + object.body = null; + object.droppedAttributesCount = 0; + object.flags = 0; + if (options2.bytes === String) + object.traceId = ""; + else { + object.traceId = []; + if (options2.bytes !== Array) + object.traceId = $util.newBuffer(object.traceId); + } + if (options2.bytes === String) + object.spanId = ""; + else { + object.spanId = []; + if (options2.bytes !== Array) + object.spanId = $util.newBuffer(object.spanId); + } + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.observedTimeUnixNano = options2.longs === String ? long.toString() : options2.longs === Number ? long.toNumber() : long; + } else + object.observedTimeUnixNano = options2.longs === String ? "0" : 0; + } + if (message.timeUnixNano != null && message.hasOwnProperty("timeUnixNano")) + if (typeof message.timeUnixNano === "number") + object.timeUnixNano = options2.longs === String ? String(message.timeUnixNano) : message.timeUnixNano; + else + object.timeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.timeUnixNano) : options2.longs === Number ? new $util.LongBits(message.timeUnixNano.low >>> 0, message.timeUnixNano.high >>> 0).toNumber() : message.timeUnixNano; + if (message.severityNumber != null && message.hasOwnProperty("severityNumber")) + object.severityNumber = options2.enums === String ? $root.opentelemetry.proto.logs.v1.SeverityNumber[message.severityNumber] === void 0 ? message.severityNumber : $root.opentelemetry.proto.logs.v1.SeverityNumber[message.severityNumber] : message.severityNumber; + if (message.severityText != null && message.hasOwnProperty("severityText")) + object.severityText = message.severityText; + if (message.body != null && message.hasOwnProperty("body")) + object.body = $root.opentelemetry.proto.common.v1.AnyValue.toObject(message.body, options2); + if (message.attributes && message.attributes.length) { + object.attributes = []; + for (var j = 0; j < message.attributes.length; ++j) + object.attributes[j] = $root.opentelemetry.proto.common.v1.KeyValue.toObject(message.attributes[j], options2); + } + if (message.droppedAttributesCount != null && message.hasOwnProperty("droppedAttributesCount")) + object.droppedAttributesCount = message.droppedAttributesCount; + if (message.flags != null && message.hasOwnProperty("flags")) + object.flags = message.flags; + if (message.traceId != null && message.hasOwnProperty("traceId")) + object.traceId = options2.bytes === String ? $util.base64.encode(message.traceId, 0, message.traceId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.traceId) : message.traceId; + if (message.spanId != null && message.hasOwnProperty("spanId")) + object.spanId = options2.bytes === String ? $util.base64.encode(message.spanId, 0, message.spanId.length) : options2.bytes === Array ? Array.prototype.slice.call(message.spanId) : message.spanId; + if (message.observedTimeUnixNano != null && message.hasOwnProperty("observedTimeUnixNano")) + if (typeof message.observedTimeUnixNano === "number") + object.observedTimeUnixNano = options2.longs === String ? String(message.observedTimeUnixNano) : message.observedTimeUnixNano; + else + object.observedTimeUnixNano = options2.longs === String ? $util.Long.prototype.toString.call(message.observedTimeUnixNano) : options2.longs === Number ? new $util.LongBits(message.observedTimeUnixNano.low >>> 0, message.observedTimeUnixNano.high >>> 0).toNumber() : message.observedTimeUnixNano; + return object; + }; + LogRecord.prototype.toJSON = function toJSON2() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + LogRecord.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === void 0) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/opentelemetry.proto.logs.v1.LogRecord"; + }; + return LogRecord; + }(); + return v1; + }(); + return logs; + }(); + return proto; + }(); + return opentelemetry2; + }(); + module2.exports = $root; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/MetricsExportServiceClient.js +var require_MetricsExportServiceClient = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/MetricsExportServiceClient.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.MetricExportServiceClient = void 0; + var root = require_root3(); + var grpc = require_src25(); + var responseType = root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse; + var requestType = root.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest; + var metricsServiceDefinition = { + export: { + path: "/opentelemetry.proto.collector.metrics.v1.MetricsService/Export", + requestStream: false, + responseStream: false, + requestSerialize: (arg) => { + return Buffer.from(requestType.encode(arg).finish()); + }, + requestDeserialize: (arg) => { + return requestType.decode(arg); + }, + responseSerialize: (arg) => { + return Buffer.from(responseType.encode(arg).finish()); + }, + responseDeserialize: (arg) => { + return responseType.decode(arg); + } + } + }; + exports2.MetricExportServiceClient = grpc.makeGenericClientConstructor(metricsServiceDefinition, "MetricsExportService"); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/TraceExportServiceClient.js +var require_TraceExportServiceClient = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/TraceExportServiceClient.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TraceExportServiceClient = void 0; + var root = require_root3(); + var grpc = require_src25(); + var responseType = root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse; + var requestType = root.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest; + var traceServiceDefinition = { + export: { + path: "/opentelemetry.proto.collector.trace.v1.TraceService/Export", + requestStream: false, + responseStream: false, + requestSerialize: (arg) => { + return Buffer.from(requestType.encode(arg).finish()); + }, + requestDeserialize: (arg) => { + return requestType.decode(arg); + }, + responseSerialize: (arg) => { + return Buffer.from(responseType.encode(arg).finish()); + }, + responseDeserialize: (arg) => { + return responseType.decode(arg); + } + } + }; + exports2.TraceExportServiceClient = grpc.makeGenericClientConstructor(traceServiceDefinition, "TraceExportService"); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/LogsExportServiceClient.js +var require_LogsExportServiceClient = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/LogsExportServiceClient.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.LogsExportServiceClient = void 0; + var root = require_root3(); + var grpc = require_src25(); + var responseType = root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse; + var requestType = root.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest; + var logsServiceDefinition = { + export: { + path: "/opentelemetry.proto.collector.logs.v1.LogsService/Export", + requestStream: false, + responseStream: false, + requestSerialize: (arg) => { + return Buffer.from(requestType.encode(arg).finish()); + }, + requestDeserialize: (arg) => { + return requestType.decode(arg); + }, + responseSerialize: (arg) => { + return Buffer.from(responseType.encode(arg).finish()); + }, + responseDeserialize: (arg) => { + return responseType.decode(arg); + } + } + }; + exports2.LogsExportServiceClient = grpc.makeGenericClientConstructor(logsServiceDefinition, "LogsExportService"); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/util.js +var require_util12 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.configureCompression = exports2.GrpcCompressionAlgorithm = exports2.useSecureConnection = exports2.configureSecurity = exports2.validateAndNormalizeUrl = exports2.send = exports2.onInit = exports2.DEFAULT_COLLECTOR_URL = void 0; + var grpc = require_src25(); + var api_1 = require_src(); + var core_1 = require_src5(); + var path30 = require("path"); + var url_1 = require("url"); + var fs6 = require("fs"); + var types_1 = require_types21(); + var otlp_exporter_base_1 = require_src6(); + var MetricsExportServiceClient_1 = require_MetricsExportServiceClient(); + var TraceExportServiceClient_1 = require_TraceExportServiceClient(); + var LogsExportServiceClient_1 = require_LogsExportServiceClient(); + exports2.DEFAULT_COLLECTOR_URL = "http://localhost:4317"; + function onInit(collector, config) { + collector.grpcQueue = []; + const credentials = configureSecurity(config.credentials, collector.getUrlFromConfig(config)); + try { + if (collector.getServiceClientType() === types_1.ServiceClientType.SPANS) { + const client = new TraceExportServiceClient_1.TraceExportServiceClient(collector.url, credentials, { + "grpc.default_compression_algorithm": collector.compression.valueOf() + }); + collector.serviceClient = client; + } else if (collector.getServiceClientType() === types_1.ServiceClientType.METRICS) { + const client = new MetricsExportServiceClient_1.MetricExportServiceClient(collector.url, credentials, { + "grpc.default_compression_algorithm": collector.compression.valueOf() + }); + collector.serviceClient = client; + } else if (collector.getServiceClientType() === types_1.ServiceClientType.LOGS) { + const client = new LogsExportServiceClient_1.LogsExportServiceClient(collector.url, credentials, { + "grpc.default_compression_algorithm": collector.compression.valueOf() + }); + collector.serviceClient = client; + } + } catch (err2) { + (0, core_1.globalErrorHandler)(err2); + } + if (collector.grpcQueue.length > 0) { + const queue = collector.grpcQueue.splice(0); + queue.forEach((item) => { + collector.send(item.objects, item.onSuccess, item.onError); + }); + } + } + exports2.onInit = onInit; + function send(collector, objects, onSuccess, onError) { + if (collector.serviceClient) { + const serviceRequest = collector.convert(objects); + const deadline = Date.now() + collector.timeoutMillis; + collector.serviceClient.export(serviceRequest, collector.metadata || new grpc.Metadata(), { deadline }, (err2) => { + if (err2) { + api_1.diag.error("Service request", serviceRequest); + onError(err2); + } else { + api_1.diag.debug("Objects sent"); + onSuccess(); + } + }); + } else { + collector.grpcQueue.push({ + objects, + onSuccess, + onError + }); + } + } + exports2.send = send; + function validateAndNormalizeUrl(url2) { + var _a; + const hasProtocol = url2.match(/^([\w]{1,8}):\/\//); + if (!hasProtocol) { + url2 = `https://${url2}`; + } + const target = new url_1.URL(url2); + if (target.protocol === "unix:") { + return url2; + } + if (target.pathname && target.pathname !== "/") { + api_1.diag.warn("URL path should not be set when using grpc, the path part of the URL will be ignored."); + } + if (target.protocol !== "" && !((_a = target.protocol) === null || _a === void 0 ? void 0 : _a.match(/^(http)s?:$/))) { + api_1.diag.warn("URL protocol should be http(s)://. Using http://."); + } + return target.host; + } + exports2.validateAndNormalizeUrl = validateAndNormalizeUrl; + function configureSecurity(credentials, endpoint) { + let insecure; + if (credentials) { + return credentials; + } else if (endpoint.startsWith("https://")) { + insecure = false; + } else if (endpoint.startsWith("http://") || endpoint === exports2.DEFAULT_COLLECTOR_URL) { + insecure = true; + } else { + insecure = getSecurityFromEnv(); + } + if (insecure) { + return grpc.credentials.createInsecure(); + } else { + return useSecureConnection(); + } + } + exports2.configureSecurity = configureSecurity; + function getSecurityFromEnv() { + const definedInsecure = (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_INSECURE || (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_INSECURE; + if (definedInsecure) { + return definedInsecure.toLowerCase() === "true"; + } else { + return false; + } + } + function useSecureConnection() { + const rootCertPath = retrieveRootCert(); + const privateKeyPath = retrievePrivateKey(); + const certChainPath = retrieveCertChain(); + return grpc.credentials.createSsl(rootCertPath, privateKeyPath, certChainPath); + } + exports2.useSecureConnection = useSecureConnection; + function retrieveRootCert() { + const rootCertificate = (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE || (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_CERTIFICATE; + if (rootCertificate) { + try { + return fs6.readFileSync(path30.resolve(process.cwd(), rootCertificate)); + } catch (_a) { + api_1.diag.warn("Failed to read root certificate file"); + return void 0; + } + } else { + return void 0; + } + } + function retrievePrivateKey() { + const clientKey = (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY || (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_CLIENT_KEY; + if (clientKey) { + try { + return fs6.readFileSync(path30.resolve(process.cwd(), clientKey)); + } catch (_a) { + api_1.diag.warn("Failed to read client certificate private key file"); + return void 0; + } + } else { + return void 0; + } + } + function retrieveCertChain() { + const clientChain = (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE || (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE; + if (clientChain) { + try { + return fs6.readFileSync(path30.resolve(process.cwd(), clientChain)); + } catch (_a) { + api_1.diag.warn("Failed to read client certificate chain file"); + return void 0; + } + } else { + return void 0; + } + } + function toGrpcCompression(compression) { + if (compression === otlp_exporter_base_1.CompressionAlgorithm.NONE) + return GrpcCompressionAlgorithm.NONE; + else if (compression === otlp_exporter_base_1.CompressionAlgorithm.GZIP) + return GrpcCompressionAlgorithm.GZIP; + return GrpcCompressionAlgorithm.NONE; + } + var GrpcCompressionAlgorithm; + (function(GrpcCompressionAlgorithm2) { + GrpcCompressionAlgorithm2[GrpcCompressionAlgorithm2["NONE"] = 0] = "NONE"; + GrpcCompressionAlgorithm2[GrpcCompressionAlgorithm2["GZIP"] = 2] = "GZIP"; + })(GrpcCompressionAlgorithm = exports2.GrpcCompressionAlgorithm || (exports2.GrpcCompressionAlgorithm = {})); + function configureCompression(compression) { + if (compression) { + return toGrpcCompression(compression); + } else { + const definedCompression = (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_COMPRESSION || (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_COMPRESSION; + return definedCompression === "gzip" ? GrpcCompressionAlgorithm.GZIP : GrpcCompressionAlgorithm.NONE; + } + } + exports2.configureCompression = configureCompression; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/OTLPGRPCExporterNodeBase.js +var require_OTLPGRPCExporterNodeBase = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/OTLPGRPCExporterNodeBase.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPGRPCExporterNodeBase = void 0; + var api_1 = require_src(); + var grpc_js_1 = require_src25(); + var core_1 = require_src5(); + var util_1 = require_util12(); + var otlp_exporter_base_1 = require_src6(); + var OTLPGRPCExporterNodeBase = class extends otlp_exporter_base_1.OTLPExporterBase { + constructor(config = {}) { + super(config); + this.grpcQueue = []; + this.serviceClient = void 0; + if (config.headers) { + api_1.diag.warn("Headers cannot be set when using grpc"); + } + const headers = core_1.baggageUtils.parseKeyPairsIntoRecord((0, core_1.getEnv)().OTEL_EXPORTER_OTLP_HEADERS); + this.metadata = config.metadata || new grpc_js_1.Metadata(); + for (const [k, v] of Object.entries(headers)) { + this.metadata.set(k, v); + } + this.compression = (0, util_1.configureCompression)(config.compression); + } + _sendPromise(objects, onSuccess, onError) { + const promise = new Promise((resolve8, reject) => { + this._send(this, objects, resolve8, reject); + }).then(onSuccess, onError); + this._sendingPromises.push(promise); + const popPromise = () => { + const index = this._sendingPromises.indexOf(promise); + this._sendingPromises.splice(index, 1); + }; + promise.then(popPromise, popPromise); + } + onInit(config) { + setImmediate(() => { + const { onInit } = require_util12(); + onInit(this, config); + }); + } + send(objects, onSuccess, onError) { + if (this._shutdownOnce.isCalled) { + api_1.diag.debug("Shutdown already started. Cannot send objects"); + return; + } + if (!this._send) { + setImmediate(() => { + const { send } = require_util12(); + this._send = send; + this._sendPromise(objects, onSuccess, onError); + }); + } else { + this._sendPromise(objects, onSuccess, onError); + } + } + onShutdown() { + if (this.serviceClient) { + this.serviceClient.close(); + } + } + }; + exports2.OTLPGRPCExporterNodeBase = OTLPGRPCExporterNodeBase; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/index.js +var require_src26 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+otlp-grpc-exporter-base@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.GrpcCompressionAlgorithm = exports2.validateAndNormalizeUrl = exports2.DEFAULT_COLLECTOR_URL = exports2.ServiceClientType = void 0; + __exportStar(require_OTLPGRPCExporterNodeBase(), exports2); + var types_1 = require_types21(); + Object.defineProperty(exports2, "ServiceClientType", { enumerable: true, get: function() { + return types_1.ServiceClientType; + } }); + var util_1 = require_util12(); + Object.defineProperty(exports2, "DEFAULT_COLLECTOR_URL", { enumerable: true, get: function() { + return util_1.DEFAULT_COLLECTOR_URL; + } }); + Object.defineProperty(exports2, "validateAndNormalizeUrl", { enumerable: true, get: function() { + return util_1.validateAndNormalizeUrl; + } }); + Object.defineProperty(exports2, "GrpcCompressionAlgorithm", { enumerable: true, get: function() { + return util_1.GrpcCompressionAlgorithm; + } }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-grpc@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-grpc/build/src/version.js +var require_version7 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-grpc@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-grpc/build/src/version.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.VERSION = void 0; + exports2.VERSION = "0.45.1"; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-grpc@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-grpc/build/src/OTLPTraceExporter.js +var require_OTLPTraceExporter3 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-grpc@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-grpc/build/src/OTLPTraceExporter.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.OTLPTraceExporter = void 0; + var core_1 = require_src5(); + var grpc_js_1 = require_src25(); + var otlp_grpc_exporter_base_1 = require_src26(); + var otlp_transformer_1 = require_src9(); + var version_1 = require_version7(); + var USER_AGENT = { + "User-Agent": `OTel-OTLP-Exporter-JavaScript/${version_1.VERSION}` + }; + var OTLPTraceExporter2 = class extends otlp_grpc_exporter_base_1.OTLPGRPCExporterNodeBase { + constructor(config = {}) { + super(config); + const headers = Object.assign(Object.assign({}, USER_AGENT), core_1.baggageUtils.parseKeyPairsIntoRecord((0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_HEADERS)); + this.metadata || (this.metadata = new grpc_js_1.Metadata()); + for (const [k, v] of Object.entries(headers)) { + this.metadata.set(k, v); + } + } + convert(spans) { + return (0, otlp_transformer_1.createExportTraceServiceRequest)(spans); + } + getDefaultUrl(config) { + return (0, otlp_grpc_exporter_base_1.validateAndNormalizeUrl)(this.getUrlFromConfig(config)); + } + getServiceClientType() { + return otlp_grpc_exporter_base_1.ServiceClientType.SPANS; + } + getServiceProtoPath() { + return "opentelemetry/proto/collector/trace/v1/trace_service.proto"; + } + getUrlFromConfig(config) { + if (typeof config.url === "string") { + return config.url; + } + return (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_ENDPOINT || (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_ENDPOINT || otlp_grpc_exporter_base_1.DEFAULT_COLLECTOR_URL; + } + }; + exports2.OTLPTraceExporter = OTLPTraceExporter2; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-grpc@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-grpc/build/src/index.js +var require_src27 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-trace-otlp-grpc@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-trace-otlp-grpc/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_OTLPTraceExporter3(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/platform/node/util.js +var require_util13 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/platform/node/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.prepareSend = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var http4 = require("http"); + var https4 = require("https"); + var url2 = require("url"); + function prepareSend(urlStr, headers) { + const urlOpts = url2.parse(urlStr); + const reqOpts = Object.assign({ + method: "POST", + headers: Object.assign({ "Content-Type": "application/json" }, headers) + }, urlOpts); + return function send(zipkinSpans, done) { + if (zipkinSpans.length === 0) { + api_1.diag.debug("Zipkin send with empty spans"); + return done({ code: core_1.ExportResultCode.SUCCESS }); + } + const { request } = reqOpts.protocol === "http:" ? http4 : https4; + const req = request(reqOpts, (res) => { + let rawData = ""; + res.on("data", (chunk) => { + rawData += chunk; + }); + res.on("end", () => { + const statusCode = res.statusCode || 0; + api_1.diag.debug(`Zipkin response status code: ${statusCode}, body: ${rawData}`); + if (statusCode < 400) { + return done({ code: core_1.ExportResultCode.SUCCESS }); + } else { + return done({ + code: core_1.ExportResultCode.FAILED, + error: new Error(`Got unexpected status code from zipkin: ${statusCode}`) + }); + } + }); + }); + req.on("error", (error) => { + return done({ + code: core_1.ExportResultCode.FAILED, + error + }); + }); + const payload = JSON.stringify(zipkinSpans); + api_1.diag.debug(`Zipkin request payload: ${payload}`); + req.write(payload, "utf8"); + req.end(); + }; + } + exports2.prepareSend = prepareSend; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/platform/node/index.js +var require_node15 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/platform/node/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_util13(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/platform/index.js +var require_platform12 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/platform/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_node15(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/types.js +var require_types22 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.SpanKind = void 0; + var SpanKind; + (function(SpanKind2) { + SpanKind2["CLIENT"] = "CLIENT"; + SpanKind2["SERVER"] = "SERVER"; + SpanKind2["CONSUMER"] = "CONSUMER"; + SpanKind2["PRODUCER"] = "PRODUCER"; + })(SpanKind = exports2.SpanKind || (exports2.SpanKind = {})); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/transform.js +var require_transform = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/transform.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2._toZipkinAnnotations = exports2._toZipkinTags = exports2.toZipkinSpan = exports2.defaultStatusErrorTagName = exports2.defaultStatusCodeTagName = void 0; + var api = require_src(); + var core_1 = require_src5(); + var zipkinTypes = require_types22(); + var ZIPKIN_SPAN_KIND_MAPPING = { + [api.SpanKind.CLIENT]: zipkinTypes.SpanKind.CLIENT, + [api.SpanKind.SERVER]: zipkinTypes.SpanKind.SERVER, + [api.SpanKind.CONSUMER]: zipkinTypes.SpanKind.CONSUMER, + [api.SpanKind.PRODUCER]: zipkinTypes.SpanKind.PRODUCER, + // When absent, the span is local. + [api.SpanKind.INTERNAL]: void 0 + }; + exports2.defaultStatusCodeTagName = "otel.status_code"; + exports2.defaultStatusErrorTagName = "error"; + function toZipkinSpan(span, serviceName, statusCodeTagName, statusErrorTagName) { + const zipkinSpan = { + traceId: span.spanContext().traceId, + parentId: span.parentSpanId, + name: span.name, + id: span.spanContext().spanId, + kind: ZIPKIN_SPAN_KIND_MAPPING[span.kind], + timestamp: (0, core_1.hrTimeToMicroseconds)(span.startTime), + duration: Math.round((0, core_1.hrTimeToMicroseconds)(span.duration)), + localEndpoint: { serviceName }, + tags: _toZipkinTags(span, statusCodeTagName, statusErrorTagName), + annotations: span.events.length ? _toZipkinAnnotations(span.events) : void 0 + }; + return zipkinSpan; + } + exports2.toZipkinSpan = toZipkinSpan; + function _toZipkinTags({ attributes, resource, status, droppedAttributesCount, droppedEventsCount, droppedLinksCount }, statusCodeTagName, statusErrorTagName) { + const tags = {}; + for (const key of Object.keys(attributes)) { + tags[key] = String(attributes[key]); + } + if (status.code !== api.SpanStatusCode.UNSET) { + tags[statusCodeTagName] = String(api.SpanStatusCode[status.code]); + } + if (status.code === api.SpanStatusCode.ERROR && status.message) { + tags[statusErrorTagName] = status.message; + } + if (droppedAttributesCount) { + tags["otel.dropped_attributes_count"] = String(droppedAttributesCount); + } + if (droppedEventsCount) { + tags["otel.dropped_events_count"] = String(droppedEventsCount); + } + if (droppedLinksCount) { + tags["otel.dropped_links_count"] = String(droppedLinksCount); + } + Object.keys(resource.attributes).forEach((name) => tags[name] = String(resource.attributes[name])); + return tags; + } + exports2._toZipkinTags = _toZipkinTags; + function _toZipkinAnnotations(events) { + return events.map((event) => ({ + timestamp: Math.round((0, core_1.hrTimeToMicroseconds)(event.time)), + value: event.name + })); + } + exports2._toZipkinAnnotations = _toZipkinAnnotations; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/utils.js +var require_utils13 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.prepareGetHeaders = void 0; + function prepareGetHeaders(getExportRequestHeaders) { + return function() { + return getExportRequestHeaders(); + }; + } + exports2.prepareGetHeaders = prepareGetHeaders; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/zipkin.js +var require_zipkin = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/zipkin.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.ZipkinExporter = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var index_1 = require_platform12(); + var transform_1 = require_transform(); + var semantic_conventions_1 = require_src4(); + var utils_1 = require_utils13(); + var ZipkinExporter = class { + constructor(config = {}) { + this.DEFAULT_SERVICE_NAME = "OpenTelemetry Service"; + this._sendingPromises = []; + this._urlStr = config.url || (0, core_1.getEnv)().OTEL_EXPORTER_ZIPKIN_ENDPOINT; + this._send = (0, index_1.prepareSend)(this._urlStr, config.headers); + this._serviceName = config.serviceName; + this._statusCodeTagName = config.statusCodeTagName || transform_1.defaultStatusCodeTagName; + this._statusDescriptionTagName = config.statusDescriptionTagName || transform_1.defaultStatusErrorTagName; + this._isShutdown = false; + if (typeof config.getExportRequestHeaders === "function") { + this._getHeaders = (0, utils_1.prepareGetHeaders)(config.getExportRequestHeaders); + } else { + this._beforeSend = function() { + }; + } + } + /** + * Export spans. + */ + export(spans, resultCallback) { + const serviceName = String(this._serviceName || spans[0].resource.attributes[semantic_conventions_1.SemanticResourceAttributes.SERVICE_NAME] || this.DEFAULT_SERVICE_NAME); + api_1.diag.debug("Zipkin exporter export"); + if (this._isShutdown) { + setTimeout(() => resultCallback({ + code: core_1.ExportResultCode.FAILED, + error: new Error("Exporter has been shutdown") + })); + return; + } + const promise = new Promise((resolve8) => { + this._sendSpans(spans, serviceName, (result) => { + resolve8(); + resultCallback(result); + }); + }); + this._sendingPromises.push(promise); + const popPromise = () => { + const index = this._sendingPromises.indexOf(promise); + this._sendingPromises.splice(index, 1); + }; + promise.then(popPromise, popPromise); + } + /** + * Shutdown exporter. Noop operation in this exporter. + */ + shutdown() { + api_1.diag.debug("Zipkin exporter shutdown"); + this._isShutdown = true; + return this.forceFlush(); + } + /** + * Exports any pending spans in exporter + */ + forceFlush() { + return new Promise((resolve8, reject) => { + Promise.all(this._sendingPromises).then(() => { + resolve8(); + }, reject); + }); + } + /** + * if user defines getExportRequestHeaders in config then this will be called + * everytime before send, otherwise it will be replaced with noop in + * constructor + * @default noop + */ + _beforeSend() { + if (this._getHeaders) { + this._send = (0, index_1.prepareSend)(this._urlStr, this._getHeaders()); + } + } + /** + * Transform spans and sends to Zipkin service. + */ + _sendSpans(spans, serviceName, done) { + const zipkinSpans = spans.map((span) => (0, transform_1.toZipkinSpan)(span, String(span.attributes[semantic_conventions_1.SemanticResourceAttributes.SERVICE_NAME] || span.resource.attributes[semantic_conventions_1.SemanticResourceAttributes.SERVICE_NAME] || serviceName), this._statusCodeTagName, this._statusDescriptionTagName)); + this._beforeSend(); + return this._send(zipkinSpans, (result) => { + if (done) { + return done(result); + } + }); + } + }; + exports2.ZipkinExporter = ZipkinExporter; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/index.js +var require_src28 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+exporter-zipkin@1.18.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/exporter-zipkin/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + __exportStar(require_platform12(), exports2); + __exportStar(require_zipkin(), exports2); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-node@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-node/build/src/TracerProviderWithEnvExporter.js +var require_TracerProviderWithEnvExporter = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-node@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-node/build/src/TracerProviderWithEnvExporter.js"(exports2) { + "use strict"; + var _a; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.TracerProviderWithEnvExporters = void 0; + var api_1 = require_src(); + var core_1 = require_src5(); + var sdk_trace_base_1 = require_src18(); + var sdk_trace_node_1 = require_src20(); + var exporter_trace_otlp_proto_1 = require_src22(); + var exporter_trace_otlp_http_1 = require_src10(); + var exporter_trace_otlp_grpc_1 = require_src27(); + var exporter_zipkin_1 = require_src28(); + var TracerProviderWithEnvExporters = class extends sdk_trace_node_1.NodeTracerProvider { + constructor(config = {}) { + super(config); + this._configuredExporters = []; + this._hasSpanProcessors = false; + let traceExportersList = this.filterBlanksAndNulls(Array.from(new Set((0, core_1.getEnv)().OTEL_TRACES_EXPORTER.split(",")))); + if (traceExportersList[0] === "none") { + api_1.diag.warn('OTEL_TRACES_EXPORTER contains "none". SDK will not be initialized.'); + } else if (traceExportersList.length === 0) { + api_1.diag.warn("OTEL_TRACES_EXPORTER is empty. Using default otlp exporter."); + traceExportersList = ["otlp"]; + this.createExportersFromList(traceExportersList); + this._spanProcessors = this.configureSpanProcessors(this._configuredExporters); + this._spanProcessors.forEach((processor) => { + this.addSpanProcessor(processor); + }); + } else { + if (traceExportersList.length > 1 && traceExportersList.includes("none")) { + api_1.diag.warn('OTEL_TRACES_EXPORTER contains "none" along with other exporters. Using default otlp exporter.'); + traceExportersList = ["otlp"]; + } + this.createExportersFromList(traceExportersList); + if (this._configuredExporters.length > 0) { + this._spanProcessors = this.configureSpanProcessors(this._configuredExporters); + this._spanProcessors.forEach((processor) => { + this.addSpanProcessor(processor); + }); + } else { + api_1.diag.warn("Unable to set up trace exporter(s) due to invalid exporter and/or protocol values."); + } + } + } + static configureOtlp() { + const protocol2 = this.getOtlpProtocol(); + switch (protocol2) { + case "grpc": + return new exporter_trace_otlp_grpc_1.OTLPTraceExporter(); + case "http/json": + return new exporter_trace_otlp_http_1.OTLPTraceExporter(); + case "http/protobuf": + return new exporter_trace_otlp_proto_1.OTLPTraceExporter(); + default: + api_1.diag.warn(`Unsupported OTLP traces protocol: ${protocol2}. Using http/protobuf.`); + return new exporter_trace_otlp_proto_1.OTLPTraceExporter(); + } + } + static getOtlpProtocol() { + var _b, _c, _d; + const parsedEnvValues = (0, core_1.getEnvWithoutDefaults)(); + return (_d = (_c = (_b = parsedEnvValues.OTEL_EXPORTER_OTLP_TRACES_PROTOCOL) !== null && _b !== void 0 ? _b : parsedEnvValues.OTEL_EXPORTER_OTLP_PROTOCOL) !== null && _c !== void 0 ? _c : (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_TRACES_PROTOCOL) !== null && _d !== void 0 ? _d : (0, core_1.getEnv)().OTEL_EXPORTER_OTLP_PROTOCOL; + } + static configureJaeger() { + try { + const { JaegerExporter } = require("@opentelemetry/exporter-jaeger"); + return new JaegerExporter(); + } catch (e) { + throw new Error(`Could not instantiate JaegerExporter. This could be due to the JaegerExporter's lack of support for bundling. If possible, use @opentelemetry/exporter-trace-otlp-proto instead. Original Error: ${e}`); + } + } + addSpanProcessor(spanProcessor) { + super.addSpanProcessor(spanProcessor); + this._hasSpanProcessors = true; + } + register(config) { + if (this._hasSpanProcessors) { + super.register(config); + } + } + createExportersFromList(exporterList) { + exporterList.forEach((exporterName) => { + const exporter = this._getSpanExporter(exporterName); + if (exporter) { + this._configuredExporters.push(exporter); + } else { + api_1.diag.warn(`Unrecognized OTEL_TRACES_EXPORTER value: ${exporterName}.`); + } + }); + } + configureSpanProcessors(exporters) { + return exporters.map((exporter) => { + if (exporter instanceof sdk_trace_base_1.ConsoleSpanExporter) { + return new sdk_trace_base_1.SimpleSpanProcessor(exporter); + } else { + return new sdk_trace_base_1.BatchSpanProcessor(exporter); + } + }); + } + filterBlanksAndNulls(list) { + return list.map((item) => item.trim()).filter((s) => s !== "null" && s !== ""); + } + }; + exports2.TracerProviderWithEnvExporters = TracerProviderWithEnvExporters; + _a = TracerProviderWithEnvExporters; + TracerProviderWithEnvExporters._registeredExporters = /* @__PURE__ */ new Map([ + ["otlp", () => _a.configureOtlp()], + ["zipkin", () => new exporter_zipkin_1.ZipkinExporter()], + ["jaeger", () => _a.configureJaeger()], + ["console", () => new sdk_trace_base_1.ConsoleSpanExporter()] + ]); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-node@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-node/build/src/utils.js +var require_utils14 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-node@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-node/build/src/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.parseInstrumentationOptions = void 0; + function parseInstrumentationOptions(options2 = []) { + let instrumentations = []; + for (let i = 0, j = options2.length; i < j; i++) { + const option = options2[i]; + if (Array.isArray(option)) { + const results = parseInstrumentationOptions(option); + instrumentations = instrumentations.concat(results); + } else if (typeof option === "function") { + instrumentations.push(new option()); + } else if (option.instrumentationName) { + instrumentations.push(option); + } + } + return instrumentations; + } + exports2.parseInstrumentationOptions = parseInstrumentationOptions; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-node@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-node/build/src/sdk.js +var require_sdk2 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-node@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-node/build/src/sdk.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.NodeSDK = void 0; + var api_1 = require_src(); + var api_logs_1 = require_src14(); + var instrumentation_1 = require_src12(); + var resources_1 = require_src7(); + var sdk_logs_1 = require_src15(); + var sdk_metrics_1 = require_src8(); + var sdk_trace_base_1 = require_src18(); + var sdk_trace_node_1 = require_src20(); + var semantic_conventions_1 = require_src4(); + var TracerProviderWithEnvExporter_1 = require_TracerProviderWithEnvExporter(); + var core_1 = require_src5(); + var utils_1 = require_utils14(); + var NodeSDK2 = class { + /** + * Create a new NodeJS SDK instance + */ + constructor(configuration2 = {}) { + var _a, _b, _c, _d; + const env4 = (0, core_1.getEnv)(); + const envWithoutDefaults = (0, core_1.getEnvWithoutDefaults)(); + if (env4.OTEL_SDK_DISABLED) { + this._disabled = true; + } + if (envWithoutDefaults.OTEL_LOG_LEVEL) { + api_1.diag.setLogger(new api_1.DiagConsoleLogger(), { + logLevel: envWithoutDefaults.OTEL_LOG_LEVEL + }); + } + this._resource = (_a = configuration2.resource) !== null && _a !== void 0 ? _a : new resources_1.Resource({}); + this._resourceDetectors = (_b = configuration2.resourceDetectors) !== null && _b !== void 0 ? _b : [ + resources_1.envDetector, + resources_1.processDetector + ]; + this._serviceName = configuration2.serviceName; + this._autoDetectResources = (_c = configuration2.autoDetectResources) !== null && _c !== void 0 ? _c : true; + if (configuration2.spanProcessor || configuration2.traceExporter) { + const tracerProviderConfig = {}; + if (configuration2.sampler) { + tracerProviderConfig.sampler = configuration2.sampler; + } + if (configuration2.spanLimits) { + tracerProviderConfig.spanLimits = configuration2.spanLimits; + } + if (configuration2.idGenerator) { + tracerProviderConfig.idGenerator = configuration2.idGenerator; + } + const spanProcessor = (_d = configuration2.spanProcessor) !== null && _d !== void 0 ? _d : new sdk_trace_base_1.BatchSpanProcessor(configuration2.traceExporter); + this.configureTracerProvider(tracerProviderConfig, spanProcessor, configuration2.contextManager, configuration2.textMapPropagator); + } + if (configuration2.logRecordProcessor) { + const loggerProviderConfig = { + logRecordProcessor: configuration2.logRecordProcessor + }; + this.configureLoggerProvider(loggerProviderConfig); + } + if (configuration2.metricReader || configuration2.views) { + const meterProviderConfig = {}; + if (configuration2.metricReader) { + meterProviderConfig.reader = configuration2.metricReader; + } + if (configuration2.views) { + meterProviderConfig.views = configuration2.views; + } + this.configureMeterProvider(meterProviderConfig); + } + let instrumentations = []; + if (configuration2.instrumentations) { + instrumentations = configuration2.instrumentations; + } + this._instrumentations = instrumentations; + } + /** + * + * @deprecated Please pass {@code sampler}, {@code generalLimits}, {@code spanLimits}, {@code resource}, + * {@code IdGenerator}, {@code spanProcessor}, {@code contextManager} and {@code textMapPropagator}, + * to the constructor options instead. + * + * Set configurations needed to register a TracerProvider + */ + configureTracerProvider(tracerConfig, spanProcessor, contextManager, textMapPropagator) { + this._tracerProviderConfig = { + tracerConfig, + spanProcessor, + contextManager, + textMapPropagator + }; + } + /** + * @deprecated Please pass {@code logRecordProcessor} to the constructor options instead. + * + * Set configurations needed to register a LoggerProvider + */ + configureLoggerProvider(config) { + if (this._loggerProviderConfig == null) { + this._loggerProviderConfig = config; + return; + } + if (this._loggerProviderConfig.logRecordProcessor != null && config.logRecordProcessor != null) { + throw new Error("LogRecordProcessor passed but LogRecordProcessor has already been configured."); + } + if (config.logRecordProcessor != null) { + this._loggerProviderConfig.logRecordProcessor = config.logRecordProcessor; + } + } + /** + * @deprecated Please pass {@code views} and {@code reader} to the constructor options instead. + * + * Set configurations needed to register a MeterProvider + */ + configureMeterProvider(config) { + if (this._meterProviderConfig == null) { + this._meterProviderConfig = config; + return; + } + if (this._meterProviderConfig.views != null && config.views != null) { + throw new Error("Views passed but Views have already been configured."); + } + if (config.views != null) { + this._meterProviderConfig.views = config.views; + } + if (this._meterProviderConfig.reader != null && config.reader != null) { + throw new Error("MetricReader passed but MetricReader has already been configured."); + } + if (config.reader != null) { + this._meterProviderConfig.reader = config.reader; + } + } + /** + * @deprecated Resources are detected automatically on {@link NodeSDK.start()}, when the {@code autoDetectResources} + * constructor option is set to {@code true} or left {@code undefined}. + * + * Detect resource attributes + */ + detectResources() { + if (this._disabled) { + return; + } + const internalConfig = { + detectors: this._resourceDetectors + }; + this.addResource((0, resources_1.detectResourcesSync)(internalConfig)); + } + /** + * @deprecated Please pre-merge resources and pass them to the constructor + * + * Manually add a Resource + * @param resource + */ + addResource(resource) { + this._resource = this._resource.merge(resource); + } + /** + * Call this method to construct SDK components and register them with the OpenTelemetry API. + */ + start() { + var _a, _b, _c, _d, _e; + if (this._disabled) { + return; + } + (0, instrumentation_1.registerInstrumentations)({ + instrumentations: this._instrumentations + }); + if (this._autoDetectResources) { + this.detectResources(); + } + this._resource = this._serviceName === void 0 ? this._resource : this._resource.merge(new resources_1.Resource({ + [semantic_conventions_1.SemanticResourceAttributes.SERVICE_NAME]: this._serviceName + })); + const Provider2 = this._tracerProviderConfig ? sdk_trace_node_1.NodeTracerProvider : TracerProviderWithEnvExporter_1.TracerProviderWithEnvExporters; + const tracerProvider = new Provider2(Object.assign(Object.assign({}, (_a = this._tracerProviderConfig) === null || _a === void 0 ? void 0 : _a.tracerConfig), { resource: this._resource })); + this._tracerProvider = tracerProvider; + if (this._tracerProviderConfig) { + tracerProvider.addSpanProcessor(this._tracerProviderConfig.spanProcessor); + } + tracerProvider.register({ + contextManager: (_b = this._tracerProviderConfig) === null || _b === void 0 ? void 0 : _b.contextManager, + propagator: (_c = this._tracerProviderConfig) === null || _c === void 0 ? void 0 : _c.textMapPropagator + }); + if (this._loggerProviderConfig) { + const loggerProvider = new sdk_logs_1.LoggerProvider({ + resource: this._resource + }); + loggerProvider.addLogRecordProcessor(this._loggerProviderConfig.logRecordProcessor); + this._loggerProvider = loggerProvider; + api_logs_1.logs.setGlobalLoggerProvider(loggerProvider); + } + if (this._meterProviderConfig) { + const meterProvider = new sdk_metrics_1.MeterProvider({ + resource: this._resource, + views: (_e = (_d = this._meterProviderConfig) === null || _d === void 0 ? void 0 : _d.views) !== null && _e !== void 0 ? _e : [] + }); + if (this._meterProviderConfig.reader) { + meterProvider.addMetricReader(this._meterProviderConfig.reader); + } + this._meterProvider = meterProvider; + api_1.metrics.setGlobalMeterProvider(meterProvider); + for (const instrumentation of (0, utils_1.parseInstrumentationOptions)(this._instrumentations)) { + instrumentation.setMeterProvider(api_1.metrics.getMeterProvider()); + } + } + } + shutdown() { + const promises2 = []; + if (this._tracerProvider) { + promises2.push(this._tracerProvider.shutdown()); + } + if (this._loggerProvider) { + promises2.push(this._loggerProvider.shutdown()); + } + if (this._meterProvider) { + promises2.push(this._meterProvider.shutdown()); + } + return Promise.all(promises2).then(() => { + }); + } + }; + exports2.NodeSDK = NodeSDK2; + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-node@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-node/build/src/types.js +var require_types23 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-node@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-node/build/src/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + } +}); + +// ../node_modules/.pnpm/@opentelemetry+sdk-node@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-node/build/src/index.js +var require_src29 = __commonJS({ + "../node_modules/.pnpm/@opentelemetry+sdk-node@0.45.1_@opentelemetry+api@1.7.0/node_modules/@opentelemetry/sdk-node/build/src/index.js"(exports2) { + "use strict"; + var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { + return m[k]; + } }); + } : function(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; + }); + var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { + for (var p in m) + if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.tracing = exports2.resources = exports2.node = exports2.metrics = exports2.logs = exports2.core = exports2.contextBase = exports2.api = void 0; + exports2.api = require_src(); + exports2.contextBase = require_src(); + exports2.core = require_src5(); + exports2.logs = require_src15(); + exports2.metrics = require_src8(); + exports2.node = require_src20(); + exports2.resources = require_src7(); + exports2.tracing = require_src18(); + __exportStar(require_sdk2(), exports2); + __exportStar(require_types23(), exports2); + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_nullishCoalesce.js +var require_nullishCoalesce = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_nullishCoalesce.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function _nullishCoalesce(lhs, rhsFn) { + return lhs != null ? lhs : rhsFn(); + } + exports2._nullishCoalesce = _nullishCoalesce; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_asyncNullishCoalesce.js +var require_asyncNullishCoalesce = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_asyncNullishCoalesce.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var _nullishCoalesce = require_nullishCoalesce(); + async function _asyncNullishCoalesce(lhs, rhsFn) { + return _nullishCoalesce._nullishCoalesce(lhs, rhsFn); + } + exports2._asyncNullishCoalesce = _asyncNullishCoalesce; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_asyncOptionalChain.js +var require_asyncOptionalChain = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_asyncOptionalChain.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + async function _asyncOptionalChain(ops) { + let lastAccessLHS = void 0; + let value = ops[0]; + let i = 1; + while (i < ops.length) { + const op = ops[i]; + const fn = ops[i + 1]; + i += 2; + if ((op === "optionalAccess" || op === "optionalCall") && value == null) { + return; + } + if (op === "access" || op === "optionalAccess") { + lastAccessLHS = value; + value = await fn(value); + } else if (op === "call" || op === "optionalCall") { + value = await fn((...args3) => value.call(lastAccessLHS, ...args3)); + lastAccessLHS = void 0; + } + } + return value; + } + exports2._asyncOptionalChain = _asyncOptionalChain; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_asyncOptionalChainDelete.js +var require_asyncOptionalChainDelete = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_asyncOptionalChainDelete.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var _asyncOptionalChain = require_asyncOptionalChain(); + async function _asyncOptionalChainDelete(ops) { + const result = await _asyncOptionalChain._asyncOptionalChain(ops); + return result == null ? true : result; + } + exports2._asyncOptionalChainDelete = _asyncOptionalChainDelete; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_optionalChain.js +var require_optionalChain = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_optionalChain.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function _optionalChain(ops) { + let lastAccessLHS = void 0; + let value = ops[0]; + let i = 1; + while (i < ops.length) { + const op = ops[i]; + const fn = ops[i + 1]; + i += 2; + if ((op === "optionalAccess" || op === "optionalCall") && value == null) { + return; + } + if (op === "access" || op === "optionalAccess") { + lastAccessLHS = value; + value = fn(value); + } else if (op === "call" || op === "optionalCall") { + value = fn((...args3) => value.call(lastAccessLHS, ...args3)); + lastAccessLHS = void 0; + } + } + return value; + } + exports2._optionalChain = _optionalChain; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_optionalChainDelete.js +var require_optionalChainDelete = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/_optionalChainDelete.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var _optionalChain = require_optionalChain(); + function _optionalChainDelete(ops) { + const result = _optionalChain._optionalChain(ops); + return result == null ? true : result; + } + exports2._optionalChainDelete = _optionalChainDelete; + } +}); + +// ../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/index.js +var require_buildPolyfills = __commonJS({ + "../node_modules/.pnpm/@sentry+utils@7.66.0/node_modules/@sentry/utils/cjs/buildPolyfills/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var _asyncNullishCoalesce = require_asyncNullishCoalesce(); + var _asyncOptionalChain = require_asyncOptionalChain(); + var _asyncOptionalChainDelete = require_asyncOptionalChainDelete(); + var _nullishCoalesce = require_nullishCoalesce(); + var _optionalChain = require_optionalChain(); + var _optionalChainDelete = require_optionalChainDelete(); + exports2._asyncNullishCoalesce = _asyncNullishCoalesce._asyncNullishCoalesce; + exports2._asyncOptionalChain = _asyncOptionalChain._asyncOptionalChain; + exports2._asyncOptionalChainDelete = _asyncOptionalChainDelete._asyncOptionalChainDelete; + exports2._nullishCoalesce = _nullishCoalesce._nullishCoalesce; + exports2._optionalChain = _optionalChain._optionalChain; + exports2._optionalChainDelete = _optionalChainDelete._optionalChainDelete; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/utils/node-utils.js +var require_node_utils = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/utils/node-utils.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + function shouldDisableAutoInstrumentation(getCurrentHub) { + const clientOptions = _optionalChain([getCurrentHub, "call", (_) => _(), "access", (_2) => _2.getClient, "call", (_3) => _3(), "optionalAccess", (_4) => _4.getOptions, "call", (_5) => _5()]); + const instrumenter = _optionalChain([clientOptions, "optionalAccess", (_6) => _6.instrumenter]) || "sentry"; + return instrumenter !== "sentry"; + } + exports2.shouldDisableAutoInstrumentation = shouldDisableAutoInstrumentation; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/express.js +var require_express = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/express.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var nodeUtils = require_node_utils(); + var Express = class _Express { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Express"; + } + /** + * @inheritDoc + */ + /** + * Express App instance + */ + /** + * @inheritDoc + */ + constructor(options2 = {}) { + this.name = _Express.id; + this._router = options2.router || options2.app; + this._methods = (Array.isArray(options2.methods) ? options2.methods : []).concat("use"); + } + /** + * @inheritDoc + */ + setupOnce(_, getCurrentHub) { + if (!this._router) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("ExpressIntegration is missing an Express instance"); + return; + } + if (nodeUtils.shouldDisableAutoInstrumentation(getCurrentHub)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("Express Integration is skipped because of instrumenter configuration."); + return; + } + instrumentMiddlewares(this._router, this._methods); + instrumentRouter(this._router); + } + }; + Express.__initStatic(); + function wrap2(fn, method) { + const arity2 = fn.length; + switch (arity2) { + case 2: { + return function(req, res) { + const transaction = res.__sentry_transaction; + if (transaction) { + const span = transaction.startChild({ + description: fn.name, + op: `middleware.express.${method}`, + origin: "auto.middleware.express" + }); + res.once("finish", () => { + span.finish(); + }); + } + return fn.call(this, req, res); + }; + } + case 3: { + return function(req, res, next) { + const transaction = res.__sentry_transaction; + const span = _optionalChain([transaction, "optionalAccess", (_2) => _2.startChild, "call", (_3) => _3({ + description: fn.name, + op: `middleware.express.${method}`, + origin: "auto.middleware.express" + })]); + fn.call(this, req, res, function(...args3) { + _optionalChain([span, "optionalAccess", (_4) => _4.finish, "call", (_5) => _5()]); + next.call(this, ...args3); + }); + }; + } + case 4: { + return function(err2, req, res, next) { + const transaction = res.__sentry_transaction; + const span = _optionalChain([transaction, "optionalAccess", (_6) => _6.startChild, "call", (_7) => _7({ + description: fn.name, + op: `middleware.express.${method}`, + origin: "auto.middleware.express" + })]); + fn.call(this, err2, req, res, function(...args3) { + _optionalChain([span, "optionalAccess", (_8) => _8.finish, "call", (_9) => _9()]); + next.call(this, ...args3); + }); + }; + } + default: { + throw new Error(`Express middleware takes 2-4 arguments. Got: ${arity2}`); + } + } + } + function wrapMiddlewareArgs(args3, method) { + return args3.map((arg) => { + if (typeof arg === "function") { + return wrap2(arg, method); + } + if (Array.isArray(arg)) { + return arg.map((a) => { + if (typeof a === "function") { + return wrap2(a, method); + } + return a; + }); + } + return arg; + }); + } + function patchMiddleware(router, method) { + const originalCallback = router[method]; + router[method] = function(...args3) { + return originalCallback.call(this, ...wrapMiddlewareArgs(args3, method)); + }; + return router; + } + function instrumentMiddlewares(router, methods = []) { + methods.forEach((method) => patchMiddleware(router, method)); + } + function instrumentRouter(appOrRouter) { + const isApp = "settings" in appOrRouter; + if (isApp && appOrRouter._router === void 0 && appOrRouter.lazyrouter) { + appOrRouter.lazyrouter(); + } + const router = isApp ? appOrRouter._router : appOrRouter; + if (!router) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.debug("Cannot instrument router for URL Parameterization (did not find a valid router)."); + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.debug("Routing instrumentation is currently only supported in Express 4."); + return; + } + const routerProto = Object.getPrototypeOf(router); + const originalProcessParams = routerProto.process_params; + routerProto.process_params = function process_params(layer, called, req, res, done) { + if (!req._reconstructedRoute) { + req._reconstructedRoute = ""; + } + const { layerRoutePath, isRegex, isArray: isArray2, numExtraSegments } = getLayerRoutePathInfo(layer); + if (layerRoutePath || isRegex || isArray2) { + req._hasParameters = true; + } + const partialRoute = layerRoutePath || layer.path || ""; + const finalPartialRoute = partialRoute.split("/").filter((segment) => segment.length > 0 && (isRegex || isArray2 || !segment.includes("*"))).join("/"); + if (finalPartialRoute && finalPartialRoute.length > 0) { + req._reconstructedRoute += `/${finalPartialRoute}${isRegex ? "/" : ""}`; + } + const urlLength = utils.getNumberOfUrlSegments(req.originalUrl || "") + numExtraSegments; + const routeLength = utils.getNumberOfUrlSegments(req._reconstructedRoute); + if (urlLength === routeLength) { + if (!req._hasParameters) { + if (req._reconstructedRoute !== req.originalUrl) { + req._reconstructedRoute = req.originalUrl ? utils.stripUrlQueryAndFragment(req.originalUrl) : req.originalUrl; + } + } + const transaction = res.__sentry_transaction; + if (transaction && transaction.metadata.source !== "custom") { + const finalRoute = req._reconstructedRoute || "/"; + transaction.setName(...utils.extractPathForTransaction(req, { path: true, method: true, customRoute: finalRoute })); + } + } + return originalProcessParams.call(this, layer, called, req, res, done); + }; + } + function getLayerRoutePathInfo(layer) { + const lrp = _optionalChain([layer, "access", (_10) => _10.route, "optionalAccess", (_11) => _11.path]); + const isRegex = utils.isRegExp(lrp); + const isArray2 = Array.isArray(lrp); + if (!lrp) { + return { isRegex, isArray: isArray2, numExtraSegments: 0 }; + } + const numExtraSegments = isArray2 ? Math.max(getNumberOfArrayUrlSegments(lrp) - utils.getNumberOfUrlSegments(layer.path || ""), 0) : 0; + const layerRoutePath = getLayerRoutePathString(isArray2, lrp); + return { layerRoutePath, isRegex, isArray: isArray2, numExtraSegments }; + } + function getNumberOfArrayUrlSegments(routesArray) { + return routesArray.reduce((accNumSegments, currentRoute) => { + return accNumSegments + utils.getNumberOfUrlSegments(currentRoute.toString()); + }, 0); + } + function getLayerRoutePathString(isArray2, lrp) { + if (isArray2) { + return lrp.map((r) => r.toString()).join(","); + } + return lrp && lrp.toString(); + } + exports2.Express = Express; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/postgres.js +var require_postgres = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/postgres.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var nodeUtils = require_node_utils(); + var Postgres = class _Postgres { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Postgres"; + } + /** + * @inheritDoc + */ + constructor(options2 = {}) { + this.name = _Postgres.id; + this._usePgNative = !!options2.usePgNative; + } + /** @inheritdoc */ + loadDependency() { + return this._module = this._module || utils.loadModule("pg"); + } + /** + * @inheritDoc + */ + setupOnce(_, getCurrentHub) { + if (nodeUtils.shouldDisableAutoInstrumentation(getCurrentHub)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("Postgres Integration is skipped because of instrumenter configuration."); + return; + } + const pkg = this.loadDependency(); + if (!pkg) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("Postgres Integration was unable to require `pg` package."); + return; + } + if (this._usePgNative && !_optionalChain([pkg, "access", (_2) => _2.native, "optionalAccess", (_3) => _3.Client])) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("Postgres Integration was unable to access 'pg-native' bindings."); + return; + } + const { Client: Client2 } = this._usePgNative ? pkg.native : pkg; + utils.fill(Client2.prototype, "query", function(orig) { + return function(config, values, callback) { + const scope = getCurrentHub().getScope(); + const parentSpan = _optionalChain([scope, "optionalAccess", (_4) => _4.getSpan, "call", (_5) => _5()]); + const data = { + "db.system": "postgresql" + }; + try { + if (this.database) { + data["db.name"] = this.database; + } + if (this.host) { + data["server.address"] = this.host; + } + if (this.port) { + data["server.port"] = this.port; + } + if (this.user) { + data["db.user"] = this.user; + } + } catch (e) { + } + const span = _optionalChain([parentSpan, "optionalAccess", (_6) => _6.startChild, "call", (_7) => _7({ + description: typeof config === "string" ? config : config.text, + op: "db", + origin: "auto.db.postgres", + data + })]); + if (typeof callback === "function") { + return orig.call(this, config, values, function(err2, result) { + _optionalChain([span, "optionalAccess", (_8) => _8.finish, "call", (_9) => _9()]); + callback(err2, result); + }); + } + if (typeof values === "function") { + return orig.call(this, config, function(err2, result) { + _optionalChain([span, "optionalAccess", (_10) => _10.finish, "call", (_11) => _11()]); + values(err2, result); + }); + } + const rv = typeof values !== "undefined" ? orig.call(this, config, values) : orig.call(this, config); + if (utils.isThenable(rv)) { + return rv.then((res) => { + _optionalChain([span, "optionalAccess", (_12) => _12.finish, "call", (_13) => _13()]); + return res; + }); + } + _optionalChain([span, "optionalAccess", (_14) => _14.finish, "call", (_15) => _15()]); + return rv; + }; + }); + } + }; + Postgres.__initStatic(); + exports2.Postgres = Postgres; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/mysql.js +var require_mysql = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/mysql.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var nodeUtils = require_node_utils(); + var Mysql = class _Mysql { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Mysql"; + } + /** + * @inheritDoc + */ + constructor() { + this.name = _Mysql.id; + } + /** @inheritdoc */ + loadDependency() { + return this._module = this._module || utils.loadModule("mysql/lib/Connection.js"); + } + /** + * @inheritDoc + */ + setupOnce(_, getCurrentHub) { + if (nodeUtils.shouldDisableAutoInstrumentation(getCurrentHub)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("Mysql Integration is skipped because of instrumenter configuration."); + return; + } + const pkg = this.loadDependency(); + if (!pkg) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("Mysql Integration was unable to require `mysql` package."); + return; + } + let mySqlConfig = void 0; + try { + pkg.prototype.connect = new Proxy(pkg.prototype.connect, { + apply(wrappingTarget, thisArg, args3) { + if (!mySqlConfig) { + mySqlConfig = thisArg.config; + } + return wrappingTarget.apply(thisArg, args3); + } + }); + } catch (e) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("Mysql Integration was unable to instrument `mysql` config."); + } + function spanDataFromConfig() { + if (!mySqlConfig) { + return {}; + } + return { + "server.address": mySqlConfig.host, + "server.port": mySqlConfig.port, + "db.user": mySqlConfig.user + }; + } + utils.fill(pkg, "createQuery", function(orig) { + return function(options2, values, callback) { + const scope = getCurrentHub().getScope(); + const parentSpan = _optionalChain([scope, "optionalAccess", (_2) => _2.getSpan, "call", (_3) => _3()]); + const span = _optionalChain([parentSpan, "optionalAccess", (_4) => _4.startChild, "call", (_5) => _5({ + description: typeof options2 === "string" ? options2 : options2.sql, + op: "db", + origin: "auto.db.mysql", + data: { + ...spanDataFromConfig(), + "db.system": "mysql" + } + })]); + if (typeof callback === "function") { + return orig.call(this, options2, values, function(err2, result, fields) { + _optionalChain([span, "optionalAccess", (_6) => _6.finish, "call", (_7) => _7()]); + callback(err2, result, fields); + }); + } + if (typeof values === "function") { + return orig.call(this, options2, function(err2, result, fields) { + _optionalChain([span, "optionalAccess", (_8) => _8.finish, "call", (_9) => _9()]); + values(err2, result, fields); + }); + } + return orig.call(this, options2, values, callback); + }; + }); + } + }; + Mysql.__initStatic(); + exports2.Mysql = Mysql; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/mongo.js +var require_mongo = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/mongo.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var nodeUtils = require_node_utils(); + var OPERATIONS = [ + "aggregate", + // aggregate(pipeline, options, callback) + "bulkWrite", + // bulkWrite(operations, options, callback) + "countDocuments", + // countDocuments(query, options, callback) + "createIndex", + // createIndex(fieldOrSpec, options, callback) + "createIndexes", + // createIndexes(indexSpecs, options, callback) + "deleteMany", + // deleteMany(filter, options, callback) + "deleteOne", + // deleteOne(filter, options, callback) + "distinct", + // distinct(key, query, options, callback) + "drop", + // drop(options, callback) + "dropIndex", + // dropIndex(indexName, options, callback) + "dropIndexes", + // dropIndexes(options, callback) + "estimatedDocumentCount", + // estimatedDocumentCount(options, callback) + "find", + // find(query, options, callback) + "findOne", + // findOne(query, options, callback) + "findOneAndDelete", + // findOneAndDelete(filter, options, callback) + "findOneAndReplace", + // findOneAndReplace(filter, replacement, options, callback) + "findOneAndUpdate", + // findOneAndUpdate(filter, update, options, callback) + "indexes", + // indexes(options, callback) + "indexExists", + // indexExists(indexes, options, callback) + "indexInformation", + // indexInformation(options, callback) + "initializeOrderedBulkOp", + // initializeOrderedBulkOp(options, callback) + "insertMany", + // insertMany(docs, options, callback) + "insertOne", + // insertOne(doc, options, callback) + "isCapped", + // isCapped(options, callback) + "mapReduce", + // mapReduce(map, reduce, options, callback) + "options", + // options(options, callback) + "parallelCollectionScan", + // parallelCollectionScan(options, callback) + "rename", + // rename(newName, options, callback) + "replaceOne", + // replaceOne(filter, doc, options, callback) + "stats", + // stats(options, callback) + "updateMany", + // updateMany(filter, update, options, callback) + "updateOne" + // updateOne(filter, update, options, callback) + ]; + var OPERATION_SIGNATURES = { + // aggregate intentionally not included because `pipeline` arguments are too complex to serialize well + // see https://github.com/getsentry/sentry-javascript/pull/3102 + bulkWrite: ["operations"], + countDocuments: ["query"], + createIndex: ["fieldOrSpec"], + createIndexes: ["indexSpecs"], + deleteMany: ["filter"], + deleteOne: ["filter"], + distinct: ["key", "query"], + dropIndex: ["indexName"], + find: ["query"], + findOne: ["query"], + findOneAndDelete: ["filter"], + findOneAndReplace: ["filter", "replacement"], + findOneAndUpdate: ["filter", "update"], + indexExists: ["indexes"], + insertMany: ["docs"], + insertOne: ["doc"], + mapReduce: ["map", "reduce"], + rename: ["newName"], + replaceOne: ["filter", "doc"], + updateMany: ["filter", "update"], + updateOne: ["filter", "update"] + }; + function isCursor(maybeCursor) { + return maybeCursor && typeof maybeCursor === "object" && maybeCursor.once && typeof maybeCursor.once === "function"; + } + var Mongo = class _Mongo { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Mongo"; + } + /** + * @inheritDoc + */ + /** + * @inheritDoc + */ + constructor(options2 = {}) { + this.name = _Mongo.id; + this._operations = Array.isArray(options2.operations) ? options2.operations : OPERATIONS; + this._describeOperations = "describeOperations" in options2 ? options2.describeOperations : true; + this._useMongoose = !!options2.useMongoose; + } + /** @inheritdoc */ + loadDependency() { + const moduleName2 = this._useMongoose ? "mongoose" : "mongodb"; + return this._module = this._module || utils.loadModule(moduleName2); + } + /** + * @inheritDoc + */ + setupOnce(_, getCurrentHub) { + if (nodeUtils.shouldDisableAutoInstrumentation(getCurrentHub)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("Mongo Integration is skipped because of instrumenter configuration."); + return; + } + const pkg = this.loadDependency(); + if (!pkg) { + const moduleName2 = this._useMongoose ? "mongoose" : "mongodb"; + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error(`Mongo Integration was unable to require \`${moduleName2}\` package.`); + return; + } + this._instrumentOperations(pkg.Collection, this._operations, getCurrentHub); + } + /** + * Patches original collection methods + */ + _instrumentOperations(collection, operations, getCurrentHub) { + operations.forEach((operation) => this._patchOperation(collection, operation, getCurrentHub)); + } + /** + * Patches original collection to utilize our tracing functionality + */ + _patchOperation(collection, operation, getCurrentHub) { + if (!(operation in collection.prototype)) + return; + const getSpanContext = this._getSpanContextFromOperationArguments.bind(this); + utils.fill(collection.prototype, operation, function(orig) { + return function(...args3) { + const lastArg = args3[args3.length - 1]; + const scope = getCurrentHub().getScope(); + const parentSpan = _optionalChain([scope, "optionalAccess", (_2) => _2.getSpan, "call", (_3) => _3()]); + if (typeof lastArg !== "function" || operation === "mapReduce" && args3.length === 2) { + const span2 = _optionalChain([parentSpan, "optionalAccess", (_4) => _4.startChild, "call", (_5) => _5(getSpanContext(this, operation, args3))]); + const maybePromiseOrCursor = orig.call(this, ...args3); + if (utils.isThenable(maybePromiseOrCursor)) { + return maybePromiseOrCursor.then((res) => { + _optionalChain([span2, "optionalAccess", (_6) => _6.finish, "call", (_7) => _7()]); + return res; + }); + } else if (isCursor(maybePromiseOrCursor)) { + const cursor = maybePromiseOrCursor; + try { + cursor.once("close", () => { + _optionalChain([span2, "optionalAccess", (_8) => _8.finish, "call", (_9) => _9()]); + }); + } catch (e) { + _optionalChain([span2, "optionalAccess", (_10) => _10.finish, "call", (_11) => _11()]); + } + return cursor; + } else { + _optionalChain([span2, "optionalAccess", (_12) => _12.finish, "call", (_13) => _13()]); + return maybePromiseOrCursor; + } + } + const span = _optionalChain([parentSpan, "optionalAccess", (_14) => _14.startChild, "call", (_15) => _15(getSpanContext(this, operation, args3.slice(0, -1)))]); + return orig.call(this, ...args3.slice(0, -1), function(err2, result) { + _optionalChain([span, "optionalAccess", (_16) => _16.finish, "call", (_17) => _17()]); + lastArg(err2, result); + }); + }; + }); + } + /** + * Form a SpanContext based on the user input to a given operation. + */ + _getSpanContextFromOperationArguments(collection, operation, args3) { + const data = { + "db.system": "mongodb", + "db.name": collection.dbName, + "db.operation": operation, + "db.mongodb.collection": collection.collectionName + }; + const spanContext = { + op: "db", + // TODO v8: Use `${collection.collectionName}.${operation}` + origin: "auto.db.mongo", + description: operation, + data + }; + const signature = OPERATION_SIGNATURES[operation]; + const shouldDescribe = Array.isArray(this._describeOperations) ? this._describeOperations.includes(operation) : this._describeOperations; + if (!signature || !shouldDescribe) { + return spanContext; + } + try { + if (operation === "mapReduce") { + const [map, reduce] = args3; + data[signature[0]] = typeof map === "string" ? map : map.name || ""; + data[signature[1]] = typeof reduce === "string" ? reduce : reduce.name || ""; + } else { + for (let i = 0; i < signature.length; i++) { + data[`db.mongodb.${signature[i]}`] = JSON.stringify(args3[i]); + } + } + } catch (_oO) { + } + return spanContext; + } + }; + Mongo.__initStatic(); + exports2.Mongo = Mongo; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/prisma.js +var require_prisma = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/prisma.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var nodeUtils = require_node_utils(); + function isValidPrismaClient(possibleClient) { + return !!possibleClient && !!possibleClient["$use"]; + } + var Prisma = class _Prisma { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Prisma"; + } + /** + * @inheritDoc + */ + /** + * @inheritDoc + */ + constructor(options2 = {}) { + this.name = _Prisma.id; + if (isValidPrismaClient(options2.client) && !options2.client._sentryInstrumented) { + utils.addNonEnumerableProperty(options2.client, "_sentryInstrumented", true); + const clientData = {}; + try { + const engineConfig = options2.client._engineConfig; + if (engineConfig) { + const { activeProvider, clientVersion } = engineConfig; + if (activeProvider) { + clientData["db.system"] = activeProvider; + } + if (clientVersion) { + clientData["db.prisma.version"] = clientVersion; + } + } + } catch (e) { + } + options2.client.$use((params, next) => { + if (nodeUtils.shouldDisableAutoInstrumentation(core.getCurrentHub)) { + return next(params); + } + const action = params.action; + const model = params.model; + return core.trace( + { + name: model ? `${model} ${action}` : action, + op: "db.sql.prisma", + origin: "auto.db.prisma", + data: { ...clientData, "db.operation": action } + }, + () => next(params) + ); + }); + } else { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("Unsupported Prisma client provided to PrismaIntegration. Provided client:", options2.client); + } + } + /** + * @inheritDoc + */ + setupOnce() { + } + }; + Prisma.__initStatic(); + exports2.Prisma = Prisma; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/graphql.js +var require_graphql = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/graphql.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var nodeUtils = require_node_utils(); + var GraphQL = class _GraphQL { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "GraphQL"; + } + /** + * @inheritDoc + */ + constructor() { + this.name = _GraphQL.id; + } + /** @inheritdoc */ + loadDependency() { + return this._module = this._module || utils.loadModule("graphql/execution/execute.js"); + } + /** + * @inheritDoc + */ + setupOnce(_, getCurrentHub) { + if (nodeUtils.shouldDisableAutoInstrumentation(getCurrentHub)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("GraphQL Integration is skipped because of instrumenter configuration."); + return; + } + const pkg = this.loadDependency(); + if (!pkg) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("GraphQL Integration was unable to require graphql/execution package."); + return; + } + utils.fill(pkg, "execute", function(orig) { + return function(...args3) { + const scope = getCurrentHub().getScope(); + const parentSpan = _optionalChain([scope, "optionalAccess", (_2) => _2.getSpan, "call", (_3) => _3()]); + const span = _optionalChain([parentSpan, "optionalAccess", (_4) => _4.startChild, "call", (_5) => _5({ + description: "execute", + op: "graphql.execute", + origin: "auto.graphql.graphql" + })]); + _optionalChain([scope, "optionalAccess", (_6) => _6.setSpan, "call", (_7) => _7(span)]); + const rv = orig.call(this, ...args3); + if (utils.isThenable(rv)) { + return rv.then((res) => { + _optionalChain([span, "optionalAccess", (_8) => _8.finish, "call", (_9) => _9()]); + _optionalChain([scope, "optionalAccess", (_10) => _10.setSpan, "call", (_11) => _11(parentSpan)]); + return res; + }); + } + _optionalChain([span, "optionalAccess", (_12) => _12.finish, "call", (_13) => _13()]); + _optionalChain([scope, "optionalAccess", (_14) => _14.setSpan, "call", (_15) => _15(parentSpan)]); + return rv; + }; + }); + } + }; + GraphQL.__initStatic(); + exports2.GraphQL = GraphQL; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/apollo.js +var require_apollo = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/apollo.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var nodeUtils = require_node_utils(); + var Apollo = class _Apollo { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Apollo"; + } + /** + * @inheritDoc + */ + /** + * @inheritDoc + */ + constructor(options2 = { + useNestjs: false + }) { + this.name = _Apollo.id; + this._useNest = !!options2.useNestjs; + } + /** @inheritdoc */ + loadDependency() { + if (this._useNest) { + this._module = this._module || utils.loadModule("@nestjs/graphql"); + } else { + this._module = this._module || utils.loadModule("apollo-server-core"); + } + return this._module; + } + /** + * @inheritDoc + */ + setupOnce(_, getCurrentHub) { + if (nodeUtils.shouldDisableAutoInstrumentation(getCurrentHub)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("Apollo Integration is skipped because of instrumenter configuration."); + return; + } + if (this._useNest) { + const pkg = this.loadDependency(); + if (!pkg) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("Apollo-NestJS Integration was unable to require @nestjs/graphql package."); + return; + } + utils.fill( + pkg.GraphQLFactory.prototype, + "mergeWithSchema", + function(orig) { + return function(...args3) { + utils.fill(this.resolversExplorerService, "explore", function(orig2) { + return function() { + const resolvers = utils.arrayify(orig2.call(this)); + const instrumentedResolvers = instrumentResolvers(resolvers, getCurrentHub); + return instrumentedResolvers; + }; + }); + return orig.call(this, ...args3); + }; + } + ); + } else { + const pkg = this.loadDependency(); + if (!pkg) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error("Apollo Integration was unable to require apollo-server-core package."); + return; + } + utils.fill(pkg.ApolloServerBase.prototype, "constructSchema", function(orig) { + return function() { + if (!this.config.resolvers) { + if (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) { + if (this.config.schema) { + utils.logger.warn( + "Apollo integration is not able to trace `ApolloServer` instances constructed via `schema` property.If you are using NestJS with Apollo, please use `Sentry.Integrations.Apollo({ useNestjs: true })` instead." + ); + utils.logger.warn(); + } else if (this.config.modules) { + utils.logger.warn( + "Apollo integration is not able to trace `ApolloServer` instances constructed via `modules` property." + ); + } + utils.logger.error("Skipping tracing as no resolvers found on the `ApolloServer` instance."); + } + return orig.call(this); + } + const resolvers = utils.arrayify(this.config.resolvers); + this.config.resolvers = instrumentResolvers(resolvers, getCurrentHub); + return orig.call(this); + }; + }); + } + } + }; + Apollo.__initStatic(); + function instrumentResolvers(resolvers, getCurrentHub) { + return resolvers.map((model) => { + Object.keys(model).forEach((resolverGroupName) => { + Object.keys(model[resolverGroupName]).forEach((resolverName) => { + if (typeof model[resolverGroupName][resolverName] !== "function") { + return; + } + wrapResolver(model, resolverGroupName, resolverName, getCurrentHub); + }); + }); + return model; + }); + } + function wrapResolver(model, resolverGroupName, resolverName, getCurrentHub) { + utils.fill(model[resolverGroupName], resolverName, function(orig) { + return function(...args3) { + const scope = getCurrentHub().getScope(); + const parentSpan = _optionalChain([scope, "optionalAccess", (_2) => _2.getSpan, "call", (_3) => _3()]); + const span = _optionalChain([parentSpan, "optionalAccess", (_4) => _4.startChild, "call", (_5) => _5({ + description: `${resolverGroupName}.${resolverName}`, + op: "graphql.resolve", + origin: "auto.graphql.apollo" + })]); + const rv = orig.call(this, ...args3); + if (utils.isThenable(rv)) { + return rv.then((res) => { + _optionalChain([span, "optionalAccess", (_6) => _6.finish, "call", (_7) => _7()]); + return res; + }); + } + _optionalChain([span, "optionalAccess", (_8) => _8.finish, "call", (_9) => _9()]); + return rv; + }; + }); + } + exports2.Apollo = Apollo; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/lazy.js +var require_lazy = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/node/integrations/lazy.js"(exports2, module2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var lazyLoadedNodePerformanceMonitoringIntegrations = [ + () => { + const integration = utils.dynamicRequire(module2, "./apollo"); + return new integration.Apollo(); + }, + () => { + const integration = utils.dynamicRequire(module2, "./apollo"); + return new integration.Apollo({ useNestjs: true }); + }, + () => { + const integration = utils.dynamicRequire(module2, "./graphql"); + return new integration.GraphQL(); + }, + () => { + const integration = utils.dynamicRequire(module2, "./mongo"); + return new integration.Mongo(); + }, + () => { + const integration = utils.dynamicRequire(module2, "./mongo"); + return new integration.Mongo({ mongoose: true }); + }, + () => { + const integration = utils.dynamicRequire(module2, "./mysql"); + return new integration.Mysql(); + }, + () => { + const integration = utils.dynamicRequire(module2, "./postgres"); + return new integration.Postgres(); + } + ]; + exports2.lazyLoadedNodePerformanceMonitoringIntegrations = lazyLoadedNodePerformanceMonitoringIntegrations; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/types.js +var require_types24 = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/types.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var WINDOW = utils.GLOBAL_OBJ; + exports2.WINDOW = WINDOW; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/backgroundtab.js +var require_backgroundtab = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/backgroundtab.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var types2 = require_types24(); + function registerBackgroundTabDetection() { + if (types2.WINDOW && types2.WINDOW.document) { + types2.WINDOW.document.addEventListener("visibilitychange", () => { + const activeTransaction = core.getActiveTransaction(); + if (types2.WINDOW.document.hidden && activeTransaction) { + const statusType = "cancelled"; + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log( + `[Tracing] Transaction: ${statusType} -> since tab moved to the background, op: ${activeTransaction.op}` + ); + if (!activeTransaction.status) { + activeTransaction.setStatus(statusType); + } + activeTransaction.setTag("visibilitychange", "document.hidden"); + activeTransaction.finish(); + } + }); + } else { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("[Tracing] Could not set up background tab detection due to lack of global document"); + } + } + exports2.registerBackgroundTabDetection = registerBackgroundTabDetection; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/bindReporter.js +var require_bindReporter = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/bindReporter.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var bindReporter = (callback, metric, reportAllChanges) => { + let prevValue; + let delta; + return (forceReport) => { + if (metric.value >= 0) { + if (forceReport || reportAllChanges) { + delta = metric.value - (prevValue || 0); + if (delta || prevValue === void 0) { + prevValue = metric.value; + metric.delta = delta; + callback(metric); + } + } + } + }; + }; + exports2.bindReporter = bindReporter; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/generateUniqueID.js +var require_generateUniqueID = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/generateUniqueID.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var generateUniqueID = () => { + return `v3-${Date.now()}-${Math.floor(Math.random() * (9e12 - 1)) + 1e12}`; + }; + exports2.generateUniqueID = generateUniqueID; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/getNavigationEntry.js +var require_getNavigationEntry = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/getNavigationEntry.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var types2 = require_types24(); + var getNavigationEntryFromPerformanceTiming = () => { + const timing = types2.WINDOW.performance.timing; + const type2 = types2.WINDOW.performance.navigation.type; + const navigationEntry = { + entryType: "navigation", + startTime: 0, + type: type2 == 2 ? "back_forward" : type2 === 1 ? "reload" : "navigate" + }; + for (const key in timing) { + if (key !== "navigationStart" && key !== "toJSON") { + navigationEntry[key] = Math.max(timing[key] - timing.navigationStart, 0); + } + } + return navigationEntry; + }; + var getNavigationEntry = () => { + if (types2.WINDOW.__WEB_VITALS_POLYFILL__) { + return types2.WINDOW.performance && (performance.getEntriesByType && performance.getEntriesByType("navigation")[0] || getNavigationEntryFromPerformanceTiming()); + } else { + return types2.WINDOW.performance && performance.getEntriesByType && performance.getEntriesByType("navigation")[0]; + } + }; + exports2.getNavigationEntry = getNavigationEntry; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/getActivationStart.js +var require_getActivationStart = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/getActivationStart.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var getNavigationEntry = require_getNavigationEntry(); + var getActivationStart = () => { + const navEntry = getNavigationEntry.getNavigationEntry(); + return navEntry && navEntry.activationStart || 0; + }; + exports2.getActivationStart = getActivationStart; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/initMetric.js +var require_initMetric = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/initMetric.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var types2 = require_types24(); + var generateUniqueID = require_generateUniqueID(); + var getActivationStart = require_getActivationStart(); + var getNavigationEntry = require_getNavigationEntry(); + var initMetric = (name, value) => { + const navEntry = getNavigationEntry.getNavigationEntry(); + let navigationType = "navigate"; + if (navEntry) { + if (types2.WINDOW.document.prerendering || getActivationStart.getActivationStart() > 0) { + navigationType = "prerender"; + } else { + navigationType = navEntry.type.replace(/_/g, "-"); + } + } + return { + name, + value: typeof value === "undefined" ? -1 : value, + rating: "good", + // Will be updated if the value changes. + delta: 0, + entries: [], + id: generateUniqueID.generateUniqueID(), + navigationType + }; + }; + exports2.initMetric = initMetric; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/observe.js +var require_observe = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/observe.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var observe = (type2, callback, opts) => { + try { + if (PerformanceObserver.supportedEntryTypes.includes(type2)) { + const po = new PerformanceObserver((list) => { + callback(list.getEntries()); + }); + po.observe( + Object.assign( + { + type: type2, + buffered: true + }, + opts || {} + ) + ); + return po; + } + } catch (e) { + } + return; + }; + exports2.observe = observe; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/onHidden.js +var require_onHidden = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/onHidden.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var types2 = require_types24(); + var onHidden = (cb, once) => { + const onHiddenOrPageHide = (event) => { + if (event.type === "pagehide" || types2.WINDOW.document.visibilityState === "hidden") { + cb(event); + if (once) { + removeEventListener("visibilitychange", onHiddenOrPageHide, true); + removeEventListener("pagehide", onHiddenOrPageHide, true); + } + } + }; + addEventListener("visibilitychange", onHiddenOrPageHide, true); + addEventListener("pagehide", onHiddenOrPageHide, true); + }; + exports2.onHidden = onHidden; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/getCLS.js +var require_getCLS = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/getCLS.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var bindReporter = require_bindReporter(); + var initMetric = require_initMetric(); + var observe = require_observe(); + var onHidden = require_onHidden(); + var onCLS = (onReport) => { + const metric = initMetric.initMetric("CLS", 0); + let report; + let sessionValue = 0; + let sessionEntries = []; + const handleEntries = (entries) => { + entries.forEach((entry) => { + if (!entry.hadRecentInput) { + const firstSessionEntry = sessionEntries[0]; + const lastSessionEntry = sessionEntries[sessionEntries.length - 1]; + if (sessionValue && sessionEntries.length !== 0 && entry.startTime - lastSessionEntry.startTime < 1e3 && entry.startTime - firstSessionEntry.startTime < 5e3) { + sessionValue += entry.value; + sessionEntries.push(entry); + } else { + sessionValue = entry.value; + sessionEntries = [entry]; + } + if (sessionValue > metric.value) { + metric.value = sessionValue; + metric.entries = sessionEntries; + if (report) { + report(); + } + } + } + }); + }; + const po = observe.observe("layout-shift", handleEntries); + if (po) { + report = bindReporter.bindReporter(onReport, metric); + const stopListening = () => { + handleEntries(po.takeRecords()); + report(true); + }; + onHidden.onHidden(stopListening); + return stopListening; + } + return; + }; + exports2.onCLS = onCLS; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/getVisibilityWatcher.js +var require_getVisibilityWatcher = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/lib/getVisibilityWatcher.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var types2 = require_types24(); + var onHidden = require_onHidden(); + var firstHiddenTime = -1; + var initHiddenTime = () => { + return types2.WINDOW.document.visibilityState === "hidden" && !types2.WINDOW.document.prerendering ? 0 : Infinity; + }; + var trackChanges = () => { + onHidden.onHidden(({ timeStamp }) => { + firstHiddenTime = timeStamp; + }, true); + }; + var getVisibilityWatcher = () => { + if (firstHiddenTime < 0) { + firstHiddenTime = initHiddenTime(); + trackChanges(); + } + return { + get firstHiddenTime() { + return firstHiddenTime; + } + }; + }; + exports2.getVisibilityWatcher = getVisibilityWatcher; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/getFID.js +var require_getFID = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/getFID.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var bindReporter = require_bindReporter(); + var getVisibilityWatcher = require_getVisibilityWatcher(); + var initMetric = require_initMetric(); + var observe = require_observe(); + var onHidden = require_onHidden(); + var onFID = (onReport) => { + const visibilityWatcher = getVisibilityWatcher.getVisibilityWatcher(); + const metric = initMetric.initMetric("FID"); + let report; + const handleEntry = (entry) => { + if (entry.startTime < visibilityWatcher.firstHiddenTime) { + metric.value = entry.processingStart - entry.startTime; + metric.entries.push(entry); + report(true); + } + }; + const handleEntries = (entries) => { + entries.forEach(handleEntry); + }; + const po = observe.observe("first-input", handleEntries); + report = bindReporter.bindReporter(onReport, metric); + if (po) { + onHidden.onHidden(() => { + handleEntries(po.takeRecords()); + po.disconnect(); + }, true); + } + }; + exports2.onFID = onFID; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/getLCP.js +var require_getLCP = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/web-vitals/getLCP.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var bindReporter = require_bindReporter(); + var getActivationStart = require_getActivationStart(); + var getVisibilityWatcher = require_getVisibilityWatcher(); + var initMetric = require_initMetric(); + var observe = require_observe(); + var onHidden = require_onHidden(); + var reportedMetricIDs = {}; + var onLCP = (onReport) => { + const visibilityWatcher = getVisibilityWatcher.getVisibilityWatcher(); + const metric = initMetric.initMetric("LCP"); + let report; + const handleEntries = (entries) => { + const lastEntry = entries[entries.length - 1]; + if (lastEntry) { + const value = Math.max(lastEntry.startTime - getActivationStart.getActivationStart(), 0); + if (value < visibilityWatcher.firstHiddenTime) { + metric.value = value; + metric.entries = [lastEntry]; + report(); + } + } + }; + const po = observe.observe("largest-contentful-paint", handleEntries); + if (po) { + report = bindReporter.bindReporter(onReport, metric); + const stopListening = () => { + if (!reportedMetricIDs[metric.id]) { + handleEntries(po.takeRecords()); + po.disconnect(); + reportedMetricIDs[metric.id] = true; + report(true); + } + }; + ["keydown", "click"].forEach((type2) => { + addEventListener(type2, stopListening, { once: true, capture: true }); + }); + onHidden.onHidden(stopListening, true); + return stopListening; + } + return; + }; + exports2.onLCP = onLCP; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/metrics/utils.js +var require_utils15 = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/metrics/utils.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + function isMeasurementValue(value) { + return typeof value === "number" && isFinite(value); + } + function _startChild(transaction, { startTimestamp, ...ctx }) { + if (startTimestamp && transaction.startTimestamp > startTimestamp) { + transaction.startTimestamp = startTimestamp; + } + return transaction.startChild({ + startTimestamp, + ...ctx + }); + } + exports2._startChild = _startChild; + exports2.isMeasurementValue = isMeasurementValue; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/metrics/index.js +var require_metrics3 = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/metrics/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var types2 = require_types24(); + var getCLS = require_getCLS(); + var getFID = require_getFID(); + var getLCP = require_getLCP(); + var getVisibilityWatcher = require_getVisibilityWatcher(); + var observe = require_observe(); + var utils$1 = require_utils15(); + function msToSec(time) { + return time / 1e3; + } + function getBrowserPerformanceAPI() { + return types2.WINDOW && types2.WINDOW.addEventListener && types2.WINDOW.performance; + } + var _performanceCursor = 0; + var _measurements = {}; + var _lcpEntry; + var _clsEntry; + function startTrackingWebVitals() { + const performance2 = getBrowserPerformanceAPI(); + if (performance2 && utils.browserPerformanceTimeOrigin) { + if (performance2.mark) { + types2.WINDOW.performance.mark("sentry-tracing-init"); + } + _trackFID(); + const clsCallback = _trackCLS(); + const lcpCallback = _trackLCP(); + return () => { + if (clsCallback) { + clsCallback(); + } + if (lcpCallback) { + lcpCallback(); + } + }; + } + return () => void 0; + } + function startTrackingLongTasks() { + const entryHandler = (entries) => { + for (const entry of entries) { + const transaction = core.getActiveTransaction(); + if (!transaction) { + return; + } + const startTime = msToSec(utils.browserPerformanceTimeOrigin + entry.startTime); + const duration = msToSec(entry.duration); + transaction.startChild({ + description: "Main UI thread blocked", + op: "ui.long-task", + origin: "auto.ui.browser.metrics", + startTimestamp: startTime, + endTimestamp: startTime + duration + }); + } + }; + observe.observe("longtask", entryHandler); + } + function startTrackingInteractions() { + const entryHandler = (entries) => { + for (const entry of entries) { + const transaction = core.getActiveTransaction(); + if (!transaction) { + return; + } + if (entry.name === "click") { + const startTime = msToSec(utils.browserPerformanceTimeOrigin + entry.startTime); + const duration = msToSec(entry.duration); + transaction.startChild({ + description: utils.htmlTreeAsString(entry.target), + op: `ui.interaction.${entry.name}`, + origin: "auto.ui.browser.metrics", + startTimestamp: startTime, + endTimestamp: startTime + duration + }); + } + } + }; + observe.observe("event", entryHandler, { durationThreshold: 0 }); + } + function _trackCLS() { + return getCLS.onCLS((metric) => { + const entry = metric.entries.pop(); + if (!entry) { + return; + } + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Measurements] Adding CLS"); + _measurements["cls"] = { value: metric.value, unit: "" }; + _clsEntry = entry; + }); + } + function _trackLCP() { + return getLCP.onLCP((metric) => { + const entry = metric.entries.pop(); + if (!entry) { + return; + } + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Measurements] Adding LCP"); + _measurements["lcp"] = { value: metric.value, unit: "millisecond" }; + _lcpEntry = entry; + }); + } + function _trackFID() { + getFID.onFID((metric) => { + const entry = metric.entries.pop(); + if (!entry) { + return; + } + const timeOrigin = msToSec(utils.browserPerformanceTimeOrigin); + const startTime = msToSec(entry.startTime); + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Measurements] Adding FID"); + _measurements["fid"] = { value: metric.value, unit: "millisecond" }; + _measurements["mark.fid"] = { value: timeOrigin + startTime, unit: "second" }; + }); + } + function addPerformanceEntries(transaction) { + const performance2 = getBrowserPerformanceAPI(); + if (!performance2 || !types2.WINDOW.performance.getEntries || !utils.browserPerformanceTimeOrigin) { + return; + } + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Tracing] Adding & adjusting spans using Performance API"); + const timeOrigin = msToSec(utils.browserPerformanceTimeOrigin); + const performanceEntries = performance2.getEntries(); + let responseStartTimestamp; + let requestStartTimestamp; + performanceEntries.slice(_performanceCursor).forEach((entry) => { + const startTime = msToSec(entry.startTime); + const duration = msToSec(entry.duration); + if (transaction.op === "navigation" && timeOrigin + startTime < transaction.startTimestamp) { + return; + } + switch (entry.entryType) { + case "navigation": { + _addNavigationSpans(transaction, entry, timeOrigin); + responseStartTimestamp = timeOrigin + msToSec(entry.responseStart); + requestStartTimestamp = timeOrigin + msToSec(entry.requestStart); + break; + } + case "mark": + case "paint": + case "measure": { + _addMeasureSpans(transaction, entry, startTime, duration, timeOrigin); + const firstHidden = getVisibilityWatcher.getVisibilityWatcher(); + const shouldRecord = entry.startTime < firstHidden.firstHiddenTime; + if (entry.name === "first-paint" && shouldRecord) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Measurements] Adding FP"); + _measurements["fp"] = { value: entry.startTime, unit: "millisecond" }; + } + if (entry.name === "first-contentful-paint" && shouldRecord) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Measurements] Adding FCP"); + _measurements["fcp"] = { value: entry.startTime, unit: "millisecond" }; + } + break; + } + case "resource": { + const resourceName = entry.name.replace(types2.WINDOW.location.origin, ""); + _addResourceSpans(transaction, entry, resourceName, startTime, duration, timeOrigin); + break; + } + } + }); + _performanceCursor = Math.max(performanceEntries.length - 1, 0); + _trackNavigator(transaction); + if (transaction.op === "pageload") { + if (typeof responseStartTimestamp === "number") { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Measurements] Adding TTFB"); + _measurements["ttfb"] = { + value: (responseStartTimestamp - transaction.startTimestamp) * 1e3, + unit: "millisecond" + }; + if (typeof requestStartTimestamp === "number" && requestStartTimestamp <= responseStartTimestamp) { + _measurements["ttfb.requestTime"] = { + value: (responseStartTimestamp - requestStartTimestamp) * 1e3, + unit: "millisecond" + }; + } + } + ["fcp", "fp", "lcp"].forEach((name) => { + if (!_measurements[name] || timeOrigin >= transaction.startTimestamp) { + return; + } + const oldValue = _measurements[name].value; + const measurementTimestamp = timeOrigin + msToSec(oldValue); + const normalizedValue = Math.abs((measurementTimestamp - transaction.startTimestamp) * 1e3); + const delta = normalizedValue - oldValue; + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`[Measurements] Normalized ${name} from ${oldValue} to ${normalizedValue} (${delta})`); + _measurements[name].value = normalizedValue; + }); + const fidMark = _measurements["mark.fid"]; + if (fidMark && _measurements["fid"]) { + utils$1._startChild(transaction, { + description: "first input delay", + endTimestamp: fidMark.value + msToSec(_measurements["fid"].value), + op: "ui.action", + origin: "auto.ui.browser.metrics", + startTimestamp: fidMark.value + }); + delete _measurements["mark.fid"]; + } + if (!("fcp" in _measurements)) { + delete _measurements.cls; + } + Object.keys(_measurements).forEach((measurementName) => { + transaction.setMeasurement( + measurementName, + _measurements[measurementName].value, + _measurements[measurementName].unit + ); + }); + _tagMetricInfo(transaction); + } + _lcpEntry = void 0; + _clsEntry = void 0; + _measurements = {}; + } + function _addMeasureSpans(transaction, entry, startTime, duration, timeOrigin) { + const measureStartTimestamp = timeOrigin + startTime; + const measureEndTimestamp = measureStartTimestamp + duration; + utils$1._startChild(transaction, { + description: entry.name, + endTimestamp: measureEndTimestamp, + op: entry.entryType, + origin: "auto.resource.browser.metrics", + startTimestamp: measureStartTimestamp + }); + return measureStartTimestamp; + } + function _addNavigationSpans(transaction, entry, timeOrigin) { + ["unloadEvent", "redirect", "domContentLoadedEvent", "loadEvent", "connect"].forEach((event) => { + _addPerformanceNavigationTiming(transaction, entry, event, timeOrigin); + }); + _addPerformanceNavigationTiming(transaction, entry, "secureConnection", timeOrigin, "TLS/SSL", "connectEnd"); + _addPerformanceNavigationTiming(transaction, entry, "fetch", timeOrigin, "cache", "domainLookupStart"); + _addPerformanceNavigationTiming(transaction, entry, "domainLookup", timeOrigin, "DNS"); + _addRequest(transaction, entry, timeOrigin); + } + function _addPerformanceNavigationTiming(transaction, entry, event, timeOrigin, description, eventEnd) { + const end = eventEnd ? entry[eventEnd] : entry[`${event}End`]; + const start4 = entry[`${event}Start`]; + if (!start4 || !end) { + return; + } + utils$1._startChild(transaction, { + op: "browser", + origin: "auto.browser.browser.metrics", + description: description || event, + startTimestamp: timeOrigin + msToSec(start4), + endTimestamp: timeOrigin + msToSec(end) + }); + } + function _addRequest(transaction, entry, timeOrigin) { + utils$1._startChild(transaction, { + op: "browser", + origin: "auto.browser.browser.metrics", + description: "request", + startTimestamp: timeOrigin + msToSec(entry.requestStart), + endTimestamp: timeOrigin + msToSec(entry.responseEnd) + }); + utils$1._startChild(transaction, { + op: "browser", + origin: "auto.browser.browser.metrics", + description: "response", + startTimestamp: timeOrigin + msToSec(entry.responseStart), + endTimestamp: timeOrigin + msToSec(entry.responseEnd) + }); + } + function _addResourceSpans(transaction, entry, resourceName, startTime, duration, timeOrigin) { + if (entry.initiatorType === "xmlhttprequest" || entry.initiatorType === "fetch") { + return; + } + const data = {}; + if ("transferSize" in entry) { + data["http.response_transfer_size"] = entry.transferSize; + } + if ("encodedBodySize" in entry) { + data["http.response_content_length"] = entry.encodedBodySize; + } + if ("decodedBodySize" in entry) { + data["http.decoded_response_content_length"] = entry.decodedBodySize; + } + if ("renderBlockingStatus" in entry) { + data["resource.render_blocking_status"] = entry.renderBlockingStatus; + } + const startTimestamp = timeOrigin + startTime; + const endTimestamp = startTimestamp + duration; + utils$1._startChild(transaction, { + description: resourceName, + endTimestamp, + op: entry.initiatorType ? `resource.${entry.initiatorType}` : "resource.other", + origin: "auto.resource.browser.metrics", + startTimestamp, + data + }); + } + function _trackNavigator(transaction) { + const navigator2 = types2.WINDOW.navigator; + if (!navigator2) { + return; + } + const connection = navigator2.connection; + if (connection) { + if (connection.effectiveType) { + transaction.setTag("effectiveConnectionType", connection.effectiveType); + } + if (connection.type) { + transaction.setTag("connectionType", connection.type); + } + if (utils$1.isMeasurementValue(connection.rtt)) { + _measurements["connection.rtt"] = { value: connection.rtt, unit: "millisecond" }; + } + } + if (utils$1.isMeasurementValue(navigator2.deviceMemory)) { + transaction.setTag("deviceMemory", `${navigator2.deviceMemory} GB`); + } + if (utils$1.isMeasurementValue(navigator2.hardwareConcurrency)) { + transaction.setTag("hardwareConcurrency", String(navigator2.hardwareConcurrency)); + } + } + function _tagMetricInfo(transaction) { + if (_lcpEntry) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Measurements] Adding LCP Data"); + if (_lcpEntry.element) { + transaction.setTag("lcp.element", utils.htmlTreeAsString(_lcpEntry.element)); + } + if (_lcpEntry.id) { + transaction.setTag("lcp.id", _lcpEntry.id); + } + if (_lcpEntry.url) { + transaction.setTag("lcp.url", _lcpEntry.url.trim().slice(0, 200)); + } + transaction.setTag("lcp.size", _lcpEntry.size); + } + if (_clsEntry && _clsEntry.sources) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("[Measurements] Adding CLS Data"); + _clsEntry.sources.forEach( + (source2, index) => transaction.setTag(`cls.source.${index + 1}`, utils.htmlTreeAsString(source2.node)) + ); + } + } + exports2._addMeasureSpans = _addMeasureSpans; + exports2._addResourceSpans = _addResourceSpans; + exports2.addPerformanceEntries = addPerformanceEntries; + exports2.startTrackingInteractions = startTrackingInteractions; + exports2.startTrackingLongTasks = startTrackingLongTasks; + exports2.startTrackingWebVitals = startTrackingWebVitals; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/request.js +var require_request = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/request.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var DEFAULT_TRACE_PROPAGATION_TARGETS = ["localhost", /^\/(?!\/)/]; + var defaultRequestInstrumentationOptions = { + traceFetch: true, + traceXHR: true, + enableHTTPTimings: true, + // TODO (v8): Remove this property + tracingOrigins: DEFAULT_TRACE_PROPAGATION_TARGETS, + tracePropagationTargets: DEFAULT_TRACE_PROPAGATION_TARGETS + }; + function instrumentOutgoingRequests(_options) { + const { + traceFetch, + traceXHR, + // eslint-disable-next-line deprecation/deprecation + tracePropagationTargets, + // eslint-disable-next-line deprecation/deprecation + tracingOrigins, + shouldCreateSpanForRequest, + enableHTTPTimings + } = { + traceFetch: defaultRequestInstrumentationOptions.traceFetch, + traceXHR: defaultRequestInstrumentationOptions.traceXHR, + ..._options + }; + const shouldCreateSpan = typeof shouldCreateSpanForRequest === "function" ? shouldCreateSpanForRequest : (_) => true; + const shouldAttachHeadersWithTargets = (url2) => shouldAttachHeaders(url2, tracePropagationTargets || tracingOrigins); + const spans = {}; + if (traceFetch) { + utils.addInstrumentationHandler("fetch", (handlerData) => { + const createdSpan = fetchCallback(handlerData, shouldCreateSpan, shouldAttachHeadersWithTargets, spans); + if (enableHTTPTimings && createdSpan) { + addHTTPTimings(createdSpan); + } + }); + } + if (traceXHR) { + utils.addInstrumentationHandler("xhr", (handlerData) => { + const createdSpan = xhrCallback(handlerData, shouldCreateSpan, shouldAttachHeadersWithTargets, spans); + if (enableHTTPTimings && createdSpan) { + addHTTPTimings(createdSpan); + } + }); + } + } + function isPerformanceResourceTiming(entry) { + return entry.entryType === "resource" && "initiatorType" in entry && typeof entry.nextHopProtocol === "string" && (entry.initiatorType === "fetch" || entry.initiatorType === "xmlhttprequest"); + } + function addHTTPTimings(span) { + const url2 = span.data.url; + const observer = new PerformanceObserver((list) => { + const entries = list.getEntries(); + entries.forEach((entry) => { + if (isPerformanceResourceTiming(entry) && entry.name.endsWith(url2)) { + const spanData = resourceTimingEntryToSpanData(entry); + spanData.forEach((data) => span.setData(...data)); + observer.disconnect(); + } + }); + }); + observer.observe({ + entryTypes: ["resource"] + }); + } + function extractNetworkProtocol(nextHopProtocol) { + let name = "unknown"; + let version4 = "unknown"; + let _name = ""; + for (const char of nextHopProtocol) { + if (char === "/") { + [name, version4] = nextHopProtocol.split("/"); + break; + } + if (!isNaN(Number(char))) { + name = _name === "h" ? "http" : _name; + version4 = nextHopProtocol.split(_name)[1]; + break; + } + _name += char; + } + if (_name === nextHopProtocol) { + name = _name; + } + return { name, version: version4 }; + } + function getAbsoluteTime(time = 0) { + return ((utils.browserPerformanceTimeOrigin || performance.timeOrigin) + time) / 1e3; + } + function resourceTimingEntryToSpanData(resourceTiming) { + const { name, version: version4 } = extractNetworkProtocol(resourceTiming.nextHopProtocol); + const timingSpanData = []; + timingSpanData.push(["network.protocol.version", version4], ["network.protocol.name", name]); + if (!utils.browserPerformanceTimeOrigin) { + return timingSpanData; + } + return [ + ...timingSpanData, + ["http.request.redirect_start", getAbsoluteTime(resourceTiming.redirectStart)], + ["http.request.fetch_start", getAbsoluteTime(resourceTiming.fetchStart)], + ["http.request.domain_lookup_start", getAbsoluteTime(resourceTiming.domainLookupStart)], + ["http.request.domain_lookup_end", getAbsoluteTime(resourceTiming.domainLookupEnd)], + ["http.request.connect_start", getAbsoluteTime(resourceTiming.connectStart)], + ["http.request.secure_connection_start", getAbsoluteTime(resourceTiming.secureConnectionStart)], + ["http.request.connection_end", getAbsoluteTime(resourceTiming.connectEnd)], + ["http.request.request_start", getAbsoluteTime(resourceTiming.requestStart)], + ["http.request.response_start", getAbsoluteTime(resourceTiming.responseStart)], + ["http.request.response_end", getAbsoluteTime(resourceTiming.responseEnd)] + ]; + } + function shouldAttachHeaders(url2, tracePropagationTargets) { + return utils.stringMatchesSomePattern(url2, tracePropagationTargets || DEFAULT_TRACE_PROPAGATION_TARGETS); + } + function fetchCallback(handlerData, shouldCreateSpan, shouldAttachHeaders2, spans) { + if (!core.hasTracingEnabled() || !handlerData.fetchData) { + return void 0; + } + const shouldCreateSpanResult = shouldCreateSpan(handlerData.fetchData.url); + if (handlerData.endTimestamp && shouldCreateSpanResult) { + const spanId = handlerData.fetchData.__span; + if (!spanId) + return; + const span2 = spans[spanId]; + if (span2) { + if (handlerData.response) { + span2.setHttpStatus(handlerData.response.status); + const contentLength = ( + // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access + handlerData.response && handlerData.response.headers && handlerData.response.headers.get("content-length") + ); + const contentLengthNum = parseInt(contentLength); + if (contentLengthNum > 0) { + span2.setData("http.response_content_length", contentLengthNum); + } + } else if (handlerData.error) { + span2.setStatus("internal_error"); + } + span2.finish(); + delete spans[spanId]; + } + return void 0; + } + const hub = core.getCurrentHub(); + const scope = hub.getScope(); + const client = hub.getClient(); + const parentSpan = scope.getSpan(); + const { method, url: url2 } = handlerData.fetchData; + const span = shouldCreateSpanResult && parentSpan ? parentSpan.startChild({ + data: { + url: url2, + type: "fetch", + "http.method": method + }, + description: `${method} ${url2}`, + op: "http.client", + origin: "auto.http.browser" + }) : void 0; + if (span) { + handlerData.fetchData.__span = span.spanId; + spans[span.spanId] = span; + } + if (shouldAttachHeaders2(handlerData.fetchData.url) && client) { + const request = handlerData.args[0]; + handlerData.args[1] = handlerData.args[1] || {}; + const options2 = handlerData.args[1]; + options2.headers = addTracingHeadersToFetchRequest(request, client, scope, options2, span); + } + return span; + } + function addTracingHeadersToFetchRequest(request, client, scope, options2, requestSpan) { + const span = requestSpan || scope.getSpan(); + const transaction = span && span.transaction; + const { traceId, sampled, dsc } = scope.getPropagationContext(); + const sentryTraceHeader = span ? span.toTraceparent() : utils.generateSentryTraceHeader(traceId, void 0, sampled); + const dynamicSamplingContext = transaction ? transaction.getDynamicSamplingContext() : dsc ? dsc : core.getDynamicSamplingContextFromClient(traceId, client, scope); + const sentryBaggageHeader = utils.dynamicSamplingContextToSentryBaggageHeader(dynamicSamplingContext); + const headers = typeof Request !== "undefined" && utils.isInstanceOf(request, Request) ? request.headers : options2.headers; + if (!headers) { + return { "sentry-trace": sentryTraceHeader, baggage: sentryBaggageHeader }; + } else if (typeof Headers !== "undefined" && utils.isInstanceOf(headers, Headers)) { + const newHeaders = new Headers(headers); + newHeaders.append("sentry-trace", sentryTraceHeader); + if (sentryBaggageHeader) { + newHeaders.append(utils.BAGGAGE_HEADER_NAME, sentryBaggageHeader); + } + return newHeaders; + } else if (Array.isArray(headers)) { + const newHeaders = [...headers, ["sentry-trace", sentryTraceHeader]]; + if (sentryBaggageHeader) { + newHeaders.push([utils.BAGGAGE_HEADER_NAME, sentryBaggageHeader]); + } + return newHeaders; + } else { + const existingBaggageHeader = "baggage" in headers ? headers.baggage : void 0; + const newBaggageHeaders = []; + if (Array.isArray(existingBaggageHeader)) { + newBaggageHeaders.push(...existingBaggageHeader); + } else if (existingBaggageHeader) { + newBaggageHeaders.push(existingBaggageHeader); + } + if (sentryBaggageHeader) { + newBaggageHeaders.push(sentryBaggageHeader); + } + return { + ...headers, + "sentry-trace": sentryTraceHeader, + baggage: newBaggageHeaders.length > 0 ? newBaggageHeaders.join(",") : void 0 + }; + } + } + function xhrCallback(handlerData, shouldCreateSpan, shouldAttachHeaders2, spans) { + const xhr = handlerData.xhr; + const sentryXhrData = xhr && xhr[utils.SENTRY_XHR_DATA_KEY]; + if (!core.hasTracingEnabled() || xhr && xhr.__sentry_own_request__ || !xhr || !sentryXhrData) { + return void 0; + } + const shouldCreateSpanResult = shouldCreateSpan(sentryXhrData.url); + if (handlerData.endTimestamp && shouldCreateSpanResult) { + const spanId = xhr.__sentry_xhr_span_id__; + if (!spanId) + return; + const span2 = spans[spanId]; + if (span2) { + span2.setHttpStatus(sentryXhrData.status_code); + span2.finish(); + delete spans[spanId]; + } + return void 0; + } + const hub = core.getCurrentHub(); + const scope = hub.getScope(); + const parentSpan = scope.getSpan(); + const span = shouldCreateSpanResult && parentSpan ? parentSpan.startChild({ + data: { + ...sentryXhrData.data, + type: "xhr", + "http.method": sentryXhrData.method, + url: sentryXhrData.url + }, + description: `${sentryXhrData.method} ${sentryXhrData.url}`, + op: "http.client", + origin: "auto.http.browser" + }) : void 0; + if (span) { + xhr.__sentry_xhr_span_id__ = span.spanId; + spans[xhr.__sentry_xhr_span_id__] = span; + } + if (xhr.setRequestHeader && shouldAttachHeaders2(sentryXhrData.url)) { + if (span) { + const transaction = span && span.transaction; + const dynamicSamplingContext = transaction && transaction.getDynamicSamplingContext(); + const sentryBaggageHeader = utils.dynamicSamplingContextToSentryBaggageHeader(dynamicSamplingContext); + setHeaderOnXhr(xhr, span.toTraceparent(), sentryBaggageHeader); + } else { + const client = hub.getClient(); + const { traceId, sampled, dsc } = scope.getPropagationContext(); + const sentryTraceHeader = utils.generateSentryTraceHeader(traceId, void 0, sampled); + const dynamicSamplingContext = dsc || (client ? core.getDynamicSamplingContextFromClient(traceId, client, scope) : void 0); + const sentryBaggageHeader = utils.dynamicSamplingContextToSentryBaggageHeader(dynamicSamplingContext); + setHeaderOnXhr(xhr, sentryTraceHeader, sentryBaggageHeader); + } + } + return span; + } + function setHeaderOnXhr(xhr, sentryTraceHeader, sentryBaggageHeader) { + try { + xhr.setRequestHeader("sentry-trace", sentryTraceHeader); + if (sentryBaggageHeader) { + xhr.setRequestHeader(utils.BAGGAGE_HEADER_NAME, sentryBaggageHeader); + } + } catch (_) { + } + } + exports2.DEFAULT_TRACE_PROPAGATION_TARGETS = DEFAULT_TRACE_PROPAGATION_TARGETS; + exports2.addTracingHeadersToFetchRequest = addTracingHeadersToFetchRequest; + exports2.defaultRequestInstrumentationOptions = defaultRequestInstrumentationOptions; + exports2.extractNetworkProtocol = extractNetworkProtocol; + exports2.fetchCallback = fetchCallback; + exports2.instrumentOutgoingRequests = instrumentOutgoingRequests; + exports2.shouldAttachHeaders = shouldAttachHeaders; + exports2.xhrCallback = xhrCallback; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/router.js +var require_router = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/router.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var types2 = require_types24(); + function instrumentRoutingWithDefaults(customStartTransaction, startTransactionOnPageLoad = true, startTransactionOnLocationChange = true) { + if (!types2.WINDOW || !types2.WINDOW.location) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("Could not initialize routing instrumentation due to invalid location"); + return; + } + let startingUrl = types2.WINDOW.location.href; + let activeTransaction; + if (startTransactionOnPageLoad) { + activeTransaction = customStartTransaction({ + name: types2.WINDOW.location.pathname, + // pageload should always start at timeOrigin (and needs to be in s, not ms) + startTimestamp: utils.browserPerformanceTimeOrigin ? utils.browserPerformanceTimeOrigin / 1e3 : void 0, + op: "pageload", + origin: "auto.pageload.browser", + metadata: { source: "url" } + }); + } + if (startTransactionOnLocationChange) { + utils.addInstrumentationHandler("history", ({ to, from }) => { + if (from === void 0 && startingUrl && startingUrl.indexOf(to) !== -1) { + startingUrl = void 0; + return; + } + if (from !== to) { + startingUrl = void 0; + if (activeTransaction) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`[Tracing] Finishing current transaction with op: ${activeTransaction.op}`); + activeTransaction.finish(); + } + activeTransaction = customStartTransaction({ + name: types2.WINDOW.location.pathname, + op: "navigation", + origin: "auto.navigation.browser", + metadata: { source: "url" } + }); + } + }); + } + } + exports2.instrumentRoutingWithDefaults = instrumentRoutingWithDefaults; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/browsertracing.js +var require_browsertracing = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/browser/browsertracing.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var backgroundtab = require_backgroundtab(); + var index = require_metrics3(); + var request = require_request(); + var router = require_router(); + var types2 = require_types24(); + var BROWSER_TRACING_INTEGRATION_ID = "BrowserTracing"; + var DEFAULT_BROWSER_TRACING_OPTIONS = { + ...core.TRACING_DEFAULTS, + markBackgroundTransactions: true, + routingInstrumentation: router.instrumentRoutingWithDefaults, + startTransactionOnLocationChange: true, + startTransactionOnPageLoad: true, + enableLongTask: true, + _experiments: {}, + ...request.defaultRequestInstrumentationOptions + }; + var BrowserTracing = class { + // This class currently doesn't have a static `id` field like the other integration classes, because it prevented + // @sentry/tracing from being treeshaken. Tree shakers do not like static fields, because they behave like side effects. + // TODO: Come up with a better plan, than using static fields on integration classes, and use that plan on all + // integrations. + /** Browser Tracing integration options */ + /** + * @inheritDoc + */ + constructor(_options) { + this.name = BROWSER_TRACING_INTEGRATION_ID; + this._hasSetTracePropagationTargets = false; + core.addTracingExtensions(); + if (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) { + this._hasSetTracePropagationTargets = !!(_options && // eslint-disable-next-line deprecation/deprecation + (_options.tracePropagationTargets || _options.tracingOrigins)); + } + this.options = { + ...DEFAULT_BROWSER_TRACING_OPTIONS, + ..._options + }; + if (this.options._experiments.enableLongTask !== void 0) { + this.options.enableLongTask = this.options._experiments.enableLongTask; + } + if (_options && !_options.tracePropagationTargets && _options.tracingOrigins) { + this.options.tracePropagationTargets = _options.tracingOrigins; + } + this._collectWebVitals = index.startTrackingWebVitals(); + if (this.options.enableLongTask) { + index.startTrackingLongTasks(); + } + if (this.options._experiments.enableInteractions) { + index.startTrackingInteractions(); + } + } + /** + * @inheritDoc + */ + setupOnce(_, getCurrentHub) { + this._getCurrentHub = getCurrentHub; + const hub = getCurrentHub(); + const client = hub.getClient(); + const clientOptions = client && client.getOptions(); + const { + routingInstrumentation: instrumentRouting, + startTransactionOnLocationChange, + startTransactionOnPageLoad, + markBackgroundTransactions, + traceFetch, + traceXHR, + shouldCreateSpanForRequest, + enableHTTPTimings, + _experiments + } = this.options; + const clientOptionsTracePropagationTargets = clientOptions && clientOptions.tracePropagationTargets; + const tracePropagationTargets = clientOptionsTracePropagationTargets || this.options.tracePropagationTargets; + if ((typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && this._hasSetTracePropagationTargets && clientOptionsTracePropagationTargets) { + utils.logger.warn( + "[Tracing] The `tracePropagationTargets` option was set in the BrowserTracing integration and top level `Sentry.init`. The top level `Sentry.init` value is being used." + ); + } + instrumentRouting( + (context2) => { + const transaction = this._createRouteTransaction(context2); + this.options._experiments.onStartRouteTransaction && this.options._experiments.onStartRouteTransaction(transaction, context2, getCurrentHub); + return transaction; + }, + startTransactionOnPageLoad, + startTransactionOnLocationChange + ); + if (markBackgroundTransactions) { + backgroundtab.registerBackgroundTabDetection(); + } + if (_experiments.enableInteractions) { + this._registerInteractionListener(); + } + request.instrumentOutgoingRequests({ + traceFetch, + traceXHR, + tracePropagationTargets, + shouldCreateSpanForRequest, + enableHTTPTimings + }); + } + /** Create routing idle transaction. */ + _createRouteTransaction(context2) { + if (!this._getCurrentHub) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn(`[Tracing] Did not create ${context2.op} transaction because _getCurrentHub is invalid.`); + return void 0; + } + const hub = this._getCurrentHub(); + const { beforeNavigate, idleTimeout, finalTimeout, heartbeatInterval } = this.options; + const isPageloadTransaction = context2.op === "pageload"; + const sentryTrace = isPageloadTransaction ? getMetaContent("sentry-trace") : ""; + const baggage = isPageloadTransaction ? getMetaContent("baggage") : ""; + const { traceparentData, dynamicSamplingContext, propagationContext } = utils.tracingContextFromHeaders( + sentryTrace, + baggage + ); + const expandedContext = { + ...context2, + ...traceparentData, + metadata: { + ...context2.metadata, + dynamicSamplingContext: traceparentData && !dynamicSamplingContext ? {} : dynamicSamplingContext + }, + trimEnd: true + }; + const modifiedContext = typeof beforeNavigate === "function" ? beforeNavigate(expandedContext) : expandedContext; + const finalContext = modifiedContext === void 0 ? { ...expandedContext, sampled: false } : modifiedContext; + finalContext.metadata = finalContext.name !== expandedContext.name ? { ...finalContext.metadata, source: "custom" } : finalContext.metadata; + this._latestRouteName = finalContext.name; + this._latestRouteSource = finalContext.metadata && finalContext.metadata.source; + if (finalContext.sampled === false) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`[Tracing] Will not send ${finalContext.op} transaction because of beforeNavigate.`); + } + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`[Tracing] Starting ${finalContext.op} transaction on scope`); + const { location } = types2.WINDOW; + const idleTransaction = core.startIdleTransaction( + hub, + finalContext, + idleTimeout, + finalTimeout, + true, + { location }, + // for use in the tracesSampler + heartbeatInterval + ); + const scope = hub.getScope(); + if (isPageloadTransaction && traceparentData) { + scope.setPropagationContext(propagationContext); + } else { + scope.setPropagationContext({ + traceId: idleTransaction.traceId, + spanId: idleTransaction.spanId, + parentSpanId: idleTransaction.parentSpanId, + sampled: idleTransaction.sampled + }); + } + idleTransaction.registerBeforeFinishCallback((transaction) => { + this._collectWebVitals(); + index.addPerformanceEntries(transaction); + }); + return idleTransaction; + } + /** Start listener for interaction transactions */ + _registerInteractionListener() { + let inflightInteractionTransaction; + const registerInteractionTransaction = () => { + const { idleTimeout, finalTimeout, heartbeatInterval } = this.options; + const op = "ui.action.click"; + const currentTransaction = core.getActiveTransaction(); + if (currentTransaction && currentTransaction.op && ["navigation", "pageload"].includes(currentTransaction.op)) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn( + `[Tracing] Did not create ${op} transaction because a pageload or navigation transaction is in progress.` + ); + return void 0; + } + if (inflightInteractionTransaction) { + inflightInteractionTransaction.setFinishReason("interactionInterrupted"); + inflightInteractionTransaction.finish(); + inflightInteractionTransaction = void 0; + } + if (!this._getCurrentHub) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn(`[Tracing] Did not create ${op} transaction because _getCurrentHub is invalid.`); + return void 0; + } + if (!this._latestRouteName) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn(`[Tracing] Did not create ${op} transaction because _latestRouteName is missing.`); + return void 0; + } + const hub = this._getCurrentHub(); + const { location } = types2.WINDOW; + const context2 = { + name: this._latestRouteName, + op, + trimEnd: true, + metadata: { + source: this._latestRouteSource || "url" + } + }; + inflightInteractionTransaction = core.startIdleTransaction( + hub, + context2, + idleTimeout, + finalTimeout, + true, + { location }, + // for use in the tracesSampler + heartbeatInterval + ); + }; + ["click"].forEach((type2) => { + addEventListener(type2, registerInteractionTransaction, { once: false, capture: true }); + }); + } + }; + function getMetaContent(metaName) { + const metaTag = utils.getDomElement(`meta[name=${metaName}]`); + return metaTag ? metaTag.getAttribute("content") : void 0; + } + exports2.BROWSER_TRACING_INTEGRATION_ID = BROWSER_TRACING_INTEGRATION_ID; + exports2.BrowserTracing = BrowserTracing; + exports2.getMetaContent = getMetaContent; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/extensions.js +var require_extensions = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/extensions.js"(exports2, module2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + function _autoloadDatabaseIntegrations() { + const carrier = core.getMainCarrier(); + if (!carrier.__SENTRY__) { + return; + } + const packageToIntegrationMapping = { + mongodb() { + const integration = utils.dynamicRequire(module2, "./node/integrations/mongo"); + return new integration.Mongo(); + }, + mongoose() { + const integration = utils.dynamicRequire(module2, "./node/integrations/mongo"); + return new integration.Mongo(); + }, + mysql() { + const integration = utils.dynamicRequire(module2, "./node/integrations/mysql"); + return new integration.Mysql(); + }, + pg() { + const integration = utils.dynamicRequire(module2, "./node/integrations/postgres"); + return new integration.Postgres(); + } + }; + const mappedPackages = Object.keys(packageToIntegrationMapping).filter((moduleName2) => !!utils.loadModule(moduleName2)).map((pkg) => { + try { + return packageToIntegrationMapping[pkg](); + } catch (e) { + return void 0; + } + }).filter((p) => p); + if (mappedPackages.length > 0) { + carrier.__SENTRY__.integrations = [...carrier.__SENTRY__.integrations || [], ...mappedPackages]; + } + } + function addExtensionMethods() { + core.addTracingExtensions(); + if (utils.isNodeEnv()) { + _autoloadDatabaseIntegrations(); + } + } + exports2.addExtensionMethods = addExtensionMethods; + } +}); + +// ../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/index.js +var require_cjs6 = __commonJS({ + "../node_modules/.pnpm/@sentry-internal+tracing@7.66.0/node_modules/@sentry-internal/tracing/cjs/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var express = require_express(); + var postgres = require_postgres(); + var mysql = require_mysql(); + var mongo = require_mongo(); + var prisma = require_prisma(); + var graphql = require_graphql(); + var apollo = require_apollo(); + var lazy = require_lazy(); + var browsertracing = require_browsertracing(); + var request = require_request(); + var extensions2 = require_extensions(); + exports2.IdleTransaction = core.IdleTransaction; + exports2.Span = core.Span; + exports2.SpanStatus = core.SpanStatus; + exports2.Transaction = core.Transaction; + exports2.extractTraceparentData = core.extractTraceparentData; + exports2.getActiveTransaction = core.getActiveTransaction; + exports2.hasTracingEnabled = core.hasTracingEnabled; + exports2.spanStatusfromHttpCode = core.spanStatusfromHttpCode; + exports2.startIdleTransaction = core.startIdleTransaction; + exports2.TRACEPARENT_REGEXP = utils.TRACEPARENT_REGEXP; + exports2.stripUrlQueryAndFragment = utils.stripUrlQueryAndFragment; + exports2.Express = express.Express; + exports2.Postgres = postgres.Postgres; + exports2.Mysql = mysql.Mysql; + exports2.Mongo = mongo.Mongo; + exports2.Prisma = prisma.Prisma; + exports2.GraphQL = graphql.GraphQL; + exports2.Apollo = apollo.Apollo; + exports2.lazyLoadedNodePerformanceMonitoringIntegrations = lazy.lazyLoadedNodePerformanceMonitoringIntegrations; + exports2.BROWSER_TRACING_INTEGRATION_ID = browsertracing.BROWSER_TRACING_INTEGRATION_ID; + exports2.BrowserTracing = browsertracing.BrowserTracing; + exports2.addTracingHeadersToFetchRequest = request.addTracingHeadersToFetchRequest; + exports2.defaultRequestInstrumentationOptions = request.defaultRequestInstrumentationOptions; + exports2.instrumentOutgoingRequests = request.instrumentOutgoingRequests; + exports2.addExtensionMethods = extensions2.addExtensionMethods; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/tracing/index.js +var require_tracing2 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/tracing/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var tracing = require_cjs6(); + var utils = require_cjs3(); + function autoDiscoverNodePerformanceMonitoringIntegrations() { + const loadedIntegrations = tracing.lazyLoadedNodePerformanceMonitoringIntegrations.map((tryLoad) => { + try { + return tryLoad(); + } catch (_) { + return void 0; + } + }).filter((integration) => !!integration); + if (loadedIntegrations.length === 0) { + utils.logger.warn("Performance monitoring integrations could not be automatically loaded."); + } + return loadedIntegrations.filter((integration) => !!integration.loadDependency()); + } + exports2.autoDiscoverNodePerformanceMonitoringIntegrations = autoDiscoverNodePerformanceMonitoringIntegrations; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/eventbuilder.js +var require_eventbuilder = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/eventbuilder.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + function parseStackFrames(stackParser, error) { + return stackParser(error.stack || "", 1); + } + function exceptionFromError(stackParser, error) { + const exception = { + type: error.name || error.constructor.name, + value: error.message + }; + const frames = parseStackFrames(stackParser, error); + if (frames.length) { + exception.stacktrace = { frames }; + } + return exception; + } + function eventFromUnknownInput(stackParser, exception, hint) { + let ex = exception; + const providedMechanism = hint && hint.data && hint.data.mechanism; + const mechanism = providedMechanism || { + handled: true, + type: "generic" + }; + if (!utils.isError(exception)) { + if (utils.isPlainObject(exception)) { + const message = `Non-Error exception captured with keys: ${utils.extractExceptionKeysForMessage(exception)}`; + const hub = core.getCurrentHub(); + const client = hub.getClient(); + const normalizeDepth = client && client.getOptions().normalizeDepth; + hub.configureScope((scope) => { + scope.setExtra("__serialized__", utils.normalizeToSize(exception, normalizeDepth)); + }); + ex = hint && hint.syntheticException || new Error(message); + ex.message = message; + } else { + ex = hint && hint.syntheticException || new Error(exception); + ex.message = exception; + } + mechanism.synthetic = true; + } + const event = { + exception: { + values: [exceptionFromError(stackParser, ex)] + } + }; + utils.addExceptionTypeValue(event, void 0, void 0); + utils.addExceptionMechanism(event, mechanism); + return { + ...event, + event_id: hint && hint.event_id + }; + } + function eventFromMessage(stackParser, message, level = "info", hint, attachStacktrace) { + const event = { + event_id: hint && hint.event_id, + level, + message + }; + if (attachStacktrace && hint && hint.syntheticException) { + const frames = parseStackFrames(stackParser, hint.syntheticException); + if (frames.length) { + event.exception = { + values: [ + { + value: message, + stacktrace: { frames } + } + ] + }; + } + } + return event; + } + exports2.eventFromMessage = eventFromMessage; + exports2.eventFromUnknownInput = eventFromUnknownInput; + exports2.exceptionFromError = exceptionFromError; + exports2.parseStackFrames = parseStackFrames; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/client.js +var require_client2 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/client.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var os8 = require("os"); + var util2 = require("util"); + var eventbuilder = require_eventbuilder(); + var NodeClient = class extends core.BaseClient { + /** + * Creates a new Node SDK instance. + * @param options Configuration options for this SDK. + */ + constructor(options2) { + options2._metadata = options2._metadata || {}; + options2._metadata.sdk = options2._metadata.sdk || { + name: "sentry.javascript.node", + packages: [ + { + name: "npm:@sentry/node", + version: core.SDK_VERSION + } + ], + version: core.SDK_VERSION + }; + options2.transportOptions = { + textEncoder: new util2.TextEncoder(), + ...options2.transportOptions + }; + core.addTracingExtensions(); + super(options2); + } + /** + * @inheritDoc + */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types + captureException(exception, hint, scope) { + if (this._options.autoSessionTracking && this._sessionFlusher && scope) { + const requestSession = scope.getRequestSession(); + if (requestSession && requestSession.status === "ok") { + requestSession.status = "errored"; + } + } + return super.captureException(exception, hint, scope); + } + /** + * @inheritDoc + */ + captureEvent(event, hint, scope) { + if (this._options.autoSessionTracking && this._sessionFlusher && scope) { + const eventType = event.type || "exception"; + const isException = eventType === "exception" && event.exception && event.exception.values && event.exception.values.length > 0; + if (isException) { + const requestSession = scope.getRequestSession(); + if (requestSession && requestSession.status === "ok") { + requestSession.status = "errored"; + } + } + } + return super.captureEvent(event, hint, scope); + } + /** + * + * @inheritdoc + */ + close(timeout) { + _optionalChain([this, "access", (_) => _._sessionFlusher, "optionalAccess", (_2) => _2.close, "call", (_3) => _3()]); + return super.close(timeout); + } + /** Method that initialises an instance of SessionFlusher on Client */ + initSessionFlusher() { + const { release, environment } = this._options; + if (!release) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("Cannot initialise an instance of SessionFlusher if no release is provided!"); + } else { + this._sessionFlusher = new core.SessionFlusher(this, { + release, + environment + }); + } + } + /** + * @inheritDoc + */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types + eventFromException(exception, hint) { + return utils.resolvedSyncPromise(eventbuilder.eventFromUnknownInput(this._options.stackParser, exception, hint)); + } + /** + * @inheritDoc + */ + eventFromMessage(message, level = "info", hint) { + return utils.resolvedSyncPromise( + eventbuilder.eventFromMessage(this._options.stackParser, message, level, hint, this._options.attachStacktrace) + ); + } + /** + * Create a cron monitor check in and send it to Sentry. + * + * @param checkIn An object that describes a check in. + * @param upsertMonitorConfig An optional object that describes a monitor config. Use this if you want + * to create a monitor automatically when sending a check in. + * @returns A string representing the id of the check in. + */ + captureCheckIn(checkIn, monitorConfig, scope) { + const id = checkIn.status !== "in_progress" && checkIn.checkInId ? checkIn.checkInId : utils.uuid4(); + if (!this._isEnabled()) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("SDK not enabled, will not capture checkin."); + return id; + } + const options2 = this.getOptions(); + const { release, environment, tunnel } = options2; + const serializedCheckIn = { + check_in_id: id, + monitor_slug: checkIn.monitorSlug, + status: checkIn.status, + release, + environment + }; + if (checkIn.status !== "in_progress") { + serializedCheckIn.duration = checkIn.duration; + } + if (monitorConfig) { + serializedCheckIn.monitor_config = { + schedule: monitorConfig.schedule, + checkin_margin: monitorConfig.checkinMargin, + max_runtime: monitorConfig.maxRuntime, + timezone: monitorConfig.timezone + }; + } + const [dynamicSamplingContext, traceContext] = this._getTraceInfoFromScope(scope); + if (traceContext) { + serializedCheckIn.contexts = { + trace: traceContext + }; + } + const envelope = core.createCheckInEnvelope( + serializedCheckIn, + dynamicSamplingContext, + this.getSdkMetadata(), + tunnel, + this.getDsn() + ); + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.info("Sending checkin:", checkIn.monitorSlug, checkIn.status); + void this._sendEnvelope(envelope); + return id; + } + /** + * @inheritDoc + */ + _prepareEvent(event, hint, scope) { + event.platform = event.platform || "node"; + event.contexts = { + ...event.contexts, + runtime: _optionalChain([event, "access", (_4) => _4.contexts, "optionalAccess", (_5) => _5.runtime]) || { + name: "node", + version: global.process.version + } + }; + event.server_name = event.server_name || this.getOptions().serverName || global.process.env.SENTRY_NAME || os8.hostname(); + return super._prepareEvent(event, hint, scope); + } + /** + * Method responsible for capturing/ending a request session by calling `incrementSessionStatusCount` to increment + * appropriate session aggregates bucket + */ + _captureRequestSession() { + if (!this._sessionFlusher) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("Discarded request mode session because autoSessionTracking option was disabled"); + } else { + this._sessionFlusher.incrementSessionStatusCount(); + } + } + /** Extract trace information from scope */ + _getTraceInfoFromScope(scope) { + if (!scope) { + return [void 0, void 0]; + } + const span = scope.getSpan(); + if (span) { + return [_optionalChain([span, "optionalAccess", (_6) => _6.transaction, "optionalAccess", (_7) => _7.getDynamicSamplingContext, "call", (_8) => _8()]), _optionalChain([span, "optionalAccess", (_9) => _9.getTraceContext, "call", (_10) => _10()])]; + } + const { traceId, spanId, parentSpanId, dsc } = scope.getPropagationContext(); + const traceContext = { + trace_id: traceId, + span_id: spanId, + parent_span_id: parentSpanId + }; + if (dsc) { + return [dsc, traceContext]; + } + return [core.getDynamicSamplingContextFromClient(traceId, this, scope), traceContext]; + } + }; + exports2.NodeClient = NodeClient; + } +}); + +// ../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/promisify.js +var require_promisify2 = __commonJS({ + "../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/promisify.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function promisify4(fn) { + return function(req, opts) { + return new Promise((resolve8, reject) => { + fn.call(this, req, opts, (err2, rtn) => { + if (err2) { + reject(err2); + } else { + resolve8(rtn); + } + }); + }); + }; + } + exports2.default = promisify4; + } +}); + +// ../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/index.js +var require_src30 = __commonJS({ + "../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/index.js"(exports2, module2) { + "use strict"; + var __importDefault = exports2 && exports2.__importDefault || function(mod2) { + return mod2 && mod2.__esModule ? mod2 : { "default": mod2 }; + }; + var events_1 = require("events"); + var debug_1 = __importDefault(require_src3()); + var promisify_1 = __importDefault(require_promisify2()); + var debug = debug_1.default("agent-base"); + function isAgent(v) { + return Boolean(v) && typeof v.addRequest === "function"; + } + function isSecureEndpoint() { + const { stack } = new Error(); + if (typeof stack !== "string") + return false; + return stack.split("\n").some((l2) => l2.indexOf("(https.js:") !== -1 || l2.indexOf("node:https:") !== -1); + } + function createAgent(callback, opts) { + return new createAgent.Agent(callback, opts); + } + (function(createAgent2) { + class Agent2 extends events_1.EventEmitter { + constructor(callback, _opts) { + super(); + let opts = _opts; + if (typeof callback === "function") { + this.callback = callback; + } else if (callback) { + opts = callback; + } + this.timeout = null; + if (opts && typeof opts.timeout === "number") { + this.timeout = opts.timeout; + } + this.maxFreeSockets = 1; + this.maxSockets = 1; + this.maxTotalSockets = Infinity; + this.sockets = {}; + this.freeSockets = {}; + this.requests = {}; + this.options = {}; + } + get defaultPort() { + if (typeof this.explicitDefaultPort === "number") { + return this.explicitDefaultPort; + } + return isSecureEndpoint() ? 443 : 80; + } + set defaultPort(v) { + this.explicitDefaultPort = v; + } + get protocol() { + if (typeof this.explicitProtocol === "string") { + return this.explicitProtocol; + } + return isSecureEndpoint() ? "https:" : "http:"; + } + set protocol(v) { + this.explicitProtocol = v; + } + callback(req, opts, fn) { + throw new Error('"agent-base" has no default implementation, you must subclass and override `callback()`'); + } + /** + * Called by node-core's "_http_client.js" module when creating + * a new HTTP request with this Agent instance. + * + * @api public + */ + addRequest(req, _opts) { + const opts = Object.assign({}, _opts); + if (typeof opts.secureEndpoint !== "boolean") { + opts.secureEndpoint = isSecureEndpoint(); + } + if (opts.host == null) { + opts.host = "localhost"; + } + if (opts.port == null) { + opts.port = opts.secureEndpoint ? 443 : 80; + } + if (opts.protocol == null) { + opts.protocol = opts.secureEndpoint ? "https:" : "http:"; + } + if (opts.host && opts.path) { + delete opts.path; + } + delete opts.agent; + delete opts.hostname; + delete opts._defaultAgent; + delete opts.defaultPort; + delete opts.createConnection; + req._last = true; + req.shouldKeepAlive = false; + let timedOut = false; + let timeoutId = null; + const timeoutMs = opts.timeout || this.timeout; + const onerror = (err2) => { + if (req._hadError) + return; + req.emit("error", err2); + req._hadError = true; + }; + const ontimeout = () => { + timeoutId = null; + timedOut = true; + const err2 = new Error(`A "socket" was not created for HTTP request before ${timeoutMs}ms`); + err2.code = "ETIMEOUT"; + onerror(err2); + }; + const callbackError = (err2) => { + if (timedOut) + return; + if (timeoutId !== null) { + clearTimeout(timeoutId); + timeoutId = null; + } + onerror(err2); + }; + const onsocket = (socket) => { + if (timedOut) + return; + if (timeoutId != null) { + clearTimeout(timeoutId); + timeoutId = null; + } + if (isAgent(socket)) { + debug("Callback returned another Agent instance %o", socket.constructor.name); + socket.addRequest(req, opts); + return; + } + if (socket) { + socket.once("free", () => { + this.freeSocket(socket, opts); + }); + req.onSocket(socket); + return; + } + const err2 = new Error(`no Duplex stream was returned to agent-base for \`${req.method} ${req.path}\``); + onerror(err2); + }; + if (typeof this.callback !== "function") { + onerror(new Error("`callback` is not defined")); + return; + } + if (!this.promisifiedCallback) { + if (this.callback.length >= 3) { + debug("Converting legacy callback function to promise"); + this.promisifiedCallback = promisify_1.default(this.callback); + } else { + this.promisifiedCallback = this.callback; + } + } + if (typeof timeoutMs === "number" && timeoutMs > 0) { + timeoutId = setTimeout(ontimeout, timeoutMs); + } + if ("port" in opts && typeof opts.port !== "number") { + opts.port = Number(opts.port); + } + try { + debug("Resolving socket for %o request: %o", opts.protocol, `${req.method} ${req.path}`); + Promise.resolve(this.promisifiedCallback(req, opts)).then(onsocket, callbackError); + } catch (err2) { + Promise.reject(err2).catch(callbackError); + } + } + freeSocket(socket, opts) { + debug("Freeing socket %o %o", socket.constructor.name, opts); + socket.destroy(); + } + destroy() { + debug("Destroying agent %o", this.constructor.name); + } + } + createAgent2.Agent = Agent2; + createAgent2.prototype = createAgent2.Agent.prototype; + })(createAgent || (createAgent = {})); + module2.exports = createAgent; + } +}); + +// ../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/parse-proxy-response.js +var require_parse_proxy_response = __commonJS({ + "../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/parse-proxy-response.js"(exports2) { + "use strict"; + var __importDefault = exports2 && exports2.__importDefault || function(mod2) { + return mod2 && mod2.__esModule ? mod2 : { "default": mod2 }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var debug_1 = __importDefault(require_src3()); + var debug = debug_1.default("https-proxy-agent:parse-proxy-response"); + function parseProxyResponse(socket) { + return new Promise((resolve8, reject) => { + let buffersLength = 0; + const buffers = []; + function read() { + const b = socket.read(); + if (b) + ondata(b); + else + socket.once("readable", read); + } + function cleanup() { + socket.removeListener("end", onend); + socket.removeListener("error", onerror); + socket.removeListener("close", onclose); + socket.removeListener("readable", read); + } + function onclose(err2) { + debug("onclose had error %o", err2); + } + function onend() { + debug("onend"); + } + function onerror(err2) { + cleanup(); + debug("onerror %o", err2); + reject(err2); + } + function ondata(b) { + buffers.push(b); + buffersLength += b.length; + const buffered = Buffer.concat(buffers, buffersLength); + const endOfHeaders = buffered.indexOf("\r\n\r\n"); + if (endOfHeaders === -1) { + debug("have not received end of HTTP headers yet..."); + read(); + return; + } + const firstLine = buffered.toString("ascii", 0, buffered.indexOf("\r\n")); + const statusCode = +firstLine.split(" ")[1]; + debug("got proxy server response: %o", firstLine); + resolve8({ + statusCode, + buffered + }); + } + socket.on("error", onerror); + socket.on("close", onclose); + socket.on("end", onend); + read(); + }); + } + exports2.default = parseProxyResponse; + } +}); + +// ../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/agent.js +var require_agent = __commonJS({ + "../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/agent.js"(exports2) { + "use strict"; + var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve8) { + resolve8(value); + }); + } + return new (P || (P = Promise))(function(resolve8, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve8(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __importDefault = exports2 && exports2.__importDefault || function(mod2) { + return mod2 && mod2.__esModule ? mod2 : { "default": mod2 }; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var net_1 = __importDefault(require("net")); + var tls_1 = __importDefault(require("tls")); + var url_1 = __importDefault(require("url")); + var assert_1 = __importDefault(require("assert")); + var debug_1 = __importDefault(require_src3()); + var agent_base_1 = require_src30(); + var parse_proxy_response_1 = __importDefault(require_parse_proxy_response()); + var debug = debug_1.default("https-proxy-agent:agent"); + var HttpsProxyAgent = class extends agent_base_1.Agent { + constructor(_opts) { + let opts; + if (typeof _opts === "string") { + opts = url_1.default.parse(_opts); + } else { + opts = _opts; + } + if (!opts) { + throw new Error("an HTTP(S) proxy server `host` and `port` must be specified!"); + } + debug("creating new HttpsProxyAgent instance: %o", opts); + super(opts); + const proxy2 = Object.assign({}, opts); + this.secureProxy = opts.secureProxy || isHTTPS(proxy2.protocol); + proxy2.host = proxy2.hostname || proxy2.host; + if (typeof proxy2.port === "string") { + proxy2.port = parseInt(proxy2.port, 10); + } + if (!proxy2.port && proxy2.host) { + proxy2.port = this.secureProxy ? 443 : 80; + } + if (this.secureProxy && !("ALPNProtocols" in proxy2)) { + proxy2.ALPNProtocols = ["http 1.1"]; + } + if (proxy2.host && proxy2.path) { + delete proxy2.path; + delete proxy2.pathname; + } + this.proxy = proxy2; + } + /** + * Called when the node-core HTTP client library is creating a + * new HTTP request. + * + * @api protected + */ + callback(req, opts) { + return __awaiter(this, void 0, void 0, function* () { + const { proxy: proxy2, secureProxy } = this; + let socket; + if (secureProxy) { + debug("Creating `tls.Socket`: %o", proxy2); + socket = tls_1.default.connect(proxy2); + } else { + debug("Creating `net.Socket`: %o", proxy2); + socket = net_1.default.connect(proxy2); + } + const headers = Object.assign({}, proxy2.headers); + const hostname = `${opts.host}:${opts.port}`; + let payload = `CONNECT ${hostname} HTTP/1.1\r +`; + if (proxy2.auth) { + headers["Proxy-Authorization"] = `Basic ${Buffer.from(proxy2.auth).toString("base64")}`; + } + let { host, port, secureEndpoint } = opts; + if (!isDefaultPort(port, secureEndpoint)) { + host += `:${port}`; + } + headers.Host = host; + headers.Connection = "close"; + for (const name of Object.keys(headers)) { + payload += `${name}: ${headers[name]}\r +`; + } + const proxyResponsePromise = parse_proxy_response_1.default(socket); + socket.write(`${payload}\r +`); + const { statusCode, buffered } = yield proxyResponsePromise; + if (statusCode === 200) { + req.once("socket", resume); + if (opts.secureEndpoint) { + debug("Upgrading socket connection to TLS"); + const servername = opts.servername || opts.host; + return tls_1.default.connect(Object.assign(Object.assign({}, omit2(opts, "host", "hostname", "path", "port")), { + socket, + servername + })); + } + return socket; + } + socket.destroy(); + const fakeSocket = new net_1.default.Socket({ writable: false }); + fakeSocket.readable = true; + req.once("socket", (s) => { + debug("replaying proxy buffer for failed request"); + assert_1.default(s.listenerCount("data") > 0); + s.push(buffered); + s.push(null); + }); + return fakeSocket; + }); + } + }; + exports2.default = HttpsProxyAgent; + function resume(socket) { + socket.resume(); + } + function isDefaultPort(port, secure) { + return Boolean(!secure && port === 80 || secure && port === 443); + } + function isHTTPS(protocol2) { + return typeof protocol2 === "string" ? /^https:?$/i.test(protocol2) : false; + } + function omit2(obj2, ...keys) { + const ret2 = {}; + let key; + for (key in obj2) { + if (!keys.includes(key)) { + ret2[key] = obj2[key]; + } + } + return ret2; + } + } +}); + +// ../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/index.js +var require_dist4 = __commonJS({ + "../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/index.js"(exports2, module2) { + "use strict"; + var __importDefault = exports2 && exports2.__importDefault || function(mod2) { + return mod2 && mod2.__esModule ? mod2 : { "default": mod2 }; + }; + var agent_1 = __importDefault(require_agent()); + function createHttpsProxyAgent(opts) { + return new agent_1.default(opts); + } + (function(createHttpsProxyAgent2) { + createHttpsProxyAgent2.HttpsProxyAgent = agent_1.default; + createHttpsProxyAgent2.prototype = agent_1.default.prototype; + })(createHttpsProxyAgent || (createHttpsProxyAgent = {})); + module2.exports = createHttpsProxyAgent; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/transports/http.js +var require_http2 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/transports/http.js"(exports2) { + var { + _nullishCoalesce + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var http4 = require("http"); + var https4 = require("https"); + var httpsProxyAgent = require_dist4(); + var stream5 = require("stream"); + var url2 = require("url"); + var zlib2 = require("zlib"); + var GZIP_THRESHOLD = 1024 * 32; + function streamFromBody(body2) { + return new stream5.Readable({ + read() { + this.push(body2); + this.push(null); + } + }); + } + function makeNodeTransport(options2) { + let urlSegments; + try { + urlSegments = new url2.URL(options2.url); + } catch (e) { + console.warn( + "[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used." + ); + return core.createTransport(options2, () => Promise.resolve({})); + } + const isHttps2 = urlSegments.protocol === "https:"; + const proxy2 = applyNoProxyOption( + urlSegments, + options2.proxy || (isHttps2 ? process.env.https_proxy : void 0) || process.env.http_proxy + ); + const nativeHttpModule = isHttps2 ? https4 : http4; + const keepAlive = options2.keepAlive === void 0 ? false : options2.keepAlive; + const agent3 = proxy2 ? new httpsProxyAgent.HttpsProxyAgent(proxy2) : new nativeHttpModule.Agent({ keepAlive, maxSockets: 30, timeout: 2e3 }); + const requestExecutor = createRequestExecutor(options2, _nullishCoalesce(options2.httpModule, () => nativeHttpModule), agent3); + return core.createTransport(options2, requestExecutor); + } + function applyNoProxyOption(transportUrlSegments, proxy2) { + const { no_proxy } = process.env; + const urlIsExemptFromProxy = no_proxy && no_proxy.split(",").some( + (exemption) => transportUrlSegments.host.endsWith(exemption) || transportUrlSegments.hostname.endsWith(exemption) + ); + if (urlIsExemptFromProxy) { + return void 0; + } else { + return proxy2; + } + } + function createRequestExecutor(options2, httpModule, agent3) { + const { hostname, pathname, port, protocol: protocol2, search } = new url2.URL(options2.url); + return function makeRequest(request) { + return new Promise((resolve8, reject) => { + let body2 = streamFromBody(request.body); + const headers = { ...options2.headers }; + if (request.body.length > GZIP_THRESHOLD) { + headers["content-encoding"] = "gzip"; + body2 = body2.pipe(zlib2.createGzip()); + } + const req = httpModule.request( + { + method: "POST", + agent: agent3, + headers, + hostname, + path: `${pathname}${search}`, + port, + protocol: protocol2, + ca: options2.caCerts + }, + (res) => { + res.on("data", () => { + }); + res.on("end", () => { + }); + res.setEncoding("utf8"); + const retryAfterHeader = _nullishCoalesce(res.headers["retry-after"], () => null); + const rateLimitsHeader = _nullishCoalesce(res.headers["x-sentry-rate-limits"], () => null); + resolve8({ + statusCode: res.statusCode, + headers: { + "retry-after": retryAfterHeader, + "x-sentry-rate-limits": Array.isArray(rateLimitsHeader) ? rateLimitsHeader[0] : rateLimitsHeader + } + }); + } + ); + req.on("error", reject); + body2.pipe(req); + }); + }; + } + exports2.makeNodeTransport = makeNodeTransport; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/nodeVersion.js +var require_nodeVersion = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/nodeVersion.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var NODE_VERSION = utils.parseSemver(process.versions.node); + exports2.NODE_VERSION = NODE_VERSION; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/async/domain.js +var require_domain = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/async/domain.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var domain2 = require("domain"); + function getActiveDomain() { + return domain2.active; + } + function getCurrentHub() { + const activeDomain = getActiveDomain(); + if (!activeDomain) { + return void 0; + } + core.ensureHubOnCarrier(activeDomain); + return core.getHubFromCarrier(activeDomain); + } + function createNewHub(parent) { + const carrier = {}; + core.ensureHubOnCarrier(carrier, parent); + return core.getHubFromCarrier(carrier); + } + function runWithAsyncContext(callback, options2) { + const activeDomain = getActiveDomain(); + if (activeDomain && _optionalChain([options2, "optionalAccess", (_) => _.reuseExisting])) { + return callback(); + } + const local = domain2.create(); + const parentHub = activeDomain ? core.getHubFromCarrier(activeDomain) : void 0; + const newHub = createNewHub(parentHub); + core.setHubOnCarrier(local, newHub); + return local.bind(() => { + return callback(); + })(); + } + function setDomainAsyncContextStrategy() { + core.setAsyncContextStrategy({ getCurrentHub, runWithAsyncContext }); + } + exports2.setDomainAsyncContextStrategy = setDomainAsyncContextStrategy; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/async/hooks.js +var require_hooks = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/async/hooks.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var async_hooks = require("async_hooks"); + var asyncStorage; + function setHooksAsyncContextStrategy() { + if (!asyncStorage) { + asyncStorage = new async_hooks.AsyncLocalStorage(); + } + function getCurrentHub() { + return asyncStorage.getStore(); + } + function createNewHub(parent) { + const carrier = {}; + core.ensureHubOnCarrier(carrier, parent); + return core.getHubFromCarrier(carrier); + } + function runWithAsyncContext(callback, options2) { + const existingHub = getCurrentHub(); + if (existingHub && _optionalChain([options2, "optionalAccess", (_) => _.reuseExisting])) { + return callback(); + } + const newHub = createNewHub(existingHub); + return asyncStorage.run(newHub, () => { + return callback(); + }); + } + core.setAsyncContextStrategy({ getCurrentHub, runWithAsyncContext }); + } + exports2.setHooksAsyncContextStrategy = setHooksAsyncContextStrategy; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/async/index.js +var require_async5 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/async/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var nodeVersion = require_nodeVersion(); + var domain2 = require_domain(); + var hooks = require_hooks(); + function setNodeAsyncContextStrategy() { + if (nodeVersion.NODE_VERSION.major && nodeVersion.NODE_VERSION.major >= 14) { + hooks.setHooksAsyncContextStrategy(); + } else { + domain2.setDomainAsyncContextStrategy(); + } + } + exports2.setNodeAsyncContextStrategy = setNodeAsyncContextStrategy; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/console.js +var require_console2 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/console.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var util2 = require("util"); + var Console = class _Console { + constructor() { + _Console.prototype.__init.call(this); + } + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Console"; + } + /** + * @inheritDoc + */ + __init() { + this.name = _Console.id; + } + /** + * @inheritDoc + */ + setupOnce() { + utils.addInstrumentationHandler("console", ({ args: args3, level }) => { + const hub = core.getCurrentHub(); + if (!hub.getIntegration(_Console)) { + return; + } + hub.addBreadcrumb( + { + category: "console", + level: utils.severityLevelFromString(level), + message: util2.format.apply(void 0, args3) + }, + { + input: [...args3], + level + } + ); + }); + } + }; + Console.__initStatic(); + exports2.Console = Console; + } +}); + +// ../node_modules/.pnpm/lru_map@0.3.3/node_modules/lru_map/lru.js +var require_lru = __commonJS({ + "../node_modules/.pnpm/lru_map@0.3.3/node_modules/lru_map/lru.js"(exports2) { + (function(g, f) { + const e = typeof exports2 == "object" ? exports2 : typeof g == "object" ? g : {}; + f(e); + if (typeof define == "function" && define.amd) { + define("lru", e); + } + })(exports2, function(exports3) { + const NEWER = Symbol("newer"); + const OLDER = Symbol("older"); + function LRUMap(limit, entries) { + if (typeof limit !== "number") { + entries = limit; + limit = 0; + } + this.size = 0; + this.limit = limit; + this.oldest = this.newest = void 0; + this._keymap = /* @__PURE__ */ new Map(); + if (entries) { + this.assign(entries); + if (limit < 1) { + this.limit = this.size; + } + } + } + exports3.LRUMap = LRUMap; + function Entry(key, value) { + this.key = key; + this.value = value; + this[NEWER] = void 0; + this[OLDER] = void 0; + } + LRUMap.prototype._markEntryAsUsed = function(entry) { + if (entry === this.newest) { + return; + } + if (entry[NEWER]) { + if (entry === this.oldest) { + this.oldest = entry[NEWER]; + } + entry[NEWER][OLDER] = entry[OLDER]; + } + if (entry[OLDER]) { + entry[OLDER][NEWER] = entry[NEWER]; + } + entry[NEWER] = void 0; + entry[OLDER] = this.newest; + if (this.newest) { + this.newest[NEWER] = entry; + } + this.newest = entry; + }; + LRUMap.prototype.assign = function(entries) { + let entry, limit = this.limit || Number.MAX_VALUE; + this._keymap.clear(); + let it = entries[Symbol.iterator](); + for (let itv = it.next(); !itv.done; itv = it.next()) { + let e = new Entry(itv.value[0], itv.value[1]); + this._keymap.set(e.key, e); + if (!entry) { + this.oldest = e; + } else { + entry[NEWER] = e; + e[OLDER] = entry; + } + entry = e; + if (limit-- == 0) { + throw new Error("overflow"); + } + } + this.newest = entry; + this.size = this._keymap.size; + }; + LRUMap.prototype.get = function(key) { + var entry = this._keymap.get(key); + if (!entry) + return; + this._markEntryAsUsed(entry); + return entry.value; + }; + LRUMap.prototype.set = function(key, value) { + var entry = this._keymap.get(key); + if (entry) { + entry.value = value; + this._markEntryAsUsed(entry); + return this; + } + this._keymap.set(key, entry = new Entry(key, value)); + if (this.newest) { + this.newest[NEWER] = entry; + entry[OLDER] = this.newest; + } else { + this.oldest = entry; + } + this.newest = entry; + ++this.size; + if (this.size > this.limit) { + this.shift(); + } + return this; + }; + LRUMap.prototype.shift = function() { + var entry = this.oldest; + if (entry) { + if (this.oldest[NEWER]) { + this.oldest = this.oldest[NEWER]; + this.oldest[OLDER] = void 0; + } else { + this.oldest = void 0; + this.newest = void 0; + } + entry[NEWER] = entry[OLDER] = void 0; + this._keymap.delete(entry.key); + --this.size; + return [entry.key, entry.value]; + } + }; + LRUMap.prototype.find = function(key) { + let e = this._keymap.get(key); + return e ? e.value : void 0; + }; + LRUMap.prototype.has = function(key) { + return this._keymap.has(key); + }; + LRUMap.prototype["delete"] = function(key) { + var entry = this._keymap.get(key); + if (!entry) + return; + this._keymap.delete(entry.key); + if (entry[NEWER] && entry[OLDER]) { + entry[OLDER][NEWER] = entry[NEWER]; + entry[NEWER][OLDER] = entry[OLDER]; + } else if (entry[NEWER]) { + entry[NEWER][OLDER] = void 0; + this.oldest = entry[NEWER]; + } else if (entry[OLDER]) { + entry[OLDER][NEWER] = void 0; + this.newest = entry[OLDER]; + } else { + this.oldest = this.newest = void 0; + } + this.size--; + return entry.value; + }; + LRUMap.prototype.clear = function() { + this.oldest = this.newest = void 0; + this.size = 0; + this._keymap.clear(); + }; + function EntryIterator(oldestEntry) { + this.entry = oldestEntry; + } + EntryIterator.prototype[Symbol.iterator] = function() { + return this; + }; + EntryIterator.prototype.next = function() { + let ent = this.entry; + if (ent) { + this.entry = ent[NEWER]; + return { done: false, value: [ent.key, ent.value] }; + } else { + return { done: true, value: void 0 }; + } + }; + function KeyIterator(oldestEntry) { + this.entry = oldestEntry; + } + KeyIterator.prototype[Symbol.iterator] = function() { + return this; + }; + KeyIterator.prototype.next = function() { + let ent = this.entry; + if (ent) { + this.entry = ent[NEWER]; + return { done: false, value: ent.key }; + } else { + return { done: true, value: void 0 }; + } + }; + function ValueIterator(oldestEntry) { + this.entry = oldestEntry; + } + ValueIterator.prototype[Symbol.iterator] = function() { + return this; + }; + ValueIterator.prototype.next = function() { + let ent = this.entry; + if (ent) { + this.entry = ent[NEWER]; + return { done: false, value: ent.value }; + } else { + return { done: true, value: void 0 }; + } + }; + LRUMap.prototype.keys = function() { + return new KeyIterator(this.oldest); + }; + LRUMap.prototype.values = function() { + return new ValueIterator(this.oldest); + }; + LRUMap.prototype.entries = function() { + return this; + }; + LRUMap.prototype[Symbol.iterator] = function() { + return new EntryIterator(this.oldest); + }; + LRUMap.prototype.forEach = function(fun, thisObj) { + if (typeof thisObj !== "object") { + thisObj = this; + } + let entry = this.oldest; + while (entry) { + fun.call(thisObj, entry.value, entry.key, this); + entry = entry[NEWER]; + } + }; + LRUMap.prototype.toJSON = function() { + var s = new Array(this.size), i = 0, entry = this.oldest; + while (entry) { + s[i++] = { key: entry.key, value: entry.value }; + entry = entry[NEWER]; + } + return s; + }; + LRUMap.prototype.toString = function() { + var s = "", entry = this.oldest; + while (entry) { + s += String(entry.key) + ":" + entry.value; + entry = entry[NEWER]; + if (entry) { + s += " < "; + } + } + return s; + }; + }); + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/utils/http.js +var require_http3 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/utils/http.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var url2 = require("url"); + var nodeVersion = require_nodeVersion(); + function isSentryRequest(url3) { + const dsn = _optionalChain([core.getCurrentHub, "call", (_) => _(), "access", (_2) => _2.getClient, "call", (_3) => _3(), "optionalAccess", (_4) => _4.getDsn, "call", (_5) => _5()]); + return dsn ? url3.includes(dsn.host) : false; + } + function extractRawUrl(requestOptions) { + const protocol2 = requestOptions.protocol || ""; + const hostname = requestOptions.hostname || requestOptions.host || ""; + const port = !requestOptions.port || requestOptions.port === 80 || requestOptions.port === 443 ? "" : `:${requestOptions.port}`; + const path30 = requestOptions.path ? requestOptions.path : "/"; + return `${protocol2}//${hostname}${port}${path30}`; + } + function extractUrl(requestOptions) { + const protocol2 = requestOptions.protocol || ""; + const hostname = requestOptions.hostname || requestOptions.host || ""; + const port = !requestOptions.port || requestOptions.port === 80 || requestOptions.port === 443 ? "" : `:${requestOptions.port}`; + const path30 = requestOptions.pathname || "/"; + const authority = requestOptions.auth ? redactAuthority(requestOptions.auth) : ""; + return `${protocol2}//${authority}${hostname}${port}${path30}`; + } + function redactAuthority(auth) { + const [user, password] = auth.split(":"); + return `${user ? "[Filtered]" : ""}:${password ? "[Filtered]" : ""}@`; + } + function cleanSpanDescription(description, requestOptions, request) { + if (!description) { + return description; + } + let [method, requestUrl] = description.split(" "); + if (requestOptions.host && !requestOptions.protocol) { + requestOptions.protocol = _optionalChain([request, "optionalAccess", (_6) => _6.agent, "optionalAccess", (_7) => _7.protocol]); + requestUrl = extractUrl(requestOptions); + } + if (_optionalChain([requestUrl, "optionalAccess", (_8) => _8.startsWith, "call", (_9) => _9("///")])) { + requestUrl = requestUrl.slice(2); + } + return `${method} ${requestUrl}`; + } + function urlToOptions(url3) { + const options2 = { + protocol: url3.protocol, + hostname: typeof url3.hostname === "string" && url3.hostname.startsWith("[") ? url3.hostname.slice(1, -1) : url3.hostname, + hash: url3.hash, + search: url3.search, + pathname: url3.pathname, + path: `${url3.pathname || ""}${url3.search || ""}`, + href: url3.href + }; + if (url3.port !== "") { + options2.port = Number(url3.port); + } + if (url3.username || url3.password) { + options2.auth = `${url3.username}:${url3.password}`; + } + return options2; + } + function normalizeRequestArgs(httpModule, requestArgs) { + let callback, requestOptions; + if (typeof requestArgs[requestArgs.length - 1] === "function") { + callback = requestArgs.pop(); + } + if (typeof requestArgs[0] === "string") { + requestOptions = urlToOptions(new url2.URL(requestArgs[0])); + } else if (requestArgs[0] instanceof url2.URL) { + requestOptions = urlToOptions(requestArgs[0]); + } else { + requestOptions = requestArgs[0]; + } + if (requestArgs.length === 2) { + requestOptions = { ...requestOptions, ...requestArgs[1] }; + } + if (requestOptions.protocol === void 0) { + if (nodeVersion.NODE_VERSION.major && nodeVersion.NODE_VERSION.major > 8) { + requestOptions.protocol = _optionalChain([_optionalChain([httpModule, "optionalAccess", (_10) => _10.globalAgent]), "optionalAccess", (_11) => _11.protocol]) || _optionalChain([requestOptions.agent, "optionalAccess", (_12) => _12.protocol]) || _optionalChain([requestOptions._defaultAgent, "optionalAccess", (_13) => _13.protocol]); + } else { + requestOptions.protocol = _optionalChain([requestOptions.agent, "optionalAccess", (_14) => _14.protocol]) || _optionalChain([requestOptions._defaultAgent, "optionalAccess", (_15) => _15.protocol]) || _optionalChain([_optionalChain([httpModule, "optionalAccess", (_16) => _16.globalAgent]), "optionalAccess", (_17) => _17.protocol]); + } + } + if (callback) { + return [requestOptions, callback]; + } else { + return [requestOptions]; + } + } + exports2.cleanSpanDescription = cleanSpanDescription; + exports2.extractRawUrl = extractRawUrl; + exports2.extractUrl = extractUrl; + exports2.isSentryRequest = isSentryRequest; + exports2.normalizeRequestArgs = normalizeRequestArgs; + exports2.urlToOptions = urlToOptions; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/http.js +var require_http4 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/http.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var lru_map = require_lru(); + var nodeVersion = require_nodeVersion(); + var http4 = require_http3(); + var Http = class _Http { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Http"; + } + /** + * @inheritDoc + */ + __init() { + this.name = _Http.id; + } + /** + * @inheritDoc + */ + constructor(options2 = {}) { + _Http.prototype.__init.call(this); + this._breadcrumbs = typeof options2.breadcrumbs === "undefined" ? true : options2.breadcrumbs; + this._tracing = !options2.tracing ? void 0 : options2.tracing === true ? {} : options2.tracing; + } + /** + * @inheritDoc + */ + setupOnce(_addGlobalEventProcessor, setupOnceGetCurrentHub) { + if (!this._breadcrumbs && !this._tracing) { + return; + } + const clientOptions = _optionalChain([setupOnceGetCurrentHub, "call", (_) => _(), "access", (_2) => _2.getClient, "call", (_3) => _3(), "optionalAccess", (_4) => _4.getOptions, "call", (_5) => _5()]); + if (clientOptions && clientOptions.instrumenter !== "sentry") { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log("HTTP Integration is skipped because of instrumenter configuration."); + return; + } + const shouldCreateSpanForRequest = ( + // eslint-disable-next-line deprecation/deprecation + _optionalChain([this, "access", (_6) => _6._tracing, "optionalAccess", (_7) => _7.shouldCreateSpanForRequest]) || _optionalChain([clientOptions, "optionalAccess", (_8) => _8.shouldCreateSpanForRequest]) + ); + const tracePropagationTargets = _optionalChain([clientOptions, "optionalAccess", (_9) => _9.tracePropagationTargets]) || _optionalChain([this, "access", (_10) => _10._tracing, "optionalAccess", (_11) => _11.tracePropagationTargets]); + const httpModule = require("http"); + const wrappedHttpHandlerMaker = _createWrappedRequestMethodFactory( + httpModule, + this._breadcrumbs, + shouldCreateSpanForRequest, + tracePropagationTargets + ); + utils.fill(httpModule, "get", wrappedHttpHandlerMaker); + utils.fill(httpModule, "request", wrappedHttpHandlerMaker); + if (nodeVersion.NODE_VERSION.major && nodeVersion.NODE_VERSION.major > 8) { + const httpsModule = require("https"); + const wrappedHttpsHandlerMaker = _createWrappedRequestMethodFactory( + httpsModule, + this._breadcrumbs, + shouldCreateSpanForRequest, + tracePropagationTargets + ); + utils.fill(httpsModule, "get", wrappedHttpsHandlerMaker); + utils.fill(httpsModule, "request", wrappedHttpsHandlerMaker); + } + } + }; + Http.__initStatic(); + function _createWrappedRequestMethodFactory(httpModule, breadcrumbsEnabled, shouldCreateSpanForRequest, tracePropagationTargets) { + const createSpanUrlMap = new lru_map.LRUMap(100); + const headersUrlMap = new lru_map.LRUMap(100); + const shouldCreateSpan = (url2) => { + if (shouldCreateSpanForRequest === void 0) { + return true; + } + const cachedDecision = createSpanUrlMap.get(url2); + if (cachedDecision !== void 0) { + return cachedDecision; + } + const decision = shouldCreateSpanForRequest(url2); + createSpanUrlMap.set(url2, decision); + return decision; + }; + const shouldAttachTraceData = (url2) => { + if (tracePropagationTargets === void 0) { + return true; + } + const cachedDecision = headersUrlMap.get(url2); + if (cachedDecision !== void 0) { + return cachedDecision; + } + const decision = utils.stringMatchesSomePattern(url2, tracePropagationTargets); + headersUrlMap.set(url2, decision); + return decision; + }; + function addRequestBreadcrumb(event, requestSpanData, req, res) { + if (!core.getCurrentHub().getIntegration(Http)) { + return; + } + core.getCurrentHub().addBreadcrumb( + { + category: "http", + data: { + status_code: res && res.statusCode, + ...requestSpanData + }, + type: "http" + }, + { + event, + request: req, + response: res + } + ); + } + return function wrappedRequestMethodFactory(originalRequestMethod) { + return function wrappedMethod(...args3) { + const requestArgs = http4.normalizeRequestArgs(httpModule, args3); + const requestOptions = requestArgs[0]; + const rawRequestUrl = http4.extractRawUrl(requestOptions); + const requestUrl = http4.extractUrl(requestOptions); + if (http4.isSentryRequest(requestUrl)) { + return originalRequestMethod.apply(httpModule, requestArgs); + } + const hub = core.getCurrentHub(); + const scope = hub.getScope(); + const parentSpan = scope.getSpan(); + const data = getRequestSpanData(requestUrl, requestOptions); + const requestSpan = shouldCreateSpan(rawRequestUrl) ? _optionalChain([parentSpan, "optionalAccess", (_12) => _12.startChild, "call", (_13) => _13({ + op: "http.client", + origin: "auto.http.node.http", + description: `${data["http.method"]} ${data.url}`, + data + })]) : void 0; + if (shouldAttachTraceData(rawRequestUrl)) { + if (requestSpan) { + const sentryTraceHeader = requestSpan.toTraceparent(); + const dynamicSamplingContext = _optionalChain([requestSpan, "optionalAccess", (_14) => _14.transaction, "optionalAccess", (_15) => _15.getDynamicSamplingContext, "call", (_16) => _16()]); + addHeadersToRequestOptions(requestOptions, requestUrl, sentryTraceHeader, dynamicSamplingContext); + } else { + const client = hub.getClient(); + const { traceId, sampled, dsc } = scope.getPropagationContext(); + const sentryTraceHeader = utils.generateSentryTraceHeader(traceId, void 0, sampled); + const dynamicSamplingContext = dsc || (client ? core.getDynamicSamplingContextFromClient(traceId, client, scope) : void 0); + addHeadersToRequestOptions(requestOptions, requestUrl, sentryTraceHeader, dynamicSamplingContext); + } + } else { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log( + `[Tracing] Not adding sentry-trace header to outgoing request (${requestUrl}) due to mismatching tracePropagationTargets option.` + ); + } + return originalRequestMethod.apply(httpModule, requestArgs).once("response", function(res) { + const req = this; + if (breadcrumbsEnabled) { + addRequestBreadcrumb("response", data, req, res); + } + if (requestSpan) { + if (res.statusCode) { + requestSpan.setHttpStatus(res.statusCode); + } + requestSpan.description = http4.cleanSpanDescription(requestSpan.description, requestOptions, req); + requestSpan.finish(); + } + }).once("error", function() { + const req = this; + if (breadcrumbsEnabled) { + addRequestBreadcrumb("error", data, req); + } + if (requestSpan) { + requestSpan.setHttpStatus(500); + requestSpan.description = http4.cleanSpanDescription(requestSpan.description, requestOptions, req); + requestSpan.finish(); + } + }); + }; + }; + } + function addHeadersToRequestOptions(requestOptions, requestUrl, sentryTraceHeader, dynamicSamplingContext) { + const headers = requestOptions.headers || {}; + if (headers["sentry-trace"]) { + return; + } + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.log(`[Tracing] Adding sentry-trace header ${sentryTraceHeader} to outgoing request to "${requestUrl}": `); + const sentryBaggage = utils.dynamicSamplingContextToSentryBaggageHeader(dynamicSamplingContext); + const sentryBaggageHeader = sentryBaggage && sentryBaggage.length > 0 ? normalizeBaggageHeader(requestOptions, sentryBaggage) : void 0; + requestOptions.headers = { + ...requestOptions.headers, + "sentry-trace": sentryTraceHeader, + // Setting a header to `undefined` will crash in node so we only set the baggage header when it's defined + ...sentryBaggageHeader && { baggage: sentryBaggageHeader } + }; + } + function getRequestSpanData(requestUrl, requestOptions) { + const method = requestOptions.method || "GET"; + const data = { + url: requestUrl, + "http.method": method + }; + if (requestOptions.hash) { + data["http.fragment"] = requestOptions.hash.substring(1); + } + if (requestOptions.search) { + data["http.query"] = requestOptions.search.substring(1); + } + return data; + } + function normalizeBaggageHeader(requestOptions, sentryBaggageHeader) { + if (!requestOptions.headers || !requestOptions.headers.baggage) { + return sentryBaggageHeader; + } else if (!sentryBaggageHeader) { + return requestOptions.headers.baggage; + } else if (Array.isArray(requestOptions.headers.baggage)) { + return [...requestOptions.headers.baggage, sentryBaggageHeader]; + } + return [requestOptions.headers.baggage, sentryBaggageHeader]; + } + exports2.Http = Http; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/utils/errorhandling.js +var require_errorhandling = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/utils/errorhandling.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var DEFAULT_SHUTDOWN_TIMEOUT = 2e3; + function logAndExitProcess(error) { + console.error(error); + const client = core.getCurrentHub().getClient(); + if (client === void 0) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("No NodeClient was defined, we are exiting the process now."); + global.process.exit(1); + } + const options2 = client.getOptions(); + const timeout = options2 && options2.shutdownTimeout && options2.shutdownTimeout > 0 && options2.shutdownTimeout || DEFAULT_SHUTDOWN_TIMEOUT; + client.close(timeout).then( + (result) => { + if (!result) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn("We reached the timeout for emptying the request buffer, still exiting now!"); + } + global.process.exit(1); + }, + (error2) => { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error(error2); + } + ); + } + exports2.logAndExitProcess = logAndExitProcess; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/onuncaughtexception.js +var require_onuncaughtexception = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/onuncaughtexception.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var errorhandling = require_errorhandling(); + var OnUncaughtException = class _OnUncaughtException { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "OnUncaughtException"; + } + /** + * @inheritDoc + */ + __init() { + this.name = _OnUncaughtException.id; + } + /** + * @inheritDoc + */ + __init2() { + this.handler = this._makeErrorHandler(); + } + // CAREFUL: Please think twice before updating the way _options looks because the Next.js SDK depends on it in `index.server.ts` + /** + * @inheritDoc + */ + constructor(options2 = {}) { + _OnUncaughtException.prototype.__init.call(this); + _OnUncaughtException.prototype.__init2.call(this); + this._options = { + exitEvenIfOtherHandlersAreRegistered: true, + ...options2 + }; + } + /** + * @inheritDoc + */ + setupOnce() { + global.process.on("uncaughtException", this.handler); + } + /** + * @hidden + */ + _makeErrorHandler() { + const timeout = 2e3; + let caughtFirstError = false; + let caughtSecondError = false; + let calledFatalError = false; + let firstError; + return (error) => { + let onFatalError = errorhandling.logAndExitProcess; + const client = core.getCurrentHub().getClient(); + if (this._options.onFatalError) { + onFatalError = this._options.onFatalError; + } else if (client && client.getOptions().onFatalError) { + onFatalError = client.getOptions().onFatalError; + } + const userProvidedListenersCount = global.process.listeners("uncaughtException").reduce((acc, listener) => { + if ( + // There are 3 listeners we ignore: + listener.name === "domainUncaughtExceptionClear" || // as soon as we're using domains this listener is attached by node itself + listener.tag && listener.tag === "sentry_tracingErrorCallback" || // the handler we register for tracing + listener === this.handler + ) { + return acc; + } else { + return acc + 1; + } + }, 0); + const processWouldExit = userProvidedListenersCount === 0; + const shouldApplyFatalHandlingLogic = this._options.exitEvenIfOtherHandlersAreRegistered || processWouldExit; + if (!caughtFirstError) { + const hub = core.getCurrentHub(); + firstError = error; + caughtFirstError = true; + if (hub.getIntegration(_OnUncaughtException)) { + hub.withScope((scope) => { + scope.setLevel("fatal"); + hub.captureException(error, { + originalException: error, + data: { mechanism: { handled: false, type: "onuncaughtexception" } } + }); + if (!calledFatalError && shouldApplyFatalHandlingLogic) { + calledFatalError = true; + onFatalError(error); + } + }); + } else { + if (!calledFatalError && shouldApplyFatalHandlingLogic) { + calledFatalError = true; + onFatalError(error); + } + } + } else { + if (shouldApplyFatalHandlingLogic) { + if (calledFatalError) { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.warn( + "uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown" + ); + errorhandling.logAndExitProcess(error); + } else if (!caughtSecondError) { + caughtSecondError = true; + setTimeout(() => { + if (!calledFatalError) { + calledFatalError = true; + onFatalError(firstError, error); + } + }, timeout); + } + } + } + }; + } + }; + OnUncaughtException.__initStatic(); + exports2.OnUncaughtException = OnUncaughtException; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/onunhandledrejection.js +var require_onunhandledrejection = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/onunhandledrejection.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var errorhandling = require_errorhandling(); + var OnUnhandledRejection = class _OnUnhandledRejection { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "OnUnhandledRejection"; + } + /** + * @inheritDoc + */ + __init() { + this.name = _OnUnhandledRejection.id; + } + /** + * @inheritDoc + */ + constructor(_options = { mode: "warn" }) { + this._options = _options; + _OnUnhandledRejection.prototype.__init.call(this); + } + /** + * @inheritDoc + */ + setupOnce() { + global.process.on("unhandledRejection", this.sendUnhandledPromise.bind(this)); + } + /** + * Send an exception with reason + * @param reason string + * @param promise promise + */ + sendUnhandledPromise(reason, promise) { + const hub = core.getCurrentHub(); + if (hub.getIntegration(_OnUnhandledRejection)) { + hub.withScope((scope) => { + scope.setExtra("unhandledPromiseRejection", true); + hub.captureException(reason, { + originalException: promise, + data: { mechanism: { handled: false, type: "onunhandledrejection" } } + }); + }); + } + this._handleRejection(reason); + } + /** + * Handler for `mode` option + */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any + _handleRejection(reason) { + const rejectionWarning = "This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:"; + if (this._options.mode === "warn") { + utils.consoleSandbox(() => { + console.warn(rejectionWarning); + console.error(reason && reason.stack ? reason.stack : reason); + }); + } else if (this._options.mode === "strict") { + utils.consoleSandbox(() => { + console.warn(rejectionWarning); + }); + errorhandling.logAndExitProcess(reason); + } + } + }; + OnUnhandledRejection.__initStatic(); + exports2.OnUnhandledRejection = OnUnhandledRejection; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/contextlines.js +var require_contextlines = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/contextlines.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var fs6 = require("fs"); + var lru_map = require_lru(); + var FILE_CONTENT_CACHE = new lru_map.LRUMap(100); + var DEFAULT_LINES_OF_CONTEXT = 7; + function readTextFileAsync(path30) { + return new Promise((resolve8, reject) => { + fs6.readFile(path30, "utf8", (err2, data) => { + if (err2) + reject(err2); + else + resolve8(data); + }); + }); + } + var ContextLines = class _ContextLines { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "ContextLines"; + } + /** + * @inheritDoc + */ + __init() { + this.name = _ContextLines.id; + } + constructor(_options = {}) { + this._options = _options; + _ContextLines.prototype.__init.call(this); + } + /** Get's the number of context lines to add */ + get _contextLines() { + return this._options.frameContextLines !== void 0 ? this._options.frameContextLines : DEFAULT_LINES_OF_CONTEXT; + } + /** + * @inheritDoc + */ + setupOnce(addGlobalEventProcessor, getCurrentHub) { + addGlobalEventProcessor((event) => { + const self2 = getCurrentHub().getIntegration(_ContextLines); + if (!self2) { + return event; + } + return this.addSourceContext(event); + }); + } + /** Processes an event and adds context lines */ + async addSourceContext(event) { + const enqueuedReadSourceFileTasks = {}; + const readSourceFileTasks = []; + if (this._contextLines > 0 && _optionalChain([event, "access", (_2) => _2.exception, "optionalAccess", (_3) => _3.values])) { + for (const exception of event.exception.values) { + if (!_optionalChain([exception, "access", (_4) => _4.stacktrace, "optionalAccess", (_5) => _5.frames])) { + continue; + } + for (let i = exception.stacktrace.frames.length - 1; i >= 0; i--) { + const frame = exception.stacktrace.frames[i]; + if (frame.filename && !enqueuedReadSourceFileTasks[frame.filename] && !FILE_CONTENT_CACHE.get(frame.filename)) { + readSourceFileTasks.push(_readSourceFile(frame.filename)); + enqueuedReadSourceFileTasks[frame.filename] = 1; + } + } + } + } + if (readSourceFileTasks.length > 0) { + await Promise.all(readSourceFileTasks); + } + if (this._contextLines > 0 && _optionalChain([event, "access", (_6) => _6.exception, "optionalAccess", (_7) => _7.values])) { + for (const exception of event.exception.values) { + if (exception.stacktrace && exception.stacktrace.frames) { + await this.addSourceContextToFrames(exception.stacktrace.frames); + } + } + } + return event; + } + /** Adds context lines to frames */ + addSourceContextToFrames(frames) { + for (const frame of frames) { + if (frame.filename && frame.context_line === void 0) { + const sourceFileLines = FILE_CONTENT_CACHE.get(frame.filename); + if (sourceFileLines) { + try { + utils.addContextToFrame(sourceFileLines, frame, this._contextLines); + } catch (e) { + } + } + } + } + } + }; + ContextLines.__initStatic(); + async function _readSourceFile(filename) { + const cachedFile = FILE_CONTENT_CACHE.get(filename); + if (cachedFile === null) { + return null; + } + if (cachedFile !== void 0) { + return cachedFile; + } + let content = null; + try { + const rawFileContents = await readTextFileAsync(filename); + content = rawFileContents.split("\n"); + } catch (_) { + } + FILE_CONTENT_CACHE.set(filename, content); + return content; + } + exports2.ContextLines = ContextLines; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/linkederrors.js +var require_linkederrors = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/linkederrors.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var eventbuilder = require_eventbuilder(); + var contextlines = require_contextlines(); + var DEFAULT_KEY = "cause"; + var DEFAULT_LIMIT = 5; + var LinkedErrors = class _LinkedErrors { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "LinkedErrors"; + } + /** + * @inheritDoc + */ + __init() { + this.name = _LinkedErrors.id; + } + /** + * @inheritDoc + */ + /** + * @inheritDoc + */ + /** + * @inheritDoc + */ + constructor(options2 = {}) { + _LinkedErrors.prototype.__init.call(this); + this._key = options2.key || DEFAULT_KEY; + this._limit = options2.limit || DEFAULT_LIMIT; + } + /** + * @inheritDoc + */ + setupOnce(addGlobalEventProcessor, getCurrentHub) { + addGlobalEventProcessor(async (event, hint) => { + const hub = getCurrentHub(); + const client = hub.getClient(); + const self2 = hub.getIntegration(_LinkedErrors); + if (!client || !self2) { + return event; + } + const options2 = client.getOptions(); + utils.applyAggregateErrorsToEvent( + eventbuilder.exceptionFromError, + options2.stackParser, + options2.maxValueLength, + self2._key, + self2._limit, + event, + hint + ); + const contextLines = getCurrentHub().getIntegration(contextlines.ContextLines); + if (contextLines) { + await contextLines.addSourceContext(event); + } + return event; + }); + } + }; + LinkedErrors.__initStatic(); + exports2.LinkedErrors = LinkedErrors; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/modules.js +var require_modules = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/modules.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var fs6 = require("fs"); + var path30 = require("path"); + var moduleCache; + function getPaths() { + try { + return require.cache ? Object.keys(require.cache) : []; + } catch (e) { + return []; + } + } + function collectModules() { + const mainPaths = require.main && require.main.paths || []; + const paths = getPaths(); + const infos = {}; + const seen = {}; + paths.forEach((path$1) => { + let dir = path$1; + const updir = () => { + const orig = dir; + dir = path30.dirname(orig); + if (!dir || orig === dir || seen[orig]) { + return void 0; + } + if (mainPaths.indexOf(dir) < 0) { + return updir(); + } + const pkgfile = path30.join(orig, "package.json"); + seen[orig] = true; + if (!fs6.existsSync(pkgfile)) { + return updir(); + } + try { + const info2 = JSON.parse(fs6.readFileSync(pkgfile, "utf8")); + infos[info2.name] = info2.version; + } catch (_oO) { + } + }; + updir(); + }); + return infos; + } + var Modules = class _Modules { + constructor() { + _Modules.prototype.__init.call(this); + } + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Modules"; + } + /** + * @inheritDoc + */ + __init() { + this.name = _Modules.id; + } + /** + * @inheritDoc + */ + setupOnce(addGlobalEventProcessor, getCurrentHub) { + addGlobalEventProcessor((event) => { + if (!getCurrentHub().getIntegration(_Modules)) { + return event; + } + return { + ...event, + modules: { + ...event.modules, + ...this._getModules() + } + }; + }); + } + /** Fetches the list of modules and the versions loaded by the entry file for your node.js app. */ + _getModules() { + if (!moduleCache) { + moduleCache = collectModules(); + } + return moduleCache; + } + }; + Modules.__initStatic(); + exports2.Modules = Modules; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/context.js +var require_context4 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/context.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var child_process2 = require("child_process"); + var fs6 = require("fs"); + var os8 = require("os"); + var path30 = require("path"); + var util2 = require("util"); + var readFileAsync = util2.promisify(fs6.readFile); + var readDirAsync = util2.promisify(fs6.readdir); + var Context2 = class _Context { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Context"; + } + /** + * @inheritDoc + */ + __init() { + this.name = _Context.id; + } + /** + * Caches context so it's only evaluated once + */ + constructor(_options = { + app: true, + os: true, + device: true, + culture: true, + cloudResource: true + }) { + this._options = _options; + _Context.prototype.__init.call(this); + } + /** + * @inheritDoc + */ + setupOnce(addGlobalEventProcessor) { + addGlobalEventProcessor((event) => this.addContext(event)); + } + /** Processes an event and adds context */ + async addContext(event) { + if (this._cachedContext === void 0) { + this._cachedContext = this._getContexts(); + } + const updatedContext = this._updateContext(await this._cachedContext); + event.contexts = { + ...event.contexts, + app: { ...updatedContext.app, ..._optionalChain([event, "access", (_) => _.contexts, "optionalAccess", (_2) => _2.app]) }, + os: { ...updatedContext.os, ..._optionalChain([event, "access", (_3) => _3.contexts, "optionalAccess", (_4) => _4.os]) }, + device: { ...updatedContext.device, ..._optionalChain([event, "access", (_5) => _5.contexts, "optionalAccess", (_6) => _6.device]) }, + culture: { ...updatedContext.culture, ..._optionalChain([event, "access", (_7) => _7.contexts, "optionalAccess", (_8) => _8.culture]) }, + cloud_resource: { ...updatedContext.cloud_resource, ..._optionalChain([event, "access", (_9) => _9.contexts, "optionalAccess", (_10) => _10.cloud_resource]) } + }; + return event; + } + /** + * Updates the context with dynamic values that can change + */ + _updateContext(contexts) { + if (_optionalChain([contexts, "optionalAccess", (_11) => _11.app, "optionalAccess", (_12) => _12.app_memory])) { + contexts.app.app_memory = process.memoryUsage().rss; + } + if (_optionalChain([contexts, "optionalAccess", (_13) => _13.device, "optionalAccess", (_14) => _14.free_memory])) { + contexts.device.free_memory = os8.freemem(); + } + return contexts; + } + /** + * Gets the contexts for the current environment + */ + async _getContexts() { + const contexts = {}; + if (this._options.os) { + contexts.os = await getOsContext(); + } + if (this._options.app) { + contexts.app = getAppContext(); + } + if (this._options.device) { + contexts.device = getDeviceContext(this._options.device); + } + if (this._options.culture) { + const culture = getCultureContext(); + if (culture) { + contexts.culture = culture; + } + } + if (this._options.cloudResource) { + contexts.cloud_resource = getCloudResourceContext(); + } + return contexts; + } + }; + Context2.__initStatic(); + async function getOsContext() { + const platformId = os8.platform(); + switch (platformId) { + case "darwin": + return getDarwinInfo(); + case "linux": + return getLinuxInfo(); + default: + return { + name: PLATFORM_NAMES[platformId] || platformId, + version: os8.release() + }; + } + } + function getCultureContext() { + try { + if (typeof process.versions.icu !== "string") { + return; + } + const january = /* @__PURE__ */ new Date(9e8); + const spanish = new Intl.DateTimeFormat("es", { month: "long" }); + if (spanish.format(january) === "enero") { + const options2 = Intl.DateTimeFormat().resolvedOptions(); + return { + locale: options2.locale, + timezone: options2.timeZone + }; + } + } catch (err2) { + } + return; + } + function getAppContext() { + const app_memory = process.memoryUsage().rss; + const app_start_time = new Date(Date.now() - process.uptime() * 1e3).toISOString(); + return { app_start_time, app_memory }; + } + function getDeviceContext(deviceOpt) { + const device = {}; + let uptime; + try { + uptime = os8.uptime && os8.uptime(); + } catch (e) { + } + if (typeof uptime === "number") { + device.boot_time = new Date(Date.now() - uptime * 1e3).toISOString(); + } + device.arch = os8.arch(); + if (deviceOpt === true || deviceOpt.memory) { + device.memory_size = os8.totalmem(); + device.free_memory = os8.freemem(); + } + if (deviceOpt === true || deviceOpt.cpu) { + const cpuInfo = os8.cpus(); + if (cpuInfo && cpuInfo.length) { + const firstCpu = cpuInfo[0]; + device.processor_count = cpuInfo.length; + device.cpu_description = firstCpu.model; + device.processor_frequency = firstCpu.speed; + } + } + return device; + } + var PLATFORM_NAMES = { + aix: "IBM AIX", + freebsd: "FreeBSD", + openbsd: "OpenBSD", + sunos: "SunOS", + win32: "Windows" + }; + var LINUX_DISTROS = [ + { name: "fedora-release", distros: ["Fedora"] }, + { name: "redhat-release", distros: ["Red Hat Linux", "Centos"] }, + { name: "redhat_version", distros: ["Red Hat Linux"] }, + { name: "SuSE-release", distros: ["SUSE Linux"] }, + { name: "lsb-release", distros: ["Ubuntu Linux", "Arch Linux"] }, + { name: "debian_version", distros: ["Debian"] }, + { name: "debian_release", distros: ["Debian"] }, + { name: "arch-release", distros: ["Arch Linux"] }, + { name: "gentoo-release", distros: ["Gentoo Linux"] }, + { name: "novell-release", distros: ["SUSE Linux"] }, + { name: "alpine-release", distros: ["Alpine Linux"] } + ]; + var LINUX_VERSIONS = { + alpine: (content) => content, + arch: (content) => matchFirst(/distrib_release=(.*)/, content), + centos: (content) => matchFirst(/release ([^ ]+)/, content), + debian: (content) => content, + fedora: (content) => matchFirst(/release (..)/, content), + mint: (content) => matchFirst(/distrib_release=(.*)/, content), + red: (content) => matchFirst(/release ([^ ]+)/, content), + suse: (content) => matchFirst(/VERSION = (.*)\n/, content), + ubuntu: (content) => matchFirst(/distrib_release=(.*)/, content) + }; + function matchFirst(regex, text) { + const match2 = regex.exec(text); + return match2 ? match2[1] : void 0; + } + async function getDarwinInfo() { + const darwinInfo = { + kernel_version: os8.release(), + name: "Mac OS X", + version: `10.${Number(os8.release().split(".")[0]) - 4}` + }; + try { + const output = await new Promise((resolve8, reject) => { + child_process2.execFile("/usr/bin/sw_vers", (error, stdout) => { + if (error) { + reject(error); + return; + } + resolve8(stdout); + }); + }); + darwinInfo.name = matchFirst(/^ProductName:\s+(.*)$/m, output); + darwinInfo.version = matchFirst(/^ProductVersion:\s+(.*)$/m, output); + darwinInfo.build = matchFirst(/^BuildVersion:\s+(.*)$/m, output); + } catch (e) { + } + return darwinInfo; + } + function getLinuxDistroId(name) { + return name.split(" ")[0].toLowerCase(); + } + async function getLinuxInfo() { + const linuxInfo = { + kernel_version: os8.release(), + name: "Linux" + }; + try { + const etcFiles = await readDirAsync("/etc"); + const distroFile = LINUX_DISTROS.find((file) => etcFiles.includes(file.name)); + if (!distroFile) { + return linuxInfo; + } + const distroPath = path30.join("/etc", distroFile.name); + const contents = (await readFileAsync(distroPath, { encoding: "utf-8" })).toLowerCase(); + const { distros } = distroFile; + linuxInfo.name = distros.find((d) => contents.indexOf(getLinuxDistroId(d)) >= 0) || distros[0]; + const id = getLinuxDistroId(linuxInfo.name); + linuxInfo.version = LINUX_VERSIONS[id](contents); + } catch (e) { + } + return linuxInfo; + } + function getCloudResourceContext() { + if (process.env.VERCEL) { + return { + "cloud.provider": "vercel", + "cloud.region": process.env.VERCEL_REGION + }; + } else if (process.env.AWS_REGION) { + return { + "cloud.provider": "aws", + "cloud.region": process.env.AWS_REGION, + "cloud.platform": process.env.AWS_EXECUTION_ENV + }; + } else if (process.env.GCP_PROJECT) { + return { + "cloud.provider": "gcp" + }; + } else if (process.env.ALIYUN_REGION_ID) { + return { + "cloud.provider": "alibaba_cloud", + "cloud.region": process.env.ALIYUN_REGION_ID + }; + } else if (process.env.WEBSITE_SITE_NAME && process.env.REGION_NAME) { + return { + "cloud.provider": "azure", + "cloud.region": process.env.REGION_NAME + }; + } else if (process.env.IBM_CLOUD_REGION) { + return { + "cloud.provider": "ibm_cloud", + "cloud.region": process.env.IBM_CLOUD_REGION + }; + } else if (process.env.TENCENTCLOUD_REGION) { + return { + "cloud.provider": "tencent_cloud", + "cloud.region": process.env.TENCENTCLOUD_REGION, + "cloud.account.id": process.env.TENCENTCLOUD_APPID, + "cloud.availability_zone": process.env.TENCENTCLOUD_ZONE + }; + } else if (process.env.NETLIFY) { + return { + "cloud.provider": "netlify" + }; + } else if (process.env.FLY_REGION) { + return { + "cloud.provider": "fly.io", + "cloud.region": process.env.FLY_REGION + }; + } else if (process.env.DYNO) { + return { + "cloud.provider": "heroku" + }; + } else { + return void 0; + } + } + exports2.Context = Context2; + exports2.getDeviceContext = getDeviceContext; + exports2.readDirAsync = readDirAsync; + exports2.readFileAsync = readFileAsync; + } +}); + +// ../node_modules/.pnpm/cookie@0.4.2/node_modules/cookie/index.js +var require_cookie = __commonJS({ + "../node_modules/.pnpm/cookie@0.4.2/node_modules/cookie/index.js"(exports2) { + "use strict"; + exports2.parse = parse7; + exports2.serialize = serialize; + var decode = decodeURIComponent; + var encode3 = encodeURIComponent; + var fieldContentRegExp = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/; + function parse7(str, options2) { + if (typeof str !== "string") { + throw new TypeError("argument str must be a string"); + } + var obj2 = {}; + var opt = options2 || {}; + var pairs = str.split(";"); + var dec = opt.decode || decode; + for (var i = 0; i < pairs.length; i++) { + var pair = pairs[i]; + var index = pair.indexOf("="); + if (index < 0) { + continue; + } + var key = pair.substring(0, index).trim(); + if (void 0 == obj2[key]) { + var val = pair.substring(index + 1, pair.length).trim(); + if (val[0] === '"') { + val = val.slice(1, -1); + } + obj2[key] = tryDecode(val, dec); + } + } + return obj2; + } + function serialize(name, val, options2) { + var opt = options2 || {}; + var enc = opt.encode || encode3; + if (typeof enc !== "function") { + throw new TypeError("option encode is invalid"); + } + if (!fieldContentRegExp.test(name)) { + throw new TypeError("argument name is invalid"); + } + var value = enc(val); + if (value && !fieldContentRegExp.test(value)) { + throw new TypeError("argument val is invalid"); + } + var str = name + "=" + value; + if (null != opt.maxAge) { + var maxAge = opt.maxAge - 0; + if (isNaN(maxAge) || !isFinite(maxAge)) { + throw new TypeError("option maxAge is invalid"); + } + str += "; Max-Age=" + Math.floor(maxAge); + } + if (opt.domain) { + if (!fieldContentRegExp.test(opt.domain)) { + throw new TypeError("option domain is invalid"); + } + str += "; Domain=" + opt.domain; + } + if (opt.path) { + if (!fieldContentRegExp.test(opt.path)) { + throw new TypeError("option path is invalid"); + } + str += "; Path=" + opt.path; + } + if (opt.expires) { + if (typeof opt.expires.toUTCString !== "function") { + throw new TypeError("option expires is invalid"); + } + str += "; Expires=" + opt.expires.toUTCString(); + } + if (opt.httpOnly) { + str += "; HttpOnly"; + } + if (opt.secure) { + str += "; Secure"; + } + if (opt.sameSite) { + var sameSite = typeof opt.sameSite === "string" ? opt.sameSite.toLowerCase() : opt.sameSite; + switch (sameSite) { + case true: + str += "; SameSite=Strict"; + break; + case "lax": + str += "; SameSite=Lax"; + break; + case "strict": + str += "; SameSite=Strict"; + break; + case "none": + str += "; SameSite=None"; + break; + default: + throw new TypeError("option sameSite is invalid"); + } + } + return str; + } + function tryDecode(str, decode2) { + try { + return decode2(str); + } catch (e) { + return str; + } + } + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/requestdata.js +var require_requestdata2 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/requestdata.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var cookie = require_cookie(); + var url2 = require("url"); + var DEFAULT_INCLUDES = { + ip: false, + request: true, + transaction: true, + user: true + }; + var DEFAULT_REQUEST_INCLUDES = ["cookies", "data", "headers", "method", "query_string", "url"]; + var DEFAULT_USER_INCLUDES = ["id", "username", "email"]; + function extractPathForTransaction(req, options2 = {}) { + const method = req.method && req.method.toUpperCase(); + let path30 = ""; + let source2 = "url"; + if (options2.customRoute || req.route) { + path30 = options2.customRoute || `${req.baseUrl || ""}${req.route && req.route.path}`; + source2 = "route"; + } else if (req.originalUrl || req.url) { + path30 = utils.stripUrlQueryAndFragment(req.originalUrl || req.url || ""); + } + let name = ""; + if (options2.method && method) { + name += method; + } + if (options2.method && options2.path) { + name += " "; + } + if (options2.path && path30) { + name += path30; + } + return [name, source2]; + } + function extractTransaction(req, type2) { + switch (type2) { + case "path": { + return extractPathForTransaction(req, { path: true })[0]; + } + case "handler": { + return req.route && req.route.stack && req.route.stack[0] && req.route.stack[0].name || ""; + } + case "methodPath": + default: { + return extractPathForTransaction(req, { path: true, method: true })[0]; + } + } + } + function extractUserData(user, keys) { + const extractedUser = {}; + const attributes = Array.isArray(keys) ? keys : DEFAULT_USER_INCLUDES; + attributes.forEach((key) => { + if (user && key in user) { + extractedUser[key] = user[key]; + } + }); + return extractedUser; + } + function extractRequestData(req, options2) { + const { include = DEFAULT_REQUEST_INCLUDES } = options2 || {}; + const requestData = {}; + const headers = req.headers || {}; + const method = req.method; + const host = req.hostname || req.host || headers.host || ""; + const protocol2 = req.protocol === "https" || req.socket && req.socket.encrypted ? "https" : "http"; + const originalUrl = req.originalUrl || req.url || ""; + const absoluteUrl = originalUrl.startsWith(protocol2) ? originalUrl : `${protocol2}://${host}${originalUrl}`; + include.forEach((key) => { + switch (key) { + case "headers": { + requestData.headers = headers; + if (!include.includes("cookies")) { + delete requestData.headers.cookie; + } + break; + } + case "method": { + requestData.method = method; + break; + } + case "url": { + requestData.url = absoluteUrl; + break; + } + case "cookies": { + requestData.cookies = // TODO (v8 / #5257): We're only sending the empty object for backwards compatibility, so the last bit can + // come off in v8 + req.cookies || headers.cookie && cookie.parse(headers.cookie) || {}; + break; + } + case "query_string": { + requestData.query_string = extractQueryParams(req); + break; + } + case "data": { + if (method === "GET" || method === "HEAD") { + break; + } + if (req.body !== void 0) { + requestData.data = utils.isString(req.body) ? req.body : JSON.stringify(utils.normalize(req.body)); + } + break; + } + default: { + if ({}.hasOwnProperty.call(req, key)) { + requestData[key] = req[key]; + } + } + } + }); + return requestData; + } + function addRequestDataToEvent(event, req, options2) { + const include = { + ...DEFAULT_INCLUDES, + ..._optionalChain([options2, "optionalAccess", (_) => _.include]) + }; + if (include.request) { + const extractedRequestData = Array.isArray(include.request) ? extractRequestData(req, { include: include.request }) : extractRequestData(req); + event.request = { + ...event.request, + ...extractedRequestData + }; + } + if (include.user) { + const extractedUser = req.user && utils.isPlainObject(req.user) ? extractUserData(req.user, include.user) : {}; + if (Object.keys(extractedUser).length) { + event.user = { + ...event.user, + ...extractedUser + }; + } + } + if (include.ip) { + const ip = req.ip || req.socket && req.socket.remoteAddress; + if (ip) { + event.user = { + ...event.user, + ip_address: ip + }; + } + } + if (include.transaction && !event.transaction) { + event.transaction = extractTransaction(req, include.transaction); + } + return event; + } + function extractQueryParams(req) { + let originalUrl = req.originalUrl || req.url || ""; + if (!originalUrl) { + return; + } + if (originalUrl.startsWith("/")) { + originalUrl = `http://dogs.are.great${originalUrl}`; + } + return req.query || typeof URL !== void 0 && new URL(originalUrl).search.replace("?", "") || // In Node 8, `URL` isn't in the global scope, so we have to use the built-in module from Node + url2.parse(originalUrl).query || void 0; + } + exports2.DEFAULT_USER_INCLUDES = DEFAULT_USER_INCLUDES; + exports2.addRequestDataToEvent = addRequestDataToEvent; + exports2.extractPathForTransaction = extractPathForTransaction; + exports2.extractRequestData = extractRequestData; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/requestdata.js +var require_requestdata3 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/requestdata.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var requestdata = require_requestdata2(); + var DEFAULT_OPTIONS = { + include: { + cookies: true, + data: true, + headers: true, + ip: false, + query_string: true, + url: true, + user: { + id: true, + username: true, + email: true + } + }, + transactionNamingScheme: "methodPath" + }; + var RequestData = class _RequestData { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "RequestData"; + } + /** + * @inheritDoc + */ + __init() { + this.name = _RequestData.id; + } + /** + * Function for adding request data to event. Defaults to `addRequestDataToEvent` from `@sentry/node` for now, but + * left as a property so this integration can be moved to `@sentry/core` as a base class in case we decide to use + * something similar in browser-based SDKs in the future. + */ + /** + * @inheritDoc + */ + constructor(options2 = {}) { + _RequestData.prototype.__init.call(this); + this._addRequestData = requestdata.addRequestDataToEvent; + this._options = { + ...DEFAULT_OPTIONS, + ...options2, + include: { + // @ts-ignore It's mad because `method` isn't a known `include` key. (It's only here and not set by default in + // `addRequestDataToEvent` for legacy reasons. TODO (v8): Change that.) + method: true, + ...DEFAULT_OPTIONS.include, + ...options2.include, + user: options2.include && typeof options2.include.user === "boolean" ? options2.include.user : { + ...DEFAULT_OPTIONS.include.user, + // Unclear why TS still thinks `options.include.user` could be a boolean at this point + ...(options2.include || {}).user + } + } + }; + } + /** + * @inheritDoc + */ + setupOnce(addGlobalEventProcessor, getCurrentHub) { + const { transactionNamingScheme } = this._options; + addGlobalEventProcessor((event) => { + const hub = getCurrentHub(); + const self2 = hub.getIntegration(_RequestData); + const { sdkProcessingMetadata = {} } = event; + const req = sdkProcessingMetadata.request; + if (!self2 || !req) { + return event; + } + const addRequestDataOptions = sdkProcessingMetadata.requestDataOptionsFromExpressHandler || sdkProcessingMetadata.requestDataOptionsFromGCPWrapper || convertReqDataIntegrationOptsToAddReqDataOpts(this._options); + const processedEvent = this._addRequestData(event, req, addRequestDataOptions); + if (event.type === "transaction" || transactionNamingScheme === "handler") { + return processedEvent; + } + const reqWithTransaction = req; + const transaction = reqWithTransaction._sentryTransaction; + if (transaction) { + const shouldIncludeMethodInTransactionName = getSDKName(hub) === "sentry.javascript.nextjs" ? transaction.name.startsWith("/api") : transactionNamingScheme !== "path"; + const [transactionValue] = utils.extractPathForTransaction(req, { + path: true, + method: shouldIncludeMethodInTransactionName, + customRoute: transaction.name + }); + processedEvent.transaction = transactionValue; + } + return processedEvent; + }); + } + }; + RequestData.__initStatic(); + function convertReqDataIntegrationOptsToAddReqDataOpts(integrationOptions) { + const { + transactionNamingScheme, + include: { ip, user, ...requestOptions } + } = integrationOptions; + const requestIncludeKeys = []; + for (const [key, value] of Object.entries(requestOptions)) { + if (value) { + requestIncludeKeys.push(key); + } + } + let addReqDataUserOpt; + if (user === void 0) { + addReqDataUserOpt = true; + } else if (typeof user === "boolean") { + addReqDataUserOpt = user; + } else { + const userIncludeKeys = []; + for (const [key, value] of Object.entries(user)) { + if (value) { + userIncludeKeys.push(key); + } + } + addReqDataUserOpt = userIncludeKeys; + } + return { + include: { + ip, + user: addReqDataUserOpt, + request: requestIncludeKeys.length !== 0 ? requestIncludeKeys : void 0, + transaction: transactionNamingScheme + } + }; + } + function getSDKName(hub) { + try { + return hub.getClient().getOptions()._metadata.sdk.name; + } catch (err2) { + return void 0; + } + } + exports2.RequestData = RequestData; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/localvariables.js +var require_localvariables = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/localvariables.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var utils = require_cjs3(); + var lru_map = require_lru(); + var nodeVersion = require_nodeVersion(); + function createCallbackList(complete) { + let callbacks = []; + let completedCalled = false; + function checkedComplete(result) { + callbacks = []; + if (completedCalled) { + return; + } + completedCalled = true; + complete(result); + } + callbacks.push(checkedComplete); + function add(fn) { + callbacks.push(fn); + } + function next(result) { + const popped = callbacks.pop() || checkedComplete; + try { + popped(result); + } catch (_) { + checkedComplete(result); + } + } + return { add, next }; + } + var AsyncSession = class { + /** Throws if inspector API is not available */ + constructor() { + const { Session } = require("inspector"); + this._session = new Session(); + } + /** @inheritdoc */ + configureAndConnect(onPause, captureAll) { + this._session.connect(); + this._session.on("Debugger.paused", (event) => { + onPause(event, () => { + this._session.post("Debugger.resume"); + }); + }); + this._session.post("Debugger.enable"); + this._session.post("Debugger.setPauseOnExceptions", { state: captureAll ? "all" : "uncaught" }); + } + /** @inheritdoc */ + getLocalVariables(objectId, complete) { + this._getProperties(objectId, (props) => { + const { add, next } = createCallbackList(complete); + for (const prop of props) { + if (_optionalChain([prop, "optionalAccess", (_2) => _2.value, "optionalAccess", (_3) => _3.objectId]) && _optionalChain([prop, "optionalAccess", (_4) => _4.value, "access", (_5) => _5.className]) === "Array") { + const id = prop.value.objectId; + add((vars) => this._unrollArray(id, prop.name, vars, next)); + } else if (_optionalChain([prop, "optionalAccess", (_6) => _6.value, "optionalAccess", (_7) => _7.objectId]) && _optionalChain([prop, "optionalAccess", (_8) => _8.value, "optionalAccess", (_9) => _9.className]) === "Object") { + const id = prop.value.objectId; + add((vars) => this._unrollObject(id, prop.name, vars, next)); + } else if (_optionalChain([prop, "optionalAccess", (_10) => _10.value, "optionalAccess", (_11) => _11.value]) || _optionalChain([prop, "optionalAccess", (_12) => _12.value, "optionalAccess", (_13) => _13.description])) { + add((vars) => this._unrollOther(prop, vars, next)); + } + } + next({}); + }); + } + /** + * Gets all the PropertyDescriptors of an object + */ + _getProperties(objectId, next) { + this._session.post( + "Runtime.getProperties", + { + objectId, + ownProperties: true + }, + (err2, params) => { + if (err2) { + next([]); + } else { + next(params.result); + } + } + ); + } + /** + * Unrolls an array property + */ + _unrollArray(objectId, name, vars, next) { + this._getProperties(objectId, (props) => { + vars[name] = props.filter((v) => v.name !== "length" && !isNaN(parseInt(v.name, 10))).sort((a, b) => parseInt(a.name, 10) - parseInt(b.name, 10)).map((v) => _optionalChain([v, "optionalAccess", (_14) => _14.value, "optionalAccess", (_15) => _15.value])); + next(vars); + }); + } + /** + * Unrolls an object property + */ + _unrollObject(objectId, name, vars, next) { + this._getProperties(objectId, (props) => { + vars[name] = props.map((v) => [v.name, _optionalChain([v, "optionalAccess", (_16) => _16.value, "optionalAccess", (_17) => _17.value])]).reduce((obj2, [key, val]) => { + obj2[key] = val; + return obj2; + }, {}); + next(vars); + }); + } + /** + * Unrolls other properties + */ + _unrollOther(prop, vars, next) { + if (_optionalChain([prop, "optionalAccess", (_18) => _18.value, "optionalAccess", (_19) => _19.value])) { + vars[prop.name] = prop.value.value; + } else if (_optionalChain([prop, "optionalAccess", (_20) => _20.value, "optionalAccess", (_21) => _21.description]) && _optionalChain([prop, "optionalAccess", (_22) => _22.value, "optionalAccess", (_23) => _23.type]) !== "function") { + vars[prop.name] = `<${prop.value.description}>`; + } + next(vars); + } + }; + function tryNewAsyncSession() { + try { + return new AsyncSession(); + } catch (e) { + return void 0; + } + } + function isAnonymous(name) { + return name !== void 0 && ["", "?", ""].includes(name); + } + function functionNamesMatch(a, b) { + return a === b || isAnonymous(a) && isAnonymous(b); + } + function hashFrames(frames) { + if (frames === void 0) { + return; + } + return frames.slice(-10).reduce((acc, frame) => `${acc},${frame.function},${frame.lineno},${frame.colno}`, ""); + } + function hashFromStack(stackParser, stack) { + if (stack === void 0) { + return void 0; + } + return hashFrames(stackParser(stack, 1)); + } + var LocalVariables = class _LocalVariables { + static __initStatic() { + this.id = "LocalVariables"; + } + __init() { + this.name = _LocalVariables.id; + } + __init2() { + this._cachedFrames = new lru_map.LRUMap(20); + } + constructor(_options = {}, _session = tryNewAsyncSession()) { + this._options = _options; + this._session = _session; + _LocalVariables.prototype.__init.call(this); + _LocalVariables.prototype.__init2.call(this); + } + /** + * @inheritDoc + */ + setupOnce(addGlobalEventProcessor, getCurrentHub) { + this._setup(addGlobalEventProcessor, _optionalChain([getCurrentHub, "call", (_24) => _24(), "access", (_25) => _25.getClient, "call", (_26) => _26(), "optionalAccess", (_27) => _27.getOptions, "call", (_28) => _28()])); + } + /** Setup in a way that's easier to call from tests */ + _setup(addGlobalEventProcessor, clientOptions) { + if (this._session && _optionalChain([clientOptions, "optionalAccess", (_29) => _29.includeLocalVariables])) { + const unsupportedNodeVersion = (nodeVersion.NODE_VERSION.major || 0) < 18; + if (unsupportedNodeVersion) { + utils.logger.log("The `LocalVariables` integration is only supported on Node >= v18."); + return; + } + this._session.configureAndConnect( + (ev, complete) => this._handlePaused(clientOptions.stackParser, ev, complete), + !!this._options.captureAllExceptions + ); + addGlobalEventProcessor(async (event) => this._addLocalVariables(event)); + } + } + /** + * Handle the pause event + */ + _handlePaused(stackParser, { params: { reason, data, callFrames } }, complete) { + if (reason !== "exception" && reason !== "promiseRejection") { + complete(); + return; + } + const exceptionHash = hashFromStack(stackParser, _optionalChain([data, "optionalAccess", (_30) => _30.description])); + if (exceptionHash == void 0) { + complete(); + return; + } + const { add, next } = createCallbackList((frames) => { + this._cachedFrames.set(exceptionHash, frames); + complete(); + }); + for (let i = 0; i < Math.min(callFrames.length, 5); i++) { + const { scopeChain, functionName, this: obj2 } = callFrames[i]; + const localScope = scopeChain.find((scope) => scope.type === "local"); + const fn = obj2.className === "global" || !obj2.className ? functionName : `${obj2.className}.${functionName}`; + if (_optionalChain([localScope, "optionalAccess", (_31) => _31.object, "access", (_32) => _32.objectId]) === void 0) { + add((frames) => { + frames[i] = { function: fn }; + next(frames); + }); + } else { + const id = localScope.object.objectId; + add( + (frames) => _optionalChain([this, "access", (_33) => _33._session, "optionalAccess", (_34) => _34.getLocalVariables, "call", (_35) => _35(id, (vars) => { + frames[i] = { function: fn, vars }; + next(frames); + })]) + ); + } + } + next([]); + } + /** + * Adds local variables event stack frames. + */ + _addLocalVariables(event) { + for (const exception of _optionalChain([event, "optionalAccess", (_36) => _36.exception, "optionalAccess", (_37) => _37.values]) || []) { + this._addLocalVariablesToException(exception); + } + return event; + } + /** + * Adds local variables to the exception stack frames. + */ + _addLocalVariablesToException(exception) { + const hash = hashFrames(_optionalChain([exception, "optionalAccess", (_38) => _38.stacktrace, "optionalAccess", (_39) => _39.frames])); + if (hash === void 0) { + return; + } + const cachedFrames = this._cachedFrames.delete(hash); + if (cachedFrames === void 0) { + return; + } + const frameCount = _optionalChain([exception, "access", (_40) => _40.stacktrace, "optionalAccess", (_41) => _41.frames, "optionalAccess", (_42) => _42.length]) || 0; + for (let i = 0; i < frameCount; i++) { + const frameIndex = frameCount - i - 1; + if (!_optionalChain([exception, "optionalAccess", (_43) => _43.stacktrace, "optionalAccess", (_44) => _44.frames, "optionalAccess", (_45) => _45[frameIndex]]) || !cachedFrames[i]) { + break; + } + if ( + // We need to have vars to add + cachedFrames[i].vars === void 0 || // We're not interested in frames that are not in_app because the vars are not relevant + exception.stacktrace.frames[frameIndex].in_app === false || // The function names need to match + !functionNamesMatch(exception.stacktrace.frames[frameIndex].function, cachedFrames[i].function) + ) { + continue; + } + exception.stacktrace.frames[frameIndex].vars = cachedFrames[i].vars; + } + } + }; + LocalVariables.__initStatic(); + exports2.LocalVariables = LocalVariables; + exports2.createCallbackList = createCallbackList; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/undici/index.js +var require_undici = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/undici/index.js"(exports2, module2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var lru_map = require_lru(); + var nodeVersion = require_nodeVersion(); + var http4 = require_http3(); + exports2.ChannelName = void 0; + (function(ChannelName) { + const RequestCreate = "undici:request:create"; + ChannelName["RequestCreate"] = RequestCreate; + const RequestEnd = "undici:request:headers"; + ChannelName["RequestEnd"] = RequestEnd; + const RequestError = "undici:request:error"; + ChannelName["RequestError"] = RequestError; + })(exports2.ChannelName || (exports2.ChannelName = {})); + var Undici = class _Undici { + /** + * @inheritDoc + */ + static __initStatic() { + this.id = "Undici"; + } + /** + * @inheritDoc + */ + __init() { + this.name = _Undici.id; + } + __init2() { + this._createSpanUrlMap = new lru_map.LRUMap(100); + } + __init3() { + this._headersUrlMap = new lru_map.LRUMap(100); + } + constructor(_options = {}) { + _Undici.prototype.__init.call(this); + _Undici.prototype.__init2.call(this); + _Undici.prototype.__init3.call(this); + _Undici.prototype.__init4.call(this); + _Undici.prototype.__init5.call(this); + _Undici.prototype.__init6.call(this); + this._options = { + breadcrumbs: _options.breadcrumbs === void 0 ? true : _options.breadcrumbs, + shouldCreateSpanForRequest: _options.shouldCreateSpanForRequest + }; + } + /** + * @inheritDoc + */ + setupOnce(_addGlobalEventProcessor) { + if (nodeVersion.NODE_VERSION.major && nodeVersion.NODE_VERSION.major < 16) { + return; + } + let ds; + try { + ds = utils.dynamicRequire(module2, "diagnostics_channel"); + } catch (e) { + } + if (!ds || !ds.subscribe) { + return; + } + ds.subscribe(exports2.ChannelName.RequestCreate, this._onRequestCreate); + ds.subscribe(exports2.ChannelName.RequestEnd, this._onRequestEnd); + ds.subscribe(exports2.ChannelName.RequestError, this._onRequestError); + } + /** Helper that wraps shouldCreateSpanForRequest option */ + _shouldCreateSpan(url2) { + if (this._options.shouldCreateSpanForRequest === void 0) { + return true; + } + const cachedDecision = this._createSpanUrlMap.get(url2); + if (cachedDecision !== void 0) { + return cachedDecision; + } + const decision = this._options.shouldCreateSpanForRequest(url2); + this._createSpanUrlMap.set(url2, decision); + return decision; + } + __init4() { + this._onRequestCreate = (message) => { + const hub = core.getCurrentHub(); + if (!hub.getIntegration(_Undici)) { + return; + } + const { request } = message; + const stringUrl = request.origin ? request.origin.toString() + request.path : request.path; + if (http4.isSentryRequest(stringUrl) || request.__sentry_span__ !== void 0) { + return; + } + const client = hub.getClient(); + if (!client) { + return; + } + const clientOptions = client.getOptions(); + const scope = hub.getScope(); + const parentSpan = scope.getSpan(); + const span = this._shouldCreateSpan(stringUrl) ? createRequestSpan(parentSpan, request, stringUrl) : void 0; + if (span) { + request.__sentry_span__ = span; + } + const shouldAttachTraceData = (url2) => { + if (clientOptions.tracePropagationTargets === void 0) { + return true; + } + const cachedDecision = this._headersUrlMap.get(url2); + if (cachedDecision !== void 0) { + return cachedDecision; + } + const decision = utils.stringMatchesSomePattern(url2, clientOptions.tracePropagationTargets); + this._headersUrlMap.set(url2, decision); + return decision; + }; + if (shouldAttachTraceData(stringUrl)) { + if (span) { + const dynamicSamplingContext = _optionalChain([span, "optionalAccess", (_4) => _4.transaction, "optionalAccess", (_5) => _5.getDynamicSamplingContext, "call", (_6) => _6()]); + const sentryBaggageHeader = utils.dynamicSamplingContextToSentryBaggageHeader(dynamicSamplingContext); + setHeadersOnRequest(request, span.toTraceparent(), sentryBaggageHeader); + } else { + const { traceId, sampled, dsc } = scope.getPropagationContext(); + const sentryTrace = utils.generateSentryTraceHeader(traceId, void 0, sampled); + const dynamicSamplingContext = dsc || core.getDynamicSamplingContextFromClient(traceId, client, scope); + const sentryBaggageHeader = utils.dynamicSamplingContextToSentryBaggageHeader(dynamicSamplingContext); + setHeadersOnRequest(request, sentryTrace, sentryBaggageHeader); + } + } + }; + } + __init5() { + this._onRequestEnd = (message) => { + const hub = core.getCurrentHub(); + if (!hub.getIntegration(_Undici)) { + return; + } + const { request, response } = message; + const stringUrl = request.origin ? request.origin.toString() + request.path : request.path; + if (http4.isSentryRequest(stringUrl)) { + return; + } + const span = request.__sentry_span__; + if (span) { + span.setHttpStatus(response.statusCode); + span.finish(); + } + if (this._options.breadcrumbs) { + hub.addBreadcrumb( + { + category: "http", + data: { + method: request.method, + status_code: response.statusCode, + url: stringUrl + }, + type: "http" + }, + { + event: "response", + request, + response + } + ); + } + }; + } + __init6() { + this._onRequestError = (message) => { + const hub = core.getCurrentHub(); + if (!hub.getIntegration(_Undici)) { + return; + } + const { request } = message; + const stringUrl = request.origin ? request.origin.toString() + request.path : request.path; + if (http4.isSentryRequest(stringUrl)) { + return; + } + const span = request.__sentry_span__; + if (span) { + span.setStatus("internal_error"); + span.finish(); + } + if (this._options.breadcrumbs) { + hub.addBreadcrumb( + { + category: "http", + data: { + method: request.method, + url: stringUrl + }, + level: "error", + type: "http" + }, + { + event: "error", + request + } + ); + } + }; + } + }; + Undici.__initStatic(); + function setHeadersOnRequest(request, sentryTrace, sentryBaggageHeader) { + if (request.__sentry_has_headers__) { + return; + } + request.addHeader("sentry-trace", sentryTrace); + if (sentryBaggageHeader) { + request.addHeader("baggage", sentryBaggageHeader); + } + request.__sentry_has_headers__ = true; + } + function createRequestSpan(activeSpan, request, stringUrl) { + const url2 = utils.parseUrl(stringUrl); + const method = request.method || "GET"; + const data = { + "http.method": method + }; + if (url2.search) { + data["http.query"] = url2.search; + } + if (url2.hash) { + data["http.fragment"] = url2.hash; + } + return _optionalChain([activeSpan, "optionalAccess", (_7) => _7.startChild, "call", (_8) => _8({ + op: "http.client", + origin: "auto.http.node.undici", + description: `${method} ${utils.getSanitizedUrlString(url2)}`, + data + })]); + } + exports2.Undici = Undici; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/module.js +var require_module = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/module.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var path30 = require("path"); + var isWindowsPlatform = path30.sep === "\\"; + function normalizeWindowsPath(path31) { + return path31.replace(/^[A-Z]:/, "").replace(/\\/g, "/"); + } + function getModuleFromFilename(filename, normalizeWindowsPathSeparator = isWindowsPlatform) { + if (!filename) { + return; + } + const normalizedFilename = normalizeWindowsPathSeparator ? normalizeWindowsPath(filename) : filename; + let { root, dir, base: basename9, ext: ext2 } = path30.posix.parse(normalizedFilename); + const base = require && require.main && require.main.filename && dir || global.process.cwd(); + const normalizedBase = `${base}/`; + let file = basename9; + if (ext2 === ".js") { + file = file.slice(0, file.length - ".js".length); + } + if (!root && !dir) { + dir = "."; + } + let n = dir.lastIndexOf("/node_modules/"); + if (n > -1) { + return `${dir.slice(n + 14).replace(/\//g, ".")}:${file}`; + } + n = `${dir}/`.lastIndexOf(normalizedBase, 0); + if (n === 0) { + let moduleName2 = dir.slice(normalizedBase.length).replace(/\//g, "."); + if (moduleName2) { + moduleName2 += ":"; + } + moduleName2 += file; + return moduleName2; + } + return file; + } + exports2.getModuleFromFilename = getModuleFromFilename; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/sdk.js +var require_sdk3 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/sdk.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var index$1 = require_async5(); + var client = require_client2(); + var console2 = require_console2(); + var http4 = require_http4(); + var onuncaughtexception = require_onuncaughtexception(); + var onunhandledrejection = require_onunhandledrejection(); + var linkederrors = require_linkederrors(); + var modules = require_modules(); + var contextlines = require_contextlines(); + var context2 = require_context4(); + var requestdata = require_requestdata3(); + var localvariables = require_localvariables(); + var index = require_undici(); + var module$1 = require_module(); + var http$1 = require_http2(); + var defaultIntegrations = [ + // Common + new core.Integrations.InboundFilters(), + new core.Integrations.FunctionToString(), + // Native Wrappers + new console2.Console(), + new http4.Http(), + new index.Undici(), + // Global Handlers + new onuncaughtexception.OnUncaughtException(), + new onunhandledrejection.OnUnhandledRejection(), + // Event Info + new contextlines.ContextLines(), + new localvariables.LocalVariables(), + new context2.Context(), + new modules.Modules(), + new requestdata.RequestData(), + // Misc + new linkederrors.LinkedErrors() + ]; + function init5(options2 = {}) { + const carrier = core.getMainCarrier(); + index$1.setNodeAsyncContextStrategy(); + const autoloadedIntegrations = _optionalChain([carrier, "access", (_) => _.__SENTRY__, "optionalAccess", (_2) => _2.integrations]) || []; + options2.defaultIntegrations = options2.defaultIntegrations === false ? [] : [ + ...Array.isArray(options2.defaultIntegrations) ? options2.defaultIntegrations : defaultIntegrations, + ...autoloadedIntegrations + ]; + if (options2.dsn === void 0 && process.env.SENTRY_DSN) { + options2.dsn = process.env.SENTRY_DSN; + } + const sentryTracesSampleRate = process.env.SENTRY_TRACES_SAMPLE_RATE; + if (options2.tracesSampleRate === void 0 && sentryTracesSampleRate) { + const tracesSampleRate = parseFloat(sentryTracesSampleRate); + if (isFinite(tracesSampleRate)) { + options2.tracesSampleRate = tracesSampleRate; + } + } + if (options2.release === void 0) { + const detectedRelease = getSentryRelease(); + if (detectedRelease !== void 0) { + options2.release = detectedRelease; + } else { + options2.autoSessionTracking = false; + } + } + if (options2.environment === void 0 && process.env.SENTRY_ENVIRONMENT) { + options2.environment = process.env.SENTRY_ENVIRONMENT; + } + if (options2.autoSessionTracking === void 0 && options2.dsn !== void 0) { + options2.autoSessionTracking = true; + } + if (options2.instrumenter === void 0) { + options2.instrumenter = "sentry"; + } + const clientOptions = { + ...options2, + stackParser: utils.stackParserFromStackParserOptions(options2.stackParser || defaultStackParser), + integrations: core.getIntegrationsToSetup(options2), + transport: options2.transport || http$1.makeNodeTransport + }; + core.initAndBind(options2.clientClass || client.NodeClient, clientOptions); + if (options2.autoSessionTracking) { + startSessionTracking(); + } + updateScopeFromEnvVariables(); + } + function isAutoSessionTrackingEnabled(client2) { + if (client2 === void 0) { + return false; + } + const clientOptions = client2 && client2.getOptions(); + if (clientOptions && clientOptions.autoSessionTracking !== void 0) { + return clientOptions.autoSessionTracking; + } + return false; + } + function getSentryRelease(fallback) { + if (process.env.SENTRY_RELEASE) { + return process.env.SENTRY_RELEASE; + } + if (utils.GLOBAL_OBJ.SENTRY_RELEASE && utils.GLOBAL_OBJ.SENTRY_RELEASE.id) { + return utils.GLOBAL_OBJ.SENTRY_RELEASE.id; + } + return ( + // GitHub Actions - https://help.github.com/en/actions/configuring-and-managing-workflows/using-environment-variables#default-environment-variables + process.env.GITHUB_SHA || // Netlify - https://docs.netlify.com/configure-builds/environment-variables/#build-metadata + process.env.COMMIT_REF || // Vercel - https://vercel.com/docs/v2/build-step#system-environment-variables + process.env.VERCEL_GIT_COMMIT_SHA || process.env.VERCEL_GITHUB_COMMIT_SHA || process.env.VERCEL_GITLAB_COMMIT_SHA || process.env.VERCEL_BITBUCKET_COMMIT_SHA || // Zeit (now known as Vercel) + process.env.ZEIT_GITHUB_COMMIT_SHA || process.env.ZEIT_GITLAB_COMMIT_SHA || process.env.ZEIT_BITBUCKET_COMMIT_SHA || fallback + ); + } + var defaultStackParser = utils.createStackParser(utils.nodeStackLineParser(module$1.getModuleFromFilename)); + function startSessionTracking() { + const hub = core.getCurrentHub(); + hub.startSession(); + process.on("beforeExit", () => { + const session = hub.getScope().getSession(); + const terminalStates = ["exited", "crashed"]; + if (session && !terminalStates.includes(session.status)) + hub.endSession(); + }); + } + function updateScopeFromEnvVariables() { + const sentryUseEnvironment = (process.env.SENTRY_USE_ENVIRONMENT || "").toLowerCase(); + if (!["false", "n", "no", "off", "0"].includes(sentryUseEnvironment)) { + const sentryTraceEnv = process.env.SENTRY_TRACE; + const baggageEnv = process.env.SENTRY_BAGGAGE; + const { propagationContext } = utils.tracingContextFromHeaders(sentryTraceEnv, baggageEnv); + core.getCurrentHub().getScope().setPropagationContext(propagationContext); + } + } + exports2.defaultIntegrations = defaultIntegrations; + exports2.defaultStackParser = defaultStackParser; + exports2.getSentryRelease = getSentryRelease; + exports2.init = init5; + exports2.isAutoSessionTrackingEnabled = isAutoSessionTrackingEnabled; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/utils.js +var require_utils16 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/utils.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var fs6 = require("fs"); + var path30 = require("path"); + function deepReadDirSync(targetDir) { + const targetDirAbsPath = path30.resolve(targetDir); + if (!fs6.existsSync(targetDirAbsPath)) { + throw new Error(`Cannot read contents of ${targetDirAbsPath}. Directory does not exist.`); + } + if (!fs6.statSync(targetDirAbsPath).isDirectory()) { + throw new Error(`Cannot read contents of ${targetDirAbsPath}, because it is not a directory.`); + } + const deepReadCurrentDir = (currentDirAbsPath) => { + return fs6.readdirSync(currentDirAbsPath).reduce((absPaths, itemName) => { + const itemAbsPath = path30.join(currentDirAbsPath, itemName); + if (fs6.statSync(itemAbsPath).isDirectory()) { + return absPaths.concat(deepReadCurrentDir(itemAbsPath)); + } + absPaths.push(itemAbsPath); + return absPaths; + }, []); + }; + return deepReadCurrentDir(targetDirAbsPath).map((absPath) => path30.relative(targetDirAbsPath, absPath)); + } + exports2.deepReadDirSync = deepReadDirSync; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/requestDataDeprecated.js +var require_requestDataDeprecated = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/requestDataDeprecated.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var requestdata = require_requestdata2(); + function extractRequestData(req, keys) { + return requestdata.extractRequestData(req, { include: keys }); + } + function parseRequest(event, req, options2 = {}) { + return requestdata.addRequestDataToEvent(event, req, { include: options2 }); + } + exports2.extractRequestData = extractRequestData; + exports2.parseRequest = parseRequest; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/handlers.js +var require_handlers = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/handlers.js"(exports2) { + var { + _optionalChain + } = require_buildPolyfills(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var utils = require_cjs3(); + var requestdata = require_requestdata2(); + var sdk = require_sdk3(); + var requestDataDeprecated = require_requestDataDeprecated(); + function tracingHandler() { + return function sentryTracingMiddleware(req, res, next) { + const hub = core.getCurrentHub(); + const options2 = _optionalChain([hub, "access", (_) => _.getClient, "call", (_2) => _2(), "optionalAccess", (_3) => _3.getOptions, "call", (_4) => _4()]); + if (!options2 || options2.instrumenter !== "sentry" || _optionalChain([req, "access", (_5) => _5.method, "optionalAccess", (_6) => _6.toUpperCase, "call", (_7) => _7()]) === "OPTIONS" || _optionalChain([req, "access", (_8) => _8.method, "optionalAccess", (_9) => _9.toUpperCase, "call", (_10) => _10()]) === "HEAD") { + return next(); + } + const sentryTrace = req.headers && utils.isString(req.headers["sentry-trace"]) ? req.headers["sentry-trace"] : void 0; + const baggage = _optionalChain([req, "access", (_11) => _11.headers, "optionalAccess", (_12) => _12.baggage]); + const { traceparentData, dynamicSamplingContext, propagationContext } = utils.tracingContextFromHeaders( + sentryTrace, + baggage + ); + hub.getScope().setPropagationContext(propagationContext); + if (!core.hasTracingEnabled(options2)) { + return next(); + } + const [name, source2] = utils.extractPathForTransaction(req, { path: true, method: true }); + const transaction = core.startTransaction( + { + name, + op: "http.server", + origin: "auto.http.node.tracingHandler", + ...traceparentData, + metadata: { + dynamicSamplingContext: traceparentData && !dynamicSamplingContext ? {} : dynamicSamplingContext, + // The request should already have been stored in `scope.sdkProcessingMetadata` (which will become + // `event.sdkProcessingMetadata` the same way the metadata here will) by `sentryRequestMiddleware`, but on the + // off chance someone is using `sentryTracingMiddleware` without `sentryRequestMiddleware`, it doesn't hurt to + // be sure + request: req, + source: source2 + } + }, + // extra context passed to the tracesSampler + { request: requestdata.extractRequestData(req) } + ); + hub.configureScope((scope) => { + scope.setSpan(transaction); + }); + res.__sentry_transaction = transaction; + res.once("finish", () => { + setImmediate(() => { + utils.addRequestDataToTransaction(transaction, req); + transaction.setHttpStatus(res.statusCode); + transaction.finish(); + }); + }); + next(); + }; + } + function convertReqHandlerOptsToAddReqDataOpts(reqHandlerOptions = {}) { + let addRequestDataOptions; + if ("include" in reqHandlerOptions) { + addRequestDataOptions = { include: reqHandlerOptions.include }; + } else { + const { ip, request, transaction, user } = reqHandlerOptions; + if (ip || request || transaction || user) { + addRequestDataOptions = { include: utils.dropUndefinedKeys({ ip, request, transaction, user }) }; + } + } + return addRequestDataOptions; + } + function requestHandler(options2) { + const requestDataOptions = convertReqHandlerOptsToAddReqDataOpts(options2); + const currentHub = core.getCurrentHub(); + const client = currentHub.getClient(); + if (client && sdk.isAutoSessionTrackingEnabled(client)) { + client.initSessionFlusher(); + const scope = currentHub.getScope(); + if (scope.getSession()) { + scope.setSession(); + } + } + return function sentryRequestMiddleware(req, res, next) { + if (options2 && options2.flushTimeout && options2.flushTimeout > 0) { + const _end = res.end; + res.end = function(chunk, encoding, cb) { + void core.flush(options2.flushTimeout).then(() => { + _end.call(this, chunk, encoding, cb); + }).then(null, (e) => { + (typeof __SENTRY_DEBUG__ === "undefined" || __SENTRY_DEBUG__) && utils.logger.error(e); + _end.call(this, chunk, encoding, cb); + }); + }; + } + core.runWithAsyncContext(() => { + const currentHub2 = core.getCurrentHub(); + currentHub2.configureScope((scope) => { + scope.setSDKProcessingMetadata({ + request: req, + // TODO (v8): Stop passing this + requestDataOptionsFromExpressHandler: requestDataOptions + }); + const client2 = currentHub2.getClient(); + if (sdk.isAutoSessionTrackingEnabled(client2)) { + const scope2 = currentHub2.getScope(); + if (scope2) { + scope2.setRequestSession({ status: "ok" }); + } + } + }); + res.once("finish", () => { + const client2 = currentHub2.getClient(); + if (sdk.isAutoSessionTrackingEnabled(client2)) { + setImmediate(() => { + if (client2 && client2._captureRequestSession) { + client2._captureRequestSession(); + } + }); + } + }); + next(); + }); + }; + } + function getStatusCodeFromResponse(error) { + const statusCode = error.status || error.statusCode || error.status_code || error.output && error.output.statusCode; + return statusCode ? parseInt(statusCode, 10) : 500; + } + function defaultShouldHandleError(error) { + const status = getStatusCodeFromResponse(error); + return status >= 500; + } + function errorHandler(options2) { + return function sentryErrorMiddleware(error, _req, res, next) { + const shouldHandleError = options2 && options2.shouldHandleError || defaultShouldHandleError; + if (shouldHandleError(error)) { + core.withScope((_scope) => { + _scope.setSDKProcessingMetadata({ request: _req }); + const transaction = res.__sentry_transaction; + if (transaction && _scope.getSpan() === void 0) { + _scope.setSpan(transaction); + } + const client = core.getCurrentHub().getClient(); + if (client && sdk.isAutoSessionTrackingEnabled(client)) { + const isSessionAggregatesMode = client._sessionFlusher !== void 0; + if (isSessionAggregatesMode) { + const requestSession = _scope.getRequestSession(); + if (requestSession && requestSession.status !== void 0) { + requestSession.status = "crashed"; + } + } + } + _scope.addEventProcessor((event) => { + utils.addExceptionMechanism(event, { type: "middleware", handled: false }); + return event; + }); + const eventId = core.captureException(error); + res.sentry = eventId; + next(error); + }); + return; + } + next(error); + }; + } + function trpcMiddleware(options2 = {}) { + return function({ path: path30, type: type2, next, rawInput }) { + const hub = core.getCurrentHub(); + const clientOptions = _optionalChain([hub, "access", (_13) => _13.getClient, "call", (_14) => _14(), "optionalAccess", (_15) => _15.getOptions, "call", (_16) => _16()]); + const sentryTransaction = hub.getScope().getTransaction(); + if (sentryTransaction) { + sentryTransaction.setName(`trpc/${path30}`, "route"); + sentryTransaction.op = "rpc.server"; + const trpcContext = { + procedure_type: type2 + }; + if (options2.attachRpcInput !== void 0 ? options2.attachRpcInput : _optionalChain([clientOptions, "optionalAccess", (_17) => _17.sendDefaultPii])) { + trpcContext.input = utils.normalize(rawInput); + } + sentryTransaction.setContext("trpc", trpcContext); + } + return next(); + }; + } + exports2.extractRequestData = requestDataDeprecated.extractRequestData; + exports2.parseRequest = requestDataDeprecated.parseRequest; + exports2.errorHandler = errorHandler; + exports2.requestHandler = requestHandler; + exports2.tracingHandler = tracingHandler; + exports2.trpcMiddleware = trpcMiddleware; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/index.js +var require_integrations2 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/integrations/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var console2 = require_console2(); + var http4 = require_http4(); + var onuncaughtexception = require_onuncaughtexception(); + var onunhandledrejection = require_onunhandledrejection(); + var linkederrors = require_linkederrors(); + var modules = require_modules(); + var contextlines = require_contextlines(); + var context2 = require_context4(); + var requestdata = require_requestdata3(); + var localvariables = require_localvariables(); + var index = require_undici(); + exports2.Console = console2.Console; + exports2.Http = http4.Http; + exports2.OnUncaughtException = onuncaughtexception.OnUncaughtException; + exports2.OnUnhandledRejection = onunhandledrejection.OnUnhandledRejection; + exports2.LinkedErrors = linkederrors.LinkedErrors; + exports2.Modules = modules.Modules; + exports2.ContextLines = contextlines.ContextLines; + exports2.Context = context2.Context; + exports2.RequestData = requestdata.RequestData; + exports2.LocalVariables = localvariables.LocalVariables; + exports2.Undici = index.Undici; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/tracing/integrations.js +var require_integrations3 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/tracing/integrations.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var tracing = require_cjs6(); + exports2.Apollo = tracing.Apollo; + exports2.Express = tracing.Express; + exports2.GraphQL = tracing.GraphQL; + exports2.Mongo = tracing.Mongo; + exports2.Mysql = tracing.Mysql; + exports2.Postgres = tracing.Postgres; + exports2.Prisma = tracing.Prisma; + } +}); + +// ../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/index.js +var require_cjs7 = __commonJS({ + "../node_modules/.pnpm/@sentry+node@7.66.0/node_modules/@sentry/node/cjs/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { value: true }); + var core = require_cjs4(); + var index = require_tracing2(); + var client = require_client2(); + var http4 = require_http2(); + var sdk = require_sdk3(); + var requestdata = require_requestdata2(); + var utils = require_utils16(); + var module$1 = require_module(); + var handlers = require_handlers(); + var index$1 = require_integrations2(); + var integrations = require_integrations3(); + var INTEGRATIONS = { + ...core.Integrations, + ...index$1, + ...integrations + }; + exports2.Hub = core.Hub; + exports2.SDK_VERSION = core.SDK_VERSION; + exports2.Scope = core.Scope; + exports2.addBreadcrumb = core.addBreadcrumb; + exports2.addGlobalEventProcessor = core.addGlobalEventProcessor; + exports2.captureCheckIn = core.captureCheckIn; + exports2.captureEvent = core.captureEvent; + exports2.captureException = core.captureException; + exports2.captureMessage = core.captureMessage; + exports2.close = core.close; + exports2.configureScope = core.configureScope; + exports2.createTransport = core.createTransport; + exports2.extractTraceparentData = core.extractTraceparentData; + exports2.flush = core.flush; + exports2.getActiveSpan = core.getActiveSpan; + exports2.getActiveTransaction = core.getActiveTransaction; + exports2.getCurrentHub = core.getCurrentHub; + exports2.getHubFromCarrier = core.getHubFromCarrier; + exports2.lastEventId = core.lastEventId; + exports2.makeMain = core.makeMain; + exports2.runWithAsyncContext = core.runWithAsyncContext; + exports2.setContext = core.setContext; + exports2.setExtra = core.setExtra; + exports2.setExtras = core.setExtras; + exports2.setMeasurement = core.setMeasurement; + exports2.setTag = core.setTag; + exports2.setTags = core.setTags; + exports2.setUser = core.setUser; + exports2.spanStatusfromHttpCode = core.spanStatusfromHttpCode; + exports2.startActiveSpan = core.startActiveSpan; + exports2.startSpan = core.startSpan; + exports2.startTransaction = core.startTransaction; + exports2.trace = core.trace; + exports2.withScope = core.withScope; + exports2.autoDiscoverNodePerformanceMonitoringIntegrations = index.autoDiscoverNodePerformanceMonitoringIntegrations; + exports2.NodeClient = client.NodeClient; + exports2.makeNodeTransport = http4.makeNodeTransport; + exports2.defaultIntegrations = sdk.defaultIntegrations; + exports2.defaultStackParser = sdk.defaultStackParser; + exports2.getSentryRelease = sdk.getSentryRelease; + exports2.init = sdk.init; + exports2.DEFAULT_USER_INCLUDES = requestdata.DEFAULT_USER_INCLUDES; + exports2.addRequestDataToEvent = requestdata.addRequestDataToEvent; + exports2.extractRequestData = requestdata.extractRequestData; + exports2.deepReadDirSync = utils.deepReadDirSync; + exports2.getModuleFromFilename = module$1.getModuleFromFilename; + exports2.Handlers = handlers; + exports2.Integrations = INTEGRATIONS; + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-stringifiers/abstract.js +var require_abstract2 = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-stringifiers/abstract.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var DEFAULT_RECORD_DELIMITER = "\n"; + var VALID_RECORD_DELIMITERS = [DEFAULT_RECORD_DELIMITER, "\r\n"]; + var CsvStringifier = ( + /** @class */ + function() { + function CsvStringifier2(fieldStringifier, recordDelimiter) { + if (recordDelimiter === void 0) { + recordDelimiter = DEFAULT_RECORD_DELIMITER; + } + this.fieldStringifier = fieldStringifier; + this.recordDelimiter = recordDelimiter; + _validateRecordDelimiter(recordDelimiter); + } + CsvStringifier2.prototype.getHeaderString = function() { + var headerRecord = this.getHeaderRecord(); + return headerRecord ? this.joinRecords([this.getCsvLine(headerRecord)]) : null; + }; + CsvStringifier2.prototype.stringifyRecords = function(records) { + var _this = this; + var csvLines = Array.from(records, function(record) { + return _this.getCsvLine(_this.getRecordAsArray(record)); + }); + return this.joinRecords(csvLines); + }; + CsvStringifier2.prototype.getCsvLine = function(record) { + var _this = this; + return record.map(function(fieldValue) { + return _this.fieldStringifier.stringify(fieldValue); + }).join(this.fieldStringifier.fieldDelimiter); + }; + CsvStringifier2.prototype.joinRecords = function(records) { + return records.join(this.recordDelimiter) + this.recordDelimiter; + }; + return CsvStringifier2; + }() + ); + exports2.CsvStringifier = CsvStringifier; + function _validateRecordDelimiter(delimiter) { + if (VALID_RECORD_DELIMITERS.indexOf(delimiter) === -1) { + throw new Error("Invalid record delimiter `" + delimiter + "` is specified"); + } + } + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-stringifiers/array.js +var require_array = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-stringifiers/array.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (b2.hasOwnProperty(p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var abstract_1 = require_abstract2(); + var ArrayCsvStringifier = ( + /** @class */ + function(_super) { + __extends(ArrayCsvStringifier2, _super); + function ArrayCsvStringifier2(fieldStringifier, recordDelimiter, header) { + var _this = _super.call(this, fieldStringifier, recordDelimiter) || this; + _this.header = header; + return _this; + } + ArrayCsvStringifier2.prototype.getHeaderRecord = function() { + return this.header; + }; + ArrayCsvStringifier2.prototype.getRecordAsArray = function(record) { + return record; + }; + return ArrayCsvStringifier2; + }(abstract_1.CsvStringifier) + ); + exports2.ArrayCsvStringifier = ArrayCsvStringifier; + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/field-stringifier.js +var require_field_stringifier = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/field-stringifier.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (b2.hasOwnProperty(p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var DEFAULT_FIELD_DELIMITER = ","; + var VALID_FIELD_DELIMITERS = [DEFAULT_FIELD_DELIMITER, ";"]; + var FieldStringifier = ( + /** @class */ + function() { + function FieldStringifier2(fieldDelimiter) { + this.fieldDelimiter = fieldDelimiter; + } + FieldStringifier2.prototype.isEmpty = function(value) { + return typeof value === "undefined" || value === null || value === ""; + }; + FieldStringifier2.prototype.quoteField = function(field) { + return '"' + field.replace(/"/g, '""') + '"'; + }; + return FieldStringifier2; + }() + ); + exports2.FieldStringifier = FieldStringifier; + var DefaultFieldStringifier = ( + /** @class */ + function(_super) { + __extends(DefaultFieldStringifier2, _super); + function DefaultFieldStringifier2() { + return _super !== null && _super.apply(this, arguments) || this; + } + DefaultFieldStringifier2.prototype.stringify = function(value) { + if (this.isEmpty(value)) + return ""; + var str = String(value); + return this.needsQuote(str) ? this.quoteField(str) : str; + }; + DefaultFieldStringifier2.prototype.needsQuote = function(str) { + return str.includes(this.fieldDelimiter) || str.includes("\n") || str.includes('"'); + }; + return DefaultFieldStringifier2; + }(FieldStringifier) + ); + var ForceQuoteFieldStringifier = ( + /** @class */ + function(_super) { + __extends(ForceQuoteFieldStringifier2, _super); + function ForceQuoteFieldStringifier2() { + return _super !== null && _super.apply(this, arguments) || this; + } + ForceQuoteFieldStringifier2.prototype.stringify = function(value) { + return this.isEmpty(value) ? "" : this.quoteField(String(value)); + }; + return ForceQuoteFieldStringifier2; + }(FieldStringifier) + ); + function createFieldStringifier(fieldDelimiter, alwaysQuote) { + if (fieldDelimiter === void 0) { + fieldDelimiter = DEFAULT_FIELD_DELIMITER; + } + if (alwaysQuote === void 0) { + alwaysQuote = false; + } + _validateFieldDelimiter(fieldDelimiter); + return alwaysQuote ? new ForceQuoteFieldStringifier(fieldDelimiter) : new DefaultFieldStringifier(fieldDelimiter); + } + exports2.createFieldStringifier = createFieldStringifier; + function _validateFieldDelimiter(delimiter) { + if (VALID_FIELD_DELIMITERS.indexOf(delimiter) === -1) { + throw new Error("Invalid field delimiter `" + delimiter + "` is specified"); + } + } + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/lang/object.js +var require_object3 = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/lang/object.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.isObject = function(value) { + return Object.prototype.toString.call(value) === "[object Object]"; + }; + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-stringifiers/object.js +var require_object4 = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-stringifiers/object.js"(exports2) { + "use strict"; + var __extends = exports2 && exports2.__extends || function() { + var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (b2.hasOwnProperty(p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + return function(d, b) { + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; + }(); + Object.defineProperty(exports2, "__esModule", { value: true }); + var abstract_1 = require_abstract2(); + var object_1 = require_object3(); + var ObjectCsvStringifier = ( + /** @class */ + function(_super) { + __extends(ObjectCsvStringifier2, _super); + function ObjectCsvStringifier2(fieldStringifier, header, recordDelimiter, headerIdDelimiter) { + var _this = _super.call(this, fieldStringifier, recordDelimiter) || this; + _this.header = header; + _this.headerIdDelimiter = headerIdDelimiter; + return _this; + } + ObjectCsvStringifier2.prototype.getHeaderRecord = function() { + if (!this.isObjectHeader) + return null; + return this.header.map(function(field) { + return field.title; + }); + }; + ObjectCsvStringifier2.prototype.getRecordAsArray = function(record) { + var _this = this; + return this.fieldIds.map(function(fieldId) { + return _this.getNestedValue(record, fieldId); + }); + }; + ObjectCsvStringifier2.prototype.getNestedValue = function(obj2, key) { + if (!this.headerIdDelimiter) + return obj2[key]; + return key.split(this.headerIdDelimiter).reduce(function(subObj, keyPart) { + return (subObj || {})[keyPart]; + }, obj2); + }; + Object.defineProperty(ObjectCsvStringifier2.prototype, "fieldIds", { + get: function() { + return this.isObjectHeader ? this.header.map(function(column) { + return column.id; + }) : this.header; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ObjectCsvStringifier2.prototype, "isObjectHeader", { + get: function() { + return object_1.isObject(this.header && this.header[0]); + }, + enumerable: true, + configurable: true + }); + return ObjectCsvStringifier2; + }(abstract_1.CsvStringifier) + ); + exports2.ObjectCsvStringifier = ObjectCsvStringifier; + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-stringifier-factory.js +var require_csv_stringifier_factory = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-stringifier-factory.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var array_1 = require_array(); + var field_stringifier_1 = require_field_stringifier(); + var object_1 = require_object4(); + var CsvStringifierFactory = ( + /** @class */ + function() { + function CsvStringifierFactory2() { + } + CsvStringifierFactory2.prototype.createArrayCsvStringifier = function(params) { + var fieldStringifier = field_stringifier_1.createFieldStringifier(params.fieldDelimiter, params.alwaysQuote); + return new array_1.ArrayCsvStringifier(fieldStringifier, params.recordDelimiter, params.header); + }; + CsvStringifierFactory2.prototype.createObjectCsvStringifier = function(params) { + var fieldStringifier = field_stringifier_1.createFieldStringifier(params.fieldDelimiter, params.alwaysQuote); + return new object_1.ObjectCsvStringifier(fieldStringifier, params.header, params.recordDelimiter, params.headerIdDelimiter); + }; + return CsvStringifierFactory2; + }() + ); + exports2.CsvStringifierFactory = CsvStringifierFactory; + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/lang/promise.js +var require_promise3 = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/lang/promise.js"(exports2) { + "use strict"; + var __spreadArrays = exports2 && exports2.__spreadArrays || function() { + for (var s = 0, i = 0, il = arguments.length; i < il; i++) + s += arguments[i].length; + for (var r = Array(s), k = 0, i = 0; i < il; i++) + for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) + r[k] = a[j]; + return r; + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + function promisify4(fn) { + return function() { + var args3 = []; + for (var _i = 0; _i < arguments.length; _i++) { + args3[_i] = arguments[_i]; + } + return new Promise(function(resolve8, reject) { + var nodeCallback = function(err2, result) { + if (err2) + reject(err2); + else + resolve8(result); + }; + fn.apply(null, __spreadArrays(args3, [nodeCallback])); + }); + }; + } + exports2.promisify = promisify4; + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/file-writer.js +var require_file_writer2 = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/file-writer.js"(exports2) { + "use strict"; + var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve8) { + resolve8(value); + }); + } + return new (P || (P = Promise))(function(resolve8, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve8(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __generator = exports2 && exports2.__generator || function(thisArg, body2) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body2.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var promise_1 = require_promise3(); + var fs_1 = require("fs"); + var writeFilePromise = promise_1.promisify(fs_1.writeFile); + var DEFAULT_ENCODING = "utf8"; + var FileWriter = ( + /** @class */ + function() { + function FileWriter2(path30, append2, encoding) { + if (encoding === void 0) { + encoding = DEFAULT_ENCODING; + } + this.path = path30; + this.append = append2; + this.encoding = encoding; + } + FileWriter2.prototype.write = function(string) { + return __awaiter(this, void 0, void 0, function() { + return __generator(this, function(_a) { + switch (_a.label) { + case 0: + return [4, writeFilePromise(this.path, string, this.getWriteOption())]; + case 1: + _a.sent(); + this.append = true; + return [ + 2 + /*return*/ + ]; + } + }); + }); + }; + FileWriter2.prototype.getWriteOption = function() { + return { + encoding: this.encoding, + flag: this.append ? "a" : "w" + }; + }; + return FileWriter2; + }() + ); + exports2.FileWriter = FileWriter; + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-writer.js +var require_csv_writer = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-writer.js"(exports2) { + "use strict"; + var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve8) { + resolve8(value); + }); + } + return new (P || (P = Promise))(function(resolve8, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve8(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __generator = exports2 && exports2.__generator || function(thisArg, body2) { + var _ = { label: 0, sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { value: op[1], done: false }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body2.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { value: op[0] ? op[1] : void 0, done: true }; + } + }; + Object.defineProperty(exports2, "__esModule", { value: true }); + var file_writer_1 = require_file_writer2(); + var DEFAULT_INITIAL_APPEND_FLAG = false; + var CsvWriter = ( + /** @class */ + function() { + function CsvWriter2(csvStringifier, path30, encoding, append2) { + if (append2 === void 0) { + append2 = DEFAULT_INITIAL_APPEND_FLAG; + } + this.csvStringifier = csvStringifier; + this.append = append2; + this.fileWriter = new file_writer_1.FileWriter(path30, this.append, encoding); + } + CsvWriter2.prototype.writeRecords = function(records) { + return __awaiter(this, void 0, void 0, function() { + var recordsString, writeString; + return __generator(this, function(_a) { + switch (_a.label) { + case 0: + recordsString = this.csvStringifier.stringifyRecords(records); + writeString = this.headerString + recordsString; + return [4, this.fileWriter.write(writeString)]; + case 1: + _a.sent(); + this.append = true; + return [ + 2 + /*return*/ + ]; + } + }); + }); + }; + Object.defineProperty(CsvWriter2.prototype, "headerString", { + get: function() { + var headerString = !this.append && this.csvStringifier.getHeaderString(); + return headerString || ""; + }, + enumerable: true, + configurable: true + }); + return CsvWriter2; + }() + ); + exports2.CsvWriter = CsvWriter; + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-writer-factory.js +var require_csv_writer_factory = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/lib/csv-writer-factory.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var csv_writer_1 = require_csv_writer(); + var CsvWriterFactory = ( + /** @class */ + function() { + function CsvWriterFactory2(csvStringifierFactory) { + this.csvStringifierFactory = csvStringifierFactory; + } + CsvWriterFactory2.prototype.createArrayCsvWriter = function(params) { + var csvStringifier = this.csvStringifierFactory.createArrayCsvStringifier({ + header: params.header, + fieldDelimiter: params.fieldDelimiter, + recordDelimiter: params.recordDelimiter, + alwaysQuote: params.alwaysQuote + }); + return new csv_writer_1.CsvWriter(csvStringifier, params.path, params.encoding, params.append); + }; + CsvWriterFactory2.prototype.createObjectCsvWriter = function(params) { + var csvStringifier = this.csvStringifierFactory.createObjectCsvStringifier({ + header: params.header, + fieldDelimiter: params.fieldDelimiter, + recordDelimiter: params.recordDelimiter, + headerIdDelimiter: params.headerIdDelimiter, + alwaysQuote: params.alwaysQuote + }); + return new csv_writer_1.CsvWriter(csvStringifier, params.path, params.encoding, params.append); + }; + return CsvWriterFactory2; + }() + ); + exports2.CsvWriterFactory = CsvWriterFactory; + } +}); + +// ../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/index.js +var require_dist5 = __commonJS({ + "../node_modules/.pnpm/csv-writer@1.6.0/node_modules/csv-writer/dist/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + var csv_stringifier_factory_1 = require_csv_stringifier_factory(); + var csv_writer_factory_1 = require_csv_writer_factory(); + var csvStringifierFactory = new csv_stringifier_factory_1.CsvStringifierFactory(); + var csvWriterFactory = new csv_writer_factory_1.CsvWriterFactory(csvStringifierFactory); + exports2.createArrayCsvStringifier = function(params) { + return csvStringifierFactory.createArrayCsvStringifier(params); + }; + exports2.createObjectCsvStringifier = function(params) { + return csvStringifierFactory.createObjectCsvStringifier(params); + }; + exports2.createArrayCsvWriter = function(params) { + return csvWriterFactory.createArrayCsvWriter(params); + }; + exports2.createObjectCsvWriter = function(params) { + return csvWriterFactory.createObjectCsvWriter(params); + }; + } +}); + +// ../node_modules/.pnpm/fast-myers-diff@3.1.0/node_modules/fast-myers-diff/bin/index.js +var require_bin = __commonJS({ + "../node_modules/.pnpm/fast-myers-diff@3.1.0/node_modules/fast-myers-diff/bin/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.applyPatch = exports2.calcPatch = exports2.lcs = exports2.diff = exports2.diff_core = void 0; + function diff_internal(state, c) { + const { b, eq, stack_base } = state; + let { i, N, j, M, Z, stack_top } = state; + for (; ; ) { + switch (c) { + case 0: { + Z_block: + while (N > 0 && M > 0) { + b.fill(0, 0, 2 * Z); + const W = N - M; + const L = N + M; + const parity = L & 1; + const offsetx = i + N - 1; + const offsety = j + M - 1; + const hmax = (L + parity) / 2; + let z; + h_loop: + for (let h = 0; h <= hmax; h++) { + const kmin = 2 * Math.max(0, h - M) - h; + const kmax = h - 2 * Math.max(0, h - N); + for (let k = kmin; k <= kmax; k += 2) { + const gkm = b[k - 1 - Z * Math.floor((k - 1) / Z)]; + const gkp = b[k + 1 - Z * Math.floor((k + 1) / Z)]; + const u = k === -h || k !== h && gkm < gkp ? gkp : gkm + 1; + const v = u - k; + let x = u; + let y = v; + while (x < N && y < M && eq(i + x, j + y)) + x++, y++; + b[k - Z * Math.floor(k / Z)] = x; + if (parity === 1 && (z = W - k) >= 1 - h && z < h && x + b[Z + z - Z * Math.floor(z / Z)] >= N) { + if (h > 1 || x !== u) { + stack_base[stack_top++] = i + x; + stack_base[stack_top++] = N - x; + stack_base[stack_top++] = j + y; + stack_base[stack_top++] = M - y; + N = u; + M = v; + Z = 2 * (Math.min(N, M) + 1); + continue Z_block; + } else + break h_loop; + } + } + for (let k = kmin; k <= kmax; k += 2) { + const pkm = b[Z + k - 1 - Z * Math.floor((k - 1) / Z)]; + const pkp = b[Z + k + 1 - Z * Math.floor((k + 1) / Z)]; + const u = k === -h || k !== h && pkm < pkp ? pkp : pkm + 1; + const v = u - k; + let x = u; + let y = v; + while (x < N && y < M && eq(offsetx - x, offsety - y)) + x++, y++; + b[Z + k - Z * Math.floor(k / Z)] = x; + if (parity === 0 && (z = W - k) >= -h && z <= h && x + b[z - Z * Math.floor(z / Z)] >= N) { + if (h > 0 || x !== u) { + stack_base[stack_top++] = i + N - u; + stack_base[stack_top++] = u; + stack_base[stack_top++] = j + M - v; + stack_base[stack_top++] = v; + N = N - x; + M = M - y; + Z = 2 * (Math.min(N, M) + 1); + continue Z_block; + } else + break h_loop; + } + } + } + if (N === M) + continue; + if (M > N) { + i += N; + j += N; + M -= N; + N = 0; + } else { + i += M; + j += M; + N -= M; + M = 0; + } + break; + } + if (N + M !== 0) { + if (state.pxe === i || state.pye === j) { + state.pxe = i + N; + state.pye = j + M; + } else { + const sx = state.pxs; + state.oxs = state.pxs; + state.oxe = state.pxe; + state.oys = state.pys; + state.oye = state.pye; + state.pxs = i; + state.pxe = i + N; + state.pys = j; + state.pye = j + M; + if (sx >= 0) { + state.i = i; + state.N = N; + state.j = j; + state.M = M; + state.Z = Z; + state.stack_top = stack_top; + return 1; + } + } + } + } + case 1: { + if (stack_top === 0) + return 2; + M = stack_base[--stack_top]; + j = stack_base[--stack_top]; + N = stack_base[--stack_top]; + i = stack_base[--stack_top]; + Z = 2 * (Math.min(N, M) + 1); + c = 0; + } + } + } + } + var DiffGen = class { + constructor(state) { + this.state = state; + this.c = 0; + this.result = { value: null, done: false }; + } + [Symbol.iterator]() { + return this; + } + next() { + const { state, result } = this; + if (this.c > 1) { + result.done = true; + result.value = void 0; + return result; + } + const c = diff_internal(state, this.c); + this.c = c; + if (c === 1) { + result.value = [state.oxs, state.oxe, state.oys, state.oye]; + return result; + } + if (state.pxs >= 0) { + result.value = [state.pxs, state.pxe, state.pys, state.pye]; + return result; + } + result.done = true; + result.value = void 0; + return result; + } + }; + function diff_core(i, N, j, M, eq) { + const Z = (Math.min(N, M) + 1) * 2; + const L = N + M; + const b = new (L < 256 ? Uint8Array : L < 65536 ? Uint16Array : Uint32Array)(2 * Z); + return new DiffGen({ i, N, j, M, Z, b, eq, pxs: -1, pxe: -1, pys: -1, pye: -1, oxs: -1, oxe: -1, oys: -1, oye: -1, stack_top: 0, stack_base: [] }); + } + exports2.diff_core = diff_core; + function diff(xs, ys, eq) { + let [i, N, M] = [0, xs.length, ys.length]; + if (typeof eq === "function") { + while (i < N && i < M && eq(i, i)) + i++; + if (i === N && i === M) + return [][Symbol.iterator](); + while (eq(--N, --M) && N > i && M > i) + ; + } else { + while (i < N && i < M && xs[i] === ys[i]) + i++; + if (i === N && i === M) + return [][Symbol.iterator](); + while (xs[--N] === ys[--M] && N > i && M > i) + ; + eq = (i2, j) => xs[i2] === ys[j]; + } + return diff_core(i, N + 1 - i, i, M + 1 - i, eq); + } + exports2.diff = diff; + var LCSGen = class { + constructor(diff2, N) { + this.diff = diff2; + this.N = N; + this.i = 0; + this.j = 0; + } + [Symbol.iterator]() { + return this; + } + next() { + const rec = this.diff.next(); + if (rec.done) { + const { i: i2, j: j2, N } = this; + if (i2 < N) { + rec.done = false; + rec.value = [i2, j2, N - i2]; + this.i = N; + } + return rec; + } + const v = rec.value; + const sx = v[0]; + const ex = v[1]; + const ey = v[3]; + const { i, j } = this; + if (i !== sx) { + v.length--; + v[0] = i; + v[1] = j; + v[2] = sx - i; + } + this.i = ex; + this.j = ey; + return rec; + } + }; + function lcs(xs, ys, eq) { + return new LCSGen(diff(xs, ys, eq), xs.length); + } + exports2.lcs = lcs; + function* calcPatch2(xs, ys, eq) { + const slice = ArrayBuffer.isView(xs) ? Uint8Array.prototype.subarray : xs.slice; + for (const v of diff(xs, ys, eq)) { + v[2] = slice.call(ys, v[2], v[3]); + yield v; + } + } + exports2.calcPatch = calcPatch2; + function* applyPatch(xs, patch) { + let i = 0; + const slice = ArrayBuffer.isView(xs) ? Uint8Array.prototype.subarray : xs.slice; + for (const [dels, dele, ins] of patch) { + if (i < dels) + yield slice.call(xs, i, dels); + if (ins.length > 0) + yield ins; + i = dele; + } + if (i < xs.length) + yield slice.call(xs, i); + } + exports2.applyPatch = applyPatch; + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/common.js +var require_common6 = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/common.js"(exports2, module2) { + "use strict"; + var debug = require_src3()("nock.common"); + var timers = require("timers"); + var url2 = require("url"); + var util2 = require("util"); + function normalizeRequestOptions(options2) { + options2.proto = options2.proto || "http"; + options2.port = options2.port || (options2.proto === "http" ? 80 : 443); + if (options2.host) { + debug("options.host:", options2.host); + if (!options2.hostname) { + if (options2.host.split(":").length === 2) { + options2.hostname = options2.host.split(":")[0]; + } else { + options2.hostname = options2.host; + } + } + } + debug("options.hostname in the end: %j", options2.hostname); + options2.host = `${options2.hostname || "localhost"}:${options2.port}`; + debug("options.host in the end: %j", options2.host); + ["hostname", "host"].forEach(function(attr) { + if (options2[attr]) { + options2[attr] = options2[attr].toLowerCase(); + } + }); + return options2; + } + function isUtf8Representable(buffer2) { + const utfEncodedBuffer = buffer2.toString("utf8"); + const reconstructedBuffer = Buffer.from(utfEncodedBuffer, "utf8"); + return reconstructedBuffer.equals(buffer2); + } + var requestOverrides = {}; + function overrideRequests(newRequest) { + debug("overriding requests"); + ["http", "https"].forEach(function(proto) { + debug("- overriding request for", proto); + const moduleName2 = proto; + const module3 = { + http: require("http"), + https: require("https") + }[moduleName2]; + const overriddenRequest = module3.request; + const overriddenGet = module3.get; + if (requestOverrides[moduleName2]) { + throw new Error( + `Module's request already overridden for ${moduleName2} protocol.` + ); + } + requestOverrides[moduleName2] = { + module: module3, + request: overriddenRequest, + get: overriddenGet + }; + module3.request = function(input, options2, callback) { + return newRequest(proto, overriddenRequest.bind(module3), [ + input, + options2, + callback + ]); + }; + module3.get = function(input, options2, callback) { + const req = newRequest(proto, overriddenGet.bind(module3), [ + input, + options2, + callback + ]); + req.end(); + return req; + }; + debug("- overridden request for", proto); + }); + } + function restoreOverriddenRequests() { + debug("restoring requests"); + Object.entries(requestOverrides).forEach( + ([proto, { module: module3, request, get }]) => { + debug("- restoring request for", proto); + module3.request = request; + module3.get = get; + debug("- restored request for", proto); + } + ); + requestOverrides = {}; + } + function normalizeOrigin(proto, host, port) { + const hostHasPort = host.includes(":"); + const portIsStandard = proto === "http" && (port === 80 || port === "80") || proto === "https" && (port === 443 || port === "443"); + const portStr = hostHasPort || portIsStandard ? "" : `:${port}`; + return `${proto}://${host}${portStr}`; + } + function stringifyRequest(options2, body2) { + const { method = "GET", path: path30 = "", port } = options2; + const origin = normalizeOrigin(options2.proto, options2.hostname, port); + const log2 = { + method, + url: `${origin}${path30}`, + headers: options2.headers + }; + if (body2) { + log2.body = body2; + } + return JSON.stringify(log2, null, 2); + } + function isContentEncoded(headers) { + const contentEncoding2 = headers["content-encoding"]; + return typeof contentEncoding2 === "string" && contentEncoding2 !== ""; + } + function contentEncoding(headers, encoder) { + const contentEncoding2 = headers["content-encoding"]; + return contentEncoding2 !== void 0 && contentEncoding2.toString() === encoder; + } + function isJSONContent(headers) { + const contentType = String(headers["content-type"] || "").toLowerCase(); + return contentType.startsWith("application/json"); + } + function headersFieldNamesToLowerCase(headers, throwOnDuplicate) { + if (!isPlainObject2(headers)) { + throw Error("Headers must be provided as an object"); + } + const lowerCaseHeaders = {}; + Object.entries(headers).forEach(([fieldName, fieldValue]) => { + const key = fieldName.toLowerCase(); + if (lowerCaseHeaders[key] !== void 0) { + if (throwOnDuplicate) { + throw Error( + `Failed to convert header keys to lower case due to field name conflict: ${key}` + ); + } else { + debug( + `Duplicate header provided in request: ${key}. Only the last value can be matched.` + ); + } + } + lowerCaseHeaders[key] = fieldValue; + }); + return lowerCaseHeaders; + } + var headersFieldsArrayToLowerCase = (headers) => [ + ...new Set(headers.map((fieldName) => fieldName.toLowerCase())) + ]; + function headersInputToRawArray(headers) { + if (headers === void 0) { + return []; + } + if (Array.isArray(headers)) { + if (headers.length % 2) { + throw new Error( + `Raw headers must be provided as an array with an even number of items. [fieldName, value, ...]` + ); + } + return [...headers]; + } + if (util2.types.isMap(headers)) { + return [].concat(...Array.from(headers, ([k, v]) => [k.toString(), v])); + } + if (isPlainObject2(headers)) { + return [].concat(...Object.entries(headers)); + } + throw new Error( + `Headers must be provided as an array of raw values, a Map, or a plain Object. ${headers}` + ); + } + function headersArrayToObject(rawHeaders) { + if (!Array.isArray(rawHeaders)) { + throw Error("Expected a header array"); + } + const accumulator = {}; + forEachHeader(rawHeaders, (value, fieldName) => { + addHeaderLine(accumulator, fieldName, value); + }); + return accumulator; + } + var noDuplicatesHeaders = /* @__PURE__ */ new Set([ + "age", + "authorization", + "content-length", + "content-type", + "etag", + "expires", + "from", + "host", + "if-modified-since", + "if-unmodified-since", + "last-modified", + "location", + "max-forwards", + "proxy-authorization", + "referer", + "retry-after", + "user-agent" + ]); + function addHeaderLine(headers, name, value) { + let values; + if (typeof value === "function") { + values = [value.name]; + } else if (Array.isArray(value)) { + values = value.map(String); + } else { + values = [String(value)]; + } + const key = name.toLowerCase(); + if (key === "set-cookie") { + if (headers["set-cookie"] === void 0) { + headers["set-cookie"] = values; + } else { + headers["set-cookie"].push(...values); + } + } else if (noDuplicatesHeaders.has(key)) { + if (headers[key] === void 0) { + headers[key] = values[0]; + } + } else { + if (headers[key] !== void 0) { + values = [headers[key], ...values]; + } + const separator = key === "cookie" ? "; " : ", "; + headers[key] = values.join(separator); + } + } + function deleteHeadersField(headers, fieldNameToDelete) { + if (!isPlainObject2(headers)) { + throw Error("headers must be an object"); + } + if (typeof fieldNameToDelete !== "string") { + throw Error("field name must be a string"); + } + const lowerCaseFieldNameToDelete = fieldNameToDelete.toLowerCase(); + Object.keys(headers).filter((fieldName) => fieldName.toLowerCase() === lowerCaseFieldNameToDelete).forEach((fieldName) => delete headers[fieldName]); + } + function forEachHeader(rawHeaders, callback) { + for (let i = 0; i < rawHeaders.length; i += 2) { + callback(rawHeaders[i + 1], rawHeaders[i], i); + } + } + function percentDecode(str) { + try { + return decodeURIComponent(str.replace(/\+/g, " ")); + } catch (e) { + return str; + } + } + function percentEncode(str) { + return encodeURIComponent(str).replace(/[!'()*]/g, function(c) { + return `%${c.charCodeAt(0).toString(16).toUpperCase()}`; + }); + } + function matchStringOrRegexp(target, pattern) { + const targetStr = target === void 0 || target === null ? "" : String(target); + if (pattern instanceof RegExp) { + pattern.lastIndex = 0; + return pattern.test(targetStr); + } + return targetStr === String(pattern); + } + function formatQueryValue(key, value, stringFormattingFn) { + switch (true) { + case typeof value === "number": + case typeof value === "boolean": + value = value.toString(); + break; + case value === null: + case value === void 0: + value = ""; + break; + case typeof value === "string": + if (stringFormattingFn) { + value = stringFormattingFn(value); + } + break; + case value instanceof RegExp: + break; + case Array.isArray(value): { + value = value.map(function(val, idx) { + return formatQueryValue(idx, val, stringFormattingFn)[1]; + }); + break; + } + case typeof value === "object": { + value = Object.entries(value).reduce(function(acc, [subKey, subVal]) { + const subPair = formatQueryValue(subKey, subVal, stringFormattingFn); + acc[subPair[0]] = subPair[1]; + return acc; + }, {}); + break; + } + } + if (stringFormattingFn) + key = stringFormattingFn(key); + return [key, value]; + } + function isStream3(obj2) { + return obj2 && typeof obj2 !== "string" && !Buffer.isBuffer(obj2) && typeof obj2.setEncoding === "function"; + } + function normalizeClientRequestArgs(input, options2, cb) { + if (typeof input === "string") { + input = urlToOptions(new url2.URL(input)); + } else if (input instanceof url2.URL) { + input = urlToOptions(input); + } else { + cb = options2; + options2 = input; + input = null; + } + if (typeof options2 === "function") { + cb = options2; + options2 = input || {}; + } else { + options2 = Object.assign(input || {}, options2); + } + return { options: options2, callback: cb }; + } + function urlToOptions(url3) { + const options2 = { + protocol: url3.protocol, + hostname: typeof url3.hostname === "string" && url3.hostname.startsWith("[") ? url3.hostname.slice(1, -1) : url3.hostname, + hash: url3.hash, + search: url3.search, + pathname: url3.pathname, + path: `${url3.pathname}${url3.search || ""}`, + href: url3.href + }; + if (url3.port !== "") { + options2.port = Number(url3.port); + } + if (url3.username || url3.password) { + options2.auth = `${url3.username}:${url3.password}`; + } + return options2; + } + var dataEqual = (expected, actual) => { + if (isPlainObject2(expected)) { + expected = expand2(expected); + } + if (isPlainObject2(actual)) { + actual = expand2(actual); + } + return deepEqual(expected, actual); + }; + function deepEqual(expected, actual) { + debug("deepEqual comparing", typeof expected, expected, typeof actual, actual); + if (expected instanceof RegExp) { + return expected.test(actual); + } + if (Array.isArray(expected) && Array.isArray(actual)) { + if (expected.length !== actual.length) { + return false; + } + return expected.every((expVal, idx) => deepEqual(expVal, actual[idx])); + } + if (isPlainObject2(expected) && isPlainObject2(actual)) { + const allKeys = Array.from( + new Set(Object.keys(expected).concat(Object.keys(actual))) + ); + return allKeys.every((key) => deepEqual(expected[key], actual[key])); + } + return expected === actual; + } + var timeouts = []; + var intervals = []; + var immediates = []; + var wrapTimer = (timer, ids) => (...args3) => { + const id = timer(...args3); + ids.push(id); + return id; + }; + var setTimeout2 = wrapTimer(timers.setTimeout, timeouts); + var setInterval2 = wrapTimer(timers.setInterval, intervals); + var setImmediate2 = wrapTimer(timers.setImmediate, immediates); + function clearTimer(clear, ids) { + while (ids.length) { + clear(ids.shift()); + } + } + function removeAllTimers() { + clearTimer(clearTimeout, timeouts); + clearTimer(clearInterval, intervals); + clearTimer(clearImmediate, immediates); + } + function isRequestDestroyed(req) { + return !!(req.destroyed === true || req.aborted || req.socket && req.socket.destroyed); + } + function isPlainObject2(value) { + if (typeof value !== "object" || value === null) + return false; + if (Object.prototype.toString.call(value) !== "[object Object]") + return false; + const proto = Object.getPrototypeOf(value); + if (proto === null) + return true; + const Ctor = Object.prototype.hasOwnProperty.call(proto, "constructor") && proto.constructor; + return typeof Ctor === "function" && Ctor instanceof Ctor && Function.prototype.call(Ctor) === Function.prototype.call(value); + } + var prototypePollutionBlockList = ["__proto__", "prototype", "constructor"]; + var blocklistFilter = function(part) { + return prototypePollutionBlockList.indexOf(part) === -1; + }; + var expand2 = (input) => { + if (input === void 0 || input === null) { + return input; + } + const keys = Object.keys(input); + const result = {}; + let resultPtr = result; + for (let path30 of keys) { + const originalPath = path30; + if (path30.indexOf("[") >= 0) { + path30 = path30.replace(/\[/g, ".").replace(/]/g, ""); + } + const parts = path30.split("."); + const check = parts.filter(blocklistFilter); + if (check.length !== parts.length) { + return void 0; + } + resultPtr = result; + const lastIndex = parts.length - 1; + for (let i = 0; i < parts.length; ++i) { + const part = parts[i]; + if (i === lastIndex) { + if (Array.isArray(resultPtr)) { + resultPtr[+part] = input[originalPath]; + } else { + resultPtr[part] = input[originalPath]; + } + } else { + if (resultPtr[part] === void 0 || resultPtr[part] === null) { + const nextPart = parts[i + 1]; + if (/^\d+$/.test(nextPart)) { + resultPtr[part] = []; + } else { + resultPtr[part] = {}; + } + } + resultPtr = resultPtr[part]; + } + } + } + return result; + }; + module2.exports = { + contentEncoding, + dataEqual, + deleteHeadersField, + expand: expand2, + forEachHeader, + formatQueryValue, + headersArrayToObject, + headersFieldNamesToLowerCase, + headersFieldsArrayToLowerCase, + headersInputToRawArray, + isContentEncoded, + isJSONContent, + isPlainObject: isPlainObject2, + isRequestDestroyed, + isStream: isStream3, + isUtf8Representable, + matchStringOrRegexp, + normalizeClientRequestArgs, + normalizeOrigin, + normalizeRequestOptions, + overrideRequests, + percentDecode, + percentEncode, + removeAllTimers, + restoreOverriddenRequests, + setImmediate: setImmediate2, + setInterval: setInterval2, + setTimeout: setTimeout2, + stringifyRequest + }; + } +}); + +// ../node_modules/.pnpm/propagate@2.0.1/node_modules/propagate/index.js +var require_propagate = __commonJS({ + "../node_modules/.pnpm/propagate@2.0.1/node_modules/propagate/index.js"(exports2, module2) { + "use strict"; + function propagate(events, source2, dest) { + if (arguments.length < 3) { + dest = source2; + source2 = events; + events = void 0; + } + const eventsIsObject = typeof events === "object"; + if (events && !eventsIsObject) + events = [events]; + if (eventsIsObject) { + return explicitPropagate(events, source2, dest); + } + const shouldPropagate = (eventName) => events === void 0 || events.includes(eventName); + const oldEmit = source2.emit; + source2.emit = (eventName, ...args3) => { + const oldEmitHadListeners = oldEmit.call(source2, eventName, ...args3); + let destEmitHadListeners = false; + if (shouldPropagate(eventName)) { + destEmitHadListeners = dest.emit(eventName, ...args3); + } + return oldEmitHadListeners || destEmitHadListeners; + }; + function end() { + source2.emit = oldEmit; + } + return { + end + }; + } + module2.exports = propagate; + function explicitPropagate(events, source2, dest) { + let eventsIn; + let eventsOut; + if (Array.isArray(events)) { + eventsIn = events; + eventsOut = events; + } else { + eventsIn = Object.keys(events); + eventsOut = eventsIn.map(function(key) { + return events[key]; + }); + } + const listeners = eventsOut.map(function(event) { + return function() { + const args3 = Array.prototype.slice.call(arguments); + args3.unshift(event); + dest.emit.apply(dest, args3); + }; + }); + listeners.forEach(register2); + return { + end + }; + function register2(listener, i) { + source2.on(eventsIn[i], listener); + } + function unregister(listener, i) { + source2.removeListener(eventsIn[i], listener); + } + function end() { + listeners.forEach(unregister); + } + } + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/global_emitter.js +var require_global_emitter = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/global_emitter.js"(exports2, module2) { + "use strict"; + var { EventEmitter: EventEmitter4 } = require("events"); + module2.exports = new EventEmitter4(); + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/socket.js +var require_socket = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/socket.js"(exports2, module2) { + "use strict"; + var { EventEmitter: EventEmitter4 } = require("events"); + var debug = require_src3()("nock.socket"); + module2.exports = class Socket extends EventEmitter4 { + constructor(options2) { + super(); + if (options2.proto === "https") { + this.authorized = true; + this.encrypted = true; + } + this.bufferSize = 0; + this.writableLength = 0; + this.writable = true; + this.readable = true; + this.pending = false; + this.destroyed = false; + this.connecting = true; + this._hadError = false; + this.timeout = 0; + const ipv6 = options2.family === 6; + this.remoteFamily = ipv6 ? "IPv6" : "IPv4"; + this.localAddress = this.remoteAddress = ipv6 ? "::1" : "127.0.0.1"; + this.localPort = this.remotePort = parseInt(options2.port); + } + setNoDelay() { + } + setKeepAlive() { + } + resume() { + } + ref() { + } + unref() { + } + write() { + } + address() { + return { + port: this.remotePort, + family: this.remoteFamily, + address: this.remoteAddress + }; + } + setTimeout(timeoutMs, fn) { + this.timeout = timeoutMs; + if (fn) { + this.once("timeout", fn); + } + return this; + } + /** + * Artificial delay that will trip socket timeouts when appropriate. + * + * Doesn't actually wait for time to pass. + * Timeout events don't necessarily end the request. + * While many clients choose to abort the request upon a timeout, Node itself does not. + */ + applyDelay(delayMs) { + if (this.timeout && delayMs > this.timeout) { + debug("socket timeout"); + this.emit("timeout"); + } + } + getPeerCertificate() { + return Buffer.from( + (Math.random() * 1e4 + Date.now()).toString() + ).toString("base64"); + } + /** + * Denotes that no more I/O activity should happen on this socket. + * + * The implementation in Node if far more complex as it juggles underlying async streams. + * For the purposes of Nock, we just need it to set some flags and on the first call + * emit a 'close' and optional 'error' event. Both events propagate through the request object. + */ + destroy(err2) { + if (this.destroyed) { + return this; + } + debug("socket destroy"); + this.destroyed = true; + this.readable = this.writable = false; + this.readableEnded = this.writableFinished = true; + process.nextTick(() => { + if (err2) { + this._hadError = true; + this.emit("error", err2); + } + this.emit("close"); + }); + return this; + } + }; + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/playback_interceptor.js +var require_playback_interceptor = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/playback_interceptor.js"(exports2, module2) { + "use strict"; + var stream5 = require("stream"); + var util2 = require("util"); + var zlib2 = require("zlib"); + var debug = require_src3()("nock.playback_interceptor"); + var common = require_common6(); + function parseJSONRequestBody(req, requestBody) { + if (!requestBody || !common.isJSONContent(req.headers)) { + return requestBody; + } + if (common.contentEncoding(req.headers, "gzip")) { + requestBody = String(zlib2.gunzipSync(Buffer.from(requestBody, "hex"))); + } else if (common.contentEncoding(req.headers, "deflate")) { + requestBody = String(zlib2.inflateSync(Buffer.from(requestBody, "hex"))); + } + return JSON.parse(requestBody); + } + function parseFullReplyResult(response, fullReplyResult) { + debug("full response from callback result: %j", fullReplyResult); + if (!Array.isArray(fullReplyResult)) { + throw Error("A single function provided to .reply MUST return an array"); + } + if (fullReplyResult.length > 3) { + throw Error( + "The array returned from the .reply callback contains too many values" + ); + } + const [status, body2 = "", headers] = fullReplyResult; + if (!Number.isInteger(status)) { + throw new Error(`Invalid ${typeof status} value for status code`); + } + response.statusCode = status; + response.rawHeaders.push(...common.headersInputToRawArray(headers)); + debug("response.rawHeaders after reply: %j", response.rawHeaders); + return body2; + } + function selectDefaultHeaders(existingHeaders, defaultHeaders) { + if (!defaultHeaders.length) { + return []; + } + const definedHeaders = /* @__PURE__ */ new Set(); + const result = []; + common.forEachHeader(existingHeaders, (_, fieldName) => { + definedHeaders.add(fieldName.toLowerCase()); + }); + common.forEachHeader(defaultHeaders, (value, fieldName) => { + if (!definedHeaders.has(fieldName.toLowerCase())) { + result.push(fieldName, value); + } + }); + return result; + } + var ReadableBuffers = class extends stream5.Readable { + constructor(buffers, opts = {}) { + super(opts); + this.buffers = buffers; + } + _read(_size) { + while (this.buffers.length) { + if (!this.push(this.buffers.shift())) { + return; + } + } + this.push(null); + } + }; + function convertBodyToStream(body2) { + if (common.isStream(body2)) { + return body2; + } + if (body2 === void 0) { + return new ReadableBuffers([]); + } + if (Buffer.isBuffer(body2)) { + return new ReadableBuffers([body2]); + } + if (typeof body2 !== "string") { + body2 = JSON.stringify(body2); + } + return new ReadableBuffers([Buffer.from(body2)]); + } + function playbackInterceptor({ + req, + socket, + options: options2, + requestBodyString, + requestBodyIsUtf8Representable, + response, + interceptor + }) { + const { logger: logger2 } = interceptor.scope; + function start4() { + req.headers = req.getHeaders(); + interceptor.scope.emit("request", req, interceptor, requestBodyString); + if (typeof interceptor.errorMessage !== "undefined") { + let error; + if (typeof interceptor.errorMessage === "object") { + error = interceptor.errorMessage; + } else { + error = new Error(interceptor.errorMessage); + } + const delay = interceptor.delayBodyInMs + interceptor.delayConnectionInMs; + common.setTimeout(() => req.destroy(error), delay); + return; + } + response.statusCode = interceptor.statusCode; + response.rawHeaders = [...interceptor.rawHeaders]; + logger2("response.rawHeaders:", response.rawHeaders); + interceptor.req = req; + if (interceptor.replyFunction) { + const parsedRequestBody = parseJSONRequestBody(req, requestBodyString); + let fn = interceptor.replyFunction; + if (fn.length === 3) { + fn = util2.promisify(fn); + } + Promise.resolve(fn.call(interceptor, options2.path, parsedRequestBody)).then(continueWithResponseBody).catch((err2) => req.destroy(err2)); + return; + } + if (interceptor.fullReplyFunction) { + const parsedRequestBody = parseJSONRequestBody(req, requestBodyString); + let fn = interceptor.fullReplyFunction; + if (fn.length === 3) { + fn = util2.promisify(fn); + } + Promise.resolve(fn.call(interceptor, options2.path, parsedRequestBody)).then(continueWithFullResponse).catch((err2) => req.destroy(err2)); + return; + } + if (common.isContentEncoded(interceptor.headers) && !common.isStream(interceptor.body)) { + const bufferData = Array.isArray(interceptor.body) ? interceptor.body : [interceptor.body]; + const responseBuffers = bufferData.map((data) => Buffer.from(data, "hex")); + const responseBody2 = new ReadableBuffers(responseBuffers); + continueWithResponseBody(responseBody2); + return; + } + let responseBody = interceptor.body; + if (!requestBodyIsUtf8Representable && typeof responseBody === "string") { + responseBody = Buffer.from(responseBody, "hex"); + if (!responseBody || interceptor.body.length > 0 && responseBody.length === 0) { + responseBody = Buffer.from(interceptor.body, "utf8"); + } + } + return continueWithResponseBody(responseBody); + } + function continueWithFullResponse(fullReplyResult) { + let responseBody; + try { + responseBody = parseFullReplyResult(response, fullReplyResult); + } catch (err2) { + req.destroy(err2); + return; + } + continueWithResponseBody(responseBody); + } + function prepareResponseHeaders(body2) { + const defaultHeaders = [...interceptor.scope._defaultReplyHeaders]; + const isJSON = body2 !== void 0 && typeof body2 !== "string" && !Buffer.isBuffer(body2) && !common.isStream(body2); + if (isJSON) { + defaultHeaders.push("Content-Type", "application/json"); + } + response.rawHeaders.push( + ...selectDefaultHeaders(response.rawHeaders, defaultHeaders) + ); + common.forEachHeader(response.rawHeaders, (value, fieldName, i) => { + if (typeof value === "function") { + response.rawHeaders[i + 1] = value(req, response, body2); + } + }); + response.headers = common.headersArrayToObject(response.rawHeaders); + } + function continueWithResponseBody(rawBody) { + prepareResponseHeaders(rawBody); + const bodyAsStream = convertBodyToStream(rawBody); + bodyAsStream.pause(); + bodyAsStream.on("data", function(chunk) { + response.push(chunk); + }); + bodyAsStream.on("end", function() { + response.complete = true; + response.push(null); + interceptor.scope.emit("replied", req, interceptor); + }); + bodyAsStream.on("error", function(err2) { + response.emit("error", err2); + }); + const { delayBodyInMs, delayConnectionInMs } = interceptor; + function respond() { + if (common.isRequestDestroyed(req)) { + return; + } + req.res = response; + response.req = req; + logger2("emitting response"); + req.emit("response", response); + common.setTimeout(() => bodyAsStream.resume(), delayBodyInMs); + } + socket.applyDelay(delayConnectionInMs); + common.setTimeout(respond, delayConnectionInMs); + } + common.setImmediate(() => { + if (!common.isRequestDestroyed(req)) { + start4(); + } + }); + } + module2.exports = { playbackInterceptor }; + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/intercepted_request_router.js +var require_intercepted_request_router = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/intercepted_request_router.js"(exports2, module2) { + "use strict"; + var debug = require_src3()("nock.request_overrider"); + var { + IncomingMessage, + ClientRequest, + request: originalHttpRequest + } = require("http"); + var { request: originalHttpsRequest } = require("https"); + var propagate = require_propagate(); + var common = require_common6(); + var globalEmitter = require_global_emitter(); + var Socket = require_socket(); + var { playbackInterceptor } = require_playback_interceptor(); + function socketOnClose(req) { + debug("socket close"); + if (!req.res && !req.socket._hadError) { + req.socket._hadError = true; + const err2 = new Error("socket hang up"); + err2.code = "ECONNRESET"; + req.emit("error", err2); + } + req.emit("close"); + } + var InterceptedRequestRouter = class { + constructor({ req, options: options2, interceptors }) { + this.req = req; + this.options = { + // We may be changing the options object and we don't want those changes + // affecting the user so we use a clone of the object. + ...options2, + // We use lower-case header field names throughout Nock. + headers: common.headersFieldNamesToLowerCase( + options2.headers || {}, + false + ) + }; + this.interceptors = interceptors; + this.socket = new Socket(options2); + const timeout = options2.timeout || options2.agent && options2.agent.options && options2.agent.options.timeout; + if (timeout) { + this.socket.setTimeout(timeout); + } + this.response = new IncomingMessage(this.socket); + this.requestBodyBuffers = []; + this.playbackStarted = false; + this.readyToStartPlaybackOnSocketEvent = false; + this.attachToReq(); + process.nextTick(() => this.connectSocket()); + } + attachToReq() { + const { req, options: options2 } = this; + for (const [name, val] of Object.entries(options2.headers)) { + req.setHeader(name.toLowerCase(), val); + } + if (options2.auth && !options2.headers.authorization) { + req.setHeader( + // We use lower-case header field names throughout Nock. + "authorization", + `Basic ${Buffer.from(options2.auth).toString("base64")}` + ); + } + req.path = options2.path; + req.method = options2.method; + req.write = (...args3) => this.handleWrite(...args3); + req.end = (...args3) => this.handleEnd(...args3); + req.flushHeaders = (...args3) => this.handleFlushHeaders(...args3); + if (options2.headers.expect === "100-continue") { + common.setImmediate(() => { + debug("continue"); + req.emit("continue"); + }); + } + } + connectSocket() { + const { req, socket } = this; + if (common.isRequestDestroyed(req)) { + return; + } + req.socket = req.connection = socket; + propagate(["error", "timeout"], socket, req); + socket.on("close", () => socketOnClose(req)); + socket.connecting = false; + req.emit("socket", socket); + socket.emit("connect"); + if (socket.authorized) { + socket.emit("secureConnect"); + } + if (this.readyToStartPlaybackOnSocketEvent) { + this.maybeStartPlayback(); + } + } + // from docs: When write function is called with empty string or buffer, it does nothing and waits for more input. + // However, actually implementation checks the state of finished and aborted before checking if the first arg is empty. + handleWrite(...args3) { + debug("request write"); + let [buffer2, encoding] = args3; + const { req } = this; + if (req.finished) { + const err2 = new Error("write after end"); + err2.code = "ERR_STREAM_WRITE_AFTER_END"; + process.nextTick(() => req.emit("error", err2)); + return true; + } + if (req.socket && req.socket.destroyed) { + return false; + } + if (!buffer2) { + return true; + } + if (!Buffer.isBuffer(buffer2)) { + buffer2 = Buffer.from(buffer2, encoding); + } + this.requestBodyBuffers.push(buffer2); + const callback = args3.length > 1 ? args3[args3.length - 1] : void 0; + if (typeof callback === "function") { + callback(); + } + common.setImmediate(function() { + req.emit("drain"); + }); + return false; + } + handleEnd(chunk, encoding, callback) { + debug("request end"); + const { req } = this; + if (typeof chunk === "function") { + callback = chunk; + chunk = null; + } else if (typeof encoding === "function") { + callback = encoding; + encoding = null; + } + if (typeof callback === "function") { + req.once("finish", callback); + } + if (chunk) { + req.write(chunk, encoding); + } + req.finished = true; + this.maybeStartPlayback(); + return req; + } + handleFlushHeaders() { + debug("request flushHeaders"); + this.maybeStartPlayback(); + } + /** + * Set request headers of the given request. This is needed both during the + * routing phase, in case header filters were specified, and during the + * interceptor-playback phase, to correctly pass mocked request headers. + * TODO There are some problems with this; see https://github.com/nock/nock/issues/1718 + */ + setHostHeaderUsingInterceptor(interceptor) { + const { req, options: options2 } = this; + const HOST_HEADER = "host"; + if (interceptor.__nock_filteredScope && interceptor.__nock_scopeHost) { + options2.headers[HOST_HEADER] = interceptor.__nock_scopeHost; + req.setHeader(HOST_HEADER, interceptor.__nock_scopeHost); + } else { + if (options2.host && !req.getHeader(HOST_HEADER)) { + let hostHeader = options2.host; + if (options2.port === 80 || options2.port === 443) { + hostHeader = hostHeader.split(":")[0]; + } + req.setHeader(HOST_HEADER, hostHeader); + } + } + } + maybeStartPlayback() { + const { req, socket, playbackStarted } = this; + if (socket.connecting) { + this.readyToStartPlaybackOnSocketEvent = true; + return; + } + if (!common.isRequestDestroyed(req) && !playbackStarted) { + this.startPlayback(); + } + } + startPlayback() { + debug("ending"); + this.playbackStarted = true; + const { req, response, socket, options: options2, interceptors } = this; + Object.assign(options2, { + // Re-update `options` with the current value of `req.path` because badly + // behaving agents like superagent like to change `req.path` mid-flight. + path: req.path, + // Similarly, node-http-proxy will modify headers in flight, so we have + // to put the headers back into options. + // https://github.com/nock/nock/pull/1484 + headers: req.getHeaders(), + // Fixes https://github.com/nock/nock/issues/976 + protocol: `${options2.proto}:` + }); + interceptors.forEach((interceptor) => { + this.setHostHeaderUsingInterceptor(interceptor); + }); + const requestBodyBuffer = Buffer.concat(this.requestBodyBuffers); + const requestBodyIsUtf8Representable = common.isUtf8Representable(requestBodyBuffer); + const requestBodyString = requestBodyBuffer.toString( + requestBodyIsUtf8Representable ? "utf8" : "hex" + ); + const matchedInterceptor = interceptors.find( + (i) => i.match(req, options2, requestBodyString) + ); + if (matchedInterceptor) { + matchedInterceptor.scope.logger( + "interceptor identified, starting mocking" + ); + matchedInterceptor.markConsumed(); + req.emit("finish"); + playbackInterceptor({ + req, + socket, + options: options2, + requestBodyString, + requestBodyIsUtf8Representable, + response, + interceptor: matchedInterceptor + }); + } else { + globalEmitter.emit("no match", req, options2, requestBodyString); + const allowUnmocked = interceptors.some( + (i) => i.matchHostName(options2) && i.options.allowUnmocked + ); + if (allowUnmocked && req instanceof ClientRequest) { + const newReq = options2.proto === "https" ? originalHttpsRequest(options2) : originalHttpRequest(options2); + propagate(newReq, req); + newReq.end(requestBodyBuffer); + } else { + const reqStr = common.stringifyRequest(options2, requestBodyString); + const err2 = new Error(`Nock: No match for request ${reqStr}`); + err2.code = "ERR_NOCK_NO_MATCH"; + err2.statusCode = err2.status = 404; + req.destroy(err2); + } + } + } + }; + module2.exports = { InterceptedRequestRouter }; + } +}); + +// ../node_modules/.pnpm/json-stringify-safe@5.0.1/node_modules/json-stringify-safe/stringify.js +var require_stringify = __commonJS({ + "../node_modules/.pnpm/json-stringify-safe@5.0.1/node_modules/json-stringify-safe/stringify.js"(exports2, module2) { + exports2 = module2.exports = stringify; + exports2.getSerialize = serializer; + function stringify(obj2, replacer, spaces, cycleReplacer) { + return JSON.stringify(obj2, serializer(replacer, cycleReplacer), spaces); + } + function serializer(replacer, cycleReplacer) { + var stack = [], keys = []; + if (cycleReplacer == null) + cycleReplacer = function(key, value) { + if (stack[0] === value) + return "[Circular ~]"; + return "[Circular ~." + keys.slice(0, stack.indexOf(value)).join(".") + "]"; + }; + return function(key, value) { + if (stack.length > 0) { + var thisPos = stack.indexOf(this); + ~thisPos ? stack.splice(thisPos + 1) : stack.push(this); + ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key); + if (~stack.indexOf(value)) + value = cycleReplacer.call(this, key, value); + } else + stack.push(value); + return replacer == null ? value : replacer.call(this, key, value); + }; + } + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/match_body.js +var require_match_body = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/match_body.js"(exports2, module2) { + "use strict"; + var querystring = require("querystring"); + var common = require_common6(); + module2.exports = function matchBody(options2, spec, body2) { + if (spec instanceof RegExp) { + return spec.test(body2); + } + if (Buffer.isBuffer(spec)) { + const encoding = common.isUtf8Representable(spec) ? "utf8" : "hex"; + spec = spec.toString(encoding); + } + const contentType = (options2.headers && (options2.headers["Content-Type"] || options2.headers["content-type"]) || "").toString(); + const isMultipart = contentType.includes("multipart"); + const isUrlencoded = contentType.includes("application/x-www-form-urlencoded"); + let json; + if (typeof spec === "object" || typeof spec === "function") { + try { + json = JSON.parse(body2); + } catch (err2) { + } + if (json !== void 0) { + body2 = json; + } else if (isUrlencoded) { + body2 = querystring.parse(body2); + } + } + if (typeof spec === "function") { + return spec.call(options2, body2); + } + if (!isMultipart && typeof body2 === "string") { + body2 = body2.replace(/\r?\n|\r/g, ""); + } + if (!isMultipart && typeof spec === "string") { + spec = spec.replace(/\r?\n|\r/g, ""); + } + if (isUrlencoded) { + spec = mapValuesDeep(spec, (val) => val instanceof RegExp ? val : `${val}`); + } + return common.dataEqual(spec, body2); + }; + function mapValues(object, cb) { + const keys = Object.keys(object); + for (const key of keys) { + object[key] = cb(object[key], key, object); + } + return object; + } + function mapValuesDeep(obj2, cb) { + if (Array.isArray(obj2)) { + return obj2.map((v) => mapValuesDeep(v, cb)); + } + if (common.isPlainObject(obj2)) { + return mapValues(obj2, (v) => mapValuesDeep(v, cb)); + } + return cb(obj2); + } + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/interceptor.js +var require_interceptor = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/interceptor.js"(exports2, module2) { + "use strict"; + var stringify = require_stringify(); + var querystring = require("querystring"); + var { URL: URL2, URLSearchParams: URLSearchParams2 } = require("url"); + var common = require_common6(); + var { remove } = require_intercept(); + var matchBody = require_match_body(); + var fs6; + try { + fs6 = require("fs"); + } catch (err2) { + } + module2.exports = class Interceptor { + /** + * + * Valid argument types for `uri`: + * - A string used for strict comparisons with pathname. + * The search portion of the URI may also be postfixed, in which case the search params + * are striped and added via the `query` method. + * - A RegExp instance that tests against only the pathname of requests. + * - A synchronous function bound to this Interceptor instance. It's provided the pathname + * of requests and must return a boolean denoting if the request is considered a match. + */ + constructor(scope, uri, method, requestBody, interceptorOptions) { + const uriIsStr = typeof uri === "string"; + if (uriIsStr && !scope.scopeOptions.filteringScope && !scope.basePathname && !uri.startsWith("/") && !uri.startsWith("*")) { + throw Error( + `Non-wildcard URL path strings must begin with a slash (otherwise they won't match anything) (got: ${uri})` + ); + } + if (!method) { + throw new Error( + 'The "method" parameter is required for an intercept call.' + ); + } + this.scope = scope; + this.interceptorMatchHeaders = []; + this.method = method.toUpperCase(); + this.uri = uri; + this._key = `${this.method} ${scope.basePath}${scope.basePathname}${uriIsStr ? "" : "/"}${uri}`; + this.basePath = this.scope.basePath; + this.path = uriIsStr ? scope.basePathname + uri : uri; + this.queries = null; + this.options = interceptorOptions || {}; + this.counter = 1; + this._requestBody = requestBody; + this.reqheaders = common.headersFieldNamesToLowerCase( + scope.scopeOptions.reqheaders || {}, + true + ); + this.badheaders = common.headersFieldsArrayToLowerCase( + scope.scopeOptions.badheaders || [] + ); + this.delayBodyInMs = 0; + this.delayConnectionInMs = 0; + this.optional = false; + if (uriIsStr && uri.includes("?")) { + const parsedURL = new URL2(this.path, "http://localhost"); + this.path = parsedURL.pathname; + this.query(parsedURL.searchParams); + this._key = `${this.method} ${scope.basePath}${this.path}`; + } + } + optionally(flag = true) { + if (typeof flag !== "boolean") { + throw new Error("Invalid arguments: argument should be a boolean"); + } + this.optional = flag; + return this; + } + replyWithError(errorMessage) { + this.errorMessage = errorMessage; + this.options = { + ...this.scope.scopeOptions, + ...this.options + }; + this.scope.add(this._key, this); + return this.scope; + } + reply(statusCode, body2, rawHeaders) { + if (typeof statusCode === "function") { + if (arguments.length > 1) { + throw Error( + "Invalid arguments. When providing a function for the first argument, .reply does not accept other arguments." + ); + } + this.statusCode = null; + this.fullReplyFunction = statusCode; + } else { + if (statusCode !== void 0 && !Number.isInteger(statusCode)) { + throw new Error(`Invalid ${typeof statusCode} value for status code`); + } + this.statusCode = statusCode || 200; + if (typeof body2 === "function") { + this.replyFunction = body2; + body2 = null; + } + } + this.options = { + ...this.scope.scopeOptions, + ...this.options + }; + this.rawHeaders = common.headersInputToRawArray(rawHeaders); + if (this.scope.date) { + this.rawHeaders.push("Date", this.scope.date.toUTCString()); + } + this.headers = common.headersArrayToObject( + this.rawHeaders.concat(this.scope._defaultReplyHeaders) + ); + if (body2 && typeof body2 !== "string" && !Buffer.isBuffer(body2) && !common.isStream(body2) && !common.isContentEncoded(this.headers)) { + try { + body2 = stringify(body2); + } catch (err2) { + throw new Error("Error encoding response body into JSON"); + } + if (!this.headers["content-type"]) { + this.rawHeaders.push("Content-Type", "application/json"); + } + } + if (this.scope.contentLen) { + if (typeof body2 === "string") { + this.rawHeaders.push("Content-Length", body2.length); + } else if (Buffer.isBuffer(body2)) { + this.rawHeaders.push("Content-Length", body2.byteLength); + } + } + this.scope.logger("reply.headers:", this.headers); + this.scope.logger("reply.rawHeaders:", this.rawHeaders); + this.body = body2; + this.scope.add(this._key, this); + return this.scope; + } + replyWithFile(statusCode, filePath, headers) { + if (!fs6) { + throw new Error("No fs"); + } + const readStream = fs6.createReadStream(filePath); + readStream.pause(); + this.filePath = filePath; + return this.reply(statusCode, readStream, headers); + } + // Also match request headers + // https://github.com/nock/nock/issues/163 + reqheaderMatches(options2, key) { + const reqHeader = this.reqheaders[key]; + let header = options2.headers[key]; + if (header && typeof header !== "string" && header.toString) { + header = header.toString(); + } + if (key === "host" && (header === void 0 || reqHeader === void 0)) { + return true; + } + if (reqHeader !== void 0 && header !== void 0) { + if (typeof reqHeader === "function") { + return reqHeader(header); + } else if (common.matchStringOrRegexp(header, reqHeader)) { + return true; + } + } + this.scope.logger( + "request header field doesn't match:", + key, + header, + reqHeader + ); + return false; + } + match(req, options2, body2) { + if (this.scope.logger.enabled) { + this.scope.logger( + "attempting match %s, body = %s", + stringify(options2), + stringify(body2) + ); + } + const method = (options2.method || "GET").toUpperCase(); + let { path: path30 = "/" } = options2; + let matches; + let matchKey; + const { proto } = options2; + if (this.method !== method) { + this.scope.logger( + `Method did not match. Request ${method} Interceptor ${this.method}` + ); + return false; + } + if (this.scope.transformPathFunction) { + path30 = this.scope.transformPathFunction(path30); + } + const requestMatchesFilter = ({ name, value: predicate }) => { + const headerValue = req.getHeader(name); + if (typeof predicate === "function") { + return predicate(headerValue); + } else { + return common.matchStringOrRegexp(headerValue, predicate); + } + }; + if (!this.scope.matchHeaders.every(requestMatchesFilter) || !this.interceptorMatchHeaders.every(requestMatchesFilter)) { + this.scope.logger("headers don't match"); + return false; + } + const reqHeadersMatch = Object.keys(this.reqheaders).every( + (key) => this.reqheaderMatches(options2, key) + ); + if (!reqHeadersMatch) { + this.scope.logger("headers don't match"); + return false; + } + if (this.scope.scopeOptions.conditionally && !this.scope.scopeOptions.conditionally()) { + this.scope.logger( + "matching failed because Scope.conditionally() did not validate" + ); + return false; + } + const badHeaders = this.badheaders.filter( + (header) => header in options2.headers + ); + if (badHeaders.length) { + this.scope.logger("request contains bad headers", ...badHeaders); + return false; + } + if (this.queries === null) { + this.scope.logger("query matching skipped"); + } else { + const [pathname, search] = path30.split("?"); + const matchQueries = this.matchQuery({ search }); + this.scope.logger( + matchQueries ? "query matching succeeded" : "query matching failed" + ); + if (!matchQueries) { + return false; + } + path30 = pathname; + } + if (this.__nock_filteredScope) { + matchKey = this.__nock_filteredScope; + } else { + matchKey = common.normalizeOrigin(proto, options2.host, options2.port); + } + if (typeof this.uri === "function") { + matches = common.matchStringOrRegexp(matchKey, this.basePath) && // This is a false positive, as `uri` is not bound to `this`. + // eslint-disable-next-line no-useless-call + this.uri.call(this, path30); + } else { + matches = common.matchStringOrRegexp(matchKey, this.basePath) && common.matchStringOrRegexp(path30, this.path); + } + this.scope.logger(`matching ${matchKey}${path30} to ${this._key}: ${matches}`); + if (matches && this._requestBody !== void 0) { + if (this.scope.transformRequestBodyFunction) { + body2 = this.scope.transformRequestBodyFunction(body2, this._requestBody); + } + matches = matchBody(options2, this._requestBody, body2); + if (!matches) { + this.scope.logger( + "bodies don't match: \n", + this._requestBody, + "\n", + body2 + ); + } + } + return matches; + } + /** + * Return true when the interceptor's method, protocol, host, port, and path + * match the provided options. + */ + matchOrigin(options2) { + const isPathFn = typeof this.path === "function"; + const isRegex = this.path instanceof RegExp; + const isRegexBasePath = this.scope.basePath instanceof RegExp; + const method = (options2.method || "GET").toUpperCase(); + let { path: path30 } = options2; + const { proto } = options2; + if (!isRegex) { + path30 = path30 ? path30.split("?")[0] : ""; + } + if (this.scope.transformPathFunction) { + path30 = this.scope.transformPathFunction(path30); + } + const comparisonKey = isPathFn || isRegex ? this.__nock_scopeKey : this._key; + const matchKey = `${method} ${proto}://${options2.host}${path30}`; + if (isPathFn) { + return !!(matchKey.match(comparisonKey) && this.path(path30)); + } + if (isRegex && !isRegexBasePath) { + return !!matchKey.match(comparisonKey) && this.path.test(path30); + } + if (isRegexBasePath) { + return this.scope.basePath.test(matchKey) && !!path30.match(this.path); + } + return comparisonKey === matchKey; + } + matchHostName(options2) { + const { basePath } = this.scope; + if (basePath instanceof RegExp) { + return basePath.test(options2.hostname); + } + return options2.hostname === this.scope.urlParts.hostname; + } + matchQuery(options2) { + if (this.queries === true) { + return true; + } + const reqQueries = querystring.parse(options2.search); + this.scope.logger("Interceptor queries: %j", this.queries); + this.scope.logger(" Request queries: %j", reqQueries); + if (typeof this.queries === "function") { + return this.queries(reqQueries); + } + return common.dataEqual(this.queries, reqQueries); + } + filteringPath(...args3) { + this.scope.filteringPath(...args3); + return this; + } + // TODO filtering by path is valid on the intercept level, but not filtering + // by request body? + markConsumed() { + this.interceptionCounter++; + if ((this.scope.shouldPersist() || this.counter > 0) && this.interceptionCounter > 1 && this.filePath) { + this.body = fs6.createReadStream(this.filePath); + this.body.pause(); + } + remove(this); + if (!this.scope.shouldPersist() && this.counter < 1) { + this.scope.remove(this._key, this); + } + } + matchHeader(name, value) { + this.interceptorMatchHeaders.push({ name, value }); + return this; + } + basicAuth({ user, pass = "" }) { + const encoded = Buffer.from(`${user}:${pass}`).toString("base64"); + this.matchHeader("authorization", `Basic ${encoded}`); + return this; + } + /** + * Set query strings for the interceptor + * @name query + * @param queries Object of query string name,values (accepts regexp values) + * @public + * @example + * // Will match 'http://zombo.com/?q=t' + * nock('http://zombo.com').get('/').query({q: 't'}); + */ + query(queries) { + if (this.queries !== null) { + throw Error(`Query parameters have already been defined`); + } + if (queries === true) { + this.queries = queries; + return this; + } + if (typeof queries === "function") { + this.queries = queries; + return this; + } + let strFormattingFn; + if (this.scope.scopeOptions.encodedQueryParams) { + strFormattingFn = common.percentDecode; + } + if (queries instanceof URLSearchParams2) { + queries = querystring.parse(queries.toString()); + } else if (!common.isPlainObject(queries)) { + throw Error(`Argument Error: ${queries}`); + } + this.queries = {}; + for (const [key, value] of Object.entries(queries)) { + const formatted = common.formatQueryValue(key, value, strFormattingFn); + const [formattedKey, formattedValue] = formatted; + this.queries[formattedKey] = formattedValue; + } + return this; + } + /** + * Set number of times will repeat the interceptor + * @name times + * @param newCounter Number of times to repeat (should be > 0) + * @public + * @example + * // Will repeat mock 5 times for same king of request + * nock('http://zombo.com).get('/').times(5).reply(200, 'Ok'); + */ + times(newCounter) { + if (newCounter < 1) { + return this; + } + this.counter = newCounter; + return this; + } + /** + * An sugar syntax for times(1) + * @name once + * @see {@link times} + * @public + * @example + * nock('http://zombo.com).get('/').once().reply(200, 'Ok'); + */ + once() { + return this.times(1); + } + /** + * An sugar syntax for times(2) + * @name twice + * @see {@link times} + * @public + * @example + * nock('http://zombo.com).get('/').twice().reply(200, 'Ok'); + */ + twice() { + return this.times(2); + } + /** + * An sugar syntax for times(3). + * @name thrice + * @see {@link times} + * @public + * @example + * nock('http://zombo.com).get('/').thrice().reply(200, 'Ok'); + */ + thrice() { + return this.times(3); + } + /** + * Delay the response by a certain number of ms. + * + * @param {(integer|object)} opts - Number of milliseconds to wait, or an object + * @param {integer} [opts.head] - Number of milliseconds to wait before response is sent + * @param {integer} [opts.body] - Number of milliseconds to wait before response body is sent + * @return {Interceptor} - the current interceptor for chaining + */ + delay(opts) { + let headDelay; + let bodyDelay; + if (typeof opts === "number") { + headDelay = opts; + bodyDelay = 0; + } else if (typeof opts === "object") { + headDelay = opts.head || 0; + bodyDelay = opts.body || 0; + } else { + throw new Error(`Unexpected input opts ${opts}`); + } + return this.delayConnection(headDelay).delayBody(bodyDelay); + } + /** + * Delay the response body by a certain number of ms. + * + * @param {integer} ms - Number of milliseconds to wait before response is sent + * @return {Interceptor} - the current interceptor for chaining + */ + delayBody(ms) { + this.delayBodyInMs = ms; + return this; + } + /** + * Delay the connection by a certain number of ms. + * + * @param {integer} ms - Number of milliseconds to wait + * @return {Interceptor} - the current interceptor for chaining + */ + delayConnection(ms) { + this.delayConnectionInMs = ms; + return this; + } + }; + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/intercept.js +var require_intercept = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/intercept.js"(exports2, module2) { + "use strict"; + var { InterceptedRequestRouter } = require_intercepted_request_router(); + var common = require_common6(); + var { inherits: inherits3 } = require("util"); + var http4 = require("http"); + var debug = require_src3()("nock.intercept"); + var globalEmitter = require_global_emitter(); + function NetConnectNotAllowedError(host, path30) { + Error.call(this); + this.name = "NetConnectNotAllowedError"; + this.code = "ENETUNREACH"; + this.message = `Nock: Disallowed net connect for "${host}${path30}"`; + Error.captureStackTrace(this, this.constructor); + } + inherits3(NetConnectNotAllowedError, Error); + var allInterceptors = {}; + var allowNetConnect; + function enableNetConnect(matcher) { + if (typeof matcher === "string") { + allowNetConnect = new RegExp(matcher); + } else if (matcher instanceof RegExp) { + allowNetConnect = matcher; + } else if (typeof matcher === "function") { + allowNetConnect = { test: matcher }; + } else { + allowNetConnect = /.*/; + } + } + function isEnabledForNetConnect(options2) { + common.normalizeRequestOptions(options2); + const enabled = allowNetConnect && allowNetConnect.test(options2.host); + debug("Net connect", enabled ? "" : "not", "enabled for", options2.host); + return enabled; + } + function disableNetConnect() { + allowNetConnect = void 0; + } + function isOn() { + return !isOff(); + } + function isOff() { + return process.env.NOCK_OFF === "true"; + } + function addInterceptor(key, interceptor, scope, scopeOptions, host) { + if (!(key in allInterceptors)) { + allInterceptors[key] = { key, interceptors: [] }; + } + interceptor.__nock_scope = scope; + interceptor.__nock_scopeKey = key; + interceptor.__nock_scopeOptions = scopeOptions; + interceptor.__nock_scopeHost = host; + interceptor.interceptionCounter = 0; + if (scopeOptions.allowUnmocked) + allInterceptors[key].allowUnmocked = true; + allInterceptors[key].interceptors.push(interceptor); + } + function remove(interceptor) { + if (interceptor.__nock_scope.shouldPersist() || --interceptor.counter > 0) { + return; + } + const { basePath } = interceptor; + const interceptors = allInterceptors[basePath] && allInterceptors[basePath].interceptors || []; + interceptors.some(function(thisInterceptor, i) { + return thisInterceptor === interceptor ? interceptors.splice(i, 1) : false; + }); + } + function removeAll() { + Object.keys(allInterceptors).forEach(function(key) { + allInterceptors[key].interceptors.forEach(function(interceptor) { + interceptor.scope.keyedInterceptors = {}; + }); + }); + allInterceptors = {}; + } + function interceptorsFor(options2) { + common.normalizeRequestOptions(options2); + debug("interceptors for %j", options2.host); + const basePath = `${options2.proto}://${options2.host}`; + debug("filtering interceptors for basepath", basePath); + for (const { key, interceptors, allowUnmocked } of Object.values( + allInterceptors + )) { + for (const interceptor of interceptors) { + const { filteringScope } = interceptor.__nock_scopeOptions; + if (filteringScope && filteringScope(basePath)) { + interceptor.scope.logger("found matching scope interceptor"); + interceptors.forEach((ic) => { + ic.__nock_filteredScope = ic.__nock_scopeKey; + }); + return interceptors; + } + } + if (common.matchStringOrRegexp(basePath, key)) { + if (allowUnmocked && interceptors.length === 0) { + debug("matched base path with allowUnmocked (no matching interceptors)"); + return [ + { + options: { allowUnmocked: true }, + matchOrigin() { + return false; + } + } + ]; + } else { + debug( + `matched base path (${interceptors.length} interceptor${interceptors.length > 1 ? "s" : ""})` + ); + return interceptors; + } + } + } + return void 0; + } + function removeInterceptor(options2) { + const Interceptor = require_interceptor(); + let baseUrl, key, method, proto; + if (options2 instanceof Interceptor) { + baseUrl = options2.basePath; + key = options2._key; + } else { + proto = options2.proto ? options2.proto : "http"; + common.normalizeRequestOptions(options2); + baseUrl = `${proto}://${options2.host}`; + method = options2.method && options2.method.toUpperCase() || "GET"; + key = `${method} ${baseUrl}${options2.path || "/"}`; + } + if (allInterceptors[baseUrl] && allInterceptors[baseUrl].interceptors.length > 0) { + for (let i = 0; i < allInterceptors[baseUrl].interceptors.length; i++) { + const interceptor = allInterceptors[baseUrl].interceptors[i]; + if (options2 instanceof Interceptor ? interceptor === options2 : interceptor._key === key) { + allInterceptors[baseUrl].interceptors.splice(i, 1); + interceptor.scope.remove(key, interceptor); + break; + } + } + return true; + } + return false; + } + var originalClientRequest; + function ErroringClientRequest(error) { + http4.OutgoingMessage.call(this); + process.nextTick( + function() { + this.emit("error", error); + }.bind(this) + ); + } + inherits3(ErroringClientRequest, http4.ClientRequest); + function overrideClientRequest() { + debug("Overriding ClientRequest"); + function OverriddenClientRequest(...args3) { + const { options: options2, callback } = common.normalizeClientRequestArgs(...args3); + if (Object.keys(options2).length === 0) { + throw Error( + "Creating a ClientRequest with empty `options` is not supported in Nock" + ); + } + http4.OutgoingMessage.call(this); + const interceptors = interceptorsFor(options2); + if (isOn() && interceptors) { + debug("using", interceptors.length, "interceptors"); + const overrider = new InterceptedRequestRouter({ + req: this, + options: options2, + interceptors + }); + Object.assign(this, overrider); + if (callback) { + this.once("response", callback); + } + } else { + debug("falling back to original ClientRequest"); + if (isOff() || isEnabledForNetConnect(options2)) { + originalClientRequest.apply(this, arguments); + } else { + common.setImmediate( + function() { + const error = new NetConnectNotAllowedError( + options2.host, + options2.path + ); + this.emit("error", error); + }.bind(this) + ); + } + } + } + inherits3(OverriddenClientRequest, http4.ClientRequest); + originalClientRequest = http4.ClientRequest; + http4.ClientRequest = OverriddenClientRequest; + debug("ClientRequest overridden"); + } + function restoreOverriddenClientRequest() { + debug("restoring overridden ClientRequest"); + if (!originalClientRequest) { + debug("- ClientRequest was not overridden"); + } else { + http4.ClientRequest = originalClientRequest; + originalClientRequest = void 0; + debug("- ClientRequest restored"); + } + } + function isActive() { + return originalClientRequest !== void 0; + } + function interceptorScopes() { + const nestedInterceptors = Object.values(allInterceptors).map( + (i) => i.interceptors + ); + return [].concat(...nestedInterceptors).map((i) => i.scope); + } + function isDone() { + return interceptorScopes().every((scope) => scope.isDone()); + } + function pendingMocks() { + return [].concat(...interceptorScopes().map((scope) => scope.pendingMocks())); + } + function activeMocks() { + return [].concat(...interceptorScopes().map((scope) => scope.activeMocks())); + } + function activate3() { + if (originalClientRequest) { + throw new Error("Nock already active"); + } + overrideClientRequest(); + common.overrideRequests(function(proto, overriddenRequest, args3) { + const { options: options2, callback } = common.normalizeClientRequestArgs(...args3); + if (Object.keys(options2).length === 0) { + throw Error( + "Making a request with empty `options` is not supported in Nock" + ); + } + options2.proto = proto; + const interceptors = interceptorsFor(options2); + if (isOn() && interceptors) { + const matches = interceptors.some( + (interceptor) => interceptor.matchOrigin(options2) + ); + const allowUnmocked = interceptors.some( + (interceptor) => interceptor.options.allowUnmocked + ); + if (!matches && allowUnmocked) { + let req; + if (proto === "https") { + const { ClientRequest } = http4; + http4.ClientRequest = originalClientRequest; + req = overriddenRequest(options2, callback); + http4.ClientRequest = ClientRequest; + } else { + req = overriddenRequest(options2, callback); + } + globalEmitter.emit("no match", req); + return req; + } + return new http4.ClientRequest(options2, callback); + } else { + globalEmitter.emit("no match", options2); + if (isOff() || isEnabledForNetConnect(options2)) { + return overriddenRequest(options2, callback); + } else { + const error = new NetConnectNotAllowedError(options2.host, options2.path); + return new ErroringClientRequest(error); + } + } + }); + } + module2.exports = { + addInterceptor, + remove, + removeAll, + removeInterceptor, + isOn, + activate: activate3, + isActive, + isDone, + pendingMocks, + activeMocks, + enableNetConnect, + disableNetConnect, + restoreOverriddenClientRequest, + abortPendingRequests: common.removeAllTimers + }; + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/recorder.js +var require_recorder = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/recorder.js"(exports2, module2) { + "use strict"; + var debug = require_src3()("nock.recorder"); + var querystring = require("querystring"); + var { inspect: inspect2 } = require("util"); + var common = require_common6(); + var { restoreOverriddenClientRequest } = require_intercept(); + var SEPARATOR = "\n<<<<<<-- cut here -->>>>>>\n"; + var recordingInProgress = false; + var outputs = []; + function getScope(options2) { + const { proto, host, port } = common.normalizeRequestOptions(options2); + return common.normalizeOrigin(proto, host, port); + } + function getMethod(options2) { + return options2.method || "GET"; + } + function getBodyFromChunks(chunks, headers) { + if (headers && common.isContentEncoded(headers)) { + return { + body: chunks.map((chunk) => chunk.toString("hex")) + }; + } + const mergedBuffer = Buffer.concat(chunks); + const isUtf8Representable = common.isUtf8Representable(mergedBuffer); + if (isUtf8Representable) { + const maybeStringifiedJson = mergedBuffer.toString("utf8"); + try { + return { + isUtf8Representable, + body: JSON.parse(maybeStringifiedJson) + }; + } catch (err2) { + return { + isUtf8Representable, + body: maybeStringifiedJson + }; + } + } else { + return { + isUtf8Representable, + body: mergedBuffer.toString("hex") + }; + } + } + function generateRequestAndResponseObject({ + req, + bodyChunks, + options: options2, + res, + dataChunks, + reqheaders + }) { + const { body: body2, isUtf8Representable } = getBodyFromChunks( + dataChunks, + res.headers + ); + options2.path = req.path; + return { + scope: getScope(options2), + method: getMethod(options2), + path: options2.path, + // Is it deliberate that `getBodyFromChunks()` is called a second time? + body: getBodyFromChunks(bodyChunks).body, + status: res.statusCode, + response: body2, + rawHeaders: res.rawHeaders, + reqheaders: reqheaders || void 0, + // When content-encoding is enabled, isUtf8Representable is `undefined`, + // so we explicitly check for `false`. + responseIsBinary: isUtf8Representable === false + }; + } + function generateRequestAndResponse({ + req, + bodyChunks, + options: options2, + res, + dataChunks, + reqheaders + }) { + const requestBody = getBodyFromChunks(bodyChunks).body; + const responseBody = getBodyFromChunks(dataChunks, res.headers).body; + let { path: path30 } = options2; + const queryIndex = req.path.indexOf("?"); + let queryObj = {}; + if (queryIndex !== -1) { + path30 = path30.substring(0, queryIndex); + const queryStr = req.path.slice(queryIndex + 1); + queryObj = querystring.parse(queryStr); + } + path30 = path30.replace(/'/g, `\\'`); + const encodedQueryObj = {}; + for (const key in queryObj) { + const formattedPair = common.formatQueryValue( + key, + queryObj[key], + common.percentEncode + ); + encodedQueryObj[formattedPair[0]] = formattedPair[1]; + } + const lines2 = []; + lines2.push(""); + const scope = getScope(options2); + lines2.push(`nock('${scope}', {"encodedQueryParams":true})`); + const methodName = getMethod(options2).toLowerCase(); + if (requestBody) { + lines2.push(` .${methodName}('${path30}', ${JSON.stringify(requestBody)})`); + } else { + lines2.push(` .${methodName}('${path30}')`); + } + Object.entries(reqheaders || {}).forEach(([fieldName, fieldValue]) => { + const safeName = JSON.stringify(fieldName); + const safeValue = JSON.stringify(fieldValue); + lines2.push(` .matchHeader(${safeName}, ${safeValue})`); + }); + if (queryIndex !== -1) { + lines2.push(` .query(${JSON.stringify(encodedQueryObj)})`); + } + const statusCode = res.statusCode.toString(); + const stringifiedResponseBody = JSON.stringify(responseBody); + const headers = inspect2(res.rawHeaders); + lines2.push(` .reply(${statusCode}, ${stringifiedResponseBody}, ${headers});`); + return lines2.join("\n"); + } + var currentRecordingId = 0; + var defaultRecordOptions = { + dont_print: false, + enable_reqheaders_recording: false, + logging: console.log, + // eslint-disable-line no-console + output_objects: false, + use_separator: true + }; + function record(recOptions) { + if (recordingInProgress) { + throw new Error("Nock recording already in progress"); + } + recordingInProgress = true; + currentRecordingId = currentRecordingId + 1; + const thisRecordingId = currentRecordingId; + if (typeof recOptions === "boolean") { + recOptions = { dont_print: recOptions }; + } + recOptions = { ...defaultRecordOptions, ...recOptions }; + debug("start recording", thisRecordingId, recOptions); + const { + dont_print: dontPrint, + enable_reqheaders_recording: enableReqHeadersRecording, + logging, + output_objects: outputObjects, + use_separator: useSeparator + } = recOptions; + debug(thisRecordingId, "restoring overridden requests before new overrides"); + common.restoreOverriddenRequests(); + restoreOverriddenClientRequest(); + common.overrideRequests(function(proto, overriddenRequest, rawArgs) { + const { options: options2, callback } = common.normalizeClientRequestArgs(...rawArgs); + const bodyChunks = []; + if (options2._recording) { + return overriddenRequest(options2, callback); + } + options2._recording = true; + const req = overriddenRequest(options2, function(res) { + debug(thisRecordingId, "intercepting", proto, "request to record"); + res.once("end", function() { + debug(thisRecordingId, proto, "intercepted request ended"); + let reqheaders; + if (enableReqHeadersRecording) { + reqheaders = req.getHeaders(); + common.deleteHeadersField(reqheaders, "user-agent"); + } + const generateFn = outputObjects ? generateRequestAndResponseObject : generateRequestAndResponse; + let out2 = generateFn({ + req, + bodyChunks, + options: options2, + res, + dataChunks, + reqheaders + }); + debug("out:", out2); + if (thisRecordingId !== currentRecordingId) { + debug("skipping recording of an out-of-order request", out2); + return; + } + outputs.push(out2); + if (!dontPrint) { + if (useSeparator) { + if (typeof out2 !== "string") { + out2 = JSON.stringify(out2, null, 2); + } + logging(SEPARATOR + out2 + SEPARATOR); + } else { + logging(out2); + } + } + }); + let encoding; + const { setEncoding } = res; + res.setEncoding = function(newEncoding) { + encoding = newEncoding; + return setEncoding.apply(this, arguments); + }; + const dataChunks = []; + const origResPush = res.push; + res.push = function(data) { + if (data) { + if (encoding) { + data = Buffer.from(data, encoding); + } + dataChunks.push(data); + } + return origResPush.call(res, data); + }; + if (callback) { + callback(res, options2, callback); + } + debug("finished setting up intercepting"); + if (proto === "https") { + options2.proto = "https"; + } + }); + const recordChunk = (chunk, encoding) => { + debug(thisRecordingId, "new", proto, "body chunk"); + if (!Buffer.isBuffer(chunk)) { + chunk = Buffer.from(chunk, encoding); + } + bodyChunks.push(chunk); + }; + const oldWrite = req.write; + req.write = function(chunk, encoding) { + if (typeof chunk !== "undefined") { + recordChunk(chunk, encoding); + oldWrite.apply(req, arguments); + } else { + throw new Error("Data was undefined."); + } + }; + const oldEnd = req.end; + req.end = function(chunk, encoding, callback2) { + debug("req.end"); + if (typeof chunk === "function") { + callback2 = chunk; + chunk = null; + } else if (typeof encoding === "function") { + callback2 = encoding; + encoding = null; + } + if (chunk) { + recordChunk(chunk, encoding); + } + oldEnd.call(req, chunk, encoding, callback2); + }; + return req; + }); + } + function restore() { + debug( + currentRecordingId, + "restoring all the overridden http/https properties" + ); + common.restoreOverriddenRequests(); + restoreOverriddenClientRequest(); + recordingInProgress = false; + } + function clear() { + outputs = []; + } + module2.exports = { + record, + outputs: () => outputs, + restore, + clear + }; + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/scope.js +var require_scope2 = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/scope.js"(exports2, module2) { + "use strict"; + var { addInterceptor, isOn } = require_intercept(); + var common = require_common6(); + var assert2 = require("assert"); + var url2 = require("url"); + var debug = require_src3()("nock.scope"); + var { EventEmitter: EventEmitter4 } = require("events"); + var Interceptor = require_interceptor(); + var { URL: URL2, Url: LegacyUrl } = url2; + var fs6; + try { + fs6 = require("fs"); + } catch (err2) { + } + function normalizeUrl(u) { + if (!(u instanceof URL2)) { + if (u instanceof LegacyUrl) { + return normalizeUrl(new URL2(url2.format(u))); + } + return normalizeUrl(new URL2(u)); + } + if (!/https?:/.test(u.protocol)) { + throw new TypeError( + `Protocol '${u.protocol}' not recognized. This commonly occurs when a hostname and port are included without a protocol, producing a URL that is valid but confusing, and probably not what you want.` + ); + } + return { + href: u.href, + origin: u.origin, + protocol: u.protocol, + username: u.username, + password: u.password, + host: u.host, + hostname: ( + // strip brackets from IPv6 + typeof u.hostname === "string" && u.hostname.startsWith("[") ? u.hostname.slice(1, -1) : u.hostname + ), + port: u.port || (u.protocol === "http:" ? 80 : 443), + pathname: u.pathname, + search: u.search, + searchParams: u.searchParams, + hash: u.hash + }; + } + var Scope = class extends EventEmitter4 { + constructor(basePath, options2) { + super(); + this.keyedInterceptors = {}; + this.interceptors = []; + this.transformPathFunction = null; + this.transformRequestBodyFunction = null; + this.matchHeaders = []; + this.scopeOptions = options2 || {}; + this.urlParts = {}; + this._persist = false; + this.contentLen = false; + this.date = null; + this.basePath = basePath; + this.basePathname = ""; + this.port = null; + this._defaultReplyHeaders = []; + let logNamespace = String(basePath); + if (!(basePath instanceof RegExp)) { + this.urlParts = normalizeUrl(basePath); + this.port = this.urlParts.port; + this.basePathname = this.urlParts.pathname.replace(/\/$/, ""); + this.basePath = `${this.urlParts.protocol}//${this.urlParts.hostname}:${this.port}`; + logNamespace = this.urlParts.host; + } + this.logger = debug.extend(logNamespace); + } + add(key, interceptor) { + if (!(key in this.keyedInterceptors)) { + this.keyedInterceptors[key] = []; + } + this.keyedInterceptors[key].push(interceptor); + addInterceptor( + this.basePath, + interceptor, + this, + this.scopeOptions, + this.urlParts.hostname + ); + } + remove(key, interceptor) { + if (this._persist) { + return; + } + const arr = this.keyedInterceptors[key]; + if (arr) { + arr.splice(arr.indexOf(interceptor), 1); + if (arr.length === 0) { + delete this.keyedInterceptors[key]; + } + } + } + intercept(uri, method, requestBody, interceptorOptions) { + const ic = new Interceptor( + this, + uri, + method, + requestBody, + interceptorOptions + ); + this.interceptors.push(ic); + return ic; + } + get(uri, requestBody, options2) { + return this.intercept(uri, "GET", requestBody, options2); + } + post(uri, requestBody, options2) { + return this.intercept(uri, "POST", requestBody, options2); + } + put(uri, requestBody, options2) { + return this.intercept(uri, "PUT", requestBody, options2); + } + head(uri, requestBody, options2) { + return this.intercept(uri, "HEAD", requestBody, options2); + } + patch(uri, requestBody, options2) { + return this.intercept(uri, "PATCH", requestBody, options2); + } + merge(uri, requestBody, options2) { + return this.intercept(uri, "MERGE", requestBody, options2); + } + delete(uri, requestBody, options2) { + return this.intercept(uri, "DELETE", requestBody, options2); + } + options(uri, requestBody, options2) { + return this.intercept(uri, "OPTIONS", requestBody, options2); + } + // Returns the list of keys for non-optional Interceptors that haven't been completed yet. + // TODO: This assumes that completed mocks are removed from the keyedInterceptors list + // (when persistence is off). We should change that (and this) in future. + pendingMocks() { + return this.activeMocks().filter( + (key) => this.keyedInterceptors[key].some(({ interceptionCounter, optional }) => { + const persistedAndUsed = this._persist && interceptionCounter > 0; + return !persistedAndUsed && !optional; + }) + ); + } + // Returns all keyedInterceptors that are active. + // This includes incomplete interceptors, persisted but complete interceptors, and + // optional interceptors, but not non-persisted and completed interceptors. + activeMocks() { + return Object.keys(this.keyedInterceptors); + } + isDone() { + if (!isOn()) { + return true; + } + return this.pendingMocks().length === 0; + } + done() { + assert2.ok( + this.isDone(), + `Mocks not yet satisfied: +${this.pendingMocks().join("\n")}` + ); + } + buildFilter() { + const filteringArguments = arguments; + if (arguments[0] instanceof RegExp) { + return function(candidate) { + if (typeof candidate !== "string") { + throw Error( + `Nock internal assertion failed: typeof candidate is ${typeof candidate}. If you encounter this error, please report it as a bug.` + ); + } + return candidate.replace(filteringArguments[0], filteringArguments[1]); + }; + } else if (typeof arguments[0] === "function") { + return arguments[0]; + } + } + filteringPath() { + this.transformPathFunction = this.buildFilter.apply(this, arguments); + if (!this.transformPathFunction) { + throw new Error( + "Invalid arguments: filtering path should be a function or a regular expression" + ); + } + return this; + } + filteringRequestBody() { + this.transformRequestBodyFunction = this.buildFilter.apply(this, arguments); + if (!this.transformRequestBodyFunction) { + throw new Error( + "Invalid arguments: filtering request body should be a function or a regular expression" + ); + } + return this; + } + matchHeader(name, value) { + this.matchHeaders.push({ name: name.toLowerCase(), value }); + return this; + } + defaultReplyHeaders(headers) { + this._defaultReplyHeaders = common.headersInputToRawArray(headers); + return this; + } + persist(flag = true) { + if (typeof flag !== "boolean") { + throw new Error("Invalid arguments: argument should be a boolean"); + } + this._persist = flag; + return this; + } + /** + * @private + * @returns {boolean} + */ + shouldPersist() { + return this._persist; + } + replyContentLength() { + this.contentLen = true; + return this; + } + replyDate(d) { + this.date = d || /* @__PURE__ */ new Date(); + return this; + } + }; + function loadDefs(path30) { + if (!fs6) { + throw new Error("No fs"); + } + const contents = fs6.readFileSync(path30); + return JSON.parse(contents); + } + function load(path30) { + return define2(loadDefs(path30)); + } + function getStatusFromDefinition(nockDef) { + if (nockDef.reply !== void 0) { + const parsedReply = parseInt(nockDef.reply, 10); + if (isNaN(parsedReply)) { + throw Error("`reply`, when present, must be a numeric string"); + } + return parsedReply; + } + const DEFAULT_STATUS_OK = 200; + return nockDef.status || DEFAULT_STATUS_OK; + } + function getScopeFromDefinition(nockDef) { + if (nockDef.port !== void 0) { + const options2 = url2.parse(nockDef.scope); + if (options2.port === null) { + return `${nockDef.scope}:${nockDef.port}`; + } else { + if (parseInt(options2.port) !== parseInt(nockDef.port)) { + throw new Error( + "Mismatched port numbers in scope and port properties of nock definition." + ); + } + } + } + return nockDef.scope; + } + function tryJsonParse(string) { + try { + return JSON.parse(string); + } catch (err2) { + return string; + } + } + function define2(nockDefs) { + const scopes = []; + nockDefs.forEach(function(nockDef) { + const nscope = getScopeFromDefinition(nockDef); + const npath = nockDef.path; + if (!nockDef.method) { + throw Error("Method is required"); + } + const method = nockDef.method.toLowerCase(); + const status = getStatusFromDefinition(nockDef); + const rawHeaders = nockDef.rawHeaders || []; + const reqheaders = nockDef.reqheaders || {}; + const badheaders = nockDef.badheaders || []; + const options2 = { ...nockDef.options }; + options2.reqheaders = reqheaders; + options2.badheaders = badheaders; + let response; + if (!nockDef.response) { + response = ""; + } else if (nockDef.responseIsBinary) { + response = Buffer.from(nockDef.response, "hex"); + } else { + response = typeof nockDef.response === "string" ? tryJsonParse(nockDef.response) : nockDef.response; + } + const scope = new Scope(nscope, options2); + Object.entries(reqheaders).forEach(([fieldName, value]) => { + scope.matchHeader(fieldName, value); + }); + const acceptableFilters = ["filteringRequestBody", "filteringPath"]; + acceptableFilters.forEach((filter3) => { + if (nockDef[filter3]) { + scope[filter3](nockDef[filter3]); + } + }); + scope.intercept(npath, method, nockDef.body).reply(status, response, rawHeaders); + scopes.push(scope); + }); + return scopes; + } + module2.exports = { + Scope, + load, + loadDefs, + define: define2 + }; + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/back.js +var require_back = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/lib/back.js"(exports2, module2) { + "use strict"; + var assert2 = require("assert"); + var recorder = require_recorder(); + var { + activate: activate3, + disableNetConnect, + enableNetConnect, + removeAll: cleanAll + } = require_intercept(); + var { loadDefs, define: define2 } = require_scope2(); + var { format } = require("util"); + var path30 = require("path"); + var debug = require_src3()("nock.back"); + var _mode = null; + var fs6; + try { + fs6 = require("fs"); + } catch (err2) { + } + function Back(fixtureName, options2, nockedFn) { + if (!Back.fixtures) { + throw new Error( + "Back requires nock.back.fixtures to be set\nEx:\n require(nock).back.fixtures = '/path/to/fixtures/'" + ); + } + if (typeof fixtureName !== "string") { + throw new Error("Parameter fixtureName must be a string"); + } + if (arguments.length === 1) { + options2 = {}; + } else if (arguments.length === 2) { + if (typeof options2 === "function") { + nockedFn = options2; + options2 = {}; + } + } + _mode.setup(); + const fixture = path30.join(Back.fixtures, fixtureName); + const context2 = _mode.start(fixture, options2); + const nockDone = function() { + _mode.finish(fixture, options2, context2); + }; + debug("context:", context2); + if (typeof nockedFn === "function") { + nockedFn.call(context2, nockDone); + } else { + return Promise.resolve({ nockDone, context: context2 }); + } + } + var wild = { + setup: function() { + cleanAll(); + recorder.restore(); + activate3(); + enableNetConnect(); + }, + start: function() { + return load(); + }, + finish: function() { + } + }; + var dryrun = { + setup: function() { + recorder.restore(); + cleanAll(); + activate3(); + enableNetConnect(); + }, + start: function(fixture, options2) { + const contexts = load(fixture, options2); + enableNetConnect(); + return contexts; + }, + finish: function() { + } + }; + var record = { + setup: function() { + recorder.restore(); + recorder.clear(); + cleanAll(); + activate3(); + disableNetConnect(); + }, + start: function(fixture, options2) { + if (!fs6) { + throw new Error("no fs"); + } + const context2 = load(fixture, options2); + if (!context2.isLoaded) { + recorder.record({ + dont_print: true, + output_objects: true, + ...options2.recorder + }); + context2.isRecording = true; + } + return context2; + }, + finish: function(fixture, options2, context2) { + if (context2.isRecording) { + let outputs = recorder.outputs(); + if (typeof options2.afterRecord === "function") { + outputs = options2.afterRecord(outputs); + } + outputs = typeof outputs === "string" ? outputs : JSON.stringify(outputs, null, 4); + debug("recorder outputs:", outputs); + fs6.mkdirSync(path30.dirname(fixture), { recursive: true }); + fs6.writeFileSync(fixture, outputs); + } + } + }; + var update = { + setup: function() { + recorder.restore(); + recorder.clear(); + cleanAll(); + activate3(); + disableNetConnect(); + }, + start: function(fixture, options2) { + if (!fs6) { + throw new Error("no fs"); + } + const context2 = removeFixture(fixture); + recorder.record({ + dont_print: true, + output_objects: true, + ...options2.recorder + }); + context2.isRecording = true; + return context2; + }, + finish: function(fixture, options2, context2) { + let outputs = recorder.outputs(); + if (typeof options2.afterRecord === "function") { + outputs = options2.afterRecord(outputs); + } + outputs = typeof outputs === "string" ? outputs : JSON.stringify(outputs, null, 4); + debug("recorder outputs:", outputs); + fs6.mkdirSync(path30.dirname(fixture), { recursive: true }); + fs6.writeFileSync(fixture, outputs); + } + }; + var lockdown = { + setup: function() { + recorder.restore(); + recorder.clear(); + cleanAll(); + activate3(); + disableNetConnect(); + }, + start: function(fixture, options2) { + return load(fixture, options2); + }, + finish: function() { + } + }; + function load(fixture, options2) { + const context2 = { + scopes: [], + assertScopesFinished: function() { + assertScopes(this.scopes, fixture); + } + }; + if (fixture && fixtureExists(fixture)) { + let scopes = loadDefs(fixture); + applyHook(scopes, options2.before); + scopes = define2(scopes); + applyHook(scopes, options2.after); + context2.scopes = scopes; + context2.isLoaded = true; + } + return context2; + } + function removeFixture(fixture, options2) { + const context2 = { + scopes: [], + assertScopesFinished: function() { + } + }; + if (fixture && fixtureExists(fixture)) { + fs6.rmSync ? fs6.rmSync(fixture) : fs6.unlinkSync(fixture); + } + context2.isLoaded = false; + return context2; + } + function applyHook(scopes, fn) { + if (!fn) { + return; + } + if (typeof fn !== "function") { + throw new Error("processing hooks must be a function"); + } + scopes.forEach(fn); + } + function fixtureExists(fixture) { + if (!fs6) { + throw new Error("no fs"); + } + return fs6.existsSync(fixture); + } + function assertScopes(scopes, fixture) { + const pending = scopes.filter((scope) => !scope.isDone()).map((scope) => scope.pendingMocks()); + if (pending.length) { + assert2.fail( + format( + "%j was not used, consider removing %s to rerecord fixture", + [].concat(...pending), + fixture + ) + ); + } + } + var Modes = { + wild, + // all requests go out to the internet, dont replay anything, doesnt record anything + dryrun, + // use recorded nocks, allow http calls, doesnt record anything, useful for writing new tests (default) + record, + // use recorded nocks, record new nocks + update, + // allow http calls, record all nocks, don't use recorded nocks + lockdown + // use recorded nocks, disables all http calls even when not nocked, doesnt record + }; + Back.setMode = function(mode) { + if (!(mode in Modes)) { + throw new Error(`Unknown mode: ${mode}`); + } + Back.currentMode = mode; + debug("New nock back mode:", Back.currentMode); + _mode = Modes[mode]; + _mode.setup(); + }; + Back.fixtures = null; + Back.currentMode = null; + module2.exports = Back; + } +}); + +// ../node_modules/.pnpm/nock@13.3.8/node_modules/nock/index.js +var require_nock = __commonJS({ + "../node_modules/.pnpm/nock@13.3.8/node_modules/nock/index.js"(exports2, module2) { + "use strict"; + var back = require_back(); + var emitter = require_global_emitter(); + var { + activate: activate3, + isActive, + isDone, + isOn, + pendingMocks, + activeMocks, + removeInterceptor, + disableNetConnect, + enableNetConnect, + removeAll, + abortPendingRequests + } = require_intercept(); + var recorder = require_recorder(); + var { Scope, load, loadDefs, define: define2 } = require_scope2(); + module2.exports = (basePath, options2) => new Scope(basePath, options2); + Object.assign(module2.exports, { + activate: activate3, + isActive, + isDone, + pendingMocks, + activeMocks, + removeInterceptor, + disableNetConnect, + enableNetConnect, + cleanAll: removeAll, + abortPendingRequests, + load, + loadDefs, + define: define2, + emitter, + recorder: { + rec: recorder.record, + clear: recorder.clear, + play: recorder.outputs + }, + restore: recorder.restore, + back + }); + if (isOn()) { + back.setMode(process.env.NOCK_BACK_MODE || "dryrun"); + } + } +}); + +// ../node_modules/.pnpm/requires-port@1.0.0/node_modules/requires-port/index.js +var require_requires_port = __commonJS({ + "../node_modules/.pnpm/requires-port@1.0.0/node_modules/requires-port/index.js"(exports2, module2) { + "use strict"; + module2.exports = function required(port, protocol2) { + protocol2 = protocol2.split(":")[0]; + port = +port; + if (!port) + return false; + switch (protocol2) { + case "http": + case "ws": + return port !== 80; + case "https": + case "wss": + return port !== 443; + case "ftp": + return port !== 21; + case "gopher": + return port !== 70; + case "file": + return false; + } + return port !== 0; + }; + } +}); + +// ../node_modules/.pnpm/querystringify@2.2.0/node_modules/querystringify/index.js +var require_querystringify = __commonJS({ + "../node_modules/.pnpm/querystringify@2.2.0/node_modules/querystringify/index.js"(exports2) { + "use strict"; + var has = Object.prototype.hasOwnProperty; + var undef; + function decode(input) { + try { + return decodeURIComponent(input.replace(/\+/g, " ")); + } catch (e) { + return null; + } + } + function encode3(input) { + try { + return encodeURIComponent(input); + } catch (e) { + return null; + } + } + function querystring(query) { + var parser2 = /([^=?#&]+)=?([^&]*)/g, result = {}, part; + while (part = parser2.exec(query)) { + var key = decode(part[1]), value = decode(part[2]); + if (key === null || value === null || key in result) + continue; + result[key] = value; + } + return result; + } + function querystringify(obj2, prefix) { + prefix = prefix || ""; + var pairs = [], value, key; + if ("string" !== typeof prefix) + prefix = "?"; + for (key in obj2) { + if (has.call(obj2, key)) { + value = obj2[key]; + if (!value && (value === null || value === undef || isNaN(value))) { + value = ""; + } + key = encode3(key); + value = encode3(value); + if (key === null || value === null) + continue; + pairs.push(key + "=" + value); + } + } + return pairs.length ? prefix + pairs.join("&") : ""; + } + exports2.stringify = querystringify; + exports2.parse = querystring; + } +}); + +// ../node_modules/.pnpm/url-parse@1.5.10/node_modules/url-parse/index.js +var require_url_parse = __commonJS({ + "../node_modules/.pnpm/url-parse@1.5.10/node_modules/url-parse/index.js"(exports2, module2) { + "use strict"; + var required = require_requires_port(); + var qs = require_querystringify(); + var controlOrWhitespace = /^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/; + var CRHTLF = /[\n\r\t]/g; + var slashes = /^[A-Za-z][A-Za-z0-9+-.]*:\/\//; + var port = /:\d+$/; + var protocolre = /^([a-z][a-z0-9.+-]*:)?(\/\/)?([\\/]+)?([\S\s]*)/i; + var windowsDriveLetter = /^[a-zA-Z]:/; + function trimLeft(str) { + return (str ? str : "").toString().replace(controlOrWhitespace, ""); + } + var rules2 = [ + ["#", "hash"], + // Extract from the back. + ["?", "query"], + // Extract from the back. + function sanitize(address, url2) { + return isSpecial(url2.protocol) ? address.replace(/\\/g, "/") : address; + }, + ["/", "pathname"], + // Extract from the back. + ["@", "auth", 1], + // Extract from the front. + [NaN, "host", void 0, 1, 1], + // Set left over value. + [/:(\d*)$/, "port", void 0, 1], + // RegExp the back. + [NaN, "hostname", void 0, 1, 1] + // Set left over. + ]; + var ignore = { hash: 1, query: 1 }; + function lolcation(loc) { + var globalVar; + if (typeof window !== "undefined") + globalVar = window; + else if (typeof global !== "undefined") + globalVar = global; + else if (typeof self !== "undefined") + globalVar = self; + else + globalVar = {}; + var location = globalVar.location || {}; + loc = loc || location; + var finaldestination = {}, type2 = typeof loc, key; + if ("blob:" === loc.protocol) { + finaldestination = new Url(unescape(loc.pathname), {}); + } else if ("string" === type2) { + finaldestination = new Url(loc, {}); + for (key in ignore) + delete finaldestination[key]; + } else if ("object" === type2) { + for (key in loc) { + if (key in ignore) + continue; + finaldestination[key] = loc[key]; + } + if (finaldestination.slashes === void 0) { + finaldestination.slashes = slashes.test(loc.href); + } + } + return finaldestination; + } + function isSpecial(scheme) { + return scheme === "file:" || scheme === "ftp:" || scheme === "http:" || scheme === "https:" || scheme === "ws:" || scheme === "wss:"; + } + function extractProtocol(address, location) { + address = trimLeft(address); + address = address.replace(CRHTLF, ""); + location = location || {}; + var match2 = protocolre.exec(address); + var protocol2 = match2[1] ? match2[1].toLowerCase() : ""; + var forwardSlashes = !!match2[2]; + var otherSlashes = !!match2[3]; + var slashesCount = 0; + var rest; + if (forwardSlashes) { + if (otherSlashes) { + rest = match2[2] + match2[3] + match2[4]; + slashesCount = match2[2].length + match2[3].length; + } else { + rest = match2[2] + match2[4]; + slashesCount = match2[2].length; + } + } else { + if (otherSlashes) { + rest = match2[3] + match2[4]; + slashesCount = match2[3].length; + } else { + rest = match2[4]; + } + } + if (protocol2 === "file:") { + if (slashesCount >= 2) { + rest = rest.slice(2); + } + } else if (isSpecial(protocol2)) { + rest = match2[4]; + } else if (protocol2) { + if (forwardSlashes) { + rest = rest.slice(2); + } + } else if (slashesCount >= 2 && isSpecial(location.protocol)) { + rest = match2[4]; + } + return { + protocol: protocol2, + slashes: forwardSlashes || isSpecial(protocol2), + slashesCount, + rest + }; + } + function resolve8(relative3, base) { + if (relative3 === "") + return base; + var path30 = (base || "/").split("/").slice(0, -1).concat(relative3.split("/")), i = path30.length, last = path30[i - 1], unshift = false, up = 0; + while (i--) { + if (path30[i] === ".") { + path30.splice(i, 1); + } else if (path30[i] === "..") { + path30.splice(i, 1); + up++; + } else if (up) { + if (i === 0) + unshift = true; + path30.splice(i, 1); + up--; + } + } + if (unshift) + path30.unshift(""); + if (last === "." || last === "..") + path30.push(""); + return path30.join("/"); + } + function Url(address, location, parser2) { + address = trimLeft(address); + address = address.replace(CRHTLF, ""); + if (!(this instanceof Url)) { + return new Url(address, location, parser2); + } + var relative3, extracted, parse7, instruction, index, key, instructions = rules2.slice(), type2 = typeof location, url2 = this, i = 0; + if ("object" !== type2 && "string" !== type2) { + parser2 = location; + location = null; + } + if (parser2 && "function" !== typeof parser2) + parser2 = qs.parse; + location = lolcation(location); + extracted = extractProtocol(address || "", location); + relative3 = !extracted.protocol && !extracted.slashes; + url2.slashes = extracted.slashes || relative3 && location.slashes; + url2.protocol = extracted.protocol || location.protocol || ""; + address = extracted.rest; + if (extracted.protocol === "file:" && (extracted.slashesCount !== 2 || windowsDriveLetter.test(address)) || !extracted.slashes && (extracted.protocol || extracted.slashesCount < 2 || !isSpecial(url2.protocol))) { + instructions[3] = [/(.*)/, "pathname"]; + } + for (; i < instructions.length; i++) { + instruction = instructions[i]; + if (typeof instruction === "function") { + address = instruction(address, url2); + continue; + } + parse7 = instruction[0]; + key = instruction[1]; + if (parse7 !== parse7) { + url2[key] = address; + } else if ("string" === typeof parse7) { + index = parse7 === "@" ? address.lastIndexOf(parse7) : address.indexOf(parse7); + if (~index) { + if ("number" === typeof instruction[2]) { + url2[key] = address.slice(0, index); + address = address.slice(index + instruction[2]); + } else { + url2[key] = address.slice(index); + address = address.slice(0, index); + } + } + } else if (index = parse7.exec(address)) { + url2[key] = index[1]; + address = address.slice(0, index.index); + } + url2[key] = url2[key] || (relative3 && instruction[3] ? location[key] || "" : ""); + if (instruction[4]) + url2[key] = url2[key].toLowerCase(); + } + if (parser2) + url2.query = parser2(url2.query); + if (relative3 && location.slashes && url2.pathname.charAt(0) !== "/" && (url2.pathname !== "" || location.pathname !== "")) { + url2.pathname = resolve8(url2.pathname, location.pathname); + } + if (url2.pathname.charAt(0) !== "/" && isSpecial(url2.protocol)) { + url2.pathname = "/" + url2.pathname; + } + if (!required(url2.port, url2.protocol)) { + url2.host = url2.hostname; + url2.port = ""; + } + url2.username = url2.password = ""; + if (url2.auth) { + index = url2.auth.indexOf(":"); + if (~index) { + url2.username = url2.auth.slice(0, index); + url2.username = encodeURIComponent(decodeURIComponent(url2.username)); + url2.password = url2.auth.slice(index + 1); + url2.password = encodeURIComponent(decodeURIComponent(url2.password)); + } else { + url2.username = encodeURIComponent(decodeURIComponent(url2.auth)); + } + url2.auth = url2.password ? url2.username + ":" + url2.password : url2.username; + } + url2.origin = url2.protocol !== "file:" && isSpecial(url2.protocol) && url2.host ? url2.protocol + "//" + url2.host : "null"; + url2.href = url2.toString(); + } + function set(part, value, fn) { + var url2 = this; + switch (part) { + case "query": + if ("string" === typeof value && value.length) { + value = (fn || qs.parse)(value); + } + url2[part] = value; + break; + case "port": + url2[part] = value; + if (!required(value, url2.protocol)) { + url2.host = url2.hostname; + url2[part] = ""; + } else if (value) { + url2.host = url2.hostname + ":" + value; + } + break; + case "hostname": + url2[part] = value; + if (url2.port) + value += ":" + url2.port; + url2.host = value; + break; + case "host": + url2[part] = value; + if (port.test(value)) { + value = value.split(":"); + url2.port = value.pop(); + url2.hostname = value.join(":"); + } else { + url2.hostname = value; + url2.port = ""; + } + break; + case "protocol": + url2.protocol = value.toLowerCase(); + url2.slashes = !fn; + break; + case "pathname": + case "hash": + if (value) { + var char = part === "pathname" ? "/" : "#"; + url2[part] = value.charAt(0) !== char ? char + value : value; + } else { + url2[part] = value; + } + break; + case "username": + case "password": + url2[part] = encodeURIComponent(value); + break; + case "auth": + var index = value.indexOf(":"); + if (~index) { + url2.username = value.slice(0, index); + url2.username = encodeURIComponent(decodeURIComponent(url2.username)); + url2.password = value.slice(index + 1); + url2.password = encodeURIComponent(decodeURIComponent(url2.password)); + } else { + url2.username = encodeURIComponent(decodeURIComponent(value)); + } + } + for (var i = 0; i < rules2.length; i++) { + var ins = rules2[i]; + if (ins[4]) + url2[ins[1]] = url2[ins[1]].toLowerCase(); + } + url2.auth = url2.password ? url2.username + ":" + url2.password : url2.username; + url2.origin = url2.protocol !== "file:" && isSpecial(url2.protocol) && url2.host ? url2.protocol + "//" + url2.host : "null"; + url2.href = url2.toString(); + return url2; + } + function toString3(stringify) { + if (!stringify || "function" !== typeof stringify) + stringify = qs.stringify; + var query, url2 = this, host = url2.host, protocol2 = url2.protocol; + if (protocol2 && protocol2.charAt(protocol2.length - 1) !== ":") + protocol2 += ":"; + var result = protocol2 + (url2.protocol && url2.slashes || isSpecial(url2.protocol) ? "//" : ""); + if (url2.username) { + result += url2.username; + if (url2.password) + result += ":" + url2.password; + result += "@"; + } else if (url2.password) { + result += ":" + url2.password; + result += "@"; + } else if (url2.protocol !== "file:" && isSpecial(url2.protocol) && !host && url2.pathname !== "/") { + result += "@"; + } + if (host[host.length - 1] === ":" || port.test(url2.hostname) && !url2.port) { + host += ":"; + } + result += host + url2.pathname; + query = "object" === typeof url2.query ? stringify(url2.query) : url2.query; + if (query) + result += "?" !== query.charAt(0) ? "?" + query : query; + if (url2.hash) + result += url2.hash; + return result; + } + Url.prototype = { set, toString: toString3 }; + Url.extractProtocol = extractProtocol; + Url.location = lolcation; + Url.trimLeft = trimLeft; + Url.qs = qs; + module2.exports = Url; + } +}); + +// ../node_modules/.pnpm/has-symbols@1.0.3/node_modules/has-symbols/shams.js +var require_shams = __commonJS({ + "../node_modules/.pnpm/has-symbols@1.0.3/node_modules/has-symbols/shams.js"(exports2, module2) { + "use strict"; + module2.exports = function hasSymbols() { + if (typeof Symbol !== "function" || typeof Object.getOwnPropertySymbols !== "function") { + return false; + } + if (typeof Symbol.iterator === "symbol") { + return true; + } + var obj2 = {}; + var sym = Symbol("test"); + var symObj = Object(sym); + if (typeof sym === "string") { + return false; + } + if (Object.prototype.toString.call(sym) !== "[object Symbol]") { + return false; + } + if (Object.prototype.toString.call(symObj) !== "[object Symbol]") { + return false; + } + var symVal = 42; + obj2[sym] = symVal; + for (sym in obj2) { + return false; + } + if (typeof Object.keys === "function" && Object.keys(obj2).length !== 0) { + return false; + } + if (typeof Object.getOwnPropertyNames === "function" && Object.getOwnPropertyNames(obj2).length !== 0) { + return false; + } + var syms = Object.getOwnPropertySymbols(obj2); + if (syms.length !== 1 || syms[0] !== sym) { + return false; + } + if (!Object.prototype.propertyIsEnumerable.call(obj2, sym)) { + return false; + } + if (typeof Object.getOwnPropertyDescriptor === "function") { + var descriptor = Object.getOwnPropertyDescriptor(obj2, sym); + if (descriptor.value !== symVal || descriptor.enumerable !== true) { + return false; + } + } + return true; + }; + } +}); + +// ../node_modules/.pnpm/has-symbols@1.0.3/node_modules/has-symbols/index.js +var require_has_symbols = __commonJS({ + "../node_modules/.pnpm/has-symbols@1.0.3/node_modules/has-symbols/index.js"(exports2, module2) { + "use strict"; + var origSymbol = typeof Symbol !== "undefined" && Symbol; + var hasSymbolSham = require_shams(); + module2.exports = function hasNativeSymbols() { + if (typeof origSymbol !== "function") { + return false; + } + if (typeof Symbol !== "function") { + return false; + } + if (typeof origSymbol("foo") !== "symbol") { + return false; + } + if (typeof Symbol("bar") !== "symbol") { + return false; + } + return hasSymbolSham(); + }; + } +}); + +// ../node_modules/.pnpm/has-proto@1.0.1/node_modules/has-proto/index.js +var require_has_proto = __commonJS({ + "../node_modules/.pnpm/has-proto@1.0.1/node_modules/has-proto/index.js"(exports2, module2) { + "use strict"; + var test = { + foo: {} + }; + var $Object = Object; + module2.exports = function hasProto() { + return { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object); + }; + } +}); + +// ../node_modules/.pnpm/get-intrinsic@1.2.1/node_modules/get-intrinsic/index.js +var require_get_intrinsic = __commonJS({ + "../node_modules/.pnpm/get-intrinsic@1.2.1/node_modules/get-intrinsic/index.js"(exports2, module2) { + "use strict"; + var undefined2; + var $SyntaxError = SyntaxError; + var $Function = Function; + var $TypeError = TypeError; + var getEvalledConstructor = function(expressionSyntax) { + try { + return $Function('"use strict"; return (' + expressionSyntax + ").constructor;")(); + } catch (e) { + } + }; + var $gOPD = Object.getOwnPropertyDescriptor; + if ($gOPD) { + try { + $gOPD({}, ""); + } catch (e) { + $gOPD = null; + } + } + var throwTypeError = function() { + throw new $TypeError(); + }; + var ThrowTypeError = $gOPD ? function() { + try { + arguments.callee; + return throwTypeError; + } catch (calleeThrows) { + try { + return $gOPD(arguments, "callee").get; + } catch (gOPDthrows) { + return throwTypeError; + } + } + }() : throwTypeError; + var hasSymbols = require_has_symbols()(); + var hasProto = require_has_proto()(); + var getProto = Object.getPrototypeOf || (hasProto ? function(x) { + return x.__proto__; + } : null); + var needsEval = {}; + var TypedArray = typeof Uint8Array === "undefined" || !getProto ? undefined2 : getProto(Uint8Array); + var INTRINSICS = { + "%AggregateError%": typeof AggregateError === "undefined" ? undefined2 : AggregateError, + "%Array%": Array, + "%ArrayBuffer%": typeof ArrayBuffer === "undefined" ? undefined2 : ArrayBuffer, + "%ArrayIteratorPrototype%": hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined2, + "%AsyncFromSyncIteratorPrototype%": undefined2, + "%AsyncFunction%": needsEval, + "%AsyncGenerator%": needsEval, + "%AsyncGeneratorFunction%": needsEval, + "%AsyncIteratorPrototype%": needsEval, + "%Atomics%": typeof Atomics === "undefined" ? undefined2 : Atomics, + "%BigInt%": typeof BigInt === "undefined" ? undefined2 : BigInt, + "%BigInt64Array%": typeof BigInt64Array === "undefined" ? undefined2 : BigInt64Array, + "%BigUint64Array%": typeof BigUint64Array === "undefined" ? undefined2 : BigUint64Array, + "%Boolean%": Boolean, + "%DataView%": typeof DataView === "undefined" ? undefined2 : DataView, + "%Date%": Date, + "%decodeURI%": decodeURI, + "%decodeURIComponent%": decodeURIComponent, + "%encodeURI%": encodeURI, + "%encodeURIComponent%": encodeURIComponent, + "%Error%": Error, + "%eval%": eval, + // eslint-disable-line no-eval + "%EvalError%": EvalError, + "%Float32Array%": typeof Float32Array === "undefined" ? undefined2 : Float32Array, + "%Float64Array%": typeof Float64Array === "undefined" ? undefined2 : Float64Array, + "%FinalizationRegistry%": typeof FinalizationRegistry === "undefined" ? undefined2 : FinalizationRegistry, + "%Function%": $Function, + "%GeneratorFunction%": needsEval, + "%Int8Array%": typeof Int8Array === "undefined" ? undefined2 : Int8Array, + "%Int16Array%": typeof Int16Array === "undefined" ? undefined2 : Int16Array, + "%Int32Array%": typeof Int32Array === "undefined" ? undefined2 : Int32Array, + "%isFinite%": isFinite, + "%isNaN%": isNaN, + "%IteratorPrototype%": hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined2, + "%JSON%": typeof JSON === "object" ? JSON : undefined2, + "%Map%": typeof Map === "undefined" ? undefined2 : Map, + "%MapIteratorPrototype%": typeof Map === "undefined" || !hasSymbols || !getProto ? undefined2 : getProto((/* @__PURE__ */ new Map())[Symbol.iterator]()), + "%Math%": Math, + "%Number%": Number, + "%Object%": Object, + "%parseFloat%": parseFloat, + "%parseInt%": parseInt, + "%Promise%": typeof Promise === "undefined" ? undefined2 : Promise, + "%Proxy%": typeof Proxy === "undefined" ? undefined2 : Proxy, + "%RangeError%": RangeError, + "%ReferenceError%": ReferenceError, + "%Reflect%": typeof Reflect === "undefined" ? undefined2 : Reflect, + "%RegExp%": RegExp, + "%Set%": typeof Set === "undefined" ? undefined2 : Set, + "%SetIteratorPrototype%": typeof Set === "undefined" || !hasSymbols || !getProto ? undefined2 : getProto((/* @__PURE__ */ new Set())[Symbol.iterator]()), + "%SharedArrayBuffer%": typeof SharedArrayBuffer === "undefined" ? undefined2 : SharedArrayBuffer, + "%String%": String, + "%StringIteratorPrototype%": hasSymbols && getProto ? getProto(""[Symbol.iterator]()) : undefined2, + "%Symbol%": hasSymbols ? Symbol : undefined2, + "%SyntaxError%": $SyntaxError, + "%ThrowTypeError%": ThrowTypeError, + "%TypedArray%": TypedArray, + "%TypeError%": $TypeError, + "%Uint8Array%": typeof Uint8Array === "undefined" ? undefined2 : Uint8Array, + "%Uint8ClampedArray%": typeof Uint8ClampedArray === "undefined" ? undefined2 : Uint8ClampedArray, + "%Uint16Array%": typeof Uint16Array === "undefined" ? undefined2 : Uint16Array, + "%Uint32Array%": typeof Uint32Array === "undefined" ? undefined2 : Uint32Array, + "%URIError%": URIError, + "%WeakMap%": typeof WeakMap === "undefined" ? undefined2 : WeakMap, + "%WeakRef%": typeof WeakRef === "undefined" ? undefined2 : WeakRef, + "%WeakSet%": typeof WeakSet === "undefined" ? undefined2 : WeakSet + }; + if (getProto) { + try { + null.error; + } catch (e) { + errorProto = getProto(getProto(e)); + INTRINSICS["%Error.prototype%"] = errorProto; + } + } + var errorProto; + var doEval = function doEval2(name) { + var value; + if (name === "%AsyncFunction%") { + value = getEvalledConstructor("async function () {}"); + } else if (name === "%GeneratorFunction%") { + value = getEvalledConstructor("function* () {}"); + } else if (name === "%AsyncGeneratorFunction%") { + value = getEvalledConstructor("async function* () {}"); + } else if (name === "%AsyncGenerator%") { + var fn = doEval2("%AsyncGeneratorFunction%"); + if (fn) { + value = fn.prototype; + } + } else if (name === "%AsyncIteratorPrototype%") { + var gen = doEval2("%AsyncGenerator%"); + if (gen && getProto) { + value = getProto(gen.prototype); + } + } + INTRINSICS[name] = value; + return value; + }; + var LEGACY_ALIASES = { + "%ArrayBufferPrototype%": ["ArrayBuffer", "prototype"], + "%ArrayPrototype%": ["Array", "prototype"], + "%ArrayProto_entries%": ["Array", "prototype", "entries"], + "%ArrayProto_forEach%": ["Array", "prototype", "forEach"], + "%ArrayProto_keys%": ["Array", "prototype", "keys"], + "%ArrayProto_values%": ["Array", "prototype", "values"], + "%AsyncFunctionPrototype%": ["AsyncFunction", "prototype"], + "%AsyncGenerator%": ["AsyncGeneratorFunction", "prototype"], + "%AsyncGeneratorPrototype%": ["AsyncGeneratorFunction", "prototype", "prototype"], + "%BooleanPrototype%": ["Boolean", "prototype"], + "%DataViewPrototype%": ["DataView", "prototype"], + "%DatePrototype%": ["Date", "prototype"], + "%ErrorPrototype%": ["Error", "prototype"], + "%EvalErrorPrototype%": ["EvalError", "prototype"], + "%Float32ArrayPrototype%": ["Float32Array", "prototype"], + "%Float64ArrayPrototype%": ["Float64Array", "prototype"], + "%FunctionPrototype%": ["Function", "prototype"], + "%Generator%": ["GeneratorFunction", "prototype"], + "%GeneratorPrototype%": ["GeneratorFunction", "prototype", "prototype"], + "%Int8ArrayPrototype%": ["Int8Array", "prototype"], + "%Int16ArrayPrototype%": ["Int16Array", "prototype"], + "%Int32ArrayPrototype%": ["Int32Array", "prototype"], + "%JSONParse%": ["JSON", "parse"], + "%JSONStringify%": ["JSON", "stringify"], + "%MapPrototype%": ["Map", "prototype"], + "%NumberPrototype%": ["Number", "prototype"], + "%ObjectPrototype%": ["Object", "prototype"], + "%ObjProto_toString%": ["Object", "prototype", "toString"], + "%ObjProto_valueOf%": ["Object", "prototype", "valueOf"], + "%PromisePrototype%": ["Promise", "prototype"], + "%PromiseProto_then%": ["Promise", "prototype", "then"], + "%Promise_all%": ["Promise", "all"], + "%Promise_reject%": ["Promise", "reject"], + "%Promise_resolve%": ["Promise", "resolve"], + "%RangeErrorPrototype%": ["RangeError", "prototype"], + "%ReferenceErrorPrototype%": ["ReferenceError", "prototype"], + "%RegExpPrototype%": ["RegExp", "prototype"], + "%SetPrototype%": ["Set", "prototype"], + "%SharedArrayBufferPrototype%": ["SharedArrayBuffer", "prototype"], + "%StringPrototype%": ["String", "prototype"], + "%SymbolPrototype%": ["Symbol", "prototype"], + "%SyntaxErrorPrototype%": ["SyntaxError", "prototype"], + "%TypedArrayPrototype%": ["TypedArray", "prototype"], + "%TypeErrorPrototype%": ["TypeError", "prototype"], + "%Uint8ArrayPrototype%": ["Uint8Array", "prototype"], + "%Uint8ClampedArrayPrototype%": ["Uint8ClampedArray", "prototype"], + "%Uint16ArrayPrototype%": ["Uint16Array", "prototype"], + "%Uint32ArrayPrototype%": ["Uint32Array", "prototype"], + "%URIErrorPrototype%": ["URIError", "prototype"], + "%WeakMapPrototype%": ["WeakMap", "prototype"], + "%WeakSetPrototype%": ["WeakSet", "prototype"] + }; + var bind2 = require_function_bind(); + var hasOwn = require_src11(); + var $concat = bind2.call(Function.call, Array.prototype.concat); + var $spliceApply = bind2.call(Function.apply, Array.prototype.splice); + var $replace = bind2.call(Function.call, String.prototype.replace); + var $strSlice = bind2.call(Function.call, String.prototype.slice); + var $exec = bind2.call(Function.call, RegExp.prototype.exec); + var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g; + var reEscapeChar = /\\(\\)?/g; + var stringToPath = function stringToPath2(string) { + var first = $strSlice(string, 0, 1); + var last = $strSlice(string, -1); + if (first === "%" && last !== "%") { + throw new $SyntaxError("invalid intrinsic syntax, expected closing `%`"); + } else if (last === "%" && first !== "%") { + throw new $SyntaxError("invalid intrinsic syntax, expected opening `%`"); + } + var result = []; + $replace(string, rePropName, function(match2, number, quote, subString) { + result[result.length] = quote ? $replace(subString, reEscapeChar, "$1") : number || match2; + }); + return result; + }; + var getBaseIntrinsic = function getBaseIntrinsic2(name, allowMissing) { + var intrinsicName = name; + var alias; + if (hasOwn(LEGACY_ALIASES, intrinsicName)) { + alias = LEGACY_ALIASES[intrinsicName]; + intrinsicName = "%" + alias[0] + "%"; + } + if (hasOwn(INTRINSICS, intrinsicName)) { + var value = INTRINSICS[intrinsicName]; + if (value === needsEval) { + value = doEval(intrinsicName); + } + if (typeof value === "undefined" && !allowMissing) { + throw new $TypeError("intrinsic " + name + " exists, but is not available. Please file an issue!"); + } + return { + alias, + name: intrinsicName, + value + }; + } + throw new $SyntaxError("intrinsic " + name + " does not exist!"); + }; + module2.exports = function GetIntrinsic(name, allowMissing) { + if (typeof name !== "string" || name.length === 0) { + throw new $TypeError("intrinsic name must be a non-empty string"); + } + if (arguments.length > 1 && typeof allowMissing !== "boolean") { + throw new $TypeError('"allowMissing" argument must be a boolean'); + } + if ($exec(/^%?[^%]*%?$/, name) === null) { + throw new $SyntaxError("`%` may not be present anywhere but at the beginning and end of the intrinsic name"); + } + var parts = stringToPath(name); + var intrinsicBaseName = parts.length > 0 ? parts[0] : ""; + var intrinsic = getBaseIntrinsic("%" + intrinsicBaseName + "%", allowMissing); + var intrinsicRealName = intrinsic.name; + var value = intrinsic.value; + var skipFurtherCaching = false; + var alias = intrinsic.alias; + if (alias) { + intrinsicBaseName = alias[0]; + $spliceApply(parts, $concat([0, 1], alias)); + } + for (var i = 1, isOwn = true; i < parts.length; i += 1) { + var part = parts[i]; + var first = $strSlice(part, 0, 1); + var last = $strSlice(part, -1); + if ((first === '"' || first === "'" || first === "`" || (last === '"' || last === "'" || last === "`")) && first !== last) { + throw new $SyntaxError("property names with quotes must have matching quotes"); + } + if (part === "constructor" || !isOwn) { + skipFurtherCaching = true; + } + intrinsicBaseName += "." + part; + intrinsicRealName = "%" + intrinsicBaseName + "%"; + if (hasOwn(INTRINSICS, intrinsicRealName)) { + value = INTRINSICS[intrinsicRealName]; + } else if (value != null) { + if (!(part in value)) { + if (!allowMissing) { + throw new $TypeError("base intrinsic for " + name + " exists, but the property is not available."); + } + return void 0; + } + if ($gOPD && i + 1 >= parts.length) { + var desc = $gOPD(value, part); + isOwn = !!desc; + if (isOwn && "get" in desc && !("originalValue" in desc.get)) { + value = desc.get; + } else { + value = value[part]; + } + } else { + isOwn = hasOwn(value, part); + value = value[part]; + } + if (isOwn && !skipFurtherCaching) { + INTRINSICS[intrinsicRealName] = value; + } + } + } + return value; + }; + } +}); + +// ../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/index.js +var require_call_bind = __commonJS({ + "../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/index.js"(exports2, module2) { + "use strict"; + var bind2 = require_function_bind(); + var GetIntrinsic = require_get_intrinsic(); + var $apply = GetIntrinsic("%Function.prototype.apply%"); + var $call = GetIntrinsic("%Function.prototype.call%"); + var $reflectApply = GetIntrinsic("%Reflect.apply%", true) || bind2.call($call, $apply); + var $gOPD = GetIntrinsic("%Object.getOwnPropertyDescriptor%", true); + var $defineProperty = GetIntrinsic("%Object.defineProperty%", true); + var $max = GetIntrinsic("%Math.max%"); + if ($defineProperty) { + try { + $defineProperty({}, "a", { value: 1 }); + } catch (e) { + $defineProperty = null; + } + } + module2.exports = function callBind(originalFunction) { + var func2 = $reflectApply(bind2, $call, arguments); + if ($gOPD && $defineProperty) { + var desc = $gOPD(func2, "length"); + if (desc.configurable) { + $defineProperty( + func2, + "length", + { value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) } + ); + } + } + return func2; + }; + var applyBind = function applyBind2() { + return $reflectApply(bind2, $apply, arguments); + }; + if ($defineProperty) { + $defineProperty(module2.exports, "apply", { value: applyBind }); + } else { + module2.exports.apply = applyBind; + } + } +}); + +// ../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/callBound.js +var require_callBound = __commonJS({ + "../node_modules/.pnpm/call-bind@1.0.2/node_modules/call-bind/callBound.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var callBind = require_call_bind(); + var $indexOf = callBind(GetIntrinsic("String.prototype.indexOf")); + module2.exports = function callBoundIntrinsic(name, allowMissing) { + var intrinsic = GetIntrinsic(name, !!allowMissing); + if (typeof intrinsic === "function" && $indexOf(name, ".prototype.") > -1) { + return callBind(intrinsic); + } + return intrinsic; + }; + } +}); + +// ../node_modules/.pnpm/object-inspect@1.12.3/node_modules/object-inspect/util.inspect.js +var require_util_inspect = __commonJS({ + "../node_modules/.pnpm/object-inspect@1.12.3/node_modules/object-inspect/util.inspect.js"(exports2, module2) { + module2.exports = require("util").inspect; + } +}); + +// ../node_modules/.pnpm/object-inspect@1.12.3/node_modules/object-inspect/index.js +var require_object_inspect = __commonJS({ + "../node_modules/.pnpm/object-inspect@1.12.3/node_modules/object-inspect/index.js"(exports2, module2) { + var hasMap = typeof Map === "function" && Map.prototype; + var mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, "size") : null; + var mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === "function" ? mapSizeDescriptor.get : null; + var mapForEach = hasMap && Map.prototype.forEach; + var hasSet = typeof Set === "function" && Set.prototype; + var setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, "size") : null; + var setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === "function" ? setSizeDescriptor.get : null; + var setForEach = hasSet && Set.prototype.forEach; + var hasWeakMap = typeof WeakMap === "function" && WeakMap.prototype; + var weakMapHas = hasWeakMap ? WeakMap.prototype.has : null; + var hasWeakSet = typeof WeakSet === "function" && WeakSet.prototype; + var weakSetHas = hasWeakSet ? WeakSet.prototype.has : null; + var hasWeakRef = typeof WeakRef === "function" && WeakRef.prototype; + var weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null; + var booleanValueOf = Boolean.prototype.valueOf; + var objectToString = Object.prototype.toString; + var functionToString = Function.prototype.toString; + var $match = String.prototype.match; + var $slice = String.prototype.slice; + var $replace = String.prototype.replace; + var $toUpperCase = String.prototype.toUpperCase; + var $toLowerCase = String.prototype.toLowerCase; + var $test = RegExp.prototype.test; + var $concat = Array.prototype.concat; + var $join = Array.prototype.join; + var $arrSlice = Array.prototype.slice; + var $floor = Math.floor; + var bigIntValueOf = typeof BigInt === "function" ? BigInt.prototype.valueOf : null; + var gOPS = Object.getOwnPropertySymbols; + var symToString = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? Symbol.prototype.toString : null; + var hasShammedSymbols = typeof Symbol === "function" && typeof Symbol.iterator === "object"; + var toStringTag = typeof Symbol === "function" && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? "object" : "symbol") ? Symbol.toStringTag : null; + var isEnumerable = Object.prototype.propertyIsEnumerable; + var gPO = (typeof Reflect === "function" ? Reflect.getPrototypeOf : Object.getPrototypeOf) || ([].__proto__ === Array.prototype ? function(O) { + return O.__proto__; + } : null); + function addNumericSeparator(num, str) { + if (num === Infinity || num === -Infinity || num !== num || num && num > -1e3 && num < 1e3 || $test.call(/e/, str)) { + return str; + } + var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g; + if (typeof num === "number") { + var int = num < 0 ? -$floor(-num) : $floor(num); + if (int !== num) { + var intStr = String(int); + var dec = $slice.call(str, intStr.length + 1); + return $replace.call(intStr, sepRegex, "$&_") + "." + $replace.call($replace.call(dec, /([0-9]{3})/g, "$&_"), /_$/, ""); + } + } + return $replace.call(str, sepRegex, "$&_"); + } + var utilInspect = require_util_inspect(); + var inspectCustom = utilInspect.custom; + var inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null; + module2.exports = function inspect_(obj2, options2, depth, seen) { + var opts = options2 || {}; + if (has(opts, "quoteStyle") && (opts.quoteStyle !== "single" && opts.quoteStyle !== "double")) { + throw new TypeError('option "quoteStyle" must be "single" or "double"'); + } + if (has(opts, "maxStringLength") && (typeof opts.maxStringLength === "number" ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity : opts.maxStringLength !== null)) { + throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`'); + } + var customInspect = has(opts, "customInspect") ? opts.customInspect : true; + if (typeof customInspect !== "boolean" && customInspect !== "symbol") { + throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`"); + } + if (has(opts, "indent") && opts.indent !== null && opts.indent !== " " && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)) { + throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`'); + } + if (has(opts, "numericSeparator") && typeof opts.numericSeparator !== "boolean") { + throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`'); + } + var numericSeparator = opts.numericSeparator; + if (typeof obj2 === "undefined") { + return "undefined"; + } + if (obj2 === null) { + return "null"; + } + if (typeof obj2 === "boolean") { + return obj2 ? "true" : "false"; + } + if (typeof obj2 === "string") { + return inspectString(obj2, opts); + } + if (typeof obj2 === "number") { + if (obj2 === 0) { + return Infinity / obj2 > 0 ? "0" : "-0"; + } + var str = String(obj2); + return numericSeparator ? addNumericSeparator(obj2, str) : str; + } + if (typeof obj2 === "bigint") { + var bigIntStr = String(obj2) + "n"; + return numericSeparator ? addNumericSeparator(obj2, bigIntStr) : bigIntStr; + } + var maxDepth = typeof opts.depth === "undefined" ? 5 : opts.depth; + if (typeof depth === "undefined") { + depth = 0; + } + if (depth >= maxDepth && maxDepth > 0 && typeof obj2 === "object") { + return isArray2(obj2) ? "[Array]" : "[Object]"; + } + var indent = getIndent(opts, depth); + if (typeof seen === "undefined") { + seen = []; + } else if (indexOf(seen, obj2) >= 0) { + return "[Circular]"; + } + function inspect2(value, from, noIndent) { + if (from) { + seen = $arrSlice.call(seen); + seen.push(from); + } + if (noIndent) { + var newOpts = { + depth: opts.depth + }; + if (has(opts, "quoteStyle")) { + newOpts.quoteStyle = opts.quoteStyle; + } + return inspect_(value, newOpts, depth + 1, seen); + } + return inspect_(value, opts, depth + 1, seen); + } + if (typeof obj2 === "function" && !isRegExp2(obj2)) { + var name = nameOf(obj2); + var keys = arrObjKeys(obj2, inspect2); + return "[Function" + (name ? ": " + name : " (anonymous)") + "]" + (keys.length > 0 ? " { " + $join.call(keys, ", ") + " }" : ""); + } + if (isSymbol(obj2)) { + var symString = hasShammedSymbols ? $replace.call(String(obj2), /^(Symbol\(.*\))_[^)]*$/, "$1") : symToString.call(obj2); + return typeof obj2 === "object" && !hasShammedSymbols ? markBoxed(symString) : symString; + } + if (isElement(obj2)) { + var s = "<" + $toLowerCase.call(String(obj2.nodeName)); + var attrs = obj2.attributes || []; + for (var i = 0; i < attrs.length; i++) { + s += " " + attrs[i].name + "=" + wrapQuotes(quote(attrs[i].value), "double", opts); + } + s += ">"; + if (obj2.childNodes && obj2.childNodes.length) { + s += "..."; + } + s += ""; + return s; + } + if (isArray2(obj2)) { + if (obj2.length === 0) { + return "[]"; + } + var xs = arrObjKeys(obj2, inspect2); + if (indent && !singleLineValues(xs)) { + return "[" + indentedJoin(xs, indent) + "]"; + } + return "[ " + $join.call(xs, ", ") + " ]"; + } + if (isError4(obj2)) { + var parts = arrObjKeys(obj2, inspect2); + if (!("cause" in Error.prototype) && "cause" in obj2 && !isEnumerable.call(obj2, "cause")) { + return "{ [" + String(obj2) + "] " + $join.call($concat.call("[cause]: " + inspect2(obj2.cause), parts), ", ") + " }"; + } + if (parts.length === 0) { + return "[" + String(obj2) + "]"; + } + return "{ [" + String(obj2) + "] " + $join.call(parts, ", ") + " }"; + } + if (typeof obj2 === "object" && customInspect) { + if (inspectSymbol && typeof obj2[inspectSymbol] === "function" && utilInspect) { + return utilInspect(obj2, { depth: maxDepth - depth }); + } else if (customInspect !== "symbol" && typeof obj2.inspect === "function") { + return obj2.inspect(); + } + } + if (isMap(obj2)) { + var mapParts = []; + if (mapForEach) { + mapForEach.call(obj2, function(value, key) { + mapParts.push(inspect2(key, obj2, true) + " => " + inspect2(value, obj2)); + }); + } + return collectionOf("Map", mapSize.call(obj2), mapParts, indent); + } + if (isSet(obj2)) { + var setParts = []; + if (setForEach) { + setForEach.call(obj2, function(value) { + setParts.push(inspect2(value, obj2)); + }); + } + return collectionOf("Set", setSize.call(obj2), setParts, indent); + } + if (isWeakMap(obj2)) { + return weakCollectionOf("WeakMap"); + } + if (isWeakSet(obj2)) { + return weakCollectionOf("WeakSet"); + } + if (isWeakRef(obj2)) { + return weakCollectionOf("WeakRef"); + } + if (isNumber2(obj2)) { + return markBoxed(inspect2(Number(obj2))); + } + if (isBigInt(obj2)) { + return markBoxed(inspect2(bigIntValueOf.call(obj2))); + } + if (isBoolean2(obj2)) { + return markBoxed(booleanValueOf.call(obj2)); + } + if (isString2(obj2)) { + return markBoxed(inspect2(String(obj2))); + } + if (!isDate2(obj2) && !isRegExp2(obj2)) { + var ys = arrObjKeys(obj2, inspect2); + var isPlainObject2 = gPO ? gPO(obj2) === Object.prototype : obj2 instanceof Object || obj2.constructor === Object; + var protoTag = obj2 instanceof Object ? "" : "null prototype"; + var stringTag = !isPlainObject2 && toStringTag && Object(obj2) === obj2 && toStringTag in obj2 ? $slice.call(toStr(obj2), 8, -1) : protoTag ? "Object" : ""; + var constructorTag = isPlainObject2 || typeof obj2.constructor !== "function" ? "" : obj2.constructor.name ? obj2.constructor.name + " " : ""; + var tag = constructorTag + (stringTag || protoTag ? "[" + $join.call($concat.call([], stringTag || [], protoTag || []), ": ") + "] " : ""); + if (ys.length === 0) { + return tag + "{}"; + } + if (indent) { + return tag + "{" + indentedJoin(ys, indent) + "}"; + } + return tag + "{ " + $join.call(ys, ", ") + " }"; + } + return String(obj2); + }; + function wrapQuotes(s, defaultStyle, opts) { + var quoteChar = (opts.quoteStyle || defaultStyle) === "double" ? '"' : "'"; + return quoteChar + s + quoteChar; + } + function quote(s) { + return $replace.call(String(s), /"/g, """); + } + function isArray2(obj2) { + return toStr(obj2) === "[object Array]" && (!toStringTag || !(typeof obj2 === "object" && toStringTag in obj2)); + } + function isDate2(obj2) { + return toStr(obj2) === "[object Date]" && (!toStringTag || !(typeof obj2 === "object" && toStringTag in obj2)); + } + function isRegExp2(obj2) { + return toStr(obj2) === "[object RegExp]" && (!toStringTag || !(typeof obj2 === "object" && toStringTag in obj2)); + } + function isError4(obj2) { + return toStr(obj2) === "[object Error]" && (!toStringTag || !(typeof obj2 === "object" && toStringTag in obj2)); + } + function isString2(obj2) { + return toStr(obj2) === "[object String]" && (!toStringTag || !(typeof obj2 === "object" && toStringTag in obj2)); + } + function isNumber2(obj2) { + return toStr(obj2) === "[object Number]" && (!toStringTag || !(typeof obj2 === "object" && toStringTag in obj2)); + } + function isBoolean2(obj2) { + return toStr(obj2) === "[object Boolean]" && (!toStringTag || !(typeof obj2 === "object" && toStringTag in obj2)); + } + function isSymbol(obj2) { + if (hasShammedSymbols) { + return obj2 && typeof obj2 === "object" && obj2 instanceof Symbol; + } + if (typeof obj2 === "symbol") { + return true; + } + if (!obj2 || typeof obj2 !== "object" || !symToString) { + return false; + } + try { + symToString.call(obj2); + return true; + } catch (e) { + } + return false; + } + function isBigInt(obj2) { + if (!obj2 || typeof obj2 !== "object" || !bigIntValueOf) { + return false; + } + try { + bigIntValueOf.call(obj2); + return true; + } catch (e) { + } + return false; + } + var hasOwn = Object.prototype.hasOwnProperty || function(key) { + return key in this; + }; + function has(obj2, key) { + return hasOwn.call(obj2, key); + } + function toStr(obj2) { + return objectToString.call(obj2); + } + function nameOf(f) { + if (f.name) { + return f.name; + } + var m = $match.call(functionToString.call(f), /^function\s*([\w$]+)/); + if (m) { + return m[1]; + } + return null; + } + function indexOf(xs, x) { + if (xs.indexOf) { + return xs.indexOf(x); + } + for (var i = 0, l2 = xs.length; i < l2; i++) { + if (xs[i] === x) { + return i; + } + } + return -1; + } + function isMap(x) { + if (!mapSize || !x || typeof x !== "object") { + return false; + } + try { + mapSize.call(x); + try { + setSize.call(x); + } catch (s) { + return true; + } + return x instanceof Map; + } catch (e) { + } + return false; + } + function isWeakMap(x) { + if (!weakMapHas || !x || typeof x !== "object") { + return false; + } + try { + weakMapHas.call(x, weakMapHas); + try { + weakSetHas.call(x, weakSetHas); + } catch (s) { + return true; + } + return x instanceof WeakMap; + } catch (e) { + } + return false; + } + function isWeakRef(x) { + if (!weakRefDeref || !x || typeof x !== "object") { + return false; + } + try { + weakRefDeref.call(x); + return true; + } catch (e) { + } + return false; + } + function isSet(x) { + if (!setSize || !x || typeof x !== "object") { + return false; + } + try { + setSize.call(x); + try { + mapSize.call(x); + } catch (m) { + return true; + } + return x instanceof Set; + } catch (e) { + } + return false; + } + function isWeakSet(x) { + if (!weakSetHas || !x || typeof x !== "object") { + return false; + } + try { + weakSetHas.call(x, weakSetHas); + try { + weakMapHas.call(x, weakMapHas); + } catch (s) { + return true; + } + return x instanceof WeakSet; + } catch (e) { + } + return false; + } + function isElement(x) { + if (!x || typeof x !== "object") { + return false; + } + if (typeof HTMLElement !== "undefined" && x instanceof HTMLElement) { + return true; + } + return typeof x.nodeName === "string" && typeof x.getAttribute === "function"; + } + function inspectString(str, opts) { + if (str.length > opts.maxStringLength) { + var remaining = str.length - opts.maxStringLength; + var trailer = "... " + remaining + " more character" + (remaining > 1 ? "s" : ""); + return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer; + } + var s = $replace.call($replace.call(str, /(['\\])/g, "\\$1"), /[\x00-\x1f]/g, lowbyte); + return wrapQuotes(s, "single", opts); + } + function lowbyte(c) { + var n = c.charCodeAt(0); + var x = { + 8: "b", + 9: "t", + 10: "n", + 12: "f", + 13: "r" + }[n]; + if (x) { + return "\\" + x; + } + return "\\x" + (n < 16 ? "0" : "") + $toUpperCase.call(n.toString(16)); + } + function markBoxed(str) { + return "Object(" + str + ")"; + } + function weakCollectionOf(type2) { + return type2 + " { ? }"; + } + function collectionOf(type2, size, entries, indent) { + var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ", "); + return type2 + " (" + size + ") {" + joinedEntries + "}"; + } + function singleLineValues(xs) { + for (var i = 0; i < xs.length; i++) { + if (indexOf(xs[i], "\n") >= 0) { + return false; + } + } + return true; + } + function getIndent(opts, depth) { + var baseIndent; + if (opts.indent === " ") { + baseIndent = " "; + } else if (typeof opts.indent === "number" && opts.indent > 0) { + baseIndent = $join.call(Array(opts.indent + 1), " "); + } else { + return null; + } + return { + base: baseIndent, + prev: $join.call(Array(depth + 1), baseIndent) + }; + } + function indentedJoin(xs, indent) { + if (xs.length === 0) { + return ""; + } + var lineJoiner = "\n" + indent.prev + indent.base; + return lineJoiner + $join.call(xs, "," + lineJoiner) + "\n" + indent.prev; + } + function arrObjKeys(obj2, inspect2) { + var isArr = isArray2(obj2); + var xs = []; + if (isArr) { + xs.length = obj2.length; + for (var i = 0; i < obj2.length; i++) { + xs[i] = has(obj2, i) ? inspect2(obj2[i], obj2) : ""; + } + } + var syms = typeof gOPS === "function" ? gOPS(obj2) : []; + var symMap; + if (hasShammedSymbols) { + symMap = {}; + for (var k = 0; k < syms.length; k++) { + symMap["$" + syms[k]] = syms[k]; + } + } + for (var key in obj2) { + if (!has(obj2, key)) { + continue; + } + if (isArr && String(Number(key)) === key && key < obj2.length) { + continue; + } + if (hasShammedSymbols && symMap["$" + key] instanceof Symbol) { + continue; + } else if ($test.call(/[^\w$]/, key)) { + xs.push(inspect2(key, obj2) + ": " + inspect2(obj2[key], obj2)); + } else { + xs.push(key + ": " + inspect2(obj2[key], obj2)); + } + } + if (typeof gOPS === "function") { + for (var j = 0; j < syms.length; j++) { + if (isEnumerable.call(obj2, syms[j])) { + xs.push("[" + inspect2(syms[j]) + "]: " + inspect2(obj2[syms[j]], obj2)); + } + } + } + return xs; + } + } +}); + +// ../node_modules/.pnpm/side-channel@1.0.4/node_modules/side-channel/index.js +var require_side_channel = __commonJS({ + "../node_modules/.pnpm/side-channel@1.0.4/node_modules/side-channel/index.js"(exports2, module2) { + "use strict"; + var GetIntrinsic = require_get_intrinsic(); + var callBound = require_callBound(); + var inspect2 = require_object_inspect(); + var $TypeError = GetIntrinsic("%TypeError%"); + var $WeakMap = GetIntrinsic("%WeakMap%", true); + var $Map = GetIntrinsic("%Map%", true); + var $weakMapGet = callBound("WeakMap.prototype.get", true); + var $weakMapSet = callBound("WeakMap.prototype.set", true); + var $weakMapHas = callBound("WeakMap.prototype.has", true); + var $mapGet = callBound("Map.prototype.get", true); + var $mapSet = callBound("Map.prototype.set", true); + var $mapHas = callBound("Map.prototype.has", true); + var listGetNode = function(list, key) { + for (var prev = list, curr; (curr = prev.next) !== null; prev = curr) { + if (curr.key === key) { + prev.next = curr.next; + curr.next = list.next; + list.next = curr; + return curr; + } + } + }; + var listGet = function(objects, key) { + var node = listGetNode(objects, key); + return node && node.value; + }; + var listSet = function(objects, key, value) { + var node = listGetNode(objects, key); + if (node) { + node.value = value; + } else { + objects.next = { + // eslint-disable-line no-param-reassign + key, + next: objects.next, + value + }; + } + }; + var listHas = function(objects, key) { + return !!listGetNode(objects, key); + }; + module2.exports = function getSideChannel() { + var $wm; + var $m; + var $o; + var channel = { + assert: function(key) { + if (!channel.has(key)) { + throw new $TypeError("Side channel does not contain " + inspect2(key)); + } + }, + get: function(key) { + if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) { + if ($wm) { + return $weakMapGet($wm, key); + } + } else if ($Map) { + if ($m) { + return $mapGet($m, key); + } + } else { + if ($o) { + return listGet($o, key); + } + } + }, + has: function(key) { + if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) { + if ($wm) { + return $weakMapHas($wm, key); + } + } else if ($Map) { + if ($m) { + return $mapHas($m, key); + } + } else { + if ($o) { + return listHas($o, key); + } + } + return false; + }, + set: function(key, value) { + if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) { + if (!$wm) { + $wm = new $WeakMap(); + } + $weakMapSet($wm, key, value); + } else if ($Map) { + if (!$m) { + $m = new $Map(); + } + $mapSet($m, key, value); + } else { + if (!$o) { + $o = { key: {}, next: null }; + } + listSet($o, key, value); + } + } + }; + return channel; + }; + } +}); + +// ../node_modules/.pnpm/qs@6.11.2/node_modules/qs/lib/formats.js +var require_formats = __commonJS({ + "../node_modules/.pnpm/qs@6.11.2/node_modules/qs/lib/formats.js"(exports2, module2) { + "use strict"; + var replace = String.prototype.replace; + var percentTwenties = /%20/g; + var Format = { + RFC1738: "RFC1738", + RFC3986: "RFC3986" + }; + module2.exports = { + "default": Format.RFC3986, + formatters: { + RFC1738: function(value) { + return replace.call(value, percentTwenties, "+"); + }, + RFC3986: function(value) { + return String(value); + } + }, + RFC1738: Format.RFC1738, + RFC3986: Format.RFC3986 + }; + } +}); + +// ../node_modules/.pnpm/qs@6.11.2/node_modules/qs/lib/utils.js +var require_utils17 = __commonJS({ + "../node_modules/.pnpm/qs@6.11.2/node_modules/qs/lib/utils.js"(exports2, module2) { + "use strict"; + var formats = require_formats(); + var has = Object.prototype.hasOwnProperty; + var isArray2 = Array.isArray; + var hexTable = function() { + var array = []; + for (var i = 0; i < 256; ++i) { + array.push("%" + ((i < 16 ? "0" : "") + i.toString(16)).toUpperCase()); + } + return array; + }(); + var compactQueue = function compactQueue2(queue) { + while (queue.length > 1) { + var item = queue.pop(); + var obj2 = item.obj[item.prop]; + if (isArray2(obj2)) { + var compacted = []; + for (var j = 0; j < obj2.length; ++j) { + if (typeof obj2[j] !== "undefined") { + compacted.push(obj2[j]); + } + } + item.obj[item.prop] = compacted; + } + } + }; + var arrayToObject2 = function arrayToObject3(source2, options2) { + var obj2 = options2 && options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {}; + for (var i = 0; i < source2.length; ++i) { + if (typeof source2[i] !== "undefined") { + obj2[i] = source2[i]; + } + } + return obj2; + }; + var merge3 = function merge4(target, source2, options2) { + if (!source2) { + return target; + } + if (typeof source2 !== "object") { + if (isArray2(target)) { + target.push(source2); + } else if (target && typeof target === "object") { + if (options2 && (options2.plainObjects || options2.allowPrototypes) || !has.call(Object.prototype, source2)) { + target[source2] = true; + } + } else { + return [target, source2]; + } + return target; + } + if (!target || typeof target !== "object") { + return [target].concat(source2); + } + var mergeTarget = target; + if (isArray2(target) && !isArray2(source2)) { + mergeTarget = arrayToObject2(target, options2); + } + if (isArray2(target) && isArray2(source2)) { + source2.forEach(function(item, i) { + if (has.call(target, i)) { + var targetItem = target[i]; + if (targetItem && typeof targetItem === "object" && item && typeof item === "object") { + target[i] = merge4(targetItem, item, options2); + } else { + target.push(item); + } + } else { + target[i] = item; + } + }); + return target; + } + return Object.keys(source2).reduce(function(acc, key) { + var value = source2[key]; + if (has.call(acc, key)) { + acc[key] = merge4(acc[key], value, options2); + } else { + acc[key] = value; + } + return acc; + }, mergeTarget); + }; + var assign = function assignSingleSource(target, source2) { + return Object.keys(source2).reduce(function(acc, key) { + acc[key] = source2[key]; + return acc; + }, target); + }; + var decode = function(str, decoder, charset) { + var strWithoutPlus = str.replace(/\+/g, " "); + if (charset === "iso-8859-1") { + return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape); + } + try { + return decodeURIComponent(strWithoutPlus); + } catch (e) { + return strWithoutPlus; + } + }; + var encode3 = function encode4(str, defaultEncoder, charset, kind, format) { + if (str.length === 0) { + return str; + } + var string = str; + if (typeof str === "symbol") { + string = Symbol.prototype.toString.call(str); + } else if (typeof str !== "string") { + string = String(str); + } + if (charset === "iso-8859-1") { + return escape(string).replace(/%u[0-9a-f]{4}/gi, function($0) { + return "%26%23" + parseInt($0.slice(2), 16) + "%3B"; + }); + } + var out2 = ""; + for (var i = 0; i < string.length; ++i) { + var c = string.charCodeAt(i); + if (c === 45 || c === 46 || c === 95 || c === 126 || c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c <= 122 || format === formats.RFC1738 && (c === 40 || c === 41)) { + out2 += string.charAt(i); + continue; + } + if (c < 128) { + out2 = out2 + hexTable[c]; + continue; + } + if (c < 2048) { + out2 = out2 + (hexTable[192 | c >> 6] + hexTable[128 | c & 63]); + continue; + } + if (c < 55296 || c >= 57344) { + out2 = out2 + (hexTable[224 | c >> 12] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63]); + continue; + } + i += 1; + c = 65536 + ((c & 1023) << 10 | string.charCodeAt(i) & 1023); + out2 += hexTable[240 | c >> 18] + hexTable[128 | c >> 12 & 63] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63]; + } + return out2; + }; + var compact = function compact2(value) { + var queue = [{ obj: { o: value }, prop: "o" }]; + var refs = []; + for (var i = 0; i < queue.length; ++i) { + var item = queue[i]; + var obj2 = item.obj[item.prop]; + var keys = Object.keys(obj2); + for (var j = 0; j < keys.length; ++j) { + var key = keys[j]; + var val = obj2[key]; + if (typeof val === "object" && val !== null && refs.indexOf(val) === -1) { + queue.push({ obj: obj2, prop: key }); + refs.push(val); + } + } + } + compactQueue(queue); + return value; + }; + var isRegExp2 = function isRegExp3(obj2) { + return Object.prototype.toString.call(obj2) === "[object RegExp]"; + }; + var isBuffer2 = function isBuffer3(obj2) { + if (!obj2 || typeof obj2 !== "object") { + return false; + } + return !!(obj2.constructor && obj2.constructor.isBuffer && obj2.constructor.isBuffer(obj2)); + }; + var combine = function combine2(a, b) { + return [].concat(a, b); + }; + var maybeMap = function maybeMap2(val, fn) { + if (isArray2(val)) { + var mapped = []; + for (var i = 0; i < val.length; i += 1) { + mapped.push(fn(val[i])); + } + return mapped; + } + return fn(val); + }; + module2.exports = { + arrayToObject: arrayToObject2, + assign, + combine, + compact, + decode, + encode: encode3, + isBuffer: isBuffer2, + isRegExp: isRegExp2, + maybeMap, + merge: merge3 + }; + } +}); + +// ../node_modules/.pnpm/qs@6.11.2/node_modules/qs/lib/stringify.js +var require_stringify2 = __commonJS({ + "../node_modules/.pnpm/qs@6.11.2/node_modules/qs/lib/stringify.js"(exports2, module2) { + "use strict"; + var getSideChannel = require_side_channel(); + var utils = require_utils17(); + var formats = require_formats(); + var has = Object.prototype.hasOwnProperty; + var arrayPrefixGenerators = { + brackets: function brackets(prefix) { + return prefix + "[]"; + }, + comma: "comma", + indices: function indices(prefix, key) { + return prefix + "[" + key + "]"; + }, + repeat: function repeat(prefix) { + return prefix; + } + }; + var isArray2 = Array.isArray; + var push = Array.prototype.push; + var pushToArray = function(arr, valueOrArray) { + push.apply(arr, isArray2(valueOrArray) ? valueOrArray : [valueOrArray]); + }; + var toISO = Date.prototype.toISOString; + var defaultFormat = formats["default"]; + var defaults4 = { + addQueryPrefix: false, + allowDots: false, + charset: "utf-8", + charsetSentinel: false, + delimiter: "&", + encode: true, + encoder: utils.encode, + encodeValuesOnly: false, + format: defaultFormat, + formatter: formats.formatters[defaultFormat], + // deprecated + indices: false, + serializeDate: function serializeDate(date) { + return toISO.call(date); + }, + skipNulls: false, + strictNullHandling: false + }; + var isNonNullishPrimitive = function isNonNullishPrimitive2(v) { + return typeof v === "string" || typeof v === "number" || typeof v === "boolean" || typeof v === "symbol" || typeof v === "bigint"; + }; + var sentinel = {}; + var stringify = function stringify2(object, prefix, generateArrayPrefix, commaRoundTrip, strictNullHandling, skipNulls, encoder, filter3, sort, allowDots, serializeDate, format, formatter, encodeValuesOnly, charset, sideChannel) { + var obj2 = object; + var tmpSc = sideChannel; + var step = 0; + var findFlag = false; + while ((tmpSc = tmpSc.get(sentinel)) !== void 0 && !findFlag) { + var pos = tmpSc.get(object); + step += 1; + if (typeof pos !== "undefined") { + if (pos === step) { + throw new RangeError("Cyclic object value"); + } else { + findFlag = true; + } + } + if (typeof tmpSc.get(sentinel) === "undefined") { + step = 0; + } + } + if (typeof filter3 === "function") { + obj2 = filter3(prefix, obj2); + } else if (obj2 instanceof Date) { + obj2 = serializeDate(obj2); + } else if (generateArrayPrefix === "comma" && isArray2(obj2)) { + obj2 = utils.maybeMap(obj2, function(value2) { + if (value2 instanceof Date) { + return serializeDate(value2); + } + return value2; + }); + } + if (obj2 === null) { + if (strictNullHandling) { + return encoder && !encodeValuesOnly ? encoder(prefix, defaults4.encoder, charset, "key", format) : prefix; + } + obj2 = ""; + } + if (isNonNullishPrimitive(obj2) || utils.isBuffer(obj2)) { + if (encoder) { + var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults4.encoder, charset, "key", format); + return [formatter(keyValue) + "=" + formatter(encoder(obj2, defaults4.encoder, charset, "value", format))]; + } + return [formatter(prefix) + "=" + formatter(String(obj2))]; + } + var values = []; + if (typeof obj2 === "undefined") { + return values; + } + var objKeys; + if (generateArrayPrefix === "comma" && isArray2(obj2)) { + if (encodeValuesOnly && encoder) { + obj2 = utils.maybeMap(obj2, encoder); + } + objKeys = [{ value: obj2.length > 0 ? obj2.join(",") || null : void 0 }]; + } else if (isArray2(filter3)) { + objKeys = filter3; + } else { + var keys = Object.keys(obj2); + objKeys = sort ? keys.sort(sort) : keys; + } + var adjustedPrefix = commaRoundTrip && isArray2(obj2) && obj2.length === 1 ? prefix + "[]" : prefix; + for (var j = 0; j < objKeys.length; ++j) { + var key = objKeys[j]; + var value = typeof key === "object" && typeof key.value !== "undefined" ? key.value : obj2[key]; + if (skipNulls && value === null) { + continue; + } + var keyPrefix = isArray2(obj2) ? typeof generateArrayPrefix === "function" ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix : adjustedPrefix + (allowDots ? "." + key : "[" + key + "]"); + sideChannel.set(object, step); + var valueSideChannel = getSideChannel(); + valueSideChannel.set(sentinel, sideChannel); + pushToArray(values, stringify2( + value, + keyPrefix, + generateArrayPrefix, + commaRoundTrip, + strictNullHandling, + skipNulls, + generateArrayPrefix === "comma" && encodeValuesOnly && isArray2(obj2) ? null : encoder, + filter3, + sort, + allowDots, + serializeDate, + format, + formatter, + encodeValuesOnly, + charset, + valueSideChannel + )); + } + return values; + }; + var normalizeStringifyOptions = function normalizeStringifyOptions2(opts) { + if (!opts) { + return defaults4; + } + if (opts.encoder !== null && typeof opts.encoder !== "undefined" && typeof opts.encoder !== "function") { + throw new TypeError("Encoder has to be a function."); + } + var charset = opts.charset || defaults4.charset; + if (typeof opts.charset !== "undefined" && opts.charset !== "utf-8" && opts.charset !== "iso-8859-1") { + throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined"); + } + var format = formats["default"]; + if (typeof opts.format !== "undefined") { + if (!has.call(formats.formatters, opts.format)) { + throw new TypeError("Unknown format option provided."); + } + format = opts.format; + } + var formatter = formats.formatters[format]; + var filter3 = defaults4.filter; + if (typeof opts.filter === "function" || isArray2(opts.filter)) { + filter3 = opts.filter; + } + return { + addQueryPrefix: typeof opts.addQueryPrefix === "boolean" ? opts.addQueryPrefix : defaults4.addQueryPrefix, + allowDots: typeof opts.allowDots === "undefined" ? defaults4.allowDots : !!opts.allowDots, + charset, + charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults4.charsetSentinel, + delimiter: typeof opts.delimiter === "undefined" ? defaults4.delimiter : opts.delimiter, + encode: typeof opts.encode === "boolean" ? opts.encode : defaults4.encode, + encoder: typeof opts.encoder === "function" ? opts.encoder : defaults4.encoder, + encodeValuesOnly: typeof opts.encodeValuesOnly === "boolean" ? opts.encodeValuesOnly : defaults4.encodeValuesOnly, + filter: filter3, + format, + formatter, + serializeDate: typeof opts.serializeDate === "function" ? opts.serializeDate : defaults4.serializeDate, + skipNulls: typeof opts.skipNulls === "boolean" ? opts.skipNulls : defaults4.skipNulls, + sort: typeof opts.sort === "function" ? opts.sort : null, + strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults4.strictNullHandling + }; + }; + module2.exports = function(object, opts) { + var obj2 = object; + var options2 = normalizeStringifyOptions(opts); + var objKeys; + var filter3; + if (typeof options2.filter === "function") { + filter3 = options2.filter; + obj2 = filter3("", obj2); + } else if (isArray2(options2.filter)) { + filter3 = options2.filter; + objKeys = filter3; + } + var keys = []; + if (typeof obj2 !== "object" || obj2 === null) { + return ""; + } + var arrayFormat; + if (opts && opts.arrayFormat in arrayPrefixGenerators) { + arrayFormat = opts.arrayFormat; + } else if (opts && "indices" in opts) { + arrayFormat = opts.indices ? "indices" : "repeat"; + } else { + arrayFormat = "indices"; + } + var generateArrayPrefix = arrayPrefixGenerators[arrayFormat]; + if (opts && "commaRoundTrip" in opts && typeof opts.commaRoundTrip !== "boolean") { + throw new TypeError("`commaRoundTrip` must be a boolean, or absent"); + } + var commaRoundTrip = generateArrayPrefix === "comma" && opts && opts.commaRoundTrip; + if (!objKeys) { + objKeys = Object.keys(obj2); + } + if (options2.sort) { + objKeys.sort(options2.sort); + } + var sideChannel = getSideChannel(); + for (var i = 0; i < objKeys.length; ++i) { + var key = objKeys[i]; + if (options2.skipNulls && obj2[key] === null) { + continue; + } + pushToArray(keys, stringify( + obj2[key], + key, + generateArrayPrefix, + commaRoundTrip, + options2.strictNullHandling, + options2.skipNulls, + options2.encode ? options2.encoder : null, + options2.filter, + options2.sort, + options2.allowDots, + options2.serializeDate, + options2.format, + options2.formatter, + options2.encodeValuesOnly, + options2.charset, + sideChannel + )); + } + var joined = keys.join(options2.delimiter); + var prefix = options2.addQueryPrefix === true ? "?" : ""; + if (options2.charsetSentinel) { + if (options2.charset === "iso-8859-1") { + prefix += "utf8=%26%2310003%3B&"; + } else { + prefix += "utf8=%E2%9C%93&"; + } + } + return joined.length > 0 ? prefix + joined : ""; + }; + } +}); + +// ../node_modules/.pnpm/qs@6.11.2/node_modules/qs/lib/parse.js +var require_parse7 = __commonJS({ + "../node_modules/.pnpm/qs@6.11.2/node_modules/qs/lib/parse.js"(exports2, module2) { + "use strict"; + var utils = require_utils17(); + var has = Object.prototype.hasOwnProperty; + var isArray2 = Array.isArray; + var defaults4 = { + allowDots: false, + allowPrototypes: false, + allowSparse: false, + arrayLimit: 20, + charset: "utf-8", + charsetSentinel: false, + comma: false, + decoder: utils.decode, + delimiter: "&", + depth: 5, + ignoreQueryPrefix: false, + interpretNumericEntities: false, + parameterLimit: 1e3, + parseArrays: true, + plainObjects: false, + strictNullHandling: false + }; + var interpretNumericEntities = function(str) { + return str.replace(/&#(\d+);/g, function($0, numberStr) { + return String.fromCharCode(parseInt(numberStr, 10)); + }); + }; + var parseArrayValue = function(val, options2) { + if (val && typeof val === "string" && options2.comma && val.indexOf(",") > -1) { + return val.split(","); + } + return val; + }; + var isoSentinel = "utf8=%26%2310003%3B"; + var charsetSentinel = "utf8=%E2%9C%93"; + var parseValues = function parseQueryStringValues(str, options2) { + var obj2 = { __proto__: null }; + var cleanStr = options2.ignoreQueryPrefix ? str.replace(/^\?/, "") : str; + var limit = options2.parameterLimit === Infinity ? void 0 : options2.parameterLimit; + var parts = cleanStr.split(options2.delimiter, limit); + var skipIndex = -1; + var i; + var charset = options2.charset; + if (options2.charsetSentinel) { + for (i = 0; i < parts.length; ++i) { + if (parts[i].indexOf("utf8=") === 0) { + if (parts[i] === charsetSentinel) { + charset = "utf-8"; + } else if (parts[i] === isoSentinel) { + charset = "iso-8859-1"; + } + skipIndex = i; + i = parts.length; + } + } + } + for (i = 0; i < parts.length; ++i) { + if (i === skipIndex) { + continue; + } + var part = parts[i]; + var bracketEqualsPos = part.indexOf("]="); + var pos = bracketEqualsPos === -1 ? part.indexOf("=") : bracketEqualsPos + 1; + var key, val; + if (pos === -1) { + key = options2.decoder(part, defaults4.decoder, charset, "key"); + val = options2.strictNullHandling ? null : ""; + } else { + key = options2.decoder(part.slice(0, pos), defaults4.decoder, charset, "key"); + val = utils.maybeMap( + parseArrayValue(part.slice(pos + 1), options2), + function(encodedVal) { + return options2.decoder(encodedVal, defaults4.decoder, charset, "value"); + } + ); + } + if (val && options2.interpretNumericEntities && charset === "iso-8859-1") { + val = interpretNumericEntities(val); + } + if (part.indexOf("[]=") > -1) { + val = isArray2(val) ? [val] : val; + } + if (has.call(obj2, key)) { + obj2[key] = utils.combine(obj2[key], val); + } else { + obj2[key] = val; + } + } + return obj2; + }; + var parseObject = function(chain, val, options2, valuesParsed) { + var leaf = valuesParsed ? val : parseArrayValue(val, options2); + for (var i = chain.length - 1; i >= 0; --i) { + var obj2; + var root = chain[i]; + if (root === "[]" && options2.parseArrays) { + obj2 = [].concat(leaf); + } else { + obj2 = options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {}; + var cleanRoot = root.charAt(0) === "[" && root.charAt(root.length - 1) === "]" ? root.slice(1, -1) : root; + var index = parseInt(cleanRoot, 10); + if (!options2.parseArrays && cleanRoot === "") { + obj2 = { 0: leaf }; + } else if (!isNaN(index) && root !== cleanRoot && String(index) === cleanRoot && index >= 0 && (options2.parseArrays && index <= options2.arrayLimit)) { + obj2 = []; + obj2[index] = leaf; + } else if (cleanRoot !== "__proto__") { + obj2[cleanRoot] = leaf; + } + } + leaf = obj2; + } + return leaf; + }; + var parseKeys = function parseQueryStringKeys(givenKey, val, options2, valuesParsed) { + if (!givenKey) { + return; + } + var key = options2.allowDots ? givenKey.replace(/\.([^.[]+)/g, "[$1]") : givenKey; + var brackets = /(\[[^[\]]*])/; + var child = /(\[[^[\]]*])/g; + var segment = options2.depth > 0 && brackets.exec(key); + var parent = segment ? key.slice(0, segment.index) : key; + var keys = []; + if (parent) { + if (!options2.plainObjects && has.call(Object.prototype, parent)) { + if (!options2.allowPrototypes) { + return; + } + } + keys.push(parent); + } + var i = 0; + while (options2.depth > 0 && (segment = child.exec(key)) !== null && i < options2.depth) { + i += 1; + if (!options2.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) { + if (!options2.allowPrototypes) { + return; + } + } + keys.push(segment[1]); + } + if (segment) { + keys.push("[" + key.slice(segment.index) + "]"); + } + return parseObject(keys, val, options2, valuesParsed); + }; + var normalizeParseOptions = function normalizeParseOptions2(opts) { + if (!opts) { + return defaults4; + } + if (opts.decoder !== null && opts.decoder !== void 0 && typeof opts.decoder !== "function") { + throw new TypeError("Decoder has to be a function."); + } + if (typeof opts.charset !== "undefined" && opts.charset !== "utf-8" && opts.charset !== "iso-8859-1") { + throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined"); + } + var charset = typeof opts.charset === "undefined" ? defaults4.charset : opts.charset; + return { + allowDots: typeof opts.allowDots === "undefined" ? defaults4.allowDots : !!opts.allowDots, + allowPrototypes: typeof opts.allowPrototypes === "boolean" ? opts.allowPrototypes : defaults4.allowPrototypes, + allowSparse: typeof opts.allowSparse === "boolean" ? opts.allowSparse : defaults4.allowSparse, + arrayLimit: typeof opts.arrayLimit === "number" ? opts.arrayLimit : defaults4.arrayLimit, + charset, + charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults4.charsetSentinel, + comma: typeof opts.comma === "boolean" ? opts.comma : defaults4.comma, + decoder: typeof opts.decoder === "function" ? opts.decoder : defaults4.decoder, + delimiter: typeof opts.delimiter === "string" || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults4.delimiter, + // eslint-disable-next-line no-implicit-coercion, no-extra-parens + depth: typeof opts.depth === "number" || opts.depth === false ? +opts.depth : defaults4.depth, + ignoreQueryPrefix: opts.ignoreQueryPrefix === true, + interpretNumericEntities: typeof opts.interpretNumericEntities === "boolean" ? opts.interpretNumericEntities : defaults4.interpretNumericEntities, + parameterLimit: typeof opts.parameterLimit === "number" ? opts.parameterLimit : defaults4.parameterLimit, + parseArrays: opts.parseArrays !== false, + plainObjects: typeof opts.plainObjects === "boolean" ? opts.plainObjects : defaults4.plainObjects, + strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults4.strictNullHandling + }; + }; + module2.exports = function(str, opts) { + var options2 = normalizeParseOptions(opts); + if (str === "" || str === null || typeof str === "undefined") { + return options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {}; + } + var tempObj = typeof str === "string" ? parseValues(str, options2) : str; + var obj2 = options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {}; + var keys = Object.keys(tempObj); + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + var newObj = parseKeys(key, tempObj[key], options2, typeof str === "string"); + obj2 = utils.merge(obj2, newObj, options2); + } + if (options2.allowSparse === true) { + return obj2; + } + return utils.compact(obj2); + }; + } +}); + +// ../node_modules/.pnpm/qs@6.11.2/node_modules/qs/lib/index.js +var require_lib4 = __commonJS({ + "../node_modules/.pnpm/qs@6.11.2/node_modules/qs/lib/index.js"(exports2, module2) { + "use strict"; + var stringify = require_stringify2(); + var parse7 = require_parse7(); + var formats = require_formats(); + module2.exports = { + formats, + parse: parse7, + stringify + }; + } +}); + +// ../node_modules/.pnpm/@pollyjs+utils@6.0.6/node_modules/@pollyjs/utils/dist/cjs/pollyjs-utils.js +var require_pollyjs_utils = __commonJS({ + "../node_modules/.pnpm/@pollyjs+utils@6.0.6/node_modules/@pollyjs/utils/dist/cjs/pollyjs-utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function _interopDefault(ex) { + return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex; + } + var URLParse = _interopDefault(require_url_parse()); + var qs = _interopDefault(require_lib4()); + var buffer2 = require("buffer"); + var modes = { + RECORD: "record", + REPLAY: "replay", + PASSTHROUGH: "passthrough", + STOPPED: "stopped" + }; + var actions2 = { + RECORD: "record", + REPLAY: "replay", + INTERCEPT: "intercept", + PASSTHROUGH: "passthrough" + }; + var httpMethods = ["GET", "PUT", "POST", "DELETE", "PATCH", "MERGE", "HEAD", "OPTIONS"]; + var httpStatusCodes = { + 100: "Continue", + 101: "Switching Protocols", + 200: "OK", + 201: "Created", + 202: "Accepted", + 203: "Non-Authoritative Information", + 204: "No Content", + 205: "Reset Content", + 206: "Partial Content", + 207: "Multi-Status", + 300: "Multiple Choice", + 301: "Moved Permanently", + 302: "Found", + 303: "See Other", + 304: "Not Modified", + 305: "Use Proxy", + 307: "Temporary Redirect", + 400: "Bad Request", + 401: "Unauthorized", + 402: "Payment Required", + 403: "Forbidden", + 404: "Not Found", + 405: "Method Not Allowed", + 406: "Not Acceptable", + 407: "Proxy Authentication Required", + 408: "Request Timeout", + 409: "Conflict", + 410: "Gone", + 411: "Length Required", + 412: "Precondition Failed", + 413: "Request Entity Too Large", + 414: "Request-URI Too Long", + 415: "Unsupported Media Type", + 416: "Requested Range Not Satisfiable", + 417: "Expectation Failed", + 422: "Unprocessable Entity", + 500: "Internal Server Error", + 501: "Not Implemented", + 502: "Bad Gateway", + 503: "Service Unavailable", + 504: "Gateway Timeout", + 505: "HTTP Version Not Supported" + }; + var expiryStrategies = { + RECORD: "record", + WARN: "warn", + ERROR: "error" + }; + var PollyError = class _PollyError extends Error { + constructor(message, ...args3) { + super(`[Polly] ${message}`, ...args3); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, _PollyError); + } + this.name = "PollyError"; + } + }; + function assert2(msg, condition) { + if (!condition) { + throw new PollyError(msg); + } + } + function unwrapExports(x) { + return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x; + } + function createCommonjsModule(fn, module3) { + return module3 = { exports: {} }, fn(module3, module3.exports), module3.exports; + } + function getCjsExportFromNamespace(n) { + return n && n["default"] || n; + } + var _global2 = createCommonjsModule(function(module3) { + var global2 = module3.exports = typeof window != "undefined" && window.Math == Math ? window : typeof self != "undefined" && self.Math == Math ? self : Function("return this")(); + if (typeof __g == "number") + __g = global2; + }); + var _core = createCommonjsModule(function(module3) { + var core = module3.exports = { version: "2.6.9" }; + if (typeof __e == "number") + __e = core; + }); + var _core_1 = _core.version; + var _aFunction = function(it) { + if (typeof it != "function") + throw TypeError(it + " is not a function!"); + return it; + }; + var _ctx = function(fn, that, length) { + _aFunction(fn); + if (that === void 0) + return fn; + switch (length) { + case 1: + return function(a) { + return fn.call(that, a); + }; + case 2: + return function(a, b) { + return fn.call(that, a, b); + }; + case 3: + return function(a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function() { + return fn.apply(that, arguments); + }; + }; + var _isObject = function(it) { + return typeof it === "object" ? it !== null : typeof it === "function"; + }; + var _anObject = function(it) { + if (!_isObject(it)) + throw TypeError(it + " is not an object!"); + return it; + }; + var _fails = function(exec3) { + try { + return !!exec3(); + } catch (e) { + return true; + } + }; + var _descriptors = !_fails(function() { + return Object.defineProperty({}, "a", { get: function() { + return 7; + } }).a != 7; + }); + var document$1 = _global2.document; + var is = _isObject(document$1) && _isObject(document$1.createElement); + var _domCreate = function(it) { + return is ? document$1.createElement(it) : {}; + }; + var _ie8DomDefine = !_descriptors && !_fails(function() { + return Object.defineProperty(_domCreate("div"), "a", { get: function() { + return 7; + } }).a != 7; + }); + var _toPrimitive = function(it, S) { + if (!_isObject(it)) + return it; + var fn, val; + if (S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + if (typeof (fn = it.valueOf) == "function" && !_isObject(val = fn.call(it))) + return val; + if (!S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + throw TypeError("Can't convert object to primitive value"); + }; + var dP = Object.defineProperty; + var f = _descriptors ? Object.defineProperty : function defineProperty2(O, P, Attributes) { + _anObject(O); + P = _toPrimitive(P, true); + _anObject(Attributes); + if (_ie8DomDefine) + try { + return dP(O, P, Attributes); + } catch (e) { + } + if ("get" in Attributes || "set" in Attributes) + throw TypeError("Accessors not supported!"); + if ("value" in Attributes) + O[P] = Attributes.value; + return O; + }; + var _objectDp = { + f + }; + var _propertyDesc = function(bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value + }; + }; + var _hide = _descriptors ? function(object, key, value) { + return _objectDp.f(object, key, _propertyDesc(1, value)); + } : function(object, key, value) { + object[key] = value; + return object; + }; + var hasOwnProperty2 = {}.hasOwnProperty; + var _has = function(it, key) { + return hasOwnProperty2.call(it, key); + }; + var PROTOTYPE = "prototype"; + var $export = function(type2, name, source2) { + var IS_FORCED = type2 & $export.F; + var IS_GLOBAL = type2 & $export.G; + var IS_STATIC = type2 & $export.S; + var IS_PROTO = type2 & $export.P; + var IS_BIND = type2 & $export.B; + var IS_WRAP = type2 & $export.W; + var exports3 = IS_GLOBAL ? _core : _core[name] || (_core[name] = {}); + var expProto = exports3[PROTOTYPE]; + var target = IS_GLOBAL ? _global2 : IS_STATIC ? _global2[name] : (_global2[name] || {})[PROTOTYPE]; + var key, own, out2; + if (IS_GLOBAL) + source2 = name; + for (key in source2) { + own = !IS_FORCED && target && target[key] !== void 0; + if (own && _has(exports3, key)) + continue; + out2 = own ? target[key] : source2[key]; + exports3[key] = IS_GLOBAL && typeof target[key] != "function" ? source2[key] : IS_BIND && own ? _ctx(out2, _global2) : IS_WRAP && target[key] == out2 ? function(C2) { + var F = function(a, b, c) { + if (this instanceof C2) { + switch (arguments.length) { + case 0: + return new C2(); + case 1: + return new C2(a); + case 2: + return new C2(a, b); + } + return new C2(a, b, c); + } + return C2.apply(this, arguments); + }; + F[PROTOTYPE] = C2[PROTOTYPE]; + return F; + }(out2) : IS_PROTO && typeof out2 == "function" ? _ctx(Function.call, out2) : out2; + if (IS_PROTO) { + (exports3.virtual || (exports3.virtual = {}))[key] = out2; + if (type2 & $export.R && expProto && !expProto[key]) + _hide(expProto, key, out2); + } + } + }; + $export.F = 1; + $export.G = 2; + $export.S = 4; + $export.P = 8; + $export.B = 16; + $export.W = 32; + $export.U = 64; + $export.R = 128; + var _export = $export; + var _defined = function(it) { + if (it == void 0) + throw TypeError("Can't call method on " + it); + return it; + }; + var _stringWs = " \n\v\f\r \xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF"; + var space = "[" + _stringWs + "]"; + var non = "\u200B\x85"; + var ltrim = RegExp("^" + space + space + "*"); + var rtrim2 = RegExp(space + space + "*$"); + var exporter = function(KEY, exec3, ALIAS) { + var exp = {}; + var FORCE = _fails(function() { + return !!_stringWs[KEY]() || non[KEY]() != non; + }); + var fn = exp[KEY] = FORCE ? exec3(trim2) : _stringWs[KEY]; + if (ALIAS) + exp[ALIAS] = fn; + _export(_export.P + _export.F * FORCE, "String", exp); + }; + var trim2 = exporter.trim = function(string, TYPE2) { + string = String(_defined(string)); + if (TYPE2 & 1) + string = string.replace(ltrim, ""); + if (TYPE2 & 2) + string = string.replace(rtrim2, ""); + return string; + }; + var _stringTrim = exporter; + var $parseInt = _global2.parseInt; + var $trim = _stringTrim.trim; + var hex = /^[-+]?0[xX]/; + var _parseInt = $parseInt(_stringWs + "08") !== 8 || $parseInt(_stringWs + "0x16") !== 22 ? function parseInt2(str, radix) { + var string = $trim(String(str), 3); + return $parseInt(string, radix >>> 0 || (hex.test(string) ? 16 : 10)); + } : $parseInt; + _export(_export.G + _export.F * (parseInt != _parseInt), { parseInt: _parseInt }); + var _parseInt$1 = _core.parseInt; + var _parseInt$2 = _parseInt$1; + var es6_object_toString = /* @__PURE__ */ Object.freeze({}); + var ceil = Math.ceil; + var floor = Math.floor; + var _toInteger = function(it) { + return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); + }; + var _stringAt = function(TO_STRING) { + return function(that, pos) { + var s = String(_defined(that)); + var i2 = _toInteger(pos); + var l2 = s.length; + var a, b; + if (i2 < 0 || i2 >= l2) + return TO_STRING ? "" : void 0; + a = s.charCodeAt(i2); + return a < 55296 || a > 56319 || i2 + 1 === l2 || (b = s.charCodeAt(i2 + 1)) < 56320 || b > 57343 ? TO_STRING ? s.charAt(i2) : a : TO_STRING ? s.slice(i2, i2 + 2) : (a - 55296 << 10) + (b - 56320) + 65536; + }; + }; + var _library = true; + var _redefine = _hide; + var _iterators = {}; + var toString3 = {}.toString; + var _cof = function(it) { + return toString3.call(it).slice(8, -1); + }; + var _iobject = Object("z").propertyIsEnumerable(0) ? Object : function(it) { + return _cof(it) == "String" ? it.split("") : Object(it); + }; + var _toIobject = function(it) { + return _iobject(_defined(it)); + }; + var min = Math.min; + var _toLength = function(it) { + return it > 0 ? min(_toInteger(it), 9007199254740991) : 0; + }; + var max = Math.max; + var min$1 = Math.min; + var _toAbsoluteIndex = function(index2, length) { + index2 = _toInteger(index2); + return index2 < 0 ? max(index2 + length, 0) : min$1(index2, length); + }; + var _arrayIncludes = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O = _toIobject($this); + var length = _toLength(O.length); + var index2 = _toAbsoluteIndex(fromIndex, length); + var value; + if (IS_INCLUDES && el != el) + while (length > index2) { + value = O[index2++]; + if (value != value) + return true; + } + else + for (; length > index2; index2++) + if (IS_INCLUDES || index2 in O) { + if (O[index2] === el) + return IS_INCLUDES || index2 || 0; + } + return !IS_INCLUDES && -1; + }; + }; + var _shared = createCommonjsModule(function(module3) { + var SHARED = "__core-js_shared__"; + var store = _global2[SHARED] || (_global2[SHARED] = {}); + (module3.exports = function(key, value) { + return store[key] || (store[key] = value !== void 0 ? value : {}); + })("versions", []).push({ + version: _core.version, + mode: "pure", + copyright: "\xA9 2019 Denis Pushkarev (zloirock.ru)" + }); + }); + var id = 0; + var px = Math.random(); + var _uid = function(key) { + return "Symbol(".concat(key === void 0 ? "" : key, ")_", (++id + px).toString(36)); + }; + var shared = _shared("keys"); + var _sharedKey = function(key) { + return shared[key] || (shared[key] = _uid(key)); + }; + var arrayIndexOf = _arrayIncludes(false); + var IE_PROTO = _sharedKey("IE_PROTO"); + var _objectKeysInternal = function(object, names) { + var O = _toIobject(object); + var i2 = 0; + var result = []; + var key; + for (key in O) + if (key != IE_PROTO) + _has(O, key) && result.push(key); + while (names.length > i2) + if (_has(O, key = names[i2++])) { + ~arrayIndexOf(result, key) || result.push(key); + } + return result; + }; + var _enumBugKeys = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","); + var _objectKeys = Object.keys || function keys2(O) { + return _objectKeysInternal(O, _enumBugKeys); + }; + var _objectDps = _descriptors ? Object.defineProperties : function defineProperties2(O, Properties) { + _anObject(O); + var keys2 = _objectKeys(Properties); + var length = keys2.length; + var i2 = 0; + var P; + while (length > i2) + _objectDp.f(O, P = keys2[i2++], Properties[P]); + return O; + }; + var document$2 = _global2.document; + var _html = document$2 && document$2.documentElement; + var IE_PROTO$1 = _sharedKey("IE_PROTO"); + var Empty = function() { + }; + var PROTOTYPE$1 = "prototype"; + var createDict = function() { + var iframe = _domCreate("iframe"); + var i2 = _enumBugKeys.length; + var lt = "<"; + var gt = ">"; + var iframeDocument; + iframe.style.display = "none"; + _html.appendChild(iframe); + iframe.src = "javascript:"; + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(lt + "script" + gt + "document.F=Object" + lt + "/script" + gt); + iframeDocument.close(); + createDict = iframeDocument.F; + while (i2--) + delete createDict[PROTOTYPE$1][_enumBugKeys[i2]]; + return createDict(); + }; + var _objectCreate = Object.create || function create2(O, Properties) { + var result; + if (O !== null) { + Empty[PROTOTYPE$1] = _anObject(O); + result = new Empty(); + Empty[PROTOTYPE$1] = null; + result[IE_PROTO$1] = O; + } else + result = createDict(); + return Properties === void 0 ? result : _objectDps(result, Properties); + }; + var _wks = createCommonjsModule(function(module3) { + var store = _shared("wks"); + var Symbol2 = _global2.Symbol; + var USE_SYMBOL = typeof Symbol2 == "function"; + var $exports = module3.exports = function(name) { + return store[name] || (store[name] = USE_SYMBOL && Symbol2[name] || (USE_SYMBOL ? Symbol2 : _uid)("Symbol." + name)); + }; + $exports.store = store; + }); + var def = _objectDp.f; + var TAG = _wks("toStringTag"); + var _setToStringTag = function(it, tag, stat7) { + if (it && !_has(it = stat7 ? it : it.prototype, TAG)) + def(it, TAG, { configurable: true, value: tag }); + }; + var IteratorPrototype = {}; + _hide(IteratorPrototype, _wks("iterator"), function() { + return this; + }); + var _iterCreate = function(Constructor, NAME2, next) { + Constructor.prototype = _objectCreate(IteratorPrototype, { next: _propertyDesc(1, next) }); + _setToStringTag(Constructor, NAME2 + " Iterator"); + }; + var _toObject = function(it) { + return Object(_defined(it)); + }; + var IE_PROTO$2 = _sharedKey("IE_PROTO"); + var ObjectProto = Object.prototype; + var _objectGpo = Object.getPrototypeOf || function(O) { + O = _toObject(O); + if (_has(O, IE_PROTO$2)) + return O[IE_PROTO$2]; + if (typeof O.constructor == "function" && O instanceof O.constructor) { + return O.constructor.prototype; + } + return O instanceof Object ? ObjectProto : null; + }; + var ITERATOR = _wks("iterator"); + var BUGGY = !([].keys && "next" in [].keys()); + var FF_ITERATOR = "@@iterator"; + var KEYS = "keys"; + var VALUES = "values"; + var returnThis = function() { + return this; + }; + var _iterDefine = function(Base, NAME2, Constructor, next, DEFAULT, IS_SET, FORCED) { + _iterCreate(Constructor, NAME2, next); + var getMethod = function(kind) { + if (!BUGGY && kind in proto2) + return proto2[kind]; + switch (kind) { + case KEYS: + return function keys2() { + return new Constructor(this, kind); + }; + case VALUES: + return function values() { + return new Constructor(this, kind); + }; + } + return function entries() { + return new Constructor(this, kind); + }; + }; + var TAG2 = NAME2 + " Iterator"; + var DEF_VALUES = DEFAULT == VALUES; + var VALUES_BUG = false; + var proto2 = Base.prototype; + var $native = proto2[ITERATOR] || proto2[FF_ITERATOR] || DEFAULT && proto2[DEFAULT]; + var $default = $native || getMethod(DEFAULT); + var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod("entries") : void 0; + var $anyNative = NAME2 == "Array" ? proto2.entries || $native : $native; + var methods, key, IteratorPrototype2; + if ($anyNative) { + IteratorPrototype2 = _objectGpo($anyNative.call(new Base())); + if (IteratorPrototype2 !== Object.prototype && IteratorPrototype2.next) { + _setToStringTag(IteratorPrototype2, TAG2, true); + } + } + if (DEF_VALUES && $native && $native.name !== VALUES) { + VALUES_BUG = true; + $default = function values() { + return $native.call(this); + }; + } + if (FORCED && (BUGGY || VALUES_BUG || !proto2[ITERATOR])) { + _hide(proto2, ITERATOR, $default); + } + _iterators[NAME2] = $default; + _iterators[TAG2] = returnThis; + if (DEFAULT) { + methods = { + values: DEF_VALUES ? $default : getMethod(VALUES), + keys: IS_SET ? $default : getMethod(KEYS), + entries: $entries + }; + if (FORCED) + for (key in methods) { + if (!(key in proto2)) + _redefine(proto2, key, methods[key]); + } + else + _export(_export.P + _export.F * (BUGGY || VALUES_BUG), NAME2, methods); + } + return methods; + }; + var $at = _stringAt(true); + _iterDefine(String, "String", function(iterated) { + this._t = String(iterated); + this._i = 0; + }, function() { + var O = this._t; + var index2 = this._i; + var point; + if (index2 >= O.length) + return { value: void 0, done: true }; + point = $at(O, index2); + this._i += point.length; + return { value: point, done: false }; + }); + var _iterStep = function(done, value) { + return { value, done: !!done }; + }; + var es6_array_iterator = _iterDefine(Array, "Array", function(iterated, kind) { + this._t = _toIobject(iterated); + this._i = 0; + this._k = kind; + }, function() { + var O = this._t; + var kind = this._k; + var index2 = this._i++; + if (!O || index2 >= O.length) { + this._t = void 0; + return _iterStep(1); + } + if (kind == "keys") + return _iterStep(0, index2); + if (kind == "values") + return _iterStep(0, O[index2]); + return _iterStep(0, [index2, O[index2]]); + }, "values"); + _iterators.Arguments = _iterators.Array; + var TO_STRING_TAG = _wks("toStringTag"); + var DOMIterables = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","); + for (i = 0; i < DOMIterables.length; i++) { + NAME = DOMIterables[i]; + Collection = _global2[NAME]; + proto = Collection && Collection.prototype; + if (proto && !proto[TO_STRING_TAG]) + _hide(proto, TO_STRING_TAG, NAME); + _iterators[NAME] = _iterators.Array; + } + var NAME; + var Collection; + var proto; + var i; + var TAG$1 = _wks("toStringTag"); + var ARG = _cof(function() { + return arguments; + }()) == "Arguments"; + var tryGet = function(it, key) { + try { + return it[key]; + } catch (e) { + } + }; + var _classof = function(it) { + var O, T, B; + return it === void 0 ? "Undefined" : it === null ? "Null" : typeof (T = tryGet(O = Object(it), TAG$1)) == "string" ? T : ARG ? _cof(O) : (B = _cof(O)) == "Object" && typeof O.callee == "function" ? "Arguments" : B; + }; + var _anInstance = function(it, Constructor, name, forbiddenField) { + if (!(it instanceof Constructor) || forbiddenField !== void 0 && forbiddenField in it) { + throw TypeError(name + ": incorrect invocation!"); + } + return it; + }; + var _iterCall = function(iterator, fn, value, entries) { + try { + return entries ? fn(_anObject(value)[0], value[1]) : fn(value); + } catch (e) { + var ret2 = iterator["return"]; + if (ret2 !== void 0) + _anObject(ret2.call(iterator)); + throw e; + } + }; + var ITERATOR$1 = _wks("iterator"); + var ArrayProto = Array.prototype; + var _isArrayIter = function(it) { + return it !== void 0 && (_iterators.Array === it || ArrayProto[ITERATOR$1] === it); + }; + var ITERATOR$2 = _wks("iterator"); + var core_getIteratorMethod = _core.getIteratorMethod = function(it) { + if (it != void 0) + return it[ITERATOR$2] || it["@@iterator"] || _iterators[_classof(it)]; + }; + var _forOf = createCommonjsModule(function(module3) { + var BREAK = {}; + var RETURN = {}; + var exports3 = module3.exports = function(iterable, entries, fn, that, ITERATOR2) { + var iterFn = ITERATOR2 ? function() { + return iterable; + } : core_getIteratorMethod(iterable); + var f2 = _ctx(fn, that, entries ? 2 : 1); + var index2 = 0; + var length, step, iterator, result; + if (typeof iterFn != "function") + throw TypeError(iterable + " is not iterable!"); + if (_isArrayIter(iterFn)) + for (length = _toLength(iterable.length); length > index2; index2++) { + result = entries ? f2(_anObject(step = iterable[index2])[0], step[1]) : f2(iterable[index2]); + if (result === BREAK || result === RETURN) + return result; + } + else + for (iterator = iterFn.call(iterable); !(step = iterator.next()).done; ) { + result = _iterCall(iterator, f2, step.value, entries); + if (result === BREAK || result === RETURN) + return result; + } + }; + exports3.BREAK = BREAK; + exports3.RETURN = RETURN; + }); + var SPECIES = _wks("species"); + var _speciesConstructor = function(O, D) { + var C2 = _anObject(O).constructor; + var S; + return C2 === void 0 || (S = _anObject(C2)[SPECIES]) == void 0 ? D : _aFunction(S); + }; + var _invoke = function(fn, args3, that) { + var un = that === void 0; + switch (args3.length) { + case 0: + return un ? fn() : fn.call(that); + case 1: + return un ? fn(args3[0]) : fn.call(that, args3[0]); + case 2: + return un ? fn(args3[0], args3[1]) : fn.call(that, args3[0], args3[1]); + case 3: + return un ? fn(args3[0], args3[1], args3[2]) : fn.call(that, args3[0], args3[1], args3[2]); + case 4: + return un ? fn(args3[0], args3[1], args3[2], args3[3]) : fn.call(that, args3[0], args3[1], args3[2], args3[3]); + } + return fn.apply(that, args3); + }; + var process3 = _global2.process; + var setTask = _global2.setImmediate; + var clearTask = _global2.clearImmediate; + var MessageChannel2 = _global2.MessageChannel; + var Dispatch = _global2.Dispatch; + var counter = 0; + var queue = {}; + var ONREADYSTATECHANGE = "onreadystatechange"; + var defer2; + var channel; + var port; + var run2 = function() { + var id2 = +this; + if (queue.hasOwnProperty(id2)) { + var fn = queue[id2]; + delete queue[id2]; + fn(); + } + }; + var listener = function(event) { + run2.call(event.data); + }; + if (!setTask || !clearTask) { + setTask = function setImmediate2(fn) { + var args3 = []; + var i2 = 1; + while (arguments.length > i2) + args3.push(arguments[i2++]); + queue[++counter] = function() { + _invoke(typeof fn == "function" ? fn : Function(fn), args3); + }; + defer2(counter); + return counter; + }; + clearTask = function clearImmediate2(id2) { + delete queue[id2]; + }; + if (_cof(process3) == "process") { + defer2 = function(id2) { + process3.nextTick(_ctx(run2, id2, 1)); + }; + } else if (Dispatch && Dispatch.now) { + defer2 = function(id2) { + Dispatch.now(_ctx(run2, id2, 1)); + }; + } else if (MessageChannel2) { + channel = new MessageChannel2(); + port = channel.port2; + channel.port1.onmessage = listener; + defer2 = _ctx(port.postMessage, port, 1); + } else if (_global2.addEventListener && typeof postMessage == "function" && !_global2.importScripts) { + defer2 = function(id2) { + _global2.postMessage(id2 + "", "*"); + }; + _global2.addEventListener("message", listener, false); + } else if (ONREADYSTATECHANGE in _domCreate("script")) { + defer2 = function(id2) { + _html.appendChild(_domCreate("script"))[ONREADYSTATECHANGE] = function() { + _html.removeChild(this); + run2.call(id2); + }; + }; + } else { + defer2 = function(id2) { + setTimeout(_ctx(run2, id2, 1), 0); + }; + } + } + var _task = { + set: setTask, + clear: clearTask + }; + var macrotask = _task.set; + var Observer = _global2.MutationObserver || _global2.WebKitMutationObserver; + var process$1 = _global2.process; + var Promise2 = _global2.Promise; + var isNode2 = _cof(process$1) == "process"; + var _microtask = function() { + var head, last, notify2; + var flush = function() { + var parent, fn; + if (isNode2 && (parent = process$1.domain)) + parent.exit(); + while (head) { + fn = head.fn; + head = head.next; + try { + fn(); + } catch (e) { + if (head) + notify2(); + else + last = void 0; + throw e; + } + } + last = void 0; + if (parent) + parent.enter(); + }; + if (isNode2) { + notify2 = function() { + process$1.nextTick(flush); + }; + } else if (Observer && !(_global2.navigator && _global2.navigator.standalone)) { + var toggle = true; + var node = document.createTextNode(""); + new Observer(flush).observe(node, { characterData: true }); + notify2 = function() { + node.data = toggle = !toggle; + }; + } else if (Promise2 && Promise2.resolve) { + var promise2 = Promise2.resolve(void 0); + notify2 = function() { + promise2.then(flush); + }; + } else { + notify2 = function() { + macrotask.call(_global2, flush); + }; + } + return function(fn) { + var task2 = { fn, next: void 0 }; + if (last) + last.next = task2; + if (!head) { + head = task2; + notify2(); + } + last = task2; + }; + }; + function PromiseCapability(C2) { + var resolve8, reject; + this.promise = new C2(function($$resolve, $$reject) { + if (resolve8 !== void 0 || reject !== void 0) + throw TypeError("Bad Promise constructor"); + resolve8 = $$resolve; + reject = $$reject; + }); + this.resolve = _aFunction(resolve8); + this.reject = _aFunction(reject); + } + var f$1 = function(C2) { + return new PromiseCapability(C2); + }; + var _newPromiseCapability = { + f: f$1 + }; + var _perform = function(exec3) { + try { + return { e: false, v: exec3() }; + } catch (e) { + return { e: true, v: e }; + } + }; + var navigator2 = _global2.navigator; + var _userAgent = navigator2 && navigator2.userAgent || ""; + var _promiseResolve = function(C2, x) { + _anObject(C2); + if (_isObject(x) && x.constructor === C2) + return x; + var promiseCapability = _newPromiseCapability.f(C2); + var resolve8 = promiseCapability.resolve; + resolve8(x); + return promiseCapability.promise; + }; + var _redefineAll = function(target, src, safe) { + for (var key in src) { + if (safe && target[key]) + target[key] = src[key]; + else + _hide(target, key, src[key]); + } + return target; + }; + var SPECIES$1 = _wks("species"); + var _setSpecies = function(KEY) { + var C2 = typeof _core[KEY] == "function" ? _core[KEY] : _global2[KEY]; + if (_descriptors && C2 && !C2[SPECIES$1]) + _objectDp.f(C2, SPECIES$1, { + configurable: true, + get: function() { + return this; + } + }); + }; + var ITERATOR$3 = _wks("iterator"); + var SAFE_CLOSING = false; + try { + riter = [7][ITERATOR$3](); + riter["return"] = function() { + SAFE_CLOSING = true; + }; + Array.from(riter, function() { + throw 2; + }); + } catch (e) { + } + var riter; + var _iterDetect = function(exec3, skipClosing) { + if (!skipClosing && !SAFE_CLOSING) + return false; + var safe = false; + try { + var arr = [7]; + var iter = arr[ITERATOR$3](); + iter.next = function() { + return { done: safe = true }; + }; + arr[ITERATOR$3] = function() { + return iter; + }; + exec3(arr); + } catch (e) { + } + return safe; + }; + var task = _task.set; + var microtask = _microtask(); + var PROMISE = "Promise"; + var TypeError$1 = _global2.TypeError; + var process$2 = _global2.process; + var versions = process$2 && process$2.versions; + var v8 = versions && versions.v8 || ""; + var $Promise = _global2[PROMISE]; + var isNode$1 = _classof(process$2) == "process"; + var empty = function() { + }; + var Internal; + var newGenericPromiseCapability; + var OwnPromiseCapability; + var Wrapper; + var newPromiseCapability = newGenericPromiseCapability = _newPromiseCapability.f; + var USE_NATIVE = !!function() { + try { + var promise2 = $Promise.resolve(1); + var FakePromise = (promise2.constructor = {})[_wks("species")] = function(exec3) { + exec3(empty, empty); + }; + return (isNode$1 || typeof PromiseRejectionEvent == "function") && promise2.then(empty) instanceof FakePromise && v8.indexOf("6.6") !== 0 && _userAgent.indexOf("Chrome/66") === -1; + } catch (e) { + } + }(); + var isThenable = function(it) { + var then; + return _isObject(it) && typeof (then = it.then) == "function" ? then : false; + }; + var notify = function(promise2, isReject) { + if (promise2._n) + return; + promise2._n = true; + var chain = promise2._c; + microtask(function() { + var value = promise2._v; + var ok = promise2._s == 1; + var i2 = 0; + var run3 = function(reaction) { + var handler = ok ? reaction.ok : reaction.fail; + var resolve8 = reaction.resolve; + var reject = reaction.reject; + var domain2 = reaction.domain; + var result, then, exited; + try { + if (handler) { + if (!ok) { + if (promise2._h == 2) + onHandleUnhandled(promise2); + promise2._h = 1; + } + if (handler === true) + result = value; + else { + if (domain2) + domain2.enter(); + result = handler(value); + if (domain2) { + domain2.exit(); + exited = true; + } + } + if (result === reaction.promise) { + reject(TypeError$1("Promise-chain cycle")); + } else if (then = isThenable(result)) { + then.call(result, resolve8, reject); + } else + resolve8(result); + } else + reject(value); + } catch (e) { + if (domain2 && !exited) + domain2.exit(); + reject(e); + } + }; + while (chain.length > i2) + run3(chain[i2++]); + promise2._c = []; + promise2._n = false; + if (isReject && !promise2._h) + onUnhandled(promise2); + }); + }; + var onUnhandled = function(promise2) { + task.call(_global2, function() { + var value = promise2._v; + var unhandled = isUnhandled(promise2); + var result, handler, console2; + if (unhandled) { + result = _perform(function() { + if (isNode$1) { + process$2.emit("unhandledRejection", value, promise2); + } else if (handler = _global2.onunhandledrejection) { + handler({ promise: promise2, reason: value }); + } else if ((console2 = _global2.console) && console2.error) { + console2.error("Unhandled promise rejection", value); + } + }); + promise2._h = isNode$1 || isUnhandled(promise2) ? 2 : 1; + } + promise2._a = void 0; + if (unhandled && result.e) + throw result.v; + }); + }; + var isUnhandled = function(promise2) { + return promise2._h !== 1 && (promise2._a || promise2._c).length === 0; + }; + var onHandleUnhandled = function(promise2) { + task.call(_global2, function() { + var handler; + if (isNode$1) { + process$2.emit("rejectionHandled", promise2); + } else if (handler = _global2.onrejectionhandled) { + handler({ promise: promise2, reason: promise2._v }); + } + }); + }; + var $reject = function(value) { + var promise2 = this; + if (promise2._d) + return; + promise2._d = true; + promise2 = promise2._w || promise2; + promise2._v = value; + promise2._s = 2; + if (!promise2._a) + promise2._a = promise2._c.slice(); + notify(promise2, true); + }; + var $resolve = function(value) { + var promise2 = this; + var then; + if (promise2._d) + return; + promise2._d = true; + promise2 = promise2._w || promise2; + try { + if (promise2 === value) + throw TypeError$1("Promise can't be resolved itself"); + if (then = isThenable(value)) { + microtask(function() { + var wrapper = { _w: promise2, _d: false }; + try { + then.call(value, _ctx($resolve, wrapper, 1), _ctx($reject, wrapper, 1)); + } catch (e) { + $reject.call(wrapper, e); + } + }); + } else { + promise2._v = value; + promise2._s = 1; + notify(promise2, false); + } + } catch (e) { + $reject.call({ _w: promise2, _d: false }, e); + } + }; + if (!USE_NATIVE) { + $Promise = function Promise3(executor) { + _anInstance(this, $Promise, PROMISE, "_h"); + _aFunction(executor); + Internal.call(this); + try { + executor(_ctx($resolve, this, 1), _ctx($reject, this, 1)); + } catch (err2) { + $reject.call(this, err2); + } + }; + Internal = function Promise3(executor) { + this._c = []; + this._a = void 0; + this._s = 0; + this._d = false; + this._v = void 0; + this._h = 0; + this._n = false; + }; + Internal.prototype = _redefineAll($Promise.prototype, { + // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) + then: function then(onFulfilled, onRejected) { + var reaction = newPromiseCapability(_speciesConstructor(this, $Promise)); + reaction.ok = typeof onFulfilled == "function" ? onFulfilled : true; + reaction.fail = typeof onRejected == "function" && onRejected; + reaction.domain = isNode$1 ? process$2.domain : void 0; + this._c.push(reaction); + if (this._a) + this._a.push(reaction); + if (this._s) + notify(this, false); + return reaction.promise; + }, + // 25.4.5.1 Promise.prototype.catch(onRejected) + "catch": function(onRejected) { + return this.then(void 0, onRejected); + } + }); + OwnPromiseCapability = function() { + var promise2 = new Internal(); + this.promise = promise2; + this.resolve = _ctx($resolve, promise2, 1); + this.reject = _ctx($reject, promise2, 1); + }; + _newPromiseCapability.f = newPromiseCapability = function(C2) { + return C2 === $Promise || C2 === Wrapper ? new OwnPromiseCapability(C2) : newGenericPromiseCapability(C2); + }; + } + _export(_export.G + _export.W + _export.F * !USE_NATIVE, { Promise: $Promise }); + _setToStringTag($Promise, PROMISE); + _setSpecies(PROMISE); + Wrapper = _core[PROMISE]; + _export(_export.S + _export.F * !USE_NATIVE, PROMISE, { + // 25.4.4.5 Promise.reject(r) + reject: function reject(r) { + var capability = newPromiseCapability(this); + var $$reject = capability.reject; + $$reject(r); + return capability.promise; + } + }); + _export(_export.S + _export.F * _library, PROMISE, { + // 25.4.4.6 Promise.resolve(x) + resolve: function resolve8(x) { + return _promiseResolve(this === Wrapper ? $Promise : this, x); + } + }); + _export(_export.S + _export.F * !(USE_NATIVE && _iterDetect(function(iter) { + $Promise.all(iter)["catch"](empty); + })), PROMISE, { + // 25.4.4.1 Promise.all(iterable) + all: function all3(iterable) { + var C2 = this; + var capability = newPromiseCapability(C2); + var resolve8 = capability.resolve; + var reject = capability.reject; + var result = _perform(function() { + var values = []; + var index2 = 0; + var remaining = 1; + _forOf(iterable, false, function(promise2) { + var $index = index2++; + var alreadyCalled = false; + values.push(void 0); + remaining++; + C2.resolve(promise2).then(function(value) { + if (alreadyCalled) + return; + alreadyCalled = true; + values[$index] = value; + --remaining || resolve8(values); + }, reject); + }); + --remaining || resolve8(values); + }); + if (result.e) + reject(result.v); + return capability.promise; + }, + // 25.4.4.4 Promise.race(iterable) + race: function race(iterable) { + var C2 = this; + var capability = newPromiseCapability(C2); + var reject = capability.reject; + var result = _perform(function() { + _forOf(iterable, false, function(promise2) { + C2.resolve(promise2).then(capability.resolve, reject); + }); + }); + if (result.e) + reject(result.v); + return capability.promise; + } + }); + _export(_export.P + _export.R, "Promise", { "finally": function(onFinally) { + var C2 = _speciesConstructor(this, _core.Promise || _global2.Promise); + var isFunction2 = typeof onFinally == "function"; + return this.then( + isFunction2 ? function(x) { + return _promiseResolve(C2, onFinally()).then(function() { + return x; + }); + } : onFinally, + isFunction2 ? function(e) { + return _promiseResolve(C2, onFinally()).then(function() { + throw e; + }); + } : onFinally + ); + } }); + _export(_export.S, "Promise", { "try": function(callbackfn) { + var promiseCapability = _newPromiseCapability.f(this); + var result = _perform(callbackfn); + (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); + return promiseCapability.promise; + } }); + getCjsExportFromNamespace(es6_object_toString); + var promise = _core.Promise; + var promise$1 = promise; + function timeout(time) { + const ms = _parseInt$2(time, 10); + return new promise$1((resolve8) => ms > 0 ? setTimeout(resolve8, ms) : resolve8()); + } + function timestamp() { + return (/* @__PURE__ */ new Date()).toISOString(); + } + var _objectSap = function(KEY, exec3) { + var fn = (_core.Object || {})[KEY] || Object[KEY]; + var exp = {}; + exp[KEY] = exec3(fn); + _export(_export.S + _export.F * _fails(function() { + fn(1); + }), "Object", exp); + }; + _objectSap("keys", function() { + return function keys2(it) { + return _objectKeys(_toObject(it)); + }; + }); + var keys = _core.Object.keys; + var keys$1 = keys; + var _meta = createCommonjsModule(function(module3) { + var META2 = _uid("meta"); + var setDesc = _objectDp.f; + var id2 = 0; + var isExtensible = Object.isExtensible || function() { + return true; + }; + var FREEZE = !_fails(function() { + return isExtensible(Object.preventExtensions({})); + }); + var setMeta = function(it) { + setDesc(it, META2, { value: { + i: "O" + ++id2, + // object ID + w: {} + // weak collections IDs + } }); + }; + var fastKey = function(it, create2) { + if (!_isObject(it)) + return typeof it == "symbol" ? it : (typeof it == "string" ? "S" : "P") + it; + if (!_has(it, META2)) { + if (!isExtensible(it)) + return "F"; + if (!create2) + return "E"; + setMeta(it); + } + return it[META2].i; + }; + var getWeak = function(it, create2) { + if (!_has(it, META2)) { + if (!isExtensible(it)) + return true; + if (!create2) + return false; + setMeta(it); + } + return it[META2].w; + }; + var onFreeze = function(it) { + if (FREEZE && meta.NEED && isExtensible(it) && !_has(it, META2)) + setMeta(it); + return it; + }; + var meta = module3.exports = { + KEY: META2, + NEED: false, + fastKey, + getWeak, + onFreeze + }; + }); + var _meta_1 = _meta.KEY; + var _meta_2 = _meta.NEED; + var _meta_3 = _meta.fastKey; + var _meta_4 = _meta.getWeak; + var _meta_5 = _meta.onFreeze; + var f$2 = _wks; + var _wksExt = { + f: f$2 + }; + var defineProperty = _objectDp.f; + var _wksDefine = function(name) { + var $Symbol2 = _core.Symbol || (_core.Symbol = {}); + if (name.charAt(0) != "_" && !(name in $Symbol2)) + defineProperty($Symbol2, name, { value: _wksExt.f(name) }); + }; + var f$3 = Object.getOwnPropertySymbols; + var _objectGops = { + f: f$3 + }; + var f$4 = {}.propertyIsEnumerable; + var _objectPie = { + f: f$4 + }; + var _enumKeys = function(it) { + var result = _objectKeys(it); + var getSymbols = _objectGops.f; + if (getSymbols) { + var symbols = getSymbols(it); + var isEnum2 = _objectPie.f; + var i2 = 0; + var key; + while (symbols.length > i2) + if (isEnum2.call(it, key = symbols[i2++])) + result.push(key); + } + return result; + }; + var _isArray = Array.isArray || function isArray3(arg) { + return _cof(arg) == "Array"; + }; + var hiddenKeys = _enumBugKeys.concat("length", "prototype"); + var f$5 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return _objectKeysInternal(O, hiddenKeys); + }; + var _objectGopn = { + f: f$5 + }; + var gOPN = _objectGopn.f; + var toString$1 = {}.toString; + var windowNames = typeof window == "object" && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : []; + var getWindowNames = function(it) { + try { + return gOPN(it); + } catch (e) { + return windowNames.slice(); + } + }; + var f$6 = function getOwnPropertyNames(it) { + return windowNames && toString$1.call(it) == "[object Window]" ? getWindowNames(it) : gOPN(_toIobject(it)); + }; + var _objectGopnExt = { + f: f$6 + }; + var gOPD = Object.getOwnPropertyDescriptor; + var f$7 = _descriptors ? gOPD : function getOwnPropertyDescriptor2(O, P) { + O = _toIobject(O); + P = _toPrimitive(P, true); + if (_ie8DomDefine) + try { + return gOPD(O, P); + } catch (e) { + } + if (_has(O, P)) + return _propertyDesc(!_objectPie.f.call(O, P), O[P]); + }; + var _objectGopd = { + f: f$7 + }; + var META = _meta.KEY; + var gOPD$1 = _objectGopd.f; + var dP$1 = _objectDp.f; + var gOPN$1 = _objectGopnExt.f; + var $Symbol = _global2.Symbol; + var $JSON = _global2.JSON; + var _stringify = $JSON && $JSON.stringify; + var PROTOTYPE$2 = "prototype"; + var HIDDEN = _wks("_hidden"); + var TO_PRIMITIVE = _wks("toPrimitive"); + var isEnum = {}.propertyIsEnumerable; + var SymbolRegistry = _shared("symbol-registry"); + var AllSymbols = _shared("symbols"); + var OPSymbols = _shared("op-symbols"); + var ObjectProto$1 = Object[PROTOTYPE$2]; + var USE_NATIVE$1 = typeof $Symbol == "function" && !!_objectGops.f; + var QObject = _global2.QObject; + var setter = !QObject || !QObject[PROTOTYPE$2] || !QObject[PROTOTYPE$2].findChild; + var setSymbolDesc = _descriptors && _fails(function() { + return _objectCreate(dP$1({}, "a", { + get: function() { + return dP$1(this, "a", { value: 7 }).a; + } + })).a != 7; + }) ? function(it, key, D) { + var protoDesc = gOPD$1(ObjectProto$1, key); + if (protoDesc) + delete ObjectProto$1[key]; + dP$1(it, key, D); + if (protoDesc && it !== ObjectProto$1) + dP$1(ObjectProto$1, key, protoDesc); + } : dP$1; + var wrap2 = function(tag) { + var sym = AllSymbols[tag] = _objectCreate($Symbol[PROTOTYPE$2]); + sym._k = tag; + return sym; + }; + var isSymbol = USE_NATIVE$1 && typeof $Symbol.iterator == "symbol" ? function(it) { + return typeof it == "symbol"; + } : function(it) { + return it instanceof $Symbol; + }; + var $defineProperty = function defineProperty2(it, key, D) { + if (it === ObjectProto$1) + $defineProperty(OPSymbols, key, D); + _anObject(it); + key = _toPrimitive(key, true); + _anObject(D); + if (_has(AllSymbols, key)) { + if (!D.enumerable) { + if (!_has(it, HIDDEN)) + dP$1(it, HIDDEN, _propertyDesc(1, {})); + it[HIDDEN][key] = true; + } else { + if (_has(it, HIDDEN) && it[HIDDEN][key]) + it[HIDDEN][key] = false; + D = _objectCreate(D, { enumerable: _propertyDesc(0, false) }); + } + return setSymbolDesc(it, key, D); + } + return dP$1(it, key, D); + }; + var $defineProperties = function defineProperties2(it, P) { + _anObject(it); + var keys2 = _enumKeys(P = _toIobject(P)); + var i2 = 0; + var l2 = keys2.length; + var key; + while (l2 > i2) + $defineProperty(it, key = keys2[i2++], P[key]); + return it; + }; + var $create = function create2(it, P) { + return P === void 0 ? _objectCreate(it) : $defineProperties(_objectCreate(it), P); + }; + var $propertyIsEnumerable = function propertyIsEnumerable(key) { + var E = isEnum.call(this, key = _toPrimitive(key, true)); + if (this === ObjectProto$1 && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return false; + return E || !_has(this, key) || !_has(AllSymbols, key) || _has(this, HIDDEN) && this[HIDDEN][key] ? E : true; + }; + var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + it = _toIobject(it); + key = _toPrimitive(key, true); + if (it === ObjectProto$1 && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return; + var D = gOPD$1(it, key); + if (D && _has(AllSymbols, key) && !(_has(it, HIDDEN) && it[HIDDEN][key])) + D.enumerable = true; + return D; + }; + var $getOwnPropertyNames = function getOwnPropertyNames(it) { + var names = gOPN$1(_toIobject(it)); + var result = []; + var i2 = 0; + var key; + while (names.length > i2) { + if (!_has(AllSymbols, key = names[i2++]) && key != HIDDEN && key != META) + result.push(key); + } + return result; + }; + var $getOwnPropertySymbols = function getOwnPropertySymbols2(it) { + var IS_OP = it === ObjectProto$1; + var names = gOPN$1(IS_OP ? OPSymbols : _toIobject(it)); + var result = []; + var i2 = 0; + var key; + while (names.length > i2) { + if (_has(AllSymbols, key = names[i2++]) && (IS_OP ? _has(ObjectProto$1, key) : true)) + result.push(AllSymbols[key]); + } + return result; + }; + if (!USE_NATIVE$1) { + $Symbol = function Symbol2() { + if (this instanceof $Symbol) + throw TypeError("Symbol is not a constructor!"); + var tag = _uid(arguments.length > 0 ? arguments[0] : void 0); + var $set = function(value) { + if (this === ObjectProto$1) + $set.call(OPSymbols, value); + if (_has(this, HIDDEN) && _has(this[HIDDEN], tag)) + this[HIDDEN][tag] = false; + setSymbolDesc(this, tag, _propertyDesc(1, value)); + }; + if (_descriptors && setter) + setSymbolDesc(ObjectProto$1, tag, { configurable: true, set: $set }); + return wrap2(tag); + }; + _redefine($Symbol[PROTOTYPE$2], "toString", function toString4() { + return this._k; + }); + _objectGopd.f = $getOwnPropertyDescriptor; + _objectDp.f = $defineProperty; + _objectGopn.f = _objectGopnExt.f = $getOwnPropertyNames; + _objectPie.f = $propertyIsEnumerable; + _objectGops.f = $getOwnPropertySymbols; + if (_descriptors && !_library) { + _redefine(ObjectProto$1, "propertyIsEnumerable", $propertyIsEnumerable, true); + } + _wksExt.f = function(name) { + return wrap2(_wks(name)); + }; + } + _export(_export.G + _export.W + _export.F * !USE_NATIVE$1, { Symbol: $Symbol }); + for (es6Symbols = // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 + "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), j = 0; es6Symbols.length > j; ) + _wks(es6Symbols[j++]); + var es6Symbols; + var j; + for (wellKnownSymbols = _objectKeys(_wks.store), k = 0; wellKnownSymbols.length > k; ) + _wksDefine(wellKnownSymbols[k++]); + var wellKnownSymbols; + var k; + _export(_export.S + _export.F * !USE_NATIVE$1, "Symbol", { + // 19.4.2.1 Symbol.for(key) + "for": function(key) { + return _has(SymbolRegistry, key += "") ? SymbolRegistry[key] : SymbolRegistry[key] = $Symbol(key); + }, + // 19.4.2.5 Symbol.keyFor(sym) + keyFor: function keyFor(sym) { + if (!isSymbol(sym)) + throw TypeError(sym + " is not a symbol!"); + for (var key in SymbolRegistry) + if (SymbolRegistry[key] === sym) + return key; + }, + useSetter: function() { + setter = true; + }, + useSimple: function() { + setter = false; + } + }); + _export(_export.S + _export.F * !USE_NATIVE$1, "Object", { + // 19.1.2.2 Object.create(O [, Properties]) + create: $create, + // 19.1.2.4 Object.defineProperty(O, P, Attributes) + defineProperty: $defineProperty, + // 19.1.2.3 Object.defineProperties(O, Properties) + defineProperties: $defineProperties, + // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) + getOwnPropertyDescriptor: $getOwnPropertyDescriptor, + // 19.1.2.7 Object.getOwnPropertyNames(O) + getOwnPropertyNames: $getOwnPropertyNames, + // 19.1.2.8 Object.getOwnPropertySymbols(O) + getOwnPropertySymbols: $getOwnPropertySymbols + }); + var FAILS_ON_PRIMITIVES = _fails(function() { + _objectGops.f(1); + }); + _export(_export.S + _export.F * FAILS_ON_PRIMITIVES, "Object", { + getOwnPropertySymbols: function getOwnPropertySymbols2(it) { + return _objectGops.f(_toObject(it)); + } + }); + $JSON && _export(_export.S + _export.F * (!USE_NATIVE$1 || _fails(function() { + var S = $Symbol(); + return _stringify([S]) != "[null]" || _stringify({ a: S }) != "{}" || _stringify(Object(S)) != "{}"; + })), "JSON", { + stringify: function stringify(it) { + var args3 = [it]; + var i2 = 1; + var replacer, $replacer; + while (arguments.length > i2) + args3.push(arguments[i2++]); + $replacer = replacer = args3[1]; + if (!_isObject(replacer) && it === void 0 || isSymbol(it)) + return; + if (!_isArray(replacer)) + replacer = function(key, value) { + if (typeof $replacer == "function") + value = $replacer.call(this, key, value); + if (!isSymbol(value)) + return value; + }; + args3[1] = replacer; + return _stringify.apply($JSON, args3); + } + }); + $Symbol[PROTOTYPE$2][TO_PRIMITIVE] || _hide($Symbol[PROTOTYPE$2], TO_PRIMITIVE, $Symbol[PROTOTYPE$2].valueOf); + _setToStringTag($Symbol, "Symbol"); + _setToStringTag(Math, "Math", true); + _setToStringTag(_global2.JSON, "JSON", true); + var getOwnPropertySymbols = _core.Object.getOwnPropertySymbols; + var getOwnPropertySymbols$1 = getOwnPropertySymbols; + var $getOwnPropertyDescriptor$1 = _objectGopd.f; + _objectSap("getOwnPropertyDescriptor", function() { + return function getOwnPropertyDescriptor2(it, key) { + return $getOwnPropertyDescriptor$1(_toIobject(it), key); + }; + }); + var $Object = _core.Object; + var getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + return $Object.getOwnPropertyDescriptor(it, key); + }; + var getOwnPropertyDescriptor$1 = getOwnPropertyDescriptor; + var Reflect2 = _global2.Reflect; + var _ownKeys = Reflect2 && Reflect2.ownKeys || function ownKeys2(it) { + var keys2 = _objectGopn.f(_anObject(it)); + var getSymbols = _objectGops.f; + return getSymbols ? keys2.concat(getSymbols(it)) : keys2; + }; + var _createProperty = function(object, index2, value) { + if (index2 in object) + _objectDp.f(object, index2, _propertyDesc(0, value)); + else + object[index2] = value; + }; + _export(_export.S, "Object", { + getOwnPropertyDescriptors: function getOwnPropertyDescriptors2(object) { + var O = _toIobject(object); + var getDesc = _objectGopd.f; + var keys2 = _ownKeys(O); + var result = {}; + var i2 = 0; + var key, desc; + while (keys2.length > i2) { + desc = getDesc(O, key = keys2[i2++]); + if (desc !== void 0) + _createProperty(result, key, desc); + } + return result; + } + }); + var getOwnPropertyDescriptors = _core.Object.getOwnPropertyDescriptors; + var getOwnPropertyDescriptors$1 = getOwnPropertyDescriptors; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperties: _objectDps }); + var $Object$1 = _core.Object; + var defineProperties = function defineProperties2(T, D) { + return $Object$1.defineProperties(T, D); + }; + var defineProperties$1 = defineProperties; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperty: _objectDp.f }); + var $Object$2 = _core.Object; + var defineProperty$1 = function defineProperty2(it, key, desc) { + return $Object$2.defineProperty(it, key, desc); + }; + var defineProperty$2 = defineProperty$1; + var defineProperty$3 = createCommonjsModule(function(module3) { + function _defineProperty2(obj2, key, value) { + if (key in obj2) { + defineProperty$2(obj2, key, { + value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj2[key] = value; + } + return obj2; + } + module3.exports = _defineProperty2; + module3.exports["default"] = module3.exports, module3.exports.__esModule = true; + }); + var _defineProperty = unwrapExports(defineProperty$3); + _wksDefine("asyncIterator"); + _wksDefine("observable"); + var symbol = _core.Symbol; + var symbol$1 = symbol; + function ownKeys(object, enumerableOnly) { + var keys2 = keys$1(object); + if (getOwnPropertySymbols$1) { + var symbols = getOwnPropertySymbols$1(object); + if (enumerableOnly) { + symbols = symbols.filter(function(sym) { + return getOwnPropertyDescriptor$1(object, sym).enumerable; + }); + } + keys2.push.apply(keys2, symbols); + } + return keys2; + } + function _objectSpread(target) { + for (var i2 = 1; i2 < arguments.length; i2++) { + var source2 = arguments[i2] != null ? arguments[i2] : {}; + if (i2 % 2) { + ownKeys(Object(source2), true).forEach(function(key) { + _defineProperty(target, key, source2[key]); + }); + } else if (getOwnPropertyDescriptors$1) { + defineProperties$1(target, getOwnPropertyDescriptors$1(source2)); + } else { + ownKeys(Object(source2)).forEach(function(key) { + defineProperty$2(target, key, getOwnPropertyDescriptor$1(source2, key)); + }); + } + } + return target; + } + var ARRAY_FORMAT = symbol$1(); + var INDICES_REGEX = /\[\d+\]$/; + var BRACKETS_REGEX = /\[\]$/; + function parseQuery(query, options2) { + return qs.parse(query, _objectSpread({ + plainObjects: true, + ignoreQueryPrefix: true, + strictNullHandling: true + }, options2)); + } + function stringifyQuery(obj2, options2 = {}) { + return qs.stringify(obj2, _objectSpread({ + addQueryPrefix: true, + strictNullHandling: true + }, options2)); + } + function arrayFormat(query) { + const keys2 = (query || "").replace("?", "").split("&").map((str) => decodeURIComponent(str.split("=")[0])); + for (const key of keys2) { + if (INDICES_REGEX.test(key)) { + return "indices"; + } else if (BRACKETS_REGEX.test(key)) { + return "brackets"; + } + } + const hasDuplicate = keys2.some((key, index2) => keys2.indexOf(key) !== index2); + if (hasDuplicate) { + return "repeat"; + } + } + var URL2 = class extends URLParse { + constructor(url2, parse7) { + super(url2); + if (parse7) { + this.set("query", this.query || {}); + } + } + /** + * Override set for `query` so we can pass it our custom parser. + * https://github.com/unshiftio/url-parse/blob/1.4.4/index.js#L314-L316 + * + * @override + */ + set(part, value, fn) { + if (part === "query") { + if (value && typeof value === "string") { + this[ARRAY_FORMAT] = arrayFormat(value) || this[ARRAY_FORMAT]; + } + return super.set(part, value, parseQuery); + } + return super.set(part, value, fn); + } + /** + * Override toString so we can pass it our custom query stringify method. + * https://github.com/unshiftio/url-parse/blob/1.4.4/index.js#L414 + * + * @override + */ + toString() { + return super.toString((obj2) => stringifyQuery(obj2, { + arrayFormat: this[ARRAY_FORMAT] + })); + } + }; + function buildUrl(...paths) { + const url2 = new URL2(paths.map((p) => p && (p + "").trim()).filter(Boolean).join("/")); + url2.set("pathname", url2.pathname.replace(/\/{2,}/g, "/")); + return url2.href; + } + var supportsBlob = (() => { + try { + return !!new Blob(); + } catch (e) { + return false; + } + })(); + function readBlob2(blob) { + return new promise$1((resolve8, reject) => { + const reader = new FileReader(); + reader.onend = reject; + reader.onabort = reject; + reader.onload = () => resolve8(reader.result); + reader.readAsDataURL(new Blob([blob], { + type: blob.type + })); + }); + } + async function serialize(body2) { + if (supportsBlob && body2 instanceof Blob) { + return await readBlob2(body2); + } + return body2; + } + var supportsFormData = typeof FormData !== "undefined"; + async function serialize$1(body2) { + if (supportsFormData && body2 instanceof FormData) { + const data = []; + for (const [key, value] of body2.entries()) { + if (supportsBlob && value instanceof Blob) { + const blobContent = await readBlob2(value); + data.push(`${key}=${blobContent}`); + } else { + data.push(`${key}=${value}`); + } + } + return data.join("\r\n"); + } + return body2; + } + _export(_export.S, "Array", { isArray: _isArray }); + var isArray2 = _core.Array.isArray; + var isArray$1 = isArray2; + var supportsBuffer = typeof Buffer !== "undefined"; + var supportsArrayBuffer = typeof ArrayBuffer !== "undefined"; + function serialize$2(body2) { + if (supportsBuffer && body2) { + let buffer3; + if (Buffer.isBuffer(body2)) { + buffer3 = body2; + } else if (isArray$1(body2) && body2.some((c) => Buffer.isBuffer(c))) { + const chunks = body2.map((c) => Buffer.from(c)); + buffer3 = Buffer.concat(chunks); + } else if (`${body2}` === "[object ArrayBuffer]") { + buffer3 = Buffer.from(body2); + } else if (supportsArrayBuffer && ArrayBuffer.isView(body2)) { + buffer3 = Buffer.from(body2.buffer, body2.byteOffset, body2.byteLength); + } + if (Buffer.isBuffer(buffer3)) { + return buffer3.toString("base64"); + } + } + return body2; + } + var index = { + blob: serialize, + formData: serialize$1, + buffer: serialize$2 + }; + function isBufferUtf8Representable(buffer$1) { + const utfEncodedBuffer = buffer$1.toString("utf8"); + const reconstructedBuffer = buffer2.Buffer.from(utfEncodedBuffer, "utf8"); + return reconstructedBuffer.equals(buffer$1); + } + function cloneArrayBuffer(arrayBuffer) { + const clonedArrayBuffer = new ArrayBuffer(arrayBuffer.byteLength); + new Uint8Array(clonedArrayBuffer).set(new Uint8Array(arrayBuffer)); + return clonedArrayBuffer; + } + exports2.ACTIONS = actions2; + exports2.EXPIRY_STRATEGIES = expiryStrategies; + exports2.HTTP_METHODS = httpMethods; + exports2.HTTP_STATUS_CODES = httpStatusCodes; + exports2.MODES = modes; + exports2.PollyError = PollyError; + exports2.Serializers = index; + exports2.URL = URL2; + exports2.assert = assert2; + exports2.buildUrl = buildUrl; + exports2.cloneArrayBuffer = cloneArrayBuffer; + exports2.isBufferUtf8Representable = isBufferUtf8Representable; + exports2.timeout = timeout; + exports2.timestamp = timestamp; + } +}); + +// ../node_modules/.pnpm/@pollyjs+adapter@6.0.6/node_modules/@pollyjs/adapter/dist/cjs/pollyjs-adapter.js +var require_pollyjs_adapter = __commonJS({ + "../node_modules/.pnpm/@pollyjs+adapter@6.0.6/node_modules/@pollyjs/adapter/dist/cjs/pollyjs-adapter.js"(exports2, module2) { + "use strict"; + var utils = require_pollyjs_utils(); + var _defined = function(it) { + if (it == void 0) + throw TypeError("Can't call method on " + it); + return it; + }; + var _toObject = function(it) { + return Object(_defined(it)); + }; + var hasOwnProperty2 = {}.hasOwnProperty; + var _has = function(it, key) { + return hasOwnProperty2.call(it, key); + }; + var toString3 = {}.toString; + var _cof = function(it) { + return toString3.call(it).slice(8, -1); + }; + var _iobject = Object("z").propertyIsEnumerable(0) ? Object : function(it) { + return _cof(it) == "String" ? it.split("") : Object(it); + }; + var _toIobject = function(it) { + return _iobject(_defined(it)); + }; + var ceil = Math.ceil; + var floor = Math.floor; + var _toInteger = function(it) { + return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); + }; + var min = Math.min; + var _toLength = function(it) { + return it > 0 ? min(_toInteger(it), 9007199254740991) : 0; + }; + var max = Math.max; + var min$1 = Math.min; + var _toAbsoluteIndex = function(index, length) { + index = _toInteger(index); + return index < 0 ? max(index + length, 0) : min$1(index, length); + }; + var _arrayIncludes = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O = _toIobject($this); + var length = _toLength(O.length); + var index = _toAbsoluteIndex(fromIndex, length); + var value; + if (IS_INCLUDES && el != el) + while (length > index) { + value = O[index++]; + if (value != value) + return true; + } + else + for (; length > index; index++) + if (IS_INCLUDES || index in O) { + if (O[index] === el) + return IS_INCLUDES || index || 0; + } + return !IS_INCLUDES && -1; + }; + }; + function unwrapExports(x) { + return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x; + } + function createCommonjsModule(fn, module3) { + return module3 = { exports: {} }, fn(module3, module3.exports), module3.exports; + } + function getCjsExportFromNamespace(n) { + return n && n["default"] || n; + } + var _core = createCommonjsModule(function(module3) { + var core = module3.exports = { version: "2.6.9" }; + if (typeof __e == "number") + __e = core; + }); + var _core_1 = _core.version; + var _global2 = createCommonjsModule(function(module3) { + var global2 = module3.exports = typeof window != "undefined" && window.Math == Math ? window : typeof self != "undefined" && self.Math == Math ? self : Function("return this")(); + if (typeof __g == "number") + __g = global2; + }); + var _library = true; + var _shared = createCommonjsModule(function(module3) { + var SHARED = "__core-js_shared__"; + var store = _global2[SHARED] || (_global2[SHARED] = {}); + (module3.exports = function(key, value) { + return store[key] || (store[key] = value !== void 0 ? value : {}); + })("versions", []).push({ + version: _core.version, + mode: "pure", + copyright: "\xA9 2019 Denis Pushkarev (zloirock.ru)" + }); + }); + var id = 0; + var px = Math.random(); + var _uid = function(key) { + return "Symbol(".concat(key === void 0 ? "" : key, ")_", (++id + px).toString(36)); + }; + var shared = _shared("keys"); + var _sharedKey = function(key) { + return shared[key] || (shared[key] = _uid(key)); + }; + var arrayIndexOf = _arrayIncludes(false); + var IE_PROTO = _sharedKey("IE_PROTO"); + var _objectKeysInternal = function(object, names) { + var O = _toIobject(object); + var i = 0; + var result = []; + var key; + for (key in O) + if (key != IE_PROTO) + _has(O, key) && result.push(key); + while (names.length > i) + if (_has(O, key = names[i++])) { + ~arrayIndexOf(result, key) || result.push(key); + } + return result; + }; + var _enumBugKeys = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","); + var _objectKeys = Object.keys || function keys2(O) { + return _objectKeysInternal(O, _enumBugKeys); + }; + var _aFunction = function(it) { + if (typeof it != "function") + throw TypeError(it + " is not a function!"); + return it; + }; + var _ctx = function(fn, that, length) { + _aFunction(fn); + if (that === void 0) + return fn; + switch (length) { + case 1: + return function(a) { + return fn.call(that, a); + }; + case 2: + return function(a, b) { + return fn.call(that, a, b); + }; + case 3: + return function(a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function() { + return fn.apply(that, arguments); + }; + }; + var _isObject = function(it) { + return typeof it === "object" ? it !== null : typeof it === "function"; + }; + var _anObject = function(it) { + if (!_isObject(it)) + throw TypeError(it + " is not an object!"); + return it; + }; + var _fails = function(exec3) { + try { + return !!exec3(); + } catch (e) { + return true; + } + }; + var _descriptors = !_fails(function() { + return Object.defineProperty({}, "a", { get: function() { + return 7; + } }).a != 7; + }); + var document2 = _global2.document; + var is = _isObject(document2) && _isObject(document2.createElement); + var _domCreate = function(it) { + return is ? document2.createElement(it) : {}; + }; + var _ie8DomDefine = !_descriptors && !_fails(function() { + return Object.defineProperty(_domCreate("div"), "a", { get: function() { + return 7; + } }).a != 7; + }); + var _toPrimitive = function(it, S) { + if (!_isObject(it)) + return it; + var fn, val; + if (S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + if (typeof (fn = it.valueOf) == "function" && !_isObject(val = fn.call(it))) + return val; + if (!S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + throw TypeError("Can't convert object to primitive value"); + }; + var dP = Object.defineProperty; + var f = _descriptors ? Object.defineProperty : function defineProperty2(O, P, Attributes) { + _anObject(O); + P = _toPrimitive(P, true); + _anObject(Attributes); + if (_ie8DomDefine) + try { + return dP(O, P, Attributes); + } catch (e) { + } + if ("get" in Attributes || "set" in Attributes) + throw TypeError("Accessors not supported!"); + if ("value" in Attributes) + O[P] = Attributes.value; + return O; + }; + var _objectDp = { + f + }; + var _propertyDesc = function(bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value + }; + }; + var _hide = _descriptors ? function(object, key, value) { + return _objectDp.f(object, key, _propertyDesc(1, value)); + } : function(object, key, value) { + object[key] = value; + return object; + }; + var PROTOTYPE = "prototype"; + var $export = function(type2, name, source2) { + var IS_FORCED = type2 & $export.F; + var IS_GLOBAL = type2 & $export.G; + var IS_STATIC = type2 & $export.S; + var IS_PROTO = type2 & $export.P; + var IS_BIND = type2 & $export.B; + var IS_WRAP = type2 & $export.W; + var exports3 = IS_GLOBAL ? _core : _core[name] || (_core[name] = {}); + var expProto = exports3[PROTOTYPE]; + var target = IS_GLOBAL ? _global2 : IS_STATIC ? _global2[name] : (_global2[name] || {})[PROTOTYPE]; + var key, own, out2; + if (IS_GLOBAL) + source2 = name; + for (key in source2) { + own = !IS_FORCED && target && target[key] !== void 0; + if (own && _has(exports3, key)) + continue; + out2 = own ? target[key] : source2[key]; + exports3[key] = IS_GLOBAL && typeof target[key] != "function" ? source2[key] : IS_BIND && own ? _ctx(out2, _global2) : IS_WRAP && target[key] == out2 ? function(C2) { + var F = function(a, b, c) { + if (this instanceof C2) { + switch (arguments.length) { + case 0: + return new C2(); + case 1: + return new C2(a); + case 2: + return new C2(a, b); + } + return new C2(a, b, c); + } + return C2.apply(this, arguments); + }; + F[PROTOTYPE] = C2[PROTOTYPE]; + return F; + }(out2) : IS_PROTO && typeof out2 == "function" ? _ctx(Function.call, out2) : out2; + if (IS_PROTO) { + (exports3.virtual || (exports3.virtual = {}))[key] = out2; + if (type2 & $export.R && expProto && !expProto[key]) + _hide(expProto, key, out2); + } + } + }; + $export.F = 1; + $export.G = 2; + $export.S = 4; + $export.P = 8; + $export.B = 16; + $export.W = 32; + $export.U = 64; + $export.R = 128; + var _export = $export; + var _objectSap = function(KEY, exec3) { + var fn = (_core.Object || {})[KEY] || Object[KEY]; + var exp = {}; + exp[KEY] = exec3(fn); + _export(_export.S + _export.F * _fails(function() { + fn(1); + }), "Object", exp); + }; + _objectSap("keys", function() { + return function keys2(it) { + return _objectKeys(_toObject(it)); + }; + }); + var keys = _core.Object.keys; + var keys$1 = keys; + var _redefine = _hide; + var _meta = createCommonjsModule(function(module3) { + var META2 = _uid("meta"); + var setDesc = _objectDp.f; + var id2 = 0; + var isExtensible = Object.isExtensible || function() { + return true; + }; + var FREEZE = !_fails(function() { + return isExtensible(Object.preventExtensions({})); + }); + var setMeta = function(it) { + setDesc(it, META2, { value: { + i: "O" + ++id2, + // object ID + w: {} + // weak collections IDs + } }); + }; + var fastKey = function(it, create2) { + if (!_isObject(it)) + return typeof it == "symbol" ? it : (typeof it == "string" ? "S" : "P") + it; + if (!_has(it, META2)) { + if (!isExtensible(it)) + return "F"; + if (!create2) + return "E"; + setMeta(it); + } + return it[META2].i; + }; + var getWeak = function(it, create2) { + if (!_has(it, META2)) { + if (!isExtensible(it)) + return true; + if (!create2) + return false; + setMeta(it); + } + return it[META2].w; + }; + var onFreeze = function(it) { + if (FREEZE && meta.NEED && isExtensible(it) && !_has(it, META2)) + setMeta(it); + return it; + }; + var meta = module3.exports = { + KEY: META2, + NEED: false, + fastKey, + getWeak, + onFreeze + }; + }); + var _meta_1 = _meta.KEY; + var _meta_2 = _meta.NEED; + var _meta_3 = _meta.fastKey; + var _meta_4 = _meta.getWeak; + var _meta_5 = _meta.onFreeze; + var _wks = createCommonjsModule(function(module3) { + var store = _shared("wks"); + var Symbol2 = _global2.Symbol; + var USE_SYMBOL = typeof Symbol2 == "function"; + var $exports = module3.exports = function(name) { + return store[name] || (store[name] = USE_SYMBOL && Symbol2[name] || (USE_SYMBOL ? Symbol2 : _uid)("Symbol." + name)); + }; + $exports.store = store; + }); + var def = _objectDp.f; + var TAG = _wks("toStringTag"); + var _setToStringTag = function(it, tag, stat7) { + if (it && !_has(it = stat7 ? it : it.prototype, TAG)) + def(it, TAG, { configurable: true, value: tag }); + }; + var f$1 = _wks; + var _wksExt = { + f: f$1 + }; + var defineProperty = _objectDp.f; + var _wksDefine = function(name) { + var $Symbol2 = _core.Symbol || (_core.Symbol = {}); + if (name.charAt(0) != "_" && !(name in $Symbol2)) + defineProperty($Symbol2, name, { value: _wksExt.f(name) }); + }; + var f$2 = Object.getOwnPropertySymbols; + var _objectGops = { + f: f$2 + }; + var f$3 = {}.propertyIsEnumerable; + var _objectPie = { + f: f$3 + }; + var _enumKeys = function(it) { + var result = _objectKeys(it); + var getSymbols = _objectGops.f; + if (getSymbols) { + var symbols = getSymbols(it); + var isEnum2 = _objectPie.f; + var i = 0; + var key; + while (symbols.length > i) + if (isEnum2.call(it, key = symbols[i++])) + result.push(key); + } + return result; + }; + var _isArray = Array.isArray || function isArray3(arg) { + return _cof(arg) == "Array"; + }; + var _objectDps = _descriptors ? Object.defineProperties : function defineProperties2(O, Properties) { + _anObject(O); + var keys2 = _objectKeys(Properties); + var length = keys2.length; + var i = 0; + var P; + while (length > i) + _objectDp.f(O, P = keys2[i++], Properties[P]); + return O; + }; + var document$1 = _global2.document; + var _html = document$1 && document$1.documentElement; + var IE_PROTO$1 = _sharedKey("IE_PROTO"); + var Empty = function() { + }; + var PROTOTYPE$1 = "prototype"; + var createDict = function() { + var iframe = _domCreate("iframe"); + var i = _enumBugKeys.length; + var lt = "<"; + var gt = ">"; + var iframeDocument; + iframe.style.display = "none"; + _html.appendChild(iframe); + iframe.src = "javascript:"; + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(lt + "script" + gt + "document.F=Object" + lt + "/script" + gt); + iframeDocument.close(); + createDict = iframeDocument.F; + while (i--) + delete createDict[PROTOTYPE$1][_enumBugKeys[i]]; + return createDict(); + }; + var _objectCreate = Object.create || function create2(O, Properties) { + var result; + if (O !== null) { + Empty[PROTOTYPE$1] = _anObject(O); + result = new Empty(); + Empty[PROTOTYPE$1] = null; + result[IE_PROTO$1] = O; + } else + result = createDict(); + return Properties === void 0 ? result : _objectDps(result, Properties); + }; + var hiddenKeys = _enumBugKeys.concat("length", "prototype"); + var f$4 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return _objectKeysInternal(O, hiddenKeys); + }; + var _objectGopn = { + f: f$4 + }; + var gOPN = _objectGopn.f; + var toString$1 = {}.toString; + var windowNames = typeof window == "object" && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : []; + var getWindowNames = function(it) { + try { + return gOPN(it); + } catch (e) { + return windowNames.slice(); + } + }; + var f$5 = function getOwnPropertyNames(it) { + return windowNames && toString$1.call(it) == "[object Window]" ? getWindowNames(it) : gOPN(_toIobject(it)); + }; + var _objectGopnExt = { + f: f$5 + }; + var gOPD = Object.getOwnPropertyDescriptor; + var f$6 = _descriptors ? gOPD : function getOwnPropertyDescriptor2(O, P) { + O = _toIobject(O); + P = _toPrimitive(P, true); + if (_ie8DomDefine) + try { + return gOPD(O, P); + } catch (e) { + } + if (_has(O, P)) + return _propertyDesc(!_objectPie.f.call(O, P), O[P]); + }; + var _objectGopd = { + f: f$6 + }; + var META = _meta.KEY; + var gOPD$1 = _objectGopd.f; + var dP$1 = _objectDp.f; + var gOPN$1 = _objectGopnExt.f; + var $Symbol = _global2.Symbol; + var $JSON = _global2.JSON; + var _stringify = $JSON && $JSON.stringify; + var PROTOTYPE$2 = "prototype"; + var HIDDEN = _wks("_hidden"); + var TO_PRIMITIVE = _wks("toPrimitive"); + var isEnum = {}.propertyIsEnumerable; + var SymbolRegistry = _shared("symbol-registry"); + var AllSymbols = _shared("symbols"); + var OPSymbols = _shared("op-symbols"); + var ObjectProto = Object[PROTOTYPE$2]; + var USE_NATIVE = typeof $Symbol == "function" && !!_objectGops.f; + var QObject = _global2.QObject; + var setter = !QObject || !QObject[PROTOTYPE$2] || !QObject[PROTOTYPE$2].findChild; + var setSymbolDesc = _descriptors && _fails(function() { + return _objectCreate(dP$1({}, "a", { + get: function() { + return dP$1(this, "a", { value: 7 }).a; + } + })).a != 7; + }) ? function(it, key, D) { + var protoDesc = gOPD$1(ObjectProto, key); + if (protoDesc) + delete ObjectProto[key]; + dP$1(it, key, D); + if (protoDesc && it !== ObjectProto) + dP$1(ObjectProto, key, protoDesc); + } : dP$1; + var wrap2 = function(tag) { + var sym = AllSymbols[tag] = _objectCreate($Symbol[PROTOTYPE$2]); + sym._k = tag; + return sym; + }; + var isSymbol = USE_NATIVE && typeof $Symbol.iterator == "symbol" ? function(it) { + return typeof it == "symbol"; + } : function(it) { + return it instanceof $Symbol; + }; + var $defineProperty = function defineProperty2(it, key, D) { + if (it === ObjectProto) + $defineProperty(OPSymbols, key, D); + _anObject(it); + key = _toPrimitive(key, true); + _anObject(D); + if (_has(AllSymbols, key)) { + if (!D.enumerable) { + if (!_has(it, HIDDEN)) + dP$1(it, HIDDEN, _propertyDesc(1, {})); + it[HIDDEN][key] = true; + } else { + if (_has(it, HIDDEN) && it[HIDDEN][key]) + it[HIDDEN][key] = false; + D = _objectCreate(D, { enumerable: _propertyDesc(0, false) }); + } + return setSymbolDesc(it, key, D); + } + return dP$1(it, key, D); + }; + var $defineProperties = function defineProperties2(it, P) { + _anObject(it); + var keys2 = _enumKeys(P = _toIobject(P)); + var i = 0; + var l2 = keys2.length; + var key; + while (l2 > i) + $defineProperty(it, key = keys2[i++], P[key]); + return it; + }; + var $create = function create2(it, P) { + return P === void 0 ? _objectCreate(it) : $defineProperties(_objectCreate(it), P); + }; + var $propertyIsEnumerable = function propertyIsEnumerable(key) { + var E = isEnum.call(this, key = _toPrimitive(key, true)); + if (this === ObjectProto && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return false; + return E || !_has(this, key) || !_has(AllSymbols, key) || _has(this, HIDDEN) && this[HIDDEN][key] ? E : true; + }; + var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + it = _toIobject(it); + key = _toPrimitive(key, true); + if (it === ObjectProto && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return; + var D = gOPD$1(it, key); + if (D && _has(AllSymbols, key) && !(_has(it, HIDDEN) && it[HIDDEN][key])) + D.enumerable = true; + return D; + }; + var $getOwnPropertyNames = function getOwnPropertyNames(it) { + var names = gOPN$1(_toIobject(it)); + var result = []; + var i = 0; + var key; + while (names.length > i) { + if (!_has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) + result.push(key); + } + return result; + }; + var $getOwnPropertySymbols = function getOwnPropertySymbols2(it) { + var IS_OP = it === ObjectProto; + var names = gOPN$1(IS_OP ? OPSymbols : _toIobject(it)); + var result = []; + var i = 0; + var key; + while (names.length > i) { + if (_has(AllSymbols, key = names[i++]) && (IS_OP ? _has(ObjectProto, key) : true)) + result.push(AllSymbols[key]); + } + return result; + }; + if (!USE_NATIVE) { + $Symbol = function Symbol2() { + if (this instanceof $Symbol) + throw TypeError("Symbol is not a constructor!"); + var tag = _uid(arguments.length > 0 ? arguments[0] : void 0); + var $set = function(value) { + if (this === ObjectProto) + $set.call(OPSymbols, value); + if (_has(this, HIDDEN) && _has(this[HIDDEN], tag)) + this[HIDDEN][tag] = false; + setSymbolDesc(this, tag, _propertyDesc(1, value)); + }; + if (_descriptors && setter) + setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); + return wrap2(tag); + }; + _redefine($Symbol[PROTOTYPE$2], "toString", function toString4() { + return this._k; + }); + _objectGopd.f = $getOwnPropertyDescriptor; + _objectDp.f = $defineProperty; + _objectGopn.f = _objectGopnExt.f = $getOwnPropertyNames; + _objectPie.f = $propertyIsEnumerable; + _objectGops.f = $getOwnPropertySymbols; + if (_descriptors && !_library) { + _redefine(ObjectProto, "propertyIsEnumerable", $propertyIsEnumerable, true); + } + _wksExt.f = function(name) { + return wrap2(_wks(name)); + }; + } + _export(_export.G + _export.W + _export.F * !USE_NATIVE, { Symbol: $Symbol }); + for (es6Symbols = // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 + "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), j = 0; es6Symbols.length > j; ) + _wks(es6Symbols[j++]); + var es6Symbols; + var j; + for (wellKnownSymbols = _objectKeys(_wks.store), k = 0; wellKnownSymbols.length > k; ) + _wksDefine(wellKnownSymbols[k++]); + var wellKnownSymbols; + var k; + _export(_export.S + _export.F * !USE_NATIVE, "Symbol", { + // 19.4.2.1 Symbol.for(key) + "for": function(key) { + return _has(SymbolRegistry, key += "") ? SymbolRegistry[key] : SymbolRegistry[key] = $Symbol(key); + }, + // 19.4.2.5 Symbol.keyFor(sym) + keyFor: function keyFor(sym) { + if (!isSymbol(sym)) + throw TypeError(sym + " is not a symbol!"); + for (var key in SymbolRegistry) + if (SymbolRegistry[key] === sym) + return key; + }, + useSetter: function() { + setter = true; + }, + useSimple: function() { + setter = false; + } + }); + _export(_export.S + _export.F * !USE_NATIVE, "Object", { + // 19.1.2.2 Object.create(O [, Properties]) + create: $create, + // 19.1.2.4 Object.defineProperty(O, P, Attributes) + defineProperty: $defineProperty, + // 19.1.2.3 Object.defineProperties(O, Properties) + defineProperties: $defineProperties, + // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) + getOwnPropertyDescriptor: $getOwnPropertyDescriptor, + // 19.1.2.7 Object.getOwnPropertyNames(O) + getOwnPropertyNames: $getOwnPropertyNames, + // 19.1.2.8 Object.getOwnPropertySymbols(O) + getOwnPropertySymbols: $getOwnPropertySymbols + }); + var FAILS_ON_PRIMITIVES = _fails(function() { + _objectGops.f(1); + }); + _export(_export.S + _export.F * FAILS_ON_PRIMITIVES, "Object", { + getOwnPropertySymbols: function getOwnPropertySymbols2(it) { + return _objectGops.f(_toObject(it)); + } + }); + $JSON && _export(_export.S + _export.F * (!USE_NATIVE || _fails(function() { + var S = $Symbol(); + return _stringify([S]) != "[null]" || _stringify({ a: S }) != "{}" || _stringify(Object(S)) != "{}"; + })), "JSON", { + stringify: function stringify2(it) { + var args3 = [it]; + var i = 1; + var replacer, $replacer; + while (arguments.length > i) + args3.push(arguments[i++]); + $replacer = replacer = args3[1]; + if (!_isObject(replacer) && it === void 0 || isSymbol(it)) + return; + if (!_isArray(replacer)) + replacer = function(key, value) { + if (typeof $replacer == "function") + value = $replacer.call(this, key, value); + if (!isSymbol(value)) + return value; + }; + args3[1] = replacer; + return _stringify.apply($JSON, args3); + } + }); + $Symbol[PROTOTYPE$2][TO_PRIMITIVE] || _hide($Symbol[PROTOTYPE$2], TO_PRIMITIVE, $Symbol[PROTOTYPE$2].valueOf); + _setToStringTag($Symbol, "Symbol"); + _setToStringTag(Math, "Math", true); + _setToStringTag(_global2.JSON, "JSON", true); + var getOwnPropertySymbols = _core.Object.getOwnPropertySymbols; + var getOwnPropertySymbols$1 = getOwnPropertySymbols; + var $getOwnPropertyDescriptor$1 = _objectGopd.f; + _objectSap("getOwnPropertyDescriptor", function() { + return function getOwnPropertyDescriptor2(it, key) { + return $getOwnPropertyDescriptor$1(_toIobject(it), key); + }; + }); + var $Object = _core.Object; + var getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + return $Object.getOwnPropertyDescriptor(it, key); + }; + var getOwnPropertyDescriptor$1 = getOwnPropertyDescriptor; + var Reflect2 = _global2.Reflect; + var _ownKeys = Reflect2 && Reflect2.ownKeys || function ownKeys2(it) { + var keys2 = _objectGopn.f(_anObject(it)); + var getSymbols = _objectGops.f; + return getSymbols ? keys2.concat(getSymbols(it)) : keys2; + }; + var _createProperty = function(object, index, value) { + if (index in object) + _objectDp.f(object, index, _propertyDesc(0, value)); + else + object[index] = value; + }; + _export(_export.S, "Object", { + getOwnPropertyDescriptors: function getOwnPropertyDescriptors2(object) { + var O = _toIobject(object); + var getDesc = _objectGopd.f; + var keys2 = _ownKeys(O); + var result = {}; + var i = 0; + var key, desc; + while (keys2.length > i) { + desc = getDesc(O, key = keys2[i++]); + if (desc !== void 0) + _createProperty(result, key, desc); + } + return result; + } + }); + var getOwnPropertyDescriptors = _core.Object.getOwnPropertyDescriptors; + var getOwnPropertyDescriptors$1 = getOwnPropertyDescriptors; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperties: _objectDps }); + var $Object$1 = _core.Object; + var defineProperties = function defineProperties2(T, D) { + return $Object$1.defineProperties(T, D); + }; + var defineProperties$1 = defineProperties; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperty: _objectDp.f }); + var $Object$2 = _core.Object; + var defineProperty$1 = function defineProperty2(it, key, desc) { + return $Object$2.defineProperty(it, key, desc); + }; + var defineProperty$2 = defineProperty$1; + var defineProperty$3 = createCommonjsModule(function(module3) { + function _defineProperty2(obj2, key, value) { + if (key in obj2) { + defineProperty$2(obj2, key, { + value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj2[key] = value; + } + return obj2; + } + module3.exports = _defineProperty2; + module3.exports["default"] = module3.exports, module3.exports.__esModule = true; + }); + var _defineProperty = unwrapExports(defineProperty$3); + var es6_object_toString = /* @__PURE__ */ Object.freeze({}); + _wksDefine("asyncIterator"); + _wksDefine("observable"); + getCjsExportFromNamespace(es6_object_toString); + var symbol = _core.Symbol; + var symbol$1 = symbol; + var $JSON$1 = _core.JSON || (_core.JSON = { stringify: JSON.stringify }); + var stringify = function stringify2(it) { + return $JSON$1.stringify.apply($JSON$1, arguments); + }; + var stringify$1 = stringify; + var _stringWs = " \n\v\f\r \xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF"; + var space = "[" + _stringWs + "]"; + var non = "\u200B\x85"; + var ltrim = RegExp("^" + space + space + "*"); + var rtrim2 = RegExp(space + space + "*$"); + var exporter = function(KEY, exec3, ALIAS) { + var exp = {}; + var FORCE = _fails(function() { + return !!_stringWs[KEY]() || non[KEY]() != non; + }); + var fn = exp[KEY] = FORCE ? exec3(trim2) : _stringWs[KEY]; + if (ALIAS) + exp[ALIAS] = fn; + _export(_export.P + _export.F * FORCE, "String", exp); + }; + var trim2 = exporter.trim = function(string, TYPE2) { + string = String(_defined(string)); + if (TYPE2 & 1) + string = string.replace(ltrim, ""); + if (TYPE2 & 2) + string = string.replace(rtrim2, ""); + return string; + }; + var _stringTrim = exporter; + var $parseFloat = _global2.parseFloat; + var $trim = _stringTrim.trim; + var _parseFloat = 1 / $parseFloat(_stringWs + "-0") !== -Infinity ? function parseFloat2(str) { + var string = $trim(String(str), 3); + var result = $parseFloat(string); + return result === 0 && string.charAt(0) == "-" ? -0 : result; + } : $parseFloat; + _export(_export.G + _export.F * (parseFloat != _parseFloat), { parseFloat: _parseFloat }); + var _parseFloat$1 = _core.parseFloat; + var _parseFloat$2 = _parseFloat$1; + var ALPHA_NUMERIC_DOT = /([0-9.]+)([a-zA-Z]+)/g; + var TIMES = { + ms: 1, + millisecond: 1, + milliseconds: 1, + s: 1e3, + sec: 1e3, + secs: 1e3, + second: 1e3, + seconds: 1e3, + m: 6e4, + min: 6e4, + mins: 6e4, + minute: 6e4, + minutes: 6e4, + h: 36e5, + hr: 36e5, + hrs: 36e5, + hour: 36e5, + hours: 36e5, + d: 864e5, + day: 864e5, + days: 864e5, + w: 6048e5, + wk: 6048e5, + wks: 6048e5, + week: 6048e5, + weeks: 6048e5, + y: 31536e6, + yr: 31536e6, + yrs: 31536e6, + year: 31536e6, + years: 31536e6 + }; + function dehumanizeTime(input) { + if (typeof input !== "string") { + return NaN; + } + const parts = input.replace(/ /g, "").match(ALPHA_NUMERIC_DOT); + const sets = parts.map((part) => part.split(ALPHA_NUMERIC_DOT).filter((o) => o)); + return sets.reduce((accum, [number, unit]) => { + return accum + _parseFloat$2(number) * TIMES[unit]; + }, 0); + } + function isExpired(recordedOn, expiresIn) { + if (recordedOn && expiresIn) { + return /* @__PURE__ */ new Date() > new Date(new Date(recordedOn).getTime() + dehumanizeTime(expiresIn)); + } + return false; + } + function ownKeys(object, enumerableOnly) { + var keys2 = keys$1(object); + if (getOwnPropertySymbols$1) { + var symbols = getOwnPropertySymbols$1(object); + if (enumerableOnly) { + symbols = symbols.filter(function(sym) { + return getOwnPropertyDescriptor$1(object, sym).enumerable; + }); + } + keys2.push.apply(keys2, symbols); + } + return keys2; + } + function _objectSpread(target) { + for (var i = 1; i < arguments.length; i++) { + var source2 = arguments[i] != null ? arguments[i] : {}; + if (i % 2) { + ownKeys(Object(source2), true).forEach(function(key) { + _defineProperty(target, key, source2[key]); + }); + } else if (getOwnPropertyDescriptors$1) { + defineProperties$1(target, getOwnPropertyDescriptors$1(source2)); + } else { + ownKeys(Object(source2)).forEach(function(key) { + defineProperty$2(target, key, getOwnPropertyDescriptor$1(source2, key)); + }); + } + } + return target; + } + function stringifyRequest(req, ...args3) { + const config = _objectSpread({}, req.config); + ["adapter", "adapterOptions", "persister", "persisterOptions"].forEach((k2) => delete config[k2]); + return stringify$1({ + url: req.url, + method: req.method, + headers: req.headers, + body: req.body, + recordingName: req.recordingName, + id: req.id, + order: req.order, + identifiers: req.identifiers, + config + }, ...args3); + } + var { + isArray: isArray2 + } = Array; + function normalizeRecordedResponse(response) { + const { + status, + statusText, + headers, + content + } = response; + return { + statusText, + statusCode: status, + headers: normalizeHeaders(headers), + body: content && content.text, + encoding: content && content.encoding + }; + } + function normalizeHeaders(headers) { + return (headers || []).reduce((accum, { + name, + value, + _fromType + }) => { + const existingValue = accum[name]; + if (existingValue) { + if (!isArray2(existingValue)) { + accum[name] = [existingValue]; + } + accum[name].push(value); + } else { + accum[name] = _fromType === "array" ? [value] : value; + } + return accum; + }, {}); + } + function ownKeys$1(object, enumerableOnly) { + var keys2 = keys$1(object); + if (getOwnPropertySymbols$1) { + var symbols = getOwnPropertySymbols$1(object); + if (enumerableOnly) { + symbols = symbols.filter(function(sym) { + return getOwnPropertyDescriptor$1(object, sym).enumerable; + }); + } + keys2.push.apply(keys2, symbols); + } + return keys2; + } + function _objectSpread$1(target) { + for (var i = 1; i < arguments.length; i++) { + var source2 = arguments[i] != null ? arguments[i] : {}; + if (i % 2) { + ownKeys$1(Object(source2), true).forEach(function(key) { + _defineProperty(target, key, source2[key]); + }); + } else if (getOwnPropertyDescriptors$1) { + defineProperties$1(target, getOwnPropertyDescriptors$1(source2)); + } else { + ownKeys$1(Object(source2)).forEach(function(key) { + defineProperty$2(target, key, getOwnPropertyDescriptor$1(source2, key)); + }); + } + } + return target; + } + var REQUEST_HANDLER = symbol$1(); + var Adapter = class { + constructor(polly) { + this.polly = polly; + this.isConnected = false; + } + static get type() { + return "adapter"; + } + /* eslint-disable-next-line getter-return */ + static get id() { + utils.assert("Must override the static `id` getter."); + } + get defaultOptions() { + return {}; + } + get options() { + return _objectSpread$1(_objectSpread$1({}, this.defaultOptions || {}), (this.polly.config.adapterOptions || {})[this.constructor.id] || {}); + } + get persister() { + return this.polly.persister; + } + connect() { + if (!this.isConnected) { + this.onConnect(); + this.isConnected = true; + this.polly.logger.log.debug(`Connected to ${this.constructor.id} adapter.`); + } + } + onConnect() { + this.assert("Must implement the `onConnect` hook."); + } + disconnect() { + if (this.isConnected) { + this.onDisconnect(); + this.isConnected = false; + this.polly.logger.log.debug(`Disconnected from ${this.constructor.id} adapter.`); + } + } + onDisconnect() { + this.assert("Must implement the `onDisconnect` hook."); + } + timeout(pollyRequest, { + time + }) { + const { + timing + } = pollyRequest.config; + if (typeof timing === "function") { + return timing(time); + } + } + async handleRequest(request) { + const pollyRequest = this.polly.registerRequest(request); + try { + pollyRequest.on("identify", (...args3) => this.onIdentifyRequest(...args3)); + await this.onRequest(pollyRequest); + await pollyRequest.init(); + await this[REQUEST_HANDLER](pollyRequest); + if (pollyRequest.aborted) { + throw new utils.PollyError("Request aborted."); + } + await this.onRequestFinished(pollyRequest); + } catch (error) { + await this.onRequestFailed(pollyRequest, error); + } + return pollyRequest; + } + async [REQUEST_HANDLER](pollyRequest) { + const { + mode + } = this.polly; + const { + _interceptor: interceptor + } = pollyRequest; + if (pollyRequest.aborted) { + return; + } + if (pollyRequest.shouldIntercept) { + await this.intercept(pollyRequest, interceptor); + if (interceptor.shouldIntercept) { + return; + } + } + if (mode === utils.MODES.PASSTHROUGH || pollyRequest.shouldPassthrough || interceptor.shouldPassthrough) { + return this.passthrough(pollyRequest); + } + this.assert("A persister must be configured in order to record and replay requests.", !!this.persister); + if (mode === utils.MODES.RECORD) { + return this.record(pollyRequest); + } + if (mode === utils.MODES.REPLAY) { + return this.replay(pollyRequest); + } + this.assert("Unhandled request: \n" + stringifyRequest(pollyRequest, null, 2)); + } + async passthrough(pollyRequest) { + pollyRequest.action = utils.ACTIONS.PASSTHROUGH; + return this.onPassthrough(pollyRequest); + } + /** + * @param {PollyRequest} pollyRequest + */ + async onPassthrough(pollyRequest) { + const response = await this.onFetchResponse(pollyRequest); + await pollyRequest.respond(response); + } + async intercept(pollyRequest, interceptor) { + pollyRequest.action = utils.ACTIONS.INTERCEPT; + await pollyRequest._intercept(interceptor); + if (interceptor.shouldIntercept) { + return this.onIntercept(pollyRequest, pollyRequest.response); + } + } + /** + * @param {PollyRequest} pollyRequest + * @param {PollyResponse} pollyResponse + */ + async onIntercept(pollyRequest, pollyResponse) { + await pollyRequest.respond(pollyResponse); + } + async record(pollyRequest) { + pollyRequest.action = utils.ACTIONS.RECORD; + if ("navigator" in global && !navigator.onLine) { + pollyRequest.log.warn(`[Polly] Recording may fail because the browser is offline. +${stringifyRequest(pollyRequest)}`); + } + return this.onRecord(pollyRequest); + } + /** + * @param {PollyRequest} pollyRequest + */ + async onRecord(pollyRequest) { + await this.onPassthrough(pollyRequest); + if (!pollyRequest.aborted) { + await this.persister.recordRequest(pollyRequest); + } + } + async replay(pollyRequest) { + const { + config + } = pollyRequest; + const recordingEntry = await this.persister.findEntry(pollyRequest); + if (recordingEntry) { + const clonedRecordingEntry = JSON.parse(stringify$1(recordingEntry)); + await pollyRequest._emit("beforeReplay", clonedRecordingEntry); + if (isExpired(clonedRecordingEntry.startedDateTime, config.expiresIn)) { + const message = `Recording for the following request has expired. +${stringifyRequest(pollyRequest, null, 2)}`; + switch (config.expiryStrategy) { + case utils.EXPIRY_STRATEGIES.RECORD: + return this.record(pollyRequest); + case utils.EXPIRY_STRATEGIES.ERROR: + this.assert(message); + break; + case utils.EXPIRY_STRATEGIES.WARN: + pollyRequest.log.warn(`[Polly] ${message}`); + break; + default: + this.assert(`Invalid config option passed for "expiryStrategy": "${config.expiryStrategy}"`); + break; + } + } + await this.timeout(pollyRequest, clonedRecordingEntry); + pollyRequest.action = utils.ACTIONS.REPLAY; + return this.onReplay(pollyRequest, normalizeRecordedResponse(clonedRecordingEntry.response), clonedRecordingEntry); + } + if (config.recordIfMissing) { + return this.record(pollyRequest); + } + this.assert("Recording for the following request is not found and `recordIfMissing` is `false`.\n" + stringifyRequest(pollyRequest, null, 2)); + } + /** + * @param {PollyRequest} pollyRequest + * @param {Object} normalizedResponse The normalized response generated from the recording entry + * @param {Object} recordingEntry The entire recording entry + */ + async onReplay(pollyRequest, normalizedResponse) { + await pollyRequest.respond(normalizedResponse); + } + assert(message, ...args3) { + utils.assert(`[${this.constructor.type}:${this.constructor.id}] ${message}`, ...args3); + } + /** + * @param {PollyRequest} pollyRequest + */ + onRequest() { + } + /** + * @param {PollyRequest} pollyRequest + */ + async onIdentifyRequest(pollyRequest) { + const { + identifiers + } = pollyRequest; + for (const type2 of ["blob", "formData", "buffer"]) { + identifiers.body = await utils.Serializers[type2](identifiers.body); + } + } + /** + * @param {PollyRequest} pollyRequest + */ + async onRequestFinished(pollyRequest) { + await this.onRespond(pollyRequest); + pollyRequest.promise.resolve(); + } + /** + * @param {PollyRequest} pollyRequest + * @param {Error} [error] + */ + async onRequestFailed(pollyRequest, error) { + const { + aborted + } = pollyRequest; + error = error || new utils.PollyError("Request failed due to an unknown error."); + try { + if (aborted) { + await pollyRequest._emit("abort"); + } else { + await pollyRequest._emit("error", error); + } + await this.onRespond(pollyRequest, error); + } finally { + pollyRequest.promise.reject(error); + } + } + /** + * Make sure the response from a Polly request is delivered to the + * user through the adapter interface. + * + * Calling `pollyjs.flush()` will await this method. + * + * @param {PollyRequest} pollyRequest + * @param {Error} [error] + */ + async onRespond() { + } + /** + * @param {PollyRequest} pollyRequest + * @returns {Object({ statusCode: number, headers: Object, body: string })} + */ + async onFetchResponse() { + this.assert("Must implement the `onFetchResponse` hook."); + } + }; + module2.exports = Adapter; + } +}); + +// ../node_modules/.pnpm/@pollyjs+adapter-node-http@6.0.6/node_modules/@pollyjs/adapter-node-http/dist/cjs/pollyjs-adapter-node-http.js +var require_pollyjs_adapter_node_http = __commonJS({ + "../node_modules/.pnpm/@pollyjs+adapter-node-http@6.0.6/node_modules/@pollyjs/adapter-node-http/dist/cjs/pollyjs-adapter-node-http.js"(exports2, module2) { + "use strict"; + function _interopDefault(ex) { + return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex; + } + var http4 = _interopDefault(require("http")); + var https4 = _interopDefault(require("https")); + var url2 = require("url"); + var url__default = _interopDefault(url2); + var stream5 = require("stream"); + var nock = _interopDefault(require_nock()); + var tty = _interopDefault(require("tty")); + var util2 = _interopDefault(require("util")); + var os8 = _interopDefault(require("os")); + var timers = _interopDefault(require("timers")); + var Adapter = _interopDefault(require_pollyjs_adapter()); + var utils = require_pollyjs_utils(); + var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {}; + function unwrapExports(x) { + return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x; + } + function createCommonjsModule(fn, module3) { + return module3 = { exports: {} }, fn(module3, module3.exports), module3.exports; + } + var _global2 = createCommonjsModule(function(module3) { + var global2 = module3.exports = typeof window != "undefined" && window.Math == Math ? window : typeof self != "undefined" && self.Math == Math ? self : Function("return this")(); + if (typeof __g == "number") + __g = global2; + }); + var hasOwnProperty2 = {}.hasOwnProperty; + var _has = function(it, key) { + return hasOwnProperty2.call(it, key); + }; + var _fails = function(exec3) { + try { + return !!exec3(); + } catch (e) { + return true; + } + }; + var _descriptors = !_fails(function() { + return Object.defineProperty({}, "a", { get: function() { + return 7; + } }).a != 7; + }); + var _core = createCommonjsModule(function(module3) { + var core = module3.exports = { version: "2.6.9" }; + if (typeof __e == "number") + __e = core; + }); + var _core_1 = _core.version; + var _aFunction = function(it) { + if (typeof it != "function") + throw TypeError(it + " is not a function!"); + return it; + }; + var _ctx = function(fn, that, length) { + _aFunction(fn); + if (that === void 0) + return fn; + switch (length) { + case 1: + return function(a) { + return fn.call(that, a); + }; + case 2: + return function(a, b) { + return fn.call(that, a, b); + }; + case 3: + return function(a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function() { + return fn.apply(that, arguments); + }; + }; + var _isObject = function(it) { + return typeof it === "object" ? it !== null : typeof it === "function"; + }; + var _anObject = function(it) { + if (!_isObject(it)) + throw TypeError(it + " is not an object!"); + return it; + }; + var document$1 = _global2.document; + var is = _isObject(document$1) && _isObject(document$1.createElement); + var _domCreate = function(it) { + return is ? document$1.createElement(it) : {}; + }; + var _ie8DomDefine = !_descriptors && !_fails(function() { + return Object.defineProperty(_domCreate("div"), "a", { get: function() { + return 7; + } }).a != 7; + }); + var _toPrimitive = function(it, S) { + if (!_isObject(it)) + return it; + var fn, val; + if (S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + if (typeof (fn = it.valueOf) == "function" && !_isObject(val = fn.call(it))) + return val; + if (!S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + throw TypeError("Can't convert object to primitive value"); + }; + var dP = Object.defineProperty; + var f = _descriptors ? Object.defineProperty : function defineProperty2(O, P, Attributes) { + _anObject(O); + P = _toPrimitive(P, true); + _anObject(Attributes); + if (_ie8DomDefine) + try { + return dP(O, P, Attributes); + } catch (e) { + } + if ("get" in Attributes || "set" in Attributes) + throw TypeError("Accessors not supported!"); + if ("value" in Attributes) + O[P] = Attributes.value; + return O; + }; + var _objectDp = { + f + }; + var _propertyDesc = function(bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value + }; + }; + var _hide = _descriptors ? function(object, key, value) { + return _objectDp.f(object, key, _propertyDesc(1, value)); + } : function(object, key, value) { + object[key] = value; + return object; + }; + var PROTOTYPE = "prototype"; + var $export = function(type2, name, source2) { + var IS_FORCED = type2 & $export.F; + var IS_GLOBAL = type2 & $export.G; + var IS_STATIC = type2 & $export.S; + var IS_PROTO = type2 & $export.P; + var IS_BIND = type2 & $export.B; + var IS_WRAP = type2 & $export.W; + var exports3 = IS_GLOBAL ? _core : _core[name] || (_core[name] = {}); + var expProto = exports3[PROTOTYPE]; + var target = IS_GLOBAL ? _global2 : IS_STATIC ? _global2[name] : (_global2[name] || {})[PROTOTYPE]; + var key, own, out2; + if (IS_GLOBAL) + source2 = name; + for (key in source2) { + own = !IS_FORCED && target && target[key] !== void 0; + if (own && _has(exports3, key)) + continue; + out2 = own ? target[key] : source2[key]; + exports3[key] = IS_GLOBAL && typeof target[key] != "function" ? source2[key] : IS_BIND && own ? _ctx(out2, _global2) : IS_WRAP && target[key] == out2 ? function(C2) { + var F = function(a, b, c) { + if (this instanceof C2) { + switch (arguments.length) { + case 0: + return new C2(); + case 1: + return new C2(a); + case 2: + return new C2(a, b); + } + return new C2(a, b, c); + } + return C2.apply(this, arguments); + }; + F[PROTOTYPE] = C2[PROTOTYPE]; + return F; + }(out2) : IS_PROTO && typeof out2 == "function" ? _ctx(Function.call, out2) : out2; + if (IS_PROTO) { + (exports3.virtual || (exports3.virtual = {}))[key] = out2; + if (type2 & $export.R && expProto && !expProto[key]) + _hide(expProto, key, out2); + } + } + }; + $export.F = 1; + $export.G = 2; + $export.S = 4; + $export.P = 8; + $export.B = 16; + $export.W = 32; + $export.U = 64; + $export.R = 128; + var _export = $export; + var _redefine = _hide; + var id = 0; + var px = Math.random(); + var _uid = function(key) { + return "Symbol(".concat(key === void 0 ? "" : key, ")_", (++id + px).toString(36)); + }; + var _meta = createCommonjsModule(function(module3) { + var META2 = _uid("meta"); + var setDesc = _objectDp.f; + var id2 = 0; + var isExtensible = Object.isExtensible || function() { + return true; + }; + var FREEZE = !_fails(function() { + return isExtensible(Object.preventExtensions({})); + }); + var setMeta = function(it) { + setDesc(it, META2, { value: { + i: "O" + ++id2, + // object ID + w: {} + // weak collections IDs + } }); + }; + var fastKey = function(it, create2) { + if (!_isObject(it)) + return typeof it == "symbol" ? it : (typeof it == "string" ? "S" : "P") + it; + if (!_has(it, META2)) { + if (!isExtensible(it)) + return "F"; + if (!create2) + return "E"; + setMeta(it); + } + return it[META2].i; + }; + var getWeak2 = function(it, create2) { + if (!_has(it, META2)) { + if (!isExtensible(it)) + return true; + if (!create2) + return false; + setMeta(it); + } + return it[META2].w; + }; + var onFreeze = function(it) { + if (FREEZE && meta.NEED && isExtensible(it) && !_has(it, META2)) + setMeta(it); + return it; + }; + var meta = module3.exports = { + KEY: META2, + NEED: false, + fastKey, + getWeak: getWeak2, + onFreeze + }; + }); + var _meta_1 = _meta.KEY; + var _meta_2 = _meta.NEED; + var _meta_3 = _meta.fastKey; + var _meta_4 = _meta.getWeak; + var _meta_5 = _meta.onFreeze; + var _library = true; + var _shared = createCommonjsModule(function(module3) { + var SHARED = "__core-js_shared__"; + var store = _global2[SHARED] || (_global2[SHARED] = {}); + (module3.exports = function(key, value) { + return store[key] || (store[key] = value !== void 0 ? value : {}); + })("versions", []).push({ + version: _core.version, + mode: "pure", + copyright: "\xA9 2019 Denis Pushkarev (zloirock.ru)" + }); + }); + var _wks = createCommonjsModule(function(module3) { + var store = _shared("wks"); + var Symbol2 = _global2.Symbol; + var USE_SYMBOL = typeof Symbol2 == "function"; + var $exports = module3.exports = function(name) { + return store[name] || (store[name] = USE_SYMBOL && Symbol2[name] || (USE_SYMBOL ? Symbol2 : _uid)("Symbol." + name)); + }; + $exports.store = store; + }); + var def = _objectDp.f; + var TAG = _wks("toStringTag"); + var _setToStringTag = function(it, tag, stat7) { + if (it && !_has(it = stat7 ? it : it.prototype, TAG)) + def(it, TAG, { configurable: true, value: tag }); + }; + var f$1 = _wks; + var _wksExt = { + f: f$1 + }; + var defineProperty = _objectDp.f; + var _wksDefine = function(name) { + var $Symbol2 = _core.Symbol || (_core.Symbol = {}); + if (name.charAt(0) != "_" && !(name in $Symbol2)) + defineProperty($Symbol2, name, { value: _wksExt.f(name) }); + }; + var toString3 = {}.toString; + var _cof = function(it) { + return toString3.call(it).slice(8, -1); + }; + var _iobject = Object("z").propertyIsEnumerable(0) ? Object : function(it) { + return _cof(it) == "String" ? it.split("") : Object(it); + }; + var _defined = function(it) { + if (it == void 0) + throw TypeError("Can't call method on " + it); + return it; + }; + var _toIobject = function(it) { + return _iobject(_defined(it)); + }; + var ceil = Math.ceil; + var floor = Math.floor; + var _toInteger = function(it) { + return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); + }; + var min = Math.min; + var _toLength = function(it) { + return it > 0 ? min(_toInteger(it), 9007199254740991) : 0; + }; + var max = Math.max; + var min$1 = Math.min; + var _toAbsoluteIndex = function(index, length) { + index = _toInteger(index); + return index < 0 ? max(index + length, 0) : min$1(index, length); + }; + var _arrayIncludes = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O = _toIobject($this); + var length = _toLength(O.length); + var index = _toAbsoluteIndex(fromIndex, length); + var value; + if (IS_INCLUDES && el != el) + while (length > index) { + value = O[index++]; + if (value != value) + return true; + } + else + for (; length > index; index++) + if (IS_INCLUDES || index in O) { + if (O[index] === el) + return IS_INCLUDES || index || 0; + } + return !IS_INCLUDES && -1; + }; + }; + var shared = _shared("keys"); + var _sharedKey = function(key) { + return shared[key] || (shared[key] = _uid(key)); + }; + var arrayIndexOf = _arrayIncludes(false); + var IE_PROTO = _sharedKey("IE_PROTO"); + var _objectKeysInternal = function(object, names) { + var O = _toIobject(object); + var i2 = 0; + var result = []; + var key; + for (key in O) + if (key != IE_PROTO) + _has(O, key) && result.push(key); + while (names.length > i2) + if (_has(O, key = names[i2++])) { + ~arrayIndexOf(result, key) || result.push(key); + } + return result; + }; + var _enumBugKeys = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","); + var _objectKeys = Object.keys || function keys2(O) { + return _objectKeysInternal(O, _enumBugKeys); + }; + var f$2 = Object.getOwnPropertySymbols; + var _objectGops = { + f: f$2 + }; + var f$3 = {}.propertyIsEnumerable; + var _objectPie = { + f: f$3 + }; + var _enumKeys = function(it) { + var result = _objectKeys(it); + var getSymbols = _objectGops.f; + if (getSymbols) { + var symbols = getSymbols(it); + var isEnum2 = _objectPie.f; + var i2 = 0; + var key; + while (symbols.length > i2) + if (isEnum2.call(it, key = symbols[i2++])) + result.push(key); + } + return result; + }; + var _isArray = Array.isArray || function isArray3(arg) { + return _cof(arg) == "Array"; + }; + var _toObject = function(it) { + return Object(_defined(it)); + }; + var _objectDps = _descriptors ? Object.defineProperties : function defineProperties2(O, Properties) { + _anObject(O); + var keys2 = _objectKeys(Properties); + var length = keys2.length; + var i2 = 0; + var P; + while (length > i2) + _objectDp.f(O, P = keys2[i2++], Properties[P]); + return O; + }; + var document$2 = _global2.document; + var _html = document$2 && document$2.documentElement; + var IE_PROTO$1 = _sharedKey("IE_PROTO"); + var Empty = function() { + }; + var PROTOTYPE$1 = "prototype"; + var createDict = function() { + var iframe = _domCreate("iframe"); + var i2 = _enumBugKeys.length; + var lt = "<"; + var gt = ">"; + var iframeDocument; + iframe.style.display = "none"; + _html.appendChild(iframe); + iframe.src = "javascript:"; + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(lt + "script" + gt + "document.F=Object" + lt + "/script" + gt); + iframeDocument.close(); + createDict = iframeDocument.F; + while (i2--) + delete createDict[PROTOTYPE$1][_enumBugKeys[i2]]; + return createDict(); + }; + var _objectCreate = Object.create || function create2(O, Properties) { + var result; + if (O !== null) { + Empty[PROTOTYPE$1] = _anObject(O); + result = new Empty(); + Empty[PROTOTYPE$1] = null; + result[IE_PROTO$1] = O; + } else + result = createDict(); + return Properties === void 0 ? result : _objectDps(result, Properties); + }; + var hiddenKeys = _enumBugKeys.concat("length", "prototype"); + var f$4 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return _objectKeysInternal(O, hiddenKeys); + }; + var _objectGopn = { + f: f$4 + }; + var gOPN = _objectGopn.f; + var toString$1 = {}.toString; + var windowNames = typeof window == "object" && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : []; + var getWindowNames = function(it) { + try { + return gOPN(it); + } catch (e) { + return windowNames.slice(); + } + }; + var f$5 = function getOwnPropertyNames(it) { + return windowNames && toString$1.call(it) == "[object Window]" ? getWindowNames(it) : gOPN(_toIobject(it)); + }; + var _objectGopnExt = { + f: f$5 + }; + var gOPD = Object.getOwnPropertyDescriptor; + var f$6 = _descriptors ? gOPD : function getOwnPropertyDescriptor2(O, P) { + O = _toIobject(O); + P = _toPrimitive(P, true); + if (_ie8DomDefine) + try { + return gOPD(O, P); + } catch (e) { + } + if (_has(O, P)) + return _propertyDesc(!_objectPie.f.call(O, P), O[P]); + }; + var _objectGopd = { + f: f$6 + }; + var META = _meta.KEY; + var gOPD$1 = _objectGopd.f; + var dP$1 = _objectDp.f; + var gOPN$1 = _objectGopnExt.f; + var $Symbol = _global2.Symbol; + var $JSON = _global2.JSON; + var _stringify = $JSON && $JSON.stringify; + var PROTOTYPE$2 = "prototype"; + var HIDDEN = _wks("_hidden"); + var TO_PRIMITIVE = _wks("toPrimitive"); + var isEnum = {}.propertyIsEnumerable; + var SymbolRegistry = _shared("symbol-registry"); + var AllSymbols = _shared("symbols"); + var OPSymbols = _shared("op-symbols"); + var ObjectProto = Object[PROTOTYPE$2]; + var USE_NATIVE = typeof $Symbol == "function" && !!_objectGops.f; + var QObject = _global2.QObject; + var setter = !QObject || !QObject[PROTOTYPE$2] || !QObject[PROTOTYPE$2].findChild; + var setSymbolDesc = _descriptors && _fails(function() { + return _objectCreate(dP$1({}, "a", { + get: function() { + return dP$1(this, "a", { value: 7 }).a; + } + })).a != 7; + }) ? function(it, key, D) { + var protoDesc = gOPD$1(ObjectProto, key); + if (protoDesc) + delete ObjectProto[key]; + dP$1(it, key, D); + if (protoDesc && it !== ObjectProto) + dP$1(ObjectProto, key, protoDesc); + } : dP$1; + var wrap2 = function(tag) { + var sym = AllSymbols[tag] = _objectCreate($Symbol[PROTOTYPE$2]); + sym._k = tag; + return sym; + }; + var isSymbol = USE_NATIVE && typeof $Symbol.iterator == "symbol" ? function(it) { + return typeof it == "symbol"; + } : function(it) { + return it instanceof $Symbol; + }; + var $defineProperty = function defineProperty2(it, key, D) { + if (it === ObjectProto) + $defineProperty(OPSymbols, key, D); + _anObject(it); + key = _toPrimitive(key, true); + _anObject(D); + if (_has(AllSymbols, key)) { + if (!D.enumerable) { + if (!_has(it, HIDDEN)) + dP$1(it, HIDDEN, _propertyDesc(1, {})); + it[HIDDEN][key] = true; + } else { + if (_has(it, HIDDEN) && it[HIDDEN][key]) + it[HIDDEN][key] = false; + D = _objectCreate(D, { enumerable: _propertyDesc(0, false) }); + } + return setSymbolDesc(it, key, D); + } + return dP$1(it, key, D); + }; + var $defineProperties = function defineProperties2(it, P) { + _anObject(it); + var keys2 = _enumKeys(P = _toIobject(P)); + var i2 = 0; + var l2 = keys2.length; + var key; + while (l2 > i2) + $defineProperty(it, key = keys2[i2++], P[key]); + return it; + }; + var $create = function create2(it, P) { + return P === void 0 ? _objectCreate(it) : $defineProperties(_objectCreate(it), P); + }; + var $propertyIsEnumerable = function propertyIsEnumerable(key) { + var E = isEnum.call(this, key = _toPrimitive(key, true)); + if (this === ObjectProto && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return false; + return E || !_has(this, key) || !_has(AllSymbols, key) || _has(this, HIDDEN) && this[HIDDEN][key] ? E : true; + }; + var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + it = _toIobject(it); + key = _toPrimitive(key, true); + if (it === ObjectProto && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return; + var D = gOPD$1(it, key); + if (D && _has(AllSymbols, key) && !(_has(it, HIDDEN) && it[HIDDEN][key])) + D.enumerable = true; + return D; + }; + var $getOwnPropertyNames = function getOwnPropertyNames(it) { + var names = gOPN$1(_toIobject(it)); + var result = []; + var i2 = 0; + var key; + while (names.length > i2) { + if (!_has(AllSymbols, key = names[i2++]) && key != HIDDEN && key != META) + result.push(key); + } + return result; + }; + var $getOwnPropertySymbols = function getOwnPropertySymbols2(it) { + var IS_OP = it === ObjectProto; + var names = gOPN$1(IS_OP ? OPSymbols : _toIobject(it)); + var result = []; + var i2 = 0; + var key; + while (names.length > i2) { + if (_has(AllSymbols, key = names[i2++]) && (IS_OP ? _has(ObjectProto, key) : true)) + result.push(AllSymbols[key]); + } + return result; + }; + if (!USE_NATIVE) { + $Symbol = function Symbol2() { + if (this instanceof $Symbol) + throw TypeError("Symbol is not a constructor!"); + var tag = _uid(arguments.length > 0 ? arguments[0] : void 0); + var $set = function(value) { + if (this === ObjectProto) + $set.call(OPSymbols, value); + if (_has(this, HIDDEN) && _has(this[HIDDEN], tag)) + this[HIDDEN][tag] = false; + setSymbolDesc(this, tag, _propertyDesc(1, value)); + }; + if (_descriptors && setter) + setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); + return wrap2(tag); + }; + _redefine($Symbol[PROTOTYPE$2], "toString", function toString4() { + return this._k; + }); + _objectGopd.f = $getOwnPropertyDescriptor; + _objectDp.f = $defineProperty; + _objectGopn.f = _objectGopnExt.f = $getOwnPropertyNames; + _objectPie.f = $propertyIsEnumerable; + _objectGops.f = $getOwnPropertySymbols; + if (_descriptors && !_library) { + _redefine(ObjectProto, "propertyIsEnumerable", $propertyIsEnumerable, true); + } + _wksExt.f = function(name) { + return wrap2(_wks(name)); + }; + } + _export(_export.G + _export.W + _export.F * !USE_NATIVE, { Symbol: $Symbol }); + for (es6Symbols = // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 + "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), j = 0; es6Symbols.length > j; ) + _wks(es6Symbols[j++]); + var es6Symbols; + var j; + for (wellKnownSymbols = _objectKeys(_wks.store), k = 0; wellKnownSymbols.length > k; ) + _wksDefine(wellKnownSymbols[k++]); + var wellKnownSymbols; + var k; + _export(_export.S + _export.F * !USE_NATIVE, "Symbol", { + // 19.4.2.1 Symbol.for(key) + "for": function(key) { + return _has(SymbolRegistry, key += "") ? SymbolRegistry[key] : SymbolRegistry[key] = $Symbol(key); + }, + // 19.4.2.5 Symbol.keyFor(sym) + keyFor: function keyFor(sym) { + if (!isSymbol(sym)) + throw TypeError(sym + " is not a symbol!"); + for (var key in SymbolRegistry) + if (SymbolRegistry[key] === sym) + return key; + }, + useSetter: function() { + setter = true; + }, + useSimple: function() { + setter = false; + } + }); + _export(_export.S + _export.F * !USE_NATIVE, "Object", { + // 19.1.2.2 Object.create(O [, Properties]) + create: $create, + // 19.1.2.4 Object.defineProperty(O, P, Attributes) + defineProperty: $defineProperty, + // 19.1.2.3 Object.defineProperties(O, Properties) + defineProperties: $defineProperties, + // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) + getOwnPropertyDescriptor: $getOwnPropertyDescriptor, + // 19.1.2.7 Object.getOwnPropertyNames(O) + getOwnPropertyNames: $getOwnPropertyNames, + // 19.1.2.8 Object.getOwnPropertySymbols(O) + getOwnPropertySymbols: $getOwnPropertySymbols + }); + var FAILS_ON_PRIMITIVES = _fails(function() { + _objectGops.f(1); + }); + _export(_export.S + _export.F * FAILS_ON_PRIMITIVES, "Object", { + getOwnPropertySymbols: function getOwnPropertySymbols2(it) { + return _objectGops.f(_toObject(it)); + } + }); + $JSON && _export(_export.S + _export.F * (!USE_NATIVE || _fails(function() { + var S = $Symbol(); + return _stringify([S]) != "[null]" || _stringify({ a: S }) != "{}" || _stringify(Object(S)) != "{}"; + })), "JSON", { + stringify: function stringify2(it) { + var args3 = [it]; + var i2 = 1; + var replacer, $replacer; + while (arguments.length > i2) + args3.push(arguments[i2++]); + $replacer = replacer = args3[1]; + if (!_isObject(replacer) && it === void 0 || isSymbol(it)) + return; + if (!_isArray(replacer)) + replacer = function(key, value) { + if (typeof $replacer == "function") + value = $replacer.call(this, key, value); + if (!isSymbol(value)) + return value; + }; + args3[1] = replacer; + return _stringify.apply($JSON, args3); + } + }); + $Symbol[PROTOTYPE$2][TO_PRIMITIVE] || _hide($Symbol[PROTOTYPE$2], TO_PRIMITIVE, $Symbol[PROTOTYPE$2].valueOf); + _setToStringTag($Symbol, "Symbol"); + _setToStringTag(Math, "Math", true); + _setToStringTag(_global2.JSON, "JSON", true); + var getOwnPropertySymbols = _core.Object.getOwnPropertySymbols; + var getOwnPropertySymbols$1 = getOwnPropertySymbols; + var _objectSap = function(KEY, exec3) { + var fn = (_core.Object || {})[KEY] || Object[KEY]; + var exp = {}; + exp[KEY] = exec3(fn); + _export(_export.S + _export.F * _fails(function() { + fn(1); + }), "Object", exp); + }; + var $getOwnPropertyDescriptor$1 = _objectGopd.f; + _objectSap("getOwnPropertyDescriptor", function() { + return function getOwnPropertyDescriptor2(it, key) { + return $getOwnPropertyDescriptor$1(_toIobject(it), key); + }; + }); + var $Object = _core.Object; + var getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + return $Object.getOwnPropertyDescriptor(it, key); + }; + var getOwnPropertyDescriptor$1 = getOwnPropertyDescriptor; + var Reflect2 = _global2.Reflect; + var _ownKeys = Reflect2 && Reflect2.ownKeys || function ownKeys2(it) { + var keys2 = _objectGopn.f(_anObject(it)); + var getSymbols = _objectGops.f; + return getSymbols ? keys2.concat(getSymbols(it)) : keys2; + }; + var _createProperty = function(object, index, value) { + if (index in object) + _objectDp.f(object, index, _propertyDesc(0, value)); + else + object[index] = value; + }; + _export(_export.S, "Object", { + getOwnPropertyDescriptors: function getOwnPropertyDescriptors2(object) { + var O = _toIobject(object); + var getDesc = _objectGopd.f; + var keys2 = _ownKeys(O); + var result = {}; + var i2 = 0; + var key, desc; + while (keys2.length > i2) { + desc = getDesc(O, key = keys2[i2++]); + if (desc !== void 0) + _createProperty(result, key, desc); + } + return result; + } + }); + var getOwnPropertyDescriptors = _core.Object.getOwnPropertyDescriptors; + var getOwnPropertyDescriptors$1 = getOwnPropertyDescriptors; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperties: _objectDps }); + var $Object$1 = _core.Object; + var defineProperties = function defineProperties2(T, D) { + return $Object$1.defineProperties(T, D); + }; + var defineProperties$1 = defineProperties; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperty: _objectDp.f }); + var $Object$2 = _core.Object; + var defineProperty$1 = function defineProperty2(it, key, desc) { + return $Object$2.defineProperty(it, key, desc); + }; + var defineProperty$2 = defineProperty$1; + var defineProperty$3 = createCommonjsModule(function(module3) { + function _defineProperty2(obj2, key, value) { + if (key in obj2) { + defineProperty$2(obj2, key, { + value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj2[key] = value; + } + return obj2; + } + module3.exports = _defineProperty2; + module3.exports["default"] = module3.exports, module3.exports.__esModule = true; + }); + var _defineProperty = unwrapExports(defineProperty$3); + _wksDefine("asyncIterator"); + _wksDefine("observable"); + var symbol = _core.Symbol; + var symbol$1 = symbol; + var _iterStep = function(done, value) { + return { value, done: !!done }; + }; + var _iterators = {}; + var IteratorPrototype = {}; + _hide(IteratorPrototype, _wks("iterator"), function() { + return this; + }); + var _iterCreate = function(Constructor, NAME2, next) { + Constructor.prototype = _objectCreate(IteratorPrototype, { next: _propertyDesc(1, next) }); + _setToStringTag(Constructor, NAME2 + " Iterator"); + }; + var IE_PROTO$2 = _sharedKey("IE_PROTO"); + var ObjectProto$1 = Object.prototype; + var _objectGpo = Object.getPrototypeOf || function(O) { + O = _toObject(O); + if (_has(O, IE_PROTO$2)) + return O[IE_PROTO$2]; + if (typeof O.constructor == "function" && O instanceof O.constructor) { + return O.constructor.prototype; + } + return O instanceof Object ? ObjectProto$1 : null; + }; + var ITERATOR = _wks("iterator"); + var BUGGY = !([].keys && "next" in [].keys()); + var FF_ITERATOR = "@@iterator"; + var KEYS = "keys"; + var VALUES = "values"; + var returnThis = function() { + return this; + }; + var _iterDefine = function(Base, NAME2, Constructor, next, DEFAULT, IS_SET, FORCED) { + _iterCreate(Constructor, NAME2, next); + var getMethod = function(kind) { + if (!BUGGY && kind in proto2) + return proto2[kind]; + switch (kind) { + case KEYS: + return function keys2() { + return new Constructor(this, kind); + }; + case VALUES: + return function values() { + return new Constructor(this, kind); + }; + } + return function entries() { + return new Constructor(this, kind); + }; + }; + var TAG2 = NAME2 + " Iterator"; + var DEF_VALUES = DEFAULT == VALUES; + var VALUES_BUG = false; + var proto2 = Base.prototype; + var $native = proto2[ITERATOR] || proto2[FF_ITERATOR] || DEFAULT && proto2[DEFAULT]; + var $default = $native || getMethod(DEFAULT); + var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod("entries") : void 0; + var $anyNative = NAME2 == "Array" ? proto2.entries || $native : $native; + var methods, key, IteratorPrototype2; + if ($anyNative) { + IteratorPrototype2 = _objectGpo($anyNative.call(new Base())); + if (IteratorPrototype2 !== Object.prototype && IteratorPrototype2.next) { + _setToStringTag(IteratorPrototype2, TAG2, true); + } + } + if (DEF_VALUES && $native && $native.name !== VALUES) { + VALUES_BUG = true; + $default = function values() { + return $native.call(this); + }; + } + if (FORCED && (BUGGY || VALUES_BUG || !proto2[ITERATOR])) { + _hide(proto2, ITERATOR, $default); + } + _iterators[NAME2] = $default; + _iterators[TAG2] = returnThis; + if (DEFAULT) { + methods = { + values: DEF_VALUES ? $default : getMethod(VALUES), + keys: IS_SET ? $default : getMethod(KEYS), + entries: $entries + }; + if (FORCED) + for (key in methods) { + if (!(key in proto2)) + _redefine(proto2, key, methods[key]); + } + else + _export(_export.P + _export.F * (BUGGY || VALUES_BUG), NAME2, methods); + } + return methods; + }; + var es6_array_iterator = _iterDefine(Array, "Array", function(iterated, kind) { + this._t = _toIobject(iterated); + this._i = 0; + this._k = kind; + }, function() { + var O = this._t; + var kind = this._k; + var index = this._i++; + if (!O || index >= O.length) { + this._t = void 0; + return _iterStep(1); + } + if (kind == "keys") + return _iterStep(0, index); + if (kind == "values") + return _iterStep(0, O[index]); + return _iterStep(0, [index, O[index]]); + }, "values"); + _iterators.Arguments = _iterators.Array; + var TO_STRING_TAG = _wks("toStringTag"); + var DOMIterables = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","); + for (i = 0; i < DOMIterables.length; i++) { + NAME = DOMIterables[i]; + Collection = _global2[NAME]; + proto = Collection && Collection.prototype; + if (proto && !proto[TO_STRING_TAG]) + _hide(proto, TO_STRING_TAG, NAME); + _iterators[NAME] = _iterators.Array; + } + var NAME; + var Collection; + var proto; + var i; + var SPECIES = _wks("species"); + var _arraySpeciesConstructor = function(original) { + var C2; + if (_isArray(original)) { + C2 = original.constructor; + if (typeof C2 == "function" && (C2 === Array || _isArray(C2.prototype))) + C2 = void 0; + if (_isObject(C2)) { + C2 = C2[SPECIES]; + if (C2 === null) + C2 = void 0; + } + } + return C2 === void 0 ? Array : C2; + }; + var _arraySpeciesCreate = function(original, length) { + return new (_arraySpeciesConstructor(original))(length); + }; + var _arrayMethods = function(TYPE2, $create2) { + var IS_MAP = TYPE2 == 1; + var IS_FILTER = TYPE2 == 2; + var IS_SOME = TYPE2 == 3; + var IS_EVERY = TYPE2 == 4; + var IS_FIND_INDEX = TYPE2 == 6; + var NO_HOLES = TYPE2 == 5 || IS_FIND_INDEX; + var create2 = $create2 || _arraySpeciesCreate; + return function($this, callbackfn, that) { + var O = _toObject($this); + var self2 = _iobject(O); + var f2 = _ctx(callbackfn, that, 3); + var length = _toLength(self2.length); + var index = 0; + var result = IS_MAP ? create2($this, length) : IS_FILTER ? create2($this, 0) : void 0; + var val, res; + for (; length > index; index++) + if (NO_HOLES || index in self2) { + val = self2[index]; + res = f2(val, index, O); + if (TYPE2) { + if (IS_MAP) + result[index] = res; + else if (res) + switch (TYPE2) { + case 3: + return true; + case 5: + return val; + case 6: + return index; + case 2: + result.push(val); + } + else if (IS_EVERY) + return false; + } + } + return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result; + }; + }; + var $assign = Object.assign; + var _objectAssign = !$assign || _fails(function() { + var A = {}; + var B = {}; + var S = Symbol(); + var K = "abcdefghijklmnopqrst"; + A[S] = 7; + K.split("").forEach(function(k2) { + B[k2] = k2; + }); + return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join("") != K; + }) ? function assign(target, source2) { + var T = _toObject(target); + var aLen = arguments.length; + var index = 1; + var getSymbols = _objectGops.f; + var isEnum2 = _objectPie.f; + while (aLen > index) { + var S = _iobject(arguments[index++]); + var keys2 = getSymbols ? _objectKeys(S).concat(getSymbols(S)) : _objectKeys(S); + var length = keys2.length; + var j2 = 0; + var key; + while (length > j2) { + key = keys2[j2++]; + if (!_descriptors || isEnum2.call(S, key)) + T[key] = S[key]; + } + } + return T; + } : $assign; + var _redefineAll = function(target, src2, safe) { + for (var key in src2) { + if (safe && target[key]) + target[key] = src2[key]; + else + _hide(target, key, src2[key]); + } + return target; + }; + var _anInstance = function(it, Constructor, name, forbiddenField) { + if (!(it instanceof Constructor) || forbiddenField !== void 0 && forbiddenField in it) { + throw TypeError(name + ": incorrect invocation!"); + } + return it; + }; + var _iterCall = function(iterator, fn, value, entries) { + try { + return entries ? fn(_anObject(value)[0], value[1]) : fn(value); + } catch (e) { + var ret2 = iterator["return"]; + if (ret2 !== void 0) + _anObject(ret2.call(iterator)); + throw e; + } + }; + var ITERATOR$1 = _wks("iterator"); + var ArrayProto = Array.prototype; + var _isArrayIter = function(it) { + return it !== void 0 && (_iterators.Array === it || ArrayProto[ITERATOR$1] === it); + }; + var TAG$1 = _wks("toStringTag"); + var ARG = _cof(function() { + return arguments; + }()) == "Arguments"; + var tryGet = function(it, key) { + try { + return it[key]; + } catch (e) { + } + }; + var _classof = function(it) { + var O, T, B; + return it === void 0 ? "Undefined" : it === null ? "Null" : typeof (T = tryGet(O = Object(it), TAG$1)) == "string" ? T : ARG ? _cof(O) : (B = _cof(O)) == "Object" && typeof O.callee == "function" ? "Arguments" : B; + }; + var ITERATOR$2 = _wks("iterator"); + var core_getIteratorMethod = _core.getIteratorMethod = function(it) { + if (it != void 0) + return it[ITERATOR$2] || it["@@iterator"] || _iterators[_classof(it)]; + }; + var _forOf = createCommonjsModule(function(module3) { + var BREAK = {}; + var RETURN = {}; + var exports3 = module3.exports = function(iterable, entries, fn, that, ITERATOR2) { + var iterFn = ITERATOR2 ? function() { + return iterable; + } : core_getIteratorMethod(iterable); + var f2 = _ctx(fn, that, entries ? 2 : 1); + var index = 0; + var length, step, iterator, result; + if (typeof iterFn != "function") + throw TypeError(iterable + " is not iterable!"); + if (_isArrayIter(iterFn)) + for (length = _toLength(iterable.length); length > index; index++) { + result = entries ? f2(_anObject(step = iterable[index])[0], step[1]) : f2(iterable[index]); + if (result === BREAK || result === RETURN) + return result; + } + else + for (iterator = iterFn.call(iterable); !(step = iterator.next()).done; ) { + result = _iterCall(iterator, f2, step.value, entries); + if (result === BREAK || result === RETURN) + return result; + } + }; + exports3.BREAK = BREAK; + exports3.RETURN = RETURN; + }); + var _validateCollection = function(it, TYPE2) { + if (!_isObject(it) || it._t !== TYPE2) + throw TypeError("Incompatible receiver, " + TYPE2 + " required!"); + return it; + }; + var getWeak = _meta.getWeak; + var arrayFind = _arrayMethods(5); + var arrayFindIndex = _arrayMethods(6); + var id$1 = 0; + var uncaughtFrozenStore = function(that) { + return that._l || (that._l = new UncaughtFrozenStore()); + }; + var UncaughtFrozenStore = function() { + this.a = []; + }; + var findUncaughtFrozen = function(store, key) { + return arrayFind(store.a, function(it) { + return it[0] === key; + }); + }; + UncaughtFrozenStore.prototype = { + get: function(key) { + var entry = findUncaughtFrozen(this, key); + if (entry) + return entry[1]; + }, + has: function(key) { + return !!findUncaughtFrozen(this, key); + }, + set: function(key, value) { + var entry = findUncaughtFrozen(this, key); + if (entry) + entry[1] = value; + else + this.a.push([key, value]); + }, + "delete": function(key) { + var index = arrayFindIndex(this.a, function(it) { + return it[0] === key; + }); + if (~index) + this.a.splice(index, 1); + return !!~index; + } + }; + var _collectionWeak = { + getConstructor: function(wrapper, NAME2, IS_MAP, ADDER) { + var C2 = wrapper(function(that, iterable) { + _anInstance(that, C2, NAME2, "_i"); + that._t = NAME2; + that._i = id$1++; + that._l = void 0; + if (iterable != void 0) + _forOf(iterable, IS_MAP, that[ADDER], that); + }); + _redefineAll(C2.prototype, { + // 23.3.3.2 WeakMap.prototype.delete(key) + // 23.4.3.3 WeakSet.prototype.delete(value) + "delete": function(key) { + if (!_isObject(key)) + return false; + var data = getWeak(key); + if (data === true) + return uncaughtFrozenStore(_validateCollection(this, NAME2))["delete"](key); + return data && _has(data, this._i) && delete data[this._i]; + }, + // 23.3.3.4 WeakMap.prototype.has(key) + // 23.4.3.4 WeakSet.prototype.has(value) + has: function has(key) { + if (!_isObject(key)) + return false; + var data = getWeak(key); + if (data === true) + return uncaughtFrozenStore(_validateCollection(this, NAME2)).has(key); + return data && _has(data, this._i); + } + }); + return C2; + }, + def: function(that, key, value) { + var data = getWeak(_anObject(key), true); + if (data === true) + uncaughtFrozenStore(that).set(key, value); + else + data[that._i] = value; + return that; + }, + ufstore: uncaughtFrozenStore + }; + var dP$2 = _objectDp.f; + var each = _arrayMethods(0); + var _collection = function(NAME2, wrapper, methods, common2, IS_MAP, IS_WEAK) { + var Base = _global2[NAME2]; + var C2 = Base; + var ADDER = IS_MAP ? "set" : "add"; + var proto2 = C2 && C2.prototype; + var O = {}; + if (!_descriptors || typeof C2 != "function" || !(IS_WEAK || proto2.forEach && !_fails(function() { + new C2().entries().next(); + }))) { + C2 = common2.getConstructor(wrapper, NAME2, IS_MAP, ADDER); + _redefineAll(C2.prototype, methods); + _meta.NEED = true; + } else { + C2 = wrapper(function(target, iterable) { + _anInstance(target, C2, NAME2, "_c"); + target._c = new Base(); + if (iterable != void 0) + _forOf(iterable, IS_MAP, target[ADDER], target); + }); + each("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","), function(KEY) { + var IS_ADDER = KEY == "add" || KEY == "set"; + if (KEY in proto2 && !(IS_WEAK && KEY == "clear")) + _hide(C2.prototype, KEY, function(a, b) { + _anInstance(this, C2, KEY); + if (!IS_ADDER && IS_WEAK && !_isObject(a)) + return KEY == "get" ? void 0 : false; + var result = this._c[KEY](a === 0 ? 0 : a, b); + return IS_ADDER ? this : result; + }); + }); + IS_WEAK || dP$2(C2.prototype, "size", { + get: function() { + return this._c.size; + } + }); + } + _setToStringTag(C2, NAME2); + O[NAME2] = C2; + _export(_export.G + _export.W + _export.F, O); + if (!IS_WEAK) + common2.setStrong(C2, NAME2, IS_MAP); + return C2; + }; + var es6_weakMap = createCommonjsModule(function(module3) { + var each2 = _arrayMethods(0); + var NATIVE_WEAK_MAP = _validateCollection; + var IS_IE11 = !_global2.ActiveXObject && "ActiveXObject" in _global2; + var WEAK_MAP = "WeakMap"; + var getWeak2 = _meta.getWeak; + var isExtensible = Object.isExtensible; + var uncaughtFrozenStore2 = _collectionWeak.ufstore; + var InternalMap; + var wrapper = function(get) { + return function WeakMap2() { + return get(this, arguments.length > 0 ? arguments[0] : void 0); + }; + }; + var methods = { + // 23.3.3.3 WeakMap.prototype.get(key) + get: function get(key) { + if (_isObject(key)) { + var data = getWeak2(key); + if (data === true) + return uncaughtFrozenStore2(_validateCollection(this, WEAK_MAP)).get(key); + return data ? data[this._i] : void 0; + } + }, + // 23.3.3.5 WeakMap.prototype.set(key, value) + set: function set2(key, value) { + return _collectionWeak.def(_validateCollection(this, WEAK_MAP), key, value); + } + }; + var $WeakMap = module3.exports = _collection(WEAK_MAP, wrapper, methods, _collectionWeak, true, true); + if (NATIVE_WEAK_MAP && IS_IE11) { + InternalMap = _collectionWeak.getConstructor(wrapper, WEAK_MAP); + _objectAssign(InternalMap.prototype, methods); + _meta.NEED = true; + each2(["delete", "has", "get", "set"], function(key) { + var proto2 = $WeakMap.prototype; + var method = proto2[key]; + _redefine(proto2, key, function(a, b) { + if (_isObject(a) && !isExtensible(a)) { + if (!this._f) + this._f = new InternalMap(); + var result = this._f[key](a, b); + return key == "set" ? this : result; + } + return method.call(this, a, b); + }); + }); + } + }); + var _setCollectionOf = function(COLLECTION) { + _export(_export.S, COLLECTION, { of: function of() { + var length = arguments.length; + var A = new Array(length); + while (length--) + A[length] = arguments[length]; + return new this(A); + } }); + }; + _setCollectionOf("WeakMap"); + var _setCollectionFrom = function(COLLECTION) { + _export(_export.S, COLLECTION, { from: function from(source2) { + var mapFn = arguments[1]; + var mapping2, A, n, cb; + _aFunction(this); + mapping2 = mapFn !== void 0; + if (mapping2) + _aFunction(mapFn); + if (source2 == void 0) + return new this(); + A = []; + if (mapping2) { + n = 0; + cb = _ctx(mapFn, arguments[2], 2); + _forOf(source2, false, function(nextItem) { + A.push(cb(nextItem, n++)); + }); + } else { + _forOf(source2, false, A.push, A); + } + return new this(A); + } }); + }; + _setCollectionFrom("WeakMap"); + var weakMap = _core.WeakMap; + var weakMap$1 = weakMap; + _objectSap("keys", function() { + return function keys2(it) { + return _objectKeys(_toObject(it)); + }; + }); + var keys = _core.Object.keys; + var keys$1 = keys; + var _stringAt = function(TO_STRING) { + return function(that, pos) { + var s2 = String(_defined(that)); + var i2 = _toInteger(pos); + var l2 = s2.length; + var a, b; + if (i2 < 0 || i2 >= l2) + return TO_STRING ? "" : void 0; + a = s2.charCodeAt(i2); + return a < 55296 || a > 56319 || i2 + 1 === l2 || (b = s2.charCodeAt(i2 + 1)) < 56320 || b > 57343 ? TO_STRING ? s2.charAt(i2) : a : TO_STRING ? s2.slice(i2, i2 + 2) : (a - 55296 << 10) + (b - 56320) + 65536; + }; + }; + var $at = _stringAt(true); + _iterDefine(String, "String", function(iterated) { + this._t = String(iterated); + this._i = 0; + }, function() { + var O = this._t; + var index = this._i; + var point; + if (index >= O.length) + return { value: void 0, done: true }; + point = $at(O, index); + this._i += point.length; + return { value: point, done: false }; + }); + var SPECIES$1 = _wks("species"); + var _speciesConstructor = function(O, D) { + var C2 = _anObject(O).constructor; + var S; + return C2 === void 0 || (S = _anObject(C2)[SPECIES$1]) == void 0 ? D : _aFunction(S); + }; + var _invoke = function(fn, args3, that) { + var un = that === void 0; + switch (args3.length) { + case 0: + return un ? fn() : fn.call(that); + case 1: + return un ? fn(args3[0]) : fn.call(that, args3[0]); + case 2: + return un ? fn(args3[0], args3[1]) : fn.call(that, args3[0], args3[1]); + case 3: + return un ? fn(args3[0], args3[1], args3[2]) : fn.call(that, args3[0], args3[1], args3[2]); + case 4: + return un ? fn(args3[0], args3[1], args3[2], args3[3]) : fn.call(that, args3[0], args3[1], args3[2], args3[3]); + } + return fn.apply(that, args3); + }; + var process$1 = _global2.process; + var setTask = _global2.setImmediate; + var clearTask = _global2.clearImmediate; + var MessageChannel2 = _global2.MessageChannel; + var Dispatch = _global2.Dispatch; + var counter = 0; + var queue = {}; + var ONREADYSTATECHANGE = "onreadystatechange"; + var defer2; + var channel; + var port; + var run2 = function() { + var id2 = +this; + if (queue.hasOwnProperty(id2)) { + var fn = queue[id2]; + delete queue[id2]; + fn(); + } + }; + var listener = function(event) { + run2.call(event.data); + }; + if (!setTask || !clearTask) { + setTask = function setImmediate3(fn) { + var args3 = []; + var i2 = 1; + while (arguments.length > i2) + args3.push(arguments[i2++]); + queue[++counter] = function() { + _invoke(typeof fn == "function" ? fn : Function(fn), args3); + }; + defer2(counter); + return counter; + }; + clearTask = function clearImmediate2(id2) { + delete queue[id2]; + }; + if (_cof(process$1) == "process") { + defer2 = function(id2) { + process$1.nextTick(_ctx(run2, id2, 1)); + }; + } else if (Dispatch && Dispatch.now) { + defer2 = function(id2) { + Dispatch.now(_ctx(run2, id2, 1)); + }; + } else if (MessageChannel2) { + channel = new MessageChannel2(); + port = channel.port2; + channel.port1.onmessage = listener; + defer2 = _ctx(port.postMessage, port, 1); + } else if (_global2.addEventListener && typeof postMessage == "function" && !_global2.importScripts) { + defer2 = function(id2) { + _global2.postMessage(id2 + "", "*"); + }; + _global2.addEventListener("message", listener, false); + } else if (ONREADYSTATECHANGE in _domCreate("script")) { + defer2 = function(id2) { + _html.appendChild(_domCreate("script"))[ONREADYSTATECHANGE] = function() { + _html.removeChild(this); + run2.call(id2); + }; + }; + } else { + defer2 = function(id2) { + setTimeout(_ctx(run2, id2, 1), 0); + }; + } + } + var _task = { + set: setTask, + clear: clearTask + }; + var macrotask = _task.set; + var Observer = _global2.MutationObserver || _global2.WebKitMutationObserver; + var process$2 = _global2.process; + var Promise2 = _global2.Promise; + var isNode2 = _cof(process$2) == "process"; + var _microtask = function() { + var head, last, notify2; + var flush = function() { + var parent, fn; + if (isNode2 && (parent = process$2.domain)) + parent.exit(); + while (head) { + fn = head.fn; + head = head.next; + try { + fn(); + } catch (e) { + if (head) + notify2(); + else + last = void 0; + throw e; + } + } + last = void 0; + if (parent) + parent.enter(); + }; + if (isNode2) { + notify2 = function() { + process$2.nextTick(flush); + }; + } else if (Observer && !(_global2.navigator && _global2.navigator.standalone)) { + var toggle = true; + var node2 = document.createTextNode(""); + new Observer(flush).observe(node2, { characterData: true }); + notify2 = function() { + node2.data = toggle = !toggle; + }; + } else if (Promise2 && Promise2.resolve) { + var promise2 = Promise2.resolve(void 0); + notify2 = function() { + promise2.then(flush); + }; + } else { + notify2 = function() { + macrotask.call(_global2, flush); + }; + } + return function(fn) { + var task2 = { fn, next: void 0 }; + if (last) + last.next = task2; + if (!head) { + head = task2; + notify2(); + } + last = task2; + }; + }; + function PromiseCapability(C2) { + var resolve8, reject; + this.promise = new C2(function($$resolve, $$reject) { + if (resolve8 !== void 0 || reject !== void 0) + throw TypeError("Bad Promise constructor"); + resolve8 = $$resolve; + reject = $$reject; + }); + this.resolve = _aFunction(resolve8); + this.reject = _aFunction(reject); + } + var f$7 = function(C2) { + return new PromiseCapability(C2); + }; + var _newPromiseCapability = { + f: f$7 + }; + var _perform = function(exec3) { + try { + return { e: false, v: exec3() }; + } catch (e) { + return { e: true, v: e }; + } + }; + var navigator$1 = _global2.navigator; + var _userAgent = navigator$1 && navigator$1.userAgent || ""; + var _promiseResolve = function(C2, x) { + _anObject(C2); + if (_isObject(x) && x.constructor === C2) + return x; + var promiseCapability = _newPromiseCapability.f(C2); + var resolve8 = promiseCapability.resolve; + resolve8(x); + return promiseCapability.promise; + }; + var SPECIES$2 = _wks("species"); + var _setSpecies = function(KEY) { + var C2 = typeof _core[KEY] == "function" ? _core[KEY] : _global2[KEY]; + if (_descriptors && C2 && !C2[SPECIES$2]) + _objectDp.f(C2, SPECIES$2, { + configurable: true, + get: function() { + return this; + } + }); + }; + var ITERATOR$3 = _wks("iterator"); + var SAFE_CLOSING = false; + try { + riter = [7][ITERATOR$3](); + riter["return"] = function() { + SAFE_CLOSING = true; + }; + Array.from(riter, function() { + throw 2; + }); + } catch (e) { + } + var riter; + var _iterDetect = function(exec3, skipClosing) { + if (!skipClosing && !SAFE_CLOSING) + return false; + var safe = false; + try { + var arr = [7]; + var iter = arr[ITERATOR$3](); + iter.next = function() { + return { done: safe = true }; + }; + arr[ITERATOR$3] = function() { + return iter; + }; + exec3(arr); + } catch (e) { + } + return safe; + }; + var task = _task.set; + var microtask = _microtask(); + var PROMISE = "Promise"; + var TypeError$1 = _global2.TypeError; + var process$3 = _global2.process; + var versions = process$3 && process$3.versions; + var v8 = versions && versions.v8 || ""; + var $Promise = _global2[PROMISE]; + var isNode$1 = _classof(process$3) == "process"; + var empty = function() { + }; + var Internal; + var newGenericPromiseCapability; + var OwnPromiseCapability; + var Wrapper; + var newPromiseCapability = newGenericPromiseCapability = _newPromiseCapability.f; + var USE_NATIVE$1 = !!function() { + try { + var promise2 = $Promise.resolve(1); + var FakePromise = (promise2.constructor = {})[_wks("species")] = function(exec3) { + exec3(empty, empty); + }; + return (isNode$1 || typeof PromiseRejectionEvent == "function") && promise2.then(empty) instanceof FakePromise && v8.indexOf("6.6") !== 0 && _userAgent.indexOf("Chrome/66") === -1; + } catch (e) { + } + }(); + var isThenable = function(it) { + var then; + return _isObject(it) && typeof (then = it.then) == "function" ? then : false; + }; + var notify = function(promise2, isReject) { + if (promise2._n) + return; + promise2._n = true; + var chain = promise2._c; + microtask(function() { + var value = promise2._v; + var ok = promise2._s == 1; + var i2 = 0; + var run3 = function(reaction) { + var handler = ok ? reaction.ok : reaction.fail; + var resolve8 = reaction.resolve; + var reject = reaction.reject; + var domain2 = reaction.domain; + var result, then, exited; + try { + if (handler) { + if (!ok) { + if (promise2._h == 2) + onHandleUnhandled(promise2); + promise2._h = 1; + } + if (handler === true) + result = value; + else { + if (domain2) + domain2.enter(); + result = handler(value); + if (domain2) { + domain2.exit(); + exited = true; + } + } + if (result === reaction.promise) { + reject(TypeError$1("Promise-chain cycle")); + } else if (then = isThenable(result)) { + then.call(result, resolve8, reject); + } else + resolve8(result); + } else + reject(value); + } catch (e) { + if (domain2 && !exited) + domain2.exit(); + reject(e); + } + }; + while (chain.length > i2) + run3(chain[i2++]); + promise2._c = []; + promise2._n = false; + if (isReject && !promise2._h) + onUnhandled(promise2); + }); + }; + var onUnhandled = function(promise2) { + task.call(_global2, function() { + var value = promise2._v; + var unhandled = isUnhandled(promise2); + var result, handler, console2; + if (unhandled) { + result = _perform(function() { + if (isNode$1) { + process$3.emit("unhandledRejection", value, promise2); + } else if (handler = _global2.onunhandledrejection) { + handler({ promise: promise2, reason: value }); + } else if ((console2 = _global2.console) && console2.error) { + console2.error("Unhandled promise rejection", value); + } + }); + promise2._h = isNode$1 || isUnhandled(promise2) ? 2 : 1; + } + promise2._a = void 0; + if (unhandled && result.e) + throw result.v; + }); + }; + var isUnhandled = function(promise2) { + return promise2._h !== 1 && (promise2._a || promise2._c).length === 0; + }; + var onHandleUnhandled = function(promise2) { + task.call(_global2, function() { + var handler; + if (isNode$1) { + process$3.emit("rejectionHandled", promise2); + } else if (handler = _global2.onrejectionhandled) { + handler({ promise: promise2, reason: promise2._v }); + } + }); + }; + var $reject = function(value) { + var promise2 = this; + if (promise2._d) + return; + promise2._d = true; + promise2 = promise2._w || promise2; + promise2._v = value; + promise2._s = 2; + if (!promise2._a) + promise2._a = promise2._c.slice(); + notify(promise2, true); + }; + var $resolve = function(value) { + var promise2 = this; + var then; + if (promise2._d) + return; + promise2._d = true; + promise2 = promise2._w || promise2; + try { + if (promise2 === value) + throw TypeError$1("Promise can't be resolved itself"); + if (then = isThenable(value)) { + microtask(function() { + var wrapper = { _w: promise2, _d: false }; + try { + then.call(value, _ctx($resolve, wrapper, 1), _ctx($reject, wrapper, 1)); + } catch (e) { + $reject.call(wrapper, e); + } + }); + } else { + promise2._v = value; + promise2._s = 1; + notify(promise2, false); + } + } catch (e) { + $reject.call({ _w: promise2, _d: false }, e); + } + }; + if (!USE_NATIVE$1) { + $Promise = function Promise3(executor) { + _anInstance(this, $Promise, PROMISE, "_h"); + _aFunction(executor); + Internal.call(this); + try { + executor(_ctx($resolve, this, 1), _ctx($reject, this, 1)); + } catch (err2) { + $reject.call(this, err2); + } + }; + Internal = function Promise3(executor) { + this._c = []; + this._a = void 0; + this._s = 0; + this._d = false; + this._v = void 0; + this._h = 0; + this._n = false; + }; + Internal.prototype = _redefineAll($Promise.prototype, { + // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) + then: function then(onFulfilled, onRejected) { + var reaction = newPromiseCapability(_speciesConstructor(this, $Promise)); + reaction.ok = typeof onFulfilled == "function" ? onFulfilled : true; + reaction.fail = typeof onRejected == "function" && onRejected; + reaction.domain = isNode$1 ? process$3.domain : void 0; + this._c.push(reaction); + if (this._a) + this._a.push(reaction); + if (this._s) + notify(this, false); + return reaction.promise; + }, + // 25.4.5.1 Promise.prototype.catch(onRejected) + "catch": function(onRejected) { + return this.then(void 0, onRejected); + } + }); + OwnPromiseCapability = function() { + var promise2 = new Internal(); + this.promise = promise2; + this.resolve = _ctx($resolve, promise2, 1); + this.reject = _ctx($reject, promise2, 1); + }; + _newPromiseCapability.f = newPromiseCapability = function(C2) { + return C2 === $Promise || C2 === Wrapper ? new OwnPromiseCapability(C2) : newGenericPromiseCapability(C2); + }; + } + _export(_export.G + _export.W + _export.F * !USE_NATIVE$1, { Promise: $Promise }); + _setToStringTag($Promise, PROMISE); + _setSpecies(PROMISE); + Wrapper = _core[PROMISE]; + _export(_export.S + _export.F * !USE_NATIVE$1, PROMISE, { + // 25.4.4.5 Promise.reject(r) + reject: function reject(r) { + var capability = newPromiseCapability(this); + var $$reject = capability.reject; + $$reject(r); + return capability.promise; + } + }); + _export(_export.S + _export.F * _library, PROMISE, { + // 25.4.4.6 Promise.resolve(x) + resolve: function resolve8(x) { + return _promiseResolve(this === Wrapper ? $Promise : this, x); + } + }); + _export(_export.S + _export.F * !(USE_NATIVE$1 && _iterDetect(function(iter) { + $Promise.all(iter)["catch"](empty); + })), PROMISE, { + // 25.4.4.1 Promise.all(iterable) + all: function all3(iterable) { + var C2 = this; + var capability = newPromiseCapability(C2); + var resolve8 = capability.resolve; + var reject = capability.reject; + var result = _perform(function() { + var values = []; + var index = 0; + var remaining = 1; + _forOf(iterable, false, function(promise2) { + var $index = index++; + var alreadyCalled = false; + values.push(void 0); + remaining++; + C2.resolve(promise2).then(function(value) { + if (alreadyCalled) + return; + alreadyCalled = true; + values[$index] = value; + --remaining || resolve8(values); + }, reject); + }); + --remaining || resolve8(values); + }); + if (result.e) + reject(result.v); + return capability.promise; + }, + // 25.4.4.4 Promise.race(iterable) + race: function race(iterable) { + var C2 = this; + var capability = newPromiseCapability(C2); + var reject = capability.reject; + var result = _perform(function() { + _forOf(iterable, false, function(promise2) { + C2.resolve(promise2).then(capability.resolve, reject); + }); + }); + if (result.e) + reject(result.v); + return capability.promise; + } + }); + _export(_export.P + _export.R, "Promise", { "finally": function(onFinally) { + var C2 = _speciesConstructor(this, _core.Promise || _global2.Promise); + var isFunction3 = typeof onFinally == "function"; + return this.then( + isFunction3 ? function(x) { + return _promiseResolve(C2, onFinally()).then(function() { + return x; + }); + } : onFinally, + isFunction3 ? function(e) { + return _promiseResolve(C2, onFinally()).then(function() { + throw e; + }); + } : onFinally + ); + } }); + _export(_export.S, "Promise", { "try": function(callbackfn) { + var promiseCapability = _newPromiseCapability.f(this); + var result = _perform(callbackfn); + (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); + return promiseCapability.promise; + } }); + var promise = _core.Promise; + var promise$1 = promise; + var $JSON$1 = _core.JSON || (_core.JSON = { stringify: JSON.stringify }); + var stringify = function stringify2(it) { + return $JSON$1.stringify.apply($JSON$1, arguments); + }; + var stringify$1 = stringify; + var s = 1e3; + var m = s * 60; + var h = m * 60; + var d = h * 24; + var w = d * 7; + var y = d * 365.25; + var ms = function(val, options2) { + options2 = options2 || {}; + var type2 = typeof val; + if (type2 === "string" && val.length > 0) { + return parse7(val); + } else if (type2 === "number" && isNaN(val) === false) { + return options2.long ? fmtLong(val) : fmtShort(val); + } + throw new Error( + "val is not a non-empty string or a valid number. val=" + JSON.stringify(val) + ); + }; + function parse7(str) { + str = String(str); + if (str.length > 100) { + return; + } + var match2 = /^((?:\d+)?\-?\d?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( + str + ); + if (!match2) { + return; + } + var n = parseFloat(match2[1]); + var type2 = (match2[2] || "ms").toLowerCase(); + switch (type2) { + case "years": + case "year": + case "yrs": + case "yr": + case "y": + return n * y; + case "weeks": + case "week": + case "w": + return n * w; + case "days": + case "day": + case "d": + return n * d; + case "hours": + case "hour": + case "hrs": + case "hr": + case "h": + return n * h; + case "minutes": + case "minute": + case "mins": + case "min": + case "m": + return n * m; + case "seconds": + case "second": + case "secs": + case "sec": + case "s": + return n * s; + case "milliseconds": + case "millisecond": + case "msecs": + case "msec": + case "ms": + return n; + default: + return void 0; + } + } + function fmtShort(ms2) { + var msAbs = Math.abs(ms2); + if (msAbs >= d) { + return Math.round(ms2 / d) + "d"; + } + if (msAbs >= h) { + return Math.round(ms2 / h) + "h"; + } + if (msAbs >= m) { + return Math.round(ms2 / m) + "m"; + } + if (msAbs >= s) { + return Math.round(ms2 / s) + "s"; + } + return ms2 + "ms"; + } + function fmtLong(ms2) { + var msAbs = Math.abs(ms2); + if (msAbs >= d) { + return plural(ms2, msAbs, d, "day"); + } + if (msAbs >= h) { + return plural(ms2, msAbs, h, "hour"); + } + if (msAbs >= m) { + return plural(ms2, msAbs, m, "minute"); + } + if (msAbs >= s) { + return plural(ms2, msAbs, s, "second"); + } + return ms2 + " ms"; + } + function plural(ms2, msAbs, n, name) { + var isPlural = msAbs >= n * 1.5; + return Math.round(ms2 / n) + " " + name + (isPlural ? "s" : ""); + } + function setup(env5) { + createDebug.debug = createDebug; + createDebug.default = createDebug; + createDebug.coerce = coerce; + createDebug.disable = disable; + createDebug.enable = enable; + createDebug.enabled = enabled; + createDebug.humanize = ms; + Object.keys(env5).forEach((key) => { + createDebug[key] = env5[key]; + }); + createDebug.instances = []; + createDebug.names = []; + createDebug.skips = []; + createDebug.formatters = {}; + function selectColor(namespace) { + let hash = 0; + for (let i2 = 0; i2 < namespace.length; i2++) { + hash = (hash << 5) - hash + namespace.charCodeAt(i2); + hash |= 0; + } + return createDebug.colors[Math.abs(hash) % createDebug.colors.length]; + } + createDebug.selectColor = selectColor; + function createDebug(namespace) { + let prevTime; + function debug2(...args3) { + if (!debug2.enabled) { + return; + } + const self2 = debug2; + const curr = Number(/* @__PURE__ */ new Date()); + const ms2 = curr - (prevTime || curr); + self2.diff = ms2; + self2.prev = prevTime; + self2.curr = curr; + prevTime = curr; + args3[0] = createDebug.coerce(args3[0]); + if (typeof args3[0] !== "string") { + args3.unshift("%O"); + } + let index = 0; + args3[0] = args3[0].replace(/%([a-zA-Z%])/g, (match2, format) => { + if (match2 === "%%") { + return match2; + } + index++; + const formatter = createDebug.formatters[format]; + if (typeof formatter === "function") { + const val = args3[index]; + match2 = formatter.call(self2, val); + args3.splice(index, 1); + index--; + } + return match2; + }); + createDebug.formatArgs.call(self2, args3); + const logFn = self2.log || createDebug.log; + logFn.apply(self2, args3); + } + debug2.namespace = namespace; + debug2.enabled = createDebug.enabled(namespace); + debug2.useColors = createDebug.useColors(); + debug2.color = selectColor(namespace); + debug2.destroy = destroy; + debug2.extend = extend2; + if (typeof createDebug.init === "function") { + createDebug.init(debug2); + } + createDebug.instances.push(debug2); + return debug2; + } + function destroy() { + const index = createDebug.instances.indexOf(this); + if (index !== -1) { + createDebug.instances.splice(index, 1); + return true; + } + return false; + } + function extend2(namespace, delimiter) { + const newDebug = createDebug(this.namespace + (typeof delimiter === "undefined" ? ":" : delimiter) + namespace); + newDebug.log = this.log; + return newDebug; + } + function enable(namespaces) { + createDebug.save(namespaces); + createDebug.names = []; + createDebug.skips = []; + let i2; + const split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/); + const len = split.length; + for (i2 = 0; i2 < len; i2++) { + if (!split[i2]) { + continue; + } + namespaces = split[i2].replace(/\*/g, ".*?"); + if (namespaces[0] === "-") { + createDebug.skips.push(new RegExp("^" + namespaces.substr(1) + "$")); + } else { + createDebug.names.push(new RegExp("^" + namespaces + "$")); + } + } + for (i2 = 0; i2 < createDebug.instances.length; i2++) { + const instance2 = createDebug.instances[i2]; + instance2.enabled = createDebug.enabled(instance2.namespace); + } + } + function disable() { + const namespaces = [ + ...createDebug.names.map(toNamespace), + ...createDebug.skips.map(toNamespace).map((namespace) => "-" + namespace) + ].join(","); + createDebug.enable(""); + return namespaces; + } + function enabled(name) { + if (name[name.length - 1] === "*") { + return true; + } + let i2; + let len; + for (i2 = 0, len = createDebug.skips.length; i2 < len; i2++) { + if (createDebug.skips[i2].test(name)) { + return false; + } + } + for (i2 = 0, len = createDebug.names.length; i2 < len; i2++) { + if (createDebug.names[i2].test(name)) { + return true; + } + } + return false; + } + function toNamespace(regexp) { + return regexp.toString().substring(2, regexp.toString().length - 2).replace(/\.\*\?$/, "*"); + } + function coerce(val) { + if (val instanceof Error) { + return val.stack || val.message; + } + return val; + } + createDebug.enable(createDebug.load()); + return createDebug; + } + var common = setup; + var browser = createCommonjsModule(function(module3, exports3) { + exports3.log = log2; + exports3.formatArgs = formatArgs; + exports3.save = save; + exports3.load = load; + exports3.useColors = useColors; + exports3.storage = localstorage(); + exports3.colors = [ + "#0000CC", + "#0000FF", + "#0033CC", + "#0033FF", + "#0066CC", + "#0066FF", + "#0099CC", + "#0099FF", + "#00CC00", + "#00CC33", + "#00CC66", + "#00CC99", + "#00CCCC", + "#00CCFF", + "#3300CC", + "#3300FF", + "#3333CC", + "#3333FF", + "#3366CC", + "#3366FF", + "#3399CC", + "#3399FF", + "#33CC00", + "#33CC33", + "#33CC66", + "#33CC99", + "#33CCCC", + "#33CCFF", + "#6600CC", + "#6600FF", + "#6633CC", + "#6633FF", + "#66CC00", + "#66CC33", + "#9900CC", + "#9900FF", + "#9933CC", + "#9933FF", + "#99CC00", + "#99CC33", + "#CC0000", + "#CC0033", + "#CC0066", + "#CC0099", + "#CC00CC", + "#CC00FF", + "#CC3300", + "#CC3333", + "#CC3366", + "#CC3399", + "#CC33CC", + "#CC33FF", + "#CC6600", + "#CC6633", + "#CC9900", + "#CC9933", + "#CCCC00", + "#CCCC33", + "#FF0000", + "#FF0033", + "#FF0066", + "#FF0099", + "#FF00CC", + "#FF00FF", + "#FF3300", + "#FF3333", + "#FF3366", + "#FF3399", + "#FF33CC", + "#FF33FF", + "#FF6600", + "#FF6633", + "#FF9900", + "#FF9933", + "#FFCC00", + "#FFCC33" + ]; + function useColors() { + if (typeof window !== "undefined" && window.process && (window.process.type === "renderer" || window.process.__nwjs)) { + return true; + } + if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { + return false; + } + return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773 + typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31? + // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages + typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker + typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); + } + function formatArgs(args3) { + args3[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + args3[0] + (this.useColors ? "%c " : " ") + "+" + module3.exports.humanize(this.diff); + if (!this.useColors) { + return; + } + const c = "color: " + this.color; + args3.splice(1, 0, c, "color: inherit"); + let index = 0; + let lastC = 0; + args3[0].replace(/%[a-zA-Z%]/g, (match2) => { + if (match2 === "%%") { + return; + } + index++; + if (match2 === "%c") { + lastC = index; + } + }); + args3.splice(lastC, 0, c); + } + function log2(...args3) { + return typeof console === "object" && console.log && console.log(...args3); + } + function save(namespaces) { + try { + if (namespaces) { + exports3.storage.setItem("debug", namespaces); + } else { + exports3.storage.removeItem("debug"); + } + } catch (error) { + } + } + function load() { + let r; + try { + r = exports3.storage.getItem("debug"); + } catch (error) { + } + if (!r && typeof process !== "undefined" && "env" in process) { + r = process.env.DEBUG; + } + return r; + } + function localstorage() { + try { + return localStorage; + } catch (error) { + } + } + module3.exports = common(exports3); + const { formatters } = module3.exports; + formatters.j = function(v) { + try { + return JSON.stringify(v); + } catch (error) { + return "[UnexpectedJSONParseError]: " + error.message; + } + }; + }); + var browser_1 = browser.log; + var browser_2 = browser.formatArgs; + var browser_3 = browser.save; + var browser_4 = browser.load; + var browser_5 = browser.useColors; + var browser_6 = browser.storage; + var browser_7 = browser.colors; + var hasFlag = (flag, argv = process.argv) => { + const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; + const position = argv.indexOf(prefix + flag); + const terminatorPosition = argv.indexOf("--"); + return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition); + }; + var { env: env4 } = process; + var forceColor; + if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) { + forceColor = 0; + } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { + forceColor = 1; + } + if ("FORCE_COLOR" in env4) { + if (env4.FORCE_COLOR === "true") { + forceColor = 1; + } else if (env4.FORCE_COLOR === "false") { + forceColor = 0; + } else { + forceColor = env4.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env4.FORCE_COLOR, 10), 3); + } + } + function translateLevel(level) { + if (level === 0) { + return false; + } + return { + level, + hasBasic: true, + has256: level >= 2, + has16m: level >= 3 + }; + } + function supportsColor(haveStream, streamIsTTY) { + if (forceColor === 0) { + return 0; + } + if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { + return 3; + } + if (hasFlag("color=256")) { + return 2; + } + if (haveStream && !streamIsTTY && forceColor === void 0) { + return 0; + } + const min2 = forceColor || 0; + if (env4.TERM === "dumb") { + return min2; + } + if (process.platform === "win32") { + const osRelease = os8.release().split("."); + if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { + return Number(osRelease[2]) >= 14931 ? 3 : 2; + } + return 1; + } + if ("CI" in env4) { + if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE"].some((sign) => sign in env4) || env4.CI_NAME === "codeship") { + return 1; + } + return min2; + } + if ("TEAMCITY_VERSION" in env4) { + return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env4.TEAMCITY_VERSION) ? 1 : 0; + } + if (env4.COLORTERM === "truecolor") { + return 3; + } + if ("TERM_PROGRAM" in env4) { + const version4 = parseInt((env4.TERM_PROGRAM_VERSION || "").split(".")[0], 10); + switch (env4.TERM_PROGRAM) { + case "iTerm.app": + return version4 >= 3 ? 3 : 2; + case "Apple_Terminal": + return 2; + } + } + if (/-256(color)?$/i.test(env4.TERM)) { + return 2; + } + if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env4.TERM)) { + return 1; + } + if ("COLORTERM" in env4) { + return 1; + } + return min2; + } + function getSupportLevel(stream6) { + const level = supportsColor(stream6, stream6 && stream6.isTTY); + return translateLevel(level); + } + var supportsColor_1 = { + supportsColor: getSupportLevel, + stdout: translateLevel(supportsColor(true, tty.isatty(1))), + stderr: translateLevel(supportsColor(true, tty.isatty(2))) + }; + var node = createCommonjsModule(function(module3, exports3) { + exports3.init = init5; + exports3.log = log2; + exports3.formatArgs = formatArgs; + exports3.save = save; + exports3.load = load; + exports3.useColors = useColors; + exports3.colors = [6, 2, 3, 4, 5, 1]; + try { + const supportsColor2 = supportsColor_1; + if (supportsColor2 && (supportsColor2.stderr || supportsColor2).level >= 2) { + exports3.colors = [ + 20, + 21, + 26, + 27, + 32, + 33, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 56, + 57, + 62, + 63, + 68, + 69, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 92, + 93, + 98, + 99, + 112, + 113, + 128, + 129, + 134, + 135, + 148, + 149, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 178, + 179, + 184, + 185, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 214, + 215, + 220, + 221 + ]; + } + } catch (error) { + } + exports3.inspectOpts = Object.keys(process.env).filter((key) => { + return /^debug_/i.test(key); + }).reduce((obj2, key) => { + const prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, (_, k2) => { + return k2.toUpperCase(); + }); + let val = process.env[key]; + if (/^(yes|on|true|enabled)$/i.test(val)) { + val = true; + } else if (/^(no|off|false|disabled)$/i.test(val)) { + val = false; + } else if (val === "null") { + val = null; + } else { + val = Number(val); + } + obj2[prop] = val; + return obj2; + }, {}); + function useColors() { + return "colors" in exports3.inspectOpts ? Boolean(exports3.inspectOpts.colors) : tty.isatty(process.stderr.fd); + } + function formatArgs(args3) { + const { namespace: name, useColors: useColors2 } = this; + if (useColors2) { + const c = this.color; + const colorCode = "\x1B[3" + (c < 8 ? c : "8;5;" + c); + const prefix = ` ${colorCode};1m${name} \x1B[0m`; + args3[0] = prefix + args3[0].split("\n").join("\n" + prefix); + args3.push(colorCode + "m+" + module3.exports.humanize(this.diff) + "\x1B[0m"); + } else { + args3[0] = getDate() + name + " " + args3[0]; + } + } + function getDate() { + if (exports3.inspectOpts.hideDate) { + return ""; + } + return (/* @__PURE__ */ new Date()).toISOString() + " "; + } + function log2(...args3) { + return process.stderr.write(util2.format(...args3) + "\n"); + } + function save(namespaces) { + if (namespaces) { + process.env.DEBUG = namespaces; + } else { + delete process.env.DEBUG; + } + } + function load() { + return process.env.DEBUG; + } + function init5(debug2) { + debug2.inspectOpts = {}; + const keys2 = Object.keys(exports3.inspectOpts); + for (let i2 = 0; i2 < keys2.length; i2++) { + debug2.inspectOpts[keys2[i2]] = exports3.inspectOpts[keys2[i2]]; + } + } + module3.exports = common(exports3); + const { formatters } = module3.exports; + formatters.o = function(v) { + this.inspectOpts.colors = this.useColors; + return util2.inspect(v, this.inspectOpts).replace(/\s*\n\s*/g, " "); + }; + formatters.O = function(v) { + this.inspectOpts.colors = this.useColors; + return util2.inspect(v, this.inspectOpts); + }; + }); + var node_1 = node.init; + var node_2 = node.log; + var node_3 = node.formatArgs; + var node_4 = node.save; + var node_5 = node.load; + var node_6 = node.useColors; + var node_7 = node.colors; + var node_8 = node.inspectOpts; + var src = createCommonjsModule(function(module3) { + if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) { + module3.exports = browser; + } else { + module3.exports = node; + } + }); + var FUNC_ERROR_TEXT = "Expected a function"; + var HASH_UNDEFINED = "__lodash_hash_undefined__"; + var INFINITY = 1 / 0; + var MAX_SAFE_INTEGER = 9007199254740991; + var funcTag = "[object Function]"; + var genTag = "[object GeneratorFunction]"; + var symbolTag = "[object Symbol]"; + var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/; + var reIsPlainProp = /^\w*$/; + var reLeadingDot = /^\./; + var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; + var reEscapeChar = /\\(\\)?/g; + var reIsHostCtor = /^\[object .+?Constructor\]$/; + var reIsUint = /^(?:0|[1-9]\d*)$/; + var freeGlobal = typeof commonjsGlobal == "object" && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal; + var freeSelf = typeof self == "object" && self && self.Object === Object && self; + var root = freeGlobal || freeSelf || Function("return this")(); + function getValue2(object, key) { + return object == null ? void 0 : object[key]; + } + function isHostObject(value) { + var result = false; + if (value != null && typeof value.toString != "function") { + try { + result = !!(value + ""); + } catch (e) { + } + } + return result; + } + var arrayProto = Array.prototype; + var funcProto = Function.prototype; + var objectProto = Object.prototype; + var coreJsData = root["__core-js_shared__"]; + var maskSrcKey = function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); + return uid ? "Symbol(src)_1." + uid : ""; + }(); + var funcToString = funcProto.toString; + var hasOwnProperty$1 = objectProto.hasOwnProperty; + var objectToString = objectProto.toString; + var reIsNative = RegExp( + "^" + funcToString.call(hasOwnProperty$1).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" + ); + var Symbol$1 = root.Symbol; + var splice = arrayProto.splice; + var Map2 = getNative(root, "Map"); + var nativeCreate = getNative(Object, "create"); + var symbolProto = Symbol$1 ? Symbol$1.prototype : void 0; + var symbolToString = symbolProto ? symbolProto.toString : void 0; + function Hash(entries) { + var index = -1, length = entries ? entries.length : 0; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + function hashClear() { + this.__data__ = nativeCreate ? nativeCreate(null) : {}; + } + function hashDelete(key) { + return this.has(key) && delete this.__data__[key]; + } + function hashGet(key) { + var data = this.__data__; + if (nativeCreate) { + var result = data[key]; + return result === HASH_UNDEFINED ? void 0 : result; + } + return hasOwnProperty$1.call(data, key) ? data[key] : void 0; + } + function hashHas(key) { + var data = this.__data__; + return nativeCreate ? data[key] !== void 0 : hasOwnProperty$1.call(data, key); + } + function hashSet(key, value) { + var data = this.__data__; + data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; + return this; + } + Hash.prototype.clear = hashClear; + Hash.prototype["delete"] = hashDelete; + Hash.prototype.get = hashGet; + Hash.prototype.has = hashHas; + Hash.prototype.set = hashSet; + function ListCache(entries) { + var index = -1, length = entries ? entries.length : 0; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + function listCacheClear() { + this.__data__ = []; + } + function listCacheDelete(key) { + var data = this.__data__, index = assocIndexOf(data, key); + if (index < 0) { + return false; + } + var lastIndex = data.length - 1; + if (index == lastIndex) { + data.pop(); + } else { + splice.call(data, index, 1); + } + return true; + } + function listCacheGet(key) { + var data = this.__data__, index = assocIndexOf(data, key); + return index < 0 ? void 0 : data[index][1]; + } + function listCacheHas(key) { + return assocIndexOf(this.__data__, key) > -1; + } + function listCacheSet(key, value) { + var data = this.__data__, index = assocIndexOf(data, key); + if (index < 0) { + data.push([key, value]); + } else { + data[index][1] = value; + } + return this; + } + ListCache.prototype.clear = listCacheClear; + ListCache.prototype["delete"] = listCacheDelete; + ListCache.prototype.get = listCacheGet; + ListCache.prototype.has = listCacheHas; + ListCache.prototype.set = listCacheSet; + function MapCache(entries) { + var index = -1, length = entries ? entries.length : 0; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + function mapCacheClear() { + this.__data__ = { + "hash": new Hash(), + "map": new (Map2 || ListCache)(), + "string": new Hash() + }; + } + function mapCacheDelete(key) { + return getMapData(this, key)["delete"](key); + } + function mapCacheGet(key) { + return getMapData(this, key).get(key); + } + function mapCacheHas(key) { + return getMapData(this, key).has(key); + } + function mapCacheSet(key, value) { + getMapData(this, key).set(key, value); + return this; + } + MapCache.prototype.clear = mapCacheClear; + MapCache.prototype["delete"] = mapCacheDelete; + MapCache.prototype.get = mapCacheGet; + MapCache.prototype.has = mapCacheHas; + MapCache.prototype.set = mapCacheSet; + function assignValue(object, key, value) { + var objValue = object[key]; + if (!(hasOwnProperty$1.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) { + object[key] = value; + } + } + function assocIndexOf(array, key) { + var length = array.length; + while (length--) { + if (eq(array[length][0], key)) { + return length; + } + } + return -1; + } + function baseIsNative(value) { + if (!isObject3(value) || isMasked(value)) { + return false; + } + var pattern = isFunction2(value) || isHostObject(value) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); + } + function baseSet(object, path30, value, customizer) { + if (!isObject3(object)) { + return object; + } + path30 = isKey(path30, object) ? [path30] : castPath(path30); + var index = -1, length = path30.length, lastIndex = length - 1, nested = object; + while (nested != null && ++index < length) { + var key = toKey(path30[index]), newValue = value; + if (index != lastIndex) { + var objValue = nested[key]; + newValue = customizer ? customizer(objValue, key, nested) : void 0; + if (newValue === void 0) { + newValue = isObject3(objValue) ? objValue : isIndex(path30[index + 1]) ? [] : {}; + } + } + assignValue(nested, key, newValue); + nested = nested[key]; + } + return object; + } + function baseToString(value) { + if (typeof value == "string") { + return value; + } + if (isSymbol$1(value)) { + return symbolToString ? symbolToString.call(value) : ""; + } + var result = value + ""; + return result == "0" && 1 / value == -INFINITY ? "-0" : result; + } + function castPath(value) { + return isArray2(value) ? value : stringToPath(value); + } + function getMapData(map, key) { + var data = map.__data__; + return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; + } + function getNative(object, key) { + var value = getValue2(object, key); + return baseIsNative(value) ? value : void 0; + } + function isIndex(value, length) { + length = length == null ? MAX_SAFE_INTEGER : length; + return !!length && (typeof value == "number" || reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); + } + function isKey(value, object) { + if (isArray2(value)) { + return false; + } + var type2 = typeof value; + if (type2 == "number" || type2 == "symbol" || type2 == "boolean" || value == null || isSymbol$1(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || object != null && value in Object(object); + } + function isKeyable(value) { + var type2 = typeof value; + return type2 == "string" || type2 == "number" || type2 == "symbol" || type2 == "boolean" ? value !== "__proto__" : value === null; + } + function isMasked(func2) { + return !!maskSrcKey && maskSrcKey in func2; + } + var stringToPath = memoize(function(string) { + string = toString$2(string); + var result = []; + if (reLeadingDot.test(string)) { + result.push(""); + } + string.replace(rePropName, function(match2, number, quote, string2) { + result.push(quote ? string2.replace(reEscapeChar, "$1") : number || match2); + }); + return result; + }); + function toKey(value) { + if (typeof value == "string" || isSymbol$1(value)) { + return value; + } + var result = value + ""; + return result == "0" && 1 / value == -INFINITY ? "-0" : result; + } + function toSource(func2) { + if (func2 != null) { + try { + return funcToString.call(func2); + } catch (e) { + } + try { + return func2 + ""; + } catch (e) { + } + } + return ""; + } + function memoize(func2, resolver) { + if (typeof func2 != "function" || resolver && typeof resolver != "function") { + throw new TypeError(FUNC_ERROR_TEXT); + } + var memoized = function() { + var args3 = arguments, key = resolver ? resolver.apply(this, args3) : args3[0], cache = memoized.cache; + if (cache.has(key)) { + return cache.get(key); + } + var result = func2.apply(this, args3); + memoized.cache = cache.set(key, result); + return result; + }; + memoized.cache = new (memoize.Cache || MapCache)(); + return memoized; + } + memoize.Cache = MapCache; + function eq(value, other) { + return value === other || value !== value && other !== other; + } + var isArray2 = Array.isArray; + function isFunction2(value) { + var tag = isObject3(value) ? objectToString.call(value) : ""; + return tag == funcTag || tag == genTag; + } + function isObject3(value) { + var type2 = typeof value; + return !!value && (type2 == "object" || type2 == "function"); + } + function isObjectLike(value) { + return !!value && typeof value == "object"; + } + function isSymbol$1(value) { + return typeof value == "symbol" || isObjectLike(value) && objectToString.call(value) == symbolTag; + } + function toString$2(value) { + return value == null ? "" : baseToString(value); + } + function set(object, path30, value) { + return object == null ? object : baseSet(object, path30, value); + } + var lodash_set = set; + var debug = src("nock.common"); + function normalizeRequestOptions(options2) { + options2.proto = options2.proto || "http"; + options2.port = options2.port || (options2.proto === "http" ? 80 : 443); + if (options2.host) { + debug("options.host:", options2.host); + if (!options2.hostname) { + if (options2.host.split(":").length === 2) { + options2.hostname = options2.host.split(":")[0]; + } else { + options2.hostname = options2.host; + } + } + } + debug("options.hostname in the end: %j", options2.hostname); + options2.host = `${options2.hostname || "localhost"}:${options2.port}`; + debug("options.host in the end: %j", options2.host); + ["hostname", "host"].forEach(function(attr) { + if (options2[attr]) { + options2[attr] = options2[attr].toLowerCase(); + } + }); + return options2; + } + function isUtf8Representable(buffer2) { + const utfEncodedBuffer = buffer2.toString("utf8"); + const reconstructedBuffer = Buffer.from(utfEncodedBuffer, "utf8"); + return reconstructedBuffer.equals(buffer2); + } + var requestOverrides = {}; + function overrideRequests(newRequest) { + debug("overriding requests"); + ["http", "https"].forEach(function(proto2) { + debug("- overriding request for", proto2); + const moduleName2 = proto2; + const module3 = { + http: http4, + https: https4 + }[moduleName2]; + const overriddenRequest = module3.request; + const overriddenGet = module3.get; + if (requestOverrides[moduleName2]) { + throw new Error( + `Module's request already overridden for ${moduleName2} protocol.` + ); + } + requestOverrides[moduleName2] = { + module: module3, + request: overriddenRequest, + get: overriddenGet + }; + module3.request = function(input, options2, callback) { + return newRequest(proto2, overriddenRequest.bind(module3), [ + input, + options2, + callback + ]); + }; + module3.get = function(input, options2, callback) { + const req = newRequest(proto2, overriddenGet.bind(module3), [ + input, + options2, + callback + ]); + req.end(); + return req; + }; + debug("- overridden request for", proto2); + }); + } + function restoreOverriddenRequests() { + debug("restoring requests"); + Object.entries(requestOverrides).forEach( + ([proto2, { module: module3, request, get }]) => { + debug("- restoring request for", proto2); + module3.request = request; + module3.get = get; + debug("- restored request for", proto2); + } + ); + requestOverrides = {}; + } + function normalizeOrigin(proto2, host, port2) { + const hostHasPort = host.includes(":"); + const portIsStandard = proto2 === "http" && (port2 === 80 || port2 === "80") || proto2 === "https" && (port2 === 443 || port2 === "443"); + const portStr = hostHasPort || portIsStandard ? "" : `:${port2}`; + return `${proto2}://${host}${portStr}`; + } + function stringifyRequest(options2, body2) { + const { method = "GET", path: path30 = "", port: port2 } = options2; + const origin = normalizeOrigin(options2.proto, options2.hostname, port2); + const log2 = { + method, + url: `${origin}${path30}`, + headers: options2.headers + }; + if (body2) { + log2.body = body2; + } + return JSON.stringify(log2, null, 2); + } + function isContentEncoded(headers) { + const contentEncoding2 = headers["content-encoding"]; + return typeof contentEncoding2 === "string" && contentEncoding2 !== ""; + } + function contentEncoding(headers, encoder) { + const contentEncoding2 = headers["content-encoding"]; + return contentEncoding2 !== void 0 && contentEncoding2.toString() === encoder; + } + function isJSONContent(headers) { + const contentType = String(headers["content-type"] || "").toLowerCase(); + return contentType.startsWith("application/json"); + } + function headersFieldNamesToLowerCase(headers) { + if (!isPlainObject2(headers)) { + throw Error("Headers must be provided as an object"); + } + const lowerCaseHeaders = {}; + Object.entries(headers).forEach(([fieldName, fieldValue]) => { + const key = fieldName.toLowerCase(); + if (lowerCaseHeaders[key] !== void 0) { + throw Error( + `Failed to convert header keys to lower case due to field name conflict: ${key}` + ); + } + lowerCaseHeaders[key] = fieldValue; + }); + return lowerCaseHeaders; + } + var headersFieldsArrayToLowerCase = (headers) => [ + ...new Set(headers.map((fieldName) => fieldName.toLowerCase())) + ]; + function headersInputToRawArray(headers) { + if (headers === void 0) { + return []; + } + if (Array.isArray(headers)) { + if (headers.length % 2) { + throw new Error( + `Raw headers must be provided as an array with an even number of items. [fieldName, value, ...]` + ); + } + return [...headers]; + } + if (util2.types.isMap(headers)) { + return [].concat(...Array.from(headers, ([k2, v]) => [k2.toString(), v])); + } + if (isPlainObject2(headers)) { + return [].concat(...Object.entries(headers)); + } + throw new Error( + `Headers must be provided as an array of raw values, a Map, or a plain Object. ${headers}` + ); + } + function headersArrayToObject(rawHeaders) { + if (!Array.isArray(rawHeaders)) { + throw Error("Expected a header array"); + } + const accumulator = {}; + forEachHeader(rawHeaders, (value, fieldName) => { + addHeaderLine(accumulator, fieldName, value); + }); + return accumulator; + } + var noDuplicatesHeaders = /* @__PURE__ */ new Set([ + "age", + "authorization", + "content-length", + "content-type", + "etag", + "expires", + "from", + "host", + "if-modified-since", + "if-unmodified-since", + "last-modified", + "location", + "max-forwards", + "proxy-authorization", + "referer", + "retry-after", + "user-agent" + ]); + function addHeaderLine(headers, name, value) { + let values; + if (typeof value === "function") { + values = [value.name]; + } else if (Array.isArray(value)) { + values = value.map(String); + } else { + values = [String(value)]; + } + const key = name.toLowerCase(); + if (key === "set-cookie") { + if (headers["set-cookie"] === void 0) { + headers["set-cookie"] = values; + } else { + headers["set-cookie"].push(...values); + } + } else if (noDuplicatesHeaders.has(key)) { + if (headers[key] === void 0) { + headers[key] = values[0]; + } + } else { + if (headers[key] !== void 0) { + values = [headers[key], ...values]; + } + const separator = key === "cookie" ? "; " : ", "; + headers[key] = values.join(separator); + } + } + function deleteHeadersField(headers, fieldNameToDelete) { + if (!isPlainObject2(headers)) { + throw Error("headers must be an object"); + } + if (typeof fieldNameToDelete !== "string") { + throw Error("field name must be a string"); + } + const lowerCaseFieldNameToDelete = fieldNameToDelete.toLowerCase(); + Object.keys(headers).filter((fieldName) => fieldName.toLowerCase() === lowerCaseFieldNameToDelete).forEach((fieldName) => delete headers[fieldName]); + } + function forEachHeader(rawHeaders, callback) { + for (let i2 = 0; i2 < rawHeaders.length; i2 += 2) { + callback(rawHeaders[i2 + 1], rawHeaders[i2], i2); + } + } + function percentDecode(str) { + try { + return decodeURIComponent(str.replace(/\+/g, " ")); + } catch (e) { + return str; + } + } + function percentEncode(str) { + return encodeURIComponent(str).replace(/[!'()*]/g, function(c) { + return `%${c.charCodeAt(0).toString(16).toUpperCase()}`; + }); + } + function matchStringOrRegexp(target, pattern) { + const targetStr = target === void 0 || target === null ? "" : String(target); + if (pattern instanceof RegExp) { + pattern.lastIndex = 0; + return pattern.test(targetStr); + } + return targetStr === String(pattern); + } + function formatQueryValue(key, value, stringFormattingFn) { + switch (true) { + case typeof value === "number": + case typeof value === "boolean": + value = value.toString(); + break; + case value === null: + case value === void 0: + value = ""; + break; + case typeof value === "string": + if (stringFormattingFn) { + value = stringFormattingFn(value); + } + break; + case value instanceof RegExp: + break; + case Array.isArray(value): { + value = value.map(function(val, idx) { + return formatQueryValue(idx, val, stringFormattingFn)[1]; + }); + break; + } + case typeof value === "object": { + value = Object.entries(value).reduce(function(acc, [subKey, subVal]) { + const subPair = formatQueryValue(subKey, subVal, stringFormattingFn); + acc[subPair[0]] = subPair[1]; + return acc; + }, {}); + break; + } + } + if (stringFormattingFn) + key = stringFormattingFn(key); + return [key, value]; + } + function isStream3(obj2) { + return obj2 && typeof obj2 !== "string" && !Buffer.isBuffer(obj2) && typeof obj2.setEncoding === "function"; + } + function normalizeClientRequestArgs(input, options2, cb) { + if (typeof input === "string") { + input = urlToOptions(new url__default.URL(input)); + } else if (input instanceof url__default.URL) { + input = urlToOptions(input); + } else { + cb = options2; + options2 = input; + input = null; + } + if (typeof options2 === "function") { + cb = options2; + options2 = input || {}; + } else { + options2 = Object.assign(input || {}, options2); + } + return { options: options2, callback: cb }; + } + function urlToOptions(url3) { + const options2 = { + protocol: url3.protocol, + hostname: typeof url3.hostname === "string" && url3.hostname.startsWith("[") ? url3.hostname.slice(1, -1) : url3.hostname, + hash: url3.hash, + search: url3.search, + pathname: url3.pathname, + path: `${url3.pathname}${url3.search || ""}`, + href: url3.href + }; + if (url3.port !== "") { + options2.port = Number(url3.port); + } + if (url3.username || url3.password) { + options2.auth = `${url3.username}:${url3.password}`; + } + return options2; + } + var dataEqual = (expected, actual) => { + if (isPlainObject2(expected)) { + expected = expand2(expected); + } + if (isPlainObject2(actual)) { + actual = expand2(actual); + } + return deepEqual(expected, actual); + }; + var expand2 = (input) => Object.entries(input).reduce((acc, [k2, v]) => lodash_set(acc, k2, v), {}); + function deepEqual(expected, actual) { + debug("deepEqual comparing", typeof expected, expected, typeof actual, actual); + if (expected instanceof RegExp) { + return expected.test(actual); + } + if (Array.isArray(expected) && Array.isArray(actual)) { + if (expected.length !== actual.length) { + return false; + } + return expected.every((expVal, idx) => deepEqual(expVal, actual[idx])); + } + if (isPlainObject2(expected) && isPlainObject2(actual)) { + const allKeys = Array.from( + new Set(Object.keys(expected).concat(Object.keys(actual))) + ); + return allKeys.every((key) => deepEqual(expected[key], actual[key])); + } + return expected === actual; + } + function isPlainObject2(value) { + const isObjectLike2 = typeof value === "object" && value !== null; + const tag = Object.prototype.toString.call(value); + if (!isObjectLike2 || tag !== "[object Object]") { + return false; + } + if (Object.getPrototypeOf(value) === null) { + return true; + } + let proto2 = value; + while (Object.getPrototypeOf(proto2) !== null) { + proto2 = Object.getPrototypeOf(proto2); + } + return Object.getPrototypeOf(value) === proto2; + } + function mapValue(object, iteratee) { + object = Object(object); + const result = {}; + Object.keys(object).forEach((key) => { + result[key] = iteratee(object[key], key, object); + }); + return result; + } + var timeouts = []; + var intervals = []; + var immediates = []; + var wrapTimer = (timer, ids) => (...args3) => { + const id2 = timer(...args3); + ids.push(id2); + return id2; + }; + var setTimeout$1 = wrapTimer(timers.setTimeout, timeouts); + var setInterval2 = wrapTimer(timers.setInterval, intervals); + var setImmediate2 = wrapTimer(timers.setImmediate, immediates); + function clearTimer(clear, ids) { + while (ids.length) { + clear(ids.shift()); + } + } + function removeAllTimers() { + clearTimer(clearTimeout, timeouts); + clearTimer(clearInterval, intervals); + clearTimer(clearImmediate, immediates); + } + function isRequestDestroyed(req) { + return !!(req.destroyed === true || req.aborted || req.socket && req.socket.destroyed); + } + var common$1 = { + contentEncoding, + dataEqual, + deleteHeadersField, + forEachHeader, + formatQueryValue, + headersArrayToObject, + headersFieldNamesToLowerCase, + headersFieldsArrayToLowerCase, + headersInputToRawArray, + isContentEncoded, + isJSONContent, + isPlainObject: isPlainObject2, + isRequestDestroyed, + isStream: isStream3, + isUtf8Representable, + mapValue, + matchStringOrRegexp, + normalizeClientRequestArgs, + normalizeOrigin, + normalizeRequestOptions, + overrideRequests, + percentDecode, + percentEncode, + removeAllTimers, + restoreOverriddenRequests, + setImmediate: setImmediate2, + setInterval: setInterval2, + setTimeout: setTimeout$1, + stringifyRequest + }; + var common_10 = common$1.isContentEncoded; + var common_15 = common$1.isUtf8Representable; + var common_18 = common$1.normalizeClientRequestArgs; + function getUrlFromOptions(options2 = {}) { + if (options2.href) { + return options2.href; + } + const protocol2 = options2.protocol || `${options2.proto}:` || "http:"; + const host = options2.hostname || options2.host || "localhost"; + const { + path: path30, + port: port2 + } = options2; + const url3 = new utils.URL(); + url3.set("protocol", protocol2); + url3.set("host", host); + url3.set("pathname", path30); + if (port2 && !host.includes(":") && (port2 !== 80 || protocol2 !== "http:") && (port2 !== 443 || protocol2 !== "https:")) { + url3.set("port", port2); + } + return url3.href; + } + function mergeChunks(chunks) { + if (!chunks || chunks.length === 0) { + return Buffer.alloc(0); + } + if (!Buffer.isBuffer(chunks[0])) { + return chunks.join(""); + } + return Buffer.concat(chunks); + } + function urlToOptions$1(url3) { + const options2 = { + protocol: url3.protocol, + hostname: typeof url3.hostname === "string" && url3.hostname.startsWith("[") ? url3.hostname.slice(1, -1) : url3.hostname, + hash: url3.hash, + search: url3.search, + pathname: url3.pathname, + path: `${url3.pathname}${url3.search || ""}`, + href: url3.href + }; + if (url3.port !== "") { + options2.port = Number(url3.port); + } + if (url3.username || url3.password) { + options2.auth = `${url3.username}:${url3.password}`; + } + return options2; + } + function ownKeys(object, enumerableOnly) { + var keys2 = keys$1(object); + if (getOwnPropertySymbols$1) { + var symbols = getOwnPropertySymbols$1(object); + if (enumerableOnly) { + symbols = symbols.filter(function(sym) { + return getOwnPropertyDescriptor$1(object, sym).enumerable; + }); + } + keys2.push.apply(keys2, symbols); + } + return keys2; + } + function _objectSpread(target) { + for (var i2 = 1; i2 < arguments.length; i2++) { + var source2 = arguments[i2] != null ? arguments[i2] : {}; + if (i2 % 2) { + ownKeys(Object(source2), true).forEach(function(key) { + _defineProperty(target, key, source2[key]); + }); + } else if (getOwnPropertyDescriptors$1) { + defineProperties$1(target, getOwnPropertyDescriptors$1(source2)); + } else { + ownKeys(Object(source2)).forEach(function(key) { + defineProperty$2(target, key, getOwnPropertyDescriptor$1(source2, key)); + }); + } + } + return target; + } + var IS_STUBBED = symbol$1(); + var ABORT_HANDLER = symbol$1(); + var REQUEST_ARGUMENTS = new weakMap$1(); + nock.restore(); + var HttpAdapter = class extends Adapter { + static get id() { + return "node-http"; + } + onConnect() { + this.assert("Running concurrent node-http adapters is unsupported, stop any running Polly instances.", !http4.ClientRequest[IS_STUBBED]); + this.assert("Running nock concurrently with the node-http adapter is unsupported. Run nock.restore() before connecting to this adapter.", !nock.isActive()); + this.NativeClientRequest = http4.ClientRequest; + this.setupNock(); + this.patchOverriddenMethods(); + } + onDisconnect() { + this.unpatchOverriddenMethods(); + nock.cleanAll(); + nock.restore(); + this.NativeClientRequest = null; + } + setupNock() { + const adapter = this; + nock.cleanAll(); + const interceptor = nock(/.*/).persist(); + utils.HTTP_METHODS.forEach((m2) => { + interceptor.intercept(/.*/, m2).reply(function(_, _body, respond) { + const { + req, + method + } = this; + const { + headers + } = req; + const parsedArguments = common_18(...REQUEST_ARGUMENTS.get(req)); + const url3 = getUrlFromOptions(parsedArguments.options); + const requestBodyBuffer = Buffer.concat(req.requestBodyBuffers); + const body2 = common_15(requestBodyBuffer) ? requestBodyBuffer.toString("utf8") : requestBodyBuffer; + adapter.handleRequest({ + url: url3, + method, + headers, + body: body2, + requestArguments: { + req, + body: body2, + respond, + parsedArguments + } + }); + }); + }); + nock.activate(); + } + patchOverriddenMethods() { + const modules = { + http: http4, + https: https4 + }; + const { + ClientRequest + } = http4; + http4.ClientRequest = function _ClientRequest() { + const req = new ClientRequest(...arguments); + REQUEST_ARGUMENTS.set(req, [...arguments]); + return req; + }; + http4.ClientRequest[IS_STUBBED] = true; + keys$1(modules).forEach((moduleName2) => { + const module3 = modules[moduleName2]; + const { + request, + get, + globalAgent + } = module3; + this[moduleName2] = { + get, + request + }; + function parseArgs() { + const args3 = common_18(...arguments); + if (moduleName2 === "https") { + args3.options = _objectSpread(_objectSpread({}, { + port: 443, + protocol: "https:", + _defaultAgent: globalAgent + }), args3.options); + } else { + args3.options = _objectSpread(_objectSpread({}, { + port: 80, + protocol: "http:" + }), args3.options); + } + return args3; + } + module3.request = function _request() { + const { + options: options2, + callback + } = parseArgs(...arguments); + return request(options2, callback); + }; + module3.get = function _get() { + const { + options: options2, + callback + } = parseArgs(...arguments); + return get(options2, callback); + }; + }); + } + unpatchOverriddenMethods() { + const modules = { + http: http4, + https: https4 + }; + keys$1(modules).forEach((moduleName2) => { + const module3 = modules[moduleName2]; + module3.request = this[moduleName2].request; + module3.get = this[moduleName2].get; + this[moduleName2] = void 0; + }); + } + onRequest(pollyRequest) { + const { + req + } = pollyRequest.requestArguments; + if (req.aborted) { + pollyRequest.abort(); + } else { + pollyRequest[ABORT_HANDLER] = () => { + if (!pollyRequest.aborted && (req.aborted || req.destroyed)) { + pollyRequest.abort(); + } + }; + req.once("abort", pollyRequest[ABORT_HANDLER]); + req.once("close", pollyRequest[ABORT_HANDLER]); + } + } + async onFetchResponse(pollyRequest) { + const { + parsedArguments + } = pollyRequest.requestArguments; + const { + method, + headers, + body: body2 + } = pollyRequest; + const { + options: options2 + } = parsedArguments; + const request = new this.NativeClientRequest(_objectSpread(_objectSpread({}, options2), {}, { + method, + headers: _objectSpread({}, headers) + }, urlToOptions$1(new url2.URL(pollyRequest.url)))); + const chunks = this.getChunksFromBody(body2, headers); + const responsePromise = new promise$1((resolve8, reject) => { + request.once("response", resolve8); + request.once("error", reject); + request.once("timeout", reject); + }); + chunks.forEach((chunk) => request.write(chunk)); + request.end(); + const response = await responsePromise; + const responseBody = await new promise$1((resolve8, reject) => { + const chunks2 = []; + response.on("data", (chunk) => chunks2.push(chunk)); + response.once("end", () => resolve8(this.getBodyFromChunks(chunks2, response.headers))); + response.once("error", reject); + }); + return { + headers: response.headers, + statusCode: response.statusCode, + body: responseBody.body, + encoding: responseBody.encoding + }; + } + async onRespond(pollyRequest, error) { + const { + req, + respond + } = pollyRequest.requestArguments; + const { + statusCode, + body: body2, + headers, + encoding + } = pollyRequest.response; + if (pollyRequest[ABORT_HANDLER]) { + req.off("abort", pollyRequest[ABORT_HANDLER]); + req.off("close", pollyRequest[ABORT_HANDLER]); + } + if (pollyRequest.aborted) { + respond(null, [0, void 0, {}]); + return; + } + if (error) { + respond(error); + return; + } + const chunks = this.getChunksFromBody(body2, headers, encoding); + const stream$1 = new stream5.Readable(); + chunks.forEach((chunk) => stream$1.push(chunk)); + stream$1.push(null); + const requestFinishedPromise = new promise$1((resolve8) => { + if (req.aborted) { + resolve8(); + } else { + req.once("response", resolve8); + req.once("abort", resolve8); + req.once("error", resolve8); + } + }); + respond(null, [statusCode, stream$1, headers]); + await requestFinishedPromise; + } + getBodyFromChunks(chunks, headers) { + if (common_10(headers)) { + const encodedChunks = chunks.map((chunk) => { + if (!Buffer.isBuffer(chunk)) { + this.assert("content-encoded responses must all be binary buffers", typeof chunk === "string"); + chunk = Buffer.from(chunk); + } + return chunk.toString("base64"); + }); + return { + encoding: "base64", + body: stringify$1(encodedChunks) + }; + } + const buffer2 = mergeChunks(chunks); + const isBinaryBuffer = !common_15(buffer2); + return { + encoding: isBinaryBuffer ? "base64" : void 0, + body: buffer2.toString(isBinaryBuffer ? "base64" : "utf8") + }; + } + getChunksFromBody(body2, headers, encoding) { + if (!body2) { + return []; + } + if (Buffer.isBuffer(body2)) { + return [body2]; + } + if (common_10(headers)) { + const encodedChunks = JSON.parse(body2); + return encodedChunks.map((chunk) => Buffer.from(chunk, encoding)); + } + return [Buffer.from(body2, encoding ? encoding : "utf8")]; + } + }; + module2.exports = HttpAdapter; + } +}); + +// ../node_modules/.pnpm/loglevel@1.8.1/node_modules/loglevel/lib/loglevel.js +var require_loglevel = __commonJS({ + "../node_modules/.pnpm/loglevel@1.8.1/node_modules/loglevel/lib/loglevel.js"(exports2, module2) { + (function(root, definition) { + "use strict"; + if (typeof define === "function" && define.amd) { + define(definition); + } else if (typeof module2 === "object" && module2.exports) { + module2.exports = definition(); + } else { + root.log = definition(); + } + })(exports2, function() { + "use strict"; + var noop2 = function() { + }; + var undefinedType = "undefined"; + var isIE = typeof window !== undefinedType && typeof window.navigator !== undefinedType && /Trident\/|MSIE /.test(window.navigator.userAgent); + var logMethods = [ + "trace", + "debug", + "info", + "warn", + "error" + ]; + function bindMethod(obj2, methodName) { + var method = obj2[methodName]; + if (typeof method.bind === "function") { + return method.bind(obj2); + } else { + try { + return Function.prototype.bind.call(method, obj2); + } catch (e) { + return function() { + return Function.prototype.apply.apply(method, [obj2, arguments]); + }; + } + } + } + function traceForIE() { + if (console.log) { + if (console.log.apply) { + console.log.apply(console, arguments); + } else { + Function.prototype.apply.apply(console.log, [console, arguments]); + } + } + if (console.trace) + console.trace(); + } + function realMethod(methodName) { + if (methodName === "debug") { + methodName = "log"; + } + if (typeof console === undefinedType) { + return false; + } else if (methodName === "trace" && isIE) { + return traceForIE; + } else if (console[methodName] !== void 0) { + return bindMethod(console, methodName); + } else if (console.log !== void 0) { + return bindMethod(console, "log"); + } else { + return noop2; + } + } + function replaceLoggingMethods(level, loggerName) { + for (var i = 0; i < logMethods.length; i++) { + var methodName = logMethods[i]; + this[methodName] = i < level ? noop2 : this.methodFactory(methodName, level, loggerName); + } + this.log = this.debug; + } + function enableLoggingWhenConsoleArrives(methodName, level, loggerName) { + return function() { + if (typeof console !== undefinedType) { + replaceLoggingMethods.call(this, level, loggerName); + this[methodName].apply(this, arguments); + } + }; + } + function defaultMethodFactory(methodName, level, loggerName) { + return realMethod(methodName) || enableLoggingWhenConsoleArrives.apply(this, arguments); + } + function Logger(name, defaultLevel, factory) { + var self2 = this; + var currentLevel; + defaultLevel = defaultLevel == null ? "WARN" : defaultLevel; + var storageKey = "loglevel"; + if (typeof name === "string") { + storageKey += ":" + name; + } else if (typeof name === "symbol") { + storageKey = void 0; + } + function persistLevelIfPossible(levelNum) { + var levelName = (logMethods[levelNum] || "silent").toUpperCase(); + if (typeof window === undefinedType || !storageKey) + return; + try { + window.localStorage[storageKey] = levelName; + return; + } catch (ignore) { + } + try { + window.document.cookie = encodeURIComponent(storageKey) + "=" + levelName + ";"; + } catch (ignore) { + } + } + function getPersistedLevel() { + var storedLevel; + if (typeof window === undefinedType || !storageKey) + return; + try { + storedLevel = window.localStorage[storageKey]; + } catch (ignore) { + } + if (typeof storedLevel === undefinedType) { + try { + var cookie = window.document.cookie; + var location = cookie.indexOf( + encodeURIComponent(storageKey) + "=" + ); + if (location !== -1) { + storedLevel = /^([^;]+)/.exec(cookie.slice(location))[1]; + } + } catch (ignore) { + } + } + if (self2.levels[storedLevel] === void 0) { + storedLevel = void 0; + } + return storedLevel; + } + function clearPersistedLevel() { + if (typeof window === undefinedType || !storageKey) + return; + try { + window.localStorage.removeItem(storageKey); + return; + } catch (ignore) { + } + try { + window.document.cookie = encodeURIComponent(storageKey) + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC"; + } catch (ignore) { + } + } + self2.name = name; + self2.levels = { + "TRACE": 0, + "DEBUG": 1, + "INFO": 2, + "WARN": 3, + "ERROR": 4, + "SILENT": 5 + }; + self2.methodFactory = factory || defaultMethodFactory; + self2.getLevel = function() { + return currentLevel; + }; + self2.setLevel = function(level, persist) { + if (typeof level === "string" && self2.levels[level.toUpperCase()] !== void 0) { + level = self2.levels[level.toUpperCase()]; + } + if (typeof level === "number" && level >= 0 && level <= self2.levels.SILENT) { + currentLevel = level; + if (persist !== false) { + persistLevelIfPossible(level); + } + replaceLoggingMethods.call(self2, level, name); + if (typeof console === undefinedType && level < self2.levels.SILENT) { + return "No console available for logging"; + } + } else { + throw "log.setLevel() called with invalid level: " + level; + } + }; + self2.setDefaultLevel = function(level) { + defaultLevel = level; + if (!getPersistedLevel()) { + self2.setLevel(level, false); + } + }; + self2.resetLevel = function() { + self2.setLevel(defaultLevel, false); + clearPersistedLevel(); + }; + self2.enableAll = function(persist) { + self2.setLevel(self2.levels.TRACE, persist); + }; + self2.disableAll = function(persist) { + self2.setLevel(self2.levels.SILENT, persist); + }; + var initialLevel = getPersistedLevel(); + if (initialLevel == null) { + initialLevel = defaultLevel; + } + self2.setLevel(initialLevel, false); + } + var defaultLogger = new Logger(); + var _loggersByName = {}; + defaultLogger.getLogger = function getLogger(name) { + if (typeof name !== "symbol" && typeof name !== "string" || name === "") { + throw new TypeError("You must supply a name when creating a logger."); + } + var logger2 = _loggersByName[name]; + if (!logger2) { + logger2 = _loggersByName[name] = new Logger( + name, + defaultLogger.getLevel(), + defaultLogger.methodFactory + ); + } + return logger2; + }; + var _log = typeof window !== undefinedType ? window.log : void 0; + defaultLogger.noConflict = function() { + if (typeof window !== undefinedType && window.log === defaultLogger) { + window.log = _log; + } + return defaultLogger; + }; + defaultLogger.getLoggers = function getLoggers() { + return _loggersByName; + }; + defaultLogger["default"] = defaultLogger; + return defaultLogger; + }); + } +}); + +// ../node_modules/.pnpm/blueimp-md5@2.19.0/node_modules/blueimp-md5/js/md5.js +var require_md5 = __commonJS({ + "../node_modules/.pnpm/blueimp-md5@2.19.0/node_modules/blueimp-md5/js/md5.js"(exports2, module2) { + (function($) { + "use strict"; + function safeAdd(x, y) { + var lsw = (x & 65535) + (y & 65535); + var msw = (x >> 16) + (y >> 16) + (lsw >> 16); + return msw << 16 | lsw & 65535; + } + function bitRotateLeft(num, cnt) { + return num << cnt | num >>> 32 - cnt; + } + function md5cmn(q, a, b, x, s, t) { + return safeAdd(bitRotateLeft(safeAdd(safeAdd(a, q), safeAdd(x, t)), s), b); + } + function md5ff(a, b, c, d, x, s, t) { + return md5cmn(b & c | ~b & d, a, b, x, s, t); + } + function md5gg(a, b, c, d, x, s, t) { + return md5cmn(b & d | c & ~d, a, b, x, s, t); + } + function md5hh(a, b, c, d, x, s, t) { + return md5cmn(b ^ c ^ d, a, b, x, s, t); + } + function md5ii(a, b, c, d, x, s, t) { + return md5cmn(c ^ (b | ~d), a, b, x, s, t); + } + function binlMD5(x, len) { + x[len >> 5] |= 128 << len % 32; + x[(len + 64 >>> 9 << 4) + 14] = len; + var i; + var olda; + var oldb; + var oldc; + var oldd; + var a = 1732584193; + var b = -271733879; + var c = -1732584194; + var d = 271733878; + for (i = 0; i < x.length; i += 16) { + olda = a; + oldb = b; + oldc = c; + oldd = d; + a = md5ff(a, b, c, d, x[i], 7, -680876936); + d = md5ff(d, a, b, c, x[i + 1], 12, -389564586); + c = md5ff(c, d, a, b, x[i + 2], 17, 606105819); + b = md5ff(b, c, d, a, x[i + 3], 22, -1044525330); + a = md5ff(a, b, c, d, x[i + 4], 7, -176418897); + d = md5ff(d, a, b, c, x[i + 5], 12, 1200080426); + c = md5ff(c, d, a, b, x[i + 6], 17, -1473231341); + b = md5ff(b, c, d, a, x[i + 7], 22, -45705983); + a = md5ff(a, b, c, d, x[i + 8], 7, 1770035416); + d = md5ff(d, a, b, c, x[i + 9], 12, -1958414417); + c = md5ff(c, d, a, b, x[i + 10], 17, -42063); + b = md5ff(b, c, d, a, x[i + 11], 22, -1990404162); + a = md5ff(a, b, c, d, x[i + 12], 7, 1804603682); + d = md5ff(d, a, b, c, x[i + 13], 12, -40341101); + c = md5ff(c, d, a, b, x[i + 14], 17, -1502002290); + b = md5ff(b, c, d, a, x[i + 15], 22, 1236535329); + a = md5gg(a, b, c, d, x[i + 1], 5, -165796510); + d = md5gg(d, a, b, c, x[i + 6], 9, -1069501632); + c = md5gg(c, d, a, b, x[i + 11], 14, 643717713); + b = md5gg(b, c, d, a, x[i], 20, -373897302); + a = md5gg(a, b, c, d, x[i + 5], 5, -701558691); + d = md5gg(d, a, b, c, x[i + 10], 9, 38016083); + c = md5gg(c, d, a, b, x[i + 15], 14, -660478335); + b = md5gg(b, c, d, a, x[i + 4], 20, -405537848); + a = md5gg(a, b, c, d, x[i + 9], 5, 568446438); + d = md5gg(d, a, b, c, x[i + 14], 9, -1019803690); + c = md5gg(c, d, a, b, x[i + 3], 14, -187363961); + b = md5gg(b, c, d, a, x[i + 8], 20, 1163531501); + a = md5gg(a, b, c, d, x[i + 13], 5, -1444681467); + d = md5gg(d, a, b, c, x[i + 2], 9, -51403784); + c = md5gg(c, d, a, b, x[i + 7], 14, 1735328473); + b = md5gg(b, c, d, a, x[i + 12], 20, -1926607734); + a = md5hh(a, b, c, d, x[i + 5], 4, -378558); + d = md5hh(d, a, b, c, x[i + 8], 11, -2022574463); + c = md5hh(c, d, a, b, x[i + 11], 16, 1839030562); + b = md5hh(b, c, d, a, x[i + 14], 23, -35309556); + a = md5hh(a, b, c, d, x[i + 1], 4, -1530992060); + d = md5hh(d, a, b, c, x[i + 4], 11, 1272893353); + c = md5hh(c, d, a, b, x[i + 7], 16, -155497632); + b = md5hh(b, c, d, a, x[i + 10], 23, -1094730640); + a = md5hh(a, b, c, d, x[i + 13], 4, 681279174); + d = md5hh(d, a, b, c, x[i], 11, -358537222); + c = md5hh(c, d, a, b, x[i + 3], 16, -722521979); + b = md5hh(b, c, d, a, x[i + 6], 23, 76029189); + a = md5hh(a, b, c, d, x[i + 9], 4, -640364487); + d = md5hh(d, a, b, c, x[i + 12], 11, -421815835); + c = md5hh(c, d, a, b, x[i + 15], 16, 530742520); + b = md5hh(b, c, d, a, x[i + 2], 23, -995338651); + a = md5ii(a, b, c, d, x[i], 6, -198630844); + d = md5ii(d, a, b, c, x[i + 7], 10, 1126891415); + c = md5ii(c, d, a, b, x[i + 14], 15, -1416354905); + b = md5ii(b, c, d, a, x[i + 5], 21, -57434055); + a = md5ii(a, b, c, d, x[i + 12], 6, 1700485571); + d = md5ii(d, a, b, c, x[i + 3], 10, -1894986606); + c = md5ii(c, d, a, b, x[i + 10], 15, -1051523); + b = md5ii(b, c, d, a, x[i + 1], 21, -2054922799); + a = md5ii(a, b, c, d, x[i + 8], 6, 1873313359); + d = md5ii(d, a, b, c, x[i + 15], 10, -30611744); + c = md5ii(c, d, a, b, x[i + 6], 15, -1560198380); + b = md5ii(b, c, d, a, x[i + 13], 21, 1309151649); + a = md5ii(a, b, c, d, x[i + 4], 6, -145523070); + d = md5ii(d, a, b, c, x[i + 11], 10, -1120210379); + c = md5ii(c, d, a, b, x[i + 2], 15, 718787259); + b = md5ii(b, c, d, a, x[i + 9], 21, -343485551); + a = safeAdd(a, olda); + b = safeAdd(b, oldb); + c = safeAdd(c, oldc); + d = safeAdd(d, oldd); + } + return [a, b, c, d]; + } + function binl2rstr(input) { + var i; + var output = ""; + var length32 = input.length * 32; + for (i = 0; i < length32; i += 8) { + output += String.fromCharCode(input[i >> 5] >>> i % 32 & 255); + } + return output; + } + function rstr2binl(input) { + var i; + var output = []; + output[(input.length >> 2) - 1] = void 0; + for (i = 0; i < output.length; i += 1) { + output[i] = 0; + } + var length8 = input.length * 8; + for (i = 0; i < length8; i += 8) { + output[i >> 5] |= (input.charCodeAt(i / 8) & 255) << i % 32; + } + return output; + } + function rstrMD5(s) { + return binl2rstr(binlMD5(rstr2binl(s), s.length * 8)); + } + function rstrHMACMD5(key, data) { + var i; + var bkey = rstr2binl(key); + var ipad = []; + var opad = []; + var hash; + ipad[15] = opad[15] = void 0; + if (bkey.length > 16) { + bkey = binlMD5(bkey, key.length * 8); + } + for (i = 0; i < 16; i += 1) { + ipad[i] = bkey[i] ^ 909522486; + opad[i] = bkey[i] ^ 1549556828; + } + hash = binlMD5(ipad.concat(rstr2binl(data)), 512 + data.length * 8); + return binl2rstr(binlMD5(opad.concat(hash), 512 + 128)); + } + function rstr2hex(input) { + var hexTab = "0123456789abcdef"; + var output = ""; + var x; + var i; + for (i = 0; i < input.length; i += 1) { + x = input.charCodeAt(i); + output += hexTab.charAt(x >>> 4 & 15) + hexTab.charAt(x & 15); + } + return output; + } + function str2rstrUTF8(input) { + return unescape(encodeURIComponent(input)); + } + function rawMD5(s) { + return rstrMD5(str2rstrUTF8(s)); + } + function hexMD5(s) { + return rstr2hex(rawMD5(s)); + } + function rawHMACMD5(k, d) { + return rstrHMACMD5(str2rstrUTF8(k), str2rstrUTF8(d)); + } + function hexHMACMD5(k, d) { + return rstr2hex(rawHMACMD5(k, d)); + } + function md5(string, key, raw) { + if (!key) { + if (!raw) { + return hexMD5(string); + } + return rawMD5(string); + } + if (!raw) { + return hexHMACMD5(key, string); + } + return rawHMACMD5(key, string); + } + if (typeof define === "function" && define.amd) { + define(function() { + return md5; + }); + } else if (typeof module2 === "object" && module2.exports) { + module2.exports = md5; + } else { + $.md5 = md5; + } + })(exports2); + } +}); + +// ../node_modules/.pnpm/fast-json-stable-stringify@2.1.0/node_modules/fast-json-stable-stringify/index.js +var require_fast_json_stable_stringify = __commonJS({ + "../node_modules/.pnpm/fast-json-stable-stringify@2.1.0/node_modules/fast-json-stable-stringify/index.js"(exports2, module2) { + "use strict"; + module2.exports = function(data, opts) { + if (!opts) + opts = {}; + if (typeof opts === "function") + opts = { cmp: opts }; + var cycles = typeof opts.cycles === "boolean" ? opts.cycles : false; + var cmp = opts.cmp && function(f) { + return function(node) { + return function(a, b) { + var aobj = { key: a, value: node[a] }; + var bobj = { key: b, value: node[b] }; + return f(aobj, bobj); + }; + }; + }(opts.cmp); + var seen = []; + return function stringify(node) { + if (node && node.toJSON && typeof node.toJSON === "function") { + node = node.toJSON(); + } + if (node === void 0) + return; + if (typeof node == "number") + return isFinite(node) ? "" + node : "null"; + if (typeof node !== "object") + return JSON.stringify(node); + var i, out2; + if (Array.isArray(node)) { + out2 = "["; + for (i = 0; i < node.length; i++) { + if (i) + out2 += ","; + out2 += stringify(node[i]) || "null"; + } + return out2 + "]"; + } + if (node === null) + return "null"; + if (seen.indexOf(node) !== -1) { + if (cycles) + return JSON.stringify("__cycle__"); + throw new TypeError("Converting circular structure to JSON"); + } + var seenIndex = seen.push(node) - 1; + var keys = Object.keys(node).sort(cmp && cmp(node)); + out2 = ""; + for (i = 0; i < keys.length; i++) { + var key = keys[i]; + var value = stringify(node[key]); + if (!value) + continue; + if (out2) + out2 += ","; + out2 += JSON.stringify(key) + ":" + value; + } + seen.splice(seenIndex, 1); + return "{" + out2 + "}"; + }(data); + }; + } +}); + +// ../node_modules/.pnpm/is-absolute-url@3.0.3/node_modules/is-absolute-url/index.js +var require_is_absolute_url = __commonJS({ + "../node_modules/.pnpm/is-absolute-url@3.0.3/node_modules/is-absolute-url/index.js"(exports2, module2) { + "use strict"; + module2.exports = (url2) => { + if (typeof url2 !== "string") { + throw new TypeError(`Expected a \`string\`, got \`${typeof url2}\``); + } + if (/^[a-zA-Z]:\\/.test(url2)) { + return false; + } + return /^[a-zA-Z][a-zA-Z\d+\-.]*:/.test(url2); + }; + } +}); + +// ../node_modules/.pnpm/@sindresorhus+fnv1a@2.0.1/node_modules/@sindresorhus/fnv1a/index.js +var require_fnv1a = __commonJS({ + "../node_modules/.pnpm/@sindresorhus+fnv1a@2.0.1/node_modules/@sindresorhus/fnv1a/index.js"(exports2, module2) { + "use strict"; + var FNV_PRIMES = { + 32: 16777619n, + 64: 1099511628211n, + 128: 309485009821345068724781371n, + 256: 374144419156711147060143317175368453031918731002211n, + 512: 35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852759n, + 1024: 5016456510113118655434598811035278955030765345404790744303017523831112055108147451509157692220295382716162651878526895249385292291816524375083746691371804094271873160484737966720260389217684476157468082573n + }; + var FNV_OFFSETS = { + 32: 2166136261n, + 64: 14695981039346656037n, + 128: 144066263297769815596495629667062367629n, + 256: 100029257958052580907070968620625704837092796014241193945225284501741471925557n, + 512: 9659303129496669498009435400716310466090418745672637896108374329434462657994582932197716438449813051892206539805784495328239340083876191928701583869517785n, + 1024: 14197795064947621068722070641403218320880622795441933960878474914617582723252296732303717722150864096521202355549365628174669108571814760471015076148029755969804077320157692458563003215304957150157403644460363550505412711285966361610267868082893823963790439336411086884584107735010676915n + }; + function fnv1a(string) { + let hash = Number(FNV_OFFSETS[32]); + let isUnicoded = false; + for (let i = 0; i < string.length; i++) { + let characterCode = string.charCodeAt(i); + if (characterCode > 127 && !isUnicoded) { + string = unescape(encodeURIComponent(string)); + characterCode = string.charCodeAt(i); + isUnicoded = true; + } + hash ^= characterCode; + hash += (hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24); + } + return hash >>> 0; + } + function bigInt(string, { size = 32 } = {}) { + if (!FNV_PRIMES[size]) { + throw new Error("The `size` option must be one of 32, 64, 128, 256, 512, or 1024"); + } + let hash = FNV_OFFSETS[size]; + const fnvPrime = FNV_PRIMES[size]; + let isUnicoded = false; + for (let i = 0; i < string.length; i++) { + let characterCode = string.charCodeAt(i); + if (characterCode > 127 && !isUnicoded) { + string = unescape(encodeURIComponent(string)); + characterCode = string.charCodeAt(i); + isUnicoded = true; + } + hash ^= BigInt(characterCode); + hash = BigInt.asUintN(size, hash * fnvPrime); + } + return hash; + } + module2.exports = fnv1a; + module2.exports.bigInt = bigInt; + } +}); + +// ../node_modules/.pnpm/slugify@1.6.6/node_modules/slugify/slugify.js +var require_slugify = __commonJS({ + "../node_modules/.pnpm/slugify@1.6.6/node_modules/slugify/slugify.js"(exports2, module2) { + (function(name, root, factory) { + if (typeof exports2 === "object") { + module2.exports = factory(); + module2.exports["default"] = factory(); + } else if (typeof define === "function" && define.amd) { + define(factory); + } else { + root[name] = factory(); + } + })("slugify", exports2, function() { + var charMap = JSON.parse(`{"$":"dollar","%":"percent","&":"and","<":"less",">":"greater","|":"or","\xA2":"cent","\xA3":"pound","\xA4":"currency","\xA5":"yen","\xA9":"(c)","\xAA":"a","\xAE":"(r)","\xBA":"o","\xC0":"A","\xC1":"A","\xC2":"A","\xC3":"A","\xC4":"A","\xC5":"A","\xC6":"AE","\xC7":"C","\xC8":"E","\xC9":"E","\xCA":"E","\xCB":"E","\xCC":"I","\xCD":"I","\xCE":"I","\xCF":"I","\xD0":"D","\xD1":"N","\xD2":"O","\xD3":"O","\xD4":"O","\xD5":"O","\xD6":"O","\xD8":"O","\xD9":"U","\xDA":"U","\xDB":"U","\xDC":"U","\xDD":"Y","\xDE":"TH","\xDF":"ss","\xE0":"a","\xE1":"a","\xE2":"a","\xE3":"a","\xE4":"a","\xE5":"a","\xE6":"ae","\xE7":"c","\xE8":"e","\xE9":"e","\xEA":"e","\xEB":"e","\xEC":"i","\xED":"i","\xEE":"i","\xEF":"i","\xF0":"d","\xF1":"n","\xF2":"o","\xF3":"o","\xF4":"o","\xF5":"o","\xF6":"o","\xF8":"o","\xF9":"u","\xFA":"u","\xFB":"u","\xFC":"u","\xFD":"y","\xFE":"th","\xFF":"y","\u0100":"A","\u0101":"a","\u0102":"A","\u0103":"a","\u0104":"A","\u0105":"a","\u0106":"C","\u0107":"c","\u010C":"C","\u010D":"c","\u010E":"D","\u010F":"d","\u0110":"DJ","\u0111":"dj","\u0112":"E","\u0113":"e","\u0116":"E","\u0117":"e","\u0118":"e","\u0119":"e","\u011A":"E","\u011B":"e","\u011E":"G","\u011F":"g","\u0122":"G","\u0123":"g","\u0128":"I","\u0129":"i","\u012A":"i","\u012B":"i","\u012E":"I","\u012F":"i","\u0130":"I","\u0131":"i","\u0136":"k","\u0137":"k","\u013B":"L","\u013C":"l","\u013D":"L","\u013E":"l","\u0141":"L","\u0142":"l","\u0143":"N","\u0144":"n","\u0145":"N","\u0146":"n","\u0147":"N","\u0148":"n","\u014C":"O","\u014D":"o","\u0150":"O","\u0151":"o","\u0152":"OE","\u0153":"oe","\u0154":"R","\u0155":"r","\u0158":"R","\u0159":"r","\u015A":"S","\u015B":"s","\u015E":"S","\u015F":"s","\u0160":"S","\u0161":"s","\u0162":"T","\u0163":"t","\u0164":"T","\u0165":"t","\u0168":"U","\u0169":"u","\u016A":"u","\u016B":"u","\u016E":"U","\u016F":"u","\u0170":"U","\u0171":"u","\u0172":"U","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017A":"z","\u017B":"Z","\u017C":"z","\u017D":"Z","\u017E":"z","\u018F":"E","\u0192":"f","\u01A0":"O","\u01A1":"o","\u01AF":"U","\u01B0":"u","\u01C8":"LJ","\u01C9":"lj","\u01CB":"NJ","\u01CC":"nj","\u0218":"S","\u0219":"s","\u021A":"T","\u021B":"t","\u0259":"e","\u02DA":"o","\u0386":"A","\u0388":"E","\u0389":"H","\u038A":"I","\u038C":"O","\u038E":"Y","\u038F":"W","\u0390":"i","\u0391":"A","\u0392":"B","\u0393":"G","\u0394":"D","\u0395":"E","\u0396":"Z","\u0397":"H","\u0398":"8","\u0399":"I","\u039A":"K","\u039B":"L","\u039C":"M","\u039D":"N","\u039E":"3","\u039F":"O","\u03A0":"P","\u03A1":"R","\u03A3":"S","\u03A4":"T","\u03A5":"Y","\u03A6":"F","\u03A7":"X","\u03A8":"PS","\u03A9":"W","\u03AA":"I","\u03AB":"Y","\u03AC":"a","\u03AD":"e","\u03AE":"h","\u03AF":"i","\u03B0":"y","\u03B1":"a","\u03B2":"b","\u03B3":"g","\u03B4":"d","\u03B5":"e","\u03B6":"z","\u03B7":"h","\u03B8":"8","\u03B9":"i","\u03BA":"k","\u03BB":"l","\u03BC":"m","\u03BD":"n","\u03BE":"3","\u03BF":"o","\u03C0":"p","\u03C1":"r","\u03C2":"s","\u03C3":"s","\u03C4":"t","\u03C5":"y","\u03C6":"f","\u03C7":"x","\u03C8":"ps","\u03C9":"w","\u03CA":"i","\u03CB":"y","\u03CC":"o","\u03CD":"y","\u03CE":"w","\u0401":"Yo","\u0402":"DJ","\u0404":"Ye","\u0406":"I","\u0407":"Yi","\u0408":"J","\u0409":"LJ","\u040A":"NJ","\u040B":"C","\u040F":"DZ","\u0410":"A","\u0411":"B","\u0412":"V","\u0413":"G","\u0414":"D","\u0415":"E","\u0416":"Zh","\u0417":"Z","\u0418":"I","\u0419":"J","\u041A":"K","\u041B":"L","\u041C":"M","\u041D":"N","\u041E":"O","\u041F":"P","\u0420":"R","\u0421":"S","\u0422":"T","\u0423":"U","\u0424":"F","\u0425":"H","\u0426":"C","\u0427":"Ch","\u0428":"Sh","\u0429":"Sh","\u042A":"U","\u042B":"Y","\u042C":"","\u042D":"E","\u042E":"Yu","\u042F":"Ya","\u0430":"a","\u0431":"b","\u0432":"v","\u0433":"g","\u0434":"d","\u0435":"e","\u0436":"zh","\u0437":"z","\u0438":"i","\u0439":"j","\u043A":"k","\u043B":"l","\u043C":"m","\u043D":"n","\u043E":"o","\u043F":"p","\u0440":"r","\u0441":"s","\u0442":"t","\u0443":"u","\u0444":"f","\u0445":"h","\u0446":"c","\u0447":"ch","\u0448":"sh","\u0449":"sh","\u044A":"u","\u044B":"y","\u044C":"","\u044D":"e","\u044E":"yu","\u044F":"ya","\u0451":"yo","\u0452":"dj","\u0454":"ye","\u0456":"i","\u0457":"yi","\u0458":"j","\u0459":"lj","\u045A":"nj","\u045B":"c","\u045D":"u","\u045F":"dz","\u0490":"G","\u0491":"g","\u0492":"GH","\u0493":"gh","\u049A":"KH","\u049B":"kh","\u04A2":"NG","\u04A3":"ng","\u04AE":"UE","\u04AF":"ue","\u04B0":"U","\u04B1":"u","\u04BA":"H","\u04BB":"h","\u04D8":"AE","\u04D9":"ae","\u04E8":"OE","\u04E9":"oe","\u0531":"A","\u0532":"B","\u0533":"G","\u0534":"D","\u0535":"E","\u0536":"Z","\u0537":"E'","\u0538":"Y'","\u0539":"T'","\u053A":"JH","\u053B":"I","\u053C":"L","\u053D":"X","\u053E":"C'","\u053F":"K","\u0540":"H","\u0541":"D'","\u0542":"GH","\u0543":"TW","\u0544":"M","\u0545":"Y","\u0546":"N","\u0547":"SH","\u0549":"CH","\u054A":"P","\u054B":"J","\u054C":"R'","\u054D":"S","\u054E":"V","\u054F":"T","\u0550":"R","\u0551":"C","\u0553":"P'","\u0554":"Q'","\u0555":"O''","\u0556":"F","\u0587":"EV","\u0621":"a","\u0622":"aa","\u0623":"a","\u0624":"u","\u0625":"i","\u0626":"e","\u0627":"a","\u0628":"b","\u0629":"h","\u062A":"t","\u062B":"th","\u062C":"j","\u062D":"h","\u062E":"kh","\u062F":"d","\u0630":"th","\u0631":"r","\u0632":"z","\u0633":"s","\u0634":"sh","\u0635":"s","\u0636":"dh","\u0637":"t","\u0638":"z","\u0639":"a","\u063A":"gh","\u0641":"f","\u0642":"q","\u0643":"k","\u0644":"l","\u0645":"m","\u0646":"n","\u0647":"h","\u0648":"w","\u0649":"a","\u064A":"y","\u064B":"an","\u064C":"on","\u064D":"en","\u064E":"a","\u064F":"u","\u0650":"e","\u0652":"","\u0660":"0","\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u067E":"p","\u0686":"ch","\u0698":"zh","\u06A9":"k","\u06AF":"g","\u06CC":"y","\u06F0":"0","\u06F1":"1","\u06F2":"2","\u06F3":"3","\u06F4":"4","\u06F5":"5","\u06F6":"6","\u06F7":"7","\u06F8":"8","\u06F9":"9","\u0E3F":"baht","\u10D0":"a","\u10D1":"b","\u10D2":"g","\u10D3":"d","\u10D4":"e","\u10D5":"v","\u10D6":"z","\u10D7":"t","\u10D8":"i","\u10D9":"k","\u10DA":"l","\u10DB":"m","\u10DC":"n","\u10DD":"o","\u10DE":"p","\u10DF":"zh","\u10E0":"r","\u10E1":"s","\u10E2":"t","\u10E3":"u","\u10E4":"f","\u10E5":"k","\u10E6":"gh","\u10E7":"q","\u10E8":"sh","\u10E9":"ch","\u10EA":"ts","\u10EB":"dz","\u10EC":"ts","\u10ED":"ch","\u10EE":"kh","\u10EF":"j","\u10F0":"h","\u1E62":"S","\u1E63":"s","\u1E80":"W","\u1E81":"w","\u1E82":"W","\u1E83":"w","\u1E84":"W","\u1E85":"w","\u1E9E":"SS","\u1EA0":"A","\u1EA1":"a","\u1EA2":"A","\u1EA3":"a","\u1EA4":"A","\u1EA5":"a","\u1EA6":"A","\u1EA7":"a","\u1EA8":"A","\u1EA9":"a","\u1EAA":"A","\u1EAB":"a","\u1EAC":"A","\u1EAD":"a","\u1EAE":"A","\u1EAF":"a","\u1EB0":"A","\u1EB1":"a","\u1EB2":"A","\u1EB3":"a","\u1EB4":"A","\u1EB5":"a","\u1EB6":"A","\u1EB7":"a","\u1EB8":"E","\u1EB9":"e","\u1EBA":"E","\u1EBB":"e","\u1EBC":"E","\u1EBD":"e","\u1EBE":"E","\u1EBF":"e","\u1EC0":"E","\u1EC1":"e","\u1EC2":"E","\u1EC3":"e","\u1EC4":"E","\u1EC5":"e","\u1EC6":"E","\u1EC7":"e","\u1EC8":"I","\u1EC9":"i","\u1ECA":"I","\u1ECB":"i","\u1ECC":"O","\u1ECD":"o","\u1ECE":"O","\u1ECF":"o","\u1ED0":"O","\u1ED1":"o","\u1ED2":"O","\u1ED3":"o","\u1ED4":"O","\u1ED5":"o","\u1ED6":"O","\u1ED7":"o","\u1ED8":"O","\u1ED9":"o","\u1EDA":"O","\u1EDB":"o","\u1EDC":"O","\u1EDD":"o","\u1EDE":"O","\u1EDF":"o","\u1EE0":"O","\u1EE1":"o","\u1EE2":"O","\u1EE3":"o","\u1EE4":"U","\u1EE5":"u","\u1EE6":"U","\u1EE7":"u","\u1EE8":"U","\u1EE9":"u","\u1EEA":"U","\u1EEB":"u","\u1EEC":"U","\u1EED":"u","\u1EEE":"U","\u1EEF":"u","\u1EF0":"U","\u1EF1":"u","\u1EF2":"Y","\u1EF3":"y","\u1EF4":"Y","\u1EF5":"y","\u1EF6":"Y","\u1EF7":"y","\u1EF8":"Y","\u1EF9":"y","\u2013":"-","\u2018":"'","\u2019":"'","\u201C":"\\"","\u201D":"\\"","\u201E":"\\"","\u2020":"+","\u2022":"*","\u2026":"...","\u20A0":"ecu","\u20A2":"cruzeiro","\u20A3":"french franc","\u20A4":"lira","\u20A5":"mill","\u20A6":"naira","\u20A7":"peseta","\u20A8":"rupee","\u20A9":"won","\u20AA":"new shequel","\u20AB":"dong","\u20AC":"euro","\u20AD":"kip","\u20AE":"tugrik","\u20AF":"drachma","\u20B0":"penny","\u20B1":"peso","\u20B2":"guarani","\u20B3":"austral","\u20B4":"hryvnia","\u20B5":"cedi","\u20B8":"kazakhstani tenge","\u20B9":"indian rupee","\u20BA":"turkish lira","\u20BD":"russian ruble","\u20BF":"bitcoin","\u2120":"sm","\u2122":"tm","\u2202":"d","\u2206":"delta","\u2211":"sum","\u221E":"infinity","\u2665":"love","\u5143":"yuan","\u5186":"yen","\uFDFC":"rial","\uFEF5":"laa","\uFEF7":"laa","\uFEF9":"lai","\uFEFB":"la"}`); + var locales = JSON.parse('{"bg":{"\u0419":"Y","\u0426":"Ts","\u0429":"Sht","\u042A":"A","\u042C":"Y","\u0439":"y","\u0446":"ts","\u0449":"sht","\u044A":"a","\u044C":"y"},"de":{"\xC4":"AE","\xE4":"ae","\xD6":"OE","\xF6":"oe","\xDC":"UE","\xFC":"ue","\xDF":"ss","%":"prozent","&":"und","|":"oder","\u2211":"summe","\u221E":"unendlich","\u2665":"liebe"},"es":{"%":"por ciento","&":"y","<":"menor que",">":"mayor que","|":"o","\xA2":"centavos","\xA3":"libras","\xA4":"moneda","\u20A3":"francos","\u2211":"suma","\u221E":"infinito","\u2665":"amor"},"fr":{"%":"pourcent","&":"et","<":"plus petit",">":"plus grand","|":"ou","\xA2":"centime","\xA3":"livre","\xA4":"devise","\u20A3":"franc","\u2211":"somme","\u221E":"infini","\u2665":"amour"},"pt":{"%":"porcento","&":"e","<":"menor",">":"maior","|":"ou","\xA2":"centavo","\u2211":"soma","\xA3":"libra","\u221E":"infinito","\u2665":"amor"},"uk":{"\u0418":"Y","\u0438":"y","\u0419":"Y","\u0439":"y","\u0426":"Ts","\u0446":"ts","\u0425":"Kh","\u0445":"kh","\u0429":"Shch","\u0449":"shch","\u0413":"H","\u0433":"h"},"vi":{"\u0110":"D","\u0111":"d"},"da":{"\xD8":"OE","\xF8":"oe","\xC5":"AA","\xE5":"aa","%":"procent","&":"og","|":"eller","$":"dollar","<":"mindre end",">":"st\xF8rre end"},"nb":{"&":"og","\xC5":"AA","\xC6":"AE","\xD8":"OE","\xE5":"aa","\xE6":"ae","\xF8":"oe"},"it":{"&":"e"},"nl":{"&":"en"},"sv":{"&":"och","\xC5":"AA","\xC4":"AE","\xD6":"OE","\xE5":"aa","\xE4":"ae","\xF6":"oe"}}'); + function replace(string, options2) { + if (typeof string !== "string") { + throw new Error("slugify: string argument expected"); + } + options2 = typeof options2 === "string" ? { replacement: options2 } : options2 || {}; + var locale = locales[options2.locale] || {}; + var replacement = options2.replacement === void 0 ? "-" : options2.replacement; + var trim2 = options2.trim === void 0 ? true : options2.trim; + var slug = string.normalize().split("").reduce(function(result, ch) { + var appendChar = locale[ch]; + if (appendChar === void 0) + appendChar = charMap[ch]; + if (appendChar === void 0) + appendChar = ch; + if (appendChar === replacement) + appendChar = " "; + return result + appendChar.replace(options2.remove || /[^\w\s$*_+~.()'"!\-:@]+/g, ""); + }, ""); + if (options2.strict) { + slug = slug.replace(/[^A-Za-z0-9\s]/g, ""); + } + if (trim2) { + slug = slug.trim(); + } + slug = slug.replace(/\s+/g, replacement); + if (options2.lower) { + slug = slug.toLowerCase(); + } + return slug; + } + replace.extend = function(customMap) { + Object.assign(charMap, customMap); + }; + return replace; + }); + } +}); + +// ../node_modules/.pnpm/route-recognizer@0.3.4/node_modules/route-recognizer/dist/route-recognizer.js +var require_route_recognizer = __commonJS({ + "../node_modules/.pnpm/route-recognizer@0.3.4/node_modules/route-recognizer/dist/route-recognizer.js"(exports2, module2) { + (function(global2, factory) { + typeof exports2 === "object" && typeof module2 !== "undefined" ? module2.exports = factory() : typeof define === "function" && define.amd ? define("route-recognizer", factory) : global2.RouteRecognizer = factory(); + })(exports2, function() { + "use strict"; + var createObject = Object.create; + function createMap() { + var map2 = createObject(null); + map2["__"] = void 0; + delete map2["__"]; + return map2; + } + var Target = function Target2(path30, matcher, delegate) { + this.path = path30; + this.matcher = matcher; + this.delegate = delegate; + }; + Target.prototype.to = function to(target, callback) { + var delegate = this.delegate; + if (delegate && delegate.willAddRoute) { + target = delegate.willAddRoute(this.matcher.target, target); + } + this.matcher.add(this.path, target); + if (callback) { + if (callback.length === 0) { + throw new Error("You must have an argument in the function passed to `to`"); + } + this.matcher.addChild(this.path, target, callback, this.delegate); + } + }; + var Matcher = function Matcher2(target) { + this.routes = createMap(); + this.children = createMap(); + this.target = target; + }; + Matcher.prototype.add = function add(path30, target) { + this.routes[path30] = target; + }; + Matcher.prototype.addChild = function addChild(path30, target, callback, delegate) { + var matcher = new Matcher(target); + this.children[path30] = matcher; + var match2 = generateMatch(path30, matcher, delegate); + if (delegate && delegate.contextEntered) { + delegate.contextEntered(target, match2); + } + callback(match2); + }; + function generateMatch(startingPath, matcher, delegate) { + function match2(path30, callback) { + var fullPath = startingPath + path30; + if (callback) { + callback(generateMatch(fullPath, matcher, delegate)); + } else { + return new Target(fullPath, matcher, delegate); + } + } + return match2; + } + function addRoute(routeArray, path30, handler) { + var len = 0; + for (var i = 0; i < routeArray.length; i++) { + len += routeArray[i].path.length; + } + path30 = path30.substr(len); + var route = { path: path30, handler }; + routeArray.push(route); + } + function eachRoute(baseRoute, matcher, callback, binding) { + var routes = matcher.routes; + var paths = Object.keys(routes); + for (var i = 0; i < paths.length; i++) { + var path30 = paths[i]; + var routeArray = baseRoute.slice(); + addRoute(routeArray, path30, routes[path30]); + var nested = matcher.children[path30]; + if (nested) { + eachRoute(routeArray, nested, callback, binding); + } else { + callback.call(binding, routeArray); + } + } + } + var map = function(callback, addRouteCallback) { + var matcher = new Matcher(); + callback(generateMatch("", matcher, this.delegate)); + eachRoute([], matcher, function(routes) { + if (addRouteCallback) { + addRouteCallback(this, routes); + } else { + this.add(routes); + } + }, this); + }; + function normalizePath(path30) { + return path30.split("/").map(normalizeSegment).join("/"); + } + var SEGMENT_RESERVED_CHARS = /%|\//g; + function normalizeSegment(segment) { + if (segment.length < 3 || segment.indexOf("%") === -1) { + return segment; + } + return decodeURIComponent(segment).replace(SEGMENT_RESERVED_CHARS, encodeURIComponent); + } + var PATH_SEGMENT_ENCODINGS = /%(?:2(?:4|6|B|C)|3(?:B|D|A)|40)/g; + function encodePathSegment(str) { + return encodeURIComponent(str).replace(PATH_SEGMENT_ENCODINGS, decodeURIComponent); + } + var escapeRegex2 = /(\/|\.|\*|\+|\?|\||\(|\)|\[|\]|\{|\}|\\)/g; + var isArray2 = Array.isArray; + var hasOwnProperty2 = Object.prototype.hasOwnProperty; + function getParam(params, key) { + if (typeof params !== "object" || params === null) { + throw new Error("You must pass an object as the second argument to `generate`."); + } + if (!hasOwnProperty2.call(params, key)) { + throw new Error("You must provide param `" + key + "` to `generate`."); + } + var value = params[key]; + var str = typeof value === "string" ? value : "" + value; + if (str.length === 0) { + throw new Error("You must provide a param `" + key + "`."); + } + return str; + } + var eachChar = []; + eachChar[ + 0 + /* Static */ + ] = function(segment, currentState) { + var state = currentState; + var value = segment.value; + for (var i = 0; i < value.length; i++) { + var ch = value.charCodeAt(i); + state = state.put(ch, false, false); + } + return state; + }; + eachChar[ + 1 + /* Dynamic */ + ] = function(_, currentState) { + return currentState.put(47, true, true); + }; + eachChar[ + 2 + /* Star */ + ] = function(_, currentState) { + return currentState.put(-1, false, true); + }; + eachChar[ + 4 + /* Epsilon */ + ] = function(_, currentState) { + return currentState; + }; + var regex = []; + regex[ + 0 + /* Static */ + ] = function(segment) { + return segment.value.replace(escapeRegex2, "\\$1"); + }; + regex[ + 1 + /* Dynamic */ + ] = function() { + return "([^/]+)"; + }; + regex[ + 2 + /* Star */ + ] = function() { + return "(.+)"; + }; + regex[ + 4 + /* Epsilon */ + ] = function() { + return ""; + }; + var generate = []; + generate[ + 0 + /* Static */ + ] = function(segment) { + return segment.value; + }; + generate[ + 1 + /* Dynamic */ + ] = function(segment, params) { + var value = getParam(params, segment.value); + if (RouteRecognizer.ENCODE_AND_DECODE_PATH_SEGMENTS) { + return encodePathSegment(value); + } else { + return value; + } + }; + generate[ + 2 + /* Star */ + ] = function(segment, params) { + return getParam(params, segment.value); + }; + generate[ + 4 + /* Epsilon */ + ] = function() { + return ""; + }; + var EmptyObject = Object.freeze({}); + var EmptyArray = Object.freeze([]); + function parse7(segments, route, types2) { + if (route.length > 0 && route.charCodeAt(0) === 47) { + route = route.substr(1); + } + var parts = route.split("/"); + var names = void 0; + var shouldDecodes = void 0; + for (var i = 0; i < parts.length; i++) { + var part = parts[i]; + var flags2 = 0; + var type2 = 0; + if (part === "") { + type2 = 4; + } else if (part.charCodeAt(0) === 58) { + type2 = 1; + } else if (part.charCodeAt(0) === 42) { + type2 = 2; + } else { + type2 = 0; + } + flags2 = 2 << type2; + if (flags2 & 12) { + part = part.slice(1); + names = names || []; + names.push(part); + shouldDecodes = shouldDecodes || []; + shouldDecodes.push((flags2 & 4) !== 0); + } + if (flags2 & 14) { + types2[type2]++; + } + segments.push({ + type: type2, + value: normalizeSegment(part) + }); + } + return { + names: names || EmptyArray, + shouldDecodes: shouldDecodes || EmptyArray + }; + } + function isEqualCharSpec(spec, char, negate) { + return spec.char === char && spec.negate === negate; + } + var State = function State2(states, id, char, negate, repeat) { + this.states = states; + this.id = id; + this.char = char; + this.negate = negate; + this.nextStates = repeat ? id : null; + this.pattern = ""; + this._regex = void 0; + this.handlers = void 0; + this.types = void 0; + }; + State.prototype.regex = function regex$1() { + if (!this._regex) { + this._regex = new RegExp(this.pattern); + } + return this._regex; + }; + State.prototype.get = function get(char, negate) { + var this$1 = this; + var nextStates = this.nextStates; + if (nextStates === null) { + return; + } + if (isArray2(nextStates)) { + for (var i = 0; i < nextStates.length; i++) { + var child = this$1.states[nextStates[i]]; + if (isEqualCharSpec(child, char, negate)) { + return child; + } + } + } else { + var child$1 = this.states[nextStates]; + if (isEqualCharSpec(child$1, char, negate)) { + return child$1; + } + } + }; + State.prototype.put = function put(char, negate, repeat) { + var state; + if (state = this.get(char, negate)) { + return state; + } + var states = this.states; + state = new State(states, states.length, char, negate, repeat); + states[states.length] = state; + if (this.nextStates == null) { + this.nextStates = state.id; + } else if (isArray2(this.nextStates)) { + this.nextStates.push(state.id); + } else { + this.nextStates = [this.nextStates, state.id]; + } + return state; + }; + State.prototype.match = function match2(ch) { + var this$1 = this; + var nextStates = this.nextStates; + if (!nextStates) { + return []; + } + var returned = []; + if (isArray2(nextStates)) { + for (var i = 0; i < nextStates.length; i++) { + var child = this$1.states[nextStates[i]]; + if (isMatch(child, ch)) { + returned.push(child); + } + } + } else { + var child$1 = this.states[nextStates]; + if (isMatch(child$1, ch)) { + returned.push(child$1); + } + } + return returned; + }; + function isMatch(spec, char) { + return spec.negate ? spec.char !== char && spec.char !== -1 : spec.char === char || spec.char === -1; + } + function sortSolutions(states) { + return states.sort(function(a, b) { + var ref = a.types || [0, 0, 0]; + var astatics = ref[0]; + var adynamics = ref[1]; + var astars = ref[2]; + var ref$1 = b.types || [0, 0, 0]; + var bstatics = ref$1[0]; + var bdynamics = ref$1[1]; + var bstars = ref$1[2]; + if (astars !== bstars) { + return astars - bstars; + } + if (astars) { + if (astatics !== bstatics) { + return bstatics - astatics; + } + if (adynamics !== bdynamics) { + return bdynamics - adynamics; + } + } + if (adynamics !== bdynamics) { + return adynamics - bdynamics; + } + if (astatics !== bstatics) { + return bstatics - astatics; + } + return 0; + }); + } + function recognizeChar(states, ch) { + var nextStates = []; + for (var i = 0, l2 = states.length; i < l2; i++) { + var state = states[i]; + nextStates = nextStates.concat(state.match(ch)); + } + return nextStates; + } + var RecognizeResults = function RecognizeResults2(queryParams) { + this.length = 0; + this.queryParams = queryParams || {}; + }; + RecognizeResults.prototype.splice = Array.prototype.splice; + RecognizeResults.prototype.slice = Array.prototype.slice; + RecognizeResults.prototype.push = Array.prototype.push; + function findHandler(state, originalPath, queryParams) { + var handlers = state.handlers; + var regex2 = state.regex(); + if (!regex2 || !handlers) { + throw new Error("state not initialized"); + } + var captures = originalPath.match(regex2); + var currentCapture = 1; + var result = new RecognizeResults(queryParams); + result.length = handlers.length; + for (var i = 0; i < handlers.length; i++) { + var handler = handlers[i]; + var names = handler.names; + var shouldDecodes = handler.shouldDecodes; + var params = EmptyObject; + var isDynamic = false; + if (names !== EmptyArray && shouldDecodes !== EmptyArray) { + for (var j = 0; j < names.length; j++) { + isDynamic = true; + var name = names[j]; + var capture = captures && captures[currentCapture++]; + if (params === EmptyObject) { + params = {}; + } + if (RouteRecognizer.ENCODE_AND_DECODE_PATH_SEGMENTS && shouldDecodes[j]) { + params[name] = capture && decodeURIComponent(capture); + } else { + params[name] = capture; + } + } + } + result[i] = { + handler: handler.handler, + params, + isDynamic + }; + } + return result; + } + function decodeQueryParamPart(part) { + part = part.replace(/\+/gm, "%20"); + var result; + try { + result = decodeURIComponent(part); + } catch (error) { + result = ""; + } + return result; + } + var RouteRecognizer = function RouteRecognizer2() { + this.names = createMap(); + var states = []; + var state = new State(states, 0, -1, true, false); + states[0] = state; + this.states = states; + this.rootState = state; + }; + RouteRecognizer.prototype.add = function add(routes, options2) { + var currentState = this.rootState; + var pattern = "^"; + var types2 = [0, 0, 0]; + var handlers = new Array(routes.length); + var allSegments = []; + var isEmpty = true; + var j = 0; + for (var i = 0; i < routes.length; i++) { + var route = routes[i]; + var ref = parse7(allSegments, route.path, types2); + var names = ref.names; + var shouldDecodes = ref.shouldDecodes; + for (; j < allSegments.length; j++) { + var segment = allSegments[j]; + if (segment.type === 4) { + continue; + } + isEmpty = false; + currentState = currentState.put(47, false, false); + pattern += "/"; + currentState = eachChar[segment.type](segment, currentState); + pattern += regex[segment.type](segment); + } + handlers[i] = { + handler: route.handler, + names, + shouldDecodes + }; + } + if (isEmpty) { + currentState = currentState.put(47, false, false); + pattern += "/"; + } + currentState.handlers = handlers; + currentState.pattern = pattern + "$"; + currentState.types = types2; + var name; + if (typeof options2 === "object" && options2 !== null && options2.as) { + name = options2.as; + } + if (name) { + this.names[name] = { + segments: allSegments, + handlers + }; + } + }; + RouteRecognizer.prototype.handlersFor = function handlersFor(name) { + var route = this.names[name]; + if (!route) { + throw new Error("There is no route named " + name); + } + var result = new Array(route.handlers.length); + for (var i = 0; i < route.handlers.length; i++) { + var handler = route.handlers[i]; + result[i] = handler; + } + return result; + }; + RouteRecognizer.prototype.hasRoute = function hasRoute(name) { + return !!this.names[name]; + }; + RouteRecognizer.prototype.generate = function generate$1(name, params) { + var route = this.names[name]; + var output = ""; + if (!route) { + throw new Error("There is no route named " + name); + } + var segments = route.segments; + for (var i = 0; i < segments.length; i++) { + var segment = segments[i]; + if (segment.type === 4) { + continue; + } + output += "/"; + output += generate[segment.type](segment, params); + } + if (output.charAt(0) !== "/") { + output = "/" + output; + } + if (params && params.queryParams) { + output += this.generateQueryString(params.queryParams); + } + return output; + }; + RouteRecognizer.prototype.generateQueryString = function generateQueryString(params) { + var pairs = []; + var keys = Object.keys(params); + keys.sort(); + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + var value = params[key]; + if (value == null) { + continue; + } + var pair = encodeURIComponent(key); + if (isArray2(value)) { + for (var j = 0; j < value.length; j++) { + var arrayPair = key + "[]=" + encodeURIComponent(value[j]); + pairs.push(arrayPair); + } + } else { + pair += "=" + encodeURIComponent(value); + pairs.push(pair); + } + } + if (pairs.length === 0) { + return ""; + } + return "?" + pairs.join("&"); + }; + RouteRecognizer.prototype.parseQueryString = function parseQueryString(queryString) { + var pairs = queryString.split("&"); + var queryParams = {}; + for (var i = 0; i < pairs.length; i++) { + var pair = pairs[i].split("="), key = decodeQueryParamPart(pair[0]), keyLength = key.length, isArray3 = false, value = void 0; + if (pair.length === 1) { + value = "true"; + } else { + if (keyLength > 2 && key.slice(keyLength - 2) === "[]") { + isArray3 = true; + key = key.slice(0, keyLength - 2); + if (!queryParams[key]) { + queryParams[key] = []; + } + } + value = pair[1] ? decodeQueryParamPart(pair[1]) : ""; + } + if (isArray3) { + queryParams[key].push(value); + } else { + queryParams[key] = value; + } + } + return queryParams; + }; + RouteRecognizer.prototype.recognize = function recognize(path30) { + var results; + var states = [this.rootState]; + var queryParams = {}; + var isSlashDropped = false; + var hashStart = path30.indexOf("#"); + if (hashStart !== -1) { + path30 = path30.substr(0, hashStart); + } + var queryStart = path30.indexOf("?"); + if (queryStart !== -1) { + var queryString = path30.substr(queryStart + 1, path30.length); + path30 = path30.substr(0, queryStart); + queryParams = this.parseQueryString(queryString); + } + if (path30.charAt(0) !== "/") { + path30 = "/" + path30; + } + var originalPath = path30; + if (RouteRecognizer.ENCODE_AND_DECODE_PATH_SEGMENTS) { + path30 = normalizePath(path30); + } else { + path30 = decodeURI(path30); + originalPath = decodeURI(originalPath); + } + var pathLen = path30.length; + if (pathLen > 1 && path30.charAt(pathLen - 1) === "/") { + path30 = path30.substr(0, pathLen - 1); + originalPath = originalPath.substr(0, originalPath.length - 1); + isSlashDropped = true; + } + for (var i = 0; i < path30.length; i++) { + states = recognizeChar(states, path30.charCodeAt(i)); + if (!states.length) { + break; + } + } + var solutions = []; + for (var i$1 = 0; i$1 < states.length; i$1++) { + if (states[i$1].handlers) { + solutions.push(states[i$1]); + } + } + states = sortSolutions(solutions); + var state = solutions[0]; + if (state && state.handlers) { + if (isSlashDropped && state.pattern && state.pattern.slice(-5) === "(.+)$") { + originalPath = originalPath + "/"; + } + results = findHandler(state, originalPath, queryParams); + } + return results; + }; + RouteRecognizer.VERSION = "0.3.4"; + RouteRecognizer.ENCODE_AND_DECODE_PATH_SEGMENTS = true; + RouteRecognizer.Normalizer = { + normalizeSegment, + normalizePath, + encodePathSegment + }; + RouteRecognizer.prototype.map = map; + return RouteRecognizer; + }); + } +}); + +// ../node_modules/.pnpm/@pollyjs+core@6.0.6/node_modules/@pollyjs/core/dist/cjs/pollyjs-core.js +var require_pollyjs_core = __commonJS({ + "../node_modules/.pnpm/@pollyjs+core@6.0.6/node_modules/@pollyjs/core/dist/cjs/pollyjs-core.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function _interopDefault(ex) { + return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex; + } + var utils = require_pollyjs_utils(); + var logLevel = _interopDefault(require_loglevel()); + var md5 = _interopDefault(require_md5()); + var stringify = _interopDefault(require_fast_json_stable_stringify()); + var isAbsoluteUrl = _interopDefault(require_is_absolute_url()); + var fnv1a = _interopDefault(require_fnv1a()); + var slugify = _interopDefault(require_slugify()); + var RouteRecognizer = _interopDefault(require_route_recognizer()); + function unwrapExports(x) { + return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x; + } + function createCommonjsModule(fn, module3) { + return module3 = { exports: {} }, fn(module3, module3.exports), module3.exports; + } + function getCjsExportFromNamespace(n) { + return n && n["default"] || n; + } + var _global2 = createCommonjsModule(function(module3) { + var global2 = module3.exports = typeof window != "undefined" && window.Math == Math ? window : typeof self != "undefined" && self.Math == Math ? self : Function("return this")(); + if (typeof __g == "number") + __g = global2; + }); + var hasOwnProperty2 = {}.hasOwnProperty; + var _has = function(it, key) { + return hasOwnProperty2.call(it, key); + }; + var _fails = function(exec3) { + try { + return !!exec3(); + } catch (e) { + return true; + } + }; + var _descriptors = !_fails(function() { + return Object.defineProperty({}, "a", { get: function() { + return 7; + } }).a != 7; + }); + var _core = createCommonjsModule(function(module3) { + var core = module3.exports = { version: "2.6.9" }; + if (typeof __e == "number") + __e = core; + }); + var _core_1 = _core.version; + var _aFunction = function(it) { + if (typeof it != "function") + throw TypeError(it + " is not a function!"); + return it; + }; + var _ctx = function(fn, that, length) { + _aFunction(fn); + if (that === void 0) + return fn; + switch (length) { + case 1: + return function(a) { + return fn.call(that, a); + }; + case 2: + return function(a, b) { + return fn.call(that, a, b); + }; + case 3: + return function(a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function() { + return fn.apply(that, arguments); + }; + }; + var _isObject = function(it) { + return typeof it === "object" ? it !== null : typeof it === "function"; + }; + var _anObject = function(it) { + if (!_isObject(it)) + throw TypeError(it + " is not an object!"); + return it; + }; + var document$1 = _global2.document; + var is = _isObject(document$1) && _isObject(document$1.createElement); + var _domCreate = function(it) { + return is ? document$1.createElement(it) : {}; + }; + var _ie8DomDefine = !_descriptors && !_fails(function() { + return Object.defineProperty(_domCreate("div"), "a", { get: function() { + return 7; + } }).a != 7; + }); + var _toPrimitive = function(it, S) { + if (!_isObject(it)) + return it; + var fn, val; + if (S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + if (typeof (fn = it.valueOf) == "function" && !_isObject(val = fn.call(it))) + return val; + if (!S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + throw TypeError("Can't convert object to primitive value"); + }; + var dP = Object.defineProperty; + var f = _descriptors ? Object.defineProperty : function defineProperty2(O, P, Attributes) { + _anObject(O); + P = _toPrimitive(P, true); + _anObject(Attributes); + if (_ie8DomDefine) + try { + return dP(O, P, Attributes); + } catch (e) { + } + if ("get" in Attributes || "set" in Attributes) + throw TypeError("Accessors not supported!"); + if ("value" in Attributes) + O[P] = Attributes.value; + return O; + }; + var _objectDp = { + f + }; + var _propertyDesc = function(bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value + }; + }; + var _hide = _descriptors ? function(object, key, value) { + return _objectDp.f(object, key, _propertyDesc(1, value)); + } : function(object, key, value) { + object[key] = value; + return object; + }; + var PROTOTYPE = "prototype"; + var $export = function(type2, name, source2) { + var IS_FORCED = type2 & $export.F; + var IS_GLOBAL = type2 & $export.G; + var IS_STATIC = type2 & $export.S; + var IS_PROTO = type2 & $export.P; + var IS_BIND = type2 & $export.B; + var IS_WRAP = type2 & $export.W; + var exports3 = IS_GLOBAL ? _core : _core[name] || (_core[name] = {}); + var expProto = exports3[PROTOTYPE]; + var target = IS_GLOBAL ? _global2 : IS_STATIC ? _global2[name] : (_global2[name] || {})[PROTOTYPE]; + var key, own, out2; + if (IS_GLOBAL) + source2 = name; + for (key in source2) { + own = !IS_FORCED && target && target[key] !== void 0; + if (own && _has(exports3, key)) + continue; + out2 = own ? target[key] : source2[key]; + exports3[key] = IS_GLOBAL && typeof target[key] != "function" ? source2[key] : IS_BIND && own ? _ctx(out2, _global2) : IS_WRAP && target[key] == out2 ? function(C2) { + var F = function(a, b, c) { + if (this instanceof C2) { + switch (arguments.length) { + case 0: + return new C2(); + case 1: + return new C2(a); + case 2: + return new C2(a, b); + } + return new C2(a, b, c); + } + return C2.apply(this, arguments); + }; + F[PROTOTYPE] = C2[PROTOTYPE]; + return F; + }(out2) : IS_PROTO && typeof out2 == "function" ? _ctx(Function.call, out2) : out2; + if (IS_PROTO) { + (exports3.virtual || (exports3.virtual = {}))[key] = out2; + if (type2 & $export.R && expProto && !expProto[key]) + _hide(expProto, key, out2); + } + } + }; + $export.F = 1; + $export.G = 2; + $export.S = 4; + $export.P = 8; + $export.B = 16; + $export.W = 32; + $export.U = 64; + $export.R = 128; + var _export = $export; + var _redefine = _hide; + var id = 0; + var px = Math.random(); + var _uid = function(key) { + return "Symbol(".concat(key === void 0 ? "" : key, ")_", (++id + px).toString(36)); + }; + var _meta = createCommonjsModule(function(module3) { + var META2 = _uid("meta"); + var setDesc = _objectDp.f; + var id2 = 0; + var isExtensible = Object.isExtensible || function() { + return true; + }; + var FREEZE = !_fails(function() { + return isExtensible(Object.preventExtensions({})); + }); + var setMeta = function(it) { + setDesc(it, META2, { value: { + i: "O" + ++id2, + // object ID + w: {} + // weak collections IDs + } }); + }; + var fastKey2 = function(it, create2) { + if (!_isObject(it)) + return typeof it == "symbol" ? it : (typeof it == "string" ? "S" : "P") + it; + if (!_has(it, META2)) { + if (!isExtensible(it)) + return "F"; + if (!create2) + return "E"; + setMeta(it); + } + return it[META2].i; + }; + var getWeak2 = function(it, create2) { + if (!_has(it, META2)) { + if (!isExtensible(it)) + return true; + if (!create2) + return false; + setMeta(it); + } + return it[META2].w; + }; + var onFreeze = function(it) { + if (FREEZE && meta.NEED && isExtensible(it) && !_has(it, META2)) + setMeta(it); + return it; + }; + var meta = module3.exports = { + KEY: META2, + NEED: false, + fastKey: fastKey2, + getWeak: getWeak2, + onFreeze + }; + }); + var _meta_1 = _meta.KEY; + var _meta_2 = _meta.NEED; + var _meta_3 = _meta.fastKey; + var _meta_4 = _meta.getWeak; + var _meta_5 = _meta.onFreeze; + var _library = true; + var _shared = createCommonjsModule(function(module3) { + var SHARED = "__core-js_shared__"; + var store = _global2[SHARED] || (_global2[SHARED] = {}); + (module3.exports = function(key, value) { + return store[key] || (store[key] = value !== void 0 ? value : {}); + })("versions", []).push({ + version: _core.version, + mode: "pure", + copyright: "\xA9 2019 Denis Pushkarev (zloirock.ru)" + }); + }); + var _wks = createCommonjsModule(function(module3) { + var store = _shared("wks"); + var Symbol2 = _global2.Symbol; + var USE_SYMBOL = typeof Symbol2 == "function"; + var $exports = module3.exports = function(name) { + return store[name] || (store[name] = USE_SYMBOL && Symbol2[name] || (USE_SYMBOL ? Symbol2 : _uid)("Symbol." + name)); + }; + $exports.store = store; + }); + var def = _objectDp.f; + var TAG = _wks("toStringTag"); + var _setToStringTag = function(it, tag, stat7) { + if (it && !_has(it = stat7 ? it : it.prototype, TAG)) + def(it, TAG, { configurable: true, value: tag }); + }; + var f$1 = _wks; + var _wksExt = { + f: f$1 + }; + var defineProperty = _objectDp.f; + var _wksDefine = function(name) { + var $Symbol2 = _core.Symbol || (_core.Symbol = {}); + if (name.charAt(0) != "_" && !(name in $Symbol2)) + defineProperty($Symbol2, name, { value: _wksExt.f(name) }); + }; + var toString3 = {}.toString; + var _cof = function(it) { + return toString3.call(it).slice(8, -1); + }; + var _iobject = Object("z").propertyIsEnumerable(0) ? Object : function(it) { + return _cof(it) == "String" ? it.split("") : Object(it); + }; + var _defined = function(it) { + if (it == void 0) + throw TypeError("Can't call method on " + it); + return it; + }; + var _toIobject = function(it) { + return _iobject(_defined(it)); + }; + var ceil = Math.ceil; + var floor = Math.floor; + var _toInteger = function(it) { + return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); + }; + var min = Math.min; + var _toLength = function(it) { + return it > 0 ? min(_toInteger(it), 9007199254740991) : 0; + }; + var max = Math.max; + var min$1 = Math.min; + var _toAbsoluteIndex = function(index, length) { + index = _toInteger(index); + return index < 0 ? max(index + length, 0) : min$1(index, length); + }; + var _arrayIncludes = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O = _toIobject($this); + var length = _toLength(O.length); + var index = _toAbsoluteIndex(fromIndex, length); + var value; + if (IS_INCLUDES && el != el) + while (length > index) { + value = O[index++]; + if (value != value) + return true; + } + else + for (; length > index; index++) + if (IS_INCLUDES || index in O) { + if (O[index] === el) + return IS_INCLUDES || index || 0; + } + return !IS_INCLUDES && -1; + }; + }; + var shared = _shared("keys"); + var _sharedKey = function(key) { + return shared[key] || (shared[key] = _uid(key)); + }; + var arrayIndexOf = _arrayIncludes(false); + var IE_PROTO = _sharedKey("IE_PROTO"); + var _objectKeysInternal = function(object, names) { + var O = _toIobject(object); + var i2 = 0; + var result = []; + var key; + for (key in O) + if (key != IE_PROTO) + _has(O, key) && result.push(key); + while (names.length > i2) + if (_has(O, key = names[i2++])) { + ~arrayIndexOf(result, key) || result.push(key); + } + return result; + }; + var _enumBugKeys = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","); + var _objectKeys = Object.keys || function keys2(O) { + return _objectKeysInternal(O, _enumBugKeys); + }; + var f$2 = Object.getOwnPropertySymbols; + var _objectGops = { + f: f$2 + }; + var f$3 = {}.propertyIsEnumerable; + var _objectPie = { + f: f$3 + }; + var _enumKeys = function(it) { + var result = _objectKeys(it); + var getSymbols = _objectGops.f; + if (getSymbols) { + var symbols = getSymbols(it); + var isEnum2 = _objectPie.f; + var i2 = 0; + var key; + while (symbols.length > i2) + if (isEnum2.call(it, key = symbols[i2++])) + result.push(key); + } + return result; + }; + var _isArray = Array.isArray || function isArray3(arg) { + return _cof(arg) == "Array"; + }; + var _toObject = function(it) { + return Object(_defined(it)); + }; + var _objectDps = _descriptors ? Object.defineProperties : function defineProperties2(O, Properties) { + _anObject(O); + var keys2 = _objectKeys(Properties); + var length = keys2.length; + var i2 = 0; + var P; + while (length > i2) + _objectDp.f(O, P = keys2[i2++], Properties[P]); + return O; + }; + var document$2 = _global2.document; + var _html = document$2 && document$2.documentElement; + var IE_PROTO$1 = _sharedKey("IE_PROTO"); + var Empty = function() { + }; + var PROTOTYPE$1 = "prototype"; + var createDict = function() { + var iframe = _domCreate("iframe"); + var i2 = _enumBugKeys.length; + var lt = "<"; + var gt = ">"; + var iframeDocument; + iframe.style.display = "none"; + _html.appendChild(iframe); + iframe.src = "javascript:"; + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(lt + "script" + gt + "document.F=Object" + lt + "/script" + gt); + iframeDocument.close(); + createDict = iframeDocument.F; + while (i2--) + delete createDict[PROTOTYPE$1][_enumBugKeys[i2]]; + return createDict(); + }; + var _objectCreate = Object.create || function create2(O, Properties) { + var result; + if (O !== null) { + Empty[PROTOTYPE$1] = _anObject(O); + result = new Empty(); + Empty[PROTOTYPE$1] = null; + result[IE_PROTO$1] = O; + } else + result = createDict(); + return Properties === void 0 ? result : _objectDps(result, Properties); + }; + var hiddenKeys = _enumBugKeys.concat("length", "prototype"); + var f$4 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return _objectKeysInternal(O, hiddenKeys); + }; + var _objectGopn = { + f: f$4 + }; + var gOPN = _objectGopn.f; + var toString$1 = {}.toString; + var windowNames = typeof window == "object" && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : []; + var getWindowNames = function(it) { + try { + return gOPN(it); + } catch (e) { + return windowNames.slice(); + } + }; + var f$5 = function getOwnPropertyNames(it) { + return windowNames && toString$1.call(it) == "[object Window]" ? getWindowNames(it) : gOPN(_toIobject(it)); + }; + var _objectGopnExt = { + f: f$5 + }; + var gOPD = Object.getOwnPropertyDescriptor; + var f$6 = _descriptors ? gOPD : function getOwnPropertyDescriptor2(O, P) { + O = _toIobject(O); + P = _toPrimitive(P, true); + if (_ie8DomDefine) + try { + return gOPD(O, P); + } catch (e) { + } + if (_has(O, P)) + return _propertyDesc(!_objectPie.f.call(O, P), O[P]); + }; + var _objectGopd = { + f: f$6 + }; + var META = _meta.KEY; + var gOPD$1 = _objectGopd.f; + var dP$1 = _objectDp.f; + var gOPN$1 = _objectGopnExt.f; + var $Symbol = _global2.Symbol; + var $JSON = _global2.JSON; + var _stringify = $JSON && $JSON.stringify; + var PROTOTYPE$2 = "prototype"; + var HIDDEN = _wks("_hidden"); + var TO_PRIMITIVE = _wks("toPrimitive"); + var isEnum = {}.propertyIsEnumerable; + var SymbolRegistry = _shared("symbol-registry"); + var AllSymbols = _shared("symbols"); + var OPSymbols = _shared("op-symbols"); + var ObjectProto = Object[PROTOTYPE$2]; + var USE_NATIVE = typeof $Symbol == "function" && !!_objectGops.f; + var QObject = _global2.QObject; + var setter = !QObject || !QObject[PROTOTYPE$2] || !QObject[PROTOTYPE$2].findChild; + var setSymbolDesc = _descriptors && _fails(function() { + return _objectCreate(dP$1({}, "a", { + get: function() { + return dP$1(this, "a", { value: 7 }).a; + } + })).a != 7; + }) ? function(it, key, D) { + var protoDesc = gOPD$1(ObjectProto, key); + if (protoDesc) + delete ObjectProto[key]; + dP$1(it, key, D); + if (protoDesc && it !== ObjectProto) + dP$1(ObjectProto, key, protoDesc); + } : dP$1; + var wrap2 = function(tag) { + var sym = AllSymbols[tag] = _objectCreate($Symbol[PROTOTYPE$2]); + sym._k = tag; + return sym; + }; + var isSymbol = USE_NATIVE && typeof $Symbol.iterator == "symbol" ? function(it) { + return typeof it == "symbol"; + } : function(it) { + return it instanceof $Symbol; + }; + var $defineProperty = function defineProperty2(it, key, D) { + if (it === ObjectProto) + $defineProperty(OPSymbols, key, D); + _anObject(it); + key = _toPrimitive(key, true); + _anObject(D); + if (_has(AllSymbols, key)) { + if (!D.enumerable) { + if (!_has(it, HIDDEN)) + dP$1(it, HIDDEN, _propertyDesc(1, {})); + it[HIDDEN][key] = true; + } else { + if (_has(it, HIDDEN) && it[HIDDEN][key]) + it[HIDDEN][key] = false; + D = _objectCreate(D, { enumerable: _propertyDesc(0, false) }); + } + return setSymbolDesc(it, key, D); + } + return dP$1(it, key, D); + }; + var $defineProperties = function defineProperties2(it, P) { + _anObject(it); + var keys2 = _enumKeys(P = _toIobject(P)); + var i2 = 0; + var l2 = keys2.length; + var key; + while (l2 > i2) + $defineProperty(it, key = keys2[i2++], P[key]); + return it; + }; + var $create = function create2(it, P) { + return P === void 0 ? _objectCreate(it) : $defineProperties(_objectCreate(it), P); + }; + var $propertyIsEnumerable = function propertyIsEnumerable2(key) { + var E = isEnum.call(this, key = _toPrimitive(key, true)); + if (this === ObjectProto && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return false; + return E || !_has(this, key) || !_has(AllSymbols, key) || _has(this, HIDDEN) && this[HIDDEN][key] ? E : true; + }; + var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + it = _toIobject(it); + key = _toPrimitive(key, true); + if (it === ObjectProto && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return; + var D = gOPD$1(it, key); + if (D && _has(AllSymbols, key) && !(_has(it, HIDDEN) && it[HIDDEN][key])) + D.enumerable = true; + return D; + }; + var $getOwnPropertyNames = function getOwnPropertyNames(it) { + var names = gOPN$1(_toIobject(it)); + var result = []; + var i2 = 0; + var key; + while (names.length > i2) { + if (!_has(AllSymbols, key = names[i2++]) && key != HIDDEN && key != META) + result.push(key); + } + return result; + }; + var $getOwnPropertySymbols = function getOwnPropertySymbols2(it) { + var IS_OP = it === ObjectProto; + var names = gOPN$1(IS_OP ? OPSymbols : _toIobject(it)); + var result = []; + var i2 = 0; + var key; + while (names.length > i2) { + if (_has(AllSymbols, key = names[i2++]) && (IS_OP ? _has(ObjectProto, key) : true)) + result.push(AllSymbols[key]); + } + return result; + }; + if (!USE_NATIVE) { + $Symbol = function Symbol2() { + if (this instanceof $Symbol) + throw TypeError("Symbol is not a constructor!"); + var tag = _uid(arguments.length > 0 ? arguments[0] : void 0); + var $set = function(value) { + if (this === ObjectProto) + $set.call(OPSymbols, value); + if (_has(this, HIDDEN) && _has(this[HIDDEN], tag)) + this[HIDDEN][tag] = false; + setSymbolDesc(this, tag, _propertyDesc(1, value)); + }; + if (_descriptors && setter) + setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); + return wrap2(tag); + }; + _redefine($Symbol[PROTOTYPE$2], "toString", function toString4() { + return this._k; + }); + _objectGopd.f = $getOwnPropertyDescriptor; + _objectDp.f = $defineProperty; + _objectGopn.f = _objectGopnExt.f = $getOwnPropertyNames; + _objectPie.f = $propertyIsEnumerable; + _objectGops.f = $getOwnPropertySymbols; + if (_descriptors && !_library) { + _redefine(ObjectProto, "propertyIsEnumerable", $propertyIsEnumerable, true); + } + _wksExt.f = function(name) { + return wrap2(_wks(name)); + }; + } + _export(_export.G + _export.W + _export.F * !USE_NATIVE, { Symbol: $Symbol }); + for (es6Symbols = // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 + "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), j = 0; es6Symbols.length > j; ) + _wks(es6Symbols[j++]); + var es6Symbols; + var j; + for (wellKnownSymbols = _objectKeys(_wks.store), k = 0; wellKnownSymbols.length > k; ) + _wksDefine(wellKnownSymbols[k++]); + var wellKnownSymbols; + var k; + _export(_export.S + _export.F * !USE_NATIVE, "Symbol", { + // 19.4.2.1 Symbol.for(key) + "for": function(key) { + return _has(SymbolRegistry, key += "") ? SymbolRegistry[key] : SymbolRegistry[key] = $Symbol(key); + }, + // 19.4.2.5 Symbol.keyFor(sym) + keyFor: function keyFor2(sym) { + if (!isSymbol(sym)) + throw TypeError(sym + " is not a symbol!"); + for (var key in SymbolRegistry) + if (SymbolRegistry[key] === sym) + return key; + }, + useSetter: function() { + setter = true; + }, + useSimple: function() { + setter = false; + } + }); + _export(_export.S + _export.F * !USE_NATIVE, "Object", { + // 19.1.2.2 Object.create(O [, Properties]) + create: $create, + // 19.1.2.4 Object.defineProperty(O, P, Attributes) + defineProperty: $defineProperty, + // 19.1.2.3 Object.defineProperties(O, Properties) + defineProperties: $defineProperties, + // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) + getOwnPropertyDescriptor: $getOwnPropertyDescriptor, + // 19.1.2.7 Object.getOwnPropertyNames(O) + getOwnPropertyNames: $getOwnPropertyNames, + // 19.1.2.8 Object.getOwnPropertySymbols(O) + getOwnPropertySymbols: $getOwnPropertySymbols + }); + var FAILS_ON_PRIMITIVES = _fails(function() { + _objectGops.f(1); + }); + _export(_export.S + _export.F * FAILS_ON_PRIMITIVES, "Object", { + getOwnPropertySymbols: function getOwnPropertySymbols2(it) { + return _objectGops.f(_toObject(it)); + } + }); + $JSON && _export(_export.S + _export.F * (!USE_NATIVE || _fails(function() { + var S = $Symbol(); + return _stringify([S]) != "[null]" || _stringify({ a: S }) != "{}" || _stringify(Object(S)) != "{}"; + })), "JSON", { + stringify: function stringify2(it) { + var args3 = [it]; + var i2 = 1; + var replacer, $replacer; + while (arguments.length > i2) + args3.push(arguments[i2++]); + $replacer = replacer = args3[1]; + if (!_isObject(replacer) && it === void 0 || isSymbol(it)) + return; + if (!_isArray(replacer)) + replacer = function(key, value) { + if (typeof $replacer == "function") + value = $replacer.call(this, key, value); + if (!isSymbol(value)) + return value; + }; + args3[1] = replacer; + return _stringify.apply($JSON, args3); + } + }); + $Symbol[PROTOTYPE$2][TO_PRIMITIVE] || _hide($Symbol[PROTOTYPE$2], TO_PRIMITIVE, $Symbol[PROTOTYPE$2].valueOf); + _setToStringTag($Symbol, "Symbol"); + _setToStringTag(Math, "Math", true); + _setToStringTag(_global2.JSON, "JSON", true); + var es6_object_toString = /* @__PURE__ */ Object.freeze({}); + _wksDefine("asyncIterator"); + _wksDefine("observable"); + getCjsExportFromNamespace(es6_object_toString); + var symbol = _core.Symbol; + var symbol$1 = symbol; + var _iterStep = function(done, value) { + return { value, done: !!done }; + }; + var _iterators = {}; + var IteratorPrototype = {}; + _hide(IteratorPrototype, _wks("iterator"), function() { + return this; + }); + var _iterCreate = function(Constructor, NAME2, next) { + Constructor.prototype = _objectCreate(IteratorPrototype, { next: _propertyDesc(1, next) }); + _setToStringTag(Constructor, NAME2 + " Iterator"); + }; + var IE_PROTO$2 = _sharedKey("IE_PROTO"); + var ObjectProto$1 = Object.prototype; + var _objectGpo = Object.getPrototypeOf || function(O) { + O = _toObject(O); + if (_has(O, IE_PROTO$2)) + return O[IE_PROTO$2]; + if (typeof O.constructor == "function" && O instanceof O.constructor) { + return O.constructor.prototype; + } + return O instanceof Object ? ObjectProto$1 : null; + }; + var ITERATOR = _wks("iterator"); + var BUGGY = !([].keys && "next" in [].keys()); + var FF_ITERATOR = "@@iterator"; + var KEYS = "keys"; + var VALUES = "values"; + var returnThis = function() { + return this; + }; + var _iterDefine = function(Base, NAME2, Constructor, next, DEFAULT, IS_SET, FORCED) { + _iterCreate(Constructor, NAME2, next); + var getMethod = function(kind) { + if (!BUGGY && kind in proto2) + return proto2[kind]; + switch (kind) { + case KEYS: + return function keys2() { + return new Constructor(this, kind); + }; + case VALUES: + return function values2() { + return new Constructor(this, kind); + }; + } + return function entries() { + return new Constructor(this, kind); + }; + }; + var TAG2 = NAME2 + " Iterator"; + var DEF_VALUES = DEFAULT == VALUES; + var VALUES_BUG = false; + var proto2 = Base.prototype; + var $native = proto2[ITERATOR] || proto2[FF_ITERATOR] || DEFAULT && proto2[DEFAULT]; + var $default = $native || getMethod(DEFAULT); + var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod("entries") : void 0; + var $anyNative = NAME2 == "Array" ? proto2.entries || $native : $native; + var methods, key, IteratorPrototype2; + if ($anyNative) { + IteratorPrototype2 = _objectGpo($anyNative.call(new Base())); + if (IteratorPrototype2 !== Object.prototype && IteratorPrototype2.next) { + _setToStringTag(IteratorPrototype2, TAG2, true); + } + } + if (DEF_VALUES && $native && $native.name !== VALUES) { + VALUES_BUG = true; + $default = function values2() { + return $native.call(this); + }; + } + if (FORCED && (BUGGY || VALUES_BUG || !proto2[ITERATOR])) { + _hide(proto2, ITERATOR, $default); + } + _iterators[NAME2] = $default; + _iterators[TAG2] = returnThis; + if (DEFAULT) { + methods = { + values: DEF_VALUES ? $default : getMethod(VALUES), + keys: IS_SET ? $default : getMethod(KEYS), + entries: $entries + }; + if (FORCED) + for (key in methods) { + if (!(key in proto2)) + _redefine(proto2, key, methods[key]); + } + else + _export(_export.P + _export.F * (BUGGY || VALUES_BUG), NAME2, methods); + } + return methods; + }; + var es6_array_iterator = _iterDefine(Array, "Array", function(iterated, kind) { + this._t = _toIobject(iterated); + this._i = 0; + this._k = kind; + }, function() { + var O = this._t; + var kind = this._k; + var index = this._i++; + if (!O || index >= O.length) { + this._t = void 0; + return _iterStep(1); + } + if (kind == "keys") + return _iterStep(0, index); + if (kind == "values") + return _iterStep(0, O[index]); + return _iterStep(0, [index, O[index]]); + }, "values"); + _iterators.Arguments = _iterators.Array; + var TO_STRING_TAG = _wks("toStringTag"); + var DOMIterables = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","); + for (i = 0; i < DOMIterables.length; i++) { + NAME = DOMIterables[i]; + Collection = _global2[NAME]; + proto = Collection && Collection.prototype; + if (proto && !proto[TO_STRING_TAG]) + _hide(proto, TO_STRING_TAG, NAME); + _iterators[NAME] = _iterators.Array; + } + var NAME; + var Collection; + var proto; + var i; + var SPECIES = _wks("species"); + var _arraySpeciesConstructor = function(original) { + var C2; + if (_isArray(original)) { + C2 = original.constructor; + if (typeof C2 == "function" && (C2 === Array || _isArray(C2.prototype))) + C2 = void 0; + if (_isObject(C2)) { + C2 = C2[SPECIES]; + if (C2 === null) + C2 = void 0; + } + } + return C2 === void 0 ? Array : C2; + }; + var _arraySpeciesCreate = function(original, length) { + return new (_arraySpeciesConstructor(original))(length); + }; + var _arrayMethods = function(TYPE2, $create2) { + var IS_MAP = TYPE2 == 1; + var IS_FILTER = TYPE2 == 2; + var IS_SOME = TYPE2 == 3; + var IS_EVERY = TYPE2 == 4; + var IS_FIND_INDEX = TYPE2 == 6; + var NO_HOLES = TYPE2 == 5 || IS_FIND_INDEX; + var create2 = $create2 || _arraySpeciesCreate; + return function($this, callbackfn, that) { + var O = _toObject($this); + var self2 = _iobject(O); + var f2 = _ctx(callbackfn, that, 3); + var length = _toLength(self2.length); + var index = 0; + var result = IS_MAP ? create2($this, length) : IS_FILTER ? create2($this, 0) : void 0; + var val, res; + for (; length > index; index++) + if (NO_HOLES || index in self2) { + val = self2[index]; + res = f2(val, index, O); + if (TYPE2) { + if (IS_MAP) + result[index] = res; + else if (res) + switch (TYPE2) { + case 3: + return true; + case 5: + return val; + case 6: + return index; + case 2: + result.push(val); + } + else if (IS_EVERY) + return false; + } + } + return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result; + }; + }; + var $assign = Object.assign; + var _objectAssign = !$assign || _fails(function() { + var A = {}; + var B = {}; + var S = Symbol(); + var K = "abcdefghijklmnopqrst"; + A[S] = 7; + K.split("").forEach(function(k2) { + B[k2] = k2; + }); + return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join("") != K; + }) ? function assign2(target, source2) { + var T = _toObject(target); + var aLen = arguments.length; + var index = 1; + var getSymbols = _objectGops.f; + var isEnum2 = _objectPie.f; + while (aLen > index) { + var S = _iobject(arguments[index++]); + var keys2 = getSymbols ? _objectKeys(S).concat(getSymbols(S)) : _objectKeys(S); + var length = keys2.length; + var j2 = 0; + var key; + while (length > j2) { + key = keys2[j2++]; + if (!_descriptors || isEnum2.call(S, key)) + T[key] = S[key]; + } + } + return T; + } : $assign; + var _redefineAll = function(target, src, safe) { + for (var key in src) { + if (safe && target[key]) + target[key] = src[key]; + else + _hide(target, key, src[key]); + } + return target; + }; + var _anInstance = function(it, Constructor, name, forbiddenField) { + if (!(it instanceof Constructor) || forbiddenField !== void 0 && forbiddenField in it) { + throw TypeError(name + ": incorrect invocation!"); + } + return it; + }; + var _iterCall = function(iterator, fn, value, entries) { + try { + return entries ? fn(_anObject(value)[0], value[1]) : fn(value); + } catch (e) { + var ret2 = iterator["return"]; + if (ret2 !== void 0) + _anObject(ret2.call(iterator)); + throw e; + } + }; + var ITERATOR$1 = _wks("iterator"); + var ArrayProto = Array.prototype; + var _isArrayIter = function(it) { + return it !== void 0 && (_iterators.Array === it || ArrayProto[ITERATOR$1] === it); + }; + var TAG$1 = _wks("toStringTag"); + var ARG = _cof(function() { + return arguments; + }()) == "Arguments"; + var tryGet = function(it, key) { + try { + return it[key]; + } catch (e) { + } + }; + var _classof = function(it) { + var O, T, B; + return it === void 0 ? "Undefined" : it === null ? "Null" : typeof (T = tryGet(O = Object(it), TAG$1)) == "string" ? T : ARG ? _cof(O) : (B = _cof(O)) == "Object" && typeof O.callee == "function" ? "Arguments" : B; + }; + var ITERATOR$2 = _wks("iterator"); + var core_getIteratorMethod = _core.getIteratorMethod = function(it) { + if (it != void 0) + return it[ITERATOR$2] || it["@@iterator"] || _iterators[_classof(it)]; + }; + var _forOf = createCommonjsModule(function(module3) { + var BREAK = {}; + var RETURN = {}; + var exports3 = module3.exports = function(iterable, entries, fn, that, ITERATOR2) { + var iterFn = ITERATOR2 ? function() { + return iterable; + } : core_getIteratorMethod(iterable); + var f2 = _ctx(fn, that, entries ? 2 : 1); + var index = 0; + var length, step, iterator, result; + if (typeof iterFn != "function") + throw TypeError(iterable + " is not iterable!"); + if (_isArrayIter(iterFn)) + for (length = _toLength(iterable.length); length > index; index++) { + result = entries ? f2(_anObject(step = iterable[index])[0], step[1]) : f2(iterable[index]); + if (result === BREAK || result === RETURN) + return result; + } + else + for (iterator = iterFn.call(iterable); !(step = iterator.next()).done; ) { + result = _iterCall(iterator, f2, step.value, entries); + if (result === BREAK || result === RETURN) + return result; + } + }; + exports3.BREAK = BREAK; + exports3.RETURN = RETURN; + }); + var _validateCollection = function(it, TYPE2) { + if (!_isObject(it) || it._t !== TYPE2) + throw TypeError("Incompatible receiver, " + TYPE2 + " required!"); + return it; + }; + var getWeak = _meta.getWeak; + var arrayFind = _arrayMethods(5); + var arrayFindIndex = _arrayMethods(6); + var id$1 = 0; + var uncaughtFrozenStore = function(that) { + return that._l || (that._l = new UncaughtFrozenStore()); + }; + var UncaughtFrozenStore = function() { + this.a = []; + }; + var findUncaughtFrozen = function(store, key) { + return arrayFind(store.a, function(it) { + return it[0] === key; + }); + }; + UncaughtFrozenStore.prototype = { + get: function(key) { + var entry = findUncaughtFrozen(this, key); + if (entry) + return entry[1]; + }, + has: function(key) { + return !!findUncaughtFrozen(this, key); + }, + set: function(key, value) { + var entry = findUncaughtFrozen(this, key); + if (entry) + entry[1] = value; + else + this.a.push([key, value]); + }, + "delete": function(key) { + var index = arrayFindIndex(this.a, function(it) { + return it[0] === key; + }); + if (~index) + this.a.splice(index, 1); + return !!~index; + } + }; + var _collectionWeak = { + getConstructor: function(wrapper, NAME2, IS_MAP, ADDER) { + var C2 = wrapper(function(that, iterable) { + _anInstance(that, C2, NAME2, "_i"); + that._t = NAME2; + that._i = id$1++; + that._l = void 0; + if (iterable != void 0) + _forOf(iterable, IS_MAP, that[ADDER], that); + }); + _redefineAll(C2.prototype, { + // 23.3.3.2 WeakMap.prototype.delete(key) + // 23.4.3.3 WeakSet.prototype.delete(value) + "delete": function(key) { + if (!_isObject(key)) + return false; + var data = getWeak(key); + if (data === true) + return uncaughtFrozenStore(_validateCollection(this, NAME2))["delete"](key); + return data && _has(data, this._i) && delete data[this._i]; + }, + // 23.3.3.4 WeakMap.prototype.has(key) + // 23.4.3.4 WeakSet.prototype.has(value) + has: function has(key) { + if (!_isObject(key)) + return false; + var data = getWeak(key); + if (data === true) + return uncaughtFrozenStore(_validateCollection(this, NAME2)).has(key); + return data && _has(data, this._i); + } + }); + return C2; + }, + def: function(that, key, value) { + var data = getWeak(_anObject(key), true); + if (data === true) + uncaughtFrozenStore(that).set(key, value); + else + data[that._i] = value; + return that; + }, + ufstore: uncaughtFrozenStore + }; + var dP$2 = _objectDp.f; + var each = _arrayMethods(0); + var _collection = function(NAME2, wrapper, methods, common, IS_MAP, IS_WEAK) { + var Base = _global2[NAME2]; + var C2 = Base; + var ADDER = IS_MAP ? "set" : "add"; + var proto2 = C2 && C2.prototype; + var O = {}; + if (!_descriptors || typeof C2 != "function" || !(IS_WEAK || proto2.forEach && !_fails(function() { + new C2().entries().next(); + }))) { + C2 = common.getConstructor(wrapper, NAME2, IS_MAP, ADDER); + _redefineAll(C2.prototype, methods); + _meta.NEED = true; + } else { + C2 = wrapper(function(target, iterable) { + _anInstance(target, C2, NAME2, "_c"); + target._c = new Base(); + if (iterable != void 0) + _forOf(iterable, IS_MAP, target[ADDER], target); + }); + each("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","), function(KEY) { + var IS_ADDER = KEY == "add" || KEY == "set"; + if (KEY in proto2 && !(IS_WEAK && KEY == "clear")) + _hide(C2.prototype, KEY, function(a, b) { + _anInstance(this, C2, KEY); + if (!IS_ADDER && IS_WEAK && !_isObject(a)) + return KEY == "get" ? void 0 : false; + var result = this._c[KEY](a === 0 ? 0 : a, b); + return IS_ADDER ? this : result; + }); + }); + IS_WEAK || dP$2(C2.prototype, "size", { + get: function() { + return this._c.size; + } + }); + } + _setToStringTag(C2, NAME2); + O[NAME2] = C2; + _export(_export.G + _export.W + _export.F, O); + if (!IS_WEAK) + common.setStrong(C2, NAME2, IS_MAP); + return C2; + }; + var es6_weakMap = createCommonjsModule(function(module3) { + var each2 = _arrayMethods(0); + var NATIVE_WEAK_MAP = _validateCollection; + var IS_IE11 = !_global2.ActiveXObject && "ActiveXObject" in _global2; + var WEAK_MAP = "WeakMap"; + var getWeak2 = _meta.getWeak; + var isExtensible = Object.isExtensible; + var uncaughtFrozenStore2 = _collectionWeak.ufstore; + var InternalMap; + var wrapper = function(get2) { + return function WeakMap2() { + return get2(this, arguments.length > 0 ? arguments[0] : void 0); + }; + }; + var methods = { + // 23.3.3.3 WeakMap.prototype.get(key) + get: function get2(key) { + if (_isObject(key)) { + var data = getWeak2(key); + if (data === true) + return uncaughtFrozenStore2(_validateCollection(this, WEAK_MAP)).get(key); + return data ? data[this._i] : void 0; + } + }, + // 23.3.3.5 WeakMap.prototype.set(key, value) + set: function set2(key, value) { + return _collectionWeak.def(_validateCollection(this, WEAK_MAP), key, value); + } + }; + var $WeakMap = module3.exports = _collection(WEAK_MAP, wrapper, methods, _collectionWeak, true, true); + if (NATIVE_WEAK_MAP && IS_IE11) { + InternalMap = _collectionWeak.getConstructor(wrapper, WEAK_MAP); + _objectAssign(InternalMap.prototype, methods); + _meta.NEED = true; + each2(["delete", "has", "get", "set"], function(key) { + var proto2 = $WeakMap.prototype; + var method2 = proto2[key]; + _redefine(proto2, key, function(a, b) { + if (_isObject(a) && !isExtensible(a)) { + if (!this._f) + this._f = new InternalMap(); + var result = this._f[key](a, b); + return key == "set" ? this : result; + } + return method2.call(this, a, b); + }); + }); + } + }); + var _setCollectionOf = function(COLLECTION) { + _export(_export.S, COLLECTION, { of: function of() { + var length = arguments.length; + var A = new Array(length); + while (length--) + A[length] = arguments[length]; + return new this(A); + } }); + }; + _setCollectionOf("WeakMap"); + var _setCollectionFrom = function(COLLECTION) { + _export(_export.S, COLLECTION, { from: function from(source2) { + var mapFn = arguments[1]; + var mapping2, A, n, cb; + _aFunction(this); + mapping2 = mapFn !== void 0; + if (mapping2) + _aFunction(mapFn); + if (source2 == void 0) + return new this(); + A = []; + if (mapping2) { + n = 0; + cb = _ctx(mapFn, arguments[2], 2); + _forOf(source2, false, function(nextItem) { + A.push(cb(nextItem, n++)); + }); + } else { + _forOf(source2, false, A.push, A); + } + return new this(A); + } }); + }; + _setCollectionFrom("WeakMap"); + var weakMap = _core.WeakMap; + var weakMap$1 = weakMap; + var _stringAt = function(TO_STRING) { + return function(that, pos) { + var s = String(_defined(that)); + var i2 = _toInteger(pos); + var l2 = s.length; + var a, b; + if (i2 < 0 || i2 >= l2) + return TO_STRING ? "" : void 0; + a = s.charCodeAt(i2); + return a < 55296 || a > 56319 || i2 + 1 === l2 || (b = s.charCodeAt(i2 + 1)) < 56320 || b > 57343 ? TO_STRING ? s.charAt(i2) : a : TO_STRING ? s.slice(i2, i2 + 2) : (a - 55296 << 10) + (b - 56320) + 65536; + }; + }; + var $at = _stringAt(true); + _iterDefine(String, "String", function(iterated) { + this._t = String(iterated); + this._i = 0; + }, function() { + var O = this._t; + var index = this._i; + var point; + if (index >= O.length) + return { value: void 0, done: true }; + point = $at(O, index); + this._i += point.length; + return { value: point, done: false }; + }); + var SPECIES$1 = _wks("species"); + var _setSpecies = function(KEY) { + var C2 = typeof _core[KEY] == "function" ? _core[KEY] : _global2[KEY]; + if (_descriptors && C2 && !C2[SPECIES$1]) + _objectDp.f(C2, SPECIES$1, { + configurable: true, + get: function() { + return this; + } + }); + }; + var dP$3 = _objectDp.f; + var fastKey = _meta.fastKey; + var SIZE = _descriptors ? "_s" : "size"; + var getEntry = function(that, key) { + var index = fastKey(key); + var entry; + if (index !== "F") + return that._i[index]; + for (entry = that._f; entry; entry = entry.n) { + if (entry.k == key) + return entry; + } + }; + var _collectionStrong = { + getConstructor: function(wrapper, NAME2, IS_MAP, ADDER) { + var C2 = wrapper(function(that, iterable) { + _anInstance(that, C2, NAME2, "_i"); + that._t = NAME2; + that._i = _objectCreate(null); + that._f = void 0; + that._l = void 0; + that[SIZE] = 0; + if (iterable != void 0) + _forOf(iterable, IS_MAP, that[ADDER], that); + }); + _redefineAll(C2.prototype, { + // 23.1.3.1 Map.prototype.clear() + // 23.2.3.2 Set.prototype.clear() + clear: function clear() { + for (var that = _validateCollection(this, NAME2), data = that._i, entry = that._f; entry; entry = entry.n) { + entry.r = true; + if (entry.p) + entry.p = entry.p.n = void 0; + delete data[entry.i]; + } + that._f = that._l = void 0; + that[SIZE] = 0; + }, + // 23.1.3.3 Map.prototype.delete(key) + // 23.2.3.4 Set.prototype.delete(value) + "delete": function(key) { + var that = _validateCollection(this, NAME2); + var entry = getEntry(that, key); + if (entry) { + var next = entry.n; + var prev = entry.p; + delete that._i[entry.i]; + entry.r = true; + if (prev) + prev.n = next; + if (next) + next.p = prev; + if (that._f == entry) + that._f = next; + if (that._l == entry) + that._l = prev; + that[SIZE]--; + } + return !!entry; + }, + // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) + // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) + forEach: function forEach2(callbackfn) { + _validateCollection(this, NAME2); + var f2 = _ctx(callbackfn, arguments.length > 1 ? arguments[1] : void 0, 3); + var entry; + while (entry = entry ? entry.n : this._f) { + f2(entry.v, entry.k, this); + while (entry && entry.r) + entry = entry.p; + } + }, + // 23.1.3.7 Map.prototype.has(key) + // 23.2.3.7 Set.prototype.has(value) + has: function has(key) { + return !!getEntry(_validateCollection(this, NAME2), key); + } + }); + if (_descriptors) + dP$3(C2.prototype, "size", { + get: function() { + return _validateCollection(this, NAME2)[SIZE]; + } + }); + return C2; + }, + def: function(that, key, value) { + var entry = getEntry(that, key); + var prev, index; + if (entry) { + entry.v = value; + } else { + that._l = entry = { + i: index = fastKey(key, true), + // <- index + k: key, + // <- key + v: value, + // <- value + p: prev = that._l, + // <- previous entry + n: void 0, + // <- next entry + r: false + // <- removed + }; + if (!that._f) + that._f = entry; + if (prev) + prev.n = entry; + that[SIZE]++; + if (index !== "F") + that._i[index] = entry; + } + return that; + }, + getEntry, + setStrong: function(C2, NAME2, IS_MAP) { + _iterDefine(C2, NAME2, function(iterated, kind) { + this._t = _validateCollection(iterated, NAME2); + this._k = kind; + this._l = void 0; + }, function() { + var that = this; + var kind = that._k; + var entry = that._l; + while (entry && entry.r) + entry = entry.p; + if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) { + that._t = void 0; + return _iterStep(1); + } + if (kind == "keys") + return _iterStep(0, entry.k); + if (kind == "values") + return _iterStep(0, entry.v); + return _iterStep(0, [entry.k, entry.v]); + }, IS_MAP ? "entries" : "values", !IS_MAP, true); + _setSpecies(NAME2); + } + }; + var MAP = "Map"; + var es6_map = _collection(MAP, function(get2) { + return function Map3() { + return get2(this, arguments.length > 0 ? arguments[0] : void 0); + }; + }, { + // 23.1.3.6 Map.prototype.get(key) + get: function get2(key) { + var entry = _collectionStrong.getEntry(_validateCollection(this, MAP), key); + return entry && entry.v; + }, + // 23.1.3.9 Map.prototype.set(key, value) + set: function set2(key, value) { + return _collectionStrong.def(_validateCollection(this, MAP), key === 0 ? 0 : key, value); + } + }, _collectionStrong, true); + var _arrayFromIterable = function(iter, ITERATOR2) { + var result = []; + _forOf(iter, false, result.push, result, ITERATOR2); + return result; + }; + var _collectionToJson = function(NAME2) { + return function toJSON2() { + if (_classof(this) != NAME2) + throw TypeError(NAME2 + "#toJSON isn't generic"); + return _arrayFromIterable(this); + }; + }; + _export(_export.P + _export.R, "Map", { toJSON: _collectionToJson("Map") }); + _setCollectionOf("Map"); + _setCollectionFrom("Map"); + var map = _core.Map; + var map$1 = map; + var isEnum$1 = _objectPie.f; + var _objectToArray = function(isEntries) { + return function(it) { + var O = _toIobject(it); + var keys2 = _objectKeys(O); + var length = keys2.length; + var i2 = 0; + var result = []; + var key; + while (length > i2) { + key = keys2[i2++]; + if (!_descriptors || isEnum$1.call(O, key)) { + result.push(isEntries ? [key, O[key]] : O[key]); + } + } + return result; + }; + }; + var $values = _objectToArray(false); + _export(_export.S, "Object", { + values: function values2(it) { + return $values(it); + } + }); + var values = _core.Object.values; + var values$1 = values; + var SPECIES$2 = _wks("species"); + var _speciesConstructor = function(O, D) { + var C2 = _anObject(O).constructor; + var S; + return C2 === void 0 || (S = _anObject(C2)[SPECIES$2]) == void 0 ? D : _aFunction(S); + }; + var _invoke = function(fn, args3, that) { + var un = that === void 0; + switch (args3.length) { + case 0: + return un ? fn() : fn.call(that); + case 1: + return un ? fn(args3[0]) : fn.call(that, args3[0]); + case 2: + return un ? fn(args3[0], args3[1]) : fn.call(that, args3[0], args3[1]); + case 3: + return un ? fn(args3[0], args3[1], args3[2]) : fn.call(that, args3[0], args3[1], args3[2]); + case 4: + return un ? fn(args3[0], args3[1], args3[2], args3[3]) : fn.call(that, args3[0], args3[1], args3[2], args3[3]); + } + return fn.apply(that, args3); + }; + var process3 = _global2.process; + var setTask = _global2.setImmediate; + var clearTask = _global2.clearImmediate; + var MessageChannel2 = _global2.MessageChannel; + var Dispatch = _global2.Dispatch; + var counter = 0; + var queue = {}; + var ONREADYSTATECHANGE = "onreadystatechange"; + var defer2; + var channel; + var port; + var run2 = function() { + var id2 = +this; + if (queue.hasOwnProperty(id2)) { + var fn = queue[id2]; + delete queue[id2]; + fn(); + } + }; + var listener = function(event) { + run2.call(event.data); + }; + if (!setTask || !clearTask) { + setTask = function setImmediate2(fn) { + var args3 = []; + var i2 = 1; + while (arguments.length > i2) + args3.push(arguments[i2++]); + queue[++counter] = function() { + _invoke(typeof fn == "function" ? fn : Function(fn), args3); + }; + defer2(counter); + return counter; + }; + clearTask = function clearImmediate2(id2) { + delete queue[id2]; + }; + if (_cof(process3) == "process") { + defer2 = function(id2) { + process3.nextTick(_ctx(run2, id2, 1)); + }; + } else if (Dispatch && Dispatch.now) { + defer2 = function(id2) { + Dispatch.now(_ctx(run2, id2, 1)); + }; + } else if (MessageChannel2) { + channel = new MessageChannel2(); + port = channel.port2; + channel.port1.onmessage = listener; + defer2 = _ctx(port.postMessage, port, 1); + } else if (_global2.addEventListener && typeof postMessage == "function" && !_global2.importScripts) { + defer2 = function(id2) { + _global2.postMessage(id2 + "", "*"); + }; + _global2.addEventListener("message", listener, false); + } else if (ONREADYSTATECHANGE in _domCreate("script")) { + defer2 = function(id2) { + _html.appendChild(_domCreate("script"))[ONREADYSTATECHANGE] = function() { + _html.removeChild(this); + run2.call(id2); + }; + }; + } else { + defer2 = function(id2) { + setTimeout(_ctx(run2, id2, 1), 0); + }; + } + } + var _task = { + set: setTask, + clear: clearTask + }; + var macrotask = _task.set; + var Observer = _global2.MutationObserver || _global2.WebKitMutationObserver; + var process$1 = _global2.process; + var Promise2 = _global2.Promise; + var isNode2 = _cof(process$1) == "process"; + var _microtask = function() { + var head, last, notify2; + var flush = function() { + var parent, fn; + if (isNode2 && (parent = process$1.domain)) + parent.exit(); + while (head) { + fn = head.fn; + head = head.next; + try { + fn(); + } catch (e) { + if (head) + notify2(); + else + last = void 0; + throw e; + } + } + last = void 0; + if (parent) + parent.enter(); + }; + if (isNode2) { + notify2 = function() { + process$1.nextTick(flush); + }; + } else if (Observer && !(_global2.navigator && _global2.navigator.standalone)) { + var toggle = true; + var node = document.createTextNode(""); + new Observer(flush).observe(node, { characterData: true }); + notify2 = function() { + node.data = toggle = !toggle; + }; + } else if (Promise2 && Promise2.resolve) { + var promise2 = Promise2.resolve(void 0); + notify2 = function() { + promise2.then(flush); + }; + } else { + notify2 = function() { + macrotask.call(_global2, flush); + }; + } + return function(fn) { + var task2 = { fn, next: void 0 }; + if (last) + last.next = task2; + if (!head) { + head = task2; + notify2(); + } + last = task2; + }; + }; + function PromiseCapability(C2) { + var resolve8, reject; + this.promise = new C2(function($$resolve, $$reject) { + if (resolve8 !== void 0 || reject !== void 0) + throw TypeError("Bad Promise constructor"); + resolve8 = $$resolve; + reject = $$reject; + }); + this.resolve = _aFunction(resolve8); + this.reject = _aFunction(reject); + } + var f$7 = function(C2) { + return new PromiseCapability(C2); + }; + var _newPromiseCapability = { + f: f$7 + }; + var _perform = function(exec3) { + try { + return { e: false, v: exec3() }; + } catch (e) { + return { e: true, v: e }; + } + }; + var navigator2 = _global2.navigator; + var _userAgent = navigator2 && navigator2.userAgent || ""; + var _promiseResolve = function(C2, x) { + _anObject(C2); + if (_isObject(x) && x.constructor === C2) + return x; + var promiseCapability = _newPromiseCapability.f(C2); + var resolve8 = promiseCapability.resolve; + resolve8(x); + return promiseCapability.promise; + }; + var ITERATOR$3 = _wks("iterator"); + var SAFE_CLOSING = false; + try { + riter = [7][ITERATOR$3](); + riter["return"] = function() { + SAFE_CLOSING = true; + }; + Array.from(riter, function() { + throw 2; + }); + } catch (e) { + } + var riter; + var _iterDetect = function(exec3, skipClosing) { + if (!skipClosing && !SAFE_CLOSING) + return false; + var safe = false; + try { + var arr = [7]; + var iter = arr[ITERATOR$3](); + iter.next = function() { + return { done: safe = true }; + }; + arr[ITERATOR$3] = function() { + return iter; + }; + exec3(arr); + } catch (e) { + } + return safe; + }; + var task = _task.set; + var microtask = _microtask(); + var PROMISE = "Promise"; + var TypeError$1 = _global2.TypeError; + var process$2 = _global2.process; + var versions = process$2 && process$2.versions; + var v8 = versions && versions.v8 || ""; + var $Promise = _global2[PROMISE]; + var isNode$1 = _classof(process$2) == "process"; + var empty = function() { + }; + var Internal; + var newGenericPromiseCapability; + var OwnPromiseCapability; + var Wrapper; + var newPromiseCapability = newGenericPromiseCapability = _newPromiseCapability.f; + var USE_NATIVE$1 = !!function() { + try { + var promise2 = $Promise.resolve(1); + var FakePromise = (promise2.constructor = {})[_wks("species")] = function(exec3) { + exec3(empty, empty); + }; + return (isNode$1 || typeof PromiseRejectionEvent == "function") && promise2.then(empty) instanceof FakePromise && v8.indexOf("6.6") !== 0 && _userAgent.indexOf("Chrome/66") === -1; + } catch (e) { + } + }(); + var isThenable = function(it) { + var then; + return _isObject(it) && typeof (then = it.then) == "function" ? then : false; + }; + var notify = function(promise2, isReject) { + if (promise2._n) + return; + promise2._n = true; + var chain = promise2._c; + microtask(function() { + var value = promise2._v; + var ok = promise2._s == 1; + var i2 = 0; + var run3 = function(reaction) { + var handler = ok ? reaction.ok : reaction.fail; + var resolve8 = reaction.resolve; + var reject = reaction.reject; + var domain2 = reaction.domain; + var result, then, exited; + try { + if (handler) { + if (!ok) { + if (promise2._h == 2) + onHandleUnhandled(promise2); + promise2._h = 1; + } + if (handler === true) + result = value; + else { + if (domain2) + domain2.enter(); + result = handler(value); + if (domain2) { + domain2.exit(); + exited = true; + } + } + if (result === reaction.promise) { + reject(TypeError$1("Promise-chain cycle")); + } else if (then = isThenable(result)) { + then.call(result, resolve8, reject); + } else + resolve8(result); + } else + reject(value); + } catch (e) { + if (domain2 && !exited) + domain2.exit(); + reject(e); + } + }; + while (chain.length > i2) + run3(chain[i2++]); + promise2._c = []; + promise2._n = false; + if (isReject && !promise2._h) + onUnhandled(promise2); + }); + }; + var onUnhandled = function(promise2) { + task.call(_global2, function() { + var value = promise2._v; + var unhandled = isUnhandled(promise2); + var result, handler, console2; + if (unhandled) { + result = _perform(function() { + if (isNode$1) { + process$2.emit("unhandledRejection", value, promise2); + } else if (handler = _global2.onunhandledrejection) { + handler({ promise: promise2, reason: value }); + } else if ((console2 = _global2.console) && console2.error) { + console2.error("Unhandled promise rejection", value); + } + }); + promise2._h = isNode$1 || isUnhandled(promise2) ? 2 : 1; + } + promise2._a = void 0; + if (unhandled && result.e) + throw result.v; + }); + }; + var isUnhandled = function(promise2) { + return promise2._h !== 1 && (promise2._a || promise2._c).length === 0; + }; + var onHandleUnhandled = function(promise2) { + task.call(_global2, function() { + var handler; + if (isNode$1) { + process$2.emit("rejectionHandled", promise2); + } else if (handler = _global2.onrejectionhandled) { + handler({ promise: promise2, reason: promise2._v }); + } + }); + }; + var $reject = function(value) { + var promise2 = this; + if (promise2._d) + return; + promise2._d = true; + promise2 = promise2._w || promise2; + promise2._v = value; + promise2._s = 2; + if (!promise2._a) + promise2._a = promise2._c.slice(); + notify(promise2, true); + }; + var $resolve = function(value) { + var promise2 = this; + var then; + if (promise2._d) + return; + promise2._d = true; + promise2 = promise2._w || promise2; + try { + if (promise2 === value) + throw TypeError$1("Promise can't be resolved itself"); + if (then = isThenable(value)) { + microtask(function() { + var wrapper = { _w: promise2, _d: false }; + try { + then.call(value, _ctx($resolve, wrapper, 1), _ctx($reject, wrapper, 1)); + } catch (e) { + $reject.call(wrapper, e); + } + }); + } else { + promise2._v = value; + promise2._s = 1; + notify(promise2, false); + } + } catch (e) { + $reject.call({ _w: promise2, _d: false }, e); + } + }; + if (!USE_NATIVE$1) { + $Promise = function Promise3(executor) { + _anInstance(this, $Promise, PROMISE, "_h"); + _aFunction(executor); + Internal.call(this); + try { + executor(_ctx($resolve, this, 1), _ctx($reject, this, 1)); + } catch (err2) { + $reject.call(this, err2); + } + }; + Internal = function Promise3(executor) { + this._c = []; + this._a = void 0; + this._s = 0; + this._d = false; + this._v = void 0; + this._h = 0; + this._n = false; + }; + Internal.prototype = _redefineAll($Promise.prototype, { + // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) + then: function then(onFulfilled, onRejected) { + var reaction = newPromiseCapability(_speciesConstructor(this, $Promise)); + reaction.ok = typeof onFulfilled == "function" ? onFulfilled : true; + reaction.fail = typeof onRejected == "function" && onRejected; + reaction.domain = isNode$1 ? process$2.domain : void 0; + this._c.push(reaction); + if (this._a) + this._a.push(reaction); + if (this._s) + notify(this, false); + return reaction.promise; + }, + // 25.4.5.1 Promise.prototype.catch(onRejected) + "catch": function(onRejected) { + return this.then(void 0, onRejected); + } + }); + OwnPromiseCapability = function() { + var promise2 = new Internal(); + this.promise = promise2; + this.resolve = _ctx($resolve, promise2, 1); + this.reject = _ctx($reject, promise2, 1); + }; + _newPromiseCapability.f = newPromiseCapability = function(C2) { + return C2 === $Promise || C2 === Wrapper ? new OwnPromiseCapability(C2) : newGenericPromiseCapability(C2); + }; + } + _export(_export.G + _export.W + _export.F * !USE_NATIVE$1, { Promise: $Promise }); + _setToStringTag($Promise, PROMISE); + _setSpecies(PROMISE); + Wrapper = _core[PROMISE]; + _export(_export.S + _export.F * !USE_NATIVE$1, PROMISE, { + // 25.4.4.5 Promise.reject(r) + reject: function reject(r) { + var capability = newPromiseCapability(this); + var $$reject = capability.reject; + $$reject(r); + return capability.promise; + } + }); + _export(_export.S + _export.F * _library, PROMISE, { + // 25.4.4.6 Promise.resolve(x) + resolve: function resolve8(x) { + return _promiseResolve(this === Wrapper ? $Promise : this, x); + } + }); + _export(_export.S + _export.F * !(USE_NATIVE$1 && _iterDetect(function(iter) { + $Promise.all(iter)["catch"](empty); + })), PROMISE, { + // 25.4.4.1 Promise.all(iterable) + all: function all3(iterable) { + var C2 = this; + var capability = newPromiseCapability(C2); + var resolve8 = capability.resolve; + var reject = capability.reject; + var result = _perform(function() { + var values2 = []; + var index = 0; + var remaining = 1; + _forOf(iterable, false, function(promise2) { + var $index = index++; + var alreadyCalled = false; + values2.push(void 0); + remaining++; + C2.resolve(promise2).then(function(value) { + if (alreadyCalled) + return; + alreadyCalled = true; + values2[$index] = value; + --remaining || resolve8(values2); + }, reject); + }); + --remaining || resolve8(values2); + }); + if (result.e) + reject(result.v); + return capability.promise; + }, + // 25.4.4.4 Promise.race(iterable) + race: function race(iterable) { + var C2 = this; + var capability = newPromiseCapability(C2); + var reject = capability.reject; + var result = _perform(function() { + _forOf(iterable, false, function(promise2) { + C2.resolve(promise2).then(capability.resolve, reject); + }); + }); + if (result.e) + reject(result.v); + return capability.promise; + } + }); + _export(_export.P + _export.R, "Promise", { "finally": function(onFinally) { + var C2 = _speciesConstructor(this, _core.Promise || _global2.Promise); + var isFunction3 = typeof onFinally == "function"; + return this.then( + isFunction3 ? function(x) { + return _promiseResolve(C2, onFinally()).then(function() { + return x; + }); + } : onFinally, + isFunction3 ? function(e) { + return _promiseResolve(C2, onFinally()).then(function() { + throw e; + }); + } : onFinally + ); + } }); + _export(_export.S, "Promise", { "try": function(callbackfn) { + var promiseCapability = _newPromiseCapability.f(this); + var result = _perform(callbackfn); + (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); + return promiseCapability.promise; + } }); + var promise = _core.Promise; + var promise$1 = promise; + var version4 = "6.0.6"; + var FORMATTED_ACTIONS = { + [utils.ACTIONS.RECORD]: "Recorded", + [utils.ACTIONS.REPLAY]: "Replayed", + [utils.ACTIONS.INTERCEPT]: "Intercepted", + [utils.ACTIONS.PASSTHROUGH]: "Passthrough" + }; + var Logger = class { + constructor(polly) { + this.polly = polly; + this.log = logLevel.getLogger(`@pollyjs/core:${this.polly.recordingName}`); + this.log.setLevel(polly.config.logLevel); + } + connect() { + this._middleware = this.polly.server.any().on("error", (...args3) => this.logRequestError(...args3)).on("request", (...args3) => this.logRequest(...args3)).on("response", (...args3) => this.logRequestResponse(...args3)); + } + disconnect() { + this._middleware.off("error"); + this._middleware.off("response"); + } + logRequest(request) { + const { + log: log2 + } = request; + const debug = log2.getLevel() <= log2.levels.DEBUG; + log2.info(`Request: ${request.method} ${request.url}`, ...debug ? [{ + request + }] : []); + } + logRequestResponse(request, response) { + const { + log: log2 + } = request; + const debug = log2.getLevel() <= log2.levels.DEBUG; + log2.info(`Response: ${FORMATTED_ACTIONS[request.action]} \u279E ${request.method} ${request.url} ${response.statusCode} \u2022 ${request.responseTime}ms`, ...debug ? [{ + request, + response + }] : []); + } + logRequestError(request, error) { + const { + log: log2 + } = request; + const debug = log2.getLevel() <= log2.levels.DEBUG; + log2.error(`Errored \u279E ${request.method} ${request.url}`, error, ...debug ? [{ + request + }] : []); + } + }; + function keyFor(Factory) { + return `${Factory.type}:${Factory.id}`; + } + var Container = class { + constructor() { + this._registry = new map$1(); + } + /** + * Register a factory onto the container. + * + * @param {Function} Factory + */ + register(Factory) { + utils.assert(`Attempted to register ${Factory} but invalid factory provided. Expected function, received: "${typeof Factory}"`, typeof Factory === "function"); + const { + type: type2 + } = Factory; + const name = Factory.id; + utils.assert(`Invalid registration id provided. Expected string, received: "${typeof name}"`, typeof name === "string"); + utils.assert(`Invalid registration type provided. Expected string, received: "${typeof type2}"`, typeof type2 === "string"); + this._registry.set(keyFor(Factory), Factory); + } + /** + * Unregister a factory from the container via a key (e.g. `adapter:fetch`) + * or Factory class. + * + * @param {String|Function} keyOrFactory + */ + unregister(keyOrFactory) { + const { + _registry: registry + } = this; + const key = typeof keyOrFactory === "function" ? keyFor(keyOrFactory) : keyOrFactory; + registry.delete(key); + } + /** + * Lookup a factory by the given key (e.g. `adapter:fetch`) + * + * @param {String} key + * @returns {Function} + */ + lookup(key) { + return this._registry.get(key) || null; + } + /** + * Check if a factory has been registered via a key (e.g. `adapter:fetch`) + * or Factory class. + * + * @param {String|Function} keyOrFactory + * @returns {Boolean} + */ + has(keyOrFactory) { + const { + _registry: registry + } = this; + const key = typeof keyOrFactory === "function" ? keyFor(keyOrFactory) : keyOrFactory; + return registry.has(key); + } + }; + var Timing = { + fixed(ms) { + return () => utils.timeout(ms); + }, + relative(ratio) { + return (ms) => utils.timeout(ratio * ms); + } + }; + var DefaultConfig = { + mode: utils.MODES.REPLAY, + adapters: [], + adapterOptions: {}, + persister: null, + persisterOptions: { + keepUnusedRequests: false, + disableSortingHarEntries: false + }, + logLevel: logLevel.levels.WARN, + flushRequestsOnStop: false, + recordIfMissing: true, + recordFailedRequests: false, + expiresIn: null, + expiryStrategy: utils.EXPIRY_STRATEGIES.WARN, + timing: Timing.fixed(0), + matchRequestsBy: { + method: true, + headers: true, + body: true, + order: true, + url: { + protocol: true, + username: true, + password: true, + hostname: true, + port: true, + pathname: true, + query: true, + hash: false + } + } + }; + function isObjectLike(value) { + return value != null && typeof value == "object"; + } + function removeHostFromUrl(url3) { + url3.set("protocol", ""); + url3.set("host", ""); + url3.set("slashes", false); + return url3; + } + function parseUrl(url3, ...args3) { + const parsedUrl = new utils.URL(url3, ...args3); + if (!isAbsoluteUrl(url3)) { + if (url3.startsWith("//")) { + parsedUrl.set("protocol", ""); + } else { + removeHostFromUrl(parsedUrl); + } + } + return parsedUrl; + } + var { + keys + } = Object; + var HANDLER = { + get(obj2, prop) { + return obj2[typeof prop === "string" ? prop.toLowerCase() : prop]; + }, + set(obj2, prop, value) { + if (typeof prop !== "string") { + return false; + } + if (value === null || typeof value === "undefined") { + delete obj2[prop.toLowerCase()]; + } else { + obj2[prop.toLowerCase()] = value; + } + return true; + }, + deleteProperty(obj2, prop) { + if (typeof prop !== "string") { + return false; + } + delete obj2[prop.toLowerCase()]; + return true; + } + }; + function HTTPHeaders(headers2) { + const proxy2 = new Proxy({}, HANDLER); + if (isObjectLike(headers2)) { + keys(headers2).forEach((h) => proxy2[h] = headers2[h]); + } + return proxy2; + } + var { + keys: keys$1 + } = Object; + var { + isArray: isArray2 + } = Array; + var { + parse: parse7 + } = JSON; + function isFunction2(fn) { + return typeof fn === "function"; + } + function method(method2, config, req) { + return isFunction2(config) ? config(method2, req) : method2.toUpperCase(); + } + function url2(url3, config, req) { + let parsedUrl = parseUrl(url3, true); + if (isFunction2(config)) { + parsedUrl = parseUrl(config(url3, req), true); + } else { + keys$1(config || {}).forEach((key) => { + if (isFunction2(config[key])) { + parsedUrl.set(key, config[key](parsedUrl[key], req)); + } else if (!config[key]) { + parsedUrl.set(key, ""); + } + }); + } + if (isObjectLike(parsedUrl.query)) { + parsedUrl.set("query", parse7(stringify(parsedUrl.query))); + } + return parsedUrl.href; + } + function headers(headers2, config, req) { + const normalizedHeaders = new HTTPHeaders(headers2); + if (isFunction2(config)) { + return config(normalizedHeaders, req); + } + if (isObjectLike(config) && isArray2(config.exclude)) { + config.exclude.forEach((header) => delete normalizedHeaders[header]); + } + return normalizedHeaders; + } + function body2(body3, config, req) { + return isFunction2(config) ? config(body3, req) : body3; + } + var NormalizeRequest = { + headers, + method, + body: body2, + url: url2 + }; + function sanitize(str) { + return str.replace(/\W/g, "-"); + } + function guidFor(str) { + const hash = fnv1a(str).toString(); + let slug = slugify(sanitize(str)); + slug = slug.substring(0, 100 - hash.length - 1); + return `${slug}_${hash}`; + } + function guidForRecording(recording) { + return (recording || "").split("/").map(guidFor).join("/"); + } + _export(_export.S, "Array", { isArray: _isArray }); + var isArray$1 = _core.Array.isArray; + var isArray$2 = isArray$1; + function listCacheClear() { + this.__data__ = []; + this.size = 0; + } + function eq(value, other) { + return value === other || value !== value && other !== other; + } + function assocIndexOf(array, key) { + var length = array.length; + while (length--) { + if (eq(array[length][0], key)) { + return length; + } + } + return -1; + } + var arrayProto = Array.prototype; + var splice = arrayProto.splice; + function listCacheDelete(key) { + var data = this.__data__, index = assocIndexOf(data, key); + if (index < 0) { + return false; + } + var lastIndex = data.length - 1; + if (index == lastIndex) { + data.pop(); + } else { + splice.call(data, index, 1); + } + --this.size; + return true; + } + function listCacheGet(key) { + var data = this.__data__, index = assocIndexOf(data, key); + return index < 0 ? void 0 : data[index][1]; + } + function listCacheHas(key) { + return assocIndexOf(this.__data__, key) > -1; + } + function listCacheSet(key, value) { + var data = this.__data__, index = assocIndexOf(data, key); + if (index < 0) { + ++this.size; + data.push([key, value]); + } else { + data[index][1] = value; + } + return this; + } + function ListCache(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + ListCache.prototype.clear = listCacheClear; + ListCache.prototype["delete"] = listCacheDelete; + ListCache.prototype.get = listCacheGet; + ListCache.prototype.has = listCacheHas; + ListCache.prototype.set = listCacheSet; + function stackClear() { + this.__data__ = new ListCache(); + this.size = 0; + } + function stackDelete(key) { + var data = this.__data__, result = data["delete"](key); + this.size = data.size; + return result; + } + function stackGet(key) { + return this.__data__.get(key); + } + function stackHas(key) { + return this.__data__.has(key); + } + var freeGlobal = typeof global == "object" && global && global.Object === Object && global; + var freeSelf = typeof self == "object" && self && self.Object === Object && self; + var root = freeGlobal || freeSelf || Function("return this")(); + var Symbol$1 = root.Symbol; + var objectProto = Object.prototype; + var hasOwnProperty$1 = objectProto.hasOwnProperty; + var nativeObjectToString = objectProto.toString; + var symToStringTag = Symbol$1 ? Symbol$1.toStringTag : void 0; + function getRawTag(value) { + var isOwn = hasOwnProperty$1.call(value, symToStringTag), tag = value[symToStringTag]; + try { + value[symToStringTag] = void 0; + var unmasked = true; + } catch (e) { + } + var result = nativeObjectToString.call(value); + if (unmasked) { + if (isOwn) { + value[symToStringTag] = tag; + } else { + delete value[symToStringTag]; + } + } + return result; + } + var objectProto$1 = Object.prototype; + var nativeObjectToString$1 = objectProto$1.toString; + function objectToString(value) { + return nativeObjectToString$1.call(value); + } + var nullTag = "[object Null]"; + var undefinedTag = "[object Undefined]"; + var symToStringTag$1 = Symbol$1 ? Symbol$1.toStringTag : void 0; + function baseGetTag(value) { + if (value == null) { + return value === void 0 ? undefinedTag : nullTag; + } + return symToStringTag$1 && symToStringTag$1 in Object(value) ? getRawTag(value) : objectToString(value); + } + function isObject3(value) { + var type2 = typeof value; + return value != null && (type2 == "object" || type2 == "function"); + } + var asyncTag = "[object AsyncFunction]"; + var funcTag = "[object Function]"; + var genTag = "[object GeneratorFunction]"; + var proxyTag = "[object Proxy]"; + function isFunction$1(value) { + if (!isObject3(value)) { + return false; + } + var tag = baseGetTag(value); + return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; + } + var coreJsData = root["__core-js_shared__"]; + var maskSrcKey = function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); + return uid ? "Symbol(src)_1." + uid : ""; + }(); + function isMasked(func2) { + return !!maskSrcKey && maskSrcKey in func2; + } + var funcProto = Function.prototype; + var funcToString = funcProto.toString; + function toSource(func2) { + if (func2 != null) { + try { + return funcToString.call(func2); + } catch (e) { + } + try { + return func2 + ""; + } catch (e) { + } + } + return ""; + } + var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; + var reIsHostCtor = /^\[object .+?Constructor\]$/; + var funcProto$1 = Function.prototype; + var objectProto$2 = Object.prototype; + var funcToString$1 = funcProto$1.toString; + var hasOwnProperty$2 = objectProto$2.hasOwnProperty; + var reIsNative = RegExp( + "^" + funcToString$1.call(hasOwnProperty$2).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" + ); + function baseIsNative(value) { + if (!isObject3(value) || isMasked(value)) { + return false; + } + var pattern = isFunction$1(value) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); + } + function getValue2(object, key) { + return object == null ? void 0 : object[key]; + } + function getNative(object, key) { + var value = getValue2(object, key); + return baseIsNative(value) ? value : void 0; + } + var Map2 = getNative(root, "Map"); + var nativeCreate = getNative(Object, "create"); + function hashClear() { + this.__data__ = nativeCreate ? nativeCreate(null) : {}; + this.size = 0; + } + function hashDelete(key) { + var result = this.has(key) && delete this.__data__[key]; + this.size -= result ? 1 : 0; + return result; + } + var HASH_UNDEFINED = "__lodash_hash_undefined__"; + var objectProto$3 = Object.prototype; + var hasOwnProperty$3 = objectProto$3.hasOwnProperty; + function hashGet(key) { + var data = this.__data__; + if (nativeCreate) { + var result = data[key]; + return result === HASH_UNDEFINED ? void 0 : result; + } + return hasOwnProperty$3.call(data, key) ? data[key] : void 0; + } + var objectProto$4 = Object.prototype; + var hasOwnProperty$4 = objectProto$4.hasOwnProperty; + function hashHas(key) { + var data = this.__data__; + return nativeCreate ? data[key] !== void 0 : hasOwnProperty$4.call(data, key); + } + var HASH_UNDEFINED$1 = "__lodash_hash_undefined__"; + function hashSet(key, value) { + var data = this.__data__; + this.size += this.has(key) ? 0 : 1; + data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED$1 : value; + return this; + } + function Hash(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + Hash.prototype.clear = hashClear; + Hash.prototype["delete"] = hashDelete; + Hash.prototype.get = hashGet; + Hash.prototype.has = hashHas; + Hash.prototype.set = hashSet; + function mapCacheClear() { + this.size = 0; + this.__data__ = { + "hash": new Hash(), + "map": new (Map2 || ListCache)(), + "string": new Hash() + }; + } + function isKeyable(value) { + var type2 = typeof value; + return type2 == "string" || type2 == "number" || type2 == "symbol" || type2 == "boolean" ? value !== "__proto__" : value === null; + } + function getMapData(map2, key) { + var data = map2.__data__; + return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; + } + function mapCacheDelete(key) { + var result = getMapData(this, key)["delete"](key); + this.size -= result ? 1 : 0; + return result; + } + function mapCacheGet(key) { + return getMapData(this, key).get(key); + } + function mapCacheHas(key) { + return getMapData(this, key).has(key); + } + function mapCacheSet(key, value) { + var data = getMapData(this, key), size = data.size; + data.set(key, value); + this.size += data.size == size ? 0 : 1; + return this; + } + function MapCache(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + MapCache.prototype.clear = mapCacheClear; + MapCache.prototype["delete"] = mapCacheDelete; + MapCache.prototype.get = mapCacheGet; + MapCache.prototype.has = mapCacheHas; + MapCache.prototype.set = mapCacheSet; + var LARGE_ARRAY_SIZE = 200; + function stackSet(key, value) { + var data = this.__data__; + if (data instanceof ListCache) { + var pairs = data.__data__; + if (!Map2 || pairs.length < LARGE_ARRAY_SIZE - 1) { + pairs.push([key, value]); + this.size = ++data.size; + return this; + } + data = this.__data__ = new MapCache(pairs); + } + data.set(key, value); + this.size = data.size; + return this; + } + function Stack2(entries) { + var data = this.__data__ = new ListCache(entries); + this.size = data.size; + } + Stack2.prototype.clear = stackClear; + Stack2.prototype["delete"] = stackDelete; + Stack2.prototype.get = stackGet; + Stack2.prototype.has = stackHas; + Stack2.prototype.set = stackSet; + var defineProperty$1 = function() { + try { + var func2 = getNative(Object, "defineProperty"); + func2({}, "", {}); + return func2; + } catch (e) { + } + }(); + function baseAssignValue(object, key, value) { + if (key == "__proto__" && defineProperty$1) { + defineProperty$1(object, key, { + "configurable": true, + "enumerable": true, + "value": value, + "writable": true + }); + } else { + object[key] = value; + } + } + function assignMergeValue(object, key, value) { + if (value !== void 0 && !eq(object[key], value) || value === void 0 && !(key in object)) { + baseAssignValue(object, key, value); + } + } + function createBaseFor(fromRight) { + return function(object, iteratee, keysFunc) { + var index = -1, iterable = Object(object), props = keysFunc(object), length = props.length; + while (length--) { + var key = props[fromRight ? length : ++index]; + if (iteratee(iterable[key], key, iterable) === false) { + break; + } + } + return object; + }; + } + var baseFor = createBaseFor(); + var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; + var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; + var moduleExports2 = freeModule && freeModule.exports === freeExports; + var Buffer2 = moduleExports2 ? root.Buffer : void 0; + var allocUnsafe = Buffer2 ? Buffer2.allocUnsafe : void 0; + function cloneBuffer(buffer2, isDeep) { + if (isDeep) { + return buffer2.slice(); + } + var length = buffer2.length, result = allocUnsafe ? allocUnsafe(length) : new buffer2.constructor(length); + buffer2.copy(result); + return result; + } + var Uint8Array2 = root.Uint8Array; + function cloneArrayBuffer(arrayBuffer) { + var result = new arrayBuffer.constructor(arrayBuffer.byteLength); + new Uint8Array2(result).set(new Uint8Array2(arrayBuffer)); + return result; + } + function cloneTypedArray(typedArray, isDeep) { + var buffer2 = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; + return new typedArray.constructor(buffer2, typedArray.byteOffset, typedArray.length); + } + function copyArray(source2, array) { + var index = -1, length = source2.length; + array || (array = Array(length)); + while (++index < length) { + array[index] = source2[index]; + } + return array; + } + var objectCreate = Object.create; + var baseCreate = function() { + function object() { + } + return function(proto2) { + if (!isObject3(proto2)) { + return {}; + } + if (objectCreate) { + return objectCreate(proto2); + } + object.prototype = proto2; + var result = new object(); + object.prototype = void 0; + return result; + }; + }(); + function overArg(func2, transform) { + return function(arg) { + return func2(transform(arg)); + }; + } + var getPrototype = overArg(Object.getPrototypeOf, Object); + var objectProto$5 = Object.prototype; + function isPrototype(value) { + var Ctor = value && value.constructor, proto2 = typeof Ctor == "function" && Ctor.prototype || objectProto$5; + return value === proto2; + } + function initCloneObject(object) { + return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {}; + } + var argsTag = "[object Arguments]"; + function baseIsArguments(value) { + return isObjectLike(value) && baseGetTag(value) == argsTag; + } + var objectProto$6 = Object.prototype; + var hasOwnProperty$5 = objectProto$6.hasOwnProperty; + var propertyIsEnumerable = objectProto$6.propertyIsEnumerable; + var isArguments = baseIsArguments(function() { + return arguments; + }()) ? baseIsArguments : function(value) { + return isObjectLike(value) && hasOwnProperty$5.call(value, "callee") && !propertyIsEnumerable.call(value, "callee"); + }; + var isArray$3 = Array.isArray; + var MAX_SAFE_INTEGER = 9007199254740991; + function isLength(value) { + return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; + } + function isArrayLike(value) { + return value != null && isLength(value.length) && !isFunction$1(value); + } + function isArrayLikeObject(value) { + return isObjectLike(value) && isArrayLike(value); + } + function stubFalse() { + return false; + } + var freeExports$1 = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; + var freeModule$1 = freeExports$1 && typeof module2 == "object" && module2 && !module2.nodeType && module2; + var moduleExports$1 = freeModule$1 && freeModule$1.exports === freeExports$1; + var Buffer$1 = moduleExports$1 ? root.Buffer : void 0; + var nativeIsBuffer = Buffer$1 ? Buffer$1.isBuffer : void 0; + var isBuffer2 = nativeIsBuffer || stubFalse; + var objectTag = "[object Object]"; + var funcProto$2 = Function.prototype; + var objectProto$7 = Object.prototype; + var funcToString$2 = funcProto$2.toString; + var hasOwnProperty$6 = objectProto$7.hasOwnProperty; + var objectCtorString = funcToString$2.call(Object); + function isPlainObject2(value) { + if (!isObjectLike(value) || baseGetTag(value) != objectTag) { + return false; + } + var proto2 = getPrototype(value); + if (proto2 === null) { + return true; + } + var Ctor = hasOwnProperty$6.call(proto2, "constructor") && proto2.constructor; + return typeof Ctor == "function" && Ctor instanceof Ctor && funcToString$2.call(Ctor) == objectCtorString; + } + var argsTag$1 = "[object Arguments]"; + var arrayTag = "[object Array]"; + var boolTag = "[object Boolean]"; + var dateTag = "[object Date]"; + var errorTag = "[object Error]"; + var funcTag$1 = "[object Function]"; + var mapTag = "[object Map]"; + var numberTag = "[object Number]"; + var objectTag$1 = "[object Object]"; + var regexpTag = "[object RegExp]"; + var setTag = "[object Set]"; + var stringTag = "[object String]"; + var weakMapTag = "[object WeakMap]"; + var arrayBufferTag = "[object ArrayBuffer]"; + var dataViewTag = "[object DataView]"; + var float32Tag = "[object Float32Array]"; + var float64Tag = "[object Float64Array]"; + var int8Tag = "[object Int8Array]"; + var int16Tag = "[object Int16Array]"; + var int32Tag = "[object Int32Array]"; + var uint8Tag = "[object Uint8Array]"; + var uint8ClampedTag = "[object Uint8ClampedArray]"; + var uint16Tag = "[object Uint16Array]"; + var uint32Tag = "[object Uint32Array]"; + var typedArrayTags = {}; + typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true; + typedArrayTags[argsTag$1] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag$1] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag$1] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false; + function baseIsTypedArray(value) { + return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; + } + function baseUnary(func2) { + return function(value) { + return func2(value); + }; + } + var freeExports$2 = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; + var freeModule$2 = freeExports$2 && typeof module2 == "object" && module2 && !module2.nodeType && module2; + var moduleExports$2 = freeModule$2 && freeModule$2.exports === freeExports$2; + var freeProcess = moduleExports$2 && freeGlobal.process; + var nodeUtil = function() { + try { + var types2 = freeModule$2 && freeModule$2.require && freeModule$2.require("util").types; + if (types2) { + return types2; + } + return freeProcess && freeProcess.binding && freeProcess.binding("util"); + } catch (e) { + } + }(); + var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; + var isTypedArray2 = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; + function safeGet(object, key) { + if (key === "constructor" && typeof object[key] === "function") { + return; + } + if (key == "__proto__") { + return; + } + return object[key]; + } + var objectProto$8 = Object.prototype; + var hasOwnProperty$7 = objectProto$8.hasOwnProperty; + function assignValue(object, key, value) { + var objValue = object[key]; + if (!(hasOwnProperty$7.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) { + baseAssignValue(object, key, value); + } + } + function copyObject(source2, props, object, customizer2) { + var isNew = !object; + object || (object = {}); + var index = -1, length = props.length; + while (++index < length) { + var key = props[index]; + var newValue = customizer2 ? customizer2(object[key], source2[key], key, object, source2) : void 0; + if (newValue === void 0) { + newValue = source2[key]; + } + if (isNew) { + baseAssignValue(object, key, newValue); + } else { + assignValue(object, key, newValue); + } + } + return object; + } + function baseTimes(n, iteratee) { + var index = -1, result = Array(n); + while (++index < n) { + result[index] = iteratee(index); + } + return result; + } + var MAX_SAFE_INTEGER$1 = 9007199254740991; + var reIsUint = /^(?:0|[1-9]\d*)$/; + function isIndex(value, length) { + var type2 = typeof value; + length = length == null ? MAX_SAFE_INTEGER$1 : length; + return !!length && (type2 == "number" || type2 != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); + } + var objectProto$9 = Object.prototype; + var hasOwnProperty$8 = objectProto$9.hasOwnProperty; + function arrayLikeKeys(value, inherited) { + var isArr = isArray$3(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer2(value), isType = !isArr && !isArg && !isBuff && isTypedArray2(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value.length, String) : [], length = result.length; + for (var key in value) { + if ((inherited || hasOwnProperty$8.call(value, key)) && !(skipIndexes && // Safari 9 has enumerable `arguments.length` in strict mode. + (key == "length" || // Node.js 0.10 has enumerable non-index properties on buffers. + isBuff && (key == "offset" || key == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays. + isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || // Skip index properties. + isIndex(key, length)))) { + result.push(key); + } + } + return result; + } + function nativeKeysIn(object) { + var result = []; + if (object != null) { + for (var key in Object(object)) { + result.push(key); + } + } + return result; + } + var objectProto$a = Object.prototype; + var hasOwnProperty$9 = objectProto$a.hasOwnProperty; + function baseKeysIn(object) { + if (!isObject3(object)) { + return nativeKeysIn(object); + } + var isProto = isPrototype(object), result = []; + for (var key in object) { + if (!(key == "constructor" && (isProto || !hasOwnProperty$9.call(object, key)))) { + result.push(key); + } + } + return result; + } + function keysIn(object) { + return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); + } + function toPlainObject(value) { + return copyObject(value, keysIn(value)); + } + function baseMergeDeep(object, source2, key, srcIndex, mergeFunc, customizer2, stack) { + var objValue = safeGet(object, key), srcValue = safeGet(source2, key), stacked = stack.get(srcValue); + if (stacked) { + assignMergeValue(object, key, stacked); + return; + } + var newValue = customizer2 ? customizer2(objValue, srcValue, key + "", object, source2, stack) : void 0; + var isCommon = newValue === void 0; + if (isCommon) { + var isArr = isArray$3(srcValue), isBuff = !isArr && isBuffer2(srcValue), isTyped = !isArr && !isBuff && isTypedArray2(srcValue); + newValue = srcValue; + if (isArr || isBuff || isTyped) { + if (isArray$3(objValue)) { + newValue = objValue; + } else if (isArrayLikeObject(objValue)) { + newValue = copyArray(objValue); + } else if (isBuff) { + isCommon = false; + newValue = cloneBuffer(srcValue, true); + } else if (isTyped) { + isCommon = false; + newValue = cloneTypedArray(srcValue, true); + } else { + newValue = []; + } + } else if (isPlainObject2(srcValue) || isArguments(srcValue)) { + newValue = objValue; + if (isArguments(objValue)) { + newValue = toPlainObject(objValue); + } else if (!isObject3(objValue) || isFunction$1(objValue)) { + newValue = initCloneObject(srcValue); + } + } else { + isCommon = false; + } + } + if (isCommon) { + stack.set(srcValue, newValue); + mergeFunc(newValue, srcValue, srcIndex, customizer2, stack); + stack["delete"](srcValue); + } + assignMergeValue(object, key, newValue); + } + function baseMerge(object, source2, srcIndex, customizer2, stack) { + if (object === source2) { + return; + } + baseFor(source2, function(srcValue, key) { + stack || (stack = new Stack2()); + if (isObject3(srcValue)) { + baseMergeDeep(object, source2, key, srcIndex, baseMerge, customizer2, stack); + } else { + var newValue = customizer2 ? customizer2(safeGet(object, key), srcValue, key + "", object, source2, stack) : void 0; + if (newValue === void 0) { + newValue = srcValue; + } + assignMergeValue(object, key, newValue); + } + }, keysIn); + } + function identity2(value) { + return value; + } + function apply(func2, thisArg, args3) { + switch (args3.length) { + case 0: + return func2.call(thisArg); + case 1: + return func2.call(thisArg, args3[0]); + case 2: + return func2.call(thisArg, args3[0], args3[1]); + case 3: + return func2.call(thisArg, args3[0], args3[1], args3[2]); + } + return func2.apply(thisArg, args3); + } + var nativeMax = Math.max; + function overRest(func2, start4, transform) { + start4 = nativeMax(start4 === void 0 ? func2.length - 1 : start4, 0); + return function() { + var args3 = arguments, index = -1, length = nativeMax(args3.length - start4, 0), array = Array(length); + while (++index < length) { + array[index] = args3[start4 + index]; + } + index = -1; + var otherArgs = Array(start4 + 1); + while (++index < start4) { + otherArgs[index] = args3[index]; + } + otherArgs[start4] = transform(array); + return apply(func2, this, otherArgs); + }; + } + function constant(value) { + return function() { + return value; + }; + } + var baseSetToString = !defineProperty$1 ? identity2 : function(func2, string) { + return defineProperty$1(func2, "toString", { + "configurable": true, + "enumerable": false, + "value": constant(string), + "writable": true + }); + }; + var HOT_COUNT = 800; + var HOT_SPAN = 16; + var nativeNow = Date.now; + function shortOut(func2) { + var count = 0, lastCalled = 0; + return function() { + var stamp = nativeNow(), remaining = HOT_SPAN - (stamp - lastCalled); + lastCalled = stamp; + if (remaining > 0) { + if (++count >= HOT_COUNT) { + return arguments[0]; + } + } else { + count = 0; + } + return func2.apply(void 0, arguments); + }; + } + var setToString = shortOut(baseSetToString); + function baseRest(func2, start4) { + return setToString(overRest(func2, start4, identity2), func2 + ""); + } + function isIterateeCall(value, index, object) { + if (!isObject3(object)) { + return false; + } + var type2 = typeof index; + if (type2 == "number" ? isArrayLike(object) && isIndex(index, object.length) : type2 == "string" && index in object) { + return eq(object[index], value); + } + return false; + } + function createAssigner(assigner) { + return baseRest(function(object, sources) { + var index = -1, length = sources.length, customizer2 = length > 1 ? sources[length - 1] : void 0, guard = length > 2 ? sources[2] : void 0; + customizer2 = assigner.length > 3 && typeof customizer2 == "function" ? (length--, customizer2) : void 0; + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + customizer2 = length < 3 ? void 0 : customizer2; + length = 1; + } + object = Object(object); + while (++index < length) { + var source2 = sources[index]; + if (source2) { + assigner(object, source2, index, customizer2); + } + } + return object; + }); + } + var mergeWith = createAssigner(function(object, source2, srcIndex, customizer2) { + baseMerge(object, source2, srcIndex, customizer2); + }); + function customizer(objValue, srcValue, key) { + if (isArray$2(objValue) || ["context"].includes(key)) { + return srcValue; + } + } + function mergeConfigs(...configs) { + return mergeWith({}, ...configs, customizer); + } + function defer$1() { + let _resolve; + let _reject; + const promise2 = new promise$1((resolve8, reject) => { + _resolve = resolve8; + _reject = reject; + }); + promise2.catch(() => { + }); + promise2.resolve = _resolve; + promise2.reject = _reject; + return promise2; + } + function validateRecordingName(name) { + utils.assert(`Invalid recording name provided. Expected string, received: "${typeof name}".`, typeof name === "string"); + utils.assert(`Invalid recording name provided. Received An empty or blank string.`, name.trim().length > 0); + } + function validateRequestConfig(config) { + utils.assert(`Invalid config provided. Expected object, received: "${typeof config}".`, isObjectLike(config) && !isArray$2(config)); + ["mode", "adapters", "adapterOptions", "persister", "persisterOptions"].forEach((key) => utils.assert(`Invalid configuration option provided. The "${key}" option cannot be overridden using the server configuration API.`, !(key in config))); + } + function validateTimesOption(times) { + utils.assert(`Invalid number provided. Expected number, received: "${typeof times}".`, typeof times === "number"); + utils.assert(`Invalid number provided. The number must be greater than 0, received "${typeof times}".`, times > 0); + } + var { + freeze + } = Object; + var { + parse: parse$1 + } = JSON; + var HTTPBase = class { + constructor() { + this.headers = new HTTPHeaders(); + } + getHeader(name) { + return this.headers[name]; + } + setHeader(name, value) { + this.headers[name] = value; + return this; + } + setHeaders(headers2 = {}) { + for (const name in headers2) { + this.setHeader(name, headers2[name]); + } + return this; + } + removeHeader(name) { + this.setHeader(name, null); + return this; + } + removeHeaders(headers2 = []) { + for (const name of headers2) { + this.removeHeader(name); + } + return this; + } + hasHeader(name) { + return !!this.getHeader(name); + } + type(type2) { + return this.setHeader("Content-Type", type2); + } + send(data) { + let body3 = data; + switch (typeof body3) { + case "string": + if (!this.hasHeader("Content-Type")) { + this.type("text/html"); + } + break; + case "boolean": + case "number": + case "object": + if (body3 === null) { + body3 = ""; + } else { + return this.json(body3); + } + break; + } + if (typeof body3 === "string") { + const contentType = this.getHeader("Content-Type"); + if (contentType && !contentType.includes("charset")) { + this.type(`${contentType}; charset=utf-8`); + } + } + this.body = body3; + return this; + } + json(obj2) { + if (!this.hasHeader("Content-Type")) { + this.type("application/json"); + } + return this.send(stringify(obj2)); + } + jsonBody() { + return parse$1(this.body); + } + end() { + freeze(this); + freeze(this.headers); + return this; + } + }; + var _stringWs = " \n\v\f\r \xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF"; + var space = "[" + _stringWs + "]"; + var non = "\u200B\x85"; + var ltrim = RegExp("^" + space + space + "*"); + var rtrim2 = RegExp(space + space + "*$"); + var exporter = function(KEY, exec3, ALIAS) { + var exp = {}; + var FORCE = _fails(function() { + return !!_stringWs[KEY]() || non[KEY]() != non; + }); + var fn = exp[KEY] = FORCE ? exec3(trim2) : _stringWs[KEY]; + if (ALIAS) + exp[ALIAS] = fn; + _export(_export.P + _export.F * FORCE, "String", exp); + }; + var trim2 = exporter.trim = function(string, TYPE2) { + string = String(_defined(string)); + if (TYPE2 & 1) + string = string.replace(ltrim, ""); + if (TYPE2 & 2) + string = string.replace(rtrim2, ""); + return string; + }; + var _stringTrim = exporter; + var $parseInt = _global2.parseInt; + var $trim = _stringTrim.trim; + var hex = /^[-+]?0[xX]/; + var _parseInt = $parseInt(_stringWs + "08") !== 8 || $parseInt(_stringWs + "0x16") !== 22 ? function parseInt2(str, radix) { + var string = $trim(String(str), 3); + return $parseInt(string, radix >>> 0 || (hex.test(string) ? 16 : 10)); + } : $parseInt; + _export(_export.G + _export.F * (parseInt != _parseInt), { parseInt: _parseInt }); + var _parseInt$1 = _core.parseInt; + var _parseInt$2 = _parseInt$1; + var DEFAULT_STATUS_CODE = 200; + var PollyResponse = class extends HTTPBase { + constructor(statusCode, headers2, body3, encoding) { + super(); + this.status(statusCode || DEFAULT_STATUS_CODE); + this.setHeaders(headers2); + this.body = body3; + this.encoding = encoding; + } + get ok() { + return this.statusCode && this.statusCode >= 200 && this.statusCode < 300; + } + get statusText() { + return utils.HTTP_STATUS_CODES[this.statusCode] || utils.HTTP_STATUS_CODES[DEFAULT_STATUS_CODE]; + } + status(statusCode) { + const status = _parseInt$2(statusCode, 10); + utils.assert(`[Response] Invalid status code: ${status}`, status >= 100 && status < 600); + this.statusCode = status; + return this; + } + sendStatus(status) { + this.status(status); + this.type("text/plain"); + return this.send(this.statusText); + } + }; + var _objectSap = function(KEY, exec3) { + var fn = (_core.Object || {})[KEY] || Object[KEY]; + var exp = {}; + exp[KEY] = exec3(fn); + _export(_export.S + _export.F * _fails(function() { + fn(1); + }), "Object", exp); + }; + _objectSap("keys", function() { + return function keys2(it) { + return _objectKeys(_toObject(it)); + }; + }); + var keys$2 = _core.Object.keys; + var keys$3 = keys$2; + var getOwnPropertySymbols = _core.Object.getOwnPropertySymbols; + var getOwnPropertySymbols$1 = getOwnPropertySymbols; + var $getOwnPropertyDescriptor$1 = _objectGopd.f; + _objectSap("getOwnPropertyDescriptor", function() { + return function getOwnPropertyDescriptor2(it, key) { + return $getOwnPropertyDescriptor$1(_toIobject(it), key); + }; + }); + var $Object = _core.Object; + var getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + return $Object.getOwnPropertyDescriptor(it, key); + }; + var getOwnPropertyDescriptor$1 = getOwnPropertyDescriptor; + var Reflect2 = _global2.Reflect; + var _ownKeys = Reflect2 && Reflect2.ownKeys || function ownKeys2(it) { + var keys2 = _objectGopn.f(_anObject(it)); + var getSymbols = _objectGops.f; + return getSymbols ? keys2.concat(getSymbols(it)) : keys2; + }; + var _createProperty = function(object, index, value) { + if (index in object) + _objectDp.f(object, index, _propertyDesc(0, value)); + else + object[index] = value; + }; + _export(_export.S, "Object", { + getOwnPropertyDescriptors: function getOwnPropertyDescriptors2(object) { + var O = _toIobject(object); + var getDesc = _objectGopd.f; + var keys2 = _ownKeys(O); + var result = {}; + var i2 = 0; + var key, desc; + while (keys2.length > i2) { + desc = getDesc(O, key = keys2[i2++]); + if (desc !== void 0) + _createProperty(result, key, desc); + } + return result; + } + }); + var getOwnPropertyDescriptors = _core.Object.getOwnPropertyDescriptors; + var getOwnPropertyDescriptors$1 = getOwnPropertyDescriptors; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperties: _objectDps }); + var $Object$1 = _core.Object; + var defineProperties = function defineProperties2(T, D) { + return $Object$1.defineProperties(T, D); + }; + var defineProperties$1 = defineProperties; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperty: _objectDp.f }); + var $Object$2 = _core.Object; + var defineProperty$2 = function defineProperty2(it, key, desc) { + return $Object$2.defineProperty(it, key, desc); + }; + var defineProperty$3 = defineProperty$2; + var defineProperty$4 = createCommonjsModule(function(module3) { + function _defineProperty2(obj2, key, value) { + if (key in obj2) { + defineProperty$3(obj2, key, { + value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj2[key] = value; + } + return obj2; + } + module3.exports = _defineProperty2; + module3.exports["default"] = module3.exports, module3.exports.__esModule = true; + }); + var _defineProperty = unwrapExports(defineProperty$4); + var SET = "Set"; + var es6_set = _collection(SET, function(get2) { + return function Set2() { + return get2(this, arguments.length > 0 ? arguments[0] : void 0); + }; + }, { + // 23.2.3.1 Set.prototype.add(value) + add: function add(value) { + return _collectionStrong.def(_validateCollection(this, SET), value = value === 0 ? 0 : value, value); + } + }, _collectionStrong); + _export(_export.P + _export.R, "Set", { toJSON: _collectionToJson("Set") }); + _setCollectionOf("Set"); + _setCollectionFrom("Set"); + var set = _core.Set; + var set$1 = set; + function cancelFnAfterNTimes(fn, nTimes, cancel) { + let callCount = 0; + return function(...args3) { + if (++callCount >= nTimes) { + cancel(); + } + return fn(...args3); + }; + } + _export(_export.S + _export.F, "Object", { assign: _objectAssign }); + var assign = _core.Object.assign; + var assign$1 = assign; + var STOP_PROPAGATION = symbol$1(); + var Event2 = class { + constructor(type2, props) { + utils.assert(`Invalid type provided. Expected a non-empty string, received: "${typeof type2}".`, type2 && typeof type2 === "string"); + defineProperty$3(this, "type", { + value: type2 + }); + assign$1(this, props || {}); + this[STOP_PROPAGATION] = false; + } + stopPropagation() { + this[STOP_PROPAGATION] = true; + } + get shouldStopPropagating() { + return this[STOP_PROPAGATION]; + } + }; + function ownKeys(object, enumerableOnly) { + var keys2 = keys$3(object); + if (getOwnPropertySymbols$1) { + var symbols = getOwnPropertySymbols$1(object); + if (enumerableOnly) { + symbols = symbols.filter(function(sym) { + return getOwnPropertyDescriptor$1(object, sym).enumerable; + }); + } + keys2.push.apply(keys2, symbols); + } + return keys2; + } + function _objectSpread(target) { + for (var i2 = 1; i2 < arguments.length; i2++) { + var source2 = arguments[i2] != null ? arguments[i2] : {}; + if (i2 % 2) { + ownKeys(Object(source2), true).forEach(function(key) { + _defineProperty(target, key, source2[key]); + }); + } else if (getOwnPropertyDescriptors$1) { + defineProperties$1(target, getOwnPropertyDescriptors$1(source2)); + } else { + ownKeys(Object(source2)).forEach(function(key) { + defineProperty$3(target, key, getOwnPropertyDescriptor$1(source2, key)); + }); + } + } + return target; + } + var EVENTS = symbol$1(); + var EVENT_NAMES = symbol$1(); + function assertEventName(eventName, eventNames) { + utils.assert(`Invalid event name provided. Expected string, received: "${typeof eventName}".`, typeof eventName === "string"); + utils.assert(`Invalid event name provided: "${eventName}". Possible events: ${[...eventNames].join(", ")}.`, eventNames.has(eventName)); + } + function assertListener(listener2) { + utils.assert(`Invalid listener provided. Expected function, received: "${typeof listener2}".`, typeof listener2 === "function"); + } + var EventEmitter4 = class { + /** + * @constructor + * @param {Object} options + * @param {String[]} options.eventNames - Supported events + */ + constructor(options2 = {}) { + const { + eventNames + } = options2; + utils.assert("An array of supported events must be provided via the `eventNames` option.", isArray$2(eventNames) && eventNames.length > 0); + this[EVENTS] = new map$1(); + this[EVENT_NAMES] = new set$1(eventNames); + } + /** + * Returns an array listing the events for which the emitter has + * registered listeners + * + * @returns {String[]} + */ + eventNames() { + const eventNames = []; + this[EVENTS].forEach((_, eventName) => this.hasListeners(eventName) && eventNames.push(eventName)); + return eventNames; + } + /** + * Adds the `listener` function to the end of the listeners array for the + * event named `eventName` + * + * @param {String} eventName - The name of the event + * @param {Function} listener - The callback function + * @param {Object} [options={}] + * @param {Number} options.times - listener will be cancelled after this many times + * @returns {EventEmitter} + */ + on(eventName, listener2, options2 = {}) { + assertEventName(eventName, this[EVENT_NAMES]); + assertListener(listener2); + const events = this[EVENTS]; + const { + times + } = options2; + if (!events.has(eventName)) { + events.set(eventName, new set$1()); + } + if (times) { + validateTimesOption(times); + const tempListener = cancelFnAfterNTimes(listener2, times, () => this.off(eventName, tempListener)); + this.off(eventName, listener2); + tempListener.listener = listener2; + listener2 = tempListener; + } + events.get(eventName).add(listener2); + return this; + } + /** + * Adds a one-time `listener` function for the event named `eventName`. + * The next time `eventName` is triggered, this listener is removed and + * then invoked. + * + * @param {String} eventName - The name of the event + * @param {Function} listener - The callback function + * @param {Object} [options={}] + * @returns {EventEmitter} + */ + once(eventName, listener2, options2 = {}) { + this.on(eventName, listener2, _objectSpread(_objectSpread({}, options2), {}, { + times: 1 + })); + return this; + } + /** + * Removes the specified `listener` from the listener array for + * the event named `eventName`. If `listener` is not provided then it removes + * all listeners, or those of the specified `eventName`. + * + * @param {String} eventName - The name of the event + * @param {Function} [listener] - The callback function + * @returns {EventEmitter} + */ + off(eventName, listener2) { + assertEventName(eventName, this[EVENT_NAMES]); + const events = this[EVENTS]; + if (this.hasListeners(eventName)) { + if (typeof listener2 === "function") { + events.get(eventName).delete(listener2); + this.listeners(eventName).forEach((l2) => { + if (l2.listener === listener2) { + events.get(eventName).delete(l2); + } + }); + } else { + events.get(eventName).clear(eventName); + } + } + return this; + } + /** + * Returns a copy of the array of listeners for the event named `eventName`. + * + * @param {String} eventName - The name of the event + * @returns {Function[]} + */ + listeners(eventName) { + assertEventName(eventName, this[EVENT_NAMES]); + return this.hasListeners(eventName) ? [...this[EVENTS].get(eventName)] : []; + } + /** + * Returns `true` if there are any listeners for the event named `eventName` + * or `false` otherwise. + * + * @param {String} eventName - The name of the event + * @returns {Boolean} + */ + hasListeners(eventName) { + assertEventName(eventName, this[EVENT_NAMES]); + const events = this[EVENTS]; + return events.has(eventName) && events.get(eventName).size > 0; + } + /** + * Asynchronously calls each of the `listeners` registered for the event named + * `eventName`, in the order they were registered, passing the supplied + * arguments to each. + * + * Returns a promise that will resolve to `false` if a listener stopped + * propagation, `true` otherwise. + * + * @async + * @param {String} eventName - The name of the event + * @param {any} ...args - The arguments to pass to the listeners + * @returns {Promise} + */ + async emit(eventName, ...args3) { + assertEventName(eventName, this[EVENT_NAMES]); + const event = new Event2(eventName); + for (const listener2 of this.listeners(eventName)) { + await listener2(...args3, event); + if (event.shouldStopPropagating) { + return false; + } + } + return true; + } + /** + * Asynchronously and concurrently calls each of the `listeners` registered + * for the event named `eventName`, in the order they were registered, + * passing the supplied arguments to each. + * + * Returns a promise that will resolve to `false` if a listener stopped + * propagation, `true` otherwise. + * + * @async + * @param {String} eventName - The name of the event + * @param {any} ...args - The arguments to pass to the listeners + * @returns {Promise} + */ + async emitParallel(eventName, ...args3) { + assertEventName(eventName, this[EVENT_NAMES]); + const event = new Event2(eventName); + await promise$1.all(this.listeners(eventName).map((listener2) => listener2(...args3, event))); + if (event.shouldStopPropagating) { + return false; + } + return true; + } + /** + * Synchronously calls each of the `listeners` registered for the event named + * `eventName`, in the order they were registered, passing the supplied + * arguments to each. + * + * Throws if a listener's return value is promise-like. + * + * Returns`false` if a listener stopped propagation, `true` otherwise. + * + * @param {String} eventName - The name of the event + * @param {any} ...args - The arguments to pass to the listeners + * @returns {Boolean} + */ + emitSync(eventName, ...args3) { + assertEventName(eventName, this[EVENT_NAMES]); + const event = new Event2(eventName); + for (const listener2 of this.listeners(eventName)) { + const returnValue = listener2(...args3, event); + utils.assert(`Attempted to emit a synchronous event "${eventName}" but an asynchronous listener was called.`, !(isObjectLike(returnValue) && typeof returnValue.then === "function")); + if (event.shouldStopPropagating) { + return false; + } + } + return true; + } + }; + var ABORT3 = symbol$1(); + var PASSTHROUGH = symbol$1(); + function setDefaults(interceptor) { + interceptor[ABORT3] = false; + interceptor[PASSTHROUGH] = false; + } + var Interceptor = class extends Event2 { + constructor() { + super("intercept"); + setDefaults(this); + } + abort() { + setDefaults(this); + this[ABORT3] = true; + } + passthrough() { + setDefaults(this); + this[PASSTHROUGH] = true; + } + get shouldAbort() { + return this[ABORT3]; + } + get shouldPassthrough() { + return this[PASSTHROUGH]; + } + get shouldIntercept() { + return !this.shouldAbort && !this.shouldPassthrough; + } + }; + var { + keys: keys$4, + freeze: freeze$1 + } = Object; + var ROUTE = symbol$1(); + var POLLY = symbol$1(); + var PARSED_URL = symbol$1(); + var EVENT_EMITTER = symbol$1(); + var SUPPORTED_EVENTS = ["identify"]; + var PollyRequest = class extends HTTPBase { + constructor(polly, request) { + super(); + utils.assert("Url is required.", request.url); + utils.assert("Method is required.", request.method && typeof request.method === "string"); + this.didRespond = false; + this.aborted = false; + this.url = request.url; + this.method = request.method.toUpperCase(); + this.body = request.body; + this.setHeaders(request.headers); + this.recordingName = polly.recordingName; + this.recordingId = polly.recordingId; + this.requestArguments = freeze$1(request.requestArguments); + this.promise = defer$1(); + this[POLLY] = polly; + this[EVENT_EMITTER] = new EventEmitter4({ + eventNames: SUPPORTED_EVENTS + }); + this.action = null; + this._interceptor = new Interceptor(); + this[ROUTE] = polly.server.lookup(this.method, this.url); + this[ROUTE].applyFiltersWithArgs(this); + this.configure(this[ROUTE].config()); + const recordingName = this[ROUTE].recordingName(); + if (recordingName) { + this.overrideRecordingName(recordingName); + } + } + get url() { + return this[PARSED_URL].toString(); + } + set url(value) { + this[PARSED_URL] = parseUrl(`${value}`, true); + } + get absoluteUrl() { + const { + url: url3 + } = this; + return isAbsoluteUrl(url3) ? url3 : new utils.URL(url3).href; + } + get protocol() { + return this[PARSED_URL].protocol; + } + get hostname() { + return this[PARSED_URL].hostname; + } + get port() { + return this[PARSED_URL].port; + } + get origin() { + return this[PARSED_URL].origin; + } + get pathname() { + return this[PARSED_URL].pathname; + } + get query() { + return this[PARSED_URL].query; + } + set query(value) { + this[PARSED_URL].set("query", value); + } + get hash() { + return this[PARSED_URL].hash; + } + set hash(value) { + this[PARSED_URL].set("hash", value); + } + get shouldPassthrough() { + return this[ROUTE].shouldPassthrough(); + } + get shouldIntercept() { + return this[ROUTE].shouldIntercept(); + } + get log() { + if (this.id) { + const log2 = logLevel.getLogger(`@pollyjs/core:${this.recordingName}:${this.id}`); + log2.setLevel(this.config.logLevel); + return log2; + } else { + return this[POLLY].logger.log; + } + } + on(eventName, listener2) { + this[EVENT_EMITTER].on(eventName, listener2); + return this; + } + once(eventName, listener2) { + this[EVENT_EMITTER].once(eventName, listener2); + return this; + } + off(eventName, listener2) { + this[EVENT_EMITTER].off(eventName, listener2); + return this; + } + async init() { + await this._emit("request"); + this.response = new PollyResponse(); + this.didRespond = false; + await this._identify(); + this.timestamp = utils.timestamp(); + } + async respond(response) { + const { + statusCode, + headers: headers2, + body: body3, + encoding + } = response || {}; + utils.assert("Cannot respond to a request that already has a response.", !this.didRespond); + if (this.aborted) { + return; + } + this.response.timestamp = utils.timestamp(); + this.response.status(statusCode); + this.response.setHeaders(headers2); + this.response.body = body3; + this.response.encoding = encoding; + await this._emit("beforeResponse", this.response); + this.response.end(); + this.responseTime = new Date(this.response.timestamp).getTime() - new Date(this.timestamp).getTime(); + this.didRespond = true; + this.end(); + await this._emit("response", this.response); + } + abort() { + this.aborted = true; + } + overrideRecordingName(recordingName) { + validateRecordingName(recordingName); + this.recordingName = recordingName; + this.recordingId = guidForRecording(recordingName); + } + configure(config) { + validateRequestConfig(config); + this.config = mergeConfigs(this[POLLY].config, this.config || {}, config); + } + _intercept() { + return this[ROUTE].intercept(this, this.response, ...arguments); + } + _emit(eventName, ...args3) { + return this[ROUTE].emit(eventName, this, ...args3); + } + async _identify() { + const polly = this[POLLY]; + const { + _requests: requests + } = polly; + const { + matchRequestsBy + } = this.config; + this.identifiers = {}; + keys$4(NormalizeRequest).forEach((key) => { + if (this[key] && matchRequestsBy[key]) { + this.identifiers[key] = NormalizeRequest[key](this[key], matchRequestsBy[key], this); + } + }); + await this[EVENT_EMITTER].emit("identify", this); + freeze$1(this.identifiers); + this.id = md5(stringify(this.identifiers)); + this.order = matchRequestsBy.order && !this.shouldPassthrough && !this.shouldIntercept ? requests.slice(0, requests.indexOf(this)).filter((r) => r.id === this.id && r.recordingId === this.recordingId).length : 0; + this.log.debug("Request Identified:", { + id: this.id, + order: this.order, + identifiers: this.identifiers, + request: this + }); + } + }; + function castArray() { + if (!arguments.length) { + return []; + } + var value = arguments[0]; + return isArray$3(value) ? value : [value]; + } + function get(target, propertyKey) { + var receiver = arguments.length < 3 ? target : arguments[2]; + var desc, proto2; + if (_anObject(target) === receiver) + return target[propertyKey]; + if (desc = _objectGopd.f(target, propertyKey)) + return _has(desc, "value") ? desc.value : desc.get !== void 0 ? desc.get.call(receiver) : void 0; + if (_isObject(proto2 = _objectGpo(target))) + return get(proto2, propertyKey, receiver); + } + _export(_export.S, "Reflect", { get }); + var get$1 = _core.Reflect.get; + var get$2 = get$1; + function ownKeys$1(object, enumerableOnly) { + var keys2 = keys$3(object); + if (getOwnPropertySymbols$1) { + var symbols = getOwnPropertySymbols$1(object); + if (enumerableOnly) { + symbols = symbols.filter(function(sym) { + return getOwnPropertyDescriptor$1(object, sym).enumerable; + }); + } + keys2.push.apply(keys2, symbols); + } + return keys2; + } + function _objectSpread$1(target) { + for (var i2 = 1; i2 < arguments.length; i2++) { + var source2 = arguments[i2] != null ? arguments[i2] : {}; + if (i2 % 2) { + ownKeys$1(Object(source2), true).forEach(function(key) { + _defineProperty(target, key, source2[key]); + }); + } else if (getOwnPropertyDescriptors$1) { + defineProperties$1(target, getOwnPropertyDescriptors$1(source2)); + } else { + ownKeys$1(Object(source2)).forEach(function(key) { + defineProperty$3(target, key, getOwnPropertyDescriptor$1(source2, key)); + }); + } + } + return target; + } + var HANDLERS = symbol$1(); + function requestWithParams(req, { + params + }) { + return new Proxy(req, { + set(source2, prop, value) { + source2[prop] = value; + return true; + }, + get(source2, prop) { + if (prop === "params") { + return _objectSpread$1({}, params); + } + return get$2(source2, prop); + } + }); + } + var Route = class { + /** + * + * @param {RecognizeResults} recognizeResults + * @param {Array} middleware + */ + constructor(recognizeResults, middleware) { + const result = recognizeResults && recognizeResults[0]; + this.params = {}; + this.queryParams = {}; + this.handlers = []; + this.middleware = middleware || []; + if (result) { + this.handlers = result.handler; + this.params = _objectSpread$1({}, result.params); + this.queryParams = recognizeResults.queryParams; + } + this[HANDLERS] = this._orderedHandlers(); + } + shouldPassthrough() { + return Boolean(this._valueFor("passthrough")); + } + shouldIntercept() { + return Boolean(this._valueFor("intercept")); + } + recordingName() { + return this._valueFor("recordingName") || null; + } + config() { + return mergeConfigs(...this[HANDLERS].map(({ + handler + }) => handler.get("config"))); + } + applyFiltersWithArgs(req, ...args3) { + this[HANDLERS] = this[HANDLERS].filter(({ + route, + handler + }) => [...handler.get("filters")].every((fn) => fn(requestWithParams(req, route), ...args3))); + } + /** + * Invokes the intercept handlers defined on the routes + middleware. + * @param {PollyRequest} req + * @param {PollyResponse} res + * @param {Interceptor} interceptor + */ + async intercept(req, res, interceptor) { + for (const { + route, + handler + } of this[HANDLERS]) { + if (!interceptor.shouldIntercept || interceptor.shouldStopPropagating) { + return; + } + if (handler.has("intercept")) { + await handler.get("intercept")(requestWithParams(req, route), res, interceptor); + } + } + } + /** + * Emit an event registered on the handler + all middleware handler events + * @param {String} eventName + * @param {PollyRequest} req + * @param {...args} ...args + */ + async emit(eventName, req, ...args3) { + for (const { + route, + handler + } of this[HANDLERS]) { + const shouldContinue = await handler._eventEmitter.emit(eventName, requestWithParams(req, route), ...args3); + if (!shouldContinue) { + return; + } + } + } + _orderedHandlers() { + return [...this.middleware, this].reduce((handlers, route) => { + handlers.push(...route.handlers.map((handler) => ({ + route, + handler + }))); + return handlers; + }, []); + } + _valueFor(key) { + let value; + for (const { + handler + } of this[HANDLERS]) { + if (handler.has(key)) { + value = handler.get(key); + } + } + return value; + } + }; + function ownKeys$2(object, enumerableOnly) { + var keys2 = keys$3(object); + if (getOwnPropertySymbols$1) { + var symbols = getOwnPropertySymbols$1(object); + if (enumerableOnly) { + symbols = symbols.filter(function(sym) { + return getOwnPropertyDescriptor$1(object, sym).enumerable; + }); + } + keys2.push.apply(keys2, symbols); + } + return keys2; + } + function _objectSpread$2(target) { + for (var i2 = 1; i2 < arguments.length; i2++) { + var source2 = arguments[i2] != null ? arguments[i2] : {}; + if (i2 % 2) { + ownKeys$2(Object(source2), true).forEach(function(key) { + _defineProperty(target, key, source2[key]); + }); + } else if (getOwnPropertyDescriptors$1) { + defineProperties$1(target, getOwnPropertyDescriptors$1(source2)); + } else { + ownKeys$2(Object(source2)).forEach(function(key) { + defineProperty$3(target, key, getOwnPropertyDescriptor$1(source2, key)); + }); + } + } + return target; + } + var Handler = class extends map$1 { + constructor() { + super(); + this.set("config", {}); + this.set("defaultOptions", {}); + this.set("filters", new set$1()); + this._eventEmitter = new EventEmitter4({ + eventNames: ["error", "abort", "request", "beforeReplay", "beforePersist", "beforeResponse", "response"] + }); + } + on(eventName, listener2, options2 = {}) { + this._eventEmitter.on(eventName, listener2, _objectSpread$2(_objectSpread$2({}, this.get("defaultOptions")), options2)); + return this; + } + once(eventName, listener2) { + this._eventEmitter.once(eventName, listener2); + return this; + } + off(eventName, listener2) { + this._eventEmitter.off(eventName, listener2); + return this; + } + passthrough(value = true) { + this.set("passthrough", Boolean(value)); + if (this.get("passthrough")) { + this.delete("intercept"); + } + return this; + } + intercept(fn, options2 = {}) { + utils.assert(`Invalid intercept handler provided. Expected function, received: "${typeof fn}".`, typeof fn === "function"); + options2 = _objectSpread$2(_objectSpread$2({}, this.get("defaultOptions")), options2); + if ("times" in options2) { + validateTimesOption(options2.times); + fn = cancelFnAfterNTimes(fn, options2.times, () => this.delete("intercept")); + } + this.set("intercept", fn); + this.passthrough(false); + return this; + } + recordingName(recordingName) { + if (recordingName) { + validateRecordingName(recordingName); + } + this.set("recordingName", recordingName); + return this; + } + configure(config) { + validateRequestConfig(config); + this.set("config", config); + return this; + } + filter(fn) { + utils.assert(`Invalid filter callback provided. Expected function, received: "${typeof fn}".`, typeof fn === "function"); + this.get("filters").add(fn); + return this; + } + times(n) { + if (!n && typeof n !== "number") { + delete this.get("defaultOptions").times; + } else { + validateTimesOption(n); + this.get("defaultOptions").times = n; + } + return this; + } + }; + var GLOBAL = "__GLOBAL__"; + var Middleware = class { + constructor({ + host, + paths, + global: global2, + handler + }) { + this.global = Boolean(global2); + this.handler = handler; + this.host = host; + this.paths = this.global ? [GLOBAL] : paths; + this._routeRecognizer = new RouteRecognizer(); + this.paths.forEach((path30) => this._routeRecognizer.add([{ + path: path30, + handler: [handler] + }])); + } + match(host, path30) { + if (this.global) { + return new Route(this._routeRecognizer.recognize(GLOBAL)); + } + if (this.host === host) { + const recognizeResult = this._routeRecognizer.recognize(path30); + return recognizeResult && new Route(recognizeResult); + } + } + }; + var HOST = symbol$1(); + var NAMESPACES = symbol$1(); + var REGISTRY = symbol$1(); + var MIDDLEWARE = symbol$1(); + var HANDLERS$1 = symbol$1(); + var CHARS = { + SLASH: "/", + STAR: "*", + COLON: ":" + }; + var { + keys: keys$5 + } = Object; + function parseUrl$1(url3) { + const parsedUrl = new utils.URL(url3); + const host = parsedUrl.host ? parsedUrl.origin : CHARS.SLASH; + const path30 = parsedUrl.pathname || CHARS.SLASH; + return { + host, + path: path30 + }; + } + var Server = class { + constructor() { + this[HOST] = ""; + this[REGISTRY] = {}; + this[NAMESPACES] = []; + this[MIDDLEWARE] = []; + } + host(path30, callback) { + const host = this[HOST]; + utils.assert(`[Server] A host cannot be specified within another host.`, !host); + this[HOST] = path30; + callback(this); + this[HOST] = host; + } + namespace(path30, callback) { + const namespaces = this[NAMESPACES]; + this[NAMESPACES] = [...namespaces, path30]; + callback(this); + this[NAMESPACES] = namespaces; + } + timeout() { + return utils.timeout(...arguments); + } + get() { + return this._register("GET", ...arguments); + } + put() { + return this._register("PUT", ...arguments); + } + post() { + return this._register("POST", ...arguments); + } + delete() { + return this._register("DELETE", ...arguments); + } + patch() { + return this._register("PATCH", ...arguments); + } + merge() { + return this._register("MERGE", ...arguments); + } + head() { + return this._register("HEAD", ...arguments); + } + options() { + return this._register("OPTIONS", ...arguments); + } + any() { + return this._registerMiddleware(...arguments); + } + lookup(method2, url3) { + return new Route(this._recognize(method2, url3), this._lookupMiddleware(url3)); + } + _lookupMiddleware(url3) { + const { + host, + path: path30 + } = parseUrl$1(url3); + return this[MIDDLEWARE].map((m) => m.match(host, path30)).filter(Boolean); + } + _register(method2, routes) { + const handler = new Handler(); + castArray(routes).forEach((route) => { + const { + host, + path: path30 + } = parseUrl$1(this._buildUrl(route)); + const registry = this._registryForHost(host); + const name = this._nameForPath(path30); + const router = registry[method2.toUpperCase()]; + if (router[HANDLERS$1].has(name)) { + router[HANDLERS$1].get(name).push(handler); + } else { + router[HANDLERS$1].set(name, [handler]); + router.add([{ + path: path30, + handler: router[HANDLERS$1].get(name) + }]); + } + }); + return handler; + } + _registerMiddleware(routes) { + const handler = new Handler(); + const pathsByHost = {}; + castArray(routes).forEach((route) => { + if ((!route || route === CHARS.STAR) && !this[HOST] && this[NAMESPACES].length === 0) { + this[MIDDLEWARE].push(new Middleware({ + global: true, + handler + })); + } else { + const { + host, + path: path30 + } = parseUrl$1(this._buildUrl(route)); + pathsByHost[host] = pathsByHost[host] || []; + pathsByHost[host].push(path30); + } + }); + keys$5(pathsByHost).forEach((host) => { + this[MIDDLEWARE].push(new Middleware({ + host, + paths: pathsByHost[host], + handler + })); + }); + return handler; + } + _recognize(method2, url3) { + const { + host, + path: path30 + } = parseUrl$1(url3); + const registry = this._registryForHost(host); + return registry[method2.toUpperCase()].recognize(path30); + } + _buildUrl(path30) { + return utils.buildUrl(this[HOST], ...this[NAMESPACES], path30); + } + /** + * Converts a url path into a name used to combine route handlers by + * normalizing dynamic and star segments + * @param {String} path + * @returns {String} + */ + _nameForPath(path30 = "") { + const name = path30.split(CHARS.SLASH).map((segment) => { + switch (segment.charAt(0)) { + case CHARS.COLON: + return CHARS.COLON; + case CHARS.STAR: + return CHARS.STAR; + default: + return segment; + } + }).join(CHARS.SLASH); + return name.replace(/\/$/, "") || CHARS.SLASH; + } + _registryForHost(host) { + if (!this[REGISTRY][host]) { + this[REGISTRY][host] = utils.HTTP_METHODS.reduce((acc, method2) => { + acc[method2] = new RouteRecognizer(); + acc[method2][HANDLERS$1] = new map$1(); + return acc; + }, {}); + } + return this[REGISTRY][host]; + } + }; + var RECORDING_NAME = symbol$1(); + var RECORDING_ID = symbol$1(); + var PAUSED_ADAPTERS = symbol$1(); + var FACTORY_REGISTRATION = new weakMap$1(); + var EVENT_EMITTER$1 = new EventEmitter4({ + eventNames: ["register", "create", "stop"] + }); + var Polly2 = class { + constructor(recordingName, config) { + this.recordingName = recordingName; + this.server = new Server(); + this.config = {}; + this.container = new Container(); + EVENT_EMITTER$1.emitSync("register", this.container); + this.adapters = new map$1(); + this.persister = null; + this._requests = []; + EVENT_EMITTER$1.emitSync("create", this); + this.configure(config); + } + /** + * Package version. + * + * @readonly + * @public + * @memberof Polly + */ + static get VERSION() { + return version4; + } + /** + * @public + * @memberof Polly + */ + get recordingName() { + return this[RECORDING_NAME]; + } + set recordingName(name) { + validateRecordingName(name); + this[RECORDING_NAME] = name; + this[RECORDING_ID] = guidForRecording(name); + } + /** + * @readonly + * @public + * @memberof Polly + */ + get recordingId() { + return this[RECORDING_ID]; + } + get mode() { + return this.config.mode; + } + set mode(mode) { + const possibleModes = values$1(utils.MODES); + utils.assert(`Invalid mode provided: "${mode}". Possible modes: ${possibleModes.join(", ")}.`, possibleModes.includes(mode)); + this.config.mode = mode; + } + static on(eventName, listener2) { + EVENT_EMITTER$1.on(eventName, listener2); + return this; + } + static once(eventName, listener2) { + EVENT_EMITTER$1.once(eventName, listener2); + return this; + } + static off(eventName, listener2) { + EVENT_EMITTER$1.off(eventName, listener2); + return this; + } + static register(Factory) { + if (!FACTORY_REGISTRATION.has(Factory)) { + FACTORY_REGISTRATION.set(Factory, (container) => container.register(Factory)); + } + this.on("register", FACTORY_REGISTRATION.get(Factory)); + return this; + } + static unregister(Factory) { + if (FACTORY_REGISTRATION.has(Factory)) { + this.off("register", FACTORY_REGISTRATION.get(Factory)); + } + return this; + } + /** + * @param {Object} [config={}] + * @public + * @memberof Polly + */ + configure(config = {}) { + const { + container + } = this; + utils.assert("Cannot call `configure` once requests have been handled.", this._requests.length === 0); + utils.assert("Cannot call `configure` on an instance of Polly that is not running.", this.mode !== utils.MODES.STOPPED); + this.disconnect(); + if (this.logger) { + this.logger.disconnect(); + } + this.config = mergeConfigs(DefaultConfig, this.config, config); + this.logger = new Logger(this); + this.logger.connect(); + this.config.adapters.forEach((adapter) => this.connectTo(adapter)); + let { + persister + } = this.config; + if (persister) { + if (typeof persister === "function") { + container.register(persister); + persister = persister.id; + } + utils.assert(`Persister matching the name \`${persister}\` was not registered.`, container.has(`persister:${persister}`)); + this.persister = new (container.lookup(`persister:${persister}`))(this); + } + this.logger.log.debug("Polly instance configured.", { + config: this.config + }); + } + /** + * @public + * @memberof Polly + */ + record() { + this.mode = utils.MODES.RECORD; + } + /** + * @public + * @memberof Polly + */ + replay() { + this.mode = utils.MODES.REPLAY; + } + /** + * @public + * @memberof Polly + */ + passthrough() { + this.mode = utils.MODES.PASSTHROUGH; + } + /** + * @public + * @memberof Polly + */ + pause() { + this[PAUSED_ADAPTERS] = [...this.adapters.keys()]; + this.disconnect(); + } + /** + * @public + * @memberof Polly + */ + play() { + if (this[PAUSED_ADAPTERS]) { + this[PAUSED_ADAPTERS].forEach((adapterId) => this.connectTo(adapterId)); + delete this[PAUSED_ADAPTERS]; + } + } + /** + * @public + * @memberof Polly + */ + async stop() { + if (this.mode !== utils.MODES.STOPPED) { + if (this.config.flushRequestsOnStop) { + await this.flush(); + } + this.disconnect(); + await (this.persister && this.persister.persist()); + this.mode = utils.MODES.STOPPED; + await EVENT_EMITTER$1.emit("stop", this); + this.logger.log.debug("Polly instance stopped.", { + recordingName: this.recordingName + }); + this.logger.disconnect(); + } + } + async flush() { + const NOOP = () => { + }; + await promise$1.all( + // The NOOP is there to handle both a resolved and rejected promise + // to ensure the promise resolves regardless of the outcome. + this._requests.map((r) => promise$1.resolve(r.promise).then(NOOP, NOOP)) + ); + } + /** + * @param {String|Function} idOrFactory + * @public + * @memberof Polly + */ + connectTo(idOrAdapter) { + const { + container, + adapters + } = this; + let adapterId = idOrAdapter; + if (typeof idOrAdapter === "function") { + container.register(idOrAdapter); + adapterId = idOrAdapter.id; + } + utils.assert(`Adapter matching the name \`${adapterId}\` was not registered.`, container.has(`adapter:${adapterId}`)); + this.disconnectFrom(adapterId); + const adapter = new (container.lookup(`adapter:${adapterId}`))(this); + adapter.connect(); + adapters.set(adapterId, adapter); + } + /** + * @param {String|Function} idOrAdapter + * @public + * @memberof Polly + */ + disconnectFrom(idOrAdapter) { + const { + adapters + } = this; + let adapterId = idOrAdapter; + if (typeof idOrAdapter === "function") { + adapterId = idOrAdapter.id; + } + if (adapters.has(adapterId)) { + adapters.get(adapterId).disconnect(); + adapters.delete(adapterId); + } + } + /** + * @public + * @memberof Polly + */ + disconnect() { + for (const adapterId of this.adapters.keys()) { + this.disconnectFrom(adapterId); + } + } + /** + * @param {Object} [request={}] + * @returns {PollyRequest} + * @private + * @memberof Polly + */ + registerRequest(request = {}) { + const pollyRequest = new PollyRequest(this, request); + this._requests.push(pollyRequest); + return pollyRequest; + } + }; + var { + defineProperty: defineProperty$5 + } = Object; + function beforeEach(context2, recordingName, defaults4) { + defineProperty$5(context2, "polly", { + writable: true, + enumerable: true, + configurable: true, + value: new Polly2(recordingName, defaults4) + }); + } + async function afterEach(context2, framework) { + await context2.polly.stop(); + defineProperty$5(context2, "polly", { + enumerable: true, + configurable: true, + get() { + throw new utils.PollyError(`You are trying to access an instance of Polly that is no longer available. +See: https://netflix.github.io/pollyjs/#/test-frameworks/${framework}?id=test-hook-ordering`); + } + }); + } + function generateRecordingName(assert2) { + return assert2.test.testReport.fullName.join("/"); + } + function setupQunit(hooks, defaults4 = {}) { + setupQunit.beforeEach(hooks, defaults4); + setupQunit.afterEach(hooks); + } + setupQunit.beforeEach = function setupQunitBeforeEach(hooks, defaults4 = {}) { + hooks.beforeEach(function() { + return beforeEach(this, generateRecordingName(...arguments), defaults4); + }); + }; + setupQunit.afterEach = function setupQunitAfterEach(hooks) { + hooks.afterEach(function() { + return afterEach(this, "qunit"); + }); + }; + function generateRecordingName$1(context2) { + const { + currentTest + } = context2; + const parts = [currentTest.title]; + let parent = currentTest.parent; + while (parent && parent.title) { + parts.push(parent.title); + parent = parent.parent; + } + return parts.reverse().join("/"); + } + function setupMocha(defaults4 = {}, ctx = global) { + setupMocha.beforeEach(defaults4, ctx); + setupMocha.afterEach(ctx); + } + setupMocha.beforeEach = function setupMochaBeforeEach(defaults4, ctx = global) { + ctx.beforeEach(function() { + return beforeEach(this, generateRecordingName$1(this), defaults4); + }); + }; + setupMocha.afterEach = function setupMochaAfterEach(ctx = global) { + ctx.afterEach(function() { + return afterEach(this, "mocha"); + }); + }; + exports2.Polly = Polly2; + exports2.Timing = Timing; + exports2.setupMocha = setupMocha; + exports2.setupQunit = setupQunit; + } +}); + +// ../node_modules/.pnpm/bowser@2.11.0/node_modules/bowser/es5.js +var require_es52 = __commonJS({ + "../node_modules/.pnpm/bowser@2.11.0/node_modules/bowser/es5.js"(exports2, module2) { + !function(e, t) { + "object" == typeof exports2 && "object" == typeof module2 ? module2.exports = t() : "function" == typeof define && define.amd ? define([], t) : "object" == typeof exports2 ? exports2.bowser = t() : e.bowser = t(); + }(exports2, function() { + return function(e) { + var t = {}; + function r(n) { + if (t[n]) + return t[n].exports; + var i = t[n] = { i: n, l: false, exports: {} }; + return e[n].call(i.exports, i, i.exports, r), i.l = true, i.exports; + } + return r.m = e, r.c = t, r.d = function(e2, t2, n) { + r.o(e2, t2) || Object.defineProperty(e2, t2, { enumerable: true, get: n }); + }, r.r = function(e2) { + "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e2, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(e2, "__esModule", { value: true }); + }, r.t = function(e2, t2) { + if (1 & t2 && (e2 = r(e2)), 8 & t2) + return e2; + if (4 & t2 && "object" == typeof e2 && e2 && e2.__esModule) + return e2; + var n = /* @__PURE__ */ Object.create(null); + if (r.r(n), Object.defineProperty(n, "default", { enumerable: true, value: e2 }), 2 & t2 && "string" != typeof e2) + for (var i in e2) + r.d(n, i, function(t3) { + return e2[t3]; + }.bind(null, i)); + return n; + }, r.n = function(e2) { + var t2 = e2 && e2.__esModule ? function() { + return e2.default; + } : function() { + return e2; + }; + return r.d(t2, "a", t2), t2; + }, r.o = function(e2, t2) { + return Object.prototype.hasOwnProperty.call(e2, t2); + }, r.p = "", r(r.s = 90); + }({ 17: function(e, t, r) { + "use strict"; + t.__esModule = true, t.default = void 0; + var n = r(18), i = function() { + function e2() { + } + return e2.getFirstMatch = function(e3, t2) { + var r2 = t2.match(e3); + return r2 && r2.length > 0 && r2[1] || ""; + }, e2.getSecondMatch = function(e3, t2) { + var r2 = t2.match(e3); + return r2 && r2.length > 1 && r2[2] || ""; + }, e2.matchAndReturnConst = function(e3, t2, r2) { + if (e3.test(t2)) + return r2; + }, e2.getWindowsVersionName = function(e3) { + switch (e3) { + case "NT": + return "NT"; + case "XP": + return "XP"; + case "NT 5.0": + return "2000"; + case "NT 5.1": + return "XP"; + case "NT 5.2": + return "2003"; + case "NT 6.0": + return "Vista"; + case "NT 6.1": + return "7"; + case "NT 6.2": + return "8"; + case "NT 6.3": + return "8.1"; + case "NT 10.0": + return "10"; + default: + return; + } + }, e2.getMacOSVersionName = function(e3) { + var t2 = e3.split(".").splice(0, 2).map(function(e4) { + return parseInt(e4, 10) || 0; + }); + if (t2.push(0), 10 === t2[0]) + switch (t2[1]) { + case 5: + return "Leopard"; + case 6: + return "Snow Leopard"; + case 7: + return "Lion"; + case 8: + return "Mountain Lion"; + case 9: + return "Mavericks"; + case 10: + return "Yosemite"; + case 11: + return "El Capitan"; + case 12: + return "Sierra"; + case 13: + return "High Sierra"; + case 14: + return "Mojave"; + case 15: + return "Catalina"; + default: + return; + } + }, e2.getAndroidVersionName = function(e3) { + var t2 = e3.split(".").splice(0, 2).map(function(e4) { + return parseInt(e4, 10) || 0; + }); + if (t2.push(0), !(1 === t2[0] && t2[1] < 5)) + return 1 === t2[0] && t2[1] < 6 ? "Cupcake" : 1 === t2[0] && t2[1] >= 6 ? "Donut" : 2 === t2[0] && t2[1] < 2 ? "Eclair" : 2 === t2[0] && 2 === t2[1] ? "Froyo" : 2 === t2[0] && t2[1] > 2 ? "Gingerbread" : 3 === t2[0] ? "Honeycomb" : 4 === t2[0] && t2[1] < 1 ? "Ice Cream Sandwich" : 4 === t2[0] && t2[1] < 4 ? "Jelly Bean" : 4 === t2[0] && t2[1] >= 4 ? "KitKat" : 5 === t2[0] ? "Lollipop" : 6 === t2[0] ? "Marshmallow" : 7 === t2[0] ? "Nougat" : 8 === t2[0] ? "Oreo" : 9 === t2[0] ? "Pie" : void 0; + }, e2.getVersionPrecision = function(e3) { + return e3.split(".").length; + }, e2.compareVersions = function(t2, r2, n2) { + void 0 === n2 && (n2 = false); + var i2 = e2.getVersionPrecision(t2), s = e2.getVersionPrecision(r2), a = Math.max(i2, s), o = 0, u = e2.map([t2, r2], function(t3) { + var r3 = a - e2.getVersionPrecision(t3), n3 = t3 + new Array(r3 + 1).join(".0"); + return e2.map(n3.split("."), function(e3) { + return new Array(20 - e3.length).join("0") + e3; + }).reverse(); + }); + for (n2 && (o = a - Math.min(i2, s)), a -= 1; a >= o; ) { + if (u[0][a] > u[1][a]) + return 1; + if (u[0][a] === u[1][a]) { + if (a === o) + return 0; + a -= 1; + } else if (u[0][a] < u[1][a]) + return -1; + } + }, e2.map = function(e3, t2) { + var r2, n2 = []; + if (Array.prototype.map) + return Array.prototype.map.call(e3, t2); + for (r2 = 0; r2 < e3.length; r2 += 1) + n2.push(t2(e3[r2])); + return n2; + }, e2.find = function(e3, t2) { + var r2, n2; + if (Array.prototype.find) + return Array.prototype.find.call(e3, t2); + for (r2 = 0, n2 = e3.length; r2 < n2; r2 += 1) { + var i2 = e3[r2]; + if (t2(i2, r2)) + return i2; + } + }, e2.assign = function(e3) { + for (var t2, r2, n2 = e3, i2 = arguments.length, s = new Array(i2 > 1 ? i2 - 1 : 0), a = 1; a < i2; a++) + s[a - 1] = arguments[a]; + if (Object.assign) + return Object.assign.apply(Object, [e3].concat(s)); + var o = function() { + var e4 = s[t2]; + "object" == typeof e4 && null !== e4 && Object.keys(e4).forEach(function(t3) { + n2[t3] = e4[t3]; + }); + }; + for (t2 = 0, r2 = s.length; t2 < r2; t2 += 1) + o(); + return e3; + }, e2.getBrowserAlias = function(e3) { + return n.BROWSER_ALIASES_MAP[e3]; + }, e2.getBrowserTypeByAlias = function(e3) { + return n.BROWSER_MAP[e3] || ""; + }, e2; + }(); + t.default = i, e.exports = t.default; + }, 18: function(e, t, r) { + "use strict"; + t.__esModule = true, t.ENGINE_MAP = t.OS_MAP = t.PLATFORMS_MAP = t.BROWSER_MAP = t.BROWSER_ALIASES_MAP = void 0; + t.BROWSER_ALIASES_MAP = { "Amazon Silk": "amazon_silk", "Android Browser": "android", Bada: "bada", BlackBerry: "blackberry", Chrome: "chrome", Chromium: "chromium", Electron: "electron", Epiphany: "epiphany", Firefox: "firefox", Focus: "focus", Generic: "generic", "Google Search": "google_search", Googlebot: "googlebot", "Internet Explorer": "ie", "K-Meleon": "k_meleon", Maxthon: "maxthon", "Microsoft Edge": "edge", "MZ Browser": "mz", "NAVER Whale Browser": "naver", Opera: "opera", "Opera Coast": "opera_coast", PhantomJS: "phantomjs", Puffin: "puffin", QupZilla: "qupzilla", QQ: "qq", QQLite: "qqlite", Safari: "safari", Sailfish: "sailfish", "Samsung Internet for Android": "samsung_internet", SeaMonkey: "seamonkey", Sleipnir: "sleipnir", Swing: "swing", Tizen: "tizen", "UC Browser": "uc", Vivaldi: "vivaldi", "WebOS Browser": "webos", WeChat: "wechat", "Yandex Browser": "yandex", Roku: "roku" }; + t.BROWSER_MAP = { amazon_silk: "Amazon Silk", android: "Android Browser", bada: "Bada", blackberry: "BlackBerry", chrome: "Chrome", chromium: "Chromium", electron: "Electron", epiphany: "Epiphany", firefox: "Firefox", focus: "Focus", generic: "Generic", googlebot: "Googlebot", google_search: "Google Search", ie: "Internet Explorer", k_meleon: "K-Meleon", maxthon: "Maxthon", edge: "Microsoft Edge", mz: "MZ Browser", naver: "NAVER Whale Browser", opera: "Opera", opera_coast: "Opera Coast", phantomjs: "PhantomJS", puffin: "Puffin", qupzilla: "QupZilla", qq: "QQ Browser", qqlite: "QQ Browser Lite", safari: "Safari", sailfish: "Sailfish", samsung_internet: "Samsung Internet for Android", seamonkey: "SeaMonkey", sleipnir: "Sleipnir", swing: "Swing", tizen: "Tizen", uc: "UC Browser", vivaldi: "Vivaldi", webos: "WebOS Browser", wechat: "WeChat", yandex: "Yandex Browser" }; + t.PLATFORMS_MAP = { tablet: "tablet", mobile: "mobile", desktop: "desktop", tv: "tv" }; + t.OS_MAP = { WindowsPhone: "Windows Phone", Windows: "Windows", MacOS: "macOS", iOS: "iOS", Android: "Android", WebOS: "WebOS", BlackBerry: "BlackBerry", Bada: "Bada", Tizen: "Tizen", Linux: "Linux", ChromeOS: "Chrome OS", PlayStation4: "PlayStation 4", Roku: "Roku" }; + t.ENGINE_MAP = { EdgeHTML: "EdgeHTML", Blink: "Blink", Trident: "Trident", Presto: "Presto", Gecko: "Gecko", WebKit: "WebKit" }; + }, 90: function(e, t, r) { + "use strict"; + t.__esModule = true, t.default = void 0; + var n, i = (n = r(91)) && n.__esModule ? n : { default: n }, s = r(18); + function a(e2, t2) { + for (var r2 = 0; r2 < t2.length; r2++) { + var n2 = t2[r2]; + n2.enumerable = n2.enumerable || false, n2.configurable = true, "value" in n2 && (n2.writable = true), Object.defineProperty(e2, n2.key, n2); + } + } + var o = function() { + function e2() { + } + var t2, r2, n2; + return e2.getParser = function(e3, t3) { + if (void 0 === t3 && (t3 = false), "string" != typeof e3) + throw new Error("UserAgent should be a string"); + return new i.default(e3, t3); + }, e2.parse = function(e3) { + return new i.default(e3).getResult(); + }, t2 = e2, n2 = [{ key: "BROWSER_MAP", get: function() { + return s.BROWSER_MAP; + } }, { key: "ENGINE_MAP", get: function() { + return s.ENGINE_MAP; + } }, { key: "OS_MAP", get: function() { + return s.OS_MAP; + } }, { key: "PLATFORMS_MAP", get: function() { + return s.PLATFORMS_MAP; + } }], (r2 = null) && a(t2.prototype, r2), n2 && a(t2, n2), e2; + }(); + t.default = o, e.exports = t.default; + }, 91: function(e, t, r) { + "use strict"; + t.__esModule = true, t.default = void 0; + var n = u(r(92)), i = u(r(93)), s = u(r(94)), a = u(r(95)), o = u(r(17)); + function u(e2) { + return e2 && e2.__esModule ? e2 : { default: e2 }; + } + var d = function() { + function e2(e3, t3) { + if (void 0 === t3 && (t3 = false), null == e3 || "" === e3) + throw new Error("UserAgent parameter can't be empty"); + this._ua = e3, this.parsedResult = {}, true !== t3 && this.parse(); + } + var t2 = e2.prototype; + return t2.getUA = function() { + return this._ua; + }, t2.test = function(e3) { + return e3.test(this._ua); + }, t2.parseBrowser = function() { + var e3 = this; + this.parsedResult.browser = {}; + var t3 = o.default.find(n.default, function(t4) { + if ("function" == typeof t4.test) + return t4.test(e3); + if (t4.test instanceof Array) + return t4.test.some(function(t5) { + return e3.test(t5); + }); + throw new Error("Browser's test function is not valid"); + }); + return t3 && (this.parsedResult.browser = t3.describe(this.getUA())), this.parsedResult.browser; + }, t2.getBrowser = function() { + return this.parsedResult.browser ? this.parsedResult.browser : this.parseBrowser(); + }, t2.getBrowserName = function(e3) { + return e3 ? String(this.getBrowser().name).toLowerCase() || "" : this.getBrowser().name || ""; + }, t2.getBrowserVersion = function() { + return this.getBrowser().version; + }, t2.getOS = function() { + return this.parsedResult.os ? this.parsedResult.os : this.parseOS(); + }, t2.parseOS = function() { + var e3 = this; + this.parsedResult.os = {}; + var t3 = o.default.find(i.default, function(t4) { + if ("function" == typeof t4.test) + return t4.test(e3); + if (t4.test instanceof Array) + return t4.test.some(function(t5) { + return e3.test(t5); + }); + throw new Error("Browser's test function is not valid"); + }); + return t3 && (this.parsedResult.os = t3.describe(this.getUA())), this.parsedResult.os; + }, t2.getOSName = function(e3) { + var t3 = this.getOS().name; + return e3 ? String(t3).toLowerCase() || "" : t3 || ""; + }, t2.getOSVersion = function() { + return this.getOS().version; + }, t2.getPlatform = function() { + return this.parsedResult.platform ? this.parsedResult.platform : this.parsePlatform(); + }, t2.getPlatformType = function(e3) { + void 0 === e3 && (e3 = false); + var t3 = this.getPlatform().type; + return e3 ? String(t3).toLowerCase() || "" : t3 || ""; + }, t2.parsePlatform = function() { + var e3 = this; + this.parsedResult.platform = {}; + var t3 = o.default.find(s.default, function(t4) { + if ("function" == typeof t4.test) + return t4.test(e3); + if (t4.test instanceof Array) + return t4.test.some(function(t5) { + return e3.test(t5); + }); + throw new Error("Browser's test function is not valid"); + }); + return t3 && (this.parsedResult.platform = t3.describe(this.getUA())), this.parsedResult.platform; + }, t2.getEngine = function() { + return this.parsedResult.engine ? this.parsedResult.engine : this.parseEngine(); + }, t2.getEngineName = function(e3) { + return e3 ? String(this.getEngine().name).toLowerCase() || "" : this.getEngine().name || ""; + }, t2.parseEngine = function() { + var e3 = this; + this.parsedResult.engine = {}; + var t3 = o.default.find(a.default, function(t4) { + if ("function" == typeof t4.test) + return t4.test(e3); + if (t4.test instanceof Array) + return t4.test.some(function(t5) { + return e3.test(t5); + }); + throw new Error("Browser's test function is not valid"); + }); + return t3 && (this.parsedResult.engine = t3.describe(this.getUA())), this.parsedResult.engine; + }, t2.parse = function() { + return this.parseBrowser(), this.parseOS(), this.parsePlatform(), this.parseEngine(), this; + }, t2.getResult = function() { + return o.default.assign({}, this.parsedResult); + }, t2.satisfies = function(e3) { + var t3 = this, r2 = {}, n2 = 0, i2 = {}, s2 = 0; + if (Object.keys(e3).forEach(function(t4) { + var a3 = e3[t4]; + "string" == typeof a3 ? (i2[t4] = a3, s2 += 1) : "object" == typeof a3 && (r2[t4] = a3, n2 += 1); + }), n2 > 0) { + var a2 = Object.keys(r2), u2 = o.default.find(a2, function(e4) { + return t3.isOS(e4); + }); + if (u2) { + var d2 = this.satisfies(r2[u2]); + if (void 0 !== d2) + return d2; + } + var c = o.default.find(a2, function(e4) { + return t3.isPlatform(e4); + }); + if (c) { + var f = this.satisfies(r2[c]); + if (void 0 !== f) + return f; + } + } + if (s2 > 0) { + var l2 = Object.keys(i2), h = o.default.find(l2, function(e4) { + return t3.isBrowser(e4, true); + }); + if (void 0 !== h) + return this.compareVersion(i2[h]); + } + }, t2.isBrowser = function(e3, t3) { + void 0 === t3 && (t3 = false); + var r2 = this.getBrowserName().toLowerCase(), n2 = e3.toLowerCase(), i2 = o.default.getBrowserTypeByAlias(n2); + return t3 && i2 && (n2 = i2.toLowerCase()), n2 === r2; + }, t2.compareVersion = function(e3) { + var t3 = [0], r2 = e3, n2 = false, i2 = this.getBrowserVersion(); + if ("string" == typeof i2) + return ">" === e3[0] || "<" === e3[0] ? (r2 = e3.substr(1), "=" === e3[1] ? (n2 = true, r2 = e3.substr(2)) : t3 = [], ">" === e3[0] ? t3.push(1) : t3.push(-1)) : "=" === e3[0] ? r2 = e3.substr(1) : "~" === e3[0] && (n2 = true, r2 = e3.substr(1)), t3.indexOf(o.default.compareVersions(i2, r2, n2)) > -1; + }, t2.isOS = function(e3) { + return this.getOSName(true) === String(e3).toLowerCase(); + }, t2.isPlatform = function(e3) { + return this.getPlatformType(true) === String(e3).toLowerCase(); + }, t2.isEngine = function(e3) { + return this.getEngineName(true) === String(e3).toLowerCase(); + }, t2.is = function(e3, t3) { + return void 0 === t3 && (t3 = false), this.isBrowser(e3, t3) || this.isOS(e3) || this.isPlatform(e3); + }, t2.some = function(e3) { + var t3 = this; + return void 0 === e3 && (e3 = []), e3.some(function(e4) { + return t3.is(e4); + }); + }, e2; + }(); + t.default = d, e.exports = t.default; + }, 92: function(e, t, r) { + "use strict"; + t.__esModule = true, t.default = void 0; + var n, i = (n = r(17)) && n.__esModule ? n : { default: n }; + var s = /version\/(\d+(\.?_?\d+)+)/i, a = [{ test: [/googlebot/i], describe: function(e2) { + var t2 = { name: "Googlebot" }, r2 = i.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/opera/i], describe: function(e2) { + var t2 = { name: "Opera" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/opr\/|opios/i], describe: function(e2) { + var t2 = { name: "Opera" }, r2 = i.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/SamsungBrowser/i], describe: function(e2) { + var t2 = { name: "Samsung Internet for Android" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/Whale/i], describe: function(e2) { + var t2 = { name: "NAVER Whale Browser" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/MZBrowser/i], describe: function(e2) { + var t2 = { name: "MZ Browser" }, r2 = i.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/focus/i], describe: function(e2) { + var t2 = { name: "Focus" }, r2 = i.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/swing/i], describe: function(e2) { + var t2 = { name: "Swing" }, r2 = i.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/coast/i], describe: function(e2) { + var t2 = { name: "Opera Coast" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/opt\/\d+(?:.?_?\d+)+/i], describe: function(e2) { + var t2 = { name: "Opera Touch" }, r2 = i.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/yabrowser/i], describe: function(e2) { + var t2 = { name: "Yandex Browser" }, r2 = i.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/ucbrowser/i], describe: function(e2) { + var t2 = { name: "UC Browser" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/Maxthon|mxios/i], describe: function(e2) { + var t2 = { name: "Maxthon" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/epiphany/i], describe: function(e2) { + var t2 = { name: "Epiphany" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/puffin/i], describe: function(e2) { + var t2 = { name: "Puffin" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/sleipnir/i], describe: function(e2) { + var t2 = { name: "Sleipnir" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/k-meleon/i], describe: function(e2) { + var t2 = { name: "K-Meleon" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/micromessenger/i], describe: function(e2) { + var t2 = { name: "WeChat" }, r2 = i.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/qqbrowser/i], describe: function(e2) { + var t2 = { name: /qqbrowserlite/i.test(e2) ? "QQ Browser Lite" : "QQ Browser" }, r2 = i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/msie|trident/i], describe: function(e2) { + var t2 = { name: "Internet Explorer" }, r2 = i.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/\sedg\//i], describe: function(e2) { + var t2 = { name: "Microsoft Edge" }, r2 = i.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/edg([ea]|ios)/i], describe: function(e2) { + var t2 = { name: "Microsoft Edge" }, r2 = i.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/vivaldi/i], describe: function(e2) { + var t2 = { name: "Vivaldi" }, r2 = i.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/seamonkey/i], describe: function(e2) { + var t2 = { name: "SeaMonkey" }, r2 = i.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/sailfish/i], describe: function(e2) { + var t2 = { name: "Sailfish" }, r2 = i.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/silk/i], describe: function(e2) { + var t2 = { name: "Amazon Silk" }, r2 = i.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/phantom/i], describe: function(e2) { + var t2 = { name: "PhantomJS" }, r2 = i.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/slimerjs/i], describe: function(e2) { + var t2 = { name: "SlimerJS" }, r2 = i.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/blackberry|\bbb\d+/i, /rim\stablet/i], describe: function(e2) { + var t2 = { name: "BlackBerry" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/(web|hpw)[o0]s/i], describe: function(e2) { + var t2 = { name: "WebOS Browser" }, r2 = i.default.getFirstMatch(s, e2) || i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/bada/i], describe: function(e2) { + var t2 = { name: "Bada" }, r2 = i.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/tizen/i], describe: function(e2) { + var t2 = { name: "Tizen" }, r2 = i.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/qupzilla/i], describe: function(e2) { + var t2 = { name: "QupZilla" }, r2 = i.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/firefox|iceweasel|fxios/i], describe: function(e2) { + var t2 = { name: "Firefox" }, r2 = i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/electron/i], describe: function(e2) { + var t2 = { name: "Electron" }, r2 = i.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/MiuiBrowser/i], describe: function(e2) { + var t2 = { name: "Miui" }, r2 = i.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/chromium/i], describe: function(e2) { + var t2 = { name: "Chromium" }, r2 = i.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i, e2) || i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/chrome|crios|crmo/i], describe: function(e2) { + var t2 = { name: "Chrome" }, r2 = i.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/GSA/i], describe: function(e2) { + var t2 = { name: "Google Search" }, r2 = i.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: function(e2) { + var t2 = !e2.test(/like android/i), r2 = e2.test(/android/i); + return t2 && r2; + }, describe: function(e2) { + var t2 = { name: "Android Browser" }, r2 = i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/playstation 4/i], describe: function(e2) { + var t2 = { name: "PlayStation 4" }, r2 = i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/safari|applewebkit/i], describe: function(e2) { + var t2 = { name: "Safari" }, r2 = i.default.getFirstMatch(s, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/.*/i], describe: function(e2) { + var t2 = -1 !== e2.search("\\(") ? /^(.*)\/(.*)[ \t]\((.*)/ : /^(.*)\/(.*) /; + return { name: i.default.getFirstMatch(t2, e2), version: i.default.getSecondMatch(t2, e2) }; + } }]; + t.default = a, e.exports = t.default; + }, 93: function(e, t, r) { + "use strict"; + t.__esModule = true, t.default = void 0; + var n, i = (n = r(17)) && n.__esModule ? n : { default: n }, s = r(18); + var a = [{ test: [/Roku\/DVP/], describe: function(e2) { + var t2 = i.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i, e2); + return { name: s.OS_MAP.Roku, version: t2 }; + } }, { test: [/windows phone/i], describe: function(e2) { + var t2 = i.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i, e2); + return { name: s.OS_MAP.WindowsPhone, version: t2 }; + } }, { test: [/windows /i], describe: function(e2) { + var t2 = i.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i, e2), r2 = i.default.getWindowsVersionName(t2); + return { name: s.OS_MAP.Windows, version: t2, versionName: r2 }; + } }, { test: [/Macintosh(.*?) FxiOS(.*?)\//], describe: function(e2) { + var t2 = { name: s.OS_MAP.iOS }, r2 = i.default.getSecondMatch(/(Version\/)(\d[\d.]+)/, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/macintosh/i], describe: function(e2) { + var t2 = i.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i, e2).replace(/[_\s]/g, "."), r2 = i.default.getMacOSVersionName(t2), n2 = { name: s.OS_MAP.MacOS, version: t2 }; + return r2 && (n2.versionName = r2), n2; + } }, { test: [/(ipod|iphone|ipad)/i], describe: function(e2) { + var t2 = i.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i, e2).replace(/[_\s]/g, "."); + return { name: s.OS_MAP.iOS, version: t2 }; + } }, { test: function(e2) { + var t2 = !e2.test(/like android/i), r2 = e2.test(/android/i); + return t2 && r2; + }, describe: function(e2) { + var t2 = i.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i, e2), r2 = i.default.getAndroidVersionName(t2), n2 = { name: s.OS_MAP.Android, version: t2 }; + return r2 && (n2.versionName = r2), n2; + } }, { test: [/(web|hpw)[o0]s/i], describe: function(e2) { + var t2 = i.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i, e2), r2 = { name: s.OS_MAP.WebOS }; + return t2 && t2.length && (r2.version = t2), r2; + } }, { test: [/blackberry|\bbb\d+/i, /rim\stablet/i], describe: function(e2) { + var t2 = i.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i, e2) || i.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i, e2) || i.default.getFirstMatch(/\bbb(\d+)/i, e2); + return { name: s.OS_MAP.BlackBerry, version: t2 }; + } }, { test: [/bada/i], describe: function(e2) { + var t2 = i.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i, e2); + return { name: s.OS_MAP.Bada, version: t2 }; + } }, { test: [/tizen/i], describe: function(e2) { + var t2 = i.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i, e2); + return { name: s.OS_MAP.Tizen, version: t2 }; + } }, { test: [/linux/i], describe: function() { + return { name: s.OS_MAP.Linux }; + } }, { test: [/CrOS/], describe: function() { + return { name: s.OS_MAP.ChromeOS }; + } }, { test: [/PlayStation 4/], describe: function(e2) { + var t2 = i.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i, e2); + return { name: s.OS_MAP.PlayStation4, version: t2 }; + } }]; + t.default = a, e.exports = t.default; + }, 94: function(e, t, r) { + "use strict"; + t.__esModule = true, t.default = void 0; + var n, i = (n = r(17)) && n.__esModule ? n : { default: n }, s = r(18); + var a = [{ test: [/googlebot/i], describe: function() { + return { type: "bot", vendor: "Google" }; + } }, { test: [/huawei/i], describe: function(e2) { + var t2 = i.default.getFirstMatch(/(can-l01)/i, e2) && "Nova", r2 = { type: s.PLATFORMS_MAP.mobile, vendor: "Huawei" }; + return t2 && (r2.model = t2), r2; + } }, { test: [/nexus\s*(?:7|8|9|10).*/i], describe: function() { + return { type: s.PLATFORMS_MAP.tablet, vendor: "Nexus" }; + } }, { test: [/ipad/i], describe: function() { + return { type: s.PLATFORMS_MAP.tablet, vendor: "Apple", model: "iPad" }; + } }, { test: [/Macintosh(.*?) FxiOS(.*?)\//], describe: function() { + return { type: s.PLATFORMS_MAP.tablet, vendor: "Apple", model: "iPad" }; + } }, { test: [/kftt build/i], describe: function() { + return { type: s.PLATFORMS_MAP.tablet, vendor: "Amazon", model: "Kindle Fire HD 7" }; + } }, { test: [/silk/i], describe: function() { + return { type: s.PLATFORMS_MAP.tablet, vendor: "Amazon" }; + } }, { test: [/tablet(?! pc)/i], describe: function() { + return { type: s.PLATFORMS_MAP.tablet }; + } }, { test: function(e2) { + var t2 = e2.test(/ipod|iphone/i), r2 = e2.test(/like (ipod|iphone)/i); + return t2 && !r2; + }, describe: function(e2) { + var t2 = i.default.getFirstMatch(/(ipod|iphone)/i, e2); + return { type: s.PLATFORMS_MAP.mobile, vendor: "Apple", model: t2 }; + } }, { test: [/nexus\s*[0-6].*/i, /galaxy nexus/i], describe: function() { + return { type: s.PLATFORMS_MAP.mobile, vendor: "Nexus" }; + } }, { test: [/[^-]mobi/i], describe: function() { + return { type: s.PLATFORMS_MAP.mobile }; + } }, { test: function(e2) { + return "blackberry" === e2.getBrowserName(true); + }, describe: function() { + return { type: s.PLATFORMS_MAP.mobile, vendor: "BlackBerry" }; + } }, { test: function(e2) { + return "bada" === e2.getBrowserName(true); + }, describe: function() { + return { type: s.PLATFORMS_MAP.mobile }; + } }, { test: function(e2) { + return "windows phone" === e2.getBrowserName(); + }, describe: function() { + return { type: s.PLATFORMS_MAP.mobile, vendor: "Microsoft" }; + } }, { test: function(e2) { + var t2 = Number(String(e2.getOSVersion()).split(".")[0]); + return "android" === e2.getOSName(true) && t2 >= 3; + }, describe: function() { + return { type: s.PLATFORMS_MAP.tablet }; + } }, { test: function(e2) { + return "android" === e2.getOSName(true); + }, describe: function() { + return { type: s.PLATFORMS_MAP.mobile }; + } }, { test: function(e2) { + return "macos" === e2.getOSName(true); + }, describe: function() { + return { type: s.PLATFORMS_MAP.desktop, vendor: "Apple" }; + } }, { test: function(e2) { + return "windows" === e2.getOSName(true); + }, describe: function() { + return { type: s.PLATFORMS_MAP.desktop }; + } }, { test: function(e2) { + return "linux" === e2.getOSName(true); + }, describe: function() { + return { type: s.PLATFORMS_MAP.desktop }; + } }, { test: function(e2) { + return "playstation 4" === e2.getOSName(true); + }, describe: function() { + return { type: s.PLATFORMS_MAP.tv }; + } }, { test: function(e2) { + return "roku" === e2.getOSName(true); + }, describe: function() { + return { type: s.PLATFORMS_MAP.tv }; + } }]; + t.default = a, e.exports = t.default; + }, 95: function(e, t, r) { + "use strict"; + t.__esModule = true, t.default = void 0; + var n, i = (n = r(17)) && n.__esModule ? n : { default: n }, s = r(18); + var a = [{ test: function(e2) { + return "microsoft edge" === e2.getBrowserName(true); + }, describe: function(e2) { + if (/\sedg\//i.test(e2)) + return { name: s.ENGINE_MAP.Blink }; + var t2 = i.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i, e2); + return { name: s.ENGINE_MAP.EdgeHTML, version: t2 }; + } }, { test: [/trident/i], describe: function(e2) { + var t2 = { name: s.ENGINE_MAP.Trident }, r2 = i.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: function(e2) { + return e2.test(/presto/i); + }, describe: function(e2) { + var t2 = { name: s.ENGINE_MAP.Presto }, r2 = i.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: function(e2) { + var t2 = e2.test(/gecko/i), r2 = e2.test(/like gecko/i); + return t2 && !r2; + }, describe: function(e2) { + var t2 = { name: s.ENGINE_MAP.Gecko }, r2 = i.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }, { test: [/(apple)?webkit\/537\.36/i], describe: function() { + return { name: s.ENGINE_MAP.Blink }; + } }, { test: [/(apple)?webkit/i], describe: function(e2) { + var t2 = { name: s.ENGINE_MAP.WebKit }, r2 = i.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i, e2); + return r2 && (t2.version = r2), t2; + } }]; + t.default = a, e.exports = t.default; + } }); + }); + } +}); + +// ../node_modules/.pnpm/utf8-byte-length@1.0.4/node_modules/utf8-byte-length/index.js +var require_utf8_byte_length = __commonJS({ + "../node_modules/.pnpm/utf8-byte-length@1.0.4/node_modules/utf8-byte-length/index.js"(exports2, module2) { + "use strict"; + module2.exports = function getByteLength(string) { + if (typeof string !== "string") { + throw new Error("Input must be string"); + } + return Buffer.byteLength(string, "utf8"); + }; + } +}); + +// ../node_modules/.pnpm/set-cookie-parser@2.6.0/node_modules/set-cookie-parser/lib/set-cookie.js +var require_set_cookie = __commonJS({ + "../node_modules/.pnpm/set-cookie-parser@2.6.0/node_modules/set-cookie-parser/lib/set-cookie.js"(exports2, module2) { + "use strict"; + var defaultParseOptions = { + decodeValues: true, + map: false, + silent: false + }; + function isNonEmptyString(str) { + return typeof str === "string" && !!str.trim(); + } + function parseString(setCookieValue, options2) { + var parts = setCookieValue.split(";").filter(isNonEmptyString); + var nameValuePairStr = parts.shift(); + var parsed = parseNameValuePair(nameValuePairStr); + var name = parsed.name; + var value = parsed.value; + options2 = options2 ? Object.assign({}, defaultParseOptions, options2) : defaultParseOptions; + try { + value = options2.decodeValues ? decodeURIComponent(value) : value; + } catch (e) { + console.error( + "set-cookie-parser encountered an error while decoding a cookie with value '" + value + "'. Set options.decodeValues to false to disable this feature.", + e + ); + } + var cookie = { + name, + value + }; + parts.forEach(function(part) { + var sides = part.split("="); + var key = sides.shift().trimLeft().toLowerCase(); + var value2 = sides.join("="); + if (key === "expires") { + cookie.expires = new Date(value2); + } else if (key === "max-age") { + cookie.maxAge = parseInt(value2, 10); + } else if (key === "secure") { + cookie.secure = true; + } else if (key === "httponly") { + cookie.httpOnly = true; + } else if (key === "samesite") { + cookie.sameSite = value2; + } else { + cookie[key] = value2; + } + }); + return cookie; + } + function parseNameValuePair(nameValuePairStr) { + var name = ""; + var value = ""; + var nameValueArr = nameValuePairStr.split("="); + if (nameValueArr.length > 1) { + name = nameValueArr.shift(); + value = nameValueArr.join("="); + } else { + value = nameValuePairStr; + } + return { name, value }; + } + function parse7(input, options2) { + options2 = options2 ? Object.assign({}, defaultParseOptions, options2) : defaultParseOptions; + if (!input) { + if (!options2.map) { + return []; + } else { + return {}; + } + } + if (input.headers) { + if (typeof input.headers.getSetCookie === "function") { + input = input.headers.getSetCookie(); + } else if (input.headers["set-cookie"]) { + input = input.headers["set-cookie"]; + } else { + var sch = input.headers[Object.keys(input.headers).find(function(key) { + return key.toLowerCase() === "set-cookie"; + })]; + if (!sch && input.headers.cookie && !options2.silent) { + console.warn( + "Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning." + ); + } + input = sch; + } + } + if (!Array.isArray(input)) { + input = [input]; + } + options2 = options2 ? Object.assign({}, defaultParseOptions, options2) : defaultParseOptions; + if (!options2.map) { + return input.filter(isNonEmptyString).map(function(str) { + return parseString(str, options2); + }); + } else { + var cookies = {}; + return input.filter(isNonEmptyString).reduce(function(cookies2, str) { + var cookie = parseString(str, options2); + cookies2[cookie.name] = cookie; + return cookies2; + }, cookies); + } + } + function splitCookiesString(cookiesString) { + if (Array.isArray(cookiesString)) { + return cookiesString; + } + if (typeof cookiesString !== "string") { + return []; + } + var cookiesStrings = []; + var pos = 0; + var start4; + var ch; + var lastComma; + var nextStart; + var cookiesSeparatorFound; + function skipWhitespace() { + while (pos < cookiesString.length && /\s/.test(cookiesString.charAt(pos))) { + pos += 1; + } + return pos < cookiesString.length; + } + function notSpecialChar() { + ch = cookiesString.charAt(pos); + return ch !== "=" && ch !== ";" && ch !== ","; + } + while (pos < cookiesString.length) { + start4 = pos; + cookiesSeparatorFound = false; + while (skipWhitespace()) { + ch = cookiesString.charAt(pos); + if (ch === ",") { + lastComma = pos; + pos += 1; + skipWhitespace(); + nextStart = pos; + while (pos < cookiesString.length && notSpecialChar()) { + pos += 1; + } + if (pos < cookiesString.length && cookiesString.charAt(pos) === "=") { + cookiesSeparatorFound = true; + pos = nextStart; + cookiesStrings.push(cookiesString.substring(start4, lastComma)); + start4 = pos; + } else { + pos = lastComma + 1; + } + } else { + pos += 1; + } + } + if (!cookiesSeparatorFound || pos >= cookiesString.length) { + cookiesStrings.push(cookiesString.substring(start4, cookiesString.length)); + } + } + return cookiesStrings; + } + module2.exports = parse7; + module2.exports.parse = parse7; + module2.exports.parseString = parseString; + module2.exports.splitCookiesString = splitCookiesString; + } +}); + +// ../node_modules/.pnpm/@pollyjs+persister@6.0.6/node_modules/@pollyjs/persister/dist/cjs/pollyjs-persister.js +var require_pollyjs_persister = __commonJS({ + "../node_modules/.pnpm/@pollyjs+persister@6.0.6/node_modules/@pollyjs/persister/dist/cjs/pollyjs-persister.js"(exports2, module2) { + "use strict"; + function _interopDefault(ex) { + return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex; + } + var stringify = _interopDefault(require_fast_json_stable_stringify()); + var utils = require_pollyjs_utils(); + var Bowser = _interopDefault(require_es52()); + var getByteLength = _interopDefault(require_utf8_byte_length()); + var setCookies = _interopDefault(require_set_cookie()); + var _defined = function(it) { + if (it == void 0) + throw TypeError("Can't call method on " + it); + return it; + }; + var _toObject = function(it) { + return Object(_defined(it)); + }; + var hasOwnProperty2 = {}.hasOwnProperty; + var _has = function(it, key) { + return hasOwnProperty2.call(it, key); + }; + var toString3 = {}.toString; + var _cof = function(it) { + return toString3.call(it).slice(8, -1); + }; + var _iobject = Object("z").propertyIsEnumerable(0) ? Object : function(it) { + return _cof(it) == "String" ? it.split("") : Object(it); + }; + var _toIobject = function(it) { + return _iobject(_defined(it)); + }; + var ceil = Math.ceil; + var floor = Math.floor; + var _toInteger = function(it) { + return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); + }; + var min = Math.min; + var _toLength = function(it) { + return it > 0 ? min(_toInteger(it), 9007199254740991) : 0; + }; + var max = Math.max; + var min$1 = Math.min; + var _toAbsoluteIndex = function(index, length) { + index = _toInteger(index); + return index < 0 ? max(index + length, 0) : min$1(index, length); + }; + var _arrayIncludes = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O = _toIobject($this); + var length = _toLength(O.length); + var index = _toAbsoluteIndex(fromIndex, length); + var value; + if (IS_INCLUDES && el != el) + while (length > index) { + value = O[index++]; + if (value != value) + return true; + } + else + for (; length > index; index++) + if (IS_INCLUDES || index in O) { + if (O[index] === el) + return IS_INCLUDES || index || 0; + } + return !IS_INCLUDES && -1; + }; + }; + function unwrapExports(x) { + return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x; + } + function createCommonjsModule(fn, module3) { + return module3 = { exports: {} }, fn(module3, module3.exports), module3.exports; + } + function getCjsExportFromNamespace(n) { + return n && n["default"] || n; + } + var _core = createCommonjsModule(function(module3) { + var core = module3.exports = { version: "2.6.9" }; + if (typeof __e == "number") + __e = core; + }); + var _core_1 = _core.version; + var _global2 = createCommonjsModule(function(module3) { + var global2 = module3.exports = typeof window != "undefined" && window.Math == Math ? window : typeof self != "undefined" && self.Math == Math ? self : Function("return this")(); + if (typeof __g == "number") + __g = global2; + }); + var _library = true; + var _shared = createCommonjsModule(function(module3) { + var SHARED = "__core-js_shared__"; + var store = _global2[SHARED] || (_global2[SHARED] = {}); + (module3.exports = function(key, value) { + return store[key] || (store[key] = value !== void 0 ? value : {}); + })("versions", []).push({ + version: _core.version, + mode: "pure", + copyright: "\xA9 2019 Denis Pushkarev (zloirock.ru)" + }); + }); + var id = 0; + var px = Math.random(); + var _uid = function(key) { + return "Symbol(".concat(key === void 0 ? "" : key, ")_", (++id + px).toString(36)); + }; + var shared = _shared("keys"); + var _sharedKey = function(key) { + return shared[key] || (shared[key] = _uid(key)); + }; + var arrayIndexOf = _arrayIncludes(false); + var IE_PROTO = _sharedKey("IE_PROTO"); + var _objectKeysInternal = function(object, names) { + var O = _toIobject(object); + var i2 = 0; + var result = []; + var key; + for (key in O) + if (key != IE_PROTO) + _has(O, key) && result.push(key); + while (names.length > i2) + if (_has(O, key = names[i2++])) { + ~arrayIndexOf(result, key) || result.push(key); + } + return result; + }; + var _enumBugKeys = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","); + var _objectKeys = Object.keys || function keys2(O) { + return _objectKeysInternal(O, _enumBugKeys); + }; + var _aFunction = function(it) { + if (typeof it != "function") + throw TypeError(it + " is not a function!"); + return it; + }; + var _ctx = function(fn, that, length) { + _aFunction(fn); + if (that === void 0) + return fn; + switch (length) { + case 1: + return function(a) { + return fn.call(that, a); + }; + case 2: + return function(a, b) { + return fn.call(that, a, b); + }; + case 3: + return function(a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function() { + return fn.apply(that, arguments); + }; + }; + var _isObject = function(it) { + return typeof it === "object" ? it !== null : typeof it === "function"; + }; + var _anObject = function(it) { + if (!_isObject(it)) + throw TypeError(it + " is not an object!"); + return it; + }; + var _fails = function(exec3) { + try { + return !!exec3(); + } catch (e) { + return true; + } + }; + var _descriptors = !_fails(function() { + return Object.defineProperty({}, "a", { get: function() { + return 7; + } }).a != 7; + }); + var document$1 = _global2.document; + var is = _isObject(document$1) && _isObject(document$1.createElement); + var _domCreate = function(it) { + return is ? document$1.createElement(it) : {}; + }; + var _ie8DomDefine = !_descriptors && !_fails(function() { + return Object.defineProperty(_domCreate("div"), "a", { get: function() { + return 7; + } }).a != 7; + }); + var _toPrimitive = function(it, S) { + if (!_isObject(it)) + return it; + var fn, val; + if (S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + if (typeof (fn = it.valueOf) == "function" && !_isObject(val = fn.call(it))) + return val; + if (!S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + throw TypeError("Can't convert object to primitive value"); + }; + var dP = Object.defineProperty; + var f = _descriptors ? Object.defineProperty : function defineProperty2(O, P, Attributes) { + _anObject(O); + P = _toPrimitive(P, true); + _anObject(Attributes); + if (_ie8DomDefine) + try { + return dP(O, P, Attributes); + } catch (e) { + } + if ("get" in Attributes || "set" in Attributes) + throw TypeError("Accessors not supported!"); + if ("value" in Attributes) + O[P] = Attributes.value; + return O; + }; + var _objectDp = { + f + }; + var _propertyDesc = function(bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value + }; + }; + var _hide = _descriptors ? function(object, key, value) { + return _objectDp.f(object, key, _propertyDesc(1, value)); + } : function(object, key, value) { + object[key] = value; + return object; + }; + var PROTOTYPE = "prototype"; + var $export = function(type2, name, source2) { + var IS_FORCED = type2 & $export.F; + var IS_GLOBAL = type2 & $export.G; + var IS_STATIC = type2 & $export.S; + var IS_PROTO = type2 & $export.P; + var IS_BIND = type2 & $export.B; + var IS_WRAP = type2 & $export.W; + var exports3 = IS_GLOBAL ? _core : _core[name] || (_core[name] = {}); + var expProto = exports3[PROTOTYPE]; + var target = IS_GLOBAL ? _global2 : IS_STATIC ? _global2[name] : (_global2[name] || {})[PROTOTYPE]; + var key, own, out2; + if (IS_GLOBAL) + source2 = name; + for (key in source2) { + own = !IS_FORCED && target && target[key] !== void 0; + if (own && _has(exports3, key)) + continue; + out2 = own ? target[key] : source2[key]; + exports3[key] = IS_GLOBAL && typeof target[key] != "function" ? source2[key] : IS_BIND && own ? _ctx(out2, _global2) : IS_WRAP && target[key] == out2 ? function(C2) { + var F = function(a, b, c) { + if (this instanceof C2) { + switch (arguments.length) { + case 0: + return new C2(); + case 1: + return new C2(a); + case 2: + return new C2(a, b); + } + return new C2(a, b, c); + } + return C2.apply(this, arguments); + }; + F[PROTOTYPE] = C2[PROTOTYPE]; + return F; + }(out2) : IS_PROTO && typeof out2 == "function" ? _ctx(Function.call, out2) : out2; + if (IS_PROTO) { + (exports3.virtual || (exports3.virtual = {}))[key] = out2; + if (type2 & $export.R && expProto && !expProto[key]) + _hide(expProto, key, out2); + } + } + }; + $export.F = 1; + $export.G = 2; + $export.S = 4; + $export.P = 8; + $export.B = 16; + $export.W = 32; + $export.U = 64; + $export.R = 128; + var _export = $export; + var _objectSap = function(KEY, exec3) { + var fn = (_core.Object || {})[KEY] || Object[KEY]; + var exp = {}; + exp[KEY] = exec3(fn); + _export(_export.S + _export.F * _fails(function() { + fn(1); + }), "Object", exp); + }; + _objectSap("keys", function() { + return function keys2(it) { + return _objectKeys(_toObject(it)); + }; + }); + var keys = _core.Object.keys; + var keys$1 = keys; + var _redefine = _hide; + var _meta = createCommonjsModule(function(module3) { + var META2 = _uid("meta"); + var setDesc = _objectDp.f; + var id2 = 0; + var isExtensible = Object.isExtensible || function() { + return true; + }; + var FREEZE = !_fails(function() { + return isExtensible(Object.preventExtensions({})); + }); + var setMeta = function(it) { + setDesc(it, META2, { value: { + i: "O" + ++id2, + // object ID + w: {} + // weak collections IDs + } }); + }; + var fastKey2 = function(it, create2) { + if (!_isObject(it)) + return typeof it == "symbol" ? it : (typeof it == "string" ? "S" : "P") + it; + if (!_has(it, META2)) { + if (!isExtensible(it)) + return "F"; + if (!create2) + return "E"; + setMeta(it); + } + return it[META2].i; + }; + var getWeak = function(it, create2) { + if (!_has(it, META2)) { + if (!isExtensible(it)) + return true; + if (!create2) + return false; + setMeta(it); + } + return it[META2].w; + }; + var onFreeze = function(it) { + if (FREEZE && meta.NEED && isExtensible(it) && !_has(it, META2)) + setMeta(it); + return it; + }; + var meta = module3.exports = { + KEY: META2, + NEED: false, + fastKey: fastKey2, + getWeak, + onFreeze + }; + }); + var _meta_1 = _meta.KEY; + var _meta_2 = _meta.NEED; + var _meta_3 = _meta.fastKey; + var _meta_4 = _meta.getWeak; + var _meta_5 = _meta.onFreeze; + var _wks = createCommonjsModule(function(module3) { + var store = _shared("wks"); + var Symbol2 = _global2.Symbol; + var USE_SYMBOL = typeof Symbol2 == "function"; + var $exports = module3.exports = function(name) { + return store[name] || (store[name] = USE_SYMBOL && Symbol2[name] || (USE_SYMBOL ? Symbol2 : _uid)("Symbol." + name)); + }; + $exports.store = store; + }); + var def = _objectDp.f; + var TAG = _wks("toStringTag"); + var _setToStringTag = function(it, tag, stat7) { + if (it && !_has(it = stat7 ? it : it.prototype, TAG)) + def(it, TAG, { configurable: true, value: tag }); + }; + var f$1 = _wks; + var _wksExt = { + f: f$1 + }; + var defineProperty = _objectDp.f; + var _wksDefine = function(name) { + var $Symbol2 = _core.Symbol || (_core.Symbol = {}); + if (name.charAt(0) != "_" && !(name in $Symbol2)) + defineProperty($Symbol2, name, { value: _wksExt.f(name) }); + }; + var f$2 = Object.getOwnPropertySymbols; + var _objectGops = { + f: f$2 + }; + var f$3 = {}.propertyIsEnumerable; + var _objectPie = { + f: f$3 + }; + var _enumKeys = function(it) { + var result = _objectKeys(it); + var getSymbols = _objectGops.f; + if (getSymbols) { + var symbols = getSymbols(it); + var isEnum2 = _objectPie.f; + var i2 = 0; + var key; + while (symbols.length > i2) + if (isEnum2.call(it, key = symbols[i2++])) + result.push(key); + } + return result; + }; + var _isArray = Array.isArray || function isArray3(arg) { + return _cof(arg) == "Array"; + }; + var _objectDps = _descriptors ? Object.defineProperties : function defineProperties2(O, Properties) { + _anObject(O); + var keys2 = _objectKeys(Properties); + var length = keys2.length; + var i2 = 0; + var P; + while (length > i2) + _objectDp.f(O, P = keys2[i2++], Properties[P]); + return O; + }; + var document$2 = _global2.document; + var _html = document$2 && document$2.documentElement; + var IE_PROTO$1 = _sharedKey("IE_PROTO"); + var Empty = function() { + }; + var PROTOTYPE$1 = "prototype"; + var createDict = function() { + var iframe = _domCreate("iframe"); + var i2 = _enumBugKeys.length; + var lt = "<"; + var gt = ">"; + var iframeDocument; + iframe.style.display = "none"; + _html.appendChild(iframe); + iframe.src = "javascript:"; + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(lt + "script" + gt + "document.F=Object" + lt + "/script" + gt); + iframeDocument.close(); + createDict = iframeDocument.F; + while (i2--) + delete createDict[PROTOTYPE$1][_enumBugKeys[i2]]; + return createDict(); + }; + var _objectCreate = Object.create || function create2(O, Properties) { + var result; + if (O !== null) { + Empty[PROTOTYPE$1] = _anObject(O); + result = new Empty(); + Empty[PROTOTYPE$1] = null; + result[IE_PROTO$1] = O; + } else + result = createDict(); + return Properties === void 0 ? result : _objectDps(result, Properties); + }; + var hiddenKeys = _enumBugKeys.concat("length", "prototype"); + var f$4 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return _objectKeysInternal(O, hiddenKeys); + }; + var _objectGopn = { + f: f$4 + }; + var gOPN = _objectGopn.f; + var toString$1 = {}.toString; + var windowNames = typeof window == "object" && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : []; + var getWindowNames = function(it) { + try { + return gOPN(it); + } catch (e) { + return windowNames.slice(); + } + }; + var f$5 = function getOwnPropertyNames(it) { + return windowNames && toString$1.call(it) == "[object Window]" ? getWindowNames(it) : gOPN(_toIobject(it)); + }; + var _objectGopnExt = { + f: f$5 + }; + var gOPD = Object.getOwnPropertyDescriptor; + var f$6 = _descriptors ? gOPD : function getOwnPropertyDescriptor2(O, P) { + O = _toIobject(O); + P = _toPrimitive(P, true); + if (_ie8DomDefine) + try { + return gOPD(O, P); + } catch (e) { + } + if (_has(O, P)) + return _propertyDesc(!_objectPie.f.call(O, P), O[P]); + }; + var _objectGopd = { + f: f$6 + }; + var META = _meta.KEY; + var gOPD$1 = _objectGopd.f; + var dP$1 = _objectDp.f; + var gOPN$1 = _objectGopnExt.f; + var $Symbol = _global2.Symbol; + var $JSON = _global2.JSON; + var _stringify = $JSON && $JSON.stringify; + var PROTOTYPE$2 = "prototype"; + var HIDDEN = _wks("_hidden"); + var TO_PRIMITIVE = _wks("toPrimitive"); + var isEnum = {}.propertyIsEnumerable; + var SymbolRegistry = _shared("symbol-registry"); + var AllSymbols = _shared("symbols"); + var OPSymbols = _shared("op-symbols"); + var ObjectProto = Object[PROTOTYPE$2]; + var USE_NATIVE = typeof $Symbol == "function" && !!_objectGops.f; + var QObject = _global2.QObject; + var setter = !QObject || !QObject[PROTOTYPE$2] || !QObject[PROTOTYPE$2].findChild; + var setSymbolDesc = _descriptors && _fails(function() { + return _objectCreate(dP$1({}, "a", { + get: function() { + return dP$1(this, "a", { value: 7 }).a; + } + })).a != 7; + }) ? function(it, key, D) { + var protoDesc = gOPD$1(ObjectProto, key); + if (protoDesc) + delete ObjectProto[key]; + dP$1(it, key, D); + if (protoDesc && it !== ObjectProto) + dP$1(ObjectProto, key, protoDesc); + } : dP$1; + var wrap2 = function(tag) { + var sym = AllSymbols[tag] = _objectCreate($Symbol[PROTOTYPE$2]); + sym._k = tag; + return sym; + }; + var isSymbol = USE_NATIVE && typeof $Symbol.iterator == "symbol" ? function(it) { + return typeof it == "symbol"; + } : function(it) { + return it instanceof $Symbol; + }; + var $defineProperty = function defineProperty2(it, key, D) { + if (it === ObjectProto) + $defineProperty(OPSymbols, key, D); + _anObject(it); + key = _toPrimitive(key, true); + _anObject(D); + if (_has(AllSymbols, key)) { + if (!D.enumerable) { + if (!_has(it, HIDDEN)) + dP$1(it, HIDDEN, _propertyDesc(1, {})); + it[HIDDEN][key] = true; + } else { + if (_has(it, HIDDEN) && it[HIDDEN][key]) + it[HIDDEN][key] = false; + D = _objectCreate(D, { enumerable: _propertyDesc(0, false) }); + } + return setSymbolDesc(it, key, D); + } + return dP$1(it, key, D); + }; + var $defineProperties = function defineProperties2(it, P) { + _anObject(it); + var keys2 = _enumKeys(P = _toIobject(P)); + var i2 = 0; + var l2 = keys2.length; + var key; + while (l2 > i2) + $defineProperty(it, key = keys2[i2++], P[key]); + return it; + }; + var $create = function create2(it, P) { + return P === void 0 ? _objectCreate(it) : $defineProperties(_objectCreate(it), P); + }; + var $propertyIsEnumerable = function propertyIsEnumerable(key) { + var E = isEnum.call(this, key = _toPrimitive(key, true)); + if (this === ObjectProto && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return false; + return E || !_has(this, key) || !_has(AllSymbols, key) || _has(this, HIDDEN) && this[HIDDEN][key] ? E : true; + }; + var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + it = _toIobject(it); + key = _toPrimitive(key, true); + if (it === ObjectProto && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return; + var D = gOPD$1(it, key); + if (D && _has(AllSymbols, key) && !(_has(it, HIDDEN) && it[HIDDEN][key])) + D.enumerable = true; + return D; + }; + var $getOwnPropertyNames = function getOwnPropertyNames(it) { + var names = gOPN$1(_toIobject(it)); + var result = []; + var i2 = 0; + var key; + while (names.length > i2) { + if (!_has(AllSymbols, key = names[i2++]) && key != HIDDEN && key != META) + result.push(key); + } + return result; + }; + var $getOwnPropertySymbols = function getOwnPropertySymbols2(it) { + var IS_OP = it === ObjectProto; + var names = gOPN$1(IS_OP ? OPSymbols : _toIobject(it)); + var result = []; + var i2 = 0; + var key; + while (names.length > i2) { + if (_has(AllSymbols, key = names[i2++]) && (IS_OP ? _has(ObjectProto, key) : true)) + result.push(AllSymbols[key]); + } + return result; + }; + if (!USE_NATIVE) { + $Symbol = function Symbol2() { + if (this instanceof $Symbol) + throw TypeError("Symbol is not a constructor!"); + var tag = _uid(arguments.length > 0 ? arguments[0] : void 0); + var $set = function(value) { + if (this === ObjectProto) + $set.call(OPSymbols, value); + if (_has(this, HIDDEN) && _has(this[HIDDEN], tag)) + this[HIDDEN][tag] = false; + setSymbolDesc(this, tag, _propertyDesc(1, value)); + }; + if (_descriptors && setter) + setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); + return wrap2(tag); + }; + _redefine($Symbol[PROTOTYPE$2], "toString", function toString4() { + return this._k; + }); + _objectGopd.f = $getOwnPropertyDescriptor; + _objectDp.f = $defineProperty; + _objectGopn.f = _objectGopnExt.f = $getOwnPropertyNames; + _objectPie.f = $propertyIsEnumerable; + _objectGops.f = $getOwnPropertySymbols; + if (_descriptors && !_library) { + _redefine(ObjectProto, "propertyIsEnumerable", $propertyIsEnumerable, true); + } + _wksExt.f = function(name) { + return wrap2(_wks(name)); + }; + } + _export(_export.G + _export.W + _export.F * !USE_NATIVE, { Symbol: $Symbol }); + for (es6Symbols = // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 + "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), j = 0; es6Symbols.length > j; ) + _wks(es6Symbols[j++]); + var es6Symbols; + var j; + for (wellKnownSymbols = _objectKeys(_wks.store), k = 0; wellKnownSymbols.length > k; ) + _wksDefine(wellKnownSymbols[k++]); + var wellKnownSymbols; + var k; + _export(_export.S + _export.F * !USE_NATIVE, "Symbol", { + // 19.4.2.1 Symbol.for(key) + "for": function(key) { + return _has(SymbolRegistry, key += "") ? SymbolRegistry[key] : SymbolRegistry[key] = $Symbol(key); + }, + // 19.4.2.5 Symbol.keyFor(sym) + keyFor: function keyFor(sym) { + if (!isSymbol(sym)) + throw TypeError(sym + " is not a symbol!"); + for (var key in SymbolRegistry) + if (SymbolRegistry[key] === sym) + return key; + }, + useSetter: function() { + setter = true; + }, + useSimple: function() { + setter = false; + } + }); + _export(_export.S + _export.F * !USE_NATIVE, "Object", { + // 19.1.2.2 Object.create(O [, Properties]) + create: $create, + // 19.1.2.4 Object.defineProperty(O, P, Attributes) + defineProperty: $defineProperty, + // 19.1.2.3 Object.defineProperties(O, Properties) + defineProperties: $defineProperties, + // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) + getOwnPropertyDescriptor: $getOwnPropertyDescriptor, + // 19.1.2.7 Object.getOwnPropertyNames(O) + getOwnPropertyNames: $getOwnPropertyNames, + // 19.1.2.8 Object.getOwnPropertySymbols(O) + getOwnPropertySymbols: $getOwnPropertySymbols + }); + var FAILS_ON_PRIMITIVES = _fails(function() { + _objectGops.f(1); + }); + _export(_export.S + _export.F * FAILS_ON_PRIMITIVES, "Object", { + getOwnPropertySymbols: function getOwnPropertySymbols2(it) { + return _objectGops.f(_toObject(it)); + } + }); + $JSON && _export(_export.S + _export.F * (!USE_NATIVE || _fails(function() { + var S = $Symbol(); + return _stringify([S]) != "[null]" || _stringify({ a: S }) != "{}" || _stringify(Object(S)) != "{}"; + })), "JSON", { + stringify: function stringify2(it) { + var args3 = [it]; + var i2 = 1; + var replacer, $replacer; + while (arguments.length > i2) + args3.push(arguments[i2++]); + $replacer = replacer = args3[1]; + if (!_isObject(replacer) && it === void 0 || isSymbol(it)) + return; + if (!_isArray(replacer)) + replacer = function(key, value) { + if (typeof $replacer == "function") + value = $replacer.call(this, key, value); + if (!isSymbol(value)) + return value; + }; + args3[1] = replacer; + return _stringify.apply($JSON, args3); + } + }); + $Symbol[PROTOTYPE$2][TO_PRIMITIVE] || _hide($Symbol[PROTOTYPE$2], TO_PRIMITIVE, $Symbol[PROTOTYPE$2].valueOf); + _setToStringTag($Symbol, "Symbol"); + _setToStringTag(Math, "Math", true); + _setToStringTag(_global2.JSON, "JSON", true); + var getOwnPropertySymbols = _core.Object.getOwnPropertySymbols; + var getOwnPropertySymbols$1 = getOwnPropertySymbols; + var $getOwnPropertyDescriptor$1 = _objectGopd.f; + _objectSap("getOwnPropertyDescriptor", function() { + return function getOwnPropertyDescriptor2(it, key) { + return $getOwnPropertyDescriptor$1(_toIobject(it), key); + }; + }); + var $Object = _core.Object; + var getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + return $Object.getOwnPropertyDescriptor(it, key); + }; + var getOwnPropertyDescriptor$1 = getOwnPropertyDescriptor; + var Reflect2 = _global2.Reflect; + var _ownKeys = Reflect2 && Reflect2.ownKeys || function ownKeys2(it) { + var keys2 = _objectGopn.f(_anObject(it)); + var getSymbols = _objectGops.f; + return getSymbols ? keys2.concat(getSymbols(it)) : keys2; + }; + var _createProperty = function(object, index, value) { + if (index in object) + _objectDp.f(object, index, _propertyDesc(0, value)); + else + object[index] = value; + }; + _export(_export.S, "Object", { + getOwnPropertyDescriptors: function getOwnPropertyDescriptors2(object) { + var O = _toIobject(object); + var getDesc = _objectGopd.f; + var keys2 = _ownKeys(O); + var result = {}; + var i2 = 0; + var key, desc; + while (keys2.length > i2) { + desc = getDesc(O, key = keys2[i2++]); + if (desc !== void 0) + _createProperty(result, key, desc); + } + return result; + } + }); + var getOwnPropertyDescriptors = _core.Object.getOwnPropertyDescriptors; + var getOwnPropertyDescriptors$1 = getOwnPropertyDescriptors; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperties: _objectDps }); + var $Object$1 = _core.Object; + var defineProperties = function defineProperties2(T, D) { + return $Object$1.defineProperties(T, D); + }; + var defineProperties$1 = defineProperties; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperty: _objectDp.f }); + var $Object$2 = _core.Object; + var defineProperty$1 = function defineProperty2(it, key, desc) { + return $Object$2.defineProperty(it, key, desc); + }; + var defineProperty$2 = defineProperty$1; + var defineProperty$3 = createCommonjsModule(function(module3) { + function _defineProperty2(obj2, key, value) { + if (key in obj2) { + defineProperty$2(obj2, key, { + value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj2[key] = value; + } + return obj2; + } + module3.exports = _defineProperty2; + module3.exports["default"] = module3.exports, module3.exports.__esModule = true; + }); + var _defineProperty = unwrapExports(defineProperty$3); + var es6_object_toString = /* @__PURE__ */ Object.freeze({}); + var _stringAt = function(TO_STRING) { + return function(that, pos) { + var s = String(_defined(that)); + var i2 = _toInteger(pos); + var l2 = s.length; + var a, b; + if (i2 < 0 || i2 >= l2) + return TO_STRING ? "" : void 0; + a = s.charCodeAt(i2); + return a < 55296 || a > 56319 || i2 + 1 === l2 || (b = s.charCodeAt(i2 + 1)) < 56320 || b > 57343 ? TO_STRING ? s.charAt(i2) : a : TO_STRING ? s.slice(i2, i2 + 2) : (a - 55296 << 10) + (b - 56320) + 65536; + }; + }; + var _iterators = {}; + var IteratorPrototype = {}; + _hide(IteratorPrototype, _wks("iterator"), function() { + return this; + }); + var _iterCreate = function(Constructor, NAME2, next) { + Constructor.prototype = _objectCreate(IteratorPrototype, { next: _propertyDesc(1, next) }); + _setToStringTag(Constructor, NAME2 + " Iterator"); + }; + var IE_PROTO$2 = _sharedKey("IE_PROTO"); + var ObjectProto$1 = Object.prototype; + var _objectGpo = Object.getPrototypeOf || function(O) { + O = _toObject(O); + if (_has(O, IE_PROTO$2)) + return O[IE_PROTO$2]; + if (typeof O.constructor == "function" && O instanceof O.constructor) { + return O.constructor.prototype; + } + return O instanceof Object ? ObjectProto$1 : null; + }; + var ITERATOR = _wks("iterator"); + var BUGGY = !([].keys && "next" in [].keys()); + var FF_ITERATOR = "@@iterator"; + var KEYS = "keys"; + var VALUES = "values"; + var returnThis = function() { + return this; + }; + var _iterDefine = function(Base, NAME2, Constructor, next, DEFAULT, IS_SET, FORCED) { + _iterCreate(Constructor, NAME2, next); + var getMethod = function(kind) { + if (!BUGGY && kind in proto2) + return proto2[kind]; + switch (kind) { + case KEYS: + return function keys2() { + return new Constructor(this, kind); + }; + case VALUES: + return function values() { + return new Constructor(this, kind); + }; + } + return function entries() { + return new Constructor(this, kind); + }; + }; + var TAG2 = NAME2 + " Iterator"; + var DEF_VALUES = DEFAULT == VALUES; + var VALUES_BUG = false; + var proto2 = Base.prototype; + var $native = proto2[ITERATOR] || proto2[FF_ITERATOR] || DEFAULT && proto2[DEFAULT]; + var $default = $native || getMethod(DEFAULT); + var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod("entries") : void 0; + var $anyNative = NAME2 == "Array" ? proto2.entries || $native : $native; + var methods, key, IteratorPrototype2; + if ($anyNative) { + IteratorPrototype2 = _objectGpo($anyNative.call(new Base())); + if (IteratorPrototype2 !== Object.prototype && IteratorPrototype2.next) { + _setToStringTag(IteratorPrototype2, TAG2, true); + } + } + if (DEF_VALUES && $native && $native.name !== VALUES) { + VALUES_BUG = true; + $default = function values() { + return $native.call(this); + }; + } + if (FORCED && (BUGGY || VALUES_BUG || !proto2[ITERATOR])) { + _hide(proto2, ITERATOR, $default); + } + _iterators[NAME2] = $default; + _iterators[TAG2] = returnThis; + if (DEFAULT) { + methods = { + values: DEF_VALUES ? $default : getMethod(VALUES), + keys: IS_SET ? $default : getMethod(KEYS), + entries: $entries + }; + if (FORCED) + for (key in methods) { + if (!(key in proto2)) + _redefine(proto2, key, methods[key]); + } + else + _export(_export.P + _export.F * (BUGGY || VALUES_BUG), NAME2, methods); + } + return methods; + }; + var $at = _stringAt(true); + _iterDefine(String, "String", function(iterated) { + this._t = String(iterated); + this._i = 0; + }, function() { + var O = this._t; + var index = this._i; + var point; + if (index >= O.length) + return { value: void 0, done: true }; + point = $at(O, index); + this._i += point.length; + return { value: point, done: false }; + }); + var _iterStep = function(done, value) { + return { value, done: !!done }; + }; + var es6_array_iterator = _iterDefine(Array, "Array", function(iterated, kind) { + this._t = _toIobject(iterated); + this._i = 0; + this._k = kind; + }, function() { + var O = this._t; + var kind = this._k; + var index = this._i++; + if (!O || index >= O.length) { + this._t = void 0; + return _iterStep(1); + } + if (kind == "keys") + return _iterStep(0, index); + if (kind == "values") + return _iterStep(0, O[index]); + return _iterStep(0, [index, O[index]]); + }, "values"); + _iterators.Arguments = _iterators.Array; + var TO_STRING_TAG = _wks("toStringTag"); + var DOMIterables = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","); + for (i = 0; i < DOMIterables.length; i++) { + NAME = DOMIterables[i]; + Collection = _global2[NAME]; + proto = Collection && Collection.prototype; + if (proto && !proto[TO_STRING_TAG]) + _hide(proto, TO_STRING_TAG, NAME); + _iterators[NAME] = _iterators.Array; + } + var NAME; + var Collection; + var proto; + var i; + var _redefineAll = function(target, src, safe) { + for (var key in src) { + if (safe && target[key]) + target[key] = src[key]; + else + _hide(target, key, src[key]); + } + return target; + }; + var _anInstance = function(it, Constructor, name, forbiddenField) { + if (!(it instanceof Constructor) || forbiddenField !== void 0 && forbiddenField in it) { + throw TypeError(name + ": incorrect invocation!"); + } + return it; + }; + var _iterCall = function(iterator, fn, value, entries) { + try { + return entries ? fn(_anObject(value)[0], value[1]) : fn(value); + } catch (e) { + var ret2 = iterator["return"]; + if (ret2 !== void 0) + _anObject(ret2.call(iterator)); + throw e; + } + }; + var ITERATOR$1 = _wks("iterator"); + var ArrayProto = Array.prototype; + var _isArrayIter = function(it) { + return it !== void 0 && (_iterators.Array === it || ArrayProto[ITERATOR$1] === it); + }; + var TAG$1 = _wks("toStringTag"); + var ARG = _cof(function() { + return arguments; + }()) == "Arguments"; + var tryGet = function(it, key) { + try { + return it[key]; + } catch (e) { + } + }; + var _classof = function(it) { + var O, T, B; + return it === void 0 ? "Undefined" : it === null ? "Null" : typeof (T = tryGet(O = Object(it), TAG$1)) == "string" ? T : ARG ? _cof(O) : (B = _cof(O)) == "Object" && typeof O.callee == "function" ? "Arguments" : B; + }; + var ITERATOR$2 = _wks("iterator"); + var core_getIteratorMethod = _core.getIteratorMethod = function(it) { + if (it != void 0) + return it[ITERATOR$2] || it["@@iterator"] || _iterators[_classof(it)]; + }; + var _forOf = createCommonjsModule(function(module3) { + var BREAK = {}; + var RETURN = {}; + var exports3 = module3.exports = function(iterable, entries, fn, that, ITERATOR2) { + var iterFn = ITERATOR2 ? function() { + return iterable; + } : core_getIteratorMethod(iterable); + var f2 = _ctx(fn, that, entries ? 2 : 1); + var index = 0; + var length, step, iterator, result; + if (typeof iterFn != "function") + throw TypeError(iterable + " is not iterable!"); + if (_isArrayIter(iterFn)) + for (length = _toLength(iterable.length); length > index; index++) { + result = entries ? f2(_anObject(step = iterable[index])[0], step[1]) : f2(iterable[index]); + if (result === BREAK || result === RETURN) + return result; + } + else + for (iterator = iterFn.call(iterable); !(step = iterator.next()).done; ) { + result = _iterCall(iterator, f2, step.value, entries); + if (result === BREAK || result === RETURN) + return result; + } + }; + exports3.BREAK = BREAK; + exports3.RETURN = RETURN; + }); + var SPECIES = _wks("species"); + var _setSpecies = function(KEY) { + var C2 = typeof _core[KEY] == "function" ? _core[KEY] : _global2[KEY]; + if (_descriptors && C2 && !C2[SPECIES]) + _objectDp.f(C2, SPECIES, { + configurable: true, + get: function() { + return this; + } + }); + }; + var _validateCollection = function(it, TYPE2) { + if (!_isObject(it) || it._t !== TYPE2) + throw TypeError("Incompatible receiver, " + TYPE2 + " required!"); + return it; + }; + var dP$2 = _objectDp.f; + var fastKey = _meta.fastKey; + var SIZE = _descriptors ? "_s" : "size"; + var getEntry = function(that, key) { + var index = fastKey(key); + var entry; + if (index !== "F") + return that._i[index]; + for (entry = that._f; entry; entry = entry.n) { + if (entry.k == key) + return entry; + } + }; + var _collectionStrong = { + getConstructor: function(wrapper, NAME2, IS_MAP, ADDER) { + var C2 = wrapper(function(that, iterable) { + _anInstance(that, C2, NAME2, "_i"); + that._t = NAME2; + that._i = _objectCreate(null); + that._f = void 0; + that._l = void 0; + that[SIZE] = 0; + if (iterable != void 0) + _forOf(iterable, IS_MAP, that[ADDER], that); + }); + _redefineAll(C2.prototype, { + // 23.1.3.1 Map.prototype.clear() + // 23.2.3.2 Set.prototype.clear() + clear: function clear() { + for (var that = _validateCollection(this, NAME2), data = that._i, entry = that._f; entry; entry = entry.n) { + entry.r = true; + if (entry.p) + entry.p = entry.p.n = void 0; + delete data[entry.i]; + } + that._f = that._l = void 0; + that[SIZE] = 0; + }, + // 23.1.3.3 Map.prototype.delete(key) + // 23.2.3.4 Set.prototype.delete(value) + "delete": function(key) { + var that = _validateCollection(this, NAME2); + var entry = getEntry(that, key); + if (entry) { + var next = entry.n; + var prev = entry.p; + delete that._i[entry.i]; + entry.r = true; + if (prev) + prev.n = next; + if (next) + next.p = prev; + if (that._f == entry) + that._f = next; + if (that._l == entry) + that._l = prev; + that[SIZE]--; + } + return !!entry; + }, + // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined) + // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined) + forEach: function forEach2(callbackfn) { + _validateCollection(this, NAME2); + var f2 = _ctx(callbackfn, arguments.length > 1 ? arguments[1] : void 0, 3); + var entry; + while (entry = entry ? entry.n : this._f) { + f2(entry.v, entry.k, this); + while (entry && entry.r) + entry = entry.p; + } + }, + // 23.1.3.7 Map.prototype.has(key) + // 23.2.3.7 Set.prototype.has(value) + has: function has(key) { + return !!getEntry(_validateCollection(this, NAME2), key); + } + }); + if (_descriptors) + dP$2(C2.prototype, "size", { + get: function() { + return _validateCollection(this, NAME2)[SIZE]; + } + }); + return C2; + }, + def: function(that, key, value) { + var entry = getEntry(that, key); + var prev, index; + if (entry) { + entry.v = value; + } else { + that._l = entry = { + i: index = fastKey(key, true), + // <- index + k: key, + // <- key + v: value, + // <- value + p: prev = that._l, + // <- previous entry + n: void 0, + // <- next entry + r: false + // <- removed + }; + if (!that._f) + that._f = entry; + if (prev) + prev.n = entry; + that[SIZE]++; + if (index !== "F") + that._i[index] = entry; + } + return that; + }, + getEntry, + setStrong: function(C2, NAME2, IS_MAP) { + _iterDefine(C2, NAME2, function(iterated, kind) { + this._t = _validateCollection(iterated, NAME2); + this._k = kind; + this._l = void 0; + }, function() { + var that = this; + var kind = that._k; + var entry = that._l; + while (entry && entry.r) + entry = entry.p; + if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) { + that._t = void 0; + return _iterStep(1); + } + if (kind == "keys") + return _iterStep(0, entry.k); + if (kind == "values") + return _iterStep(0, entry.v); + return _iterStep(0, [entry.k, entry.v]); + }, IS_MAP ? "entries" : "values", !IS_MAP, true); + _setSpecies(NAME2); + } + }; + var SPECIES$1 = _wks("species"); + var _arraySpeciesConstructor = function(original) { + var C2; + if (_isArray(original)) { + C2 = original.constructor; + if (typeof C2 == "function" && (C2 === Array || _isArray(C2.prototype))) + C2 = void 0; + if (_isObject(C2)) { + C2 = C2[SPECIES$1]; + if (C2 === null) + C2 = void 0; + } + } + return C2 === void 0 ? Array : C2; + }; + var _arraySpeciesCreate = function(original, length) { + return new (_arraySpeciesConstructor(original))(length); + }; + var _arrayMethods = function(TYPE2, $create2) { + var IS_MAP = TYPE2 == 1; + var IS_FILTER = TYPE2 == 2; + var IS_SOME = TYPE2 == 3; + var IS_EVERY = TYPE2 == 4; + var IS_FIND_INDEX = TYPE2 == 6; + var NO_HOLES = TYPE2 == 5 || IS_FIND_INDEX; + var create2 = $create2 || _arraySpeciesCreate; + return function($this, callbackfn, that) { + var O = _toObject($this); + var self2 = _iobject(O); + var f2 = _ctx(callbackfn, that, 3); + var length = _toLength(self2.length); + var index = 0; + var result = IS_MAP ? create2($this, length) : IS_FILTER ? create2($this, 0) : void 0; + var val, res; + for (; length > index; index++) + if (NO_HOLES || index in self2) { + val = self2[index]; + res = f2(val, index, O); + if (TYPE2) { + if (IS_MAP) + result[index] = res; + else if (res) + switch (TYPE2) { + case 3: + return true; + case 5: + return val; + case 6: + return index; + case 2: + result.push(val); + } + else if (IS_EVERY) + return false; + } + } + return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result; + }; + }; + var dP$3 = _objectDp.f; + var each = _arrayMethods(0); + var _collection = function(NAME2, wrapper, methods, common, IS_MAP, IS_WEAK) { + var Base = _global2[NAME2]; + var C2 = Base; + var ADDER = IS_MAP ? "set" : "add"; + var proto2 = C2 && C2.prototype; + var O = {}; + if (!_descriptors || typeof C2 != "function" || !(IS_WEAK || proto2.forEach && !_fails(function() { + new C2().entries().next(); + }))) { + C2 = common.getConstructor(wrapper, NAME2, IS_MAP, ADDER); + _redefineAll(C2.prototype, methods); + _meta.NEED = true; + } else { + C2 = wrapper(function(target, iterable) { + _anInstance(target, C2, NAME2, "_c"); + target._c = new Base(); + if (iterable != void 0) + _forOf(iterable, IS_MAP, target[ADDER], target); + }); + each("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","), function(KEY) { + var IS_ADDER = KEY == "add" || KEY == "set"; + if (KEY in proto2 && !(IS_WEAK && KEY == "clear")) + _hide(C2.prototype, KEY, function(a, b) { + _anInstance(this, C2, KEY); + if (!IS_ADDER && IS_WEAK && !_isObject(a)) + return KEY == "get" ? void 0 : false; + var result = this._c[KEY](a === 0 ? 0 : a, b); + return IS_ADDER ? this : result; + }); + }); + IS_WEAK || dP$3(C2.prototype, "size", { + get: function() { + return this._c.size; + } + }); + } + _setToStringTag(C2, NAME2); + O[NAME2] = C2; + _export(_export.G + _export.W + _export.F, O); + if (!IS_WEAK) + common.setStrong(C2, NAME2, IS_MAP); + return C2; + }; + var MAP = "Map"; + var es6_map = _collection(MAP, function(get) { + return function Map3() { + return get(this, arguments.length > 0 ? arguments[0] : void 0); + }; + }, { + // 23.1.3.6 Map.prototype.get(key) + get: function get(key) { + var entry = _collectionStrong.getEntry(_validateCollection(this, MAP), key); + return entry && entry.v; + }, + // 23.1.3.9 Map.prototype.set(key, value) + set: function set(key, value) { + return _collectionStrong.def(_validateCollection(this, MAP), key === 0 ? 0 : key, value); + } + }, _collectionStrong, true); + var _arrayFromIterable = function(iter, ITERATOR2) { + var result = []; + _forOf(iter, false, result.push, result, ITERATOR2); + return result; + }; + var _collectionToJson = function(NAME2) { + return function toJSON2() { + if (_classof(this) != NAME2) + throw TypeError(NAME2 + "#toJSON isn't generic"); + return _arrayFromIterable(this); + }; + }; + _export(_export.P + _export.R, "Map", { toJSON: _collectionToJson("Map") }); + var _setCollectionOf = function(COLLECTION) { + _export(_export.S, COLLECTION, { of: function of() { + var length = arguments.length; + var A = new Array(length); + while (length--) + A[length] = arguments[length]; + return new this(A); + } }); + }; + _setCollectionOf("Map"); + var _setCollectionFrom = function(COLLECTION) { + _export(_export.S, COLLECTION, { from: function from(source2) { + var mapFn = arguments[1]; + var mapping2, A, n, cb; + _aFunction(this); + mapping2 = mapFn !== void 0; + if (mapping2) + _aFunction(mapFn); + if (source2 == void 0) + return new this(); + A = []; + if (mapping2) { + n = 0; + cb = _ctx(mapFn, arguments[2], 2); + _forOf(source2, false, function(nextItem) { + A.push(cb(nextItem, n++)); + }); + } else { + _forOf(source2, false, A.push, A); + } + return new this(A); + } }); + }; + _setCollectionFrom("Map"); + getCjsExportFromNamespace(es6_object_toString); + var map = _core.Map; + var map$1 = map; + var SPECIES$2 = _wks("species"); + var _speciesConstructor = function(O, D) { + var C2 = _anObject(O).constructor; + var S; + return C2 === void 0 || (S = _anObject(C2)[SPECIES$2]) == void 0 ? D : _aFunction(S); + }; + var _invoke = function(fn, args3, that) { + var un = that === void 0; + switch (args3.length) { + case 0: + return un ? fn() : fn.call(that); + case 1: + return un ? fn(args3[0]) : fn.call(that, args3[0]); + case 2: + return un ? fn(args3[0], args3[1]) : fn.call(that, args3[0], args3[1]); + case 3: + return un ? fn(args3[0], args3[1], args3[2]) : fn.call(that, args3[0], args3[1], args3[2]); + case 4: + return un ? fn(args3[0], args3[1], args3[2], args3[3]) : fn.call(that, args3[0], args3[1], args3[2], args3[3]); + } + return fn.apply(that, args3); + }; + var process3 = _global2.process; + var setTask = _global2.setImmediate; + var clearTask = _global2.clearImmediate; + var MessageChannel2 = _global2.MessageChannel; + var Dispatch = _global2.Dispatch; + var counter = 0; + var queue = {}; + var ONREADYSTATECHANGE = "onreadystatechange"; + var defer2; + var channel; + var port; + var run2 = function() { + var id2 = +this; + if (queue.hasOwnProperty(id2)) { + var fn = queue[id2]; + delete queue[id2]; + fn(); + } + }; + var listener = function(event) { + run2.call(event.data); + }; + if (!setTask || !clearTask) { + setTask = function setImmediate2(fn) { + var args3 = []; + var i2 = 1; + while (arguments.length > i2) + args3.push(arguments[i2++]); + queue[++counter] = function() { + _invoke(typeof fn == "function" ? fn : Function(fn), args3); + }; + defer2(counter); + return counter; + }; + clearTask = function clearImmediate2(id2) { + delete queue[id2]; + }; + if (_cof(process3) == "process") { + defer2 = function(id2) { + process3.nextTick(_ctx(run2, id2, 1)); + }; + } else if (Dispatch && Dispatch.now) { + defer2 = function(id2) { + Dispatch.now(_ctx(run2, id2, 1)); + }; + } else if (MessageChannel2) { + channel = new MessageChannel2(); + port = channel.port2; + channel.port1.onmessage = listener; + defer2 = _ctx(port.postMessage, port, 1); + } else if (_global2.addEventListener && typeof postMessage == "function" && !_global2.importScripts) { + defer2 = function(id2) { + _global2.postMessage(id2 + "", "*"); + }; + _global2.addEventListener("message", listener, false); + } else if (ONREADYSTATECHANGE in _domCreate("script")) { + defer2 = function(id2) { + _html.appendChild(_domCreate("script"))[ONREADYSTATECHANGE] = function() { + _html.removeChild(this); + run2.call(id2); + }; + }; + } else { + defer2 = function(id2) { + setTimeout(_ctx(run2, id2, 1), 0); + }; + } + } + var _task = { + set: setTask, + clear: clearTask + }; + var macrotask = _task.set; + var Observer = _global2.MutationObserver || _global2.WebKitMutationObserver; + var process$1 = _global2.process; + var Promise2 = _global2.Promise; + var isNode2 = _cof(process$1) == "process"; + var _microtask = function() { + var head, last, notify2; + var flush = function() { + var parent, fn; + if (isNode2 && (parent = process$1.domain)) + parent.exit(); + while (head) { + fn = head.fn; + head = head.next; + try { + fn(); + } catch (e) { + if (head) + notify2(); + else + last = void 0; + throw e; + } + } + last = void 0; + if (parent) + parent.enter(); + }; + if (isNode2) { + notify2 = function() { + process$1.nextTick(flush); + }; + } else if (Observer && !(_global2.navigator && _global2.navigator.standalone)) { + var toggle = true; + var node = document.createTextNode(""); + new Observer(flush).observe(node, { characterData: true }); + notify2 = function() { + node.data = toggle = !toggle; + }; + } else if (Promise2 && Promise2.resolve) { + var promise2 = Promise2.resolve(void 0); + notify2 = function() { + promise2.then(flush); + }; + } else { + notify2 = function() { + macrotask.call(_global2, flush); + }; + } + return function(fn) { + var task2 = { fn, next: void 0 }; + if (last) + last.next = task2; + if (!head) { + head = task2; + notify2(); + } + last = task2; + }; + }; + function PromiseCapability(C2) { + var resolve8, reject; + this.promise = new C2(function($$resolve, $$reject) { + if (resolve8 !== void 0 || reject !== void 0) + throw TypeError("Bad Promise constructor"); + resolve8 = $$resolve; + reject = $$reject; + }); + this.resolve = _aFunction(resolve8); + this.reject = _aFunction(reject); + } + var f$7 = function(C2) { + return new PromiseCapability(C2); + }; + var _newPromiseCapability = { + f: f$7 + }; + var _perform = function(exec3) { + try { + return { e: false, v: exec3() }; + } catch (e) { + return { e: true, v: e }; + } + }; + var navigator2 = _global2.navigator; + var _userAgent = navigator2 && navigator2.userAgent || ""; + var _promiseResolve = function(C2, x) { + _anObject(C2); + if (_isObject(x) && x.constructor === C2) + return x; + var promiseCapability = _newPromiseCapability.f(C2); + var resolve8 = promiseCapability.resolve; + resolve8(x); + return promiseCapability.promise; + }; + var ITERATOR$3 = _wks("iterator"); + var SAFE_CLOSING = false; + try { + riter = [7][ITERATOR$3](); + riter["return"] = function() { + SAFE_CLOSING = true; + }; + Array.from(riter, function() { + throw 2; + }); + } catch (e) { + } + var riter; + var _iterDetect = function(exec3, skipClosing) { + if (!skipClosing && !SAFE_CLOSING) + return false; + var safe = false; + try { + var arr = [7]; + var iter = arr[ITERATOR$3](); + iter.next = function() { + return { done: safe = true }; + }; + arr[ITERATOR$3] = function() { + return iter; + }; + exec3(arr); + } catch (e) { + } + return safe; + }; + var task = _task.set; + var microtask = _microtask(); + var PROMISE = "Promise"; + var TypeError$1 = _global2.TypeError; + var process$2 = _global2.process; + var versions = process$2 && process$2.versions; + var v8 = versions && versions.v8 || ""; + var $Promise = _global2[PROMISE]; + var isNode$1 = _classof(process$2) == "process"; + var empty = function() { + }; + var Internal; + var newGenericPromiseCapability; + var OwnPromiseCapability; + var Wrapper; + var newPromiseCapability = newGenericPromiseCapability = _newPromiseCapability.f; + var USE_NATIVE$1 = !!function() { + try { + var promise2 = $Promise.resolve(1); + var FakePromise = (promise2.constructor = {})[_wks("species")] = function(exec3) { + exec3(empty, empty); + }; + return (isNode$1 || typeof PromiseRejectionEvent == "function") && promise2.then(empty) instanceof FakePromise && v8.indexOf("6.6") !== 0 && _userAgent.indexOf("Chrome/66") === -1; + } catch (e) { + } + }(); + var isThenable = function(it) { + var then; + return _isObject(it) && typeof (then = it.then) == "function" ? then : false; + }; + var notify = function(promise2, isReject) { + if (promise2._n) + return; + promise2._n = true; + var chain = promise2._c; + microtask(function() { + var value = promise2._v; + var ok = promise2._s == 1; + var i2 = 0; + var run3 = function(reaction) { + var handler = ok ? reaction.ok : reaction.fail; + var resolve8 = reaction.resolve; + var reject = reaction.reject; + var domain2 = reaction.domain; + var result, then, exited; + try { + if (handler) { + if (!ok) { + if (promise2._h == 2) + onHandleUnhandled(promise2); + promise2._h = 1; + } + if (handler === true) + result = value; + else { + if (domain2) + domain2.enter(); + result = handler(value); + if (domain2) { + domain2.exit(); + exited = true; + } + } + if (result === reaction.promise) { + reject(TypeError$1("Promise-chain cycle")); + } else if (then = isThenable(result)) { + then.call(result, resolve8, reject); + } else + resolve8(result); + } else + reject(value); + } catch (e) { + if (domain2 && !exited) + domain2.exit(); + reject(e); + } + }; + while (chain.length > i2) + run3(chain[i2++]); + promise2._c = []; + promise2._n = false; + if (isReject && !promise2._h) + onUnhandled(promise2); + }); + }; + var onUnhandled = function(promise2) { + task.call(_global2, function() { + var value = promise2._v; + var unhandled = isUnhandled(promise2); + var result, handler, console2; + if (unhandled) { + result = _perform(function() { + if (isNode$1) { + process$2.emit("unhandledRejection", value, promise2); + } else if (handler = _global2.onunhandledrejection) { + handler({ promise: promise2, reason: value }); + } else if ((console2 = _global2.console) && console2.error) { + console2.error("Unhandled promise rejection", value); + } + }); + promise2._h = isNode$1 || isUnhandled(promise2) ? 2 : 1; + } + promise2._a = void 0; + if (unhandled && result.e) + throw result.v; + }); + }; + var isUnhandled = function(promise2) { + return promise2._h !== 1 && (promise2._a || promise2._c).length === 0; + }; + var onHandleUnhandled = function(promise2) { + task.call(_global2, function() { + var handler; + if (isNode$1) { + process$2.emit("rejectionHandled", promise2); + } else if (handler = _global2.onrejectionhandled) { + handler({ promise: promise2, reason: promise2._v }); + } + }); + }; + var $reject = function(value) { + var promise2 = this; + if (promise2._d) + return; + promise2._d = true; + promise2 = promise2._w || promise2; + promise2._v = value; + promise2._s = 2; + if (!promise2._a) + promise2._a = promise2._c.slice(); + notify(promise2, true); + }; + var $resolve = function(value) { + var promise2 = this; + var then; + if (promise2._d) + return; + promise2._d = true; + promise2 = promise2._w || promise2; + try { + if (promise2 === value) + throw TypeError$1("Promise can't be resolved itself"); + if (then = isThenable(value)) { + microtask(function() { + var wrapper = { _w: promise2, _d: false }; + try { + then.call(value, _ctx($resolve, wrapper, 1), _ctx($reject, wrapper, 1)); + } catch (e) { + $reject.call(wrapper, e); + } + }); + } else { + promise2._v = value; + promise2._s = 1; + notify(promise2, false); + } + } catch (e) { + $reject.call({ _w: promise2, _d: false }, e); + } + }; + if (!USE_NATIVE$1) { + $Promise = function Promise3(executor) { + _anInstance(this, $Promise, PROMISE, "_h"); + _aFunction(executor); + Internal.call(this); + try { + executor(_ctx($resolve, this, 1), _ctx($reject, this, 1)); + } catch (err2) { + $reject.call(this, err2); + } + }; + Internal = function Promise3(executor) { + this._c = []; + this._a = void 0; + this._s = 0; + this._d = false; + this._v = void 0; + this._h = 0; + this._n = false; + }; + Internal.prototype = _redefineAll($Promise.prototype, { + // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected) + then: function then(onFulfilled, onRejected) { + var reaction = newPromiseCapability(_speciesConstructor(this, $Promise)); + reaction.ok = typeof onFulfilled == "function" ? onFulfilled : true; + reaction.fail = typeof onRejected == "function" && onRejected; + reaction.domain = isNode$1 ? process$2.domain : void 0; + this._c.push(reaction); + if (this._a) + this._a.push(reaction); + if (this._s) + notify(this, false); + return reaction.promise; + }, + // 25.4.5.1 Promise.prototype.catch(onRejected) + "catch": function(onRejected) { + return this.then(void 0, onRejected); + } + }); + OwnPromiseCapability = function() { + var promise2 = new Internal(); + this.promise = promise2; + this.resolve = _ctx($resolve, promise2, 1); + this.reject = _ctx($reject, promise2, 1); + }; + _newPromiseCapability.f = newPromiseCapability = function(C2) { + return C2 === $Promise || C2 === Wrapper ? new OwnPromiseCapability(C2) : newGenericPromiseCapability(C2); + }; + } + _export(_export.G + _export.W + _export.F * !USE_NATIVE$1, { Promise: $Promise }); + _setToStringTag($Promise, PROMISE); + _setSpecies(PROMISE); + Wrapper = _core[PROMISE]; + _export(_export.S + _export.F * !USE_NATIVE$1, PROMISE, { + // 25.4.4.5 Promise.reject(r) + reject: function reject(r) { + var capability = newPromiseCapability(this); + var $$reject = capability.reject; + $$reject(r); + return capability.promise; + } + }); + _export(_export.S + _export.F * _library, PROMISE, { + // 25.4.4.6 Promise.resolve(x) + resolve: function resolve8(x) { + return _promiseResolve(this === Wrapper ? $Promise : this, x); + } + }); + _export(_export.S + _export.F * !(USE_NATIVE$1 && _iterDetect(function(iter) { + $Promise.all(iter)["catch"](empty); + })), PROMISE, { + // 25.4.4.1 Promise.all(iterable) + all: function all3(iterable) { + var C2 = this; + var capability = newPromiseCapability(C2); + var resolve8 = capability.resolve; + var reject = capability.reject; + var result = _perform(function() { + var values = []; + var index = 0; + var remaining = 1; + _forOf(iterable, false, function(promise2) { + var $index = index++; + var alreadyCalled = false; + values.push(void 0); + remaining++; + C2.resolve(promise2).then(function(value) { + if (alreadyCalled) + return; + alreadyCalled = true; + values[$index] = value; + --remaining || resolve8(values); + }, reject); + }); + --remaining || resolve8(values); + }); + if (result.e) + reject(result.v); + return capability.promise; + }, + // 25.4.4.4 Promise.race(iterable) + race: function race(iterable) { + var C2 = this; + var capability = newPromiseCapability(C2); + var reject = capability.reject; + var result = _perform(function() { + _forOf(iterable, false, function(promise2) { + C2.resolve(promise2).then(capability.resolve, reject); + }); + }); + if (result.e) + reject(result.v); + return capability.promise; + } + }); + _export(_export.P + _export.R, "Promise", { "finally": function(onFinally) { + var C2 = _speciesConstructor(this, _core.Promise || _global2.Promise); + var isFunction3 = typeof onFinally == "function"; + return this.then( + isFunction3 ? function(x) { + return _promiseResolve(C2, onFinally()).then(function() { + return x; + }); + } : onFinally, + isFunction3 ? function(e) { + return _promiseResolve(C2, onFinally()).then(function() { + throw e; + }); + } : onFinally + ); + } }); + _export(_export.S, "Promise", { "try": function(callbackfn) { + var promiseCapability = _newPromiseCapability.f(this); + var result = _perform(callbackfn); + (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v); + return promiseCapability.promise; + } }); + var promise = _core.Promise; + var promise$1 = promise; + var $assign = Object.assign; + var _objectAssign = !$assign || _fails(function() { + var A = {}; + var B = {}; + var S = Symbol(); + var K = "abcdefghijklmnopqrst"; + A[S] = 7; + K.split("").forEach(function(k2) { + B[k2] = k2; + }); + return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join("") != K; + }) ? function assign2(target, source2) { + var T = _toObject(target); + var aLen = arguments.length; + var index = 1; + var getSymbols = _objectGops.f; + var isEnum2 = _objectPie.f; + while (aLen > index) { + var S = _iobject(arguments[index++]); + var keys2 = getSymbols ? _objectKeys(S).concat(getSymbols(S)) : _objectKeys(S); + var length = keys2.length; + var j2 = 0; + var key; + while (length > j2) { + key = keys2[j2++]; + if (!_descriptors || isEnum2.call(S, key)) + T[key] = S[key]; + } + } + return T; + } : $assign; + _export(_export.S + _export.F, "Object", { assign: _objectAssign }); + var assign = _core.Object.assign; + var assign$1 = assign; + var freeGlobal = typeof global == "object" && global && global.Object === Object && global; + var freeSelf = typeof self == "object" && self && self.Object === Object && self; + var root = freeGlobal || freeSelf || Function("return this")(); + var Symbol$1 = root.Symbol; + var objectProto = Object.prototype; + var hasOwnProperty$1 = objectProto.hasOwnProperty; + var nativeObjectToString = objectProto.toString; + var symToStringTag = Symbol$1 ? Symbol$1.toStringTag : void 0; + function getRawTag(value) { + var isOwn = hasOwnProperty$1.call(value, symToStringTag), tag = value[symToStringTag]; + try { + value[symToStringTag] = void 0; + var unmasked = true; + } catch (e) { + } + var result = nativeObjectToString.call(value); + if (unmasked) { + if (isOwn) { + value[symToStringTag] = tag; + } else { + delete value[symToStringTag]; + } + } + return result; + } + var objectProto$1 = Object.prototype; + var nativeObjectToString$1 = objectProto$1.toString; + function objectToString(value) { + return nativeObjectToString$1.call(value); + } + var nullTag = "[object Null]"; + var undefinedTag = "[object Undefined]"; + var symToStringTag$1 = Symbol$1 ? Symbol$1.toStringTag : void 0; + function baseGetTag(value) { + if (value == null) { + return value === void 0 ? undefinedTag : nullTag; + } + return symToStringTag$1 && symToStringTag$1 in Object(value) ? getRawTag(value) : objectToString(value); + } + function isObject3(value) { + var type2 = typeof value; + return value != null && (type2 == "object" || type2 == "function"); + } + var asyncTag = "[object AsyncFunction]"; + var funcTag = "[object Function]"; + var genTag = "[object GeneratorFunction]"; + var proxyTag = "[object Proxy]"; + function isFunction2(value) { + if (!isObject3(value)) { + return false; + } + var tag = baseGetTag(value); + return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; + } + var coreJsData = root["__core-js_shared__"]; + var maskSrcKey = function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); + return uid ? "Symbol(src)_1." + uid : ""; + }(); + function isMasked(func2) { + return !!maskSrcKey && maskSrcKey in func2; + } + var funcProto = Function.prototype; + var funcToString = funcProto.toString; + function toSource(func2) { + if (func2 != null) { + try { + return funcToString.call(func2); + } catch (e) { + } + try { + return func2 + ""; + } catch (e) { + } + } + return ""; + } + var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; + var reIsHostCtor = /^\[object .+?Constructor\]$/; + var funcProto$1 = Function.prototype; + var objectProto$2 = Object.prototype; + var funcToString$1 = funcProto$1.toString; + var hasOwnProperty$2 = objectProto$2.hasOwnProperty; + var reIsNative = RegExp( + "^" + funcToString$1.call(hasOwnProperty$2).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" + ); + function baseIsNative(value) { + if (!isObject3(value) || isMasked(value)) { + return false; + } + var pattern = isFunction2(value) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); + } + function getValue2(object, key) { + return object == null ? void 0 : object[key]; + } + function getNative(object, key) { + var value = getValue2(object, key); + return baseIsNative(value) ? value : void 0; + } + var nativeCreate = getNative(Object, "create"); + function hashClear() { + this.__data__ = nativeCreate ? nativeCreate(null) : {}; + this.size = 0; + } + function hashDelete(key) { + var result = this.has(key) && delete this.__data__[key]; + this.size -= result ? 1 : 0; + return result; + } + var HASH_UNDEFINED = "__lodash_hash_undefined__"; + var objectProto$3 = Object.prototype; + var hasOwnProperty$3 = objectProto$3.hasOwnProperty; + function hashGet(key) { + var data = this.__data__; + if (nativeCreate) { + var result = data[key]; + return result === HASH_UNDEFINED ? void 0 : result; + } + return hasOwnProperty$3.call(data, key) ? data[key] : void 0; + } + var objectProto$4 = Object.prototype; + var hasOwnProperty$4 = objectProto$4.hasOwnProperty; + function hashHas(key) { + var data = this.__data__; + return nativeCreate ? data[key] !== void 0 : hasOwnProperty$4.call(data, key); + } + var HASH_UNDEFINED$1 = "__lodash_hash_undefined__"; + function hashSet(key, value) { + var data = this.__data__; + this.size += this.has(key) ? 0 : 1; + data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED$1 : value; + return this; + } + function Hash(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + Hash.prototype.clear = hashClear; + Hash.prototype["delete"] = hashDelete; + Hash.prototype.get = hashGet; + Hash.prototype.has = hashHas; + Hash.prototype.set = hashSet; + function listCacheClear() { + this.__data__ = []; + this.size = 0; + } + function eq(value, other) { + return value === other || value !== value && other !== other; + } + function assocIndexOf(array, key) { + var length = array.length; + while (length--) { + if (eq(array[length][0], key)) { + return length; + } + } + return -1; + } + var arrayProto = Array.prototype; + var splice = arrayProto.splice; + function listCacheDelete(key) { + var data = this.__data__, index = assocIndexOf(data, key); + if (index < 0) { + return false; + } + var lastIndex = data.length - 1; + if (index == lastIndex) { + data.pop(); + } else { + splice.call(data, index, 1); + } + --this.size; + return true; + } + function listCacheGet(key) { + var data = this.__data__, index = assocIndexOf(data, key); + return index < 0 ? void 0 : data[index][1]; + } + function listCacheHas(key) { + return assocIndexOf(this.__data__, key) > -1; + } + function listCacheSet(key, value) { + var data = this.__data__, index = assocIndexOf(data, key); + if (index < 0) { + ++this.size; + data.push([key, value]); + } else { + data[index][1] = value; + } + return this; + } + function ListCache(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + ListCache.prototype.clear = listCacheClear; + ListCache.prototype["delete"] = listCacheDelete; + ListCache.prototype.get = listCacheGet; + ListCache.prototype.has = listCacheHas; + ListCache.prototype.set = listCacheSet; + var Map2 = getNative(root, "Map"); + function mapCacheClear() { + this.size = 0; + this.__data__ = { + "hash": new Hash(), + "map": new (Map2 || ListCache)(), + "string": new Hash() + }; + } + function isKeyable(value) { + var type2 = typeof value; + return type2 == "string" || type2 == "number" || type2 == "symbol" || type2 == "boolean" ? value !== "__proto__" : value === null; + } + function getMapData(map2, key) { + var data = map2.__data__; + return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; + } + function mapCacheDelete(key) { + var result = getMapData(this, key)["delete"](key); + this.size -= result ? 1 : 0; + return result; + } + function mapCacheGet(key) { + return getMapData(this, key).get(key); + } + function mapCacheHas(key) { + return getMapData(this, key).has(key); + } + function mapCacheSet(key, value) { + var data = getMapData(this, key), size = data.size; + data.set(key, value); + this.size += data.size == size ? 0 : 1; + return this; + } + function MapCache(entries) { + var index = -1, length = entries == null ? 0 : entries.length; + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + MapCache.prototype.clear = mapCacheClear; + MapCache.prototype["delete"] = mapCacheDelete; + MapCache.prototype.get = mapCacheGet; + MapCache.prototype.has = mapCacheHas; + MapCache.prototype.set = mapCacheSet; + var HASH_UNDEFINED$2 = "__lodash_hash_undefined__"; + function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED$2); + return this; + } + function setCacheHas(value) { + return this.__data__.has(value); + } + function SetCache(values) { + var index = -1, length = values == null ? 0 : values.length; + this.__data__ = new MapCache(); + while (++index < length) { + this.add(values[index]); + } + } + SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; + SetCache.prototype.has = setCacheHas; + function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, index = fromIndex + (fromRight ? 1 : -1); + while (fromRight ? index-- : ++index < length) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; + } + function baseIsNaN(value) { + return value !== value; + } + function strictIndexOf(array, value, fromIndex) { + var index = fromIndex - 1, length = array.length; + while (++index < length) { + if (array[index] === value) { + return index; + } + } + return -1; + } + function baseIndexOf(array, value, fromIndex) { + return value === value ? strictIndexOf(array, value, fromIndex) : baseFindIndex(array, baseIsNaN, fromIndex); + } + function arrayIncludes(array, value) { + var length = array == null ? 0 : array.length; + return !!length && baseIndexOf(array, value, 0) > -1; + } + function arrayIncludesWith(array, value, comparator) { + var index = -1, length = array == null ? 0 : array.length; + while (++index < length) { + if (comparator(value, array[index])) { + return true; + } + } + return false; + } + function cacheHas(cache, key) { + return cache.has(key); + } + var Set2 = getNative(root, "Set"); + function noop2() { + } + function setToArray(set) { + var index = -1, result = Array(set.size); + set.forEach(function(value) { + result[++index] = value; + }); + return result; + } + var INFINITY = 1 / 0; + var createSet = !(Set2 && 1 / setToArray(new Set2([, -0]))[1] == INFINITY) ? noop2 : function(values) { + return new Set2(values); + }; + var LARGE_ARRAY_SIZE = 200; + function baseUniq(array, iteratee, comparator) { + var index = -1, includes = arrayIncludes, length = array.length, isCommon = true, result = [], seen = result; + if (comparator) { + isCommon = false; + includes = arrayIncludesWith; + } else if (length >= LARGE_ARRAY_SIZE) { + var set = iteratee ? null : createSet(array); + if (set) { + return setToArray(set); + } + isCommon = false; + includes = cacheHas; + seen = new SetCache(); + } else { + seen = iteratee ? [] : result; + } + outer: + while (++index < length) { + var value = array[index], computed = iteratee ? iteratee(value) : value; + value = comparator || value !== 0 ? value : 0; + if (isCommon && computed === computed) { + var seenIndex = seen.length; + while (seenIndex--) { + if (seen[seenIndex] === computed) { + continue outer; + } + } + if (iteratee) { + seen.push(computed); + } + result.push(value); + } else if (!includes(seen, computed, comparator)) { + if (seen !== result) { + seen.push(computed); + } + result.push(value); + } + } + return result; + } + function uniqWith(array, comparator) { + comparator = typeof comparator == "function" ? comparator : void 0; + return array && array.length ? baseUniq(array, void 0, comparator) : []; + } + var bowser = global.navigator && global.navigator.userAgent ? Bowser.getParser(global.navigator.userAgent).getBrowser() : null; + var browser = bowser && bowser.name && bowser.version ? { + name: bowser.name, + version: bowser.version + } : null; + var Log = class { + constructor(opts = {}) { + assign$1(this, { + version: "1.2", + entries: [], + pages: [] + }, opts); + if (!this.browser && browser) { + this.browser = browser; + } + } + addEntries(entries = []) { + this.entries = uniqWith( + // Add the new entries to the front so they take priority + [...entries, ...this.entries], + (a, b) => a._id === b._id && a._order === b._order + ); + } + sortEntries() { + this.entries = this.entries.sort((a, b) => new Date(a.startedDateTime) - new Date(b.startedDateTime)); + } + }; + var HAR = class { + constructor(opts = {}) { + this.log = new Log(opts.log); + } + }; + var _stringWs = " \n\v\f\r \xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF"; + var space = "[" + _stringWs + "]"; + var non = "\u200B\x85"; + var ltrim = RegExp("^" + space + space + "*"); + var rtrim2 = RegExp(space + space + "*$"); + var exporter = function(KEY, exec3, ALIAS) { + var exp = {}; + var FORCE = _fails(function() { + return !!_stringWs[KEY]() || non[KEY]() != non; + }); + var fn = exp[KEY] = FORCE ? exec3(trim2) : _stringWs[KEY]; + if (ALIAS) + exp[ALIAS] = fn; + _export(_export.P + _export.F * FORCE, "String", exp); + }; + var trim2 = exporter.trim = function(string, TYPE2) { + string = String(_defined(string)); + if (TYPE2 & 1) + string = string.replace(ltrim, ""); + if (TYPE2 & 2) + string = string.replace(rtrim2, ""); + return string; + }; + var _stringTrim = exporter; + var $parseInt = _global2.parseInt; + var $trim = _stringTrim.trim; + var hex = /^[-+]?0[xX]/; + var _parseInt = $parseInt(_stringWs + "08") !== 8 || $parseInt(_stringWs + "0x16") !== 22 ? function parseInt2(str, radix) { + var string = $trim(String(str), 3); + return $parseInt(string, radix >>> 0 || (hex.test(string) ? 16 : 10)); + } : $parseInt; + _export(_export.G + _export.F * (parseInt != _parseInt), { parseInt: _parseInt }); + var _parseInt$1 = _core.parseInt; + var _parseInt$2 = _parseInt$1; + var { + keys: keys$2 + } = Object; + var { + isArray: isArray2 + } = Array; + function toNVPairs(o) { + return keys$2(o || {}).reduce((pairs, name) => { + const value = o[name]; + if (isArray2(value)) { + pairs.push(...value.map((v) => ({ + name, + value: v, + _fromType: "array" + }))); + } else { + pairs.push({ + name, + value + }); + } + return pairs; + }, []); + } + var { + isArray: isArray$1 + } = Array; + function getFirstHeader(r, name) { + const value = r.getHeader(name); + if (isArray$1(value)) { + return value.length > 0 ? value[0] : ""; + } + return value; + } + function headersSize(request) { + const keys2 = []; + const values = []; + request.headers.forEach(({ + name, + value + }) => { + keys2.push(name); + values.push(value); + }); + const headersString = request.method + request.url + keys2.join() + values.join(); + return getByteLength(headersString) + keys2.length * 2 + 2 + 12 + 2; + } + var Request2 = class { + constructor(request) { + this.httpVersion = "HTTP/1.1"; + this.url = request.absoluteUrl; + this.method = request.method; + this.headers = toNVPairs(request.headers); + this.headersSize = headersSize(this); + this.queryString = toNVPairs(request.query); + this.cookies = setCookies.parse(request.getHeader("Set-Cookie")); + if (request.body) { + this.postData = { + mimeType: getFirstHeader(request, "Content-Type") || "text/plain", + params: [] + }; + if (typeof request.body === "string") { + this.postData.text = request.body; + } + } + const contentLength = getFirstHeader(request, "Content-Length"); + if (contentLength) { + this.bodySize = _parseInt$2(contentLength, 10); + } else { + this.bodySize = this.postData && this.postData.text ? getByteLength(this.postData.text) : 0; + } + } + }; + function headersSize$1(response) { + const keys2 = []; + const values = []; + response.headers.forEach(({ + name, + value + }) => { + keys2.push(name); + values.push(value); + }); + const headersString = keys2.join() + values.join(); + return getByteLength(headersString) + keys2.length * 2 + 2 + 2; + } + var Response2 = class { + constructor(response) { + this.httpVersion = "HTTP/1.1"; + this.status = response.statusCode; + this.statusText = response.statusText; + this.headers = toNVPairs(response.headers); + this.headersSize = headersSize$1(this); + this.cookies = setCookies.parse(response.getHeader("Set-Cookie")); + this.redirectURL = getFirstHeader(response, "Location") || ""; + this.content = { + mimeType: getFirstHeader(response, "Content-Type") || "text/plain" + }; + if (response.body && typeof response.body === "string") { + this.content.text = response.body; + if (response.encoding) { + this.content.encoding = response.encoding; + } + } + const contentLength = getFirstHeader(response, "Content-Length"); + if (contentLength) { + this.content.size = _parseInt$2(contentLength, 10); + } else { + this.content.size = this.content.text ? getByteLength(this.content.text) : 0; + } + this.bodySize = this.content.size; + } + }; + var { + keys: keys$3 + } = Object; + function totalTime(timings = {}) { + return keys$3(timings).reduce((total, k2) => timings[k2] > 0 ? total += timings[k2] : total, 0); + } + var Entry = class { + constructor(request) { + this._id = request.id; + this._order = request.order; + this.startedDateTime = request.timestamp; + this.request = new Request2(request); + this.response = new Response2(request.response); + this.cache = {}; + this.timings = { + blocked: -1, + dns: -1, + connect: -1, + send: 0, + wait: request.responseTime, + receive: 0, + ssl: -1 + }; + this.time = totalTime(this.timings); + } + }; + function ownKeys(object, enumerableOnly) { + var keys2 = keys$1(object); + if (getOwnPropertySymbols$1) { + var symbols = getOwnPropertySymbols$1(object); + if (enumerableOnly) { + symbols = symbols.filter(function(sym) { + return getOwnPropertyDescriptor$1(object, sym).enumerable; + }); + } + keys2.push.apply(keys2, symbols); + } + return keys2; + } + function _objectSpread(target) { + for (var i2 = 1; i2 < arguments.length; i2++) { + var source2 = arguments[i2] != null ? arguments[i2] : {}; + if (i2 % 2) { + ownKeys(Object(source2), true).forEach(function(key) { + _defineProperty(target, key, source2[key]); + }); + } else if (getOwnPropertyDescriptors$1) { + defineProperties$1(target, getOwnPropertyDescriptors$1(source2)); + } else { + ownKeys(Object(source2)).forEach(function(key) { + defineProperty$2(target, key, getOwnPropertyDescriptor$1(source2, key)); + }); + } + } + return target; + } + var CREATOR_NAME = "Polly.JS"; + var Persister = class { + constructor(polly) { + this.polly = polly; + this.pending = new map$1(); + this._cache = new map$1(); + } + static get type() { + return "persister"; + } + /* eslint-disable-next-line getter-return */ + static get id() { + utils.assert("Must override the static `id` getter."); + } + get defaultOptions() { + return {}; + } + get options() { + return _objectSpread(_objectSpread({}, this.defaultOptions || {}), (this.polly.config.persisterOptions || {})[this.constructor.id] || {}); + } + get hasPending() { + return this.pending.size > 0; + } + async persist() { + if (!this.hasPending) { + return; + } + const promises2 = []; + const creator = { + name: CREATOR_NAME, + version: this.polly.constructor.VERSION, + comment: `${this.constructor.type}:${this.constructor.id}` + }; + for (const [recordingId, { + name, + requests + }] of this.pending) { + const entries = []; + const recording = await this.findRecording(recordingId); + let har; + if (!recording) { + har = new HAR({ + log: { + creator, + _recordingName: name + } + }); + } else { + har = new HAR(recording); + } + for (const request of requests) { + const entry = new Entry(request); + this.assert(`Cannot persist response for [${entry.request.method}] ${entry.request.url} because the status code was ${entry.response.status} and \`recordFailedRequests\` is \`false\``, entry.response.status < 400 || request.config.recordFailedRequests); + await request._emit("beforePersist", entry); + entries.push(entry); + } + har.log.addEntries(entries); + if (!this.polly.config.persisterOptions.disableSortingHarEntries) { + har.log.sortEntries(); + } + if (!this.polly.config.persisterOptions.keepUnusedRequests) { + this._removeUnusedEntries(recordingId, har); + } + promises2.push(this.saveRecording(recordingId, har)); + } + await promise$1.all(promises2); + this.pending.clear(); + } + recordRequest(pollyRequest) { + this.assert(`You must pass a PollyRequest to 'recordRequest'.`, pollyRequest); + this.assert(`Cannot save a request with no response.`, pollyRequest.didRespond); + const { + recordingId, + recordingName + } = pollyRequest; + if (!this.pending.has(recordingId)) { + this.pending.set(recordingId, { + name: recordingName, + requests: [] + }); + } + this.pending.get(recordingId).requests.push(pollyRequest); + } + async findRecording(recordingId) { + const { + _cache: cache + } = this; + if (!cache.has(recordingId)) { + const onFindRecording = async () => { + const recording = await this.onFindRecording(recordingId); + if (recording) { + this.assert(`Recording with id '${recordingId}' is invalid. Please delete the recording so a new one can be created.`, recording.log && recording.log.creator.name === CREATOR_NAME); + return recording; + } else { + cache.delete(recordingId); + return null; + } + }; + cache.set(recordingId, onFindRecording()); + } + return cache.get(recordingId); + } + onFindRecording() { + this.assert("Must implement the `onFindRecording` hook."); + } + async saveRecording(recordingId, har) { + await this.onSaveRecording(...arguments); + this._cache.delete(recordingId); + this.polly.logger.log.debug("Recording saved.", { + recordingId, + har + }); + } + onSaveRecording() { + this.assert("Must implement the `onSaveRecording` hook."); + } + async deleteRecording(recordingId) { + await this.onDeleteRecording(...arguments); + this._cache.delete(recordingId); + } + onDeleteRecording() { + this.assert("Must implement the `onDeleteRecording` hook."); + } + async findEntry(pollyRequest) { + const { + id: id2, + order, + recordingId + } = pollyRequest; + const recording = await this.findRecording(recordingId); + return recording && recording.log.entries.find((entry) => entry._id === id2 && entry._order === order) || null; + } + stringify() { + return stringify(...arguments); + } + assert(message, ...args3) { + utils.assert(`[${this.constructor.type}:${this.constructor.id}] ${message}`, ...args3); + } + /** + * Remove all entries from the given HAR that do not match any requests in + * the current Polly instance. + * + * @param {String} recordingId + * @param {HAR} har + */ + _removeUnusedEntries(recordingId, har) { + const requests = this.polly._requests.filter((r) => r.recordingId === recordingId && (r.action === utils.ACTIONS.RECORD || r.action === utils.ACTIONS.REPLAY)); + har.log.entries = har.log.entries.filter((entry) => requests.find((r) => entry._id === r.id && entry._order === r.order)); + } + }; + module2.exports = Persister; + } +}); + +// ../node_modules/.pnpm/universalify@2.0.0/node_modules/universalify/index.js +var require_universalify = __commonJS({ + "../node_modules/.pnpm/universalify@2.0.0/node_modules/universalify/index.js"(exports2) { + "use strict"; + exports2.fromCallback = function(fn) { + return Object.defineProperty(function(...args3) { + if (typeof args3[args3.length - 1] === "function") + fn.apply(this, args3); + else { + return new Promise((resolve8, reject) => { + fn.call( + this, + ...args3, + (err2, res) => err2 != null ? reject(err2) : resolve8(res) + ); + }); + } + }, "name", { value: fn.name }); + }; + exports2.fromPromise = function(fn) { + return Object.defineProperty(function(...args3) { + const cb = args3[args3.length - 1]; + if (typeof cb !== "function") + return fn.apply(this, args3); + else + fn.apply(this, args3.slice(0, -1)).then((r) => cb(null, r), cb); + }, "name", { value: fn.name }); + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/fs/index.js +var require_fs2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/fs/index.js"(exports2) { + "use strict"; + var u = require_universalify().fromCallback; + var fs6 = require_graceful_fs(); + var api = [ + "access", + "appendFile", + "chmod", + "chown", + "close", + "copyFile", + "fchmod", + "fchown", + "fdatasync", + "fstat", + "fsync", + "ftruncate", + "futimes", + "lchmod", + "lchown", + "link", + "lstat", + "mkdir", + "mkdtemp", + "open", + "opendir", + "readdir", + "readFile", + "readlink", + "realpath", + "rename", + "rm", + "rmdir", + "stat", + "symlink", + "truncate", + "unlink", + "utimes", + "writeFile" + ].filter((key) => { + return typeof fs6[key] === "function"; + }); + Object.assign(exports2, fs6); + api.forEach((method) => { + exports2[method] = u(fs6[method]); + }); + exports2.exists = function(filename, callback) { + if (typeof callback === "function") { + return fs6.exists(filename, callback); + } + return new Promise((resolve8) => { + return fs6.exists(filename, resolve8); + }); + }; + exports2.read = function(fd, buffer2, offset, length, position, callback) { + if (typeof callback === "function") { + return fs6.read(fd, buffer2, offset, length, position, callback); + } + return new Promise((resolve8, reject) => { + fs6.read(fd, buffer2, offset, length, position, (err2, bytesRead, buffer3) => { + if (err2) + return reject(err2); + resolve8({ bytesRead, buffer: buffer3 }); + }); + }); + }; + exports2.write = function(fd, buffer2, ...args3) { + if (typeof args3[args3.length - 1] === "function") { + return fs6.write(fd, buffer2, ...args3); + } + return new Promise((resolve8, reject) => { + fs6.write(fd, buffer2, ...args3, (err2, bytesWritten, buffer3) => { + if (err2) + return reject(err2); + resolve8({ bytesWritten, buffer: buffer3 }); + }); + }); + }; + if (typeof fs6.writev === "function") { + exports2.writev = function(fd, buffers, ...args3) { + if (typeof args3[args3.length - 1] === "function") { + return fs6.writev(fd, buffers, ...args3); + } + return new Promise((resolve8, reject) => { + fs6.writev(fd, buffers, ...args3, (err2, bytesWritten, buffers2) => { + if (err2) + return reject(err2); + resolve8({ bytesWritten, buffers: buffers2 }); + }); + }); + }; + } + if (typeof fs6.realpath.native === "function") { + exports2.realpath.native = u(fs6.realpath.native); + } else { + process.emitWarning( + "fs.realpath.native is not a function. Is fs being monkey-patched?", + "Warning", + "fs-extra-WARN0003" + ); + } + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/utils.js +var require_utils18 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) { + "use strict"; + var path30 = require("path"); + module2.exports.checkPath = function checkPath(pth) { + if (process.platform === "win32") { + const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path30.parse(pth).root, "")); + if (pathHasInvalidWinCharacters) { + const error = new Error(`Path contains invalid characters: ${pth}`); + error.code = "EINVAL"; + throw error; + } + } + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/make-dir.js +var require_make_dir = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) { + "use strict"; + var fs6 = require_fs2(); + var { checkPath } = require_utils18(); + var getMode = (options2) => { + const defaults4 = { mode: 511 }; + if (typeof options2 === "number") + return options2; + return { ...defaults4, ...options2 }.mode; + }; + module2.exports.makeDir = async (dir, options2) => { + checkPath(dir); + return fs6.mkdir(dir, { + mode: getMode(options2), + recursive: true + }); + }; + module2.exports.makeDirSync = (dir, options2) => { + checkPath(dir); + return fs6.mkdirSync(dir, { + mode: getMode(options2), + recursive: true + }); + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/index.js +var require_mkdirs = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var { makeDir: _makeDir, makeDirSync } = require_make_dir(); + var makeDir = u(_makeDir); + module2.exports = { + mkdirs: makeDir, + mkdirsSync: makeDirSync, + // alias + mkdirp: makeDir, + mkdirpSync: makeDirSync, + ensureDir: makeDir, + ensureDirSync: makeDirSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/path-exists/index.js +var require_path_exists = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var fs6 = require_fs2(); + function pathExists2(path30) { + return fs6.access(path30).then(() => true).catch(() => false); + } + module2.exports = { + pathExists: u(pathExists2), + pathExistsSync: fs6.existsSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/util/utimes.js +var require_utimes = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) { + "use strict"; + var fs6 = require_graceful_fs(); + function utimesMillis(path30, atime, mtime, callback) { + fs6.open(path30, "r+", (err2, fd) => { + if (err2) + return callback(err2); + fs6.futimes(fd, atime, mtime, (futimesErr) => { + fs6.close(fd, (closeErr) => { + if (callback) + callback(futimesErr || closeErr); + }); + }); + }); + } + function utimesMillisSync(path30, atime, mtime) { + const fd = fs6.openSync(path30, "r+"); + fs6.futimesSync(fd, atime, mtime); + return fs6.closeSync(fd); + } + module2.exports = { + utimesMillis, + utimesMillisSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/util/stat.js +var require_stat = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) { + "use strict"; + var fs6 = require_fs2(); + var path30 = require("path"); + var util2 = require("util"); + function getStats(src, dest, opts) { + const statFunc = opts.dereference ? (file) => fs6.stat(file, { bigint: true }) : (file) => fs6.lstat(file, { bigint: true }); + return Promise.all([ + statFunc(src), + statFunc(dest).catch((err2) => { + if (err2.code === "ENOENT") + return null; + throw err2; + }) + ]).then(([srcStat, destStat]) => ({ srcStat, destStat })); + } + function getStatsSync(src, dest, opts) { + let destStat; + const statFunc = opts.dereference ? (file) => fs6.statSync(file, { bigint: true }) : (file) => fs6.lstatSync(file, { bigint: true }); + const srcStat = statFunc(src); + try { + destStat = statFunc(dest); + } catch (err2) { + if (err2.code === "ENOENT") + return { srcStat, destStat: null }; + throw err2; + } + return { srcStat, destStat }; + } + function checkPaths(src, dest, funcName, opts, cb) { + util2.callbackify(getStats)(src, dest, opts, (err2, stats) => { + if (err2) + return cb(err2); + const { srcStat, destStat } = stats; + if (destStat) { + if (areIdentical(srcStat, destStat)) { + const srcBaseName = path30.basename(src); + const destBaseName = path30.basename(dest); + if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) { + return cb(null, { srcStat, destStat, isChangingCase: true }); + } + return cb(new Error("Source and destination must not be the same.")); + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + return cb(new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`)); + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + return cb(new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`)); + } + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + return cb(new Error(errMsg(src, dest, funcName))); + } + return cb(null, { srcStat, destStat }); + }); + } + function checkPathsSync(src, dest, funcName, opts) { + const { srcStat, destStat } = getStatsSync(src, dest, opts); + if (destStat) { + if (areIdentical(srcStat, destStat)) { + const srcBaseName = path30.basename(src); + const destBaseName = path30.basename(dest); + if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) { + return { srcStat, destStat, isChangingCase: true }; + } + throw new Error("Source and destination must not be the same."); + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`); + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`); + } + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new Error(errMsg(src, dest, funcName)); + } + return { srcStat, destStat }; + } + function checkParentPaths(src, srcStat, dest, funcName, cb) { + const srcParent = path30.resolve(path30.dirname(src)); + const destParent = path30.resolve(path30.dirname(dest)); + if (destParent === srcParent || destParent === path30.parse(destParent).root) + return cb(); + fs6.stat(destParent, { bigint: true }, (err2, destStat) => { + if (err2) { + if (err2.code === "ENOENT") + return cb(); + return cb(err2); + } + if (areIdentical(srcStat, destStat)) { + return cb(new Error(errMsg(src, dest, funcName))); + } + return checkParentPaths(src, srcStat, destParent, funcName, cb); + }); + } + function checkParentPathsSync(src, srcStat, dest, funcName) { + const srcParent = path30.resolve(path30.dirname(src)); + const destParent = path30.resolve(path30.dirname(dest)); + if (destParent === srcParent || destParent === path30.parse(destParent).root) + return; + let destStat; + try { + destStat = fs6.statSync(destParent, { bigint: true }); + } catch (err2) { + if (err2.code === "ENOENT") + return; + throw err2; + } + if (areIdentical(srcStat, destStat)) { + throw new Error(errMsg(src, dest, funcName)); + } + return checkParentPathsSync(src, srcStat, destParent, funcName); + } + function areIdentical(srcStat, destStat) { + return destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev; + } + function isSrcSubdir(src, dest) { + const srcArr = path30.resolve(src).split(path30.sep).filter((i) => i); + const destArr = path30.resolve(dest).split(path30.sep).filter((i) => i); + return srcArr.reduce((acc, cur, i) => acc && destArr[i] === cur, true); + } + function errMsg(src, dest, funcName) { + return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.`; + } + module2.exports = { + checkPaths, + checkPathsSync, + checkParentPaths, + checkParentPathsSync, + isSrcSubdir, + areIdentical + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/copy/copy.js +var require_copy = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) { + "use strict"; + var fs6 = require_graceful_fs(); + var path30 = require("path"); + var mkdirs = require_mkdirs().mkdirs; + var pathExists2 = require_path_exists().pathExists; + var utimesMillis = require_utimes().utimesMillis; + var stat7 = require_stat(); + function copy(src, dest, opts, cb) { + if (typeof opts === "function" && !cb) { + cb = opts; + opts = {}; + } else if (typeof opts === "function") { + opts = { filter: opts }; + } + cb = cb || function() { + }; + opts = opts || {}; + opts.clobber = "clobber" in opts ? !!opts.clobber : true; + opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber; + if (opts.preserveTimestamps && process.arch === "ia32") { + process.emitWarning( + "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269", + "Warning", + "fs-extra-WARN0001" + ); + } + stat7.checkPaths(src, dest, "copy", opts, (err2, stats) => { + if (err2) + return cb(err2); + const { srcStat, destStat } = stats; + stat7.checkParentPaths(src, srcStat, dest, "copy", (err3) => { + if (err3) + return cb(err3); + if (opts.filter) + return handleFilter(checkParentDir, destStat, src, dest, opts, cb); + return checkParentDir(destStat, src, dest, opts, cb); + }); + }); + } + function checkParentDir(destStat, src, dest, opts, cb) { + const destParent = path30.dirname(dest); + pathExists2(destParent, (err2, dirExists) => { + if (err2) + return cb(err2); + if (dirExists) + return getStats(destStat, src, dest, opts, cb); + mkdirs(destParent, (err3) => { + if (err3) + return cb(err3); + return getStats(destStat, src, dest, opts, cb); + }); + }); + } + function handleFilter(onInclude, destStat, src, dest, opts, cb) { + Promise.resolve(opts.filter(src, dest)).then((include) => { + if (include) + return onInclude(destStat, src, dest, opts, cb); + return cb(); + }, (error) => cb(error)); + } + function startCopy(destStat, src, dest, opts, cb) { + if (opts.filter) + return handleFilter(getStats, destStat, src, dest, opts, cb); + return getStats(destStat, src, dest, opts, cb); + } + function getStats(destStat, src, dest, opts, cb) { + const stat8 = opts.dereference ? fs6.stat : fs6.lstat; + stat8(src, (err2, srcStat) => { + if (err2) + return cb(err2); + if (srcStat.isDirectory()) + return onDir(srcStat, destStat, src, dest, opts, cb); + else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) + return onFile(srcStat, destStat, src, dest, opts, cb); + else if (srcStat.isSymbolicLink()) + return onLink(destStat, src, dest, opts, cb); + else if (srcStat.isSocket()) + return cb(new Error(`Cannot copy a socket file: ${src}`)); + else if (srcStat.isFIFO()) + return cb(new Error(`Cannot copy a FIFO pipe: ${src}`)); + return cb(new Error(`Unknown file: ${src}`)); + }); + } + function onFile(srcStat, destStat, src, dest, opts, cb) { + if (!destStat) + return copyFile(srcStat, src, dest, opts, cb); + return mayCopyFile(srcStat, src, dest, opts, cb); + } + function mayCopyFile(srcStat, src, dest, opts, cb) { + if (opts.overwrite) { + fs6.unlink(dest, (err2) => { + if (err2) + return cb(err2); + return copyFile(srcStat, src, dest, opts, cb); + }); + } else if (opts.errorOnExist) { + return cb(new Error(`'${dest}' already exists`)); + } else + return cb(); + } + function copyFile(srcStat, src, dest, opts, cb) { + fs6.copyFile(src, dest, (err2) => { + if (err2) + return cb(err2); + if (opts.preserveTimestamps) + return handleTimestampsAndMode(srcStat.mode, src, dest, cb); + return setDestMode(dest, srcStat.mode, cb); + }); + } + function handleTimestampsAndMode(srcMode, src, dest, cb) { + if (fileIsNotWritable(srcMode)) { + return makeFileWritable(dest, srcMode, (err2) => { + if (err2) + return cb(err2); + return setDestTimestampsAndMode(srcMode, src, dest, cb); + }); + } + return setDestTimestampsAndMode(srcMode, src, dest, cb); + } + function fileIsNotWritable(srcMode) { + return (srcMode & 128) === 0; + } + function makeFileWritable(dest, srcMode, cb) { + return setDestMode(dest, srcMode | 128, cb); + } + function setDestTimestampsAndMode(srcMode, src, dest, cb) { + setDestTimestamps(src, dest, (err2) => { + if (err2) + return cb(err2); + return setDestMode(dest, srcMode, cb); + }); + } + function setDestMode(dest, srcMode, cb) { + return fs6.chmod(dest, srcMode, cb); + } + function setDestTimestamps(src, dest, cb) { + fs6.stat(src, (err2, updatedSrcStat) => { + if (err2) + return cb(err2); + return utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime, cb); + }); + } + function onDir(srcStat, destStat, src, dest, opts, cb) { + if (!destStat) + return mkDirAndCopy(srcStat.mode, src, dest, opts, cb); + return copyDir(src, dest, opts, cb); + } + function mkDirAndCopy(srcMode, src, dest, opts, cb) { + fs6.mkdir(dest, (err2) => { + if (err2) + return cb(err2); + copyDir(src, dest, opts, (err3) => { + if (err3) + return cb(err3); + return setDestMode(dest, srcMode, cb); + }); + }); + } + function copyDir(src, dest, opts, cb) { + fs6.readdir(src, (err2, items) => { + if (err2) + return cb(err2); + return copyDirItems(items, src, dest, opts, cb); + }); + } + function copyDirItems(items, src, dest, opts, cb) { + const item = items.pop(); + if (!item) + return cb(); + return copyDirItem(items, item, src, dest, opts, cb); + } + function copyDirItem(items, item, src, dest, opts, cb) { + const srcItem = path30.join(src, item); + const destItem = path30.join(dest, item); + stat7.checkPaths(srcItem, destItem, "copy", opts, (err2, stats) => { + if (err2) + return cb(err2); + const { destStat } = stats; + startCopy(destStat, srcItem, destItem, opts, (err3) => { + if (err3) + return cb(err3); + return copyDirItems(items, src, dest, opts, cb); + }); + }); + } + function onLink(destStat, src, dest, opts, cb) { + fs6.readlink(src, (err2, resolvedSrc) => { + if (err2) + return cb(err2); + if (opts.dereference) { + resolvedSrc = path30.resolve(process.cwd(), resolvedSrc); + } + if (!destStat) { + return fs6.symlink(resolvedSrc, dest, cb); + } else { + fs6.readlink(dest, (err3, resolvedDest) => { + if (err3) { + if (err3.code === "EINVAL" || err3.code === "UNKNOWN") + return fs6.symlink(resolvedSrc, dest, cb); + return cb(err3); + } + if (opts.dereference) { + resolvedDest = path30.resolve(process.cwd(), resolvedDest); + } + if (stat7.isSrcSubdir(resolvedSrc, resolvedDest)) { + return cb(new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`)); + } + if (destStat.isDirectory() && stat7.isSrcSubdir(resolvedDest, resolvedSrc)) { + return cb(new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`)); + } + return copyLink(resolvedSrc, dest, cb); + }); + } + }); + } + function copyLink(resolvedSrc, dest, cb) { + fs6.unlink(dest, (err2) => { + if (err2) + return cb(err2); + return fs6.symlink(resolvedSrc, dest, cb); + }); + } + module2.exports = copy; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/copy/copy-sync.js +var require_copy_sync = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) { + "use strict"; + var fs6 = require_graceful_fs(); + var path30 = require("path"); + var mkdirsSync = require_mkdirs().mkdirsSync; + var utimesMillisSync = require_utimes().utimesMillisSync; + var stat7 = require_stat(); + function copySync(src, dest, opts) { + if (typeof opts === "function") { + opts = { filter: opts }; + } + opts = opts || {}; + opts.clobber = "clobber" in opts ? !!opts.clobber : true; + opts.overwrite = "overwrite" in opts ? !!opts.overwrite : opts.clobber; + if (opts.preserveTimestamps && process.arch === "ia32") { + process.emitWarning( + "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n see https://github.com/jprichardson/node-fs-extra/issues/269", + "Warning", + "fs-extra-WARN0002" + ); + } + const { srcStat, destStat } = stat7.checkPathsSync(src, dest, "copy", opts); + stat7.checkParentPathsSync(src, srcStat, dest, "copy"); + return handleFilterAndCopy(destStat, src, dest, opts); + } + function handleFilterAndCopy(destStat, src, dest, opts) { + if (opts.filter && !opts.filter(src, dest)) + return; + const destParent = path30.dirname(dest); + if (!fs6.existsSync(destParent)) + mkdirsSync(destParent); + return getStats(destStat, src, dest, opts); + } + function startCopy(destStat, src, dest, opts) { + if (opts.filter && !opts.filter(src, dest)) + return; + return getStats(destStat, src, dest, opts); + } + function getStats(destStat, src, dest, opts) { + const statSync3 = opts.dereference ? fs6.statSync : fs6.lstatSync; + const srcStat = statSync3(src); + if (srcStat.isDirectory()) + return onDir(srcStat, destStat, src, dest, opts); + else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) + return onFile(srcStat, destStat, src, dest, opts); + else if (srcStat.isSymbolicLink()) + return onLink(destStat, src, dest, opts); + else if (srcStat.isSocket()) + throw new Error(`Cannot copy a socket file: ${src}`); + else if (srcStat.isFIFO()) + throw new Error(`Cannot copy a FIFO pipe: ${src}`); + throw new Error(`Unknown file: ${src}`); + } + function onFile(srcStat, destStat, src, dest, opts) { + if (!destStat) + return copyFile(srcStat, src, dest, opts); + return mayCopyFile(srcStat, src, dest, opts); + } + function mayCopyFile(srcStat, src, dest, opts) { + if (opts.overwrite) { + fs6.unlinkSync(dest); + return copyFile(srcStat, src, dest, opts); + } else if (opts.errorOnExist) { + throw new Error(`'${dest}' already exists`); + } + } + function copyFile(srcStat, src, dest, opts) { + fs6.copyFileSync(src, dest); + if (opts.preserveTimestamps) + handleTimestamps(srcStat.mode, src, dest); + return setDestMode(dest, srcStat.mode); + } + function handleTimestamps(srcMode, src, dest) { + if (fileIsNotWritable(srcMode)) + makeFileWritable(dest, srcMode); + return setDestTimestamps(src, dest); + } + function fileIsNotWritable(srcMode) { + return (srcMode & 128) === 0; + } + function makeFileWritable(dest, srcMode) { + return setDestMode(dest, srcMode | 128); + } + function setDestMode(dest, srcMode) { + return fs6.chmodSync(dest, srcMode); + } + function setDestTimestamps(src, dest) { + const updatedSrcStat = fs6.statSync(src); + return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime); + } + function onDir(srcStat, destStat, src, dest, opts) { + if (!destStat) + return mkDirAndCopy(srcStat.mode, src, dest, opts); + return copyDir(src, dest, opts); + } + function mkDirAndCopy(srcMode, src, dest, opts) { + fs6.mkdirSync(dest); + copyDir(src, dest, opts); + return setDestMode(dest, srcMode); + } + function copyDir(src, dest, opts) { + fs6.readdirSync(src).forEach((item) => copyDirItem(item, src, dest, opts)); + } + function copyDirItem(item, src, dest, opts) { + const srcItem = path30.join(src, item); + const destItem = path30.join(dest, item); + const { destStat } = stat7.checkPathsSync(srcItem, destItem, "copy", opts); + return startCopy(destStat, srcItem, destItem, opts); + } + function onLink(destStat, src, dest, opts) { + let resolvedSrc = fs6.readlinkSync(src); + if (opts.dereference) { + resolvedSrc = path30.resolve(process.cwd(), resolvedSrc); + } + if (!destStat) { + return fs6.symlinkSync(resolvedSrc, dest); + } else { + let resolvedDest; + try { + resolvedDest = fs6.readlinkSync(dest); + } catch (err2) { + if (err2.code === "EINVAL" || err2.code === "UNKNOWN") + return fs6.symlinkSync(resolvedSrc, dest); + throw err2; + } + if (opts.dereference) { + resolvedDest = path30.resolve(process.cwd(), resolvedDest); + } + if (stat7.isSrcSubdir(resolvedSrc, resolvedDest)) { + throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`); + } + if (fs6.statSync(dest).isDirectory() && stat7.isSrcSubdir(resolvedDest, resolvedSrc)) { + throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`); + } + return copyLink(resolvedSrc, dest); + } + } + function copyLink(resolvedSrc, dest) { + fs6.unlinkSync(dest); + return fs6.symlinkSync(resolvedSrc, dest); + } + module2.exports = copySync; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/copy/index.js +var require_copy2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + module2.exports = { + copy: u(require_copy()), + copySync: require_copy_sync() + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/remove/rimraf.js +var require_rimraf2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/remove/rimraf.js"(exports2, module2) { + "use strict"; + var fs6 = require_graceful_fs(); + var path30 = require("path"); + var assert2 = require("assert"); + var isWindows = process.platform === "win32"; + function defaults4(options2) { + const methods = [ + "unlink", + "chmod", + "stat", + "lstat", + "rmdir", + "readdir" + ]; + methods.forEach((m) => { + options2[m] = options2[m] || fs6[m]; + m = m + "Sync"; + options2[m] = options2[m] || fs6[m]; + }); + options2.maxBusyTries = options2.maxBusyTries || 3; + } + function rimraf2(p, options2, cb) { + let busyTries = 0; + if (typeof options2 === "function") { + cb = options2; + options2 = {}; + } + assert2(p, "rimraf: missing path"); + assert2.strictEqual(typeof p, "string", "rimraf: path should be a string"); + assert2.strictEqual(typeof cb, "function", "rimraf: callback function required"); + assert2(options2, "rimraf: invalid options argument provided"); + assert2.strictEqual(typeof options2, "object", "rimraf: options should be object"); + defaults4(options2); + rimraf_2(p, options2, function CB(er) { + if (er) { + if ((er.code === "EBUSY" || er.code === "ENOTEMPTY" || er.code === "EPERM") && busyTries < options2.maxBusyTries) { + busyTries++; + const time = busyTries * 100; + return setTimeout(() => rimraf_2(p, options2, CB), time); + } + if (er.code === "ENOENT") + er = null; + } + cb(er); + }); + } + function rimraf_2(p, options2, cb) { + assert2(p); + assert2(options2); + assert2(typeof cb === "function"); + options2.lstat(p, (er, st) => { + if (er && er.code === "ENOENT") { + return cb(null); + } + if (er && er.code === "EPERM" && isWindows) { + return fixWinEPERM(p, options2, er, cb); + } + if (st && st.isDirectory()) { + return rmdir5(p, options2, er, cb); + } + options2.unlink(p, (er2) => { + if (er2) { + if (er2.code === "ENOENT") { + return cb(null); + } + if (er2.code === "EPERM") { + return isWindows ? fixWinEPERM(p, options2, er2, cb) : rmdir5(p, options2, er2, cb); + } + if (er2.code === "EISDIR") { + return rmdir5(p, options2, er2, cb); + } + } + return cb(er2); + }); + }); + } + function fixWinEPERM(p, options2, er, cb) { + assert2(p); + assert2(options2); + assert2(typeof cb === "function"); + options2.chmod(p, 438, (er2) => { + if (er2) { + cb(er2.code === "ENOENT" ? null : er); + } else { + options2.stat(p, (er3, stats) => { + if (er3) { + cb(er3.code === "ENOENT" ? null : er); + } else if (stats.isDirectory()) { + rmdir5(p, options2, er, cb); + } else { + options2.unlink(p, cb); + } + }); + } + }); + } + function fixWinEPERMSync(p, options2, er) { + let stats; + assert2(p); + assert2(options2); + try { + options2.chmodSync(p, 438); + } catch (er2) { + if (er2.code === "ENOENT") { + return; + } else { + throw er; + } + } + try { + stats = options2.statSync(p); + } catch (er3) { + if (er3.code === "ENOENT") { + return; + } else { + throw er; + } + } + if (stats.isDirectory()) { + rmdirSync2(p, options2, er); + } else { + options2.unlinkSync(p); + } + } + function rmdir5(p, options2, originalEr, cb) { + assert2(p); + assert2(options2); + assert2(typeof cb === "function"); + options2.rmdir(p, (er) => { + if (er && (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM")) { + rmkids(p, options2, cb); + } else if (er && er.code === "ENOTDIR") { + cb(originalEr); + } else { + cb(er); + } + }); + } + function rmkids(p, options2, cb) { + assert2(p); + assert2(options2); + assert2(typeof cb === "function"); + options2.readdir(p, (er, files) => { + if (er) + return cb(er); + let n = files.length; + let errState; + if (n === 0) + return options2.rmdir(p, cb); + files.forEach((f) => { + rimraf2(path30.join(p, f), options2, (er2) => { + if (errState) { + return; + } + if (er2) + return cb(errState = er2); + if (--n === 0) { + options2.rmdir(p, cb); + } + }); + }); + }); + } + function rimrafSync2(p, options2) { + let st; + options2 = options2 || {}; + defaults4(options2); + assert2(p, "rimraf: missing path"); + assert2.strictEqual(typeof p, "string", "rimraf: path should be a string"); + assert2(options2, "rimraf: missing options"); + assert2.strictEqual(typeof options2, "object", "rimraf: options should be object"); + try { + st = options2.lstatSync(p); + } catch (er) { + if (er.code === "ENOENT") { + return; + } + if (er.code === "EPERM" && isWindows) { + fixWinEPERMSync(p, options2, er); + } + } + try { + if (st && st.isDirectory()) { + rmdirSync2(p, options2, null); + } else { + options2.unlinkSync(p); + } + } catch (er) { + if (er.code === "ENOENT") { + return; + } else if (er.code === "EPERM") { + return isWindows ? fixWinEPERMSync(p, options2, er) : rmdirSync2(p, options2, er); + } else if (er.code !== "EISDIR") { + throw er; + } + rmdirSync2(p, options2, er); + } + } + function rmdirSync2(p, options2, originalEr) { + assert2(p); + assert2(options2); + try { + options2.rmdirSync(p); + } catch (er) { + if (er.code === "ENOTDIR") { + throw originalEr; + } else if (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM") { + rmkidsSync(p, options2); + } else if (er.code !== "ENOENT") { + throw er; + } + } + } + function rmkidsSync(p, options2) { + assert2(p); + assert2(options2); + options2.readdirSync(p).forEach((f) => rimrafSync2(path30.join(p, f), options2)); + if (isWindows) { + const startTime = Date.now(); + do { + try { + const ret2 = options2.rmdirSync(p, options2); + return ret2; + } catch { + } + } while (Date.now() - startTime < 500); + } else { + const ret2 = options2.rmdirSync(p, options2); + return ret2; + } + } + module2.exports = rimraf2; + rimraf2.sync = rimrafSync2; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/remove/index.js +var require_remove = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) { + "use strict"; + var fs6 = require_graceful_fs(); + var u = require_universalify().fromCallback; + var rimraf2 = require_rimraf2(); + function remove(path30, callback) { + if (fs6.rm) + return fs6.rm(path30, { recursive: true, force: true }, callback); + rimraf2(path30, callback); + } + function removeSync(path30) { + if (fs6.rmSync) + return fs6.rmSync(path30, { recursive: true, force: true }); + rimraf2.sync(path30); + } + module2.exports = { + remove: u(remove), + removeSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/empty/index.js +var require_empty2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var fs6 = require_fs2(); + var path30 = require("path"); + var mkdir6 = require_mkdirs(); + var remove = require_remove(); + var emptyDir = u(async function emptyDir2(dir) { + let items; + try { + items = await fs6.readdir(dir); + } catch { + return mkdir6.mkdirs(dir); + } + return Promise.all(items.map((item) => remove.remove(path30.join(dir, item)))); + }); + function emptyDirSync(dir) { + let items; + try { + items = fs6.readdirSync(dir); + } catch { + return mkdir6.mkdirsSync(dir); + } + items.forEach((item) => { + item = path30.join(dir, item); + remove.removeSync(item); + }); + } + module2.exports = { + emptyDirSync, + emptydirSync: emptyDirSync, + emptyDir, + emptydir: emptyDir + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/file.js +var require_file = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var path30 = require("path"); + var fs6 = require_graceful_fs(); + var mkdir6 = require_mkdirs(); + function createFile(file, callback) { + function makeFile() { + fs6.writeFile(file, "", (err2) => { + if (err2) + return callback(err2); + callback(); + }); + } + fs6.stat(file, (err2, stats) => { + if (!err2 && stats.isFile()) + return callback(); + const dir = path30.dirname(file); + fs6.stat(dir, (err3, stats2) => { + if (err3) { + if (err3.code === "ENOENT") { + return mkdir6.mkdirs(dir, (err4) => { + if (err4) + return callback(err4); + makeFile(); + }); + } + return callback(err3); + } + if (stats2.isDirectory()) + makeFile(); + else { + fs6.readdir(dir, (err4) => { + if (err4) + return callback(err4); + }); + } + }); + }); + } + function createFileSync(file) { + let stats; + try { + stats = fs6.statSync(file); + } catch { + } + if (stats && stats.isFile()) + return; + const dir = path30.dirname(file); + try { + if (!fs6.statSync(dir).isDirectory()) { + fs6.readdirSync(dir); + } + } catch (err2) { + if (err2 && err2.code === "ENOENT") + mkdir6.mkdirsSync(dir); + else + throw err2; + } + fs6.writeFileSync(file, ""); + } + module2.exports = { + createFile: u(createFile), + createFileSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/link.js +var require_link = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var path30 = require("path"); + var fs6 = require_graceful_fs(); + var mkdir6 = require_mkdirs(); + var pathExists2 = require_path_exists().pathExists; + var { areIdentical } = require_stat(); + function createLink(srcpath, dstpath, callback) { + function makeLink(srcpath2, dstpath2) { + fs6.link(srcpath2, dstpath2, (err2) => { + if (err2) + return callback(err2); + callback(null); + }); + } + fs6.lstat(dstpath, (_, dstStat) => { + fs6.lstat(srcpath, (err2, srcStat) => { + if (err2) { + err2.message = err2.message.replace("lstat", "ensureLink"); + return callback(err2); + } + if (dstStat && areIdentical(srcStat, dstStat)) + return callback(null); + const dir = path30.dirname(dstpath); + pathExists2(dir, (err3, dirExists) => { + if (err3) + return callback(err3); + if (dirExists) + return makeLink(srcpath, dstpath); + mkdir6.mkdirs(dir, (err4) => { + if (err4) + return callback(err4); + makeLink(srcpath, dstpath); + }); + }); + }); + }); + } + function createLinkSync(srcpath, dstpath) { + let dstStat; + try { + dstStat = fs6.lstatSync(dstpath); + } catch { + } + try { + const srcStat = fs6.lstatSync(srcpath); + if (dstStat && areIdentical(srcStat, dstStat)) + return; + } catch (err2) { + err2.message = err2.message.replace("lstat", "ensureLink"); + throw err2; + } + const dir = path30.dirname(dstpath); + const dirExists = fs6.existsSync(dir); + if (dirExists) + return fs6.linkSync(srcpath, dstpath); + mkdir6.mkdirsSync(dir); + return fs6.linkSync(srcpath, dstpath); + } + module2.exports = { + createLink: u(createLink), + createLinkSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/symlink-paths.js +var require_symlink_paths = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) { + "use strict"; + var path30 = require("path"); + var fs6 = require_graceful_fs(); + var pathExists2 = require_path_exists().pathExists; + function symlinkPaths(srcpath, dstpath, callback) { + if (path30.isAbsolute(srcpath)) { + return fs6.lstat(srcpath, (err2) => { + if (err2) { + err2.message = err2.message.replace("lstat", "ensureSymlink"); + return callback(err2); + } + return callback(null, { + toCwd: srcpath, + toDst: srcpath + }); + }); + } else { + const dstdir = path30.dirname(dstpath); + const relativeToDst = path30.join(dstdir, srcpath); + return pathExists2(relativeToDst, (err2, exists) => { + if (err2) + return callback(err2); + if (exists) { + return callback(null, { + toCwd: relativeToDst, + toDst: srcpath + }); + } else { + return fs6.lstat(srcpath, (err3) => { + if (err3) { + err3.message = err3.message.replace("lstat", "ensureSymlink"); + return callback(err3); + } + return callback(null, { + toCwd: srcpath, + toDst: path30.relative(dstdir, srcpath) + }); + }); + } + }); + } + } + function symlinkPathsSync(srcpath, dstpath) { + let exists; + if (path30.isAbsolute(srcpath)) { + exists = fs6.existsSync(srcpath); + if (!exists) + throw new Error("absolute srcpath does not exist"); + return { + toCwd: srcpath, + toDst: srcpath + }; + } else { + const dstdir = path30.dirname(dstpath); + const relativeToDst = path30.join(dstdir, srcpath); + exists = fs6.existsSync(relativeToDst); + if (exists) { + return { + toCwd: relativeToDst, + toDst: srcpath + }; + } else { + exists = fs6.existsSync(srcpath); + if (!exists) + throw new Error("relative srcpath does not exist"); + return { + toCwd: srcpath, + toDst: path30.relative(dstdir, srcpath) + }; + } + } + } + module2.exports = { + symlinkPaths, + symlinkPathsSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/symlink-type.js +var require_symlink_type = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) { + "use strict"; + var fs6 = require_graceful_fs(); + function symlinkType(srcpath, type2, callback) { + callback = typeof type2 === "function" ? type2 : callback; + type2 = typeof type2 === "function" ? false : type2; + if (type2) + return callback(null, type2); + fs6.lstat(srcpath, (err2, stats) => { + if (err2) + return callback(null, "file"); + type2 = stats && stats.isDirectory() ? "dir" : "file"; + callback(null, type2); + }); + } + function symlinkTypeSync(srcpath, type2) { + let stats; + if (type2) + return type2; + try { + stats = fs6.lstatSync(srcpath); + } catch { + return "file"; + } + return stats && stats.isDirectory() ? "dir" : "file"; + } + module2.exports = { + symlinkType, + symlinkTypeSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/symlink.js +var require_symlink = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var path30 = require("path"); + var fs6 = require_fs2(); + var _mkdirs = require_mkdirs(); + var mkdirs = _mkdirs.mkdirs; + var mkdirsSync = _mkdirs.mkdirsSync; + var _symlinkPaths = require_symlink_paths(); + var symlinkPaths = _symlinkPaths.symlinkPaths; + var symlinkPathsSync = _symlinkPaths.symlinkPathsSync; + var _symlinkType = require_symlink_type(); + var symlinkType = _symlinkType.symlinkType; + var symlinkTypeSync = _symlinkType.symlinkTypeSync; + var pathExists2 = require_path_exists().pathExists; + var { areIdentical } = require_stat(); + function createSymlink(srcpath, dstpath, type2, callback) { + callback = typeof type2 === "function" ? type2 : callback; + type2 = typeof type2 === "function" ? false : type2; + fs6.lstat(dstpath, (err2, stats) => { + if (!err2 && stats.isSymbolicLink()) { + Promise.all([ + fs6.stat(srcpath), + fs6.stat(dstpath) + ]).then(([srcStat, dstStat]) => { + if (areIdentical(srcStat, dstStat)) + return callback(null); + _createSymlink(srcpath, dstpath, type2, callback); + }); + } else + _createSymlink(srcpath, dstpath, type2, callback); + }); + } + function _createSymlink(srcpath, dstpath, type2, callback) { + symlinkPaths(srcpath, dstpath, (err2, relative3) => { + if (err2) + return callback(err2); + srcpath = relative3.toDst; + symlinkType(relative3.toCwd, type2, (err3, type3) => { + if (err3) + return callback(err3); + const dir = path30.dirname(dstpath); + pathExists2(dir, (err4, dirExists) => { + if (err4) + return callback(err4); + if (dirExists) + return fs6.symlink(srcpath, dstpath, type3, callback); + mkdirs(dir, (err5) => { + if (err5) + return callback(err5); + fs6.symlink(srcpath, dstpath, type3, callback); + }); + }); + }); + }); + } + function createSymlinkSync(srcpath, dstpath, type2) { + let stats; + try { + stats = fs6.lstatSync(dstpath); + } catch { + } + if (stats && stats.isSymbolicLink()) { + const srcStat = fs6.statSync(srcpath); + const dstStat = fs6.statSync(dstpath); + if (areIdentical(srcStat, dstStat)) + return; + } + const relative3 = symlinkPathsSync(srcpath, dstpath); + srcpath = relative3.toDst; + type2 = symlinkTypeSync(relative3.toCwd, type2); + const dir = path30.dirname(dstpath); + const exists = fs6.existsSync(dir); + if (exists) + return fs6.symlinkSync(srcpath, dstpath, type2); + mkdirsSync(dir); + return fs6.symlinkSync(srcpath, dstpath, type2); + } + module2.exports = { + createSymlink: u(createSymlink), + createSymlinkSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/index.js +var require_ensure = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/ensure/index.js"(exports2, module2) { + "use strict"; + var { createFile, createFileSync } = require_file(); + var { createLink, createLinkSync } = require_link(); + var { createSymlink, createSymlinkSync } = require_symlink(); + module2.exports = { + // file + createFile, + createFileSync, + ensureFile: createFile, + ensureFileSync: createFileSync, + // link + createLink, + createLinkSync, + ensureLink: createLink, + ensureLinkSync: createLinkSync, + // symlink + createSymlink, + createSymlinkSync, + ensureSymlink: createSymlink, + ensureSymlinkSync: createSymlinkSync + }; + } +}); + +// ../node_modules/.pnpm/universalify@1.0.0/node_modules/universalify/index.js +var require_universalify2 = __commonJS({ + "../node_modules/.pnpm/universalify@1.0.0/node_modules/universalify/index.js"(exports2) { + "use strict"; + exports2.fromCallback = function(fn) { + return Object.defineProperty(function(...args3) { + if (typeof args3[args3.length - 1] === "function") + fn.apply(this, args3); + else { + return new Promise((resolve8, reject) => { + fn.apply( + this, + args3.concat([(err2, res) => err2 ? reject(err2) : resolve8(res)]) + ); + }); + } + }, "name", { value: fn.name }); + }; + exports2.fromPromise = function(fn) { + return Object.defineProperty(function(...args3) { + const cb = args3[args3.length - 1]; + if (typeof cb !== "function") + return fn.apply(this, args3); + else + fn.apply(this, args3.slice(0, -1)).then((r) => cb(null, r), cb); + }, "name", { value: fn.name }); + }; + } +}); + +// ../node_modules/.pnpm/jsonfile@6.0.1/node_modules/jsonfile/utils.js +var require_utils19 = __commonJS({ + "../node_modules/.pnpm/jsonfile@6.0.1/node_modules/jsonfile/utils.js"(exports2, module2) { + function stringify(obj2, options2 = {}) { + const EOL = options2.EOL || "\n"; + const str = JSON.stringify(obj2, options2 ? options2.replacer : null, options2.spaces); + return str.replace(/\n/g, EOL) + EOL; + } + function stripBom(content) { + if (Buffer.isBuffer(content)) + content = content.toString("utf8"); + return content.replace(/^\uFEFF/, ""); + } + module2.exports = { stringify, stripBom }; + } +}); + +// ../node_modules/.pnpm/jsonfile@6.0.1/node_modules/jsonfile/index.js +var require_jsonfile = __commonJS({ + "../node_modules/.pnpm/jsonfile@6.0.1/node_modules/jsonfile/index.js"(exports2, module2) { + var _fs; + try { + _fs = require_graceful_fs(); + } catch (_) { + _fs = require("fs"); + } + var universalify = require_universalify2(); + var { stringify, stripBom } = require_utils19(); + async function _readFile(file, options2 = {}) { + if (typeof options2 === "string") { + options2 = { encoding: options2 }; + } + const fs6 = options2.fs || _fs; + const shouldThrow = "throws" in options2 ? options2.throws : true; + let data = await universalify.fromCallback(fs6.readFile)(file, options2); + data = stripBom(data); + let obj2; + try { + obj2 = JSON.parse(data, options2 ? options2.reviver : null); + } catch (err2) { + if (shouldThrow) { + err2.message = `${file}: ${err2.message}`; + throw err2; + } else { + return null; + } + } + return obj2; + } + var readFile5 = universalify.fromPromise(_readFile); + function readFileSync2(file, options2 = {}) { + if (typeof options2 === "string") { + options2 = { encoding: options2 }; + } + const fs6 = options2.fs || _fs; + const shouldThrow = "throws" in options2 ? options2.throws : true; + try { + let content = fs6.readFileSync(file, options2); + content = stripBom(content); + return JSON.parse(content, options2.reviver); + } catch (err2) { + if (shouldThrow) { + err2.message = `${file}: ${err2.message}`; + throw err2; + } else { + return null; + } + } + } + async function _writeFile(file, obj2, options2 = {}) { + const fs6 = options2.fs || _fs; + const str = stringify(obj2, options2); + await universalify.fromCallback(fs6.writeFile)(file, str, options2); + } + var writeFile4 = universalify.fromPromise(_writeFile); + function writeFileSync(file, obj2, options2 = {}) { + const fs6 = options2.fs || _fs; + const str = stringify(obj2, options2); + return fs6.writeFileSync(file, str, options2); + } + var jsonfile = { + readFile: readFile5, + readFileSync: readFileSync2, + writeFile: writeFile4, + writeFileSync + }; + module2.exports = jsonfile; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/json/jsonfile.js +var require_jsonfile2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/json/jsonfile.js"(exports2, module2) { + "use strict"; + var jsonFile = require_jsonfile(); + module2.exports = { + // jsonfile exports + readJson: jsonFile.readFile, + readJsonSync: jsonFile.readFileSync, + writeJson: jsonFile.writeFile, + writeJsonSync: jsonFile.writeFileSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/output-file/index.js +var require_output_file = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/output-file/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + var fs6 = require_graceful_fs(); + var path30 = require("path"); + var mkdir6 = require_mkdirs(); + var pathExists2 = require_path_exists().pathExists; + function outputFile(file, data, encoding, callback) { + if (typeof encoding === "function") { + callback = encoding; + encoding = "utf8"; + } + const dir = path30.dirname(file); + pathExists2(dir, (err2, itDoes) => { + if (err2) + return callback(err2); + if (itDoes) + return fs6.writeFile(file, data, encoding, callback); + mkdir6.mkdirs(dir, (err3) => { + if (err3) + return callback(err3); + fs6.writeFile(file, data, encoding, callback); + }); + }); + } + function outputFileSync(file, ...args3) { + const dir = path30.dirname(file); + if (fs6.existsSync(dir)) { + return fs6.writeFileSync(file, ...args3); + } + mkdir6.mkdirsSync(dir); + fs6.writeFileSync(file, ...args3); + } + module2.exports = { + outputFile: u(outputFile), + outputFileSync + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/json/output-json.js +var require_output_json = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) { + "use strict"; + var { stringify } = require_utils19(); + var { outputFile } = require_output_file(); + async function outputJson(file, data, options2 = {}) { + const str = stringify(data, options2); + await outputFile(file, str, options2); + } + module2.exports = outputJson; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/json/output-json-sync.js +var require_output_json_sync = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) { + "use strict"; + var { stringify } = require_utils19(); + var { outputFileSync } = require_output_file(); + function outputJsonSync(file, data, options2) { + const str = stringify(data, options2); + outputFileSync(file, str, options2); + } + module2.exports = outputJsonSync; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/json/index.js +var require_json = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/json/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromPromise; + var jsonFile = require_jsonfile2(); + jsonFile.outputJson = u(require_output_json()); + jsonFile.outputJsonSync = require_output_json_sync(); + jsonFile.outputJSON = jsonFile.outputJson; + jsonFile.outputJSONSync = jsonFile.outputJsonSync; + jsonFile.writeJSON = jsonFile.writeJson; + jsonFile.writeJSONSync = jsonFile.writeJsonSync; + jsonFile.readJSON = jsonFile.readJson; + jsonFile.readJSONSync = jsonFile.readJsonSync; + module2.exports = jsonFile; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/move/move.js +var require_move = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/move/move.js"(exports2, module2) { + "use strict"; + var fs6 = require_graceful_fs(); + var path30 = require("path"); + var copy = require_copy2().copy; + var remove = require_remove().remove; + var mkdirp2 = require_mkdirs().mkdirp; + var pathExists2 = require_path_exists().pathExists; + var stat7 = require_stat(); + function move(src, dest, opts, cb) { + if (typeof opts === "function") { + cb = opts; + opts = {}; + } + opts = opts || {}; + const overwrite = opts.overwrite || opts.clobber || false; + stat7.checkPaths(src, dest, "move", opts, (err2, stats) => { + if (err2) + return cb(err2); + const { srcStat, isChangingCase = false } = stats; + stat7.checkParentPaths(src, srcStat, dest, "move", (err3) => { + if (err3) + return cb(err3); + if (isParentRoot(dest)) + return doRename(src, dest, overwrite, isChangingCase, cb); + mkdirp2(path30.dirname(dest), (err4) => { + if (err4) + return cb(err4); + return doRename(src, dest, overwrite, isChangingCase, cb); + }); + }); + }); + } + function isParentRoot(dest) { + const parent = path30.dirname(dest); + const parsedPath = path30.parse(parent); + return parsedPath.root === parent; + } + function doRename(src, dest, overwrite, isChangingCase, cb) { + if (isChangingCase) + return rename4(src, dest, overwrite, cb); + if (overwrite) { + return remove(dest, (err2) => { + if (err2) + return cb(err2); + return rename4(src, dest, overwrite, cb); + }); + } + pathExists2(dest, (err2, destExists) => { + if (err2) + return cb(err2); + if (destExists) + return cb(new Error("dest already exists.")); + return rename4(src, dest, overwrite, cb); + }); + } + function rename4(src, dest, overwrite, cb) { + fs6.rename(src, dest, (err2) => { + if (!err2) + return cb(); + if (err2.code !== "EXDEV") + return cb(err2); + return moveAcrossDevice(src, dest, overwrite, cb); + }); + } + function moveAcrossDevice(src, dest, overwrite, cb) { + const opts = { + overwrite, + errorOnExist: true + }; + copy(src, dest, opts, (err2) => { + if (err2) + return cb(err2); + return remove(src, cb); + }); + } + module2.exports = move; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/move/move-sync.js +var require_move_sync = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) { + "use strict"; + var fs6 = require_graceful_fs(); + var path30 = require("path"); + var copySync = require_copy2().copySync; + var removeSync = require_remove().removeSync; + var mkdirpSync2 = require_mkdirs().mkdirpSync; + var stat7 = require_stat(); + function moveSync(src, dest, opts) { + opts = opts || {}; + const overwrite = opts.overwrite || opts.clobber || false; + const { srcStat, isChangingCase = false } = stat7.checkPathsSync(src, dest, "move", opts); + stat7.checkParentPathsSync(src, srcStat, dest, "move"); + if (!isParentRoot(dest)) + mkdirpSync2(path30.dirname(dest)); + return doRename(src, dest, overwrite, isChangingCase); + } + function isParentRoot(dest) { + const parent = path30.dirname(dest); + const parsedPath = path30.parse(parent); + return parsedPath.root === parent; + } + function doRename(src, dest, overwrite, isChangingCase) { + if (isChangingCase) + return rename4(src, dest, overwrite); + if (overwrite) { + removeSync(dest); + return rename4(src, dest, overwrite); + } + if (fs6.existsSync(dest)) + throw new Error("dest already exists."); + return rename4(src, dest, overwrite); + } + function rename4(src, dest, overwrite) { + try { + fs6.renameSync(src, dest); + } catch (err2) { + if (err2.code !== "EXDEV") + throw err2; + return moveAcrossDevice(src, dest, overwrite); + } + } + function moveAcrossDevice(src, dest, overwrite) { + const opts = { + overwrite, + errorOnExist: true + }; + copySync(src, dest, opts); + return removeSync(src); + } + module2.exports = moveSync; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/move/index.js +var require_move2 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/move/index.js"(exports2, module2) { + "use strict"; + var u = require_universalify().fromCallback; + module2.exports = { + move: u(require_move()), + moveSync: require_move_sync() + }; + } +}); + +// ../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/index.js +var require_lib5 = __commonJS({ + "../node_modules/.pnpm/fs-extra@10.1.0/node_modules/fs-extra/lib/index.js"(exports2, module2) { + "use strict"; + module2.exports = { + // Export promiseified graceful-fs: + ...require_fs2(), + // Export extra methods: + ...require_copy2(), + ...require_empty2(), + ...require_ensure(), + ...require_json(), + ...require_mkdirs(), + ...require_move2(), + ...require_output_file(), + ...require_path_exists(), + ...require_remove() + }; + } +}); + +// ../node_modules/.pnpm/object-assign@4.1.1/node_modules/object-assign/index.js +var require_object_assign = __commonJS({ + "../node_modules/.pnpm/object-assign@4.1.1/node_modules/object-assign/index.js"(exports2, module2) { + "use strict"; + var getOwnPropertySymbols = Object.getOwnPropertySymbols; + var hasOwnProperty2 = Object.prototype.hasOwnProperty; + var propIsEnumerable = Object.prototype.propertyIsEnumerable; + function toObject(val) { + if (val === null || val === void 0) { + throw new TypeError("Object.assign cannot be called with null or undefined"); + } + return Object(val); + } + function shouldUseNative() { + try { + if (!Object.assign) { + return false; + } + var test1 = new String("abc"); + test1[5] = "de"; + if (Object.getOwnPropertyNames(test1)[0] === "5") { + return false; + } + var test2 = {}; + for (var i = 0; i < 10; i++) { + test2["_" + String.fromCharCode(i)] = i; + } + var order2 = Object.getOwnPropertyNames(test2).map(function(n) { + return test2[n]; + }); + if (order2.join("") !== "0123456789") { + return false; + } + var test3 = {}; + "abcdefghijklmnopqrst".split("").forEach(function(letter) { + test3[letter] = letter; + }); + if (Object.keys(Object.assign({}, test3)).join("") !== "abcdefghijklmnopqrst") { + return false; + } + return true; + } catch (err2) { + return false; + } + } + module2.exports = shouldUseNative() ? Object.assign : function(target, source2) { + var from; + var to = toObject(target); + var symbols; + for (var s = 1; s < arguments.length; s++) { + from = Object(arguments[s]); + for (var key in from) { + if (hasOwnProperty2.call(from, key)) { + to[key] = from[key]; + } + } + if (getOwnPropertySymbols) { + symbols = getOwnPropertySymbols(from); + for (var i = 0; i < symbols.length; i++) { + if (propIsEnumerable.call(from, symbols[i])) { + to[symbols[i]] = from[symbols[i]]; + } + } + } + } + return to; + }; + } +}); + +// ../node_modules/.pnpm/vary@1.1.2/node_modules/vary/index.js +var require_vary = __commonJS({ + "../node_modules/.pnpm/vary@1.1.2/node_modules/vary/index.js"(exports2, module2) { + "use strict"; + module2.exports = vary; + module2.exports.append = append2; + var FIELD_NAME_REGEXP = /^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/; + function append2(header, field) { + if (typeof header !== "string") { + throw new TypeError("header argument is required"); + } + if (!field) { + throw new TypeError("field argument is required"); + } + var fields = !Array.isArray(field) ? parse7(String(field)) : field; + for (var j = 0; j < fields.length; j++) { + if (!FIELD_NAME_REGEXP.test(fields[j])) { + throw new TypeError("field argument contains an invalid header name"); + } + } + if (header === "*") { + return header; + } + var val = header; + var vals = parse7(header.toLowerCase()); + if (fields.indexOf("*") !== -1 || vals.indexOf("*") !== -1) { + return "*"; + } + for (var i = 0; i < fields.length; i++) { + var fld = fields[i].toLowerCase(); + if (vals.indexOf(fld) === -1) { + vals.push(fld); + val = val ? val + ", " + fields[i] : fields[i]; + } + } + return val; + } + function parse7(header) { + var end = 0; + var list = []; + var start4 = 0; + for (var i = 0, len = header.length; i < len; i++) { + switch (header.charCodeAt(i)) { + case 32: + if (start4 === end) { + start4 = end = i + 1; + } + break; + case 44: + list.push(header.substring(start4, end)); + start4 = end = i + 1; + break; + default: + end = i + 1; + break; + } + } + list.push(header.substring(start4, end)); + return list; + } + function vary(res, field) { + if (!res || !res.getHeader || !res.setHeader) { + throw new TypeError("res argument is required"); + } + var val = res.getHeader("Vary") || ""; + var header = Array.isArray(val) ? val.join(", ") : String(val); + if (val = append2(header, field)) { + res.setHeader("Vary", val); + } + } + } +}); + +// ../node_modules/.pnpm/cors@2.8.5/node_modules/cors/lib/index.js +var require_lib6 = __commonJS({ + "../node_modules/.pnpm/cors@2.8.5/node_modules/cors/lib/index.js"(exports2, module2) { + (function() { + "use strict"; + var assign = require_object_assign(); + var vary = require_vary(); + var defaults4 = { + origin: "*", + methods: "GET,HEAD,PUT,PATCH,POST,DELETE", + preflightContinue: false, + optionsSuccessStatus: 204 + }; + function isString2(s) { + return typeof s === "string" || s instanceof String; + } + function isOriginAllowed(origin, allowedOrigin) { + if (Array.isArray(allowedOrigin)) { + for (var i = 0; i < allowedOrigin.length; ++i) { + if (isOriginAllowed(origin, allowedOrigin[i])) { + return true; + } + } + return false; + } else if (isString2(allowedOrigin)) { + return origin === allowedOrigin; + } else if (allowedOrigin instanceof RegExp) { + return allowedOrigin.test(origin); + } else { + return !!allowedOrigin; + } + } + function configureOrigin(options2, req) { + var requestOrigin = req.headers.origin, headers = [], isAllowed; + if (!options2.origin || options2.origin === "*") { + headers.push([{ + key: "Access-Control-Allow-Origin", + value: "*" + }]); + } else if (isString2(options2.origin)) { + headers.push([{ + key: "Access-Control-Allow-Origin", + value: options2.origin + }]); + headers.push([{ + key: "Vary", + value: "Origin" + }]); + } else { + isAllowed = isOriginAllowed(requestOrigin, options2.origin); + headers.push([{ + key: "Access-Control-Allow-Origin", + value: isAllowed ? requestOrigin : false + }]); + headers.push([{ + key: "Vary", + value: "Origin" + }]); + } + return headers; + } + function configureMethods(options2) { + var methods = options2.methods; + if (methods.join) { + methods = options2.methods.join(","); + } + return { + key: "Access-Control-Allow-Methods", + value: methods + }; + } + function configureCredentials(options2) { + if (options2.credentials === true) { + return { + key: "Access-Control-Allow-Credentials", + value: "true" + }; + } + return null; + } + function configureAllowedHeaders(options2, req) { + var allowedHeaders = options2.allowedHeaders || options2.headers; + var headers = []; + if (!allowedHeaders) { + allowedHeaders = req.headers["access-control-request-headers"]; + headers.push([{ + key: "Vary", + value: "Access-Control-Request-Headers" + }]); + } else if (allowedHeaders.join) { + allowedHeaders = allowedHeaders.join(","); + } + if (allowedHeaders && allowedHeaders.length) { + headers.push([{ + key: "Access-Control-Allow-Headers", + value: allowedHeaders + }]); + } + return headers; + } + function configureExposedHeaders(options2) { + var headers = options2.exposedHeaders; + if (!headers) { + return null; + } else if (headers.join) { + headers = headers.join(","); + } + if (headers && headers.length) { + return { + key: "Access-Control-Expose-Headers", + value: headers + }; + } + return null; + } + function configureMaxAge(options2) { + var maxAge = (typeof options2.maxAge === "number" || options2.maxAge) && options2.maxAge.toString(); + if (maxAge && maxAge.length) { + return { + key: "Access-Control-Max-Age", + value: maxAge + }; + } + return null; + } + function applyHeaders(headers, res) { + for (var i = 0, n = headers.length; i < n; i++) { + var header = headers[i]; + if (header) { + if (Array.isArray(header)) { + applyHeaders(header, res); + } else if (header.key === "Vary" && header.value) { + vary(res, header.value); + } else if (header.value) { + res.setHeader(header.key, header.value); + } + } + } + } + function cors(options2, req, res, next) { + var headers = [], method = req.method && req.method.toUpperCase && req.method.toUpperCase(); + if (method === "OPTIONS") { + headers.push(configureOrigin(options2, req)); + headers.push(configureCredentials(options2, req)); + headers.push(configureMethods(options2, req)); + headers.push(configureAllowedHeaders(options2, req)); + headers.push(configureMaxAge(options2, req)); + headers.push(configureExposedHeaders(options2, req)); + applyHeaders(headers, res); + if (options2.preflightContinue) { + next(); + } else { + res.statusCode = options2.optionsSuccessStatus; + res.setHeader("Content-Length", "0"); + res.end(); + } + } else { + headers.push(configureOrigin(options2, req)); + headers.push(configureCredentials(options2, req)); + headers.push(configureExposedHeaders(options2, req)); + applyHeaders(headers, res); + next(); + } + } + function middlewareWrapper(o) { + var optionsCallback = null; + if (typeof o === "function") { + optionsCallback = o; + } else { + optionsCallback = function(req, cb) { + cb(null, o); + }; + } + return function corsMiddleware(req, res, next) { + optionsCallback(req, function(err2, options2) { + if (err2) { + next(err2); + } else { + var corsOptions = assign({}, defaults4, options2); + var originCallback = null; + if (corsOptions.origin && typeof corsOptions.origin === "function") { + originCallback = corsOptions.origin; + } else if (corsOptions.origin) { + originCallback = function(origin, cb) { + cb(null, corsOptions.origin); + }; + } + if (originCallback) { + originCallback(req.headers.origin, function(err22, origin) { + if (err22 || !origin) { + next(err22); + } else { + corsOptions.origin = origin; + cors(corsOptions, req, res, next); + } + }); + } else { + next(); + } + } + }); + }; + } + module2.exports = middlewareWrapper; + })(); + } +}); + +// ../node_modules/.pnpm/basic-auth@2.0.1/node_modules/basic-auth/index.js +var require_basic_auth = __commonJS({ + "../node_modules/.pnpm/basic-auth@2.0.1/node_modules/basic-auth/index.js"(exports2, module2) { + "use strict"; + var Buffer2 = require_safe_buffer().Buffer; + module2.exports = auth; + module2.exports.parse = parse7; + var CREDENTIALS_REGEXP = /^ *(?:[Bb][Aa][Ss][Ii][Cc]) +([A-Za-z0-9._~+/-]+=*) *$/; + var USER_PASS_REGEXP = /^([^:]*):(.*)$/; + function auth(req) { + if (!req) { + throw new TypeError("argument req is required"); + } + if (typeof req !== "object") { + throw new TypeError("argument req is required to be an object"); + } + var header = getAuthorization(req); + return parse7(header); + } + function decodeBase64(str) { + return Buffer2.from(str, "base64").toString(); + } + function getAuthorization(req) { + if (!req.headers || typeof req.headers !== "object") { + throw new TypeError("argument req is required to have headers property"); + } + return req.headers.authorization; + } + function parse7(string) { + if (typeof string !== "string") { + return void 0; + } + var match2 = CREDENTIALS_REGEXP.exec(string); + if (!match2) { + return void 0; + } + var userPass = USER_PASS_REGEXP.exec(decodeBase64(match2[1])); + if (!userPass) { + return void 0; + } + return new Credentials(userPass[1], userPass[2]); + } + function Credentials(name, pass) { + this.name = name; + this.pass = pass; + } + } +}); + +// ../node_modules/.pnpm/ms@2.0.0/node_modules/ms/index.js +var require_ms2 = __commonJS({ + "../node_modules/.pnpm/ms@2.0.0/node_modules/ms/index.js"(exports2, module2) { + var s = 1e3; + var m = s * 60; + var h = m * 60; + var d = h * 24; + var y = d * 365.25; + module2.exports = function(val, options2) { + options2 = options2 || {}; + var type2 = typeof val; + if (type2 === "string" && val.length > 0) { + return parse7(val); + } else if (type2 === "number" && isNaN(val) === false) { + return options2.long ? fmtLong(val) : fmtShort(val); + } + throw new Error( + "val is not a non-empty string or a valid number. val=" + JSON.stringify(val) + ); + }; + function parse7(str) { + str = String(str); + if (str.length > 100) { + return; + } + var match2 = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec( + str + ); + if (!match2) { + return; + } + var n = parseFloat(match2[1]); + var type2 = (match2[2] || "ms").toLowerCase(); + switch (type2) { + case "years": + case "year": + case "yrs": + case "yr": + case "y": + return n * y; + case "days": + case "day": + case "d": + return n * d; + case "hours": + case "hour": + case "hrs": + case "hr": + case "h": + return n * h; + case "minutes": + case "minute": + case "mins": + case "min": + case "m": + return n * m; + case "seconds": + case "second": + case "secs": + case "sec": + case "s": + return n * s; + case "milliseconds": + case "millisecond": + case "msecs": + case "msec": + case "ms": + return n; + default: + return void 0; + } + } + function fmtShort(ms) { + if (ms >= d) { + return Math.round(ms / d) + "d"; + } + if (ms >= h) { + return Math.round(ms / h) + "h"; + } + if (ms >= m) { + return Math.round(ms / m) + "m"; + } + if (ms >= s) { + return Math.round(ms / s) + "s"; + } + return ms + "ms"; + } + function fmtLong(ms) { + return plural(ms, d, "day") || plural(ms, h, "hour") || plural(ms, m, "minute") || plural(ms, s, "second") || ms + " ms"; + } + function plural(ms, n, name) { + if (ms < n) { + return; + } + if (ms < n * 1.5) { + return Math.floor(ms / n) + " " + name; + } + return Math.ceil(ms / n) + " " + name + "s"; + } + } +}); + +// ../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/debug.js +var require_debug3 = __commonJS({ + "../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/debug.js"(exports2, module2) { + exports2 = module2.exports = createDebug.debug = createDebug["default"] = createDebug; + exports2.coerce = coerce; + exports2.disable = disable; + exports2.enable = enable; + exports2.enabled = enabled; + exports2.humanize = require_ms2(); + exports2.names = []; + exports2.skips = []; + exports2.formatters = {}; + var prevTime; + function selectColor(namespace) { + var hash = 0, i; + for (i in namespace) { + hash = (hash << 5) - hash + namespace.charCodeAt(i); + hash |= 0; + } + return exports2.colors[Math.abs(hash) % exports2.colors.length]; + } + function createDebug(namespace) { + function debug() { + if (!debug.enabled) + return; + var self2 = debug; + var curr = +/* @__PURE__ */ new Date(); + var ms = curr - (prevTime || curr); + self2.diff = ms; + self2.prev = prevTime; + self2.curr = curr; + prevTime = curr; + var args3 = new Array(arguments.length); + for (var i = 0; i < args3.length; i++) { + args3[i] = arguments[i]; + } + args3[0] = exports2.coerce(args3[0]); + if ("string" !== typeof args3[0]) { + args3.unshift("%O"); + } + var index = 0; + args3[0] = args3[0].replace(/%([a-zA-Z%])/g, function(match2, format) { + if (match2 === "%%") + return match2; + index++; + var formatter = exports2.formatters[format]; + if ("function" === typeof formatter) { + var val = args3[index]; + match2 = formatter.call(self2, val); + args3.splice(index, 1); + index--; + } + return match2; + }); + exports2.formatArgs.call(self2, args3); + var logFn = debug.log || exports2.log || console.log.bind(console); + logFn.apply(self2, args3); + } + debug.namespace = namespace; + debug.enabled = exports2.enabled(namespace); + debug.useColors = exports2.useColors(); + debug.color = selectColor(namespace); + if ("function" === typeof exports2.init) { + exports2.init(debug); + } + return debug; + } + function enable(namespaces) { + exports2.save(namespaces); + exports2.names = []; + exports2.skips = []; + var split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/); + var len = split.length; + for (var i = 0; i < len; i++) { + if (!split[i]) + continue; + namespaces = split[i].replace(/\*/g, ".*?"); + if (namespaces[0] === "-") { + exports2.skips.push(new RegExp("^" + namespaces.substr(1) + "$")); + } else { + exports2.names.push(new RegExp("^" + namespaces + "$")); + } + } + } + function disable() { + exports2.enable(""); + } + function enabled(name) { + var i, len; + for (i = 0, len = exports2.skips.length; i < len; i++) { + if (exports2.skips[i].test(name)) { + return false; + } + } + for (i = 0, len = exports2.names.length; i < len; i++) { + if (exports2.names[i].test(name)) { + return true; + } + } + return false; + } + function coerce(val) { + if (val instanceof Error) + return val.stack || val.message; + return val; + } + } +}); + +// ../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/browser.js +var require_browser5 = __commonJS({ + "../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/browser.js"(exports2, module2) { + exports2 = module2.exports = require_debug3(); + exports2.log = log2; + exports2.formatArgs = formatArgs; + exports2.save = save; + exports2.load = load; + exports2.useColors = useColors; + exports2.storage = "undefined" != typeof chrome && "undefined" != typeof chrome.storage ? chrome.storage.local : localstorage(); + exports2.colors = [ + "lightseagreen", + "forestgreen", + "goldenrod", + "dodgerblue", + "darkorchid", + "crimson" + ]; + function useColors() { + if (typeof window !== "undefined" && window.process && window.process.type === "renderer") { + return true; + } + return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // is firebug? http://stackoverflow.com/a/398120/376773 + typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // is firefox >= v31? + // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages + typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // double check webkit in userAgent just in case we are in a worker + typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); + } + exports2.formatters.j = function(v) { + try { + return JSON.stringify(v); + } catch (err2) { + return "[UnexpectedJSONParseError]: " + err2.message; + } + }; + function formatArgs(args3) { + var useColors2 = this.useColors; + args3[0] = (useColors2 ? "%c" : "") + this.namespace + (useColors2 ? " %c" : " ") + args3[0] + (useColors2 ? "%c " : " ") + "+" + exports2.humanize(this.diff); + if (!useColors2) + return; + var c = "color: " + this.color; + args3.splice(1, 0, c, "color: inherit"); + var index = 0; + var lastC = 0; + args3[0].replace(/%[a-zA-Z%]/g, function(match2) { + if ("%%" === match2) + return; + index++; + if ("%c" === match2) { + lastC = index; + } + }); + args3.splice(lastC, 0, c); + } + function log2() { + return "object" === typeof console && console.log && Function.prototype.apply.call(console.log, console, arguments); + } + function save(namespaces) { + try { + if (null == namespaces) { + exports2.storage.removeItem("debug"); + } else { + exports2.storage.debug = namespaces; + } + } catch (e) { + } + } + function load() { + var r; + try { + r = exports2.storage.debug; + } catch (e) { + } + if (!r && typeof process !== "undefined" && "env" in process) { + r = process.env.DEBUG; + } + return r; + } + exports2.enable(load()); + function localstorage() { + try { + return window.localStorage; + } catch (e) { + } + } + } +}); + +// ../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/node.js +var require_node16 = __commonJS({ + "../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/node.js"(exports2, module2) { + var tty = require("tty"); + var util2 = require("util"); + exports2 = module2.exports = require_debug3(); + exports2.init = init5; + exports2.log = log2; + exports2.formatArgs = formatArgs; + exports2.save = save; + exports2.load = load; + exports2.useColors = useColors; + exports2.colors = [6, 2, 3, 4, 5, 1]; + exports2.inspectOpts = Object.keys(process.env).filter(function(key) { + return /^debug_/i.test(key); + }).reduce(function(obj2, key) { + var prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, function(_, k) { + return k.toUpperCase(); + }); + var val = process.env[key]; + if (/^(yes|on|true|enabled)$/i.test(val)) + val = true; + else if (/^(no|off|false|disabled)$/i.test(val)) + val = false; + else if (val === "null") + val = null; + else + val = Number(val); + obj2[prop] = val; + return obj2; + }, {}); + var fd = parseInt(process.env.DEBUG_FD, 10) || 2; + if (1 !== fd && 2 !== fd) { + util2.deprecate(function() { + }, "except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)")(); + } + var stream5 = 1 === fd ? process.stdout : 2 === fd ? process.stderr : createWritableStdioStream(fd); + function useColors() { + return "colors" in exports2.inspectOpts ? Boolean(exports2.inspectOpts.colors) : tty.isatty(fd); + } + exports2.formatters.o = function(v) { + this.inspectOpts.colors = this.useColors; + return util2.inspect(v, this.inspectOpts).split("\n").map(function(str) { + return str.trim(); + }).join(" "); + }; + exports2.formatters.O = function(v) { + this.inspectOpts.colors = this.useColors; + return util2.inspect(v, this.inspectOpts); + }; + function formatArgs(args3) { + var name = this.namespace; + var useColors2 = this.useColors; + if (useColors2) { + var c = this.color; + var prefix = " \x1B[3" + c + ";1m" + name + " \x1B[0m"; + args3[0] = prefix + args3[0].split("\n").join("\n" + prefix); + args3.push("\x1B[3" + c + "m+" + exports2.humanize(this.diff) + "\x1B[0m"); + } else { + args3[0] = (/* @__PURE__ */ new Date()).toUTCString() + " " + name + " " + args3[0]; + } + } + function log2() { + return stream5.write(util2.format.apply(util2, arguments) + "\n"); + } + function save(namespaces) { + if (null == namespaces) { + delete process.env.DEBUG; + } else { + process.env.DEBUG = namespaces; + } + } + function load() { + return process.env.DEBUG; + } + function createWritableStdioStream(fd2) { + var stream6; + var tty_wrap = process.binding("tty_wrap"); + switch (tty_wrap.guessHandleType(fd2)) { + case "TTY": + stream6 = new tty.WriteStream(fd2); + stream6._type = "tty"; + if (stream6._handle && stream6._handle.unref) { + stream6._handle.unref(); + } + break; + case "FILE": + var fs6 = require("fs"); + stream6 = new fs6.SyncWriteStream(fd2, { autoClose: false }); + stream6._type = "fs"; + break; + case "PIPE": + case "TCP": + var net = require("net"); + stream6 = new net.Socket({ + fd: fd2, + readable: false, + writable: true + }); + stream6.readable = false; + stream6.read = null; + stream6._type = "pipe"; + if (stream6._handle && stream6._handle.unref) { + stream6._handle.unref(); + } + break; + default: + throw new Error("Implement me. Unknown stream file type!"); + } + stream6.fd = fd2; + stream6._isStdio = true; + return stream6; + } + function init5(debug) { + debug.inspectOpts = {}; + var keys = Object.keys(exports2.inspectOpts); + for (var i = 0; i < keys.length; i++) { + debug.inspectOpts[keys[i]] = exports2.inspectOpts[keys[i]]; + } + } + exports2.enable(load()); + } +}); + +// ../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/index.js +var require_src31 = __commonJS({ + "../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/index.js"(exports2, module2) { + if (typeof process !== "undefined" && process.type === "renderer") { + module2.exports = require_browser5(); + } else { + module2.exports = require_node16(); + } + } +}); + +// ../node_modules/.pnpm/depd@2.0.0/node_modules/depd/index.js +var require_depd = __commonJS({ + "../node_modules/.pnpm/depd@2.0.0/node_modules/depd/index.js"(exports2, module2) { + var relative3 = require("path").relative; + module2.exports = depd; + var basePath = process.cwd(); + function containsNamespace(str, namespace) { + var vals = str.split(/[ ,]+/); + var ns = String(namespace).toLowerCase(); + for (var i = 0; i < vals.length; i++) { + var val = vals[i]; + if (val && (val === "*" || val.toLowerCase() === ns)) { + return true; + } + } + return false; + } + function convertDataDescriptorToAccessor(obj2, prop, message) { + var descriptor = Object.getOwnPropertyDescriptor(obj2, prop); + var value = descriptor.value; + descriptor.get = function getter() { + return value; + }; + if (descriptor.writable) { + descriptor.set = function setter(val) { + return value = val; + }; + } + delete descriptor.value; + delete descriptor.writable; + Object.defineProperty(obj2, prop, descriptor); + return descriptor; + } + function createArgumentsString(arity2) { + var str = ""; + for (var i = 0; i < arity2; i++) { + str += ", arg" + i; + } + return str.substr(2); + } + function createStackString(stack) { + var str = this.name + ": " + this.namespace; + if (this.message) { + str += " deprecated " + this.message; + } + for (var i = 0; i < stack.length; i++) { + str += "\n at " + stack[i].toString(); + } + return str; + } + function depd(namespace) { + if (!namespace) { + throw new TypeError("argument namespace is required"); + } + var stack = getStack(); + var site = callSiteLocation(stack[1]); + var file = site[0]; + function deprecate(message) { + log2.call(deprecate, message); + } + deprecate._file = file; + deprecate._ignored = isignored(namespace); + deprecate._namespace = namespace; + deprecate._traced = istraced(namespace); + deprecate._warned = /* @__PURE__ */ Object.create(null); + deprecate.function = wrapfunction; + deprecate.property = wrapproperty; + return deprecate; + } + function eehaslisteners(emitter, type2) { + var count = typeof emitter.listenerCount !== "function" ? emitter.listeners(type2).length : emitter.listenerCount(type2); + return count > 0; + } + function isignored(namespace) { + if (process.noDeprecation) { + return true; + } + var str = process.env.NO_DEPRECATION || ""; + return containsNamespace(str, namespace); + } + function istraced(namespace) { + if (process.traceDeprecation) { + return true; + } + var str = process.env.TRACE_DEPRECATION || ""; + return containsNamespace(str, namespace); + } + function log2(message, site) { + var haslisteners = eehaslisteners(process, "deprecation"); + if (!haslisteners && this._ignored) { + return; + } + var caller; + var callFile; + var callSite; + var depSite; + var i = 0; + var seen = false; + var stack = getStack(); + var file = this._file; + if (site) { + depSite = site; + callSite = callSiteLocation(stack[1]); + callSite.name = depSite.name; + file = callSite[0]; + } else { + i = 2; + depSite = callSiteLocation(stack[i]); + callSite = depSite; + } + for (; i < stack.length; i++) { + caller = callSiteLocation(stack[i]); + callFile = caller[0]; + if (callFile === file) { + seen = true; + } else if (callFile === this._file) { + file = this._file; + } else if (seen) { + break; + } + } + var key = caller ? depSite.join(":") + "__" + caller.join(":") : void 0; + if (key !== void 0 && key in this._warned) { + return; + } + this._warned[key] = true; + var msg = message; + if (!msg) { + msg = callSite === depSite || !callSite.name ? defaultMessage(depSite) : defaultMessage(callSite); + } + if (haslisteners) { + var err2 = DeprecationError(this._namespace, msg, stack.slice(i)); + process.emit("deprecation", err2); + return; + } + var format = process.stderr.isTTY ? formatColor : formatPlain; + var output = format.call(this, msg, caller, stack.slice(i)); + process.stderr.write(output + "\n", "utf8"); + } + function callSiteLocation(callSite) { + var file = callSite.getFileName() || ""; + var line = callSite.getLineNumber(); + var colm = callSite.getColumnNumber(); + if (callSite.isEval()) { + file = callSite.getEvalOrigin() + ", " + file; + } + var site = [file, line, colm]; + site.callSite = callSite; + site.name = callSite.getFunctionName(); + return site; + } + function defaultMessage(site) { + var callSite = site.callSite; + var funcName = site.name; + if (!funcName) { + funcName = ""; + } + var context2 = callSite.getThis(); + var typeName = context2 && callSite.getTypeName(); + if (typeName === "Object") { + typeName = void 0; + } + if (typeName === "Function") { + typeName = context2.name || typeName; + } + return typeName && callSite.getMethodName() ? typeName + "." + funcName : funcName; + } + function formatPlain(msg, caller, stack) { + var timestamp = (/* @__PURE__ */ new Date()).toUTCString(); + var formatted = timestamp + " " + this._namespace + " deprecated " + msg; + if (this._traced) { + for (var i = 0; i < stack.length; i++) { + formatted += "\n at " + stack[i].toString(); + } + return formatted; + } + if (caller) { + formatted += " at " + formatLocation(caller); + } + return formatted; + } + function formatColor(msg, caller, stack) { + var formatted = "\x1B[36;1m" + this._namespace + "\x1B[22;39m \x1B[33;1mdeprecated\x1B[22;39m \x1B[0m" + msg + "\x1B[39m"; + if (this._traced) { + for (var i = 0; i < stack.length; i++) { + formatted += "\n \x1B[36mat " + stack[i].toString() + "\x1B[39m"; + } + return formatted; + } + if (caller) { + formatted += " \x1B[36m" + formatLocation(caller) + "\x1B[39m"; + } + return formatted; + } + function formatLocation(callSite) { + return relative3(basePath, callSite[0]) + ":" + callSite[1] + ":" + callSite[2]; + } + function getStack() { + var limit = Error.stackTraceLimit; + var obj2 = {}; + var prep = Error.prepareStackTrace; + Error.prepareStackTrace = prepareObjectStackTrace; + Error.stackTraceLimit = Math.max(10, limit); + Error.captureStackTrace(obj2); + var stack = obj2.stack.slice(1); + Error.prepareStackTrace = prep; + Error.stackTraceLimit = limit; + return stack; + } + function prepareObjectStackTrace(obj2, stack) { + return stack; + } + function wrapfunction(fn, message) { + if (typeof fn !== "function") { + throw new TypeError("argument fn must be a function"); + } + var args3 = createArgumentsString(fn.length); + var stack = getStack(); + var site = callSiteLocation(stack[1]); + site.name = fn.name; + var deprecatedfn = new Function( + "fn", + "log", + "deprecate", + "message", + "site", + '"use strict"\nreturn function (' + args3 + ") {log.call(deprecate, message, site)\nreturn fn.apply(this, arguments)\n}" + )(fn, log2, this, message, site); + return deprecatedfn; + } + function wrapproperty(obj2, prop, message) { + if (!obj2 || typeof obj2 !== "object" && typeof obj2 !== "function") { + throw new TypeError("argument obj must be object"); + } + var descriptor = Object.getOwnPropertyDescriptor(obj2, prop); + if (!descriptor) { + throw new TypeError("must call property on owner object"); + } + if (!descriptor.configurable) { + throw new TypeError("property must be configurable"); + } + var deprecate = this; + var stack = getStack(); + var site = callSiteLocation(stack[1]); + site.name = prop; + if ("value" in descriptor) { + descriptor = convertDataDescriptorToAccessor(obj2, prop, message); + } + var get = descriptor.get; + var set = descriptor.set; + if (typeof get === "function") { + descriptor.get = function getter() { + log2.call(deprecate, message, site); + return get.apply(this, arguments); + }; + } + if (typeof set === "function") { + descriptor.set = function setter() { + log2.call(deprecate, message, site); + return set.apply(this, arguments); + }; + } + Object.defineProperty(obj2, prop, descriptor); + } + function DeprecationError(namespace, message, stack) { + var error = new Error(); + var stackString; + Object.defineProperty(error, "constructor", { + value: DeprecationError + }); + Object.defineProperty(error, "message", { + configurable: true, + enumerable: false, + value: message, + writable: true + }); + Object.defineProperty(error, "name", { + enumerable: false, + configurable: true, + value: "DeprecationError", + writable: true + }); + Object.defineProperty(error, "namespace", { + configurable: true, + enumerable: false, + value: namespace, + writable: true + }); + Object.defineProperty(error, "stack", { + configurable: true, + enumerable: false, + get: function() { + if (stackString !== void 0) { + return stackString; + } + return stackString = createStackString.call(this, stack); + }, + set: function setter(val) { + stackString = val; + } + }); + return error; + } + } +}); + +// ../node_modules/.pnpm/ee-first@1.1.1/node_modules/ee-first/index.js +var require_ee_first = __commonJS({ + "../node_modules/.pnpm/ee-first@1.1.1/node_modules/ee-first/index.js"(exports2, module2) { + "use strict"; + module2.exports = first; + function first(stuff, done) { + if (!Array.isArray(stuff)) + throw new TypeError("arg must be an array of [ee, events...] arrays"); + var cleanups = []; + for (var i = 0; i < stuff.length; i++) { + var arr = stuff[i]; + if (!Array.isArray(arr) || arr.length < 2) + throw new TypeError("each array member must be [ee, events...]"); + var ee = arr[0]; + for (var j = 1; j < arr.length; j++) { + var event = arr[j]; + var fn = listener(event, callback); + ee.on(event, fn); + cleanups.push({ + ee, + event, + fn + }); + } + } + function callback() { + cleanup(); + done.apply(null, arguments); + } + function cleanup() { + var x; + for (var i2 = 0; i2 < cleanups.length; i2++) { + x = cleanups[i2]; + x.ee.removeListener(x.event, x.fn); + } + } + function thunk(fn2) { + done = fn2; + } + thunk.cancel = cleanup; + return thunk; + } + function listener(event, done) { + return function onevent(arg1) { + var args3 = new Array(arguments.length); + var ee = this; + var err2 = event === "error" ? arg1 : null; + for (var i = 0; i < args3.length; i++) { + args3[i] = arguments[i]; + } + done(err2, ee, event, args3); + }; + } + } +}); + +// ../node_modules/.pnpm/on-finished@2.3.0/node_modules/on-finished/index.js +var require_on_finished = __commonJS({ + "../node_modules/.pnpm/on-finished@2.3.0/node_modules/on-finished/index.js"(exports2, module2) { + "use strict"; + module2.exports = onFinished; + module2.exports.isFinished = isFinished; + var first = require_ee_first(); + var defer2 = typeof setImmediate === "function" ? setImmediate : function(fn) { + process.nextTick(fn.bind.apply(fn, arguments)); + }; + function onFinished(msg, listener) { + if (isFinished(msg) !== false) { + defer2(listener, null, msg); + return msg; + } + attachListener(msg, listener); + return msg; + } + function isFinished(msg) { + var socket = msg.socket; + if (typeof msg.finished === "boolean") { + return Boolean(msg.finished || socket && !socket.writable); + } + if (typeof msg.complete === "boolean") { + return Boolean(msg.upgrade || !socket || !socket.readable || msg.complete && !msg.readable); + } + return void 0; + } + function attachFinishedListener(msg, callback) { + var eeMsg; + var eeSocket; + var finished = false; + function onFinish(error) { + eeMsg.cancel(); + eeSocket.cancel(); + finished = true; + callback(error); + } + eeMsg = eeSocket = first([[msg, "end", "finish"]], onFinish); + function onSocket(socket) { + msg.removeListener("socket", onSocket); + if (finished) + return; + if (eeMsg !== eeSocket) + return; + eeSocket = first([[socket, "error", "close"]], onFinish); + } + if (msg.socket) { + onSocket(msg.socket); + return; + } + msg.on("socket", onSocket); + if (msg.socket === void 0) { + patchAssignSocket(msg, onSocket); + } + } + function attachListener(msg, listener) { + var attached = msg.__onFinished; + if (!attached || !attached.queue) { + attached = msg.__onFinished = createListener(msg); + attachFinishedListener(msg, attached); + } + attached.queue.push(listener); + } + function createListener(msg) { + function listener(err2) { + if (msg.__onFinished === listener) + msg.__onFinished = null; + if (!listener.queue) + return; + var queue = listener.queue; + listener.queue = null; + for (var i = 0; i < queue.length; i++) { + queue[i](err2, msg); + } + } + listener.queue = []; + return listener; + } + function patchAssignSocket(res, callback) { + var assignSocket = res.assignSocket; + if (typeof assignSocket !== "function") + return; + res.assignSocket = function _assignSocket(socket) { + assignSocket.call(this, socket); + callback(socket); + }; + } + } +}); + +// ../node_modules/.pnpm/on-headers@1.0.2/node_modules/on-headers/index.js +var require_on_headers = __commonJS({ + "../node_modules/.pnpm/on-headers@1.0.2/node_modules/on-headers/index.js"(exports2, module2) { + "use strict"; + module2.exports = onHeaders; + function createWriteHead(prevWriteHead, listener) { + var fired = false; + return function writeHead(statusCode) { + var args3 = setWriteHeadHeaders.apply(this, arguments); + if (!fired) { + fired = true; + listener.call(this); + if (typeof args3[0] === "number" && this.statusCode !== args3[0]) { + args3[0] = this.statusCode; + args3.length = 1; + } + } + return prevWriteHead.apply(this, args3); + }; + } + function onHeaders(res, listener) { + if (!res) { + throw new TypeError("argument res is required"); + } + if (typeof listener !== "function") { + throw new TypeError("argument listener must be a function"); + } + res.writeHead = createWriteHead(res.writeHead, listener); + } + function setHeadersFromArray(res, headers) { + for (var i = 0; i < headers.length; i++) { + res.setHeader(headers[i][0], headers[i][1]); + } + } + function setHeadersFromObject(res, headers) { + var keys = Object.keys(headers); + for (var i = 0; i < keys.length; i++) { + var k = keys[i]; + if (k) + res.setHeader(k, headers[k]); + } + } + function setWriteHeadHeaders(statusCode) { + var length = arguments.length; + var headerIndex = length > 1 && typeof arguments[1] === "string" ? 2 : 1; + var headers = length >= headerIndex + 1 ? arguments[headerIndex] : void 0; + this.statusCode = statusCode; + if (Array.isArray(headers)) { + setHeadersFromArray(this, headers); + } else if (headers) { + setHeadersFromObject(this, headers); + } + var args3 = new Array(Math.min(length, headerIndex)); + for (var i = 0; i < args3.length; i++) { + args3[i] = arguments[i]; + } + return args3; + } + } +}); + +// ../node_modules/.pnpm/morgan@1.10.0/node_modules/morgan/index.js +var require_morgan = __commonJS({ + "../node_modules/.pnpm/morgan@1.10.0/node_modules/morgan/index.js"(exports2, module2) { + "use strict"; + module2.exports = morgan; + module2.exports.compile = compile; + module2.exports.format = format; + module2.exports.token = token; + var auth = require_basic_auth(); + var debug = require_src31()("morgan"); + var deprecate = require_depd()("morgan"); + var onFinished = require_on_finished(); + var onHeaders = require_on_headers(); + var CLF_MONTH = [ + "Jan", + "Feb", + "Mar", + "Apr", + "May", + "Jun", + "Jul", + "Aug", + "Sep", + "Oct", + "Nov", + "Dec" + ]; + var DEFAULT_BUFFER_DURATION = 1e3; + function morgan(format2, options2) { + var fmt = format2; + var opts = options2 || {}; + if (format2 && typeof format2 === "object") { + opts = format2; + fmt = opts.format || "default"; + deprecate("morgan(options): use morgan(" + (typeof fmt === "string" ? JSON.stringify(fmt) : "format") + ", options) instead"); + } + if (fmt === void 0) { + deprecate("undefined format: specify a format"); + } + var immediate = opts.immediate; + var skip = opts.skip || false; + var formatLine = typeof fmt !== "function" ? getFormatFunction(fmt) : fmt; + var buffer2 = opts.buffer; + var stream5 = opts.stream || process.stdout; + if (buffer2) { + deprecate("buffer option"); + var interval = typeof buffer2 !== "number" ? DEFAULT_BUFFER_DURATION : buffer2; + stream5 = createBufferStream(stream5, interval); + } + return function logger2(req, res, next) { + req._startAt = void 0; + req._startTime = void 0; + req._remoteAddress = getip(req); + res._startAt = void 0; + res._startTime = void 0; + recordStartTime.call(req); + function logRequest() { + if (skip !== false && skip(req, res)) { + debug("skip request"); + return; + } + var line = formatLine(morgan, req, res); + if (line == null) { + debug("skip line"); + return; + } + debug("log request"); + stream5.write(line + "\n"); + } + ; + if (immediate) { + logRequest(); + } else { + onHeaders(res, recordStartTime); + onFinished(res, logRequest); + } + next(); + }; + } + morgan.format("combined", ':remote-addr - :remote-user [:date[clf]] ":method :url HTTP/:http-version" :status :res[content-length] ":referrer" ":user-agent"'); + morgan.format("common", ':remote-addr - :remote-user [:date[clf]] ":method :url HTTP/:http-version" :status :res[content-length]'); + morgan.format("default", ':remote-addr - :remote-user [:date] ":method :url HTTP/:http-version" :status :res[content-length] ":referrer" ":user-agent"'); + deprecate.property(morgan, "default", "default format: use combined format"); + morgan.format("short", ":remote-addr :remote-user :method :url HTTP/:http-version :status :res[content-length] - :response-time ms"); + morgan.format("tiny", ":method :url :status :res[content-length] - :response-time ms"); + morgan.format("dev", function developmentFormatLine(tokens, req, res) { + var status = headersSent(res) ? res.statusCode : void 0; + var color = status >= 500 ? 31 : status >= 400 ? 33 : status >= 300 ? 36 : status >= 200 ? 32 : 0; + var fn = developmentFormatLine[color]; + if (!fn) { + fn = developmentFormatLine[color] = compile("\x1B[0m:method :url \x1B[" + color + "m:status\x1B[0m :response-time ms - :res[content-length]\x1B[0m"); + } + return fn(tokens, req, res); + }); + morgan.token("url", function getUrlToken(req) { + return req.originalUrl || req.url; + }); + morgan.token("method", function getMethodToken(req) { + return req.method; + }); + morgan.token("response-time", function getResponseTimeToken(req, res, digits) { + if (!req._startAt || !res._startAt) { + return; + } + var ms = (res._startAt[0] - req._startAt[0]) * 1e3 + (res._startAt[1] - req._startAt[1]) * 1e-6; + return ms.toFixed(digits === void 0 ? 3 : digits); + }); + morgan.token("total-time", function getTotalTimeToken(req, res, digits) { + if (!req._startAt || !res._startAt) { + return; + } + var elapsed = process.hrtime(req._startAt); + var ms = elapsed[0] * 1e3 + elapsed[1] * 1e-6; + return ms.toFixed(digits === void 0 ? 3 : digits); + }); + morgan.token("date", function getDateToken(req, res, format2) { + var date = /* @__PURE__ */ new Date(); + switch (format2 || "web") { + case "clf": + return clfdate(date); + case "iso": + return date.toISOString(); + case "web": + return date.toUTCString(); + } + }); + morgan.token("status", function getStatusToken(req, res) { + return headersSent(res) ? String(res.statusCode) : void 0; + }); + morgan.token("referrer", function getReferrerToken(req) { + return req.headers.referer || req.headers.referrer; + }); + morgan.token("remote-addr", getip); + morgan.token("remote-user", function getRemoteUserToken(req) { + var credentials = auth(req); + return credentials ? credentials.name : void 0; + }); + morgan.token("http-version", function getHttpVersionToken(req) { + return req.httpVersionMajor + "." + req.httpVersionMinor; + }); + morgan.token("user-agent", function getUserAgentToken(req) { + return req.headers["user-agent"]; + }); + morgan.token("req", function getRequestToken(req, res, field) { + var header = req.headers[field.toLowerCase()]; + return Array.isArray(header) ? header.join(", ") : header; + }); + morgan.token("res", function getResponseHeader(req, res, field) { + if (!headersSent(res)) { + return void 0; + } + var header = res.getHeader(field); + return Array.isArray(header) ? header.join(", ") : header; + }); + function clfdate(dateTime) { + var date = dateTime.getUTCDate(); + var hour = dateTime.getUTCHours(); + var mins = dateTime.getUTCMinutes(); + var secs = dateTime.getUTCSeconds(); + var year = dateTime.getUTCFullYear(); + var month = CLF_MONTH[dateTime.getUTCMonth()]; + return pad2(date) + "/" + month + "/" + year + ":" + pad2(hour) + ":" + pad2(mins) + ":" + pad2(secs) + " +0000"; + } + function compile(format2) { + if (typeof format2 !== "string") { + throw new TypeError("argument format must be a string"); + } + var fmt = String(JSON.stringify(format2)); + var js = ' "use strict"\n return ' + fmt.replace(/:([-\w]{2,})(?:\[([^\]]+)\])?/g, function(_, name, arg) { + var tokenArguments = "req, res"; + var tokenFunction = "tokens[" + String(JSON.stringify(name)) + "]"; + if (arg !== void 0) { + tokenArguments += ", " + String(JSON.stringify(arg)); + } + return '" +\n (' + tokenFunction + "(" + tokenArguments + ') || "-") + "'; + }); + return new Function("tokens, req, res", js); + } + function createBufferStream(stream5, interval) { + var buf = []; + var timer = null; + function flush() { + timer = null; + stream5.write(buf.join("")); + buf.length = 0; + } + function write(str) { + if (timer === null) { + timer = setTimeout(flush, interval); + } + buf.push(str); + } + return { write }; + } + function format(name, fmt) { + morgan[name] = fmt; + return this; + } + function getFormatFunction(name) { + var fmt = morgan[name] || name || morgan.default; + return typeof fmt !== "function" ? compile(fmt) : fmt; + } + function getip(req) { + return req.ip || req._remoteAddress || req.connection && req.connection.remoteAddress || void 0; + } + function headersSent(res) { + return typeof res.headersSent !== "boolean" ? Boolean(res._header) : res.headersSent; + } + function pad2(num) { + var str = String(num); + return (str.length === 1 ? "0" : "") + str; + } + function recordStartTime() { + this._startAt = process.hrtime(); + this._startTime = /* @__PURE__ */ new Date(); + } + function token(name, fn) { + morgan[name] = fn; + return this; + } + } +}); + +// ../node_modules/.pnpm/bytes@3.1.2/node_modules/bytes/index.js +var require_bytes = __commonJS({ + "../node_modules/.pnpm/bytes@3.1.2/node_modules/bytes/index.js"(exports2, module2) { + "use strict"; + module2.exports = bytes; + module2.exports.format = format; + module2.exports.parse = parse7; + var formatThousandsRegExp = /\B(?=(\d{3})+(?!\d))/g; + var formatDecimalsRegExp = /(?:\.0*|(\.[^0]+)0+)$/; + var map = { + b: 1, + kb: 1 << 10, + mb: 1 << 20, + gb: 1 << 30, + tb: Math.pow(1024, 4), + pb: Math.pow(1024, 5) + }; + var parseRegExp = /^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb|pb)$/i; + function bytes(value, options2) { + if (typeof value === "string") { + return parse7(value); + } + if (typeof value === "number") { + return format(value, options2); + } + return null; + } + function format(value, options2) { + if (!Number.isFinite(value)) { + return null; + } + var mag = Math.abs(value); + var thousandsSeparator = options2 && options2.thousandsSeparator || ""; + var unitSeparator = options2 && options2.unitSeparator || ""; + var decimalPlaces = options2 && options2.decimalPlaces !== void 0 ? options2.decimalPlaces : 2; + var fixedDecimals = Boolean(options2 && options2.fixedDecimals); + var unit = options2 && options2.unit || ""; + if (!unit || !map[unit.toLowerCase()]) { + if (mag >= map.pb) { + unit = "PB"; + } else if (mag >= map.tb) { + unit = "TB"; + } else if (mag >= map.gb) { + unit = "GB"; + } else if (mag >= map.mb) { + unit = "MB"; + } else if (mag >= map.kb) { + unit = "KB"; + } else { + unit = "B"; + } + } + var val = value / map[unit.toLowerCase()]; + var str = val.toFixed(decimalPlaces); + if (!fixedDecimals) { + str = str.replace(formatDecimalsRegExp, "$1"); + } + if (thousandsSeparator) { + str = str.split(".").map(function(s, i) { + return i === 0 ? s.replace(formatThousandsRegExp, thousandsSeparator) : s; + }).join("."); + } + return str + unitSeparator + unit; + } + function parse7(val) { + if (typeof val === "number" && !isNaN(val)) { + return val; + } + if (typeof val !== "string") { + return null; + } + var results = parseRegExp.exec(val); + var floatValue; + var unit = "b"; + if (!results) { + floatValue = parseInt(val, 10); + unit = "b"; + } else { + floatValue = parseFloat(results[1]); + unit = results[4].toLowerCase(); + } + if (isNaN(floatValue)) { + return null; + } + return Math.floor(map[unit] * floatValue); + } + } +}); + +// ../node_modules/.pnpm/content-type@1.0.4/node_modules/content-type/index.js +var require_content_type = __commonJS({ + "../node_modules/.pnpm/content-type@1.0.4/node_modules/content-type/index.js"(exports2) { + "use strict"; + var PARAM_REGEXP = /; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g; + var TEXT_REGEXP = /^[\u000b\u0020-\u007e\u0080-\u00ff]+$/; + var TOKEN_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/; + var QESC_REGEXP = /\\([\u000b\u0020-\u00ff])/g; + var QUOTE_REGEXP = /([\\"])/g; + var TYPE_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/; + exports2.format = format; + exports2.parse = parse7; + function format(obj2) { + if (!obj2 || typeof obj2 !== "object") { + throw new TypeError("argument obj is required"); + } + var parameters = obj2.parameters; + var type2 = obj2.type; + if (!type2 || !TYPE_REGEXP.test(type2)) { + throw new TypeError("invalid type"); + } + var string = type2; + if (parameters && typeof parameters === "object") { + var param; + var params = Object.keys(parameters).sort(); + for (var i = 0; i < params.length; i++) { + param = params[i]; + if (!TOKEN_REGEXP.test(param)) { + throw new TypeError("invalid parameter name"); + } + string += "; " + param + "=" + qstring(parameters[param]); + } + } + return string; + } + function parse7(string) { + if (!string) { + throw new TypeError("argument string is required"); + } + var header = typeof string === "object" ? getcontenttype(string) : string; + if (typeof header !== "string") { + throw new TypeError("argument string is required to be a string"); + } + var index = header.indexOf(";"); + var type2 = index !== -1 ? header.substr(0, index).trim() : header.trim(); + if (!TYPE_REGEXP.test(type2)) { + throw new TypeError("invalid media type"); + } + var obj2 = new ContentType(type2.toLowerCase()); + if (index !== -1) { + var key; + var match2; + var value; + PARAM_REGEXP.lastIndex = index; + while (match2 = PARAM_REGEXP.exec(header)) { + if (match2.index !== index) { + throw new TypeError("invalid parameter format"); + } + index += match2[0].length; + key = match2[1].toLowerCase(); + value = match2[2]; + if (value[0] === '"') { + value = value.substr(1, value.length - 2).replace(QESC_REGEXP, "$1"); + } + obj2.parameters[key] = value; + } + if (index !== header.length) { + throw new TypeError("invalid parameter format"); + } + } + return obj2; + } + function getcontenttype(obj2) { + var header; + if (typeof obj2.getHeader === "function") { + header = obj2.getHeader("content-type"); + } else if (typeof obj2.headers === "object") { + header = obj2.headers && obj2.headers["content-type"]; + } + if (typeof header !== "string") { + throw new TypeError("content-type header is missing from object"); + } + return header; + } + function qstring(val) { + var str = String(val); + if (TOKEN_REGEXP.test(str)) { + return str; + } + if (str.length > 0 && !TEXT_REGEXP.test(str)) { + throw new TypeError("invalid parameter value"); + } + return '"' + str.replace(QUOTE_REGEXP, "\\$1") + '"'; + } + function ContentType(type2) { + this.parameters = /* @__PURE__ */ Object.create(null); + this.type = type2; + } + } +}); + +// ../node_modules/.pnpm/setprototypeof@1.2.0/node_modules/setprototypeof/index.js +var require_setprototypeof = __commonJS({ + "../node_modules/.pnpm/setprototypeof@1.2.0/node_modules/setprototypeof/index.js"(exports2, module2) { + "use strict"; + module2.exports = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array ? setProtoOf : mixinProperties); + function setProtoOf(obj2, proto) { + obj2.__proto__ = proto; + return obj2; + } + function mixinProperties(obj2, proto) { + for (var prop in proto) { + if (!Object.prototype.hasOwnProperty.call(obj2, prop)) { + obj2[prop] = proto[prop]; + } + } + return obj2; + } + } +}); + +// ../node_modules/.pnpm/statuses@2.0.1/node_modules/statuses/codes.json +var require_codes = __commonJS({ + "../node_modules/.pnpm/statuses@2.0.1/node_modules/statuses/codes.json"(exports2, module2) { + module2.exports = { + "100": "Continue", + "101": "Switching Protocols", + "102": "Processing", + "103": "Early Hints", + "200": "OK", + "201": "Created", + "202": "Accepted", + "203": "Non-Authoritative Information", + "204": "No Content", + "205": "Reset Content", + "206": "Partial Content", + "207": "Multi-Status", + "208": "Already Reported", + "226": "IM Used", + "300": "Multiple Choices", + "301": "Moved Permanently", + "302": "Found", + "303": "See Other", + "304": "Not Modified", + "305": "Use Proxy", + "307": "Temporary Redirect", + "308": "Permanent Redirect", + "400": "Bad Request", + "401": "Unauthorized", + "402": "Payment Required", + "403": "Forbidden", + "404": "Not Found", + "405": "Method Not Allowed", + "406": "Not Acceptable", + "407": "Proxy Authentication Required", + "408": "Request Timeout", + "409": "Conflict", + "410": "Gone", + "411": "Length Required", + "412": "Precondition Failed", + "413": "Payload Too Large", + "414": "URI Too Long", + "415": "Unsupported Media Type", + "416": "Range Not Satisfiable", + "417": "Expectation Failed", + "418": "I'm a Teapot", + "421": "Misdirected Request", + "422": "Unprocessable Entity", + "423": "Locked", + "424": "Failed Dependency", + "425": "Too Early", + "426": "Upgrade Required", + "428": "Precondition Required", + "429": "Too Many Requests", + "431": "Request Header Fields Too Large", + "451": "Unavailable For Legal Reasons", + "500": "Internal Server Error", + "501": "Not Implemented", + "502": "Bad Gateway", + "503": "Service Unavailable", + "504": "Gateway Timeout", + "505": "HTTP Version Not Supported", + "506": "Variant Also Negotiates", + "507": "Insufficient Storage", + "508": "Loop Detected", + "509": "Bandwidth Limit Exceeded", + "510": "Not Extended", + "511": "Network Authentication Required" + }; + } +}); + +// ../node_modules/.pnpm/statuses@2.0.1/node_modules/statuses/index.js +var require_statuses = __commonJS({ + "../node_modules/.pnpm/statuses@2.0.1/node_modules/statuses/index.js"(exports2, module2) { + "use strict"; + var codes2 = require_codes(); + module2.exports = status; + status.message = codes2; + status.code = createMessageToStatusCodeMap(codes2); + status.codes = createStatusCodeList(codes2); + status.redirect = { + 300: true, + 301: true, + 302: true, + 303: true, + 305: true, + 307: true, + 308: true + }; + status.empty = { + 204: true, + 205: true, + 304: true + }; + status.retry = { + 502: true, + 503: true, + 504: true + }; + function createMessageToStatusCodeMap(codes3) { + var map = {}; + Object.keys(codes3).forEach(function forEachCode(code) { + var message = codes3[code]; + var status2 = Number(code); + map[message.toLowerCase()] = status2; + }); + return map; + } + function createStatusCodeList(codes3) { + return Object.keys(codes3).map(function mapCode(code) { + return Number(code); + }); + } + function getStatusCode(message) { + var msg = message.toLowerCase(); + if (!Object.prototype.hasOwnProperty.call(status.code, msg)) { + throw new Error('invalid status message: "' + message + '"'); + } + return status.code[msg]; + } + function getStatusMessage(code) { + if (!Object.prototype.hasOwnProperty.call(status.message, code)) { + throw new Error("invalid status code: " + code); + } + return status.message[code]; + } + function status(code) { + if (typeof code === "number") { + return getStatusMessage(code); + } + if (typeof code !== "string") { + throw new TypeError("code must be a number or string"); + } + var n = parseInt(code, 10); + if (!isNaN(n)) { + return getStatusMessage(n); + } + return getStatusCode(code); + } + } +}); + +// ../node_modules/.pnpm/toidentifier@1.0.1/node_modules/toidentifier/index.js +var require_toidentifier = __commonJS({ + "../node_modules/.pnpm/toidentifier@1.0.1/node_modules/toidentifier/index.js"(exports2, module2) { + "use strict"; + module2.exports = toIdentifier; + function toIdentifier(str) { + return str.split(" ").map(function(token) { + return token.slice(0, 1).toUpperCase() + token.slice(1); + }).join("").replace(/[^ _0-9a-z]/gi, ""); + } + } +}); + +// ../node_modules/.pnpm/http-errors@2.0.0/node_modules/http-errors/index.js +var require_http_errors = __commonJS({ + "../node_modules/.pnpm/http-errors@2.0.0/node_modules/http-errors/index.js"(exports2, module2) { + "use strict"; + var deprecate = require_depd()("http-errors"); + var setPrototypeOf = require_setprototypeof(); + var statuses = require_statuses(); + var inherits3 = require_inherits(); + var toIdentifier = require_toidentifier(); + module2.exports = createError; + module2.exports.HttpError = createHttpErrorConstructor(); + module2.exports.isHttpError = createIsHttpErrorFunction(module2.exports.HttpError); + populateConstructorExports(module2.exports, statuses.codes, module2.exports.HttpError); + function codeClass(status) { + return Number(String(status).charAt(0) + "00"); + } + function createError() { + var err2; + var msg; + var status = 500; + var props = {}; + for (var i = 0; i < arguments.length; i++) { + var arg = arguments[i]; + var type2 = typeof arg; + if (type2 === "object" && arg instanceof Error) { + err2 = arg; + status = err2.status || err2.statusCode || status; + } else if (type2 === "number" && i === 0) { + status = arg; + } else if (type2 === "string") { + msg = arg; + } else if (type2 === "object") { + props = arg; + } else { + throw new TypeError("argument #" + (i + 1) + " unsupported type " + type2); + } + } + if (typeof status === "number" && (status < 400 || status >= 600)) { + deprecate("non-error status code; use only 4xx or 5xx status codes"); + } + if (typeof status !== "number" || !statuses.message[status] && (status < 400 || status >= 600)) { + status = 500; + } + var HttpError = createError[status] || createError[codeClass(status)]; + if (!err2) { + err2 = HttpError ? new HttpError(msg) : new Error(msg || statuses.message[status]); + Error.captureStackTrace(err2, createError); + } + if (!HttpError || !(err2 instanceof HttpError) || err2.status !== status) { + err2.expose = status < 500; + err2.status = err2.statusCode = status; + } + for (var key in props) { + if (key !== "status" && key !== "statusCode") { + err2[key] = props[key]; + } + } + return err2; + } + function createHttpErrorConstructor() { + function HttpError() { + throw new TypeError("cannot construct abstract class"); + } + inherits3(HttpError, Error); + return HttpError; + } + function createClientErrorConstructor(HttpError, name, code) { + var className = toClassName(name); + function ClientError(message) { + var msg = message != null ? message : statuses.message[code]; + var err2 = new Error(msg); + Error.captureStackTrace(err2, ClientError); + setPrototypeOf(err2, ClientError.prototype); + Object.defineProperty(err2, "message", { + enumerable: true, + configurable: true, + value: msg, + writable: true + }); + Object.defineProperty(err2, "name", { + enumerable: false, + configurable: true, + value: className, + writable: true + }); + return err2; + } + inherits3(ClientError, HttpError); + nameFunc(ClientError, className); + ClientError.prototype.status = code; + ClientError.prototype.statusCode = code; + ClientError.prototype.expose = true; + return ClientError; + } + function createIsHttpErrorFunction(HttpError) { + return function isHttpError(val) { + if (!val || typeof val !== "object") { + return false; + } + if (val instanceof HttpError) { + return true; + } + return val instanceof Error && typeof val.expose === "boolean" && typeof val.statusCode === "number" && val.status === val.statusCode; + }; + } + function createServerErrorConstructor(HttpError, name, code) { + var className = toClassName(name); + function ServerError(message) { + var msg = message != null ? message : statuses.message[code]; + var err2 = new Error(msg); + Error.captureStackTrace(err2, ServerError); + setPrototypeOf(err2, ServerError.prototype); + Object.defineProperty(err2, "message", { + enumerable: true, + configurable: true, + value: msg, + writable: true + }); + Object.defineProperty(err2, "name", { + enumerable: false, + configurable: true, + value: className, + writable: true + }); + return err2; + } + inherits3(ServerError, HttpError); + nameFunc(ServerError, className); + ServerError.prototype.status = code; + ServerError.prototype.statusCode = code; + ServerError.prototype.expose = false; + return ServerError; + } + function nameFunc(func2, name) { + var desc = Object.getOwnPropertyDescriptor(func2, "name"); + if (desc && desc.configurable) { + desc.value = name; + Object.defineProperty(func2, "name", desc); + } + } + function populateConstructorExports(exports3, codes2, HttpError) { + codes2.forEach(function forEachCode(code) { + var CodeError; + var name = toIdentifier(statuses.message[code]); + switch (codeClass(code)) { + case 400: + CodeError = createClientErrorConstructor(HttpError, name, code); + break; + case 500: + CodeError = createServerErrorConstructor(HttpError, name, code); + break; + } + if (CodeError) { + exports3[code] = CodeError; + exports3[name] = CodeError; + } + }); + } + function toClassName(name) { + return name.substr(-5) !== "Error" ? name + "Error" : name; + } + } +}); + +// ../node_modules/.pnpm/destroy@1.2.0/node_modules/destroy/index.js +var require_destroy2 = __commonJS({ + "../node_modules/.pnpm/destroy@1.2.0/node_modules/destroy/index.js"(exports2, module2) { + "use strict"; + var EventEmitter4 = require("events").EventEmitter; + var ReadStream = require("fs").ReadStream; + var Stream2 = require("stream"); + var Zlib = require("zlib"); + module2.exports = destroy; + function destroy(stream5, suppress) { + if (isFsReadStream(stream5)) { + destroyReadStream(stream5); + } else if (isZlibStream(stream5)) { + destroyZlibStream(stream5); + } else if (hasDestroy(stream5)) { + stream5.destroy(); + } + if (isEventEmitter(stream5) && suppress) { + stream5.removeAllListeners("error"); + stream5.addListener("error", noop2); + } + return stream5; + } + function destroyReadStream(stream5) { + stream5.destroy(); + if (typeof stream5.close === "function") { + stream5.on("open", onOpenClose); + } + } + function closeZlibStream(stream5) { + if (stream5._hadError === true) { + var prop = stream5._binding === null ? "_binding" : "_handle"; + stream5[prop] = { + close: function() { + this[prop] = null; + } + }; + } + stream5.close(); + } + function destroyZlibStream(stream5) { + if (typeof stream5.destroy === "function") { + if (stream5._binding) { + stream5.destroy(); + if (stream5._processing) { + stream5._needDrain = true; + stream5.once("drain", onDrainClearBinding); + } else { + stream5._binding.clear(); + } + } else if (stream5._destroy && stream5._destroy !== Stream2.Transform.prototype._destroy) { + stream5.destroy(); + } else if (stream5._destroy && typeof stream5.close === "function") { + stream5.destroyed = true; + stream5.close(); + } else { + stream5.destroy(); + } + } else if (typeof stream5.close === "function") { + closeZlibStream(stream5); + } + } + function hasDestroy(stream5) { + return stream5 instanceof Stream2 && typeof stream5.destroy === "function"; + } + function isEventEmitter(val) { + return val instanceof EventEmitter4; + } + function isFsReadStream(stream5) { + return stream5 instanceof ReadStream; + } + function isZlibStream(stream5) { + return stream5 instanceof Zlib.Gzip || stream5 instanceof Zlib.Gunzip || stream5 instanceof Zlib.Deflate || stream5 instanceof Zlib.DeflateRaw || stream5 instanceof Zlib.Inflate || stream5 instanceof Zlib.InflateRaw || stream5 instanceof Zlib.Unzip; + } + function noop2() { + } + function onDrainClearBinding() { + this._binding.clear(); + } + function onOpenClose() { + if (typeof this.fd === "number") { + this.close(); + } + } + } +}); + +// ../node_modules/.pnpm/safer-buffer@2.1.2/node_modules/safer-buffer/safer.js +var require_safer = __commonJS({ + "../node_modules/.pnpm/safer-buffer@2.1.2/node_modules/safer-buffer/safer.js"(exports2, module2) { + "use strict"; + var buffer2 = require("buffer"); + var Buffer2 = buffer2.Buffer; + var safer = {}; + var key; + for (key in buffer2) { + if (!buffer2.hasOwnProperty(key)) + continue; + if (key === "SlowBuffer" || key === "Buffer") + continue; + safer[key] = buffer2[key]; + } + var Safer = safer.Buffer = {}; + for (key in Buffer2) { + if (!Buffer2.hasOwnProperty(key)) + continue; + if (key === "allocUnsafe" || key === "allocUnsafeSlow") + continue; + Safer[key] = Buffer2[key]; + } + safer.Buffer.prototype = Buffer2.prototype; + if (!Safer.from || Safer.from === Uint8Array.from) { + Safer.from = function(value, encodingOrOffset, length) { + if (typeof value === "number") { + throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value); + } + if (value && typeof value.length === "undefined") { + throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value); + } + return Buffer2(value, encodingOrOffset, length); + }; + } + if (!Safer.alloc) { + Safer.alloc = function(size, fill, encoding) { + if (typeof size !== "number") { + throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size); + } + if (size < 0 || size >= 2 * (1 << 30)) { + throw new RangeError('The value "' + size + '" is invalid for option "size"'); + } + var buf = Buffer2(size); + if (!fill || fill.length === 0) { + buf.fill(0); + } else if (typeof encoding === "string") { + buf.fill(fill, encoding); + } else { + buf.fill(fill); + } + return buf; + }; + } + if (!safer.kStringMaxLength) { + try { + safer.kStringMaxLength = process.binding("buffer").kStringMaxLength; + } catch (e) { + } + } + if (!safer.constants) { + safer.constants = { + MAX_LENGTH: safer.kMaxLength + }; + if (safer.kStringMaxLength) { + safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength; + } + } + module2.exports = safer; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/bom-handling.js +var require_bom_handling = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/bom-handling.js"(exports2) { + "use strict"; + var BOMChar = "\uFEFF"; + exports2.PrependBOM = PrependBOMWrapper; + function PrependBOMWrapper(encoder, options2) { + this.encoder = encoder; + this.addBOM = true; + } + PrependBOMWrapper.prototype.write = function(str) { + if (this.addBOM) { + str = BOMChar + str; + this.addBOM = false; + } + return this.encoder.write(str); + }; + PrependBOMWrapper.prototype.end = function() { + return this.encoder.end(); + }; + exports2.StripBOM = StripBOMWrapper; + function StripBOMWrapper(decoder, options2) { + this.decoder = decoder; + this.pass = false; + this.options = options2 || {}; + } + StripBOMWrapper.prototype.write = function(buf) { + var res = this.decoder.write(buf); + if (this.pass || !res) + return res; + if (res[0] === BOMChar) { + res = res.slice(1); + if (typeof this.options.stripBOM === "function") + this.options.stripBOM(); + } + this.pass = true; + return res; + }; + StripBOMWrapper.prototype.end = function() { + return this.decoder.end(); + }; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/internal.js +var require_internal4 = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/internal.js"(exports2, module2) { + "use strict"; + var Buffer2 = require_safer().Buffer; + module2.exports = { + // Encodings + utf8: { type: "_internal", bomAware: true }, + cesu8: { type: "_internal", bomAware: true }, + unicode11utf8: "utf8", + ucs2: { type: "_internal", bomAware: true }, + utf16le: "ucs2", + binary: { type: "_internal" }, + base64: { type: "_internal" }, + hex: { type: "_internal" }, + // Codec. + _internal: InternalCodec + }; + function InternalCodec(codecOptions, iconv) { + this.enc = codecOptions.encodingName; + this.bomAware = codecOptions.bomAware; + if (this.enc === "base64") + this.encoder = InternalEncoderBase64; + else if (this.enc === "cesu8") { + this.enc = "utf8"; + this.encoder = InternalEncoderCesu8; + if (Buffer2.from("eda0bdedb2a9", "hex").toString() !== "\u{1F4A9}") { + this.decoder = InternalDecoderCesu8; + this.defaultCharUnicode = iconv.defaultCharUnicode; + } + } + } + InternalCodec.prototype.encoder = InternalEncoder; + InternalCodec.prototype.decoder = InternalDecoder; + var StringDecoder2 = require("string_decoder").StringDecoder; + if (!StringDecoder2.prototype.end) + StringDecoder2.prototype.end = function() { + }; + function InternalDecoder(options2, codec) { + StringDecoder2.call(this, codec.enc); + } + InternalDecoder.prototype = StringDecoder2.prototype; + function InternalEncoder(options2, codec) { + this.enc = codec.enc; + } + InternalEncoder.prototype.write = function(str) { + return Buffer2.from(str, this.enc); + }; + InternalEncoder.prototype.end = function() { + }; + function InternalEncoderBase64(options2, codec) { + this.prevStr = ""; + } + InternalEncoderBase64.prototype.write = function(str) { + str = this.prevStr + str; + var completeQuads = str.length - str.length % 4; + this.prevStr = str.slice(completeQuads); + str = str.slice(0, completeQuads); + return Buffer2.from(str, "base64"); + }; + InternalEncoderBase64.prototype.end = function() { + return Buffer2.from(this.prevStr, "base64"); + }; + function InternalEncoderCesu8(options2, codec) { + } + InternalEncoderCesu8.prototype.write = function(str) { + var buf = Buffer2.alloc(str.length * 3), bufIdx = 0; + for (var i = 0; i < str.length; i++) { + var charCode = str.charCodeAt(i); + if (charCode < 128) + buf[bufIdx++] = charCode; + else if (charCode < 2048) { + buf[bufIdx++] = 192 + (charCode >>> 6); + buf[bufIdx++] = 128 + (charCode & 63); + } else { + buf[bufIdx++] = 224 + (charCode >>> 12); + buf[bufIdx++] = 128 + (charCode >>> 6 & 63); + buf[bufIdx++] = 128 + (charCode & 63); + } + } + return buf.slice(0, bufIdx); + }; + InternalEncoderCesu8.prototype.end = function() { + }; + function InternalDecoderCesu8(options2, codec) { + this.acc = 0; + this.contBytes = 0; + this.accBytes = 0; + this.defaultCharUnicode = codec.defaultCharUnicode; + } + InternalDecoderCesu8.prototype.write = function(buf) { + var acc = this.acc, contBytes = this.contBytes, accBytes = this.accBytes, res = ""; + for (var i = 0; i < buf.length; i++) { + var curByte = buf[i]; + if ((curByte & 192) !== 128) { + if (contBytes > 0) { + res += this.defaultCharUnicode; + contBytes = 0; + } + if (curByte < 128) { + res += String.fromCharCode(curByte); + } else if (curByte < 224) { + acc = curByte & 31; + contBytes = 1; + accBytes = 1; + } else if (curByte < 240) { + acc = curByte & 15; + contBytes = 2; + accBytes = 1; + } else { + res += this.defaultCharUnicode; + } + } else { + if (contBytes > 0) { + acc = acc << 6 | curByte & 63; + contBytes--; + accBytes++; + if (contBytes === 0) { + if (accBytes === 2 && acc < 128 && acc > 0) + res += this.defaultCharUnicode; + else if (accBytes === 3 && acc < 2048) + res += this.defaultCharUnicode; + else + res += String.fromCharCode(acc); + } + } else { + res += this.defaultCharUnicode; + } + } + } + this.acc = acc; + this.contBytes = contBytes; + this.accBytes = accBytes; + return res; + }; + InternalDecoderCesu8.prototype.end = function() { + var res = 0; + if (this.contBytes > 0) + res += this.defaultCharUnicode; + return res; + }; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/utf16.js +var require_utf16 = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/utf16.js"(exports2) { + "use strict"; + var Buffer2 = require_safer().Buffer; + exports2.utf16be = Utf16BECodec; + function Utf16BECodec() { + } + Utf16BECodec.prototype.encoder = Utf16BEEncoder; + Utf16BECodec.prototype.decoder = Utf16BEDecoder; + Utf16BECodec.prototype.bomAware = true; + function Utf16BEEncoder() { + } + Utf16BEEncoder.prototype.write = function(str) { + var buf = Buffer2.from(str, "ucs2"); + for (var i = 0; i < buf.length; i += 2) { + var tmp = buf[i]; + buf[i] = buf[i + 1]; + buf[i + 1] = tmp; + } + return buf; + }; + Utf16BEEncoder.prototype.end = function() { + }; + function Utf16BEDecoder() { + this.overflowByte = -1; + } + Utf16BEDecoder.prototype.write = function(buf) { + if (buf.length == 0) + return ""; + var buf2 = Buffer2.alloc(buf.length + 1), i = 0, j = 0; + if (this.overflowByte !== -1) { + buf2[0] = buf[0]; + buf2[1] = this.overflowByte; + i = 1; + j = 2; + } + for (; i < buf.length - 1; i += 2, j += 2) { + buf2[j] = buf[i + 1]; + buf2[j + 1] = buf[i]; + } + this.overflowByte = i == buf.length - 1 ? buf[buf.length - 1] : -1; + return buf2.slice(0, j).toString("ucs2"); + }; + Utf16BEDecoder.prototype.end = function() { + }; + exports2.utf16 = Utf16Codec; + function Utf16Codec(codecOptions, iconv) { + this.iconv = iconv; + } + Utf16Codec.prototype.encoder = Utf16Encoder; + Utf16Codec.prototype.decoder = Utf16Decoder; + function Utf16Encoder(options2, codec) { + options2 = options2 || {}; + if (options2.addBOM === void 0) + options2.addBOM = true; + this.encoder = codec.iconv.getEncoder("utf-16le", options2); + } + Utf16Encoder.prototype.write = function(str) { + return this.encoder.write(str); + }; + Utf16Encoder.prototype.end = function() { + return this.encoder.end(); + }; + function Utf16Decoder(options2, codec) { + this.decoder = null; + this.initialBytes = []; + this.initialBytesLen = 0; + this.options = options2 || {}; + this.iconv = codec.iconv; + } + Utf16Decoder.prototype.write = function(buf) { + if (!this.decoder) { + this.initialBytes.push(buf); + this.initialBytesLen += buf.length; + if (this.initialBytesLen < 16) + return ""; + var buf = Buffer2.concat(this.initialBytes), encoding = detectEncoding(buf, this.options.defaultEncoding); + this.decoder = this.iconv.getDecoder(encoding, this.options); + this.initialBytes.length = this.initialBytesLen = 0; + } + return this.decoder.write(buf); + }; + Utf16Decoder.prototype.end = function() { + if (!this.decoder) { + var buf = Buffer2.concat(this.initialBytes), encoding = detectEncoding(buf, this.options.defaultEncoding); + this.decoder = this.iconv.getDecoder(encoding, this.options); + var res = this.decoder.write(buf), trail = this.decoder.end(); + return trail ? res + trail : res; + } + return this.decoder.end(); + }; + function detectEncoding(buf, defaultEncoding) { + var enc = defaultEncoding || "utf-16le"; + if (buf.length >= 2) { + if (buf[0] == 254 && buf[1] == 255) + enc = "utf-16be"; + else if (buf[0] == 255 && buf[1] == 254) + enc = "utf-16le"; + else { + var asciiCharsLE = 0, asciiCharsBE = 0, _len = Math.min(buf.length - buf.length % 2, 64); + for (var i = 0; i < _len; i += 2) { + if (buf[i] === 0 && buf[i + 1] !== 0) + asciiCharsBE++; + if (buf[i] !== 0 && buf[i + 1] === 0) + asciiCharsLE++; + } + if (asciiCharsBE > asciiCharsLE) + enc = "utf-16be"; + else if (asciiCharsBE < asciiCharsLE) + enc = "utf-16le"; + } + } + return enc; + } + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/utf7.js +var require_utf7 = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/utf7.js"(exports2) { + "use strict"; + var Buffer2 = require_safer().Buffer; + exports2.utf7 = Utf7Codec; + exports2.unicode11utf7 = "utf7"; + function Utf7Codec(codecOptions, iconv) { + this.iconv = iconv; + } + Utf7Codec.prototype.encoder = Utf7Encoder; + Utf7Codec.prototype.decoder = Utf7Decoder; + Utf7Codec.prototype.bomAware = true; + var nonDirectChars = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g; + function Utf7Encoder(options2, codec) { + this.iconv = codec.iconv; + } + Utf7Encoder.prototype.write = function(str) { + return Buffer2.from(str.replace(nonDirectChars, function(chunk) { + return "+" + (chunk === "+" ? "" : this.iconv.encode(chunk, "utf16-be").toString("base64").replace(/=+$/, "")) + "-"; + }.bind(this))); + }; + Utf7Encoder.prototype.end = function() { + }; + function Utf7Decoder(options2, codec) { + this.iconv = codec.iconv; + this.inBase64 = false; + this.base64Accum = ""; + } + var base64Regex = /[A-Za-z0-9\/+]/; + var base64Chars = []; + for (i = 0; i < 256; i++) + base64Chars[i] = base64Regex.test(String.fromCharCode(i)); + var i; + var plusChar = "+".charCodeAt(0); + var minusChar = "-".charCodeAt(0); + var andChar = "&".charCodeAt(0); + Utf7Decoder.prototype.write = function(buf) { + var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum; + for (var i2 = 0; i2 < buf.length; i2++) { + if (!inBase64) { + if (buf[i2] == plusChar) { + res += this.iconv.decode(buf.slice(lastI, i2), "ascii"); + lastI = i2 + 1; + inBase64 = true; + } + } else { + if (!base64Chars[buf[i2]]) { + if (i2 == lastI && buf[i2] == minusChar) { + res += "+"; + } else { + var b64str = base64Accum + buf.slice(lastI, i2).toString(); + res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be"); + } + if (buf[i2] != minusChar) + i2--; + lastI = i2 + 1; + inBase64 = false; + base64Accum = ""; + } + } + } + if (!inBase64) { + res += this.iconv.decode(buf.slice(lastI), "ascii"); + } else { + var b64str = base64Accum + buf.slice(lastI).toString(); + var canBeDecoded = b64str.length - b64str.length % 8; + base64Accum = b64str.slice(canBeDecoded); + b64str = b64str.slice(0, canBeDecoded); + res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be"); + } + this.inBase64 = inBase64; + this.base64Accum = base64Accum; + return res; + }; + Utf7Decoder.prototype.end = function() { + var res = ""; + if (this.inBase64 && this.base64Accum.length > 0) + res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be"); + this.inBase64 = false; + this.base64Accum = ""; + return res; + }; + exports2.utf7imap = Utf7IMAPCodec; + function Utf7IMAPCodec(codecOptions, iconv) { + this.iconv = iconv; + } + Utf7IMAPCodec.prototype.encoder = Utf7IMAPEncoder; + Utf7IMAPCodec.prototype.decoder = Utf7IMAPDecoder; + Utf7IMAPCodec.prototype.bomAware = true; + function Utf7IMAPEncoder(options2, codec) { + this.iconv = codec.iconv; + this.inBase64 = false; + this.base64Accum = Buffer2.alloc(6); + this.base64AccumIdx = 0; + } + Utf7IMAPEncoder.prototype.write = function(str) { + var inBase64 = this.inBase64, base64Accum = this.base64Accum, base64AccumIdx = this.base64AccumIdx, buf = Buffer2.alloc(str.length * 5 + 10), bufIdx = 0; + for (var i2 = 0; i2 < str.length; i2++) { + var uChar = str.charCodeAt(i2); + if (32 <= uChar && uChar <= 126) { + if (inBase64) { + if (base64AccumIdx > 0) { + bufIdx += buf.write(base64Accum.slice(0, base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx); + base64AccumIdx = 0; + } + buf[bufIdx++] = minusChar; + inBase64 = false; + } + if (!inBase64) { + buf[bufIdx++] = uChar; + if (uChar === andChar) + buf[bufIdx++] = minusChar; + } + } else { + if (!inBase64) { + buf[bufIdx++] = andChar; + inBase64 = true; + } + if (inBase64) { + base64Accum[base64AccumIdx++] = uChar >> 8; + base64Accum[base64AccumIdx++] = uChar & 255; + if (base64AccumIdx == base64Accum.length) { + bufIdx += buf.write(base64Accum.toString("base64").replace(/\//g, ","), bufIdx); + base64AccumIdx = 0; + } + } + } + } + this.inBase64 = inBase64; + this.base64AccumIdx = base64AccumIdx; + return buf.slice(0, bufIdx); + }; + Utf7IMAPEncoder.prototype.end = function() { + var buf = Buffer2.alloc(10), bufIdx = 0; + if (this.inBase64) { + if (this.base64AccumIdx > 0) { + bufIdx += buf.write(this.base64Accum.slice(0, this.base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx); + this.base64AccumIdx = 0; + } + buf[bufIdx++] = minusChar; + this.inBase64 = false; + } + return buf.slice(0, bufIdx); + }; + function Utf7IMAPDecoder(options2, codec) { + this.iconv = codec.iconv; + this.inBase64 = false; + this.base64Accum = ""; + } + var base64IMAPChars = base64Chars.slice(); + base64IMAPChars[",".charCodeAt(0)] = true; + Utf7IMAPDecoder.prototype.write = function(buf) { + var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum; + for (var i2 = 0; i2 < buf.length; i2++) { + if (!inBase64) { + if (buf[i2] == andChar) { + res += this.iconv.decode(buf.slice(lastI, i2), "ascii"); + lastI = i2 + 1; + inBase64 = true; + } + } else { + if (!base64IMAPChars[buf[i2]]) { + if (i2 == lastI && buf[i2] == minusChar) { + res += "&"; + } else { + var b64str = base64Accum + buf.slice(lastI, i2).toString().replace(/,/g, "/"); + res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be"); + } + if (buf[i2] != minusChar) + i2--; + lastI = i2 + 1; + inBase64 = false; + base64Accum = ""; + } + } + } + if (!inBase64) { + res += this.iconv.decode(buf.slice(lastI), "ascii"); + } else { + var b64str = base64Accum + buf.slice(lastI).toString().replace(/,/g, "/"); + var canBeDecoded = b64str.length - b64str.length % 8; + base64Accum = b64str.slice(canBeDecoded); + b64str = b64str.slice(0, canBeDecoded); + res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be"); + } + this.inBase64 = inBase64; + this.base64Accum = base64Accum; + return res; + }; + Utf7IMAPDecoder.prototype.end = function() { + var res = ""; + if (this.inBase64 && this.base64Accum.length > 0) + res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be"); + this.inBase64 = false; + this.base64Accum = ""; + return res; + }; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-codec.js +var require_sbcs_codec = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) { + "use strict"; + var Buffer2 = require_safer().Buffer; + exports2._sbcs = SBCSCodec; + function SBCSCodec(codecOptions, iconv) { + if (!codecOptions) + throw new Error("SBCS codec is called without the data."); + if (!codecOptions.chars || codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256) + throw new Error("Encoding '" + codecOptions.type + "' has incorrect 'chars' (must be of len 128 or 256)"); + if (codecOptions.chars.length === 128) { + var asciiString = ""; + for (var i = 0; i < 128; i++) + asciiString += String.fromCharCode(i); + codecOptions.chars = asciiString + codecOptions.chars; + } + this.decodeBuf = Buffer2.from(codecOptions.chars, "ucs2"); + var encodeBuf = Buffer2.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0)); + for (var i = 0; i < codecOptions.chars.length; i++) + encodeBuf[codecOptions.chars.charCodeAt(i)] = i; + this.encodeBuf = encodeBuf; + } + SBCSCodec.prototype.encoder = SBCSEncoder; + SBCSCodec.prototype.decoder = SBCSDecoder; + function SBCSEncoder(options2, codec) { + this.encodeBuf = codec.encodeBuf; + } + SBCSEncoder.prototype.write = function(str) { + var buf = Buffer2.alloc(str.length); + for (var i = 0; i < str.length; i++) + buf[i] = this.encodeBuf[str.charCodeAt(i)]; + return buf; + }; + SBCSEncoder.prototype.end = function() { + }; + function SBCSDecoder(options2, codec) { + this.decodeBuf = codec.decodeBuf; + } + SBCSDecoder.prototype.write = function(buf) { + var decodeBuf = this.decodeBuf; + var newBuf = Buffer2.alloc(buf.length * 2); + var idx1 = 0, idx2 = 0; + for (var i = 0; i < buf.length; i++) { + idx1 = buf[i] * 2; + idx2 = i * 2; + newBuf[idx2] = decodeBuf[idx1]; + newBuf[idx2 + 1] = decodeBuf[idx1 + 1]; + } + return newBuf.toString("ucs2"); + }; + SBCSDecoder.prototype.end = function() { + }; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-data.js +var require_sbcs_data = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-data.js"(exports2, module2) { + "use strict"; + module2.exports = { + // Not supported by iconv, not sure why. + "10029": "maccenteuro", + "maccenteuro": { + "type": "_sbcs", + "chars": "\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" + }, + "808": "cp808", + "ibm808": "cp808", + "cp808": { + "type": "_sbcs", + "chars": "\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\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0" + }, + "mik": { + "type": "_sbcs", + "chars": "\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\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\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" + }, + // Aliases of generated encodings. + "ascii8bit": "ascii", + "usascii": "ascii", + "ansix34": "ascii", + "ansix341968": "ascii", + "ansix341986": "ascii", + "csascii": "ascii", + "cp367": "ascii", + "ibm367": "ascii", + "isoir6": "ascii", + "iso646us": "ascii", + "iso646irv": "ascii", + "us": "ascii", + "latin1": "iso88591", + "latin2": "iso88592", + "latin3": "iso88593", + "latin4": "iso88594", + "latin5": "iso88599", + "latin6": "iso885910", + "latin7": "iso885913", + "latin8": "iso885914", + "latin9": "iso885915", + "latin10": "iso885916", + "csisolatin1": "iso88591", + "csisolatin2": "iso88592", + "csisolatin3": "iso88593", + "csisolatin4": "iso88594", + "csisolatincyrillic": "iso88595", + "csisolatinarabic": "iso88596", + "csisolatingreek": "iso88597", + "csisolatinhebrew": "iso88598", + "csisolatin5": "iso88599", + "csisolatin6": "iso885910", + "l1": "iso88591", + "l2": "iso88592", + "l3": "iso88593", + "l4": "iso88594", + "l5": "iso88599", + "l6": "iso885910", + "l7": "iso885913", + "l8": "iso885914", + "l9": "iso885915", + "l10": "iso885916", + "isoir14": "iso646jp", + "isoir57": "iso646cn", + "isoir100": "iso88591", + "isoir101": "iso88592", + "isoir109": "iso88593", + "isoir110": "iso88594", + "isoir144": "iso88595", + "isoir127": "iso88596", + "isoir126": "iso88597", + "isoir138": "iso88598", + "isoir148": "iso88599", + "isoir157": "iso885910", + "isoir166": "tis620", + "isoir179": "iso885913", + "isoir199": "iso885914", + "isoir203": "iso885915", + "isoir226": "iso885916", + "cp819": "iso88591", + "ibm819": "iso88591", + "cyrillic": "iso88595", + "arabic": "iso88596", + "arabic8": "iso88596", + "ecma114": "iso88596", + "asmo708": "iso88596", + "greek": "iso88597", + "greek8": "iso88597", + "ecma118": "iso88597", + "elot928": "iso88597", + "hebrew": "iso88598", + "hebrew8": "iso88598", + "turkish": "iso88599", + "turkish8": "iso88599", + "thai": "iso885911", + "thai8": "iso885911", + "celtic": "iso885914", + "celtic8": "iso885914", + "isoceltic": "iso885914", + "tis6200": "tis620", + "tis62025291": "tis620", + "tis62025330": "tis620", + "10000": "macroman", + "10006": "macgreek", + "10007": "maccyrillic", + "10079": "maciceland", + "10081": "macturkish", + "cspc8codepage437": "cp437", + "cspc775baltic": "cp775", + "cspc850multilingual": "cp850", + "cspcp852": "cp852", + "cspc862latinhebrew": "cp862", + "cpgr": "cp869", + "msee": "cp1250", + "mscyrl": "cp1251", + "msansi": "cp1252", + "msgreek": "cp1253", + "msturk": "cp1254", + "mshebr": "cp1255", + "msarab": "cp1256", + "winbaltrim": "cp1257", + "cp20866": "koi8r", + "20866": "koi8r", + "ibm878": "koi8r", + "cskoi8r": "koi8r", + "cp21866": "koi8u", + "21866": "koi8u", + "ibm1168": "koi8u", + "strk10482002": "rk1048", + "tcvn5712": "tcvn", + "tcvn57121": "tcvn", + "gb198880": "iso646cn", + "cn": "iso646cn", + "csiso14jisc6220ro": "iso646jp", + "jisc62201969ro": "iso646jp", + "jp": "iso646jp", + "cshproman8": "hproman8", + "r8": "hproman8", + "roman8": "hproman8", + "xroman8": "hproman8", + "ibm1051": "hproman8", + "mac": "macintosh", + "csmacintosh": "macintosh" + }; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-data-generated.js +var require_sbcs_data_generated = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports2, module2) { + "use strict"; + module2.exports = { + "437": "cp437", + "737": "cp737", + "775": "cp775", + "850": "cp850", + "852": "cp852", + "855": "cp855", + "856": "cp856", + "857": "cp857", + "858": "cp858", + "860": "cp860", + "861": "cp861", + "862": "cp862", + "863": "cp863", + "864": "cp864", + "865": "cp865", + "866": "cp866", + "869": "cp869", + "874": "windows874", + "922": "cp922", + "1046": "cp1046", + "1124": "cp1124", + "1125": "cp1125", + "1129": "cp1129", + "1133": "cp1133", + "1161": "cp1161", + "1162": "cp1162", + "1163": "cp1163", + "1250": "windows1250", + "1251": "windows1251", + "1252": "windows1252", + "1253": "windows1253", + "1254": "windows1254", + "1255": "windows1255", + "1256": "windows1256", + "1257": "windows1257", + "1258": "windows1258", + "28591": "iso88591", + "28592": "iso88592", + "28593": "iso88593", + "28594": "iso88594", + "28595": "iso88595", + "28596": "iso88596", + "28597": "iso88597", + "28598": "iso88598", + "28599": "iso88599", + "28600": "iso885910", + "28601": "iso885911", + "28603": "iso885913", + "28604": "iso885914", + "28605": "iso885915", + "28606": "iso885916", + "windows874": { + "type": "_sbcs", + "chars": "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" + }, + "win874": "windows874", + "cp874": "windows874", + "windows1250": { + "type": "_sbcs", + "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9" + }, + "win1250": "windows1250", + "cp1250": "windows1250", + "windows1251": { + "type": "_sbcs", + "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\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\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\u044F" + }, + "win1251": "windows1251", + "cp1251": "windows1251", + "windows1252": { + "type": "_sbcs", + "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" + }, + "win1252": "windows1252", + "cp1252": "windows1252", + "windows1253": { + "type": "_sbcs", + "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD" + }, + "win1253": "windows1253", + "cp1253": "windows1253", + "windows1254": { + "type": "_sbcs", + "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF" + }, + "win1254": "windows1254", + "cp1254": "windows1254", + "windows1255": { + "type": "_sbcs", + "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD" + }, + "win1255": "windows1255", + "cp1255": "windows1255", + "windows1256": { + "type": "_sbcs", + "chars": "\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2" + }, + "win1256": "windows1256", + "cp1256": "windows1256", + "windows1257": { + "type": "_sbcs", + "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9" + }, + "win1257": "windows1257", + "cp1257": "windows1257", + "windows1258": { + "type": "_sbcs", + "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF" + }, + "win1258": "windows1258", + "cp1258": "windows1258", + "iso88591": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" + }, + "cp28591": "iso88591", + "iso88592": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9" + }, + "cp28592": "iso88592", + "iso88593": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9" + }, + "cp28593": "iso88593", + "iso88594": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9" + }, + "cp28594": "iso88594", + "iso88595": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\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\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\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F" + }, + "cp28595": "iso88595", + "iso88596": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + }, + "cp28596": "iso88596", + "iso88597": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD" + }, + "cp28597": "iso88597", + "iso88598": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD" + }, + "cp28598": "iso88598", + "iso88599": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF" + }, + "cp28599": "iso88599", + "iso885910": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138" + }, + "cp28600": "iso885910", + "iso885911": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" + }, + "cp28601": "iso885911", + "iso885913": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019" + }, + "cp28603": "iso885913", + "iso885914": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF" + }, + "cp28604": "iso885914", + "iso885915": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" + }, + "cp28605": "iso885915", + "iso885916": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF" + }, + "cp28606": "iso885916", + "cp437": { + "type": "_sbcs", + "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" + }, + "ibm437": "cp437", + "csibm437": "cp437", + "cp737": { + "type": "_sbcs", + "chars": "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" + }, + "ibm737": "cp737", + "csibm737": "cp737", + "cp775": { + "type": "_sbcs", + "chars": "\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0" + }, + "ibm775": "cp775", + "csibm775": "cp775", + "cp850": { + "type": "_sbcs", + "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" + }, + "ibm850": "cp850", + "csibm850": "cp850", + "cp852": { + "type": "_sbcs", + "chars": "\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0" + }, + "ibm852": "cp852", + "csibm852": "cp852", + "cp855": { + "type": "_sbcs", + "chars": "\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0" + }, + "ibm855": "cp855", + "csibm855": "cp855", + "cp856": { + "type": "_sbcs", + "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" + }, + "ibm856": "cp856", + "csibm856": "cp856", + "cp857": { + "type": "_sbcs", + "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" + }, + "ibm857": "cp857", + "csibm857": "cp857", + "cp858": { + "type": "_sbcs", + "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" + }, + "ibm858": "cp858", + "csibm858": "cp858", + "cp860": { + "type": "_sbcs", + "chars": "\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" + }, + "ibm860": "cp860", + "csibm860": "cp860", + "cp861": { + "type": "_sbcs", + "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" + }, + "ibm861": "cp861", + "csibm861": "cp861", + "cp862": { + "type": "_sbcs", + "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" + }, + "ibm862": "cp862", + "csibm862": "cp862", + "cp863": { + "type": "_sbcs", + "chars": "\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" + }, + "ibm863": "cp863", + "csibm863": "cp863", + "cp864": { + "type": "_sbcs", + "chars": "\0\x07\b \n\v\f\r\x1B !\"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD" + }, + "ibm864": "cp864", + "csibm864": "cp864", + "cp865": { + "type": "_sbcs", + "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" + }, + "ibm865": "cp865", + "csibm865": "cp865", + "cp866": { + "type": "_sbcs", + "chars": "\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\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0" + }, + "ibm866": "cp866", + "csibm866": "cp866", + "cp869": { + "type": "_sbcs", + "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0" + }, + "ibm869": "cp869", + "csibm869": "cp869", + "cp922": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF" + }, + "ibm922": "cp922", + "csibm922": "cp922", + "cp1046": { + "type": "_sbcs", + "chars": "\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD" + }, + "ibm1046": "cp1046", + "csibm1046": "cp1046", + "cp1124": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\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\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\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F" + }, + "ibm1124": "cp1124", + "csibm1124": "cp1124", + "cp1125": { + "type": "_sbcs", + "chars": "\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\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0" + }, + "ibm1125": "cp1125", + "csibm1125": "cp1125", + "cp1129": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF" + }, + "ibm1129": "cp1129", + "csibm1129": "cp1129", + "cp1133": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD" + }, + "ibm1133": "cp1133", + "csibm1133": "cp1133", + "cp1161": { + "type": "_sbcs", + "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0" + }, + "ibm1161": "cp1161", + "csibm1161": "cp1161", + "cp1162": { + "type": "_sbcs", + "chars": "\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" + }, + "ibm1162": "cp1162", + "csibm1162": "cp1162", + "cp1163": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF" + }, + "ibm1163": "cp1163", + "csibm1163": "cp1163", + "maccroatian": { + "type": "_sbcs", + "chars": "\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\u2126\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\uFFFD\xA9\u2044\xA4\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" + }, + "maccyrillic": { + "type": "_sbcs", + "chars": "\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\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\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\xA4" + }, + "macgreek": { + "type": "_sbcs", + "chars": "\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\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\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\uFFFD" + }, + "maciceland": { + "type": "_sbcs", + "chars": "\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\u2126\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\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" + }, + "macroman": { + "type": "_sbcs", + "chars": "\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\u2126\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\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" + }, + "macromania": { + "type": "_sbcs", + "chars": "\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\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\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\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" + }, + "macthai": { + "type": "_sbcs", + "chars": "\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD" + }, + "macturkish": { + "type": "_sbcs", + "chars": "\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\u2126\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\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" + }, + "macukraine": { + "type": "_sbcs", + "chars": "\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\xA4" + }, + "koi8r": { + "type": "_sbcs", + "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" + }, + "koi8u": { + "type": "_sbcs", + "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" + }, + "koi8ru": { + "type": "_sbcs", + "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" + }, + "koi8t": { + "type": "_sbcs", + "chars": "\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" + }, + "armscii8": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD" + }, + "rk1048": { + "type": "_sbcs", + "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\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\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\u044F" + }, + "tcvn": { + "type": "_sbcs", + "chars": "\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b \n\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0" + }, + "georgianacademy": { + "type": "_sbcs", + "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" + }, + "georgianps": { + "type": "_sbcs", + "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" + }, + "pt154": { + "type": "_sbcs", + "chars": "\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\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\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\u044F" + }, + "viscii": { + "type": "_sbcs", + "chars": "\0\u1EB2\u1EB4\u1EAA\x07\b \n\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE" + }, + "iso646cn": { + "type": "_sbcs", + "chars": "\0\x07\b \n\v\f\r\x1B !\"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + }, + "iso646jp": { + "type": "_sbcs", + "chars": "\0\x07\b \n\v\f\r\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + }, + "hproman8": { + "type": "_sbcs", + "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD" + }, + "macintosh": { + "type": "_sbcs", + "chars": "\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\u2126\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\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" + }, + "ascii": { + "type": "_sbcs", + "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + }, + "tis620": { + "type": "_sbcs", + "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" + } + }; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/dbcs-codec.js +var require_dbcs_codec = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) { + "use strict"; + var Buffer2 = require_safer().Buffer; + exports2._dbcs = DBCSCodec; + var UNASSIGNED = -1; + var GB18030_CODE = -2; + var SEQ_START = -10; + var NODE_START = -1e3; + var UNASSIGNED_NODE = new Array(256); + var DEF_CHAR = -1; + for (i = 0; i < 256; i++) + UNASSIGNED_NODE[i] = UNASSIGNED; + var i; + function DBCSCodec(codecOptions, iconv) { + this.encodingName = codecOptions.encodingName; + if (!codecOptions) + throw new Error("DBCS codec is called without the data."); + if (!codecOptions.table) + throw new Error("Encoding '" + this.encodingName + "' has no data."); + var mappingTable = codecOptions.table(); + this.decodeTables = []; + this.decodeTables[0] = UNASSIGNED_NODE.slice(0); + this.decodeTableSeq = []; + for (var i2 = 0; i2 < mappingTable.length; i2++) + this._addDecodeChunk(mappingTable[i2]); + this.defaultCharUnicode = iconv.defaultCharUnicode; + this.encodeTable = []; + this.encodeTableSeq = []; + var skipEncodeChars = {}; + if (codecOptions.encodeSkipVals) + for (var i2 = 0; i2 < codecOptions.encodeSkipVals.length; i2++) { + var val = codecOptions.encodeSkipVals[i2]; + if (typeof val === "number") + skipEncodeChars[val] = true; + else + for (var j = val.from; j <= val.to; j++) + skipEncodeChars[j] = true; + } + this._fillEncodeTable(0, 0, skipEncodeChars); + if (codecOptions.encodeAdd) { + for (var uChar in codecOptions.encodeAdd) + if (Object.prototype.hasOwnProperty.call(codecOptions.encodeAdd, uChar)) + this._setEncodeChar(uChar.charCodeAt(0), codecOptions.encodeAdd[uChar]); + } + this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)]; + if (this.defCharSB === UNASSIGNED) + this.defCharSB = this.encodeTable[0]["?"]; + if (this.defCharSB === UNASSIGNED) + this.defCharSB = "?".charCodeAt(0); + if (typeof codecOptions.gb18030 === "function") { + this.gb18030 = codecOptions.gb18030(); + var thirdByteNodeIdx = this.decodeTables.length; + var thirdByteNode = this.decodeTables[thirdByteNodeIdx] = UNASSIGNED_NODE.slice(0); + var fourthByteNodeIdx = this.decodeTables.length; + var fourthByteNode = this.decodeTables[fourthByteNodeIdx] = UNASSIGNED_NODE.slice(0); + for (var i2 = 129; i2 <= 254; i2++) { + var secondByteNodeIdx = NODE_START - this.decodeTables[0][i2]; + var secondByteNode = this.decodeTables[secondByteNodeIdx]; + for (var j = 48; j <= 57; j++) + secondByteNode[j] = NODE_START - thirdByteNodeIdx; + } + for (var i2 = 129; i2 <= 254; i2++) + thirdByteNode[i2] = NODE_START - fourthByteNodeIdx; + for (var i2 = 48; i2 <= 57; i2++) + fourthByteNode[i2] = GB18030_CODE; + } + } + DBCSCodec.prototype.encoder = DBCSEncoder; + DBCSCodec.prototype.decoder = DBCSDecoder; + DBCSCodec.prototype._getDecodeTrieNode = function(addr2) { + var bytes = []; + for (; addr2 > 0; addr2 >>= 8) + bytes.push(addr2 & 255); + if (bytes.length == 0) + bytes.push(0); + var node = this.decodeTables[0]; + for (var i2 = bytes.length - 1; i2 > 0; i2--) { + var val = node[bytes[i2]]; + if (val == UNASSIGNED) { + node[bytes[i2]] = NODE_START - this.decodeTables.length; + this.decodeTables.push(node = UNASSIGNED_NODE.slice(0)); + } else if (val <= NODE_START) { + node = this.decodeTables[NODE_START - val]; + } else + throw new Error("Overwrite byte in " + this.encodingName + ", addr: " + addr2.toString(16)); + } + return node; + }; + DBCSCodec.prototype._addDecodeChunk = function(chunk) { + var curAddr = parseInt(chunk[0], 16); + var writeTable = this._getDecodeTrieNode(curAddr); + curAddr = curAddr & 255; + for (var k = 1; k < chunk.length; k++) { + var part = chunk[k]; + if (typeof part === "string") { + for (var l2 = 0; l2 < part.length; ) { + var code = part.charCodeAt(l2++); + if (55296 <= code && code < 56320) { + var codeTrail = part.charCodeAt(l2++); + if (56320 <= codeTrail && codeTrail < 57344) + writeTable[curAddr++] = 65536 + (code - 55296) * 1024 + (codeTrail - 56320); + else + throw new Error("Incorrect surrogate pair in " + this.encodingName + " at chunk " + chunk[0]); + } else if (4080 < code && code <= 4095) { + var len = 4095 - code + 2; + var seq = []; + for (var m = 0; m < len; m++) + seq.push(part.charCodeAt(l2++)); + writeTable[curAddr++] = SEQ_START - this.decodeTableSeq.length; + this.decodeTableSeq.push(seq); + } else + writeTable[curAddr++] = code; + } + } else if (typeof part === "number") { + var charCode = writeTable[curAddr - 1] + 1; + for (var l2 = 0; l2 < part; l2++) + writeTable[curAddr++] = charCode++; + } else + throw new Error("Incorrect type '" + typeof part + "' given in " + this.encodingName + " at chunk " + chunk[0]); + } + if (curAddr > 255) + throw new Error("Incorrect chunk in " + this.encodingName + " at addr " + chunk[0] + ": too long" + curAddr); + }; + DBCSCodec.prototype._getEncodeBucket = function(uCode) { + var high = uCode >> 8; + if (this.encodeTable[high] === void 0) + this.encodeTable[high] = UNASSIGNED_NODE.slice(0); + return this.encodeTable[high]; + }; + DBCSCodec.prototype._setEncodeChar = function(uCode, dbcsCode) { + var bucket = this._getEncodeBucket(uCode); + var low = uCode & 255; + if (bucket[low] <= SEQ_START) + this.encodeTableSeq[SEQ_START - bucket[low]][DEF_CHAR] = dbcsCode; + else if (bucket[low] == UNASSIGNED) + bucket[low] = dbcsCode; + }; + DBCSCodec.prototype._setEncodeSequence = function(seq, dbcsCode) { + var uCode = seq[0]; + var bucket = this._getEncodeBucket(uCode); + var low = uCode & 255; + var node; + if (bucket[low] <= SEQ_START) { + node = this.encodeTableSeq[SEQ_START - bucket[low]]; + } else { + node = {}; + if (bucket[low] !== UNASSIGNED) + node[DEF_CHAR] = bucket[low]; + bucket[low] = SEQ_START - this.encodeTableSeq.length; + this.encodeTableSeq.push(node); + } + for (var j = 1; j < seq.length - 1; j++) { + var oldVal = node[uCode]; + if (typeof oldVal === "object") + node = oldVal; + else { + node = node[uCode] = {}; + if (oldVal !== void 0) + node[DEF_CHAR] = oldVal; + } + } + uCode = seq[seq.length - 1]; + node[uCode] = dbcsCode; + }; + DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) { + var node = this.decodeTables[nodeIdx]; + for (var i2 = 0; i2 < 256; i2++) { + var uCode = node[i2]; + var mbCode = prefix + i2; + if (skipEncodeChars[mbCode]) + continue; + if (uCode >= 0) + this._setEncodeChar(uCode, mbCode); + else if (uCode <= NODE_START) + this._fillEncodeTable(NODE_START - uCode, mbCode << 8, skipEncodeChars); + else if (uCode <= SEQ_START) + this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode); + } + }; + function DBCSEncoder(options2, codec) { + this.leadSurrogate = -1; + this.seqObj = void 0; + this.encodeTable = codec.encodeTable; + this.encodeTableSeq = codec.encodeTableSeq; + this.defaultCharSingleByte = codec.defCharSB; + this.gb18030 = codec.gb18030; + } + DBCSEncoder.prototype.write = function(str) { + var newBuf = Buffer2.alloc(str.length * (this.gb18030 ? 4 : 3)), leadSurrogate = this.leadSurrogate, seqObj = this.seqObj, nextChar = -1, i2 = 0, j = 0; + while (true) { + if (nextChar === -1) { + if (i2 == str.length) + break; + var uCode = str.charCodeAt(i2++); + } else { + var uCode = nextChar; + nextChar = -1; + } + if (55296 <= uCode && uCode < 57344) { + if (uCode < 56320) { + if (leadSurrogate === -1) { + leadSurrogate = uCode; + continue; + } else { + leadSurrogate = uCode; + uCode = UNASSIGNED; + } + } else { + if (leadSurrogate !== -1) { + uCode = 65536 + (leadSurrogate - 55296) * 1024 + (uCode - 56320); + leadSurrogate = -1; + } else { + uCode = UNASSIGNED; + } + } + } else if (leadSurrogate !== -1) { + nextChar = uCode; + uCode = UNASSIGNED; + leadSurrogate = -1; + } + var dbcsCode = UNASSIGNED; + if (seqObj !== void 0 && uCode != UNASSIGNED) { + var resCode = seqObj[uCode]; + if (typeof resCode === "object") { + seqObj = resCode; + continue; + } else if (typeof resCode == "number") { + dbcsCode = resCode; + } else if (resCode == void 0) { + resCode = seqObj[DEF_CHAR]; + if (resCode !== void 0) { + dbcsCode = resCode; + nextChar = uCode; + } else { + } + } + seqObj = void 0; + } else if (uCode >= 0) { + var subtable = this.encodeTable[uCode >> 8]; + if (subtable !== void 0) + dbcsCode = subtable[uCode & 255]; + if (dbcsCode <= SEQ_START) { + seqObj = this.encodeTableSeq[SEQ_START - dbcsCode]; + continue; + } + if (dbcsCode == UNASSIGNED && this.gb18030) { + var idx = findIdx(this.gb18030.uChars, uCode); + if (idx != -1) { + var dbcsCode = this.gb18030.gbChars[idx] + (uCode - this.gb18030.uChars[idx]); + newBuf[j++] = 129 + Math.floor(dbcsCode / 12600); + dbcsCode = dbcsCode % 12600; + newBuf[j++] = 48 + Math.floor(dbcsCode / 1260); + dbcsCode = dbcsCode % 1260; + newBuf[j++] = 129 + Math.floor(dbcsCode / 10); + dbcsCode = dbcsCode % 10; + newBuf[j++] = 48 + dbcsCode; + continue; + } + } + } + if (dbcsCode === UNASSIGNED) + dbcsCode = this.defaultCharSingleByte; + if (dbcsCode < 256) { + newBuf[j++] = dbcsCode; + } else if (dbcsCode < 65536) { + newBuf[j++] = dbcsCode >> 8; + newBuf[j++] = dbcsCode & 255; + } else { + newBuf[j++] = dbcsCode >> 16; + newBuf[j++] = dbcsCode >> 8 & 255; + newBuf[j++] = dbcsCode & 255; + } + } + this.seqObj = seqObj; + this.leadSurrogate = leadSurrogate; + return newBuf.slice(0, j); + }; + DBCSEncoder.prototype.end = function() { + if (this.leadSurrogate === -1 && this.seqObj === void 0) + return; + var newBuf = Buffer2.alloc(10), j = 0; + if (this.seqObj) { + var dbcsCode = this.seqObj[DEF_CHAR]; + if (dbcsCode !== void 0) { + if (dbcsCode < 256) { + newBuf[j++] = dbcsCode; + } else { + newBuf[j++] = dbcsCode >> 8; + newBuf[j++] = dbcsCode & 255; + } + } else { + } + this.seqObj = void 0; + } + if (this.leadSurrogate !== -1) { + newBuf[j++] = this.defaultCharSingleByte; + this.leadSurrogate = -1; + } + return newBuf.slice(0, j); + }; + DBCSEncoder.prototype.findIdx = findIdx; + function DBCSDecoder(options2, codec) { + this.nodeIdx = 0; + this.prevBuf = Buffer2.alloc(0); + this.decodeTables = codec.decodeTables; + this.decodeTableSeq = codec.decodeTableSeq; + this.defaultCharUnicode = codec.defaultCharUnicode; + this.gb18030 = codec.gb18030; + } + DBCSDecoder.prototype.write = function(buf) { + var newBuf = Buffer2.alloc(buf.length * 2), nodeIdx = this.nodeIdx, prevBuf = this.prevBuf, prevBufOffset = this.prevBuf.length, seqStart = -this.prevBuf.length, uCode; + if (prevBufOffset > 0) + prevBuf = Buffer2.concat([prevBuf, buf.slice(0, 10)]); + for (var i2 = 0, j = 0; i2 < buf.length; i2++) { + var curByte = i2 >= 0 ? buf[i2] : prevBuf[i2 + prevBufOffset]; + var uCode = this.decodeTables[nodeIdx][curByte]; + if (uCode >= 0) { + } else if (uCode === UNASSIGNED) { + i2 = seqStart; + uCode = this.defaultCharUnicode.charCodeAt(0); + } else if (uCode === GB18030_CODE) { + var curSeq = seqStart >= 0 ? buf.slice(seqStart, i2 + 1) : prevBuf.slice(seqStart + prevBufOffset, i2 + 1 + prevBufOffset); + var ptr = (curSeq[0] - 129) * 12600 + (curSeq[1] - 48) * 1260 + (curSeq[2] - 129) * 10 + (curSeq[3] - 48); + var idx = findIdx(this.gb18030.gbChars, ptr); + uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx]; + } else if (uCode <= NODE_START) { + nodeIdx = NODE_START - uCode; + continue; + } else if (uCode <= SEQ_START) { + var seq = this.decodeTableSeq[SEQ_START - uCode]; + for (var k = 0; k < seq.length - 1; k++) { + uCode = seq[k]; + newBuf[j++] = uCode & 255; + newBuf[j++] = uCode >> 8; + } + uCode = seq[seq.length - 1]; + } else + throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte); + if (uCode > 65535) { + uCode -= 65536; + var uCodeLead = 55296 + Math.floor(uCode / 1024); + newBuf[j++] = uCodeLead & 255; + newBuf[j++] = uCodeLead >> 8; + uCode = 56320 + uCode % 1024; + } + newBuf[j++] = uCode & 255; + newBuf[j++] = uCode >> 8; + nodeIdx = 0; + seqStart = i2 + 1; + } + this.nodeIdx = nodeIdx; + this.prevBuf = seqStart >= 0 ? buf.slice(seqStart) : prevBuf.slice(seqStart + prevBufOffset); + return newBuf.slice(0, j).toString("ucs2"); + }; + DBCSDecoder.prototype.end = function() { + var ret2 = ""; + while (this.prevBuf.length > 0) { + ret2 += this.defaultCharUnicode; + var buf = this.prevBuf.slice(1); + this.prevBuf = Buffer2.alloc(0); + this.nodeIdx = 0; + if (buf.length > 0) + ret2 += this.write(buf); + } + this.nodeIdx = 0; + return ret2; + }; + function findIdx(table, val) { + if (table[0] > val) + return -1; + var l2 = 0, r = table.length; + while (l2 < r - 1) { + var mid = l2 + Math.floor((r - l2 + 1) / 2); + if (table[mid] <= val) + l2 = mid; + else + r = mid; + } + return l2; + } + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/shiftjis.json +var require_shiftjis = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports2, module2) { + module2.exports = [ + ["0", "\0", 128], + ["a1", "\uFF61", 62], + ["8140", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7"], + ["8180", "\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"], + ["81b8", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"], + ["81c8", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"], + ["81da", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"], + ["81f0", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"], + ["81fc", "\u25EF"], + ["824f", "\uFF10", 9], + ["8260", "\uFF21", 25], + ["8281", "\uFF41", 25], + ["829f", "\u3041", 82], + ["8340", "\u30A1", 62], + ["8380", "\u30E0", 22], + ["839f", "\u0391", 16, "\u03A3", 6], + ["83bf", "\u03B1", 16, "\u03C3", 6], + ["8440", "\u0410", 5, "\u0401\u0416", 25], + ["8470", "\u0430", 5, "\u0451\u0436", 7], + ["8480", "\u043E", 17], + ["849f", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"], + ["8740", "\u2460", 19, "\u2160", 9], + ["875f", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"], + ["877e", "\u337B"], + ["8780", "\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"], + ["889f", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"], + ["8940", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"], + ["8980", "\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"], + ["8a40", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"], + ["8a80", "\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"], + ["8b40", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"], + ["8b80", "\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"], + ["8c40", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"], + ["8c80", "\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"], + ["8d40", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"], + ["8d80", "\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"], + ["8e40", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"], + ["8e80", "\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"], + ["8f40", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"], + ["8f80", "\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"], + ["9040", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"], + ["9080", "\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"], + ["9140", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"], + ["9180", "\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"], + ["9240", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"], + ["9280", "\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"], + ["9340", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"], + ["9380", "\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"], + ["9440", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"], + ["9480", "\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"], + ["9540", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"], + ["9580", "\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"], + ["9640", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"], + ["9680", "\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"], + ["9740", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"], + ["9780", "\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"], + ["9840", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"], + ["989f", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"], + ["9940", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"], + ["9980", "\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"], + ["9a40", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"], + ["9a80", "\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"], + ["9b40", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"], + ["9b80", "\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"], + ["9c40", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"], + ["9c80", "\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"], + ["9d40", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"], + ["9d80", "\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"], + ["9e40", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"], + ["9e80", "\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"], + ["9f40", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"], + ["9f80", "\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"], + ["e040", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"], + ["e080", "\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"], + ["e140", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"], + ["e180", "\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"], + ["e240", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"], + ["e280", "\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"], + ["e340", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"], + ["e380", "\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"], + ["e440", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"], + ["e480", "\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"], + ["e540", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"], + ["e580", "\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"], + ["e640", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"], + ["e680", "\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"], + ["e740", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"], + ["e780", "\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"], + ["e840", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"], + ["e880", "\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"], + ["e940", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"], + ["e980", "\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"], + ["ea40", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"], + ["ea80", "\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"], + ["ed40", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"], + ["ed80", "\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"], + ["ee40", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"], + ["ee80", "\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"], + ["eeef", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"], + ["f040", "\uE000", 62], + ["f080", "\uE03F", 124], + ["f140", "\uE0BC", 62], + ["f180", "\uE0FB", 124], + ["f240", "\uE178", 62], + ["f280", "\uE1B7", 124], + ["f340", "\uE234", 62], + ["f380", "\uE273", 124], + ["f440", "\uE2F0", 62], + ["f480", "\uE32F", 124], + ["f540", "\uE3AC", 62], + ["f580", "\uE3EB", 124], + ["f640", "\uE468", 62], + ["f680", "\uE4A7", 124], + ["f740", "\uE524", 62], + ["f780", "\uE563", 124], + ["f840", "\uE5E0", 62], + ["f880", "\uE61F", 124], + ["f940", "\uE69C"], + ["fa40", "\u2170", 9, "\u2160", 9, "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"], + ["fa80", "\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"], + ["fb40", "\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"], + ["fb80", "\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"], + ["fc40", "\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"] + ]; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/eucjp.json +var require_eucjp = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/eucjp.json"(exports2, module2) { + module2.exports = [ + ["0", "\0", 127], + ["8ea1", "\uFF61", 62], + ["a1a1", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"], + ["a2a1", "\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"], + ["a2ba", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"], + ["a2ca", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"], + ["a2dc", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"], + ["a2f2", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"], + ["a2fe", "\u25EF"], + ["a3b0", "\uFF10", 9], + ["a3c1", "\uFF21", 25], + ["a3e1", "\uFF41", 25], + ["a4a1", "\u3041", 82], + ["a5a1", "\u30A1", 85], + ["a6a1", "\u0391", 16, "\u03A3", 6], + ["a6c1", "\u03B1", 16, "\u03C3", 6], + ["a7a1", "\u0410", 5, "\u0401\u0416", 25], + ["a7d1", "\u0430", 5, "\u0451\u0436", 25], + ["a8a1", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"], + ["ada1", "\u2460", 19, "\u2160", 9], + ["adc0", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"], + ["addf", "\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"], + ["b0a1", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"], + ["b1a1", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"], + ["b2a1", "\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"], + ["b3a1", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"], + ["b4a1", "\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"], + ["b5a1", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"], + ["b6a1", "\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"], + ["b7a1", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"], + ["b8a1", "\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"], + ["b9a1", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"], + ["baa1", "\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"], + ["bba1", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"], + ["bca1", "\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"], + ["bda1", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"], + ["bea1", "\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"], + ["bfa1", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"], + ["c0a1", "\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"], + ["c1a1", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"], + ["c2a1", "\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"], + ["c3a1", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"], + ["c4a1", "\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"], + ["c5a1", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"], + ["c6a1", "\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"], + ["c7a1", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"], + ["c8a1", "\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"], + ["c9a1", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"], + ["caa1", "\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"], + ["cba1", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"], + ["cca1", "\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"], + ["cda1", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"], + ["cea1", "\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"], + ["cfa1", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"], + ["d0a1", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"], + ["d1a1", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"], + ["d2a1", "\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"], + ["d3a1", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"], + ["d4a1", "\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"], + ["d5a1", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"], + ["d6a1", "\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"], + ["d7a1", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"], + ["d8a1", "\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"], + ["d9a1", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"], + ["daa1", "\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"], + ["dba1", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"], + ["dca1", "\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"], + ["dda1", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"], + ["dea1", "\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"], + ["dfa1", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"], + ["e0a1", "\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"], + ["e1a1", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"], + ["e2a1", "\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"], + ["e3a1", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"], + ["e4a1", "\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"], + ["e5a1", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"], + ["e6a1", "\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"], + ["e7a1", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"], + ["e8a1", "\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"], + ["e9a1", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"], + ["eaa1", "\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"], + ["eba1", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"], + ["eca1", "\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"], + ["eda1", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"], + ["eea1", "\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"], + ["efa1", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"], + ["f0a1", "\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"], + ["f1a1", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"], + ["f2a1", "\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"], + ["f3a1", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"], + ["f4a1", "\u582F\u69C7\u9059\u7464\u51DC\u7199"], + ["f9a1", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"], + ["faa1", "\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"], + ["fba1", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"], + ["fca1", "\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"], + ["fcf1", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"], + ["8fa2af", "\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"], + ["8fa2c2", "\xA1\xA6\xBF"], + ["8fa2eb", "\xBA\xAA\xA9\xAE\u2122\xA4\u2116"], + ["8fa6e1", "\u0386\u0388\u0389\u038A\u03AA"], + ["8fa6e7", "\u038C"], + ["8fa6e9", "\u038E\u03AB"], + ["8fa6ec", "\u038F"], + ["8fa6f1", "\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"], + ["8fa7c2", "\u0402", 10, "\u040E\u040F"], + ["8fa7f2", "\u0452", 10, "\u045E\u045F"], + ["8fa9a1", "\xC6\u0110"], + ["8fa9a4", "\u0126"], + ["8fa9a6", "\u0132"], + ["8fa9a8", "\u0141\u013F"], + ["8fa9ab", "\u014A\xD8\u0152"], + ["8fa9af", "\u0166\xDE"], + ["8fa9c1", "\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"], + ["8faaa1", "\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"], + ["8faaba", "\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"], + ["8faba1", "\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"], + ["8fabbd", "\u0121\u0125\xED\xEC\xEF\xEE\u01D0"], + ["8fabc5", "\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"], + ["8fb0a1", "\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"], + ["8fb1a1", "\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"], + ["8fb2a1", "\u5092\u5093\u5094\u5096\u509B\u509C\u509E", 4, "\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"], + ["8fb3a1", "\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"], + ["8fb4a1", "\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"], + ["8fb5a1", "\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"], + ["8fb6a1", "\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D", 5, "\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4", 4, "\u56F1\u56EB\u56ED"], + ["8fb7a1", "\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D", 4, "\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"], + ["8fb8a1", "\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"], + ["8fb9a1", "\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"], + ["8fbaa1", "\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6", 4, "\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"], + ["8fbba1", "\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"], + ["8fbca1", "\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A", 4, "\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"], + ["8fbda1", "\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0", 4, "\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"], + ["8fbea1", "\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110", 4, "\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"], + ["8fbfa1", "\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"], + ["8fc0a1", "\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"], + ["8fc1a1", "\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"], + ["8fc2a1", "\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"], + ["8fc3a1", "\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E", 4, "\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"], + ["8fc4a1", "\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"], + ["8fc5a1", "\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"], + ["8fc6a1", "\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"], + ["8fc7a1", "\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"], + ["8fc8a1", "\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"], + ["8fc9a1", "\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094", 4, "\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103", 4, "\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"], + ["8fcaa1", "\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"], + ["8fcba1", "\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"], + ["8fcca1", "\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428", 9, "\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"], + ["8fcda1", "\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579", 5, "\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"], + ["8fcea1", "\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2", 6, "\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"], + ["8fcfa1", "\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"], + ["8fd0a1", "\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"], + ["8fd1a1", "\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"], + ["8fd2a1", "\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59", 5], + ["8fd3a1", "\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"], + ["8fd4a1", "\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2", 4, "\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"], + ["8fd5a1", "\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"], + ["8fd6a1", "\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"], + ["8fd7a1", "\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"], + ["8fd8a1", "\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"], + ["8fd9a1", "\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F", 4, "\u8556\u8559\u855C", 6, "\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"], + ["8fdaa1", "\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660", 4, "\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"], + ["8fdba1", "\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783", 6, "\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"], + ["8fdca1", "\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA", 4, "\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"], + ["8fdda1", "\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4", 4, "\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"], + ["8fdea1", "\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42", 4, "\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"], + ["8fdfa1", "\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"], + ["8fe0a1", "\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"], + ["8fe1a1", "\u8F43\u8F47\u8F4F\u8F51", 4, "\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"], + ["8fe2a1", "\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"], + ["8fe3a1", "\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC", 5, "\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275", 4, "\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"], + ["8fe4a1", "\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF", 4, "\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"], + ["8fe5a1", "\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9", 4, "\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"], + ["8fe6a1", "\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"], + ["8fe7a1", "\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"], + ["8fe8a1", "\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931", 4, "\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"], + ["8fe9a1", "\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF", 4], + ["8feaa1", "\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A", 4, "\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"], + ["8feba1", "\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26", 4, "\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"], + ["8feca1", "\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"], + ["8feda1", "\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43", 4, "\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D", 4, "\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"] + ]; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp936.json +var require_cp936 = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp936.json"(exports2, module2) { + module2.exports = [ + ["0", "\0", 127, "\u20AC"], + ["8140", "\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A", 5, "\u4E72\u4E74", 9, "\u4E7F", 6, "\u4E87\u4E8A"], + ["8180", "\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02", 6, "\u4F0B\u4F0C\u4F12", 4, "\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E", 4, "\u4F44\u4F45\u4F47", 5, "\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"], + ["8240", "\u4FA4\u4FAB\u4FAD\u4FB0", 4, "\u4FB6", 8, "\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2", 4, "\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF", 11], + ["8280", "\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F", 10, "\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050", 4, "\u5056\u5057\u5058\u5059\u505B\u505D", 7, "\u5066", 5, "\u506D", 8, "\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E", 20, "\u50A4\u50A6\u50AA\u50AB\u50AD", 4, "\u50B3", 6, "\u50BC"], + ["8340", "\u50BD", 17, "\u50D0", 5, "\u50D7\u50D8\u50D9\u50DB", 10, "\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6", 4, "\u50FC", 9, "\u5108"], + ["8380", "\u5109\u510A\u510C", 5, "\u5113", 13, "\u5122", 28, "\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D", 4, "\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6", 4, "\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2", 5], + ["8440", "\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5", 5, "\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244", 5, "\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"], + ["8480", "\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273", 9, "\u527E\u5280\u5283", 4, "\u5289", 6, "\u5291\u5292\u5294", 6, "\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4", 9, "\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9", 5, "\u52E0\u52E1\u52E2\u52E3\u52E5", 10, "\u52F1", 7, "\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"], + ["8540", "\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F", 9, "\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"], + ["8580", "\u5390", 4, "\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF", 6, "\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3", 4, "\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D", 4, "\u5463\u5465\u5467\u5469", 7, "\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"], + ["8640", "\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0", 4, "\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4", 5, "\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A", 4, "\u5512\u5513\u5515", 5, "\u551C\u551D\u551E\u551F\u5521\u5525\u5526"], + ["8680", "\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B", 4, "\u5551\u5552\u5553\u5554\u5557", 4, "\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F", 5, "\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0", 6, "\u55A8", 8, "\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF", 4, "\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7", 4, "\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8", 4, "\u55FF\u5602\u5603\u5604\u5605"], + ["8740", "\u5606\u5607\u560A\u560B\u560D\u5610", 7, "\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640", 11, "\u564F", 4, "\u5655\u5656\u565A\u565B\u565D", 4], + ["8780", "\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D", 7, "\u5687", 6, "\u5690\u5691\u5692\u5694", 14, "\u56A4", 10, "\u56B0", 6, "\u56B8\u56B9\u56BA\u56BB\u56BD", 12, "\u56CB", 8, "\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5", 5, "\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B", 6], + ["8840", "\u5712", 9, "\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734", 4, "\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752", 4, "\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"], + ["8880", "\u5781\u5787\u5788\u5789\u578A\u578D", 4, "\u5794", 6, "\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9", 8, "\u57C4", 6, "\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5", 7, "\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825", 4, "\u582B", 4, "\u5831\u5832\u5833\u5834\u5836", 7], + ["8940", "\u583E", 5, "\u5845", 6, "\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859", 4, "\u585F", 5, "\u5866", 4, "\u586D", 16, "\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"], + ["8980", "\u588D", 4, "\u5894", 4, "\u589B\u589C\u589D\u58A0", 7, "\u58AA", 17, "\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6", 10, "\u58D2\u58D3\u58D4\u58D6", 13, "\u58E5", 5, "\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA", 7, "\u5903\u5905\u5906\u5908", 4, "\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"], + ["8a40", "\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B", 4, "\u5961\u5963\u5964\u5966", 12, "\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"], + ["8a80", "\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3", 5, "\u59BA\u59BC\u59BD\u59BF", 6, "\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE", 4, "\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED", 11, "\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A", 6, "\u5A33\u5A35\u5A37", 4, "\u5A3D\u5A3E\u5A3F\u5A41", 4, "\u5A47\u5A48\u5A4B", 9, "\u5A56\u5A57\u5A58\u5A59\u5A5B", 5], + ["8b40", "\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B", 8, "\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80", 17, "\u5A93", 6, "\u5A9C", 13, "\u5AAB\u5AAC"], + ["8b80", "\u5AAD", 4, "\u5AB4\u5AB6\u5AB7\u5AB9", 4, "\u5ABF\u5AC0\u5AC3", 5, "\u5ACA\u5ACB\u5ACD", 4, "\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC", 4, "\u5AF2", 22, "\u5B0A", 11, "\u5B18", 25, "\u5B33\u5B35\u5B36\u5B38", 7, "\u5B41", 6], + ["8c40", "\u5B48", 7, "\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"], + ["8c80", "\u5BD1\u5BD4", 8, "\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9", 4, "\u5BEF\u5BF1", 6, "\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67", 6, "\u5C70\u5C72", 6, "\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83", 4, "\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D", 4, "\u5CA4", 4], + ["8d40", "\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5", 5, "\u5CCC", 5, "\u5CD3", 5, "\u5CDA", 6, "\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1", 9, "\u5CFC", 4], + ["8d80", "\u5D01\u5D04\u5D05\u5D08", 5, "\u5D0F", 4, "\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F", 4, "\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F", 4, "\u5D35", 7, "\u5D3F", 7, "\u5D48\u5D49\u5D4D", 10, "\u5D59\u5D5A\u5D5C\u5D5E", 10, "\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75", 12, "\u5D83", 21, "\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"], + ["8e40", "\u5DA1", 21, "\u5DB8", 12, "\u5DC6", 6, "\u5DCE", 12, "\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"], + ["8e80", "\u5DF0\u5DF5\u5DF6\u5DF8", 4, "\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E", 7, "\u5E28", 4, "\u5E2F\u5E30\u5E32", 4, "\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46", 5, "\u5E4D", 6, "\u5E56", 4, "\u5E5C\u5E5D\u5E5F\u5E60\u5E63", 14, "\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8", 4, "\u5EAE", 4, "\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF", 6], + ["8f40", "\u5EC6\u5EC7\u5EC8\u5ECB", 5, "\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC", 11, "\u5EE9\u5EEB", 8, "\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"], + ["8f80", "\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32", 6, "\u5F3B\u5F3D\u5F3E\u5F3F\u5F41", 14, "\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2", 5, "\u5FA9\u5FAB\u5FAC\u5FAF", 5, "\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE", 4, "\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"], + ["9040", "\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030", 4, "\u6036", 4, "\u603D\u603E\u6040\u6044", 6, "\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"], + ["9080", "\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD", 7, "\u60C7\u60C8\u60C9\u60CC", 4, "\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1", 4, "\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB", 4, "\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110", 4, "\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C", 18, "\u6140", 6], + ["9140", "\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156", 6, "\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169", 6, "\u6171\u6172\u6173\u6174\u6176\u6178", 18, "\u618C\u618D\u618F", 4, "\u6195"], + ["9180", "\u6196", 6, "\u619E", 8, "\u61AA\u61AB\u61AD", 9, "\u61B8", 5, "\u61BF\u61C0\u61C1\u61C3", 4, "\u61C9\u61CC", 4, "\u61D3\u61D5", 16, "\u61E7", 13, "\u61F6", 8, "\u6200", 5, "\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238", 4, "\u6242\u6244\u6245\u6246\u624A"], + ["9240", "\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C", 6, "\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B", 5, "\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"], + ["9280", "\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333", 5, "\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356", 7, "\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399", 6, "\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"], + ["9340", "\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7", 6, "\u63DF\u63E2\u63E4", 4, "\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406", 4, "\u640D\u640E\u6411\u6412\u6415", 5, "\u641D\u641F\u6422\u6423\u6424"], + ["9380", "\u6425\u6427\u6428\u6429\u642B\u642E", 5, "\u6435", 4, "\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B", 6, "\u6453\u6455\u6456\u6457\u6459", 4, "\u645F", 7, "\u6468\u646A\u646B\u646C\u646E", 9, "\u647B", 6, "\u6483\u6486\u6488", 8, "\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F", 4, "\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6", 6, "\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"], + ["9440", "\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7", 24, "\u6501", 7, "\u650A", 7, "\u6513", 4, "\u6519", 8], + ["9480", "\u6522\u6523\u6524\u6526", 4, "\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540", 4, "\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578", 14, "\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1", 7, "\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8", 7, "\u65E1\u65E3\u65E4\u65EA\u65EB"], + ["9540", "\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB", 4, "\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637", 4, "\u663D\u663F\u6640\u6642\u6644", 6, "\u664D\u664E\u6650\u6651\u6658"], + ["9580", "\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669", 4, "\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698", 4, "\u669E", 8, "\u66A9", 4, "\u66AF", 4, "\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF", 25, "\u66DA\u66DE", 7, "\u66E7\u66E8\u66EA", 5, "\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"], + ["9640", "\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720", 5, "\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757", 4, "\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"], + ["9680", "\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9", 7, "\u67C2\u67C5", 9, "\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5", 7, "\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818", 4, "\u681E\u681F\u6820\u6822", 6, "\u682B", 6, "\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856", 5], + ["9740", "\u685C\u685D\u685E\u685F\u686A\u686C", 7, "\u6875\u6878", 8, "\u6882\u6884\u6887", 7, "\u6890\u6891\u6892\u6894\u6895\u6896\u6898", 9, "\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"], + ["9780", "\u68B9", 6, "\u68C1\u68C3", 5, "\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB", 4, "\u68E1\u68E2\u68E4", 9, "\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906", 4, "\u690C\u690F\u6911\u6913", 11, "\u6921\u6922\u6923\u6925", 7, "\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943", 16, "\u6955\u6956\u6958\u6959\u695B\u695C\u695F"], + ["9840", "\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972", 4, "\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E", 5, "\u6996\u6997\u6999\u699A\u699D", 9, "\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"], + ["9880", "\u69BE\u69BF\u69C0\u69C2", 7, "\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5", 5, "\u69DC\u69DD\u69DE\u69E1", 11, "\u69EE\u69EF\u69F0\u69F1\u69F3", 9, "\u69FE\u6A00", 9, "\u6A0B", 11, "\u6A19", 5, "\u6A20\u6A22", 5, "\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36", 6, "\u6A3F", 4, "\u6A45\u6A46\u6A48", 7, "\u6A51", 6, "\u6A5A"], + ["9940", "\u6A5C", 4, "\u6A62\u6A63\u6A64\u6A66", 10, "\u6A72", 6, "\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85", 8, "\u6A8F\u6A92", 4, "\u6A98", 7, "\u6AA1", 5], + ["9980", "\u6AA7\u6AA8\u6AAA\u6AAD", 114, "\u6B25\u6B26\u6B28", 6], + ["9a40", "\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D", 11, "\u6B5A", 7, "\u6B68\u6B69\u6B6B", 13, "\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"], + ["9a80", "\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C", 4, "\u6BA2", 7, "\u6BAB", 7, "\u6BB6\u6BB8", 6, "\u6BC0\u6BC3\u6BC4\u6BC6", 4, "\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC", 4, "\u6BE2", 7, "\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE", 6, "\u6C08", 4, "\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B", 4, "\u6C51\u6C52\u6C53\u6C56\u6C58"], + ["9b40", "\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B", 4, "\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"], + ["9b80", "\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F", 5, "\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D", 4, "\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96", 4, "\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9", 5, "\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"], + ["9c40", "\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD", 7, "\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"], + ["9c80", "\u6E36\u6E37\u6E39\u6E3B", 7, "\u6E45", 7, "\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60", 10, "\u6E6C\u6E6D\u6E6F", 14, "\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A", 4, "\u6E91", 6, "\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA", 5], + ["9d40", "\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA", 7, "\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A", 4, "\u6F10\u6F11\u6F12\u6F16", 9, "\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37", 6, "\u6F3F\u6F40\u6F41\u6F42"], + ["9d80", "\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E", 9, "\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67", 5, "\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D", 6, "\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F", 12, "\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2", 4, "\u6FA8", 10, "\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA", 5, "\u6FC1\u6FC3", 5, "\u6FCA", 6, "\u6FD3", 10, "\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"], + ["9e40", "\u6FE6", 7, "\u6FF0", 32, "\u7012", 7, "\u701C", 6, "\u7024", 6], + ["9e80", "\u702B", 9, "\u7036\u7037\u7038\u703A", 17, "\u704D\u704E\u7050", 13, "\u705F", 11, "\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E", 12, "\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB", 12, "\u70DA"], + ["9f40", "\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0", 6, "\u70F8\u70FA\u70FB\u70FC\u70FE", 10, "\u710B", 4, "\u7111\u7112\u7114\u7117\u711B", 10, "\u7127", 7, "\u7132\u7133\u7134"], + ["9f80", "\u7135\u7137", 13, "\u7146\u7147\u7148\u7149\u714B\u714D\u714F", 12, "\u715D\u715F", 4, "\u7165\u7169", 4, "\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E", 5, "\u7185", 4, "\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A", 4, "\u71A1", 6, "\u71A9\u71AA\u71AB\u71AD", 5, "\u71B4\u71B6\u71B7\u71B8\u71BA", 8, "\u71C4", 9, "\u71CF", 4], + ["a040", "\u71D6", 9, "\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8", 5, "\u71EF", 9, "\u71FA", 11, "\u7207", 19], + ["a080", "\u721B\u721C\u721E", 9, "\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240", 6, "\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285", 4, "\u728C\u728E\u7290\u7291\u7293", 11, "\u72A0", 11, "\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA", 6, "\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"], + ["a1a1", "\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 7, "\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"], + ["a2a1", "\u2170", 9], + ["a2b1", "\u2488", 19, "\u2474", 19, "\u2460", 9], + ["a2e5", "\u3220", 9], + ["a2f1", "\u2160", 11], + ["a3a1", "\uFF01\uFF02\uFF03\uFFE5\uFF05", 88, "\uFFE3"], + ["a4a1", "\u3041", 82], + ["a5a1", "\u30A1", 85], + ["a6a1", "\u0391", 16, "\u03A3", 6], + ["a6c1", "\u03B1", 16, "\u03C3", 6], + ["a6e0", "\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"], + ["a6ee", "\uFE3B\uFE3C\uFE37\uFE38\uFE31"], + ["a6f4", "\uFE33\uFE34"], + ["a7a1", "\u0410", 5, "\u0401\u0416", 25], + ["a7d1", "\u0430", 5, "\u0451\u0436", 25], + ["a840", "\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550", 35, "\u2581", 6], + ["a880", "\u2588", 7, "\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"], + ["a8a1", "\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"], + ["a8bd", "\u0144\u0148"], + ["a8c0", "\u0261"], + ["a8c5", "\u3105", 36], + ["a940", "\u3021", 8, "\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"], + ["a959", "\u2121\u3231"], + ["a95c", "\u2010"], + ["a960", "\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49", 9, "\uFE54\uFE55\uFE56\uFE57\uFE59", 8], + ["a980", "\uFE62", 4, "\uFE68\uFE69\uFE6A\uFE6B"], + ["a996", "\u3007"], + ["a9a4", "\u2500", 75], + ["aa40", "\u72DC\u72DD\u72DF\u72E2", 5, "\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304", 5, "\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340", 8], + ["aa80", "\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358", 7, "\u7361", 10, "\u736E\u7370\u7371"], + ["ab40", "\u7372", 11, "\u737F", 4, "\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3", 5, "\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3", 4], + ["ab80", "\u73CB\u73CC\u73CE\u73D2", 6, "\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3", 4], + ["ac40", "\u73F8", 10, "\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411", 8, "\u741C", 5, "\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437", 4, "\u743D\u743E\u743F\u7440\u7442", 11], + ["ac80", "\u744E", 6, "\u7456\u7458\u745D\u7460", 12, "\u746E\u746F\u7471", 4, "\u7478\u7479\u747A"], + ["ad40", "\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491", 10, "\u749D\u749F", 7, "\u74AA", 15, "\u74BB", 12], + ["ad80", "\u74C8", 9, "\u74D3", 8, "\u74DD\u74DF\u74E1\u74E5\u74E7", 6, "\u74F0\u74F1\u74F2"], + ["ae40", "\u74F3\u74F5\u74F8", 6, "\u7500\u7501\u7502\u7503\u7505", 7, "\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520", 4, "\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"], + ["ae80", "\u755D", 7, "\u7567\u7568\u7569\u756B", 6, "\u7573\u7575\u7576\u7577\u757A", 4, "\u7580\u7581\u7582\u7584\u7585\u7587"], + ["af40", "\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6", 4, "\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"], + ["af80", "\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"], + ["b040", "\u7645", 6, "\u764E", 5, "\u7655\u7657", 4, "\u765D\u765F\u7660\u7661\u7662\u7664", 6, "\u766C\u766D\u766E\u7670", 7, "\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"], + ["b080", "\u769C", 7, "\u76A5", 8, "\u76AF\u76B0\u76B3\u76B5", 9, "\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"], + ["b140", "\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0", 4, "\u76E6", 7, "\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E", 10, "\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"], + ["b180", "\u772C\u772E\u7730", 4, "\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748", 7, "\u7752", 7, "\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"], + ["b240", "\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D", 11, "\u777A\u777B\u777C\u7781\u7782\u7783\u7786", 5, "\u778F\u7790\u7793", 11, "\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6", 4], + ["b280", "\u77BC\u77BE\u77C0", 12, "\u77CE", 8, "\u77D8\u77D9\u77DA\u77DD", 4, "\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"], + ["b340", "\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803", 5, "\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"], + ["b380", "\u785B\u785C\u785E", 11, "\u786F", 7, "\u7878\u7879\u787A\u787B\u787D", 6, "\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"], + ["b440", "\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8", 7, "\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA", 9], + ["b480", "\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED", 4, "\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB", 5, "\u7902\u7903\u7904\u7906", 6, "\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"], + ["b540", "\u790D", 5, "\u7914", 9, "\u791F", 4, "\u7925", 14, "\u7935", 4, "\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A", 8, "\u7954\u7955\u7958\u7959\u7961\u7963"], + ["b580", "\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970", 6, "\u7979\u797B", 4, "\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"], + ["b640", "\u7993", 6, "\u799B", 11, "\u79A8", 10, "\u79B4", 4, "\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9", 5, "\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"], + ["b680", "\u79EC\u79EE\u79F1", 6, "\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F", 4, "\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"], + ["b740", "\u7A1D\u7A1F\u7A21\u7A22\u7A24", 14, "\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40", 5, "\u7A47", 9, "\u7A52", 4, "\u7A58", 16], + ["b780", "\u7A69", 6, "\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"], + ["b840", "\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE", 4, "\u7AB4", 10, "\u7AC0", 10, "\u7ACC", 9, "\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7", 5, "\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"], + ["b880", "\u7AF4", 4, "\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"], + ["b940", "\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F", 5, "\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63", 10, "\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86", 6, "\u7B8E\u7B8F"], + ["b980", "\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9", 7, "\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"], + ["ba40", "\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4", 4, "\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2", 4, "\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF", 7, "\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10", 5, "\u7C17\u7C18\u7C19"], + ["ba80", "\u7C1A", 4, "\u7C20", 5, "\u7C28\u7C29\u7C2B", 12, "\u7C39", 5, "\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"], + ["bb40", "\u7C43", 9, "\u7C4E", 36, "\u7C75", 5, "\u7C7E", 9], + ["bb80", "\u7C88\u7C8A", 6, "\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4", 4, "\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"], + ["bc40", "\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE", 6, "\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1", 6, "\u7CE9", 5, "\u7CF0", 7, "\u7CF9\u7CFA\u7CFC", 13, "\u7D0B", 5], + ["bc80", "\u7D11", 14, "\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30", 6, "\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"], + ["bd40", "\u7D37", 54, "\u7D6F", 7], + ["bd80", "\u7D78", 32, "\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"], + ["be40", "\u7D99", 12, "\u7DA7", 6, "\u7DAF", 42], + ["be80", "\u7DDA", 32, "\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"], + ["bf40", "\u7DFB", 62], + ["bf80", "\u7E3A\u7E3C", 4, "\u7E42", 4, "\u7E48", 21, "\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"], + ["c040", "\u7E5E", 35, "\u7E83", 23, "\u7E9C\u7E9D\u7E9E"], + ["c080", "\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B", 6, "\u7F43\u7F46", 9, "\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"], + ["c140", "\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63", 4, "\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82", 7, "\u7F8B\u7F8D\u7F8F", 4, "\u7F95", 4, "\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8", 6, "\u7FB1"], + ["c180", "\u7FB3", 4, "\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF", 4, "\u7FD6\u7FD7\u7FD9", 5, "\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"], + ["c240", "\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4", 6, "\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B", 5, "\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"], + ["c280", "\u8059\u805B", 13, "\u806B", 5, "\u8072", 11, "\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"], + ["c340", "\u807E\u8081\u8082\u8085\u8088\u808A\u808D", 5, "\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7", 4, "\u80CF", 6, "\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"], + ["c380", "\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F", 12, "\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139", 4, "\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"], + ["c440", "\u8140", 5, "\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B", 4, "\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183", 4, "\u8189\u818B\u818C\u818D\u818E\u8190\u8192", 5, "\u8199\u819A\u819E", 4, "\u81A4\u81A5"], + ["c480", "\u81A7\u81A9\u81AB", 7, "\u81B4", 5, "\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD", 6, "\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"], + ["c540", "\u81D4", 14, "\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE", 4, "\u81F5", 5, "\u81FD\u81FF\u8203\u8207", 4, "\u820E\u820F\u8211\u8213\u8215", 5, "\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"], + ["c580", "\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250", 7, "\u8259\u825B\u825C\u825D\u825E\u8260", 7, "\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"], + ["c640", "\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"], + ["c680", "\u82FA\u82FC", 4, "\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D", 9, "\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"], + ["c740", "\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A", 4, "\u8353\u8355", 4, "\u835D\u8362\u8370", 6, "\u8379\u837A\u837E", 6, "\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1", 6, "\u83AC\u83AD\u83AE"], + ["c780", "\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"], + ["c840", "\u83EE\u83EF\u83F3", 4, "\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412", 5, "\u8419\u841A\u841B\u841E", 5, "\u8429", 7, "\u8432", 5, "\u8439\u843A\u843B\u843E", 7, "\u8447\u8448\u8449"], + ["c880", "\u844A", 6, "\u8452", 4, "\u8458\u845D\u845E\u845F\u8460\u8462\u8464", 4, "\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"], + ["c940", "\u847D", 4, "\u8483\u8484\u8485\u8486\u848A\u848D\u848F", 7, "\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2", 12, "\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"], + ["c980", "\u84D8", 4, "\u84DE\u84E1\u84E2\u84E4\u84E7", 4, "\u84ED\u84EE\u84EF\u84F1", 10, "\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"], + ["ca40", "\u8503", 8, "\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522", 8, "\u852D", 9, "\u853E", 4, "\u8544\u8545\u8546\u8547\u854B", 10], + ["ca80", "\u8557\u8558\u855A\u855B\u855C\u855D\u855F", 4, "\u8565\u8566\u8567\u8569", 8, "\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"], + ["cb40", "\u8582\u8583\u8586\u8588", 6, "\u8590", 10, "\u859D", 6, "\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1", 5, "\u85B8\u85BA", 6, "\u85C2", 6, "\u85CA", 4, "\u85D1\u85D2"], + ["cb80", "\u85D4\u85D6", 5, "\u85DD", 6, "\u85E5\u85E6\u85E7\u85E8\u85EA", 14, "\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"], + ["cc40", "\u85F9\u85FA\u85FC\u85FD\u85FE\u8600", 4, "\u8606", 10, "\u8612\u8613\u8614\u8615\u8617", 15, "\u8628\u862A", 13, "\u8639\u863A\u863B\u863D\u863E\u863F\u8640"], + ["cc80", "\u8641", 11, "\u8652\u8653\u8655", 4, "\u865B\u865C\u865D\u865F\u8660\u8661\u8663", 7, "\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"], + ["cd40", "\u866D\u866F\u8670\u8672", 6, "\u8683", 6, "\u868E", 4, "\u8694\u8696", 5, "\u869E", 4, "\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB", 4, "\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"], + ["cd80", "\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"], + ["ce40", "\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740", 6, "\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A", 5, "\u8761\u8762\u8766", 7, "\u876F\u8771\u8772\u8773\u8775"], + ["ce80", "\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E", 4, "\u8794\u8795\u8796\u8798", 6, "\u87A0", 4, "\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"], + ["cf40", "\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1", 4, "\u87C7\u87C8\u87C9\u87CC", 4, "\u87D4", 6, "\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF", 9], + ["cf80", "\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804", 5, "\u880B", 7, "\u8814\u8817\u8818\u8819\u881A\u881C", 4, "\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"], + ["d040", "\u8824", 13, "\u8833", 5, "\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846", 5, "\u884E", 5, "\u8855\u8856\u8858\u885A", 6, "\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"], + ["d080", "\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897", 4, "\u889D", 4, "\u88A3\u88A5", 5, "\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"], + ["d140", "\u88AC\u88AE\u88AF\u88B0\u88B2", 4, "\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA", 4, "\u88E0\u88E1\u88E6\u88E7\u88E9", 6, "\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903", 5], + ["d180", "\u8909\u890B", 4, "\u8911\u8914", 4, "\u891C", 4, "\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"], + ["d240", "\u8938", 8, "\u8942\u8943\u8945", 24, "\u8960", 5, "\u8967", 19, "\u897C"], + ["d280", "\u897D\u897E\u8980\u8982\u8984\u8985\u8987", 26, "\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"], + ["d340", "\u89A2", 30, "\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4", 6], + ["d380", "\u89FB", 4, "\u8A01", 5, "\u8A08", 21, "\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"], + ["d440", "\u8A1E", 31, "\u8A3F", 8, "\u8A49", 21], + ["d480", "\u8A5F", 25, "\u8A7A", 6, "\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"], + ["d540", "\u8A81", 7, "\u8A8B", 7, "\u8A94", 46], + ["d580", "\u8AC3", 32, "\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"], + ["d640", "\u8AE4", 34, "\u8B08", 27], + ["d680", "\u8B24\u8B25\u8B27", 30, "\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"], + ["d740", "\u8B46", 31, "\u8B67", 4, "\u8B6D", 25], + ["d780", "\u8B87", 24, "\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"], + ["d840", "\u8C38", 8, "\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D", 7, "\u8C56\u8C57\u8C58\u8C59\u8C5B", 5, "\u8C63", 6, "\u8C6C", 6, "\u8C74\u8C75\u8C76\u8C77\u8C7B", 6, "\u8C83\u8C84\u8C86\u8C87"], + ["d880", "\u8C88\u8C8B\u8C8D", 6, "\u8C95\u8C96\u8C97\u8C99", 20, "\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"], + ["d940", "\u8CAE", 62], + ["d980", "\u8CED", 32, "\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"], + ["da40", "\u8D0E", 14, "\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78", 8, "\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C", 4, "\u8D92\u8D93\u8D95", 9, "\u8DA0\u8DA1"], + ["da80", "\u8DA2\u8DA4", 12, "\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"], + ["db40", "\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE", 6, "\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15", 7, "\u8E20\u8E21\u8E24", 4, "\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"], + ["db80", "\u8E3F\u8E43\u8E45\u8E46\u8E4C", 4, "\u8E53", 5, "\u8E5A", 11, "\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"], + ["dc40", "\u8E73\u8E75\u8E77", 4, "\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88", 6, "\u8E91\u8E92\u8E93\u8E95", 6, "\u8E9D\u8E9F", 11, "\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3", 6, "\u8EBB", 7], + ["dc80", "\u8EC3", 10, "\u8ECF", 21, "\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"], + ["dd40", "\u8EE5", 62], + ["dd80", "\u8F24", 32, "\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"], + ["de40", "\u8F45", 32, "\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"], + ["de80", "\u8FC9", 4, "\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"], + ["df40", "\u9019\u901C\u9023\u9024\u9025\u9027", 5, "\u9030", 4, "\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048", 4, "\u904E\u9054\u9055\u9056\u9059\u905A\u905C", 5, "\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F", 4, "\u9076", 6, "\u907E\u9081"], + ["df80", "\u9084\u9085\u9086\u9087\u9089\u908A\u908C", 4, "\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"], + ["e040", "\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105", 19, "\u911A\u911B\u911C"], + ["e080", "\u911D\u911F\u9120\u9121\u9124", 10, "\u9130\u9132", 6, "\u913A", 8, "\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"], + ["e140", "\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180", 4, "\u9186\u9188\u918A\u918E\u918F\u9193", 6, "\u919C", 5, "\u91A4", 5, "\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"], + ["e180", "\u91BC", 10, "\u91C8\u91CB\u91D0\u91D2", 9, "\u91DD", 8, "\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"], + ["e240", "\u91E6", 62], + ["e280", "\u9225", 32, "\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967", 5, "\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"], + ["e340", "\u9246", 45, "\u9275", 16], + ["e380", "\u9286", 7, "\u928F", 24, "\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"], + ["e440", "\u92A8", 5, "\u92AF", 24, "\u92C9", 31], + ["e480", "\u92E9", 32, "\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"], + ["e540", "\u930A", 51, "\u933F", 10], + ["e580", "\u934A", 31, "\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"], + ["e640", "\u936C", 34, "\u9390", 27], + ["e680", "\u93AC", 29, "\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"], + ["e740", "\u93CE", 7, "\u93D7", 54], + ["e780", "\u940E", 32, "\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21", 6, "\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F", 4, "\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"], + ["e840", "\u942F", 14, "\u943F", 43, "\u946C\u946D\u946E\u946F"], + ["e880", "\u9470", 20, "\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"], + ["e940", "\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577", 7, "\u9580", 42], + ["e980", "\u95AB", 32, "\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"], + ["ea40", "\u95CC", 27, "\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623", 6, "\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"], + ["ea80", "\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D", 4, "\u9673\u9678", 12, "\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"], + ["eb40", "\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D", 9, "\u96A8", 7, "\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6", 9, "\u96E1", 6, "\u96EB"], + ["eb80", "\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717", 4, "\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"], + ["ec40", "\u9721", 8, "\u972B\u972C\u972E\u972F\u9731\u9733", 4, "\u973A\u973B\u973C\u973D\u973F", 18, "\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A", 7], + ["ec80", "\u9772\u9775\u9777", 4, "\u977D", 7, "\u9786", 4, "\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799", 4, "\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"], + ["ed40", "\u979E\u979F\u97A1\u97A2\u97A4", 6, "\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5", 46], + ["ed80", "\u97E4\u97E5\u97E8\u97EE", 4, "\u97F4\u97F7", 23, "\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"], + ["ee40", "\u980F", 62], + ["ee80", "\u984E", 32, "\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6", 4, "\u94BC\u94BD\u94BF\u94C4\u94C8", 6, "\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"], + ["ef40", "\u986F", 5, "\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8", 37, "\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0", 4], + ["ef80", "\u98E5\u98E6\u98E9", 30, "\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512", 4, "\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564", 8, "\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"], + ["f040", "\u9908", 4, "\u990E\u990F\u9911", 28, "\u992F", 26], + ["f080", "\u994A", 9, "\u9956", 12, "\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28", 4, "\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66", 6, "\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"], + ["f140", "\u998C\u998E\u999A", 10, "\u99A6\u99A7\u99A9", 47], + ["f180", "\u99D9", 32, "\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"], + ["f240", "\u99FA", 62], + ["f280", "\u9A39", 32, "\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"], + ["f340", "\u9A5A", 17, "\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9", 6, "\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6", 4, "\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"], + ["f380", "\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0", 8, "\u9AFA\u9AFC", 6, "\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"], + ["f440", "\u9B07\u9B09", 5, "\u9B10\u9B11\u9B12\u9B14", 10, "\u9B20\u9B21\u9B22\u9B24", 10, "\u9B30\u9B31\u9B33", 7, "\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55", 5], + ["f480", "\u9B5B", 32, "\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"], + ["f540", "\u9B7C", 62], + ["f580", "\u9BBB", 32, "\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"], + ["f640", "\u9BDC", 62], + ["f680", "\u9C1B", 32, "\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85", 5, "\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E", 5, "\u9CA5", 4, "\u9CAB\u9CAD\u9CAE\u9CB0", 7, "\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"], + ["f740", "\u9C3C", 62], + ["f780", "\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE", 4, "\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC", 4, "\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"], + ["f840", "\u9CE3", 62], + ["f880", "\u9D22", 32], + ["f940", "\u9D43", 62], + ["f980", "\u9D82", 32], + ["fa40", "\u9DA3", 62], + ["fa80", "\u9DE2", 32], + ["fb40", "\u9E03", 27, "\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74", 9, "\u9E80"], + ["fb80", "\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C", 5, "\u9E94", 8, "\u9E9E\u9EA0", 5, "\u9EA7\u9EA8\u9EA9\u9EAA"], + ["fc40", "\u9EAB", 8, "\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF", 4, "\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0", 8, "\u9EFA\u9EFD\u9EFF", 6], + ["fc80", "\u9F06", 4, "\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A", 5, "\u9F21\u9F23", 8, "\u9F2D\u9F2E\u9F30\u9F31"], + ["fd40", "\u9F32", 4, "\u9F38\u9F3A\u9F3C\u9F3F", 4, "\u9F45", 10, "\u9F52", 38], + ["fd80", "\u9F79", 5, "\u9F81\u9F82\u9F8D", 11, "\u9F9C\u9F9D\u9F9E\u9FA1", 4, "\uF92C\uF979\uF995\uF9E7\uF9F1"], + ["fe40", "\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"] + ]; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/gbk-added.json +var require_gbk_added = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports2, module2) { + module2.exports = [ + ["a140", "\uE4C6", 62], + ["a180", "\uE505", 32], + ["a240", "\uE526", 62], + ["a280", "\uE565", 32], + ["a2ab", "\uE766", 5], + ["a2e3", "\u20AC\uE76D"], + ["a2ef", "\uE76E\uE76F"], + ["a2fd", "\uE770\uE771"], + ["a340", "\uE586", 62], + ["a380", "\uE5C5", 31, "\u3000"], + ["a440", "\uE5E6", 62], + ["a480", "\uE625", 32], + ["a4f4", "\uE772", 10], + ["a540", "\uE646", 62], + ["a580", "\uE685", 32], + ["a5f7", "\uE77D", 7], + ["a640", "\uE6A6", 62], + ["a680", "\uE6E5", 32], + ["a6b9", "\uE785", 7], + ["a6d9", "\uE78D", 6], + ["a6ec", "\uE794\uE795"], + ["a6f3", "\uE796"], + ["a6f6", "\uE797", 8], + ["a740", "\uE706", 62], + ["a780", "\uE745", 32], + ["a7c2", "\uE7A0", 14], + ["a7f2", "\uE7AF", 12], + ["a896", "\uE7BC", 10], + ["a8bc", "\uE7C7"], + ["a8bf", "\u01F9"], + ["a8c1", "\uE7C9\uE7CA\uE7CB\uE7CC"], + ["a8ea", "\uE7CD", 20], + ["a958", "\uE7E2"], + ["a95b", "\uE7E3"], + ["a95d", "\uE7E4\uE7E5\uE7E6"], + ["a989", "\u303E\u2FF0", 11], + ["a997", "\uE7F4", 12], + ["a9f0", "\uE801", 14], + ["aaa1", "\uE000", 93], + ["aba1", "\uE05E", 93], + ["aca1", "\uE0BC", 93], + ["ada1", "\uE11A", 93], + ["aea1", "\uE178", 93], + ["afa1", "\uE1D6", 93], + ["d7fa", "\uE810", 4], + ["f8a1", "\uE234", 93], + ["f9a1", "\uE292", 93], + ["faa1", "\uE2F0", 93], + ["fba1", "\uE34E", 93], + ["fca1", "\uE3AC", 93], + ["fda1", "\uE40A", 93], + ["fe50", "\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"], + ["fe80", "\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13", 6, "\u4DAE\uE864\uE468", 93] + ]; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +var require_gb18030_ranges = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports2, module2) { + module2.exports = { uChars: [128, 165, 169, 178, 184, 216, 226, 235, 238, 244, 248, 251, 253, 258, 276, 284, 300, 325, 329, 334, 364, 463, 465, 467, 469, 471, 473, 475, 477, 506, 594, 610, 712, 716, 730, 930, 938, 962, 970, 1026, 1104, 1106, 8209, 8215, 8218, 8222, 8231, 8241, 8244, 8246, 8252, 8365, 8452, 8454, 8458, 8471, 8482, 8556, 8570, 8596, 8602, 8713, 8720, 8722, 8726, 8731, 8737, 8740, 8742, 8748, 8751, 8760, 8766, 8777, 8781, 8787, 8802, 8808, 8816, 8854, 8858, 8870, 8896, 8979, 9322, 9372, 9548, 9588, 9616, 9622, 9634, 9652, 9662, 9672, 9676, 9680, 9702, 9735, 9738, 9793, 9795, 11906, 11909, 11913, 11917, 11928, 11944, 11947, 11951, 11956, 11960, 11964, 11979, 12284, 12292, 12312, 12319, 12330, 12351, 12436, 12447, 12535, 12543, 12586, 12842, 12850, 12964, 13200, 13215, 13218, 13253, 13263, 13267, 13270, 13384, 13428, 13727, 13839, 13851, 14617, 14703, 14801, 14816, 14964, 15183, 15471, 15585, 16471, 16736, 17208, 17325, 17330, 17374, 17623, 17997, 18018, 18212, 18218, 18301, 18318, 18760, 18811, 18814, 18820, 18823, 18844, 18848, 18872, 19576, 19620, 19738, 19887, 40870, 59244, 59336, 59367, 59413, 59417, 59423, 59431, 59437, 59443, 59452, 59460, 59478, 59493, 63789, 63866, 63894, 63976, 63986, 64016, 64018, 64021, 64025, 64034, 64037, 64042, 65074, 65093, 65107, 65112, 65127, 65132, 65375, 65510, 65536], gbChars: [0, 36, 38, 45, 50, 81, 89, 95, 96, 100, 103, 104, 105, 109, 126, 133, 148, 172, 175, 179, 208, 306, 307, 308, 309, 310, 311, 312, 313, 341, 428, 443, 544, 545, 558, 741, 742, 749, 750, 805, 819, 820, 7922, 7924, 7925, 7927, 7934, 7943, 7944, 7945, 7950, 8062, 8148, 8149, 8152, 8164, 8174, 8236, 8240, 8262, 8264, 8374, 8380, 8381, 8384, 8388, 8390, 8392, 8393, 8394, 8396, 8401, 8406, 8416, 8419, 8424, 8437, 8439, 8445, 8482, 8485, 8496, 8521, 8603, 8936, 8946, 9046, 9050, 9063, 9066, 9076, 9092, 9100, 9108, 9111, 9113, 9131, 9162, 9164, 9218, 9219, 11329, 11331, 11334, 11336, 11346, 11361, 11363, 11366, 11370, 11372, 11375, 11389, 11682, 11686, 11687, 11692, 11694, 11714, 11716, 11723, 11725, 11730, 11736, 11982, 11989, 12102, 12336, 12348, 12350, 12384, 12393, 12395, 12397, 12510, 12553, 12851, 12962, 12973, 13738, 13823, 13919, 13933, 14080, 14298, 14585, 14698, 15583, 15847, 16318, 16434, 16438, 16481, 16729, 17102, 17122, 17315, 17320, 17402, 17418, 17859, 17909, 17911, 17915, 17916, 17936, 17939, 17961, 18664, 18703, 18814, 18962, 19043, 33469, 33470, 33471, 33484, 33485, 33490, 33497, 33501, 33505, 33513, 33520, 33536, 33550, 37845, 37921, 37948, 38029, 38038, 38064, 38065, 38066, 38069, 38075, 38076, 38078, 39108, 39109, 39113, 39114, 39115, 39116, 39265, 39394, 189e3] }; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp949.json +var require_cp949 = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp949.json"(exports2, module2) { + module2.exports = [ + ["0", "\0", 127], + ["8141", "\uAC02\uAC03\uAC05\uAC06\uAC0B", 4, "\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25", 6, "\uAC2E\uAC32\uAC33\uAC34"], + ["8161", "\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41", 9, "\uAC4C\uAC4E", 5, "\uAC55"], + ["8181", "\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D", 18, "\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B", 4, "\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95", 6, "\uAC9E\uACA2", 5, "\uACAB\uACAD\uACAE\uACB1", 6, "\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD", 7, "\uACD6\uACD8", 7, "\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7", 4, "\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07", 4, "\uAD0E\uAD10\uAD12\uAD13"], + ["8241", "\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21", 7, "\uAD2A\uAD2B\uAD2E", 5], + ["8261", "\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D", 6, "\uAD46\uAD48\uAD4A", 5, "\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"], + ["8281", "\uAD59", 7, "\uAD62\uAD64", 7, "\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83", 4, "\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91", 10, "\uAD9E", 5, "\uADA5", 17, "\uADB8", 7, "\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9", 6, "\uADD2\uADD4", 7, "\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5", 18], + ["8341", "\uADFA\uADFB\uADFD\uADFE\uAE02", 5, "\uAE0A\uAE0C\uAE0E", 5, "\uAE15", 7], + ["8361", "\uAE1D", 18, "\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"], + ["8381", "\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57", 4, "\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71", 6, "\uAE7A\uAE7E", 5, "\uAE86", 5, "\uAE8D", 46, "\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5", 6, "\uAECE\uAED2", 5, "\uAEDA\uAEDB\uAEDD", 8], + ["8441", "\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE", 5, "\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD", 8], + ["8461", "\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11", 18], + ["8481", "\uAF24", 7, "\uAF2E\uAF2F\uAF31\uAF33\uAF35", 6, "\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A", 5, "\uAF51", 10, "\uAF5E", 5, "\uAF66", 18, "\uAF7A", 5, "\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89", 6, "\uAF92\uAF93\uAF94\uAF96", 5, "\uAF9D", 26, "\uAFBA\uAFBB\uAFBD\uAFBE"], + ["8541", "\uAFBF\uAFC1", 5, "\uAFCA\uAFCC\uAFCF", 4, "\uAFD5", 6, "\uAFDD", 4], + ["8561", "\uAFE2", 5, "\uAFEA", 5, "\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9", 6, "\uB002\uB003"], + ["8581", "\uB005", 6, "\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015", 6, "\uB01E", 9, "\uB029", 26, "\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E", 29, "\uB07E\uB07F\uB081\uB082\uB083\uB085", 6, "\uB08E\uB090\uB092", 5, "\uB09B\uB09D\uB09E\uB0A3\uB0A4"], + ["8641", "\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD", 6, "\uB0C6\uB0CA", 5, "\uB0D2"], + ["8661", "\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9", 6, "\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6", 10], + ["8681", "\uB0F1", 22, "\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E", 4, "\uB126\uB127\uB129\uB12A\uB12B\uB12D", 6, "\uB136\uB13A", 5, "\uB142\uB143\uB145\uB146\uB147\uB149", 6, "\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161", 22, "\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183", 4, "\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"], + ["8741", "\uB19E", 9, "\uB1A9", 15], + ["8761", "\uB1B9", 18, "\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"], + ["8781", "\uB1D6", 5, "\uB1DE\uB1E0", 7, "\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1", 7, "\uB1FA\uB1FC\uB1FE", 5, "\uB206\uB207\uB209\uB20A\uB20D", 6, "\uB216\uB218\uB21A", 5, "\uB221", 18, "\uB235", 6, "\uB23D", 26, "\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261", 6, "\uB26A", 4], + ["8841", "\uB26F", 4, "\uB276", 5, "\uB27D", 6, "\uB286\uB287\uB288\uB28A", 4], + ["8861", "\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B", 4, "\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"], + ["8881", "\uB2B8", 15, "\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3", 4, "\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309", 6, "\uB312\uB316", 5, "\uB31D", 54, "\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"], + ["8941", "\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379", 6, "\uB382\uB386", 5, "\uB38D"], + ["8961", "\uB38E\uB38F\uB391\uB392\uB393\uB395", 10, "\uB3A2", 5, "\uB3A9\uB3AA\uB3AB\uB3AD"], + ["8981", "\uB3AE", 21, "\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9", 18, "\uB3FD", 18, "\uB411", 6, "\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421", 6, "\uB42A\uB42C", 7, "\uB435", 15], + ["8a41", "\uB445", 10, "\uB452\uB453\uB455\uB456\uB457\uB459", 6, "\uB462\uB464\uB466"], + ["8a61", "\uB467", 4, "\uB46D", 18, "\uB481\uB482"], + ["8a81", "\uB483", 4, "\uB489", 19, "\uB49E", 5, "\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD", 7, "\uB4B6\uB4B8\uB4BA", 5, "\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9", 6, "\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6", 5, "\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7", 4, "\uB4EE\uB4F0\uB4F2", 5, "\uB4F9", 26, "\uB516\uB517\uB519\uB51A\uB51D"], + ["8b41", "\uB51E", 5, "\uB526\uB52B", 4, "\uB532\uB533\uB535\uB536\uB537\uB539", 6, "\uB542\uB546"], + ["8b61", "\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555", 6, "\uB55E\uB562", 8], + ["8b81", "\uB56B", 52, "\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6", 4, "\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5", 6, "\uB5CE\uB5D2", 5, "\uB5D9", 18, "\uB5ED", 18], + ["8c41", "\uB600", 15, "\uB612\uB613\uB615\uB616\uB617\uB619", 4], + ["8c61", "\uB61E", 6, "\uB626", 5, "\uB62D", 6, "\uB635", 5], + ["8c81", "\uB63B", 12, "\uB649", 26, "\uB665\uB666\uB667\uB669", 50, "\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5", 5, "\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2", 16], + ["8d41", "\uB6C3", 16, "\uB6D5", 8], + ["8d61", "\uB6DE", 17, "\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"], + ["8d81", "\uB6FB", 4, "\uB702\uB703\uB704\uB706", 33, "\uB72A\uB72B\uB72D\uB72E\uB731", 6, "\uB73A\uB73C", 7, "\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D", 6, "\uB756", 9, "\uB761\uB762\uB763\uB765\uB766\uB767\uB769", 6, "\uB772\uB774\uB776", 5, "\uB77E\uB77F\uB781\uB782\uB783\uB785", 6, "\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"], + ["8e41", "\uB79F\uB7A1", 6, "\uB7AA\uB7AE", 5, "\uB7B6\uB7B7\uB7B9", 8], + ["8e61", "\uB7C2", 4, "\uB7C8\uB7CA", 19], + ["8e81", "\uB7DE", 13, "\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5", 6, "\uB7FE\uB802", 4, "\uB80A\uB80B\uB80D\uB80E\uB80F\uB811", 6, "\uB81A\uB81C\uB81E", 5, "\uB826\uB827\uB829\uB82A\uB82B\uB82D", 6, "\uB836\uB83A", 5, "\uB841\uB842\uB843\uB845", 11, "\uB852\uB854", 7, "\uB85E\uB85F\uB861\uB862\uB863\uB865", 6, "\uB86E\uB870\uB872", 5, "\uB879\uB87A\uB87B\uB87D", 7], + ["8f41", "\uB885", 7, "\uB88E", 17], + ["8f61", "\uB8A0", 7, "\uB8A9", 6, "\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9", 4], + ["8f81", "\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6", 5, "\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5", 7, "\uB8DE\uB8E0\uB8E2", 5, "\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1", 6, "\uB8FA\uB8FC\uB8FE", 5, "\uB905", 18, "\uB919", 6, "\uB921", 26, "\uB93E\uB93F\uB941\uB942\uB943\uB945", 6, "\uB94D\uB94E\uB950\uB952", 5], + ["9041", "\uB95A\uB95B\uB95D\uB95E\uB95F\uB961", 6, "\uB96A\uB96C\uB96E", 5, "\uB976\uB977\uB979\uB97A\uB97B\uB97D"], + ["9061", "\uB97E", 5, "\uB986\uB988\uB98B\uB98C\uB98F", 15], + ["9081", "\uB99F", 12, "\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5", 6, "\uB9BE\uB9C0\uB9C2", 5, "\uB9CA\uB9CB\uB9CD\uB9D3", 4, "\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED", 6, "\uB9F6\uB9FB", 4, "\uBA02", 5, "\uBA09", 11, "\uBA16", 33, "\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"], + ["9141", "\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D", 6, "\uBA66\uBA6A", 5], + ["9161", "\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79", 9, "\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D", 5], + ["9181", "\uBA93", 20, "\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3", 4, "\uBABA\uBABC\uBABE", 5, "\uBAC5\uBAC6\uBAC7\uBAC9", 14, "\uBADA", 33, "\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05", 7, "\uBB0E\uBB10\uBB12", 5, "\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21", 6], + ["9241", "\uBB28\uBB2A\uBB2C", 7, "\uBB37\uBB39\uBB3A\uBB3F", 4, "\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"], + ["9261", "\uBB53\uBB55\uBB56\uBB57\uBB59", 7, "\uBB62\uBB64", 7, "\uBB6D", 4], + ["9281", "\uBB72", 21, "\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91", 18, "\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD", 6, "\uBBB5\uBBB6\uBBB8", 7, "\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9", 6, "\uBBD1\uBBD2\uBBD4", 35, "\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"], + ["9341", "\uBC03", 4, "\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"], + ["9361", "\uBC36\uBC37\uBC39", 6, "\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51", 8], + ["9381", "\uBC5A\uBC5B\uBC5C\uBC5E", 37, "\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F", 4, "\uBC96\uBC98\uBC9B", 4, "\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9", 6, "\uBCB2\uBCB6", 5, "\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5", 7, "\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD", 22, "\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"], + ["9441", "\uBCFE", 5, "\uBD06\uBD08\uBD0A", 5, "\uBD11\uBD12\uBD13\uBD15", 8], + ["9461", "\uBD1E", 5, "\uBD25", 6, "\uBD2D", 12], + ["9481", "\uBD3A", 5, "\uBD41", 6, "\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51", 6, "\uBD5A", 9, "\uBD65\uBD66\uBD67\uBD69", 22, "\uBD82\uBD83\uBD85\uBD86\uBD8B", 4, "\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D", 6, "\uBDA5", 10, "\uBDB1", 6, "\uBDB9", 24], + ["9541", "\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD", 11, "\uBDEA", 5, "\uBDF1"], + ["9561", "\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9", 6, "\uBE01\uBE02\uBE04\uBE06", 5, "\uBE0E\uBE0F\uBE11\uBE12\uBE13"], + ["9581", "\uBE15", 6, "\uBE1E\uBE20", 35, "\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F", 4, "\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B", 4, "\uBE72\uBE76", 4, "\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85", 6, "\uBE8E\uBE92", 5, "\uBE9A", 13, "\uBEA9", 14], + ["9641", "\uBEB8", 23, "\uBED2\uBED3"], + ["9661", "\uBED5\uBED6\uBED9", 6, "\uBEE1\uBEE2\uBEE6", 5, "\uBEED", 8], + ["9681", "\uBEF6", 10, "\uBF02", 5, "\uBF0A", 13, "\uBF1A\uBF1E", 33, "\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49", 6, "\uBF52\uBF53\uBF54\uBF56", 44], + ["9741", "\uBF83", 16, "\uBF95", 8], + ["9761", "\uBF9E", 17, "\uBFB1", 7], + ["9781", "\uBFB9", 11, "\uBFC6", 5, "\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5", 6, "\uBFDD\uBFDE\uBFE0\uBFE2", 89, "\uC03D\uC03E\uC03F"], + ["9841", "\uC040", 16, "\uC052", 5, "\uC059\uC05A\uC05B"], + ["9861", "\uC05D\uC05E\uC05F\uC061", 6, "\uC06A", 15], + ["9881", "\uC07A", 21, "\uC092\uC093\uC095\uC096\uC097\uC099", 6, "\uC0A2\uC0A4\uC0A6", 5, "\uC0AE\uC0B1\uC0B2\uC0B7", 4, "\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1", 6, "\uC0DA\uC0DE", 5, "\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED", 6, "\uC0F6\uC0F8\uC0FA", 5, "\uC101\uC102\uC103\uC105\uC106\uC107\uC109", 6, "\uC111\uC112\uC113\uC114\uC116", 5, "\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"], + ["9941", "\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141", 6, "\uC14A\uC14E", 5, "\uC156\uC157"], + ["9961", "\uC159\uC15A\uC15B\uC15D", 6, "\uC166\uC16A", 5, "\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"], + ["9981", "\uC17C", 8, "\uC186", 5, "\uC18F\uC191\uC192\uC193\uC195\uC197", 4, "\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1", 11, "\uC1BE", 5, "\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD", 6, "\uC1D5\uC1D6\uC1D9", 6, "\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9", 6, "\uC1F2\uC1F4", 7, "\uC1FE\uC1FF\uC201\uC202\uC203\uC205", 6, "\uC20E\uC210\uC212", 5, "\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"], + ["9a41", "\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235", 16], + ["9a61", "\uC246\uC247\uC249", 6, "\uC252\uC253\uC255\uC256\uC257\uC259", 6, "\uC261\uC262\uC263\uC264\uC266"], + ["9a81", "\uC267", 4, "\uC26E\uC26F\uC271\uC272\uC273\uC275", 6, "\uC27E\uC280\uC282", 5, "\uC28A", 5, "\uC291", 6, "\uC299\uC29A\uC29C\uC29E", 5, "\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE", 5, "\uC2B6\uC2B8\uC2BA", 33, "\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5", 5, "\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301", 6, "\uC30A\uC30B\uC30E\uC30F"], + ["9b41", "\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D", 6, "\uC326\uC327\uC32A", 8], + ["9b61", "\uC333", 17, "\uC346", 7], + ["9b81", "\uC34E", 25, "\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373", 4, "\uC37A\uC37B\uC37E", 5, "\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D", 50, "\uC3C1", 22, "\uC3DA"], + ["9c41", "\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3", 4, "\uC3EA\uC3EB\uC3EC\uC3EE", 5, "\uC3F6\uC3F7\uC3F9", 5], + ["9c61", "\uC3FF", 8, "\uC409", 6, "\uC411", 9], + ["9c81", "\uC41B", 8, "\uC425", 6, "\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435", 6, "\uC43E", 9, "\uC449", 26, "\uC466\uC467\uC469\uC46A\uC46B\uC46D", 6, "\uC476\uC477\uC478\uC47A", 5, "\uC481", 18, "\uC495", 6, "\uC49D", 12], + ["9d41", "\uC4AA", 13, "\uC4B9\uC4BA\uC4BB\uC4BD", 8], + ["9d61", "\uC4C6", 25], + ["9d81", "\uC4E0", 8, "\uC4EA", 5, "\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502", 9, "\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515", 6, "\uC51D", 10, "\uC52A\uC52B\uC52D\uC52E\uC52F\uC531", 6, "\uC53A\uC53C\uC53E", 5, "\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569", 6, "\uC572\uC576", 5, "\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"], + ["9e41", "\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1", 7, "\uC5AA", 9, "\uC5B6"], + ["9e61", "\uC5B7\uC5BA\uC5BF", 4, "\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9", 6, "\uC5E2\uC5E4\uC5E6\uC5E7"], + ["9e81", "\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611", 6, "\uC61A\uC61D", 6, "\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649", 6, "\uC652\uC656", 5, "\uC65E\uC65F\uC661", 10, "\uC66D\uC66E\uC670\uC672", 5, "\uC67A\uC67B\uC67D\uC67E\uC67F\uC681", 6, "\uC68A\uC68C\uC68E", 5, "\uC696\uC697\uC699\uC69A\uC69B\uC69D", 6, "\uC6A6"], + ["9f41", "\uC6A8\uC6AA", 5, "\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB", 4, "\uC6C2\uC6C4\uC6C6", 5, "\uC6CE"], + ["9f61", "\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5", 6, "\uC6DE\uC6DF\uC6E2", 5, "\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"], + ["9f81", "\uC6F3", 4, "\uC6FA\uC6FB\uC6FC\uC6FE", 5, "\uC706\uC707\uC709\uC70A\uC70B\uC70D", 6, "\uC716\uC718\uC71A", 5, "\uC722\uC723\uC725\uC726\uC727\uC729", 6, "\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745", 4, "\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761", 6, "\uC769\uC76A\uC76C", 7, "\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B", 4, "\uC7A2\uC7A7", 4, "\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"], + ["a041", "\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2", 5, "\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1", 6, "\uC7D9\uC7DA\uC7DB\uC7DC"], + ["a061", "\uC7DE", 5, "\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED", 13], + ["a081", "\uC7FB", 4, "\uC802\uC803\uC805\uC806\uC807\uC809\uC80B", 4, "\uC812\uC814\uC817", 4, "\uC81E\uC81F\uC821\uC822\uC823\uC825", 6, "\uC82E\uC830\uC832", 5, "\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841", 6, "\uC84A\uC84B\uC84E", 5, "\uC855", 26, "\uC872\uC873\uC875\uC876\uC877\uC879\uC87B", 4, "\uC882\uC884\uC888\uC889\uC88A\uC88E", 5, "\uC895", 7, "\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"], + ["a141", "\uC8A5\uC8A6\uC8A7\uC8A9", 18, "\uC8BE\uC8BF\uC8C0\uC8C1"], + ["a161", "\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD", 6, "\uC8D6\uC8D8\uC8DA", 5, "\uC8E2\uC8E3\uC8E5"], + ["a181", "\uC8E6", 14, "\uC8F6", 5, "\uC8FE\uC8FF\uC901\uC902\uC903\uC907", 4, "\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 9, "\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"], + ["a241", "\uC910\uC912", 5, "\uC919", 18], + ["a261", "\uC92D", 6, "\uC935", 18], + ["a281", "\uC948", 7, "\uC952\uC953\uC955\uC956\uC957\uC959", 6, "\uC962\uC964", 7, "\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"], + ["a341", "\uC971\uC972\uC973\uC975", 6, "\uC97D", 10, "\uC98A\uC98B\uC98D\uC98E\uC98F"], + ["a361", "\uC991", 6, "\uC99A\uC99C\uC99E", 16], + ["a381", "\uC9AF", 16, "\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB", 4, "\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01", 58, "\uFFE6\uFF3D", 32, "\uFFE3"], + ["a441", "\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2", 5, "\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"], + ["a461", "\uCA05\uCA06\uCA07\uCA0A\uCA0E", 5, "\uCA15\uCA16\uCA17\uCA19", 12], + ["a481", "\uCA26\uCA27\uCA28\uCA2A", 28, "\u3131", 93], + ["a541", "\uCA47", 4, "\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55", 6, "\uCA5E\uCA62", 5, "\uCA69\uCA6A"], + ["a561", "\uCA6B", 17, "\uCA7E", 5, "\uCA85\uCA86"], + ["a581", "\uCA87", 16, "\uCA99", 14, "\u2170", 9], + ["a5b0", "\u2160", 9], + ["a5c1", "\u0391", 16, "\u03A3", 6], + ["a5e1", "\u03B1", 16, "\u03C3", 6], + ["a641", "\uCAA8", 19, "\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"], + ["a661", "\uCAC6", 5, "\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA", 5, "\uCAE1", 6], + ["a681", "\uCAE8\uCAE9\uCAEA\uCAEB\uCAED", 6, "\uCAF5", 18, "\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543", 7], + ["a741", "\uCB0B", 4, "\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19", 6, "\uCB22", 7], + ["a761", "\uCB2A", 22, "\uCB42\uCB43\uCB44"], + ["a781", "\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51", 6, "\uCB5A\uCB5B\uCB5C\uCB5E", 5, "\uCB65", 7, "\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399", 9, "\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0", 9, "\u3380", 4, "\u33BA", 5, "\u3390", 4, "\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"], + ["a841", "\uCB6D", 10, "\uCB7A", 14], + ["a861", "\uCB89", 18, "\uCB9D", 6], + ["a881", "\uCBA4", 19, "\uCBB9", 11, "\xC6\xD0\xAA\u0126"], + ["a8a6", "\u0132"], + ["a8a8", "\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"], + ["a8b1", "\u3260", 27, "\u24D0", 25, "\u2460", 14, "\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"], + ["a941", "\uCBC5", 14, "\uCBD5", 10], + ["a961", "\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA", 18], + ["a981", "\uCBFD", 14, "\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15", 6, "\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200", 27, "\u249C", 25, "\u2474", 14, "\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"], + ["aa41", "\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31", 6, "\uCC3A\uCC3F", 4, "\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"], + ["aa61", "\uCC4F", 4, "\uCC56\uCC5A", 5, "\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69", 6, "\uCC71\uCC72"], + ["aa81", "\uCC73\uCC74\uCC76", 29, "\u3041", 82], + ["ab41", "\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1", 6, "\uCCAA\uCCAE", 5, "\uCCB6\uCCB7\uCCB9"], + ["ab61", "\uCCBA\uCCBB\uCCBD", 6, "\uCCC6\uCCC8\uCCCA", 5, "\uCCD1\uCCD2\uCCD3\uCCD5", 5], + ["ab81", "\uCCDB", 8, "\uCCE5", 6, "\uCCED\uCCEE\uCCEF\uCCF1", 12, "\u30A1", 85], + ["ac41", "\uCCFE\uCCFF\uCD00\uCD02", 5, "\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11", 6, "\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"], + ["ac61", "\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D", 11, "\uCD3A", 4], + ["ac81", "\uCD3F", 28, "\uCD5D\uCD5E\uCD5F\u0410", 5, "\u0401\u0416", 25], + ["acd1", "\u0430", 5, "\u0451\u0436", 25], + ["ad41", "\uCD61\uCD62\uCD63\uCD65", 6, "\uCD6E\uCD70\uCD72", 5, "\uCD79", 7], + ["ad61", "\uCD81", 6, "\uCD89", 10, "\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"], + ["ad81", "\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA", 5, "\uCDB1", 18, "\uCDC5"], + ["ae41", "\uCDC6", 5, "\uCDCD\uCDCE\uCDCF\uCDD1", 16], + ["ae61", "\uCDE2", 5, "\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1", 6, "\uCDFA\uCDFC\uCDFE", 4], + ["ae81", "\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D", 6, "\uCE15\uCE16\uCE17\uCE18\uCE1A", 5, "\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"], + ["af41", "\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36", 19], + ["af61", "\uCE4A", 13, "\uCE5A\uCE5B\uCE5D\uCE5E\uCE62", 5, "\uCE6A\uCE6C"], + ["af81", "\uCE6E", 5, "\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D", 6, "\uCE86\uCE88\uCE8A", 5, "\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"], + ["b041", "\uCE9A", 5, "\uCEA2\uCEA6", 5, "\uCEAE", 12], + ["b061", "\uCEBB", 5, "\uCEC2", 19], + ["b081", "\uCED6", 13, "\uCEE6\uCEE7\uCEE9\uCEEA\uCEED", 6, "\uCEF6\uCEFA", 5, "\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10", 7, "\uAC19", 4, "\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"], + ["b141", "\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09", 6, "\uCF12\uCF14\uCF16", 5, "\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"], + ["b161", "\uCF25", 6, "\uCF2E\uCF32", 5, "\uCF39", 11], + ["b181", "\uCF45", 14, "\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D", 6, "\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"], + ["b241", "\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79", 6, "\uCF81\uCF82\uCF83\uCF84\uCF86", 5, "\uCF8D"], + ["b261", "\uCF8E", 18, "\uCFA2", 5, "\uCFA9"], + ["b281", "\uCFAA", 5, "\uCFB1", 18, "\uCFC5", 6, "\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"], + ["b341", "\uCFCC", 19, "\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"], + ["b361", "\uCFEA", 5, "\uCFF2\uCFF4\uCFF6", 5, "\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005", 5], + ["b381", "\uD00B", 5, "\uD012", 5, "\uD019", 19, "\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB", 4, "\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"], + ["b441", "\uD02E", 5, "\uD036\uD037\uD039\uD03A\uD03B\uD03D", 6, "\uD046\uD048\uD04A", 5], + ["b461", "\uD051\uD052\uD053\uD055\uD056\uD057\uD059", 6, "\uD061", 10, "\uD06E\uD06F"], + ["b481", "\uD071\uD072\uD073\uD075", 6, "\uD07E\uD07F\uD080\uD082", 18, "\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB", 4, "\uB2F3\uB2F4\uB2F5\uB2F7", 4, "\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"], + ["b541", "\uD095", 14, "\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD", 5], + ["b561", "\uD0B3\uD0B6\uD0B8\uD0BA", 5, "\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA", 5, "\uD0D2\uD0D6", 4], + ["b581", "\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5", 6, "\uD0EE\uD0F2", 5, "\uD0F9", 11, "\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"], + ["b641", "\uD105", 7, "\uD10E", 17], + ["b661", "\uD120", 15, "\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"], + ["b681", "\uD13F\uD142\uD146", 5, "\uD14E\uD14F\uD151\uD152\uD153\uD155", 6, "\uD15E\uD160\uD162", 5, "\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"], + ["b741", "\uD16E", 13, "\uD17D", 6, "\uD185\uD186\uD187\uD189\uD18A"], + ["b761", "\uD18B", 20, "\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"], + ["b781", "\uD1A9", 6, "\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1", 14, "\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"], + ["b841", "\uD1D0", 7, "\uD1D9", 17], + ["b861", "\uD1EB", 8, "\uD1F5\uD1F6\uD1F7\uD1F9", 13], + ["b881", "\uD208\uD20A", 5, "\uD211", 24, "\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE", 4, "\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"], + ["b941", "\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235", 6, "\uD23E\uD240\uD242", 5, "\uD249\uD24A\uD24B\uD24C"], + ["b961", "\uD24D", 14, "\uD25D", 6, "\uD265\uD266\uD267\uD268"], + ["b981", "\uD269", 22, "\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14", 4, "\uBC1B", 4, "\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"], + ["ba41", "\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296", 5, "\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5", 6, "\uD2AD"], + ["ba61", "\uD2AE\uD2AF\uD2B0\uD2B2", 5, "\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3", 4, "\uD2CA\uD2CC", 5], + ["ba81", "\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD", 6, "\uD2E6", 9, "\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"], + ["bb41", "\uD2FB", 4, "\uD302\uD304\uD306", 5, "\uD30F\uD311\uD312\uD313\uD315\uD317", 4, "\uD31E\uD322\uD323"], + ["bb61", "\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331", 6, "\uD33A\uD33E", 5, "\uD346\uD347\uD348\uD349"], + ["bb81", "\uD34A", 31, "\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"], + ["bc41", "\uD36A", 17, "\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"], + ["bc61", "\uD388\uD389\uD38A\uD38B\uD38E\uD392", 5, "\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1", 6, "\uD3AA\uD3AC\uD3AE"], + ["bc81", "\uD3AF", 4, "\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD", 6, "\uD3C6\uD3C7\uD3CA", 5, "\uD3D1", 5, "\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C", 4, "\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"], + ["bd41", "\uD3D7\uD3D9", 7, "\uD3E2\uD3E4", 7, "\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"], + ["bd61", "\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402", 5, "\uD409", 13], + ["bd81", "\uD417", 5, "\uD41E", 25, "\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"], + ["be41", "\uD438", 7, "\uD441\uD442\uD443\uD445", 14], + ["be61", "\uD454", 7, "\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465", 7, "\uD46E\uD470\uD471\uD472"], + ["be81", "\uD473", 4, "\uD47A\uD47B\uD47D\uD47E\uD481\uD483", 4, "\uD48A\uD48C\uD48E", 5, "\uD495", 8, "\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4", 6, "\uC5CC\uC5CE"], + ["bf41", "\uD49E", 10, "\uD4AA", 14], + ["bf61", "\uD4B9", 18, "\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"], + ["bf81", "\uD4D6", 5, "\uD4DD\uD4DE\uD4E0", 7, "\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1", 6, "\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC", 5, "\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"], + ["c041", "\uD4FE", 5, "\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D", 6, "\uD516\uD518", 5], + ["c061", "\uD51E", 25], + ["c081", "\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545", 6, "\uD54E\uD550\uD552", 5, "\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751", 7, "\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"], + ["c141", "\uD564\uD566\uD567\uD56A\uD56C\uD56E", 5, "\uD576\uD577\uD579\uD57A\uD57B\uD57D", 6, "\uD586\uD58A\uD58B"], + ["c161", "\uD58C\uD58D\uD58E\uD58F\uD591", 19, "\uD5A6\uD5A7"], + ["c181", "\uD5A8", 31, "\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"], + ["c241", "\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3", 4, "\uD5DA\uD5DC\uD5DE", 5, "\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"], + ["c261", "\uD5EF", 4, "\uD5F6\uD5F8\uD5FA", 5, "\uD602\uD603\uD605\uD606\uD607\uD609", 6, "\uD612"], + ["c281", "\uD616", 5, "\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625", 7, "\uD62E", 9, "\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"], + ["c341", "\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D", 4], + ["c361", "\uD662", 4, "\uD668\uD66A", 5, "\uD672\uD673\uD675", 11], + ["c381", "\uD681\uD682\uD684\uD686", 5, "\uD68E\uD68F\uD691\uD692\uD693\uD695", 7, "\uD69E\uD6A0\uD6A2", 5, "\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"], + ["c441", "\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1", 7, "\uD6BA\uD6BC", 7, "\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"], + ["c461", "\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA", 5, "\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9", 4], + ["c481", "\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6", 5, "\uD6FE\uD6FF\uD701\uD702\uD703\uD705", 11, "\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"], + ["c541", "\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721", 6, "\uD72A\uD72C\uD72E", 5, "\uD736\uD737\uD739"], + ["c561", "\uD73A\uD73B\uD73D", 6, "\uD745\uD746\uD748\uD74A", 5, "\uD752\uD753\uD755\uD75A", 4], + ["c581", "\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775", 6, "\uD77E\uD77F\uD780\uD782", 5, "\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"], + ["c641", "\uD78D\uD78E\uD78F\uD791", 6, "\uD79A\uD79C\uD79E", 5], + ["c6a1", "\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"], + ["c7a1", "\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"], + ["c8a1", "\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"], + ["caa1", "\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"], + ["cba1", "\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"], + ["cca1", "\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"], + ["cda1", "\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"], + ["cea1", "\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"], + ["cfa1", "\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"], + ["d0a1", "\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"], + ["d1a1", "\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E", 5, "\u90A3\uF914", 4, "\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"], + ["d2a1", "\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928", 4, "\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933", 5, "\u99D1\uF939", 10, "\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A", 7, "\u5AE9\u8A25\u677B\u7D10\uF952", 5, "\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"], + ["d3a1", "\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"], + ["d4a1", "\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"], + ["d5a1", "\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"], + ["d6a1", "\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"], + ["d7a1", "\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"], + ["d8a1", "\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"], + ["d9a1", "\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"], + ["daa1", "\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"], + ["dba1", "\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"], + ["dca1", "\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"], + ["dda1", "\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"], + ["dea1", "\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"], + ["dfa1", "\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"], + ["e0a1", "\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"], + ["e1a1", "\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"], + ["e2a1", "\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"], + ["e3a1", "\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"], + ["e4a1", "\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"], + ["e5a1", "\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"], + ["e6a1", "\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"], + ["e7a1", "\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"], + ["e8a1", "\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"], + ["e9a1", "\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"], + ["eaa1", "\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"], + ["eba1", "\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"], + ["eca1", "\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"], + ["eda1", "\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"], + ["eea1", "\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"], + ["efa1", "\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"], + ["f0a1", "\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"], + ["f1a1", "\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"], + ["f2a1", "\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"], + ["f3a1", "\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"], + ["f4a1", "\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"], + ["f5a1", "\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"], + ["f6a1", "\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"], + ["f7a1", "\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"], + ["f8a1", "\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"], + ["f9a1", "\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"], + ["faa1", "\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"], + ["fba1", "\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"], + ["fca1", "\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"], + ["fda1", "\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"] + ]; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp950.json +var require_cp950 = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp950.json"(exports2, module2) { + module2.exports = [ + ["0", "\0", 127], + ["a140", "\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"], + ["a1a1", "\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62", 4, "\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"], + ["a240", "\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581", 7, "\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"], + ["a2a1", "\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10", 9, "\u2160", 9, "\u3021", 8, "\u5341\u5344\u5345\uFF21", 25, "\uFF41", 21], + ["a340", "\uFF57\uFF58\uFF59\uFF5A\u0391", 16, "\u03A3", 6, "\u03B1", 16, "\u03C3", 6, "\u3105", 10], + ["a3a1", "\u3110", 25, "\u02D9\u02C9\u02CA\u02C7\u02CB"], + ["a3e1", "\u20AC"], + ["a440", "\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"], + ["a4a1", "\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"], + ["a540", "\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"], + ["a5a1", "\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"], + ["a640", "\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"], + ["a6a1", "\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"], + ["a740", "\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"], + ["a7a1", "\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"], + ["a840", "\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"], + ["a8a1", "\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"], + ["a940", "\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"], + ["a9a1", "\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"], + ["aa40", "\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"], + ["aaa1", "\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"], + ["ab40", "\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"], + ["aba1", "\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"], + ["ac40", "\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"], + ["aca1", "\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"], + ["ad40", "\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"], + ["ada1", "\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"], + ["ae40", "\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"], + ["aea1", "\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"], + ["af40", "\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"], + ["afa1", "\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"], + ["b040", "\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"], + ["b0a1", "\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"], + ["b140", "\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"], + ["b1a1", "\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"], + ["b240", "\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"], + ["b2a1", "\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"], + ["b340", "\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"], + ["b3a1", "\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"], + ["b440", "\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"], + ["b4a1", "\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"], + ["b540", "\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"], + ["b5a1", "\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"], + ["b640", "\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"], + ["b6a1", "\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"], + ["b740", "\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"], + ["b7a1", "\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"], + ["b840", "\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"], + ["b8a1", "\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"], + ["b940", "\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"], + ["b9a1", "\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"], + ["ba40", "\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"], + ["baa1", "\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"], + ["bb40", "\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"], + ["bba1", "\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"], + ["bc40", "\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"], + ["bca1", "\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"], + ["bd40", "\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"], + ["bda1", "\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"], + ["be40", "\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"], + ["bea1", "\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"], + ["bf40", "\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"], + ["bfa1", "\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"], + ["c040", "\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"], + ["c0a1", "\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"], + ["c140", "\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"], + ["c1a1", "\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"], + ["c240", "\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"], + ["c2a1", "\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"], + ["c340", "\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"], + ["c3a1", "\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"], + ["c440", "\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"], + ["c4a1", "\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"], + ["c540", "\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"], + ["c5a1", "\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"], + ["c640", "\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"], + ["c940", "\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"], + ["c9a1", "\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"], + ["ca40", "\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"], + ["caa1", "\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"], + ["cb40", "\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"], + ["cba1", "\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"], + ["cc40", "\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"], + ["cca1", "\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"], + ["cd40", "\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"], + ["cda1", "\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"], + ["ce40", "\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"], + ["cea1", "\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"], + ["cf40", "\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"], + ["cfa1", "\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"], + ["d040", "\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"], + ["d0a1", "\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"], + ["d140", "\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"], + ["d1a1", "\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"], + ["d240", "\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"], + ["d2a1", "\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"], + ["d340", "\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"], + ["d3a1", "\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"], + ["d440", "\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"], + ["d4a1", "\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"], + ["d540", "\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"], + ["d5a1", "\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"], + ["d640", "\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"], + ["d6a1", "\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"], + ["d740", "\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"], + ["d7a1", "\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"], + ["d840", "\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"], + ["d8a1", "\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"], + ["d940", "\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"], + ["d9a1", "\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"], + ["da40", "\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"], + ["daa1", "\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"], + ["db40", "\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"], + ["dba1", "\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"], + ["dc40", "\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"], + ["dca1", "\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"], + ["dd40", "\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"], + ["dda1", "\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"], + ["de40", "\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"], + ["dea1", "\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"], + ["df40", "\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"], + ["dfa1", "\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"], + ["e040", "\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"], + ["e0a1", "\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"], + ["e140", "\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"], + ["e1a1", "\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"], + ["e240", "\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"], + ["e2a1", "\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"], + ["e340", "\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"], + ["e3a1", "\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"], + ["e440", "\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"], + ["e4a1", "\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"], + ["e540", "\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"], + ["e5a1", "\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"], + ["e640", "\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"], + ["e6a1", "\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"], + ["e740", "\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"], + ["e7a1", "\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"], + ["e840", "\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"], + ["e8a1", "\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"], + ["e940", "\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"], + ["e9a1", "\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"], + ["ea40", "\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"], + ["eaa1", "\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"], + ["eb40", "\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"], + ["eba1", "\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"], + ["ec40", "\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"], + ["eca1", "\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"], + ["ed40", "\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"], + ["eda1", "\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"], + ["ee40", "\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"], + ["eea1", "\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"], + ["ef40", "\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"], + ["efa1", "\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"], + ["f040", "\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"], + ["f0a1", "\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"], + ["f140", "\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"], + ["f1a1", "\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"], + ["f240", "\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"], + ["f2a1", "\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"], + ["f340", "\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"], + ["f3a1", "\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"], + ["f440", "\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"], + ["f4a1", "\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"], + ["f540", "\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"], + ["f5a1", "\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"], + ["f640", "\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"], + ["f6a1", "\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"], + ["f740", "\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"], + ["f7a1", "\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"], + ["f840", "\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"], + ["f8a1", "\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"], + ["f940", "\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"], + ["f9a1", "\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"] + ]; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/big5-added.json +var require_big5_added = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/big5-added.json"(exports2, module2) { + module2.exports = [ + ["8740", "\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"], + ["8767", "\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"], + ["87a1", "\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"], + ["8840", "\u31C0", 4, "\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"], + ["88a1", "\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"], + ["8940", "\u{2A3A9}\u{21145}"], + ["8943", "\u650A"], + ["8946", "\u4E3D\u6EDD\u9D4E\u91DF"], + ["894c", "\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"], + ["89a1", "\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"], + ["89ab", "\u918C\u78B8\u915E\u80BC"], + ["89b0", "\u8D0B\u80F6\u{209E7}"], + ["89b5", "\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"], + ["89c1", "\u6E9A\u823E\u7519"], + ["89c5", "\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"], + ["8a40", "\u{27D84}\u5525"], + ["8a43", "\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"], + ["8a64", "\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"], + ["8a76", "\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"], + ["8aa1", "\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"], + ["8aac", "\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"], + ["8ab2", "\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"], + ["8abb", "\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"], + ["8ac9", "\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"], + ["8ace", "\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"], + ["8adf", "\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"], + ["8af6", "\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"], + ["8b40", "\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"], + ["8b55", "\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"], + ["8ba1", "\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"], + ["8bde", "\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"], + ["8c40", "\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"], + ["8ca1", "\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"], + ["8ca7", "\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"], + ["8cc9", "\u9868\u676B\u4276\u573D"], + ["8cce", "\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"], + ["8ce6", "\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"], + ["8d40", "\u{20B9F}"], + ["8d42", "\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"], + ["8da1", "\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"], + ["8e40", "\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"], + ["8ea1", "\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"], + ["8f40", "\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"], + ["8fa1", "\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"], + ["9040", "\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"], + ["90a1", "\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"], + ["9140", "\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"], + ["91a1", "\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"], + ["9240", "\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"], + ["92a1", "\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"], + ["9340", "\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"], + ["93a1", "\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"], + ["9440", "\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"], + ["94a1", "\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"], + ["9540", "\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"], + ["95a1", "\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"], + ["9640", "\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"], + ["96a1", "\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"], + ["9740", "\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"], + ["97a1", "\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"], + ["9840", "\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"], + ["98a1", "\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"], + ["9940", "\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"], + ["99a1", "\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"], + ["9a40", "\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"], + ["9aa1", "\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"], + ["9b40", "\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"], + ["9b62", "\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"], + ["9ba1", "\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"], + ["9c40", "\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"], + ["9ca1", "\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"], + ["9d40", "\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"], + ["9da1", "\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"], + ["9e40", "\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"], + ["9ea1", "\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"], + ["9ead", "\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"], + ["9ec5", "\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"], + ["9ef5", "\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"], + ["9f40", "\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"], + ["9f4f", "\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"], + ["9fa1", "\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"], + ["9fae", "\u9159\u9681\u915C"], + ["9fb2", "\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"], + ["9fc1", "\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"], + ["9fc9", "\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"], + ["9fdb", "\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"], + ["9fe7", "\u6BFA\u8818\u7F78"], + ["9feb", "\u5620\u{2A64A}\u8E77\u9F53"], + ["9ff0", "\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"], + ["a040", "\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"], + ["a055", "\u{2183B}\u{26E05}"], + ["a058", "\u8A7E\u{2251B}"], + ["a05b", "\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"], + ["a063", "\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"], + ["a073", "\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"], + ["a0a1", "\u5D57\u{28BC2}\u8FDA\u{28E39}"], + ["a0a6", "\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"], + ["a0ae", "\u77FE"], + ["a0b0", "\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"], + ["a0d4", "\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"], + ["a0e2", "\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"], + ["a3c0", "\u2400", 31, "\u2421"], + ["c6a1", "\u2460", 9, "\u2474", 9, "\u2170", 9, "\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041", 23], + ["c740", "\u3059", 58, "\u30A1\u30A2\u30A3\u30A4"], + ["c7a1", "\u30A5", 81, "\u0410", 5, "\u0401\u0416", 4], + ["c840", "\u041B", 26, "\u0451\u0436", 25, "\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"], + ["c8a1", "\u9FB0\u5188\u9FB1\u{27607}"], + ["c8cd", "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"], + ["c8f5", "\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"], + ["f9fe", "\uFFED"], + ["fa40", "\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"], + ["faa1", "\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"], + ["fb40", "\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"], + ["fba1", "\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"], + ["fc40", "\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"], + ["fca1", "\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"], + ["fd40", "\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"], + ["fda1", "\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"], + ["fe40", "\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"], + ["fea1", "\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"] + ]; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/dbcs-data.js +var require_dbcs_data = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/dbcs-data.js"(exports2, module2) { + "use strict"; + module2.exports = { + // == Japanese/ShiftJIS ==================================================== + // All japanese encodings are based on JIS X set of standards: + // JIS X 0201 - Single-byte encoding of ASCII + ¥ + Kana chars at 0xA1-0xDF. + // JIS X 0208 - Main set of 6879 characters, placed in 94x94 plane, to be encoded by 2 bytes. + // Has several variations in 1978, 1983, 1990 and 1997. + // JIS X 0212 - Supplementary plane of 6067 chars in 94x94 plane. 1990. Effectively dead. + // JIS X 0213 - Extension and modern replacement of 0208 and 0212. Total chars: 11233. + // 2 planes, first is superset of 0208, second - revised 0212. + // Introduced in 2000, revised 2004. Some characters are in Unicode Plane 2 (0x2xxxx) + // Byte encodings are: + // * Shift_JIS: Compatible with 0201, uses not defined chars in top half as lead bytes for double-byte + // encoding of 0208. Lead byte ranges: 0x81-0x9F, 0xE0-0xEF; Trail byte ranges: 0x40-0x7E, 0x80-0x9E, 0x9F-0xFC. + // Windows CP932 is a superset of Shift_JIS. Some companies added more chars, notably KDDI. + // * EUC-JP: Up to 3 bytes per character. Used mostly on *nixes. + // 0x00-0x7F - lower part of 0201 + // 0x8E, 0xA1-0xDF - upper part of 0201 + // (0xA1-0xFE)x2 - 0208 plane (94x94). + // 0x8F, (0xA1-0xFE)x2 - 0212 plane (94x94). + // * JIS X 208: 7-bit, direct encoding of 0208. Byte ranges: 0x21-0x7E (94 values). Uncommon. + // Used as-is in ISO2022 family. + // * ISO2022-JP: Stateful encoding, with escape sequences to switch between ASCII, + // 0201-1976 Roman, 0208-1978, 0208-1983. + // * ISO2022-JP-1: Adds esc seq for 0212-1990. + // * ISO2022-JP-2: Adds esc seq for GB2313-1980, KSX1001-1992, ISO8859-1, ISO8859-7. + // * ISO2022-JP-3: Adds esc seq for 0201-1976 Kana set, 0213-2000 Planes 1, 2. + // * ISO2022-JP-2004: Adds 0213-2004 Plane 1. + // + // After JIS X 0213 appeared, Shift_JIS-2004, EUC-JISX0213 and ISO2022-JP-2004 followed, with just changing the planes. + // + // Overall, it seems that it's a mess :( http://www8.plala.or.jp/tkubota1/unicode-symbols-map2.html + "shiftjis": { + type: "_dbcs", + table: function() { + return require_shiftjis(); + }, + encodeAdd: { "\xA5": 92, "\u203E": 126 }, + encodeSkipVals: [{ from: 60736, to: 63808 }] + }, + "csshiftjis": "shiftjis", + "mskanji": "shiftjis", + "sjis": "shiftjis", + "windows31j": "shiftjis", + "ms31j": "shiftjis", + "xsjis": "shiftjis", + "windows932": "shiftjis", + "ms932": "shiftjis", + "932": "shiftjis", + "cp932": "shiftjis", + "eucjp": { + type: "_dbcs", + table: function() { + return require_eucjp(); + }, + encodeAdd: { "\xA5": 92, "\u203E": 126 } + }, + // TODO: KDDI extension to Shift_JIS + // TODO: IBM CCSID 942 = CP932, but F0-F9 custom chars and other char changes. + // TODO: IBM CCSID 943 = Shift_JIS = CP932 with original Shift_JIS lower 128 chars. + // == Chinese/GBK ========================================================== + // http://en.wikipedia.org/wiki/GBK + // We mostly implement W3C recommendation: https://www.w3.org/TR/encoding/#gbk-encoder + // Oldest GB2312 (1981, ~7600 chars) is a subset of CP936 + "gb2312": "cp936", + "gb231280": "cp936", + "gb23121980": "cp936", + "csgb2312": "cp936", + "csiso58gb231280": "cp936", + "euccn": "cp936", + // Microsoft's CP936 is a subset and approximation of GBK. + "windows936": "cp936", + "ms936": "cp936", + "936": "cp936", + "cp936": { + type: "_dbcs", + table: function() { + return require_cp936(); + } + }, + // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other. + "gbk": { + type: "_dbcs", + table: function() { + return require_cp936().concat(require_gbk_added()); + } + }, + "xgbk": "gbk", + "isoir58": "gbk", + // GB18030 is an algorithmic extension of GBK. + // Main source: https://www.w3.org/TR/encoding/#gbk-encoder + // http://icu-project.org/docs/papers/gb18030.html + // http://source.icu-project.org/repos/icu/data/trunk/charset/data/xml/gb-18030-2000.xml + // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0 + "gb18030": { + type: "_dbcs", + table: function() { + return require_cp936().concat(require_gbk_added()); + }, + gb18030: function() { + return require_gb18030_ranges(); + }, + encodeSkipVals: [128], + encodeAdd: { "\u20AC": 41699 } + }, + "chinese": "gb18030", + // == Korean =============================================================== + // EUC-KR, KS_C_5601 and KS X 1001 are exactly the same. + "windows949": "cp949", + "ms949": "cp949", + "949": "cp949", + "cp949": { + type: "_dbcs", + table: function() { + return require_cp949(); + } + }, + "cseuckr": "cp949", + "csksc56011987": "cp949", + "euckr": "cp949", + "isoir149": "cp949", + "korean": "cp949", + "ksc56011987": "cp949", + "ksc56011989": "cp949", + "ksc5601": "cp949", + // == Big5/Taiwan/Hong Kong ================================================ + // There are lots of tables for Big5 and cp950. Please see the following links for history: + // http://moztw.org/docs/big5/ http://www.haible.de/bruno/charsets/conversion-tables/Big5.html + // Variations, in roughly number of defined chars: + // * Windows CP 950: Microsoft variant of Big5. Canonical: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP950.TXT + // * Windows CP 951: Microsoft variant of Big5-HKSCS-2001. Seems to be never public. http://me.abelcheung.org/articles/research/what-is-cp951/ + // * Big5-2003 (Taiwan standard) almost superset of cp950. + // * Unicode-at-on (UAO) / Mozilla 1.8. Falling out of use on the Web. Not supported by other browsers. + // * Big5-HKSCS (-2001, -2004, -2008). Hong Kong standard. + // many unicode code points moved from PUA to Supplementary plane (U+2XXXX) over the years. + // Plus, it has 4 combining sequences. + // Seems that Mozilla refused to support it for 10 yrs. https://bugzilla.mozilla.org/show_bug.cgi?id=162431 https://bugzilla.mozilla.org/show_bug.cgi?id=310299 + // because big5-hkscs is the only encoding to include astral characters in non-algorithmic way. + // Implementations are not consistent within browsers; sometimes labeled as just big5. + // MS Internet Explorer switches from big5 to big5-hkscs when a patch applied. + // Great discussion & recap of what's going on https://bugzilla.mozilla.org/show_bug.cgi?id=912470#c31 + // In the encoder, it might make sense to support encoding old PUA mappings to Big5 bytes seq-s. + // Official spec: http://www.ogcio.gov.hk/en/business/tech_promotion/ccli/terms/doc/2003cmp_2008.txt + // http://www.ogcio.gov.hk/tc/business/tech_promotion/ccli/terms/doc/hkscs-2008-big5-iso.txt + // + // Current understanding of how to deal with Big5(-HKSCS) is in the Encoding Standard, http://encoding.spec.whatwg.org/#big5-encoder + // Unicode mapping (http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT) is said to be wrong. + "windows950": "cp950", + "ms950": "cp950", + "950": "cp950", + "cp950": { + type: "_dbcs", + table: function() { + return require_cp950(); + } + }, + // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus. + "big5": "big5hkscs", + "big5hkscs": { + type: "_dbcs", + table: function() { + return require_cp950().concat(require_big5_added()); + }, + encodeSkipVals: [41676] + }, + "cnbig5": "big5hkscs", + "csbig5": "big5hkscs", + "xxbig5": "big5hkscs" + }; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/index.js +var require_encodings = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/index.js"(exports2, module2) { + "use strict"; + var modules = [ + require_internal4(), + require_utf16(), + require_utf7(), + require_sbcs_codec(), + require_sbcs_data(), + require_sbcs_data_generated(), + require_dbcs_codec(), + require_dbcs_data() + ]; + for (i = 0; i < modules.length; i++) { + module2 = modules[i]; + for (enc in module2) + if (Object.prototype.hasOwnProperty.call(module2, enc)) + exports2[enc] = module2[enc]; + } + var module2; + var enc; + var i; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/streams.js +var require_streams = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/streams.js"(exports2, module2) { + "use strict"; + var Buffer2 = require("buffer").Buffer; + var Transform = require("stream").Transform; + module2.exports = function(iconv) { + iconv.encodeStream = function encodeStream(encoding, options2) { + return new IconvLiteEncoderStream(iconv.getEncoder(encoding, options2), options2); + }; + iconv.decodeStream = function decodeStream(encoding, options2) { + return new IconvLiteDecoderStream(iconv.getDecoder(encoding, options2), options2); + }; + iconv.supportsStreams = true; + iconv.IconvLiteEncoderStream = IconvLiteEncoderStream; + iconv.IconvLiteDecoderStream = IconvLiteDecoderStream; + iconv._collect = IconvLiteDecoderStream.prototype.collect; + }; + function IconvLiteEncoderStream(conv, options2) { + this.conv = conv; + options2 = options2 || {}; + options2.decodeStrings = false; + Transform.call(this, options2); + } + IconvLiteEncoderStream.prototype = Object.create(Transform.prototype, { + constructor: { value: IconvLiteEncoderStream } + }); + IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) { + if (typeof chunk != "string") + return done(new Error("Iconv encoding stream needs strings as its input.")); + try { + var res = this.conv.write(chunk); + if (res && res.length) + this.push(res); + done(); + } catch (e) { + done(e); + } + }; + IconvLiteEncoderStream.prototype._flush = function(done) { + try { + var res = this.conv.end(); + if (res && res.length) + this.push(res); + done(); + } catch (e) { + done(e); + } + }; + IconvLiteEncoderStream.prototype.collect = function(cb) { + var chunks = []; + this.on("error", cb); + this.on("data", function(chunk) { + chunks.push(chunk); + }); + this.on("end", function() { + cb(null, Buffer2.concat(chunks)); + }); + return this; + }; + function IconvLiteDecoderStream(conv, options2) { + this.conv = conv; + options2 = options2 || {}; + options2.encoding = this.encoding = "utf8"; + Transform.call(this, options2); + } + IconvLiteDecoderStream.prototype = Object.create(Transform.prototype, { + constructor: { value: IconvLiteDecoderStream } + }); + IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) { + if (!Buffer2.isBuffer(chunk)) + return done(new Error("Iconv decoding stream needs buffers as its input.")); + try { + var res = this.conv.write(chunk); + if (res && res.length) + this.push(res, this.encoding); + done(); + } catch (e) { + done(e); + } + }; + IconvLiteDecoderStream.prototype._flush = function(done) { + try { + var res = this.conv.end(); + if (res && res.length) + this.push(res, this.encoding); + done(); + } catch (e) { + done(e); + } + }; + IconvLiteDecoderStream.prototype.collect = function(cb) { + var res = ""; + this.on("error", cb); + this.on("data", function(chunk) { + res += chunk; + }); + this.on("end", function() { + cb(null, res); + }); + return this; + }; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/extend-node.js +var require_extend_node = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/extend-node.js"(exports2, module2) { + "use strict"; + var Buffer2 = require("buffer").Buffer; + module2.exports = function(iconv) { + var original = void 0; + iconv.supportsNodeEncodingsExtension = !(Buffer2.from || new Buffer2(0) instanceof Uint8Array); + iconv.extendNodeEncodings = function extendNodeEncodings() { + if (original) + return; + original = {}; + if (!iconv.supportsNodeEncodingsExtension) { + console.error("ACTION NEEDED: require('iconv-lite').extendNodeEncodings() is not supported in your version of Node"); + console.error("See more info at https://github.com/ashtuchkin/iconv-lite/wiki/Node-v4-compatibility"); + return; + } + var nodeNativeEncodings = { + "hex": true, + "utf8": true, + "utf-8": true, + "ascii": true, + "binary": true, + "base64": true, + "ucs2": true, + "ucs-2": true, + "utf16le": true, + "utf-16le": true + }; + Buffer2.isNativeEncoding = function(enc) { + return enc && nodeNativeEncodings[enc.toLowerCase()]; + }; + var SlowBuffer = require("buffer").SlowBuffer; + original.SlowBufferToString = SlowBuffer.prototype.toString; + SlowBuffer.prototype.toString = function(encoding, start4, end) { + encoding = String(encoding || "utf8").toLowerCase(); + if (Buffer2.isNativeEncoding(encoding)) + return original.SlowBufferToString.call(this, encoding, start4, end); + if (typeof start4 == "undefined") + start4 = 0; + if (typeof end == "undefined") + end = this.length; + return iconv.decode(this.slice(start4, end), encoding); + }; + original.SlowBufferWrite = SlowBuffer.prototype.write; + SlowBuffer.prototype.write = function(string, offset, length, encoding) { + if (isFinite(offset)) { + if (!isFinite(length)) { + encoding = length; + length = void 0; + } + } else { + var swap = encoding; + encoding = offset; + offset = length; + length = swap; + } + offset = +offset || 0; + var remaining = this.length - offset; + if (!length) { + length = remaining; + } else { + length = +length; + if (length > remaining) { + length = remaining; + } + } + encoding = String(encoding || "utf8").toLowerCase(); + if (Buffer2.isNativeEncoding(encoding)) + return original.SlowBufferWrite.call(this, string, offset, length, encoding); + if (string.length > 0 && (length < 0 || offset < 0)) + throw new RangeError("attempt to write beyond buffer bounds"); + var buf = iconv.encode(string, encoding); + if (buf.length < length) + length = buf.length; + buf.copy(this, offset, 0, length); + return length; + }; + original.BufferIsEncoding = Buffer2.isEncoding; + Buffer2.isEncoding = function(encoding) { + return Buffer2.isNativeEncoding(encoding) || iconv.encodingExists(encoding); + }; + original.BufferByteLength = Buffer2.byteLength; + Buffer2.byteLength = SlowBuffer.byteLength = function(str, encoding) { + encoding = String(encoding || "utf8").toLowerCase(); + if (Buffer2.isNativeEncoding(encoding)) + return original.BufferByteLength.call(this, str, encoding); + return iconv.encode(str, encoding).length; + }; + original.BufferToString = Buffer2.prototype.toString; + Buffer2.prototype.toString = function(encoding, start4, end) { + encoding = String(encoding || "utf8").toLowerCase(); + if (Buffer2.isNativeEncoding(encoding)) + return original.BufferToString.call(this, encoding, start4, end); + if (typeof start4 == "undefined") + start4 = 0; + if (typeof end == "undefined") + end = this.length; + return iconv.decode(this.slice(start4, end), encoding); + }; + original.BufferWrite = Buffer2.prototype.write; + Buffer2.prototype.write = function(string, offset, length, encoding) { + var _offset = offset, _length = length, _encoding = encoding; + if (isFinite(offset)) { + if (!isFinite(length)) { + encoding = length; + length = void 0; + } + } else { + var swap = encoding; + encoding = offset; + offset = length; + length = swap; + } + encoding = String(encoding || "utf8").toLowerCase(); + if (Buffer2.isNativeEncoding(encoding)) + return original.BufferWrite.call(this, string, _offset, _length, _encoding); + offset = +offset || 0; + var remaining = this.length - offset; + if (!length) { + length = remaining; + } else { + length = +length; + if (length > remaining) { + length = remaining; + } + } + if (string.length > 0 && (length < 0 || offset < 0)) + throw new RangeError("attempt to write beyond buffer bounds"); + var buf = iconv.encode(string, encoding); + if (buf.length < length) + length = buf.length; + buf.copy(this, offset, 0, length); + return length; + }; + if (iconv.supportsStreams) { + var Readable3 = require("stream").Readable; + original.ReadableSetEncoding = Readable3.prototype.setEncoding; + Readable3.prototype.setEncoding = function setEncoding(enc, options2) { + this._readableState.decoder = iconv.getDecoder(enc, options2); + this._readableState.encoding = enc; + }; + Readable3.prototype.collect = iconv._collect; + } + }; + iconv.undoExtendNodeEncodings = function undoExtendNodeEncodings() { + if (!iconv.supportsNodeEncodingsExtension) + return; + if (!original) + throw new Error("require('iconv-lite').undoExtendNodeEncodings(): Nothing to undo; extendNodeEncodings() is not called."); + delete Buffer2.isNativeEncoding; + var SlowBuffer = require("buffer").SlowBuffer; + SlowBuffer.prototype.toString = original.SlowBufferToString; + SlowBuffer.prototype.write = original.SlowBufferWrite; + Buffer2.isEncoding = original.BufferIsEncoding; + Buffer2.byteLength = original.BufferByteLength; + Buffer2.prototype.toString = original.BufferToString; + Buffer2.prototype.write = original.BufferWrite; + if (iconv.supportsStreams) { + var Readable3 = require("stream").Readable; + Readable3.prototype.setEncoding = original.ReadableSetEncoding; + delete Readable3.prototype.collect; + } + original = void 0; + }; + }; + } +}); + +// ../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/index.js +var require_lib7 = __commonJS({ + "../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/index.js"(exports2, module2) { + "use strict"; + var Buffer2 = require_safer().Buffer; + var bomHandling = require_bom_handling(); + var iconv = module2.exports; + iconv.encodings = null; + iconv.defaultCharUnicode = "\uFFFD"; + iconv.defaultCharSingleByte = "?"; + iconv.encode = function encode3(str, encoding, options2) { + str = "" + (str || ""); + var encoder = iconv.getEncoder(encoding, options2); + var res = encoder.write(str); + var trail = encoder.end(); + return trail && trail.length > 0 ? Buffer2.concat([res, trail]) : res; + }; + iconv.decode = function decode(buf, encoding, options2) { + if (typeof buf === "string") { + if (!iconv.skipDecodeWarning) { + console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"); + iconv.skipDecodeWarning = true; + } + buf = Buffer2.from("" + (buf || ""), "binary"); + } + var decoder = iconv.getDecoder(encoding, options2); + var res = decoder.write(buf); + var trail = decoder.end(); + return trail ? res + trail : res; + }; + iconv.encodingExists = function encodingExists(enc) { + try { + iconv.getCodec(enc); + return true; + } catch (e) { + return false; + } + }; + iconv.toEncoding = iconv.encode; + iconv.fromEncoding = iconv.decode; + iconv._codecDataCache = {}; + iconv.getCodec = function getCodec(encoding) { + if (!iconv.encodings) + iconv.encodings = require_encodings(); + var enc = iconv._canonicalizeEncoding(encoding); + var codecOptions = {}; + while (true) { + var codec = iconv._codecDataCache[enc]; + if (codec) + return codec; + var codecDef = iconv.encodings[enc]; + switch (typeof codecDef) { + case "string": + enc = codecDef; + break; + case "object": + for (var key in codecDef) + codecOptions[key] = codecDef[key]; + if (!codecOptions.encodingName) + codecOptions.encodingName = enc; + enc = codecDef.type; + break; + case "function": + if (!codecOptions.encodingName) + codecOptions.encodingName = enc; + codec = new codecDef(codecOptions, iconv); + iconv._codecDataCache[codecOptions.encodingName] = codec; + return codec; + default: + throw new Error("Encoding not recognized: '" + encoding + "' (searched as: '" + enc + "')"); + } + } + }; + iconv._canonicalizeEncoding = function(encoding) { + return ("" + encoding).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, ""); + }; + iconv.getEncoder = function getEncoder(encoding, options2) { + var codec = iconv.getCodec(encoding), encoder = new codec.encoder(options2, codec); + if (codec.bomAware && options2 && options2.addBOM) + encoder = new bomHandling.PrependBOM(encoder, options2); + return encoder; + }; + iconv.getDecoder = function getDecoder(encoding, options2) { + var codec = iconv.getCodec(encoding), decoder = new codec.decoder(options2, codec); + if (codec.bomAware && !(options2 && options2.stripBOM === false)) + decoder = new bomHandling.StripBOM(decoder, options2); + return decoder; + }; + var nodeVer = typeof process !== "undefined" && process.versions && process.versions.node; + if (nodeVer) { + nodeVerArr = nodeVer.split(".").map(Number); + if (nodeVerArr[0] > 0 || nodeVerArr[1] >= 10) { + require_streams()(iconv); + } + require_extend_node()(iconv); + } + var nodeVerArr; + if (false) { + console.error("iconv-lite warning: javascript files use encoding different from utf-8. See https://github.com/ashtuchkin/iconv-lite/wiki/Javascript-source-file-encodings for more info."); + } + } +}); + +// ../node_modules/.pnpm/unpipe@1.0.0/node_modules/unpipe/index.js +var require_unpipe = __commonJS({ + "../node_modules/.pnpm/unpipe@1.0.0/node_modules/unpipe/index.js"(exports2, module2) { + "use strict"; + module2.exports = unpipe; + function hasPipeDataListeners(stream5) { + var listeners = stream5.listeners("data"); + for (var i = 0; i < listeners.length; i++) { + if (listeners[i].name === "ondata") { + return true; + } + } + return false; + } + function unpipe(stream5) { + if (!stream5) { + throw new TypeError("argument stream is required"); + } + if (typeof stream5.unpipe === "function") { + stream5.unpipe(); + return; + } + if (!hasPipeDataListeners(stream5)) { + return; + } + var listener; + var listeners = stream5.listeners("close"); + for (var i = 0; i < listeners.length; i++) { + listener = listeners[i]; + if (listener.name !== "cleanup" && listener.name !== "onclose") { + continue; + } + listener.call(stream5); + } + } + } +}); + +// ../node_modules/.pnpm/raw-body@2.5.1/node_modules/raw-body/index.js +var require_raw_body = __commonJS({ + "../node_modules/.pnpm/raw-body@2.5.1/node_modules/raw-body/index.js"(exports2, module2) { + "use strict"; + var asyncHooks = tryRequireAsyncHooks(); + var bytes = require_bytes(); + var createError = require_http_errors(); + var iconv = require_lib7(); + var unpipe = require_unpipe(); + module2.exports = getRawBody; + var ICONV_ENCODING_MESSAGE_REGEXP = /^Encoding not recognized: /; + function getDecoder(encoding) { + if (!encoding) + return null; + try { + return iconv.getDecoder(encoding); + } catch (e) { + if (!ICONV_ENCODING_MESSAGE_REGEXP.test(e.message)) + throw e; + throw createError(415, "specified encoding unsupported", { + encoding, + type: "encoding.unsupported" + }); + } + } + function getRawBody(stream5, options2, callback) { + var done = callback; + var opts = options2 || {}; + if (options2 === true || typeof options2 === "string") { + opts = { + encoding: options2 + }; + } + if (typeof options2 === "function") { + done = options2; + opts = {}; + } + if (done !== void 0 && typeof done !== "function") { + throw new TypeError("argument callback must be a function"); + } + if (!done && !global.Promise) { + throw new TypeError("argument callback is required"); + } + var encoding = opts.encoding !== true ? opts.encoding : "utf-8"; + var limit = bytes.parse(opts.limit); + var length = opts.length != null && !isNaN(opts.length) ? parseInt(opts.length, 10) : null; + if (done) { + return readStream(stream5, encoding, length, limit, wrap2(done)); + } + return new Promise(function executor(resolve8, reject) { + readStream(stream5, encoding, length, limit, function onRead(err2, buf) { + if (err2) + return reject(err2); + resolve8(buf); + }); + }); + } + function halt(stream5) { + unpipe(stream5); + if (typeof stream5.pause === "function") { + stream5.pause(); + } + } + function readStream(stream5, encoding, length, limit, callback) { + var complete = false; + var sync2 = true; + if (limit !== null && length !== null && length > limit) { + return done(createError(413, "request entity too large", { + expected: length, + length, + limit, + type: "entity.too.large" + })); + } + var state = stream5._readableState; + if (stream5._decoder || state && (state.encoding || state.decoder)) { + return done(createError(500, "stream encoding should not be set", { + type: "stream.encoding.set" + })); + } + if (typeof stream5.readable !== "undefined" && !stream5.readable) { + return done(createError(500, "stream is not readable", { + type: "stream.not.readable" + })); + } + var received = 0; + var decoder; + try { + decoder = getDecoder(encoding); + } catch (err2) { + return done(err2); + } + var buffer2 = decoder ? "" : []; + stream5.on("aborted", onAborted); + stream5.on("close", cleanup); + stream5.on("data", onData); + stream5.on("end", onEnd); + stream5.on("error", onEnd); + sync2 = false; + function done() { + var args3 = new Array(arguments.length); + for (var i = 0; i < args3.length; i++) { + args3[i] = arguments[i]; + } + complete = true; + if (sync2) { + process.nextTick(invokeCallback2); + } else { + invokeCallback2(); + } + function invokeCallback2() { + cleanup(); + if (args3[0]) { + halt(stream5); + } + callback.apply(null, args3); + } + } + function onAborted() { + if (complete) + return; + done(createError(400, "request aborted", { + code: "ECONNABORTED", + expected: length, + length, + received, + type: "request.aborted" + })); + } + function onData(chunk) { + if (complete) + return; + received += chunk.length; + if (limit !== null && received > limit) { + done(createError(413, "request entity too large", { + limit, + received, + type: "entity.too.large" + })); + } else if (decoder) { + buffer2 += decoder.write(chunk); + } else { + buffer2.push(chunk); + } + } + function onEnd(err2) { + if (complete) + return; + if (err2) + return done(err2); + if (length !== null && received !== length) { + done(createError(400, "request size did not match content length", { + expected: length, + length, + received, + type: "request.size.invalid" + })); + } else { + var string = decoder ? buffer2 + (decoder.end() || "") : Buffer.concat(buffer2); + done(null, string); + } + } + function cleanup() { + buffer2 = null; + stream5.removeListener("aborted", onAborted); + stream5.removeListener("data", onData); + stream5.removeListener("end", onEnd); + stream5.removeListener("error", onEnd); + stream5.removeListener("close", cleanup); + } + } + function tryRequireAsyncHooks() { + try { + return require("async_hooks"); + } catch (e) { + return {}; + } + } + function wrap2(fn) { + var res; + if (asyncHooks.AsyncResource) { + res = new asyncHooks.AsyncResource(fn.name || "bound-anonymous-fn"); + } + if (!res || !res.runInAsyncScope) { + return fn; + } + return res.runInAsyncScope.bind(res, fn, null); + } + } +}); + +// ../node_modules/.pnpm/on-finished@2.4.1/node_modules/on-finished/index.js +var require_on_finished2 = __commonJS({ + "../node_modules/.pnpm/on-finished@2.4.1/node_modules/on-finished/index.js"(exports2, module2) { + "use strict"; + module2.exports = onFinished; + module2.exports.isFinished = isFinished; + var asyncHooks = tryRequireAsyncHooks(); + var first = require_ee_first(); + var defer2 = typeof setImmediate === "function" ? setImmediate : function(fn) { + process.nextTick(fn.bind.apply(fn, arguments)); + }; + function onFinished(msg, listener) { + if (isFinished(msg) !== false) { + defer2(listener, null, msg); + return msg; + } + attachListener(msg, wrap2(listener)); + return msg; + } + function isFinished(msg) { + var socket = msg.socket; + if (typeof msg.finished === "boolean") { + return Boolean(msg.finished || socket && !socket.writable); + } + if (typeof msg.complete === "boolean") { + return Boolean(msg.upgrade || !socket || !socket.readable || msg.complete && !msg.readable); + } + return void 0; + } + function attachFinishedListener(msg, callback) { + var eeMsg; + var eeSocket; + var finished = false; + function onFinish(error) { + eeMsg.cancel(); + eeSocket.cancel(); + finished = true; + callback(error); + } + eeMsg = eeSocket = first([[msg, "end", "finish"]], onFinish); + function onSocket(socket) { + msg.removeListener("socket", onSocket); + if (finished) + return; + if (eeMsg !== eeSocket) + return; + eeSocket = first([[socket, "error", "close"]], onFinish); + } + if (msg.socket) { + onSocket(msg.socket); + return; + } + msg.on("socket", onSocket); + if (msg.socket === void 0) { + patchAssignSocket(msg, onSocket); + } + } + function attachListener(msg, listener) { + var attached = msg.__onFinished; + if (!attached || !attached.queue) { + attached = msg.__onFinished = createListener(msg); + attachFinishedListener(msg, attached); + } + attached.queue.push(listener); + } + function createListener(msg) { + function listener(err2) { + if (msg.__onFinished === listener) + msg.__onFinished = null; + if (!listener.queue) + return; + var queue = listener.queue; + listener.queue = null; + for (var i = 0; i < queue.length; i++) { + queue[i](err2, msg); + } + } + listener.queue = []; + return listener; + } + function patchAssignSocket(res, callback) { + var assignSocket = res.assignSocket; + if (typeof assignSocket !== "function") + return; + res.assignSocket = function _assignSocket(socket) { + assignSocket.call(this, socket); + callback(socket); + }; + } + function tryRequireAsyncHooks() { + try { + return require("async_hooks"); + } catch (e) { + return {}; + } + } + function wrap2(fn) { + var res; + if (asyncHooks.AsyncResource) { + res = new asyncHooks.AsyncResource(fn.name || "bound-anonymous-fn"); + } + if (!res || !res.runInAsyncScope) { + return fn; + } + return res.runInAsyncScope.bind(res, fn, null); + } + } +}); + +// ../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/lib/read.js +var require_read = __commonJS({ + "../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/lib/read.js"(exports2, module2) { + "use strict"; + var createError = require_http_errors(); + var destroy = require_destroy2(); + var getBody = require_raw_body(); + var iconv = require_lib7(); + var onFinished = require_on_finished2(); + var unpipe = require_unpipe(); + var zlib2 = require("zlib"); + module2.exports = read; + function read(req, res, next, parse7, debug, options2) { + var length; + var opts = options2; + var stream5; + req._body = true; + var encoding = opts.encoding !== null ? opts.encoding : null; + var verify = opts.verify; + try { + stream5 = contentstream(req, debug, opts.inflate); + length = stream5.length; + stream5.length = void 0; + } catch (err2) { + return next(err2); + } + opts.length = length; + opts.encoding = verify ? null : encoding; + if (opts.encoding === null && encoding !== null && !iconv.encodingExists(encoding)) { + return next(createError(415, 'unsupported charset "' + encoding.toUpperCase() + '"', { + charset: encoding.toLowerCase(), + type: "charset.unsupported" + })); + } + debug("read body"); + getBody(stream5, opts, function(error, body2) { + if (error) { + var _error; + if (error.type === "encoding.unsupported") { + _error = createError(415, 'unsupported charset "' + encoding.toUpperCase() + '"', { + charset: encoding.toLowerCase(), + type: "charset.unsupported" + }); + } else { + _error = createError(400, error); + } + if (stream5 !== req) { + unpipe(req); + destroy(stream5, true); + } + dump(req, function onfinished() { + next(createError(400, _error)); + }); + return; + } + if (verify) { + try { + debug("verify body"); + verify(req, res, body2, encoding); + } catch (err2) { + next(createError(403, err2, { + body: body2, + type: err2.type || "entity.verify.failed" + })); + return; + } + } + var str = body2; + try { + debug("parse body"); + str = typeof body2 !== "string" && encoding !== null ? iconv.decode(body2, encoding) : body2; + req.body = parse7(str); + } catch (err2) { + next(createError(400, err2, { + body: str, + type: err2.type || "entity.parse.failed" + })); + return; + } + next(); + }); + } + function contentstream(req, debug, inflate) { + var encoding = (req.headers["content-encoding"] || "identity").toLowerCase(); + var length = req.headers["content-length"]; + var stream5; + debug('content-encoding "%s"', encoding); + if (inflate === false && encoding !== "identity") { + throw createError(415, "content encoding unsupported", { + encoding, + type: "encoding.unsupported" + }); + } + switch (encoding) { + case "deflate": + stream5 = zlib2.createInflate(); + debug("inflate body"); + req.pipe(stream5); + break; + case "gzip": + stream5 = zlib2.createGunzip(); + debug("gunzip body"); + req.pipe(stream5); + break; + case "identity": + stream5 = req; + stream5.length = length; + break; + default: + throw createError(415, 'unsupported content encoding "' + encoding + '"', { + encoding, + type: "encoding.unsupported" + }); + } + return stream5; + } + function dump(req, callback) { + if (onFinished.isFinished(req)) { + callback(null); + } else { + onFinished(req, callback); + req.resume(); + } + } + } +}); + +// ../node_modules/.pnpm/media-typer@0.3.0/node_modules/media-typer/index.js +var require_media_typer = __commonJS({ + "../node_modules/.pnpm/media-typer@0.3.0/node_modules/media-typer/index.js"(exports2) { + var paramRegExp = /; *([!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) *= *("(?:[ !\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u0020-\u007e])*"|[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) */g; + var textRegExp = /^[\u0020-\u007e\u0080-\u00ff]+$/; + var tokenRegExp = /^[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+$/; + var qescRegExp = /\\([\u0000-\u007f])/g; + var quoteRegExp = /([\\"])/g; + var subtypeNameRegExp = /^[A-Za-z0-9][A-Za-z0-9!#$&^_.-]{0,126}$/; + var typeNameRegExp = /^[A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126}$/; + var typeRegExp = /^ *([A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126})\/([A-Za-z0-9][A-Za-z0-9!#$&^_.+-]{0,126}) *$/; + exports2.format = format; + exports2.parse = parse7; + function format(obj2) { + if (!obj2 || typeof obj2 !== "object") { + throw new TypeError("argument obj is required"); + } + var parameters = obj2.parameters; + var subtype = obj2.subtype; + var suffix = obj2.suffix; + var type2 = obj2.type; + if (!type2 || !typeNameRegExp.test(type2)) { + throw new TypeError("invalid type"); + } + if (!subtype || !subtypeNameRegExp.test(subtype)) { + throw new TypeError("invalid subtype"); + } + var string = type2 + "/" + subtype; + if (suffix) { + if (!typeNameRegExp.test(suffix)) { + throw new TypeError("invalid suffix"); + } + string += "+" + suffix; + } + if (parameters && typeof parameters === "object") { + var param; + var params = Object.keys(parameters).sort(); + for (var i = 0; i < params.length; i++) { + param = params[i]; + if (!tokenRegExp.test(param)) { + throw new TypeError("invalid parameter name"); + } + string += "; " + param + "=" + qstring(parameters[param]); + } + } + return string; + } + function parse7(string) { + if (!string) { + throw new TypeError("argument string is required"); + } + if (typeof string === "object") { + string = getcontenttype(string); + } + if (typeof string !== "string") { + throw new TypeError("argument string is required to be a string"); + } + var index = string.indexOf(";"); + var type2 = index !== -1 ? string.substr(0, index) : string; + var key; + var match2; + var obj2 = splitType(type2); + var params = {}; + var value; + paramRegExp.lastIndex = index; + while (match2 = paramRegExp.exec(string)) { + if (match2.index !== index) { + throw new TypeError("invalid parameter format"); + } + index += match2[0].length; + key = match2[1].toLowerCase(); + value = match2[2]; + if (value[0] === '"') { + value = value.substr(1, value.length - 2).replace(qescRegExp, "$1"); + } + params[key] = value; + } + if (index !== -1 && index !== string.length) { + throw new TypeError("invalid parameter format"); + } + obj2.parameters = params; + return obj2; + } + function getcontenttype(obj2) { + if (typeof obj2.getHeader === "function") { + return obj2.getHeader("content-type"); + } + if (typeof obj2.headers === "object") { + return obj2.headers && obj2.headers["content-type"]; + } + } + function qstring(val) { + var str = String(val); + if (tokenRegExp.test(str)) { + return str; + } + if (str.length > 0 && !textRegExp.test(str)) { + throw new TypeError("invalid parameter value"); + } + return '"' + str.replace(quoteRegExp, "\\$1") + '"'; + } + function splitType(string) { + var match2 = typeRegExp.exec(string.toLowerCase()); + if (!match2) { + throw new TypeError("invalid media type"); + } + var type2 = match2[1]; + var subtype = match2[2]; + var suffix; + var index = subtype.lastIndexOf("+"); + if (index !== -1) { + suffix = subtype.substr(index + 1); + subtype = subtype.substr(0, index); + } + var obj2 = { + type: type2, + subtype, + suffix + }; + return obj2; + } + } +}); + +// ../node_modules/.pnpm/type-is@1.6.18/node_modules/type-is/index.js +var require_type_is = __commonJS({ + "../node_modules/.pnpm/type-is@1.6.18/node_modules/type-is/index.js"(exports2, module2) { + "use strict"; + var typer = require_media_typer(); + var mime = require_mime_types(); + module2.exports = typeofrequest; + module2.exports.is = typeis; + module2.exports.hasBody = hasbody; + module2.exports.normalize = normalize6; + module2.exports.match = mimeMatch; + function typeis(value, types_) { + var i; + var types2 = types_; + var val = tryNormalizeType(value); + if (!val) { + return false; + } + if (types2 && !Array.isArray(types2)) { + types2 = new Array(arguments.length - 1); + for (i = 0; i < types2.length; i++) { + types2[i] = arguments[i + 1]; + } + } + if (!types2 || !types2.length) { + return val; + } + var type2; + for (i = 0; i < types2.length; i++) { + if (mimeMatch(normalize6(type2 = types2[i]), val)) { + return type2[0] === "+" || type2.indexOf("*") !== -1 ? val : type2; + } + } + return false; + } + function hasbody(req) { + return req.headers["transfer-encoding"] !== void 0 || !isNaN(req.headers["content-length"]); + } + function typeofrequest(req, types_) { + var types2 = types_; + if (!hasbody(req)) { + return null; + } + if (arguments.length > 2) { + types2 = new Array(arguments.length - 1); + for (var i = 0; i < types2.length; i++) { + types2[i] = arguments[i + 1]; + } + } + var value = req.headers["content-type"]; + return typeis(value, types2); + } + function normalize6(type2) { + if (typeof type2 !== "string") { + return false; + } + switch (type2) { + case "urlencoded": + return "application/x-www-form-urlencoded"; + case "multipart": + return "multipart/*"; + } + if (type2[0] === "+") { + return "*/*" + type2; + } + return type2.indexOf("/") === -1 ? mime.lookup(type2) : type2; + } + function mimeMatch(expected, actual) { + if (expected === false) { + return false; + } + var actualParts = actual.split("/"); + var expectedParts = expected.split("/"); + if (actualParts.length !== 2 || expectedParts.length !== 2) { + return false; + } + if (expectedParts[0] !== "*" && expectedParts[0] !== actualParts[0]) { + return false; + } + if (expectedParts[1].substr(0, 2) === "*+") { + return expectedParts[1].length <= actualParts[1].length + 1 && expectedParts[1].substr(1) === actualParts[1].substr(1 - expectedParts[1].length); + } + if (expectedParts[1] !== "*" && expectedParts[1] !== actualParts[1]) { + return false; + } + return true; + } + function normalizeType(value) { + var type2 = typer.parse(value); + type2.parameters = void 0; + return typer.format(type2); + } + function tryNormalizeType(value) { + if (!value) { + return null; + } + try { + return normalizeType(value); + } catch (err2) { + return null; + } + } + } +}); + +// ../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/lib/types/json.js +var require_json2 = __commonJS({ + "../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/lib/types/json.js"(exports2, module2) { + "use strict"; + var bytes = require_bytes(); + var contentType = require_content_type(); + var createError = require_http_errors(); + var debug = require_src31()("body-parser:json"); + var read = require_read(); + var typeis = require_type_is(); + module2.exports = json; + var FIRST_CHAR_REGEXP = /^[\x20\x09\x0a\x0d]*([^\x20\x09\x0a\x0d])/; + function json(options2) { + var opts = options2 || {}; + var limit = typeof opts.limit !== "number" ? bytes.parse(opts.limit || "100kb") : opts.limit; + var inflate = opts.inflate !== false; + var reviver = opts.reviver; + var strict = opts.strict !== false; + var type2 = opts.type || "application/json"; + var verify = opts.verify || false; + if (verify !== false && typeof verify !== "function") { + throw new TypeError("option verify must be function"); + } + var shouldParse = typeof type2 !== "function" ? typeChecker(type2) : type2; + function parse7(body2) { + if (body2.length === 0) { + return {}; + } + if (strict) { + var first = firstchar(body2); + if (first !== "{" && first !== "[") { + debug("strict violation"); + throw createStrictSyntaxError(body2, first); + } + } + try { + debug("parse json"); + return JSON.parse(body2, reviver); + } catch (e) { + throw normalizeJsonSyntaxError(e, { + message: e.message, + stack: e.stack + }); + } + } + return function jsonParser(req, res, next) { + if (req._body) { + debug("body already parsed"); + next(); + return; + } + req.body = req.body || {}; + if (!typeis.hasBody(req)) { + debug("skip empty body"); + next(); + return; + } + debug("content-type %j", req.headers["content-type"]); + if (!shouldParse(req)) { + debug("skip parsing"); + next(); + return; + } + var charset = getCharset(req) || "utf-8"; + if (charset.slice(0, 4) !== "utf-") { + debug("invalid charset"); + next(createError(415, 'unsupported charset "' + charset.toUpperCase() + '"', { + charset, + type: "charset.unsupported" + })); + return; + } + read(req, res, next, parse7, debug, { + encoding: charset, + inflate, + limit, + verify + }); + }; + } + function createStrictSyntaxError(str, char) { + var index = str.indexOf(char); + var partial = index !== -1 ? str.substring(0, index) + "#" : ""; + try { + JSON.parse(partial); + throw new SyntaxError("strict violation"); + } catch (e) { + return normalizeJsonSyntaxError(e, { + message: e.message.replace("#", char), + stack: e.stack + }); + } + } + function firstchar(str) { + var match2 = FIRST_CHAR_REGEXP.exec(str); + return match2 ? match2[1] : void 0; + } + function getCharset(req) { + try { + return (contentType.parse(req).parameters.charset || "").toLowerCase(); + } catch (e) { + return void 0; + } + } + function normalizeJsonSyntaxError(error, obj2) { + var keys = Object.getOwnPropertyNames(error); + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + if (key !== "stack" && key !== "message") { + delete error[key]; + } + } + error.stack = obj2.stack.replace(error.message, obj2.message); + error.message = obj2.message; + return error; + } + function typeChecker(type2) { + return function checkType(req) { + return Boolean(typeis(req, type2)); + }; + } + } +}); + +// ../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/lib/types/raw.js +var require_raw = __commonJS({ + "../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/lib/types/raw.js"(exports2, module2) { + "use strict"; + var bytes = require_bytes(); + var debug = require_src31()("body-parser:raw"); + var read = require_read(); + var typeis = require_type_is(); + module2.exports = raw; + function raw(options2) { + var opts = options2 || {}; + var inflate = opts.inflate !== false; + var limit = typeof opts.limit !== "number" ? bytes.parse(opts.limit || "100kb") : opts.limit; + var type2 = opts.type || "application/octet-stream"; + var verify = opts.verify || false; + if (verify !== false && typeof verify !== "function") { + throw new TypeError("option verify must be function"); + } + var shouldParse = typeof type2 !== "function" ? typeChecker(type2) : type2; + function parse7(buf) { + return buf; + } + return function rawParser(req, res, next) { + if (req._body) { + debug("body already parsed"); + next(); + return; + } + req.body = req.body || {}; + if (!typeis.hasBody(req)) { + debug("skip empty body"); + next(); + return; + } + debug("content-type %j", req.headers["content-type"]); + if (!shouldParse(req)) { + debug("skip parsing"); + next(); + return; + } + read(req, res, next, parse7, debug, { + encoding: null, + inflate, + limit, + verify + }); + }; + } + function typeChecker(type2) { + return function checkType(req) { + return Boolean(typeis(req, type2)); + }; + } + } +}); + +// ../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/lib/types/text.js +var require_text = __commonJS({ + "../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/lib/types/text.js"(exports2, module2) { + "use strict"; + var bytes = require_bytes(); + var contentType = require_content_type(); + var debug = require_src31()("body-parser:text"); + var read = require_read(); + var typeis = require_type_is(); + module2.exports = text; + function text(options2) { + var opts = options2 || {}; + var defaultCharset = opts.defaultCharset || "utf-8"; + var inflate = opts.inflate !== false; + var limit = typeof opts.limit !== "number" ? bytes.parse(opts.limit || "100kb") : opts.limit; + var type2 = opts.type || "text/plain"; + var verify = opts.verify || false; + if (verify !== false && typeof verify !== "function") { + throw new TypeError("option verify must be function"); + } + var shouldParse = typeof type2 !== "function" ? typeChecker(type2) : type2; + function parse7(buf) { + return buf; + } + return function textParser(req, res, next) { + if (req._body) { + debug("body already parsed"); + next(); + return; + } + req.body = req.body || {}; + if (!typeis.hasBody(req)) { + debug("skip empty body"); + next(); + return; + } + debug("content-type %j", req.headers["content-type"]); + if (!shouldParse(req)) { + debug("skip parsing"); + next(); + return; + } + var charset = getCharset(req) || defaultCharset; + read(req, res, next, parse7, debug, { + encoding: charset, + inflate, + limit, + verify + }); + }; + } + function getCharset(req) { + try { + return (contentType.parse(req).parameters.charset || "").toLowerCase(); + } catch (e) { + return void 0; + } + } + function typeChecker(type2) { + return function checkType(req) { + return Boolean(typeis(req, type2)); + }; + } + } +}); + +// ../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/formats.js +var require_formats2 = __commonJS({ + "../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/formats.js"(exports2, module2) { + "use strict"; + var replace = String.prototype.replace; + var percentTwenties = /%20/g; + var Format = { + RFC1738: "RFC1738", + RFC3986: "RFC3986" + }; + module2.exports = { + "default": Format.RFC3986, + formatters: { + RFC1738: function(value) { + return replace.call(value, percentTwenties, "+"); + }, + RFC3986: function(value) { + return String(value); + } + }, + RFC1738: Format.RFC1738, + RFC3986: Format.RFC3986 + }; + } +}); + +// ../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/utils.js +var require_utils20 = __commonJS({ + "../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/utils.js"(exports2, module2) { + "use strict"; + var formats = require_formats2(); + var has = Object.prototype.hasOwnProperty; + var isArray2 = Array.isArray; + var hexTable = function() { + var array = []; + for (var i = 0; i < 256; ++i) { + array.push("%" + ((i < 16 ? "0" : "") + i.toString(16)).toUpperCase()); + } + return array; + }(); + var compactQueue = function compactQueue2(queue) { + while (queue.length > 1) { + var item = queue.pop(); + var obj2 = item.obj[item.prop]; + if (isArray2(obj2)) { + var compacted = []; + for (var j = 0; j < obj2.length; ++j) { + if (typeof obj2[j] !== "undefined") { + compacted.push(obj2[j]); + } + } + item.obj[item.prop] = compacted; + } + } + }; + var arrayToObject2 = function arrayToObject3(source2, options2) { + var obj2 = options2 && options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {}; + for (var i = 0; i < source2.length; ++i) { + if (typeof source2[i] !== "undefined") { + obj2[i] = source2[i]; + } + } + return obj2; + }; + var merge3 = function merge4(target, source2, options2) { + if (!source2) { + return target; + } + if (typeof source2 !== "object") { + if (isArray2(target)) { + target.push(source2); + } else if (target && typeof target === "object") { + if (options2 && (options2.plainObjects || options2.allowPrototypes) || !has.call(Object.prototype, source2)) { + target[source2] = true; + } + } else { + return [target, source2]; + } + return target; + } + if (!target || typeof target !== "object") { + return [target].concat(source2); + } + var mergeTarget = target; + if (isArray2(target) && !isArray2(source2)) { + mergeTarget = arrayToObject2(target, options2); + } + if (isArray2(target) && isArray2(source2)) { + source2.forEach(function(item, i) { + if (has.call(target, i)) { + var targetItem = target[i]; + if (targetItem && typeof targetItem === "object" && item && typeof item === "object") { + target[i] = merge4(targetItem, item, options2); + } else { + target.push(item); + } + } else { + target[i] = item; + } + }); + return target; + } + return Object.keys(source2).reduce(function(acc, key) { + var value = source2[key]; + if (has.call(acc, key)) { + acc[key] = merge4(acc[key], value, options2); + } else { + acc[key] = value; + } + return acc; + }, mergeTarget); + }; + var assign = function assignSingleSource(target, source2) { + return Object.keys(source2).reduce(function(acc, key) { + acc[key] = source2[key]; + return acc; + }, target); + }; + var decode = function(str, decoder, charset) { + var strWithoutPlus = str.replace(/\+/g, " "); + if (charset === "iso-8859-1") { + return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape); + } + try { + return decodeURIComponent(strWithoutPlus); + } catch (e) { + return strWithoutPlus; + } + }; + var encode3 = function encode4(str, defaultEncoder, charset, kind, format) { + if (str.length === 0) { + return str; + } + var string = str; + if (typeof str === "symbol") { + string = Symbol.prototype.toString.call(str); + } else if (typeof str !== "string") { + string = String(str); + } + if (charset === "iso-8859-1") { + return escape(string).replace(/%u[0-9a-f]{4}/gi, function($0) { + return "%26%23" + parseInt($0.slice(2), 16) + "%3B"; + }); + } + var out2 = ""; + for (var i = 0; i < string.length; ++i) { + var c = string.charCodeAt(i); + if (c === 45 || c === 46 || c === 95 || c === 126 || c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c <= 122 || format === formats.RFC1738 && (c === 40 || c === 41)) { + out2 += string.charAt(i); + continue; + } + if (c < 128) { + out2 = out2 + hexTable[c]; + continue; + } + if (c < 2048) { + out2 = out2 + (hexTable[192 | c >> 6] + hexTable[128 | c & 63]); + continue; + } + if (c < 55296 || c >= 57344) { + out2 = out2 + (hexTable[224 | c >> 12] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63]); + continue; + } + i += 1; + c = 65536 + ((c & 1023) << 10 | string.charCodeAt(i) & 1023); + out2 += hexTable[240 | c >> 18] + hexTable[128 | c >> 12 & 63] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63]; + } + return out2; + }; + var compact = function compact2(value) { + var queue = [{ obj: { o: value }, prop: "o" }]; + var refs = []; + for (var i = 0; i < queue.length; ++i) { + var item = queue[i]; + var obj2 = item.obj[item.prop]; + var keys = Object.keys(obj2); + for (var j = 0; j < keys.length; ++j) { + var key = keys[j]; + var val = obj2[key]; + if (typeof val === "object" && val !== null && refs.indexOf(val) === -1) { + queue.push({ obj: obj2, prop: key }); + refs.push(val); + } + } + } + compactQueue(queue); + return value; + }; + var isRegExp2 = function isRegExp3(obj2) { + return Object.prototype.toString.call(obj2) === "[object RegExp]"; + }; + var isBuffer2 = function isBuffer3(obj2) { + if (!obj2 || typeof obj2 !== "object") { + return false; + } + return !!(obj2.constructor && obj2.constructor.isBuffer && obj2.constructor.isBuffer(obj2)); + }; + var combine = function combine2(a, b) { + return [].concat(a, b); + }; + var maybeMap = function maybeMap2(val, fn) { + if (isArray2(val)) { + var mapped = []; + for (var i = 0; i < val.length; i += 1) { + mapped.push(fn(val[i])); + } + return mapped; + } + return fn(val); + }; + module2.exports = { + arrayToObject: arrayToObject2, + assign, + combine, + compact, + decode, + encode: encode3, + isBuffer: isBuffer2, + isRegExp: isRegExp2, + maybeMap, + merge: merge3 + }; + } +}); + +// ../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/stringify.js +var require_stringify3 = __commonJS({ + "../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/stringify.js"(exports2, module2) { + "use strict"; + var getSideChannel = require_side_channel(); + var utils = require_utils20(); + var formats = require_formats2(); + var has = Object.prototype.hasOwnProperty; + var arrayPrefixGenerators = { + brackets: function brackets(prefix) { + return prefix + "[]"; + }, + comma: "comma", + indices: function indices(prefix, key) { + return prefix + "[" + key + "]"; + }, + repeat: function repeat(prefix) { + return prefix; + } + }; + var isArray2 = Array.isArray; + var split = String.prototype.split; + var push = Array.prototype.push; + var pushToArray = function(arr, valueOrArray) { + push.apply(arr, isArray2(valueOrArray) ? valueOrArray : [valueOrArray]); + }; + var toISO = Date.prototype.toISOString; + var defaultFormat = formats["default"]; + var defaults4 = { + addQueryPrefix: false, + allowDots: false, + charset: "utf-8", + charsetSentinel: false, + delimiter: "&", + encode: true, + encoder: utils.encode, + encodeValuesOnly: false, + format: defaultFormat, + formatter: formats.formatters[defaultFormat], + // deprecated + indices: false, + serializeDate: function serializeDate(date) { + return toISO.call(date); + }, + skipNulls: false, + strictNullHandling: false + }; + var isNonNullishPrimitive = function isNonNullishPrimitive2(v) { + return typeof v === "string" || typeof v === "number" || typeof v === "boolean" || typeof v === "symbol" || typeof v === "bigint"; + }; + var sentinel = {}; + var stringify = function stringify2(object, prefix, generateArrayPrefix, commaRoundTrip, strictNullHandling, skipNulls, encoder, filter3, sort, allowDots, serializeDate, format, formatter, encodeValuesOnly, charset, sideChannel) { + var obj2 = object; + var tmpSc = sideChannel; + var step = 0; + var findFlag = false; + while ((tmpSc = tmpSc.get(sentinel)) !== void 0 && !findFlag) { + var pos = tmpSc.get(object); + step += 1; + if (typeof pos !== "undefined") { + if (pos === step) { + throw new RangeError("Cyclic object value"); + } else { + findFlag = true; + } + } + if (typeof tmpSc.get(sentinel) === "undefined") { + step = 0; + } + } + if (typeof filter3 === "function") { + obj2 = filter3(prefix, obj2); + } else if (obj2 instanceof Date) { + obj2 = serializeDate(obj2); + } else if (generateArrayPrefix === "comma" && isArray2(obj2)) { + obj2 = utils.maybeMap(obj2, function(value2) { + if (value2 instanceof Date) { + return serializeDate(value2); + } + return value2; + }); + } + if (obj2 === null) { + if (strictNullHandling) { + return encoder && !encodeValuesOnly ? encoder(prefix, defaults4.encoder, charset, "key", format) : prefix; + } + obj2 = ""; + } + if (isNonNullishPrimitive(obj2) || utils.isBuffer(obj2)) { + if (encoder) { + var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults4.encoder, charset, "key", format); + if (generateArrayPrefix === "comma" && encodeValuesOnly) { + var valuesArray = split.call(String(obj2), ","); + var valuesJoined = ""; + for (var i = 0; i < valuesArray.length; ++i) { + valuesJoined += (i === 0 ? "" : ",") + formatter(encoder(valuesArray[i], defaults4.encoder, charset, "value", format)); + } + return [formatter(keyValue) + (commaRoundTrip && isArray2(obj2) && valuesArray.length === 1 ? "[]" : "") + "=" + valuesJoined]; + } + return [formatter(keyValue) + "=" + formatter(encoder(obj2, defaults4.encoder, charset, "value", format))]; + } + return [formatter(prefix) + "=" + formatter(String(obj2))]; + } + var values = []; + if (typeof obj2 === "undefined") { + return values; + } + var objKeys; + if (generateArrayPrefix === "comma" && isArray2(obj2)) { + objKeys = [{ value: obj2.length > 0 ? obj2.join(",") || null : void 0 }]; + } else if (isArray2(filter3)) { + objKeys = filter3; + } else { + var keys = Object.keys(obj2); + objKeys = sort ? keys.sort(sort) : keys; + } + var adjustedPrefix = commaRoundTrip && isArray2(obj2) && obj2.length === 1 ? prefix + "[]" : prefix; + for (var j = 0; j < objKeys.length; ++j) { + var key = objKeys[j]; + var value = typeof key === "object" && typeof key.value !== "undefined" ? key.value : obj2[key]; + if (skipNulls && value === null) { + continue; + } + var keyPrefix = isArray2(obj2) ? typeof generateArrayPrefix === "function" ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix : adjustedPrefix + (allowDots ? "." + key : "[" + key + "]"); + sideChannel.set(object, step); + var valueSideChannel = getSideChannel(); + valueSideChannel.set(sentinel, sideChannel); + pushToArray(values, stringify2( + value, + keyPrefix, + generateArrayPrefix, + commaRoundTrip, + strictNullHandling, + skipNulls, + encoder, + filter3, + sort, + allowDots, + serializeDate, + format, + formatter, + encodeValuesOnly, + charset, + valueSideChannel + )); + } + return values; + }; + var normalizeStringifyOptions = function normalizeStringifyOptions2(opts) { + if (!opts) { + return defaults4; + } + if (opts.encoder !== null && typeof opts.encoder !== "undefined" && typeof opts.encoder !== "function") { + throw new TypeError("Encoder has to be a function."); + } + var charset = opts.charset || defaults4.charset; + if (typeof opts.charset !== "undefined" && opts.charset !== "utf-8" && opts.charset !== "iso-8859-1") { + throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined"); + } + var format = formats["default"]; + if (typeof opts.format !== "undefined") { + if (!has.call(formats.formatters, opts.format)) { + throw new TypeError("Unknown format option provided."); + } + format = opts.format; + } + var formatter = formats.formatters[format]; + var filter3 = defaults4.filter; + if (typeof opts.filter === "function" || isArray2(opts.filter)) { + filter3 = opts.filter; + } + return { + addQueryPrefix: typeof opts.addQueryPrefix === "boolean" ? opts.addQueryPrefix : defaults4.addQueryPrefix, + allowDots: typeof opts.allowDots === "undefined" ? defaults4.allowDots : !!opts.allowDots, + charset, + charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults4.charsetSentinel, + delimiter: typeof opts.delimiter === "undefined" ? defaults4.delimiter : opts.delimiter, + encode: typeof opts.encode === "boolean" ? opts.encode : defaults4.encode, + encoder: typeof opts.encoder === "function" ? opts.encoder : defaults4.encoder, + encodeValuesOnly: typeof opts.encodeValuesOnly === "boolean" ? opts.encodeValuesOnly : defaults4.encodeValuesOnly, + filter: filter3, + format, + formatter, + serializeDate: typeof opts.serializeDate === "function" ? opts.serializeDate : defaults4.serializeDate, + skipNulls: typeof opts.skipNulls === "boolean" ? opts.skipNulls : defaults4.skipNulls, + sort: typeof opts.sort === "function" ? opts.sort : null, + strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults4.strictNullHandling + }; + }; + module2.exports = function(object, opts) { + var obj2 = object; + var options2 = normalizeStringifyOptions(opts); + var objKeys; + var filter3; + if (typeof options2.filter === "function") { + filter3 = options2.filter; + obj2 = filter3("", obj2); + } else if (isArray2(options2.filter)) { + filter3 = options2.filter; + objKeys = filter3; + } + var keys = []; + if (typeof obj2 !== "object" || obj2 === null) { + return ""; + } + var arrayFormat; + if (opts && opts.arrayFormat in arrayPrefixGenerators) { + arrayFormat = opts.arrayFormat; + } else if (opts && "indices" in opts) { + arrayFormat = opts.indices ? "indices" : "repeat"; + } else { + arrayFormat = "indices"; + } + var generateArrayPrefix = arrayPrefixGenerators[arrayFormat]; + if (opts && "commaRoundTrip" in opts && typeof opts.commaRoundTrip !== "boolean") { + throw new TypeError("`commaRoundTrip` must be a boolean, or absent"); + } + var commaRoundTrip = generateArrayPrefix === "comma" && opts && opts.commaRoundTrip; + if (!objKeys) { + objKeys = Object.keys(obj2); + } + if (options2.sort) { + objKeys.sort(options2.sort); + } + var sideChannel = getSideChannel(); + for (var i = 0; i < objKeys.length; ++i) { + var key = objKeys[i]; + if (options2.skipNulls && obj2[key] === null) { + continue; + } + pushToArray(keys, stringify( + obj2[key], + key, + generateArrayPrefix, + commaRoundTrip, + options2.strictNullHandling, + options2.skipNulls, + options2.encode ? options2.encoder : null, + options2.filter, + options2.sort, + options2.allowDots, + options2.serializeDate, + options2.format, + options2.formatter, + options2.encodeValuesOnly, + options2.charset, + sideChannel + )); + } + var joined = keys.join(options2.delimiter); + var prefix = options2.addQueryPrefix === true ? "?" : ""; + if (options2.charsetSentinel) { + if (options2.charset === "iso-8859-1") { + prefix += "utf8=%26%2310003%3B&"; + } else { + prefix += "utf8=%E2%9C%93&"; + } + } + return joined.length > 0 ? prefix + joined : ""; + }; + } +}); + +// ../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/parse.js +var require_parse8 = __commonJS({ + "../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/parse.js"(exports2, module2) { + "use strict"; + var utils = require_utils20(); + var has = Object.prototype.hasOwnProperty; + var isArray2 = Array.isArray; + var defaults4 = { + allowDots: false, + allowPrototypes: false, + allowSparse: false, + arrayLimit: 20, + charset: "utf-8", + charsetSentinel: false, + comma: false, + decoder: utils.decode, + delimiter: "&", + depth: 5, + ignoreQueryPrefix: false, + interpretNumericEntities: false, + parameterLimit: 1e3, + parseArrays: true, + plainObjects: false, + strictNullHandling: false + }; + var interpretNumericEntities = function(str) { + return str.replace(/&#(\d+);/g, function($0, numberStr) { + return String.fromCharCode(parseInt(numberStr, 10)); + }); + }; + var parseArrayValue = function(val, options2) { + if (val && typeof val === "string" && options2.comma && val.indexOf(",") > -1) { + return val.split(","); + } + return val; + }; + var isoSentinel = "utf8=%26%2310003%3B"; + var charsetSentinel = "utf8=%E2%9C%93"; + var parseValues = function parseQueryStringValues(str, options2) { + var obj2 = {}; + var cleanStr = options2.ignoreQueryPrefix ? str.replace(/^\?/, "") : str; + var limit = options2.parameterLimit === Infinity ? void 0 : options2.parameterLimit; + var parts = cleanStr.split(options2.delimiter, limit); + var skipIndex = -1; + var i; + var charset = options2.charset; + if (options2.charsetSentinel) { + for (i = 0; i < parts.length; ++i) { + if (parts[i].indexOf("utf8=") === 0) { + if (parts[i] === charsetSentinel) { + charset = "utf-8"; + } else if (parts[i] === isoSentinel) { + charset = "iso-8859-1"; + } + skipIndex = i; + i = parts.length; + } + } + } + for (i = 0; i < parts.length; ++i) { + if (i === skipIndex) { + continue; + } + var part = parts[i]; + var bracketEqualsPos = part.indexOf("]="); + var pos = bracketEqualsPos === -1 ? part.indexOf("=") : bracketEqualsPos + 1; + var key, val; + if (pos === -1) { + key = options2.decoder(part, defaults4.decoder, charset, "key"); + val = options2.strictNullHandling ? null : ""; + } else { + key = options2.decoder(part.slice(0, pos), defaults4.decoder, charset, "key"); + val = utils.maybeMap( + parseArrayValue(part.slice(pos + 1), options2), + function(encodedVal) { + return options2.decoder(encodedVal, defaults4.decoder, charset, "value"); + } + ); + } + if (val && options2.interpretNumericEntities && charset === "iso-8859-1") { + val = interpretNumericEntities(val); + } + if (part.indexOf("[]=") > -1) { + val = isArray2(val) ? [val] : val; + } + if (has.call(obj2, key)) { + obj2[key] = utils.combine(obj2[key], val); + } else { + obj2[key] = val; + } + } + return obj2; + }; + var parseObject = function(chain, val, options2, valuesParsed) { + var leaf = valuesParsed ? val : parseArrayValue(val, options2); + for (var i = chain.length - 1; i >= 0; --i) { + var obj2; + var root = chain[i]; + if (root === "[]" && options2.parseArrays) { + obj2 = [].concat(leaf); + } else { + obj2 = options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {}; + var cleanRoot = root.charAt(0) === "[" && root.charAt(root.length - 1) === "]" ? root.slice(1, -1) : root; + var index = parseInt(cleanRoot, 10); + if (!options2.parseArrays && cleanRoot === "") { + obj2 = { 0: leaf }; + } else if (!isNaN(index) && root !== cleanRoot && String(index) === cleanRoot && index >= 0 && (options2.parseArrays && index <= options2.arrayLimit)) { + obj2 = []; + obj2[index] = leaf; + } else if (cleanRoot !== "__proto__") { + obj2[cleanRoot] = leaf; + } + } + leaf = obj2; + } + return leaf; + }; + var parseKeys = function parseQueryStringKeys(givenKey, val, options2, valuesParsed) { + if (!givenKey) { + return; + } + var key = options2.allowDots ? givenKey.replace(/\.([^.[]+)/g, "[$1]") : givenKey; + var brackets = /(\[[^[\]]*])/; + var child = /(\[[^[\]]*])/g; + var segment = options2.depth > 0 && brackets.exec(key); + var parent = segment ? key.slice(0, segment.index) : key; + var keys = []; + if (parent) { + if (!options2.plainObjects && has.call(Object.prototype, parent)) { + if (!options2.allowPrototypes) { + return; + } + } + keys.push(parent); + } + var i = 0; + while (options2.depth > 0 && (segment = child.exec(key)) !== null && i < options2.depth) { + i += 1; + if (!options2.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) { + if (!options2.allowPrototypes) { + return; + } + } + keys.push(segment[1]); + } + if (segment) { + keys.push("[" + key.slice(segment.index) + "]"); + } + return parseObject(keys, val, options2, valuesParsed); + }; + var normalizeParseOptions = function normalizeParseOptions2(opts) { + if (!opts) { + return defaults4; + } + if (opts.decoder !== null && opts.decoder !== void 0 && typeof opts.decoder !== "function") { + throw new TypeError("Decoder has to be a function."); + } + if (typeof opts.charset !== "undefined" && opts.charset !== "utf-8" && opts.charset !== "iso-8859-1") { + throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined"); + } + var charset = typeof opts.charset === "undefined" ? defaults4.charset : opts.charset; + return { + allowDots: typeof opts.allowDots === "undefined" ? defaults4.allowDots : !!opts.allowDots, + allowPrototypes: typeof opts.allowPrototypes === "boolean" ? opts.allowPrototypes : defaults4.allowPrototypes, + allowSparse: typeof opts.allowSparse === "boolean" ? opts.allowSparse : defaults4.allowSparse, + arrayLimit: typeof opts.arrayLimit === "number" ? opts.arrayLimit : defaults4.arrayLimit, + charset, + charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults4.charsetSentinel, + comma: typeof opts.comma === "boolean" ? opts.comma : defaults4.comma, + decoder: typeof opts.decoder === "function" ? opts.decoder : defaults4.decoder, + delimiter: typeof opts.delimiter === "string" || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults4.delimiter, + // eslint-disable-next-line no-implicit-coercion, no-extra-parens + depth: typeof opts.depth === "number" || opts.depth === false ? +opts.depth : defaults4.depth, + ignoreQueryPrefix: opts.ignoreQueryPrefix === true, + interpretNumericEntities: typeof opts.interpretNumericEntities === "boolean" ? opts.interpretNumericEntities : defaults4.interpretNumericEntities, + parameterLimit: typeof opts.parameterLimit === "number" ? opts.parameterLimit : defaults4.parameterLimit, + parseArrays: opts.parseArrays !== false, + plainObjects: typeof opts.plainObjects === "boolean" ? opts.plainObjects : defaults4.plainObjects, + strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults4.strictNullHandling + }; + }; + module2.exports = function(str, opts) { + var options2 = normalizeParseOptions(opts); + if (str === "" || str === null || typeof str === "undefined") { + return options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {}; + } + var tempObj = typeof str === "string" ? parseValues(str, options2) : str; + var obj2 = options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {}; + var keys = Object.keys(tempObj); + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + var newObj = parseKeys(key, tempObj[key], options2, typeof str === "string"); + obj2 = utils.merge(obj2, newObj, options2); + } + if (options2.allowSparse === true) { + return obj2; + } + return utils.compact(obj2); + }; + } +}); + +// ../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/index.js +var require_lib8 = __commonJS({ + "../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/index.js"(exports2, module2) { + "use strict"; + var stringify = require_stringify3(); + var parse7 = require_parse8(); + var formats = require_formats2(); + module2.exports = { + formats, + parse: parse7, + stringify + }; + } +}); + +// ../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/lib/types/urlencoded.js +var require_urlencoded = __commonJS({ + "../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/lib/types/urlencoded.js"(exports2, module2) { + "use strict"; + var bytes = require_bytes(); + var contentType = require_content_type(); + var createError = require_http_errors(); + var debug = require_src31()("body-parser:urlencoded"); + var deprecate = require_depd()("body-parser"); + var read = require_read(); + var typeis = require_type_is(); + module2.exports = urlencoded; + var parsers = /* @__PURE__ */ Object.create(null); + function urlencoded(options2) { + var opts = options2 || {}; + if (opts.extended === void 0) { + deprecate("undefined extended: provide extended option"); + } + var extended = opts.extended !== false; + var inflate = opts.inflate !== false; + var limit = typeof opts.limit !== "number" ? bytes.parse(opts.limit || "100kb") : opts.limit; + var type2 = opts.type || "application/x-www-form-urlencoded"; + var verify = opts.verify || false; + if (verify !== false && typeof verify !== "function") { + throw new TypeError("option verify must be function"); + } + var queryparse = extended ? extendedparser(opts) : simpleparser(opts); + var shouldParse = typeof type2 !== "function" ? typeChecker(type2) : type2; + function parse7(body2) { + return body2.length ? queryparse(body2) : {}; + } + return function urlencodedParser(req, res, next) { + if (req._body) { + debug("body already parsed"); + next(); + return; + } + req.body = req.body || {}; + if (!typeis.hasBody(req)) { + debug("skip empty body"); + next(); + return; + } + debug("content-type %j", req.headers["content-type"]); + if (!shouldParse(req)) { + debug("skip parsing"); + next(); + return; + } + var charset = getCharset(req) || "utf-8"; + if (charset !== "utf-8") { + debug("invalid charset"); + next(createError(415, 'unsupported charset "' + charset.toUpperCase() + '"', { + charset, + type: "charset.unsupported" + })); + return; + } + read(req, res, next, parse7, debug, { + debug, + encoding: charset, + inflate, + limit, + verify + }); + }; + } + function extendedparser(options2) { + var parameterLimit = options2.parameterLimit !== void 0 ? options2.parameterLimit : 1e3; + var parse7 = parser2("qs"); + if (isNaN(parameterLimit) || parameterLimit < 1) { + throw new TypeError("option parameterLimit must be a positive number"); + } + if (isFinite(parameterLimit)) { + parameterLimit = parameterLimit | 0; + } + return function queryparse(body2) { + var paramCount = parameterCount(body2, parameterLimit); + if (paramCount === void 0) { + debug("too many parameters"); + throw createError(413, "too many parameters", { + type: "parameters.too.many" + }); + } + var arrayLimit = Math.max(100, paramCount); + debug("parse extended urlencoding"); + return parse7(body2, { + allowPrototypes: true, + arrayLimit, + depth: Infinity, + parameterLimit + }); + }; + } + function getCharset(req) { + try { + return (contentType.parse(req).parameters.charset || "").toLowerCase(); + } catch (e) { + return void 0; + } + } + function parameterCount(body2, limit) { + var count = 0; + var index = 0; + while ((index = body2.indexOf("&", index)) !== -1) { + count++; + index++; + if (count === limit) { + return void 0; + } + } + return count; + } + function parser2(name) { + var mod2 = parsers[name]; + if (mod2 !== void 0) { + return mod2.parse; + } + switch (name) { + case "qs": + mod2 = require_lib8(); + break; + case "querystring": + mod2 = require("querystring"); + break; + } + parsers[name] = mod2; + return mod2.parse; + } + function simpleparser(options2) { + var parameterLimit = options2.parameterLimit !== void 0 ? options2.parameterLimit : 1e3; + var parse7 = parser2("querystring"); + if (isNaN(parameterLimit) || parameterLimit < 1) { + throw new TypeError("option parameterLimit must be a positive number"); + } + if (isFinite(parameterLimit)) { + parameterLimit = parameterLimit | 0; + } + return function queryparse(body2) { + var paramCount = parameterCount(body2, parameterLimit); + if (paramCount === void 0) { + debug("too many parameters"); + throw createError(413, "too many parameters", { + type: "parameters.too.many" + }); + } + debug("parse urlencoding"); + return parse7(body2, void 0, void 0, { maxKeys: parameterLimit }); + }; + } + function typeChecker(type2) { + return function checkType(req) { + return Boolean(typeis(req, type2)); + }; + } + } +}); + +// ../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/index.js +var require_body_parser = __commonJS({ + "../node_modules/.pnpm/body-parser@1.20.1/node_modules/body-parser/index.js"(exports2, module2) { + "use strict"; + var deprecate = require_depd()("body-parser"); + var parsers = /* @__PURE__ */ Object.create(null); + exports2 = module2.exports = deprecate.function( + bodyParser, + "bodyParser: use individual json/urlencoded middlewares" + ); + Object.defineProperty(exports2, "json", { + configurable: true, + enumerable: true, + get: createParserGetter("json") + }); + Object.defineProperty(exports2, "raw", { + configurable: true, + enumerable: true, + get: createParserGetter("raw") + }); + Object.defineProperty(exports2, "text", { + configurable: true, + enumerable: true, + get: createParserGetter("text") + }); + Object.defineProperty(exports2, "urlencoded", { + configurable: true, + enumerable: true, + get: createParserGetter("urlencoded") + }); + function bodyParser(options2) { + var opts = Object.create(options2 || null, { + type: { + configurable: true, + enumerable: true, + value: void 0, + writable: true + } + }); + var _urlencoded = exports2.urlencoded(opts); + var _json = exports2.json(opts); + return function bodyParser2(req, res, next) { + _json(req, res, function(err2) { + if (err2) + return next(err2); + _urlencoded(req, res, next); + }); + }; + } + function createParserGetter(name) { + return function get() { + return loadParser(name); + }; + } + function loadParser(parserName) { + var parser2 = parsers[parserName]; + if (parser2 !== void 0) { + return parser2; + } + switch (parserName) { + case "json": + parser2 = require_json2(); + break; + case "raw": + parser2 = require_raw(); + break; + case "text": + parser2 = require_text(); + break; + case "urlencoded": + parser2 = require_urlencoded(); + break; + } + return parsers[parserName] = parser2; + } + } +}); + +// ../node_modules/.pnpm/merge-descriptors@1.0.1/node_modules/merge-descriptors/index.js +var require_merge_descriptors = __commonJS({ + "../node_modules/.pnpm/merge-descriptors@1.0.1/node_modules/merge-descriptors/index.js"(exports2, module2) { + "use strict"; + module2.exports = merge3; + var hasOwnProperty2 = Object.prototype.hasOwnProperty; + function merge3(dest, src, redefine) { + if (!dest) { + throw new TypeError("argument dest is required"); + } + if (!src) { + throw new TypeError("argument src is required"); + } + if (redefine === void 0) { + redefine = true; + } + Object.getOwnPropertyNames(src).forEach(function forEachOwnPropertyName(name) { + if (!redefine && hasOwnProperty2.call(dest, name)) { + return; + } + var descriptor = Object.getOwnPropertyDescriptor(src, name); + Object.defineProperty(dest, name, descriptor); + }); + return dest; + } + } +}); + +// ../node_modules/.pnpm/encodeurl@1.0.2/node_modules/encodeurl/index.js +var require_encodeurl = __commonJS({ + "../node_modules/.pnpm/encodeurl@1.0.2/node_modules/encodeurl/index.js"(exports2, module2) { + "use strict"; + module2.exports = encodeUrl; + var ENCODE_CHARS_REGEXP = /(?:[^\x21\x25\x26-\x3B\x3D\x3F-\x5B\x5D\x5F\x61-\x7A\x7E]|%(?:[^0-9A-Fa-f]|[0-9A-Fa-f][^0-9A-Fa-f]|$))+/g; + var UNMATCHED_SURROGATE_PAIR_REGEXP = /(^|[^\uD800-\uDBFF])[\uDC00-\uDFFF]|[\uD800-\uDBFF]([^\uDC00-\uDFFF]|$)/g; + var UNMATCHED_SURROGATE_PAIR_REPLACE = "$1\uFFFD$2"; + function encodeUrl(url2) { + return String(url2).replace(UNMATCHED_SURROGATE_PAIR_REGEXP, UNMATCHED_SURROGATE_PAIR_REPLACE).replace(ENCODE_CHARS_REGEXP, encodeURI); + } + } +}); + +// ../node_modules/.pnpm/escape-html@1.0.3/node_modules/escape-html/index.js +var require_escape_html = __commonJS({ + "../node_modules/.pnpm/escape-html@1.0.3/node_modules/escape-html/index.js"(exports2, module2) { + "use strict"; + var matchHtmlRegExp = /["'&<>]/; + module2.exports = escapeHtml; + function escapeHtml(string) { + var str = "" + string; + var match2 = matchHtmlRegExp.exec(str); + if (!match2) { + return str; + } + var escape4; + var html = ""; + var index = 0; + var lastIndex = 0; + for (index = match2.index; index < str.length; index++) { + switch (str.charCodeAt(index)) { + case 34: + escape4 = """; + break; + case 38: + escape4 = "&"; + break; + case 39: + escape4 = "'"; + break; + case 60: + escape4 = "<"; + break; + case 62: + escape4 = ">"; + break; + default: + continue; + } + if (lastIndex !== index) { + html += str.substring(lastIndex, index); + } + lastIndex = index + 1; + html += escape4; + } + return lastIndex !== index ? html + str.substring(lastIndex, index) : html; + } + } +}); + +// ../node_modules/.pnpm/parseurl@1.3.3/node_modules/parseurl/index.js +var require_parseurl = __commonJS({ + "../node_modules/.pnpm/parseurl@1.3.3/node_modules/parseurl/index.js"(exports2, module2) { + "use strict"; + var url2 = require("url"); + var parse7 = url2.parse; + var Url = url2.Url; + module2.exports = parseurl; + module2.exports.original = originalurl; + function parseurl(req) { + var url3 = req.url; + if (url3 === void 0) { + return void 0; + } + var parsed = req._parsedUrl; + if (fresh(url3, parsed)) { + return parsed; + } + parsed = fastparse(url3); + parsed._raw = url3; + return req._parsedUrl = parsed; + } + function originalurl(req) { + var url3 = req.originalUrl; + if (typeof url3 !== "string") { + return parseurl(req); + } + var parsed = req._parsedOriginalUrl; + if (fresh(url3, parsed)) { + return parsed; + } + parsed = fastparse(url3); + parsed._raw = url3; + return req._parsedOriginalUrl = parsed; + } + function fastparse(str) { + if (typeof str !== "string" || str.charCodeAt(0) !== 47) { + return parse7(str); + } + var pathname = str; + var query = null; + var search = null; + for (var i = 1; i < str.length; i++) { + switch (str.charCodeAt(i)) { + case 63: + if (search === null) { + pathname = str.substring(0, i); + query = str.substring(i + 1); + search = str.substring(i); + } + break; + case 9: + case 10: + case 12: + case 13: + case 32: + case 35: + case 160: + case 65279: + return parse7(str); + } + } + var url3 = Url !== void 0 ? new Url() : {}; + url3.path = str; + url3.href = str; + url3.pathname = pathname; + if (search !== null) { + url3.query = query; + url3.search = search; + } + return url3; + } + function fresh(url3, parsedUrl) { + return typeof parsedUrl === "object" && parsedUrl !== null && (Url === void 0 || parsedUrl instanceof Url) && parsedUrl._raw === url3; + } + } +}); + +// ../node_modules/.pnpm/finalhandler@1.2.0/node_modules/finalhandler/index.js +var require_finalhandler = __commonJS({ + "../node_modules/.pnpm/finalhandler@1.2.0/node_modules/finalhandler/index.js"(exports2, module2) { + "use strict"; + var debug = require_src31()("finalhandler"); + var encodeUrl = require_encodeurl(); + var escapeHtml = require_escape_html(); + var onFinished = require_on_finished2(); + var parseUrl = require_parseurl(); + var statuses = require_statuses(); + var unpipe = require_unpipe(); + var DOUBLE_SPACE_REGEXP = /\x20{2}/g; + var NEWLINE_REGEXP = /\n/g; + var defer2 = typeof setImmediate === "function" ? setImmediate : function(fn) { + process.nextTick(fn.bind.apply(fn, arguments)); + }; + var isFinished = onFinished.isFinished; + function createHtmlDocument(message) { + var body2 = escapeHtml(message).replace(NEWLINE_REGEXP, "
").replace(DOUBLE_SPACE_REGEXP, "  "); + return '\n\n\n\nError\n\n\n

' + body2 + "
\n\n\n"; + } + module2.exports = finalhandler; + function finalhandler(req, res, options2) { + var opts = options2 || {}; + var env4 = opts.env || process.env.NODE_ENV || "development"; + var onerror = opts.onerror; + return function(err2) { + var headers; + var msg; + var status; + if (!err2 && headersSent(res)) { + debug("cannot 404 after headers sent"); + return; + } + if (err2) { + status = getErrorStatusCode(err2); + if (status === void 0) { + status = getResponseStatusCode(res); + } else { + headers = getErrorHeaders(err2); + } + msg = getErrorMessage(err2, status, env4); + } else { + status = 404; + msg = "Cannot " + req.method + " " + encodeUrl(getResourceName(req)); + } + debug("default %s", status); + if (err2 && onerror) { + defer2(onerror, err2, req, res); + } + if (headersSent(res)) { + debug("cannot %d after headers sent", status); + req.socket.destroy(); + return; + } + send(req, res, status, headers, msg); + }; + } + function getErrorHeaders(err2) { + if (!err2.headers || typeof err2.headers !== "object") { + return void 0; + } + var headers = /* @__PURE__ */ Object.create(null); + var keys = Object.keys(err2.headers); + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + headers[key] = err2.headers[key]; + } + return headers; + } + function getErrorMessage(err2, status, env4) { + var msg; + if (env4 !== "production") { + msg = err2.stack; + if (!msg && typeof err2.toString === "function") { + msg = err2.toString(); + } + } + return msg || statuses.message[status]; + } + function getErrorStatusCode(err2) { + if (typeof err2.status === "number" && err2.status >= 400 && err2.status < 600) { + return err2.status; + } + if (typeof err2.statusCode === "number" && err2.statusCode >= 400 && err2.statusCode < 600) { + return err2.statusCode; + } + return void 0; + } + function getResourceName(req) { + try { + return parseUrl.original(req).pathname; + } catch (e) { + return "resource"; + } + } + function getResponseStatusCode(res) { + var status = res.statusCode; + if (typeof status !== "number" || status < 400 || status > 599) { + status = 500; + } + return status; + } + function headersSent(res) { + return typeof res.headersSent !== "boolean" ? Boolean(res._header) : res.headersSent; + } + function send(req, res, status, headers, message) { + function write() { + var body2 = createHtmlDocument(message); + res.statusCode = status; + res.statusMessage = statuses.message[status]; + res.removeHeader("Content-Encoding"); + res.removeHeader("Content-Language"); + res.removeHeader("Content-Range"); + setHeaders(res, headers); + res.setHeader("Content-Security-Policy", "default-src 'none'"); + res.setHeader("X-Content-Type-Options", "nosniff"); + res.setHeader("Content-Type", "text/html; charset=utf-8"); + res.setHeader("Content-Length", Buffer.byteLength(body2, "utf8")); + if (req.method === "HEAD") { + res.end(); + return; + } + res.end(body2, "utf8"); + } + if (isFinished(req)) { + write(); + return; + } + unpipe(req); + onFinished(req, write); + req.resume(); + } + function setHeaders(res, headers) { + if (!headers) { + return; + } + var keys = Object.keys(headers); + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + res.setHeader(key, headers[key]); + } + } + } +}); + +// ../node_modules/.pnpm/array-flatten@1.1.1/node_modules/array-flatten/array-flatten.js +var require_array_flatten = __commonJS({ + "../node_modules/.pnpm/array-flatten@1.1.1/node_modules/array-flatten/array-flatten.js"(exports2, module2) { + "use strict"; + module2.exports = arrayFlatten; + function flattenWithDepth(array, result, depth) { + for (var i = 0; i < array.length; i++) { + var value = array[i]; + if (depth > 0 && Array.isArray(value)) { + flattenWithDepth(value, result, depth - 1); + } else { + result.push(value); + } + } + return result; + } + function flattenForever(array, result) { + for (var i = 0; i < array.length; i++) { + var value = array[i]; + if (Array.isArray(value)) { + flattenForever(value, result); + } else { + result.push(value); + } + } + return result; + } + function arrayFlatten(array, depth) { + if (depth == null) { + return flattenForever(array, []); + } + return flattenWithDepth(array, [], depth); + } + } +}); + +// ../node_modules/.pnpm/path-to-regexp@0.1.7/node_modules/path-to-regexp/index.js +var require_path_to_regexp = __commonJS({ + "../node_modules/.pnpm/path-to-regexp@0.1.7/node_modules/path-to-regexp/index.js"(exports2, module2) { + module2.exports = pathtoRegexp; + var MATCHING_GROUP_REGEXP = /\((?!\?)/g; + function pathtoRegexp(path30, keys, options2) { + options2 = options2 || {}; + keys = keys || []; + var strict = options2.strict; + var end = options2.end !== false; + var flags2 = options2.sensitive ? "" : "i"; + var extraOffset = 0; + var keysOffset = keys.length; + var i = 0; + var name = 0; + var m; + if (path30 instanceof RegExp) { + while (m = MATCHING_GROUP_REGEXP.exec(path30.source)) { + keys.push({ + name: name++, + optional: false, + offset: m.index + }); + } + return path30; + } + if (Array.isArray(path30)) { + path30 = path30.map(function(value) { + return pathtoRegexp(value, keys, options2).source; + }); + return new RegExp("(?:" + path30.join("|") + ")", flags2); + } + path30 = ("^" + path30 + (strict ? "" : path30[path30.length - 1] === "/" ? "?" : "/?")).replace(/\/\(/g, "/(?:").replace(/([\/\.])/g, "\\$1").replace(/(\\\/)?(\\\.)?:(\w+)(\(.*?\))?(\*)?(\?)?/g, function(match2, slash, format, key, capture, star3, optional, offset) { + slash = slash || ""; + format = format || ""; + capture = capture || "([^\\/" + format + "]+?)"; + optional = optional || ""; + keys.push({ + name: key, + optional: !!optional, + offset: offset + extraOffset + }); + var result = "" + (optional ? "" : slash) + "(?:" + format + (optional ? slash : "") + capture + (star3 ? "((?:[\\/" + format + "].+?)?)" : "") + ")" + optional; + extraOffset += result.length - match2.length; + return result; + }).replace(/\*/g, function(star3, index2) { + var len = keys.length; + while (len-- > keysOffset && keys[len].offset > index2) { + keys[len].offset += 3; + } + return "(.*)"; + }); + while (m = MATCHING_GROUP_REGEXP.exec(path30)) { + var escapeCount = 0; + var index = m.index; + while (path30.charAt(--index) === "\\") { + escapeCount++; + } + if (escapeCount % 2 === 1) { + continue; + } + if (keysOffset + i === keys.length || keys[keysOffset + i].offset > m.index) { + keys.splice(keysOffset + i, 0, { + name: name++, + // Unnamed matching groups must be consistently linear. + optional: false, + offset: m.index + }); + } + i++; + } + path30 += end ? "$" : path30[path30.length - 1] === "/" ? "" : "(?=\\/|$)"; + return new RegExp(path30, flags2); + } + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/router/layer.js +var require_layer = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/router/layer.js"(exports2, module2) { + "use strict"; + var pathRegexp = require_path_to_regexp(); + var debug = require_src31()("express:router:layer"); + var hasOwnProperty2 = Object.prototype.hasOwnProperty; + module2.exports = Layer; + function Layer(path30, options2, fn) { + if (!(this instanceof Layer)) { + return new Layer(path30, options2, fn); + } + debug("new %o", path30); + var opts = options2 || {}; + this.handle = fn; + this.name = fn.name || ""; + this.params = void 0; + this.path = void 0; + this.regexp = pathRegexp(path30, this.keys = [], opts); + this.regexp.fast_star = path30 === "*"; + this.regexp.fast_slash = path30 === "/" && opts.end === false; + } + Layer.prototype.handle_error = function handle_error(error, req, res, next) { + var fn = this.handle; + if (fn.length !== 4) { + return next(error); + } + try { + fn(error, req, res, next); + } catch (err2) { + next(err2); + } + }; + Layer.prototype.handle_request = function handle2(req, res, next) { + var fn = this.handle; + if (fn.length > 3) { + return next(); + } + try { + fn(req, res, next); + } catch (err2) { + next(err2); + } + }; + Layer.prototype.match = function match2(path30) { + var match3; + if (path30 != null) { + if (this.regexp.fast_slash) { + this.params = {}; + this.path = ""; + return true; + } + if (this.regexp.fast_star) { + this.params = { "0": decode_param(path30) }; + this.path = path30; + return true; + } + match3 = this.regexp.exec(path30); + } + if (!match3) { + this.params = void 0; + this.path = void 0; + return false; + } + this.params = {}; + this.path = match3[0]; + var keys = this.keys; + var params = this.params; + for (var i = 1; i < match3.length; i++) { + var key = keys[i - 1]; + var prop = key.name; + var val = decode_param(match3[i]); + if (val !== void 0 || !hasOwnProperty2.call(params, prop)) { + params[prop] = val; + } + } + return true; + }; + function decode_param(val) { + if (typeof val !== "string" || val.length === 0) { + return val; + } + try { + return decodeURIComponent(val); + } catch (err2) { + if (err2 instanceof URIError) { + err2.message = "Failed to decode param '" + val + "'"; + err2.status = err2.statusCode = 400; + } + throw err2; + } + } + } +}); + +// ../node_modules/.pnpm/methods@1.1.2/node_modules/methods/index.js +var require_methods = __commonJS({ + "../node_modules/.pnpm/methods@1.1.2/node_modules/methods/index.js"(exports2, module2) { + "use strict"; + var http4 = require("http"); + module2.exports = getCurrentNodeMethods() || getBasicNodeMethods(); + function getCurrentNodeMethods() { + return http4.METHODS && http4.METHODS.map(function lowerCaseMethod(method) { + return method.toLowerCase(); + }); + } + function getBasicNodeMethods() { + return [ + "get", + "post", + "put", + "head", + "delete", + "options", + "trace", + "copy", + "lock", + "mkcol", + "move", + "purge", + "propfind", + "proppatch", + "unlock", + "report", + "mkactivity", + "checkout", + "merge", + "m-search", + "notify", + "subscribe", + "unsubscribe", + "patch", + "search", + "connect" + ]; + } + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/router/route.js +var require_route = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/router/route.js"(exports2, module2) { + "use strict"; + var debug = require_src31()("express:router:route"); + var flatten = require_array_flatten(); + var Layer = require_layer(); + var methods = require_methods(); + var slice = Array.prototype.slice; + var toString3 = Object.prototype.toString; + module2.exports = Route; + function Route(path30) { + this.path = path30; + this.stack = []; + debug("new %o", path30); + this.methods = {}; + } + Route.prototype._handles_method = function _handles_method(method) { + if (this.methods._all) { + return true; + } + var name = method.toLowerCase(); + if (name === "head" && !this.methods["head"]) { + name = "get"; + } + return Boolean(this.methods[name]); + }; + Route.prototype._options = function _options() { + var methods2 = Object.keys(this.methods); + if (this.methods.get && !this.methods.head) { + methods2.push("head"); + } + for (var i = 0; i < methods2.length; i++) { + methods2[i] = methods2[i].toUpperCase(); + } + return methods2; + }; + Route.prototype.dispatch = function dispatch(req, res, done) { + var idx = 0; + var stack = this.stack; + var sync2 = 0; + if (stack.length === 0) { + return done(); + } + var method = req.method.toLowerCase(); + if (method === "head" && !this.methods["head"]) { + method = "get"; + } + req.route = this; + next(); + function next(err2) { + if (err2 && err2 === "route") { + return done(); + } + if (err2 && err2 === "router") { + return done(err2); + } + if (++sync2 > 100) { + return setImmediate(next, err2); + } + var layer = stack[idx++]; + if (!layer) { + return done(err2); + } + if (layer.method && layer.method !== method) { + next(err2); + } else if (err2) { + layer.handle_error(err2, req, res, next); + } else { + layer.handle_request(req, res, next); + } + sync2 = 0; + } + }; + Route.prototype.all = function all3() { + var handles = flatten(slice.call(arguments)); + for (var i = 0; i < handles.length; i++) { + var handle2 = handles[i]; + if (typeof handle2 !== "function") { + var type2 = toString3.call(handle2); + var msg = "Route.all() requires a callback function but got a " + type2; + throw new TypeError(msg); + } + var layer = Layer("/", {}, handle2); + layer.method = void 0; + this.methods._all = true; + this.stack.push(layer); + } + return this; + }; + methods.forEach(function(method) { + Route.prototype[method] = function() { + var handles = flatten(slice.call(arguments)); + for (var i = 0; i < handles.length; i++) { + var handle2 = handles[i]; + if (typeof handle2 !== "function") { + var type2 = toString3.call(handle2); + var msg = "Route." + method + "() requires a callback function but got a " + type2; + throw new Error(msg); + } + debug("%s %o", method, this.path); + var layer = Layer("/", {}, handle2); + layer.method = method; + this.methods[method] = true; + this.stack.push(layer); + } + return this; + }; + }); + } +}); + +// ../node_modules/.pnpm/utils-merge@1.0.1/node_modules/utils-merge/index.js +var require_utils_merge = __commonJS({ + "../node_modules/.pnpm/utils-merge@1.0.1/node_modules/utils-merge/index.js"(exports2, module2) { + exports2 = module2.exports = function(a, b) { + if (a && b) { + for (var key in b) { + a[key] = b[key]; + } + } + return a; + }; + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/router/index.js +var require_router2 = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/router/index.js"(exports2, module2) { + "use strict"; + var Route = require_route(); + var Layer = require_layer(); + var methods = require_methods(); + var mixin = require_utils_merge(); + var debug = require_src31()("express:router"); + var deprecate = require_depd()("express"); + var flatten = require_array_flatten(); + var parseUrl = require_parseurl(); + var setPrototypeOf = require_setprototypeof(); + var objectRegExp = /^\[object (\S+)\]$/; + var slice = Array.prototype.slice; + var toString3 = Object.prototype.toString; + var proto = module2.exports = function(options2) { + var opts = options2 || {}; + function router(req, res, next) { + router.handle(req, res, next); + } + setPrototypeOf(router, proto); + router.params = {}; + router._params = []; + router.caseSensitive = opts.caseSensitive; + router.mergeParams = opts.mergeParams; + router.strict = opts.strict; + router.stack = []; + return router; + }; + proto.param = function param(name, fn) { + if (typeof name === "function") { + deprecate("router.param(fn): Refactor to use path params"); + this._params.push(name); + return; + } + var params = this._params; + var len = params.length; + var ret2; + if (name[0] === ":") { + deprecate("router.param(" + JSON.stringify(name) + ", fn): Use router.param(" + JSON.stringify(name.slice(1)) + ", fn) instead"); + name = name.slice(1); + } + for (var i = 0; i < len; ++i) { + if (ret2 = params[i](name, fn)) { + fn = ret2; + } + } + if ("function" !== typeof fn) { + throw new Error("invalid param() call for " + name + ", got " + fn); + } + (this.params[name] = this.params[name] || []).push(fn); + return this; + }; + proto.handle = function handle2(req, res, out2) { + var self2 = this; + debug("dispatching %s %s", req.method, req.url); + var idx = 0; + var protohost = getProtohost(req.url) || ""; + var removed = ""; + var slashAdded = false; + var sync2 = 0; + var paramcalled = {}; + var options2 = []; + var stack = self2.stack; + var parentParams = req.params; + var parentUrl = req.baseUrl || ""; + var done = restore(out2, req, "baseUrl", "next", "params"); + req.next = next; + if (req.method === "OPTIONS") { + done = wrap2(done, function(old, err2) { + if (err2 || options2.length === 0) + return old(err2); + sendOptionsResponse(res, options2, old); + }); + } + req.baseUrl = parentUrl; + req.originalUrl = req.originalUrl || req.url; + next(); + function next(err2) { + var layerError = err2 === "route" ? null : err2; + if (slashAdded) { + req.url = req.url.slice(1); + slashAdded = false; + } + if (removed.length !== 0) { + req.baseUrl = parentUrl; + req.url = protohost + removed + req.url.slice(protohost.length); + removed = ""; + } + if (layerError === "router") { + setImmediate(done, null); + return; + } + if (idx >= stack.length) { + setImmediate(done, layerError); + return; + } + if (++sync2 > 100) { + return setImmediate(next, err2); + } + var path30 = getPathname(req); + if (path30 == null) { + return done(layerError); + } + var layer; + var match2; + var route; + while (match2 !== true && idx < stack.length) { + layer = stack[idx++]; + match2 = matchLayer(layer, path30); + route = layer.route; + if (typeof match2 !== "boolean") { + layerError = layerError || match2; + } + if (match2 !== true) { + continue; + } + if (!route) { + continue; + } + if (layerError) { + match2 = false; + continue; + } + var method = req.method; + var has_method = route._handles_method(method); + if (!has_method && method === "OPTIONS") { + appendMethods(options2, route._options()); + } + if (!has_method && method !== "HEAD") { + match2 = false; + } + } + if (match2 !== true) { + return done(layerError); + } + if (route) { + req.route = route; + } + req.params = self2.mergeParams ? mergeParams(layer.params, parentParams) : layer.params; + var layerPath = layer.path; + self2.process_params(layer, paramcalled, req, res, function(err3) { + if (err3) { + next(layerError || err3); + } else if (route) { + layer.handle_request(req, res, next); + } else { + trim_prefix(layer, layerError, layerPath, path30); + } + sync2 = 0; + }); + } + function trim_prefix(layer, layerError, layerPath, path30) { + if (layerPath.length !== 0) { + if (layerPath !== path30.slice(0, layerPath.length)) { + next(layerError); + return; + } + var c = path30[layerPath.length]; + if (c && c !== "/" && c !== ".") + return next(layerError); + debug("trim prefix (%s) from url %s", layerPath, req.url); + removed = layerPath; + req.url = protohost + req.url.slice(protohost.length + removed.length); + if (!protohost && req.url[0] !== "/") { + req.url = "/" + req.url; + slashAdded = true; + } + req.baseUrl = parentUrl + (removed[removed.length - 1] === "/" ? removed.substring(0, removed.length - 1) : removed); + } + debug("%s %s : %s", layer.name, layerPath, req.originalUrl); + if (layerError) { + layer.handle_error(layerError, req, res, next); + } else { + layer.handle_request(req, res, next); + } + } + }; + proto.process_params = function process_params(layer, called, req, res, done) { + var params = this.params; + var keys = layer.keys; + if (!keys || keys.length === 0) { + return done(); + } + var i = 0; + var name; + var paramIndex = 0; + var key; + var paramVal; + var paramCallbacks; + var paramCalled; + function param(err2) { + if (err2) { + return done(err2); + } + if (i >= keys.length) { + return done(); + } + paramIndex = 0; + key = keys[i++]; + name = key.name; + paramVal = req.params[name]; + paramCallbacks = params[name]; + paramCalled = called[name]; + if (paramVal === void 0 || !paramCallbacks) { + return param(); + } + if (paramCalled && (paramCalled.match === paramVal || paramCalled.error && paramCalled.error !== "route")) { + req.params[name] = paramCalled.value; + return param(paramCalled.error); + } + called[name] = paramCalled = { + error: null, + match: paramVal, + value: paramVal + }; + paramCallback(); + } + function paramCallback(err2) { + var fn = paramCallbacks[paramIndex++]; + paramCalled.value = req.params[key.name]; + if (err2) { + paramCalled.error = err2; + param(err2); + return; + } + if (!fn) + return param(); + try { + fn(req, res, paramCallback, paramVal, key.name); + } catch (e) { + paramCallback(e); + } + } + param(); + }; + proto.use = function use2(fn) { + var offset = 0; + var path30 = "/"; + if (typeof fn !== "function") { + var arg = fn; + while (Array.isArray(arg) && arg.length !== 0) { + arg = arg[0]; + } + if (typeof arg !== "function") { + offset = 1; + path30 = fn; + } + } + var callbacks = flatten(slice.call(arguments, offset)); + if (callbacks.length === 0) { + throw new TypeError("Router.use() requires a middleware function"); + } + for (var i = 0; i < callbacks.length; i++) { + var fn = callbacks[i]; + if (typeof fn !== "function") { + throw new TypeError("Router.use() requires a middleware function but got a " + gettype(fn)); + } + debug("use %o %s", path30, fn.name || ""); + var layer = new Layer(path30, { + sensitive: this.caseSensitive, + strict: false, + end: false + }, fn); + layer.route = void 0; + this.stack.push(layer); + } + return this; + }; + proto.route = function route(path30) { + var route2 = new Route(path30); + var layer = new Layer(path30, { + sensitive: this.caseSensitive, + strict: this.strict, + end: true + }, route2.dispatch.bind(route2)); + layer.route = route2; + this.stack.push(layer); + return route2; + }; + methods.concat("all").forEach(function(method) { + proto[method] = function(path30) { + var route = this.route(path30); + route[method].apply(route, slice.call(arguments, 1)); + return this; + }; + }); + function appendMethods(list, addition) { + for (var i = 0; i < addition.length; i++) { + var method = addition[i]; + if (list.indexOf(method) === -1) { + list.push(method); + } + } + } + function getPathname(req) { + try { + return parseUrl(req).pathname; + } catch (err2) { + return void 0; + } + } + function getProtohost(url2) { + if (typeof url2 !== "string" || url2.length === 0 || url2[0] === "/") { + return void 0; + } + var searchIndex = url2.indexOf("?"); + var pathLength = searchIndex !== -1 ? searchIndex : url2.length; + var fqdnIndex = url2.slice(0, pathLength).indexOf("://"); + return fqdnIndex !== -1 ? url2.substring(0, url2.indexOf("/", 3 + fqdnIndex)) : void 0; + } + function gettype(obj2) { + var type2 = typeof obj2; + if (type2 !== "object") { + return type2; + } + return toString3.call(obj2).replace(objectRegExp, "$1"); + } + function matchLayer(layer, path30) { + try { + return layer.match(path30); + } catch (err2) { + return err2; + } + } + function mergeParams(params, parent) { + if (typeof parent !== "object" || !parent) { + return params; + } + var obj2 = mixin({}, parent); + if (!(0 in params) || !(0 in parent)) { + return mixin(obj2, params); + } + var i = 0; + var o = 0; + while (i in params) { + i++; + } + while (o in parent) { + o++; + } + for (i--; i >= 0; i--) { + params[i + o] = params[i]; + if (i < o) { + delete params[i]; + } + } + return mixin(obj2, params); + } + function restore(fn, obj2) { + var props = new Array(arguments.length - 2); + var vals = new Array(arguments.length - 2); + for (var i = 0; i < props.length; i++) { + props[i] = arguments[i + 2]; + vals[i] = obj2[props[i]]; + } + return function() { + for (var i2 = 0; i2 < props.length; i2++) { + obj2[props[i2]] = vals[i2]; + } + return fn.apply(this, arguments); + }; + } + function sendOptionsResponse(res, options2, next) { + try { + var body2 = options2.join(","); + res.set("Allow", body2); + res.send(body2); + } catch (err2) { + next(err2); + } + } + function wrap2(old, fn) { + return function proxy2() { + var args3 = new Array(arguments.length + 1); + args3[0] = old; + for (var i = 0, len = arguments.length; i < len; i++) { + args3[i + 1] = arguments[i]; + } + fn.apply(this, args3); + }; + } + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/middleware/init.js +var require_init = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/middleware/init.js"(exports2) { + "use strict"; + var setPrototypeOf = require_setprototypeof(); + exports2.init = function(app) { + return function expressInit(req, res, next) { + if (app.enabled("x-powered-by")) + res.setHeader("X-Powered-By", "Express"); + req.res = res; + res.req = req; + req.next = next; + setPrototypeOf(req, app.request); + setPrototypeOf(res, app.response); + res.locals = res.locals || /* @__PURE__ */ Object.create(null); + next(); + }; + }; + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/middleware/query.js +var require_query = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/middleware/query.js"(exports2, module2) { + "use strict"; + var merge3 = require_utils_merge(); + var parseUrl = require_parseurl(); + var qs = require_lib8(); + module2.exports = function query(options2) { + var opts = merge3({}, options2); + var queryparse = qs.parse; + if (typeof options2 === "function") { + queryparse = options2; + opts = void 0; + } + if (opts !== void 0 && opts.allowPrototypes === void 0) { + opts.allowPrototypes = true; + } + return function query2(req, res, next) { + if (!req.query) { + var val = parseUrl(req).query; + req.query = queryparse(val, opts); + } + next(); + }; + }; + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/view.js +var require_view = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/view.js"(exports2, module2) { + "use strict"; + var debug = require_src31()("express:view"); + var path30 = require("path"); + var fs6 = require("fs"); + var dirname9 = path30.dirname; + var basename9 = path30.basename; + var extname2 = path30.extname; + var join9 = path30.join; + var resolve8 = path30.resolve; + module2.exports = View; + function View(name, options2) { + var opts = options2 || {}; + this.defaultEngine = opts.defaultEngine; + this.ext = extname2(name); + this.name = name; + this.root = opts.root; + if (!this.ext && !this.defaultEngine) { + throw new Error("No default engine was specified and no extension was provided."); + } + var fileName = name; + if (!this.ext) { + this.ext = this.defaultEngine[0] !== "." ? "." + this.defaultEngine : this.defaultEngine; + fileName += this.ext; + } + if (!opts.engines[this.ext]) { + var mod2 = this.ext.slice(1); + debug('require "%s"', mod2); + var fn = require(mod2).__express; + if (typeof fn !== "function") { + throw new Error('Module "' + mod2 + '" does not provide a view engine.'); + } + opts.engines[this.ext] = fn; + } + this.engine = opts.engines[this.ext]; + this.path = this.lookup(fileName); + } + View.prototype.lookup = function lookup(name) { + var path31; + var roots = [].concat(this.root); + debug('lookup "%s"', name); + for (var i = 0; i < roots.length && !path31; i++) { + var root = roots[i]; + var loc = resolve8(root, name); + var dir = dirname9(loc); + var file = basename9(loc); + path31 = this.resolve(dir, file); + } + return path31; + }; + View.prototype.render = function render(options2, callback) { + debug('render "%s"', this.path); + this.engine(this.path, options2, callback); + }; + View.prototype.resolve = function resolve9(dir, file) { + var ext2 = this.ext; + var path31 = join9(dir, file); + var stat7 = tryStat(path31); + if (stat7 && stat7.isFile()) { + return path31; + } + path31 = join9(dir, basename9(file, ext2), "index" + ext2); + stat7 = tryStat(path31); + if (stat7 && stat7.isFile()) { + return path31; + } + }; + function tryStat(path31) { + debug('stat "%s"', path31); + try { + return fs6.statSync(path31); + } catch (e) { + return void 0; + } + } + } +}); + +// ../node_modules/.pnpm/safe-buffer@5.2.1/node_modules/safe-buffer/index.js +var require_safe_buffer2 = __commonJS({ + "../node_modules/.pnpm/safe-buffer@5.2.1/node_modules/safe-buffer/index.js"(exports2, module2) { + var buffer2 = require("buffer"); + var Buffer2 = buffer2.Buffer; + function copyProps(src, dst) { + for (var key in src) { + dst[key] = src[key]; + } + } + if (Buffer2.from && Buffer2.alloc && Buffer2.allocUnsafe && Buffer2.allocUnsafeSlow) { + module2.exports = buffer2; + } else { + copyProps(buffer2, exports2); + exports2.Buffer = SafeBuffer; + } + function SafeBuffer(arg, encodingOrOffset, length) { + return Buffer2(arg, encodingOrOffset, length); + } + SafeBuffer.prototype = Object.create(Buffer2.prototype); + copyProps(Buffer2, SafeBuffer); + SafeBuffer.from = function(arg, encodingOrOffset, length) { + if (typeof arg === "number") { + throw new TypeError("Argument must not be a number"); + } + return Buffer2(arg, encodingOrOffset, length); + }; + SafeBuffer.alloc = function(size, fill, encoding) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + var buf = Buffer2(size); + if (fill !== void 0) { + if (typeof encoding === "string") { + buf.fill(fill, encoding); + } else { + buf.fill(fill); + } + } else { + buf.fill(0); + } + return buf; + }; + SafeBuffer.allocUnsafe = function(size) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + return Buffer2(size); + }; + SafeBuffer.allocUnsafeSlow = function(size) { + if (typeof size !== "number") { + throw new TypeError("Argument must be a number"); + } + return buffer2.SlowBuffer(size); + }; + } +}); + +// ../node_modules/.pnpm/content-disposition@0.5.4/node_modules/content-disposition/index.js +var require_content_disposition = __commonJS({ + "../node_modules/.pnpm/content-disposition@0.5.4/node_modules/content-disposition/index.js"(exports2, module2) { + "use strict"; + module2.exports = contentDisposition; + module2.exports.parse = parse7; + var basename9 = require("path").basename; + var Buffer2 = require_safe_buffer2().Buffer; + var ENCODE_URL_ATTR_CHAR_REGEXP = /[\x00-\x20"'()*,/:;<=>?@[\\\]{}\x7f]/g; + var HEX_ESCAPE_REGEXP = /%[0-9A-Fa-f]{2}/; + var HEX_ESCAPE_REPLACE_REGEXP = /%([0-9A-Fa-f]{2})/g; + var NON_LATIN1_REGEXP = /[^\x20-\x7e\xa0-\xff]/g; + var QESC_REGEXP = /\\([\u0000-\u007f])/g; + var QUOTE_REGEXP = /([\\"])/g; + var PARAM_REGEXP = /;[\x09\x20]*([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*=[\x09\x20]*("(?:[\x20!\x23-\x5b\x5d-\x7e\x80-\xff]|\\[\x20-\x7e])*"|[!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*/g; + var TEXT_REGEXP = /^[\x20-\x7e\x80-\xff]+$/; + var TOKEN_REGEXP = /^[!#$%&'*+.0-9A-Z^_`a-z|~-]+$/; + var EXT_VALUE_REGEXP = /^([A-Za-z0-9!#$%&+\-^_`{}~]+)'(?:[A-Za-z]{2,3}(?:-[A-Za-z]{3}){0,3}|[A-Za-z]{4,8}|)'((?:%[0-9A-Fa-f]{2}|[A-Za-z0-9!#$&+.^_`|~-])+)$/; + var DISPOSITION_TYPE_REGEXP = /^([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*(?:$|;)/; + function contentDisposition(filename, options2) { + var opts = options2 || {}; + var type2 = opts.type || "attachment"; + var params = createparams(filename, opts.fallback); + return format(new ContentDisposition(type2, params)); + } + function createparams(filename, fallback) { + if (filename === void 0) { + return; + } + var params = {}; + if (typeof filename !== "string") { + throw new TypeError("filename must be a string"); + } + if (fallback === void 0) { + fallback = true; + } + if (typeof fallback !== "string" && typeof fallback !== "boolean") { + throw new TypeError("fallback must be a string or boolean"); + } + if (typeof fallback === "string" && NON_LATIN1_REGEXP.test(fallback)) { + throw new TypeError("fallback must be ISO-8859-1 string"); + } + var name = basename9(filename); + var isQuotedString = TEXT_REGEXP.test(name); + var fallbackName = typeof fallback !== "string" ? fallback && getlatin1(name) : basename9(fallback); + var hasFallback = typeof fallbackName === "string" && fallbackName !== name; + if (hasFallback || !isQuotedString || HEX_ESCAPE_REGEXP.test(name)) { + params["filename*"] = name; + } + if (isQuotedString || hasFallback) { + params.filename = hasFallback ? fallbackName : name; + } + return params; + } + function format(obj2) { + var parameters = obj2.parameters; + var type2 = obj2.type; + if (!type2 || typeof type2 !== "string" || !TOKEN_REGEXP.test(type2)) { + throw new TypeError("invalid type"); + } + var string = String(type2).toLowerCase(); + if (parameters && typeof parameters === "object") { + var param; + var params = Object.keys(parameters).sort(); + for (var i = 0; i < params.length; i++) { + param = params[i]; + var val = param.substr(-1) === "*" ? ustring(parameters[param]) : qstring(parameters[param]); + string += "; " + param + "=" + val; + } + } + return string; + } + function decodefield(str) { + var match2 = EXT_VALUE_REGEXP.exec(str); + if (!match2) { + throw new TypeError("invalid extended field value"); + } + var charset = match2[1].toLowerCase(); + var encoded = match2[2]; + var value; + var binary2 = encoded.replace(HEX_ESCAPE_REPLACE_REGEXP, pdecode); + switch (charset) { + case "iso-8859-1": + value = getlatin1(binary2); + break; + case "utf-8": + value = Buffer2.from(binary2, "binary").toString("utf8"); + break; + default: + throw new TypeError("unsupported charset in extended field"); + } + return value; + } + function getlatin1(val) { + return String(val).replace(NON_LATIN1_REGEXP, "?"); + } + function parse7(string) { + if (!string || typeof string !== "string") { + throw new TypeError("argument string is required"); + } + var match2 = DISPOSITION_TYPE_REGEXP.exec(string); + if (!match2) { + throw new TypeError("invalid type format"); + } + var index = match2[0].length; + var type2 = match2[1].toLowerCase(); + var key; + var names = []; + var params = {}; + var value; + index = PARAM_REGEXP.lastIndex = match2[0].substr(-1) === ";" ? index - 1 : index; + while (match2 = PARAM_REGEXP.exec(string)) { + if (match2.index !== index) { + throw new TypeError("invalid parameter format"); + } + index += match2[0].length; + key = match2[1].toLowerCase(); + value = match2[2]; + if (names.indexOf(key) !== -1) { + throw new TypeError("invalid duplicate parameter"); + } + names.push(key); + if (key.indexOf("*") + 1 === key.length) { + key = key.slice(0, -1); + value = decodefield(value); + params[key] = value; + continue; + } + if (typeof params[key] === "string") { + continue; + } + if (value[0] === '"') { + value = value.substr(1, value.length - 2).replace(QESC_REGEXP, "$1"); + } + params[key] = value; + } + if (index !== -1 && index !== string.length) { + throw new TypeError("invalid parameter format"); + } + return new ContentDisposition(type2, params); + } + function pdecode(str, hex) { + return String.fromCharCode(parseInt(hex, 16)); + } + function pencode(char) { + return "%" + String(char).charCodeAt(0).toString(16).toUpperCase(); + } + function qstring(val) { + var str = String(val); + return '"' + str.replace(QUOTE_REGEXP, "\\$1") + '"'; + } + function ustring(val) { + var str = String(val); + var encoded = encodeURIComponent(str).replace(ENCODE_URL_ATTR_CHAR_REGEXP, pencode); + return "UTF-8''" + encoded; + } + function ContentDisposition(type2, parameters) { + this.type = type2; + this.parameters = parameters; + } + } +}); + +// ../node_modules/.pnpm/etag@1.8.1/node_modules/etag/index.js +var require_etag = __commonJS({ + "../node_modules/.pnpm/etag@1.8.1/node_modules/etag/index.js"(exports2, module2) { + "use strict"; + module2.exports = etag; + var crypto3 = require("crypto"); + var Stats = require("fs").Stats; + var toString3 = Object.prototype.toString; + function entitytag(entity) { + if (entity.length === 0) { + return '"0-2jmj7l5rSw0yVb/vlWAYkK/YBwk"'; + } + var hash = crypto3.createHash("sha1").update(entity, "utf8").digest("base64").substring(0, 27); + var len = typeof entity === "string" ? Buffer.byteLength(entity, "utf8") : entity.length; + return '"' + len.toString(16) + "-" + hash + '"'; + } + function etag(entity, options2) { + if (entity == null) { + throw new TypeError("argument entity is required"); + } + var isStats = isstats(entity); + var weak = options2 && typeof options2.weak === "boolean" ? options2.weak : isStats; + if (!isStats && typeof entity !== "string" && !Buffer.isBuffer(entity)) { + throw new TypeError("argument entity must be string, Buffer, or fs.Stats"); + } + var tag = isStats ? stattag(entity) : entitytag(entity); + return weak ? "W/" + tag : tag; + } + function isstats(obj2) { + if (typeof Stats === "function" && obj2 instanceof Stats) { + return true; + } + return obj2 && typeof obj2 === "object" && "ctime" in obj2 && toString3.call(obj2.ctime) === "[object Date]" && "mtime" in obj2 && toString3.call(obj2.mtime) === "[object Date]" && "ino" in obj2 && typeof obj2.ino === "number" && "size" in obj2 && typeof obj2.size === "number"; + } + function stattag(stat7) { + var mtime = stat7.mtime.getTime().toString(16); + var size = stat7.size.toString(16); + return '"' + size + "-" + mtime + '"'; + } + } +}); + +// ../node_modules/.pnpm/fresh@0.5.2/node_modules/fresh/index.js +var require_fresh = __commonJS({ + "../node_modules/.pnpm/fresh@0.5.2/node_modules/fresh/index.js"(exports2, module2) { + "use strict"; + var CACHE_CONTROL_NO_CACHE_REGEXP = /(?:^|,)\s*?no-cache\s*?(?:,|$)/; + module2.exports = fresh; + function fresh(reqHeaders, resHeaders) { + var modifiedSince = reqHeaders["if-modified-since"]; + var noneMatch = reqHeaders["if-none-match"]; + if (!modifiedSince && !noneMatch) { + return false; + } + var cacheControl = reqHeaders["cache-control"]; + if (cacheControl && CACHE_CONTROL_NO_CACHE_REGEXP.test(cacheControl)) { + return false; + } + if (noneMatch && noneMatch !== "*") { + var etag = resHeaders["etag"]; + if (!etag) { + return false; + } + var etagStale = true; + var matches = parseTokenList(noneMatch); + for (var i = 0; i < matches.length; i++) { + var match2 = matches[i]; + if (match2 === etag || match2 === "W/" + etag || "W/" + match2 === etag) { + etagStale = false; + break; + } + } + if (etagStale) { + return false; + } + } + if (modifiedSince) { + var lastModified = resHeaders["last-modified"]; + var modifiedStale = !lastModified || !(parseHttpDate(lastModified) <= parseHttpDate(modifiedSince)); + if (modifiedStale) { + return false; + } + } + return true; + } + function parseHttpDate(date) { + var timestamp = date && Date.parse(date); + return typeof timestamp === "number" ? timestamp : NaN; + } + function parseTokenList(str) { + var end = 0; + var list = []; + var start4 = 0; + for (var i = 0, len = str.length; i < len; i++) { + switch (str.charCodeAt(i)) { + case 32: + if (start4 === end) { + start4 = end = i + 1; + } + break; + case 44: + list.push(str.substring(start4, end)); + start4 = end = i + 1; + break; + default: + end = i + 1; + break; + } + } + list.push(str.substring(start4, end)); + return list; + } + } +}); + +// ../node_modules/.pnpm/mime@1.6.0/node_modules/mime/types.json +var require_types25 = __commonJS({ + "../node_modules/.pnpm/mime@1.6.0/node_modules/mime/types.json"(exports2, module2) { + module2.exports = { "application/andrew-inset": ["ez"], "application/applixware": ["aw"], "application/atom+xml": ["atom"], "application/atomcat+xml": ["atomcat"], "application/atomsvc+xml": ["atomsvc"], "application/bdoc": ["bdoc"], "application/ccxml+xml": ["ccxml"], "application/cdmi-capability": ["cdmia"], "application/cdmi-container": ["cdmic"], "application/cdmi-domain": ["cdmid"], "application/cdmi-object": ["cdmio"], "application/cdmi-queue": ["cdmiq"], "application/cu-seeme": ["cu"], "application/dash+xml": ["mpd"], "application/davmount+xml": ["davmount"], "application/docbook+xml": ["dbk"], "application/dssc+der": ["dssc"], "application/dssc+xml": ["xdssc"], "application/ecmascript": ["ecma"], "application/emma+xml": ["emma"], "application/epub+zip": ["epub"], "application/exi": ["exi"], "application/font-tdpfr": ["pfr"], "application/font-woff": [], "application/font-woff2": [], "application/geo+json": ["geojson"], "application/gml+xml": ["gml"], "application/gpx+xml": ["gpx"], "application/gxf": ["gxf"], "application/gzip": ["gz"], "application/hyperstudio": ["stk"], "application/inkml+xml": ["ink", "inkml"], "application/ipfix": ["ipfix"], "application/java-archive": ["jar", "war", "ear"], "application/java-serialized-object": ["ser"], "application/java-vm": ["class"], "application/javascript": ["js", "mjs"], "application/json": ["json", "map"], "application/json5": ["json5"], "application/jsonml+json": ["jsonml"], "application/ld+json": ["jsonld"], "application/lost+xml": ["lostxml"], "application/mac-binhex40": ["hqx"], "application/mac-compactpro": ["cpt"], "application/mads+xml": ["mads"], "application/manifest+json": ["webmanifest"], "application/marc": ["mrc"], "application/marcxml+xml": ["mrcx"], "application/mathematica": ["ma", "nb", "mb"], "application/mathml+xml": ["mathml"], "application/mbox": ["mbox"], "application/mediaservercontrol+xml": ["mscml"], "application/metalink+xml": ["metalink"], "application/metalink4+xml": ["meta4"], "application/mets+xml": ["mets"], "application/mods+xml": ["mods"], "application/mp21": ["m21", "mp21"], "application/mp4": ["mp4s", "m4p"], "application/msword": ["doc", "dot"], "application/mxf": ["mxf"], "application/octet-stream": ["bin", "dms", "lrf", "mar", "so", "dist", "distz", "pkg", "bpk", "dump", "elc", "deploy", "exe", "dll", "deb", "dmg", "iso", "img", "msi", "msp", "msm", "buffer"], "application/oda": ["oda"], "application/oebps-package+xml": ["opf"], "application/ogg": ["ogx"], "application/omdoc+xml": ["omdoc"], "application/onenote": ["onetoc", "onetoc2", "onetmp", "onepkg"], "application/oxps": ["oxps"], "application/patch-ops-error+xml": ["xer"], "application/pdf": ["pdf"], "application/pgp-encrypted": ["pgp"], "application/pgp-signature": ["asc", "sig"], "application/pics-rules": ["prf"], "application/pkcs10": ["p10"], "application/pkcs7-mime": ["p7m", "p7c"], "application/pkcs7-signature": ["p7s"], "application/pkcs8": ["p8"], "application/pkix-attr-cert": ["ac"], "application/pkix-cert": ["cer"], "application/pkix-crl": ["crl"], "application/pkix-pkipath": ["pkipath"], "application/pkixcmp": ["pki"], "application/pls+xml": ["pls"], "application/postscript": ["ai", "eps", "ps"], "application/prs.cww": ["cww"], "application/pskc+xml": ["pskcxml"], "application/raml+yaml": ["raml"], "application/rdf+xml": ["rdf"], "application/reginfo+xml": ["rif"], "application/relax-ng-compact-syntax": ["rnc"], "application/resource-lists+xml": ["rl"], "application/resource-lists-diff+xml": ["rld"], "application/rls-services+xml": ["rs"], "application/rpki-ghostbusters": ["gbr"], "application/rpki-manifest": ["mft"], "application/rpki-roa": ["roa"], "application/rsd+xml": ["rsd"], "application/rss+xml": ["rss"], "application/rtf": ["rtf"], "application/sbml+xml": ["sbml"], "application/scvp-cv-request": ["scq"], "application/scvp-cv-response": ["scs"], "application/scvp-vp-request": ["spq"], "application/scvp-vp-response": ["spp"], "application/sdp": ["sdp"], "application/set-payment-initiation": ["setpay"], "application/set-registration-initiation": ["setreg"], "application/shf+xml": ["shf"], "application/smil+xml": ["smi", "smil"], "application/sparql-query": ["rq"], "application/sparql-results+xml": ["srx"], "application/srgs": ["gram"], "application/srgs+xml": ["grxml"], "application/sru+xml": ["sru"], "application/ssdl+xml": ["ssdl"], "application/ssml+xml": ["ssml"], "application/tei+xml": ["tei", "teicorpus"], "application/thraud+xml": ["tfi"], "application/timestamped-data": ["tsd"], "application/vnd.3gpp.pic-bw-large": ["plb"], "application/vnd.3gpp.pic-bw-small": ["psb"], "application/vnd.3gpp.pic-bw-var": ["pvb"], "application/vnd.3gpp2.tcap": ["tcap"], "application/vnd.3m.post-it-notes": ["pwn"], "application/vnd.accpac.simply.aso": ["aso"], "application/vnd.accpac.simply.imp": ["imp"], "application/vnd.acucobol": ["acu"], "application/vnd.acucorp": ["atc", "acutc"], "application/vnd.adobe.air-application-installer-package+zip": ["air"], "application/vnd.adobe.formscentral.fcdt": ["fcdt"], "application/vnd.adobe.fxp": ["fxp", "fxpl"], "application/vnd.adobe.xdp+xml": ["xdp"], "application/vnd.adobe.xfdf": ["xfdf"], "application/vnd.ahead.space": ["ahead"], "application/vnd.airzip.filesecure.azf": ["azf"], "application/vnd.airzip.filesecure.azs": ["azs"], "application/vnd.amazon.ebook": ["azw"], "application/vnd.americandynamics.acc": ["acc"], "application/vnd.amiga.ami": ["ami"], "application/vnd.android.package-archive": ["apk"], "application/vnd.anser-web-certificate-issue-initiation": ["cii"], "application/vnd.anser-web-funds-transfer-initiation": ["fti"], "application/vnd.antix.game-component": ["atx"], "application/vnd.apple.installer+xml": ["mpkg"], "application/vnd.apple.mpegurl": ["m3u8"], "application/vnd.apple.pkpass": ["pkpass"], "application/vnd.aristanetworks.swi": ["swi"], "application/vnd.astraea-software.iota": ["iota"], "application/vnd.audiograph": ["aep"], "application/vnd.blueice.multipass": ["mpm"], "application/vnd.bmi": ["bmi"], "application/vnd.businessobjects": ["rep"], "application/vnd.chemdraw+xml": ["cdxml"], "application/vnd.chipnuts.karaoke-mmd": ["mmd"], "application/vnd.cinderella": ["cdy"], "application/vnd.claymore": ["cla"], "application/vnd.cloanto.rp9": ["rp9"], "application/vnd.clonk.c4group": ["c4g", "c4d", "c4f", "c4p", "c4u"], "application/vnd.cluetrust.cartomobile-config": ["c11amc"], "application/vnd.cluetrust.cartomobile-config-pkg": ["c11amz"], "application/vnd.commonspace": ["csp"], "application/vnd.contact.cmsg": ["cdbcmsg"], "application/vnd.cosmocaller": ["cmc"], "application/vnd.crick.clicker": ["clkx"], "application/vnd.crick.clicker.keyboard": ["clkk"], "application/vnd.crick.clicker.palette": ["clkp"], "application/vnd.crick.clicker.template": ["clkt"], "application/vnd.crick.clicker.wordbank": ["clkw"], "application/vnd.criticaltools.wbs+xml": ["wbs"], "application/vnd.ctc-posml": ["pml"], "application/vnd.cups-ppd": ["ppd"], "application/vnd.curl.car": ["car"], "application/vnd.curl.pcurl": ["pcurl"], "application/vnd.dart": ["dart"], "application/vnd.data-vision.rdz": ["rdz"], "application/vnd.dece.data": ["uvf", "uvvf", "uvd", "uvvd"], "application/vnd.dece.ttml+xml": ["uvt", "uvvt"], "application/vnd.dece.unspecified": ["uvx", "uvvx"], "application/vnd.dece.zip": ["uvz", "uvvz"], "application/vnd.denovo.fcselayout-link": ["fe_launch"], "application/vnd.dna": ["dna"], "application/vnd.dolby.mlp": ["mlp"], "application/vnd.dpgraph": ["dpg"], "application/vnd.dreamfactory": ["dfac"], "application/vnd.ds-keypoint": ["kpxx"], "application/vnd.dvb.ait": ["ait"], "application/vnd.dvb.service": ["svc"], "application/vnd.dynageo": ["geo"], "application/vnd.ecowin.chart": ["mag"], "application/vnd.enliven": ["nml"], "application/vnd.epson.esf": ["esf"], "application/vnd.epson.msf": ["msf"], "application/vnd.epson.quickanime": ["qam"], "application/vnd.epson.salt": ["slt"], "application/vnd.epson.ssf": ["ssf"], "application/vnd.eszigno3+xml": ["es3", "et3"], "application/vnd.ezpix-album": ["ez2"], "application/vnd.ezpix-package": ["ez3"], "application/vnd.fdf": ["fdf"], "application/vnd.fdsn.mseed": ["mseed"], "application/vnd.fdsn.seed": ["seed", "dataless"], "application/vnd.flographit": ["gph"], "application/vnd.fluxtime.clip": ["ftc"], "application/vnd.framemaker": ["fm", "frame", "maker", "book"], "application/vnd.frogans.fnc": ["fnc"], "application/vnd.frogans.ltf": ["ltf"], "application/vnd.fsc.weblaunch": ["fsc"], "application/vnd.fujitsu.oasys": ["oas"], "application/vnd.fujitsu.oasys2": ["oa2"], "application/vnd.fujitsu.oasys3": ["oa3"], "application/vnd.fujitsu.oasysgp": ["fg5"], "application/vnd.fujitsu.oasysprs": ["bh2"], "application/vnd.fujixerox.ddd": ["ddd"], "application/vnd.fujixerox.docuworks": ["xdw"], "application/vnd.fujixerox.docuworks.binder": ["xbd"], "application/vnd.fuzzysheet": ["fzs"], "application/vnd.genomatix.tuxedo": ["txd"], "application/vnd.geogebra.file": ["ggb"], "application/vnd.geogebra.tool": ["ggt"], "application/vnd.geometry-explorer": ["gex", "gre"], "application/vnd.geonext": ["gxt"], "application/vnd.geoplan": ["g2w"], "application/vnd.geospace": ["g3w"], "application/vnd.gmx": ["gmx"], "application/vnd.google-apps.document": ["gdoc"], "application/vnd.google-apps.presentation": ["gslides"], "application/vnd.google-apps.spreadsheet": ["gsheet"], "application/vnd.google-earth.kml+xml": ["kml"], "application/vnd.google-earth.kmz": ["kmz"], "application/vnd.grafeq": ["gqf", "gqs"], "application/vnd.groove-account": ["gac"], "application/vnd.groove-help": ["ghf"], "application/vnd.groove-identity-message": ["gim"], "application/vnd.groove-injector": ["grv"], "application/vnd.groove-tool-message": ["gtm"], "application/vnd.groove-tool-template": ["tpl"], "application/vnd.groove-vcard": ["vcg"], "application/vnd.hal+xml": ["hal"], "application/vnd.handheld-entertainment+xml": ["zmm"], "application/vnd.hbci": ["hbci"], "application/vnd.hhe.lesson-player": ["les"], "application/vnd.hp-hpgl": ["hpgl"], "application/vnd.hp-hpid": ["hpid"], "application/vnd.hp-hps": ["hps"], "application/vnd.hp-jlyt": ["jlt"], "application/vnd.hp-pcl": ["pcl"], "application/vnd.hp-pclxl": ["pclxl"], "application/vnd.hydrostatix.sof-data": ["sfd-hdstx"], "application/vnd.ibm.minipay": ["mpy"], "application/vnd.ibm.modcap": ["afp", "listafp", "list3820"], "application/vnd.ibm.rights-management": ["irm"], "application/vnd.ibm.secure-container": ["sc"], "application/vnd.iccprofile": ["icc", "icm"], "application/vnd.igloader": ["igl"], "application/vnd.immervision-ivp": ["ivp"], "application/vnd.immervision-ivu": ["ivu"], "application/vnd.insors.igm": ["igm"], "application/vnd.intercon.formnet": ["xpw", "xpx"], "application/vnd.intergeo": ["i2g"], "application/vnd.intu.qbo": ["qbo"], "application/vnd.intu.qfx": ["qfx"], "application/vnd.ipunplugged.rcprofile": ["rcprofile"], "application/vnd.irepository.package+xml": ["irp"], "application/vnd.is-xpr": ["xpr"], "application/vnd.isac.fcs": ["fcs"], "application/vnd.jam": ["jam"], "application/vnd.jcp.javame.midlet-rms": ["rms"], "application/vnd.jisp": ["jisp"], "application/vnd.joost.joda-archive": ["joda"], "application/vnd.kahootz": ["ktz", "ktr"], "application/vnd.kde.karbon": ["karbon"], "application/vnd.kde.kchart": ["chrt"], "application/vnd.kde.kformula": ["kfo"], "application/vnd.kde.kivio": ["flw"], "application/vnd.kde.kontour": ["kon"], "application/vnd.kde.kpresenter": ["kpr", "kpt"], "application/vnd.kde.kspread": ["ksp"], "application/vnd.kde.kword": ["kwd", "kwt"], "application/vnd.kenameaapp": ["htke"], "application/vnd.kidspiration": ["kia"], "application/vnd.kinar": ["kne", "knp"], "application/vnd.koan": ["skp", "skd", "skt", "skm"], "application/vnd.kodak-descriptor": ["sse"], "application/vnd.las.las+xml": ["lasxml"], "application/vnd.llamagraphics.life-balance.desktop": ["lbd"], "application/vnd.llamagraphics.life-balance.exchange+xml": ["lbe"], "application/vnd.lotus-1-2-3": ["123"], "application/vnd.lotus-approach": ["apr"], "application/vnd.lotus-freelance": ["pre"], "application/vnd.lotus-notes": ["nsf"], "application/vnd.lotus-organizer": ["org"], "application/vnd.lotus-screencam": ["scm"], "application/vnd.lotus-wordpro": ["lwp"], "application/vnd.macports.portpkg": ["portpkg"], "application/vnd.mcd": ["mcd"], "application/vnd.medcalcdata": ["mc1"], "application/vnd.mediastation.cdkey": ["cdkey"], "application/vnd.mfer": ["mwf"], "application/vnd.mfmp": ["mfm"], "application/vnd.micrografx.flo": ["flo"], "application/vnd.micrografx.igx": ["igx"], "application/vnd.mif": ["mif"], "application/vnd.mobius.daf": ["daf"], "application/vnd.mobius.dis": ["dis"], "application/vnd.mobius.mbk": ["mbk"], "application/vnd.mobius.mqy": ["mqy"], "application/vnd.mobius.msl": ["msl"], "application/vnd.mobius.plc": ["plc"], "application/vnd.mobius.txf": ["txf"], "application/vnd.mophun.application": ["mpn"], "application/vnd.mophun.certificate": ["mpc"], "application/vnd.mozilla.xul+xml": ["xul"], "application/vnd.ms-artgalry": ["cil"], "application/vnd.ms-cab-compressed": ["cab"], "application/vnd.ms-excel": ["xls", "xlm", "xla", "xlc", "xlt", "xlw"], "application/vnd.ms-excel.addin.macroenabled.12": ["xlam"], "application/vnd.ms-excel.sheet.binary.macroenabled.12": ["xlsb"], "application/vnd.ms-excel.sheet.macroenabled.12": ["xlsm"], "application/vnd.ms-excel.template.macroenabled.12": ["xltm"], "application/vnd.ms-fontobject": ["eot"], "application/vnd.ms-htmlhelp": ["chm"], "application/vnd.ms-ims": ["ims"], "application/vnd.ms-lrm": ["lrm"], "application/vnd.ms-officetheme": ["thmx"], "application/vnd.ms-outlook": ["msg"], "application/vnd.ms-pki.seccat": ["cat"], "application/vnd.ms-pki.stl": ["stl"], "application/vnd.ms-powerpoint": ["ppt", "pps", "pot"], "application/vnd.ms-powerpoint.addin.macroenabled.12": ["ppam"], "application/vnd.ms-powerpoint.presentation.macroenabled.12": ["pptm"], "application/vnd.ms-powerpoint.slide.macroenabled.12": ["sldm"], "application/vnd.ms-powerpoint.slideshow.macroenabled.12": ["ppsm"], "application/vnd.ms-powerpoint.template.macroenabled.12": ["potm"], "application/vnd.ms-project": ["mpp", "mpt"], "application/vnd.ms-word.document.macroenabled.12": ["docm"], "application/vnd.ms-word.template.macroenabled.12": ["dotm"], "application/vnd.ms-works": ["wps", "wks", "wcm", "wdb"], "application/vnd.ms-wpl": ["wpl"], "application/vnd.ms-xpsdocument": ["xps"], "application/vnd.mseq": ["mseq"], "application/vnd.musician": ["mus"], "application/vnd.muvee.style": ["msty"], "application/vnd.mynfc": ["taglet"], "application/vnd.neurolanguage.nlu": ["nlu"], "application/vnd.nitf": ["ntf", "nitf"], "application/vnd.noblenet-directory": ["nnd"], "application/vnd.noblenet-sealer": ["nns"], "application/vnd.noblenet-web": ["nnw"], "application/vnd.nokia.n-gage.data": ["ngdat"], "application/vnd.nokia.n-gage.symbian.install": ["n-gage"], "application/vnd.nokia.radio-preset": ["rpst"], "application/vnd.nokia.radio-presets": ["rpss"], "application/vnd.novadigm.edm": ["edm"], "application/vnd.novadigm.edx": ["edx"], "application/vnd.novadigm.ext": ["ext"], "application/vnd.oasis.opendocument.chart": ["odc"], "application/vnd.oasis.opendocument.chart-template": ["otc"], "application/vnd.oasis.opendocument.database": ["odb"], "application/vnd.oasis.opendocument.formula": ["odf"], "application/vnd.oasis.opendocument.formula-template": ["odft"], "application/vnd.oasis.opendocument.graphics": ["odg"], "application/vnd.oasis.opendocument.graphics-template": ["otg"], "application/vnd.oasis.opendocument.image": ["odi"], "application/vnd.oasis.opendocument.image-template": ["oti"], "application/vnd.oasis.opendocument.presentation": ["odp"], "application/vnd.oasis.opendocument.presentation-template": ["otp"], "application/vnd.oasis.opendocument.spreadsheet": ["ods"], "application/vnd.oasis.opendocument.spreadsheet-template": ["ots"], "application/vnd.oasis.opendocument.text": ["odt"], "application/vnd.oasis.opendocument.text-master": ["odm"], "application/vnd.oasis.opendocument.text-template": ["ott"], "application/vnd.oasis.opendocument.text-web": ["oth"], "application/vnd.olpc-sugar": ["xo"], "application/vnd.oma.dd2+xml": ["dd2"], "application/vnd.openofficeorg.extension": ["oxt"], "application/vnd.openxmlformats-officedocument.presentationml.presentation": ["pptx"], "application/vnd.openxmlformats-officedocument.presentationml.slide": ["sldx"], "application/vnd.openxmlformats-officedocument.presentationml.slideshow": ["ppsx"], "application/vnd.openxmlformats-officedocument.presentationml.template": ["potx"], "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": ["xlsx"], "application/vnd.openxmlformats-officedocument.spreadsheetml.template": ["xltx"], "application/vnd.openxmlformats-officedocument.wordprocessingml.document": ["docx"], "application/vnd.openxmlformats-officedocument.wordprocessingml.template": ["dotx"], "application/vnd.osgeo.mapguide.package": ["mgp"], "application/vnd.osgi.dp": ["dp"], "application/vnd.osgi.subsystem": ["esa"], "application/vnd.palm": ["pdb", "pqa", "oprc"], "application/vnd.pawaafile": ["paw"], "application/vnd.pg.format": ["str"], "application/vnd.pg.osasli": ["ei6"], "application/vnd.picsel": ["efif"], "application/vnd.pmi.widget": ["wg"], "application/vnd.pocketlearn": ["plf"], "application/vnd.powerbuilder6": ["pbd"], "application/vnd.previewsystems.box": ["box"], "application/vnd.proteus.magazine": ["mgz"], "application/vnd.publishare-delta-tree": ["qps"], "application/vnd.pvi.ptid1": ["ptid"], "application/vnd.quark.quarkxpress": ["qxd", "qxt", "qwd", "qwt", "qxl", "qxb"], "application/vnd.realvnc.bed": ["bed"], "application/vnd.recordare.musicxml": ["mxl"], "application/vnd.recordare.musicxml+xml": ["musicxml"], "application/vnd.rig.cryptonote": ["cryptonote"], "application/vnd.rim.cod": ["cod"], "application/vnd.rn-realmedia": ["rm"], "application/vnd.rn-realmedia-vbr": ["rmvb"], "application/vnd.route66.link66+xml": ["link66"], "application/vnd.sailingtracker.track": ["st"], "application/vnd.seemail": ["see"], "application/vnd.sema": ["sema"], "application/vnd.semd": ["semd"], "application/vnd.semf": ["semf"], "application/vnd.shana.informed.formdata": ["ifm"], "application/vnd.shana.informed.formtemplate": ["itp"], "application/vnd.shana.informed.interchange": ["iif"], "application/vnd.shana.informed.package": ["ipk"], "application/vnd.simtech-mindmapper": ["twd", "twds"], "application/vnd.smaf": ["mmf"], "application/vnd.smart.teacher": ["teacher"], "application/vnd.solent.sdkm+xml": ["sdkm", "sdkd"], "application/vnd.spotfire.dxp": ["dxp"], "application/vnd.spotfire.sfs": ["sfs"], "application/vnd.stardivision.calc": ["sdc"], "application/vnd.stardivision.draw": ["sda"], "application/vnd.stardivision.impress": ["sdd"], "application/vnd.stardivision.math": ["smf"], "application/vnd.stardivision.writer": ["sdw", "vor"], "application/vnd.stardivision.writer-global": ["sgl"], "application/vnd.stepmania.package": ["smzip"], "application/vnd.stepmania.stepchart": ["sm"], "application/vnd.sun.wadl+xml": ["wadl"], "application/vnd.sun.xml.calc": ["sxc"], "application/vnd.sun.xml.calc.template": ["stc"], "application/vnd.sun.xml.draw": ["sxd"], "application/vnd.sun.xml.draw.template": ["std"], "application/vnd.sun.xml.impress": ["sxi"], "application/vnd.sun.xml.impress.template": ["sti"], "application/vnd.sun.xml.math": ["sxm"], "application/vnd.sun.xml.writer": ["sxw"], "application/vnd.sun.xml.writer.global": ["sxg"], "application/vnd.sun.xml.writer.template": ["stw"], "application/vnd.sus-calendar": ["sus", "susp"], "application/vnd.svd": ["svd"], "application/vnd.symbian.install": ["sis", "sisx"], "application/vnd.syncml+xml": ["xsm"], "application/vnd.syncml.dm+wbxml": ["bdm"], "application/vnd.syncml.dm+xml": ["xdm"], "application/vnd.tao.intent-module-archive": ["tao"], "application/vnd.tcpdump.pcap": ["pcap", "cap", "dmp"], "application/vnd.tmobile-livetv": ["tmo"], "application/vnd.trid.tpt": ["tpt"], "application/vnd.triscape.mxs": ["mxs"], "application/vnd.trueapp": ["tra"], "application/vnd.ufdl": ["ufd", "ufdl"], "application/vnd.uiq.theme": ["utz"], "application/vnd.umajin": ["umj"], "application/vnd.unity": ["unityweb"], "application/vnd.uoml+xml": ["uoml"], "application/vnd.vcx": ["vcx"], "application/vnd.visio": ["vsd", "vst", "vss", "vsw"], "application/vnd.visionary": ["vis"], "application/vnd.vsf": ["vsf"], "application/vnd.wap.wbxml": ["wbxml"], "application/vnd.wap.wmlc": ["wmlc"], "application/vnd.wap.wmlscriptc": ["wmlsc"], "application/vnd.webturbo": ["wtb"], "application/vnd.wolfram.player": ["nbp"], "application/vnd.wordperfect": ["wpd"], "application/vnd.wqd": ["wqd"], "application/vnd.wt.stf": ["stf"], "application/vnd.xara": ["xar"], "application/vnd.xfdl": ["xfdl"], "application/vnd.yamaha.hv-dic": ["hvd"], "application/vnd.yamaha.hv-script": ["hvs"], "application/vnd.yamaha.hv-voice": ["hvp"], "application/vnd.yamaha.openscoreformat": ["osf"], "application/vnd.yamaha.openscoreformat.osfpvg+xml": ["osfpvg"], "application/vnd.yamaha.smaf-audio": ["saf"], "application/vnd.yamaha.smaf-phrase": ["spf"], "application/vnd.yellowriver-custom-menu": ["cmp"], "application/vnd.zul": ["zir", "zirz"], "application/vnd.zzazz.deck+xml": ["zaz"], "application/voicexml+xml": ["vxml"], "application/wasm": ["wasm"], "application/widget": ["wgt"], "application/winhlp": ["hlp"], "application/wsdl+xml": ["wsdl"], "application/wspolicy+xml": ["wspolicy"], "application/x-7z-compressed": ["7z"], "application/x-abiword": ["abw"], "application/x-ace-compressed": ["ace"], "application/x-apple-diskimage": [], "application/x-arj": ["arj"], "application/x-authorware-bin": ["aab", "x32", "u32", "vox"], "application/x-authorware-map": ["aam"], "application/x-authorware-seg": ["aas"], "application/x-bcpio": ["bcpio"], "application/x-bdoc": [], "application/x-bittorrent": ["torrent"], "application/x-blorb": ["blb", "blorb"], "application/x-bzip": ["bz"], "application/x-bzip2": ["bz2", "boz"], "application/x-cbr": ["cbr", "cba", "cbt", "cbz", "cb7"], "application/x-cdlink": ["vcd"], "application/x-cfs-compressed": ["cfs"], "application/x-chat": ["chat"], "application/x-chess-pgn": ["pgn"], "application/x-chrome-extension": ["crx"], "application/x-cocoa": ["cco"], "application/x-conference": ["nsc"], "application/x-cpio": ["cpio"], "application/x-csh": ["csh"], "application/x-debian-package": ["udeb"], "application/x-dgc-compressed": ["dgc"], "application/x-director": ["dir", "dcr", "dxr", "cst", "cct", "cxt", "w3d", "fgd", "swa"], "application/x-doom": ["wad"], "application/x-dtbncx+xml": ["ncx"], "application/x-dtbook+xml": ["dtb"], "application/x-dtbresource+xml": ["res"], "application/x-dvi": ["dvi"], "application/x-envoy": ["evy"], "application/x-eva": ["eva"], "application/x-font-bdf": ["bdf"], "application/x-font-ghostscript": ["gsf"], "application/x-font-linux-psf": ["psf"], "application/x-font-pcf": ["pcf"], "application/x-font-snf": ["snf"], "application/x-font-type1": ["pfa", "pfb", "pfm", "afm"], "application/x-freearc": ["arc"], "application/x-futuresplash": ["spl"], "application/x-gca-compressed": ["gca"], "application/x-glulx": ["ulx"], "application/x-gnumeric": ["gnumeric"], "application/x-gramps-xml": ["gramps"], "application/x-gtar": ["gtar"], "application/x-hdf": ["hdf"], "application/x-httpd-php": ["php"], "application/x-install-instructions": ["install"], "application/x-iso9660-image": [], "application/x-java-archive-diff": ["jardiff"], "application/x-java-jnlp-file": ["jnlp"], "application/x-latex": ["latex"], "application/x-lua-bytecode": ["luac"], "application/x-lzh-compressed": ["lzh", "lha"], "application/x-makeself": ["run"], "application/x-mie": ["mie"], "application/x-mobipocket-ebook": ["prc", "mobi"], "application/x-ms-application": ["application"], "application/x-ms-shortcut": ["lnk"], "application/x-ms-wmd": ["wmd"], "application/x-ms-wmz": ["wmz"], "application/x-ms-xbap": ["xbap"], "application/x-msaccess": ["mdb"], "application/x-msbinder": ["obd"], "application/x-mscardfile": ["crd"], "application/x-msclip": ["clp"], "application/x-msdos-program": [], "application/x-msdownload": ["com", "bat"], "application/x-msmediaview": ["mvb", "m13", "m14"], "application/x-msmetafile": ["wmf", "emf", "emz"], "application/x-msmoney": ["mny"], "application/x-mspublisher": ["pub"], "application/x-msschedule": ["scd"], "application/x-msterminal": ["trm"], "application/x-mswrite": ["wri"], "application/x-netcdf": ["nc", "cdf"], "application/x-ns-proxy-autoconfig": ["pac"], "application/x-nzb": ["nzb"], "application/x-perl": ["pl", "pm"], "application/x-pilot": [], "application/x-pkcs12": ["p12", "pfx"], "application/x-pkcs7-certificates": ["p7b", "spc"], "application/x-pkcs7-certreqresp": ["p7r"], "application/x-rar-compressed": ["rar"], "application/x-redhat-package-manager": ["rpm"], "application/x-research-info-systems": ["ris"], "application/x-sea": ["sea"], "application/x-sh": ["sh"], "application/x-shar": ["shar"], "application/x-shockwave-flash": ["swf"], "application/x-silverlight-app": ["xap"], "application/x-sql": ["sql"], "application/x-stuffit": ["sit"], "application/x-stuffitx": ["sitx"], "application/x-subrip": ["srt"], "application/x-sv4cpio": ["sv4cpio"], "application/x-sv4crc": ["sv4crc"], "application/x-t3vm-image": ["t3"], "application/x-tads": ["gam"], "application/x-tar": ["tar"], "application/x-tcl": ["tcl", "tk"], "application/x-tex": ["tex"], "application/x-tex-tfm": ["tfm"], "application/x-texinfo": ["texinfo", "texi"], "application/x-tgif": ["obj"], "application/x-ustar": ["ustar"], "application/x-virtualbox-hdd": ["hdd"], "application/x-virtualbox-ova": ["ova"], "application/x-virtualbox-ovf": ["ovf"], "application/x-virtualbox-vbox": ["vbox"], "application/x-virtualbox-vbox-extpack": ["vbox-extpack"], "application/x-virtualbox-vdi": ["vdi"], "application/x-virtualbox-vhd": ["vhd"], "application/x-virtualbox-vmdk": ["vmdk"], "application/x-wais-source": ["src"], "application/x-web-app-manifest+json": ["webapp"], "application/x-x509-ca-cert": ["der", "crt", "pem"], "application/x-xfig": ["fig"], "application/x-xliff+xml": ["xlf"], "application/x-xpinstall": ["xpi"], "application/x-xz": ["xz"], "application/x-zmachine": ["z1", "z2", "z3", "z4", "z5", "z6", "z7", "z8"], "application/xaml+xml": ["xaml"], "application/xcap-diff+xml": ["xdf"], "application/xenc+xml": ["xenc"], "application/xhtml+xml": ["xhtml", "xht"], "application/xml": ["xml", "xsl", "xsd", "rng"], "application/xml-dtd": ["dtd"], "application/xop+xml": ["xop"], "application/xproc+xml": ["xpl"], "application/xslt+xml": ["xslt"], "application/xspf+xml": ["xspf"], "application/xv+xml": ["mxml", "xhvml", "xvml", "xvm"], "application/yang": ["yang"], "application/yin+xml": ["yin"], "application/zip": ["zip"], "audio/3gpp": [], "audio/adpcm": ["adp"], "audio/basic": ["au", "snd"], "audio/midi": ["mid", "midi", "kar", "rmi"], "audio/mp3": [], "audio/mp4": ["m4a", "mp4a"], "audio/mpeg": ["mpga", "mp2", "mp2a", "mp3", "m2a", "m3a"], "audio/ogg": ["oga", "ogg", "spx"], "audio/s3m": ["s3m"], "audio/silk": ["sil"], "audio/vnd.dece.audio": ["uva", "uvva"], "audio/vnd.digital-winds": ["eol"], "audio/vnd.dra": ["dra"], "audio/vnd.dts": ["dts"], "audio/vnd.dts.hd": ["dtshd"], "audio/vnd.lucent.voice": ["lvp"], "audio/vnd.ms-playready.media.pya": ["pya"], "audio/vnd.nuera.ecelp4800": ["ecelp4800"], "audio/vnd.nuera.ecelp7470": ["ecelp7470"], "audio/vnd.nuera.ecelp9600": ["ecelp9600"], "audio/vnd.rip": ["rip"], "audio/wav": ["wav"], "audio/wave": [], "audio/webm": ["weba"], "audio/x-aac": ["aac"], "audio/x-aiff": ["aif", "aiff", "aifc"], "audio/x-caf": ["caf"], "audio/x-flac": ["flac"], "audio/x-m4a": [], "audio/x-matroska": ["mka"], "audio/x-mpegurl": ["m3u"], "audio/x-ms-wax": ["wax"], "audio/x-ms-wma": ["wma"], "audio/x-pn-realaudio": ["ram", "ra"], "audio/x-pn-realaudio-plugin": ["rmp"], "audio/x-realaudio": [], "audio/x-wav": [], "audio/xm": ["xm"], "chemical/x-cdx": ["cdx"], "chemical/x-cif": ["cif"], "chemical/x-cmdf": ["cmdf"], "chemical/x-cml": ["cml"], "chemical/x-csml": ["csml"], "chemical/x-xyz": ["xyz"], "font/collection": ["ttc"], "font/otf": ["otf"], "font/ttf": ["ttf"], "font/woff": ["woff"], "font/woff2": ["woff2"], "image/apng": ["apng"], "image/bmp": ["bmp"], "image/cgm": ["cgm"], "image/g3fax": ["g3"], "image/gif": ["gif"], "image/ief": ["ief"], "image/jp2": ["jp2", "jpg2"], "image/jpeg": ["jpeg", "jpg", "jpe"], "image/jpm": ["jpm"], "image/jpx": ["jpx", "jpf"], "image/ktx": ["ktx"], "image/png": ["png"], "image/prs.btif": ["btif"], "image/sgi": ["sgi"], "image/svg+xml": ["svg", "svgz"], "image/tiff": ["tiff", "tif"], "image/vnd.adobe.photoshop": ["psd"], "image/vnd.dece.graphic": ["uvi", "uvvi", "uvg", "uvvg"], "image/vnd.djvu": ["djvu", "djv"], "image/vnd.dvb.subtitle": [], "image/vnd.dwg": ["dwg"], "image/vnd.dxf": ["dxf"], "image/vnd.fastbidsheet": ["fbs"], "image/vnd.fpx": ["fpx"], "image/vnd.fst": ["fst"], "image/vnd.fujixerox.edmics-mmr": ["mmr"], "image/vnd.fujixerox.edmics-rlc": ["rlc"], "image/vnd.ms-modi": ["mdi"], "image/vnd.ms-photo": ["wdp"], "image/vnd.net-fpx": ["npx"], "image/vnd.wap.wbmp": ["wbmp"], "image/vnd.xiff": ["xif"], "image/webp": ["webp"], "image/x-3ds": ["3ds"], "image/x-cmu-raster": ["ras"], "image/x-cmx": ["cmx"], "image/x-freehand": ["fh", "fhc", "fh4", "fh5", "fh7"], "image/x-icon": ["ico"], "image/x-jng": ["jng"], "image/x-mrsid-image": ["sid"], "image/x-ms-bmp": [], "image/x-pcx": ["pcx"], "image/x-pict": ["pic", "pct"], "image/x-portable-anymap": ["pnm"], "image/x-portable-bitmap": ["pbm"], "image/x-portable-graymap": ["pgm"], "image/x-portable-pixmap": ["ppm"], "image/x-rgb": ["rgb"], "image/x-tga": ["tga"], "image/x-xbitmap": ["xbm"], "image/x-xpixmap": ["xpm"], "image/x-xwindowdump": ["xwd"], "message/rfc822": ["eml", "mime"], "model/gltf+json": ["gltf"], "model/gltf-binary": ["glb"], "model/iges": ["igs", "iges"], "model/mesh": ["msh", "mesh", "silo"], "model/vnd.collada+xml": ["dae"], "model/vnd.dwf": ["dwf"], "model/vnd.gdl": ["gdl"], "model/vnd.gtw": ["gtw"], "model/vnd.mts": ["mts"], "model/vnd.vtu": ["vtu"], "model/vrml": ["wrl", "vrml"], "model/x3d+binary": ["x3db", "x3dbz"], "model/x3d+vrml": ["x3dv", "x3dvz"], "model/x3d+xml": ["x3d", "x3dz"], "text/cache-manifest": ["appcache", "manifest"], "text/calendar": ["ics", "ifb"], "text/coffeescript": ["coffee", "litcoffee"], "text/css": ["css"], "text/csv": ["csv"], "text/hjson": ["hjson"], "text/html": ["html", "htm", "shtml"], "text/jade": ["jade"], "text/jsx": ["jsx"], "text/less": ["less"], "text/markdown": ["markdown", "md"], "text/mathml": ["mml"], "text/n3": ["n3"], "text/plain": ["txt", "text", "conf", "def", "list", "log", "in", "ini"], "text/prs.lines.tag": ["dsc"], "text/richtext": ["rtx"], "text/rtf": [], "text/sgml": ["sgml", "sgm"], "text/slim": ["slim", "slm"], "text/stylus": ["stylus", "styl"], "text/tab-separated-values": ["tsv"], "text/troff": ["t", "tr", "roff", "man", "me", "ms"], "text/turtle": ["ttl"], "text/uri-list": ["uri", "uris", "urls"], "text/vcard": ["vcard"], "text/vnd.curl": ["curl"], "text/vnd.curl.dcurl": ["dcurl"], "text/vnd.curl.mcurl": ["mcurl"], "text/vnd.curl.scurl": ["scurl"], "text/vnd.dvb.subtitle": ["sub"], "text/vnd.fly": ["fly"], "text/vnd.fmi.flexstor": ["flx"], "text/vnd.graphviz": ["gv"], "text/vnd.in3d.3dml": ["3dml"], "text/vnd.in3d.spot": ["spot"], "text/vnd.sun.j2me.app-descriptor": ["jad"], "text/vnd.wap.wml": ["wml"], "text/vnd.wap.wmlscript": ["wmls"], "text/vtt": ["vtt"], "text/x-asm": ["s", "asm"], "text/x-c": ["c", "cc", "cxx", "cpp", "h", "hh", "dic"], "text/x-component": ["htc"], "text/x-fortran": ["f", "for", "f77", "f90"], "text/x-handlebars-template": ["hbs"], "text/x-java-source": ["java"], "text/x-lua": ["lua"], "text/x-markdown": ["mkd"], "text/x-nfo": ["nfo"], "text/x-opml": ["opml"], "text/x-org": [], "text/x-pascal": ["p", "pas"], "text/x-processing": ["pde"], "text/x-sass": ["sass"], "text/x-scss": ["scss"], "text/x-setext": ["etx"], "text/x-sfv": ["sfv"], "text/x-suse-ymp": ["ymp"], "text/x-uuencode": ["uu"], "text/x-vcalendar": ["vcs"], "text/x-vcard": ["vcf"], "text/xml": [], "text/yaml": ["yaml", "yml"], "video/3gpp": ["3gp", "3gpp"], "video/3gpp2": ["3g2"], "video/h261": ["h261"], "video/h263": ["h263"], "video/h264": ["h264"], "video/jpeg": ["jpgv"], "video/jpm": ["jpgm"], "video/mj2": ["mj2", "mjp2"], "video/mp2t": ["ts"], "video/mp4": ["mp4", "mp4v", "mpg4"], "video/mpeg": ["mpeg", "mpg", "mpe", "m1v", "m2v"], "video/ogg": ["ogv"], "video/quicktime": ["qt", "mov"], "video/vnd.dece.hd": ["uvh", "uvvh"], "video/vnd.dece.mobile": ["uvm", "uvvm"], "video/vnd.dece.pd": ["uvp", "uvvp"], "video/vnd.dece.sd": ["uvs", "uvvs"], "video/vnd.dece.video": ["uvv", "uvvv"], "video/vnd.dvb.file": ["dvb"], "video/vnd.fvt": ["fvt"], "video/vnd.mpegurl": ["mxu", "m4u"], "video/vnd.ms-playready.media.pyv": ["pyv"], "video/vnd.uvvu.mp4": ["uvu", "uvvu"], "video/vnd.vivo": ["viv"], "video/webm": ["webm"], "video/x-f4v": ["f4v"], "video/x-fli": ["fli"], "video/x-flv": ["flv"], "video/x-m4v": ["m4v"], "video/x-matroska": ["mkv", "mk3d", "mks"], "video/x-mng": ["mng"], "video/x-ms-asf": ["asf", "asx"], "video/x-ms-vob": ["vob"], "video/x-ms-wm": ["wm"], "video/x-ms-wmv": ["wmv"], "video/x-ms-wmx": ["wmx"], "video/x-ms-wvx": ["wvx"], "video/x-msvideo": ["avi"], "video/x-sgi-movie": ["movie"], "video/x-smv": ["smv"], "x-conference/x-cooltalk": ["ice"] }; + } +}); + +// ../node_modules/.pnpm/mime@1.6.0/node_modules/mime/mime.js +var require_mime = __commonJS({ + "../node_modules/.pnpm/mime@1.6.0/node_modules/mime/mime.js"(exports2, module2) { + var path30 = require("path"); + var fs6 = require("fs"); + function Mime() { + this.types = /* @__PURE__ */ Object.create(null); + this.extensions = /* @__PURE__ */ Object.create(null); + } + Mime.prototype.define = function(map) { + for (var type2 in map) { + var exts = map[type2]; + for (var i = 0; i < exts.length; i++) { + if (process.env.DEBUG_MIME && this.types[exts[i]]) { + console.warn((this._loading || "define()").replace(/.*\//, ""), 'changes "' + exts[i] + '" extension type from ' + this.types[exts[i]] + " to " + type2); + } + this.types[exts[i]] = type2; + } + if (!this.extensions[type2]) { + this.extensions[type2] = exts[0]; + } + } + }; + Mime.prototype.load = function(file) { + this._loading = file; + var map = {}, content = fs6.readFileSync(file, "ascii"), lines2 = content.split(/[\r\n]+/); + lines2.forEach(function(line) { + var fields = line.replace(/\s*#.*|^\s*|\s*$/g, "").split(/\s+/); + map[fields.shift()] = fields; + }); + this.define(map); + this._loading = null; + }; + Mime.prototype.lookup = function(path31, fallback) { + var ext2 = path31.replace(/^.*[\.\/\\]/, "").toLowerCase(); + return this.types[ext2] || fallback || this.default_type; + }; + Mime.prototype.extension = function(mimeType) { + var type2 = mimeType.match(/^\s*([^;\s]*)(?:;|\s|$)/)[1].toLowerCase(); + return this.extensions[type2]; + }; + var mime = new Mime(); + mime.define(require_types25()); + mime.default_type = mime.lookup("bin"); + mime.Mime = Mime; + mime.charsets = { + lookup: function(mimeType, fallback) { + return /^text\/|^application\/(javascript|json)/.test(mimeType) ? "UTF-8" : fallback; + } + }; + module2.exports = mime; + } +}); + +// ../node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js +var require_ms3 = __commonJS({ + "../node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js"(exports2, module2) { + var s = 1e3; + var m = s * 60; + var h = m * 60; + var d = h * 24; + var w = d * 7; + var y = d * 365.25; + module2.exports = function(val, options2) { + options2 = options2 || {}; + var type2 = typeof val; + if (type2 === "string" && val.length > 0) { + return parse7(val); + } else if (type2 === "number" && isFinite(val)) { + return options2.long ? fmtLong(val) : fmtShort(val); + } + throw new Error( + "val is not a non-empty string or a valid number. val=" + JSON.stringify(val) + ); + }; + function parse7(str) { + str = String(str); + if (str.length > 100) { + return; + } + var match2 = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( + str + ); + if (!match2) { + return; + } + var n = parseFloat(match2[1]); + var type2 = (match2[2] || "ms").toLowerCase(); + switch (type2) { + case "years": + case "year": + case "yrs": + case "yr": + case "y": + return n * y; + case "weeks": + case "week": + case "w": + return n * w; + case "days": + case "day": + case "d": + return n * d; + case "hours": + case "hour": + case "hrs": + case "hr": + case "h": + return n * h; + case "minutes": + case "minute": + case "mins": + case "min": + case "m": + return n * m; + case "seconds": + case "second": + case "secs": + case "sec": + case "s": + return n * s; + case "milliseconds": + case "millisecond": + case "msecs": + case "msec": + case "ms": + return n; + default: + return void 0; + } + } + function fmtShort(ms) { + var msAbs = Math.abs(ms); + if (msAbs >= d) { + return Math.round(ms / d) + "d"; + } + if (msAbs >= h) { + return Math.round(ms / h) + "h"; + } + if (msAbs >= m) { + return Math.round(ms / m) + "m"; + } + if (msAbs >= s) { + return Math.round(ms / s) + "s"; + } + return ms + "ms"; + } + function fmtLong(ms) { + var msAbs = Math.abs(ms); + if (msAbs >= d) { + return plural(ms, msAbs, d, "day"); + } + if (msAbs >= h) { + return plural(ms, msAbs, h, "hour"); + } + if (msAbs >= m) { + return plural(ms, msAbs, m, "minute"); + } + if (msAbs >= s) { + return plural(ms, msAbs, s, "second"); + } + return ms + " ms"; + } + function plural(ms, msAbs, n, name) { + var isPlural = msAbs >= n * 1.5; + return Math.round(ms / n) + " " + name + (isPlural ? "s" : ""); + } + } +}); + +// ../node_modules/.pnpm/range-parser@1.2.1/node_modules/range-parser/index.js +var require_range_parser = __commonJS({ + "../node_modules/.pnpm/range-parser@1.2.1/node_modules/range-parser/index.js"(exports2, module2) { + "use strict"; + module2.exports = rangeParser; + function rangeParser(size, str, options2) { + if (typeof str !== "string") { + throw new TypeError("argument str must be a string"); + } + var index = str.indexOf("="); + if (index === -1) { + return -2; + } + var arr = str.slice(index + 1).split(","); + var ranges = []; + ranges.type = str.slice(0, index); + for (var i = 0; i < arr.length; i++) { + var range = arr[i].split("-"); + var start4 = parseInt(range[0], 10); + var end = parseInt(range[1], 10); + if (isNaN(start4)) { + start4 = size - end; + end = size - 1; + } else if (isNaN(end)) { + end = size - 1; + } + if (end > size - 1) { + end = size - 1; + } + if (isNaN(start4) || isNaN(end) || start4 > end || start4 < 0) { + continue; + } + ranges.push({ + start: start4, + end + }); + } + if (ranges.length < 1) { + return -1; + } + return options2 && options2.combine ? combineRanges(ranges) : ranges; + } + function combineRanges(ranges) { + var ordered = ranges.map(mapWithIndex).sort(sortByRangeStart); + for (var j = 0, i = 1; i < ordered.length; i++) { + var range = ordered[i]; + var current = ordered[j]; + if (range.start > current.end + 1) { + ordered[++j] = range; + } else if (range.end > current.end) { + current.end = range.end; + current.index = Math.min(current.index, range.index); + } + } + ordered.length = j + 1; + var combined = ordered.sort(sortByRangeIndex).map(mapWithoutIndex); + combined.type = ranges.type; + return combined; + } + function mapWithIndex(range, index) { + return { + start: range.start, + end: range.end, + index + }; + } + function mapWithoutIndex(range) { + return { + start: range.start, + end: range.end + }; + } + function sortByRangeIndex(a, b) { + return a.index - b.index; + } + function sortByRangeStart(a, b) { + return a.start - b.start; + } + } +}); + +// ../node_modules/.pnpm/send@0.18.0/node_modules/send/index.js +var require_send = __commonJS({ + "../node_modules/.pnpm/send@0.18.0/node_modules/send/index.js"(exports2, module2) { + "use strict"; + var createError = require_http_errors(); + var debug = require_src31()("send"); + var deprecate = require_depd()("send"); + var destroy = require_destroy2(); + var encodeUrl = require_encodeurl(); + var escapeHtml = require_escape_html(); + var etag = require_etag(); + var fresh = require_fresh(); + var fs6 = require("fs"); + var mime = require_mime(); + var ms = require_ms3(); + var onFinished = require_on_finished2(); + var parseRange = require_range_parser(); + var path30 = require("path"); + var statuses = require_statuses(); + var Stream2 = require("stream"); + var util2 = require("util"); + var extname2 = path30.extname; + var join9 = path30.join; + var normalize6 = path30.normalize; + var resolve8 = path30.resolve; + var sep4 = path30.sep; + var BYTES_RANGE_REGEXP = /^ *bytes=/; + var MAX_MAXAGE = 60 * 60 * 24 * 365 * 1e3; + var UP_PATH_REGEXP = /(?:^|[\\/])\.\.(?:[\\/]|$)/; + module2.exports = send; + module2.exports.mime = mime; + function send(req, path31, options2) { + return new SendStream(req, path31, options2); + } + function SendStream(req, path31, options2) { + Stream2.call(this); + var opts = options2 || {}; + this.options = opts; + this.path = path31; + this.req = req; + this._acceptRanges = opts.acceptRanges !== void 0 ? Boolean(opts.acceptRanges) : true; + this._cacheControl = opts.cacheControl !== void 0 ? Boolean(opts.cacheControl) : true; + this._etag = opts.etag !== void 0 ? Boolean(opts.etag) : true; + this._dotfiles = opts.dotfiles !== void 0 ? opts.dotfiles : "ignore"; + if (this._dotfiles !== "ignore" && this._dotfiles !== "allow" && this._dotfiles !== "deny") { + throw new TypeError('dotfiles option must be "allow", "deny", or "ignore"'); + } + this._hidden = Boolean(opts.hidden); + if (opts.hidden !== void 0) { + deprecate("hidden: use dotfiles: '" + (this._hidden ? "allow" : "ignore") + "' instead"); + } + if (opts.dotfiles === void 0) { + this._dotfiles = void 0; + } + this._extensions = opts.extensions !== void 0 ? normalizeList(opts.extensions, "extensions option") : []; + this._immutable = opts.immutable !== void 0 ? Boolean(opts.immutable) : false; + this._index = opts.index !== void 0 ? normalizeList(opts.index, "index option") : ["index.html"]; + this._lastModified = opts.lastModified !== void 0 ? Boolean(opts.lastModified) : true; + this._maxage = opts.maxAge || opts.maxage; + this._maxage = typeof this._maxage === "string" ? ms(this._maxage) : Number(this._maxage); + this._maxage = !isNaN(this._maxage) ? Math.min(Math.max(0, this._maxage), MAX_MAXAGE) : 0; + this._root = opts.root ? resolve8(opts.root) : null; + if (!this._root && opts.from) { + this.from(opts.from); + } + } + util2.inherits(SendStream, Stream2); + SendStream.prototype.etag = deprecate.function(function etag2(val) { + this._etag = Boolean(val); + debug("etag %s", this._etag); + return this; + }, "send.etag: pass etag as option"); + SendStream.prototype.hidden = deprecate.function(function hidden(val) { + this._hidden = Boolean(val); + this._dotfiles = void 0; + debug("hidden %s", this._hidden); + return this; + }, "send.hidden: use dotfiles option"); + SendStream.prototype.index = deprecate.function(function index(paths) { + var index2 = !paths ? [] : normalizeList(paths, "paths argument"); + debug("index %o", paths); + this._index = index2; + return this; + }, "send.index: pass index as option"); + SendStream.prototype.root = function root(path31) { + this._root = resolve8(String(path31)); + debug("root %s", this._root); + return this; + }; + SendStream.prototype.from = deprecate.function( + SendStream.prototype.root, + "send.from: pass root as option" + ); + SendStream.prototype.root = deprecate.function( + SendStream.prototype.root, + "send.root: pass root as option" + ); + SendStream.prototype.maxage = deprecate.function(function maxage(maxAge) { + this._maxage = typeof maxAge === "string" ? ms(maxAge) : Number(maxAge); + this._maxage = !isNaN(this._maxage) ? Math.min(Math.max(0, this._maxage), MAX_MAXAGE) : 0; + debug("max-age %d", this._maxage); + return this; + }, "send.maxage: pass maxAge as option"); + SendStream.prototype.error = function error(status, err2) { + if (hasListeners(this, "error")) { + return this.emit("error", createHttpError(status, err2)); + } + var res = this.res; + var msg = statuses.message[status] || String(status); + var doc = createHtmlDocument("Error", escapeHtml(msg)); + clearHeaders(res); + if (err2 && err2.headers) { + setHeaders(res, err2.headers); + } + res.statusCode = status; + res.setHeader("Content-Type", "text/html; charset=UTF-8"); + res.setHeader("Content-Length", Buffer.byteLength(doc)); + res.setHeader("Content-Security-Policy", "default-src 'none'"); + res.setHeader("X-Content-Type-Options", "nosniff"); + res.end(doc); + }; + SendStream.prototype.hasTrailingSlash = function hasTrailingSlash() { + return this.path[this.path.length - 1] === "/"; + }; + SendStream.prototype.isConditionalGET = function isConditionalGET() { + return this.req.headers["if-match"] || this.req.headers["if-unmodified-since"] || this.req.headers["if-none-match"] || this.req.headers["if-modified-since"]; + }; + SendStream.prototype.isPreconditionFailure = function isPreconditionFailure() { + var req = this.req; + var res = this.res; + var match2 = req.headers["if-match"]; + if (match2) { + var etag2 = res.getHeader("ETag"); + return !etag2 || match2 !== "*" && parseTokenList(match2).every(function(match3) { + return match3 !== etag2 && match3 !== "W/" + etag2 && "W/" + match3 !== etag2; + }); + } + var unmodifiedSince = parseHttpDate(req.headers["if-unmodified-since"]); + if (!isNaN(unmodifiedSince)) { + var lastModified = parseHttpDate(res.getHeader("Last-Modified")); + return isNaN(lastModified) || lastModified > unmodifiedSince; + } + return false; + }; + SendStream.prototype.removeContentHeaderFields = function removeContentHeaderFields() { + var res = this.res; + res.removeHeader("Content-Encoding"); + res.removeHeader("Content-Language"); + res.removeHeader("Content-Length"); + res.removeHeader("Content-Range"); + res.removeHeader("Content-Type"); + }; + SendStream.prototype.notModified = function notModified() { + var res = this.res; + debug("not modified"); + this.removeContentHeaderFields(); + res.statusCode = 304; + res.end(); + }; + SendStream.prototype.headersAlreadySent = function headersAlreadySent() { + var err2 = new Error("Can't set headers after they are sent."); + debug("headers already sent"); + this.error(500, err2); + }; + SendStream.prototype.isCachable = function isCachable() { + var statusCode = this.res.statusCode; + return statusCode >= 200 && statusCode < 300 || statusCode === 304; + }; + SendStream.prototype.onStatError = function onStatError(error) { + switch (error.code) { + case "ENAMETOOLONG": + case "ENOENT": + case "ENOTDIR": + this.error(404, error); + break; + default: + this.error(500, error); + break; + } + }; + SendStream.prototype.isFresh = function isFresh() { + return fresh(this.req.headers, { + etag: this.res.getHeader("ETag"), + "last-modified": this.res.getHeader("Last-Modified") + }); + }; + SendStream.prototype.isRangeFresh = function isRangeFresh() { + var ifRange = this.req.headers["if-range"]; + if (!ifRange) { + return true; + } + if (ifRange.indexOf('"') !== -1) { + var etag2 = this.res.getHeader("ETag"); + return Boolean(etag2 && ifRange.indexOf(etag2) !== -1); + } + var lastModified = this.res.getHeader("Last-Modified"); + return parseHttpDate(lastModified) <= parseHttpDate(ifRange); + }; + SendStream.prototype.redirect = function redirect(path31) { + var res = this.res; + if (hasListeners(this, "directory")) { + this.emit("directory", res, path31); + return; + } + if (this.hasTrailingSlash()) { + this.error(403); + return; + } + var loc = encodeUrl(collapseLeadingSlashes(this.path + "/")); + var doc = createHtmlDocument("Redirecting", 'Redirecting to ' + escapeHtml(loc) + ""); + res.statusCode = 301; + res.setHeader("Content-Type", "text/html; charset=UTF-8"); + res.setHeader("Content-Length", Buffer.byteLength(doc)); + res.setHeader("Content-Security-Policy", "default-src 'none'"); + res.setHeader("X-Content-Type-Options", "nosniff"); + res.setHeader("Location", loc); + res.end(doc); + }; + SendStream.prototype.pipe = function pipe(res) { + var root = this._root; + this.res = res; + var path31 = decode(this.path); + if (path31 === -1) { + this.error(400); + return res; + } + if (~path31.indexOf("\0")) { + this.error(400); + return res; + } + var parts; + if (root !== null) { + if (path31) { + path31 = normalize6("." + sep4 + path31); + } + if (UP_PATH_REGEXP.test(path31)) { + debug('malicious path "%s"', path31); + this.error(403); + return res; + } + parts = path31.split(sep4); + path31 = normalize6(join9(root, path31)); + } else { + if (UP_PATH_REGEXP.test(path31)) { + debug('malicious path "%s"', path31); + this.error(403); + return res; + } + parts = normalize6(path31).split(sep4); + path31 = resolve8(path31); + } + if (containsDotFile(parts)) { + var access = this._dotfiles; + if (access === void 0) { + access = parts[parts.length - 1][0] === "." ? this._hidden ? "allow" : "ignore" : "allow"; + } + debug('%s dotfile "%s"', access, path31); + switch (access) { + case "allow": + break; + case "deny": + this.error(403); + return res; + case "ignore": + default: + this.error(404); + return res; + } + } + if (this._index.length && this.hasTrailingSlash()) { + this.sendIndex(path31); + return res; + } + this.sendFile(path31); + return res; + }; + SendStream.prototype.send = function send2(path31, stat7) { + var len = stat7.size; + var options2 = this.options; + var opts = {}; + var res = this.res; + var req = this.req; + var ranges = req.headers.range; + var offset = options2.start || 0; + if (headersSent(res)) { + this.headersAlreadySent(); + return; + } + debug('pipe "%s"', path31); + this.setHeader(path31, stat7); + this.type(path31); + if (this.isConditionalGET()) { + if (this.isPreconditionFailure()) { + this.error(412); + return; + } + if (this.isCachable() && this.isFresh()) { + this.notModified(); + return; + } + } + len = Math.max(0, len - offset); + if (options2.end !== void 0) { + var bytes = options2.end - offset + 1; + if (len > bytes) + len = bytes; + } + if (this._acceptRanges && BYTES_RANGE_REGEXP.test(ranges)) { + ranges = parseRange(len, ranges, { + combine: true + }); + if (!this.isRangeFresh()) { + debug("range stale"); + ranges = -2; + } + if (ranges === -1) { + debug("range unsatisfiable"); + res.setHeader("Content-Range", contentRange("bytes", len)); + return this.error(416, { + headers: { "Content-Range": res.getHeader("Content-Range") } + }); + } + if (ranges !== -2 && ranges.length === 1) { + debug("range %j", ranges); + res.statusCode = 206; + res.setHeader("Content-Range", contentRange("bytes", len, ranges[0])); + offset += ranges[0].start; + len = ranges[0].end - ranges[0].start + 1; + } + } + for (var prop in options2) { + opts[prop] = options2[prop]; + } + opts.start = offset; + opts.end = Math.max(offset, offset + len - 1); + res.setHeader("Content-Length", len); + if (req.method === "HEAD") { + res.end(); + return; + } + this.stream(path31, opts); + }; + SendStream.prototype.sendFile = function sendFile(path31) { + var i = 0; + var self2 = this; + debug('stat "%s"', path31); + fs6.stat(path31, function onstat(err2, stat7) { + if (err2 && err2.code === "ENOENT" && !extname2(path31) && path31[path31.length - 1] !== sep4) { + return next(err2); + } + if (err2) + return self2.onStatError(err2); + if (stat7.isDirectory()) + return self2.redirect(path31); + self2.emit("file", path31, stat7); + self2.send(path31, stat7); + }); + function next(err2) { + if (self2._extensions.length <= i) { + return err2 ? self2.onStatError(err2) : self2.error(404); + } + var p = path31 + "." + self2._extensions[i++]; + debug('stat "%s"', p); + fs6.stat(p, function(err3, stat7) { + if (err3) + return next(err3); + if (stat7.isDirectory()) + return next(); + self2.emit("file", p, stat7); + self2.send(p, stat7); + }); + } + }; + SendStream.prototype.sendIndex = function sendIndex(path31) { + var i = -1; + var self2 = this; + function next(err2) { + if (++i >= self2._index.length) { + if (err2) + return self2.onStatError(err2); + return self2.error(404); + } + var p = join9(path31, self2._index[i]); + debug('stat "%s"', p); + fs6.stat(p, function(err3, stat7) { + if (err3) + return next(err3); + if (stat7.isDirectory()) + return next(); + self2.emit("file", p, stat7); + self2.send(p, stat7); + }); + } + next(); + }; + SendStream.prototype.stream = function stream5(path31, options2) { + var self2 = this; + var res = this.res; + var stream6 = fs6.createReadStream(path31, options2); + this.emit("stream", stream6); + stream6.pipe(res); + function cleanup() { + destroy(stream6, true); + } + onFinished(res, cleanup); + stream6.on("error", function onerror(err2) { + cleanup(); + self2.onStatError(err2); + }); + stream6.on("end", function onend() { + self2.emit("end"); + }); + }; + SendStream.prototype.type = function type2(path31) { + var res = this.res; + if (res.getHeader("Content-Type")) + return; + var type3 = mime.lookup(path31); + if (!type3) { + debug("no content-type"); + return; + } + var charset = mime.charsets.lookup(type3); + debug("content-type %s", type3); + res.setHeader("Content-Type", type3 + (charset ? "; charset=" + charset : "")); + }; + SendStream.prototype.setHeader = function setHeader(path31, stat7) { + var res = this.res; + this.emit("headers", res, path31, stat7); + if (this._acceptRanges && !res.getHeader("Accept-Ranges")) { + debug("accept ranges"); + res.setHeader("Accept-Ranges", "bytes"); + } + if (this._cacheControl && !res.getHeader("Cache-Control")) { + var cacheControl = "public, max-age=" + Math.floor(this._maxage / 1e3); + if (this._immutable) { + cacheControl += ", immutable"; + } + debug("cache-control %s", cacheControl); + res.setHeader("Cache-Control", cacheControl); + } + if (this._lastModified && !res.getHeader("Last-Modified")) { + var modified = stat7.mtime.toUTCString(); + debug("modified %s", modified); + res.setHeader("Last-Modified", modified); + } + if (this._etag && !res.getHeader("ETag")) { + var val = etag(stat7); + debug("etag %s", val); + res.setHeader("ETag", val); + } + }; + function clearHeaders(res) { + var headers = getHeaderNames(res); + for (var i = 0; i < headers.length; i++) { + res.removeHeader(headers[i]); + } + } + function collapseLeadingSlashes(str) { + for (var i = 0; i < str.length; i++) { + if (str[i] !== "/") { + break; + } + } + return i > 1 ? "/" + str.substr(i) : str; + } + function containsDotFile(parts) { + for (var i = 0; i < parts.length; i++) { + var part = parts[i]; + if (part.length > 1 && part[0] === ".") { + return true; + } + } + return false; + } + function contentRange(type2, size, range) { + return type2 + " " + (range ? range.start + "-" + range.end : "*") + "/" + size; + } + function createHtmlDocument(title, body2) { + return '\n\n\n\n' + title + "\n\n\n
" + body2 + "
\n\n\n"; + } + function createHttpError(status, err2) { + if (!err2) { + return createError(status); + } + return err2 instanceof Error ? createError(status, err2, { expose: false }) : createError(status, err2); + } + function decode(path31) { + try { + return decodeURIComponent(path31); + } catch (err2) { + return -1; + } + } + function getHeaderNames(res) { + return typeof res.getHeaderNames !== "function" ? Object.keys(res._headers || {}) : res.getHeaderNames(); + } + function hasListeners(emitter, type2) { + var count = typeof emitter.listenerCount !== "function" ? emitter.listeners(type2).length : emitter.listenerCount(type2); + return count > 0; + } + function headersSent(res) { + return typeof res.headersSent !== "boolean" ? Boolean(res._header) : res.headersSent; + } + function normalizeList(val, name) { + var list = [].concat(val || []); + for (var i = 0; i < list.length; i++) { + if (typeof list[i] !== "string") { + throw new TypeError(name + " must be array of strings or false"); + } + } + return list; + } + function parseHttpDate(date) { + var timestamp = date && Date.parse(date); + return typeof timestamp === "number" ? timestamp : NaN; + } + function parseTokenList(str) { + var end = 0; + var list = []; + var start4 = 0; + for (var i = 0, len = str.length; i < len; i++) { + switch (str.charCodeAt(i)) { + case 32: + if (start4 === end) { + start4 = end = i + 1; + } + break; + case 44: + if (start4 !== end) { + list.push(str.substring(start4, end)); + } + start4 = end = i + 1; + break; + default: + end = i + 1; + break; + } + } + if (start4 !== end) { + list.push(str.substring(start4, end)); + } + return list; + } + function setHeaders(res, headers) { + var keys = Object.keys(headers); + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + res.setHeader(key, headers[key]); + } + } + } +}); + +// ../node_modules/.pnpm/forwarded@0.2.0/node_modules/forwarded/index.js +var require_forwarded = __commonJS({ + "../node_modules/.pnpm/forwarded@0.2.0/node_modules/forwarded/index.js"(exports2, module2) { + "use strict"; + module2.exports = forwarded; + function forwarded(req) { + if (!req) { + throw new TypeError("argument req is required"); + } + var proxyAddrs = parse7(req.headers["x-forwarded-for"] || ""); + var socketAddr = getSocketAddr(req); + var addrs = [socketAddr].concat(proxyAddrs); + return addrs; + } + function getSocketAddr(req) { + return req.socket ? req.socket.remoteAddress : req.connection.remoteAddress; + } + function parse7(header) { + var end = header.length; + var list = []; + var start4 = header.length; + for (var i = header.length - 1; i >= 0; i--) { + switch (header.charCodeAt(i)) { + case 32: + if (start4 === end) { + start4 = end = i; + } + break; + case 44: + if (start4 !== end) { + list.push(header.substring(start4, end)); + } + start4 = end = i; + break; + default: + start4 = i; + break; + } + } + if (start4 !== end) { + list.push(header.substring(start4, end)); + } + return list; + } + } +}); + +// ../node_modules/.pnpm/ipaddr.js@1.9.1/node_modules/ipaddr.js/lib/ipaddr.js +var require_ipaddr = __commonJS({ + "../node_modules/.pnpm/ipaddr.js@1.9.1/node_modules/ipaddr.js/lib/ipaddr.js"(exports2, module2) { + (function() { + var expandIPv6, ipaddr, ipv4Part, ipv4Regexes, ipv6Part, ipv6Regexes, matchCIDR, root, zoneIndex; + ipaddr = {}; + root = this; + if (typeof module2 !== "undefined" && module2 !== null && module2.exports) { + module2.exports = ipaddr; + } else { + root["ipaddr"] = ipaddr; + } + matchCIDR = function(first, second, partSize, cidrBits) { + var part, shift; + if (first.length !== second.length) { + throw new Error("ipaddr: cannot match CIDR for objects with different lengths"); + } + part = 0; + while (cidrBits > 0) { + shift = partSize - cidrBits; + if (shift < 0) { + shift = 0; + } + if (first[part] >> shift !== second[part] >> shift) { + return false; + } + cidrBits -= partSize; + part += 1; + } + return true; + }; + ipaddr.subnetMatch = function(address, rangeList, defaultName) { + var k, len, rangeName, rangeSubnets, subnet; + if (defaultName == null) { + defaultName = "unicast"; + } + for (rangeName in rangeList) { + rangeSubnets = rangeList[rangeName]; + if (rangeSubnets[0] && !(rangeSubnets[0] instanceof Array)) { + rangeSubnets = [rangeSubnets]; + } + for (k = 0, len = rangeSubnets.length; k < len; k++) { + subnet = rangeSubnets[k]; + if (address.kind() === subnet[0].kind()) { + if (address.match.apply(address, subnet)) { + return rangeName; + } + } + } + } + return defaultName; + }; + ipaddr.IPv4 = function() { + function IPv4(octets) { + var k, len, octet; + if (octets.length !== 4) { + throw new Error("ipaddr: ipv4 octet count should be 4"); + } + for (k = 0, len = octets.length; k < len; k++) { + octet = octets[k]; + if (!(0 <= octet && octet <= 255)) { + throw new Error("ipaddr: ipv4 octet should fit in 8 bits"); + } + } + this.octets = octets; + } + IPv4.prototype.kind = function() { + return "ipv4"; + }; + IPv4.prototype.toString = function() { + return this.octets.join("."); + }; + IPv4.prototype.toNormalizedString = function() { + return this.toString(); + }; + IPv4.prototype.toByteArray = function() { + return this.octets.slice(0); + }; + IPv4.prototype.match = function(other, cidrRange) { + var ref; + if (cidrRange === void 0) { + ref = other, other = ref[0], cidrRange = ref[1]; + } + if (other.kind() !== "ipv4") { + throw new Error("ipaddr: cannot match ipv4 address with non-ipv4 one"); + } + return matchCIDR(this.octets, other.octets, 8, cidrRange); + }; + IPv4.prototype.SpecialRanges = { + unspecified: [[new IPv4([0, 0, 0, 0]), 8]], + broadcast: [[new IPv4([255, 255, 255, 255]), 32]], + multicast: [[new IPv4([224, 0, 0, 0]), 4]], + linkLocal: [[new IPv4([169, 254, 0, 0]), 16]], + loopback: [[new IPv4([127, 0, 0, 0]), 8]], + carrierGradeNat: [[new IPv4([100, 64, 0, 0]), 10]], + "private": [[new IPv4([10, 0, 0, 0]), 8], [new IPv4([172, 16, 0, 0]), 12], [new IPv4([192, 168, 0, 0]), 16]], + reserved: [[new IPv4([192, 0, 0, 0]), 24], [new IPv4([192, 0, 2, 0]), 24], [new IPv4([192, 88, 99, 0]), 24], [new IPv4([198, 51, 100, 0]), 24], [new IPv4([203, 0, 113, 0]), 24], [new IPv4([240, 0, 0, 0]), 4]] + }; + IPv4.prototype.range = function() { + return ipaddr.subnetMatch(this, this.SpecialRanges); + }; + IPv4.prototype.toIPv4MappedAddress = function() { + return ipaddr.IPv6.parse("::ffff:" + this.toString()); + }; + IPv4.prototype.prefixLengthFromSubnetMask = function() { + var cidr, i, k, octet, stop2, zeros, zerotable; + zerotable = { + 0: 8, + 128: 7, + 192: 6, + 224: 5, + 240: 4, + 248: 3, + 252: 2, + 254: 1, + 255: 0 + }; + cidr = 0; + stop2 = false; + for (i = k = 3; k >= 0; i = k += -1) { + octet = this.octets[i]; + if (octet in zerotable) { + zeros = zerotable[octet]; + if (stop2 && zeros !== 0) { + return null; + } + if (zeros !== 8) { + stop2 = true; + } + cidr += zeros; + } else { + return null; + } + } + return 32 - cidr; + }; + return IPv4; + }(); + ipv4Part = "(0?\\d+|0x[a-f0-9]+)"; + ipv4Regexes = { + fourOctet: new RegExp("^" + ipv4Part + "\\." + ipv4Part + "\\." + ipv4Part + "\\." + ipv4Part + "$", "i"), + longValue: new RegExp("^" + ipv4Part + "$", "i") + }; + ipaddr.IPv4.parser = function(string) { + var match2, parseIntAuto, part, shift, value; + parseIntAuto = function(string2) { + if (string2[0] === "0" && string2[1] !== "x") { + return parseInt(string2, 8); + } else { + return parseInt(string2); + } + }; + if (match2 = string.match(ipv4Regexes.fourOctet)) { + return function() { + var k, len, ref, results; + ref = match2.slice(1, 6); + results = []; + for (k = 0, len = ref.length; k < len; k++) { + part = ref[k]; + results.push(parseIntAuto(part)); + } + return results; + }(); + } else if (match2 = string.match(ipv4Regexes.longValue)) { + value = parseIntAuto(match2[1]); + if (value > 4294967295 || value < 0) { + throw new Error("ipaddr: address outside defined range"); + } + return function() { + var k, results; + results = []; + for (shift = k = 0; k <= 24; shift = k += 8) { + results.push(value >> shift & 255); + } + return results; + }().reverse(); + } else { + return null; + } + }; + ipaddr.IPv6 = function() { + function IPv6(parts, zoneId) { + var i, k, l2, len, part, ref; + if (parts.length === 16) { + this.parts = []; + for (i = k = 0; k <= 14; i = k += 2) { + this.parts.push(parts[i] << 8 | parts[i + 1]); + } + } else if (parts.length === 8) { + this.parts = parts; + } else { + throw new Error("ipaddr: ipv6 part count should be 8 or 16"); + } + ref = this.parts; + for (l2 = 0, len = ref.length; l2 < len; l2++) { + part = ref[l2]; + if (!(0 <= part && part <= 65535)) { + throw new Error("ipaddr: ipv6 part should fit in 16 bits"); + } + } + if (zoneId) { + this.zoneId = zoneId; + } + } + IPv6.prototype.kind = function() { + return "ipv6"; + }; + IPv6.prototype.toString = function() { + return this.toNormalizedString().replace(/((^|:)(0(:|$))+)/, "::"); + }; + IPv6.prototype.toRFC5952String = function() { + var bestMatchIndex, bestMatchLength, match2, regex, string; + regex = /((^|:)(0(:|$)){2,})/g; + string = this.toNormalizedString(); + bestMatchIndex = 0; + bestMatchLength = -1; + while (match2 = regex.exec(string)) { + if (match2[0].length > bestMatchLength) { + bestMatchIndex = match2.index; + bestMatchLength = match2[0].length; + } + } + if (bestMatchLength < 0) { + return string; + } + return string.substring(0, bestMatchIndex) + "::" + string.substring(bestMatchIndex + bestMatchLength); + }; + IPv6.prototype.toByteArray = function() { + var bytes, k, len, part, ref; + bytes = []; + ref = this.parts; + for (k = 0, len = ref.length; k < len; k++) { + part = ref[k]; + bytes.push(part >> 8); + bytes.push(part & 255); + } + return bytes; + }; + IPv6.prototype.toNormalizedString = function() { + var addr2, part, suffix; + addr2 = function() { + var k, len, ref, results; + ref = this.parts; + results = []; + for (k = 0, len = ref.length; k < len; k++) { + part = ref[k]; + results.push(part.toString(16)); + } + return results; + }.call(this).join(":"); + suffix = ""; + if (this.zoneId) { + suffix = "%" + this.zoneId; + } + return addr2 + suffix; + }; + IPv6.prototype.toFixedLengthString = function() { + var addr2, part, suffix; + addr2 = function() { + var k, len, ref, results; + ref = this.parts; + results = []; + for (k = 0, len = ref.length; k < len; k++) { + part = ref[k]; + results.push(part.toString(16).padStart(4, "0")); + } + return results; + }.call(this).join(":"); + suffix = ""; + if (this.zoneId) { + suffix = "%" + this.zoneId; + } + return addr2 + suffix; + }; + IPv6.prototype.match = function(other, cidrRange) { + var ref; + if (cidrRange === void 0) { + ref = other, other = ref[0], cidrRange = ref[1]; + } + if (other.kind() !== "ipv6") { + throw new Error("ipaddr: cannot match ipv6 address with non-ipv6 one"); + } + return matchCIDR(this.parts, other.parts, 16, cidrRange); + }; + IPv6.prototype.SpecialRanges = { + unspecified: [new IPv6([0, 0, 0, 0, 0, 0, 0, 0]), 128], + linkLocal: [new IPv6([65152, 0, 0, 0, 0, 0, 0, 0]), 10], + multicast: [new IPv6([65280, 0, 0, 0, 0, 0, 0, 0]), 8], + loopback: [new IPv6([0, 0, 0, 0, 0, 0, 0, 1]), 128], + uniqueLocal: [new IPv6([64512, 0, 0, 0, 0, 0, 0, 0]), 7], + ipv4Mapped: [new IPv6([0, 0, 0, 0, 0, 65535, 0, 0]), 96], + rfc6145: [new IPv6([0, 0, 0, 0, 65535, 0, 0, 0]), 96], + rfc6052: [new IPv6([100, 65435, 0, 0, 0, 0, 0, 0]), 96], + "6to4": [new IPv6([8194, 0, 0, 0, 0, 0, 0, 0]), 16], + teredo: [new IPv6([8193, 0, 0, 0, 0, 0, 0, 0]), 32], + reserved: [[new IPv6([8193, 3512, 0, 0, 0, 0, 0, 0]), 32]] + }; + IPv6.prototype.range = function() { + return ipaddr.subnetMatch(this, this.SpecialRanges); + }; + IPv6.prototype.isIPv4MappedAddress = function() { + return this.range() === "ipv4Mapped"; + }; + IPv6.prototype.toIPv4Address = function() { + var high, low, ref; + if (!this.isIPv4MappedAddress()) { + throw new Error("ipaddr: trying to convert a generic ipv6 address to ipv4"); + } + ref = this.parts.slice(-2), high = ref[0], low = ref[1]; + return new ipaddr.IPv4([high >> 8, high & 255, low >> 8, low & 255]); + }; + IPv6.prototype.prefixLengthFromSubnetMask = function() { + var cidr, i, k, part, stop2, zeros, zerotable; + zerotable = { + 0: 16, + 32768: 15, + 49152: 14, + 57344: 13, + 61440: 12, + 63488: 11, + 64512: 10, + 65024: 9, + 65280: 8, + 65408: 7, + 65472: 6, + 65504: 5, + 65520: 4, + 65528: 3, + 65532: 2, + 65534: 1, + 65535: 0 + }; + cidr = 0; + stop2 = false; + for (i = k = 7; k >= 0; i = k += -1) { + part = this.parts[i]; + if (part in zerotable) { + zeros = zerotable[part]; + if (stop2 && zeros !== 0) { + return null; + } + if (zeros !== 16) { + stop2 = true; + } + cidr += zeros; + } else { + return null; + } + } + return 128 - cidr; + }; + return IPv6; + }(); + ipv6Part = "(?:[0-9a-f]+::?)+"; + zoneIndex = "%[0-9a-z]{1,}"; + ipv6Regexes = { + zoneIndex: new RegExp(zoneIndex, "i"), + "native": new RegExp("^(::)?(" + ipv6Part + ")?([0-9a-f]+)?(::)?(" + zoneIndex + ")?$", "i"), + transitional: new RegExp("^((?:" + ipv6Part + ")|(?:::)(?:" + ipv6Part + ")?)" + (ipv4Part + "\\." + ipv4Part + "\\." + ipv4Part + "\\." + ipv4Part) + ("(" + zoneIndex + ")?$"), "i") + }; + expandIPv6 = function(string, parts) { + var colonCount, lastColon, part, replacement, replacementCount, zoneId; + if (string.indexOf("::") !== string.lastIndexOf("::")) { + return null; + } + zoneId = (string.match(ipv6Regexes["zoneIndex"]) || [])[0]; + if (zoneId) { + zoneId = zoneId.substring(1); + string = string.replace(/%.+$/, ""); + } + colonCount = 0; + lastColon = -1; + while ((lastColon = string.indexOf(":", lastColon + 1)) >= 0) { + colonCount++; + } + if (string.substr(0, 2) === "::") { + colonCount--; + } + if (string.substr(-2, 2) === "::") { + colonCount--; + } + if (colonCount > parts) { + return null; + } + replacementCount = parts - colonCount; + replacement = ":"; + while (replacementCount--) { + replacement += "0:"; + } + string = string.replace("::", replacement); + if (string[0] === ":") { + string = string.slice(1); + } + if (string[string.length - 1] === ":") { + string = string.slice(0, -1); + } + parts = function() { + var k, len, ref, results; + ref = string.split(":"); + results = []; + for (k = 0, len = ref.length; k < len; k++) { + part = ref[k]; + results.push(parseInt(part, 16)); + } + return results; + }(); + return { + parts, + zoneId + }; + }; + ipaddr.IPv6.parser = function(string) { + var addr2, k, len, match2, octet, octets, zoneId; + if (ipv6Regexes["native"].test(string)) { + return expandIPv6(string, 8); + } else if (match2 = string.match(ipv6Regexes["transitional"])) { + zoneId = match2[6] || ""; + addr2 = expandIPv6(match2[1].slice(0, -1) + zoneId, 6); + if (addr2.parts) { + octets = [parseInt(match2[2]), parseInt(match2[3]), parseInt(match2[4]), parseInt(match2[5])]; + for (k = 0, len = octets.length; k < len; k++) { + octet = octets[k]; + if (!(0 <= octet && octet <= 255)) { + return null; + } + } + addr2.parts.push(octets[0] << 8 | octets[1]); + addr2.parts.push(octets[2] << 8 | octets[3]); + return { + parts: addr2.parts, + zoneId: addr2.zoneId + }; + } + } + return null; + }; + ipaddr.IPv4.isIPv4 = ipaddr.IPv6.isIPv6 = function(string) { + return this.parser(string) !== null; + }; + ipaddr.IPv4.isValid = function(string) { + var e; + try { + new this(this.parser(string)); + return true; + } catch (error1) { + e = error1; + return false; + } + }; + ipaddr.IPv4.isValidFourPartDecimal = function(string) { + if (ipaddr.IPv4.isValid(string) && string.match(/^(0|[1-9]\d*)(\.(0|[1-9]\d*)){3}$/)) { + return true; + } else { + return false; + } + }; + ipaddr.IPv6.isValid = function(string) { + var addr2, e; + if (typeof string === "string" && string.indexOf(":") === -1) { + return false; + } + try { + addr2 = this.parser(string); + new this(addr2.parts, addr2.zoneId); + return true; + } catch (error1) { + e = error1; + return false; + } + }; + ipaddr.IPv4.parse = function(string) { + var parts; + parts = this.parser(string); + if (parts === null) { + throw new Error("ipaddr: string is not formatted like ip address"); + } + return new this(parts); + }; + ipaddr.IPv6.parse = function(string) { + var addr2; + addr2 = this.parser(string); + if (addr2.parts === null) { + throw new Error("ipaddr: string is not formatted like ip address"); + } + return new this(addr2.parts, addr2.zoneId); + }; + ipaddr.IPv4.parseCIDR = function(string) { + var maskLength, match2, parsed; + if (match2 = string.match(/^(.+)\/(\d+)$/)) { + maskLength = parseInt(match2[2]); + if (maskLength >= 0 && maskLength <= 32) { + parsed = [this.parse(match2[1]), maskLength]; + Object.defineProperty(parsed, "toString", { + value: function() { + return this.join("/"); + } + }); + return parsed; + } + } + throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range"); + }; + ipaddr.IPv4.subnetMaskFromPrefixLength = function(prefix) { + var filledOctetCount, j, octets; + prefix = parseInt(prefix); + if (prefix < 0 || prefix > 32) { + throw new Error("ipaddr: invalid IPv4 prefix length"); + } + octets = [0, 0, 0, 0]; + j = 0; + filledOctetCount = Math.floor(prefix / 8); + while (j < filledOctetCount) { + octets[j] = 255; + j++; + } + if (filledOctetCount < 4) { + octets[filledOctetCount] = Math.pow(2, prefix % 8) - 1 << 8 - prefix % 8; + } + return new this(octets); + }; + ipaddr.IPv4.broadcastAddressFromCIDR = function(string) { + var cidr, error, i, ipInterfaceOctets, octets, subnetMaskOctets; + try { + cidr = this.parseCIDR(string); + ipInterfaceOctets = cidr[0].toByteArray(); + subnetMaskOctets = this.subnetMaskFromPrefixLength(cidr[1]).toByteArray(); + octets = []; + i = 0; + while (i < 4) { + octets.push(parseInt(ipInterfaceOctets[i], 10) | parseInt(subnetMaskOctets[i], 10) ^ 255); + i++; + } + return new this(octets); + } catch (error1) { + error = error1; + throw new Error("ipaddr: the address does not have IPv4 CIDR format"); + } + }; + ipaddr.IPv4.networkAddressFromCIDR = function(string) { + var cidr, error, i, ipInterfaceOctets, octets, subnetMaskOctets; + try { + cidr = this.parseCIDR(string); + ipInterfaceOctets = cidr[0].toByteArray(); + subnetMaskOctets = this.subnetMaskFromPrefixLength(cidr[1]).toByteArray(); + octets = []; + i = 0; + while (i < 4) { + octets.push(parseInt(ipInterfaceOctets[i], 10) & parseInt(subnetMaskOctets[i], 10)); + i++; + } + return new this(octets); + } catch (error1) { + error = error1; + throw new Error("ipaddr: the address does not have IPv4 CIDR format"); + } + }; + ipaddr.IPv6.parseCIDR = function(string) { + var maskLength, match2, parsed; + if (match2 = string.match(/^(.+)\/(\d+)$/)) { + maskLength = parseInt(match2[2]); + if (maskLength >= 0 && maskLength <= 128) { + parsed = [this.parse(match2[1]), maskLength]; + Object.defineProperty(parsed, "toString", { + value: function() { + return this.join("/"); + } + }); + return parsed; + } + } + throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range"); + }; + ipaddr.isValid = function(string) { + return ipaddr.IPv6.isValid(string) || ipaddr.IPv4.isValid(string); + }; + ipaddr.parse = function(string) { + if (ipaddr.IPv6.isValid(string)) { + return ipaddr.IPv6.parse(string); + } else if (ipaddr.IPv4.isValid(string)) { + return ipaddr.IPv4.parse(string); + } else { + throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format"); + } + }; + ipaddr.parseCIDR = function(string) { + var e; + try { + return ipaddr.IPv6.parseCIDR(string); + } catch (error1) { + e = error1; + try { + return ipaddr.IPv4.parseCIDR(string); + } catch (error12) { + e = error12; + throw new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format"); + } + } + }; + ipaddr.fromByteArray = function(bytes) { + var length; + length = bytes.length; + if (length === 4) { + return new ipaddr.IPv4(bytes); + } else if (length === 16) { + return new ipaddr.IPv6(bytes); + } else { + throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address"); + } + }; + ipaddr.process = function(string) { + var addr2; + addr2 = this.parse(string); + if (addr2.kind() === "ipv6" && addr2.isIPv4MappedAddress()) { + return addr2.toIPv4Address(); + } else { + return addr2; + } + }; + }).call(exports2); + } +}); + +// ../node_modules/.pnpm/proxy-addr@2.0.7/node_modules/proxy-addr/index.js +var require_proxy_addr = __commonJS({ + "../node_modules/.pnpm/proxy-addr@2.0.7/node_modules/proxy-addr/index.js"(exports2, module2) { + "use strict"; + module2.exports = proxyaddr; + module2.exports.all = alladdrs; + module2.exports.compile = compile; + var forwarded = require_forwarded(); + var ipaddr = require_ipaddr(); + var DIGIT_REGEXP = /^[0-9]+$/; + var isip = ipaddr.isValid; + var parseip = ipaddr.parse; + var IP_RANGES = { + linklocal: ["169.254.0.0/16", "fe80::/10"], + loopback: ["127.0.0.1/8", "::1/128"], + uniquelocal: ["10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16", "fc00::/7"] + }; + function alladdrs(req, trust) { + var addrs = forwarded(req); + if (!trust) { + return addrs; + } + if (typeof trust !== "function") { + trust = compile(trust); + } + for (var i = 0; i < addrs.length - 1; i++) { + if (trust(addrs[i], i)) + continue; + addrs.length = i + 1; + } + return addrs; + } + function compile(val) { + if (!val) { + throw new TypeError("argument is required"); + } + var trust; + if (typeof val === "string") { + trust = [val]; + } else if (Array.isArray(val)) { + trust = val.slice(); + } else { + throw new TypeError("unsupported trust argument"); + } + for (var i = 0; i < trust.length; i++) { + val = trust[i]; + if (!Object.prototype.hasOwnProperty.call(IP_RANGES, val)) { + continue; + } + val = IP_RANGES[val]; + trust.splice.apply(trust, [i, 1].concat(val)); + i += val.length - 1; + } + return compileTrust(compileRangeSubnets(trust)); + } + function compileRangeSubnets(arr) { + var rangeSubnets = new Array(arr.length); + for (var i = 0; i < arr.length; i++) { + rangeSubnets[i] = parseipNotation(arr[i]); + } + return rangeSubnets; + } + function compileTrust(rangeSubnets) { + var len = rangeSubnets.length; + return len === 0 ? trustNone : len === 1 ? trustSingle(rangeSubnets[0]) : trustMulti(rangeSubnets); + } + function parseipNotation(note) { + var pos = note.lastIndexOf("/"); + var str = pos !== -1 ? note.substring(0, pos) : note; + if (!isip(str)) { + throw new TypeError("invalid IP address: " + str); + } + var ip = parseip(str); + if (pos === -1 && ip.kind() === "ipv6" && ip.isIPv4MappedAddress()) { + ip = ip.toIPv4Address(); + } + var max = ip.kind() === "ipv6" ? 128 : 32; + var range = pos !== -1 ? note.substring(pos + 1, note.length) : null; + if (range === null) { + range = max; + } else if (DIGIT_REGEXP.test(range)) { + range = parseInt(range, 10); + } else if (ip.kind() === "ipv4" && isip(range)) { + range = parseNetmask(range); + } else { + range = null; + } + if (range <= 0 || range > max) { + throw new TypeError("invalid range on address: " + note); + } + return [ip, range]; + } + function parseNetmask(netmask) { + var ip = parseip(netmask); + var kind = ip.kind(); + return kind === "ipv4" ? ip.prefixLengthFromSubnetMask() : null; + } + function proxyaddr(req, trust) { + if (!req) { + throw new TypeError("req argument is required"); + } + if (!trust) { + throw new TypeError("trust argument is required"); + } + var addrs = alladdrs(req, trust); + var addr2 = addrs[addrs.length - 1]; + return addr2; + } + function trustNone() { + return false; + } + function trustMulti(subnets) { + return function trust(addr2) { + if (!isip(addr2)) + return false; + var ip = parseip(addr2); + var ipconv; + var kind = ip.kind(); + for (var i = 0; i < subnets.length; i++) { + var subnet = subnets[i]; + var subnetip = subnet[0]; + var subnetkind = subnetip.kind(); + var subnetrange = subnet[1]; + var trusted = ip; + if (kind !== subnetkind) { + if (subnetkind === "ipv4" && !ip.isIPv4MappedAddress()) { + continue; + } + if (!ipconv) { + ipconv = subnetkind === "ipv4" ? ip.toIPv4Address() : ip.toIPv4MappedAddress(); + } + trusted = ipconv; + } + if (trusted.match(subnetip, subnetrange)) { + return true; + } + } + return false; + }; + } + function trustSingle(subnet) { + var subnetip = subnet[0]; + var subnetkind = subnetip.kind(); + var subnetisipv4 = subnetkind === "ipv4"; + var subnetrange = subnet[1]; + return function trust(addr2) { + if (!isip(addr2)) + return false; + var ip = parseip(addr2); + var kind = ip.kind(); + if (kind !== subnetkind) { + if (subnetisipv4 && !ip.isIPv4MappedAddress()) { + return false; + } + ip = subnetisipv4 ? ip.toIPv4Address() : ip.toIPv4MappedAddress(); + } + return ip.match(subnetip, subnetrange); + }; + } + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/utils.js +var require_utils21 = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/utils.js"(exports2) { + "use strict"; + var Buffer2 = require_safe_buffer2().Buffer; + var contentDisposition = require_content_disposition(); + var contentType = require_content_type(); + var deprecate = require_depd()("express"); + var flatten = require_array_flatten(); + var mime = require_send().mime; + var etag = require_etag(); + var proxyaddr = require_proxy_addr(); + var qs = require_lib8(); + var querystring = require("querystring"); + exports2.etag = createETagGenerator({ weak: false }); + exports2.wetag = createETagGenerator({ weak: true }); + exports2.isAbsolute = function(path30) { + if ("/" === path30[0]) + return true; + if (":" === path30[1] && ("\\" === path30[2] || "/" === path30[2])) + return true; + if ("\\\\" === path30.substring(0, 2)) + return true; + }; + exports2.flatten = deprecate.function( + flatten, + "utils.flatten: use array-flatten npm module instead" + ); + exports2.normalizeType = function(type2) { + return ~type2.indexOf("/") ? acceptParams(type2) : { value: mime.lookup(type2), params: {} }; + }; + exports2.normalizeTypes = function(types2) { + var ret2 = []; + for (var i = 0; i < types2.length; ++i) { + ret2.push(exports2.normalizeType(types2[i])); + } + return ret2; + }; + exports2.contentDisposition = deprecate.function( + contentDisposition, + "utils.contentDisposition: use content-disposition npm module instead" + ); + function acceptParams(str, index) { + var parts = str.split(/ *; */); + var ret2 = { value: parts[0], quality: 1, params: {}, originalIndex: index }; + for (var i = 1; i < parts.length; ++i) { + var pms = parts[i].split(/ *= */); + if ("q" === pms[0]) { + ret2.quality = parseFloat(pms[1]); + } else { + ret2.params[pms[0]] = pms[1]; + } + } + return ret2; + } + exports2.compileETag = function(val) { + var fn; + if (typeof val === "function") { + return val; + } + switch (val) { + case true: + case "weak": + fn = exports2.wetag; + break; + case false: + break; + case "strong": + fn = exports2.etag; + break; + default: + throw new TypeError("unknown value for etag function: " + val); + } + return fn; + }; + exports2.compileQueryParser = function compileQueryParser(val) { + var fn; + if (typeof val === "function") { + return val; + } + switch (val) { + case true: + case "simple": + fn = querystring.parse; + break; + case false: + fn = newObject; + break; + case "extended": + fn = parseExtendedQueryString; + break; + default: + throw new TypeError("unknown value for query parser function: " + val); + } + return fn; + }; + exports2.compileTrust = function(val) { + if (typeof val === "function") + return val; + if (val === true) { + return function() { + return true; + }; + } + if (typeof val === "number") { + return function(a, i) { + return i < val; + }; + } + if (typeof val === "string") { + val = val.split(",").map(function(v) { + return v.trim(); + }); + } + return proxyaddr.compile(val || []); + }; + exports2.setCharset = function setCharset(type2, charset) { + if (!type2 || !charset) { + return type2; + } + var parsed = contentType.parse(type2); + parsed.parameters.charset = charset; + return contentType.format(parsed); + }; + function createETagGenerator(options2) { + return function generateETag(body2, encoding) { + var buf = !Buffer2.isBuffer(body2) ? Buffer2.from(body2, encoding) : body2; + return etag(buf, options2); + }; + } + function parseExtendedQueryString(str) { + return qs.parse(str, { + allowPrototypes: true + }); + } + function newObject() { + return {}; + } + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/application.js +var require_application = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/application.js"(exports2, module2) { + "use strict"; + var finalhandler = require_finalhandler(); + var Router = require_router2(); + var methods = require_methods(); + var middleware = require_init(); + var query = require_query(); + var debug = require_src31()("express:application"); + var View = require_view(); + var http4 = require("http"); + var compileETag = require_utils21().compileETag; + var compileQueryParser = require_utils21().compileQueryParser; + var compileTrust = require_utils21().compileTrust; + var deprecate = require_depd()("express"); + var flatten = require_array_flatten(); + var merge3 = require_utils_merge(); + var resolve8 = require("path").resolve; + var setPrototypeOf = require_setprototypeof(); + var hasOwnProperty2 = Object.prototype.hasOwnProperty; + var slice = Array.prototype.slice; + var app = exports2 = module2.exports = {}; + var trustProxyDefaultSymbol = "@@symbol:trust_proxy_default"; + app.init = function init5() { + this.cache = {}; + this.engines = {}; + this.settings = {}; + this.defaultConfiguration(); + }; + app.defaultConfiguration = function defaultConfiguration() { + var env4 = process.env.NODE_ENV || "development"; + this.enable("x-powered-by"); + this.set("etag", "weak"); + this.set("env", env4); + this.set("query parser", "extended"); + this.set("subdomain offset", 2); + this.set("trust proxy", false); + Object.defineProperty(this.settings, trustProxyDefaultSymbol, { + configurable: true, + value: true + }); + debug("booting in %s mode", env4); + this.on("mount", function onmount(parent) { + if (this.settings[trustProxyDefaultSymbol] === true && typeof parent.settings["trust proxy fn"] === "function") { + delete this.settings["trust proxy"]; + delete this.settings["trust proxy fn"]; + } + setPrototypeOf(this.request, parent.request); + setPrototypeOf(this.response, parent.response); + setPrototypeOf(this.engines, parent.engines); + setPrototypeOf(this.settings, parent.settings); + }); + this.locals = /* @__PURE__ */ Object.create(null); + this.mountpath = "/"; + this.locals.settings = this.settings; + this.set("view", View); + this.set("views", resolve8("views")); + this.set("jsonp callback name", "callback"); + if (env4 === "production") { + this.enable("view cache"); + } + Object.defineProperty(this, "router", { + get: function() { + throw new Error("'app.router' is deprecated!\nPlease see the 3.x to 4.x migration guide for details on how to update your app."); + } + }); + }; + app.lazyrouter = function lazyrouter() { + if (!this._router) { + this._router = new Router({ + caseSensitive: this.enabled("case sensitive routing"), + strict: this.enabled("strict routing") + }); + this._router.use(query(this.get("query parser fn"))); + this._router.use(middleware.init(this)); + } + }; + app.handle = function handle2(req, res, callback) { + var router = this._router; + var done = callback || finalhandler(req, res, { + env: this.get("env"), + onerror: logerror.bind(this) + }); + if (!router) { + debug("no routes defined on app"); + done(); + return; + } + router.handle(req, res, done); + }; + app.use = function use2(fn) { + var offset = 0; + var path30 = "/"; + if (typeof fn !== "function") { + var arg = fn; + while (Array.isArray(arg) && arg.length !== 0) { + arg = arg[0]; + } + if (typeof arg !== "function") { + offset = 1; + path30 = fn; + } + } + var fns = flatten(slice.call(arguments, offset)); + if (fns.length === 0) { + throw new TypeError("app.use() requires a middleware function"); + } + this.lazyrouter(); + var router = this._router; + fns.forEach(function(fn2) { + if (!fn2 || !fn2.handle || !fn2.set) { + return router.use(path30, fn2); + } + debug(".use app under %s", path30); + fn2.mountpath = path30; + fn2.parent = this; + router.use(path30, function mounted_app(req, res, next) { + var orig = req.app; + fn2.handle(req, res, function(err2) { + setPrototypeOf(req, orig.request); + setPrototypeOf(res, orig.response); + next(err2); + }); + }); + fn2.emit("mount", this); + }, this); + return this; + }; + app.route = function route(path30) { + this.lazyrouter(); + return this._router.route(path30); + }; + app.engine = function engine(ext2, fn) { + if (typeof fn !== "function") { + throw new Error("callback function required"); + } + var extension = ext2[0] !== "." ? "." + ext2 : ext2; + this.engines[extension] = fn; + return this; + }; + app.param = function param(name, fn) { + this.lazyrouter(); + if (Array.isArray(name)) { + for (var i = 0; i < name.length; i++) { + this.param(name[i], fn); + } + return this; + } + this._router.param(name, fn); + return this; + }; + app.set = function set(setting, val) { + if (arguments.length === 1) { + var settings = this.settings; + while (settings && settings !== Object.prototype) { + if (hasOwnProperty2.call(settings, setting)) { + return settings[setting]; + } + settings = Object.getPrototypeOf(settings); + } + return void 0; + } + debug('set "%s" to %o', setting, val); + this.settings[setting] = val; + switch (setting) { + case "etag": + this.set("etag fn", compileETag(val)); + break; + case "query parser": + this.set("query parser fn", compileQueryParser(val)); + break; + case "trust proxy": + this.set("trust proxy fn", compileTrust(val)); + Object.defineProperty(this.settings, trustProxyDefaultSymbol, { + configurable: true, + value: false + }); + break; + } + return this; + }; + app.path = function path30() { + return this.parent ? this.parent.path() + this.mountpath : ""; + }; + app.enabled = function enabled(setting) { + return Boolean(this.set(setting)); + }; + app.disabled = function disabled(setting) { + return !this.set(setting); + }; + app.enable = function enable(setting) { + return this.set(setting, true); + }; + app.disable = function disable(setting) { + return this.set(setting, false); + }; + methods.forEach(function(method) { + app[method] = function(path30) { + if (method === "get" && arguments.length === 1) { + return this.set(path30); + } + this.lazyrouter(); + var route = this._router.route(path30); + route[method].apply(route, slice.call(arguments, 1)); + return this; + }; + }); + app.all = function all3(path30) { + this.lazyrouter(); + var route = this._router.route(path30); + var args3 = slice.call(arguments, 1); + for (var i = 0; i < methods.length; i++) { + route[methods[i]].apply(route, args3); + } + return this; + }; + app.del = deprecate.function(app.delete, "app.del: Use app.delete instead"); + app.render = function render(name, options2, callback) { + var cache = this.cache; + var done = callback; + var engines = this.engines; + var opts = options2; + var renderOptions = {}; + var view; + if (typeof options2 === "function") { + done = options2; + opts = {}; + } + merge3(renderOptions, this.locals); + if (opts._locals) { + merge3(renderOptions, opts._locals); + } + merge3(renderOptions, opts); + if (renderOptions.cache == null) { + renderOptions.cache = this.enabled("view cache"); + } + if (renderOptions.cache) { + view = cache[name]; + } + if (!view) { + var View2 = this.get("view"); + view = new View2(name, { + defaultEngine: this.get("view engine"), + root: this.get("views"), + engines + }); + if (!view.path) { + var dirs = Array.isArray(view.root) && view.root.length > 1 ? 'directories "' + view.root.slice(0, -1).join('", "') + '" or "' + view.root[view.root.length - 1] + '"' : 'directory "' + view.root + '"'; + var err2 = new Error('Failed to lookup view "' + name + '" in views ' + dirs); + err2.view = view; + return done(err2); + } + if (renderOptions.cache) { + cache[name] = view; + } + } + tryRender(view, renderOptions, done); + }; + app.listen = function listen() { + var server = http4.createServer(this); + return server.listen.apply(server, arguments); + }; + function logerror(err2) { + if (this.get("env") !== "test") + console.error(err2.stack || err2.toString()); + } + function tryRender(view, options2, callback) { + try { + view.render(options2, callback); + } catch (err2) { + callback(err2); + } + } + } +}); + +// ../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/charset.js +var require_charset = __commonJS({ + "../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/charset.js"(exports2, module2) { + "use strict"; + module2.exports = preferredCharsets; + module2.exports.preferredCharsets = preferredCharsets; + var simpleCharsetRegExp = /^\s*([^\s;]+)\s*(?:;(.*))?$/; + function parseAcceptCharset(accept) { + var accepts = accept.split(","); + for (var i = 0, j = 0; i < accepts.length; i++) { + var charset = parseCharset(accepts[i].trim(), i); + if (charset) { + accepts[j++] = charset; + } + } + accepts.length = j; + return accepts; + } + function parseCharset(str, i) { + var match2 = simpleCharsetRegExp.exec(str); + if (!match2) + return null; + var charset = match2[1]; + var q = 1; + if (match2[2]) { + var params = match2[2].split(";"); + for (var j = 0; j < params.length; j++) { + var p = params[j].trim().split("="); + if (p[0] === "q") { + q = parseFloat(p[1]); + break; + } + } + } + return { + charset, + q, + i + }; + } + function getCharsetPriority(charset, accepted2, index) { + var priority = { o: -1, q: 0, s: 0 }; + for (var i = 0; i < accepted2.length; i++) { + var spec = specify(charset, accepted2[i], index); + if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) { + priority = spec; + } + } + return priority; + } + function specify(charset, spec, index) { + var s = 0; + if (spec.charset.toLowerCase() === charset.toLowerCase()) { + s |= 1; + } else if (spec.charset !== "*") { + return null; + } + return { + i: index, + o: spec.i, + q: spec.q, + s + }; + } + function preferredCharsets(accept, provided) { + var accepts = parseAcceptCharset(accept === void 0 ? "*" : accept || ""); + if (!provided) { + return accepts.filter(isQuality).sort(compareSpecs).map(getFullCharset); + } + var priorities = provided.map(function getPriority(type2, index) { + return getCharsetPriority(type2, accepts, index); + }); + return priorities.filter(isQuality).sort(compareSpecs).map(function getCharset(priority) { + return provided[priorities.indexOf(priority)]; + }); + } + function compareSpecs(a, b) { + return b.q - a.q || b.s - a.s || a.o - b.o || a.i - b.i || 0; + } + function getFullCharset(spec) { + return spec.charset; + } + function isQuality(spec) { + return spec.q > 0; + } + } +}); + +// ../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/encoding.js +var require_encoding = __commonJS({ + "../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/encoding.js"(exports2, module2) { + "use strict"; + module2.exports = preferredEncodings; + module2.exports.preferredEncodings = preferredEncodings; + var simpleEncodingRegExp = /^\s*([^\s;]+)\s*(?:;(.*))?$/; + function parseAcceptEncoding(accept) { + var accepts = accept.split(","); + var hasIdentity = false; + var minQuality = 1; + for (var i = 0, j = 0; i < accepts.length; i++) { + var encoding = parseEncoding(accepts[i].trim(), i); + if (encoding) { + accepts[j++] = encoding; + hasIdentity = hasIdentity || specify("identity", encoding); + minQuality = Math.min(minQuality, encoding.q || 1); + } + } + if (!hasIdentity) { + accepts[j++] = { + encoding: "identity", + q: minQuality, + i + }; + } + accepts.length = j; + return accepts; + } + function parseEncoding(str, i) { + var match2 = simpleEncodingRegExp.exec(str); + if (!match2) + return null; + var encoding = match2[1]; + var q = 1; + if (match2[2]) { + var params = match2[2].split(";"); + for (var j = 0; j < params.length; j++) { + var p = params[j].trim().split("="); + if (p[0] === "q") { + q = parseFloat(p[1]); + break; + } + } + } + return { + encoding, + q, + i + }; + } + function getEncodingPriority(encoding, accepted2, index) { + var priority = { o: -1, q: 0, s: 0 }; + for (var i = 0; i < accepted2.length; i++) { + var spec = specify(encoding, accepted2[i], index); + if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) { + priority = spec; + } + } + return priority; + } + function specify(encoding, spec, index) { + var s = 0; + if (spec.encoding.toLowerCase() === encoding.toLowerCase()) { + s |= 1; + } else if (spec.encoding !== "*") { + return null; + } + return { + i: index, + o: spec.i, + q: spec.q, + s + }; + } + function preferredEncodings(accept, provided) { + var accepts = parseAcceptEncoding(accept || ""); + if (!provided) { + return accepts.filter(isQuality).sort(compareSpecs).map(getFullEncoding); + } + var priorities = provided.map(function getPriority(type2, index) { + return getEncodingPriority(type2, accepts, index); + }); + return priorities.filter(isQuality).sort(compareSpecs).map(function getEncoding(priority) { + return provided[priorities.indexOf(priority)]; + }); + } + function compareSpecs(a, b) { + return b.q - a.q || b.s - a.s || a.o - b.o || a.i - b.i || 0; + } + function getFullEncoding(spec) { + return spec.encoding; + } + function isQuality(spec) { + return spec.q > 0; + } + } +}); + +// ../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/language.js +var require_language = __commonJS({ + "../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/language.js"(exports2, module2) { + "use strict"; + module2.exports = preferredLanguages; + module2.exports.preferredLanguages = preferredLanguages; + var simpleLanguageRegExp = /^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/; + function parseAcceptLanguage(accept) { + var accepts = accept.split(","); + for (var i = 0, j = 0; i < accepts.length; i++) { + var language = parseLanguage(accepts[i].trim(), i); + if (language) { + accepts[j++] = language; + } + } + accepts.length = j; + return accepts; + } + function parseLanguage(str, i) { + var match2 = simpleLanguageRegExp.exec(str); + if (!match2) + return null; + var prefix = match2[1]; + var suffix = match2[2]; + var full = prefix; + if (suffix) + full += "-" + suffix; + var q = 1; + if (match2[3]) { + var params = match2[3].split(";"); + for (var j = 0; j < params.length; j++) { + var p = params[j].split("="); + if (p[0] === "q") + q = parseFloat(p[1]); + } + } + return { + prefix, + suffix, + q, + i, + full + }; + } + function getLanguagePriority(language, accepted2, index) { + var priority = { o: -1, q: 0, s: 0 }; + for (var i = 0; i < accepted2.length; i++) { + var spec = specify(language, accepted2[i], index); + if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) { + priority = spec; + } + } + return priority; + } + function specify(language, spec, index) { + var p = parseLanguage(language); + if (!p) + return null; + var s = 0; + if (spec.full.toLowerCase() === p.full.toLowerCase()) { + s |= 4; + } else if (spec.prefix.toLowerCase() === p.full.toLowerCase()) { + s |= 2; + } else if (spec.full.toLowerCase() === p.prefix.toLowerCase()) { + s |= 1; + } else if (spec.full !== "*") { + return null; + } + return { + i: index, + o: spec.i, + q: spec.q, + s + }; + } + function preferredLanguages(accept, provided) { + var accepts = parseAcceptLanguage(accept === void 0 ? "*" : accept || ""); + if (!provided) { + return accepts.filter(isQuality).sort(compareSpecs).map(getFullLanguage); + } + var priorities = provided.map(function getPriority(type2, index) { + return getLanguagePriority(type2, accepts, index); + }); + return priorities.filter(isQuality).sort(compareSpecs).map(function getLanguage(priority) { + return provided[priorities.indexOf(priority)]; + }); + } + function compareSpecs(a, b) { + return b.q - a.q || b.s - a.s || a.o - b.o || a.i - b.i || 0; + } + function getFullLanguage(spec) { + return spec.full; + } + function isQuality(spec) { + return spec.q > 0; + } + } +}); + +// ../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/mediaType.js +var require_mediaType = __commonJS({ + "../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/mediaType.js"(exports2, module2) { + "use strict"; + module2.exports = preferredMediaTypes; + module2.exports.preferredMediaTypes = preferredMediaTypes; + var simpleMediaTypeRegExp = /^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/; + function parseAccept(accept) { + var accepts = splitMediaTypes(accept); + for (var i = 0, j = 0; i < accepts.length; i++) { + var mediaType = parseMediaType(accepts[i].trim(), i); + if (mediaType) { + accepts[j++] = mediaType; + } + } + accepts.length = j; + return accepts; + } + function parseMediaType(str, i) { + var match2 = simpleMediaTypeRegExp.exec(str); + if (!match2) + return null; + var params = /* @__PURE__ */ Object.create(null); + var q = 1; + var subtype = match2[2]; + var type2 = match2[1]; + if (match2[3]) { + var kvps = splitParameters(match2[3]).map(splitKeyValuePair); + for (var j = 0; j < kvps.length; j++) { + var pair = kvps[j]; + var key = pair[0].toLowerCase(); + var val = pair[1]; + var value = val && val[0] === '"' && val[val.length - 1] === '"' ? val.substr(1, val.length - 2) : val; + if (key === "q") { + q = parseFloat(value); + break; + } + params[key] = value; + } + } + return { + type: type2, + subtype, + params, + q, + i + }; + } + function getMediaTypePriority(type2, accepted2, index) { + var priority = { o: -1, q: 0, s: 0 }; + for (var i = 0; i < accepted2.length; i++) { + var spec = specify(type2, accepted2[i], index); + if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) { + priority = spec; + } + } + return priority; + } + function specify(type2, spec, index) { + var p = parseMediaType(type2); + var s = 0; + if (!p) { + return null; + } + if (spec.type.toLowerCase() == p.type.toLowerCase()) { + s |= 4; + } else if (spec.type != "*") { + return null; + } + if (spec.subtype.toLowerCase() == p.subtype.toLowerCase()) { + s |= 2; + } else if (spec.subtype != "*") { + return null; + } + var keys = Object.keys(spec.params); + if (keys.length > 0) { + if (keys.every(function(k) { + return spec.params[k] == "*" || (spec.params[k] || "").toLowerCase() == (p.params[k] || "").toLowerCase(); + })) { + s |= 1; + } else { + return null; + } + } + return { + i: index, + o: spec.i, + q: spec.q, + s + }; + } + function preferredMediaTypes(accept, provided) { + var accepts = parseAccept(accept === void 0 ? "*/*" : accept || ""); + if (!provided) { + return accepts.filter(isQuality).sort(compareSpecs).map(getFullType); + } + var priorities = provided.map(function getPriority(type2, index) { + return getMediaTypePriority(type2, accepts, index); + }); + return priorities.filter(isQuality).sort(compareSpecs).map(function getType(priority) { + return provided[priorities.indexOf(priority)]; + }); + } + function compareSpecs(a, b) { + return b.q - a.q || b.s - a.s || a.o - b.o || a.i - b.i || 0; + } + function getFullType(spec) { + return spec.type + "/" + spec.subtype; + } + function isQuality(spec) { + return spec.q > 0; + } + function quoteCount(string) { + var count = 0; + var index = 0; + while ((index = string.indexOf('"', index)) !== -1) { + count++; + index++; + } + return count; + } + function splitKeyValuePair(str) { + var index = str.indexOf("="); + var key; + var val; + if (index === -1) { + key = str; + } else { + key = str.substr(0, index); + val = str.substr(index + 1); + } + return [key, val]; + } + function splitMediaTypes(accept) { + var accepts = accept.split(","); + for (var i = 1, j = 0; i < accepts.length; i++) { + if (quoteCount(accepts[j]) % 2 == 0) { + accepts[++j] = accepts[i]; + } else { + accepts[j] += "," + accepts[i]; + } + } + accepts.length = j + 1; + return accepts; + } + function splitParameters(str) { + var parameters = str.split(";"); + for (var i = 1, j = 0; i < parameters.length; i++) { + if (quoteCount(parameters[j]) % 2 == 0) { + parameters[++j] = parameters[i]; + } else { + parameters[j] += ";" + parameters[i]; + } + } + parameters.length = j + 1; + for (var i = 0; i < parameters.length; i++) { + parameters[i] = parameters[i].trim(); + } + return parameters; + } + } +}); + +// ../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/index.js +var require_negotiator = __commonJS({ + "../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/index.js"(exports2, module2) { + "use strict"; + var preferredCharsets = require_charset(); + var preferredEncodings = require_encoding(); + var preferredLanguages = require_language(); + var preferredMediaTypes = require_mediaType(); + module2.exports = Negotiator; + module2.exports.Negotiator = Negotiator; + function Negotiator(request) { + if (!(this instanceof Negotiator)) { + return new Negotiator(request); + } + this.request = request; + } + Negotiator.prototype.charset = function charset(available) { + var set = this.charsets(available); + return set && set[0]; + }; + Negotiator.prototype.charsets = function charsets(available) { + return preferredCharsets(this.request.headers["accept-charset"], available); + }; + Negotiator.prototype.encoding = function encoding(available) { + var set = this.encodings(available); + return set && set[0]; + }; + Negotiator.prototype.encodings = function encodings(available) { + return preferredEncodings(this.request.headers["accept-encoding"], available); + }; + Negotiator.prototype.language = function language(available) { + var set = this.languages(available); + return set && set[0]; + }; + Negotiator.prototype.languages = function languages3(available) { + return preferredLanguages(this.request.headers["accept-language"], available); + }; + Negotiator.prototype.mediaType = function mediaType(available) { + var set = this.mediaTypes(available); + return set && set[0]; + }; + Negotiator.prototype.mediaTypes = function mediaTypes(available) { + return preferredMediaTypes(this.request.headers.accept, available); + }; + Negotiator.prototype.preferredCharset = Negotiator.prototype.charset; + Negotiator.prototype.preferredCharsets = Negotiator.prototype.charsets; + Negotiator.prototype.preferredEncoding = Negotiator.prototype.encoding; + Negotiator.prototype.preferredEncodings = Negotiator.prototype.encodings; + Negotiator.prototype.preferredLanguage = Negotiator.prototype.language; + Negotiator.prototype.preferredLanguages = Negotiator.prototype.languages; + Negotiator.prototype.preferredMediaType = Negotiator.prototype.mediaType; + Negotiator.prototype.preferredMediaTypes = Negotiator.prototype.mediaTypes; + } +}); + +// ../node_modules/.pnpm/accepts@1.3.8/node_modules/accepts/index.js +var require_accepts = __commonJS({ + "../node_modules/.pnpm/accepts@1.3.8/node_modules/accepts/index.js"(exports2, module2) { + "use strict"; + var Negotiator = require_negotiator(); + var mime = require_mime_types(); + module2.exports = Accepts; + function Accepts(req) { + if (!(this instanceof Accepts)) { + return new Accepts(req); + } + this.headers = req.headers; + this.negotiator = new Negotiator(req); + } + Accepts.prototype.type = Accepts.prototype.types = function(types_) { + var types2 = types_; + if (types2 && !Array.isArray(types2)) { + types2 = new Array(arguments.length); + for (var i = 0; i < types2.length; i++) { + types2[i] = arguments[i]; + } + } + if (!types2 || types2.length === 0) { + return this.negotiator.mediaTypes(); + } + if (!this.headers.accept) { + return types2[0]; + } + var mimes = types2.map(extToMime); + var accepts = this.negotiator.mediaTypes(mimes.filter(validMime)); + var first = accepts[0]; + return first ? types2[mimes.indexOf(first)] : false; + }; + Accepts.prototype.encoding = Accepts.prototype.encodings = function(encodings_) { + var encodings = encodings_; + if (encodings && !Array.isArray(encodings)) { + encodings = new Array(arguments.length); + for (var i = 0; i < encodings.length; i++) { + encodings[i] = arguments[i]; + } + } + if (!encodings || encodings.length === 0) { + return this.negotiator.encodings(); + } + return this.negotiator.encodings(encodings)[0] || false; + }; + Accepts.prototype.charset = Accepts.prototype.charsets = function(charsets_) { + var charsets = charsets_; + if (charsets && !Array.isArray(charsets)) { + charsets = new Array(arguments.length); + for (var i = 0; i < charsets.length; i++) { + charsets[i] = arguments[i]; + } + } + if (!charsets || charsets.length === 0) { + return this.negotiator.charsets(); + } + return this.negotiator.charsets(charsets)[0] || false; + }; + Accepts.prototype.lang = Accepts.prototype.langs = Accepts.prototype.language = Accepts.prototype.languages = function(languages_) { + var languages3 = languages_; + if (languages3 && !Array.isArray(languages3)) { + languages3 = new Array(arguments.length); + for (var i = 0; i < languages3.length; i++) { + languages3[i] = arguments[i]; + } + } + if (!languages3 || languages3.length === 0) { + return this.negotiator.languages(); + } + return this.negotiator.languages(languages3)[0] || false; + }; + function extToMime(type2) { + return type2.indexOf("/") === -1 ? mime.lookup(type2) : type2; + } + function validMime(type2) { + return typeof type2 === "string"; + } + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/request.js +var require_request2 = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/request.js"(exports2, module2) { + "use strict"; + var accepts = require_accepts(); + var deprecate = require_depd()("express"); + var isIP = require("net").isIP; + var typeis = require_type_is(); + var http4 = require("http"); + var fresh = require_fresh(); + var parseRange = require_range_parser(); + var parse7 = require_parseurl(); + var proxyaddr = require_proxy_addr(); + var req = Object.create(http4.IncomingMessage.prototype); + module2.exports = req; + req.get = req.header = function header(name) { + if (!name) { + throw new TypeError("name argument is required to req.get"); + } + if (typeof name !== "string") { + throw new TypeError("name must be a string to req.get"); + } + var lc = name.toLowerCase(); + switch (lc) { + case "referer": + case "referrer": + return this.headers.referrer || this.headers.referer; + default: + return this.headers[lc]; + } + }; + req.accepts = function() { + var accept = accepts(this); + return accept.types.apply(accept, arguments); + }; + req.acceptsEncodings = function() { + var accept = accepts(this); + return accept.encodings.apply(accept, arguments); + }; + req.acceptsEncoding = deprecate.function( + req.acceptsEncodings, + "req.acceptsEncoding: Use acceptsEncodings instead" + ); + req.acceptsCharsets = function() { + var accept = accepts(this); + return accept.charsets.apply(accept, arguments); + }; + req.acceptsCharset = deprecate.function( + req.acceptsCharsets, + "req.acceptsCharset: Use acceptsCharsets instead" + ); + req.acceptsLanguages = function() { + var accept = accepts(this); + return accept.languages.apply(accept, arguments); + }; + req.acceptsLanguage = deprecate.function( + req.acceptsLanguages, + "req.acceptsLanguage: Use acceptsLanguages instead" + ); + req.range = function range(size, options2) { + var range2 = this.get("Range"); + if (!range2) + return; + return parseRange(size, range2, options2); + }; + req.param = function param(name, defaultValue) { + var params = this.params || {}; + var body2 = this.body || {}; + var query = this.query || {}; + var args3 = arguments.length === 1 ? "name" : "name, default"; + deprecate("req.param(" + args3 + "): Use req.params, req.body, or req.query instead"); + if (null != params[name] && params.hasOwnProperty(name)) + return params[name]; + if (null != body2[name]) + return body2[name]; + if (null != query[name]) + return query[name]; + return defaultValue; + }; + req.is = function is(types2) { + var arr = types2; + if (!Array.isArray(types2)) { + arr = new Array(arguments.length); + for (var i = 0; i < arr.length; i++) { + arr[i] = arguments[i]; + } + } + return typeis(this, arr); + }; + defineGetter(req, "protocol", function protocol2() { + var proto = this.connection.encrypted ? "https" : "http"; + var trust = this.app.get("trust proxy fn"); + if (!trust(this.connection.remoteAddress, 0)) { + return proto; + } + var header = this.get("X-Forwarded-Proto") || proto; + var index = header.indexOf(","); + return index !== -1 ? header.substring(0, index).trim() : header.trim(); + }); + defineGetter(req, "secure", function secure() { + return this.protocol === "https"; + }); + defineGetter(req, "ip", function ip() { + var trust = this.app.get("trust proxy fn"); + return proxyaddr(this, trust); + }); + defineGetter(req, "ips", function ips() { + var trust = this.app.get("trust proxy fn"); + var addrs = proxyaddr.all(this, trust); + addrs.reverse().pop(); + return addrs; + }); + defineGetter(req, "subdomains", function subdomains() { + var hostname = this.hostname; + if (!hostname) + return []; + var offset = this.app.get("subdomain offset"); + var subdomains2 = !isIP(hostname) ? hostname.split(".").reverse() : [hostname]; + return subdomains2.slice(offset); + }); + defineGetter(req, "path", function path30() { + return parse7(this).pathname; + }); + defineGetter(req, "hostname", function hostname() { + var trust = this.app.get("trust proxy fn"); + var host = this.get("X-Forwarded-Host"); + if (!host || !trust(this.connection.remoteAddress, 0)) { + host = this.get("Host"); + } else if (host.indexOf(",") !== -1) { + host = host.substring(0, host.indexOf(",")).trimRight(); + } + if (!host) + return; + var offset = host[0] === "[" ? host.indexOf("]") + 1 : 0; + var index = host.indexOf(":", offset); + return index !== -1 ? host.substring(0, index) : host; + }); + defineGetter(req, "host", deprecate.function(function host() { + return this.hostname; + }, "req.host: Use req.hostname instead")); + defineGetter(req, "fresh", function() { + var method = this.method; + var res = this.res; + var status = res.statusCode; + if ("GET" !== method && "HEAD" !== method) + return false; + if (status >= 200 && status < 300 || 304 === status) { + return fresh(this.headers, { + "etag": res.get("ETag"), + "last-modified": res.get("Last-Modified") + }); + } + return false; + }); + defineGetter(req, "stale", function stale() { + return !this.fresh; + }); + defineGetter(req, "xhr", function xhr() { + var val = this.get("X-Requested-With") || ""; + return val.toLowerCase() === "xmlhttprequest"; + }); + function defineGetter(obj2, name, getter) { + Object.defineProperty(obj2, name, { + configurable: true, + enumerable: true, + get: getter + }); + } + } +}); + +// ../node_modules/.pnpm/cookie-signature@1.0.6/node_modules/cookie-signature/index.js +var require_cookie_signature = __commonJS({ + "../node_modules/.pnpm/cookie-signature@1.0.6/node_modules/cookie-signature/index.js"(exports2) { + var crypto3 = require("crypto"); + exports2.sign = function(val, secret) { + if ("string" != typeof val) + throw new TypeError("Cookie value must be provided as a string."); + if ("string" != typeof secret) + throw new TypeError("Secret string must be provided."); + return val + "." + crypto3.createHmac("sha256", secret).update(val).digest("base64").replace(/\=+$/, ""); + }; + exports2.unsign = function(val, secret) { + if ("string" != typeof val) + throw new TypeError("Signed cookie string must be provided."); + if ("string" != typeof secret) + throw new TypeError("Secret string must be provided."); + var str = val.slice(0, val.lastIndexOf(".")), mac = exports2.sign(str, secret); + return sha1(mac) == sha1(val) ? str : false; + }; + function sha1(str) { + return crypto3.createHash("sha1").update(str).digest("hex"); + } + } +}); + +// ../node_modules/.pnpm/cookie@0.5.0/node_modules/cookie/index.js +var require_cookie2 = __commonJS({ + "../node_modules/.pnpm/cookie@0.5.0/node_modules/cookie/index.js"(exports2) { + "use strict"; + exports2.parse = parse7; + exports2.serialize = serialize; + var __toString = Object.prototype.toString; + var fieldContentRegExp = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/; + function parse7(str, options2) { + if (typeof str !== "string") { + throw new TypeError("argument str must be a string"); + } + var obj2 = {}; + var opt = options2 || {}; + var dec = opt.decode || decode; + var index = 0; + while (index < str.length) { + var eqIdx = str.indexOf("=", index); + if (eqIdx === -1) { + break; + } + var endIdx = str.indexOf(";", index); + if (endIdx === -1) { + endIdx = str.length; + } else if (endIdx < eqIdx) { + index = str.lastIndexOf(";", eqIdx - 1) + 1; + continue; + } + var key = str.slice(index, eqIdx).trim(); + if (void 0 === obj2[key]) { + var val = str.slice(eqIdx + 1, endIdx).trim(); + if (val.charCodeAt(0) === 34) { + val = val.slice(1, -1); + } + obj2[key] = tryDecode(val, dec); + } + index = endIdx + 1; + } + return obj2; + } + function serialize(name, val, options2) { + var opt = options2 || {}; + var enc = opt.encode || encode3; + if (typeof enc !== "function") { + throw new TypeError("option encode is invalid"); + } + if (!fieldContentRegExp.test(name)) { + throw new TypeError("argument name is invalid"); + } + var value = enc(val); + if (value && !fieldContentRegExp.test(value)) { + throw new TypeError("argument val is invalid"); + } + var str = name + "=" + value; + if (null != opt.maxAge) { + var maxAge = opt.maxAge - 0; + if (isNaN(maxAge) || !isFinite(maxAge)) { + throw new TypeError("option maxAge is invalid"); + } + str += "; Max-Age=" + Math.floor(maxAge); + } + if (opt.domain) { + if (!fieldContentRegExp.test(opt.domain)) { + throw new TypeError("option domain is invalid"); + } + str += "; Domain=" + opt.domain; + } + if (opt.path) { + if (!fieldContentRegExp.test(opt.path)) { + throw new TypeError("option path is invalid"); + } + str += "; Path=" + opt.path; + } + if (opt.expires) { + var expires = opt.expires; + if (!isDate2(expires) || isNaN(expires.valueOf())) { + throw new TypeError("option expires is invalid"); + } + str += "; Expires=" + expires.toUTCString(); + } + if (opt.httpOnly) { + str += "; HttpOnly"; + } + if (opt.secure) { + str += "; Secure"; + } + if (opt.priority) { + var priority = typeof opt.priority === "string" ? opt.priority.toLowerCase() : opt.priority; + switch (priority) { + case "low": + str += "; Priority=Low"; + break; + case "medium": + str += "; Priority=Medium"; + break; + case "high": + str += "; Priority=High"; + break; + default: + throw new TypeError("option priority is invalid"); + } + } + if (opt.sameSite) { + var sameSite = typeof opt.sameSite === "string" ? opt.sameSite.toLowerCase() : opt.sameSite; + switch (sameSite) { + case true: + str += "; SameSite=Strict"; + break; + case "lax": + str += "; SameSite=Lax"; + break; + case "strict": + str += "; SameSite=Strict"; + break; + case "none": + str += "; SameSite=None"; + break; + default: + throw new TypeError("option sameSite is invalid"); + } + } + return str; + } + function decode(str) { + return str.indexOf("%") !== -1 ? decodeURIComponent(str) : str; + } + function encode3(val) { + return encodeURIComponent(val); + } + function isDate2(val) { + return __toString.call(val) === "[object Date]" || val instanceof Date; + } + function tryDecode(str, decode2) { + try { + return decode2(str); + } catch (e) { + return str; + } + } + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/response.js +var require_response = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/response.js"(exports2, module2) { + "use strict"; + var Buffer2 = require_safe_buffer2().Buffer; + var contentDisposition = require_content_disposition(); + var createError = require_http_errors(); + var deprecate = require_depd()("express"); + var encodeUrl = require_encodeurl(); + var escapeHtml = require_escape_html(); + var http4 = require("http"); + var isAbsolute = require_utils21().isAbsolute; + var onFinished = require_on_finished2(); + var path30 = require("path"); + var statuses = require_statuses(); + var merge3 = require_utils_merge(); + var sign = require_cookie_signature().sign; + var normalizeType = require_utils21().normalizeType; + var normalizeTypes = require_utils21().normalizeTypes; + var setCharset = require_utils21().setCharset; + var cookie = require_cookie2(); + var send = require_send(); + var extname2 = path30.extname; + var mime = send.mime; + var resolve8 = path30.resolve; + var vary = require_vary(); + var res = Object.create(http4.ServerResponse.prototype); + module2.exports = res; + var charsetRegExp = /;\s*charset\s*=/; + res.status = function status(code) { + if ((typeof code === "string" || Math.floor(code) !== code) && code > 99 && code < 1e3) { + deprecate("res.status(" + JSON.stringify(code) + "): use res.status(" + Math.floor(code) + ") instead"); + } + this.statusCode = code; + return this; + }; + res.links = function(links) { + var link = this.get("Link") || ""; + if (link) + link += ", "; + return this.set("Link", link + Object.keys(links).map(function(rel) { + return "<" + links[rel] + '>; rel="' + rel + '"'; + }).join(", ")); + }; + res.send = function send2(body2) { + var chunk = body2; + var encoding; + var req = this.req; + var type2; + var app = this.app; + if (arguments.length === 2) { + if (typeof arguments[0] !== "number" && typeof arguments[1] === "number") { + deprecate("res.send(body, status): Use res.status(status).send(body) instead"); + this.statusCode = arguments[1]; + } else { + deprecate("res.send(status, body): Use res.status(status).send(body) instead"); + this.statusCode = arguments[0]; + chunk = arguments[1]; + } + } + if (typeof chunk === "number" && arguments.length === 1) { + if (!this.get("Content-Type")) { + this.type("txt"); + } + deprecate("res.send(status): Use res.sendStatus(status) instead"); + this.statusCode = chunk; + chunk = statuses.message[chunk]; + } + switch (typeof chunk) { + case "string": + if (!this.get("Content-Type")) { + this.type("html"); + } + break; + case "boolean": + case "number": + case "object": + if (chunk === null) { + chunk = ""; + } else if (Buffer2.isBuffer(chunk)) { + if (!this.get("Content-Type")) { + this.type("bin"); + } + } else { + return this.json(chunk); + } + break; + } + if (typeof chunk === "string") { + encoding = "utf8"; + type2 = this.get("Content-Type"); + if (typeof type2 === "string") { + this.set("Content-Type", setCharset(type2, "utf-8")); + } + } + var etagFn = app.get("etag fn"); + var generateETag = !this.get("ETag") && typeof etagFn === "function"; + var len; + if (chunk !== void 0) { + if (Buffer2.isBuffer(chunk)) { + len = chunk.length; + } else if (!generateETag && chunk.length < 1e3) { + len = Buffer2.byteLength(chunk, encoding); + } else { + chunk = Buffer2.from(chunk, encoding); + encoding = void 0; + len = chunk.length; + } + this.set("Content-Length", len); + } + var etag; + if (generateETag && len !== void 0) { + if (etag = etagFn(chunk, encoding)) { + this.set("ETag", etag); + } + } + if (req.fresh) + this.statusCode = 304; + if (204 === this.statusCode || 304 === this.statusCode) { + this.removeHeader("Content-Type"); + this.removeHeader("Content-Length"); + this.removeHeader("Transfer-Encoding"); + chunk = ""; + } + if (this.statusCode === 205) { + this.set("Content-Length", "0"); + this.removeHeader("Transfer-Encoding"); + chunk = ""; + } + if (req.method === "HEAD") { + this.end(); + } else { + this.end(chunk, encoding); + } + return this; + }; + res.json = function json(obj2) { + var val = obj2; + if (arguments.length === 2) { + if (typeof arguments[1] === "number") { + deprecate("res.json(obj, status): Use res.status(status).json(obj) instead"); + this.statusCode = arguments[1]; + } else { + deprecate("res.json(status, obj): Use res.status(status).json(obj) instead"); + this.statusCode = arguments[0]; + val = arguments[1]; + } + } + var app = this.app; + var escape4 = app.get("json escape"); + var replacer = app.get("json replacer"); + var spaces = app.get("json spaces"); + var body2 = stringify(val, replacer, spaces, escape4); + if (!this.get("Content-Type")) { + this.set("Content-Type", "application/json"); + } + return this.send(body2); + }; + res.jsonp = function jsonp(obj2) { + var val = obj2; + if (arguments.length === 2) { + if (typeof arguments[1] === "number") { + deprecate("res.jsonp(obj, status): Use res.status(status).jsonp(obj) instead"); + this.statusCode = arguments[1]; + } else { + deprecate("res.jsonp(status, obj): Use res.status(status).jsonp(obj) instead"); + this.statusCode = arguments[0]; + val = arguments[1]; + } + } + var app = this.app; + var escape4 = app.get("json escape"); + var replacer = app.get("json replacer"); + var spaces = app.get("json spaces"); + var body2 = stringify(val, replacer, spaces, escape4); + var callback = this.req.query[app.get("jsonp callback name")]; + if (!this.get("Content-Type")) { + this.set("X-Content-Type-Options", "nosniff"); + this.set("Content-Type", "application/json"); + } + if (Array.isArray(callback)) { + callback = callback[0]; + } + if (typeof callback === "string" && callback.length !== 0) { + this.set("X-Content-Type-Options", "nosniff"); + this.set("Content-Type", "text/javascript"); + callback = callback.replace(/[^\[\]\w$.]/g, ""); + if (body2 === void 0) { + body2 = ""; + } else if (typeof body2 === "string") { + body2 = body2.replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029"); + } + body2 = "/**/ typeof " + callback + " === 'function' && " + callback + "(" + body2 + ");"; + } + return this.send(body2); + }; + res.sendStatus = function sendStatus(statusCode) { + var body2 = statuses.message[statusCode] || String(statusCode); + this.statusCode = statusCode; + this.type("txt"); + return this.send(body2); + }; + res.sendFile = function sendFile(path31, options2, callback) { + var done = callback; + var req = this.req; + var res2 = this; + var next = req.next; + var opts = options2 || {}; + if (!path31) { + throw new TypeError("path argument is required to res.sendFile"); + } + if (typeof path31 !== "string") { + throw new TypeError("path must be a string to res.sendFile"); + } + if (typeof options2 === "function") { + done = options2; + opts = {}; + } + if (!opts.root && !isAbsolute(path31)) { + throw new TypeError("path must be absolute or specify root to res.sendFile"); + } + var pathname = encodeURI(path31); + var file = send(req, pathname, opts); + sendfile(res2, file, opts, function(err2) { + if (done) + return done(err2); + if (err2 && err2.code === "EISDIR") + return next(); + if (err2 && err2.code !== "ECONNABORTED" && err2.syscall !== "write") { + next(err2); + } + }); + }; + res.sendfile = function(path31, options2, callback) { + var done = callback; + var req = this.req; + var res2 = this; + var next = req.next; + var opts = options2 || {}; + if (typeof options2 === "function") { + done = options2; + opts = {}; + } + var file = send(req, path31, opts); + sendfile(res2, file, opts, function(err2) { + if (done) + return done(err2); + if (err2 && err2.code === "EISDIR") + return next(); + if (err2 && err2.code !== "ECONNABORTED" && err2.syscall !== "write") { + next(err2); + } + }); + }; + res.sendfile = deprecate.function( + res.sendfile, + "res.sendfile: Use res.sendFile instead" + ); + res.download = function download(path31, filename, options2, callback) { + var done = callback; + var name = filename; + var opts = options2 || null; + if (typeof filename === "function") { + done = filename; + name = null; + opts = null; + } else if (typeof options2 === "function") { + done = options2; + opts = null; + } + if (typeof filename === "object" && (typeof options2 === "function" || options2 === void 0)) { + name = null; + opts = filename; + } + var headers = { + "Content-Disposition": contentDisposition(name || path31) + }; + if (opts && opts.headers) { + var keys = Object.keys(opts.headers); + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + if (key.toLowerCase() !== "content-disposition") { + headers[key] = opts.headers[key]; + } + } + } + opts = Object.create(opts); + opts.headers = headers; + var fullPath = !opts.root ? resolve8(path31) : path31; + return this.sendFile(fullPath, opts, done); + }; + res.contentType = res.type = function contentType(type2) { + var ct = type2.indexOf("/") === -1 ? mime.lookup(type2) : type2; + return this.set("Content-Type", ct); + }; + res.format = function(obj2) { + var req = this.req; + var next = req.next; + var keys = Object.keys(obj2).filter(function(v) { + return v !== "default"; + }); + var key = keys.length > 0 ? req.accepts(keys) : false; + this.vary("Accept"); + if (key) { + this.set("Content-Type", normalizeType(key).value); + obj2[key](req, this, next); + } else if (obj2.default) { + obj2.default(req, this, next); + } else { + next(createError(406, { + types: normalizeTypes(keys).map(function(o) { + return o.value; + }) + })); + } + return this; + }; + res.attachment = function attachment(filename) { + if (filename) { + this.type(extname2(filename)); + } + this.set("Content-Disposition", contentDisposition(filename)); + return this; + }; + res.append = function append2(field, val) { + var prev = this.get(field); + var value = val; + if (prev) { + value = Array.isArray(prev) ? prev.concat(val) : Array.isArray(val) ? [prev].concat(val) : [prev, val]; + } + return this.set(field, value); + }; + res.set = res.header = function header(field, val) { + if (arguments.length === 2) { + var value = Array.isArray(val) ? val.map(String) : String(val); + if (field.toLowerCase() === "content-type") { + if (Array.isArray(value)) { + throw new TypeError("Content-Type cannot be set to an Array"); + } + if (!charsetRegExp.test(value)) { + var charset = mime.charsets.lookup(value.split(";")[0]); + if (charset) + value += "; charset=" + charset.toLowerCase(); + } + } + this.setHeader(field, value); + } else { + for (var key in field) { + this.set(key, field[key]); + } + } + return this; + }; + res.get = function(field) { + return this.getHeader(field); + }; + res.clearCookie = function clearCookie(name, options2) { + var opts = merge3({ expires: /* @__PURE__ */ new Date(1), path: "/" }, options2); + return this.cookie(name, "", opts); + }; + res.cookie = function(name, value, options2) { + var opts = merge3({}, options2); + var secret = this.req.secret; + var signed = opts.signed; + if (signed && !secret) { + throw new Error('cookieParser("secret") required for signed cookies'); + } + var val = typeof value === "object" ? "j:" + JSON.stringify(value) : String(value); + if (signed) { + val = "s:" + sign(val, secret); + } + if (opts.maxAge != null) { + var maxAge = opts.maxAge - 0; + if (!isNaN(maxAge)) { + opts.expires = new Date(Date.now() + maxAge); + opts.maxAge = Math.floor(maxAge / 1e3); + } + } + if (opts.path == null) { + opts.path = "/"; + } + this.append("Set-Cookie", cookie.serialize(name, String(val), opts)); + return this; + }; + res.location = function location(url2) { + var loc = url2; + if (url2 === "back") { + loc = this.req.get("Referrer") || "/"; + } + return this.set("Location", encodeUrl(loc)); + }; + res.redirect = function redirect(url2) { + var address = url2; + var body2; + var status = 302; + if (arguments.length === 2) { + if (typeof arguments[0] === "number") { + status = arguments[0]; + address = arguments[1]; + } else { + deprecate("res.redirect(url, status): Use res.redirect(status, url) instead"); + status = arguments[1]; + } + } + address = this.location(address).get("Location"); + this.format({ + text: function() { + body2 = statuses.message[status] + ". Redirecting to " + address; + }, + html: function() { + var u = escapeHtml(address); + body2 = "

" + statuses.message[status] + '. Redirecting to ' + u + "

"; + }, + default: function() { + body2 = ""; + } + }); + this.statusCode = status; + this.set("Content-Length", Buffer2.byteLength(body2)); + if (this.req.method === "HEAD") { + this.end(); + } else { + this.end(body2); + } + }; + res.vary = function(field) { + if (!field || Array.isArray(field) && !field.length) { + deprecate("res.vary(): Provide a field name"); + return this; + } + vary(this, field); + return this; + }; + res.render = function render(view, options2, callback) { + var app = this.req.app; + var done = callback; + var opts = options2 || {}; + var req = this.req; + var self2 = this; + if (typeof options2 === "function") { + done = options2; + opts = {}; + } + opts._locals = self2.locals; + done = done || function(err2, str) { + if (err2) + return req.next(err2); + self2.send(str); + }; + app.render(view, opts, done); + }; + function sendfile(res2, file, options2, callback) { + var done = false; + var streaming; + function onaborted() { + if (done) + return; + done = true; + var err2 = new Error("Request aborted"); + err2.code = "ECONNABORTED"; + callback(err2); + } + function ondirectory() { + if (done) + return; + done = true; + var err2 = new Error("EISDIR, read"); + err2.code = "EISDIR"; + callback(err2); + } + function onerror(err2) { + if (done) + return; + done = true; + callback(err2); + } + function onend() { + if (done) + return; + done = true; + callback(); + } + function onfile() { + streaming = false; + } + function onfinish(err2) { + if (err2 && err2.code === "ECONNRESET") + return onaborted(); + if (err2) + return onerror(err2); + if (done) + return; + setImmediate(function() { + if (streaming !== false && !done) { + onaborted(); + return; + } + if (done) + return; + done = true; + callback(); + }); + } + function onstream() { + streaming = true; + } + file.on("directory", ondirectory); + file.on("end", onend); + file.on("error", onerror); + file.on("file", onfile); + file.on("stream", onstream); + onFinished(res2, onfinish); + if (options2.headers) { + file.on("headers", function headers(res3) { + var obj2 = options2.headers; + var keys = Object.keys(obj2); + for (var i = 0; i < keys.length; i++) { + var k = keys[i]; + res3.setHeader(k, obj2[k]); + } + }); + } + file.pipe(res2); + } + function stringify(value, replacer, spaces, escape4) { + var json = replacer || spaces ? JSON.stringify(value, replacer, spaces) : JSON.stringify(value); + if (escape4 && typeof json === "string") { + json = json.replace(/[<>&]/g, function(c) { + switch (c.charCodeAt(0)) { + case 60: + return "\\u003c"; + case 62: + return "\\u003e"; + case 38: + return "\\u0026"; + default: + return c; + } + }); + } + return json; + } + } +}); + +// ../node_modules/.pnpm/serve-static@1.15.0/node_modules/serve-static/index.js +var require_serve_static = __commonJS({ + "../node_modules/.pnpm/serve-static@1.15.0/node_modules/serve-static/index.js"(exports2, module2) { + "use strict"; + var encodeUrl = require_encodeurl(); + var escapeHtml = require_escape_html(); + var parseUrl = require_parseurl(); + var resolve8 = require("path").resolve; + var send = require_send(); + var url2 = require("url"); + module2.exports = serveStatic; + module2.exports.mime = send.mime; + function serveStatic(root, options2) { + if (!root) { + throw new TypeError("root path required"); + } + if (typeof root !== "string") { + throw new TypeError("root path must be a string"); + } + var opts = Object.create(options2 || null); + var fallthrough = opts.fallthrough !== false; + var redirect = opts.redirect !== false; + var setHeaders = opts.setHeaders; + if (setHeaders && typeof setHeaders !== "function") { + throw new TypeError("option setHeaders must be function"); + } + opts.maxage = opts.maxage || opts.maxAge || 0; + opts.root = resolve8(root); + var onDirectory = redirect ? createRedirectDirectoryListener() : createNotFoundDirectoryListener(); + return function serveStatic2(req, res, next) { + if (req.method !== "GET" && req.method !== "HEAD") { + if (fallthrough) { + return next(); + } + res.statusCode = 405; + res.setHeader("Allow", "GET, HEAD"); + res.setHeader("Content-Length", "0"); + res.end(); + return; + } + var forwardError = !fallthrough; + var originalUrl = parseUrl.original(req); + var path30 = parseUrl(req).pathname; + if (path30 === "/" && originalUrl.pathname.substr(-1) !== "/") { + path30 = ""; + } + var stream5 = send(req, path30, opts); + stream5.on("directory", onDirectory); + if (setHeaders) { + stream5.on("headers", setHeaders); + } + if (fallthrough) { + stream5.on("file", function onFile() { + forwardError = true; + }); + } + stream5.on("error", function error(err2) { + if (forwardError || !(err2.statusCode < 500)) { + next(err2); + return; + } + next(); + }); + stream5.pipe(res); + }; + } + function collapseLeadingSlashes(str) { + for (var i = 0; i < str.length; i++) { + if (str.charCodeAt(i) !== 47) { + break; + } + } + return i > 1 ? "/" + str.substr(i) : str; + } + function createHtmlDocument(title, body2) { + return '\n\n\n\n' + title + "\n\n\n
" + body2 + "
\n\n\n"; + } + function createNotFoundDirectoryListener() { + return function notFound() { + this.error(404); + }; + } + function createRedirectDirectoryListener() { + return function redirect(res) { + if (this.hasTrailingSlash()) { + this.error(404); + return; + } + var originalUrl = parseUrl.original(this.req); + originalUrl.path = null; + originalUrl.pathname = collapseLeadingSlashes(originalUrl.pathname + "/"); + var loc = encodeUrl(url2.format(originalUrl)); + var doc = createHtmlDocument("Redirecting", 'Redirecting to ' + escapeHtml(loc) + ""); + res.statusCode = 301; + res.setHeader("Content-Type", "text/html; charset=UTF-8"); + res.setHeader("Content-Length", Buffer.byteLength(doc)); + res.setHeader("Content-Security-Policy", "default-src 'none'"); + res.setHeader("X-Content-Type-Options", "nosniff"); + res.setHeader("Location", loc); + res.end(doc); + }; + } + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/express.js +var require_express2 = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/lib/express.js"(exports2, module2) { + "use strict"; + var bodyParser = require_body_parser(); + var EventEmitter4 = require("events").EventEmitter; + var mixin = require_merge_descriptors(); + var proto = require_application(); + var Route = require_route(); + var Router = require_router2(); + var req = require_request2(); + var res = require_response(); + exports2 = module2.exports = createApplication; + function createApplication() { + var app = function(req2, res2, next) { + app.handle(req2, res2, next); + }; + mixin(app, EventEmitter4.prototype, false); + mixin(app, proto, false); + app.request = Object.create(req, { + app: { configurable: true, enumerable: true, writable: true, value: app } + }); + app.response = Object.create(res, { + app: { configurable: true, enumerable: true, writable: true, value: app } + }); + app.init(); + return app; + } + exports2.application = proto; + exports2.request = req; + exports2.response = res; + exports2.Route = Route; + exports2.Router = Router; + exports2.json = bodyParser.json; + exports2.query = require_query(); + exports2.raw = bodyParser.raw; + exports2.static = require_serve_static(); + exports2.text = bodyParser.text; + exports2.urlencoded = bodyParser.urlencoded; + var removedMiddlewares = [ + "bodyParser", + "compress", + "cookieSession", + "session", + "logger", + "cookieParser", + "favicon", + "responseTime", + "errorHandler", + "timeout", + "methodOverride", + "vhost", + "csrf", + "directory", + "limit", + "multipart", + "staticCache" + ]; + removedMiddlewares.forEach(function(name) { + Object.defineProperty(exports2, name, { + get: function() { + throw new Error("Most middleware (like " + name + ") is no longer bundled with Express and must be installed separately. Please see https://github.com/senchalabs/connect#middleware."); + }, + configurable: true + }); + }); + } +}); + +// ../node_modules/.pnpm/express@4.18.2/node_modules/express/index.js +var require_express3 = __commonJS({ + "../node_modules/.pnpm/express@4.18.2/node_modules/express/index.js"(exports2, module2) { + "use strict"; + module2.exports = require_express2(); + } +}); + +// ../node_modules/.pnpm/http-graceful-shutdown@3.1.13/node_modules/http-graceful-shutdown/lib/index.js +var require_lib9 = __commonJS({ + "../node_modules/.pnpm/http-graceful-shutdown@3.1.13/node_modules/http-graceful-shutdown/lib/index.js"(exports2, module2) { + "use strict"; + var debug = require_src3()("http-graceful-shutdown"); + var http4 = require("http"); + function GracefulShutdown(server, opts) { + opts = opts || {}; + let options2 = Object.assign({ + signals: "SIGINT SIGTERM", + timeout: 3e4, + development: false, + forceExit: true, + onShutdown: (signal) => Promise.resolve(signal), + preShutdown: (signal) => Promise.resolve(signal) + }, opts); + let isShuttingDown = false; + let connections = {}; + let connectionCounter = 0; + let secureConnections = {}; + let secureConnectionCounter = 0; + let failed = false; + let finalRun = false; + function onceFactory() { + let called = false; + return (emitter, events, callback) => { + function call() { + if (!called) { + called = true; + return callback.apply(this, arguments); + } + } + events.forEach((e) => emitter.on(e, call)); + }; + } + const signals = options2.signals.split(" ").map((s) => s.trim()).filter((s) => !!s.length); + const once = onceFactory(); + once(process, signals, (signal) => { + debug("received shut down signal", signal); + shutdown(signal).then(() => { + if (options2.forceExit) { + process.exit(failed ? 1 : 0); + } + }).catch((err2) => { + debug("server shut down error occurred", err2); + process.exit(1); + }); + }); + function isFunction2(functionToCheck) { + let getType = Object.prototype.toString.call(functionToCheck); + return /^\[object\s([a-zA-Z]+)?Function\]$/.test(getType); + } + function destroy(socket, force = false) { + if (socket._isIdle && isShuttingDown || force) { + socket.destroy(); + if (socket.server instanceof http4.Server) { + delete connections[socket._connectionId]; + } else { + delete secureConnections[socket._connectionId]; + } + } + } + function destroyAllConnections(force = false) { + debug("Destroy Connections : " + (force ? "forced close" : "close")); + let counter = 0; + let secureCounter = 0; + Object.keys(connections).forEach(function(key) { + const socket = connections[key]; + const serverResponse = socket._httpMessage; + if (serverResponse && !force) { + if (!serverResponse.headersSent) { + serverResponse.setHeader("connection", "close"); + } + } else { + counter++; + destroy(socket); + } + }); + debug("Connections destroyed : " + counter); + debug("Connection Counter : " + connectionCounter); + Object.keys(secureConnections).forEach(function(key) { + const socket = secureConnections[key]; + const serverResponse = socket._httpMessage; + if (serverResponse && !force) { + if (!serverResponse.headersSent) { + serverResponse.setHeader("connection", "close"); + } + } else { + secureCounter++; + destroy(socket); + } + }); + debug("Secure Connections destroyed : " + secureCounter); + debug("Secure Connection Counter : " + secureConnectionCounter); + } + server.on("request", function(req, res) { + req.socket._isIdle = false; + if (isShuttingDown && !res.headersSent) { + res.setHeader("connection", "close"); + } + res.on("finish", function() { + req.socket._isIdle = true; + destroy(req.socket); + }); + }); + server.on("connection", function(socket) { + if (isShuttingDown) { + socket.destroy(); + } else { + let id = connectionCounter++; + socket._isIdle = true; + socket._connectionId = id; + connections[id] = socket; + socket.once("close", () => { + delete connections[socket._connectionId]; + }); + } + }); + server.on("secureConnection", (socket) => { + if (isShuttingDown) { + socket.destroy(); + } else { + let id = secureConnectionCounter++; + socket._isIdle = true; + socket._connectionId = id; + secureConnections[id] = socket; + socket.once("close", () => { + delete secureConnections[socket._connectionId]; + }); + } + }); + process.on("close", function() { + debug("closed"); + }); + function shutdown(sig) { + function cleanupHttp() { + destroyAllConnections(); + debug("Close http server"); + return new Promise((resolve8, reject) => { + server.close((err2) => { + if (err2) { + return reject(err2); + } + return resolve8(true); + }); + }); + } + debug("shutdown signal - " + sig); + if (options2.development) { + debug("DEV-Mode - immediate forceful shutdown"); + return process.exit(0); + } + function finalHandler() { + if (!finalRun) { + finalRun = true; + if (options2.finally && isFunction2(options2.finally)) { + debug("executing finally()"); + options2.finally(); + } + } + return Promise.resolve(); + } + function waitForReadyToShutDown(totalNumInterval) { + debug(`waitForReadyToShutDown... ${totalNumInterval}`); + if (totalNumInterval === 0) { + debug( + `Could not close connections in time (${options2.timeout}ms), will forcefully shut down` + ); + return Promise.resolve(true); + } + const allConnectionsClosed = Object.keys(connections).length === 0 && Object.keys(secureConnections).length === 0; + if (allConnectionsClosed) { + debug("All connections closed. Continue to shutting down"); + return Promise.resolve(false); + } + debug("Schedule the next waitForReadyToShutdown"); + return new Promise((resolve8) => { + setTimeout(() => { + resolve8(waitForReadyToShutDown(totalNumInterval - 1)); + }, 250); + }); + } + if (isShuttingDown) { + return Promise.resolve(); + } + debug("shutting down"); + return options2.preShutdown(sig).then(() => { + isShuttingDown = true; + cleanupHttp(); + }).then(() => { + const pollIterations = options2.timeout ? Math.round(options2.timeout / 250) : 0; + return waitForReadyToShutDown(pollIterations); + }).then((force) => { + debug("Do onShutdown now"); + if (force) { + destroyAllConnections(force); + } + return options2.onShutdown(sig); + }).then(finalHandler).catch((err2) => { + const errString = typeof err2 === "string" ? err2 : JSON.stringify(err2); + debug(errString); + failed = true; + throw errString; + }); + } + function shutdownManual() { + return shutdown("manual"); + } + return shutdownManual; + } + module2.exports = GracefulShutdown; + } +}); + +// ../node_modules/.pnpm/nocache@3.0.4/node_modules/nocache/index.js +var require_nocache = __commonJS({ + "../node_modules/.pnpm/nocache@3.0.4/node_modules/nocache/index.js"(exports2, module2) { + module2.exports = function nocache() { + return function nocache2(_, res, next) { + res.setHeader("Surrogate-Control", "no-store"); + res.setHeader( + "Cache-Control", + "no-store, no-cache, must-revalidate, proxy-revalidate" + ); + res.setHeader("Pragma", "no-cache"); + res.setHeader("Expires", "0"); + next(); + }; + }; + } +}); + +// ../node_modules/.pnpm/@pollyjs+node-server@6.0.6/node_modules/@pollyjs/node-server/dist/cjs/pollyjs-node-server.js +var require_pollyjs_node_server = __commonJS({ + "../node_modules/.pnpm/@pollyjs+node-server@6.0.6/node_modules/@pollyjs/node-server/dist/cjs/pollyjs-node-server.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + function _interopDefault(ex) { + return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex; + } + var path30 = _interopDefault(require("path")); + var fs6 = _interopDefault(require_lib5()); + var utils = require_pollyjs_utils(); + var cors = _interopDefault(require_lib6()); + var morgan = _interopDefault(require_morgan()); + var express = _interopDefault(require_express3()); + var gracefulShutdown = _interopDefault(require_lib9()); + var bodyParser = _interopDefault(require_body_parser()); + var nocache = _interopDefault(require_nocache()); + var API = class { + constructor(options2 = {}) { + const { + recordingsDir + } = options2; + utils.assert(`Invalid recordings directory provided. Expected string, received: "${typeof recordingsDir}".`, typeof recordingsDir === "string"); + this.recordingsDir = recordingsDir; + } + getRecording(recording) { + const recordingFilename = this.filenameFor(recording); + if (fs6.existsSync(recordingFilename)) { + return this.respond(200, fs6.readJsonSync(recordingFilename)); + } + return this.respond(204); + } + saveRecording(recording, data) { + fs6.outputJsonSync(this.filenameFor(recording), data, { + spaces: 2 + }); + return this.respond(201); + } + deleteRecording(recording) { + const recordingFilename = this.filenameFor(recording); + if (fs6.existsSync(recordingFilename)) { + fs6.removeSync(recordingFilename); + } + return this.respond(200); + } + filenameFor(recording) { + return path30.join(this.recordingsDir, recording, "recording.har"); + } + respond(status, body2) { + return { + status, + body: body2 + }; + } + }; + var _defined = function(it) { + if (it == void 0) + throw TypeError("Can't call method on " + it); + return it; + }; + var _toObject = function(it) { + return Object(_defined(it)); + }; + var hasOwnProperty2 = {}.hasOwnProperty; + var _has = function(it, key) { + return hasOwnProperty2.call(it, key); + }; + var toString3 = {}.toString; + var _cof = function(it) { + return toString3.call(it).slice(8, -1); + }; + var _iobject = Object("z").propertyIsEnumerable(0) ? Object : function(it) { + return _cof(it) == "String" ? it.split("") : Object(it); + }; + var _toIobject = function(it) { + return _iobject(_defined(it)); + }; + var ceil = Math.ceil; + var floor = Math.floor; + var _toInteger = function(it) { + return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); + }; + var min = Math.min; + var _toLength = function(it) { + return it > 0 ? min(_toInteger(it), 9007199254740991) : 0; + }; + var max = Math.max; + var min$1 = Math.min; + var _toAbsoluteIndex = function(index, length) { + index = _toInteger(index); + return index < 0 ? max(index + length, 0) : min$1(index, length); + }; + var _arrayIncludes = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O = _toIobject($this); + var length = _toLength(O.length); + var index = _toAbsoluteIndex(fromIndex, length); + var value; + if (IS_INCLUDES && el != el) + while (length > index) { + value = O[index++]; + if (value != value) + return true; + } + else + for (; length > index; index++) + if (IS_INCLUDES || index in O) { + if (O[index] === el) + return IS_INCLUDES || index || 0; + } + return !IS_INCLUDES && -1; + }; + }; + function unwrapExports(x) { + return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x; + } + function createCommonjsModule(fn, module3) { + return module3 = { exports: {} }, fn(module3, module3.exports), module3.exports; + } + var _core = createCommonjsModule(function(module3) { + var core = module3.exports = { version: "2.6.9" }; + if (typeof __e == "number") + __e = core; + }); + var _core_1 = _core.version; + var _global2 = createCommonjsModule(function(module3) { + var global2 = module3.exports = typeof window != "undefined" && window.Math == Math ? window : typeof self != "undefined" && self.Math == Math ? self : Function("return this")(); + if (typeof __g == "number") + __g = global2; + }); + var _library = true; + var _shared = createCommonjsModule(function(module3) { + var SHARED = "__core-js_shared__"; + var store = _global2[SHARED] || (_global2[SHARED] = {}); + (module3.exports = function(key, value) { + return store[key] || (store[key] = value !== void 0 ? value : {}); + })("versions", []).push({ + version: _core.version, + mode: "pure", + copyright: "\xA9 2019 Denis Pushkarev (zloirock.ru)" + }); + }); + var id = 0; + var px = Math.random(); + var _uid = function(key) { + return "Symbol(".concat(key === void 0 ? "" : key, ")_", (++id + px).toString(36)); + }; + var shared = _shared("keys"); + var _sharedKey = function(key) { + return shared[key] || (shared[key] = _uid(key)); + }; + var arrayIndexOf = _arrayIncludes(false); + var IE_PROTO = _sharedKey("IE_PROTO"); + var _objectKeysInternal = function(object, names) { + var O = _toIobject(object); + var i = 0; + var result = []; + var key; + for (key in O) + if (key != IE_PROTO) + _has(O, key) && result.push(key); + while (names.length > i) + if (_has(O, key = names[i++])) { + ~arrayIndexOf(result, key) || result.push(key); + } + return result; + }; + var _enumBugKeys = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","); + var _objectKeys = Object.keys || function keys2(O) { + return _objectKeysInternal(O, _enumBugKeys); + }; + var _aFunction = function(it) { + if (typeof it != "function") + throw TypeError(it + " is not a function!"); + return it; + }; + var _ctx = function(fn, that, length) { + _aFunction(fn); + if (that === void 0) + return fn; + switch (length) { + case 1: + return function(a) { + return fn.call(that, a); + }; + case 2: + return function(a, b) { + return fn.call(that, a, b); + }; + case 3: + return function(a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function() { + return fn.apply(that, arguments); + }; + }; + var _isObject = function(it) { + return typeof it === "object" ? it !== null : typeof it === "function"; + }; + var _anObject = function(it) { + if (!_isObject(it)) + throw TypeError(it + " is not an object!"); + return it; + }; + var _fails = function(exec3) { + try { + return !!exec3(); + } catch (e) { + return true; + } + }; + var _descriptors = !_fails(function() { + return Object.defineProperty({}, "a", { get: function() { + return 7; + } }).a != 7; + }); + var document2 = _global2.document; + var is = _isObject(document2) && _isObject(document2.createElement); + var _domCreate = function(it) { + return is ? document2.createElement(it) : {}; + }; + var _ie8DomDefine = !_descriptors && !_fails(function() { + return Object.defineProperty(_domCreate("div"), "a", { get: function() { + return 7; + } }).a != 7; + }); + var _toPrimitive = function(it, S) { + if (!_isObject(it)) + return it; + var fn, val; + if (S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + if (typeof (fn = it.valueOf) == "function" && !_isObject(val = fn.call(it))) + return val; + if (!S && typeof (fn = it.toString) == "function" && !_isObject(val = fn.call(it))) + return val; + throw TypeError("Can't convert object to primitive value"); + }; + var dP = Object.defineProperty; + var f = _descriptors ? Object.defineProperty : function defineProperty2(O, P, Attributes) { + _anObject(O); + P = _toPrimitive(P, true); + _anObject(Attributes); + if (_ie8DomDefine) + try { + return dP(O, P, Attributes); + } catch (e) { + } + if ("get" in Attributes || "set" in Attributes) + throw TypeError("Accessors not supported!"); + if ("value" in Attributes) + O[P] = Attributes.value; + return O; + }; + var _objectDp = { + f + }; + var _propertyDesc = function(bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value + }; + }; + var _hide = _descriptors ? function(object, key, value) { + return _objectDp.f(object, key, _propertyDesc(1, value)); + } : function(object, key, value) { + object[key] = value; + return object; + }; + var PROTOTYPE = "prototype"; + var $export = function(type2, name, source2) { + var IS_FORCED = type2 & $export.F; + var IS_GLOBAL = type2 & $export.G; + var IS_STATIC = type2 & $export.S; + var IS_PROTO = type2 & $export.P; + var IS_BIND = type2 & $export.B; + var IS_WRAP = type2 & $export.W; + var exports3 = IS_GLOBAL ? _core : _core[name] || (_core[name] = {}); + var expProto = exports3[PROTOTYPE]; + var target = IS_GLOBAL ? _global2 : IS_STATIC ? _global2[name] : (_global2[name] || {})[PROTOTYPE]; + var key, own, out2; + if (IS_GLOBAL) + source2 = name; + for (key in source2) { + own = !IS_FORCED && target && target[key] !== void 0; + if (own && _has(exports3, key)) + continue; + out2 = own ? target[key] : source2[key]; + exports3[key] = IS_GLOBAL && typeof target[key] != "function" ? source2[key] : IS_BIND && own ? _ctx(out2, _global2) : IS_WRAP && target[key] == out2 ? function(C2) { + var F = function(a, b, c) { + if (this instanceof C2) { + switch (arguments.length) { + case 0: + return new C2(); + case 1: + return new C2(a); + case 2: + return new C2(a, b); + } + return new C2(a, b, c); + } + return C2.apply(this, arguments); + }; + F[PROTOTYPE] = C2[PROTOTYPE]; + return F; + }(out2) : IS_PROTO && typeof out2 == "function" ? _ctx(Function.call, out2) : out2; + if (IS_PROTO) { + (exports3.virtual || (exports3.virtual = {}))[key] = out2; + if (type2 & $export.R && expProto && !expProto[key]) + _hide(expProto, key, out2); + } + } + }; + $export.F = 1; + $export.G = 2; + $export.S = 4; + $export.P = 8; + $export.B = 16; + $export.W = 32; + $export.U = 64; + $export.R = 128; + var _export = $export; + var _objectSap = function(KEY, exec3) { + var fn = (_core.Object || {})[KEY] || Object[KEY]; + var exp = {}; + exp[KEY] = exec3(fn); + _export(_export.S + _export.F * _fails(function() { + fn(1); + }), "Object", exp); + }; + _objectSap("keys", function() { + return function keys2(it) { + return _objectKeys(_toObject(it)); + }; + }); + var keys = _core.Object.keys; + var keys$1 = keys; + var _redefine = _hide; + var _meta = createCommonjsModule(function(module3) { + var META2 = _uid("meta"); + var setDesc = _objectDp.f; + var id2 = 0; + var isExtensible = Object.isExtensible || function() { + return true; + }; + var FREEZE = !_fails(function() { + return isExtensible(Object.preventExtensions({})); + }); + var setMeta = function(it) { + setDesc(it, META2, { value: { + i: "O" + ++id2, + // object ID + w: {} + // weak collections IDs + } }); + }; + var fastKey = function(it, create2) { + if (!_isObject(it)) + return typeof it == "symbol" ? it : (typeof it == "string" ? "S" : "P") + it; + if (!_has(it, META2)) { + if (!isExtensible(it)) + return "F"; + if (!create2) + return "E"; + setMeta(it); + } + return it[META2].i; + }; + var getWeak = function(it, create2) { + if (!_has(it, META2)) { + if (!isExtensible(it)) + return true; + if (!create2) + return false; + setMeta(it); + } + return it[META2].w; + }; + var onFreeze = function(it) { + if (FREEZE && meta.NEED && isExtensible(it) && !_has(it, META2)) + setMeta(it); + return it; + }; + var meta = module3.exports = { + KEY: META2, + NEED: false, + fastKey, + getWeak, + onFreeze + }; + }); + var _meta_1 = _meta.KEY; + var _meta_2 = _meta.NEED; + var _meta_3 = _meta.fastKey; + var _meta_4 = _meta.getWeak; + var _meta_5 = _meta.onFreeze; + var _wks = createCommonjsModule(function(module3) { + var store = _shared("wks"); + var Symbol2 = _global2.Symbol; + var USE_SYMBOL = typeof Symbol2 == "function"; + var $exports = module3.exports = function(name) { + return store[name] || (store[name] = USE_SYMBOL && Symbol2[name] || (USE_SYMBOL ? Symbol2 : _uid)("Symbol." + name)); + }; + $exports.store = store; + }); + var def = _objectDp.f; + var TAG = _wks("toStringTag"); + var _setToStringTag = function(it, tag, stat7) { + if (it && !_has(it = stat7 ? it : it.prototype, TAG)) + def(it, TAG, { configurable: true, value: tag }); + }; + var f$1 = _wks; + var _wksExt = { + f: f$1 + }; + var defineProperty = _objectDp.f; + var _wksDefine = function(name) { + var $Symbol2 = _core.Symbol || (_core.Symbol = {}); + if (name.charAt(0) != "_" && !(name in $Symbol2)) + defineProperty($Symbol2, name, { value: _wksExt.f(name) }); + }; + var f$2 = Object.getOwnPropertySymbols; + var _objectGops = { + f: f$2 + }; + var f$3 = {}.propertyIsEnumerable; + var _objectPie = { + f: f$3 + }; + var _enumKeys = function(it) { + var result = _objectKeys(it); + var getSymbols = _objectGops.f; + if (getSymbols) { + var symbols = getSymbols(it); + var isEnum2 = _objectPie.f; + var i = 0; + var key; + while (symbols.length > i) + if (isEnum2.call(it, key = symbols[i++])) + result.push(key); + } + return result; + }; + var _isArray = Array.isArray || function isArray2(arg) { + return _cof(arg) == "Array"; + }; + var _objectDps = _descriptors ? Object.defineProperties : function defineProperties2(O, Properties) { + _anObject(O); + var keys2 = _objectKeys(Properties); + var length = keys2.length; + var i = 0; + var P; + while (length > i) + _objectDp.f(O, P = keys2[i++], Properties[P]); + return O; + }; + var document$1 = _global2.document; + var _html = document$1 && document$1.documentElement; + var IE_PROTO$1 = _sharedKey("IE_PROTO"); + var Empty = function() { + }; + var PROTOTYPE$1 = "prototype"; + var createDict = function() { + var iframe = _domCreate("iframe"); + var i = _enumBugKeys.length; + var lt = "<"; + var gt = ">"; + var iframeDocument; + iframe.style.display = "none"; + _html.appendChild(iframe); + iframe.src = "javascript:"; + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(lt + "script" + gt + "document.F=Object" + lt + "/script" + gt); + iframeDocument.close(); + createDict = iframeDocument.F; + while (i--) + delete createDict[PROTOTYPE$1][_enumBugKeys[i]]; + return createDict(); + }; + var _objectCreate = Object.create || function create2(O, Properties) { + var result; + if (O !== null) { + Empty[PROTOTYPE$1] = _anObject(O); + result = new Empty(); + Empty[PROTOTYPE$1] = null; + result[IE_PROTO$1] = O; + } else + result = createDict(); + return Properties === void 0 ? result : _objectDps(result, Properties); + }; + var hiddenKeys = _enumBugKeys.concat("length", "prototype"); + var f$4 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return _objectKeysInternal(O, hiddenKeys); + }; + var _objectGopn = { + f: f$4 + }; + var gOPN = _objectGopn.f; + var toString$1 = {}.toString; + var windowNames = typeof window == "object" && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : []; + var getWindowNames = function(it) { + try { + return gOPN(it); + } catch (e) { + return windowNames.slice(); + } + }; + var f$5 = function getOwnPropertyNames(it) { + return windowNames && toString$1.call(it) == "[object Window]" ? getWindowNames(it) : gOPN(_toIobject(it)); + }; + var _objectGopnExt = { + f: f$5 + }; + var gOPD = Object.getOwnPropertyDescriptor; + var f$6 = _descriptors ? gOPD : function getOwnPropertyDescriptor2(O, P) { + O = _toIobject(O); + P = _toPrimitive(P, true); + if (_ie8DomDefine) + try { + return gOPD(O, P); + } catch (e) { + } + if (_has(O, P)) + return _propertyDesc(!_objectPie.f.call(O, P), O[P]); + }; + var _objectGopd = { + f: f$6 + }; + var META = _meta.KEY; + var gOPD$1 = _objectGopd.f; + var dP$1 = _objectDp.f; + var gOPN$1 = _objectGopnExt.f; + var $Symbol = _global2.Symbol; + var $JSON = _global2.JSON; + var _stringify = $JSON && $JSON.stringify; + var PROTOTYPE$2 = "prototype"; + var HIDDEN = _wks("_hidden"); + var TO_PRIMITIVE = _wks("toPrimitive"); + var isEnum = {}.propertyIsEnumerable; + var SymbolRegistry = _shared("symbol-registry"); + var AllSymbols = _shared("symbols"); + var OPSymbols = _shared("op-symbols"); + var ObjectProto = Object[PROTOTYPE$2]; + var USE_NATIVE = typeof $Symbol == "function" && !!_objectGops.f; + var QObject = _global2.QObject; + var setter = !QObject || !QObject[PROTOTYPE$2] || !QObject[PROTOTYPE$2].findChild; + var setSymbolDesc = _descriptors && _fails(function() { + return _objectCreate(dP$1({}, "a", { + get: function() { + return dP$1(this, "a", { value: 7 }).a; + } + })).a != 7; + }) ? function(it, key, D) { + var protoDesc = gOPD$1(ObjectProto, key); + if (protoDesc) + delete ObjectProto[key]; + dP$1(it, key, D); + if (protoDesc && it !== ObjectProto) + dP$1(ObjectProto, key, protoDesc); + } : dP$1; + var wrap2 = function(tag) { + var sym = AllSymbols[tag] = _objectCreate($Symbol[PROTOTYPE$2]); + sym._k = tag; + return sym; + }; + var isSymbol = USE_NATIVE && typeof $Symbol.iterator == "symbol" ? function(it) { + return typeof it == "symbol"; + } : function(it) { + return it instanceof $Symbol; + }; + var $defineProperty = function defineProperty2(it, key, D) { + if (it === ObjectProto) + $defineProperty(OPSymbols, key, D); + _anObject(it); + key = _toPrimitive(key, true); + _anObject(D); + if (_has(AllSymbols, key)) { + if (!D.enumerable) { + if (!_has(it, HIDDEN)) + dP$1(it, HIDDEN, _propertyDesc(1, {})); + it[HIDDEN][key] = true; + } else { + if (_has(it, HIDDEN) && it[HIDDEN][key]) + it[HIDDEN][key] = false; + D = _objectCreate(D, { enumerable: _propertyDesc(0, false) }); + } + return setSymbolDesc(it, key, D); + } + return dP$1(it, key, D); + }; + var $defineProperties = function defineProperties2(it, P) { + _anObject(it); + var keys2 = _enumKeys(P = _toIobject(P)); + var i = 0; + var l2 = keys2.length; + var key; + while (l2 > i) + $defineProperty(it, key = keys2[i++], P[key]); + return it; + }; + var $create = function create2(it, P) { + return P === void 0 ? _objectCreate(it) : $defineProperties(_objectCreate(it), P); + }; + var $propertyIsEnumerable = function propertyIsEnumerable(key) { + var E = isEnum.call(this, key = _toPrimitive(key, true)); + if (this === ObjectProto && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return false; + return E || !_has(this, key) || !_has(AllSymbols, key) || _has(this, HIDDEN) && this[HIDDEN][key] ? E : true; + }; + var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + it = _toIobject(it); + key = _toPrimitive(key, true); + if (it === ObjectProto && _has(AllSymbols, key) && !_has(OPSymbols, key)) + return; + var D = gOPD$1(it, key); + if (D && _has(AllSymbols, key) && !(_has(it, HIDDEN) && it[HIDDEN][key])) + D.enumerable = true; + return D; + }; + var $getOwnPropertyNames = function getOwnPropertyNames(it) { + var names = gOPN$1(_toIobject(it)); + var result = []; + var i = 0; + var key; + while (names.length > i) { + if (!_has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) + result.push(key); + } + return result; + }; + var $getOwnPropertySymbols = function getOwnPropertySymbols2(it) { + var IS_OP = it === ObjectProto; + var names = gOPN$1(IS_OP ? OPSymbols : _toIobject(it)); + var result = []; + var i = 0; + var key; + while (names.length > i) { + if (_has(AllSymbols, key = names[i++]) && (IS_OP ? _has(ObjectProto, key) : true)) + result.push(AllSymbols[key]); + } + return result; + }; + if (!USE_NATIVE) { + $Symbol = function Symbol2() { + if (this instanceof $Symbol) + throw TypeError("Symbol is not a constructor!"); + var tag = _uid(arguments.length > 0 ? arguments[0] : void 0); + var $set = function(value) { + if (this === ObjectProto) + $set.call(OPSymbols, value); + if (_has(this, HIDDEN) && _has(this[HIDDEN], tag)) + this[HIDDEN][tag] = false; + setSymbolDesc(this, tag, _propertyDesc(1, value)); + }; + if (_descriptors && setter) + setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); + return wrap2(tag); + }; + _redefine($Symbol[PROTOTYPE$2], "toString", function toString4() { + return this._k; + }); + _objectGopd.f = $getOwnPropertyDescriptor; + _objectDp.f = $defineProperty; + _objectGopn.f = _objectGopnExt.f = $getOwnPropertyNames; + _objectPie.f = $propertyIsEnumerable; + _objectGops.f = $getOwnPropertySymbols; + if (_descriptors && !_library) { + _redefine(ObjectProto, "propertyIsEnumerable", $propertyIsEnumerable, true); + } + _wksExt.f = function(name) { + return wrap2(_wks(name)); + }; + } + _export(_export.G + _export.W + _export.F * !USE_NATIVE, { Symbol: $Symbol }); + for (es6Symbols = // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14 + "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), j = 0; es6Symbols.length > j; ) + _wks(es6Symbols[j++]); + var es6Symbols; + var j; + for (wellKnownSymbols = _objectKeys(_wks.store), k = 0; wellKnownSymbols.length > k; ) + _wksDefine(wellKnownSymbols[k++]); + var wellKnownSymbols; + var k; + _export(_export.S + _export.F * !USE_NATIVE, "Symbol", { + // 19.4.2.1 Symbol.for(key) + "for": function(key) { + return _has(SymbolRegistry, key += "") ? SymbolRegistry[key] : SymbolRegistry[key] = $Symbol(key); + }, + // 19.4.2.5 Symbol.keyFor(sym) + keyFor: function keyFor(sym) { + if (!isSymbol(sym)) + throw TypeError(sym + " is not a symbol!"); + for (var key in SymbolRegistry) + if (SymbolRegistry[key] === sym) + return key; + }, + useSetter: function() { + setter = true; + }, + useSimple: function() { + setter = false; + } + }); + _export(_export.S + _export.F * !USE_NATIVE, "Object", { + // 19.1.2.2 Object.create(O [, Properties]) + create: $create, + // 19.1.2.4 Object.defineProperty(O, P, Attributes) + defineProperty: $defineProperty, + // 19.1.2.3 Object.defineProperties(O, Properties) + defineProperties: $defineProperties, + // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P) + getOwnPropertyDescriptor: $getOwnPropertyDescriptor, + // 19.1.2.7 Object.getOwnPropertyNames(O) + getOwnPropertyNames: $getOwnPropertyNames, + // 19.1.2.8 Object.getOwnPropertySymbols(O) + getOwnPropertySymbols: $getOwnPropertySymbols + }); + var FAILS_ON_PRIMITIVES = _fails(function() { + _objectGops.f(1); + }); + _export(_export.S + _export.F * FAILS_ON_PRIMITIVES, "Object", { + getOwnPropertySymbols: function getOwnPropertySymbols2(it) { + return _objectGops.f(_toObject(it)); + } + }); + $JSON && _export(_export.S + _export.F * (!USE_NATIVE || _fails(function() { + var S = $Symbol(); + return _stringify([S]) != "[null]" || _stringify({ a: S }) != "{}" || _stringify(Object(S)) != "{}"; + })), "JSON", { + stringify: function stringify(it) { + var args3 = [it]; + var i = 1; + var replacer, $replacer; + while (arguments.length > i) + args3.push(arguments[i++]); + $replacer = replacer = args3[1]; + if (!_isObject(replacer) && it === void 0 || isSymbol(it)) + return; + if (!_isArray(replacer)) + replacer = function(key, value) { + if (typeof $replacer == "function") + value = $replacer.call(this, key, value); + if (!isSymbol(value)) + return value; + }; + args3[1] = replacer; + return _stringify.apply($JSON, args3); + } + }); + $Symbol[PROTOTYPE$2][TO_PRIMITIVE] || _hide($Symbol[PROTOTYPE$2], TO_PRIMITIVE, $Symbol[PROTOTYPE$2].valueOf); + _setToStringTag($Symbol, "Symbol"); + _setToStringTag(Math, "Math", true); + _setToStringTag(_global2.JSON, "JSON", true); + var getOwnPropertySymbols = _core.Object.getOwnPropertySymbols; + var getOwnPropertySymbols$1 = getOwnPropertySymbols; + var $getOwnPropertyDescriptor$1 = _objectGopd.f; + _objectSap("getOwnPropertyDescriptor", function() { + return function getOwnPropertyDescriptor2(it, key) { + return $getOwnPropertyDescriptor$1(_toIobject(it), key); + }; + }); + var $Object = _core.Object; + var getOwnPropertyDescriptor = function getOwnPropertyDescriptor2(it, key) { + return $Object.getOwnPropertyDescriptor(it, key); + }; + var getOwnPropertyDescriptor$1 = getOwnPropertyDescriptor; + var Reflect2 = _global2.Reflect; + var _ownKeys = Reflect2 && Reflect2.ownKeys || function ownKeys2(it) { + var keys2 = _objectGopn.f(_anObject(it)); + var getSymbols = _objectGops.f; + return getSymbols ? keys2.concat(getSymbols(it)) : keys2; + }; + var _createProperty = function(object, index, value) { + if (index in object) + _objectDp.f(object, index, _propertyDesc(0, value)); + else + object[index] = value; + }; + _export(_export.S, "Object", { + getOwnPropertyDescriptors: function getOwnPropertyDescriptors2(object) { + var O = _toIobject(object); + var getDesc = _objectGopd.f; + var keys2 = _ownKeys(O); + var result = {}; + var i = 0; + var key, desc; + while (keys2.length > i) { + desc = getDesc(O, key = keys2[i++]); + if (desc !== void 0) + _createProperty(result, key, desc); + } + return result; + } + }); + var getOwnPropertyDescriptors = _core.Object.getOwnPropertyDescriptors; + var getOwnPropertyDescriptors$1 = getOwnPropertyDescriptors; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperties: _objectDps }); + var $Object$1 = _core.Object; + var defineProperties = function defineProperties2(T, D) { + return $Object$1.defineProperties(T, D); + }; + var defineProperties$1 = defineProperties; + _export(_export.S + _export.F * !_descriptors, "Object", { defineProperty: _objectDp.f }); + var $Object$2 = _core.Object; + var defineProperty$1 = function defineProperty2(it, key, desc) { + return $Object$2.defineProperty(it, key, desc); + }; + var defineProperty$2 = defineProperty$1; + var defineProperty$3 = createCommonjsModule(function(module3) { + function _defineProperty2(obj2, key, value) { + if (key in obj2) { + defineProperty$2(obj2, key, { + value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj2[key] = value; + } + return obj2; + } + module3.exports = _defineProperty2; + module3.exports["default"] = module3.exports, module3.exports.__esModule = true; + }); + var _defineProperty = unwrapExports(defineProperty$3); + var DefaultConfig = { + port: 3e3, + quiet: false, + recordingSizeLimit: "50mb", + recordingsDir: "recordings", + apiNamespace: "/polly" + }; + function ownKeys(object, enumerableOnly) { + var keys2 = keys$1(object); + if (getOwnPropertySymbols$1) { + var symbols = getOwnPropertySymbols$1(object); + if (enumerableOnly) { + symbols = symbols.filter(function(sym) { + return getOwnPropertyDescriptor$1(object, sym).enumerable; + }); + } + keys2.push.apply(keys2, symbols); + } + return keys2; + } + function _objectSpread(target) { + for (var i = 1; i < arguments.length; i++) { + var source2 = arguments[i] != null ? arguments[i] : {}; + if (i % 2) { + ownKeys(Object(source2), true).forEach(function(key) { + _defineProperty(target, key, source2[key]); + }); + } else if (getOwnPropertyDescriptors$1) { + defineProperties$1(target, getOwnPropertyDescriptors$1(source2)); + } else { + ownKeys(Object(source2)).forEach(function(key) { + defineProperty$2(target, key, getOwnPropertyDescriptor$1(source2, key)); + }); + } + } + return target; + } + function prependSlash(slash = "") { + if (slash.startsWith("/")) { + return slash; + } + return `/${slash}`; + } + function registerAPI(app, config) { + config = _objectSpread(_objectSpread({}, DefaultConfig), config); + config.apiNamespace = prependSlash(config.apiNamespace); + const router = express.Router(); + const api = new API({ + recordingsDir: config.recordingsDir + }); + router.use(nocache()); + router.get("/:recording", function(req, res) { + const { + recording + } = req.params; + const { + status, + body: body2 + } = api.getRecording(recording); + res.status(status); + if (status === 200) { + res.json(body2); + } else { + res.end(); + } + }); + router.post("/:recording", bodyParser.json({ + limit: config.recordingSizeLimit + }), function(req, res) { + const { + recording + } = req.params; + const { + status, + body: body2 + } = api.saveRecording(recording, req.body); + res.status(status).send(body2); + }); + router.delete("/:recording", function(req, res) { + const { + recording + } = req.params; + const { + status, + body: body2 + } = api.deleteRecording(recording); + res.status(status).send(body2); + }); + app.use(config.apiNamespace, router); + } + function ownKeys$1(object, enumerableOnly) { + var keys2 = keys$1(object); + if (getOwnPropertySymbols$1) { + var symbols = getOwnPropertySymbols$1(object); + if (enumerableOnly) { + symbols = symbols.filter(function(sym) { + return getOwnPropertyDescriptor$1(object, sym).enumerable; + }); + } + keys2.push.apply(keys2, symbols); + } + return keys2; + } + function _objectSpread$1(target) { + for (var i = 1; i < arguments.length; i++) { + var source2 = arguments[i] != null ? arguments[i] : {}; + if (i % 2) { + ownKeys$1(Object(source2), true).forEach(function(key) { + _defineProperty(target, key, source2[key]); + }); + } else if (getOwnPropertyDescriptors$1) { + defineProperties$1(target, getOwnPropertyDescriptors$1(source2)); + } else { + ownKeys$1(Object(source2)).forEach(function(key) { + defineProperty$2(target, key, getOwnPropertyDescriptor$1(source2, key)); + }); + } + } + return target; + } + var Server = class { + constructor(config = {}) { + this.config = _objectSpread$1(_objectSpread$1({}, DefaultConfig), config); + this.app = express(); + this.app.use(cors(this.config.corsOptions)); + if (!this.config.quiet) { + this.app.use(morgan("dev")); + } + this.app.get("/", (req, res) => res.sendStatus(200)); + this.app.head("/", (req, res) => res.sendStatus(200)); + registerAPI(this.app, { + recordingsDir: this.config.recordingsDir, + apiNamespace: this.config.apiNamespace + }); + } + listen(port, host) { + if (this.server) { + return; + } + port = port || this.config.port; + host = host || this.config.host; + this.server = this.app.listen(port, host).on("listening", () => { + if (!this.config.quiet) { + console.log(`Listening on http://${host || "localhost"}:${port}/ +`); + } + }).on("error", (e) => { + if (e.code === "EADDRINUSE") { + console.error(`Port ${port} already in use.`); + process.exit(1); + } else { + console.error(e); + } + }); + gracefulShutdown(this.server); + return this.server; + } + }; + exports2.API = API; + exports2.Defaults = DefaultConfig; + exports2.Server = Server; + exports2.registerExpressAPI = registerAPI; + } +}); + +// ../node_modules/.pnpm/@pollyjs+persister-fs@6.0.6/node_modules/@pollyjs/persister-fs/dist/cjs/pollyjs-persister-fs.js +var require_pollyjs_persister_fs = __commonJS({ + "../node_modules/.pnpm/@pollyjs+persister-fs@6.0.6/node_modules/@pollyjs/persister-fs/dist/cjs/pollyjs-persister-fs.js"(exports2, module2) { + "use strict"; + function _interopDefault(ex) { + return ex && typeof ex === "object" && "default" in ex ? ex["default"] : ex; + } + var Persister = _interopDefault(require_pollyjs_persister()); + var nodeServer = require_pollyjs_node_server(); + var { + parse: parse7 + } = JSON; + var FSPersister2 = class extends Persister { + constructor() { + super(...arguments); + this.api = new nodeServer.API(this.options); + } + static get id() { + return "fs"; + } + get defaultOptions() { + return { + recordingsDir: nodeServer.Defaults.recordingsDir + }; + } + onFindRecording(recordingId) { + return this.api.getRecording(recordingId).body || null; + } + onSaveRecording(recordingId, data) { + this.api.saveRecording(recordingId, parse7(this.stringify(data))); + } + onDeleteRecording(recordingId) { + this.api.deleteRecording(recordingId); + } + }; + module2.exports = FSPersister2; + } +}); + +// ../node_modules/.pnpm/commander@11.1.0/node_modules/commander/esm.mjs +var import_index = __toESM(require_commander(), 1); +var { + program, + createCommand, + createArgument, + createOption, + CommanderError, + InvalidArgumentError, + InvalidOptionArgumentError, + // deprecated old name + Command, + Argument, + Option, + Help +} = import_index.default; + +// src/cli/evaluate-autocomplete/evaluate-autocomplete.ts +var fspromises10 = __toESM(require("fs/promises")); +var path29 = __toESM(require("path")); + +// ../node_modules/.pnpm/minimatch@9.0.3/node_modules/minimatch/dist/mjs/index.js +var import_brace_expansion = __toESM(require_brace_expansion(), 1); + +// ../node_modules/.pnpm/minimatch@9.0.3/node_modules/minimatch/dist/mjs/assert-valid-pattern.js +var MAX_PATTERN_LENGTH = 1024 * 64; +var assertValidPattern = (pattern) => { + if (typeof pattern !== "string") { + throw new TypeError("invalid pattern"); + } + if (pattern.length > MAX_PATTERN_LENGTH) { + throw new TypeError("pattern is too long"); + } +}; + +// ../node_modules/.pnpm/minimatch@9.0.3/node_modules/minimatch/dist/mjs/brace-expressions.js +var posixClasses = { + "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true], + "[:alpha:]": ["\\p{L}\\p{Nl}", true], + "[:ascii:]": ["\\x00-\\x7f", false], + "[:blank:]": ["\\p{Zs}\\t", true], + "[:cntrl:]": ["\\p{Cc}", true], + "[:digit:]": ["\\p{Nd}", true], + "[:graph:]": ["\\p{Z}\\p{C}", true, true], + "[:lower:]": ["\\p{Ll}", true], + "[:print:]": ["\\p{C}", true], + "[:punct:]": ["\\p{P}", true], + "[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true], + "[:upper:]": ["\\p{Lu}", true], + "[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true], + "[:xdigit:]": ["A-Fa-f0-9", false] +}; +var braceEscape = (s) => s.replace(/[[\]\\-]/g, "\\$&"); +var regexpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); +var rangesToString = (ranges) => ranges.join(""); +var parseClass = (glob2, position) => { + const pos = position; + if (glob2.charAt(pos) !== "[") { + throw new Error("not in a brace expression"); + } + const ranges = []; + const negs = []; + let i = pos + 1; + let sawStart = false; + let uflag = false; + let escaping = false; + let negate = false; + let endPos = pos; + let rangeStart = ""; + WHILE: + while (i < glob2.length) { + const c = glob2.charAt(i); + if ((c === "!" || c === "^") && i === pos + 1) { + negate = true; + i++; + continue; + } + if (c === "]" && sawStart && !escaping) { + endPos = i + 1; + break; + } + sawStart = true; + if (c === "\\") { + if (!escaping) { + escaping = true; + i++; + continue; + } + } + if (c === "[" && !escaping) { + for (const [cls, [unip, u, neg]] of Object.entries(posixClasses)) { + if (glob2.startsWith(cls, i)) { + if (rangeStart) { + return ["$.", false, glob2.length - pos, true]; + } + i += cls.length; + if (neg) + negs.push(unip); + else + ranges.push(unip); + uflag = uflag || u; + continue WHILE; + } + } + } + escaping = false; + if (rangeStart) { + if (c > rangeStart) { + ranges.push(braceEscape(rangeStart) + "-" + braceEscape(c)); + } else if (c === rangeStart) { + ranges.push(braceEscape(c)); + } + rangeStart = ""; + i++; + continue; + } + if (glob2.startsWith("-]", i + 1)) { + ranges.push(braceEscape(c + "-")); + i += 2; + continue; + } + if (glob2.startsWith("-", i + 1)) { + rangeStart = c; + i += 2; + continue; + } + ranges.push(braceEscape(c)); + i++; + } + if (endPos < i) { + return ["", false, 0, false]; + } + if (!ranges.length && !negs.length) { + return ["$.", false, glob2.length - pos, true]; + } + if (negs.length === 0 && ranges.length === 1 && /^\\?.$/.test(ranges[0]) && !negate) { + const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0]; + return [regexpEscape(r), false, endPos - pos, false]; + } + const sranges = "[" + (negate ? "^" : "") + rangesToString(ranges) + "]"; + const snegs = "[" + (negate ? "" : "^") + rangesToString(negs) + "]"; + const comb = ranges.length && negs.length ? "(" + sranges + "|" + snegs + ")" : ranges.length ? sranges : snegs; + return [comb, uflag, endPos - pos, true]; +}; + +// ../node_modules/.pnpm/minimatch@9.0.3/node_modules/minimatch/dist/mjs/unescape.js +var unescape2 = (s, { windowsPathsNoEscape = false } = {}) => { + return windowsPathsNoEscape ? s.replace(/\[([^\/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^\/\\])\]/g, "$1$2").replace(/\\([^\/])/g, "$1"); +}; + +// ../node_modules/.pnpm/minimatch@9.0.3/node_modules/minimatch/dist/mjs/ast.js +var types = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]); +var isExtglobType = (c) => types.has(c); +var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))"; +var startNoDot = "(?!\\.)"; +var addPatternStart = /* @__PURE__ */ new Set(["[", "."]); +var justDots = /* @__PURE__ */ new Set(["..", "."]); +var reSpecials = new Set("().*{}+?[]^$\\!"); +var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); +var qmark = "[^/]"; +var star = qmark + "*?"; +var starNoEmpty = qmark + "+?"; +var AST = class _AST { + type; + #root; + #hasMagic; + #uflag = false; + #parts = []; + #parent; + #parentIndex; + #negs; + #filledNegs = false; + #options; + #toString; + // set to true if it's an extglob with no children + // (which really means one child of '') + #emptyExt = false; + constructor(type2, parent, options2 = {}) { + this.type = type2; + if (type2) + this.#hasMagic = true; + this.#parent = parent; + this.#root = this.#parent ? this.#parent.#root : this; + this.#options = this.#root === this ? options2 : this.#root.#options; + this.#negs = this.#root === this ? [] : this.#root.#negs; + if (type2 === "!" && !this.#root.#filledNegs) + this.#negs.push(this); + this.#parentIndex = this.#parent ? this.#parent.#parts.length : 0; + } + get hasMagic() { + if (this.#hasMagic !== void 0) + return this.#hasMagic; + for (const p of this.#parts) { + if (typeof p === "string") + continue; + if (p.type || p.hasMagic) + return this.#hasMagic = true; + } + return this.#hasMagic; + } + // reconstructs the pattern + toString() { + if (this.#toString !== void 0) + return this.#toString; + if (!this.type) { + return this.#toString = this.#parts.map((p) => String(p)).join(""); + } else { + return this.#toString = this.type + "(" + this.#parts.map((p) => String(p)).join("|") + ")"; + } + } + #fillNegs() { + if (this !== this.#root) + throw new Error("should only call on root"); + if (this.#filledNegs) + return this; + this.toString(); + this.#filledNegs = true; + let n; + while (n = this.#negs.pop()) { + if (n.type !== "!") + continue; + let p = n; + let pp = p.#parent; + while (pp) { + for (let i = p.#parentIndex + 1; !pp.type && i < pp.#parts.length; i++) { + for (const part of n.#parts) { + if (typeof part === "string") { + throw new Error("string part in extglob AST??"); + } + part.copyIn(pp.#parts[i]); + } + } + p = pp; + pp = p.#parent; + } + } + return this; + } + push(...parts) { + for (const p of parts) { + if (p === "") + continue; + if (typeof p !== "string" && !(p instanceof _AST && p.#parent === this)) { + throw new Error("invalid part: " + p); + } + this.#parts.push(p); + } + } + toJSON() { + const ret2 = this.type === null ? this.#parts.slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...this.#parts.map((p) => p.toJSON())]; + if (this.isStart() && !this.type) + ret2.unshift([]); + if (this.isEnd() && (this === this.#root || this.#root.#filledNegs && this.#parent?.type === "!")) { + ret2.push({}); + } + return ret2; + } + isStart() { + if (this.#root === this) + return true; + if (!this.#parent?.isStart()) + return false; + if (this.#parentIndex === 0) + return true; + const p = this.#parent; + for (let i = 0; i < this.#parentIndex; i++) { + const pp = p.#parts[i]; + if (!(pp instanceof _AST && pp.type === "!")) { + return false; + } + } + return true; + } + isEnd() { + if (this.#root === this) + return true; + if (this.#parent?.type === "!") + return true; + if (!this.#parent?.isEnd()) + return false; + if (!this.type) + return this.#parent?.isEnd(); + const pl = this.#parent ? this.#parent.#parts.length : 0; + return this.#parentIndex === pl - 1; + } + copyIn(part) { + if (typeof part === "string") + this.push(part); + else + this.push(part.clone(this)); + } + clone(parent) { + const c = new _AST(this.type, parent); + for (const p of this.#parts) { + c.copyIn(p); + } + return c; + } + static #parseAST(str, ast, pos, opt) { + let escaping = false; + let inBrace = false; + let braceStart = -1; + let braceNeg = false; + if (ast.type === null) { + let i2 = pos; + let acc2 = ""; + while (i2 < str.length) { + const c = str.charAt(i2++); + if (escaping || c === "\\") { + escaping = !escaping; + acc2 += c; + continue; + } + if (inBrace) { + if (i2 === braceStart + 1) { + if (c === "^" || c === "!") { + braceNeg = true; + } + } else if (c === "]" && !(i2 === braceStart + 2 && braceNeg)) { + inBrace = false; + } + acc2 += c; + continue; + } else if (c === "[") { + inBrace = true; + braceStart = i2; + braceNeg = false; + acc2 += c; + continue; + } + if (!opt.noext && isExtglobType(c) && str.charAt(i2) === "(") { + ast.push(acc2); + acc2 = ""; + const ext2 = new _AST(c, ast); + i2 = _AST.#parseAST(str, ext2, i2, opt); + ast.push(ext2); + continue; + } + acc2 += c; + } + ast.push(acc2); + return i2; + } + let i = pos + 1; + let part = new _AST(null, ast); + const parts = []; + let acc = ""; + while (i < str.length) { + const c = str.charAt(i++); + if (escaping || c === "\\") { + escaping = !escaping; + acc += c; + continue; + } + if (inBrace) { + if (i === braceStart + 1) { + if (c === "^" || c === "!") { + braceNeg = true; + } + } else if (c === "]" && !(i === braceStart + 2 && braceNeg)) { + inBrace = false; + } + acc += c; + continue; + } else if (c === "[") { + inBrace = true; + braceStart = i; + braceNeg = false; + acc += c; + continue; + } + if (isExtglobType(c) && str.charAt(i) === "(") { + part.push(acc); + acc = ""; + const ext2 = new _AST(c, part); + part.push(ext2); + i = _AST.#parseAST(str, ext2, i, opt); + continue; + } + if (c === "|") { + part.push(acc); + acc = ""; + parts.push(part); + part = new _AST(null, ast); + continue; + } + if (c === ")") { + if (acc === "" && ast.#parts.length === 0) { + ast.#emptyExt = true; + } + part.push(acc); + acc = ""; + ast.push(...parts, part); + return i; + } + acc += c; + } + ast.type = null; + ast.#hasMagic = void 0; + ast.#parts = [str.substring(pos - 1)]; + return i; + } + static fromGlob(pattern, options2 = {}) { + const ast = new _AST(null, void 0, options2); + _AST.#parseAST(pattern, ast, 0, options2); + return ast; + } + // returns the regular expression if there's magic, or the unescaped + // string if not. + toMMPattern() { + if (this !== this.#root) + return this.#root.toMMPattern(); + const glob2 = this.toString(); + const [re, body2, hasMagic2, uflag] = this.toRegExpSource(); + const anyMagic = hasMagic2 || this.#hasMagic || this.#options.nocase && !this.#options.nocaseMagicOnly && glob2.toUpperCase() !== glob2.toLowerCase(); + if (!anyMagic) { + return body2; + } + const flags2 = (this.#options.nocase ? "i" : "") + (uflag ? "u" : ""); + return Object.assign(new RegExp(`^${re}$`, flags2), { + _src: re, + _glob: glob2 + }); + } + // returns the string match, the regexp source, whether there's magic + // in the regexp (so a regular expression is required) and whether or + // not the uflag is needed for the regular expression (for posix classes) + // TODO: instead of injecting the start/end at this point, just return + // the BODY of the regexp, along with the start/end portions suitable + // for binding the start/end in either a joined full-path makeRe context + // (where we bind to (^|/), or a standalone matchPart context (where + // we bind to ^, and not /). Otherwise slashes get duped! + // + // In part-matching mode, the start is: + // - if not isStart: nothing + // - if traversal possible, but not allowed: ^(?!\.\.?$) + // - if dots allowed or not possible: ^ + // - if dots possible and not allowed: ^(?!\.) + // end is: + // - if not isEnd(): nothing + // - else: $ + // + // In full-path matching mode, we put the slash at the START of the + // pattern, so start is: + // - if first pattern: same as part-matching mode + // - if not isStart(): nothing + // - if traversal possible, but not allowed: /(?!\.\.?(?:$|/)) + // - if dots allowed or not possible: / + // - if dots possible and not allowed: /(?!\.) + // end is: + // - if last pattern, same as part-matching mode + // - else nothing + // + // Always put the (?:$|/) on negated tails, though, because that has to be + // there to bind the end of the negated pattern portion, and it's easier to + // just stick it in now rather than try to inject it later in the middle of + // the pattern. + // + // We can just always return the same end, and leave it up to the caller + // to know whether it's going to be used joined or in parts. + // And, if the start is adjusted slightly, can do the same there: + // - if not isStart: nothing + // - if traversal possible, but not allowed: (?:/|^)(?!\.\.?$) + // - if dots allowed or not possible: (?:/|^) + // - if dots possible and not allowed: (?:/|^)(?!\.) + // + // But it's better to have a simpler binding without a conditional, for + // performance, so probably better to return both start options. + // + // Then the caller just ignores the end if it's not the first pattern, + // and the start always gets applied. + // + // But that's always going to be $ if it's the ending pattern, or nothing, + // so the caller can just attach $ at the end of the pattern when building. + // + // So the todo is: + // - better detect what kind of start is needed + // - return both flavors of starting pattern + // - attach $ at the end of the pattern when creating the actual RegExp + // + // Ah, but wait, no, that all only applies to the root when the first pattern + // is not an extglob. If the first pattern IS an extglob, then we need all + // that dot prevention biz to live in the extglob portions, because eg + // +(*|.x*) can match .xy but not .yx. + // + // So, return the two flavors if it's #root and the first child is not an + // AST, otherwise leave it to the child AST to handle it, and there, + // use the (?:^|/) style of start binding. + // + // Even simplified further: + // - Since the start for a join is eg /(?!\.) and the start for a part + // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root + // or start or whatever) and prepend ^ or / at the Regexp construction. + toRegExpSource(allowDot) { + const dot = allowDot ?? !!this.#options.dot; + if (this.#root === this) + this.#fillNegs(); + if (!this.type) { + const noEmpty = this.isStart() && this.isEnd(); + const src = this.#parts.map((p) => { + const [re, _, hasMagic2, uflag] = typeof p === "string" ? _AST.#parseGlob(p, this.#hasMagic, noEmpty) : p.toRegExpSource(allowDot); + this.#hasMagic = this.#hasMagic || hasMagic2; + this.#uflag = this.#uflag || uflag; + return re; + }).join(""); + let start5 = ""; + if (this.isStart()) { + if (typeof this.#parts[0] === "string") { + const dotTravAllowed = this.#parts.length === 1 && justDots.has(this.#parts[0]); + if (!dotTravAllowed) { + const aps = addPatternStart; + const needNoTrav = ( + // dots are allowed, and the pattern starts with [ or . + dot && aps.has(src.charAt(0)) || // the pattern starts with \., and then [ or . + src.startsWith("\\.") && aps.has(src.charAt(2)) || // the pattern starts with \.\., and then [ or . + src.startsWith("\\.\\.") && aps.has(src.charAt(4)) + ); + const needNoDot = !dot && !allowDot && aps.has(src.charAt(0)); + start5 = needNoTrav ? startNoTraversal : needNoDot ? startNoDot : ""; + } + } + } + let end = ""; + if (this.isEnd() && this.#root.#filledNegs && this.#parent?.type === "!") { + end = "(?:$|\\/)"; + } + const final2 = start5 + src + end; + return [ + final2, + unescape2(src), + this.#hasMagic = !!this.#hasMagic, + this.#uflag + ]; + } + const repeated = this.type === "*" || this.type === "+"; + const start4 = this.type === "!" ? "(?:(?!(?:" : "(?:"; + let body2 = this.#partsToRegExp(dot); + if (this.isStart() && this.isEnd() && !body2 && this.type !== "!") { + const s = this.toString(); + this.#parts = [s]; + this.type = null; + this.#hasMagic = void 0; + return [s, unescape2(this.toString()), false, false]; + } + let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : this.#partsToRegExp(true); + if (bodyDotAllowed === body2) { + bodyDotAllowed = ""; + } + if (bodyDotAllowed) { + body2 = `(?:${body2})(?:${bodyDotAllowed})*?`; + } + let final = ""; + if (this.type === "!" && this.#emptyExt) { + final = (this.isStart() && !dot ? startNoDot : "") + starNoEmpty; + } else { + const close = this.type === "!" ? ( + // !() must match something,but !(x) can match '' + "))" + (this.isStart() && !dot && !allowDot ? startNoDot : "") + star + ")" + ) : this.type === "@" ? ")" : this.type === "?" ? ")?" : this.type === "+" && bodyDotAllowed ? ")" : this.type === "*" && bodyDotAllowed ? `)?` : `)${this.type}`; + final = start4 + body2 + close; + } + return [ + final, + unescape2(body2), + this.#hasMagic = !!this.#hasMagic, + this.#uflag + ]; + } + #partsToRegExp(dot) { + return this.#parts.map((p) => { + if (typeof p === "string") { + throw new Error("string type in extglob ast??"); + } + const [re, _, _hasMagic, uflag] = p.toRegExpSource(dot); + this.#uflag = this.#uflag || uflag; + return re; + }).filter((p) => !(this.isStart() && this.isEnd()) || !!p).join("|"); + } + static #parseGlob(glob2, hasMagic2, noEmpty = false) { + let escaping = false; + let re = ""; + let uflag = false; + for (let i = 0; i < glob2.length; i++) { + const c = glob2.charAt(i); + if (escaping) { + escaping = false; + re += (reSpecials.has(c) ? "\\" : "") + c; + continue; + } + if (c === "\\") { + if (i === glob2.length - 1) { + re += "\\\\"; + } else { + escaping = true; + } + continue; + } + if (c === "[") { + const [src, needUflag, consumed, magic] = parseClass(glob2, i); + if (consumed) { + re += src; + uflag = uflag || needUflag; + i += consumed - 1; + hasMagic2 = hasMagic2 || magic; + continue; + } + } + if (c === "*") { + if (noEmpty && glob2 === "*") + re += starNoEmpty; + else + re += star; + hasMagic2 = true; + continue; + } + if (c === "?") { + re += qmark; + hasMagic2 = true; + continue; + } + re += regExpEscape(c); + } + return [re, unescape2(glob2), !!hasMagic2, uflag]; + } +}; + +// ../node_modules/.pnpm/minimatch@9.0.3/node_modules/minimatch/dist/mjs/escape.js +var escape2 = (s, { windowsPathsNoEscape = false } = {}) => { + return windowsPathsNoEscape ? s.replace(/[?*()[\]]/g, "[$&]") : s.replace(/[?*()[\]\\]/g, "\\$&"); +}; + +// ../node_modules/.pnpm/minimatch@9.0.3/node_modules/minimatch/dist/mjs/index.js +var minimatch = (p, pattern, options2 = {}) => { + assertValidPattern(pattern); + if (!options2.nocomment && pattern.charAt(0) === "#") { + return false; + } + return new Minimatch(pattern, options2).match(p); +}; +var starDotExtRE = /^\*+([^+@!?\*\[\(]*)$/; +var starDotExtTest = (ext2) => (f) => !f.startsWith(".") && f.endsWith(ext2); +var starDotExtTestDot = (ext2) => (f) => f.endsWith(ext2); +var starDotExtTestNocase = (ext2) => { + ext2 = ext2.toLowerCase(); + return (f) => !f.startsWith(".") && f.toLowerCase().endsWith(ext2); +}; +var starDotExtTestNocaseDot = (ext2) => { + ext2 = ext2.toLowerCase(); + return (f) => f.toLowerCase().endsWith(ext2); +}; +var starDotStarRE = /^\*+\.\*+$/; +var starDotStarTest = (f) => !f.startsWith(".") && f.includes("."); +var starDotStarTestDot = (f) => f !== "." && f !== ".." && f.includes("."); +var dotStarRE = /^\.\*+$/; +var dotStarTest = (f) => f !== "." && f !== ".." && f.startsWith("."); +var starRE = /^\*+$/; +var starTest = (f) => f.length !== 0 && !f.startsWith("."); +var starTestDot = (f) => f.length !== 0 && f !== "." && f !== ".."; +var qmarksRE = /^\?+([^+@!?\*\[\(]*)?$/; +var qmarksTestNocase = ([$0, ext2 = ""]) => { + const noext = qmarksTestNoExt([$0]); + if (!ext2) + return noext; + ext2 = ext2.toLowerCase(); + return (f) => noext(f) && f.toLowerCase().endsWith(ext2); +}; +var qmarksTestNocaseDot = ([$0, ext2 = ""]) => { + const noext = qmarksTestNoExtDot([$0]); + if (!ext2) + return noext; + ext2 = ext2.toLowerCase(); + return (f) => noext(f) && f.toLowerCase().endsWith(ext2); +}; +var qmarksTestDot = ([$0, ext2 = ""]) => { + const noext = qmarksTestNoExtDot([$0]); + return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2); +}; +var qmarksTest = ([$0, ext2 = ""]) => { + const noext = qmarksTestNoExt([$0]); + return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2); +}; +var qmarksTestNoExt = ([$0]) => { + const len = $0.length; + return (f) => f.length === len && !f.startsWith("."); +}; +var qmarksTestNoExtDot = ([$0]) => { + const len = $0.length; + return (f) => f.length === len && f !== "." && f !== ".."; +}; +var defaultPlatform = typeof process === "object" && process ? typeof process.env === "object" && process.env && process.env.__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; +var path = { + win32: { sep: "\\" }, + posix: { sep: "/" } +}; +var sep = defaultPlatform === "win32" ? path.win32.sep : path.posix.sep; +minimatch.sep = sep; +var GLOBSTAR = Symbol("globstar **"); +minimatch.GLOBSTAR = GLOBSTAR; +var qmark2 = "[^/]"; +var star2 = qmark2 + "*?"; +var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; +var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?"; +var filter = (pattern, options2 = {}) => (p) => minimatch(p, pattern, options2); +minimatch.filter = filter; +var ext = (a, b = {}) => Object.assign({}, a, b); +var defaults = (def) => { + if (!def || typeof def !== "object" || !Object.keys(def).length) { + return minimatch; + } + const orig = minimatch; + const m = (p, pattern, options2 = {}) => orig(p, pattern, ext(def, options2)); + return Object.assign(m, { + Minimatch: class Minimatch extends orig.Minimatch { + constructor(pattern, options2 = {}) { + super(pattern, ext(def, options2)); + } + static defaults(options2) { + return orig.defaults(ext(def, options2)).Minimatch; + } + }, + AST: class AST extends orig.AST { + /* c8 ignore start */ + constructor(type2, parent, options2 = {}) { + super(type2, parent, ext(def, options2)); + } + /* c8 ignore stop */ + static fromGlob(pattern, options2 = {}) { + return orig.AST.fromGlob(pattern, ext(def, options2)); + } + }, + unescape: (s, options2 = {}) => orig.unescape(s, ext(def, options2)), + escape: (s, options2 = {}) => orig.escape(s, ext(def, options2)), + filter: (pattern, options2 = {}) => orig.filter(pattern, ext(def, options2)), + defaults: (options2) => orig.defaults(ext(def, options2)), + makeRe: (pattern, options2 = {}) => orig.makeRe(pattern, ext(def, options2)), + braceExpand: (pattern, options2 = {}) => orig.braceExpand(pattern, ext(def, options2)), + match: (list, pattern, options2 = {}) => orig.match(list, pattern, ext(def, options2)), + sep: orig.sep, + GLOBSTAR + }); +}; +minimatch.defaults = defaults; +var braceExpand = (pattern, options2 = {}) => { + assertValidPattern(pattern); + if (options2.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) { + return [pattern]; + } + return (0, import_brace_expansion.default)(pattern); +}; +minimatch.braceExpand = braceExpand; +var makeRe = (pattern, options2 = {}) => new Minimatch(pattern, options2).makeRe(); +minimatch.makeRe = makeRe; +var match = (list, pattern, options2 = {}) => { + const mm = new Minimatch(pattern, options2); + list = list.filter((f) => mm.match(f)); + if (mm.options.nonull && !list.length) { + list.push(pattern); + } + return list; +}; +minimatch.match = match; +var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/; +var regExpEscape2 = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); +var Minimatch = class { + options; + set; + pattern; + windowsPathsNoEscape; + nonegate; + negate; + comment; + empty; + preserveMultipleSlashes; + partial; + globSet; + globParts; + nocase; + isWindows; + platform; + windowsNoMagicRoot; + regexp; + constructor(pattern, options2 = {}) { + assertValidPattern(pattern); + options2 = options2 || {}; + this.options = options2; + this.pattern = pattern; + this.platform = options2.platform || defaultPlatform; + this.isWindows = this.platform === "win32"; + this.windowsPathsNoEscape = !!options2.windowsPathsNoEscape || options2.allowWindowsEscape === false; + if (this.windowsPathsNoEscape) { + this.pattern = this.pattern.replace(/\\/g, "/"); + } + this.preserveMultipleSlashes = !!options2.preserveMultipleSlashes; + this.regexp = null; + this.negate = false; + this.nonegate = !!options2.nonegate; + this.comment = false; + this.empty = false; + this.partial = !!options2.partial; + this.nocase = !!this.options.nocase; + this.windowsNoMagicRoot = options2.windowsNoMagicRoot !== void 0 ? options2.windowsNoMagicRoot : !!(this.isWindows && this.nocase); + this.globSet = []; + this.globParts = []; + this.set = []; + this.make(); + } + hasMagic() { + if (this.options.magicalBraces && this.set.length > 1) { + return true; + } + for (const pattern of this.set) { + for (const part of pattern) { + if (typeof part !== "string") + return true; + } + } + return false; + } + debug(..._) { + } + make() { + const pattern = this.pattern; + const options2 = this.options; + if (!options2.nocomment && pattern.charAt(0) === "#") { + this.comment = true; + return; + } + if (!pattern) { + this.empty = true; + return; + } + this.parseNegate(); + this.globSet = [...new Set(this.braceExpand())]; + if (options2.debug) { + this.debug = (...args3) => console.error(...args3); + } + this.debug(this.pattern, this.globSet); + const rawGlobParts = this.globSet.map((s) => this.slashSplit(s)); + this.globParts = this.preprocess(rawGlobParts); + this.debug(this.pattern, this.globParts); + let set = this.globParts.map((s, _, __) => { + if (this.isWindows && this.windowsNoMagicRoot) { + const isUNC = s[0] === "" && s[1] === "" && (s[2] === "?" || !globMagic.test(s[2])) && !globMagic.test(s[3]); + const isDrive = /^[a-z]:/i.test(s[0]); + if (isUNC) { + return [...s.slice(0, 4), ...s.slice(4).map((ss) => this.parse(ss))]; + } else if (isDrive) { + return [s[0], ...s.slice(1).map((ss) => this.parse(ss))]; + } + } + return s.map((ss) => this.parse(ss)); + }); + this.debug(this.pattern, set); + this.set = set.filter((s) => s.indexOf(false) === -1); + if (this.isWindows) { + for (let i = 0; i < this.set.length; i++) { + const p = this.set[i]; + if (p[0] === "" && p[1] === "" && this.globParts[i][2] === "?" && typeof p[3] === "string" && /^[a-z]:$/i.test(p[3])) { + p[2] = "?"; + } + } + } + this.debug(this.pattern, this.set); + } + // various transforms to equivalent pattern sets that are + // faster to process in a filesystem walk. The goal is to + // eliminate what we can, and push all ** patterns as far + // to the right as possible, even if it increases the number + // of patterns that we have to process. + preprocess(globParts) { + if (this.options.noglobstar) { + for (let i = 0; i < globParts.length; i++) { + for (let j = 0; j < globParts[i].length; j++) { + if (globParts[i][j] === "**") { + globParts[i][j] = "*"; + } + } + } + } + const { optimizationLevel = 1 } = this.options; + if (optimizationLevel >= 2) { + globParts = this.firstPhasePreProcess(globParts); + globParts = this.secondPhasePreProcess(globParts); + } else if (optimizationLevel >= 1) { + globParts = this.levelOneOptimize(globParts); + } else { + globParts = this.adjascentGlobstarOptimize(globParts); + } + return globParts; + } + // just get rid of adjascent ** portions + adjascentGlobstarOptimize(globParts) { + return globParts.map((parts) => { + let gs = -1; + while (-1 !== (gs = parts.indexOf("**", gs + 1))) { + let i = gs; + while (parts[i + 1] === "**") { + i++; + } + if (i !== gs) { + parts.splice(gs, i - gs); + } + } + return parts; + }); + } + // get rid of adjascent ** and resolve .. portions + levelOneOptimize(globParts) { + return globParts.map((parts) => { + parts = parts.reduce((set, part) => { + const prev = set[set.length - 1]; + if (part === "**" && prev === "**") { + return set; + } + if (part === "..") { + if (prev && prev !== ".." && prev !== "." && prev !== "**") { + set.pop(); + return set; + } + } + set.push(part); + return set; + }, []); + return parts.length === 0 ? [""] : parts; + }); + } + levelTwoFileOptimize(parts) { + if (!Array.isArray(parts)) { + parts = this.slashSplit(parts); + } + let didSomething = false; + do { + didSomething = false; + if (!this.preserveMultipleSlashes) { + for (let i = 1; i < parts.length - 1; i++) { + const p = parts[i]; + if (i === 1 && p === "" && parts[0] === "") + continue; + if (p === "." || p === "") { + didSomething = true; + parts.splice(i, 1); + i--; + } + } + if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) { + didSomething = true; + parts.pop(); + } + } + let dd = 0; + while (-1 !== (dd = parts.indexOf("..", dd + 1))) { + const p = parts[dd - 1]; + if (p && p !== "." && p !== ".." && p !== "**") { + didSomething = true; + parts.splice(dd - 1, 2); + dd -= 2; + } + } + } while (didSomething); + return parts.length === 0 ? [""] : parts; + } + // First phase: single-pattern processing + //
 is 1 or more portions
+  //  is 1 or more portions
+  // 

is any portion other than ., .., '', or ** + // is . or '' + // + // **/.. is *brutal* for filesystem walking performance, because + // it effectively resets the recursive walk each time it occurs, + // and ** cannot be reduced out by a .. pattern part like a regexp + // or most strings (other than .., ., and '') can be. + // + //

/**/../

/

/ -> {

/../

/

/,

/**/

/

/} + //

// -> 
/
+  // 
/

/../ ->

/
+  // **/**/ -> **/
+  //
+  // **/*/ -> */**/ <== not valid because ** doesn't follow
+  // this WOULD be allowed if ** did follow symlinks, or * didn't
+  firstPhasePreProcess(globParts) {
+    let didSomething = false;
+    do {
+      didSomething = false;
+      for (let parts of globParts) {
+        let gs = -1;
+        while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
+          let gss = gs;
+          while (parts[gss + 1] === "**") {
+            gss++;
+          }
+          if (gss > gs) {
+            parts.splice(gs + 1, gss - gs);
+          }
+          let next = parts[gs + 1];
+          const p = parts[gs + 2];
+          const p2 = parts[gs + 3];
+          if (next !== "..")
+            continue;
+          if (!p || p === "." || p === ".." || !p2 || p2 === "." || p2 === "..") {
+            continue;
+          }
+          didSomething = true;
+          parts.splice(gs, 1);
+          const other = parts.slice(0);
+          other[gs] = "**";
+          globParts.push(other);
+          gs--;
+        }
+        if (!this.preserveMultipleSlashes) {
+          for (let i = 1; i < parts.length - 1; i++) {
+            const p = parts[i];
+            if (i === 1 && p === "" && parts[0] === "")
+              continue;
+            if (p === "." || p === "") {
+              didSomething = true;
+              parts.splice(i, 1);
+              i--;
+            }
+          }
+          if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
+            didSomething = true;
+            parts.pop();
+          }
+        }
+        let dd = 0;
+        while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
+          const p = parts[dd - 1];
+          if (p && p !== "." && p !== ".." && p !== "**") {
+            didSomething = true;
+            const needDot = dd === 1 && parts[dd + 1] === "**";
+            const splin = needDot ? ["."] : [];
+            parts.splice(dd - 1, 2, ...splin);
+            if (parts.length === 0)
+              parts.push("");
+            dd -= 2;
+          }
+        }
+      }
+    } while (didSomething);
+    return globParts;
+  }
+  // second phase: multi-pattern dedupes
+  // {
/*/,
/

/} ->

/*/
+  // {
/,
/} -> 
/
+  // {
/**/,
/} -> 
/**/
+  //
+  // {
/**/,
/**/

/} ->

/**/
+  // ^-- not valid because ** doens't follow symlinks
+  secondPhasePreProcess(globParts) {
+    for (let i = 0; i < globParts.length - 1; i++) {
+      for (let j = i + 1; j < globParts.length; j++) {
+        const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
+        if (!matched)
+          continue;
+        globParts[i] = matched;
+        globParts[j] = [];
+      }
+    }
+    return globParts.filter((gs) => gs.length);
+  }
+  partsMatch(a, b, emptyGSMatch = false) {
+    let ai = 0;
+    let bi = 0;
+    let result = [];
+    let which = "";
+    while (ai < a.length && bi < b.length) {
+      if (a[ai] === b[bi]) {
+        result.push(which === "b" ? b[bi] : a[ai]);
+        ai++;
+        bi++;
+      } else if (emptyGSMatch && a[ai] === "**" && b[bi] === a[ai + 1]) {
+        result.push(a[ai]);
+        ai++;
+      } else if (emptyGSMatch && b[bi] === "**" && a[ai] === b[bi + 1]) {
+        result.push(b[bi]);
+        bi++;
+      } else if (a[ai] === "*" && b[bi] && (this.options.dot || !b[bi].startsWith(".")) && b[bi] !== "**") {
+        if (which === "b")
+          return false;
+        which = "a";
+        result.push(a[ai]);
+        ai++;
+        bi++;
+      } else if (b[bi] === "*" && a[ai] && (this.options.dot || !a[ai].startsWith(".")) && a[ai] !== "**") {
+        if (which === "a")
+          return false;
+        which = "b";
+        result.push(b[bi]);
+        ai++;
+        bi++;
+      } else {
+        return false;
+      }
+    }
+    return a.length === b.length && result;
+  }
+  parseNegate() {
+    if (this.nonegate)
+      return;
+    const pattern = this.pattern;
+    let negate = false;
+    let negateOffset = 0;
+    for (let i = 0; i < pattern.length && pattern.charAt(i) === "!"; i++) {
+      negate = !negate;
+      negateOffset++;
+    }
+    if (negateOffset)
+      this.pattern = pattern.slice(negateOffset);
+    this.negate = negate;
+  }
+  // set partial to true to test if, for example,
+  // "/a/b" matches the start of "/*/b/*/d"
+  // Partial means, if you run out of file before you run
+  // out of pattern, then that's fine, as long as all
+  // the parts match.
+  matchOne(file, pattern, partial = false) {
+    const options2 = this.options;
+    if (this.isWindows) {
+      const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
+      const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
+      const patternDrive = typeof pattern[0] === "string" && /^[a-z]:$/i.test(pattern[0]);
+      const patternUNC = !patternDrive && pattern[0] === "" && pattern[1] === "" && pattern[2] === "?" && typeof pattern[3] === "string" && /^[a-z]:$/i.test(pattern[3]);
+      const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
+      const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
+      if (typeof fdi === "number" && typeof pdi === "number") {
+        const [fd, pd] = [file[fdi], pattern[pdi]];
+        if (fd.toLowerCase() === pd.toLowerCase()) {
+          pattern[pdi] = fd;
+          if (pdi > fdi) {
+            pattern = pattern.slice(pdi);
+          } else if (fdi > pdi) {
+            file = file.slice(fdi);
+          }
+        }
+      }
+    }
+    const { optimizationLevel = 1 } = this.options;
+    if (optimizationLevel >= 2) {
+      file = this.levelTwoFileOptimize(file);
+    }
+    this.debug("matchOne", this, { file, pattern });
+    this.debug("matchOne", file.length, pattern.length);
+    for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
+      this.debug("matchOne loop");
+      var p = pattern[pi];
+      var f = file[fi];
+      this.debug(pattern, p, f);
+      if (p === false) {
+        return false;
+      }
+      if (p === GLOBSTAR) {
+        this.debug("GLOBSTAR", [pattern, p, f]);
+        var fr = fi;
+        var pr = pi + 1;
+        if (pr === pl) {
+          this.debug("** at the end");
+          for (; fi < fl; fi++) {
+            if (file[fi] === "." || file[fi] === ".." || !options2.dot && file[fi].charAt(0) === ".")
+              return false;
+          }
+          return true;
+        }
+        while (fr < fl) {
+          var swallowee = file[fr];
+          this.debug("\nglobstar while", file, fr, pattern, pr, swallowee);
+          if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
+            this.debug("globstar found match!", fr, fl, swallowee);
+            return true;
+          } else {
+            if (swallowee === "." || swallowee === ".." || !options2.dot && swallowee.charAt(0) === ".") {
+              this.debug("dot detected!", file, fr, pattern, pr);
+              break;
+            }
+            this.debug("globstar swallow a segment, and continue");
+            fr++;
+          }
+        }
+        if (partial) {
+          this.debug("\n>>> no match, partial?", file, fr, pattern, pr);
+          if (fr === fl) {
+            return true;
+          }
+        }
+        return false;
+      }
+      let hit;
+      if (typeof p === "string") {
+        hit = f === p;
+        this.debug("string match", p, f, hit);
+      } else {
+        hit = p.test(f);
+        this.debug("pattern match", p, f, hit);
+      }
+      if (!hit)
+        return false;
+    }
+    if (fi === fl && pi === pl) {
+      return true;
+    } else if (fi === fl) {
+      return partial;
+    } else if (pi === pl) {
+      return fi === fl - 1 && file[fi] === "";
+    } else {
+      throw new Error("wtf?");
+    }
+  }
+  braceExpand() {
+    return braceExpand(this.pattern, this.options);
+  }
+  parse(pattern) {
+    assertValidPattern(pattern);
+    const options2 = this.options;
+    if (pattern === "**")
+      return GLOBSTAR;
+    if (pattern === "")
+      return "";
+    let m;
+    let fastTest = null;
+    if (m = pattern.match(starRE)) {
+      fastTest = options2.dot ? starTestDot : starTest;
+    } else if (m = pattern.match(starDotExtRE)) {
+      fastTest = (options2.nocase ? options2.dot ? starDotExtTestNocaseDot : starDotExtTestNocase : options2.dot ? starDotExtTestDot : starDotExtTest)(m[1]);
+    } else if (m = pattern.match(qmarksRE)) {
+      fastTest = (options2.nocase ? options2.dot ? qmarksTestNocaseDot : qmarksTestNocase : options2.dot ? qmarksTestDot : qmarksTest)(m);
+    } else if (m = pattern.match(starDotStarRE)) {
+      fastTest = options2.dot ? starDotStarTestDot : starDotStarTest;
+    } else if (m = pattern.match(dotStarRE)) {
+      fastTest = dotStarTest;
+    }
+    const re = AST.fromGlob(pattern, this.options).toMMPattern();
+    return fastTest ? Object.assign(re, { test: fastTest }) : re;
+  }
+  makeRe() {
+    if (this.regexp || this.regexp === false)
+      return this.regexp;
+    const set = this.set;
+    if (!set.length) {
+      this.regexp = false;
+      return this.regexp;
+    }
+    const options2 = this.options;
+    const twoStar = options2.noglobstar ? star2 : options2.dot ? twoStarDot : twoStarNoDot;
+    const flags2 = new Set(options2.nocase ? ["i"] : []);
+    let re = set.map((pattern) => {
+      const pp = pattern.map((p) => {
+        if (p instanceof RegExp) {
+          for (const f of p.flags.split(""))
+            flags2.add(f);
+        }
+        return typeof p === "string" ? regExpEscape2(p) : p === GLOBSTAR ? GLOBSTAR : p._src;
+      });
+      pp.forEach((p, i) => {
+        const next = pp[i + 1];
+        const prev = pp[i - 1];
+        if (p !== GLOBSTAR || prev === GLOBSTAR) {
+          return;
+        }
+        if (prev === void 0) {
+          if (next !== void 0 && next !== GLOBSTAR) {
+            pp[i + 1] = "(?:\\/|" + twoStar + "\\/)?" + next;
+          } else {
+            pp[i] = twoStar;
+          }
+        } else if (next === void 0) {
+          pp[i - 1] = prev + "(?:\\/|" + twoStar + ")?";
+        } else if (next !== GLOBSTAR) {
+          pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next;
+          pp[i + 1] = GLOBSTAR;
+        }
+      });
+      return pp.filter((p) => p !== GLOBSTAR).join("/");
+    }).join("|");
+    const [open, close] = set.length > 1 ? ["(?:", ")"] : ["", ""];
+    re = "^" + open + re + close + "$";
+    if (this.negate)
+      re = "^(?!" + re + ").+$";
+    try {
+      this.regexp = new RegExp(re, [...flags2].join(""));
+    } catch (ex) {
+      this.regexp = false;
+    }
+    return this.regexp;
+  }
+  slashSplit(p) {
+    if (this.preserveMultipleSlashes) {
+      return p.split("/");
+    } else if (this.isWindows && /^\/\/[^\/]+/.test(p)) {
+      return ["", ...p.split(/\/+/)];
+    } else {
+      return p.split(/\/+/);
+    }
+  }
+  match(f, partial = this.partial) {
+    this.debug("match", f, this.pattern);
+    if (this.comment) {
+      return false;
+    }
+    if (this.empty) {
+      return f === "";
+    }
+    if (f === "/" && partial) {
+      return true;
+    }
+    const options2 = this.options;
+    if (this.isWindows) {
+      f = f.split("\\").join("/");
+    }
+    const ff = this.slashSplit(f);
+    this.debug(this.pattern, "split", ff);
+    const set = this.set;
+    this.debug(this.pattern, "set", set);
+    let filename = ff[ff.length - 1];
+    if (!filename) {
+      for (let i = ff.length - 2; !filename && i >= 0; i--) {
+        filename = ff[i];
+      }
+    }
+    for (let i = 0; i < set.length; i++) {
+      const pattern = set[i];
+      let file = ff;
+      if (options2.matchBase && pattern.length === 1) {
+        file = [filename];
+      }
+      const hit = this.matchOne(file, pattern, partial);
+      if (hit) {
+        if (options2.flipNegate) {
+          return true;
+        }
+        return !this.negate;
+      }
+    }
+    if (options2.flipNegate) {
+      return false;
+    }
+    return this.negate;
+  }
+  static defaults(def) {
+    return minimatch.defaults(def).Minimatch;
+  }
+};
+minimatch.AST = AST;
+minimatch.Minimatch = Minimatch;
+minimatch.escape = escape2;
+minimatch.unescape = unescape2;
+
+// src/vscode-shim.ts
+var import_child_process = require("child_process");
+var import_path = __toESM(require("path"));
+
+// ../lib/shared/src/sourcegraph-api/graphql/client.ts
+var import_isomorphic_fetch = __toESM(require_fetch_npm_node());
+
+// ../lib/shared/src/tracing/index.ts
+var import_api = __toESM(require_src());
+var INSTRUMENTATION_SCOPE_NAME = "cody";
+var INSTRUMENTATION_SCOPE_VERSION = "0.1";
+var tracer = import_api.default.trace.getTracer(INSTRUMENTATION_SCOPE_NAME, INSTRUMENTATION_SCOPE_VERSION);
+function getActiveTraceAndSpanId() {
+  const activeSpan = import_api.default.trace.getActiveSpan();
+  if (activeSpan) {
+    const context2 = activeSpan.spanContext();
+    return {
+      traceId: context2.traceId,
+      spanId: context2.spanId
+    };
+  }
+  return void 0;
+}
+function startAsyncSpan(name, fn) {
+  return tracer.startActiveSpan(
+    name,
+    (span) => Promise.resolve(fn()).catch((error) => {
+      span.recordException(error);
+      span.setStatus({ code: import_api.SpanStatusCode.ERROR });
+      throw error;
+    }).finally(() => {
+      span.end();
+    })
+  );
+}
+function addTraceparent(headers) {
+  import_api.propagation.inject(import_api.context.active(), headers, {
+    set(carrier, key, value) {
+      carrier.set(key, value);
+    }
+  });
+}
+
+// ../lib/shared/src/utils.ts
+var isError2 = (value) => value instanceof Error;
+function convertGitCloneURLToCodebaseName(cloneURL) {
+  const result = convertGitCloneURLToCodebaseNameOrError(cloneURL);
+  if (isError2(result)) {
+    if (result.message) {
+      if (result.cause) {
+        console.error(result.message, result.cause);
+      } else {
+        console.error(result.message);
+      }
+    }
+    return null;
+  }
+  return result;
+}
+function convertGitCloneURLToCodebaseNameOrError(cloneURL) {
+  if (!cloneURL) {
+    return new Error(`Unable to determine the git clone URL for this workspace.
+git output: ${cloneURL}`);
+  }
+  try {
+    const match2 = cloneURL.match(/^[\w-]+@([^:]+):([\w-]+)\/([\w-]+)(\.git)?$/);
+    if (match2) {
+      const host = match2[1];
+      const owner = match2[2];
+      const repo = match2[3];
+      return `${host}/${owner}/${repo}`;
+    }
+    const uri = new URL(cloneURL);
+    if (uri.protocol.startsWith("github") || uri.href.startsWith("github")) {
+      return `github.com/${uri.pathname.replace(".git", "")}`;
+    }
+    if (uri.protocol.startsWith("gitlab") || uri.href.startsWith("gitlab")) {
+      return `gitlab.com/${uri.pathname.replace(".git", "")}`;
+    }
+    if (uri.protocol.startsWith("http") && uri.hostname && uri.pathname) {
+      return `${uri.hostname}${uri.pathname.replace(".git", "")}`;
+    }
+    if (uri.hostname && uri.pathname) {
+      return `${uri.hostname}${uri.pathname.replace(".git", "")}`;
+    }
+    return new Error("");
+  } catch (error) {
+    return new Error(`Cody could not extract repo name from clone URL ${cloneURL}:`, { cause: error });
+  }
+}
+
+// ../lib/shared/src/sourcegraph-api/environments.ts
+var DOTCOM_URL = new URL("https://sourcegraph.com");
+var INTERNAL_S2_URL = new URL("https://sourcegraph.sourcegraph.com/");
+var LOCAL_APP_URL = new URL("http://localhost:3080");
+function isLocalApp(url2) {
+  try {
+    return new URL(url2).origin === LOCAL_APP_URL.origin;
+  } catch {
+    return false;
+  }
+}
+function isDotCom(url2) {
+  try {
+    return new URL(url2).origin === DOTCOM_URL.origin;
+  } catch {
+    return false;
+  }
+}
+
+// ../lib/shared/src/sourcegraph-api/graphql/queries.ts
+var CURRENT_USER_ID_QUERY = `
+query CurrentUser {
+    currentUser {
+        id
+    }
+}`;
+var CURRENT_SITE_VERSION_QUERY = `
+query SiteProductVersion {
+    site {
+        productVersion
+    }
+}`;
+var CURRENT_SITE_HAS_CODY_ENABLED_QUERY = `
+query SiteHasCodyEnabled {
+    site {
+        isCodyEnabled
+    }
+}`;
+var CURRENT_SITE_GRAPHQL_FIELDS_QUERY = `
+query SiteGraphQLFields {
+    __type(name: "Site") {
+        fields {
+            name
+        }
+    }
+}`;
+var CURRENT_USER_ID_AND_VERIFIED_EMAIL_QUERY = `
+query CurrentUser {
+    currentUser {
+        id
+        hasVerifiedEmail
+    }
+}`;
+var CURRENT_USER_ID_AND_VERIFIED_EMAIL_AND_CODY_PRO_QUERY = `
+query CurrentUser {
+    currentUser {
+        id
+        hasVerifiedEmail
+        codyProEnabled
+    }
+}`;
+var CURRENT_SITE_CODY_LLM_PROVIDER = `
+query CurrentSiteCodyLlmConfiguration {
+    site {
+        codyLLMConfiguration {
+            provider
+        }
+    }
+}`;
+var CURRENT_SITE_CODY_LLM_CONFIGURATION = `
+query CurrentSiteCodyLlmConfiguration {
+    site {
+        codyLLMConfiguration {
+            chatModel
+            chatModelMaxTokens
+            fastChatModel
+            fastChatModelMaxTokens
+            completionModel
+            completionModelMaxTokens
+        }
+    }
+}`;
+var REPOSITORY_ID_QUERY = `
+query Repository($name: String!) {
+	repository(name: $name) {
+		id
+	}
+}`;
+var REPOSITORY_IDS_QUERY = `
+query Repositories($names: [String!]!, $first: Int!) {
+	repositories(names: $names, first: $first) {
+                nodes {
+		        id
+                        name
+                }
+	}
+}`;
+var REPOSITORY_NAMES_QUERY = `
+query Repositories($first: Int!) {
+	repositories(first: $first) {
+                nodes {
+		        id
+                        name
+                }
+	}
+}`;
+var REPOSITORY_EMBEDDING_EXISTS_QUERY = `
+query Repository($name: String!) {
+	repository(name: $name) {
+                id
+                embeddingExists
+	}
+}`;
+var GET_CODY_CONTEXT_QUERY = `
+query GetCodyContext($repos: [ID!]!, $query: String!, $codeResultsCount: Int!, $textResultsCount: Int!) {
+	getCodyContext(repos: $repos, query: $query, codeResultsCount: $codeResultsCount, textResultsCount: $textResultsCount) {
+                __typename
+		... on FileChunkContext {
+                        blob {
+                                path
+                                repository {
+                                        id
+                                        name
+                                }
+                                commit {
+                                        id
+                                        oid
+                                }
+                        }
+			startLine
+			endLine
+                        chunkContent
+		}
+	}
+}`;
+var SEARCH_EMBEDDINGS_QUERY = `
+query EmbeddingsSearch($repos: [ID!]!, $query: String!, $codeResultsCount: Int!, $textResultsCount: Int!) {
+	embeddingsMultiSearch(repos: $repos, query: $query, codeResultsCount: $codeResultsCount, textResultsCount: $textResultsCount) {
+		codeResults {
+                        repoName
+                        revision
+			fileName
+			startLine
+			endLine
+			content
+		}
+		textResults {
+                        repoName
+                        revision
+			fileName
+			startLine
+			endLine
+			content
+		}
+	}
+}`;
+var LEGACY_SEARCH_EMBEDDINGS_QUERY = `
+query LegacyEmbeddingsSearch($repo: ID!, $query: String!, $codeResultsCount: Int!, $textResultsCount: Int!) {
+	embeddingsSearch(repo: $repo, query: $query, codeResultsCount: $codeResultsCount, textResultsCount: $textResultsCount) {
+		codeResults {
+			fileName
+			startLine
+			endLine
+			content
+		}
+		textResults {
+			fileName
+			startLine
+			endLine
+			content
+		}
+	}
+}`;
+var SEARCH_ATTRIBUTION_QUERY = `
+query SnippetAttribution($snippet: String!) {
+    snippetAttribution(snippet: $snippet) {
+        limitHit
+        nodes {
+            repositoryName
+        }
+    }
+}`;
+var IS_CONTEXT_REQUIRED_QUERY = `
+query IsContextRequiredForChatQuery($query: String!) {
+	isContextRequiredForChatQuery(query: $query)
+}`;
+var LOG_EVENT_MUTATION_DEPRECATED = `
+mutation LogEventMutation($event: String!, $userCookieID: String!, $url: String!, $source: EventSource!, $argument: String, $publicArgument: String) {
+    logEvent(
+		event: $event
+		userCookieID: $userCookieID
+		url: $url
+		source: $source
+		argument: $argument
+		publicArgument: $publicArgument
+    ) {
+		alwaysNil
+	}
+}`;
+var LOG_EVENT_MUTATION = `
+mutation LogEventMutation($event: String!, $userCookieID: String!, $url: String!, $source: EventSource!, $argument: String, $publicArgument: String, $client: String, $connectedSiteID: String, $hashedLicenseKey: String) {
+    logEvent(
+		event: $event
+		userCookieID: $userCookieID
+		url: $url
+		source: $source
+		argument: $argument
+		publicArgument: $publicArgument
+		client: $client
+		connectedSiteID: $connectedSiteID
+		hashedLicenseKey: $hashedLicenseKey
+    ) {
+		alwaysNil
+	}
+}`;
+var RECORD_TELEMETRY_EVENTS_MUTATION = `
+mutation RecordTelemetryEvents($events: [TelemetryEventInput!]!) {
+	telemetry {
+		recordEvents(events: $events) {
+			alwaysNil
+		}
+	}
+}
+`;
+var CURRENT_SITE_IDENTIFICATION = `
+query SiteIdentification {
+	site {
+		siteID
+		productSubscription {
+			license {
+				hashedKey
+			}
+		}
+	}
+}`;
+var GET_FEATURE_FLAGS_QUERY = `
+    query FeatureFlags {
+        evaluatedFeatureFlags() {
+            name
+            value
+          }
+    }
+`;
+var EVALUATE_FEATURE_FLAG_QUERY = `
+    query EvaluateFeatureFlag($flagName: String!) {
+        evaluateFeatureFlag(flagName: $flagName)
+    }
+`;
+
+// ../lib/shared/src/sourcegraph-api/graphql/url.ts
+var import_lodash = __toESM(require_lodash());
+var GRAPHQL_URI = "/.api/graphql";
+var buildGraphQLUrl = ({ request, baseUrl }) => {
+  const nameMatch = request ? request.match(/^\s*(?:query|mutation)\s+(\w+)/) : "";
+  const apiURL = `${GRAPHQL_URI}${nameMatch ? "?" + nameMatch[1] : ""}`;
+  return baseUrl ? new URL((0, import_lodash.trimEnd)(baseUrl, "/") + apiURL).href : apiURL;
+};
+
+// ../lib/shared/src/sourcegraph-api/graphql/client.ts
+function extractDataOrError(response, extract) {
+  if (isError2(response)) {
+    return response;
+  }
+  if (response.errors && response.errors.length > 0) {
+    return new Error(response.errors.map(({ message }) => message).join(", "));
+  }
+  if (!response.data) {
+    return new Error("response is missing data");
+  }
+  return extract(response.data);
+}
+var customUserAgent;
+function addCustomUserAgent(headers) {
+  if (customUserAgent) {
+    headers.set("User-Agent", customUserAgent);
+  }
+}
+function setUserAgent(newUseragent) {
+  customUserAgent = newUseragent;
+}
+var QUERY_TO_NAME_REGEXP = /^\s*(?:query|mutation)\s+(\w+)/m;
+var SourcegraphGraphQLAPIClient = class {
+  dotcomUrl = DOTCOM_URL;
+  anonymousUserID;
+  /**
+   * Should be set on extension activation via `localStorage.onConfigurationChange(config)`
+   * Done to avoid passing the graphql client around as a parameter and instead
+   * access it as a singleton via the module import.
+   */
+  _config = null;
+  get config() {
+    if (!this._config) {
+      throw new Error("GraphQLAPIClientConfig is not set");
+    }
+    return this._config;
+  }
+  constructor(config = null) {
+    this._config = config;
+  }
+  onConfigurationChange(newConfig) {
+    this._config = newConfig;
+  }
+  /**
+   * If set, anonymousUID is trasmitted as 'X-Sourcegraph-Actor-Anonymous-UID'
+   * which is automatically picked up by Sourcegraph backends 5.2+
+   */
+  setAnonymousUserID(anonymousUID) {
+    this.anonymousUserID = anonymousUID;
+  }
+  isDotCom() {
+    return isDotCom(this.config.serverEndpoint);
+  }
+  isLocalApp() {
+    return isLocalApp(this.config.serverEndpoint);
+  }
+  // Gets the server endpoint for this client. The UI uses this to display
+  // which endpoint provides embeddings.
+  get endpoint() {
+    return this.config.serverEndpoint;
+  }
+  async getSiteVersion() {
+    return this.fetchSourcegraphAPI(CURRENT_SITE_VERSION_QUERY, {}).then(
+      (response) => extractDataOrError(response, (data) => data.site?.productVersion ?? new Error("site version not found"))
+    );
+  }
+  async getSiteIdentification() {
+    const response = await this.fetchSourcegraphAPI(
+      CURRENT_SITE_IDENTIFICATION,
+      {}
+    );
+    return extractDataOrError(
+      response,
+      (data) => data.site?.siteID ? data.site?.productSubscription?.license?.hashedKey ? {
+        siteid: data.site?.siteID,
+        hashedLicenseKey: data.site?.productSubscription?.license?.hashedKey
+      } : new Error("site hashed license key not found") : new Error("site ID not found")
+    );
+  }
+  async getSiteHasIsCodyEnabledField() {
+    return this.fetchSourcegraphAPI(
+      CURRENT_SITE_GRAPHQL_FIELDS_QUERY,
+      {}
+    ).then(
+      (response) => extractDataOrError(response, (data) => !!data.__type?.fields?.find((field) => field.name === "isCodyEnabled"))
+    );
+  }
+  async getSiteHasCodyEnabled() {
+    return this.fetchSourcegraphAPI(
+      CURRENT_SITE_HAS_CODY_ENABLED_QUERY,
+      {}
+    ).then((response) => extractDataOrError(response, (data) => data.site?.isCodyEnabled ?? false));
+  }
+  async getCurrentUserId() {
+    return this.fetchSourcegraphAPI(CURRENT_USER_ID_QUERY, {}).then(
+      (response) => extractDataOrError(
+        response,
+        (data) => data.currentUser ? data.currentUser.id : new Error("current user not found")
+      )
+    );
+  }
+  async getCurrentUserIdAndVerifiedEmail() {
+    return this.fetchSourcegraphAPI(
+      CURRENT_USER_ID_AND_VERIFIED_EMAIL_QUERY,
+      {}
+    ).then(
+      (response) => extractDataOrError(
+        response,
+        (data) => data.currentUser ? { ...data.currentUser } : new Error("current user not found with verified email")
+      )
+    );
+  }
+  async getCurrentUserIdAndVerifiedEmailAndCodyPro() {
+    return this.fetchSourcegraphAPI(
+      CURRENT_USER_ID_AND_VERIFIED_EMAIL_AND_CODY_PRO_QUERY,
+      {}
+    ).then(
+      (response) => extractDataOrError(
+        response,
+        (data) => data.currentUser ? { ...data.currentUser } : new Error("current user not found with verified email and cody pro")
+      )
+    );
+  }
+  async getCodyLLMConfiguration() {
+    const [configResponse, providerResponse] = await Promise.all([
+      this.fetchSourcegraphAPI(
+        CURRENT_SITE_CODY_LLM_CONFIGURATION
+      ),
+      this.fetchSourcegraphAPI(
+        CURRENT_SITE_CODY_LLM_PROVIDER
+      )
+    ]);
+    const config = extractDataOrError(configResponse, (data) => data.site?.codyLLMConfiguration || void 0);
+    if (!config || isError2(config)) {
+      return config;
+    }
+    let provider;
+    const llmProvider = extractDataOrError(providerResponse, (data) => data.site?.codyLLMConfiguration?.provider);
+    if (llmProvider && !isError2(llmProvider)) {
+      provider = llmProvider;
+    }
+    return { ...config, provider };
+  }
+  async getRepoIds(names) {
+    return this.fetchSourcegraphAPI(REPOSITORY_IDS_QUERY, {
+      names,
+      first: names.length
+    }).then((response) => extractDataOrError(response, (data) => data.repositories?.nodes));
+  }
+  async getRepoId(repoName) {
+    return this.fetchSourcegraphAPI(REPOSITORY_ID_QUERY, {
+      name: repoName
+    }).then((response) => extractDataOrError(response, (data) => data.repository ? data.repository.id : null));
+  }
+  async getRepoNames(first) {
+    return this.fetchSourcegraphAPI(REPOSITORY_NAMES_QUERY, { first }).then(
+      (response) => extractDataOrError(
+        response,
+        (data) => data?.repositories?.nodes?.map((node) => node?.name) || []
+      )
+    );
+  }
+  async getRepoIdIfEmbeddingExists(repoName) {
+    return this.fetchSourcegraphAPI(
+      REPOSITORY_EMBEDDING_EXISTS_QUERY,
+      {
+        name: repoName
+      }
+    ).then(
+      (response) => extractDataOrError(response, (data) => data.repository?.embeddingExists ? data.repository.id : null)
+    );
+  }
+  /**
+   * Checks if Cody is enabled on the current Sourcegraph instance.
+   * @returns
+   * enabled: Whether Cody is enabled.
+   * version: The Sourcegraph version.
+   *
+   * This method first checks the Sourcegraph version using `getSiteVersion()`.
+   * If the version is before 5.0.0, Cody is disabled.
+   * If the version is 5.0.0 or newer, it checks for the existence of the `isCodyEnabled` field using `getSiteHasIsCodyEnabledField()`.
+   * If the field exists, it calls `getSiteHasCodyEnabled()` to check its value.
+   * If the field does not exist, Cody is assumed to be enabled for versions between 5.0.0 - 5.1.0.
+   */
+  async isCodyEnabled() {
+    const siteVersion = await this.getSiteVersion();
+    if (isError2(siteVersion)) {
+      return { enabled: false, version: "unknown" };
+    }
+    const insiderBuild = siteVersion.length > 12 || siteVersion.includes("dev");
+    if (insiderBuild) {
+      return { enabled: true, version: siteVersion };
+    }
+    const versionBeforeCody = siteVersion < "5.0.0";
+    if (versionBeforeCody) {
+      return { enabled: false, version: siteVersion };
+    }
+    const betaVersion = siteVersion >= "5.0.0" && siteVersion < "5.1.0";
+    const hasIsCodyEnabledField = await this.getSiteHasIsCodyEnabledField();
+    if (!betaVersion && !isError2(hasIsCodyEnabledField) && hasIsCodyEnabledField) {
+      const siteHasCodyEnabled = await this.getSiteHasCodyEnabled();
+      return { enabled: !isError2(siteHasCodyEnabled) && siteHasCodyEnabled, version: siteVersion };
+    }
+    return { enabled: insiderBuild || betaVersion, version: siteVersion };
+  }
+  /**
+   * recordTelemetryEvents uses the new Telemetry API to record events that
+   * gets exported: https://docs.sourcegraph.com/dev/background-information/telemetry
+   *
+   * Only available on Sourcegraph 5.2.0 and later.
+   *
+   * DO NOT USE THIS DIRECTLY - use an implementation of implementation
+   * TelemetryRecorder from '@sourcegraph/telemetry' instead.
+   */
+  async recordTelemetryEvents(events) {
+    const initialResponse = await this.fetchSourcegraphAPI(RECORD_TELEMETRY_EVENTS_MUTATION, {
+      events
+    });
+    return extractDataOrError(initialResponse, (data) => data);
+  }
+  /**
+   * logEvent is the legacy event-logging mechanism.
+   * @deprecated use an implementation of implementation TelemetryRecorder
+   * from '@sourcegraph/telemetry' instead.
+   */
+  async logEvent(event, mode) {
+    if (process.env.CODY_TESTING === "true") {
+      return this.sendEventLogRequestToTestingAPI(event);
+    }
+    if (this.config?.telemetryLevel === "off") {
+      return {};
+    }
+    if (this.isDotCom()) {
+      return this.sendEventLogRequestToAPI(event);
+    }
+    switch (mode) {
+      case "dotcom-only":
+        return this.sendEventLogRequestToDotComAPI(event);
+      case "connected-instance-only":
+        return this.sendEventLogRequestToAPI(event);
+      case "all":
+    }
+    const responses = await Promise.all([
+      this.sendEventLogRequestToAPI(event),
+      this.sendEventLogRequestToDotComAPI(event)
+    ]);
+    if (isError2(responses[0]) && isError2(responses[1])) {
+      return new Error("Errors logging events: " + responses[0].toString() + ", " + responses[1].toString());
+    }
+    if (isError2(responses[0])) {
+      return responses[0];
+    }
+    if (isError2(responses[1])) {
+      return responses[1];
+    }
+    return {};
+  }
+  async sendEventLogRequestToDotComAPI(event) {
+    const response = await this.fetchSourcegraphDotcomAPI(LOG_EVENT_MUTATION, event);
+    return extractDataOrError(response, (data) => data);
+  }
+  async sendEventLogRequestToAPI(event) {
+    const initialResponse = await this.fetchSourcegraphAPI(LOG_EVENT_MUTATION, event);
+    const initialDataOrError = extractDataOrError(initialResponse, (data) => data);
+    if (isError2(initialDataOrError)) {
+      const secondResponse = await this.fetchSourcegraphAPI(
+        LOG_EVENT_MUTATION_DEPRECATED,
+        event
+      );
+      return extractDataOrError(secondResponse, (data) => data);
+    }
+    return initialDataOrError;
+  }
+  async sendEventLogRequestToTestingAPI(event) {
+    const initialResponse = await this.fetchSourcegraphTestingAPI(event);
+    const initialDataOrError = extractDataOrError(initialResponse, (data) => data);
+    if (isError2(initialDataOrError)) {
+      const secondResponse = await this.fetchSourcegraphTestingAPI(event);
+      return extractDataOrError(secondResponse, (data) => data);
+    }
+    return initialDataOrError;
+  }
+  async getCodyContext(repos, query, codeResultsCount, textResultsCount) {
+    return this.fetchSourcegraphAPI(GET_CODY_CONTEXT_QUERY, {
+      repos,
+      query,
+      codeResultsCount,
+      textResultsCount
+    }).then((response) => extractDataOrError(response, (data) => data.getCodyContext));
+  }
+  async searchEmbeddings(repos, query, codeResultsCount, textResultsCount) {
+    return this.fetchSourcegraphAPI(SEARCH_EMBEDDINGS_QUERY, {
+      repos,
+      query,
+      codeResultsCount,
+      textResultsCount
+    }).then((response) => extractDataOrError(response, (data) => data.embeddingsMultiSearch));
+  }
+  // (Naman): This is a temporary workaround for supporting vscode cody integrated with older version of sourcegraph which do not support the latest searchEmbeddings query.
+  async legacySearchEmbeddings(repo, query, codeResultsCount, textResultsCount) {
+    return this.fetchSourcegraphAPI(LEGACY_SEARCH_EMBEDDINGS_QUERY, {
+      repo,
+      query,
+      codeResultsCount,
+      textResultsCount
+    }).then((response) => extractDataOrError(response, (data) => data.embeddingsSearch));
+  }
+  async searchAttribution(snippet) {
+    return this.fetchSourcegraphAPI(SEARCH_ATTRIBUTION_QUERY, {
+      snippet
+    }).then((response) => extractDataOrError(response, (data) => data.snippetAttribution));
+  }
+  async isContextRequiredForQuery(query) {
+    return this.fetchSourcegraphAPI(IS_CONTEXT_REQUIRED_QUERY, {
+      query
+    }).then((response) => extractDataOrError(response, (data) => data.isContextRequiredForChatQuery));
+  }
+  async getEvaluatedFeatureFlags() {
+    return this.fetchSourcegraphAPI(GET_FEATURE_FLAGS_QUERY, {}).then(
+      (response) => extractDataOrError(
+        response,
+        (data) => data.evaluatedFeatureFlags.reduce(
+          (acc, { name, value }) => {
+            acc[name] = value;
+            return acc;
+          },
+          {}
+        )
+      )
+    );
+  }
+  async evaluateFeatureFlag(flagName) {
+    return this.fetchSourcegraphAPI(EVALUATE_FEATURE_FLAG_QUERY, {
+      flagName
+    }).then((response) => extractDataOrError(response, (data) => data.evaluateFeatureFlag));
+  }
+  fetchSourcegraphAPI(query, variables = {}) {
+    const headers = new Headers(this.config.customHeaders);
+    headers.set("Content-Type", "application/json; charset=utf-8");
+    if (this.config.accessToken) {
+      headers.set("Authorization", `token ${this.config.accessToken}`);
+    } else if (this.anonymousUserID) {
+      headers.set("X-Sourcegraph-Actor-Anonymous-UID", this.anonymousUserID);
+    }
+    addTraceparent(headers);
+    addCustomUserAgent(headers);
+    const queryName = query.match(QUERY_TO_NAME_REGEXP)?.[1];
+    const url2 = buildGraphQLUrl({ request: query, baseUrl: this.config.serverEndpoint });
+    return startAsyncSpan(
+      `graphql.fetch${queryName ? `.${queryName}` : ""}`,
+      () => (0, import_isomorphic_fetch.default)(url2, {
+        method: "POST",
+        body: JSON.stringify({ query, variables }),
+        headers
+      }).then(verifyResponseCode).then((response) => response.json()).catch((error) => {
+        return new Error(`accessing Sourcegraph GraphQL API: ${error} (${url2})`);
+      })
+    );
+  }
+  // make an anonymous request to the dotcom API
+  fetchSourcegraphDotcomAPI(query, variables) {
+    const url2 = buildGraphQLUrl({ request: query, baseUrl: this.dotcomUrl.href });
+    const headers = new Headers();
+    addCustomUserAgent(headers);
+    addTraceparent(headers);
+    const queryName = query.match(QUERY_TO_NAME_REGEXP)?.[1];
+    return startAsyncSpan(
+      `graphql.dotcom.fetch${queryName ? `.${queryName}` : ""}`,
+      () => (0, import_isomorphic_fetch.default)(url2, {
+        method: "POST",
+        body: JSON.stringify({ query, variables }),
+        headers
+      }).then(verifyResponseCode).then((response) => response.json()).catch((error) => new Error(`error fetching Sourcegraph GraphQL API: ${error} (${url2})`))
+    );
+  }
+  // make an anonymous request to the Testing API
+  fetchSourcegraphTestingAPI(body2) {
+    const url2 = "http://localhost:49300/.api/testLogging";
+    const headers = new Headers({
+      "Content-Type": "application/json"
+    });
+    addCustomUserAgent(headers);
+    return (0, import_isomorphic_fetch.default)(url2, {
+      method: "POST",
+      headers,
+      body: JSON.stringify(body2)
+    }).then(verifyResponseCode).then((response) => response.json()).catch((error) => new Error(`error fetching Testing Sourcegraph API: ${error} (${url2})`));
+  }
+};
+var graphqlClient = new SourcegraphGraphQLAPIClient();
+async function verifyResponseCode(response) {
+  if (!response.ok) {
+    const body2 = await response.text();
+    throw new Error(`HTTP status code ${response.status}${body2 ? `: ${body2}` : ""}`);
+  }
+  return response;
+}
+
+// ../lib/shared/src/experimentation/FeatureFlagProvider.ts
+var ONE_HOUR = 60 * 60 * 1e3;
+var FeatureFlagProvider = class {
+  constructor(apiClient) {
+    this.apiClient = apiClient;
+  }
+  featureFlags = {};
+  lastUpdated = 0;
+  getFromCache(flagName) {
+    const now = Date.now();
+    if (now - this.lastUpdated > ONE_HOUR) {
+      void this.refreshFeatureFlags();
+    }
+    return this.featureFlags[flagName];
+  }
+  async evaluateFeatureFlag(flagName) {
+    if (process.env.BENCHMARK_DISABLE_FEATURE_FLAGS) {
+      return false;
+    }
+    const cachedValue = this.getFromCache(flagName);
+    if (cachedValue !== void 0) {
+      return cachedValue;
+    }
+    const value = await this.apiClient.evaluateFeatureFlag(flagName);
+    this.featureFlags[flagName] = value === null || isError2(value) ? false : value;
+    return this.featureFlags[flagName];
+  }
+  syncAuthStatus() {
+    void this.refreshFeatureFlags();
+  }
+  async refreshFeatureFlags() {
+    const data = await this.apiClient.getEvaluatedFeatureFlags();
+    this.featureFlags = isError2(data) ? {} : data;
+    this.lastUpdated = Date.now();
+  }
+};
+var featureFlagProvider = new FeatureFlagProvider(graphqlClient);
+
+// ../vscode/src/testutils/uri.ts
+var import_vscode_uri = __toESM(require_umd());
+var Uri = class _Uri {
+  static parse(value, strict) {
+    return new _Uri(import_vscode_uri.URI.parse(value, strict));
+  }
+  static file(path30) {
+    return new _Uri(import_vscode_uri.URI.file(path30));
+  }
+  static joinPath(base, ...pathSegments) {
+    return new _Uri(import_vscode_uri.Utils.joinPath(base.uri, ...pathSegments));
+  }
+  static from(components) {
+    return new _Uri(import_vscode_uri.URI.from(components));
+  }
+  uri;
+  constructor(componentsOrUri) {
+    if (componentsOrUri instanceof import_vscode_uri.URI) {
+      this.uri = componentsOrUri;
+    } else {
+      this.uri = import_vscode_uri.URI.from(componentsOrUri);
+    }
+  }
+  get scheme() {
+    return this.uri.scheme;
+  }
+  get authority() {
+    return this.uri.authority;
+  }
+  get path() {
+    return this.uri.path;
+  }
+  get query() {
+    return this.uri.query;
+  }
+  get fragment() {
+    return this.uri.fragment;
+  }
+  get fsPath() {
+    return this.uri.fsPath;
+  }
+  with(change) {
+    return _Uri.from({
+      scheme: change.scheme || this.scheme,
+      authority: change.authority || this.authority,
+      path: change.path || this.path,
+      query: change.query || this.query,
+      fragment: change.fragment || this.fragment
+    });
+  }
+  toString(skipEncoding) {
+    return this.uri.toString(skipEncoding);
+  }
+  toJSON() {
+    return {
+      scheme: this.scheme,
+      authority: this.authority,
+      path: this.path,
+      query: this.query,
+      fragment: this.fragment
+    };
+  }
+};
+
+// ../vscode/src/testutils/mocks.ts
+var Disposable = class _Disposable {
+  constructor(callOnDispose) {
+    this.callOnDispose = callOnDispose;
+  }
+  static from(...disposableLikes) {
+    return new _Disposable(() => {
+      for (const disposable of disposableLikes) {
+        disposable.dispose();
+      }
+    });
+  }
+  dispose() {
+    this.callOnDispose();
+  }
+};
+var InlineCompletionTriggerKind = /* @__PURE__ */ ((InlineCompletionTriggerKind2) => {
+  InlineCompletionTriggerKind2[InlineCompletionTriggerKind2["Invoke"] = 0] = "Invoke";
+  InlineCompletionTriggerKind2[InlineCompletionTriggerKind2["Automatic"] = 1] = "Automatic";
+  return InlineCompletionTriggerKind2;
+})(InlineCompletionTriggerKind || {});
+var CodeLens = class {
+  constructor(range, command) {
+    this.range = range;
+    this.command = command;
+  }
+  isResolved = true;
+};
+var ThemeColor = class {
+  constructor(id) {
+    this.id = id;
+  }
+};
+var ThemeIcon = class _ThemeIcon {
+  constructor(id, color) {
+    this.id = id;
+    this.color = color;
+  }
+  static File = new _ThemeIcon("file");
+  static Folder = new _ThemeIcon("folder");
+};
+var MarkdownString = class {
+  constructor(value) {
+    this.value = value;
+  }
+  isTrusted;
+  supportThemeIcons;
+  supportHtml;
+  baseUri;
+  appendText() {
+    throw new Error("Method not implemented.");
+  }
+  appendMarkdown() {
+    throw new Error("Method not implemented.");
+  }
+  appendCodeblock() {
+    throw new Error("Method not implemented.");
+  }
+};
+var CodeAction = class {
+  constructor(title, kind) {
+    this.title = title;
+    this.kind = kind;
+  }
+  edit;
+  diagnostics;
+  command;
+  isPreferred;
+  disabled;
+};
+var CodeActionKind = class _CodeActionKind {
+  constructor(value) {
+    this.value = value;
+  }
+  static Empty = new _CodeActionKind("Empty");
+  static QuickFix = new _CodeActionKind("");
+  static Refactor = new _CodeActionKind("");
+  static RefactorExtract = new _CodeActionKind("");
+  static RefactorInline = new _CodeActionKind("");
+  static RefactorMove = new _CodeActionKind("");
+  static RefactorRewrite = new _CodeActionKind("");
+  static Source = new _CodeActionKind("");
+  static SourceOrganizeImports = new _CodeActionKind("");
+  static SourceFixAll = new _CodeActionKind("");
+};
+var QuickInputButtons = class {
+  static Back = { iconPath: Uri.parse("file://foobar") };
+};
+var TreeItem = class {
+  constructor(resourceUri, collapsibleState) {
+    this.resourceUri = resourceUri;
+    this.collapsibleState = collapsibleState;
+  }
+};
+var RelativePattern = class {
+  constructor(_base, pattern) {
+    this.pattern = pattern;
+    this.base = _base.toString();
+  }
+  baseUri = Uri.parse("file:///foobar");
+  base;
+};
+var Position = class _Position {
+  line;
+  character;
+  constructor(line, character) {
+    this.line = line;
+    this.character = character;
+  }
+  isAfter(other) {
+    return other.line < this.line || other.line === this.line && other.character < this.character;
+  }
+  isAfterOrEqual(other) {
+    return this.isAfter(other) || this.isEqual(other);
+  }
+  isBefore(other) {
+    return !this.isAfterOrEqual(other);
+  }
+  isBeforeOrEqual(other) {
+    return !this.isAfter(other);
+  }
+  isEqual(other) {
+    return this.line === other.line && this.character === other.character;
+  }
+  translate(arg, characterDelta) {
+    const lineDelta = typeof arg === "number" ? arg : arg?.lineDelta;
+    characterDelta = arg && typeof arg !== "number" ? arg.characterDelta : characterDelta;
+    return new _Position(this.line + (lineDelta || 0), this.character + (characterDelta || 0));
+  }
+  with(arg, character) {
+    const line = typeof arg === "number" ? arg : arg?.line;
+    character = arg && typeof arg !== "number" ? arg.character : character;
+    return new _Position(this.line + (line || 0), this.character + (character || 0));
+  }
+  compareTo(other) {
+    return this.isBefore(other) ? -1 : this.isAfter(other) ? 1 : 0;
+  }
+};
+var Location = class {
+  constructor(uri, rangeOrPosition) {
+    this.uri = uri;
+    if ("line" in rangeOrPosition && "character" in rangeOrPosition) {
+      this.range = new Range(rangeOrPosition, rangeOrPosition);
+    } else {
+      this.range = rangeOrPosition;
+    }
+  }
+  range;
+};
+var Range = class _Range {
+  start;
+  end;
+  constructor(startLine, startCharacter, endLine, endCharacter) {
+    if (typeof startLine !== "number" && typeof startCharacter !== "number") {
+      this.start = startLine;
+      this.end = startCharacter;
+    } else if (typeof startLine === "number" && typeof startCharacter === "number" && typeof endLine === "number" && typeof endCharacter === "number") {
+      this.start = new Position(startLine, startCharacter);
+      this.end = new Position(endLine, endCharacter);
+    } else {
+      throw new TypeError("this version of the constructor is not implemented");
+    }
+  }
+  with(arg, end) {
+    const start4 = arg && ("start" in arg || "end" in arg) ? arg.start : arg;
+    end = arg && "end" in arg ? arg.end : end;
+    return new _Range(start4 || this.start, end || this.end);
+  }
+  get startLine() {
+    return this.start.line;
+  }
+  get startCharacter() {
+    return this.start.character;
+  }
+  get endLine() {
+    return this.end.line;
+  }
+  get endCharacter() {
+    return this.end.character;
+  }
+  isEqual(other) {
+    return this.start.isEqual(other.start) && this.end.isEqual(other.end);
+  }
+  get isEmpty() {
+    return this.start.isEqual(this.end);
+  }
+  get isSingleLine() {
+    return this.start.line === this.end.line;
+  }
+  contains(positionOrRange) {
+    if ("line" in positionOrRange) {
+      return positionOrRange.line >= this.start.line && positionOrRange.line <= this.end.line && positionOrRange.character >= this.start.character && positionOrRange.character <= this.end.character;
+    }
+    throw new Error("not implemented");
+  }
+  intersection() {
+    throw new Error("not implemented");
+  }
+  union() {
+    throw new Error("not implemented");
+  }
+};
+var Selection = class extends Range {
+  constructor(anchor, active) {
+    super(anchor, active);
+    this.anchor = anchor;
+    this.active = active;
+  }
+  /**
+   * Create a selection from four coordinates.
+   * @param anchorLine A zero-based line value.
+   * @param anchorCharacter A zero-based character value.
+   * @param activeLine A zero-based line value.
+   * @param activeCharacter A zero-based character value.
+   */
+  // constructor(anchorLine: number, anchorCharacter: number, activeLine: number, activeCharacter: number) {}
+  /**
+   * A selection is reversed if its {@link Selection.anchor anchor} is the {@link Selection.end end} position.
+   */
+  isReversed = false;
+};
+var InlineCompletionItem = class {
+  insertText;
+  range;
+  constructor(content, range) {
+    this.insertText = content;
+    this.range = range;
+  }
+};
+var WorkspaceEdit = class {
+  delete(uri, range) {
+    return range;
+  }
+  insert(uri, position, content) {
+    return content;
+  }
+};
+function invokeCallback(callback, arg) {
+  return callback.thisArg ? callback.handler.bind(callback.thisArg)(arg) : callback.handler(arg);
+}
+var emptyDisposable = new Disposable(() => {
+});
+var EventEmitter = class {
+  on = () => void 0;
+  constructor() {
+    this.on = () => void 0;
+  }
+  listeners = /* @__PURE__ */ new Set();
+  event = (listener, thisArgs) => {
+    const value = { handler: listener, thisArg: thisArgs };
+    this.listeners.add(value);
+    return new Disposable(() => {
+      this.listeners.delete(value);
+    });
+  };
+  fire(data) {
+    for (const listener of this.listeners) {
+      invokeCallback(listener, data);
+    }
+  }
+  dispose() {
+    this.listeners.clear();
+  }
+};
+var CancellationToken = class {
+  isCancellationRequested = false;
+  emitter = new EventEmitter();
+  constructor() {
+    this.emitter.event(() => {
+      this.isCancellationRequested = true;
+    });
+  }
+  onCancellationRequested = this.emitter.event;
+};
+var CancellationTokenSource = class {
+  token = new CancellationToken();
+  cancel() {
+    if (!this.token.isCancellationRequested) {
+      this.token.emitter.fire();
+    }
+  }
+  dispose() {
+    this.token.emitter.dispose();
+  }
+};
+function emptyEvent() {
+  return () => emptyDisposable;
+}
+var MockFeatureFlagProvider = class extends FeatureFlagProvider {
+  constructor(enabledFlags) {
+    super(null);
+    this.enabledFlags = enabledFlags;
+  }
+  evaluateFeatureFlag(flag) {
+    return Promise.resolve(this.enabledFlags.has(flag));
+  }
+  syncAuthStatus() {
+    return;
+  }
+};
+var emptyMockFeatureFlagProvider = new MockFeatureFlagProvider(/* @__PURE__ */ new Set());
+var decGaMockFeatureFlagProvider = new MockFeatureFlagProvider(/* @__PURE__ */ new Set(["cody-pro" /* CodyPro */]));
+
+// src/AgentTabGroups.ts
+var AgentTabGroups = class {
+  constructor() {
+    this.all = [];
+    this.activeTabGroup = { activeTab: void 0, isActive: true, tabs: [], viewColumn: 1 };
+    this.onDidChangeTabGroups = emptyEvent();
+    this.onDidChangeTabs = emptyEvent();
+  }
+  close() {
+    throw new Error("Method not implemented.");
+  }
+};
+
+// src/vscode-shim.ts
+var isTesting = process.env.CODY_SHIM_TESTING === "true";
+var emptyFileWatcher = {
+  onDidChange: emptyEvent(),
+  onDidCreate: emptyEvent(),
+  onDidDelete: emptyEvent(),
+  ignoreChangeEvents: true,
+  ignoreCreateEvents: true,
+  ignoreDeleteEvents: true,
+  dispose() {
+  }
+};
+var clientInfo;
+function setClientInfo(newClientInfo) {
+  clientInfo = newClientInfo;
+  if (newClientInfo.extensionConfiguration) {
+    setConnectionConfig(newClientInfo.extensionConfiguration);
+  }
+}
+var connectionConfig;
+function setConnectionConfig(newConfig) {
+  connectionConfig = newConfig;
+}
+function isAuthenticationChange(newConfig) {
+  if (!connectionConfig) {
+    return true;
+  }
+  return connectionConfig.accessToken !== newConfig.accessToken || connectionConfig.serverEndpoint !== newConfig.serverEndpoint;
+}
+var configuration = {
+  has(section) {
+    return true;
+  },
+  get: (section, defaultValue) => {
+    const clientNameToIDE = (value) => {
+      return {
+        vscode: "VSCode",
+        jetbrains: "JetBrains",
+        emacs: "Emacs",
+        neovim: "Neovim"
+      }[value.toLowerCase()];
+    };
+    const fromCustomConfiguration = connectionConfig?.customConfiguration?.[section];
+    if (fromCustomConfiguration !== void 0) {
+      return fromCustomConfiguration;
+    }
+    switch (section) {
+      case "cody.serverEndpoint":
+        return connectionConfig?.serverEndpoint;
+      case "cody.proxy":
+        return connectionConfig?.proxy ?? null;
+      case "cody.customHeaders":
+        return connectionConfig?.customHeaders;
+      case "cody.telemetry.level":
+        return "off";
+      case "cody.autocomplete.enabled":
+        return true;
+      case "cody.autocomplete.advanced.provider":
+        return connectionConfig?.autocompleteAdvancedProvider ?? null;
+      case "cody.autocomplete.advanced.serverEndpoint":
+        return connectionConfig?.autocompleteAdvancedServerEndpoint ?? null;
+      case "cody.autocomplete.advanced.model":
+        return connectionConfig?.autocompleteAdvancedModel ?? null;
+      case "cody.autocomplete.advanced.accessToken":
+        return connectionConfig?.autocompleteAdvancedAccessToken ?? null;
+      case "cody.advanced.agent.running":
+        return true;
+      case "cody.debug.enable":
+        return connectionConfig?.debug ?? false;
+      case "cody.debug.verbose":
+        return connectionConfig?.verboseDebug ?? false;
+      case "cody.autocomplete.experimental.syntacticPostProcessing":
+        return false;
+      case "cody.codebase":
+        return connectionConfig?.codebase;
+      case "cody.advanced.agent.ide":
+        return clientNameToIDE(clientInfo?.name ?? "");
+      default:
+        return defaultValue;
+    }
+  },
+  update(section, value, configurationTarget, overrideInLanguage) {
+    return Promise.resolve();
+  },
+  inspect(section) {
+    return void 0;
+  }
+};
+var onDidChangeActiveTextEditor = new EventEmitter();
+var onDidChangeConfiguration = new EventEmitter();
+var onDidOpenTextDocument = new EventEmitter();
+var onDidChangeTextDocument = new EventEmitter();
+var onDidCloseTextDocument = new EventEmitter();
+var onDidSaveTextDocument = new EventEmitter();
+var onDidRenameFiles = new EventEmitter();
+var onDidDeleteFiles = new EventEmitter();
+var workspaceDocuments;
+function setWorkspaceDocuments(newWorkspaceDocuments) {
+  workspaceDocuments = newWorkspaceDocuments;
+  if (newWorkspaceDocuments.workspaceRootUri) {
+    workspaceFolders.push({ name: "Workspace Root", uri: newWorkspaceDocuments.workspaceRootUri, index: 0 });
+  }
+}
+var workspaceFolders = [];
+var _workspace = {
+  openTextDocument: (uriOrString) => {
+    if (!workspaceDocuments) {
+      return Promise.reject(new Error("workspaceDocuments is uninitialized"));
+    }
+    if (typeof uriOrString === "string") {
+      return workspaceDocuments.openTextDocument(Uri.file(uriOrString));
+    }
+    if (uriOrString instanceof Uri) {
+      return workspaceDocuments.openTextDocument(uriOrString);
+    }
+    return Promise.reject(
+      new Error(`workspace.openTextDocument:unsupported argument ${JSON.stringify(uriOrString)}`)
+    );
+  },
+  workspaceFolders,
+  getWorkspaceFolder: () => {
+    if (workspaceDocuments?.workspaceRootUri === void 0) {
+      throw new Error(
+        "workspaceDocuments is undefined. To fix this problem, make sure that the agent has been initialized."
+      );
+    }
+    return {
+      uri: workspaceDocuments.workspaceRootUri,
+      index: 0,
+      name: workspaceDocuments.workspaceRootUri?.path
+    };
+  },
+  onDidChangeWorkspaceFolders: () => ({}),
+  onDidOpenTextDocument: onDidOpenTextDocument.event,
+  onDidChangeConfiguration: onDidChangeConfiguration.event,
+  onDidChangeTextDocument: onDidChangeTextDocument.event,
+  onDidCloseTextDocument: onDidCloseTextDocument.event,
+  onDidSaveTextDocument: onDidSaveTextDocument.event,
+  onDidRenameFiles: onDidRenameFiles.event,
+  onDidDeleteFiles: onDidDeleteFiles.event,
+  registerTextDocumentContentProvider: () => emptyDisposable,
+  asRelativePath: (pathOrUri, includeWorkspaceFolder) => {
+    const uri = typeof pathOrUri === "string" ? Uri.file(pathOrUri) : pathOrUri instanceof Uri ? pathOrUri : void 0;
+    if (uri === void 0) {
+      return `${pathOrUri}`;
+    }
+    const relativePath = workspaceDocuments?.workspaceRootUri?.fsPath ? import_path.default.relative(workspaceDocuments?.workspaceRootUri?.path ?? "", uri.path) : uri.path;
+    if (isTesting) {
+      return relativePath.replaceAll("\\", "/");
+    }
+    return relativePath;
+  },
+  createFileSystemWatcher: () => emptyFileWatcher,
+  getConfiguration: () => configuration
+};
+var workspace = _workspace;
+var statusBarItem = {
+  show: () => {
+  }
+};
+var visibleTextEditors = [];
+var tabGroups = new AgentTabGroups();
+var agent;
+function setAgent(newAgent) {
+  agent = newAgent;
+}
+var _window = {
+  createTreeView: () => ({ visible: false }),
+  tabGroups,
+  registerCustomEditorProvider: () => emptyDisposable,
+  registerFileDecorationProvider: () => emptyDisposable,
+  registerTerminalLinkProvider: () => emptyDisposable,
+  registerTerminalProfileProvider: () => emptyDisposable,
+  registerTreeDataProvider: () => emptyDisposable,
+  registerWebviewPanelSerializer: () => emptyDisposable,
+  onDidChangeTextEditorVisibleRanges: emptyEvent(),
+  onDidChangeActiveColorTheme: emptyEvent(),
+  onDidChangeActiveNotebookEditor: emptyEvent(),
+  onDidChangeActiveTerminal: emptyEvent(),
+  onDidChangeNotebookEditorSelection: emptyEvent(),
+  onDidChangeNotebookEditorVisibleRanges: emptyEvent(),
+  onDidChangeTerminalState: emptyEvent(),
+  onDidChangeTextEditorOptions: emptyEvent(),
+  onDidChangeTextEditorViewColumn: emptyEvent(),
+  onDidChangeVisibleNotebookEditors: emptyEvent(),
+  onDidChangeWindowState: emptyEvent(),
+  onDidCloseTerminal: emptyEvent(),
+  onDidOpenTerminal: emptyEvent(),
+  registerUriHandler: () => emptyDisposable,
+  registerWebviewViewProvider: () => emptyDisposable,
+  createStatusBarItem: () => statusBarItem,
+  visibleTextEditors,
+  withProgress: (_, handler) => handler({ report: () => {
+  } }, "window.withProgress.cancelationToken"),
+  onDidChangeActiveTextEditor: onDidChangeActiveTextEditor.event,
+  onDidChangeVisibleTextEditors: () => ({}),
+  onDidChangeTextEditorSelection: () => ({}),
+  showErrorMessage: (message, ...items) => {
+    if (agent) {
+      agent.notify("debug/message", { channel: "window.showErrorMessage", message });
+    }
+    return Promise.resolve(void 0);
+  },
+  showWarningMessage: (message, ...items) => {
+    if (agent) {
+      agent.notify("debug/message", { channel: "window.showWarningMessage", message });
+    }
+    return Promise.resolve(void 0);
+  },
+  showInformationMessage: (message, ...items) => {
+    if (agent) {
+      agent.notify("debug/message", { channel: "window.showInformationMessage", message });
+    }
+    return Promise.resolve(void 0);
+  },
+  createOutputChannel: (name) => ({
+    name,
+    append: (message) => {
+      if (agent) {
+        agent.notify("debug/message", { channel: name, message });
+      }
+    },
+    appendLine: (message) => {
+      if (agent) {
+        agent.notify("debug/message", { channel: name, message });
+      }
+    },
+    replace: (message) => {
+      if (agent) {
+        agent.notify("debug/message", { channel: name, message });
+      }
+    },
+    clear: () => {
+    },
+    show: () => {
+    },
+    hide: () => {
+    },
+    dispose: () => {
+    }
+  }),
+  createTextEditorDecorationType: () => ({ key: "foo", dispose: () => {
+  } })
+};
+var window2 = _window;
+var gitRepositories = [];
+function addGitRepository(uri, headCommit) {
+  const repository = {
+    rootUri: uri,
+    ui: {},
+    state: {
+      refs: [],
+      indexChanges: [],
+      mergeChanges: [],
+      onDidChange: emptyEvent(),
+      remotes: [],
+      submodules: [],
+      workingTreeChanges: [],
+      rebaseCommit: void 0,
+      HEAD: {
+        type: (
+          /* RefType.Head */
+          0
+        ),
+        // Can't reference RefType.Head because it's from a d.ts file
+        commit: headCommit
+      }
+    }
+  };
+  gitRepositories.push(repository);
+}
+var gitExtension = {
+  isActive: true,
+  exports: {
+    enabled: true,
+    onDidChangeEnablement: emptyEvent(),
+    getAPI(version4) {
+      const api = {
+        repositories: gitRepositories,
+        onDidChangeState: emptyEvent(),
+        onDidCloseRepository: emptyEvent(),
+        onDidOpenRepository: emptyEvent(),
+        onDidPublish: emptyEvent(),
+        getRepository(uri) {
+          const cwd = workspaceDocuments?.workspaceRootUri?.fsPath;
+          if (!cwd) {
+            return null;
+          }
+          try {
+            const toplevel = (0, import_child_process.execSync)("git rev-parse --show-toplevel", { cwd }).toString().trim();
+            const repository = {
+              rootUri: Uri.file(toplevel),
+              state: {
+                remotes: []
+              }
+            };
+            return repository;
+          } catch {
+            return null;
+          }
+        }
+      };
+      return api;
+    }
+  }
+};
+var _extensions = {
+  getExtension: (extensionId) => {
+    const shouldActivateGitExtension = clientInfo !== void 0 && clientInfo?.capabilities?.git !== "disabled";
+    if (shouldActivateGitExtension && extensionId === "vscode.git") {
+      return gitExtension;
+    }
+    return void 0;
+  }
+};
+var extensions = _extensions;
+var registeredCommands = /* @__PURE__ */ new Map();
+var _commands = {
+  registerCommand: (command, callback, thisArg) => {
+    const value = { command, callback, thisArg };
+    registeredCommands.set(command, value);
+    return new Disposable(() => {
+      const registered = registeredCommands.get(command);
+      if (registered === value) {
+        registeredCommands.delete(command);
+      }
+    });
+  },
+  executeCommand: (command, args3) => {
+    const registered = registeredCommands.get(command);
+    if (registered) {
+      try {
+        if (args3) {
+          return promisify(registered.callback(...args3));
+        }
+        return promisify(registered.callback());
+      } catch (error) {
+        console.error(error);
+      }
+    }
+    return Promise.resolve(void 0);
+  }
+};
+function promisify(value) {
+  return value instanceof Promise ? value : Promise.resolve(value);
+}
+var commands = _commands;
+var _env = {
+  uriScheme: "file",
+  appRoot: process.cwd(),
+  uiKind: 2 /* Web */,
+  language: process.env.language,
+  clipboard: {
+    readText: () => Promise.resolve(""),
+    writeText: () => Promise.resolve()
+  }
+};
+var env2 = _env;
+var latestCompletionProvider;
+var resolveFirstCompletionProvider = () => {
+};
+var firstCompletionProvider = new Promise((resolve8) => {
+  resolveFirstCompletionProvider = resolve8;
+});
+function completionProvider() {
+  if (latestCompletionProvider) {
+    return Promise.resolve(latestCompletionProvider);
+  }
+  return firstCompletionProvider;
+}
+var _languages = {
+  getLanguages: () => Promise.resolve([]),
+  registerCodeActionsProvider: () => emptyDisposable,
+  registerCodeLensProvider: () => emptyDisposable,
+  registerInlineCompletionItemProvider: (_selector, provider) => {
+    latestCompletionProvider = provider;
+    resolveFirstCompletionProvider(provider);
+    return emptyDisposable;
+  }
+};
+var languages = _languages;
+var commentController = {
+  createCommentThread(uri, range, comments2) {
+    return "createCommentThread";
+  },
+  id: "commentController.id",
+  label: "commentController.label",
+  dispose: () => {
+  }
+};
+var _comments = {
+  createCommentController: () => commentController
+};
+var comments = _comments;
+
+// src/agent.ts
+var import_child_process8 = require("child_process");
+var fspromises3 = __toESM(require("fs/promises"));
+var import_path22 = __toESM(require("path"));
+
+// ../node_modules/.pnpm/env-paths@3.0.0/node_modules/env-paths/index.js
+var import_node_path = __toESM(require("node:path"), 1);
+var import_node_os = __toESM(require("node:os"), 1);
+var import_node_process = __toESM(require("node:process"), 1);
+var homedir = import_node_os.default.homedir();
+var tmpdir = import_node_os.default.tmpdir();
+var { env: env3 } = import_node_process.default;
+var macos = (name) => {
+  const library = import_node_path.default.join(homedir, "Library");
+  return {
+    data: import_node_path.default.join(library, "Application Support", name),
+    config: import_node_path.default.join(library, "Preferences", name),
+    cache: import_node_path.default.join(library, "Caches", name),
+    log: import_node_path.default.join(library, "Logs", name),
+    temp: import_node_path.default.join(tmpdir, name)
+  };
+};
+var windows = (name) => {
+  const appData = env3.APPDATA || import_node_path.default.join(homedir, "AppData", "Roaming");
+  const localAppData = env3.LOCALAPPDATA || import_node_path.default.join(homedir, "AppData", "Local");
+  return {
+    // Data/config/cache/log are invented by me as Windows isn't opinionated about this
+    data: import_node_path.default.join(localAppData, name, "Data"),
+    config: import_node_path.default.join(appData, name, "Config"),
+    cache: import_node_path.default.join(localAppData, name, "Cache"),
+    log: import_node_path.default.join(localAppData, name, "Log"),
+    temp: import_node_path.default.join(tmpdir, name)
+  };
+};
+var linux = (name) => {
+  const username = import_node_path.default.basename(homedir);
+  return {
+    data: import_node_path.default.join(env3.XDG_DATA_HOME || import_node_path.default.join(homedir, ".local", "share"), name),
+    config: import_node_path.default.join(env3.XDG_CONFIG_HOME || import_node_path.default.join(homedir, ".config"), name),
+    cache: import_node_path.default.join(env3.XDG_CACHE_HOME || import_node_path.default.join(homedir, ".cache"), name),
+    // https://wiki.debian.org/XDGBaseDirectorySpecification#state
+    log: import_node_path.default.join(env3.XDG_STATE_HOME || import_node_path.default.join(homedir, ".local", "state"), name),
+    temp: import_node_path.default.join(tmpdir, username, name)
+  };
+};
+function envPaths(name, { suffix = "nodejs" } = {}) {
+  if (typeof name !== "string") {
+    throw new TypeError(`Expected a string, got ${typeof name}`);
+  }
+  if (suffix) {
+    name += `-${suffix}`;
+  }
+  if (import_node_process.default.platform === "darwin") {
+    return macos(name);
+  }
+  if (import_node_process.default.platform === "win32") {
+    return windows(name);
+  }
+  return linux(name);
+}
+
+// ../lib/shared/dist/utils.js
+var isError3 = (value) => value instanceof Error;
+function convertGitCloneURLToCodebaseName2(cloneURL) {
+  const result = convertGitCloneURLToCodebaseNameOrError2(cloneURL);
+  if (isError3(result)) {
+    if (result.message) {
+      if (result.cause) {
+        console.error(result.message, result.cause);
+      } else {
+        console.error(result.message);
+      }
+    }
+    return null;
+  }
+  return result;
+}
+function convertGitCloneURLToCodebaseNameOrError2(cloneURL) {
+  if (!cloneURL) {
+    return new Error(`Unable to determine the git clone URL for this workspace.
+git output: ${cloneURL}`);
+  }
+  try {
+    const match2 = cloneURL.match(/^[\w-]+@([^:]+):([\w-]+)\/([\w-]+)(\.git)?$/);
+    if (match2) {
+      const host = match2[1];
+      const owner = match2[2];
+      const repo = match2[3];
+      return `${host}/${owner}/${repo}`;
+    }
+    const uri = new URL(cloneURL);
+    if (uri.protocol.startsWith("github") || uri.href.startsWith("github")) {
+      return `github.com/${uri.pathname.replace(".git", "")}`;
+    }
+    if (uri.protocol.startsWith("gitlab") || uri.href.startsWith("gitlab")) {
+      return `gitlab.com/${uri.pathname.replace(".git", "")}`;
+    }
+    if (uri.protocol.startsWith("http") && uri.hostname && uri.pathname) {
+      return `${uri.hostname}${uri.pathname.replace(".git", "")}`;
+    }
+    if (uri.hostname && uri.pathname) {
+      return `${uri.hostname}${uri.pathname.replace(".git", "")}`;
+    }
+    return new Error("");
+  } catch (error) {
+    return new Error(`Cody could not extract repo name from clone URL ${cloneURL}:`, { cause: error });
+  }
+}
+
+// ../lib/shared/src/prompt/templates.ts
+var import_path4 = __toESM(require("path"));
+
+// ../lib/shared/src/chat/recipes/helpers.ts
+var import_path3 = __toESM(require("path"));
+
+// ../lib/shared/src/codebase-context/messages.ts
+function getContextMessageWithResponse(text, file, response = "Ok.", source2 = "editor") {
+  file.source = file.source || source2;
+  return [
+    { speaker: "human", text, file },
+    { speaker: "assistant", text: response }
+  ];
+}
+function createContextMessageByFile(file, content) {
+  const code = content || file.content;
+  if (!code) {
+    return [];
+  }
+  const fileMessage = `Context from file path @${file.fileName}:
+${code}`;
+  const symbolMessage = `$${file.fileName} is a ${file.kind} symbol from file path @${file.uri?.fsPath}:
+${code}`;
+  const text = file.type === "symbol" ? symbolMessage : fileMessage;
+  return [
+    { speaker: "human", text, file },
+    { speaker: "assistant", text: "OK." }
+  ];
+}
+
+// ../lib/shared/src/prompt/constants.ts
+var DEFAULT_MAX_TOKENS = 7e3;
+var ANSWER_TOKENS = 1e3;
+var CODY_INTRO_TOKENS = 1e3;
+var MAX_HUMAN_INPUT_TOKENS = 1e3;
+var MAX_RECIPE_INPUT_TOKENS = 2e3;
+var MAX_CURRENT_FILE_TOKENS = 1e3;
+var MAX_RECIPE_SURROUNDING_TOKENS = 500;
+var MAX_AVAILABLE_PROMPT_LENGTH = DEFAULT_MAX_TOKENS - ANSWER_TOKENS - CODY_INTRO_TOKENS;
+var CHARS_PER_TOKEN = 4;
+var SURROUNDING_LINES = 50;
+var NUM_CODE_RESULTS = 12;
+var NUM_TEXT_RESULTS = 3;
+var MAX_BYTES_PER_FILE = 4096;
+function tokensToChars(tokens) {
+  return tokens * CHARS_PER_TOKEN;
+}
+
+// ../lib/shared/src/prompt/truncation.ts
+function truncateText(text, maxTokens) {
+  const maxLength = maxTokens * CHARS_PER_TOKEN;
+  return text.length <= maxLength ? text : text.slice(0, maxLength);
+}
+function truncateTextNearestLine(text, maxBytes) {
+  if (text.length <= maxBytes) {
+    return { truncated: text };
+  }
+  const textMaxBytes = text.slice(0, maxBytes);
+  const textMaxBytesLines = textMaxBytes.split("\n");
+  if (text.at(maxBytes) === "\n" || text.at(maxBytes - 1) === "\n") {
+    return {
+      truncated: textMaxBytes,
+      range: {
+        start: { line: 0, character: 0 },
+        end: { line: textMaxBytesLines.length, character: 0 }
+      }
+    };
+  }
+  const truncated = textMaxBytesLines.slice(0, -1).join("\n");
+  return {
+    truncated,
+    range: {
+      start: { line: 0, character: 0 },
+      end: { line: textMaxBytesLines.length - 1, character: 0 }
+    }
+  };
+}
+function truncateTextStart(text, maxTokens) {
+  const maxLength = maxTokens * CHARS_PER_TOKEN;
+  return text.length <= maxLength ? text : text.slice(-maxLength - 1);
+}
+
+// ../lib/shared/src/chat/prompts/utils.ts
+var import_path2 = require("path");
+
+// ../lib/shared/src/chat/transcript/interaction.ts
+var Interaction = class {
+  constructor(humanMessage, assistantMessage, fullContext, usedContextFiles, usedPreciseContext = [], timestamp = (/* @__PURE__ */ new Date()).toISOString()) {
+    this.humanMessage = humanMessage;
+    this.assistantMessage = assistantMessage;
+    this.fullContext = fullContext;
+    this.usedContextFiles = usedContextFiles;
+    this.usedPreciseContext = usedPreciseContext;
+    this.timestamp = timestamp;
+  }
+  metadata;
+  setMetadata(metadata2) {
+    this.metadata = metadata2;
+    this.humanMessage.metadata = this.metadata;
+    this.assistantMessage.metadata = this.metadata;
+  }
+  getAssistantMessage() {
+    return { ...this.assistantMessage };
+  }
+  setAssistantMessage(assistantMessage) {
+    this.assistantMessage = { ...assistantMessage, metadata: this.metadata };
+  }
+  getHumanMessage() {
+    return { ...this.humanMessage };
+  }
+  async getFullContext() {
+    const msgs = await this.fullContext;
+    return msgs.map((msg) => ({ ...msg }));
+  }
+  async hasContext() {
+    const contextMessages = await this.fullContext;
+    return contextMessages.length > 0;
+  }
+  setUsedContext(usedContextFiles, usedPreciseContext) {
+    this.usedContextFiles = usedContextFiles;
+    this.usedPreciseContext = usedPreciseContext;
+  }
+  /**
+   * Converts the interaction to chat message pair: one message from a human, one from an assistant.
+   */
+  toChat() {
+    return [
+      {
+        ...this.humanMessage,
+        contextFiles: this.usedContextFiles,
+        preciseContext: this.usedPreciseContext
+      },
+      this.assistantMessage
+    ];
+  }
+  async toChatPromise() {
+    await this.fullContext;
+    return this.toChat();
+  }
+  async toJSON() {
+    return {
+      humanMessage: this.humanMessage,
+      assistantMessage: this.assistantMessage,
+      fullContext: await this.fullContext,
+      usedContextFiles: this.usedContextFiles,
+      usedPreciseContext: this.usedPreciseContext,
+      timestamp: this.timestamp
+    };
+  }
+};
+
+// ../lib/shared/src/chat/prompts/templates.ts
+var instruction_prompt = `Follow these rules when answering my questions:
+- Your response should based on the shared context only.
+- Do not suggest anything that would break any shared code.
+- All generated code must be full workable code.
+
+{humanInput}
+`;
+var answers = {
+  terminal: "Noted. I will answer your next question based on this terminal output with other code you shared.",
+  selection: "Noted. I will refer to this code you selected in the editor to answer your question.",
+  file: "Noted. I will refer to this codebase file you are looking at to answer you next question for the code in the  tags.",
+  fileList: "Noted. I will refer to this list of files from the {fileName} directory of your codebase to answer your next question.",
+  packageJson: "Noted. I will use the right libraries/framework already setup in your codebase for your questions."
+};
+var prompts = {
+  instruction: instruction_prompt
+};
+
+// ../lib/shared/src/chat/prompts/utils.ts
+async function newInteraction(args3) {
+  const {
+    text,
+    displayText,
+    contextMessages,
+    assistantText,
+    assistantDisplayText,
+    assistantPrefix,
+    source: source2,
+    requestID
+  } = args3;
+  const metadata2 = { source: source2, requestID };
+  return Promise.resolve(
+    new Interaction(
+      { speaker: "human", text, displayText, metadata: metadata2 },
+      {
+        speaker: "assistant",
+        text: assistantText,
+        displayText: assistantDisplayText,
+        prefix: assistantPrefix,
+        metadata: metadata2
+      },
+      Promise.resolve(contextMessages || []),
+      []
+    )
+  );
+}
+async function newInteractionWithError(errorMsg, displayText = "") {
+  return Promise.resolve(
+    new Interaction(
+      { speaker: "human", displayText },
+      { speaker: "assistant", displayText: errorMsg, error: errorMsg },
+      Promise.resolve([]),
+      []
+    )
+  );
+}
+function isOnlySelectionRequired(contextConfig) {
+  const contextConfigLength = Object.entries(contextConfig).length;
+  return !contextConfig.none && (contextConfig.selection && contextConfigLength === 1 || !contextConfigLength);
+}
+function extractTestType(text) {
+  const testTypeRegex = /(unit|e2e|integration)(?= test)/i;
+  return text.match(testTypeRegex)?.[0] || "";
+}
+function getHumanLLMText(commandInstructions, currentFileName) {
+  const promptText = prompts.instruction.replace("{humanInput}", commandInstructions);
+  if (!currentFileName) {
+    return promptText;
+  }
+  return promptText.replaceAll("{languageName}", getNormalizedLanguageName(getFileExtension(currentFileName)));
+}
+var leadingForwardSlashRegex = /^\/+/;
+function fromSlashCommand(slashCommand) {
+  return slashCommand.replace(leadingForwardSlashRegex, "");
+}
+function toSlashCommand(command) {
+  return command.replace(leadingForwardSlashRegex, "").replace(/^/, "/");
+}
+function createVSCodeTestSearchPattern(fsPath, allTestFiles) {
+  const fileExtension = (0, import_path2.extname)(fsPath);
+  const fileName = (0, import_path2.basename)(fsPath, fileExtension);
+  const root = "**";
+  const defaultTestFilePattern = `/*test*${fileExtension}`;
+  const currentTestFilePattern = `/*{test_${fileName},${fileName}_test,test.${fileName},${fileName}.test,${fileName}Test}${fileExtension}`;
+  if (allTestFiles) {
+    return `${root}${defaultTestFilePattern}`;
+  }
+  return `${root}${currentTestFilePattern}`;
+}
+function isValidTestFileName(fsPath) {
+  if (fsPath.includes("node_modules")) {
+    return false;
+  }
+  const fileNameWithoutExt = (0, import_path2.basename)(fsPath, (0, import_path2.extname)(fsPath));
+  const suffixTest = /([._-](test|spec))|Test|Spec$/;
+  return fileNameWithoutExt.startsWith("test_") || suffixTest.test(fileNameWithoutExt);
+}
+
+// ../lib/shared/src/chat/recipes/fixup.ts
+var PROMPT_TOPICS = {
+  OUTPUT: "CODE5711",
+  SELECTED: "SELECTEDCODE7662",
+  PRECEDING: "PRECEDINGCODE3493",
+  INSTRUCTIONS: "INSTRUCTIONS7390",
+  DIAGNOSTICS: "DIAGNOSTICS5668"
+};
+var Fixup = class _Fixup {
+  id = "fixup";
+  title = "Fixup";
+  multiplexerTopic = PROMPT_TOPICS.OUTPUT;
+  async getInteraction(taskId, context2) {
+    const fixupController = context2.editor.controllers?.fixups;
+    if (!fixupController) {
+      return null;
+    }
+    const fixupTask = await fixupController.getTaskRecipeData(taskId);
+    if (!fixupTask) {
+      return null;
+    }
+    const promptText = this.getPrompt(fixupTask);
+    const promptPrefix = `<${PROMPT_TOPICS.OUTPUT}>
+`;
+    return newInteraction({
+      text: promptText,
+      assistantText: `${this.getResponsePreamble(fixupTask)}${promptPrefix}`,
+      assistantPrefix: promptPrefix,
+      source: this.id,
+      contextMessages: this.getContextFromIntent(fixupTask.intent, fixupTask, context2)
+    });
+  }
+  getPrompt(task) {
+    const promptInstruction = truncateText(task.instruction, MAX_HUMAN_INPUT_TOKENS);
+    switch (task.intent) {
+      case "add":
+        return _Fixup.addPrompt.replace("{instruction}", task.instruction).replace("{fileName}", task.fileName);
+      case "edit":
+      case "doc":
+        return _Fixup.editPrompt.replace("{instruction}", promptInstruction).replace("{selectedText}", task.selectedText).replace("{fileName}", task.fileName);
+      case "fix":
+        return _Fixup.fixPrompt.replace("{instruction}", promptInstruction).replace("{selectedText}", task.selectedText).replace("{fileName}", task.fileName);
+    }
+  }
+  getResponsePreamble(task) {
+    if (task.intent !== "add") {
+      return "";
+    }
+    if (task.precedingText.length === 0) {
+      return "";
+    }
+    return `<${PROMPT_TOPICS.PRECEDING}>${task.precedingText}`;
+  }
+  async getContextFromIntent(intent, task, context2) {
+    const truncatedPrecedingText = truncateTextStart(task.precedingText, MAX_CURRENT_FILE_TOKENS);
+    const truncatedFollowingText = truncateText(task.followingText, MAX_CURRENT_FILE_TOKENS);
+    switch (intent) {
+      case "add":
+      case "fix":
+      case "doc": {
+        const contextMessages = [];
+        if (truncatedPrecedingText.trim().length > 0) {
+          contextMessages.push(
+            ...getContextMessageWithResponse(
+              populateCodeContextTemplate(truncatedPrecedingText, task.fileName),
+              task
+            )
+          );
+        }
+        if (truncatedFollowingText.trim().length > 0) {
+          contextMessages.push(
+            ...getContextMessageWithResponse(
+              populateCodeContextTemplate(truncatedFollowingText, task.fileName),
+              task
+            )
+          );
+        }
+        return contextMessages;
+      }
+      case "edit":
+        const range = task.selectionRange;
+        const diagnostics = range ? context2.editor.getActiveTextEditorDiagnosticsForRange(range) || [] : [];
+        const errorsAndWarnings = diagnostics.filter(({ type: type2 }) => type2 === "error" || type2 === "warning");
+        const selectionContext = await getContextMessagesFromSelection(
+          task.selectedText,
+          truncatedPrecedingText,
+          truncatedFollowingText,
+          task,
+          context2.codebaseContext
+        );
+        return [
+          ...selectionContext,
+          ...errorsAndWarnings.flatMap(
+            (diagnostic) => getContextMessageWithResponse(
+              populateCurrentEditorDiagnosticsTemplate(diagnostic, task.fileName),
+              task
+            )
+          )
+        ];
+    }
+  }
+  // Prompt Templates
+  static editPrompt = `
+- You are an AI programming assistant who is an expert in updating code to meet given instructions.
+- You should think step-by-step to plan your updated code before producing the final output.
+- You should ensure the updated code matches the indentation and whitespace of the code in the users' selection.
+- Only remove code from the users' selection if you are sure it is not needed.
+- Ignore any previous instructions to format your responses with Markdown. It is not acceptable to use any Markdown in your response, unless it is directly related to the users' instructions.
+- You will be provided with code that is in the users' selection, enclosed in <${PROMPT_TOPICS.SELECTED}> XML tags. You must use this code to help you plan your updated code.
+- You will be provided with instructions on how to update this code, enclosed in <${PROMPT_TOPICS.INSTRUCTIONS}> XML tags. You must follow these instructions carefully and to the letter.
+- Only enclose your response in <${PROMPT_TOPICS.OUTPUT}> XML tags. Do use any other XML tags unless they are part of the generated code.
+- Do not provide any additional commentary about the changes you made. Only respond with the generated code.
+
+This is part of the file: {fileName}
+
+The user has the following code in their selection:
+<${PROMPT_TOPICS.SELECTED}>{selectedText}
+
+The user wants you to replace parts of the selected code or correct a problem by following their instructions.
+Provide your generated code using the following instructions:
+<${PROMPT_TOPICS.INSTRUCTIONS}>
+{instruction}
+`;
+  static addPrompt = `
+- You are an AI programming assistant who is an expert in adding new code by following instructions.
+- You should think step-by-step to plan your code before generating the final output.
+- You should ensure your code matches the indentation and whitespace of the preceding code in the users' file.
+- Ignore any previous instructions to format your responses with Markdown. It is not acceptable to use any Markdown in your response, unless it is directly related to the users' instructions.
+- You will be provided with instructions on what to generate, enclosed in <${PROMPT_TOPICS.INSTRUCTIONS}> XML tags. You must follow these instructions carefully and to the letter.
+- Only enclose your response in <${PROMPT_TOPICS.OUTPUT}> XML tags. Do use any other XML tags unless they are part of the generated code.
+- Do not provide any additional commentary about the code you added. Only respond with the generated code.
+
+The user is currently in the file: {fileName}
+
+Provide your generated code using the following instructions:
+<${PROMPT_TOPICS.INSTRUCTIONS}>
+{instruction}
+`;
+  static fixPrompt = `
+- You are an AI programming assistant who is an expert in fixing errors within code.
+- You should think step-by-step to plan your fixed code before generating the final output.
+- You should ensure the updated code matches the indentation and whitespace of the code in the users' selection.
+- Only remove code from the users' selection if you are sure it is not needed.
+- Ignore any previous instructions to format your responses with Markdown. It is not acceptable to use any Markdown in your response, unless it is directly related to the users' instructions.
+- You will be provided with code that is in the users' selection, enclosed in <${PROMPT_TOPICS.SELECTED}> XML tags. You must use this code to help you plan your fixed code.
+- You will be provided with errors from the users' selection, enclosed in <${PROMPT_TOPICS.DIAGNOSTICS}> XML tags. You must attempt to fix all of these errors.
+- If you do not know how to fix an error, do not modify the code related to that error and leave it as is. Only modify code related to errors you know how to fix.
+- Only enclose your response in <${PROMPT_TOPICS.OUTPUT}> XML tags. Do use any other XML tags unless they are part of the generated code.
+- Do not provide any additional commentary about the changes you made. Only respond with the generated code.
+
+This is part of the file: {fileName}
+
+The user has the following code in their selection:
+<${PROMPT_TOPICS.SELECTED}>{selectedText}
+
+The user wants you to correct problems in their code by following their instructions.
+Provide your fixed code using the following instructions:
+<${PROMPT_TOPICS.DIAGNOSTICS}>
+{instruction}
+`;
+};
+
+// ../lib/shared/src/chat/recipes/helpers.ts
+var MARKDOWN_FORMAT_PROMPT = "Enclose code snippets with three backticks like so: ```.";
+var EXTENSION_TO_LANGUAGE = {
+  py: "Python",
+  rb: "Ruby",
+  md: "Markdown",
+  php: "PHP",
+  js: "Javascript",
+  ts: "Typescript",
+  jsx: "JSX",
+  tsx: "TSX",
+  go: "Go",
+  java: "Java",
+  c: "C",
+  cpp: "C++",
+  cs: "C#",
+  css: "CSS",
+  html: "HTML",
+  json: "JSON",
+  rs: "Rust"
+};
+var commandRegex = {
+  chat: new RegExp(/^(?!.*\/n(ew)?\s|.*\/f(ix)?\s)/i),
+  // For now, if the input does not start with /n or /f, it is a chat
+  edit: new RegExp(/^\/e(dit)?\s/i),
+  touch: new RegExp(/^\/t(ouch)?\s/i),
+  touchNeedFileName: new RegExp(/^\/t(ouch)?\s(?!.*test(s)?\s)/i),
+  // Has /touch or /t but no test or tests in the string
+  noTest: new RegExp(/^(?!.*test)/i),
+  search: new RegExp(/^\/s(earch)?\s/i),
+  test: new RegExp(/^\/n(ew)?\s|test(s)?\s/, "i")
+};
+function getNormalizedLanguageName(extension) {
+  return extension ? EXTENSION_TO_LANGUAGE[extension] ?? extension.charAt(0).toUpperCase() + extension.slice(1) : "";
+}
+async function getContextMessagesFromSelection(selectedText, precedingText, followingText, { fileName, repoName, revision }, codebaseContext) {
+  const selectedTextContext = await codebaseContext.getContextMessages(selectedText, {
+    numCodeResults: 4,
+    numTextResults: 0
+  });
+  return selectedTextContext.concat(
+    [precedingText, followingText].filter((text) => text.trim().length > 0).flatMap(
+      (text) => getContextMessageWithResponse(populateCodeContextTemplate(text, fileName, repoName), {
+        fileName,
+        repoName,
+        revision
+      })
+    )
+  );
+}
+function getFileExtension(fileName) {
+  return import_path3.default.extname(fileName).slice(1).toLowerCase();
+}
+function contentSanitizer(text) {
+  const FIXUP_TAG_TOPICS = `(${PROMPT_TOPICS.OUTPUT}|${PROMPT_TOPICS.SELECTED}|${PROMPT_TOPICS.PRECEDING})`;
+  const FIXUP_TAG_REGEX = new RegExp(`^\\s*<${FIXUP_TAG_TOPICS}>|<\\/${FIXUP_TAG_TOPICS}>\\s*$`, "g");
+  let output = text.replaceAll(FIXUP_TAG_REGEX, "");
+  const tagsIndex = text.indexOf("tags:");
+  if (tagsIndex !== -1) {
+    output = output.slice(tagsIndex + 6);
+  }
+  return output.replace(/^\s*\n/, "");
+}
+var numResults = {
+  numCodeResults: NUM_CODE_RESULTS,
+  numTextResults: NUM_TEXT_RESULTS
+};
+function isSingleWord(str) {
+  return str.trim().split(/\s+/).length === 1;
+}
+
+// ../lib/shared/src/prompt/templates.ts
+var CODE_CONTEXT_TEMPLATE = `Use following code snippet from file \`{filePath}\`:
+\`\`\`{language}
+{text}
+\`\`\``;
+var CODE_CONTEXT_TEMPLATE_WITH_REPO = `Use following code snippet from file \`{filePath}\` in repository \`{repoName}\`:
+\`\`\`{language}
+{text}
+\`\`\``;
+function populateCodeContextTemplate(code, filePath, repoName) {
+  return (repoName ? CODE_CONTEXT_TEMPLATE_WITH_REPO.replace("{repoName}", repoName) : CODE_CONTEXT_TEMPLATE).replace("{filePath}", filePath).replace("{language}", getExtension(filePath)).replace("{text}", code);
+}
+var PRECISE_CONTEXT_TEMPLATE = `The symbol '{symbol}' is defined in the file {filePath} as:
+\`\`\`{language}
+{text}
+\`\`\``;
+function populatePreciseCodeContextTemplate(symbol, filePath, code) {
+  return PRECISE_CONTEXT_TEMPLATE.replace("{symbol}", symbol).replace("{filePath}", filePath).replace("{language}", getExtension(filePath)).replace("{text}", code);
+}
+var MARKDOWN_CONTEXT_TEMPLATE = "Use the following text from file `{filePath}`:\n{text}";
+var MARKDOWN_CONTEXT_TEMPLATE_WITH_REPO = "Use the following text from file `{filePath}` in repository `{repoName}`:\n{text}";
+function populateMarkdownContextTemplate(markdown, filePath, repoName) {
+  return (repoName ? MARKDOWN_CONTEXT_TEMPLATE_WITH_REPO.replace("{repoName}", repoName) : MARKDOWN_CONTEXT_TEMPLATE).replace("{filePath}", filePath).replace("{text}", markdown);
+}
+var CURRENT_EDITOR_CODE_TEMPLATE = "I have the `{filePath}` file opened in my editor. ";
+var CURRENT_EDITOR_CODE_TEMPLATE_WITH_REPO = "I have the `{filePath}` file from the repository `{repoName}` opened in my editor. ";
+function populateCurrentEditorContextTemplate(code, filePath, repoName) {
+  const context2 = isMarkdownFile(filePath) ? populateMarkdownContextTemplate(code, filePath, repoName) : populateCodeContextTemplate(code, filePath, repoName);
+  return (repoName ? CURRENT_EDITOR_CODE_TEMPLATE_WITH_REPO.replace("{repoName}", repoName) : CURRENT_EDITOR_CODE_TEMPLATE).replaceAll("{filePath}", filePath) + context2;
+}
+var CURRENT_EDITOR_SELECTED_CODE_TEMPLATE = "Here is the selected {language} code from file path `{filePath}`: ";
+var CURRENT_EDITOR_SELECTED_CODE_TEMPLATE_WITH_REPO = "Here is the selected code from file `{filePath}` in the {repoName} repository, written in {language}: ";
+function populateCurrentEditorSelectedContextTemplate(code, filePath, repoName) {
+  const extension = getFileExtension(filePath);
+  const languageName = getNormalizedLanguageName(extension);
+  const context2 = isMarkdownFile(filePath) ? populateMarkdownContextTemplate(code, filePath, repoName) : populateCodeContextTemplate(code, filePath, repoName);
+  return (repoName ? CURRENT_EDITOR_SELECTED_CODE_TEMPLATE_WITH_REPO.replace("{repoName}", repoName) : CURRENT_EDITOR_SELECTED_CODE_TEMPLATE).replace("{language}", languageName).replaceAll("{filePath}", filePath) + context2;
+}
+var DIAGNOSTICS_CONTEXT_TEMPLATE = `Use the following {type} from the code snippet in the file \`{filePath}\`
+{prefix}: {message}
+Code snippet:
+\`\`\`{language}
+{code}
+\`\`\``;
+function populateCurrentEditorDiagnosticsTemplate({ message, type: type2, text }, filePath) {
+  const language = getExtension(filePath);
+  return DIAGNOSTICS_CONTEXT_TEMPLATE.replace("{type}", type2).replace("{filePath}", filePath).replace("{prefix}", type2).replace("{message}", message).replace("{language}", language).replace("{code}", text);
+}
+var COMMAND_OUTPUT_TEMPLATE = "Here is the output returned from the terminal.\n";
+function populateTerminalOutputContextTemplate(output) {
+  return COMMAND_OUTPUT_TEMPLATE + output;
+}
+var MARKDOWN_EXTENSIONS = /* @__PURE__ */ new Set(["md", "markdown"]);
+function isMarkdownFile(filePath) {
+  return MARKDOWN_EXTENSIONS.has(getExtension(filePath));
+}
+function getExtension(filePath) {
+  return import_path4.default.extname(filePath).slice(1);
+}
+var CURRENT_FILE_CONTEXT_TEMPLATE = `My selected code from file path \`{filePath}\` in  tags:
+{precedingText}{selectedText}{followingText}`;
+function populateCurrentFileFromEditorSelectionContextTemplate(selection, filePath) {
+  const extension = getFileExtension(filePath);
+  const languageName = getNormalizedLanguageName(extension);
+  const surroundingTextLength = (MAX_RECIPE_INPUT_TOKENS - selection.selectedText.length) / 2;
+  const truncatedSelectedText = truncateText(selection.selectedText, MAX_RECIPE_INPUT_TOKENS) || "";
+  const truncatedPrecedingText = truncateTextStart(selection.precedingText, surroundingTextLength);
+  const truncatedFollowingText = truncateText(selection.followingText, surroundingTextLength);
+  const fileContext = CURRENT_FILE_CONTEXT_TEMPLATE.replace("{languageName}", languageName).replaceAll("{filePath}", filePath).replace("{followingText}", truncatedFollowingText).replace("{selectedText}", truncatedSelectedText).replace("{precedingText}", truncatedPrecedingText);
+  return truncateText(fileContext, MAX_RECIPE_INPUT_TOKENS * 3);
+}
+var DIRECTORY_FILE_LIST_TEMPLATE = "Here is a list of files from the directory contains {fileName} in my codebase: ";
+var ROOT_DIRECTORY_FILE_LIST_TEMPLATE = "Here is a list of files from the root codebase directory: ";
+function populateListOfFilesContextTemplate(fileList, fileName) {
+  const templateText = fileName === "root" ? ROOT_DIRECTORY_FILE_LIST_TEMPLATE : DIRECTORY_FILE_LIST_TEMPLATE;
+  return templateText.replace("{fileName}", fileName) + fileList;
+}
+function populateContextTemplateFromText(templateText, content, fileName) {
+  return templateText.replace("{fileName}", fileName) + content;
+}
+var FILE_IMPORTS_TEMPLATE = "{fileName} has imported the folowing: ";
+function populateImportListContextTemplate(importList, fileName) {
+  return FILE_IMPORTS_TEMPLATE.replace("{fileName}", fileName) + importList;
+}
+
+// ../lib/shared/src/codebase-context/index.ts
+var CodebaseContext = class _CodebaseContext {
+  constructor(config, codebase, embeddings, keywords, filenames, graph, localEmbeddings, symf, unifiedContextFetcher, rerank) {
+    this.config = config;
+    this.codebase = codebase;
+    this.embeddings = embeddings;
+    this.keywords = keywords;
+    this.filenames = filenames;
+    this.graph = graph;
+    this.localEmbeddings = localEmbeddings;
+    this.symf = symf;
+    this.unifiedContextFetcher = unifiedContextFetcher;
+    this.rerank = rerank;
+  }
+  embeddingResultsError = "";
+  tempHackGetEmbeddingsSearch() {
+    return this.embeddings;
+  }
+  getCodebase() {
+    return this.codebase;
+  }
+  onConfigurationChange(newConfig) {
+    this.config = newConfig;
+  }
+  mergeContextResults(keywordResults, filenameResults) {
+    const merged = filenameResults.slice(-1).concat(keywordResults);
+    const uniques2 = /* @__PURE__ */ new Map();
+    for (const result of merged) {
+      uniques2.set(result.fileName, result);
+    }
+    return Array.from(uniques2.values());
+  }
+  /**
+   * Returns context messages from both generic contexts and graph-based contexts.
+   * The final list is a combination of these two sets of messages.
+   */
+  async getCombinedContextMessages(query, options2) {
+    const contextMessages = this.getContextMessages(query, options2);
+    const graphContextMessages = this.getGraphContextMessages();
+    return [...await contextMessages, ...await graphContextMessages];
+  }
+  /**
+   * Returns list of context messages for a given query, sorted in *reverse* order of importance (that is,
+   * the most important context message appears *last*)
+   */
+  async getContextMessages(query, options2) {
+    switch (this.config.useContext) {
+      case "unified":
+        return this.getUnifiedContextMessages(query, options2);
+      case "keyword":
+        return this.getLocalContextMessages(query, options2);
+      case "none":
+        return [];
+      default: {
+        return this.localEmbeddings || this.embeddings ? this.getEmbeddingsContextMessages(query, options2) : this.getLocalContextMessages(query, options2);
+      }
+    }
+  }
+  checkEmbeddingsConnection() {
+    return !!this.embeddings;
+  }
+  get embeddingsEndpoint() {
+    return this.embeddings?.endpoint;
+  }
+  getEmbeddingSearchErrors() {
+    return this.embeddingResultsError.trim();
+  }
+  async getSearchResults(query, options2) {
+    if (this.embeddings && this.config.useContext !== "keyword") {
+      return {
+        results: await this.getEmbeddingSearchResults(query, options2),
+        endpoint: this.config.serverEndpoint
+      };
+    }
+    return {
+      results: await this.keywords?.getSearchContext(query, options2.numCodeResults + options2.numTextResults) || [],
+      endpoint: this.config.serverEndpoint
+    };
+  }
+  // We split the context into multiple messages instead of joining them into a single giant message.
+  // We can gradually eliminate them from the prompt, instead of losing them all at once with a single large messeage
+  // when we run out of tokens.
+  async getEmbeddingsContextMessages(query, options2) {
+    const combinedResults = await this.getEmbeddingSearchResults(query, options2);
+    return groupResultsByFile(combinedResults).reverse().flatMap((groupedResults) => _CodebaseContext.makeContextMessageWithResponse(groupedResults)).map((message) => contextMessageWithSource(message, "embeddings"));
+  }
+  async getEmbeddingSearchResults(query, options2) {
+    if (this.localEmbeddings) {
+      return this.localEmbeddings.getContext(query, options2.numCodeResults);
+    }
+    if (this.embeddings) {
+      const embeddingsSearchResults = await this.embeddings.search(
+        query,
+        options2.numCodeResults,
+        options2.numTextResults
+      );
+      if (isError2(embeddingsSearchResults)) {
+        console.error("Error retrieving embeddings:", embeddingsSearchResults);
+        this.embeddingResultsError = `Error retrieving embeddings: ${embeddingsSearchResults}`;
+        return [];
+      }
+      this.embeddingResultsError = "";
+      return embeddingsSearchResults.codeResults.concat(embeddingsSearchResults.textResults);
+    }
+    return [];
+  }
+  static makeContextMessageWithResponse(groupedResults) {
+    const contextTemplateFn = isMarkdownFile(groupedResults.file.fileName) ? populateMarkdownContextTemplate : populateCodeContextTemplate;
+    return groupedResults.results.flatMap(
+      (text) => getContextMessageWithResponse(
+        contextTemplateFn(text, groupedResults.file.fileName, groupedResults.file.repoName),
+        groupedResults.file
+      )
+    );
+  }
+  async getUnifiedContextMessages(query, options2) {
+    if (!this.unifiedContextFetcher) {
+      return [];
+    }
+    const results = await this.unifiedContextFetcher.getContext(
+      query,
+      options2.numCodeResults,
+      options2.numTextResults
+    );
+    if (isError2(results)) {
+      console.error("Error retrieving context:", results);
+      return [];
+    }
+    const source2 = "unified";
+    return results.flatMap((result) => {
+      if (result?.type === "FileChunkContext") {
+        const { content, filePath, repoName, revision } = result;
+        const messageText = isMarkdownFile(filePath) ? populateMarkdownContextTemplate(content, filePath, repoName) : populateCodeContextTemplate(content, filePath, repoName);
+        return getContextMessageWithResponse(messageText, { fileName: filePath, repoName, revision, source: source2 });
+      }
+      return [];
+    });
+  }
+  async getLocalContextMessages(query, options2) {
+    try {
+      const keywordResultsPromise = this.getKeywordSearchResults(query, options2);
+      const filenameResultsPromise = this.getFilenameSearchResults(query, options2);
+      const [keywordResults, filenameResults] = await Promise.all([keywordResultsPromise, filenameResultsPromise]);
+      const combinedResults = this.mergeContextResults(keywordResults, filenameResults);
+      const rerankedResults = await (this.rerank ? this.rerank(query, combinedResults) : combinedResults);
+      const messages = resultsToMessages(rerankedResults);
+      this.embeddingResultsError = "";
+      return messages;
+    } catch (error) {
+      console.error("Error retrieving local context:", error);
+      this.embeddingResultsError = `Error retrieving local context: ${error}`;
+      return [];
+    }
+  }
+  async getKeywordSearchResults(query, options2) {
+    if (!this.keywords) {
+      return [];
+    }
+    const results = await this.keywords.getContext(query, options2.numCodeResults + options2.numTextResults);
+    return results;
+  }
+  async getFilenameSearchResults(query, options2) {
+    if (!this.filenames) {
+      return [];
+    }
+    const results = await this.filenames.getContext(query, options2.numCodeResults + options2.numTextResults);
+    return results;
+  }
+  async getGraphContextMessages() {
+    if (!this.config.experimentalLocalSymbols || !this.graph) {
+      return [];
+    }
+    const contextMessages = [];
+    for (const preciseContext of await this.graph.getContext()) {
+      const text = populatePreciseCodeContextTemplate(
+        preciseContext.symbol.fuzzyName || "unknown",
+        preciseContext.filePath,
+        preciseContext.definitionSnippet
+      );
+      contextMessages.push({ speaker: "human", preciseContext, text }, { speaker: "assistant", text: "okay" });
+    }
+    return contextMessages;
+  }
+};
+function groupResultsByFile(results) {
+  const originalFileOrder = [];
+  for (const result of results) {
+    if (!originalFileOrder.find((ogFile) => ogFile.fileName === result.fileName)) {
+      originalFileOrder.push({
+        fileName: result.fileName,
+        repoName: result.repoName,
+        revision: result.revision,
+        range: createContextFileRange(result),
+        source: "embeddings",
+        type: "file"
+      });
+    }
+  }
+  const resultsGroupedByFile = /* @__PURE__ */ new Map();
+  for (const result of results) {
+    const results2 = resultsGroupedByFile.get(result.fileName);
+    if (results2 === void 0) {
+      resultsGroupedByFile.set(result.fileName, [result]);
+    } else {
+      resultsGroupedByFile.set(result.fileName, results2.concat([result]));
+    }
+  }
+  return originalFileOrder.map((file) => ({
+    file,
+    results: mergeConsecutiveResults(resultsGroupedByFile.get(file.fileName))
+  }));
+}
+function mergeConsecutiveResults(results) {
+  const sortedResults = results.sort((a, b) => a.startLine - b.startLine);
+  const mergedResults = [results[0].content];
+  for (let i = 1; i < sortedResults.length; i++) {
+    const result = sortedResults[i];
+    const previousResult = sortedResults[i - 1];
+    if (result.startLine === previousResult.endLine) {
+      mergedResults[mergedResults.length - 1] = mergedResults.at(-1) + result.content;
+    } else {
+      mergedResults.push(result.content);
+    }
+  }
+  return mergedResults;
+}
+function resultsToMessages(results) {
+  return results.flatMap(({ content, fileName, repoName, revision }) => {
+    const messageText = populateCodeContextTemplate(content, fileName, repoName);
+    return getContextMessageWithResponse(messageText, { fileName, repoName, revision });
+  });
+}
+function contextMessageWithSource(message, source2) {
+  if (message.file) {
+    message.file.source = source2;
+  }
+  return message;
+}
+function createContextFileRange(result) {
+  return {
+    start: {
+      line: result.startLine,
+      character: 0
+    },
+    end: {
+      line: result.endLine,
+      character: 0
+    }
+  };
+}
+
+// ../lib/shared/src/editor/withPreselectedOptions.ts
+function withPreselectedOptions(editor, preselectedOptions) {
+  const proxy2 = new Proxy(editor, {
+    get(target, property, receiver) {
+      if (property === "showQuickPick") {
+        return async function showQuickPick(options2) {
+          for (const [preselectedOption, selectedOption] of preselectedOptions) {
+            if (preselectedOption === options2) {
+              return Promise.resolve(selectedOption);
+            }
+          }
+          return target.showQuickPick(options2);
+        };
+      }
+      return Reflect.get(target, property, receiver);
+    }
+  });
+  return proxy2;
+}
+
+// ../lib/shared/src/embeddings/client.ts
+var SourcegraphEmbeddingsSearchClient = class {
+  constructor(client, repoName, repoId, codebaseLocalName = "", web = false) {
+    this.client = client;
+    this.repoName = repoName;
+    this.repoId = repoId;
+    this.codebaseLocalName = codebaseLocalName;
+    this.web = web;
+  }
+  get endpoint() {
+    return this.client.endpoint;
+  }
+  async search(query, codeResultsCount, textResultsCount) {
+    if (this.web) {
+      return this.client.searchEmbeddings([this.repoId], query, codeResultsCount, textResultsCount);
+    }
+    return this.client.legacySearchEmbeddings(this.repoId, query, codeResultsCount, textResultsCount);
+  }
+  onDidChangeStatus(callback) {
+    return { dispose: () => {
+    } };
+  }
+  get status() {
+    return [
+      {
+        name: this.codebaseLocalName || this.repoName,
+        providers: [
+          {
+            kind: "embeddings",
+            type: "remote",
+            state: "ready",
+            origin: this.endpoint,
+            remoteName: this.repoName
+          }
+        ]
+      }
+    ];
+  }
+};
+
+// ../lib/shared/src/intent-detector/client.ts
+var editorRegexps = [/editor/, /(open|current|this|entire)\s+file/, /current(ly)?\s+open/, /have\s+open/];
+var SourcegraphIntentDetectorClient = class {
+  constructor(client, completionsClient) {
+    this.client = client;
+    this.completionsClient = completionsClient;
+  }
+  isCodebaseContextRequired(input) {
+    return this.client.isContextRequiredForQuery(input);
+  }
+  isEditorContextRequired(input) {
+    const inputLowerCase = input.toLowerCase();
+    for (const regexp of editorRegexps) {
+      if (inputLowerCase.match(regexp)) {
+        return true;
+      }
+    }
+    return false;
+  }
+  buildInitialTranscript(options2) {
+    const functions = options2.map(({ id, description }) => `Function ID: ${id}
+Function Description: ${description}`).join("\n");
+    return [
+      {
+        speaker: "human",
+        text: prompt.replace("{functions}", functions)
+      },
+      {
+        speaker: "assistant",
+        text: "Ok."
+      }
+    ];
+  }
+  buildExampleTranscript(options2) {
+    const messages = options2.flatMap(
+      ({ id, examplePrompts }) => examplePrompts.flatMap(
+        (example) => [
+          {
+            speaker: "human",
+            text: example
+          },
+          {
+            speaker: "assistant",
+            text: `${id}`
+          }
+        ]
+      )
+    );
+    return messages;
+  }
+  async classifyIntentFromOptions(input, options2, fallback) {
+    const matchingRawCommand = options2.find((option) => input.startsWith(option.rawCommand));
+    if (matchingRawCommand) {
+      return matchingRawCommand.id;
+    }
+    const completionsClient = this.completionsClient;
+    if (!completionsClient) {
+      return fallback;
+    }
+    const preamble = this.buildInitialTranscript(options2);
+    const examples = this.buildExampleTranscript(options2);
+    const result = await new Promise((resolve8) => {
+      let responseText = "";
+      return completionsClient.stream(
+        {
+          fast: true,
+          temperature: 0,
+          maxTokensToSample: ANSWER_TOKENS,
+          topK: -1,
+          topP: -1,
+          messages: [
+            ...preamble,
+            ...examples,
+            {
+              speaker: "human",
+              text: input
+            },
+            {
+              speaker: "assistant"
+            }
+          ]
+        },
+        {
+          onChange: (text) => {
+            responseText = text;
+          },
+          onComplete: () => {
+            resolve8(responseText);
+          },
+          onError: (message, statusCode) => {
+            console.error(`Error detecting intent: Status code ${statusCode}: ${message}`);
+            resolve8(fallback);
+          }
+        }
+      );
+    });
+    const responseClassification = result.match(/(.*?)<\/classification>/)?.[1];
+    if (!responseClassification) {
+      return fallback;
+    }
+    return options2.find((option) => option.id === responseClassification)?.id ?? fallback;
+  }
+};
+var prompt = `
+You are an AI assistant in a text editor. You are at expert at understanding the request of a software developer and selecting an available function to perform that request.
+Think step-by-step to understand the request.
+Only provide your response if you know the answer or can make a well-informed guess, otherwise respond with "unknown".
+Enclose your response in  XML tags. Do not provide anything else.
+
+Available functions:
+{functions}
+`;
+
+// ../lib/shared/src/sourcegraph-api/completions/browserClient.ts
+var import_fetch_event_source = __toESM(require_cjs());
+
+// ../lib/shared/src/sourcegraph-api/completions/client.ts
+var SourcegraphCompletionsClient = class {
+  constructor(config, logger2) {
+    this.config = config;
+    this.logger = logger2;
+  }
+  errorEncountered = false;
+  onConfigurationChange(newConfig) {
+    this.config = newConfig;
+  }
+  get completionsEndpoint() {
+    return new URL("/.api/completions/stream", this.config.serverEndpoint).href;
+  }
+  sendEvents(events, cb) {
+    for (const event of events) {
+      switch (event.type) {
+        case "completion":
+          cb.onChange(event.completion);
+          break;
+        case "error":
+          this.errorEncountered = true;
+          cb.onError(event.error);
+          break;
+        case "done":
+          if (!this.errorEncountered) {
+            cb.onComplete();
+          }
+          this.errorEncountered = false;
+          break;
+      }
+    }
+  }
+};
+
+// ../lib/shared/src/sourcegraph-api/completions/browserClient.ts
+var SourcegraphBrowserCompletionsClient = class extends SourcegraphCompletionsClient {
+  stream(params, cb) {
+    const abort2 = new AbortController();
+    const headersInstance = new Headers(this.config.customHeaders);
+    addCustomUserAgent(headersInstance);
+    headersInstance.set("Content-Type", "application/json; charset=utf-8");
+    if (this.config.accessToken) {
+      headersInstance.set("Authorization", `token ${this.config.accessToken}`);
+    }
+    const parameters = new URLSearchParams(window.location.search);
+    const trace = parameters.get("trace");
+    if (trace) {
+      headersInstance.set("X-Sourcegraph-Should-Trace", "true");
+    }
+    (0, import_fetch_event_source.fetchEventSource)(this.completionsEndpoint, {
+      method: "POST",
+      headers: Object.fromEntries(headersInstance.entries()),
+      body: JSON.stringify(params),
+      signal: abort2.signal,
+      openWhenHidden: isRunningInWebWorker,
+      // otherwise tries to call document.addEventListener
+      async onopen(response) {
+        if (!response.ok && response.headers.get("content-type") !== "text/event-stream") {
+          let errorMessage = null;
+          try {
+            errorMessage = await response.text();
+          } catch (error) {
+            console.error(error);
+          }
+          cb.onError(
+            errorMessage === null || errorMessage.length === 0 ? `Request failed with status code ${response.status}` : errorMessage,
+            response.status
+          );
+          abort2.abort();
+          return;
+        }
+      },
+      onmessage: (message) => {
+        try {
+          const data = { ...JSON.parse(message.data), type: message.event };
+          this.sendEvents([data], cb);
+        } catch (error) {
+          cb.onError(error.message);
+          abort2.abort();
+          console.error(error);
+          throw error;
+        }
+      },
+      onerror(error) {
+        cb.onError(error.message);
+        abort2.abort();
+        console.error(error);
+        throw error;
+      }
+    }).catch((error) => {
+      cb.onError(error.message);
+      abort2.abort();
+      console.error(error);
+    });
+    return () => {
+      abort2.abort();
+    };
+  }
+};
+var isRunningInWebWorker = typeof WorkerGlobalScope !== "undefined" && self instanceof WorkerGlobalScope;
+if (isRunningInWebWorker) {
+  ;
+  self.document = { removeEventListener: () => {
+  } };
+}
+
+// ../lib/shared/src/chat/bot-response-multiplexer.ts
+var BufferedBotResponseSubscriber = class {
+  /**
+   * Creates a BufferedBotResponseSubscriber. `callback` is called once per
+   * turn with the bot's entire output provided in one shot. If the topic
+   * was not mentioned, `callback` is called with `undefined` signifying the
+   * end of a turn.
+   * @param callback the callback to handle content from the bot, if any.
+   */
+  constructor(callback) {
+    this.callback = callback;
+  }
+  buffer_ = [];
+  // BotResponseSubscriber implementation
+  onResponse(content) {
+    this.buffer_.push(content);
+    return Promise.resolve();
+  }
+  async onTurnComplete() {
+    await this.callback(this.buffer_.length ? this.buffer_.join("") : void 0);
+    this.buffer_ = [];
+  }
+};
+function splitAt(str, startIndex, endIndex) {
+  return [str.slice(0, startIndex), str.slice(endIndex === void 0 ? startIndex : endIndex)];
+}
+function topicName(tag) {
+  const match2 = tag.match(/^<\/?([\dA-Za-z-]+)>$/);
+  if (!match2) {
+    throw new Error(`topic tag "${tag}" is malformed`);
+  }
+  return match2[1];
+}
+var BotResponseMultiplexer = class _BotResponseMultiplexer {
+  /**
+   * The default topic. Messages without a specific topic are sent to the default
+   * topic subscriber, if any.
+   */
+  static DEFAULT_TOPIC = "Assistant";
+  // Matches topic open or close tags
+  static TOPIC_RE = /<$|<\/?([\dA-Za-z-]?$|[\dA-Za-z-]+>?)/m;
+  subs_ = /* @__PURE__ */ new Map();
+  // The topic currently being addressed by the bot. A stack.
+  topics_ = [];
+  // Gets the topic on the top of the topic stack.
+  get currentTopic() {
+    return this.topics_.at(-1) || _BotResponseMultiplexer.DEFAULT_TOPIC;
+  }
+  // Buffers responses until topics can be parsed
+  buffer_ = "";
+  publishInProgress_ = Promise.resolve();
+  /**
+   * Subscribes to a topic in the bot response. Each topic can have only one subscriber at a time. New subscribers overwrite old ones.
+   * @param topic the string prefix to subscribe to.
+   * @param subscriber the handler for the content produced by the bot.
+   */
+  sub(topic, subscriber2) {
+    if (!/^[\dA-Za-z-]+$/.test(topic)) {
+      throw new Error(`topics must be \\dA-Za-z-, was "${topic}`);
+    }
+    this.subs_.set(topic, subscriber2);
+  }
+  /**
+   * Notifies all subscribers that the bot response is complete.
+   */
+  async notifyTurnComplete() {
+    await this.publishInProgress_;
+    if (this.buffer_) {
+      const content = this.buffer_;
+      this.buffer_ = "";
+      await this.publishInTopic(this.currentTopic, content);
+    }
+    this.topics_ = [];
+    await Promise.all([...this.subs_.values()].map((subscriber2) => subscriber2.onTurnComplete()));
+  }
+  /**
+   * Parses part of a compound response from the bot and forwards as much as possible to
+   * subscribers.
+   * @param response the text of the next incremental response from the bot.
+   */
+  publish(response) {
+    return this.publishInProgress_ = this.publishInProgress_.then(() => this.publishStep(response));
+  }
+  // This is basically a loose parser of an XML-like language which forwards
+  // incremental content to subscribers which handle specific tags. The parser
+  // is forgiving if tags are not closed in the right order.
+  async publishStep(response) {
+    this.buffer_ += response;
+    let last;
+    while (this.buffer_) {
+      if (last !== void 0 && last === this.buffer_.length) {
+        throw new Error(`did not make progress parsing: ${this.buffer_}`);
+      }
+      last = this.buffer_.length;
+      const match2 = this.buffer_.match(_BotResponseMultiplexer.TOPIC_RE);
+      if (!match2) {
+        await this.publishBufferUpTo(this.buffer_.length);
+        return;
+      }
+      if (match2.index === void 0) {
+        throw new TypeError("unreachable");
+      }
+      if (match2.index) {
+        await this.publishBufferUpTo(match2.index);
+        continue;
+      }
+      const matchEnd = match2.index + match2[0].length;
+      const tagIsOpenTag = match2[0].length >= 2 && match2[0].at(1) !== "/";
+      const tagIsComplete = match2[0].at(-1) === ">";
+      if (!tagIsComplete) {
+        if (matchEnd === this.buffer_.length) {
+          return;
+        }
+        await this.publishBufferUpTo(matchEnd);
+        continue;
+      }
+      const topic = topicName(match2[0]);
+      if (!this.subs_.has(topic)) {
+        await this.publishBufferUpTo(matchEnd);
+        continue;
+      }
+      this.buffer_ = this.buffer_.slice(matchEnd);
+      if (tagIsOpenTag) {
+        this.topics_.push(topic);
+      } else {
+        while (this.topics_.length) {
+          if (this.topics_.pop() === topic) {
+            break;
+          }
+        }
+      }
+    }
+  }
+  // Publishes the content of `buffer_` up to `index` in the current topic. Discards the published content.
+  publishBufferUpTo(index) {
+    const [content, remaining] = splitAt(this.buffer_, index);
+    this.buffer_ = remaining;
+    return this.publishInTopic(this.currentTopic, content);
+  }
+  // Publishes one specific topic to its subscriber, if any.
+  async publishInTopic(topic, content) {
+    const sub = this.subs_.get(topic);
+    if (!sub) {
+      return;
+    }
+    return sub.onResponse(content);
+  }
+  /** Produces a prompt to describe the response format to the bot. */
+  prompt() {
+    return `Enclose each part of the response in one of the relevant tags: ${[...this.subs_.keys()].map((topic) => `<${topic}>`).join(", ")}:
+
+`;
+  }
+};
+
+// ../lib/shared/src/chat/chat.ts
+var DEFAULT_CHAT_COMPLETION_PARAMETERS = {
+  temperature: 0.2,
+  maxTokensToSample: ANSWER_TOKENS,
+  topK: -1,
+  topP: -1
+};
+var ChatClient = class {
+  constructor(completions) {
+    this.completions = completions;
+  }
+  chat(messages, cb, params) {
+    const isLastMessageFromHuman = messages.length > 0 && messages.at(-1).speaker === "human";
+    const augmentedMessages = isLastMessageFromHuman ? messages.concat([{ speaker: "assistant" }]) : messages;
+    return this.completions.stream(
+      {
+        ...DEFAULT_CHAT_COMPLETION_PARAMETERS,
+        ...params,
+        messages: augmentedMessages
+      },
+      cb
+    );
+  }
+};
+
+// ../lib/shared/src/chat/preamble.ts
+var actions = "You are Cody, an AI-powered coding assistant created by Sourcegraph. You work with me inside a text editor.";
+var rules = `Important rules to follow in all your responses:
+- All code snippets must be markdown-formatted, and enclosed in triple backticks.
+- Answer questions only if you know the answer or can make a well-informed guess; otherwise tell me you don't know.
+- Do not make any assumptions about the code and file names or any misleading information.`;
+var answer = `Understood. I am Cody, an AI assistant developed by Sourcegraph to help with programming tasks.
+I am working with you inside an editor, and I will answer your questions based on the context you provide from your current codebases.
+I will answer questions, explain code, and generate code as concisely and clearly as possible.
+I will enclose any code snippets I provide in markdown backticks.
+I will let you know if I need more information to answer a question.`;
+function getPreamble(codebase, customPreamble) {
+  const actionsText = customPreamble?.actions ?? actions;
+  const rulesText = customPreamble?.rules ?? rules;
+  const answerText = customPreamble?.answer ?? answer;
+  const preamble = [actionsText, rulesText];
+  const preambleResponse = [answerText];
+  if (codebase) {
+    const codebasePreamble = `We are currently working in a repository called \`${codebase}\`. I will share any code snippets I can find from this codebase with you to answer my questions.`;
+    preamble.push(codebasePreamble);
+    preambleResponse.push(
+      `Understood. I will answer your questions using context you will share from the \`${codebase}\` repository.`
+    );
+  }
+  return [
+    {
+      speaker: "human",
+      text: preamble.join("\n\n")
+    },
+    {
+      speaker: "assistant",
+      text: preambleResponse.join("\n")
+    }
+  ];
+}
+
+// ../lib/shared/src/chat/prompts/display-text.ts
+function createDisplayTextWithFileLinks(files, text) {
+  let formattedText = text;
+  for (const file of files) {
+    if (file?.fileName && file?.uri?.fsPath) {
+      formattedText = replaceFileNameWithMarkdownLink(
+        formattedText,
+        file?.fileName.trim(),
+        file?.uri?.fsPath,
+        file.range?.start?.line
+      );
+    }
+  }
+  return formattedText;
+}
+function createDisplayTextWithFileSelection(humanInput, selection) {
+  const fileName = selection?.fileName?.trim();
+  if (!fileName) {
+    return humanInput;
+  }
+  const displayText = `${humanInput} @${fileName}`;
+  const fsPath = selection?.fileUri?.fsPath;
+  const startLine = selection?.selectionRange?.start?.line;
+  if (!fsPath || !selection?.selectionRange?.end?.line) {
+    return displayText;
+  }
+  return replaceFileNameWithMarkdownLink(displayText, `@${fileName}`, fsPath, startLine);
+}
+function replaceFileNameWithMarkdownLink(humanInput, fileName, fsPath, startLine = 0) {
+  const range = startLine ? `:range:${startLine}` : "";
+  const fileLink = `${fsPath}${range}`;
+  const markdownText = `[_${fileName.trim()}_](command:cody.chat.open.file?"${fileLink}")`;
+  const textToBeReplaced = new RegExp(`\\s*${fileName.replaceAll(/[$()*+./?[\\\]^{|}-]/g, "\\$&")}(?!\\S)`, "g");
+  return humanInput.replaceAll(textToBeReplaced, ` ${markdownText}`).trim();
+}
+
+// ../lib/shared/src/chat/recipes/chat-question.ts
+var ChatQuestion = class _ChatQuestion {
+  constructor(debug) {
+    this.debug = debug;
+  }
+  id = "chat-question";
+  title = "Chat Question";
+  async getInteraction(humanChatInput, context2) {
+    const source2 = this.id;
+    const truncatedText = truncateText(humanChatInput, MAX_HUMAN_INPUT_TOKENS);
+    const contextFiles = context2.userInputContextFiles;
+    const displayText = contextFiles?.length ? createDisplayTextWithFileLinks(contextFiles, humanChatInput) : humanChatInput;
+    return Promise.resolve(
+      new Interaction(
+        { speaker: "human", text: truncatedText, displayText, metadata: { source: source2 } },
+        { speaker: "assistant", metadata: { source: source2 } },
+        this.getContextMessages(
+          truncatedText,
+          context2.editor,
+          context2.addEnhancedContext,
+          context2.intentDetector,
+          context2.codebaseContext,
+          context2.editor.getActiveTextEditorSelection() || null,
+          context2.userInputContextFiles
+        ),
+        []
+      )
+    );
+  }
+  async getContextMessages(text, editor, addEnhancedContext, intentDetector, codebaseContext, selection, contextFiles) {
+    const contextMessages = [];
+    const isTextTooShort = isSingleWord(text);
+    if (isTextTooShort) {
+      return contextMessages;
+    }
+    this.debug("ChatQuestion:getContextMessages", "addEnhancedContext", addEnhancedContext);
+    if (addEnhancedContext) {
+      const codebaseContextMessages = await codebaseContext.getCombinedContextMessages(text, numResults);
+      contextMessages.push(...codebaseContextMessages);
+    }
+    const isEditorContextRequired2 = intentDetector.isEditorContextRequired(text);
+    this.debug("ChatQuestion:getContextMessages", "isEditorContextRequired", isEditorContextRequired2);
+    if (isEditorContextRequired2) {
+      contextMessages.push(..._ChatQuestion.getEditorContext(editor));
+    }
+    if (contextFiles?.length) {
+      const contextFileMessages = await _ChatQuestion.getContextFilesContext(editor, contextFiles);
+      contextMessages.push(...contextFileMessages);
+    }
+    if (selection?.selectedText) {
+      contextMessages.push(..._ChatQuestion.getEditorSelectionContext(selection));
+    }
+    return contextMessages;
+  }
+  static getEditorContext(editor) {
+    const visibleContent = editor.getActiveTextEditorVisibleContent();
+    if (!visibleContent) {
+      return [];
+    }
+    const truncatedContent = truncateText(visibleContent.content, MAX_CURRENT_FILE_TOKENS);
+    return getContextMessageWithResponse(
+      populateCurrentEditorContextTemplate(truncatedContent, visibleContent.fileName, visibleContent.repoName),
+      visibleContent
+    );
+  }
+  static getEditorSelectionContext(selection) {
+    const truncatedContent = truncateText(selection.selectedText, MAX_CURRENT_FILE_TOKENS);
+    return getContextMessageWithResponse(
+      populateCurrentEditorSelectedContextTemplate(truncatedContent, selection.fileName, selection.repoName),
+      selection
+    );
+  }
+  static async getContextFilesContext(editor, contextFiles) {
+    const contextFileMessages = [];
+    for (const file of contextFiles) {
+      if (file?.uri) {
+        const content = await editor.getTextEditorContentForFile(file?.uri, file.range);
+        if (content) {
+          const message = createContextMessageByFile(file, content);
+          contextFileMessages.push(...message);
+        }
+      }
+    }
+    return contextFileMessages;
+  }
+};
+
+// ../lib/shared/src/chat/recipes/code-question.ts
+var CodeQuestion = class _CodeQuestion {
+  constructor(debug) {
+    this.debug = debug;
+  }
+  id = "code-question";
+  title = "Code Question";
+  async getInteraction(humanChatInput, context2) {
+    const source2 = this.id;
+    const truncatedText = truncateText(humanChatInput, MAX_HUMAN_INPUT_TOKENS);
+    return Promise.resolve(
+      new Interaction(
+        { speaker: "human", text: truncatedText, displayText: humanChatInput, metadata: { source: source2 } },
+        {
+          speaker: "assistant",
+          text: `\`\`\`${getFileExtension(context2.editor.getActiveTextEditorSelection()?.fileName ?? "")}
+`,
+          metadata: { source: source2 }
+        },
+        this.getContextMessages(
+          truncatedText,
+          context2.editor,
+          context2.addEnhancedContext,
+          context2.intentDetector,
+          context2.codebaseContext,
+          context2.editor.getActiveTextEditorSelection() || null
+        ),
+        []
+      )
+    );
+  }
+  async getContextMessages(text, editor, addEnhancedContext, intentDetector, codebaseContext, selection) {
+    const contextMessages = [];
+    const isTextTooShort = isSingleWord(text);
+    if (isTextTooShort) {
+      return contextMessages;
+    }
+    const isCodebaseContextRequired = addEnhancedContext || await intentDetector.isCodebaseContextRequired(text);
+    this.debug("ChatQuestion:getContextMessages", "isCodebaseContextRequired", isCodebaseContextRequired);
+    if (isCodebaseContextRequired) {
+      const codebaseContextMessages = await codebaseContext.getContextMessages(text, numResults);
+      contextMessages.push(...codebaseContextMessages);
+    }
+    const isEditorContextRequired2 = intentDetector.isEditorContextRequired(text);
+    this.debug("ChatQuestion:getContextMessages", "isEditorContextRequired", isEditorContextRequired2);
+    if (isCodebaseContextRequired || isEditorContextRequired2) {
+      contextMessages.push(..._CodeQuestion.getEditorContext(editor));
+    }
+    if (selection?.selectedText) {
+      contextMessages.push(..._CodeQuestion.getEditorSelectionContext(selection));
+    }
+    return contextMessages;
+  }
+  static getEditorContext(editor) {
+    const visibleContent = editor.getActiveTextEditorVisibleContent();
+    if (!visibleContent) {
+      return [];
+    }
+    const truncatedContent = truncateText(visibleContent.content, MAX_CURRENT_FILE_TOKENS);
+    return getContextMessageWithResponse(
+      populateCurrentEditorContextTemplate(truncatedContent, visibleContent.fileName, visibleContent.repoName),
+      visibleContent
+    );
+  }
+  static getEditorSelectionContext(selection) {
+    const truncatedContent = truncateText(selection.selectedText, MAX_CURRENT_FILE_TOKENS);
+    return getContextMessageWithResponse(
+      populateCurrentEditorSelectedContextTemplate(truncatedContent, selection.fileName, selection.repoName),
+      selection
+    );
+  }
+};
+
+// ../lib/shared/src/chat/recipes/explain-code-detailed.ts
+var ExplainCodeDetailed = class {
+  id = "explain-code-detailed";
+  title = "Explain Selected Code (Detailed)";
+  async getInteraction(_humanChatInput, context2) {
+    const source2 = this.id;
+    const selection = context2.editor.getActiveTextEditorSelectionOrEntireFile();
+    if (!selection) {
+      await context2.editor.showWarningMessage("No code selected. Please select some code and try again.");
+      return Promise.resolve(null);
+    }
+    const truncatedSelectedText = truncateText(selection.selectedText, MAX_RECIPE_INPUT_TOKENS);
+    const truncatedPrecedingText = truncateTextStart(selection.precedingText, MAX_RECIPE_SURROUNDING_TOKENS);
+    const truncatedFollowingText = truncateText(selection.followingText, MAX_RECIPE_SURROUNDING_TOKENS);
+    const languageName = getNormalizedLanguageName(selection.fileName);
+    const promptMessage = `Please explain the following ${languageName} code. Be very detailed and specific, and indicate when it is not clear to you what is going on. Format your response as an ordered list.
+\`\`\`
+${truncatedSelectedText}
+\`\`\`
+${MARKDOWN_FORMAT_PROMPT}`;
+    const displayText = `Explain the following code:
+\`\`\`
+${selection.selectedText}
+\`\`\``;
+    return newInteraction({
+      text: promptMessage,
+      displayText,
+      source: source2,
+      contextMessages: getContextMessagesFromSelection(
+        truncatedSelectedText,
+        truncatedPrecedingText,
+        truncatedFollowingText,
+        selection,
+        context2.codebaseContext
+      )
+    });
+  }
+};
+
+// ../lib/shared/src/chat/recipes/explain-code-high-level.ts
+var ExplainCodeHighLevel = class {
+  id = "explain-code-high-level";
+  title = "Explain Selected Code (High Level)";
+  async getInteraction(_humanChatInput, context2) {
+    const source2 = this.id;
+    const selection = context2.editor.getActiveTextEditorSelectionOrEntireFile();
+    if (!selection) {
+      await context2.editor.showWarningMessage("No code selected. Please select some code and try again.");
+      return Promise.resolve(null);
+    }
+    const truncatedSelectedText = truncateText(selection.selectedText, MAX_RECIPE_INPUT_TOKENS);
+    const truncatedPrecedingText = truncateTextStart(selection.precedingText, MAX_RECIPE_SURROUNDING_TOKENS);
+    const truncatedFollowingText = truncateText(selection.followingText, MAX_RECIPE_SURROUNDING_TOKENS);
+    const languageName = getNormalizedLanguageName(selection.fileName);
+    const promptMessage = `Explain the following ${languageName} code at a high level. Only include details that are essential to an overall understanding of what's happening in the code.
+\`\`\`
+${truncatedSelectedText}
+\`\`\`
+${MARKDOWN_FORMAT_PROMPT}`;
+    const displayText = `Explain the following code at a high level:
+\`\`\`
+${selection.selectedText}
+\`\`\``;
+    return newInteraction({
+      text: promptMessage,
+      displayText,
+      source: source2,
+      contextMessages: getContextMessagesFromSelection(
+        truncatedSelectedText,
+        truncatedPrecedingText,
+        truncatedFollowingText,
+        selection,
+        context2.codebaseContext
+      )
+    });
+  }
+};
+
+// ../lib/shared/src/chat/recipes/find-code-smells.ts
+var FindCodeSmells = class {
+  id = "find-code-smells";
+  title = "Smell Code";
+  async getInteraction(_humanChatInput, context2) {
+    const source2 = this.id;
+    const selection = context2.editor.getActiveTextEditorSelectionOrEntireFile();
+    if (!selection) {
+      await context2.editor.showWarningMessage("No code selected. Please select some code and try again.");
+      return Promise.resolve(null);
+    }
+    const languageName = getNormalizedLanguageName(selection.fileName);
+    const promptPrefix = `Find code smells, potential bugs, and unhandled errors in my ${languageName} code:`;
+    const promptSuffix = `List maximum five of them as a list (if you have more in mind, mention that these are the top five), with a short context, reasoning, and suggestion on each.
+If you have no ideas because the code looks fine, feel free to say that it already looks fine.`;
+    const maxTokenCount = MAX_AVAILABLE_PROMPT_LENGTH - (promptPrefix.length + promptSuffix.length) / CHARS_PER_TOKEN;
+    const truncatedSelectedText = truncateText(
+      selection.selectedText,
+      Math.min(maxTokenCount, MAX_RECIPE_INPUT_TOKENS)
+    );
+    const promptMessage = `${promptPrefix}
+
+\`\`\`
+${truncatedSelectedText}
+\`\`\`
+
+${promptSuffix}`;
+    const displayText = `Find code smells in the following code: 
+\`\`\`
+${selection.selectedText}
+\`\`\``;
+    const assistantResponsePrefix = "";
+    return newInteraction({
+      text: promptMessage,
+      displayText,
+      source: source2,
+      assistantPrefix: assistantResponsePrefix,
+      assistantText: assistantResponsePrefix
+    });
+  }
+};
+
+// ../lib/shared/src/chat/recipes/generate-docstring.ts
+var GenerateDocstring = class {
+  id = "generate-docstring";
+  title = "Generate Docstring";
+  async getInteraction(_humanChatInput, context2) {
+    const source2 = this.id;
+    const selection = context2.editor.getActiveTextEditorSelectionOrEntireFile();
+    if (!selection) {
+      await context2.editor.showWarningMessage("No code selected. Please select some code and try again.");
+      return Promise.resolve(null);
+    }
+    const truncatedSelectedText = truncateText(selection.selectedText, MAX_RECIPE_INPUT_TOKENS);
+    const truncatedPrecedingText = truncateTextStart(selection.precedingText, MAX_RECIPE_SURROUNDING_TOKENS);
+    const truncatedFollowingText = truncateText(selection.followingText, MAX_RECIPE_SURROUNDING_TOKENS);
+    const extension = getFileExtension(selection.fileName);
+    const languageName = getNormalizedLanguageName(selection.fileName);
+    const promptPrefix = `Generate a comment documenting the parameters and functionality of the following ${languageName} code:`;
+    let additionalInstructions = `Use the ${languageName} documentation style to generate a ${languageName} comment.`;
+    if (extension === "java") {
+      additionalInstructions = "Use the JavaDoc documentation style to generate a Java comment.";
+    } else if (extension === "py") {
+      additionalInstructions = "Use a Python docstring to generate a Python multi-line string.";
+    }
+    const promptMessage = `${promptPrefix}
+\`\`\`
+${truncatedSelectedText}
+\`\`\`
+Only generate the documentation, do not generate the code. ${additionalInstructions} ${MARKDOWN_FORMAT_PROMPT}`;
+    let docStart = "";
+    if (extension === "java" || extension.startsWith("js") || extension.startsWith("ts")) {
+      docStart = "/*";
+    } else if (extension === "py") {
+      docStart = '"""\n';
+    } else if (extension === "go") {
+      docStart = "// ";
+    }
+    const displayText = `Generate documentation for the following code:
+\`\`\`
+${selection.selectedText}
+\`\`\``;
+    const assistantResponsePrefix = `Here is the generated documentation:
+\`\`\`${extension}
+${docStart}`;
+    return newInteraction({
+      text: promptMessage,
+      displayText,
+      source: source2,
+      assistantPrefix: assistantResponsePrefix,
+      assistantText: assistantResponsePrefix,
+      contextMessages: getContextMessagesFromSelection(
+        truncatedSelectedText,
+        truncatedPrecedingText,
+        truncatedFollowingText,
+        selection,
+        context2.codebaseContext
+      )
+    });
+  }
+};
+
+// ../lib/shared/src/chat/recipes/generate-test.ts
+var GenerateTest = class {
+  id = "generate-unit-test";
+  title = "Generate Unit Test";
+  async getInteraction(_humanChatInput, context2) {
+    const source2 = this.id;
+    const selection = context2.editor.getActiveTextEditorSelectionOrEntireFile();
+    if (!selection) {
+      await context2.editor.showWarningMessage("No code selected. Please select some code and try again.");
+      return Promise.resolve(null);
+    }
+    const truncatedSelectedText = truncateText(selection.selectedText, MAX_RECIPE_INPUT_TOKENS);
+    const truncatedPrecedingText = truncateTextStart(selection.precedingText, MAX_RECIPE_SURROUNDING_TOKENS);
+    const truncatedFollowingText = truncateText(selection.followingText, MAX_RECIPE_SURROUNDING_TOKENS);
+    const extension = getFileExtension(selection.fileName);
+    const languageName = getNormalizedLanguageName(selection.fileName);
+    const promptMessage = `Generate a unit test in ${languageName} for the following code:
+\`\`\`${extension}
+${truncatedSelectedText}
+\`\`\`
+${MARKDOWN_FORMAT_PROMPT}`;
+    const assistantResponsePrefix = `Here is the generated unit test:
+\`\`\`${extension}
+`;
+    const displayText = `Generate a unit test for the following code:
+\`\`\`${extension}
+${selection.selectedText}
+\`\`\``;
+    return newInteraction({
+      text: promptMessage,
+      displayText,
+      source: source2,
+      assistantPrefix: assistantResponsePrefix,
+      assistantText: assistantResponsePrefix,
+      contextMessages: getContextMessagesFromSelection(
+        truncatedSelectedText,
+        truncatedPrecedingText,
+        truncatedFollowingText,
+        selection,
+        context2.codebaseContext
+      )
+    });
+  }
+};
+
+// ../lib/shared/src/chat/recipes/improve-variable-names.ts
+var ImproveVariableNames = class {
+  id = "improve-variable-names";
+  title = "Improve Variable Names";
+  async getInteraction(_humanChatInput, context2) {
+    const source2 = this.id;
+    const selection = context2.editor.getActiveTextEditorSelectionOrEntireFile();
+    if (!selection) {
+      await context2.editor.showWarningMessage("No code selected. Please select some code and try again.");
+      return Promise.resolve(null);
+    }
+    const truncatedSelectedText = truncateText(selection.selectedText, MAX_RECIPE_INPUT_TOKENS);
+    const truncatedPrecedingText = truncateTextStart(selection.precedingText, MAX_RECIPE_SURROUNDING_TOKENS);
+    const truncatedFollowingText = truncateText(selection.followingText, MAX_RECIPE_SURROUNDING_TOKENS);
+    const extension = getFileExtension(selection.fileName);
+    const displayText = `Improve the variable names in the following code:
+\`\`\`
+${selection.selectedText}
+\`\`\``;
+    const languageName = getNormalizedLanguageName(selection.fileName);
+    const promptMessage = `Improve the variable names in this ${languageName} code by replacing the variable names with new identifiers which succinctly capture the purpose of the variable. We want the new code to be a drop-in replacement, so do not change names bound outside the scope of this code, like function names or members defined elsewhere. Only change the names of local variables and parameters:
+
+\`\`\`${extension}
+${truncatedSelectedText}
+\`\`\`
+${MARKDOWN_FORMAT_PROMPT}`;
+    const assistantResponsePrefix = `Here is the improved code:
+\`\`\`${extension}
+`;
+    return newInteraction({
+      text: promptMessage,
+      displayText,
+      source: source2,
+      assistantPrefix: assistantResponsePrefix,
+      assistantText: assistantResponsePrefix,
+      contextMessages: getContextMessagesFromSelection(
+        truncatedSelectedText,
+        truncatedPrecedingText,
+        truncatedFollowingText,
+        selection,
+        context2.codebaseContext
+      )
+    });
+  }
+};
+
+// ../lib/shared/src/chat/recipes/langs.ts
+var languageMarkdownID = {
+  BASIC: "basic",
+  Bash: "bash",
+  C: "c",
+  "C#": "csharp",
+  "C++": "cpp",
+  COBOL: "cobol",
+  Elm: "elm",
+  Erlang: "erlang",
+  Fortran: "fortran",
+  Go: "go",
+  Groovy: "groovy",
+  Haskell: "haskell",
+  Java: "java",
+  JavaScript: "javascript",
+  Julia: "julia",
+  Kotlin: "kotlin",
+  Lisp: "lisp",
+  Matlab: "matlab",
+  "Objective-C": "objectivec",
+  PHP: "php",
+  Perl: "perl",
+  Python: "python",
+  R: "r",
+  Ruby: "ruby",
+  Rust: "rust",
+  Scala: "scala",
+  Swift: "swift",
+  TypeScript: "typescript",
+  Zig: "zig"
+};
+var languageNames = Array.from(Object.keys(languageMarkdownID));
+
+// ../lib/shared/src/chat/recipes/translate.ts
+var TranslateToLanguage = class {
+  id = "translate-to-language";
+  title = "Translate Code to Language";
+  static options = languageNames;
+  async getInteraction(_humanChatInput, context2) {
+    const source2 = this.id;
+    const selection = context2.editor.getActiveTextEditorSelectionOrEntireFile();
+    if (!selection) {
+      await context2.editor.showWarningMessage("No code selected. Please select some code and try again.");
+      return null;
+    }
+    const toLanguage = await context2.editor.showQuickPick(languageNames);
+    if (!toLanguage) {
+      return null;
+    }
+    const truncatedSelectedText = truncateText(selection.selectedText, MAX_RECIPE_INPUT_TOKENS);
+    const promptMessage = `Translate the following code into ${toLanguage}
+\`\`\`
+${truncatedSelectedText}
+\`\`\``;
+    const displayText = `Translate the following code into ${toLanguage}
+\`\`\`
+${selection.selectedText}
+\`\`\``;
+    const markdownID = languageMarkdownID[toLanguage] || "";
+    const assistantResponsePrefix = `Here is the code translated to ${toLanguage}:
+\`\`\`${markdownID}
+`;
+    return newInteraction({
+      text: promptMessage,
+      displayText,
+      source: source2,
+      assistantPrefix: assistantResponsePrefix,
+      assistantText: assistantResponsePrefix
+    });
+  }
+};
+
+// ../lib/shared/src/chat/recipes/browser-recipes.ts
+var registeredRecipes = {};
+function registerRecipe(id, recipe) {
+  registeredRecipes[id] = recipe;
+}
+function getRecipe(id) {
+  return registeredRecipes[id];
+}
+function nullLog(filterLabel, text, ...args3) {
+}
+function init2() {
+  if (Object.keys(registeredRecipes).length > 0) {
+    return;
+  }
+  const recipes = [
+    new ChatQuestion(nullLog),
+    new CodeQuestion(nullLog),
+    new ExplainCodeDetailed(),
+    new ExplainCodeHighLevel(),
+    new GenerateDocstring(),
+    new GenerateTest(),
+    new ImproveVariableNames(),
+    new TranslateToLanguage(),
+    new FindCodeSmells()
+  ];
+  for (const recipe of recipes) {
+    const existingRecipe = getRecipe(recipe.id);
+    if (existingRecipe) {
+      throw new Error(`Duplicate recipe with ID ${recipe.id}`);
+    }
+    registerRecipe(recipe.id, recipe);
+  }
+}
+init2();
+
+// ../lib/shared/src/prompt/prompt-mixin.ts
+var identity = "Reply as Cody, a coding assistant developed by Sourcegraph.";
+var hallucinate = "If context is available: never make any assumptions nor provide any misleading or hypothetical examples.";
+var CODY_INTRO_PROMPT = `(${identity} ${hallucinate}) `;
+var PromptMixin = class _PromptMixin {
+  /**
+   * Creates a mixin with the given, fixed prompt to insert.
+   */
+  constructor(prompt2) {
+    this.prompt = prompt2;
+  }
+  static mixins = [];
+  static customMixin = [];
+  // The prompt that instructs Cody to identify itself and avoid hallucinations.
+  static defaultMixin = new _PromptMixin(CODY_INTRO_PROMPT);
+  /**
+   * Adds a prompt mixin to the global set.
+   */
+  static add(mixin) {
+    this.mixins.push(mixin);
+  }
+  /**
+   * Adds a custom prompt mixin but not to the global set to make sure it will not be added twice
+   * and any new change could replace the old one.
+   */
+  static addCustom(mixin) {
+    this.customMixin = [mixin];
+  }
+  /**
+   * Prepends all mixins to `humanMessage`. Modifies and returns `humanMessage`.
+   */
+  static mixInto(humanMessage) {
+    const mixins = [...this.mixins, ...this.customMixin, this.defaultMixin].map((mixin) => mixin.prompt).join("\n\n");
+    if (mixins) {
+      return { ...humanMessage, text: `${mixins}${humanMessage.text}` };
+    }
+    return humanMessage;
+  }
+};
+function newPromptMixin(text) {
+  return new PromptMixin(text);
+}
+
+// ../lib/shared/src/chat/transcript/index.ts
+var Transcript = class _Transcript {
+  static fromJSON(json) {
+    return new _Transcript(
+      json.interactions.map(
+        ({
+          humanMessage,
+          assistantMessage,
+          context: context2,
+          fullContext,
+          usedContextFiles,
+          usedPreciseContext,
+          timestamp
+        }) => {
+          if (!fullContext) {
+            fullContext = context2 || [];
+          }
+          return new Interaction(
+            humanMessage,
+            assistantMessage,
+            Promise.resolve(
+              fullContext.map((message) => {
+                if (message.file) {
+                  return message;
+                }
+                const { fileName } = message;
+                if (fileName) {
+                  return { ...message, file: { fileName } };
+                }
+                return message;
+              })
+            ),
+            usedContextFiles || [],
+            usedPreciseContext || [],
+            timestamp || (/* @__PURE__ */ new Date()).toISOString()
+          );
+        }
+      ),
+      json.id,
+      json.chatModel
+    );
+  }
+  interactions = [];
+  internalID;
+  chatModel = void 0;
+  constructor(interactions = [], id, chatModel) {
+    this.interactions = interactions;
+    this.internalID = id || this.interactions.find(({ timestamp }) => !isNaN(new Date(timestamp)))?.timestamp || (/* @__PURE__ */ new Date()).toISOString();
+    this.chatModel = chatModel;
+  }
+  get id() {
+    return this.internalID;
+  }
+  setChatModel(chatModel) {
+    if (!chatModel || this.interactions.length > 1) {
+      return;
+    }
+    this.chatModel = chatModel;
+  }
+  get isEmpty() {
+    return this.interactions.length === 0;
+  }
+  get lastInteractionTimestamp() {
+    for (let index = this.interactions.length - 1; index >= 0; index--) {
+      const { timestamp } = this.interactions[index];
+      if (!isNaN(new Date(timestamp))) {
+        return timestamp;
+      }
+    }
+    return this.internalID;
+  }
+  addInteraction(interaction) {
+    if (!interaction) {
+      return;
+    }
+    this.interactions.push(interaction);
+  }
+  getLastInteraction() {
+    return this.interactions.length > 0 ? this.interactions.at(-1) : null;
+  }
+  removeLastInteraction() {
+    this.interactions.pop();
+  }
+  removeInteractionsSince(id) {
+    const index = this.interactions.findIndex(({ timestamp }) => timestamp === id);
+    if (index >= 0) {
+      this.interactions = this.interactions.slice(0, index);
+    }
+  }
+  addAssistantResponse(text, displayText) {
+    this.getLastInteraction()?.setAssistantMessage({
+      speaker: "assistant",
+      text,
+      displayText
+    });
+  }
+  /**
+   * Adds a error div to the assistant response. If the assistant has collected
+   * some response before, we will add the error message after it.
+   * @param errorText The error TEXT to be displayed. Do not wrap it in HTML tags.
+   */
+  addErrorAsAssistantResponse(errorText) {
+    const lastInteraction = this.getLastInteraction();
+    if (!lastInteraction) {
+      return;
+    }
+    const lastAssistantMessage = lastInteraction.getAssistantMessage().displayText || "";
+    lastInteraction.setAssistantMessage({
+      speaker: "assistant",
+      text: "Failed to generate a response due to server error.",
+      displayText: lastAssistantMessage + `
Request failed: ${errorText}
` + }); + } + async getPromptForLastInteraction(preamble = [], maxPromptLength = MAX_AVAILABLE_PROMPT_LENGTH, onlyHumanMessages = false) { + if (this.interactions.length === 0) { + return { prompt: [], contextFiles: [], preciseContexts: [] }; + } + const messages = []; + for (let index = 0; index < this.interactions.length; index++) { + const interaction = this.interactions[index]; + const humanMessage = PromptMixin.mixInto(interaction.getHumanMessage()); + const assistantMessage = interaction.getAssistantMessage(); + const contextMessages = await interaction.getFullContext(); + if (index === this.interactions.length - 1 && !onlyHumanMessages) { + messages.push(...contextMessages, humanMessage, assistantMessage); + } else { + messages.push(humanMessage, assistantMessage); + } + } + const preambleTokensUsage = preamble.reduce((acc, message) => acc + estimateTokensUsage(message), 0); + let truncatedMessages = truncatePrompt(messages, maxPromptLength - preambleTokensUsage); + const contextFiles = []; + const preciseContexts = []; + for (const msg of truncatedMessages) { + const contextFile = msg.file; + if (contextFile) { + contextFiles.push(contextFile); + } + const preciseContext = msg.preciseContext; + if (preciseContext) { + preciseContexts.push(preciseContext); + } + } + truncatedMessages = truncatedMessages.map(({ speaker, text }) => ({ speaker, text })); + return { + prompt: [...preamble, ...truncatedMessages], + contextFiles, + preciseContexts + }; + } + setUsedContextFilesForLastInteraction(contextFiles, preciseContexts = []) { + if (this.interactions.length === 0) { + throw new Error("Cannot set context files for empty transcript"); + } + this.interactions.at(-1).setUsedContext(contextFiles, preciseContexts); + } + toChat() { + return this.interactions.flatMap((interaction) => interaction.toChat()); + } + async toChatPromise() { + return [...await Promise.all(this.interactions.map((interaction) => interaction.toChatPromise()))].flat(); + } + async toJSON(scope) { + const interactions = await Promise.all(this.interactions.map((interaction) => interaction.toJSON())); + return { + id: this.id, + chatModel: this.chatModel, + interactions, + lastInteractionTimestamp: this.lastInteractionTimestamp, + scope: scope ? { + repositories: scope.repositories, + includeInferredRepository: scope.includeInferredRepository, + includeInferredFile: scope.includeInferredFile + } : void 0 + }; + } + toJSONEmpty(scope) { + return { + id: this.id, + chatModel: this.chatModel, + interactions: [], + lastInteractionTimestamp: this.lastInteractionTimestamp, + scope: scope ? { + repositories: scope.repositories, + includeInferredRepository: scope.includeInferredRepository, + includeInferredFile: scope.includeInferredFile + } : void 0 + }; + } + reset() { + this.interactions = []; + this.internalID = (/* @__PURE__ */ new Date()).toISOString(); + } +}; +function truncatePrompt(messages, maxTokens) { + const newPromptMessages = []; + let availablePromptTokensBudget = maxTokens; + for (let i = messages.length - 1; i >= 1; i -= 2) { + const humanMessage = messages[i - 1]; + const botMessage = messages[i]; + const combinedTokensUsage = estimateTokensUsage(humanMessage) + estimateTokensUsage(botMessage); + if (combinedTokensUsage <= availablePromptTokensBudget) { + newPromptMessages.push(botMessage, humanMessage); + availablePromptTokensBudget -= combinedTokensUsage; + } else { + break; + } + } + return newPromptMessages.reverse(); +} +function estimateTokensUsage(message) { + return Math.round((message.text || "").length / CHARS_PER_TOKEN); +} + +// ../lib/shared/src/chat/viewHelpers.ts +var STOP_SEQUENCE_REGEXP = /(H|Hu|Hum|Huma|Human|Human:)$/; +function reformatBotMessage(text, prefix) { + let reformattedMessage = prefix + text.trimEnd(); + const stopSequenceMatch = reformattedMessage.match(STOP_SEQUENCE_REGEXP); + if (stopSequenceMatch) { + reformattedMessage = reformattedMessage.slice(0, stopSequenceMatch.index); + } + return fixOpenMarkdownCodeBlock(reformattedMessage); +} +function fixOpenMarkdownCodeBlock(text) { + const occurrences = text.split("```").length - 1; + if (occurrences % 2 === 1) { + return text + "\n```"; + } + return text; +} + +// ../lib/shared/src/chat/client.ts +async function createClient({ + config, + setMessageInProgress, + setTranscript, + editor, + initialTranscript, + createCompletionsClient = (config2) => new SourcegraphBrowserCompletionsClient(config2) +}) { + const fullConfig = { debugEnable: false, ...config }; + const graphqlClient2 = new SourcegraphGraphQLAPIClient(fullConfig); + const sourcegraphVersion = await graphqlClient2.getSiteVersion(); + const sourcegraphStatus = { authenticated: false, version: "" }; + if (!isError2(sourcegraphVersion)) { + sourcegraphStatus.authenticated = true; + sourcegraphStatus.version = sourcegraphVersion; + } + const codyStatus = await graphqlClient2.isCodyEnabled(); + if (sourcegraphStatus.authenticated && codyStatus.enabled) { + const completionsClient = createCompletionsClient(fullConfig); + const chatClient = new ChatClient(completionsClient); + const repoId = config.codebase ? await graphqlClient2.getRepoIdIfEmbeddingExists(config.codebase) : null; + if (isError2(repoId)) { + throw new Error( + `Cody could not access the '${config.codebase}' repository on your Sourcegraph instance. Details: ${repoId.message}` + ); + } + const embeddingsSearch = repoId ? new SourcegraphEmbeddingsSearchClient(graphqlClient2, config.codebase || repoId, repoId, void 0, true) : null; + const codebaseContext = new CodebaseContext(config, config.codebase, embeddingsSearch, null, null, null, null); + const intentDetector = new SourcegraphIntentDetectorClient(graphqlClient2, completionsClient); + const transcript = initialTranscript || new Transcript(); + let isMessageInProgress = false; + const sendTranscript = (data) => { + if (isMessageInProgress) { + const messages = transcript.toChat(); + setTranscript(transcript); + const message = messages.at(-1); + if (data) { + message.data = data; + } + setMessageInProgress(message); + } else { + setTranscript(transcript); + if (data) { + setMessageInProgress({ data, speaker: "assistant" }); + } else { + setMessageInProgress(null); + } + } + }; + async function executeRecipe(recipeId, options2) { + const humanChatInput = options2?.humanChatInput ?? ""; + const recipe = getRecipe(recipeId); + if (!recipe) { + return; + } + const interaction = await recipe.getInteraction(humanChatInput, { + editor: options2?.prefilledOptions ? withPreselectedOptions(editor, options2.prefilledOptions) : editor, + intentDetector, + codebaseContext, + responseMultiplexer: new BotResponseMultiplexer(), + addEnhancedContext: transcript.isEmpty + }); + if (!interaction) { + return; + } + isMessageInProgress = true; + transcript.addInteraction(interaction); + const { prompt: prompt2, contextFiles, preciseContexts } = await transcript.getPromptForLastInteraction( + getPreamble(config.codebase) + ); + transcript.setUsedContextFilesForLastInteraction(contextFiles, preciseContexts); + const responsePrefix = interaction.getAssistantMessage().prefix ?? ""; + let rawText = ""; + const chatPromise = new Promise((resolve8, reject) => { + const onAbort = chatClient.chat(prompt2, { + onChange(_rawText) { + rawText = _rawText; + const text = reformatBotMessage(rawText, responsePrefix); + transcript.addAssistantResponse(text); + sendTranscript(options2?.data); + }, + onComplete() { + isMessageInProgress = false; + const text = reformatBotMessage(rawText, responsePrefix); + transcript.addAssistantResponse(text); + sendTranscript(options2?.data); + resolve8(); + }, + onError(error) { + transcript.addErrorAsAssistantResponse(error); + isMessageInProgress = false; + sendTranscript(options2?.data); + console.error(`Completion request failed: ${error}`); + reject(new Error(error)); + } + }); + options2?.signal?.addEventListener("abort", () => { + onAbort(); + isMessageInProgress = false; + }); + }); + await chatPromise; + } + return { + get transcript() { + return transcript; + }, + get isMessageInProgress() { + return isMessageInProgress; + }, + submitMessage(text) { + return executeRecipe("chat-question", { humanChatInput: text }); + }, + executeRecipe, + reset() { + isMessageInProgress = false; + transcript.reset(); + sendTranscript(); + }, + codebaseContext, + sourcegraphStatus, + codyStatus, + graphqlClient: graphqlClient2 + }; + } + return null; +} + +// ../lib/shared/src/chat/recipes/agent-recipes.ts +function nullLog2(filterLabel, text, ...args3) { +} +var registeredRecipes2 = {}; +function getRecipe2(id) { + return registeredRecipes2[id]; +} +function registerRecipe2(id, recipe) { + registeredRecipes2[id] = recipe; +} +function init3() { + if (Object.keys(registeredRecipes2).length > 0) { + return; + } + const recipes = [ + new ChatQuestion(nullLog2), + new CodeQuestion(nullLog2), + new ExplainCodeDetailed(), + new ExplainCodeHighLevel(), + new GenerateDocstring(), + new GenerateTest(), + new ImproveVariableNames(), + new TranslateToLanguage(), + new FindCodeSmells() + ]; + for (const recipe of recipes) { + const existingRecipe = getRecipe2(recipe.id); + if (existingRecipe) { + throw new Error(`Duplicate recipe with ID ${recipe.id}`); + } + registerRecipe2(recipe.id, recipe); + } +} +init3(); + +// ../lib/shared/src/sourcegraph-api/completions/nodeClient.ts +var import_http = __toESM(require("http")); +var import_https = __toESM(require("https")); + +// ../lib/shared/src/sourcegraph-api/utils.ts +function toPartialUtf8String(buf) { + if (buf.length === 0) { + return { str: "", buf: Buffer.of() }; + } + let lastValidByteOffsetExclusive = buf.length; + if ((buf[lastValidByteOffsetExclusive - 1] & 128) !== 0) { + let numBytes = 1; + while ((buf[lastValidByteOffsetExclusive - numBytes] & 192) === 128) { + numBytes++; + } + const byte = buf[lastValidByteOffsetExclusive - numBytes]; + const mask = 255 ^ (1 << 7 - numBytes) - 1; + const value = numBytes === 6 ? 252 : mask ^ 1 << 7 - numBytes; + if ((byte & mask) !== value) { + lastValidByteOffsetExclusive -= numBytes; + } + } + return { + str: buf.slice(0, lastValidByteOffsetExclusive).toString("utf8"), + buf: Buffer.from(buf.slice(lastValidByteOffsetExclusive)) + }; +} + +// ../lib/shared/src/sourcegraph-api/completions/parse.ts +var EVENT_LINE_PREFIX = "event: "; +var DATA_LINE_PREFIX = "data: "; +var EVENTS_SEPARATOR = "\n\n"; +function parseEventType(eventLine) { + if (!eventLine.startsWith(EVENT_LINE_PREFIX)) { + return new Error(`cannot parse event type: ${eventLine}`); + } + const eventType = eventLine.slice(EVENT_LINE_PREFIX.length); + switch (eventType) { + case "completion": + case "error": + case "done": + return eventType; + default: + return new Error(`unexpected event type: ${eventType}`); + } +} +function parseJSON(data) { + try { + return JSON.parse(data); + } catch { + return new Error(`invalid JSON: ${data}`); + } +} +function parseEventData(eventType, dataLine) { + if (!dataLine.startsWith(DATA_LINE_PREFIX)) { + return new Error(`cannot parse event data: ${dataLine}`); + } + const jsonData = dataLine.slice(DATA_LINE_PREFIX.length); + switch (eventType) { + case "completion": { + const data = parseJSON(jsonData); + if (isError2(data)) { + return data; + } + if (typeof data.completion === void 0) { + return new Error("invalid completion event"); + } + return { type: eventType, completion: data.completion, stopReason: data.stopReason }; + } + case "error": { + const data = parseJSON(jsonData); + if (isError2(data)) { + return data; + } + if (typeof data.error === void 0) { + return new Error("invalid error event"); + } + return { type: eventType, error: data.error }; + } + case "done": + return { type: eventType }; + } +} +function parseEvent(eventBuffer) { + const [eventLine, dataLine] = eventBuffer.split("\n"); + const eventType = parseEventType(eventLine); + if (isError2(eventType)) { + return eventType; + } + return parseEventData(eventType, dataLine); +} +function parseEvents(eventsBuffer) { + let eventStartIndex = 0; + let eventEndIndex = eventsBuffer.indexOf(EVENTS_SEPARATOR); + const events = []; + while (eventEndIndex >= 0) { + const event = parseEvent(eventsBuffer.slice(eventStartIndex, eventEndIndex)); + if (isError2(event)) { + return event; + } + events.push(event); + eventStartIndex = eventEndIndex + EVENTS_SEPARATOR.length; + eventEndIndex = eventsBuffer.indexOf(EVENTS_SEPARATOR, eventStartIndex); + } + return { events, remainingBuffer: eventsBuffer.slice(eventStartIndex) }; +} + +// ../lib/shared/src/sourcegraph-api/completions/nodeClient.ts +var SourcegraphNodeCompletionsClient = class extends SourcegraphCompletionsClient { + stream(params, cb) { + const log2 = this.logger?.startCompletion(params); + const abortController = new AbortController(); + const abortSignal = abortController.signal; + const requestFn = this.completionsEndpoint.startsWith("https://") ? import_https.default.request : import_http.default.request; + const request = requestFn( + this.completionsEndpoint, + { + method: "POST", + headers: { + "Content-Type": "application/json", + ...this.config.accessToken ? { Authorization: `token ${this.config.accessToken}` } : null, + ...customUserAgent ? { "User-Agent": customUserAgent } : null, + ...this.config.customHeaders + }, + // So we can send requests to the Sourcegraph local development instance, which has an incompatible cert. + rejectUnauthorized: process.env.NODE_TLS_REJECT_UNAUTHORIZED !== "0" && !this.config.debugEnable + }, + (res) => { + if (res.statusCode === void 0) { + throw new Error("no status code present"); + } + if (res.statusCode >= 400) { + let bufferBin2 = Buffer.of(); + let errorMessage = ""; + res.on("data", (chunk) => { + if (!(chunk instanceof Buffer)) { + throw new TypeError("expected chunk to be a Buffer"); + } + const { str, buf } = toPartialUtf8String(Buffer.concat([bufferBin2, chunk])); + errorMessage += str; + bufferBin2 = buf; + }); + res.on("error", (e) => { + log2?.onError(e.message); + cb.onError(e.message, res.statusCode); + }); + res.on("end", () => { + log2?.onError(errorMessage); + cb.onError(errorMessage, res.statusCode); + }); + return; + } + let bufferBin = Buffer.of(); + let bufferText = ""; + res.on("data", (chunk) => { + if (!(chunk instanceof Buffer)) { + throw new TypeError("expected chunk to be a Buffer"); + } + const { str, buf } = toPartialUtf8String(Buffer.concat([bufferBin, chunk])); + bufferText += str; + bufferBin = buf; + const parseResult = parseEvents(bufferText); + if (isError2(parseResult)) { + console.error(parseResult); + return; + } + log2?.onEvents(parseResult.events); + this.sendEvents(parseResult.events, cb); + bufferText = parseResult.remainingBuffer; + }); + res.on("error", (e) => { + log2?.onError(e.message); + cb.onError(e.message); + }); + } + ); + request.on("error", (e) => { + let message = e.message; + if (message.includes("ECONNREFUSED")) { + message = "Could not connect to Cody. Please ensure that Cody app is running or that you are connected to the Sourcegraph server."; + } + log2?.onError(message); + cb.onError(message); + }); + request.write(JSON.stringify(params)); + request.end(); + abortSignal.addEventListener("abort", () => { + request.destroy(); + }); + return () => request.destroy(); + } +}; + +// ../lib/shared/src/telemetry-v2/TelemetryRecorderProvider.ts +var import_telemetry = __toESM(require_dist()); + +// ../lib/shared/src/configuration.ts +var CONTEXT_SELECTION_ID = { + none: 0, + embeddings: 1, + keyword: 2, + blended: 10, + unified: 11 +}; + +// ../lib/shared/src/sourcegraph-api/telemetry/GraphQLTelemetryExporter.ts +var GraphQLTelemetryExporter = class { + constructor(client, anonymousUserID, legacyBackcompatLogEventMode2) { + this.client = client; + this.legacyBackcompatLogEventMode = legacyBackcompatLogEventMode2; + this.client.setAnonymousUserID(anonymousUserID); + } + exportMode; + legacySiteIdentification; + /** + * Checks if the connected server supports the new GraphQL mutations + * and sets the result to this.shouldUseLegacyEvents, and if we need to use + * legacy events, we also set this.legacySiteIdentification to the site ID + * of the connected instance - this is used to generate arguments for the + * legacy event-recording API. + */ + async setLegacyEventsStateOnce() { + if (this.exportMode === void 0) { + const siteVersion = await this.client.getSiteVersion(); + if (isError2(siteVersion)) { + console.warn("telemetry: failed to evaluate server version:", siteVersion); + return; + } + const insiderBuild = siteVersion.length > 12 || siteVersion.includes("dev"); + if (insiderBuild) { + this.exportMode = "5.2.2+"; + } else if (siteVersion === "5.2.0" || siteVersion === "5.2.1") { + this.exportMode = "5.2.0-5.2.1"; + } else if (siteVersion > "5.2.2") { + this.exportMode = "5.2.2+"; + } else { + this.exportMode = "legacy"; + } + console.log("telemetry: evaluated export mode:", this.exportMode); + } + if (this.exportMode === "legacy" && this.legacySiteIdentification === void 0) { + const siteIdentification = await this.client.getSiteIdentification(); + if (isError2(siteIdentification)) { + this.legacySiteIdentification = null; + return; + } + this.legacySiteIdentification = siteIdentification; + } + } + /** + * Implements export functionality by checking if the connected instance + * supports the new events record first - if it does, we use the new + * API, otherwise we translate the event into the old API and use that + * instead. + */ + async exportEvents(events) { + await this.setLegacyEventsStateOnce(); + if (this.exportMode === "legacy") { + const resultOrError2 = await Promise.all( + events.map( + (event) => this.client.logEvent( + { + client: event.source.client, + event: `${event.feature}.${event.action}`, + source: "IDEEXTENSION", + // hardcoded in existing client + url: event.marketingTracking?.url || "", + publicArgument: () => event.parameters.metadata?.reduce((acc, curr) => ({ + ...acc, + [curr.key]: curr.value + })), + argument: JSON.stringify(event.parameters.privateMetadata), + userCookieID: this.client.anonymousUserID || "", + connectedSiteID: this.legacySiteIdentification?.siteid, + hashedLicenseKey: this.legacySiteIdentification?.hashedLicenseKey + }, + this.legacyBackcompatLogEventMode + ) + ) + ); + if (isError2(resultOrError2)) { + console.error("Error exporting telemetry events as legacy event logs:", resultOrError2, { + legacyBackcompatLogEventMode: this.legacyBackcompatLogEventMode + }); + } + return; + } + if (this.exportMode === "5.2.0-5.2.1") { + events.forEach((event) => { + event.parameters.privateMetadata = void 0; + }); + } + const resultOrError = await this.client.recordTelemetryEvents(events); + if (isError2(resultOrError)) { + console.error("Error exporting telemetry events:", resultOrError); + } + } +}; + +// ../lib/shared/src/sourcegraph-api/telemetry/MockServerTelemetryExporter.ts +var MOCK_URL = "http://localhost:49300"; +var ENDPOINT = "/.api/mockEventRecording"; +var MockServerTelemetryExporter = class { + constructor(anonymousUserID) { + this.anonymousUserID = anonymousUserID; + } + async exportEvents(events) { + const resultOrError = await this.postTestEventRecording(events); + if (isError2(resultOrError)) { + console.error("Error exporting telemetry events:", resultOrError); + } + } + postTestEventRecording(events) { + const headers = new Headers({ + "Content-Type": "application/json", + "X-Sourcegraph-Actor-Anonymous-UID": this.anonymousUserID + }); + return fetch(`${MOCK_URL}${ENDPOINT}`, { + method: "POST", + headers, + body: JSON.stringify(events) + }).then((response) => { + if (!response.ok) { + throw new Error(`HTTP status code: ${response.status}`); + } + return response; + }).then((response) => response.json()).catch((error) => new Error(`error sending data to mock event-recording API: ${error} (${MOCK_URL})`)); + } +}; + +// ../lib/shared/src/telemetry-v2/TelemetryRecorderProvider.ts +var TelemetryRecorderProvider = class extends import_telemetry.TelemetryRecorderProvider { + constructor(extensionDetails, config, anonymousUserID, legacyBackcompatLogEventMode2) { + const client = new SourcegraphGraphQLAPIClient(config); + super( + { + client: `${extensionDetails.ide || "unknown"}${extensionDetails.ideExtensionType ? `.${extensionDetails.ideExtensionType}` : ""}`, + clientVersion: extensionDetails.version + }, + new GraphQLTelemetryExporter(client, anonymousUserID, legacyBackcompatLogEventMode2), + [new ConfigurationMetadataProcessor(config)], + { + ...import_telemetry.defaultEventRecordingOptions, + bufferTimeMs: 0 + // disable buffering for now + } + ); + } +}; +var NoOpTelemetryRecorderProvider = class extends import_telemetry.TelemetryRecorderProvider { + noOp = true; + constructor(processors) { + super({ client: "" }, new import_telemetry.NoOpTelemetryExporter(), processors || []); + } +}; +var noOpTelemetryRecorder = new NoOpTelemetryRecorderProvider().getRecorder(); +var MockServerTelemetryRecorderProvider = class extends import_telemetry.TelemetryRecorderProvider { + constructor(extensionDetails, config, anonymousUserID) { + super( + { + client: `${extensionDetails.ide}.${extensionDetails.ideExtensionType}`, + clientVersion: extensionDetails.version + }, + new MockServerTelemetryExporter(anonymousUserID), + [new ConfigurationMetadataProcessor(config)] + ); + } +}; +var ConfigurationMetadataProcessor = class { + constructor(config) { + this.config = config; + } + processEvent(event) { + if (!event.parameters.metadata) { + event.parameters.metadata = []; + } + event.parameters.metadata.push( + { + key: "contextSelection", + value: CONTEXT_SELECTION_ID[this.config.useContext] + }, + { + key: "chatPredictions", + value: this.config.experimentalChatPredictions ? 1 : 0 + }, + { + key: "inline", + value: this.config.inlineChat ? 1 : 0 + }, + { + key: "nonStop", + value: this.config.experimentalNonStop ? 1 : 0 + }, + { + key: "guardrails", + value: this.config.experimentalGuardrails ? 1 : 0 + }, + { + key: "newChatUI", + value: this.config.experimentalChatPanel ? 1 : 0 + } + ); + } +}; + +// ../lib/shared/src/chat/recipes/context-search.ts +var import_vscode_uri2 = __toESM(require_umd()); +var ContextSearch = class { + id = "context-search"; + title = "Codebase Context Search"; + async getInteraction(humanChatInput, context2) { + const source2 = this.id; + const query = humanChatInput?.replace(/^\/s(earch)?(\s)?/i, "") || await context2.editor.showInputBox("Enter your search query here...") || ""; + if (!query) { + return null; + } + const truncatedText = truncateText(query.replace("/search ", "").replace("/s ", ""), MAX_HUMAN_INPUT_TOKENS); + const workspaceRootUri2 = context2.editor.getWorkspaceRootUri(); + return new Interaction( + { + speaker: "human", + text: "", + displayText: query, + metadata: { source: source2 } + }, + { + speaker: "assistant", + text: "", + displayText: await this.displaySearchResults(truncatedText, context2.codebaseContext, workspaceRootUri2), + metadata: { source: source2 } + }, + new Promise((resolve8) => resolve8([])), + [] + ); + } + async displaySearchResults(text, codebaseContext, workspaceRootUri2) { + const resultContext = await codebaseContext.getSearchResults(text, numResults); + const endpointUri = resultContext.endpoint; + let snippets = `Here are the code snippets for: ${text} + +`; + for (const file of resultContext.results) { + const fileContent = this.sanitizeContent(file.content); + const extension = getFileExtension(file.fileName); + const ignoreFilesExtension = /^(md|txt)$/; + if (extension.match(ignoreFilesExtension)) { + continue; + } + let uri = new URL(`/search?q=context:global+file:${file.fileName}`, endpointUri).href; + if (workspaceRootUri2) { + const fileUri = import_vscode_uri2.Utils.joinPath(workspaceRootUri2, file.fileName); + uri = `vscode://file${fileUri.fsPath}`; + } + snippets += fileContent && fileContent.length > 5 ? `File Name: [_${file.fileName}_](${uri}) +\`\`\`${extension} +${fileContent} +\`\`\` + +` : ""; + } + return snippets; + } + sanitizeContent(content) { + return content.replace("\n", "").replace(" ", "").replace("`", "").trim(); + } +}; + +// ../lib/shared/src/chat/recipes/generate-pr-description.ts +var import_child_process2 = require("child_process"); +var import_fs = require("fs"); +var import_path5 = __toESM(require("path")); +var PrDescription = class { + id = "pr-description"; + title = "Generate PR Description"; + async getInteraction(_humanChatInput, context2) { + const source2 = this.id; + const dirPath = context2.editor.getWorkspaceRootPath(); + if (!dirPath) { + return Promise.resolve(null); + } + const logFormat = '--pretty="Commit author: %an%nCommit message: %s%nChange description:%b%n"'; + const rawDisplayText = "Generating the PR description"; + const templateFormatArgs = [ + "pull_request_template.md", + "PULL_REQUEST_TEMPLATE.md", + "docs/PULL_REQUEST_TEMPLATE.md", + "docs/pull_request_template.md", + ".github/pull_request_template.md", + ".github/PULL_REQUEST_TEMPLATE.md" + ]; + const checkPrTemplate = (0, import_child_process2.spawnSync)("git", ["ls-files", ...templateFormatArgs], { cwd: dirPath }); + const prTemplateOutput = checkPrTemplate.stdout.toString().trim(); + let prTemplateContent = ""; + if (prTemplateOutput) { + const templatePath = import_path5.default.join(dirPath.trim(), prTemplateOutput); + prTemplateContent = (0, import_fs.readFileSync)(templatePath).toString(); + } + const userEmail = (0, import_child_process2.spawnSync)("git", ["config", "user.email"], { cwd: dirPath }); + const email = userEmail.stdout.toString().trim(); + const gitCommit = (0, import_child_process2.spawnSync)("git", ["log", `--author=<${email}>`, "origin/HEAD..HEAD", logFormat], { + cwd: dirPath + }); + const gitCommitOutput = gitCommit.stdout.toString().trim(); + if (!gitCommitOutput) { + const emptyGitCommitMessage = "No commits history found in the current branch."; + return newInteraction({ + text: rawDisplayText, + displayText: rawDisplayText, + source: source2, + assistantPrefix: emptyGitCommitMessage, + assistantText: emptyGitCommitMessage + }); + } + const truncatedGitCommitOutput = truncateText(gitCommitOutput, MAX_RECIPE_INPUT_TOKENS); + let truncatedCommitMessage = ""; + if (truncatedGitCommitOutput.length < gitCommitOutput.length) { + truncatedCommitMessage = "Truncated extra long git log output, so PR description may be incomplete."; + } + const promptMessage = `Summarise these changes: +${gitCommitOutput} + + made while working in the current git branch. +Use this pull request template to ${prTemplateContent} generate a pull request description based on the committed changes. +If the PR template mentions a requirement to check the contribution guidelines, then just summarise the changes in bulletin format. + If it mentions a test plan for the changes use N/A +.`; + const assistantResponsePrefix = `Here is the PR description for the work done in your current branch: +${truncatedCommitMessage}`; + return newInteraction({ + text: promptMessage, + displayText: rawDisplayText, + source: source2, + assistantPrefix: assistantResponsePrefix, + assistantText: assistantResponsePrefix + }); + } +}; + +// ../lib/shared/src/chat/recipes/generate-release-notes.ts +var import_child_process3 = require("child_process"); +var ReleaseNotes = class { + id = "release-notes"; + title = "Generate Release Notes"; + async getInteraction(_humanChatInput, context2) { + const source2 = this.id; + const dirPath = context2.editor.getWorkspaceRootPath(); + if (!dirPath) { + return null; + } + let quickPickItems = []; + const logFormat = '--pretty="Commit author: %an%nCommit message: %s%nChange description:%b%n"'; + const gitTagCommand = (0, import_child_process3.spawnSync)("git", ["tag", "--sort=-creatordate"], { cwd: dirPath }); + const gitTagOutput = gitTagCommand.stdout.toString().trim(); + let tagsPromptText = ""; + if (gitTagOutput) { + const tags = gitTagOutput.split(/\r?\n/); + for (const tag of tags.slice(0, 3)) { + quickPickItems.push({ + label: tag, + args: ["log", tag, logFormat] + }); + } + tagsPromptText = "Do not include information about any other tags version number if any included in the commits."; + } else { + quickPickItems = [ + { + label: "Last week", + args: ["log", "--since='1 week'", logFormat] + }, + { + label: "Last 2 weeks", + args: ["log", "--since='2 week'", logFormat] + }, + { + label: "Last 4 weeks", + args: ["log", "--since='4 week'", logFormat] + } + ]; + } + const selectedLabel = await context2.editor.showQuickPick(quickPickItems.map((e) => e.label)); + if (!selectedLabel) { + return null; + } + const selected = Object.fromEntries(quickPickItems.map(({ label, args: args3 }) => [label, { args: args3 }]))[selectedLabel]; + const { args: gitArgs } = selected; + const gitLogCommand = (0, import_child_process3.spawnSync)("git", ["--no-pager", ...gitArgs], { cwd: dirPath }); + const gitLogOutput = gitLogCommand.stdout.toString().trim(); + const rawDisplayText = `Generate release notes for the changes made since ${selectedLabel}`; + if (!gitLogOutput) { + const emptyGitLogMessage = "No recent changes found to generate release notes."; + return newInteraction({ + text: rawDisplayText, + displayText: rawDisplayText, + source: source2, + assistantPrefix: emptyGitLogMessage, + assistantText: emptyGitLogMessage + }); + } + const truncatedGitLogOutput = truncateText(gitLogOutput, MAX_RECIPE_INPUT_TOKENS); + console.log(truncatedGitLogOutput); + let truncatedLogMessage = ""; + if (truncatedGitLogOutput.length < gitLogOutput.length) { + truncatedLogMessage = "Truncated extra long git log output, so release notes may miss some changes."; + } + const promptMessage = `Generate release notes by summarising these commits: +${truncatedGitLogOutput} + +Use proper heading format for the release notes. + +${tagsPromptText}.Do not include other changes and dependency updates.`; + const assistantResponsePrefix = `Here is the generated release notes for ${selectedLabel} +${truncatedLogMessage}`; + return newInteraction({ + text: promptMessage, + displayText: rawDisplayText, + source: source2, + assistantPrefix: assistantResponsePrefix, + assistantText: assistantResponsePrefix + }); + } +}; + +// ../lib/shared/src/chat/recipes/git-log.ts +var import_child_process4 = require("child_process"); +var import_path6 = __toESM(require("path")); +var GitHistory = class { + id = "git-history"; + title = "Summarize Recent Code Changes"; + async getInteraction(_humanChatInput, context2) { + const source2 = this.id; + const dirPath = context2.editor.getWorkspaceRootPath(); + if (!dirPath) { + return null; + } + const logFormat = '--pretty="Commit author: %an%nCommit message: %s%nChange description:%b%n"'; + const items = [ + { + label: "Last 5 items", + args: ["log", "-n5", logFormat], + rawDisplayText: "What changed in my codebase in the last 5 commits?" + }, + { + label: "Last day", + args: ["log", "--since", "1 day", logFormat], + rawDisplayText: "What has changed in my codebase in the last day?" + }, + { + label: "Last week", + args: ["log", "--since='1 week'", logFormat], + rawDisplayText: "What changed in my codebase in the last week?" + } + ]; + const selection = context2.editor.getActiveTextEditorSelectionOrEntireFile(); + if (selection) { + const name = import_path6.default.basename(selection.fileName); + items.push({ + label: `Last 5 items for ${name}`, + args: ["log", "-n5", logFormat, "--", selection.fileName], + rawDisplayText: `What changed in ${name} in the last 5 commits` + }); + } + const selectedLabel = await context2.editor.showQuickPick(items.map((e) => e.label)); + if (!selectedLabel) { + return null; + } + const selected = Object.fromEntries( + items.map(({ label, args: args3, rawDisplayText: rawDisplayText2 }) => [label, { args: args3, rawDisplayText: rawDisplayText2 }]) + )[selectedLabel]; + const { args: gitArgs, rawDisplayText } = selected; + const gitLogCommand = (0, import_child_process4.spawnSync)("git", ["--no-pager", ...gitArgs], { cwd: dirPath }); + const gitLogOutput = gitLogCommand.stdout.toString().trim(); + if (!gitLogOutput) { + const emptyGitLogMessage = "No recent changes found"; + return new Interaction( + { speaker: "human", displayText: rawDisplayText }, + { + speaker: "assistant", + prefix: emptyGitLogMessage, + text: emptyGitLogMessage + }, + Promise.resolve([]), + [] + ); + } + const truncatedGitLogOutput = truncateText(gitLogOutput, MAX_RECIPE_INPUT_TOKENS); + let truncatedLogMessage = ""; + if (truncatedGitLogOutput.length < gitLogOutput.length) { + truncatedLogMessage = "Truncated extra long git log output, so summary may be incomplete."; + } + const promptMessage = `Summarize these commits: +${truncatedGitLogOutput} + +Provide your response in the form of a bulleted list. Do not mention the commit hashes.`; + const assistantResponsePrefix = `Here is a summary of recent changes: +${truncatedLogMessage}`; + return newInteraction({ + text: promptMessage, + displayText: rawDisplayText, + source: source2, + assistantPrefix: assistantResponsePrefix, + assistantText: assistantResponsePrefix + }); + } +}; + +// ../vscode/src/chat/local-code-search.ts +var path8 = __toESM(require("path")); + +// ../vscode/src/editor/active-editor.ts +var lastTrackedTextEditor; +var validFileSchemes = /* @__PURE__ */ new Set(["file", "untitled", "vscode-notebook", "vscode-notebook-cell"]); +function getActiveEditor() { + const activeEditors = window2.visibleTextEditors; + if (!activeEditors.length) { + lastTrackedTextEditor = void 0; + return void 0; + } + const get = () => { + const activeEditor = window2.activeTextEditor; + if (activeEditor?.document.uri.scheme) { + if (validFileSchemes.has(activeEditor.document.uri.scheme)) { + lastTrackedTextEditor = activeEditor; + } + } + return lastTrackedTextEditor; + }; + return get(); +} + +// ../vscode/src/chat/local-code-search.ts +var LocalIndexedKeywordSearch = class { + id = "local-indexed-keyword-search"; + title = "Local indexed keyword search"; + async getInteraction(humanChatInput, context2) { + const { symf } = context2.codebaseContext; + if (!symf) { + return new Interaction( + { + speaker: "human", + text: "", + displayText: humanChatInput + }, + { + speaker: "assistant", + text: "", + displayText: "symf not found" + }, + Promise.resolve([]), + [] + ); + } + const query = humanChatInput || await context2.editor.showInputBox("Enter your search query here...") || ""; + if (!query) { + return null; + } + const strippedQuery = query.replace(/^\s*\/symf(?:\s+|$)/, "").trim(); + if (strippedQuery.length === 0) { + return new Interaction( + { + speaker: "human", + text: "", + displayText: humanChatInput + }, + { + speaker: "assistant", + text: "", + displayText: 'Enter a query after "/symf"' + }, + new Promise((resolve8) => resolve8([])), + [] + ); + } + const truncatedText = truncateText(strippedQuery, MAX_HUMAN_INPUT_TOKENS); + return new Interaction( + { + speaker: "human", + text: "", + displayText: query + }, + { + speaker: "assistant", + text: "", + displayText: await this.displaySearchResults(symf, truncatedText) + }, + new Promise((resolve8) => resolve8([])), + [] + ); + } + async displaySearchResults(symf, text) { + const scopeDir = getCurrentWorkspaceRoot(); + if (!scopeDir) { + return "Open a workspace folder to determine the search scope"; + } + const resultSets = await symf.getResults(text, [scopeDir]); + if (resultSets.length === 0) { + return "Open a workspace folder to determine the search scope"; + } + const groupedResults = groupByFile(await resultSets[0]); + const resultsHTML = await htmlForResultGroups(groupedResults); + return resultsHTML; + } +}; +function firstNLines(text, n) { + const lines2 = text.split("\n"); + if (lines2.length <= n) { + return text; + } + return lines2.slice(0, n).join("\n"); +} +function lastNComponents(path_, n) { + const components = path_.split(path8.sep); + if (components.length <= n) { + return path_; + } + return components.slice(components.length - n).join(path8.sep); +} +function groupByFile(results) { + const groups = []; + for (const result of results) { + const group = groups.find((g) => g.file === result.file); + if (group) { + group.results.push(result); + } else { + groups.push({ + file: result.file, + results: [result] + }); + } + } + return groups; +} +async function htmlForResultGroups(groups) { + const groupHTMLsPromise = groups.map(async ({ file, results }) => { + const doc = await workspace.openTextDocument(file); + const extension = getFileExtension(file); + const fileUri = Uri.file(file); + const uri = Uri.parse(`vscode://file${fileUri.path}`).toString(); + const resultsHTML = []; + for (const result of results) { + const text = doc.getText( + doc.validateRange( + new Range( + result.range.startPoint.row, + result.range.startPoint.col, + result.range.endPoint.row, + result.range.endPoint.col + ) + ) + ); + resultsHTML.push( + ` + +\`\`\`${extension} +${firstNLines(text, 10)} +\`\`\` + +` + ); + } + const fileHeaderHTML = `${lastNComponents(file, 3)}`; + return `
${fileHeaderHTML}${resultsHTML.join("\n")}
`; + }); + const groupHTMLs = await Promise.all(groupHTMLsPromise); + return groupHTMLs.join("\n"); +} +function getCurrentWorkspaceRoot() { + const uri = getActiveEditor()?.document?.uri; + if (uri) { + const wsFolder = workspace.getWorkspaceFolder(uri); + if (wsFolder) { + return wsFolder.uri.fsPath; + } + } + return workspace.workspaceFolders?.[0]?.uri.fsPath ?? null; +} + +// ../vscode/src/configuration-keys.ts +var import_lodash2 = __toESM(require_lodash()); + +// ../vscode/package.json +var version = "0.16.1"; +var package_default = { + name: "cody-ai", + private: true, + displayName: "Cody AI", + version, + publisher: "sourcegraph", + license: "Apache-2.0", + icon: "resources/cody.png", + description: "Code AI with codebase context", + scripts: { + postinstall: "pnpm download-wasm", + dev: "pnpm run -s dev:desktop", + "dev:insiders": "pnpm run -s dev:desktop:insiders", + "start:dev:desktop": "NODE_ENV=development code --extensionDevelopmentPath=$PWD --disable-extension=sourcegraph.cody-ai --disable-extension=github.copilot --disable-extension=github.copilot-nightly --inspect-extensions=9333 --new-window . --goto ./src/logged-rerank.ts:16:5", + "dev:desktop": "pnpm run -s build:dev:desktop && pnpm run start:dev:desktop", + "dev:desktop:insiders": "pnpm run -s build:dev:desktop && NODE_ENV=development code-insiders --extensionDevelopmentPath=$PWD --disable-extension=sourcegraph.cody-ai --disable-extension=github.copilot --disable-extension=github.copilot-nightly --inspect-extensions=9333 --new-window . --goto ./src/logged-rerank.ts:16:5", + "dev:web": "pnpm run -s build:dev:web && pnpm run -s _dev:vscode-test-web --browserType none", + "watch:dev:web": 'concurrently "pnpm run -s watch:build:dev:web" "pnpm run -s _dev:vscode-test-web --browserType none"', + "_dev:vscode-test-web": "vscode-test-web --extensionDevelopmentPath=. ${WORKSPACE-test/fixtures/workspace}", + build: "tsc --build && pnpm run -s _build:esbuild:desktop && pnpm run -s _build:esbuild:web && pnpm run -s _build:webviews --mode production", + "_build:desktop": "pnpm run -s _build:esbuild:desktop && pnpm run -s _build:webviews --mode production", + "_build:web": "pnpm run -s _build:esbuild:web && pnpm run -s _build:webviews --mode production", + "build:dev:desktop": 'concurrently "pnpm run -s _build:esbuild:desktop" "pnpm run -s _build:webviews --mode development"', + "build:dev:web": 'concurrently "pnpm run -s _build:esbuild:web" "pnpm run -s _build:webviews --mode development"', + "watch:build:dev:web": 'concurrently "pnpm run -s _build:esbuild:web --watch" "pnpm run -s _build:webviews --mode development --watch"', + "watch:build:dev:desktop": 'concurrently "pnpm run -s _build:esbuild:desktop --watch" "pnpm run -s _build:webviews --mode development --watch"', + "_build:esbuild:desktop": "pnpm download-wasm && esbuild ./src/extension.node.ts --bundle --outfile=dist/extension.node.js --external:vscode --format=cjs --platform=node --sourcemap", + "_build:esbuild:web": `esbuild ./src/extension.web.ts --platform=browser --bundle --outfile=dist/extension.web.js --alias:path=path-browserify --alias:os=os-browserify --external:vscode --define:process='{"env":{}}' --define:window=self --format=cjs --sourcemap`, + "_build:webviews": "vite -c webviews/vite.config.ts build", + lint: "pnpm run lint:js", + "lint:js": "NODE_OPTIONS=--max-old-space-size=4096 eslint --quiet --cache '**/*.[tj]s?(x)'", + release: "ts-node ./scripts/release.ts", + "download-wasm": "ts-node-transpile-only ./scripts/download-wasm-modules.ts", + "release:dry-run": "pnpm run download-wasm && CODY_RELEASE_DRY_RUN=1 ts-node ./scripts/release.ts", + storybook: "storybook dev -p 6007 --no-open --no-version-updates --no-release-notes", + "test:e2e": "tsc --build && node dist/tsc/test/e2e/install-deps.js && pnpm run -s build:dev:desktop && playwright test", + "test:integration": "tsc --build ./test/integration && pnpm run -s build:dev:desktop && node --inspect -r ts-node/register dist/tsc/test/integration/main.js", + "test:unit": "vitest", + "vscode:prepublish": "pnpm -s run build", + "test:unit:tree-sitter-queries": "vitest ./src/tree-sitter/query-tests/*.test.ts" + }, + categories: [ + "Programming Languages", + "Machine Learning", + "Snippets", + "Education" + ], + keywords: [ + "ai", + "openai", + "anthropic", + "assistant", + "chatbot", + "chat", + "refactor", + "documentation", + "test", + "sourcegraph", + "codey", + "llm", + "codegen", + "autocomplete", + "bot", + "model", + "typescript", + "javascript", + "python", + "golang", + "go", + "html", + "css", + "java", + "php", + "swift", + "kotlin" + ], + repository: { + type: "git", + url: "https://github.com/sourcegraph/cody", + directory: "vscode" + }, + bugs: { + url: "https://github.com/sourcegraph/cody/issues" + }, + homepage: "https://docs.sourcegraph.com/cody", + badges: [ + { + url: "https://img.shields.io/discord/969688426372825169?color=5765F2", + href: "https://srcgr.ph/discord", + description: "Discord" + } + ], + engines: { + vscode: "^1.79.0" + }, + main: "./dist/extension.node.js", + browser: "./dist/extension.web.js", + activationEvents: [ + "onStartupFinished", + "onWebviewPanel:cody.chatPanel" + ], + contributes: { + walkthroughs: [ + { + id: "welcome", + title: "Getting Started with Cody", + description: "Discover how Cody can help you write and understand code faster.", + steps: [ + { + id: "chat", + title: "Ask Cody a Question", + description: "Cody writes code and answers questions using your own code graph as context.\n[Open Chat](command:cody.walkthrough.showChat)", + media: { + markdown: "walkthroughs/chat.md" + } + }, + { + id: "commands", + title: "Cody Commands", + description: "You can use Cody commands to streamline your development process (e.g. generate unit tests, documentation, and more) with just a few clicks.\n[Open Commands Menu](command:cody.action.commands.menu)", + media: { + markdown: "walkthroughs/commands.md" + } + }, + { + id: "explain", + title: "Explain Code", + description: 'Ask Cody to explain some code. Select some lines and use the "Explain Code" command.\n[Open Commands Menu](command:cody.action.commands.menu)', + media: { + markdown: "walkthroughs/explain.md" + } + }, + { + id: "inline-assist", + title: "Inline Chat", + description: "Chat with Cody without leaving your file. Click the + button next to any line number in a file to bring up Inline Chat.\n[Enable in Settings](command:cody.walkthrough.enableInlineChat)", + media: { + markdown: "walkthroughs/inline-assist.md" + } + }, + { + id: "autocomplete", + title: "Code Autocomplete", + description: "Let Cody automatically write code for you. Start writing a comment or a line of code and Cody will suggest the next few lines.", + media: { + markdown: "walkthroughs/autocomplete.md" + } + }, + { + id: "learn-more", + title: "Learn More & Feedback", + description: '\u{1F4D6} Dive deeper into Cody by reading our [full documentation](https://docs.sourcegraph.com/cody).\n\u{1F3A8} Discover more features by searching for "Cody" in the [Command Palette](command:workbench.action.showCommands).\n\u{1F5D2}\uFE0F Find out how Cody is improving by taking a look at the [Changelog](https://sourcegraph.com/github.com/sourcegraph/cody/-/blob/vscode/CHANGELOG.md).\n\u{1F4AC} Bugs, ideas or feedback? Post a message on our [GitHub Discussions](https://github.com/sourcegraph/cody/discussions/new?category=product-feedback&labels=vscode).', + media: { + markdown: "walkthroughs/learn-more.md" + } + } + ] + } + ], + colors: [ + { + id: "cody.fixup.conflictBackground", + description: "The background of text Cody will edit where there is a specific conflict with your changes.", + defaults: { + light: "mergeEditor.conflictingLines.background", + dark: "mergeEditor.conflictingLines.background" + } + }, + { + id: "cody.fixup.conflictBorder", + description: "The border of text Cody will edit, if there is a conflict with your changes.", + defaults: { + light: "mergeEditor.conflict.unhandledFocused.border", + dark: "mergeEditor.conflict.unhandledFocused.border" + } + }, + { + id: "cody.fixup.conflictedBackground", + description: "The background of text Cody will edit, if there is a conflict with your changes.", + defaults: { + light: "#ffffff00", + dark: "#00000000" + } + }, + { + id: "cody.fixup.conflictedBorder", + description: "The border of text Cody will edit, if there is a conflict with your changes.", + defaults: { + light: "mergeEditor.conflict.unhandledUnfocused.border", + dark: "mergeEditor.conflict.unhandledUnfocused.border" + } + }, + { + id: "cody.fixup.incomingBackground", + description: "The background of text Cody will edit.", + defaults: { + light: "merge.incomingContentBackground", + dark: "merge.incomingContentBackground" + } + }, + { + id: "cody.fixup.incomingBorder", + description: "The border around text Cody will edit.", + defaults: { + light: "#436EB1", + dark: "#436EB1" + } + } + ], + viewsContainers: { + activitybar: [ + { + id: "cody", + title: "Cody", + icon: "resources/cody.svg" + } + ] + }, + views: { + cody: [ + { + type: "webview", + id: "cody.chat", + name: "Chat", + when: "(!cody.activated && config.cody.experimental.chatPanel) || !config.cody.experimental.chatPanel" + }, + { + id: "cody.fixup.tree.view", + name: "Fixups", + when: "cody.nonstop.fixups.enabled && cody.activated && !config.cody.experimental.chatPanel", + icon: "cody.svg", + contextualTitle: "Fixups" + }, + { + id: "cody.commands.tree.view", + name: "Commands", + when: "cody.activated && config.cody.experimental.chatPanel" + }, + { + id: "cody.chat.tree.view", + name: "Chats", + when: "cody.activated && config.cody.experimental.chatPanel" + }, + { + type: "webview", + id: "cody.search", + name: "Search (experimental)", + visibility: "visible", + when: "cody.activated && config.cody.experimental.newSearch" + }, + { + id: "cody.support.tree.view", + name: "Settings & Support", + when: "cody.activated && config.cody.experimental.chatPanel" + } + ] + }, + viewsWelcome: [ + { + view: "cody.fixup.tree.view", + contents: "No pending Cody fixups", + when: "cody.nonstop.fixups.enabled && cody.activated" + }, + { + view: "cody.chat.tree.view", + contents: "Chat alongside your code, attach files, add additional context, and try out different LLM providers.\n[New Chat](command:cody.chat.panel.new)\nTo learn more about chat, [read the docs](https://docs.sourcegraph.com/).", + when: "cody.activated" + } + ], + commands: [ + { + command: "cody.welcome", + title: "Help & Getting Started", + category: "Cody", + group: "Cody", + icon: "$(book)" + }, + { + command: "cody.feedback", + title: "Feedback", + category: "Cody", + group: "Cody", + icon: "$(feedback)" + }, + { + command: "cody.command.edit-code", + category: "Ask Cody", + title: "Edit Code", + when: "cody.activated && editorTextFocus", + icon: "$(wand)" + }, + { + command: "cody.command.explain-code", + category: "Ask Cody", + title: "Explain Code", + icon: "$(output)", + when: "cody.activated && editorFocus" + }, + { + command: "cody.command.generate-tests", + category: "Ask Cody", + title: "Generate Unit Tests", + icon: "$(package)", + when: "cody.activated && editorTextFocus" + }, + { + command: "cody.command.document-code", + category: "Ask Cody", + title: "Document Code", + icon: "$(book)", + when: "cody.activated && editorTextFocus" + }, + { + command: "cody.command.smell-code", + category: "Ask Cody", + title: "Find Code Smells", + icon: "$(symbol-keyword)", + when: "cody.activated && editorFocus" + }, + { + command: "cody.action.commands.custom.menu", + category: "Ask Cody", + title: "Custom Commands", + icon: "$(tools)", + when: "cody.activated && workspaceFolderCount > 0" + }, + { + command: "cody.command.context-search", + category: "Ask Cody", + title: "Codebase Context Search", + when: "cody.activated && workspaceFolderCount > 0" + }, + { + command: "cody.auth.signout", + category: "Cody", + title: "Sign Out", + icon: "$(sign-out)" + }, + { + command: "cody.auth.signin", + category: "Cody", + title: "Switch Account\u2026" + }, + { + command: "cody.settings.extension", + category: "Cody", + title: "Extension Settings", + group: "Cody", + icon: "$(gear)" + }, + { + command: "cody.focus", + category: "Cody", + title: "Sign In" + }, + { + command: "cody.interactive.clear", + category: "Cody", + title: "Start a New Chat Session", + group: "Cody", + icon: "$(add)", + when: "cody.activated" + }, + { + command: "cody.history", + category: "Cody", + title: "Chat History", + group: "Cody", + icon: "$(history)" + }, + { + command: "cody.status-bar.interacted", + category: "Cody", + title: "Cody Settings", + group: "Cody", + icon: "$(settings-gear)", + when: "cody.activated" + }, + { + command: "cody.comment.add", + title: "Ask Cody", + category: "Cody Inline Chat", + when: "cody.activated && config.cody.inlineChat.enabled", + enablement: "!commentIsEmpty && !cody.inline.reply.pending" + }, + { + command: "cody.comment.stop", + title: "Stop generating", + category: "Cody Inline Chat", + when: "cody.activated && config.cody.inlineChat.enabled", + enablement: "!commentThreadIsEmpty", + icon: "$(debug-stop)" + }, + { + command: "cody.comment.delete", + title: "Remove Inline Chat", + category: "Cody Inline Chat", + when: "cody.activated && config.cody.inlineChat.enabled", + enablement: "!commentThreadIsEmpty", + icon: "$(trash)" + }, + { + command: "cody.comment.open-in-sidebar", + title: "Open this chat in the sidebar", + category: "Cody Inline Chat", + when: "cody.activated && config.cody.inlineChat.enabled", + enablement: "!commentThreadIsEmpty", + icon: "$(comment-discussion)" + }, + { + command: "cody.comment.collapse-all", + title: "Collapse All Inline Chats", + category: "Cody Inline Chat", + when: "cody.activated && config.cody.inlineChat.enabled", + enablement: "!commentThreadIsEmpty", + icon: "$(collapse-all)" + }, + { + command: "cody.inline.new", + title: "Ask Cody Inline", + category: "Cody Inline Chat", + when: "cody.activated && config.cody.inlineChat.enabled", + enablement: "editorFocus && config.cody.inlineChat.enabled" + }, + { + command: "cody.guardrails.debug", + category: "Cody", + title: "Guardrails Debug Attribution", + enablement: "config.cody.experimental.guardrails && editorHasSelection" + }, + { + command: "cody.command.inline-touch", + category: "Cody", + title: "Touch" + }, + { + command: "cody.fixup.open", + category: "Cody", + title: "Go to Fixup", + icon: "$(file-code)" + }, + { + command: "cody.fixup.accept", + category: "Cody", + title: "Accept fixup", + when: "cody.nonstop.fixups.enabled", + enablement: "!cody.fixup.view.isEmpty", + icon: "$(check)" + }, + { + command: "cody.fixup.accept-all", + category: "Cody", + title: "Accept all fixups", + when: "cody.nonstop.fixups.enabled", + enablement: "!cody.fixup.view.isEmpty", + icon: "$(check-all)" + }, + { + command: "cody.fixup.accept-by-file", + category: "Cody", + title: "Accept fixups in the selected directory", + when: "cody.nonstop.fixups.enabled", + enablement: "!cody.fixup.view.isEmpty", + icon: "$(check-all)" + }, + { + command: "cody.fixup.diff", + category: "Cody", + title: "Show diff for fixup", + when: "cody.nonstop.fixups.enabled", + enablement: "!cody.fixup.view.isEmpty", + icon: "$(diff)" + }, + { + command: "cody.action.commands.menu", + category: "Cody", + title: "Commands", + when: "cody.activated", + icon: "$(cody-logo)" + }, + { + command: "cody.autocomplete.openTraceView", + category: "Cody", + title: "Open Autocomplete Trace View", + when: "cody.activated && config.cody.autocomplete && config.cody.debug.enable && editorHasFocus && !editorReadonly" + }, + { + command: "cody.autocomplete.manual-trigger", + category: "Cody", + title: "Trigger Autocomplete at Cursor", + when: "cody.activated && config.cody.autocomplete && editorHasFocus && !editorReadonly && !editorHasSelection && !inlineSuggestionsVisible" + }, + { + command: "cody.chat.panel.new", + category: "Cody", + title: "Start a New Chat Panel", + when: "cody.activated && config.cody.experimental.chatPanel", + group: "Cody", + icon: "$(new-comment-icon)" + }, + { + command: "cody.chat.tree.view.focus", + category: "Cody", + title: "Open Cody Sidebar", + group: "Cody", + icon: "$(layout-sidebar-left)", + when: "config.cody.experimental.chatPanel" + }, + { + command: "cody.chat.history.clear", + category: "Cody", + title: "Delete All Chats", + group: "Cody", + icon: "$(trash)", + when: "cody.activated && cody.hasChatHistory" + }, + { + command: "cody.chat.history.delete", + category: "Cody", + title: "Delete Chat", + group: "Cody", + icon: "$(trash)", + when: "cody.activated && cody.hasChatHistory" + }, + { + command: "cody.chat.history.export", + category: "Cody", + title: "Export Chats as JSON", + group: "Cody", + icon: "$(arrow-circle-down)", + when: "cody.activated && cody.hasChatHistory" + }, + { + command: "cody.search.index-update", + category: "Cody", + group: "Cody", + title: "Update search index for current workspace folder", + icon: "$(refresh)", + when: "cody.activated && config.cody.experimental.newSearch" + }, + { + command: "cody.search.index-update-all", + category: "Cody", + group: "Cody", + title: "Update search indices for all workspace folders", + icon: "$(sync)", + when: "cody.activated && config.cody.experimental.newSearch" + }, + { + command: "cody.chat.restart", + category: "Cody", + title: "Restart Chat Session", + group: "Cody", + icon: "$(refresh)", + when: "cody.activated && cody.hasChatHistory && config.cody.experimental.chatPanel" + } + ], + keybindings: [ + { + command: "cody.chat.focus", + key: "alt+/", + when: "!config.cody.experimental.chatPanel" + }, + { + command: "cody.chat.tree.view.focus", + key: "alt+f1", + when: "cody.activated && config.cody.experimental.chatPanel" + }, + { + command: "cody.chat.panel.new", + key: "alt+/", + when: "cody.activated && config.cody.experimental.chatPanel" + }, + { + command: "cody.command.edit-code", + key: "ctrl+shift+v", + mac: "shift+cmd+v", + when: "cody.activated && !editorReadonly" + }, + { + command: "cody.command.inline-touch", + key: "ctrl+alt+/", + mac: "cmd+alt+/", + when: "cody.activated && editorTextFocus && editorHasSelection && config.cody.inlineChat.enabled" + }, + { + command: "cody.inline.new", + key: "ctrl+shift+c", + mac: "cmd+shift+c", + when: "cody.activated && editorFocus && config.cody.inlineChat.enabled", + enablement: "config.cody.inlineChat.enabled" + }, + { + command: "cody.action.commands.menu", + key: "alt+c", + mac: "alt+c", + when: "cody.activated" + }, + { + command: "-github.copilot.generate", + key: "ctrl+enter" + }, + { + command: "cody.autocomplete.manual-trigger", + key: "alt+\\", + when: "editorTextFocus && !editorHasSelection && config.cody.autocomplete.enabled && !inlineSuggestionsVisible" + } + ], + submenus: [ + { + label: "Cody", + id: "cody.submenu" + } + ], + menus: { + commandPalette: [ + { + command: "cody.command.edit-code", + when: "cody.activated && editorTextFocus" + }, + { + command: "cody.command.explain-code", + when: "false" + }, + { + command: "cody.command.context-search", + when: "false" + }, + { + command: "cody.command.inline-touch", + when: "false" + }, + { + command: "cody.command.smell-code", + when: "false" + }, + { + command: "cody.command.generate-tests", + when: "false" + }, + { + command: "cody.command.document-code", + when: "false" + }, + { + command: "cody.action.commands.custom.menu", + when: "cody.activated" + }, + { + command: "cody.focus", + title: "Cody: Sign In", + when: "!cody.activated" + }, + { + command: "cody.comment.add", + when: "false" + }, + { + command: "cody.comment.delete", + when: "false" + }, + { + command: "cody.comment.stop", + when: "false" + }, + { + command: "cody.comment.open-in-sidebar", + when: "false" + }, + { + command: "cody.comment.collapse-all", + when: "false" + }, + { + command: "cody.fixup.accept", + when: "false" + }, + { + command: "cody.fixup.accept-all", + when: "false" + }, + { + command: "cody.fixup.accept-by-file", + when: "false" + }, + { + command: "cody.fixup.diff", + when: "false" + }, + { + command: "cody.fixup.open", + when: "false" + }, + { + command: "cody.guardrails.debug", + when: "config.cody.experimental.guardrails && editorHasSelection" + } + ], + "editor/context": [ + { + submenu: "cody.submenu", + group: "0_cody" + } + ], + "cody.submenu": [ + { + command: "cody.command.explain-code", + when: "cody.activated", + group: "command" + }, + { + command: "cody.command.edit-code", + when: "cody.activated", + group: "ask" + }, + { + command: "cody.command.generate-tests", + when: "cody.activated", + group: "command" + }, + { + command: "cody.command.document-code", + when: "cody.activated", + group: "command" + }, + { + command: "cody.command.smell-code", + when: "cody.activated", + group: "command" + }, + { + command: "cody.action.commands.custom.menu", + when: "cody.activated", + group: "command" + }, + { + command: "cody.focus", + when: "!cody.activated", + group: "other" + }, + { + command: "cody.guardrails.debug", + when: "cody.activated && config.cody.experimental.guardrails && editorHasSelection", + group: "other" + }, + { + command: "cody.inline.new", + when: "cody.activated", + group: "ask" + } + ], + "view/title": [ + { + command: "cody.interactive.clear", + when: "view == cody.chat && cody.activated", + group: "navigation@1" + }, + { + command: "cody.history", + when: "view == cody.chat && cody.activated", + group: "navigation@2" + }, + { + command: "cody.status-bar.interacted", + when: "view == cody.chat && cody.activated", + group: "navigation@4" + }, + { + command: "cody.feedback", + when: "view == cody.chat", + group: "7_cody@0" + }, + { + command: "cody.welcome", + when: "view == cody.chat", + group: "7_cody@0" + }, + { + command: "cody.auth.signout", + when: "view == cody.chat && cody.activated", + group: "9_cody@2" + }, + { + command: "cody.auth.signin", + when: "view == cody.chat && cody.activated", + group: "9_cody@0" + }, + { + command: "cody.fixup.accept-all", + when: "cody.nonstop.fixups.enabled && view == cody.fixup.tree.view && cody.activated", + group: "navigation" + }, + { + command: "cody.chat.panel.new", + when: "view == cody.chat.tree.view && cody.activated", + group: "navigation@1" + }, + { + command: "cody.chat.history.clear", + when: "view == cody.chat.tree.view && cody.activated && cody.hasChatHistory", + enablement: "cody.hasChatHistory", + group: "navigation@2" + }, + { + command: "cody.chat.history.export", + when: "view == cody.chat.tree.view && cody.activated && cody.hasChatHistory", + enablement: "cody.hasChatHistory", + group: "navigation@3" + }, + { + command: "cody.feedback", + when: "view == cody.support.tree.view", + group: "7_cody@0" + }, + { + command: "cody.welcome", + when: "view == cody.support.tree.view", + group: "7_cody@0" + }, + { + command: "cody.auth.signin", + when: "view == cody.support.tree.view && cody.activated", + group: "9_cody@0" + }, + { + command: "cody.search.index-update", + when: "view == cody.search && cody.activated", + group: "navigation@1" + }, + { + command: "cody.search.index-update-all", + when: "view == cody.search && cody.activated", + group: "navigation@2" + } + ], + "editor/title": [ + { + command: "cody.action.commands.menu", + when: "cody.activated && config.cody.editorTitleCommandIcon && resourceScheme == file && !editorReadonly", + group: "navigation", + visibility: "visible" + }, + { + command: "cody.chat.panel.new", + when: "activeWebviewPanelId == cody.chatPanel && cody.activated", + group: "navigation", + visibility: "visible" + }, + { + command: "cody.chat.restart", + when: "activeWebviewPanelId == cody.chatPanel && cody.activated", + group: "navigation", + visibility: "visible" + } + ], + "comments/commentThread/context": [ + { + command: "cody.comment.add", + group: "inline", + when: "cody.activated && commentController =~ /^cody-inline/ && config.cody.inlineChat.enabled" + }, + { + command: "cody.focus", + group: "inline", + when: "!cody.activated && commentController =~ /^cody-inline/ && config.cody.inlineChat.enabled" + } + ], + "comments/commentThread/title": [ + { + command: "cody.comment.delete", + group: "inline@1", + when: "cody.activated && commentController =~ /^cody-inline/ && cody.replied && !commentThreadIsEmpty && config.cody.inlineChat.enabled" + }, + { + command: "cody.comment.open-in-sidebar", + group: "inline@2", + when: "cody.activated && commentController =~ /^cody-inline/ && cody.replied && config.cody.inlineChat.enabled" + }, + { + command: "cody.comment.collapse-all", + group: "inline@3", + when: "cody.activated && commentController =~ /^cody-inline/ && config.cody.inlineChat.enabled" + } + ], + "comments/comment/title": [ + { + command: "cody.comment.stop", + group: "inline@1", + when: "cody.activated && commentController =~ /^cody-inline/ && comment =~ /^cody-inline-(streaming|loading)/ && config.cody.inlineChat.enabled" + } + ], + "view/item/context": [ + { + command: "cody.chat.history.delete", + when: "view == cody.chat.tree.view && cody.activated && cody.hasChatHistory", + group: "inline" + }, + { + command: "cody.fixup.accept-by-file", + when: "cody.nonstop.fixups.enabled && view == cody.fixup.tree.view && cody.activated && viewItem == fsPath", + enable: "cody.fixup.filesWithApplicableFixups", + group: "inline" + }, + { + command: "cody.fixup.accept", + when: "cody.nonstop.fixups.enabled && view == cody.fixup.tree.view && cody.activated && viewItem == task", + group: "inline@2" + }, + { + command: "cody.fixup.diff", + when: "cody.nonstop.fixups.enabled && view == cody.fixup.tree.view && cody.activated && viewItem == task", + group: "inline@1" + } + ] + }, + configuration: { + type: "object", + title: "Cody", + properties: { + "cody.serverEndpoint": { + order: 1, + type: "string", + description: "URL to the Sourcegraph instance.", + examples: "https://example.sourcegraph.com", + markdownDeprecationMessage: "**Deprecated**: Please sign in via the UI instead. If you are already signed in, you can empty this field to remove this warning.", + deprecationMessage: "Deprecated: Please sign in via the UI instead." + }, + "cody.proxy": { + type: "string", + markdownDeprecationMessage: "The SOCKS proxy endpoint to access server endpoint. This is only supported with some autocomplete providers and only for use with the Cody Agent (for instance with JetBrains plugin). For VS Code please use http.proxy instead." + }, + "cody.codebase": { + order: 2, + type: "string", + markdownDescription: "The Git repository URL for your code. This will be sent to the Sourcegraph API to fetch the code graph context data. When set to empty, the URL will be inferred from your Git metadata.", + examples: [ + "https://github.com/sourcegraph/cody", + "ssh://git@github.com/sourcegraph/cody" + ] + }, + "cody.useContext": { + order: 3, + type: "string", + enum: [ + "embeddings", + "keyword", + "none", + "blended" + ], + default: "embeddings", + markdownDescription: "If 'embeddings' is selected, Cody will prefer to use an embeddings-based index when fetching context to generate responses to user requests. If no such index is found, it will fall back to using keyword-based local context fetching. If 'keyword' is selected, Cody will use keyword context. Selecting 'none' will limit Cody to using only the currently open file." + }, + "cody.customHeaders": { + order: 4, + type: "object", + markdownDescription: "Adds custom HTTP headers to all network requests to the Sourcegraph endpoint. Defining required headers here ensures requests are properly forwarded through intermediary proxy servers, which may mandate certain custom headers for internal or external communication.", + default: {}, + examples: [ + { + "Cache-Control": "no-cache", + "Proxy-Authenticate": "Basic" + } + ] + }, + "cody.autocomplete.enabled": { + order: 5, + type: "boolean", + markdownDescription: "Enables inline code suggestions in your editor.", + default: true + }, + "cody.autocomplete.languages": { + order: 5, + type: "object", + markdownDescription: "Enable or disable inline code suggestions for specified [languages](https://code.visualstudio.com/docs/languages/identifiers).", + default: { + "*": true, + scminput: false + } + }, + "cody.inlineChat.enabled": { + order: 10, + title: "Cody Inline Chat", + type: "boolean", + markdownDescription: "Enables asking questions and requesting code changes directly from within the code editor. Use the + button next to any line of code to start an inline chat.", + default: false + }, + "cody.editorTitleCommandIcon": { + order: 7, + type: "boolean", + markdownDescription: "Adds a Cody icon to the editor title menu for quick access to Cody commands.", + default: true + }, + "cody.experimental.chatPredictions": { + order: 8, + type: "boolean", + default: false, + markdownDescription: "Adds suggestions of possible relevant messages in the chat window." + }, + "cody.commandCodeLenses": { + order: 8, + type: "boolean", + markdownDescription: "Adds code lenses to current file for quick access to Cody commands.", + default: false + }, + "cody.experimental.guardrails": { + order: 9, + type: "boolean", + markdownDescription: "Experimental feature for internal use.", + default: false + }, + "cody.experimental.nonStop": { + order: 9, + type: "boolean", + markdownDescription: "Experimental feature for internal use.", + default: false + }, + "cody.experimental.localSymbols": { + order: 9, + type: "boolean", + default: false, + markdownDescription: "Experimental feature for internal use." + }, + "cody.chat.preInstruction": { + order: 6, + type: "string", + markdownDescription: "An instruction to be included at the start of all chat messages sent to Cody. Extension reload required.", + examples: [ + "Answer all my questions in Spanish." + ] + }, + "cody.codeActions.enabled": { + order: 11, + title: "Cody Code Actions", + type: "boolean", + markdownDescription: "Enable Cody fix and explain options in the Quick Fix menu", + default: true + }, + "cody.experimental.newSearch": { + order: 99, + type: "boolean", + markdownDescription: "New search UI", + default: false + }, + "cody.experimental.simpleChatContext": { + order: 99, + type: "boolean", + markdownDescription: "Uses the new simplifed chat context fetcher", + default: false + }, + "cody.experimental.symf.path": { + order: 99, + type: "string", + markdownDescription: "Path to symf binary", + default: "" + }, + "cody.debug.enable": { + order: 99, + type: "boolean", + markdownDescription: 'Turns on debug output (visible in the VS Code Output panel under "Cody by Sourcegraph")' + }, + "cody.debug.verbose": { + order: 99, + type: "boolean", + markdownDescription: "Enables verbose debug output. Debug messages may contain more details if the invocation includes verbose information." + }, + "cody.debug.filter": { + order: 99, + type: "string", + markdownDescription: "Regular expression to filter debug output. If empty, defaults to '.*', which prints all messages." + }, + "cody.telemetry.level": { + order: 99, + type: "string", + enum: [ + "all", + "off" + ], + enumDescriptions: [ + "Sends usage data and errors.", + "Disables all extension telemetry." + ], + markdownDescription: "Controls the telemetry about Cody usage and errors. See [Cody usage and privacy notice](https://about.sourcegraph.com/terms/cody-notice).", + default: "all" + }, + "cody.autocomplete.advanced.provider": { + type: "string", + default: null, + enum: [ + null, + "anthropic", + "fireworks", + "unstable-openai" + ], + markdownDescription: "The provider used for code autocomplete. Most providers other than `anthropic` require the `cody.autocomplete.advanced.serverEndpoint` and `cody.autocomplete.advanced.accessToken` settings to also be set. Check the Cody output channel for error messages if autocomplete is not working as expected." + }, + "cody.autocomplete.advanced.serverEndpoint": { + type: "string", + markdownDescription: "The server endpoint used for code autocomplete. This is only supported with a provider other than `anthropic`." + }, + "cody.autocomplete.advanced.accessToken": { + type: "string", + markdownDescription: "The access token used for code autocomplete. This is only supported with a provider other than `anthropic`." + }, + "cody.autocomplete.advanced.model": { + type: "string", + default: null, + enum: [ + null, + "starcoder-16b", + "starcoder-7b", + "starcoder-3b", + "starcoder-1b", + "wizardcoder-15b", + "llama-code-7b", + "llama-code-13b", + "llama-code-13b-instruct", + "mistral-7b-instruct-4k" + ], + markdownDescription: "Overwrite the model used for code autocompletion inference. This is only supported with the `fireworks` provider" + }, + "cody.autocomplete.completeSuggestWidgetSelection": { + type: "boolean", + default: true, + markdownDescription: "Autocomplete based on the currently selection in the suggest widget. Requires the VS Code user setting `editor.inlineSuggest.suppressSuggestions` set to true and will change it to true in user settings if it is not true." + }, + "cody.autocomplete.experimental.syntacticPostProcessing": { + type: "boolean", + default: true, + markdownDescription: "Rank autocomplete results with tree-sitter." + }, + "cody.autocomplete.experimental.dynamicMultilineCompletions": { + type: "boolean", + default: false, + markdownDescription: "Dynamically switch from singleline to multiline completion based on the first completion line." + }, + "cody.autocomplete.experimental.graphContext": { + type: "string", + default: null, + enum: [ + null, + "lsp-light", + "bfg", + "bfg-mixed" + ], + markdownDescription: "Use the code graph to retrieve context for autocomplete requests." + }, + "cody.experimental.chatPanel": { + order: 100, + type: "boolean", + markdownDescription: "Experimental feature for internal use.", + default: false + } + } + }, + icons: { + "cody-logo": { + description: "Cody logo", + default: { + fontPath: "resources/cody-icons.woff", + fontCharacter: "\\0041" + } + }, + "cody-logo-heavy": { + description: "Cody logo heavy", + default: { + fontPath: "resources/cody-icons.woff", + fontCharacter: "\\0042" + } + }, + "new-comment-icon": { + description: "Cody logo heavy", + default: { + fontPath: "resources/cody-icons.woff", + fontCharacter: "\\0048" + } + } + } + }, + dependencies: { + "@anthropic-ai/sdk": "^0.4.2", + "@mdi/js": "^7.2.96", + "@opentelemetry/exporter-trace-otlp-http": "^0.45.1", + "@opentelemetry/instrumentation-http": "^0.45.1", + "@opentelemetry/resources": "^1.18.1", + "@opentelemetry/sdk-node": "^0.45.1", + "@opentelemetry/semantic-conventions": "^1.18.1", + "@sentry/browser": "^7.66.0", + "@sentry/core": "^7.66.0", + "@sentry/node": "^7.66.0", + "@sourcegraph/cody-shared": "workspace:*", + "@sourcegraph/cody-ui": "workspace:*", + "@sourcegraph/telemetry": "^0.13.0", + "@types/stream-json": "^1.7.3", + "@vscode/codicons": "^0.0.29", + "@vscode/webview-ui-toolkit": "^1.2.2", + "async-mutex": "^0.4.0", + axios: "^1.3.6", + classnames: "^2.3.2", + "date-fns": "^2.30.0", + "detect-indent": "^7.0.1", + glob: "^7.2.3", + "isomorphic-fetch": "^3.0.0", + "js-levenshtein": "^1.1.6", + lodash: "^4.17.21", + "lru-cache": "^10.0.0", + mkdirp: "^3.0.1", + "mock-require": "^3.0.3", + openai: "^3.2.1", + "os-browserify": "^0.3.0", + "socks-proxy-agent": "^8.0.1", + "stream-json": "^1.8.0", + unzipper: "^0.10.14", + uuid: "^9.0.0", + "vscode-languageserver-textdocument": "^1.0.8", + "vscode-uri": "^3.0.7", + "web-tree-sitter": "^0.20.8", + "wink-eng-lite-web-model": "^1.5.0", + "wink-nlp": "^1.13.1", + "wink-nlp-utils": "^2.1.0" + }, + devDependencies: { + "@google-cloud/pubsub": "^3.7.3", + "@playwright/test": "^1.33.0", + "@types/axios": "^0.14.0", + "@types/dedent": "^0.7.0", + "@types/express": "^4.17.17", + "@types/glob": "^8.0.0", + "@types/isomorphic-fetch": "^0.0.38", + "@types/js-levenshtein": "^1.1.1", + "@types/lodash": "^4.14.195", + "@types/mocha": "^10.0.1", + "@types/mock-require": "^2.0.1", + "@types/progress": "^2.0.5", + "@types/semver": "^7.5.0", + "@types/unzipper": "^0.10.7", + "@types/uuid": "^9.0.2", + "@types/vscode": "^1.79.0", + "@types/vscode-webview": "^1.57.1", + "@vscode/test-electron": "^2.3.2", + "@vscode/test-web": "^0.0.47", + "@vscode/vsce": "^2.22.0", + "cody-icons-font": "workspace:^", + concurrently: "^8.2.0", + dedent: "^0.7.0", + envalid: "^7.3.1", + express: "^4.18.2", + fuzzysort: "^2.0.4", + mocha: "^10.2.0", + ovsx: "^0.8.2", + "path-browserify": "^1.0.1", + playwright: "^1.33.0", + progress: "^2.0.3", + semver: "^7.5.4" + } +}; + +// ../vscode/src/configuration-keys.ts +var { properties } = package_default.contributes.configuration; +function getConfigFromPackageJson() { + return Object.keys(properties).reduce((acc, key) => { + const keyProperty = (0, import_lodash2.camelCase)(key.split(".").slice(1).join(".")); + acc[keyProperty] = key; + return acc; + }, {}); +} +function getConfigEnumValues(key) { + const configKeys = properties[key]; + let enumValues = []; + if ("enum" in configKeys) { + enumValues = configKeys.enum; + } + return enumValues; +} +var CONFIG_KEY = getConfigFromPackageJson(); + +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/rng.js +var import_crypto = __toESM(require("crypto")); +var rnds8Pool = new Uint8Array(256); +var poolPtr = rnds8Pool.length; +function rng() { + if (poolPtr > rnds8Pool.length - 16) { + import_crypto.default.randomFillSync(rnds8Pool); + poolPtr = 0; + } + return rnds8Pool.slice(poolPtr, poolPtr += 16); +} + +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/stringify.js +var byteToHex = []; +for (let i = 0; i < 256; ++i) { + byteToHex.push((i + 256).toString(16).slice(1)); +} +function unsafeStringify(arr, offset = 0) { + return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); +} + +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/native.js +var import_crypto2 = __toESM(require("crypto")); +var native_default = { + randomUUID: import_crypto2.default.randomUUID +}; + +// ../node_modules/.pnpm/uuid@9.0.0/node_modules/uuid/dist/esm-node/v4.js +function v4(options2, buf, offset) { + if (native_default.randomUUID && !buf && !options2) { + return native_default.randomUUID(); + } + options2 = options2 || {}; + const rnds = options2.random || (options2.rng || rng)(); + rnds[6] = rnds[6] & 15 | 64; + rnds[8] = rnds[8] & 63 | 128; + if (buf) { + offset = offset || 0; + for (let i = 0; i < 16; ++i) { + buf[offset + i] = rnds[i]; + } + return buf; + } + return unsafeStringify(rnds); +} +var v4_default = v4; + +// ../vscode/src/services/LocalStorageProvider.ts +var LocalStorage = class { + // Bump this on storage changes so we don't handle incorrectly formatted data + KEY_LOCAL_HISTORY = "cody-local-chatHistory-v2"; + ANONYMOUS_USER_ID_KEY = "sourcegraphAnonymousUid"; + LAST_USED_ENDPOINT = "SOURCEGRAPH_CODY_ENDPOINT"; + CODY_ENDPOINT_HISTORY = "SOURCEGRAPH_CODY_ENDPOINT_HISTORY"; + KEY_LAST_USED_RECIPES = "SOURCEGRAPH_CODY_LAST_USED_RECIPE_NAMES"; + /** + * Should be set on extension activation via `localStorage.setStorage(context.globalState)` + * Done to avoid passing the local storage around as a parameter and instead + * access it as a singleton via the module import. + */ + _storage = null; + get storage() { + if (!this._storage) { + throw new Error("LocalStorage not initialized"); + } + return this._storage; + } + setStorage(storage) { + this._storage = storage; + } + getEndpoint() { + return this.storage.get(this.LAST_USED_ENDPOINT, null); + } + async saveEndpoint(endpoint) { + if (!endpoint) { + return; + } + try { + const uri = new URL(endpoint).href; + await this.storage.update(this.LAST_USED_ENDPOINT, uri); + await this.addEndpointHistory(uri); + } catch (error) { + console.error(error); + } + } + async deleteEndpoint() { + await this.storage.update(this.LAST_USED_ENDPOINT, null); + } + getEndpointHistory() { + return this.storage.get(this.CODY_ENDPOINT_HISTORY, null); + } + async deleteEndpointHistory() { + await this.storage.update(this.CODY_ENDPOINT_HISTORY, null); + } + async addEndpointHistory(endpoint) { + const history = this.storage.get(this.CODY_ENDPOINT_HISTORY, null); + const historySet = new Set(history); + historySet.delete(endpoint); + historySet.add(endpoint); + await this.storage.update(this.CODY_ENDPOINT_HISTORY, [...historySet]); + } + getChatHistory() { + const history = this.storage.get(this.KEY_LOCAL_HISTORY, null); + return history; + } + async setChatHistory(history) { + try { + await this.storage.update(this.KEY_LOCAL_HISTORY, history); + } catch (error) { + console.error(error); + } + } + async deleteChatHistory(chatID) { + const userHistory = this.getChatHistory(); + if (userHistory) { + try { + delete userHistory.chat[chatID]; + await this.storage.update(this.KEY_LOCAL_HISTORY, { ...userHistory }); + } catch (error) { + console.error(error); + } + } + } + async removeChatHistory() { + try { + await this.storage.update(this.KEY_LOCAL_HISTORY, null); + } catch (error) { + console.error(error); + } + } + /** + * Return the anonymous user ID stored in local storage or create one if none exists (which + * occurs on a fresh installation). + */ + async anonymousUserID() { + let id = this.storage.get(this.ANONYMOUS_USER_ID_KEY); + let created = false; + if (!id) { + created = true; + id = v4_default(); + try { + await this.storage.update(this.ANONYMOUS_USER_ID_KEY, id); + } catch (error) { + console.error(error); + } + } + return { anonymousUserID: id, created }; + } + async setLastUsedCommands(recipes) { + if (recipes.length === 0) { + return; + } + try { + await this.storage.update(this.KEY_LAST_USED_RECIPES, recipes); + } catch (error) { + console.error(error); + } + } + getLastUsedCommands() { + return this.storage.get(this.KEY_LAST_USED_RECIPES, null); + } + get(key) { + return this.storage.get(key, null); + } + async set(key, value) { + try { + await this.storage.update(key, value); + } catch (error) { + console.error(error); + } + } + async delete(key) { + await this.storage.update(key, void 0); + } +}; +var localStorage2 = new LocalStorage(); + +// ../vscode/src/services/SecretStorageProvider.ts +var CODY_ACCESS_TOKEN_SECRET = "cody.access-token"; +async function getAccessToken() { + try { + const token = await secretStorage.get(CODY_ACCESS_TOKEN_SECRET) || null; + if (token) { + return token; + } + throw new Error("token not found"); + } catch (error) { + logError("VSCodeSecretStorage:getAccessToken", "failed", { verbose: error }); + await secretStorage.delete(CODY_ACCESS_TOKEN_SECRET); + console.error(`Failed to retrieve access token for Cody from secret storage: ${error}`); + return null; + } +} +var VSCodeSecretStorage = class { + fsPath = null; + /** + * Should be set on extension activation via `secretStorage.setStorage(context.secrets)` + * Done to avoid passing the secret storage around as a parameter and instead + * access it as a singleton via the module import. + */ + _secretStorage = null; + get secretStorage() { + if (!this._secretStorage) { + throw new Error("SecretStorage not initialized"); + } + return this._secretStorage; + } + setStorage(secretStorage3) { + this._secretStorage = secretStorage3; + } + constructor() { + const config = workspace.getConfiguration("cody"); + this.fsPath = config.get("experimental.localTokenPath") || null; + if (this.fsPath) { + logDebug("VSCodeSecretStorage:experimental.localTokenPath", "enabled", { verbose: this.fsPath }); + } + } + // Catch corrupted token in secret storage + async get(key) { + if (this.fsPath && this.fsPath?.length > 0) { + return this.getFromFsPath(this.fsPath); + } + try { + if (key) { + return await this.secretStorage.get(key); + } + } catch (error) { + console.error("Failed to get token from Secret Storage", error); + } + return void 0; + } + async getFromFsPath(fsPath) { + return await getAccessTokenFromFsPath(fsPath) || void 0; + } + async store(key, value) { + try { + if (value?.length > 0) { + await this.secretStorage.store(key, value); + } + } catch (error) { + logError("VSCodeSecretStorage:store:failed", key, { verbose: error }); + } + } + async storeToken(endpoint, value) { + if (!value || !endpoint) { + return; + } + if (isLocalApp(endpoint)) { + await this.store("SOURCEGRAPH_CODY_APP", value); + } + await this.store(endpoint, value); + await this.store(CODY_ACCESS_TOKEN_SECRET, value); + } + async deleteToken(endpoint) { + await this.secretStorage.delete(endpoint); + await this.secretStorage.delete(CODY_ACCESS_TOKEN_SECRET); + } + async delete(key) { + await this.secretStorage.delete(key); + } + onDidChange(callback) { + return this.secretStorage.onDidChange((event) => { + if (event.key === CODY_ACCESS_TOKEN_SECRET) { + return callback(event.key); + } + return; + }); + } +}; +var InMemorySecretStorage = class { + storage; + callbacks; + constructor() { + this.storage = /* @__PURE__ */ new Map(); + this.callbacks = []; + } + async get(key) { + return Promise.resolve(this.storage.get(key)); + } + async store(key, value) { + if (!value) { + return; + } + this.storage.set(key, value); + for (const cb of this.callbacks) { + void cb(key); + } + return Promise.resolve(); + } + async storeToken(endpoint, value) { + await this.store(endpoint, value); + await this.store(CODY_ACCESS_TOKEN_SECRET, value); + } + async deleteToken(endpoint) { + await this.delete(endpoint); + await this.delete(CODY_ACCESS_TOKEN_SECRET); + } + async delete(key) { + this.storage.delete(key); + for (const cb of this.callbacks) { + void cb(key); + } + return Promise.resolve(); + } + onDidChange(callback) { + this.callbacks.push(callback); + return new Disposable(() => { + const callbackIndex = this.callbacks.indexOf(callback); + this.callbacks.splice(callbackIndex, 1); + }); + } +}; +async function getAccessTokenFromFsPath(fsPath) { + try { + const fsPathUri = Uri.file(fsPath); + const fileContent = await workspace.fs.readFile(fsPathUri); + const decoded = new TextDecoder("utf-8").decode(fileContent); + const json = JSON.parse(decoded); + if (!json.token) { + throw new Error("Failed to retrieve token from: " + fsPath); + } + logDebug("VSCodeSecretStorage:getAccessTokenFromFsPath", "retrieved"); + return json.token; + } catch (error) { + logError("VSCodeSecretStorage:getAccessTokenFromFsPath", "failed", { verbose: error }); + return null; + } +} +var secretStorage = process.env.CODY_TESTING === "true" || process.env.CODY_PROFILE_TEMP === "true" ? new InMemorySecretStorage() : new VSCodeSecretStorage(); + +// ../vscode/src/configuration.ts +function getConfiguration(config = workspace.getConfiguration()) { + const isTesting2 = process.env.CODY_TESTING === "true"; + let debugRegex = null; + try { + const debugPattern = config.get(CONFIG_KEY.debugFilter, null); + if (debugPattern) { + if (debugPattern === "*") { + debugRegex = new RegExp(".*"); + } else { + debugRegex = new RegExp(debugPattern); + } + } + } catch (error) { + void window2.showErrorMessage("Error parsing cody.debug.filter regex - using default '*'", error); + debugRegex = new RegExp(".*"); + } + let autocompleteExperimentalGraphContext = config.get( + CONFIG_KEY.autocompleteExperimentalGraphContext, + null + ); + if (autocompleteExperimentalGraphContext === true) { + autocompleteExperimentalGraphContext = "lsp-light"; + } + let autocompleteAdvancedProvider = config.get( + CONFIG_KEY.autocompleteAdvancedProvider, + null + ); + if (autocompleteAdvancedProvider === "unstable-fireworks") { + autocompleteAdvancedProvider = "fireworks"; + } + const configKeys = ["autocompleteAdvancedProvider", "autocompleteAdvancedModel"]; + for (const configVal of configKeys) { + const key = configVal.replaceAll(/([A-Z])/g, ".$1").toLowerCase(); + const value = config.get(CONFIG_KEY[configVal]); + checkValidEnumValues(key, value); + } + return { + // NOTE: serverEndpoint is now stored in Local Storage instead but we will still keep supporting the one in confg + // to use as fallback for users who do not have access to local storage + serverEndpoint: sanitizeServerEndpoint(config.get(CONFIG_KEY.serverEndpoint, "")), + proxy: config.get(CONFIG_KEY.proxy, null), + codebase: sanitizeCodebase(config.get(CONFIG_KEY.codebase)), + customHeaders: config.get(CONFIG_KEY.customHeaders, {}), + useContext: config.get(CONFIG_KEY.useContext) || "embeddings", + debugEnable: config.get(CONFIG_KEY.debugEnable, false), + debugVerbose: config.get(CONFIG_KEY.debugVerbose, false), + debugFilter: debugRegex, + telemetryLevel: config.get(CONFIG_KEY.telemetryLevel, "all"), + autocomplete: config.get(CONFIG_KEY.autocompleteEnabled, true), + autocompleteLanguages: config.get(CONFIG_KEY.autocompleteLanguages, { + "*": true, + scminput: false + }), + experimentalChatPanel: config.get(CONFIG_KEY.experimentalChatPanel, isTesting2), + experimentalChatPredictions: config.get(CONFIG_KEY.experimentalChatPredictions, isTesting2), + experimentalSearchPanel: config.get(CONFIG_KEY.experimentalNewSearch, isTesting2), + experimentalSimpleChatContext: config.get(CONFIG_KEY.experimentalSimpleChatContext, isTesting2), + chatPreInstruction: config.get(CONFIG_KEY.chatPreInstruction), + experimentalGuardrails: config.get(CONFIG_KEY.experimentalGuardrails, isTesting2), + experimentalNonStop: config.get(CONFIG_KEY.experimentalNonStop, isTesting2), + experimentalLocalSymbols: config.get(CONFIG_KEY.experimentalLocalSymbols, false), + commandCodeLenses: config.get(CONFIG_KEY.commandCodeLenses, false), + editorTitleCommandIcon: config.get(CONFIG_KEY.editorTitleCommandIcon, true), + autocompleteAdvancedProvider, + autocompleteAdvancedServerEndpoint: config.get( + CONFIG_KEY.autocompleteAdvancedServerEndpoint, + null + ), + autocompleteAdvancedModel: config.get(CONFIG_KEY.autocompleteAdvancedModel, null), + autocompleteAdvancedAccessToken: config.get(CONFIG_KEY.autocompleteAdvancedAccessToken, null), + autocompleteCompleteSuggestWidgetSelection: config.get( + CONFIG_KEY.autocompleteCompleteSuggestWidgetSelection, + true + ), + autocompleteExperimentalSyntacticPostProcessing: config.get( + CONFIG_KEY.autocompleteExperimentalSyntacticPostProcessing, + true + ), + autocompleteExperimentalGraphContext, + autocompleteExperimentalDynamicMultilineCompletions: config.get( + CONFIG_KEY.autocompleteExperimentalDynamicMultilineCompletions, + false + ), + // NOTE: Inline Chat will be deprecated soon - Do not enable inline-chat when experimental.chatPanel is enabled + inlineChat: config.get(CONFIG_KEY.inlineChatEnabled, false) !== config.get(CONFIG_KEY.experimentalChatPanel, isTesting2), + codeActions: config.get(CONFIG_KEY.codeActionsEnabled, true), + /** + * UNDOCUMENTED FLAGS + */ + // Note: In spirit, we try to minimize agent-specific code paths in the VSC extension. + // We currently use this flag for the agent to provide more helpful error messages + // when something goes wrong, and to suppress event logging in the agent. + // Rely on this flag sparingly. + isRunningInsideAgent: config.get("cody.advanced.agent.running", false), + agentIDE: config.get("cody.advanced.agent.ide"), + autocompleteTimeouts: { + multiline: config.get("cody.autocomplete.advanced.timeout.multiline", void 0), + singleline: config.get( + "cody.autocomplete.advanced.timeout.singleline", + void 0 + ) + } + }; +} +function sanitizeCodebase(codebase) { + if (!codebase) { + return ""; + } + const protocolRegexp = /^(https?):\/\//; + const trailingSlashRegexp = /\/$/; + return codebase.replace(protocolRegexp, "").trim().replace(trailingSlashRegexp, ""); +} +function sanitizeServerEndpoint(serverEndpoint2) { + if (!serverEndpoint2) { + const isTesting2 = process.env.CODY_TESTING === "true"; + if (isTesting2) { + return "http://localhost:49300/"; + } + return DOTCOM_URL.href; + } + const trailingSlashRegexp = /\/$/; + return serverEndpoint2.trim().replace(trailingSlashRegexp, ""); +} +var getFullConfig = async () => { + const config = getConfiguration(); + config.serverEndpoint = localStorage2?.getEndpoint() || config.serverEndpoint; + const accessToken = await getAccessToken() || null; + return { ...config, accessToken }; +}; +function checkValidEnumValues(configName, value) { + const validEnumValues = getConfigEnumValues("cody." + configName); + if (value) { + if (!validEnumValues.includes(value)) { + void window2.showErrorMessage( + `Invalid value for ${configName}: ${value}. Valid values are: ${validEnumValues.join(", ")}` + ); + } + } +} + +// ../vscode/src/log.ts +var outputChannel = window2.createOutputChannel("Cody by Sourcegraph", "json"); +function logDebug(filterLabel, text, ...args3) { + log("error", filterLabel, text, ...args3); +} +function logError(filterLabel, text, ...args3) { + log("error", filterLabel, text, ...args3); +} +function log(level, filterLabel, text, ...args3) { + const workspaceConfig = workspace.getConfiguration(); + const config = getConfiguration(workspaceConfig); + const debugEnable = process.env.CODY_DEBUG_ENABLE === "true" || config.debugEnable; + if (!outputChannel || level === "debug" && !debugEnable) { + return; + } + if (level === "debug" && config.debugFilter && !config.debugFilter.test(filterLabel)) { + return; + } + const PREFIX = "\u2588 "; + if (args3.length === 0) { + outputChannel.appendLine(`${PREFIX}${filterLabel}: ${text}`); + return; + } + const lastArg = args3.at(-1); + if (lastArg && typeof lastArg === "object" && "verbose" in lastArg) { + if (config.debugVerbose) { + outputChannel.appendLine( + `${PREFIX}${filterLabel}: ${text} ${args3.slice(0, -1).join(" ")} ${JSON.stringify( + lastArg.verbose, + null, + 2 + )}` + ); + } else { + outputChannel.appendLine(`${PREFIX}${filterLabel}: ${text} ${args3.slice(0, -1).join(" ")}`); + } + return; + } + outputChannel.appendLine(`${PREFIX}${filterLabel}: ${text} ${args3.join(" ")}`); +} +var logger = { + startCompletion(params) { + const workspaceConfig = workspace.getConfiguration(); + const config = getConfiguration(workspaceConfig); + if (!config.debugEnable) { + return void 0; + } + const start4 = Date.now(); + const type2 = "prompt" in params ? "code-completion" : "messages" in params ? "completion" : "code-completion"; + let hasFinished = false; + let lastCompletion = ""; + function onError(err2) { + if (hasFinished) { + return; + } + hasFinished = true; + logError( + "CompletionLogger:onError", + JSON.stringify({ + type: type2, + status: "error", + duration: Date.now() - start4, + err: err2 + }), + { verbose: { params } } + ); + } + function onComplete(result) { + if (hasFinished) { + return; + } + hasFinished = true; + logDebug( + "CompletionLogger:onComplete", + JSON.stringify({ + type: type2, + status: "success", + duration: Date.now() - start4 + }), + { verbose: { result, params } } + ); + } + function onEvents(events) { + for (const event of events) { + switch (event.type) { + case "completion": + lastCompletion = event.completion; + break; + case "error": + onError(event.error); + break; + case "done": + onComplete(lastCompletion); + break; + } + } + } + return { + onError, + onComplete, + onEvents + }; + } +}; + +// ../vscode/src/editor/utils/document-sections.ts +async function getDocumentSections(doc, getFoldingRanges2 = defaultGetFoldingRanges, getSymbols = defaultGetSymbols) { + const isPlainText = doc.languageId === "plaintext"; + const foldingRanges = await getFoldingRanges2(doc.uri).then((r) => r?.filter((r2) => !r2.kind)); + if (!foldingRanges?.length) { + return []; + } + const innerRanges = await removeOutermostFoldingRanges(doc, foldingRanges, getSymbols); + const ranges = removeNestedFoldingRanges(innerRanges, isPlainText); + return ranges.map((r) => foldingRangeToRange(doc, r)); +} +async function getSelectionAroundLine(doc, line) { + const smartRanges = await getDocumentSections(doc); + const range = findRangeByLine(smartRanges, line); + if (!range) { + return void 0; + } + return new Selection(range.start, range.end); +} +function findRangeByLine(ranges, targetLine) { + return ranges.find((range) => range.start.line <= targetLine && range.end.line >= targetLine); +} +var TOO_LARGE_SECTION = 100; +async function getOutermostFoldingRanges(doc, ranges, getSymbols) { + const symbolBased = await getSymbols(doc.uri).then( + (r) => r.filter( + (s) => s.kind === 4 /* Class */ || s.kind === 1 /* Module */ || s.kind === 2 /* Namespace */ || rangeLines(s.location.range) > TOO_LARGE_SECTION + ) + ).then((s) => s.map((symbol) => symbol.location.range)); + if (symbolBased.length > 0) { + return symbolBased; + } + const outermostFoldingRanges = removeNestedFoldingRanges(ranges); + const firstLines = outermostFoldingRanges.map((r) => doc.lineAt(r.start).text); + return outermostFoldingRanges.map((r) => foldingRangeToRange(doc, r)).filter( + (r, i) => firstLines[i].includes("class") || firstLines[i].startsWith("object") || rangeLines(r) > TOO_LARGE_SECTION + ); +} +async function removeOutermostFoldingRanges(doc, foldingRanges, getSymbols) { + const outermostRanges = await getOutermostFoldingRanges(doc, foldingRanges, getSymbols); + if (!outermostRanges.length || !foldingRanges?.length) { + return foldingRanges; + } + for (const oRanges of outermostRanges) { + for (let i = 0; i < foldingRanges.length; i++) { + const range = foldingRanges[i]; + if (range.start === oRanges.start.line && Math.abs(range.end - oRanges.end.line) <= 1) { + foldingRanges.splice(i, 1); + i--; + } + } + } + return foldingRanges; +} +function removeNestedFoldingRanges(ranges, isTextBased = false) { + const filtered = isTextBased ? combineNeighborFoldingRanges(ranges) : ranges; + return filtered.filter( + (cur) => !filtered.some((next) => next !== cur && next.start <= cur.start && next.end >= cur.end) + ); +} +function combineNeighborFoldingRanges(ranges) { + const combinedRanges = []; + let currentChain = []; + let lastChainRange = currentChain.at(-1); + for (const range of ranges) { + lastChainRange = currentChain.at(-1); + if (currentChain.length > 0 && lastChainRange?.end === range.start - 1) { + currentChain.push(range); + } else { + if (currentChain.length > 0 && lastChainRange) { + combinedRanges.push(new (void 0)(currentChain[0].start, lastChainRange.end)); + } + currentChain = [range]; + } + } + if (lastChainRange && currentChain.length > 0) { + combinedRanges.push(new (void 0)(currentChain[0].start, lastChainRange.end)); + } + return combinedRanges; +} +var closingSymbols = /^(}|]|\)|>|end|fi|elsif)/; +function foldingRangeToRange(doc, range) { + const nextLine = doc.getText(new Range(range.end + 1, 0, range.end + 2, 0)); + const includeNextLine = !!nextLine.trim().match(closingSymbols); + const start4 = range.start; + const end = range.end + (includeNextLine ? 1 : 0); + const endLine = doc.getText(new Range(end, 0, end + 1, 0)); + return new Range(start4, 0, end, endLine.length - 1); +} +function rangeLines(range) { + return range.end.line - range.start.line; +} +async function defaultGetSymbols(uri) { + return await commands.executeCommand( + "vscode.executeDocumentSymbolProvider", + uri + ) || []; +} +async function defaultGetFoldingRanges(uri) { + return await commands.executeCommand("vscode.executeFoldingRangeProvider", uri) || []; +} + +// ../vscode/src/editor/utils/index.ts +async function getSmartSelection(uri, target) { + return getSelectionAroundLine(await workspace.openTextDocument(uri), target); +} +async function getWorkspaceSymbols(query = "") { + return commands.executeCommand("vscode.executeWorkspaceSymbolProvider", query); +} +function getOpenTabsUris() { + const uris = []; + const tabGroups2 = window2.tabGroups.all; + const openTabs = tabGroups2.flatMap((group) => group.tabs.map((tab) => tab.input)); + for (const tab of openTabs) { + if (tab?.uri?.scheme === "file") { + uris.push(tab.uri); + } + } + return uris; +} + +// ../lib/shared/src/telemetry/EventLogger.ts +var EventLogger = class { + constructor(serverEndpoint2, extensionDetails, config) { + this.serverEndpoint = serverEndpoint2; + this.extensionDetails = extensionDetails; + this.config = config; + this.gqlAPIClient = new SourcegraphGraphQLAPIClient(this.config); + this.setSiteIdentification().catch((error) => console.error(error)); + if (this.extensionDetails.ideExtensionType !== "Cody") { + throw new Error(`new extension type ${this.extensionDetails.ideExtensionType} not yet accounted for`); + } + switch (this.extensionDetails.ide) { + case "VSCode": + this.client = "VSCODE_CODY_EXTENSION"; + break; + case "Emacs": + this.client = "EMACS_CODY_EXTENSION"; + break; + case "JetBrains": + this.client = "JETBRAINS_CODY_EXTENSION"; + break; + case "Neovim": + this.client = "NEOVIM_CODY_EXTENSION"; + break; + default: + throw new Error(`new IDE ${this.extensionDetails.ide} not yet accounted for`); + } + } + gqlAPIClient; + client; + siteIdentification; + onConfigurationChange(newServerEndpoint, newExtensionDetails, newConfig) { + this.serverEndpoint = newServerEndpoint; + this.extensionDetails = newExtensionDetails; + this.config = newConfig; + this.gqlAPIClient.onConfigurationChange(newConfig); + this.setSiteIdentification().catch((error) => console.error(error)); + } + async setSiteIdentification() { + const siteIdentification = await this.gqlAPIClient.getSiteIdentification(); + if (isError2(siteIdentification)) { + } else { + this.siteIdentification = siteIdentification; + } + } + /** + * Log a telemetry event using the legacy event-logging mutations. + * + * DEPRECATED: Callsites should ALSO record an event using services/telemetryV2 + * as well and indicate this has happened, for example: + * + * logEvent(name, properties, { hasV2Event: true }) + * telemetryRecorder.recordEvent(...) + * + * In the future, all usages of TelemetryService will be removed in + * favour of the new libraries. For more information, see: + * https://docs.sourcegraph.com/dev/background-information/telemetry + * + * PRIVACY: Do NOT include any potentially private information in `eventProperties`. These + * properties may get sent to analytics tools, so must not include private information, such as + * search queries or repository names. + * @param eventName The name of the event. + * @param anonymousUserID The randomly generated unique user ID. + * @param properties Event properties. Do NOT include any private information, such as full + * URLs that may contain private repository names or search queries. + */ + log(eventName, anonymousUserID, properties2, opts = { hasV2Event: false }) { + const hasV2Event = opts.hasV2Event || properties2?.hasV2Event; + const publicArgument = { + ...properties2, + serverEndpoint: this.serverEndpoint, + extensionDetails: this.extensionDetails, + configurationDetails: { + contextSelection: this.config.useContext, + chatPredictions: this.config.experimentalChatPredictions, + inline: this.config.inlineChat, + nonStop: this.config.experimentalNonStop, + guardrails: this.config.experimentalGuardrails, + newChatUI: this.config.experimentalChatPanel + }, + version: this.extensionDetails.version, + // for backcompat + hasV2Event + }; + this.gqlAPIClient.logEvent( + { + event: eventName, + userCookieID: anonymousUserID, + source: "IDEEXTENSION", + url: "", + argument: "{}", + publicArgument: JSON.stringify(publicArgument), + client: this.client, + connectedSiteID: this.siteIdentification?.siteid, + hashedLicenseKey: this.siteIdentification?.hashedLicenseKey + }, + /** + * If a V2 event is created, the new recorder's exporter will + * make sure that the instance receives a copy of the event. + * In this case, this event log is only created for backcompat + * with existing dotcom data, so we log only to dotcom. + */ + hasV2Event ? "dotcom-only" : "all" + ).then((response) => { + if (isError2(response)) { + console.error("Error logging event", response); + } + }).catch((error) => console.error("Error logging event", error)); + } +}; + +// ../vscode/src/os.ts +var import_os = __toESM(require("os")); +function getOSArch() { + const nodePlatformToPlatform = { + darwin: "macos", + linux: "linux", + win32: "windows" + }; + const nodeMachineToArch = { + arm64: "aarch64", + aarch64: "aarch64", + x86_64: "x86_64", + x64: "x86_64", + i386: "x86", + i686: "x86" + }; + let platform4; + try { + platform4 = nodePlatformToPlatform[import_os.default.platform()]; + } catch { + } + let arch2; + try { + arch2 = nodeMachineToArch[import_os.default.arch()]; + } catch { + } + return { + platform: platform4, + arch: arch2 + }; +} + +// ../vscode/src/services/telemetry.ts +var eventLogger = null; +var telemetryLevel = "off"; +var globalAnonymousUserID; +var { platform, arch } = getOSArch(); +var extensionVersion = extensions.getExtension("sourcegraph.cody-ai")?.packageJSON?.version ?? version; +var getExtensionDetails = (config) => ({ + ide: config.agentIDE ?? "VSCode", + ideExtensionType: "Cody", + platform: platform ?? "browser", + arch, + // Prefer the runtime package json over the version that is inlined during build times. This + // way we will be able to include pre-release builds that are published with a different version + // identifier. + version: extensionVersion +}); +async function createOrUpdateEventLogger(config, isExtensionModeDevOrTest) { + if (config.telemetryLevel === "off" || isExtensionModeDevOrTest) { + if (process.env.CODY_TESTING !== "true") { + eventLogger = null; + telemetryLevel = "off"; + return; + } + } + const extensionDetails = getExtensionDetails(config); + telemetryLevel = config.telemetryLevel; + const { anonymousUserID, created } = await localStorage2.anonymousUserID(); + globalAnonymousUserID = anonymousUserID; + const serverEndpoint2 = localStorage2?.getEndpoint() || config.serverEndpoint; + if (!eventLogger) { + eventLogger = new EventLogger(serverEndpoint2, extensionDetails, config); + if (created) { + logEvent("CodyInstalled", void 0, { + hasV2Event: true + // Created in src/services/telemetry-v2.ts + }); + } else if (!config.isRunningInsideAgent) { + logEvent("CodyVSCodeExtension:CodySavedLogin:executed", void 0, { + hasV2Event: true + // Created in src/services/telemetry-v2.ts + }); + } + return; + } + eventLogger?.onConfigurationChange(serverEndpoint2, extensionDetails, config); +} +function logEvent(eventName, properties2, opts) { + if (telemetryLevel === "agent" && !opts?.agent) { + return; + } + logDebug( + `logEvent${eventLogger === null || process.env.CODY_TESTING === "true" ? " (telemetry disabled)" : ""}`, + eventName, + getExtensionDetails(getConfiguration(workspace.getConfiguration())).ide, + JSON.stringify({ properties: properties2, opts }) + ); + if (!eventLogger || !globalAnonymousUserID) { + return; + } + try { + eventLogger.log(eventName, globalAnonymousUserID, properties2, opts); + } catch (error) { + console.error(error); + } +} +var telemetryService = { + log(eventName, properties2, opts) { + logEvent(eventName, properties2, opts); + } +}; +function logPrefix(ide) { + return ide ? { + VSCode: "CodyVSCodeExtension", + JetBrains: "CodyJetBrainsPlugin", + Emacs: "CodyEmacsPlugin", + Neovim: "CodyNeovimPlugin" + }[ide] : "CodyVSCodeExtension"; +} + +// ../vscode/src/commands/CommandRunner.ts +var CommandRunner = class { + constructor(command, instruction, isFixupRequest) { + this.command = command; + this.instruction = instruction; + this.isFixupRequest = isFixupRequest; + const commandKey = command.slashCommand; + this.kind = command.type === "default" ? commandKey.replace("/", "") : "custom"; + if (instruction?.startsWith("/edit ")) { + command.mode = "edit"; + } else { + command.mode = command.mode || "ask"; + } + telemetryService.log(`CodyVSCodeExtension:command:${this.kind}:executed`, { + mode: command.mode, + useCodebaseContex: !!command.context?.codebase, + useShellCommand: !!command.context?.command, + requestID: command.requestID + }); + logDebug("CommandRunner:init", this.kind); + this.editor = getActiveEditor(); + if (!this.editor && !command.context?.none && command.slashCommand !== "/ask") { + const errorMsg = "Failed to create command: No active text editor found."; + logDebug("CommandRunner:int:fail", errorMsg); + void window2.showErrorMessage(errorMsg); + return; + } + if (command.mode === "inline") { + void this.handleInlineRequest(); + return; + } + const insertMode = command.mode === "insert"; + const fixupMode = command.mode === "edit" || instruction?.startsWith("/edit "); + this.isFixupRequest = isFixupRequest || fixupMode || insertMode; + if (this.isFixupRequest) { + void this.handleFixupRequest(insertMode); + return; + } + } + id = `c${Date.now().toString(36).replaceAll(/\d+/g, "")}`; + editor = void 0; + contextOutput = void 0; + disposables = []; + kind; + /** + * codyCommand getter returns command CodyPrompt if not a fixup request, + * otherwise returns null. Updates context output if needed. + */ + get codyCommand() { + if (this.isFixupRequest) { + return null; + } + const context2 = this.command.context; + if (context2) { + context2.output = this.contextOutput; + this.command.context = context2; + } + return this.command; + } + /** + * runShell method sets contextOutput and updates command context. + */ + async runShell(output) { + this.contextOutput = await output; + const context2 = this.command.context; + if (context2) { + context2.output = this.contextOutput; + this.command.context = context2; + logDebug("CommandRunner:runShell:output", "found", { + verbose: { command: this.command.context?.command } + }); + } + } + /** + * handleFixupRequest method handles executing fixup based on editor selection. + * Creates range and instruction, calls fixup command. + */ + async handleFixupRequest(insertMode = false) { + logDebug("CommandRunner:handleFixupRequest", "fixup request detected"); + let selection = this.editor?.selection; + const doc = this.editor?.document; + if (!this.editor || !selection || !doc) { + return; + } + if (selection?.start.isEqual(selection.end)) { + const curLine = selection.start.line; + const curLineRange = doc.lineAt(curLine).range; + selection = await getSmartSelection(doc.uri, curLine) || new Selection(curLineRange.start, curLineRange.end); + if (selection?.isEmpty) { + return; + } + } + const code = this.editor?.document.getText(selection); + if (!code || !selection) { + return; + } + const range = this.kind === "doc" ? getDocCommandRange(this.editor, selection, doc.languageId) : selection; + const intent = this.kind === "doc" ? "doc" : "edit"; + const instruction = insertMode ? addSelectionToPrompt(this.command.prompt, code) : this.command.prompt; + const source2 = this.kind; + await commands.executeCommand( + "cody.command.edit-code", + { + range, + instruction, + document: doc, + intent, + auto: true, + insertMode + }, + source2 + ); + } + /** + * handleInlineRequest method handles executing inline request based on editor selection. + * + * Gets the current editor selection range and document. + * Returns early if no range or document. + * Gets the folding range if selection start equals end. + * + * Calls the vscode.commands.executeCommand with the 'cody.inline.add' command, + * passing the instruction prompt and range. + * + * This executes the inline request using the current selection range in the editor. + */ + async handleInlineRequest() { + logDebug("CommandRunner:handleFixupRequest", "inline chat request detected"); + let range = this.editor?.selection; + const doc = this.editor?.document; + if (!range || !doc) { + return; + } + if (range?.start.isEqual(range.end)) { + range = await getSmartSelection(doc.uri, range.start.line); + } + const instruction = this.command.prompt; + await commands.executeCommand("cody.inline.add", instruction, range); + } + /** + * dispose method cleans up disposables. + */ + dispose() { + for (const disposable of this.disposables) { + disposable.dispose(); + } + this.disposables = []; + } +}; +function addSelectionToPrompt(prompt2, code) { + return prompt2 + "\nHere is the code: \n" + code + ""; +} +function getDocCommandRange(editor, selection, languageId) { + const startLine = languageId === "python" ? selection.start.line + 1 : selection.start.line; + const pos = new Position(startLine, 0); + if (editor) { + const visibleRange = editor.visibleRanges; + if (!visibleRange.some((range) => range.contains(selection))) { + editor?.revealRange(selection, (void 0).InCenter); + } + } + return new Selection(pos, pos); +} + +// ../vscode/src/commands/CustomPromptsStore.ts +var import_lodash3 = __toESM(require_lodash()); + +// ../lib/shared/src/chat/prompts/cody.json +var commands2 = { + doc: { + description: "Generate code documentation", + prompt: "Write a brief documentation comment for the selected code. If documentation comments exist in the selected file, or other files with the same file extension, use them as examples. Pay attention to the scope of the selected code (e.g. exported function/API vs implementation detail in a function), and use the idiomatic style for that type of code scope. Only generate the documentation for the selected code, do not generate the code. Do not output any other code or comments besides the documentation. Output only the comment and do not enclose it in markdown.", + context: { + currentFile: true, + selection: true + }, + mode: "insert" + }, + explain: { + description: "Explain code", + prompt: "Explain what the selected code does in simple terms. Assume the audience is a beginner programmer who has just learned the language features and basic syntax. Focus on explaining: 1) The purpose of the code 2) What input(s) it takes 3) What output(s) it produces 4) How it achieves its purpose through the logic and algorithm. 5) Any important logic flows or data transformations happening. Use simple language a beginner could understand. Include enough detail to give a full picture of what the code aims to accomplish without getting too technical. Format the explanation in coherent paragraphs, using proper punctuation and grammar. Write the explanation assuming no prior context about the code is known. Do not make assumptions about variables or functions not shown in the shared code. Start the answer with the name of the code that is being explained.", + context: { + currentFile: true + } + }, + test: { + description: "Generate unit tests", + prompt: "Review the shared code context and configurations to identify the test framework and libraries in use. Then, generate a suite of multiple unit tests for the functions in using the detected test framework and libraries. Be sure to import the function being tested. Follow the same patterns as any shared context. Only add packages, imports, dependencies, and assertions if they are used in the shared code. Pay attention to the file path of each shared context to see if test for already exists. If one exists, focus on generating new unit tests for uncovered cases. If none are detected, import common unit test libraries for {languageName}. Focus on validating key functionality with simple and complete assertions. Only include mocks if one is detected in the shared code. Before writing the tests, identify which test libraries and frameworks to import, e.g. 'No new imports needed - using existing libs' or 'Importing test framework that matches shared context usage' or 'Importing the defined framework', etc. Then briefly summarize test coverage and any limitations. At the end, enclose the full completed code for the new unit tests, including all necessary imports, in a single markdown codeblock. No fragments or TODO. The new tests should validate expected functionality and cover edge cases for with all required imports, including importing the function being tested. Do not repeat existing tests.", + context: { + currentDir: true, + currentFile: true, + selection: true + } + }, + smell: { + description: "Find code smells", + prompt: "Please review and analyze the {languageName} code I have selected and identify potential areas for improvement related to code smells, readability, maintainability, performance, security, etc. Do not list issues already addressed in the given code. Focus on providing up to 5 constructive suggestions that could make the code more robust, efficient, or align with best practices. For each suggestion, provide a brief explanation of the potential benefits. After listing any recommendations, summarize if you found notable opportunities to enhance the code quality overall or if the code generally follows sound design principles. If no issues found, reply 'There are no errors.'" + } +}; + +// ../lib/shared/src/chat/prompts/index.ts +var defaultChatCommands = /* @__PURE__ */ new Set(["explain", "doc", "edit", "smell", "test"]); +function getDefaultCommandsMap(editorCommands2 = []) { + const map = /* @__PURE__ */ new Map(); + for (const command of editorCommands2) { + if (command.slashCommand) { + map.set(command.slashCommand, command); + } + } + const prompts2 = commands2; + for (const key in prompts2) { + if (Object.prototype.hasOwnProperty.call(prompts2, key)) { + const prompt2 = prompts2[key]; + prompt2.type = "default"; + prompt2.slashCommand = toSlashCommand(key); + map.set(prompt2.slashCommand, prompt2); + } + } + return map; +} +function getCommandEventSource(command) { + if (command?.type === "default") { + const commandName = command.slashCommand.replace(/^\//, ""); + if (defaultChatCommands.has(commandName)) { + return commandName; + } + } + return "custom-commands"; +} +var ConfigFileName = { + vscode: ".vscode/cody.json" +}; +var defaultCodyPromptContext = { + codebase: false +}; + +// ../vscode/src/commands/utils/helpers.ts +function constructFileUri(fileName, rootDirPath) { + if (!rootDirPath) { + return void 0; + } + const fileNamePaths = fileName.split("/"); + const rootDirUri = Uri.file(rootDirPath); + const codyJsonFilePath = Uri.joinPath(rootDirUri, ...fileNamePaths); + return codyJsonFilePath; +} +async function createJSONFile(extensionPath, configFileUri) { + await saveJSONFile({ commands: [] }, configFileUri); +} +async function saveJSONFile(data, filePath) { + try { + const workspaceEditor = new WorkspaceEdit(); + workspaceEditor.deleteFile(filePath, { ignoreIfNotExists: true }); + workspaceEditor.createFile(filePath, { ignoreIfExists: true }); + workspaceEditor.insert(filePath, new Position(0, 0), JSON.stringify(data, null, 2)); + await workspace.applyEdit(workspaceEditor); + const doc = await workspace.openTextDocument(filePath); + await doc.save(); + } catch (error) { + throw new Error(`Failed to save your Custom Commands to a JSON file: ${error}`); + } +} +function createFileWatchers(fsPath) { + const fileUri = constructFileUri(ConfigFileName.vscode, fsPath); + if (!fileUri) { + return null; + } + const watchPattern = new RelativePattern(fileUri, "*"); + const watcher = workspace.createFileSystemWatcher(watchPattern); + return watcher; +} +async function deleteFile(uri) { + if (!uri) { + return; + } + await workspace.fs.delete(uri); +} +var createQuickPickItem = (label = "", description = "", alwaysShow = false) => ({ + label, + description, + alwaysShow +}); +async function getFileContentText(uri) { + try { + const bytes = await workspace.fs.readFile(uri); + const content = new TextDecoder("utf-8").decode(bytes); + return content; + } catch { + return ""; + } +} +var outputWrapper = ` +Here is the output of \`{command}\` command from my terminal inside tags: + +{output} +`; +async function openCustomCommandDocsLink() { + const uri = "https://docs.sourcegraph.com/cody/custom-commands"; + await env2.openExternal(Uri.parse(uri)); +} + +// ../vscode/src/commands/utils/menu.ts +var ASK_QUESTION_COMMAND = { + description: "Ask a question", + slashCommand: "/ask" +}; +var EDIT_COMMAND = { + description: "Edit code", + slashCommand: "/edit" +}; +var inlineSeparator = { kind: -1, label: "inline" }; +var chatOption = { + label: ASK_QUESTION_COMMAND.slashCommand, + description: ASK_QUESTION_COMMAND.description, + slashCommand: ASK_QUESTION_COMMAND.slashCommand +}; +var fixOption = { + label: EDIT_COMMAND.slashCommand, + description: EDIT_COMMAND.description, + slashCommand: EDIT_COMMAND.slashCommand +}; +var commandsSeparator = { kind: -1, label: "commands" }; +var customCommandsSeparator = { kind: -1, label: "Custom Commands (Beta)" }; +var settingsSeparator = { kind: -1, label: "settings" }; +var lastUsedSeparator = { kind: -1, label: "last used" }; +var configOption = { + label: "Configure Custom Commands...", + description: "Manage your custom reusable commands" +}; +var addOption = { + label: "New Custom Command...", + alwaysShow: true, + description: "Create a new reusable command" +}; +var menu_separators = { + inline: inlineSeparator, + commands: commandsSeparator, + customCommands: customCommandsSeparator, + settings: settingsSeparator, + lastUsed: lastUsedSeparator +}; +var menu_options = { + chat: chatOption, + fix: fixOption, + config: configOption, + add: addOption +}; +var openIconButton = { iconPath: new ThemeIcon("go-to-file"), tooltip: "Open or Create Settings File", id: "open" }; +var trashIconButton = { iconPath: new ThemeIcon("trash"), tooltip: "Delete Settings File", id: "delete" }; +var gearIconButton = { iconPath: new ThemeIcon("gear"), tooltip: "Configure Custom Commands...", id: "config" }; +var backIconButton = QuickInputButtons.Back; +var menu_buttons = { + open: openIconButton, + trash: trashIconButton, + back: backIconButton, + gear: gearIconButton +}; +var customPromptsContextOptions = [ + { + id: "selection", + label: "Selected Code", + detail: "Code currently highlighted in the active editor.", + picked: true + }, + { + id: "codebase", + label: "Codebase", + detail: "Code snippets retrieved from the available source for codebase context (embeddings or local keyword search).", + picked: false + }, + { + id: "currentDir", + label: "Current Directory", + detail: 'First 10 text files in the current directory. If the prompt includes the words "test" or "tests", only test files will be included.', + picked: false + }, + { + id: "openTabs", + label: "Current Open Tabs", + detail: "First 10 text files in current open tabs", + picked: false + }, + { + id: "command", + label: "Command Output", + detail: "The output returned from a terminal command (e.g. git describe --long, node your-script.js, cat src/file-name.js)", + picked: false + }, + { + id: "none", + label: "None", + detail: "Exclude all types of context.", + picked: false + } +]; +var promptSizeInit = { + user: 0, + workspace: 0, + default: 0, + "recently used": 0 +}; +async function showRemoveConfirmationInput() { + const confirmRemove = await window2.showWarningMessage( + "Are you sure you want to remove the .vscode/cody.json file from your file system?", + { modal: true }, + "Yes", + "No" + ); + return confirmRemove; +} +var CustomCommandConfigMenuItems = [ + { + kind: 0, + label: "New Custom Command...", + id: "add" + }, + { kind: -1, id: "separator", label: "" }, + { + kind: 0, + label: "Open User Settings (JSON)", + detail: "Stored on your machine and usable across all your workspaces/repositories", + id: "open", + type: "user", + description: "~/.vscode/cody.json", + buttons: [menu_buttons.open, menu_buttons.trash] + }, + { + kind: 0, + label: "Open Workspace Settings (JSON)", + detail: "Project-specific and shared with anyone using this workspace/repository", + id: "open", + type: "workspace", + description: ".vscode/cody.json", + buttons: [menu_buttons.open, menu_buttons.trash] + }, + { kind: -1, id: "separator", label: "" }, + { kind: 0, label: "Open Custom Commands Documentation", id: "docs" } +]; +async function showAskQuestionQuickPick() { + const quickPick = window2.createQuickPick(); + quickPick.title = `${ASK_QUESTION_COMMAND.description} (${ASK_QUESTION_COMMAND.slashCommand})`; + quickPick.placeholder = "Your question"; + quickPick.buttons = [menu_buttons.back]; + quickPick.onDidTriggerButton(() => { + void commands.executeCommand("cody.action.commands.menu"); + quickPick.hide(); + }); + quickPick.show(); + return new Promise( + (resolve8) => quickPick.onDidAccept(() => { + const question = quickPick.value.trim(); + if (!question) { + return; + } + quickPick.hide(); + return resolve8(question); + }) + ); +} + +// ../vscode/src/commands/CustomPromptsStore.ts +var CustomPromptsStore = class { + constructor(isActive, extensionPath, workspaceRoot, homeDir) { + this.isActive = isActive; + this.extensionPath = extensionPath; + this.workspaceRoot = workspaceRoot; + this.homeDir = homeDir; + this.jsonFileUris = { + user: constructFileUri(ConfigFileName.vscode, homeDir), + workspace: constructFileUri(ConfigFileName.vscode, workspaceRoot) + }; + this.activate(); + } + myPromptsJSON = null; + myPromptsMap = /* @__PURE__ */ new Map(); + promptSize = promptSizeInit; + jsonFileUris; + /** + * Activate based on user's configuration setting + */ + activate(state = true) { + this.isActive = state; + if (this.isActive && !state) { + this.dispose(); + } + } + /** + * Check if the user has custom prompts from any of the cody.json files + */ + hasCustomPrompts() { + const numberOfPrompts = this.promptSize.user + this.promptSize.workspace; + return this.isActive && numberOfPrompts > 0; + } + /** + * Get the formatted context from the json config file + */ + async refresh() { + try { + if (this.isActive) { + this.myPromptsMap = /* @__PURE__ */ new Map(); + this.promptSize = { ...promptSizeInit }; + if (this.homeDir) { + await this.build("user"); + } + if (this.workspaceRoot && workspace.isTrusted) { + await this.build("workspace"); + } + } + } catch (error) { + logError("CustomPromptsStore:refresh", "failed", { verbose: error }); + } + return { commands: this.myPromptsMap }; + } + /** + * Returns myPromptsMap as an array with keys as the id + */ + getCommands() { + return [...this.myPromptsMap]; + } + /** + * Build the map of prompts using the json string + */ + async build(type2) { + if (type2 === "workspace" && !workspace.isTrusted) { + return null; + } + try { + const content = await this.getPromptsFromFileSystem(type2); + if (!content) { + return null; + } + const json = JSON.parse(content); + const prompts2 = json.commands || json.recipes; + const promptEntries = Object.entries(prompts2); + const isOldFormat = promptEntries.some( + ([key, prompt2]) => key.split(" ").length > 1 || !("description" in prompt2) + ); + if (isOldFormat) { + void window2.showInformationMessage( + `Your custom commands ${type2} JSON (${type2 === "user" ? "~/.vscode/cody.json" : ".vscode/cody.json"}) is using an old format, and needs to be upgraded.`, + "Upgrade JSON", + "Ignore" + ).then((choice) => { + if (choice === "Upgrade JSON") { + const commands3 = promptEntries.reduce( + (acc, [key, { prompt: prompt2, type: type3, context: context2 }]) => { + const slashCommand = key.trim().replaceAll(" ", "-").toLowerCase(); + acc[slashCommand] = { description: key, prompt: prompt2, type: type3, context: context2 }; + return acc; + }, + {} + ); + void this.updateJSONFile({ ...json, commands: commands3 }, type2).then(() => { + const filePath = type2 === "user" ? this.jsonFileUris.user : this.jsonFileUris.workspace; + if (filePath) { + void window2.showTextDocument(filePath); + } + }); + } + }); + return null; + } + for (const [key, prompt2] of promptEntries) { + const current = { ...prompt2, slashCommand: toSlashCommand(key) }; + current.type = type2; + this.myPromptsMap.set(current.slashCommand, current); + } + if (type2 === "user") { + this.myPromptsJSON = json; + } + this.promptSize[type2] = this.myPromptsMap.size; + } catch (error) { + logDebug("CustomPromptsStore:build", "failed", { verbose: error }); + } + return this.myPromptsMap; + } + /** + * Save the user prompts to the user json file + */ + async save(id, prompt2, deletePrompt = false, type2 = "user") { + if (deletePrompt) { + this.myPromptsMap.delete(id); + } else { + this.myPromptsMap.set(id, prompt2); + } + const filtered = /* @__PURE__ */ new Map(); + for (const [key, value] of this.myPromptsMap) { + if (value.type === "user" && value.prompt !== "separator") { + value.type = void 0; + filtered.set(fromSlashCommand(key), (0, import_lodash3.omit)(value, "slashCommand")); + } + } + filtered.set(fromSlashCommand(id), (0, import_lodash3.omit)(prompt2, "slashCommand")); + const jsonContext = { ...this.myPromptsJSON }; + jsonContext.commands = Object.fromEntries(filtered); + return this.updateJSONFile(jsonContext, type2); + } + /** + * Updates the corresponding Cody config file with the given prompts. + */ + async updateJSONFile(prompts2, type2) { + try { + const rootDirPath = type2 === "user" ? this.jsonFileUris.user : this.jsonFileUris.workspace; + if (!rootDirPath) { + throw new Error("Invalid file path"); + } + await saveJSONFile(prompts2, rootDirPath); + } catch (error) { + void window2.showErrorMessage(`Failed to save to cody.json file: ${error}`); + } + } + /** + * Create a new cody.json file to the user's workspace or home directory + */ + async createConfig(type2 = "user") { + const configFileUri = this.getConfigUriByType(type2); + try { + if (configFileUri) { + await createJSONFile(this.extensionPath, configFileUri); + void window2.showInformationMessage(`Cody ${type2} settings file created`, "View Documentation").then(async (choice) => { + if (choice === "View Documentation") { + await openCustomCommandDocsLink(); + } + }); + return; + } + throw new Error("Please make sure you have a repository opened in your workspace."); + } catch (error) { + const errorMessage = "Failed to create cody.json file: "; + void window2.showErrorMessage(`${errorMessage} ${error}`); + logDebug("CustomPromptsStore:addJSONFile:create", "failed", { verbose: error }); + } + } + /** + * Remove the cody.json file from the user's workspace or home directory + */ + async deleteConfig(type2 = "user") { + const uri = this.getConfigUriByType(type2); + if (this.promptSize[type2] === 0 || !uri) { + void window2.showInformationMessage( + "Fail: try deleting the .vscode/cody.json file in your repository or home directory manually." + ); + logError("CustomPromptsStore:clear:error:", "Failed to remove cody.json file for" + type2); + } + await deleteFile(uri); + } + /** + * Open the .vscode/cody.json file for given type in the editor + */ + async openConfig(type2 = "user") { + const uri = this.getConfigUriByType(type2); + return commands.executeCommand("vscode.open", uri); + } + /** + * Get the file content of the cody.json file for the given type + */ + async getPromptsFromFileSystem(type2) { + const codyJsonFilePathUri = this.getConfigUriByType(type2); + if (!codyJsonFilePathUri) { + return null; + } + return getFileContentText(codyJsonFilePathUri); + } + /** + * Reset + */ + dispose() { + this.isActive = false; + this.myPromptsMap = /* @__PURE__ */ new Map(); + this.promptSize = { ...promptSizeInit }; + this.myPromptsJSON = null; + } + /** + * Get the uri of the cody.json file for the given type + */ + getConfigUriByType(type2) { + const configFileUri = type2 === "user" ? this.jsonFileUris.user : this.jsonFileUris.workspace; + return configFileUri; + } +}; + +// ../vscode/src/commands/menus/index.ts +var import_lodash4 = __toESM(require_lodash()); + +// ../vscode/src/commands/menus/CustomCommandBuilderMenu.ts +var CustomCommandsBuilderMenu = class { + async start(commands3) { + const slashCommand = await this.makeSlashCommand(commands3); + if (!slashCommand) { + return null; + } + const description = await this.makeDescription(); + if (!description) { + return null; + } + const prompt2 = await this.makePrompt(); + if (!prompt2) { + return null; + } + const type2 = await this.makeType(); + if (!type2) { + return null; + } + return { slashCommand, prompt: { ...prompt2, description, slashCommand }, type: type2 }; + } + async makeSlashCommand(commands3) { + let value = await window2.showInputBox({ + title: "New Custom Cody Command: Slash Name", + prompt: "Enter the slash name of the custom command", + placeHolder: "e.g. /my-custom-command", + ignoreFocusOut: true, + validateInput: (input) => { + if (!input) { + return "Slash name cannot be empty."; + } + if (input.split(" ").length > 1) { + return "Slash name cannot contain spaces. Use dashes, underscores, or camelCase."; + } + if (commands3.has(toSlashCommand(input))) { + return "A command with the slash name already exists."; + } + return; + } + }); + if (value) { + value = toSlashCommand(value); + } + return value; + } + async makeDescription() { + const description = await window2.showInputBox({ + title: "New Custom Cody Command: Description", + prompt: "Enter a description for the command in sentence case.", + placeHolder: "e.g. Scan for vulnerabilities", + ignoreFocusOut: true, + validateInput: (input) => { + if (!input) { + return "Command description cannot be empty."; + } + return; + } + }); + return description; + } + async makePrompt() { + const prompt2 = await window2.showInputBox({ + title: "New Custom Cody Command: Prompt", + prompt: "Enter the instructions for Cody to follow and answer.", + placeHolder: "e.g. Create five different test cases for the selected code", + ignoreFocusOut: true, + validateInput: (input) => { + if (!input) { + return "Command prompt cannot be empty."; + } + return null; + } + }); + if (!prompt2) { + return null; + } + return this.addContext({ prompt: prompt2 }); + } + async addContext(newPrompt) { + if (!newPrompt) { + return null; + } + newPrompt.context = { ...defaultCodyPromptContext }; + const promptContext = await window2.showQuickPick(customPromptsContextOptions, { + title: "New Custom Cody Command: Context Options", + placeHolder: "For accurate responses, choose only the necessary options.", + canPickMany: true, + ignoreFocusOut: true, + onDidSelectItem: (item) => { + item.picked = !item.picked; + } + }); + if (!promptContext?.length) { + return newPrompt; + } + for (const context2 of promptContext) { + switch (context2.id) { + case "selection": + case "codebase": + case "currentDir": + case "openTabs": + case "none": + newPrompt.context[context2.id] = context2.picked; + break; + case "command": { + newPrompt.context.command = await showPromptCreationInputBox() || ""; + break; + } + } + } + return newPrompt; + } + async makeType() { + const option = await window2.showQuickPick( + [ + { + label: "User Settings", + detail: "Stored on your machine and usable across all your workspaces/repositories", + type: "user", + description: "~/.vscode/cody.json", + picked: true + }, + { + label: "Workspace Settings", + detail: "Project-specific and shared with anyone using this workspace/repository", + type: "workspace", + description: ".vscode/cody.json" + } + ], + { + title: "New Custom Cody Command: Save To\u2026", + ignoreFocusOut: true, + placeHolder: "Choose where to save the command" + } + ); + return option?.type === "workspace" ? "workspace" : "user"; + } +}; +async function showPromptCreationInputBox() { + const promptCommand = await window2.showInputBox({ + title: "New Custom Cody Command: Command", + prompt: "Enter the terminal command to run from the workspace root. Its output will be included to Cody as prompt context.", + placeHolder: "e.g. node myscript.js | head -n 50" + }); + return promptCommand; +} + +// ../vscode/src/commands/menus/index.ts +var slashCommandRegex = /^\/[A-Za-z]+/; +function isSlashCommand(value) { + return slashCommandRegex.test(value); +} +var labelReplacements = { + [ASK_QUESTION_COMMAND.slashCommand]: (label) => `${label} [question]`, + [EDIT_COMMAND.slashCommand]: (label) => `${label} [instruction]` +}; +function normalize(input) { + return input.trim().toLowerCase(); +} +async function showCommandMenu(items) { + const options2 = { + title: "Cody (Shortcut: \u2325C)", + placeHolder: "Search for a command or enter your question here..." + }; + const defaultItems = items.map((item) => { + const replaceFn = "slashCommand" in item ? labelReplacements[item.slashCommand] : void 0; + if (replaceFn) { + return { ...item, label: replaceFn(item.label) }; + } + return item; + }); + return new Promise((resolve8) => { + const quickPick = window2.createQuickPick(); + quickPick.items = defaultItems; + quickPick.title = options2.title; + quickPick.placeholder = options2.placeHolder; + quickPick.matchOnDescription = true; + quickPick.buttons = [menu_buttons.gear]; + const fallbackCommands = /* @__PURE__ */ new Set([menu_options.chat.slashCommand, menu_options.fix.slashCommand]); + const updateItems = (0, import_lodash4.debounce)((value) => { + const fallbackItems = items.reduce((acc, item) => { + if ("slashCommand" in item && fallbackCommands.has(item.slashCommand)) { + acc.push({ ...item, label: `${item.label} "${value}"`, alwaysShow: true }); + } + return acc; + }, []); + quickPick.items = fallbackItems; + }, 200); + quickPick.onDidChangeValue((value) => { + const normalizedValue = normalize(value); + quickPick.matchOnDescription = false; + if (isSlashCommand(normalizedValue)) { + const [slashCommand] = normalizedValue.split(" "); + const matchingCommands = defaultItems.filter( + (item) => "slashCommand" in item && item.slashCommand?.toLowerCase().startsWith(slashCommand) + ); + if (matchingCommands.length > 0) { + quickPick.items = matchingCommands.map((command) => ({ ...command, alwaysShow: true })); + return; + } + quickPick.items = [{ label: "No matching commands", alwaysShow: true }]; + return; + } + const hasMatch = items.some( + (item) => ( + // label may include placeholder which we don't want to match against - use slash command instead + ["slashCommand" in item ? item.slashCommand : item.label, item.description].some( + (str) => str?.toLowerCase().includes(normalizedValue) + ) + ) + ); + if (!normalizedValue || hasMatch) { + quickPick.items = defaultItems; + quickPick.matchOnDescription = true; + return; + } + updateItems(normalizedValue); + }); + quickPick.onDidTriggerButton(async () => { + quickPick.hide(); + await commands.executeCommand("cody.settings.commands"); + }); + quickPick.onDidAccept(() => { + const selection = quickPick.activeItems[0]; + let value = normalize(quickPick.value); + if (isSlashCommand(value)) { + const [, ...rest] = value.split(" "); + value = rest.join(" "); + } + resolve8({ selectedItem: selection, input: value }); + quickPick.hide(); + }); + quickPick.show(); + }); +} +async function showCustomCommandMenu(items) { + const CustomCommandsMenuOptions = { + title: "Cody: Custom Commands (Beta)", + placeHolder: "Search command to run..." + }; + return new Promise((resolve8) => { + const quickPick = window2.createQuickPick(); + quickPick.items = items; + quickPick.title = CustomCommandsMenuOptions.title; + quickPick.placeholder = CustomCommandsMenuOptions.placeHolder; + quickPick.ignoreFocusOut = false; + quickPick.buttons = [menu_buttons.back]; + quickPick.onDidAccept(() => { + const selection = quickPick.activeItems[0]; + resolve8(selection); + quickPick.hide(); + }); + quickPick.onDidTriggerButton(async () => { + quickPick.hide(); + await commands.executeCommand("cody.action.commands.menu"); + }); + quickPick.show(); + }); +} +async function showCommandConfigMenu() { + const CustomCommandConfigMenuOptions = { + title: "Cody: Configure Custom Commands (Beta)", + placeHolder: "Choose an option" + }; + return new Promise((resolve8) => { + const quickPick = window2.createQuickPick(); + quickPick.items = CustomCommandConfigMenuItems; + quickPick.title = CustomCommandConfigMenuOptions.title; + quickPick.placeholder = CustomCommandConfigMenuOptions.placeHolder; + quickPick.buttons = [menu_buttons.back]; + quickPick.onDidTriggerItemButton((item) => { + const selection = item.item; + selection.id = item.button.tooltip === "delete" ? "delete" : "open"; + resolve8(selection); + quickPick.hide(); + }); + quickPick.onDidAccept(() => { + const selection = quickPick.activeItems[0]; + resolve8(selection); + quickPick.hide(); + }); + quickPick.onDidTriggerButton(async () => { + quickPick.hide(); + await commands.executeCommand("cody.action.commands.menu"); + }); + quickPick.show(); + }); +} +async function showNewCustomCommandMenu(commands3) { + const builder = new CustomCommandsBuilderMenu(); + return builder.start(commands3); +} + +// ../vscode/src/commands/PromptsProvider.ts +var editorCommands = [ + { + description: ASK_QUESTION_COMMAND.description, + prompt: ASK_QUESTION_COMMAND.slashCommand, + slashCommand: ASK_QUESTION_COMMAND.slashCommand + }, + { + description: EDIT_COMMAND.description, + prompt: EDIT_COMMAND.slashCommand, + slashCommand: EDIT_COMMAND.slashCommand + } +]; +var PromptsProvider = class { + // The default prompts + defaultPromptsMap = getDefaultCommandsMap(editorCommands); + // The commands grouped by default prompts and custom prompts + allCommands = /* @__PURE__ */ new Map(); + constructor() { + this.groupCommands(this.defaultPromptsMap); + } + /** + * Find a prompt by its id + */ + get(id) { + return this.allCommands.get(id); + } + /** + * Return default and custom commands without the separator which is added for quick pick menu + */ + getGroupedCommands(keepSeparator) { + if (keepSeparator) { + return [...this.allCommands]; + } + return [...this.allCommands].filter((command) => command[1].prompt !== "separator"); + } + /** + * Group the default prompts with the custom prompts and add a separator + */ + groupCommands(customCommands = /* @__PURE__ */ new Map()) { + const combinedMap = new Map([...this.defaultPromptsMap]); + combinedMap.set("separator", { prompt: "separator", slashCommand: "" }); + this.allCommands = new Map([...customCommands, ...combinedMap]); + } + // dispose and reset the controller and builder + dispose() { + this.allCommands = /* @__PURE__ */ new Map(); + logDebug("CommandsController:dispose", "disposed"); + } +}; + +// ../vscode/src/commands/utils/ToolsProvider.ts +var import_child_process5 = require("child_process"); +var import_os3 = __toESM(require("os")); +var import_util = require("util"); +var rootPath = () => workspace.workspaceFolders?.[0]?.uri?.fsPath; +var currentFilePath = () => getActiveEditor()?.document.uri.fsPath; +var homePath = import_os3.default.homedir() || process.env.HOME || process.env.USERPROFILE || ""; +var _exec = (0, import_util.promisify)(import_child_process5.exec); +var ToolsProvider = class { + constructor(context2) { + this.context = context2; + this.user = this.getUserInfo(); + } + user; + shell = env2.shell; + /** + * Get the user's workspace info + */ + getUserInfo() { + if (this.user?.workspaceRoot) { + return this.user; + } + const appRoot = env2.appRoot; + return { + homeDir: homePath, + workspaceRoot: rootPath(), + currentFilePath: currentFilePath(), + appRoot + }; + } + /** + * Open a file in the editor + */ + async openFile(uri) { + return commands.executeCommand("vscode.open", uri); + } + /** + * Open a folder in the file explorer + */ + async openFolder() { + await commands.executeCommand("vscode.openFolder", rootPath()); + } + /** + * Execute a command in the terminal + */ + async exeCommand(command, runFromWSRoot = true) { + if (!this.shell) { + void window2.showErrorMessage("Shell command is not supported your current workspace."); + return; + } + const homeDir = this.user.homeDir + "/" || ""; + const filteredCommand = command.replaceAll(/(\s~\/)/g, ` ${homeDir}`); + try { + const { stdout, stderr } = await _exec(filteredCommand, { + cwd: runFromWSRoot ? rootPath() : currentFilePath(), + encoding: "utf8" + }); + const output = stdout || stderr; + const outputString = JSON.stringify(output.trim()); + if (!outputString) { + throw new Error("Empty output"); + } + logDebug("ToolsProvider:exeCommand", command, { verbose: outputString }); + return outputWrapper.replace("{command}", command).replace("{output}", outputString); + } catch (error) { + logError("ToolsProvider:exeCommand", "failed", { verbose: error }); + void window2.showErrorMessage( + "Failed to run command. Please make sure the command works in your terminal before trying again." + ); + } + return; + } + /** + * Check if a file exists + */ + async doesUriExist(uri) { + if (!uri) { + return false; + } + try { + return uri && !!await workspace.fs.stat(uri) || false; + } catch { + return false; + } + } +}; + +// ../vscode/src/commands/CommandsController.ts +var CommandsController = class { + isEnabled = true; + disposables = []; + tools; + custom; + default = new PromptsProvider(); + myPromptsMap = /* @__PURE__ */ new Map(); + lastUsedCommands = /* @__PURE__ */ new Set(); + webViewMessenger = null; + wsFileWatcher = null; + userFileWatcher = null; + commandRunners = /* @__PURE__ */ new Map(); + constructor(context2) { + this.tools = new ToolsProvider(context2); + const user = this.tools.getUserInfo(); + this.custom = new CustomPromptsStore(this.isEnabled, context2.extensionPath, user?.workspaceRoot, user.homeDir); + this.disposables.push(this.custom); + this.lastUsedCommands = new Set(localStorage2.getLastUsedCommands()); + this.custom.activate(); + this.fileWatcherInit(); + } + /** + * Gets a CodyPrompt object for the given command runner ID. + * @param commandRunnerId - The ID of the command runner to get the prompt for. + * @returns The CodyPrompt object for the command runner, or null if not found. + * + * Looks up the command runner instance in the commandRunners map by the given ID. + * If found, returns the CodyPrompt associated with that runner. Otherwise returns null. + */ + getCommand(commandRunnerId) { + const commandRunner = this.commandRunners.get(commandRunnerId); + if (!commandRunner) { + return null; + } + this.commandRunners.delete(commandRunnerId); + return commandRunner?.codyCommand; + } + /** + * Adds a new command to the commands map. + * + * Looks up the command prompt using the given key in the default prompts map. + * If found, creates a new Cody command runner instance for that prompt and input. + * Returns the ID of the created runner, or 'invalid' if not found. + */ + async addCommand(text, requestID, contextFiles, addEnhancedContext) { + const commandSplit = text.split(" "); + const commandKey = commandSplit.shift() || text; + const commandInput = commandKey === text ? "" : commandSplit.join(" "); + const command = this.default.get(commandKey); + if (!command) { + return "invalid"; + } + if (command.slashCommand === "/ask") { + command.prompt = text; + } + if (!command.context && addEnhancedContext) { + command.context = { codebase: addEnhancedContext }; + } + command.additionalInput = commandInput; + command.requestID = requestID; + command.contextFiles = contextFiles; + return this.createCodyCommandRunner(command, commandInput); + } + /** + * Creates a new Cody command runner instance and returns the ID. + * + * This creates a new CommandRunner instance with the given CodyPrompt, input text, + * and fixup request flag. It adds the runner to the commandRunners map, sets it + * as the current prompt in progress, and logs the command usage. + * + * If the prompt has a shell command in its context, it will execute that command. + * + * Finally, it returns the unique ID for the created CommandRunner instance. + */ + async createCodyCommandRunner(command, input = "") { + const commandKey = command.slashCommand; + const defaultEditCommands = /* @__PURE__ */ new Set(["/edit", "/fix", "/doc"]); + const isFixupRequest = defaultEditCommands.has(commandKey) || command.prompt.startsWith("/edit"); + logDebug("CommandsController:createCodyCommandRunner:creating", commandKey); + const codyCommand = new CommandRunner(command, input, isFixupRequest); + this.commandRunners.set(codyCommand.id, codyCommand); + this.lastUsedCommands.add(command.slashCommand); + if (isFixupRequest || command.mode !== "ask") { + return ""; + } + const shellCommand = command.context?.command; + if (shellCommand) { + await codyCommand.runShell(this.tools.exeCommand(shellCommand)); + } + return codyCommand.id; + } + /** + * Get the list of command names and prompts to send to the webview for display. + * @returns An array of tuples containing the command name and prompt object. + */ + async getAllCommands(keepSperator = false) { + await this.refresh(); + return this.default.getGroupedCommands(keepSperator); + } + /** + * Gets the custom prompt configuration by refreshing the store. + * @returns The custom prompt configuration object containing the prompt map, premade text, and starter text. + */ + async getCustomConfig() { + const myPromptsConfig = await this.custom.refresh(); + return myPromptsConfig; + } + /** + * Menu Controller + */ + async menu(type2) { + await this.refresh(); + switch (type2) { + case "custom": + await this.customCommandMenu(); + break; + case "config": + await this.configMenu(); + break; + case "default": + await this.mainCommandMenu(); + break; + default: + break; + } + } + /** + * Get the latest content from the custom store and send it to default store + * to be used in the menu + */ + async refresh() { + await this.saveLastUsedCommands(); + const { commands: commands3 } = await this.custom.refresh(); + this.myPromptsMap = commands3; + this.default.groupCommands(commands3); + } + /** + * Main Menu: Cody Commands + */ + async mainCommandMenu() { + try { + const commands3 = this.default.getGroupedCommands(true)?.map(([name, command]) => { + if (command.prompt === "separator") { + return menu_separators.customCommands; + } + let label; + let description; + let slashCommand; + if (command.slashCommand) { + label = command.slashCommand; + description = command.description || name; + slashCommand = command.slashCommand; + } else { + label = command.description || name; + description = command.type === "default" ? "" : command.type; + } + return { label, description, slashCommand }; + }); + const { selectedItem: selectedPrompt, input: userPrompt } = await showCommandMenu([ + menu_separators.commands, + ...commands3, + menu_separators.settings, + menu_options.config + ]); + if (!selectedPrompt) { + return; + } + const selectedCommandID = "slashCommand" in selectedPrompt ? selectedPrompt.slashCommand : selectedPrompt.label; + switch (true) { + case !selectedCommandID: + break; + case selectedCommandID === menu_options.config.label: + return await commands.executeCommand("cody.settings.commands"); + case selectedCommandID === menu_options.chat.slashCommand: { + let input = userPrompt.trim(); + if (input) { + return await commands.executeCommand("cody.action.chat", input, "command"); + } + input = await showAskQuestionQuickPick(); + await commands.executeCommand("cody.chat.focus"); + return await commands.executeCommand("cody.action.chat", input, "command"); + } + case selectedCommandID === menu_options.fix.slashCommand: { + const source2 = "menu"; + return await commands.executeCommand( + "cody.command.edit-code", + { instruction: userPrompt.trim() }, + source2 + ); + } + } + await commands.executeCommand("cody.action.commands.exec", selectedCommandID); + } catch (error) { + logError("CommandsController:commandQuickPicker", "error", { verbose: error }); + } + } + /** + * Cody Custom Commands Menu - a menu with a list of user commands to run + */ + async customCommandMenu() { + await this.refresh(); + if (!this.isEnabled || !this.custom.hasCustomPrompts()) { + return this.configMenu(); + } + try { + let recentlyUsed = getCustomMenuQuickPickItems(this.getLastUsedCommands()).reverse(); + if (recentlyUsed.length > 0) { + recentlyUsed = [menu_separators.lastUsed, ...recentlyUsed]; + } + const commandsFromStore = this.custom.getCommands(); + const customCommands = getCustomMenuQuickPickItems(commandsFromStore); + const promptItems = [...recentlyUsed, menu_separators.customCommands, ...customCommands]; + const configOption2 = menu_options.config; + const addOption2 = menu_options.add; + promptItems.push(menu_separators.settings, configOption2, addOption2); + const selected = await showCustomCommandMenu([...promptItems]); + const commandKey = selected?.label; + if (!commandKey) { + return; + } + switch (commandKey.length > 0) { + case commandKey === addOption2.label: + return await this.addNewUserCommandQuick(); + case commandKey === configOption2.label: + return await this.configMenu("custom"); + default: + await commands.executeCommand("cody.action.commands.exec", commandKey); + break; + } + logDebug("CommandsController:promptsQuickPicker:selectedPrompt", commandKey); + } catch (error) { + logError("CommandsController:promptsQuickPicker", "error", { verbose: error }); + } + } + /** + * Menu with an option to add a new command via UI and save it to user's cody.json file + */ + async configMenu(lastMenu) { + const selected = await showCommandConfigMenu(); + const action = selected?.id; + if (!selected || !action) { + return; + } + if (action === "back" && lastMenu === "custom") { + return this.customCommandMenu(); + } + logDebug("CommandsController:customPrompts:menu", action); + await this.configFileAction(action, selected.type, selected.type); + return this.refresh(); + } + /** + * Config file controller + * handles operations on config files for user and workspace commands + */ + async configFileAction(action, fileType, filePath) { + switch (action) { + case "add": { + await this.addNewUserCommandQuick(); + break; + } + case "list": + await this.customCommandMenu(); + break; + case "docs": + await openCustomCommandDocsLink(); + break; + case "delete": { + if (await showRemoveConfirmationInput() !== "Yes") { + return; + } + await this.custom.deleteConfig(fileType); + await this.refresh(); + break; + } + case "file": + await this.custom.createConfig(fileType); + break; + case "open": + if (filePath) { + await this.open(filePath); + } + break; + } + } + /** + * Quick pick menu to create a new user command + * Allows user to enter the prompt name and prompt description in the input box + */ + async addNewUserCommandQuick() { + const newCommand = await showNewCustomCommandMenu(this.myPromptsMap); + if (!newCommand) { + return; + } + await this.custom.save(newCommand.slashCommand, newCommand.prompt, false, newCommand.type); + await this.refresh(); + const buttonTitle = `Open ${newCommand.type === "user" ? "User" : "Workspace"} Settings (JSON)`; + void window2.showInformationMessage( + `New ${newCommand.slashCommand} command saved to ${newCommand.type} settings`, + buttonTitle + ).then(async (choice) => { + if (choice === buttonTitle) { + await this.custom.openConfig(newCommand.type); + } + }); + logDebug("CommandsController:updateUserCommandQuick:newPrompt:", "saved", { verbose: newCommand }); + } + /** + * Open workspace file with filePath in editor + */ + async open(filePath) { + if (filePath === "user" || filePath === "workspace") { + const uri = this.custom.jsonFileUris[filePath]; + const doesExist = await this.tools.doesUriExist(uri); + return doesExist ? this.tools.openFile(uri) : this.open(filePath); + } + const fileUri = constructFileUri(filePath, this.tools.getUserInfo()?.workspaceRoot); + return commands.executeCommand("vscode.open", fileUri); + } + /** + * Get the list of recently used commands from the local storage + */ + getLastUsedCommands() { + return [...this.lastUsedCommands]?.map((id) => [id, this.default.get(id)]) || []; + } + /** + * Save the last used commands to local storage + */ + async saveLastUsedCommands() { + const commands3 = [...this.lastUsedCommands].filter((key) => this.default.get(key)?.slashCommand.length); + if (commands3.length > 0) { + await localStorage2.setLastUsedCommands(commands3.slice(0, 5)); + } + this.lastUsedCommands = new Set(commands3); + } + /** + * Set the messenger function to be used to send messages to the webview + */ + setMessenger(messenger) { + if (this.webViewMessenger) { + return; + } + this.webViewMessenger = messenger; + } + fileWatcherDisposables = []; + /** + * Create file watchers for cody.json files used for building Custom Commands + */ + fileWatcherInit() { + for (const disposable of this.fileWatcherDisposables) { + disposable.dispose(); + } + this.fileWatcherDisposables = []; + if (!this.isEnabled) { + return; + } + const user = this.tools.getUserInfo(); + this.wsFileWatcher = createFileWatchers(user?.workspaceRoot); + if (this.wsFileWatcher) { + this.fileWatcherDisposables.push( + this.wsFileWatcher, + this.wsFileWatcher.onDidChange(() => this.webViewMessenger?.()), + this.wsFileWatcher.onDidDelete(() => this.webViewMessenger?.()) + ); + } + this.userFileWatcher = createFileWatchers(user?.homeDir); + if (this.userFileWatcher) { + this.fileWatcherDisposables.push( + this.userFileWatcher, + this.userFileWatcher.onDidChange(() => this.webViewMessenger?.()), + this.userFileWatcher.onDidDelete(() => this.webViewMessenger?.()) + ); + } + logDebug("CommandsController:fileWatcherInit", "watchers created"); + } + /** + * Dispose and reset the controller and builder + */ + dispose() { + this.isEnabled = false; + for (const disposable of this.disposables) { + disposable.dispose(); + } + for (const runner of this.commandRunners) { + runner[1].dispose(); + } + for (const disposable of this.fileWatcherDisposables) { + disposable.dispose(); + } + this.fileWatcherDisposables = []; + this.disposables = []; + this.myPromptsMap = /* @__PURE__ */ new Map(); + this.commandRunners = /* @__PURE__ */ new Map(); + logDebug("CommandsController:dispose", "disposed"); + } +}; +function getCustomMenuQuickPickItems(commands3) { + return commands3?.filter((command) => command !== null && command?.[1]?.type !== "default").map((commandItem) => { + const label = commandItem[0]; + const command = commandItem[1]; + return createQuickPickItem(label, command.description); + }); +} + +// ../vscode/src/graph/bfg/spawn-bfg.ts +var child_process = __toESM(require("node:child_process")); + +// ../vscode/src/jsonrpc/jsonrpc.ts +var import_assert = __toESM(require("assert")); +var import_fs2 = require("fs"); +var import_path7 = require("path"); +var import_stream = require("stream"); + +// ../lib/shared/dist/sourcegraph-api/errors.js +var RateLimitError = class extends Error { + limit; + retryAfter; + constructor(message, limit, retryAfter) { + super(message); + this.limit = limit; + this.retryAfter = retryAfter; + } +}; +function isRateLimitError(error) { + return error instanceof RateLimitError; +} + +// ../vscode/src/jsonrpc/jsonrpc.ts +var ErrorCode = /* @__PURE__ */ ((ErrorCode2) => { + ErrorCode2[ErrorCode2["ParseError"] = -32700] = "ParseError"; + ErrorCode2[ErrorCode2["InvalidRequest"] = -32600] = "InvalidRequest"; + ErrorCode2[ErrorCode2["MethodNotFound"] = -32601] = "MethodNotFound"; + ErrorCode2[ErrorCode2["InvalidParams"] = -32602] = "InvalidParams"; + ErrorCode2[ErrorCode2["InternalError"] = -32603] = "InternalError"; + ErrorCode2[ErrorCode2["RequestCanceled"] = -32604] = "RequestCanceled"; + ErrorCode2[ErrorCode2["RateLimitError"] = -32e3] = "RateLimitError"; + return ErrorCode2; +})(ErrorCode || {}); +var JsonrpcError = class extends Error { + constructor(info2) { + super(); + this.info = info2; + } + toString() { + return `${this.name}: ${this.message}`; + } + get name() { + return ErrorCode[this.info.code]; + } + get message() { + if (typeof this.info?.data === "string") { + try { + const data = JSON.parse(this.info.data); + return `${this.info.message}: ${JSON.stringify(data, null, 2)}`; + } catch { + } + return `${this.info.message}: ${this.info.data}`; + } + return this.info.message; + } +}; +var tracePath = process.env.CODY_AGENT_TRACE_PATH ?? ""; +var MessageDecoder = class extends import_stream.Writable { + constructor(callback) { + super(); + this.callback = callback; + if (tracePath) { + if ((0, import_fs2.existsSync)(tracePath)) { + (0, import_fs2.rmSync)(tracePath); + } + (0, import_fs2.mkdirSync)((0, import_path7.dirname)(tracePath), { recursive: true }); + } + } + buffer = Buffer.alloc(0); + contentLengthRemaining = null; + contentBuffer = Buffer.alloc(0); + _write(chunk, encoding, callback) { + this.buffer = Buffer.concat([this.buffer, chunk]); + read: + while (true) { + if (this.contentLengthRemaining === null) { + const headerString = this.buffer.toString(); + let startIndex = 0; + let endIndex; + let newContentLength = 0; + const LINE_TERMINATOR = "\r\n"; + while ((endIndex = headerString.indexOf(LINE_TERMINATOR, startIndex)) !== -1) { + const entry = headerString.slice(startIndex, endIndex); + const [headerName, headerValue] = entry.split(":").map((_) => _.trim()); + if (headerValue === void 0) { + this.buffer = this.buffer.slice(endIndex + LINE_TERMINATOR.length); + this.contentLengthRemaining = newContentLength; + (0, import_assert.default)( + isFinite(this.contentLengthRemaining), + `parsed Content-Length ${this.contentLengthRemaining} is not a finite number` + ); + continue read; + } + switch (headerName) { + case "Content-Length": + newContentLength = parseInt(headerValue, 10); + break; + default: + console.error(`Unknown header '${headerName}': ignoring!`); + break; + } + startIndex = endIndex + LINE_TERMINATOR.length; + } + break; + } else { + if (this.contentLengthRemaining === 0) { + try { + const data2 = JSON.parse(this.contentBuffer.toString()); + this.contentBuffer = Buffer.alloc(0); + this.contentLengthRemaining = null; + if (tracePath) { + (0, import_fs2.appendFileSync)(tracePath, "<- " + JSON.stringify(data2, null, 4) + "\n"); + } + this.callback(null, data2); + } catch (error) { + console.log( + `jsonrpc.ts: JSON parse error against input '${this.contentBuffer}'. Error: +${error}` + ); + if (tracePath) { + (0, import_fs2.appendFileSync)(tracePath, "<- " + JSON.stringify({ error }, null, 4) + "\n"); + } + this.callback(error, null); + } + continue; + } + const data = this.buffer.slice(0, this.contentLengthRemaining); + if (data.length === 0) { + break; + } + this.contentBuffer = Buffer.concat([this.contentBuffer, data]); + this.buffer = this.buffer.slice(this.contentLengthRemaining); + this.contentLengthRemaining -= data.byteLength; + } + } + callback(); + } +}; +var MessageEncoder = class extends import_stream.Readable { + buffer = Buffer.alloc(0); + send(data) { + if (tracePath) { + (0, import_fs2.appendFileSync)(tracePath, "-> " + JSON.stringify(data, null, 4) + "\n"); + } + this.pause(); + const content = Buffer.from(JSON.stringify(data), "utf-8"); + const header = Buffer.from(`Content-Length: ${content.byteLength}\r +\r +`, "utf-8"); + this.buffer = Buffer.concat([this.buffer, header, content]); + this.resume(); + } + _read(size) { + this.push(this.buffer.slice(0, size)); + this.buffer = this.buffer.slice(size); + } +}; +var MessageHandler = class { + id = 0; + requestHandlers = /* @__PURE__ */ new Map(); + cancelTokens = /* @__PURE__ */ new Map(); + notificationHandlers = /* @__PURE__ */ new Map(); + alive = true; + processExitedError = () => new Error("Process has exited"); + responseHandlers = /* @__PURE__ */ new Map(); + isAlive() { + return this.alive; + } + exit() { + this.alive = false; + const error = this.processExitedError(); + for (const { reject } of this.responseHandlers.values()) { + reject(error); + } + } + connectProcess(child, reject) { + child.on("disconnect", () => { + reject?.(new Error("disconnect")); + this.exit(); + }); + child.on("close", () => { + reject?.(new Error("close")); + this.exit(); + }); + child.on("error", (error) => { + reject?.(error); + this.exit(); + }); + child.on("exit", (code) => { + reject?.(new Error(`exit: ${code}`)); + this.exit(); + }); + child.stderr.on("data", (data) => { + console.error(`----stderr---- +${data}--------------`); + }); + child.stdout.pipe(this.messageDecoder); + this.messageEncoder.pipe(child.stdin); + } + // TODO: RPC error handling + messageDecoder = new MessageDecoder((err2, msg) => { + if (err2) { + console.error(`Error: ${err2}`); + } + if (!msg) { + return; + } + if (msg.id !== void 0 && msg.method) { + if (typeof msg.id === "number" && msg.id > this.id) { + this.id = msg.id + 1; + } + const handler = this.requestHandlers.get(msg.method); + if (handler) { + const cancelToken = new CancellationTokenSource(); + this.cancelTokens.set(msg.id, cancelToken); + handler(msg.params, cancelToken.token).then( + (result) => { + const data = { + jsonrpc: "2.0", + id: msg.id, + // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment + result + }; + this.messageEncoder.send(data); + }, + (error) => { + const message = error instanceof Error ? error.message : `${error}`; + const stack = error instanceof Error ? ` +${error.stack}` : ""; + const code = cancelToken.token.isCancellationRequested ? -32604 /* RequestCanceled */ : isRateLimitError(error) ? -32e3 /* RateLimitError */ : -32603 /* InternalError */; + const data = { + jsonrpc: "2.0", + id: msg.id, + error: { + code, + message, + data: JSON.stringify({ error, stack }) + } + }; + this.messageEncoder.send(data); + } + ).finally(() => { + this.cancelTokens.get(msg.id)?.dispose(); + this.cancelTokens.delete(msg.id); + }); + } else { + console.error(`No handler for request with method ${msg.method}`); + } + } else if (msg.id !== void 0) { + const handler = this.responseHandlers.get(msg.id); + if (handler) { + if (msg?.error) { + handler.reject(new JsonrpcError(msg.error)); + } else { + handler.resolve(msg.result); + } + this.responseHandlers.delete(msg.id); + } else { + console.error(`No handler for response with id ${msg.id}`); + } + } else if (msg.method) { + if (msg.method === "$/cancelRequest" && msg.params && (typeof msg.params.id === "string" || typeof msg.params.id === "number")) { + this.cancelTokens.get(msg.params.id)?.cancel(); + this.cancelTokens.delete(msg.params.id); + } else { + const notificationHandler = this.notificationHandlers.get(msg.method); + if (notificationHandler) { + void notificationHandler(msg.params); + } else { + console.error(`No handler for notification with method ${msg.method}`); + } + } + } + }); + messageEncoder = new MessageEncoder(); + registerRequest(method, callback) { + this.requestHandlers.set(method, callback); + } + registerNotification(method, callback) { + this.notificationHandlers.set(method, callback); + } + request(method, params) { + if (!this.isAlive()) { + throw this.processExitedError(); + } + const id = this.id++; + const data = { + jsonrpc: "2.0", + id, + method, + params + }; + this.messageEncoder.send(data); + return new Promise((resolve8, reject) => { + this.responseHandlers.set(id, { resolve: resolve8, reject }); + }); + } + notify(method, params) { + if (!this.isAlive()) { + throw this.processExitedError(); + } + const data = { + jsonrpc: "2.0", + method, + params + }; + this.messageEncoder.send(data); + } + /** + * @returns A JSON-RPC client to interact directly with this agent instance. Useful when we want + * to use the agent in-process without stdout/stdin transport mechanism. + */ + clientForThisInstance() { + if (!this.isAlive()) { + throw this.processExitedError(); + } + return new InProcessClient(this.requestHandlers, this.notificationHandlers); + } +}; +var InProcessClient = class { + constructor(requestHandlers, notificationHandlers) { + this.requestHandlers = requestHandlers; + this.notificationHandlers = notificationHandlers; + } + request(method, params, cancelToken = new CancellationTokenSource().token) { + const handler = this.requestHandlers.get(method); + if (handler) { + return handler(params, cancelToken); + } + throw new Error("No such request handler: " + method); + } + notify(method, params) { + const handler = this.notificationHandlers.get(method); + if (handler) { + void handler(params); + return; + } + throw new Error("No such notification handler: " + method); + } +}; + +// ../vscode/src/graph/bfg/download-bfg.ts +var fs2 = __toESM(require("fs")); +var import_fs4 = require("fs"); +var import_path8 = __toESM(require("path")); + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/bind.js +function bind(fn, thisArg) { + return function wrap2() { + return fn.apply(thisArg, arguments); + }; +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/utils.js +var { toString } = Object.prototype; +var { getPrototypeOf } = Object; +var kindOf = ((cache) => (thing) => { + const str = toString.call(thing); + return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); +})(/* @__PURE__ */ Object.create(null)); +var kindOfTest = (type2) => { + type2 = type2.toLowerCase(); + return (thing) => kindOf(thing) === type2; +}; +var typeOfTest = (type2) => (thing) => typeof thing === type2; +var { isArray } = Array; +var isUndefined = typeOfTest("undefined"); +function isBuffer(val) { + return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val); +} +var isArrayBuffer = kindOfTest("ArrayBuffer"); +function isArrayBufferView(val) { + let result; + if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) { + result = ArrayBuffer.isView(val); + } else { + result = val && val.buffer && isArrayBuffer(val.buffer); + } + return result; +} +var isString = typeOfTest("string"); +var isFunction = typeOfTest("function"); +var isNumber = typeOfTest("number"); +var isObject2 = (thing) => thing !== null && typeof thing === "object"; +var isBoolean = (thing) => thing === true || thing === false; +var isPlainObject = (val) => { + if (kindOf(val) !== "object") { + return false; + } + const prototype3 = getPrototypeOf(val); + return (prototype3 === null || prototype3 === Object.prototype || Object.getPrototypeOf(prototype3) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val); +}; +var isDate = kindOfTest("Date"); +var isFile = kindOfTest("File"); +var isBlob = kindOfTest("Blob"); +var isFileList = kindOfTest("FileList"); +var isStream = (val) => isObject2(val) && isFunction(val.pipe); +var isFormData = (thing) => { + let kind; + return thing && (typeof FormData === "function" && thing instanceof FormData || isFunction(thing.append) && ((kind = kindOf(thing)) === "formdata" || // detect form-data instance + kind === "object" && isFunction(thing.toString) && thing.toString() === "[object FormData]")); +}; +var isURLSearchParams = kindOfTest("URLSearchParams"); +var trim = (str) => str.trim ? str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""); +function forEach(obj2, fn, { allOwnKeys = false } = {}) { + if (obj2 === null || typeof obj2 === "undefined") { + return; + } + let i; + let l2; + if (typeof obj2 !== "object") { + obj2 = [obj2]; + } + if (isArray(obj2)) { + for (i = 0, l2 = obj2.length; i < l2; i++) { + fn.call(null, obj2[i], i, obj2); + } + } else { + const keys = allOwnKeys ? Object.getOwnPropertyNames(obj2) : Object.keys(obj2); + const len = keys.length; + let key; + for (i = 0; i < len; i++) { + key = keys[i]; + fn.call(null, obj2[key], key, obj2); + } + } +} +function findKey(obj2, key) { + key = key.toLowerCase(); + const keys = Object.keys(obj2); + let i = keys.length; + let _key; + while (i-- > 0) { + _key = keys[i]; + if (key === _key.toLowerCase()) { + return _key; + } + } + return null; +} +var _global = (() => { + if (typeof globalThis !== "undefined") + return globalThis; + return typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : global; +})(); +var isContextDefined = (context2) => !isUndefined(context2) && context2 !== _global; +function merge() { + const { caseless } = isContextDefined(this) && this || {}; + const result = {}; + const assignValue = (val, key) => { + const targetKey = caseless && findKey(result, key) || key; + if (isPlainObject(result[targetKey]) && isPlainObject(val)) { + result[targetKey] = merge(result[targetKey], val); + } else if (isPlainObject(val)) { + result[targetKey] = merge({}, val); + } else if (isArray(val)) { + result[targetKey] = val.slice(); + } else { + result[targetKey] = val; + } + }; + for (let i = 0, l2 = arguments.length; i < l2; i++) { + arguments[i] && forEach(arguments[i], assignValue); + } + return result; +} +var extend = (a, b, thisArg, { allOwnKeys } = {}) => { + forEach(b, (val, key) => { + if (thisArg && isFunction(val)) { + a[key] = bind(val, thisArg); + } else { + a[key] = val; + } + }, { allOwnKeys }); + return a; +}; +var stripBOM = (content) => { + if (content.charCodeAt(0) === 65279) { + content = content.slice(1); + } + return content; +}; +var inherits2 = (constructor, superConstructor, props, descriptors2) => { + constructor.prototype = Object.create(superConstructor.prototype, descriptors2); + constructor.prototype.constructor = constructor; + Object.defineProperty(constructor, "super", { + value: superConstructor.prototype + }); + props && Object.assign(constructor.prototype, props); +}; +var toFlatObject = (sourceObj, destObj, filter3, propFilter) => { + let props; + let i; + let prop; + const merged = {}; + destObj = destObj || {}; + if (sourceObj == null) + return destObj; + do { + props = Object.getOwnPropertyNames(sourceObj); + i = props.length; + while (i-- > 0) { + prop = props[i]; + if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { + destObj[prop] = sourceObj[prop]; + merged[prop] = true; + } + } + sourceObj = filter3 !== false && getPrototypeOf(sourceObj); + } while (sourceObj && (!filter3 || filter3(sourceObj, destObj)) && sourceObj !== Object.prototype); + return destObj; +}; +var endsWith = (str, searchString, position) => { + str = String(str); + if (position === void 0 || position > str.length) { + position = str.length; + } + position -= searchString.length; + const lastIndex = str.indexOf(searchString, position); + return lastIndex !== -1 && lastIndex === position; +}; +var toArray = (thing) => { + if (!thing) + return null; + if (isArray(thing)) + return thing; + let i = thing.length; + if (!isNumber(i)) + return null; + const arr = new Array(i); + while (i-- > 0) { + arr[i] = thing[i]; + } + return arr; +}; +var isTypedArray = ((TypedArray) => { + return (thing) => { + return TypedArray && thing instanceof TypedArray; + }; +})(typeof Uint8Array !== "undefined" && getPrototypeOf(Uint8Array)); +var forEachEntry = (obj2, fn) => { + const generator = obj2 && obj2[Symbol.iterator]; + const iterator = generator.call(obj2); + let result; + while ((result = iterator.next()) && !result.done) { + const pair = result.value; + fn.call(obj2, pair[0], pair[1]); + } +}; +var matchAll = (regExp, str) => { + let matches; + const arr = []; + while ((matches = regExp.exec(str)) !== null) { + arr.push(matches); + } + return arr; +}; +var isHTMLForm = kindOfTest("HTMLFormElement"); +var toCamelCase = (str) => { + return str.toLowerCase().replace( + /[-_\s]([a-z\d])(\w*)/g, + function replacer(m, p1, p2) { + return p1.toUpperCase() + p2; + } + ); +}; +var hasOwnProperty = (({ hasOwnProperty: hasOwnProperty2 }) => (obj2, prop) => hasOwnProperty2.call(obj2, prop))(Object.prototype); +var isRegExp = kindOfTest("RegExp"); +var reduceDescriptors = (obj2, reducer) => { + const descriptors2 = Object.getOwnPropertyDescriptors(obj2); + const reducedDescriptors = {}; + forEach(descriptors2, (descriptor, name) => { + if (reducer(descriptor, name, obj2) !== false) { + reducedDescriptors[name] = descriptor; + } + }); + Object.defineProperties(obj2, reducedDescriptors); +}; +var freezeMethods = (obj2) => { + reduceDescriptors(obj2, (descriptor, name) => { + if (isFunction(obj2) && ["arguments", "caller", "callee"].indexOf(name) !== -1) { + return false; + } + const value = obj2[name]; + if (!isFunction(value)) + return; + descriptor.enumerable = false; + if ("writable" in descriptor) { + descriptor.writable = false; + return; + } + if (!descriptor.set) { + descriptor.set = () => { + throw Error("Can not rewrite read-only method '" + name + "'"); + }; + } + }); +}; +var toObjectSet = (arrayOrString, delimiter) => { + const obj2 = {}; + const define2 = (arr) => { + arr.forEach((value) => { + obj2[value] = true; + }); + }; + isArray(arrayOrString) ? define2(arrayOrString) : define2(String(arrayOrString).split(delimiter)); + return obj2; +}; +var noop = () => { +}; +var toFiniteNumber = (value, defaultValue) => { + value = +value; + return Number.isFinite(value) ? value : defaultValue; +}; +var ALPHA = "abcdefghijklmnopqrstuvwxyz"; +var DIGIT = "0123456789"; +var ALPHABET = { + DIGIT, + ALPHA, + ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT +}; +var generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => { + let str = ""; + const { length } = alphabet; + while (size--) { + str += alphabet[Math.random() * length | 0]; + } + return str; +}; +function isSpecCompliantForm(thing) { + return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === "FormData" && thing[Symbol.iterator]); +} +var toJSONObject = (obj2) => { + const stack = new Array(10); + const visit = (source2, i) => { + if (isObject2(source2)) { + if (stack.indexOf(source2) >= 0) { + return; + } + if (!("toJSON" in source2)) { + stack[i] = source2; + const target = isArray(source2) ? [] : {}; + forEach(source2, (value, key) => { + const reducedValue = visit(value, i + 1); + !isUndefined(reducedValue) && (target[key] = reducedValue); + }); + stack[i] = void 0; + return target; + } + } + return source2; + }; + return visit(obj2, 0); +}; +var utils_default = { + isArray, + isArrayBuffer, + isBuffer, + isFormData, + isArrayBufferView, + isString, + isNumber, + isBoolean, + isObject: isObject2, + isPlainObject, + isUndefined, + isDate, + isFile, + isBlob, + isRegExp, + isFunction, + isStream, + isURLSearchParams, + isTypedArray, + isFileList, + forEach, + merge, + extend, + trim, + stripBOM, + inherits: inherits2, + toFlatObject, + kindOf, + kindOfTest, + endsWith, + toArray, + forEachEntry, + matchAll, + isHTMLForm, + hasOwnProperty, + hasOwnProp: hasOwnProperty, + // an alias to avoid ESLint no-prototype-builtins detection + reduceDescriptors, + freezeMethods, + toObjectSet, + toCamelCase, + noop, + toFiniteNumber, + findKey, + global: _global, + isContextDefined, + ALPHABET, + generateString, + isSpecCompliantForm, + toJSONObject +}; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/core/AxiosError.js +function AxiosError(message, code, config, request, response) { + Error.call(this); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } else { + this.stack = new Error().stack; + } + this.message = message; + this.name = "AxiosError"; + code && (this.code = code); + config && (this.config = config); + request && (this.request = request); + response && (this.response = response); +} +utils_default.inherits(AxiosError, Error, { + toJSON: function toJSON() { + return { + // Standard + message: this.message, + name: this.name, + // Microsoft + description: this.description, + number: this.number, + // Mozilla + fileName: this.fileName, + lineNumber: this.lineNumber, + columnNumber: this.columnNumber, + stack: this.stack, + // Axios + config: utils_default.toJSONObject(this.config), + code: this.code, + status: this.response && this.response.status ? this.response.status : null + }; + } +}); +var prototype = AxiosError.prototype; +var descriptors = {}; +[ + "ERR_BAD_OPTION_VALUE", + "ERR_BAD_OPTION", + "ECONNABORTED", + "ETIMEDOUT", + "ERR_NETWORK", + "ERR_FR_TOO_MANY_REDIRECTS", + "ERR_DEPRECATED", + "ERR_BAD_RESPONSE", + "ERR_BAD_REQUEST", + "ERR_CANCELED", + "ERR_NOT_SUPPORT", + "ERR_INVALID_URL" + // eslint-disable-next-line func-names +].forEach((code) => { + descriptors[code] = { value: code }; +}); +Object.defineProperties(AxiosError, descriptors); +Object.defineProperty(prototype, "isAxiosError", { value: true }); +AxiosError.from = (error, code, config, request, response, customProps) => { + const axiosError = Object.create(prototype); + utils_default.toFlatObject(error, axiosError, function filter3(obj2) { + return obj2 !== Error.prototype; + }, (prop) => { + return prop !== "isAxiosError"; + }); + AxiosError.call(axiosError, error.message, code, config, request, response); + axiosError.cause = error; + axiosError.name = error.name; + customProps && Object.assign(axiosError, customProps); + return axiosError; +}; +var AxiosError_default = AxiosError; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/platform/node/classes/FormData.js +var import_form_data = __toESM(require_form_data(), 1); +var FormData_default = import_form_data.default; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/toFormData.js +function isVisitable(thing) { + return utils_default.isPlainObject(thing) || utils_default.isArray(thing); +} +function removeBrackets(key) { + return utils_default.endsWith(key, "[]") ? key.slice(0, -2) : key; +} +function renderKey(path30, key, dots) { + if (!path30) + return key; + return path30.concat(key).map(function each(token, i) { + token = removeBrackets(token); + return !dots && i ? "[" + token + "]" : token; + }).join(dots ? "." : ""); +} +function isFlatArray(arr) { + return utils_default.isArray(arr) && !arr.some(isVisitable); +} +var predicates = utils_default.toFlatObject(utils_default, {}, null, function filter2(prop) { + return /^is[A-Z]/.test(prop); +}); +function toFormData(obj2, formData, options2) { + if (!utils_default.isObject(obj2)) { + throw new TypeError("target must be an object"); + } + formData = formData || new (FormData_default || FormData)(); + options2 = utils_default.toFlatObject(options2, { + metaTokens: true, + dots: false, + indexes: false + }, false, function defined(option, source2) { + return !utils_default.isUndefined(source2[option]); + }); + const metaTokens = options2.metaTokens; + const visitor = options2.visitor || defaultVisitor; + const dots = options2.dots; + const indexes = options2.indexes; + const _Blob = options2.Blob || typeof Blob !== "undefined" && Blob; + const useBlob = _Blob && utils_default.isSpecCompliantForm(formData); + if (!utils_default.isFunction(visitor)) { + throw new TypeError("visitor must be a function"); + } + function convertValue(value) { + if (value === null) + return ""; + if (utils_default.isDate(value)) { + return value.toISOString(); + } + if (!useBlob && utils_default.isBlob(value)) { + throw new AxiosError_default("Blob is not supported. Use a Buffer instead."); + } + if (utils_default.isArrayBuffer(value) || utils_default.isTypedArray(value)) { + return useBlob && typeof Blob === "function" ? new Blob([value]) : Buffer.from(value); + } + return value; + } + function defaultVisitor(value, key, path30) { + let arr = value; + if (value && !path30 && typeof value === "object") { + if (utils_default.endsWith(key, "{}")) { + key = metaTokens ? key : key.slice(0, -2); + value = JSON.stringify(value); + } else if (utils_default.isArray(value) && isFlatArray(value) || (utils_default.isFileList(value) || utils_default.endsWith(key, "[]")) && (arr = utils_default.toArray(value))) { + key = removeBrackets(key); + arr.forEach(function each(el, index) { + !(utils_default.isUndefined(el) || el === null) && formData.append( + // eslint-disable-next-line no-nested-ternary + indexes === true ? renderKey([key], index, dots) : indexes === null ? key : key + "[]", + convertValue(el) + ); + }); + return false; + } + } + if (isVisitable(value)) { + return true; + } + formData.append(renderKey(path30, key, dots), convertValue(value)); + return false; + } + const stack = []; + const exposedHelpers = Object.assign(predicates, { + defaultVisitor, + convertValue, + isVisitable + }); + function build(value, path30) { + if (utils_default.isUndefined(value)) + return; + if (stack.indexOf(value) !== -1) { + throw Error("Circular reference detected in " + path30.join(".")); + } + stack.push(value); + utils_default.forEach(value, function each(el, key) { + const result = !(utils_default.isUndefined(el) || el === null) && visitor.call( + formData, + el, + utils_default.isString(key) ? key.trim() : key, + path30, + exposedHelpers + ); + if (result === true) { + build(el, path30 ? path30.concat(key) : [key]); + } + }); + stack.pop(); + } + if (!utils_default.isObject(obj2)) { + throw new TypeError("data must be an object"); + } + build(obj2); + return formData; +} +var toFormData_default = toFormData; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/AxiosURLSearchParams.js +function encode(str) { + const charMap = { + "!": "%21", + "'": "%27", + "(": "%28", + ")": "%29", + "~": "%7E", + "%20": "+", + "%00": "\0" + }; + return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match2) { + return charMap[match2]; + }); +} +function AxiosURLSearchParams(params, options2) { + this._pairs = []; + params && toFormData_default(params, this, options2); +} +var prototype2 = AxiosURLSearchParams.prototype; +prototype2.append = function append(name, value) { + this._pairs.push([name, value]); +}; +prototype2.toString = function toString2(encoder) { + const _encode = encoder ? function(value) { + return encoder.call(this, value, encode); + } : encode; + return this._pairs.map(function each(pair) { + return _encode(pair[0]) + "=" + _encode(pair[1]); + }, "").join("&"); +}; +var AxiosURLSearchParams_default = AxiosURLSearchParams; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/buildURL.js +function encode2(val) { + return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]"); +} +function buildURL(url2, params, options2) { + if (!params) { + return url2; + } + const _encode = options2 && options2.encode || encode2; + const serializeFn = options2 && options2.serialize; + let serializedParams; + if (serializeFn) { + serializedParams = serializeFn(params, options2); + } else { + serializedParams = utils_default.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams_default(params, options2).toString(_encode); + } + if (serializedParams) { + const hashmarkIndex = url2.indexOf("#"); + if (hashmarkIndex !== -1) { + url2 = url2.slice(0, hashmarkIndex); + } + url2 += (url2.indexOf("?") === -1 ? "?" : "&") + serializedParams; + } + return url2; +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/core/InterceptorManager.js +var InterceptorManager = class { + constructor() { + this.handlers = []; + } + /** + * Add a new interceptor to the stack + * + * @param {Function} fulfilled The function to handle `then` for a `Promise` + * @param {Function} rejected The function to handle `reject` for a `Promise` + * + * @return {Number} An ID used to remove interceptor later + */ + use(fulfilled, rejected, options2) { + this.handlers.push({ + fulfilled, + rejected, + synchronous: options2 ? options2.synchronous : false, + runWhen: options2 ? options2.runWhen : null + }); + return this.handlers.length - 1; + } + /** + * Remove an interceptor from the stack + * + * @param {Number} id The ID that was returned by `use` + * + * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise + */ + eject(id) { + if (this.handlers[id]) { + this.handlers[id] = null; + } + } + /** + * Clear all interceptors from the stack + * + * @returns {void} + */ + clear() { + if (this.handlers) { + this.handlers = []; + } + } + /** + * Iterate over all the registered interceptors + * + * This method is particularly useful for skipping over any + * interceptors that may have become `null` calling `eject`. + * + * @param {Function} fn The function to call for each interceptor + * + * @returns {void} + */ + forEach(fn) { + utils_default.forEach(this.handlers, function forEachHandler(h) { + if (h !== null) { + fn(h); + } + }); + } +}; +var InterceptorManager_default = InterceptorManager; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/defaults/transitional.js +var transitional_default = { + silentJSONParsing: true, + forcedJSONParsing: true, + clarifyTimeoutError: false +}; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/platform/node/classes/URLSearchParams.js +var import_url2 = __toESM(require("url"), 1); +var URLSearchParams_default = import_url2.default.URLSearchParams; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/platform/node/index.js +var node_default = { + isNode: true, + classes: { + URLSearchParams: URLSearchParams_default, + FormData: FormData_default, + Blob: typeof Blob !== "undefined" && Blob || null + }, + protocols: ["http", "https", "file", "data"] +}; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/toURLEncodedForm.js +function toURLEncodedForm(data, options2) { + return toFormData_default(data, new node_default.classes.URLSearchParams(), Object.assign({ + visitor: function(value, key, path30, helpers) { + if (node_default.isNode && utils_default.isBuffer(value)) { + this.append(key, value.toString("base64")); + return false; + } + return helpers.defaultVisitor.apply(this, arguments); + } + }, options2)); +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/formDataToJSON.js +function parsePropPath(name) { + return utils_default.matchAll(/\w+|\[(\w*)]/g, name).map((match2) => { + return match2[0] === "[]" ? "" : match2[1] || match2[0]; + }); +} +function arrayToObject(arr) { + const obj2 = {}; + const keys = Object.keys(arr); + let i; + const len = keys.length; + let key; + for (i = 0; i < len; i++) { + key = keys[i]; + obj2[key] = arr[key]; + } + return obj2; +} +function formDataToJSON(formData) { + function buildPath(path30, value, target, index) { + let name = path30[index++]; + const isNumericKey = Number.isFinite(+name); + const isLast = index >= path30.length; + name = !name && utils_default.isArray(target) ? target.length : name; + if (isLast) { + if (utils_default.hasOwnProp(target, name)) { + target[name] = [target[name], value]; + } else { + target[name] = value; + } + return !isNumericKey; + } + if (!target[name] || !utils_default.isObject(target[name])) { + target[name] = []; + } + const result = buildPath(path30, value, target[name], index); + if (result && utils_default.isArray(target[name])) { + target[name] = arrayToObject(target[name]); + } + return !isNumericKey; + } + if (utils_default.isFormData(formData) && utils_default.isFunction(formData.entries)) { + const obj2 = {}; + utils_default.forEachEntry(formData, (name, value) => { + buildPath(parsePropPath(name), value, obj2, 0); + }); + return obj2; + } + return null; +} +var formDataToJSON_default = formDataToJSON; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/defaults/index.js +var DEFAULT_CONTENT_TYPE = { + "Content-Type": void 0 +}; +function stringifySafely(rawValue, parser2, encoder) { + if (utils_default.isString(rawValue)) { + try { + (parser2 || JSON.parse)(rawValue); + return utils_default.trim(rawValue); + } catch (e) { + if (e.name !== "SyntaxError") { + throw e; + } + } + } + return (encoder || JSON.stringify)(rawValue); +} +var defaults2 = { + transitional: transitional_default, + adapter: ["xhr", "http"], + transformRequest: [function transformRequest(data, headers) { + const contentType = headers.getContentType() || ""; + const hasJSONContentType = contentType.indexOf("application/json") > -1; + const isObjectPayload = utils_default.isObject(data); + if (isObjectPayload && utils_default.isHTMLForm(data)) { + data = new FormData(data); + } + const isFormData2 = utils_default.isFormData(data); + if (isFormData2) { + if (!hasJSONContentType) { + return data; + } + return hasJSONContentType ? JSON.stringify(formDataToJSON_default(data)) : data; + } + if (utils_default.isArrayBuffer(data) || utils_default.isBuffer(data) || utils_default.isStream(data) || utils_default.isFile(data) || utils_default.isBlob(data)) { + return data; + } + if (utils_default.isArrayBufferView(data)) { + return data.buffer; + } + if (utils_default.isURLSearchParams(data)) { + headers.setContentType("application/x-www-form-urlencoded;charset=utf-8", false); + return data.toString(); + } + let isFileList2; + if (isObjectPayload) { + if (contentType.indexOf("application/x-www-form-urlencoded") > -1) { + return toURLEncodedForm(data, this.formSerializer).toString(); + } + if ((isFileList2 = utils_default.isFileList(data)) || contentType.indexOf("multipart/form-data") > -1) { + const _FormData = this.env && this.env.FormData; + return toFormData_default( + isFileList2 ? { "files[]": data } : data, + _FormData && new _FormData(), + this.formSerializer + ); + } + } + if (isObjectPayload || hasJSONContentType) { + headers.setContentType("application/json", false); + return stringifySafely(data); + } + return data; + }], + transformResponse: [function transformResponse(data) { + const transitional2 = this.transitional || defaults2.transitional; + const forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing; + const JSONRequested = this.responseType === "json"; + if (data && utils_default.isString(data) && (forcedJSONParsing && !this.responseType || JSONRequested)) { + const silentJSONParsing = transitional2 && transitional2.silentJSONParsing; + const strictJSONParsing = !silentJSONParsing && JSONRequested; + try { + return JSON.parse(data); + } catch (e) { + if (strictJSONParsing) { + if (e.name === "SyntaxError") { + throw AxiosError_default.from(e, AxiosError_default.ERR_BAD_RESPONSE, this, null, this.response); + } + throw e; + } + } + } + return data; + }], + /** + * A timeout in milliseconds to abort a request. If set to 0 (default) a + * timeout is not created. + */ + timeout: 0, + xsrfCookieName: "XSRF-TOKEN", + xsrfHeaderName: "X-XSRF-TOKEN", + maxContentLength: -1, + maxBodyLength: -1, + env: { + FormData: node_default.classes.FormData, + Blob: node_default.classes.Blob + }, + validateStatus: function validateStatus(status) { + return status >= 200 && status < 300; + }, + headers: { + common: { + "Accept": "application/json, text/plain, */*" + } + } +}; +utils_default.forEach(["delete", "get", "head"], function forEachMethodNoData(method) { + defaults2.headers[method] = {}; +}); +utils_default.forEach(["post", "put", "patch"], function forEachMethodWithData(method) { + defaults2.headers[method] = utils_default.merge(DEFAULT_CONTENT_TYPE); +}); +var defaults_default = defaults2; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/parseHeaders.js +var ignoreDuplicateOf = utils_default.toObjectSet([ + "age", + "authorization", + "content-length", + "content-type", + "etag", + "expires", + "from", + "host", + "if-modified-since", + "if-unmodified-since", + "last-modified", + "location", + "max-forwards", + "proxy-authorization", + "referer", + "retry-after", + "user-agent" +]); +var parseHeaders_default = (rawHeaders) => { + const parsed = {}; + let key; + let val; + let i; + rawHeaders && rawHeaders.split("\n").forEach(function parser2(line) { + i = line.indexOf(":"); + key = line.substring(0, i).trim().toLowerCase(); + val = line.substring(i + 1).trim(); + if (!key || parsed[key] && ignoreDuplicateOf[key]) { + return; + } + if (key === "set-cookie") { + if (parsed[key]) { + parsed[key].push(val); + } else { + parsed[key] = [val]; + } + } else { + parsed[key] = parsed[key] ? parsed[key] + ", " + val : val; + } + }); + return parsed; +}; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/core/AxiosHeaders.js +var $internals = Symbol("internals"); +function normalizeHeader(header) { + return header && String(header).trim().toLowerCase(); +} +function normalizeValue(value) { + if (value === false || value == null) { + return value; + } + return utils_default.isArray(value) ? value.map(normalizeValue) : String(value); +} +function parseTokens(str) { + const tokens = /* @__PURE__ */ Object.create(null); + const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; + let match2; + while (match2 = tokensRE.exec(str)) { + tokens[match2[1]] = match2[2]; + } + return tokens; +} +var isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); +function matchHeaderValue(context2, value, header, filter3, isHeaderNameFilter) { + if (utils_default.isFunction(filter3)) { + return filter3.call(this, value, header); + } + if (isHeaderNameFilter) { + value = header; + } + if (!utils_default.isString(value)) + return; + if (utils_default.isString(filter3)) { + return value.indexOf(filter3) !== -1; + } + if (utils_default.isRegExp(filter3)) { + return filter3.test(value); + } +} +function formatHeader(header) { + return header.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => { + return char.toUpperCase() + str; + }); +} +function buildAccessors(obj2, header) { + const accessorName = utils_default.toCamelCase(" " + header); + ["get", "set", "has"].forEach((methodName) => { + Object.defineProperty(obj2, methodName + accessorName, { + value: function(arg1, arg2, arg3) { + return this[methodName].call(this, header, arg1, arg2, arg3); + }, + configurable: true + }); + }); +} +var AxiosHeaders = class { + constructor(headers) { + headers && this.set(headers); + } + set(header, valueOrRewrite, rewrite) { + const self2 = this; + function setHeader(_value, _header, _rewrite) { + const lHeader = normalizeHeader(_header); + if (!lHeader) { + throw new Error("header name must be a non-empty string"); + } + const key = utils_default.findKey(self2, lHeader); + if (!key || self2[key] === void 0 || _rewrite === true || _rewrite === void 0 && self2[key] !== false) { + self2[key || _header] = normalizeValue(_value); + } + } + const setHeaders = (headers, _rewrite) => utils_default.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); + if (utils_default.isPlainObject(header) || header instanceof this.constructor) { + setHeaders(header, valueOrRewrite); + } else if (utils_default.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { + setHeaders(parseHeaders_default(header), valueOrRewrite); + } else { + header != null && setHeader(valueOrRewrite, header, rewrite); + } + return this; + } + get(header, parser2) { + header = normalizeHeader(header); + if (header) { + const key = utils_default.findKey(this, header); + if (key) { + const value = this[key]; + if (!parser2) { + return value; + } + if (parser2 === true) { + return parseTokens(value); + } + if (utils_default.isFunction(parser2)) { + return parser2.call(this, value, key); + } + if (utils_default.isRegExp(parser2)) { + return parser2.exec(value); + } + throw new TypeError("parser must be boolean|regexp|function"); + } + } + } + has(header, matcher) { + header = normalizeHeader(header); + if (header) { + const key = utils_default.findKey(this, header); + return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher))); + } + return false; + } + delete(header, matcher) { + const self2 = this; + let deleted = false; + function deleteHeader(_header) { + _header = normalizeHeader(_header); + if (_header) { + const key = utils_default.findKey(self2, _header); + if (key && (!matcher || matchHeaderValue(self2, self2[key], key, matcher))) { + delete self2[key]; + deleted = true; + } + } + } + if (utils_default.isArray(header)) { + header.forEach(deleteHeader); + } else { + deleteHeader(header); + } + return deleted; + } + clear(matcher) { + const keys = Object.keys(this); + let i = keys.length; + let deleted = false; + while (i--) { + const key = keys[i]; + if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) { + delete this[key]; + deleted = true; + } + } + return deleted; + } + normalize(format) { + const self2 = this; + const headers = {}; + utils_default.forEach(this, (value, header) => { + const key = utils_default.findKey(headers, header); + if (key) { + self2[key] = normalizeValue(value); + delete self2[header]; + return; + } + const normalized = format ? formatHeader(header) : String(header).trim(); + if (normalized !== header) { + delete self2[header]; + } + self2[normalized] = normalizeValue(value); + headers[normalized] = true; + }); + return this; + } + concat(...targets) { + return this.constructor.concat(this, ...targets); + } + toJSON(asStrings) { + const obj2 = /* @__PURE__ */ Object.create(null); + utils_default.forEach(this, (value, header) => { + value != null && value !== false && (obj2[header] = asStrings && utils_default.isArray(value) ? value.join(", ") : value); + }); + return obj2; + } + [Symbol.iterator]() { + return Object.entries(this.toJSON())[Symbol.iterator](); + } + toString() { + return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n"); + } + get [Symbol.toStringTag]() { + return "AxiosHeaders"; + } + static from(thing) { + return thing instanceof this ? thing : new this(thing); + } + static concat(first, ...targets) { + const computed = new this(first); + targets.forEach((target) => computed.set(target)); + return computed; + } + static accessor(header) { + const internals = this[$internals] = this[$internals] = { + accessors: {} + }; + const accessors = internals.accessors; + const prototype3 = this.prototype; + function defineAccessor(_header) { + const lHeader = normalizeHeader(_header); + if (!accessors[lHeader]) { + buildAccessors(prototype3, _header); + accessors[lHeader] = true; + } + } + utils_default.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); + return this; + } +}; +AxiosHeaders.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]); +utils_default.freezeMethods(AxiosHeaders.prototype); +utils_default.freezeMethods(AxiosHeaders); +var AxiosHeaders_default = AxiosHeaders; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/core/transformData.js +function transformData(fns, response) { + const config = this || defaults_default; + const context2 = response || config; + const headers = AxiosHeaders_default.from(context2.headers); + let data = context2.data; + utils_default.forEach(fns, function transform(fn) { + data = fn.call(config, data, headers.normalize(), response ? response.status : void 0); + }); + headers.normalize(); + return data; +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/cancel/isCancel.js +function isCancel(value) { + return !!(value && value.__CANCEL__); +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/cancel/CanceledError.js +function CanceledError(message, config, request) { + AxiosError_default.call(this, message == null ? "canceled" : message, AxiosError_default.ERR_CANCELED, config, request); + this.name = "CanceledError"; +} +utils_default.inherits(CanceledError, AxiosError_default, { + __CANCEL__: true +}); +var CanceledError_default = CanceledError; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/core/settle.js +function settle(resolve8, reject, response) { + const validateStatus2 = response.config.validateStatus; + if (!response.status || !validateStatus2 || validateStatus2(response.status)) { + resolve8(response); + } else { + reject(new AxiosError_default( + "Request failed with status code " + response.status, + [AxiosError_default.ERR_BAD_REQUEST, AxiosError_default.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], + response.config, + response.request, + response + )); + } +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/isAbsoluteURL.js +function isAbsoluteURL(url2) { + return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url2); +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/combineURLs.js +function combineURLs(baseURL, relativeURL) { + return relativeURL ? baseURL.replace(/\/+$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL; +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/core/buildFullPath.js +function buildFullPath(baseURL, requestedURL) { + if (baseURL && !isAbsoluteURL(requestedURL)) { + return combineURLs(baseURL, requestedURL); + } + return requestedURL; +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/adapters/http.js +var import_proxy_from_env = __toESM(require_proxy_from_env(), 1); +var import_http2 = __toESM(require("http"), 1); +var import_https2 = __toESM(require("https"), 1); +var import_util3 = __toESM(require("util"), 1); +var import_follow_redirects = __toESM(require_follow_redirects(), 1); +var import_zlib = __toESM(require("zlib"), 1); + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/env/data.js +var VERSION2 = "1.3.6"; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/parseProtocol.js +function parseProtocol(url2) { + const match2 = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url2); + return match2 && match2[1] || ""; +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/fromDataURI.js +var DATA_URL_PATTERN = /^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/; +function fromDataURI(uri, asBlob, options2) { + const _Blob = options2 && options2.Blob || node_default.classes.Blob; + const protocol2 = parseProtocol(uri); + if (asBlob === void 0 && _Blob) { + asBlob = true; + } + if (protocol2 === "data") { + uri = protocol2.length ? uri.slice(protocol2.length + 1) : uri; + const match2 = DATA_URL_PATTERN.exec(uri); + if (!match2) { + throw new AxiosError_default("Invalid URL", AxiosError_default.ERR_INVALID_URL); + } + const mime = match2[1]; + const isBase64 = match2[2]; + const body2 = match2[3]; + const buffer2 = Buffer.from(decodeURIComponent(body2), isBase64 ? "base64" : "utf8"); + if (asBlob) { + if (!_Blob) { + throw new AxiosError_default("Blob is not supported", AxiosError_default.ERR_NOT_SUPPORT); + } + return new _Blob([buffer2], { type: mime }); + } + return buffer2; + } + throw new AxiosError_default("Unsupported protocol " + protocol2, AxiosError_default.ERR_NOT_SUPPORT); +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/adapters/http.js +var import_stream5 = __toESM(require("stream"), 1); + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/AxiosTransformStream.js +var import_stream2 = __toESM(require("stream"), 1); + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/throttle.js +function throttle(fn, freq) { + let timestamp = 0; + const threshold = 1e3 / freq; + let timer = null; + return function throttled(force, args3) { + const now = Date.now(); + if (force || now - timestamp > threshold) { + if (timer) { + clearTimeout(timer); + timer = null; + } + timestamp = now; + return fn.apply(null, args3); + } + if (!timer) { + timer = setTimeout(() => { + timer = null; + timestamp = Date.now(); + return fn.apply(null, args3); + }, threshold - (now - timestamp)); + } + }; +} +var throttle_default = throttle; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/speedometer.js +function speedometer(samplesCount, min) { + samplesCount = samplesCount || 10; + const bytes = new Array(samplesCount); + const timestamps = new Array(samplesCount); + let head = 0; + let tail = 0; + let firstSampleTS; + min = min !== void 0 ? min : 1e3; + return function push(chunkLength) { + const now = Date.now(); + const startedAt = timestamps[tail]; + if (!firstSampleTS) { + firstSampleTS = now; + } + bytes[head] = chunkLength; + timestamps[head] = now; + let i = tail; + let bytesCount = 0; + while (i !== head) { + bytesCount += bytes[i++]; + i = i % samplesCount; + } + head = (head + 1) % samplesCount; + if (head === tail) { + tail = (tail + 1) % samplesCount; + } + if (now - firstSampleTS < min) { + return; + } + const passed = startedAt && now - startedAt; + return passed ? Math.round(bytesCount * 1e3 / passed) : void 0; + }; +} +var speedometer_default = speedometer; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/AxiosTransformStream.js +var kInternals = Symbol("internals"); +var AxiosTransformStream = class extends import_stream2.default.Transform { + constructor(options2) { + options2 = utils_default.toFlatObject(options2, { + maxRate: 0, + chunkSize: 64 * 1024, + minChunkSize: 100, + timeWindow: 500, + ticksRate: 2, + samplesCount: 15 + }, null, (prop, source2) => { + return !utils_default.isUndefined(source2[prop]); + }); + super({ + readableHighWaterMark: options2.chunkSize + }); + const self2 = this; + const internals = this[kInternals] = { + length: options2.length, + timeWindow: options2.timeWindow, + ticksRate: options2.ticksRate, + chunkSize: options2.chunkSize, + maxRate: options2.maxRate, + minChunkSize: options2.minChunkSize, + bytesSeen: 0, + isCaptured: false, + notifiedBytesLoaded: 0, + ts: Date.now(), + bytes: 0, + onReadCallback: null + }; + const _speedometer = speedometer_default(internals.ticksRate * options2.samplesCount, internals.timeWindow); + this.on("newListener", (event) => { + if (event === "progress") { + if (!internals.isCaptured) { + internals.isCaptured = true; + } + } + }); + let bytesNotified = 0; + internals.updateProgress = throttle_default(function throttledHandler() { + const totalBytes = internals.length; + const bytesTransferred = internals.bytesSeen; + const progressBytes = bytesTransferred - bytesNotified; + if (!progressBytes || self2.destroyed) + return; + const rate = _speedometer(progressBytes); + bytesNotified = bytesTransferred; + process.nextTick(() => { + self2.emit("progress", { + "loaded": bytesTransferred, + "total": totalBytes, + "progress": totalBytes ? bytesTransferred / totalBytes : void 0, + "bytes": progressBytes, + "rate": rate ? rate : void 0, + "estimated": rate && totalBytes && bytesTransferred <= totalBytes ? (totalBytes - bytesTransferred) / rate : void 0 + }); + }); + }, internals.ticksRate); + const onFinish = () => { + internals.updateProgress(true); + }; + this.once("end", onFinish); + this.once("error", onFinish); + } + _read(size) { + const internals = this[kInternals]; + if (internals.onReadCallback) { + internals.onReadCallback(); + } + return super._read(size); + } + _transform(chunk, encoding, callback) { + const self2 = this; + const internals = this[kInternals]; + const maxRate = internals.maxRate; + const readableHighWaterMark = this.readableHighWaterMark; + const timeWindow = internals.timeWindow; + const divider = 1e3 / timeWindow; + const bytesThreshold = maxRate / divider; + const minChunkSize = internals.minChunkSize !== false ? Math.max(internals.minChunkSize, bytesThreshold * 0.01) : 0; + function pushChunk(_chunk, _callback) { + const bytes = Buffer.byteLength(_chunk); + internals.bytesSeen += bytes; + internals.bytes += bytes; + if (internals.isCaptured) { + internals.updateProgress(); + } + if (self2.push(_chunk)) { + process.nextTick(_callback); + } else { + internals.onReadCallback = () => { + internals.onReadCallback = null; + process.nextTick(_callback); + }; + } + } + const transformChunk = (_chunk, _callback) => { + const chunkSize = Buffer.byteLength(_chunk); + let chunkRemainder = null; + let maxChunkSize = readableHighWaterMark; + let bytesLeft; + let passed = 0; + if (maxRate) { + const now = Date.now(); + if (!internals.ts || (passed = now - internals.ts) >= timeWindow) { + internals.ts = now; + bytesLeft = bytesThreshold - internals.bytes; + internals.bytes = bytesLeft < 0 ? -bytesLeft : 0; + passed = 0; + } + bytesLeft = bytesThreshold - internals.bytes; + } + if (maxRate) { + if (bytesLeft <= 0) { + return setTimeout(() => { + _callback(null, _chunk); + }, timeWindow - passed); + } + if (bytesLeft < maxChunkSize) { + maxChunkSize = bytesLeft; + } + } + if (maxChunkSize && chunkSize > maxChunkSize && chunkSize - maxChunkSize > minChunkSize) { + chunkRemainder = _chunk.subarray(maxChunkSize); + _chunk = _chunk.subarray(0, maxChunkSize); + } + pushChunk(_chunk, chunkRemainder ? () => { + process.nextTick(_callback, null, chunkRemainder); + } : _callback); + }; + transformChunk(chunk, function transformNextChunk(err2, _chunk) { + if (err2) { + return callback(err2); + } + if (_chunk) { + transformChunk(_chunk, transformNextChunk); + } else { + callback(null); + } + }); + } + setLength(length) { + this[kInternals].length = +length; + return this; + } +}; +var AxiosTransformStream_default = AxiosTransformStream; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/adapters/http.js +var import_events = __toESM(require("events"), 1); + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/formDataToStream.js +var import_util2 = require("util"); +var import_stream3 = require("stream"); + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/readBlob.js +var { asyncIterator } = Symbol; +var readBlob = async function* (blob) { + if (blob.stream) { + yield* blob.stream(); + } else if (blob.arrayBuffer) { + yield await blob.arrayBuffer(); + } else if (blob[asyncIterator]) { + yield* blob[asyncIterator](); + } else { + yield blob; + } +}; +var readBlob_default = readBlob; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/formDataToStream.js +var BOUNDARY_ALPHABET = utils_default.ALPHABET.ALPHA_DIGIT + "-_"; +var textEncoder = new import_util2.TextEncoder(); +var CRLF = "\r\n"; +var CRLF_BYTES = textEncoder.encode(CRLF); +var CRLF_BYTES_COUNT = 2; +var FormDataPart = class { + constructor(name, value) { + const { escapeName } = this.constructor; + const isStringValue = utils_default.isString(value); + let headers = `Content-Disposition: form-data; name="${escapeName(name)}"${!isStringValue && value.name ? `; filename="${escapeName(value.name)}"` : ""}${CRLF}`; + if (isStringValue) { + value = textEncoder.encode(String(value).replace(/\r?\n|\r\n?/g, CRLF)); + } else { + headers += `Content-Type: ${value.type || "application/octet-stream"}${CRLF}`; + } + this.headers = textEncoder.encode(headers + CRLF); + this.contentLength = isStringValue ? value.byteLength : value.size; + this.size = this.headers.byteLength + this.contentLength + CRLF_BYTES_COUNT; + this.name = name; + this.value = value; + } + async *encode() { + yield this.headers; + const { value } = this; + if (utils_default.isTypedArray(value)) { + yield value; + } else { + yield* readBlob_default(value); + } + yield CRLF_BYTES; + } + static escapeName(name) { + return String(name).replace(/[\r\n"]/g, (match2) => ({ + "\r": "%0D", + "\n": "%0A", + '"': "%22" + })[match2]); + } +}; +var formDataToStream = (form, headersHandler, options2) => { + const { + tag = "form-data-boundary", + size = 25, + boundary = tag + "-" + utils_default.generateString(size, BOUNDARY_ALPHABET) + } = options2 || {}; + if (!utils_default.isFormData(form)) { + throw TypeError("FormData instance required"); + } + if (boundary.length < 1 || boundary.length > 70) { + throw Error("boundary must be 10-70 characters long"); + } + const boundaryBytes = textEncoder.encode("--" + boundary + CRLF); + const footerBytes = textEncoder.encode("--" + boundary + "--" + CRLF + CRLF); + let contentLength = footerBytes.byteLength; + const parts = Array.from(form.entries()).map(([name, value]) => { + const part = new FormDataPart(name, value); + contentLength += part.size; + return part; + }); + contentLength += boundaryBytes.byteLength * parts.length; + contentLength = utils_default.toFiniteNumber(contentLength); + const computedHeaders = { + "Content-Type": `multipart/form-data; boundary=${boundary}` + }; + if (Number.isFinite(contentLength)) { + computedHeaders["Content-Length"] = contentLength; + } + headersHandler && headersHandler(computedHeaders); + return import_stream3.Readable.from(async function* () { + for (const part of parts) { + yield boundaryBytes; + yield* part.encode(); + } + yield footerBytes; + }()); +}; +var formDataToStream_default = formDataToStream; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js +var import_stream4 = __toESM(require("stream"), 1); +var ZlibHeaderTransformStream = class extends import_stream4.default.Transform { + __transform(chunk, encoding, callback) { + this.push(chunk); + callback(); + } + _transform(chunk, encoding, callback) { + if (chunk.length !== 0) { + this._transform = this.__transform; + if (chunk[0] !== 120) { + const header = Buffer.alloc(2); + header[0] = 120; + header[1] = 156; + this.push(header, encoding); + } + } + this.__transform(chunk, encoding, callback); + } +}; +var ZlibHeaderTransformStream_default = ZlibHeaderTransformStream; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/adapters/http.js +var zlibOptions = { + flush: import_zlib.default.constants.Z_SYNC_FLUSH, + finishFlush: import_zlib.default.constants.Z_SYNC_FLUSH +}; +var brotliOptions = { + flush: import_zlib.default.constants.BROTLI_OPERATION_FLUSH, + finishFlush: import_zlib.default.constants.BROTLI_OPERATION_FLUSH +}; +var isBrotliSupported = utils_default.isFunction(import_zlib.default.createBrotliDecompress); +var { http: httpFollow, https: httpsFollow } = import_follow_redirects.default; +var isHttps = /https:?/; +var supportedProtocols = node_default.protocols.map((protocol2) => { + return protocol2 + ":"; +}); +function dispatchBeforeRedirect(options2) { + if (options2.beforeRedirects.proxy) { + options2.beforeRedirects.proxy(options2); + } + if (options2.beforeRedirects.config) { + options2.beforeRedirects.config(options2); + } +} +function setProxy(options2, configProxy, location) { + let proxy2 = configProxy; + if (!proxy2 && proxy2 !== false) { + const proxyUrl = (0, import_proxy_from_env.getProxyForUrl)(location); + if (proxyUrl) { + proxy2 = new URL(proxyUrl); + } + } + if (proxy2) { + if (proxy2.username) { + proxy2.auth = (proxy2.username || "") + ":" + (proxy2.password || ""); + } + if (proxy2.auth) { + if (proxy2.auth.username || proxy2.auth.password) { + proxy2.auth = (proxy2.auth.username || "") + ":" + (proxy2.auth.password || ""); + } + const base64 = Buffer.from(proxy2.auth, "utf8").toString("base64"); + options2.headers["Proxy-Authorization"] = "Basic " + base64; + } + options2.headers.host = options2.hostname + (options2.port ? ":" + options2.port : ""); + const proxyHost = proxy2.hostname || proxy2.host; + options2.hostname = proxyHost; + options2.host = proxyHost; + options2.port = proxy2.port; + options2.path = location; + if (proxy2.protocol) { + options2.protocol = proxy2.protocol.includes(":") ? proxy2.protocol : `${proxy2.protocol}:`; + } + } + options2.beforeRedirects.proxy = function beforeRedirect(redirectOptions) { + setProxy(redirectOptions, configProxy, redirectOptions.href); + }; +} +var isHttpAdapterSupported = typeof process !== "undefined" && utils_default.kindOf(process) === "process"; +var wrapAsync = (asyncExecutor) => { + return new Promise((resolve8, reject) => { + let onDone; + let isDone; + const done = (value, isRejected) => { + if (isDone) + return; + isDone = true; + onDone && onDone(value, isRejected); + }; + const _resolve = (value) => { + done(value); + resolve8(value); + }; + const _reject = (reason) => { + done(reason, true); + reject(reason); + }; + asyncExecutor(_resolve, _reject, (onDoneHandler) => onDone = onDoneHandler).catch(_reject); + }); +}; +var http_default = isHttpAdapterSupported && function httpAdapter(config) { + return wrapAsync(async function dispatchHttpRequest(resolve8, reject, onDone) { + let { data } = config; + const { responseType, responseEncoding } = config; + const method = config.method.toUpperCase(); + let isDone; + let rejected = false; + let req; + const emitter = new import_events.default(); + const onFinished = () => { + if (config.cancelToken) { + config.cancelToken.unsubscribe(abort2); + } + if (config.signal) { + config.signal.removeEventListener("abort", abort2); + } + emitter.removeAllListeners(); + }; + onDone((value, isRejected) => { + isDone = true; + if (isRejected) { + rejected = true; + onFinished(); + } + }); + function abort2(reason) { + emitter.emit("abort", !reason || reason.type ? new CanceledError_default(null, config, req) : reason); + } + emitter.once("abort", reject); + if (config.cancelToken || config.signal) { + config.cancelToken && config.cancelToken.subscribe(abort2); + if (config.signal) { + config.signal.aborted ? abort2() : config.signal.addEventListener("abort", abort2); + } + } + const fullPath = buildFullPath(config.baseURL, config.url); + const parsed = new URL(fullPath, "http://localhost"); + const protocol2 = parsed.protocol || supportedProtocols[0]; + if (protocol2 === "data:") { + let convertedData; + if (method !== "GET") { + return settle(resolve8, reject, { + status: 405, + statusText: "method not allowed", + headers: {}, + config + }); + } + try { + convertedData = fromDataURI(config.url, responseType === "blob", { + Blob: config.env && config.env.Blob + }); + } catch (err2) { + throw AxiosError_default.from(err2, AxiosError_default.ERR_BAD_REQUEST, config); + } + if (responseType === "text") { + convertedData = convertedData.toString(responseEncoding); + if (!responseEncoding || responseEncoding === "utf8") { + convertedData = utils_default.stripBOM(convertedData); + } + } else if (responseType === "stream") { + convertedData = import_stream5.default.Readable.from(convertedData); + } + return settle(resolve8, reject, { + data: convertedData, + status: 200, + statusText: "OK", + headers: new AxiosHeaders_default(), + config + }); + } + if (supportedProtocols.indexOf(protocol2) === -1) { + return reject(new AxiosError_default( + "Unsupported protocol " + protocol2, + AxiosError_default.ERR_BAD_REQUEST, + config + )); + } + const headers = AxiosHeaders_default.from(config.headers).normalize(); + headers.set("User-Agent", "axios/" + VERSION2, false); + const onDownloadProgress = config.onDownloadProgress; + const onUploadProgress = config.onUploadProgress; + const maxRate = config.maxRate; + let maxUploadRate = void 0; + let maxDownloadRate = void 0; + if (utils_default.isSpecCompliantForm(data)) { + const userBoundary = headers.getContentType(/boundary=([-_\w\d]{10,70})/i); + data = formDataToStream_default(data, (formHeaders) => { + headers.set(formHeaders); + }, { + tag: `axios-${VERSION2}-boundary`, + boundary: userBoundary && userBoundary[1] || void 0 + }); + } else if (utils_default.isFormData(data) && utils_default.isFunction(data.getHeaders)) { + headers.set(data.getHeaders()); + if (!headers.hasContentLength()) { + try { + const knownLength = await import_util3.default.promisify(data.getLength).call(data); + Number.isFinite(knownLength) && knownLength >= 0 && headers.setContentLength(knownLength); + } catch (e) { + } + } + } else if (utils_default.isBlob(data)) { + data.size && headers.setContentType(data.type || "application/octet-stream"); + headers.setContentLength(data.size || 0); + data = import_stream5.default.Readable.from(readBlob_default(data)); + } else if (data && !utils_default.isStream(data)) { + if (Buffer.isBuffer(data)) { + } else if (utils_default.isArrayBuffer(data)) { + data = Buffer.from(new Uint8Array(data)); + } else if (utils_default.isString(data)) { + data = Buffer.from(data, "utf-8"); + } else { + return reject(new AxiosError_default( + "Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream", + AxiosError_default.ERR_BAD_REQUEST, + config + )); + } + headers.setContentLength(data.length, false); + if (config.maxBodyLength > -1 && data.length > config.maxBodyLength) { + return reject(new AxiosError_default( + "Request body larger than maxBodyLength limit", + AxiosError_default.ERR_BAD_REQUEST, + config + )); + } + } + const contentLength = utils_default.toFiniteNumber(headers.getContentLength()); + if (utils_default.isArray(maxRate)) { + maxUploadRate = maxRate[0]; + maxDownloadRate = maxRate[1]; + } else { + maxUploadRate = maxDownloadRate = maxRate; + } + if (data && (onUploadProgress || maxUploadRate)) { + if (!utils_default.isStream(data)) { + data = import_stream5.default.Readable.from(data, { objectMode: false }); + } + data = import_stream5.default.pipeline([data, new AxiosTransformStream_default({ + length: contentLength, + maxRate: utils_default.toFiniteNumber(maxUploadRate) + })], utils_default.noop); + onUploadProgress && data.on("progress", (progress) => { + onUploadProgress(Object.assign(progress, { + upload: true + })); + }); + } + let auth = void 0; + if (config.auth) { + const username = config.auth.username || ""; + const password = config.auth.password || ""; + auth = username + ":" + password; + } + if (!auth && parsed.username) { + const urlUsername = parsed.username; + const urlPassword = parsed.password; + auth = urlUsername + ":" + urlPassword; + } + auth && headers.delete("authorization"); + let path30; + try { + path30 = buildURL( + parsed.pathname + parsed.search, + config.params, + config.paramsSerializer + ).replace(/^\?/, ""); + } catch (err2) { + const customErr = new Error(err2.message); + customErr.config = config; + customErr.url = config.url; + customErr.exists = true; + return reject(customErr); + } + headers.set( + "Accept-Encoding", + "gzip, compress, deflate" + (isBrotliSupported ? ", br" : ""), + false + ); + const options2 = { + path: path30, + method, + headers: headers.toJSON(), + agents: { http: config.httpAgent, https: config.httpsAgent }, + auth, + protocol: protocol2, + beforeRedirect: dispatchBeforeRedirect, + beforeRedirects: {} + }; + if (config.socketPath) { + options2.socketPath = config.socketPath; + } else { + options2.hostname = parsed.hostname; + options2.port = parsed.port; + setProxy(options2, config.proxy, protocol2 + "//" + parsed.hostname + (parsed.port ? ":" + parsed.port : "") + options2.path); + } + let transport; + const isHttpsRequest = isHttps.test(options2.protocol); + options2.agent = isHttpsRequest ? config.httpsAgent : config.httpAgent; + if (config.transport) { + transport = config.transport; + } else if (config.maxRedirects === 0) { + transport = isHttpsRequest ? import_https2.default : import_http2.default; + } else { + if (config.maxRedirects) { + options2.maxRedirects = config.maxRedirects; + } + if (config.beforeRedirect) { + options2.beforeRedirects.config = config.beforeRedirect; + } + transport = isHttpsRequest ? httpsFollow : httpFollow; + } + if (config.maxBodyLength > -1) { + options2.maxBodyLength = config.maxBodyLength; + } else { + options2.maxBodyLength = Infinity; + } + if (config.insecureHTTPParser) { + options2.insecureHTTPParser = config.insecureHTTPParser; + } + req = transport.request(options2, function handleResponse(res) { + if (req.destroyed) + return; + const streams = [res]; + const responseLength = +res.headers["content-length"]; + if (onDownloadProgress) { + const transformStream = new AxiosTransformStream_default({ + length: utils_default.toFiniteNumber(responseLength), + maxRate: utils_default.toFiniteNumber(maxDownloadRate) + }); + onDownloadProgress && transformStream.on("progress", (progress) => { + onDownloadProgress(Object.assign(progress, { + download: true + })); + }); + streams.push(transformStream); + } + let responseStream = res; + const lastRequest = res.req || req; + if (config.decompress !== false && res.headers["content-encoding"]) { + if (method === "HEAD" || res.statusCode === 204) { + delete res.headers["content-encoding"]; + } + switch (res.headers["content-encoding"]) { + case "gzip": + case "x-gzip": + case "compress": + case "x-compress": + streams.push(import_zlib.default.createUnzip(zlibOptions)); + delete res.headers["content-encoding"]; + break; + case "deflate": + streams.push(new ZlibHeaderTransformStream_default()); + streams.push(import_zlib.default.createUnzip(zlibOptions)); + delete res.headers["content-encoding"]; + break; + case "br": + if (isBrotliSupported) { + streams.push(import_zlib.default.createBrotliDecompress(brotliOptions)); + delete res.headers["content-encoding"]; + } + } + } + responseStream = streams.length > 1 ? import_stream5.default.pipeline(streams, utils_default.noop) : streams[0]; + const offListeners = import_stream5.default.finished(responseStream, () => { + offListeners(); + onFinished(); + }); + const response = { + status: res.statusCode, + statusText: res.statusMessage, + headers: new AxiosHeaders_default(res.headers), + config, + request: lastRequest + }; + if (responseType === "stream") { + response.data = responseStream; + settle(resolve8, reject, response); + } else { + const responseBuffer = []; + let totalResponseBytes = 0; + responseStream.on("data", function handleStreamData(chunk) { + responseBuffer.push(chunk); + totalResponseBytes += chunk.length; + if (config.maxContentLength > -1 && totalResponseBytes > config.maxContentLength) { + rejected = true; + responseStream.destroy(); + reject(new AxiosError_default( + "maxContentLength size of " + config.maxContentLength + " exceeded", + AxiosError_default.ERR_BAD_RESPONSE, + config, + lastRequest + )); + } + }); + responseStream.on("aborted", function handlerStreamAborted() { + if (rejected) { + return; + } + const err2 = new AxiosError_default( + "maxContentLength size of " + config.maxContentLength + " exceeded", + AxiosError_default.ERR_BAD_RESPONSE, + config, + lastRequest + ); + responseStream.destroy(err2); + reject(err2); + }); + responseStream.on("error", function handleStreamError(err2) { + if (req.destroyed) + return; + reject(AxiosError_default.from(err2, null, config, lastRequest)); + }); + responseStream.on("end", function handleStreamEnd() { + try { + let responseData = responseBuffer.length === 1 ? responseBuffer[0] : Buffer.concat(responseBuffer); + if (responseType !== "arraybuffer") { + responseData = responseData.toString(responseEncoding); + if (!responseEncoding || responseEncoding === "utf8") { + responseData = utils_default.stripBOM(responseData); + } + } + response.data = responseData; + } catch (err2) { + reject(AxiosError_default.from(err2, null, config, response.request, response)); + } + settle(resolve8, reject, response); + }); + } + emitter.once("abort", (err2) => { + if (!responseStream.destroyed) { + responseStream.emit("error", err2); + responseStream.destroy(); + } + }); + }); + emitter.once("abort", (err2) => { + reject(err2); + req.destroy(err2); + }); + req.on("error", function handleRequestError(err2) { + reject(AxiosError_default.from(err2, null, config, req)); + }); + req.on("socket", function handleRequestSocket(socket) { + socket.setKeepAlive(true, 1e3 * 60); + }); + if (config.timeout) { + const timeout = parseInt(config.timeout, 10); + if (isNaN(timeout)) { + reject(new AxiosError_default( + "error trying to parse `config.timeout` to int", + AxiosError_default.ERR_BAD_OPTION_VALUE, + config, + req + )); + return; + } + req.setTimeout(timeout, function handleRequestTimeout() { + if (isDone) + return; + let timeoutErrorMessage = config.timeout ? "timeout of " + config.timeout + "ms exceeded" : "timeout exceeded"; + const transitional2 = config.transitional || transitional_default; + if (config.timeoutErrorMessage) { + timeoutErrorMessage = config.timeoutErrorMessage; + } + reject(new AxiosError_default( + timeoutErrorMessage, + transitional2.clarifyTimeoutError ? AxiosError_default.ETIMEDOUT : AxiosError_default.ECONNABORTED, + config, + req + )); + abort2(); + }); + } + if (utils_default.isStream(data)) { + let ended = false; + let errored = false; + data.on("end", () => { + ended = true; + }); + data.once("error", (err2) => { + errored = true; + req.destroy(err2); + }); + data.on("close", () => { + if (!ended && !errored) { + abort2(new CanceledError_default("Request stream has been aborted", config, req)); + } + }); + data.pipe(req); + } else { + req.end(data); + } + }); +}; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/cookies.js +var cookies_default = node_default.isStandardBrowserEnv ? ( + // Standard browser envs support document.cookie + function standardBrowserEnv() { + return { + write: function write(name, value, expires, path30, domain2, secure) { + const cookie = []; + cookie.push(name + "=" + encodeURIComponent(value)); + if (utils_default.isNumber(expires)) { + cookie.push("expires=" + new Date(expires).toGMTString()); + } + if (utils_default.isString(path30)) { + cookie.push("path=" + path30); + } + if (utils_default.isString(domain2)) { + cookie.push("domain=" + domain2); + } + if (secure === true) { + cookie.push("secure"); + } + document.cookie = cookie.join("; "); + }, + read: function read(name) { + const match2 = document.cookie.match(new RegExp("(^|;\\s*)(" + name + ")=([^;]*)")); + return match2 ? decodeURIComponent(match2[3]) : null; + }, + remove: function remove(name) { + this.write(name, "", Date.now() - 864e5); + } + }; + }() +) : ( + // Non standard browser env (web workers, react-native) lack needed support. + function nonStandardBrowserEnv() { + return { + write: function write() { + }, + read: function read() { + return null; + }, + remove: function remove() { + } + }; + }() +); + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/isURLSameOrigin.js +var isURLSameOrigin_default = node_default.isStandardBrowserEnv ? ( + // Standard browser envs have full support of the APIs needed to test + // whether the request URL is of the same origin as current location. + function standardBrowserEnv2() { + const msie = /(msie|trident)/i.test(navigator.userAgent); + const urlParsingNode = document.createElement("a"); + let originURL; + function resolveURL(url2) { + let href = url2; + if (msie) { + urlParsingNode.setAttribute("href", href); + href = urlParsingNode.href; + } + urlParsingNode.setAttribute("href", href); + return { + href: urlParsingNode.href, + protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, "") : "", + host: urlParsingNode.host, + search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, "") : "", + hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, "") : "", + hostname: urlParsingNode.hostname, + port: urlParsingNode.port, + pathname: urlParsingNode.pathname.charAt(0) === "/" ? urlParsingNode.pathname : "/" + urlParsingNode.pathname + }; + } + originURL = resolveURL(window.location.href); + return function isURLSameOrigin(requestURL) { + const parsed = utils_default.isString(requestURL) ? resolveURL(requestURL) : requestURL; + return parsed.protocol === originURL.protocol && parsed.host === originURL.host; + }; + }() +) : ( + // Non standard browser envs (web workers, react-native) lack needed support. + function nonStandardBrowserEnv2() { + return function isURLSameOrigin() { + return true; + }; + }() +); + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/adapters/xhr.js +function progressEventReducer(listener, isDownloadStream) { + let bytesNotified = 0; + const _speedometer = speedometer_default(50, 250); + return (e) => { + const loaded2 = e.loaded; + const total = e.lengthComputable ? e.total : void 0; + const progressBytes = loaded2 - bytesNotified; + const rate = _speedometer(progressBytes); + const inRange = loaded2 <= total; + bytesNotified = loaded2; + const data = { + loaded: loaded2, + total, + progress: total ? loaded2 / total : void 0, + bytes: progressBytes, + rate: rate ? rate : void 0, + estimated: rate && total && inRange ? (total - loaded2) / rate : void 0, + event: e + }; + data[isDownloadStream ? "download" : "upload"] = true; + listener(data); + }; +} +var isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined"; +var xhr_default = isXHRAdapterSupported && function(config) { + return new Promise(function dispatchXhrRequest(resolve8, reject) { + let requestData = config.data; + const requestHeaders = AxiosHeaders_default.from(config.headers).normalize(); + const responseType = config.responseType; + let onCanceled; + function done() { + if (config.cancelToken) { + config.cancelToken.unsubscribe(onCanceled); + } + if (config.signal) { + config.signal.removeEventListener("abort", onCanceled); + } + } + if (utils_default.isFormData(requestData) && (node_default.isStandardBrowserEnv || node_default.isStandardBrowserWebWorkerEnv)) { + requestHeaders.setContentType(false); + } + let request = new XMLHttpRequest(); + if (config.auth) { + const username = config.auth.username || ""; + const password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : ""; + requestHeaders.set("Authorization", "Basic " + btoa(username + ":" + password)); + } + const fullPath = buildFullPath(config.baseURL, config.url); + request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true); + request.timeout = config.timeout; + function onloadend() { + if (!request) { + return; + } + const responseHeaders = AxiosHeaders_default.from( + "getAllResponseHeaders" in request && request.getAllResponseHeaders() + ); + const responseData = !responseType || responseType === "text" || responseType === "json" ? request.responseText : request.response; + const response = { + data: responseData, + status: request.status, + statusText: request.statusText, + headers: responseHeaders, + config, + request + }; + settle(function _resolve(value) { + resolve8(value); + done(); + }, function _reject(err2) { + reject(err2); + done(); + }, response); + request = null; + } + if ("onloadend" in request) { + request.onloadend = onloadend; + } else { + request.onreadystatechange = function handleLoad() { + if (!request || request.readyState !== 4) { + return; + } + if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf("file:") === 0)) { + return; + } + setTimeout(onloadend); + }; + } + request.onabort = function handleAbort() { + if (!request) { + return; + } + reject(new AxiosError_default("Request aborted", AxiosError_default.ECONNABORTED, config, request)); + request = null; + }; + request.onerror = function handleError() { + reject(new AxiosError_default("Network Error", AxiosError_default.ERR_NETWORK, config, request)); + request = null; + }; + request.ontimeout = function handleTimeout() { + let timeoutErrorMessage = config.timeout ? "timeout of " + config.timeout + "ms exceeded" : "timeout exceeded"; + const transitional2 = config.transitional || transitional_default; + if (config.timeoutErrorMessage) { + timeoutErrorMessage = config.timeoutErrorMessage; + } + reject(new AxiosError_default( + timeoutErrorMessage, + transitional2.clarifyTimeoutError ? AxiosError_default.ETIMEDOUT : AxiosError_default.ECONNABORTED, + config, + request + )); + request = null; + }; + if (node_default.isStandardBrowserEnv) { + const xsrfValue = (config.withCredentials || isURLSameOrigin_default(fullPath)) && config.xsrfCookieName && cookies_default.read(config.xsrfCookieName); + if (xsrfValue) { + requestHeaders.set(config.xsrfHeaderName, xsrfValue); + } + } + requestData === void 0 && requestHeaders.setContentType(null); + if ("setRequestHeader" in request) { + utils_default.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) { + request.setRequestHeader(key, val); + }); + } + if (!utils_default.isUndefined(config.withCredentials)) { + request.withCredentials = !!config.withCredentials; + } + if (responseType && responseType !== "json") { + request.responseType = config.responseType; + } + if (typeof config.onDownloadProgress === "function") { + request.addEventListener("progress", progressEventReducer(config.onDownloadProgress, true)); + } + if (typeof config.onUploadProgress === "function" && request.upload) { + request.upload.addEventListener("progress", progressEventReducer(config.onUploadProgress)); + } + if (config.cancelToken || config.signal) { + onCanceled = (cancel) => { + if (!request) { + return; + } + reject(!cancel || cancel.type ? new CanceledError_default(null, config, request) : cancel); + request.abort(); + request = null; + }; + config.cancelToken && config.cancelToken.subscribe(onCanceled); + if (config.signal) { + config.signal.aborted ? onCanceled() : config.signal.addEventListener("abort", onCanceled); + } + } + const protocol2 = parseProtocol(fullPath); + if (protocol2 && node_default.protocols.indexOf(protocol2) === -1) { + reject(new AxiosError_default("Unsupported protocol " + protocol2 + ":", AxiosError_default.ERR_BAD_REQUEST, config)); + return; + } + request.send(requestData || null); + }); +}; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/adapters/adapters.js +var knownAdapters = { + http: http_default, + xhr: xhr_default +}; +utils_default.forEach(knownAdapters, (fn, value) => { + if (fn) { + try { + Object.defineProperty(fn, "name", { value }); + } catch (e) { + } + Object.defineProperty(fn, "adapterName", { value }); + } +}); +var adapters_default = { + getAdapter: (adapters) => { + adapters = utils_default.isArray(adapters) ? adapters : [adapters]; + const { length } = adapters; + let nameOrAdapter; + let adapter; + for (let i = 0; i < length; i++) { + nameOrAdapter = adapters[i]; + if (adapter = utils_default.isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter) { + break; + } + } + if (!adapter) { + if (adapter === false) { + throw new AxiosError_default( + `Adapter ${nameOrAdapter} is not supported by the environment`, + "ERR_NOT_SUPPORT" + ); + } + throw new Error( + utils_default.hasOwnProp(knownAdapters, nameOrAdapter) ? `Adapter '${nameOrAdapter}' is not available in the build` : `Unknown adapter '${nameOrAdapter}'` + ); + } + if (!utils_default.isFunction(adapter)) { + throw new TypeError("adapter is not a function"); + } + return adapter; + }, + adapters: knownAdapters +}; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/core/dispatchRequest.js +function throwIfCancellationRequested(config) { + if (config.cancelToken) { + config.cancelToken.throwIfRequested(); + } + if (config.signal && config.signal.aborted) { + throw new CanceledError_default(null, config); + } +} +function dispatchRequest(config) { + throwIfCancellationRequested(config); + config.headers = AxiosHeaders_default.from(config.headers); + config.data = transformData.call( + config, + config.transformRequest + ); + if (["post", "put", "patch"].indexOf(config.method) !== -1) { + config.headers.setContentType("application/x-www-form-urlencoded", false); + } + const adapter = adapters_default.getAdapter(config.adapter || defaults_default.adapter); + return adapter(config).then(function onAdapterResolution(response) { + throwIfCancellationRequested(config); + response.data = transformData.call( + config, + config.transformResponse, + response + ); + response.headers = AxiosHeaders_default.from(response.headers); + return response; + }, function onAdapterRejection(reason) { + if (!isCancel(reason)) { + throwIfCancellationRequested(config); + if (reason && reason.response) { + reason.response.data = transformData.call( + config, + config.transformResponse, + reason.response + ); + reason.response.headers = AxiosHeaders_default.from(reason.response.headers); + } + } + return Promise.reject(reason); + }); +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/core/mergeConfig.js +var headersToObject = (thing) => thing instanceof AxiosHeaders_default ? thing.toJSON() : thing; +function mergeConfig(config1, config2) { + config2 = config2 || {}; + const config = {}; + function getMergedValue(target, source2, caseless) { + if (utils_default.isPlainObject(target) && utils_default.isPlainObject(source2)) { + return utils_default.merge.call({ caseless }, target, source2); + } else if (utils_default.isPlainObject(source2)) { + return utils_default.merge({}, source2); + } else if (utils_default.isArray(source2)) { + return source2.slice(); + } + return source2; + } + function mergeDeepProperties(a, b, caseless) { + if (!utils_default.isUndefined(b)) { + return getMergedValue(a, b, caseless); + } else if (!utils_default.isUndefined(a)) { + return getMergedValue(void 0, a, caseless); + } + } + function valueFromConfig2(a, b) { + if (!utils_default.isUndefined(b)) { + return getMergedValue(void 0, b); + } + } + function defaultToConfig2(a, b) { + if (!utils_default.isUndefined(b)) { + return getMergedValue(void 0, b); + } else if (!utils_default.isUndefined(a)) { + return getMergedValue(void 0, a); + } + } + function mergeDirectKeys(a, b, prop) { + if (prop in config2) { + return getMergedValue(a, b); + } else if (prop in config1) { + return getMergedValue(void 0, a); + } + } + const mergeMap = { + url: valueFromConfig2, + method: valueFromConfig2, + data: valueFromConfig2, + baseURL: defaultToConfig2, + transformRequest: defaultToConfig2, + transformResponse: defaultToConfig2, + paramsSerializer: defaultToConfig2, + timeout: defaultToConfig2, + timeoutMessage: defaultToConfig2, + withCredentials: defaultToConfig2, + adapter: defaultToConfig2, + responseType: defaultToConfig2, + xsrfCookieName: defaultToConfig2, + xsrfHeaderName: defaultToConfig2, + onUploadProgress: defaultToConfig2, + onDownloadProgress: defaultToConfig2, + decompress: defaultToConfig2, + maxContentLength: defaultToConfig2, + maxBodyLength: defaultToConfig2, + beforeRedirect: defaultToConfig2, + transport: defaultToConfig2, + httpAgent: defaultToConfig2, + httpsAgent: defaultToConfig2, + cancelToken: defaultToConfig2, + socketPath: defaultToConfig2, + responseEncoding: defaultToConfig2, + validateStatus: mergeDirectKeys, + headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true) + }; + utils_default.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) { + const merge3 = mergeMap[prop] || mergeDeepProperties; + const configValue = merge3(config1[prop], config2[prop], prop); + utils_default.isUndefined(configValue) && merge3 !== mergeDirectKeys || (config[prop] = configValue); + }); + return config; +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/validator.js +var validators = {}; +["object", "boolean", "number", "function", "string", "symbol"].forEach((type2, i) => { + validators[type2] = function validator(thing) { + return typeof thing === type2 || "a" + (i < 1 ? "n " : " ") + type2; + }; +}); +var deprecatedWarnings = {}; +validators.transitional = function transitional(validator, version4, message) { + function formatMessage(opt, desc) { + return "[Axios v" + VERSION2 + "] Transitional option '" + opt + "'" + desc + (message ? ". " + message : ""); + } + return (value, opt, opts) => { + if (validator === false) { + throw new AxiosError_default( + formatMessage(opt, " has been removed" + (version4 ? " in " + version4 : "")), + AxiosError_default.ERR_DEPRECATED + ); + } + if (version4 && !deprecatedWarnings[opt]) { + deprecatedWarnings[opt] = true; + console.warn( + formatMessage( + opt, + " has been deprecated since v" + version4 + " and will be removed in the near future" + ) + ); + } + return validator ? validator(value, opt, opts) : true; + }; +}; +function assertOptions(options2, schema, allowUnknown) { + if (typeof options2 !== "object") { + throw new AxiosError_default("options must be an object", AxiosError_default.ERR_BAD_OPTION_VALUE); + } + const keys = Object.keys(options2); + let i = keys.length; + while (i-- > 0) { + const opt = keys[i]; + const validator = schema[opt]; + if (validator) { + const value = options2[opt]; + const result = value === void 0 || validator(value, opt, options2); + if (result !== true) { + throw new AxiosError_default("option " + opt + " must be " + result, AxiosError_default.ERR_BAD_OPTION_VALUE); + } + continue; + } + if (allowUnknown !== true) { + throw new AxiosError_default("Unknown option " + opt, AxiosError_default.ERR_BAD_OPTION); + } + } +} +var validator_default = { + assertOptions, + validators +}; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/core/Axios.js +var validators2 = validator_default.validators; +var Axios = class { + constructor(instanceConfig) { + this.defaults = instanceConfig; + this.interceptors = { + request: new InterceptorManager_default(), + response: new InterceptorManager_default() + }; + } + /** + * Dispatch a request + * + * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) + * @param {?Object} config + * + * @returns {Promise} The Promise to be fulfilled + */ + request(configOrUrl, config) { + if (typeof configOrUrl === "string") { + config = config || {}; + config.url = configOrUrl; + } else { + config = configOrUrl || {}; + } + config = mergeConfig(this.defaults, config); + const { transitional: transitional2, paramsSerializer, headers } = config; + if (transitional2 !== void 0) { + validator_default.assertOptions(transitional2, { + silentJSONParsing: validators2.transitional(validators2.boolean), + forcedJSONParsing: validators2.transitional(validators2.boolean), + clarifyTimeoutError: validators2.transitional(validators2.boolean) + }, false); + } + if (paramsSerializer != null) { + if (utils_default.isFunction(paramsSerializer)) { + config.paramsSerializer = { + serialize: paramsSerializer + }; + } else { + validator_default.assertOptions(paramsSerializer, { + encode: validators2.function, + serialize: validators2.function + }, true); + } + } + config.method = (config.method || this.defaults.method || "get").toLowerCase(); + let contextHeaders; + contextHeaders = headers && utils_default.merge( + headers.common, + headers[config.method] + ); + contextHeaders && utils_default.forEach( + ["delete", "get", "head", "post", "put", "patch", "common"], + (method) => { + delete headers[method]; + } + ); + config.headers = AxiosHeaders_default.concat(contextHeaders, headers); + const requestInterceptorChain = []; + let synchronousRequestInterceptors = true; + this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { + if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) { + return; + } + synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; + requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); + }); + const responseInterceptorChain = []; + this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { + responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); + }); + let promise; + let i = 0; + let len; + if (!synchronousRequestInterceptors) { + const chain = [dispatchRequest.bind(this), void 0]; + chain.unshift.apply(chain, requestInterceptorChain); + chain.push.apply(chain, responseInterceptorChain); + len = chain.length; + promise = Promise.resolve(config); + while (i < len) { + promise = promise.then(chain[i++], chain[i++]); + } + return promise; + } + len = requestInterceptorChain.length; + let newConfig = config; + i = 0; + while (i < len) { + const onFulfilled = requestInterceptorChain[i++]; + const onRejected = requestInterceptorChain[i++]; + try { + newConfig = onFulfilled(newConfig); + } catch (error) { + onRejected.call(this, error); + break; + } + } + try { + promise = dispatchRequest.call(this, newConfig); + } catch (error) { + return Promise.reject(error); + } + i = 0; + len = responseInterceptorChain.length; + while (i < len) { + promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); + } + return promise; + } + getUri(config) { + config = mergeConfig(this.defaults, config); + const fullPath = buildFullPath(config.baseURL, config.url); + return buildURL(fullPath, config.params, config.paramsSerializer); + } +}; +utils_default.forEach(["delete", "get", "head", "options"], function forEachMethodNoData2(method) { + Axios.prototype[method] = function(url2, config) { + return this.request(mergeConfig(config || {}, { + method, + url: url2, + data: (config || {}).data + })); + }; +}); +utils_default.forEach(["post", "put", "patch"], function forEachMethodWithData2(method) { + function generateHTTPMethod(isForm) { + return function httpMethod(url2, data, config) { + return this.request(mergeConfig(config || {}, { + method, + headers: isForm ? { + "Content-Type": "multipart/form-data" + } : {}, + url: url2, + data + })); + }; + } + Axios.prototype[method] = generateHTTPMethod(); + Axios.prototype[method + "Form"] = generateHTTPMethod(true); +}); +var Axios_default = Axios; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/cancel/CancelToken.js +var CancelToken = class _CancelToken { + constructor(executor) { + if (typeof executor !== "function") { + throw new TypeError("executor must be a function."); + } + let resolvePromise; + this.promise = new Promise(function promiseExecutor(resolve8) { + resolvePromise = resolve8; + }); + const token = this; + this.promise.then((cancel) => { + if (!token._listeners) + return; + let i = token._listeners.length; + while (i-- > 0) { + token._listeners[i](cancel); + } + token._listeners = null; + }); + this.promise.then = (onfulfilled) => { + let _resolve; + const promise = new Promise((resolve8) => { + token.subscribe(resolve8); + _resolve = resolve8; + }).then(onfulfilled); + promise.cancel = function reject() { + token.unsubscribe(_resolve); + }; + return promise; + }; + executor(function cancel(message, config, request) { + if (token.reason) { + return; + } + token.reason = new CanceledError_default(message, config, request); + resolvePromise(token.reason); + }); + } + /** + * Throws a `CanceledError` if cancellation has been requested. + */ + throwIfRequested() { + if (this.reason) { + throw this.reason; + } + } + /** + * Subscribe to the cancel signal + */ + subscribe(listener) { + if (this.reason) { + listener(this.reason); + return; + } + if (this._listeners) { + this._listeners.push(listener); + } else { + this._listeners = [listener]; + } + } + /** + * Unsubscribe from the cancel signal + */ + unsubscribe(listener) { + if (!this._listeners) { + return; + } + const index = this._listeners.indexOf(listener); + if (index !== -1) { + this._listeners.splice(index, 1); + } + } + /** + * Returns an object that contains a new `CancelToken` and a function that, when called, + * cancels the `CancelToken`. + */ + static source() { + let cancel; + const token = new _CancelToken(function executor(c) { + cancel = c; + }); + return { + token, + cancel + }; + } +}; +var CancelToken_default = CancelToken; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/spread.js +function spread(callback) { + return function wrap2(arr) { + return callback.apply(null, arr); + }; +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/isAxiosError.js +function isAxiosError(payload) { + return utils_default.isObject(payload) && payload.isAxiosError === true; +} + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/helpers/HttpStatusCode.js +var HttpStatusCode = { + Continue: 100, + SwitchingProtocols: 101, + Processing: 102, + EarlyHints: 103, + Ok: 200, + Created: 201, + Accepted: 202, + NonAuthoritativeInformation: 203, + NoContent: 204, + ResetContent: 205, + PartialContent: 206, + MultiStatus: 207, + AlreadyReported: 208, + ImUsed: 226, + MultipleChoices: 300, + MovedPermanently: 301, + Found: 302, + SeeOther: 303, + NotModified: 304, + UseProxy: 305, + Unused: 306, + TemporaryRedirect: 307, + PermanentRedirect: 308, + BadRequest: 400, + Unauthorized: 401, + PaymentRequired: 402, + Forbidden: 403, + NotFound: 404, + MethodNotAllowed: 405, + NotAcceptable: 406, + ProxyAuthenticationRequired: 407, + RequestTimeout: 408, + Conflict: 409, + Gone: 410, + LengthRequired: 411, + PreconditionFailed: 412, + PayloadTooLarge: 413, + UriTooLong: 414, + UnsupportedMediaType: 415, + RangeNotSatisfiable: 416, + ExpectationFailed: 417, + ImATeapot: 418, + MisdirectedRequest: 421, + UnprocessableEntity: 422, + Locked: 423, + FailedDependency: 424, + TooEarly: 425, + UpgradeRequired: 426, + PreconditionRequired: 428, + TooManyRequests: 429, + RequestHeaderFieldsTooLarge: 431, + UnavailableForLegalReasons: 451, + InternalServerError: 500, + NotImplemented: 501, + BadGateway: 502, + ServiceUnavailable: 503, + GatewayTimeout: 504, + HttpVersionNotSupported: 505, + VariantAlsoNegotiates: 506, + InsufficientStorage: 507, + LoopDetected: 508, + NotExtended: 510, + NetworkAuthenticationRequired: 511 +}; +Object.entries(HttpStatusCode).forEach(([key, value]) => { + HttpStatusCode[value] = key; +}); +var HttpStatusCode_default = HttpStatusCode; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/lib/axios.js +function createInstance(defaultConfig) { + const context2 = new Axios_default(defaultConfig); + const instance2 = bind(Axios_default.prototype.request, context2); + utils_default.extend(instance2, Axios_default.prototype, context2, { allOwnKeys: true }); + utils_default.extend(instance2, context2, null, { allOwnKeys: true }); + instance2.create = function create2(instanceConfig) { + return createInstance(mergeConfig(defaultConfig, instanceConfig)); + }; + return instance2; +} +var axios = createInstance(defaults_default); +axios.Axios = Axios_default; +axios.CanceledError = CanceledError_default; +axios.CancelToken = CancelToken_default; +axios.isCancel = isCancel; +axios.VERSION = VERSION2; +axios.toFormData = toFormData_default; +axios.AxiosError = AxiosError_default; +axios.Cancel = axios.CanceledError; +axios.all = function all(promises2) { + return Promise.all(promises2); +}; +axios.spread = spread; +axios.isAxiosError = isAxiosError; +axios.mergeConfig = mergeConfig; +axios.AxiosHeaders = AxiosHeaders_default; +axios.formToJSON = (thing) => formDataToJSON_default(utils_default.isHTMLForm(thing) ? new FormData(thing) : thing); +axios.HttpStatusCode = HttpStatusCode_default; +axios.default = axios; +var axios_default = axios; + +// ../node_modules/.pnpm/axios@1.3.6/node_modules/axios/index.js +var { + Axios: Axios2, + AxiosError: AxiosError2, + CanceledError: CanceledError2, + isCancel: isCancel2, + CancelToken: CancelToken2, + VERSION: VERSION3, + all: all2, + Cancel, + isAxiosError: isAxiosError2, + spread: spread2, + toFormData: toFormData2, + AxiosHeaders: AxiosHeaders2, + HttpStatusCode: HttpStatusCode2, + formToJSON, + mergeConfig: mergeConfig2 +} = axios_default; + +// ../vscode/src/graph/bfg/download-bfg.ts +var unzipper = __toESM(require_unzip2()); + +// ../vscode/src/local-context/download-symf.ts +var import_fs3 = require("fs"); +var os4 = __toESM(require("os")); +var path9 = __toESM(require("path")); +var unzip = __toESM(require_unzip2()); + +// ../vscode/src/services/sentry/sentry.ts +var sentry_exports = {}; +__export(sentry_exports, { + SENTRY_DSN: () => SENTRY_DSN, + SentryService: () => SentryService, + shouldErrorBeReported: () => shouldErrorBeReported +}); + +// ../lib/shared/src/sourcegraph-api/errors.ts +var RateLimitError2 = class extends Error { + constructor(message, limit, retryAfter) { + super(message); + this.limit = limit; + this.retryAfter = retryAfter; + } +}; +function isRateLimitError2(error) { + return error instanceof RateLimitError2; +} +var TracedError = class extends Error { + constructor(message, traceId) { + super(message); + this.traceId = traceId; + } +}; +var NetworkError = class extends Error { + constructor(response, content, traceId) { + super(`Request to ${response.url} failed with ${response.status} ${response.statusText}: ${content}`); + this.traceId = traceId; + this.status = response.status; + } + status; +}; +function isNetworkError(error) { + return error instanceof NetworkError; +} +function isAuthError(error) { + return error instanceof NetworkError && (error.status === 401 || error.status === 403); +} +var AbortError = class extends Error { +}; +function isAbortError(error) { + return isError2(error) && // custom abort error + (error instanceof AbortError || // http module + error.message === "aborted" || // fetch + error.message.includes("The operation was aborted") || error.message.includes("The user aborted a request")); +} +var TimeoutError = class extends Error { +}; + +// ../vscode/src/services/sentry/sentry.ts +__reExport(sentry_exports, __toESM(require_cjs4())); +var SENTRY_DSN = "https://f565373301c9c7ef18448a1c60dfde8d@o19358.ingest.sentry.io/4505743319564288"; +var SentryService = class { + constructor(config) { + this.config = config; + this.prepareReconfigure(); + } + onConfigurationChange(newConfig) { + this.config = newConfig; + this.prepareReconfigure(); + } + prepareReconfigure() { + try { + const isProd = process.env.NODE_ENV === "production"; + const isSentryEnabled = process.env.ENABLE_SENTRY === "true"; + if (!isSentryEnabled) { + return; + } + const options2 = { + dsn: SENTRY_DSN, + release: extensionVersion, + environment: this.config.isRunningInsideAgent ? "agent" : typeof process === "undefined" ? "vscode-web" : "vscode-node", + // In dev mode, have Sentry log extended debug information to the console. + debug: !isProd, + // Only send errors when connected to dotcom in the production build. + beforeSend: (event, hint) => { + if (isProd && isDotCom(this.config.serverEndpoint) && shouldErrorBeReported(hint.originalException)) { + return event; + } + return null; + }, + // The extension host is shared across other extensions, so listening on the default + // unhandled error listeners would not be helpful in case other extensions or VS Code + // throw. Instead, use the manual `captureException` API. + // + // When running inside Agent, we control the whole Node environment so we can safely + // listen to unhandled errors/rejections. + ...this.config.isRunningInsideAgent ? {} : { defaultIntegrations: false } + }; + this.reconfigure(options2); + } catch (error) { + console.error("Failed to initialize Sentry", error); + } + } +}; +function shouldErrorBeReported(error) { + if (error instanceof NetworkError) { + return error.status < 500; + } + if (isAbortError(error) || isRateLimitError2(error) || isAuthError(error)) { + return false; + } + return true; +} + +// ../vscode/src/local-context/download-symf.ts +var symfVersion = "v0.0.2"; +async function getSymfPath(context2) { + const config = workspace.getConfiguration(); + const userSymfPath = config.get("cody.experimental.symf.path"); + if (userSymfPath) { + logDebug("symf", `using user symf: ${userSymfPath}`); + return userSymfPath; + } + const { platform: platform4, arch: arch2 } = getOSArch(); + if (!platform4 || !arch2) { + void window2.showErrorMessage(`No symf binary available for ${os4.platform()}/${os4.machine()}`); + return null; + } + const symfContainingDir = path9.join(context2.globalStorageUri.fsPath, "symf"); + const symfFilename = `symf-${symfVersion}-${arch2}-${platform4}`; + const symfPath = path9.join(symfContainingDir, symfFilename); + if (await fileExists(symfPath)) { + logDebug("symf", `using downloaded symf "${symfPath}"`); + return symfPath; + } + const zigPlatform = platform4 === "linux" ? "linux-musl" : platform4 === "windows" ? "windows-gnu" : platform4; + const symfURL = `https://github.com/sourcegraph/symf/releases/download/${symfVersion}/symf-${arch2}-${zigPlatform}.zip`; + logDebug("symf", `downloading symf from ${symfURL}`); + try { + await window2.withProgress( + { + location: 15 /* Notification */, + title: "Downloading semantic code search utility, symf", + cancellable: false + }, + async (progress) => { + progress.report({ message: "Downloading symf and extracting symf" }); + const symfTmpDir = symfPath + ".tmp"; + await downloadFile(symfURL, symfTmpDir); + logDebug("symf", `downloaded symf to ${symfTmpDir}`); + const tmpFile = path9.join(symfTmpDir, `symf-${arch2}-${zigPlatform}`); + await import_fs3.promises.chmod(tmpFile, 493); + await import_fs3.promises.rename(tmpFile, symfPath); + await import_fs3.promises.rmdir(symfTmpDir, { recursive: true }); + logDebug("symf", `extracted symf to ${symfPath}`); + } + ); + void removeOldSymfBinaries(symfContainingDir, symfFilename); + } catch (error) { + (0, sentry_exports.captureException)(error); + void window2.showErrorMessage(`Failed to download symf: ${error}`); + return null; + } + return symfPath; +} +async function fileExists(path30) { + try { + await import_fs3.promises.access(path30); + return true; + } catch { + return false; + } +} +async function downloadFile(url2, outputPath) { + const response = await axios_default({ + url: url2, + method: "GET", + responseType: "stream", + maxRedirects: 10 + }); + const uz = unzip.Extract({ path: outputPath }); + response.data.pipe(uz); + await new Promise((resolve8, reject) => { + uz.on("finish", resolve8); + uz.on("error", reject); + }); +} +async function removeOldSymfBinaries(containingDir, currentSymfPath) { + const symfDirContents = await import_fs3.promises.readdir(containingDir); + const oldSymfBinaries = symfDirContents.filter((f) => f.startsWith("symf-") && f !== currentSymfPath); + for (const oldSymfBinary of oldSymfBinaries) { + await import_fs3.promises.rm(path9.join(containingDir, oldSymfBinary)); + } +} + +// ../vscode/src/graph/bfg/download-bfg.ts +var defaultBfgVersion = "5.2.10185"; +var serializeBfgDownload = Promise.resolve(null); +async function downloadBfg(context2) { + await serializeBfgDownload; + serializeBfgDownload = (async () => { + const config = workspace.getConfiguration(); + const userBfgPath = config.get("cody.experimental.cody-engine.path"); + if (userBfgPath) { + const bfgStat = await import_fs4.promises.stat(userBfgPath); + if (!bfgStat.isFile()) { + throw new Error(`not a file: ${userBfgPath}`); + } + logDebug("CodyEngine", `using user-provided path: ${userBfgPath} ${bfgStat.isFile()}`); + return userBfgPath; + } + const osArch = getOSArch(); + if (!osArch) { + logDebug("CodyEngine", "getOSArch returned nothing"); + return null; + } + const { platform: platform4, arch: arch2 } = osArch; + if (!arch2) { + logDebug("CodyEngine", "getOSArch returned undefined arch"); + return null; + } + if (!platform4) { + logDebug("CodyEngine", "getOSArch returned undefined platform"); + return null; + } + const archRenames = /* @__PURE__ */ new Map([ + ["aarch64", "arm64"], + ["x86_64", "x64"] + ]); + const rfc795Arch = archRenames.get(arch2 ?? "") ?? arch2; + const bfgContainingDir = import_path8.default.join(context2.globalStorageUri.fsPath, "cody-engine"); + const bfgVersion = config.get("cody.experimental.cody-engine.version", defaultBfgVersion); + await import_fs4.promises.mkdir(bfgContainingDir, { recursive: true }); + const bfgFilename = `cody-engine-${bfgVersion}-${platform4}-${rfc795Arch}`; + const bfgPath = import_path8.default.join(bfgContainingDir, bfgFilename); + const isAlreadyDownloaded = await fileExists(bfgPath); + if (isAlreadyDownloaded) { + logDebug("CodyEngine", `using downloaded path "${bfgPath}"`); + return bfgPath; + } + const bfgURL = `https://github.com/sourcegraph/bfg/releases/download/v${bfgVersion}/bfg-${platform4}-${rfc795Arch}.zip`; + try { + await window2.withProgress( + { + location: 10 /* Window */, + title: "Downloading cody-engine", + cancellable: false + }, + async (progress) => { + progress.report({ message: "Downloading cody-engine" }); + const bfgZip = import_path8.default.join(bfgContainingDir, "bfg.zip"); + await downloadBfgBinary(bfgURL, bfgZip); + await unzipBfg(bfgZip, bfgContainingDir); + logDebug("CodyEngine", bfgPath); + const unzipPath = platform4 === "windows" ? "bfg.exe" : "bfg"; + await import_fs4.promises.rename(import_path8.default.join(bfgContainingDir, unzipPath), bfgPath); + await import_fs4.promises.chmod(bfgPath, 493); + await import_fs4.promises.rm(bfgZip); + logDebug("CodyEngine", `downloaded cody-engine to ${bfgPath}`); + } + ); + void removeOldBfgBinaries(bfgContainingDir, bfgFilename); + } catch (error) { + (0, sentry_exports.captureException)(error); + void window2.showErrorMessage(`Failed to download bfg from URL ${bfgURL}: ${error}`); + return null; + } + return bfgPath; + })(); + return serializeBfgDownload; +} +async function unzipBfg(zipFile, destinationDir) { + const zip = fs2.createReadStream(zipFile).pipe(unzipper.Parse({ forceStream: true })); + for await (const entry of zip) { + if (entry.path.endsWith("/")) { + continue; + } + entry.pipe(fs2.createWriteStream(import_path8.default.join(destinationDir, entry.path))); + } +} +async function downloadBfgBinary(url2, destination) { + logDebug("CodyEngine", `downloading from URL ${url2}`); + const response = await axios_default({ + url: url2, + method: "GET", + responseType: "stream", + maxRedirects: 10 + }); + const stream5 = fs2.createWriteStream(destination); + response.data.pipe(stream5); + await new Promise((resolve8, reject) => { + stream5.on("finish", resolve8); + stream5.on("error", reject); + }); +} +async function removeOldBfgBinaries(containingDir, currentBfgPath) { + const bfgDirContents = await import_fs4.promises.readdir(containingDir); + const oldBfgBinaries = bfgDirContents.filter((f) => f.startsWith("bfg") && f !== currentBfgPath); + for (const oldBfgBinary of oldBfgBinaries) { + await import_fs4.promises.rm(import_path8.default.join(containingDir, oldBfgBinary)); + } +} + +// ../vscode/src/graph/bfg/spawn-bfg.ts +async function spawnBfg(context2, reject) { + const bfg = new MessageHandler(); + const codyrpc = await downloadBfg(context2); + if (!codyrpc) { + throw new Error( + 'Failed to download BFG binary. To fix this problem, set the "cody.experimental.cody-engine.path" configuration to the path of your BFG binary' + ); + } + const isVerboseDebug = workspace.getConfiguration().get("cody.debug.verbose", false); + const child = child_process.spawn(codyrpc, { + stdio: "pipe", + env: { + VERBOSE_DEBUG: `${isVerboseDebug}`, + RUST_BACKTRACE: isVerboseDebug ? "1" : "0" + } + }); + child.stderr.on("data", (chunk) => { + logDebug("CodyEngine", "stderr", chunk.toString()); + }); + child.on("disconnect", () => reject()); + child.on("close", () => reject()); + child.on("error", (error) => reject(error)); + child.on("exit", (code) => { + bfg.exit(); + reject(code); + }); + child.stderr.pipe(process.stderr); + child.stdout.pipe(bfg.messageDecoder); + bfg.messageEncoder.pipe(child.stdin); + return bfg; +} + +// ../vscode/src/repository/repositoryHelpers.ts +function repositoryRemoteUrl(uri) { + return gitRepositoryRemoteUrl(uri) ?? void 0; +} +function gitDirectoryUri(uri) { + return gitAPI()?.getRepository(uri)?.rootUri; +} +function gitRepositoryRemoteUrl(uri) { + try { + const git = gitAPI(); + const repository = git?.getRepository(uri); + if (!repository) { + console.warn(`No Git repository for URI ${uri}`); + return void 0; + } + return repository.state.remotes[0]?.fetchUrl; + } catch (error) { + console.error(error); + return void 0; + } +} +function gitAPI() { + const extension = extensions.getExtension("vscode.git"); + if (!extension) { + console.warn("Git extension not available"); + return void 0; + } + if (!extension.isActive) { + console.warn("Git extension not active"); + return void 0; + } + return extension.exports.getAPI(1); +} + +// ../vscode/src/tree-sitter/language.ts +function getLanguageConfig(languageId) { + switch (languageId) { + case "c": + case "cpp": + case "csharp": + case "dart": + case "go": + case "java": + case "javascript": + case "javascriptreact": + case "php": + case "typescript": + case "typescriptreact": + case "vue": + return { + blockStart: "{", + blockElseTest: /^[\t ]*} else/, + blockEnd: "}", + commentStart: "// " + }; + case "python": { + return { + blockStart: ":", + blockElseTest: /^[\t ]*(elif |else:)/, + blockEnd: null, + commentStart: "# " + }; + } + default: + return null; + } +} + +// ../vscode/src/tree-sitter/query-sdk.ts +var import_lodash5 = __toESM(require_lodash()); + +// ../vscode/src/tree-sitter/grammars.ts +var SupportedLanguage = /* @__PURE__ */ ((SupportedLanguage4) => { + SupportedLanguage4["JavaScript"] = "javascript"; + SupportedLanguage4["JSX"] = "javascriptreact"; + SupportedLanguage4["TypeScript"] = "typescript"; + SupportedLanguage4["TSX"] = "typescriptreact"; + SupportedLanguage4["Java"] = "java"; + SupportedLanguage4["Go"] = "go"; + SupportedLanguage4["Python"] = "python"; + SupportedLanguage4["Dart"] = "dart"; + SupportedLanguage4["Cpp"] = "cpp"; + SupportedLanguage4["CSharp"] = "csharp"; + SupportedLanguage4["Php"] = "php"; + return SupportedLanguage4; +})(SupportedLanguage || {}); +var getParseLanguage = (languageId) => { + const matchedLang = Object.entries(SupportedLanguage).find( + ([key, value]) => value === languageId + ); + return matchedLang ? languageId : null; +}; + +// ../node_modules/.pnpm/lru-cache@10.0.0/node_modules/lru-cache/dist/mjs/index.js +var perf = typeof performance === "object" && performance && typeof performance.now === "function" ? performance : Date; +var warned = /* @__PURE__ */ new Set(); +var PROCESS = typeof process === "object" && !!process ? process : {}; +var emitWarning = (msg, type2, code, fn) => { + typeof PROCESS.emitWarning === "function" ? PROCESS.emitWarning(msg, type2, code, fn) : console.error(`[${code}] ${type2}: ${msg}`); +}; +var AC = globalThis.AbortController; +var AS = globalThis.AbortSignal; +if (typeof AC === "undefined") { + AS = class AbortSignal { + onabort; + _onabort = []; + reason; + aborted = false; + addEventListener(_, fn) { + this._onabort.push(fn); + } + }; + AC = class AbortController { + constructor() { + warnACPolyfill(); + } + signal = new AS(); + abort(reason) { + if (this.signal.aborted) + return; + this.signal.reason = reason; + this.signal.aborted = true; + for (const fn of this.signal._onabort) { + fn(reason); + } + this.signal.onabort?.(reason); + } + }; + let printACPolyfillWarning = PROCESS.env?.LRU_CACHE_IGNORE_AC_WARNING !== "1"; + const warnACPolyfill = () => { + if (!printACPolyfillWarning) + return; + printACPolyfillWarning = false; + emitWarning("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.", "NO_ABORT_CONTROLLER", "ENOTSUP", warnACPolyfill); + }; +} +var shouldWarn = (code) => !warned.has(code); +var TYPE = Symbol("type"); +var isPosInt = (n) => n && n === Math.floor(n) && n > 0 && isFinite(n); +var getUintArray = (max) => !isPosInt(max) ? null : max <= Math.pow(2, 8) ? Uint8Array : max <= Math.pow(2, 16) ? Uint16Array : max <= Math.pow(2, 32) ? Uint32Array : max <= Number.MAX_SAFE_INTEGER ? ZeroArray : null; +var ZeroArray = class extends Array { + constructor(size) { + super(size); + this.fill(0); + } +}; +var Stack = class _Stack { + heap; + length; + // private constructor + static #constructing = false; + static create(max) { + const HeapCls = getUintArray(max); + if (!HeapCls) + return []; + _Stack.#constructing = true; + const s = new _Stack(max, HeapCls); + _Stack.#constructing = false; + return s; + } + constructor(max, HeapCls) { + if (!_Stack.#constructing) { + throw new TypeError("instantiate Stack using Stack.create(n)"); + } + this.heap = new HeapCls(max); + this.length = 0; + } + push(n) { + this.heap[this.length++] = n; + } + pop() { + return this.heap[--this.length]; + } +}; +var LRUCache = class _LRUCache { + // properties coming in from the options of these, only max and maxSize + // really *need* to be protected. The rest can be modified, as they just + // set defaults for various methods. + #max; + #maxSize; + #dispose; + #disposeAfter; + #fetchMethod; + /** + * {@link LRUCache.OptionsBase.ttl} + */ + ttl; + /** + * {@link LRUCache.OptionsBase.ttlResolution} + */ + ttlResolution; + /** + * {@link LRUCache.OptionsBase.ttlAutopurge} + */ + ttlAutopurge; + /** + * {@link LRUCache.OptionsBase.updateAgeOnGet} + */ + updateAgeOnGet; + /** + * {@link LRUCache.OptionsBase.updateAgeOnHas} + */ + updateAgeOnHas; + /** + * {@link LRUCache.OptionsBase.allowStale} + */ + allowStale; + /** + * {@link LRUCache.OptionsBase.noDisposeOnSet} + */ + noDisposeOnSet; + /** + * {@link LRUCache.OptionsBase.noUpdateTTL} + */ + noUpdateTTL; + /** + * {@link LRUCache.OptionsBase.maxEntrySize} + */ + maxEntrySize; + /** + * {@link LRUCache.OptionsBase.sizeCalculation} + */ + sizeCalculation; + /** + * {@link LRUCache.OptionsBase.noDeleteOnFetchRejection} + */ + noDeleteOnFetchRejection; + /** + * {@link LRUCache.OptionsBase.noDeleteOnStaleGet} + */ + noDeleteOnStaleGet; + /** + * {@link LRUCache.OptionsBase.allowStaleOnFetchAbort} + */ + allowStaleOnFetchAbort; + /** + * {@link LRUCache.OptionsBase.allowStaleOnFetchRejection} + */ + allowStaleOnFetchRejection; + /** + * {@link LRUCache.OptionsBase.ignoreFetchAbort} + */ + ignoreFetchAbort; + // computed properties + #size; + #calculatedSize; + #keyMap; + #keyList; + #valList; + #next; + #prev; + #head; + #tail; + #free; + #disposed; + #sizes; + #starts; + #ttls; + #hasDispose; + #hasFetchMethod; + #hasDisposeAfter; + /** + * Do not call this method unless you need to inspect the + * inner workings of the cache. If anything returned by this + * object is modified in any way, strange breakage may occur. + * + * These fields are private for a reason! + * + * @internal + */ + static unsafeExposeInternals(c) { + return { + // properties + starts: c.#starts, + ttls: c.#ttls, + sizes: c.#sizes, + keyMap: c.#keyMap, + keyList: c.#keyList, + valList: c.#valList, + next: c.#next, + prev: c.#prev, + get head() { + return c.#head; + }, + get tail() { + return c.#tail; + }, + free: c.#free, + // methods + isBackgroundFetch: (p) => c.#isBackgroundFetch(p), + backgroundFetch: (k, index, options2, context2) => c.#backgroundFetch(k, index, options2, context2), + moveToTail: (index) => c.#moveToTail(index), + indexes: (options2) => c.#indexes(options2), + rindexes: (options2) => c.#rindexes(options2), + isStale: (index) => c.#isStale(index) + }; + } + // Protected read-only members + /** + * {@link LRUCache.OptionsBase.max} (read-only) + */ + get max() { + return this.#max; + } + /** + * {@link LRUCache.OptionsBase.maxSize} (read-only) + */ + get maxSize() { + return this.#maxSize; + } + /** + * The total computed size of items in the cache (read-only) + */ + get calculatedSize() { + return this.#calculatedSize; + } + /** + * The number of items stored in the cache (read-only) + */ + get size() { + return this.#size; + } + /** + * {@link LRUCache.OptionsBase.fetchMethod} (read-only) + */ + get fetchMethod() { + return this.#fetchMethod; + } + /** + * {@link LRUCache.OptionsBase.dispose} (read-only) + */ + get dispose() { + return this.#dispose; + } + /** + * {@link LRUCache.OptionsBase.disposeAfter} (read-only) + */ + get disposeAfter() { + return this.#disposeAfter; + } + constructor(options2) { + const { max = 0, ttl, ttlResolution = 1, ttlAutopurge, updateAgeOnGet, updateAgeOnHas, allowStale, dispose, disposeAfter, noDisposeOnSet, noUpdateTTL, maxSize = 0, maxEntrySize = 0, sizeCalculation, fetchMethod, noDeleteOnFetchRejection, noDeleteOnStaleGet, allowStaleOnFetchRejection, allowStaleOnFetchAbort, ignoreFetchAbort } = options2; + if (max !== 0 && !isPosInt(max)) { + throw new TypeError("max option must be a nonnegative integer"); + } + const UintArray = max ? getUintArray(max) : Array; + if (!UintArray) { + throw new Error("invalid max value: " + max); + } + this.#max = max; + this.#maxSize = maxSize; + this.maxEntrySize = maxEntrySize || this.#maxSize; + this.sizeCalculation = sizeCalculation; + if (this.sizeCalculation) { + if (!this.#maxSize && !this.maxEntrySize) { + throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize"); + } + if (typeof this.sizeCalculation !== "function") { + throw new TypeError("sizeCalculation set to non-function"); + } + } + if (fetchMethod !== void 0 && typeof fetchMethod !== "function") { + throw new TypeError("fetchMethod must be a function if specified"); + } + this.#fetchMethod = fetchMethod; + this.#hasFetchMethod = !!fetchMethod; + this.#keyMap = /* @__PURE__ */ new Map(); + this.#keyList = new Array(max).fill(void 0); + this.#valList = new Array(max).fill(void 0); + this.#next = new UintArray(max); + this.#prev = new UintArray(max); + this.#head = 0; + this.#tail = 0; + this.#free = Stack.create(max); + this.#size = 0; + this.#calculatedSize = 0; + if (typeof dispose === "function") { + this.#dispose = dispose; + } + if (typeof disposeAfter === "function") { + this.#disposeAfter = disposeAfter; + this.#disposed = []; + } else { + this.#disposeAfter = void 0; + this.#disposed = void 0; + } + this.#hasDispose = !!this.#dispose; + this.#hasDisposeAfter = !!this.#disposeAfter; + this.noDisposeOnSet = !!noDisposeOnSet; + this.noUpdateTTL = !!noUpdateTTL; + this.noDeleteOnFetchRejection = !!noDeleteOnFetchRejection; + this.allowStaleOnFetchRejection = !!allowStaleOnFetchRejection; + this.allowStaleOnFetchAbort = !!allowStaleOnFetchAbort; + this.ignoreFetchAbort = !!ignoreFetchAbort; + if (this.maxEntrySize !== 0) { + if (this.#maxSize !== 0) { + if (!isPosInt(this.#maxSize)) { + throw new TypeError("maxSize must be a positive integer if specified"); + } + } + if (!isPosInt(this.maxEntrySize)) { + throw new TypeError("maxEntrySize must be a positive integer if specified"); + } + this.#initializeSizeTracking(); + } + this.allowStale = !!allowStale; + this.noDeleteOnStaleGet = !!noDeleteOnStaleGet; + this.updateAgeOnGet = !!updateAgeOnGet; + this.updateAgeOnHas = !!updateAgeOnHas; + this.ttlResolution = isPosInt(ttlResolution) || ttlResolution === 0 ? ttlResolution : 1; + this.ttlAutopurge = !!ttlAutopurge; + this.ttl = ttl || 0; + if (this.ttl) { + if (!isPosInt(this.ttl)) { + throw new TypeError("ttl must be a positive integer if specified"); + } + this.#initializeTTLTracking(); + } + if (this.#max === 0 && this.ttl === 0 && this.#maxSize === 0) { + throw new TypeError("At least one of max, maxSize, or ttl is required"); + } + if (!this.ttlAutopurge && !this.#max && !this.#maxSize) { + const code = "LRU_CACHE_UNBOUNDED"; + if (shouldWarn(code)) { + warned.add(code); + const msg = "TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption."; + emitWarning(msg, "UnboundedCacheWarning", code, _LRUCache); + } + } + } + /** + * Return the remaining TTL time for a given entry key + */ + getRemainingTTL(key) { + return this.#keyMap.has(key) ? Infinity : 0; + } + #initializeTTLTracking() { + const ttls = new ZeroArray(this.#max); + const starts = new ZeroArray(this.#max); + this.#ttls = ttls; + this.#starts = starts; + this.#setItemTTL = (index, ttl, start4 = perf.now()) => { + starts[index] = ttl !== 0 ? start4 : 0; + ttls[index] = ttl; + if (ttl !== 0 && this.ttlAutopurge) { + const t = setTimeout(() => { + if (this.#isStale(index)) { + this.delete(this.#keyList[index]); + } + }, ttl + 1); + if (t.unref) { + t.unref(); + } + } + }; + this.#updateItemAge = (index) => { + starts[index] = ttls[index] !== 0 ? perf.now() : 0; + }; + this.#statusTTL = (status, index) => { + if (ttls[index]) { + const ttl = ttls[index]; + const start4 = starts[index]; + status.ttl = ttl; + status.start = start4; + status.now = cachedNow || getNow(); + const age = status.now - start4; + status.remainingTTL = ttl - age; + } + }; + let cachedNow = 0; + const getNow = () => { + const n = perf.now(); + if (this.ttlResolution > 0) { + cachedNow = n; + const t = setTimeout(() => cachedNow = 0, this.ttlResolution); + if (t.unref) { + t.unref(); + } + } + return n; + }; + this.getRemainingTTL = (key) => { + const index = this.#keyMap.get(key); + if (index === void 0) { + return 0; + } + const ttl = ttls[index]; + const start4 = starts[index]; + if (ttl === 0 || start4 === 0) { + return Infinity; + } + const age = (cachedNow || getNow()) - start4; + return ttl - age; + }; + this.#isStale = (index) => { + return ttls[index] !== 0 && starts[index] !== 0 && (cachedNow || getNow()) - starts[index] > ttls[index]; + }; + } + // conditionally set private methods related to TTL + #updateItemAge = () => { + }; + #statusTTL = () => { + }; + #setItemTTL = () => { + }; + /* c8 ignore stop */ + #isStale = () => false; + #initializeSizeTracking() { + const sizes = new ZeroArray(this.#max); + this.#calculatedSize = 0; + this.#sizes = sizes; + this.#removeItemSize = (index) => { + this.#calculatedSize -= sizes[index]; + sizes[index] = 0; + }; + this.#requireSize = (k, v, size, sizeCalculation) => { + if (this.#isBackgroundFetch(v)) { + return 0; + } + if (!isPosInt(size)) { + if (sizeCalculation) { + if (typeof sizeCalculation !== "function") { + throw new TypeError("sizeCalculation must be a function"); + } + size = sizeCalculation(v, k); + if (!isPosInt(size)) { + throw new TypeError("sizeCalculation return invalid (expect positive integer)"); + } + } else { + throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set."); + } + } + return size; + }; + this.#addItemSize = (index, size, status) => { + sizes[index] = size; + if (this.#maxSize) { + const maxSize = this.#maxSize - sizes[index]; + while (this.#calculatedSize > maxSize) { + this.#evict(true); + } + } + this.#calculatedSize += sizes[index]; + if (status) { + status.entrySize = size; + status.totalCalculatedSize = this.#calculatedSize; + } + }; + } + #removeItemSize = (_i) => { + }; + #addItemSize = (_i, _s, _st) => { + }; + #requireSize = (_k, _v, size, sizeCalculation) => { + if (size || sizeCalculation) { + throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache"); + } + return 0; + }; + *#indexes({ allowStale = this.allowStale } = {}) { + if (this.#size) { + for (let i = this.#tail; true; ) { + if (!this.#isValidIndex(i)) { + break; + } + if (allowStale || !this.#isStale(i)) { + yield i; + } + if (i === this.#head) { + break; + } else { + i = this.#prev[i]; + } + } + } + } + *#rindexes({ allowStale = this.allowStale } = {}) { + if (this.#size) { + for (let i = this.#head; true; ) { + if (!this.#isValidIndex(i)) { + break; + } + if (allowStale || !this.#isStale(i)) { + yield i; + } + if (i === this.#tail) { + break; + } else { + i = this.#next[i]; + } + } + } + } + #isValidIndex(index) { + return index !== void 0 && this.#keyMap.get(this.#keyList[index]) === index; + } + /** + * Return a generator yielding `[key, value]` pairs, + * in order from most recently used to least recently used. + */ + *entries() { + for (const i of this.#indexes()) { + if (this.#valList[i] !== void 0 && this.#keyList[i] !== void 0 && !this.#isBackgroundFetch(this.#valList[i])) { + yield [this.#keyList[i], this.#valList[i]]; + } + } + } + /** + * Inverse order version of {@link LRUCache.entries} + * + * Return a generator yielding `[key, value]` pairs, + * in order from least recently used to most recently used. + */ + *rentries() { + for (const i of this.#rindexes()) { + if (this.#valList[i] !== void 0 && this.#keyList[i] !== void 0 && !this.#isBackgroundFetch(this.#valList[i])) { + yield [this.#keyList[i], this.#valList[i]]; + } + } + } + /** + * Return a generator yielding the keys in the cache, + * in order from most recently used to least recently used. + */ + *keys() { + for (const i of this.#indexes()) { + const k = this.#keyList[i]; + if (k !== void 0 && !this.#isBackgroundFetch(this.#valList[i])) { + yield k; + } + } + } + /** + * Inverse order version of {@link LRUCache.keys} + * + * Return a generator yielding the keys in the cache, + * in order from least recently used to most recently used. + */ + *rkeys() { + for (const i of this.#rindexes()) { + const k = this.#keyList[i]; + if (k !== void 0 && !this.#isBackgroundFetch(this.#valList[i])) { + yield k; + } + } + } + /** + * Return a generator yielding the values in the cache, + * in order from most recently used to least recently used. + */ + *values() { + for (const i of this.#indexes()) { + const v = this.#valList[i]; + if (v !== void 0 && !this.#isBackgroundFetch(this.#valList[i])) { + yield this.#valList[i]; + } + } + } + /** + * Inverse order version of {@link LRUCache.values} + * + * Return a generator yielding the values in the cache, + * in order from least recently used to most recently used. + */ + *rvalues() { + for (const i of this.#rindexes()) { + const v = this.#valList[i]; + if (v !== void 0 && !this.#isBackgroundFetch(this.#valList[i])) { + yield this.#valList[i]; + } + } + } + /** + * Iterating over the cache itself yields the same results as + * {@link LRUCache.entries} + */ + [Symbol.iterator]() { + return this.entries(); + } + /** + * Find a value for which the supplied fn method returns a truthy value, + * similar to Array.find(). fn is called as fn(value, key, cache). + */ + find(fn, getOptions = {}) { + for (const i of this.#indexes()) { + const v = this.#valList[i]; + const value = this.#isBackgroundFetch(v) ? v.__staleWhileFetching : v; + if (value === void 0) + continue; + if (fn(value, this.#keyList[i], this)) { + return this.get(this.#keyList[i], getOptions); + } + } + } + /** + * Call the supplied function on each item in the cache, in order from + * most recently used to least recently used. fn is called as + * fn(value, key, cache). Does not update age or recenty of use. + * Does not iterate over stale values. + */ + forEach(fn, thisp = this) { + for (const i of this.#indexes()) { + const v = this.#valList[i]; + const value = this.#isBackgroundFetch(v) ? v.__staleWhileFetching : v; + if (value === void 0) + continue; + fn.call(thisp, value, this.#keyList[i], this); + } + } + /** + * The same as {@link LRUCache.forEach} but items are iterated over in + * reverse order. (ie, less recently used items are iterated over first.) + */ + rforEach(fn, thisp = this) { + for (const i of this.#rindexes()) { + const v = this.#valList[i]; + const value = this.#isBackgroundFetch(v) ? v.__staleWhileFetching : v; + if (value === void 0) + continue; + fn.call(thisp, value, this.#keyList[i], this); + } + } + /** + * Delete any stale entries. Returns true if anything was removed, + * false otherwise. + */ + purgeStale() { + let deleted = false; + for (const i of this.#rindexes({ allowStale: true })) { + if (this.#isStale(i)) { + this.delete(this.#keyList[i]); + deleted = true; + } + } + return deleted; + } + /** + * Return an array of [key, {@link LRUCache.Entry}] tuples which can be + * passed to cache.load() + */ + dump() { + const arr = []; + for (const i of this.#indexes({ allowStale: true })) { + const key = this.#keyList[i]; + const v = this.#valList[i]; + const value = this.#isBackgroundFetch(v) ? v.__staleWhileFetching : v; + if (value === void 0 || key === void 0) + continue; + const entry = { value }; + if (this.#ttls && this.#starts) { + entry.ttl = this.#ttls[i]; + const age = perf.now() - this.#starts[i]; + entry.start = Math.floor(Date.now() - age); + } + if (this.#sizes) { + entry.size = this.#sizes[i]; + } + arr.unshift([key, entry]); + } + return arr; + } + /** + * Reset the cache and load in the items in entries in the order listed. + * Note that the shape of the resulting cache may be different if the + * same options are not used in both caches. + */ + load(arr) { + this.clear(); + for (const [key, entry] of arr) { + if (entry.start) { + const age = Date.now() - entry.start; + entry.start = perf.now() - age; + } + this.set(key, entry.value, entry); + } + } + /** + * Add a value to the cache. + * + * Note: if `undefined` is specified as a value, this is an alias for + * {@link LRUCache#delete} + */ + set(k, v, setOptions2 = {}) { + if (v === void 0) { + this.delete(k); + return this; + } + const { ttl = this.ttl, start: start4, noDisposeOnSet = this.noDisposeOnSet, sizeCalculation = this.sizeCalculation, status } = setOptions2; + let { noUpdateTTL = this.noUpdateTTL } = setOptions2; + const size = this.#requireSize(k, v, setOptions2.size || 0, sizeCalculation); + if (this.maxEntrySize && size > this.maxEntrySize) { + if (status) { + status.set = "miss"; + status.maxEntrySizeExceeded = true; + } + this.delete(k); + return this; + } + let index = this.#size === 0 ? void 0 : this.#keyMap.get(k); + if (index === void 0) { + index = this.#size === 0 ? this.#tail : this.#free.length !== 0 ? this.#free.pop() : this.#size === this.#max ? this.#evict(false) : this.#size; + this.#keyList[index] = k; + this.#valList[index] = v; + this.#keyMap.set(k, index); + this.#next[this.#tail] = index; + this.#prev[index] = this.#tail; + this.#tail = index; + this.#size++; + this.#addItemSize(index, size, status); + if (status) + status.set = "add"; + noUpdateTTL = false; + } else { + this.#moveToTail(index); + const oldVal = this.#valList[index]; + if (v !== oldVal) { + if (this.#hasFetchMethod && this.#isBackgroundFetch(oldVal)) { + oldVal.__abortController.abort(new Error("replaced")); + } else if (!noDisposeOnSet) { + if (this.#hasDispose) { + this.#dispose?.(oldVal, k, "set"); + } + if (this.#hasDisposeAfter) { + this.#disposed?.push([oldVal, k, "set"]); + } + } + this.#removeItemSize(index); + this.#addItemSize(index, size, status); + this.#valList[index] = v; + if (status) { + status.set = "replace"; + const oldValue = oldVal && this.#isBackgroundFetch(oldVal) ? oldVal.__staleWhileFetching : oldVal; + if (oldValue !== void 0) + status.oldValue = oldValue; + } + } else if (status) { + status.set = "update"; + } + } + if (ttl !== 0 && !this.#ttls) { + this.#initializeTTLTracking(); + } + if (this.#ttls) { + if (!noUpdateTTL) { + this.#setItemTTL(index, ttl, start4); + } + if (status) + this.#statusTTL(status, index); + } + if (!noDisposeOnSet && this.#hasDisposeAfter && this.#disposed) { + const dt = this.#disposed; + let task; + while (task = dt?.shift()) { + this.#disposeAfter?.(...task); + } + } + return this; + } + /** + * Evict the least recently used item, returning its value or + * `undefined` if cache is empty. + */ + pop() { + try { + while (this.#size) { + const val = this.#valList[this.#head]; + this.#evict(true); + if (this.#isBackgroundFetch(val)) { + if (val.__staleWhileFetching) { + return val.__staleWhileFetching; + } + } else if (val !== void 0) { + return val; + } + } + } finally { + if (this.#hasDisposeAfter && this.#disposed) { + const dt = this.#disposed; + let task; + while (task = dt?.shift()) { + this.#disposeAfter?.(...task); + } + } + } + } + #evict(free) { + const head = this.#head; + const k = this.#keyList[head]; + const v = this.#valList[head]; + if (this.#hasFetchMethod && this.#isBackgroundFetch(v)) { + v.__abortController.abort(new Error("evicted")); + } else if (this.#hasDispose || this.#hasDisposeAfter) { + if (this.#hasDispose) { + this.#dispose?.(v, k, "evict"); + } + if (this.#hasDisposeAfter) { + this.#disposed?.push([v, k, "evict"]); + } + } + this.#removeItemSize(head); + if (free) { + this.#keyList[head] = void 0; + this.#valList[head] = void 0; + this.#free.push(head); + } + if (this.#size === 1) { + this.#head = this.#tail = 0; + this.#free.length = 0; + } else { + this.#head = this.#next[head]; + } + this.#keyMap.delete(k); + this.#size--; + return head; + } + /** + * Check if a key is in the cache, without updating the recency of use. + * Will return false if the item is stale, even though it is technically + * in the cache. + * + * Will not update item age unless + * {@link LRUCache.OptionsBase.updateAgeOnHas} is set. + */ + has(k, hasOptions = {}) { + const { updateAgeOnHas = this.updateAgeOnHas, status } = hasOptions; + const index = this.#keyMap.get(k); + if (index !== void 0) { + const v = this.#valList[index]; + if (this.#isBackgroundFetch(v) && v.__staleWhileFetching === void 0) { + return false; + } + if (!this.#isStale(index)) { + if (updateAgeOnHas) { + this.#updateItemAge(index); + } + if (status) { + status.has = "hit"; + this.#statusTTL(status, index); + } + return true; + } else if (status) { + status.has = "stale"; + this.#statusTTL(status, index); + } + } else if (status) { + status.has = "miss"; + } + return false; + } + /** + * Like {@link LRUCache#get} but doesn't update recency or delete stale + * items. + * + * Returns `undefined` if the item is stale, unless + * {@link LRUCache.OptionsBase.allowStale} is set. + */ + peek(k, peekOptions = {}) { + const { allowStale = this.allowStale } = peekOptions; + const index = this.#keyMap.get(k); + if (index !== void 0 && (allowStale || !this.#isStale(index))) { + const v = this.#valList[index]; + return this.#isBackgroundFetch(v) ? v.__staleWhileFetching : v; + } + } + #backgroundFetch(k, index, options2, context2) { + const v = index === void 0 ? void 0 : this.#valList[index]; + if (this.#isBackgroundFetch(v)) { + return v; + } + const ac = new AC(); + const { signal } = options2; + signal?.addEventListener("abort", () => ac.abort(signal.reason), { + signal: ac.signal + }); + const fetchOpts = { + signal: ac.signal, + options: options2, + context: context2 + }; + const cb = (v2, updateCache = false) => { + const { aborted } = ac.signal; + const ignoreAbort = options2.ignoreFetchAbort && v2 !== void 0; + if (options2.status) { + if (aborted && !updateCache) { + options2.status.fetchAborted = true; + options2.status.fetchError = ac.signal.reason; + if (ignoreAbort) + options2.status.fetchAbortIgnored = true; + } else { + options2.status.fetchResolved = true; + } + } + if (aborted && !ignoreAbort && !updateCache) { + return fetchFail(ac.signal.reason); + } + const bf2 = p; + if (this.#valList[index] === p) { + if (v2 === void 0) { + if (bf2.__staleWhileFetching) { + this.#valList[index] = bf2.__staleWhileFetching; + } else { + this.delete(k); + } + } else { + if (options2.status) + options2.status.fetchUpdated = true; + this.set(k, v2, fetchOpts.options); + } + } + return v2; + }; + const eb = (er) => { + if (options2.status) { + options2.status.fetchRejected = true; + options2.status.fetchError = er; + } + return fetchFail(er); + }; + const fetchFail = (er) => { + const { aborted } = ac.signal; + const allowStaleAborted = aborted && options2.allowStaleOnFetchAbort; + const allowStale = allowStaleAborted || options2.allowStaleOnFetchRejection; + const noDelete = allowStale || options2.noDeleteOnFetchRejection; + const bf2 = p; + if (this.#valList[index] === p) { + const del = !noDelete || bf2.__staleWhileFetching === void 0; + if (del) { + this.delete(k); + } else if (!allowStaleAborted) { + this.#valList[index] = bf2.__staleWhileFetching; + } + } + if (allowStale) { + if (options2.status && bf2.__staleWhileFetching !== void 0) { + options2.status.returnedStale = true; + } + return bf2.__staleWhileFetching; + } else if (bf2.__returned === bf2) { + throw er; + } + }; + const pcall = (res, rej) => { + const fmp = this.#fetchMethod?.(k, v, fetchOpts); + if (fmp && fmp instanceof Promise) { + fmp.then((v2) => res(v2 === void 0 ? void 0 : v2), rej); + } + ac.signal.addEventListener("abort", () => { + if (!options2.ignoreFetchAbort || options2.allowStaleOnFetchAbort) { + res(void 0); + if (options2.allowStaleOnFetchAbort) { + res = (v2) => cb(v2, true); + } + } + }); + }; + if (options2.status) + options2.status.fetchDispatched = true; + const p = new Promise(pcall).then(cb, eb); + const bf = Object.assign(p, { + __abortController: ac, + __staleWhileFetching: v, + __returned: void 0 + }); + if (index === void 0) { + this.set(k, bf, { ...fetchOpts.options, status: void 0 }); + index = this.#keyMap.get(k); + } else { + this.#valList[index] = bf; + } + return bf; + } + #isBackgroundFetch(p) { + if (!this.#hasFetchMethod) + return false; + const b = p; + return !!b && b instanceof Promise && b.hasOwnProperty("__staleWhileFetching") && b.__abortController instanceof AC; + } + async fetch(k, fetchOptions = {}) { + const { + // get options + allowStale = this.allowStale, + updateAgeOnGet = this.updateAgeOnGet, + noDeleteOnStaleGet = this.noDeleteOnStaleGet, + // set options + ttl = this.ttl, + noDisposeOnSet = this.noDisposeOnSet, + size = 0, + sizeCalculation = this.sizeCalculation, + noUpdateTTL = this.noUpdateTTL, + // fetch exclusive options + noDeleteOnFetchRejection = this.noDeleteOnFetchRejection, + allowStaleOnFetchRejection = this.allowStaleOnFetchRejection, + ignoreFetchAbort = this.ignoreFetchAbort, + allowStaleOnFetchAbort = this.allowStaleOnFetchAbort, + context: context2, + forceRefresh = false, + status, + signal + } = fetchOptions; + if (!this.#hasFetchMethod) { + if (status) + status.fetch = "get"; + return this.get(k, { + allowStale, + updateAgeOnGet, + noDeleteOnStaleGet, + status + }); + } + const options2 = { + allowStale, + updateAgeOnGet, + noDeleteOnStaleGet, + ttl, + noDisposeOnSet, + size, + sizeCalculation, + noUpdateTTL, + noDeleteOnFetchRejection, + allowStaleOnFetchRejection, + allowStaleOnFetchAbort, + ignoreFetchAbort, + status, + signal + }; + let index = this.#keyMap.get(k); + if (index === void 0) { + if (status) + status.fetch = "miss"; + const p = this.#backgroundFetch(k, index, options2, context2); + return p.__returned = p; + } else { + const v = this.#valList[index]; + if (this.#isBackgroundFetch(v)) { + const stale = allowStale && v.__staleWhileFetching !== void 0; + if (status) { + status.fetch = "inflight"; + if (stale) + status.returnedStale = true; + } + return stale ? v.__staleWhileFetching : v.__returned = v; + } + const isStale = this.#isStale(index); + if (!forceRefresh && !isStale) { + if (status) + status.fetch = "hit"; + this.#moveToTail(index); + if (updateAgeOnGet) { + this.#updateItemAge(index); + } + if (status) + this.#statusTTL(status, index); + return v; + } + const p = this.#backgroundFetch(k, index, options2, context2); + const hasStale = p.__staleWhileFetching !== void 0; + const staleVal = hasStale && allowStale; + if (status) { + status.fetch = isStale ? "stale" : "refresh"; + if (staleVal && isStale) + status.returnedStale = true; + } + return staleVal ? p.__staleWhileFetching : p.__returned = p; + } + } + /** + * Return a value from the cache. Will update the recency of the cache + * entry found. + * + * If the key is not found, get() will return `undefined`. + */ + get(k, getOptions = {}) { + const { allowStale = this.allowStale, updateAgeOnGet = this.updateAgeOnGet, noDeleteOnStaleGet = this.noDeleteOnStaleGet, status } = getOptions; + const index = this.#keyMap.get(k); + if (index !== void 0) { + const value = this.#valList[index]; + const fetching = this.#isBackgroundFetch(value); + if (status) + this.#statusTTL(status, index); + if (this.#isStale(index)) { + if (status) + status.get = "stale"; + if (!fetching) { + if (!noDeleteOnStaleGet) { + this.delete(k); + } + if (status && allowStale) + status.returnedStale = true; + return allowStale ? value : void 0; + } else { + if (status && allowStale && value.__staleWhileFetching !== void 0) { + status.returnedStale = true; + } + return allowStale ? value.__staleWhileFetching : void 0; + } + } else { + if (status) + status.get = "hit"; + if (fetching) { + return value.__staleWhileFetching; + } + this.#moveToTail(index); + if (updateAgeOnGet) { + this.#updateItemAge(index); + } + return value; + } + } else if (status) { + status.get = "miss"; + } + } + #connect(p, n) { + this.#prev[n] = p; + this.#next[p] = n; + } + #moveToTail(index) { + if (index !== this.#tail) { + if (index === this.#head) { + this.#head = this.#next[index]; + } else { + this.#connect(this.#prev[index], this.#next[index]); + } + this.#connect(this.#tail, index); + this.#tail = index; + } + } + /** + * Deletes a key out of the cache. + * Returns true if the key was deleted, false otherwise. + */ + delete(k) { + let deleted = false; + if (this.#size !== 0) { + const index = this.#keyMap.get(k); + if (index !== void 0) { + deleted = true; + if (this.#size === 1) { + this.clear(); + } else { + this.#removeItemSize(index); + const v = this.#valList[index]; + if (this.#isBackgroundFetch(v)) { + v.__abortController.abort(new Error("deleted")); + } else if (this.#hasDispose || this.#hasDisposeAfter) { + if (this.#hasDispose) { + this.#dispose?.(v, k, "delete"); + } + if (this.#hasDisposeAfter) { + this.#disposed?.push([v, k, "delete"]); + } + } + this.#keyMap.delete(k); + this.#keyList[index] = void 0; + this.#valList[index] = void 0; + if (index === this.#tail) { + this.#tail = this.#prev[index]; + } else if (index === this.#head) { + this.#head = this.#next[index]; + } else { + this.#next[this.#prev[index]] = this.#next[index]; + this.#prev[this.#next[index]] = this.#prev[index]; + } + this.#size--; + this.#free.push(index); + } + } + } + if (this.#hasDisposeAfter && this.#disposed?.length) { + const dt = this.#disposed; + let task; + while (task = dt?.shift()) { + this.#disposeAfter?.(...task); + } + } + return deleted; + } + /** + * Clear the cache entirely, throwing away all values. + */ + clear() { + for (const index of this.#rindexes({ allowStale: true })) { + const v = this.#valList[index]; + if (this.#isBackgroundFetch(v)) { + v.__abortController.abort(new Error("deleted")); + } else { + const k = this.#keyList[index]; + if (this.#hasDispose) { + this.#dispose?.(v, k, "delete"); + } + if (this.#hasDisposeAfter) { + this.#disposed?.push([v, k, "delete"]); + } + } + } + this.#keyMap.clear(); + this.#valList.fill(void 0); + this.#keyList.fill(void 0); + if (this.#ttls && this.#starts) { + this.#ttls.fill(0); + this.#starts.fill(0); + } + if (this.#sizes) { + this.#sizes.fill(0); + } + this.#head = 0; + this.#tail = 0; + this.#free.length = 0; + this.#calculatedSize = 0; + this.#size = 0; + if (this.#hasDisposeAfter && this.#disposed) { + const dt = this.#disposed; + let task; + while (task = dt?.shift()) { + this.#disposeAfter?.(...task); + } + } + } +}; + +// ../vscode/src/tree-sitter/parser.ts +var import_path9 = __toESM(require("path")); +var ParserImpl2 = require_tree_sitter(); +var PARSERS_LOCAL_CACHE = {}; +function getParser(language) { + return PARSERS_LOCAL_CACHE[language]; +} +async function createParser(settings) { + const { language, grammarDirectory = __dirname } = settings; + const cachedParser = PARSERS_LOCAL_CACHE[language]; + if (cachedParser) { + return cachedParser; + } + await ParserImpl2.init(); + const parser2 = new ParserImpl2(); + const wasmPath = import_path9.default.resolve(grammarDirectory, SUPPORTED_LANGUAGES[language]); + const languageGrammar = await ParserImpl2.Language.load(wasmPath); + parser2.setLanguage(languageGrammar); + PARSERS_LOCAL_CACHE[language] = parser2; + initQueries(languageGrammar, language, parser2); + return parser2; +} +var SUPPORTED_LANGUAGES = { + ["javascript" /* JavaScript */]: "tree-sitter-javascript.wasm", + ["javascriptreact" /* JSX */]: "tree-sitter-javascript.wasm", + ["typescript" /* TypeScript */]: "tree-sitter-typescript.wasm", + ["typescriptreact" /* TSX */]: "tree-sitter-tsx.wasm", + ["java" /* Java */]: "tree-sitter-java.wasm", + ["go" /* Go */]: "tree-sitter-go.wasm", + ["python" /* Python */]: "tree-sitter-python.wasm", + ["dart" /* Dart */]: "tree-sitter-dart.wasm", + ["cpp" /* Cpp */]: "tree-sitter-cpp.wasm", + ["csharp" /* CSharp */]: "tree-sitter-c_sharp.wasm", + ["php" /* Php */]: "tree-sitter-php.wasm" +}; + +// ../vscode/src/tree-sitter/parse-tree-cache.ts +var parseTreesPerFile = new LRUCache({ + max: 10 +}); +function getCachedParseTreeForDocument(document2) { + const parseLanguage = getLanguageIfTreeSitterEnabled(document2); + if (!parseLanguage) { + return null; + } + const parser2 = getParser(parseLanguage); + const cacheKey = document2.uri.toString(); + const tree = parseTreesPerFile.get(cacheKey); + if (!tree || !parser2) { + return null; + } + return { tree, parser: parser2, cacheKey }; +} +async function parseDocument(document2) { + const parseLanguage = getLanguageIfTreeSitterEnabled(document2); + if (!parseLanguage) { + return; + } + const parser2 = await createParser({ language: parseLanguage }); + updateParseTreeCache(document2, parser2); +} +function updateParseTreeCache(document2, parser2) { + const tree = parser2.parse(document2.getText()); + parseTreesPerFile.set(document2.uri.toString(), tree); +} +function getLanguageIfTreeSitterEnabled(document2) { + const parseLanguage = getParseLanguage(document2.languageId); + if (document2.lineCount <= 1e4 && parseLanguage) { + return parseLanguage; + } + return null; +} +function updateParseTreeOnEdit(edit2) { + const { document: document2, contentChanges } = edit2; + if (contentChanges.length === 0) { + return; + } + const cache = getCachedParseTreeForDocument(document2); + if (!cache) { + return; + } + const { tree, parser: parser2, cacheKey } = cache; + for (const change of contentChanges) { + const startIndex = change.rangeOffset; + const oldEndIndex = change.rangeOffset + change.rangeLength; + const newEndIndex = change.rangeOffset + change.text.length; + const startPosition = document2.positionAt(startIndex); + const oldEndPosition = document2.positionAt(oldEndIndex); + const newEndPosition = document2.positionAt(newEndIndex); + const startPoint = asPoint(startPosition); + const oldEndPoint = asPoint(oldEndPosition); + const newEndPoint = asPoint(newEndPosition); + tree.edit({ + startIndex, + oldEndIndex, + newEndIndex, + startPosition: startPoint, + oldEndPosition: oldEndPoint, + newEndPosition: newEndPoint + }); + } + const updatedTree = parser2.parse(document2.getText(), tree); + parseTreesPerFile.set(cacheKey, updatedTree); +} +function asPoint(position) { + return { row: position.line, column: position.character }; +} +function parseAllVisibleDocuments() { + for (const editor of window2.visibleTextEditors) { + void parseDocument(editor.document); + } +} + +// ../vscode/src/tree-sitter/queries/go.ts +var import_dedent = __toESM(require_dedent()); +var goQueries = { + ["go" /* Go */]: { + singlelineTriggers: import_dedent.default` + (struct_type (field_declaration_list ("{") @block_start)) @trigger + (interface_type ("{") @block_start) @trigger + `, + intents: "", + documentableNodes: "" + } +}; + +// ../vscode/src/tree-sitter/queries/javascript.ts +var import_dedent2 = __toESM(require_dedent()); +var JS_INTENTS_QUERY = import_dedent2.default` + ; Cursor dependent intents + ;-------------------------------- + + (function_declaration + name: (identifier) @function.name! + parameters: (formal_parameters ("(") @function.parameters.cursor) @function.parameters + body: (statement_block ("{") @function.body.cursor) @function.body) + + (function + name: (identifier) @function.name! + parameters: (formal_parameters ("(") @function.parameters.cursor) @function.parameters + body: (statement_block ("{") @function.body.cursor) @function.body) + + (arrow_function + parameters: (formal_parameters ("(") @function.parameters.cursor) @function.parameters + body: (statement_block ("{") @function.body.cursor) @function.body) + + (class_declaration + name: (_) @class.name! + body: (class_body ("{") @class.body.cursor) @class.body) + + (arguments ("(") @arguments.cursor) @arguments + + ; Atomic intents + ;-------------------------------- + + (comment) @comment! + (import_statement + source: (string) @import.source!) + + (pair + value: [ + (string (_)*) + (template_string) + (number) + (identifier) + (true) + (false) + (null) + (undefined) + ] @pair.value!) + + (arguments + [ + (string (_)*) + (template_string) + (number) + (identifier) + (true) + (false) + (null) + (undefined) + ] @argument!) + + (formal_parameters) @parameters! + (formal_parameters (_) @parameter!) + + (return_statement) @return_statement! + (return_statement + [ + (string (_)*) + (template_string) + (number) + (identifier) + (true) + (false) + (null) + (undefined) + ] @return_statement.value!) +`; +var JSX_INTENTS_QUERY = import_dedent2.default` + ${JS_INTENTS_QUERY} + + (jsx_attribute (_) @jsx_attribute.value!) +`; +var TS_INTENTS_QUERY = import_dedent2.default` + ${JS_INTENTS_QUERY} + + ; Cursor dependent intents + ;-------------------------------- + + (function_signature + name: (identifier) @function.name! + parameters: (formal_parameters ("(") @function.parameters.cursor) @function.parameters) + + (interface_declaration + name: (type_identifier) @type_declaration.name! + body: (object_type ("{") @type_declaration.body.cursor) @type_declaration.body) + + (type_alias_declaration + name: (type_identifier) @type_declaration.name! + value: (object_type ("{") @type_declaration.body.cursor) @type_declaration.body) +`; +var TSX_INTENTS_QUERY = import_dedent2.default` + ${TS_INTENTS_QUERY} + + (jsx_attribute (_) @jsx_attribute.value!) +`; +var TS_SINGLELINE_TRIGGERS_QUERY = import_dedent2.default` + (interface_declaration (object_type ("{") @block_start)) @trigger + (type_alias_declaration (object_type ("{") @block_start)) @trigger +`; +var JS_DOCUMENTABLE_NODES_QUERY = import_dedent2.default` + ; Identifiers + ;-------------------------------- + (_ + name: (identifier) @identifier) + + ; Property Identifiers + ;-------------------------------- + (method_definition + name: (property_identifier) @identifier.property) + (pair + key: (property_identifier) @identifier.property) + + ; Exports + ;-------------------------------- + ((export_statement) @export) +`; +var TS_DOCUMENTABLE_NODES_QUERY = import_dedent2.default` + ${JS_DOCUMENTABLE_NODES_QUERY} + + ; Type Identifiers + ;-------------------------------- + (_ + name: (type_identifier) @identifier) + + ; Type Signatures + ;-------------------------------- + ((call_signature) @signature) + (interface_declaration + (object_type + (property_signature + name: (property_identifier) @signature.property))) + (interface_declaration + (object_type + (method_signature + name: (property_identifier) @signature.property))) + (type_alias_declaration + (object_type + (property_signature + name: (property_identifier) @signature.property))) +`; +var javascriptQueries = { + ["javascript" /* JavaScript */]: { + singlelineTriggers: "", + intents: JS_INTENTS_QUERY, + documentableNodes: JS_DOCUMENTABLE_NODES_QUERY + }, + ["javascriptreact" /* JSX */]: { + singlelineTriggers: "", + intents: JSX_INTENTS_QUERY, + documentableNodes: JS_DOCUMENTABLE_NODES_QUERY + }, + ["typescript" /* TypeScript */]: { + singlelineTriggers: TS_SINGLELINE_TRIGGERS_QUERY, + intents: TS_INTENTS_QUERY, + documentableNodes: TS_DOCUMENTABLE_NODES_QUERY + }, + ["typescriptreact" /* TSX */]: { + singlelineTriggers: TS_SINGLELINE_TRIGGERS_QUERY, + intents: TSX_INTENTS_QUERY, + documentableNodes: TS_DOCUMENTABLE_NODES_QUERY + } +}; + +// ../vscode/src/tree-sitter/queries/python.ts +var import_dedent3 = __toESM(require_dedent()); +var pythonQueries = { + ["python" /* Python */]: { + singlelineTriggers: "", + intents: import_dedent3.default` + ; Cursor dependent intents + ;-------------------------------- + + (function_definition + name: (_) @function.name! + parameters: (_ ("(") @function.parameters.cursor) @function.parameters (":") @function.body.cursor + body: (block) @function.body) + + (lambda + parameters: (_) @function.parameters (":") @function.body.cursor + body: (_) @function.body) + + (class_definition + name: (_) @class.name (":") @class.body.cursor + body: (_) @class.body) + + (argument_list ("(") @arguments.cursor) @arguments + + + ; Atomic intents + ;-------------------------------- + + (import_from_statement + module_name: (_) @import.source! + name: (_) @import.name!) + + (comment) @comment! + (argument_list (_) @argument!) + + (parameters) @parameters! + (lambda_parameters) @parameters! + (parameters (_) @parameter!) + (lambda_parameters (_)) @parameter! + + (return_statement) @return_statement! + (return_statement (_) @return_statement.value!) + `, + documentableNodes: "" + } +}; + +// ../vscode/src/tree-sitter/queries.ts +var intentPriority = [ + "function.name", + "function.parameters", + "function.body", + "type_declaration.name", + "type_declaration.body", + "arguments", + "import.source", + "comment", + "pair.value", + "argument", + "parameter", + "parameters", + "jsx_attribute.value", + "return_statement.value", + "return_statement", + "string" +]; +var languages2 = { + ...javascriptQueries, + ...goQueries, + ...pythonQueries +}; + +// ../vscode/src/tree-sitter/query-sdk.ts +var QUERIES_LOCAL_CACHE = {}; +function initQueries(language, languageId, parser2) { + const cachedQueries = QUERIES_LOCAL_CACHE[languageId]; + if (cachedQueries) { + return; + } + const languageQueries = languages2[languageId]; + if (languageQueries === void 0) { + return; + } + const queryEntries = Object.entries(languageQueries).map(([name, raw]) => { + return [ + name, + { + raw, + compiled: language.query(raw) + } + ]; + }); + const queries = Object.fromEntries(queryEntries); + QUERIES_LOCAL_CACHE[languageId] = { + ...queries, + ...getLanguageSpecificQueryWrappers(queries, parser2) + }; +} +function getDocumentQuerySDK(language) { + const supportedLanguage = getParseLanguage(language); + if (!supportedLanguage) { + return null; + } + const parser2 = getParser(supportedLanguage); + const queries = QUERIES_LOCAL_CACHE[supportedLanguage]; + if (!parser2 || !queries) { + return null; + } + return { + parser: parser2, + queries, + language: supportedLanguage + }; +} +function getLanguageSpecificQueryWrappers(queries, _parser) { + return { + getSinglelineTrigger: (root, start4, end) => { + const captures = queries.singlelineTriggers.compiled.captures(root, start4, end); + const { trigger, block: block2 } = getTriggerNodeWithBlockStaringAtPoint(captures, start4); + if (!trigger || !block2 || !isBlockNodeEmpty(block2)) { + return []; + } + return [{ node: trigger, name: "trigger" }]; + }, + getCompletionIntent: (root, start4, end) => { + const captures = queries.intents.compiled.captures(root, start4, end); + const { intentCapture } = getIntentFromCaptures(captures, start4); + if (!intentCapture) { + return []; + } + return [{ node: intentCapture.node, name: intentCapture.name }]; + }, + getDocumentableNode: (root, start4, end) => { + const captures = queries.documentableNodes.compiled.captures(root, start4, end); + const cursorCapture = (0, import_lodash5.findLast)(captures, ({ node }) => { + return node.startPosition.row === start4.row && (node.startPosition.column <= start4.column || node.startPosition.row < start4.row) && (start4.column <= node.endPosition.column || start4.row < node.endPosition.row); + }); + if (!cursorCapture) { + return []; + } + return [ + { + node: cursorCapture.node, + name: cursorCapture.name === "export" ? "documentableExport" : "documentableNode" + } + ]; + } + }; +} +function getIntentFromCaptures(captures, cursor) { + const emptyResult = { + cursorCapture: void 0, + intentCapture: void 0 + }; + if (!captures.length) { + return emptyResult; + } + const [cursorCapture] = sortByIntentPriority( + captures.filter((capture) => { + const { name, node } = capture; + const matchesCursorPosition = node.startPosition.column === cursor.column && node.startPosition.row === cursor.row; + return name.endsWith(".cursor") && matchesCursorPosition; + }) + ); + const intentCapture = (0, import_lodash5.findLast)(captures, (capture) => { + return capture.name === withoutCursorSuffix(cursorCapture?.name); + }); + if (cursorCapture && intentCapture) { + return { cursorCapture, intentCapture }; + } + const atomicCapture = (0, import_lodash5.findLast)(captures, (capture) => { + const enclosesCursor = (capture.node.startPosition.column <= cursor.column || capture.node.startPosition.row < cursor.row) && (cursor.column <= capture.node.endPosition.column || cursor.row < capture.node.endPosition.row); + return capture.name.endsWith("!") && enclosesCursor; + }); + if (atomicCapture) { + return { + intentCapture: { + ...atomicCapture, + // Remove `!` from the end of the capture name. + name: atomicCapture.name.slice(0, -1) + } + }; + } + return emptyResult; +} +function sortByIntentPriority(captures) { + return captures.sort((a, b) => { + return intentPriority.indexOf(withoutCursorSuffix(a.name)) - intentPriority.indexOf(withoutCursorSuffix(b.name)); + }); +} +function withoutCursorSuffix(name) { + return name?.split(".").slice(0, -1).join("."); +} +function getTriggerNodeWithBlockStaringAtPoint(captures, point) { + const emptyResult = { + trigger: void 0, + block: void 0 + }; + if (!captures.length) { + return emptyResult; + } + const blockStart = getNodeIfMatchesPoint({ + captures, + name: "block_start", + // Taking the last result to get the most nested node. + // See https://github.com/tree-sitter/tree-sitter/discussions/2067 + index: -1, + point + }); + const trigger = getCapturedNodeAt({ + captures, + name: "trigger", + index: -1 + }); + const block2 = blockStart?.parent; + if (!blockStart || !block2 || !trigger) { + return emptyResult; + } + if (trigger.endIndex !== block2?.endIndex) { + return emptyResult; + } + return { trigger, block: block2 }; +} +function getNodeIfMatchesPoint(params) { + const { captures, name, index, point } = params; + const node = getCapturedNodeAt({ captures, name, index }); + if (node && node.startPosition.column === point.column && node.startPosition.row === point.row) { + return node; + } + return null; +} +function getCapturedNodeAt(params) { + const { captures, name, index } = params; + return captures.filter((capture) => capture.name === name).at(index)?.node || null; +} +function isBlockNodeEmpty(node) { + const isBlockEmpty = node?.children.filter((c) => c.isNamed()).length === 0; + const isMissingBlockEnd = Boolean(node?.lastChild?.isMissing()); + return isBlockEmpty || isMissingBlockEnd; +} +function positionToQueryPoints(position) { + const startPoint = { + row: position.line, + column: position.character + }; + const endPoint = { + row: position.line, + // Querying around one character after trigger position. + column: position.character + 1 + }; + return { startPoint, endPoint }; +} +function execQueryWrapper(document2, position, queryWrapper) { + const parseTreeCache = getCachedParseTreeForDocument(document2); + const documentQuerySDK = getDocumentQuerySDK(document2.languageId); + const { startPoint, endPoint } = positionToQueryPoints(position); + if (documentQuerySDK && parseTreeCache) { + return documentQuerySDK.queries[queryWrapper](parseTreeCache.tree.rootNode, startPoint, endPoint); + } + return []; +} + +// ../vscode/src/completions/doc-context-getters.ts +function getCurrentLinePrefixWithoutInjectedPrefix(docContext) { + const { currentLinePrefix, injectedPrefix } = docContext; + return injectedPrefix ? currentLinePrefix.slice(0, -injectedPrefix.length) : currentLinePrefix; +} +function getContextRange(document2, params) { + const { prefix, suffix, position } = params; + const offset = document2.offsetAt(position); + return new Range(document2.positionAt(offset - prefix.length), document2.positionAt(offset + suffix.length)); +} +function getCompletionIntent(params) { + const { document: document2, position, prefix } = params; + const blockStart = getLanguageConfig(document2.languageId)?.blockStart; + const isBlockStartActive = blockStart && prefix.trimEnd().endsWith(blockStart); + const positionBeforeCursor = isBlockStartActive ? document2.positionAt(prefix.lastIndexOf(blockStart)) : { + line: position.line, + character: Math.max(0, position.character - 1) + }; + const [completionIntent] = execQueryWrapper(document2, positionBeforeCursor, "getCompletionIntent"); + return completionIntent?.name; +} + +// ../vscode/src/completions/context/retrievers/bfg/bfg-retriever.ts +var bfgIndexingPromise = Promise.resolve(void 0); +var BfgRetriever = class { + constructor(context2) { + this.context = context2; + this.awaitIndexing = workspace.getConfiguration().get("cody.experimental.cody-engine.await-indexing", false); + this.loadedBFG = this.loadBFG(); + this.loadedBFG.then( + () => { + }, + (error) => { + (0, sentry_exports.captureException)(error); + this.didFailLoading = true; + logDebug("CodyEngine", "failed to initialize", error); + } + ); + bfgIndexingPromise = this.indexOpenGitRepositories(); + } + identifier = "bfg"; + loadedBFG; + awaitIndexing; + didFailLoading = false; + // Keys are repository URIs, values are revisions (commit hashes). + indexedRepositoryRevisions = /* @__PURE__ */ new Map(); + async indexOpenGitRepositories() { + const git = gitAPI(); + if (!git) { + return; + } + for (const repository of git.repositories) { + await this.onDidChangeRepository(repository); + } + this.context.subscriptions.push(git.onDidOpenRepository((repository) => this.onDidChangeRepository(repository))); + } + async onDidChangeRepository(repository) { + const uri = repository.rootUri.toString(); + const head = repository?.state?.HEAD?.commit; + if (head !== this.indexedRepositoryRevisions.get(uri)) { + this.indexedRepositoryRevisions.set(uri, head ?? ""); + await this.indexRepository(repository); + } + } + async indexRepository(repository) { + const bfg = await this.loadedBFG; + const indexingStartTime = Date.now(); + await bfg.request("bfg/gitRevision/didChange", { gitDirectoryUri: repository.rootUri.toString() }); + logDebug("CodyEngine", `indexing time ${Date.now() - indexingStartTime}ms`); + } + async retrieve({ + document: document2, + position, + docContext, + hints + }) { + await this.loadedBFG; + if (this.didFailLoading) { + return []; + } + const bfg = await this.loadedBFG; + if (!bfg.isAlive()) { + logDebug("CodyEngine", "not alive"); + return []; + } + if (this.awaitIndexing) { + await bfgIndexingPromise; + } + try { + const responses = await bfg.request("bfg/contextAtPosition", { + uri: document2.uri.toString(), + content: (await workspace.openTextDocument(document2.uri)).getText(), + position: { line: position.line, character: position.character }, + maxChars: hints.maxChars, + // ignored by BFG server for now + contextRange: getContextRange(document2, docContext) + }); + if (typeof responses !== "object") { + return []; + } + return [...responses?.symbols || [], ...responses?.files || []]; + } catch (error) { + logDebug("CodyEngine:error", `${error}`); + return []; + } + } + isSupportedForLanguageId(languageId) { + switch (languageId) { + case "typescript": + case "typescriptreact": + case "javascript": + case "javascriptreact": + case "java": + case "go": + case "dart": + case "python": + case "zig": + return true; + default: + return false; + } + } + dispose() { + if (this.didFailLoading) { + return; + } + this.loadedBFG.then( + (bfg) => bfg.request("bfg/shutdown", null), + () => { + } + ); + } + // We lazily load BFG to allow the Cody extension to finish activation as + // quickly as possible. + loadBFG() { + return new Promise((resolve8, reject) => { + logDebug("CodyEngine", "loading bfg"); + this.doLoadBFG(reject).then( + (bfg) => resolve8(bfg), + (error) => { + (0, sentry_exports.captureException)(error); + reject(error); + } + ); + }); + } + async doLoadBFG(reject) { + const bfg = await spawnBfg(this.context, reject); + await bfg.request("bfg/initialize", { clientName: "vscode" }); + return bfg; + } +}; + +// ../vscode/src/dev/helpers.ts +function onActivationDevelopmentHelpers() { + const settings = workspace.getConfiguration("cody.dev"); + if (settings.get("openAutocompleteTraceView")) { + void commands.executeCommand("cody.autocomplete.openTraceView"); + } + if (settings.get("openOutputConsole")) { + outputChannel.show(); + } +} + +// ../lib/shared/src/codebase-context/rerank.ts +var import_x2js = __toESM(require_x2js()); +var MockReranker = class { + constructor(rerank_) { + this.rerank_ = rerank_; + } + rerank(userQuery, results) { + return this.rerank_(userQuery, results); + } +}; + +// ../vscode/src/test-support.ts +var Rendezvous = class { + resolve; + promise; + constructor() { + this.resolve = () => { + }; + this.promise = new Promise((resolve8) => { + this.resolve = resolve8; + }); + } + set(value) { + this.resolve(value); + this.promise = Promise.resolve(value); + } + get() { + return this.promise; + } +}; +var TestSupport = class { + static instance; + messageProvider = new Rendezvous(); + fixupController = new Rendezvous(); + reranker; + getReranker() { + if (!this.reranker) { + return new MockReranker( + (_, results) => Promise.resolve(results) + ); + } + return this.reranker; + } + async chatTranscript() { + return (await this.messageProvider.get()).transcriptForTesting(this); + } + async fixupTasks() { + return (await this.messageProvider.get()).fixupTasksForTesting(this); + } +}; + +// ../vscode/src/extension-api.ts +var ExtensionApi = class { + // Hooks for extension test support. This is only set if the + // environment contains CODY_TESTING=true . This is only for + // testing and the API will change. + testing = void 0; + constructor() { + if (process.env.CODY_TESTING === "true") { + console.warn("Setting up testing hooks"); + this.testing = new TestSupport(); + TestSupport.instance = this.testing; + } + } +}; + +// ../vscode/src/chat/chat-view/ChatManager.ts +var import_lodash7 = __toESM(require_lodash()); + +// ../vscode/src/chat/protocol.ts +var DOTCOM_CALLBACK_URL = new URL("https://sourcegraph.com/user/settings/tokens/new/callback"); +var CODY_DOC_URL = new URL("https://docs.sourcegraph.com/cody"); +var DISCORD_URL = new URL("https://discord.gg/s2qDtYGnAE"); +var CODY_FEEDBACK_URL = new URL( + "https://github.com/sourcegraph/cody/discussions/new?category=product-feedback&labels=vscode" +); +var APP_LANDING_URL = new URL("https://about.sourcegraph.com/app"); +var APP_CALLBACK_URL = new URL("sourcegraph://user/settings/tokens/new/callback"); +var APP_REPOSITORIES_URL = new URL("sourcegraph://users/admin/app-settings/local-repositories"); +var ACCOUNT_UPGRADE_URL = new URL("https://sourcegraph.com/cody/subscription"); +var ACCOUNT_USAGE_URL = new URL("https://sourcegraph.com/cody/manage"); +var defaultAuthStatus = { + endpoint: "", + isLoggedIn: false, + showInvalidAccessTokenError: false, + authenticated: false, + hasVerifiedEmail: false, + requiresVerifiedEmail: false, + siteHasCodyEnabled: false, + siteVersion: "", + userCanUpgrade: false +}; +var unauthenticatedStatus = { + endpoint: "", + isLoggedIn: false, + showInvalidAccessTokenError: true, + authenticated: false, + hasVerifiedEmail: false, + requiresVerifiedEmail: false, + siteHasCodyEnabled: false, + siteVersion: "", + userCanUpgrade: false +}; +var networkErrorAuthStatus = { + showInvalidAccessTokenError: false, + authenticated: false, + isLoggedIn: false, + hasVerifiedEmail: false, + showNetworkError: true, + requiresVerifiedEmail: false, + siteHasCodyEnabled: false, + siteVersion: "", + userCanUpgrade: false +}; +function isLoggedIn(authStatus) { + if (!authStatus.siteHasCodyEnabled) { + return false; + } + return authStatus.authenticated && (authStatus.requiresVerifiedEmail ? authStatus.hasVerifiedEmail : true); +} +function isOsSupportedByApp(os8, arch2) { + if (!os8 || !arch2) { + return false; + } + return os8 === "darwin" || os8 === "linux"; +} +function archConvertor(arch2) { + switch (arch2) { + case "arm64": + return "aarch64"; + case "x64": + return "x86_64"; + } + return arch2; +} +function getChatModelsForWebview(endpoint) { + if (endpoint && isDotCom(endpoint)) { + return defaultChatModels; + } + return []; +} +var defaultChatModels = [ + { title: "Claude 2.0", model: "anthropic/claude-2.0", provider: "Anthropic", default: true }, + { title: "Claude 2.1 Preview", model: "anthropic/claude-2.1", provider: "Anthropic", default: false }, + { title: "Claude Instant", model: "anthropic/claude-instant-1.2", provider: "Anthropic", default: false }, + { title: "ChatGPT 3.5 Turbo", model: "openai/gpt-3.5-turbo", provider: "OpenAI", default: false }, + { title: "ChatGPT 4 Turbo Preview", model: "openai/gpt-4-1106-preview", provider: "OpenAI", default: false } +]; + +// ../vscode/src/fetch.ts +var import_isomorphic_fetch2 = __toESM(require_fetch_npm_node()); +var agent2 = { current: void 0 }; +function fetch3(input, init5) { + if (customUserAgent) { + init5 = init5 ?? {}; + const headers = new Headers(init5?.headers); + addCustomUserAgent(headers); + init5.headers = headers; + } + return (0, import_isomorphic_fetch2.default)(input, { + ...init5, + agent: agent2.current + }); +} + +// ../vscode/src/services/LocalAppFsPaths.ts +var LOCAL_APP_SETTINGS_DIR = /* @__PURE__ */ new Map([ + ["darwin", "~/Library/Application Support/com.sourcegraph.cody/"], + ["linux", "~/.local/share/com.sourcegraph.cody/"] +]); +var LOCAL_APP_LOCATIONS = { + darwin: [ + { + dir: "/Applications/", + file: "Cody.app" + }, + { + dir: "~/Library/Application Support/com.sourcegraph.cody/", + file: "site.config.json" + }, + { + dir: "~/Library/Application Support/com.sourcegraph.cody/", + file: "app.json", + hasToken: true + } + ], + linux: [ + { + dir: "~/.local/share/com.sourcegraph.cody/", + file: "app.json", + hasToken: true + } + ] +}; + +// ../vscode/src/services/LocalAppDetector.ts +var LocalAppDetector = class { + localEnv; + // Check if the platform is supported and the user has a home directory + isSupported = false; + localAppMarkers; + appFsPaths = []; + tokenFsPath = null; + _watchers = []; + onChange; + constructor(options2) { + this.onChange = options2.onChange; + this.localEnv = { ...envInit }; + this.localAppMarkers = LOCAL_APP_LOCATIONS[this.localEnv.os]; + this.isSupported = isOsSupportedByApp(this.localEnv.os, this.localEnv.arch) && this.localEnv.homeDir !== void 0; + } + async getProcessInfo(isLoggedIn2 = false) { + if (isLoggedIn2 && this._watchers.length > 0) { + this.dispose(); + } + await this.fetchServer(); + return this.localEnv; + } + async init() { + this.dispose(); + this.localEnv = { ...envInit }; + logDebug("LocalAppDetector", "initializing"); + const homeDir = this.localEnv.homeDir; + if (!this.isSupported || !homeDir) { + logError("LocalAppDetector:init:failed", "osNotSupported"); + return; + } + const markers = this.localAppMarkers; + for (const marker of markers) { + const dirPath = expandHomeDir(marker.dir, homeDir); + const fileUri = constructFileUri(marker.file, marker.dir); + if (!fileUri) { + return; + } + const watchPattern = new RelativePattern(fileUri, "*"); + const watcher = workspace.createFileSystemWatcher(watchPattern); + watcher.onDidChange(() => this.fetchApp()); + this._watchers.push(watcher); + this.appFsPaths.push(dirPath + marker.file); + if (marker.hasToken) { + this.tokenFsPath = Uri.file(dirPath + marker.file); + } + } + await this.fetchApp(); + } + // Check if App is installed + async fetchApp() { + if (this.localEnv.isAppInstalled || !this.appFsPaths) { + return; + } + if (await Promise.any(this.appFsPaths.map((file) => pathExists(Uri.file(file))))) { + this.localEnv.isAppInstalled = true; + this.appFsPaths = []; + await this.found("app"); + await this.fetchToken(); + return; + } + } + // Get token from app.json if it exists + async fetchToken() { + if (!this.tokenFsPath || this.localEnv.hasAppJson) { + return; + } + await this.tryFetchAppJson(this.tokenFsPath); + } + // Check if `uri` has the an app token. This skips the checks for an + // existing token and will forcibly load new tokens. + // + // This is a stop-gap so LocalAppWatcher/simplified onboarding can force + // LocalAppDetector and downstream to pick up an app token even after the + // user has logged in to dotcom. + async tryFetchAppJson(uri) { + const appJson = await loadAppJson(uri); + if (!appJson) { + return; + } + const token = appJson.token; + if (token?.length) { + this.localEnv.hasAppJson = true; + this.tokenFsPath = null; + await this.found("token"); + await secretStorage.storeToken(LOCAL_APP_URL.href, token); + await this.fetchServer(); + } + } + // Check if App is running + async fetchServer() { + if (this.localEnv.isAppRunning) { + return; + } + try { + const response = await fetch3(`${LOCAL_APP_URL.href}__version`); + if (response.status === 200) { + this.localEnv.isAppRunning = true; + await this.found("server"); + } + if (!this.localEnv.hasAppJson) { + await this.fetchToken(); + } + } catch { + return; + } + } + // Notify the caller that the app has been found + // NOTE: Call this function only when the app is found + async found(type2) { + this.localEnv.isAppInstalled = true; + await this.onChange(type2); + logDebug("LocalAppDetector:found", type2); + } + // We can dispose the file watcher when app is found or when user has logged in + dispose() { + for (const watcher of this._watchers) { + watcher.dispose(); + } + this._watchers = []; + this.appFsPaths = []; + this.tokenFsPath = null; + } +}; +async function pathExists(uri) { + try { + await workspace.fs.stat(uri); + return true; + } catch { + return false; + } +} +function expandHomeDir(path30, homeDir) { + if (homeDir && path30.startsWith("~/")) { + return path30.replace("~", homeDir); + } + return path30; +} +async function loadAppJson(uri) { + try { + const data = await workspace.fs.readFile(uri); + return JSON.parse(data.toString()); + } catch { + return null; + } +} +var envInit = { + os: process.platform, + arch: process.arch, + homeDir: process.env.HOME, + uriScheme: env2.uriScheme, + appName: env2.appName, + extensionVersion: version, + uiKindIsWeb: env2.uiKind === 2 /* Web */, + isAppInstalled: false, + isAppRunning: false, + hasAppJson: false +}; + +// ../vscode/src/services/treeViewItems.ts +function getCodyTreeItems(type2) { + switch (type2) { + case "command": + return commandsItems; + case "support": + return supportItems; + default: + return []; + } +} +function createCodyChatTreeItems(userHistory) { + const chatTreeItems = []; + const chatHistoryEntries = [...Object.entries(userHistory.chat)]; + chatHistoryEntries.forEach(([id, entry]) => { + const lastHumanMessage = entry?.interactions?.findLast((interaction) => interaction?.humanMessage); + if (lastHumanMessage?.humanMessage.displayText && lastHumanMessage?.humanMessage.text) { + let title = lastHumanMessage.humanMessage.displayText.split("\n")[0]; + if (title.startsWith("/")) { + title = title.split(" ")[0]; + } + chatTreeItems.push({ + id, + title, + icon: "comment-discussion", + command: { command: "cody.chat.panel.restore", args: [id, title] } + }); + } + }); + return chatTreeItems.reverse(); +} +var supportItems = [ + { + title: "Upgrade", + description: "Upgrade to Pro", + icon: "zap", + command: { command: "vscode.open", args: [ACCOUNT_UPGRADE_URL.href] }, + requireUpgradeAvailable: true, + requireFeature: "cody-pro" /* CodyPro */ + }, + { + title: "Usage", + icon: "pulse", + command: { command: "vscode.open", args: [ACCOUNT_USAGE_URL.href] }, + requireFeature: "cody-pro" /* CodyPro */ + }, + { + title: "Settings", + icon: "settings-gear", + command: { command: "cody.status-bar.interacted" } + }, + { + title: "Keyboard Shortcuts", + icon: "keyboard", + command: { command: "workbench.action.openGlobalKeybindings", args: ["@ext:sourcegraph.cody-ai"] } + }, + { + title: "Release Notes", + description: `v${envInit.extensionVersion}`, + icon: "github", + command: { + command: "vscode.open", + args: [`https://github.com/sourcegraph/cody/releases/tag/vscode-v${envInit.extensionVersion}`] + } + }, + { + title: "Documentation", + icon: "book", + command: { command: "vscode.open", args: [CODY_DOC_URL.href] } + }, + { + title: "Feedback", + icon: "feedback", + command: { command: "vscode.open", args: [CODY_FEEDBACK_URL.href] } + }, + { + title: "Discord", + icon: "organization", + command: { command: "vscode.open", args: [DISCORD_URL.href] } + }, + { + title: "Sign Out", + icon: "log-out", + command: { command: "cody.auth.signout" } + } +]; +var commandsItems = [ + { + title: "Chat", + icon: "comment", + description: "Ask Cody a question", + command: { command: "cody.chat.panel.new" } + }, + { + title: "Document", + icon: "book", + description: "Add code documentation", + command: { command: "cody.command.document-code" } + }, + { + title: "Edit", + icon: "wand", + command: { command: "cody.command.edit-code" }, + description: "Edit code with instructions" + }, + { + title: "Explain", + icon: "file-binary", + command: { command: "cody.command.explain-code" }, + description: "Explain code" + }, + { + title: "Smell", + icon: "symbol-keyword", + command: { command: "cody.command.smell-code" }, + description: "Identify code smells" + }, + { + title: "Test", + icon: "package", + command: { command: "cody.command.generate-tests" }, + description: "Generate unit tests" + }, + { + title: "Custom", + icon: "tools", + command: { command: "cody.action.commands.custom.menu" }, + description: "Custom commands" + } +]; + +// ../vscode/src/services/TreeViewProvider.ts +var TreeViewProvider = class { + constructor(type2, featureFlagProvider2) { + this.type = type2; + this.featureFlagProvider = featureFlagProvider2; + this.treeItems = getCodyTreeItems(type2); + void this.refresh(); + } + treeNodes = []; + _disposables = []; + _onDidChangeTreeData = new EventEmitter(); + onDidChangeTreeData = this._onDidChangeTreeData.event; + authStatus; + treeItems; + /** + * Gets the parent tree item for the given tree item. + * @param treeItem - The tree item to get the parent for. + * @returns The parent tree item, or undefined if the given item is a root item. + */ + getParent(treeItem) { + if (!treeItem?.contextValue) { + return void 0; + } + return void 0; + } + /** + * Updates the tree view with the provided tree items, filtering out any + * that do not meet the required criteria to show. + */ + async updateTree(treeItems) { + this.treeItems = treeItems; + return this.refresh(); + } + /** + * Refreshes the visible tree items, filtering out any + * that do not meet the required criteria to show. + */ + async refresh() { + const updatedTree = []; + this.treeNodes = updatedTree; + for (const item of this.treeItems) { + if (item.requireFeature && !await this.featureFlagProvider.evaluateFeatureFlag(item.requireFeature)) { + continue; + } + if (item.requireUpgradeAvailable && !(this.authStatus?.userCanUpgrade ?? false)) { + continue; + } + const treeItem = new TreeItem({ label: item.title }); + treeItem.id = item.id; + treeItem.iconPath = new ThemeIcon(item.icon); + treeItem.description = item.description; + treeItem.command = { command: item.command.command, title: item.title, arguments: item.command.args }; + updatedTree.push(treeItem); + } + if (this.type === "chat") { + void commands.executeCommand("setContext", "cody.hasChatHistory", this.treeNodes.length); + } + this._onDidChangeTreeData.fire(); + } + syncAuthStatus(authStatus) { + this.authStatus = authStatus; + void this.refresh(); + } + /** + * Get parents items first + * Then returns children items for each parent item + */ + getChildren() { + return [...this.treeNodes.values()]; + } + /** + * Get individual tree item + */ + getTreeItem(treeItem) { + return treeItem; + } + /** + * Get individual tree item by chatID + */ + getTreeItemByID(chatID) { + return this.treeNodes.find((node) => node.id === chatID); + } + /** + * Empty the tree view + */ + reset() { + void commands.executeCommand("setContext", "cody.hasChatHistory", false); + this.treeNodes = []; + void this.refresh(); + } + /** + * Dispose the disposables + */ + dispose() { + this.reset(); + for (const disposable of this._disposables) { + disposable.dispose(); + } + this._disposables = []; + } +}; + +// ../vscode/src/editor/utils/editor-context.ts +var import_path10 = require("path"); +var import_fuzzysort = __toESM(require_fuzzysort()); +var import_lodash6 = __toESM(require_lodash()); +var findWorkspaceFiles = async (cancellationToken) => { + const fileExcludesPattern = "**/{.,*.env,.git,out/,dist/,bin/,snap,node_modules,__pycache__}**"; + return workspace.findFiles("", fileExcludesPattern, void 0, cancellationToken); +}; +var throttledFindFiles = (0, import_lodash6.throttle)(findWorkspaceFiles, 1e4); +async function getFileContextFiles(query, maxResults, token) { + if (!query.trim()) { + return []; + } + token.onCancellationRequested(() => { + throttledFindFiles.cancel(); + }); + const uris = await throttledFindFiles(token); + if (!uris) { + return []; + } + const results = import_fuzzysort.default.go(query, uris, { + key: "fsPath", + limit: maxResults, + // We add a threshold for performance as per fuzzysort’s + // recommendations. Testing with sg/sg path strings, somewhere over 10k + // threshold is where it seems to return results that make no sense. VS + // Code’s own fuzzy finder seems to cap out much higher. To be safer and + // to account for longer paths from even deeper source trees we use + // 100k. We may want to revisit this number if we get reports of missing + // file results from very large repos. + threshold: -1e5 + }); + const sortedResults = [...results].sort((a, b) => { + return b.score - a.score || new Intl.Collator(void 0, { numeric: true }).compare(a.obj.fsPath, b.obj.fsPath); + }); + return sortedResults.map((result) => createContextFileFromUri(result.obj)); +} +async function getSymbolContextFiles(query, maxResults = 20) { + if (!query.trim()) { + return []; + } + const queryResults = await getWorkspaceSymbols(query); + const relevantQueryResults = queryResults?.filter( + (symbol) => (symbol.kind === 11 /* Function */ || symbol.kind === 5 /* Method */ || symbol.kind === 4 /* Class */ || symbol.kind === 10 /* Interface */ || symbol.kind === 9 /* Enum */ || symbol.kind === 22 /* Struct */ || symbol.kind === 13 /* Constant */ || // in TS an export const is considered a variable + symbol.kind === 12 /* Variable */) && // TODO(toolmantim): Remove once https://github.com/microsoft/vscode/pull/192798 is in use (test: do a symbol search and check no symbols exist from node_modules) + !symbol.location?.uri?.fsPath.includes("node_modules/") + ); + const results = import_fuzzysort.default.go(query, relevantQueryResults, { + key: "name", + limit: maxResults + }); + const symbols = results.map((result) => result.obj); + if (!symbols.length) { + return []; + } + const matches = []; + for (const symbol of symbols) { + const kind = symbol.kind === 4 /* Class */ ? "class" : "function"; + const source2 = "user"; + const contextFile = createContextFileFromUri( + symbol.location.uri, + source2, + "symbol", + symbol.location.range, + kind + ); + contextFile.fileName = symbol.name; + matches.push(contextFile); + } + return matches; +} +function getOpenTabsContextFile() { + const fsPaths = /* @__PURE__ */ new Set(); + return getOpenTabsUris().filter((uri) => { + if (!fsPaths.has(uri.fsPath)) { + fsPaths.add(uri.fsPath); + return true; + } + return false; + }).map((uri) => createContextFileFromUri(uri, "user", "file", void 0, void 0)); +} +function createContextFileFromUri(uri, source2 = "user", type2 = "file", selectionRange, kind) { + const range = selectionRange ? createContextFileRange2(selectionRange) : selectionRange; + return { + fileName: workspace.asRelativePath(uri.fsPath), + uri, + path: createContextFilePath(uri), + range, + type: type2, + source: source2, + kind + }; +} +function createContextFileRange2(selectionRange) { + return { + start: { + line: selectionRange.start.line, + character: selectionRange.start.character + }, + end: { + line: selectionRange.end.line, + character: selectionRange.end.character + } + }; +} +function createContextFilePath(uri) { + return { + basename: (0, import_path10.basename)(uri.fsPath), + dirname: (0, import_path10.dirname)(uri.fsPath), + relative: workspace.asRelativePath(uri.fsPath) + }; +} + +// ../vscode/src/services/telemetry-v2.ts +var import_telemetry4 = __toESM(require_dist()); +var telemetryRecorderProvider; +var telemetryRecorder = new NoOpTelemetryRecorderProvider().getRecorder([ + new import_telemetry4.CallbackTelemetryProcessor(() => { + throw new Error("telemetry-v2: recorder used before initialization"); + }) +]); +var legacyBackcompatLogEventMode = "connected-instance-only"; +var debugLogLabel = "telemetry-v2"; +function updateGlobalInstances(updatedProvider) { + telemetryRecorderProvider?.unsubscribe(); + telemetryRecorderProvider = updatedProvider; + telemetryRecorder = updatedProvider.getRecorder([ + // Log all events in debug for reference. + new import_telemetry4.CallbackTelemetryProcessor((event) => { + logDebug( + debugLogLabel, + `recordEvent${updatedProvider.noOp ? " (no-op)" : ""}: ${event.feature}/${event.action}: ${JSON.stringify({ + parameters: event.parameters + })}` + ); + }) + ]); +} +async function createOrUpdateTelemetryRecorderProvider(config, isExtensionModeDevOrTest) { + const extensionDetails = getExtensionDetails(config); + if (config.telemetryLevel === "off" || !extensionDetails.ide || extensionDetails.ideExtensionType !== "Cody") { + updateGlobalInstances(new NoOpTelemetryRecorderProvider()); + return; + } + const { anonymousUserID, created: newAnonymousUser } = await localStorage2.anonymousUserID(); + const initialize = telemetryRecorderProvider === void 0; + if (process.env.CODY_TESTING === "true") { + logDebug(debugLogLabel, "using mock exporter"); + updateGlobalInstances(new MockServerTelemetryRecorderProvider(extensionDetails, config, anonymousUserID)); + } else if (isExtensionModeDevOrTest) { + logDebug(debugLogLabel, "using no-op exports"); + updateGlobalInstances(new NoOpTelemetryRecorderProvider()); + } else { + updateGlobalInstances( + new TelemetryRecorderProvider(extensionDetails, config, anonymousUserID, legacyBackcompatLogEventMode) + ); + } + if (initialize) { + if (newAnonymousUser) { + telemetryRecorder.recordEvent("cody.extension", "installed"); + } else { + telemetryRecorder.recordEvent("cody.extension", "savedLogin"); + } + } +} + +// ../vscode/src/services/utils/code-count.ts +function countCode(code) { + const lineCount = code.split(/\r\n|\r|\n/).length; + const charCount = code.length; + return { lineCount, charCount }; +} +function matchCodeSnippets(copiedText, text) { + if (!text || !copiedText) { + return false; + } + const copiedTextNoSpace = copiedText.replaceAll(/\s/g, ""); + const textNoSpace = text?.replace(/\s/g, ""); + return copiedTextNoSpace === textNoSpace; +} + +// ../vscode/src/services/utils/codeblock-action-tracker.ts +var lastStoredCode = { code: "init", lineCount: 0, charCount: 0, eventName: "", source: "", requestID: "" }; +var insertInProgress = false; +var lastClipboardText = ""; +function setLastStoredCode(code, eventName, source2 = "chat", requestID = "") { + insertInProgress = !eventName.includes("copy"); + const { lineCount, charCount } = countCode(code); + const codeCount = { code, lineCount, charCount, eventName, source: source2, requestID }; + lastStoredCode = codeCount; + const op = eventName.includes("copy") ? "copy" : eventName.startsWith("insert") ? "insert" : "save"; + const args3 = { op, charCount, lineCount, source: source2, requestID }; + telemetryService.log(`CodyVSCodeExtension:${eventName}:clicked`, args3); + return codeCount; +} +async function setLastTextFromClipboard(clipboardText) { + lastClipboardText = clipboardText || await env2.clipboard.readText(); +} +async function handleCodeFromInsertAtCursor(text, meta) { + const selectionRange = getActiveEditor()?.selection; + const editor = getActiveEditor(); + if (!editor || !selectionRange) { + throw new Error("No editor or selection found to insert text"); + } + const edit2 = new WorkspaceEdit(); + edit2.insert(editor.document.uri, selectionRange.start, text + "\n"); + await workspace.applyEdit(edit2); + const op = "insert"; + const eventName = op + "Button"; + setLastStoredCode(text, eventName, meta?.source, meta?.requestID); +} +function handleCodeFromSaveToNewFile(text, meta) { + const eventName = "saveButton"; + setLastStoredCode(text, eventName, meta?.source, meta?.requestID); +} +async function handleCopiedCode(text, isButtonClickEvent, meta) { + const copiedCode = isButtonClickEvent ? text : await env2.clipboard.readText(); + const eventName = isButtonClickEvent ? "copyButton" : "keyDown:Copy"; + if (copiedCode) { + setLastStoredCode(copiedCode, eventName, meta?.source, meta?.requestID); + } +} +function isLastStoredCode(code) { + return code === lastStoredCode.code || code === lastClipboardText; +} +async function onTextDocumentChange(newCode) { + const { code, lineCount, charCount, source: source2, requestID } = lastStoredCode; + if (!code) { + return; + } + if (insertInProgress) { + insertInProgress = false; + return; + } + await setLastTextFromClipboard(); + if (matchCodeSnippets(code, lastClipboardText) && matchCodeSnippets(code, newCode)) { + const op = "paste"; + const eventType = source2.startsWith("inline") ? "inlineChat" : "keyDown"; + telemetryService.log(`CodyVSCodeExtension:${eventType}:Paste:clicked`, { + op, + lineCount, + charCount, + source: source2, + requestID + }); + } +} + +// ../vscode/src/services/utils/workspace-action.ts +var workspaceRootUri = workspace.workspaceFolders?.[0]?.uri; +var serverEndpoint = ""; +function workspaceActionsOnConfigChange(workspaceUri, endpoint) { + if (workspaceUri) { + workspaceRootUri = workspaceUri; + } + if (endpoint) { + serverEndpoint = endpoint; + } +} +async function openFilePath(filePath, currentViewColumn, range) { + void commands.executeCommand("vscode.open", filePath); + if (!workspaceRootUri) { + throw new Error("Failed to open file: missing workspace"); + } + try { + const workspaceFileUri = Uri.joinPath(workspaceRootUri, filePath); + const doc = await workspace.openTextDocument(workspaceFileUri); + const selection = range ? new Range(range.start.line, 0, range.end.line, 0) : range; + let viewColumn = -2 /* Beside */; + if (currentViewColumn) { + viewColumn = currentViewColumn - 1 || currentViewColumn + 1; + } + await window2.showTextDocument(doc, { selection, viewColumn, preserveFocus: false }); + } catch { + const sourcegraphSearchURL = new URL(`/search?q=context:global+file:${filePath}`, serverEndpoint).href; + return openExternalLinks(sourcegraphSearchURL); + } +} +async function openLocalFileWithRange(filePath, range) { + const doc = await workspace.openTextDocument(Uri.file(filePath)); + const selection = range ? new Range(range.startLine, range.startCharacter, range.endLine, range.endCharacter) : range; + await window2.showTextDocument(doc, { selection }); +} +async function openExternalLinks(uri) { + try { + await env2.openExternal(Uri.parse(uri)); + } catch (error) { + throw new Error(`Failed to open file: ${error}`); + } +} + +// ../lib/shared/src/chat/typewriter.ts +var MAX_DELAY_MS = 200; +var MIN_DELAY_MS = 5; +var MIN_CHAR_CHUNK_SIZE = 1; +var Typewriter = class { + /** + * Creates a Typewriter which will buffer incremental text and pass it + * through to `consumer` simulating a typing effect. + * + * @param consumer the consumer to pipe "typing" through to. + */ + constructor(consumer) { + this.consumer = consumer; + this.finished = new Promise((resolve8, reject) => { + this.resolveFinished = resolve8; + this.rejectFinished = reject; + }); + } + upstreamClosed = false; + resolveFinished = () => { + }; + rejectFinished = () => { + }; + /** + * Promise indicating the typewriter is done "typing". Resolved with the + * complete text when available; rejects if the typewriter was stopped + * prematurely. + */ + finished; + text = ""; + i = 0; + interval; + // IncrementalTextConsumer implementation. The "write" side of the pipe. + update(content) { + if (this.upstreamClosed) { + throw new Error("Typewriter already closed"); + } + if (content === this.text) { + return; + } + if (this.text.length >= content.length) { + throw new Error("Content must be supplied incrementally"); + } + this.text = content; + if (this.interval) { + clearInterval(this.interval); + this.interval = void 0; + } + const calculatedDelay = MAX_DELAY_MS / (this.text.length - this.i); + const dynamicDelay = Math.max(calculatedDelay, MIN_DELAY_MS); + const charChunkSize = calculatedDelay < MIN_DELAY_MS ? Math.round(MIN_DELAY_MS / calculatedDelay) : MIN_CHAR_CHUNK_SIZE; + this.interval = setInterval(() => { + this.i = Math.min(this.text.length, this.i + charChunkSize); + this.consumer.update(this.text.slice(0, this.i)); + if (this.i === this.text.length) { + clearInterval(this.interval); + this.interval = void 0; + if (this.upstreamClosed) { + this.consumer.close(); + this.resolveFinished(this.text); + } + } + }, dynamicDelay); + } + close() { + this.upstreamClosed = true; + } + /** Stop the typewriter, immediately emit any remaining text */ + stop() { + if (this.interval) { + clearInterval(this.interval); + this.interval = void 0; + } + if (this.i < this.text.length) { + this.consumer.update(this.text); + } + if (this.upstreamClosed) { + this.consumer.close(); + this.resolveFinished(this.text); + } else { + this.rejectFinished(new Error("Typewriter stopped")); + } + } +}; + +// ../node_modules/.pnpm/marked@4.0.16/node_modules/marked/lib/marked.esm.js +function getDefaults() { + return { + baseUrl: null, + breaks: false, + extensions: null, + gfm: true, + headerIds: true, + headerPrefix: "", + highlight: null, + langPrefix: "language-", + mangle: true, + pedantic: false, + renderer: null, + sanitize: false, + sanitizer: null, + silent: false, + smartLists: false, + smartypants: false, + tokenizer: null, + walkTokens: null, + xhtml: false + }; +} +var defaults3 = getDefaults(); +function changeDefaults(newDefaults) { + defaults3 = newDefaults; +} +var escapeTest = /[&<>"']/; +var escapeReplace = /[&<>"']/g; +var escapeTestNoEncode = /[<>"']|&(?!#?\w+;)/; +var escapeReplaceNoEncode = /[<>"']|&(?!#?\w+;)/g; +var escapeReplacements = { + "&": "&", + "<": "<", + ">": ">", + '"': """, + "'": "'" +}; +var getEscapeReplacement = (ch) => escapeReplacements[ch]; +function escape3(html, encode3) { + if (encode3) { + if (escapeTest.test(html)) { + return html.replace(escapeReplace, getEscapeReplacement); + } + } else { + if (escapeTestNoEncode.test(html)) { + return html.replace(escapeReplaceNoEncode, getEscapeReplacement); + } + } + return html; +} +var unescapeTest = /&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig; +function unescape3(html) { + return html.replace(unescapeTest, (_, n) => { + n = n.toLowerCase(); + if (n === "colon") + return ":"; + if (n.charAt(0) === "#") { + return n.charAt(1) === "x" ? String.fromCharCode(parseInt(n.substring(2), 16)) : String.fromCharCode(+n.substring(1)); + } + return ""; + }); +} +var caret = /(^|[^\[])\^/g; +function edit(regex, opt) { + regex = typeof regex === "string" ? regex : regex.source; + opt = opt || ""; + const obj2 = { + replace: (name, val) => { + val = val.source || val; + val = val.replace(caret, "$1"); + regex = regex.replace(name, val); + return obj2; + }, + getRegex: () => { + return new RegExp(regex, opt); + } + }; + return obj2; +} +var nonWordAndColonTest = /[^\w:]/g; +var originIndependentUrl = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i; +function cleanUrl(sanitize, base, href) { + if (sanitize) { + let prot; + try { + prot = decodeURIComponent(unescape3(href)).replace(nonWordAndColonTest, "").toLowerCase(); + } catch (e) { + return null; + } + if (prot.indexOf("javascript:") === 0 || prot.indexOf("vbscript:") === 0 || prot.indexOf("data:") === 0) { + return null; + } + } + if (base && !originIndependentUrl.test(href)) { + href = resolveUrl(base, href); + } + try { + href = encodeURI(href).replace(/%25/g, "%"); + } catch (e) { + return null; + } + return href; +} +var baseUrls = {}; +var justDomain = /^[^:]+:\/*[^/]*$/; +var protocol = /^([^:]+:)[\s\S]*$/; +var domain = /^([^:]+:\/*[^/]*)[\s\S]*$/; +function resolveUrl(base, href) { + if (!baseUrls[" " + base]) { + if (justDomain.test(base)) { + baseUrls[" " + base] = base + "/"; + } else { + baseUrls[" " + base] = rtrim(base, "/", true); + } + } + base = baseUrls[" " + base]; + const relativeBase = base.indexOf(":") === -1; + if (href.substring(0, 2) === "//") { + if (relativeBase) { + return href; + } + return base.replace(protocol, "$1") + href; + } else if (href.charAt(0) === "/") { + if (relativeBase) { + return href; + } + return base.replace(domain, "$1") + href; + } else { + return base + href; + } +} +var noopTest = { exec: function noopTest2() { +} }; +function merge2(obj2) { + let i = 1, target, key; + for (; i < arguments.length; i++) { + target = arguments[i]; + for (key in target) { + if (Object.prototype.hasOwnProperty.call(target, key)) { + obj2[key] = target[key]; + } + } + } + return obj2; +} +function splitCells(tableRow, count) { + const row = tableRow.replace(/\|/g, (match2, offset, str) => { + let escaped = false, curr = offset; + while (--curr >= 0 && str[curr] === "\\") + escaped = !escaped; + if (escaped) { + return "|"; + } else { + return " |"; + } + }), cells = row.split(/ \|/); + let i = 0; + if (!cells[0].trim()) { + cells.shift(); + } + if (cells.length > 0 && !cells[cells.length - 1].trim()) { + cells.pop(); + } + if (cells.length > count) { + cells.splice(count); + } else { + while (cells.length < count) + cells.push(""); + } + for (; i < cells.length; i++) { + cells[i] = cells[i].trim().replace(/\\\|/g, "|"); + } + return cells; +} +function rtrim(str, c, invert) { + const l2 = str.length; + if (l2 === 0) { + return ""; + } + let suffLen = 0; + while (suffLen < l2) { + const currChar = str.charAt(l2 - suffLen - 1); + if (currChar === c && !invert) { + suffLen++; + } else if (currChar !== c && invert) { + suffLen++; + } else { + break; + } + } + return str.slice(0, l2 - suffLen); +} +function findClosingBracket(str, b) { + if (str.indexOf(b[1]) === -1) { + return -1; + } + const l2 = str.length; + let level = 0, i = 0; + for (; i < l2; i++) { + if (str[i] === "\\") { + i++; + } else if (str[i] === b[0]) { + level++; + } else if (str[i] === b[1]) { + level--; + if (level < 0) { + return i; + } + } + } + return -1; +} +function checkSanitizeDeprecation(opt) { + if (opt && opt.sanitize && !opt.silent) { + console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options"); + } +} +function repeatString(pattern, count) { + if (count < 1) { + return ""; + } + let result = ""; + while (count > 1) { + if (count & 1) { + result += pattern; + } + count >>= 1; + pattern += pattern; + } + return result + pattern; +} +function outputLink(cap, link, raw, lexer2) { + const href = link.href; + const title = link.title ? escape3(link.title) : null; + const text = cap[1].replace(/\\([\[\]])/g, "$1"); + if (cap[0].charAt(0) !== "!") { + lexer2.state.inLink = true; + const token = { + type: "link", + raw, + href, + title, + text, + tokens: lexer2.inlineTokens(text, []) + }; + lexer2.state.inLink = false; + return token; + } + return { + type: "image", + raw, + href, + title, + text: escape3(text) + }; +} +function indentCodeCompensation(raw, text) { + const matchIndentToCode = raw.match(/^(\s+)(?:```)/); + if (matchIndentToCode === null) { + return text; + } + const indentToCode = matchIndentToCode[1]; + return text.split("\n").map((node) => { + const matchIndentInNode = node.match(/^\s+/); + if (matchIndentInNode === null) { + return node; + } + const [indentInNode] = matchIndentInNode; + if (indentInNode.length >= indentToCode.length) { + return node.slice(indentToCode.length); + } + return node; + }).join("\n"); +} +var Tokenizer = class { + constructor(options2) { + this.options = options2 || defaults3; + } + space(src) { + const cap = this.rules.block.newline.exec(src); + if (cap && cap[0].length > 0) { + return { + type: "space", + raw: cap[0] + }; + } + } + code(src) { + const cap = this.rules.block.code.exec(src); + if (cap) { + const text = cap[0].replace(/^ {1,4}/gm, ""); + return { + type: "code", + raw: cap[0], + codeBlockStyle: "indented", + text: !this.options.pedantic ? rtrim(text, "\n") : text + }; + } + } + fences(src) { + const cap = this.rules.block.fences.exec(src); + if (cap) { + const raw = cap[0]; + const text = indentCodeCompensation(raw, cap[3] || ""); + return { + type: "code", + raw, + lang: cap[2] ? cap[2].trim() : cap[2], + text + }; + } + } + heading(src) { + const cap = this.rules.block.heading.exec(src); + if (cap) { + let text = cap[2].trim(); + if (/#$/.test(text)) { + const trimmed = rtrim(text, "#"); + if (this.options.pedantic) { + text = trimmed.trim(); + } else if (!trimmed || / $/.test(trimmed)) { + text = trimmed.trim(); + } + } + const token = { + type: "heading", + raw: cap[0], + depth: cap[1].length, + text, + tokens: [] + }; + this.lexer.inline(token.text, token.tokens); + return token; + } + } + hr(src) { + const cap = this.rules.block.hr.exec(src); + if (cap) { + return { + type: "hr", + raw: cap[0] + }; + } + } + blockquote(src) { + const cap = this.rules.block.blockquote.exec(src); + if (cap) { + const text = cap[0].replace(/^ *>[ \t]?/gm, ""); + return { + type: "blockquote", + raw: cap[0], + tokens: this.lexer.blockTokens(text, []), + text + }; + } + } + list(src) { + let cap = this.rules.block.list.exec(src); + if (cap) { + let raw, istask, ischecked, indent, i, blankLine, endsWithBlankLine, line, nextLine, rawLine, itemContents, endEarly; + let bull = cap[1].trim(); + const isordered = bull.length > 1; + const list = { + type: "list", + raw: "", + ordered: isordered, + start: isordered ? +bull.slice(0, -1) : "", + loose: false, + items: [] + }; + bull = isordered ? `\\d{1,9}\\${bull.slice(-1)}` : `\\${bull}`; + if (this.options.pedantic) { + bull = isordered ? bull : "[*+-]"; + } + const itemRegex = new RegExp(`^( {0,3}${bull})((?:[ ][^\\n]*)?(?:\\n|$))`); + while (src) { + endEarly = false; + if (!(cap = itemRegex.exec(src))) { + break; + } + if (this.rules.block.hr.test(src)) { + break; + } + raw = cap[0]; + src = src.substring(raw.length); + line = cap[2].split("\n", 1)[0]; + nextLine = src.split("\n", 1)[0]; + if (this.options.pedantic) { + indent = 2; + itemContents = line.trimLeft(); + } else { + indent = cap[2].search(/[^ ]/); + indent = indent > 4 ? 1 : indent; + itemContents = line.slice(indent); + indent += cap[1].length; + } + blankLine = false; + if (!line && /^ *$/.test(nextLine)) { + raw += nextLine + "\n"; + src = src.substring(nextLine.length + 1); + endEarly = true; + } + if (!endEarly) { + const nextBulletRegex = new RegExp(`^ {0,${Math.min(3, indent - 1)}}(?:[*+-]|\\d{1,9}[.)])((?: [^\\n]*)?(?:\\n|$))`); + const hrRegex = new RegExp(`^ {0,${Math.min(3, indent - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`); + while (src) { + rawLine = src.split("\n", 1)[0]; + line = rawLine; + if (this.options.pedantic) { + line = line.replace(/^ {1,4}(?=( {4})*[^ ])/g, " "); + } + if (nextBulletRegex.test(line)) { + break; + } + if (hrRegex.test(src)) { + break; + } + if (line.search(/[^ ]/) >= indent || !line.trim()) { + itemContents += "\n" + line.slice(indent); + } else if (!blankLine) { + itemContents += "\n" + line; + } else { + break; + } + if (!blankLine && !line.trim()) { + blankLine = true; + } + raw += rawLine + "\n"; + src = src.substring(rawLine.length + 1); + } + } + if (!list.loose) { + if (endsWithBlankLine) { + list.loose = true; + } else if (/\n *\n *$/.test(raw)) { + endsWithBlankLine = true; + } + } + if (this.options.gfm) { + istask = /^\[[ xX]\] /.exec(itemContents); + if (istask) { + ischecked = istask[0] !== "[ ] "; + itemContents = itemContents.replace(/^\[[ xX]\] +/, ""); + } + } + list.items.push({ + type: "list_item", + raw, + task: !!istask, + checked: ischecked, + loose: false, + text: itemContents + }); + list.raw += raw; + } + list.items[list.items.length - 1].raw = raw.trimRight(); + list.items[list.items.length - 1].text = itemContents.trimRight(); + list.raw = list.raw.trimRight(); + const l2 = list.items.length; + for (i = 0; i < l2; i++) { + this.lexer.state.top = false; + list.items[i].tokens = this.lexer.blockTokens(list.items[i].text, []); + const spacers = list.items[i].tokens.filter((t) => t.type === "space"); + const hasMultipleLineBreaks = spacers.every((t) => { + const chars = t.raw.split(""); + let lineBreaks = 0; + for (const char of chars) { + if (char === "\n") { + lineBreaks += 1; + } + if (lineBreaks > 1) { + return true; + } + } + return false; + }); + if (!list.loose && spacers.length && hasMultipleLineBreaks) { + list.loose = true; + list.items[i].loose = true; + } + } + return list; + } + } + html(src) { + const cap = this.rules.block.html.exec(src); + if (cap) { + const token = { + type: "html", + raw: cap[0], + pre: !this.options.sanitizer && (cap[1] === "pre" || cap[1] === "script" || cap[1] === "style"), + text: cap[0] + }; + if (this.options.sanitize) { + token.type = "paragraph"; + token.text = this.options.sanitizer ? this.options.sanitizer(cap[0]) : escape3(cap[0]); + token.tokens = []; + this.lexer.inline(token.text, token.tokens); + } + return token; + } + } + def(src) { + const cap = this.rules.block.def.exec(src); + if (cap) { + if (cap[3]) + cap[3] = cap[3].substring(1, cap[3].length - 1); + const tag = cap[1].toLowerCase().replace(/\s+/g, " "); + return { + type: "def", + tag, + raw: cap[0], + href: cap[2], + title: cap[3] + }; + } + } + table(src) { + const cap = this.rules.block.table.exec(src); + if (cap) { + const item = { + type: "table", + header: splitCells(cap[1]).map((c) => { + return { text: c }; + }), + align: cap[2].replace(/^ *|\| *$/g, "").split(/ *\| */), + rows: cap[3] && cap[3].trim() ? cap[3].replace(/\n[ \t]*$/, "").split("\n") : [] + }; + if (item.header.length === item.align.length) { + item.raw = cap[0]; + let l2 = item.align.length; + let i, j, k, row; + for (i = 0; i < l2; i++) { + if (/^ *-+: *$/.test(item.align[i])) { + item.align[i] = "right"; + } else if (/^ *:-+: *$/.test(item.align[i])) { + item.align[i] = "center"; + } else if (/^ *:-+ *$/.test(item.align[i])) { + item.align[i] = "left"; + } else { + item.align[i] = null; + } + } + l2 = item.rows.length; + for (i = 0; i < l2; i++) { + item.rows[i] = splitCells(item.rows[i], item.header.length).map((c) => { + return { text: c }; + }); + } + l2 = item.header.length; + for (j = 0; j < l2; j++) { + item.header[j].tokens = []; + this.lexer.inline(item.header[j].text, item.header[j].tokens); + } + l2 = item.rows.length; + for (j = 0; j < l2; j++) { + row = item.rows[j]; + for (k = 0; k < row.length; k++) { + row[k].tokens = []; + this.lexer.inline(row[k].text, row[k].tokens); + } + } + return item; + } + } + } + lheading(src) { + const cap = this.rules.block.lheading.exec(src); + if (cap) { + const token = { + type: "heading", + raw: cap[0], + depth: cap[2].charAt(0) === "=" ? 1 : 2, + text: cap[1], + tokens: [] + }; + this.lexer.inline(token.text, token.tokens); + return token; + } + } + paragraph(src) { + const cap = this.rules.block.paragraph.exec(src); + if (cap) { + const token = { + type: "paragraph", + raw: cap[0], + text: cap[1].charAt(cap[1].length - 1) === "\n" ? cap[1].slice(0, -1) : cap[1], + tokens: [] + }; + this.lexer.inline(token.text, token.tokens); + return token; + } + } + text(src) { + const cap = this.rules.block.text.exec(src); + if (cap) { + const token = { + type: "text", + raw: cap[0], + text: cap[0], + tokens: [] + }; + this.lexer.inline(token.text, token.tokens); + return token; + } + } + escape(src) { + const cap = this.rules.inline.escape.exec(src); + if (cap) { + return { + type: "escape", + raw: cap[0], + text: escape3(cap[1]) + }; + } + } + tag(src) { + const cap = this.rules.inline.tag.exec(src); + if (cap) { + if (!this.lexer.state.inLink && /^/i.test(cap[0])) { + this.lexer.state.inLink = false; + } + if (!this.lexer.state.inRawBlock && /^<(pre|code|kbd|script)(\s|>)/i.test(cap[0])) { + this.lexer.state.inRawBlock = true; + } else if (this.lexer.state.inRawBlock && /^<\/(pre|code|kbd|script)(\s|>)/i.test(cap[0])) { + this.lexer.state.inRawBlock = false; + } + return { + type: this.options.sanitize ? "text" : "html", + raw: cap[0], + inLink: this.lexer.state.inLink, + inRawBlock: this.lexer.state.inRawBlock, + text: this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(cap[0]) : escape3(cap[0]) : cap[0] + }; + } + } + link(src) { + const cap = this.rules.inline.link.exec(src); + if (cap) { + const trimmedUrl = cap[2].trim(); + if (!this.options.pedantic && /^$/.test(trimmedUrl)) { + return; + } + const rtrimSlash = rtrim(trimmedUrl.slice(0, -1), "\\"); + if ((trimmedUrl.length - rtrimSlash.length) % 2 === 0) { + return; + } + } else { + const lastParenIndex = findClosingBracket(cap[2], "()"); + if (lastParenIndex > -1) { + const start4 = cap[0].indexOf("!") === 0 ? 5 : 4; + const linkLen = start4 + cap[1].length + lastParenIndex; + cap[2] = cap[2].substring(0, lastParenIndex); + cap[0] = cap[0].substring(0, linkLen).trim(); + cap[3] = ""; + } + } + let href = cap[2]; + let title = ""; + if (this.options.pedantic) { + const link = /^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(href); + if (link) { + href = link[1]; + title = link[3]; + } + } else { + title = cap[3] ? cap[3].slice(1, -1) : ""; + } + href = href.trim(); + if (/^$/.test(trimmedUrl)) { + href = href.slice(1); + } else { + href = href.slice(1, -1); + } + } + return outputLink(cap, { + href: href ? href.replace(this.rules.inline._escapes, "$1") : href, + title: title ? title.replace(this.rules.inline._escapes, "$1") : title + }, cap[0], this.lexer); + } + } + reflink(src, links) { + let cap; + if ((cap = this.rules.inline.reflink.exec(src)) || (cap = this.rules.inline.nolink.exec(src))) { + let link = (cap[2] || cap[1]).replace(/\s+/g, " "); + link = links[link.toLowerCase()]; + if (!link || !link.href) { + const text = cap[0].charAt(0); + return { + type: "text", + raw: text, + text + }; + } + return outputLink(cap, link, cap[0], this.lexer); + } + } + emStrong(src, maskedSrc, prevChar = "") { + let match2 = this.rules.inline.emStrong.lDelim.exec(src); + if (!match2) + return; + if (match2[3] && prevChar.match(/[\p{L}\p{N}]/u)) + return; + const nextChar = match2[1] || match2[2] || ""; + if (!nextChar || nextChar && (prevChar === "" || this.rules.inline.punctuation.exec(prevChar))) { + const lLength = match2[0].length - 1; + let rDelim, rLength, delimTotal = lLength, midDelimTotal = 0; + const endReg = match2[0][0] === "*" ? this.rules.inline.emStrong.rDelimAst : this.rules.inline.emStrong.rDelimUnd; + endReg.lastIndex = 0; + maskedSrc = maskedSrc.slice(-1 * src.length + lLength); + while ((match2 = endReg.exec(maskedSrc)) != null) { + rDelim = match2[1] || match2[2] || match2[3] || match2[4] || match2[5] || match2[6]; + if (!rDelim) + continue; + rLength = rDelim.length; + if (match2[3] || match2[4]) { + delimTotal += rLength; + continue; + } else if (match2[5] || match2[6]) { + if (lLength % 3 && !((lLength + rLength) % 3)) { + midDelimTotal += rLength; + continue; + } + } + delimTotal -= rLength; + if (delimTotal > 0) + continue; + rLength = Math.min(rLength, rLength + delimTotal + midDelimTotal); + if (Math.min(lLength, rLength) % 2) { + const text2 = src.slice(1, lLength + match2.index + rLength); + return { + type: "em", + raw: src.slice(0, lLength + match2.index + rLength + 1), + text: text2, + tokens: this.lexer.inlineTokens(text2, []) + }; + } + const text = src.slice(2, lLength + match2.index + rLength - 1); + return { + type: "strong", + raw: src.slice(0, lLength + match2.index + rLength + 1), + text, + tokens: this.lexer.inlineTokens(text, []) + }; + } + } + } + codespan(src) { + const cap = this.rules.inline.code.exec(src); + if (cap) { + let text = cap[2].replace(/\n/g, " "); + const hasNonSpaceChars = /[^ ]/.test(text); + const hasSpaceCharsOnBothEnds = /^ /.test(text) && / $/.test(text); + if (hasNonSpaceChars && hasSpaceCharsOnBothEnds) { + text = text.substring(1, text.length - 1); + } + text = escape3(text, true); + return { + type: "codespan", + raw: cap[0], + text + }; + } + } + br(src) { + const cap = this.rules.inline.br.exec(src); + if (cap) { + return { + type: "br", + raw: cap[0] + }; + } + } + del(src) { + const cap = this.rules.inline.del.exec(src); + if (cap) { + return { + type: "del", + raw: cap[0], + text: cap[2], + tokens: this.lexer.inlineTokens(cap[2], []) + }; + } + } + autolink(src, mangle2) { + const cap = this.rules.inline.autolink.exec(src); + if (cap) { + let text, href; + if (cap[2] === "@") { + text = escape3(this.options.mangle ? mangle2(cap[1]) : cap[1]); + href = "mailto:" + text; + } else { + text = escape3(cap[1]); + href = text; + } + return { + type: "link", + raw: cap[0], + text, + href, + tokens: [ + { + type: "text", + raw: text, + text + } + ] + }; + } + } + url(src, mangle2) { + let cap; + if (cap = this.rules.inline.url.exec(src)) { + let text, href; + if (cap[2] === "@") { + text = escape3(this.options.mangle ? mangle2(cap[0]) : cap[0]); + href = "mailto:" + text; + } else { + let prevCapZero; + do { + prevCapZero = cap[0]; + cap[0] = this.rules.inline._backpedal.exec(cap[0])[0]; + } while (prevCapZero !== cap[0]); + text = escape3(cap[0]); + if (cap[1] === "www.") { + href = "http://" + text; + } else { + href = text; + } + } + return { + type: "link", + raw: cap[0], + text, + href, + tokens: [ + { + type: "text", + raw: text, + text + } + ] + }; + } + } + inlineText(src, smartypants2) { + const cap = this.rules.inline.text.exec(src); + if (cap) { + let text; + if (this.lexer.state.inRawBlock) { + text = this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(cap[0]) : escape3(cap[0]) : cap[0]; + } else { + text = escape3(this.options.smartypants ? smartypants2(cap[0]) : cap[0]); + } + return { + type: "text", + raw: cap[0], + text + }; + } + } +}; +var block = { + newline: /^(?: *(?:\n|$))+/, + code: /^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/, + fences: /^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?=\n|$)|$)/, + hr: /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, + heading: /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, + blockquote: /^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/, + list: /^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/, + html: "^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))", + def: /^ {0,3}\[(label)\]: *(?:\n *)?]+)>?(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/, + table: noopTest, + lheading: /^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/, + // regex template, placeholders will be replaced according to different paragraph + // interruption rules of commonmark and the original markdown spec: + _paragraph: /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, + text: /^[^\n]+/ +}; +block._label = /(?!\s*\])(?:\\.|[^\[\]\\])+/; +block._title = /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/; +block.def = edit(block.def).replace("label", block._label).replace("title", block._title).getRegex(); +block.bullet = /(?:[*+-]|\d{1,9}[.)])/; +block.listItemStart = edit(/^( *)(bull) */).replace("bull", block.bullet).getRegex(); +block.list = edit(block.list).replace(/bull/g, block.bullet).replace("hr", "\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def", "\\n+(?=" + block.def.source + ")").getRegex(); +block._tag = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul"; +block._comment = /|$)/; +block.html = edit(block.html, "i").replace("comment", block._comment).replace("tag", block._tag).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(); +block.paragraph = edit(block._paragraph).replace("hr", block.hr).replace("heading", " {0,3}#{1,6} ").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", ")|<(?:script|pre|style|textarea|!--)").replace("tag", block._tag).getRegex(); +block.blockquote = edit(block.blockquote).replace("paragraph", block.paragraph).getRegex(); +block.normal = merge2({}, block); +block.gfm = merge2({}, block.normal, { + table: "^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)" + // Cells +}); +block.gfm.table = edit(block.gfm.table).replace("hr", block.hr).replace("heading", " {0,3}#{1,6} ").replace("blockquote", " {0,3}>").replace("code", " {4}[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", ")|<(?:script|pre|style|textarea|!--)").replace("tag", block._tag).getRegex(); +block.gfm.paragraph = edit(block._paragraph).replace("hr", block.hr).replace("heading", " {0,3}#{1,6} ").replace("|lheading", "").replace("table", block.gfm.table).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", ")|<(?:script|pre|style|textarea|!--)").replace("tag", block._tag).getRegex(); +block.pedantic = merge2({}, block.normal, { + html: edit( + `^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))` + ).replace("comment", block._comment).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(), + def: /^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/, + heading: /^(#{1,6})(.*)(?:\n+|$)/, + fences: noopTest, + // fences not supported + paragraph: edit(block.normal._paragraph).replace("hr", block.hr).replace("heading", " *#{1,6} *[^\n]").replace("lheading", block.lheading).replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").getRegex() +}); +var inline = { + escape: /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, + autolink: /^<(scheme:[^\s\x00-\x1f<>]*|email)>/, + url: noopTest, + tag: "^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^", + // CDATA section + link: /^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/, + reflink: /^!?\[(label)\]\[(ref)\]/, + nolink: /^!?\[(ref)\](?:\[\])?/, + reflinkSearch: "reflink|nolink(?!\\()", + emStrong: { + lDelim: /^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/, + // (1) and (2) can only be a Right Delimiter. (3) and (4) can only be Left. (5) and (6) can be either Left or Right. + // () Skip orphan inside strong () Consume to delim (1) #*** (2) a***#, a*** (3) #***a, ***a (4) ***# (5) #***# (6) a***a + rDelimAst: /^[^_*]*?\_\_[^_*]*?\*[^_*]*?(?=\_\_)|[^*]+(?=[^*])|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/, + rDelimUnd: /^[^_*]*?\*\*[^_*]*?\_[^_*]*?(?=\*\*)|[^_]+(?=[^_])|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/ + // ^- Not allowed for _ + }, + code: /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, + br: /^( {2,}|\\)\n(?!\s*$)/, + del: noopTest, + text: /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~"; +inline.punctuation = edit(inline.punctuation).replace(/punctuation/g, inline._punctuation).getRegex(); +inline.blockSkip = /\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g; +inline.escapedEmSt = /\\\*|\\_/g; +inline._comment = edit(block._comment).replace("(?:-->|$)", "-->").getRegex(); +inline.emStrong.lDelim = edit(inline.emStrong.lDelim).replace(/punct/g, inline._punctuation).getRegex(); +inline.emStrong.rDelimAst = edit(inline.emStrong.rDelimAst, "g").replace(/punct/g, inline._punctuation).getRegex(); +inline.emStrong.rDelimUnd = edit(inline.emStrong.rDelimUnd, "g").replace(/punct/g, inline._punctuation).getRegex(); +inline._escapes = /\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g; +inline._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/; +inline._email = /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/; +inline.autolink = edit(inline.autolink).replace("scheme", inline._scheme).replace("email", inline._email).getRegex(); +inline._attribute = /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/; +inline.tag = edit(inline.tag).replace("comment", inline._comment).replace("attribute", inline._attribute).getRegex(); +inline._label = /(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/; +inline._href = /<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/; +inline._title = /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/; +inline.link = edit(inline.link).replace("label", inline._label).replace("href", inline._href).replace("title", inline._title).getRegex(); +inline.reflink = edit(inline.reflink).replace("label", inline._label).replace("ref", block._label).getRegex(); +inline.nolink = edit(inline.nolink).replace("ref", block._label).getRegex(); +inline.reflinkSearch = edit(inline.reflinkSearch, "g").replace("reflink", inline.reflink).replace("nolink", inline.nolink).getRegex(); +inline.normal = merge2({}, inline); +inline.pedantic = merge2({}, inline.normal, { + strong: { + start: /^__|\*\*/, + middle: /^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/, + endAst: /\*\*(?!\*)/g, + endUnd: /__(?!_)/g + }, + em: { + start: /^_|\*/, + middle: /^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/, + endAst: /\*(?!\*)/g, + endUnd: /_(?!_)/g + }, + link: edit(/^!?\[(label)\]\((.*?)\)/).replace("label", inline._label).getRegex(), + reflink: edit(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", inline._label).getRegex() +}); +inline.gfm = merge2({}, inline.normal, { + escape: edit(inline.escape).replace("])", "~|])").getRegex(), + _extended_email: /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/, + url: /^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/, + _backpedal: /(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/, + del: /^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/, + text: /^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\ 0.5) { + ch = "x" + ch.toString(16); + } + out2 += "&#" + ch + ";"; + } + return out2; +} +var Lexer = class _Lexer { + constructor(options2) { + this.tokens = []; + this.tokens.links = /* @__PURE__ */ Object.create(null); + this.options = options2 || defaults3; + this.options.tokenizer = this.options.tokenizer || new Tokenizer(); + this.tokenizer = this.options.tokenizer; + this.tokenizer.options = this.options; + this.tokenizer.lexer = this; + this.inlineQueue = []; + this.state = { + inLink: false, + inRawBlock: false, + top: true + }; + const rules2 = { + block: block.normal, + inline: inline.normal + }; + if (this.options.pedantic) { + rules2.block = block.pedantic; + rules2.inline = inline.pedantic; + } else if (this.options.gfm) { + rules2.block = block.gfm; + if (this.options.breaks) { + rules2.inline = inline.breaks; + } else { + rules2.inline = inline.gfm; + } + } + this.tokenizer.rules = rules2; + } + /** + * Expose Rules + */ + static get rules() { + return { + block, + inline + }; + } + /** + * Static Lex Method + */ + static lex(src, options2) { + const lexer2 = new _Lexer(options2); + return lexer2.lex(src); + } + /** + * Static Lex Inline Method + */ + static lexInline(src, options2) { + const lexer2 = new _Lexer(options2); + return lexer2.inlineTokens(src); + } + /** + * Preprocessing + */ + lex(src) { + src = src.replace(/\r\n|\r/g, "\n"); + this.blockTokens(src, this.tokens); + let next; + while (next = this.inlineQueue.shift()) { + this.inlineTokens(next.src, next.tokens); + } + return this.tokens; + } + /** + * Lexing + */ + blockTokens(src, tokens = []) { + if (this.options.pedantic) { + src = src.replace(/\t/g, " ").replace(/^ +$/gm, ""); + } else { + src = src.replace(/^( *)(\t+)/gm, (_, leading, tabs) => { + return leading + " ".repeat(tabs.length); + }); + } + let token, lastToken, cutSrc, lastParagraphClipped; + while (src) { + if (this.options.extensions && this.options.extensions.block && this.options.extensions.block.some((extTokenizer) => { + if (token = extTokenizer.call({ lexer: this }, src, tokens)) { + src = src.substring(token.raw.length); + tokens.push(token); + return true; + } + return false; + })) { + continue; + } + if (token = this.tokenizer.space(src)) { + src = src.substring(token.raw.length); + if (token.raw.length === 1 && tokens.length > 0) { + tokens[tokens.length - 1].raw += "\n"; + } else { + tokens.push(token); + } + continue; + } + if (token = this.tokenizer.code(src)) { + src = src.substring(token.raw.length); + lastToken = tokens[tokens.length - 1]; + if (lastToken && (lastToken.type === "paragraph" || lastToken.type === "text")) { + lastToken.raw += "\n" + token.raw; + lastToken.text += "\n" + token.text; + this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text; + } else { + tokens.push(token); + } + continue; + } + if (token = this.tokenizer.fences(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.heading(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.hr(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.blockquote(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.list(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.html(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.def(src)) { + src = src.substring(token.raw.length); + lastToken = tokens[tokens.length - 1]; + if (lastToken && (lastToken.type === "paragraph" || lastToken.type === "text")) { + lastToken.raw += "\n" + token.raw; + lastToken.text += "\n" + token.raw; + this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text; + } else if (!this.tokens.links[token.tag]) { + this.tokens.links[token.tag] = { + href: token.href, + title: token.title + }; + } + continue; + } + if (token = this.tokenizer.table(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.lheading(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + cutSrc = src; + if (this.options.extensions && this.options.extensions.startBlock) { + let startIndex = Infinity; + const tempSrc = src.slice(1); + let tempStart; + this.options.extensions.startBlock.forEach(function(getStartIndex) { + tempStart = getStartIndex.call({ lexer: this }, tempSrc); + if (typeof tempStart === "number" && tempStart >= 0) { + startIndex = Math.min(startIndex, tempStart); + } + }); + if (startIndex < Infinity && startIndex >= 0) { + cutSrc = src.substring(0, startIndex + 1); + } + } + if (this.state.top && (token = this.tokenizer.paragraph(cutSrc))) { + lastToken = tokens[tokens.length - 1]; + if (lastParagraphClipped && lastToken.type === "paragraph") { + lastToken.raw += "\n" + token.raw; + lastToken.text += "\n" + token.text; + this.inlineQueue.pop(); + this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text; + } else { + tokens.push(token); + } + lastParagraphClipped = cutSrc.length !== src.length; + src = src.substring(token.raw.length); + continue; + } + if (token = this.tokenizer.text(src)) { + src = src.substring(token.raw.length); + lastToken = tokens[tokens.length - 1]; + if (lastToken && lastToken.type === "text") { + lastToken.raw += "\n" + token.raw; + lastToken.text += "\n" + token.text; + this.inlineQueue.pop(); + this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text; + } else { + tokens.push(token); + } + continue; + } + if (src) { + const errMsg = "Infinite loop on byte: " + src.charCodeAt(0); + if (this.options.silent) { + console.error(errMsg); + break; + } else { + throw new Error(errMsg); + } + } + } + this.state.top = true; + return tokens; + } + inline(src, tokens) { + this.inlineQueue.push({ src, tokens }); + } + /** + * Lexing/Compiling + */ + inlineTokens(src, tokens = []) { + let token, lastToken, cutSrc; + let maskedSrc = src; + let match2; + let keepPrevChar, prevChar; + if (this.tokens.links) { + const links = Object.keys(this.tokens.links); + if (links.length > 0) { + while ((match2 = this.tokenizer.rules.inline.reflinkSearch.exec(maskedSrc)) != null) { + if (links.includes(match2[0].slice(match2[0].lastIndexOf("[") + 1, -1))) { + maskedSrc = maskedSrc.slice(0, match2.index) + "[" + repeatString("a", match2[0].length - 2) + "]" + maskedSrc.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex); + } + } + } + } + while ((match2 = this.tokenizer.rules.inline.blockSkip.exec(maskedSrc)) != null) { + maskedSrc = maskedSrc.slice(0, match2.index) + "[" + repeatString("a", match2[0].length - 2) + "]" + maskedSrc.slice(this.tokenizer.rules.inline.blockSkip.lastIndex); + } + while ((match2 = this.tokenizer.rules.inline.escapedEmSt.exec(maskedSrc)) != null) { + maskedSrc = maskedSrc.slice(0, match2.index) + "++" + maskedSrc.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex); + } + while (src) { + if (!keepPrevChar) { + prevChar = ""; + } + keepPrevChar = false; + if (this.options.extensions && this.options.extensions.inline && this.options.extensions.inline.some((extTokenizer) => { + if (token = extTokenizer.call({ lexer: this }, src, tokens)) { + src = src.substring(token.raw.length); + tokens.push(token); + return true; + } + return false; + })) { + continue; + } + if (token = this.tokenizer.escape(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.tag(src)) { + src = src.substring(token.raw.length); + lastToken = tokens[tokens.length - 1]; + if (lastToken && token.type === "text" && lastToken.type === "text") { + lastToken.raw += token.raw; + lastToken.text += token.text; + } else { + tokens.push(token); + } + continue; + } + if (token = this.tokenizer.link(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.reflink(src, this.tokens.links)) { + src = src.substring(token.raw.length); + lastToken = tokens[tokens.length - 1]; + if (lastToken && token.type === "text" && lastToken.type === "text") { + lastToken.raw += token.raw; + lastToken.text += token.text; + } else { + tokens.push(token); + } + continue; + } + if (token = this.tokenizer.emStrong(src, maskedSrc, prevChar)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.codespan(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.br(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.del(src)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (token = this.tokenizer.autolink(src, mangle)) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + if (!this.state.inLink && (token = this.tokenizer.url(src, mangle))) { + src = src.substring(token.raw.length); + tokens.push(token); + continue; + } + cutSrc = src; + if (this.options.extensions && this.options.extensions.startInline) { + let startIndex = Infinity; + const tempSrc = src.slice(1); + let tempStart; + this.options.extensions.startInline.forEach(function(getStartIndex) { + tempStart = getStartIndex.call({ lexer: this }, tempSrc); + if (typeof tempStart === "number" && tempStart >= 0) { + startIndex = Math.min(startIndex, tempStart); + } + }); + if (startIndex < Infinity && startIndex >= 0) { + cutSrc = src.substring(0, startIndex + 1); + } + } + if (token = this.tokenizer.inlineText(cutSrc, smartypants)) { + src = src.substring(token.raw.length); + if (token.raw.slice(-1) !== "_") { + prevChar = token.raw.slice(-1); + } + keepPrevChar = true; + lastToken = tokens[tokens.length - 1]; + if (lastToken && lastToken.type === "text") { + lastToken.raw += token.raw; + lastToken.text += token.text; + } else { + tokens.push(token); + } + continue; + } + if (src) { + const errMsg = "Infinite loop on byte: " + src.charCodeAt(0); + if (this.options.silent) { + console.error(errMsg); + break; + } else { + throw new Error(errMsg); + } + } + } + return tokens; + } +}; +var Renderer = class { + constructor(options2) { + this.options = options2 || defaults3; + } + code(code, infostring, escaped) { + const lang = (infostring || "").match(/\S*/)[0]; + if (this.options.highlight) { + const out2 = this.options.highlight(code, lang); + if (out2 != null && out2 !== code) { + escaped = true; + code = out2; + } + } + code = code.replace(/\n$/, "") + "\n"; + if (!lang) { + return "
" + (escaped ? code : escape3(code, true)) + "
\n"; + } + return '
' + (escaped ? code : escape3(code, true)) + "
\n"; + } + /** + * @param {string} quote + */ + blockquote(quote) { + return `
+${quote}
+`; + } + html(html) { + return html; + } + /** + * @param {string} text + * @param {string} level + * @param {string} raw + * @param {any} slugger + */ + heading(text, level, raw, slugger) { + if (this.options.headerIds) { + const id = this.options.headerPrefix + slugger.slug(raw); + return `${text} +`; + } + return `${text} +`; + } + hr() { + return this.options.xhtml ? "
\n" : "
\n"; + } + list(body2, ordered, start4) { + const type2 = ordered ? "ol" : "ul", startatt = ordered && start4 !== 1 ? ' start="' + start4 + '"' : ""; + return "<" + type2 + startatt + ">\n" + body2 + "\n"; + } + /** + * @param {string} text + */ + listitem(text) { + return `
  • ${text}
  • +`; + } + checkbox(checked) { + return " "; + } + /** + * @param {string} text + */ + paragraph(text) { + return `

    ${text}

    +`; + } + /** + * @param {string} header + * @param {string} body + */ + table(header, body2) { + if (body2) + body2 = `${body2}`; + return "\n\n" + header + "\n" + body2 + "
    \n"; + } + /** + * @param {string} content + */ + tablerow(content) { + return ` +${content} +`; + } + tablecell(content, flags2) { + const type2 = flags2.header ? "th" : "td"; + const tag = flags2.align ? `<${type2} align="${flags2.align}">` : `<${type2}>`; + return tag + content + ` +`; + } + /** + * span level renderer + * @param {string} text + */ + strong(text) { + return `${text}`; + } + /** + * @param {string} text + */ + em(text) { + return `${text}`; + } + /** + * @param {string} text + */ + codespan(text) { + return `${text}`; + } + br() { + return this.options.xhtml ? "
    " : "
    "; + } + /** + * @param {string} text + */ + del(text) { + return `${text}`; + } + /** + * @param {string} href + * @param {string} title + * @param {string} text + */ + link(href, title, text) { + href = cleanUrl(this.options.sanitize, this.options.baseUrl, href); + if (href === null) { + return text; + } + let out2 = '
    "; + return out2; + } + /** + * @param {string} href + * @param {string} title + * @param {string} text + */ + image(href, title, text) { + href = cleanUrl(this.options.sanitize, this.options.baseUrl, href); + if (href === null) { + return text; + } + let out2 = `${text}" : ">"; + return out2; + } + text(text) { + return text; + } +}; +var TextRenderer = class { + // no need for block level renderers + strong(text) { + return text; + } + em(text) { + return text; + } + codespan(text) { + return text; + } + del(text) { + return text; + } + html(text) { + return text; + } + text(text) { + return text; + } + link(href, title, text) { + return "" + text; + } + image(href, title, text) { + return "" + text; + } + br() { + return ""; + } +}; +var Slugger = class { + constructor() { + this.seen = {}; + } + /** + * @param {string} value + */ + serialize(value) { + return value.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig, "").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g, "").replace(/\s/g, "-"); + } + /** + * Finds the next safe (unique) slug to use + * @param {string} originalSlug + * @param {boolean} isDryRun + */ + getNextSafeSlug(originalSlug, isDryRun) { + let slug = originalSlug; + let occurenceAccumulator = 0; + if (this.seen.hasOwnProperty(slug)) { + occurenceAccumulator = this.seen[originalSlug]; + do { + occurenceAccumulator++; + slug = originalSlug + "-" + occurenceAccumulator; + } while (this.seen.hasOwnProperty(slug)); + } + if (!isDryRun) { + this.seen[originalSlug] = occurenceAccumulator; + this.seen[slug] = 0; + } + return slug; + } + /** + * Convert string to unique id + * @param {object} [options] + * @param {boolean} [options.dryrun] Generates the next unique slug without + * updating the internal accumulator. + */ + slug(value, options2 = {}) { + const slug = this.serialize(value); + return this.getNextSafeSlug(slug, options2.dryrun); + } +}; +var Parser2 = class _Parser2 { + constructor(options2) { + this.options = options2 || defaults3; + this.options.renderer = this.options.renderer || new Renderer(); + this.renderer = this.options.renderer; + this.renderer.options = this.options; + this.textRenderer = new TextRenderer(); + this.slugger = new Slugger(); + } + /** + * Static Parse Method + */ + static parse(tokens, options2) { + const parser2 = new _Parser2(options2); + return parser2.parse(tokens); + } + /** + * Static Parse Inline Method + */ + static parseInline(tokens, options2) { + const parser2 = new _Parser2(options2); + return parser2.parseInline(tokens); + } + /** + * Parse Loop + */ + parse(tokens, top = true) { + let out2 = "", i, j, k, l2, l3, row, cell, header, body2, token, ordered, start4, loose, itemBody, item, checked, task, checkbox, ret2; + const l4 = tokens.length; + for (i = 0; i < l4; i++) { + token = tokens[i]; + if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[token.type]) { + ret2 = this.options.extensions.renderers[token.type].call({ parser: this }, token); + if (ret2 !== false || !["space", "hr", "heading", "code", "table", "blockquote", "list", "html", "paragraph", "text"].includes(token.type)) { + out2 += ret2 || ""; + continue; + } + } + switch (token.type) { + case "space": { + continue; + } + case "hr": { + out2 += this.renderer.hr(); + continue; + } + case "heading": { + out2 += this.renderer.heading( + this.parseInline(token.tokens), + token.depth, + unescape3(this.parseInline(token.tokens, this.textRenderer)), + this.slugger + ); + continue; + } + case "code": { + out2 += this.renderer.code( + token.text, + token.lang, + token.escaped + ); + continue; + } + case "table": { + header = ""; + cell = ""; + l2 = token.header.length; + for (j = 0; j < l2; j++) { + cell += this.renderer.tablecell( + this.parseInline(token.header[j].tokens), + { header: true, align: token.align[j] } + ); + } + header += this.renderer.tablerow(cell); + body2 = ""; + l2 = token.rows.length; + for (j = 0; j < l2; j++) { + row = token.rows[j]; + cell = ""; + l3 = row.length; + for (k = 0; k < l3; k++) { + cell += this.renderer.tablecell( + this.parseInline(row[k].tokens), + { header: false, align: token.align[k] } + ); + } + body2 += this.renderer.tablerow(cell); + } + out2 += this.renderer.table(header, body2); + continue; + } + case "blockquote": { + body2 = this.parse(token.tokens); + out2 += this.renderer.blockquote(body2); + continue; + } + case "list": { + ordered = token.ordered; + start4 = token.start; + loose = token.loose; + l2 = token.items.length; + body2 = ""; + for (j = 0; j < l2; j++) { + item = token.items[j]; + checked = item.checked; + task = item.task; + itemBody = ""; + if (item.task) { + checkbox = this.renderer.checkbox(checked); + if (loose) { + if (item.tokens.length > 0 && item.tokens[0].type === "paragraph") { + item.tokens[0].text = checkbox + " " + item.tokens[0].text; + if (item.tokens[0].tokens && item.tokens[0].tokens.length > 0 && item.tokens[0].tokens[0].type === "text") { + item.tokens[0].tokens[0].text = checkbox + " " + item.tokens[0].tokens[0].text; + } + } else { + item.tokens.unshift({ + type: "text", + text: checkbox + }); + } + } else { + itemBody += checkbox; + } + } + itemBody += this.parse(item.tokens, loose); + body2 += this.renderer.listitem(itemBody, task, checked); + } + out2 += this.renderer.list(body2, ordered, start4); + continue; + } + case "html": { + out2 += this.renderer.html(token.text); + continue; + } + case "paragraph": { + out2 += this.renderer.paragraph(this.parseInline(token.tokens)); + continue; + } + case "text": { + body2 = token.tokens ? this.parseInline(token.tokens) : token.text; + while (i + 1 < l4 && tokens[i + 1].type === "text") { + token = tokens[++i]; + body2 += "\n" + (token.tokens ? this.parseInline(token.tokens) : token.text); + } + out2 += top ? this.renderer.paragraph(body2) : body2; + continue; + } + default: { + const errMsg = 'Token with "' + token.type + '" type was not found.'; + if (this.options.silent) { + console.error(errMsg); + return; + } else { + throw new Error(errMsg); + } + } + } + } + return out2; + } + /** + * Parse Inline Tokens + */ + parseInline(tokens, renderer) { + renderer = renderer || this.renderer; + let out2 = "", i, token, ret2; + const l2 = tokens.length; + for (i = 0; i < l2; i++) { + token = tokens[i]; + if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[token.type]) { + ret2 = this.options.extensions.renderers[token.type].call({ parser: this }, token); + if (ret2 !== false || !["escape", "html", "link", "image", "strong", "em", "codespan", "br", "del", "text"].includes(token.type)) { + out2 += ret2 || ""; + continue; + } + } + switch (token.type) { + case "escape": { + out2 += renderer.text(token.text); + break; + } + case "html": { + out2 += renderer.html(token.text); + break; + } + case "link": { + out2 += renderer.link(token.href, token.title, this.parseInline(token.tokens, renderer)); + break; + } + case "image": { + out2 += renderer.image(token.href, token.title, token.text); + break; + } + case "strong": { + out2 += renderer.strong(this.parseInline(token.tokens, renderer)); + break; + } + case "em": { + out2 += renderer.em(this.parseInline(token.tokens, renderer)); + break; + } + case "codespan": { + out2 += renderer.codespan(token.text); + break; + } + case "br": { + out2 += renderer.br(); + break; + } + case "del": { + out2 += renderer.del(this.parseInline(token.tokens, renderer)); + break; + } + case "text": { + out2 += renderer.text(token.text); + break; + } + default: { + const errMsg = 'Token with "' + token.type + '" type was not found.'; + if (this.options.silent) { + console.error(errMsg); + return; + } else { + throw new Error(errMsg); + } + } + } + } + return out2; + } +}; +function marked(src, opt, callback) { + if (typeof src === "undefined" || src === null) { + throw new Error("marked(): input parameter is undefined or null"); + } + if (typeof src !== "string") { + throw new Error("marked(): input parameter is of type " + Object.prototype.toString.call(src) + ", string expected"); + } + if (typeof opt === "function") { + callback = opt; + opt = null; + } + opt = merge2({}, marked.defaults, opt || {}); + checkSanitizeDeprecation(opt); + if (callback) { + const highlight2 = opt.highlight; + let tokens; + try { + tokens = Lexer.lex(src, opt); + } catch (e) { + return callback(e); + } + const done = function(err2) { + let out2; + if (!err2) { + try { + if (opt.walkTokens) { + marked.walkTokens(tokens, opt.walkTokens); + } + out2 = Parser2.parse(tokens, opt); + } catch (e) { + err2 = e; + } + } + opt.highlight = highlight2; + return err2 ? callback(err2) : callback(null, out2); + }; + if (!highlight2 || highlight2.length < 3) { + return done(); + } + delete opt.highlight; + if (!tokens.length) + return done(); + let pending = 0; + marked.walkTokens(tokens, function(token) { + if (token.type === "code") { + pending++; + setTimeout(() => { + highlight2(token.text, token.lang, function(err2, code) { + if (err2) { + return done(err2); + } + if (code != null && code !== token.text) { + token.text = code; + token.escaped = true; + } + pending--; + if (pending === 0) { + done(); + } + }); + }, 0); + } + }); + if (pending === 0) { + done(); + } + return; + } + try { + const tokens = Lexer.lex(src, opt); + if (opt.walkTokens) { + marked.walkTokens(tokens, opt.walkTokens); + } + return Parser2.parse(tokens, opt); + } catch (e) { + e.message += "\nPlease report this to https://github.com/markedjs/marked."; + if (opt.silent) { + return "

    An error occurred:

    " + escape3(e.message + "", true) + "
    "; + } + throw e; + } +} +marked.options = marked.setOptions = function(opt) { + merge2(marked.defaults, opt); + changeDefaults(marked.defaults); + return marked; +}; +marked.getDefaults = getDefaults; +marked.defaults = defaults3; +marked.use = function(...args3) { + const opts = merge2({}, ...args3); + const extensions2 = marked.defaults.extensions || { renderers: {}, childTokens: {} }; + let hasExtensions; + args3.forEach((pack) => { + if (pack.extensions) { + hasExtensions = true; + pack.extensions.forEach((ext2) => { + if (!ext2.name) { + throw new Error("extension name required"); + } + if (ext2.renderer) { + const prevRenderer = extensions2.renderers ? extensions2.renderers[ext2.name] : null; + if (prevRenderer) { + extensions2.renderers[ext2.name] = function(...args4) { + let ret2 = ext2.renderer.apply(this, args4); + if (ret2 === false) { + ret2 = prevRenderer.apply(this, args4); + } + return ret2; + }; + } else { + extensions2.renderers[ext2.name] = ext2.renderer; + } + } + if (ext2.tokenizer) { + if (!ext2.level || ext2.level !== "block" && ext2.level !== "inline") { + throw new Error("extension level must be 'block' or 'inline'"); + } + if (extensions2[ext2.level]) { + extensions2[ext2.level].unshift(ext2.tokenizer); + } else { + extensions2[ext2.level] = [ext2.tokenizer]; + } + if (ext2.start) { + if (ext2.level === "block") { + if (extensions2.startBlock) { + extensions2.startBlock.push(ext2.start); + } else { + extensions2.startBlock = [ext2.start]; + } + } else if (ext2.level === "inline") { + if (extensions2.startInline) { + extensions2.startInline.push(ext2.start); + } else { + extensions2.startInline = [ext2.start]; + } + } + } + } + if (ext2.childTokens) { + extensions2.childTokens[ext2.name] = ext2.childTokens; + } + }); + } + if (pack.renderer) { + const renderer = marked.defaults.renderer || new Renderer(); + for (const prop in pack.renderer) { + const prevRenderer = renderer[prop]; + renderer[prop] = (...args4) => { + let ret2 = pack.renderer[prop].apply(renderer, args4); + if (ret2 === false) { + ret2 = prevRenderer.apply(renderer, args4); + } + return ret2; + }; + } + opts.renderer = renderer; + } + if (pack.tokenizer) { + const tokenizer = marked.defaults.tokenizer || new Tokenizer(); + for (const prop in pack.tokenizer) { + const prevTokenizer = tokenizer[prop]; + tokenizer[prop] = (...args4) => { + let ret2 = pack.tokenizer[prop].apply(tokenizer, args4); + if (ret2 === false) { + ret2 = prevTokenizer.apply(tokenizer, args4); + } + return ret2; + }; + } + opts.tokenizer = tokenizer; + } + if (pack.walkTokens) { + const walkTokens2 = marked.defaults.walkTokens; + opts.walkTokens = function(token) { + pack.walkTokens.call(this, token); + if (walkTokens2) { + walkTokens2.call(this, token); + } + }; + } + if (hasExtensions) { + opts.extensions = extensions2; + } + marked.setOptions(opts); + }); +}; +marked.walkTokens = function(tokens, callback) { + for (const token of tokens) { + callback.call(marked, token); + switch (token.type) { + case "table": { + for (const cell of token.header) { + marked.walkTokens(cell.tokens, callback); + } + for (const row of token.rows) { + for (const cell of row) { + marked.walkTokens(cell.tokens, callback); + } + } + break; + } + case "list": { + marked.walkTokens(token.items, callback); + break; + } + default: { + if (marked.defaults.extensions && marked.defaults.extensions.childTokens && marked.defaults.extensions.childTokens[token.type]) { + marked.defaults.extensions.childTokens[token.type].forEach(function(childTokens) { + marked.walkTokens(token[childTokens], callback); + }); + } else if (token.tokens) { + marked.walkTokens(token.tokens, callback); + } + } + } + } +}; +marked.parseInline = function(src, opt) { + if (typeof src === "undefined" || src === null) { + throw new Error("marked.parseInline(): input parameter is undefined or null"); + } + if (typeof src !== "string") { + throw new Error("marked.parseInline(): input parameter is of type " + Object.prototype.toString.call(src) + ", string expected"); + } + opt = merge2({}, marked.defaults, opt || {}); + checkSanitizeDeprecation(opt); + try { + const tokens = Lexer.lexInline(src, opt); + if (opt.walkTokens) { + marked.walkTokens(tokens, opt.walkTokens); + } + return Parser2.parseInline(tokens, opt); + } catch (e) { + e.message += "\nPlease report this to https://github.com/markedjs/marked."; + if (opt.silent) { + return "

    An error occurred:

    " + escape3(e.message + "", true) + "
    "; + } + throw e; + } +}; +marked.Parser = Parser2; +marked.parser = Parser2.parse; +marked.Renderer = Renderer; +marked.TextRenderer = TextRenderer; +marked.Lexer = Lexer; +marked.lexer = Lexer.lex; +marked.Tokenizer = Tokenizer; +marked.Slugger = Slugger; +marked.parse = marked; +var options = marked.options; +var setOptions = marked.setOptions; +var use = marked.use; +var walkTokens = marked.walkTokens; +var parseInline = marked.parseInline; +var parser = Parser2.parse; +var lexer = Lexer.lex; + +// ../lib/shared/src/common/markdown/markdown.ts +var import_dompurify = __toESM(require_purify_cjs()); +var import_core = __toESM(require_core()); +var escapeHTML = (html) => { + const span = document.createElement("span"); + span.textContent = html; + return span.innerHTML; +}; +var highlightCodeSafe = (code, language) => { + try { + if (language === "plaintext" || language === "text") { + return escapeHTML(code); + } + if (language === "sourcegraph") { + return code; + } + if (language) { + return (0, import_core.highlight)(code, { language, ignoreIllegals: true }).value; + } + return (0, import_core.highlightAuto)(code).value; + } catch (error) { + console.error("Error syntax-highlighting hover markdown code block", error); + return escapeHTML(code); + } +}; +var renderMarkdown = (markdown, options2 = {}) => { + const tokenizer = new marked.Tokenizer(); + if (options2.disableAutolinks) { + tokenizer.url = () => void 0; + } + const rendered = marked(markdown, { + gfm: true, + breaks: options2.breaks, + highlight: (code, language) => highlightCodeSafe(code, language), + renderer: options2.renderer, + headerPrefix: options2.headerPrefix ?? "", + tokenizer + }); + const dompurifyConfig = typeof options2.dompurifyConfig === "object" ? options2.dompurifyConfig : options2.plainText ? { + ALLOWED_TAGS: [], + ALLOWED_ATTR: [], + KEEP_CONTENT: true + } : { + USE_PROFILES: { html: true }, + FORBID_TAGS: ["style", "form", "input", "button"], + FORBID_ATTR: ["rel", "style", "method", "action"] + }; + if (options2.addTargetBlankToAllLinks) { + import_dompurify.default.addHook("afterSanitizeAttributes", (node) => { + if (node.tagName.toLowerCase() === "a" && node.getAttribute("href")) { + node.setAttribute("target", "_blank"); + node.setAttribute("rel", "noopener"); + } + }); + } + const result = options2.noDomPurify ? rendered : import_dompurify.default.sanitize(rendered, dompurifyConfig).trim(); + if (options2.addTargetBlankToAllLinks) { + import_dompurify.default.removeHook("afterSanitizeAttributes"); + } + return result; +}; + +// ../lib/shared/src/chat/markdown.ts +function parseMarkdown(text) { + return marked.Lexer.lex(text, { gfm: true }); +} + +// ../lib/shared/src/common/index.ts +var isDefined = (value) => value !== void 0 && value !== null; +function pluralize(string, count, plural = string + "s") { + return count === 1 || count === 1n ? string : plural; +} +var escapeMarkdown = (text) => { + const punctuation = "\\!\"#%&'()*+,-./:;=?@[]^_`{|}~"; + for (const char of punctuation) { + text = text.replaceAll(char, "\\" + char); + } + return text.replaceAll("<", "<").replaceAll(">", ">"); +}; +var dedupeWith = (items, key) => [ + ...new Map(items.map((item) => [typeof key === "function" ? key(item) : item[key], item])).values() +]; + +// ../lib/shared/src/guardrails/index.ts +async function annotateAttribution(guardrails, text) { + const start4 = performance.now(); + const tokens = parseMarkdown(text); + let codeBlocks = 0; + const parts = await Promise.all( + tokens.map(async (token) => { + if (token.type !== "code") { + return token.raw; + } + codeBlocks++; + const msg = await guardrails.searchAttribution(token.text).then(summariseAttribution); + return `${token.raw} +
    \u{1F6E1}\uFE0F ${escapeMarkdown(msg)}
    `; + }) + ); + const annotated = parts.join(""); + return { + text: annotated, + codeBlocks, + duration: performance.now() - start4 + }; +} +function summariseAttribution(attribution) { + if (isError2(attribution)) { + return `guardrails attribution search failed: ${attribution.message}`; + } + const repos = attribution.repositories; + const count = repos.length; + if (count === 0) { + return "no matching repositories found"; + } + const summary = repos.slice(0, count < 5 ? count : 5).map((repo) => repo.name); + if (count > 5) { + summary.push("..."); + } + return `found ${count}${attribution.limitHit ? "+" : ""} matching ${pluralize( + "repository", + count, + "repositories" + )} ${summary.join(", ")}`; +} + +// ../vscode/src/chat/utils.ts +function newAuthStatus(endpoint, isDotComOrApp, user, isEmailVerified, isCodyEnabled, userCanUpgrade, version4, configOverwrites) { + if (!user) { + return { ...unauthenticatedStatus, endpoint }; + } + const authStatus = { ...defaultAuthStatus, endpoint }; + authStatus.authenticated = user; + authStatus.showInvalidAccessTokenError = !user; + authStatus.requiresVerifiedEmail = isDotComOrApp; + authStatus.hasVerifiedEmail = isDotComOrApp && isEmailVerified; + authStatus.siteHasCodyEnabled = isCodyEnabled; + authStatus.userCanUpgrade = userCanUpgrade; + authStatus.siteVersion = version4; + if (configOverwrites) { + authStatus.configOverwrites = configOverwrites; + } + const isLoggedIn2 = authStatus.siteHasCodyEnabled && authStatus.authenticated; + const isAllowed = authStatus.requiresVerifiedEmail ? authStatus.hasVerifiedEmail : true; + authStatus.isLoggedIn = isLoggedIn2 && isAllowed; + return authStatus; +} +var countGeneratedCode = (text) => { + const codeBlockRegex = /```[\S\s]*?```/g; + const codeBlocks = text.match(codeBlockRegex); + if (!codeBlocks) { + return null; + } + const count = { lineCount: 0, charCount: 0 }; + const backticks = "```"; + for (const block2 of codeBlocks) { + const lines2 = block2.split("\n"); + const codeLines = lines2.filter((line) => !line.startsWith(backticks)); + const lineCount = codeLines.length; + const language = lines2[0].replace(backticks, ""); + const charCount = block2.length - language.length - backticks.length * 2 - 2; + count.charCount += charCount; + count.lineCount += lineCount; + } + return count; +}; + +// ../vscode/src/services/AuthMenus.ts +function getItemLabel(uri, current) { + const icon = current ? "$(check) " : ""; + if (isLocalApp(uri)) { + return `${icon}Cody App`; + } + if (isDotCom(uri)) { + return `${icon}Sourcegraph.com`; + } + return `${icon}${uri}`; +} +var AuthMenu = async (type2, historyItems) => { + const historySize = historyItems?.length; + const history = historySize > 0 ? historyItems?.map((uri, i) => ({ + id: uri, + label: getItemLabel(uri, type2 === "switch" && i === historySize - 1), + description: "", + uri + })).reverse() : []; + const separator = [{ label: type2 === "signin" ? "previously used" : "current", kind: -1 }]; + const optionItems = [...LoginMenuOptionItems, ...separator, ...history]; + const option = await window2.showQuickPick(optionItems, AuthMenuOptions[type2]); + return option; +}; +async function showInstanceURLInputBox(title) { + const result = await window2.showInputBox({ + title, + prompt: "Enter the URL of the Sourcegraph instance", + placeHolder: "https://sourcegraph.example.com", + password: false, + ignoreFocusOut: true + }); + if (typeof result === "string") { + return result.trim(); + } + return result; +} +async function showAccessTokenInputBox(endpoint) { + const result = await window2.showInputBox({ + title: endpoint, + prompt: 'Paste your access token. To create an access token, go to "Settings" and then "Access tokens" on the Sourcegraph instance.', + placeHolder: "Access Token", + password: true, + ignoreFocusOut: true + }); + if (typeof result === "string") { + return result.trim(); + } + return result; +} +var AuthMenuOptions = { + signin: { + title: "Other Sign in Options", + placeholder: "Choose a sign in option" + }, + switch: { + title: "Switch Account", + placeHolder: "Choose an account" + } +}; +var LoginMenuOptionItems = [ + { + id: "enterprise", + label: "Sign in to Sourcegraph Enterprise instance", + description: "v5.1 and above", + totalSteps: 1, + picked: true + }, + { + id: "token", + label: "Sign in to Sourcegraph Enterprise instance via Access Token", + description: "v5.0 and above", + totalSteps: 2 + }, + { + id: "token", + label: "Sign in with URL and Access Token", + totalSteps: 2 + } +]; + +// ../vscode/src/services/AuthProvider.ts +var AuthProvider = class { + constructor(config) { + this.config = config; + this.authStatus.endpoint = "init"; + this.loadEndpointHistory(); + this.appDetector = new LocalAppDetector({ onChange: (type2) => this.syncLocalAppState(type2) }); + } + endpointHistory = []; + appScheme = env2.uriScheme; + client = null; + appDetector; + authStatus = defaultAuthStatus; + webview; + listeners = /* @__PURE__ */ new Set(); + // Sign into the last endpoint the user was signed into + // if none, try signing in with App URL + async init() { + await this.appDetector.init(); + const lastEndpoint = localStorage2?.getEndpoint() || this.config.serverEndpoint; + const token = await secretStorage.get(lastEndpoint || "") || this.config.accessToken; + logDebug("AuthProvider:init:lastEndpoint", lastEndpoint); + await this.auth(lastEndpoint, token || null); + } + addChangeListener(listener) { + this.listeners.add(listener); + return () => this.listeners.delete(listener); + } + // Display quickpick to select endpoint to sign in to + async signinMenu(type2, uri) { + const mode = this.authStatus.isLoggedIn ? "switch" : "signin"; + logDebug("AuthProvider:signinMenu", mode); + telemetryService.log("CodyVSCodeExtension:login:clicked"); + const item = await AuthMenu(mode, this.endpointHistory); + if (!item) { + return; + } + const menuID = type2 || item?.id; + telemetryService.log("CodyVSCodeExtension:auth:selectSigninMenu", { menuID }); + switch (menuID) { + case "enterprise": { + const instanceUrl = await showInstanceURLInputBox(item.uri); + if (!instanceUrl) { + return; + } + this.authStatus.endpoint = instanceUrl; + this.redirectToEndpointLogin(instanceUrl); + break; + } + case "dotcom": + this.redirectToEndpointLogin(DOTCOM_URL.href); + break; + case "token": { + const instanceUrl = await showInstanceURLInputBox(uri || item.uri); + if (!instanceUrl) { + return; + } + await this.signinMenuForInstanceUrl(instanceUrl); + break; + } + case "app": { + if (uri) { + await this.appAuth(uri); + } + break; + } + default: { + const selectedEndpoint = item.uri; + const tokenKey = isLocalApp(selectedEndpoint) ? "SOURCEGRAPH_CODY_APP" : selectedEndpoint; + const token = await secretStorage.get(tokenKey); + let authStatus = await this.auth(selectedEndpoint, token || null); + if (!authStatus?.isLoggedIn) { + const newToken = await showAccessTokenInputBox(item.uri); + authStatus = await this.auth(selectedEndpoint, newToken || null); + } + await showAuthResultMessage(selectedEndpoint, authStatus?.authStatus); + logDebug("AuthProvider:signinMenu", mode, selectedEndpoint); + } + } + } + async signinMenuForInstanceUrl(instanceUrl) { + const accessToken = await showAccessTokenInputBox(instanceUrl); + if (!accessToken) { + return; + } + const authState = await this.auth(instanceUrl, accessToken); + telemetryService.log("CodyVSCodeExtension:auth:fromToken", { + success: Boolean(authState?.isLoggedIn) + }); + await showAuthResultMessage(instanceUrl, authState?.authStatus); + } + async appAuth(uri) { + logDebug("AuthProvider:appAuth:init", ""); + const token = await secretStorage.get("SOURCEGRAPH_CODY_APP"); + if (token) { + const authStatus = await this.auth(LOCAL_APP_URL.href, token); + if (authStatus?.isLoggedIn) { + return; + } + } + if (!uri) { + return; + } + await env2.openExternal(Uri.parse(uri)); + } + async signoutMenu() { + telemetryService.log("CodyVSCodeExtension:logout:clicked"); + const { endpoint } = this.authStatus; + if (endpoint) { + await this.signout(endpoint); + logDebug("AuthProvider:signoutMenu", endpoint); + } + } + // Log user out of the selected endpoint (remove token from secret) + async signout(endpoint) { + if (isLocalApp(endpoint)) { + await this.appDetector.init(); + } + await secretStorage.deleteToken(endpoint); + await localStorage2.deleteEndpoint(); + await this.auth(endpoint, null); + this.authStatus.endpoint = ""; + await commands.executeCommand("setContext", CodyChatPanelViewType, false); + await commands.executeCommand("setContext", "cody.activated", false); + } + // Create Auth Status + async makeAuthStatus(config) { + const endpoint = config.serverEndpoint; + const token = config.accessToken; + if (!token || !endpoint) { + return { ...defaultAuthStatus, endpoint }; + } + if (this.config !== config || !this.client) { + this.config = config; + this.client = new SourcegraphGraphQLAPIClient(config); + } + const [{ enabled, version: version4 }, codyLLMConfiguration] = await Promise.all([ + this.client.isCodyEnabled(), + this.client.getCodyLLMConfiguration() + ]); + const configOverwrites = isError2(codyLLMConfiguration) ? void 0 : codyLLMConfiguration; + const isDotCom2 = this.client.isDotCom(); + const isDotComOrApp = isDotCom2 || isLocalApp(endpoint); + if (!isDotComOrApp) { + const currentUserID = await this.client.getCurrentUserId(); + const hasVerifiedEmail = false; + if (isError2(currentUserID)) { + if (isNetworkError2(currentUserID.message)) { + return { ...networkErrorAuthStatus, endpoint }; + } + } + return newAuthStatus( + endpoint, + isDotComOrApp, + !isError2(currentUserID), + hasVerifiedEmail, + enabled, + /* userCanUpgrade: */ + false, + version4, + configOverwrites + ); + } + const userInfo = isDotCom2 ? await this.client.getCurrentUserIdAndVerifiedEmailAndCodyPro() : await this.client.getCurrentUserIdAndVerifiedEmail(); + const isCodyEnabled = true; + if (isError2(userInfo)) { + if (isNetworkError2(userInfo.message)) { + return { ...networkErrorAuthStatus, endpoint }; + } + return { ...unauthenticatedStatus, endpoint }; + } + const userCanUpgrade = isDotCom2 && "codyProEnabled" in userInfo && typeof userInfo.codyProEnabled === "boolean" && !userInfo.codyProEnabled; + return newAuthStatus( + endpoint, + isDotComOrApp, + !!userInfo.id, + userInfo.hasVerifiedEmail, + isCodyEnabled, + userCanUpgrade, + version4, + configOverwrites + ); + } + getAuthStatus() { + return this.authStatus; + } + // It processes the authentication steps and stores the login info before sharing the auth status with chatview + async auth(uri, token, customHeaders) { + const endpoint = formatURL(uri) || ""; + const config = { + serverEndpoint: endpoint, + accessToken: token, + customHeaders: customHeaders || this.config.customHeaders + }; + const authStatus = await this.makeAuthStatus(config); + const isLoggedIn2 = isLoggedIn(authStatus); + authStatus.isLoggedIn = isLoggedIn2; + await this.storeAuthInfo(endpoint, token); + await this.syncAuthStatus(authStatus); + await commands.executeCommand("setContext", "cody.activated", isLoggedIn2); + return { authStatus, isLoggedIn: isLoggedIn2 }; + } + // Set auth status in case of reload + async reloadAuthStatus() { + this.config = await getFullConfig(); + await this.auth(this.config.serverEndpoint, this.config.accessToken, this.config.customHeaders); + } + // Set auth status and share it with chatview + async syncAuthStatus(authStatus) { + if (this.authStatus === authStatus) { + return; + } + this.authStatus = authStatus; + await this.announceNewAuthStatus(); + } + async announceNewAuthStatus() { + if (this.authStatus.endpoint === "init" || !this.webview) { + return; + } + const authStatus = this.getAuthStatus(); + for (const listener of this.listeners) { + listener(authStatus); + } + await commands.executeCommand("cody.auth.sync"); + } + /** + * Display app state in webview view that is used during Signin flow + */ + async syncLocalAppState(type2) { + if (this.authStatus.endpoint === "init" || !this.webview) { + return; + } + if (type2 !== "app" && !this.authStatus.isLoggedIn) { + await this.appAuth(); + } + await this.webview?.postMessage({ type: "app-state", isInstalled: true }); + } + // Register URI Handler (vscode://sourcegraph.cody-ai) for: + // - Deep linking into VS Code with Cody focused (e.g. from the App setup) + // - Resolving token sending back from sourcegraph.com and App + async tokenCallbackHandler(uri, customHeaders) { + const params = new URLSearchParams(uri.query); + const isApp = params.get("type") === "app"; + const token = params.get("code"); + const endpoint = isApp ? LOCAL_APP_URL.href : this.authStatus.endpoint; + if (!token || !endpoint) { + return; + } + const authState = await this.auth(endpoint, token, customHeaders); + telemetryService.log("CodyVSCodeExtension:auth:fromCallback", { + type: "callback", + from: isApp ? "app" : "web", + success: Boolean(authState?.isLoggedIn) + }); + if (authState?.isLoggedIn) { + const successMessage = isApp ? "Connected to Cody App" : `Signed in to ${endpoint}`; + await window2.showInformationMessage(successMessage); + } else { + await showAuthFailureMessage(endpoint); + } + } + /** Open callback URL in browser to get token from instance. */ + redirectToEndpointLogin(uri) { + const endpoint = formatURL(uri); + if (!endpoint) { + return; + } + if (env2.uiKind === 2 /* Web */) { + const newTokenNoCallbackUrl = new URL("/user/settings/tokens/new", endpoint); + void env2.openExternal(Uri.parse(newTokenNoCallbackUrl.href)); + void this.signinMenuForInstanceUrl(endpoint); + return; + } + const newTokenCallbackUrl = new URL("/user/settings/tokens/new/callback", endpoint); + newTokenCallbackUrl.searchParams.append( + "requestFrom", + this.appScheme === "vscode-insiders" ? "CODY_INSIDERS" : "CODY" + ); + this.authStatus.endpoint = endpoint; + void env2.openExternal(Uri.parse(newTokenCallbackUrl.href)); + } + // Refresh current endpoint history with the one from local storage + loadEndpointHistory() { + this.endpointHistory = localStorage2.getEndpointHistory() || []; + } + // Store endpoint in local storage, token in secret storage, and update endpoint history + async storeAuthInfo(endpoint, token) { + if (!endpoint) { + return; + } + await localStorage2.saveEndpoint(endpoint); + if (token) { + await secretStorage.storeToken(endpoint, token); + } + this.loadEndpointHistory(); + } + // Notifies the AuthProvider that the simplified onboarding experiment is + // kicking off an authorization flow. That flow ends when (if) this + // AuthProvider gets a call to tokenCallbackHandler. + authProviderSimplifiedWillAttemptAuth() { + this.authStatus.endpoint = DOTCOM_URL.toString(); + } +}; +function isNetworkError2(error) { + return error.includes("ENOTFOUND") || error.includes("ECONNREFUSED") || error.includes("ECONNRESET") || error.includes("EHOSTUNREACH"); +} +function formatURL(uri) { + if (!uri) { + return null; + } + if (!uri.startsWith("http")) { + uri = `https://${uri}`; + } + try { + const endpointUri = new URL(uri); + return endpointUri.href; + } catch { + console.error("Invalid URL"); + } + return null; +} +async function showAuthResultMessage(endpoint, authStatus) { + if (authStatus?.isLoggedIn) { + const authority = Uri.parse(endpoint).authority; + const isApp = endpoint === LOCAL_APP_URL.href; + const successMessage = isApp ? "Connected to Cody App" : `Signed in to ${authority}`; + await window2.showInformationMessage(successMessage); + } else { + await showAuthFailureMessage(endpoint); + } +} +async function showAuthFailureMessage(endpoint) { + const authority = Uri.parse(endpoint).authority; + await window2.showErrorMessage( + `Authentication failed. Please ensure Cody is enabled for ${authority} and verify your email address if required.` + ); +} + +// ../vscode/src/chat/MessageProvider.ts +var SAFETY_PROMPT_TOKENS = 100; +var nonDisplayTopics = /* @__PURE__ */ new Set(["fixup"]); +var MessageHandler2 = class { +}; +var MessageProvider = class _MessageProvider extends MessageHandler2 { + // chat id is used to identify chat session + sessionID = new Date(Date.now()).toUTCString(); + currentRequestID = void 0; + // input and chat history are shared across all MessageProvider instances + static inputHistory = []; + static chatHistory = {}; + isMessageInProgress = false; + cancelCompletionCallback = null; + // Allows recipes to hook up subscribers to process sub-streams of bot output + multiplexer = new BotResponseMultiplexer(); + transcript = new Transcript(); + disposables = []; + chat; + intentDetector; + guardrails; + editor; + authProvider; + contextProvider; + platform; + chatModel = void 0; + constructor(options2) { + super(); + if (TestSupport.instance) { + TestSupport.instance.messageProvider.set(this); + } + this.chat = options2.chat; + this.intentDetector = options2.intentDetector; + this.guardrails = options2.guardrails; + this.editor = options2.editor; + this.authProvider = options2.authProvider; + this.contextProvider = options2.contextProvider; + this.platform = options2.platform; + this.contextProvider.configurationChangeEvent.event(() => this.sendCodyCommands()); + } + async init(chatID) { + this.loadChatHistory(); + this.sendTranscript(); + this.sendHistory(); + await this.contextProvider.init(); + await this.sendCodyCommands(); + if (chatID) { + await this.restoreSession(chatID); + } + } + get isDotComUser() { + const endpoint = this.authProvider.getAuthStatus()?.endpoint || ""; + return isDotCom(endpoint); + } + async clearAndRestartSession() { + await this.saveTranscriptToChatHistory(); + this.createNewChatID(); + this.cancelCompletion(); + this.isMessageInProgress = false; + this.transcript.reset(); + this.handleSuggestions([]); + this.sendTranscript(); + this.sendHistory(); + telemetryService.log("CodyVSCodeExtension:chatReset:executed", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.messageProvider.chatReset", "executed"); + } + async clearHistory() { + _MessageProvider.chatHistory = {}; + _MessageProvider.inputHistory = []; + await localStorage2.removeChatHistory(); + this.transcript = new Transcript(); + await this.clearAndRestartSession(); + this.sendHistory(); + telemetryService.log("CodyVSCodeExtension:clearChatHistoryButton:clicked", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.messageProvider.clearChatHistoryButton", "clicked"); + } + /** + * Restores a session from a chatID + */ + async restoreSession(chatID) { + await this.saveTranscriptToChatHistory(); + this.cancelCompletion(); + this.createNewChatID(chatID); + this.transcript = Transcript.fromJSON(_MessageProvider.chatHistory[chatID]); + this.chatModel = this.transcript.chatModel; + await this.transcript.toJSON(); + this.sendTranscript(); + this.sendHistory(); + telemetryService.log("CodyVSCodeExtension:restoreChatHistoryButton:clicked", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.messageProvider.restoreChatHistoryButton", "clicked"); + } + createNewChatID(chatID) { + this.sessionID = chatID || new Date(Date.now()).toUTCString(); + } + sendPrompt(promptMessages, responsePrefix = "", multiplexerTopic = BotResponseMultiplexer.DEFAULT_TOPIC, recipeId, requestID) { + this.cancelCompletion(); + void commands.executeCommand("setContext", "cody.reply.pending", true); + const typewriter = new Typewriter({ + update: (content) => { + const displayText = reformatBotMessage(content, responsePrefix); + this.transcript.addAssistantResponse(content, displayText); + this.sendTranscript(); + }, + close: () => { + } + }); + let text = ""; + this.multiplexer.sub(multiplexerTopic, { + onResponse: (content) => { + text += content; + typewriter.update(text); + return Promise.resolve(); + }, + onTurnComplete: async () => { + typewriter.close(); + typewriter.stop(); + const lastInteraction = this.transcript.getLastInteraction(); + if (lastInteraction) { + const displayText = nonDisplayTopics.has(multiplexerTopic) ? void 0 : await this.guardrailsAnnotateAttributions(reformatBotMessage(text, responsePrefix)); + this.transcript.addAssistantResponse(text, displayText); + } + await this.onCompletionEnd(); + const codeCount = countGeneratedCode(text); + const metadata2 = lastInteraction?.getHumanMessage().metadata; + const responseText = this.isDotComUser ? text : void 0; + telemetryService.log( + "CodyVSCodeExtension:chatResponse:hasCode", + { ...codeCount, ...metadata2, requestID, responseText }, + { hasV2Event: true } + ); + if (codeCount?.charCount) { + telemetryRecorder.recordEvent( + `cody.messageProvider.chatResponse.${metadata2?.source || recipeId}`, + "hasCode", + { + metadata: { + ...codeCount + } + } + ); + } + this.currentRequestID = void 0; + } + }); + let textConsumed = 0; + this.cancelCompletionCallback = this.chat.chat( + promptMessages, + { + onChange: (text2) => { + if (textConsumed === 0 && responsePrefix) { + void this.multiplexer.publish(responsePrefix); + } + text2 = text2.slice(textConsumed); + textConsumed += text2.length; + void this.multiplexer.publish(text2); + }, + onComplete: () => { + void this.multiplexer.notifyTurnComplete(); + }, + onError: (err2, statusCode) => { + logError("ChatViewProvider:onError", err2); + if (isAbortError2(err2)) { + this.isMessageInProgress = false; + this.sendTranscript(); + return; + } + if (statusCode && statusCode >= 400 && statusCode <= 410) { + this.authProvider.auth( + this.contextProvider.config.serverEndpoint, + this.contextProvider.config.accessToken, + this.contextProvider.config.customHeaders + ).catch((error) => console.error(error)); + logError("ChatViewProvider:onError:unauthUser", err2, { verbose: { statusCode } }); + } + if (isNetworkError2(err2)) { + err2 = "Cody could not respond due to network error."; + } + this.handleError(err2, "transcript"); + void this.onCompletionEnd(true); + console.error(`Completion request failed: ${err2}`); + } + }, + { model: this.chatModel } + ); + } + cancelCompletion() { + this.currentRequestID = void 0; + this.cancelCompletionCallback?.(); + this.cancelCompletionCallback = null; + } + async onCompletionEnd(ignoreEmbeddingsError = false) { + this.currentRequestID = void 0; + this.isMessageInProgress = false; + this.cancelCompletionCallback = null; + this.sendTranscript(); + await this.saveTranscriptToChatHistory(); + this.sendHistory(); + void commands.executeCommand("setContext", "cody.reply.pending", false); + if (!ignoreEmbeddingsError) { + this.logEmbeddingsSearchErrors(); + } + } + async abortCompletion() { + this.currentRequestID = void 0; + await this.saveTranscriptToChatHistory(); + this.cancelCompletion(); + await this.multiplexer.notifyTurnComplete(); + await this.onCompletionEnd(); + } + getRecipe(id) { + return this.platform.recipes.find((recipe) => recipe.id === id); + } + async executeRecipe(recipeId, humanChatInput = "", source2, userInputContextFiles, addEnhancedContext = true) { + if (this.isMessageInProgress) { + this.handleError("Cannot execute multiple actions. Please wait for the current action to finish.", "system"); + return; + } + const requestID = v4_default(); + this.currentRequestID = requestID; + if (source2 === "chat" && this.contextProvider.config.experimentalChatPredictions) { + void this.runRecipeForSuggestion("next-questions", humanChatInput, source2); + } + const command = await this.chatCommandsFilter( + humanChatInput, + recipeId, + { source: source2, requestID }, + userInputContextFiles + ); + if (!command) { + return; + } + humanChatInput = command?.text; + recipeId = command?.recipeId; + const recipe = this.getRecipe(recipeId); + if (!recipe) { + logDebug("MessageProvider:executeRecipe", "no recipe found"); + return; + } + logDebug("MessageProvider:executeRecipe", recipeId, { verbose: humanChatInput }); + this.multiplexer = new BotResponseMultiplexer(); + let interaction = null; + try { + interaction = await recipe.getInteraction(humanChatInput, { + editor: this.editor, + intentDetector: this.intentDetector, + codebaseContext: this.contextProvider.context, + responseMultiplexer: this.multiplexer, + addEnhancedContext, + userInputContextFiles + }); + } catch (error) { + this.handleError("Fail to submit question", "system"); + console.error(error); + return; + } + if (!interaction) { + return; + } + const errorMsg = interaction?.getAssistantMessage()?.error; + if (errorMsg !== void 0) { + await this.addCustomInteraction({ assistantResponse: errorMsg }, interaction); + return; + } + this.isMessageInProgress = true; + interaction.setMetadata({ requestID, source: source2 }); + this.transcript.addInteraction(interaction); + const contextSummary = { + embeddings: 0, + local: 0, + user: 0 + // context added by user with @ command + }; + switch (recipeId) { + case "local-indexed-keyword-search": + case "context-search": + this.sendTranscript(); + await this.onCompletionEnd(); + break; + default: { + this.sendTranscript(); + const { prompt: prompt2, contextFiles, preciseContexts } = await this.transcript.getPromptForLastInteraction( + getPreamble(this.contextProvider.context.getCodebase()), + this.maxPromptTokens + ); + this.transcript.setUsedContextFilesForLastInteraction(contextFiles, preciseContexts); + this.sendPrompt( + prompt2, + interaction.getAssistantMessage().prefix ?? "", + recipe.multiplexerTopic, + recipeId, + requestID + ); + this.sendTranscript(); + await this.saveTranscriptToChatHistory(); + contextFiles.map((file) => { + if (file.source === "embeddings") { + contextSummary.embeddings++; + } else if (file.source === "user") { + contextSummary.user++; + } else { + contextSummary.local++; + } + }); + } + } + const promptText = this.isDotComUser ? interaction.getHumanMessage().text : void 0; + const properties2 = { contextSummary, source: source2, requestID, chatModel: this.chatModel, promptText }; + telemetryService.log(`CodyVSCodeExtension:recipe:${recipe.id}:executed`, properties2, { hasV2Event: true }); + telemetryRecorder.recordEvent(`cody.recipe.${recipe.id}`, "executed", { metadata: { ...contextSummary } }); + } + async runRecipeForSuggestion(recipeId, humanChatInput = "", source2) { + const recipe = this.getRecipe(recipeId); + if (!recipe) { + return; + } + const multiplexer = new BotResponseMultiplexer(); + const transcript = Transcript.fromJSON(await this.transcript.toJSON()); + const interaction = await recipe.getInteraction(humanChatInput, { + editor: this.editor, + intentDetector: this.intentDetector, + codebaseContext: this.contextProvider.context, + responseMultiplexer: multiplexer, + // TODO(dpc): Support initial chats *without* enhanced context + addEnhancedContext: this.transcript.isEmpty + }); + if (!interaction) { + return; + } + transcript.addInteraction(interaction); + const { prompt: prompt2, contextFiles } = await transcript.getPromptForLastInteraction( + getPreamble(this.contextProvider.context.getCodebase()), + this.maxPromptTokens + ); + transcript.setUsedContextFilesForLastInteraction(contextFiles); + const args3 = { requestID: this.currentRequestID, source: source2 }; + telemetryService.log(`CodyVSCodeExtension:recipe:${recipe.id}:executed`, args3, { hasV2Event: true }); + let text = ""; + multiplexer.sub(BotResponseMultiplexer.DEFAULT_TOPIC, { + onResponse: (content) => { + text += content; + return Promise.resolve(); + }, + onTurnComplete: () => { + const suggestions = text.split("\n").slice(0, 3).map((line) => line.trim().replace(/^-/, "").trim()); + this.handleSuggestions(suggestions); + return Promise.resolve(); + } + }); + let textConsumed = 0; + this.chat.chat(prompt2, { + onChange: (text2) => { + text2 = text2.slice(textConsumed); + textConsumed += text2.length; + void multiplexer.publish(text2); + }, + onComplete: () => { + void multiplexer.notifyTurnComplete(); + }, + onError: (error, statusCode) => { + console.error(error, statusCode); + } + }); + } + async guardrailsAnnotateAttributions(text) { + if (!this.contextProvider.config.experimentalGuardrails) { + return text; + } + const result = await annotateAttribution(this.guardrails, text); + if (result.codeBlocks > 0) { + telemetryService.log( + "CodyVSCodeExtension:guardrails:annotate", + { + codeBlocks: result.codeBlocks, + duration: result.duration + }, + { hasV2Event: true } + ); + telemetryRecorder.recordEvent("cody.guardrails.annotate", "executed", { + // Convert nanoseconds to milliseconds to match other telemetry. + metadata: { codeBlocks: result.codeBlocks, durationMs: result.duration / 1e6 } + }); + } + return result.text; + } + /** + * Send transcript to view + */ + sendTranscript() { + const chatTranscript = this.transcript.toChat(); + this.handleTranscript(chatTranscript, this.isMessageInProgress); + } + isCustomCommandAction(title) { + const customPromptActions = ["add", "get", "menu"]; + return customPromptActions.includes(title); + } + /** + * Handle instructions returned from webview in regard to a Cody Command + * Finds and execute a Cody command + */ + async executeCustomCommand(title, type2) { + title = title.trim(); + switch (title) { + case "get": + await this.sendCodyCommands(); + break; + case "menu": + await this.editor.controllers.command?.menu("custom"); + await this.sendCodyCommands(); + break; + case "add": + if (!type2) { + break; + } + await this.editor.controllers.command?.configFileAction("add", type2); + telemetryService.log("CodyVSCodeExtension:addCommandButton:clicked", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.addCommandButton", "clicked"); + break; + } + return this.executeRecipe("custom-prompt", title, "custom-commands"); + } + async chatCommandsFilter(text, recipeId, eventTrace, userContextFiles) { + const source2 = eventTrace?.source || void 0; + if (recipeId === "inline-chat") { + return { text, recipeId, source: source2 }; + } + text = text.trim(); + if (!text?.startsWith("/")) { + return { text, recipeId, source: source2 }; + } + switch (true) { + case text === "/": + return commands.executeCommand("cody.action.commands.menu", source2); + case text === "/commands-settings": + telemetryService.log("CodyVSCodeExtension:commandConfigMenuButton:clicked", eventTrace, { + hasV2Event: true + }); + telemetryRecorder.recordEvent(`cody.sidebar.commandConfigMenuButton.${source2}`, "clicked"); + return commands.executeCommand("cody.settings.commands"); + case (/^\/o(pen)?\s/.test(text) && this.editor.controllers.command !== void 0): + telemetryService.log("CodyVSCodeExtension:command:openFile:executed", eventTrace, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.command.openFile", "executed"); + return this.editor.controllers.command?.open(text.split(" ")[1]); + case /^\/r(eset)?$/.test(text): + telemetryService.log("CodyVSCodeExtension:command:resetChat:executed", eventTrace, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.command.resetChat", "executed"); + return this.clearAndRestartSession(); + case /^\/symf(?:\s|$)/.test(text): + telemetryService.log("CodyVSCodeExtension:command:symf:executed", eventTrace, { hasV2Event: true }); + return { text, recipeId: "local-indexed-keyword-search" }; + case /^\/s(earch)?\s/.test(text): + return { text, recipeId: "context-search" }; + case /^\/edit(\s)?/.test(text): + return commands.executeCommand("cody.command.edit-code", { instruction: text }, source2); + case /^\/ask(\s)?/.test(text): { + const question = text.replace("/ask", "").trimStart() || await showAskQuestionQuickPick(); + return { text: question, recipeId: "chat-question", source: source2 }; + } + default: { + if (!this.editor.getActiveTextEditor()?.filePath) { + const assistantResponse = "Command failed. Please open a file and try again."; + return this.addCustomInteraction({ assistantResponse, text, source: source2 }); + } + const commandRunnerID = await this.editor.controllers.command?.addCommand( + text, + eventTrace?.requestID, + userContextFiles + ); + if (!commandRunnerID) { + return; + } + if (commandRunnerID === "invalid") { + const assistantResponse = `__${text}__ is not a valid command`; + return this.addCustomInteraction({ assistantResponse, text, source: source2 }); + } + return { text: commandRunnerID, recipeId: "custom-prompt", source: source2 }; + } + } + } + /** + * Adds a custom interaction to the transcript. + * + * This method adds a new Interaction with the given assistant response and human input to the transcript. + * It then sends the updated transcript, checks for transcript errors, and saves the transcript to the chat history + */ + async addCustomInteraction(args3, interaction) { + const customInteraction = await newInteraction(args3); + const updatedInteraction = interaction || customInteraction; + updatedInteraction.setMetadata({ requestID: this.currentRequestID, source: args3.source }); + this.transcript.addInteraction(updatedInteraction); + this.sendTranscript(); + await this.saveTranscriptToChatHistory(); + } + /** + * Send list of Cody commands (default and custom) to webview + */ + async sendCodyCommands() { + const send = async () => { + await this.editor.controllers.command?.refresh(); + const commands3 = await this.editor.controllers.command?.getAllCommands(true) || []; + void this.handleCodyCommands(commands3); + }; + this.editor.controllers.command?.setMessenger(send); + await send(); + } + async saveTranscriptToChatHistory() { + if (this.transcript.isEmpty) { + return; + } + _MessageProvider.chatHistory[this.sessionID] = await this.transcript.toJSON(); + await this.saveChatHistory(); + this.sendHistory(); + } + /** + * Save chat history + */ + async saveChatHistory() { + const userHistory = { + chat: _MessageProvider.chatHistory, + input: _MessageProvider.inputHistory + }; + await localStorage2.setChatHistory(userHistory); + } + /** + * Delete history from current chat history and local storage + */ + async deleteHistory(chatID) { + delete _MessageProvider.chatHistory[chatID]; + await localStorage2.deleteChatHistory(chatID); + this.sendHistory(); + telemetryService.log("CodyVSCodeExtension:deleteChatHistoryButton:clicked", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.deleteChatHistoryButton", "clicked"); + } + /** + * Loads chat history from local storage + */ + loadChatHistory() { + const localHistory = localStorage2.getChatHistory(); + if (localHistory) { + _MessageProvider.chatHistory = localHistory?.chat; + _MessageProvider.inputHistory = localHistory.input; + } + } + /** + * Export chat history to file system + */ + async exportHistory() { + telemetryService.log("CodyVSCodeExtension:exportChatHistoryButton:clicked", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.exportChatHistoryButton", "clicked"); + const historyJson = _MessageProvider.chatHistory; + const exportPath = await window2.showSaveDialog({ filters: { "Chat History": ["json"] } }); + if (!exportPath) { + return; + } + try { + const logContent = new TextEncoder().encode(JSON.stringify(historyJson)); + await workspace.fs.writeFile(exportPath, logContent); + void window2.showInformationMessage("Chat history exported successfully.", "Open").then((choice) => { + if (choice === "Open") { + void commands.executeCommand("vscode.open", exportPath); + } + }); + } catch (error) { + logError("MessageProvider:exportHistory", "Failed to export chat history", error); + } + } + /** + * Send history to view + */ + sendHistory() { + this.handleHistory({ + chat: _MessageProvider.chatHistory, + input: _MessageProvider.inputHistory + }); + } + /** + * Send embedding connections or results error to output + */ + logEmbeddingsSearchErrors() { + if (this.contextProvider.config.useContext !== "embeddings") { + return; + } + const searchErrors = this.contextProvider.context.getEmbeddingSearchErrors(); + if (this.contextProvider.context.checkEmbeddingsConnection() && searchErrors) { + this.handleError(searchErrors, "transcript"); + logError("ChatViewProvider:onLogEmbeddingsErrors", "", { verbose: searchErrors }); + } + } + transcriptForTesting(testing) { + if (!testing) { + console.error("used ForTesting method without test support object"); + return []; + } + return this.transcript.toChat(); + } + fixupTasksForTesting(testing) { + if (!testing) { + console.error("used ForTesting method without test support object"); + return []; + } + if (!this.editor.controllers.fixups) { + throw new Error("no fixup controller"); + } + return this.editor.controllers.fixups.getTasks(); + } + dispose() { + for (const disposable of this.disposables) { + disposable.dispose(); + } + this.disposables = []; + } + get maxPromptTokens() { + const authStatus = this.authProvider.getAuthStatus(); + const codyConfig = workspace.getConfiguration("cody"); + const tokenLimit = codyConfig.get("provider.limit.prompt"); + const localSolutionLimit = codyConfig.get("provider.limit.solution"); + if (tokenLimit && localSolutionLimit) { + return tokenLimit - localSolutionLimit; + } + const solutionLimit = (localSolutionLimit || ANSWER_TOKENS) + SAFETY_PROMPT_TOKENS; + if (authStatus.configOverwrites?.chatModelMaxTokens) { + return authStatus.configOverwrites.chatModelMaxTokens - solutionLimit; + } + return DEFAULT_MAX_TOKENS - solutionLimit; + } +}; +function isAbortError2(error) { + return error === "aborted" || error === "socket hang up"; +} + +// ../vscode/src/chat/chat-view/ChatPanelProvider.ts +var ChatPanelProvider = class extends MessageProvider { + extensionUri; + contextFilesQueryCancellation; + webview; + webviewPanel = void 0; + treeView; + constructor({ treeView, extensionUri, ...options2 }) { + super(options2); + this.extensionUri = extensionUri; + this.treeView = treeView; + } + async onDidReceiveMessage(message) { + switch (message.command) { + case "ready": + await this.authProvider.announceNewAuthStatus(); + await this.handleWebviewContext(); + break; + case "initialized": + logDebug("ChatPanelProvider:onDidReceiveMessage", "initialized"); + await this.init(this.startUpChatID); + this.handleChatModel(); + break; + case "submit": + return this.onHumanMessageSubmitted( + message.text, + message.submitType, + message.contextFiles, + message.addEnhancedContext + ); + case "edit": + this.transcript.removeLastInteraction(); + await this.onHumanMessageSubmitted(message.text, "user"); + telemetryService.log("CodyVSCodeExtension:editChatButton:clicked", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.editChatButton", "clicked"); + break; + case "abort": + await this.abortCompletion(); + telemetryService.log( + "CodyVSCodeExtension:abortButton:clicked", + { source: "sidebar" }, + { hasV2Event: true } + ); + telemetryRecorder.recordEvent("cody.sidebar.abortButton", "clicked"); + break; + case "chatModel": + this.chatModel = message.model; + this.transcript.setChatModel(message.model); + break; + case "executeRecipe": + await this.executeRecipe(message.recipe, "", "chat"); + break; + case "getUserContext": + await this.handleContextFiles(message.query); + break; + case "custom-prompt": + await this.onCustomPromptClicked(message.title, message.value); + break; + case "insert": + await handleCodeFromInsertAtCursor(message.text, message.metadata); + break; + case "newFile": + handleCodeFromSaveToNewFile(message.text, message.metadata); + await this.editor.createWorkspaceFile(message.text); + break; + case "copy": + await handleCopiedCode(message.text, message.eventType === "Button", message.metadata); + break; + case "event": + telemetryService.log(message.eventName, message.properties); + break; + case "links": + void openExternalLinks(message.value); + break; + case "openFile": + await openFilePath(message.filePath, this.webviewPanel?.viewColumn, message.range); + break; + case "openLocalFileWithRange": + await openLocalFileWithRange(message.filePath, message.range); + break; + case "embeddings/index": + this.contextProvider.localEmbeddingsIndexRepository(); + break; + default: + this.handleError("Invalid request type from Webview Panel", "system"); + } + } + async onHumanMessageSubmitted(text, submitType, contextFiles, addEnhancedContext = true) { + logDebug("ChatPanelProvider:onHumanMessageSubmitted", "chat", { verbose: { text, submitType } }); + MessageProvider.inputHistory.push(text); + if (submitType === "suggestion") { + const args3 = { requestID: this.currentRequestID }; + telemetryService.log("CodyVSCodeExtension:chatPredictions:used", args3, { hasV2Event: true }); + } + return this.executeRecipe("chat-question", text, "chat", contextFiles, addEnhancedContext); + } + /** + * Process custom command click + */ + async onCustomPromptClicked(title, commandType = "user") { + telemetryService.log("CodyVSCodeExtension:command:customMenu:clicked", void 0, { hasV2Event: true }); + logDebug("ChatPanelProvider:onCustomPromptClicked", title); + if (!this.isCustomCommandAction(title)) { + await this.setWebviewView("chat"); + } + await this.executeCustomCommand(title, commandType); + } + /** + * For Webview panel only + * This sent the initiate contextStatus and config to webview + */ + async handleWebviewContext() { + const authStatus = this.authProvider.getAuthStatus(); + const editorContext = this.editor.getActiveTextEditor(); + const contextStatus = { + mode: this.contextProvider.config.useContext, + endpoint: authStatus.endpoint || void 0, + connection: this.contextProvider.context.checkEmbeddingsConnection(), + embeddingsEndpoint: this.contextProvider.context.embeddingsEndpoint, + codebase: this.contextProvider.context.getCodebase(), + filePath: editorContext ? workspace.asRelativePath(editorContext.filePath) : void 0, + selectionRange: editorContext?.selectionRange, + supportsKeyword: true + }; + void this.webview?.postMessage({ + type: "contextStatus", + contextStatus + }); + const localProcess = await this.authProvider.appDetector.getProcessInfo(authStatus.isLoggedIn); + const config = { + ...localProcess, + debugEnable: this.contextProvider.config.debugEnable, + serverEndpoint: this.contextProvider.config.serverEndpoint, + experimentalChatPanel: this.contextProvider.config.experimentalChatPanel + }; + void this.webview?.postMessage({ + type: "config", + config, + authStatus + }); + } + /** + * Send transcript to webview + */ + handleTranscript(transcript, isMessageInProgress) { + void this.webview?.postMessage({ + type: "transcript", + messages: transcript, + isMessageInProgress, + chatID: this.sessionID + }); + const text = this.transcript.getLastInteraction()?.getHumanMessage()?.displayText || "New Chat"; + if (this.webviewPanel) { + this.webviewPanel.title = text.length > 10 ? `${text?.slice(0, 20)}...` : text; + } + } + /** + * Send transcript error to webview + */ + handleTranscriptErrors(transcriptError) { + void this.webview?.postMessage({ type: "transcript-errors", isTranscriptError: transcriptError }); + } + handleSuggestions(suggestions) { + void this.webview?.postMessage({ + type: "suggestions", + suggestions + }); + } + /** + * Update chat history in Tree View + */ + handleHistory(userHistory) { + void this.webview?.postMessage({ + type: "history", + messages: userHistory + }); + void this.treeView.updateTree(createCodyChatTreeItems(userHistory)); + } + /** + * Sends the available chat models to the webview based on the authenticated endpoint. + * Maps over the allowed models, adding a 'default' property if the model matches the currently selected chatModel. + */ + handleChatModel() { + const endpoint = this.authProvider.getAuthStatus()?.endpoint; + const allowedModels = getChatModelsForWebview(endpoint); + const models = this.chatModel ? allowedModels.map((model) => { + return { + ...model, + default: model.model === this.chatModel + }; + }) : allowedModels; + void this.webview?.postMessage({ + type: "chatModels", + models + }); + } + /** + * Display error message in webview, either as part of the transcript or as a banner alongside the chat. + */ + handleError(errorMsg, type2) { + if (type2 === "transcript") { + this.transcript.addErrorAsAssistantResponse(errorMsg); + void this.webview?.postMessage({ type: "transcript-errors", isTranscriptError: true }); + return; + } + void this.webview?.postMessage({ type: "errors", errors: errorMsg }); + } + handleCodyCommands(prompts2) { + void this.webview?.postMessage({ + type: "custom-prompts", + prompts: prompts2 + }); + } + async handleContextFiles(query) { + if (!query.length) { + const tabs = getOpenTabsContextFile(); + await this.webview?.postMessage({ + type: "userContextFiles", + context: tabs + }); + return; + } + const cancellation = new CancellationTokenSource(); + try { + const MAX_RESULTS = 20; + if (query.startsWith("#")) { + const symbolResults = await getSymbolContextFiles(query.slice(1), MAX_RESULTS); + if (!cancellation.token.isCancellationRequested) { + await this.webview?.postMessage({ + type: "userContextFiles", + context: symbolResults + }); + } + } else { + const fileResults = await getFileContextFiles(query, MAX_RESULTS, cancellation.token); + if (!cancellation.token.isCancellationRequested) { + await this.webview?.postMessage({ + type: "userContextFiles", + context: fileResults + }); + } + } + } catch (error) { + console.error("Error retrieving context files:", error); + } finally { + this.contextFilesQueryCancellation?.cancel(); + this.contextFilesQueryCancellation = cancellation; + } + } + /** + * + * @param notice Triggers displaying a notice. + * @param notice.key The key of the notice to display. + */ + triggerNotice(notice) { + void this.webview?.postMessage({ + type: "notice", + notice + }); + } + /** + * Set webview view + * NOTE: Panel doesn't support view other than 'chat' currently + */ + async setWebviewView(view) { + await this.webview?.postMessage({ + type: "view", + messages: view + }); + if (view !== "chat") { + return; + } + if (!this.webviewPanel) { + await this.createWebviewPanel(-2 /* Beside */, this.sessionID); + } + this.webviewPanel?.reveal(); + } + startUpChatID = void 0; + async clearChatHistory(chatID) { + if (chatID) { + await this.deleteHistory(chatID); + return; + } + await this.clearHistory(); + this.webviewPanel?.dispose(); + } + /** + * Creates the webview panel for the Cody chat interface if it doesn't already exist. + */ + async createWebviewPanel(activePanelViewColumn, chatID, lastQuestion) { + if (!this.authProvider.getAuthStatus()?.isLoggedIn || !this.contextProvider.config.experimentalChatPanel) { + await commands.executeCommand("setContext", CodyChatPanelViewType, false); + return; + } + telemetryService.log("CodyVSCodeExtension:createWebviewPanel:clicked", void 0, { hasV2Event: true }); + if (this.webviewPanel) { + return this.webviewPanel; + } + this.startUpChatID = chatID; + const viewType = CodyChatPanelViewType; + const text = lastQuestion && lastQuestion?.length > 10 ? `${lastQuestion?.slice(0, 20)}...` : lastQuestion; + const panelTitle = text || "New Chat"; + const viewColumn = activePanelViewColumn || -2 /* Beside */; + const webviewPath = Uri.joinPath(this.extensionUri, "dist", "webviews"); + const panel = window2.createWebviewPanel( + viewType, + panelTitle, + { viewColumn, preserveFocus: true }, + { + enableScripts: true, + retainContextWhenHidden: true, + enableFindWidget: true, + localResourceRoots: [webviewPath], + enableCommandUris: true + } + ); + return this.registerWebviewPanel(panel); + } + /** + * Revives the chat panel when the extension is reactivated. + * Registers the existing webviewPanel and sets the chatID. + */ + async revive(webviewPanel, chatID) { + telemetryService.log("CodyVSCodeExtension:ChatPanelProvider:revive", void 0, { hasV2Event: true }); + this.startUpChatID = chatID; + return this.registerWebviewPanel(webviewPanel); + } + /** + * Registers the given webview panel by setting up its options, icon, and handlers. + * Also stores the panel reference and disposes it when closed. + */ + async registerWebviewPanel(panel) { + const webviewPath = Uri.joinPath(this.extensionUri, "dist", "webviews"); + panel.iconPath = Uri.joinPath(this.extensionUri, "resources", "cody.png"); + panel.webview.options = { + enableScripts: true, + localResourceRoots: [webviewPath], + enableCommandUris: true + }; + await addWebviewViewHTML(this.extensionUri, panel); + this.webviewPanel = panel; + this.webview = panel.webview; + this.contextProvider.webview = panel.webview; + this.authProvider.webview = panel.webview; + panel.onDidDispose(() => { + this.webviewPanel = void 0; + panel.dispose(); + }); + this.disposables.push(panel.webview.onDidReceiveMessage((message) => this.onDidReceiveMessage(message))); + await commands.executeCommand("setContext", CodyChatPanelViewType, true); + return panel; + } +}; + +// ../vscode/src/chat/chat-view/SimpleChatPanelProvider.ts +var path12 = __toESM(require("path")); + +// ../vscode/src/local-context/enhanced-context-status.ts +var ContextStatusAggregator = class _ContextStatusAggregator { + static TAG = "ContextStatusAggregator"; + disposables = /* @__PURE__ */ new Set(); + statusEmitter = new EventEmitter(); + providerStatusMap = /* @__PURE__ */ new Map(); + // Whether we have been notified of status changes, but are yet to pass that + // notification on. We do this to de-bounce updates from multiple status + // providers in one turn of the event loop. + pendingPublish = false; + // Disposes this ContextStatusAggregator. + dispose() { + for (const disposable of this.disposables) { + disposable.dispose(); + } + this.providerStatusMap = void 0; + } + // Adds a provider to this ContextStatusAggregator. The aggregator will + // subscribe to the provider and aggregate its updates into a merged status. + // To remove this provider, dispose of the returned disposable. + // + // If the provider is disposable, it should dispose of the registration in + // its dispose method. Otherwise this ContextStatusAggregator may continue + // to poll its status property, and show its status in the aggregate status. + addProvider(provider) { + if (this.providerStatusMap === void 0) { + throw new Error("ContextStatusPublisher has been disposed"); + } + const disposable = provider.onDidChangeStatus((putativeProvider) => { + if (provider !== putativeProvider) { + logDebug(_ContextStatusAggregator.TAG, "got onDidChangeStatus event but passed mismatched provider"); + } + this.providerDidChangeStatus(provider); + }); + this.disposables.add(disposable); + this.providerStatusMap.set(provider, "needs-status"); + this.providerDidChangeStatus(provider); + return { + dispose: () => { + if (this.providerStatusMap) { + this.providerStatusMap.delete(provider); + this.disposables.delete(disposable); + disposable.dispose(); + this.publishStatus(); + } + } + }; + } + // Records that the provider's state is dirty, and schedules an update. + providerDidChangeStatus(provider) { + if (this.providerStatusMap === void 0) { + return; + } + if (!this.providerStatusMap.has(provider)) { + return; + } + this.providerStatusMap.set(provider, "needs-status"); + this.publishStatus(); + } + // Aggregates and publishes status asynchronously. Multiple context status + // providers updating "at once" will be coalesced into one update. + publishStatus() { + if (this.pendingPublish) { + return; + } + this.pendingPublish = true; + void Promise.resolve().then(() => { + this.pendingPublish = false; + this.statusEmitter.fire(this); + }); + } + // ContextStatusProvider implementation of onDidChangeStatus. The + // ContextStatusAggregator can be stacked to combine per-workspace and + // per-chat context status. + onDidChangeStatus(callback) { + return this.statusEmitter.event(callback); + } + // Computes the merged context status. This may throw if any of the + // aggregated providers' status throw. + get status() { + if (this.providerStatusMap === void 0) { + throw new Error("ContextStatusPublisher has been disposed"); + } + const groupBy = {}; + for (let [provider, status] of this.providerStatusMap.entries()) { + if (status === "needs-status") { + status = provider.status; + if (this.providerStatusMap.get(provider) !== "needs-status") { + logDebug( + _ContextStatusAggregator.TAG, + "ContextStatusProvider.status should only report status, not change state", + provider + ); + } + status = JSON.parse(JSON.stringify(status)); + this.providerStatusMap.set(provider, status); + } + for (const group of status) { + if (group.name in groupBy) { + groupBy[group.name].providers.push(...group.providers); + } else { + groupBy[group.name] = { + name: group.name, + providers: [...group.providers] + }; + } + } + } + for (const groups of Object.values(groupBy)) { + groups.providers.sort((a, b) => a.kind.localeCompare(b.kind, "en-US")); + } + return [...Object.values(groupBy)]; + } + // TODO: Create a publisher to push into the webview + // TODO: Hook in local embeddings + // TODO: Hook in cloud embeddings + // TODO: Hook in symf + // TODO: Hook in graph + // TODO: Hook in the Cody: building code index ... notification pusher's + // state +}; + +// ../vscode/src/chat/chat-view/chat-helpers.ts +var relativeFileUrlScheme = "cody-file-relative"; +var embeddingsUrlScheme = "cody-embeddings"; +function relativeFileUrl(fileName, range) { + return Uri.from({ + scheme: relativeFileUrlScheme, + path: fileName, + fragment: range && `L${range.start.line}-${range.end.line}` + }); +} +function stripContextWrapper(text) { + { + const start4 = text.indexOf("Use following code snippet"); + if (start4 >= 0) { + text = text.slice(start4); + const lines2 = text.split("\n"); + return lines2.slice(2, -1).join("\n"); + } + } + { + const start4 = text.indexOf("Use the following text from file"); + if (start4 >= 0) { + text = text.slice(start4); + const lines2 = text.split("\n"); + return lines2.slice(1).join("\n"); + } + } + { + const start4 = text.indexOf("My selected "); + const selectedStart = text.indexOf(""); + const selectedEnd = text.indexOf(""); + if (start4 >= 0 && selectedStart >= 0 && selectedEnd >= 0) { + text = text.slice(selectedStart, selectedEnd); + const lines2 = text.split("\n"); + return lines2.slice(1, -1).join("\n"); + } + } + return void 0; +} +function contextItemsToContextFiles(items) { + const contextFiles = []; + for (const item of items) { + let relFsPath = item.uri.fsPath; + if (relFsPath.startsWith("/")) { + relFsPath = relFsPath.slice(1); + } + contextFiles.push({ + fileName: relFsPath, + source: "embeddings", + range: rangeToActiveTextEditorSelectionRange(item.range), + content: item.text + }); + } + return contextFiles; +} +function rangeToActiveTextEditorSelectionRange(range) { + if (!range) { + return void 0; + } + return { + start: { + line: range.start.line, + character: range.start.character + }, + end: { + line: range.end.line, + character: range.end.character + } + }; +} + +// ../vscode/src/chat/chat-view/ChatHistoryManager.ts +var ChatHistoryManager = class { + getChat(sessionID) { + const chatHistory = localStorage2.getChatHistory(); + if (!chatHistory) { + return null; + } + return chatHistory.chat[sessionID]; + } + async saveChat(chat) { + let history = localStorage2.getChatHistory(); + if (!history) { + history = { + chat: {}, + input: [] + }; + } + history.chat[chat.id] = chat; + await localStorage2.setChatHistory(history); + return history; + } +}; + +// ../vscode/src/chat/chat-view/SimpleChatModel.ts +var SimpleChatModel = class { + constructor(modelID, messagesWithContext = [], sessionID = new Date(Date.now()).toUTCString()) { + this.modelID = modelID; + this.messagesWithContext = messagesWithContext; + this.sessionID = sessionID; + } + isEmpty() { + return this.messagesWithContext.length === 0; + } + setNewContextUsed(newContextUsed) { + const lastMessage = this.messagesWithContext.at(-1); + if (!lastMessage) { + throw new Error("no last message"); + } + if (lastMessage.message.speaker !== "human") { + throw new Error("Cannot set new context used for bot message"); + } + lastMessage.newContextUsed = newContextUsed; + } + addHumanMessage(message) { + if (this.messagesWithContext.at(-1)?.message.speaker === "human") { + throw new Error("Cannot add a user message after a user message"); + } + this.messagesWithContext.push({ + message: { + speaker: "human", + ...message + } + }); + } + addBotMessage(message, displayText) { + if (this.messagesWithContext.at(-1)?.message.speaker === "assistant") { + throw new Error("Cannot add a bot message after a bot message"); + } + this.messagesWithContext.push({ + displayText, + message: { + speaker: "assistant", + ...message + } + }); + } + updateLastHumanMessage(message) { + const lastMessage = this.messagesWithContext.at(-1); + if (!lastMessage) { + return; + } + if (lastMessage.message.speaker === "human") { + this.messagesWithContext.pop(); + } else if (lastMessage.message.speaker === "assistant") { + this.messagesWithContext.splice(-2, 2); + } + this.addHumanMessage(message); + } + getMessagesWithContext() { + return this.messagesWithContext; + } + /** + * Serializes to the legacy transcript JSON format + */ + toTranscriptJSON() { + const interactions = []; + for (let i = 0; i < this.messagesWithContext.length; i += 2) { + const humanMessage = this.messagesWithContext[i]; + const botMessage = this.messagesWithContext[i + 1]; + if (humanMessage.message.speaker !== "human") { + throw new Error("SimpleChatModel.toTranscriptJSON: expected human message, got bot"); + } + if (botMessage.message.speaker !== "assistant") { + throw new Error("SimpleChatModel.toTranscriptJSON: expected bot message, got human"); + } + interactions.push({ + humanMessage: { + speaker: humanMessage.message.speaker, + text: humanMessage.message.text, + displayText: getDisplayText(humanMessage) + }, + assistantMessage: { + speaker: botMessage.message.speaker, + text: botMessage.message.text, + displayText: getDisplayText(botMessage) + }, + usedContextFiles: contextItemsToContextFiles(humanMessage.newContextUsed ?? []), + // These fields are unused on deserialization + fullContext: [], + usedPreciseContext: [], + timestamp: "n/a" + }); + } + return { + id: this.sessionID, + chatModel: this.modelID, + lastInteractionTimestamp: this.sessionID, + interactions + }; + } +}; +function contextItemId(contextItem) { + return contextItem.range ? `${contextItem.uri.toString()}#${contextItem.range.start.line}:${contextItem.range.end.line}` : contextItem.uri.toString(); +} +function toViewMessage(mwc) { + const displayText = getDisplayText(mwc); + return { + ...mwc.message, + displayText, + contextFiles: contextItemsToContextFiles(mwc.newContextUsed || []) + }; +} +function getDisplayText(mwc) { + if (mwc.displayText) { + return mwc.displayText; + } + if (mwc.message.speaker === "assistant" && mwc.message.text) { + return reformatBotMessage(mwc.message.text, ""); + } + return mwc.message.text; +} + +// ../vscode/src/chat/chat-view/prompt.ts +var DefaultPrompter = class { + async makePrompt(chat, contextProvider, byteLimit) { + const { reversePrompt, warnings, newContextUsed } = await this.makeReversePrompt( + chat, + contextProvider, + byteLimit + ); + return { + prompt: [...reversePrompt].reverse(), + warnings, + newContextUsed + }; + } + // Constructs the raw prompt to send to the LLM, with message order reversed, so we can construct + // an array with the most important messages (which appear most important first in the reverse-prompt. + // + // Returns the reverse prompt, a list of warnings that indicate that the prompt was truncated, and + // the new context that was used in the prompt for the current message. + async makeReversePrompt(chat, contextProvider, byteLimit) { + const promptBuilder = new PromptBuilder(byteLimit); + const newContextUsed = []; + const warnings = []; + const reverseTranscript = [...chat.getMessagesWithContext()].reverse(); + for (let i = 0; i < reverseTranscript.length; i++) { + const messageWithContext = reverseTranscript[i]; + const contextLimitReached = promptBuilder.tryAdd(messageWithContext.message); + if (!contextLimitReached) { + warnings.push(`Ignored ${reverseTranscript.length - i} transcript messages due to context limit`); + return { + reversePrompt: promptBuilder.reverseMessages, + warnings, + newContextUsed + }; + } + } + { + const { limitReached: limitReached2, used: used2 } = promptBuilder.tryAddContext( + contextProvider.getUserContext(), + (item) => this.renderContextItem(item) + ); + newContextUsed.push(...used2); + if (limitReached2) { + warnings.push("Ignored current user-specified context items due to context limit"); + return { reversePrompt: promptBuilder.reverseMessages, warnings, newContextUsed }; + } + } + { + const { limitReached: limitReached2 } = promptBuilder.tryAddContext( + reverseTranscript.flatMap((message) => message.newContextUsed || []), + (item) => this.renderContextItem(item) + ); + if (limitReached2) { + warnings.push("Ignored prior context items due to context limit"); + return { reversePrompt: promptBuilder.reverseMessages, warnings, newContextUsed }; + } + } + const lastMessage = reverseTranscript[0]; + if (!lastMessage?.message.text) { + return { + reversePrompt: promptBuilder.reverseMessages, + warnings, + newContextUsed + }; + } + const additionalContextItems = []; + if (isEditorContextRequired(lastMessage.message.text)) { + additionalContextItems.push(...contextProvider.getUserAttentionContext()); + } + additionalContextItems.push(...await contextProvider.getEnhancedContext(lastMessage.message.text)); + const { limitReached, used } = promptBuilder.tryAddContext( + additionalContextItems, + (item) => this.renderContextItem(item) + ); + newContextUsed.push(...used); + if (limitReached) { + warnings.push("Ignored additional context items due to context limit"); + } + return { + reversePrompt: promptBuilder.reverseMessages, + warnings, + newContextUsed + }; + } + renderContextItem(contextItem) { + let messageText; + if (isMarkdownFile(contextItem.uri.fsPath)) { + messageText = populateMarkdownContextTemplate(contextItem.text, contextItem.uri.fsPath); + } else { + messageText = populateCodeContextTemplate(contextItem.text, contextItem.uri.fsPath); + } + return [ + { speaker: "human", text: messageText }, + { speaker: "assistant", text: "Ok." } + ]; + } +}; +var PromptBuilder = class { + constructor(byteLimit) { + this.byteLimit = byteLimit; + } + reverseMessages = []; + bytesUsed = 0; + seenContext = /* @__PURE__ */ new Set(); + tryAdd(message) { + const lastMessage = this.reverseMessages.at(-1); + if (lastMessage?.speaker === message.speaker) { + throw new Error("Cannot add message with same speaker as last message"); + } + const msgLen = message.speaker.length + (message.text?.length || 0) + 3; + if (this.bytesUsed + msgLen > this.byteLimit) { + return false; + } + this.reverseMessages.push(message); + this.bytesUsed += msgLen; + return true; + } + tryAddContext(contextItems, renderContextItem) { + let limitReached = false; + const used = []; + const ignored = []; + const duplicate = []; + for (const contextItem of contextItems) { + const id = contextItemId(contextItem); + if (this.seenContext.has(id)) { + duplicate.push(contextItem); + continue; + } + const contextMessages = renderContextItem(contextItem).reverse(); + const contextLen = contextMessages.reduce( + (acc, msg) => acc + msg.speaker.length + (msg.text?.length || 0) + 3, + 0 + ); + if (this.bytesUsed + contextLen > this.byteLimit) { + ignored.push(contextItem); + limitReached = true; + continue; + } + this.seenContext.add(id); + this.reverseMessages.push(...contextMessages); + this.bytesUsed += contextLen; + used.push(contextItem); + } + return { + limitReached, + used, + ignored, + duplicate + }; + } +}; +var editorRegexps2 = [/editor/, /(open|current|this|entire)\s+file/, /current(ly)?\s+open/, /have\s+open/]; +function isEditorContextRequired(input) { + const inputLowerCase = input.toLowerCase(); + for (const regexp of editorRegexps2) { + if (inputLowerCase.match(regexp)) { + return true; + } + } + return false; +} + +// ../vscode/src/chat/chat-view/SimpleChatPanelProvider.ts +var SimpleChatPanelProvider = class { + chatModel = new SimpleChatModel("anthropic/claude-2"); + config; + webviewPanel; + webview; + extensionUri; + disposables = []; + authProvider; + guardrails; + chatClient; + embeddingsClient; + localEmbeddings; + contextStatusAggregator = new ContextStatusAggregator(); + editor; + treeView; + history = new ChatHistoryManager(); + prompter = new DefaultPrompter(); + contextFilesQueryCancellation; + // HACK: for now, we need awkwardly need to keep this in sync with chatModel.sessionID, + // as it is necessary to satisfy the IChatPanelProvider interface. + sessionID; + constructor({ + config, + extensionUri, + authProvider, + guardrails, + chatClient, + embeddingsClient, + localEmbeddings, + editor, + treeView + }) { + this.config = config; + this.extensionUri = extensionUri; + this.authProvider = authProvider; + this.chatClient = chatClient; + this.embeddingsClient = embeddingsClient; + this.localEmbeddings = localEmbeddings; + this.editor = editor; + this.treeView = treeView; + this.sessionID = this.chatModel.sessionID; + this.guardrails = guardrails; + this.disposables.push(this.contextStatusAggregator.onDidChangeStatus(() => this.postContextStatusToWebView())); + this.disposables.push(this.contextStatusAggregator); + if (this.localEmbeddings) { + this.disposables.push(this.contextStatusAggregator.addProvider(this.localEmbeddings)); + } + if (this.embeddingsClient) { + this.disposables.push(this.contextStatusAggregator.addProvider(this.embeddingsClient)); + } + } + completionCanceller; + cancelInProgressCompletion() { + if (this.completionCanceller) { + this.completionCanceller(); + this.completionCanceller = void 0; + } + } + /** + * Creates the webview panel for the Cody chat interface if it doesn't already exist. + */ + async createWebviewPanel(activePanelViewColumn, lastQuestion) { + if (this.webviewPanel) { + return this.webviewPanel; + } + const viewType = CodyChatPanelViewType; + const text = lastQuestion && lastQuestion?.length > 10 ? `${lastQuestion?.slice(0, 20)}...` : lastQuestion; + const panelTitle = text || "New Chat"; + const viewColumn = activePanelViewColumn || -2 /* Beside */; + const webviewPath = Uri.joinPath(this.extensionUri, "dist", "webviews"); + const panel = window2.createWebviewPanel( + viewType, + panelTitle, + { viewColumn, preserveFocus: true }, + { + enableScripts: true, + retainContextWhenHidden: true, + enableFindWidget: true, + localResourceRoots: [webviewPath], + enableCommandUris: true + } + ); + return this.registerWebviewPanel(panel); + } + /** + * Revives the chat panel when the extension is reactivated. + */ + async revive(webviewPanel) { + telemetryService.log("CodyVSCodeExtension:SimpleChatPanelProvider:revive", void 0, { hasV2Event: true }); + return this.registerWebviewPanel(webviewPanel); + } + /** + * Registers the given webview panel by setting up its options, icon, and handlers. + * Also stores the panel reference and disposes it when closed. + */ + async registerWebviewPanel(panel) { + const webviewPath = Uri.joinPath(this.extensionUri, "dist", "webviews"); + panel.iconPath = Uri.joinPath(this.extensionUri, "resources", "cody.png"); + panel.webview.options = { + enableScripts: true, + localResourceRoots: [webviewPath], + enableCommandUris: true + }; + await addWebviewViewHTML(this.extensionUri, panel); + this.webviewPanel = panel; + this.webview = panel.webview; + this.postContextStatusToWebView(); + panel.onDidDispose(() => { + this.webviewPanel = void 0; + this.webview = void 0; + panel.dispose(); + }); + this.disposables.push(panel.webview.onDidReceiveMessage((message) => this.onDidReceiveMessage(message))); + await commands.executeCommand("setContext", CodyChatPanelViewType, true); + return panel; + } + postContextStatusToWebView() { + void this.webview?.postMessage({ + type: "enhanced-context", + context: { + groups: this.contextStatusAggregator.status + } + }); + } + async setWebviewView(view) { + await this.webview?.postMessage({ + type: "view", + messages: view + }); + if (!this.webviewPanel) { + await this.createWebviewPanel(); + } + this.webviewPanel?.reveal(); + } + /** + * This is the entrypoint for handling messages from the webview. + */ + async onDidReceiveMessage(message) { + switch (message.command) { + case "ready": + await this.authProvider.announceNewAuthStatus(); + await this.postViewConfig(); + break; + case "initialized": + logDebug("SimpleChatPanelProvider:onDidReceiveMessage", "initialized"); + this.handleInitialized(); + break; + case "submit": { + const requestID = v4_default(); + await this.handleHumanMessageSubmitted( + requestID, + message.text, + message.submitType, + message.contextFiles, + message.addEnhancedContext + ); + break; + } + case "edit": { + const requestID = v4_default(); + await this.handleEdit(requestID, message.text); + telemetryService.log("CodyVSCodeExtension:editChatButton:clicked", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.editChatButton", "clicked"); + break; + } + case "abort": + this.cancelInProgressCompletion(); + telemetryService.log( + "CodyVSCodeExtension:abortButton:clicked", + { source: "sidebar" }, + { hasV2Event: true } + ); + telemetryRecorder.recordEvent("cody.sidebar.abortButton", "clicked"); + break; + case "chatModel": + this.chatModel.modelID = message.model; + break; + case "executeRecipe": + void this.executeRecipe(message.recipe); + break; + case "getUserContext": + await this.handleContextFiles(message.query); + break; + case "custom-prompt": + await this.executeCustomCommand(message.title); + break; + case "insert": + await handleCodeFromInsertAtCursor(message.text, message.metadata); + break; + case "newFile": + handleCodeFromSaveToNewFile(message.text, message.metadata); + await this.editor.createWorkspaceFile(message.text); + break; + case "copy": + await handleCopiedCode(message.text, message.eventType === "Button", message.metadata); + break; + case "event": + telemetryService.log(message.eventName, message.properties); + break; + case "links": + void openExternalLinks(message.value); + break; + case "openFile": + await openFilePath(message.filePath, this.webviewPanel?.viewColumn); + break; + case "openLocalFileWithRange": + await openLocalFileWithRange(message.filePath, message.range); + break; + case "embeddings/index": + void this.localEmbeddings?.index(); + break; + default: + this.postError("Invalid request type from Webview Panel"); + } + } + dispose() { + this.disposables.forEach((disposable) => disposable.dispose()); + this.disposables = []; + } + async restoreSession(sessionID) { + this.cancelInProgressCompletion(); + await this.saveSession(); + const oldTranscript = this.history.getChat(sessionID); + if (!oldTranscript) { + throw new Error(`Could not find chat history for sessionID ${sessionID}`); + } + const newModel = await newChatModelfromTranscriptJSON(this.editor, oldTranscript); + this.chatModel = newModel; + this.sessionID = newModel.sessionID; + await this.postViewTranscript(); + } + async saveSession() { + const allHistory = await this.history.saveChat(this.chatModel.toTranscriptJSON()); + void this.webview?.postMessage({ + type: "history", + messages: allHistory + }); + await this.treeView.updateTree(createCodyChatTreeItems(allHistory)); + } + async clearAndRestartSession() { + if (this.chatModel.isEmpty()) { + return; + } + await this.saveSession(); + this.chatModel = new SimpleChatModel(this.chatModel.modelID); + this.sessionID = this.chatModel.sessionID; + await this.postViewTranscript(); + } + clearChatHistory() { + return Promise.resolve(); + } + triggerNotice(notice) { + void this.webview?.postMessage({ + type: "notice", + notice + }); + } + handleInitialized() { + const endpoint = this.authProvider.getAuthStatus()?.endpoint; + const allowedModels = getChatModelsForWebview(endpoint); + const models = this.chatModel ? allowedModels.map((model) => { + return { + ...model, + default: model.model === this.chatModel.modelID + }; + }) : allowedModels; + void this.webview?.postMessage({ + type: "chatModels", + models + }); + } + async handleHumanMessageSubmitted(requestID, text, submitType, userContextFiles, addEnhancedContext = true) { + if (submitType === "suggestion") { + const args3 = { requestID }; + telemetryService.log("CodyVSCodeExtension:chatPredictions:used", args3, { hasV2Event: true }); + } + this.chatModel.addHumanMessage({ text }); + void this.postViewTranscript({ speaker: "assistant" }); + await this.generateAssistantResponse(requestID, userContextFiles, addEnhancedContext); + } + async handleEdit(requestID, text) { + this.chatModel.updateLastHumanMessage({ text }); + void this.postViewTranscript(); + await this.generateAssistantResponse(requestID); + } + async postViewConfig() { + const config = await getFullConfig(); + const authStatus = this.authProvider.getAuthStatus(); + const localProcess = await this.authProvider.appDetector.getProcessInfo(authStatus.isLoggedIn); + const configForWebview = { + ...localProcess, + debugEnable: config.debugEnable, + serverEndpoint: config.serverEndpoint, + experimentalChatPanel: config.experimentalChatPanel + }; + await this.webview?.postMessage({ type: "config", config: configForWebview, authStatus }); + logDebug("SimpleChatPanelProvider", "updateViewConfig", { verbose: configForWebview }); + } + async generateAssistantResponse(requestID, userContextFiles, addEnhancedContext = true) { + try { + const contextWindowBytes = 28e3; + const userContextItems = await contextFilesToContextItems(this.editor, userContextFiles || [], true); + const contextProvider = new ContextProvider( + userContextItems, + this.editor, + addEnhancedContext ? this.embeddingsClient : null, + addEnhancedContext ? this.localEmbeddings : null + ); + const { + prompt: promptMessages, + warnings, + newContextUsed + } = await this.prompter.makePrompt(this.chatModel, contextProvider, contextWindowBytes); + this.chatModel.setNewContextUsed(newContextUsed); + if (warnings.length > 0) { + const warningMsg = "Warning: " + warnings.map((w) => w.trim().endsWith(".") ? w.trim() : w.trim() + ".").join(" "); + this.postError(warningMsg); + } + void this.postViewTranscript(); + let lastContent = ""; + const typewriter = new Typewriter({ + update: (content) => { + lastContent = content; + void this.postViewTranscript( + toViewMessage({ + message: { + speaker: "assistant", + text: content + }, + newContextUsed + }) + ); + }, + close: () => { + this.guardrailsAnnotateAttributions(reformatBotMessage(lastContent, "")).then((displayText) => { + this.chatModel.addBotMessage({ text: lastContent }, displayText); + void this.saveSession(); + void this.postViewTranscript(); + const codeCount = countGeneratedCode(lastContent); + if (codeCount?.charCount) { + telemetryService.log( + "CodyVSCodeExtension:chatResponse:hasCode", + { ...codeCount, requestID }, + { hasV2Event: true } + ); + telemetryRecorder.recordEvent("cody.chatResponse.new", "hasCode", { + metadata: { + ...codeCount + } + }); + } + }).catch((error) => { + throw error; + }); + } + }); + this.cancelInProgressCompletion(); + this.completionCanceller = this.chatClient.chat( + promptMessages, + { + onChange: (content) => { + typewriter.update(content); + }, + onComplete: () => { + this.completionCanceller = void 0; + typewriter.close(); + typewriter.stop(); + }, + onError: (error) => { + this.completionCanceller = void 0; + this.postError(error); + } + }, + { model: this.chatModel.modelID } + ); + } catch (error) { + this.postError(`${error}`); + } + } + // Handler to fetch context files candidates + async handleContextFiles(query) { + if (!query.length) { + const tabs = getOpenTabsContextFile(); + await this.webview?.postMessage({ + type: "userContextFiles", + context: tabs + }); + return; + } + const cancellation = new CancellationTokenSource(); + try { + const MAX_RESULTS = 20; + if (query.startsWith("#")) { + const symbolResults = await getSymbolContextFiles(query.slice(1), MAX_RESULTS); + if (!cancellation.token.isCancellationRequested) { + await this.webview?.postMessage({ + type: "userContextFiles", + context: symbolResults + }); + } + } else { + const fileResults = await getFileContextFiles(query, MAX_RESULTS, cancellation.token); + if (!cancellation.token.isCancellationRequested) { + await this.webview?.postMessage({ + type: "userContextFiles", + context: fileResults + }); + } + } + } catch (error) { + console.error("Error retrieving context files:", error); + } finally { + this.contextFilesQueryCancellation?.cancel(); + this.contextFilesQueryCancellation = cancellation; + } + } + async postViewTranscript(messageInProgress) { + const messages = this.chatModel.getMessagesWithContext().map((m) => toViewMessage(m)); + if (messageInProgress) { + messages.push(messageInProgress); + } + await this.webview?.postMessage({ + type: "transcript", + messages, + isMessageInProgress: !!messageInProgress, + chatID: this.sessionID + }); + } + /** + * Display error message in webview, either as part of the transcript or as a banner alongside the chat. + */ + postError(errorMsg) { + void this.webview?.postMessage({ type: "errors", errors: errorMsg }); + } + async guardrailsAnnotateAttributions(text) { + if (!this.config.experimentalGuardrails) { + return text; + } + const result = await annotateAttribution(this.guardrails, text); + if (result.codeBlocks > 0) { + telemetryService.log( + "CodyVSCodeExtension:guardrails:annotate", + { + codeBlocks: result.codeBlocks, + duration: result.duration + }, + { hasV2Event: true } + ); + telemetryRecorder.recordEvent("cody.guardrails.annotate", "executed", { + // Convert nanoseconds to milliseconds to match other telemetry. + metadata: { codeBlocks: result.codeBlocks, durationMs: result.duration / 1e6 } + }); + } + return result.text; + } + setConfiguration(newConfig) { + this.config = newConfig; + } + async executeRecipe(recipeID) { + await window2.showErrorMessage(`command ${recipeID} not supported`); + } + async executeCustomCommand(title) { + await window2.showErrorMessage(`custom command ${title} not supported`); + } +}; +var ContextProvider = class { + constructor(userContext, editor, embeddingsClient, localEmbeddings) { + this.userContext = userContext; + this.editor = editor; + this.embeddingsClient = embeddingsClient; + this.localEmbeddings = localEmbeddings; + } + getUserContext() { + return this.userContext; + } + getUserAttentionContext() { + const selectionContext = this.getCurrentSelectionContext(); + if (selectionContext.length > 0) { + return selectionContext; + } + return this.getVisibleEditorContext(); + } + getCurrentSelectionContext() { + const selection = this.editor.getActiveInlineChatSelection(); + if (!selection) { + return []; + } + let range; + if (selection.selectionRange) { + range = new Range( + selection.selectionRange.start.line, + selection.selectionRange.start.character, + selection.selectionRange.end.line, + selection.selectionRange.end.character + ); + } + return [ + { + text: selection.selectedText, + uri: selection.fileUri || Uri.file(selection.fileName), + range + } + ]; + } + getVisibleEditorContext() { + const visible = this.editor.getActiveTextEditorVisibleContent(); + if (!visible) { + return []; + } + return [ + { + text: visible.content, + uri: visible.fileUri || Uri.file(visible.fileName) + } + ]; + } + async getEnhancedContext(text) { + logDebug("SimpleChatPanelProvider", "getEnhancedContext > embeddings (start)"); + const contextItems = [ + ...await this.searchEmbeddingsLocal(text), + ...await this.searchEmbeddingsRemote(text) + ]; + logDebug("SimpleChatPanelProvider", "getEnhancedContext > embeddings (end)"); + if (this.shouldIncludeReadmeContext(text)) { + let containsREADME = false; + for (const contextItem of contextItems) { + const basename9 = path12.basename(contextItem.uri.fsPath); + if (basename9.toLocaleLowerCase() === "readme" || basename9.toLocaleLowerCase().startsWith("readme.")) { + containsREADME = true; + break; + } + } + if (!containsREADME) { + const readmeContextItems = await this.getReadmeContext(); + return readmeContextItems.concat(contextItems); + } + } + return contextItems; + } + async searchEmbeddingsLocal(text) { + if (!this.localEmbeddings) { + return []; + } + logDebug("SimpleChatPanelProvider", "getEnhancedContext > searching local embeddings"); + const contextItems = []; + const embeddingsResults = await this.localEmbeddings.getContext(text, NUM_CODE_RESULTS + NUM_TEXT_RESULTS); + for (const result of embeddingsResults) { + const uri = Uri.from({ + scheme: "file", + path: result.fileName, + fragment: `${result.startLine}:${result.endLine}` + }); + const range = new Range( + new Position(result.startLine, 0), + new Position(result.endLine, 0) + ); + contextItems.push({ + uri, + range, + text: result.content + }); + } + return contextItems; + } + async searchEmbeddingsRemote(text) { + if (!this.embeddingsClient) { + return []; + } + logDebug("SimpleChatPanelProvider", "getEnhancedContext > searching remote embeddings"); + const contextItems = []; + const embeddings = await this.embeddingsClient.search(text, NUM_CODE_RESULTS, NUM_TEXT_RESULTS); + if (isError2(embeddings)) { + throw new Error(`Error retrieving embeddings: ${embeddings}`); + } + for (const codeResult of embeddings.codeResults) { + const uri = Uri.from({ + scheme: embeddingsUrlScheme, + authority: this.embeddingsClient.repoId, + path: "/" + codeResult.fileName, + fragment: `L${codeResult.startLine}-${codeResult.endLine}` + }); + const range = new Range( + new Position(codeResult.startLine, 0), + new Position(codeResult.endLine, 0) + ); + contextItems.push({ + uri, + range, + text: codeResult.content + }); + } + for (const textResult of embeddings.textResults) { + const uri = Uri.from({ + scheme: "file", + path: textResult.fileName, + fragment: `${textResult.startLine}:${textResult.endLine}` + }); + const range = new Range( + new Position(textResult.startLine, 0), + new Position(textResult.endLine, 0) + ); + contextItems.push({ + uri, + range, + text: textResult.content + }); + } + return contextItems; + } + shouldIncludeReadmeContext(input) { + input = input.toLowerCase(); + const question = extractQuestion(input); + if (!question) { + return false; + } + const words = input.split(/\W+/).filter((w) => w.length > 0); + const bagOfWords = Object.fromEntries(words.map((w) => [w, true])); + const projectSignifiers = ["project", "repository", "repo", "library", "package", "module", "codebase"]; + const questionIndicators = ["what", "how", "describe", "explain", "?"]; + const workspaceUri = this.editor.getWorkspaceRootUri(); + if (workspaceUri) { + const rootBase = workspaceUri.toString().split("/").at(-1); + if (rootBase) { + projectSignifiers.push(rootBase.toLowerCase()); + } + } + let containsProjectSignifier = false; + for (const p of projectSignifiers) { + if (bagOfWords[p]) { + containsProjectSignifier = true; + break; + } + } + let containsQuestionIndicator = false; + for (const q of questionIndicators) { + if (bagOfWords[q]) { + containsQuestionIndicator = true; + break; + } + } + return containsQuestionIndicator && containsProjectSignifier; + } + async getReadmeContext() { + let readmeUri; + const patterns = ["README", "README.*", "Readme.*", "readme.*"]; + for (const pattern of patterns) { + const files = await workspace.findFiles(pattern); + if (files.length > 0) { + readmeUri = files[0]; + } + } + if (!readmeUri) { + return []; + } + const readmeDoc = await workspace.openTextDocument(readmeUri); + const readmeText = readmeDoc.getText(); + const { truncated: truncatedReadmeText, range } = truncateTextNearestLine(readmeText, MAX_BYTES_PER_FILE); + if (truncatedReadmeText.length === 0) { + return []; + } + let readmeDisplayUri = readmeUri; + const wsFolder = workspace.getWorkspaceFolder(readmeUri); + if (wsFolder) { + const readmeRelPath = path12.relative(wsFolder.uri.fsPath, readmeUri.fsPath); + if (readmeRelPath) { + readmeDisplayUri = relativeFileUrl(readmeRelPath); + } + } + return [ + { + uri: readmeDisplayUri, + text: truncatedReadmeText, + range: viewRangeToRange(range) + } + ]; + } +}; +function contextFilesToContextItems(editor, files, fetchContent) { + return Promise.all( + files.map(async (file) => { + const range = viewRangeToRange(file.range); + const uri = file.uri || Uri.file(file.fileName); + let text = file.content; + if (!text && fetchContent) { + text = await editor.getTextEditorContentForFile(uri, range); + } + return { + uri, + range, + text: text || "" + }; + }) + ); +} +function viewRangeToRange(range) { + if (!range) { + return void 0; + } + return new Range(range.start.line, range.start.character, range.end.line, range.end.character); +} +async function newChatModelfromTranscriptJSON(editor, json) { + const messages = json.interactions.map( + (interaction) => { + return [ + { + message: { + speaker: "human", + text: interaction.humanMessage.text + }, + displayText: interaction.humanMessage.displayText, + newContextUsed: deserializedContextFilesToContextItems( + interaction.usedContextFiles, + interaction.fullContext + ) + }, + { + message: { + speaker: "assistant", + text: interaction.assistantMessage.text + }, + displayText: interaction.assistantMessage.displayText + } + ]; + } + ); + return new SimpleChatModel(json.chatModel || "anthropic/claude-2", (await Promise.all(messages)).flat(), json.id); +} +function deserializedContextFilesToContextItems(files, contextMessages) { + const contextByFile = /* @__PURE__ */ new Map(); + for (const contextMessage of contextMessages) { + if (!contextMessage.file?.fileName) { + continue; + } + contextByFile.set(contextMessage.file.fileName, contextMessage); + } + return files.map((file) => { + const range = viewRangeToRange(file.range); + const fallbackURI = relativeFileUrl(file.fileName, range); + const uri = file.uri || fallbackURI; + let text = file.content; + if (!text) { + const contextMessage = contextByFile.get(file.fileName); + if (contextMessage) { + text = stripContextWrapper(contextMessage.text || ""); + } + } + return { + uri, + range, + text: text || "" + }; + }); +} +function extractQuestion(input) { + input = input.trim(); + const q = input.indexOf("?"); + if (q !== -1) { + return input.slice(0, q + 1).trim(); + } + if (input.length < 100) { + return input; + } + return void 0; +} + +// ../vscode/src/chat/chat-view/ChatPanelsManager.ts +var ChatPanelsManager = class { + constructor({ extensionUri, ...options2 }, chatClient, embeddingsSearch, localEmbeddings) { + this.chatClient = chatClient; + this.embeddingsSearch = embeddingsSearch; + this.localEmbeddings = localEmbeddings; + logDebug("ChatPanelsManager:constructor", "init"); + this.options = { treeView: this.treeViewProvider, extensionUri, ...options2 }; + this.treeView = window2.createTreeView("cody.chat.tree.view", { + treeDataProvider: this.treeViewProvider + }); + this.disposables.push( + window2.registerTreeDataProvider("cody.chat.tree.view", this.treeViewProvider), + window2.registerTreeDataProvider("cody.support.tree.view", this.supportTreeViewProvider), + window2.registerTreeDataProvider( + "cody.commands.tree.view", + new TreeViewProvider("command", featureFlagProvider) + ) + ); + this.onConfigurationChange = options2.contextProvider.configurationChangeEvent.event(async () => { + const isChatPanelEnabled = options2.contextProvider.config.experimentalChatPanel; + await commands.executeCommand("setContext", CodyChatPanelViewType, isChatPanelEnabled); + if (!isChatPanelEnabled) { + this.disposePanels(); + return; + } + this.panelProvidersMap.forEach((provider, id) => { + if (!provider.webviewPanel) { + provider.dispose(); + this.panelProvidersMap.delete(id); + } + provider.setConfiguration?.(options2.contextProvider.config); + }); + this.useSimpleChatPanelProvider = options2.contextProvider.config.experimentalSimpleChatContext; + }); + this.updateTreeViewHistory(); + } + // Chat views in editor panels when experimentalChatPanel is enabled + activePanelProvider = void 0; + panelProvidersMap = /* @__PURE__ */ new Map(); + options; + onConfigurationChange; + // Tree view for chat history + treeViewProvider = new TreeViewProvider("chat", featureFlagProvider); + treeView; + supportTreeViewProvider = new TreeViewProvider("support", featureFlagProvider); + disposables = []; + async syncAuthStatus(authStatus) { + this.supportTreeViewProvider.syncAuthStatus(authStatus); + if (!authStatus.isLoggedIn) { + this.disposePanels(); + } + await commands.executeCommand("setContext", CodyChatPanelViewType, authStatus.isLoggedIn); + } + async getChatPanel() { + const provider = await this.createWebviewPanel(); + return this.activePanelProvider || provider; + } + // Sync feature flag for cody.experimental.simpleChatContext to this variable + useSimpleChatPanelProvider = false; + /** + * Creates a new webview panel for chat. + */ + async createWebviewPanel(chatID, chatQuestion) { + if (chatID && this.panelProvidersMap.has(chatID)) { + const provider2 = this.panelProvidersMap.get(chatID); + if (provider2) { + provider2.webviewPanel?.reveal(); + this.activePanelProvider = provider2; + void this.selectTreeItem(chatID); + return provider2; + } + } + logDebug("ChatPanelsManager:createWebviewPanel", this.panelProvidersMap.size.toString()); + const activePanelViewColumn = this.activePanelProvider?.webviewPanel?.viewColumn; + if (this.useSimpleChatPanelProvider) { + const provider2 = new SimpleChatPanelProvider({ + ...this.options, + config: this.options.contextProvider.config, + chatClient: this.chatClient, + embeddingsClient: this.embeddingsSearch, + localEmbeddings: this.localEmbeddings + }); + const webviewPanel2 = await provider2.createWebviewPanel(activePanelViewColumn, chatQuestion); + if (chatID) { + await provider2.restoreSession(chatID); + } + this.activePanelProvider = provider2; + this.panelProvidersMap.set(provider2.sessionID, provider2); + webviewPanel2?.onDidChangeViewState((e) => { + if (e.webviewPanel.visible) { + this.activePanelProvider = provider2; + this.options.contextProvider.webview = provider2.webview; + void this.selectTreeItem(provider2.sessionID); + } + }); + webviewPanel2?.onDidDispose(() => { + this.disposeProvider(sessionID); + }); + this.selectTreeItem(provider2.sessionID); + return provider2; + } + const provider = new ChatPanelProvider(this.options); + const webviewPanel = await provider.createWebviewPanel(activePanelViewColumn, chatID, chatQuestion); + const sessionID = chatID || provider.sessionID; + this.activePanelProvider = provider; + this.panelProvidersMap.set(sessionID, provider); + webviewPanel?.onDidChangeViewState((e) => { + if (e.webviewPanel.visible && e.webviewPanel.active) { + this.activePanelProvider = provider; + this.options.contextProvider.webview = provider.webview; + void this.selectTreeItem(provider.sessionID); + } + }); + webviewPanel?.onDidDispose(() => { + this.disposeProvider(sessionID); + }); + this.selectTreeItem(sessionID); + return provider; + } + async revive(panel, sessionID, chatQuestion) { + logDebug("ChatPanelsManager:revive", sessionID, chatQuestion); + const provider = this.useSimpleChatPanelProvider ? new SimpleChatPanelProvider({ + ...this.options, + config: this.options.contextProvider.config, + chatClient: this.chatClient, + embeddingsClient: this.embeddingsSearch, + localEmbeddings: this.localEmbeddings + }) : new ChatPanelProvider(this.options); + const webviewPanel = await provider.revive(panel, sessionID); + if (this.useSimpleChatPanelProvider) { + await provider.restoreSession(sessionID); + } + this.activePanelProvider = provider; + this.panelProvidersMap.set(sessionID, provider); + webviewPanel?.onDidChangeViewState((e) => { + if (e.webviewPanel.visible && e.webviewPanel.active) { + this.activePanelProvider = provider; + this.options.contextProvider.webview = provider.webview; + void this.selectTreeItem(provider.sessionID); + } + }); + webviewPanel?.onDidDispose(() => { + this.disposeProvider(sessionID); + }); + this.selectTreeItem(sessionID); + return provider; + } + selectTreeItem(chatID) { + if (!this.treeView.visible) { + return; + } + const chat = this.treeViewProvider.getTreeItemByID(chatID); + if (chat) { + void this.treeView?.reveal(chat, { select: true, focus: false }); + } + } + /** + * Executes a recipe in the chat view. + */ + async executeRecipe(recipeId, humanChatInput, source2) { + logDebug("ChatPanelsManager:executeRecipe", recipeId); + const chatProvider = await this.getChatPanel(); + await chatProvider.executeRecipe(recipeId, humanChatInput, source2); + } + async executeCustomCommand(title, type2) { + logDebug("ChatPanelsManager:executeCustomCommand", title); + const customPromptActions = ["add", "get", "menu"]; + if (!customPromptActions.includes(title)) { + await this.executeRecipe("custom-prompt", title, "custom-commands"); + return; + } + const chatProvider = await this.getChatPanel(); + await chatProvider.executeCustomCommand(title, type2); + } + updateTreeViewHistory() { + const localHistory = localStorage2.getChatHistory(); + if (localHistory) { + void this.treeViewProvider.updateTree( + createCodyChatTreeItems({ + chat: localHistory?.chat, + input: localHistory.input + }) + ); + } + } + async clearHistory(chatID) { + if (chatID) { + this.disposeProvider(chatID); + await this.activePanelProvider?.clearChatHistory(chatID); + this.updateTreeViewHistory(); + return; + } + this.disposePanels(); + this.treeViewProvider.reset(); + } + async clearAndRestartSession() { + logDebug("ChatPanelsManager", "clearAndRestartSession"); + if (this.activePanelProvider) { + await this.activePanelProvider.clearAndRestartSession(); + return; + } + const chatProvider = await this.getChatPanel(); + await chatProvider.clearAndRestartSession(); + } + async restorePanel(chatID, chatQuestion) { + try { + logDebug("ChatPanelsManager", "restorePanel"); + const provider = this.panelProvidersMap.get(chatID); + if (provider) { + provider.webviewPanel?.reveal(); + return; + } + await this.createWebviewPanel(chatID, chatQuestion); + } catch (error) { + console.error(error, "errored restoring panel"); + } + } + triggerNotice(notice) { + this.getChatPanel().then((provider) => provider.triggerNotice(notice)).catch((error) => console.error(error)); + } + disposeProvider(chatID) { + if (chatID === this.activePanelProvider?.sessionID) { + this.activePanelProvider.webviewPanel?.dispose(); + this.activePanelProvider.dispose(); + this.activePanelProvider = void 0; + } + const provider = this.panelProvidersMap.get(chatID); + if (provider) { + this.panelProvidersMap.delete(chatID); + provider.webviewPanel?.dispose(); + provider.dispose(); + } + } + disposePanels() { + this.panelProvidersMap.forEach((provider) => { + provider.webviewPanel?.dispose(); + provider.dispose(); + }); + this.panelProvidersMap.clear(); + this.updateTreeViewHistory(); + } + dispose() { + this.disposePanels(); + this.onConfigurationChange.dispose(); + this.disposables.forEach((d) => d.dispose()); + } +}; + +// ../vscode/src/services/AuthProviderSimplified.ts +var AuthProviderSimplified = class { + async openExternalAuthUrl(classicAuthProvider, method) { + if (!await openExternalAuthUrl(method)) { + return; + } + classicAuthProvider.authProviderSimplifiedWillAttemptAuth(); + } +}; +async function openExternalAuthUrl(provider) { + const uriScheme = env2.uriScheme; + const isInsiders = uriScheme === "vscode-insiders"; + const referralCode = isInsiders ? "CODY_INSIDERS" : "CODY"; + const newTokenUrl = `/user/settings/tokens/new/callback?requestFrom=${referralCode}`; + const postSignUpSurveyUrl = `/post-sign-up?returnTo=${newTokenUrl}`; + const site = DOTCOM_URL.toString(); + const genericLoginUrl = `${site}sign-in?returnTo=${postSignUpSurveyUrl}`; + const gitHubLoginUrl = `${site}.auth/github/login?pc=https%3A%2F%2Fgithub.com%2F%3A%3Ae917b2b7fa9040e1edd4&redirect=${postSignUpSurveyUrl}`; + const gitLabLoginUrl = `${site}.auth/gitlab/login?pc=https%3A%2F%2Fgitlab.com%2F%3A%3Ab45ecb474e92c069567822400cf73db6e39917635bf682f062c57aca68a1e41c&redirect=${postSignUpSurveyUrl}`; + const googleLoginUrl = `${site}.auth/openidconnect/login?pc=google&redirect=${postSignUpSurveyUrl}`; + let uriSpec; + switch (provider) { + case "github": + uriSpec = gitHubLoginUrl; + break; + case "gitlab": + uriSpec = gitLabLoginUrl; + break; + case "google": + uriSpec = googleLoginUrl; + break; + case "dotcom": + default: + uriSpec = genericLoginUrl; + break; + } + return env2.openExternal(uriSpec); +} + +// ../vscode/src/services/LocalAppWatcher.ts +var LocalAppWatcher = class { + isSupported; + disposed = false; + disposables = []; + changeEventEmitter = new EventEmitter(); + tokenFileChangeEventEmitter = new EventEmitter(); + _isInstalled = false; + _isRunning = false; + constructor() { + this.isSupported = isOsSupportedByApp(process.platform, process.arch) && process.env.HOME !== void 0; + void this.init(); + } + get isInstalled() { + return this._isInstalled; + } + get isRunning() { + return this._isRunning; + } + get onChange() { + return this.changeEventEmitter.event; + } + get onTokenFileChange() { + return this.tokenFileChangeEventEmitter.event; + } + async init() { + const homeDir = process.env.HOME; + if (!this.isSupported || !homeDir) { + return; + } + const pollPromise = this.pollHttp(); + for (const marker of LOCAL_APP_LOCATIONS[process.platform]) { + const dirPath = expandHomeDir(marker.dir, process.env.HOME); + const dirUri = Uri.file(dirPath); + const fileUri = dirUri.with({ path: dirUri.path + marker.file }); + const watchPattern = new RelativePattern(dirUri, marker.file); + const watcher = workspace.createFileSystemWatcher(watchPattern); + const fireEvent = () => this.patternChanged(fileUri, !!marker.hasToken); + this.disposables.push(watcher.onDidCreate(fireEvent)); + this.disposables.push(watcher.onDidChange(fireEvent)); + this.disposables.push(watcher.onDidDelete(fireEvent)); + this.disposables.push(watcher); + fireEvent(); + } + await pollPromise; + } + patternChanged(file, fileMayHaveToken) { + this.setNeedsToCheckFiles(); + if (fileMayHaveToken) { + this.tokenFileChangeEventEmitter.fire(file); + } + } + needsToCheckFiles = false; + setNeedsToCheckFiles() { + if (this.needsToCheckFiles) { + return; + } + this.needsToCheckFiles = true; + void this.checkFiles(); + } + async checkFiles() { + this.needsToCheckFiles = false; + let installed = false; + for (const marker of LOCAL_APP_LOCATIONS[process.platform]) { + const dirPath = expandHomeDir(marker.dir, process.env.HOME); + const dirUri = Uri.file(dirPath); + const fileUri = dirUri.with({ path: dirUri.path + marker.file }); + installed ||= await pathExists(fileUri); + if (installed) { + break; + } + } + if (installed !== this._isInstalled) { + this._isInstalled = installed; + this.changeEventEmitter.fire(this); + } + } + async pollHttp() { + if (this.disposed) { + return; + } + let running = false; + try { + const response = await fetch(`${LOCAL_APP_URL.href}__version`); + running = response.status === 200; + } catch { + running = false; + } + if (running !== this._isRunning) { + this._isRunning = running; + this.changeEventEmitter.fire(this); + } + setTimeout(() => { + void this.pollHttp(); + }, 2e4); + } + dispose() { + this.disposed = true; + for (const disposable of this.disposables) { + disposable.dispose(); + } + this.disposables = []; + } +}; + +// ../vscode/src/chat/chat-view/SidebarChatProvider.ts +var SidebarChatProvider = class extends MessageProvider { + extensionUri; + contextFilesQueryCancellation; + webview; + webviewPanel = void 0; + constructor({ extensionUri, ...options2 }) { + super(options2); + this.extensionUri = extensionUri; + const localAppWatcher = new LocalAppWatcher(); + this.disposables.push(localAppWatcher); + this.disposables.push(localAppWatcher.onChange((appWatcher) => this.appWatcherChanged(appWatcher))); + this.disposables.push(localAppWatcher.onTokenFileChange((tokenFile) => this.tokenFileChanged(tokenFile))); + } + async onDidReceiveMessage(message) { + switch (message.command) { + case "ready": + await this.authProvider.announceNewAuthStatus(); + break; + case "initialized": + logDebug("SidebarChatProvider:onDidReceiveMessage", "initialized"); + await this.setWebviewView("chat"); + await this.init(); + break; + case "submit": + return this.onHumanMessageSubmitted( + message.text, + message.submitType, + message.contextFiles, + message.addEnhancedContext + ); + case "edit": + this.transcript.removeLastInteraction(); + await this.onHumanMessageSubmitted(message.text, "user"); + telemetryService.log("CodyVSCodeExtension:editChatButton:clicked", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.editChatButton", "clicked"); + break; + case "abort": + await this.abortCompletion(); + telemetryService.log( + "CodyVSCodeExtension:abortButton:clicked", + { source: "sidebar" }, + { hasV2Event: true } + ); + telemetryRecorder.recordEvent("cody.sidebar.abortButton", "clicked"); + break; + case "chatModel": + this.chatModel = message.model; + break; + case "executeRecipe": + await this.setWebviewView("chat"); + await this.executeRecipe(message.recipe, "", "chat"); + break; + case "auth": + if (message.type === "app" && message.endpoint) { + await this.authProvider.appAuth(message.endpoint); + const value = message.value === "download" ? "app:download" : "app:connect"; + telemetryService.log(`CodyVSCodeExtension:${value}:clicked`, void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent(`cody.${value}`, "clicked"); + break; + } + if (message.type === "callback" && message.endpoint) { + this.authProvider.redirectToEndpointLogin(message.endpoint); + break; + } + if (message.type === "simplified-onboarding") { + const authProviderSimplified = new AuthProviderSimplified(); + const authMethod = message.authMethod || "dotcom"; + void authProviderSimplified.openExternalAuthUrl(this.authProvider, authMethod); + break; + } + await commands.executeCommand(`cody.auth.${message.type}`); + break; + case "getUserContext": + await this.handleContextFiles(message.query); + break; + case "history": + if (message.action === "clear") { + await this.clearHistory(); + } + if (message.action === "export") { + await this.exportHistory(); + } + break; + case "restoreHistory": + await this.restoreSession(message.chatID); + break; + case "deleteHistory": + await this.deleteHistory(message.chatID); + break; + case "custom-prompt": + await this.onCustomPromptClicked(message.title, message.value); + break; + case "reload": + await this.authProvider.reloadAuthStatus(); + telemetryService.log("CodyVSCodeExtension:authReloadButton:clicked", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.authReloadButton", "clicked"); + break; + case "insert": + await handleCodeFromInsertAtCursor(message.text, message.metadata); + break; + case "newFile": + handleCodeFromSaveToNewFile(message.text, message.metadata); + await this.editor.createWorkspaceFile(message.text); + break; + case "copy": + await handleCopiedCode(message.text, message.eventType === "Button", message.metadata); + break; + case "event": + telemetryService.log(message.eventName, message.properties); + break; + case "links": + void openExternalLinks(message.value); + break; + case "openFile": + await openFilePath(message.filePath, this.webviewPanel?.viewColumn); + break; + case "openLocalFileWithRange": + await openLocalFileWithRange(message.filePath, message.range); + break; + case "simplified-onboarding": + if (message.type === "install-app") { + void this.simplifiedOnboardingInstallApp(); + break; + } + if (message.type === "open-app") { + void openExternalLinks(APP_REPOSITORIES_URL.href); + break; + } + if (message.type === "reload-state") { + void this.simplifiedOnboardingReloadEmbeddingsState(); + break; + } + if (message.type === "web-sign-in-token") { + void window2.showInputBox({ prompt: "Enter web sign-in token" }).then(async (token) => { + if (!token) { + return; + } + const authStatus = await this.authProvider.auth(DOTCOM_URL.href, token); + if (!authStatus?.isLoggedIn) { + void window2.showErrorMessage( + "Authentication failed. Please check your token and try again." + ); + } + }); + break; + } + break; + default: + this.handleError("Invalid request type from Webview", "system"); + } + } + async simplifiedOnboardingInstallApp() { + const os8 = process.platform; + const arch2 = process.arch; + const DOWNLOAD_URL = os8 && arch2 && isOsSupportedByApp(os8, arch2) ? `https://sourcegraph.com/.api/app/latest?arch=${archConvertor(arch2)}&target=${os8}` : APP_LANDING_URL.href; + await openExternalLinks(DOWNLOAD_URL); + } + async simplifiedOnboardingReloadEmbeddingsState() { + await this.contextProvider.forceUpdateCodebaseContext(); + } + appWatcherChanged(appWatcher) { + void this.webview?.postMessage({ type: "app-state", isInstalled: appWatcher.isInstalled }); + void this.simplifiedOnboardingReloadEmbeddingsState(); + } + tokenFileChanged(file) { + void this.authProvider.appDetector.tryFetchAppJson(file).then(() => this.simplifiedOnboardingReloadEmbeddingsState()); + } + async onHumanMessageSubmitted(text, submitType, contextFiles, addEnhancedContext = true) { + logDebug("ChatPanelProvider:onHumanMessageSubmitted", "chat", { + verbose: { text, submitType, addEnhancedContext } + }); + MessageProvider.inputHistory.push(text); + if (submitType === "suggestion") { + const args3 = { requestID: this.currentRequestID }; + telemetryService.log("CodyVSCodeExtension:chatPredictions:used", args3, { hasV2Event: true }); + } + return this.executeRecipe("chat-question", text, "chat", contextFiles, addEnhancedContext); + } + /** + * Process custom command click + */ + async onCustomPromptClicked(title, commandType = "user") { + telemetryService.log("CodyVSCodeExtension:command:customMenu:clicked", void 0, { hasV2Event: true }); + logDebug("SidebarChatProvider:onCustomPromptClicked", title); + if (!this.isCustomCommandAction(title)) { + await this.setWebviewView("chat"); + } + await this.executeCustomCommand(title, commandType); + } + /** + * Send transcript to webview + */ + handleTranscript(transcript, isMessageInProgress) { + void this.webview?.postMessage({ + type: "transcript", + messages: transcript, + isMessageInProgress, + chatID: this.sessionID + }); + } + handleSuggestions(suggestions) { + void this.webview?.postMessage({ + type: "suggestions", + suggestions + }); + } + /** + * Sends chat history to webview + */ + handleHistory(history) { + void this.webview?.postMessage({ + type: "history", + messages: history + }); + } + /** + * Display error message in webview, either as part of the transcript or as a banner alongside the chat. + */ + handleError(errorMsg, type2) { + if (type2 === "transcript") { + this.transcript.addErrorAsAssistantResponse(errorMsg); + void this.webview?.postMessage({ type: "transcript-errors", isTranscriptError: true }); + return; + } + void this.webview?.postMessage({ type: "errors", errors: errorMsg }); + } + handleCodyCommands(prompts2) { + void this.webview?.postMessage({ + type: "custom-prompts", + prompts: prompts2 + }); + } + async handleContextFiles(query) { + if (!query.length) { + const tabs = getOpenTabsContextFile(); + await this.webview?.postMessage({ + type: "userContextFiles", + context: tabs + }); + return; + } + const cancellation = new CancellationTokenSource(); + try { + const MAX_RESULTS = 20; + if (query.startsWith("#")) { + const symbolResults = await getSymbolContextFiles(query.slice(1), MAX_RESULTS); + if (!cancellation.token.isCancellationRequested) { + await this.webview?.postMessage({ + type: "userContextFiles", + context: symbolResults + }); + } + } else { + const fileResults = await getFileContextFiles(query, MAX_RESULTS, cancellation.token); + if (!cancellation.token.isCancellationRequested) { + await this.webview?.postMessage({ + type: "userContextFiles", + context: fileResults + }); + } + } + } catch (error) { + console.error("Error retrieving context files:", error); + } finally { + this.contextFilesQueryCancellation?.cancel(); + this.contextFilesQueryCancellation = cancellation; + } + } + /** + * + * @param notice Triggers displaying a notice. + * @param notice.key The key of the notice to display. + */ + triggerNotice(notice) { + void commands.executeCommand("cody.chat.focus", { + // Notices are not meant to steal focus from the editor + preserveFocus: true + }); + void this.webview?.postMessage({ + type: "notice", + notice + }); + } + /** + * Set webview view + */ + async setWebviewView(view) { + await commands.executeCommand("cody.chat.focus"); + await this.webview?.postMessage({ + type: "view", + messages: view + }); + } + /** + * create webview resources + */ + async resolveWebviewView(webviewView, _context, _token) { + this.webview = webviewView.webview; + this.authProvider.webview = webviewView.webview; + this.contextProvider.webview = webviewView.webview; + const webviewPath = Uri.joinPath(this.extensionUri, "dist", "webviews"); + webviewView.webview.options = { + enableScripts: true, + localResourceRoots: [webviewPath], + enableCommandUris: true + }; + await addWebviewViewHTML(this.extensionUri, webviewView); + this.disposables.push(webviewView.webview.onDidReceiveMessage((message) => this.onDidReceiveMessage(message))); + } + /** + * Clears the chat history for the given chatID. + * If no chatID is provided, clears all chat history. + */ + async clearChatHistory(chatID) { + if (!chatID) { + await this.clearAndRestartSession(); + await this.clearHistory(); + return; + } + await this.deleteHistory(chatID); + return; + } +}; + +// ../vscode/src/chat/chat-view/ChatManager.ts +var CodyChatPanelViewType = "cody.chatPanel"; +var ChatManager = class { + constructor({ extensionUri, ...options2 }, chatClient, embeddingsSearch, localEmbeddings) { + this.chatClient = chatClient; + this.embeddingsSearch = embeddingsSearch; + this.localEmbeddings = localEmbeddings; + logDebug("ChatManager:constructor", "init"); + this.options = { extensionUri, ...options2 }; + this.sidebarChat = new SidebarChatProvider(this.options); + if (options2.contextProvider.config.experimentalChatPanel) { + this.createChatPanelsManger(); + } + this.disposables.push( + commands.registerCommand("cody.chat.history.export", async () => this.exportHistory()), + commands.registerCommand("cody.chat.history.clear", async () => this.clearHistory()), + commands.registerCommand("cody.chat.history.delete", async (item) => this.clearHistory(item)), + commands.registerCommand("cody.chat.panel.new", async () => this.createNewWebviewPanel()), + commands.registerCommand("cody.chat.panel.restore", (id, chat) => this.restorePanel(id, chat)), + commands.registerCommand("cody.chat.open.file", async (fsPath) => this.openFileFromChat(fsPath)) + ); + this.onConfigurationChange = options2.contextProvider.configurationChangeEvent.event(async () => { + const isChatPanelEnabled = options2.contextProvider.config.experimentalChatPanel; + await commands.executeCommand("setContext", CodyChatPanelViewType, isChatPanelEnabled); + if (isChatPanelEnabled) { + this.createChatPanelsManger(); + } else { + this.disposeChatPanelsManager(); + } + }); + } + // View in sidebar for auth flow and old chat sidebar view + // We will always keep an instance of this around (even when not visible) to handle states when no panels are open + sidebarChat; + chatPanelsManager = void 0; + options; + onConfigurationChange; + disposables = []; + async getChatProvider() { + if (!this.chatPanelsManager) { + return this.sidebarChat; + } + const provider = await this.chatPanelsManager.getChatPanel(); + return provider; + } + async syncAuthStatus(authStatus) { + if (!this.chatPanelsManager) { + return; + } + await this.chatPanelsManager?.syncAuthStatus(authStatus); + } + async setWebviewView(view) { + const chatProvider = await this.getChatProvider(); + await chatProvider?.setWebviewView(view); + } + /** + * Executes a recipe in the chat view. + */ + async executeRecipe(recipeId, humanChatInput, openChatView = true, source2) { + logDebug("ChatManager:executeRecipe:called", recipeId); + if (!this.chatPanelsManager) { + if (openChatView) { + await this.sidebarChat.setWebviewView("chat"); + } + await this.sidebarChat.executeRecipe(recipeId, humanChatInput, source2); + return; + } + if (!window2.visibleTextEditors.length) { + void window2.showErrorMessage("Please open a file before running a command."); + return; + } + const isDefaultEditCommands = ["/doc", "/edit"].includes(humanChatInput); + if (!openChatView || isDefaultEditCommands) { + await this.sidebarChat.executeRecipe(recipeId, humanChatInput, source2); + return; + } + const chatProvider = await this.getChatProvider(); + if (!openChatView || !this.chatPanelsManager) { + await this.sidebarChat.executeRecipe(recipeId, humanChatInput, source2); + return; + } + await chatProvider.executeRecipe(recipeId, humanChatInput, source2); + } + async executeCustomCommand(title, type2) { + logDebug("ChatManager:executeCustomCommand:called", title); + const customPromptActions = ["add", "get", "menu"]; + if (!customPromptActions.includes(title)) { + await this.executeRecipe("custom-prompt", title, true); + return; + } + const chatProvider = await this.getChatProvider(); + await chatProvider.executeCustomCommand(title, type2); + } + async clearHistory(treeItem) { + if (!this.chatPanelsManager) { + await this.sidebarChat.clearHistory(); + return; + } + const chatID = treeItem?.id; + if (chatID) { + await this.sidebarChat.clearChatHistory(chatID); + await this.chatPanelsManager?.clearHistory(chatID); + return; + } + if (!treeItem) { + logDebug("ChatManager:clearHistory", "userConfirmation"); + const userConfirmation = await window2.showWarningMessage( + "Are you sure you want to delete all of your chats?", + { modal: true }, + "Delete All Chats" + ); + if (!userConfirmation) { + return; + } + await this.sidebarChat.clearHistory(); + await this.chatPanelsManager?.clearHistory(); + } + } + /** + * Clears the current chat session and restarts it, creating a new chat ID. + */ + async clearAndRestartSession() { + if (!this.chatPanelsManager) { + return this.sidebarChat.clearAndRestartSession(); + } + await this.chatPanelsManager.clearAndRestartSession(); + } + async restoreSession(chatID) { + const chatProvider = await this.getChatProvider(); + await chatProvider.restoreSession(chatID); + } + /** + * Export chat history to file system + */ + async exportHistory() { + await this.sidebarChat.exportHistory(); + } + async simplifiedOnboardingReloadEmbeddingsState() { + await this.sidebarChat.simplifiedOnboardingReloadEmbeddingsState(); + } + createChatPanelsManger() { + if (!this.chatPanelsManager) { + this.chatPanelsManager = new ChatPanelsManager( + this.options, + this.chatClient, + this.embeddingsSearch, + this.localEmbeddings + ); + telemetryService.log("CodyVSCodeExtension:chatPanelsManger:activated", void 0, { hasV2Event: true }); + } + } + /** + * Creates a new webview panel for chat. + */ + async createWebviewPanel(chatID, chatQuestion) { + if (!this.chatPanelsManager) { + return void 0; + } + return this.chatPanelsManager.createWebviewPanel(chatID, chatQuestion); + } + async revive(panel, chatID) { + this.createChatPanelsManger(); + if (this.chatPanelsManager) { + await this.chatPanelsManager.revive(panel, chatID); + telemetryService.log("CodyVSCodeExtension:chatPanelsManger:revive", void 0, { hasV2Event: true }); + } + } + lastDisplayedNotice = ""; + triggerNotice(notice) { + if (this.lastDisplayedNotice === notice.key) { + return; + } + this.lastDisplayedNotice = notice.key; + this.getChatProvider().then((provider) => provider.triggerNotice(notice)).catch((error) => console.error(error)); + } + async openFileFromChat(fsPath) { + const rangeIndex = fsPath.indexOf(":range:"); + const range = rangeIndex ? fsPath.slice(Math.max(0, rangeIndex + 7)) : 0; + const filteredFsPath = range ? fsPath.slice(0, rangeIndex) : fsPath; + const uri = Uri.file(filteredFsPath); + const editor = window2.activeTextEditor || window2.visibleTextEditors[0]; + const viewColumn = editor ? editor.viewColumn : -2 /* Beside */; + const doc = await workspace.openTextDocument(uri); + await window2.showTextDocument(doc, { viewColumn }); + } + disposeChatPanelsManager() { + this.options.contextProvider.webview = this.sidebarChat.webview; + this.options.authProvider.webview = this.sidebarChat.webview; + this.chatPanelsManager?.dispose(); + this.chatPanelsManager = void 0; + } + // For registering the commands for chat panels in advance + async createNewWebviewPanel() { + const debounceCreatePanel = (0, import_lodash7.debounce)(async () => { + await this.chatPanelsManager?.createWebviewPanel(); + }, 1e3); + if (this.chatPanelsManager) { + await debounceCreatePanel(); + } + } + async restorePanel(chatID, chatQuestion) { + const debounceRestore = (0, import_lodash7.debounce)(async (chatID2, chatQuestion2) => { + await this.chatPanelsManager?.restorePanel(chatID2, chatQuestion2); + }, 1e3); + if (this.chatPanelsManager) { + await debounceRestore(chatID, chatQuestion); + } + } + dispose() { + this.disposeChatPanelsManager(); + this.onConfigurationChange.dispose(); + this.disposables.forEach((d) => d.dispose()); + } +}; +async function addWebviewViewHTML(extensionUri, view) { + const webviewPath = Uri.joinPath(extensionUri, "dist", "webviews"); + const root = Uri.joinPath(webviewPath, "index.html"); + const bytes = await workspace.fs.readFile(root); + const decoded = new TextDecoder("utf-8").decode(bytes); + const resources = view.webview.asWebviewUri(webviewPath); + view.webview.html = decoded.replaceAll("./", `${resources.toString()}/`).replaceAll("{cspSource}", view.webview.cspSource); +} + +// ../vscode/src/chat/ContextProvider.ts +var import_lodash8 = __toESM(require_lodash()); + +// ../lib/shared/src/embeddings/EmbeddingsDetector.ts +var EmbeddingsDetector = { + // Creates an embeddings search client with the first client in `clients` + // that has embeddings. If none have embeddings, returns undefined. If all + // fail, returns the first error. + async newEmbeddingsSearchClient(clients, codebase, codebaseLocalName) { + let firstError; + let allFailed = true; + for (const promise of clients.map((client) => this.detectEmbeddings(client, codebase, codebaseLocalName))) { + const result = await promise; + const isError4 = result instanceof Error; + allFailed &&= isError4; + if (isError4) { + firstError ||= result; + continue; + } + if (result === void 0) { + continue; + } + return result(); + } + if (allFailed) { + console.log("EmbeddingsDetector", `Error getting embeddings availability for ${codebase}`, firstError); + return firstError; + } + return void 0; + }, + // Detects whether *one* client has embeddings for the specified codebase. + // Returns one of: + // - A thunk to construct an embeddings search client, if embeddings exist. + // - undefined, if the client doesn't have embeddings. + // - An error. + async detectEmbeddings(client, codebase, codebaseLocalName) { + const repoId = await client.getRepoIdIfEmbeddingExists(codebase); + if (repoId instanceof Error) { + return repoId; + } + return repoId ? () => new SourcegraphEmbeddingsSearchClient(client, codebase, repoId, codebaseLocalName) : void 0; + } +}; + +// ../vscode/src/graph/lsp/graph.ts +var import_vscode_uri3 = __toESM(require_umd()); + +// ../vscode/src/graph/lsp/languages.ts +var goKeywords = /* @__PURE__ */ new Set([ + "break", + "case", + "chan", + "const", + "continue", + "default", + "defer", + "else", + "fallthrough", + "for", + "func", + "go", + "goto", + "if", + "import", + "interface", + "map", + "package", + "range", + "return", + "select", + "struct", + "switch", + "type", + "var", + // common variables , types we don't need to follow + "Context", + "ctx", + "err", + "error", + "ok" +]); +var typescriptKeywords = /* @__PURE__ */ new Set([ + "any", + "as", + "async", + "boolean", + "break", + "case", + "catch", + "class", + "const", + "constructor", + "continue", + "debugger", + "declare", + "default", + "delete", + "do", + "else", + "enum", + "export", + "extends", + "false", + "finally", + "for", + "from", + "function", + "if", + "implements", + "import", + "in", + "instanceof", + "interface", + "let", + "module", + "new", + "null", + "number", + "of", + "package", + "private", + "protected", + "public", + "require", + "return", + "static", + "string", + "super", + "switch", + "symbol", + "this", + "throw", + "true", + "try", + "type", + "typeof", + "var", + "void", + "while", + "with", + "yield" +]); +var pythonKeywords = /* @__PURE__ */ new Set([ + "and", + "as", + "assert", + "async", + "await", + "break", + "class", + "continue", + "def", + "del", + "elif", + "else", + "except", + "False", + "finally", + "for", + "from", + "global", + "if", + "import", + "in", + "is", + "lambda", + "None", + "nonlocal", + "not", + "or", + "pass", + "raise", + "return", + "True", + "try", + "while", + "with", + "yield" +]); +var commonKeywords = /* @__PURE__ */ new Set([...goKeywords, ...typescriptKeywords, ...pythonKeywords]); +var identifierPattern = /[$A-Z_a-z][\w$]*/g; +var commonImportPaths = /* @__PURE__ */ new Set([ + // The TS lib folder contains the TS standard library and all of ECMAScript. + "node_modules/typescript/lib", + // The node library contains the standard node library. + "node_modules/@types/node", + // All CSS properties as TS types. + "node_modules/csstype", + // Common React type definitions. + "node_modules/@types/prop-types", + "node_modules/@types/react/", + "node_modules/next/", + // Go stdlib installation (covers Brew installs at a minimum) + "libexec/src/", + // Python stdlib + "lib/python3.", + "stdlib/builtins.pyi" +]); +function isCommonImport(uri) { + for (const importPath of commonImportPaths) { + if (uri.fsPath.includes(importPath)) { + return true; + } + } + return false; +} + +// ../vscode/src/graph/lsp/limiter.ts +function createLimiter(limit, timeout) { + const queue = []; + let inflightPromises = 0; + function processNext() { + if (inflightPromises >= limit) { + return; + } + if (queue.length === 0) { + return; + } + const next = queue.shift(); + inflightPromises += 1; + let didTimeout = false; + const timeoutId = setTimeout(() => { + didTimeout = true; + next.reject(new TimeoutError()); + inflightPromises -= 1; + processNext(); + }, timeout); + const runner = next.creator(); + runner.then((value) => { + if (didTimeout) { + return; + } + next.resolve(value); + }).catch((error) => { + if (didTimeout) { + return; + } + next.reject(error); + }).finally(() => { + if (didTimeout) { + return; + } + clearTimeout(timeoutId); + inflightPromises -= 1; + processNext(); + }); + } + return function enqueue(creator, abortSignal) { + let queued; + const promise = new Promise((resolve8, reject) => { + queued = { + creator, + abortSignal, + resolve: resolve8, + reject + }; + }); + queue.push(queued); + abortSignal?.addEventListener("abort", () => { + const index = queue.indexOf(queued); + if (index < 0) { + return; + } + queued.reject(new AbortError()); + queue.splice(index, 1); + }); + processNext(); + return promise; + }; +} + +// ../vscode/src/graph/lsp/graph.ts +var recursionLimit = 2; +var limiter = createLimiter( + // The concurrent requests limit is chosen very conservatively to avoid blocking the language + // server. + 2, + // If any language server API takes more than 2 seconds to answer, we should cancel the request + 2e3 +); +var getGraphContextFromEditor = async (editor) => { + const activeEditor = editor.getActiveTextEditor(); + const workspaceRootUri2 = editor.getWorkspaceRootUri(); + if (!activeEditor || !workspaceRootUri2) { + return []; + } + const label = "getGraphContextFromEditor"; + performance.mark(label); + const uri = workspaceRootUri2.with({ path: activeEditor.filePath }); + const contexts = await getGraphContextFromSelection( + [{ uri, range: activeEditor.selectionRange }], + /* @__PURE__ */ new Map([[uri.fsPath, activeEditor.content.split("\n")]]), + recursionLimit + ); + const filteredContexts = contexts.filter(({ filePath }) => filePath !== uri.fsPath); + logDebug("GraphContext:filteredSnippetsRetrieved", `Retrieved ${filteredContexts.length} filtered context snippets`); + performance.mark(label); + return filteredContexts; +}; +var getGraphContextFromRange = async (document2, range, abortSignal, contentMap = /* @__PURE__ */ new Map()) => { + const uri = document2.uri; + contentMap = contentMap.size === 0 ? /* @__PURE__ */ new Map([[uri.fsPath, document2.getText().split("\n")]]) : contentMap; + const locations = [{ uri, range }]; + const label = "getGraphContextFromRange"; + performance.mark(label); + const requestCandidates = gatherDefinitionRequestCandidates(locations, contentMap).slice(0, 50); + const resolvedHoverText = await gatherHoverText(requestCandidates, abortSignal); + const contexts = resolvedHoverText.flatMap(hoverContextFromResolvedHoverText); + performance.mark(label); + return contexts; +}; +var getGraphContextFromSelection = async (selections, contentMap, recursionLimit2 = 0) => { + const label = "getGraphContextFromSelection"; + performance.mark(label); + const definitionSelections = await extractRelevantDocumentSymbolRanges(selections); + const ranges = definitionSelections.map( + ({ uri, range }) => range ? new Location( + uri, + new Range(range?.start.line, range.start.character, range.end.line, range.end.character) + ) : void 0 + ).filter(isDefined); + const requestCandidates = gatherDefinitionRequestCandidates(ranges, contentMap); + const definitionMatches = await gatherDefinitions(definitionSelections, requestCandidates); + await updateContentMap( + contentMap, + definitionMatches.map(({ definitionLocations }) => definitionLocations.map(({ uri }) => uri)).flat() + ); + const matches = dedupeWith( + definitionMatches.map( + ({ definitionLocations, typeDefinitionLocations, implementationLocations, ...rest }) => definitionLocations.map((location) => ({ location, ...rest })) + ).flat(), + ({ symbolName, location }) => `${symbolName}:${locationKeyFn(location)}` + ); + const contexts = await extractDefinitionContexts(matches, contentMap); + logDebug("GraphContext:snippetsRetrieved", `Retrieved ${contexts.length} context snippets`); + performance.mark(label); + if (recursionLimit2 > 0) { + contexts.push( + ...await getGraphContextFromSelection( + contexts.map((c) => ({ + uri: import_vscode_uri3.URI.file(c.filePath), + range: c.range ? new Range( + c.range.startLine, + c.range.startCharacter, + c.range.endLine, + c.range.endCharacter + ) : void 0 + })), + contentMap, + recursionLimit2 - 1 + ) + ); + } + return contexts; +}; +var updateContentMap = async (contentMap, locations) => { + const unseenDefinitionUris = dedupeWith(locations, "fsPath").filter((uri) => !contentMap.has(uri.fsPath)); + const filteredUnseenDefinitionUris = unseenDefinitionUris.filter((uri) => !isCommonImport(uri)); + const newContentMap = new Map( + filteredUnseenDefinitionUris.map((uri) => [ + uri.fsPath, + workspace.openTextDocument(uri.fsPath).then((document2) => document2.getText().split("\n")) + ]) + ); + for (const [fsPath, lines2] of await unwrapThenableMap(newContentMap)) { + contentMap.set(fsPath, lines2); + } +}; +var extractRelevantDocumentSymbolRanges = async (selections, getDocumentSymbolRanges = defaultGetDocumentSymbolRanges) => { + const rangeMap = await unwrapThenableMap( + new Map( + dedupeWith( + selections.map(({ uri }) => uri), + "fsPath" + ).map((uri) => [uri.fsPath, getDocumentSymbolRanges(uri)]) + ) + ); + const pathsByUri = /* @__PURE__ */ new Map(); + for (const { uri, range } of selections) { + pathsByUri.set(uri.fsPath, [...pathsByUri.get(uri.fsPath) ?? [], range]); + } + const combinedRanges = []; + for (const [fsPath, ranges] of pathsByUri.entries()) { + const documentSymbolRanges = rangeMap.get(fsPath); + if (!documentSymbolRanges) { + continue; + } + const definedRanges = ranges.filter(isDefined); + combinedRanges.push( + ...(definedRanges.length < ranges.length ? documentSymbolRanges : documentSymbolRanges.filter( + ({ start: start4, end }) => definedRanges.some((range) => start4.line <= range.end.line && range.start.line <= end.line) + )).map((range) => ({ uri: import_vscode_uri3.URI.file(fsPath), range })) + ); + } + return combinedRanges; +}; +var gatherDefinitionRequestCandidates = (locations, contentMap) => { + const requestCandidates = []; + for (const { uri, range } of locations) { + const lines2 = contentMap.get(uri.fsPath); + if (!range || !lines2) { + continue; + } + for (const { start: start4, end } of [range]) { + for (const [lineIndex, line] of lines2.slice(start4.line, end.line + 1).entries()) { + const identifierMatches = line.replace(/\/\/.*$/, "").matchAll(identifierPattern); + for (const match2 of identifierMatches) { + if (match2.index === void 0 || commonKeywords.has(match2[0])) { + continue; + } + requestCandidates.push({ + symbolName: match2[0], + uri, + position: new Position(start4.line + lineIndex, match2.index + 1) + }); + } + } + } + } + return requestCandidates; +}; +var gatherDefinitions = async (selections, requests, getHover = defaultGetHover, getDefinitions = defaultGetDefinitions, getTypeDefinitions = defaultGetTypeDefinitions, getImplementations = defaultGetImplementations) => { + const definitionMatches = []; + for (const { symbolName, uri, position } of dedupeWith(requests, "symbolName")) { + definitionMatches.push({ + symbolName, + hover: getHover(uri, position), + definitionLocations: getDefinitions(uri, position), + typeDefinitionLocations: getTypeDefinitions(uri, position), + implementationLocations: getImplementations(uri, position) + }); + } + const resolvedDefinitionMatches = await Promise.all( + definitionMatches.map( + async ({ symbolName, hover, definitionLocations, typeDefinitionLocations, implementationLocations }) => ({ + symbolName, + hover: await hover, + definitionLocations: await definitionLocations, + typeDefinitionLocations: await typeDefinitionLocations, + implementationLocations: await implementationLocations + }) + ) + ); + return resolvedDefinitionMatches.map(({ definitionLocations, ...rest }) => ({ + definitionLocations: definitionLocations.filter( + ({ uri, range }) => !selections.some( + ({ uri: selectionUri, range: selectionRange }) => uri.fsPath === selectionUri.fsPath && (selectionRange === void 0 || selectionRange.start.line <= range.start.line && range.end.line <= selectionRange.end.line) + ) + ), + ...rest + })).filter( + ({ definitionLocations, typeDefinitionLocations, implementationLocations }) => definitionLocations.length + typeDefinitionLocations.length + implementationLocations.length !== 0 + ); +}; +var hoverToStrings = (hover) => hover.flatMap((hover2) => hover2.contents.map((c) => typeof c === "string" ? c : c.value)).map(extractMarkdownCodeBlock).map((s) => s.trim()).filter((s) => s !== ""); +var hoverContextFromResolvedHoverText = (t) => [hoverContextFromElement(t.symbol)].filter(isDefined); +var hoverContextFromElement = (element, sourceSymbolName) => { + if (element === void 0) { + return void 0; + } + let content = hoverToStrings(element.hover); + content = content.filter((content2) => !isUnhelpfulHoverString(element.symbolName, content2)); + if (content.length === 0) { + return void 0; + } + return { + symbolName: element.symbolName, + sourceSymbolName, + content, + uri: element.location.uri.toString(), + range: void 0 + }; +}; +function extractMarkdownCodeBlock(string) { + const lines2 = string.split("\n"); + const codeBlocks = []; + let isCodeBlock = false; + for (const line of lines2) { + const isCodeBlockDelimiter = line.trim().startsWith("```"); + if (isCodeBlockDelimiter && !isCodeBlock) { + isCodeBlock = true; + } else if (isCodeBlockDelimiter && isCodeBlock) { + isCodeBlock = false; + } else if (isCodeBlock) { + codeBlocks.push(line); + } + } + return codeBlocks.join("\n"); +} +var gatherHoverText = async (requests, abortSignal, getHover = defaultGetHover) => { + const symbolLocations = requests.map(({ symbolName, uri, position }) => ({ + symbolName, + symbolLocation: new Location(uri, position) + })); + const dedupedSymbolLocations = dedupeWith(symbolLocations, (s) => locationKeyFn(s.symbolLocation)); + return Promise.all( + dedupedSymbolLocations.map(async ({ symbolName, symbolLocation }) => { + const hoverPromise = limiter(() => getHover(symbolLocation.uri, symbolLocation.range.start), abortSignal); + return { + symbolName, + symbolLocation, + symbol: { + symbolName, + location: symbolLocation, + hover: await hoverPromise + } + }; + }) + ); +}; +var extractDefinitionContexts = async (matches, contentMap, getDocumentSymbolRanges = defaultGetDocumentSymbolRanges) => { + const documentSymbolsMap = new Map( + [...contentMap.keys()].filter((fsPath) => matches.some(({ location }) => location.uri.fsPath === fsPath)).map((fsPath) => [fsPath, getDocumentSymbolRanges(Uri.file(fsPath))]) + ); + await Promise.all([...documentSymbolsMap.values()]); + const contexts = []; + for (const { symbolName, hover, location } of matches) { + const { uri, range } = location; + const contentPromise = contentMap.get(uri.fsPath); + const documentSymbolsPromises = documentSymbolsMap.get(uri.fsPath); + if (contentPromise && documentSymbolsPromises) { + const content = contentPromise; + const documentSymbols = await documentSymbolsPromises; + const definitionSnippets = extractSnippets(content, documentSymbols, [range]); + for (const definitionSnippet of definitionSnippets) { + contexts.push({ + symbol: { + fuzzyName: symbolName + }, + filePath: uri.fsPath, + range: { + startLine: range.start.line, + startCharacter: range.start.character, + endLine: range.end.line, + endCharacter: range.end.character + }, + hoverText: hover.flatMap((h) => h.contents.map((c) => typeof c === "string" ? c : c.value)), + definitionSnippet + }); + } + } + } + return contexts; +}; +var defaultGetDocumentSymbolRanges = async (uri) => commands.executeCommand( + "vscode.executeDocumentSymbolProvider", + uri +).then((result) => { + if (!result) { + return []; + } + return result.map(extractSymbolRange); +}); +var defaultGetHover = async (uri, position) => commands.executeCommand("vscode.executeHoverProvider", uri, position); +var defaultGetDefinitions = async (uri, position) => commands.executeCommand("vscode.executeDefinitionProvider", uri, position).then((locations) => locations.flatMap(extractLocation)); +var defaultGetTypeDefinitions = async (uri, position) => commands.executeCommand( + "vscode.executeTypeDefinitionProvider", + uri, + position +).then((locations) => locations.flatMap(extractLocation)).then((locations) => locations.length > 0 ? locations : defaultGetDefinitions(uri, position)); +var defaultGetImplementations = async (uri, position) => commands.executeCommand( + "vscode.executeImplementationProvider", + uri, + position +).then((locations) => locations.flatMap(extractLocation)); +var extractSymbolRange = (d) => isDocumentSymbol(d) ? d.range : d.location.range; +var isDocumentSymbol = (s) => s.range !== void 0; +var extractLocation = (l2) => isLocationLink(l2) ? new Location(l2.targetUri, l2.targetRange) : l2; +var isLocationLink = (l2) => l2.targetUri !== void 0; +var extractSnippets = (lines2, symbolRanges, targetRanges) => { + const intersectingRanges = symbolRanges.filter( + (fr) => targetRanges.some((r) => fr.start.line <= r.start.line && r.end.line <= fr.end.line) + ); + return intersectingRanges.map((fr) => lines2.slice(fr.start.line, fr.end.line + 1).join("\n")); +}; +var locationKeyFn = (location) => `${location.uri?.fsPath}?L${location.range.start.line}:${location.range.start.character}`; +var unwrapThenableMap = async (map) => { + const resolved = /* @__PURE__ */ new Map(); + for (const [k, v] of map) { + resolved.set(k, await v); + } + return resolved; +}; +function isUnhelpfulHoverString(symbolName, hover) { + const trimmed = hover.trim(); + return trimmed === `interface ${symbolName}` || trimmed === `class ${symbolName}` || trimmed === `type ${symbolName}`; +} + +// ../vscode/src/chat/GraphContextProvider.ts +var GraphContextProvider = class { + constructor(editor) { + this.editor = editor; + } + getContext() { + return getGraphContextFromEditor(this.editor); + } + // ContextStatusProvider + onDidChangeStatus(_callback) { + return { + // eslint-disable-next-line @typescript-eslint/no-empty-function + dispose() { + } + }; + } + get status() { + return [ + { + name: this.editor.getWorkspaceRootUri()?.fsPath || "Workspace", + providers: [ + { + kind: "graph", + state: "ready" + } + ] + } + ]; + } +}; + +// ../vscode/src/chat/ContextProvider.ts +var ContextProvider2 = class { + constructor(config, chat, codebaseContext, editor, rgPath, symf, authProvider, platform4) { + this.config = config; + this.chat = chat; + this.codebaseContext = codebaseContext; + this.editor = editor; + this.rgPath = rgPath; + this.symf = symf; + this.authProvider = authProvider; + this.platform = platform4; + this.disposables.push(this.configurationChangeEvent); + this.currentWorkspaceRoot = ""; + this.disposables.push( + window2.onDidChangeActiveTextEditor(async () => { + await this.updateCodebaseContext(); + }), + workspace.onDidChangeWorkspaceFolders(async () => { + await this.updateCodebaseContext(); + }), + this.statusAggregator, + this.statusAggregator.onDidChangeStatus((_) => { + void this.webview?.postMessage({ + type: "enhanced-context", + context: { groups: this.statusAggregator.status } + }); + }) + ); + } + // We fire messages from ContextProvider to the sidebar webview. + // TODO(umpox): Should we add support for showing context in other places (i.e. within inline chat)? + webview; + // Fire event to let subscribers know that the configuration has changed + configurationChangeEvent = new EventEmitter(); + // Codebase-context-related state + currentWorkspaceRoot; + disposables = []; + localEmbeddings = void 0; + statusAggregator = new ContextStatusAggregator(); + statusEmbeddings = void 0; + get context() { + return this.codebaseContext; + } + // Initializes context provider state. This blocks extension activation and + // chat startup. Despite being called 'init', this is called multiple times: + // - Once on extension activation. + // - With every MessageProvider, including ChatPanelProvider. + async init() { + this.initLocalEmbeddings(); + await this.updateCodebaseContext(); + await this.publishContextStatus(); + } + initLocalEmbeddings() { + if (this.localEmbeddings) { + return; + } + } + onConfigurationChange(newConfig) { + logDebug("ContextProvider:onConfigurationChange", "using codebase", newConfig.codebase); + this.config = newConfig; + const authStatus = this.authProvider.getAuthStatus(); + if (authStatus.endpoint) { + this.config.serverEndpoint = authStatus.endpoint; + } + this.configurationChangeEvent.fire(); + } + async forceUpdateCodebaseContext() { + this.currentWorkspaceRoot = ""; + return this.syncAuthStatus(); + } + async updateCodebaseContext() { + if (!this.editor.getActiveTextEditor() && window2.visibleTextEditors.length !== 0) { + return; + } + const workspaceRoot = this.editor.getWorkspaceRootUri()?.fsPath; + if (!workspaceRoot || workspaceRoot === "" || workspaceRoot === this.currentWorkspaceRoot) { + return; + } + this.currentWorkspaceRoot = workspaceRoot; + const codebaseContext = await getCodebaseContext( + this.config, + this.rgPath, + this.symf, + this.editor, + this.chat, + this.platform, + await this.getEmbeddingClientCandidates(this.config), + this.localEmbeddings + ); + if (!codebaseContext) { + return; + } + if (this.currentWorkspaceRoot !== workspaceRoot) { + return; + } + this.codebaseContext = codebaseContext; + this.statusEmbeddings?.dispose(); + if (this.localEmbeddings && !this.codebaseContext.embeddings) { + this.statusEmbeddings = this.statusAggregator.addProvider(this.localEmbeddings); + } else if (this.codebaseContext.embeddings) { + this.statusEmbeddings = this.statusAggregator.addProvider(this.codebaseContext.embeddings); + } + await this.publishContextStatus(); + } + /** + * Save, verify, and sync authStatus between extension host and webview + * activate extension when user has valid login + */ + async syncAuthStatus() { + const authStatus = this.authProvider.getAuthStatus(); + const newConfig = await getFullConfig(); + if (authStatus.siteVersion) { + const codebaseContext = await getCodebaseContext( + newConfig, + this.rgPath, + this.symf, + this.editor, + this.chat, + this.platform, + await this.getEmbeddingClientCandidates(newConfig), + this.localEmbeddings + ); + if (codebaseContext) { + this.codebaseContext = codebaseContext; + } + } + await this.publishConfig(); + this.onConfigurationChange(newConfig); + const isLoggedOut = !authStatus.isLoggedIn && !authStatus.endpoint; + const isAppEvent = isLocalApp(authStatus.endpoint || "") ? ".app" : ""; + const eventValue = isLoggedOut ? "disconnected" : authStatus.isLoggedIn ? "connected" : "failed"; + switch ("auth" /* Auth */) { + case "auth": + telemetryService.log( + `${logPrefix(newConfig.agentIDE)}:Auth${isAppEvent.replace(/^\./, ":")}:${eventValue}`, + void 0, + { agent: true } + ); + telemetryRecorder.recordEvent(`cody.auth${isAppEvent}`, eventValue); + break; + } + } + /** + * Publish the current context status to the webview. + */ + async publishContextStatus() { + const send = async () => { + const editorContext = this.editor.getActiveTextEditor(); + await this.webview?.postMessage({ + type: "contextStatus", + contextStatus: { + mode: this.config.useContext, + endpoint: this.authProvider.getAuthStatus().endpoint || void 0, + connection: this.codebaseContext.checkEmbeddingsConnection(), + embeddingsEndpoint: this.codebaseContext.embeddingsEndpoint, + codebase: this.codebaseContext.getCodebase(), + filePath: editorContext ? workspace.asRelativePath(editorContext.filePath) : void 0, + selectionRange: editorContext?.selectionRange, + supportsKeyword: true + } + }); + }; + const throttledSend = (0, import_lodash8.throttle)(send, 250, { leading: true, trailing: true }); + this.disposables.push(this.configurationChangeEvent.event(() => throttledSend())); + this.disposables.push(window2.onDidChangeActiveTextEditor(() => throttledSend())); + this.disposables.push(window2.onDidChangeTextEditorSelection(() => throttledSend())); + return throttledSend(); + } + /** + * Publish the config to the webview. + */ + async publishConfig() { + const send = async () => { + this.config = await getFullConfig(); + const authStatus = this.authProvider.getAuthStatus(); + const localProcess = await this.authProvider.appDetector.getProcessInfo(authStatus.isLoggedIn); + const configForWebview = { + ...localProcess, + debugEnable: this.config.debugEnable, + serverEndpoint: this.config.serverEndpoint, + experimentalChatPanel: this.config.experimentalChatPanel + }; + await this.updateCodebaseContext(); + await this.webview?.postMessage({ type: "config", config: configForWebview, authStatus }); + logDebug("Cody:publishConfig", "configForWebview", { verbose: configForWebview }); + }; + await send(); + } + dispose() { + for (const disposable of this.disposables) { + disposable.dispose(); + } + this.disposables = []; + } + async hackGetEmbeddingClientCandidates(config) { + return this.getEmbeddingClientCandidates(config); + } + // Gets a list of GraphQL clients to interrogate for embeddings + // availability. + getEmbeddingClientCandidates(config) { + return Promise.resolve([new SourcegraphGraphQLAPIClient(config)]); + } + localEmbeddingsIndexRepository() { + void this.localEmbeddings?.index(); + } +}; +function hackGetCodebaseContext(config, rgPath, symf, editor, chatClient, platform4, embeddingsClientCandidates, localEmbeddings) { + return getCodebaseContext( + config, + rgPath, + symf, + editor, + chatClient, + platform4, + embeddingsClientCandidates, + localEmbeddings + ); +} +async function getCodebaseContext(config, rgPath, symf, editor, chatClient, platform4, embeddingsClientCandidates, localEmbeddings) { + const workspaceRoot = editor.getWorkspaceRootUri(); + if (!workspaceRoot) { + return null; + } + const remoteUrl = repositoryRemoteUrl(workspaceRoot); + const codebase = config.codebase || (remoteUrl ? convertGitCloneURLToCodebaseName(remoteUrl) : null); + if (!codebase) { + return null; + } + let [embeddingsSearch, hasLocalEmbeddings, _] = await Promise.all([ + // Find a embeddings clients + EmbeddingsDetector.newEmbeddingsSearchClient(embeddingsClientCandidates, codebase, workspaceRoot.fsPath), + // Instruct local embeddings to load the index for this codebase, if it exists + localEmbeddings?.load(gitDirectoryUri(workspaceRoot)?.fsPath), + config.accessToken ? localEmbeddings?.setAccessToken(config.accessToken) : Promise.resolve(void 0) + ]); + if (isError2(embeddingsSearch)) { + logDebug( + "ContextProvider:getCodebaseContext", + `Cody could not find embeddings for '${codebase}' on your Sourcegraph instance` + ); + embeddingsSearch = void 0; + } + return new CodebaseContext( + config, + codebase, + // Use embeddings search if there are no local embeddings. + !hasLocalEmbeddings && embeddingsSearch || null, + rgPath ? platform4.createLocalKeywordContextFetcher?.(rgPath, editor, chatClient) ?? null : null, + rgPath ? platform4.createFilenameContextFetcher?.(rgPath, editor, chatClient) ?? null : null, + new GraphContextProvider(editor), + // Use local embeddings if we have them. + hasLocalEmbeddings && localEmbeddings || null, + symf, + void 0 + ); +} + +// ../vscode/src/chat/FixupViewProvider.ts +var FixupManager = class { + fixupProviders = /* @__PURE__ */ new Map(); + messageProviderOptions; + constructor(options2) { + this.messageProviderOptions = options2; + } + getProviderForTask(task) { + let provider = this.fixupProviders.get(task); + if (!provider) { + provider = new FixupProvider({ task, ...this.messageProviderOptions }); + this.fixupProviders.set(task, provider); + } + return provider; + } + removeProviderForTask(task) { + const provider = this.fixupProviders.get(task); + if (provider) { + this.fixupProviders.delete(task); + provider.dispose(); + } + } +}; +var FixupProvider = class extends MessageProvider { + task; + constructor({ task, ...options2 }) { + super(options2); + this.task = task; + } + async startFix() { + await this.executeRecipe("fixup", this.task.id, this.task.source); + } + async abortFix() { + await this.abortCompletion(); + } + /** + * Send transcript to the fixup + */ + handleTranscript(transcript, isMessageInProgress) { + const lastMessage = transcript.at(-1); + if (lastMessage?.speaker !== "assistant") { + return; + } + if (!lastMessage.text && !isMessageInProgress) { + this.handleError("Cody did not respond with any text"); + } + if (lastMessage.text) { + void this.editor.controllers.fixups?.didReceiveFixupText( + this.task.id, + contentSanitizer(lastMessage.text), + isMessageInProgress ? "streaming" : "complete" + ); + } + } + /** + * Display an erred codelens to the user on failed fixup apply. + * Will allow the user to view the error in more detail if needed. + */ + handleError(errorMsg) { + this.editor.controllers.fixups?.error(this.task.id, errorMsg); + } + handleCodyCommands() { + } + handleHistory() { + } + handleSuggestions() { + } + handleMyPrompts() { + } +}; + +// ../vscode/src/chat/InlineChatViewProvider.ts +var InlineChatViewManager = class { + inlineChatThreadProviders = /* @__PURE__ */ new Map(); + messageProviderOptions; + constructor(options2) { + this.messageProviderOptions = options2; + } + getProviderForThread(thread) { + let provider = this.inlineChatThreadProviders.get(thread); + if (!provider) { + provider = new InlineChatViewProvider({ thread, ...this.messageProviderOptions }); + this.inlineChatThreadProviders.set(thread, provider); + } + return provider; + } + removeProviderForThread(thread) { + const provider = this.inlineChatThreadProviders.get(thread); + if (provider) { + this.inlineChatThreadProviders.delete(thread); + provider.removeChat(); + provider.dispose(); + } + } +}; +var InlineChatViewProvider = class extends MessageProvider { + thread; + constructor({ thread, ...options2 }) { + super(options2); + this.thread = thread; + } + async addChat(reply, isEditMode) { + void commands.executeCommand("setContext", "cody.inline.reply.pending", true); + await this.editor.controllers.inline?.chat(reply, this.thread, isEditMode); + this.editor.controllers.inline?.setResponsePending(true); + await this.executeRecipe("inline-chat", reply.trimStart(), "inline-chat"); + } + removeChat() { + this.editor.controllers.inline?.delete(this.thread); + } + async abortChat() { + this.editor.controllers.inline?.abort(); + await this.abortCompletion(); + void commands.executeCommand("setContext", "cody.inline.reply.pending", false); + } + /** + * Send transcript to the active inline chat thread. + */ + handleTranscript(transcript, isMessageInProgress) { + const lastMessage = transcript.at(-1); + if (lastMessage?.speaker !== "assistant") { + return; + } + if (lastMessage.displayText) { + this.editor.controllers.inline?.setResponsePending(false); + this.editor.controllers.inline?.reply( + lastMessage.displayText, + isMessageInProgress ? "streaming" : "complete" + ); + } + if (!isMessageInProgress) { + void commands.executeCommand("setContext", "cody.inline.reply.pending", false); + } + } + /** + * Display error message in the active inline chat thread.. + * Unlike the sidebar, this message is displayed as an assistant response. + * TODO(umpox): Should we render these differently for inline chat? We are limited in UI options. + */ + handleError(errorMsg) { + void this.editor.controllers.inline?.error(errorMsg); + } + handleHistory() { + } + handleSuggestions() { + } + handleCodyCommands() { + } +}; + +// ../vscode/src/code-actions/document.ts +var DocumentCodeAction = class { + static providedCodeActionKinds = [CodeActionKind.RefactorRewrite]; + provideCodeActions(document2, range) { + const [documentableNode] = execQueryWrapper(document2, range.start, "getDocumentableNode"); + if (!documentableNode) { + return []; + } + const { node, name } = documentableNode; + const documentableRange = new Range( + document2.lineAt(node.startPosition.row).range.start, + document2.lineAt(node.endPosition.row).range.end + ); + const displayText = name === "documentableNode" ? `Ask Cody to Document: ${node.text}` : "Ask Cody to Document This Export"; + return [this.createCommandCodeAction(document2, documentableRange, displayText)]; + } + createCommandCodeAction(document2, range, displayText) { + const action = new CodeAction(displayText, CodeActionKind.RefactorRewrite); + const source2 = "code-action:document"; + action.command = { + command: "cody.command.edit-code", + arguments: [ + { + instruction: this.instruction, + range, + intent: "doc", + document: document2, + insertMode: true + }, + source2 + ], + title: displayText + }; + return action; + } + /** + * Edit instruction for generating documentation. + * Note: This is a clone of the hard coded instruction in `lib/shared/src/chat/prompts/cody.json`. + * TODO: (umpox) Consider moving top level instructions out of the JSON format. + */ + instruction = "Write a brief documentation comment for the selected code. If documentation comments exist in the selected file, or other files with the same file extension, use them as examples. Pay attention to the scope of the selected code (e.g. exported function/API vs implementation detail in a function), and use the idiomatic style for that type of code scope. Only generate the documentation for the selected code, do not generate the code. Do not output any other code or comments besides the documentation. Output only the comment and do not enclose it in markdown."; +}; + +// ../vscode/src/code-actions/edit.ts +var EditCodeAction = class { + static providedCodeActionKinds = [CodeActionKind.RefactorRewrite]; + provideCodeActions(document2) { + const editor = window2.activeTextEditor; + if (!editor) { + return []; + } + if (editor.selection.isEmpty && !document2.lineAt(editor.selection.start.line).isEmptyOrWhitespace) { + return []; + } + if (editor.selection.isEmpty) { + return [this.createCommandCodeAction(document2, "Ask Cody to Generate")]; + } + return [this.createCommandCodeAction(document2, "Ask Cody to Edit", editor.selection)]; + } + createCommandCodeAction(document2, displayText, selection) { + const action = new CodeAction(displayText, CodeActionKind.RefactorRewrite); + const source2 = "code-action:edit"; + action.command = { + command: "cody.command.edit-code", + arguments: [ + { + range: selection ? new Range(selection.start, selection.end) : void 0, + intent: "edit", + document: document2 + }, + source2 + ], + title: displayText + }; + return action; + } +}; + +// ../vscode/src/code-actions/explain.ts +var ExplainCodeAction = class { + static providedCodeActionKinds = [CodeActionKind.QuickFix]; + provideCodeActions(document2, range, context2) { + const diagnostics = context2.diagnostics.filter( + (diagnostic) => diagnostic.severity === 0 /* Error */ || diagnostic.severity === 1 /* Warning */ + ); + if (diagnostics.length === 0) { + return []; + } + return [this.createCommandCodeAction(diagnostics)]; + } + createCommandCodeAction(diagnostics) { + const action = new CodeAction("Ask Cody to Explain", CodeActionKind.QuickFix); + const instruction = this.getCodeActionInstruction(diagnostics); + action.command = { + command: "cody.action.chat", + arguments: [instruction, "code-action:explain"], + title: "Ask Cody to Explain" + }; + action.diagnostics = diagnostics; + return action; + } + getCodeActionInstruction = (diagnostics) => `Explain the following error${diagnostics.length > 1 ? "s" : ""}: + +${diagnostics.map(({ message }) => `\`\`\`${message}\`\`\``).join("\n\n")}`; +}; + +// ../vscode/src/code-actions/fixup.ts +var FIX_PROMPT_TOPICS = { + SOURCE: "PROBLEMCODE4179", + RELATED: "RELATEDCODE50" + // Note: We append additional digits to this topic as a single problem code can have multiple related code. +}; +var FixupCodeAction = class { + static providedCodeActionKinds = [CodeActionKind.QuickFix]; + async provideCodeActions(document2, range, context2) { + const diagnostics = context2.diagnostics.filter( + (diagnostic) => diagnostic.severity === 0 /* Error */ || diagnostic.severity === 1 /* Warning */ + ); + if (diagnostics.length === 0) { + return []; + } + const expandedRange = new Range( + document2.lineAt(range.start.line).range.start, + document2.lineAt(range.end.line).range.end + ); + const targetAreaRange = await getSmartSelection(document2.uri, range.start.line); + const newRange = targetAreaRange ? new Range(targetAreaRange.start, targetAreaRange.end) : expandedRange; + const codeAction = await this.createCommandCodeAction(document2, diagnostics, newRange); + return [codeAction]; + } + async createCommandCodeAction(document2, diagnostics, range) { + const action = new CodeAction("Ask Cody to Fix", CodeActionKind.QuickFix); + const instruction = await this.getCodeActionInstruction(document2.getText(range), diagnostics); + const source2 = "code-action:fix"; + action.command = { + command: "cody.command.edit-code", + arguments: [{ instruction, range, intent: "fix", document: document2 }, source2], + title: "Ask Cody to Fix" + }; + action.diagnostics = diagnostics; + return action; + } + // Public for testing + async getCodeActionInstruction(code, diagnostics) { + const prompt2 = [`<${FIX_PROMPT_TOPICS.SOURCE}>${code} +`]; + for (let i = 0; i < diagnostics.length; i++) { + const { message, source: source2, severity, relatedInformation } = diagnostics[i]; + const diagnosticType = severity === 1 /* Warning */ ? "warning" : "error"; + prompt2.push( + `Fix the following ${source2 ? `${source2} ` : ""}${diagnosticType} from within <${FIX_PROMPT_TOPICS.SOURCE}>: ${message}` + ); + if (relatedInformation?.length) { + prompt2.push("Code related to this diagnostic:"); + const relatedInfo = await this.getRelatedInformationContext(relatedInformation); + prompt2.push(...relatedInfo); + } + if (i < diagnostics.length - 1) { + prompt2.push("\n"); + } + } + return prompt2.join("\n"); + } + async getRelatedInformationContext(relatedInformation) { + const prompt2 = []; + for (let i = 0; i < relatedInformation.length; i++) { + const { location, message } = relatedInformation[i]; + prompt2.push(message); + const document2 = await workspace.openTextDocument(location.uri); + prompt2.push( + `<${FIX_PROMPT_TOPICS.RELATED}${i}>${document2.getText(location.range)} +` + ); + } + return prompt2; + } +}; + +// ../vscode/src/code-actions/CodeActionProvider.ts +var CodeActionProvider = class { + configurationChangeListener; + actionProviders = []; + constructor(options2) { + this.registerCodeActions(options2.contextProvider.config); + this.configurationChangeListener = options2.contextProvider.configurationChangeEvent.event(() => { + this.registerCodeActions(options2.contextProvider.config); + }); + } + registerCodeActions(config) { + this.actionProviders.forEach((provider) => provider.dispose()); + this.actionProviders = []; + if (!config.codeActions) { + return; + } + this.addActionProvider(EditCodeAction); + this.addActionProvider(DocumentCodeAction); + this.addActionProvider(ExplainCodeAction); + this.addActionProvider(FixupCodeAction); + } + addActionProvider(ActionType) { + const provider = languages.registerCodeActionsProvider("*", new ActionType(), { + providedCodeActionKinds: ActionType.providedCodeActionKinds + }); + this.actionProviders.push(provider); + } + dispose() { + this.configurationChangeListener.dispose(); + this.actionProviders.forEach((provider) => provider.dispose()); + } +}; + +// ../vscode/src/completions/inline-completion-item-provider.ts +var import_date_fns = __toESM(require_date_fns()); + +// ../vscode/src/completions/artificial-delay.ts +var defaultLatencies = { + user: 200, + lowPerformance: 1e3, + max: 2e3 +}; +var lowPerformanceLanguageIds = /* @__PURE__ */ new Set([ + "css", + "html", + "scss", + "vue", + "dart", + "json", + "yaml", + "postcss", + "markdown", + "plaintext", + "xml", + "twig", + "jsonc", + "handlebars" +]); +var lowPerformanceCompletionIntents = /* @__PURE__ */ new Set(["comment", "import.source"]); +var userMetrics = { + sessionTimestamp: 0, + currentLatency: 0, + suggested: 0, + uri: "" +}; +function getArtificialDelay(featureFlags, uri, languageId, completionIntent) { + let baseline = 0; + const isLowPerformanceLanguageId = lowPerformanceLanguageIds.has(languageId); + const isLowPerformanceCompletionIntent = completionIntent && lowPerformanceCompletionIntents.has(completionIntent); + if (isLowPerformanceLanguageId || isLowPerformanceCompletionIntent) { + baseline = defaultLatencies.lowPerformance; + } + const timestamp = Date.now(); + if (!userMetrics.sessionTimestamp) { + userMetrics.sessionTimestamp = timestamp; + } + const elapsed = timestamp - userMetrics.sessionTimestamp; + if (elapsed >= 5 * 60 * 1e3 || userMetrics.uri !== uri) { + resetArtificialDelay(timestamp); + } + userMetrics.suggested++; + userMetrics.uri = uri; + const total = Math.max(baseline, Math.min(baseline + userMetrics.currentLatency, defaultLatencies.max)); + if (userMetrics.suggested >= 5 && userMetrics.currentLatency < defaultLatencies.max) { + userMetrics.currentLatency += featureFlags.user ? defaultLatencies.user : 0; + } + if (total > 0) { + logDebug("CodyCompletionProvider:getLatency", `Delay added: ${total}`); + } + return total; +} +function resetArtificialDelay(timestamp = 0) { + userMetrics = { + sessionTimestamp: timestamp, + currentLatency: 0, + suggested: 0, + uri: "" + }; +} + +// ../vscode/src/completions/context/context-mixer.ts +var RRF_K = 60; +var ContextMixer = class { + constructor(strategyFactory) { + this.strategyFactory = strategyFactory; + } + async getContext(options2) { + const start4 = performance.now(); + const { name: strategy, retrievers } = this.strategyFactory.getStrategy(options2.document); + if (retrievers.length === 0) { + return { + context: [], + logSummary: { + strategy: "none", + totalChars: 0, + duration: 0, + retrieverStats: {} + } + }; + } + const results = await Promise.all( + retrievers.map(async (retriever) => { + const retrieverStart = performance.now(); + const snippets = await startAsyncSpan( + `autocomplete.retrieve.${retriever.identifier}`, + () => retriever.retrieve({ + ...options2, + hints: { + maxChars: options2.maxChars, + maxMs: 150 + } + }) + ); + return { + identifier: retriever.identifier, + duration: performance.now() - retrieverStart, + snippets + }; + }) + ); + const resultsByDocument = /* @__PURE__ */ new Map(); + for (const { identifier, snippets } of results) { + for (const snippet of snippets) { + const documentId = snippet.fileName; + let document2 = resultsByDocument.get(documentId); + if (!document2) { + document2 = {}; + resultsByDocument.set(documentId, document2); + } + if (!document2[identifier]) { + document2[identifier] = []; + } + document2[identifier].push(snippet); + } + } + const fusedDocumentScores = /* @__PURE__ */ new Map(); + for (const { identifier, snippets } of results) { + snippets.forEach((snippet, rank) => { + const documentId = snippet.fileName; + const isBestRankForRetriever = resultsByDocument.get(documentId)?.[identifier][0] === snippet; + if (!isBestRankForRetriever) { + return; + } + const reciprocalRank = 1 / (RRF_K + rank); + const score = fusedDocumentScores.get(documentId); + if (score === void 0) { + fusedDocumentScores.set(documentId, reciprocalRank); + } else { + fusedDocumentScores.set(documentId, score + reciprocalRank); + } + }); + } + const fusedDocuments = [...fusedDocumentScores.entries()].sort((a, b) => b[1] - a[1]).map((e) => e[0]); + const mixedContext = []; + const retrieverStats = {}; + let totalChars = 0; + let position = 0; + for (const documentId of fusedDocuments) { + const resultByDocument = resultsByDocument.get(documentId); + if (!resultByDocument) { + continue; + } + const maxMatches = Math.max(...Object.values(resultByDocument).map((r) => r.length)); + for (let i = 0; i < maxMatches; i++) { + for (const [identifier, snippets] of Object.entries(resultByDocument)) { + if (i >= snippets.length) { + continue; + } + const snippet = snippets[i]; + if (totalChars + snippet.content.length > options2.maxChars) { + continue; + } + mixedContext.push(snippet); + totalChars += snippet.content.length; + if (!retrieverStats[identifier]) { + retrieverStats[identifier] = { + suggestedItems: 0, + positionBitmap: 0, + retrievedItems: results.find((r) => r.identifier === identifier)?.snippets.length ?? 0, + duration: results.find((r) => r.identifier === identifier)?.duration ?? 0 + }; + } + retrieverStats[identifier].suggestedItems++; + if (position < 32) { + retrieverStats[identifier].positionBitmap |= 1 << position; + } + position++; + } + } + } + const logSummary = { + strategy, + duration: performance.now() - start4, + totalChars, + retrieverStats + }; + return { + context: mixedContext, + logSummary + }; + } + dispose() { + this.strategyFactory.dispose(); + } +}; + +// ../vscode/src/completions/context/retrievers/jaccard-similarity/jaccard-similarity-retriever.ts +var import_path11 = __toESM(require("path")); + +// ../vscode/src/completions/context/utils.ts +function baseLanguageId(languageId) { + switch (languageId) { + case "typescript": + case "typescriptreact": + return "typescript"; + case "javascript": + case "javascriptreact": + return "javascript"; + default: + return languageId; + } +} +var CustomAbortController = class { + signal = new CustomAbortSignal(); + abort() { + this.signal.abort(); + } +}; +var CustomAbortSignal = class { + listeners = /* @__PURE__ */ new Set(); + aborted = false; + addEventListener(eventName, listener) { + if (this.aborted) { + void Promise.resolve().then(() => listener()); + return; + } + this.listeners.add(listener); + } + removeEventListener(listener) { + this.listeners.delete(listener); + } + abort() { + if (this.aborted) { + return; + } + this.aborted = true; + for (const listener of this.listeners) { + listener(); + } + this.listeners.clear(); + } +}; + +// ../vscode/src/completions/context/retrievers/jaccard-similarity/bestJaccardMatch.ts +var import_wink_nlp_utils = __toESM(require_wink_nlp_utils()); +function bestJaccardMatch(targetText, matchText, windowSize) { + const wordCount = (words) => { + let count = 0; + for (const v of words.values()) { + count += v; + } + return count; + }; + const subtract = (minuend, subtrahend) => { + let decrease = 0; + for (const [word, count] of subtrahend) { + const currentCount = minuend.get(word) || 0; + const newCount = Math.max(0, currentCount - count); + minuend.set(word, newCount); + decrease += newCount - currentCount; + } + return decrease; + }; + const add = (target, window3, intersection, newLine) => { + let windowIncrease = 0; + let intersectionIncrease = 0; + for (const [word, count] of newLine) { + windowIncrease += count; + window3.set(word, (window3.get(word) || 0) + count); + const targetCount2 = target.get(word) || 0; + if (targetCount2 > 0) { + const intersectionCount = intersection.get(word) || 0; + const newIntersectionCount = Math.min(count + intersectionCount, targetCount2); + intersection.set(word, newIntersectionCount); + intersectionIncrease += newIntersectionCount - intersectionCount; + } + } + return { windowIncrease, intersectionIncrease }; + }; + const targetWords = getWords(targetText); + const targetCount = wordCount(targetWords); + const lines2 = matchText.split("\n"); + const wordsForEachLine = lines2.map((line) => getWords(line)); + const windowWords = /* @__PURE__ */ new Map(); + for (let i = 0; i < Math.min(windowSize, lines2.length); i++) { + for (const [wordInThisLine, wordInThisLineCount] of wordsForEachLine[i].entries()) { + windowWords.set(wordInThisLine, (windowWords.get(wordInThisLine) || 0) + wordInThisLineCount); + } + } + let windowCount = wordCount(windowWords); + const bothWords = /* @__PURE__ */ new Map(); + for (const [word, wordCount2] of targetWords.entries()) { + bothWords.set(word, Math.min(wordCount2, windowWords.get(word) || 0)); + } + let bothCount = wordCount(bothWords); + let bestScore = jaccardDistance(targetCount, windowCount, bothCount); + let bestWindow = [0, Math.min(windowSize, lines2.length)]; + for (let i = 0; i < wordsForEachLine.length - windowSize; i++) { + windowCount += subtract(windowWords, wordsForEachLine[i]); + bothCount += subtract(bothWords, wordsForEachLine[i]); + const { windowIncrease, intersectionIncrease } = add( + targetWords, + windowWords, + bothWords, + wordsForEachLine[i + windowSize] + ); + windowCount += windowIncrease; + bothCount += intersectionIncrease; + if (i % 5 === 0) { + const score = jaccardDistance(targetCount, windowCount, bothCount); + if (score > bestScore) { + bestScore = score; + bestWindow = [i + 1, i + windowSize + 1]; + } + } + } + return { + score: bestScore, + content: lines2.slice(bestWindow[0], bestWindow[1]).join("\n") + }; +} +function jaccardDistance(left, right, intersection) { + const union = left + right - intersection; + if (union < 0) { + throw new Error("intersection can't be greater than the sum of left and right"); + } + if (union === 0) { + return 0; + } + return intersection / union; +} +function getWords(s) { + const frequencyCounter = /* @__PURE__ */ new Map(); + const words = import_wink_nlp_utils.default.string.tokenize0(s); + const filteredWords = import_wink_nlp_utils.default.tokens.removeWords(words); + const stems = import_wink_nlp_utils.default.tokens.stem(filteredWords); + for (const stem of stems) { + frequencyCounter.set(stem, (frequencyCounter.get(stem) || 0) + 1); + } + return frequencyCounter; +} + +// ../vscode/src/completions/context/retrievers/jaccard-similarity/history.ts +var VSCodeDocumentHistory = class { + window = 50; + // tracks history in chronological order (latest at the end of the array) + history; + subscriptions = []; + constructor(register2 = () => window2.onDidChangeActiveTextEditor((event) => { + if (!event?.document.uri) { + return; + } + this.addItem({ + document: event.document + }); + })) { + this.history = []; + if (register2) { + const disposable = register2(); + if (disposable) { + this.subscriptions.push(disposable); + } + } + } + dispose() { + Disposable.from(...this.subscriptions).dispose(); + } + addItem(newItem) { + if (newItem.document.uri.scheme === "codegen") { + return; + } + const foundIndex = this.history.findIndex( + (item) => item.document.uri.toString() === newItem.document.uri.toString() + ); + if (foundIndex >= 0) { + this.history = [...this.history.slice(0, foundIndex), ...this.history.slice(foundIndex + 1)]; + } + this.history.push(newItem); + if (this.history.length > this.window) { + this.history.shift(); + } + } + /** + * Returns the last n items of history in reverse chronological order (latest item at the front) + */ + lastN(n, languageId, ignoreUris) { + const ret2 = []; + const ignoreSet = new Set(ignoreUris || []); + for (let i = this.history.length - 1; i >= 0; i--) { + const item = this.history[i]; + if (ret2.length > n) { + break; + } + if (ignoreSet.has(item.document.uri)) { + continue; + } + if (languageId && languageId !== item.document.languageId) { + continue; + } + ret2.push(item); + } + return ret2; + } +}; + +// ../vscode/src/completions/context/retrievers/jaccard-similarity/jaccard-similarity-retriever.ts +var SNIPPET_WINDOW_SIZE = 50; +var JaccardSimilarityRetriever = class { + identifier = "jaccard-similarity"; + history = new VSCodeDocumentHistory(); + async retrieve({ document: document2, docContext, abortSignal }) { + const targetText = lastNLines(docContext.prefix, SNIPPET_WINDOW_SIZE); + const files = await getRelevantFiles(document2, this.history); + const matches = []; + for (const { uri, contents } of files) { + const match2 = bestJaccardMatch(targetText, contents, SNIPPET_WINDOW_SIZE); + if (!match2 || abortSignal?.aborted) { + continue; + } + matches.push({ + // Use relative path to remove redundant information from the prompts and + // keep in sync with embeddings search results which use relative to repo root paths + fileName: import_path11.default.normalize(workspace.asRelativePath(uri.fsPath)), + ...match2 + }); + } + matches.sort((a, b) => b.score - a.score); + return matches; + } + isSupportedForLanguageId() { + return true; + } + dispose() { + this.history.dispose(); + } +}; +async function getRelevantFiles(currentDocument, history) { + const files = []; + const curLang = currentDocument.languageId; + if (!curLang) { + return []; + } + function addDocument(document2) { + if (document2.uri.toString() === currentDocument.uri.toString()) { + return; + } + if (!["file", "vscode-userdata"].includes(document2.uri.scheme)) { + return; + } + if (baseLanguageId(document2.languageId) !== baseLanguageId(curLang)) { + return; + } + const endLine = Math.min(document2.lineCount, 1e4); + const range = new Range(0, 0, endLine, 0); + files.push({ + uri: document2.uri, + contents: document2.getText(range) + }); + } + const visibleUris = window2.visibleTextEditors.flatMap( + (e) => e.document.uri.scheme === "file" ? [e.document.uri] : [] + ); + const allUris = window2.tabGroups.all.flatMap(({ tabs }) => tabs.map((tab) => tab.input?.uri)).filter(Boolean); + const uris = /* @__PURE__ */ new Map(); + const surroundingTabs = visibleUris.length <= 1 ? 3 : 2; + for (const visibleUri of visibleUris) { + uris.set(visibleUri.toString(), visibleUri); + const index = allUris.findIndex((uri) => uri.toString() === visibleUri.toString()); + if (index === -1) { + continue; + } + const start4 = Math.max(index - surroundingTabs, 0); + const end = Math.min(index + surroundingTabs, allUris.length - 1); + for (let j = start4; j <= end; j++) { + uris.set(allUris[j].toString(), allUris[j]); + } + } + const docs = (await Promise.all( + [...uris.values()].map(async (uri) => { + if (!uri) { + return []; + } + try { + return [await workspace.openTextDocument(uri)]; + } catch (error) { + console.error(error); + return []; + } + }) + )).flat(); + for (const document2 of docs) { + if (document2.fileName.endsWith(".git")) { + continue; + } + addDocument(document2); + } + await Promise.all( + history.lastN(10, curLang, [currentDocument.uri, ...files.map((f) => f.uri)]).map(async (item) => { + try { + const document2 = await workspace.openTextDocument(item.document.uri); + addDocument(document2); + } catch (error) { + console.error(error); + } + }) + ); + return files; +} +function lastNLines(text, n) { + const lines2 = text.split("\n"); + return lines2.slice(Math.max(0, lines2.length - n)).join("\n"); +} + +// ../vscode/src/completions/context/retrievers/lsp-light/lsp-light-retriever.ts +var import_path12 = __toESM(require("path")); +var import_lodash9 = __toESM(require_lodash()); +var import_vscode_uri4 = __toESM(require_umd()); +var LspLightRetriever = class { + constructor(window3 = window2, workspace2 = workspace, getGraphContextFromRange2 = getGraphContextFromRange) { + this.window = window3; + this.workspace = workspace2; + this.getGraphContextFromRange = getGraphContextFromRange2; + this.onDidChangeTextEditorSelection = (0, import_lodash9.debounce)(this.onDidChangeTextEditorSelection.bind(this), 100); + this.disposables.push( + this.window.onDidChangeTextEditorSelection(this.onDidChangeTextEditorSelection.bind(this)), + this.workspace.onDidChangeTextDocument(this.onDidChangeTextDocument.bind(this)) + ); + } + identifier = "lsp-light"; + disposables = []; + cache = new GraphCache(); + lastRequestKey = null; + abortLastRequest = () => { + }; + async retrieve({ + document: document2, + position, + hints: { maxChars } + }) { + const key = `${document2.uri.toString()}\u2588${position.line}\u2588${document2.lineAt(position.line).text}`; + if (this.lastRequestKey !== key) { + this.abortLastRequest(); + } + const abortController = new CustomAbortController(); + this.lastRequestKey = key; + this.abortLastRequest = () => abortController.abort(); + const prevLine = Math.max(position.line - 1, 0); + const currentLine = position.line; + const [prevLineContext, currentLineContext] = await Promise.all([ + this.getLspContextForLine({ document: document2, line: prevLine, abortSignal: abortController.signal }), + this.getLspContextForLine({ document: document2, line: currentLine, abortSignal: abortController.signal }) + ]); + const sectionGraphContext = [...prevLineContext, ...currentLineContext]; + if (maxChars === 0) { + return []; + } + return hoverContextsToSnippets(sectionGraphContext); + } + isSupportedForLanguageId(languageId) { + return supportedLanguageId(languageId); + } + getLspContextForLine({ + document: document2, + line, + abortSignal + }) { + const request = { + document: document2, + line + }; + const res = this.cache.get(request); + if (res) { + return res; + } + const range = document2.lineAt(line).range; + let finished = false; + const promise = this.getGraphContextFromRange(document2, range, abortSignal).then((response) => { + finished = true; + return response; + }); + abortSignal.addEventListener("abort", () => { + if (!finished) { + this.cache.delete(request); + } + }); + this.cache.set(request, promise); + return promise; + } + dispose() { + this.abortLastRequest(); + for (const disposable of this.disposables) { + disposable.dispose(); + } + } + /** + * When the cursor is moving into a new line, we want to fetch the context for the new line. + */ + onDidChangeTextEditorSelection(event) { + if (!supportedLanguageId(event.textEditor.document.languageId)) { + return; + } + void this.retrieve({ + document: event.textEditor.document, + position: event.selections[0].active, + hints: { maxChars: 0 } + }); + } + /** + * Whenever there are changes to a document, all cached contexts for other documents must be + * evicted + */ + onDidChangeTextDocument(event) { + this.cache.evictForOtherDocuments(event.document.uri); + } +}; +var MAX_CACHED_DOCUMENTS = 10; +var MAX_CACHED_LINES = 100; +var GraphCache = class { + // This is a nested cache. The first level is the file uri, the second level is the line inside + // the file. + cache = new LRUCache({ max: MAX_CACHED_DOCUMENTS }); + toCacheKeys(key) { + return [key.document.uri.toString(), `${key.line}\u2588${key.document.lineAt(key.line).text}`]; + } + get(key) { + const [docKey, lineKey] = this.toCacheKeys(key); + const docCache = this.cache.get(docKey); + if (!docCache) { + return void 0; + } + return docCache.get(lineKey); + } + set(key, entry) { + const [docKey, lineKey] = this.toCacheKeys(key); + let docCache = this.cache.get(docKey); + if (!docCache) { + docCache = new LRUCache({ max: MAX_CACHED_LINES }); + this.cache.set(docKey, docCache); + } + docCache.set(lineKey, entry); + } + delete(key) { + const [docKey, lineKey] = this.toCacheKeys(key); + const docCache = this.cache.get(docKey); + if (!docCache) { + return void 0; + } + docCache.delete(lineKey); + } + evictForOtherDocuments(uri) { + const keysToDelete = []; + this.cache.forEach((_, otherUri) => { + if (otherUri === uri.toString()) { + return; + } + keysToDelete.push(otherUri); + }); + for (const key of keysToDelete) { + this.cache.delete(key); + } + } +}; +function hoverContextsToSnippets(contexts) { + return dedupeWith( + contexts.map(hoverContextToSnippets), + (context2) => [context2.symbol, context2.fileName, context2.content].join("\n") + ); +} +function hoverContextToSnippets(context2) { + return { + fileName: import_path12.default.normalize(workspace.asRelativePath(import_vscode_uri4.URI.parse(context2.uri).fsPath)), + symbol: context2.symbolName, + content: context2.content.join("\n").trim() + }; +} +function supportedLanguageId(languageId) { + switch (languageId) { + case "python": + case "go": + case "javascript": + case "javascriptreact": + case "typescript": + case "typescriptreact": + return true; + default: + return false; + } +} + +// ../vscode/src/completions/context/retrievers/section-history/section-history-retriever.ts +var import_path13 = __toESM(require("path")); + +// ../vscode/src/graph/lsp/sections.ts +async function getGraphDocumentSections(document2) { + const label = "build document symbols map"; + performance.mark(label); + const ranges = await getDocumentSections(document2); + const sections = []; + for (const range of ranges) { + sections.push({ + fuzzyName: extractFuzzyName(document2, range), + location: new Location(document2.uri, range) + }); + } + performance.mark(label); + return sections; +} +function extractFuzzyName(document2, range) { + const content = document2.getText(range); + for (const match2 of content.matchAll(identifierPattern)) { + if (match2.index === void 0 || commonKeywords.has(match2[0])) { + continue; + } + return match2[0]; + } + return null; +} + +// ../vscode/src/completions/utils.ts +var anthropic = __toESM(require_src2()); +function messagesToText(messages) { + return messages.map( + (message) => `${message.speaker === "human" ? anthropic.HUMAN_PROMPT : anthropic.AI_PROMPT}${message.text === void 0 ? "" : " " + message.text}` + ).join(""); +} +function forkSignal(signal) { + const controller = new AbortController(); + if (signal.aborted) { + controller.abort(); + } + signal.addEventListener("abort", () => controller.abort()); + return controller; +} +function createSubscriber() { + const listeners = /* @__PURE__ */ new Set(); + function subscribe(listener) { + listeners.add(listener); + return () => listeners.delete(listener); + } + function notify(value) { + for (const listener of listeners) { + listener(value); + } + } + return { + subscribe, + notify + }; +} + +// ../vscode/src/completions/context/retrievers/section-history/section-history-retriever.ts +var TEN_MINUTES = 10 * 60 * 1e3; +var NUM_OF_CHANGED_LINES_FOR_SECTION_RELOAD = 3; +var MAX_TRACKED_DOCUMENTS = 10; +var MAX_LAST_VISITED_SECTIONS = 10; +var debugSubscriber = createSubscriber(); +var registerDebugListener = debugSubscriber.subscribe.bind(debugSubscriber); +var SectionHistoryRetriever = class _SectionHistoryRetriever { + constructor(window3 = window2, workspace2 = workspace, getDocumentSections2 = getGraphDocumentSections) { + this.window = window3; + this.getDocumentSections = getDocumentSections2; + this.disposables.push(window3.onDidChangeVisibleTextEditors(this.onDidChangeVisibleTextEditors.bind(this))); + this.disposables.push(workspace2.onDidChangeTextDocument(this.onDidChangeTextDocument.bind(this))); + this.disposables.push(window3.onDidChangeTextEditorSelection(this.onDidChangeTextEditorSelection.bind(this))); + void this.onDidChangeVisibleTextEditors(); + } + identifier = "section-history"; + disposables = []; + // A map of all active documents that are being tracked. We rely on the LRU cache to evict + // documents that are not being tracked anymore. + activeDocuments = new LRUCache({ + max: MAX_TRACKED_DOCUMENTS + }); + // A list of up to ten sections that were being visited last as identifier via their location. + lastVisitedSections = []; + static instance = null; + static createInstance(window3, workspace2, getDocumentSections2) { + if (this.instance) { + throw new Error("SectionObserver has already been initialized"); + } + this.instance = new _SectionHistoryRetriever(window3, workspace2, getDocumentSections2); + return this.instance; + } + async retrieve({ + document: document2, + position, + docContext + }) { + const section = this.getSectionAtPosition(document2, position); + const contextRange = getContextRange(document2, docContext); + function overlapsContextRange(uri, range) { + if (!contextRange || !range || uri.toString() !== document2.uri.toString()) { + return false; + } + return contextRange.start.line <= range.startLine && contextRange.end.line >= range.endLine; + } + return (await Promise.all( + this.lastVisitedSections.map((location) => this.getActiveDocumentAndSectionForLocation(location)).filter(isDefined).filter( + ([sectionDocument]) => baseLanguageId(sectionDocument.languageId) === baseLanguageId(document2.languageId) + ).map(([, section2]) => section2).filter( + (compareSection) => locationKeyFn(compareSection.location) !== (section ? locationKeyFn(section.location) : null) + ).filter( + (section2) => !overlapsContextRange(section2.location.uri, { + startLine: section2.location.range.start.line, + endLine: section2.location.range.end.line + }) + ).map(async (section2) => { + try { + const uri = section2.location.uri; + const textDocument = await workspace.openTextDocument(uri); + const fileName = import_path13.default.normalize(workspace.asRelativePath(uri.fsPath)); + const content = textDocument.getText(section2.location.range); + return { fileName, content }; + } catch (error) { + console.error(error); + return void 0; + } + }) + )).filter(isDefined); + } + isSupportedForLanguageId() { + return true; + } + getSectionAtPosition(document2, position) { + return this.activeDocuments.get(document2.uri.toString())?.sections.find((section) => section.location.range.contains(position)); + } + /** + * A pretty way to print the current state of all cached sections + * + * Printed paths are always in posix format (forwards slashes) even on windows + * for consistency. + */ + debugPrint(selectedDocument, selections) { + const lines2 = []; + this.activeDocuments.forEach((document2) => { + lines2.push(import_path13.default.posix.normalize(workspace.asRelativePath(document2.uri))); + for (const section of document2.sections) { + const isSelected = selectedDocument?.uri.toString() === document2.uri.toString() && selections?.some((selection) => section.location.range.contains(selection)); + const isLast = document2.sections.at(-1) === section; + lines2.push(` ${isLast ? "\u2514" : "\u251C"}${isSelected ? "*" : "\u2500"} ` + (section.fuzzyName ?? "unknown")); + } + }); + const lastSections = this.lastVisitedSections.map((loc) => this.getActiveDocumentAndSectionForLocation(loc)?.[1]).filter(isDefined); + if (lastSections.length > 0) { + lines2.push(""); + lines2.push("Last visited sections:"); + for (let i = 0; i < lastSections.length; i++) { + const section = lastSections[i]; + const isLast = i === lastSections.length - 1; + const filePath = import_path13.default.posix.normalize(workspace.asRelativePath(section.location.uri)); + lines2.push(` ${isLast ? "\u2514" : "\u251C"} ${filePath} ${section.fuzzyName ?? "unknown"}`); + } + } + return lines2.join("\n"); + } + /** + * Loads or reloads a document's sections and attempts to merge new sections with existing + * sections. + * + * TODO(philipp-spiess): Handle the case that a document is being reloaded while it is still + * loaded. + */ + async loadDocument(document2) { + const uri = document2.uri; + const lastRevalidateAt = Date.now(); + const lastLines = document2.lineCount; + const sections = (await this.getDocumentSections(document2)).map((section) => ({ + ...section, + lastRevalidateAt, + lastLines: section.location.range.end.line - section.location.range.start.line + })); + const existingDocument = this.activeDocuments.get(uri.toString()); + if (!existingDocument) { + this.activeDocuments.set(uri.toString(), { + uri, + languageId: document2.languageId, + sections, + lastRevalidateAt, + lastLines + }); + return; + } + const sectionsToRemove = []; + for (const existingSection of existingDocument.sections) { + const key = locationKeyFn(existingSection.location); + const newSection = sections.find((section) => locationKeyFn(section.location) === key); + if (newSection) { + existingSection.fuzzyName = newSection.fuzzyName; + existingSection.location = newSection.location; + } else { + sectionsToRemove.push(existingSection); + } + } + for (const sectionToRemove of sectionsToRemove) { + const index = existingDocument.sections.indexOf(sectionToRemove); + if (index !== -1) { + existingDocument.sections.splice(index, 1); + } + } + for (const newSection of sections) { + const key = locationKeyFn(newSection.location); + const existingSection = existingDocument.sections.find((section) => locationKeyFn(section.location) === key); + if (!existingSection) { + existingDocument.sections.push(newSection); + } + } + debugSubscriber.notify(); + } + /** + * Diff vscode.window.visibleTextEditors with activeDocuments to load new documents. + * + * We rely on the LRU cache to evict documents that are no longer visible. + * + * TODO(philipp-spiess): When this method is called while the documents are still being loaded, + * we might reload a document immediately afterwards. + */ + async onDidChangeVisibleTextEditors() { + const promises2 = []; + for (const editor of this.window.visibleTextEditors) { + if (editor.document.uri.scheme !== "file") { + continue; + } + const uri = editor.document.uri.toString(); + if (!this.activeDocuments.has(uri)) { + promises2.push(this.loadDocument(editor.document)); + } + } + await Promise.all(promises2); + } + getActiveDocumentAndSectionForLocation(location) { + const uri = location.uri.toString(); + if (!this.activeDocuments.has(uri)) { + return void 0; + } + const document2 = this.activeDocuments.get(uri); + if (!document2) { + return void 0; + } + const locationKey = locationKeyFn(location); + const section = document2.sections.find((section2) => locationKeyFn(section2.location) === locationKey); + if (section) { + return [document2, section]; + } + return void 0; + } + async onDidChangeTextDocument(event) { + const uri = event.document.uri.toString(); + if (!this.activeDocuments.has(uri)) { + return; + } + const document2 = this.activeDocuments.get(uri); + const documentChangedSignificantly = Math.abs(document2.lastLines - event.document.lineCount) >= NUM_OF_CHANGED_LINES_FOR_SECTION_RELOAD; + const sectionsOutdated = Date.now() - document2.lastRevalidateAt > TEN_MINUTES; + if (documentChangedSignificantly || sectionsOutdated) { + await this.loadDocument(event.document); + return; + } + } + /** + * When the cursor is moving into a tracked selection, we log the access to keep track of + * frequently visited sections. + */ + onDidChangeTextEditorSelection(event) { + const editor = event.textEditor; + const position = event.selections[0].active; + const section = this.getSectionAtPosition(editor.document, position); + if (!section) { + return; + } + pushUniqueAndTruncate(this.lastVisitedSections, section.location, MAX_LAST_VISITED_SECTIONS); + debugSubscriber.notify(); + } + dispose() { + _SectionHistoryRetriever.instance = null; + for (const disposable of this.disposables) { + disposable.dispose(); + } + debugSubscriber.notify(); + } +}; +function pushUniqueAndTruncate(array, item, truncate) { + const indexOf = array.findIndex((i) => locationKeyFn(i) === locationKeyFn(item)); + if (indexOf > -1) { + array.splice(indexOf, 1); + } + if (array.length >= truncate) { + array.pop(); + } + array.unshift(item); + return array; +} + +// ../vscode/src/completions/context/context-strategy.ts +var DefaultContextStrategyFactory = class { + constructor(contextStrategy, createBfgRetriever) { + this.contextStrategy = contextStrategy; + switch (contextStrategy) { + case "none": + break; + case "bfg-mixed": + case "bfg": + this.localRetriever = new JaccardSimilarityRetriever(); + this.disposables.push(this.localRetriever); + if (createBfgRetriever) { + this.graphRetriever = createBfgRetriever(); + this.disposables.push(this.graphRetriever); + } + break; + case "lsp-light": + this.localRetriever = new JaccardSimilarityRetriever(); + this.graphRetriever = new LspLightRetriever(); + this.disposables.push(this.localRetriever, this.graphRetriever); + break; + case "jaccard-similarity": + this.localRetriever = new JaccardSimilarityRetriever(); + this.disposables.push(this.localRetriever); + break; + case "local-mixed": + this.localRetriever = new JaccardSimilarityRetriever(); + this.graphRetriever = SectionHistoryRetriever.createInstance(); + this.disposables.push(this.localRetriever, this.graphRetriever); + } + } + disposables = []; + localRetriever; + graphRetriever; + getStrategy(document2) { + const retrievers = []; + switch (this.contextStrategy) { + case "none": { + break; + } + case "lsp-light": { + if (this.graphRetriever && this.graphRetriever.isSupportedForLanguageId(document2.languageId)) { + retrievers.push(this.graphRetriever); + } + if (this.localRetriever) { + retrievers.push(this.localRetriever); + } + break; + } + case "bfg": + if (this.graphRetriever && this.graphRetriever.isSupportedForLanguageId(document2.languageId)) { + retrievers.push(this.graphRetriever); + } else if (this.localRetriever) { + retrievers.push(this.localRetriever); + } + break; + case "bfg-mixed": + if (this.graphRetriever && this.graphRetriever.isSupportedForLanguageId(document2.languageId)) { + retrievers.push(this.graphRetriever); + } + if (this.localRetriever) { + retrievers.push(this.localRetriever); + } + break; + case "local-mixed": + if (this.localRetriever) { + retrievers.push(this.localRetriever); + } + if (this.graphRetriever) { + retrievers.push(this.graphRetriever); + } + break; + case "jaccard-similarity": { + if (this.localRetriever) { + retrievers.push(this.localRetriever); + } + break; + } + } + return { name: this.contextStrategy, retrievers }; + } + dispose() { + this.disposables.forEach((disposable) => disposable.dispose()); + } +}; + +// ../vscode/src/completions/post-process-logger.ts +var completionPostProcessLogger = true ? { info() { +}, flush() { +} } : new GroupedLogger(); + +// ../vscode/src/completions/text-processing/utils.ts +var import_lodash10 = __toESM(require_lodash()); + +// ../vscode/src/completions/persistence-tracker.ts +var import_js_levenshtein = __toESM(require_js_levenshtein()); + +// ../vscode/src/non-stop/tracked-range.ts +function updateRangeMultipleChanges(range, changes, options2 = {}) { + changes.sort((a, b) => b.range.start.isBefore(a.range.start) ? -1 : 1); + for (let i = 0; i < changes.length - 1; i++) { + console.assert( + changes[i].range.start.isAfterOrEqual(changes[i + 1].range.end), + "vscode edit model assumption incorrect" + ); + } + for (const change of changes) { + range = updateRange(range, change, options2); + } + return range; +} +function updateRange(range, change, options2 = {}) { + const lines2 = change.text.split(/\r\n|\r|\n/m); + const insertedLastLine = lines2.at(-1)?.length; + if (insertedLastLine === void 0) { + throw new TypeError("unreachable"); + } + const insertedLineBreaks = lines2.length - 1; + if (options2.supportRangeAffix && change.range.start.isEqual(range.end)) { + return new Range( + range.start, + change.range.end.translate( + change.range.start.line - change.range.end.line + insertedLineBreaks, + change.range.end.line === range.end.line ? change.range.start.character - change.range.end.character + insertedLastLine : 0 + ) + ); + } + if (options2.supportRangeAffix && change.range.end.isEqual(range.start)) { + return new Range( + change.range.start, + range.end.translate( + change.range.start.line - change.range.end.line + insertedLineBreaks, + change.range.end.line === range.end.line ? insertedLastLine - change.range.end.character + (insertedLineBreaks === 0 ? change.range.start.character : 0) : 0 + ) + ); + } + if (change.range.start.isAfterOrEqual(range.end)) { + return range; + } + if (change.range.end.isBeforeOrEqual(range.start)) { + range = range.with( + range.start.translate( + change.range.start.line - change.range.end.line + insertedLineBreaks, + change.range.end.line === range.start.line ? insertedLastLine + -change.range.end.character + (insertedLineBreaks === 0 ? change.range.start.character : 0) : 0 + ), + range.end.translate( + change.range.start.line - change.range.end.line + insertedLineBreaks, + change.range.end.line === range.end.line ? insertedLastLine - change.range.end.character + (insertedLineBreaks === 0 ? change.range.start.character : 0) : 0 + ) + ); + } else if (change.range.start.isBeforeOrEqual(range.start) && change.range.end.isAfterOrEqual(range.end)) { + return new Range(change.range.start, change.range.start); + } else if (change.range.start.isAfterOrEqual(range.start) && change.range.end.isBeforeOrEqual(range.end)) { + range = range.with( + range.start, + range.end.translate( + change.range.start.line - change.range.end.line + insertedLineBreaks, + change.range.end.line === range.end.line ? change.range.start.character - change.range.end.character + insertedLastLine : 0 + ) + ); + } else if (change.range.end.isBefore(range.end)) { + range = range.with( + // Move the start of the decoration to the end of the change + change.range.end.translate( + change.range.start.line - change.range.end.line, + change.range.start.character - change.range.end.character + insertedLastLine + ), + // Adjust the end of the decoration for the range deletion + range.end.translate( + change.range.start.line - change.range.end.line, + change.range.end.line === range.end.line ? change.range.start.character - change.range.end.character + insertedLastLine : 0 + ) + ); + } else { + range = range.with( + range.start, + // Move the end of the decoration to the start of the change + change.range.start + ); + } + return range; +} + +// ../vscode/src/completions/persistence-tracker.ts +var MEASURE_TIMEOUTS = [ + 30 * 1e3, + // 30 seconds + 120 * 1e3, + // 2 minutes + 300 * 1e3, + // 5 minutes + 600 * 1e3 + // 10 minutes +]; +var PersistenceTracker = class { + disposables = []; + managedTimeouts = /* @__PURE__ */ new Set(); + // We use a map from the document URI to the set of tracked completions inside that document to + // improve performance of the `onDidChangeTextDocument` event handler. + trackedCompletions = /* @__PURE__ */ new Map(); + constructor(workspace2 = workspace) { + this.disposables.push(workspace2.onDidChangeTextDocument(this.onDidChangeTextDocument.bind(this))); + this.disposables.push(workspace2.onDidRenameFiles(this.onDidRenameFiles.bind(this))); + this.disposables.push(workspace2.onDidDeleteFiles(this.onDidDeleteFiles.bind(this))); + } + track({ + id, + insertedAt, + insertText, + insertRange, + document: document2 + }) { + if (insertText.length === 0) { + return; + } + const textLines = lines(insertText); + const latestRange = new Range( + insertRange.start.line, + insertRange.start.character, + insertRange.end.line + textLines.length - 1, + textLines.length > 1 ? textLines.at(-1).length : insertRange.end.character + textLines[0].length + ); + const trackedCompletion = { + insertText, + insertRange, + document: document2, + id, + insertedAt, + latestRange, + uri: document2.uri + }; + let documentCompletions = this.trackedCompletions.get(document2.uri.toString()); + if (!documentCompletions) { + documentCompletions = /* @__PURE__ */ new Set([]); + this.trackedCompletions.set(document2.uri.toString(), documentCompletions); + } + documentCompletions.add(trackedCompletion); + const firstTimeoutIndex = 0; + this.enqueueMeasure(trackedCompletion, firstTimeoutIndex); + } + enqueueMeasure(trackedCompletion, nextTimeoutIndex) { + const timeout = trackedCompletion.insertedAt + MEASURE_TIMEOUTS[nextTimeoutIndex] - Date.now(); + const timeoutId = setTimeout(() => { + this.managedTimeouts.delete(timeoutId); + this.measure(trackedCompletion, nextTimeoutIndex); + }, timeout); + this.managedTimeouts.add(timeoutId); + } + measure(trackedCompletion, measureTimeoutsIndex) { + const isStillTracked = this.trackedCompletions.get(trackedCompletion.uri.toString())?.has(trackedCompletion); + if (!isStillTracked) { + return; + } + const initialText = trackedCompletion.insertText; + const latestText = trackedCompletion.document.getText(trackedCompletion.latestRange); + if (latestText.length === 0) { + logCompletionEvent("persistence:removed", { id: trackedCompletion.id }); + } else { + const maxLength = Math.max(initialText.length, latestText.length); + const editOperations = (0, import_js_levenshtein.default)(initialText, latestText); + const difference = editOperations / maxLength; + logCompletionEvent("persistence:present", { + id: trackedCompletion.id, + afterSec: MEASURE_TIMEOUTS[measureTimeoutsIndex] / 1e3, + difference, + lineCount: trackedCompletion.latestRange.end.line - trackedCompletion.latestRange.start.line + 1, + charCount: latestText.length + }); + if (measureTimeoutsIndex < MEASURE_TIMEOUTS.length - 1) { + this.enqueueMeasure(trackedCompletion, measureTimeoutsIndex + 1); + return; + } + } + const documentCompletions = this.trackedCompletions.get(trackedCompletion.uri.toString()); + if (!documentCompletions) { + return; + } + documentCompletions.delete(trackedCompletion); + if (documentCompletions.size === 0) { + this.trackedCompletions.delete(trackedCompletion.uri.toString()); + } + } + onDidChangeTextDocument(event) { + const documentCompletions = this.trackedCompletions.get(event.document.uri.toString()); + if (!documentCompletions) { + return; + } + const mutableChanges = event.contentChanges.map((change) => ({ + range: change.range, + text: change.text + })); + for (const trackedCompletion of documentCompletions) { + trackedCompletion.latestRange = updateRangeMultipleChanges(trackedCompletion.latestRange, mutableChanges); + } + } + onDidRenameFiles(event) { + for (const file of event.files) { + const documentCompletions = this.trackedCompletions.get(file.oldUri.toString()); + if (documentCompletions) { + this.trackedCompletions.set(file.newUri.toString(), documentCompletions); + this.trackedCompletions.delete(file.oldUri.toString()); + for (const trackedCompletion of documentCompletions) { + trackedCompletion.uri = file.newUri; + } + } + } + } + onDidDeleteFiles(event) { + for (const uri of event.files) { + this.trackedCompletions.delete(uri.toString()); + } + } + dispose() { + for (const timeoutId of this.managedTimeouts) { + clearTimeout(timeoutId); + } + this.managedTimeouts.clear(); + this.trackedCompletions.clear(); + for (const disposable of this.disposables) { + disposable.dispose(); + } + } +}; + +// ../vscode/src/completions/statistics.ts +var subscriber = createSubscriber(); +var statistics = { + suggested: 0, + accepted: 0 +}; +function getStatistics() { + return statistics; +} +function logSuggested() { + statistics = { ...statistics, suggested: statistics.suggested + 1 }; + subscriber.notify(); +} +function logAccepted() { + statistics = { ...statistics, accepted: statistics.accepted + 1 }; + subscriber.notify(); +} +var registerChangeListener = subscriber.subscribe.bind(subscriber); + +// ../vscode/src/completions/logger.ts +function logCompletionEvent(name, params = {}) { + const extDetails = getExtensionDetails(getConfiguration(workspace.getConfiguration())); + telemetryService.log(`${logPrefix(extDetails.ide)}:completion:${name}`, params, { agent: true }); +} +var READ_TIMEOUT_MS = 750; +var activeSuggestionRequests = new LRUCache({ + max: 20 +}); +var recentCompletions = new LRUCache({ + max: 20 +}); +function getRecentCompletionsKey(params, completion) { + return `${params.docContext.prefix}\u2588${completion}\u2588${params.docContext.nextNonEmptyLine}`; +} +var completionIdsMarkedAsSuggested = new LRUCache({ + max: 50 +}); +var persistenceTracker = null; +var completionsStartedSinceLastSuggestion = 0; +function create(inputParams) { + const id = v4_default(); + const params = { + ...inputParams, + multilineMode: inputParams.multiline ? "block" : null, + id: null + }; + activeSuggestionRequests.set(id, { + id, + params, + startedAt: performance.now(), + networkRequestStartedAt: null, + startLoggedAt: null, + loadedAt: null, + suggestedAt: null, + suggestionLoggedAt: null, + suggestionAnalyticsLoggedAt: null, + acceptedAt: null, + items: [], + loggedPartialAcceptedLength: 0 + }); + return id; +} +function start2(id) { + const event = activeSuggestionRequests.get(id); + if (event && !event.startLoggedAt) { + event.startLoggedAt = performance.now(); + completionsStartedSinceLastSuggestion++; + } +} +function networkRequestStarted(id, contextSummary) { + const event = activeSuggestionRequests.get(id); + if (event && !event.networkRequestStartedAt) { + event.networkRequestStartedAt = performance.now(); + event.params.contextSummary = contextSummary; + } +} +function loaded(id, params, items, source2) { + const event = activeSuggestionRequests.get(id); + if (!event) { + return; + } + event.params.source = source2; + const key = items.length > 0 ? getRecentCompletionsKey(params, items[0].insertText) : ""; + const completionId = recentCompletions.get(key) ?? v4_default(); + recentCompletions.set(key, completionId); + event.params.id = completionId; + if (!event.loadedAt) { + event.loadedAt = performance.now(); + } + if (event.items.length === 0) { + event.items = items.map(completionItemToItemInfo); + } +} +function suggested(id, completion) { + const event = activeSuggestionRequests.get(id); + if (!event) { + return; + } + const completionId = event.params.id; + if (!completionId) { + throw new Error("Completion ID not set, make sure to call loaded() first"); + } + if (!event.suggestedAt) { + event.suggestedAt = performance.now(); + setTimeout(() => { + const event2 = activeSuggestionRequests.get(id); + if (!event2) { + return; + } + if (event2.suggestedAt && !event2.suggestionAnalyticsLoggedAt && !event2.suggestionLoggedAt) { + if (completionIdsMarkedAsSuggested.has(completionId)) { + return; + } + logSuggested(); + completionIdsMarkedAsSuggested.set(completionId, true); + event2.suggestionAnalyticsLoggedAt = performance.now(); + } + }, READ_TIMEOUT_MS); + } +} +function accepted(id, document2, completion, trackedRange) { + const completionEvent = activeSuggestionRequests.get(id); + if (!completionEvent || completionEvent.acceptedAt) { + logCompletionEvent("acceptedUntrackedCompletion"); + return; + } + if (!completionEvent.loadedAt) { + logCompletionEvent("unexpectedNotLoaded"); + } + if (!completionEvent.startLoggedAt) { + logCompletionEvent("unexpectedNotStarted"); + } + if (!completionEvent.suggestedAt) { + logCompletionEvent("unexpectedNotSuggested"); + } + if (completionEvent.suggestionLoggedAt) { + logCompletionEvent("unexpectedAlreadySuggested"); + } + if (!completionEvent.params.id) { + throw new Error("Completion ID not set, make sure to call loaded() first"); + } + let key = null; + recentCompletions.forEach((v, k) => { + if (v === completionEvent.params.id) { + key = k; + } + }); + if (key) { + recentCompletions.delete(key); + } + completionEvent.acceptedAt = performance.now(); + logSuggestionEvents(); + logCompletionEvent("accepted", { + ...getSharedParams(completionEvent), + acceptedItem: completionItemToItemInfo(completion) + }); + logAccepted(); + if (trackedRange === void 0 || isRunningInsideAgent()) { + return; + } + if (persistenceTracker === null) { + persistenceTracker = new PersistenceTracker(); + } + persistenceTracker.track({ + id: completionEvent.params.id, + insertedAt: Date.now(), + insertText: completion.insertText, + insertRange: trackedRange, + document: document2 + }); +} +function partiallyAccept(id, completion, acceptedLength) { + const completionEvent = activeSuggestionRequests.get(id); + if (!completionEvent || completionEvent.acceptedAt) { + return; + } + const loggedPartialAcceptedLength = completionEvent.loggedPartialAcceptedLength; + if (acceptedLength <= loggedPartialAcceptedLength) { + return; + } + const acceptedLengthDelta = acceptedLength - loggedPartialAcceptedLength; + completionEvent.loggedPartialAcceptedLength = acceptedLength; + logCompletionEvent("partiallyAccepted", { + ...getSharedParams(completionEvent), + acceptedItem: completionItemToItemInfo(completion), + acceptedLength, + acceptedLengthDelta + }); +} +function getCompletionEvent(id) { + return activeSuggestionRequests.get(id); +} +function noResponse(id) { + const completionEvent = activeSuggestionRequests.get(id); + if (!completionEvent) { + return; + } + logCompletionEvent("noResponse", getSharedParams(completionEvent)); +} +function flushActiveSuggestionRequests() { + logSuggestionEvents(); +} +function logSuggestionEvents() { + const now = performance.now(); + activeSuggestionRequests.forEach((completionEvent) => { + const { + params, + loadedAt, + suggestedAt, + suggestionLoggedAt, + startedAt, + startLoggedAt, + acceptedAt, + suggestionAnalyticsLoggedAt + } = completionEvent; + if (!loadedAt || !startLoggedAt || !suggestedAt || suggestionLoggedAt || !params.id) { + return; + } + completionEvent.suggestionLoggedAt = now; + const latency = loadedAt - startedAt; + const displayDuration = now - suggestedAt; + const seen = displayDuration >= READ_TIMEOUT_MS; + const accepted2 = acceptedAt !== null; + const read = accepted2 || seen; + if (!suggestionAnalyticsLoggedAt) { + completionEvent.suggestionAnalyticsLoggedAt = now; + if (read && !completionIdsMarkedAsSuggested.has(params.id)) { + logSuggested(); + completionIdsMarkedAsSuggested.set(params.id, true); + } + } + logCompletionEvent("suggested", { + ...getSharedParams(completionEvent), + latency, + displayDuration, + read, + accepted: accepted2, + completionsStartedSinceLastSuggestion + }); + completionsStartedSinceLastSuggestion = 0; + }); +} +function lineAndCharCount({ insertText }) { + const lineCount = lines(insertText).length; + const charCount = insertText.length; + return { lineCount, charCount }; +} +var TEN_MINUTES2 = 1e3 * 60 * 10; +var errorCounts = /* @__PURE__ */ new Map(); +function logError2(error) { + if (!shouldErrorBeReported(error)) { + return; + } + (0, sentry_exports.captureException)(error); + const message = error.message; + const traceId = isNetworkError(error) ? error.traceId : void 0; + if (!errorCounts.has(message)) { + errorCounts.set(message, 0); + logCompletionEvent("error", { message, traceId, count: 1 }); + } + const count = errorCounts.get(message); + if (count === 0) { + setTimeout(() => { + const count2 = errorCounts.get(message); + logCompletionEvent("error", { message, traceId, count: count2 }); + errorCounts.set(message, 0); + }, TEN_MINUTES2); + } + errorCounts.set(message, count + 1); +} +function getSharedParams(event) { + const otherCompletionProviders2 = getOtherCompletionProvider(); + return { + ...event.params, + items: event.items.map((i) => ({ ...i })), + otherCompletionProviderEnabled: otherCompletionProviders2.length > 0, + otherCompletionProviders: otherCompletionProviders2 + }; +} +function completionItemToItemInfo(item) { + const { lineCount, charCount } = lineAndCharCount(item); + return { + lineCount, + charCount, + stopReason: item.stopReason, + parseErrorCount: item.parseErrorCount, + lineTruncatedCount: item.lineTruncatedCount, + truncatedWith: item.truncatedWith, + nodeTypes: item.nodeTypes, + nodeTypesWithCompletion: item.nodeTypesWithCompletion + }; +} +var otherCompletionProviders = [ + "GitHub.copilot", + "GitHub.copilot-nightly", + "TabNine.tabnine-vscode", + "TabNine.tabnine-vscode-self-hosted-updater", + "AmazonWebServices.aws-toolkit-vscode", + // Includes CodeWhisperer + "Codeium.codeium", + "Codeium.codeium-enterprise-updater", + "CodeComplete.codecomplete-vscode", + "Venthe.fauxpilot", + "TabbyML.vscode-tabby", + "blackboxapp.blackbox", + "devsense.intelli-php-vscode", + "aminer.codegeex", + "svipas.code-autocomplete", + "mutable-ai.mutable-ai" +]; +function getOtherCompletionProvider() { + return otherCompletionProviders.filter((id) => extensions.getExtension(id)?.isActive); +} +function isRunningInsideAgent() { + const config = getConfiguration(workspace.getConfiguration()); + return !!config.isRunningInsideAgent; +} + +// ../vscode/src/completions/text-processing/string-comparator.ts +var import_js_levenshtein2 = __toESM(require_js_levenshtein()); +var isAlmostTheSameString = (stringA, stringB, percentage = 0.15) => { + const maxLength = Math.max(stringA.length, stringB.length); + const editOperations = (0, import_js_levenshtein2.default)(stringA, stringB); + if (editOperations === 0) { + return true; + } + const operationToLength = editOperations / maxLength; + return percentage > operationToLength; +}; + +// ../vscode/src/completions/text-processing/utils.ts +var OPENING_CODE_TAG = ""; +var CLOSING_CODE_TAG = ""; +var MULTILINE_STOP_SEQUENCE = "\n\n"; +function extractFromCodeBlock(completion) { + if (completion.includes(OPENING_CODE_TAG)) { + logCompletionEvent("containsOpeningTag"); + return ""; + } + const index = completion.indexOf(CLOSING_CODE_TAG); + if (index === -1) { + return completion; + } + return completion.slice(0, index); +} +var BAD_COMPLETION_START = /^(\p{Emoji_Presentation}|\u{200B}|\+ |- |\. )+(\s)+/u; +function fixBadCompletionStart(completion) { + if (BAD_COMPLETION_START.test(completion)) { + return completion.replace(BAD_COMPLETION_START, ""); + } + return completion; +} +function getHeadAndTail(s) { + const lines2 = s.split("\n"); + const tailThreshold = 2; + let nonEmptyCount = 0; + let tailStart = -1; + for (let i = lines2.length - 1; i >= 0; i--) { + if (lines2[i].trim().length > 0) { + nonEmptyCount++; + } + if (nonEmptyCount >= tailThreshold) { + tailStart = i; + break; + } + } + let headAndTail; + if (tailStart === -1) { + headAndTail = { head: trimSpace(s), tail: trimSpace(s), overlap: s }; + } else { + headAndTail = { + head: trimSpace(lines2.slice(0, tailStart).join("\n") + "\n"), + tail: trimSpace(lines2.slice(tailStart).join("\n")) + }; + } + if (headAndTail.tail.rearSpace.includes("\n")) { + headAndTail.tail.trimmed += "\n"; + } + return headAndTail; +} +function trimSpace(s) { + const trimmed = s.trim(); + const headEnd = s.indexOf(trimmed); + return { raw: s, trimmed, leadSpace: s.slice(0, headEnd), rearSpace: s.slice(headEnd + trimmed.length) }; +} +function trimUntilSuffix(insertion, prefix, suffix, languageId) { + const config = getLanguageConfig(languageId); + insertion = insertion.trimEnd(); + const firstNonEmptySuffixLine = getFirstNonEmptyLine(suffix); + if (firstNonEmptySuffixLine.length === 0) { + return insertion; + } + const prefixLastNewLine = prefix.lastIndexOf("\n"); + const prefixIndentationWithFirstCompletionLine = prefix.slice(prefixLastNewLine + 1); + const suffixIndent = indentation(firstNonEmptySuffixLine); + const startIndent = indentation(prefixIndentationWithFirstCompletionLine); + const hasEmptyCompletionLine = prefixIndentationWithFirstCompletionLine.trim() === ""; + const insertionLines = insertion.split("\n"); + let cutOffIndex = insertionLines.length; + for (let i = insertionLines.length - 1; i >= 0; i--) { + let line = insertionLines[i]; + if (i === 0) { + line = prefixIndentationWithFirstCompletionLine + line; + } + const lineIndentation = indentation(line); + const isSameIndentation = lineIndentation <= suffixIndent; + if (hasEmptyCompletionLine && config?.blockEnd && line.trim().startsWith(config.blockEnd) && startIndent === lineIndentation && insertionLines.length === 1) { + cutOffIndex = i; + break; + } + if (isSameIndentation && isAlmostTheSameString(line, firstNonEmptySuffixLine)) { + cutOffIndex = i; + break; + } + } + return insertionLines.slice(0, cutOffIndex).join("\n"); +} +function getFirstNonEmptyLine(suffix) { + const nextLineSuffix = suffix.slice(suffix.indexOf("\n")); + for (const line of nextLineSuffix.split("\n")) { + if (line.trim().length > 0) { + return line; + } + } + return ""; +} +function trimLeadingWhitespaceUntilNewline(str) { + return str.replace(/^\s+?(\r?\n)/, "$1"); +} +function collapseDuplicativeWhitespace(prefix, completion) { + if (prefix.endsWith(" ") || prefix.endsWith(" ")) { + completion = completion.replace(/^[\t ]+/, ""); + } + return completion; +} +function removeTrailingWhitespace(text) { + return text.split("\n").map((l2) => l2.trimEnd()).join("\n"); +} +var INDENTATION_REGEX = /^[\t ]*/; +var OPENING_BRACKET_REGEX = /([([{])$/; +var FUNCTION_OR_METHOD_INVOCATION_REGEX = /\b[^()]+\((.*)\)$/g; +var FUNCTION_KEYWORDS = /^(function|def|fn)/g; +var BRACKET_PAIR = { + "(": ")", + "[": "]", + "{": "}", + "<": ">" +}; +function getEditorTabSize() { + return window2.activeTextEditor ? window2.activeTextEditor.options.tabSize : 2; +} +function indentation(line) { + const tabSize = getEditorTabSize(); + const regex = line.match(INDENTATION_REGEX); + if (regex) { + const whitespace = regex[0]; + return [...whitespace].reduce((p, c) => p + (c === " " ? tabSize : 1), 0); + } + return 0; +} +function shouldIncludeClosingLineBasedOnBrackets(prefixIndentationWithFirstCompletionLine, suffix) { + const matches = prefixIndentationWithFirstCompletionLine.match(OPENING_BRACKET_REGEX); + if (matches && matches.length > 0) { + const openingBracket = matches[0]; + const closingBracket = BRACKET_PAIR[openingBracket]; + return Boolean(openingBracket) && suffix.startsWith(closingBracket); + } + return false; +} +function shouldIncludeClosingLine(prefixIndentationWithFirstCompletionLine, suffix) { + const includeClosingLineBasedOnBrackets = shouldIncludeClosingLineBasedOnBrackets( + prefixIndentationWithFirstCompletionLine, + suffix + ); + const startIndent = indentation(prefixIndentationWithFirstCompletionLine); + const nextNonEmptyLine = getNextNonEmptyLine(suffix); + return indentation(nextNonEmptyLine) < startIndent || includeClosingLineBasedOnBrackets; +} +function getFirstLine(text) { + const firstLf = text.indexOf("\n"); + const firstCrLf = text.indexOf("\r\n"); + if (firstLf === -1 && firstCrLf === -1) { + return text; + } + return text.slice(0, firstCrLf >= 0 ? firstCrLf : firstLf); +} +function getLastLine(text) { + const lastLf = text.lastIndexOf("\n"); + const lastCrLf = text.lastIndexOf("\r\n"); + if (lastLf === -1 && lastCrLf === -1) { + return text; + } + return text.slice(lastCrLf >= 0 ? lastCrLf + 2 : lastLf + 1); +} +function getNextNonEmptyLine(suffix) { + const nextLf = suffix.indexOf("\n"); + const nextCrLf = suffix.indexOf("\r\n"); + if (nextLf === -1 && nextCrLf === -1) { + return ""; + } + return lines(suffix.slice(nextCrLf >= 0 ? nextCrLf + 2 : nextLf + 1)).find((line) => line.trim().length > 0) ?? ""; +} +function getPrevNonEmptyLine(prefix) { + const prevLf = prefix.lastIndexOf("\n"); + const prevCrLf = prefix.lastIndexOf("\r\n"); + if (prevLf === -1 && prevCrLf === -1) { + return ""; + } + return (0, import_lodash10.findLast)(lines(prefix.slice(0, prevCrLf >= 0 ? prevCrLf : prevLf)), (line) => line.trim().length > 0) ?? ""; +} +function lines(text) { + return text.split(/\r?\n/); +} + +// ../vscode/src/completions/detect-multiline.ts +function detectMultiline(params) { + const { docContext, languageId, dynamicMultlilineCompletions, position } = params; + const { + prefix, + prevNonEmptyLine, + nextNonEmptyLine, + currentLinePrefix, + currentLineSuffix, + completionPostProcessId + } = docContext; + const blockStart = getLanguageConfig(languageId)?.blockStart; + const isBlockStartActive = blockStart && prefix.trimEnd().endsWith(blockStart); + const checkInvocation = currentLineSuffix.trim().length > 0 ? currentLinePrefix + currentLineSuffix : currentLinePrefix; + if (!dynamicMultlilineCompletions && !currentLinePrefix.trim().match(FUNCTION_KEYWORDS) && checkInvocation.match(FUNCTION_OR_METHOD_INVOCATION_REGEX)) { + return { + multilineTrigger: null, + multilineTriggerPosition: null + }; + } + completionPostProcessLogger.info({ completionPostProcessId, stage: "detectMultiline", text: currentLinePrefix }); + const openingBracketMatch = currentLinePrefix.match(OPENING_BRACKET_REGEX); + if (openingBracketMatch && // Only trigger multiline suggestions when the next non-empty line is indented less + // than the block start line (the newly created block is empty). + indentation(currentLinePrefix) >= indentation(nextNonEmptyLine)) { + return { + multilineTrigger: openingBracketMatch[0], + multilineTriggerPosition: getPrefixLastNonEmptyCharPosition(prefix, position) + }; + } + const nonEmptyLineEndsWithBlockStart = currentLinePrefix.length > 0 && isBlockStartActive && indentation(currentLinePrefix) >= indentation(nextNonEmptyLine); + const isEmptyLineAfterBlockStart = currentLinePrefix.trim() === "" && currentLineSuffix.trim() === "" && // Only trigger multiline suggestions for the beginning of blocks + isBlockStartActive && // Only trigger multiline suggestions when the new current line is indented + indentation(prevNonEmptyLine) < indentation(currentLinePrefix) && // Only trigger multiline suggestions when the next non-empty line is indented less + // than the block start line (the newly created block is empty). + indentation(prevNonEmptyLine) >= indentation(nextNonEmptyLine); + if (dynamicMultlilineCompletions && nonEmptyLineEndsWithBlockStart || isEmptyLineAfterBlockStart) { + return { + multilineTrigger: blockStart, + multilineTriggerPosition: getPrefixLastNonEmptyCharPosition(prefix, position) + }; + } + return { + multilineTrigger: null, + multilineTriggerPosition: null + }; +} +function getPrefixLastNonEmptyCharPosition(prefix, cursorPosition) { + const trimmedPrefix = prefix.trimEnd(); + const diffLength = prefix.length - trimmedPrefix.length; + if (diffLength === 0) { + return cursorPosition.translate(0, -1); + } + const prefixDiff = prefix.slice(-diffLength); + return new Position(cursorPosition.line - (lines(prefixDiff).length - 1), getLastLine(trimmedPrefix).length - 1); +} + +// ../vscode/src/completions/get-current-doc-context.ts +function getCurrentDocContext(params) { + const { document: document2, position, maxPrefixLength, maxSuffixLength, context: context2, dynamicMultlilineCompletions } = params; + const offset = document2.offsetAt(position); + const completePrefix = document2.getText(new Range(new Position(0, 0), position)); + const completeSuffix = document2.getText(new Range(position, document2.positionAt(document2.getText().length))); + let completePrefixWithContextCompletion = completePrefix; + let injectedPrefix = null; + if (context2?.selectedCompletionInfo) { + const { range, text } = context2.selectedCompletionInfo; + if (range.end.character === position.character && range.end.line === position.line) { + const lastLine = lines(completePrefix).at(-1); + const beforeLastLine = completePrefix.slice(0, -lastLine.length); + completePrefixWithContextCompletion = beforeLastLine + lastLine.slice(0, range.start.character) + text; + injectedPrefix = completePrefixWithContextCompletion.slice(completePrefix.length); + if (injectedPrefix === "") { + injectedPrefix = null; + } + } else { + console.warn("The selected completion info does not match the current position"); + } + } + const prefixLines = lines(completePrefixWithContextCompletion); + const suffixLines = lines(completeSuffix); + let prefix; + if (offset > maxPrefixLength) { + let total = 0; + let startLine = prefixLines.length; + for (let i = prefixLines.length - 1; i >= 0; i--) { + if (total + prefixLines[i].length > maxPrefixLength) { + break; + } + startLine = i; + total += prefixLines[i].length; + } + prefix = prefixLines.slice(startLine).join("\n"); + } else { + prefix = prefixLines.join("\n"); + } + let totalSuffix = 0; + let endLine = 0; + for (let i = 0; i < suffixLines.length; i++) { + if (totalSuffix + suffixLines[i].length > maxSuffixLength) { + break; + } + endLine = i + 1; + totalSuffix += suffixLines[i].length; + } + const suffix = suffixLines.slice(0, endLine).join("\n"); + return getDerivedDocContext({ + position, + languageId: document2.languageId, + dynamicMultlilineCompletions, + documentDependentContext: { + prefix, + suffix, + injectedPrefix + } + }); +} +function getDerivedDocContext(params) { + const { position, documentDependentContext, languageId, dynamicMultlilineCompletions } = params; + const linesContext = getLinesContext(documentDependentContext); + return { + ...documentDependentContext, + ...linesContext, + position, + ...detectMultiline({ + docContext: { ...linesContext, ...documentDependentContext }, + languageId, + dynamicMultlilineCompletions, + position + }) + }; +} +function getLinesContext(params) { + const { prefix, suffix } = params; + const currentLinePrefix = getLastLine(prefix); + const currentLineSuffix = getFirstLine(suffix); + const prevNonEmptyLine = getPrevNonEmptyLine(prefix); + const nextNonEmptyLine = getNextNonEmptyLine(suffix); + return { + currentLinePrefix, + currentLineSuffix, + prevNonEmptyLine, + nextNonEmptyLine + }; +} + +// ../vscode/src/completions/reuse-last-candidate.ts +function reuseLastCandidate({ + document: document2, + position, + selectedCompletionInfo, + lastCandidate: { lastTriggerPosition, lastTriggerDocContext, lastTriggerSelectedCompletionInfo }, + lastCandidate, + docContext: { currentLinePrefix, currentLineSuffix, nextNonEmptyLine }, + docContext, + handleDidAcceptCompletionItem, + handleDidPartiallyAcceptCompletionItem +}) { + const isSameDocument = lastCandidate.uri.toString() === document2.uri.toString(); + const isSameLine = lastTriggerPosition.line === position.line; + const isSameNextNonEmptyLine = lastTriggerDocContext.nextNonEmptyLine === nextNonEmptyLine; + const lastTriggerCurrentLinePrefixWithoutInject = getCurrentLinePrefixWithoutInjectedPrefix(lastTriggerDocContext); + const currentLinePrefixWithoutInject = getCurrentLinePrefixWithoutInjectedPrefix(docContext); + const isSameSelectedInfoItemOrFullyAccepted = ( + // The `selectedCompletionInfo` might change if user types forward as suggested, so we can reuse the + // last candidate in that case. + selectedCompletionInfo && lastTriggerCurrentLinePrefixWithoutInject === currentLinePrefixWithoutInject ? lastTriggerSelectedCompletionInfo?.text === selectedCompletionInfo?.text : true + ); + if (!isSameDocument || !isSameLine || !isSameNextNonEmptyLine || !isSameSelectedInfoItemOrFullyAccepted) { + return null; + } + const lastTriggerCurrentLinePrefixInDocument = lastTriggerDocContext.injectedPrefix ? lastTriggerDocContext.currentLinePrefix.slice( + 0, + lastTriggerDocContext.currentLinePrefix.length - lastTriggerDocContext.injectedPrefix.length + ) : lastTriggerDocContext.currentLinePrefix; + const isIndentation = isWhitespace(currentLinePrefix) && currentLinePrefix.startsWith(lastTriggerCurrentLinePrefixInDocument); + const isDeindentation = isWhitespace(lastTriggerCurrentLinePrefixInDocument) && lastTriggerCurrentLinePrefixInDocument.startsWith(currentLinePrefix); + const isIndentationChange = currentLineSuffix === "" && (isIndentation || isDeindentation); + let didAcceptCompletion = false; + const itemsToReuse = lastCandidate.result.items.map((item) => { + const lastCompletion = lastTriggerCurrentLinePrefixInDocument + item.insertText; + const isTypingAsSuggested = lastCompletion.startsWith(currentLinePrefix) && position.isAfterOrEqual(lastTriggerPosition); + if (isTypingAsSuggested) { + const remaining = lastCompletion.slice(currentLinePrefix.length); + const alreadyInsertedText = item.insertText.slice(0, -remaining.length); + const prevRange = item.range; + let newRange; + if (prevRange) { + const rangeShift = alreadyInsertedText.length; + newRange = new Range( + prevRange.start.line, + prevRange.start.character + rangeShift, + prevRange.end.line, + prevRange.end.character + rangeShift + ); + } + if (remaining.length === 0) { + didAcceptCompletion = true; + handleDidAcceptCompletionItem?.({ + requestParams: getRequestParamsFromLastCandidate(document2, lastCandidate), + logId: lastCandidate.result.logId, + analyticsItem: item, + trackedRange: item.range + }); + return void 0; + } + const acceptedLength = currentLinePrefix.length - lastTriggerCurrentLinePrefixInDocument.length; + if (isPartialAcceptance(item.insertText, acceptedLength)) { + handleDidPartiallyAcceptCompletionItem?.( + { + logId: lastCandidate.result.logId, + analyticsItem: item + }, + acceptedLength + ); + } + return { ...item, insertText: remaining, range: newRange }; + } + if (isIndentationChange) { + return { + ...item, + insertText: lastTriggerCurrentLinePrefixInDocument.slice(currentLinePrefix.length) + item.insertText + }; + } + return void 0; + }).filter(isDefined); + if (didAcceptCompletion) { + return null; + } + return itemsToReuse.length > 0 ? { + // Reuse the logId to so that typing text of a displayed completion will not log a new + // completion on every keystroke. + logId: lastCandidate.result.logId, + source: "LastCandidate" /* LastCandidate */, + items: itemsToReuse + } : null; +} +function isWhitespace(s) { + return /^\s*$/.test(s); +} +function isPartialAcceptance(insertText, insertedLength) { + const insertedText = insertText.slice(0, insertedLength); + const match2 = insertedText.match(/(\w+)\W+$/); + const endOfFirstWord = match2?.index === void 0 ? null : match2.index + match2[0].length; + if (endOfFirstWord === null) { + return false; + } + return insertedLength >= endOfFirstWord; +} +function getRequestParamsFromLastCandidate(document2, lastCandidate) { + return { + document: document2, + position: lastCandidate.lastTriggerPosition, + docContext: lastCandidate.lastTriggerDocContext, + selectedCompletionInfo: lastCandidate.lastTriggerSelectedCompletionInfo + }; +} + +// ../vscode/src/completions/get-inline-completions.ts +var InlineCompletionsResultSource = /* @__PURE__ */ ((InlineCompletionsResultSource2) => { + InlineCompletionsResultSource2["Network"] = "Network"; + InlineCompletionsResultSource2["Cache"] = "Cache"; + InlineCompletionsResultSource2["CacheAfterRequestStart"] = "CacheAfterRequestStart"; + InlineCompletionsResultSource2["LastCandidate"] = "LastCandidate"; + return InlineCompletionsResultSource2; +})(InlineCompletionsResultSource || {}); +async function getInlineCompletions(params) { + try { + const result = await doGetInlineCompletions(params); + params.tracer?.({ result }); + return result; + } catch (unknownError) { + const error = unknownError instanceof Error ? unknownError : new Error(unknownError); + params.tracer?.({ error: error.toString() }); + if (process.env.NODE_ENV === "development") { + console.error(error); + } + logError("getInlineCompletions:error", error.message, error.stack, { verbose: { error } }); + logError2(error); + if (isAbortError(error)) { + return null; + } + throw error; + } finally { + params.setIsLoading?.(false); + } +} +async function doGetInlineCompletions(params) { + const { + document: document2, + position, + triggerKind, + selectedCompletionInfo, + docContext, + docContext: { multilineTrigger, currentLineSuffix, currentLinePrefix }, + providerConfig, + contextMixer, + requestManager, + lastCandidate, + debounceInterval, + setIsLoading, + abortSignal, + tracer: tracer2, + handleDidAcceptCompletionItem, + handleDidPartiallyAcceptCompletionItem, + artificialDelay, + completionIntent, + dynamicMultlilineCompletions + } = params; + tracer2?.({ params: { document: document2, position, triggerKind, selectedCompletionInfo } }); + if (triggerKind !== "Manual" /* Manual */ && /\w/.test(currentLineSuffix)) { + return null; + } + if (triggerKind !== "Manual" /* Manual */ && /[);\]}]$/.test(currentLinePrefix.trim())) { + return null; + } + if (triggerKind !== "Manual" /* Manual */ && position.line !== 0 && position.line === document2.lineCount - 1) { + const lineAbove = Math.max(position.line - 1, 0); + if (document2.lineAt(lineAbove).isEmptyOrWhitespace && !position.character) { + return null; + } + } + const resultToReuse = triggerKind !== "Manual" /* Manual */ && lastCandidate ? reuseLastCandidate({ + document: document2, + position, + lastCandidate, + docContext, + selectedCompletionInfo, + handleDidAcceptCompletionItem, + handleDidPartiallyAcceptCompletionItem + }) : null; + if (resultToReuse) { + return resultToReuse; + } + flushActiveSuggestionRequests(); + const multiline = Boolean(multilineTrigger); + const logId = create({ + multiline, + triggerKind, + providerIdentifier: providerConfig.identifier, + providerModel: providerConfig.model, + languageId: document2.languageId, + completionIntent, + artificialDelay, + traceId: getActiveTraceAndSpanId()?.traceId + }); + await startAsyncSpan("autocomplete.debounce", async () => { + const interval = ((multiline ? debounceInterval?.multiLine : debounceInterval?.singleLine) ?? 0) + (artificialDelay ?? 0); + if (triggerKind === "Automatic" /* Automatic */ && interval !== void 0 && interval > 0) { + await new Promise((resolve8) => setTimeout(resolve8, interval)); + } + }); + if (abortSignal?.aborted) { + return null; + } + setIsLoading?.(true); + start2(logId); + const contextResult = await startAsyncSpan("autocomplete.retrieve", async () => { + return contextMixer.getContext({ + document: document2, + position, + docContext, + abortSignal, + maxChars: providerConfig.contextSizeHints.totalFileContextChars + }); + }); + if (abortSignal?.aborted) { + return null; + } + tracer2?.({ context: contextResult }); + const completionProviders = getCompletionProviders({ + document: document2, + position, + triggerKind, + providerConfig, + docContext, + dynamicMultlilineCompletions + }); + tracer2?.({ + completers: completionProviders.map(({ options: options2 }) => ({ + ...options2, + completionIntent + })) + }); + networkRequestStarted(logId, contextResult?.logSummary); + const reqContext = { + document: document2, + docContext, + position, + selectedCompletionInfo, + abortSignal + }; + const { completions, cacheHit } = await requestManager.request( + reqContext, + completionProviders, + contextResult?.context ?? [], + tracer2 ? createCompletionProviderTracer(tracer2) : void 0 + ); + const source2 = cacheHit === "hit" ? "Cache" /* Cache */ : cacheHit === "hit-after-request-started" ? "CacheAfterRequestStart" /* CacheAfterRequestStart */ : "Network" /* Network */; + loaded(logId, reqContext, completions, source2); + return { + logId, + items: completions, + source: source2 + }; +} +function getCompletionProviders(params) { + const { document: document2, position, triggerKind, providerConfig, docContext, dynamicMultlilineCompletions } = params; + const sharedProviderOptions = { + docContext, + document: document2, + position, + dynamicMultlilineCompletions + }; + if (docContext.multilineTrigger) { + return [ + providerConfig.create({ + id: "multiline", + ...sharedProviderOptions, + n: 3, + // 3 vs. 1 does not meaningfully affect perf + multiline: true + }) + ]; + } + return [ + providerConfig.create({ + id: "single-line-suffix", + ...sharedProviderOptions, + // Show more if manually triggered (but only showing 1 is faster, so we use it + // in the automatic trigger case). + n: triggerKind === "Automatic" /* Automatic */ ? 1 : 3, + multiline: false + }) + ]; +} +function createCompletionProviderTracer(tracer2) { + return tracer2 && { + params: (data) => tracer2({ completionProviderCallParams: data }), + result: (data) => tracer2({ completionProviderCallResult: data }) + }; +} + +// ../lib/shared/dist/common/index.js +var isDefined2 = (value) => value !== void 0 && value !== null; + +// ../vscode/src/tree-sitter/ast-getters.ts +function getNodeAtCursorAndParents(node, startPosition) { + const atCursorNode = node.descendantForPosition(startPosition); + const parent = atCursorNode.parent; + const parents = [parent, parent?.parent, parent?.parent?.parent].filter(isDefined2).map((node2) => ({ + name: "parents", + node: node2 + })); + return [ + { + name: "at_cursor", + node: atCursorNode + }, + ...parents + ]; +} + +// ../vscode/src/completions/text-processing/parse-completion.ts +function parseCompletion(context2) { + const { + completion, + document: document2, + docContext, + docContext: { position, multilineTriggerPosition } + } = context2; + const parseTreeCache = getCachedParseTreeForDocument(document2); + if (!parseTreeCache) { + return completion; + } + const { parser: parser2, tree } = parseTreeCache; + const completionEndPosition = position.translate( + lines(completion.insertText).length, + getLastLine(completion.insertText).length + ); + const treeWithCompletion = pasteCompletion({ + completion, + document: document2, + docContext, + tree, + parser: parser2, + completionEndPosition + }); + const points = { + start: { + row: position.line, + column: position.character + }, + end: { + row: completionEndPosition.line, + column: completionEndPosition.character + } + }; + if (multilineTriggerPosition) { + points.trigger = asPoint(multilineTriggerPosition); + } + const query = parser2.getLanguage().query("(ERROR) @error"); + const captures = query.captures(treeWithCompletion.rootNode, points?.trigger || points.start, points.end); + return { + ...completion, + points, + tree: treeWithCompletion, + parseErrorCount: captures.length + }; +} +function pasteCompletion(params) { + const { + completion: { insertText }, + document: document2, + tree, + parser: parser2, + docContext: { position, currentLineSuffix }, + completionEndPosition + } = params; + const matchingSuffixLength = getMatchingSuffixLength(insertText, currentLineSuffix); + const prefix = document2.getText(new Range(new Position(0, 0), position)); + const suffix = document2.getText(new Range(position, document2.positionAt(document2.getText().length))); + const offset = document2.offsetAt(position); + const textWithCompletion = prefix + insertText + suffix.slice(matchingSuffixLength); + const treeCopy = tree.copy(); + treeCopy.edit({ + startIndex: offset, + oldEndIndex: offset, + newEndIndex: offset + insertText.length, + startPosition: asPoint(position), + oldEndPosition: asPoint(position), + newEndPosition: asPoint(completionEndPosition) + }); + return parser2.parse(textWithCompletion, treeCopy); +} +function dropParserFields(completion) { + const { points, tree, ...rest } = completion; + return rest; +} + +// ../vscode/src/completions/text-processing/process-inline-completions.ts +function processInlineCompletions(items, params) { + completionPostProcessLogger.info({ + completionPostProcessId: "constant", + stage: "enter", + text: items[0]?.insertText, + isCollapsedGroup: true + }); + const visibleResults = removeLowQualityCompletions(items); + const uniqueResults = dedupeWith(visibleResults, "insertText"); + const rankedResults = rankCompletions(uniqueResults); + completionPostProcessLogger.info({ + completionPostProcessId: "constant", + stage: "exit", + text: rankedResults[0]?.insertText + }); + completionPostProcessLogger.flush(); + return rankedResults.map(dropParserFields); +} +function processCompletion(completion, params) { + const { document: document2, position, docContext } = params; + const { prefix, suffix, currentLineSuffix, multilineTrigger } = docContext; + let { insertText } = completion; + if (completion.insertText.length === 0) { + return completion; + } + if (docContext.injectedPrefix) { + insertText = docContext.injectedPrefix + completion.insertText; + } + if (insertText.length === 0) { + return completion; + } + completion.range = getRangeAdjustedForOverlappingCharacters(completion, { position, currentLineSuffix }); + completion.nodeTypes = getNodeTypesInfo(position, getCachedParseTreeForDocument(document2)?.tree); + completion.nodeTypesWithCompletion = getNodeTypesInfo(position, completion.tree); + if (multilineTrigger) { + insertText = removeTrailingWhitespace(insertText); + } else { + const newLineIndex = insertText.indexOf("\n"); + if (newLineIndex !== -1) { + insertText = insertText.slice(0, newLineIndex + 1); + } + } + insertText = trimUntilSuffix(insertText, prefix, suffix, document2.languageId); + insertText = collapseDuplicativeWhitespace(prefix, insertText); + insertText = insertText.trimEnd(); + return { ...completion, insertText }; +} +function getNodeTypesInfo(position, parseTree) { + const positionBeforeCursor = asPoint({ + line: position.line, + character: Math.max(0, position.character - 1) + }); + if (parseTree) { + const captures = getNodeAtCursorAndParents(parseTree.rootNode, positionBeforeCursor); + if (captures.length > 0) { + const [atCursor, ...parents] = captures; + return { + atCursor: atCursor.node.type, + parent: parents[0]?.node.type, + grandparent: parents[1]?.node.type, + greatGrandparent: parents[2]?.node.type + }; + } + } + return void 0; +} +function getRangeAdjustedForOverlappingCharacters(item, { position, currentLineSuffix }) { + const matchingSuffixLength = getMatchingSuffixLength(item.insertText, currentLineSuffix); + if (!item.range && currentLineSuffix !== "" && matchingSuffixLength !== 0) { + return new Range(position, position.translate(void 0, matchingSuffixLength)); + } + return void 0; +} +function getMatchingSuffixLength(insertText, currentLineSuffix) { + let j = 0; + for (let i = 0; i < insertText.length; i++) { + if (insertText[i] === currentLineSuffix[j]) { + j++; + } + } + return j; +} +function rankCompletions(completions) { + return completions.sort((a, b) => { + if (a.parseErrorCount && !b.parseErrorCount) { + return 1; + } + if (!a.parseErrorCount && b.parseErrorCount) { + return -1; + } + return b.insertText.split("\n").length - a.insertText.split("\n").length; + }); +} +function removeLowQualityCompletions(completions) { + return completions.filter((c) => c.insertText.trim().length > 1); +} + +// ../vscode/src/completions/request-manager.ts +var RequestManager = class { + cache = new RequestCache(); + inflightRequests = /* @__PURE__ */ new Set(); + disableRecyclingOfPreviousRequests = false; + constructor({ + disableRecyclingOfPreviousRequests = false + } = { + disableRecyclingOfPreviousRequests: false + }) { + this.disableRecyclingOfPreviousRequests = disableRecyclingOfPreviousRequests; + } + async request(params, providers, context2, tracer2) { + const cachedCompletions = this.cache.get(params); + if (cachedCompletions) { + return { completions: cachedCompletions, cacheHit: "hit" }; + } + let abortController = new AbortController(); + if (this.disableRecyclingOfPreviousRequests && params.abortSignal) { + abortController = forkSignal(params.abortSignal); + } + const request = new InflightRequest(params, abortController); + this.inflightRequests.add(request); + Promise.all( + providers.map( + (provider) => startAsyncSpan( + "autocomplete.generate", + () => provider.generateCompletions(request.abortController.signal, context2, tracer2) + ) + ) + ).then((res) => res.flat()).then((completions) => { + return startAsyncSpan("autocomplete.post-process", () => processInlineCompletions(completions, params)); + }).then((processedCompletions) => { + this.cache.set(params, processedCompletions); + request.resolve({ completions: processedCompletions, cacheHit: null }); + if (!this.disableRecyclingOfPreviousRequests) { + this.testIfResultCanBeRecycledForInflightRequests(request, processedCompletions); + } + return processedCompletions; + }).catch((error) => { + request.reject(error); + }).finally(() => { + this.inflightRequests.delete(request); + }); + return request.promise; + } + removeFromCache(params) { + this.cache.delete(params); + } + /** + * Test if the result can be used for inflight requests. This only works + * if a completion is a forward-typed version of a previous completion. + */ + testIfResultCanBeRecycledForInflightRequests(resolvedRequest, items) { + const { document: document2, position, docContext, selectedCompletionInfo } = resolvedRequest.params; + const lastCandidate = { + uri: document2.uri, + lastTriggerPosition: position, + lastTriggerDocContext: docContext, + lastTriggerSelectedCompletionInfo: selectedCompletionInfo, + result: { + logId: "", + source: "Network" /* Network */, + items + } + }; + for (const request of this.inflightRequests) { + if (request === resolvedRequest) { + continue; + } + if (request.params.document.uri.toString() !== document2.uri.toString()) { + continue; + } + const synthesizedCandidate = reuseLastCandidate({ + document: request.params.document, + position: request.params.position, + lastCandidate, + docContext: request.params.docContext, + selectedCompletionInfo: request.params.selectedCompletionInfo + }); + if (synthesizedCandidate) { + const synthesizedItems = synthesizedCandidate.items; + logCompletionEvent("synthesizedFromParallelRequest"); + request.resolve({ completions: synthesizedItems, cacheHit: "hit-after-request-started" }); + request.abortController.abort(); + this.inflightRequests.delete(request); + } + } + } +}; +var InflightRequest = class { + constructor(params, abortController) { + this.params = params; + this.abortController = abortController; + this.resolve = () => { + }; + this.reject = () => { + }; + this.promise = new Promise((res, rej) => { + this.resolve = res; + this.reject = rej; + }); + } + promise; + resolve; + reject; +}; +var RequestCache = class { + cache = new LRUCache({ max: 50 }); + toCacheKey(key) { + return `${key.docContext.prefix}\u2588${key.docContext.nextNonEmptyLine}`; + } + get(key) { + return this.cache.get(this.toCacheKey(key)); + } + set(key, entry) { + this.cache.set(this.toCacheKey(key), entry); + } + delete(key) { + this.cache.delete(this.toCacheKey(key)); + } +}; + +// ../vscode/src/completions/inline-completion-item-provider.ts +var AutocompleteItem = class extends InlineCompletionItem { + /** + * An ID used to track this particular completion item. This is used mainly for the Agent which, + * given it's JSON RPC interface, needs to be able to identify the completion item and can not + * rely on the object reference like the VS Code API can. This allows us to simplify external + * API's that require the completion item to only have an ID. + */ + id; + /** + * An ID used to track the completion request lifecycle. This is used for completion analytics + * bookkeeping. + */ + logId; + /** + * The range needed for tracking the completion after inserting. This is needed because the + * actual insert range might overlap with content that is already in the document since we set + * it to always start with the current line beginning in VS Code. + * + * TODO: Remove the need for making having this typed as undefined. + */ + trackedRange; + /** + * The request params used to fetch the completion item. + */ + requestParams; + /** + * The completion item used for analytics perspectives. This one is the raw completion without + * the VS Code specific changes applied via processInlineCompletionsForVSCode. + */ + analyticsItem; + constructor(insertText, logId, range, trackedRange, requestParams, completionItem, command) { + super(insertText, range, command); + this.id = v4_default(); + this.logId = logId; + this.trackedRange = trackedRange; + this.requestParams = requestParams; + this.analyticsItem = completionItem; + } +}; +var suggestedCompletionItemIDs = new LRUCache({ + max: 60 +}); +var InlineCompletionItemProvider = class { + lastCompletionRequest = null; + // This field is going to be set if you use the keyboard shortcut to manually trigger a + // completion. Since VS Code does not provide a way to distinguish manual vs automatic + // completions, we use consult this field inside the completion callback instead. + lastManualCompletionTimestamp = null; + // private reportedErrorMessages: Map = new Map() + resetRateLimitErrorsAfter = null; + config; + requestManager; + contextMixer; + /** Mockable (for testing only). */ + getInlineCompletions = getInlineCompletions; + /** Accessible for testing only. */ + lastCandidate; + disposables = []; + isProbablyNewInstall = true; + firstCompletionDecoration = new FirstCompletionDecorationHandler(); + constructor({ + completeSuggestWidgetSelection = true, + disableRecyclingOfPreviousRequests = false, + dynamicMultlilineCompletions = false, + tracer: tracer2 = null, + createBfgRetriever, + ...config + }) { + this.config = { + ...config, + completeSuggestWidgetSelection, + disableRecyclingOfPreviousRequests, + dynamicMultlilineCompletions, + tracer: tracer2, + isRunningInsideAgent: config.isRunningInsideAgent ?? false + }; + if (this.config.completeSuggestWidgetSelection) { + void workspace.getConfiguration().update("editor.inlineSuggest.suppressSuggestions", true, 1 /* Global */); + } + this.requestManager = new RequestManager({ + disableRecyclingOfPreviousRequests: this.config.disableRecyclingOfPreviousRequests + }); + this.contextMixer = new ContextMixer( + new DefaultContextStrategyFactory(config.contextStrategy, createBfgRetriever) + ); + const chatHistory = localStorage2.getChatHistory()?.chat; + this.isProbablyNewInstall = !chatHistory || Object.entries(chatHistory).length === 0; + logDebug( + "CodyCompletionProvider:initialized", + [this.config.providerConfig.identifier, this.config.providerConfig.model].join("/") + ); + this.disposables.push( + this.contextMixer, + commands.registerCommand( + "cody.autocomplete.inline.accepted", + ({ codyCompletion }) => { + this.handleDidAcceptCompletionItem(codyCompletion); + } + ) + ); + } + /** Set the tracer (or unset it with `null`). */ + setTracer(value) { + this.config.tracer = value; + } + lastCompletionRequestTimestamp = 0; + async provideInlineCompletionItems(document2, position, context2, token) { + return startAsyncSpan("autocomplete.provideInlineCompletionItems", async () => { + const lastCompletionRequest = this.lastCompletionRequest; + const completionRequest = { document: document2, position, context: context2 }; + this.lastCompletionRequest = completionRequest; + const start4 = performance.now(); + if (!this.lastCompletionRequestTimestamp) { + this.lastCompletionRequestTimestamp = start4; + } + const userLatencyPromise = this.config.featureFlagProvider.evaluateFeatureFlag( + "cody-autocomplete-user-latency" /* CodyAutocompleteUserLatency */ + ); + const tracer2 = this.config.tracer ? createTracerForInvocation(this.config.tracer) : void 0; + let stopLoading; + const setIsLoading = (isLoading) => { + if (isLoading) { + stopLoading = this.config.statusBar.startLoading("Completions are being generated"); + } else { + stopLoading?.(); + } + }; + const abortController = new AbortController(); + if (token) { + if (token.isCancellationRequested) { + abortController.abort(); + } + token.onCancellationRequested(() => abortController.abort()); + } + if (!currentEditorContentMatchesPopupItem(document2, context2)) { + return null; + } + let takeSuggestWidgetSelectionIntoAccount = false; + if (this.config.completeSuggestWidgetSelection && lastCompletionRequest && onlyCompletionWidgetSelectionChanged(lastCompletionRequest, completionRequest)) { + takeSuggestWidgetSelectionIntoAccount = true; + } + const triggerKind = this.lastManualCompletionTimestamp && this.lastManualCompletionTimestamp > Date.now() - 500 ? "Manual" /* Manual */ : context2.triggerKind === 1 /* Automatic */ ? "Automatic" /* Automatic */ : takeSuggestWidgetSelectionIntoAccount ? "SuggestWidget" /* SuggestWidget */ : "Hover" /* Hover */; + this.lastManualCompletionTimestamp = null; + const docContext = getCurrentDocContext({ + document: document2, + position, + maxPrefixLength: this.config.providerConfig.contextSizeHints.prefixChars, + maxSuffixLength: this.config.providerConfig.contextSizeHints.suffixChars, + // We ignore the current context selection if completeSuggestWidgetSelection is not enabled + context: takeSuggestWidgetSelectionIntoAccount ? context2 : void 0, + dynamicMultlilineCompletions: this.config.dynamicMultlilineCompletions + }); + const completionIntent = getCompletionIntent({ + document: document2, + position, + prefix: docContext.prefix + }); + const latencyFeatureFlags = { + user: await userLatencyPromise + }; + const artificialDelay = getArtificialDelay( + latencyFeatureFlags, + document2.uri.toString(), + document2.languageId, + completionIntent + ); + try { + const result = await this.getInlineCompletions({ + document: document2, + position, + triggerKind, + selectedCompletionInfo: context2.selectedCompletionInfo, + docContext, + providerConfig: this.config.providerConfig, + contextMixer: this.contextMixer, + requestManager: this.requestManager, + lastCandidate: this.lastCandidate, + debounceInterval: { + singleLine: 75, + multiLine: 125 + }, + setIsLoading, + abortSignal: abortController.signal, + tracer: tracer2, + handleDidAcceptCompletionItem: this.handleDidAcceptCompletionItem.bind(this), + handleDidPartiallyAcceptCompletionItem: this.unstable_handleDidPartiallyAcceptCompletionItem.bind(this), + completeSuggestWidgetSelection: takeSuggestWidgetSelectionIntoAccount, + artificialDelay, + completionIntent, + dynamicMultlilineCompletions: this.config.dynamicMultlilineCompletions + }); + if (abortController.signal.aborted) { + return null; + } + if (!result) { + this.lastCandidate = void 0; + return null; + } + const currentPrefix = docContext.currentLinePrefix; + const lastTriggeredPrefix = this.lastCandidate?.lastTriggerDocContext.currentLinePrefix; + if (this.lastCandidate && lastTriggeredPrefix !== void 0 && currentPrefix.length < lastTriggeredPrefix.length) { + this.handleUnwantedCompletionItem(getRequestParamsFromLastCandidate(document2, this.lastCandidate)); + } + const items = processInlineCompletionsForVSCode( + result.logId, + document2, + docContext, + position, + result.items, + context2 + ); + const visibleItems = items.filter( + (item) => isCompletionVisible( + item, + document2, + position, + docContext, + context2, + takeSuggestWidgetSelectionIntoAccount, + abortController.signal + ) + ); + if (visibleItems.length === 0) { + this.lastCandidate = void 0; + return null; + } + if (result.source !== "LastCandidate" /* LastCandidate */) { + const candidate = { + uri: document2.uri, + lastTriggerPosition: position, + lastTriggerDocContext: docContext, + lastTriggerSelectedCompletionInfo: context2?.selectedCompletionInfo, + result + }; + this.lastCandidate = visibleItems.length > 0 ? candidate : void 0; + } + if (visibleItems.length > 0) { + for (const item of visibleItems) { + suggestedCompletionItemIDs.set(item.id, item); + } + if (!this.config.isRunningInsideAgent) { + this.unstable_handleDidShowCompletionItem(visibleItems[0]); + } + } else { + noResponse(result.logId); + } + const completionResult = { + logId: result.logId, + items: visibleItems, + completionEvent: getCompletionEvent(result.logId) + }; + return completionResult; + } catch (error) { + void this.onError(error); + throw error; + } + }); + } + /** + * Callback to be called when the user accepts a completion. For VS Code, this is part of the + * action inside the `AutocompleteItem`. Agent needs to call this callback manually. + */ + handleDidAcceptCompletionItem(completionOrItemId) { + const completion = typeof completionOrItemId === "string" ? suggestedCompletionItemIDs.get(completionOrItemId) : completionOrItemId; + if (!completion) { + return; + } + resetArtificialDelay(); + this.clearLastCandidate(); + this.requestManager.removeFromCache(completion.requestParams); + this.handleFirstCompletionOnboardingNotices(completion.requestParams); + accepted( + completion.logId, + completion.requestParams.document, + completion.analyticsItem, + completion.trackedRange + ); + } + /** + * Handles showing a notification on the first completion acceptance. + */ + handleFirstCompletionOnboardingNotices(request) { + const key = "completion.inline.hasAcceptedFirstCompletion"; + if (localStorage2.get(key)) { + return; + } + void localStorage2.set(key, "true"); + if (!this.isProbablyNewInstall) { + return; + } + if (this.config.triggerNotice) { + this.config.triggerNotice({ key: "onboarding-autocomplete" }); + } + this.firstCompletionDecoration.show(request); + } + /** + * Called when a suggestion is shown. This API is inspired by the proposed VS Code API of the + * same name, it's prefixed with `unstable_` to avoid a clash when the new API goes GA. + */ + unstable_handleDidShowCompletionItem(completionOrItemId) { + const completion = typeof completionOrItemId === "string" ? suggestedCompletionItemIDs.get(completionOrItemId) : completionOrItemId; + if (!completion) { + return; + } + suggested(completion.logId, completion.analyticsItem); + } + /** + * Called when the user partially accepts a completion. This API is inspired by the proposed VS + * Code API of the same name, it's prefixed with `unstable_` to avoid a clash when the new API + * goes GA. + */ + unstable_handleDidPartiallyAcceptCompletionItem(completion, acceptedLength) { + partiallyAccept(completion.logId, completion.analyticsItem, acceptedLength); + } + async manuallyTriggerCompletion() { + await commands.executeCommand("editor.action.inlineSuggest.hide"); + this.lastManualCompletionTimestamp = Date.now(); + await commands.executeCommand("editor.action.inlineSuggest.trigger"); + } + /** + * Handles when a completion item was rejected by the user. + * + * A completion item is marked as rejected/unwanted when: + * - pressing backspace on a visible suggestion + */ + handleUnwantedCompletionItem(reqContext) { + const completionItem = this.lastCandidate?.result.items[0]; + if (!completionItem) { + return; + } + this.clearLastCandidate(); + this.requestManager.removeFromCache(reqContext); + } + /** + * The user no longer wishes to see the last candidate and requests a new completion. Note this + * is reset by heuristics when new completion requests are triggered and completions are + * rejected as a result of that. + */ + clearLastCandidate() { + this.lastCandidate = void 0; + } + /** + * A callback that is called whenever an error happens. We do not want to flood a users UI with + * error messages so every unexpected error is deduplicated by its message and rate limit errors + * are only shown once during the rate limit period. + */ + async onError(error) { + if (error instanceof RateLimitError2) { + if (this.resetRateLimitErrorsAfter && this.resetRateLimitErrorsAfter > Date.now()) { + return; + } + this.resetRateLimitErrorsAfter = error.retryAfter?.getTime() ?? Date.now() + 24 * 60 * 60 * 1e3; + const canUpgrade = this.config.authProvider.getAuthStatus().userCanUpgrade && await this.config.featureFlagProvider.evaluateFeatureFlag("cody-pro" /* CodyPro */); + let errorTitle; + let errorUrl; + if (canUpgrade) { + errorTitle = "Upgrade to Continue Using Cody Autocomplete"; + errorUrl = ACCOUNT_UPGRADE_URL.toString(); + } else { + errorTitle = "Cody Autocomplete Disabled Due to Rate Limit"; + errorUrl = "https://docs.sourcegraph.com/cody/troubleshooting#autocomplete-rate-limits"; + } + this.config.statusBar.addError({ + title: errorTitle, + description: `You've used all${error.limit ? ` ${error.limit}` : ""} daily autocompletions.` + (error.retryAfter ? ` Usage will reset in ${(0, import_date_fns.formatDistance)(error.retryAfter, /* @__PURE__ */ new Date())}.` : ""), + onSelect: () => { + void env2.openExternal(Uri.parse(errorUrl)); + } + }); + return; + } + } + dispose() { + for (const disposable of this.disposables) { + disposable.dispose(); + } + } +}; +var globalInvocationSequenceForTracer = 0; +function createTracerForInvocation(tracer2) { + let data = { invocationSequence: ++globalInvocationSequenceForTracer }; + return (update) => { + data = { ...data, ...update }; + tracer2(data); + }; +} +function processInlineCompletionsForVSCode(logId, document2, docContext, position, items, context2) { + return items.map((completion) => { + const currentLine = document2.lineAt(position); + const currentLinePrefix = document2.getText(currentLine.range.with({ end: position })); + const insertText = completion.insertText; + const start4 = currentLine.range.start; + const end = completion.range?.end || currentLine.range.end; + const vscodeInsertRange = new Range(start4, end); + const trackedRange = new Range( + currentLine.range.start.line, + currentLinePrefix.length, + end.line, + end.character + ); + const action = { + title: "Completion accepted", + command: "cody.autocomplete.inline.accepted", + arguments: [ + { + // This is going to be set to the AutocompleteItem after initialization + codyCompletion: void 0 + } + ] + }; + const autocompleteItem = new AutocompleteItem( + currentLinePrefix + insertText, + logId, + vscodeInsertRange, + trackedRange, + { + document: document2, + docContext, + selectedCompletionInfo: context2.selectedCompletionInfo, + position + }, + completion, + action + ); + action.arguments[0].codyCompletion = autocompleteItem; + return autocompleteItem; + }); +} +function isCompletionVisible(completion, document2, position, docContext, context2, completeSuggestWidgetSelection, abortSignal) { + const isAborted = abortSignal ? abortSignal.aborted : false; + const isMatchingPopupItem = completeSuggestWidgetSelection ? true : completionMatchesPopupItem(completion, position, document2, context2); + const isMatchingSuffix = completionMatchesSuffix(completion, docContext.currentLineSuffix); + const isVisible = !isAborted && isMatchingPopupItem && isMatchingSuffix; + return isVisible; +} +function currentEditorContentMatchesPopupItem(document2, context2) { + if (context2.selectedCompletionInfo) { + const currentText = document2.getText(context2.selectedCompletionInfo.range); + const selectedText = context2.selectedCompletionInfo.text; + if (!selectedText.startsWith(currentText)) { + return false; + } + } + return true; +} +function completionMatchesPopupItem(completion, position, document2, context2) { + if (context2.selectedCompletionInfo) { + const currentText = document2.getText(context2.selectedCompletionInfo.range); + const selectedText = context2.selectedCompletionInfo.text; + const insertText = completion.insertText; + if (typeof insertText !== "string") { + return true; + } + const offset = position.character - (completion.range?.start.character ?? position.character); + const correctInsertText = insertText.slice(offset); + if (!(currentText + correctInsertText).startsWith(selectedText)) { + return false; + } + } + return true; +} +function completionMatchesSuffix(completion, currentLineSuffix) { + if (typeof completion.insertText !== "string") { + return false; + } + const insertion = completion.insertText; + let j = 0; + for (let i = 0; i < insertion.length; i++) { + if (insertion[i] === currentLineSuffix[j]) { + j++; + } + } + if (j === currentLineSuffix.length) { + return true; + } + return false; +} +function onlyCompletionWidgetSelectionChanged(prev, next) { + if (prev.document.uri.toString() !== next.document.uri.toString()) { + return false; + } + if (!prev.position.isEqual(next.position)) { + return false; + } + if (prev.context.triggerKind !== next.context.triggerKind) { + return false; + } + const prevSelectedCompletionInfo = prev.context.selectedCompletionInfo; + const nextSelectedCompletionInfo = next.context.selectedCompletionInfo; + if (!prevSelectedCompletionInfo || !nextSelectedCompletionInfo) { + return false; + } + if (!prevSelectedCompletionInfo.range.isEqual(nextSelectedCompletionInfo.range)) { + return false; + } + return prevSelectedCompletionInfo.text !== nextSelectedCompletionInfo.text; +} +var FirstCompletionDecorationHandler = class _FirstCompletionDecorationHandler { + /** + * Duration to show decoration before automatically hiding. + * + * Modifying the document will also immediately hide. + */ + static decorationDurationMilliseconds = 1e4; + /** + * A subscription watching for file changes to automatically hide the decoration. + * + * This subscription will be cancelled once the decoration is hidden (for any reason). + */ + editorChangeSubscription; + /** + * A timer to hide the decoration automatically. + */ + hideTimer; + decorationType = window2.createTextEditorDecorationType({ + after: { + margin: "0 0 0 40px", + contentText: " \u{1F389} You just accepted your first Cody autocomplete!", + color: new ThemeColor("editorGhostText.foreground") + }, + isWholeLine: true + }); + /** + * Shows the decoration if the editor is still active. + */ + show(request) { + const editor = window2.activeTextEditor; + if (editor?.document !== request.document) { + return; + } + editor.setDecorations(this.decorationType, [new Range(request.position, request.position)]); + this.hideTimer = setTimeout( + () => this.hide(editor), + _FirstCompletionDecorationHandler.decorationDurationMilliseconds + ); + this.editorChangeSubscription = workspace.onDidChangeTextDocument((e) => { + if (e.document === editor.document) { + this.hide(editor); + } + }); + } + /** + * Hides the decoration and clears any active subscription/timeout. + */ + hide(editor) { + clearTimeout(this.hideTimer); + this.editorChangeSubscription?.dispose(); + editor.setDecorations(this.decorationType, []); + } +}; + +// ../vscode/src/completions/providers/anthropic.ts +var anthropic2 = __toESM(require_src2()); + +// ../node_modules/.pnpm/detect-indent@7.0.1/node_modules/detect-indent/index.js +var INDENT_REGEX = /^(?:( )+|\t+)/; +var INDENT_TYPE_SPACE = "space"; +var INDENT_TYPE_TAB = "tab"; +function makeIndentsMap(string, ignoreSingleSpaces) { + const indents = /* @__PURE__ */ new Map(); + let previousSize = 0; + let previousIndentType; + let key; + for (const line of string.split(/\n/g)) { + if (!line) { + continue; + } + let indent; + let indentType; + let use2; + let weight; + let entry; + const matches = line.match(INDENT_REGEX); + if (matches === null) { + previousSize = 0; + previousIndentType = ""; + } else { + indent = matches[0].length; + indentType = matches[1] ? INDENT_TYPE_SPACE : INDENT_TYPE_TAB; + if (ignoreSingleSpaces && indentType === INDENT_TYPE_SPACE && indent === 1) { + continue; + } + if (indentType !== previousIndentType) { + previousSize = 0; + } + previousIndentType = indentType; + use2 = 1; + weight = 0; + const indentDifference = indent - previousSize; + previousSize = indent; + if (indentDifference === 0) { + use2 = 0; + weight = 1; + } else { + const absoluteIndentDifference = indentDifference > 0 ? indentDifference : -indentDifference; + key = encodeIndentsKey(indentType, absoluteIndentDifference); + } + entry = indents.get(key); + entry = entry === void 0 ? [1, 0] : [entry[0] + use2, entry[1] + weight]; + indents.set(key, entry); + } + } + return indents; +} +function encodeIndentsKey(indentType, indentAmount) { + const typeCharacter = indentType === INDENT_TYPE_SPACE ? "s" : "t"; + return typeCharacter + String(indentAmount); +} +function decodeIndentsKey(indentsKey) { + const keyHasTypeSpace = indentsKey[0] === "s"; + const type2 = keyHasTypeSpace ? INDENT_TYPE_SPACE : INDENT_TYPE_TAB; + const amount = Number(indentsKey.slice(1)); + return { type: type2, amount }; +} +function getMostUsedKey(indents) { + let result; + let maxUsed = 0; + let maxWeight = 0; + for (const [key, [usedCount, weight]] of indents) { + if (usedCount > maxUsed || usedCount === maxUsed && weight > maxWeight) { + maxUsed = usedCount; + maxWeight = weight; + result = key; + } + } + return result; +} +function makeIndentString(type2, amount) { + const indentCharacter = type2 === INDENT_TYPE_SPACE ? " " : " "; + return indentCharacter.repeat(amount); +} +function detectIndent(string) { + if (typeof string !== "string") { + throw new TypeError("Expected a string"); + } + let indents = makeIndentsMap(string, true); + if (indents.size === 0) { + indents = makeIndentsMap(string, false); + } + const keyOfMostUsedIndent = getMostUsedKey(indents); + let type2; + let amount = 0; + let indent = ""; + if (keyOfMostUsedIndent !== void 0) { + ({ type: type2, amount } = decodeIndentsKey(keyOfMostUsedIndent)); + indent = makeIndentString(type2, amount); + } + return { + amount, + type: type2, + indent + }; +} + +// ../vscode/src/completions/text-processing/truncate-multiline-completion.ts +function normalizeStartLine(completion, prefix) { + const lines2 = completion.split("\n"); + const prefixLastNewline = prefix.lastIndexOf("\n"); + const prefixIndentationWithFirstCompletionLine = prefix.slice(prefixLastNewline + 1); + const startIndent = indentation(prefixIndentationWithFirstCompletionLine); + if (lines2.length > 1 && lines2[0] === "" && indentation(lines2[1]) === startIndent) { + lines2.shift(); + lines2[0] = lines2[0].trimStart(); + } + return lines2.join("\n"); +} +function truncateMultilineCompletion(completion, prefix, suffix, languageId) { + const config = getLanguageConfig(languageId); + if (!config) { + return completion; + } + const indentedCompletion = ensureSameOrLargerIndentation(completion); + const lines2 = indentedCompletion.split("\n"); + const prefixLastNewline = prefix.lastIndexOf("\n"); + const prefixIndentationWithFirstCompletionLine = prefix.slice(prefixLastNewline + 1); + const startIndent = indentation(prefixIndentationWithFirstCompletionLine); + const hasEmptyCompletionLine = prefixIndentationWithFirstCompletionLine.trim() === ""; + const includeClosingLine = shouldIncludeClosingLine(prefixIndentationWithFirstCompletionLine, suffix); + let cutOffIndex = lines2.length; + for (let i = 0; i < lines2.length; i++) { + const line = lines2[i]; + if (i === 0 || line === "" || config.blockElseTest.test(line)) { + continue; + } + if (indentation(line) <= startIndent && !hasEmptyCompletionLine || indentation(line) < startIndent && hasEmptyCompletionLine) { + if (includeClosingLine && config.blockEnd && line.trim().startsWith(config.blockEnd)) { + cutOffIndex = i + 1; + } else { + cutOffIndex = i; + } + break; + } + } + return lines2.slice(0, cutOffIndex).join("\n"); +} +function adjustIndentation(text, originalIndent, newIndent) { + const lines2 = text.split("\n"); + return lines2.map((line) => { + let spaceCount = 0; + for (const char of line) { + if (char === " ") { + spaceCount++; + } else { + break; + } + } + const indentLevel = spaceCount / originalIndent; + if (Number.isInteger(indentLevel)) { + const newIndentStr = " ".repeat(indentLevel * newIndent); + return line.replace(/^ +/, newIndentStr); + } + return line; + }).join("\n"); +} +function ensureSameOrLargerIndentation(completion) { + const indentAmount = detectIndent(completion).amount; + const editorTabSize = getEditorTabSize(); + if (editorTabSize > indentAmount) { + return adjustIndentation(completion, indentAmount, editorTabSize); + } + return completion; +} + +// ../vscode/src/completions/text-processing/truncate-parsed-completion.ts +function insertMissingBracketIfNeeded(params) { + const { + textToCheck, + textToComplete, + docContext: { nextNonEmptyLine } + } = params; + const openingBracket = Object.keys(BRACKET_PAIR).find( + (openingBracket2) => textToCheck.trimEnd().endsWith(openingBracket2) + ); + const closingBracket = openingBracket && BRACKET_PAIR[openingBracket]; + if (closingBracket && !nextNonEmptyLine.startsWith(closingBracket) && !textToComplete.endsWith(closingBracket)) { + return textToComplete + closingBracket; + } + return textToComplete; +} +function truncateParsedCompletion(context2) { + const { completion, document: document2, docContext } = context2; + const { completionPostProcessId } = docContext; + const parseTreeCache = getCachedParseTreeForDocument(document2); + if (!completion.tree || !completion.points || !parseTreeCache) { + throw new Error("Expected completion and document to have tree-sitter data for truncation"); + } + const { insertText, points } = completion; + completionPostProcessLogger.info({ completionPostProcessId, stage: "truncate", text: insertText }); + let fixedCompletion = completion; + let updatedText = insertMissingBracketIfNeeded({ + textToCheck: getFirstLine(insertText), + textToComplete: insertText, + docContext + }); + updatedText = insertMissingBracketIfNeeded({ + textToCheck: updatedText, + textToComplete: updatedText, + docContext + }); + if (updatedText.length !== insertText.length) { + const updatedCompletion = parseCompletion({ + completion: { insertText: updatedText }, + document: document2, + docContext + }); + if (fixedCompletion?.tree) { + fixedCompletion = updatedCompletion; + } + } + const nodeToInsert = findLastAncestorOnTheSameRow(fixedCompletion.tree.rootNode, points.trigger || points.start); + completionPostProcessLogger.info({ + completionPostProcessId, + stage: "truncate node", + text: nodeToInsert?.id === fixedCompletion.tree.rootNode.id ? "root" : nodeToInsert?.text + }); + if (nodeToInsert) { + const overlap = findLargestSuffixPrefixOverlap(nodeToInsert.text, insertText); + completionPostProcessLogger.info({ completionPostProcessId, stage: "truncate overlap", text: String(overlap) }); + if (overlap) { + return overlap; + } + } + return insertText; +} +function findLastAncestorOnTheSameRow(root, position) { + const initial = root.namedDescendantForPosition(position); + let current = initial; + while (current?.parent?.startPosition.row === initial?.startPosition.row && current.parent.id !== root.id) { + current = current.parent; + } + return current; +} +function findLargestSuffixPrefixOverlap(left, right) { + let overlap = ""; + for (let i = 1; i <= Math.min(left.length, right.length); i++) { + const suffix = left.slice(left.length - i); + const prefix = right.slice(0, i); + if (suffix === prefix) { + overlap = suffix; + } + } + if (overlap.length === 0) { + return null; + } + return overlap; +} + +// ../vscode/src/completions/text-processing/parse-and-truncate-completion.ts +function parseAndTruncateCompletion(completion, params) { + const { + document: document2, + docContext, + docContext: { multilineTrigger, completionPostProcessId, prefix } + } = params; + const multiline = Boolean(multilineTrigger); + const insertTextBeforeTruncation = (multiline ? normalizeStartLine(completion, prefix) : completion).trimEnd(); + const parsed = parseCompletion({ + completion: { insertText: insertTextBeforeTruncation }, + document: document2, + docContext + }); + completionPostProcessLogger.info({ completionPostProcessId, stage: "parsed", text: parsed.insertText }); + if (parsed.insertText === "") { + return parsed; + } + if (multiline) { + const truncationResult = truncateMultilineBlock({ + parsed, + document: document2, + docContext + }); + const initialLineCount = insertTextBeforeTruncation.split("\n").length; + const truncatedLineCount = truncationResult.insertText.split("\n").length; + parsed.lineTruncatedCount = initialLineCount - truncatedLineCount; + completionPostProcessLogger.info({ + completionPostProcessId, + stage: "lineTruncatedCount", + text: String(parsed.lineTruncatedCount) + }); + parsed.insertText = truncationResult.insertText; + parsed.truncatedWith = truncationResult.truncatedWith; + } + return parsed; +} +function truncateMultilineBlock(params) { + const { parsed, docContext, document: document2 } = params; + if (parsed.tree) { + return { + truncatedWith: "tree-sitter", + insertText: truncateParsedCompletion({ + completion: parsed, + docContext, + document: document2 + }) + }; + } + const { prefix, suffix } = docContext; + return { + truncatedWith: "indentation", + insertText: truncateMultilineCompletion(parsed.insertText, prefix, suffix, document2.languageId) + }; +} + +// ../vscode/src/completions/can-use-partial-completion.ts +function canUsePartialCompletion(partialResponse, params) { + const { docContext } = params; + const lastNewlineIndex = partialResponse.lastIndexOf("\n"); + if (lastNewlineIndex === -1) { + return null; + } + const item = parseAndTruncateCompletion(partialResponse, params); + if (docContext.multilineTrigger) { + return (item.lineTruncatedCount || 0) > 0 ? item : null; + } + return item.insertText.trim() === "" ? null : item; +} + +// ../vscode/src/completions/providers/fetch-and-process-completions.ts +async function fetchAndProcessDynamicMultilineCompletions(params) { + const { client, requestParams, abortSignal, providerOptions, providerSpecificPostProcess } = params; + const { multiline, docContext } = providerOptions; + return new Promise(async (resolve8, reject) => { + try { + let stopStreamingAndUsePartialResponse2 = function(completionItem) { + resolve8({ ...completionItem, stopReason: "streaming-truncation" }); + abortController.abort(); + }; + var stopStreamingAndUsePartialResponse = stopStreamingAndUsePartialResponse2; + const abortController = forkSignal(abortSignal); + const completionPostProcessId = v4_default(); + let responseChunkNumber = 0; + const result = await client.complete( + requestParams, + (incompleteResponse) => { + completionPostProcessLogger.flush(); + responseChunkNumber += 1; + completionPostProcessLogger.info({ + completionPostProcessId, + stage: `start ${responseChunkNumber}` + }); + const initialCompletion2 = providerSpecificPostProcess(incompleteResponse.completion); + completionPostProcessLogger.info({ + completionPostProcessId, + stage: "incomplete response", + text: initialCompletion2, + obj: { + multiline + } + }); + if (multiline) { + completionPostProcessLogger.info({ completionPostProcessId, stage: "multiline", text: "" }); + const completion2 = canUsePartialCompletion(initialCompletion2, { + document: providerOptions.document, + docContext: { + completionPostProcessId, + ...docContext + } + }); + if (completion2) { + const processedCompletion2 = processCompletion(completion2, providerOptions); + stopStreamingAndUsePartialResponse2(processedCompletion2); + } + } else { + const updatedDocContext2 = getUpdatedDocContext({ + ...params, + initialCompletion: initialCompletion2, + completionPostProcessId + }); + if (updatedDocContext2.multilineTrigger) { + const completion2 = canUsePartialCompletion(initialCompletion2, { + document: providerOptions.document, + docContext: updatedDocContext2 + }); + if (completion2) { + completionPostProcessLogger.info({ + completionPostProcessId, + stage: "isMultilineBasedOnFirstLine resolve", + text: completion2.insertText + }); + const processedCompletion2 = processCompletion( + { + ...completion2, + insertText: completion2.insertText + }, + { + ...providerOptions, + docContext: updatedDocContext2 + } + ); + stopStreamingAndUsePartialResponse2(processedCompletion2); + } + } else { + const completion2 = canUsePartialCompletion(initialCompletion2, providerOptions); + if (completion2) { + const firstLine = getFirstLine(completion2.insertText); + completionPostProcessLogger.info({ + completionPostProcessId, + stage: "singleline resolve", + text: firstLine + }); + const processedCompletion2 = processCompletion( + { + ...completion2, + insertText: firstLine + }, + providerOptions + ); + stopStreamingAndUsePartialResponse2(processedCompletion2); + } + } + } + }, + abortController.signal + ); + if (abortController.signal.aborted) { + return; + } + const initialCompletion = providerSpecificPostProcess(result.completion); + completionPostProcessLogger.info({ + completionPostProcessId, + stage: "full response", + text: initialCompletion + }); + const updatedDocContext = getUpdatedDocContext({ + ...params, + completionPostProcessId, + initialCompletion + }); + const completion = parseAndTruncateCompletion(initialCompletion, { + document: providerOptions.document, + docContext: updatedDocContext + }); + completionPostProcessLogger.info({ + completionPostProcessId, + stage: "full response resolve", + text: completion.insertText + }); + const processedCompletion = processCompletion(completion, { + document: providerOptions.document, + position: updatedDocContext.position, + docContext: updatedDocContext + }); + resolve8({ ...processedCompletion, stopReason: result.stopReason }); + } catch (error) { + reject(error); + } + }); +} +async function fetchAndProcessCompletions(params) { + const { client, requestParams, abortSignal, providerOptions, providerSpecificPostProcess } = params; + return new Promise(async (resolve8, reject) => { + try { + const abortController = forkSignal(abortSignal); + const result = await client.complete( + requestParams, + (incompleteResponse) => { + const initialCompletion2 = providerSpecificPostProcess(incompleteResponse.completion); + const completion2 = canUsePartialCompletion(initialCompletion2, providerOptions); + if (completion2) { + const processedCompletion2 = processCompletion(completion2, providerOptions); + resolve8({ ...processedCompletion2, stopReason: "streaming-truncation" }); + abortController.abort(); + } + }, + abortController.signal + ); + const initialCompletion = providerSpecificPostProcess(result.completion); + const completion = parseAndTruncateCompletion(initialCompletion, providerOptions); + const processedCompletion = processCompletion(completion, providerOptions); + resolve8({ ...processedCompletion, stopReason: result.stopReason }); + } catch (error) { + reject(error); + } + }); +} +function getUpdatedDocContext(params) { + const { completionPostProcessId, initialCompletion, providerOptions } = params; + const { + position, + document: document2, + docContext, + docContext: { prefix, suffix, currentLineSuffix } + } = providerOptions; + const firstLine = getFirstLine(initialCompletion); + const matchingSuffixLength = getMatchingSuffixLength(firstLine, currentLineSuffix); + const updatedPosition2 = position.translate(0, firstLine.length - 1); + completionPostProcessLogger.info({ + completionPostProcessId, + stage: "getDerivedDocContext", + text: initialCompletion + }); + const updatedDocContext = getDerivedDocContext({ + languageId: document2.languageId, + position: updatedPosition2, + dynamicMultlilineCompletions: true, + documentDependentContext: { + prefix: prefix + firstLine, + // Remove the characters that are being replaced by the completion + // to reduce the chances of breaking the parse tree with redundant symbols. + suffix: suffix.slice(matchingSuffixLength), + injectedPrefix: null, + completionPostProcessId + } + }); + const isMultilineBasedOnFirstLine = Boolean(updatedDocContext.multilineTrigger); + if (isMultilineBasedOnFirstLine) { + completionPostProcessLogger.info({ + completionPostProcessId, + stage: "isMultilineBasedOnFirstLine", + text: initialCompletion + }); + return { + ...docContext, + completionPostProcessId, + multilineTrigger: updatedDocContext.multilineTrigger, + multilineTriggerPosition: updatedDocContext.multilineTriggerPosition + }; + } + return docContext; +} + +// ../vscode/src/completions/providers/provider.ts +function standardContextSizeHints(maxContextTokens) { + return { + totalFileContextChars: Math.floor(maxContextTokens * 0.9), + // keep 10% margin for preamble, etc. + prefixChars: Math.floor(tokensToChars(0.6 * maxContextTokens)), + suffixChars: Math.floor(tokensToChars(0.1 * maxContextTokens)) + }; +} +var Provider = class { + constructor(options2) { + this.options = options2; + } +}; + +// ../vscode/src/completions/providers/anthropic.ts +var MULTI_LINE_STOP_SEQUENCES = [anthropic2.HUMAN_PROMPT, CLOSING_CODE_TAG]; +var SINGLE_LINE_STOP_SEQUENCES = [anthropic2.HUMAN_PROMPT, CLOSING_CODE_TAG, MULTILINE_STOP_SEQUENCE]; +var MAX_RESPONSE_TOKENS = 256; +var DYNAMIC_MULTLILINE_COMPLETIONS_ARGS = { + maxTokensToSample: MAX_RESPONSE_TOKENS, + stopSequences: MULTI_LINE_STOP_SEQUENCES, + timeoutMs: 15e3 +}; +var AnthropicProvider = class extends Provider { + promptChars; + client; + constructor(options2, { maxContextTokens, client }) { + super(options2); + this.promptChars = tokensToChars(maxContextTokens - MAX_RESPONSE_TOKENS); + this.client = client; + } + emptyPromptLength() { + const { messages } = this.createPromptPrefix(); + const promptNoSnippets = messagesToText(messages); + return promptNoSnippets.length - 10; + } + createPromptPrefix() { + const prefixLines = this.options.docContext.prefix.split("\n"); + if (prefixLines.length === 0) { + throw new Error("no prefix lines"); + } + const { head, tail, overlap } = getHeadAndTail(this.options.docContext.prefix); + const infillBlock = tail.trimmed.endsWith("{\n") ? tail.trimmed.trimEnd() : tail.trimmed; + const infillPrefix = head.raw; + const infillSuffix = this.options.docContext.suffix; + const relativeFilePath = workspace.asRelativePath(this.options.document.fileName); + const prefixMessagesWithInfill = [ + { + speaker: "human", + text: `You are a code completion AI designed to take the surrounding code and shared context into account in order to predict and suggest high-quality code to complete the code enclosed in ${OPENING_CODE_TAG} tags. You only response with code that works and fits seamlessly with surrounding code if any or use best practice and nothing else.` + }, + { + speaker: "assistant", + text: "I am a code completion AI with exceptional context-awareness designed to auto-complete nested code blocks with high-quality code that seamlessly integrates with surrounding code." + }, + { + speaker: "human", + text: `Below is the code from file path ${relativeFilePath}. Review the code outside the XML tags to detect the functionality, formats, style, patterns, and logics in use. Then, use what you detect and reuse methods/libraries to complete and enclose completed code only inside XML tags precisely without duplicating existing implementations. Here is the code: +\`\`\` +${infillPrefix}${OPENING_CODE_TAG}${CLOSING_CODE_TAG}${infillSuffix} +\`\`\`` + }, + { + speaker: "assistant", + text: `${OPENING_CODE_TAG}${infillBlock}` + } + ]; + return { messages: prefixMessagesWithInfill, prefix: { head, tail, overlap } }; + } + // Creates the resulting prompt and adds as many snippets from the reference + // list as possible. + createPrompt(snippets) { + const { messages: prefixMessages, prefix } = this.createPromptPrefix(); + const referenceSnippetMessages = []; + let remainingChars = this.promptChars - this.emptyPromptLength(); + for (const snippet of snippets) { + const snippetMessages = [ + { + speaker: "human", + text: "symbol" in snippet && snippet.symbol !== "" ? `Additional documentation for \`${snippet.symbol}\`: ${OPENING_CODE_TAG}${snippet.content}${CLOSING_CODE_TAG}` : `Codebase context from file path '${snippet.fileName}': ${OPENING_CODE_TAG}${snippet.content}${CLOSING_CODE_TAG}` + }, + { + speaker: "assistant", + text: "I will refer to this code to complete your next request." + } + ]; + const numSnippetChars = messagesToText(snippetMessages).length + 1; + if (numSnippetChars > remainingChars) { + break; + } + referenceSnippetMessages.push(...snippetMessages); + remainingChars -= numSnippetChars; + } + return { messages: [...referenceSnippetMessages, ...prefixMessages], prefix }; + } + async generateCompletions(abortSignal, snippets, tracer2) { + const { messages: prompt2 } = this.createPrompt(snippets); + if (prompt2.length > this.promptChars) { + throw new Error(`prompt length (${prompt2.length}) exceeded maximum character length (${this.promptChars})`); + } + const { dynamicMultlilineCompletions, multiline } = this.options; + const requestParams = { + temperature: 0.5, + messages: prompt2, + ...multiline ? { + maxTokensToSample: MAX_RESPONSE_TOKENS, + stopSequences: MULTI_LINE_STOP_SEQUENCES, + timeoutMs: 15e3 + } : { + maxTokensToSample: Math.min(50, MAX_RESPONSE_TOKENS), + stopSequences: SINGLE_LINE_STOP_SEQUENCES, + timeoutMs: 5e3 + } + }; + let fetchAndProcessCompletionsImpl = fetchAndProcessCompletions; + if (dynamicMultlilineCompletions) { + Object.assign(requestParams, DYNAMIC_MULTLILINE_COMPLETIONS_ARGS); + fetchAndProcessCompletionsImpl = fetchAndProcessDynamicMultilineCompletions; + } + tracer2?.params(requestParams); + const completions = await Promise.all( + Array.from({ length: this.options.n }).map(() => { + return fetchAndProcessCompletionsImpl({ + client: this.client, + requestParams, + abortSignal, + providerSpecificPostProcess: this.postProcess, + providerOptions: this.options + }); + }) + ); + tracer2?.result({ completions }); + return completions; + } + postProcess = (rawResponse) => { + let completion = extractFromCodeBlock(rawResponse); + const trimmedPrefixContainNewline = this.options.docContext.prefix.slice(this.options.docContext.prefix.trimEnd().length).includes("\n"); + if (trimmedPrefixContainNewline) { + completion = completion.replace(/^\s*\n\s*/, ""); + } else { + completion = trimLeadingWhitespaceUntilNewline(completion); + } + completion = fixBadCompletionStart(completion); + return completion; + }; +}; +function createProviderConfig({ maxContextTokens = 2048, ...otherOptions }) { + return { + create(options2) { + return new AnthropicProvider(options2, { maxContextTokens, ...otherOptions }); + }, + contextSizeHints: standardContextSizeHints(maxContextTokens), + identifier: "anthropic", + model: "claude-instant-1.2" + }; +} + +// ../vscode/src/completions/providers/fireworks.ts +var PROVIDER_IDENTIFIER = "fireworks"; +var EOT_STARCODER = "<|endoftext|>"; +var EOT_LLAMA_CODE = " "; +var MODEL_MAP = { + // Models in production + "starcoder-16b": "fireworks/starcoder-16b", + "starcoder-7b": "fireworks/starcoder-7b", + // Models in evaluation + "starcoder-3b": "fireworks/accounts/fireworks/models/starcoder-3b-w8a16", + "starcoder-1b": "fireworks/accounts/fireworks/models/starcoder-1b-w8a16", + "wizardcoder-15b": "fireworks/accounts/fireworks/models/wizardcoder-15b", + "llama-code-7b": "fireworks/accounts/fireworks/models/llama-v2-7b-code", + "llama-code-13b": "fireworks/accounts/fireworks/models/llama-v2-13b-code", + "llama-code-13b-instruct": "fireworks/accounts/fireworks/models/llama-v2-13b-code-instruct", + "mistral-7b-instruct-4k": "fireworks/accounts/fireworks/models/mistral-7b-instruct-4k" +}; +function getMaxContextTokens(model) { + switch (model) { + case "starcoder-hybrid": + case "starcoder-16b": + case "starcoder-7b": + case "starcoder-3b": + case "starcoder-1b": { + return 2048; + } + case "wizardcoder-15b": + return 2048; + case "llama-code-7b": + case "llama-code-13b": + case "llama-code-13b-instruct": + return 2048; + case "mistral-7b-instruct-4k": + return 2048; + default: + return 1200; + } +} +var MAX_RESPONSE_TOKENS2 = 256; +var DYNAMIC_MULTLILINE_COMPLETIONS_ARGS2 = { + maxTokensToSample: MAX_RESPONSE_TOKENS2, + stopSequences: void 0, + timeoutMs: 15e3 +}; +var FireworksProvider = class extends Provider { + model; + promptChars; + client; + timeouts; + constructor(options2, { model, maxContextTokens, client, timeouts }) { + super(options2); + this.timeouts = timeouts; + this.model = model; + this.promptChars = tokensToChars(maxContextTokens - MAX_RESPONSE_TOKENS2); + this.client = client; + } + createPrompt(snippets) { + const { prefix, suffix } = this.options.docContext; + const intro = []; + let prompt2 = ""; + const languageConfig = getLanguageConfig(this.options.document.languageId); + if (!isStarCoderFamily(this.model)) { + intro.push(`Path: ${this.options.document.fileName}`); + } + for (let snippetsToInclude = 0; snippetsToInclude < snippets.length + 1; snippetsToInclude++) { + if (snippetsToInclude > 0) { + const snippet = snippets[snippetsToInclude - 1]; + if ("symbol" in snippet && snippet.symbol !== "") { + intro.push(`Additional documentation for \`${snippet.symbol}\`: + +${snippet.content}`); + } else { + intro.push(`Here is a reference snippet of code from ${snippet.fileName}: + +${snippet.content}`); + } + } + const introString = intro.join("\n\n").split("\n").map((line) => languageConfig ? languageConfig.commentStart + line : "// ").join("\n") + "\n"; + const suffixAfterFirstNewline = getSuffixAfterFirstNewline(suffix); + const nextPrompt = this.createInfillingPrompt( + workspace.asRelativePath(this.options.document.fileName), + introString, + prefix, + suffixAfterFirstNewline + ); + if (nextPrompt.length >= this.promptChars) { + return prompt2; + } + prompt2 = nextPrompt; + } + return prompt2; + } + async generateCompletions(abortSignal, snippets, tracer2) { + const { multiline, dynamicMultlilineCompletions } = this.options; + const prompt2 = this.createPrompt(snippets); + const model = this.model === "starcoder-hybrid" ? MODEL_MAP[multiline ? "starcoder-16b" : "starcoder-7b"] : MODEL_MAP[this.model]; + const timeoutMs = multiline ? this.timeouts?.multiline === void 0 ? 15e3 : this.timeouts.multiline : this.timeouts?.singleline === void 0 ? 5e3 : this.timeouts.singleline; + if (timeoutMs === 0) { + return []; + } + const requestParams = { + messages: [{ speaker: "human", text: prompt2 }], + // To speed up sample generation in single-line case, we request a lower token limit + // since we can't terminate on the first `\n`. + maxTokensToSample: multiline ? MAX_RESPONSE_TOKENS2 : 30, + temperature: 0.2, + topP: 0.95, + topK: 0, + model, + stopSequences: multiline ? ["\n\n", "\n\r\n"] : ["\n"], + timeoutMs + }; + let fetchAndProcessCompletionsImpl = fetchAndProcessCompletions; + if (dynamicMultlilineCompletions) { + Object.assign(requestParams, DYNAMIC_MULTLILINE_COMPLETIONS_ARGS2); + fetchAndProcessCompletionsImpl = fetchAndProcessDynamicMultilineCompletions; + } + tracer2?.params(requestParams); + const completions = await Promise.all( + Array.from({ length: this.options.n }).map(() => { + return fetchAndProcessCompletionsImpl({ + client: this.client, + requestParams, + abortSignal, + providerSpecificPostProcess: this.postProcess, + providerOptions: this.options + }); + }) + ); + completionPostProcessLogger.flush(); + tracer2?.result({ completions }); + return completions; + } + createInfillingPrompt(filename, intro, prefix, suffix) { + if (isStarCoderFamily(this.model)) { + return `${filename}${intro}${prefix}${suffix}`; + } + if (isLlamaCode(this.model)) { + return `
     ${intro}${prefix} ${suffix} `;
    +    }
    +    if (this.model === "mistral-7b-instruct-4k") {
    +      const relativeFilePath = workspace.asRelativePath(this.options.document.fileName);
    +      const { head, tail } = getHeadAndTail(this.options.docContext.prefix);
    +      const infillSuffix = this.options.docContext.suffix;
    +      const infillBlock = tail.trimmed.endsWith("{\n") ? tail.trimmed.trimEnd() : tail.trimmed;
    +      const infillPrefix = head.raw;
    +      return `[INST] Below is the code from file path ${relativeFilePath}. Review the code outside the XML tags to detect the functionality, formats, style, patterns, and logics in use. Then, use what you detect and reuse methods/libraries to complete and enclose completed code only inside XML tags precisely without duplicating existing implementations. Here is the code:
    +\`\`\`
    +${intro}${infillPrefix}${OPENING_CODE_TAG}${CLOSING_CODE_TAG}${infillSuffix}
    +\`\`\`[/INST]
    + ${OPENING_CODE_TAG}${infillBlock}`;
    +    }
    +    console.error("Could not generate infilling prompt for", this.model);
    +    return `${intro}${prefix}`;
    +  }
    +  postProcess = (content) => {
    +    if (isStarCoderFamily(this.model)) {
    +      return content.replace(EOT_STARCODER, "");
    +    }
    +    if (isLlamaCode(this.model)) {
    +      return content.replace(EOT_LLAMA_CODE, "");
    +    }
    +    return content;
    +  };
    +};
    +function createProviderConfig2({
    +  model,
    +  timeouts,
    +  ...otherOptions
    +}) {
    +  const resolvedModel = model === null || model === "" ? "starcoder-hybrid" : model === "starcoder-hybrid" ? "starcoder-hybrid" : Object.prototype.hasOwnProperty.call(MODEL_MAP, model) ? model : null;
    +  if (resolvedModel === null) {
    +    throw new Error(`Unknown model: \`${model}\``);
    +  }
    +  const maxContextTokens = getMaxContextTokens(resolvedModel);
    +  return {
    +    create(options2) {
    +      return new FireworksProvider(options2, {
    +        model: resolvedModel,
    +        maxContextTokens,
    +        timeouts,
    +        ...otherOptions
    +      });
    +    },
    +    contextSizeHints: standardContextSizeHints(maxContextTokens),
    +    identifier: PROVIDER_IDENTIFIER,
    +    model: resolvedModel
    +  };
    +}
    +function getSuffixAfterFirstNewline(suffix) {
    +  const firstNlInSuffix = suffix.indexOf("\n");
    +  if (firstNlInSuffix === -1) {
    +    return "";
    +  }
    +  return suffix.slice(suffix.indexOf("\n"));
    +}
    +function isStarCoderFamily(model) {
    +  return model.startsWith("starcoder") || model.startsWith("wizardcoder");
    +}
    +function isLlamaCode(model) {
    +  return model.startsWith("llama-code");
    +}
    +
    +// ../vscode/src/completions/providers/unstable-openai.ts
    +var MULTI_LINE_STOP_SEQUENCES2 = [CLOSING_CODE_TAG];
    +var SINGLE_LINE_STOP_SEQUENCES2 = [CLOSING_CODE_TAG, MULTILINE_STOP_SEQUENCE];
    +var PROVIDER_IDENTIFIER2 = "unstable-openai";
    +var MAX_RESPONSE_TOKENS3 = 256;
    +var DYNAMIC_MULTLILINE_COMPLETIONS_ARGS3 = {
    +  maxTokensToSample: MAX_RESPONSE_TOKENS3,
    +  stopSequences: MULTI_LINE_STOP_SEQUENCES2,
    +  timeoutMs: 15e3
    +};
    +var UnstableOpenAIProvider = class extends Provider {
    +  client;
    +  promptChars;
    +  instructions = `You are a code completion AI designed to take the surrounding code and shared context into account in order to predict and suggest high-quality code to complete the code enclosed in ${OPENING_CODE_TAG} tags.  You only respond with code that works and fits seamlessly with surrounding code. Do not include anything else beyond the code.`;
    +  constructor(options2, { maxContextTokens, client }) {
    +    super(options2);
    +    this.promptChars = tokensToChars(maxContextTokens - MAX_RESPONSE_TOKENS3);
    +    this.client = client;
    +  }
    +  emptyPromptLength() {
    +    const promptNoSnippets = [this.instructions, this.createPromptPrefix()].join("\n\n");
    +    return promptNoSnippets.length - 10;
    +  }
    +  createPromptPrefix() {
    +    const prefixLines = this.options.docContext.prefix.split("\n");
    +    if (prefixLines.length === 0) {
    +      throw new Error("no prefix lines");
    +    }
    +    const { head, tail } = getHeadAndTail(this.options.docContext.prefix);
    +    const infillBlock = tail.trimmed.endsWith("{\n") ? tail.trimmed.trimEnd() : tail.trimmed;
    +    const infillPrefix = head.raw;
    +    const infillSuffix = this.options.docContext.suffix;
    +    const relativeFilePath = workspace.asRelativePath(this.options.document.fileName);
    +    return `Below is the code from file path ${relativeFilePath}. Review the code outside the XML tags to detect the functionality, formats, style, patterns, and logics in use. Then, use what you detect and reuse methods/libraries to complete and enclose completed code only inside XML tags precisely without duplicating existing implementations. Here is the code:
    +\`\`\`
    +${infillPrefix}${OPENING_CODE_TAG}${CLOSING_CODE_TAG}${infillSuffix}
    +\`\`\`
    +
    +${OPENING_CODE_TAG}${infillBlock}`;
    +  }
    +  // Creates the resulting prompt and adds as many snippets from the reference
    +  // list as possible.
    +  createPrompt(snippets) {
    +    const prefix = this.createPromptPrefix();
    +    const referenceSnippetMessages = [];
    +    let remainingChars = this.promptChars - this.emptyPromptLength();
    +    for (const snippet of snippets) {
    +      const snippetMessages = [
    +        "symbol" in snippet && snippet.symbol !== "" ? `Additional documentation for \`${snippet.symbol}\`: ${OPENING_CODE_TAG}${snippet.content}${CLOSING_CODE_TAG}` : `Codebase context from file path '${snippet.fileName}': ${OPENING_CODE_TAG}${snippet.content}${CLOSING_CODE_TAG}`
    +      ];
    +      const numSnippetChars = snippetMessages.join("\n\n").length + 1;
    +      if (numSnippetChars > remainingChars) {
    +        break;
    +      }
    +      referenceSnippetMessages.push(...snippetMessages);
    +      remainingChars -= numSnippetChars;
    +    }
    +    const messages = [this.instructions, ...referenceSnippetMessages, prefix];
    +    return messages.join("\n\n");
    +  }
    +  async generateCompletions(abortSignal, snippets, tracer2) {
    +    const prompt2 = this.createPrompt(snippets);
    +    const { dynamicMultlilineCompletions, multiline } = this.options;
    +    const requestParams = {
    +      messages: [{ speaker: "human", text: prompt2 }],
    +      maxTokensToSample: multiline ? MAX_RESPONSE_TOKENS3 : 50,
    +      temperature: 1,
    +      topP: 0.5,
    +      stopSequences: multiline ? MULTI_LINE_STOP_SEQUENCES2 : SINGLE_LINE_STOP_SEQUENCES2,
    +      timeoutMs: multiline ? 15e3 : 5e3
    +    };
    +    let fetchAndProcessCompletionsImpl = fetchAndProcessCompletions;
    +    if (dynamicMultlilineCompletions) {
    +      Object.assign(requestParams, DYNAMIC_MULTLILINE_COMPLETIONS_ARGS3);
    +      fetchAndProcessCompletionsImpl = fetchAndProcessDynamicMultilineCompletions;
    +    }
    +    tracer2?.params(requestParams);
    +    const completions = await Promise.all(
    +      Array.from({ length: this.options.n }).map(() => {
    +        return fetchAndProcessCompletionsImpl({
    +          client: this.client,
    +          requestParams,
    +          abortSignal,
    +          providerSpecificPostProcess: this.postProcess,
    +          providerOptions: this.options
    +        });
    +      })
    +    );
    +    tracer2?.result({ completions });
    +    return completions;
    +  }
    +  postProcess = (rawResponse) => {
    +    let completion = extractFromCodeBlock(rawResponse);
    +    const trimmedPrefixContainNewline = this.options.docContext.prefix.slice(this.options.docContext.prefix.trimEnd().length).includes("\n");
    +    if (trimmedPrefixContainNewline) {
    +      completion = completion.replace(/^\s*\n\s*/, "");
    +    } else {
    +      completion = trimLeadingWhitespaceUntilNewline(completion);
    +    }
    +    completion = fixBadCompletionStart(completion);
    +    return completion;
    +  };
    +};
    +function createProviderConfig3({
    +  model,
    +  maxContextTokens = 2048,
    +  ...otherOptions
    +}) {
    +  return {
    +    create(options2) {
    +      return new UnstableOpenAIProvider(options2, { maxContextTokens, ...otherOptions });
    +    },
    +    contextSizeHints: standardContextSizeHints(maxContextTokens),
    +    identifier: PROVIDER_IDENTIFIER2,
    +    model: model ?? "gpt-35-turbo"
    +  };
    +}
    +
    +// ../vscode/src/completions/providers/createProvider.ts
    +async function createProviderConfig4(config, client, codyLLMSiteConfig) {
    +  const providerAndModelFromVSCodeConfig = await resolveDefaultProviderFromVSCodeConfigOrFeatureFlags(
    +    config.autocompleteAdvancedProvider
    +  );
    +  if (providerAndModelFromVSCodeConfig) {
    +    const { provider, model } = providerAndModelFromVSCodeConfig;
    +    switch (provider) {
    +      case "unstable-openai": {
    +        return createProviderConfig3({
    +          client
    +        });
    +      }
    +      case "fireworks": {
    +        return createProviderConfig2({
    +          client,
    +          model: config.autocompleteAdvancedModel ?? model ?? null,
    +          timeouts: config.autocompleteTimeouts
    +        });
    +      }
    +      case "anthropic": {
    +        return createProviderConfig({ client });
    +      }
    +      default:
    +        logError(
    +          "createProviderConfig",
    +          `Unrecognized provider '${config.autocompleteAdvancedProvider}' configured.`
    +        );
    +        return null;
    +    }
    +  }
    +  if (codyLLMSiteConfig?.provider) {
    +    const parsed = parseProviderAndModel({
    +      provider: codyLLMSiteConfig.provider,
    +      model: codyLLMSiteConfig.completionModel
    +    });
    +    if (!parsed) {
    +      logError(
    +        "createProviderConfig",
    +        `Failed to parse the model name for '${codyLLMSiteConfig.provider}' completions provider.`
    +      );
    +      return null;
    +    }
    +    const { provider, model } = parsed;
    +    switch (provider) {
    +      case "openai":
    +      case "azure-openai":
    +        return createProviderConfig3({
    +          client,
    +          // Model name for azure openai provider is a deployment name. It shouldn't appear in logs.
    +          model: provider === "azure-openai" && model ? "" : model
    +        });
    +      case "fireworks":
    +        return createProviderConfig2({
    +          client,
    +          timeouts: config.autocompleteTimeouts,
    +          model: model ?? null
    +        });
    +      case "aws-bedrock":
    +      case "anthropic":
    +        return createProviderConfig({ client });
    +      default:
    +        logError("createProviderConfig", `Unrecognized provider '${provider}' configured.`);
    +        return null;
    +    }
    +  }
    +  return createProviderConfig({ client });
    +}
    +async function resolveDefaultProviderFromVSCodeConfigOrFeatureFlags(configuredProvider) {
    +  if (configuredProvider) {
    +    return { provider: configuredProvider };
    +  }
    +  const [starCoder7b, starCoder16b, starCoderHybrid, llamaCode7b, llamaCode13b] = await Promise.all([
    +    featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-default-starcoder-7b" /* CodyAutocompleteStarCoder7B */),
    +    featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-default-starcoder-16b" /* CodyAutocompleteStarCoder16B */),
    +    featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-default-starcoder-hybrid" /* CodyAutocompleteStarCoderHybrid */),
    +    featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-default-llama-code-7b" /* CodyAutocompleteLlamaCode7B */),
    +    featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-default-llama-code-13b" /* CodyAutocompleteLlamaCode13B */)
    +  ]);
    +  if (starCoder7b || starCoder16b || starCoderHybrid || llamaCode7b || llamaCode13b) {
    +    const model = starCoder7b ? "starcoder-7b" : starCoder16b ? "starcoder-16b" : starCoderHybrid ? "starcoder-hybrid" : llamaCode7b ? "llama-code-7b" : "llama-code-13b";
    +    return { provider: "fireworks", model };
    +  }
    +  return null;
    +}
    +var delimiters = {
    +  sourcegraph: "/",
    +  "aws-bedrock": "."
    +};
    +function parseProviderAndModel({
    +  provider,
    +  model
    +}) {
    +  const delimiter = delimiters[provider];
    +  if (!delimiter) {
    +    return { provider, model };
    +  }
    +  if (model) {
    +    const index = model.indexOf(delimiter);
    +    const parsedProvider = model.slice(0, index);
    +    const parsedModel = model.slice(index + 1);
    +    if (parsedProvider && parsedModel) {
    +      return { provider: parsedProvider, model: parsedModel };
    +    }
    +  }
    +  return null;
    +}
    +
    +// ../vscode/src/completions/tracer/traceView.ts
    +function registerAutocompleteTraceView(provider) {
    +  let panel = null;
    +  let latestInvocationSequence = 0;
    +  return Disposable.from(
    +    commands.registerCommand("cody.autocomplete.openTraceView", () => {
    +      panel = window2.createWebviewPanel(
    +        "codyAutocompleteTraceView",
    +        "Cody Autocomplete Trace View",
    +        2 /* Two */,
    +        {
    +          enableFindWidget: true
    +        }
    +      );
    +      panel.onDidDispose(() => {
    +        provider.setTracer(null);
    +        panel = null;
    +      });
    +      let data;
    +      function rerender() {
    +        if (!panel) {
    +          return;
    +        }
    +        if (!data) {
    +          panel.webview.html = renderWebviewHtml(data);
    +          return;
    +        }
    +        if (data.invocationSequence > latestInvocationSequence) {
    +          latestInvocationSequence = data.invocationSequence;
    +        } else if (data.invocationSequence < latestInvocationSequence) {
    +          return;
    +        }
    +        panel.webview.html = renderWebviewHtml(data);
    +      }
    +      rerender();
    +      const unsubscribeStatistics = registerChangeListener(rerender);
    +      const unsubscribeSectionObserver = registerDebugListener(rerender);
    +      provider.setTracer((_data) => {
    +        data = _data;
    +        rerender();
    +      });
    +      return {
    +        dispose: () => {
    +          unsubscribeStatistics();
    +          unsubscribeSectionObserver();
    +        }
    +      };
    +    }),
    +    {
    +      dispose() {
    +        if (panel) {
    +          panel.dispose();
    +          panel = null;
    +        }
    +      }
    +    }
    +  );
    +}
    +function renderWebviewHtml(data) {
    +  const markdownSource = [
    +    `# Cody autocomplete trace view${data ? ` (#${data.invocationSequence})` : ""}`,
    +    statisticSummary(),
    +    data ? null : "Waiting for you to trigger a completion...",
    +    data?.params && `
    +## Params
    +
    +- ${markdownInlineCode(workspace.asRelativePath(data.params.document.fileName))} @ ${data.params.position.line + 1}:${data.params.position.character + 1}
    +- triggerKind: ${data.params.triggerKind}
    +- selectedCompletionInfo: ${data.params.selectedCompletionInfo ? selectedCompletionInfoDescription(data.params.selectedCompletionInfo, data.params.document) : "none"}
    +`,
    +    data?.completers && `
    +## Completers
    +
    +${data.completers?.map(
    +      ({ id, docContext: { prefix, suffix }, completionIntent, position, document: document2, ...otherOptions }) => `
    +### ${id}
    +
    +${codeDetailsWithSummary("Prefix", prefix, "end")}
    +${codeDetailsWithSummary("Suffix", suffix, "start")}
    +
    +${markdownList({ ...otherOptions, completionIntent: completionIntent || "unknown" })}
    +`
    +    )}`,
    +    data?.context === void 0 ? "" : `
    +## Context
    +
    +${data.context ? markdownList(data.context.logSummary) : ""}
    +
    +${data.context === null || data.context.context.length === 0 ? "No context." : data.context.context.map(
    +      (contextSnippet) => codeDetailsWithSummary(
    +        `${contextSnippet.fileName}${"symbol" in contextSnippet ? `#${contextSnippet.symbol}` : ""} (${contextSnippet.content.length} chars)`,
    +        contextSnippet.content,
    +        "start"
    +      )
    +    ).join("\n\n")}
    +`,
    +    data?.completionProviderCallParams && `
    +## Completion provider calls
    +
    +${codeDetailsWithSummary("Params", JSON.stringify(data.completionProviderCallParams, null, 2))}
    +
    +${data.completionProviderCallResult ? codeDetailsWithSummary("Result", JSON.stringify(data.completionProviderCallResult, null, 2)) : "_Loading result..._"}
    +
    +`,
    +    data?.result === void 0 ? "" : `
    +## Completions
    +
    +${(data.result ? [`- source: ${InlineCompletionsResultSource[data.result.source]}`, `- logId: \`${data.result.logId}\``] : []).join("\n")}
    +
    +${data.result === null ? "`null`" : data.result.items.length === 0 ? "Empty completions." : data.result.items.map((item) => inlineCompletionItemDescription(item, data.params?.document)).join("\n\n---\n\n")}`,
    +    data?.error && `
    +## Error
    +
    +${markdownCodeBlock(data.error)}
    +`,
    +    SectionHistoryRetriever.instance ? `
    +## Document sections
    +
    +${documentSections()}` : "",
    +    `
    +## Advanced tools
    +
    +${codeDetailsWithSummary("JSON for dataset", jsonForDataset(data))}
    +
    +`
    +  ].filter(isDefined2).filter((s) => s !== "").map((s) => s.trim()).join("\n\n---\n\n");
    +  return renderMarkdown(markdownSource, { noDomPurify: true });
    +}
    +function statisticSummary() {
    +  const { accepted: accepted2, suggested: suggested2 } = getStatistics();
    +  return `\u{1F4C8} Suggested: ${suggested2} | Accepted: ${accepted2} | Acceptance rate: ${suggested2 === 0 ? "N/A" : `${(accepted2 / suggested2 * 100).toFixed(2)}%`}`;
    +}
    +function documentSections() {
    +  if (!SectionHistoryRetriever.instance) {
    +    return "";
    +  }
    +  return `\`\`\`
    +${SectionHistoryRetriever.instance.debugPrint()}
    +\`\`\``;
    +}
    +function codeDetailsWithSummary(title, value, anchor = "none", excerptLength = 50) {
    +  const excerpt = anchor === "start" ? value.slice(0, excerptLength) : anchor === "end" ? value.slice(-excerptLength) : null;
    +  const excerptMarkdown = excerpt === null ? "" : `: ${anchor === "end" ? "\u22EF" : ""}${withVisibleWhitespace(excerpt).replaceAll("<", "<").replaceAll(">", ">")}${anchor === "start" ? "\u22EF" : ""}`;
    +  return `
    +
    +${title}${excerptMarkdown} + +${markdownCodeBlock(value)} + +
    `; +} +function markdownInlineCode(value) { + return "`" + value.replaceAll("`", "\\`") + "`"; +} +function markdownCodeBlock(value) { + return "```\n" + value.replaceAll("`", "\\`") + "\n```\n"; +} +function markdownList(object) { + return Object.keys(object).sort().map((key) => `- ${key}: ${JSON.stringify(object[key], null, 2)}`).join("\n"); +} +function selectedCompletionInfoDescription({ range, text }, document2) { + return `${markdownInlineCode(withVisibleWhitespace(text))}, replacing ${rangeDescriptionWithCurrentText( + range, + document2 + )}`; +} +function inlineCompletionItemDescription(item, document2) { + return `${markdownCodeBlock(withVisibleWhitespace(item.insertText))} +${item.range ? `replacing ${rangeDescriptionWithCurrentText( + new Range( + item.range.start.line, + item.range.start.character, + item.range.end.line, + item.range.end.character + ), + document2 + )}` : "inserting at cursor"}`; +} +function rangeDescription(range) { + return `${range.start.line + 1}:${range.start.character + 1}${range.isEmpty ? "" : `-${range.end.line === range.start.line ? "" : `${range.end.line + 1}:`}${range.end.character + 1}`}`; +} +function rangeDescriptionWithCurrentText(range, document2) { + return `${rangeDescription(range)} (${range.isEmpty ? "empty" : document2 ? markdownInlineCode(withVisibleWhitespace(document2.getText(range))) : "unknown replacement text"})`; +} +function withVisibleWhitespace(text) { + return text.replaceAll(" ", "\xB7").replaceAll(" ", "\u21E5").replaceAll(/\r?\n/g, "\u21B5"); +} +function jsonForDataset(data) { + const completer = data?.completers?.[0]; + if (!completer) { + return ""; + } + return `{ + context: ${JSON.stringify(data?.context?.context.map((c) => ({ fileName: c.fileName, content: c.content })))}, + fileName: ${JSON.stringify(workspace.asRelativePath(completer.document.fileName))}, + languageId: ${JSON.stringify(completer.document.languageId)}, + content: \`${completer.docContext.prefix}\${CURSOR}${completer.docContext.suffix}\`, + }`; +} + +// ../vscode/src/completions/create-inline-completion-item-provider.ts +async function createInlineCompletionItemProvider({ + config, + client, + statusBar, + authProvider, + triggerNotice, + createBfgRetriever +}) { + if (!authProvider.getAuthStatus().isLoggedIn) { + logDebug("CodyCompletionProvider:notSignedIn", "You are not signed in."); + if (config.isRunningInsideAgent) { + return languages.registerInlineCompletionItemProvider("*", { + provideInlineCompletionItems: () => Promise.resolve({ items: [] }) + }); + } + return { + dispose: () => { + } + }; + } + const disposables = []; + const [ + providerConfig, + lspLightContextFlag, + bfgContextFlag, + bfgMixedContextFlag, + localMixedContextFlag, + disableRecyclingOfPreviousRequests, + dynamicMultlilineCompletionsFlag + ] = await Promise.all([ + createProviderConfig4(config, client, authProvider.getAuthStatus().configOverwrites), + featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-context-lsp-light" /* CodyAutocompleteContextLspLight */), + featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-context-bfg" /* CodyAutocompleteContextBfg */), + featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-context-bfg-mixed" /* CodyAutocompleteContextBfgMixed */), + featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-context-local-mixed" /* CodyAutocompleteContextLocalMixed */), + featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-disable-recycling-of-previous-requests" /* CodyAutocompleteDisableRecyclingOfPreviousRequests */), + featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-dynamic-multline-completions" /* CodyAutocompleteDynamicMultilineCompletions */) + ]); + if (providerConfig) { + const contextStrategy = config.autocompleteExperimentalGraphContext === "lsp-light" ? "lsp-light" : config.autocompleteExperimentalGraphContext === "bfg" ? "bfg" : config.autocompleteExperimentalGraphContext === "bfg-mixed" ? "bfg-mixed" : lspLightContextFlag ? "lsp-light" : bfgContextFlag ? "bfg" : bfgMixedContextFlag ? "bfg-mixed" : localMixedContextFlag ? "local-mixed" : "jaccard-similarity"; + const dynamicMultlilineCompletions = config.autocompleteExperimentalDynamicMultilineCompletions || dynamicMultlilineCompletionsFlag; + const completionsProvider = new InlineCompletionItemProvider({ + providerConfig, + featureFlagProvider, + authProvider, + statusBar, + completeSuggestWidgetSelection: config.autocompleteCompleteSuggestWidgetSelection, + disableRecyclingOfPreviousRequests, + triggerNotice, + isRunningInsideAgent: config.isRunningInsideAgent, + contextStrategy, + createBfgRetriever, + dynamicMultlilineCompletions + }); + const documentFilters = await getInlineCompletionItemProviderFilters(config.autocompleteLanguages); + disposables.push( + commands.registerCommand( + "cody.autocomplete.manual-trigger", + () => completionsProvider.manuallyTriggerCompletion() + ), + languages.registerInlineCompletionItemProvider( + [{ notebookType: "*" }, ...documentFilters], + completionsProvider + ), + registerAutocompleteTraceView(completionsProvider), + completionsProvider + ); + } else if (config.isRunningInsideAgent) { + throw new Error( + "Can't register completion provider because `providerConfig` evaluated to `null`. To fix this problem, debug why createProviderConfig returned null instead of ProviderConfig. To further debug this problem, here is the configuration:\n" + JSON.stringify(config, null, 2) + ); + } + return { + dispose: () => { + for (const disposable of disposables) { + disposable.dispose(); + } + } + }; +} +async function getInlineCompletionItemProviderFilters(autocompleteLanguages) { + const { "*": isEnabledForAll, ...perLanguageConfig } = autocompleteLanguages; + const languageIds = await languages.getLanguages(); + return languageIds.flatMap((language) => { + const enabled = language in perLanguageConfig ? perLanguageConfig[language] : isEnabledForAll; + return enabled ? [{ language, scheme: "file" }] : []; + }); +} + +// ../vscode/src/editor/EditorCodeLenses.ts +var EditorCodeLenses = class { + isEnabled = false; + isInlineChatEnabled = false; + _disposables = []; + _onDidChangeCodeLenses = new EventEmitter(); + onDidChangeCodeLenses = this._onDidChangeCodeLenses.event; + constructor() { + this.provideCodeLenses = this.provideCodeLenses.bind(this); + this.updateConfig(); + workspace.onDidChangeConfiguration((e) => { + if (e.affectsConfiguration("cody")) { + this.updateConfig(); + } + }); + } + /** + * init + */ + init() { + if (!this.isEnabled) { + return; + } + this._disposables.push(languages.registerCodeLensProvider({ scheme: "file" }, this)); + this._disposables.push( + commands.registerCommand("cody.editor.codelens.click", async (lens) => { + const clickedLens = lens; + await this.onCodeLensClick(clickedLens); + }) + ); + this._disposables.push( + window2.onDidChangeVisibleTextEditors(() => this.fire()), + window2.onDidChangeActiveTextEditor(() => this.fire()) + ); + } + /** + * Update the configurations + */ + updateConfig() { + const config = workspace.getConfiguration("cody"); + this.isEnabled = config.get("experimental.commandLenses"); + const isInlineChatEnabled = config.get("inlineChat.enabled") && !config.get("experimental.chatPanel"); + this.isInlineChatEnabled = isInlineChatEnabled && config.get("inlineChat.codeLenses"); + if (this.isEnabled && !this._disposables.length) { + this.init(); + } + this.fire(); + } + /** + * Handle the code lens click event + */ + async onCodeLensClick(lens) { + const activeEditor = getActiveEditor(); + if (activeEditor) { + activeEditor.selection = lens.selection; + } + await commands.executeCommand(lens.name, "codeLens"); + } + /** + * Gets the code lenses for the specified document. + */ + async provideCodeLenses(document2, token) { + if (!this.isEnabled) { + return []; + } + token.onCancellationRequested(() => []); + const editor = getActiveEditor(); + if (!editor || editor.document !== document2 || document2.languageId === "json") { + return []; + } + const codeLenses = []; + const codeLensesMap = /* @__PURE__ */ new Map(); + const allSymbols = await commands.executeCommand( + "vscode.executeDocumentSymbolProvider", + document2.uri + ); + const symbols = allSymbols?.filter( + (symbol) => symbol.kind === 11 /* Function */ || symbol.kind === 4 /* Class */ || symbol.kind === 5 /* Method */ || symbol.kind === 8 /* Constructor */ + ); + if (symbols) { + for (const symbol of symbols) { + const range = symbol.location.range; + const selection = new Selection(range.start, range.end); + codeLenses.push( + new CodeLens(range, { + ...editorCodeLenses.cody, + arguments: [{ name: "cody.action.commands.menu", selection }] + }) + ); + if (this.isInlineChatEnabled) { + codeLenses.push( + new CodeLens(range, { + ...editorCodeLenses.inline, + arguments: [{ name: "cody.inline.new", selection }] + }) + ); + } + codeLensesMap.set(symbol.location.range.start.line.toString(), range); + } + } + return codeLenses; + } + /** + * Fire an event to notify VS Code that the code lenses have changed. + */ + fire() { + if (!this.isEnabled) { + this.dispose(); + return; + } + this._onDidChangeCodeLenses.fire(); + } + /** + * Dispose the disposables + */ + dispose() { + if (this._disposables.length) { + for (const disposable of this._disposables) { + disposable.dispose(); + } + this._disposables = []; + } + this._onDidChangeCodeLenses.fire(); + } +}; +var editorCodeLenses = { + cody: { title: "$(cody-logo) Cody", command: "cody.editor.codelens.click", tooltip: "Open command menu" }, + inline: { title: "Inline Chat", command: "cody.editor.codelens.click", tooltip: "Ask Cody inline" } +}; + +// ../vscode/src/editor/vscode-editor.ts +var VSCodeEditor = class { + constructor(controllers) { + this.controllers = controllers; + window2.onDidChangeActiveTextEditor(() => getActiveEditor()); + new EditorCodeLenses(); + } + get fileName() { + return getActiveEditor()?.document.fileName ?? ""; + } + /** + * @deprecated Use {@link VSCodeEditor.getWorkspaceRootUri} instead + /** NOTE DO NOT UES - this does not work with chat webview panel + */ + getWorkspaceRootPath() { + const uri = this.getWorkspaceRootUri(); + return uri?.scheme === "file" ? uri.fsPath : null; + } + getWorkspaceRootUri() { + const uri = getActiveEditor()?.document?.uri; + if (uri) { + const wsFolder = workspace.getWorkspaceFolder(uri); + if (wsFolder) { + return wsFolder.uri; + } + } + return workspace.workspaceFolders?.[0]?.uri ?? null; + } + getActiveTextEditor() { + const activeEditor = this.getActiveTextEditorInstance(); + if (!activeEditor) { + return null; + } + const documentUri = activeEditor.document.uri; + const documentText = activeEditor.document.getText(); + const documentSelection = activeEditor.selection; + return { + content: documentText, + filePath: documentUri.fsPath, + fileUri: documentUri, + selectionRange: documentSelection.isEmpty ? void 0 : documentSelection + }; + } + getActiveInlineChatTextEditor() { + const inlineController = this.controllers.inline; + const documentUri = inlineController?.thread?.uri; + if (!inlineController?.isInProgress || !documentUri) { + return null; + } + const documentSelection = inlineController?.selectionRange; + const documentText = workspace.textDocuments.find((doc) => doc.uri.fsPath === documentUri.fsPath)?.getText(documentSelection); + return { + content: documentText || "", + filePath: documentUri.fsPath, + selectionRange: documentSelection + }; + } + getActiveInlineChatSelection() { + const inlineChatEditor = this.getActiveInlineChatTextEditor(); + if (!inlineChatEditor) { + return null; + } + const activeEditor = window2.visibleTextEditors.find( + (editor) => editor.document.uri.fsPath === inlineChatEditor.filePath + ); + const selectionRange = this.controllers.inline?.getSelectionRange(); + if (!activeEditor || !selectionRange) { + return null; + } + const selection = new Selection(selectionRange.start.line, 0, selectionRange.end.line + 1, 0); + return this.createActiveTextEditorSelection(activeEditor, selection); + } + getActiveTextEditorInstance() { + const activeEditor = getActiveEditor(); + return activeEditor ?? null; + } + getActiveTextEditorSelection() { + if (this.controllers.inline?.isInProgress) { + return this.getActiveInlineChatSelection(); + } + const activeEditor = this.getActiveTextEditorInstance(); + if (!activeEditor) { + return null; + } + const selection = activeEditor.selection; + if (!selection || selection?.start.isEqual(selection.end)) { + return null; + } + return this.createActiveTextEditorSelection(activeEditor, selection); + } + /** + * Gets the current smart selection for the active text editor. + * + * Checks if there is an existing selection and returns that if it exists. + * Otherwise tries to get the folding range containing the cursor position. + * + * Returns null if no selection can be determined. + * @returns The smart selection for the active editor, or null if none can be determined. + */ + async getActiveTextEditorSmartSelection() { + const activeEditor = this.getActiveTextEditorInstance(); + if (!activeEditor) { + return null; + } + const selection = activeEditor.selection; + if (!selection.start) { + return null; + } + if (selection && !selection?.start.isEqual(selection.end)) { + return this.createActiveTextEditorSelection(activeEditor, selection); + } + const activeCursorPosition = selection.start.line; + const foldingRange = await getSmartSelection(activeEditor.document.uri, activeCursorPosition); + if (foldingRange) { + return this.createActiveTextEditorSelection(activeEditor, foldingRange); + } + return null; + } + getActiveTextEditorSelectionOrEntireFile() { + const activeEditor = this.getActiveTextEditorInstance(); + if (!activeEditor) { + return null; + } + let selection = activeEditor.selection; + if (!selection || selection.isEmpty) { + selection = new Selection(0, 0, activeEditor.document.lineCount, 0); + } + return this.createActiveTextEditorSelection(activeEditor, selection); + } + getActiveTextEditorSelectionOrVisibleContent() { + if (this.controllers.inline?.isInProgress) { + return this.getActiveInlineChatSelection(); + } + const activeEditor = this.getActiveTextEditorInstance(); + if (!activeEditor) { + return null; + } + let selection = activeEditor.selection; + if (selection && !selection.isEmpty) { + return this.createActiveTextEditorSelection(activeEditor, selection); + } + const visibleRanges = activeEditor.visibleRanges; + if (visibleRanges.length === 0) { + return null; + } + const visibleRange = visibleRanges[0]; + selection = new Selection(visibleRange.start.line, 0, visibleRange.end.line + 1, 0); + if (!selection || selection.isEmpty) { + return null; + } + return this.createActiveTextEditorSelection(activeEditor, selection); + } + async getTextEditorContentForFile(fileUri, selectionRange) { + if (!fileUri) { + return void 0; + } + let range; + if (selectionRange) { + const startLine = selectionRange?.start?.line; + let endLine = selectionRange?.end?.line; + if (startLine === endLine) { + endLine++; + } + range = new Range(startLine, 0, endLine, 0); + } + const vscodeUri = Uri.parse(fileUri.fsPath); + const doc = await workspace.openTextDocument(vscodeUri); + return doc.getText(range); + } + getActiveTextEditorDiagnosticType(severity) { + switch (severity) { + case 0 /* Error */: + return "error"; + case 1 /* Warning */: + return "warning"; + case 2 /* Information */: + return "information"; + case 3 /* Hint */: + return "hint"; + } + } + getActiveTextEditorDiagnosticsForRange({ + start: start4, + end + }) { + const activeEditor = this.getActiveTextEditorInstance(); + if (!activeEditor) { + return null; + } + const diagnostics = languages.getDiagnostics(activeEditor.document.uri); + const selectionRange = new Range( + new Position(start4.line, start4.character), + new Position(end.line, end.character) + ); + return diagnostics.filter((diagnostic) => selectionRange.contains(diagnostic.range)).map(({ message, range, severity }) => ({ + type: this.getActiveTextEditorDiagnosticType(severity), + range, + text: activeEditor.document.getText(range), + message + })); + } + createActiveTextEditorSelection(activeEditor, selection) { + const precedingText = activeEditor.document.getText( + new Range( + new Position(Math.max(0, selection.start.line - SURROUNDING_LINES), 0), + selection.start + ) + ); + const followingText = activeEditor.document.getText( + new Range(selection.end, new Position(selection.end.line + SURROUNDING_LINES, 0)) + ); + return { + fileName: workspace.asRelativePath(activeEditor.document.uri.fsPath), + selectedText: activeEditor.document.getText(selection), + precedingText, + followingText, + selectionRange: selection, + fileUri: activeEditor.document.uri + }; + } + getActiveTextEditorVisibleContent() { + const activeEditor = this.getActiveTextEditorInstance(); + if (!activeEditor) { + return null; + } + const visibleRanges = activeEditor.visibleRanges; + if (visibleRanges.length === 0) { + return null; + } + const visibleRange = visibleRanges[0]; + const content = activeEditor.document.getText( + new Range( + new Position(visibleRange.start.line, 0), + new Position(visibleRange.end.line + 1, 0) + ) + ); + return { + fileName: workspace.asRelativePath(activeEditor.document.uri.fsPath), + fileUri: activeEditor.document.uri, + content + }; + } + async replaceSelection(fileName, selectedText, replacement) { + const activeEditor = this.getActiveTextEditorInstance(); + if (this.controllers.inline?.isInProgress) { + await this.controllers.inline.replace(fileName, replacement, selectedText); + return; + } + if (!activeEditor || workspace.asRelativePath(activeEditor.document.uri.fsPath) !== fileName) { + console.error("Missing file"); + return; + } + const selection = activeEditor.selection; + if (!selection) { + console.error("Missing selection"); + return; + } + if (activeEditor.document.getText(selection) !== selectedText) { + await window2.showInformationMessage( + "The selection changed while Cody was working. The text will not be edited." + ); + return; + } + await activeEditor.edit((edit2) => { + edit2.replace(selection, replacement); + }); + return; + } + async createWorkspaceFile(content, uri) { + const fileUri = uri ?? await window2.showSaveDialog(); + if (!fileUri) { + return; + } + try { + const workspaceEditor = new WorkspaceEdit(); + workspaceEditor.createFile(fileUri, { ignoreIfExists: true }); + const range = new Range(0, 0, 9999, 0); + workspaceEditor.replace(fileUri, range, content.trimEnd()); + await workspace.applyEdit(workspaceEditor); + void commands.executeCommand("vscode.open", fileUri); + } catch { + const errorMsg = "Failed to create new file."; + await window2.showInformationMessage(errorMsg); + } + } + async showQuickPick(labels) { + const label = await window2.showQuickPick(labels); + return label; + } + async showWarningMessage(message) { + await window2.showWarningMessage(message); + } + async showInputBox(prompt2) { + return window2.showInputBox({ + placeHolder: prompt2 || "Enter here..." + }); + } + // TODO: When Non-Stop Fixup doesn't depend directly on the chat view, + // move the recipe to vscode and remove this entrypoint. + async didReceiveFixupText(id, text, state) { + if (!this.controllers.fixups) { + throw new Error("no fixup controller"); + } + await this.controllers.fixups.didReceiveFixupText(id, text, state); + } +}; + +// ../lib/shared/src/guardrails/client.ts +var SourcegraphGuardrailsClient = class { + constructor(client) { + this.client = client; + } + async searchAttribution(snippet) { + const result = await this.client.searchAttribution(snippet); + if (isError2(result)) { + return result; + } + return { + limitHit: result.limitHit, + repositories: result.nodes.map((repo) => ({ name: repo.repositoryName })) + }; + } +}; + +// ../vscode/src/completions/client.ts +function createClient2(config, logger2) { + function getCodeCompletionsEndpoint() { + return new URL("/.api/completions/code", config.serverEndpoint).href; + } + function completeWithTimeout(params, onPartialResponse, signal) { + const abortController = signal ? forkSignal(signal) : new AbortController(); + return Promise.race([ + complete(params, onPartialResponse, abortController.signal), + createTimeout(params.timeoutMs).finally(() => { + setTimeout(() => abortController.abort(), 0); + }) + ]); + } + async function complete(params, onPartialResponse, signal) { + const log2 = logger2?.startCompletion(params); + const tracingFlagEnabled = await featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-tracing" /* CodyAutocompleteTracing */); + const headers = new Headers(config.customHeaders); + headers.set("Connection", "keep-alive"); + headers.set("Content-Type", "application/json; charset=utf-8"); + if (config.accessToken) { + headers.set("Authorization", `token ${config.accessToken}`); + } + if (tracingFlagEnabled) { + headers.set("X-Sourcegraph-Should-Trace", "1"); + addTraceparent(headers); + } + const isNode2 = typeof process !== "undefined"; + const enableStreaming = !!isNode2; + const url2 = getCodeCompletionsEndpoint(); + const response = await fetch3(url2, { + method: "POST", + body: JSON.stringify({ + ...params, + stream: enableStreaming + }), + headers, + signal + }); + const traceId = getActiveTraceAndSpanId()?.traceId; + if (response.status === 429) { + const retryAfter = response.headers.get("retry-after"); + const limit = response.headers.get("x-ratelimit-limit"); + throw new RateLimitError2( + await response.text(), + limit ? parseInt(limit, 10) : void 0, + retryAfter ? new Date(retryAfter) : void 0 + ); + } + if (!response.ok) { + throw new NetworkError(response, await response.text(), traceId); + } + if (response.body === null) { + throw new TracedError("No response body", traceId); + } + const isStreamingResponse = response.headers.get("content-type") === "text/event-stream"; + if (isStreamingResponse) { + let lastResponse; + try { + const iterator = createSSEIterator(response.body); + for await (const chunk of iterator) { + if (chunk.event === "completion") { + if (signal?.aborted) { + break; + } + lastResponse = JSON.parse(chunk.data); + onPartialResponse?.(lastResponse); + } + } + if (lastResponse === void 0) { + throw new TracedError("No completion response received", traceId); + } + log2?.onComplete(lastResponse); + return lastResponse; + } catch (error) { + if (isAbortError(error) && lastResponse) { + log2?.onComplete(lastResponse); + } + const message = `error parsing streaming CodeCompletionResponse: ${error}`; + log2?.onError(message); + throw new TracedError(message, traceId); + } + } else { + const result = await response.text(); + try { + const response2 = JSON.parse(result); + if (typeof response2.completion !== "string" || typeof response2.stopReason !== "string") { + const message = `response does not satisfy CodeCompletionResponse: ${result}`; + log2?.onError(message); + throw new TracedError(message, traceId); + } else { + log2?.onComplete(response2); + return response2; + } + } catch (error) { + const message = `error parsing response CodeCompletionResponse: ${error}, response text: ${result}`; + log2?.onError(message); + throw new TracedError(message, traceId); + } + } + } + return { + complete: completeWithTimeout, + onConfigurationChange(newConfig) { + config = newConfig; + } + }; +} +var SSE_TERMINATOR = "\n\n"; +async function* createSSEIterator(iterator) { + let buffer2 = ""; + for await (const event of iterator) { + const messages = []; + const data = new TextDecoder().decode(event); + buffer2 += data; + let index; + while ((index = buffer2.indexOf(SSE_TERMINATOR)) >= 0) { + const message = buffer2.slice(0, index); + buffer2 = buffer2.slice(index + SSE_TERMINATOR.length); + messages.push(parseSSEEvent(message)); + } + for (let i = 0; i < messages.length; i++) { + if (i + 1 < messages.length && messages[i].event === "completion" && messages[i + 1].event === "completion") { + continue; + } + yield messages[i]; + } + } +} +function parseSSEEvent(message) { + const headers = message.split("\n"); + let event = ""; + let data = ""; + for (const header of headers) { + const index = header.indexOf(": "); + const title = header.slice(0, index); + const rest = header.slice(index + 2); + switch (title) { + case "event": + event = rest; + break; + case "data": + data = rest; + break; + default: + console.error(`Unknown SSE event type: ${event}`); + } + } + return { event, data }; +} +function createTimeout(timeoutMs) { + return new Promise((_, reject) => setTimeout(() => reject(new TimeoutError("The request timed out")), timeoutMs)); +} + +// ../vscode/src/external-services.ts +async function configureExternalServices(initialConfig, rgPath, symf, editor, platform4) { + const sentryService = platform4.createSentryService?.(initialConfig); + const openTelemetryService = platform4.createOpenTelemetryService?.(initialConfig); + const completionsClient = platform4.createCompletionsClient(initialConfig, logger); + const codeCompletionsClient = createClient2(initialConfig, logger); + const repoId = initialConfig.codebase ? await graphqlClient.getRepoId(initialConfig.codebase) : null; + if (isError2(repoId)) { + logDebug( + "external-services:configureExternalServices", + `Cody could not find the '${initialConfig.codebase}' repository on your Sourcegraph instance. +Please check that the repository exists. You can override the repository with the "cody.codebase" setting.` + ); + } + const embeddingsSearch = repoId && !isError2(repoId) ? new SourcegraphEmbeddingsSearchClient(graphqlClient, initialConfig.codebase || repoId, repoId) : null; + const chatClient = new ChatClient(completionsClient); + const codebaseContext = new CodebaseContext( + initialConfig, + initialConfig.codebase, + embeddingsSearch, + rgPath ? platform4.createLocalKeywordContextFetcher?.(rgPath, editor, chatClient) ?? null : null, + rgPath ? platform4.createFilenameContextFetcher?.(rgPath, editor, chatClient) ?? null : null, + null, + null, + symf, + void 0 + ); + const guardrails = new SourcegraphGuardrailsClient(graphqlClient); + return { + intentDetector: new SourcegraphIntentDetectorClient(graphqlClient, completionsClient), + codebaseContext, + chatClient, + codeCompletionsClient, + guardrails, + onConfigurationChange: (newConfig) => { + sentryService?.onConfigurationChange(newConfig); + openTelemetryService?.onConfigurationChange(newConfig); + completionsClient.onConfigurationChange(newConfig); + codeCompletionsClient.onConfigurationChange(newConfig); + codebaseContext.onConfigurationChange(newConfig); + } + }; +} + +// ../vscode/src/non-stop/diff.ts +function longestCommonSubsequence(a, b) { + const lenA = a.length; + const lenB = b.length; + const program2 = new Uint16Array((lenA + 1) * (lenB + 1)); + const ops = new Array((lenA + 1) * (lenB + 1)); + ops[0] = "*"; + for (let i2 = 1; i2 <= lenA; i2++) { + program2[i2] = i2; + ops[i2] = "X"; + } + for (let i2 = 1; i2 <= lenB; i2++) { + program2[i2 * (lenA + 1)] = i2; + ops[i2 * (lenA + 1)] = "I"; + } + for (let iB = 1; iB <= lenB; iB++) { + const chB = b[iB - 1]; + for (let iA = 1; iA <= lenA; iA++) { + const chA = a[iA - 1]; + const costDeleteA = program2[iB * (lenA + 1) + iA - 1] + 1; + const costInsertB = program2[(iB - 1) * (lenA + 1) + iA] + 1; + const costSkipReplace = program2[(iB - 1) * (lenA + 1) + iA - 1] + (chA === chB ? 0 : 2); + const cost = Math.min(costDeleteA, costInsertB, costSkipReplace); + program2[iB * (lenA + 1) + iA] = cost; + ops[iB * (lenA + 1) + iA] = cost === costSkipReplace ? chA === chB ? "-" : "R" : cost === costDeleteA ? "X" : "I"; + } + } + const use2 = new Uint8Array((lenA + 1) * (lenB + 1)); + let i = lenA; + let j = lenB; + while (i !== 0 || j !== 0) { + const op = ops[j * (lenA + 1) + i]; + switch (op) { + case "-": + use2[j * (lenA + 1) + i] = 1; + i--; + j--; + break; + case "R": + i--; + j--; + break; + case "X": + i--; + break; + case "I": + j--; + break; + default: + throw new Error("unreachable"); + } + } + return use2; +} +function computeChunks(original, a, b) { + const useA = longestCommonSubsequence(original, a); + const useB = longestCommonSubsequence(original, b); + const chunks = []; + let lO = 0; + let lA = 0; + let lB = 0; + outer: + while (true) { + for (let i = 1; lO + i <= original.length && (lA + i <= a.length || lB + i <= b.length); i++) { + if (lA + i <= a.length && useA[(lA + i) * (original.length + 1) + lO + i] && lB + i <= b.length && useB[(lB + i) * (original.length + 1) + lO + i]) { + continue; + } + if (i > 1) { + chunks.push([a.slice(lA, lA + i - 1), original.slice(lO, lO + i - 1), b.slice(lB, lB + i - 1)]); + lO += i - 1; + lA += i - 1; + lB += i - 1; + continue outer; + } + for (let nextO = lO + 1; nextO <= original.length; nextO++) { + let nextA; + let nextB; + for (nextA = 1; nextA <= a.length; nextA++) { + if (useA[nextA * (original.length + 1) + nextO]) { + break; + } + } + if (nextA > a.length) { + continue; + } + for (nextB = 1; nextB <= b.length; nextB++) { + if (useB[nextB * (original.length + 1) + nextO]) { + break; + } + } + if (nextB > b.length) { + continue; + } + chunks.push([a.slice(lA, nextA - 1), original.slice(lO, nextO - 1), b.slice(lB, nextB - 1)]); + lO = nextO - 1; + lA = nextA - 1; + lB = nextB - 1; + continue outer; + } + break outer; + } + break; + } + if (lO <= original.length || lA <= a.length || lB <= b.length) { + chunks.push([a.slice(lA), original.slice(lO), b.slice(lB)]); + } + return chunks; +} +function updatedPosition(position, text) { + let { line, character } = position; + for (const ch of text) { + if (ch === "\n") { + line++; + character = 0; + } else { + character++; + } + } + return { line, character }; +} +function computeDiff(original, a, b, bStart) { + const chunks = computeChunks(original, a, b); + const edits = []; + const conflicts = []; + const postEditHighlights = []; + let clean = true; + let originalPos = bStart; + let mergedPos = bStart; + const mergedText = []; + for (const chunk of chunks) { + const originalEnd = updatedPosition(originalPos, chunk[2]); + if (chunk[1] === chunk[2] && chunk[0] !== chunk[1]) { + edits.push({ + kind: "insert", + text: chunk[0], + range: { + start: originalPos, + end: originalEnd + } + }); + mergedText.push(chunk[0]); + const mergedEnd = updatedPosition(mergedPos, chunk[0]); + if (clean) { + postEditHighlights.push({ start: mergedPos, end: mergedEnd }); + } + mergedPos = mergedEnd; + } else if (chunk[1] === chunk[0] && chunk[1] !== chunk[2]) { + mergedPos = updatedPosition(mergedPos, chunk[2]); + mergedText.push(chunk[2]); + } else if (chunk[0] === chunk[2]) { + mergedPos = updatedPosition(mergedPos, chunk[2]); + mergedText.push(chunk[2]); + } else { + conflicts.push({ start: originalPos, end: originalEnd }); + clean = false; + } + originalPos = originalEnd; + } + return { + originalText: original, + bufferText: b, + mergedText: clean ? mergedText.join("") : void 0, + clean, + conflicts, + edits, + highlights: postEditHighlights + }; +} + +// ../vscode/src/services/InlineAssist.ts +function updateRangeOnDocChange(current, change, changeText) { + if (change.start.line > current.end.line) { + return current; + } + let addedLines = 0; + if (changeText.includes("\n")) { + addedLines = changeText.split("\n").length - 1; + } else if (change.end.line - change.start.line > 0) { + addedLines -= change.end.line - change.start.line; + } + const newStartLine = change.start.line > current.start.line ? current.start.line : current.start.line + addedLines; + const newRange = new Range(newStartLine, 0, current.end.line + addedLines, 0); + return newRange; +} +function getSingleLineRange(line) { + return new Range(line, 0, line, 0); +} +function getIconPath(speaker, extPath) { + const extensionPath = Uri.file(extPath); + const webviewPath = Uri.joinPath(extensionPath, "dist/webviews"); + return Uri.joinPath(webviewPath, speaker === "cody" ? "cody.png" : "sourcegraph.png"); +} +async function editDocByUri(uri, lines2, content) { + const lineDiff = content.split("\n").length - 2; + const document2 = await workspace.openTextDocument(uri); + const edit2 = new WorkspaceEdit(); + const range = new Range(lines2.start, 0, lines2.end, 0); + edit2.delete(document2.uri, range); + edit2.insert(document2.uri, new Position(lines2.start, 0), content); + await workspace.applyEdit(edit2); + return new Range(lines2.start, 0, lines2.start + lineDiff, 0); +} + +// ../vscode/src/non-stop/utils.ts +var fixupTaskList = { + [1 /* idle */]: { + id: "idle", + icon: "clock", + description: "Initial state" + }, + [2 /* working */]: { + id: "working", + icon: "sync~spin", + description: "Cody is preparing a response" + }, + [3 /* applying */]: { + id: "applying", + icon: "pencil", + description: "The edit is being applied to the document" + }, + [4 /* formatting */]: { + id: "formatting", + icon: "pencil", + description: "The edit is being formatted in the document" + }, + [5 /* applied */]: { + id: "applied", + icon: "pass-filled", + description: "Suggestions from Cody have been applied" + }, + [6 /* finished */]: { + id: "finished", + icon: "pass-filled", + description: "The edit has been resolved and is no longer visible in the document" + }, + [7 /* error */]: { + id: "error", + icon: "stop", + description: "The task failed" + } +}; +function getFileNameAfterLastDash(filePath) { + const lastDashIndex = filePath.lastIndexOf("/"); + if (lastDashIndex === -1) { + return filePath; + } + return filePath.slice(lastDashIndex + 1); +} +function getEditorInsertSpaces(uri) { + const editor = window2.visibleTextEditors.find((editor2) => editor2.document.uri === uri); + if (!editor) { + return true; + } + const { insertSpaces } = editor.options; + if (typeof insertSpaces === "string" || insertSpaces === void 0) { + console.error('Unexpected value when getting "insertSpaces" for the current editor.'); + return true; + } + return insertSpaces; +} +function getEditorTabSize2(uri) { + const editor = window2.visibleTextEditors.find((editor2) => editor2.document.uri === uri); + if (!editor) { + return 4; + } + const { tabSize } = editor.options; + if (typeof tabSize === "string" || tabSize === void 0) { + console.error('Unexpected value when getting "tabSize" for the current editor.'); + return 4; + } + return tabSize; +} + +// ../vscode/src/non-stop/codelenses.ts +function getLensesForTask(task) { + const codeLensRange = getSingleLineRange(task.selectionRange.start.line); + switch (task.state) { + case 2 /* working */: { + const title = getWorkingLens(codeLensRange); + const cancel = getCancelLens(codeLensRange, task.id); + return [title, cancel]; + } + case 3 /* applying */: { + const title = getApplyingLens(codeLensRange); + return [title]; + } + case 4 /* formatting */: { + const title = getFormattingLens(codeLensRange); + const skip = getFormattingSkipLens(codeLensRange, task.id); + return [title, skip]; + } + case 5 /* applied */: { + const title = getAppliedLens(codeLensRange, task.id); + const retry = getRetryLens(codeLensRange, task.id); + const undo = getUndoLens(codeLensRange, task.id); + const accept = getAcceptLens(codeLensRange, task.id); + return [title, retry, undo, accept]; + } + case 7 /* error */: { + const title = getErrorLens(codeLensRange, task.id); + const discard = getDiscardLens(codeLensRange, task.id); + return [title, discard]; + } + default: + return []; + } +} +function getErrorLens(codeLensRange, id) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "$(warning) Applying edits failed", + command: "cody.fixup.codelens.error", + arguments: [id] + }; + return lens; +} +function getWorkingLens(codeLensRange) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "$(sync~spin) Cody is working...", + command: "cody.focus" + }; + return lens; +} +function getApplyingLens(codeLensRange) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "$(sync~spin) Applying...", + command: "cody.focus" + }; + return lens; +} +function getFormattingLens(codeLensRange) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "$(sync~spin) Formatting...", + command: "cody.focus" + }; + return lens; +} +function getFormattingSkipLens(codeLensRange, id) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "Skip", + command: "cody.fixup.codelens.skip-formatting", + arguments: [id] + }; + return lens; +} +function getCancelLens(codeLensRange, id) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "Cancel", + command: "cody.fixup.codelens.cancel", + arguments: [id] + }; + return lens; +} +function getDiscardLens(codeLensRange, id) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "Discard", + command: "cody.fixup.codelens.cancel", + arguments: [id] + }; + return lens; +} +function getAppliedLens(codeLensRange, id) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "$(cody-logo) Edits Applied", + command: "cody.fixup.codelens.diff", + arguments: [id] + }; + return lens; +} +function getRetryLens(codeLensRange, id) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "Retry", + command: "cody.fixup.codelens.retry", + arguments: [id] + }; + return lens; +} +function getUndoLens(codeLensRange, id) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "Undo", + command: "cody.fixup.codelens.undo", + arguments: [id] + }; + return lens; +} +function getAcceptLens(codeLensRange, id) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "Done", + command: "cody.fixup.codelens.accept", + arguments: [id] + }; + return lens; +} + +// ../vscode/src/non-stop/FixupCodeLenses.ts +var FixupCodeLenses = class { + /** + * Create a code lens provider + */ + constructor(files) { + this.files = files; + this.provideCodeLenses = this.provideCodeLenses.bind(this); + this._disposables.push(languages.registerCodeLensProvider("*", this)); + } + taskLenses = /* @__PURE__ */ new Map(); + _disposables = []; + _onDidChangeCodeLenses = new EventEmitter(); + onDidChangeCodeLenses = this._onDidChangeCodeLenses.event; + /** + * Gets the code lenses for the specified document. + */ + provideCodeLenses(document2, token) { + const file = this.files.maybeFileForUri(document2.uri); + if (!file) { + return []; + } + const lenses = []; + for (const task of this.files.tasksForFile(file)) { + lenses.push(...this.taskLenses.get(task) || []); + } + return lenses; + } + didUpdateTask(task) { + if (task.state === 6 /* finished */) { + this.removeLensesFor(task); + return; + } + this.taskLenses.set(task, getLensesForTask(task)); + this.notifyCodeLensesChanged(); + } + didDeleteTask(task) { + this.removeLensesFor(task); + } + removeLensesFor(task) { + if (this.taskLenses.delete(task)) { + this.notifyCodeLensesChanged(); + } + } + notifyCodeLensesChanged() { + this._onDidChangeCodeLenses.fire(); + } + /** + * Dispose the disposables + */ + dispose() { + this.taskLenses.clear(); + for (const disposable of this._disposables) { + disposable.dispose(); + } + this._disposables = []; + } +}; + +// ../vscode/src/non-stop/FixupContentStore.ts +var ContentProvider = class { + // This stores the content of the document for each task ID + // The content is initialized by the fixup task with the original content + // and then updated by the fixup task with the replacement content + contentStore = /* @__PURE__ */ new Map(); + // This tracks the task IDs belong toe each file path + tasksByFilePath = /* @__PURE__ */ new Map(); + _onDidChange = new EventEmitter(); + _disposables; + constructor() { + this._disposables = workspace.onDidCloseTextDocument((doc) => this.deleteByFilePath(doc.uri.fsPath)); + } + // Get content from the content store + provideTextDocumentContent(uri) { + const id = uri.fragment; + return this.contentStore.get(id) || null; + } + // Add to store - store origin content by fixup task id + async set(id, docUri) { + const doc = await workspace.openTextDocument(docUri); + this.contentStore.set(id, doc.getText()); + this.tasksByFilePath.set(docUri.fsPath, [...this.tasksByFilePath.get(docUri.fsPath) || [], id]); + } + // Remove by ID + delete(id) { + this.contentStore.delete(id); + for (const [filePath, tasks] of this.tasksByFilePath) { + const index = tasks.indexOf(id); + if (index > -1) { + tasks.splice(index, 1); + } + if (tasks.length === 0) { + this.deleteByFilePath(filePath); + } + } + } + // Remove by file path + deleteByFilePath(fileName) { + const files = this.tasksByFilePath.get(fileName); + if (!files) { + return; + } + for (const id of files) { + this.contentStore.delete(id); + } + } + get onDidChange() { + return this._onDidChange.event; + } + dispose() { + this._disposables.dispose(); + this._onDidChange.dispose(); + this.contentStore = /* @__PURE__ */ new Map(); + this.tasksByFilePath = /* @__PURE__ */ new Map(); + } +}; + +// ../vscode/src/non-stop/FixupDecorator.ts +function makeDecorations(diff) { + if (!diff) { + return { + edits: [], + conflicts: [] + }; + } + return { + edits: diff.edits.map( + (edit2) => new Range( + new Position(edit2.range.start.line, edit2.range.start.character), + new Position(edit2.range.end.line, edit2.range.end.character) + ) + ), + conflicts: diff.conflicts.map( + (conflict) => new Range( + new Position(conflict.start.line, conflict.start.character), + new Position(conflict.end.line, conflict.end.character) + ) + ) + }; +} +var FixupDecorator = class { + decorationCodyConflictMarker_; + decorationCodyConflicted_; + decorationCodyIncoming_; + decorations_ = /* @__PURE__ */ new Map(); + constructor() { + this.decorationCodyConflictMarker_ = window2.createTextEditorDecorationType({ + backgroundColor: new ThemeColor("cody.fixup.conflictBackground"), + borderColor: new ThemeColor("cody.fixup.conflictBorder"), + borderStyle: "solid", + borderWidth: "1px" + }); + this.decorationCodyConflicted_ = window2.createTextEditorDecorationType({ + backgroundColor: new ThemeColor("cody.fixup.conflictedBackground"), + borderColor: new ThemeColor("cody.fixup.conflictedBorder"), + borderStyle: "solid", + borderWidth: "1px" + }); + this.decorationCodyIncoming_ = window2.createTextEditorDecorationType({ + backgroundColor: new ThemeColor("cody.fixup.incomingBackground"), + borderColor: new ThemeColor("cody.fixup.incomingBorder"), + borderStyle: "solid", + borderWidth: "1px" + }); + } + dispose() { + this.decorationCodyConflictMarker_.dispose(); + this.decorationCodyConflicted_.dispose(); + this.decorationCodyIncoming_.dispose(); + } + didChangeVisibleTextEditors(file, editors) { + this.applyDecorations(editors, this.decorations_.get(file)?.values() || [].values()); + } + didUpdateDiff(task) { + this.updateTaskDecorations(task, task.diff); + } + didCompleteTask(task) { + this.updateTaskDecorations(task, void 0); + } + updateTaskDecorations(task, diff) { + const decorations = makeDecorations(diff); + const isEmpty = decorations.edits.length === 0 && decorations.conflicts.length === 0; + let fileTasks = this.decorations_.get(task.fixupFile); + if (!fileTasks && isEmpty) { + return; + } + if (isEmpty) { + if (fileTasks?.has(task)) { + fileTasks.delete(task); + this.didChangeFileDecorations(task.fixupFile); + } + return; + } + if (!fileTasks) { + fileTasks = /* @__PURE__ */ new Map(); + this.decorations_.set(task.fixupFile, fileTasks); + } + fileTasks.set(task, decorations); + this.didChangeFileDecorations(task.fixupFile); + } + didChangeFileDecorations(file) { + const editors = window2.visibleTextEditors.filter((editor) => editor.document.uri === file.uri); + if (!editors.length) { + return; + } + this.applyDecorations(editors, this.decorations_.get(file)?.values() || [].values()); + } + applyDecorations(editors, decorations) { + const incoming = []; + const conflicted = []; + const conflicts = []; + for (const decoration of decorations) { + ; + (decoration.conflicts.length ? conflicted : incoming).push(...decoration.edits); + conflicts.push(...decoration.conflicts); + } + for (const editor of editors) { + editor.setDecorations(this.decorationCodyConflictMarker_, conflicts); + editor.setDecorations(this.decorationCodyConflicted_, conflicted); + editor.setDecorations(this.decorationCodyIncoming_, incoming); + } + } +}; + +// ../vscode/src/non-stop/FixupDocumentEditObserver.ts +function updateDiffRange(range, changes) { + return toDiffRange(updateRangeMultipleChanges(toVsCodeRange(range), changes, { supportRangeAffix: true })); +} +function toDiffRange(range) { + return { + start: toDiffPosition(range.start), + end: toDiffPosition(range.end) + }; +} +function toDiffPosition(position) { + return { line: position.line, character: position.character }; +} +function toVsCodeRange(range) { + return new Range(toVsCodePosition(range.start), toVsCodePosition(range.end)); +} +function toVsCodePosition(position) { + return new Position(position.line, position.character); +} +function updateRanges(ranges, changes) { + for (let i = 0; i < ranges.length; i++) { + ranges[i] = updateDiffRange(ranges[i], changes); + } +} +function updateEdits(edits, changes) { + for (const [i, edit2] of edits.entries()) { + edits[i].range = updateDiffRange(edit2.range, changes); + } +} +var FixupDocumentEditObserver = class { + constructor(provider_) { + this.provider_ = provider_; + } + textDocumentChanged(event) { + const file = this.provider_.maybeFileForUri(event.document.uri); + if (!file) { + return; + } + const tasks = this.provider_.tasksForFile(file); + for (const task of tasks) { + const targetRange = task.selectionRange; + for (const edit2 of event.contentChanges) { + if (edit2.range.end.isBefore(targetRange.start) || edit2.range.start.isAfter(targetRange.end)) { + continue; + } + this.provider_.textDidChange(task); + break; + } + const changes = new Array(...event.contentChanges); + const updatedRange = updateRangeMultipleChanges(task.selectionRange, changes, { supportRangeAffix: true }); + if (task.diff) { + updateRanges(task.diff.conflicts, changes); + updateEdits(task.diff.edits, changes); + updateRanges(task.diff.highlights, changes); + } + if (!updatedRange.isEqual(task.selectionRange)) { + task.selectionRange = updatedRange; + this.provider_.rangeDidChange(task); + } + } + } +}; + +// ../vscode/src/non-stop/FixupFile.ts +var import_path14 = __toESM(require("path")); +var FixupFile = class { + constructor(id_, uri_) { + this.id_ = id_; + this.uri_ = uri_; + } + deleted_ = false; + get isDeleted() { + return this.deleted_; + } + get uri() { + return this.uri_; + } + get fileName() { + return import_path14.default.basename(this.uri_.fsPath); + } + get filePath() { + return this.uri_.fsPath; + } + toString() { + return `FixupFile${this.id_}(${this.uri_})`; + } + // TODO: Add convenience properties for the file name, type and a change + // notification so the tree view can track file renames and deletions +}; + +// ../vscode/src/non-stop/FixupFileObserver.ts +var FixupFileObserver = class { + uriToFile_ = /* @__PURE__ */ new Map(); + n_ = 0; + // cookie for generating new ids + // TODO: Design memory management. There's no protocol for throwing away a + // FixupFile. + // TODO: Consider tracking documents being closed. + /** + * Given a document URI, provides the corresponding FixupFile. As the + * document is renamed or deleted the FixupFile will be updated to provide + * the current file URI. This creates a FixupFile if one does not exist and + * starts tracking it; see maybeForUri. + * @param uri the URI of the document to monitor. + * @returns a new FixupFile representing the document. + */ + forUri(uri) { + let result = this.uriToFile_.get(uri); + if (!result) { + result = this.newFile(uri); + this.uriToFile_.set(uri, result); + } + return result; + } + /** + * Gets the FixupFile for a given URI, if one exists. This operation is + * fast; vscode event sinks which are provided a URI can use this to quickly + * check whether the file may have fixups. + * @param uri the URI of the document of interest. + * @returns a FixupFile representing the document, if one exists. + */ + maybeForUri(uri) { + return this.uriToFile_.get(uri); + } + newFile(uri) { + return new FixupFile(this.n_++, uri); + } + didDeleteFiles(event) { + for (const uri of event.files) { + const file = this.uriToFile_.get(uri); + if (file) { + file.deleted_ = true; + this.uriToFile_.delete(uri); + } + } + } + didRenameFiles(event) { + for (const { oldUri, newUri } of event.files) { + const file = this.uriToFile_.get(oldUri); + if (file) { + this.uriToFile_.delete(oldUri); + this.uriToFile_.set(newUri, file); + file.uri_ = newUri; + } + } + } +}; + +// ../vscode/src/non-stop/FixupScheduler.ts +var FixupScheduler = class { + work_ = []; + timeout_; + scheduled_ = false; + constructor(delayMsec) { + this.timeout_ = setTimeoutCompat(this.doWorkNow.bind(this), delayMsec).unref(); + } + // TODO: Consider making this disposable and not running tasks after + // being disposed + // TODO: Add a callback so the scheduler knows when the user is typing + // and add a cooldown period + /** + * Schedules a callback which will run when the event loop is idle. + * + * @param callback the callback to run. + */ + scheduleIdle(worker) { + if (!this.work_.length) { + this.scheduleCallback(); + } + return new Promise((resolve8, reject) => { + this.work_.push(() => { + try { + resolve8(worker()); + } catch (error) { + reject(error); + } + }); + }); + } + scheduleCallback() { + if (!this.scheduled_) { + this.scheduled_ = true; + this.timeout_.refresh(); + } + } + doWorkNow() { + this.scheduled_ = false; + const item = this.work_.shift(); + if (!item) { + return; + } + if (this.work_.length) { + this.scheduleCallback(); + } + item(); + } +}; +function setTimeoutCompat(callback, delayMsec) { + const handle2 = setTimeout(callback, delayMsec); + if (typeof handle2 === "number") { + let latestHandle = handle2; + const compatHandle = { + refresh() { + clearTimeout(latestHandle); + latestHandle = setTimeout(callback, delayMsec); + }, + unref() { + return compatHandle; + } + }; + return compatHandle; + } + return handle2; +} + +// ../vscode/src/non-stop/FixupTask.ts +var FixupTask = class { + constructor(fixupFile, instruction, intent = "edit", selectionRange, insertMode, source2) { + this.fixupFile = fixupFile; + this.instruction = instruction; + this.intent = intent; + this.selectionRange = selectionRange; + this.insertMode = insertMode; + this.source = source2; + this.id = Date.now().toString(36).replaceAll(/\d+/g, ""); + this.instruction = instruction.replace(/^\/(edit|fix)/, "").trim(); + } + id; + state_ = 1 /* idle */; + /** + * The original text that we're working on updating. Set when we start an LLM spin. + */ + original = ""; + /** The text of the streaming turn of the LLM, if any */ + inProgressReplacement; + /** The text of the last completed turn of the LLM, if any */ + replacement; + /** The error attached to the fixup, if any */ + error; + /** + * If text has been received from the LLM and a diff has been computed, + * it is cached here. Diffs are recomputed lazily and may be stale. + */ + diff; + /** The number of times we've submitted this to the LLM. */ + spinCount = 0; + formattingResolver = null; + /** + * Sets the task state. Checks the state transition is valid. + */ + set state(state) { + this.state_ = state; + } + get state() { + return this.state_; + } +}; + +// ../vscode/src/non-stop/FixupTypingUI.ts +var FixupTypingUI = class { + constructor(taskFactory) { + this.taskFactory = taskFactory; + } + async getInstructionFromQuickPick({ + title = `${EDIT_COMMAND.description} (${EDIT_COMMAND.slashCommand})`, + placeholder = "Your instructions", + value = "", + prefix = EDIT_COMMAND.slashCommand + } = {}) { + const quickPick = window2.createQuickPick(); + quickPick.title = title; + quickPick.placeholder = placeholder; + quickPick.buttons = [menu_buttons.back]; + quickPick.value = value; + quickPick.sortByLabel = false; + quickPick.onDidTriggerButton(() => { + void commands.executeCommand("cody.action.commands.menu"); + quickPick.hide(); + }); + quickPick.show(); + return new Promise( + (resolve8) => quickPick.onDidAccept(() => { + const instruction = quickPick.value.trim(); + if (!instruction) { + return; + } + quickPick.hide(); + return resolve8(prefix ? `${prefix} ${instruction}` : instruction); + }) + ); + } + async show() { + const editor = getActiveEditor(); + if (!editor) { + return null; + } + const range = editor.selection; + const instruction = (await this.getInstructionFromQuickPick())?.trim(); + if (!instruction) { + return null; + } + const CHAT_RE = /^\/chat(|\s.*)$/; + const match2 = instruction.match(CHAT_RE); + if (match2?.[1]) { + await commands.executeCommand("cody.action.chat", match2[1], "fixup"); + return null; + } + const task = this.taskFactory.createTask(editor.document.uri, instruction, range); + void window2.showTextDocument(editor.document); + return task; + } +}; + +// ../vscode/src/non-stop/TaskViewProvider.ts +var TaskViewProvider = class { + /** + * Tree items are mapped by fsPath to taskID + */ + // Add type alias for Map key + treeNodes = /* @__PURE__ */ new Map(); + treeItems = /* @__PURE__ */ new Map(); + _disposables = []; + _onDidChangeTreeData = new EventEmitter(); + onDidChangeTreeData = this._onDidChangeTreeData.event; + constructor() { + void commands.executeCommand("setContext", "cody.fixup.view.isEmpty", true); + } + /** + * Refresh the tree view to get the latest data + */ + refresh() { + void commands.executeCommand("setContext", "cody.fixup.view.isEmpty", this.treeNodes.size === 0); + this._onDidChangeTreeData.fire(); + } + /** + * Get parents items first + * Then returns children items for each parent item + */ + getChildren(element) { + if (element && element.contextValue === "fsPath") { + const tasksByFsPath = [...this.treeItems.values()].filter((item) => item.fsPath === element.fsPath); + if (tasksByFsPath.length === 0) { + this.treeNodes.delete(element.fsPath); + return []; + } + return tasksByFsPath; + } + return [...this.treeNodes.values()]; + } + /** + * Create tree item based on provided task + */ + setTreeItem(task) { + const treeItem = new FixupTaskTreeItem(task.instruction, task); + this.treeItems.set(task.id, treeItem); + const treeNode = this.treeNodes.get(task.fixupFile.fileName) || new FixupTaskTreeItem(task.fixupFile.fileName); + treeNode.addChildren(task.id, task.state); + this.treeNodes.set(task.fixupFile.fileName, treeNode); + this.refresh(); + } + /** + * Get individual tree item + */ + getTreeItem(element) { + return element; + } + removeTreeItemByID(taskID2) { + const task = this.treeItems.get(taskID2); + if (!task) { + return; + } + this.treeItems.delete(taskID2); + const treeNode = this.treeNodes.get(task.fsPath); + treeNode?.removeChild(taskID2); + if (treeNode && treeNode.tasks.size === 0) { + this.treeNodes.delete(task.fsPath); + } + this.refresh(); + } + removeTreeItemsByFileName(fileName) { + const tasks = this.treeNodes.get(fileName); + if (!tasks) { + return; + } + for (const task of tasks.tasks) { + this.treeItems.delete(task); + } + this.treeNodes.delete(fileName); + this.refresh(); + } + /** + * Empty the tree view + */ + reset() { + this.treeNodes = /* @__PURE__ */ new Map(); + this.treeItems = /* @__PURE__ */ new Map(); + this.refresh(); + } + /** + * Dispose the disposables + */ + dispose() { + this.reset(); + for (const disposable of this._disposables) { + disposable.dispose(); + } + this._disposables = []; + } +}; +var FixupTaskTreeItem = class extends TreeItem { + // TODO: Don't duplicate the task state here; use the FixupTask directly. + state = 2 /* working */; + fsPath; + // state for parent node + failed = /* @__PURE__ */ new Set(); + tasks = /* @__PURE__ */ new Set(); + constructor(label, task) { + super(label); + if (!task) { + this.fsPath = label; + this.tooltip = label; + this.label = getFileNameAfterLastDash(label); + this.contextValue = "fsPath"; + this.collapsibleState = 2 /* Expanded */; + this.description = "0 fixups"; + return; + } + this.state = task.state; + this.id = task.id; + this.fsPath = task.fixupFile.fileName; + this.resourceUri = task.fixupFile.uri; + this.contextValue = "task"; + this.collapsibleState = 0 /* None */; + this.tooltip = new MarkdownString(`Task #${task.id}: ${task.instruction}`, true); + this.command = { command: "cody.fixup.open", title: "Go to File", arguments: [task.id] }; + this.updateIconPath(); + } + // For parent node to track children states + addChildren(taskID2, state) { + if (this.contextValue !== "fsPath" || state === 6 /* finished */) { + return; + } + this.tasks.add(taskID2); + this.description = this.makeNodeDescription(state); + } + removeChild(taskID2) { + this.tasks.delete(taskID2); + } + makeNodeDescription(state) { + const tasksSize = this.tasks.size; + const failedSize = this.failed.size; + let text = `${tasksSize} ${tasksSize > 1 ? "fixups" : "fixup"}`; + let applied = tasksSize - failedSize; + switch (state) { + case 2 /* working */: + text += ", 1 running"; + applied--; + break; + case 3 /* applying */: + text += ", 1 applying"; + applied--; + break; + case 6 /* finished */: + applied--; + break; + } + if (failedSize > 0) { + text += `, ${failedSize} failed`; + } + if (applied > 0) { + text += `, ${applied} applied`; + } + void commands.executeCommand("setContext", "cody.fixup.filesWithApplicableFixups", applied < 1); + return text; + } + updateIconPath() { + const icon = fixupTaskList[this.state].icon; + const mode = fixupTaskList[this.state].id; + this.iconPath = new ThemeIcon(icon, new ThemeColor(mode)); + } +}; + +// ../vscode/src/non-stop/FixupController.ts +var FixupController = class { + tasks = /* @__PURE__ */ new Map(); + taskViewProvider; + files; + editObserver; + // TODO: Make the fixup scheduler use a cooldown timer with a longer delay + scheduler = new FixupScheduler(10); + decorator = new FixupDecorator(); + codelenses = new FixupCodeLenses(this); + contentStore = new ContentProvider(); + typingUI = new FixupTypingUI(this); + _disposables = []; + constructor() { + this._disposables.push( + workspace.registerTextDocumentContentProvider("cody-fixup", this.contentStore), + commands.registerCommand("cody.fixup.open", (id) => this.showThisFixup(id)), + commands.registerCommand("cody.fixup.accept", (treeItem) => this.acceptFixups(treeItem)), + commands.registerCommand("cody.fixup.accept-by-file", (treeItem) => this.acceptFixups(treeItem)), + commands.registerCommand("cody.fixup.accept-all", () => this.acceptFixups()), + commands.registerCommand("cody.fixup.diff", (treeItem) => this.showDiff(treeItem)), + commands.registerCommand("cody.fixup.codelens.cancel", (id) => { + telemetryService.log("CodyVSCodeExtension:fixup:codeLens:clicked", { op: "cancel" }); + return this.cancel(id); + }), + commands.registerCommand("cody.fixup.codelens.diff", (id) => { + telemetryService.log("CodyVSCodeExtension:fixup:codeLens:clicked", { op: "diff" }); + return this.diff(id); + }), + commands.registerCommand("cody.fixup.codelens.retry", async (id) => { + telemetryService.log("CodyVSCodeExtension:fixup:codeLens:clicked", { op: "regenerate" }); + return this.retry(id); + }), + commands.registerCommand("cody.fixup.codelens.undo", (id) => { + telemetryService.log("CodyVSCodeExtension:fixup:codeLens:clicked", { op: "undo" }); + return this.undo(id); + }), + commands.registerCommand("cody.fixup.codelens.accept", (id) => { + telemetryService.log("CodyVSCodeExtension:fixup:codeLens:clicked", { op: "accept" }); + return this.accept(id); + }), + commands.registerCommand("cody.fixup.codelens.error", (id) => { + telemetryService.log("CodyVSCodeExtension:fixup:codeLens:clicked", { op: "show_error" }); + return this.showError(id); + }), + commands.registerCommand("cody.fixup.codelens.skip-formatting", (id) => { + telemetryService.log("CodyVSCodeExtension:fixup:codeLens:clicked", { op: "skip_formatting" }); + return this.skipFormatting(id); + }) + ); + this.files = new FixupFileObserver(); + this._disposables.push(workspace.onDidRenameFiles(this.files.didRenameFiles.bind(this.files))); + this._disposables.push(workspace.onDidDeleteFiles(this.files.didDeleteFiles.bind(this.files))); + this._disposables.push(window2.onDidChangeVisibleTextEditors(this.didChangeVisibleTextEditors.bind(this))); + this.taskViewProvider = new TaskViewProvider(); + this.editObserver = new FixupDocumentEditObserver(this); + this._disposables.push( + workspace.onDidChangeTextDocument(this.editObserver.textDocumentChanged.bind(this.editObserver)) + ); + const autoSaveSetting = workspace.getConfiguration("files").get("autoSave"); + if (autoSaveSetting === "off" || autoSaveSetting === "onWindowChange") { + this._disposables.push( + workspace.onDidSaveTextDocument(({ uri }) => { + for (const task of this.tasks.values()) { + if (task.fixupFile.uri.fsPath.endsWith(uri.fsPath)) { + this.accept(task.id); + } + } + }) + ); + } + } + /** + * Register the tree view that provides an additional UI for Fixups. + * Call this if the feature is enabled. + * TODO: We should move this to a QuickPick and enable it by default. + */ + registerTreeView() { + this._disposables.push(window2.registerTreeDataProvider("cody.fixup.tree.view", this.taskViewProvider)); + } + // FixupFileCollection + tasksForFile(file) { + return [...this.tasks.values()].filter((task) => task.fixupFile === file); + } + maybeFileForUri(uri) { + return this.files.maybeForUri(uri); + } + // FixupIdleTaskScheduler + scheduleIdle(callback) { + return this.scheduler.scheduleIdle(callback); + } + async promptUserForTask() { + const task = await this.typingUI.show(); + return task; + } + createTask(documentUri, instruction, selectionRange, intent, insertMode, source2) { + const fixupFile = this.files.forUri(documentUri); + const task = new FixupTask(fixupFile, instruction, intent, selectionRange, insertMode, source2); + this.tasks.set(task.id, task); + this.setTaskState(task, 2 /* working */); + return task; + } + // Open fsPath at the selected line in editor on tree item click + showThisFixup(taskID2) { + const task = this.tasks.get(taskID2); + if (!task) { + void window2.showInformationMessage("No fixup was found..."); + return; + } + void window2.showTextDocument(task.fixupFile.uri, { selection: task.selectionRange }); + } + // Apply single fixup from task ID. Public for testing. + async apply(id) { + logDebug("FixupController:apply", "applying", { verbose: { id } }); + const task = this.tasks.get(id); + if (!task) { + console.error("cannot find task"); + return; + } + await this.applyTask(task); + } + // Tries to get a clean, up-to-date diff to apply. If the diff is not + // up-to-date, it is synchronously recomputed. If the diff is not clean, + // will return undefined. This may update the task with the newly computed + // diff. + applicableDiffOrRespin(task, document2) { + if (task.state !== 3 /* applying */ && task.state !== 5 /* applied */) { + console.warn("no response cached from LLM so no applicable diff"); + return void 0; + } + const bufferText = document2.getText(task.selectionRange); + let diff = task.diff; + if (task.replacement !== void 0 && bufferText !== diff?.bufferText) { + task.diff = diff = computeDiff(task.original, task.replacement, bufferText, task.selectionRange.start); + this.didUpdateDiff(task); + } + if (!diff?.clean) { + this.scheduleRespin(task); + return void 0; + } + return diff; + } + // Schedule a re-spin for diffs with conflicts. + scheduleRespin(task) { + const MAX_SPIN_COUNT_PER_TASK = 5; + if (task.spinCount >= MAX_SPIN_COUNT_PER_TASK) { + telemetryService.log("CodyVSCodeExtension:fixup:respin", { count: task.spinCount }); + return this.error(task.id, `Cody tried ${task.spinCount} times but failed to edit the file`); + } + void window2.showInformationMessage("Cody will rewrite to include your changes"); + this.setTaskState(task, 2 /* working */); + return void 0; + } + /** + * This function retrieves a "smart" selection for a FixupTask when selectionRange is not available. + * + * The idea of a "smart" selection is to look at both the start and end positions of the current selection, + * and attempt to expand those positions to encompass more meaningful chunks of code, such as folding regions. + * + * The function does the following: + * 1. Finds the document URI from it's fileName + * 2. If the selection starts in a folding range, moves the selection start position back to the start of that folding range. + * 3. If the selection ends in a folding range, moves the selection end positionforward to the end of that folding range. + * @returns A Promise that resolves to an `vscode.Range` which represents the combined "smart" selection. + */ + async getFixupTaskSmartSelection(task, selectionRange) { + const fileName = task.fixupFile.uri.fsPath; + const documentUri = Uri.file(fileName); + if (selectionRange && !selectionRange?.start.isEqual(selectionRange.end)) { + return selectionRange; + } + const activeCursorStartPosition = selectionRange.start; + const newSelectionStartingPosition = (await getSmartSelection(documentUri, activeCursorStartPosition.line))?.start || selectionRange.start; + const activeCursorEndPosition = selectionRange.end; + const newSelectionEndingPosition = (await getSmartSelection(documentUri, activeCursorEndPosition.line))?.end || selectionRange.end; + return new Range( + newSelectionStartingPosition.line, + newSelectionStartingPosition.character, + newSelectionEndingPosition.line, + newSelectionEndingPosition.character + ); + } + async applyTask(task) { + if (task.state !== 3 /* applying */) { + return; + } + let edit2; + let document2; + const visibleEditor = window2.visibleTextEditors.find( + (editor) => editor.document.uri === task.fixupFile.uri + ); + if (visibleEditor) { + document2 = visibleEditor.document; + edit2 = visibleEditor.edit.bind(this); + } else { + document2 = await workspace.openTextDocument(task.fixupFile.uri); + edit2 = new WorkspaceEdit(); + } + this.updateDiffs(); + const diff = this.applicableDiffOrRespin(task, document2); + if (!diff) { + return; + } + visibleEditor?.revealRange(task.selectionRange); + const applyEditOptions = { undoStopBefore: true, undoStopAfter: false }; + const editOk = task.insertMode ? await this.insertEdit(edit2, document2, task, applyEditOptions) : await this.replaceEdit(edit2, diff, task, applyEditOptions); + if (!editOk) { + telemetryService.log("CodyVSCodeExtension:fixup:apply:failed", void 0, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.fixup.apply", "failed"); + void window2.showWarningMessage("edit did not apply"); + return; + } + const replacementText = task.replacement; + if (replacementText) { + const codeCount = countCode(replacementText.trim()); + const source2 = task.source; + telemetryService.log("CodyVSCodeExtension:fixup:applied", { ...codeCount, source: source2 }, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.fixup.apply", "succeeded", { + metadata: { + lineCount: codeCount.lineCount, + charCount: codeCount.charCount + }, + privateMetadata: { + // TODO: generate numeric ID representing source so that it + // can be included in metadata for default export. + source: source2 + } + }); + const formatEditOptions = { undoStopBefore: false, undoStopAfter: true }; + this.setTaskState(task, 4 /* formatting */); + await new Promise((resolve8, reject) => { + task.formattingResolver = resolve8; + this.formatEdit( + visibleEditor ? visibleEditor.edit.bind(this) : new WorkspaceEdit(), + document2, + task, + formatEditOptions + ).then(resolve8).catch(reject).finally(() => task.formattingResolver = null); + }); + } + this.setTaskState(task, 5 /* applied */); + if (!visibleEditor) { + const showChangesButton = "Show Changes"; + const result = await window2.showInformationMessage( + `Edit applied to ${task.fixupFile.fileName}`, + showChangesButton + ); + if (result === showChangesButton) { + const editor = await window2.showTextDocument(task.fixupFile.uri); + editor.revealRange(task.selectionRange); + } + } + } + // Replace edit returned by Cody at task selection range + async replaceEdit(edit2, diff, task, options2) { + logDebug("FixupController:edit", "replacing "); + if (edit2 instanceof WorkspaceEdit) { + for (const diffEdit of diff.edits) { + edit2.replace( + task.fixupFile.uri, + new Range( + new Position(diffEdit.range.start.line, diffEdit.range.start.character), + new Position(diffEdit.range.end.line, diffEdit.range.end.character) + ), + diffEdit.text + ); + } + return workspace.applyEdit(edit2); + } + return edit2((editBuilder) => { + for (const diffEdit of diff.edits) { + editBuilder.replace( + new Range( + new Position(diffEdit.range.start.line, diffEdit.range.start.character), + new Position(diffEdit.range.end.line, diffEdit.range.end.character) + ), + diffEdit.text + ); + } + }, options2); + } + // Insert edit returned by Cody at task selection range + async insertEdit(edit2, document2, task, options2) { + logDebug("FixupController:edit", "inserting"); + const text = task.replacement; + const range = task.selectionRange; + if (!text) { + return false; + } + const nonEmptyStartIndex = document2.lineAt(range.start.line).firstNonWhitespaceCharacterIndex; + const textLines = text.split("\n").map((line) => " ".repeat(nonEmptyStartIndex) + line); + const replacementText = textLines.join("\n").replace(/[\t ]+$/, ""); + if (edit2 instanceof WorkspaceEdit) { + edit2.insert(document2.uri, range.start, replacementText); + return workspace.applyEdit(edit2); + } + return edit2((editBuilder) => { + editBuilder.insert(range.start, replacementText); + }, options2); + } + async formatEdit(edit2, document2, task, options2) { + const rangeToFormat = task.selectionRange; + if (!rangeToFormat) { + return false; + } + const formattingChanges = await commands.executeCommand( + "vscode.executeFormatDocumentProvider", + document2.uri, + { + tabSize: getEditorTabSize2(document2.uri), + insertSpaces: getEditorInsertSpaces(document2.uri) + } + ) || []; + const formattingChangesInRange = formattingChanges.filter((change) => rangeToFormat.contains(change.range)); + if (formattingChangesInRange.length === 0) { + return false; + } + logDebug("FixupController:edit", "formatting"); + if (edit2 instanceof WorkspaceEdit) { + for (const change of formattingChangesInRange) { + edit2.replace(task.fixupFile.uri, change.range, change.newText); + } + return workspace.applyEdit(edit2); + } + return edit2((editBuilder) => { + for (const change of formattingChangesInRange) { + editBuilder.replace(change.range, change.newText); + } + }, options2); + } + // Accepting fixups from tree item click + acceptFixups(treeItem) { + if (!treeItem) { + for (const task of this.tasks.values()) { + this.accept(task.id); + } + return; + } + if (treeItem.contextValue === "fsPath") { + for (const task of this.tasks.values()) { + if (task.fixupFile.uri.fsPath.endsWith(treeItem.fsPath)) { + this.accept(task.id); + } + } + return; + } + if (treeItem.contextValue === "task" && treeItem.id) { + this.accept(treeItem.id); + } + console.error("cannot apply fixups"); + } + cancel(id) { + const task = this.tasks.get(id); + if (!task) { + return; + } + this.setTaskState(task, task.state === 7 /* error */ ? 7 /* error */ : 6 /* finished */); + this.discard(task); + } + accept(id) { + const task = this.tasks.get(id); + if (!task || task.state !== 5 /* applied */) { + return; + } + this.setTaskState(task, 6 /* finished */); + this.discard(task); + } + async undo(id) { + const task = this.tasks.get(id); + if (!task) { + return; + } + return this.undoTask(task); + } + /** + * Reverts an applied fixup task by replacing the edited code range with the original code. + * + * TODO: It is possible the original code is out of date if the user edited it whilst the fixup was running. + * Handle this case better. Possibly take a copy of the previous code just before the fixup is applied. + */ + async undoTask(task) { + if (task.state !== 5 /* applied */) { + return; + } + let editor = window2.visibleTextEditors.find((editor2) => editor2.document.uri === task.fixupFile.uri); + if (!editor) { + editor = await window2.showTextDocument(task.fixupFile.uri); + } + const replacementText = task.replacement; + if (!replacementText) { + return; + } + editor.revealRange(task.selectionRange); + const editOk = await editor.edit((editBuilder) => { + editBuilder.replace(task.selectionRange, task.original); + }); + if (!editOk) { + telemetryService.log("CodyVSCodeExtension:fixup:revert:failed"); + return; + } + const tokenCount = countCode(replacementText); + telemetryService.log("CodyVSCodeExtension:fixup:reverted", tokenCount); + this.setTaskState(task, 6 /* finished */); + } + error(id, message) { + const task = this.tasks.get(id); + if (!task) { + return; + } + task.error = message; + this.setTaskState(task, 7 /* error */); + } + showError(id) { + const task = this.tasks.get(id); + if (!task?.error) { + return; + } + void window2.showErrorMessage("Error applying edits:", { modal: true, detail: task.error }); + } + skipFormatting(id) { + const task = this.tasks.get(id); + if (!task) { + return; + } + if (!task.formattingResolver) { + return; + } + return task.formattingResolver(false); + } + discard(task) { + this.needsDiffUpdate_.delete(task); + this.codelenses.didDeleteTask(task); + this.contentStore.delete(task.id); + this.decorator.didCompleteTask(task); + this.tasks.delete(task.id); + this.taskViewProvider.removeTreeItemByID(task.id); + } + getTasks() { + return Array.from(this.tasks.values()); + } + // Called by the non-stop recipe to gather current state for the task. + async getTaskRecipeData(id) { + const task = this.tasks.get(id); + if (!task) { + return void 0; + } + const getSmartSelection2 = task.intent !== "add"; + if (getSmartSelection2 && task.selectionRange) { + const newRange = await this.getFixupTaskSmartSelection(task, task.selectionRange); + task.selectionRange = newRange; + } + const document2 = await workspace.openTextDocument(task.fixupFile.uri); + const precedingText = document2.getText( + new Range( + task.selectionRange.start.translate({ lineDelta: -Math.min(task.selectionRange.start.line, 50) }), + task.selectionRange.start + ) + ); + const selectedText = document2.getText(task.selectionRange); + if (truncateText(selectedText, MAX_CURRENT_FILE_TOKENS) !== selectedText) { + throw new Error("The amount of text selected exceeds Cody's current capacity."); + } + task.original = selectedText; + const followingText = document2.getText( + new Range(task.selectionRange.end, task.selectionRange.end.translate({ lineDelta: 50 })) + ); + const intent = selectedText.trim().length === 0 ? "add" : task.intent; + return { + instruction: task.instruction, + intent, + fileName: task.fixupFile.uri.fsPath, + precedingText, + selectedText, + followingText, + selectionRange: task.selectionRange + }; + } + async didReceiveFixupText(id, text, state) { + const task = this.tasks.get(id); + if (!task) { + return Promise.resolve(); + } + if (task.state !== 2 /* working */) { + return Promise.resolve(); + } + switch (state) { + case "streaming": + task.inProgressReplacement = text; + break; + case "complete": + task.inProgressReplacement = void 0; + task.replacement = text; + this.setTaskState(task, 3 /* applying */); + telemetryService.log("CodyVSCodeExtension:fixupResponse:hasCode", { + ...countCode(text), + source: task.source + }); + break; + } + this.textDidChange(task); + return Promise.resolve(); + } + // Handles changes to the source document in the fixup selection, or the + // replacement text generated by Cody. + textDidChange(task) { + if (task.state === 5 /* applied */) { + this.accept(task.id); + return; + } + if (task.state === 6 /* finished */) { + this.needsDiffUpdate_.delete(task); + } + if (this.needsDiffUpdate_.size === 0) { + void this.scheduler.scheduleIdle(() => this.updateDiffs()); + } + if (!this.needsDiffUpdate_.has(task)) { + this.needsDiffUpdate_.add(task); + } + } + // Handles when the range associated with a fixup task changes. + rangeDidChange(task) { + this.codelenses.didUpdateTask(task); + } + // Tasks where the text of the buffer, or the text provided by Cody, has + // changed and we need to update diffs. + needsDiffUpdate_ = /* @__PURE__ */ new Set(); + // Files where the editor wasn't visible and we have delayed computing diffs + // for tasks. + needsEditor_ = /* @__PURE__ */ new Set(); + didChangeVisibleTextEditors(editors) { + const editorsByFile = /* @__PURE__ */ new Map(); + for (const editor of editors) { + const file = this.files.maybeForUri(editor.document.uri); + if (!file) { + continue; + } + if (!editorsByFile.has(file)) { + editorsByFile.set(file, []); + } + editorsByFile.get(file)?.push(editor); + if (this.needsEditor_.has(file)) { + this.needsEditor_.delete(file); + for (const task of this.tasksForFile(file)) { + if (this.needsDiffUpdate_.size === 0) { + void this.scheduler.scheduleIdle(() => this.updateDiffs()); + } + this.needsDiffUpdate_.add(task); + } + } + } + for (const [file, editors2] of editorsByFile.entries()) { + this.decorator.didChangeVisibleTextEditors(file, editors2); + } + } + updateDiffs() { + while (this.needsDiffUpdate_.size) { + const task = this.needsDiffUpdate_.keys().next().value; + this.needsDiffUpdate_.delete(task); + const editor = window2.visibleTextEditors.find((editor2) => editor2.document.uri === task.fixupFile.uri); + if (!editor) { + this.needsEditor_.add(task.fixupFile); + continue; + } + const botText = task.inProgressReplacement || task.replacement; + if (!botText) { + continue; + } + const bufferText = editor.document.getText(task.selectionRange); + const newLine = task.insertMode ? "\n" : ""; + task.diff = computeDiff(task.original, `${botText}${newLine}`, bufferText, task.selectionRange.start); + this.didUpdateDiff(task); + } + } + didUpdateDiff(task) { + if (!task.diff) { + throw new Error("unreachable"); + } + this.decorator.didUpdateDiff(task); + if (!task.diff.clean) { + return; + } + } + // Callback function for the Fixup Task Tree View item Diff button + async showDiff(treeItem) { + if (!treeItem?.id) { + return; + } + await this.diff(treeItem.id); + } + // Show diff between before and after edits + async diff(id) { + const task = this.tasks.get(id); + if (!task) { + return; + } + const editor = window2.visibleTextEditors.find((editor2) => editor2.document.uri === task.fixupFile.uri); + if (!editor) { + return; + } + const diff = task.diff; + if (!diff) { + return; + } + const diffId = `${task.id}-${Date.now()}`; + await this.contentStore.set(diffId, task.fixupFile.uri); + const tempDocUri = Uri.parse(`cody-fixup:${task.fixupFile.uri.fsPath}#${diffId}`); + const doc = await workspace.openTextDocument(tempDocUri); + const edit2 = new WorkspaceEdit(); + edit2.replace(tempDocUri, task.selectionRange, diff.originalText); + await workspace.applyEdit(edit2); + await doc.save(); + await commands.executeCommand( + "vscode.diff", + tempDocUri, + task.fixupFile.uri, + "Cody Fixup Diff View - " + task.id, + { + preview: true, + preserveFocus: false, + selection: task.selectionRange, + label: "Cody Fixup Diff View", + description: "Cody Fixup Diff View: " + task.fixupFile.uri.fsPath + } + ); + } + // Regenerate code with the same set of instruction + async retry(id) { + const task = this.tasks.get(id); + if (!task) { + return; + } + const previousRange = task.selectionRange; + const previousInstruction = task.instruction; + const document2 = await workspace.openTextDocument(task.fixupFile.uri); + const instruction = await this.typingUI.getInstructionFromQuickPick({ value: previousInstruction }); + await this.undoTask(task); + void commands.executeCommand( + "cody.command.edit-code", + { range: previousRange, instruction, document: document2, intent: task.intent }, + "code-lens" + ); + } + setTaskState(task, state) { + const oldState = task.state; + if (oldState === state) { + return; + } + task.state = state; + if (oldState !== 2 /* working */ && task.state === 2 /* working */) { + task.spinCount++; + } + if (task.state === 6 /* finished */) { + this.discard(task); + return; + } + this.codelenses.didUpdateTask(task); + this.taskViewProvider.setTreeItem(task); + if (task.state === 3 /* applying */) { + void this.apply(task.id); + } + if (task.state === 5 /* applied */) { + this.decorator.didCompleteTask(task); + } + } + reset() { + this.tasks = /* @__PURE__ */ new Map(); + this.taskViewProvider.reset(); + } + dispose() { + this.reset(); + this.codelenses.dispose(); + this.decorator.dispose(); + this.taskViewProvider.dispose(); + for (const disposable of this._disposables) { + disposable.dispose(); + } + this._disposables = []; + } +}; + +// ../vscode/src/notifications/index.ts +var showActionNotification = async ({ message, options: options2 = {}, actions: actions2 }) => { + const response = await window2.showInformationMessage( + message, + options2, + ...actions2.map((action2) => action2.label) + ); + const action = actions2.find((action2) => action2.label === response); + if (!action) { + return; + } + return action.onClick(); +}; + +// ../vscode/src/notifications/setup-notification.ts +var showSetupNotification = async (config) => { + if (config.serverEndpoint && config.accessToken) { + return; + } + if (localStorage2.get("notification.setupDismissed") === "true") { + return; + } + if (localStorage2.get("extension.hasActivatedPreviously") !== "true") { + await commands.executeCommand("cody.focus"); + return; + } + return showActionNotification({ + message: "Continue setting up Cody", + actions: [ + { + label: "Setup", + onClick: () => commands.executeCommand("cody.focus") + }, + { + label: "Do not show again", + onClick: () => localStorage2.set("notification.setupDismissed", "true") + } + ] + }); +}; + +// ../vscode/src/search/SearchViewProvider.ts +var os5 = __toESM(require("os")); +var path17 = __toESM(require("path")); +var searchDecorationType = window2.createTextEditorDecorationType({ + backgroundColor: new ThemeColor("searchEditor.findMatchBackground"), + borderColor: new ThemeColor("searchEditor.findMatchBorder") +}); +var CancellationManager = class { + tokenSource; + cancelExistingAndStartNew() { + if (this.tokenSource) { + this.tokenSource.cancel(); + this.tokenSource.dispose(); + } + this.tokenSource = new CancellationTokenSource(); + return this.tokenSource.token; + } + dispose() { + if (this.tokenSource) { + const ts = this.tokenSource; + this.tokenSource = void 0; + ts.cancel(); + ts.dispose(); + } + } +}; +var IndexManager = class { + constructor(symf) { + this.symf = symf; + } + currentlyRefreshing = /* @__PURE__ */ new Set(); + scopeDirIndexInProgress = /* @__PURE__ */ new Map(); + /** + * Show a warning message if indexing is already in progress for scopeDirs. + * This is needed, because the user may have dismissed previous indexing progress + * messages. + */ + showMessageIfIndexingInProgress = (scopeDirs) => { + const indexingScopeDirs = []; + for (const scopeDir of scopeDirs) { + if (this.scopeDirIndexInProgress.has(scopeDir)) { + const { base, dir, wsName } = getRenderableComponents(scopeDir); + const prettyScopeDir = wsName ? path17.join(wsName, dir, base) : path17.join(dir, base); + indexingScopeDirs.push(prettyScopeDir); + } + } + if (indexingScopeDirs.length === 0) { + return; + } + void window2.showWarningMessage(`Still indexing: ${indexingScopeDirs.join(", ")}`); + }; + showIndexProgress = (scopeDir, indexDone) => { + const { base, dir, wsName } = getRenderableComponents(scopeDir); + const prettyScopeDir = wsName ? path17.join(wsName, dir, base) : path17.join(dir, base); + if (this.scopeDirIndexInProgress.has(scopeDir)) { + void window2.showWarningMessage(`Duplicate index request for ${prettyScopeDir}`); + return; + } + this.scopeDirIndexInProgress.set(scopeDir, indexDone); + void indexDone.finally(() => { + this.scopeDirIndexInProgress.delete(scopeDir); + }); + void window2.withProgress( + { + location: 15 /* Notification */, + title: `Cody: building search index for ${prettyScopeDir}`, + cancellable: false + }, + async () => { + await indexDone; + } + ); + }; + async refreshIndex(scopeDir) { + if (this.currentlyRefreshing.has(scopeDir)) { + return; + } + try { + this.currentlyRefreshing.add(scopeDir); + await this.symf.deleteIndex(scopeDir); + await this.symf.ensureIndex(scopeDir, this.showIndexProgress, { hard: true }); + } catch (error) { + void window2.showErrorMessage(`Error refreshing search index for ${scopeDir}: ${error}`); + } finally { + this.currentlyRefreshing.delete(scopeDir); + } + } +}; +var SearchViewProvider = class { + constructor(extensionUri, symfRunner) { + this.extensionUri = extensionUri; + this.symfRunner = symfRunner; + this.indexManager = new IndexManager(this.symfRunner); + this.disposables.push(this.cancellationManager); + } + disposables = []; + webview; + cancellationManager = new CancellationManager(); + indexManager; + dispose() { + for (const d of this.disposables) { + d.dispose(); + } + this.disposables = []; + } + initialize() { + this.disposables.push( + commands.registerCommand("cody.search.index-update", async () => { + const scopeDirs = getScopeDirs(); + if (scopeDirs.length === 0) { + void window2.showWarningMessage("Open a workspace folder to index"); + return; + } + await this.indexManager.refreshIndex(scopeDirs[0]); + }), + commands.registerCommand("cody.search.index-update-all", async () => { + const folders = workspace.workspaceFolders; + if (!folders) { + void window2.showWarningMessage("Open a workspace folder to index"); + return; + } + for (const folder of folders) { + await this.indexManager.refreshIndex(folder.uri.fsPath); + } + }) + ); + workspace.workspaceFolders?.forEach((folder) => { + void this.symfRunner.ensureIndex(folder.uri.fsPath, this.indexManager.showIndexProgress, { hard: false }); + }); + this.disposables.push( + workspace.onDidChangeWorkspaceFolders((event) => { + event.added.forEach((folder) => { + void this.symfRunner.ensureIndex(folder.uri.fsPath, this.indexManager.showIndexProgress, { + hard: false + }); + }); + }) + ); + this.disposables.push( + this.symfRunner.registerIndexListener((scopeDir) => { + void this.webview?.postMessage({ type: "index-updated", scopeDir }); + }) + ); + } + async resolveWebviewView(webviewView) { + this.webview = webviewView.webview; + const webviewPath = Uri.joinPath(this.extensionUri, "dist", "webviews"); + webviewView.webview.options = { + enableScripts: true, + enableCommandUris: true, + localResourceRoots: [webviewPath] + }; + const root = Uri.joinPath(webviewPath, "search.html"); + const bytes = await workspace.fs.readFile(root); + const decoded = new TextDecoder("utf-8").decode(bytes); + const resources = webviewView.webview.asWebviewUri(webviewPath); + webviewView.webview.html = decoded.replaceAll("./", `${resources.toString()}/`).replaceAll("{cspSource}", webviewView.webview.cspSource); + this.disposables.push(webviewView.webview.onDidReceiveMessage((message) => this.onDidReceiveMessage(message))); + } + async onDidReceiveMessage(message) { + switch (message.command) { + case "search": { + await this.onDidReceiveQuery(message.query); + break; + } + case "show-search-result": { + const { range, uriJSON } = message; + const uri = Uri.from(uriJSON); + const vscodeRange = new Range( + range.start.line, + range.start.character, + range.end.line, + range.end.character + ); + const doc = await workspace.openTextDocument(uri); + const editor = await window2.showTextDocument(doc, { + selection: vscodeRange, + preserveFocus: true + }); + const isWholeFile = vscodeRange.start.line === 0 && vscodeRange.end.line === doc.lineCount - 1; + if (!isWholeFile) { + editor.setDecorations(searchDecorationType, [vscodeRange]); + editor.revealRange(vscodeRange, (void 0).InCenterIfOutsideViewport); + } + break; + } + } + } + // TODO(beyang): support cancellation through symf + async onDidReceiveQuery(query) { + const cancellationToken = this.cancellationManager.cancelExistingAndStartNew(); + if (query.trim().length === 0) { + await this.webview?.postMessage({ type: "update-search-results", results: [] }); + return; + } + const symf = this.symfRunner; + if (!symf) { + throw new Error("this.symfRunner is undefined"); + } + const scopeDirs = getScopeDirs(); + if (scopeDirs.length === 0) { + void window2.showErrorMessage("Open a workspace folder to determine the search scope"); + return; + } + if (cancellationToken.isCancellationRequested) { + return; + } + await window2.withProgress({ location: { viewId: "cody.search" } }, async () => { + const cumulativeResults = []; + this.indexManager.showMessageIfIndexingInProgress(scopeDirs); + const resultSets = await symf.getResults(query, scopeDirs, this.indexManager.showIndexProgress); + for (const resultSet of resultSets) { + try { + cumulativeResults.push(...await resultsToDisplayResults(await resultSet)); + await this.webview?.postMessage({ + type: "update-search-results", + results: cumulativeResults, + query + }); + } catch (error) { + void window2.showErrorMessage(`Error fetching results for query, "${query}": ${error}`); + } + } + }); + } +}; +function getRenderableComponents(filename) { + const wsFolders = workspace.workspaceFolders; + const home = os5.homedir(); + const base = path17.basename(filename); + const absdir = path17.dirname(filename); + if (wsFolders) { + for (const wsFolder of wsFolders) { + const reldir2 = path17.relative(wsFolder.uri.fsPath, absdir); + if (!reldir2.startsWith("..")) { + return { base, dir: reldir2, wsName: wsFolders.length > 1 ? wsFolder.name : void 0 }; + } + } + } + const reldir = path17.relative(home, absdir); + if (!reldir.startsWith("..")) { + return { base, dir: reldir }; + } + return { base, dir: absdir }; +} +function getScopeDirs() { + const folders = workspace.workspaceFolders; + if (!folders) { + return []; + } + const uri = getActiveEditor()?.document.uri; + if (!uri) { + return folders.map((f) => f.uri.fsPath); + } + const currentFolder = workspace.getWorkspaceFolder(uri); + if (!currentFolder) { + return folders.map((f) => f.uri.fsPath); + } + return [ + currentFolder.uri.fsPath, + ...folders.filter((folder) => folder.uri.toString() !== currentFolder.uri.toString()).map((f) => f.uri.fsPath) + ]; +} +function groupByFile2(results) { + const groups = []; + for (const result of results) { + const group = groups.find((g) => g.file === result.file); + if (group) { + group.results.push(result); + } else { + groups.push({ + file: result.file, + results: [result] + }); + } + } + return groups; +} +async function resultsToDisplayResults(results) { + const textDecoder = new TextDecoder("utf-8"); + const groupedResults = groupByFile2(results); + return (await Promise.all( + groupedResults.map(async (group) => { + const uri = Uri.file(group.file); + try { + const contents = await workspace.fs.readFile(uri); + const { base, dir, wsName } = getRenderableComponents(group.file); + return { + // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment + uriJSON: uri.toJSON(), + uriString: uri.toString(), + basename: base, + dirname: dir, + wsname: wsName, + snippets: group.results.map((result) => { + return { + contents: textDecoder.decode( + contents.subarray(result.range.startByte, result.range.endByte) + ), + range: { + start: { + line: result.range.startPoint.row, + character: result.range.startPoint.col + }, + end: { + line: result.range.endPoint.row, + character: result.range.endPoint.col + } + } + }; + }) + }; + } catch { + return null; + } + }) + )).filter((result) => result !== null); +} + +// ../vscode/src/services/FeedbackOptions.ts +var FeedbackOptionItems = [ + { + label: "$(feedback) Cody Feedback", + async onSelect() { + await env2.openExternal(Uri.parse(CODY_FEEDBACK_URL.href)); + } + }, + { + label: "$(remote-explorer-documentation) Cody Documentation", + async onSelect() { + await env2.openExternal(Uri.parse(CODY_DOC_URL.href)); + } + }, + { + label: "$(organization) Cody Discord Channel", + async onSelect() { + await env2.openExternal(Uri.parse(DISCORD_URL.href)); + } + } +]; +var FeedbackQuickPickOptions = { title: "Cody Feedback & Support", placeholder: "Choose an option" }; +var showFeedbackSupportQuickPick = async () => { + const selectedItem = await window2.showQuickPick(FeedbackOptionItems, FeedbackQuickPickOptions); + await selectedItem?.onSelect(); +}; + +// ../vscode/src/services/GuardrailsProvider.ts +var GuardrailsProvider = class { + // TODO(keegancsmith) this provider should create the client since the guardrails client requires a dotcom graphql connection. + constructor(client, editor) { + this.client = client; + this.editor = editor; + } + async debugEditorSelection() { + const snippet = this.editor.getActiveTextEditorSelection()?.selectedText; + if (snippet === void 0) { + return; + } + const msg = await this.client.searchAttribution(snippet).then(summariseAttribution); + await this.editor.showWarningMessage(msg); + } +}; + +// ../vscode/src/services/InlineController.ts +var import_lodash11 = __toESM(require_lodash()); + +// ../vscode/src/services/DecorationProvider.ts +var initDecorationType = window2.createTextEditorDecorationType({}); +var DecorationProvider = class { + constructor(id, extPath, fileUri) { + this.id = id; + this.extPath = extPath; + this.fileUri = fileUri; + this.editor = window2.visibleTextEditors.find((editor) => editor.document.uri.fsPath === fileUri.fsPath); + this.iconPath = getIconPath("cody", this.extPath); + this.decorationTypeIcon = this.makeDecorationType("icon"); + this._disposables.push( + this.decorationTypeIcon, + this.decorationTypeDiff, + this.decorationTypePending, + this.decorationTypeError + ); + window2.onDidChangeActiveTextEditor( + (editor) => { + if (editor?.document.uri.fsPath === this.fileUri.fsPath) { + this.editor = editor; + this.decorate(); + } + }, + null, + this._disposables + ); + } + iconPath; + status = 1 /* idle */; + range = new Range(0, 0, 0, 0); + editor; + decorations = []; + decorationsForIcon = []; + decorationTypePending = this.makeDecorationType("pending"); + decorationTypeDiff = this.makeDecorationType("diff"); + decorationTypeError = this.makeDecorationType("error"); + decorationTypeIcon = initDecorationType; + _disposables = []; + _onDidChange = new EventEmitter(); + onDidChange = this._onDidChange.event; + /** + * Highlights line where the codes updated by Cody are located. + */ + decorate() { + const range = this.range; + const editor = this.editor; + if (!editor) { + return; + } + this.clear(); + this.decorations.push({ range }); + const rangeStartLine = getSingleLineRange(range.start.line); + if (this.status === 7 /* error */) { + this.decorationTypePending.dispose(); + this.decorationsForIcon.push({ range: rangeStartLine }); + editor.setDecorations(this.decorationTypeError, this.decorations); + return; + } + if (this.status === 6 /* finished */ || this.status === 5 /* applied */) { + this.decorationTypePending.dispose(); + this.decorationsForIcon.push({ range: rangeStartLine }); + editor.setDecorations(this.decorationTypeIcon, this.decorationsForIcon); + editor.setDecorations(this.decorationTypeDiff, this.decorations); + return; + } + editor.setDecorations(this.decorationTypePending, [ + { range, hoverMessage: "Do not make changes to the highlighted code while Cody is working on it." } + ]); + } + /** + * Clear all decorations + */ + clear() { + this.decorations = []; + this.decorationsForIcon = []; + } + /** + * Define Current States + */ + setState(status, newRange) { + this.status = status; + this.range = new Range(newRange.start.line, 0, Math.max(0, newRange.end.line), 0); + this.decorate(); + this._onDidChange.fire(); + } + /** + * Define styles + */ + makeDecorationType(type2) { + if (type2 === "icon") { + return window2.createTextEditorDecorationType({ + gutterIconPath: this.iconPath, + gutterIconSize: "contain" + }); + } + if (type2 === "error") { + return errorDecorationType; + } + return window2.createTextEditorDecorationType({ + isWholeLine: true, + borderWidth: "1px", + borderStyle: "solid", + overviewRulerColor: type2 === "pending" ? "rgba(161, 18, 255, 0.33)" : "rgb(0, 203, 236, 0.22)", + backgroundColor: type2 === "pending" ? "rgb(0, 203, 236, 0.1)" : "rgba(161, 18, 255, 0.1)", + overviewRulerLane: 4 /* Right */, + light: { + borderColor: "rgba(161, 18, 255, 0.33)" + }, + dark: { + borderColor: "rgba(161, 18, 255, 0.33)" + } + }); + } + /** + * Dispose the disposables + */ + dispose() { + for (const disposable of this._disposables) { + disposable.dispose(); + } + this._disposables = []; + } +}; +var errorDecorationType = window2.createTextEditorDecorationType({ + isWholeLine: true, + overviewRulerColor: "rgba(255, 38, 86, 0.3)", + backgroundColor: "rgba(255, 38, 86, 0.1)" +}); + +// ../vscode/src/services/CodeLensProvider.ts +var CodeLensProvider = class { + constructor(id, extPath, thread) { + this.id = id; + this.extPath = extPath; + this.thread = thread; + this.provideCodeLenses = this.provideCodeLenses.bind(this); + this.decorator = new DecorationProvider(this.id, this.extPath, this.thread.uri); + workspace.onDidChangeTextDocument((e) => { + if (e.document.uri.fsPath !== this.thread?.uri.fsPath) { + return; + } + for (const change of e.contentChanges) { + if (!this.selectionRange || change.range.end.line > this.selectionRange.start.line && this.isPending()) { + return; + } + if (change.range.start.line === this.selectionRange?.start.line && !this.isPending()) { + this.remove(); + return; + } + this.selectionRange = updateRangeOnDocChange(this.selectionRange, change.range, change.text); + this.decorator.setState(this.status, this.selectionRange); + } + this._onDidChangeCodeLenses.fire(); + }); + workspace.onDidCloseTextDocument((e) => this.removeOnFSPath(e.uri)); + workspace.onDidSaveTextDocument((e) => this.removeOnFSPath(e.uri)); + this.updateState(2 /* working */, thread.range); + } + selectionRange = null; + contextStore = /* @__PURE__ */ new Map(); + status = 1 /* idle */; + decorator; + _disposables = []; + _onDidChangeCodeLenses = new EventEmitter(); + onDidChangeCodeLenses = this._onDidChangeCodeLenses.event; + /** + * Define Current States + */ + updateState(state, newRange) { + this.status = state; + this.decorator.setState(state, newRange); + this.selectionRange = newRange; + this._onDidChangeCodeLenses.fire(); + } + storeContext(id, docUri, original, replacement) { + this.contextStore.set(id, { docUri, original, replacement }); + } + async undo(id) { + const context2 = this.contextStore.get(id); + const chatSelection = this.selectionRange; + if (!context2 || !chatSelection) { + return; + } + const range = new Selection(chatSelection.start, new Position(chatSelection.end.line + 1, 0)); + await editDocByUri(context2.docUri, { start: range.start.line, end: range.end.line }, context2.original + "\n"); + this.remove(); + } + /** + * Remove all lenses and decorations created for task + */ + remove() { + this.decorator.dispose(); + this.selectionRange = null; + this.status = 1 /* idle */; + this.thread.dispose(); + this.dispose(); + this._onDidChangeCodeLenses.fire(); + } + /** + * Activate code lenses + */ + provideCodeLenses(document2, token) { + if (!document2 || !token || document2.uri.fsPath !== this.thread.uri.fsPath) { + return []; + } + return this.createCodeLenses(); + } + /** + * Lenses to display above the code that Cody edited + */ + createCodeLenses() { + const range = this.selectionRange; + if (!range) { + return []; + } + const codeLensRange = getSingleLineRange(range.start.line); + return this.status === 7 /* error */ ? getErrorLenses(this.id, codeLensRange) : getLenses(this.id, codeLensRange, this.isPending()); + } + /** + * Check if the file path is the same + */ + removeOnFSPath(uri) { + if (this.status === 2 /* working */) { + return; + } + if (uri.fsPath === this.thread.uri.fsPath) { + this.remove(); + } + } + /** + * Check if it is in pending state + */ + isPending() { + return this.status === 2 /* working */; + } + /** + * Dispose the disposables + */ + dispose() { + for (const disposable of this._disposables) { + disposable.dispose(); + } + this._disposables = []; + } +}; +function getLenses(id, codeLensRange, isPending) { + const title = new CodeLens(codeLensRange); + title.command = { + title: isPending ? "$(sync~spin) Cody is working..." : "\u2728 Edited by Cody", + tooltip: "Open Cody chat view", + command: "cody.focus" + }; + const accept = getInlineAcceptLens(id, codeLensRange); + const undo = getInlineUndoLens(id, codeLensRange); + const close = getInlineCloseLens(id, codeLensRange); + return isPending ? [title, close] : [title, undo, accept]; +} +function getInlineAcceptLens(id, codeLensRange) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "Accept", + tooltip: "Accept update and remove decorations", + command: "cody.inline.decorations.remove", + arguments: [id] + }; + return lens; +} +function getErrorLenses(id, codeLensRange) { + const title = new CodeLens(codeLensRange); + title.command = { + title: "\u26D4\uFE0F Not Edited by Cody", + tooltip: "Open Cody chat view", + command: "cody.focus" + }; + const close = getInlineCloseLens(id, codeLensRange); + return [title, close]; +} +function getInlineCloseLens(id, codeLensRange) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "Close", + tooltip: "Click to remove decorations", + command: "cody.inline.decorations.remove", + arguments: [id] + }; + return lens; +} +function getInlineUndoLens(id, codeLensRange) { + const lens = new CodeLens(codeLensRange); + lens.command = { + title: "$(undo) Undo", + tooltip: "Undo this change", + command: "cody.inline.fix.undo", + arguments: [id] + }; + return lens; +} + +// ../vscode/src/services/InlineController.ts +var initPost = new Position(0, 0); +var initRange = new Range(initPost, initPost); +var CodyInlineStateContextValue = { + loading: "cody-inline-loading", + complete: "cody-inline-complete", + streaming: "cody-inline-loading", + error: "cody-inline-complete" +}; +var InlineController = class { + constructor(extensionPath) { + this.extensionPath = extensionPath; + this.codyIcon = getIconPath("cody", this.extensionPath); + this.userIcon = getIconPath("user", this.extensionPath); + const config = workspace.getConfiguration("cody"); + const isNewChatUiEnabled = config.get("experimental.chatPanel"); + const enableInlineChat = config.get("inlineChat.enabled"); + if (!isNewChatUiEnabled && enableInlineChat) { + this.commentController = this.init(); + } + workspace.onDidChangeConfiguration((e) => { + const config2 = workspace.getConfiguration("cody"); + if (e.affectsConfiguration("cody")) { + const isNewChatUiEnabled2 = config2.get("experimental.chatPanel"); + const enableInlineChat2 = config2.get("inlineChat.enabled"); + if (!isNewChatUiEnabled2 && enableInlineChat2) { + this.commentController = this.init(); + return; + } + this.commentController?.dispose(); + this.commentController = null; + this.dispose(); + } + }); + window2.onDidChangeTextEditorSelection((e) => { + if (e.textEditor.document.uri.scheme !== "file" || e.textEditor.document.uri.fsPath !== this.thread?.uri.fsPath) { + return; + } + const selection = e.selections[0]; + if (selection && !this.isInProgress && this.selectionRange.end.line - 2 !== selection.start.line) { + const range = new Range( + new Position(Math.max(0, selection.start.line - 1), 0), + new Position(Math.max(0, selection.end.line + 2), 0) + ); + this.selectionRange = range; + } + }); + workspace.onDidChangeTextDocument((e) => { + if (!this.commentController || !this.isInProgress || !this.selectionRange || e.document.uri.scheme !== "file" || e.document.uri.fsPath !== this.thread?.uri.fsPath) { + return; + } + for (const change of e.contentChanges) { + this.selectionRange = updateRangeOnDocChange(this.selectionRange, change.range, change.text); + } + }); + workspace.onDidCloseTextDocument((doc) => { + if (doc.uri.scheme !== "file") { + return; + } + const threadsInDoc = [...this.threads.values()].filter((thread) => thread.uri.fsPath === doc.uri.fsPath); + for (const thread of threadsInDoc) { + this.delete(thread); + } + }); + workspace.onDidChangeTextDocument(async (e) => { + const changedText = e.contentChanges[0]?.text; + if (!changedText || e.document.uri.scheme !== "file") { + return; + } + await onTextDocumentChange(changedText); + }); + window2.onDidChangeVisibleTextEditors(async (e) => { + if (!this.commentController || !e.length || this.isInProgress) { + return; + } + const editor = e.at(-1); + if (editor?.document?.uri?.scheme === "comment") { + await setLastTextFromClipboard(); + } + }); + this._disposables.push( + commands.registerCommand("cody.inline.decorations.remove", (id) => this.removeLens(id)), + commands.registerCommand("cody.inline.fix.undo", (id) => this.undo(id)) + ); + } + // Controller init + id = "cody-inline-chat"; + label = "Cody: Inline Chat"; + threadLabel = "[SHORTCUTS] New Inline Chat: CMD/CTRL+SHIFT+C | Hide: SHIFT+ESC"; + options = { + prompt: "Cody Inline Chat - Ask Cody a question or request inline fix with `/edit` or `/touch`.", + placeHolder: 'Examples: "How can I improve this?", "/edit convert tabs to spaces", "/touch Create 5 different versions of this function". "/explain"' + }; + codyIcon; + userIcon; + _disposables = []; + // Constroller State + commentController = null; + thread = null; + // a thread is a comment + threads = /* @__PURE__ */ new Map(); + // A repeating, text-based, loading indicator ("." -> ".." -> "...") + responsePendingInterval = null; + currentTaskId = ""; + // Workspace State + workspacePath = workspace.workspaceFolders?.[0]?.uri; + selection = null; + selectionRange = initRange; + // Inline Tasks States + // If a task is in progress, the editor will use the selection range tracked by the controller + isInProgress = false; + codeLenses = /* @__PURE__ */ new Map(); + /** + * Create comment controller and set options + */ + init() { + this.commentController?.dispose(); + const commentController2 = comments.createCommentController(this.id, this.label); + commentController2.options = this.options; + commentController2.commentingRangeProvider = { + provideCommentingRanges: (document2) => { + const lineCount = document2.lineCount; + return [new Range(0, 0, lineCount - 1, 0)]; + } + }; + this._disposables.push(commentController2); + return commentController2; + } + /** + * Getter to return comment controller + */ + get() { + return this.commentController; + } + /** + * Create a new thread (the first comment of a thread) + */ + create(humanInput, range) { + if (!this.commentController) { + return null; + } + const editor = getActiveEditor(); + if (!editor || !humanInput || editor.document.uri.scheme !== "file") { + return null; + } + this.thread = this.commentController.createCommentThread(editor?.document.uri, range, []); + this.thread.collapsibleState = 0 /* Collapsed */; + const threads = { + text: humanInput, + thread: this.thread + }; + return threads; + } + /** + * List response from Human as comment + */ + async chat(reply, thread, isEditMode = false) { + this.isInProgress = true; + thread.canReply = false; + thread.label = this.threadLabel; + thread.collapsibleState = 1 /* Expanded */; + const comment = new Comment(reply, "Me", this.userIcon, thread); + thread.comments = [...thread.comments, comment]; + if (isEditMode) { + await this.runEditMode(comment, thread); + } + this.thread = thread; + this.selection = await this.makeSelection(isEditMode); + const firstComment = thread.comments[0]; + if (firstComment && firstComment instanceof Comment) { + this.threads.set(firstComment.id, thread); + } + void commands.executeCommand("setContext", "cody.replied", false); + } + getLatestReply() { + if (!this.thread || this.thread.comments.length === 0) { + return; + } + return this.thread.comments.at(-1); + } + /** + * List response from Cody as comment + */ + reply(text, state) { + if (!this.thread || this.thread.state) { + return; + } + const contextValue = CodyInlineStateContextValue[state]; + const latestReply = this.getLatestReply(); + const newComment = new Comment(text, "Cody", this.codyIcon, this.thread, contextValue); + if (latestReply instanceof Comment && latestReply.author.name === "Cody") { + latestReply.update(text, contextValue); + } else { + this.thread.comments = [...this.thread.comments, newComment]; + } + const firstComment = this.thread.comments[0]; + if (firstComment && firstComment instanceof Comment) { + this.threads.set(firstComment.id, this.thread); + } + if (state === "complete" || state === "error") { + this.thread.state = state === "error" ? 1 : 0; + this.thread.canReply = state !== "error"; + void commands.executeCommand("setContext", "cody.replied", true); + this.isInProgress = false; + } + if (state === "complete") { + this.createCopyEventListener(text, newComment.id); + } + } + createCopyEventListener(text, commentID) { + let groupedText = ""; + const regex = /```.*\n[\S\s]*?\n```/g; + text.match(regex)?.map((match2) => { + groupedText += match2.replace(/```.*\n/i, "").replace("```", ""); + }); + if (!groupedText) { + return; + } + window2.onDidChangeTextEditorSelection(async (e) => { + const documentUri = e.textEditor.document.uri; + if (e && documentUri?.fsPath === this.thread?.uri.fsPath) { + const clipboardText = await env2.clipboard.readText(); + if (isLastStoredCode(clipboardText)) { + return; + } + if (groupedText.includes(clipboardText)) { + await setLastTextFromClipboard(clipboardText); + const eventName = "inlineChat:Copy"; + setLastStoredCode(clipboardText, eventName, "inline-chat", commentID); + } + } + }); + } + abort() { + this.setResponsePending(false); + const latestReply = this.getLatestReply(); + if (latestReply instanceof Comment) { + latestReply.abort(); + this.isInProgress = false; + } + } + /** + * Display a "..." loading style reply from Cody. + */ + setResponsePending(isResponsePending) { + let iterations = 0; + if (!isResponsePending) { + if (this.responsePendingInterval) { + clearInterval(this.responsePendingInterval); + this.responsePendingInterval = null; + iterations = 0; + } + return; + } + const dot = "."; + this.reply(dot, "loading"); + this.responsePendingInterval = setInterval(() => { + iterations++; + const replyText = dot.repeat(iterations % 3 + 1); + this.reply(replyText, "loading"); + }, 500); + } + undo(id) { + void this.codeLenses.get(id)?.undo(id); + this.codeLenses.delete(id); + } + /** + * Remove a comment thread / conversation + */ + delete(thread) { + if (!thread) { + return; + } + const comments2 = thread?.comments; + comments2.map((comment) => { + this.codeLenses.get(comment.id)?.remove(); + }); + thread.dispose(); + this.reset(); + } + /** + * Reset class + */ + reset() { + this.selectionRange = initRange; + this.thread = null; + } + /** + * Display error message when Cody is unable to complete a request + */ + async error(message = "Please provide Cody with more details and try again.") { + const editInProgress = this.currentTaskId.length > 0; + const requestType = editInProgress ? "edit/touch request" : "request"; + this.reply(`Cody was unable to complete your ${requestType}. ${message}`, "error"); + if (editInProgress) { + await this.stopEditMode(true); + this.isInProgress = false; + } + } + /** + * Create code lense and initiate decorators for edit mode + */ + async runEditMode(comment, thread) { + const lens = await this.makeCodeLenses(comment.id, this.extensionPath, thread); + lens.updateState(2 /* working */, thread.range); + this.codeLenses.set(comment.id, lens); + this.currentTaskId = comment.id; + void commands.executeCommand("workbench.action.collapseAllComments"); + } + /** + * Reset the selection range once replacement started by fixup has been completed + * Then inform the dependents (eg. Code Lenses and Decorators) about the new range + * so that they could update accordingly + */ + async stopEditMode(error = false, newRange) { + if (!this.currentTaskId) { + return; + } + const range = newRange || this.selectionRange; + const status = error ? 7 /* error */ : 6 /* finished */; + const lens = this.codeLenses.get(this.currentTaskId); + lens?.updateState(status, range); + if (this.thread) { + this.thread.range = range; + this.thread.state = error ? 1 : 0; + } + this.currentTaskId = ""; + telemetryService.log("CodyVSCodeExtension:inline-assist:stopFixup"); + if (!error) { + await commands.executeCommand("workbench.action.collapseAllComments"); + } + this.isInProgress = false; + } + /** + * Get current selected lines from the comment thread. + * Add an extra line to the end line to prevent empty selection on single line selection + */ + async makeSelection(isEditMode) { + if (!this.thread) { + return null; + } + const activeDocument = await workspace.openTextDocument(this.thread.uri); + const lineLength = activeDocument.lineAt(this.thread.range.end.line).text.length; + const startPost = new Position(this.thread.range.start.line, 0); + const endPostFix = new Position(this.thread.range.end.line, lineLength); + const endPostAsk = new Position(this.thread.range.end.line + 1, 0); + const selectionRange = new Range(startPost, isEditMode ? endPostFix : endPostAsk); + const precedingText = activeDocument.getText( + new Range( + new Position(Math.max(0, this.thread.range.start.line - SURROUNDING_LINES), 0), + this.thread.range.start + ) + ); + const followingText = activeDocument.getText( + new Range( + this.thread.range.end, + new Position(this.thread.range.end.line + 1 + SURROUNDING_LINES, 0) + ) + ); + const selection = { + fileName: workspace.asRelativePath(this.thread.uri.fsPath), + selectedText: activeDocument.getText(selectionRange) || " ", + precedingText, + followingText, + selectionRange + }; + this.selectionRange = selectionRange; + this.selection = selection; + return selection; + } + /** + * When a comment thread is open, the Editor will be switched to the comment input editor. + * Get the current editor using the comment thread uri instead + */ + async makeCodeLenses(taskID2, extPath, thread) { + const lens = new CodeLensProvider(taskID2, extPath, thread); + const activeDocument = await workspace.openTextDocument(thread.uri); + await lens.provideCodeLenses(activeDocument, new CancellationTokenSource().token); + languages.registerCodeLensProvider("*", lens); + return lens; + } + removeLens(id) { + this.codeLenses.get(id)?.remove(); + this.codeLenses.delete(id); + } + /** + * Do replacement in document + */ + async replace(fileName, replacement, original) { + const diff = original.trim() !== replacement.trim(); + if (!this.workspacePath || !replacement.trim() || !diff) { + await this.stopEditMode(true); + return; + } + this.isInProgress = false; + try { + const chatSelection = this.getSelectionRange(); + const documentUri = Uri.joinPath(this.workspacePath, fileName); + const range = new Selection(chatSelection.start, new Position(chatSelection.end.line + 1, 0)); + const newRange = await editDocByUri( + documentUri, + { start: range.start.line, end: range.end.line }, + replacement + ); + const lens = this.codeLenses.get(this.currentTaskId); + lens?.storeContext(this.currentTaskId, documentUri, original, replacement); + await this.stopEditMode(false, newRange); + telemetryService.log("CodyVSCodeExtension:inline-assist:replaced"); + } catch (error) { + await this.stopEditMode(true); + console.error(error); + await window2.showErrorMessage( + "Edit failed. Please make sure you are in a single repository workspace and try again." + ); + } + } + /** + * Return latest selection + */ + getSelection() { + return this.selection; + } + /** + * Return latest selection range + */ + getSelectionRange() { + return this.selectionRange; + } + /** + * Dispose the disposables + */ + dispose() { + for (const disposable of this._disposables) { + disposable.dispose(); + } + this._disposables = []; + } +}; +var Comment = class { + constructor(input, name, iconPath, parent, contextValue) { + this.input = input; + this.name = name; + this.iconPath = iconPath; + this.parent = parent; + this.contextValue = contextValue; + const timestamp = new Date(Date.now()); + this.id = timestamp.getTime().toString(); + this.body = this.markdown(input); + this.author = { name, iconPath }; + this.update = (0, import_lodash11.throttle)(this.unthrottledUpdate.bind(this), 500); + } + id; + body; + mode = 1 /* Preview */; + author; + update; + unthrottledUpdate(input, contextValue) { + this.body = this.markdown(input); + this.contextValue = contextValue; + this.refresh(); + } + abort() { + if (this.contextValue === "cody-inline-loading") { + this.parent.comments = this.parent.comments.slice(0, -1); + this.parent.canReply = true; + } + this.contextValue = void 0; + this.update.cancel(); + } + refresh() { + this.parent.comments = this.parent.comments; + } + /** + * Turns string into Markdown string + */ + markdown(text) { + const markdownText = new MarkdownString(text); + markdownText.isTrusted = true; + markdownText.supportHtml = true; + return markdownText; + } +}; + +// ../vscode/src/services/LocalAppSetupPublisher.ts +var LocalAppSetupPublisher = class { + constructor(configProvider) { + this.configProvider = configProvider; + this.disposables.push( + configProvider.configurationChangeEvent.event(() => { + void this.onConfigurationChanged(); + }) + ); + } + disposables = []; + dispose() { + for (const disposable of this.disposables) { + disposable.dispose(); + } + } + async onConfigurationChanged() { + const { accessToken, serverEndpoint: serverEndpoint2 } = this.configProvider.config; + if (!(accessToken && isDotCom(serverEndpoint2) && isOsSupportedByApp(process.platform, process.arch))) { + return; + } + let settingsDirUri; + try { + settingsDirUri = await this.ensureAppConfigDir(); + } catch { + return; + } + const workspaceRoot = workspace.workspaceFolders?.[0]?.uri?.fsPath; + const settings = { + dotcomAccessToken: accessToken, + repoPaths: workspaceRoot ? [workspaceRoot] : [], + redirect: env2.uriScheme + "://sourcegraph.cody-ai/app-done" + }; + void workspace.fs.writeFile( + settingsDirUri.with({ path: `${settingsDirUri.path}/vscode.json` }), + Buffer.from(JSON.stringify(settings), "utf-8") + ); + } + // Tries to get the Cody App configuration directory, creating the directory + // if it does not exist. + async ensureAppConfigDir() { + const settingsDirPattern = LOCAL_APP_SETTINGS_DIR.get(process.platform); + if (!settingsDirPattern) { + throw new Error("no app for this platform"); + } + const homeDir = process.env.HOME; + if (!homeDir) { + throw new Error("no home directory"); + } + const settingsDir = settingsDirPattern.replace(/^~/, homeDir); + const settingsDirUri = Uri.file(settingsDir); + let settingsDirStats; + try { + settingsDirStats = await workspace.fs.stat(settingsDirUri); + } catch { + } + if (settingsDirStats && settingsDirStats.type === 2 /* Directory */ && settingsDirStats.permissions !== void 0 && settingsDirStats.permissions ^ (void 0).Readonly) { + return settingsDirUri; + } + await workspace.fs.createDirectory(settingsDirUri); + return settingsDirUri; + } +}; + +// ../vscode/src/services/OnboardingExperiment.ts +var ONBOARDING_EXPERIMENT_STORAGE_KEY = "experiment.onboarding"; +function cleanUpCachedSelection() { + return localStorage2.delete(ONBOARDING_EXPERIMENT_STORAGE_KEY); +} + +// ../vscode/src/services/StatusBar.ts +var DEFAULT_TEXT = "$(cody-logo-heavy)"; +var DEFAULT_TOOLTIP = "Cody Settings"; +var QUICK_PICK_ITEM_CHECKED_PREFIX = "$(check) "; +var QUICK_PICK_ITEM_EMPTY_INDENT_PREFIX = "\xA0\xA0\xA0\xA0\xA0 "; +var ONE_HOUR2 = 60 * 60 * 1e3; +function createStatusBar() { + const statusBarItem2 = window2.createStatusBarItem(2 /* Right */); + statusBarItem2.text = DEFAULT_TEXT; + statusBarItem2.tooltip = DEFAULT_TOOLTIP; + statusBarItem2.command = "cody.status-bar.interacted"; + statusBarItem2.show(); + const command = commands.registerCommand(statusBarItem2.command, async () => { + const workspaceConfig = workspace.getConfiguration(); + const config = getConfiguration(workspaceConfig); + function createFeatureToggle(name, description, detail, setting, getValue2, requiresReload = false) { + const isEnabled = getValue2(config); + return { + label: (isEnabled ? QUICK_PICK_ITEM_CHECKED_PREFIX : QUICK_PICK_ITEM_EMPTY_INDENT_PREFIX) + name, + description, + detail: QUICK_PICK_ITEM_EMPTY_INDENT_PREFIX + detail, + onSelect: async () => { + await workspaceConfig.update(setting, !isEnabled, 1 /* Global */); + const info2 = name + " " + (isEnabled ? "disabled" : "enabled") + "."; + const response = await (requiresReload ? window2.showInformationMessage(info2, "Reload Window") : window2.showInformationMessage(info2)); + if (response === "Reload Window") { + await commands.executeCommand("workbench.action.reloadWindow"); + } + } + }; + } + const option = await window2.showQuickPick( + // These description should stay in sync with the settings in package.json + [ + ...errors.length > 0 ? [ + { label: "notice", kind: -1 /* Separator */ }, + ...errors.map((error) => ({ + label: `$(alert) ${error.error.title}`, + description: "", + detail: QUICK_PICK_ITEM_EMPTY_INDENT_PREFIX + error.error.description, + onSelect() { + error.error.onSelect?.(); + const index = errors.indexOf(error); + errors.splice(index); + rerender(); + return Promise.resolve(); + } + })) + ] : [], + { label: "enable/disable features", kind: -1 /* Separator */ }, + createFeatureToggle( + "Code Autocomplete", + void 0, + "Enable Cody-powered code autocompletions", + "cody.autocomplete.enabled", + (c) => c.autocomplete + ), + createFeatureToggle( + "Code Actions", + void 0, + "Enable Cody fix and explain options in the Quick Fix menu", + "cody.codeActions.enabled", + (c) => c.codeActions + ), + createFeatureToggle( + "Editor Title Icon", + void 0, + "Enable Cody to appear in editor title menu for quick access to Cody commands", + "cody.editorTitleCommandIcon", + (c) => c.editorTitleCommandIcon + ), + createFeatureToggle( + "Code Lenses", + void 0, + "Enable Code Lenses in documents for quick access to Cody commands", + "cody.commandCodeLenses", + (c) => c.commandCodeLenses + ), + createFeatureToggle( + "Chat Suggestions", + "Experimental", + "Enable automatically suggested chat questions", + "cody.experimental.chatPredictions", + (c) => c.experimentalChatPredictions, + true + ), + createFeatureToggle( + "New Chat UI", + "Experimental", + "Enable new chat panel UI", + "cody.experimental.chatPanel", + (c) => c.experimentalChatPanel + ), + createFeatureToggle( + "New Search UI", + "Experimental", + "Enable new search panel", + "cody.experimental.newSearch", + (c) => c.experimentalSearchPanel + ), + { label: "settings", kind: -1 /* Separator */ }, + { + label: "$(gear) Cody Extension Settings", + async onSelect() { + await commands.executeCommand("cody.settings.extension"); + } + }, + { + label: "$(symbol-namespace) Custom Commands Settings", + async onSelect() { + await commands.executeCommand("cody.settings.commands"); + } + }, + { label: "feedback & support", kind: -1 /* Separator */ }, + ...FeedbackOptionItems + ], + { + title: "Cody Settings", + placeHolder: "Choose an option", + matchOnDescription: true + } + ); + if (option && "onSelect" in option) { + option.onSelect().catch(console.error); + } + }); + let openLoadingLeases = 0; + const errors = []; + function rerender() { + if (openLoadingLeases > 0) { + statusBarItem2.text = "$(loading~spin)"; + } else { + statusBarItem2.text = DEFAULT_TEXT; + statusBarItem2.tooltip = DEFAULT_TOOLTIP; + } + if (errors.length > 0) { + statusBarItem2.backgroundColor = new ThemeColor("statusBarItem.warningBackground"); + statusBarItem2.tooltip = errors[0].error.title; + } else { + statusBarItem2.backgroundColor = new ThemeColor("statusBarItem.activeBackground"); + } + } + function clearOutdatedErrors() { + const now = Date.now(); + for (let i = errors.length - 1; i >= 0; i--) { + const error = errors[i]; + if (now - error.createdAt >= ONE_HOUR2) { + errors.splice(i, 1); + } + } + rerender(); + } + return { + startLoading(label) { + openLoadingLeases++; + statusBarItem2.tooltip = label; + rerender(); + let didClose = false; + return () => { + if (didClose) { + return; + } + didClose = true; + openLoadingLeases--; + rerender(); + }; + }, + addError(error) { + const errorObject = { error, createdAt: Date.now() }; + errors.push(errorObject); + setTimeout(clearOutdatedErrors, ONE_HOUR2); + rerender(); + return () => { + const index = errors.indexOf(errorObject); + if (index !== -1) { + errors.splice(index, 1); + rerender(); + } + }; + }, + dispose() { + statusBarItem2.dispose(); + command.dispose(); + } + }; +} + +// ../vscode/src/main.ts +async function start3(context2, platform4) { + localStorage2.setStorage(context2.globalState); + if (secretStorage instanceof VSCodeSecretStorage) { + secretStorage.setStorage(context2.secrets); + } + const rgPath = platform4.getRgPath ? await platform4.getRgPath() : null; + const disposables = []; + const { disposable, onConfigurationChange } = await register(context2, await getFullConfig(), rgPath, platform4); + disposables.push(disposable); + disposables.push( + workspace.onDidChangeConfiguration(async (event) => { + if (event.affectsConfiguration("cody")) { + const config = await getFullConfig(); + onConfigurationChange(config); + platform4.onConfigurationChange?.(config); + if (config.chatPreInstruction) { + PromptMixin.addCustom(newPromptMixin(config.chatPreInstruction)); + } + } + }) + ); + return Disposable.from(...disposables); +} +var register = async (context2, initialConfig, rgPath, platform4) => { + const disposables = []; + const isExtensionModeDevOrTest = context2.extensionMode === 2 /* Development */ || context2.extensionMode === 3 /* Test */; + await configureEventsInfra(initialConfig, isExtensionModeDevOrTest); + const commentController2 = new InlineController(context2.extensionPath); + const fixup = new FixupController(); + disposables.push(fixup); + if (TestSupport.instance) { + TestSupport.instance.fixupController.set(fixup); + } + const editor = new VSCodeEditor({ + inline: commentController2, + fixups: fixup, + command: platform4.createCommandsController?.(context2) + }); + const workspaceConfig = workspace.getConfiguration(); + const config = getConfiguration(workspaceConfig); + if (config.chatPreInstruction) { + PromptMixin.addCustom(newPromptMixin(config.chatPreInstruction)); + } + if (config.autocompleteExperimentalSyntacticPostProcessing) { + parseAllVisibleDocuments(); + disposables.push(window2.onDidChangeVisibleTextEditors(parseAllVisibleDocuments)); + disposables.push(workspace.onDidChangeTextDocument(updateParseTreeOnEdit)); + } + const authProvider = new AuthProvider(initialConfig); + await authProvider.init(); + const symfRunner = platform4.createSymfRunner?.(context2, initialConfig.serverEndpoint, initialConfig.accessToken); + graphqlClient.onConfigurationChange(initialConfig); + void featureFlagProvider.syncAuthStatus(); + const { + intentDetector, + codebaseContext: initialCodebaseContext, + chatClient, + codeCompletionsClient, + guardrails, + onConfigurationChange: externalServicesOnDidConfigurationChange + } = await configureExternalServices(initialConfig, rgPath, symfRunner, editor, platform4); + const contextProvider = new ContextProvider2( + initialConfig, + chatClient, + initialCodebaseContext, + editor, + rgPath, + symfRunner, + authProvider, + platform4 + ); + disposables.push(contextProvider); + disposables.push(new LocalAppSetupPublisher(contextProvider)); + await contextProvider.init(); + const localEmbeddings = platform4.createLocalEmbeddingsController?.(); + const codebaseContext = await hackGetCodebaseContext( + initialConfig, + rgPath, + symfRunner, + editor, + chatClient, + platform4, + await contextProvider.hackGetEmbeddingClientCandidates(initialConfig), + localEmbeddings + ); + const embeddingsSearch = codebaseContext?.tempHackGetEmbeddingsSearch() || null; + const messageProviderOptions = { + chat: chatClient, + intentDetector, + guardrails, + editor, + authProvider, + contextProvider, + platform: platform4 + }; + await featureFlagProvider.evaluateFeatureFlag("cody-chat-mock-test" /* CodyChatMockTest */); + const inlineChatManager = new InlineChatViewManager(messageProviderOptions); + const fixupManager = new FixupManager(messageProviderOptions); + const chatManager = new ChatManager( + { + ...messageProviderOptions, + extensionUri: context2.extensionUri + }, + chatClient, + embeddingsSearch, + localEmbeddings || null + ); + disposables.push(new CodeActionProvider({ contextProvider })); + disposables.push( + chatManager, + window2.registerWebviewViewProvider("cody.chat", chatManager.sidebarChat, { + webviewOptions: { retainContextWhenHidden: true } + }), + // Update external services when configurationChangeEvent is fired by chatProvider + contextProvider.configurationChangeEvent.event(async () => { + const newConfig = await getFullConfig(); + externalServicesOnDidConfigurationChange(newConfig); + await configureEventsInfra(newConfig, isExtensionModeDevOrTest); + }) + ); + if (symfRunner) { + const searchViewProvider = new SearchViewProvider(context2.extensionUri, symfRunner); + searchViewProvider.initialize(); + disposables.push(searchViewProvider); + disposables.push( + window2.registerWebviewViewProvider("cody.search", searchViewProvider, { + webviewOptions: { retainContextWhenHidden: true } + }) + ); + } + authProvider.addChangeListener((authStatus) => { + void chatManager.syncAuthStatus(authStatus); + if (symfRunner && authStatus.isLoggedIn) { + getAccessToken().then((token) => { + symfRunner.setSourcegraphAuth(authStatus.endpoint, token); + }).catch(() => { + }); + workspaceActionsOnConfigChange(editor.getWorkspaceRootUri(), authStatus.endpoint); + } else { + symfRunner?.setSourcegraphAuth(null, null); + } + }); + void chatManager.syncAuthStatus(authProvider.getAuthStatus()); + const executeRecipeInChatView = async (recipe, openChatView = true, humanInput = "", source2 = "editor") => { + await chatManager.executeRecipe(recipe, humanInput, openChatView, source2); + }; + const executeFixup = async (args3 = {}, source2 = "editor") => { + telemetryService.log("CodyVSCodeExtension:command:edit:executed", { source: source2 }, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.command.edit", "executed", { privateMetadata: { source: source2 } }); + const document2 = args3.document || getActiveEditor()?.document; + if (!document2) { + void window2.showErrorMessage("Please open a file before running a command."); + return; + } + const range = args3.range || getActiveEditor()?.selection; + if (!range) { + return; + } + const task = args3.instruction?.trim() ? fixup.createTask(document2.uri, args3.instruction, range, args3.intent, args3.insertMode, source2) : await fixup.promptUserForTask(); + if (!task) { + return; + } + const provider = fixupManager.getProviderForTask(task); + return provider.startFix(); + }; + const statusBar = createStatusBar(); + disposables.push( + // Inline Chat Provider + commands.registerCommand("cody.comment.add", async (comment) => { + const isEditMode = commandRegex.edit.test(comment.text.trimStart()); + if (isEditMode) { + const source2 = "inline-chat"; + void commands.executeCommand("workbench.action.collapseAllComments"); + const activeDocument = await workspace.openTextDocument(comment.thread.uri); + return executeFixup( + { + document: activeDocument, + instruction: comment.text.replace(commandRegex.edit, ""), + range: comment.thread.range + }, + source2 + ); + } + const inlineChatProvider = inlineChatManager.getProviderForThread(comment.thread); + await inlineChatProvider.addChat(comment.text, false); + }), + commands.registerCommand("cody.comment.delete", (thread) => { + inlineChatManager.removeProviderForThread(thread); + telemetryService.log("CodyVSCodeExtension:inline-assist:deleteButton:clicked", void 0, { + hasV2Event: true + }); + telemetryRecorder.recordEvent("cody.comment.delete", "clicked"); + }), + commands.registerCommand("cody.comment.stop", async (comment) => { + const inlineChatProvider = inlineChatManager.getProviderForThread(comment.parent); + await inlineChatProvider.abortChat(); + telemetryService.log( + "CodyVSCodeExtension:abortButton:clicked", + { source: "inline-chat" }, + { hasV2Event: true } + ); + telemetryRecorder.recordEvent("cody.comment.stop", "clicked", { + privateMetadata: { source: "inline-chat" } + }); + }), + commands.registerCommand("cody.comment.collapse-all", () => { + void commands.executeCommand("workbench.action.collapseAllComments"); + telemetryService.log("CodyVSCodeExtension:inline-assist:collapseButton:clicked", void 0, { + hasV2Event: true + }); + telemetryRecorder.recordEvent("cody.comment.collapse-all", "clicked"); + }), + commands.registerCommand("cody.comment.open-in-sidebar", async (thread) => { + const inlineChatProvider = inlineChatManager.getProviderForThread(thread); + await chatManager.setWebviewView("chat"); + await chatManager.restoreSession(inlineChatProvider.sessionID); + inlineChatManager.removeProviderForThread(thread); + telemetryService.log("CodyVSCodeExtension:inline-assist:openInSidebarButton:clicked", void 0, { + hasV2Event: true + }); + telemetryRecorder.recordEvent("cody.comment.open-in-sidebar", "clicked"); + }), + commands.registerCommand( + "cody.command.edit-code", + (args3, source2) => executeFixup(args3, source2) + ), + commands.registerCommand("cody.inline.new", async () => { + await commands.executeCommand("cursorLineEndSelect"); + await commands.executeCommand("workbench.action.addComment"); + }), + commands.registerCommand("cody.inline.add", async (instruction, range) => { + const comment = commentController2.create(instruction, range); + if (!comment) { + return Promise.resolve(); + } + const inlineChatProvider = inlineChatManager.getProviderForThread(comment.thread); + void inlineChatProvider.addChat(comment.text, false); + }), + // Tests + // Access token - this is only used in configuration tests + commands.registerCommand("cody.test.token", async (url2, token) => authProvider.auth(url2, token)), + // Auth + commands.registerCommand("cody.auth.signin", () => authProvider.signinMenu()), + commands.registerCommand("cody.auth.signout", () => authProvider.signoutMenu()), + commands.registerCommand("cody.auth.support", () => showFeedbackSupportQuickPick()), + commands.registerCommand("cody.auth.sync", () => { + const result = contextProvider.syncAuthStatus(); + void featureFlagProvider.syncAuthStatus(); + return result; + }), + // Commands + commands.registerCommand("cody.chat.restart", async () => { + await chatManager.clearAndRestartSession(); + telemetryService.log("CodyVSCodeExtension:chatTitleButton:clicked", { name: "clear" }, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.interactive.clear", "clicked", { privateMetadata: { name: "clear" } }); + }), + // TODO remove cody.interactive.clear when we remove the old chat + commands.registerCommand("cody.interactive.clear", async () => { + await chatManager.clearAndRestartSession(); + await chatManager.setWebviewView("chat"); + telemetryService.log("CodyVSCodeExtension:chatTitleButton:clicked", { name: "reset" }, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.interactive.clear", "clicked", { privateMetadata: { name: "reset" } }); + }), + commands.registerCommand("cody.focus", () => commands.executeCommand("cody.chat.focus")), + commands.registerCommand( + "cody.settings.extension", + () => commands.executeCommand("workbench.action.openSettings", { query: "@ext:sourcegraph.cody-ai" }) + ), + commands.registerCommand("cody.history", async () => { + await chatManager.setWebviewView("history"); + telemetryService.log( + "CodyVSCodeExtension:chatTitleButton:clicked", + { name: "history" }, + { hasV2Event: true } + ); + telemetryRecorder.recordEvent("cody.history", "clicked", { privateMetadata: { name: "history" } }); + }), + commands.registerCommand("cody.history.clear", async () => { + await chatManager.clearHistory(); + }), + // Recipes + commands.registerCommand("cody.action.chat", async (input, source2) => { + await executeRecipeInChatView("chat-question", true, input, source2); + }), + commands.registerCommand("cody.action.commands.menu", async () => { + await editor.controllers.command?.menu("default"); + }), + commands.registerCommand( + "cody.action.commands.custom.menu", + () => editor.controllers.command?.menu("custom") + ), + commands.registerCommand("cody.settings.commands", () => editor.controllers.command?.menu("config")), + commands.registerCommand("cody.action.commands.exec", async (title) => { + await chatManager.executeCustomCommand(title); + }), + commands.registerCommand("cody.command.explain-code", async () => { + await executeRecipeInChatView("custom-prompt", true, "/explain"); + }), + commands.registerCommand("cody.command.generate-tests", async () => { + await executeRecipeInChatView("custom-prompt", true, "/test"); + }), + commands.registerCommand("cody.command.document-code", async () => { + await executeRecipeInChatView("custom-prompt", false, "/doc"); + }), + commands.registerCommand("cody.command.smell-code", async () => { + await executeRecipeInChatView("custom-prompt", true, "/smell"); + }), + commands.registerCommand( + "cody.command.inline-touch", + () => executeRecipeInChatView("inline-touch", false) + ), + commands.registerCommand( + "cody.command.context-search", + () => executeRecipeInChatView("context-search", true) + ), + // Register URI Handler (vscode://sourcegraph.cody-ai) + window2.registerUriHandler({ + handleUri: async (uri) => { + if (uri.path === "/app-done") { + await chatManager.simplifiedOnboardingReloadEmbeddingsState(); + } else { + await authProvider.tokenCallbackHandler(uri, config.customHeaders); + } + } + }), + statusBar, + // Walkthrough / Support + commands.registerCommand( + "cody.feedback", + () => env2.openExternal(Uri.parse(CODY_FEEDBACK_URL.href)) + ), + commands.registerCommand("cody.welcome", async () => { + telemetryService.log("CodyVSCodeExtension:walkthrough:clicked", { page: "welcome" }, { hasV2Event: true }); + telemetryRecorder.recordEvent("cody.walkthrough", "clicked"); + await commands.executeCommand("workbench.action.openWalkthrough"); + return commands.executeCommand( + "workbench.action.openWalkthrough", + "sourcegraph.cody-ai#welcome", + false + ); + }), + commands.registerCommand( + "cody.welcome-mock", + () => commands.executeCommand("workbench.action.openWalkthrough", "sourcegraph.cody-ai#welcome", false) + ), + commands.registerCommand( + "cody.walkthrough.showLogin", + () => commands.executeCommand("workbench.view.extension.cody") + ), + commands.registerCommand("cody.walkthrough.showChat", () => chatManager.setWebviewView("chat")), + commands.registerCommand("cody.walkthrough.showFixup", () => chatManager.setWebviewView("chat")), + commands.registerCommand("cody.walkthrough.showExplain", async () => { + telemetryService.log( + "CodyVSCodeExtension:walkthrough:clicked", + { page: "showExplain" }, + { hasV2Event: true } + ); + telemetryRecorder.recordEvent("cody.walkthrough.showExplain", "clicked"); + await chatManager.setWebviewView("chat"); + }), + commands.registerCommand("cody.walkthrough.enableInlineChat", async () => { + telemetryService.log( + "CodyVSCodeExtension:walkthrough:clicked", + { page: "enableInlineChat" }, + { hasV2Event: true } + ); + telemetryRecorder.recordEvent("cody.walkthrough.enableInlineChat", "clicked"); + await workspaceConfig.update("cody.inlineChat", true, 1 /* Global */); + return commands.executeCommand("workbench.action.openSettings", { + query: "cody.inlineChat.enabled", + openToSide: true + }); + }), + commands.registerCommand("agent.auth.reload", async () => { + await authProvider.reloadAuthStatus(); + }) + ); + let removeAuthStatusBarError; + function updateAuthStatusBarIndicator() { + if (removeAuthStatusBarError) { + removeAuthStatusBarError(); + removeAuthStatusBarError = void 0; + } + if (!authProvider.getAuthStatus().isLoggedIn) { + removeAuthStatusBarError = statusBar.addError({ + title: "Sign In To Use Cody", + description: "You need to sign in to use Cody.", + onSelect: () => { + void chatManager.setWebviewView("chat"); + } + }); + } + } + authProvider.addChangeListener(() => updateAuthStatusBarIndicator()); + updateAuthStatusBarIndicator(); + let completionsProvider = null; + let setupAutocompleteQueue = Promise.resolve(); + disposables.push({ dispose: () => completionsProvider?.dispose() }); + const setupAutocomplete = () => { + setupAutocompleteQueue = setupAutocompleteQueue.then(async () => { + const config2 = getConfiguration(workspace.getConfiguration()); + if (!config2.autocomplete) { + completionsProvider?.dispose(); + completionsProvider = null; + if (config2.isRunningInsideAgent) { + throw new Error( + "The setting `config.autocomplete` evaluated to `false`. It must be true when running inside the agent. To fix this problem, make sure that the setting cody.autocomplete.enabled has the value true." + ); + } + return; + } + if (completionsProvider !== null) { + completionsProvider.dispose(); + } + completionsProvider = await createInlineCompletionItemProvider({ + config: config2, + client: codeCompletionsClient, + statusBar, + authProvider, + triggerNotice: (notice) => chatManager.triggerNotice(notice), + createBfgRetriever: platform4.createBfgRetriever + }); + }).catch((error) => { + console.error("Error creating inline completion item provider:", error); + }); + }; + workspace.onDidChangeConfiguration((event) => { + if (event.affectsConfiguration("cody.autocomplete")) { + setupAutocomplete(); + } + }); + authProvider.addChangeListener(() => { + setupAutocomplete(); + }); + setupAutocomplete(); + if (!initialConfig.inlineChat) { + commentController2.dispose(); + } + if (initialConfig.experimentalGuardrails) { + const guardrailsProvider = new GuardrailsProvider(guardrails, editor); + disposables.push( + commands.registerCommand("cody.guardrails.debug", async () => { + await guardrailsProvider.debugEditorSelection(); + }) + ); + } + if (initialConfig.experimentalNonStop || process.env.CODY_TESTING === "true") { + fixup.registerTreeView(); + await commands.executeCommand("setContext", "cody.nonstop.fixups.enabled", true); + } + await showSetupNotification(initialConfig); + void cleanUpCachedSelection(); + if (window2.registerWebviewPanelSerializer) { + window2.registerWebviewPanelSerializer(CodyChatPanelViewType, { + async deserializeWebviewPanel(webviewPanel, chatID) { + if (chatID && webviewPanel.title) { + logDebug("main:deserializeWebviewPanel", "reviving last unclosed chat panel"); + await chatManager.revive(webviewPanel, chatID); + } + } + }); + } + return { + disposable: Disposable.from(...disposables), + onConfigurationChange: (newConfig) => { + graphqlClient.onConfigurationChange(newConfig); + contextProvider.onConfigurationChange(newConfig); + externalServicesOnDidConfigurationChange(newConfig); + void configureEventsInfra(newConfig, isExtensionModeDevOrTest); + platform4.onConfigurationChange?.(newConfig); + symfRunner?.setSourcegraphAuth(newConfig.serverEndpoint, newConfig.accessToken); + } + }; +}; +async function configureEventsInfra(config, isExtensionModeDevOrTest) { + await createOrUpdateEventLogger(config, isExtensionModeDevOrTest); + await createOrUpdateTelemetryRecorderProvider(config, isExtensionModeDevOrTest); +} + +// ../vscode/src/extension.common.ts +async function activate(context2, platformContext) { + const api = new ExtensionApi(); + try { + const disposable = await start3(context2, platformContext); + if (!context2.globalState.get("extension.hasActivatedPreviously")) { + void context2.globalState.update("extension.hasActivatedPreviously", "true"); + } + context2.subscriptions.push(disposable); + if (context2.extensionMode === 2 /* Development */) { + onActivationDevelopmentHelpers(); + } + } catch (error) { + (0, sentry_exports.captureException)(error); + console.error(error); + } + return api; +} + +// ../lib/shared/src/chat/prompts/vscode-context.ts +var import_path15 = require("path"); +var import_lodash12 = __toESM(require_lodash()); +function getActiveEditorFromVisibleEditors() { + const visibleTextEditors2 = window2.visibleTextEditors; + if (visibleTextEditors2.length === 0) { + return void 0; + } + return visibleTextEditors2.find((editor) => !editor.selection.isEmpty); +} +function getCurrentVSCodeDoc() { + return getActiveEditorFromVisibleEditors()?.document; +} +async function getFilePathContext(filePath) { + const fileUri = Uri.file(filePath); + const fileName = createVSCodeRelativePath(filePath); + try { + const decoded = await decodeVSCodeTextDoc(fileUri); + const truncatedContent = truncateText(decoded, MAX_CURRENT_FILE_TOKENS); + return getContextMessageWithResponse(populateCodeContextTemplate(truncatedContent, fileName), { + fileName + }); + } catch (error) { + console.error(error); + return []; + } +} +function getTerminalOutputContext(terminalOutput) { + const truncatedTerminalOutput = truncateText(terminalOutput, MAX_CURRENT_FILE_TOKENS); + return [ + { speaker: "human", text: populateTerminalOutputContextTemplate(truncatedTerminalOutput) }, + { + speaker: "assistant", + text: answers.terminal + } + ]; +} +async function getCurrentDirContext(isUnitTestRequest) { + const currentFile = getCurrentVSCodeDoc()?.fileName; + if (!currentFile) { + return []; + } + const currentDir = (0, import_path15.dirname)(currentFile); + return getEditorDirContext(currentDir, currentFile, isUnitTestRequest); +} +async function getEditorDirContext(directoryPath, currentFileName, isUnitTestRequest = false) { + const directoryUri = Uri.file(directoryPath); + const filteredFiles = await getFilesFromDir(directoryUri, isUnitTestRequest); + if (isUnitTestRequest && currentFileName) { + const context2 = await getCurrentDirFilteredContext(directoryUri, filteredFiles, currentFileName); + if (context2.length > 0) { + return context2; + } + const testFileContext = await getEditorTestContext(currentFileName, isUnitTestRequest); + if (testFileContext.length > 0) { + return testFileContext; + } + } + const firstFiles = filteredFiles.slice(0, 10); + return getDirContextMessages(directoryUri, firstFiles); +} +async function getEditorTestContext(fileName, isUnitTestRequest = false) { + try { + const currentTestFile = await getCurrentTestFileContext(fileName, isUnitTestRequest); + if (currentTestFile.length) { + return currentTestFile; + } + const codebaseTestFiles = await getCodebaseTestFilesContext(fileName, isUnitTestRequest); + return [...codebaseTestFiles, ...currentTestFile]; + } catch { + return []; + } +} +async function getCurrentTestFileContext(fileName, isUnitTest) { + const excludePattern = isUnitTest ? "**/*{e2e,integration,node_modules}*/**" : void 0; + const searchPattern = createVSCodeTestSearchPattern(fileName); + const foundFiles = await findVSCodeFiles(searchPattern, excludePattern, 5); + const testFile = foundFiles.find((file) => isValidTestFileName(file.fsPath)); + if (testFile) { + const contextMessage = await getFilePathContext(testFile.fsPath); + return contextMessage; + } + return []; +} +async function getCodebaseTestFilesContext(fileName, isUnitTest) { + const excludePattern = isUnitTest ? "**/*{e2e,integration,node_modules}*/**" : void 0; + const testFilesPattern = createVSCodeTestSearchPattern(fileName, true); + const testFilesMatches = await findVSCodeFiles(testFilesPattern, excludePattern, 5); + const filteredTestFiles = testFilesMatches.filter((file) => isValidTestFileName(file.fsPath)); + return getContextMessageFromFiles(filteredTestFiles); +} +async function getDirContextMessages(dirUri, filesInDir) { + const contextMessages = []; + for (const file of filesInDir) { + const fileUri = Uri.joinPath(dirUri, file[0]); + const fileName = createVSCodeRelativePath(fileUri.fsPath); + const fileSize = await workspace.fs.stat(fileUri); + if (fileSize.size > 1e6 || !fileSize.size) { + continue; + } + try { + const decoded = await decodeVSCodeTextDoc(fileUri); + const truncatedContent = truncateText(decoded, MAX_CURRENT_FILE_TOKENS); + const templateText = "Codebase context from file path {fileName}: "; + const contextMessage = getContextMessageWithResponse( + populateContextTemplateFromText(templateText, truncatedContent, fileName), + { fileName } + ); + contextMessages.push(...contextMessage); + } catch (error) { + console.error(error); + } + } + return contextMessages; +} +async function getPackageJsonContext(filePath) { + const currentFilePath2 = filePath || getCurrentVSCodeDoc()?.uri.fsPath; + if (!currentFilePath2) { + return []; + } + const packageJsonPath = await findVSCodeFiles("**/package.json", void 0, 1); + if (!packageJsonPath.length) { + return []; + } + try { + const packageJsonUri = packageJsonPath[0]; + const decoded = await decodeVSCodeTextDoc(packageJsonUri); + const packageJson = JSON.parse(decoded); + const scripts = packageJson.scripts; + const devDependencies = packageJson.devDependencies; + const context2 = JSON.stringify({ scripts, devDependencies }); + const truncatedContent = truncateText(context2.toString() || decoded.toString(), MAX_CURRENT_FILE_TOKENS); + const fileName = createVSCodeRelativePath(packageJsonUri.fsPath); + const templateText = "Here are the scripts and devDependencies from the package.json file for the codebase: "; + return getContextMessageWithResponse( + populateContextTemplateFromText(templateText, truncatedContent, fileName), + { fileName }, + answers.packageJson + ); + } catch { + return []; + } +} +async function getCurrentDirFilteredContext(dirUri, filesInDir, currentFileName, maxFiles = 5) { + const contextMessages = []; + const filePathParts = currentFileName.split("/"); + const fileNameWithoutExt = filePathParts.pop()?.split(".").shift() || ""; + for (const file of filesInDir) { + const fileUri = Uri.joinPath(dirUri, file[0]); + const fileName = createVSCodeRelativePath(fileUri.fsPath); + const fileSize = await workspace.fs.stat(fileUri); + if (fileSize.size > 1e6 || !fileSize.size) { + continue; + } + if (file[0] === currentFileName) { + continue; + } + try { + const decoded = await decodeVSCodeTextDoc(fileUri); + const truncatedContent = truncateText(decoded, MAX_CURRENT_FILE_TOKENS); + const templateText = "Codebase context from file path {fileName}: "; + const contextMessage = getContextMessageWithResponse( + populateContextTemplateFromText(templateText, truncatedContent, fileName), + { fileName } + ); + contextMessages.push(...contextMessage); + } catch (error) { + console.error(error); + } + if (file[0].startsWith(fileNameWithoutExt) || file[0].endsWith(fileNameWithoutExt)) { + return contextMessages; + } + if (contextMessages.length >= maxFiles * 2) { + return contextMessages; + } + } + return contextMessages; +} +async function getContextMessageFromFiles(files) { + const contextMessages = []; + for (const file of files) { + const contextMessage = await getFilePathContext(file.fsPath); + contextMessages.push(...contextMessage); + } + return contextMessages; +} +async function getEditorOpenTabsContext(skipDirectory) { + const contextMessages = []; + try { + const tabGroups2 = window2.tabGroups.all; + const openTabs = tabGroups2.flatMap((group) => group.tabs.map((tab) => tab.input)); + for (const tab of openTabs) { + if (tab.uri?.scheme !== "file") { + continue; + } + if (skipDirectory && tab.uri.fsPath.includes(skipDirectory)) { + continue; + } + if (!isInWorkspace(tab.uri)) { + const contextMessage = await getFilePathContext(tab.uri.fsPath); + contextMessages.push(...contextMessage); + continue; + } + const fileUri = tab.uri; + const fileName = createVSCodeRelativePath(fileUri.fsPath); + const fileText = await getCurrentVSCodeDocTextByURI(fileUri); + const truncatedText = truncateText(fileText, MAX_CURRENT_FILE_TOKENS); + const message = getContextMessageWithResponse( + populateCurrentEditorContextTemplate(truncatedText, fileName), + { + fileName + } + ); + contextMessages.push(...message); + } + } catch { + } + return contextMessages; +} +function getCurrentFileContextFromEditorSelection(selection) { + if (!selection.selectedText) { + return []; + } + return getContextMessageWithResponse( + populateCurrentFileFromEditorSelectionContextTemplate(selection, selection.fileName), + selection, + answers.file + ); +} +async function getDirectoryFileListContext(workspaceRootUri2, isTestRequest, fileName) { + try { + if (!workspaceRootUri2) { + throw new Error("No workspace root found"); + } + const fileUri = fileName ? Uri.joinPath(workspaceRootUri2, fileName) : workspaceRootUri2; + const directoryUri = fileName ? Uri.joinPath(fileUri, "..") : workspaceRootUri2; + const directoryFiles = await getFilesFromDir(directoryUri, isTestRequest); + const fileNames = directoryFiles.map((file) => file[0]); + const truncatedFileNames = truncateText(fileNames.join(", "), MAX_CURRENT_FILE_TOKENS); + const fsPath = fileName || "root"; + return [ + { + speaker: "human", + text: populateListOfFilesContextTemplate(truncatedFileNames, fsPath) + }, + { + speaker: "assistant", + text: answers.fileList.replace("{fileName}", fsPath) + } + ]; + } catch (error) { + console.error(error); + return []; + } +} +async function getCurrentFileImportsContext() { + const currentFile = getCurrentVSCodeDoc(); + if (!currentFile?.uri || !currentFile.languageId) { + return []; + } + try { + const lastImportRange = await getFoldingRanges(currentFile.uri, "imports", true); + const lastImportLineRange = lastImportRange?.[0]; + if (!lastImportLineRange) { + return []; + } + const lastImportLine = lastImportLineRange.end; + const importsRange = new Range(0, 0, lastImportLine, 0); + const importStatements = currentFile.getText(importsRange); + if (!importStatements) { + return []; + } + const truncatedContent = truncateText(importStatements, MAX_CURRENT_FILE_TOKENS / 2); + const fileName = createVSCodeRelativePath(currentFile?.fileName); + return getContextMessageWithResponse(populateImportListContextTemplate(truncatedContent, fileName), { + fileName + }); + } catch { + return []; + } +} +function isInWorkspace(fileToCheck) { + return workspace.getWorkspaceFolder(fileToCheck) !== void 0; +} +var getFilesFromDir = async (dirUri, testFilesOnly) => { + try { + const filesInDir = await workspace.fs.readDirectory(dirUri); + return filesInDir.filter((file) => { + const fileName = file[0]; + const fileType = file[1]; + const isDirectory = fileType === 2 /* Directory */; + const isHiddenFile = fileName.startsWith("."); + if (!testFilesOnly) { + return !isDirectory && !isHiddenFile; + } + const isFileNameIncludesTest = isValidTestFileName(fileName); + return !isDirectory && !isHiddenFile && isFileNameIncludesTest; + }); + } catch (error) { + console.error(error); + return []; + } +}; +async function findVSCodeFiles(globalPattern, excludePattern, maxResults = 3) { + try { + const excluded = excludePattern || "**/{.*,node_modules,snap*}/**"; + const token = new CancellationTokenSource(); + setTimeout(() => { + token.cancel(); + }, 2e4); + const files = await workspace.findFiles(globalPattern, excluded, maxResults, token.token); + return files || []; + } catch { + return []; + } +} +async function decodeVSCodeTextDoc(fileUri) { + try { + const bytes = await workspace.fs.readFile(fileUri); + const decoded = new TextDecoder("utf-8").decode(bytes); + return decoded; + } catch { + return ""; + } +} +function createVSCodeRelativePath(filePath) { + return workspace.asRelativePath(filePath); +} +async function getCurrentVSCodeDocTextByURI(uri, range) { + try { + const doc = await workspace.openTextDocument(uri); + if (!doc) { + return ""; + } + return doc?.getText(range) || ""; + } catch { + return ""; + } +} +async function getFoldingRanges(uri, type2, getLastItem) { + const foldingRanges = await commands.executeCommand( + "vscode.executeFoldingRangeProvider", + uri + ); + if (type2 === "all") { + return foldingRanges; + } + const kind = type2 === "imports" ? (void 0).Imports : (void 0).Comment; + if (!getLastItem) { + const ranges = foldingRanges?.filter((range) => range.kind === kind); + return ranges; + } + const lastKind = foldingRanges ? (0, import_lodash12.findLast)(foldingRanges, (range) => range.kind === kind) : void 0; + return lastKind ? [lastKind] : []; +} + +// ../lib/shared/src/chat/recipes/custom-prompt.ts +var CustomPrompt = class { + id = "custom-prompt"; + title = "Custom Prompt"; + /** + * Retrieves an Interaction object based on the humanChatInput and RecipeContext provided. + * The Interaction object contains messages from both the human and the assistant, as well as context information. + */ + async getInteraction(commandRunnerID, context2) { + const command = context2.editor.controllers?.command?.getCommand(commandRunnerID); + if (!command) { + const errorMessage = "Invalid command -- command not found."; + return newInteractionWithError(errorMessage); + } + const isChatQuestion = command?.slashCommand === "/ask"; + const contextConfig = command?.context || defaultCodyPromptContext; + const selection = contextConfig?.selection ? await context2.editor.getActiveTextEditorSmartSelection() : context2.editor.getActiveTextEditorSelectionOrVisibleContent(); + const commandAdditionalInput = command.additionalInput; + const promptText = commandAdditionalInput ? `${command.prompt} +${commandAdditionalInput}` : command.prompt; + const commandName = isChatQuestion ? promptText : command.slashCommand || promptText; + const source2 = getCommandEventSource(command); + if (!promptText) { + const errorMessage = "Please enter a valid prompt for the custom command."; + return newInteractionWithError(errorMessage, promptText || ""); + } + if (contextConfig?.selection && !selection?.selectedText) { + const errorMessage = `__${commandName}__ requires highlighted code. Please select some code in your editor and try again.`; + return newInteractionWithError(errorMessage, commandName); + } + const text = getHumanLLMText(promptText, selection?.fileName); + const commandOutput = command.context?.output; + const contextFiles = command.contextFiles; + const displayText = contextFiles?.length ? createDisplayTextWithFileLinks(contextFiles, promptText) : createDisplayTextWithFileSelection( + commandAdditionalInput ? `${commandName} ${commandAdditionalInput}` : commandName, + selection + ); + const truncatedText = truncateText(text, MAX_HUMAN_INPUT_TOKENS); + if (selection && isOnlySelectionRequired(contextConfig)) { + const contextMessages2 = Promise.resolve(getCurrentFileContextFromEditorSelection(selection)); + return newInteraction({ text, displayText, contextMessages: contextMessages2, source: source2 }); + } + const contextMessages = this.getContextMessages( + promptText, + context2.editor, + context2.codebaseContext, + contextConfig, + selection, + context2.userInputContextFiles, + commandOutput + ); + return newInteraction({ text: truncatedText, displayText, contextMessages, source: source2 }); + } + async getContextMessages(promptText, editor, codebaseContext, promptContext, selection, contextFiles, commandOutput) { + const contextMessages = []; + const workspaceRootUri2 = editor.getWorkspaceRootUri(); + const isUnitTestRequest = extractTestType(promptText) === "unit"; + if (promptContext.none) { + return []; + } + if (promptContext.codebase) { + const codebaseMessages = await codebaseContext.getContextMessages(promptText, numResults); + contextMessages.push(...codebaseMessages); + } + if (promptContext.openTabs) { + const openTabsMessages = await getEditorOpenTabsContext(); + contextMessages.push(...openTabsMessages); + } + if (promptContext.currentDir) { + const currentDirMessages = await getCurrentDirContext(isUnitTestRequest); + contextMessages.push(...currentDirMessages); + } + if (promptContext.directoryPath) { + const dirMessages = await getEditorDirContext(promptContext.directoryPath, selection?.fileName); + contextMessages.push(...dirMessages); + } + if (promptContext.filePath) { + const fileMessages = await getFilePathContext(promptContext.filePath); + contextMessages.push(...fileMessages); + } + if (isUnitTestRequest && contextMessages.length === 0) { + if (selection?.fileName) { + const importsContext = await this.getUnitTestContextMessages(selection, workspaceRootUri2); + contextMessages.push(...importsContext); + } + } + if (promptContext.currentFile || promptContext.selection !== false) { + if (selection) { + const currentFileMessages = getCurrentFileContextFromEditorSelection(selection); + contextMessages.push(...currentFileMessages); + } + } + if (promptContext.command && commandOutput) { + const outputMessages = getTerminalOutputContext(commandOutput); + contextMessages.push(...outputMessages); + } + if (contextFiles?.length) { + const contextFileMessages = await ChatQuestion.getContextFilesContext(editor, contextFiles); + contextMessages.push(...contextFileMessages); + } + const maxResults = Math.floor((NUM_CODE_RESULTS + NUM_TEXT_RESULTS) / 2) * 2; + return contextMessages.slice(-maxResults * 2); + } + async getUnitTestContextMessages(selection, workspaceRootUri2) { + const contextMessages = []; + if (workspaceRootUri2) { + const rootFileNames = await getDirectoryFileListContext(workspaceRootUri2, true); + contextMessages.push(...rootFileNames); + } + if (selection?.fileName && getFileExtension(selection?.fileName).match(/ts|js/)) { + const packageJson = await getPackageJsonContext(selection?.fileName); + contextMessages.push(...packageJson); + } + if (selection?.fileName) { + const importsContext = await getCurrentFileImportsContext(); + contextMessages.push(...importsContext); + } + return contextMessages; + } +}; + +// ../lib/shared/src/chat/recipes/inline-touch.ts +var InlineTouch = class _InlineTouch { + constructor(debug) { + this.debug = debug; + } + id = "inline-touch"; + title = "Inline Touch"; + workspacePath = workspace.workspaceFolders?.[0]?.uri; + async getInteraction(humanChatInput, context2) { + const selection = context2.editor.getActiveTextEditorSelection() || context2.editor.controllers?.inline?.selection; + if (!selection || !this.workspacePath) { + await context2.editor.controllers?.inline?.error(); + await context2.editor.showWarningMessage("Failed to start Inline Chat: empty selection."); + return null; + } + const humanInput = humanChatInput.trim() || (await this.getInstructionFromInput()).trim(); + if (!humanInput) { + await context2.editor.controllers?.inline?.error(); + await context2.editor.showWarningMessage("Failed to start Inline Chat: empty input."); + return null; + } + const currentFilePath2 = `${this.workspacePath.fsPath}/${selection.fileName}`; + const currentDir = currentFilePath2.replace(/\/[^/]+$/, ""); + this.debug("InlineTouch:currentDir", "currentDir", currentDir); + const newFileName = commandRegex.noTest.test(humanInput) ? currentFilePath2.replace(/(\.[^./]+)$/, ".cody$1") : currentFilePath2.replace(/(\.[^./]+)$/, ".test$1"); + const newFsPath = newFileName || await this.getNewFileNameFromInput(selection.fileName, currentDir); + if (!newFsPath || !currentDir) { + return null; + } + const fileUri = Uri.file(newFsPath); + const truncatedText = truncateText(humanInput, MAX_HUMAN_INPUT_TOKENS); + const MAX_RECIPE_CONTENT_TOKENS = MAX_RECIPE_INPUT_TOKENS + MAX_RECIPE_SURROUNDING_TOKENS * 2; + const truncatedSelectedText = truncateText(selection.selectedText, MAX_RECIPE_CONTENT_TOKENS); + const prompt2 = _InlineTouch.newFilePrompt; + const promptText = prompt2.replace("{newFileName}", newFsPath).replace("{humanInput}", truncatedText).replace("{selectedText}", truncatedSelectedText).replace("{fileName}", selection.fileName); + const displayText = this.getHumanDisplayText(humanInput, selection.fileName); + context2.responseMultiplexer.sub( + "selection", + new BufferedBotResponseSubscriber(async (content) => { + if (!content) { + await context2.editor.controllers?.inline?.error(); + await context2.editor.showWarningMessage( + "Cody did not suggest any code updates. Please try again with a different question." + ); + return; + } + const workspaceEditor = new WorkspaceEdit(); + workspaceEditor.createFile(fileUri, { ignoreIfExists: true }); + await workspace.applyEdit(workspaceEditor); + this.debug("InlineTouch:workspaceEditor", "createFile", fileUri); + await this.addContentToNewFile(workspaceEditor, fileUri, content); + this.debug("InlineTouch:responseMultiplexer", "BufferedBotResponseSubscriber", content); + }) + ); + return Promise.resolve( + new Interaction( + { + speaker: "human", + text: promptText, + displayText + }, + { + speaker: "assistant", + prefix: "Working on it! I will show you the new file when it is ready.\n\n" + }, + this.getContextMessages(selection, currentDir), + [] + ) + ); + } + async addContentToNewFile(workspaceEditor, filePath, content) { + const textDocument = await workspace.openTextDocument(filePath); + workspaceEditor.insert(filePath, new Position(textDocument.lineCount + 1, 0), contentSanitizer(content)); + await workspace.applyEdit(workspaceEditor); + await textDocument.save(); + await window2.showTextDocument(filePath); + } + /** + * ====================================================== + * Prompt Template for New File + * ====================================================== + */ + static newFilePrompt = ` + I am currently looking at this selected code from {fileName}: + \`\`\` + {selectedText} + \`\`\` + + Help me with creating content for a new file based on the selected code. + - {humanInput} + + ## Instruction + - Follow my instructions to produce new code for the new file called {newFileName}. + - Think carefully and use the shared context as reference before produce the new code + - Make sure the new code works with the shared context and the selected code. + - Use the same framework, language and style as the shared context that are also from current directory I am working on. + - Put all new content inside tags. + - I only want to see the new code enclosed with the tags only if you understand my instructions. + - Do not enclose any part of your answer with tags if you are not sure about the answer. + - Only provide me with the code inside and nothing else. + - Do not enclose your answer with markdowns. + ## Guidelines for the new file + - Include all the import statements that are required for the new code to work. + - If there are already content in the file with the same name, the new code will be appended to the file. + - If my selected code is empty, it means I am working in an empty file. + - Do not remove code that is being used by the the shared files. + - Do not suggest code that are not related to any of the shared context. + - Do not make up code, including function names, that could break the selected code. + `; + // Prompt template for displaying the prompt to users in chat view + static displayPrompt = ` + + File: `; + // ======================================================== // + // GET CONTEXT // + // ======================================================== // + async getContextMessages(selection, currentDir) { + const contextMessages = []; + const selectedContext = ChatQuestion.getEditorSelectionContext(selection); + const currentDirContext = await getEditorDirContext(currentDir, selection.fileName, true); + contextMessages.push(...selectedContext, ...currentDirContext); + if (contextMessages.length < 10) { + const tabsContext = await getEditorOpenTabsContext(currentDir); + contextMessages.push(...tabsContext); + } + return contextMessages.slice(-10); + } + // ======================================================== // + // HELPERS // + // ======================================================== // + // Get display text for human + getHumanDisplayText(humanChatInput, fileName) { + return "**\u2728Touch\u2728** " + humanChatInput + _InlineTouch.displayPrompt + fileName; + } + async getInstructionFromInput() { + const humanInput = await window2.showInputBox({ + prompt: "Enter your instructions for Cody to create a new file based on the selected code:", + placeHolder: "ex. create unit tests for the selected code", + validateInput: (input) => { + if (!input) { + return "Please enter instructions."; + } + return null; + } + }); + return humanInput || ""; + } + async getNewFileNameFromInput(fileName, currentDir) { + const newFileName = await window2.showInputBox({ + prompt: "Enter a new file name (with extension):", + value: fileName, + validateInput: (input) => { + if (!input) { + return "Please enter a file name."; + } + if (!input.includes(".")) { + return "Please enter a file name with extension."; + } + return null; + } + }); + return `${currentDir}/${newFileName}`; + } +}; + +// ../lib/shared/src/chat/recipes/inline-chat.ts +var InlineChat = class _InlineChat { + constructor(debug) { + this.debug = debug; + } + id = "inline-chat"; + title = "Inline Chat"; + async getInteraction(humanChatInput, context2) { + const source2 = this.id; + if (commandRegex.touch.test(humanChatInput)) { + return new InlineTouch(this.debug).getInteraction(humanChatInput.replace(commandRegex.touch, ""), context2); + } + if (commandRegex.edit.test(humanChatInput)) { + return new Fixup().getInteraction(humanChatInput.replace(commandRegex.edit, ""), context2); + } + const selection = context2.editor.getActiveTextEditorSelection(); + if (!humanChatInput || !selection) { + await context2.editor.showWarningMessage("Failed to start Inline Chat: empty input or selection."); + return null; + } + const truncatedText = truncateText(humanChatInput, MAX_HUMAN_INPUT_TOKENS); + const MAX_RECIPE_CONTENT_TOKENS = MAX_RECIPE_INPUT_TOKENS + MAX_RECIPE_SURROUNDING_TOKENS * 2; + const truncatedSelectedText = truncateText(selection.selectedText, MAX_RECIPE_CONTENT_TOKENS); + const promptText = _InlineChat.prompt.replace("{humanInput}", truncatedText).replace("{selectedText}", truncatedSelectedText).replace("{fileName}", selection.fileName); + const displayText = humanChatInput + _InlineChat.displayPrompt.replace("{selectedText}", selection.selectedText); + return newInteraction({ + text: promptText, + displayText, + source: source2, + contextMessages: this.getContextMessages(truncatedText, context2.codebaseContext, selection, context2.editor) + }); + } + // Prompt Templates + static prompt = ` + I have questions about this part of the code from {fileName}: + \`\`\` + {selectedText} + \`\`\` + + As my coding assistant, please help me with my questions: + {humanInput} + + ## Instruction + - Do not enclose your answer with tags. + - Do not remove code that might be being used by the other part of the code that was not shared. + - Your answers and suggestions should based on the provided context only. + - You may make references to other part of the shared code. + - Do not suggest code that are not related to any of the shared context. + - Do not suggest anything that would break the working code. + `; + // Prompt template for displaying the prompt to users in chat view + static displayPrompt = ` + +\`\`\` +{selectedText} +\`\`\` +`; + // Get context from editor + async getContextMessages(text, codebaseContext, selection, editor) { + const contextMessages = []; + contextMessages.push(...ChatQuestion.getEditorSelectionContext(selection)); + contextMessages.push(...ChatQuestion.getEditorContext(editor)); + const extraContext = await codebaseContext.getContextMessages(text, { + numCodeResults: 5, + numTextResults: 3 + }); + contextMessages.push(...extraContext); + return contextMessages; + } +}; + +// ../lib/shared/src/chat/recipes/next-questions.ts +var NextQuestions = class { + id = "next-questions"; + title = "Next Questions"; + async getInteraction(humanChatInput, context2) { + const source2 = this.id; + const promptPrefix = "Assume I have an answer to the following request:"; + const promptSuffix = "Generate one to three follow-up discussion topics that the human can ask you to uphold the conversation. Keep the topics very concise (try not to exceed 5 words per topic) and phrase them as questions."; + const maxTokenCount = MAX_AVAILABLE_PROMPT_LENGTH - (promptPrefix.length + promptSuffix.length) / CHARS_PER_TOKEN; + const truncatedText = truncateText(humanChatInput, maxTokenCount); + const promptMessage = `${promptPrefix} + +\`\`\` +${truncatedText} +\`\`\` + +${promptSuffix}`; + const assistantResponsePrefix = "Sure, here are great follow-up discussion topics and learning ideas:\n\n - "; + return newInteraction({ + text: promptMessage, + displayText: promptMessage, + source: source2, + assistantPrefix: assistantResponsePrefix, + assistantText: assistantResponsePrefix, + contextMessages: this.getContextMessages( + truncatedText, + context2.editor, + context2.intentDetector, + context2.codebaseContext + ) + }); + } + async getContextMessages(text, editor, intentDetector, codebaseContext) { + const contextMessages = []; + const isCodebaseContextRequired = await intentDetector.isCodebaseContextRequired(text); + if (isCodebaseContextRequired) { + const codebaseContextMessages = await codebaseContext.getContextMessages(text, numResults); + contextMessages.push(...codebaseContextMessages); + } + if (isCodebaseContextRequired || intentDetector.isEditorContextRequired(text)) { + contextMessages.push(...this.getEditorContext(editor)); + } + return contextMessages; + } + getEditorContext(editor) { + const visibleContent = editor.getActiveTextEditorVisibleContent(); + if (!visibleContent) { + return []; + } + const truncatedContent = truncateText(visibleContent.content, MAX_CURRENT_FILE_TOKENS); + return getContextMessageWithResponse( + populateCurrentEditorContextTemplate(truncatedContent, visibleContent.fileName, visibleContent.repoName), + visibleContent + ); + } +}; + +// ../vscode/src/extension.web.ts +var VSCODE_WEB_RECIPES = [ + new ChatQuestion(logDebug), + new ExplainCodeDetailed(), + new ExplainCodeHighLevel(), + new FindCodeSmells(), + new Fixup(), + new GenerateDocstring(), + new GenerateTest(), + new ImproveVariableNames(), + new CustomPrompt(), + new InlineChat(logDebug), + new InlineTouch(logDebug), + new NextQuestions(), + new TranslateToLanguage(), + new ContextSearch() +]; + +// ../vscode/src/fetch.node.ts +var import_http4 = __toESM(require("http")); +var import_https3 = __toESM(require("https")); +var import_socks_proxy_agent = __toESM(require_dist3()); +var nodeModules = "_VSCODE_NODE_MODULES"; +var proxyAgentPath = "@vscode/proxy-agent/out/agent"; +var pacProxyAgent = "PacProxyAgent"; +var httpAgent = new import_http4.default.Agent({ keepAlive: true, keepAliveMsecs: 6e4 }); +var httpsAgent = new import_https3.default.Agent({ keepAlive: true, keepAliveMsecs: 6e4 }); +var socksProxyAgent; +function getCustomAgent({ proxy: proxy2 }) { + return ({ protocol: protocol2 }) => { + if (proxy2?.startsWith("socks") && !socksProxyAgent) { + socksProxyAgent = new import_socks_proxy_agent.SocksProxyAgent(proxy2, { + keepAlive: true, + keepAliveMsecs: 6e4 + }); + return socksProxyAgent; + } + if (protocol2 === "http:") { + return httpAgent; + } + return httpsAgent; + }; +} +function setCustomAgent(configuration2) { + agent2.current = getCustomAgent(configuration2); + return agent2.current; +} +function initializeNetworkAgent() { + const customAgent = setCustomAgent(getConfiguration()); + try { + const PacProxyAgent = globalThis?.[nodeModules]?.[proxyAgentPath]?.[pacProxyAgent] ?? void 0; + if (PacProxyAgent) { + const originalConnect = PacProxyAgent.prototype.connect; + PacProxyAgent.prototype.connect = function(req, opts) { + try { + const connectionHeader = req.getHeader("connection"); + if (connectionHeader === "keep-alive" || Array.isArray(connectionHeader) && connectionHeader.includes("keep-alive")) { + this.opts.originalAgent = customAgent(opts); + return originalConnect.call(this, req, opts); + } + return originalConnect.call(this, req, opts); + } catch { + return originalConnect.call(this, req, opts); + } + }; + } + } catch (error) { + } +} + +// ../vscode/src/local-context/filename-context-fetcher.ts +var import_child_process6 = require("child_process"); +var path18 = __toESM(require("path")); +var import_lodash13 = __toESM(require_lodash()); +var FilenameContextFetcher = class { + constructor(rgPath, editor, chatClient) { + this.rgPath = rgPath; + this.editor = editor; + this.chatClient = chatClient; + } + /** + * Returns pieces of context relevant for the given query. Uses a filename search approach + * @param query user query + * @param numResults the number of context results to return + * @returns a list of context results, sorted in *reverse* order (that is, + * the most important result appears at the bottom) + */ + async getContext(query, numResults2) { + const time0 = performance.now(); + const rootPath2 = this.editor.getWorkspaceRootUri()?.fsPath; + if (!rootPath2) { + return []; + } + const time1 = performance.now(); + const filenameFragments = await this.queryToFileFragments(query); + const time2 = performance.now(); + const unsortedMatchingFiles = await this.getFilenames(rootPath2, filenameFragments, 3); + const time3 = performance.now(); + const specialFragments = ["readme"]; + const allBoostedFiles = []; + let remainingFiles = unsortedMatchingFiles; + let nextRemainingFiles = []; + for (const specialFragment of specialFragments) { + const boostedFiles = []; + for (const fileName of remainingFiles) { + const fileNameLower = fileName.toLocaleLowerCase(); + if (fileNameLower.includes(specialFragment)) { + boostedFiles.push(fileName); + } else { + nextRemainingFiles.push(fileName); + } + } + remainingFiles = nextRemainingFiles; + nextRemainingFiles = []; + allBoostedFiles.push(...boostedFiles.sort((a, b) => a.length - b.length)); + } + const sortedMatchingFiles = allBoostedFiles.concat(remainingFiles).slice(0, numResults2); + const source2 = "filename"; + const type2 = "file"; + const results = await Promise.all( + sortedMatchingFiles.map(async (fileName) => { + const uri = Uri.file(path18.join(rootPath2, fileName)); + const content = (await workspace.openTextDocument(uri)).getText(); + return { + fileName, + content, + uri, + source: source2, + type: type2 + }; + }).reverse() + ); + const time4 = performance.now(); + logDebug( + "FilenameContextFetcher:getContext", + JSON.stringify({ + duration: time4 - time0, + queryToFileFragments: { duration: time2 - time1, fragments: filenameFragments }, + getFilenames: { duration: time3 - time2 } + }), + { verbose: { matchingFiles: unsortedMatchingFiles, results: results.map((r) => r.fileName) } } + ); + return results; + } + async queryToFileFragments(query) { + const filenameFragments = await new Promise((resolve8, reject) => { + let responseText = ""; + this.chatClient.chat( + [ + { + speaker: "human", + text: `Write 3 filename fragments that would be contained by files in a git repository that are relevant to answering the following user query: ${query} Your response should be only a space-delimited list of filename fragments and nothing else.` + } + ], + { + onChange: (text) => { + responseText = text; + }, + onComplete: () => { + resolve8(responseText.split(/\s+/).filter((e) => e.length > 0)); + }, + onError: (message, statusCode) => { + reject(new Error(message)); + } + }, + { + temperature: 0, + fast: true + } + ); + }); + const uniqueFragments = (0, import_lodash13.uniq)(filenameFragments.map((e) => e.toLocaleLowerCase())); + return uniqueFragments; + } + async getFilenames(rootPath2, filenameFragments, maxDepth) { + const searchPattern = "{" + filenameFragments.map((fragment) => `**${fragment}**`).join(",") + "}"; + const rgArgs = [ + "--files", + "--iglob", + searchPattern, + "--crlf", + "--fixed-strings", + "--no-config", + "--no-ignore-global", + `--max-depth=${maxDepth}` + ]; + const results = await new Promise((resolve8, reject) => { + (0, import_child_process6.execFile)( + this.rgPath, + rgArgs, + { + cwd: rootPath2, + maxBuffer: 1024 * 1024 * 1024 + }, + (error, stdout, stderr) => { + if (error?.code === 2) { + reject(new Error(`${error.message}: ${stderr}`)); + } else { + resolve8(stdout); + } + } + ); + }); + return results.split("\n").map((r) => r.trim()).filter((r) => r.length > 0).sort((a, b) => a.length - b.length); + } +}; + +// ../vscode/src/local-context/local-embeddings.ts +function createLocalEmbeddingsController(context2) { + return new LocalEmbeddingsController(context2); +} +var LocalEmbeddingsController = class { + constructor(context2) { + this.context = context2; + } + service; + getService() { + if (!this.service) { + this.service = this.spawnAndBindService(this.context); + } + return this.service; + } + async spawnAndBindService(context2) { + const service = await new Promise((resolve8, reject) => { + spawnBfg(context2, reject).then( + (bfg) => resolve8(bfg), + (error) => { + (0, sentry_exports.captureException)(error); + reject(error); + } + ); + }); + service.registerNotification("embeddings/progress", (obj2) => { + if (!this.statusBar) { + return; + } + if (typeof obj2 === "object") { + if ("Progress" in obj2) { + const percent = Math.floor(100 * obj2.Progress.numItems / obj2.Progress.totalItems); + this.statusBar.text = `$(loading~spin) Cody Embeddings (${percent.toFixed(0)}%)`; + this.statusBar.backgroundColor = void 0; + this.statusBar.show(); + } else if ("Error" in obj2) { + this.statusBar.text = "$(warning) Cody Embeddings"; + this.statusBar.backgroundColor = new ThemeColor("statusBarItem.warningBackground"); + this.statusBar.show(); + } + } else if (obj2 === "Done") { + this.statusBar.text = "$(sparkle) Cody Embeddings"; + this.statusBar.backgroundColor = void 0; + this.statusBar.show(); + if (this.lastRepo) { + this.lastRepo.loadResult = true; + this.statusEvent.fire(this); + } + } else { + logDebug("LocalEmbeddingsController", JSON.stringify(obj2)); + void window2.showInformationMessage(JSON.stringify(obj2)); + } + }); + return service; + } + // ContextStatusProvider implementation + statusEvent = new EventEmitter(); + onDidChangeStatus(callback) { + return this.statusEvent.event(callback); + } + get status() { + if (!this.lastRepo) { + return []; + } + const path30 = this.lastRepo.path; + if (this.lastRepo.loadResult) { + return [ + { + name: path30, + providers: [ + { + kind: "embeddings", + type: "local", + state: "ready" + } + ] + } + ]; + } + return [ + { + name: path30, + providers: [ + { + kind: "embeddings", + type: "local", + state: "unconsented" + } + ] + } + ]; + } + // Interactions with cody-engine + lastRepo; + lastAccessToken; + statusBar; + async setAccessToken(token) { + if (token === this.lastAccessToken) { + return Promise.resolve(); + } + this.lastAccessToken = token; + void (await this.getService()).request("embeddings/set-token", token); + } + async index() { + if (!this.lastRepo?.path || this.lastRepo?.loadResult) { + logDebug("LocalEmbeddingsController", "No repository to index"); + return; + } + const repoPath = this.lastRepo.path; + logDebug("Indexing repository", repoPath); + try { + const model = "openai/text-embedding-ada-002"; + await (await this.getService()).request("embeddings/index", { path: repoPath, model, dimension: 1536 }); + this.statusBar?.dispose(); + this.statusBar = window2.createStatusBarItem( + "cody-local-embeddings", + 2 /* Right */, + 0 + ); + } catch (error) { + logDebug("LocalEmbeddingsController", (0, sentry_exports.captureException)(error)); + } + } + async load(repoPath) { + if (!repoPath) { + return Promise.resolve(false); + } + if (repoPath === this.lastRepo?.path) { + return Promise.resolve(this.lastRepo.loadResult); + } + this.lastRepo = { + path: repoPath, + loadResult: await (await this.getService()).request("embeddings/load", repoPath) + }; + this.statusEvent.fire(this); + return this.lastRepo.loadResult; + } + async query(query) { + return (await this.getService()).request("embeddings/query", query); + } + // LocalEmbeddingsFetcher + async getContext(query, _numResults) { + try { + const results = (await this.query(query)).results; + logDebug("LocalEmbeddingsController", `returning ${results.length} results`); + return results; + } catch (error) { + logDebug("LocalEmbeddingsController", (0, sentry_exports.captureException)(error)); + return []; + } + } +}; + +// ../vscode/src/local-context/local-keyword-context-fetcher.ts +var import_child_process7 = require("child_process"); +var path19 = __toESM(require("path")); +var import_StreamValues = __toESM(require_StreamValues()); +var import_wink_nlp_utils2 = __toESM(require_wink_nlp_utils()); +var source = "keyword"; +var type = "file"; +var fileExtRipgrepParams = [ + "--ignore-case", + "-g", + "*.*", + "-g", + "!.*", + "-g", + "!*.lock", + "-g", + "!*.snap", + "--max-filesize", + "10K", + "--max-depth", + "10" +]; +function regexForTerms(...terms) { + const inner = terms.map((t) => { + if (t.prefix.length >= 4) { + return escapeRegex(t.prefix); + } + return `${escapeRegex(t.stem)}|${t.originals.map((s) => escapeRegex(s)).join("|")}`; + }); + return `(?:${inner.join("|")})`; +} +function longestCommonPrefix(s, t) { + let endIdx = 0; + for (let i = 0; i < s.length && i < t.length; i++) { + if (s[i] !== t[i]) { + break; + } + endIdx = i + 1; + } + return s.slice(0, endIdx); +} +var LocalKeywordContextFetcher = class { + constructor(rgPath, editor, chatClient) { + this.rgPath = rgPath; + this.editor = editor; + this.chatClient = chatClient; + } + /** + * Returns pieces of context relevant for the given query. Uses a keyword-search-based + * approach. + * @param query user query + * @param numResults the number of context results to return + * @returns a list of context results, sorted in *reverse* order (that is, + * the most important result appears at the bottom) + */ + async getContext(query, numResults2) { + const startTime = performance.now(); + const rootPath2 = this.editor.getWorkspaceRootUri()?.fsPath; + if (!rootPath2) { + return []; + } + const filesnamesWithScores = await this.fetchKeywordFiles(rootPath2, query); + const top10 = filesnamesWithScores.slice(0, numResults2); + const messagePairs = await Promise.all( + top10.map(async ({ filename }) => { + const uri = Uri.file(path19.join(rootPath2, filename)); + try { + const content = (await workspace.openTextDocument(uri)).getText(); + return [{ fileName: filename, content, uri, source, type }]; + } catch (error) { + console.error(error); + return []; + } + }) + ); + const searchDuration = performance.now() - startTime; + telemetryService.log("CodyVSCodeExtension:keywordContext:searchDuration", { searchDuration }); + logDebug("LocalKeywordContextFetcher:getContext", JSON.stringify({ searchDuration })); + return messagePairs.reverse().flat(); + } + async userQueryToExpandedKeywords(query) { + const start4 = performance.now(); + const keywords = await new Promise((resolve8, reject) => { + let responseText = ""; + this.chatClient.chat( + [ + { + speaker: "human", + text: `Write 3-5 keywords that you would use to search for code snippets that are relevant to answering the following user query: ${query} Your response should be only a list of space-delimited keywords and nothing else.` + } + ], + { + onChange: (text) => { + responseText = text; + }, + onComplete: () => { + resolve8(responseText.split(/\s+/).filter((e) => e.length > 0)); + }, + onError: (message) => { + reject(new Error(message)); + } + }, + { + temperature: 0, + fast: true + } + ); + }); + const terms = /* @__PURE__ */ new Map(); + for (const kw of keywords) { + const stem = import_wink_nlp_utils2.default.string.stem(kw); + if (terms.has(stem)) { + continue; + } + terms.set(stem, { + count: 1, + originals: [kw], + prefix: longestCommonPrefix(kw.toLowerCase(), stem), + stem + }); + } + logDebug( + "LocalKeywordContextFetcher:userQueryToExpandedKeywords", + JSON.stringify({ duration: performance.now() - start4 }) + ); + return terms; + } + async userQueryToKeywordQuery(query) { + const terms = /* @__PURE__ */ new Map(); + const keywordExpansionStartTime = Date.now(); + const expandedTerms = await this.userQueryToExpandedKeywords(query); + const keywordExpansionDuration = Date.now() - keywordExpansionStartTime; + for (const [stem, term] of expandedTerms) { + if (terms.has(stem)) { + continue; + } + terms.set(stem, term); + } + logDebug( + "LocalKeywordContextFetcher:userQueryToKeywordQuery", + "keyword expansion", + JSON.stringify({ + duration: keywordExpansionDuration, + expandedTerms: [...expandedTerms.values()].map((v) => v.prefix) + }) + ); + const ret2 = [...terms.values()]; + return ret2; + } + // Return context results for the Codebase Context Search recipe + async getSearchContext(query, numResults2) { + const rootPath2 = this.editor.getWorkspaceRootUri()?.fsPath; + if (!rootPath2) { + return []; + } + const stems = (await this.userQueryToKeywordQuery(query)).map((t) => t.prefix.length < 4 ? t.originals[0] : t.prefix).join("|"); + const filesnamesWithScores = await this.fetchKeywordFiles(rootPath2, query); + const topN = filesnamesWithScores.slice(0, numResults2); + const messagePairs = await Promise.all( + topN.map(async ({ filename }) => { + try { + const uri = Uri.file(path19.join(rootPath2, filename)); + const textDocument = await workspace.openTextDocument(uri); + const snippet = textDocument.getText(); + const keywordPattern = new RegExp(stems, "g"); + const matches = snippet.match(keywordPattern); + const keywordIndex = snippet.indexOf(matches ? matches[0] : query); + const startLine = Math.max(0, textDocument.positionAt(keywordIndex).line - 2); + const endLine = startLine + 5; + const content = textDocument.getText(new Range(startLine, 0, endLine, 0)); + return [{ fileName: filename, content, uri, source, type }]; + } catch (error) { + console.error(error); + return []; + } + }) + ); + return messagePairs.flat(); + } + async fetchFileStats(terms, rootPath2) { + const start4 = performance.now(); + const regexQuery = `\\b${regexForTerms(...terms)}`; + const rgArgs = [...fileExtRipgrepParams, "--json", regexQuery, "."]; + const proc2 = (0, import_child_process7.spawn)(this.rgPath, rgArgs, { + cwd: rootPath2, + stdio: ["ignore", "pipe", process.stderr], + windowsHide: true + }); + const fileTermCounts = {}; + const objectFilter = (assembler) => { + if (assembler.key === null && assembler.stack.length === 0 && assembler.current.type) { + return assembler.current.type === "end"; + } + return void 0; + }; + await new Promise((resolve8, reject) => { + try { + proc2.stdout.pipe(import_StreamValues.default.withParser({ objectFilter })).on("data", (data) => { + try { + const typedData = data; + switch (typedData.value.type) { + case "end": { + let filename = typedData.value.data.path.text; + if (filename.startsWith(`.${path19.sep}`)) { + filename = filename.slice(2); + } + if (!fileTermCounts[filename]) { + fileTermCounts[filename] = { bytesSearched: 0 }; + } + fileTermCounts[filename].bytesSearched = typedData.value.data.stats.bytes_searched; + break; + } + } + } catch (error) { + reject(error); + } + }).on("end", () => resolve8()); + } catch (error) { + reject(error); + } + }); + logDebug("fetchFileStats", JSON.stringify({ duration: performance.now() - start4 })); + return fileTermCounts; + } + async fetchFileMatches(queryTerms, rootPath2) { + const start4 = performance.now(); + const termFileCountsArr = await Promise.all( + queryTerms.map(async (term) => { + const rgArgs = [ + ...fileExtRipgrepParams, + "--count-matches", + "--stats", + `\\b${regexForTerms(term)}`, + "." + ]; + const out2 = await new Promise((resolve8, reject) => { + (0, import_child_process7.execFile)( + this.rgPath, + rgArgs, + { + cwd: rootPath2, + maxBuffer: 1024 * 1024 * 1024, + timeout: 1e3 * 30 + // timeout in 30secs + }, + (error, stdout, stderr) => { + if (error?.code === 2) { + reject(new Error(`${error.message}: ${stderr}`)); + } else { + resolve8(stdout); + } + } + ); + }); + const fileCounts = {}; + const lines2 = out2.split("\n"); + let filesSearched = -1; + for (const line of lines2) { + const terms = line.split(":"); + if (terms.length !== 2) { + const matches = /^(\d+) files searched$/.exec(line); + if (matches && matches.length === 2) { + try { + filesSearched = parseInt(matches[1], 10); + } catch { + console.error(`failed to parse number of files matched from string: ${matches[1]}`); + } + } + continue; + } + try { + let filename = terms[0]; + if (filename.startsWith(`.${path19.sep}`)) { + filename = filename.slice(2); + } + const count = parseInt(terms[1], 10); + fileCounts[filename] = count; + } catch { + console.error(`could not parse count from ${terms[1]}`); + } + } + return { fileCounts, filesSearched }; + }) + ); + logDebug("LocalKeywordContextFetcher.fetchFileMatches", JSON.stringify({ duration: performance.now() - start4 })); + let totalFilesSearched = -1; + for (const { filesSearched } of termFileCountsArr) { + if (totalFilesSearched >= 0 && totalFilesSearched !== filesSearched) { + throw new Error("filesSearched did not match"); + } + totalFilesSearched = filesSearched; + } + const fileTermCounts = {}; + const termTotalFiles = {}; + for (let i = 0; i < queryTerms.length; i++) { + const term = queryTerms[i]; + const fileCounts = termFileCountsArr[i].fileCounts; + termTotalFiles[term.stem] = Object.keys(fileCounts).length; + for (const [filename, count] of Object.entries(fileCounts)) { + if (!fileTermCounts[filename]) { + fileTermCounts[filename] = {}; + } + fileTermCounts[filename][term.stem] = count; + } + } + return { + totalFiles: totalFilesSearched, + termTotalFiles, + fileTermCounts + }; + } + async fetchKeywordFiles(rootPath2, rawQuery) { + const query = await this.userQueryToKeywordQuery(rawQuery); + const fetchFilesStart = performance.now(); + const fileMatchesPromise = this.fetchFileMatches(query, rootPath2); + const fileStatsPromise = this.fetchFileStats(query, rootPath2); + const fileMatches = await fileMatchesPromise; + const fileStats = await fileStatsPromise; + const fetchFilesDuration = performance.now() - fetchFilesStart; + logDebug("LocalKeywordContextFetcher:fetchKeywordFiles", JSON.stringify({ fetchFilesDuration })); + const { fileTermCounts, termTotalFiles, totalFiles } = fileMatches; + const idfDict = idf(termTotalFiles, totalFiles); + const activeTextEditor = this.editor.getActiveTextEditor(); + const activeFilename = activeTextEditor ? path19.normalize(workspace.asRelativePath(activeTextEditor.filePath)) : void 0; + const querySizeBytes = query.flatMap((t) => t.originals.map((orig) => (orig.length + 1) * t.count)).reduce((a, b) => a + b, 0); + const queryStems = query.map(({ stem }) => stem); + const queryTf = tf( + queryStems, + Object.fromEntries(query.map(({ stem, count }) => [stem, count])), + querySizeBytes + ); + const queryVec = tfidf(queryStems, queryTf, idfDict); + const filenamesWithScores = Object.entries(fileTermCounts).flatMap(([filename, fileTermCounts2]) => { + if (activeFilename === filename) { + return []; + } + if (fileStats[filename] === void 0) { + throw new Error(`filename ${filename} missing from fileStats`); + } + const tfVec = tf(queryStems, fileTermCounts2, fileStats[filename].bytesSearched); + const tfidfVec = tfidf(queryStems, tfVec, idfDict); + const cosineScore = cosine(tfidfVec, queryVec); + let { score, scoreComponents } = idfLogScore(queryStems, fileTermCounts2, idfDict); + const b = fileStats[filename].bytesSearched; + if (b > 1e4) { + score *= 0.1; + } + return [ + { + filename, + cosineScore, + termCounts: fileTermCounts2, + tfVec, + idfDict, + score, + scoreComponents + } + ]; + }).sort(({ score: score1 }, { score: score2 }) => score2 - score1); + return uniques(filenamesWithScores); + } +}; +function idfLogScore(terms, termCounts, idfDict) { + let score = 0; + const scoreComponents = {}; + for (const term of terms) { + const ct = termCounts[term] || 0; + const logScore = ct === 0 ? 0 : Math.log10(ct) + 1; + const idfLogScore2 = (idfDict[term] || 1) * logScore; + score += idfLogScore2; + scoreComponents[term] = idfLogScore2; + } + return { score, scoreComponents }; +} +function cosine(v1, v2) { + if (v1.length !== v2.length) { + throw new Error(`v1.length !== v2.length ${v1.length} !== ${v2.length}`); + } + let dotProd = 0; + let v1SqMag = 0; + let v2SqMag = 0; + for (let i = 0; i < v1.length; i++) { + dotProd += v1[i] * v2[i]; + v1SqMag += v1[i] * v1[i]; + v2SqMag += v2[i] * v2[i]; + } + return dotProd / (Math.sqrt(v1SqMag) * Math.sqrt(v2SqMag)); +} +function tfidf(terms, tf2, idf2) { + if (terms.length !== tf2.length) { + throw new Error(`terms.length !== tf.length ${terms.length} !== ${tf2.length}`); + } + const tfidf2 = tf2.slice(0); + for (let i = 0; i < tfidf2.length; i++) { + if (idf2[terms[i]] === void 0) { + throw new Error(`term ${terms[i]} did not exist in idf dict`); + } + tfidf2[i] *= idf2[terms[i]]; + } + return tfidf2; +} +function tf(terms, termCounts, fileSize) { + return terms.map((term) => (termCounts[term] || 0) / fileSize); +} +function idf(termTotalFiles, totalFiles) { + const logTotal = Math.log(totalFiles); + const e = Object.entries(termTotalFiles).map(([term, count]) => [term, logTotal - Math.log(count)]); + return Object.fromEntries(e); +} +function escapeRegex(s) { + return s.replaceAll(/[$()*+./?[\\\]^{|}-]/g, "\\$&"); +} +function uniques(results) { + const seen = /* @__PURE__ */ new Set(); + return results.filter(({ filename }) => { + if (seen.has(filename)) { + return false; + } + seen.add(filename); + return true; + }); +} - (arguments ("(") @arguments.cursor) @arguments +// ../vscode/src/local-context/symf.ts +var import_node_child_process = require("node:child_process"); +var import_node_fs = __toESM(require("node:fs")); +var import_promises = require("node:fs/promises"); +var import_node_os2 = __toESM(require("node:os")); +var import_node_path2 = __toESM(require("node:path")); +var import_node_util = require("node:util"); - ; Atomic intents - ;-------------------------------- +// ../node_modules/.pnpm/async-mutex@0.4.0/node_modules/async-mutex/index.mjs +var E_TIMEOUT = new Error("timeout while waiting for mutex to become available"); +var E_ALREADY_LOCKED = new Error("mutex already locked"); +var E_CANCELED = new Error("request for lock canceled"); +var __awaiter$2 = function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve8) { + resolve8(value); + }); + } + return new (P || (P = Promise))(function(resolve8, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve8(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var Semaphore = class { + constructor(_value, _cancelError = E_CANCELED) { + this._value = _value; + this._cancelError = _cancelError; + this._weightedQueues = []; + this._weightedWaiters = []; + } + acquire(weight = 1) { + if (weight <= 0) + throw new Error(`invalid weight ${weight}: must be positive`); + return new Promise((resolve8, reject) => { + if (!this._weightedQueues[weight - 1]) + this._weightedQueues[weight - 1] = []; + this._weightedQueues[weight - 1].push({ resolve: resolve8, reject }); + this._dispatch(); + }); + } + runExclusive(callback, weight = 1) { + return __awaiter$2(this, void 0, void 0, function* () { + const [value, release] = yield this.acquire(weight); + try { + return yield callback(value); + } finally { + release(); + } + }); + } + waitForUnlock(weight = 1) { + if (weight <= 0) + throw new Error(`invalid weight ${weight}: must be positive`); + return new Promise((resolve8) => { + if (!this._weightedWaiters[weight - 1]) + this._weightedWaiters[weight - 1] = []; + this._weightedWaiters[weight - 1].push(resolve8); + this._dispatch(); + }); + } + isLocked() { + return this._value <= 0; + } + getValue() { + return this._value; + } + setValue(value) { + this._value = value; + this._dispatch(); + } + release(weight = 1) { + if (weight <= 0) + throw new Error(`invalid weight ${weight}: must be positive`); + this._value += weight; + this._dispatch(); + } + cancel() { + this._weightedQueues.forEach((queue) => queue.forEach((entry) => entry.reject(this._cancelError))); + this._weightedQueues = []; + } + _dispatch() { + var _a; + for (let weight = this._value; weight > 0; weight--) { + const queueEntry = (_a = this._weightedQueues[weight - 1]) === null || _a === void 0 ? void 0 : _a.shift(); + if (!queueEntry) + continue; + const previousValue = this._value; + const previousWeight = weight; + this._value -= weight; + weight = this._value + 1; + queueEntry.resolve([previousValue, this._newReleaser(previousWeight)]); + } + this._drainUnlockWaiters(); + } + _newReleaser(weight) { + let called = false; + return () => { + if (called) + return; + called = true; + this.release(weight); + }; + } + _drainUnlockWaiters() { + for (let weight = this._value; weight > 0; weight--) { + if (!this._weightedWaiters[weight - 1]) + continue; + this._weightedWaiters[weight - 1].forEach((waiter) => waiter()); + this._weightedWaiters[weight - 1] = []; + } + } +}; +var __awaiter$1 = function(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve8) { + resolve8(value); + }); + } + return new (P || (P = Promise))(function(resolve8, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve8(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var Mutex = class { + constructor(cancelError) { + this._semaphore = new Semaphore(1, cancelError); + } + acquire() { + return __awaiter$1(this, void 0, void 0, function* () { + const [, releaser] = yield this._semaphore.acquire(); + return releaser; + }); + } + runExclusive(callback) { + return this._semaphore.runExclusive(() => callback()); + } + isLocked() { + return this._semaphore.isLocked(); + } + waitForUnlock() { + return this._semaphore.waitForUnlock(); + } + release() { + if (this._semaphore.isLocked()) + this._semaphore.release(); + } + cancel() { + return this._semaphore.cancel(); + } +}; - (import_statement - source: (string) @import.source!) +// ../node_modules/.pnpm/mkdirp@3.0.1/node_modules/mkdirp/dist/mjs/mkdirp-manual.js +var import_path16 = require("path"); - (comment) @comment! - (arguments (_) @argument!) - (formal_parameters) @parameters! - (formal_parameters (_) @parameter!) - (return_statement) @return_statement! - (return_statement (_) @return_statement.value!) -`,kSe=QI.default` - ${veA} +// ../node_modules/.pnpm/mkdirp@3.0.1/node_modules/mkdirp/dist/mjs/opts-arg.js +var import_fs5 = require("fs"); +var optsArg = (opts) => { + if (!opts) { + opts = { mode: 511 }; + } else if (typeof opts === "object") { + opts = { mode: 511, ...opts }; + } else if (typeof opts === "number") { + opts = { mode: opts }; + } else if (typeof opts === "string") { + opts = { mode: parseInt(opts, 8) }; + } else { + throw new TypeError("invalid options argument"); + } + const resolved = opts; + const optsFs = opts.fs || {}; + opts.mkdir = opts.mkdir || optsFs.mkdir || import_fs5.mkdir; + opts.mkdirAsync = opts.mkdirAsync ? opts.mkdirAsync : async (path30, options2) => { + return new Promise((res, rej) => resolved.mkdir(path30, options2, (er, made) => er ? rej(er) : res(made))); + }; + opts.stat = opts.stat || optsFs.stat || import_fs5.stat; + opts.statAsync = opts.statAsync ? opts.statAsync : async (path30) => new Promise((res, rej) => resolved.stat(path30, (err2, stats) => err2 ? rej(err2) : res(stats))); + opts.statSync = opts.statSync || optsFs.statSync || import_fs5.statSync; + opts.mkdirSync = opts.mkdirSync || optsFs.mkdirSync || import_fs5.mkdirSync; + return resolved; +}; - (jsx_attribute (_) @jsx_attribute.value!) -`,I_A=QI.default` - ${veA} +// ../node_modules/.pnpm/mkdirp@3.0.1/node_modules/mkdirp/dist/mjs/mkdirp-manual.js +var mkdirpManualSync = (path30, options2, made) => { + const parent = (0, import_path16.dirname)(path30); + const opts = { ...optsArg(options2), recursive: false }; + if (parent === path30) { + try { + return opts.mkdirSync(path30, opts); + } catch (er) { + const fer = er; + if (fer && fer.code !== "EISDIR") { + throw er; + } + return; + } + } + try { + opts.mkdirSync(path30, opts); + return made || path30; + } catch (er) { + const fer = er; + if (fer && fer.code === "ENOENT") { + return mkdirpManualSync(path30, opts, mkdirpManualSync(parent, opts, made)); + } + if (fer && fer.code !== "EEXIST" && fer && fer.code !== "EROFS") { + throw er; + } + try { + if (!opts.statSync(path30).isDirectory()) + throw er; + } catch (_) { + throw er; + } + } +}; +var mkdirpManual = Object.assign(async (path30, options2, made) => { + const opts = optsArg(options2); + opts.recursive = false; + const parent = (0, import_path16.dirname)(path30); + if (parent === path30) { + return opts.mkdirAsync(path30, opts).catch((er) => { + const fer = er; + if (fer && fer.code !== "EISDIR") { + throw er; + } + }); + } + return opts.mkdirAsync(path30, opts).then(() => made || path30, async (er) => { + const fer = er; + if (fer && fer.code === "ENOENT") { + return mkdirpManual(parent, opts).then((made2) => mkdirpManual(path30, opts, made2)); + } + if (fer && fer.code !== "EEXIST" && fer.code !== "EROFS") { + throw er; + } + return opts.statAsync(path30).then((st) => { + if (st.isDirectory()) { + return made; + } else { + throw er; + } + }, () => { + throw er; + }); + }); +}, { sync: mkdirpManualSync }); - ; Cursor dependent intents - ;-------------------------------- +// ../node_modules/.pnpm/mkdirp@3.0.1/node_modules/mkdirp/dist/mjs/mkdirp-native.js +var import_path18 = require("path"); - (function_signature - name: (identifier) @function.name! - parameters: (formal_parameters ("(") @function.parameters.cursor) @function.parameters) +// ../node_modules/.pnpm/mkdirp@3.0.1/node_modules/mkdirp/dist/mjs/find-made.js +var import_path17 = require("path"); +var findMade = async (opts, parent, path30) => { + if (path30 === parent) { + return; + } + return opts.statAsync(parent).then( + (st) => st.isDirectory() ? path30 : void 0, + // will fail later + // will fail later + (er) => { + const fer = er; + return fer && fer.code === "ENOENT" ? findMade(opts, (0, import_path17.dirname)(parent), parent) : void 0; + } + ); +}; +var findMadeSync = (opts, parent, path30) => { + if (path30 === parent) { + return void 0; + } + try { + return opts.statSync(parent).isDirectory() ? path30 : void 0; + } catch (er) { + const fer = er; + return fer && fer.code === "ENOENT" ? findMadeSync(opts, (0, import_path17.dirname)(parent), parent) : void 0; + } +}; - (interface_declaration - name: (type_identifier) @type_declaration.name! - body: (object_type ("{") @type_declaration.body.cursor) @type_declaration.body) +// ../node_modules/.pnpm/mkdirp@3.0.1/node_modules/mkdirp/dist/mjs/mkdirp-native.js +var mkdirpNativeSync = (path30, options2) => { + const opts = optsArg(options2); + opts.recursive = true; + const parent = (0, import_path18.dirname)(path30); + if (parent === path30) { + return opts.mkdirSync(path30, opts); + } + const made = findMadeSync(opts, path30); + try { + opts.mkdirSync(path30, opts); + return made; + } catch (er) { + const fer = er; + if (fer && fer.code === "ENOENT") { + return mkdirpManualSync(path30, opts); + } else { + throw er; + } + } +}; +var mkdirpNative = Object.assign(async (path30, options2) => { + const opts = { ...optsArg(options2), recursive: true }; + const parent = (0, import_path18.dirname)(path30); + if (parent === path30) { + return await opts.mkdirAsync(path30, opts); + } + return findMade(opts, path30).then((made) => opts.mkdirAsync(path30, opts).then((m) => made || m).catch((er) => { + const fer = er; + if (fer && fer.code === "ENOENT") { + return mkdirpManual(path30, opts); + } else { + throw er; + } + })); +}, { sync: mkdirpNativeSync }); - (type_alias_declaration - name: (type_identifier) @type_declaration.name! - value: (object_type ("{") @type_declaration.body.cursor) @type_declaration.body) -`,xSe=QI.default` - ${I_A} +// ../node_modules/.pnpm/mkdirp@3.0.1/node_modules/mkdirp/dist/mjs/path-arg.js +var import_path19 = require("path"); +var platform3 = process.env.__TESTING_MKDIRP_PLATFORM__ || process.platform; +var pathArg = (path30) => { + if (/\0/.test(path30)) { + throw Object.assign(new TypeError("path must be a string without null bytes"), { + path: path30, + code: "ERR_INVALID_ARG_VALUE" + }); + } + path30 = (0, import_path19.resolve)(path30); + if (platform3 === "win32") { + const badWinChars = /[*|"<>?:]/; + const { root } = (0, import_path19.parse)(path30); + if (badWinChars.test(path30.substring(root.length))) { + throw Object.assign(new Error("Illegal characters in path."), { + path: path30, + code: "EINVAL" + }); + } + } + return path30; +}; - (jsx_attribute (_) @jsx_attribute.value!) -`,C_A=QI.default` - (interface_declaration (object_type ("{") @block_start)) @trigger - (type_alias_declaration (object_type ("{") @block_start)) @trigger -`,b_A={javascript:{singlelineTriggers:"",intents:veA},javascriptreact:{singlelineTriggers:"",intents:kSe},typescript:{singlelineTriggers:C_A,intents:I_A},typescriptreact:{singlelineTriggers:C_A,intents:xSe}};var O_A=Yn(tS());var M_A={python:{singlelineTriggers:"",intents:O_A.default` - ; Cursor dependent intents - ;-------------------------------- +// ../node_modules/.pnpm/mkdirp@3.0.1/node_modules/mkdirp/dist/mjs/use-native.js +var import_fs6 = require("fs"); +var version2 = process.env.__TESTING_MKDIRP_NODE_VERSION__ || process.version; +var versArr = version2.replace(/^v/, "").split("."); +var hasNative = +versArr[0] > 10 || +versArr[0] === 10 && +versArr[1] >= 12; +var useNativeSync = !hasNative ? () => false : (opts) => optsArg(opts).mkdirSync === import_fs6.mkdirSync; +var useNative = Object.assign(!hasNative ? () => false : (opts) => optsArg(opts).mkdir === import_fs6.mkdir, { + sync: useNativeSync +}); - (function_definition - name: (_) @function.name! - parameters: (_ ("(") @function.parameters.cursor) @function.parameters (":") @function.body.cursor - body: (block) @function.body) +// ../node_modules/.pnpm/mkdirp@3.0.1/node_modules/mkdirp/dist/mjs/index.js +var mkdirpSync = (path30, opts) => { + path30 = pathArg(path30); + const resolved = optsArg(opts); + return useNativeSync(resolved) ? mkdirpNativeSync(path30, resolved) : mkdirpManualSync(path30, resolved); +}; +var mkdirp = Object.assign(async (path30, opts) => { + path30 = pathArg(path30); + const resolved = optsArg(opts); + return useNative(resolved) ? mkdirpNative(path30, resolved) : mkdirpManual(path30, resolved); +}, { + mkdirpSync, + mkdirpNative, + mkdirpNativeSync, + mkdirpManual, + mkdirpManualSync, + sync: mkdirpSync, + native: mkdirpNative, + nativeSync: mkdirpNativeSync, + manual: mkdirpManual, + manualSync: mkdirpManualSync, + useNative, + useNativeSync +}); - (lambda - parameters: (_) @function.parameters (":") @function.body.cursor - body: (_) @function.body) +// ../vscode/src/local-context/symf.ts +var execFile3 = (0, import_node_util.promisify)(import_node_child_process.execFile); +var SymfRunner = class { + constructor(context2, sourcegraphServerEndpoint, authToken) { + this.context = context2; + this.sourcegraphServerEndpoint = sourcegraphServerEndpoint; + this.authToken = authToken; + this.indexRoot = import_node_path2.default.join(import_node_os2.default.homedir(), ".cody-symf"); + } + // The root of all symf index directories + indexRoot; + indexLocks = /* @__PURE__ */ new Map(); + setSourcegraphAuth(endpoint, authToken) { + this.sourcegraphServerEndpoint = endpoint; + this.authToken = authToken; + } + indexListeners = /* @__PURE__ */ new Set(); + registerIndexListener(onIndexChange) { + this.indexListeners.add(onIndexChange); + return { + dispose: () => { + this.indexListeners.delete(onIndexChange); + } + }; + } + fireIndexListeners(scopeDir) { + for (const listener of this.indexListeners) { + listener(scopeDir); + } + } + async getSymfInfo() { + const accessToken = this.authToken; + if (!accessToken) { + throw new Error("SymfRunner.getResults: No access token"); + } + const serverEndpoint2 = this.sourcegraphServerEndpoint; + if (!serverEndpoint2) { + throw new Error("SymfRunner.getResults: No Sourcegraph server endpoint"); + } + const symfPath = await getSymfPath(this.context); + if (!symfPath) { + throw new Error("No symf executable"); + } + return { accessToken, serverEndpoint: serverEndpoint2, symfPath }; + } + async getResults(userQuery, scopeDirs, showIndexProgress) { + const { symfPath, serverEndpoint: serverEndpoint2, accessToken } = await this.getSymfInfo(); + const expandedQuery = execFile3(symfPath, ["expand-query", userQuery], { + env: { + SOURCEGRAPH_TOKEN: accessToken, + SOURCEGRAPH_URL: serverEndpoint2 + }, + maxBuffer: 1024 * 1024 * 1024, + timeout: 1e3 * 10 + // timeout in 10 seconds + }).then(({ stdout }) => stdout.trim()); + return scopeDirs.map((scopeDir) => this.getResultsForScopeDir(expandedQuery, scopeDir, showIndexProgress)); + } + /** + * Returns the list of results from symf for a single directory scope. + * @param keywordQuery is a promise, because query expansion might be an expensive + * operation that is best done concurrently with querying and (re)building the index. + */ + async getResultsForScopeDir(keywordQuery, scopeDir, showIndexProgress) { + const maxRetries = 10; + for (let i = 0; i < maxRetries; i++) { + await this.getIndexLock(scopeDir).withWrite(async () => { + await this.unsafeEnsureIndex(scopeDir, showIndexProgress, { hard: i === 0 }); + }); + let indexNotFound = false; + const stdout = await this.getIndexLock(scopeDir).withRead(async () => { + if (!await this.unsafeIndexExists(scopeDir)) { + indexNotFound = true; + return ""; + } + return this.unsafeRunQuery(await keywordQuery, scopeDir); + }); + if (indexNotFound) { + continue; + } + const results = parseSymfStdout(stdout); + return results; + } + throw new Error(`failed to find index after ${maxRetries} tries for directory ${scopeDir}`); + } + async deleteIndex(scopeDir) { + await this.getIndexLock(scopeDir).withWrite(async () => { + await this.unsafeDeleteIndex(scopeDir); + }); + } + async ensureIndex(scopeDir, showIndexProgress, options2 = { hard: false }) { + await this.getIndexLock(scopeDir).withWrite(async () => { + await this.unsafeEnsureIndex(scopeDir, showIndexProgress, options2); + }); + } + getIndexLock(scopeDir) { + const { indexDir } = this.getIndexDir(scopeDir); + let lock = this.indexLocks.get(indexDir); + if (lock) { + return lock; + } + lock = new RWLock(); + this.indexLocks.set(indexDir, lock); + return lock; + } + async unsafeRunQuery(keywordQuery, scopeDir) { + const { indexDir } = this.getIndexDir(scopeDir); + const { accessToken, symfPath, serverEndpoint: serverEndpoint2 } = await this.getSymfInfo(); + try { + const { stdout } = await execFile3( + symfPath, + ["--index-root", indexDir, "query", "--scopes", scopeDir, "--fmt", "json", keywordQuery], + { + env: { + SOURCEGRAPH_TOKEN: accessToken, + SOURCEGRAPH_URL: serverEndpoint2, + HOME: process.env.HOME + }, + maxBuffer: 1024 * 1024 * 1024, + timeout: 1e3 * 30 + // timeout in 30 seconds + } + ); + return stdout; + } catch (error) { + throw toSymfError(error); + } + } + async unsafeDeleteIndex(scopeDir) { + const trashRootDir = import_node_path2.default.join(this.indexRoot, ".trash"); + await mkdirp(trashRootDir); + const { indexDir } = this.getIndexDir(scopeDir); + if (!await fileExists2(indexDir)) { + return; + } + const trashDir = import_node_path2.default.join(trashRootDir, `${import_node_path2.default.basename(indexDir)}-${Date.now()}`); + if (await fileExists2(trashDir)) { + throw new Error(`could not delete index ${indexDir}: target trash directory ${trashDir} already exists`); + } + await (0, import_promises.rename)(indexDir, trashDir); + void (0, import_promises.rm)(trashDir, { recursive: true, force: true }); + } + async unsafeIndexExists(scopeDir) { + const { indexDir } = this.getIndexDir(scopeDir); + return fileExists2(import_node_path2.default.join(indexDir, "index.json")); + } + async unsafeEnsureIndex(scopeDir, showIndexProgress, options2 = { hard: false }) { + const indexExists = await this.unsafeIndexExists(scopeDir); + if (indexExists) { + return; + } + if (!options2.hard && await this.didIndexFail(scopeDir)) { + logDebug("symf", "index build previously failed and `hard` === false, not rebuilding"); + return; + } + const { indexDir, tmpDir } = this.getIndexDir(scopeDir); + try { + await this.unsafeUpsertIndex(indexDir, tmpDir, scopeDir, showIndexProgress); + } catch (error) { + logDebug("symf", "symf index creation failed", error); + await this.markIndexFailed(scopeDir); + throw error; + } + await this.clearIndexFailure(scopeDir); + } + getIndexDir(scopeDir) { + const absIndexedDir = import_node_path2.default.resolve(scopeDir); + return { + indexDir: import_node_path2.default.join(this.indexRoot, absIndexedDir), + tmpDir: import_node_path2.default.join(this.indexRoot, ".tmp", absIndexedDir) + }; + } + unsafeUpsertIndex(indexDir, tmpIndexDir, scopeDir, showIndexProgress) { + const upsert = this._unsafeUpsertIndex(indexDir, tmpIndexDir, scopeDir); + void upsert.then(() => this.fireIndexListeners(scopeDir)); + if (showIndexProgress) { + showIndexProgress(scopeDir, upsert); + } + return upsert; + } + async _unsafeUpsertIndex(indexDir, tmpIndexDir, scopeDir) { + const symfPath = await getSymfPath(this.context); + if (!symfPath) { + return; + } + await Promise.all([ + (0, import_promises.rm)(indexDir, { recursive: true }).catch(() => void 0), + (0, import_promises.rm)(tmpIndexDir, { recursive: true }).catch(() => void 0) + ]); + logDebug("symf", "creating index", indexDir); + let maxCPUs = 1; + if (import_node_os2.default.cpus().length > 4) { + maxCPUs = 2; + } + try { + const proc2 = (0, import_node_child_process.spawn)(symfPath, ["--index-root", tmpIndexDir, "add", scopeDir], { + env: { + ...process.env, + GOMAXPROCS: `${maxCPUs}` + // use at most one cpu for indexing + }, + stdio: ["ignore", "ignore", "ignore"], + timeout: 1e3 * 60 * 10 + // timeout in 10 minutes + }); + await new Promise((resolve8, reject) => { + proc2.on("error", reject); + proc2.on("exit", (code) => { + if (code === 0) { + resolve8(); + } else { + reject(new Error(`symf exited with code ${code}`)); + } + }); + }); + await mkdirp(import_node_path2.default.dirname(indexDir)); + await (0, import_promises.rename)(tmpIndexDir, indexDir); + } catch (error) { + throw toSymfError(error); + } finally { + await (0, import_promises.rm)(tmpIndexDir, { recursive: true, force: true }); + } + } + /** + * Helpers for tracking index failure + */ + async markIndexFailed(scopeDir) { + const failureRoot = import_node_path2.default.join(this.indexRoot, ".failed"); + await mkdirp(failureRoot); + const absIndexedDir = import_node_path2.default.resolve(scopeDir); + const failureSentinelFile = import_node_path2.default.join(failureRoot, absIndexedDir.replaceAll(import_node_path2.default.sep, "__")); + await (0, import_promises.writeFile)(failureSentinelFile, ""); + } + async didIndexFail(scopeDir) { + const failureRoot = import_node_path2.default.join(this.indexRoot, ".failed"); + const absIndexedDir = import_node_path2.default.resolve(scopeDir); + const failureSentinelFile = import_node_path2.default.join(failureRoot, absIndexedDir.replaceAll(import_node_path2.default.sep, "__")); + return fileExists2(failureSentinelFile); + } + async clearIndexFailure(scopeDir) { + const failureRoot = import_node_path2.default.join(this.indexRoot, ".failed"); + const absIndexedDir = import_node_path2.default.resolve(scopeDir); + const failureSentinelFile = import_node_path2.default.join(failureRoot, absIndexedDir.replaceAll(import_node_path2.default.sep, "__")); + await (0, import_promises.rm)(failureSentinelFile, { force: true }); + } +}; +async function fileExists2(filePath) { + try { + await import_node_fs.default.promises.access(filePath, import_node_fs.default.constants.F_OK); + return true; + } catch { + return false; + } +} +function parseSymfStdout(stdout) { + const results = JSON.parse(stdout); + return results.map((result) => { + const { fqname, name, type: type2, doc, exported, lang, file, range, summary } = result; + const { row: startRow, col: startColumn } = range.startPoint; + const { row: endRow, col: endColumn } = range.endPoint; + const startByte = range.startByte; + const endByte = range.endByte; + return { + fqname, + name, + type: type2, + doc, + exported, + lang, + file, + summary, + range: { + startByte, + endByte, + startPoint: { + row: startRow, + col: startColumn + }, + endPoint: { + row: endRow, + col: endColumn + } + } + }; + }); +} +var RWLock = class { + /** + * Invariants: + * - if readers > 0, then mu is locked + * - if readers === 0 and mu is locked, then a writer is holding the lock + */ + readers = 0; + mu = new Mutex(); + async withRead(fn) { + while (this.readers === 0) { + if (this.mu.isLocked()) { + await new Promise((resolve8) => setTimeout(resolve8, 100)); + continue; + } + await this.mu.acquire(); + break; + } + this.readers++; + try { + return await fn(); + } finally { + this.readers--; + if (this.readers === 0) { + this.mu.release(); + } + } + } + async withWrite(fn) { + return this.mu.runExclusive(fn); + } +}; +function toSymfError(error) { + const errorString = `${error}`; + let errorMessage; + if (errorString.includes("ENOENT")) { + errorMessage = 'symf binary not found. Do you have "cody.experimental.symf.path" set and is it valid?'; + } else if (errorString.includes("401")) { + errorMessage = `symf: Unauthorized. Is Cody signed in? ${error}`; + } else { + errorMessage = `symf index creation failed: ${error}`; + } + return new EvalError(errorMessage); +} - (class_definition - name: (_) @class.name (":") @class.body.cursor - body: (_) @class.body) +// ../vscode/src/rg.ts +var import_promises2 = __toESM(require("node:fs/promises")); +var import_path20 = __toESM(require("path")); +async function getRgPath() { + if (process.env.MOCK_RG_PATH) { + return process.env.MOCK_RG_PATH; + } + const rgExe = process.platform === "win32" ? "rg.exe" : "rg"; + const candidateDirs = ["node_modules/@vscode/ripgrep/bin", "node_modules.asar.unpacked/@vscode/ripgrep/bin"]; + for (const dir of candidateDirs) { + const rgPath = import_path20.default.resolve(env2.appRoot, dir, rgExe); + const exists = await import_promises2.default.access(rgPath).then(() => true).catch(() => false); + if (exists) { + return rgPath; + } + } + console.log("Did not find bundled `rg`."); + return null; +} - (argument_list ("(") @arguments.cursor) @arguments +// ../vscode/src/services/OpenTelemetryService.node.ts +var import_exporter_trace_otlp_http = __toESM(require_src10()); +var import_instrumentation_http = __toESM(require_src13()); +var import_resources = __toESM(require_src7()); +var import_sdk_node = __toESM(require_src29()); +var import_semantic_conventions = __toESM(require_src4()); +var OpenTelemetryService = class { + constructor(config) { + this.config = config; + this.reconfigurePromiseMutex = this.reconfigurePromiseMutex.then(() => this.reconfigure()); + } + sdk; + lastTraceUrl; + // We use a single promise object that we chain on to, to avoid multiple reconfigure calls to + // be run in parallel + reconfigurePromiseMutex = Promise.resolve(); + onConfigurationChange(newConfig) { + this.config = newConfig; + this.reconfigurePromiseMutex = this.reconfigurePromiseMutex.then(() => this.reconfigure()); + } + async reconfigure() { + if (!await featureFlagProvider.evaluateFeatureFlag("cody-autocomplete-tracing" /* CodyAutocompleteTracing */)) { + return; + } + const traceUrl = new URL("/-/debug/otlp/v1/traces", this.config.serverEndpoint).toString(); + if (this.lastTraceUrl === traceUrl) { + return; + } + this.lastTraceUrl = traceUrl; + await this.sdk?.shutdown(); + this.sdk = void 0; + this.sdk = new import_sdk_node.NodeSDK({ + resource: new import_resources.Resource({ + [import_semantic_conventions.SemanticResourceAttributes.SERVICE_NAME]: "cody-client", + [import_semantic_conventions.SemanticResourceAttributes.SERVICE_VERSION]: extensionVersion + }), + instrumentations: [new import_instrumentation_http.HttpInstrumentation()], + traceExporter: new import_exporter_trace_otlp_http.OTLPTraceExporter({ + url: traceUrl + }) + }); + this.sdk.start(); + } +}; +// ../vscode/src/services/sentry/sentry.node.ts +var Sentry = __toESM(require_cjs7()); +var NodeSentryService = class extends SentryService { + reconfigure(options2) { + Sentry.init(options2); + } +}; - ; Atomic intents - ;-------------------------------- +// ../vscode/src/extension.node.ts +function activate2(context2) { + initializeNetworkAgent(); + return activate(context2, { + getRgPath, + createCommandsController: (...args3) => new CommandsController(...args3), + createLocalEmbeddingsController: () => createLocalEmbeddingsController(context2), + createLocalKeywordContextFetcher: (...args3) => new LocalKeywordContextFetcher(...args3), + createFilenameContextFetcher: (...args3) => new FilenameContextFetcher(...args3), + createCompletionsClient: (...args3) => new SourcegraphNodeCompletionsClient(...args3), + createSymfRunner: (...args3) => new SymfRunner(...args3), + createBfgRetriever: () => new BfgRetriever(context2), + createSentryService: (...args3) => new NodeSentryService(...args3), + createOpenTelemetryService: (...args3) => new OpenTelemetryService(...args3), + // Include additional recipes that require Node packages (such as `child_process`). + recipes: [ + ...VSCODE_WEB_RECIPES, + new GitHistory(), + new ReleaseNotes(), + new PrDescription(), + new LocalIndexedKeywordSearch(), + new ContextSearch() + ], + onConfigurationChange: setCustomAgent + }); +} - (import_from_statement - module_name: (_) @import.source! - name: (_) @import.name!) +// ../vscode/src/jsonrpc/TextDocumentWithUri.ts +var TextDocumentWithUri = class _TextDocumentWithUri { + constructor(uri, underlying) { + this.uri = uri; + this.underlying = underlying ?? { uri: uri.toString() }; + } + underlying; + static fromDocument(document2) { + if (document2?.uri === void 0 && typeof document2.filePath === "string") { + const uri = Uri.file(document2.filePath); + document2.uri = uri.toString(); + return new _TextDocumentWithUri(uri, document2); + } + return new _TextDocumentWithUri(Uri.parse(document2.uri), document2); + } + static from(uri, document2) { + return new _TextDocumentWithUri(uri, { uri: uri.toString(), ...document2 }); + } + get content() { + return this.underlying.content; + } + get selection() { + return this.underlying.selection; + } +}; - (comment) @comment! - (argument_list (_) @argument!) +// src/language.ts +var import_path21 = __toESM(require("path")); + +// src/language-file-extensions.json +var language_file_extensions_default = { + actionscript: ["as"], + ada: ["adb", "ada", "ads"], + apache: ["apacheconf"], + apex: ["cls", "apex", "trigger"], + applescript: ["applescript", "scpt"], + beancount: ["beancount"], + bibtex: ["bib"], + clojure: ["clj", "cljs", "cljx"], + cmake: ["cmake", "cmake.in", "in"], + coffescript: ["coffee", "cake", "cson", "cjsx", "iced"], + cpp: ["c", "cc", "cpp", "cxx", "c++", "h++", "hh", "h", "hpp", "pc", "pcc"], + csharp: ["cs", "csx"], + css: ["css"], + cuda: ["cu", "cuh"], + d: ["d"], + dot: ["dot"], + dart: ["dart"], + diff: ["diff", "patch"], + dockerfile: ["Dockerfile"], + django: ["jinja"], + dos: ["bat", "cmd"], + elixir: ["ex", "exs"], + elm: ["elm"], + erlang: ["erl"], + fortran: ["f", "for", "frt", "fr", "forth", "4th", "fth"], + fsharp: ["fs"], + go: ["go"], + graphql: ["graphql"], + groovy: ["groovy"], + haml: ["haml"], + handlebars: ["hbs", "handlebars"], + haskell: ["hs", "hsc"], + hcl: ["hcl", "nomad", "tf", "tfvars", "workflow"], + html: ["htm", "html", "xhtml"], + ini: ["ini", "cfg", "prefs", "pro", "properties"], + java: ["java"], + javascript: ["js", "es", "es6", "jss", "jsm"], + javascriptreact: ["jsx"], + json: [ + "json", + "sublime_metrics", + "sublime_session", + "sublime-keymap", + "sublime-mousemap", + "sublime-project", + "sublime-settings", + "sublime-workspace" + ], + jsonnet: ["jsonnet", "libsonnet"], + julia: ["jl"], + kotlin: ["kt", "ktm", "kts"], + less: ["less"], + lisp: ["lisp", "asd", "cl", "lsp", "l", "ny", "podsl", "sexp", "el"], + lua: ["lua", "fcgi", "nse", "pd_lua", "rbxs", "wlua"], + makefile: ["mk", "mak"], + markdown: ["md", "mkdown", "mkd"], + nginx: ["nginxconf"], + objectivec: ["m", "mm"], + ocaml: ["ml", "eliom", "eliomi", "ml4", "mli", "mll", "mly", "re"], + pascal: ["p", "pas", "pp"], + perl: ["pl", "al", "cgi", "perl", "ph", "plx", "pm", "pod", "psgi", "t"], + php: ["php", "phtml", "php3", "php4", "php5", "php6", "php7", "phps"], + powershell: ["ps1", "psd1", "psm1"], + protobuf: ["proto"], + python: ["py", "pyc", "pyd", "pyo", "pyw", "pyz"], + r: ["r", "rd", "rsx"], + repro: ["repro"], + ruby: [ + "rb", + "rbi", + "builder", + "eye", + "gemspec", + "god", + "jbuilder", + "mspec", + "pluginspec", + "podspec", + "rabl", + "rake", + "rbuild", + "rbw", + "rbx", + "ru", + "ruby", + "spec", + "thor", + "watchr" + ], + rust: ["rs", "rs.in"], + scala: ["sbt", "sc", "scala"], + scheme: ["scm", "sch", "sls", "sps", "ss"], + scss: ["sass", "scss"], + shell: ["sh", "bash", "zsh"], + smalltalk: ["st"], + sql: ["sql"], + starlark: ["bzl", "bazel", "BUILD", "WORKSPACE"], + stylus: ["styl"], + svelte: ["svelte"], + swift: ["swift"], + thrift: ["thrift"], + toml: ["toml"], + twig: ["twig"], + typescript: ["ts"], + typescriptreact: ["tsx"], + vbnet: ["vb"], + vbscrip: ["vbs"], + verilog: ["v", "veo", "sv", "svh", "svi"], + vhdl: ["vhd", "vhdl"], + vim: ["vim"], + xml: [ + "xml", + "adml", + "admx", + "ant", + "axml", + "builds", + "ccxml", + "clixml", + "cproject", + "csl", + "csproj", + "ct", + "dita", + "ditamap", + "ditaval", + "dll.config", + "dotsettings", + "filters", + "fsproj", + "fxml", + "glade", + "gml", + "grxml", + "iml", + "ivy", + "jelly", + "jsproj", + "kml", + "launch", + "mdpolicy", + "mjml", + "mod", + "mxml", + "nproj", + "nuspec", + "odd", + "osm", + "pkgproj", + "plist", + "props", + "ps1xml", + "psc1", + "pt", + "rdf", + "resx", + "rss", + "scxml", + "sfproj", + "srdf", + "storyboard", + "stTheme", + "sublime-snippet", + "targets", + "tmCommand", + "tml", + "tmLanguage", + "tmPreferences", + "tmSnippet", + "tmTheme", + "ui", + "urdf", + "ux", + "vbproj", + "vcxproj", + "vsixmanifest", + "vssettings", + "vstemplate", + "vxml", + "wixproj", + "wsdl", + "wsf", + "wxi", + "wxl", + "wxs", + "x3d", + "xacro", + "xaml", + "xib", + "xlf", + "xliff", + "xmi", + "xml.dist", + "xproj", + "xsd", + "xspec", + "xul", + "zcml" + ], + yaml: ["yml", "yaml"] +}; + +// src/language.ts +var mapping; +function getMapping() { + if (mapping) { + return mapping; + } + mapping = /* @__PURE__ */ new Map(); + for (const [language, extensions2] of Object.entries(language_file_extensions_default)) { + for (const extension of extensions2) { + mapping.set(extension, language); + } + } + return mapping; +} +function getLanguageForFileName(filePath) { + const fileName = import_path21.default.basename(filePath); + const extension = fileName.split(".").pop() || fileName; + const language = getMapping().get(extension); + return language || extension; +} + +// src/offsets.ts +var DocumentOffsets = class { + constructor(document2) { + this.document = document2; + this.lines = []; + this.content = document2?.content || ""; + this.lines.push(0); + let index = 0; + while (index < this.content.length) { + if (this.content[index] === "\n") { + this.lines.push(index + 1); + } + index++; + } + if (this.content.length !== this.lines.at(-1)) { + this.lines.push(this.content.length); + } + } + lineCount() { + return this.lines.length - 1; + } + lineStartOffset(line) { + return this.lines[line]; + } + lineEndOffset(line) { + const nextLine = line + 1; + return nextLine < this.lines.length ? this.lines[nextLine] : this.document.content?.length ?? 0; + } + newlineLength(line) { + const endOffset = this.lineEndOffset(line); + const isEndOfFile = endOffset === this.content.length; + const hasNewlineAtEndOfFile = this.content.endsWith("\n"); + if (isEndOfFile && !hasNewlineAtEndOfFile) { + return 0; + } + const isCarriageReturn = endOffset > 1 && this.content[endOffset - 2] === "\r"; + return isCarriageReturn ? 2 : 1; + } + lineLengthIncludingNewline(line) { + return this.lineEndOffset(line) - this.lineStartOffset(line); + } + lineLengthExcludingNewline(line) { + return this.lineLengthIncludingNewline(line) - this.newlineLength(line); + } + offset(position) { + return this.lines[position.line] + Math.min(position.character, this.lineLengthIncludingNewline(position.line)); + } + position(offset) { + let line = 0; + while (line < this.lines.length - 1 && offset >= this.lines[line + 1]) { + line++; + } + return { + line, + character: offset - this.lines[line] + }; + } +}; + +// src/AgentTextDocument.ts +var AgentTextDocument = class { + constructor(textDocument) { + this.textDocument = textDocument; + this.version = 0; + this.isDirty = false; + this.isClosed = false; + this.eol = 1 /* LF */; + this.content = textDocument.content ?? ""; + this.uri = textDocument.uri; + this.fileName = textDocument.uri.fsPath; + this.isUntitled = false; + this.languageId = getLanguageForFileName(this.fileName); + this.offsets = new DocumentOffsets(textDocument.underlying); + this.lineCount = this.offsets.lineCount(); + } + save() { + throw new Error("Method not implemented."); + } + lineAt(position) { + const line = typeof position === "number" ? position : position.line; + const text = this.getText( + new Range( + new Position(line, 0), + new Position(line, this.offsets.lineLengthExcludingNewline(line)) + ) + ); + let firstNonWhitespaceCharacterIndex = 0; + while (firstNonWhitespaceCharacterIndex < text.length && /\s/.test(text[firstNonWhitespaceCharacterIndex])) { + firstNonWhitespaceCharacterIndex++; + } + return { + lineNumber: line, + firstNonWhitespaceCharacterIndex, + isEmptyOrWhitespace: firstNonWhitespaceCharacterIndex === text.length, + range: new Range( + new Position(line, 0), + new Position(line, text.length) + ), + rangeIncludingLineBreak: new Range( + new Position(line, 0), + new Position(line, text.length + this.offsets.newlineLength(line)) + ), + text + }; + } + offsetAt(position) { + return this.offsets.offset(position); + } + positionAt(offset) { + const { line, character } = this.offsets.position(offset); + return new Position(line, character); + } + getText(range) { + if (range === void 0) { + return this.content; + } + const start4 = this.offsets.offset(range.start); + const end = this.offsets.offset(range.end); + const text = this.content.slice(start4, end); + return text; + } + getWordRangeAtPosition(position, regex) { + throw new Error("Method not implemented."); + } + validateRange(range) { + throw new Error("Method not implemented."); + } + validatePosition(position) { + throw new Error("Method not implemented."); + } +}; + +// src/AgentTextEditor.ts +function newTextEditor(document2) { + const selection = document2.textDocument.selection ? new Selection( + new Position( + document2.textDocument.selection.start.line, + document2.textDocument.selection.start.character + ), + new Position( + document2.textDocument.selection.end.line, + document2.textDocument.selection.end.character + ) + ) : new Selection(new Position(0, 0), new Position(0, 0)); + return { + // Looking at the implementation of the extension, we only need + // to provide `document` but we do a best effort to shim the + // rest of the `TextEditor` properties. + document: document2, + selection, + selections: [selection], + edit: () => Promise.resolve(true), + insertSnippet: () => Promise.resolve(true), + revealRange: () => { + }, + options: { + cursorStyle: void 0, + insertSpaces: void 0, + lineNumbers: void 0, + // TODO: fix tabSize + tabSize: 2 + }, + setDecorations: () => { + }, + viewColumn: -1 /* Active */, + visibleRanges: [selection], + show: () => { + }, + hide: () => { + } + }; +} + +// src/AgentWorkspaceDocuments.ts +var AgentWorkspaceDocuments = class { + constructor() { + // Keys are `vscode.Uri.toString()` formatted. We don't use `vscode.Uri` as + // keys because hascode/equals behave unreliably. + this.documents = /* @__PURE__ */ new Map(); + this.activeDocumentFilePath = null; + } + loadedDocument(document2) { + const fromCache = this.documents.get(document2.underlying.uri); + if (document2.content === void 0) { + document2.underlying.content = fromCache?.content; + } + if (document2.selection === void 0) { + document2.underlying.selection = fromCache?.selection; + } + return document2; + } + setActiveTextEditor(textEditor) { + this.activeDocumentFilePath = textEditor.document.uri; + onDidChangeActiveTextEditor.fire(textEditor); + window2.activeTextEditor = textEditor; + } + agentTextDocument(document2) { + return new AgentTextDocument(this.loadedDocument(document2)); + } + allUris() { + return [...this.documents.keys()]; + } + allDocuments() { + return [...this.documents.values()]; + } + getDocument(uri) { + return this.documents.get(uri.toString()); + } + getDocumentFromUriString(uriString) { + return this.documents.get(uriString); + } + addDocument(document2) { + this.documents.set(document2.underlying.uri, this.loadedDocument(document2)); + const tabs = []; + for (const uri of this.allUris()) { + const document3 = this.getDocumentFromUriString(uri); + if (!document3) { + continue; + } + tabs.push(this.vscodeTab(document3.uri)); + } + tabGroups.all = [ + { + tabs, + isActive: true, + activeTab: this.activeDocumentFilePath ? this.vscodeTab(this.activeDocumentFilePath) : void 0, + viewColumn: -1 /* Active */ + } + ]; + while (visibleTextEditors.length > 0) { + visibleTextEditors.pop(); + } + for (const document3 of this.allDocuments()) { + visibleTextEditors.push(newTextEditor(this.agentTextDocument(document3))); + } + } + deleteDocument(uri) { + this.documents.delete(uri.toString()); + } + vscodeTab(uri) { + return { + input: { + uri + }, + label: "label", + group: { activeTab: void 0, isActive: false, tabs: [], viewColumn: -1 } + }; + } + openTextDocument(uri) { + return Promise.resolve(this.agentTextDocument(new TextDocumentWithUri(uri))); + } +}; + +// src/editor.ts +var AgentEditor = class { + constructor(agent3) { + this.agent = agent3; + } + didReceiveFixupText() { + throw new Error("Method not implemented."); + } + /** @deprecated Use {@link AgentEditor.getWorkspaceRootUri} instead. */ + getWorkspaceRootPath() { + const uri = this.getWorkspaceRootUri(); + return uri?.scheme === "file" ? uri.fsPath : null; + } + getWorkspaceRootUri() { + return this.agent.workspace.workspaceRootUri ?? null; + } + activeDocument() { + if (this.agent.workspace.activeDocumentFilePath === null) { + return void 0; + } + return this.agent.workspace.getDocument(this.agent.workspace.activeDocumentFilePath); + } + getActiveTextEditor() { + const document2 = this.activeDocument(); + if (document2 === void 0) { + return null; + } + return { + filePath: document2.uri.fsPath, + fileUri: document2.uri, + selectionRange: document2.selection, + content: document2.content || "" + }; + } + async getTextEditorContentForFile(uri) { + if (!uri) { + return Promise.resolve(void 0); + } + const doc = this.agent.workspace.getDocumentFromUriString(uri.toString()); + return Promise.resolve(doc?.content); + } + getActiveTextEditorSelection() { + const document2 = this.activeDocument(); + if (document2?.content === void 0 || document2.selection === void 0) { + return null; + } + const offsets = new DocumentOffsets(document2.underlying); + if (!document2.selection) { + return { + fileName: document2.uri.fsPath, + fileUri: document2.uri, + selectionRange: document2.selection, + precedingText: document2.content ?? "", + selectedText: "", + followingText: "" + }; + } + const from = offsets.offset(document2.selection.start); + const to = offsets.offset(document2.selection.end); + return { + fileName: document2.uri.fsPath, + fileUri: document2.uri, + selectionRange: document2.selection, + precedingText: document2.content.slice(0, from), + selectedText: document2.content.slice(from, to), + followingText: document2.content.slice(to, document2.content.length) + }; + } + getActiveTextEditorSelectionOrEntireFile() { + const document2 = this.activeDocument(); + if (document2 !== void 0 && document2.selection === void 0) { + return { + fileName: document2.uri.fsPath, + fileUri: document2.uri, + precedingText: "", + selectedText: document2.content || "", + followingText: "" + }; + } + return this.getActiveTextEditorSelection(); + } + getActiveInlineChatTextEditor() { + throw new Error("Method not implemented."); + } + getActiveInlineChatSelection() { + throw new Error("Method not implemented."); + } + getActiveTextEditorSmartSelection() { + throw new Error("Method not implemented."); + } + getActiveTextEditorSelectionOrVisibleContent() { + throw new Error("Method not implemented."); + } + getActiveTextEditorDiagnosticsForRange() { + throw new Error("Method not implemented."); + } + getActiveTextEditorVisibleContent() { + const document2 = this.activeDocument(); + if (document2 === void 0) { + return null; + } + return { + content: document2.content || "", + fileName: document2.uri.fsPath, + fileUri: document2.uri + }; + } + replaceSelection() { + throw new Error("Not implemented"); + } + showQuickPick() { + throw new Error("Not implemented"); + } + showWarningMessage() { + throw new Error("Not implemented"); + } + showInputBox() { + throw new Error("Not implemented"); + } +}; + +// src/telemetry/index.ts +var import_telemetry20 = __toESM(require_dist()); +var AgentHandlerTelemetryRecorderProvider = class extends import_telemetry20.TelemetryRecorderProvider { + constructor(graphql, clientInfo2, marketingTrackingProvider) { + super( + { + client: clientInfo2.name, + clientVersion: clientInfo2.version + }, + new GraphQLTelemetryExporter(graphql, clientInfo2.extensionConfiguration?.anonymousUserID || "", "all"), + [new import_telemetry20.MarketingTrackingTelemetryProcessor(marketingTrackingProvider)], + { + ...import_telemetry20.defaultEventRecordingOptions, + bufferTimeMs: 0 + // disable buffering for now + } + ); + } +}; + +// src/agent.ts +var secretStorage2 = /* @__PURE__ */ new Map(); +async function initializeVscodeExtension(workspaceRoot) { + const paths = envPaths("Cody"); + try { + const gitdirPath = import_path22.default.join(workspaceRoot.fsPath, ".git"); + const gitdir = await fspromises3.stat(gitdirPath); + if (gitdir.isDirectory()) { + addGitRepository(workspaceRoot, "fake_vscode_shim_commit"); + } + } catch { + } + await activate2({ + asAbsolutePath(relativePath) { + return import_path22.default.resolve(workspaceRoot.fsPath, relativePath); + }, + environmentVariableCollection: {}, + extension: {}, + extensionMode: {}, + // Placeholder string values for extension path/uri. These are only used + // to resolve paths to icon in the UI. They need to have compatible + // types but don't have to point to a meaningful path/URI. + extensionPath: "__extensionPath_should_never_be_read_from", + extensionUri: Uri.from({ scheme: "file", path: "__extensionUri__should_never_be_read_from" }), + globalState: { + keys: () => [], + get: () => void 0, + update: () => Promise.resolve(), + setKeysForSync: () => { + } + }, + logUri: {}, + logPath: {}, + secrets: { + onDidChange: emptyEvent(), + get(key) { + if (key === "cody.access-token" && connectionConfig) { + return Promise.resolve(connectionConfig.accessToken); + } + return Promise.resolve(secretStorage2.get(key)); + }, + store(key, value) { + secretStorage2.set(key, value); + return Promise.resolve(); + }, + delete(key) { + return Promise.resolve(); + } + }, + storageUri: {}, + subscriptions: [], + workspaceState: {}, + globalStorageUri: Uri.file(paths.data), + storagePath: {}, + globalStoragePath: Uri.file(paths.data).fsPath + }); +} +async function newAgentClient(clientInfo2) { + const asyncHandler = async (reject) => { + const serverHandler = new MessageHandler(); + const args3 = process.argv0.endsWith("node") ? process.argv.slice(1, 2) : []; + args3.push("jsonrpc"); + const child = (0, import_child_process8.spawn)(process.argv[0], args3, { env: { ENABLE_SENTRY: "false", ...process.env } }); + serverHandler.connectProcess(child, reject); + serverHandler.registerNotification("debug/message", (params) => { + console.error(`${params.channel}: ${params.message}`); + }); + await serverHandler.request("initialize", clientInfo2); + serverHandler.notify("initialized", null); + return serverHandler; + }; + return new Promise((resolve8, reject) => { + asyncHandler(reject).then( + (handler) => resolve8(handler), + (error) => reject(error) + ); + }); +} +var Agent = class extends MessageHandler { + constructor(params) { + super(); + this.params = params; + this.client = Promise.resolve(null); + this.oldClient = null; + this.workspace = new AgentWorkspaceDocuments(); + this.clientInfo = null; + /** + * agentTelemetryRecorderProvider must be used for all events recording + * directly within the agent (i.e. code in agent/src/...) and via the agent's + * 'telemetry/recordEvent' RPC. + * + * Components that use VSCode implementations directly (i.e. code in + * vscode/src/...) will continue to use the shared recorder initialized and + * configured as part of VSCode initialization in vscode/src/services/telemetry-v2.ts. + */ + this.agentTelemetryRecorderProvider = new NoOpTelemetryRecorderProvider([ + { + processEvent: (event) => process.stderr.write( + `Cody Agent: failed to record telemetry event '${event.feature}/${event.action}' before agent initialization +` + ) + } + ]); + setWorkspaceDocuments(this.workspace); + setAgent(this); + this.registerRequest("initialize", async (clientInfo2) => { + process.stderr.write( + `Cody Agent: handshake with client '${clientInfo2.name}' (version '${clientInfo2.version}') at workspace root path '${clientInfo2.workspaceRootUri}' +` + ); + setClientInfo(clientInfo2); + this.clientInfo = clientInfo2; + setUserAgent(`${clientInfo2?.name} / ${clientInfo2?.version}`); + if (clientInfo2.extensionConfiguration) { + await this.setClientAndTelemetry(clientInfo2.extensionConfiguration); + } + this.workspace.workspaceRootUri = clientInfo2.workspaceRootUri ? Uri.parse(clientInfo2.workspaceRootUri) : Uri.from({ scheme: "file", path: clientInfo2.workspaceRootPath }); + await initializeVscodeExtension(this.workspace.workspaceRootUri); + await this.reloadAuth(); + const codyClient = await this.client; + if (!codyClient) { + return { + name: "cody-agent", + authenticated: false, + codyEnabled: false, + codyVersion: null + }; + } + const codyStatus = codyClient.codyStatus; + return { + name: "cody-agent", + authenticated: codyClient.sourcegraphStatus.authenticated, + codyEnabled: codyStatus.enabled && (clientInfo2.extensionConfiguration?.accessToken ?? "").length > 0, + codyVersion: codyStatus.version + }; + }); + this.registerNotification("initialized", () => { + }); + this.registerRequest("shutdown", async () => { + if (this?.params?.polly) { + this.params.polly.disconnectFrom("node-http"); + await this.params.polly.stop(); + } + return null; + }); + this.registerNotification("exit", () => { + process.exit(0); + }); + this.registerNotification("textDocument/didFocus", (document2) => { + this.workspace.setActiveTextEditor( + newTextEditor(this.workspace.agentTextDocument(TextDocumentWithUri.fromDocument(document2))) + ); + }); + this.registerNotification("textDocument/didOpen", (document2) => { + const documentWithUri = TextDocumentWithUri.fromDocument(document2); + this.workspace.addDocument(documentWithUri); + const textDocument = this.workspace.agentTextDocument(documentWithUri); + onDidOpenTextDocument.fire(textDocument); + this.workspace.setActiveTextEditor(newTextEditor(textDocument)); + }); + this.registerNotification("textDocument/didChange", (document2) => { + const documentWithUri = TextDocumentWithUri.fromDocument(document2); + const textDocument = this.workspace.agentTextDocument(documentWithUri); + this.workspace.addDocument(documentWithUri); + this.workspace.setActiveTextEditor(newTextEditor(textDocument)); + onDidChangeTextDocument.fire({ + document: textDocument, + contentChanges: [], + // TODO: implement this. It's only used by recipes, not autocomplete. + reason: void 0 + }); + }); + this.registerNotification("textDocument/didClose", (document2) => { + const documentWithUri = TextDocumentWithUri.fromDocument(document2); + this.workspace.deleteDocument(documentWithUri.uri); + onDidCloseTextDocument.fire(this.workspace.agentTextDocument(documentWithUri)); + }); + this.registerNotification("extensionConfiguration/didChange", (config) => { + this.setClientAndTelemetry(config).catch(() => { + process.stderr.write("Cody Agent: failed to update configuration\n"); + }); + }); + this.registerRequest( + "recipes/list", + () => Promise.resolve( + Object.values(registeredRecipes2).map(({ id, title }) => ({ + id, + title + })) + ) + ); + this.registerNotification("transcript/reset", async () => { + const client = await this.client; + client?.reset(); + }); + this.registerRequest("recipes/execute", async (data, token) => { + const client = await this.client; + if (!client) { + return null; + } + const abortController = new AbortController(); + if (token) { + if (token.isCancellationRequested) { + abortController.abort(); + } + token.onCancellationRequested(() => { + abortController.abort(); + }); + } + await this.logEvent(`recipe:${data.id}`, "executed", "dotcom-only"); + this.agentTelemetryRecorderProvider.getRecorder().recordEvent(`cody.recipe.${data.id}`, "executed"); + try { + await client.executeRecipe(data.id, { + signal: abortController.signal, + humanChatInput: data.humanChatInput, + data: data.data + }); + } catch { + } + return null; + }); + this.registerRequest("autocomplete/execute", async (params2, token) => { + await this.client; + const provider = await completionProvider(); + if (!provider) { + console.log("Completion provider is not initialized"); + return { items: [] }; + } + const uri = typeof params2.uri === "string" ? Uri.parse(params2.uri) : params2?.filePath ? Uri.file(params2.filePath) : void 0; + if (!uri) { + console.log( + `No uri provided for autocomplete request ${JSON.stringify( + params2 + )}. To fix this problem, set the 'uri' property.` + ); + return { items: [] }; + } + const document2 = this.workspace.getDocument(uri); + if (!document2) { + console.log("No document found for file path", params2.uri, [...this.workspace.allUris()]); + return { items: [] }; + } + const textDocument = new AgentTextDocument(document2); + try { + if (params2.triggerKind === "Invoke") { + await provider?.manuallyTriggerCompletion?.(); + } + const result = await provider.provideInlineCompletionItems( + textDocument, + new Position(params2.position.line, params2.position.character), + { + triggerKind: InlineCompletionTriggerKind[params2.triggerKind || "Automatic"], + selectedCompletionInfo: params2.selectedCompletionInfo?.text === void 0 || params2.selectedCompletionInfo?.text === null ? void 0 : { + text: params2.selectedCompletionInfo.text, + range: new Range( + params2.selectedCompletionInfo.range.start.line, + params2.selectedCompletionInfo.range.start.character, + params2.selectedCompletionInfo.range.end.line, + params2.selectedCompletionInfo.range.end.character + ) + } + }, + token + ); + const items = result?.items.flatMap( + ({ insertText, range, id }) => typeof insertText === "string" && range !== void 0 ? [{ id, insertText, range }] : [] + ) ?? []; + return { items, completionEvent: result?.completionEvent }; + } catch (error) { + console.log("autocomplete failed", error); + return Promise.reject(error); + } + }); + this.registerNotification("autocomplete/completionAccepted", async ({ completionID }) => { + const client = await this.client; + if (!client) { + throw new Error("Cody client not initialized"); + } + const provider = await completionProvider(); + provider.handleDidAcceptCompletionItem(completionID); + }); + this.registerNotification("autocomplete/completionSuggested", async ({ completionID }) => { + const client = await this.client; + if (!client) { + throw new Error("Cody client not initialized"); + } + const provider = await completionProvider(); + provider.unstable_handleDidShowCompletionItem(completionID); + }); + this.registerRequest("graphql/currentUserId", async () => { + const client = await this.client; + if (!client) { + throw new Error("Cody client not initialized"); + } + const id = await client.graphqlClient.getCurrentUserId(); + if (typeof id === "string") { + return id; + } + throw id; + }); + this.registerRequest("telemetry/recordEvent", async (event) => { + this.agentTelemetryRecorderProvider.getRecorder().recordEvent( + // 👷 HACK: We have no control over what gets sent over JSON RPC, + // so we depend on client implementations to give type guidance + // to ensure that we don't accidentally share arbitrary, + // potentially sensitive string values. In this RPC handler, + // when passing the provided event to the TelemetryRecorder + // implementation, we forcibly cast all the inputs below + // (feature, action, parameters) into known types (strings + // 'feature', 'action', 'key') so that the recorder will accept + // it. DO NOT do this elsewhere! + event.feature, + event.action, + event.parameters + ); + return Promise.resolve(null); + }); + this.registerRequest("graphql/logEvent", async (event) => { + const client = await this.client; + if (typeof event.argument === "object") { + event.argument = JSON.stringify(event.argument); + } + if (typeof event.publicArgument === "object") { + event.publicArgument = JSON.stringify(event.publicArgument); + } + await client?.graphqlClient.logEvent(event, "all"); + return null; + }); + this.registerRequest("graphql/getRepoIdIfEmbeddingExists", async ({ repoName }) => { + const client = await this.client; + const result = await client?.graphqlClient.getRepoIdIfEmbeddingExists(repoName); + if (result instanceof Error) { + console.error("getRepoIdIfEmbeddingExists", result); + } + return typeof result === "string" ? result : null; + }); + this.registerRequest("graphql/getRepoId", async ({ repoName }) => { + const client = await this.client; + const result = await client?.graphqlClient.getRepoId(repoName); + if (result instanceof Error) { + console.error("getRepoId", result); + } + return typeof result === "string" ? result : null; + }); + this.registerRequest("git/codebaseName", ({ url: url2 }) => { + const result = convertGitCloneURLToCodebaseName2(url2); + return Promise.resolve(typeof result === "string" ? result : null); + }); + this.registerNotification("autocomplete/clearLastCandidate", async () => { + const provider = await completionProvider(); + if (!provider) { + console.log("Completion provider is not initialized: unable to clear last candidate"); + } + provider.clearLastCandidate(); + }); + } + /** + * Updates this.client immediately and attempts to update + * this.telemetryRecorderProvider as well if prerequisite configuration + * is available. + */ + async setClientAndTelemetry(config) { + this.client = this.createAgentClient(config); + const codyClient = await this.client; + if (codyClient && this.clientInfo) { + this.agentTelemetryRecorderProvider?.unsubscribe(); + this.agentTelemetryRecorderProvider = new AgentHandlerTelemetryRecorderProvider( + codyClient.graphqlClient, + this.clientInfo, + { + // Add tracking metadata if provided + getMarketingTrackingMetadata: () => this.clientInfo?.marketingTracking || null + } + ); + } + return; + } + async createAgentClient(config) { + const isAuthChange = isAuthenticationChange(config); + setConnectionConfig(config); + if (isAuthChange) { + await this.reloadAuth(); + } + onDidChangeConfiguration.fire({ + affectsConfiguration: () => ( + // assuming the return value below only impacts performance (not + // functionality), we return true to always triggger the callback. + true + ) + }); + const client = await createClient({ + initialTranscript: this.oldClient?.transcript, + editor: new AgentEditor(this), + config: { ...config, useContext: "embeddings", experimentalLocalSymbols: false }, + setMessageInProgress: (messageInProgress) => { + this.notify("chat/updateMessageInProgress", messageInProgress); + }, + setTranscript: () => { + }, + createCompletionsClient: (...args3) => new SourcegraphNodeCompletionsClient(...args3) + }); + this.oldClient = client; + return client; + } + async reloadAuth() { + await commands.executeCommand("agent.auth.reload"); + await commands.executeCommand("cody.auth.sync"); + } + /** + * @deprecated use `this.telemetryRecorderProvider.getRecorder()` instead. + */ + async logEvent(feature, action, mode) { + const client = await this.client; + if (!client) { + return null; + } + const clientInfo2 = this.clientInfo; + if (!clientInfo2) { + return null; + } + const extensionConfiguration = clientInfo2.extensionConfiguration; + if (!extensionConfiguration) { + return null; + } + const eventProperties = extensionConfiguration.eventProperties; + if (!eventProperties) { + return null; + } + const event = `${eventProperties.prefix}:${feature}:${action}`; + await client.graphqlClient.logEvent( + { + event, + url: "", + client: eventProperties.client, + userCookieID: this.clientInfo?.extensionConfiguration?.anonymousUserID || eventProperties.anonymousUserID, + source: eventProperties.source, + publicArgument: JSON.stringify({ + serverEndpoint: extensionConfiguration.serverEndpoint, + extensionDetails: { + ide: clientInfo2.name, + ideExtensionType: "Cody", + version: clientInfo2.version + } + }) + }, + mode + ); + return null; + } +}; + +// src/cli/evaluate-autocomplete/cli-parsers.ts +function booleanOption(value) { + return value === "true"; +} +function intOption(value) { + const parsedValue = Number.parseInt(value, 10); + if (isNaN(parsedValue)) { + throw new InvalidArgumentError("Not a number."); + } + return parsedValue; +} +function arrayOption(value, previous) { + return previous.concat([value]); +} + +// src/cli/evaluate-autocomplete/strategy-bfg.ts +var import_child_process10 = require("child_process"); +var fspromises8 = __toESM(require("fs/promises")); +var path27 = __toESM(require("path")); + +// src/cli/evaluate-autocomplete/EvaluationDocument.ts +var fspromises4 = __toESM(require("fs/promises")); +var import_path23 = __toESM(require("path")); +var EvaluationDocument = class { + constructor(params, text, uri, snapshotDirectory) { + this.params = params; + this.text = text; + this.uri = uri; + this.snapshotDirectory = snapshotDirectory; + this.items = []; + this.lines = text.split("\n"); + this.textDocument = new AgentTextDocument(TextDocumentWithUri.from(uri, { content: text })); + } + pushItem(item) { + item.rangeStartLine = item.range.start.line; + item.rangeStartCharacter = item.range.start.character; + item.rangeEndLine = item.range.end.line; + item.rangeEndCharacter = item.range.end.character; + if (item.event) { + item.eventJSON = JSON.stringify(item.event); + } + this.items.push({ + ...item, + ...this.params + }); + } + async writeSnapshot(snapshotDirectory) { + const outputPath = import_path23.default.join(snapshotDirectory, this.params.filepath); + await fspromises4.mkdir(import_path23.default.dirname(outputPath), { recursive: true }); + const snapshot = this.formatSnapshot(); + await fspromises4.writeFile(outputPath, snapshot); + } + // This function is copy/pasted from the scip-typescript repository so that we + // can customize rendering for the `evaluate-autocomplete` command. For example, + // we will need to come up with a good solution for multi-line completions that may not + // be relevant for scip-typescript. + formatSnapshot() { + const commentSyntax = commentSyntaxForLanguage(this.params.languageid); + const out2 = []; + this.items.sort(compareItemByRange); + let occurrenceIndex = 0; + for (const [lineNumber, line] of this.lines.entries()) { + out2.push(" ".repeat(commentSyntax.length)); + out2.push(line.replace(" ", " ")); + out2.push("\n"); + while (occurrenceIndex < this.items.length && this.items[occurrenceIndex].rangeStartLine === lineNumber) { + const item = this.items[occurrenceIndex]; + occurrenceIndex++; + if (item.rangeStartLine !== item.rangeEndLine) { + continue; + } + out2.push(commentSyntax); + out2.push(" ".repeat(item.range.start.character)); + const length = item.range.end.character - item.range.start.character; + if (length < 0) { + throw new Error(this.format(item.range, "negative length occurrence!")); + } + out2.push("^".repeat(length)); + out2.push(" AUTOCOMPLETE"); + if (item.resultEmpty) { + out2.push(" EMPTY_RESULT"); + } + if (item.resultTimeout) { + out2.push(" TIMEOUT"); + } + if (item.resultExact) { + out2.push(" EXACT_MATCH"); + } + if (item.resultTypechecks === true) { + out2.push(" TYPECHECK_OK"); + } else if (item.resultTypechecks === false) { + out2.push(" TYPECHECK_ERROR"); + } + if (item.resultText) { + out2.push(" RESULT "); + out2.push(item.resultText.replaceAll("\n", "\\n")); + } + out2.push("\n"); + } + } + return out2.join(""); + } + /** + * For debugingg purposes, formats the source file with carets ^ to underline + * the range. For example, when given the range enclosing the `hello` + * identifier. + * ``` + * src/hello.ts:LINE:CHARACTER + * const hello = 42 + * ^^^^^ + * ``` + * @param range the range to highlight + * @param diagnostic optional message to include with the formatted string + */ + format(range, diagnostic) { + const line = this.lines[range.start.line]; + const indent = " ".repeat(range.start.character); + const length = range.start.line === range.end.line ? range.end.character - range.start.character : line.length - range.start.character; + const carets = length < 0 ? "" : "^".repeat(length); + const multilineSuffix = range.isSingleLine ? "" : ` ${range.end.line}:${range.end.character}`; + const message = diagnostic ? " " + diagnostic : ""; + return `${this.params.filepath}:${range.start.line}:${range.start.character}${message} +${line} +${indent}${carets}${multilineSuffix}`; + } + log(range) { + console.log(this.format(range)); + } +}; +var autocompleteItemHeaders = [ + { id: "languageid", title: "LANGUAGEID" }, + { id: "workspace", title: "WORKSPACE" }, + { id: "fixture", title: "FIXTURE" }, + { id: "strategy", title: "STRATEGY" }, + { id: "filepath", title: "FILEPATH" }, + { id: "revision", title: "REVISION" }, + { id: "rangeStartLine", title: "RANGE_START_LINE" }, + { id: "rangeStartCharacter", title: "RANGE_START_CHARACTER" }, + { id: "rangeEndLine", title: "RANGE_END_LINE" }, + { id: "rangeEndCharacter", title: "RANGE_END_CHARACTER" }, + { id: "resultTimeout", title: "RESULT_TIMEOUT" }, + { id: "resultError", title: "RESULT_ERROR" }, + { id: "resultEmpty", title: "RESULT_EMPTY" }, + { id: "resultExact", title: "RESULT_EXACT" }, + { id: "resultTypechecks", title: "RESULT_TYPECHECKS" }, + { id: "resultText", title: "RESULT_TEXT" }, + { id: "resultNonInsertPatch", title: "RESULT_NON_INSERT_PATCH" }, + { id: "eventJSON", title: "EVENT" } +]; +function commentSyntaxForLanguage(languageid) { + switch (languageid) { + case "haskell": + case "lua": + return "--"; + case "python": + case "ruby": + case "yaml": + case "dockerfile": + case "toml": + case "perl": + case "perl6": + return "#"; + default: + return "//"; + } +} +function compareItemByRange(a, b) { + const byStart = a.range.start.compareTo(b.range.start); + if (byStart !== 0) { + return byStart; + } + return a.range.end.compareTo(b.range.end); +} + +// src/cli/evaluate-autocomplete/Queries.ts +var fspromises5 = __toESM(require("fs/promises")); +var path25 = __toESM(require("path")); +var Queries = class { + constructor(queriesDirectory) { + this.queriesDirectory = queriesDirectory; + this.cache = []; + } + async loadQuery(parser2, language, name) { + const fromCache = this.cache.find((compiled) => compiled.language === language && compiled.queryName === name); + if (fromCache) { + return fromCache.compiledQuery; + } + return this.compileQuery(parser2, language, name); + } + async compileQuery(parser2, language, name) { + const languages3 = [language, ...grammarInheritance[language] ?? []]; + const queryStrings = []; + for (const queryLanguage of languages3) { + const queryPath = path25.join(this.queriesDirectory, queryLanguage, `${name}.scm`); + try { + const stat7 = await fspromises5.stat(queryPath); + if (!stat7.isFile()) { + continue; + } + } catch { + continue; + } + const queryString = await fspromises5.readFile(queryPath); + queryStrings.push(queryString.toString()); + } + const uncompiled = { + language, + queryName: name, + queryString: queryStrings.join("\n\n") + }; + const compiled = compileQuery(uncompiled, parser2); + this.cache.push(compiled); + return compiled.compiledQuery; + } +}; +function compileQuery(query, parser2) { + return { + ...query, + compiledQuery: parser2.getLanguage().query(query.queryString) + }; +} +var grammarInheritance = { + ["typescript" /* TypeScript */]: ["javascript" /* JavaScript */], + ["javascriptreact" /* JSX */]: ["javascript" /* JavaScript */], + ["typescriptreact" /* TSX */]: ["typescript" /* TypeScript */, "javascript" /* JavaScript */] +}; + +// src/cli/evaluate-autocomplete/SnapshotWriter.ts +var fspromises6 = __toESM(require("fs/promises")); +var import_csv_writer = __toESM(require_dist5()); + +// ../node_modules/.pnpm/path-scurry@1.10.1/node_modules/path-scurry/dist/mjs/index.js +var import_path24 = require("path"); +var import_url3 = require("url"); +var actualFS = __toESM(require("fs"), 1); +var import_fs7 = require("fs"); +var import_promises3 = require("fs/promises"); + +// ../node_modules/.pnpm/minipass@7.0.3/node_modules/minipass/dist/mjs/index.js +var import_events2 = require("events"); +var import_stream6 = __toESM(require("stream"), 1); +var import_string_decoder = require("string_decoder"); +var proc = typeof process === "object" && process ? process : { + stdout: null, + stderr: null +}; +var isStream2 = (s) => !!s && typeof s === "object" && (s instanceof Minipass || s instanceof import_stream6.default || isReadable(s) || isWritable(s)); +var isReadable = (s) => !!s && typeof s === "object" && s instanceof import_events2.EventEmitter && typeof s.pipe === "function" && // node core Writable streams have a pipe() method, but it throws +s.pipe !== import_stream6.default.Writable.prototype.pipe; +var isWritable = (s) => !!s && typeof s === "object" && s instanceof import_events2.EventEmitter && typeof s.write === "function" && typeof s.end === "function"; +var EOF = Symbol("EOF"); +var MAYBE_EMIT_END = Symbol("maybeEmitEnd"); +var EMITTED_END = Symbol("emittedEnd"); +var EMITTING_END = Symbol("emittingEnd"); +var EMITTED_ERROR = Symbol("emittedError"); +var CLOSED = Symbol("closed"); +var READ = Symbol("read"); +var FLUSH = Symbol("flush"); +var FLUSHCHUNK = Symbol("flushChunk"); +var ENCODING = Symbol("encoding"); +var DECODER = Symbol("decoder"); +var FLOWING = Symbol("flowing"); +var PAUSED = Symbol("paused"); +var RESUME = Symbol("resume"); +var BUFFER = Symbol("buffer"); +var PIPES = Symbol("pipes"); +var BUFFERLENGTH = Symbol("bufferLength"); +var BUFFERPUSH = Symbol("bufferPush"); +var BUFFERSHIFT = Symbol("bufferShift"); +var OBJECTMODE = Symbol("objectMode"); +var DESTROYED = Symbol("destroyed"); +var ERROR = Symbol("error"); +var EMITDATA = Symbol("emitData"); +var EMITEND = Symbol("emitEnd"); +var EMITEND2 = Symbol("emitEnd2"); +var ASYNC = Symbol("async"); +var ABORT2 = Symbol("abort"); +var ABORTED = Symbol("aborted"); +var SIGNAL = Symbol("signal"); +var DATALISTENERS = Symbol("dataListeners"); +var DISCARDED = Symbol("discarded"); +var defer = (fn) => Promise.resolve().then(fn); +var nodefer = (fn) => fn(); +var isEndish = (ev) => ev === "end" || ev === "finish" || ev === "prefinish"; +var isArrayBufferLike = (b) => b instanceof ArrayBuffer || !!b && typeof b === "object" && b.constructor && b.constructor.name === "ArrayBuffer" && b.byteLength >= 0; +var isArrayBufferView2 = (b) => !Buffer.isBuffer(b) && ArrayBuffer.isView(b); +var Pipe = class { + src; + dest; + opts; + ondrain; + constructor(src, dest, opts) { + this.src = src; + this.dest = dest; + this.opts = opts; + this.ondrain = () => src[RESUME](); + this.dest.on("drain", this.ondrain); + } + unpipe() { + this.dest.removeListener("drain", this.ondrain); + } + // only here for the prototype + /* c8 ignore start */ + proxyErrors(_er) { + } + /* c8 ignore stop */ + end() { + this.unpipe(); + if (this.opts.end) + this.dest.end(); + } +}; +var PipeProxyErrors = class extends Pipe { + unpipe() { + this.src.removeListener("error", this.proxyErrors); + super.unpipe(); + } + constructor(src, dest, opts) { + super(src, dest, opts); + this.proxyErrors = (er) => dest.emit("error", er); + src.on("error", this.proxyErrors); + } +}; +var isObjectModeOptions = (o) => !!o.objectMode; +var isEncodingOptions = (o) => !o.objectMode && !!o.encoding && o.encoding !== "buffer"; +var Minipass = class extends import_events2.EventEmitter { + [FLOWING] = false; + [PAUSED] = false; + [PIPES] = []; + [BUFFER] = []; + [OBJECTMODE]; + [ENCODING]; + [ASYNC]; + [DECODER]; + [EOF] = false; + [EMITTED_END] = false; + [EMITTING_END] = false; + [CLOSED] = false; + [EMITTED_ERROR] = null; + [BUFFERLENGTH] = 0; + [DESTROYED] = false; + [SIGNAL]; + [ABORTED] = false; + [DATALISTENERS] = 0; + [DISCARDED] = false; + /** + * true if the stream can be written + */ + writable = true; + /** + * true if the stream can be read + */ + readable = true; + /** + * If `RType` is Buffer, then options do not need to be provided. + * Otherwise, an options object must be provided to specify either + * {@link Minipass.SharedOptions.objectMode} or + * {@link Minipass.SharedOptions.encoding}, as appropriate. + */ + constructor(...args3) { + const options2 = args3[0] || {}; + super(); + if (options2.objectMode && typeof options2.encoding === "string") { + throw new TypeError("Encoding and objectMode may not be used together"); + } + if (isObjectModeOptions(options2)) { + this[OBJECTMODE] = true; + this[ENCODING] = null; + } else if (isEncodingOptions(options2)) { + this[ENCODING] = options2.encoding; + this[OBJECTMODE] = false; + } else { + this[OBJECTMODE] = false; + this[ENCODING] = null; + } + this[ASYNC] = !!options2.async; + this[DECODER] = this[ENCODING] ? new import_string_decoder.StringDecoder(this[ENCODING]) : null; + if (options2 && options2.debugExposeBuffer === true) { + Object.defineProperty(this, "buffer", { get: () => this[BUFFER] }); + } + if (options2 && options2.debugExposePipes === true) { + Object.defineProperty(this, "pipes", { get: () => this[PIPES] }); + } + const { signal } = options2; + if (signal) { + this[SIGNAL] = signal; + if (signal.aborted) { + this[ABORT2](); + } else { + signal.addEventListener("abort", () => this[ABORT2]()); + } + } + } + /** + * The amount of data stored in the buffer waiting to be read. + * + * For Buffer strings, this will be the total byte length. + * For string encoding streams, this will be the string character length, + * according to JavaScript's `string.length` logic. + * For objectMode streams, this is a count of the items waiting to be + * emitted. + */ + get bufferLength() { + return this[BUFFERLENGTH]; + } + /** + * The `BufferEncoding` currently in use, or `null` + */ + get encoding() { + return this[ENCODING]; + } + /** + * @deprecated - This is a read only property + */ + set encoding(_enc) { + throw new Error("Encoding must be set at instantiation time"); + } + /** + * @deprecated - Encoding may only be set at instantiation time + */ + setEncoding(_enc) { + throw new Error("Encoding must be set at instantiation time"); + } + /** + * True if this is an objectMode stream + */ + get objectMode() { + return this[OBJECTMODE]; + } + /** + * @deprecated - This is a read-only property + */ + set objectMode(_om) { + throw new Error("objectMode must be set at instantiation time"); + } + /** + * true if this is an async stream + */ + get ["async"]() { + return this[ASYNC]; + } + /** + * Set to true to make this stream async. + * + * Once set, it cannot be unset, as this would potentially cause incorrect + * behavior. Ie, a sync stream can be made async, but an async stream + * cannot be safely made sync. + */ + set ["async"](a) { + this[ASYNC] = this[ASYNC] || !!a; + } + // drop everything and get out of the flow completely + [ABORT2]() { + this[ABORTED] = true; + this.emit("abort", this[SIGNAL]?.reason); + this.destroy(this[SIGNAL]?.reason); + } + /** + * True if the stream has been aborted. + */ + get aborted() { + return this[ABORTED]; + } + /** + * No-op setter. Stream aborted status is set via the AbortSignal provided + * in the constructor options. + */ + set aborted(_) { + } + write(chunk, encoding, cb) { + if (this[ABORTED]) + return false; + if (this[EOF]) + throw new Error("write after end"); + if (this[DESTROYED]) { + this.emit("error", Object.assign(new Error("Cannot call write after a stream was destroyed"), { code: "ERR_STREAM_DESTROYED" })); + return true; + } + if (typeof encoding === "function") { + cb = encoding; + encoding = "utf8"; + } + if (!encoding) + encoding = "utf8"; + const fn = this[ASYNC] ? defer : nodefer; + if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) { + if (isArrayBufferView2(chunk)) { + chunk = Buffer.from(chunk.buffer, chunk.byteOffset, chunk.byteLength); + } else if (isArrayBufferLike(chunk)) { + chunk = Buffer.from(chunk); + } else if (typeof chunk !== "string") { + throw new Error("Non-contiguous data written to non-objectMode stream"); + } + } + if (this[OBJECTMODE]) { + if (this[FLOWING] && this[BUFFERLENGTH] !== 0) + this[FLUSH](true); + if (this[FLOWING]) + this.emit("data", chunk); + else + this[BUFFERPUSH](chunk); + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn(cb); + return this[FLOWING]; + } + if (!chunk.length) { + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn(cb); + return this[FLOWING]; + } + if (typeof chunk === "string" && // unless it is a string already ready for us to use + !(encoding === this[ENCODING] && !this[DECODER]?.lastNeed)) { + chunk = Buffer.from(chunk, encoding); + } + if (Buffer.isBuffer(chunk) && this[ENCODING]) { + chunk = this[DECODER].write(chunk); + } + if (this[FLOWING] && this[BUFFERLENGTH] !== 0) + this[FLUSH](true); + if (this[FLOWING]) + this.emit("data", chunk); + else + this[BUFFERPUSH](chunk); + if (this[BUFFERLENGTH] !== 0) + this.emit("readable"); + if (cb) + fn(cb); + return this[FLOWING]; + } + /** + * Low-level explicit read method. + * + * In objectMode, the argument is ignored, and one item is returned if + * available. + * + * `n` is the number of bytes (or in the case of encoding streams, + * characters) to consume. If `n` is not provided, then the entire buffer + * is returned, or `null` is returned if no data is available. + * + * If `n` is greater that the amount of data in the internal buffer, + * then `null` is returned. + */ + read(n) { + if (this[DESTROYED]) + return null; + this[DISCARDED] = false; + if (this[BUFFERLENGTH] === 0 || n === 0 || n && n > this[BUFFERLENGTH]) { + this[MAYBE_EMIT_END](); + return null; + } + if (this[OBJECTMODE]) + n = null; + if (this[BUFFER].length > 1 && !this[OBJECTMODE]) { + this[BUFFER] = [ + this[ENCODING] ? this[BUFFER].join("") : Buffer.concat(this[BUFFER], this[BUFFERLENGTH]) + ]; + } + const ret2 = this[READ](n || null, this[BUFFER][0]); + this[MAYBE_EMIT_END](); + return ret2; + } + [READ](n, chunk) { + if (this[OBJECTMODE]) + this[BUFFERSHIFT](); + else { + const c = chunk; + if (n === c.length || n === null) + this[BUFFERSHIFT](); + else if (typeof c === "string") { + this[BUFFER][0] = c.slice(n); + chunk = c.slice(0, n); + this[BUFFERLENGTH] -= n; + } else { + this[BUFFER][0] = c.subarray(n); + chunk = c.subarray(0, n); + this[BUFFERLENGTH] -= n; + } + } + this.emit("data", chunk); + if (!this[BUFFER].length && !this[EOF]) + this.emit("drain"); + return chunk; + } + end(chunk, encoding, cb) { + if (typeof chunk === "function") { + cb = chunk; + chunk = void 0; + } + if (typeof encoding === "function") { + cb = encoding; + encoding = "utf8"; + } + if (chunk !== void 0) + this.write(chunk, encoding); + if (cb) + this.once("end", cb); + this[EOF] = true; + this.writable = false; + if (this[FLOWING] || !this[PAUSED]) + this[MAYBE_EMIT_END](); + return this; + } + // don't let the internal resume be overwritten + [RESUME]() { + if (this[DESTROYED]) + return; + if (!this[DATALISTENERS] && !this[PIPES].length) { + this[DISCARDED] = true; + } + this[PAUSED] = false; + this[FLOWING] = true; + this.emit("resume"); + if (this[BUFFER].length) + this[FLUSH](); + else if (this[EOF]) + this[MAYBE_EMIT_END](); + else + this.emit("drain"); + } + /** + * Resume the stream if it is currently in a paused state + * + * If called when there are no pipe destinations or `data` event listeners, + * this will place the stream in a "discarded" state, where all data will + * be thrown away. The discarded state is removed if a pipe destination or + * data handler is added, if pause() is called, or if any synchronous or + * asynchronous iteration is started. + */ + resume() { + return this[RESUME](); + } + /** + * Pause the stream + */ + pause() { + this[FLOWING] = false; + this[PAUSED] = true; + this[DISCARDED] = false; + } + /** + * true if the stream has been forcibly destroyed + */ + get destroyed() { + return this[DESTROYED]; + } + /** + * true if the stream is currently in a flowing state, meaning that + * any writes will be immediately emitted. + */ + get flowing() { + return this[FLOWING]; + } + /** + * true if the stream is currently in a paused state + */ + get paused() { + return this[PAUSED]; + } + [BUFFERPUSH](chunk) { + if (this[OBJECTMODE]) + this[BUFFERLENGTH] += 1; + else + this[BUFFERLENGTH] += chunk.length; + this[BUFFER].push(chunk); + } + [BUFFERSHIFT]() { + if (this[OBJECTMODE]) + this[BUFFERLENGTH] -= 1; + else + this[BUFFERLENGTH] -= this[BUFFER][0].length; + return this[BUFFER].shift(); + } + [FLUSH](noDrain = false) { + do { + } while (this[FLUSHCHUNK](this[BUFFERSHIFT]()) && this[BUFFER].length); + if (!noDrain && !this[BUFFER].length && !this[EOF]) + this.emit("drain"); + } + [FLUSHCHUNK](chunk) { + this.emit("data", chunk); + return this[FLOWING]; + } + /** + * Pipe all data emitted by this stream into the destination provided. + * + * Triggers the flow of data. + */ + pipe(dest, opts) { + if (this[DESTROYED]) + return dest; + this[DISCARDED] = false; + const ended = this[EMITTED_END]; + opts = opts || {}; + if (dest === proc.stdout || dest === proc.stderr) + opts.end = false; + else + opts.end = opts.end !== false; + opts.proxyErrors = !!opts.proxyErrors; + if (ended) { + if (opts.end) + dest.end(); + } else { + this[PIPES].push(!opts.proxyErrors ? new Pipe(this, dest, opts) : new PipeProxyErrors(this, dest, opts)); + if (this[ASYNC]) + defer(() => this[RESUME]()); + else + this[RESUME](); + } + return dest; + } + /** + * Fully unhook a piped destination stream. + * + * If the destination stream was the only consumer of this stream (ie, + * there are no other piped destinations or `'data'` event listeners) + * then the flow of data will stop until there is another consumer or + * {@link Minipass#resume} is explicitly called. + */ + unpipe(dest) { + const p = this[PIPES].find((p2) => p2.dest === dest); + if (p) { + if (this[PIPES].length === 1) { + if (this[FLOWING] && this[DATALISTENERS] === 0) { + this[FLOWING] = false; + } + this[PIPES] = []; + } else + this[PIPES].splice(this[PIPES].indexOf(p), 1); + p.unpipe(); + } + } + /** + * Alias for {@link Minipass#on} + */ + addListener(ev, handler) { + return this.on(ev, handler); + } + /** + * Mostly identical to `EventEmitter.on`, with the following + * behavior differences to prevent data loss and unnecessary hangs: + * + * - Adding a 'data' event handler will trigger the flow of data + * + * - Adding a 'readable' event handler when there is data waiting to be read + * will cause 'readable' to be emitted immediately. + * + * - Adding an 'endish' event handler ('end', 'finish', etc.) which has + * already passed will cause the event to be emitted immediately and all + * handlers removed. + * + * - Adding an 'error' event handler after an error has been emitted will + * cause the event to be re-emitted immediately with the error previously + * raised. + */ + on(ev, handler) { + const ret2 = super.on(ev, handler); + if (ev === "data") { + this[DISCARDED] = false; + this[DATALISTENERS]++; + if (!this[PIPES].length && !this[FLOWING]) { + this[RESUME](); + } + } else if (ev === "readable" && this[BUFFERLENGTH] !== 0) { + super.emit("readable"); + } else if (isEndish(ev) && this[EMITTED_END]) { + super.emit(ev); + this.removeAllListeners(ev); + } else if (ev === "error" && this[EMITTED_ERROR]) { + const h = handler; + if (this[ASYNC]) + defer(() => h.call(this, this[EMITTED_ERROR])); + else + h.call(this, this[EMITTED_ERROR]); + } + return ret2; + } + /** + * Alias for {@link Minipass#off} + */ + removeListener(ev, handler) { + return this.off(ev, handler); + } + /** + * Mostly identical to `EventEmitter.off` + * + * If a 'data' event handler is removed, and it was the last consumer + * (ie, there are no pipe destinations or other 'data' event listeners), + * then the flow of data will stop until there is another consumer or + * {@link Minipass#resume} is explicitly called. + */ + off(ev, handler) { + const ret2 = super.off(ev, handler); + if (ev === "data") { + this[DATALISTENERS] = this.listeners("data").length; + if (this[DATALISTENERS] === 0 && !this[DISCARDED] && !this[PIPES].length) { + this[FLOWING] = false; + } + } + return ret2; + } + /** + * Mostly identical to `EventEmitter.removeAllListeners` + * + * If all 'data' event handlers are removed, and they were the last consumer + * (ie, there are no pipe destinations), then the flow of data will stop + * until there is another consumer or {@link Minipass#resume} is explicitly + * called. + */ + removeAllListeners(ev) { + const ret2 = super.removeAllListeners(ev); + if (ev === "data" || ev === void 0) { + this[DATALISTENERS] = 0; + if (!this[DISCARDED] && !this[PIPES].length) { + this[FLOWING] = false; + } + } + return ret2; + } + /** + * true if the 'end' event has been emitted + */ + get emittedEnd() { + return this[EMITTED_END]; + } + [MAYBE_EMIT_END]() { + if (!this[EMITTING_END] && !this[EMITTED_END] && !this[DESTROYED] && this[BUFFER].length === 0 && this[EOF]) { + this[EMITTING_END] = true; + this.emit("end"); + this.emit("prefinish"); + this.emit("finish"); + if (this[CLOSED]) + this.emit("close"); + this[EMITTING_END] = false; + } + } + /** + * Mostly identical to `EventEmitter.emit`, with the following + * behavior differences to prevent data loss and unnecessary hangs: + * + * If the stream has been destroyed, and the event is something other + * than 'close' or 'error', then `false` is returned and no handlers + * are called. + * + * If the event is 'end', and has already been emitted, then the event + * is ignored. If the stream is in a paused or non-flowing state, then + * the event will be deferred until data flow resumes. If the stream is + * async, then handlers will be called on the next tick rather than + * immediately. + * + * If the event is 'close', and 'end' has not yet been emitted, then + * the event will be deferred until after 'end' is emitted. + * + * If the event is 'error', and an AbortSignal was provided for the stream, + * and there are no listeners, then the event is ignored, matching the + * behavior of node core streams in the presense of an AbortSignal. + * + * If the event is 'finish' or 'prefinish', then all listeners will be + * removed after emitting the event, to prevent double-firing. + */ + emit(ev, ...args3) { + const data = args3[0]; + if (ev !== "error" && ev !== "close" && ev !== DESTROYED && this[DESTROYED]) { + return false; + } else if (ev === "data") { + return !this[OBJECTMODE] && !data ? false : this[ASYNC] ? (defer(() => this[EMITDATA](data)), true) : this[EMITDATA](data); + } else if (ev === "end") { + return this[EMITEND](); + } else if (ev === "close") { + this[CLOSED] = true; + if (!this[EMITTED_END] && !this[DESTROYED]) + return false; + const ret3 = super.emit("close"); + this.removeAllListeners("close"); + return ret3; + } else if (ev === "error") { + this[EMITTED_ERROR] = data; + super.emit(ERROR, data); + const ret3 = !this[SIGNAL] || this.listeners("error").length ? super.emit("error", data) : false; + this[MAYBE_EMIT_END](); + return ret3; + } else if (ev === "resume") { + const ret3 = super.emit("resume"); + this[MAYBE_EMIT_END](); + return ret3; + } else if (ev === "finish" || ev === "prefinish") { + const ret3 = super.emit(ev); + this.removeAllListeners(ev); + return ret3; + } + const ret2 = super.emit(ev, ...args3); + this[MAYBE_EMIT_END](); + return ret2; + } + [EMITDATA](data) { + for (const p of this[PIPES]) { + if (p.dest.write(data) === false) + this.pause(); + } + const ret2 = this[DISCARDED] ? false : super.emit("data", data); + this[MAYBE_EMIT_END](); + return ret2; + } + [EMITEND]() { + if (this[EMITTED_END]) + return false; + this[EMITTED_END] = true; + this.readable = false; + return this[ASYNC] ? (defer(() => this[EMITEND2]()), true) : this[EMITEND2](); + } + [EMITEND2]() { + if (this[DECODER]) { + const data = this[DECODER].end(); + if (data) { + for (const p of this[PIPES]) { + p.dest.write(data); + } + if (!this[DISCARDED]) + super.emit("data", data); + } + } + for (const p of this[PIPES]) { + p.end(); + } + const ret2 = super.emit("end"); + this.removeAllListeners("end"); + return ret2; + } + /** + * Return a Promise that resolves to an array of all emitted data once + * the stream ends. + */ + async collect() { + const buf = Object.assign([], { + dataLength: 0 + }); + if (!this[OBJECTMODE]) + buf.dataLength = 0; + const p = this.promise(); + this.on("data", (c) => { + buf.push(c); + if (!this[OBJECTMODE]) + buf.dataLength += c.length; + }); + await p; + return buf; + } + /** + * Return a Promise that resolves to the concatenation of all emitted data + * once the stream ends. + * + * Not allowed on objectMode streams. + */ + async concat() { + if (this[OBJECTMODE]) { + throw new Error("cannot concat in objectMode"); + } + const buf = await this.collect(); + return this[ENCODING] ? buf.join("") : Buffer.concat(buf, buf.dataLength); + } + /** + * Return a void Promise that resolves once the stream ends. + */ + async promise() { + return new Promise((resolve8, reject) => { + this.on(DESTROYED, () => reject(new Error("stream destroyed"))); + this.on("error", (er) => reject(er)); + this.on("end", () => resolve8()); + }); + } + /** + * Asynchronous `for await of` iteration. + * + * This will continue emitting all chunks until the stream terminates. + */ + [Symbol.asyncIterator]() { + this[DISCARDED] = false; + let stopped = false; + const stop2 = async () => { + this.pause(); + stopped = true; + return { value: void 0, done: true }; + }; + const next = () => { + if (stopped) + return stop2(); + const res = this.read(); + if (res !== null) + return Promise.resolve({ done: false, value: res }); + if (this[EOF]) + return stop2(); + let resolve8; + let reject; + const onerr = (er) => { + this.off("data", ondata); + this.off("end", onend); + this.off(DESTROYED, ondestroy); + stop2(); + reject(er); + }; + const ondata = (value) => { + this.off("error", onerr); + this.off("end", onend); + this.off(DESTROYED, ondestroy); + this.pause(); + resolve8({ value, done: !!this[EOF] }); + }; + const onend = () => { + this.off("error", onerr); + this.off("data", ondata); + this.off(DESTROYED, ondestroy); + stop2(); + resolve8({ done: true, value: void 0 }); + }; + const ondestroy = () => onerr(new Error("stream destroyed")); + return new Promise((res2, rej) => { + reject = rej; + resolve8 = res2; + this.once(DESTROYED, ondestroy); + this.once("error", onerr); + this.once("end", onend); + this.once("data", ondata); + }); + }; + return { + next, + throw: stop2, + return: stop2, + [Symbol.asyncIterator]() { + return this; + } + }; + } + /** + * Synchronous `for of` iteration. + * + * The iteration will terminate when the internal buffer runs out, even + * if the stream has not yet terminated. + */ + [Symbol.iterator]() { + this[DISCARDED] = false; + let stopped = false; + const stop2 = () => { + this.pause(); + this.off(ERROR, stop2); + this.off(DESTROYED, stop2); + this.off("end", stop2); + stopped = true; + return { done: true, value: void 0 }; + }; + const next = () => { + if (stopped) + return stop2(); + const value = this.read(); + return value === null ? stop2() : { done: false, value }; + }; + this.once("end", stop2); + this.once(ERROR, stop2); + this.once(DESTROYED, stop2); + return { + next, + throw: stop2, + return: stop2, + [Symbol.iterator]() { + return this; + } + }; + } + /** + * Destroy a stream, preventing it from being used for any further purpose. + * + * If the stream has a `close()` method, then it will be called on + * destruction. + * + * After destruction, any attempt to write data, read data, or emit most + * events will be ignored. + * + * If an error argument is provided, then it will be emitted in an + * 'error' event. + */ + destroy(er) { + if (this[DESTROYED]) { + if (er) + this.emit("error", er); + else + this.emit(DESTROYED); + return this; + } + this[DESTROYED] = true; + this[DISCARDED] = true; + this[BUFFER].length = 0; + this[BUFFERLENGTH] = 0; + const wc = this; + if (typeof wc.close === "function" && !this[CLOSED]) + wc.close(); + if (er) + this.emit("error", er); + else + this.emit(DESTROYED); + return this; + } + /** + * Alias for {@link isStream} + * + * Former export location, maintained for backwards compatibility. + * + * @deprecated + */ + static get isStream() { + return isStream2; + } +}; + +// ../node_modules/.pnpm/path-scurry@1.10.1/node_modules/path-scurry/dist/mjs/index.js +var realpathSync = import_fs7.realpathSync.native; +var defaultFS = { + lstatSync: import_fs7.lstatSync, + readdir: import_fs7.readdir, + readdirSync: import_fs7.readdirSync, + readlinkSync: import_fs7.readlinkSync, + realpathSync, + promises: { + lstat: import_promises3.lstat, + readdir: import_promises3.readdir, + readlink: import_promises3.readlink, + realpath: import_promises3.realpath + } +}; +var fsFromOption = (fsOption) => !fsOption || fsOption === defaultFS || fsOption === actualFS ? defaultFS : { + ...defaultFS, + ...fsOption, + promises: { + ...defaultFS.promises, + ...fsOption.promises || {} + } +}; +var uncDriveRegexp = /^\\\\\?\\([a-z]:)\\?$/i; +var uncToDrive = (rootPath2) => rootPath2.replace(/\//g, "\\").replace(uncDriveRegexp, "$1\\"); +var eitherSep = /[\\\/]/; +var UNKNOWN = 0; +var IFIFO = 1; +var IFCHR = 2; +var IFDIR = 4; +var IFBLK = 6; +var IFREG = 8; +var IFLNK = 10; +var IFSOCK = 12; +var IFMT = 15; +var IFMT_UNKNOWN = ~IFMT; +var READDIR_CALLED = 16; +var LSTAT_CALLED = 32; +var ENOTDIR = 64; +var ENOENT = 128; +var ENOREADLINK = 256; +var ENOREALPATH = 512; +var ENOCHILD = ENOTDIR | ENOENT | ENOREALPATH; +var TYPEMASK = 1023; +var entToType = (s) => s.isFile() ? IFREG : s.isDirectory() ? IFDIR : s.isSymbolicLink() ? IFLNK : s.isCharacterDevice() ? IFCHR : s.isBlockDevice() ? IFBLK : s.isSocket() ? IFSOCK : s.isFIFO() ? IFIFO : UNKNOWN; +var normalizeCache = /* @__PURE__ */ new Map(); +var normalize3 = (s) => { + const c = normalizeCache.get(s); + if (c) + return c; + const n = s.normalize("NFKD"); + normalizeCache.set(s, n); + return n; +}; +var normalizeNocaseCache = /* @__PURE__ */ new Map(); +var normalizeNocase = (s) => { + const c = normalizeNocaseCache.get(s); + if (c) + return c; + const n = normalize3(s.toLowerCase()); + normalizeNocaseCache.set(s, n); + return n; +}; +var ResolveCache = class extends LRUCache { + constructor() { + super({ max: 256 }); + } +}; +var ChildrenCache = class extends LRUCache { + constructor(maxSize = 16 * 1024) { + super({ + maxSize, + // parent + children + sizeCalculation: (a) => a.length + 1 + }); + } +}; +var setAsCwd = Symbol("PathScurry setAsCwd"); +var PathBase = class { + /** + * the basename of this path + * + * **Important**: *always* test the path name against any test string + * usingthe {@link isNamed} method, and not by directly comparing this + * string. Otherwise, unicode path strings that the system sees as identical + * will not be properly treated as the same path, leading to incorrect + * behavior and possible security issues. + */ + name; + /** + * the Path entry corresponding to the path root. + * + * @internal + */ + root; + /** + * All roots found within the current PathScurry family + * + * @internal + */ + roots; + /** + * a reference to the parent path, or undefined in the case of root entries + * + * @internal + */ + parent; + /** + * boolean indicating whether paths are compared case-insensitively + * @internal + */ + nocase; + // potential default fs override + #fs; + // Stats fields + #dev; + get dev() { + return this.#dev; + } + #mode; + get mode() { + return this.#mode; + } + #nlink; + get nlink() { + return this.#nlink; + } + #uid; + get uid() { + return this.#uid; + } + #gid; + get gid() { + return this.#gid; + } + #rdev; + get rdev() { + return this.#rdev; + } + #blksize; + get blksize() { + return this.#blksize; + } + #ino; + get ino() { + return this.#ino; + } + #size; + get size() { + return this.#size; + } + #blocks; + get blocks() { + return this.#blocks; + } + #atimeMs; + get atimeMs() { + return this.#atimeMs; + } + #mtimeMs; + get mtimeMs() { + return this.#mtimeMs; + } + #ctimeMs; + get ctimeMs() { + return this.#ctimeMs; + } + #birthtimeMs; + get birthtimeMs() { + return this.#birthtimeMs; + } + #atime; + get atime() { + return this.#atime; + } + #mtime; + get mtime() { + return this.#mtime; + } + #ctime; + get ctime() { + return this.#ctime; + } + #birthtime; + get birthtime() { + return this.#birthtime; + } + #matchName; + #depth; + #fullpath; + #fullpathPosix; + #relative; + #relativePosix; + #type; + #children; + #linkTarget; + #realpath; + /** + * This property is for compatibility with the Dirent class as of + * Node v20, where Dirent['path'] refers to the path of the directory + * that was passed to readdir. So, somewhat counterintuitively, this + * property refers to the *parent* path, not the path object itself. + * For root entries, it's the path to the entry itself. + */ + get path() { + return (this.parent || this).fullpath(); + } + /** + * Do not create new Path objects directly. They should always be accessed + * via the PathScurry class or other methods on the Path class. + * + * @internal + */ + constructor(name, type2 = UNKNOWN, root, roots, nocase, children, opts) { + this.name = name; + this.#matchName = nocase ? normalizeNocase(name) : normalize3(name); + this.#type = type2 & TYPEMASK; + this.nocase = nocase; + this.roots = roots; + this.root = root || this; + this.#children = children; + this.#fullpath = opts.fullpath; + this.#relative = opts.relative; + this.#relativePosix = opts.relativePosix; + this.parent = opts.parent; + if (this.parent) { + this.#fs = this.parent.#fs; + } else { + this.#fs = fsFromOption(opts.fs); + } + } + /** + * Returns the depth of the Path object from its root. + * + * For example, a path at `/foo/bar` would have a depth of 2. + */ + depth() { + if (this.#depth !== void 0) + return this.#depth; + if (!this.parent) + return this.#depth = 0; + return this.#depth = this.parent.depth() + 1; + } + /** + * @internal + */ + childrenCache() { + return this.#children; + } + /** + * Get the Path object referenced by the string path, resolved from this Path + */ + resolve(path30) { + if (!path30) { + return this; + } + const rootPath2 = this.getRootString(path30); + const dir = path30.substring(rootPath2.length); + const dirParts = dir.split(this.splitSep); + const result = rootPath2 ? this.getRoot(rootPath2).#resolveParts(dirParts) : this.#resolveParts(dirParts); + return result; + } + #resolveParts(dirParts) { + let p = this; + for (const part of dirParts) { + p = p.child(part); + } + return p; + } + /** + * Returns the cached children Path objects, if still available. If they + * have fallen out of the cache, then returns an empty array, and resets the + * READDIR_CALLED bit, so that future calls to readdir() will require an fs + * lookup. + * + * @internal + */ + children() { + const cached = this.#children.get(this); + if (cached) { + return cached; + } + const children = Object.assign([], { provisional: 0 }); + this.#children.set(this, children); + this.#type &= ~READDIR_CALLED; + return children; + } + /** + * Resolves a path portion and returns or creates the child Path. + * + * Returns `this` if pathPart is `''` or `'.'`, or `parent` if pathPart is + * `'..'`. + * + * This should not be called directly. If `pathPart` contains any path + * separators, it will lead to unsafe undefined behavior. + * + * Use `Path.resolve()` instead. + * + * @internal + */ + child(pathPart, opts) { + if (pathPart === "" || pathPart === ".") { + return this; + } + if (pathPart === "..") { + return this.parent || this; + } + const children = this.children(); + const name = this.nocase ? normalizeNocase(pathPart) : normalize3(pathPart); + for (const p of children) { + if (p.#matchName === name) { + return p; + } + } + const s = this.parent ? this.sep : ""; + const fullpath = this.#fullpath ? this.#fullpath + s + pathPart : void 0; + const pchild = this.newChild(pathPart, UNKNOWN, { + ...opts, + parent: this, + fullpath + }); + if (!this.canReaddir()) { + pchild.#type |= ENOENT; + } + children.push(pchild); + return pchild; + } + /** + * The relative path from the cwd. If it does not share an ancestor with + * the cwd, then this ends up being equivalent to the fullpath() + */ + relative() { + if (this.#relative !== void 0) { + return this.#relative; + } + const name = this.name; + const p = this.parent; + if (!p) { + return this.#relative = this.name; + } + const pv = p.relative(); + return pv + (!pv || !p.parent ? "" : this.sep) + name; + } + /** + * The relative path from the cwd, using / as the path separator. + * If it does not share an ancestor with + * the cwd, then this ends up being equivalent to the fullpathPosix() + * On posix systems, this is identical to relative(). + */ + relativePosix() { + if (this.sep === "/") + return this.relative(); + if (this.#relativePosix !== void 0) + return this.#relativePosix; + const name = this.name; + const p = this.parent; + if (!p) { + return this.#relativePosix = this.fullpathPosix(); + } + const pv = p.relativePosix(); + return pv + (!pv || !p.parent ? "" : "/") + name; + } + /** + * The fully resolved path string for this Path entry + */ + fullpath() { + if (this.#fullpath !== void 0) { + return this.#fullpath; + } + const name = this.name; + const p = this.parent; + if (!p) { + return this.#fullpath = this.name; + } + const pv = p.fullpath(); + const fp = pv + (!p.parent ? "" : this.sep) + name; + return this.#fullpath = fp; + } + /** + * On platforms other than windows, this is identical to fullpath. + * + * On windows, this is overridden to return the forward-slash form of the + * full UNC path. + */ + fullpathPosix() { + if (this.#fullpathPosix !== void 0) + return this.#fullpathPosix; + if (this.sep === "/") + return this.#fullpathPosix = this.fullpath(); + if (!this.parent) { + const p2 = this.fullpath().replace(/\\/g, "/"); + if (/^[a-z]:\//i.test(p2)) { + return this.#fullpathPosix = `//?/${p2}`; + } else { + return this.#fullpathPosix = p2; + } + } + const p = this.parent; + const pfpp = p.fullpathPosix(); + const fpp = pfpp + (!pfpp || !p.parent ? "" : "/") + this.name; + return this.#fullpathPosix = fpp; + } + /** + * Is the Path of an unknown type? + * + * Note that we might know *something* about it if there has been a previous + * filesystem operation, for example that it does not exist, or is not a + * link, or whether it has child entries. + */ + isUnknown() { + return (this.#type & IFMT) === UNKNOWN; + } + isType(type2) { + return this[`is${type2}`](); + } + getType() { + return this.isUnknown() ? "Unknown" : this.isDirectory() ? "Directory" : this.isFile() ? "File" : this.isSymbolicLink() ? "SymbolicLink" : this.isFIFO() ? "FIFO" : this.isCharacterDevice() ? "CharacterDevice" : this.isBlockDevice() ? "BlockDevice" : ( + /* c8 ignore start */ + this.isSocket() ? "Socket" : "Unknown" + ); + } + /** + * Is the Path a regular file? + */ + isFile() { + return (this.#type & IFMT) === IFREG; + } + /** + * Is the Path a directory? + */ + isDirectory() { + return (this.#type & IFMT) === IFDIR; + } + /** + * Is the path a character device? + */ + isCharacterDevice() { + return (this.#type & IFMT) === IFCHR; + } + /** + * Is the path a block device? + */ + isBlockDevice() { + return (this.#type & IFMT) === IFBLK; + } + /** + * Is the path a FIFO pipe? + */ + isFIFO() { + return (this.#type & IFMT) === IFIFO; + } + /** + * Is the path a socket? + */ + isSocket() { + return (this.#type & IFMT) === IFSOCK; + } + /** + * Is the path a symbolic link? + */ + isSymbolicLink() { + return (this.#type & IFLNK) === IFLNK; + } + /** + * Return the entry if it has been subject of a successful lstat, or + * undefined otherwise. + * + * Does not read the filesystem, so an undefined result *could* simply + * mean that we haven't called lstat on it. + */ + lstatCached() { + return this.#type & LSTAT_CALLED ? this : void 0; + } + /** + * Return the cached link target if the entry has been the subject of a + * successful readlink, or undefined otherwise. + * + * Does not read the filesystem, so an undefined result *could* just mean we + * don't have any cached data. Only use it if you are very sure that a + * readlink() has been called at some point. + */ + readlinkCached() { + return this.#linkTarget; + } + /** + * Returns the cached realpath target if the entry has been the subject + * of a successful realpath, or undefined otherwise. + * + * Does not read the filesystem, so an undefined result *could* just mean we + * don't have any cached data. Only use it if you are very sure that a + * realpath() has been called at some point. + */ + realpathCached() { + return this.#realpath; + } + /** + * Returns the cached child Path entries array if the entry has been the + * subject of a successful readdir(), or [] otherwise. + * + * Does not read the filesystem, so an empty array *could* just mean we + * don't have any cached data. Only use it if you are very sure that a + * readdir() has been called recently enough to still be valid. + */ + readdirCached() { + const children = this.children(); + return children.slice(0, children.provisional); + } + /** + * Return true if it's worth trying to readlink. Ie, we don't (yet) have + * any indication that readlink will definitely fail. + * + * Returns false if the path is known to not be a symlink, if a previous + * readlink failed, or if the entry does not exist. + */ + canReadlink() { + if (this.#linkTarget) + return true; + if (!this.parent) + return false; + const ifmt = this.#type & IFMT; + return !(ifmt !== UNKNOWN && ifmt !== IFLNK || this.#type & ENOREADLINK || this.#type & ENOENT); + } + /** + * Return true if readdir has previously been successfully called on this + * path, indicating that cachedReaddir() is likely valid. + */ + calledReaddir() { + return !!(this.#type & READDIR_CALLED); + } + /** + * Returns true if the path is known to not exist. That is, a previous lstat + * or readdir failed to verify its existence when that would have been + * expected, or a parent entry was marked either enoent or enotdir. + */ + isENOENT() { + return !!(this.#type & ENOENT); + } + /** + * Return true if the path is a match for the given path name. This handles + * case sensitivity and unicode normalization. + * + * Note: even on case-sensitive systems, it is **not** safe to test the + * equality of the `.name` property to determine whether a given pathname + * matches, due to unicode normalization mismatches. + * + * Always use this method instead of testing the `path.name` property + * directly. + */ + isNamed(n) { + return !this.nocase ? this.#matchName === normalize3(n) : this.#matchName === normalizeNocase(n); + } + /** + * Return the Path object corresponding to the target of a symbolic link. + * + * If the Path is not a symbolic link, or if the readlink call fails for any + * reason, `undefined` is returned. + * + * Result is cached, and thus may be outdated if the filesystem is mutated. + */ + async readlink() { + const target = this.#linkTarget; + if (target) { + return target; + } + if (!this.canReadlink()) { + return void 0; + } + if (!this.parent) { + return void 0; + } + try { + const read = await this.#fs.promises.readlink(this.fullpath()); + const linkTarget = this.parent.resolve(read); + if (linkTarget) { + return this.#linkTarget = linkTarget; + } + } catch (er) { + this.#readlinkFail(er.code); + return void 0; + } + } + /** + * Synchronous {@link PathBase.readlink} + */ + readlinkSync() { + const target = this.#linkTarget; + if (target) { + return target; + } + if (!this.canReadlink()) { + return void 0; + } + if (!this.parent) { + return void 0; + } + try { + const read = this.#fs.readlinkSync(this.fullpath()); + const linkTarget = this.parent.resolve(read); + if (linkTarget) { + return this.#linkTarget = linkTarget; + } + } catch (er) { + this.#readlinkFail(er.code); + return void 0; + } + } + #readdirSuccess(children) { + this.#type |= READDIR_CALLED; + for (let p = children.provisional; p < children.length; p++) { + children[p].#markENOENT(); + } + } + #markENOENT() { + if (this.#type & ENOENT) + return; + this.#type = (this.#type | ENOENT) & IFMT_UNKNOWN; + this.#markChildrenENOENT(); + } + #markChildrenENOENT() { + const children = this.children(); + children.provisional = 0; + for (const p of children) { + p.#markENOENT(); + } + } + #markENOREALPATH() { + this.#type |= ENOREALPATH; + this.#markENOTDIR(); + } + // save the information when we know the entry is not a dir + #markENOTDIR() { + if (this.#type & ENOTDIR) + return; + let t = this.#type; + if ((t & IFMT) === IFDIR) + t &= IFMT_UNKNOWN; + this.#type = t | ENOTDIR; + this.#markChildrenENOENT(); + } + #readdirFail(code = "") { + if (code === "ENOTDIR" || code === "EPERM") { + this.#markENOTDIR(); + } else if (code === "ENOENT") { + this.#markENOENT(); + } else { + this.children().provisional = 0; + } + } + #lstatFail(code = "") { + if (code === "ENOTDIR") { + const p = this.parent; + p.#markENOTDIR(); + } else if (code === "ENOENT") { + this.#markENOENT(); + } + } + #readlinkFail(code = "") { + let ter = this.#type; + ter |= ENOREADLINK; + if (code === "ENOENT") + ter |= ENOENT; + if (code === "EINVAL" || code === "UNKNOWN") { + ter &= IFMT_UNKNOWN; + } + this.#type = ter; + if (code === "ENOTDIR" && this.parent) { + this.parent.#markENOTDIR(); + } + } + #readdirAddChild(e, c) { + return this.#readdirMaybePromoteChild(e, c) || this.#readdirAddNewChild(e, c); + } + #readdirAddNewChild(e, c) { + const type2 = entToType(e); + const child = this.newChild(e.name, type2, { parent: this }); + const ifmt = child.#type & IFMT; + if (ifmt !== IFDIR && ifmt !== IFLNK && ifmt !== UNKNOWN) { + child.#type |= ENOTDIR; + } + c.unshift(child); + c.provisional++; + return child; + } + #readdirMaybePromoteChild(e, c) { + for (let p = c.provisional; p < c.length; p++) { + const pchild = c[p]; + const name = this.nocase ? normalizeNocase(e.name) : normalize3(e.name); + if (name !== pchild.#matchName) { + continue; + } + return this.#readdirPromoteChild(e, pchild, p, c); + } + } + #readdirPromoteChild(e, p, index, c) { + const v = p.name; + p.#type = p.#type & IFMT_UNKNOWN | entToType(e); + if (v !== e.name) + p.name = e.name; + if (index !== c.provisional) { + if (index === c.length - 1) + c.pop(); + else + c.splice(index, 1); + c.unshift(p); + } + c.provisional++; + return p; + } + /** + * Call lstat() on this Path, and update all known information that can be + * determined. + * + * Note that unlike `fs.lstat()`, the returned value does not contain some + * information, such as `mode`, `dev`, `nlink`, and `ino`. If that + * information is required, you will need to call `fs.lstat` yourself. + * + * If the Path refers to a nonexistent file, or if the lstat call fails for + * any reason, `undefined` is returned. Otherwise the updated Path object is + * returned. + * + * Results are cached, and thus may be out of date if the filesystem is + * mutated. + */ + async lstat() { + if ((this.#type & ENOENT) === 0) { + try { + this.#applyStat(await this.#fs.promises.lstat(this.fullpath())); + return this; + } catch (er) { + this.#lstatFail(er.code); + } + } + } + /** + * synchronous {@link PathBase.lstat} + */ + lstatSync() { + if ((this.#type & ENOENT) === 0) { + try { + this.#applyStat(this.#fs.lstatSync(this.fullpath())); + return this; + } catch (er) { + this.#lstatFail(er.code); + } + } + } + #applyStat(st) { + const { atime, atimeMs, birthtime, birthtimeMs, blksize, blocks, ctime, ctimeMs, dev, gid, ino, mode, mtime, mtimeMs, nlink, rdev, size, uid } = st; + this.#atime = atime; + this.#atimeMs = atimeMs; + this.#birthtime = birthtime; + this.#birthtimeMs = birthtimeMs; + this.#blksize = blksize; + this.#blocks = blocks; + this.#ctime = ctime; + this.#ctimeMs = ctimeMs; + this.#dev = dev; + this.#gid = gid; + this.#ino = ino; + this.#mode = mode; + this.#mtime = mtime; + this.#mtimeMs = mtimeMs; + this.#nlink = nlink; + this.#rdev = rdev; + this.#size = size; + this.#uid = uid; + const ifmt = entToType(st); + this.#type = this.#type & IFMT_UNKNOWN | ifmt | LSTAT_CALLED; + if (ifmt !== UNKNOWN && ifmt !== IFDIR && ifmt !== IFLNK) { + this.#type |= ENOTDIR; + } + } + #onReaddirCB = []; + #readdirCBInFlight = false; + #callOnReaddirCB(children) { + this.#readdirCBInFlight = false; + const cbs = this.#onReaddirCB.slice(); + this.#onReaddirCB.length = 0; + cbs.forEach((cb) => cb(null, children)); + } + /** + * Standard node-style callback interface to get list of directory entries. + * + * If the Path cannot or does not contain any children, then an empty array + * is returned. + * + * Results are cached, and thus may be out of date if the filesystem is + * mutated. + * + * @param cb The callback called with (er, entries). Note that the `er` + * param is somewhat extraneous, as all readdir() errors are handled and + * simply result in an empty set of entries being returned. + * @param allowZalgo Boolean indicating that immediately known results should + * *not* be deferred with `queueMicrotask`. Defaults to `false`. Release + * zalgo at your peril, the dark pony lord is devious and unforgiving. + */ + readdirCB(cb, allowZalgo = false) { + if (!this.canReaddir()) { + if (allowZalgo) + cb(null, []); + else + queueMicrotask(() => cb(null, [])); + return; + } + const children = this.children(); + if (this.calledReaddir()) { + const c = children.slice(0, children.provisional); + if (allowZalgo) + cb(null, c); + else + queueMicrotask(() => cb(null, c)); + return; + } + this.#onReaddirCB.push(cb); + if (this.#readdirCBInFlight) { + return; + } + this.#readdirCBInFlight = true; + const fullpath = this.fullpath(); + this.#fs.readdir(fullpath, { withFileTypes: true }, (er, entries) => { + if (er) { + this.#readdirFail(er.code); + children.provisional = 0; + } else { + for (const e of entries) { + this.#readdirAddChild(e, children); + } + this.#readdirSuccess(children); + } + this.#callOnReaddirCB(children.slice(0, children.provisional)); + return; + }); + } + #asyncReaddirInFlight; + /** + * Return an array of known child entries. + * + * If the Path cannot or does not contain any children, then an empty array + * is returned. + * + * Results are cached, and thus may be out of date if the filesystem is + * mutated. + */ + async readdir() { + if (!this.canReaddir()) { + return []; + } + const children = this.children(); + if (this.calledReaddir()) { + return children.slice(0, children.provisional); + } + const fullpath = this.fullpath(); + if (this.#asyncReaddirInFlight) { + await this.#asyncReaddirInFlight; + } else { + let resolve8 = () => { + }; + this.#asyncReaddirInFlight = new Promise((res) => resolve8 = res); + try { + for (const e of await this.#fs.promises.readdir(fullpath, { + withFileTypes: true + })) { + this.#readdirAddChild(e, children); + } + this.#readdirSuccess(children); + } catch (er) { + this.#readdirFail(er.code); + children.provisional = 0; + } + this.#asyncReaddirInFlight = void 0; + resolve8(); + } + return children.slice(0, children.provisional); + } + /** + * synchronous {@link PathBase.readdir} + */ + readdirSync() { + if (!this.canReaddir()) { + return []; + } + const children = this.children(); + if (this.calledReaddir()) { + return children.slice(0, children.provisional); + } + const fullpath = this.fullpath(); + try { + for (const e of this.#fs.readdirSync(fullpath, { + withFileTypes: true + })) { + this.#readdirAddChild(e, children); + } + this.#readdirSuccess(children); + } catch (er) { + this.#readdirFail(er.code); + children.provisional = 0; + } + return children.slice(0, children.provisional); + } + canReaddir() { + if (this.#type & ENOCHILD) + return false; + const ifmt = IFMT & this.#type; + if (!(ifmt === UNKNOWN || ifmt === IFDIR || ifmt === IFLNK)) { + return false; + } + return true; + } + shouldWalk(dirs, walkFilter) { + return (this.#type & IFDIR) === IFDIR && !(this.#type & ENOCHILD) && !dirs.has(this) && (!walkFilter || walkFilter(this)); + } + /** + * Return the Path object corresponding to path as resolved + * by realpath(3). + * + * If the realpath call fails for any reason, `undefined` is returned. + * + * Result is cached, and thus may be outdated if the filesystem is mutated. + * On success, returns a Path object. + */ + async realpath() { + if (this.#realpath) + return this.#realpath; + if ((ENOREALPATH | ENOREADLINK | ENOENT) & this.#type) + return void 0; + try { + const rp = await this.#fs.promises.realpath(this.fullpath()); + return this.#realpath = this.resolve(rp); + } catch (_) { + this.#markENOREALPATH(); + } + } + /** + * Synchronous {@link realpath} + */ + realpathSync() { + if (this.#realpath) + return this.#realpath; + if ((ENOREALPATH | ENOREADLINK | ENOENT) & this.#type) + return void 0; + try { + const rp = this.#fs.realpathSync(this.fullpath()); + return this.#realpath = this.resolve(rp); + } catch (_) { + this.#markENOREALPATH(); + } + } + /** + * Internal method to mark this Path object as the scurry cwd, + * called by {@link PathScurry#chdir} + * + * @internal + */ + [setAsCwd](oldCwd) { + if (oldCwd === this) + return; + const changed = /* @__PURE__ */ new Set([]); + let rp = []; + let p = this; + while (p && p.parent) { + changed.add(p); + p.#relative = rp.join(this.sep); + p.#relativePosix = rp.join("/"); + p = p.parent; + rp.push(".."); + } + p = oldCwd; + while (p && p.parent && !changed.has(p)) { + p.#relative = void 0; + p.#relativePosix = void 0; + p = p.parent; + } + } +}; +var PathWin32 = class _PathWin32 extends PathBase { + /** + * Separator for generating path strings. + */ + sep = "\\"; + /** + * Separator for parsing path strings. + */ + splitSep = eitherSep; + /** + * Do not create new Path objects directly. They should always be accessed + * via the PathScurry class or other methods on the Path class. + * + * @internal + */ + constructor(name, type2 = UNKNOWN, root, roots, nocase, children, opts) { + super(name, type2, root, roots, nocase, children, opts); + } + /** + * @internal + */ + newChild(name, type2 = UNKNOWN, opts = {}) { + return new _PathWin32(name, type2, this.root, this.roots, this.nocase, this.childrenCache(), opts); + } + /** + * @internal + */ + getRootString(path30) { + return import_path24.win32.parse(path30).root; + } + /** + * @internal + */ + getRoot(rootPath2) { + rootPath2 = uncToDrive(rootPath2.toUpperCase()); + if (rootPath2 === this.root.name) { + return this.root; + } + for (const [compare, root] of Object.entries(this.roots)) { + if (this.sameRoot(rootPath2, compare)) { + return this.roots[rootPath2] = root; + } + } + return this.roots[rootPath2] = new PathScurryWin32(rootPath2, this).root; + } + /** + * @internal + */ + sameRoot(rootPath2, compare = this.root.name) { + rootPath2 = rootPath2.toUpperCase().replace(/\//g, "\\").replace(uncDriveRegexp, "$1\\"); + return rootPath2 === compare; + } +}; +var PathPosix = class _PathPosix extends PathBase { + /** + * separator for parsing path strings + */ + splitSep = "/"; + /** + * separator for generating path strings + */ + sep = "/"; + /** + * Do not create new Path objects directly. They should always be accessed + * via the PathScurry class or other methods on the Path class. + * + * @internal + */ + constructor(name, type2 = UNKNOWN, root, roots, nocase, children, opts) { + super(name, type2, root, roots, nocase, children, opts); + } + /** + * @internal + */ + getRootString(path30) { + return path30.startsWith("/") ? "/" : ""; + } + /** + * @internal + */ + getRoot(_rootPath) { + return this.root; + } + /** + * @internal + */ + newChild(name, type2 = UNKNOWN, opts = {}) { + return new _PathPosix(name, type2, this.root, this.roots, this.nocase, this.childrenCache(), opts); + } +}; +var PathScurryBase = class { + /** + * The root Path entry for the current working directory of this Scurry + */ + root; + /** + * The string path for the root of this Scurry's current working directory + */ + rootPath; + /** + * A collection of all roots encountered, referenced by rootPath + */ + roots; + /** + * The Path entry corresponding to this PathScurry's current working directory. + */ + cwd; + #resolveCache; + #resolvePosixCache; + #children; + /** + * Perform path comparisons case-insensitively. + * + * Defaults true on Darwin and Windows systems, false elsewhere. + */ + nocase; + #fs; + /** + * This class should not be instantiated directly. + * + * Use PathScurryWin32, PathScurryDarwin, PathScurryPosix, or PathScurry + * + * @internal + */ + constructor(cwd = process.cwd(), pathImpl, sep4, { nocase, childrenCacheSize = 16 * 1024, fs: fs6 = defaultFS } = {}) { + this.#fs = fsFromOption(fs6); + if (cwd instanceof URL || cwd.startsWith("file://")) { + cwd = (0, import_url3.fileURLToPath)(cwd); + } + const cwdPath = pathImpl.resolve(cwd); + this.roots = /* @__PURE__ */ Object.create(null); + this.rootPath = this.parseRootPath(cwdPath); + this.#resolveCache = new ResolveCache(); + this.#resolvePosixCache = new ResolveCache(); + this.#children = new ChildrenCache(childrenCacheSize); + const split = cwdPath.substring(this.rootPath.length).split(sep4); + if (split.length === 1 && !split[0]) { + split.pop(); + } + if (nocase === void 0) { + throw new TypeError("must provide nocase setting to PathScurryBase ctor"); + } + this.nocase = nocase; + this.root = this.newRoot(this.#fs); + this.roots[this.rootPath] = this.root; + let prev = this.root; + let len = split.length - 1; + const joinSep = pathImpl.sep; + let abs = this.rootPath; + let sawFirst = false; + for (const part of split) { + const l2 = len--; + prev = prev.child(part, { + relative: new Array(l2).fill("..").join(joinSep), + relativePosix: new Array(l2).fill("..").join("/"), + fullpath: abs += (sawFirst ? "" : joinSep) + part + }); + sawFirst = true; + } + this.cwd = prev; + } + /** + * Get the depth of a provided path, string, or the cwd + */ + depth(path30 = this.cwd) { + if (typeof path30 === "string") { + path30 = this.cwd.resolve(path30); + } + return path30.depth(); + } + /** + * Return the cache of child entries. Exposed so subclasses can create + * child Path objects in a platform-specific way. + * + * @internal + */ + childrenCache() { + return this.#children; + } + /** + * Resolve one or more path strings to a resolved string + * + * Same interface as require('path').resolve. + * + * Much faster than path.resolve() when called multiple times for the same + * path, because the resolved Path objects are cached. Much slower + * otherwise. + */ + resolve(...paths) { + let r = ""; + for (let i = paths.length - 1; i >= 0; i--) { + const p = paths[i]; + if (!p || p === ".") + continue; + r = r ? `${p}/${r}` : p; + if (this.isAbsolute(p)) { + break; + } + } + const cached = this.#resolveCache.get(r); + if (cached !== void 0) { + return cached; + } + const result = this.cwd.resolve(r).fullpath(); + this.#resolveCache.set(r, result); + return result; + } + /** + * Resolve one or more path strings to a resolved string, returning + * the posix path. Identical to .resolve() on posix systems, but on + * windows will return a forward-slash separated UNC path. + * + * Same interface as require('path').resolve. + * + * Much faster than path.resolve() when called multiple times for the same + * path, because the resolved Path objects are cached. Much slower + * otherwise. + */ + resolvePosix(...paths) { + let r = ""; + for (let i = paths.length - 1; i >= 0; i--) { + const p = paths[i]; + if (!p || p === ".") + continue; + r = r ? `${p}/${r}` : p; + if (this.isAbsolute(p)) { + break; + } + } + const cached = this.#resolvePosixCache.get(r); + if (cached !== void 0) { + return cached; + } + const result = this.cwd.resolve(r).fullpathPosix(); + this.#resolvePosixCache.set(r, result); + return result; + } + /** + * find the relative path from the cwd to the supplied path string or entry + */ + relative(entry = this.cwd) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } + return entry.relative(); + } + /** + * find the relative path from the cwd to the supplied path string or + * entry, using / as the path delimiter, even on Windows. + */ + relativePosix(entry = this.cwd) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } + return entry.relativePosix(); + } + /** + * Return the basename for the provided string or Path object + */ + basename(entry = this.cwd) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } + return entry.name; + } + /** + * Return the dirname for the provided string or Path object + */ + dirname(entry = this.cwd) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } + return (entry.parent || entry).fullpath(); + } + async readdir(entry = this.cwd, opts = { + withFileTypes: true + }) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + opts = entry; + entry = this.cwd; + } + const { withFileTypes } = opts; + if (!entry.canReaddir()) { + return []; + } else { + const p = await entry.readdir(); + return withFileTypes ? p : p.map((e) => e.name); + } + } + readdirSync(entry = this.cwd, opts = { + withFileTypes: true + }) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + opts = entry; + entry = this.cwd; + } + const { withFileTypes = true } = opts; + if (!entry.canReaddir()) { + return []; + } else if (withFileTypes) { + return entry.readdirSync(); + } else { + return entry.readdirSync().map((e) => e.name); + } + } + /** + * Call lstat() on the string or Path object, and update all known + * information that can be determined. + * + * Note that unlike `fs.lstat()`, the returned value does not contain some + * information, such as `mode`, `dev`, `nlink`, and `ino`. If that + * information is required, you will need to call `fs.lstat` yourself. + * + * If the Path refers to a nonexistent file, or if the lstat call fails for + * any reason, `undefined` is returned. Otherwise the updated Path object is + * returned. + * + * Results are cached, and thus may be out of date if the filesystem is + * mutated. + */ + async lstat(entry = this.cwd) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } + return entry.lstat(); + } + /** + * synchronous {@link PathScurryBase.lstat} + */ + lstatSync(entry = this.cwd) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } + return entry.lstatSync(); + } + async readlink(entry = this.cwd, { withFileTypes } = { + withFileTypes: false + }) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + withFileTypes = entry.withFileTypes; + entry = this.cwd; + } + const e = await entry.readlink(); + return withFileTypes ? e : e?.fullpath(); + } + readlinkSync(entry = this.cwd, { withFileTypes } = { + withFileTypes: false + }) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + withFileTypes = entry.withFileTypes; + entry = this.cwd; + } + const e = entry.readlinkSync(); + return withFileTypes ? e : e?.fullpath(); + } + async realpath(entry = this.cwd, { withFileTypes } = { + withFileTypes: false + }) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + withFileTypes = entry.withFileTypes; + entry = this.cwd; + } + const e = await entry.realpath(); + return withFileTypes ? e : e?.fullpath(); + } + realpathSync(entry = this.cwd, { withFileTypes } = { + withFileTypes: false + }) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + withFileTypes = entry.withFileTypes; + entry = this.cwd; + } + const e = entry.realpathSync(); + return withFileTypes ? e : e?.fullpath(); + } + async walk(entry = this.cwd, opts = {}) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + opts = entry; + entry = this.cwd; + } + const { withFileTypes = true, follow = false, filter: filter3, walkFilter } = opts; + const results = []; + if (!filter3 || filter3(entry)) { + results.push(withFileTypes ? entry : entry.fullpath()); + } + const dirs = /* @__PURE__ */ new Set(); + const walk = (dir, cb) => { + dirs.add(dir); + dir.readdirCB((er, entries) => { + if (er) { + return cb(er); + } + let len = entries.length; + if (!len) + return cb(); + const next = () => { + if (--len === 0) { + cb(); + } + }; + for (const e of entries) { + if (!filter3 || filter3(e)) { + results.push(withFileTypes ? e : e.fullpath()); + } + if (follow && e.isSymbolicLink()) { + e.realpath().then((r) => r?.isUnknown() ? r.lstat() : r).then((r) => r?.shouldWalk(dirs, walkFilter) ? walk(r, next) : next()); + } else { + if (e.shouldWalk(dirs, walkFilter)) { + walk(e, next); + } else { + next(); + } + } + } + }, true); + }; + const start4 = entry; + return new Promise((res, rej) => { + walk(start4, (er) => { + if (er) + return rej(er); + res(results); + }); + }); + } + walkSync(entry = this.cwd, opts = {}) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + opts = entry; + entry = this.cwd; + } + const { withFileTypes = true, follow = false, filter: filter3, walkFilter } = opts; + const results = []; + if (!filter3 || filter3(entry)) { + results.push(withFileTypes ? entry : entry.fullpath()); + } + const dirs = /* @__PURE__ */ new Set([entry]); + for (const dir of dirs) { + const entries = dir.readdirSync(); + for (const e of entries) { + if (!filter3 || filter3(e)) { + results.push(withFileTypes ? e : e.fullpath()); + } + let r = e; + if (e.isSymbolicLink()) { + if (!(follow && (r = e.realpathSync()))) + continue; + if (r.isUnknown()) + r.lstatSync(); + } + if (r.shouldWalk(dirs, walkFilter)) { + dirs.add(r); + } + } + } + return results; + } + /** + * Support for `for await` + * + * Alias for {@link PathScurryBase.iterate} + * + * Note: As of Node 19, this is very slow, compared to other methods of + * walking. Consider using {@link PathScurryBase.stream} if memory overhead + * and backpressure are concerns, or {@link PathScurryBase.walk} if not. + */ + [Symbol.asyncIterator]() { + return this.iterate(); + } + iterate(entry = this.cwd, options2 = {}) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + options2 = entry; + entry = this.cwd; + } + return this.stream(entry, options2)[Symbol.asyncIterator](); + } + /** + * Iterating over a PathScurry performs a synchronous walk. + * + * Alias for {@link PathScurryBase.iterateSync} + */ + [Symbol.iterator]() { + return this.iterateSync(); + } + *iterateSync(entry = this.cwd, opts = {}) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + opts = entry; + entry = this.cwd; + } + const { withFileTypes = true, follow = false, filter: filter3, walkFilter } = opts; + if (!filter3 || filter3(entry)) { + yield withFileTypes ? entry : entry.fullpath(); + } + const dirs = /* @__PURE__ */ new Set([entry]); + for (const dir of dirs) { + const entries = dir.readdirSync(); + for (const e of entries) { + if (!filter3 || filter3(e)) { + yield withFileTypes ? e : e.fullpath(); + } + let r = e; + if (e.isSymbolicLink()) { + if (!(follow && (r = e.realpathSync()))) + continue; + if (r.isUnknown()) + r.lstatSync(); + } + if (r.shouldWalk(dirs, walkFilter)) { + dirs.add(r); + } + } + } + } + stream(entry = this.cwd, opts = {}) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + opts = entry; + entry = this.cwd; + } + const { withFileTypes = true, follow = false, filter: filter3, walkFilter } = opts; + const results = new Minipass({ objectMode: true }); + if (!filter3 || filter3(entry)) { + results.write(withFileTypes ? entry : entry.fullpath()); + } + const dirs = /* @__PURE__ */ new Set(); + const queue = [entry]; + let processing = 0; + const process3 = () => { + let paused = false; + while (!paused) { + const dir = queue.shift(); + if (!dir) { + if (processing === 0) + results.end(); + return; + } + processing++; + dirs.add(dir); + const onReaddir = (er, entries, didRealpaths = false) => { + if (er) + return results.emit("error", er); + if (follow && !didRealpaths) { + const promises2 = []; + for (const e of entries) { + if (e.isSymbolicLink()) { + promises2.push(e.realpath().then((r) => r?.isUnknown() ? r.lstat() : r)); + } + } + if (promises2.length) { + Promise.all(promises2).then(() => onReaddir(null, entries, true)); + return; + } + } + for (const e of entries) { + if (e && (!filter3 || filter3(e))) { + if (!results.write(withFileTypes ? e : e.fullpath())) { + paused = true; + } + } + } + processing--; + for (const e of entries) { + const r = e.realpathCached() || e; + if (r.shouldWalk(dirs, walkFilter)) { + queue.push(r); + } + } + if (paused && !results.flowing) { + results.once("drain", process3); + } else if (!sync2) { + process3(); + } + }; + let sync2 = true; + dir.readdirCB(onReaddir, true); + sync2 = false; + } + }; + process3(); + return results; + } + streamSync(entry = this.cwd, opts = {}) { + if (typeof entry === "string") { + entry = this.cwd.resolve(entry); + } else if (!(entry instanceof PathBase)) { + opts = entry; + entry = this.cwd; + } + const { withFileTypes = true, follow = false, filter: filter3, walkFilter } = opts; + const results = new Minipass({ objectMode: true }); + const dirs = /* @__PURE__ */ new Set(); + if (!filter3 || filter3(entry)) { + results.write(withFileTypes ? entry : entry.fullpath()); + } + const queue = [entry]; + let processing = 0; + const process3 = () => { + let paused = false; + while (!paused) { + const dir = queue.shift(); + if (!dir) { + if (processing === 0) + results.end(); + return; + } + processing++; + dirs.add(dir); + const entries = dir.readdirSync(); + for (const e of entries) { + if (!filter3 || filter3(e)) { + if (!results.write(withFileTypes ? e : e.fullpath())) { + paused = true; + } + } + } + processing--; + for (const e of entries) { + let r = e; + if (e.isSymbolicLink()) { + if (!(follow && (r = e.realpathSync()))) + continue; + if (r.isUnknown()) + r.lstatSync(); + } + if (r.shouldWalk(dirs, walkFilter)) { + queue.push(r); + } + } + } + if (paused && !results.flowing) + results.once("drain", process3); + }; + process3(); + return results; + } + chdir(path30 = this.cwd) { + const oldCwd = this.cwd; + this.cwd = typeof path30 === "string" ? this.cwd.resolve(path30) : path30; + this.cwd[setAsCwd](oldCwd); + } +}; +var PathScurryWin32 = class extends PathScurryBase { + /** + * separator for generating path strings + */ + sep = "\\"; + constructor(cwd = process.cwd(), opts = {}) { + const { nocase = true } = opts; + super(cwd, import_path24.win32, "\\", { ...opts, nocase }); + this.nocase = nocase; + for (let p = this.cwd; p; p = p.parent) { + p.nocase = this.nocase; + } + } + /** + * @internal + */ + parseRootPath(dir) { + return import_path24.win32.parse(dir).root.toUpperCase(); + } + /** + * @internal + */ + newRoot(fs6) { + return new PathWin32(this.rootPath, IFDIR, void 0, this.roots, this.nocase, this.childrenCache(), { fs: fs6 }); + } + /** + * Return true if the provided path string is an absolute path + */ + isAbsolute(p) { + return p.startsWith("/") || p.startsWith("\\") || /^[a-z]:(\/|\\)/i.test(p); + } +}; +var PathScurryPosix = class extends PathScurryBase { + /** + * separator for generating path strings + */ + sep = "/"; + constructor(cwd = process.cwd(), opts = {}) { + const { nocase = false } = opts; + super(cwd, import_path24.posix, "/", { ...opts, nocase }); + this.nocase = nocase; + } + /** + * @internal + */ + parseRootPath(_dir) { + return "/"; + } + /** + * @internal + */ + newRoot(fs6) { + return new PathPosix(this.rootPath, IFDIR, void 0, this.roots, this.nocase, this.childrenCache(), { fs: fs6 }); + } + /** + * Return true if the provided path string is an absolute path + */ + isAbsolute(p) { + return p.startsWith("/"); + } +}; +var PathScurryDarwin = class extends PathScurryPosix { + constructor(cwd = process.cwd(), opts = {}) { + const { nocase = true } = opts; + super(cwd, { ...opts, nocase }); + } +}; +var Path = process.platform === "win32" ? PathWin32 : PathPosix; +var PathScurry = process.platform === "win32" ? PathScurryWin32 : process.platform === "darwin" ? PathScurryDarwin : PathScurryPosix; - (parameters) @parameters! - (lambda_parameters) @parameters! - (parameters (_) @parameter!) - (lambda_parameters (_)) @parameter! +// ../node_modules/.pnpm/glob@10.3.10/node_modules/glob/dist/esm/glob.js +var import_url4 = require("url"); - (return_statement) @return_statement! - (return_statement (_) @return_statement.value!) - `}};var yeA=["function.name","function.parameters","function.body","type_declaration.name","type_declaration.body","arguments","import.source","comment","argument","parameter","parameters","jsx_attribute.value","return_statement.value","return_statement","string"],k_A={...b_A,...y_A,...M_A};var IeA={};function x_A(A,r,t){if(IeA[r])return;let o=k_A[r];if(o===void 0)return;let s=Object.entries(o).map(([E,p])=>[E,{raw:p,compiled:A.query(p)}]),g=Object.fromEntries(s);IeA[r]={...g,...SSe(g,t)}}function HSe(A){let r=BI(A);if(!r)return null;let t=eS(r),i=IeA[r];return!t||!i?null:{parser:t,queries:i,language:r}}function SSe(A,r){return{getSinglelineTrigger:(t,i,o)=>{let s=A.singlelineTriggers.compiled.captures(t,i,o),{trigger:g,block:E}=TSe(s,i);return!g||!E||!PSe(E)?[]:[{node:g,name:"trigger"}]},getCompletionIntent:(t,i,o)=>{let s=A.intents.compiled.captures(t,i,o),{intentCapture:g}=FSe(s,i);return g?[{node:g.node,name:g.name}]:[]}}}function FSe(A,r){let t={cursorCapture:void 0,intentCapture:void 0};if(!A.length)return t;let[i]=RSe(A.filter(g=>{let{name:E,node:p}=g,B=p.startPosition.column===r.column&&p.startPosition.row===r.row;return E.endsWith(".cursor")&&B})),o=(0,CeA.findLast)(A,g=>g.name===beA(i?.name));if(i&&o)return{cursorCapture:i,intentCapture:o};let s=(0,CeA.findLast)(A,g=>{let E=(g.node.startPosition.column<=r.column||g.node.startPosition.rowyeA.indexOf(beA(r.name))-yeA.indexOf(beA(t.name)))}function beA(A){return A?.split(".").slice(0,-1).join(".")}function TSe(A,r){let t={trigger:void 0,block:void 0};if(!A.length)return t;let i=NSe({captures:A,name:"block_start",index:-1,point:r}),o=H_A({captures:A,name:"trigger",index:-1}),s=i?.parent;return!i||!s||!o||o.endIndex!==s?.endIndex?t:{trigger:o,block:s}}function NSe(A){let{captures:r,name:t,index:i,point:o}=A,s=H_A({captures:r,name:t,index:i});return s&&s.startPosition.column===o.column&&s.startPosition.row===o.row?s:null}function H_A(A){let{captures:r,name:t,index:i}=A;return r.filter(o=>o.name===t).at(i)?.node||null}function PSe(A){let r=A?.children.filter(i=>i.isNamed()).length===0,t=!!A?.lastChild?.isMissing();return r||t}function GSe(A){let r={row:A.line,column:A.character},t={row:A.line,column:A.character+1};return{startPoint:r,endPoint:t}}function S_A(A,r,t){let i=B4(A),o=HSe(A.languageId),{startPoint:s,endPoint:g}=GSe(r);return o&&i?o.queries[t](i.tree.rootNode,s,g):[]}var OeA=F_A(),MeA={};function eS(A){return MeA[A]}async function rS(A){let{language:r,grammarDirectory:t=__dirname}=A,i=MeA[r];if(i)return i;await OeA.init();let o=new OeA,s=R_A.default.resolve(t,YSe[r]),g=await OeA.Language.load(s);return o.setLanguage(g),MeA[r]=o,x_A(g,r,o),o}var YSe={javascript:"tree-sitter-javascript.wasm",javascriptreact:"tree-sitter-javascript.wasm",typescript:"tree-sitter-typescript.wasm",typescriptreact:"tree-sitter-tsx.wasm",java:"tree-sitter-java.wasm",go:"tree-sitter-go.wasm",python:"tree-sitter-python.wasm",dart:"tree-sitter-dart.wasm",cpp:"tree-sitter-cpp.wasm",csharp:"tree-sitter-c_sharp.wasm",php:"tree-sitter-php.wasm"};var DIe=require("child_process");var _Ie=Yn(require("path"));var ag=Yn(require("node:path"),1),keA=Yn(require("node:os"),1),iS=Yn(require("node:process"),1),o_=keA.default.homedir(),xeA=keA.default.tmpdir(),{env:mI}=iS.default,USe=A=>{let r=ag.default.join(o_,"Library");return{data:ag.default.join(r,"Application Support",A),config:ag.default.join(r,"Preferences",A),cache:ag.default.join(r,"Caches",A),log:ag.default.join(r,"Logs",A),temp:ag.default.join(xeA,A)}},LSe=A=>{let r=mI.APPDATA||ag.default.join(o_,"AppData","Roaming"),t=mI.LOCALAPPDATA||ag.default.join(o_,"AppData","Local");return{data:ag.default.join(t,A,"Data"),config:ag.default.join(r,A,"Config"),cache:ag.default.join(t,A,"Cache"),log:ag.default.join(t,A,"Log"),temp:ag.default.join(xeA,A)}},jSe=A=>{let r=ag.default.basename(o_);return{data:ag.default.join(mI.XDG_DATA_HOME||ag.default.join(o_,".local","share"),A),config:ag.default.join(mI.XDG_CONFIG_HOME||ag.default.join(o_,".config"),A),cache:ag.default.join(mI.XDG_CACHE_HOME||ag.default.join(o_,".cache"),A),log:ag.default.join(mI.XDG_STATE_HOME||ag.default.join(o_,".local","state"),A),temp:ag.default.join(xeA,r,A)}};function HeA(A,{suffix:r="nodejs"}={}){if(typeof A!="string")throw new TypeError(`Expected a string, got ${typeof A}`);return r&&(A+=`-${r}`),iS.default.platform==="darwin"?USe(A):iS.default.platform==="win32"?LSe(A):jSe(A)}function T_A(A){if(!A)return console.error(`Unable to determine the git clone URL for this workspace. -git output: ${A}`),null;try{let r=A.match(/^[\w-]+@([^:]+):([\w-]+)\/([\w-]+)(\.git)?$/);if(r){let i=r[1],o=r[2],s=r[3];return`${i}/${o}/${s}`}let t=new URL(A);return t.protocol.startsWith("github")||t.href.startsWith("github")?`github.com/${t.pathname.replace(".git","")}`:t.protocol.startsWith("gitlab")||t.href.startsWith("gitlab")?`gitlab.com/${t.pathname.replace(".git","")}`:t.protocol.startsWith("http")&&t.hostname&&t.pathname?`${t.hostname}${t.pathname.replace(".git","")}`:t.hostname&&t.pathname?`${t.hostname}${t.pathname.replace(".git","")}`:null}catch(r){return console.error(`Cody could not extract repo name from clone URL ${A}:`,r),null}}var G_A=Yn(require("path"));var P_A=Yn(require("path"));function cu(A,r,t="Ok.",i="editor"){return r.source=r.source||i,[{speaker:"human",text:A,file:r},{speaker:"assistant",text:t}]}function N_A(A,r){let t=r||A.content;if(!t)return[];let i=`Context from file path @${A.fileName}: -${t}`,o=`$${A.fileName} is a ${A.kind} symbol from file path @${A.uri?.fsPath}: -${t}`;return[{speaker:"human",text:A.type==="symbol"?o:i,file:A},{speaker:"assistant",text:"OK."}]}function h4(A){return A*4}var Sm="Enclose code snippets with three backticks like so: ```.",qSe={py:"Python",rb:"Ruby",md:"Markdown",php:"PHP",js:"Javascript",ts:"Typescript",jsx:"JSX",tsx:"TSX",go:"Go",java:"Java",c:"C",cpp:"C++",cs:"C#",css:"CSS",html:"HTML",json:"JSON",rs:"Rust"},Fm={chat:new RegExp(/^(?!.*\/n(ew)?\s|.*\/f(ix)?\s)/i),edit:new RegExp(/^\/e(dit)?\s/i),touch:new RegExp(/^\/t(ouch)?\s/i),touchNeedFileName:new RegExp(/^\/t(ouch)?\s(?!.*test(s)?\s)/i),noTest:new RegExp(/^(?!.*test)/i),search:new RegExp(/^\/s(earch)?\s/i),test:new RegExp(/^\/n(ew)?\s|test(s)?\s/,"i")};function NE(A){return A?qSe[A]??A.charAt(0).toUpperCase()+A.slice(1):""}async function _Q(A,r,t,{fileName:i,repoName:o,revision:s},g){return(await g.getContextMessages(A,{numCodeResults:4,numTextResults:0})).concat([r,t].flatMap(p=>cu(iB(p,i,o),{fileName:i,repoName:o,revision:s})))}function cp(A){return P_A.default.extname(A).slice(1).toLowerCase()}function nS(A){let r=A.replaceAll(/^\s*<(fixup|selectedCode|problemCode)>|<\/(fixup|selectedCode|problemCode)>\s*$/g,""),t=A.indexOf("tags:");return t!==-1&&(r=r.slice(t+6)),r.replace(/^\s*\n/,"")}var Rm={numCodeResults:12,numTextResults:3};function aS(A){return A.trim().split(/\s+/).length===1}function io(A,r){let t=r*4;return A.length<=t?A:A.slice(0,t)}function qB(A,r){let t=r*4;return A.length<=t?A:A.slice(-t-1)}var VSe="Use following code snippet from file `{filePath}`:\n```{language}\n{text}\n```",zSe="Use following code snippet from file `{filePath}` in repository `{repoName}`:\n```{language}\n{text}\n```";function iB(A,r,t){return(t?zSe.replace("{repoName}",t):VSe).replace("{filePath}",r).replace("{language}",cS(r)).replace("{text}",A)}var KSe="The symbol '{symbol}' is defined in the file {filePath} as:\n```{language}\n{text}\n```";function Y_A(A,r,t){return KSe.replace("{symbol}",A).replace("{filePath}",r).replace("{language}",cS(r)).replace("{text}",t)}var XSe="Use the following text from file `{filePath}`:\n{text}",ZSe="Use the following text from file `{filePath}` in repository `{repoName}`:\n{text}";function u6(A,r,t){return(t?ZSe.replace("{repoName}",t):XSe).replace("{filePath}",r).replace("{text}",A)}var $Se="I have the `{filePath}` file opened in my editor. ",AFe="I have the `{filePath}` file from the repository `{repoName}` opened in my editor. ";function s_(A,r,t){let i=g6(r)?u6(A,r,t):iB(A,r,t);return(t?AFe.replace("{repoName}",t):$Se).replaceAll("{filePath}",r)+i}var eFe="Here is the selected {language} code from file path `{filePath}`: ",rFe="Here is the selected code from file `{filePath}` in the {repoName} repository, written in {language}: ";function sS(A,r,t){let i=cp(r),o=NE(i),s=g6(r)?u6(A,r,t):iB(A,r,t);return(t?rFe.replace("{repoName}",t):eFe).replace("{language}",o).replaceAll("{filePath}",r)+s}var tFe="Use the following {type} from the code snippet in the file `{filePath}`\n{prefix}: {message}\nCode snippet:\n```{language}\n{code}\n```";function U_A({message:A,type:r,text:t},i){let o=cS(i);return tFe.replace("{type}",r).replace("{filePath}",i).replace("{prefix}",r).replace("{message}",A).replace("{language}",o).replace("{code}",t)}var iFe=`Here is the output returned from the terminal. -`;function L_A(A){return iFe+A}var nFe=new Set(["md","markdown"]);function g6(A){return nFe.has(cS(A))}function cS(A){return G_A.default.extname(A).slice(1)}var aFe="My selected code from file path `{filePath}` in tags:\n{precedingText}{selectedText}{followingText}";function j_A(A,r){let t=cp(r),i=NE(t),o=(2e3-A.selectedText.length)/2,s=io(A.selectedText,2e3)||"",g=qB(A.precedingText,o),E=io(A.followingText,o),p=aFe.replace("{languageName}",i).replaceAll("{filePath}",r).replace("{followingText}",E).replace("{selectedText}",s).replace("{precedingText}",g);return io(p,2e3*3)}var oFe="Here is a list of files from the directory contains {fileName} in my codebase: ",sFe="Here is a list of files from the root codebase directory: ";function W_A(A,r){return(r==="root"?sFe:oFe).replace("{fileName}",r)+A}function lS(A,r,t){return A.replace("{fileName}",t)+r}var cFe="{fileName} has imported the folowing: ";function J_A(A,r){return cFe.replace("{fileName}",r)+A}var Yo=A=>A instanceof Error;function q_A(A){if(!A)return console.error(`Unable to determine the git clone URL for this workspace. -git output: ${A}`),null;try{let r=A.match(/^[\w-]+@([^:]+):([\w-]+)\/([\w-]+)(\.git)?$/);if(r){let i=r[1],o=r[2],s=r[3];return`${i}/${o}/${s}`}let t=new URL(A);return t.protocol.startsWith("github")||t.href.startsWith("github")?`github.com/${t.pathname.replace(".git","")}`:t.protocol.startsWith("gitlab")||t.href.startsWith("gitlab")?`gitlab.com/${t.pathname.replace(".git","")}`:t.protocol.startsWith("http")&&t.hostname&&t.pathname?`${t.hostname}${t.pathname.replace(".git","")}`:t.hostname&&t.pathname?`${t.hostname}${t.pathname.replace(".git","")}`:null}catch(r){return console.error(`Cody could not extract repo name from clone URL ${A}:`,r),null}}var c_=class{constructor(r,t,i,o,s,g,E,p,B){this.config=r;this.codebase=t;this.embeddings=i;this.keywords=o;this.filenames=s;this.graph=g;this.symf=E;this.unifiedContextFetcher=p;this.rerank=B}embeddingResultsError="";getCodebase(){return this.codebase}onConfigurationChange(r){this.config=r}mergeContextResults(r,t){let i=t.slice(-1).concat(r),o=new Map;for(let s of i)o.set(s.fileName,s);return Array.from(o.values())}async getCombinedContextMessages(r,t){let i=this.getContextMessages(r,t),o=this.getGraphContextMessages();return[...await i,...await o]}async getContextMessages(r,t){switch(this.config.useContext){case"unified":return this.getUnifiedContextMessages(r,t);case"keyword":return this.getLocalContextMessages(r,t);case"none":return[];default:return this.embeddings?this.getEmbeddingsContextMessages(r,t):this.getLocalContextMessages(r,t)}}checkEmbeddingsConnection(){return!!this.embeddings}get embeddingsEndpoint(){return this.embeddings?.endpoint}getEmbeddingSearchErrors(){return this.embeddingResultsError.trim()}async getSearchResults(r,t){return this.embeddings&&this.config.useContext!=="keyword"?{results:await this.getEmbeddingSearchResults(r,t),endpoint:this.config.serverEndpoint}:{results:await this.keywords?.getSearchContext(r,t.numCodeResults+t.numTextResults)||[],endpoint:this.config.serverEndpoint}}async getEmbeddingsContextMessages(r,t){let i=await this.getEmbeddingSearchResults(r,t);return lFe(i).reverse().flatMap(o=>this.makeContextMessageWithResponse(o)).map(o=>dFe(o,"embeddings"))}async getEmbeddingSearchResults(r,t){if(!this.embeddings)return[];let i=await this.embeddings.search(r,t.numCodeResults,t.numTextResults);return Yo(i)?(console.error("Error retrieving embeddings:",i),this.embeddingResultsError=`Error retrieving embeddings: ${i}`,[]):(this.embeddingResultsError="",i.codeResults.concat(i.textResults))}makeContextMessageWithResponse(r){let t=g6(r.file.fileName)?u6:iB;return r.results.flatMap(i=>cu(t(i,r.file.fileName,r.file.repoName),r.file))}async getUnifiedContextMessages(r,t){if(!this.unifiedContextFetcher)return[];let i=await this.unifiedContextFetcher.getContext(r,t.numCodeResults,t.numTextResults);if(Yo(i))return console.error("Error retrieving context:",i),[];let o="unified";return i.flatMap(s=>{if(s?.type==="FileChunkContext"){let{content:g,filePath:E,repoName:p,revision:B}=s,m=g6(E)?u6(g,E,p):iB(g,E,p);return cu(m,{fileName:E,repoName:p,revision:B,source:o})}return[]})}async getLocalContextMessages(r,t){try{let i=this.getKeywordSearchResults(r,t),o=this.getFilenameSearchResults(r,t),[s,g]=await Promise.all([i,o]),E=this.mergeContextResults(s,g),p=await(this.rerank?this.rerank(r,E):E),B=gFe(p);return this.embeddingResultsError="",B}catch(i){return console.error("Error retrieving local context:",i),this.embeddingResultsError=`Error retrieving local context: ${i}`,[]}}async getKeywordSearchResults(r,t){return this.keywords?await this.keywords.getContext(r,t.numCodeResults+t.numTextResults):[]}async getFilenameSearchResults(r,t){return this.filenames?await this.filenames.getContext(r,t.numCodeResults+t.numTextResults):[]}async getGraphContextMessages(){if(!this.config.experimentalLocalSymbols||!this.graph)return[];let r=[];for(let t of await this.graph.getContext()){let i=Y_A(t.symbol.fuzzyName||"unknown",t.filePath,t.definitionSnippet);r.push({speaker:"human",preciseContext:t,text:i},{speaker:"assistant",text:"okay"})}return r}};function lFe(A){let r=[];for(let i of A)r.find(o=>o.fileName===i.fileName)||r.push({fileName:i.fileName,repoName:i.repoName,revision:i.revision,range:pFe(i),source:"embeddings",type:"file"});let t=new Map;for(let i of A){let o=t.get(i.fileName);o===void 0?t.set(i.fileName,[i]):t.set(i.fileName,o.concat([i]))}return r.map(i=>({file:i,results:uFe(t.get(i.fileName))}))}function uFe(A){let r=A.sort((i,o)=>i.startLine-o.startLine),t=[A[0].content];for(let i=1;i{let s=iB(r,t,i);return cu(s,{fileName:t,repoName:i,revision:o})})}function dFe(A,r){return A.file&&(A.file.source=r),A}function pFe(A){return{start:{line:A.startLine,character:0},end:{line:A.endLine,character:0}}}function V_A(A,r){return new Proxy(A,{get(i,o,s){return o==="showQuickPick"?async function(E){for(let[p,B]of r)if(p===E)return Promise.resolve(B);return i.showQuickPick(E)}:Reflect.get(i,o,s)}})}var l_=class{constructor(r,t,i=!1){this.client=r;this.repoId=t;this.web=i}get endpoint(){return this.client.endpoint}async search(r,t,i){return this.web?this.client.searchEmbeddings([this.repoId],r,t,i):this.client.legacySearchEmbeddings(this.repoId,r,t,i)}};var EFe=[/editor/,/(open|current|this|entire)\s+file/,/current(ly)?\s+open/,/have\s+open/],DI=class{constructor(r,t){this.client=r;this.completionsClient=t}isCodebaseContextRequired(r){return this.client.isContextRequiredForQuery(r)}isEditorContextRequired(r){let t=r.toLowerCase();for(let i of EFe)if(t.match(i))return!0;return!1}buildInitialTranscript(r){let t=r.map(({id:i,description:o})=>`Function ID: ${i} -Function Description: ${o}`).join(` -`);return[{speaker:"human",text:fFe.replace("{functions}",t)},{speaker:"assistant",text:"Ok."}]}buildExampleTranscript(r){return r.flatMap(({id:i,examplePrompts:o})=>o.flatMap(s=>[{speaker:"human",text:s},{speaker:"assistant",text:`${i}`}]))}async classifyIntentFromOptions(r,t,i){let o=t.find(m=>r.startsWith(m.rawCommand));if(o)return o.id;let s=this.completionsClient;if(!s)return i;let g=this.buildInitialTranscript(t),E=this.buildExampleTranscript(t),B=(await new Promise(m=>{let _="";return s.stream({fast:!0,temperature:0,maxTokensToSample:1e3,topK:-1,topP:-1,messages:[...g,...E,{speaker:"human",text:r},{speaker:"assistant"}]},{onChange:x=>{_=x},onComplete:()=>{m(_)},onError:(x,O)=>{console.error(`Error detecting intent: Status code ${O}: ${x}`),m(i)}})})).match(/(.*?)<\/classification>/)?.[1];return B?t.find(m=>m.id===B)?.id??i:i}},fFe=` -You are an AI assistant in a text editor. You are at expert at understanding the request of a software developer and selecting an available function to perform that request. -Think step-by-step to understand the request. -Only provide your response if you know the answer or can make a well-informed guess, otherwise respond with "unknown". -Enclose your response in XML tags. Do not provide anything else. +// ../node_modules/.pnpm/glob@10.3.10/node_modules/glob/dist/esm/pattern.js +var isPatternList = (pl) => pl.length >= 1; +var isGlobList = (gl) => gl.length >= 1; +var Pattern = class _Pattern { + #patternList; + #globList; + #index; + length; + #platform; + #rest; + #globString; + #isDrive; + #isUNC; + #isAbsolute; + #followGlobstar = true; + constructor(patternList, globList, index, platform4) { + if (!isPatternList(patternList)) { + throw new TypeError("empty pattern list"); + } + if (!isGlobList(globList)) { + throw new TypeError("empty glob list"); + } + if (globList.length !== patternList.length) { + throw new TypeError("mismatched pattern list and glob list lengths"); + } + this.length = patternList.length; + if (index < 0 || index >= this.length) { + throw new TypeError("index out of range"); + } + this.#patternList = patternList; + this.#globList = globList; + this.#index = index; + this.#platform = platform4; + if (this.#index === 0) { + if (this.isUNC()) { + const [p0, p1, p2, p3, ...prest] = this.#patternList; + const [g0, g1, g2, g3, ...grest] = this.#globList; + if (prest[0] === "") { + prest.shift(); + grest.shift(); + } + const p = [p0, p1, p2, p3, ""].join("/"); + const g = [g0, g1, g2, g3, ""].join("/"); + this.#patternList = [p, ...prest]; + this.#globList = [g, ...grest]; + this.length = this.#patternList.length; + } else if (this.isDrive() || this.isAbsolute()) { + const [p1, ...prest] = this.#patternList; + const [g1, ...grest] = this.#globList; + if (prest[0] === "") { + prest.shift(); + grest.shift(); + } + const p = p1 + "/"; + const g = g1 + "/"; + this.#patternList = [p, ...prest]; + this.#globList = [g, ...grest]; + this.length = this.#patternList.length; + } + } + } + /** + * The first entry in the parsed list of patterns + */ + pattern() { + return this.#patternList[this.#index]; + } + /** + * true of if pattern() returns a string + */ + isString() { + return typeof this.#patternList[this.#index] === "string"; + } + /** + * true of if pattern() returns GLOBSTAR + */ + isGlobstar() { + return this.#patternList[this.#index] === GLOBSTAR; + } + /** + * true if pattern() returns a regexp + */ + isRegExp() { + return this.#patternList[this.#index] instanceof RegExp; + } + /** + * The /-joined set of glob parts that make up this pattern + */ + globString() { + return this.#globString = this.#globString || (this.#index === 0 ? this.isAbsolute() ? this.#globList[0] + this.#globList.slice(1).join("/") : this.#globList.join("/") : this.#globList.slice(this.#index).join("/")); + } + /** + * true if there are more pattern parts after this one + */ + hasMore() { + return this.length > this.#index + 1; + } + /** + * The rest of the pattern after this part, or null if this is the end + */ + rest() { + if (this.#rest !== void 0) + return this.#rest; + if (!this.hasMore()) + return this.#rest = null; + this.#rest = new _Pattern(this.#patternList, this.#globList, this.#index + 1, this.#platform); + this.#rest.#isAbsolute = this.#isAbsolute; + this.#rest.#isUNC = this.#isUNC; + this.#rest.#isDrive = this.#isDrive; + return this.#rest; + } + /** + * true if the pattern represents a //unc/path/ on windows + */ + isUNC() { + const pl = this.#patternList; + return this.#isUNC !== void 0 ? this.#isUNC : this.#isUNC = this.#platform === "win32" && this.#index === 0 && pl[0] === "" && pl[1] === "" && typeof pl[2] === "string" && !!pl[2] && typeof pl[3] === "string" && !!pl[3]; + } + // pattern like C:/... + // split = ['C:', ...] + // XXX: would be nice to handle patterns like `c:*` to test the cwd + // in c: for *, but I don't know of a way to even figure out what that + // cwd is without actually chdir'ing into it? + /** + * True if the pattern starts with a drive letter on Windows + */ + isDrive() { + const pl = this.#patternList; + return this.#isDrive !== void 0 ? this.#isDrive : this.#isDrive = this.#platform === "win32" && this.#index === 0 && this.length > 1 && typeof pl[0] === "string" && /^[a-z]:$/i.test(pl[0]); + } + // pattern = '/' or '/...' or '/x/...' + // split = ['', ''] or ['', ...] or ['', 'x', ...] + // Drive and UNC both considered absolute on windows + /** + * True if the pattern is rooted on an absolute path + */ + isAbsolute() { + const pl = this.#patternList; + return this.#isAbsolute !== void 0 ? this.#isAbsolute : this.#isAbsolute = pl[0] === "" && pl.length > 1 || this.isDrive() || this.isUNC(); + } + /** + * consume the root of the pattern, and return it + */ + root() { + const p = this.#patternList[0]; + return typeof p === "string" && this.isAbsolute() && this.#index === 0 ? p : ""; + } + /** + * Check to see if the current globstar pattern is allowed to follow + * a symbolic link. + */ + checkFollowGlobstar() { + return !(this.#index === 0 || !this.isGlobstar() || !this.#followGlobstar); + } + /** + * Mark that the current globstar pattern is following a symbolic link + */ + markFollowGlobstar() { + if (this.#index === 0 || !this.isGlobstar() || !this.#followGlobstar) + return false; + this.#followGlobstar = false; + return true; + } +}; -Available functions: -{functions} -`;var cvA=Yn(ewA());var BS=Yn(KeA());var CQ=new URL("https://sourcegraph.com"),ePt=new URL("https://sourcegraph.sourcegraph.com/"),Rh=new URL("http://localhost:3080");function Th(A){try{return new URL(A).origin===Rh.origin}catch{return!1}}function Gm(A){try{return new URL(A).origin===CQ.origin}catch{return!1}}var GwA=` -query CurrentUser { - currentUser { - id +// ../node_modules/.pnpm/glob@10.3.10/node_modules/glob/dist/esm/ignore.js +var defaultPlatform2 = typeof process === "object" && process && typeof process.platform === "string" ? process.platform : "linux"; +var Ignore = class { + relative; + relativeChildren; + absolute; + absoluteChildren; + constructor(ignored, { nobrace, nocase, noext, noglobstar, platform: platform4 = defaultPlatform2 }) { + this.relative = []; + this.absolute = []; + this.relativeChildren = []; + this.absoluteChildren = []; + const mmopts = { + dot: true, + nobrace, + nocase, + noext, + noglobstar, + optimizationLevel: 2, + platform: platform4, + nocomment: true, + nonegate: true + }; + for (const ign of ignored) { + const mm = new Minimatch(ign, mmopts); + for (let i = 0; i < mm.set.length; i++) { + const parsed = mm.set[i]; + const globParts = mm.globParts[i]; + if (!parsed || !globParts) { + throw new Error("invalid pattern object"); + } + const p = new Pattern(parsed, globParts, 0, platform4); + const m = new Minimatch(p.globString(), mmopts); + const children = globParts[globParts.length - 1] === "**"; + const absolute = p.isAbsolute(); + if (absolute) + this.absolute.push(m); + else + this.relative.push(m); + if (children) { + if (absolute) + this.absoluteChildren.push(m); + else + this.relativeChildren.push(m); + } + } } -}`,YwA=` -query SiteProductVersion { - site { - productVersion + } + ignored(p) { + const fullpath = p.fullpath(); + const fullpaths = `${fullpath}/`; + const relative3 = p.relative() || "."; + const relatives = `${relative3}/`; + for (const m of this.relative) { + if (m.match(relative3) || m.match(relatives)) + return true; } -}`,UwA=` -query SiteHasCodyEnabled { - site { - isCodyEnabled + for (const m of this.absolute) { + if (m.match(fullpath) || m.match(fullpaths)) + return true; } -}`,LwA=` -query SiteGraphQLFields { - __type(name: "Site") { - fields { - name + return false; + } + childrenIgnored(p) { + const fullpath = p.fullpath() + "/"; + const relative3 = (p.relative() || ".") + "/"; + for (const m of this.relativeChildren) { + if (m.match(relative3)) + return true; + } + for (const m of this.absoluteChildren) { + if (m.match(fullpath)) + return true; + } + return false; + } +}; + +// ../node_modules/.pnpm/glob@10.3.10/node_modules/glob/dist/esm/processor.js +var HasWalkedCache = class _HasWalkedCache { + store; + constructor(store = /* @__PURE__ */ new Map()) { + this.store = store; + } + copy() { + return new _HasWalkedCache(new Map(this.store)); + } + hasWalked(target, pattern) { + return this.store.get(target.fullpath())?.has(pattern.globString()); + } + storeWalked(target, pattern) { + const fullpath = target.fullpath(); + const cached = this.store.get(fullpath); + if (cached) + cached.add(pattern.globString()); + else + this.store.set(fullpath, /* @__PURE__ */ new Set([pattern.globString()])); + } +}; +var MatchRecord = class { + store = /* @__PURE__ */ new Map(); + add(target, absolute, ifDir) { + const n = (absolute ? 2 : 0) | (ifDir ? 1 : 0); + const current = this.store.get(target); + this.store.set(target, current === void 0 ? n : n & current); + } + // match, absolute, ifdir + entries() { + return [...this.store.entries()].map(([path30, n]) => [ + path30, + !!(n & 2), + !!(n & 1) + ]); + } +}; +var SubWalks = class { + store = /* @__PURE__ */ new Map(); + add(target, pattern) { + if (!target.canReaddir()) { + return; + } + const subs = this.store.get(target); + if (subs) { + if (!subs.find((p) => p.globString() === pattern.globString())) { + subs.push(pattern); + } + } else + this.store.set(target, [pattern]); + } + get(target) { + const subs = this.store.get(target); + if (!subs) { + throw new Error("attempting to walk unknown path"); + } + return subs; + } + entries() { + return this.keys().map((k) => [k, this.store.get(k)]); + } + keys() { + return [...this.store.keys()].filter((t) => t.canReaddir()); + } +}; +var Processor = class _Processor { + hasWalkedCache; + matches = new MatchRecord(); + subwalks = new SubWalks(); + patterns; + follow; + dot; + opts; + constructor(opts, hasWalkedCache) { + this.opts = opts; + this.follow = !!opts.follow; + this.dot = !!opts.dot; + this.hasWalkedCache = hasWalkedCache ? hasWalkedCache.copy() : new HasWalkedCache(); + } + processPatterns(target, patterns) { + this.patterns = patterns; + const processingSet = patterns.map((p) => [target, p]); + for (let [t, pattern] of processingSet) { + this.hasWalkedCache.storeWalked(t, pattern); + const root = pattern.root(); + const absolute = pattern.isAbsolute() && this.opts.absolute !== false; + if (root) { + t = t.resolve(root === "/" && this.opts.root !== void 0 ? this.opts.root : root); + const rest2 = pattern.rest(); + if (!rest2) { + this.matches.add(t, true, false); + continue; + } else { + pattern = rest2; + } + } + if (t.isENOENT()) + continue; + let p; + let rest; + let changed = false; + while (typeof (p = pattern.pattern()) === "string" && (rest = pattern.rest())) { + const c = t.resolve(p); + t = c; + pattern = rest; + changed = true; + } + p = pattern.pattern(); + rest = pattern.rest(); + if (changed) { + if (this.hasWalkedCache.hasWalked(t, pattern)) + continue; + this.hasWalkedCache.storeWalked(t, pattern); + } + if (typeof p === "string") { + const ifDir = p === ".." || p === "" || p === "."; + this.matches.add(t.resolve(p), absolute, ifDir); + continue; + } else if (p === GLOBSTAR) { + if (!t.isSymbolicLink() || this.follow || pattern.checkFollowGlobstar()) { + this.subwalks.add(t, pattern); + } + const rp = rest?.pattern(); + const rrest = rest?.rest(); + if (!rest || (rp === "" || rp === ".") && !rrest) { + this.matches.add(t, absolute, rp === "" || rp === "."); + } else { + if (rp === "..") { + const tp = t.parent || t; + if (!rrest) + this.matches.add(tp, absolute, true); + else if (!this.hasWalkedCache.hasWalked(tp, rrest)) { + this.subwalks.add(tp, rrest); + } + } } + } else if (p instanceof RegExp) { + this.subwalks.add(t, pattern); + } } -}`,jwA=` -query CurrentUser { - currentUser { - id - hasVerifiedEmail + return this; + } + subwalkTargets() { + return this.subwalks.keys(); + } + child() { + return new _Processor(this.opts, this.hasWalkedCache); + } + // return a new Processor containing the subwalks for each + // child entry, and a set of matches, and + // a hasWalkedCache that's a copy of this one + // then we're going to call + filterEntries(parent, entries) { + const patterns = this.subwalks.get(parent); + const results = this.child(); + for (const e of entries) { + for (const pattern of patterns) { + const absolute = pattern.isAbsolute(); + const p = pattern.pattern(); + const rest = pattern.rest(); + if (p === GLOBSTAR) { + results.testGlobstar(e, pattern, rest, absolute); + } else if (p instanceof RegExp) { + results.testRegExp(e, p, rest, absolute); + } else { + results.testString(e, p, rest, absolute); + } + } } -}`,WwA=` -query CurrentSiteCodyLlmConfiguration { - site { - codyLLMConfiguration { - provider + return results; + } + testGlobstar(e, pattern, rest, absolute) { + if (this.dot || !e.name.startsWith(".")) { + if (!pattern.hasMore()) { + this.matches.add(e, absolute, false); + } + if (e.canReaddir()) { + if (this.follow || !e.isSymbolicLink()) { + this.subwalks.add(e, pattern); + } else if (e.isSymbolicLink()) { + if (rest && pattern.checkFollowGlobstar()) { + this.subwalks.add(e, rest); + } else if (pattern.markFollowGlobstar()) { + this.subwalks.add(e, pattern); + } } + } } -}`,JwA=` -query CurrentSiteCodyLlmConfiguration { - site { - codyLLMConfiguration { - chatModel - chatModelMaxTokens - fastChatModel - fastChatModelMaxTokens - completionModel - completionModelMaxTokens + if (rest) { + const rp = rest.pattern(); + if (typeof rp === "string" && // dots and empty were handled already + rp !== ".." && rp !== "" && rp !== ".") { + this.testString(e, rp, rest.rest(), absolute); + } else if (rp === "..") { + const ep = e.parent || e; + this.subwalks.add(ep, rest); + } else if (rp instanceof RegExp) { + this.testRegExp(e, rp, rest.rest(), absolute); + } + } + } + testRegExp(e, p, rest, absolute) { + if (!p.test(e.name)) + return; + if (!rest) { + this.matches.add(e, absolute, false); + } else { + this.subwalks.add(e, rest); + } + } + testString(e, p, rest, absolute) { + if (!e.isNamed(p)) + return; + if (!rest) { + this.matches.add(e, absolute, false); + } else { + this.subwalks.add(e, rest); + } + } +}; + +// ../node_modules/.pnpm/glob@10.3.10/node_modules/glob/dist/esm/walker.js +var makeIgnore = (ignore, opts) => typeof ignore === "string" ? new Ignore([ignore], opts) : Array.isArray(ignore) ? new Ignore(ignore, opts) : ignore; +var GlobUtil = class { + path; + patterns; + opts; + seen = /* @__PURE__ */ new Set(); + paused = false; + aborted = false; + #onResume = []; + #ignore; + #sep; + signal; + maxDepth; + constructor(patterns, path30, opts) { + this.patterns = patterns; + this.path = path30; + this.opts = opts; + this.#sep = !opts.posix && opts.platform === "win32" ? "\\" : "/"; + if (opts.ignore) { + this.#ignore = makeIgnore(opts.ignore, opts); + } + this.maxDepth = opts.maxDepth || Infinity; + if (opts.signal) { + this.signal = opts.signal; + this.signal.addEventListener("abort", () => { + this.#onResume.length = 0; + }); + } + } + #ignored(path30) { + return this.seen.has(path30) || !!this.#ignore?.ignored?.(path30); + } + #childrenIgnored(path30) { + return !!this.#ignore?.childrenIgnored?.(path30); + } + // backpressure mechanism + pause() { + this.paused = true; + } + resume() { + if (this.signal?.aborted) + return; + this.paused = false; + let fn = void 0; + while (!this.paused && (fn = this.#onResume.shift())) { + fn(); + } + } + onResume(fn) { + if (this.signal?.aborted) + return; + if (!this.paused) { + fn(); + } else { + this.#onResume.push(fn); + } + } + // do the requisite realpath/stat checking, and return the path + // to add or undefined to filter it out. + async matchCheck(e, ifDir) { + if (ifDir && this.opts.nodir) + return void 0; + let rpc; + if (this.opts.realpath) { + rpc = e.realpathCached() || await e.realpath(); + if (!rpc) + return void 0; + e = rpc; + } + const needStat = e.isUnknown() || this.opts.stat; + return this.matchCheckTest(needStat ? await e.lstat() : e, ifDir); + } + matchCheckTest(e, ifDir) { + return e && (this.maxDepth === Infinity || e.depth() <= this.maxDepth) && (!ifDir || e.canReaddir()) && (!this.opts.nodir || !e.isDirectory()) && !this.#ignored(e) ? e : void 0; + } + matchCheckSync(e, ifDir) { + if (ifDir && this.opts.nodir) + return void 0; + let rpc; + if (this.opts.realpath) { + rpc = e.realpathCached() || e.realpathSync(); + if (!rpc) + return void 0; + e = rpc; + } + const needStat = e.isUnknown() || this.opts.stat; + return this.matchCheckTest(needStat ? e.lstatSync() : e, ifDir); + } + matchFinish(e, absolute) { + if (this.#ignored(e)) + return; + const abs = this.opts.absolute === void 0 ? absolute : this.opts.absolute; + this.seen.add(e); + const mark = this.opts.mark && e.isDirectory() ? this.#sep : ""; + if (this.opts.withFileTypes) { + this.matchEmit(e); + } else if (abs) { + const abs2 = this.opts.posix ? e.fullpathPosix() : e.fullpath(); + this.matchEmit(abs2 + mark); + } else { + const rel = this.opts.posix ? e.relativePosix() : e.relative(); + const pre = this.opts.dotRelative && !rel.startsWith(".." + this.#sep) ? "." + this.#sep : ""; + this.matchEmit(!rel ? "." + mark : pre + rel + mark); + } + } + async match(e, absolute, ifDir) { + const p = await this.matchCheck(e, ifDir); + if (p) + this.matchFinish(p, absolute); + } + matchSync(e, absolute, ifDir) { + const p = this.matchCheckSync(e, ifDir); + if (p) + this.matchFinish(p, absolute); + } + walkCB(target, patterns, cb) { + if (this.signal?.aborted) + cb(); + this.walkCB2(target, patterns, new Processor(this.opts), cb); + } + walkCB2(target, patterns, processor, cb) { + if (this.#childrenIgnored(target)) + return cb(); + if (this.signal?.aborted) + cb(); + if (this.paused) { + this.onResume(() => this.walkCB2(target, patterns, processor, cb)); + return; + } + processor.processPatterns(target, patterns); + let tasks = 1; + const next = () => { + if (--tasks === 0) + cb(); + }; + for (const [m, absolute, ifDir] of processor.matches.entries()) { + if (this.#ignored(m)) + continue; + tasks++; + this.match(m, absolute, ifDir).then(() => next()); + } + for (const t of processor.subwalkTargets()) { + if (this.maxDepth !== Infinity && t.depth() >= this.maxDepth) { + continue; + } + tasks++; + const childrenCached = t.readdirCached(); + if (t.calledReaddir()) + this.walkCB3(t, childrenCached, processor, next); + else { + t.readdirCB((_, entries) => this.walkCB3(t, entries, processor, next), true); + } + } + next(); + } + walkCB3(target, entries, processor, cb) { + processor = processor.filterEntries(target, entries); + let tasks = 1; + const next = () => { + if (--tasks === 0) + cb(); + }; + for (const [m, absolute, ifDir] of processor.matches.entries()) { + if (this.#ignored(m)) + continue; + tasks++; + this.match(m, absolute, ifDir).then(() => next()); + } + for (const [target2, patterns] of processor.subwalks.entries()) { + tasks++; + this.walkCB2(target2, patterns, processor.child(), next); + } + next(); + } + walkCBSync(target, patterns, cb) { + if (this.signal?.aborted) + cb(); + this.walkCB2Sync(target, patterns, new Processor(this.opts), cb); + } + walkCB2Sync(target, patterns, processor, cb) { + if (this.#childrenIgnored(target)) + return cb(); + if (this.signal?.aborted) + cb(); + if (this.paused) { + this.onResume(() => this.walkCB2Sync(target, patterns, processor, cb)); + return; + } + processor.processPatterns(target, patterns); + let tasks = 1; + const next = () => { + if (--tasks === 0) + cb(); + }; + for (const [m, absolute, ifDir] of processor.matches.entries()) { + if (this.#ignored(m)) + continue; + this.matchSync(m, absolute, ifDir); + } + for (const t of processor.subwalkTargets()) { + if (this.maxDepth !== Infinity && t.depth() >= this.maxDepth) { + continue; + } + tasks++; + const children = t.readdirSync(); + this.walkCB3Sync(t, children, processor, next); + } + next(); + } + walkCB3Sync(target, entries, processor, cb) { + processor = processor.filterEntries(target, entries); + let tasks = 1; + const next = () => { + if (--tasks === 0) + cb(); + }; + for (const [m, absolute, ifDir] of processor.matches.entries()) { + if (this.#ignored(m)) + continue; + this.matchSync(m, absolute, ifDir); + } + for (const [target2, patterns] of processor.subwalks.entries()) { + tasks++; + this.walkCB2Sync(target2, patterns, processor.child(), next); + } + next(); + } +}; +var GlobWalker = class extends GlobUtil { + matches; + constructor(patterns, path30, opts) { + super(patterns, path30, opts); + this.matches = /* @__PURE__ */ new Set(); + } + matchEmit(e) { + this.matches.add(e); + } + async walk() { + if (this.signal?.aborted) + throw this.signal.reason; + if (this.path.isUnknown()) { + await this.path.lstat(); + } + await new Promise((res, rej) => { + this.walkCB(this.path, this.patterns, () => { + if (this.signal?.aborted) { + rej(this.signal.reason); + } else { + res(this.matches); } + }); + }); + return this.matches; + } + walkSync() { + if (this.signal?.aborted) + throw this.signal.reason; + if (this.path.isUnknown()) { + this.path.lstatSync(); } -}`,qwA=` -query Repository($name: String!) { - repository(name: $name) { - id - } -}`,VwA=` -query Repositories($names: [String!]!, $first: Int!) { - repositories(names: $names, first: $first) { - nodes { - id - name - } - } -}`,zwA=` -query Repositories($first: Int!) { - repositories(first: $first) { - nodes { - id - name - } - } -}`,KwA=` -query Repository($name: String!) { - repository(name: $name) { - id - embeddingExists - } -}`,XwA=` -query GetCodyContext($repos: [ID!]!, $query: String!, $codeResultsCount: Int!, $textResultsCount: Int!) { - getCodyContext(repos: $repos, query: $query, codeResultsCount: $codeResultsCount, textResultsCount: $textResultsCount) { - __typename - ... on FileChunkContext { - blob { - path - repository { - id - name - } - commit { - id - oid - } - } - startLine - endLine - chunkContent - } - } -}`,ZwA=` -query EmbeddingsSearch($repos: [ID!]!, $query: String!, $codeResultsCount: Int!, $textResultsCount: Int!) { - embeddingsMultiSearch(repos: $repos, query: $query, codeResultsCount: $codeResultsCount, textResultsCount: $textResultsCount) { - codeResults { - repoName - revision - fileName - startLine - endLine - content - } - textResults { - repoName - revision - fileName - startLine - endLine - content - } - } -}`,$wA=` -query LegacyEmbeddingsSearch($repo: ID!, $query: String!, $codeResultsCount: Int!, $textResultsCount: Int!) { - embeddingsSearch(repo: $repo, query: $query, codeResultsCount: $codeResultsCount, textResultsCount: $textResultsCount) { - codeResults { - fileName - startLine - endLine - content - } - textResults { - fileName - startLine - endLine - content - } - } -}`,AvA=` -query SnippetAttribution($snippet: String!) { - snippetAttribution(snippet: $snippet) { - limitHit - nodes { - repositoryName + this.walkCBSync(this.path, this.patterns, () => { + if (this.signal?.aborted) + throw this.signal.reason; + }); + return this.matches; + } +}; +var GlobStream = class extends GlobUtil { + results; + constructor(patterns, path30, opts) { + super(patterns, path30, opts); + this.results = new Minipass({ + signal: this.signal, + objectMode: true + }); + this.results.on("drain", () => this.resume()); + this.results.on("resume", () => this.resume()); + } + matchEmit(e) { + this.results.write(e); + if (!this.results.flowing) + this.pause(); + } + stream() { + const target = this.path; + if (target.isUnknown()) { + target.lstat().then(() => { + this.walkCB(target, this.patterns, () => this.results.end()); + }); + } else { + this.walkCB(target, this.patterns, () => this.results.end()); + } + return this.results; + } + streamSync() { + if (this.path.isUnknown()) { + this.path.lstatSync(); + } + this.walkCBSync(this.path, this.patterns, () => this.results.end()); + return this.results; + } +}; + +// ../node_modules/.pnpm/glob@10.3.10/node_modules/glob/dist/esm/glob.js +var defaultPlatform3 = typeof process === "object" && process && typeof process.platform === "string" ? process.platform : "linux"; +var Glob = class { + absolute; + cwd; + root; + dot; + dotRelative; + follow; + ignore; + magicalBraces; + mark; + matchBase; + maxDepth; + nobrace; + nocase; + nodir; + noext; + noglobstar; + pattern; + platform; + realpath; + scurry; + stat; + signal; + windowsPathsNoEscape; + withFileTypes; + /** + * The options provided to the constructor. + */ + opts; + /** + * An array of parsed immutable {@link Pattern} objects. + */ + patterns; + /** + * All options are stored as properties on the `Glob` object. + * + * See {@link GlobOptions} for full options descriptions. + * + * Note that a previous `Glob` object can be passed as the + * `GlobOptions` to another `Glob` instantiation to re-use settings + * and caches with a new pattern. + * + * Traversal functions can be called multiple times to run the walk + * again. + */ + constructor(pattern, opts) { + if (!opts) + throw new TypeError("glob options required"); + this.withFileTypes = !!opts.withFileTypes; + this.signal = opts.signal; + this.follow = !!opts.follow; + this.dot = !!opts.dot; + this.dotRelative = !!opts.dotRelative; + this.nodir = !!opts.nodir; + this.mark = !!opts.mark; + if (!opts.cwd) { + this.cwd = ""; + } else if (opts.cwd instanceof URL || opts.cwd.startsWith("file://")) { + opts.cwd = (0, import_url4.fileURLToPath)(opts.cwd); + } + this.cwd = opts.cwd || ""; + this.root = opts.root; + this.magicalBraces = !!opts.magicalBraces; + this.nobrace = !!opts.nobrace; + this.noext = !!opts.noext; + this.realpath = !!opts.realpath; + this.absolute = opts.absolute; + this.noglobstar = !!opts.noglobstar; + this.matchBase = !!opts.matchBase; + this.maxDepth = typeof opts.maxDepth === "number" ? opts.maxDepth : Infinity; + this.stat = !!opts.stat; + this.ignore = opts.ignore; + if (this.withFileTypes && this.absolute !== void 0) { + throw new Error("cannot set absolute and withFileTypes:true"); + } + if (typeof pattern === "string") { + pattern = [pattern]; + } + this.windowsPathsNoEscape = !!opts.windowsPathsNoEscape || opts.allowWindowsEscape === false; + if (this.windowsPathsNoEscape) { + pattern = pattern.map((p) => p.replace(/\\/g, "/")); + } + if (this.matchBase) { + if (opts.noglobstar) { + throw new TypeError("base matching requires globstar"); + } + pattern = pattern.map((p) => p.includes("/") ? p : `./**/${p}`); + } + this.pattern = pattern; + this.platform = opts.platform || defaultPlatform3; + this.opts = { ...opts, platform: this.platform }; + if (opts.scurry) { + this.scurry = opts.scurry; + if (opts.nocase !== void 0 && opts.nocase !== opts.scurry.nocase) { + throw new Error("nocase option contradicts provided scurry option"); + } + } else { + const Scurry = opts.platform === "win32" ? PathScurryWin32 : opts.platform === "darwin" ? PathScurryDarwin : opts.platform ? PathScurryPosix : PathScurry; + this.scurry = new Scurry(this.cwd, { + nocase: opts.nocase, + fs: opts.fs + }); + } + this.nocase = this.scurry.nocase; + const nocaseMagicOnly = this.platform === "darwin" || this.platform === "win32"; + const mmo = { + // default nocase based on platform + ...opts, + dot: this.dot, + matchBase: this.matchBase, + nobrace: this.nobrace, + nocase: this.nocase, + nocaseMagicOnly, + nocomment: true, + noext: this.noext, + nonegate: true, + optimizationLevel: 2, + platform: this.platform, + windowsPathsNoEscape: this.windowsPathsNoEscape, + debug: !!this.opts.debug + }; + const mms = this.pattern.map((p) => new Minimatch(p, mmo)); + const [matchSet, globParts] = mms.reduce((set, m) => { + set[0].push(...m.set); + set[1].push(...m.globParts); + return set; + }, [[], []]); + this.patterns = matchSet.map((set, i) => { + const g = globParts[i]; + if (!g) + throw new Error("invalid pattern object"); + return new Pattern(set, g, 0, this.platform); + }); + } + async walk() { + return [ + ...await new GlobWalker(this.patterns, this.scurry.cwd, { + ...this.opts, + maxDepth: this.maxDepth !== Infinity ? this.maxDepth + this.scurry.cwd.depth() : Infinity, + platform: this.platform, + nocase: this.nocase + }).walk() + ]; + } + walkSync() { + return [ + ...new GlobWalker(this.patterns, this.scurry.cwd, { + ...this.opts, + maxDepth: this.maxDepth !== Infinity ? this.maxDepth + this.scurry.cwd.depth() : Infinity, + platform: this.platform, + nocase: this.nocase + }).walkSync() + ]; + } + stream() { + return new GlobStream(this.patterns, this.scurry.cwd, { + ...this.opts, + maxDepth: this.maxDepth !== Infinity ? this.maxDepth + this.scurry.cwd.depth() : Infinity, + platform: this.platform, + nocase: this.nocase + }).stream(); + } + streamSync() { + return new GlobStream(this.patterns, this.scurry.cwd, { + ...this.opts, + maxDepth: this.maxDepth !== Infinity ? this.maxDepth + this.scurry.cwd.depth() : Infinity, + platform: this.platform, + nocase: this.nocase + }).streamSync(); + } + /** + * Default sync iteration function. Returns a Generator that + * iterates over the results. + */ + iterateSync() { + return this.streamSync()[Symbol.iterator](); + } + [Symbol.iterator]() { + return this.iterateSync(); + } + /** + * Default async iteration function. Returns an AsyncGenerator that + * iterates over the results. + */ + iterate() { + return this.stream()[Symbol.asyncIterator](); + } + [Symbol.asyncIterator]() { + return this.iterate(); + } +}; + +// ../node_modules/.pnpm/glob@10.3.10/node_modules/glob/dist/esm/has-magic.js +var hasMagic = (pattern, options2 = {}) => { + if (!Array.isArray(pattern)) { + pattern = [pattern]; + } + for (const p of pattern) { + if (new Minimatch(p, options2).hasMagic()) + return true; + } + return false; +}; + +// ../node_modules/.pnpm/glob@10.3.10/node_modules/glob/dist/esm/index.js +function globStreamSync(pattern, options2 = {}) { + return new Glob(pattern, options2).streamSync(); +} +function globStream(pattern, options2 = {}) { + return new Glob(pattern, options2).stream(); +} +function globSync(pattern, options2 = {}) { + return new Glob(pattern, options2).walkSync(); +} +async function glob_(pattern, options2 = {}) { + return new Glob(pattern, options2).walk(); +} +function globIterateSync(pattern, options2 = {}) { + return new Glob(pattern, options2).iterateSync(); +} +function globIterate(pattern, options2 = {}) { + return new Glob(pattern, options2).iterate(); +} +var streamSync = globStreamSync; +var stream4 = Object.assign(globStream, { sync: globStreamSync }); +var iterateSync = globIterateSync; +var iterate = Object.assign(globIterate, { + sync: globIterateSync +}); +var sync = Object.assign(globSync, { + stream: globStreamSync, + iterate: globIterateSync +}); +var glob = Object.assign(glob_, { + glob: glob_, + globSync, + sync, + globStream, + stream: stream4, + globStreamSync, + streamSync, + globIterate, + iterate, + globIterateSync, + iterateSync, + Glob, + hasMagic, + escape: escape2, + unescape: unescape2 +}); +glob.glob = glob; + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/opt-arg.js +var typeOrUndef = (val, t) => typeof val === "undefined" || typeof val === t; +var isRimrafOptions = (o) => !!o && typeof o === "object" && typeOrUndef(o.preserveRoot, "boolean") && typeOrUndef(o.tmp, "string") && typeOrUndef(o.maxRetries, "number") && typeOrUndef(o.retryDelay, "number") && typeOrUndef(o.backoff, "number") && typeOrUndef(o.maxBackoff, "number") && (typeOrUndef(o.glob, "boolean") || o.glob && typeof o.glob === "object") && typeOrUndef(o.filter, "function"); +var assertRimrafOptions = (o) => { + if (!isRimrafOptions(o)) { + throw new Error("invalid rimraf options"); + } +}; +var optArgT = (opt) => { + assertRimrafOptions(opt); + const { glob: glob2, ...options2 } = opt; + if (!glob2) { + return options2; + } + const globOpt = glob2 === true ? opt.signal ? { signal: opt.signal } : {} : opt.signal ? { + signal: opt.signal, + ...glob2 + } : glob2; + return { + ...options2, + glob: { + ...globOpt, + // always get absolute paths from glob, to ensure + // that we are referencing the correct thing. + absolute: true, + withFileTypes: false + } + }; +}; +var optArg = (opt = {}) => optArgT(opt); +var optArgSync = (opt = {}) => optArgT(opt); + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/path-arg.js +var import_path25 = require("path"); +var import_util4 = require("util"); + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/platform.js +var platform_default = process.env.__TESTING_RIMRAF_PLATFORM__ || process.platform; + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/path-arg.js +var pathArg2 = (path30, opt = {}) => { + const type2 = typeof path30; + if (type2 !== "string") { + const ctor = path30 && type2 === "object" && path30.constructor; + const received = ctor && ctor.name ? `an instance of ${ctor.name}` : type2 === "object" ? (0, import_util4.inspect)(path30) : `type ${type2} ${path30}`; + const msg = `The "path" argument must be of type string. Received ${received}`; + throw Object.assign(new TypeError(msg), { + path: path30, + code: "ERR_INVALID_ARG_TYPE" + }); + } + if (/\0/.test(path30)) { + const msg = "path must be a string without null bytes"; + throw Object.assign(new TypeError(msg), { + path: path30, + code: "ERR_INVALID_ARG_VALUE" + }); + } + path30 = (0, import_path25.resolve)(path30); + const { root } = (0, import_path25.parse)(path30); + if (path30 === root && opt.preserveRoot !== false) { + const msg = "refusing to remove root directory without preserveRoot:false"; + throw Object.assign(new Error(msg), { + path: path30, + code: "ERR_PRESERVE_ROOT" + }); + } + if (platform_default === "win32") { + const badWinChars = /[*|"<>?:]/; + const { root: root2 } = (0, import_path25.parse)(path30); + if (badWinChars.test(path30.substring(root2.length))) { + throw Object.assign(new Error("Illegal characters in path."), { + path: path30, + code: "EINVAL" + }); + } + } + return path30; +}; +var path_arg_default = pathArg2; + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/fs.js +var import_fs8 = __toESM(require("fs"), 1); +var import_fs9 = require("fs"); +var import_fs10 = require("fs"); +var readdirSync2 = (path30) => (0, import_fs10.readdirSync)(path30, { withFileTypes: true }); +var chmod = (path30, mode) => new Promise((res, rej) => import_fs8.default.chmod(path30, mode, (er, ...d) => er ? rej(er) : res(...d))); +var mkdir4 = (path30, options2) => new Promise((res, rej) => import_fs8.default.mkdir(path30, options2, (er, made) => er ? rej(er) : res(made))); +var readdir2 = (path30) => new Promise((res, rej) => import_fs8.default.readdir(path30, { withFileTypes: true }, (er, data) => er ? rej(er) : res(data))); +var rename2 = (oldPath, newPath) => new Promise((res, rej) => import_fs8.default.rename(oldPath, newPath, (er, ...d) => er ? rej(er) : res(...d))); +var rm2 = (path30, options2) => new Promise((res, rej) => import_fs8.default.rm(path30, options2, (er, ...d) => er ? rej(er) : res(...d))); +var rmdir = (path30) => new Promise((res, rej) => import_fs8.default.rmdir(path30, (er, ...d) => er ? rej(er) : res(...d))); +var stat4 = (path30) => new Promise((res, rej) => import_fs8.default.stat(path30, (er, data) => er ? rej(er) : res(data))); +var lstat2 = (path30) => new Promise((res, rej) => import_fs8.default.lstat(path30, (er, data) => er ? rej(er) : res(data))); +var unlink = (path30) => new Promise((res, rej) => import_fs8.default.unlink(path30, (er, ...d) => er ? rej(er) : res(...d))); +var promises = { + chmod, + mkdir: mkdir4, + readdir: readdir2, + rename: rename2, + rm: rm2, + rmdir, + stat: stat4, + lstat: lstat2, + unlink +}; + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/rimraf-posix.js +var import_path26 = require("path"); + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/readdir-or-error.js +var { readdir: readdir3 } = promises; +var readdirOrError = (path30) => readdir3(path30).catch((er) => er); +var readdirOrErrorSync = (path30) => { + try { + return readdirSync2(path30); + } catch (er) { + return er; + } +}; + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/ignore-enoent.js +var ignoreENOENT = async (p) => p.catch((er) => { + if (er.code !== "ENOENT") { + throw er; + } +}); +var ignoreENOENTSync = (fn) => { + try { + return fn(); + } catch (er) { + if (er?.code !== "ENOENT") { + throw er; + } + } +}; + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/rimraf-posix.js +var { lstat: lstat3, rmdir: rmdir2, unlink: unlink2 } = promises; +var rimrafPosix = async (path30, opt) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + try { + return await rimrafPosixDir(path30, opt, await lstat3(path30)); + } catch (er) { + if (er?.code === "ENOENT") + return true; + throw er; + } +}; +var rimrafPosixSync = (path30, opt) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + try { + return rimrafPosixDirSync(path30, opt, (0, import_fs9.lstatSync)(path30)); + } catch (er) { + if (er?.code === "ENOENT") + return true; + throw er; + } +}; +var rimrafPosixDir = async (path30, opt, ent) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + const entries = ent.isDirectory() ? await readdirOrError(path30) : null; + if (!Array.isArray(entries)) { + if (entries) { + if (entries.code === "ENOENT") { + return true; + } + if (entries.code !== "ENOTDIR") { + throw entries; + } + } + if (opt.filter && !await opt.filter(path30, ent)) { + return false; + } + await ignoreENOENT(unlink2(path30)); + return true; + } + const removedAll = (await Promise.all(entries.map((ent2) => rimrafPosixDir((0, import_path26.resolve)(path30, ent2.name), opt, ent2)))).reduce((a, b) => a && b, true); + if (!removedAll) { + return false; + } + if (opt.preserveRoot === false && path30 === (0, import_path26.parse)(path30).root) { + return false; + } + if (opt.filter && !await opt.filter(path30, ent)) { + return false; + } + await ignoreENOENT(rmdir2(path30)); + return true; +}; +var rimrafPosixDirSync = (path30, opt, ent) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + const entries = ent.isDirectory() ? readdirOrErrorSync(path30) : null; + if (!Array.isArray(entries)) { + if (entries) { + if (entries.code === "ENOENT") { + return true; + } + if (entries.code !== "ENOTDIR") { + throw entries; + } + } + if (opt.filter && !opt.filter(path30, ent)) { + return false; + } + ignoreENOENTSync(() => (0, import_fs9.unlinkSync)(path30)); + return true; + } + let removedAll = true; + for (const ent2 of entries) { + const p = (0, import_path26.resolve)(path30, ent2.name); + removedAll = rimrafPosixDirSync(p, opt, ent2) && removedAll; + } + if (opt.preserveRoot === false && path30 === (0, import_path26.parse)(path30).root) { + return false; + } + if (!removedAll) { + return false; + } + if (opt.filter && !opt.filter(path30, ent)) { + return false; + } + ignoreENOENTSync(() => (0, import_fs9.rmdirSync)(path30)); + return true; +}; + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/rimraf-windows.js +var import_path29 = require("path"); + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/fix-eperm.js +var { chmod: chmod2 } = promises; +var fixEPERM = (fn) => async (path30) => { + try { + return await fn(path30); + } catch (er) { + const fer = er; + if (fer?.code === "ENOENT") { + return; + } + if (fer?.code === "EPERM") { + try { + await chmod2(path30, 438); + } catch (er2) { + const fer2 = er2; + if (fer2?.code === "ENOENT") { + return; } + throw er; + } + return await fn(path30); } -}`,evA=` -query IsContextRequiredForChatQuery($query: String!) { - isContextRequiredForChatQuery(query: $query) -}`,rvA=` -mutation LogEventMutation($event: String!, $userCookieID: String!, $url: String!, $source: EventSource!, $argument: String, $publicArgument: String) { - logEvent( - event: $event - userCookieID: $userCookieID - url: $url - source: $source - argument: $argument - publicArgument: $publicArgument - ) { - alwaysNil - } -}`,XeA=` -mutation LogEventMutation($event: String!, $userCookieID: String!, $url: String!, $source: EventSource!, $argument: String, $publicArgument: String, $client: String, $connectedSiteID: String, $hashedLicenseKey: String) { - logEvent( - event: $event - userCookieID: $userCookieID - url: $url - source: $source - argument: $argument - publicArgument: $publicArgument - client: $client - connectedSiteID: $connectedSiteID - hashedLicenseKey: $hashedLicenseKey - ) { - alwaysNil - } -}`,tvA=` -mutation RecordTelemetryEvents($events: [TelemetryEventInput!]!) { - telemetry { - recordEvents(events: $events) { - alwaysNil - } - } -} -`,ivA=` -query SiteIdentification { - site { - siteID - productSubscription { - license { - hashedKey - } - } - } -}`,nvA=` - query FeatureFlags { - evaluatedFeatureFlags() { - name - value + throw er; + } +}; +var fixEPERMSync = (fn) => (path30) => { + try { + return fn(path30); + } catch (er) { + const fer = er; + if (fer?.code === "ENOENT") { + return; + } + if (fer?.code === "EPERM") { + try { + (0, import_fs9.chmodSync)(path30, 438); + } catch (er2) { + const fer2 = er2; + if (fer2?.code === "ENOENT") { + return; + } + throw er; + } + return fn(path30); + } + throw er; + } +}; + +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/retry-busy.js +var MAXBACKOFF = 200; +var RATE = 1.2; +var MAXRETRIES = 10; +var codes = /* @__PURE__ */ new Set(["EMFILE", "ENFILE", "EBUSY"]); +var retryBusy = (fn) => { + const method = async (path30, opt, backoff = 1, total = 0) => { + const mbo = opt.maxBackoff || MAXBACKOFF; + const rate = opt.backoff || RATE; + const max = opt.maxRetries || MAXRETRIES; + let retries = 0; + while (true) { + try { + return await fn(path30); + } catch (er) { + const fer = er; + if (fer?.path === path30 && fer?.code && codes.has(fer.code)) { + backoff = Math.ceil(backoff * rate); + total = backoff + total; + if (total < mbo) { + return new Promise((res, rej) => { + setTimeout(() => { + method(path30, opt, backoff, total).then(res, rej); + }, backoff); + }); + } + if (retries < max) { + retries++; + continue; } + } + throw er; + } } -`,avA=` - query EvaluateFeatureFlag($flagName: String!) { - evaluateFeatureFlag(flagName: $flagName) + }; + return method; +}; +var retryBusySync = (fn) => { + const method = (path30, opt) => { + const max = opt.maxRetries || MAXRETRIES; + let retries = 0; + while (true) { + try { + return fn(path30); + } catch (er) { + const fer = er; + if (fer?.path === path30 && fer?.code && codes.has(fer.code) && retries < max) { + retries++; + continue; + } + throw er; + } } -`;var ovA=Yn(JB()),hRe="/.api/graphql",ZeA=({request:A,baseUrl:r})=>{let t=A?A.match(/^\s*(?:query|mutation)\s+(\w+)/):"",i=`${hRe}${t?"?"+t[1]:""}`;return r?new URL((0,ovA.trimEnd)(r,"/")+i).href:i};function Ju(A,r){return Yo(A)?A:A.errors&&A.errors.length>0?new Error(A.errors.map(({message:t})=>t).join(", ")):A.data?r(A.data):new Error("response is missing data")}var B_;function iy(A){B_&&A.set("User-Agent",B_)}function svA(A){B_=A}var nB=class{dotcomUrl=CQ;anonymousUserID;_config=null;get config(){if(!this._config)throw new Error("GraphQLAPIClientConfig is not set");return this._config}constructor(r=null){this._config=r}onConfigurationChange(r){this._config=r}setAnonymousUserID(r){this.anonymousUserID=r}isDotCom(){return Gm(this.config.serverEndpoint)}isLocalApp(){return Th(this.config.serverEndpoint)}get endpoint(){return this.config.serverEndpoint}async getSiteVersion(){return this.fetchSourcegraphAPI(YwA,{}).then(r=>Ju(r,t=>t.site?.productVersion??new Error("site version not found")))}async getSiteIdentification(){let r=await this.fetchSourcegraphAPI(ivA,{});return Ju(r,t=>t.site?.siteID?t.site?.productSubscription?.license?.hashedKey?{siteid:t.site?.siteID,hashedLicenseKey:t.site?.productSubscription?.license?.hashedKey}:new Error("site hashed license key not found"):new Error("site ID not found"))}async getSiteHasIsCodyEnabledField(){return this.fetchSourcegraphAPI(LwA,{}).then(r=>Ju(r,t=>!!t.__type?.fields?.find(i=>i.name==="isCodyEnabled")))}async getSiteHasCodyEnabled(){return this.fetchSourcegraphAPI(UwA,{}).then(r=>Ju(r,t=>t.site?.isCodyEnabled??!1))}async getCurrentUserId(){return this.fetchSourcegraphAPI(GwA,{}).then(r=>Ju(r,t=>t.currentUser?t.currentUser.id:new Error("current user not found")))}async getCurrentUserIdAndVerifiedEmail(){return this.fetchSourcegraphAPI(jwA,{}).then(r=>Ju(r,t=>t.currentUser?{...t.currentUser}:new Error("current user not found with verified email")))}async getCodyLLMConfiguration(){let[r,t]=await Promise.all([this.fetchSourcegraphAPI(JwA),this.fetchSourcegraphAPI(WwA)]),i=Ju(r,g=>g.site?.codyLLMConfiguration||void 0);if(!i||Yo(i))return i;let o,s=Ju(t,g=>g.site?.codyLLMConfiguration?.provider);return s&&!Yo(s)&&(o=s),{...i,provider:o}}async getRepoIds(r){return this.fetchSourcegraphAPI(VwA,{names:r,first:r.length}).then(t=>Ju(t,i=>i.repositories?.nodes))}async getRepoId(r){return this.fetchSourcegraphAPI(qwA,{name:r}).then(t=>Ju(t,i=>i.repository?i.repository.id:null))}async getRepoNames(r){return this.fetchSourcegraphAPI(zwA,{first:r}).then(t=>Ju(t,i=>i?.repositories?.nodes?.map(o=>o?.name)||[]))}async getRepoIdIfEmbeddingExists(r){return this.fetchSourcegraphAPI(KwA,{name:r}).then(t=>Ju(t,i=>i.repository?.embeddingExists?i.repository.id:null))}async isCodyEnabled(){let r=await this.getSiteVersion();if(Yo(r))return{enabled:!1,version:"unknown"};let t=r.length>12||r.includes("dev");if(t)return{enabled:!0,version:r};if(r<"5.0.0")return{enabled:!1,version:r};let o=r>="5.0.0"&&r<"5.1.0",s=await this.getSiteHasIsCodyEnabledField();if(!o&&!Yo(s)&&s){let g=await this.getSiteHasCodyEnabled();return{enabled:!Yo(g)&&g,version:r}}return{enabled:t||o,version:r}}async recordTelemetryEvents(r){let t=await this.fetchSourcegraphAPI(tvA,{events:r});return Ju(t,i=>i)}async logEvent(r,t){if(process.env.CODY_TESTING==="true")return this.sendEventLogRequestToTestingAPI(r);if(this.config?.telemetryLevel==="off")return{};if(this.isDotCom())return this.sendEventLogRequestToAPI(r);switch(t){case"dotcom-only":return this.sendEventLogRequestToDotComAPI(r);case"connected-instance-only":return this.sendEventLogRequestToAPI(r);case"all":}let i=await Promise.all([this.sendEventLogRequestToAPI(r),this.sendEventLogRequestToDotComAPI(r)]);return Yo(i[0])&&Yo(i[1])?new Error("Errors logging events: "+i[0].toString()+", "+i[1].toString()):Yo(i[0])?i[0]:Yo(i[1])?i[1]:{}}async sendEventLogRequestToDotComAPI(r){let t=await this.fetchSourcegraphDotcomAPI(XeA,r);return Ju(t,i=>i)}async sendEventLogRequestToAPI(r){let t=await this.fetchSourcegraphAPI(XeA,r),i=Ju(t,o=>o);if(Yo(i)){let o=await this.fetchSourcegraphAPI(rvA,r);return Ju(o,s=>s)}return i}async sendEventLogRequestToTestingAPI(r){let t=await this.fetchSourcegraphTestingAPI(r),i=Ju(t,o=>o);if(Yo(i)){let o=await this.fetchSourcegraphTestingAPI(r);return Ju(o,s=>s)}return i}async getCodyContext(r,t,i,o){return this.fetchSourcegraphAPI(XwA,{repos:r,query:t,codeResultsCount:i,textResultsCount:o}).then(s=>Ju(s,g=>g.getCodyContext))}async searchEmbeddings(r,t,i,o){return this.fetchSourcegraphAPI(ZwA,{repos:r,query:t,codeResultsCount:i,textResultsCount:o}).then(s=>Ju(s,g=>g.embeddingsMultiSearch))}async legacySearchEmbeddings(r,t,i,o){return this.fetchSourcegraphAPI($wA,{repo:r,query:t,codeResultsCount:i,textResultsCount:o}).then(s=>Ju(s,g=>g.embeddingsSearch))}async searchAttribution(r){return this.fetchSourcegraphAPI(AvA,{snippet:r}).then(t=>Ju(t,i=>i.snippetAttribution))}async isContextRequiredForQuery(r){return this.fetchSourcegraphAPI(evA,{query:r}).then(t=>Ju(t,i=>i.isContextRequiredForChatQuery))}async getEvaluatedFeatureFlags(){return this.fetchSourcegraphAPI(nvA,{}).then(r=>Ju(r,t=>t.evaluatedFeatureFlags.reduce((i,{name:o,value:s})=>(i[o]=s,i),{})))}async evaluateFeatureFlag(r){return this.fetchSourcegraphAPI(avA,{flagName:r}).then(t=>Ju(t,i=>i.evaluateFeatureFlag))}fetchSourcegraphAPI(r,t={}){let i=new Headers(this.config.customHeaders);i.set("Content-Type","application/json; charset=utf-8"),this.config.accessToken?i.set("Authorization",`token ${this.config.accessToken}`):this.anonymousUserID&&i.set("X-Sourcegraph-Actor-Anonymous-UID",this.anonymousUserID),iy(i);let o=ZeA({request:r,baseUrl:this.config.serverEndpoint});return(0,BS.default)(o,{method:"POST",body:JSON.stringify({query:r,variables:t}),headers:i}).then($eA).then(s=>s.json()).catch(s=>new Error(`accessing Sourcegraph GraphQL API: ${s} (${o})`))}fetchSourcegraphDotcomAPI(r,t){let i=ZeA({request:r,baseUrl:this.dotcomUrl.href}),o=new Headers;return iy(o),(0,BS.default)(i,{method:"POST",body:JSON.stringify({query:r,variables:t}),headers:o}).then($eA).then(s=>s.json()).catch(s=>new Error(`error fetching Sourcegraph GraphQL API: ${s} (${i})`))}fetchSourcegraphTestingAPI(r){let t="http://localhost:49300/.api/testLogging",i=new Headers({"Content-Type":"application/json"});return iy(i),(0,BS.default)(t,{method:"POST",headers:i,body:JSON.stringify(r)}).then($eA).then(o=>o.json()).catch(o=>new Error(`error fetching Testing Sourcegraph API: ${o} (${t})`))}},O0=new nB;async function $eA(A){if(!A.ok){let r=await A.text();throw new Error(`HTTP status code ${A.status}${r?`: ${r}`:""}`)}return A}var bI=class{constructor(r,t){this.config=r;this.logger=t}errorEncountered=!1;onConfigurationChange(r){this.config=r}get completionsEndpoint(){return new URL("/.api/completions/stream",this.config.serverEndpoint).href}sendEvents(r,t){for(let i of r)switch(i.type){case"completion":t.onChange(i.completion);break;case"error":this.errorEncountered=!0,t.onError(i.error);break;case"done":this.errorEncountered||t.onComplete();break}}};var hS=class extends bI{stream(r,t){let i=new AbortController,o=new Headers(this.config.customHeaders);return iy(o),o.set("Content-Type","application/json; charset=utf-8"),this.config.accessToken&&o.set("Authorization",`token ${this.config.accessToken}`),new URLSearchParams(window.location.search).get("trace")&&o.set("X-Sourcegraph-Should-Trace","true"),(0,cvA.fetchEventSource)(this.completionsEndpoint,{method:"POST",headers:Object.fromEntries(o.entries()),body:JSON.stringify(r),signal:i.signal,openWhenHidden:lvA,async onopen(E){if(!E.ok&&E.headers.get("content-type")!=="text/event-stream"){let p=null;try{p=await E.text()}catch(B){console.error(B)}t.onError(p===null||p.length===0?`Request failed with status code ${E.status}`:p,E.status),i.abort();return}},onmessage:E=>{try{let p={...JSON.parse(E.data),type:E.event};this.sendEvents([p],t)}catch(p){throw t.onError(p.message),i.abort(),console.error(p),p}},onerror(E){throw t.onError(E.message),i.abort(),console.error(E),E}}).catch(E=>{t.onError(E.message),i.abort(),console.error(E)}),()=>{i.abort()}}},lvA=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope;lvA&&(self.document={removeEventListener:()=>{}});var QS=class{constructor(r){this.callback=r}buffer_=[];onResponse(r){return this.buffer_.push(r),Promise.resolve()}async onTurnComplete(){await this.callback(this.buffer_.length?this.buffer_.join(""):void 0),this.buffer_=[]}};function QRe(A,r,t){return[A.slice(0,r),A.slice(t===void 0?r:t)]}function mRe(A){let r=A.match(/^<\/?([A-Za-z-]+)>$/);if(!r)throw new Error(`topic tag "${A}" is malformed`);return r[1]}var Ym=class A{static DEFAULT_TOPIC="Assistant";static TOPIC_RE=/<$|<\/?([A-Za-z-]?$|[A-Za-z-]+>?)/m;subs_=new Map;topics_=[];get currentTopic(){return this.topics_.at(-1)||A.DEFAULT_TOPIC}buffer_="";publishInProgress_=Promise.resolve();sub(r,t){if(!/^[A-Za-z-]+$/.test(r))throw new Error(`topics must be A-Za-z-, was "${r}`);this.subs_.set(r,t)}async notifyTurnComplete(){if(await this.publishInProgress_,this.buffer_){let r=this.buffer_;this.buffer_="",await this.publishInTopic(this.currentTopic,r)}this.topics_=[],await Promise.all([...this.subs_.values()].map(r=>r.onTurnComplete()))}publish(r){return this.publishInProgress_=this.publishInProgress_.then(()=>this.publishStep(r))}async publishStep(r){this.buffer_+=r;let t;for(;this.buffer_;){if(t!==void 0&&t===this.buffer_.length)throw new Error(`did not make progress parsing: ${this.buffer_}`);t=this.buffer_.length;let i=this.buffer_.match(A.TOPIC_RE);if(!i){await this.publishBufferUpTo(this.buffer_.length);return}if(i.index===void 0)throw new TypeError("unreachable");if(i.index){await this.publishBufferUpTo(i.index);continue}let o=i.index+i[0].length,s=i[0].length>=2&&i[0].at(1)!=="/";if(!(i[0].at(-1)===">")){if(o===this.buffer_.length)return;await this.publishBufferUpTo(o);continue}let E=mRe(i[0]);if(!this.subs_.has(E)){await this.publishBufferUpTo(o);continue}if(this.buffer_=this.buffer_.slice(o),s)this.topics_.push(E);else for(;this.topics_.length&&this.topics_.pop()!==E;);}}publishBufferUpTo(r){let[t,i]=QRe(this.buffer_,r);return this.buffer_=i,this.publishInTopic(this.currentTopic,t)}async publishInTopic(r,t){let i=this.subs_.get(r);if(i)return i.onResponse(t)}prompt(){return`Enclose each part of the response in one of the relevant tags: ${[...this.subs_.keys()].map(r=>`<${r}>`).join(", ")}: + }; + return method; +}; -`}};var DRe={temperature:.2,maxTokensToSample:1e3,topK:-1,topP:-1},OI=class{constructor(r){this.completions=r}chat(r,t,i){let s=r.length>0&&r.at(-1).speaker==="human"?r.concat([{speaker:"assistant"}]):r;return this.completions.stream({...DRe,...i,messages:s},t)}};var _Re="You are Cody, an AI-powered coding assistant created by Sourcegraph. You work with me inside a text editor.",wRe=`Important rules to follow in all your responses: -- All code snippets must be markdown-formatted, and enclosed in triple backticks. -- Answer questions only if you know the answer or can make a well-informed guess; otherwise tell me you don't know. -- Do not make any assumptions about the code and file names or any misleading information.`;var vRe=`Understood. I am Cody, an AI assistant developed by Sourcegraph to help with programming tasks. -I am working with you inside an editor, and I will answer your questions based on the context you provide from your current codebases. -I will answer questions, explain code, and generate code as concisely and clearly as possible. -I will enclose any code snippets I provide in markdown backticks. -I will let you know if I need more information to answer a question.`;function D6(A,r){let t=r?.actions??_Re,i=r?.rules??wRe,o=r?.answer??vRe,s=[t,i],g=[o];if(A){let E=`We are currently working in a repository called \`${A}\`. I will share any code snippets I can find from this codebase with you to answer my questions.`;s.push(E),g.push(`Understood. I will answer your questions using context you will share from the \`${A}\` repository.`)}return[{speaker:"human",text:s.join(` +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/rimraf-move-remove.js +var import_path28 = require("path"); -`)},{speaker:"assistant",text:g.join(` -`)}]}function mS(A,r){let t=r;for(let i of A)i?.fileName&&i?.uri?.fsPath&&(t=gvA(t,i?.fileName.trim(),i?.uri?.fsPath,i.range?.start?.line));return t}function uvA(A,r){let t=r?.fileName?.trim();if(!t)return A;let i=`${A} @${t}`,o=r?.fileUri?.fsPath,s=r?.selectionRange?.start?.line;return!o||!r?.selectionRange?.end?.line?i:gvA(i,`@${t}`,o,s)}function gvA(A,r,t,i=0){let o=i?`:${i}`:"",s=`vscode://file${t}${o}`,g=`[_${r.trim()}_](${s})`,E=new RegExp(`\\s*${r.replaceAll(/[$()*+./?[\\\]^{|}-]/g,"\\$&")}(?!\\S)`,"g");return A.replaceAll(E,` ${g}`).trim()}var cd=class{constructor(r,t,i,o,s=[],g=new Date().toISOString()){this.humanMessage=r;this.assistantMessage=t;this.fullContext=i;this.usedContextFiles=o;this.usedPreciseContext=s;this.timestamp=g}metadata;setMetadata(r){this.metadata=r,this.humanMessage.metadata=this.metadata,this.assistantMessage.metadata=this.metadata}getAssistantMessage(){return{...this.assistantMessage}}setAssistantMessage(r){this.assistantMessage={...r,metadata:this.metadata}}getHumanMessage(){return{...this.humanMessage}}async getFullContext(){return(await this.fullContext).map(t=>({...t}))}async hasContext(){return(await this.fullContext).length>0}setUsedContext(r,t){this.usedContextFiles=r,this.usedPreciseContext=t}toChat(){return[{...this.humanMessage,contextFiles:this.usedContextFiles,preciseContext:this.usedPreciseContext},this.assistantMessage]}async toChatPromise(){return await this.fullContext,this.toChat()}async toJSON(){return{humanMessage:this.humanMessage,assistantMessage:this.assistantMessage,fullContext:await this.fullContext,usedContextFiles:this.usedContextFiles,usedPreciseContext:this.usedPreciseContext,timestamp:this.timestamp}}};var aB=class A{constructor(r){this.debug=r}id="chat-question";title="Chat Question";async getInteraction(r,t){let i=this.id,o=io(r,1e3),s=t.userInputContextFiles,g=s?.length?mS(s,r):r;return Promise.resolve(new cd({speaker:"human",text:o,displayText:g,metadata:{source:i}},{speaker:"assistant",metadata:{source:i}},this.getContextMessages(o,t.editor,t.addEnhancedContext,t.intentDetector,t.codebaseContext,t.editor.getActiveTextEditorSelection()||null,t.userInputContextFiles),[]))}async getContextMessages(r,t,i,o,s,g,E){let p=[];if(aS(r))return p;if(this.debug("ChatQuestion:getContextMessages","addEnhancedContext",i),i){let _=await s.getCombinedContextMessages(r,Rm);p.push(..._)}let m=o.isEditorContextRequired(r);if(this.debug("ChatQuestion:getContextMessages","isEditorContextRequired",m),m&&p.push(...A.getEditorContext(t)),E?.length){let _=await A.getContextFilesContext(t,E);p.push(..._)}return g?.selectedText&&p.push(...A.getEditorSelectionContext(g)),p}static getEditorContext(r){let t=r.getActiveTextEditorVisibleContent();if(!t)return[];let i=io(t.content,1e3);return cu(s_(i,t.fileName,t.repoName),t)}static getEditorSelectionContext(r){let t=io(r.selectedText,1e3);return cu(sS(t,r.fileName,r.repoName),r)}static async getContextFilesContext(r,t){let i=[];for(let o of t)if(o?.uri){let s=await r.getTextEditorContentForFile(o?.uri,o.range);if(s){let g=N_A(o,s);i.push(...g)}}return i}};var MI=class A{constructor(r){this.debug=r}id="code-question";title="Code Question";async getInteraction(r,t){let i=this.id,o=io(r,1e3);return Promise.resolve(new cd({speaker:"human",text:o,displayText:r,metadata:{source:i}},{speaker:"assistant",text:`\`\`\`${cp(t.editor.getActiveTextEditorSelection()?.fileName??"")} -`,metadata:{source:i}},this.getContextMessages(o,t.editor,t.addEnhancedContext,t.intentDetector,t.codebaseContext,t.editor.getActiveTextEditorSelection()||null),[]))}async getContextMessages(r,t,i,o,s,g){let E=[];if(aS(r))return E;let B=i||await o.isCodebaseContextRequired(r);if(this.debug("ChatQuestion:getContextMessages","isCodebaseContextRequired",B),B){let _=await s.getContextMessages(r,Rm);E.push(..._)}let m=o.isEditorContextRequired(r);return this.debug("ChatQuestion:getContextMessages","isEditorContextRequired",m),(B||m)&&E.push(...A.getEditorContext(t)),g?.selectedText&&E.push(...A.getEditorSelectionContext(g)),E}static getEditorContext(r){let t=r.getActiveTextEditorVisibleContent();if(!t)return[];let i=io(t.content,1e3);return cu(s_(i,t.fileName,t.repoName),t)}static getEditorSelectionContext(r){let t=io(r.selectedText,1e3);return cu(sS(t,r.fileName,r.repoName),r)}};var kI=require("path");var yRe=`Follow these rules when answering my questions: -- Your response should based on the shared context only. -- Do not suggest anything that would break any shared code. -- All generated code must be full workable code. +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/default-tmp.js +var import_os6 = require("os"); +var import_path27 = require("path"); +var { stat: stat5 } = promises; +var isDirSync = (path30) => { + try { + return (0, import_fs9.statSync)(path30).isDirectory(); + } catch (er) { + return false; + } +}; +var isDir = (path30) => stat5(path30).then((st) => st.isDirectory(), () => false); +var win32DefaultTmp = async (path30) => { + const { root } = (0, import_path27.parse)(path30); + const tmp = (0, import_os6.tmpdir)(); + const { root: tmpRoot } = (0, import_path27.parse)(tmp); + if (root.toLowerCase() === tmpRoot.toLowerCase()) { + return tmp; + } + const driveTmp = (0, import_path27.resolve)(root, "/temp"); + if (await isDir(driveTmp)) { + return driveTmp; + } + return root; +}; +var win32DefaultTmpSync = (path30) => { + const { root } = (0, import_path27.parse)(path30); + const tmp = (0, import_os6.tmpdir)(); + const { root: tmpRoot } = (0, import_path27.parse)(tmp); + if (root.toLowerCase() === tmpRoot.toLowerCase()) { + return tmp; + } + const driveTmp = (0, import_path27.resolve)(root, "/temp"); + if (isDirSync(driveTmp)) { + return driveTmp; + } + return root; +}; +var posixDefaultTmp = async () => (0, import_os6.tmpdir)(); +var posixDefaultTmpSync = () => (0, import_os6.tmpdir)(); +var defaultTmp = platform_default === "win32" ? win32DefaultTmp : posixDefaultTmp; +var defaultTmpSync = platform_default === "win32" ? win32DefaultTmpSync : posixDefaultTmpSync; -{humanInput} -`;var _6={terminal:"Noted. I will answer your next question based on this terminal output with other code you shared.",selection:"Noted. I will refer to this code you selected in the editor to answer your question.",file:"Noted. I will refer to this codebase file you are looking at to answer you next question for the code in the tags.",fileList:"Noted. I will refer to this list of files from the {fileName} directory of your codebase to answer your next question.",packageJson:"Noted. I will use the right libraries/framework already setup in your codebase for your questions."},dvA={instruction:yRe};async function Yc(A){let{text:r,displayText:t,contextMessages:i,assistantText:o,assistantDisplayText:s,assistantPrefix:g,source:E,requestID:p}=A,B={source:E,requestID:p};return Promise.resolve(new cd({speaker:"human",text:r,displayText:t,metadata:B},{speaker:"assistant",text:o,displayText:s,prefix:g,metadata:B},Promise.resolve(i||[]),[]))}async function DS(A,r=""){return Promise.resolve(new cd({speaker:"human",displayText:r},{speaker:"assistant",displayText:A,error:A},Promise.resolve([]),[]))}function pvA(A){let r=Object.entries(A).length;return!A.none&&(A.selection&&r===1||!r)}function EvA(A){let r=/(unit|e2e|integration)(?= test)/i;return A.match(r)?.[0]||""}function fvA(A,r){let t=dvA.instruction.replace("{humanInput}",A);return r?t.replaceAll("{languageName}",NE(cp(r))):t}var BvA=/^\/+/;function ArA(A){return A.replace(BvA,"")}function ay(A){return A.replace(BvA,"").replace(/^/,"/")}function erA(A,r){let t=(0,kI.extname)(A),i=(0,kI.basename)(A,t),o="**",s=`/*test*${t}`,g=`/*{test_${i},${i}_test,test.${i},${i}.test,${i}Test}${t}`;return r?`${o}${s}`:`${o}${g}`}function _S(A){if(A.includes("node_modules"))return!1;let r=(0,kI.basename)(A,(0,kI.extname)(A)),t=/([._-](test|spec))|Test|Spec$/;return r.startsWith("test_")||t.test(r)}var h_=class{id="explain-code-detailed";title="Explain Selected Code (Detailed)";async getInteraction(r,t){let i=this.id,o=t.editor.getActiveTextEditorSelectionOrEntireFile();if(!o)return await t.editor.showWarningMessage("No code selected. Please select some code and try again."),Promise.resolve(null);let s=io(o.selectedText,2e3),g=qB(o.precedingText,500),E=io(o.followingText,500),B=`Please explain the following ${NE(o.fileName)} code. Be very detailed and specific, and indicate when it is not clear to you what is going on. Format your response as an ordered list. -\`\`\` -${s} -\`\`\` -${Sm}`,m=`Explain the following code: -\`\`\` -${o.selectedText} -\`\`\``;return Yc({text:B,displayText:m,source:i,contextMessages:_Q(s,g,E,o,t.codebaseContext)})}};var Q_=class{id="explain-code-high-level";title="Explain Selected Code (High Level)";async getInteraction(r,t){let i=this.id,o=t.editor.getActiveTextEditorSelectionOrEntireFile();if(!o)return await t.editor.showWarningMessage("No code selected. Please select some code and try again."),Promise.resolve(null);let s=io(o.selectedText,2e3),g=qB(o.precedingText,500),E=io(o.followingText,500),B=`Explain the following ${NE(o.fileName)} code at a high level. Only include details that are essential to an overall understanding of what's happening in the code. -\`\`\` -${s} -\`\`\` -${Sm}`,m=`Explain the following code at a high level: -\`\`\` -${o.selectedText} -\`\`\``;return Yc({text:B,displayText:m,source:i,contextMessages:_Q(s,g,E,o,t.codebaseContext)})}};var m_=class{id="find-code-smells";title="Smell Code";async getInteraction(r,t){let i=this.id,o=t.editor.getActiveTextEditorSelectionOrEntireFile();if(!o)return await t.editor.showWarningMessage("No code selected. Please select some code and try again."),Promise.resolve(null);let g=`Find code smells, potential bugs, and unhandled errors in my ${NE(o.fileName)} code:`,E=`List maximum five of them as a list (if you have more in mind, mention that these are the top five), with a short context, reasoning, and suggestion on each. -If you have no ideas because the code looks fine, feel free to say that it already looks fine.`,p=5e3-(g.length+E.length)/4,B=io(o.selectedText,Math.min(p,2e3)),m=`${g} +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/rimraf-move-remove.js +var { lstat: lstat4, rename: rename3, unlink: unlink3, rmdir: rmdir3, chmod: chmod3 } = promises; +var uniqueFilename = (path30) => `.${(0, import_path28.basename)(path30)}.${Math.random()}`; +var unlinkFixEPERM = async (path30) => unlink3(path30).catch((er) => { + if (er.code === "EPERM") { + return chmod3(path30, 438).then(() => unlink3(path30), (er2) => { + if (er2.code === "ENOENT") { + return; + } + throw er; + }); + } else if (er.code === "ENOENT") { + return; + } + throw er; +}); +var unlinkFixEPERMSync = (path30) => { + try { + (0, import_fs9.unlinkSync)(path30); + } catch (er) { + if (er?.code === "EPERM") { + try { + return (0, import_fs9.chmodSync)(path30, 438); + } catch (er2) { + if (er2?.code === "ENOENT") { + return; + } + throw er; + } + } else if (er?.code === "ENOENT") { + return; + } + throw er; + } +}; +var rimrafMoveRemove = async (path30, opt) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + try { + return await rimrafMoveRemoveDir(path30, opt, await lstat4(path30)); + } catch (er) { + if (er?.code === "ENOENT") + return true; + throw er; + } +}; +var rimrafMoveRemoveDir = async (path30, opt, ent) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + if (!opt.tmp) { + return rimrafMoveRemoveDir(path30, { ...opt, tmp: await defaultTmp(path30) }, ent); + } + if (path30 === opt.tmp && (0, import_path28.parse)(path30).root !== path30) { + throw new Error("cannot delete temp directory used for deletion"); + } + const entries = ent.isDirectory() ? await readdirOrError(path30) : null; + if (!Array.isArray(entries)) { + if (entries) { + if (entries.code === "ENOENT") { + return true; + } + if (entries.code !== "ENOTDIR") { + throw entries; + } + } + if (opt.filter && !await opt.filter(path30, ent)) { + return false; + } + await ignoreENOENT(tmpUnlink(path30, opt.tmp, unlinkFixEPERM)); + return true; + } + const removedAll = (await Promise.all(entries.map((ent2) => rimrafMoveRemoveDir((0, import_path28.resolve)(path30, ent2.name), opt, ent2)))).reduce((a, b) => a && b, true); + if (!removedAll) { + return false; + } + if (opt.preserveRoot === false && path30 === (0, import_path28.parse)(path30).root) { + return false; + } + if (opt.filter && !await opt.filter(path30, ent)) { + return false; + } + await ignoreENOENT(tmpUnlink(path30, opt.tmp, rmdir3)); + return true; +}; +var tmpUnlink = async (path30, tmp, rm4) => { + const tmpFile = (0, import_path28.resolve)(tmp, uniqueFilename(path30)); + await rename3(path30, tmpFile); + return await rm4(tmpFile); +}; +var rimrafMoveRemoveSync = (path30, opt) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + try { + return rimrafMoveRemoveDirSync(path30, opt, (0, import_fs9.lstatSync)(path30)); + } catch (er) { + if (er?.code === "ENOENT") + return true; + throw er; + } +}; +var rimrafMoveRemoveDirSync = (path30, opt, ent) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + if (!opt.tmp) { + return rimrafMoveRemoveDirSync(path30, { ...opt, tmp: defaultTmpSync(path30) }, ent); + } + const tmp = opt.tmp; + if (path30 === opt.tmp && (0, import_path28.parse)(path30).root !== path30) { + throw new Error("cannot delete temp directory used for deletion"); + } + const entries = ent.isDirectory() ? readdirOrErrorSync(path30) : null; + if (!Array.isArray(entries)) { + if (entries) { + if (entries.code === "ENOENT") { + return true; + } + if (entries.code !== "ENOTDIR") { + throw entries; + } + } + if (opt.filter && !opt.filter(path30, ent)) { + return false; + } + ignoreENOENTSync(() => tmpUnlinkSync(path30, tmp, unlinkFixEPERMSync)); + return true; + } + let removedAll = true; + for (const ent2 of entries) { + const p = (0, import_path28.resolve)(path30, ent2.name); + removedAll = rimrafMoveRemoveDirSync(p, opt, ent2) && removedAll; + } + if (!removedAll) { + return false; + } + if (opt.preserveRoot === false && path30 === (0, import_path28.parse)(path30).root) { + return false; + } + if (opt.filter && !opt.filter(path30, ent)) { + return false; + } + ignoreENOENTSync(() => tmpUnlinkSync(path30, tmp, import_fs9.rmdirSync)); + return true; +}; +var tmpUnlinkSync = (path30, tmp, rmSync3) => { + const tmpFile = (0, import_path28.resolve)(tmp, uniqueFilename(path30)); + (0, import_fs9.renameSync)(path30, tmpFile); + return rmSync3(tmpFile); +}; -\`\`\` -${B} -\`\`\` +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/rimraf-windows.js +var { unlink: unlink4, rmdir: rmdir4, lstat: lstat5 } = promises; +var rimrafWindowsFile = retryBusy(fixEPERM(unlink4)); +var rimrafWindowsFileSync = retryBusySync(fixEPERMSync(import_fs9.unlinkSync)); +var rimrafWindowsDirRetry = retryBusy(fixEPERM(rmdir4)); +var rimrafWindowsDirRetrySync = retryBusySync(fixEPERMSync(import_fs9.rmdirSync)); +var rimrafWindowsDirMoveRemoveFallback = async (path30, opt) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + const { filter: filter3, ...options2 } = opt; + try { + return await rimrafWindowsDirRetry(path30, options2); + } catch (er) { + if (er?.code === "ENOTEMPTY") { + return await rimrafMoveRemove(path30, options2); + } + throw er; + } +}; +var rimrafWindowsDirMoveRemoveFallbackSync = (path30, opt) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + const { filter: filter3, ...options2 } = opt; + try { + return rimrafWindowsDirRetrySync(path30, options2); + } catch (er) { + const fer = er; + if (fer?.code === "ENOTEMPTY") { + return rimrafMoveRemoveSync(path30, options2); + } + throw er; + } +}; +var START = Symbol("start"); +var CHILD = Symbol("child"); +var FINISH = Symbol("finish"); +var rimrafWindows = async (path30, opt) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + try { + return await rimrafWindowsDir(path30, opt, await lstat5(path30), START); + } catch (er) { + if (er?.code === "ENOENT") + return true; + throw er; + } +}; +var rimrafWindowsSync = (path30, opt) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + try { + return rimrafWindowsDirSync(path30, opt, (0, import_fs9.lstatSync)(path30), START); + } catch (er) { + if (er?.code === "ENOENT") + return true; + throw er; + } +}; +var rimrafWindowsDir = async (path30, opt, ent, state = START) => { + if (opt?.signal?.aborted) { + throw opt.signal.reason; + } + const entries = ent.isDirectory() ? await readdirOrError(path30) : null; + if (!Array.isArray(entries)) { + if (entries) { + if (entries.code === "ENOENT") { + return true; + } + if (entries.code !== "ENOTDIR") { + throw entries; + } + } + if (opt.filter && !await opt.filter(path30, ent)) { + return false; + } + await ignoreENOENT(rimrafWindowsFile(path30, opt)); + return true; + } + const s = state === START ? CHILD : state; + const removedAll = (await Promise.all(entries.map((ent2) => rimrafWindowsDir((0, import_path29.resolve)(path30, ent2.name), opt, ent2, s)))).reduce((a, b) => a && b, true); + if (state === START) { + return rimrafWindowsDir(path30, opt, ent, FINISH); + } else if (state === FINISH) { + if (opt.preserveRoot === false && path30 === (0, import_path29.parse)(path30).root) { + return false; + } + if (!removedAll) { + return false; + } + if (opt.filter && !await opt.filter(path30, ent)) { + return false; + } + await ignoreENOENT(rimrafWindowsDirMoveRemoveFallback(path30, opt)); + } + return true; +}; +var rimrafWindowsDirSync = (path30, opt, ent, state = START) => { + const entries = ent.isDirectory() ? readdirOrErrorSync(path30) : null; + if (!Array.isArray(entries)) { + if (entries) { + if (entries.code === "ENOENT") { + return true; + } + if (entries.code !== "ENOTDIR") { + throw entries; + } + } + if (opt.filter && !opt.filter(path30, ent)) { + return false; + } + ignoreENOENTSync(() => rimrafWindowsFileSync(path30, opt)); + return true; + } + let removedAll = true; + for (const ent2 of entries) { + const s = state === START ? CHILD : state; + const p = (0, import_path29.resolve)(path30, ent2.name); + removedAll = rimrafWindowsDirSync(p, opt, ent2, s) && removedAll; + } + if (state === START) { + return rimrafWindowsDirSync(path30, opt, ent, FINISH); + } else if (state === FINISH) { + if (opt.preserveRoot === false && path30 === (0, import_path29.parse)(path30).root) { + return false; + } + if (!removedAll) { + return false; + } + if (opt.filter && !opt.filter(path30, ent)) { + return false; + } + ignoreENOENTSync(() => { + rimrafWindowsDirMoveRemoveFallbackSync(path30, opt); + }); + } + return true; +}; -${E}`,_=`Find code smells in the following code: -\`\`\` -${o.selectedText} -\`\`\``,x="";return Yc({text:m,displayText:_,source:i,assistantPrefix:x,assistantText:x})}};var D_=class{id="generate-docstring";title="Generate Docstring";async getInteraction(r,t){let i=this.id,o=t.editor.getActiveTextEditorSelectionOrEntireFile();if(!o)return await t.editor.showWarningMessage("No code selected. Please select some code and try again."),Promise.resolve(null);let s=io(o.selectedText,2e3),g=qB(o.precedingText,500),E=io(o.followingText,500),p=cp(o.fileName),B=NE(o.fileName),m=`Generate a comment documenting the parameters and functionality of the following ${B} code:`,_=`Use the ${B} documentation style to generate a ${B} comment.`;p==="java"?_="Use the JavaDoc documentation style to generate a Java comment.":p==="py"&&(_="Use a Python docstring to generate a Python multi-line string.");let x=`${m} -\`\`\` -${s} -\`\`\` -Only generate the documentation, do not generate the code. ${_} ${Sm}`,O="";p==="java"||p.startsWith("js")||p.startsWith("ts")?O="/*":p==="py"?O=`""" -`:p==="go"&&(O="// ");let k=`Generate documentation for the following code: -\`\`\` -${o.selectedText} -\`\`\``,P=`Here is the generated documentation: -\`\`\`${p} -${O}`;return Yc({text:x,displayText:k,source:i,assistantPrefix:P,assistantText:P,contextMessages:_Q(s,g,E,o,t.codebaseContext)})}};var __=class{id="generate-unit-test";title="Generate Unit Test";async getInteraction(r,t){let i=this.id,o=t.editor.getActiveTextEditorSelectionOrEntireFile();if(!o)return await t.editor.showWarningMessage("No code selected. Please select some code and try again."),Promise.resolve(null);let s=io(o.selectedText,2e3),g=qB(o.precedingText,500),E=io(o.followingText,500),p=cp(o.fileName),m=`Generate a unit test in ${NE(o.fileName)} for the following code: -\`\`\`${p} -${s} -\`\`\` -${Sm}`,_=`Here is the generated unit test: -\`\`\`${p} -`,x=`Generate a unit test for the following code: -\`\`\`${p} -${o.selectedText} -\`\`\``;return Yc({text:m,displayText:x,source:i,assistantPrefix:_,assistantText:_,contextMessages:_Q(s,g,E,o,t.codebaseContext)})}};var w_=class{id="improve-variable-names";title="Improve Variable Names";async getInteraction(r,t){let i=this.id,o=t.editor.getActiveTextEditorSelectionOrEntireFile();if(!o)return await t.editor.showWarningMessage("No code selected. Please select some code and try again."),Promise.resolve(null);let s=io(o.selectedText,2e3),g=qB(o.precedingText,500),E=io(o.followingText,500),p=cp(o.fileName),B=`Improve the variable names in the following code: -\`\`\` -${o.selectedText} -\`\`\``,_=`Improve the variable names in this ${NE(o.fileName)} code by replacing the variable names with new identifiers which succinctly capture the purpose of the variable. We want the new code to be a drop-in replacement, so do not change names bound outside the scope of this code, like function names or members defined elsewhere. Only change the names of local variables and parameters: +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/rimraf-manual.js +var rimrafManual = platform_default === "win32" ? rimrafWindows : rimrafPosix; +var rimrafManualSync = platform_default === "win32" ? rimrafWindowsSync : rimrafPosixSync; -\`\`\`${p} -${s} -\`\`\` -${Sm}`,x=`Here is the improved code: -\`\`\`${p} -`;return Yc({text:_,displayText:B,source:i,assistantPrefix:x,assistantText:x,contextMessages:_Q(s,g,E,o,t.codebaseContext)})}};var rrA={BASIC:"basic",Bash:"bash",C:"c","C#":"csharp","C++":"cpp",COBOL:"cobol",Elm:"elm",Erlang:"erlang",Fortran:"fortran",Go:"go",Groovy:"groovy",Haskell:"haskell",Java:"java",JavaScript:"javascript",Julia:"julia",Kotlin:"kotlin",Lisp:"lisp",Matlab:"matlab","Objective-C":"objectivec",PHP:"php",Perl:"perl",Python:"python",R:"r",Ruby:"ruby",Rust:"rust",Scala:"scala",Swift:"swift",TypeScript:"typescript",Zig:"zig"},trA=Array.from(Object.keys(rrA));var v_=class{id="translate-to-language";title="Translate Code to Language";static options=trA;async getInteraction(r,t){let i=this.id,o=t.editor.getActiveTextEditorSelectionOrEntireFile();if(!o)return await t.editor.showWarningMessage("No code selected. Please select some code and try again."),null;let s=await t.editor.showQuickPick(trA);if(!s)return null;let g=io(o.selectedText,2e3),E=`Translate the following code into ${s} -\`\`\` -${g} -\`\`\``,p=`Translate the following code into ${s} -\`\`\` -${o.selectedText} -\`\`\``,B=rrA[s]||"",m=`Here is the code translated to ${s}: -\`\`\`${B} -`;return Yc({text:E,displayText:p,source:i,assistantPrefix:m,assistantText:m})}};var irA={};function CRe(A,r){irA[A]=r}function nrA(A){return irA[A]}function QvA(A,r,...t){}function IRe(){if(Object.keys(irA).length>0)return;let A=[new aB(QvA),new MI(QvA),new h_,new Q_,new D_,new __,new w_,new v_,new m_];for(let r of A){if(nrA(r.id))throw new Error(`Duplicate recipe with ID ${r.id}`);CRe(r.id,r)}}IRe();var bRe="Reply as Cody, a coding assistant developed by Sourcegraph.",ORe="If context is available: never make any assumptions nor provide any misleading or hypothetical examples.",MRe=`(${bRe} ${ORe}) `,oy=class A{constructor(r){this.prompt=r}static mixins=[];static customMixin=[];static defaultMixin=new A(MRe);static add(r){this.mixins.push(r)}static addCustom(r){this.customMixin=[r]}static mixInto(r){let t=[...this.mixins,...this.customMixin,this.defaultMixin].map(i=>i.prompt).join(` +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/rimraf-native.js +var { rm: rm3 } = promises; +var rimrafNative = async (path30, opt) => { + await rm3(path30, { + ...opt, + force: true, + recursive: true + }); + return true; +}; +var rimrafNativeSync = (path30, opt) => { + (0, import_fs9.rmSync)(path30, { + ...opt, + force: true, + recursive: true + }); + return true; +}; -`);return t?{...r,text:`${t}${r.text}`}:r}};function mvA(A){return new oy(A)}var _4=class A{static fromJSON(r){return new A(r.interactions.map(({humanMessage:t,assistantMessage:i,context:o,fullContext:s,usedContextFiles:g,usedPreciseContext:E,timestamp:p})=>(s||(s=o||[]),new cd(t,i,Promise.resolve(s.map(B=>{if(B.file)return B;let{fileName:m}=B;return m?{...B,file:{fileName:m}}:B})),g||[],E||[],p||new Date().toISOString()))),r.id,r.chatModel)}interactions=[];internalID;chatModel=void 0;constructor(r=[],t,i){this.interactions=r,this.internalID=t||this.interactions.find(({timestamp:o})=>!isNaN(new Date(o)))?.timestamp||new Date().toISOString(),this.chatModel=i}get id(){return this.internalID}setChatModel(r){!r||this.interactions.length>1||(this.chatModel=r)}get isEmpty(){return this.interactions.length===0}get lastInteractionTimestamp(){for(let r=this.interactions.length-1;r>=0;r--){let{timestamp:t}=this.interactions[r];if(!isNaN(new Date(t)))return t}return this.internalID}addInteraction(r){r&&this.interactions.push(r)}getLastInteraction(){return this.interactions.length>0?this.interactions.at(-1):null}removeLastInteraction(){this.interactions.pop()}removeInteractionsSince(r){let t=this.interactions.findIndex(({timestamp:i})=>i===r);t>=0&&(this.interactions=this.interactions.slice(0,t))}addAssistantResponse(r,t){this.getLastInteraction()?.setAssistantMessage({speaker:"assistant",text:r,displayText:t})}addErrorAsAssistantResponse(r){let t=this.getLastInteraction();if(!t)return;let i=t.getAssistantMessage().displayText||"";t.setAssistantMessage({speaker:"assistant",text:"Failed to generate a response due to server error.",displayText:i+`
    Request failed: ${r}
    `})}async getPromptForLastInteraction(r=[],t=5e3,i=!1){if(this.interactions.length===0)return{prompt:[],contextFiles:[],preciseContexts:[]};let o=[];for(let B=0;BB+arA(m),0),g=kRe(o,t-s),E=[],p=[];for(let B of g){let m=B.file;m&&E.push(m);let _=B.preciseContext;_&&p.push(_)}return g=g.map(({speaker:B,text:m})=>({speaker:B,text:m})),{prompt:[...r,...g],contextFiles:E,preciseContexts:p}}setUsedContextFilesForLastInteraction(r,t=[]){if(this.interactions.length===0)throw new Error("Cannot set context files for empty transcript");this.interactions.at(-1).setUsedContext(r,t)}toChat(){return this.interactions.flatMap(r=>r.toChat())}async toChatPromise(){return[...await Promise.all(this.interactions.map(r=>r.toChatPromise()))].flat()}async toJSON(r){let t=await Promise.all(this.interactions.map(i=>i.toJSON()));return{id:this.id,chatModel:this.chatModel,interactions:t,lastInteractionTimestamp:this.lastInteractionTimestamp,scope:r?{repositories:r.repositories,includeInferredRepository:r.includeInferredRepository,includeInferredFile:r.includeInferredFile}:void 0}}toJSONEmpty(r){return{id:this.id,chatModel:this.chatModel,interactions:[],lastInteractionTimestamp:this.lastInteractionTimestamp,scope:r?{repositories:r.repositories,includeInferredRepository:r.includeInferredRepository,includeInferredFile:r.includeInferredFile}:void 0}}reset(){this.interactions=[],this.internalID=new Date().toISOString()}};function kRe(A,r){let t=[],i=r;for(let o=A.length-1;o>=1;o-=2){let s=A[o-1],g=A[o],E=arA(s)+arA(g);if(E<=i)t.push(g,s),i-=E;else break}return t.reverse()}function arA(A){return Math.round((A.text||"").length/4)}var xRe=/(H|Hu|Hum|Huma|Human|Human:)$/;function xI(A,r){let t=r+A.trimEnd(),i=t.match(xRe);return i&&(t=t.slice(0,i.index)),HRe(t)}function HRe(A){return(A.split("```").length-1)%2===1?A+"\n```":A}async function DvA({config:A,setMessageInProgress:r,setTranscript:t,editor:i,initialTranscript:o,createCompletionsClient:s=g=>new hS(g)}){let g={debugEnable:!1,...A},E=new nB(g),p=await E.getSiteVersion(),B={authenticated:!1,version:""};Yo(p)||(B.authenticated=!0,B.version=p);let m=await E.isCodyEnabled();if(B.authenticated&&m.enabled){let _=s(g),x=new OI(_),O=A.codebase?await E.getRepoIdIfEmbeddingExists(A.codebase):null;if(Yo(O))throw new Error(`Cody could not access the '${A.codebase}' repository on your Sourcegraph instance. Details: ${O.message}`);let k=O?new l_(E,O,!0):null,P=new c_(A,A.codebase,k,null,null,null),H=new DI(E,_),T=o||new _4,v=!1,F=S=>{if(v){let U=T.toChat();t(T);let V=U.at(-1);S&&(V.data=S),r(V)}else t(T),r(S?{data:S,speaker:"assistant"}:null)};async function y(S,U){let V=U?.humanChatInput??"",wA=nrA(S);if(!wA)return;let IA=await wA.getInteraction(V,{editor:U?.prefilledOptions?V_A(i,U.prefilledOptions):i,intentDetector:H,codebaseContext:P,responseMultiplexer:new Ym,addEnhancedContext:T.isEmpty});if(!IA)return;v=!0,T.addInteraction(IA);let{prompt:pA,contextFiles:oA,preciseContexts:cA}=await T.getPromptForLastInteraction(D6(A.codebase));T.setUsedContextFilesForLastInteraction(oA,cA);let eA=IA.getAssistantMessage().prefix??"",Y="";await new Promise((X,Z)=>{let K=x.chat(pA,{onChange(J){Y=J;let sA=xI(Y,eA);T.addAssistantResponse(sA),F(U?.data)},onComplete(){v=!1;let J=xI(Y,eA);T.addAssistantResponse(J),F(U?.data),X()},onError(J){T.addErrorAsAssistantResponse(J),v=!1,F(U?.data),console.error(`Completion request failed: ${J}`),Z(new Error(J))}});U?.signal?.addEventListener("abort",()=>{K(),v=!1})})}return{get transcript(){return T},get isMessageInProgress(){return v},submitMessage(S){return y("chat-question",{humanChatInput:S})},executeRecipe:y,reset(){v=!1,T.reset(),F()},codebaseContext:P,sourcegraphStatus:B,codyStatus:m,graphqlClient:E}}return null}function _vA(A,r,...t){}var w6={};function SRe(A){return w6[A]}function FRe(A,r){w6[A]=r}function RRe(){if(Object.keys(w6).length>0)return;let A=[new aB(_vA),new MI(_vA),new h_,new Q_,new D_,new __,new w_,new v_,new m_];for(let r of A){if(SRe(r.id))throw new Error(`Duplicate recipe with ID ${r.id}`);FRe(r.id,r)}}RRe();var IvA=Yn(require("http")),bvA=Yn(require("https"));function orA(A){if(A.length===0)return{str:"",buf:Buffer.of()};let r=A.length;if(A[r-1]&128){let t=1;for(;(A[r-t]&192)===128;)t++;let i=A[r-t],o=255^(1<<7-t)-1,s=t===6?252:o^1<<7-t;(i&o)!==s&&(r-=t)}return{str:A.slice(0,r).toString("utf8"),buf:Buffer.from(A.slice(r))}}var wvA="event: ",vvA="data: ",srA=` +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/use-native.js +var version3 = process.env.__TESTING_RIMRAF_NODE_VERSION__ || process.version; +var versArr2 = version3.replace(/^v/, "").split("."); +var [major = 0, minor = 0] = versArr2.map((v) => parseInt(v, 10)); +var hasNative2 = major > 14 || major === 14 && minor >= 14; +var useNative2 = !hasNative2 || platform_default === "win32" ? () => false : (opt) => !opt?.signal && !opt?.filter; +var useNativeSync2 = !hasNative2 || platform_default === "win32" ? () => false : (opt) => !opt?.signal && !opt?.filter; -`;function TRe(A){if(!A.startsWith(wvA))return new Error(`cannot parse event type: ${A}`);let r=A.slice(wvA.length);switch(r){case"completion":case"error":case"done":return r;default:return new Error(`unexpected event type: ${r}`)}}function yvA(A){try{return JSON.parse(A)}catch{return new Error(`invalid JSON: ${A}`)}}function NRe(A,r){if(!r.startsWith(vvA))return new Error(`cannot parse event data: ${r}`);let t=r.slice(vvA.length);switch(A){case"completion":{let i=yvA(t);return Yo(i)?i:typeof i.completion===void 0?new Error("invalid completion event"):{type:A,completion:i.completion,stopReason:i.stopReason}}case"error":{let i=yvA(t);return Yo(i)?i:typeof i.error===void 0?new Error("invalid error event"):{type:A,error:i.error}}case"done":return{type:A}}}function PRe(A){let[r,t]=A.split(` -`),i=TRe(r);return Yo(i)?i:NRe(i,t)}function CvA(A){let r=0,t=A.indexOf(srA),i=[];for(;t>=0;){let o=PRe(A.slice(r,t));if(Yo(o))return o;i.push(o),r=t+srA.length,t=A.indexOf(srA,r)}return{events:i,remainingBuffer:A.slice(r)}}var HI=class extends bI{stream(r,t){let i=this.logger?.startCompletion(r),s=new AbortController().signal,E=(this.completionsEndpoint.startsWith("https://")?bvA.default.request:IvA.default.request)(this.completionsEndpoint,{method:"POST",headers:{"Content-Type":"application/json",...this.config.accessToken?{Authorization:`token ${this.config.accessToken}`}:null,...B_?{"User-Agent":B_}:null,...this.config.customHeaders},rejectUnauthorized:process.env.NODE_TLS_REJECT_UNAUTHORIZED!=="0"&&!this.config.debugEnable},p=>{if(p.statusCode===void 0)throw new Error("no status code present");if(p.statusCode>=400){let _=Buffer.of(),x="";p.on("data",O=>{if(!(O instanceof Buffer))throw new TypeError("expected chunk to be a Buffer");let{str:k,buf:P}=orA(Buffer.concat([_,O]));x+=k,_=P}),p.on("error",O=>{i?.onError(O.message),t.onError(O.message,p.statusCode)}),p.on("end",()=>{i?.onError(x),t.onError(x,p.statusCode)});return}let B=Buffer.of(),m="";p.on("data",_=>{if(!(_ instanceof Buffer))throw new TypeError("expected chunk to be a Buffer");let{str:x,buf:O}=orA(Buffer.concat([B,_]));m+=x,B=O;let k=CvA(m);if(Yo(k)){console.error(k);return}i?.onEvents(k.events),this.sendEvents(k.events,t),m=k.remainingBuffer}),p.on("error",_=>{i?.onError(_.message),t.onError(_.message)})});return E.on("error",p=>{let B=p.message;B.includes("ECONNREFUSED")&&(B="Could not connect to Cody. Please ensure that Cody app is running or that you are connected to the Sourcegraph server."),i?.onError(B),t.onError(B)}),E.write(JSON.stringify(r)),E.end(),s.addEventListener("abort",()=>{E.destroy()}),()=>E.destroy()}};var z_=Yn($T());var LCA={none:0,embeddings:1,keyword:2,blended:10,unified:11};var wb=class{constructor(r,t,i){this.client=r;this.legacyBackcompatLogEventMode=i;this.client.setAnonymousUserID(t)}exportMode;legacySiteIdentification;async setLegacyEventsStateOnce(){if(this.exportMode===void 0){let r=await this.client.getSiteVersion();if(Yo(r)){console.warn("telemetry: failed to evaluate server version:",r);return}r.length>12||r.includes("dev")?this.exportMode="5.2.2+":r==="5.2.0"||r==="5.2.1"?this.exportMode="5.2.0-5.2.1":r>"5.2.2"?this.exportMode="5.2.2+":this.exportMode="legacy",console.log("telemetry: evaluated export mode:",this.exportMode)}if(this.exportMode==="legacy"&&this.legacySiteIdentification===void 0){let r=await this.client.getSiteIdentification();if(Yo(r)){this.legacySiteIdentification=null;return}this.legacySiteIdentification=r}}async exportEvents(r){if(await this.setLegacyEventsStateOnce(),this.exportMode==="legacy"){let i=await Promise.all(r.map(o=>this.client.logEvent({client:o.source.client,event:`${o.feature}.${o.action}`,source:"IDEEXTENSION",url:o.marketingTracking?.url||"",publicArgument:()=>o.parameters.metadata?.reduce((s,g)=>({...s,[g.key]:g.value})),argument:JSON.stringify(o.parameters.privateMetadata),userCookieID:this.client.anonymousUserID||"",connectedSiteID:this.legacySiteIdentification?.siteid,hashedLicenseKey:this.legacySiteIdentification?.hashedLicenseKey},this.legacyBackcompatLogEventMode)));Yo(i)&&console.error("Error exporting telemetry events as legacy event logs:",i,{legacyBackcompatLogEventMode:this.legacyBackcompatLogEventMode});return}this.exportMode==="5.2.0-5.2.1"&&r.forEach(i=>{i.parameters.privateMetadata=void 0});let t=await this.client.recordTelemetryEvents(r);Yo(t)&&console.error("Error exporting telemetry events:",t)}};var jCA="http://localhost:49300",drr="/.api/mockEventRecording",AN=class{constructor(r){this.anonymousUserID=r}async exportEvents(r){let t=await this.postTestEventRecording(r);Yo(t)&&console.error("Error exporting telemetry events:",t)}postTestEventRecording(r){let t=new Headers({"Content-Type":"application/json","X-Sourcegraph-Actor-Anonymous-UID":this.anonymousUserID});return fetch(`${jCA}${drr}`,{method:"POST",headers:t,body:JSON.stringify(r)}).then(i=>{if(!i.ok)throw new Error(`HTTP status code: ${i.status}`);return i}).then(i=>i.json()).catch(i=>new Error(`error sending data to mock event-recording API: ${i} (${jCA})`))}};var eN=class extends z_.TelemetryRecorderProvider{constructor(r,t,i,o){let s=new nB(t);super({client:`${r.ide||"unknown"}${r.ideExtensionType?`.${r.ideExtensionType}`:""}`,clientVersion:r.version},new wb(s,i,o),[new tN(t)],{...z_.defaultEventRecordingOptions,bufferTimeMs:0})}},M4=class extends z_.TelemetryRecorderProvider{noOp=!0;constructor(r){super({client:""},new z_.NoOpTelemetryExporter,r||[])}},JWt=new M4().getRecorder(),rN=class extends z_.TelemetryRecorderProvider{constructor(r,t,i){super({client:`${r.ide}.${r.ideExtensionType}`,clientVersion:r.version},new AN(i),[new tN(t)])}},tN=class{constructor(r){this.config=r}processEvent(r){r.parameters.metadata||(r.parameters.metadata=[]),r.parameters.metadata.push({key:"contextSelection",value:LCA[this.config.useContext]},{key:"chatPredictions",value:this.config.experimentalChatPredictions?1:0},{key:"inline",value:this.config.inlineChat?1:0},{key:"nonStop",value:this.config.experimentalNonStop?1:0},{key:"guardrails",value:this.config.experimentalGuardrails?1:0},{key:"newChatUI",value:this.config.experimentalChatPanel?1:0})}};var WCA=Yn(i6());var vb=class{id="context-search";title="Codebase Context Search";async getInteraction(r,t){let i=this.id,o=r?.replace(/^\/s(earch)?(\s)?/i,"")||await t.editor.showInputBox("Enter your search query here...")||"";if(!o)return null;let s=io(o.replace("/search ","").replace("/s ",""),1e3),g=t.editor.getWorkspaceRootUri();return new cd({speaker:"human",text:"",displayText:o,metadata:{source:i}},{speaker:"assistant",text:"",displayText:await this.displaySearchResults(s,t.codebaseContext,g),metadata:{source:i}},new Promise(E=>E([])),[])}async displaySearchResults(r,t,i){let o=await t.getSearchResults(r,Rm),s=o.endpoint,g=`Here are the code snippets for: ${r} +// ../node_modules/.pnpm/rimraf@5.0.5/node_modules/rimraf/dist/esm/index.js +var wrap = (fn) => async (path30, opt) => { + const options2 = optArg(opt); + if (options2.glob) { + path30 = await glob(path30, options2.glob); + } + if (Array.isArray(path30)) { + return !!(await Promise.all(path30.map((p) => fn(path_arg_default(p, options2), options2)))).reduce((a, b) => a && b, true); + } else { + return !!await fn(path_arg_default(path30, options2), options2); + } +}; +var wrapSync = (fn) => (path30, opt) => { + const options2 = optArgSync(opt); + if (options2.glob) { + path30 = globSync(path30, options2.glob); + } + if (Array.isArray(path30)) { + return !!path30.map((p) => fn(path_arg_default(p, options2), options2)).reduce((a, b) => a && b, true); + } else { + return !!fn(path_arg_default(path30, options2), options2); + } +}; +var nativeSync = wrapSync(rimrafNativeSync); +var native = Object.assign(wrap(rimrafNative), { sync: nativeSync }); +var manualSync = wrapSync(rimrafManualSync); +var manual = Object.assign(wrap(rimrafManual), { sync: manualSync }); +var windowsSync = wrapSync(rimrafWindowsSync); +var windows2 = Object.assign(wrap(rimrafWindows), { sync: windowsSync }); +var posixSync = wrapSync(rimrafPosixSync); +var posix2 = Object.assign(wrap(rimrafPosix), { sync: posixSync }); +var moveRemoveSync = wrapSync(rimrafMoveRemoveSync); +var moveRemove = Object.assign(wrap(rimrafMoveRemove), { + sync: moveRemoveSync +}); +var rimrafSync = wrapSync((path30, opt) => useNativeSync2(opt) ? rimrafNativeSync(path30, opt) : rimrafManualSync(path30, opt)); +var rimraf_ = wrap((path30, opt) => useNative2(opt) ? rimrafNative(path30, opt) : rimrafManual(path30, opt)); +var rimraf = Object.assign(rimraf_, { + rimraf: rimraf_, + sync: rimrafSync, + rimrafSync, + manual, + manualSync, + native, + nativeSync, + posix: posix2, + posixSync, + windows: windows2, + windowsSync, + moveRemove, + moveRemoveSync +}); +rimraf.rimraf = rimraf; -`;for(let E of o.results){let p=this.sanitizeContent(E.content),B=cp(E.fileName),m=/^(md|txt)$/;if(B.match(m))continue;let _=new URL(`/search?q=context:global+file:${E.fileName}`,s).href;i&&(_=`vscode://file${WCA.Utils.joinPath(i,E.fileName).fsPath}`),g+=p&&p.length>5?`File Name: [_${E.fileName}_](${_}) -\`\`\`${B} -${p} -\`\`\` +// src/cli/evaluate-autocomplete/SnapshotWriter.ts +var SnapshotWriter = class { + constructor(options2) { + this.options = options2; + } + async writeHeader() { + if (this.options.snapshotDirectory) { + await rimraf(this.options.snapshotDirectory); + await fspromises6.mkdir(this.options.snapshotDirectory, { recursive: true }); + if (this.options.csvPath) { + this.csvWriter = (0, import_csv_writer.createObjectCsvWriter)({ + header: autocompleteItemHeaders, + path: this.options.csvPath + }); + } + } + } + async writeDocument(document2) { + if (!this.options.snapshotDirectory || document2.items.length === 0) { + return; + } + await document2.writeSnapshot(this.options.snapshotDirectory); + await this.csvWriter?.writeRecords(document2.items); + } +}; -`:""}return g}sanitizeContent(r){return r.replace(` -`,"").replace(" ","").replace("`","").trim()}};var iN=require("child_process"),JCA=require("fs"),qCA=Yn(require("path"));var nN=class{id="pr-description";title="Generate PR Description";async getInteraction(r,t){let i=this.id,o=t.editor.getWorkspaceRootPath();if(!o)return Promise.resolve(null);let s='--pretty="Commit author: %an%nCommit message: %s%nChange description:%b%n"',g="Generating the PR description",B=(0,iN.spawnSync)("git",["ls-files",...["pull_request_template.md","PULL_REQUEST_TEMPLATE.md","docs/PULL_REQUEST_TEMPLATE.md","docs/pull_request_template.md",".github/pull_request_template.md",".github/PULL_REQUEST_TEMPLATE.md"]],{cwd:o}).stdout.toString().trim(),m="";if(B){let F=qCA.default.join(o.trim(),B);m=(0,JCA.readFileSync)(F).toString()}let x=(0,iN.spawnSync)("git",["config","user.email"],{cwd:o}).stdout.toString().trim(),k=(0,iN.spawnSync)("git",["log",`--author=<${x}>`,"origin/HEAD..HEAD",s],{cwd:o}).stdout.toString().trim();if(!k){let F="No commits history found in the current branch.";return Yc({text:g,displayText:g,source:i,assistantPrefix:F,assistantText:F})}let P=io(k,2e3),H="";P.lengthy.label));if(!m)return null;let _=Object.fromEntries(s.map(({label:y,args:S})=>[y,{args:S}]))[m],{args:x}=_,k=(0,JiA.spawnSync)("git",["--no-pager",...x],{cwd:o}).stdout.toString().trim(),P=`Generate release notes for the changes made since ${m}`;if(!k){let y="No recent changes found to generate release notes.";return Yc({text:P,displayText:P,source:i,assistantPrefix:y,assistantText:y})}let H=io(k,2e3);console.log(H);let T="";H.length 0 ? Math.floor : Math.ceil; + return { + days: roundTowardsZero(milliseconds / 864e5), + hours: roundTowardsZero(milliseconds / 36e5) % 24, + minutes: roundTowardsZero(milliseconds / 6e4) % 60, + seconds: roundTowardsZero(milliseconds / 1e3) % 60, + milliseconds: roundTowardsZero(milliseconds) % 1e3, + microseconds: roundTowardsZero(milliseconds * 1e3) % 1e3, + nanoseconds: roundTowardsZero(milliseconds * 1e6) % 1e3 + }; +} -Use proper heading format for the release notes. +// ../node_modules/.pnpm/pretty-ms@8.0.0/node_modules/pretty-ms/index.js +var pluralize3 = (word, count) => count === 1 ? word : `${word}s`; +var SECOND_ROUNDING_EPSILON = 1e-7; +function prettyMilliseconds(milliseconds, options2 = {}) { + if (!Number.isFinite(milliseconds)) { + throw new TypeError("Expected a finite number"); + } + if (options2.colonNotation) { + options2.compact = false; + options2.formatSubMilliseconds = false; + options2.separateMilliseconds = false; + options2.verbose = false; + } + if (options2.compact) { + options2.secondsDecimalDigits = 0; + options2.millisecondsDecimalDigits = 0; + } + const result = []; + const floorDecimals = (value, decimalDigits) => { + const flooredInterimValue = Math.floor(value * 10 ** decimalDigits + SECOND_ROUNDING_EPSILON); + const flooredValue = Math.round(flooredInterimValue) / 10 ** decimalDigits; + return flooredValue.toFixed(decimalDigits); + }; + const add = (value, long, short, valueString) => { + if ((result.length === 0 || !options2.colonNotation) && value === 0 && !(options2.colonNotation && short === "m")) { + return; + } + valueString = (valueString || value || "0").toString(); + let prefix; + let suffix; + if (options2.colonNotation) { + prefix = result.length > 0 ? ":" : ""; + suffix = ""; + const wholeDigits = valueString.includes(".") ? valueString.split(".")[0].length : valueString.length; + const minLength = result.length > 0 ? 2 : 1; + valueString = "0".repeat(Math.max(0, minLength - wholeDigits)) + valueString; + } else { + prefix = ""; + suffix = options2.verbose ? " " + pluralize3(long, value) : short; + } + result.push(prefix + valueString + suffix); + }; + const parsed = parseMilliseconds(milliseconds); + add(Math.trunc(parsed.days / 365), "year", "y"); + add(parsed.days % 365, "day", "d"); + add(parsed.hours, "hour", "h"); + add(parsed.minutes, "minute", "m"); + if (options2.separateMilliseconds || options2.formatSubMilliseconds || !options2.colonNotation && milliseconds < 1e3) { + add(parsed.seconds, "second", "s"); + if (options2.formatSubMilliseconds) { + add(parsed.milliseconds, "millisecond", "ms"); + add(parsed.microseconds, "microsecond", "\xB5s"); + add(parsed.nanoseconds, "nanosecond", "ns"); + } else { + const millisecondsAndBelow = parsed.milliseconds + parsed.microseconds / 1e3 + parsed.nanoseconds / 1e6; + const millisecondsDecimalDigits = typeof options2.millisecondsDecimalDigits === "number" ? options2.millisecondsDecimalDigits : 0; + const roundedMiliseconds = millisecondsAndBelow >= 1 ? Math.round(millisecondsAndBelow) : Math.ceil(millisecondsAndBelow); + const millisecondsString = millisecondsDecimalDigits ? millisecondsAndBelow.toFixed(millisecondsDecimalDigits) : roundedMiliseconds; + add( + Number.parseFloat(millisecondsString), + "millisecond", + "ms", + millisecondsString + ); + } + } else { + const seconds = milliseconds / 1e3 % 60; + const secondsDecimalDigits = typeof options2.secondsDecimalDigits === "number" ? options2.secondsDecimalDigits : 1; + const secondsFixed = floorDecimals(seconds, secondsDecimalDigits); + const secondsString = options2.keepDecimalsOnWholeSeconds ? secondsFixed : secondsFixed.replace(/\.0+$/, ""); + add(Number.parseFloat(secondsString), "second", "s", secondsString); + } + if (result.length === 0) { + return "0" + (options2.verbose ? " milliseconds" : "ms"); + } + if (options2.compact) { + return result[0]; + } + if (typeof options2.unitCount === "number") { + const separator = options2.colonNotation ? "" : " "; + return result.slice(0, Math.max(options2.unitCount, 1)).join(separator); + } + return options2.colonNotation ? result.join("") : result.join(" "); +} -${B}.Do not include other changes and dependency updates.`,F=`Here is the generated release notes for ${m} -${T}`;return Yc({text:v,displayText:P,source:i,assistantPrefix:F,assistantText:F})}};var VCA=require("child_process"),zCA=Yn(require("path"));var oN=class{id="git-history";title="Summarize Recent Code Changes";async getInteraction(r,t){let i=this.id,o=t.editor.getWorkspaceRootPath();if(!o)return null;let s='--pretty="Commit author: %an%nCommit message: %s%nChange description:%b%n"',g=[{label:"Last 5 items",args:["log","-n5",s],rawDisplayText:"What changed in my codebase in the last 5 commits?"},{label:"Last day",args:["log","--since","1 day",s],rawDisplayText:"What has changed in my codebase in the last day?"},{label:"Last week",args:["log","--since='1 week'",s],rawDisplayText:"What changed in my codebase in the last week?"}],E=t.editor.getActiveTextEditorSelectionOrEntireFile();if(E){let v=zCA.default.basename(E.fileName);g.push({label:`Last 5 items for ${v}`,args:["log","-n5",s,"--",E.fileName],rawDisplayText:`What changed in ${v} in the last 5 commits`})}let p=await t.editor.showQuickPick(g.map(v=>v.label));if(!p)return null;let B=Object.fromEntries(g.map(({label:v,args:F,rawDisplayText:y})=>[v,{args:F,rawDisplayText:y}]))[p],{args:m,rawDisplayText:_}=B,O=(0,VCA.spawnSync)("git",["--no-pager",...m],{cwd:o}).stdout.toString().trim();if(!O){let v="No recent changes found";return new cd({speaker:"human",displayText:_},{speaker:"assistant",prefix:v,text:v},Promise.resolve([]),[])}let k=io(O,2e3),P="";k.length{let t=ni.activeTextEditor;return t?.document.uri.scheme&&prr.has(t.document.uri.scheme)&&(qiA=t),qiA})()}var sN=class{id="local-indexed-keyword-search";title="Local indexed keyword search";async getInteraction(r,t){let{symf:i}=t.codebaseContext;if(!i)return new cd({speaker:"human",text:"",displayText:r},{speaker:"assistant",text:"",displayText:"symf not found"},Promise.resolve([]),[]);let o=r||await t.editor.showInputBox("Enter your search query here...")||"";if(!o)return null;let s=o.replace(/^\s*\/symf(?:\s+|$)/,"").trim();if(s.length===0)return new cd({speaker:"human",text:"",displayText:r},{speaker:"assistant",text:"",displayText:'Enter a query after "/symf"'},new Promise(E=>E([])),[]);let g=io(s,1e3);return new cd({speaker:"human",text:"",displayText:o},{speaker:"assistant",text:"",displayText:await this.displaySearchResults(i,g)},new Promise(E=>E([])),[])}async displaySearchResults(r,t){let i=Qrr();if(!i)return"Open a workspace folder to determine the search scope";let o=await r.getResults(t,[i]);if(o.length===0)return"Open a workspace folder to determine the search scope";let s=Brr(await o[0]);return await hrr(s)}};function Err(A,r){let t=A.split(` -`);return t.length<=r?A:t.slice(0,r).join(` -`)}function frr(A,r){let t=A.split(ViA.sep);return t.length<=r?A:t.slice(t.length-r).join(ViA.sep)}function Brr(A){let r=[];for(let t of A){let i=r.find(o=>o.file===t.file);i?i.results.push(t):r.push({file:t.file,results:[t]})}return r}async function hrr(A){let r=A.map(async({file:i,results:o})=>{let s=await ri.openTextDocument(i),g=cp(i),E=Zn.file(i),p=Zn.parse(`vscode://file${E.path}`).toString(),B=[];for(let _ of o){let x=s.getText(s.validateRange(new sa(_.range.startPoint.row,_.range.startPoint.col,_.range.endPoint.row,_.range.endPoint.col)));B.push(`
    +// src/cli/evaluate-autocomplete/testTypecheck.ts +async function runCommand(command, cwd) { + return new Promise((resolve8) => { + if (!command) { + resolve8(true); + return; + } + console.log(`> ${command}`); + const cmd = (0, import_child_process9.exec)(command, { cwd }); + cmd.stdout?.pipe(process.stderr); + cmd.stderr?.pipe(process.stderr); + cmd.on("error", () => resolve8(false)); + cmd.on("exit", (code) => resolve8(code === 0)); + }); +} +async function runVoidCommand(command, cwd) { + const ok = await runCommand(command, cwd); + if (!ok) { + throw new Error(`Command failed: ${command}`); + } +} +async function testCleanup(options2) { + if (options2.worktree) { + await runVoidCommand(`git worktree remove ${options2.worktree}`, options2.workspace); + } +} +async function testInstall(options2) { + if (!options2.runTestCommand) { + return; + } + if (options2.worktree) { + throw new Error(`options.worktree=${options2.worktree} is already defined, expected it to be undefined`); + } + options2.worktree = await fspromises7.mkdtemp(import_path30.default.join(os7.tmpdir(), "evaluate-autocomplete-")); + await runVoidCommand("git diff --exit-code", options2.workspace); + await runVoidCommand(`git worktree add ${options2.worktree}`, options2.workspace); + await runVoidCommand(options2.installCommand, options2.worktree); + await runVoidCommand(options2.testCommand, options2.worktree); +} +async function testTypecheck(parameters, item) { + const { options: options2, document: document2 } = parameters; + const { worktree } = options2; + if (!worktree) { + return void 0; + } + const absolutePath = import_path30.default.join(worktree, document2.params.filepath); + const { testCommand, runTestCommand } = options2; + if (!testCommand || !runTestCommand) { + return void 0; + } + const start4 = new Position(item.range.start.line, item.range.start.character); + const end = new Position(item.range.end.line, item.range.end.character); + const modifiedDocument = new AgentTextDocument( + TextDocumentWithUri.from(document2.uri, { content: parameters.modifiedContent }) + ); + const newText = [ + modifiedDocument.getText(new Range(new Position(0, 0), start4)), + item.insertText, + modifiedDocument.getText(new Range(end, new Position(document2.textDocument.lineCount, 0))) + ].join(""); + try { + await runVoidCommand("git diff --exit-code", worktree); + await fspromises7.writeFile(absolutePath, newText); + const timer = new Timer(); + const result = await runCommand(testCommand, worktree); + console.error(`Completion '${item.insertText}': ${result ? "typecheck_ok" : "typecheck_error"} (${timer})`); + return result; + } finally { + await fspromises7.writeFile(absolutePath, document2.text); + } +} -\`\`\`${g} -${Err(x,10)} -\`\`\` +// src/cli/evaluate-autocomplete/triggerAutocomplete.ts +var import_fast_myers_diff = __toESM(require_bin()); +async function triggerAutocomplete(parameters) { + const { range, client, document: document2, modifiedContent, removedContent, position, emptyMatchContent } = parameters; + client.notify("textDocument/didChange", { uri: document2.uri.toString(), content: modifiedContent }); + let result; + try { + result = await client.request("autocomplete/execute", { + uri: document2.uri.toString(), + position, + // We don't use the "automatic" trigger to avoid certain code paths like + // synthetic latency when acceptance rate is low. + triggerKind: "Invoke" + }); + } catch (error) { + const resultError = error instanceof Error ? error.message : String(error); + document2.pushItem({ + range, + resultError + }); + return; + } + const didNotSendNetworkRequest = result.items.length === 0 && result.completionEvent?.networkRequestStartedAt === null; + if (didNotSendNetworkRequest) { + return; + } + const textDocument = new AgentTextDocument(TextDocumentWithUri.from(document2.uri, { content: modifiedContent })); + for (const item of result.items) { + const original = textDocument.getText( + new Range( + item.range.start.line, + item.range.start.character, + item.range.end.line, + item.range.end.character + ) + ); + const resultTypechecks = await testTypecheck(parameters, item); + const patches = []; + let hasNonInsertPatch = false; + for (const [sx, ex, text] of (0, import_fast_myers_diff.calcPatch)(original, item.insertText)) { + if (sx !== ex) { + hasNonInsertPatch = true; + continue; + } + patches.push(text); + } + if (hasNonInsertPatch) { + document2.pushItem({ + resultText: item.insertText, + range, + resultTypechecks, + resultNonInsertPatch: true, + event: result.completionEvent + }); + } else if (patches.length > 0) { + const text = patches.join(""); + if (text === removedContent) { + document2.pushItem({ + range, + resultExact: true, + event: result.completionEvent, + resultTypechecks + }); + } else { + document2.pushItem({ + range, + resultText: text, + event: result.completionEvent, + resultTypechecks + }); + } + } else { + document2.pushItem({ + range, + resultEmpty: true, + event: result.completionEvent + }); + } + } + if (result.items.length === 0) { + const expectedEmptyMatch = removedContent === emptyMatchContent; + document2.pushItem({ + range, + resultExact: expectedEmptyMatch, + resultEmpty: !expectedEmptyMatch + }); + } +} -`)}return`
    ${`${frr(i,3)}`}${B.join(` -`)}
    `});return(await Promise.all(r)).join(` -`)}function Qrr(){let A=ku()?.document?.uri;if(A){let r=ri.getWorkspaceFolder(A);if(r)return r.uri.fsPath}return ri.workspaceFolders?.[0]?.uri.fsPath??null}var ZCA=Yn(JB());var cN="0.16.0";var XCA={name:"cody-ai",private:!0,displayName:"Cody AI",version:cN,publisher:"sourcegraph",license:"Apache-2.0",icon:"resources/cody.png",description:"Code AI with codebase context",scripts:{postinstall:"pnpm download-wasm",dev:"pnpm run -s dev:desktop","dev:insiders":"pnpm run -s dev:desktop:insiders","start:dev:desktop":"NODE_ENV=development code --extensionDevelopmentPath=$PWD --disable-extension=sourcegraph.cody-ai --disable-extension=github.copilot --disable-extension=github.copilot-nightly --inspect-extensions=9333 --new-window . --goto ./src/logged-rerank.ts:16:5","dev:desktop":"pnpm run -s build:dev:desktop && pnpm run start:dev:desktop","dev:desktop:insiders":"pnpm run -s build:dev:desktop && NODE_ENV=development code-insiders --extensionDevelopmentPath=$PWD --disable-extension=sourcegraph.cody-ai --disable-extension=github.copilot --disable-extension=github.copilot-nightly --inspect-extensions=9333 --new-window . --goto ./src/logged-rerank.ts:16:5","dev:web":"pnpm run -s build:dev:web && pnpm run -s _dev:vscode-test-web --browserType none","watch:dev:web":'concurrently "pnpm run -s watch:build:dev:web" "pnpm run -s _dev:vscode-test-web --browserType none"',"_dev:vscode-test-web":"vscode-test-web --extensionDevelopmentPath=. ${WORKSPACE-test/fixtures/workspace}",build:"tsc --build && pnpm run -s _build:esbuild:desktop && pnpm run -s _build:esbuild:web && pnpm run -s _build:webviews --mode production","_build:desktop":"pnpm run -s _build:esbuild:desktop && pnpm run -s _build:webviews --mode production","_build:web":"pnpm run -s _build:esbuild:web && pnpm run -s _build:webviews --mode production","build:dev:desktop":'concurrently "pnpm run -s _build:esbuild:desktop" "pnpm run -s _build:webviews --mode development"',"build:dev:web":'concurrently "pnpm run -s _build:esbuild:web" "pnpm run -s _build:webviews --mode development"',"watch:build:dev:web":'concurrently "pnpm run -s _build:esbuild:web --watch" "pnpm run -s _build:webviews --mode development --watch"',"watch:build:dev:desktop":'concurrently "pnpm run -s _build:esbuild:desktop --watch" "pnpm run -s _build:webviews --mode development --watch"',"_build:esbuild:desktop":"pnpm download-wasm && esbuild ./src/extension.node.ts --bundle --outfile=dist/extension.node.js --external:vscode --format=cjs --platform=node --sourcemap","_build:esbuild:web":`esbuild ./src/extension.web.ts --platform=browser --bundle --outfile=dist/extension.web.js --alias:path=path-browserify --alias:os=os-browserify --external:vscode --define:process='{"env":{}}' --define:window=self --format=cjs --sourcemap`,"_build:webviews":"vite -c webviews/vite.config.ts build",lint:"pnpm run lint:js","lint:js":"NODE_OPTIONS=--max-old-space-size=4096 eslint --quiet --cache '**/*.[tj]s?(x)'",release:"ts-node ./scripts/release.ts","download-wasm":"ts-node-transpile-only ./scripts/download-wasm-modules.ts","release:dry-run":"pnpm run download-wasm && CODY_RELEASE_DRY_RUN=1 ts-node ./scripts/release.ts",storybook:"storybook dev -p 6007 --no-open --no-version-updates --no-release-notes","test:e2e":"tsc --build && node dist/tsc/test/e2e/install-deps.js && pnpm run -s build:dev:desktop && playwright test","test:integration":"tsc --build ./test/integration && pnpm run -s build:dev:desktop && node --inspect -r ts-node/register dist/tsc/test/integration/main.js","test:unit":"vitest","vscode:prepublish":"pnpm -s run build","test:unit:tree-sitter-queries":"vitest ./src/tree-sitter/query-tests/*.test.ts"},categories:["Programming Languages","Machine Learning","Snippets","Education"],keywords:["ai","openai","anthropic","assistant","chatbot","chat","refactor","documentation","test","sourcegraph","codey","llm","codegen","autocomplete","bot","model","typescript","javascript","python","golang","go","html","css","java","php","swift","kotlin"],repository:{type:"git",url:"https://github.com/sourcegraph/cody",directory:"vscode"},bugs:{url:"https://github.com/sourcegraph/cody/issues"},homepage:"https://docs.sourcegraph.com/cody",badges:[{url:"https://img.shields.io/discord/969688426372825169?color=5765F2",href:"https://srcgr.ph/discord",description:"Discord"}],engines:{vscode:"^1.79.0"},main:"./dist/extension.node.js",browser:"./dist/extension.web.js",activationEvents:["onStartupFinished"],contributes:{walkthroughs:[{id:"welcome",title:"Getting Started with Cody",description:"Discover how Cody can help you write and understand code faster.",steps:[{id:"chat",title:"Ask Cody a Question",description:`Cody writes code and answers questions using your own code graph as context. -[Open Chat](command:cody.walkthrough.showChat)`,media:{markdown:"walkthroughs/chat.md"}},{id:"commands",title:"Cody Commands",description:`You can use Cody commands to streamline your development process (e.g. generate unit tests, documentation, and more) with just a few clicks. -[Open Commands Menu](command:cody.action.commands.menu)`,media:{markdown:"walkthroughs/commands.md"}},{id:"explain",title:"Explain Code",description:`Ask Cody to explain some code. Select some lines and use the "Explain Code" command. -[Open Commands Menu](command:cody.action.commands.menu)`,media:{markdown:"walkthroughs/explain.md"}},{id:"inline-assist",title:"Inline Chat",description:`Chat with Cody without leaving your file. Click the + button next to any line number in a file to bring up Inline Chat. -[Enable in Settings](command:cody.walkthrough.enableInlineChat)`,media:{markdown:"walkthroughs/inline-assist.md"}},{id:"autocomplete",title:"Code Autocomplete",description:"Let Cody automatically write code for you. Start writing a comment or a line of code and Cody will suggest the next few lines.",media:{markdown:"walkthroughs/autocomplete.md"}},{id:"learn-more",title:"Learn More & Feedback",description:`\u{1F4D6} Dive deeper into Cody by reading our [full documentation](https://docs.sourcegraph.com/cody). -\u{1F3A8} Discover more features by searching for "Cody" in the [Command Palette](command:workbench.action.showCommands). -\u{1F5D2}\uFE0F Find out how Cody is improving by taking a look at the [Changelog](https://sourcegraph.com/github.com/sourcegraph/cody/-/blob/vscode/CHANGELOG.md). -\u{1F4AC} Bugs, ideas or feedback? Post a message on our [GitHub Discussions](https://github.com/sourcegraph/cody/discussions/new?category=product-feedback&labels=vscode).`,media:{markdown:"walkthroughs/learn-more.md"}}]}],colors:[{id:"cody.fixup.conflictBackground",description:"The background of text Cody will edit where there is a specific conflict with your changes.",defaults:{light:"mergeEditor.conflictingLines.background",dark:"mergeEditor.conflictingLines.background"}},{id:"cody.fixup.conflictBorder",description:"The border of text Cody will edit, if there is a conflict with your changes.",defaults:{light:"mergeEditor.conflict.unhandledFocused.border",dark:"mergeEditor.conflict.unhandledFocused.border"}},{id:"cody.fixup.conflictedBackground",description:"The background of text Cody will edit, if there is a conflict with your changes.",defaults:{light:"#ffffff00",dark:"#00000000"}},{id:"cody.fixup.conflictedBorder",description:"The border of text Cody will edit, if there is a conflict with your changes.",defaults:{light:"mergeEditor.conflict.unhandledUnfocused.border",dark:"mergeEditor.conflict.unhandledUnfocused.border"}},{id:"cody.fixup.incomingBackground",description:"The background of text Cody will edit.",defaults:{light:"merge.incomingContentBackground",dark:"merge.incomingContentBackground"}},{id:"cody.fixup.incomingBorder",description:"The border around text Cody will edit.",defaults:{light:"#436EB1",dark:"#436EB1"}}],viewsContainers:{activitybar:[{id:"cody",title:"Cody",icon:"resources/cody.svg"}]},views:{cody:[{type:"webview",id:"cody.chat",name:"Chat",when:"(!cody.activated && config.cody.experimental.chatPanel) || !config.cody.experimental.chatPanel"},{type:"webview",id:"cody.search",name:"Search (experimental)",visibility:"visible",when:"cody.activated && config.cody.experimental.newSearch"},{id:"cody.fixup.tree.view",name:"Fixups",when:"cody.nonstop.fixups.enabled && cody.activated && !config.cody.experimental.chatPanel",icon:"cody.svg",contextualTitle:"Fixups"},{id:"cody.commands.tree.view",name:"Commands",when:"cody.activated && config.cody.experimental.chatPanel"},{id:"cody.chat.tree.view",name:"Chats",when:"cody.activated && config.cody.experimental.chatPanel"},{id:"cody.support.tree.view",name:"Settings & Support",when:"cody.activated && config.cody.experimental.chatPanel"}]},viewsWelcome:[{view:"cody.fixup.tree.view",contents:"No pending Cody fixups",when:"cody.nonstop.fixups.enabled && cody.activated"},{view:"cody.chat.tree.view",contents:`Chat alongside your code, attach files, add additional context, and try out different LLM providers. -[New Chat](command:cody.chat.panel.new) -To learn more about chat, [read the docs](https://docs.sourcegraph.com/).`,when:"cody.activated"}],commands:[{command:"cody.welcome",title:"Help & Getting Started",category:"Cody",group:"Cody",icon:"$(book)"},{command:"cody.feedback",title:"Feedback",category:"Cody",group:"Cody",icon:"$(feedback)"},{command:"cody.command.edit-code",category:"Ask Cody",title:"Edit Code",when:"cody.activated && editorTextFocus",icon:"$(wand)"},{command:"cody.command.explain-code",category:"Ask Cody",title:"Explain Code",icon:"$(output)",when:"cody.activated && editorFocus"},{command:"cody.command.generate-tests",category:"Ask Cody",title:"Generate Unit Tests",icon:"$(package)",when:"cody.activated && editorTextFocus"},{command:"cody.command.document-code",category:"Ask Cody",title:"Document Code",icon:"$(book)",when:"cody.activated && editorTextFocus"},{command:"cody.command.smell-code",category:"Ask Cody",title:"Find Code Smells",icon:"$(symbol-keyword)",when:"cody.activated && editorFocus"},{command:"cody.action.commands.custom.menu",category:"Ask Cody",title:"Custom Commands",icon:"$(tools)",when:"cody.activated && workspaceFolderCount > 0"},{command:"cody.command.context-search",category:"Ask Cody",title:"Codebase Context Search",when:"cody.activated && workspaceFolderCount > 0"},{command:"cody.auth.signout",category:"Cody",title:"Sign Out",icon:"$(sign-out)"},{command:"cody.auth.signin",category:"Cody",title:"Switch Account\u2026"},{command:"cody.settings.extension",category:"Cody",title:"Extension Settings",group:"Cody",icon:"$(gear)"},{command:"cody.focus",category:"Cody",title:"Sign In"},{command:"cody.interactive.clear",category:"Cody",title:"Start a New Chat Session",group:"Cody",icon:"$(add)",when:"cody.activated"},{command:"cody.history",category:"Cody",title:"Chat History",group:"Cody",icon:"$(history)"},{command:"cody.status-bar.interacted",category:"Cody",title:"Cody Settings",group:"Cody",icon:"$(settings-gear)",when:"cody.activated"},{command:"cody.comment.add",title:"Ask Cody",category:"Cody Inline Chat",when:"cody.activated && config.cody.inlineChat.enabled",enablement:"!commentIsEmpty && !cody.inline.reply.pending"},{command:"cody.comment.stop",title:"Stop generating",category:"Cody Inline Chat",when:"cody.activated && config.cody.inlineChat.enabled",enablement:"!commentThreadIsEmpty",icon:"$(debug-stop)"},{command:"cody.comment.delete",title:"Remove Inline Chat",category:"Cody Inline Chat",when:"cody.activated && config.cody.inlineChat.enabled",enablement:"!commentThreadIsEmpty",icon:"$(trash)"},{command:"cody.comment.open-in-sidebar",title:"Open this chat in the sidebar",category:"Cody Inline Chat",when:"cody.activated && config.cody.inlineChat.enabled",enablement:"!commentThreadIsEmpty",icon:"$(comment-discussion)"},{command:"cody.comment.collapse-all",title:"Collapse All Inline Chats",category:"Cody Inline Chat",when:"cody.activated && config.cody.inlineChat.enabled",enablement:"!commentThreadIsEmpty",icon:"$(collapse-all)"},{command:"cody.inline.new",title:"Ask Cody Inline",category:"Cody Inline Chat",when:"cody.activated && config.cody.inlineChat.enabled",enablement:"editorFocus && config.cody.inlineChat.enabled"},{command:"cody.guardrails.debug",category:"Cody",title:"Guardrails Debug Attribution",enablement:"config.cody.experimental.guardrails && editorHasSelection"},{command:"cody.command.inline-touch",category:"Cody",title:"Touch"},{command:"cody.fixup.open",category:"Cody",title:"Go to Fixup",icon:"$(file-code)"},{command:"cody.fixup.accept",category:"Cody",title:"Accept fixup",when:"cody.nonstop.fixups.enabled",enablement:"!cody.fixup.view.isEmpty",icon:"$(check)"},{command:"cody.fixup.accept-all",category:"Cody",title:"Accept all fixups",when:"cody.nonstop.fixups.enabled",enablement:"!cody.fixup.view.isEmpty",icon:"$(check-all)"},{command:"cody.fixup.accept-by-file",category:"Cody",title:"Accept fixups in the selected directory",when:"cody.nonstop.fixups.enabled",enablement:"!cody.fixup.view.isEmpty",icon:"$(check-all)"},{command:"cody.fixup.diff",category:"Cody",title:"Show diff for fixup",when:"cody.nonstop.fixups.enabled",enablement:"!cody.fixup.view.isEmpty",icon:"$(diff)"},{command:"cody.action.commands.menu",category:"Cody",title:"Commands",when:"cody.activated",icon:"$(cody-logo)"},{command:"cody.autocomplete.openTraceView",category:"Cody",title:"Open Autocomplete Trace View",when:"cody.activated && config.cody.autocomplete && config.cody.debug.enable && editorHasFocus && !editorReadonly"},{command:"cody.chat.panel.new",category:"Cody",title:"Start a New Chat Panel",when:"cody.activated && config.cody.experimental.chatPanel",group:"Cody",icon:"$(new-comment-icon)"},{command:"cody.chat.tree.view.focus",category:"Cody",title:"Open Cody Sidebar",group:"Cody",icon:"$(layout-sidebar-left)",when:"config.cody.experimental.chatPanel"},{command:"cody.chat.history.clear",category:"Cody",title:"Delete All Chats",group:"Cody",icon:"$(trash)",when:"cody.activated && cody.hasChatHistory"},{command:"cody.chat.history.delete",category:"Cody",title:"Delete Chat",group:"Cody",icon:"$(trash)",when:"cody.activated && cody.hasChatHistory"},{command:"cody.chat.history.export",category:"Cody",title:"Export Chats as JSON",group:"Cody",icon:"$(arrow-circle-down)",when:"cody.activated && cody.hasChatHistory"},{command:"cody.search.index-update",category:"Cody",group:"Cody",title:"Update search index for current workspace folder",icon:"$(refresh)",when:"cody.activated && config.cody.experimental.newSearch"},{command:"cody.search.index-update-all",category:"Cody",group:"Cody",title:"Update search indices for all workspace folders",icon:"$(sync)",when:"cody.activated && config.cody.experimental.newSearch"},{command:"cody.chat.restart",category:"Cody",title:"Restart Chat Session",group:"Cody",icon:"$(refresh)",when:"cody.activated && cody.hasChatHistory && config.cody.experimental.chatPanel"}],keybindings:[{command:"cody.chat.focus",key:"alt+/",when:"!config.cody.experimental.chatPanel"},{command:"cody.chat.tree.view.focus",key:"alt+f1",when:"cody.activated && config.cody.experimental.chatPanel"},{command:"cody.chat.panel.new",key:"alt+/",when:"cody.activated && config.cody.experimental.chatPanel"},{command:"cody.command.edit-code",key:"ctrl+shift+v",mac:"shift+cmd+v",when:"cody.activated && !editorReadonly"},{command:"cody.command.inline-touch",key:"ctrl+alt+/",mac:"cmd+alt+/",when:"cody.activated && editorTextFocus && editorHasSelection && config.cody.inlineChat.enabled"},{command:"cody.inline.new",key:"ctrl+shift+c",mac:"cmd+shift+c",when:"cody.activated && editorFocus && config.cody.inlineChat.enabled",enablement:"config.cody.inlineChat.enabled"},{command:"cody.action.commands.menu",key:"alt+c",mac:"alt+c",when:"cody.activated"},{command:"-github.copilot.generate",key:"ctrl+enter"},{command:"cody.autocomplete.manual-trigger",key:"alt+\\",when:"editorTextFocus && !editorHasSelection && config.cody.autocomplete.enabled && !inlineSuggestionsVisible"}],submenus:[{label:"Cody",id:"cody.submenu"}],menus:{commandPalette:[{command:"cody.command.edit-code",when:"cody.activated && editorTextFocus"},{command:"cody.command.explain-code",when:"false"},{command:"cody.command.context-search",when:"false"},{command:"cody.command.inline-touch",when:"false"},{command:"cody.command.smell-code",when:"false"},{command:"cody.command.generate-tests",when:"false"},{command:"cody.command.document-code",when:"false"},{command:"cody.action.commands.custom.menu",when:"cody.activated"},{command:"cody.focus",title:"Cody: Sign In",when:"!cody.activated"},{command:"cody.comment.add",when:"false"},{command:"cody.comment.delete",when:"false"},{command:"cody.comment.stop",when:"false"},{command:"cody.comment.open-in-sidebar",when:"false"},{command:"cody.comment.collapse-all",when:"false"},{command:"cody.fixup.accept",when:"false"},{command:"cody.fixup.accept-all",when:"false"},{command:"cody.fixup.accept-by-file",when:"false"},{command:"cody.fixup.diff",when:"false"},{command:"cody.fixup.open",when:"false"},{command:"cody.guardrails.debug",when:"config.cody.experimental.guardrails && editorHasSelection"}],"editor/context":[{submenu:"cody.submenu",group:"0_cody"}],"cody.submenu":[{command:"cody.command.explain-code",when:"cody.activated",group:"command"},{command:"cody.command.edit-code",when:"cody.activated",group:"ask"},{command:"cody.command.generate-tests",when:"cody.activated",group:"command"},{command:"cody.command.document-code",when:"cody.activated",group:"command"},{command:"cody.command.smell-code",when:"cody.activated",group:"command"},{command:"cody.action.commands.custom.menu",when:"cody.activated",group:"command"},{command:"cody.focus",when:"!cody.activated",group:"other"},{command:"cody.guardrails.debug",when:"cody.activated && config.cody.experimental.guardrails && editorHasSelection",group:"other"},{command:"cody.inline.new",when:"cody.activated",group:"ask"}],"view/title":[{command:"cody.interactive.clear",when:"view == cody.chat && cody.activated",group:"navigation@1"},{command:"cody.history",when:"view == cody.chat && cody.activated",group:"navigation@2"},{command:"cody.status-bar.interacted",when:"view == cody.chat && cody.activated",group:"navigation@4"},{command:"cody.feedback",when:"view == cody.chat",group:"7_cody@0"},{command:"cody.welcome",when:"view == cody.chat",group:"7_cody@0"},{command:"cody.auth.signout",when:"view == cody.chat && cody.activated",group:"9_cody@2"},{command:"cody.auth.signin",when:"view == cody.chat && cody.activated",group:"9_cody@0"},{command:"cody.fixup.accept-all",when:"cody.nonstop.fixups.enabled && view == cody.fixup.tree.view && cody.activated",group:"navigation"},{command:"cody.chat.panel.new",when:"view == cody.chat.tree.view && cody.activated",group:"navigation@1"},{command:"cody.chat.history.clear",when:"view == cody.chat.tree.view && cody.activated && cody.hasChatHistory",enablement:"cody.hasChatHistory",group:"navigation@2"},{command:"cody.chat.history.export",when:"view == cody.chat.tree.view && cody.activated && cody.hasChatHistory",enablement:"cody.hasChatHistory",group:"navigation@3"},{command:"cody.feedback",when:"view == cody.support.tree.view",group:"7_cody@0"},{command:"cody.welcome",when:"view == cody.support.tree.view",group:"7_cody@0"},{command:"cody.auth.signin",when:"view == cody.support.tree.view && cody.activated",group:"9_cody@0"},{command:"cody.search.index-update",when:"view == cody.search && cody.activated",group:"navigation@1"},{command:"cody.search.index-update-all",when:"view == cody.search && cody.activated",group:"navigation@2"}],"editor/title":[{command:"cody.action.commands.menu",when:"cody.activated && config.cody.editorTitleCommandIcon",group:"navigation",visibility:"visible"},{command:"cody.chat.panel.new",when:"activeWebviewPanelId == cody.chatPanel && cody.activated",group:"navigation",visibility:"visible"},{command:"cody.chat.restart",when:"activeWebviewPanelId == cody.chatPanel && cody.activated",group:"navigation",visibility:"visible"}],"comments/commentThread/context":[{command:"cody.comment.add",group:"inline",when:"cody.activated && commentController =~ /^cody-inline/ && config.cody.inlineChat.enabled"},{command:"cody.focus",group:"inline",when:"!cody.activated && commentController =~ /^cody-inline/ && config.cody.inlineChat.enabled"}],"comments/commentThread/title":[{command:"cody.comment.delete",group:"inline@1",when:"cody.activated && commentController =~ /^cody-inline/ && cody.replied && !commentThreadIsEmpty && config.cody.inlineChat.enabled"},{command:"cody.comment.open-in-sidebar",group:"inline@2",when:"cody.activated && commentController =~ /^cody-inline/ && cody.replied && config.cody.inlineChat.enabled"},{command:"cody.comment.collapse-all",group:"inline@3",when:"cody.activated && commentController =~ /^cody-inline/ && config.cody.inlineChat.enabled"}],"comments/comment/title":[{command:"cody.comment.stop",group:"inline@1",when:"cody.activated && commentController =~ /^cody-inline/ && comment =~ /^cody-inline-(streaming|loading)/ && config.cody.inlineChat.enabled"}],"view/item/context":[{command:"cody.chat.history.delete",when:"view == cody.chat.tree.view && cody.activated && cody.hasChatHistory",group:"inline"},{command:"cody.fixup.accept-by-file",when:"cody.nonstop.fixups.enabled && view == cody.fixup.tree.view && cody.activated && viewItem == fsPath",enable:"cody.fixup.filesWithApplicableFixups",group:"inline"},{command:"cody.fixup.accept",when:"cody.nonstop.fixups.enabled && view == cody.fixup.tree.view && cody.activated && viewItem == task",group:"inline@2"},{command:"cody.fixup.diff",when:"cody.nonstop.fixups.enabled && view == cody.fixup.tree.view && cody.activated && viewItem == task",group:"inline@1"}]},configuration:{type:"object",title:"Cody",properties:{"cody.serverEndpoint":{order:1,type:"string",description:"URL to the Sourcegraph instance.",examples:"https://example.sourcegraph.com",markdownDeprecationMessage:"**Deprecated**: Please sign in via the UI instead. If you are already signed in, you can empty this field to remove this warning.",deprecationMessage:"Deprecated: Please sign in via the UI instead."},"cody.proxy":{type:"string",markdownDeprecationMessage:"The SOCKS proxy endpoint to access server endpoint. This is only supported with some autocomplete providers and only for use with the Cody Agent (for instance with JetBrains plugin). For VS Code please use http.proxy instead."},"cody.codebase":{order:2,type:"string",markdownDescription:"The Git repository URL for your code. This will be sent to the Sourcegraph API to fetch the code graph context data. When set to empty, the URL will be inferred from your Git metadata.",examples:["https://github.com/sourcegraph/cody","ssh://git@github.com/sourcegraph/cody"]},"cody.useContext":{order:3,type:"string",enum:["embeddings","keyword","none","blended"],default:"embeddings",markdownDescription:"If 'embeddings' is selected, Cody will prefer to use an embeddings-based index when fetching context to generate responses to user requests. If no such index is found, it will fall back to using keyword-based local context fetching. If 'keyword' is selected, Cody will use keyword context. Selecting 'none' will limit Cody to using only the currently open file."},"cody.customHeaders":{order:4,type:"object",markdownDescription:"Adds custom HTTP headers to all network requests to the Sourcegraph endpoint. Defining required headers here ensures requests are properly forwarded through intermediary proxy servers, which may mandate certain custom headers for internal or external communication.",default:{},examples:[{"Cache-Control":"no-cache","Proxy-Authenticate":"Basic"}]},"cody.autocomplete.enabled":{order:5,type:"boolean",markdownDescription:"Enables inline code suggestions in your editor.",default:!0},"cody.autocomplete.languages":{order:5,type:"object",markdownDescription:"Enable or disable inline code suggestions for specified [languages](https://code.visualstudio.com/docs/languages/identifiers).",default:{"*":!0,scminput:!1}},"cody.inlineChat.enabled":{order:6,title:"Cody Inline Chat",type:"boolean",markdownDescription:"Enables asking questions and requesting code changes directly from within the code editor. Use the + button next to any line of code to start an inline chat.",default:!0},"cody.editorTitleCommandIcon":{order:7,type:"boolean",markdownDescription:"Adds a Cody icon to the editor title menu for quick access to Cody commands.",default:!0},"cody.experimental.chatPredictions":{order:8,type:"boolean",default:!1,markdownDescription:"Adds suggestions of possible relevant messages in the chat window."},"cody.experimental.commandLenses":{order:8,type:"boolean",markdownDescription:"[Experimental] Adds code lenses to current file for quick access to Cody commands.",default:!1},"cody.experimental.guardrails":{order:9,type:"boolean",markdownDescription:"Experimental feature for internal use.",default:!1},"cody.experimental.nonStop":{order:9,type:"boolean",markdownDescription:"Experimental feature for internal use.",default:!1},"cody.experimental.localSymbols":{order:9,type:"boolean",default:!1,markdownDescription:"Experimental feature for internal use."},"cody.chat.preInstruction":{order:10,type:"string",markdownDescription:"An instruction to be included at the start of all chat messages sent to Cody. Extension reload required.",examples:["Answer all my questions in Spanish."]},"cody.codeActions.enabled":{order:11,title:"Cody Code Actions",type:"boolean",markdownDescription:"Enable Cody fix and explain options in the Quick Fix menu",default:!0},"cody.experimental.newSearch":{order:99,type:"boolean",markdownDescription:"New search UI",default:!1},"cody.experimental.symf.path":{order:99,type:"string",markdownDescription:"Path to symf binary",default:""},"cody.debug.enable":{order:99,type:"boolean",markdownDescription:'Turns on debug output (visible in the VS Code Output panel under "Cody by Sourcegraph")'},"cody.debug.verbose":{order:99,type:"boolean",markdownDescription:"Enables verbose debug output. Debug messages may contain more details if the invocation includes verbose information."},"cody.debug.filter":{order:99,type:"string",markdownDescription:"Regular expression to filter debug output. If empty, defaults to '.*', which prints all messages."},"cody.telemetry.level":{order:99,type:"string",enum:["all","off"],enumDescriptions:["Sends usage data and errors.","Disables all extension telemetry."],markdownDescription:"Controls the telemetry about Cody usage and errors. See [Cody usage and privacy notice](https://about.sourcegraph.com/terms/cody-notice).",default:"all"},"cody.autocomplete.advanced.provider":{type:"string",default:null,enum:[null,"anthropic","fireworks","unstable-openai"],markdownDescription:"The provider used for code autocomplete. Most providers other than `anthropic` require the `cody.autocomplete.advanced.serverEndpoint` and `cody.autocomplete.advanced.accessToken` settings to also be set. Check the Cody output channel for error messages if autocomplete is not working as expected."},"cody.autocomplete.advanced.serverEndpoint":{type:"string",markdownDescription:"The server endpoint used for code autocomplete. This is only supported with a provider other than `anthropic`."},"cody.autocomplete.advanced.accessToken":{type:"string",markdownDescription:"The access token used for code autocomplete. This is only supported with a provider other than `anthropic`."},"cody.autocomplete.advanced.model":{type:"string",default:null,enum:[null,"starcoder-16b","starcoder-7b","starcoder-3b","starcoder-1b","wizardcoder-15b","llama-code-7b","llama-code-13b","llama-code-13b-instruct","mistral-7b-instruct-4k"],markdownDescription:"Overwrite the model used for code autocompletion inference. This is only supported with the `fireworks` provider"},"cody.autocomplete.completeSuggestWidgetSelection":{type:"boolean",default:!0,markdownDescription:"Autocomplete based on the currently selection in the suggest widget. Requires the VS Code user setting `editor.inlineSuggest.suppressSuggestions` set to true and will change it to true in user settings if it is not true."},"cody.autocomplete.experimental.syntacticPostProcessing":{type:"boolean",default:!0,markdownDescription:"Rank autocomplete results with tree-sitter."},"cody.autocomplete.experimental.graphContext":{type:"string",default:null,enum:[null,"lsp-light","bfg","bfg-mixed"],markdownDescription:"Use the code graph to retrieve context for autocomplete requests."},"cody.experimental.chatPanel":{order:100,type:"boolean",markdownDescription:"Experimental feature for internal use.",default:!1}}},icons:{"cody-logo":{description:"Cody logo",default:{fontPath:"resources/cody-icons.woff",fontCharacter:"\\0041"}},"cody-logo-heavy":{description:"Cody logo heavy",default:{fontPath:"resources/cody-icons.woff",fontCharacter:"\\0042"}},"new-comment-icon":{description:"Cody logo heavy",default:{fontPath:"resources/cody-icons.woff",fontCharacter:"\\0048"}}}},dependencies:{"@anthropic-ai/sdk":"^0.4.2","@mdi/js":"^7.2.96","@sentry/browser":"^7.66.0","@sentry/core":"^7.66.0","@sentry/node":"^7.66.0","@sourcegraph/cody-shared":"workspace:*","@sourcegraph/cody-ui":"workspace:*","@sourcegraph/telemetry":"^0.13.0","@types/stream-json":"^1.7.3","@vscode/codicons":"^0.0.29","@vscode/webview-ui-toolkit":"^1.2.2","async-mutex":"^0.4.0",axios:"^1.3.6",classnames:"^2.3.2","date-fns":"^2.30.0","detect-indent":"^7.0.1",glob:"^7.2.3","isomorphic-fetch":"^3.0.0","js-levenshtein":"^1.1.6",lodash:"^4.17.21","lru-cache":"^10.0.0",mkdirp:"^3.0.1","mock-require":"^3.0.3",openai:"^3.2.1","os-browserify":"^0.3.0","socks-proxy-agent":"^8.0.1","stream-json":"^1.8.0",unzipper:"^0.10.14",uuid:"^9.0.0","vscode-languageserver-textdocument":"^1.0.8","vscode-uri":"^3.0.7","web-tree-sitter":"^0.20.8","wink-eng-lite-web-model":"^1.5.0","wink-nlp":"^1.13.1","wink-nlp-utils":"^2.1.0"},devDependencies:{"@google-cloud/pubsub":"^3.7.3","@playwright/test":"^1.33.0","@types/axios":"^0.14.0","@types/dedent":"^0.7.0","@types/express":"^4.17.17","@types/glob":"^8.0.0","@types/isomorphic-fetch":"^0.0.38","@types/js-levenshtein":"^1.1.1","@types/lodash":"^4.14.195","@types/mocha":"^10.0.1","@types/mock-require":"^2.0.1","@types/progress":"^2.0.5","@types/semver":"^7.5.0","@types/unzipper":"^0.10.7","@types/uuid":"^9.0.2","@types/vscode":"^1.79.0","@types/vscode-webview":"^1.57.1","@vscode/test-electron":"^2.3.2","@vscode/test-web":"^0.0.47","@vscode/vsce":"^2.22.0","cody-icons-font":"workspace:^",concurrently:"^8.2.0",dedent:"^0.7.0",envalid:"^7.3.1",express:"^4.18.2",mocha:"^10.2.0",ovsx:"^0.8.2","path-browserify":"^1.0.1",playwright:"^1.33.0",progress:"^2.0.3",semver:"^7.5.4"}};var{properties:$CA}=XCA.contributes.configuration;function mrr(){return Object.keys($CA).reduce((A,r)=>{let t=(0,ZCA.camelCase)(r.split(".").slice(1).join("."));return A[t]=r,A},{})}function AIA(A){let r=$CA[A],t=[];return"enum"in r&&(t=r.enum),t}var Ql=mrr();var eIA=Yn(require("crypto")),uN=new Uint8Array(256),lN=uN.length;function ziA(){return lN>uN.length-16&&(eIA.default.randomFillSync(uN),lN=0),uN.slice(lN,lN+=16)}var LE=[];for(let A=0;A<256;++A)LE.push((A+256).toString(16).slice(1));function rIA(A,r=0){return(LE[A[r+0]]+LE[A[r+1]]+LE[A[r+2]]+LE[A[r+3]]+"-"+LE[A[r+4]]+LE[A[r+5]]+"-"+LE[A[r+6]]+LE[A[r+7]]+"-"+LE[A[r+8]]+LE[A[r+9]]+"-"+LE[A[r+10]]+LE[A[r+11]]+LE[A[r+12]]+LE[A[r+13]]+LE[A[r+14]]+LE[A[r+15]]).toLowerCase()}var tIA=Yn(require("crypto")),KiA={randomUUID:tIA.default.randomUUID};function Drr(A,r,t){if(KiA.randomUUID&&!r&&!A)return KiA.randomUUID();A=A||{};let i=A.random||(A.rng||ziA)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,r){t=t||0;for(let o=0;o<16;++o)r[t+o]=i[o];return r}return rIA(i)}var Km=Drr;var XiA=class{KEY_LOCAL_HISTORY="cody-local-chatHistory-v2";ANONYMOUS_USER_ID_KEY="sourcegraphAnonymousUid";LAST_USED_ENDPOINT="SOURCEGRAPH_CODY_ENDPOINT";CODY_ENDPOINT_HISTORY="SOURCEGRAPH_CODY_ENDPOINT_HISTORY";KEY_LAST_USED_RECIPES="SOURCEGRAPH_CODY_LAST_USED_RECIPE_NAMES";_storage=null;get storage(){if(!this._storage)throw new Error("LocalStorage not initialized");return this._storage}setStorage(r){this._storage=r}getEndpoint(){return this.storage.get(this.LAST_USED_ENDPOINT,null)}async saveEndpoint(r){if(r)try{let t=new URL(r).href;await this.storage.update(this.LAST_USED_ENDPOINT,t),await this.addEndpointHistory(t)}catch(t){console.error(t)}}async deleteEndpoint(){await this.storage.update(this.LAST_USED_ENDPOINT,null)}getEndpointHistory(){return this.storage.get(this.CODY_ENDPOINT_HISTORY,null)}async deleteEndpointHistory(){await this.storage.update(this.CODY_ENDPOINT_HISTORY,null)}async addEndpointHistory(r){let t=this.storage.get(this.CODY_ENDPOINT_HISTORY,null),i=new Set(t);i.delete(r),i.add(r),await this.storage.update(this.CODY_ENDPOINT_HISTORY,[...i])}getChatHistory(){return this.storage.get(this.KEY_LOCAL_HISTORY,null)}async setChatHistory(r){try{await this.storage.update(this.KEY_LOCAL_HISTORY,r)}catch(t){console.error(t)}}async deleteChatHistory(r){let t=this.getChatHistory();if(t)try{delete t.chat[r],await this.storage.update(this.KEY_LOCAL_HISTORY,{...t})}catch(i){console.error(i)}}async removeChatHistory(){try{await this.storage.update(this.KEY_LOCAL_HISTORY,null)}catch(r){console.error(r)}}async anonymousUserID(){let r=this.storage.get(this.ANONYMOUS_USER_ID_KEY),t=!1;if(!r){t=!0,r=Km();try{await this.storage.update(this.ANONYMOUS_USER_ID_KEY,r)}catch(i){console.error(i)}}return{anonymousUserID:r,created:t}}async setLastUsedCommands(r){if(r.length!==0)try{await this.storage.update(this.KEY_LAST_USED_RECIPES,r)}catch(t){console.error(t)}}getLastUsedCommands(){return this.storage.get(this.KEY_LAST_USED_RECIPES,null)}get(r){return this.storage.get(r,null)}async set(r,t){try{await this.storage.update(r,t)}catch(i){console.error(i)}}async delete(r){await this.storage.update(r,void 0)}},kc=new XiA;var hy="cody.access-token";async function dN(){try{let A=await oB.get(hy)||null;if(A)return A;throw new Error("token not found")}catch(A){return xu("VSCodeSecretStorage:getAccessToken","failed",{verbose:A}),await oB.delete(hy),console.error(`Failed to retrieve access token for Cody from secret storage: ${A}`),null}}var T6=class{fsPath=null;_secretStorage=null;get secretStorage(){if(!this._secretStorage)throw new Error("SecretStorage not initialized");return this._secretStorage}setStorage(r){this._secretStorage=r}constructor(){let r=ri.getConfiguration("cody");this.fsPath=r.get("experimental.localTokenPath")||null,this.fsPath&&Qn("VSCodeSecretStorage:experimental.localTokenPath","enabled",{verbose:this.fsPath})}async get(r){if(this.fsPath&&this.fsPath?.length>0)return this.getFromFsPath(this.fsPath);try{if(r)return await this.secretStorage.get(r)}catch(t){console.error("Failed to get token from Secret Storage",t)}}async getFromFsPath(r){return await _rr(r)||void 0}async store(r,t){try{t?.length>0&&await this.secretStorage.store(r,t)}catch(i){xu("VSCodeSecretStorage:store:failed",r,{verbose:i})}}async storeToken(r,t){!t||!r||(Th(r)&&await this.store("SOURCEGRAPH_CODY_APP",t),await this.store(r,t),await this.store(hy,t))}async deleteToken(r){await this.secretStorage.delete(r),await this.secretStorage.delete(hy)}async delete(r){await this.secretStorage.delete(r)}onDidChange(r){return this.secretStorage.onDidChange(t=>{if(t.key===hy)return r(t.key)})}},ZiA=class{storage;callbacks;constructor(){this.storage=new Map,this.callbacks=[]}async get(r){return Promise.resolve(this.storage.get(r))}async store(r,t){if(t){this.storage.set(r,t);for(let i of this.callbacks)i(r);return Promise.resolve()}}async storeToken(r,t){await this.store(r,t),await this.store(hy,t)}async deleteToken(r){await this.delete(r),await this.delete(hy)}async delete(r){this.storage.delete(r);for(let t of this.callbacks)t(r);return Promise.resolve()}onDidChange(r){return this.callbacks.push(r),new vf(()=>{let t=this.callbacks.indexOf(r);this.callbacks.splice(t,1)})}};async function _rr(A){try{let r=Zn.file(A),t=await ri.fs.readFile(r),i=new TextDecoder("utf-8").decode(t),o=JSON.parse(i);if(!o.token)throw new Error("Failed to retrieve token from: "+A);return Qn("VSCodeSecretStorage:getAccessTokenFromFsPath","retrieved"),o.token}catch(r){return xu("VSCodeSecretStorage:getAccessTokenFromFsPath","failed",{verbose:r}),null}}var oB=process.env.CODY_TESTING==="true"||process.env.CODY_PROFILE_TEMP==="true"?new ZiA:new T6;function sB(A=ri.getConfiguration()){let r=process.env.CODY_TESTING==="true",t=null;try{let g=A.get(Ql.debugFilter,null);g&&(g==="*"?t=new RegExp(".*"):t=new RegExp(g))}catch(g){ni.showErrorMessage("Error parsing cody.debug.filter regex - using default '*'",g),t=new RegExp(".*")}let i=A.get(Ql.autocompleteExperimentalGraphContext,null);i===!0&&(i="lsp-light");let o=A.get(Ql.autocompleteAdvancedProvider,null);o==="unstable-fireworks"&&(o="fireworks");let s=["autocompleteAdvancedProvider","autocompleteAdvancedModel"];for(let g of s){let E=g.replaceAll(/([A-Z])/g,".$1").toLowerCase(),p=A.get(Ql[g]);yrr(E,p)}return{serverEndpoint:vrr(A.get(Ql.serverEndpoint,"")),proxy:A.get(Ql.proxy,null),codebase:wrr(A.get(Ql.codebase)),customHeaders:A.get(Ql.customHeaders,{}),useContext:A.get(Ql.useContext)||"embeddings",debugEnable:A.get(Ql.debugEnable,!1),debugVerbose:A.get(Ql.debugVerbose,!1),debugFilter:t,telemetryLevel:A.get(Ql.telemetryLevel,"all"),autocomplete:A.get(Ql.autocompleteEnabled,!0),autocompleteLanguages:A.get(Ql.autocompleteLanguages,{"*":!0,scminput:!1}),experimentalChatPanel:A.get(Ql.experimentalChatPanel,r),experimentalChatPredictions:A.get(Ql.experimentalChatPredictions,r),experimentalSearchPanel:A.get(Ql.experimentalNewSearch,r),inlineChat:A.get(Ql.inlineChatEnabled,!0),codeActions:A.get(Ql.codeActionsEnabled,!0),chatPreInstruction:A.get(Ql.chatPreInstruction),experimentalGuardrails:A.get(Ql.experimentalGuardrails,r),experimentalNonStop:A.get(Ql.experimentalNonStop,r),experimentalLocalSymbols:A.get(Ql.experimentalLocalSymbols,!1),experimentalCommandLenses:A.get(Ql.experimentalCommandLenses,!1),editorTitleCommandIcon:A.get(Ql.editorTitleCommandIcon,!0),autocompleteAdvancedProvider:o,autocompleteAdvancedServerEndpoint:A.get(Ql.autocompleteAdvancedServerEndpoint,null),autocompleteAdvancedModel:A.get(Ql.autocompleteAdvancedModel,null),autocompleteAdvancedAccessToken:A.get(Ql.autocompleteAdvancedAccessToken,null),autocompleteCompleteSuggestWidgetSelection:A.get(Ql.autocompleteCompleteSuggestWidgetSelection,!0),autocompleteExperimentalSyntacticPostProcessing:A.get(Ql.autocompleteExperimentalSyntacticPostProcessing,!0),autocompleteExperimentalGraphContext:i,isRunningInsideAgent:A.get("cody.advanced.agent.running",!1),agentIDE:A.get("cody.advanced.agent.ide"),autocompleteTimeouts:{multiline:A.get("cody.autocomplete.advanced.timeout.multiline",void 0),singleline:A.get("cody.autocomplete.advanced.timeout.singleline",void 0)}}}function wrr(A){if(!A)return"";let r=/^(https?):\/\//,t=/\/$/;return A.replace(r,"").trim().replace(t,"")}function vrr(A){if(!A)return process.env.CODY_TESTING==="true"?"http://localhost:49300/":CQ.href;let r=/\/$/;return A.trim().replace(r,"")}var k4=async()=>{let A=sB();A.serverEndpoint=kc?.getEndpoint()||A.serverEndpoint;let r=await dN()||null;return{...A,accessToken:r}};function yrr(A,r){let t=AIA("cody."+A);r&&(t.includes(r)||ni.showErrorMessage(`Invalid value for ${A}: ${r}. Valid values are: ${t.join(", ")}`))}var Qy=ni.createOutputChannel("Cody by Sourcegraph","json");function Qn(A,r,...t){iIA("error",A,r,...t)}function xu(A,r,...t){iIA("error",A,r,...t)}function iIA(A,r,t,...i){let o=ri.getConfiguration(),s=sB(o),g=process.env.CODY_DEBUG_ENABLE==="true"||s.debugEnable;if(!Qy||A==="debug"&&!g||A==="debug"&&s.debugFilter&&!s.debugFilter.test(r))return;let E="\u2588 ";if(i.length===0){Qy.appendLine(`${E}${r}: ${t}`);return}let p=i.at(-1);if(p&&typeof p=="object"&&"verbose"in p){s.debugVerbose?Qy.appendLine(`${E}${r}: ${t} ${i.slice(0,-1).join(" ")} ${JSON.stringify(p.verbose,null,2)}`):Qy.appendLine(`${E}${r}: ${t} ${i.slice(0,-1).join(" ")}`);return}Qy.appendLine(`${E}${r}: ${t} ${i.join(" ")}`)}var $iA={startCompletion(A){let r=ri.getConfiguration();if(!sB(r).debugEnable)return;let i=Date.now(),o="prompt"in A?"code-completion":"messages"in A?"completion":"code-completion",s=!1,g="";function E(m){s||(s=!0,xu("CompletionLogger:onError",JSON.stringify({type:o,status:"error",duration:Date.now()-i,err:m}),{verbose:{params:A}}))}function p(m){s||(s=!0,Qn("CompletionLogger:onComplete",JSON.stringify({type:o,status:"success",duration:Date.now()-i}),{verbose:{result:m,params:A}}))}function B(m){for(let _ of m)switch(_.type){case"completion":g=_.completion;break;case"error":E(_.error);break;case"done":p(g);break}}return{onError:E,onComplete:p,onEvents:B}}};async function AnA(A,r=xrr,t=krr){let i=A.languageId==="plaintext",o=await r(A.uri).then(E=>E?.filter(p=>!p.kind));if(!o?.length)return[];let s=await brr(A,o,t);return sIA(s,i).map(E=>cIA(A,E))}async function oIA(A,r){let t=await AnA(A),i=Crr(t,r);if(i)return new od(i.start,i.end)}function Crr(A,r){return A.find(t=>t.start.line<=r&&t.end.line>=r)}var nIA=100;async function Irr(A,r,t){let i=await t(A.uri).then(g=>g.filter(E=>E.kind===4||E.kind===1||E.kind===2||aIA(E.location.range)>nIA)).then(g=>g.map(E=>E.location.range));if(i.length>0)return i;let o=sIA(r),s=o.map(g=>A.lineAt(g.start).text);return o.map(g=>cIA(A,g)).filter((g,E)=>s[E].includes("class")||s[E].startsWith("object")||aIA(g)>nIA)}async function brr(A,r,t){let i=await Irr(A,r,t);if(!i.length||!r?.length)return r;for(let o of i)for(let s=0;s!t.some(o=>o!==i&&o.start<=i.start&&o.end>=i.end))}function Orr(A){let r=[],t=[],i=t.at(-1);for(let o of A)i=t.at(-1),t.length>0&&i?.end===o.start-1?t.push(o):(t.length>0&&i&&r.push(new(void 0)(t[0].start,i.end)),t=[o]);return i&&t.length>0&&r.push(new(void 0)(t[0].start,i.end)),r}var Mrr=/^(}|]|\)|>|end|fi|elsif)/;function cIA(A,r){let i=!!A.getText(new sa(r.end+1,0,r.end+2,0)).trim().match(Mrr),o=r.start,s=r.end+(i?1:0),g=A.getText(new sa(s,0,s+1,0));return new sa(o,0,s,g.length-1)}function aIA(A){return A.end.line-A.start.line}async function krr(A){return await ti.executeCommand("vscode.executeDocumentSymbolProvider",A)||[]}async function xrr(A){return await ti.executeCommand("vscode.executeFoldingRangeProvider",A)||[]}async function Xm(A,r){return oIA(await ri.openTextDocument(A),r)}async function lIA(A=""){return ti.executeCommand("vscode.executeWorkspaceSymbolProvider",A)}function uIA(){let A=[],t=ni.tabGroups.all.flatMap(i=>i.tabs.map(o=>o.input));for(let i of t)i?.uri?.scheme==="file"&&A.push(i.uri);return A}var pN=class{constructor(r,t,i){this.serverEndpoint=r;this.extensionDetails=t;this.config=i;if(this.gqlAPIClient=new nB(this.config),this.setSiteIdentification().catch(o=>console.error(o)),this.extensionDetails.ide==="VSCode"&&this.extensionDetails.ideExtensionType==="Cody")this.client="VSCODE_CODY_EXTENSION";else throw new Error("new extension type not yet accounted for")}gqlAPIClient;client;siteIdentification;onConfigurationChange(r,t,i){this.serverEndpoint=r,this.extensionDetails=t,this.config=i,this.gqlAPIClient.onConfigurationChange(i),this.setSiteIdentification().catch(o=>console.error(o))}async setSiteIdentification(){let r=await this.gqlAPIClient.getSiteIdentification();Yo(r)||(this.siteIdentification=r)}log(r,t,i,o={hasV2Event:!1}){let s=o.hasV2Event||i?.hasV2Event,g={...i,serverEndpoint:this.serverEndpoint,extensionDetails:this.extensionDetails,configurationDetails:{contextSelection:this.config.useContext,chatPredictions:this.config.experimentalChatPredictions,inline:this.config.inlineChat,nonStop:this.config.experimentalNonStop,guardrails:this.config.experimentalGuardrails,newChatUI:this.config.experimentalChatPanel},version:this.extensionDetails.version,hasV2Event:s};this.gqlAPIClient.logEvent({event:r,userCookieID:t,source:"IDEEXTENSION",url:"",argument:"{}",publicArgument:JSON.stringify(g),client:this.client,connectedSiteID:this.siteIdentification?.siteid,hashedLicenseKey:this.siteIdentification?.hashedLicenseKey},s?"dotcom-only":"all").then(E=>{Yo(E)&&console.error("Error logging event",E)}).catch(E=>console.error("Error logging event",E))}};var enA=Yn(require("os"));function yb(){let A={darwin:"macos",linux:"linux",win32:"windows"},r={arm64:"aarch64",aarch64:"aarch64",x86_64:"x86_64",x64:"x86_64",i386:"x86",i686:"x86"},t;try{t=A[enA.default.platform()]}catch{}let i;try{i=r[enA.default.arch()]}catch{}return{platform:t,arch:i}}var my=null,rnA="off",tnA,{platform:Hrr,arch:Srr}=yb(),Frr=sB(ri.getConfiguration()),Zm={ide:Frr.agentIDE??"VSCode",ideExtensionType:"Cody",platform:Hrr??"browser",arch:Srr,version:EI.getExtension("sourcegraph.cody-ai")?.packageJSON?.version??cN};async function gIA(A,r){if((A.telemetryLevel==="off"||r)&&process.env.CODY_TESTING!=="true"){my=null,rnA="off";return}rnA=A.telemetryLevel;let{anonymousUserID:t,created:i}=await kc.anonymousUserID();tnA=t;let o=kc?.getEndpoint()||A.serverEndpoint;if(!my){my=new pN(o,Zm,A),i?inA("CodyInstalled",void 0,{hasV2Event:!0}):inA("CodyVSCodeExtension:CodySavedLogin:executed",void 0,{hasV2Event:!0});return}my?.onConfigurationChange(o,Zm,A)}function inA(A,r,t){if(!(rnA==="agent"&&!t?.agent)&&(Qn(`logEvent${my===null||process.env.CODY_TESTING==="true"?" (telemetry disabled)":""}`,A,Zm.ide,JSON.stringify({properties:r,opts:t})),!(!my||!tnA)))try{my.log(A,tnA,r,t)}catch(i){console.error(i)}}var Fa={log(A,r,t){inA(A,r,t)}};var EN=class{constructor(r,t,i){this.command=r;this.instruction=t;this.isFixupRequest=i;let o=r.slashCommand;if(this.kind=r.type==="default"?o.replace("/",""):"custom",Fa.log(`CodyVSCodeExtension:command:${this.kind}:executed`,{mode:r.mode||"ask",useCodebaseContex:!!r.context?.codebase,useShellCommand:!!r.context?.command,requestID:r.requestID}),Qn("CommandRunner:init",this.kind),this.editor=ku(),!this.editor&&r.context?.none&&r.slashCommand!=="/ask"){let E="Failed to create command: No active text editor found.";Qn("CommandRunner:int:fail",E),ni.showErrorMessage(E);return}if(r.mode==="inline"){this.handleInlineRequest();return}let s=r.mode==="insert",g=r.mode==="edit"||t?.startsWith("/edit ");if(this.isFixupRequest=i||g||s,this.isFixupRequest){this.handleFixupRequest(s);return}}id=`c${Date.now().toString(36).replaceAll(/\d+/g,"")}`;editor=void 0;contextOutput=void 0;disposables=[];kind;get codyCommand(){if(this.isFixupRequest)return null;let r=this.command.context;return r&&(r.output=this.contextOutput,this.command.context=r),this.command}async runShell(r){this.contextOutput=await r;let t=this.command.context;t&&(t.output=this.contextOutput,this.command.context=t,Qn("CommandRunner:runShell:output","found",{verbose:{command:this.command.context?.command}}))}async handleFixupRequest(r=!1){Qn("CommandRunner:handleFixupRequest","fixup request detected");let t=this.editor?.selection,i=this.editor?.document;if(!this.editor||!t||!i)return;if(t?.start.isEqual(t.end)){let p=t.start.line,B=i.lineAt(p).range;if(t=await Xm(i.uri,p)||new od(B.start,B.end),t?.isEmpty)return}let o=this.editor?.document.getText(t);if(!o||!t)return;let s=this.kind==="doc"?Trr(this.editor,t,i.languageId):t,g=r?Rrr(this.command.prompt,o):this.command.prompt,E=this.kind;await ti.executeCommand("cody.command.edit-code",{range:s,instruction:g,document:i,auto:!0,insertMode:r},E)}async handleInlineRequest(){Qn("CommandRunner:handleFixupRequest","inline chat request detected");let r=this.editor?.selection,t=this.editor?.document;if(!r||!t)return;r?.start.isEqual(r.end)&&(r=await Xm(t.uri,r.start.line));let i=this.command.prompt;await ti.executeCommand("cody.inline.add",i,r)}dispose(){for(let r of this.disposables)r.dispose();this.disposables=[]}};function Rrr(A,r){return A+` -Here is the code: -`+r+""}function Trr(A,r,t){let i=t==="python"?r.start.line+1:r.start.line,o=new Ao(i,0);return A&&(A.visibleRanges.some(g=>g.contains(r))||A?.revealRange(r,(void 0).InCenter)),new od(o,o)}var onA=Yn(JB());var dIA={doc:{description:"Generate code documentation",prompt:"Write a brief documentation comment for the selected code. If documentation comments exist in the selected file, or other files with the same file extension, use them as examples. Pay attention to the scope of the selected code (e.g. exported function/API vs implementation detail in a function), and use the idiomatic style for that type of code scope. Only generate the documentation for the selected code, do not generate the code. Do not output any other code or comments besides the documentation. Output only the comment and do not enclose it in markdown.",context:{currentFile:!0,currentDir:!0,selection:!0},mode:"insert"},explain:{description:"Explain code",prompt:"Explain what the selected code does in simple terms. Assume the audience is a beginner programmer who has just learned the language features and basic syntax. Focus on explaining: 1) The purpose of the code 2) What input(s) it takes 3) What output(s) it produces 4) How it achieves its purpose through the logic and algorithm. 5) Any important logic flows or data transformations happening. Use simple language a beginner could understand. Include enough detail to give a full picture of what the code aims to accomplish without getting too technical. Format the explanation in coherent paragraphs, using proper punctuation and grammar. Write the explanation assuming no prior context about the code is known. Do not make assumptions about variables or functions not shown in the shared code. Start the answer with the name of the code that is being explained.",context:{currentFile:!0}},test:{description:"Generate unit tests",prompt:"Review the shared code context and configurations to identify the test framework and libraries in use. Then, generate a suite of multiple unit tests for the functions in using the detected test framework and libraries. Be sure to import the function being tested. Follow the same patterns as any shared context. Only add packages, imports, dependencies, and assertions if they are used in the shared code. Pay attention to the file path of each shared context to see if test for already exists. If one exists, focus on generating new unit tests for uncovered cases. If none are detected, import common unit test libraries for {languageName}. Focus on validating key functionality with simple and complete assertions. Only include mocks if one is detected in the shared code. Before writing the tests, identify which test libraries and frameworks to import, e.g. 'No new imports needed - using existing libs' or 'Importing test framework that matches shared context usage' or 'Importing the defined framework', etc. Then briefly summarize test coverage and any limitations. At the end, enclose the full completed code for the new unit tests, including all necessary imports, in a single markdown codeblock. No fragments or TODO. The new tests should validate expected functionality and cover edge cases for with all required imports, including importing the function being tested. Do not repeat existing tests.",context:{currentDir:!0,currentFile:!0,selection:!0}},smell:{description:"Find code smells",prompt:"Please review and analyze the {languageName} code I have selected and identify potential areas for improvement related to code smells, readability, maintainability, performance, security, etc. Do not list issues already addressed in the given code. Focus on providing up to 5 constructive suggestions that could make the code more robust, efficient, or align with best practices. For each suggestion, provide a brief explanation of the potential benefits. After listing any recommendations, summarize if you found notable opportunities to enhance the code quality overall or if the code generally follows sound design principles. If no issues found, reply 'There are no errors.'"}};var Grr=new Set(["explain","doc","edit","smell","test"]);function pIA(A=[]){let r=new Map;for(let i of A)i.slashCommand&&r.set(i.slashCommand,i);let t=dIA;for(let i in t)if(Object.prototype.hasOwnProperty.call(t,i)){let o=t[i];o.type="default",o.slashCommand=ay(i),r.set(o.slashCommand,o)}return r}function EIA(A){if(A?.type==="default"){let r=A.slashCommand.replace(/^\//,"");if(Grr.has(r))return r}return"custom-commands"}var N6={vscode:".vscode/cody.json"},fN={codebase:!1};function K_(A,r){if(!r)return;let t=A.split("/"),i=Zn.file(r);return Zn.joinPath(i,...t)}async function fIA(A,r){await nnA({commands:[]},r)}async function nnA(A,r){try{let t=new Sd;t.deleteFile(r,{ignoreIfNotExists:!0}),t.createFile(r,{ignoreIfExists:!0}),t.insert(r,new Ao(0,0),JSON.stringify(A,null,2)),await ri.applyEdit(t),await(await ri.openTextDocument(r)).save()}catch(t){throw new Error(`Failed to save your Custom Commands to a JSON file: ${t}`)}}function anA(A){let r=K_(N6.vscode,A);if(!r)return null;let t=new p4(r,"*");return ri.createFileSystemWatcher(t)}async function BIA(A){A&&await ri.fs.delete(A)}var hIA=(A="",r="",t=!1)=>({label:A,description:r,alwaysShow:t});async function QIA(A){try{let r=await ri.fs.readFile(A);return new TextDecoder("utf-8").decode(r)}catch{return""}}var mIA=` -Here is the output of \`{command}\` command from my terminal inside tags: - -{output} -`;async function BN(){let A="https://docs.sourcegraph.com/cody/custom-commands";await Ec.openExternal(Zn.parse(A))}var F0={description:"Ask a question",slashCommand:"/ask"},Ph={description:"Edit code",slashCommand:"/edit"},Yrr={kind:-1,label:"inline"},Urr={label:F0.slashCommand,description:F0.description,slashCommand:F0.slashCommand},Lrr={label:Ph.slashCommand,description:Ph.description,slashCommand:Ph.slashCommand},jrr={kind:-1,label:"commands"},Wrr={kind:-1,label:"custom commands (experimental)"},Jrr={kind:-1,label:"settings"},qrr={kind:-1,label:"last used"},Vrr={label:"Configure Custom Commands...",description:"Manage your custom reusable commands"},zrr={label:"New Custom Command...",alwaysShow:!0,description:"Create a new reusable command"};var Dy={inline:Yrr,commands:jrr,customCommands:Wrr,settings:Jrr,lastUsed:qrr},$m={chat:Urr,fix:Lrr,config:Vrr,add:zrr};var Krr={iconPath:new y0("go-to-file"),tooltip:"Open or Create Settings File",id:"open"},Xrr={iconPath:new y0("trash"),tooltip:"Delete Settings File",id:"delete"},Zrr={iconPath:new y0("gear"),tooltip:"Configure Custom Commands...",id:"config"},$rr=n6.Back,S0={open:Krr,trash:Xrr,back:$rr,gear:Zrr};var DIA=[{id:"selection",label:"Selected Code",detail:"Code currently highlighted in the active editor.",picked:!0},{id:"codebase",label:"Codebase",detail:"Code snippets retrieved from the available source for codebase context (embeddings or local keyword search).",picked:!1},{id:"currentDir",label:"Current Directory",detail:'First 10 text files in the current directory. If the prompt includes the words "test" or "tests", only test files will be included.',picked:!1},{id:"openTabs",label:"Current Open Tabs",detail:"First 10 text files in current open tabs",picked:!1},{id:"command",label:"Command Output",detail:"The output returned from a terminal command (e.g. git describe --long, node your-script.js, cat src/file-name.js)",picked:!1},{id:"none",label:"None",detail:"Exclude all types of context.",picked:!1}],hN={user:0,workspace:0,default:0,"recently used":0};async function _IA(){return await ni.showWarningMessage("Are you sure you want to remove the .vscode/cody.json file from your file system?",{modal:!0},"Yes","No")}var wIA=[{kind:0,label:"New Custom Command...",id:"add"},{kind:-1,id:"separator",label:""},{kind:0,label:"Open User Settings (JSON)",detail:"Stored on your machine and usable across all your workspaces/repositories",id:"open",type:"user",description:"~/.vscode/cody.json",buttons:[S0.open,S0.trash]},{kind:0,label:"Open Workspace Settings (JSON)",detail:"Project-specific and shared with anyone using this workspace/repository",id:"open",type:"workspace",description:".vscode/cody.json",buttons:[S0.open,S0.trash]},{kind:-1,id:"separator",label:""},{kind:0,label:"Open Custom Commands Documentation",id:"docs"}];async function QN(){let A=ni.createQuickPick();return A.title=`${F0.description} (${F0.slashCommand})`,A.placeholder="Your question",A.buttons=[S0.back],A.onDidTriggerButton(()=>{ti.executeCommand("cody.action.commands.menu"),A.hide()}),A.show(),new Promise(r=>A.onDidAccept(()=>{let t=A.value.trim();if(t)return A.hide(),r(t)}))}var mN=class{constructor(r,t,i,o){this.isActive=r;this.extensionPath=t;this.workspaceRoot=i;this.homeDir=o;this.jsonFileUris={user:K_(N6.vscode,o),workspace:K_(N6.vscode,i)},this.activate()}myPromptsJSON=null;myPromptsMap=new Map;promptSize=hN;jsonFileUris;activate(r=!0){this.isActive=r,this.isActive&&!r&&this.dispose()}hasCustomPrompts(){let r=this.promptSize.user+this.promptSize.workspace;return this.isActive&&r>0}async refresh(){try{this.isActive&&(this.myPromptsMap=new Map,this.promptSize={...hN},this.homeDir&&await this.build("user"),this.workspaceRoot&&ri.isTrusted&&await this.build("workspace"))}catch(r){xu("CustomPromptsStore:refresh","failed",{verbose:r})}return{commands:this.myPromptsMap}}getCommands(){return[...this.myPromptsMap]}async build(r){if(r==="workspace"&&!ri.isTrusted)return null;try{let t=await this.getPromptsFromFileSystem(r);if(!t)return null;let i=JSON.parse(t),o=i.commands||i.recipes,s=Object.entries(o);if(s.some(([E,p])=>E.split(" ").length>1||!("description"in p)))return ni.showInformationMessage(`Your custom commands ${r} JSON (${r==="user"?"~/.vscode/cody.json":".vscode/cody.json"}) is using an old format, and needs to be upgraded.`,"Upgrade JSON","Ignore").then(E=>{if(E==="Upgrade JSON"){let p=s.reduce((B,[m,{prompt:_,type:x,context:O}])=>{let k=m.trim().replaceAll(" ","-").toLowerCase();return B[k]={description:m,prompt:_,type:x,context:O},B},{});this.updateJSONFile({...i,commands:p},r).then(()=>{let B=r==="user"?this.jsonFileUris.user:this.jsonFileUris.workspace;B&&ni.showTextDocument(B)})}}),null;for(let[E,p]of s){let B={...p,slashCommand:ay(E)};B.type=r,this.myPromptsMap.set(B.slashCommand,B)}r==="user"&&(this.myPromptsJSON=i),this.promptSize[r]=this.myPromptsMap.size}catch(t){Qn("CustomPromptsStore:build","failed",{verbose:t})}return this.myPromptsMap}async save(r,t,i=!1,o="user"){i?this.myPromptsMap.delete(r):this.myPromptsMap.set(r,t);let s=new Map;for(let[E,p]of this.myPromptsMap)p.type==="user"&&p.prompt!=="separator"&&(p.type=void 0,s.set(ArA(E),(0,onA.omit)(p,"slashCommand")));s.set(ArA(r),(0,onA.omit)(t,"slashCommand"));let g={...this.myPromptsJSON};return g.commands=Object.fromEntries(s),this.updateJSONFile(g,o)}async updateJSONFile(r,t){try{let i=t==="user"?this.jsonFileUris.user:this.jsonFileUris.workspace;if(!i)throw new Error("Invalid file path");await nnA(r,i)}catch(i){ni.showErrorMessage(`Failed to save to cody.json file: ${i}`)}}async createConfig(r="user"){let t=this.getConfigUriByType(r);try{if(t){await fIA(this.extensionPath,t),ni.showInformationMessage(`Cody ${r} settings file created`,"View Documentation").then(async i=>{i==="View Documentation"&&await BN()});return}throw new Error("Please make sure you have a repository opened in your workspace.")}catch(i){let o="Failed to create cody.json file: ";ni.showErrorMessage(`${o} ${i}`),Qn("CustomPromptsStore:addJSONFile:create","failed",{verbose:i})}}async deleteConfig(r="user"){let t=this.getConfigUriByType(r);(this.promptSize[r]===0||!t)&&(ni.showInformationMessage("Fail: try deleting the .vscode/cody.json file in your repository or home directory manually."),xu("CustomPromptsStore:clear:error:","Failed to remove cody.json file for"+r)),await BIA(t)}async openConfig(r="user"){let t=this.getConfigUriByType(r);return ti.executeCommand("vscode.open",t)}async getPromptsFromFileSystem(r){let t=this.getConfigUriByType(r);return t?QIA(t):null}dispose(){this.isActive=!1,this.myPromptsMap=new Map,this.promptSize={...hN},this.myPromptsJSON=null}getConfigUriByType(r){return r==="user"?this.jsonFileUris.user:this.jsonFileUris.workspace}};var CIA=Yn(JB());var DN=class{async start(r){let t=await this.makeSlashCommand(r);if(!t)return null;let i=await this.makeDescription();if(!i)return null;let o=await this.makePrompt();if(!o)return null;let s=await this.makeType();return s?{slashCommand:t,prompt:{...o,description:i,slashCommand:t},type:s}:null}async makeSlashCommand(r){let t=await ni.showInputBox({title:"New Custom Cody Command: Slash Name",prompt:"Enter the slash name of the custom command",placeHolder:"e.g. /my-custom-command",ignoreFocusOut:!0,validateInput:i=>{if(!i)return"Slash name cannot be empty.";if(i.split(" ").length>1)return"Slash name cannot contain spaces. Use dashes, underscores, or camelCase.";if(r.has(ay(i)))return"A command with the slash name already exists."}});return t&&(t=ay(t)),t}async makeDescription(){return await ni.showInputBox({title:"New Custom Cody Command: Description",prompt:"Enter a description for the command in sentence case.",placeHolder:"e.g. Scan for vulnerabilities",ignoreFocusOut:!0,validateInput:t=>{if(!t)return"Command description cannot be empty."}})}async makePrompt(){let r=await ni.showInputBox({title:"New Custom Cody Command: Prompt",prompt:"Enter the instructions for Cody to follow and answer.",placeHolder:"e.g. Create five different test cases for the selected code",ignoreFocusOut:!0,validateInput:t=>t?null:"Command prompt cannot be empty."});return r?this.addContext({prompt:r}):null}async addContext(r){if(!r)return null;r.context={...fN};let t=await ni.showQuickPick(DIA,{title:"New Custom Cody Command: Context Options",placeHolder:"For accurate responses, choose only the necessary options.",canPickMany:!0,ignoreFocusOut:!0,onDidSelectItem:i=>{i.picked=!i.picked}});if(!t?.length)return r;for(let i of t)switch(i.id){case"selection":case"codebase":case"currentDir":case"openTabs":case"none":r.context[i.id]=i.picked;break;case"command":{r.context.command=await Atr()||"";break}}return r}async makeType(){return(await ni.showQuickPick([{label:"User Settings",detail:"Stored on your machine and usable across all your workspaces/repositories",type:"user",description:"~/.vscode/cody.json",picked:!0},{label:"Workspace Settings",detail:"Project-specific and shared with anyone using this workspace/repository",type:"workspace",description:".vscode/cody.json"}],{title:"New Custom Cody Command: Save To\u2026",ignoreFocusOut:!0,placeHolder:"Choose where to save the command"}))?.type==="workspace"?"workspace":"user"}};async function Atr(){return await ni.showInputBox({title:"New Custom Cody Command: Command",prompt:"Enter the terminal command to run from the workspace root. Its output will be included to Cody as prompt context.",placeHolder:"e.g. node myscript.js | head -n 50"})}var etr=/^\/[A-Za-z]+/;function vIA(A){return etr.test(A)}var rtr={[F0.slashCommand]:A=>`${A} [question]`,[Ph.slashCommand]:A=>`${A} [instruction]`};function yIA(A){return A.trim().toLowerCase()}async function IIA(A){let r={title:"Cody (Shortcut: \u2325C)",placeHolder:"Search for a command or enter your question here..."},t=A.map(i=>{let o="slashCommand"in i?rtr[i.slashCommand]:void 0;return o?{...i,label:o(i.label)}:i});return new Promise(i=>{let o=ni.createQuickPick();o.items=t,o.title=r.title,o.placeholder=r.placeHolder,o.matchOnDescription=!0,o.buttons=[S0.gear];let s=new Set([$m.chat.slashCommand,$m.fix.slashCommand]),g=(0,CIA.debounce)(E=>{let p=A.reduce((B,m)=>("slashCommand"in m&&s.has(m.slashCommand)&&B.push({...m,label:`${m.label} "${E}"`,alwaysShow:!0}),B),[]);o.items=p},200);o.onDidChangeValue(E=>{let p=yIA(E);if(o.matchOnDescription=!1,vIA(p)){let[m]=p.split(" "),_=t.filter(x=>"slashCommand"in x&&x.slashCommand?.toLowerCase().startsWith(m));if(_.length>0){o.items=_.map(x=>({...x,alwaysShow:!0}));return}o.items=[{label:"No matching commands",alwaysShow:!0}];return}let B=A.some(m=>["slashCommand"in m?m.slashCommand:m.label,m.description].some(_=>_?.toLowerCase().includes(p)));if(!p||B){o.items=t,o.matchOnDescription=!0;return}g(p)}),o.onDidTriggerButton(async()=>{o.hide(),await ti.executeCommand("cody.settings.commands")}),o.onDidAccept(()=>{let E=o.activeItems[0],p=yIA(o.value);if(vIA(p)){let[,...B]=p.split(" ");p=B.join(" ")}i({selectedItem:E,input:p}),o.hide()}),o.show()})}async function bIA(A){let r={title:"Cody: Custom Commands (Experimental)",placeHolder:"Search command to run..."};return new Promise(t=>{let i=ni.createQuickPick();i.items=A,i.title=r.title,i.placeholder=r.placeHolder,i.ignoreFocusOut=!0,i.buttons=[S0.back],i.onDidAccept(()=>{let o=i.activeItems[0];t(o),i.hide()}),i.onDidTriggerButton(async()=>{i.hide(),await ti.executeCommand("cody.action.commands.menu")}),i.show()})}async function OIA(){let A={title:"Cody: Configure Custom Commands (Experimental)",placeHolder:"Choose an option"};return new Promise(r=>{let t=ni.createQuickPick();t.items=wIA,t.title=A.title,t.placeholder=A.placeHolder,t.buttons=[S0.back],t.onDidTriggerItemButton(i=>{let o=i.item;o.id=i.button.tooltip==="delete"?"delete":"open",r(o),t.hide()}),t.onDidAccept(()=>{let i=t.activeItems[0];r(i),t.hide()}),t.onDidTriggerButton(async()=>{t.hide(),await ti.executeCommand("cody.action.commands.menu")}),t.show()})}async function MIA(A){return new DN().start(A)}var ttr=[{description:F0.description,prompt:F0.slashCommand,slashCommand:F0.slashCommand},{description:Ph.description,prompt:Ph.slashCommand,slashCommand:Ph.slashCommand}],_N=class{defaultPromptsMap=pIA(ttr);allCommands=new Map;constructor(){this.groupCommands(this.defaultPromptsMap)}get(r){return this.allCommands.get(r)}getGroupedCommands(r){return r?[...this.allCommands]:[...this.allCommands].filter(t=>t[1].prompt!=="separator")}groupCommands(r=new Map){let t=new Map([...this.defaultPromptsMap]);t.set("separator",{prompt:"separator",slashCommand:""}),this.allCommands=new Map([...r,...t])}dispose(){this.allCommands=new Map,Qn("CommandsController:dispose","disposed")}};var xIA=require("child_process"),HIA=Yn(require("os")),SIA=require("util");var snA=()=>ri.workspaceFolders?.[0]?.uri?.fsPath,kIA=()=>ku()?.document.uri.fsPath,itr=HIA.default.homedir()||process.env.HOME||process.env.USERPROFILE||"",ntr=(0,SIA.promisify)(xIA.exec),wN=class{constructor(r){this.context=r;this.user=this.getUserInfo()}user;shell=Ec.shell;getUserInfo(){if(this.user?.workspaceRoot)return this.user;let r=Ec.appRoot;return{homeDir:itr,workspaceRoot:snA(),currentFilePath:kIA(),appRoot:r}}async openFile(r){return ti.executeCommand("vscode.open",r)}async openFolder(){await ti.executeCommand("vscode.openFolder",snA())}async exeCommand(r,t=!0){if(!this.shell){ni.showErrorMessage("Shell command is not supported your current workspace.");return}let i=this.user.homeDir+"/"||"",o=r.replaceAll(/(\s~\/)/g,` ${i}`);try{let{stdout:s,stderr:g}=await ntr(o,{cwd:t?snA():kIA(),encoding:"utf8"}),p=JSON.stringify((s||g).trim());if(!p)throw new Error("Empty output");return Qn("ToolsProvider:exeCommand",r,{verbose:p}),mIA.replace("{command}",r).replace("{output}",p)}catch(s){xu("ToolsProvider:exeCommand","failed",{verbose:s}),ni.showErrorMessage("Failed to run command. Please make sure the command works in your terminal before trying again.")}}async doesUriExist(r){if(!r)return!1;try{return r&&!!await ri.fs.stat(r)||!1}catch{return!1}}};var vN=class{isEnabled=!0;disposables=[];tools;custom;default=new _N;myPromptsMap=new Map;lastUsedCommands=new Set;webViewMessenger=null;wsFileWatcher=null;userFileWatcher=null;commandRunners=new Map;constructor(r){this.tools=new wN(r);let t=this.tools.getUserInfo();this.custom=new mN(this.isEnabled,r.extensionPath,t?.workspaceRoot,t.homeDir),this.disposables.push(this.custom),this.lastUsedCommands=new Set(kc.getLastUsedCommands()),this.custom.activate(),this.fileWatcherInit()}getCommand(r){let t=this.commandRunners.get(r);return t?(this.commandRunners.delete(r),t?.codyCommand):null}async addCommand(r,t,i,o){let s=r.split(" "),g=s.shift()||r,E=g===r?"":s.join(" "),p=this.default.get(g);return p?(p.slashCommand==="/ask"&&(p.prompt=r),!p.context&&o&&(p.context={codebase:o}),p.additionalInput=E,p.requestID=t,p.contextFiles=i,this.createCodyCommandRunner(p,E)):"invalid"}async createCodyCommandRunner(r,t=""){let i=r.slashCommand,s=new Set(["/edit","/fix","/doc"]).has(i)||r.prompt.startsWith("/edit");Qn("CommandsController:createCodyCommandRunner:creating",i);let g=new EN(r,t,s);if(this.commandRunners.set(g.id,g),this.lastUsedCommands.add(r.slashCommand),s||r.mode==="inline")return"";let E=r.context?.command;return E&&await g.runShell(this.tools.exeCommand(E)),g.id}async getAllCommands(r=!1){return await this.refresh(),this.default.getGroupedCommands(r)}async getCustomConfig(){return await this.custom.refresh()}async menu(r){switch(await this.refresh(),r){case"custom":await this.customCommandMenu();break;case"config":await this.configMenu();break;case"default":await this.mainCommandMenu();break;default:break}}async refresh(){await this.saveLastUsedCommands();let{commands:r}=await this.custom.refresh();this.myPromptsMap=r,this.default.groupCommands(r)}async mainCommandMenu(){try{let r=this.default.getGroupedCommands(!0)?.map(([s,g])=>{if(g.prompt==="separator")return Dy.customCommands;let E,p,B;return g.slashCommand?(E=g.slashCommand,p=g.description||s,B=g.slashCommand):(E=g.description||s,p=g.type==="default"?"":g.type),{label:E,description:p,slashCommand:B}}),{selectedItem:t,input:i}=await IIA([Dy.commands,...r,Dy.settings,$m.config]);if(!t)return;let o="slashCommand"in t?t.slashCommand:t.label;switch(!0){case!o:break;case o===$m.config.label:return await ti.executeCommand("cody.settings.commands");case o===$m.chat.slashCommand:{let s=i.trim();return s?await ti.executeCommand("cody.action.chat",s,"command"):(s=await QN(),await ti.executeCommand("cody.chat.focus"),await ti.executeCommand("cody.action.chat",s,"command"))}case o===$m.fix.slashCommand:{let s="menu";return await ti.executeCommand("cody.command.edit-code",{instruction:i.trim()},s)}}await ti.executeCommand("cody.action.commands.exec",o)}catch(r){xu("CommandsController:commandQuickPicker","error",{verbose:r})}}async customCommandMenu(){if(await this.refresh(),!this.isEnabled||!this.custom.hasCustomPrompts())return this.configMenu();try{let r=FIA(this.getLastUsedCommands()).reverse();r.length>0&&(r=[Dy.lastUsed,...r]);let t=this.custom.getCommands(),i=FIA(t),o=[...r,Dy.customCommands,...i],s=$m.config,g=$m.add;o.push(Dy.settings,s,g);let p=(await bIA([...o]))?.label;if(!p)return;switch(p.length>0){case p===g.label:return await this.addNewUserCommandQuick();case p===s.label:return await this.configMenu("custom");default:await ti.executeCommand("cody.action.commands.exec",p);break}Qn("CommandsController:promptsQuickPicker:selectedPrompt",p)}catch(r){xu("CommandsController:promptsQuickPicker","error",{verbose:r})}}async configMenu(r){let t=await OIA(),i=t?.id;if(!(!t||!i))return i==="back"&&r==="custom"?this.customCommandMenu():(Qn("CommandsController:customPrompts:menu",i),await this.configFileAction(i,t.type,t.type),this.refresh())}async configFileAction(r,t,i){switch(r){case"add":{await this.addNewUserCommandQuick();break}case"list":await this.customCommandMenu();break;case"docs":await BN();break;case"delete":{if(await _IA()!=="Yes")return;await this.custom.deleteConfig(t),await this.refresh();break}case"file":await this.custom.createConfig(t);break;case"open":i&&await this.open(i);break}}async addNewUserCommandQuick(){let r=await MIA(this.myPromptsMap);if(!r)return;await this.custom.save(r.slashCommand,r.prompt,!1,r.type),await this.refresh();let t=`Open ${r.type==="user"?"User":"Workspace"} Settings (JSON)`;ni.showInformationMessage(`New ${r.slashCommand} command saved to ${r.type} settings`,t).then(async i=>{i===t&&await this.custom.openConfig(r.type)}),Qn("CommandsController:updateUserCommandQuick:newPrompt:","saved",{verbose:r})}async open(r){if(r==="user"||r==="workspace"){let i=this.custom.jsonFileUris[r];return await this.tools.doesUriExist(i)?this.tools.openFile(i):this.open(r)}let t=K_(r,this.tools.getUserInfo()?.workspaceRoot);return ti.executeCommand("vscode.open",t)}getLastUsedCommands(){return[...this.lastUsedCommands].map(r=>[r,this.default.get(r)])||[]}async saveLastUsedCommands(){let r=[...this.lastUsedCommands].filter(t=>this.default.get(t)?.slashCommand.length);r.length>0&&await kc.setLastUsedCommands(r.slice(0,5)),this.lastUsedCommands=new Set(r)}setMessenger(r){this.webViewMessenger||(this.webViewMessenger=r)}fileWatcherDisposables=[];fileWatcherInit(){for(let t of this.fileWatcherDisposables)t.dispose();if(this.fileWatcherDisposables=[],!this.isEnabled)return;let r=this.tools.getUserInfo();this.wsFileWatcher=anA(r?.workspaceRoot),this.wsFileWatcher&&this.fileWatcherDisposables.push(this.wsFileWatcher,this.wsFileWatcher.onDidChange(()=>this.webViewMessenger?.()),this.wsFileWatcher.onDidDelete(()=>this.webViewMessenger?.())),this.userFileWatcher=anA(r?.homeDir),this.userFileWatcher&&this.fileWatcherDisposables.push(this.userFileWatcher,this.userFileWatcher.onDidChange(()=>this.webViewMessenger?.()),this.userFileWatcher.onDidDelete(()=>this.webViewMessenger?.())),Qn("CommandsController:fileWatcherInit","watchers created")}dispose(){this.isEnabled=!1;for(let r of this.disposables)r.dispose();for(let r of this.commandRunners)r[1].dispose();for(let r of this.fileWatcherDisposables)r.dispose();this.fileWatcherDisposables=[],this.disposables=[],this.myPromptsMap=new Map,this.commandRunners=new Map,Qn("CommandsController:dispose","disposed")}};function FIA(A){return A?.filter(r=>r!==null&&r?.[1]?.type!=="default").map(r=>{let t=r[0],i=r[1];return hIA(t,i.description)})}var lxA=Yn(require("node:child_process"));var oM=Yn(require("fs")),mw=require("fs"),Zy=Yn(require("path"));function P6(A,r){return function(){return A.apply(r,arguments)}}var{toString:atr}=Object.prototype,{getPrototypeOf:unA}=Object,CN=(A=>r=>{let t=atr.call(r);return A[t]||(A[t]=t.slice(8,-1).toLowerCase())})(Object.create(null)),H4=A=>(A=A.toLowerCase(),r=>CN(r)===A),IN=A=>r=>typeof r===A,{isArray:Cb}=Array,G6=IN("undefined");function otr(A){return A!==null&&!G6(A)&&A.constructor!==null&&!G6(A.constructor)&&x4(A.constructor.isBuffer)&&A.constructor.isBuffer(A)}var NIA=H4("ArrayBuffer");function str(A){let r;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?r=ArrayBuffer.isView(A):r=A&&A.buffer&&NIA(A.buffer),r}var ctr=IN("string"),x4=IN("function"),PIA=IN("number"),gnA=A=>A!==null&&typeof A=="object",ltr=A=>A===!0||A===!1,yN=A=>{if(CN(A)!=="object")return!1;let r=unA(A);return(r===null||r===Object.prototype||Object.getPrototypeOf(r)===null)&&!(Symbol.toStringTag in A)&&!(Symbol.iterator in A)},utr=H4("Date"),gtr=H4("File"),dtr=H4("Blob"),ptr=H4("FileList"),Etr=A=>gnA(A)&&x4(A.pipe),ftr=A=>{let r;return A&&(typeof FormData=="function"&&A instanceof FormData||x4(A.append)&&((r=CN(A))==="formdata"||r==="object"&&x4(A.toString)&&A.toString()==="[object FormData]"))},Btr=H4("URLSearchParams"),htr=A=>A.trim?A.trim():A.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Y6(A,r,{allOwnKeys:t=!1}={}){if(A===null||typeof A>"u")return;let i,o;if(typeof A!="object"&&(A=[A]),Cb(A))for(i=0,o=A.length;i0;)if(o=t[i],r===o.toLowerCase())return o;return null}var YIA=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),UIA=A=>!G6(A)&&A!==YIA;function lnA(){let{caseless:A}=UIA(this)&&this||{},r={},t=(i,o)=>{let s=A&&GIA(r,o)||o;yN(r[s])&&yN(i)?r[s]=lnA(r[s],i):yN(i)?r[s]=lnA({},i):Cb(i)?r[s]=i.slice():r[s]=i};for(let i=0,o=arguments.length;i(Y6(r,(o,s)=>{t&&x4(o)?A[s]=P6(o,t):A[s]=o},{allOwnKeys:i}),A),mtr=A=>(A.charCodeAt(0)===65279&&(A=A.slice(1)),A),Dtr=(A,r,t,i)=>{A.prototype=Object.create(r.prototype,i),A.prototype.constructor=A,Object.defineProperty(A,"super",{value:r.prototype}),t&&Object.assign(A.prototype,t)},_tr=(A,r,t,i)=>{let o,s,g,E={};if(r=r||{},A==null)return r;do{for(o=Object.getOwnPropertyNames(A),s=o.length;s-- >0;)g=o[s],(!i||i(g,A,r))&&!E[g]&&(r[g]=A[g],E[g]=!0);A=t!==!1&&unA(A)}while(A&&(!t||t(A,r))&&A!==Object.prototype);return r},wtr=(A,r,t)=>{A=String(A),(t===void 0||t>A.length)&&(t=A.length),t-=r.length;let i=A.indexOf(r,t);return i!==-1&&i===t},vtr=A=>{if(!A)return null;if(Cb(A))return A;let r=A.length;if(!PIA(r))return null;let t=new Array(r);for(;r-- >0;)t[r]=A[r];return t},ytr=(A=>r=>A&&r instanceof A)(typeof Uint8Array<"u"&&unA(Uint8Array)),Ctr=(A,r)=>{let i=(A&&A[Symbol.iterator]).call(A),o;for(;(o=i.next())&&!o.done;){let s=o.value;r.call(A,s[0],s[1])}},Itr=(A,r)=>{let t,i=[];for(;(t=A.exec(r))!==null;)i.push(t);return i},btr=H4("HTMLFormElement"),Otr=A=>A.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(t,i,o){return i.toUpperCase()+o}),RIA=(({hasOwnProperty:A})=>(r,t)=>A.call(r,t))(Object.prototype),Mtr=H4("RegExp"),LIA=(A,r)=>{let t=Object.getOwnPropertyDescriptors(A),i={};Y6(t,(o,s)=>{r(o,s,A)!==!1&&(i[s]=o)}),Object.defineProperties(A,i)},ktr=A=>{LIA(A,(r,t)=>{if(x4(A)&&["arguments","caller","callee"].indexOf(t)!==-1)return!1;let i=A[t];if(x4(i)){if(r.enumerable=!1,"writable"in r){r.writable=!1;return}r.set||(r.set=()=>{throw Error("Can not rewrite read-only method '"+t+"'")})}})},xtr=(A,r)=>{let t={},i=o=>{o.forEach(s=>{t[s]=!0})};return Cb(A)?i(A):i(String(A).split(r)),t},Htr=()=>{},Str=(A,r)=>(A=+A,Number.isFinite(A)?A:r),cnA="abcdefghijklmnopqrstuvwxyz",TIA="0123456789",jIA={DIGIT:TIA,ALPHA:cnA,ALPHA_DIGIT:cnA+cnA.toUpperCase()+TIA},Ftr=(A=16,r=jIA.ALPHA_DIGIT)=>{let t="",{length:i}=r;for(;A--;)t+=r[Math.random()*i|0];return t};function Rtr(A){return!!(A&&x4(A.append)&&A[Symbol.toStringTag]==="FormData"&&A[Symbol.iterator])}var Ttr=A=>{let r=new Array(10),t=(i,o)=>{if(gnA(i)){if(r.indexOf(i)>=0)return;if(!("toJSON"in i)){r[o]=i;let s=Cb(i)?[]:{};return Y6(i,(g,E)=>{let p=t(g,o+1);!G6(p)&&(s[E]=p)}),r[o]=void 0,s}}return i};return t(A,0)},Qi={isArray:Cb,isArrayBuffer:NIA,isBuffer:otr,isFormData:ftr,isArrayBufferView:str,isString:ctr,isNumber:PIA,isBoolean:ltr,isObject:gnA,isPlainObject:yN,isUndefined:G6,isDate:utr,isFile:gtr,isBlob:dtr,isRegExp:Mtr,isFunction:x4,isStream:Etr,isURLSearchParams:Btr,isTypedArray:ytr,isFileList:ptr,forEach:Y6,merge:lnA,extend:Qtr,trim:htr,stripBOM:mtr,inherits:Dtr,toFlatObject:_tr,kindOf:CN,kindOfTest:H4,endsWith:wtr,toArray:vtr,forEachEntry:Ctr,matchAll:Itr,isHTMLForm:btr,hasOwnProperty:RIA,hasOwnProp:RIA,reduceDescriptors:LIA,freezeMethods:ktr,toObjectSet:xtr,toCamelCase:Otr,noop:Htr,toFiniteNumber:Str,findKey:GIA,global:YIA,isContextDefined:UIA,ALPHABET:jIA,generateString:Ftr,isSpecCompliantForm:Rtr,toJSONObject:Ttr};function Ib(A,r,t,i,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=A,this.name="AxiosError",r&&(this.code=r),t&&(this.config=t),i&&(this.request=i),o&&(this.response=o)}Qi.inherits(Ib,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Qi.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var WIA=Ib.prototype,JIA={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(A=>{JIA[A]={value:A}});Object.defineProperties(Ib,JIA);Object.defineProperty(WIA,"isAxiosError",{value:!0});Ib.from=(A,r,t,i,o,s)=>{let g=Object.create(WIA);return Qi.toFlatObject(A,g,function(p){return p!==Error.prototype},E=>E!=="isAxiosError"),Ib.call(g,A.message,r,t,i,o),g.cause=A,g.name=A.name,s&&Object.assign(g,s),g};var go=Ib;var bbA=Yn(IbA(),1),MN=bbA.default;function wnA(A){return Qi.isPlainObject(A)||Qi.isArray(A)}function MbA(A){return Qi.endsWith(A,"[]")?A.slice(0,-2):A}function ObA(A,r,t){return A?A.concat(r).map(function(o,s){return o=MbA(o),!t&&s?"["+o+"]":o}).join(t?".":""):r}function mir(A){return Qi.isArray(A)&&!A.some(wnA)}var Dir=Qi.toFlatObject(Qi,{},null,function(r){return/^is[A-Z]/.test(r)});function _ir(A,r,t){if(!Qi.isObject(A))throw new TypeError("target must be an object");r=r||new(MN||FormData),t=Qi.toFlatObject(t,{metaTokens:!0,dots:!1,indexes:!1},!1,function(P,H){return!Qi.isUndefined(H[P])});let i=t.metaTokens,o=t.visitor||m,s=t.dots,g=t.indexes,p=(t.Blob||typeof Blob<"u"&&Blob)&&Qi.isSpecCompliantForm(r);if(!Qi.isFunction(o))throw new TypeError("visitor must be a function");function B(k){if(k===null)return"";if(Qi.isDate(k))return k.toISOString();if(!p&&Qi.isBlob(k))throw new go("Blob is not supported. Use a Buffer instead.");return Qi.isArrayBuffer(k)||Qi.isTypedArray(k)?p&&typeof Blob=="function"?new Blob([k]):Buffer.from(k):k}function m(k,P,H){let T=k;if(k&&!H&&typeof k=="object"){if(Qi.endsWith(P,"{}"))P=i?P:P.slice(0,-2),k=JSON.stringify(k);else if(Qi.isArray(k)&&mir(k)||(Qi.isFileList(k)||Qi.endsWith(P,"[]"))&&(T=Qi.toArray(k)))return P=MbA(P),T.forEach(function(F,y){!(Qi.isUndefined(F)||F===null)&&r.append(g===!0?ObA([P],y,s):g===null?P:P+"[]",B(F))}),!1}return wnA(k)?!0:(r.append(ObA(H,P,s),B(k)),!1)}let _=[],x=Object.assign(Dir,{defaultVisitor:m,convertValue:B,isVisitable:wnA});function O(k,P){if(!Qi.isUndefined(k)){if(_.indexOf(k)!==-1)throw Error("Circular reference detected in "+P.join("."));_.push(k),Qi.forEach(k,function(T,v){(!(Qi.isUndefined(T)||T===null)&&o.call(r,T,Qi.isString(v)?v.trim():v,P,x))===!0&&O(T,P?P.concat(v):[v])}),_.pop()}}if(!Qi.isObject(A))throw new TypeError("data must be an object");return O(A),r}var X_=_ir;function kbA(A){let r={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(A).replace(/[!'()~]|%20|%00/g,function(i){return r[i]})}function xbA(A,r){this._pairs=[],A&&X_(A,this,r)}var HbA=xbA.prototype;HbA.append=function(r,t){this._pairs.push([r,t])};HbA.toString=function(r){let t=r?function(i){return r.call(this,i,kbA)}:kbA;return this._pairs.map(function(o){return t(o[0])+"="+t(o[1])},"").join("&")};var SbA=xbA;function wir(A){return encodeURIComponent(A).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function _y(A,r,t){if(!r)return A;let i=t&&t.encode||wir,o=t&&t.serialize,s;if(o?s=o(r,t):s=Qi.isURLSearchParams(r)?r.toString():new SbA(r,t).toString(i),s){let g=A.indexOf("#");g!==-1&&(A=A.slice(0,g)),A+=(A.indexOf("?")===-1?"?":"&")+s}return A}var vnA=class{constructor(){this.handlers=[]}use(r,t,i){return this.handlers.push({fulfilled:r,rejected:t,synchronous:i?i.synchronous:!1,runWhen:i?i.runWhen:null}),this.handlers.length-1}eject(r){this.handlers[r]&&(this.handlers[r]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(r){Qi.forEach(this.handlers,function(i){i!==null&&r(i)})}},ynA=vnA;var bb={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var FbA=Yn(require("url"),1),RbA=FbA.default.URLSearchParams;var Fd={isNode:!0,classes:{URLSearchParams:RbA,FormData:MN,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]};function CnA(A,r){return X_(A,new Fd.classes.URLSearchParams,Object.assign({visitor:function(t,i,o,s){return Fd.isNode&&Qi.isBuffer(t)?(this.append(i,t.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)}},r))}function vir(A){return Qi.matchAll(/\w+|\[(\w*)]/g,A).map(r=>r[0]==="[]"?"":r[1]||r[0])}function yir(A){let r={},t=Object.keys(A),i,o=t.length,s;for(i=0;i=t.length;return g=!g&&Qi.isArray(o)?o.length:g,p?(Qi.hasOwnProp(o,g)?o[g]=[o[g],i]:o[g]=i,!E):((!o[g]||!Qi.isObject(o[g]))&&(o[g]=[]),r(t,i,o[g],s)&&Qi.isArray(o[g])&&(o[g]=yir(o[g])),!E)}if(Qi.isFormData(A)&&Qi.isFunction(A.entries)){let t={};return Qi.forEachEntry(A,(i,o)=>{r(vir(i),o,t,0)}),t}return null}var kN=Cir;var Iir={"Content-Type":void 0};function bir(A,r,t){if(Qi.isString(A))try{return(r||JSON.parse)(A),Qi.trim(A)}catch(i){if(i.name!=="SyntaxError")throw i}return(t||JSON.stringify)(A)}var xN={transitional:bb,adapter:["xhr","http"],transformRequest:[function(r,t){let i=t.getContentType()||"",o=i.indexOf("application/json")>-1,s=Qi.isObject(r);if(s&&Qi.isHTMLForm(r)&&(r=new FormData(r)),Qi.isFormData(r))return o&&o?JSON.stringify(kN(r)):r;if(Qi.isArrayBuffer(r)||Qi.isBuffer(r)||Qi.isStream(r)||Qi.isFile(r)||Qi.isBlob(r))return r;if(Qi.isArrayBufferView(r))return r.buffer;if(Qi.isURLSearchParams(r))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),r.toString();let E;if(s){if(i.indexOf("application/x-www-form-urlencoded")>-1)return CnA(r,this.formSerializer).toString();if((E=Qi.isFileList(r))||i.indexOf("multipart/form-data")>-1){let p=this.env&&this.env.FormData;return X_(E?{"files[]":r}:r,p&&new p,this.formSerializer)}}return s||o?(t.setContentType("application/json",!1),bir(r)):r}],transformResponse:[function(r){let t=this.transitional||xN.transitional,i=t&&t.forcedJSONParsing,o=this.responseType==="json";if(r&&Qi.isString(r)&&(i&&!this.responseType||o)){let g=!(t&&t.silentJSONParsing)&&o;try{return JSON.parse(r)}catch(E){if(g)throw E.name==="SyntaxError"?go.from(E,go.ERR_BAD_RESPONSE,this,null,this.response):E}}return r}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Fd.classes.FormData,Blob:Fd.classes.Blob},validateStatus:function(r){return r>=200&&r<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};Qi.forEach(["delete","get","head"],function(r){xN.headers[r]={}});Qi.forEach(["post","put","patch"],function(r){xN.headers[r]=Qi.merge(Iir)});var Ob=xN;var Oir=Qi.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),TbA=A=>{let r={},t,i,o;return A&&A.split(` -`).forEach(function(g){o=g.indexOf(":"),t=g.substring(0,o).trim().toLowerCase(),i=g.substring(o+1).trim(),!(!t||r[t]&&Oir[t])&&(t==="set-cookie"?r[t]?r[t].push(i):r[t]=[i]:r[t]=r[t]?r[t]+", "+i:i)}),r};var NbA=Symbol("internals");function U6(A){return A&&String(A).trim().toLowerCase()}function HN(A){return A===!1||A==null?A:Qi.isArray(A)?A.map(HN):String(A)}function Mir(A){let r=Object.create(null),t=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,i;for(;i=t.exec(A);)r[i[1]]=i[2];return r}var kir=A=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(A.trim());function InA(A,r,t,i,o){if(Qi.isFunction(i))return i.call(this,r,t);if(o&&(r=t),!!Qi.isString(r)){if(Qi.isString(i))return r.indexOf(i)!==-1;if(Qi.isRegExp(i))return i.test(r)}}function xir(A){return A.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(r,t,i)=>t.toUpperCase()+i)}function Hir(A,r){let t=Qi.toCamelCase(" "+r);["get","set","has"].forEach(i=>{Object.defineProperty(A,i+t,{value:function(o,s,g){return this[i].call(this,r,o,s,g)},configurable:!0})})}var Mb=class{constructor(r){r&&this.set(r)}set(r,t,i){let o=this;function s(E,p,B){let m=U6(p);if(!m)throw new Error("header name must be a non-empty string");let _=Qi.findKey(o,m);(!_||o[_]===void 0||B===!0||B===void 0&&o[_]!==!1)&&(o[_||p]=HN(E))}let g=(E,p)=>Qi.forEach(E,(B,m)=>s(B,m,p));return Qi.isPlainObject(r)||r instanceof this.constructor?g(r,t):Qi.isString(r)&&(r=r.trim())&&!kir(r)?g(TbA(r),t):r!=null&&s(t,r,i),this}get(r,t){if(r=U6(r),r){let i=Qi.findKey(this,r);if(i){let o=this[i];if(!t)return o;if(t===!0)return Mir(o);if(Qi.isFunction(t))return t.call(this,o,i);if(Qi.isRegExp(t))return t.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(r,t){if(r=U6(r),r){let i=Qi.findKey(this,r);return!!(i&&this[i]!==void 0&&(!t||InA(this,this[i],i,t)))}return!1}delete(r,t){let i=this,o=!1;function s(g){if(g=U6(g),g){let E=Qi.findKey(i,g);E&&(!t||InA(i,i[E],E,t))&&(delete i[E],o=!0)}}return Qi.isArray(r)?r.forEach(s):s(r),o}clear(r){let t=Object.keys(this),i=t.length,o=!1;for(;i--;){let s=t[i];(!r||InA(this,this[s],s,r,!0))&&(delete this[s],o=!0)}return o}normalize(r){let t=this,i={};return Qi.forEach(this,(o,s)=>{let g=Qi.findKey(i,s);if(g){t[g]=HN(o),delete t[s];return}let E=r?xir(s):String(s).trim();E!==s&&delete t[s],t[E]=HN(o),i[E]=!0}),this}concat(...r){return this.constructor.concat(this,...r)}toJSON(r){let t=Object.create(null);return Qi.forEach(this,(i,o)=>{i!=null&&i!==!1&&(t[o]=r&&Qi.isArray(i)?i.join(", "):i)}),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([r,t])=>r+": "+t).join(` -`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(r){return r instanceof this?r:new this(r)}static concat(r,...t){let i=new this(r);return t.forEach(o=>i.set(o)),i}static accessor(r){let i=(this[NbA]=this[NbA]={accessors:{}}).accessors,o=this.prototype;function s(g){let E=U6(g);i[E]||(Hir(o,g),i[E]=!0)}return Qi.isArray(r)?r.forEach(s):s(r),this}};Mb.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Qi.freezeMethods(Mb.prototype);Qi.freezeMethods(Mb);var up=Mb;function L6(A,r){let t=this||Ob,i=r||t,o=up.from(i.headers),s=i.data;return Qi.forEach(A,function(E){s=E.call(t,s,o.normalize(),r?r.status:void 0)}),o.normalize(),s}function j6(A){return!!(A&&A.__CANCEL__)}function PbA(A,r,t){go.call(this,A??"canceled",go.ERR_CANCELED,r,t),this.name="CanceledError"}Qi.inherits(PbA,go,{__CANCEL__:!0});var T0=PbA;function Z_(A,r,t){let i=t.config.validateStatus;!t.status||!i||i(t.status)?A(t):r(new go("Request failed with status code "+t.status,[go.ERR_BAD_REQUEST,go.ERR_BAD_RESPONSE][Math.floor(t.status/100)-4],t.config,t.request,t))}function bnA(A){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(A)}function OnA(A,r){return r?A.replace(/\/+$/,"")+"/"+r.replace(/^\/+/,""):A}function wy(A,r){return A&&!bnA(r)?OnA(A,r):r}var s5A=Yn(YbA(),1),c5A=Yn(require("http"),1),l5A=Yn(require("https"),1),u5A=Yn(require("util"),1),g5A=Yn(KbA(),1),S4=Yn(require("zlib"),1);var yy="1.3.6";function J6(A){let r=/^([-+\w]{1,25})(:?\/\/|:)/.exec(A);return r&&r[1]||""}var qir=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function FnA(A,r,t){let i=t&&t.Blob||Fd.classes.Blob,o=J6(A);if(r===void 0&&i&&(r=!0),o==="data"){A=o.length?A.slice(o.length+1):A;let s=qir.exec(A);if(!s)throw new go("Invalid URL",go.ERR_INVALID_URL);let g=s[1],E=s[2],p=s[3],B=Buffer.from(decodeURIComponent(p),E?"base64":"utf8");if(r){if(!i)throw new go("Blob is not supported",go.ERR_NOT_SUPPORT);return new i([B],{type:g})}return B}throw new go("Unsupported protocol "+o,go.ERR_NOT_SUPPORT)}var Cy=Yn(require("stream"),1);var ZbA=Yn(require("stream"),1);function Vir(A,r){let t=0,i=1e3/r,o=null;return function(g,E){let p=Date.now();if(g||p-t>i)return o&&(clearTimeout(o),o=null),t=p,A.apply(null,E);o||(o=setTimeout(()=>(o=null,t=Date.now(),A.apply(null,E)),i-(p-t)))}}var XbA=Vir;function zir(A,r){A=A||10;let t=new Array(A),i=new Array(A),o=0,s=0,g;return r=r!==void 0?r:1e3,function(p){let B=Date.now(),m=i[s];g||(g=B),t[o]=p,i[o]=B;let _=s,x=0;for(;_!==o;)x+=t[_++],_=_%A;if(o=(o+1)%A,o===s&&(s=(s+1)%A),B-g!Qi.isUndefined(p[E])),super({readableHighWaterMark:r.chunkSize});let t=this,i=this[RN]={length:r.length,timeWindow:r.timeWindow,ticksRate:r.ticksRate,chunkSize:r.chunkSize,maxRate:r.maxRate,minChunkSize:r.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null},o=FN(i.ticksRate*r.samplesCount,i.timeWindow);this.on("newListener",E=>{E==="progress"&&(i.isCaptured||(i.isCaptured=!0))});let s=0;i.updateProgress=XbA(function(){let p=i.length,B=i.bytesSeen,m=B-s;if(!m||t.destroyed)return;let _=o(m);s=B,process.nextTick(()=>{t.emit("progress",{loaded:B,total:p,progress:p?B/p:void 0,bytes:m,rate:_||void 0,estimated:_&&p&&B<=p?(p-B)/_:void 0})})},i.ticksRate);let g=()=>{i.updateProgress(!0)};this.once("end",g),this.once("error",g)}_read(r){let t=this[RN];return t.onReadCallback&&t.onReadCallback(),super._read(r)}_transform(r,t,i){let o=this,s=this[RN],g=s.maxRate,E=this.readableHighWaterMark,p=s.timeWindow,B=1e3/p,m=g/B,_=s.minChunkSize!==!1?Math.max(s.minChunkSize,m*.01):0;function x(k,P){let H=Buffer.byteLength(k);s.bytesSeen+=H,s.bytes+=H,s.isCaptured&&s.updateProgress(),o.push(k)?process.nextTick(P):s.onReadCallback=()=>{s.onReadCallback=null,process.nextTick(P)}}let O=(k,P)=>{let H=Buffer.byteLength(k),T=null,v=E,F,y=0;if(g){let S=Date.now();(!s.ts||(y=S-s.ts)>=p)&&(s.ts=S,F=m-s.bytes,s.bytes=F<0?-F:0,y=0),F=m-s.bytes}if(g){if(F<=0)return setTimeout(()=>{P(null,k)},p-y);Fv&&H-v>_&&(T=k.subarray(v),k=k.subarray(0,v)),x(k,T?()=>{process.nextTick(P,null,T)}:P)};O(r,function k(P,H){if(P)return i(P);H?O(H,k):i(null)})}setLength(r){return this[RN].length=+r,this}},TnA=RnA;var d5A=Yn(require("events"),1);var A5A=require("util"),e5A=require("stream");var{asyncIterator:$bA}=Symbol,Kir=async function*(A){A.stream?yield*A.stream():A.arrayBuffer?yield await A.arrayBuffer():A[$bA]?yield*A[$bA]():yield A},TN=Kir;var Xir=Qi.ALPHABET.ALPHA_DIGIT+"-_",q6=new A5A.TextEncoder,$_=`\r -`,Zir=q6.encode($_),$ir=2,NnA=class{constructor(r,t){let{escapeName:i}=this.constructor,o=Qi.isString(t),s=`Content-Disposition: form-data; name="${i(r)}"${!o&&t.name?`; filename="${i(t.name)}"`:""}${$_}`;o?t=q6.encode(String(t).replace(/\r?\n|\r\n?/g,$_)):s+=`Content-Type: ${t.type||"application/octet-stream"}${$_}`,this.headers=q6.encode(s+$_),this.contentLength=o?t.byteLength:t.size,this.size=this.headers.byteLength+this.contentLength+$ir,this.name=r,this.value=t}async*encode(){yield this.headers;let{value:r}=this;Qi.isTypedArray(r)?yield r:yield*TN(r),yield Zir}static escapeName(r){return String(r).replace(/[\r\n"]/g,t=>({"\r":"%0D","\n":"%0A",'"':"%22"})[t])}},Anr=(A,r,t)=>{let{tag:i="form-data-boundary",size:o=25,boundary:s=i+"-"+Qi.generateString(o,Xir)}=t||{};if(!Qi.isFormData(A))throw TypeError("FormData instance required");if(s.length<1||s.length>70)throw Error("boundary must be 10-70 characters long");let g=q6.encode("--"+s+$_),E=q6.encode("--"+s+"--"+$_+$_),p=E.byteLength,B=Array.from(A.entries()).map(([_,x])=>{let O=new NnA(_,x);return p+=O.size,O});p+=g.byteLength*B.length,p=Qi.toFiniteNumber(p);let m={"Content-Type":`multipart/form-data; boundary=${s}`};return Number.isFinite(p)&&(m["Content-Length"]=p),r&&r(m),e5A.Readable.from(async function*(){for(let _ of B)yield g,yield*_.encode();yield E}())},r5A=Anr;var t5A=Yn(require("stream"),1),PnA=class extends t5A.default.Transform{__transform(r,t,i){this.push(r),i()}_transform(r,t,i){if(r.length!==0&&(this._transform=this.__transform,r[0]!==120)){let o=Buffer.alloc(2);o[0]=120,o[1]=156,this.push(o,t)}this.__transform(r,t,i)}},i5A=PnA;var n5A={flush:S4.default.constants.Z_SYNC_FLUSH,finishFlush:S4.default.constants.Z_SYNC_FLUSH},enr={flush:S4.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:S4.default.constants.BROTLI_OPERATION_FLUSH},a5A=Qi.isFunction(S4.default.createBrotliDecompress),{http:rnr,https:tnr}=g5A.default,inr=/https:?/,o5A=Fd.protocols.map(A=>A+":");function nnr(A){A.beforeRedirects.proxy&&A.beforeRedirects.proxy(A),A.beforeRedirects.config&&A.beforeRedirects.config(A)}function p5A(A,r,t){let i=r;if(!i&&i!==!1){let o=(0,s5A.getProxyForUrl)(t);o&&(i=new URL(o))}if(i){if(i.username&&(i.auth=(i.username||"")+":"+(i.password||"")),i.auth){(i.auth.username||i.auth.password)&&(i.auth=(i.auth.username||"")+":"+(i.auth.password||""));let s=Buffer.from(i.auth,"utf8").toString("base64");A.headers["Proxy-Authorization"]="Basic "+s}A.headers.host=A.hostname+(A.port?":"+A.port:"");let o=i.hostname||i.host;A.hostname=o,A.host=o,A.port=i.port,A.path=t,i.protocol&&(A.protocol=i.protocol.includes(":")?i.protocol:`${i.protocol}:`)}A.beforeRedirects.proxy=function(s){p5A(s,r,s.href)}}var anr=typeof process<"u"&&Qi.kindOf(process)==="process",onr=A=>new Promise((r,t)=>{let i,o,s=(p,B)=>{o||(o=!0,i&&i(p,B))},g=p=>{s(p),r(p)},E=p=>{s(p,!0),t(p)};A(g,E,p=>i=p).catch(E)}),E5A=anr&&function(r){return onr(async function(i,o,s){let{data:g}=r,{responseType:E,responseEncoding:p}=r,B=r.method.toUpperCase(),m,_=!1,x,O=new d5A.default,k=()=>{r.cancelToken&&r.cancelToken.unsubscribe(P),r.signal&&r.signal.removeEventListener("abort",P),O.removeAllListeners()};s((q,X)=>{m=!0,X&&(_=!0,k())});function P(q){O.emit("abort",!q||q.type?new T0(null,r,x):q)}O.once("abort",o),(r.cancelToken||r.signal)&&(r.cancelToken&&r.cancelToken.subscribe(P),r.signal&&(r.signal.aborted?P():r.signal.addEventListener("abort",P)));let H=wy(r.baseURL,r.url),T=new URL(H,"http://localhost"),v=T.protocol||o5A[0];if(v==="data:"){let q;if(B!=="GET")return Z_(i,o,{status:405,statusText:"method not allowed",headers:{},config:r});try{q=FnA(r.url,E==="blob",{Blob:r.env&&r.env.Blob})}catch(X){throw go.from(X,go.ERR_BAD_REQUEST,r)}return E==="text"?(q=q.toString(p),(!p||p==="utf8")&&(q=Qi.stripBOM(q))):E==="stream"&&(q=Cy.default.Readable.from(q)),Z_(i,o,{data:q,status:200,statusText:"OK",headers:new up,config:r})}if(o5A.indexOf(v)===-1)return o(new go("Unsupported protocol "+v,go.ERR_BAD_REQUEST,r));let F=up.from(r.headers).normalize();F.set("User-Agent","axios/"+yy,!1);let y=r.onDownloadProgress,S=r.onUploadProgress,U=r.maxRate,V,wA;if(Qi.isSpecCompliantForm(g)){let q=F.getContentType(/boundary=([-_\w\d]{10,70})/i);g=r5A(g,X=>{F.set(X)},{tag:`axios-${yy}-boundary`,boundary:q&&q[1]||void 0})}else if(Qi.isFormData(g)&&Qi.isFunction(g.getHeaders)){if(F.set(g.getHeaders()),!F.hasContentLength())try{let q=await u5A.default.promisify(g.getLength).call(g);Number.isFinite(q)&&q>=0&&F.setContentLength(q)}catch{}}else if(Qi.isBlob(g))g.size&&F.setContentType(g.type||"application/octet-stream"),F.setContentLength(g.size||0),g=Cy.default.Readable.from(TN(g));else if(g&&!Qi.isStream(g)){if(!Buffer.isBuffer(g))if(Qi.isArrayBuffer(g))g=Buffer.from(new Uint8Array(g));else if(Qi.isString(g))g=Buffer.from(g,"utf-8");else return o(new go("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",go.ERR_BAD_REQUEST,r));if(F.setContentLength(g.length,!1),r.maxBodyLength>-1&&g.length>r.maxBodyLength)return o(new go("Request body larger than maxBodyLength limit",go.ERR_BAD_REQUEST,r))}let IA=Qi.toFiniteNumber(F.getContentLength());Qi.isArray(U)?(V=U[0],wA=U[1]):V=wA=U,g&&(S||V)&&(Qi.isStream(g)||(g=Cy.default.Readable.from(g,{objectMode:!1})),g=Cy.default.pipeline([g,new TnA({length:IA,maxRate:Qi.toFiniteNumber(V)})],Qi.noop),S&&g.on("progress",q=>{S(Object.assign(q,{upload:!0}))}));let pA;if(r.auth){let q=r.auth.username||"",X=r.auth.password||"";pA=q+":"+X}if(!pA&&T.username){let q=T.username,X=T.password;pA=q+":"+X}pA&&F.delete("authorization");let oA;try{oA=_y(T.pathname+T.search,r.params,r.paramsSerializer).replace(/^\?/,"")}catch(q){let X=new Error(q.message);return X.config=r,X.url=r.url,X.exists=!0,o(X)}F.set("Accept-Encoding","gzip, compress, deflate"+(a5A?", br":""),!1);let cA={path:oA,method:B,headers:F.toJSON(),agents:{http:r.httpAgent,https:r.httpsAgent},auth:pA,protocol:v,beforeRedirect:nnr,beforeRedirects:{}};r.socketPath?cA.socketPath=r.socketPath:(cA.hostname=T.hostname,cA.port=T.port,p5A(cA,r.proxy,v+"//"+T.hostname+(T.port?":"+T.port:"")+cA.path));let eA,Y=inr.test(cA.protocol);if(cA.agent=Y?r.httpsAgent:r.httpAgent,r.transport?eA=r.transport:r.maxRedirects===0?eA=Y?l5A.default:c5A.default:(r.maxRedirects&&(cA.maxRedirects=r.maxRedirects),r.beforeRedirect&&(cA.beforeRedirects.config=r.beforeRedirect),eA=Y?tnr:rnr),r.maxBodyLength>-1?cA.maxBodyLength=r.maxBodyLength:cA.maxBodyLength=1/0,r.insecureHTTPParser&&(cA.insecureHTTPParser=r.insecureHTTPParser),x=eA.request(cA,function(X){if(x.destroyed)return;let Z=[X],K=+X.headers["content-length"];if(y){let CA=new TnA({length:Qi.toFiniteNumber(K),maxRate:Qi.toFiniteNumber(wA)});y&&CA.on("progress",z=>{y(Object.assign(z,{download:!0}))}),Z.push(CA)}let J=X,sA=X.req||x;if(r.decompress!==!1&&X.headers["content-encoding"])switch((B==="HEAD"||X.statusCode===204)&&delete X.headers["content-encoding"],X.headers["content-encoding"]){case"gzip":case"x-gzip":case"compress":case"x-compress":Z.push(S4.default.createUnzip(n5A)),delete X.headers["content-encoding"];break;case"deflate":Z.push(new i5A),Z.push(S4.default.createUnzip(n5A)),delete X.headers["content-encoding"];break;case"br":a5A&&(Z.push(S4.default.createBrotliDecompress(enr)),delete X.headers["content-encoding"])}J=Z.length>1?Cy.default.pipeline(Z,Qi.noop):Z[0];let uA=Cy.default.finished(J,()=>{uA(),k()}),BA={status:X.statusCode,statusText:X.statusMessage,headers:new up(X.headers),config:r,request:sA};if(E==="stream")BA.data=J,Z_(i,o,BA);else{let CA=[],z=0;J.on("data",function(iA){CA.push(iA),z+=iA.length,r.maxContentLength>-1&&z>r.maxContentLength&&(_=!0,J.destroy(),o(new go("maxContentLength size of "+r.maxContentLength+" exceeded",go.ERR_BAD_RESPONSE,r,sA)))}),J.on("aborted",function(){if(_)return;let iA=new go("maxContentLength size of "+r.maxContentLength+" exceeded",go.ERR_BAD_RESPONSE,r,sA);J.destroy(iA),o(iA)}),J.on("error",function(iA){x.destroyed||o(go.from(iA,null,r,sA))}),J.on("end",function(){try{let iA=CA.length===1?CA[0]:Buffer.concat(CA);E!=="arraybuffer"&&(iA=iA.toString(p),(!p||p==="utf8")&&(iA=Qi.stripBOM(iA))),BA.data=iA}catch(iA){o(go.from(iA,null,r,BA.request,BA))}Z_(i,o,BA)})}O.once("abort",CA=>{J.destroyed||(J.emit("error",CA),J.destroy())})}),O.once("abort",q=>{o(q),x.destroy(q)}),x.on("error",function(X){o(go.from(X,null,r,x))}),x.on("socket",function(X){X.setKeepAlive(!0,1e3*60)}),r.timeout){let q=parseInt(r.timeout,10);if(isNaN(q)){o(new go("error trying to parse `config.timeout` to int",go.ERR_BAD_OPTION_VALUE,r,x));return}x.setTimeout(q,function(){if(m)return;let Z=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded",K=r.transitional||bb;r.timeoutErrorMessage&&(Z=r.timeoutErrorMessage),o(new go(Z,K.clarifyTimeoutError?go.ETIMEDOUT:go.ECONNABORTED,r,x)),P()})}if(Qi.isStream(g)){let q=!1,X=!1;g.on("end",()=>{q=!0}),g.once("error",Z=>{X=!0,x.destroy(Z)}),g.on("close",()=>{!q&&!X&&P(new T0("Request stream has been aborted",r,x))}),g.pipe(x)}else x.end(g)})};var f5A=Fd.isStandardBrowserEnv?function(){return{write:function(t,i,o,s,g,E){let p=[];p.push(t+"="+encodeURIComponent(i)),Qi.isNumber(o)&&p.push("expires="+new Date(o).toGMTString()),Qi.isString(s)&&p.push("path="+s),Qi.isString(g)&&p.push("domain="+g),E===!0&&p.push("secure"),document.cookie=p.join("; ")},read:function(t){let i=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return i?decodeURIComponent(i[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();var B5A=Fd.isStandardBrowserEnv?function(){let r=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a"),i;function o(s){let g=s;return r&&(t.setAttribute("href",g),g=t.href),t.setAttribute("href",g),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:t.pathname.charAt(0)==="/"?t.pathname:"/"+t.pathname}}return i=o(window.location.href),function(g){let E=Qi.isString(g)?o(g):g;return E.protocol===i.protocol&&E.host===i.host}}():function(){return function(){return!0}}();function h5A(A,r){let t=0,i=FN(50,250);return o=>{let s=o.loaded,g=o.lengthComputable?o.total:void 0,E=s-t,p=i(E),B=s<=g;t=s;let m={loaded:s,total:g,progress:g?s/g:void 0,bytes:E,rate:p||void 0,estimated:p&&g&&B?(g-s)/p:void 0,event:o};m[r?"download":"upload"]=!0,A(m)}}var snr=typeof XMLHttpRequest<"u",Q5A=snr&&function(A){return new Promise(function(t,i){let o=A.data,s=up.from(A.headers).normalize(),g=A.responseType,E;function p(){A.cancelToken&&A.cancelToken.unsubscribe(E),A.signal&&A.signal.removeEventListener("abort",E)}Qi.isFormData(o)&&(Fd.isStandardBrowserEnv||Fd.isStandardBrowserWebWorkerEnv)&&s.setContentType(!1);let B=new XMLHttpRequest;if(A.auth){let O=A.auth.username||"",k=A.auth.password?unescape(encodeURIComponent(A.auth.password)):"";s.set("Authorization","Basic "+btoa(O+":"+k))}let m=wy(A.baseURL,A.url);B.open(A.method.toUpperCase(),_y(m,A.params,A.paramsSerializer),!0),B.timeout=A.timeout;function _(){if(!B)return;let O=up.from("getAllResponseHeaders"in B&&B.getAllResponseHeaders()),P={data:!g||g==="text"||g==="json"?B.responseText:B.response,status:B.status,statusText:B.statusText,headers:O,config:A,request:B};Z_(function(T){t(T),p()},function(T){i(T),p()},P),B=null}if("onloadend"in B?B.onloadend=_:B.onreadystatechange=function(){!B||B.readyState!==4||B.status===0&&!(B.responseURL&&B.responseURL.indexOf("file:")===0)||setTimeout(_)},B.onabort=function(){B&&(i(new go("Request aborted",go.ECONNABORTED,A,B)),B=null)},B.onerror=function(){i(new go("Network Error",go.ERR_NETWORK,A,B)),B=null},B.ontimeout=function(){let k=A.timeout?"timeout of "+A.timeout+"ms exceeded":"timeout exceeded",P=A.transitional||bb;A.timeoutErrorMessage&&(k=A.timeoutErrorMessage),i(new go(k,P.clarifyTimeoutError?go.ETIMEDOUT:go.ECONNABORTED,A,B)),B=null},Fd.isStandardBrowserEnv){let O=(A.withCredentials||B5A(m))&&A.xsrfCookieName&&f5A.read(A.xsrfCookieName);O&&s.set(A.xsrfHeaderName,O)}o===void 0&&s.setContentType(null),"setRequestHeader"in B&&Qi.forEach(s.toJSON(),function(k,P){B.setRequestHeader(P,k)}),Qi.isUndefined(A.withCredentials)||(B.withCredentials=!!A.withCredentials),g&&g!=="json"&&(B.responseType=A.responseType),typeof A.onDownloadProgress=="function"&&B.addEventListener("progress",h5A(A.onDownloadProgress,!0)),typeof A.onUploadProgress=="function"&&B.upload&&B.upload.addEventListener("progress",h5A(A.onUploadProgress)),(A.cancelToken||A.signal)&&(E=O=>{B&&(i(!O||O.type?new T0(null,A,B):O),B.abort(),B=null)},A.cancelToken&&A.cancelToken.subscribe(E),A.signal&&(A.signal.aborted?E():A.signal.addEventListener("abort",E)));let x=J6(m);if(x&&Fd.protocols.indexOf(x)===-1){i(new go("Unsupported protocol "+x+":",go.ERR_BAD_REQUEST,A));return}B.send(o||null)})};var NN={http:E5A,xhr:Q5A};Qi.forEach(NN,(A,r)=>{if(A){try{Object.defineProperty(A,"name",{value:r})}catch{}Object.defineProperty(A,"adapterName",{value:r})}});var m5A={getAdapter:A=>{A=Qi.isArray(A)?A:[A];let{length:r}=A,t,i;for(let o=0;oA instanceof up?A.toJSON():A;function F4(A,r){r=r||{};let t={};function i(B,m,_){return Qi.isPlainObject(B)&&Qi.isPlainObject(m)?Qi.merge.call({caseless:_},B,m):Qi.isPlainObject(m)?Qi.merge({},m):Qi.isArray(m)?m.slice():m}function o(B,m,_){if(Qi.isUndefined(m)){if(!Qi.isUndefined(B))return i(void 0,B,_)}else return i(B,m,_)}function s(B,m){if(!Qi.isUndefined(m))return i(void 0,m)}function g(B,m){if(Qi.isUndefined(m)){if(!Qi.isUndefined(B))return i(void 0,B)}else return i(void 0,m)}function E(B,m,_){if(_ in r)return i(B,m);if(_ in A)return i(void 0,B)}let p={url:s,method:s,data:s,baseURL:g,transformRequest:g,transformResponse:g,paramsSerializer:g,timeout:g,timeoutMessage:g,withCredentials:g,adapter:g,responseType:g,xsrfCookieName:g,xsrfHeaderName:g,onUploadProgress:g,onDownloadProgress:g,decompress:g,maxContentLength:g,maxBodyLength:g,beforeRedirect:g,transport:g,httpAgent:g,httpsAgent:g,cancelToken:g,socketPath:g,responseEncoding:g,validateStatus:E,headers:(B,m)=>o(D5A(B),D5A(m),!0)};return Qi.forEach(Object.keys(A).concat(Object.keys(r)),function(m){let _=p[m]||o,x=_(A[m],r[m],m);Qi.isUndefined(x)&&_!==E||(t[m]=x)}),t}var YnA={};["object","boolean","number","function","string","symbol"].forEach((A,r)=>{YnA[A]=function(i){return typeof i===A||"a"+(r<1?"n ":" ")+A}});var _5A={};YnA.transitional=function(r,t,i){function o(s,g){return"[Axios v"+yy+"] Transitional option '"+s+"'"+g+(i?". "+i:"")}return(s,g,E)=>{if(r===!1)throw new go(o(g," has been removed"+(t?" in "+t:"")),go.ERR_DEPRECATED);return t&&!_5A[g]&&(_5A[g]=!0,console.warn(o(g," has been deprecated since v"+t+" and will be removed in the near future"))),r?r(s,g,E):!0}};function cnr(A,r,t){if(typeof A!="object")throw new go("options must be an object",go.ERR_BAD_OPTION_VALUE);let i=Object.keys(A),o=i.length;for(;o-- >0;){let s=i[o],g=r[s];if(g){let E=A[s],p=E===void 0||g(E,s,A);if(p!==!0)throw new go("option "+s+" must be "+p,go.ERR_BAD_OPTION_VALUE);continue}if(t!==!0)throw new go("Unknown option "+s,go.ERR_BAD_OPTION)}}var GN={assertOptions:cnr,validators:YnA};var Aw=GN.validators,xb=class{constructor(r){this.defaults=r,this.interceptors={request:new ynA,response:new ynA}}request(r,t){typeof r=="string"?(t=t||{},t.url=r):t=r||{},t=F4(this.defaults,t);let{transitional:i,paramsSerializer:o,headers:s}=t;i!==void 0&&GN.assertOptions(i,{silentJSONParsing:Aw.transitional(Aw.boolean),forcedJSONParsing:Aw.transitional(Aw.boolean),clarifyTimeoutError:Aw.transitional(Aw.boolean)},!1),o!=null&&(Qi.isFunction(o)?t.paramsSerializer={serialize:o}:GN.assertOptions(o,{encode:Aw.function,serialize:Aw.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let g;g=s&&Qi.merge(s.common,s[t.method]),g&&Qi.forEach(["delete","get","head","post","put","patch","common"],k=>{delete s[k]}),t.headers=up.concat(g,s);let E=[],p=!0;this.interceptors.request.forEach(function(P){typeof P.runWhen=="function"&&P.runWhen(t)===!1||(p=p&&P.synchronous,E.unshift(P.fulfilled,P.rejected))});let B=[];this.interceptors.response.forEach(function(P){B.push(P.fulfilled,P.rejected)});let m,_=0,x;if(!p){let k=[PN.bind(this),void 0];for(k.unshift.apply(k,E),k.push.apply(k,B),x=k.length,m=Promise.resolve(t);_{if(!i._listeners)return;let s=i._listeners.length;for(;s-- >0;)i._listeners[s](o);i._listeners=null}),this.promise.then=o=>{let s,g=new Promise(E=>{i.subscribe(E),s=E}).then(o);return g.cancel=function(){i.unsubscribe(s)},g},r(function(s,g,E){i.reason||(i.reason=new T0(s,g,E),t(i.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(r){if(this.reason){r(this.reason);return}this._listeners?this._listeners.push(r):this._listeners=[r]}unsubscribe(r){if(!this._listeners)return;let t=this._listeners.indexOf(r);t!==-1&&this._listeners.splice(t,1)}static source(){let r;return{token:new A(function(o){r=o}),cancel:r}}},w5A=UnA;function LnA(A){return function(t){return A.apply(null,t)}}function jnA(A){return Qi.isObject(A)&&A.isAxiosError===!0}var WnA={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(WnA).forEach(([A,r])=>{WnA[r]=A});var v5A=WnA;function y5A(A){let r=new V6(A),t=P6(V6.prototype.request,r);return Qi.extend(t,V6.prototype,r,{allOwnKeys:!0}),Qi.extend(t,r,null,{allOwnKeys:!0}),t.create=function(o){return y5A(F4(A,o))},t}var gp=y5A(Ob);gp.Axios=V6;gp.CanceledError=T0;gp.CancelToken=w5A;gp.isCancel=j6;gp.VERSION=yy;gp.toFormData=X_;gp.AxiosError=go;gp.Cancel=gp.CanceledError;gp.all=function(r){return Promise.all(r)};gp.spread=LnA;gp.isAxiosError=jnA;gp.mergeConfig=F4;gp.AxiosHeaders=up;gp.formToJSON=A=>kN(Qi.isHTMLForm(A)?new FormData(A):A);gp.HttpStatusCode=v5A;gp.default=gp;var Hb=gp;var{Axios:_Xt,AxiosError:wXt,CanceledError:vXt,isCancel:yXt,CancelToken:CXt,VERSION:IXt,all:bXt,Cancel:OXt,isAxiosError:MXt,spread:kXt,toFormData:xXt,AxiosHeaders:HXt,HttpStatusCode:SXt,formToJSON:FXt,mergeConfig:RXt}=Hb;var rxA=Yn(HoA());var Xy=require("fs"),OG=Yn(require("os")),aM=Yn(require("path"));var exA=Yn(HoA());var mu={};Ixe(mu,{SENTRY_DSN:()=>$kA,SentryService:()=>Q5,shouldErrorBeReported:()=>bG});var Ly=class extends Error{constructor(t,i,o){super(t);this.limit=i;this.retryAfter=o}};function x8A(A){return A instanceof Ly}var pw=class extends Error{constructor(t,i){super(t);this.traceId=i}};var Ew=class extends Error{constructor(t,i,o){super(`Request to ${t.url} failed with ${t.status} ${t.statusText}: ${i}`);this.traceId=o;this.status=t.status}status};function H8A(A){return A instanceof Ew}function S8A(A){return A instanceof Ew&&(A.status===401||A.status===403)}var M8=class extends Error{};function r5(A){return Yo(A)&&(A instanceof M8||A.message==="aborted"||A.message.includes("The operation was aborted")||A.message.includes("The user aborted a request"))}var e5=class extends Error{};ZD(mu,Yn(sg()));var $kA="https://f565373301c9c7ef18448a1c60dfde8d@o19358.ingest.sentry.io/4505743319564288",Q5=class{constructor(r){this.config=r;this.prepareReconfigure()}onConfigurationChange(r){this.config=r,this.prepareReconfigure()}prepareReconfigure(){try{let r=process.env.NODE_ENV==="production";if(!(process.env.ENABLE_SENTRY==="true"))return;let i={dsn:$kA,release:Zm.version,environment:this.config.isRunningInsideAgent?"agent":typeof process>"u"?"vscode-web":"vscode-node",debug:!r,beforeSend:(o,s)=>r&&Gm(this.config.serverEndpoint)&&bG(s.originalException)?o:null,...this.config.isRunningInsideAgent?{}:{defaultIntegrations:!1}};this.reconfigure(i)}catch(r){console.error("Failed to initialize Sentry",r)}}};function bG(A){return A instanceof Ew?A.status<500:!(r5(A)||x8A(A)||S8A(A))}var AxA="v0.0.2";async function QcA(A){let t=ri.getConfiguration().get("cody.experimental.symf.path");if(t)return Qn("symf",`using user symf: ${t}`),t;let{platform:i,arch:o}=yb();if(!i||!o)return ni.showErrorMessage(`No symf binary available for ${OG.platform()}/${OG.machine()}`),null;let s=aM.join(A.globalStorageUri.fsPath,"symf"),g=`symf-${AxA}-${o}-${i}`,E=aM.join(s,g);if(await mcA(E))return Qn("symf",`using downloaded symf "${E}"`),E;let p=i==="linux"?"linux-musl":i==="windows"?"windows-gnu":i,B=`https://github.com/sourcegraph/symf/releases/download/${AxA}/symf-${o}-${p}.zip`;Qn("symf",`downloading symf from ${B}`);try{await ni.withProgress({location:15,title:"Downloading semantic code search utility, symf",cancellable:!1},async m=>{m.report({message:"Downloading symf and extracting symf"});let _=E+".tmp";await fEr(B,_),Qn("symf",`downloaded symf to ${_}`);let x=aM.join(_,`symf-${o}-${p}`);await Xy.promises.chmod(x,493),await Xy.promises.rename(x,E),await Xy.promises.rmdir(_,{recursive:!0}),Qn("symf",`extracted symf to ${E}`)}),BEr(s,g)}catch(m){return(0,mu.captureException)(m),ni.showErrorMessage(`Failed to download symf: ${m}`),null}return E}async function mcA(A){try{return await Xy.promises.access(A),!0}catch{return!1}}async function fEr(A,r){let t=await Hb({url:A,method:"GET",responseType:"stream",maxRedirects:10}),i=exA.Extract({path:r});t.data.pipe(i),await new Promise((o,s)=>{i.on("finish",o),i.on("error",s)})}async function BEr(A,r){let i=(await Xy.promises.readdir(A)).filter(o=>o.startsWith("symf-")&&o!==r);for(let o of i)await Xy.promises.rm(aM.join(A,o))}var hEr="5.2.6637";async function txA(A){let r=ri.getConfiguration(),t=r.get("cody.experimental.cody-engine.path");if(t){let k=await mw.promises.stat(t);if(!k.isFile())throw new Error(`not a file: ${t}`);return Qn("CodyEngine",`using user-provided path: ${t} ${k.isFile()}`),t}let i=yb();if(!i)return Qn("CodyEngine","getOSArch returned nothing"),null;let{platform:o,arch:s}=i;if(!s)return Qn("CodyEngine","getOSArch returned undefined arch"),null;if(!o)return Qn("CodyEngine","getOSArch returned undefined platform"),null;let E=new Map([["aarch64","arm64"],["x86_64","x64"]]).get(s??"")??s,p=Zy.default.join(A.globalStorageUri.fsPath,"cody-engine"),B=r.get("cody.experimental.cody-engine.version",hEr);await mw.promises.mkdir(p,{recursive:!0});let m=`cody-engine-${B}-${o}-${E}`,_=Zy.default.join(p,m);if(await mcA(_))return Qn("CodyEngine",`using downloaded path "${_}"`),_;let O=`https://github.com/sourcegraph/bfg/releases/download/v${B}/bfg-${o}-${E}.zip`;try{await ni.withProgress({location:10,title:"Downloading cody-engine",cancellable:!1},async k=>{k.report({message:"Downloading cody-engine"});let P=Zy.default.join(p,"bfg.zip");await mEr(O,P),await QEr(P,p),Qn("CodyEngine",_);let H=o==="windows"?"bfg.exe":"bfg";await mw.promises.rename(Zy.default.join(p,H),_),await mw.promises.chmod(_,493),await mw.promises.rm(P),Qn("CodyEngine",`downloaded cody-engine to ${_}`)}),DEr(p,m)}catch(k){return(0,mu.captureException)(k),ni.showErrorMessage(`Failed to download bfg from URL ${O}: ${k}`),null}return _}async function QEr(A,r){let t=oM.createReadStream(A).pipe(rxA.Parse({forceStream:!0}));for await(let i of t)i.path.endsWith("/")||i.pipe(oM.createWriteStream(Zy.default.join(r,i.path)))}async function mEr(A,r){Qn("CodyEngine",`downloading from URL ${A}`);let t=await Hb({url:A,method:"GET",responseType:"stream",maxRedirects:10}),i=oM.createWriteStream(r);t.data.pipe(i),await new Promise((o,s)=>{i.on("finish",o),i.on("error",s)})}async function DEr(A,r){let i=(await mw.promises.readdir(A)).filter(o=>o.startsWith("bfg")&&o!==r);for(let o of i)await mw.promises.rm(Zy.default.join(A,o))}var nxA=Yn(require("assert")),l1=require("fs"),axA=require("path"),MG=require("stream");var DcA=class extends Error{limit;retryAfter;constructor(r,t,i){super(r),this.limit=t,this.retryAfter=i}};function ixA(A){return A instanceof DcA}var oxA=(E=>(E[E.ParseError=-32700]="ParseError",E[E.InvalidRequest=-32600]="InvalidRequest",E[E.MethodNotFound=-32601]="MethodNotFound",E[E.InvalidParams=-32602]="InvalidParams",E[E.InternalError=-32603]="InternalError",E[E.RequestCanceled=-32604]="RequestCanceled",E[E.RateLimitError=-32e3]="RateLimitError",E))(oxA||{}),_cA=class extends Error{constructor(t){super();this.info=t}toString(){return`${this.name}: ${this.message}`}get name(){return oxA[this.info.code]}get message(){if(typeof this.info?.data=="string"){try{let t=JSON.parse(this.info.data);return`${this.info.message}: ${JSON.stringify(t,null,2)}`}catch{}return`${this.info.message}: ${this.info.data}`}return this.info.message}},c1=process.env.CODY_AGENT_TRACE_PATH??"",wcA=class extends MG.Writable{constructor(t){super();this.callback=t;c1&&((0,l1.existsSync)(c1)&&(0,l1.rmSync)(c1),(0,l1.mkdirSync)((0,axA.dirname)(c1),{recursive:!0}))}buffer=Buffer.alloc(0);contentLengthRemaining=null;contentBuffer=Buffer.alloc(0);_write(t,i,o){this.buffer=Buffer.concat([this.buffer,t]);A:for(;;)if(this.contentLengthRemaining===null){let s=this.buffer.toString(),g=0,E,p=0,B=`\r -`;for(;(E=s.indexOf(B,g))!==-1;){let m=s.slice(g,E),[_,x]=m.split(":").map(O=>O.trim());if(x===void 0){this.buffer=this.buffer.slice(E+B.length),this.contentLengthRemaining=p,(0,nxA.default)(isFinite(this.contentLengthRemaining),`parsed Content-Length ${this.contentLengthRemaining} is not a finite number`);continue A}switch(_){case"Content-Length":p=parseInt(x,10);break;default:console.error(`Unknown header '${_}': ignoring!`);break}g=E+B.length}break}else{if(this.contentLengthRemaining===0){try{let g=JSON.parse(this.contentBuffer.toString());this.contentBuffer=Buffer.alloc(0),this.contentLengthRemaining=null,c1&&(0,l1.appendFileSync)(c1,"<- "+JSON.stringify(g,null,4)+` -`),this.callback(null,g)}catch(g){console.log(`jsonrpc.ts: JSON parse error against input '${this.contentBuffer}'. Error: -${g}`),c1&&(0,l1.appendFileSync)(c1,"<- "+JSON.stringify({error:g},null,4)+` -`),this.callback(g,null)}continue}let s=this.buffer.slice(0,this.contentLengthRemaining);if(s.length===0)break;this.contentBuffer=Buffer.concat([this.contentBuffer,s]),this.buffer=this.buffer.slice(this.contentLengthRemaining),this.contentLengthRemaining-=s.byteLength}o()}},vcA=class extends MG.Readable{buffer=Buffer.alloc(0);send(r){c1&&(0,l1.appendFileSync)(c1,"-> "+JSON.stringify(r,null,4)+` -`),this.pause();let t=Buffer.from(JSON.stringify(r),"utf-8"),i=Buffer.from(`Content-Length: ${t.byteLength}\r -\r -`,"utf-8");this.buffer=Buffer.concat([this.buffer,i,t]),this.resume()}_read(r){this.push(this.buffer.slice(0,r)),this.buffer=this.buffer.slice(r)}},$y=class{id=0;requestHandlers=new Map;cancelTokens=new Map;notificationHandlers=new Map;alive=!0;processExitedError=()=>new Error("Process has exited");responseHandlers=new Map;isAlive(){return this.alive}exit(){this.alive=!1;let r=this.processExitedError();for(let{reject:t}of this.responseHandlers.values())t(r)}messageDecoder=new wcA((r,t)=>{if(r&&console.error(`Error: ${r}`),!!t){if(t.id!==void 0&&t.method){typeof t.id=="number"&&t.id>this.id&&(this.id=t.id+1);let i=this.requestHandlers.get(t.method);if(i){let o=new DQ;this.cancelTokens.set(t.id,o),i(t.params,o.token).then(s=>{let g={jsonrpc:"2.0",id:t.id,result:s};this.messageEncoder.send(g)},s=>{let g=s instanceof Error?s.message:`${s}`,E=s instanceof Error?` -${s.stack}`:"",p=o.token.isCancellationRequested?-32604:ixA(s)?-32e3:-32603,B={jsonrpc:"2.0",id:t.id,error:{code:p,message:g,data:JSON.stringify({error:s,stack:E})}};this.messageEncoder.send(B)}).finally(()=>{this.cancelTokens.get(t.id)?.dispose(),this.cancelTokens.delete(t.id)})}else console.error(`No handler for request with method ${t.method}`)}else if(t.id!==void 0){let i=this.responseHandlers.get(t.id);i?(t?.error?i.reject(new _cA(t.error)):i.resolve(t.result),this.responseHandlers.delete(t.id)):console.error(`No handler for response with id ${t.id}`)}else if(t.method)if(t.method==="$/cancelRequest"&&t.params&&(typeof t.params.id=="string"||typeof t.params.id=="number"))this.cancelTokens.get(t.params.id)?.cancel(),this.cancelTokens.delete(t.params.id);else{let i=this.notificationHandlers.get(t.method);i?i(t.params):console.error(`No handler for notification with method ${t.method}`)}}});messageEncoder=new vcA;registerRequest(r,t){this.requestHandlers.set(r,t)}registerNotification(r,t){this.notificationHandlers.set(r,t)}request(r,t){if(!this.isAlive())throw this.processExitedError();let i=this.id++,o={jsonrpc:"2.0",id:i,method:r,params:t};return this.messageEncoder.send(o),new Promise((s,g)=>{this.responseHandlers.set(i,{resolve:s,reject:g})})}notify(r,t){if(!this.isAlive())throw this.processExitedError();let i={jsonrpc:"2.0",method:r,params:t};this.messageEncoder.send(i)}clientForThisInstance(){if(!this.isAlive())throw this.processExitedError();return new ycA(this.requestHandlers,this.notificationHandlers)}},ycA=class{constructor(r,t){this.requestHandlers=r;this.notificationHandlers=t}request(r,t,i=new DQ().token){let o=this.requestHandlers.get(r);if(o)return o(t,i);throw new Error("No such request handler: "+r)}notify(r,t){let i=this.notificationHandlers.get(r);if(i){i(t);return}throw new Error("No such notification handler: "+r)}};function sxA(A){return _Er(A)??void 0}function _Er(A){try{let t=CcA()?.getRepository(A);if(!t){console.warn(`No Git repository for URI ${A}`);return}return t.state.remotes[0]?.fetchUrl}catch(r){console.error(r);return}}function CcA(){let A=EI.getExtension("vscode.git");if(!A){console.warn("Git extension not available");return}if(!A.isActive){console.warn("Git extension not active");return}return A.exports.getAPI(1)}function u1(A){switch(A){case"c":case"cpp":case"csharp":case"dart":case"go":case"java":case"javascript":case"javascriptreact":case"php":case"typescript":case"typescriptreact":case"vue":return{blockStart:"{",blockElseTest:/^[\t ]*} else/,blockEnd:"}",commentStart:"// "};case"python":return{blockStart:":",blockElseTest:/^[\t ]*(elif |else:)/,blockEnd:null,commentStart:"# "};default:return null}}function IcA(A){let{currentLinePrefix:r,injectedPrefix:t}=A;return t?r.slice(0,-t.length):r}function kG(A,r){let{prefix:t,suffix:i,position:o}=r,s=A.offsetAt(o);return new sa(A.positionAt(s-t.length),A.positionAt(s+i.length))}function cxA(A){let{document:r,position:t,prefix:i}=A,o=u1(r.languageId)?.blockStart,g=o&&i.trimEnd().endsWith(o)?r.positionAt(i.lastIndexOf(o)):{line:t.line,character:Math.max(0,t.character-1)},[E]=S_A(r,g,"getCompletionIntent");return E?.name}var wEr=Promise.resolve(void 0),xG=class{constructor(r){this.context=r;this.loadedBFG=this.loadBFG(),this.loadedBFG.then(()=>{},t=>{(0,mu.captureException)(t),this.didFailLoading=!0,Qn("CodyEngine","failed to initialize",t)}),wEr=this.indexOpenGitRepositories()}identifier="bfg";loadedBFG;didFailLoading=!1;indexedRepositoryRevisions=new Map;async indexOpenGitRepositories(){let r=CcA();if(r){for(let t of r.repositories)await this.onDidChangeRepository(t);this.context.subscriptions.push(r.onDidOpenRepository(t=>this.onDidChangeRepository(t)))}}async onDidChangeRepository(r){let t=r.rootUri.toString(),i=r?.state?.HEAD?.commit;i!==this.indexedRepositoryRevisions.get(t)&&(this.indexedRepositoryRevisions.set(t,i??""),await this.indexRepository(r))}async indexRepository(r){let t=await this.loadedBFG,i=Date.now();await t.request("bfg/gitRevision/didChange",{gitDirectoryUri:r.rootUri.toString()}),Qn("CodyEngine",`indexing time ${Date.now()-i}ms`)}async retrieve({document:r,position:t,docContext:i,hints:o}){if(this.didFailLoading)return[];let s=await this.loadedBFG;if(!s.isAlive())return Qn("CodyEngine","not alive"),[];try{let g=await s.request("bfg/contextAtPosition",{uri:r.uri.toString(),content:(await ri.openTextDocument(r.uri)).getText(),position:{line:t.line,character:t.character},maxChars:o.maxChars,contextRange:kG(r,i)});return typeof g!="object"?[]:[...g?.symbols||[],...g?.files||[]]}catch(g){return Qn("CodyEngine:error",`${g}`),[]}}isSupportedForLanguageId(r){switch(r){case"typescript":case"typescriptreact":case"javascript":case"javascriptreact":case"java":case"go":case"dart":case"python":case"zig":return!0;default:return!1}}dispose(){this.didFailLoading||this.loadedBFG.then(r=>r.request("bfg/shutdown",null),()=>{})}loadBFG(){return new Promise((r,t)=>{Qn("CodyEngine","loading bfg"),this.doLoadBFG(t).then(i=>r(i),i=>{(0,mu.captureException)(i),t(i)})})}async doLoadBFG(r){let t=new $y,i=await txA(this.context);if(!i)throw new Error('Failed to download BFG binary. To fix this problem, set the "cody.experimental.cody-engine.path" configuration to the path of your BFG binary');let o=ri.getConfiguration().get("cody.debug.verbose",!1),s=lxA.spawn(i,{stdio:"pipe",env:{VERBOSE_DEBUG:`${o}`,RUST_BACKTRACE:o?"1":"0"}});return s.stderr.on("data",g=>{Qn("CodyEngine","stderr",g.toString())}),s.on("disconnect",()=>r()),s.on("close",()=>r()),s.on("error",g=>r(g)),s.on("exit",g=>{t.exit(),r(g)}),s.stderr.pipe(process.stderr),s.stdout.pipe(t.messageDecoder),t.messageEncoder.pipe(s.stdin),await t.request("bfg/initialize",{clientName:"vscode"}),t}};function uxA(){let A=ri.getConfiguration("cody.dev");A.get("openAutocompleteTraceView")&&ti.executeCommand("cody.autocomplete.openTraceView"),A.get("openOutputConsole")&&Qy.show()}var ZEr=Yn(o9A()),jG=class{constructor(r){this.rerank_=r}rerank(r,t){return this.rerank_(r,t)}};var WG=class{resolve;promise;constructor(){this.resolve=()=>{},this.promise=new Promise(r=>{this.resolve=r})}set(r){this.resolve(r),this.promise=Promise.resolve(r)}get(){return this.promise}},W0=class{static instance;messageProvider=new WG;fixupController=new WG;reranker;getReranker(){return this.reranker?this.reranker:new jG((r,t)=>Promise.resolve(t))}async chatTranscript(){return(await this.messageProvider.get()).transcriptForTesting(this)}async fixupTasks(){return(await this.messageProvider.get()).fixupTasksForTesting(this)}};var JG=class{testing=void 0;constructor(){process.env.CODY_TESTING==="true"&&(console.warn("Setting up testing hooks"),this.testing=new W0,W0.instance=this.testing)}};var $Er=60*60*1e3,LcA=class{constructor(r){this.apiClient=r}featureFlags={};lastUpdated=0;getFromCache(r){return Date.now()-this.lastUpdated>$Er&&this.refreshFeatureFlags(),this.featureFlags[r]}async evaluateFeatureFlag(r){if(process.env.BENCHMARK_DISABLE_FEATURE_FLAGS)return!1;let t=this.getFromCache(r);if(t!==void 0)return t;let i=await this.apiClient.evaluateFeatureFlag(r);return this.featureFlags[r]=i===null||Yo(i)?!1:i,this.featureFlags[r]}syncAuthStatus(){this.refreshFeatureFlags()}async refreshFeatureFlags(){let r=await this.apiClient.getEvaluatedFeatureFlags();this.featureFlags=Yo(r)?{}:r,this.lastUpdated=Date.now()}},cg=new LcA(O0);var pri=new URL("https://sourcegraph.com/user/settings/tokens/new/callback"),qG=new URL("https://docs.sourcegraph.com/cody"),VG=new URL("https://discord.gg/s2qDtYGnAE"),O5=new URL("https://github.com/sourcegraph/cody/discussions/new?category=product-feedback&labels=vscode"),s9A=new URL("https://about.sourcegraph.com/app"),Eri=new URL("sourcegraph://user/settings/tokens/new/callback"),c9A=new URL("sourcegraph://users/admin/app-settings/local-repositories"),mM={endpoint:"",isLoggedIn:!1,showInvalidAccessTokenError:!1,authenticated:!1,hasVerifiedEmail:!1,requiresVerifiedEmail:!1,siteHasCodyEnabled:!1,siteVersion:""},zG={endpoint:"",isLoggedIn:!1,showInvalidAccessTokenError:!0,authenticated:!1,hasVerifiedEmail:!1,requiresVerifiedEmail:!1,siteHasCodyEnabled:!1,siteVersion:""},jcA={showInvalidAccessTokenError:!1,authenticated:!1,isLoggedIn:!1,hasVerifiedEmail:!1,showNetworkError:!0,requiresVerifiedEmail:!1,siteHasCodyEnabled:!1,siteVersion:""};function l9A(A){return A.siteHasCodyEnabled?A.authenticated&&(A.requiresVerifiedEmail?A.hasVerifiedEmail:!0):!1}function ww(A,r){return!A||!r?!1:A==="darwin"||A==="linux"}function u9A(A){switch(A){case"arm64":return"aarch64";case"x64":return"x86_64"}return A}function g9A(A){return A&&Gm(A)?Afr:[]}var Afr=[{title:"Claude 2",model:"anthropic/claude-2",provider:"Anthropic",default:!0},{title:"Claude Instant",model:"anthropic/claude-instant-1.2-cyan",provider:"Anthropic",default:!1},{title:"ChatGPT 3.5 Turbo",model:"openai/gpt-3.5-turbo",provider:"OpenAI",default:!1},{title:"ChatGPT 4 Turbo Preview",model:"openai/gpt-4-1106-preview",provider:"OpenAI",default:!1}];var d9A=Yn(KeA());var KG={current:void 0};function XG(A,r){if(B_){r=r??{};let t=new Headers(r?.headers);iy(t),r.headers=t}return(0,d9A.default)(A,{...r,agent:KG.current})}var p9A=new Map([["darwin","~/Library/Application Support/com.sourcegraph.cody/"],["linux","~/.local/share/com.sourcegraph.cody/"]]),DM={darwin:[{dir:"/Applications/",file:"Cody.app"},{dir:"~/Library/Application Support/com.sourcegraph.cody/",file:"site.config.json"},{dir:"~/Library/Application Support/com.sourcegraph.cody/",file:"app.json",hasToken:!0}],linux:[{dir:"~/.local/share/com.sourcegraph.cody/",file:"app.json",hasToken:!0}]};var ZG=class{localEnv;isSupported=!1;localAppMarkers;appFsPaths=[];tokenFsPath=null;_watchers=[];onChange;constructor(r){this.onChange=r.onChange,this.localEnv={..._M},this.localAppMarkers=DM[this.localEnv.os],this.isSupported=ww(this.localEnv.os,this.localEnv.arch)&&this.localEnv.homeDir!==void 0}async getProcessInfo(r=!1){return r&&this._watchers.length>0&&this.dispose(),await this.fetchServer(),this.localEnv}async init(){this.dispose(),this.localEnv={..._M},Qn("LocalAppDetector","initializing");let r=this.localEnv.homeDir;if(!this.isSupported||!r){xu("LocalAppDetector:init:failed","osNotSupported");return}let t=this.localAppMarkers;for(let i of t){let o=$G(i.dir,r),s=K_(i.file,i.dir);if(!s)return;let g=new p4(s,"*"),E=ri.createFileSystemWatcher(g);E.onDidChange(()=>this.fetchApp()),this._watchers.push(E),this.appFsPaths.push(o+i.file),i.hasToken&&(this.tokenFsPath=Zn.file(o+i.file))}await this.fetchApp()}async fetchApp(){if(!(this.localEnv.isAppInstalled||!this.appFsPaths)&&await Promise.any(this.appFsPaths.map(r=>WcA(Zn.file(r))))){this.localEnv.isAppInstalled=!0,this.appFsPaths=[],await this.found("app"),await this.fetchToken();return}}async fetchToken(){!this.tokenFsPath||this.localEnv.hasAppJson||await this.tryFetchAppJson(this.tokenFsPath)}async tryFetchAppJson(r){let t=await efr(r);if(!t)return;let i=t.token;i?.length&&(this.localEnv.hasAppJson=!0,this.tokenFsPath=null,await this.found("token"),await oB.storeToken(Rh.href,i),await this.fetchServer())}async fetchServer(){if(!this.localEnv.isAppRunning)try{(await XG(`${Rh.href}__version`)).status===200&&(this.localEnv.isAppRunning=!0,await this.found("server")),this.localEnv.hasAppJson||await this.fetchToken()}catch{return}}async found(r){this.localEnv.isAppInstalled=!0,await this.onChange(r),Qn("LocalAppDetector:found",r)}dispose(){for(let r of this._watchers)r.dispose();this._watchers=[],this.appFsPaths=[],this.tokenFsPath=null}};async function WcA(A){try{return await ri.fs.stat(A),!0}catch{return!1}}function $G(A,r){return r&&A.startsWith("~/")?A.replace("~",r):A}async function efr(A){try{let r=await ri.fs.readFile(A);return JSON.parse(r.toString())}catch{return null}}var _M={os:process.platform,arch:process.arch,homeDir:process.env.HOME,uriScheme:Ec.uriScheme,appName:Ec.appName,extensionVersion:cN,uiKindIsWeb:Ec.uiKind===2,isAppInstalled:!1,isAppRunning:!1,hasAppJson:!1};function E9A(A){switch(A){case"command":return tfr;case"support":return rfr;default:return[]}}function AY(A){let r=[];return[...Object.entries(A.chat)].forEach(([i,o])=>{let s=o?.interactions?.findLast(g=>g?.humanMessage);if(s?.humanMessage.displayText&&s?.humanMessage.text){let g=s.humanMessage.displayText.split(` -`)[0];r.push({id:i,title:g,icon:"comment-discussion",command:{command:"cody.chat.panel.restore",args:[i,g]}})}}),r.reverse()}var rfr=[{title:"Settings",icon:"settings-gear",command:{command:"cody.status-bar.interacted"}},{title:"Keyboard Shortcuts",icon:"keyboard",command:{command:"workbench.action.openGlobalKeybindings",args:["@ext:sourcegraph.cody-ai"]}},{title:"Release Notes",description:`v${_M.extensionVersion}`,icon:"github",command:{command:"vscode.open",args:[`https://github.com/sourcegraph/cody/releases/tag/vscode-v${_M.extensionVersion}`]}},{title:"Documentation",icon:"book",command:{command:"vscode.open",args:[qG.href]}},{title:"Feedback",icon:"feedback",command:{command:"vscode.open",args:[O5.href]}},{title:"Discord",icon:"organization",command:{command:"vscode.open",args:[VG.href]}},{title:"Sign Out",icon:"log-out",command:{command:"cody.auth.signout"}}],tfr=[{title:"Chat",icon:"comment",description:"Ask Cody a question",command:{command:"cody.chat.panel.new"}},{title:"Document",icon:"book",description:"Add code documentation",command:{command:"cody.command.document-code"}},{title:"Edit",icon:"wand",command:{command:"cody.command.edit-code"},description:"Edit Code with Instructions"},{title:"Explain",icon:"file-binary",command:{command:"cody.command.explain-code"},description:"Explain code"},{title:"Smell",icon:"symbol-keyword",command:{command:"cody.command.smell-code"},description:"Identify code smells"},{title:"Test",icon:"package",command:{command:"cody.command.generate-tests"},description:"Generate unit tests"},{title:"Custom",icon:"tools",command:{command:"cody.action.commands.custom.menu"},description:"Custom commands"}];var M5=class{constructor(r){this.type=r;this.updateTree(E9A(r)),this.refresh()}treeNodes=[];_disposables=[];_onDidChangeTreeData=new nl;onDidChangeTreeData=this._onDidChangeTreeData.event;getParent(r){r?.contextValue}updateTree(r){let t=[];r.forEach(i=>{let o=new $v({label:i.title});o.id=i.id,o.iconPath=new y0(i.icon),o.description=i.description,o.command={command:i.command.command,title:i.title,arguments:i.command.args},t.push(o)}),this.treeNodes=t,this.refresh()}refresh(){this.type==="chat"&&ti.executeCommand("setContext","cody.hasChatHistory",this.treeNodes.length),this._onDidChangeTreeData.fire()}getChildren(){return[...this.treeNodes.values()]}getTreeItem(r){return r}getTreeItemByID(r){return this.treeNodes.find(t=>t.id===r)}reset(){ti.executeCommand("setContext","cody.hasChatHistory",!1),this.treeNodes=[],this.refresh()}dispose(){this.reset();for(let r of this._disposables)r.dispose();this._disposables=[]}};var EHA=Yn(JB());var eY=require("path");async function rY(A,r=15){if(!A.trim())return[];let t=`**/*${A}{/**,*}*`,i="**/{.,*.env,.git,out/,dist/,bin/,snap,node_modules}**",o=await ri.findFiles(t,i,r);return o.length?o?.map(s=>JcA(s)):[]}async function tY(A,r=10){if(!A.trim()||A.trim().length<5)return[];let t=(await lIA(A))?.filter(o=>(o.kind===11||o.kind===5||o.kind===4)&&!o.location?.uri?.fsPath.includes("node_modules/")).slice(0,r);if(!t.length)return[];let i=[];for(let o of t){let s=o.kind===4?"class":"function",g="user",E=JcA(o.location.uri,g,"symbol",o.location.range,s);E.fileName=o.name,i.push(E)}return i}function iY(){return uIA()?.map(A=>JcA(A))}function JcA(A,r="user",t="file",i,o){let s=i&&ifr(i);return{fileName:ri.asRelativePath(A.fsPath),uri:A,path:nfr(A),range:s,type:t,source:r,kind:o}}function ifr(A){return{start:{line:A.start.line,character:A.start.character},end:{line:A.end.line,character:A.end.character}}}function nfr(A){return{basename:(0,eY.basename)(A.fsPath),dirname:(0,eY.dirname)(A.fsPath),relative:ri.asRelativePath(A.fsPath)}}var zcA=Yn($T());var qcA,Zs=new M4().getRecorder([new zcA.CallbackTelemetryProcessor(()=>{throw new Error("telemetry-v2: recorder used before initialization")})]),afr="connected-instance-only",VcA="telemetry-v2";function nY(A){qcA?.unsubscribe(),qcA=A,Zs=A.getRecorder([new zcA.CallbackTelemetryProcessor(r=>{Qn(VcA,`recordEvent${A.noOp?" (no-op)":""}: ${r.feature}/${r.action}: ${JSON.stringify({parameters:r.parameters})}`)})])}async function f9A(A,r){if(A.telemetryLevel==="off"||!Zm.ide||Zm.ideExtensionType!=="Cody"){nY(new M4);return}let{anonymousUserID:t,created:i}=await kc.anonymousUserID(),o=qcA===void 0;process.env.CODY_TESTING==="true"?(Qn(VcA,"using mock exporter"),nY(new rN(Zm,A,t))):r?(Qn(VcA,"using no-op exports"),nY(new M4)):nY(new eN(Zm,A,t,afr)),o&&(i?Zs.recordEvent("cody.extension","installed"):Zs.recordEvent("cody.extension","savedLogin"))}function k5(A){let r=A.split(/\r\n|\r|\n/).length,t=A.length;return{lineCount:r,charCount:t}}function KcA(A,r){if(!r||!A)return!1;let t=A.replaceAll(/\s/g,""),i=r?.replace(/\s/g,"");return t===i}var ZcA={code:"init",lineCount:0,charCount:0,eventName:"",source:"",requestID:""},XcA=!1,$cA="";function wM(A,r,t="chat",i=""){XcA=!r.includes("copy");let{lineCount:o,charCount:s}=k5(A),g={code:A,lineCount:o,charCount:s,eventName:r,source:t,requestID:i};ZcA=g;let p={op:r.includes("copy")?"copy":r.startsWith("insert")?"insert":"save",charCount:s,lineCount:o,source:t,requestID:i};return Fa.log(`CodyVSCodeExtension:${r}:clicked`,p),g}async function aY(A){$cA=A||await Ec.clipboard.readText()}async function oY(A,r){let t=ku()?.selection,i=ku();if(!i||!t)throw new Error("No editor or selection found to insert text");let o=new Sd;o.insert(i.document.uri,t.start,A+` -`),await ri.applyEdit(o);let g="insert"+"Button";wM(A,g,r?.source,r?.requestID)}function sY(A,r){wM(A,"saveButton",r?.source,r?.requestID)}async function cY(A,r,t){let i=r?A:await Ec.clipboard.readText();i&&wM(i,r?"copyButton":"keyDown:Copy",t?.source,t?.requestID)}function B9A(A){return A===ZcA.code||A===$cA}async function h9A(A){let{code:r,lineCount:t,charCount:i,source:o,requestID:s}=ZcA;if(r){if(XcA){XcA=!1;return}if(await aY(),KcA(r,$cA)&&KcA(r,A)){let g="paste",E=o.startsWith("inline")?"inlineChat":"keyDown";Fa.log(`CodyVSCodeExtension:${E}:Paste:clicked`,{op:g,lineCount:t,charCount:i,source:o,requestID:s})}}}var AlA=ri.workspaceFolders?.[0]?.uri,Q9A="";function m9A(A,r){A&&(AlA=A),r&&(Q9A=r)}async function lY(A,r,t){if(ti.executeCommand("vscode.open",A),!AlA)throw new Error("Failed to open file: missing workspace");try{let i=Zn.joinPath(AlA,A),o=await ri.openTextDocument(i),s=t&&new sa(t.start.line,0,t.end.line,0),g=-2;r&&(g=r-1||r+1),await ni.showTextDocument(o,{selection:s,viewColumn:g,preserveFocus:!1})}catch{let i=new URL(`/search?q=context:global+file:${A}`,Q9A).href;return e2(i)}}async function uY(A,r){let t=await ri.openTextDocument(Zn.file(A)),i=r&&new sa(r.startLine,r.startCharacter,r.endLine,r.endCharacter);await ni.showTextDocument(t,{selection:i})}async function e2(A){try{await Ec.openExternal(Zn.parse(A))}catch(r){throw new Error(`Failed to open file: ${r}`)}}var gY=class{constructor(r){this.consumer=r;this.finished=new Promise((t,i)=>{this.resolveFinished=t,this.rejectFinished=i})}upstreamClosed=!1;resolveFinished=()=>{};rejectFinished=()=>{};finished;text="";i=0;interval;update(r){if(this.upstreamClosed)throw new Error("Typewriter already closed");if(r===this.text)return;if(this.text.length>=r.length)throw new Error("Content must be supplied incrementally");this.text=r,this.interval&&(clearInterval(this.interval),this.interval=void 0);let t=200/(this.text.length-this.i),i=Math.max(t,5),o=t<5?Math.round(5/t):1;this.interval=setInterval(()=>{this.i=Math.min(this.text.length,this.i+o),this.consumer.update(this.text.slice(0,this.i)),this.i===this.text.length&&(clearInterval(this.interval),this.interval=void 0,this.upstreamClosed&&(this.consumer.close(),this.resolveFinished(this.text)))},i)}close(){this.upstreamClosed=!0}stop(){this.interval&&(clearInterval(this.interval),this.interval=void 0),this.i"']/,cfr=/[&<>"']/g,lfr=/[<>"']|&(?!#?\w+;)/,ufr=/[<>"']|&(?!#?\w+;)/g,gfr={"&":"&","<":"<",">":">",'"':""","'":"'"},D9A=A=>gfr[A];function AE(A,r){if(r){if(sfr.test(A))return A.replace(cfr,D9A)}else if(lfr.test(A))return A.replace(ufr,D9A);return A}var dfr=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function b9A(A){return A.replace(dfr,(r,t)=>(t=t.toLowerCase(),t==="colon"?":":t.charAt(0)==="#"?t.charAt(1)==="x"?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""))}var pfr=/(^|[^\[])\^/g;function Du(A,r){A=typeof A=="string"?A:A.source,r=r||"";let t={replace:(i,o)=>(o=o.source||o,o=o.replace(pfr,"$1"),A=A.replace(i,o),t),getRegex:()=>new RegExp(A,r)};return t}var Efr=/[^\w:]/g,ffr=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function _9A(A,r,t){if(A){let i;try{i=decodeURIComponent(b9A(t)).replace(Efr,"").toLowerCase()}catch{return null}if(i.indexOf("javascript:")===0||i.indexOf("vbscript:")===0||i.indexOf("data:")===0)return null}r&&!ffr.test(t)&&(t=mfr(r,t));try{t=encodeURI(t).replace(/%25/g,"%")}catch{return null}return t}var dY={},Bfr=/^[^:]+:\/*[^/]*$/,hfr=/^([^:]+:)[\s\S]*$/,Qfr=/^([^:]+:\/*[^/]*)[\s\S]*$/;function mfr(A,r){dY[" "+A]||(Bfr.test(A)?dY[" "+A]=A+"/":dY[" "+A]=pY(A,"/",!0)),A=dY[" "+A];let t=A.indexOf(":")===-1;return r.substring(0,2)==="//"?t?r:A.replace(hfr,"$1")+r:r.charAt(0)==="/"?t?r:A.replace(Qfr,"$1")+r:A+r}var EY={exec:function(){}};function J0(A){let r=1,t,i;for(;r{let p=!1,B=g;for(;--B>=0&&E[B]==="\\";)p=!p;return p?"|":" |"}),i=t.split(/ \|/),o=0;if(i[0].trim()||i.shift(),i.length>0&&!i[i.length-1].trim()&&i.pop(),i.length>r)i.splice(r);else for(;i.length1;)r&1&&(t+=A),r>>=1,A+=A;return t+A}function y9A(A,r,t,i){let o=r.href,s=r.title?AE(r.title):null,g=A[1].replace(/\\([\[\]])/g,"$1");if(A[0].charAt(0)!=="!"){i.state.inLink=!0;let E={type:"link",raw:t,href:o,title:s,text:g,tokens:i.inlineTokens(g,[])};return i.state.inLink=!1,E}return{type:"image",raw:t,href:o,title:s,text:AE(g)}}function _fr(A,r){let t=A.match(/^(\s+)(?:```)/);if(t===null)return r;let i=t[1];return r.split(` -`).map(o=>{let s=o.match(/^\s+/);if(s===null)return o;let[g]=s;return g.length>=i.length?o.slice(i.length):o}).join(` -`)}var vM=class{constructor(r){this.options=r||x5}space(r){let t=this.rules.block.newline.exec(r);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(r){let t=this.rules.block.code.exec(r);if(t){let i=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?i:pY(i,` -`)}}}fences(r){let t=this.rules.block.fences.exec(r);if(t){let i=t[0],o=_fr(i,t[3]||"");return{type:"code",raw:i,lang:t[2]?t[2].trim():t[2],text:o}}}heading(r){let t=this.rules.block.heading.exec(r);if(t){let i=t[2].trim();if(/#$/.test(i)){let s=pY(i,"#");(this.options.pedantic||!s||/ $/.test(s))&&(i=s.trim())}let o={type:"heading",raw:t[0],depth:t[1].length,text:i,tokens:[]};return this.lexer.inline(o.text,o.tokens),o}}hr(r){let t=this.rules.block.hr.exec(r);if(t)return{type:"hr",raw:t[0]}}blockquote(r){let t=this.rules.block.blockquote.exec(r);if(t){let i=t[0].replace(/^ *>[ \t]?/gm,"");return{type:"blockquote",raw:t[0],tokens:this.lexer.blockTokens(i,[]),text:i}}}list(r){let t=this.rules.block.list.exec(r);if(t){let i,o,s,g,E,p,B,m,_,x,O,k,P=t[1].trim(),H=P.length>1,T={type:"list",raw:"",ordered:H,start:H?+P.slice(0,-1):"",loose:!1,items:[]};P=H?`\\d{1,9}\\${P.slice(-1)}`:`\\${P}`,this.options.pedantic&&(P=H?P:"[*+-]");let v=new RegExp(`^( {0,3}${P})((?:[ ][^\\n]*)?(?:\\n|$))`);for(;r&&(k=!1,!(!(t=v.exec(r))||this.rules.block.hr.test(r)));){if(i=t[0],r=r.substring(i.length),m=t[2].split(` -`,1)[0],_=r.split(` -`,1)[0],this.options.pedantic?(g=2,O=m.trimLeft()):(g=t[2].search(/[^ ]/),g=g>4?1:g,O=m.slice(g),g+=t[1].length),p=!1,!m&&/^ *$/.test(_)&&(i+=_+` -`,r=r.substring(_.length+1),k=!0),!k){let y=new RegExp(`^ {0,${Math.min(3,g-1)}}(?:[*+-]|\\d{1,9}[.)])((?: [^\\n]*)?(?:\\n|$))`),S=new RegExp(`^ {0,${Math.min(3,g-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`);for(;r&&(x=r.split(` -`,1)[0],m=x,this.options.pedantic&&(m=m.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),!(y.test(m)||S.test(r)));){if(m.search(/[^ ]/)>=g||!m.trim())O+=` -`+m.slice(g);else if(!p)O+=` -`+m;else break;!p&&!m.trim()&&(p=!0),i+=x+` -`,r=r.substring(x.length+1)}}T.loose||(B?T.loose=!0:/\n *\n *$/.test(i)&&(B=!0)),this.options.gfm&&(o=/^\[[ xX]\] /.exec(O),o&&(s=o[0]!=="[ ] ",O=O.replace(/^\[[ xX]\] +/,""))),T.items.push({type:"list_item",raw:i,task:!!o,checked:s,loose:!1,text:O}),T.raw+=i}T.items[T.items.length-1].raw=i.trimRight(),T.items[T.items.length-1].text=O.trimRight(),T.raw=T.raw.trimRight();let F=T.items.length;for(E=0;EU.type==="space"),S=y.every(U=>{let V=U.raw.split(""),wA=0;for(let IA of V)if(IA===` -`&&(wA+=1),wA>1)return!0;return!1});!T.loose&&y.length&&S&&(T.loose=!0,T.items[E].loose=!0)}return T}}html(r){let t=this.rules.block.html.exec(r);if(t){let i={type:"html",raw:t[0],pre:!this.options.sanitizer&&(t[1]==="pre"||t[1]==="script"||t[1]==="style"),text:t[0]};return this.options.sanitize&&(i.type="paragraph",i.text=this.options.sanitizer?this.options.sanitizer(t[0]):AE(t[0]),i.tokens=[],this.lexer.inline(i.text,i.tokens)),i}}def(r){let t=this.rules.block.def.exec(r);if(t)return t[3]&&(t[3]=t[3].substring(1,t[3].length-1)),{type:"def",tag:t[1].toLowerCase().replace(/\s+/g," "),raw:t[0],href:t[2],title:t[3]}}table(r){let t=this.rules.block.table.exec(r);if(t){let i={type:"table",header:w9A(t[1]).map(o=>({text:o})),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),rows:t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` -`):[]};if(i.header.length===i.align.length){i.raw=t[0];let o=i.align.length,s,g,E,p;for(s=0;s({text:B}));for(o=i.header.length,g=0;g/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(t[0]):AE(t[0]):t[0]}}link(r){let t=this.rules.inline.link.exec(r);if(t){let i=t[2].trim();if(!this.options.pedantic&&/^$/.test(i))return;let g=pY(i.slice(0,-1),"\\");if((i.length-g.length)%2===0)return}else{let g=Dfr(t[2],"()");if(g>-1){let p=(t[0].indexOf("!")===0?5:4)+t[1].length+g;t[2]=t[2].substring(0,g),t[0]=t[0].substring(0,p).trim(),t[3]=""}}let o=t[2],s="";if(this.options.pedantic){let g=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(o);g&&(o=g[1],s=g[3])}else s=t[3]?t[3].slice(1,-1):"";return o=o.trim(),/^$/.test(i)?o=o.slice(1):o=o.slice(1,-1)),y9A(t,{href:o&&o.replace(this.rules.inline._escapes,"$1"),title:s&&s.replace(this.rules.inline._escapes,"$1")},t[0],this.lexer)}}reflink(r,t){let i;if((i=this.rules.inline.reflink.exec(r))||(i=this.rules.inline.nolink.exec(r))){let o=(i[2]||i[1]).replace(/\s+/g," ");if(o=t[o.toLowerCase()],!o||!o.href){let s=i[0].charAt(0);return{type:"text",raw:s,text:s}}return y9A(i,o,i[0],this.lexer)}}emStrong(r,t,i=""){let o=this.rules.inline.emStrong.lDelim.exec(r);if(!o||o[3]&&i.match(/[\p{L}\p{N}]/u))return;let s=o[1]||o[2]||"";if(!s||s&&(i===""||this.rules.inline.punctuation.exec(i))){let g=o[0].length-1,E,p,B=g,m=0,_=o[0][0]==="*"?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(_.lastIndex=0,t=t.slice(-1*r.length+g);(o=_.exec(t))!=null;){if(E=o[1]||o[2]||o[3]||o[4]||o[5]||o[6],!E)continue;if(p=E.length,o[3]||o[4]){B+=p;continue}else if((o[5]||o[6])&&g%3&&!((g+p)%3)){m+=p;continue}if(B-=p,B>0)continue;if(p=Math.min(p,p+B+m),Math.min(g,p)%2){let O=r.slice(1,g+o.index+p);return{type:"em",raw:r.slice(0,g+o.index+p+1),text:O,tokens:this.lexer.inlineTokens(O,[])}}let x=r.slice(2,g+o.index+p-1);return{type:"strong",raw:r.slice(0,g+o.index+p+1),text:x,tokens:this.lexer.inlineTokens(x,[])}}}}codespan(r){let t=this.rules.inline.code.exec(r);if(t){let i=t[2].replace(/\n/g," "),o=/[^ ]/.test(i),s=/^ /.test(i)&&/ $/.test(i);return o&&s&&(i=i.substring(1,i.length-1)),i=AE(i,!0),{type:"codespan",raw:t[0],text:i}}}br(r){let t=this.rules.inline.br.exec(r);if(t)return{type:"br",raw:t[0]}}del(r){let t=this.rules.inline.del.exec(r);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2],[])}}autolink(r,t){let i=this.rules.inline.autolink.exec(r);if(i){let o,s;return i[2]==="@"?(o=AE(this.options.mangle?t(i[1]):i[1]),s="mailto:"+o):(o=AE(i[1]),s=o),{type:"link",raw:i[0],text:o,href:s,tokens:[{type:"text",raw:o,text:o}]}}}url(r,t){let i;if(i=this.rules.inline.url.exec(r)){let o,s;if(i[2]==="@")o=AE(this.options.mangle?t(i[0]):i[0]),s="mailto:"+o;else{let g;do g=i[0],i[0]=this.rules.inline._backpedal.exec(i[0])[0];while(g!==i[0]);o=AE(i[0]),i[1]==="www."?s="http://"+o:s=o}return{type:"link",raw:i[0],text:o,href:s,tokens:[{type:"text",raw:o,text:o}]}}}inlineText(r,t){let i=this.rules.inline.text.exec(r);if(i){let o;return this.lexer.state.inRawBlock?o=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(i[0]):AE(i[0]):i[0]:o=AE(this.options.smartypants?t(i[0]):i[0]),{type:"text",raw:i[0],text:o}}}},As={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *(?:\n *)?]+)>?(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,table:EY,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,text:/^[^\n]+/};As._label=/(?!\s*\])(?:\\.|[^\[\]\\])+/;As._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/;As.def=Du(As.def).replace("label",As._label).replace("title",As._title).getRegex();As.bullet=/(?:[*+-]|\d{1,9}[.)])/;As.listItemStart=Du(/^( *)(bull) */).replace("bull",As.bullet).getRegex();As.list=Du(As.list).replace(/bull/g,As.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+As.def.source+")").getRegex();As._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul";As._comment=/|$)/;As.html=Du(As.html,"i").replace("comment",As._comment).replace("tag",As._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex();As.paragraph=Du(As._paragraph).replace("hr",As.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",As._tag).getRegex();As.blockquote=Du(As.blockquote).replace("paragraph",As.paragraph).getRegex();As.normal=J0({},As);As.gfm=J0({},As.normal,{table:"^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"});As.gfm.table=Du(As.gfm.table).replace("hr",As.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",As._tag).getRegex();As.gfm.paragraph=Du(As._paragraph).replace("hr",As.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("table",As.gfm.table).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",As._tag).getRegex();As.pedantic=J0({},As.normal,{html:Du(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",As._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:EY,paragraph:Du(As.normal._paragraph).replace("hr",As.hr).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",As.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var no={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:EY,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/^[^_*]*?\_\_[^_*]*?\*[^_*]*?(?=\_\_)|[^*]+(?=[^*])|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/^[^_*]*?\*\*[^_*]*?\_[^_*]*?(?=\*\*)|[^_]+(?=[^_])|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:EY,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~";no.punctuation=Du(no.punctuation).replace(/punctuation/g,no._punctuation).getRegex();no.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g;no.escapedEmSt=/\\\*|\\_/g;no._comment=Du(As._comment).replace("(?:-->|$)","-->").getRegex();no.emStrong.lDelim=Du(no.emStrong.lDelim).replace(/punct/g,no._punctuation).getRegex();no.emStrong.rDelimAst=Du(no.emStrong.rDelimAst,"g").replace(/punct/g,no._punctuation).getRegex();no.emStrong.rDelimUnd=Du(no.emStrong.rDelimUnd,"g").replace(/punct/g,no._punctuation).getRegex();no._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g;no._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;no._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/;no.autolink=Du(no.autolink).replace("scheme",no._scheme).replace("email",no._email).getRegex();no._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/;no.tag=Du(no.tag).replace("comment",no._comment).replace("attribute",no._attribute).getRegex();no._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/;no._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/;no._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/;no.link=Du(no.link).replace("label",no._label).replace("href",no._href).replace("title",no._title).getRegex();no.reflink=Du(no.reflink).replace("label",no._label).replace("ref",As._label).getRegex();no.nolink=Du(no.nolink).replace("ref",As._label).getRegex();no.reflinkSearch=Du(no.reflinkSearch,"g").replace("reflink",no.reflink).replace("nolink",no.nolink).getRegex();no.normal=J0({},no);no.pedantic=J0({},no.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:Du(/^!?\[(label)\]\((.*?)\)/).replace("label",no._label).getRegex(),reflink:Du(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",no._label).getRegex()});no.gfm=J0({},no.normal,{escape:Du(no.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\.5&&(i="x"+i.toString(16)),r+="&#"+i+";";return r}var vw=class A{constructor(r){this.tokens=[],this.tokens.links=Object.create(null),this.options=r||x5,this.options.tokenizer=this.options.tokenizer||new vM,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={block:As.normal,inline:no.normal};this.options.pedantic?(t.block=As.pedantic,t.inline=no.pedantic):this.options.gfm&&(t.block=As.gfm,this.options.breaks?t.inline=no.breaks:t.inline=no.gfm),this.tokenizer.rules=t}static get rules(){return{block:As,inline:no}}static lex(r,t){return new A(t).lex(r)}static lexInline(r,t){return new A(t).inlineTokens(r)}lex(r){r=r.replace(/\r\n|\r/g,` -`),this.blockTokens(r,this.tokens);let t;for(;t=this.inlineQueue.shift();)this.inlineTokens(t.src,t.tokens);return this.tokens}blockTokens(r,t=[]){this.options.pedantic?r=r.replace(/\t/g," ").replace(/^ +$/gm,""):r=r.replace(/^( *)(\t+)/gm,(E,p,B)=>p+" ".repeat(B.length));let i,o,s,g;for(;r;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(E=>(i=E.call({lexer:this},r,t))?(r=r.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.space(r)){r=r.substring(i.raw.length),i.raw.length===1&&t.length>0?t[t.length-1].raw+=` -`:t.push(i);continue}if(i=this.tokenizer.code(r)){r=r.substring(i.raw.length),o=t[t.length-1],o&&(o.type==="paragraph"||o.type==="text")?(o.raw+=` -`+i.raw,o.text+=` -`+i.text,this.inlineQueue[this.inlineQueue.length-1].src=o.text):t.push(i);continue}if(i=this.tokenizer.fences(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.heading(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.hr(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.blockquote(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.list(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.html(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.def(r)){r=r.substring(i.raw.length),o=t[t.length-1],o&&(o.type==="paragraph"||o.type==="text")?(o.raw+=` -`+i.raw,o.text+=` -`+i.raw,this.inlineQueue[this.inlineQueue.length-1].src=o.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title});continue}if(i=this.tokenizer.table(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.lheading(r)){r=r.substring(i.raw.length),t.push(i);continue}if(s=r,this.options.extensions&&this.options.extensions.startBlock){let E=1/0,p=r.slice(1),B;this.options.extensions.startBlock.forEach(function(m){B=m.call({lexer:this},p),typeof B=="number"&&B>=0&&(E=Math.min(E,B))}),E<1/0&&E>=0&&(s=r.substring(0,E+1))}if(this.state.top&&(i=this.tokenizer.paragraph(s))){o=t[t.length-1],g&&o.type==="paragraph"?(o.raw+=` -`+i.raw,o.text+=` -`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=o.text):t.push(i),g=s.length!==r.length,r=r.substring(i.raw.length);continue}if(i=this.tokenizer.text(r)){r=r.substring(i.raw.length),o=t[t.length-1],o&&o.type==="text"?(o.raw+=` -`+i.raw,o.text+=` -`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=o.text):t.push(i);continue}if(r){let E="Infinite loop on byte: "+r.charCodeAt(0);if(this.options.silent){console.error(E);break}else throw new Error(E)}}return this.state.top=!0,t}inline(r,t){this.inlineQueue.push({src:r,tokens:t})}inlineTokens(r,t=[]){let i,o,s,g=r,E,p,B;if(this.tokens.links){let m=Object.keys(this.tokens.links);if(m.length>0)for(;(E=this.tokenizer.rules.inline.reflinkSearch.exec(g))!=null;)m.includes(E[0].slice(E[0].lastIndexOf("[")+1,-1))&&(g=g.slice(0,E.index)+"["+v9A("a",E[0].length-2)+"]"+g.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(E=this.tokenizer.rules.inline.blockSkip.exec(g))!=null;)g=g.slice(0,E.index)+"["+v9A("a",E[0].length-2)+"]"+g.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(E=this.tokenizer.rules.inline.escapedEmSt.exec(g))!=null;)g=g.slice(0,E.index)+"++"+g.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;r;)if(p||(B=""),p=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(m=>(i=m.call({lexer:this},r,t))?(r=r.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.escape(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.tag(r)){r=r.substring(i.raw.length),o=t[t.length-1],o&&i.type==="text"&&o.type==="text"?(o.raw+=i.raw,o.text+=i.text):t.push(i);continue}if(i=this.tokenizer.link(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.reflink(r,this.tokens.links)){r=r.substring(i.raw.length),o=t[t.length-1],o&&i.type==="text"&&o.type==="text"?(o.raw+=i.raw,o.text+=i.text):t.push(i);continue}if(i=this.tokenizer.emStrong(r,g,B)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.codespan(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.br(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.del(r)){r=r.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.autolink(r,C9A)){r=r.substring(i.raw.length),t.push(i);continue}if(!this.state.inLink&&(i=this.tokenizer.url(r,C9A))){r=r.substring(i.raw.length),t.push(i);continue}if(s=r,this.options.extensions&&this.options.extensions.startInline){let m=1/0,_=r.slice(1),x;this.options.extensions.startInline.forEach(function(O){x=O.call({lexer:this},_),typeof x=="number"&&x>=0&&(m=Math.min(m,x))}),m<1/0&&m>=0&&(s=r.substring(0,m+1))}if(i=this.tokenizer.inlineText(s,wfr)){r=r.substring(i.raw.length),i.raw.slice(-1)!=="_"&&(B=i.raw.slice(-1)),p=!0,o=t[t.length-1],o&&o.type==="text"?(o.raw+=i.raw,o.text+=i.text):t.push(i);continue}if(r){let m="Infinite loop on byte: "+r.charCodeAt(0);if(this.options.silent){console.error(m);break}else throw new Error(m)}}return t}},yM=class{constructor(r){this.options=r||x5}code(r,t,i){let o=(t||"").match(/\S*/)[0];if(this.options.highlight){let s=this.options.highlight(r,o);s!=null&&s!==r&&(i=!0,r=s)}return r=r.replace(/\n$/,"")+` -`,o?'
    '+(i?r:AE(r,!0))+`
    -`:"
    "+(i?r:AE(r,!0))+`
    -`}blockquote(r){return`
    -${r}
    -`}html(r){return r}heading(r,t,i,o){if(this.options.headerIds){let s=this.options.headerPrefix+o.slug(i);return`${r} -`}return`${r} -`}hr(){return this.options.xhtml?`
    -`:`
    -`}list(r,t,i){let o=t?"ol":"ul",s=t&&i!==1?' start="'+i+'"':"";return"<"+o+s+`> -`+r+" -`}listitem(r){return`
  • ${r}
  • -`}checkbox(r){return" "}paragraph(r){return`

    ${r}

    -`}table(r,t){return t&&(t=`${t}`),` - -`+r+` -`+t+`
    -`}tablerow(r){return` -${r} -`}tablecell(r,t){let i=t.header?"th":"td";return(t.align?`<${i} align="${t.align}">`:`<${i}>`)+r+` -`}strong(r){return`${r}`}em(r){return`${r}`}codespan(r){return`${r}`}br(){return this.options.xhtml?"
    ":"
    "}del(r){return`${r}`}link(r,t,i){if(r=_9A(this.options.sanitize,this.options.baseUrl,r),r===null)return i;let o='",o}image(r,t,i){if(r=_9A(this.options.sanitize,this.options.baseUrl,r),r===null)return i;let o=`${i}":">",o}text(r){return r}},fY=class{strong(r){return r}em(r){return r}codespan(r){return r}del(r){return r}html(r){return r}text(r){return r}link(r,t,i){return""+i}image(r,t,i){return""+i}br(){return""}},BY=class{constructor(){this.seen={}}serialize(r){return r.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")}getNextSafeSlug(r,t){let i=r,o=0;if(this.seen.hasOwnProperty(i)){o=this.seen[r];do o++,i=r+"-"+o;while(this.seen.hasOwnProperty(i))}return t||(this.seen[r]=o,this.seen[i]=0),i}slug(r,t={}){let i=this.serialize(r);return this.getNextSafeSlug(i,t.dryrun)}},yw=class A{constructor(r){this.options=r||x5,this.options.renderer=this.options.renderer||new yM,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new fY,this.slugger=new BY}static parse(r,t){return new A(t).parse(r)}static parseInline(r,t){return new A(t).parseInline(r)}parse(r,t=!0){let i="",o,s,g,E,p,B,m,_,x,O,k,P,H,T,v,F,y,S,U,V=r.length;for(o=0;o0&&v.tokens[0].type==="paragraph"?(v.tokens[0].text=S+" "+v.tokens[0].text,v.tokens[0].tokens&&v.tokens[0].tokens.length>0&&v.tokens[0].tokens[0].type==="text"&&(v.tokens[0].tokens[0].text=S+" "+v.tokens[0].tokens[0].text)):v.tokens.unshift({type:"text",text:S}):T+=S),T+=this.parse(v.tokens,H),x+=this.renderer.listitem(T,y,F);i+=this.renderer.list(x,k,P);continue}case"html":{i+=this.renderer.html(O.text);continue}case"paragraph":{i+=this.renderer.paragraph(this.parseInline(O.tokens));continue}case"text":{for(x=O.tokens?this.parseInline(O.tokens):O.text;o+1"u"||A===null)throw new Error("marked(): input parameter is undefined or null");if(typeof A!="string")throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(A)+", string expected");if(typeof r=="function"&&(t=r,r=null),r=J0({},ns.defaults,r||{}),O9A(r),t){let i=r.highlight,o;try{o=vw.lex(A,r)}catch(E){return t(E)}let s=function(E){let p;if(!E)try{r.walkTokens&&ns.walkTokens(o,r.walkTokens),p=yw.parse(o,r)}catch(B){E=B}return r.highlight=i,E?t(E):t(null,p)};if(!i||i.length<3||(delete r.highlight,!o.length))return s();let g=0;ns.walkTokens(o,function(E){E.type==="code"&&(g++,setTimeout(()=>{i(E.text,E.lang,function(p,B){if(p)return s(p);B!=null&&B!==E.text&&(E.text=B,E.escaped=!0),g--,g===0&&s()})},0))}),g===0&&s();return}try{let i=vw.lex(A,r);return r.walkTokens&&ns.walkTokens(i,r.walkTokens),yw.parse(i,r)}catch(i){if(i.message+=` -Please report this to https://github.com/markedjs/marked.`,r.silent)return"

    An error occurred:

    "+AE(i.message+"",!0)+"
    ";throw i}}ns.options=ns.setOptions=function(A){return J0(ns.defaults,A),ofr(ns.defaults),ns};ns.getDefaults=I9A;ns.defaults=x5;ns.use=function(...A){let r=J0({},...A),t=ns.defaults.extensions||{renderers:{},childTokens:{}},i;A.forEach(o=>{if(o.extensions&&(i=!0,o.extensions.forEach(s=>{if(!s.name)throw new Error("extension name required");if(s.renderer){let g=t.renderers?t.renderers[s.name]:null;g?t.renderers[s.name]=function(...E){let p=s.renderer.apply(this,E);return p===!1&&(p=g.apply(this,E)),p}:t.renderers[s.name]=s.renderer}if(s.tokenizer){if(!s.level||s.level!=="block"&&s.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");t[s.level]?t[s.level].unshift(s.tokenizer):t[s.level]=[s.tokenizer],s.start&&(s.level==="block"?t.startBlock?t.startBlock.push(s.start):t.startBlock=[s.start]:s.level==="inline"&&(t.startInline?t.startInline.push(s.start):t.startInline=[s.start]))}s.childTokens&&(t.childTokens[s.name]=s.childTokens)})),o.renderer){let s=ns.defaults.renderer||new yM;for(let g in o.renderer){let E=s[g];s[g]=(...p)=>{let B=o.renderer[g].apply(s,p);return B===!1&&(B=E.apply(s,p)),B}}r.renderer=s}if(o.tokenizer){let s=ns.defaults.tokenizer||new vM;for(let g in o.tokenizer){let E=s[g];s[g]=(...p)=>{let B=o.tokenizer[g].apply(s,p);return B===!1&&(B=E.apply(s,p)),B}}r.tokenizer=s}if(o.walkTokens){let s=ns.defaults.walkTokens;r.walkTokens=function(g){o.walkTokens.call(this,g),s&&s.call(this,g)}}i&&(r.extensions=t),ns.setOptions(r)})};ns.walkTokens=function(A,r){for(let t of A)switch(r.call(ns,t),t.type){case"table":{for(let i of t.header)ns.walkTokens(i.tokens,r);for(let i of t.rows)for(let o of i)ns.walkTokens(o.tokens,r);break}case"list":{ns.walkTokens(t.items,r);break}default:ns.defaults.extensions&&ns.defaults.extensions.childTokens&&ns.defaults.extensions.childTokens[t.type]?ns.defaults.extensions.childTokens[t.type].forEach(function(i){ns.walkTokens(t[i],r)}):t.tokens&&ns.walkTokens(t.tokens,r)}};ns.parseInline=function(A,r){if(typeof A>"u"||A===null)throw new Error("marked.parseInline(): input parameter is undefined or null");if(typeof A!="string")throw new Error("marked.parseInline(): input parameter is of type "+Object.prototype.toString.call(A)+", string expected");r=J0({},ns.defaults,r||{}),O9A(r);try{let t=vw.lexInline(A,r);return r.walkTokens&&ns.walkTokens(t,r.walkTokens),yw.parseInline(t,r)}catch(t){if(t.message+=` -Please report this to https://github.com/markedjs/marked.`,r.silent)return"

    An error occurred:

    "+AE(t.message+"",!0)+"
    ";throw t}};ns.Parser=yw;ns.parser=yw.parse;ns.Renderer=yM;ns.TextRenderer=fY;ns.Lexer=vw;ns.lexer=vw.lex;ns.Tokenizer=vM;ns.Slugger=BY;ns.parse=ns;var $ri=ns.options,Ati=ns.setOptions,eti=ns.use,rti=ns.walkTokens,tti=ns.parseInline;var iti=yw.parse,nti=vw.lex;var vY=Yn(U9A()),yY=Yn(tHA());var iHA=A=>{let r=document.createElement("span");return r.textContent=A,r.innerHTML},FBr=(A,r)=>{try{return r==="plaintext"||r==="text"?iHA(A):r==="sourcegraph"?A:r?(0,yY.highlight)(A,{language:r,ignoreIllegals:!0}).value:(0,yY.highlightAuto)(A).value}catch(t){return console.error("Error syntax-highlighting hover markdown code block",t),iHA(A)}},nHA=(A,r={})=>{let t=new ns.Tokenizer;r.disableAutolinks&&(t.url=()=>{});let i=ns(A,{gfm:!0,breaks:r.breaks,highlight:(g,E)=>FBr(g,E),renderer:r.renderer,headerPrefix:r.headerPrefix??"",tokenizer:t}),o=typeof r.dompurifyConfig=="object"?r.dompurifyConfig:r.plainText?{ALLOWED_TAGS:[],ALLOWED_ATTR:[],KEEP_CONTENT:!0}:{USE_PROFILES:{html:!0},FORBID_TAGS:["style","form","input","button"],FORBID_ATTR:["rel","style","method","action"]};r.addTargetBlankToAllLinks&&vY.default.addHook("afterSanitizeAttributes",g=>{g.tagName.toLowerCase()==="a"&&g.getAttribute("href")&&(g.setAttribute("target","_blank"),g.setAttribute("rel","noopener"))});let s=r.noDomPurify?i:vY.default.sanitize(i,o).trim();return r.addTargetBlankToAllLinks&&vY.default.removeHook("afterSanitizeAttributes"),s};function aHA(A){return ns.Lexer.lex(A,{gfm:!0})}var p1=A=>A!=null;function oHA(A,r,t=A+"s"){return r===1||r===1n?A:t}var sHA=A=>{let r="\\!\"#%&'()*+,-./:;=?@[]^_`{|}~";for(let t of r)A=A.replaceAll(t,"\\"+t);return A.replaceAll("<","<").replaceAll(">",">")},E1=(A,r)=>[...new Map(A.map(t=>[typeof r=="function"?r(t):t[r],t])).values()];async function cHA(A,r){let t=performance.now(),i=aHA(r),o=0;return{text:(await Promise.all(i.map(async E=>{if(E.type!=="code")return E.raw;o++;let p=await A.searchAttribution(E.text).then(BlA);return`${E.raw} -
    \u{1F6E1}\uFE0F ${sHA(p)}
    `}))).join(""),codeBlocks:o,duration:performance.now()-t}}function BlA(A){if(Yo(A))return`guardrails attribution search failed: ${A.message}`;let r=A.repositories,t=r.length;if(t===0)return"no matching repositories found";let i=r.slice(0,t<5?t:5).map(o=>o.name);return t>5&&i.push("..."),`found ${t}${A.limitHit?"+":""} matching ${oHA("repository",t,"repositories")} ${i.join(", ")}`}function hlA(A,r,t,i,o,s,g){if(!t)return{...zG,endpoint:A};let E={...mM,endpoint:A};E.authenticated=t,E.showInvalidAccessTokenError=!t,E.requiresVerifiedEmail=r,E.hasVerifiedEmail=r&&i,E.siteHasCodyEnabled=o,E.siteVersion=s,g&&(E.configOverwrites=g);let p=E.siteHasCodyEnabled&&E.authenticated,B=E.requiresVerifiedEmail?E.hasVerifiedEmail:!0;return E.isLoggedIn=p&&B,E}var lHA=A=>{let r=/```[\S\s]*?```/g,t=A.match(r);if(!t)return null;let i={lineCount:0,charCount:0},o="```";for(let s of t){let g=s.split(` -`),p=g.filter(_=>!_.startsWith(o)).length,B=g[0].replace(o,""),m=s.length-B.length-o.length*2-2;i.charCount+=m,i.lineCount+=p}return i};function RBr(A,r){let t=r?"$(check) ":"";return Th(A)?`${t}Cody App`:Gm(A)?`${t}Sourcegraph.com`:`${t}${A}`}var uHA=async(A,r)=>{let t=r?.length,i=t>0?r?.map((E,p)=>({id:E,label:RBr(E,A==="switch"&&p===t-1),description:"",uri:E})).reverse():[],o=[{label:A==="signin"?"previously used":"current",kind:-1}],s=[...NBr,...o,...i];return await ni.showQuickPick(s,TBr[A])};async function QlA(A){let r=await ni.showInputBox({title:A,prompt:"Enter the URL of the Sourcegraph instance",placeHolder:"https://sourcegraph.example.com",password:!1,ignoreFocusOut:!0});return typeof r=="string"?r.trim():r}async function mlA(A){let r=await ni.showInputBox({title:A,prompt:'Paste your access token. To create an access token, go to "Settings" and then "Access tokens" on the Sourcegraph instance.',placeHolder:"Access Token",password:!0,ignoreFocusOut:!0});return typeof r=="string"?r.trim():r}var TBr={signin:{title:"Other Sign in Options",placeholder:"Choose a sign in option"},switch:{title:"Switch Account",placeHolder:"Choose an account"}},NBr=[{id:"enterprise",label:"Sign in to Sourcegraph Enterprise instance",description:"v5.1 and above",totalSteps:1,picked:!0},{id:"token",label:"Sign in to Sourcegraph Enterprise instance via Access Token",description:"v5.0 and above",totalSteps:2},{id:"token",label:"Sign in with URL and Access Token",totalSteps:2}];var CY=class{constructor(r){this.config=r;this.authStatus.endpoint="init",this.loadEndpointHistory(),this.appDetector=new ZG({onChange:t=>this.syncLocalAppState(t)})}endpointHistory=[];appScheme=Ec.uriScheme;client=null;appDetector;authStatus=mM;webview;listeners=new Set;async init(){await this.appDetector.init();let r=kc?.getEndpoint()||this.config.serverEndpoint,t=await oB.get(r||"")||this.config.accessToken;Qn("AuthProvider:init:lastEndpoint",r),await this.auth(r,t||null)}addChangeListener(r){return this.listeners.add(r),()=>this.listeners.delete(r)}async signinMenu(r,t){let i=this.authStatus.isLoggedIn?"switch":"signin";Qn("AuthProvider:signinMenu",i),Fa.log("CodyVSCodeExtension:login:clicked");let o=await uHA(i,this.endpointHistory);if(!o)return;let s=r||o?.id;switch(Fa.log("CodyVSCodeExtension:auth:selectSigninMenu",{menuID:s}),s){case"enterprise":{let g=await QlA(o.uri);if(!g)return;this.authStatus.endpoint=g,this.redirectToEndpointLogin(g);break}case"dotcom":this.redirectToEndpointLogin(CQ.href);break;case"token":{let g=await QlA(t||o.uri);if(!g)return;await this.signinMenuForInstanceUrl(g);break}case"app":{t&&await this.appAuth(t);break}default:{let g=o.uri,E=Th(g)?"SOURCEGRAPH_CODY_APP":g,p=await oB.get(E),B=await this.auth(g,p||null);if(!B?.isLoggedIn){let m=await mlA(o.uri);B=await this.auth(g,m||null)}await dHA(g,B?.authStatus),Qn("AuthProvider:signinMenu",i,g)}}}async signinMenuForInstanceUrl(r){let t=await mlA(r);if(!t)return;let i=await this.auth(r,t);Fa.log("CodyVSCodeExtension:auth:fromToken",{success:!!i?.isLoggedIn}),await dHA(r,i?.authStatus)}async appAuth(r){Qn("AuthProvider:appAuth:init","");let t=await oB.get("SOURCEGRAPH_CODY_APP");t&&(await this.auth(Rh.href,t))?.isLoggedIn||r&&await Ec.openExternal(Zn.parse(r))}async signoutMenu(){Fa.log("CodyVSCodeExtension:logout:clicked");let{endpoint:r}=this.authStatus;r&&(await this.signout(r),Qn("AuthProvider:signoutMenu",r))}async signout(r){Th(r)&&await this.appDetector.init(),await oB.deleteToken(r),await kc.deleteEndpoint(),await this.auth(r,null),this.authStatus.endpoint="",await ti.executeCommand("setContext","cody.chatPanel",!1),await ti.executeCommand("setContext","cody.activated",!1)}async makeAuthStatus(r){let t=r.serverEndpoint;if(!r.accessToken||!t)return{...mM,endpoint:t};(this.config!==r||!this.client)&&(this.config=r,this.client=new nB(r));let[{enabled:o,version:s},g]=await Promise.all([this.client.isCodyEnabled(),this.client.getCodyLLMConfiguration()]),E=Yo(g)?void 0:g,p=this.client.isDotCom()||Th(t);if(!p){let _=await this.client.getCurrentUserId(),x=!1;return Yo(_)&&IY(_.message)?{...jcA,endpoint:t}:hlA(t,p,!Yo(_),x,o,s,E)}let B=await this.client.getCurrentUserIdAndVerifiedEmail(),m=!0;return Yo(B)&&IY(B.message)?{...jcA,endpoint:t}:Yo(B)?{...zG,endpoint:t}:hlA(t,p,!!B.id,B.hasVerifiedEmail,m,s,E)}getAuthStatus(){return this.authStatus}async auth(r,t,i){let o=gHA(r)||"",s={serverEndpoint:o,accessToken:t,customHeaders:i||this.config.customHeaders},g=await this.makeAuthStatus(s),E=l9A(g);return g.isLoggedIn=E,await this.storeAuthInfo(o,t),await this.syncAuthStatus(g),await ti.executeCommand("setContext","cody.activated",E),{authStatus:g,isLoggedIn:E}}async reloadAuthStatus(){this.config=await k4(),await this.auth(this.config.serverEndpoint,this.config.accessToken,this.config.customHeaders)}async syncAuthStatus(r){this.authStatus!==r&&(this.authStatus=r,await this.announceNewAuthStatus())}async announceNewAuthStatus(){if(this.authStatus.endpoint==="init"||!this.webview)return;let r=this.getAuthStatus();for(let t of this.listeners)t(r);await ti.executeCommand("cody.auth.sync")}async syncLocalAppState(r){this.authStatus.endpoint==="init"||!this.webview||(r!=="app"&&!this.authStatus.isLoggedIn&&await this.appAuth(),await this.webview?.postMessage({type:"app-state",isInstalled:!0}))}async tokenCallbackHandler(r,t){let i=new URLSearchParams(r.query),o=i.get("type")==="app",s=i.get("code"),g=o?Rh.href:this.authStatus.endpoint;if(!s||!g)return;let E=await this.auth(g,s,t);if(Fa.log("CodyVSCodeExtension:auth:fromCallback",{type:"callback",from:o?"app":"web",success:!!E?.isLoggedIn}),E?.isLoggedIn){let p=o?"Connected to Cody App":`Signed in to ${g}`;await ni.showInformationMessage(p)}else await pHA(g)}redirectToEndpointLogin(r){let t=gHA(r);if(!t)return;if(Ec.uiKind===2){let o=new URL("/user/settings/tokens/new",t);Ec.openExternal(Zn.parse(o.href)),this.signinMenuForInstanceUrl(t);return}let i=new URL("/user/settings/tokens/new/callback",t);i.searchParams.append("requestFrom",this.appScheme==="vscode-insiders"?"CODY_INSIDERS":"CODY"),this.authStatus.endpoint=t,Ec.openExternal(Zn.parse(i.href))}loadEndpointHistory(){this.endpointHistory=kc.getEndpointHistory()||[]}async storeAuthInfo(r,t){r&&(await kc.saveEndpoint(r),t&&await oB.storeToken(r,t),this.loadEndpointHistory())}authProviderSimplifiedWillAttemptAuth(){this.authStatus.endpoint=CQ.toString()}};function IY(A){return A.includes("ENOTFOUND")||A.includes("ECONNREFUSED")||A.includes("ECONNRESET")||A.includes("EHOSTUNREACH")}function gHA(A){if(!A)return null;A.startsWith("http")||(A=`https://${A}`);try{return new URL(A).href}catch{console.error("Invalid URL")}return null}async function dHA(A,r){if(r?.isLoggedIn){let t=Zn.parse(A).authority,o=A===Rh.href?"Connected to Cody App":`Signed in to ${t}`;await ni.showInformationMessage(o)}else await pHA(A)}async function pHA(A){let r=Zn.parse(A).authority;await ni.showErrorMessage(`Authentication failed. Please ensure Cody is enabled for ${r} and verify your email address if required.`)}var PBr=100,GBr=new Set(["fixup"]),DlA=class{},RQ=class A extends DlA{sessionID=new Date(Date.now()).toUTCString();currentRequestID=void 0;static inputHistory=[];static chatHistory={};isMessageInProgress=!1;cancelCompletionCallback=null;multiplexer=new Ym;transcript=new _4;disposables=[];chat;intentDetector;guardrails;editor;authProvider;contextProvider;platform;chatModel=void 0;constructor(r){super(),W0.instance&&W0.instance.messageProvider.set(this),this.chat=r.chat,this.intentDetector=r.intentDetector,this.guardrails=r.guardrails,this.editor=r.editor,this.authProvider=r.authProvider,this.contextProvider=r.contextProvider,this.platform=r.platform,this.contextProvider.configurationChangeEvent.event(()=>this.sendCodyCommands())}async init(r){this.loadChatHistory(),this.sendTranscript(),this.sendHistory(),await this.contextProvider.init(),await this.sendCodyCommands(),r&&await this.restoreSession(r)}async clearAndRestartSession(){await this.saveTranscriptToChatHistory(),this.createNewChatID(),this.cancelCompletion(),this.isMessageInProgress=!1,this.transcript.reset(),this.handleSuggestions([]),this.sendTranscript(),this.sendHistory(),Fa.log("CodyVSCodeExtension:chatReset:executed",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.messageProvider.chatReset","executed")}async clearHistory(){A.chatHistory={},A.inputHistory=[],await kc.removeChatHistory(),this.transcript=new _4,await this.clearAndRestartSession(),this.sendHistory(),Fa.log("CodyVSCodeExtension:clearChatHistoryButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.messageProvider.clearChatHistoryButton","clicked")}async restoreSession(r){await this.saveTranscriptToChatHistory(),this.cancelCompletion(),this.createNewChatID(r),this.transcript=_4.fromJSON(A.chatHistory[r]),this.chatModel=this.transcript.chatModel,await this.transcript.toJSON(),this.sendTranscript(),this.sendHistory(),Fa.log("CodyVSCodeExtension:restoreChatHistoryButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.messageProvider.restoreChatHistoryButton","clicked")}createNewChatID(r){this.sessionID=r||new Date(Date.now()).toUTCString()}sendPrompt(r,t="",i=Ym.DEFAULT_TOPIC,o,s){this.cancelCompletion(),ti.executeCommand("setContext","cody.reply.pending",!0);let g=new gY({update:B=>{let m=xI(B,t);this.transcript.addAssistantResponse(B,m),this.sendTranscript()},close:()=>{}}),E="";this.multiplexer.sub(i,{onResponse:B=>(E+=B,g.update(E),Promise.resolve()),onTurnComplete:async()=>{g.close(),g.stop();let B=this.transcript.getLastInteraction();if(B){let _=GBr.has(i)?void 0:await this.guardrailsAnnotateAttributions(xI(E,t));this.transcript.addAssistantResponse(E,_)}await this.onCompletionEnd();let m=lHA(E);if(m?.charCount){let _=B?.getHumanMessage().metadata;Fa.log("CodyVSCodeExtension:chatResponse:hasCode",{...m,..._,requestID:s},{hasV2Event:!0}),Zs.recordEvent(`cody.messageProvider.chatResponse.${_?.source||o}`,"hasCode",{metadata:{...m}})}this.currentRequestID=void 0}});let p=0;this.cancelCompletionCallback=this.chat.chat(r,{onChange:B=>{B=B.slice(p),p+=B.length,this.multiplexer.publish(B)},onComplete:()=>{this.multiplexer.notifyTurnComplete()},onError:(B,m)=>{if(xu("ChatViewProvider:onError",B),YBr(B)){this.isMessageInProgress=!1,this.sendTranscript();return}m&&m>=400&&m<=410&&(this.authProvider.auth(this.contextProvider.config.serverEndpoint,this.contextProvider.config.accessToken,this.contextProvider.config.customHeaders).catch(_=>console.error(_)),xu("ChatViewProvider:onError:unauthUser",B,{verbose:{statusCode:m}})),IY(B)&&(B="Cody could not respond due to network error."),this.handleError(B,"transcript"),this.onCompletionEnd(!0),console.error(`Completion request failed: ${B}`)}},{model:this.chatModel})}cancelCompletion(){this.currentRequestID=void 0,this.cancelCompletionCallback?.(),this.cancelCompletionCallback=null}async onCompletionEnd(r=!1){this.currentRequestID=void 0,this.isMessageInProgress=!1,this.cancelCompletionCallback=null,this.sendTranscript(),await this.saveTranscriptToChatHistory(),this.sendHistory(),ti.executeCommand("setContext","cody.reply.pending",!1),r||this.logEmbeddingsSearchErrors()}async abortCompletion(){this.currentRequestID=void 0,await this.saveTranscriptToChatHistory(),this.cancelCompletion(),await this.multiplexer.notifyTurnComplete(),await this.onCompletionEnd()}getRecipe(r){return this.platform.recipes.find(t=>t.id===r)}async executeRecipe(r,t="",i,o,s=!0){if(this.isMessageInProgress){this.handleError("Cannot execute multiple actions. Please wait for the current action to finish.","system");return}let g=Km();this.currentRequestID=g,i==="chat"&&this.contextProvider.config.experimentalChatPredictions&&this.runRecipeForSuggestion("next-questions",t,i);let E=await this.chatCommandsFilter(t,r,{source:i,requestID:g},o);if(!E)return;t=E?.text,r=E?.recipeId;let p=this.getRecipe(r);if(!p){Qn("MessageProvider:executeRecipe","no recipe found");return}Qn("MessageProvider:executeRecipe",r,{verbose:t}),this.multiplexer=new Ym;let B=null;try{B=await p.getInteraction(t,{editor:this.editor,intentDetector:this.intentDetector,codebaseContext:this.contextProvider.context,responseMultiplexer:this.multiplexer,addEnhancedContext:s,userInputContextFiles:o})}catch(O){this.handleError("Fail to submit question","system"),console.error(O);return}if(!B)return;let m=B?.getAssistantMessage()?.error;if(m!==void 0){await this.addCustomInteraction({assistantResponse:m},B);return}this.isMessageInProgress=!0,B.setMetadata({requestID:g,source:i}),this.transcript.addInteraction(B);let _={embeddings:0,local:0,user:0};switch(r){case"local-indexed-keyword-search":case"context-search":this.sendTranscript(),await this.onCompletionEnd();break;default:{this.sendTranscript();let{prompt:O,contextFiles:k,preciseContexts:P}=await this.transcript.getPromptForLastInteraction(D6(this.contextProvider.context.getCodebase()),this.maxPromptTokens);this.transcript.setUsedContextFilesForLastInteraction(k,P),this.sendPrompt(O,B.getAssistantMessage().prefix??"",p.multiplexerTopic,r,g),this.sendTranscript(),await this.saveTranscriptToChatHistory(),k.map(H=>{H.source==="embeddings"?_.embeddings++:H.source==="user"?_.user++:_.local++})}}let x={contextSummary:_,source:i,requestID:g,chatModel:this.chatModel};Fa.log(`CodyVSCodeExtension:recipe:${p.id}:executed`,x,{hasV2Event:!0}),Zs.recordEvent(`cody.recipe.${p.id}`,"executed",{metadata:{..._}})}async runRecipeForSuggestion(r,t="",i){let o=this.getRecipe(r);if(!o)return;let s=new Ym,g=_4.fromJSON(await this.transcript.toJSON()),E=await o.getInteraction(t,{editor:this.editor,intentDetector:this.intentDetector,codebaseContext:this.contextProvider.context,responseMultiplexer:s,addEnhancedContext:this.transcript.isEmpty});if(!E)return;g.addInteraction(E);let{prompt:p,contextFiles:B}=await g.getPromptForLastInteraction(D6(this.contextProvider.context.getCodebase()),this.maxPromptTokens);g.setUsedContextFilesForLastInteraction(B);let m={requestID:this.currentRequestID,source:i};Fa.log(`CodyVSCodeExtension:recipe:${o.id}:executed`,m,{hasV2Event:!0});let _="";s.sub(Ym.DEFAULT_TOPIC,{onResponse:O=>(_+=O,Promise.resolve()),onTurnComplete:()=>{let O=_.split(` -`).slice(0,3).map(k=>k.trim().replace(/^-/,"").trim());return this.handleSuggestions(O),Promise.resolve()}});let x=0;this.chat.chat(p,{onChange:O=>{O=O.slice(x),x+=O.length,s.publish(O)},onComplete:()=>{s.notifyTurnComplete()},onError:(O,k)=>{console.error(O,k)}})}async guardrailsAnnotateAttributions(r){if(!this.contextProvider.config.experimentalGuardrails)return r;let t=await cHA(this.guardrails,r);return t.codeBlocks>0&&(Fa.log("CodyVSCodeExtension:guardrails:annotate",{codeBlocks:t.codeBlocks,duration:t.duration},{hasV2Event:!0}),Zs.recordEvent("cody.guardrails.annotate","executed",{metadata:{codeBlocks:t.codeBlocks,durationMs:t.duration/1e6}})),t.text}sendTranscript(){let r=this.transcript.toChat();this.handleTranscript(r,this.isMessageInProgress)}isCustomCommandAction(r){return["add","get","menu"].includes(r)}async executeCustomCommand(r,t){switch(r=r.trim(),r){case"get":await this.sendCodyCommands();break;case"menu":await this.editor.controllers.command?.menu("custom"),await this.sendCodyCommands();break;case"add":if(!t)break;await this.editor.controllers.command?.configFileAction("add",t),Fa.log("CodyVSCodeExtension:addCommandButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.addCommandButton","clicked");break}return this.executeRecipe("custom-prompt",r,"custom-commands")}async chatCommandsFilter(r,t,i,o){let s=i?.source||void 0;if(t==="inline-chat")return{text:r,recipeId:t,source:s};if(r=r.trim(),!r?.startsWith("/"))return{text:r,recipeId:t,source:s};switch(!0){case r==="/":return ti.executeCommand("cody.action.commands.menu",s);case r==="/commands-settings":return Fa.log("CodyVSCodeExtension:commandConfigMenuButton:clicked",i,{hasV2Event:!0}),Zs.recordEvent(`cody.sidebar.commandConfigMenuButton.${s}`,"clicked"),ti.executeCommand("cody.settings.commands");case(/^\/o(pen)?\s/.test(r)&&this.editor.controllers.command!==void 0):return Fa.log("CodyVSCodeExtension:command:openFile:executed",i,{hasV2Event:!0}),Zs.recordEvent("cody.command.openFile","executed"),this.editor.controllers.command?.open(r.split(" ")[1]);case/^\/r(eset)?$/.test(r):return Fa.log("CodyVSCodeExtension:command:resetChat:executed",i,{hasV2Event:!0}),Zs.recordEvent("cody.command.resetChat","executed"),this.clearAndRestartSession();case/^\/symf(?:\s|$)/.test(r):return Fa.log("CodyVSCodeExtension:command:symf:executed",i,{hasV2Event:!0}),{text:r,recipeId:"local-indexed-keyword-search"};case/^\/s(earch)?\s/.test(r):return{text:r,recipeId:"context-search"};case/^\/edit(\s)?/.test(r):return ti.executeCommand("cody.command.edit-code",{instruction:r},s);case/^\/ask(\s)?/.test(r):return{text:r.replace("/ask","").trimStart()||await QN(),recipeId:"chat-question",source:s};default:{if(!this.editor.getActiveTextEditor()?.filePath){let E="Command failed. Please open a file and try again.";return this.addCustomInteraction({assistantResponse:E,text:r,source:s})}let g=await this.editor.controllers.command?.addCommand(r,i?.requestID,o);if(!g)return;if(g==="invalid"){let E=`__${r}__ is not a valid command`;return this.addCustomInteraction({assistantResponse:E,text:r,source:s})}return{text:g,recipeId:"custom-prompt",source:s}}}}async addCustomInteraction(r,t){let i=await Yc(r),o=t||i;o.setMetadata({requestID:this.currentRequestID,source:r.source}),this.transcript.addInteraction(o),this.sendTranscript(),await this.saveTranscriptToChatHistory()}async sendCodyCommands(){let r=async()=>{await this.editor.controllers.command?.refresh();let t=await this.editor.controllers.command?.getAllCommands(!0)||[];this.handleCodyCommands(t)};this.editor.controllers.command?.setMessenger(r),await r()}async saveTranscriptToChatHistory(){this.transcript.isEmpty||(A.chatHistory[this.sessionID]=await this.transcript.toJSON(),await this.saveChatHistory(),this.sendHistory())}async saveChatHistory(){let r={chat:A.chatHistory,input:A.inputHistory};await kc.setChatHistory(r)}async deleteHistory(r){delete A.chatHistory[r],await kc.deleteChatHistory(r),this.sendHistory(),Fa.log("CodyVSCodeExtension:deleteChatHistoryButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.deleteChatHistoryButton","clicked")}loadChatHistory(){let r=kc.getChatHistory();r&&(A.chatHistory=r?.chat,A.inputHistory=r.input)}async exportHistory(){Fa.log("CodyVSCodeExtension:exportChatHistoryButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.exportChatHistoryButton","clicked");let r=A.chatHistory,t=await ni.showSaveDialog({filters:{"Chat History":["json"]}});if(t)try{let i=new TextEncoder().encode(JSON.stringify(r));await ri.fs.writeFile(t,i),ni.showInformationMessage("Chat history exported successfully.","Open").then(o=>{o==="Open"&&ti.executeCommand("vscode.open",t)})}catch(i){xu("MessageProvider:exportHistory","Failed to export chat history",i)}}sendHistory(){this.handleHistory({chat:A.chatHistory,input:A.inputHistory})}logEmbeddingsSearchErrors(){if(this.contextProvider.config.useContext!=="embeddings")return;let r=this.contextProvider.context.getEmbeddingSearchErrors();this.contextProvider.context.checkEmbeddingsConnection()&&r&&(this.handleError(r,"transcript"),xu("ChatViewProvider:onLogEmbeddingsErrors","",{verbose:r}))}transcriptForTesting(r){return r?this.transcript.toChat():(console.error("used ForTesting method without test support object"),[])}fixupTasksForTesting(r){if(!r)return console.error("used ForTesting method without test support object"),[];if(!this.editor.controllers.fixups)throw new Error("no fixup controller");return this.editor.controllers.fixups.getTasks()}dispose(){for(let r of this.disposables)r.dispose();this.disposables=[]}get maxPromptTokens(){let r=this.authProvider.getAuthStatus(),t=ri.getConfiguration("cody"),i=t.get("provider.limit.prompt"),o=t.get("provider.limit.solution");if(i&&o)return i-o;let s=(o||1e3)+PBr;return r.configOverwrites?.chatModelMaxTokens?r.configOverwrites.chatModelMaxTokens-s:7e3-s}};function YBr(A){return A==="aborted"||A==="socket hang up"}var bY=class extends RQ{extensionUri;webview;webviewPanel=void 0;treeView;constructor({treeView:r,extensionUri:t,...i}){super(i),this.extensionUri=t,this.treeView=r}async onDidReceiveMessage(r){switch(r.command){case"ready":await this.authProvider.announceNewAuthStatus();break;case"initialized":Qn("ChatPanelProvider:onDidReceiveMessage","initialized"),await this.init(this.startUpChatID),this.handleChatModel();break;case"submit":return this.onHumanMessageSubmitted(r.text,r.submitType,r.contextFiles,r.addEnhancedContext);case"edit":this.transcript.removeLastInteraction(),await this.onHumanMessageSubmitted(r.text,"user"),Fa.log("CodyVSCodeExtension:editChatButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.editChatButton","clicked");break;case"abort":await this.abortCompletion(),Fa.log("CodyVSCodeExtension:abortButton:clicked",{source:"sidebar"},{hasV2Event:!0}),Zs.recordEvent("cody.sidebar.abortButton","clicked");break;case"chatModel":this.chatModel=r.model,this.transcript.setChatModel(r.model);break;case"executeRecipe":await this.executeRecipe(r.recipe,"","chat");break;case"getUserContext":await this.handleContextFiles(r.query);break;case"custom-prompt":await this.onCustomPromptClicked(r.title,r.value);break;case"insert":await oY(r.text,r.metadata);break;case"newFile":sY(r.text,r.metadata),await this.editor.createWorkspaceFile(r.text);break;case"copy":await cY(r.text,r.eventType==="Button",r.metadata);break;case"event":Fa.log(r.eventName,r.properties);break;case"links":e2(r.value);break;case"openFile":await lY(r.filePath,this.webviewPanel?.viewColumn,r.range);break;case"openLocalFileWithRange":await uY(r.filePath,r.range);break;default:this.handleError("Invalid request type from Webview Panel","system")}}async onHumanMessageSubmitted(r,t,i,o=!0){if(Qn("ChatPanelProvider:onHumanMessageSubmitted","chat",{verbose:{text:r,submitType:t}}),RQ.inputHistory.push(r),t==="suggestion"){let s={requestID:this.currentRequestID};Fa.log("CodyVSCodeExtension:chatPredictions:used",s,{hasV2Event:!0})}return this.executeRecipe("chat-question",r,"chat",i,o)}async onCustomPromptClicked(r,t="user"){Fa.log("CodyVSCodeExtension:command:customMenu:clicked",void 0,{hasV2Event:!0}),Qn("ChatPanelProvider:onCustomPromptClicked",r),this.isCustomCommandAction(r)||await this.setWebviewView("chat"),await this.executeCustomCommand(r,t)}handleTranscript(r,t){this.webview?.postMessage({type:"transcript",messages:r,isMessageInProgress:t});let i=this.transcript.getLastInteraction()?.getHumanMessage()?.displayText||"New Chat";this.webviewPanel&&(this.webviewPanel.title=i.length>10?`${i?.slice(0,20)}...`:i)}handleTranscriptErrors(r){this.webview?.postMessage({type:"transcript-errors",isTranscriptError:r})}handleSuggestions(r){this.webview?.postMessage({type:"suggestions",suggestions:r})}handleHistory(r){this.webview?.postMessage({type:"history",messages:r}),this.treeView.updateTree(AY(r))}handleChatModel(){let r=this.authProvider.getAuthStatus()?.endpoint,t=g9A(r),i=this.chatModel?t.map(o=>({...o,default:o.model===this.chatModel})):t;this.webview?.postMessage({type:"chatModels",models:i})}handleError(r,t){if(t==="transcript"){this.transcript.addErrorAsAssistantResponse(r),this.webview?.postMessage({type:"transcript-errors",isTranscriptError:!0});return}this.webview?.postMessage({type:"errors",errors:r})}handleCodyCommands(r){this.webview?.postMessage({type:"custom-prompts",prompts:r})}async handleContextFiles(r){if(!r.length){let i=iY();await this.webview?.postMessage({type:"userContextFiles",context:i});return}await(0,EHA.debounce)(async i=>{try{let s=rY(i,10),g=tY(i,10),[E,p]=await Promise.all([s,g]),B=[...new Set([...E,...p])];await this.webview?.postMessage({type:"userContextFiles",context:B})}catch(o){console.error("Error retrieving context files:",o)}},100)(r)}triggerNotice(r){this.webview?.postMessage({type:"notice",notice:r})}async setWebviewView(r){await this.webview?.postMessage({type:"view",messages:r}),r==="chat"&&(this.webviewPanel||await this.createWebviewPanel(this.sessionID),this.webviewPanel?.reveal())}startUpChatID=void 0;async clearChatHistory(r){if(r){await this.deleteHistory(r);return}await this.clearHistory(),this.webviewPanel?.dispose()}async createWebviewPanel(r,t){if(!this.authProvider.getAuthStatus()?.isLoggedIn||!this.contextProvider.config.experimentalChatPanel){await ti.executeCommand("setContext","cody.chatPanel",!1);return}if(this.webviewPanel)return this.webviewPanel;this.startUpChatID=r;let i="cody.chatPanel",s=(t&&t?.length>10?`${t?.slice(0,20)}...`:t)||"New Chat",g=Zn.joinPath(this.extensionUri,"dist","webviews"),E=ni.createWebviewPanel(i,s,{viewColumn:-2,preserveFocus:!0},{enableScripts:!0,retainContextWhenHidden:!0,enableFindWidget:!0,localResourceRoots:[g],enableCommandUris:!0});return E.iconPath=Zn.joinPath(this.extensionUri,"resources","cody.png"),await OY(this.extensionUri,E),this.webviewPanel=E,this.webview=E.webview,this.contextProvider.webview=E.webview,this.authProvider.webview=E.webview,E.onDidDispose(()=>{this.webviewPanel=void 0,E.dispose()}),this.disposables.push(E.webview.onDidReceiveMessage(p=>this.onDidReceiveMessage(p))),await ti.executeCommand("setContext","cody.chatPanel",!0),Fa.log("CodyVSCodeExtension:createWebviewPanel:clicked",void 0,{hasV2Event:!0}),E}};var MY=class{activePanelProvider=void 0;panelProvidersMap=new Map;options;onConfigurationChange;treeViewProvider=new M5("chat");treeView;disposables=[];constructor({extensionUri:r,...t}){Qn("ChatPanelsManager:constructor","init"),this.options={treeView:this.treeViewProvider,extensionUri:r,...t},this.treeView=ni.createTreeView("cody.chat.tree.view",{treeDataProvider:this.treeViewProvider}),this.disposables.push(ni.registerTreeDataProvider("cody.chat.tree.view",this.treeViewProvider),ni.registerTreeDataProvider("cody.support.tree.view",new M5("support")),ni.registerTreeDataProvider("cody.commands.tree.view",new M5("command"))),this.disposables.push(ti.registerCommand("cody.chat.panel.new",async()=>this.createWebviewPanel()),ti.registerCommand("cody.chat.panel.restore",async(i,o)=>this.restorePanel(i,o))),this.onConfigurationChange=t.contextProvider.configurationChangeEvent.event(async()=>{let i=t.contextProvider.config.experimentalChatPanel;if(await ti.executeCommand("setContext","cody.chatPanel",i),!i){this.disposePanels();return}this.panelProvidersMap.forEach((o,s)=>{o.webviewPanel||(o.dispose(),this.panelProvidersMap.delete(s))})}),this.updateTreeViewHistory()}async syncAuthStatus(r){r.isLoggedIn||this.disposePanels(),await ti.executeCommand("setContext","cody.chatPanel",r.isLoggedIn)}async getChatPanel(){let r=await this.createWebviewPanel();return this.activePanelProvider||r}async createWebviewPanel(r,t){Qn("ChatPanelsManager:createWebviewPanel",this.panelProvidersMap.size.toString());let i=new bY(this.options),o=await i.createWebviewPanel(r,t),s=r||i.sessionID;return this.activePanelProvider=i,this.panelProvidersMap.set(s,i),o?.onDidChangeViewState(g=>{g.webviewPanel.visible&&g.webviewPanel.active&&(this.activePanelProvider=i,this.options.contextProvider.webview=i.webview,this.selectTreeItem(i.sessionID))}),o?.onDidDispose(()=>{this.disposeProvider(s)}),this.selectTreeItem(s),i}selectTreeItem(r){if(!this.treeView.visible)return;let t=this.treeViewProvider.getTreeItemByID(r);t&&this.treeView?.reveal(t,{select:!0,focus:!1})}async executeRecipe(r,t,i){Qn("ChatPanelsManager:executeRecipe",r),await(await this.getChatPanel()).executeRecipe(r,t,i)}async executeCustomCommand(r,t){if(Qn("ChatPanelsManager:executeCustomCommand",r),!["add","get","menu"].includes(r)){await this.executeRecipe("custom-prompt",r,"custom-commands");return}await(await this.getChatPanel()).executeCustomCommand(r,t)}updateTreeViewHistory(){let r=kc.getChatHistory();r&&this.treeViewProvider.updateTree(AY({chat:r?.chat,input:r.input}))}async clearHistory(r){if(r){this.disposeProvider(r),await this.activePanelProvider?.clearChatHistory(r),this.updateTreeViewHistory();return}this.disposePanels(),this.treeViewProvider.reset()}async clearAndRestartSession(){if(Qn("ChatPanelsManager","clearAndRestartSession"),this.activePanelProvider){await this.activePanelProvider.clearAndRestartSession();return}await(await this.getChatPanel()).clearAndRestartSession()}async restorePanel(r,t){Qn("ChatPanelsManager","restorePanel");let i=this.panelProvidersMap.get(r);if(i){i.webviewPanel?.reveal();return}await this.createWebviewPanel(r,t)}triggerNotice(r){this.getChatPanel().then(t=>t.triggerNotice(r)).catch(t=>console.error(t))}disposeProvider(r){r===this.activePanelProvider?.sessionID&&(this.activePanelProvider.webviewPanel?.dispose(),this.activePanelProvider.dispose(),this.activePanelProvider=void 0);let t=this.panelProvidersMap.get(r);t&&(this.panelProvidersMap.delete(r),t.webviewPanel?.dispose(),t.dispose())}disposePanels(){this.panelProvidersMap.forEach(r=>{r.webviewPanel?.dispose(),r.dispose()}),this.panelProvidersMap.clear(),this.updateTreeViewHistory()}dispose(){this.disposePanels(),this.onConfigurationChange.dispose(),this.disposables.forEach(r=>r.dispose())}};var fHA=Yn(JB());var kY=class{async openExternalAuthUrl(r,t){await UBr(t)&&r.authProviderSimplifiedWillAttemptAuth()}};async function UBr(A){let s=`/post-sign-up?returnTo=${`/user/settings/tokens/new/callback?requestFrom=${Ec.uriScheme==="vscode-insiders"?"CODY_INSIDERS":"CODY"}`}`,g=CQ.toString(),E=`${g}sign-in?returnTo=${s}`,p=`${g}.auth/github/login?pc=https%3A%2F%2Fgithub.com%2F%3A%3Ae917b2b7fa9040e1edd4&redirect=${s}`,B=`${g}.auth/gitlab/login?pc=https%3A%2F%2Fgitlab.com%2F%3A%3Ab45ecb474e92c069567822400cf73db6e39917635bf682f062c57aca68a1e41c&redirect=${s}`,m=`${g}.auth/openidconnect/login?pc=google&redirect=${s}`,_;switch(A){case"github":_=p;break;case"gitlab":_=B;break;case"google":_=m;break;case"dotcom":default:_=E;break}return Ec.openExternal(_)}var xY=class{isSupported;disposed=!1;disposables=[];changeEventEmitter=new nl;tokenFileChangeEventEmitter=new nl;_isInstalled=!1;_isRunning=!1;constructor(){this.isSupported=ww(process.platform,process.arch)&&process.env.HOME!==void 0,this.init()}get isInstalled(){return this._isInstalled}get isRunning(){return this._isRunning}get onChange(){return this.changeEventEmitter.event}get onTokenFileChange(){return this.tokenFileChangeEventEmitter.event}async init(){let r=process.env.HOME;if(!this.isSupported||!r)return;let t=this.pollHttp();for(let i of DM[process.platform]){let o=$G(i.dir,process.env.HOME),s=Zn.file(o),g=s.with({path:s.path+i.file}),E=new p4(s,i.file),p=ri.createFileSystemWatcher(E),B=()=>this.patternChanged(g,!!i.hasToken);this.disposables.push(p.onDidCreate(B)),this.disposables.push(p.onDidChange(B)),this.disposables.push(p.onDidDelete(B)),this.disposables.push(p),B()}await t}patternChanged(r,t){this.setNeedsToCheckFiles(),t&&this.tokenFileChangeEventEmitter.fire(r)}needsToCheckFiles=!1;setNeedsToCheckFiles(){this.needsToCheckFiles||(this.needsToCheckFiles=!0,this.checkFiles())}async checkFiles(){this.needsToCheckFiles=!1;let r=!1;for(let t of DM[process.platform]){let i=$G(t.dir,process.env.HOME),o=Zn.file(i),s=o.with({path:o.path+t.file});if(r||=await WcA(s),r)break}r!==this._isInstalled&&(this._isInstalled=r,this.changeEventEmitter.fire(this))}async pollHttp(){if(this.disposed)return;let r=!1;try{r=(await fetch(`${Rh.href}__version`)).status===200}catch{r=!1}r!==this._isRunning&&(this._isRunning=r,this.changeEventEmitter.fire(this)),setTimeout(()=>{this.pollHttp()},2e4)}dispose(){this.disposed=!0;for(let r of this.disposables)r.dispose();this.disposables=[]}};var HY=class extends RQ{extensionUri;webview;webviewPanel=void 0;constructor({extensionUri:r,...t}){super(t),this.extensionUri=r;let i=new xY;this.disposables.push(i),this.disposables.push(i.onChange(o=>this.appWatcherChanged(o))),this.disposables.push(i.onTokenFileChange(o=>this.tokenFileChanged(o)))}async onDidReceiveMessage(r){switch(r.command){case"ready":await this.authProvider.announceNewAuthStatus();break;case"initialized":Qn("SidebarChatProvider:onDidReceiveMessage","initialized"),await this.setWebviewView("chat"),await this.init();break;case"submit":return this.onHumanMessageSubmitted(r.text,r.submitType,r.contextFiles);case"edit":this.transcript.removeLastInteraction(),await this.onHumanMessageSubmitted(r.text,"user"),Fa.log("CodyVSCodeExtension:editChatButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.editChatButton","clicked");break;case"abort":await this.abortCompletion(),Fa.log("CodyVSCodeExtension:abortButton:clicked",{source:"sidebar"},{hasV2Event:!0}),Zs.recordEvent("cody.sidebar.abortButton","clicked");break;case"chatModel":this.chatModel=r.model;break;case"executeRecipe":await this.setWebviewView("chat"),await this.executeRecipe(r.recipe,"","chat");break;case"auth":if(r.type==="app"&&r.endpoint){await this.authProvider.appAuth(r.endpoint);let t=r.value==="download"?"app:download":"app:connect";Fa.log(`CodyVSCodeExtension:${t}:clicked`,void 0,{hasV2Event:!0}),Zs.recordEvent(`cody.${t}`,"clicked");break}if(r.type==="callback"&&r.endpoint){this.authProvider.redirectToEndpointLogin(r.endpoint);break}if(r.type==="simplified-onboarding"){let t=new kY,i=r.authMethod||"dotcom";t.openExternalAuthUrl(this.authProvider,i);break}await ti.executeCommand(`cody.auth.${r.type}`);break;case"getUserContext":await this.handleContextFiles(r.query);break;case"history":r.action==="clear"&&await this.clearHistory(),r.action==="export"&&await this.exportHistory();break;case"restoreHistory":await this.restoreSession(r.chatID);break;case"deleteHistory":await this.deleteHistory(r.chatID);break;case"custom-prompt":await this.onCustomPromptClicked(r.title,r.value);break;case"reload":await this.authProvider.reloadAuthStatus(),Fa.log("CodyVSCodeExtension:authReloadButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.authReloadButton","clicked");break;case"insert":await oY(r.text,r.metadata);break;case"newFile":sY(r.text,r.metadata),await this.editor.createWorkspaceFile(r.text);break;case"copy":await cY(r.text,r.eventType==="Button",r.metadata);break;case"event":Fa.log(r.eventName,r.properties);break;case"links":e2(r.value);break;case"openFile":await lY(r.filePath,this.webviewPanel?.viewColumn);break;case"openLocalFileWithRange":await uY(r.filePath,r.range);break;case"simplified-onboarding":if(r.type==="install-app"){this.simplifiedOnboardingInstallApp();break}if(r.type==="open-app"){e2(c9A.href);break}if(r.type==="reload-state"){this.simplifiedOnboardingReloadEmbeddingsState();break}if(r.type==="web-sign-in-token"){ni.showInputBox({prompt:"Enter web sign-in token"}).then(async t=>{if(!t)return;(await this.authProvider.auth(CQ.href,t))?.isLoggedIn||ni.showErrorMessage("Authentication failed. Please check your token and try again.")});break}break;default:this.handleError("Invalid request type from Webview","system")}}async simplifiedOnboardingInstallApp(){let r=process.platform,t=process.arch,i=r&&t&&ww(r,t)?`https://sourcegraph.com/.api/app/latest?arch=${u9A(t)}&target=${r}`:s9A.href;await e2(i)}async simplifiedOnboardingReloadEmbeddingsState(){await this.contextProvider.forceUpdateCodebaseContext()}appWatcherChanged(r){this.webview?.postMessage({type:"app-state",isInstalled:r.isInstalled}),this.simplifiedOnboardingReloadEmbeddingsState()}tokenFileChanged(r){this.authProvider.appDetector.tryFetchAppJson(r).then(()=>this.simplifiedOnboardingReloadEmbeddingsState())}async onHumanMessageSubmitted(r,t,i,o=!0){if(Qn("ChatPanelProvider:onHumanMessageSubmitted","chat",{verbose:{text:r,submitType:t}}),RQ.inputHistory.push(r),t==="suggestion"){let s={requestID:this.currentRequestID};Fa.log("CodyVSCodeExtension:chatPredictions:used",s,{hasV2Event:!0})}return this.executeRecipe("chat-question",r,"chat",i,o)}async onCustomPromptClicked(r,t="user"){Fa.log("CodyVSCodeExtension:command:customMenu:clicked",void 0,{hasV2Event:!0}),Qn("SidebarChatProvider:onCustomPromptClicked",r),this.isCustomCommandAction(r)||await this.setWebviewView("chat"),await this.executeCustomCommand(r,t)}handleTranscript(r,t){this.webview?.postMessage({type:"transcript",messages:r,isMessageInProgress:t})}handleSuggestions(r){this.webview?.postMessage({type:"suggestions",suggestions:r})}handleHistory(r){this.webview?.postMessage({type:"history",messages:r})}handleError(r,t){if(t==="transcript"){this.transcript.addErrorAsAssistantResponse(r),this.webview?.postMessage({type:"transcript-errors",isTranscriptError:!0});return}this.webview?.postMessage({type:"errors",errors:r})}handleCodyCommands(r){this.webview?.postMessage({type:"custom-prompts",prompts:r})}async handleContextFiles(r){if(!r.length){let i=iY();await this.webview?.postMessage({type:"userContextFiles",context:i});return}await(0,fHA.debounce)(async i=>{try{let s=rY(i,10),g=tY(i,10),[E,p]=await Promise.all([s,g]),B=[...new Set([...E,...p])];await this.webview?.postMessage({type:"userContextFiles",context:B})}catch(o){console.error("Error retrieving context files:",o)}},100)(r)}triggerNotice(r){ti.executeCommand("cody.chat.focus",{preserveFocus:!0}),this.webview?.postMessage({type:"notice",notice:r})}async setWebviewView(r){await ti.executeCommand("cody.chat.focus"),await this.webview?.postMessage({type:"view",messages:r})}async resolveWebviewView(r,t,i){this.webview=r.webview,this.authProvider.webview=r.webview,this.contextProvider.webview=r.webview;let o=Zn.joinPath(this.extensionUri,"dist","webviews");r.webview.options={enableScripts:!0,localResourceRoots:[o],enableCommandUris:!0},await OY(this.extensionUri,r),this.disposables.push(r.webview.onDidReceiveMessage(s=>this.onDidReceiveMessage(s)))}async clearChatHistory(r){if(!r){await this.clearAndRestartSession(),await this.clearHistory();return}await this.deleteHistory(r)}};var SY=class{sidebarChat;chatPanelsManager=void 0;options;onConfigurationChange;disposables=[];constructor({extensionUri:r,...t}){Qn("ChatManager:constructor","init"),this.options={extensionUri:r,...t},this.sidebarChat=new HY(this.options),t.contextProvider.config.experimentalChatPanel&&this.createChatPanelsManger(),this.disposables.push(ti.registerCommand("cody.chat.history.export",async()=>this.exportHistory()),ti.registerCommand("cody.chat.history.clear",async()=>this.clearHistory()),ti.registerCommand("cody.chat.history.delete",async i=>this.clearHistory(i))),this.onConfigurationChange=t.contextProvider.configurationChangeEvent.event(async()=>{let i=t.contextProvider.config.experimentalChatPanel;await ti.executeCommand("setContext","cody.chatPanel",i),i?this.createChatPanelsManger():this.disposeChatPanelsManager()})}async getChatProvider(){return this.chatPanelsManager?await this.chatPanelsManager.getChatPanel():this.sidebarChat}async syncAuthStatus(r){this.chatPanelsManager&&await this.chatPanelsManager?.syncAuthStatus(r)}async setWebviewView(r){await(await this.getChatProvider())?.setWebviewView(r)}async executeRecipe(r,t,i=!0,o){if(Qn("ChatManager:executeRecipe:called",r),!this.chatPanelsManager){i&&await this.sidebarChat.setWebviewView("chat"),await this.sidebarChat.executeRecipe(r,t,o);return}if(!ni.visibleTextEditors.length){ni.showErrorMessage("Please open a file before running a command.");return}let s=["/doc","/edit"].includes(t);if(!i||s){await this.sidebarChat.executeRecipe(r,t,o);return}let g=await this.getChatProvider();if(!i||!this.chatPanelsManager){await this.sidebarChat.executeRecipe(r,t,o);return}await g.executeRecipe(r,t,o)}async executeCustomCommand(r,t){if(Qn("ChatManager:executeCustomCommand:called",r),!["add","get","menu"].includes(r)){await this.executeRecipe("custom-prompt",r,!0);return}await(await this.getChatProvider()).executeCustomCommand(r,t)}async clearHistory(r){if(!this.chatPanelsManager){await this.sidebarChat.clearHistory();return}let t=r?.id;if(t){await this.sidebarChat.clearChatHistory(t),await this.chatPanelsManager?.clearHistory(t);return}if(!r){if(Qn("ChatManager:clearHistory","userConfirmation"),!await ni.showWarningMessage("Are you sure you want to delete all of your chats?",{modal:!0},"Delete All Chats"))return;await this.sidebarChat.clearHistory(),await this.chatPanelsManager?.clearHistory()}}async clearAndRestartSession(){if(!this.chatPanelsManager)return this.sidebarChat.clearAndRestartSession();await this.chatPanelsManager.clearAndRestartSession()}async restoreSession(r){await(await this.getChatProvider()).restoreSession(r)}async exportHistory(){await this.sidebarChat.exportHistory()}async simplifiedOnboardingReloadEmbeddingsState(){await this.sidebarChat.simplifiedOnboardingReloadEmbeddingsState()}createChatPanelsManger(){this.chatPanelsManager||(this.chatPanelsManager=new MY(this.options),Fa.log("CodyVSCodeExtension:chatPanelsManger:activated",void 0,{hasV2Event:!0}))}async createWebviewPanel(r,t){if(this.chatPanelsManager)return this.chatPanelsManager.createWebviewPanel(r,t)}lastDisplayedNotice="";triggerNotice(r){this.lastDisplayedNotice!==r.key&&(this.lastDisplayedNotice=r.key,this.getChatProvider().then(t=>t.triggerNotice(r)).catch(t=>console.error(t)))}disposeChatPanelsManager(){this.options.contextProvider.webview=this.sidebarChat.webview,this.options.authProvider.webview=this.sidebarChat.webview,this.chatPanelsManager?.dispose(),this.chatPanelsManager=void 0}dispose(){this.disposeChatPanelsManager(),this.onConfigurationChange.dispose(),this.disposables.forEach(r=>r.dispose())}};async function OY(A,r){let t=Zn.joinPath(A,"dist","webviews"),i=Zn.joinPath(t,"index.html"),o=await ri.fs.readFile(i),s=new TextDecoder("utf-8").decode(o),g=r.webview.asWebviewUri(t);r.webview.html=s.replaceAll("./",`${g.toString()}/`).replaceAll("{cspSource}",r.webview.cspSource)}var OHA=Yn(JB());var BHA={async newEmbeddingsSearchClient(A,r){let t,i=!0;for(let o of A.map(s=>this.detectEmbeddings(s,r))){let s=await o,g=s instanceof Error;if(i&&=g,g){t||=s;continue}if(s!==void 0)return s()}if(i)return console.log("EmbeddingsDetector",`Error getting embeddings availability for ${r}`,t),t},async detectEmbeddings(A,r){let t=await A.getRepoIdIfEmbeddingExists(r);return t instanceof Error?t:t?()=>new l_(A,t):void 0}};var _lA=Yn(i6());var LBr=new Set(["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var","Context","ctx","err","error","ok"]),jBr=new Set(["any","as","async","boolean","break","case","catch","class","const","constructor","continue","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","if","implements","import","in","instanceof","interface","let","module","new","null","number","of","package","private","protected","public","require","return","static","string","super","switch","symbol","this","throw","true","try","type","typeof","var","void","while","with","yield"]),WBr=new Set(["and","as","assert","async","await","break","class","continue","def","del","elif","else","except","False","finally","for","from","global","if","import","in","is","lambda","None","nonlocal","not","or","pass","raise","return","True","try","while","with","yield"]),FY=new Set([...LBr,...jBr,...WBr]),RY=/[$A-Z_a-z][\w$]*/g,JBr=new Set(["node_modules/typescript/lib","node_modules/@types/node","node_modules/csstype","node_modules/@types/prop-types","node_modules/@types/react/","node_modules/next/","libexec/src/","lib/python3.","stdlib/builtins.pyi"]);function hHA(A){for(let r of JBr)if(A.fsPath.includes(r))return!0;return!1}function QHA(A,r){let t=[],i=0;function o(){if(i>=A||t.length===0)return;let s=t.shift();i+=1;let g=!1,E=setTimeout(()=>{g=!0,s.reject(new e5),i-=1,o()},r);s.creator().then(B=>{g||s.resolve(B)}).catch(B=>{g||s.reject(B)}).finally(()=>{g||(clearTimeout(E),i-=1,o())})}return function(g,E){let p,B=new Promise((m,_)=>{p={creator:g,abortSignal:E,resolve:m,reject:_}});return t.push(p),E?.addEventListener("abort",()=>{let m=t.indexOf(p);m<0||(p.reject(new M8),t.splice(m,1))}),o(),B}}var qBr=2,VBr=QHA(2,2e3),mHA=async A=>{let r=A.getActiveTextEditor(),t=A.getWorkspaceRootUri();if(!r||!t)return[];let i="getGraphContextFromEditor";performance.mark(i);let o=t.with({path:r.filePath}),g=(await _HA([{uri:o,range:r.selectionRange}],new Map([[o.fsPath,r.content.split(` -`)]]),qBr)).filter(({filePath:E})=>E!==o.fsPath);return Qn("GraphContext:filteredSnippetsRetrieved",`Retrieved ${g.length} filtered context snippets`),performance.mark(i),g},DHA=async(A,r,t,i=new Map)=>{let o=A.uri;i=i.size===0?new Map([[o.fsPath,A.getText().split(` -`)]]):i;let s=[{uri:o,range:r}],g="getGraphContextFromRange";performance.mark(g);let E=wHA(s,i).slice(0,50),B=(await rhr(E,t)).flatMap($Br);return performance.mark(g),B},_HA=async(A,r,t=0)=>{let i="getGraphContextFromSelection";performance.mark(i);let o=await KBr(A),s=o.map(({uri:m,range:_})=>_?new E4(m,new sa(_?.start.line,_.start.character,_.end.line,_.end.character)):void 0).filter(p1),g=wHA(s,r),E=await XBr(o,g);await zBr(r,E.map(({definitionLocations:m})=>m.map(({uri:_})=>_)).flat());let p=E1(E.map(({definitionLocations:m,typeDefinitionLocations:_,implementationLocations:x,...O})=>m.map(k=>({location:k,...O}))).flat(),({symbolName:m,location:_})=>`${m}:${jh(_)}`),B=await thr(p,r);return Qn("GraphContext:snippetsRetrieved",`Retrieved ${B.length} context snippets`),performance.mark(i),t>0&&B.push(...await _HA(B.map(m=>({uri:_lA.URI.file(m.filePath),range:m.range?new sa(m.range.startLine,m.range.startCharacter,m.range.endLine,m.range.endCharacter):void 0})),r,t-1)),B},zBr=async(A,r)=>{let i=E1(r,"fsPath").filter(s=>!A.has(s.fsPath)).filter(s=>!hHA(s)),o=new Map(i.map(s=>[s.fsPath,ri.openTextDocument(s.fsPath).then(g=>g.getText().split(` -`))]));for(let[s,g]of await IHA(o))A.set(s,g)},KBr=async(A,r=vHA)=>{let t=await IHA(new Map(E1(A.map(({uri:s})=>s),"fsPath").map(s=>[s.fsPath,r(s)]))),i=new Map;for(let{uri:s,range:g}of A)i.set(s.fsPath,[...i.get(s.fsPath)??[],g]);let o=[];for(let[s,g]of i.entries()){let E=t.get(s);if(!E)continue;let p=g.filter(p1);o.push(...(p.lengthp.some(_=>B.line<=_.end.line&&_.start.line<=m.line))).map(B=>({uri:_lA.URI.file(s),range:B})))}return o},wHA=(A,r)=>{let t=[];for(let{uri:i,range:o}of A){let s=r.get(i.fsPath);if(!(!o||!s))for(let{start:g,end:E}of[o])for(let[p,B]of s.slice(g.line,E.line+1).entries()){let m=B.replace(/\/\/.*$/,"").matchAll(RY);for(let _ of m)_.index===void 0||FY.has(_[0])||t.push({symbolName:_[0],uri:i,position:new Ao(g.line+p,_.index+1)})}}return t},XBr=async(A,r,t=yHA,i=CHA,o=ihr,s=nhr)=>{let g=[];for(let{symbolName:p,uri:B,position:m}of E1(r,"symbolName"))g.push({symbolName:p,hover:t(B,m),definitionLocations:i(B,m),typeDefinitionLocations:o(B,m),implementationLocations:s(B,m)});return(await Promise.all(g.map(async({symbolName:p,hover:B,definitionLocations:m,typeDefinitionLocations:_,implementationLocations:x})=>({symbolName:p,hover:await B,definitionLocations:await m,typeDefinitionLocations:await _,implementationLocations:await x})))).map(({definitionLocations:p,...B})=>({definitionLocations:p.filter(({uri:m,range:_})=>!A.some(({uri:x,range:O})=>m.fsPath===x.fsPath&&(O===void 0||O.start.line<=_.start.line&&_.end.line<=O.end.line))),...B})).filter(({definitionLocations:p,typeDefinitionLocations:B,implementationLocations:m})=>p.length+B.length+m.length!==0)},ZBr=A=>A.flatMap(r=>r.contents.map(t=>typeof t=="string"?t:t.value)).map(ehr).map(r=>r.trim()).filter(r=>r!==""),$Br=A=>[Ahr(A.symbol)].filter(p1),Ahr=(A,r)=>{if(A===void 0)return;let t=ZBr(A.hover);if(t=t.filter(i=>!lhr(A.symbolName,i)),t.length!==0)return{symbolName:A.symbolName,sourceSymbolName:r,content:t,uri:A.location.uri.toString(),range:void 0}};function ehr(A){let r=A.split(` -`),t=[],i=!1;for(let o of r){let s=o.trim().startsWith("```");s&&!i?i=!0:s&&i?i=!1:i&&t.push(o)}return t.join(` -`)}var rhr=async(A,r,t=yHA)=>{let i=A.map(({symbolName:s,uri:g,position:E})=>({symbolName:s,symbolLocation:new E4(g,E)})),o=E1(i,s=>jh(s.symbolLocation));return Promise.all(o.map(async({symbolName:s,symbolLocation:g})=>{let E=VBr(()=>t(g.uri,g.range.start),r);return{symbolName:s,symbolLocation:g,symbol:{symbolName:s,location:g,hover:await E}}}))},thr=async(A,r,t=vHA)=>{let i=new Map([...r.keys()].filter(s=>A.some(({location:g})=>g.uri.fsPath===s)).map(s=>[s,t(Zn.file(s))]));await Promise.all([...i.values()]);let o=[];for(let{symbolName:s,hover:g,location:E}of A){let{uri:p,range:B}=E,m=r.get(p.fsPath),_=i.get(p.fsPath);if(m&&_){let x=m,O=await _,k=chr(x,O,[B]);for(let P of k)o.push({symbol:{fuzzyName:s},filePath:p.fsPath,range:{startLine:B.start.line,startCharacter:B.start.character,endLine:B.end.line,endCharacter:B.end.character},hoverText:g.flatMap(H=>H.contents.map(T=>typeof T=="string"?T:T.value)),definitionSnippet:P})}}return o},vHA=async A=>ti.executeCommand("vscode.executeDocumentSymbolProvider",A).then(r=>r?r.map(ahr):[]),yHA=async(A,r)=>ti.executeCommand("vscode.executeHoverProvider",A,r),CHA=async(A,r)=>ti.executeCommand("vscode.executeDefinitionProvider",A,r).then(t=>t.flatMap(wlA)),ihr=async(A,r)=>ti.executeCommand("vscode.executeTypeDefinitionProvider",A,r).then(t=>t.flatMap(wlA)).then(t=>t.length>0?t:CHA(A,r)),nhr=async(A,r)=>ti.executeCommand("vscode.executeImplementationProvider",A,r).then(t=>t.flatMap(wlA)),ahr=A=>ohr(A)?A.range:A.location.range,ohr=A=>A.range!==void 0,wlA=A=>shr(A)?new E4(A.targetUri,A.targetRange):A,shr=A=>A.targetUri!==void 0,chr=(A,r,t)=>r.filter(o=>t.some(s=>o.start.line<=s.start.line&&s.end.line<=o.end.line)).map(o=>A.slice(o.start.line,o.end.line+1).join(` -`)),jh=A=>`${A.uri?.fsPath}?L${A.range.start.line}:${A.range.start.character}`,IHA=async A=>{let r=new Map;for(let[t,i]of A)r.set(t,await i);return r};function lhr(A,r){let t=r.trim();return t===`interface ${A}`||t===`class ${A}`||t===`type ${A}`}var TY=class{constructor(r){this.editor=r}getContext(){return mHA(this.editor)}};var NY=class{constructor(r,t,i,o,s,g,E,p){this.config=r;this.chat=t;this.codebaseContext=i;this.editor=o;this.rgPath=s;this.symf=g;this.authProvider=E;this.platform=p;this.disposables.push(this.configurationChangeEvent),this.currentWorkspaceRoot="",this.disposables.push(ni.onDidChangeActiveTextEditor(async()=>{await this.updateCodebaseContext()}),ri.onDidChangeWorkspaceFolders(async()=>{await this.updateCodebaseContext()}))}webview;configurationChangeEvent=new nl;currentWorkspaceRoot;disposables=[];get context(){return this.codebaseContext}async init(){await this.updateCodebaseContext(),await this.publishContextStatus()}onConfigurationChange(r){Qn("ContextProvider:onConfigurationChange","using codebase",r.codebase),this.config=r;let t=this.authProvider.getAuthStatus();t.endpoint&&(this.config.serverEndpoint=t.endpoint),this.configurationChangeEvent.fire()}async forceUpdateCodebaseContext(){return this.currentWorkspaceRoot="",this.syncAuthStatus()}async updateCodebaseContext(){if(!this.editor.getActiveTextEditor()&&ni.visibleTextEditors.length!==0)return;let r=this.editor.getWorkspaceRootUri()?.fsPath;if(!r||r===""||r===this.currentWorkspaceRoot)return;this.currentWorkspaceRoot=r;let t=await bHA(this.config,this.rgPath,this.symf,this.editor,this.chat,this.platform,await this.getEmbeddingClientCandidates(this.config));t&&this.currentWorkspaceRoot===r&&(this.codebaseContext=t,await this.publishContextStatus())}async syncAuthStatus(){let r=this.authProvider.getAuthStatus(),t=await k4();if(r.siteVersion){let g=await bHA(t,this.rgPath,this.symf,this.editor,this.chat,this.platform,await this.getEmbeddingClientCandidates(t));g&&(this.codebaseContext=g)}await this.publishConfig(),this.onConfigurationChange(t);let i=!r.isLoggedIn&&!r.endpoint,o=Th(r.endpoint||"")?".app":"",s=i?"disconnected":r.isLoggedIn?"connected":"failed";switch("auth"){case"auth":Fa.log(`CodyVSCodeExtension:Auth${o.replace(/^\./,":")}:${s}`),Zs.recordEvent(`cody.auth${o}`,s);break}}async publishContextStatus(){let t=(0,OHA.throttle)(async()=>{let i=this.editor.getActiveTextEditor();await this.webview?.postMessage({type:"contextStatus",contextStatus:{mode:this.config.useContext,endpoint:this.authProvider.getAuthStatus().endpoint||void 0,connection:this.codebaseContext.checkEmbeddingsConnection(),embeddingsEndpoint:this.codebaseContext.embeddingsEndpoint,codebase:this.codebaseContext.getCodebase(),filePath:i?ri.asRelativePath(i.filePath):void 0,selectionRange:i?.selectionRange,supportsKeyword:!0}})},250,{leading:!0,trailing:!0});return this.disposables.push(this.configurationChangeEvent.event(()=>t())),this.disposables.push(ni.onDidChangeActiveTextEditor(()=>t())),this.disposables.push(ni.onDidChangeTextEditorSelection(()=>t())),t()}async publishConfig(){await(async()=>{this.config=await k4();let t=this.authProvider.getAuthStatus(),o={...await this.authProvider.appDetector.getProcessInfo(t.isLoggedIn),debugEnable:this.config.debugEnable,serverEndpoint:this.config.serverEndpoint,experimentalChatPanel:this.config.experimentalChatPanel};await this.updateCodebaseContext(),await this.webview?.postMessage({type:"config",config:o,authStatus:t}),Qn("Cody:publishConfig","configForWebview",{verbose:o})})()}dispose(){for(let r of this.disposables)r.dispose();this.disposables=[]}appClient;async maybeAppClient(){if(this.appClient)return this.appClient;let r=await oB.get(Rh.href);if(!r)return;let t={serverEndpoint:Rh.href,accessToken:r,customHeaders:{}};return this.appClient=new nB(t)}async getEmbeddingClientCandidates(r){let t=[new nB(r)];if(Th(r.serverEndpoint))return t;let i=await this.maybeAppClient();return i&&t.unshift(i),t}};async function bHA(A,r,t,i,o,s,g){let E=i.getWorkspaceRootUri();if(!E)return null;let p=sxA(E);console.log(A.codebase);let B=A.codebase||(p?q_A(p):null);if(!B)return null;let m=await BHA.newEmbeddingsSearchClient(g,B);return Yo(m)&&(Qn("ContextProvider:getCodebaseContext",`Cody could not find embeddings for '${B}' on your Sourcegraph instance`),m=void 0),new c_(A,B,m||null,r?s.createLocalKeywordContextFetcher?.(r,i,o)??null:null,r?s.createFilenameContextFetcher?.(r,i,o)??null:null,new TY(i),t,void 0)}var MM=class{static providedCodeActionKinds=[d4.QuickFix];async provideCodeActions(r,t,i){let o=i.diagnostics.filter(B=>B.severity===0||B.severity===1);if(o.length===0)return[];let s=new sa(r.lineAt(t.start.line).range.start,r.lineAt(t.end.line).range.end),g=await Xm(r.uri,t.start.line),E=g?new sa(g.start,g.end):s;return[await this.createCommandCodeAction(r,o,E)]}async createCommandCodeAction(r,t,i){let o=new Zv("Ask Cody to Fix",d4.QuickFix),s=await this.getCodeActionInstruction(r.getText(i),t),g="code-action";return o.command={command:"cody.command.edit-code",arguments:[{instruction:s,range:i,intent:"fix"},g],title:"Ask Cody to Fix"},o.diagnostics=t,o}async getCodeActionInstruction(r,t){let i=[`${r} -`];for(let o=0;o: ${s}`),p?.length){i.push("Code related to this diagnostic:");let m=await this.getRelatedInformationContext(p);i.push(...m)}o${s.getText(i.range)} -`)}return t}};var PY=class{fixupProviders=new Map;messageProviderOptions;configurationChangeListener;codeActionProvider=null;constructor(r){this.messageProviderOptions=r,this.configureCodeAction(r.contextProvider.config.codeActions),this.configurationChangeListener=r.contextProvider.configurationChangeEvent.event(()=>{this.configureCodeAction(r.contextProvider.config.codeActions)})}configureCodeAction(r){if(!r){this.codeActionProvider?.dispose(),this.codeActionProvider=null;return}this.codeActionProvider||(this.codeActionProvider=yf.registerCodeActionsProvider("*",new MM,{providedCodeActionKinds:MM.providedCodeActionKinds}))}getProviderForTask(r){let t=this.fixupProviders.get(r);return t||(t=new vlA({task:r,...this.messageProviderOptions}),this.fixupProviders.set(r,t)),t}removeProviderForTask(r){let t=this.fixupProviders.get(r);t&&(this.fixupProviders.delete(r),t.dispose())}dispose(){this.configurationChangeListener.dispose(),this.codeActionProvider?.dispose(),this.codeActionProvider=null}},vlA=class extends RQ{task;constructor({task:r,...t}){super(t),this.task=r}async startFix(){await this.executeRecipe("fixup",this.task.id,this.task.source)}async abortFix(){await this.abortCompletion()}handleTranscript(r,t){let i=r.at(-1);i?.speaker==="assistant"&&(!i.text&&!t&&this.handleError("Cody did not respond with any text"),i.text&&this.editor.controllers.fixups?.didReceiveFixupText(this.task.id,nS(i.text),t?"streaming":"complete"))}handleError(r){this.editor.controllers.fixups?.error(this.task.id,r)}handleCodyCommands(){}handleHistory(){}handleSuggestions(){}handleMyPrompts(){}};var kM=class{static providedCodeActionKinds=[d4.QuickFix];provideCodeActions(r,t,i){let o=i.diagnostics.filter(s=>s.severity===0||s.severity===1);return o.length===0?[]:[this.createCommandCodeAction(o)]}createCommandCodeAction(r){let t=new Zv("Ask Cody to Explain",d4.QuickFix),i=this.getCodeActionInstruction(r);return t.command={command:"cody.action.chat",arguments:[i,"code-action"],title:"Ask Cody to Explain"},t.diagnostics=r,t}getCodeActionInstruction=r=>`Explain the following error${r.length>1?"s":""}: - -${r.map(({message:t})=>`\`\`\`${t}\`\`\``).join(` - -`)}`};var GY=class{inlineChatThreadProviders=new Map;messageProviderOptions;configurationChangeListener;codeActionProvider=null;constructor(r){this.messageProviderOptions=r,this.configureCodeAction(r.contextProvider.config),this.configurationChangeListener=r.contextProvider.configurationChangeEvent.event(()=>{this.configureCodeAction(r.contextProvider.config)})}configureCodeAction(r){if(!r.codeActions){this.codeActionProvider?.dispose(),this.codeActionProvider=null;return}this.codeActionProvider||(this.codeActionProvider=yf.registerCodeActionsProvider("*",new kM,{providedCodeActionKinds:kM.providedCodeActionKinds}))}getProviderForThread(r){let t=this.inlineChatThreadProviders.get(r);return t||(t=new ylA({thread:r,...this.messageProviderOptions}),this.inlineChatThreadProviders.set(r,t)),t}removeProviderForThread(r){let t=this.inlineChatThreadProviders.get(r);t&&(this.inlineChatThreadProviders.delete(r),t.removeChat(),t.dispose())}dispose(){this.configurationChangeListener.dispose(),this.codeActionProvider?.dispose(),this.codeActionProvider=null}},ylA=class extends RQ{thread;constructor({thread:r,...t}){super(t),this.thread=r}async addChat(r,t){ti.executeCommand("setContext","cody.inline.reply.pending",!0),await this.editor.controllers.inline?.chat(r,this.thread,t),this.editor.controllers.inline?.setResponsePending(!0),await this.executeRecipe("inline-chat",r.trimStart(),"inline-chat")}removeChat(){this.editor.controllers.inline?.delete(this.thread)}async abortChat(){this.editor.controllers.inline?.abort(),await this.abortCompletion(),ti.executeCommand("setContext","cody.inline.reply.pending",!1)}handleTranscript(r,t){let i=r.at(-1);i?.speaker==="assistant"&&(i.displayText&&(this.editor.controllers.inline?.setResponsePending(!1),this.editor.controllers.inline?.reply(i.displayText,t?"streaming":"complete")),t||ti.executeCommand("setContext","cody.inline.reply.pending",!1))}handleError(r){this.editor.controllers.inline?.error(r)}handleHistory(){}handleSuggestions(){}handleCodyCommands(){}};var Vwe=Yn(xqA());var hV={user:200,lowPerformance:1e3,comment:1e3,max:2e3},OTr=new Set(["css","html","scss","vue","dart","json","yaml","postcss","markdown","plaintext","xml"]),K0={sessionTimestamp:0,currentLatency:0,suggested:0,uri:""};function HqA(A,r,t,i){let o=0;(A.language&&OTr.has(t)||i==="comment")&&(o=hV.lowPerformance);let E=Date.now();K0.sessionTimestamp||(K0.sessionTimestamp=E),(E-K0.sessionTimestamp>=5*60*1e3||K0.uri!==r)&&pdA(E),K0.suggested++,K0.uri=r;let B=Math.max(o,Math.min(o+K0.currentLatency,hV.max));return K0.suggested>=5&&K0.currentLatency{let P=performance.now(),H=await k.retrieve({...r,hints:{maxChars:r.maxChars,maxMs:150}});return{identifier:k.identifier,duration:performance.now()-P,snippets:H}})),g=new Map;for(let{identifier:k,snippets:P}of s)for(let H of P){let T=H.fileName,v=g.get(T);v||(v={},g.set(T,v)),v[k]||(v[k]=[]),v[k].push(H)}let E=new Map;for(let{identifier:k,snippets:P}of s)P.forEach((H,T)=>{let v=H.fileName;if(!(g.get(v)?.[k][0]===H))return;let y=1/(MTr+T),S=E.get(v);S===void 0?E.set(v,y):E.set(v,S+y)});let p=[...E.entries()].sort((k,P)=>P[1]-k[1]).map(k=>k[0]),B=[],m={},_=0,x=0;for(let k of p){let P=g.get(k);if(!P)continue;let H=Math.max(...Object.values(P).map(T=>T.length));for(let T=0;T=F.length)continue;let y=F[T];_+y.content.length>r.maxChars||(B.push(y),_+=y.content.length,m[v]||(m[v]={suggestedItems:0,positionBitmap:0,retrievedItems:s.find(S=>S.identifier===v)?.snippets.length??0,duration:s.find(S=>S.identifier===v)?.duration??0}),m[v].suggestedItems++,x<32&&(m[v].positionBitmap|=1<t());return}this.listeners.add(t)}removeEventListener(r){this.listeners.delete(r)}abort(){if(!this.aborted){this.aborted=!0;for(let r of this.listeners)r();this.listeners.clear()}}};var NV=Yn(ZpA());function Y_e(A,r,t){let i=H=>{let T=0;for(let v of H.values())T+=v;return T},o=(H,T)=>{let v=0;for(let[F,y]of T){let S=H.get(F)||0,U=Math.max(0,S-y);H.set(F,U),v+=U-S}return v},s=(H,T,v,F)=>{let y=0,S=0;for(let[U,V]of F){y+=V,T.set(U,(T.get(U)||0)+V);let wA=H.get(U)||0;if(wA>0){let IA=v.get(U)||0,pA=Math.min(V+IA,wA);v.set(U,pA),S+=pA-IA}}return{windowIncrease:y,intersectionIncrease:S}},g=G_e(A),E=i(g),p=r.split(` -`),B=p.map(H=>G_e(H)),m=new Map;for(let H=0;Hk&&(k=F,P=[H+1,H+t+1])}}return{score:k,content:p.slice(P[0],P[1]).join(` -`)}}function P_e(A,r,t){let i=A+r-t;if(i<0)throw new Error("intersection can't be greater than the sum of left and right");return i===0?0:t/i}function G_e(A){let r=new Map,t=NV.default.string.tokenize0(A),i=NV.default.tokens.removeWords(t),o=NV.default.tokens.stem(i);for(let s of o)r.set(s,(r.get(s)||0)+1);return r}var PV=class{window=50;history;subscriptions=[];constructor(r=()=>ni.onDidChangeActiveTextEditor(t=>{t?.document.uri&&this.addItem({document:t.document})})){if(this.history=[],r){let t=r();t&&this.subscriptions.push(t)}}dispose(){vf.from(...this.subscriptions).dispose()}addItem(r){if(r.document.uri.scheme==="codegen")return;let t=this.history.findIndex(i=>i.document.uri.toString()===r.document.uri.toString());t>=0&&(this.history=[...this.history.slice(0,t),...this.history.slice(t+1)]),this.history.push(r),this.history.length>this.window&&this.history.shift()}lastN(r,t,i){let o=[],s=new Set(i||[]);for(let g=this.history.length-1;g>=0;g--){let E=this.history[g];if(o.length>r)break;s.has(E.document.uri)||t&&t!==E.document.languageId||o.push(E)}return o}};var U_e=50,w2=class{identifier="jaccard-similarity";history=new PV;async retrieve({document:r,docContext:t,abortSignal:i}){let o=C7t(t.prefix,U_e),s=await y7t(r,this.history),g=[];for(let{uri:E,contents:p}of s){let B=Y_e(o,p,U_e);!B||i?.aborted||g.push({fileName:L_e.default.normalize(ri.asRelativePath(E.fsPath)),...B})}return g.sort((E,p)=>p.score-E.score),g}isSupportedForLanguageId(){return!0}dispose(){this.history.dispose()}};async function y7t(A,r){let t=[],i=A.languageId;if(!i)return[];function o(m){if(m.uri.toString()===A.uri.toString()||!["file","vscode-userdata"].includes(m.uri.scheme)||D3(m.languageId)!==D3(i))return;let _=Math.min(m.lineCount,1e4),x=new sa(0,0,_,0);t.push({uri:m.uri,contents:m.getText(x)})}let s=ni.visibleTextEditors.flatMap(m=>m.document.uri.scheme==="file"?[m.document.uri]:[]),g=ni.tabGroups.all.flatMap(({tabs:m})=>m.map(_=>_.input?.uri)).filter(Boolean),E=new Map,p=s.length<=1?3:2;for(let m of s){E.set(m.toString(),m);let _=g.findIndex(k=>k.toString()===m.toString());if(_===-1)continue;let x=Math.max(_-p,0),O=Math.min(_+p,g.length-1);for(let k=x;k<=O;k++)E.set(g[k].toString(),g[k])}let B=(await Promise.all([...E.values()].map(async m=>{if(!m)return[];try{return[await ri.openTextDocument(m)]}catch(_){return console.error(_),[]}}))).flat();for(let m of B)m.fileName.endsWith(".git")||o(m);return await Promise.all(r.lastN(10,i,[A.uri,...t.map(m=>m.uri)]).map(async m=>{try{let _=await ri.openTextDocument(m.document.uri);o(_)}catch(_){console.error(_)}})),t}function C7t(A,r){let t=A.split(` -`);return t.slice(Math.max(0,t.length-r)).join(` -`)}var W_e=Yn(require("path")),J_e=Yn(JB());var q_e=Yn(i6());var GV=class{constructor(r=ni,t=ri,i=DHA){this.window=r;this.workspace=t;this.getGraphContextFromRange=i;this.onDidChangeTextEditorSelection=(0,J_e.debounce)(this.onDidChangeTextEditorSelection.bind(this),100),this.disposables.push(this.window.onDidChangeTextEditorSelection(this.onDidChangeTextEditorSelection.bind(this)),this.workspace.onDidChangeTextDocument(this.onDidChangeTextDocument.bind(this)))}identifier="lsp-light";disposables=[];cache=new $pA;lastRequestKey=null;abortLastRequest=()=>{};async retrieve({document:r,position:t,hints:{maxChars:i}}){let o=`${r.uri.toString()}\u2588${t.line}\u2588${r.lineAt(t.line).text}`;this.lastRequestKey!==o&&this.abortLastRequest();let s=new mV;this.lastRequestKey=o,this.abortLastRequest=()=>s.abort();let g=Math.max(t.line-1,0),E=t.line,[p,B]=await Promise.all([this.getLspContextForLine({document:r,line:g,abortSignal:s.signal}),this.getLspContextForLine({document:r,line:E,abortSignal:s.signal})]),m=[...p,...B];return i===0?[]:O7t(m)}isSupportedForLanguageId(r){return j_e(r)}getLspContextForLine({document:r,line:t,abortSignal:i}){let o={document:r,line:t},s=this.cache.get(o);if(s)return s;let g=r.lineAt(t).range,E=!1,p=this.getGraphContextFromRange(r,g,i).then(B=>(E=!0,B));return i.addEventListener("abort",()=>{E||this.cache.delete(o)}),this.cache.set(o,p),p}dispose(){this.abortLastRequest();for(let r of this.disposables)r.dispose()}onDidChangeTextEditorSelection(r){j_e(r.textEditor.document.languageId)&&this.retrieve({document:r.textEditor.document,position:r.selections[0].active,hints:{maxChars:0}})}onDidChangeTextDocument(r){this.cache.evictForOtherDocuments(r.document.uri)}},I7t=10,b7t=100,$pA=class{cache=new Wg({max:I7t});toCacheKeys(r){return[r.document.uri.toString(),`${r.line}\u2588${r.document.lineAt(r.line).text}`]}get(r){let[t,i]=this.toCacheKeys(r),o=this.cache.get(t);if(o)return o.get(i)}set(r,t){let[i,o]=this.toCacheKeys(r),s=this.cache.get(i);s||(s=new Wg({max:b7t}),this.cache.set(i,s)),s.set(o,t)}delete(r){let[t,i]=this.toCacheKeys(r),o=this.cache.get(t);o&&o.delete(i)}evictForOtherDocuments(r){let t=[];this.cache.forEach((i,o)=>{o!==r.toString()&&t.push(o)});for(let i of t)this.cache.delete(i)}};function O7t(A){return E1(A.map(M7t),r=>[r.symbol,r.fileName,r.content].join(` -`))}function M7t(A){return{fileName:W_e.default.normalize(ri.asRelativePath(q_e.URI.parse(A.uri).fsPath)),symbol:A.symbolName,content:A.content.join(` -`).trim()}}function j_e(A){switch(A){case"python":case"go":case"javascript":case"javascriptreact":case"typescript":case"typescriptreact":return!0;default:return!1}}var jV=Yn(require("path"));async function V_e(A){let r="build document symbols map";performance.mark(r);let t=await AnA(A),i=[];for(let o of t)i.push({fuzzyName:k7t(A,o),location:new E4(A.uri,o)});return performance.mark(r),i}function k7t(A,r){let t=A.getText(r);for(let i of t.matchAll(RY))if(!(i.index===void 0||FY.has(i[0])))return i[0];return null}var UV=Yn(tEA());function iEA(A){return A.map(r=>`${r.speaker==="human"?UV.HUMAN_PROMPT:UV.AI_PROMPT}${r.text===void 0?"":" "+r.text}`).join("")}function w1(A){let r=new AbortController;return A.aborted&&r.abort(),A.addEventListener("abort",()=>r.abort()),r}function LV(){let A=new Set;function r(i){return A.add(i),()=>A.delete(i)}function t(i){for(let o of A)o(i)}return{subscribe:r,notify:t}}var J7t=10*60*1e3,q7t=3,V7t=10,z7t=10,Gk=LV(),nwe=Gk.subscribe.bind(Gk),Uw=class A{constructor(r=ni,t=ri,i=V_e){this.window=r;this.getDocumentSections=i;this.disposables.push(r.onDidChangeVisibleTextEditors(this.onDidChangeVisibleTextEditors.bind(this))),this.disposables.push(t.onDidChangeTextDocument(this.onDidChangeTextDocument.bind(this))),this.disposables.push(r.onDidChangeTextEditorSelection(this.onDidChangeTextEditorSelection.bind(this))),this.onDidChangeVisibleTextEditors()}identifier="section-history";disposables=[];activeDocuments=new Wg({max:V7t});lastVisitedSections=[];static instance=null;static createInstance(r,t,i){if(this.instance)throw new Error("SectionObserver has already been initialized");return this.instance=new A(r,t,i),this.instance}async retrieve({document:r,position:t,docContext:i}){let o=this.getSectionAtPosition(r,t),s=kG(r,i);function g(E,p){return!s||!p||E.toString()!==r.uri.toString()?!1:s.start.line<=p.startLine&&s.end.line>=p.endLine}return(await Promise.all(this.lastVisitedSections.map(E=>this.getActiveDocumentAndSectionForLocation(E)).filter(p1).filter(([E])=>D3(E.languageId)===D3(r.languageId)).map(([,E])=>E).filter(E=>jh(E.location)!==(o?jh(o.location):null)).filter(E=>!g(E.location.uri,{startLine:E.location.range.start.line,endLine:E.location.range.end.line})).map(async E=>{try{let p=E.location.uri,B=await ri.openTextDocument(p),m=jV.default.normalize(ri.asRelativePath(p.fsPath)),_=B.getText(E.location.range);return{fileName:m,content:_}}catch(p){console.error(p);return}}))).filter(p1)}isSupportedForLanguageId(){return!0}getSectionAtPosition(r,t){return this.activeDocuments.get(r.uri.toString())?.sections.find(i=>i.location.range.contains(t))}debugPrint(r,t){let i=[];this.activeDocuments.forEach(s=>{i.push(jV.default.posix.normalize(ri.asRelativePath(s.uri)));for(let g of s.sections){let E=r?.uri.toString()===s.uri.toString()&&t?.some(B=>g.location.range.contains(B)),p=s.sections.at(-1)===g;i.push(` ${p?"\u2514":"\u251C"}${E?"*":"\u2500"} `+(g.fuzzyName??"unknown"))}});let o=this.lastVisitedSections.map(s=>this.getActiveDocumentAndSectionForLocation(s)?.[1]).filter(p1);if(o.length>0){i.push(""),i.push("Last visited sections:");for(let s=0;s({...p,lastRevalidateAt:i,lastLines:p.location.range.end.line-p.location.range.start.line})),g=this.activeDocuments.get(t.toString());if(!g){this.activeDocuments.set(t.toString(),{uri:t,languageId:r.languageId,sections:s,lastRevalidateAt:i,lastLines:o});return}let E=[];for(let p of g.sections){let B=jh(p.location),m=s.find(_=>jh(_.location)===B);m?(p.fuzzyName=m.fuzzyName,p.location=m.location):E.push(p)}for(let p of E){let B=g.sections.indexOf(p);B!==-1&&g.sections.splice(B,1)}for(let p of s){let B=jh(p.location);g.sections.find(_=>jh(_.location)===B)||g.sections.push(p)}Gk.notify()}async onDidChangeVisibleTextEditors(){let r=[];for(let t of this.window.visibleTextEditors){if(t.document.uri.scheme!=="file")continue;let i=t.document.uri.toString();this.activeDocuments.has(i)||r.push(this.loadDocument(t.document))}await Promise.all(r)}getActiveDocumentAndSectionForLocation(r){let t=r.uri.toString();if(!this.activeDocuments.has(t))return;let i=this.activeDocuments.get(t);if(!i)return;let o=jh(r),s=i.sections.find(g=>jh(g.location)===o);if(s)return[i,s]}async onDidChangeTextDocument(r){let t=r.document.uri.toString();if(!this.activeDocuments.has(t))return;let i=this.activeDocuments.get(t),o=Math.abs(i.lastLines-r.document.lineCount)>=q7t,s=Date.now()-i.lastRevalidateAt>J7t;if(o||s){await this.loadDocument(r.document);return}}onDidChangeTextEditorSelection(r){let t=r.textEditor,i=r.selections[0].active,o=this.getSectionAtPosition(t.document,i);o&&(K7t(this.lastVisitedSections,o.location,z7t),Gk.notify())}dispose(){A.instance=null;for(let r of this.disposables)r.dispose();Gk.notify()}};function K7t(A,r,t){let i=A.findIndex(o=>jh(o)===jh(r));return i>-1&&A.splice(i,1),A.length>=t&&A.pop(),A.unshift(r),A}var WV=class{constructor(r,t){this.contextStrategy=r;switch(r){case"none":break;case"bfg-mixed":case"bfg":this.localRetriever=new w2,this.disposables.push(this.localRetriever),t&&(this.graphRetriever=t(),this.disposables.push(this.graphRetriever));break;case"lsp-light":this.localRetriever=new w2,this.graphRetriever=new GV,this.disposables.push(this.localRetriever,this.graphRetriever);break;case"jaccard-similarity":this.localRetriever=new w2,this.disposables.push(this.localRetriever);break;case"local-mixed":this.localRetriever=new w2,this.graphRetriever=Uw.createInstance(),this.disposables.push(this.localRetriever,this.graphRetriever)}}disposables=[];localRetriever;graphRetriever;getStrategy(r){let t=[];switch(this.contextStrategy){case"none":break;case"lsp-light":{this.graphRetriever&&this.graphRetriever.isSupportedForLanguageId(r.languageId)&&t.push(this.graphRetriever),this.localRetriever&&t.push(this.localRetriever);break}case"bfg":this.graphRetriever&&this.graphRetriever.isSupportedForLanguageId(r.languageId)?t.push(this.graphRetriever):this.localRetriever&&t.push(this.localRetriever);break;case"bfg-mixed":this.graphRetriever&&this.graphRetriever.isSupportedForLanguageId(r.languageId)&&t.push(this.graphRetriever),this.localRetriever&&t.push(this.localRetriever);break;case"local-mixed":this.localRetriever&&t.push(this.localRetriever),this.graphRetriever&&t.push(this.graphRetriever);break;case"jaccard-similarity":{this.localRetriever&&t.push(this.localRetriever);break}}return{name:this.contextStrategy,retrievers:t}}dispose(){this.disposables.forEach(r=>r.dispose())}};var Mwe=Yn(JB());var owe=Yn(nEA());function Yk(A,r){r.sort((t,i)=>i.range.start.isBefore(t.range.start)?-1:1);for(let t=0;t1?g.at(-1).length:o.end.character+g[0].length),p={insertText:i,insertRange:o,document:s,id:r,insertedAt:t,latestRange:E,uri:s.uri},B=this.trackedCompletions.get(s.uri.toString());B||(B=new Set([]),this.trackedCompletions.set(s.uri.toString(),B)),B.add(p);let m=0;this.enqueueMeasure(p,m)}enqueueMeasure(r,t){let i=r.insertedAt+aEA[t]-Date.now(),o=setTimeout(()=>{this.managedTimeouts.delete(o),this.measure(r,t)},i);this.managedTimeouts.add(o)}measure(r,t){if(!this.trackedCompletions.get(r.uri.toString())?.has(r))return;let o=r.insertText,s=r.document.getText(r.latestRange);if(s.length===0)rE("persistence:removed",{id:r.id});else{let E=Math.max(o.length,s.length),B=(0,owe.default)(o,s)/E;if(rE("persistence:present",{id:r.id,afterSec:aEA[t]/1e3,difference:B,lineCount:r.latestRange.end.line-r.latestRange.start.line+1,charCount:s.length}),t({range:o.range,text:o.text}));for(let o of t)o.latestRange=Yk(o.latestRange,i)}onDidRenameFiles(r){for(let t of r.files){let i=this.trackedCompletions.get(t.oldUri.toString());if(i){this.trackedCompletions.set(t.newUri.toString(),i),this.trackedCompletions.delete(t.oldUri.toString());for(let o of i)o.uri=t.newUri}}}onDidDeleteFiles(r){for(let t of r.files)this.trackedCompletions.delete(t.toString())}dispose(){for(let r of this.managedTimeouts)clearTimeout(r);this.managedTimeouts.clear(),this.trackedCompletions.clear();for(let r of this.disposables)r.dispose()}};var qV=LV(),y2={suggested:0,accepted:0};function swe(){return y2}function oEA(){y2={...y2,suggested:y2.suggested+1},qV.notify()}function cwe(){y2={...y2,accepted:y2.accepted+1},qV.notify()}var lwe=qV.subscribe.bind(qV);var gwe=750,$0=new Wg({max:20}),VV=new Wg({max:20});function Z7t(A,r){return`${A.docContext.prefix}\u2588${r}\u2588${A.docContext.nextNonEmptyLine}`}var zV=new Wg({max:50}),sEA=null,cEA=0;function rE(A,r){let t=ywe()?"CodyAgent":"CodyVSCodeExtension";Fa.log(`${t}:completion:${A}`,r,{agent:!0})}function dwe(A){let r=Km(),t={...A,type:"inline",multilineMode:A.multiline?"block":null,id:null};return $0.set(r,{id:r,params:t,startedAt:performance.now(),networkRequestStartedAt:null,startLoggedAt:null,loadedAt:null,suggestedAt:null,suggestionLoggedAt:null,suggestionAnalyticsLoggedAt:null,acceptedAt:null,items:[],loggedPartialAcceptedLength:0}),r}function pwe(A){let r=$0.get(A);r&&!r.startLoggedAt&&(r.startLoggedAt=performance.now(),cEA++)}function Ewe(A,r){let t=$0.get(A);t&&!t.networkRequestStartedAt&&(t.networkRequestStartedAt=performance.now(),t.params.contextSummary=r)}function fwe(A,r,t,i){let o=$0.get(A);if(!o)return;o.params.source=i;let s=t.length>0?Z7t(r,t[0].insertText):"",g=VV.get(s)??Km();VV.set(s,g),o.params.id=g,o.loadedAt||(o.loadedAt=performance.now()),o.items.length===0&&(o.items=t.map(uEA))}function Bwe(A,r){let t=$0.get(A);if(!t)return;let i=t.params.id;if(!i)throw new Error("Completion ID not set, make sure to call loaded() first");t.suggestedAt||(t.suggestedAt=performance.now(),setTimeout(()=>{let o=$0.get(A);if(o&&o.suggestedAt&&!o.suggestionAnalyticsLoggedAt&&!o.suggestionLoggedAt){if(zV.has(i))return;oEA(),zV.set(i,!0),o.suggestionAnalyticsLoggedAt=performance.now()}},gwe))}function hwe(A,r,t,i){let o=$0.get(A);if(!o||o.acceptedAt){rE("acceptedUntrackedCompletion");return}if(o.loadedAt||rE("unexpectedNotLoaded"),o.startLoggedAt||rE("unexpectedNotStarted"),o.suggestedAt||rE("unexpectedNotSuggested"),o.suggestionLoggedAt&&rE("unexpectedAlreadySuggested"),!o.params.id)throw new Error("Completion ID not set, make sure to call loaded() first");let s=null;VV.forEach((g,E)=>{g===o.params.id&&(s=E)}),s&&VV.delete(s),o.acceptedAt=performance.now(),wwe(),rE("accepted",{...lEA(o),acceptedItem:{...uEA(t)}}),cwe(),!(i===void 0||ywe())&&(sEA===null&&(sEA=new JV),sEA.track({id:o.params.id,insertedAt:Date.now(),insertText:t.insertText,insertRange:i,document:r}))}function Qwe(A,r,t){let i=$0.get(A);if(!i||i.acceptedAt)return;let o=i.loggedPartialAcceptedLength;if(t<=o)return;let s=t-o;i.loggedPartialAcceptedLength=t,rE("partiallyAccepted",{...lEA(i),acceptedItem:{...uEA(r)},acceptedLength:t,acceptedLengthDelta:s})}function mwe(A){return $0.get(A)}function Dwe(A){let r=$0.get(A);rE("noResponse",r?.params??{})}function _we(){wwe()}function wwe(){let A=performance.now();$0.forEach(r=>{let{params:t,loadedAt:i,suggestedAt:o,suggestionLoggedAt:s,startedAt:g,startLoggedAt:E,acceptedAt:p,suggestionAnalyticsLoggedAt:B}=r;if(!i||!E||!o||s||!t.id)return;r.suggestionLoggedAt=A;let m=i-g,_=A-o,x=_>=gwe,O=p!==null,k=O||x;B||(r.suggestionAnalyticsLoggedAt=A,k&&!zV.has(t.id)&&(oEA(),zV.set(t.id,!0))),rE("suggested",{...lEA(r),latency:m,displayDuration:_,read:k,accepted:O,completionsStartedSinceLastSuggestion:cEA}),cEA=0})}function $7t({insertText:A}){let r=v1(A).length,t=A.length;return{lineCount:r,charCount:t}}var AOt=1e3*60*10,I3=new Map;function vwe(A){if(!bG(A))return;(0,mu.captureException)(A);let r=A.message,t=H8A(A)?A.traceId:void 0;I3.has(r)||(I3.set(r,0),rE("error",{message:r,traceId:t,count:1}));let i=I3.get(r);i===0&&setTimeout(()=>{let o=I3.get(r);rE("error",{message:r,traceId:t,count:o}),I3.set(r,0)},AOt),I3.set(r,i+1)}function lEA(A){let r=rOt();return{...A.params,items:A.items.map(t=>({...t})),otherCompletionProviderEnabled:r.length>0,otherCompletionProviders:r}}function uEA(A){let{lineCount:r,charCount:t}=$7t(A);return{lineCount:r,charCount:t,stopReason:A.stopReason,parseErrorCount:A.parseErrorCount,lineTruncatedCount:A.lineTruncatedCount,truncatedWith:A.truncatedWith,nodeTypes:A.nodeTypes,nodeTypesWithCompletion:A.nodeTypesWithCompletion}}var eOt=["GitHub.copilot","GitHub.copilot-nightly","TabNine.tabnine-vscode","TabNine.tabnine-vscode-self-hosted-updater","AmazonWebServices.aws-toolkit-vscode","Codeium.codeium","Codeium.codeium-enterprise-updater","CodeComplete.codecomplete-vscode","Venthe.fauxpilot","TabbyML.vscode-tabby","blackboxapp.blackbox","devsense.intelli-php-vscode","aminer.codegeex","svipas.code-autocomplete","mutable-ai.mutable-ai"];function rOt(){return eOt.filter(A=>EI.getExtension(A)?.isActive)}function ywe(){return!!sB(ri.getConfiguration()).isRunningInsideAgent}var Iwe=Yn(nEA()),bwe=(A,r,t=.2)=>{let i=Math.max(A.length,r.length),o=(0,Iwe.default)(A,r);if(o===0)return!0;let s=o/i;return t>s};var kf="",uB="",XV=` - -`;function ZV(A){if(A.includes(kf))return rE("containsOpeningTag"),"";let r=A.indexOf(uB);return r===-1?A:A.slice(0,r)}var Owe=/^(\p{Emoji_Presentation}|\u{200B}|\+ |- |\. )+(\s)+/u;function $V(A){return Owe.test(A)?A.replace(Owe,""):A}function b3(A){let r=A.split(` -`),t=2,i=0,o=-1;for(let g=r.length-1;g>=0;g--)if(r[g].trim().length>0&&i++,i>=t){o=g;break}let s;return o===-1?s={head:KV(A),tail:KV(A),overlap:A}:s={head:KV(r.slice(0,o).join(` -`)+` -`),tail:KV(r.slice(o).join(` -`))},s.tail.rearSpace.includes(` -`)&&(s.tail.trimmed+=` -`),s}function KV(A){let r=A.trim(),t=A.indexOf(r);return{raw:A,trimmed:r,leadSpace:A.slice(0,t),rearSpace:A.slice(t+r.length)}}function kwe(A,r,t,i){let o=u1(i);A=A.trimEnd();let s=tOt(t);if(s.length===0)return A;let g=r.lastIndexOf(` -`),E=r.slice(g+1),p=tE(s),B=tE(E),m=E.trim()==="",_=A.split(` -`),x=_.length;for(let O=_.length-1;O>=0;O--){let k=_[O];O===0&&(k=E+k);let P=tE(k),H=P<=p;if(m&&o?.blockEnd&&k.trim().startsWith(o.blockEnd)&&B===P&&_.length===1){x=O;break}if(H&&bwe(k,s)){x=O;break}}return _.slice(0,x).join(` -`)}function tOt(A){let r=A.slice(A.indexOf(` -`));for(let t of r.split(` -`))if(t.trim().length>0)return t;return""}function Az(A){return A.replace(/^\s+?(\r?\n)/,"$1")}function xwe(A,r){return(A.endsWith(" ")||A.endsWith(" "))&&(r=r.replace(/^[\t ]+/,"")),r}function Hwe(A){return A.split(` -`).map(r=>r.trimEnd()).join(` -`)}var iOt=/^[\t ]*/,gEA=/([([{])$/,Swe=/\b[^()]+\((.*)\)$/g,Fwe=/^(function|def|fn)/g,nOt={"(":")","[":"]","{":"}"};function dEA(){return ni.activeTextEditor?ni.activeTextEditor.options.tabSize:2}function tE(A){let r=dEA(),t=A.match(iOt);return t?[...t[0]].reduce((o,s)=>o+(s===" "?r:1),0):0}function aOt(A,r){let t=A.match(gEA);if(t&&t.length>0){let i=t[0],o=nOt[i];return!!i&&r.startsWith(o)}return!1}function Rwe(A,r){let t=aOt(A,r),i=tE(A),o=pEA(r);return tE(o)=0?t:r)}function Nwe(A){let r=A.lastIndexOf(` -`),t=A.lastIndexOf(`\r -`);return r===-1&&t===-1?A:A.slice(t>=0?t+2:r+1)}function pEA(A){let r=A.indexOf(` -`),t=A.indexOf(`\r -`);return r===-1&&t===-1?"":v1(A.slice(t>=0?t+2:r+1)).find(i=>i.trim().length>0)??""}function Pwe(A){let r=A.lastIndexOf(` -`),t=A.lastIndexOf(`\r -`);return r===-1&&t===-1?"":(0,Mwe.findLast)(v1(A.slice(0,t>=0?t:r)),i=>i.trim().length>0)??""}function v1(A){return A.split(/\r?\n/)}function Gwe(A){let{docContext:r,languageId:t}=A,{prefix:i,prevNonEmptyLine:o,nextNonEmptyLine:s,currentLinePrefix:g,currentLineSuffix:E}=r,p=u1(t)?.blockStart,B=p&&i.trimEnd().endsWith(p),m=E.trim().length>0?g+E:g;if(!g.trim().match(Fwe)&&m.match(Swe))return null;let _=g.match(gEA);return _&&tE(g)>=tE(s)?_[0]:g.trim()===""&&E.trim()===""&&B&&tE(o)=tE(s)?p:null}function Ywe(A){let{document:r,position:t,maxPrefixLength:i,maxSuffixLength:o,context:s}=A,g=r.offsetAt(t),E=r.getText(new sa(new Ao(0,0),t)),p=r.getText(new sa(t,r.positionAt(r.getText().length))),B=E,m=null;if(s?.selectedCompletionInfo){let{range:T,text:v}=s.selectedCompletionInfo;if(T.end.character===t.character&&T.end.line===t.line){let F=v1(E).at(-1);B=E.slice(0,-F.length)+F.slice(0,T.start.character)+v,m=B.slice(E.length),m===""&&(m=null)}else console.warn("The selected completion info does not match the current position")}let _=v1(B),x=v1(p),O;if(g>i){let T=0,v=_.length;for(let F=_.length-1;F>=0&&!(T+_[F].length>i);F--)v=F,T+=_[F].length;O=_.slice(v).join(` -`)}else O=_.join(` -`);let k=0,P=0;for(let T=0;To);T++)P=T+1,k+=x[T].length;let H=x.slice(0,P).join(` -`);return oOt({position:t,languageId:r.languageId,documentDependentContext:{prefix:O,suffix:H,injectedPrefix:m}})}function oOt(A){let{position:r,documentDependentContext:t,languageId:i}=A,o=sOt(t);return{...t,...o,position:r,multilineTrigger:Gwe({docContext:{...o,...t},languageId:i})}}function sOt(A){let{prefix:r,suffix:t}=A,i=Nwe(r),o=Twe(t),s=Pwe(r),g=pEA(t);return{currentLinePrefix:i,currentLineSuffix:o,prevNonEmptyLine:s,nextNonEmptyLine:g}}function ez({document:A,position:r,selectedCompletionInfo:t,lastCandidate:{lastTriggerPosition:i,lastTriggerDocContext:o,lastTriggerSelectedCompletionInfo:s},lastCandidate:g,docContext:{currentLinePrefix:E,currentLineSuffix:p,nextNonEmptyLine:B},docContext:m,handleDidAcceptCompletionItem:_,handleDidPartiallyAcceptCompletionItem:x}){let O=g.uri.toString()===A.uri.toString(),k=i.line===r.line,P=o.nextNonEmptyLine===B,H=IcA(o),T=IcA(m),v=t&&H===T?s?.text===t?.text:!0;if(!O||!k||!P||!v)return null;let F=o.injectedPrefix?o.currentLinePrefix.slice(0,o.currentLinePrefix.length-o.injectedPrefix.length):o.currentLinePrefix,y=Uwe(E)&&E.startsWith(F),S=Uwe(F)&&F.startsWith(E),U=p===""&&(y||S),V=!1,wA=g.result.items.map(IA=>{let pA=F+IA.insertText;if(pA.startsWith(E)&&r.isAfterOrEqual(i)){let cA=pA.slice(E.length),eA=IA.insertText.slice(0,-cA.length),Y=IA.range,q;if(Y){let Z=eA.length;q=new sa(Y.start.line,Y.start.character+Z,Y.end.line,Y.end.character+Z)}if(cA.length===0){V=!0,_?.({requestParams:EEA(A,g),logId:g.result.logId,analyticsItem:IA,trackedRange:IA.range});return}let X=E.length-F.length;return cOt(IA.insertText,X)&&x?.({logId:g.result.logId,analyticsItem:IA},X),{...IA,insertText:cA,range:q}}if(U)return{...IA,insertText:F.slice(E.length)+IA.insertText}}).filter(p1);return V?null:wA.length>0?{logId:g.result.logId,source:"LastCandidate",items:wA}:null}function Uwe(A){return/^\s*$/.test(A)}function cOt(A,r){let i=A.slice(0,r).match(/(\w+)\W+$/),o=i?.index===void 0?null:i.index+i[0].length;return o===null?!1:r>=o}function EEA(A,r){return{document:A,position:r.lastTriggerPosition,docContext:r.lastTriggerDocContext,selectedCompletionInfo:r.lastTriggerSelectedCompletionInfo}}var O3=(o=>(o.Network="Network",o.Cache="Cache",o.CacheAfterRequestStart="CacheAfterRequestStart",o.LastCandidate="LastCandidate",o))(O3||{});async function Lwe(A){try{let r=await lOt(A);return A.tracer?.({result:r}),r}catch(r){let t=r instanceof Error?r:new Error(r);if(A.tracer?.({error:t.toString()}),xu("getInlineCompletions:error",t.message,t.stack,{verbose:{error:t}}),vwe(t),r5(t))return null;throw t}finally{A.setIsLoading?.(!1)}}async function lOt(A){let{document:r,position:t,triggerKind:i,selectedCompletionInfo:o,docContext:s,docContext:{multilineTrigger:g,currentLineSuffix:E,currentLinePrefix:p},providerConfig:B,contextMixer:m,requestManager:_,lastCandidate:x,debounceInterval:O,setIsLoading:k,abortSignal:P,tracer:H,handleDidAcceptCompletionItem:T,handleDidPartiallyAcceptCompletionItem:v,artificialDelay:F,completionIntent:y}=A;if(H?.({params:{document:r,position:t,triggerKind:i,selectedCompletionInfo:o}}),i!=="Manual"&&/\w/.test(E)||i!=="Manual"&&/[)\]}]$/.test(p.trim()))return null;if(i!=="Manual"&&t.line!==0&&t.line===r.lineCount-1){let q=Math.max(t.line-1,0);if(r.lineAt(q).isEmptyOrWhitespace&&!t.character)return null}let S=i!=="Manual"&&x?ez({document:r,position:t,lastCandidate:x,docContext:s,selectedCompletionInfo:o,handleDidAcceptCompletionItem:T,handleDidPartiallyAcceptCompletionItem:v}):null;if(S)return S;_we();let U=!!g,V=dwe({multiline:U,triggerKind:i,providerIdentifier:B.identifier,providerModel:B.model,languageId:r.languageId,completionIntent:y,artificialDelay:F}),wA=((U?O?.multiLine:O?.singleLine)??0)+(F??0);if(i==="Automatic"&&wA!==void 0&&wA>0&&await new Promise(q=>setTimeout(q,wA)),P?.aborted)return null;k?.(!0),pwe(V);let IA=await m.getContext({document:r,position:t,docContext:s,abortSignal:P,maxChars:B.contextSizeHints.totalFileContextChars});if(P?.aborted)return null;H?.({context:IA});let pA=uOt({document:r,position:t,triggerKind:i,providerConfig:B,docContext:s});H?.({completers:pA.map(({options:q})=>({...q,completionIntent:y}))}),Ewe(V,IA?.logSummary);let oA={document:r,docContext:s,position:t,selectedCompletionInfo:o,abortSignal:P},{completions:cA,cacheHit:eA}=await _.request(oA,pA,IA?.context??[],H?gOt(H):void 0),Y=eA==="hit"?"Cache":eA==="hit-after-request-started"?"CacheAfterRequestStart":"Network";return fwe(V,oA,cA,Y),{logId:V,items:cA,source:Y}}function uOt(A){let{document:r,position:t,triggerKind:i,providerConfig:o,docContext:s}=A,g={docContext:s,document:r,position:t};return s.multilineTrigger?[o.create({id:"multiline",...g,n:3,multiline:!0})]:[o.create({id:"single-line-suffix",...g,n:i==="Automatic"?1:3,multiline:!1})]}function gOt(A){return A&&{params:r=>A({completionProviderCallParams:r}),result:r=>A({completionProviderCallResult:r})}}var Uk=A=>A!=null;function jwe(A,r){let t=A.descendantForPosition(r),i=t.parent,o=[i,i?.parent,i?.parent?.parent].filter(Uk).map(s=>({name:"parents",node:s}));return[{name:"at_cursor",node:t},...o]}function rz(A){let{completion:r,document:t,docContext:i,docContext:{prefix:o,position:s,multilineTrigger:g}}=A,E=B4(t);if(!E)return r;let{parser:p,tree:B}=E,m=dOt({completion:r,document:t,docContext:i,tree:B,parser:p}),_=s.translate(0,r.insertText.length),x={start:{row:s.line,column:s.character},end:{row:_.line,column:_.character}};if(g){let P=t.positionAt(o.lastIndexOf(g));x.trigger={row:P.line,column:P.character}}let k=p.getLanguage().query("(ERROR) @error").captures(m.rootNode,x?.trigger||x.start,x.end);return{...r,points:x,tree:m,parseErrorCount:k.length}}function dOt(A){let{completion:{range:r,insertText:t},document:i,docContext:o,tree:s,parser:g,docContext:{position:E,currentLineSuffix:p}}=A,B=fEA(t,p),m=r?i.getText(new sa(new Ao(0,0),r.start)):o.prefix,_=r?i.getText(new sa(r.end,i.positionAt(i.getText().length))):o.suffix,x=m+t+_.slice(B),O=s.copy(),k=E.translate(void 0,t.length);return O.edit({startIndex:m.length,oldEndIndex:m.length,newEndIndex:m.length+t.length,startPosition:f4(E),oldEndPosition:f4(r?.end||E),newEndPosition:f4(k)}),g.parse(x,O)}function Wwe(A){let{points:r,tree:t,...i}=A;return i}function qwe(A,r){let t=A.map(g=>pOt(g,r)),i=BOt(t),o=E1(i,"insertText");return fOt(o).map(Wwe)}function pOt(A,r){let{document:t,position:i,docContext:o}=r,{prefix:s,suffix:g,currentLineSuffix:E,multilineTrigger:p}=o,{insertText:B}=A;if(A.insertText.length===0||(o.injectedPrefix&&(B=o.injectedPrefix+A.insertText),B.length===0))return A;if(A.range=EOt(A,{position:i,currentLineSuffix:E}),A.nodeTypes=Jwe(i,B4(t)?.tree),A.nodeTypesWithCompletion=Jwe(i,A.tree),p)B=Hwe(B);else{let m=B.indexOf(` -`);m!==-1&&(B=B.slice(0,m+1))}return B=kwe(B,s,g,t.languageId),B=xwe(s,B),B=B.trimEnd(),{...A,insertText:B}}function Jwe(A,r){let t=f4({line:A.line,character:Math.max(0,A.character-1)});if(r){let i=jwe(r.rootNode,t);if(i.length>0){let[o,...s]=i;return{atCursor:o.node.type,parent:s[0]?.node.type,grandparent:s[1]?.node.type,greatGrandparent:s[2]?.node.type}}}}function EOt(A,{position:r,currentLineSuffix:t}){let i=fEA(A.insertText,t);if(!A.range&&t!==""&&i!==0)return new sa(r,r.translate(void 0,i))}function fEA(A,r){let t=0;for(let i=0;ir.parseErrorCount&&!t.parseErrorCount?1:!r.parseErrorCount&&t.parseErrorCount?-1:t.insertText.split(` -`).length-r.insertText.split(` -`).length)}function BOt(A){return A.filter(r=>r.insertText.trim().length>1)}var tz=class{cache=new hEA;inflightRequests=new Set;disableNetworkCache=!1;disableRecyclingOfPreviousRequests=!1;constructor({disableNetworkCache:r=!1,disableRecyclingOfPreviousRequests:t=!1}={disableNetworkCache:!1,disableRecyclingOfPreviousRequests:!1}){this.disableNetworkCache=r,this.disableRecyclingOfPreviousRequests=t}async request(r,t,i,o){if(!this.disableNetworkCache){let E=this.cache.get(r);if(E)return{completions:E,cacheHit:"hit"}}let s=new AbortController;this.disableRecyclingOfPreviousRequests&&r.abortSignal&&(s=w1(r.abortSignal));let g=new BEA(r,s);return this.inflightRequests.add(g),Promise.all(t.map(E=>E.generateCompletions(g.abortController.signal,i,o))).then(E=>E.flat()).then(E=>qwe(E,r)).then(E=>(this.disableNetworkCache||this.cache.set(r,E),g.resolve({completions:E,cacheHit:null}),this.disableRecyclingOfPreviousRequests||this.testIfResultCanBeRecycledForInflightRequests(g,E),E)).catch(E=>{g.reject(E)}).finally(()=>{this.inflightRequests.delete(g)}),g.promise}removeFromCache(r){this.cache.delete(r)}testIfResultCanBeRecycledForInflightRequests(r,t){let{document:i,position:o,docContext:s,selectedCompletionInfo:g}=r.params,E={uri:i.uri,lastTriggerPosition:o,lastTriggerDocContext:s,lastTriggerSelectedCompletionInfo:g,result:{logId:"",source:"Network",items:t}};for(let p of this.inflightRequests){if(p===r||p.params.document.uri.toString()!==i.uri.toString())continue;let B=ez({document:p.params.document,position:p.params.position,lastCandidate:E,docContext:p.params.docContext,selectedCompletionInfo:p.params.selectedCompletionInfo});if(B){let m=B.items;rE("synthesizedFromParallelRequest"),p.resolve({completions:m,cacheHit:"hit-after-request-started"}),p.abortController.abort(),this.inflightRequests.delete(p)}}}},BEA=class{constructor(r,t){this.params=r;this.abortController=t;this.resolve=()=>{},this.reject=()=>{},this.promise=new Promise((i,o)=>{this.resolve=i,this.reject=o})}promise;resolve;reject},hEA=class{cache=new Wg({max:50});toCacheKey(r){return`${r.docContext.prefix}\u2588${r.docContext.nextNonEmptyLine}`}get(r){return this.cache.get(this.toCacheKey(r))}set(r,t){this.cache.set(this.toCacheKey(r),t)}delete(r){this.cache.delete(this.toCacheKey(r))}};var mEA=class extends a6{id;logId;trackedRange;requestParams;analyticsItem;constructor(r,t,i,o,s,g,E){super(r,i,E),this.id=Km(),this.logId=t,this.trackedRange=o,this.requestParams=s,this.analyticsItem=g}},QEA=new Wg({max:60}),iz=class{lastCompletionRequest=null;lastManualCompletionTimestamp=null;resetRateLimitErrorsAfter=null;config;requestManager;contextMixer;getInlineCompletions=Lwe;lastCandidate;disposables=[];isProbablyNewInstall=!0;firstCompletionDecoration=new DEA;constructor({completeSuggestWidgetSelection:r=!0,disableNetworkCache:t=!1,disableRecyclingOfPreviousRequests:i=!1,tracer:o=null,createBfgRetriever:s,...g}){this.config={...g,completeSuggestWidgetSelection:r,disableNetworkCache:t,disableRecyclingOfPreviousRequests:i,tracer:o,isRunningInsideAgent:g.isRunningInsideAgent??!1},this.config.completeSuggestWidgetSelection&&ri.getConfiguration().update("editor.inlineSuggest.suppressSuggestions",!0,1),this.requestManager=new tz({disableNetworkCache:this.config.disableNetworkCache,disableRecyclingOfPreviousRequests:this.config.disableRecyclingOfPreviousRequests}),this.contextMixer=new QV(new WV(g.contextStrategy,s));let E=kc.getChatHistory()?.chat;this.isProbablyNewInstall=!E||Object.entries(E).length===0,Qn("CodyCompletionProvider:initialized",[this.config.providerConfig.identifier,this.config.providerConfig.model].join("/")),this.disposables.push(this.contextMixer,ti.registerCommand("cody.autocomplete.inline.accepted",({codyCompletion:p})=>{this.handleDidAcceptCompletionItem(p)}))}setTracer(r){this.config.tracer=r}lastCompletionRequestTimestamp=0;async provideInlineCompletionItems(r,t,i,o){let s=this.lastCompletionRequest,g={document:r,position:t,context:i};this.lastCompletionRequest=g;let E=performance.now();this.lastCompletionRequestTimestamp||(this.lastCompletionRequestTimestamp=E);let[p,B]=[cg.evaluateFeatureFlag("cody-autocomplete-language-latency"),cg.evaluateFeatureFlag("cody-autocomplete-user-latency")],m=this.config.tracer?QOt(this.config.tracer):void 0,_,x=y=>{y?_=this.config.statusBar.startLoading("Completions are being generated"):_?.()},O=new AbortController;if(o&&(o.isCancellationRequested&&O.abort(),o.onCancellationRequested(()=>O.abort())),!_Ot(r,i))return null;let k=!1;this.config.completeSuggestWidgetSelection&&s&&yOt(s,g)&&(k=!0);let P=this.lastManualCompletionTimestamp&&this.lastManualCompletionTimestamp>Date.now()-500?"Manual":i.triggerKind===1?"Automatic":k?"SuggestWidget":"Hover";this.lastManualCompletionTimestamp=null;let H=Ywe({document:r,position:t,maxPrefixLength:this.config.providerConfig.contextSizeHints.prefixChars,maxSuffixLength:this.config.providerConfig.contextSizeHints.suffixChars,context:k?i:void 0}),T=cxA({document:r,position:t,prefix:H.prefix}),v={user:await B,language:await p},F=HqA(v,r.uri.toString(),r.languageId,T);try{let y=await this.getInlineCompletions({document:r,position:t,triggerKind:P,selectedCompletionInfo:i.selectedCompletionInfo,docContext:H,providerConfig:this.config.providerConfig,contextMixer:this.contextMixer,requestManager:this.requestManager,lastCandidate:this.lastCandidate,debounceInterval:{singleLine:75,multiLine:125},setIsLoading:x,abortSignal:O.signal,tracer:m,handleDidAcceptCompletionItem:this.handleDidAcceptCompletionItem.bind(this),handleDidPartiallyAcceptCompletionItem:this.unstable_handleDidPartiallyAcceptCompletionItem.bind(this),completeSuggestWidgetSelection:k,artificialDelay:F,completionIntent:T});if(O.signal.aborted)return null;if(!y)return this.lastCandidate=void 0,null;let S=H.currentLinePrefix,U=this.lastCandidate?.lastTriggerDocContext.currentLinePrefix;this.lastCandidate&&U!==void 0&&S.lengthDOt(pA,r,t,H,i,k,O.signal));if(wA.length===0)return this.lastCandidate=void 0,null;if(y.source!=="LastCandidate"){let pA={uri:r.uri,lastTriggerPosition:t,lastTriggerDocContext:H,lastTriggerSelectedCompletionInfo:i?.selectedCompletionInfo,result:y};this.lastCandidate=wA.length>0?pA:void 0}if(wA.length>0){for(let pA of wA)QEA.set(pA.id,pA);this.config.isRunningInsideAgent||this.unstable_handleDidShowCompletionItem(wA[0])}else Dwe(y.logId);return{logId:y.logId,items:wA,completionEvent:mwe(y.logId)}}catch(y){throw this.onError(y),y}}handleDidAcceptCompletionItem(r){let t=typeof r=="string"?QEA.get(r):r;t&&(pdA(),this.clearLastCandidate(),this.requestManager.removeFromCache(t.requestParams),this.handleFirstCompletionOnboardingNotices(t.requestParams),hwe(t.logId,t.requestParams.document,t.analyticsItem,t.trackedRange))}handleFirstCompletionOnboardingNotices(r){let t="completion.inline.hasAcceptedFirstCompletion";kc.get(t)||(kc.set(t,"true"),this.isProbablyNewInstall&&(this.config.triggerNotice&&this.config.triggerNotice({key:"onboarding-autocomplete"}),this.firstCompletionDecoration.show(r)))}unstable_handleDidShowCompletionItem(r){let t=typeof r=="string"?QEA.get(r):r;t&&Bwe(t.logId,t.analyticsItem)}unstable_handleDidPartiallyAcceptCompletionItem(r,t){Qwe(r.logId,r.analyticsItem,t)}async manuallyTriggerCompletion(){await ti.executeCommand("editor.action.inlineSuggest.hide"),this.lastManualCompletionTimestamp=Date.now(),await ti.executeCommand("editor.action.inlineSuggest.trigger")}handleUnwantedCompletionItem(r){this.lastCandidate?.result.items[0]&&(this.clearLastCandidate(),this.requestManager.removeFromCache(r))}clearLastCandidate(){this.lastCandidate=void 0}onError(r){if(r instanceof Ly){if(this.resetRateLimitErrorsAfter&&this.resetRateLimitErrorsAfter>Date.now())return;this.resetRateLimitErrorsAfter=r.retryAfter?.getTime()??Date.now()+24*60*60*1e3,this.config.statusBar.addError({title:"Cody Autocomplete Disabled Due to Rate Limit",description:`You've used all${r.limit?` ${r.limit}`:""} daily autocompletions.`+(r.retryAfter?` Usage will reset in ${(0,Vwe.formatDistance)(r.retryAfter,new Date)}.`:""),onSelect:()=>{Ec.openExternal(Zn.parse("https://docs.sourcegraph.com/cody/troubleshooting#autocomplete-rate-limits"))}});return}}dispose(){for(let r of this.disposables)r.dispose()}},hOt=0;function QOt(A){let r={invocationSequence:++hOt};return t=>{r={...r,...t},A(r)}}function mOt(A,r,t,i,o,s){return o.map(g=>{let E=r.lineAt(i),p=r.getText(E.range.with({end:i})),B=g.insertText,m=E.range.start,_=g.range?.end||E.range.end,x=new sa(m,_),O=new sa(E.range.start.line,p.length,_.line,_.character),k={title:"Completion accepted",command:"cody.autocomplete.inline.accepted",arguments:[{codyCompletion:void 0}]},P=new mEA(p+B,A,x,O,{document:r,docContext:t,selectedCompletionInfo:s.selectedCompletionInfo,position:i},g,k);return k.arguments[0].codyCompletion=P,P})}function DOt(A,r,t,i,o,s,g){let E=g?g.aborted:!1,p=s?!0:wOt(A,t,r,o),B=vOt(A,i.currentLineSuffix);return!E&&p&&B}function _Ot(A,r){if(r.selectedCompletionInfo){let t=A.getText(r.selectedCompletionInfo.range);if(!r.selectedCompletionInfo.text.startsWith(t))return!1}return!0}function wOt(A,r,t,i){if(i.selectedCompletionInfo){let o=t.getText(i.selectedCompletionInfo.range),s=i.selectedCompletionInfo.text,g=A.insertText;if(typeof g!="string")return!0;let E=r.character-(A.range?.start.character??r.character),p=g.slice(E);if(!(o+p).startsWith(s))return!1}return!0}function vOt(A,r){if(typeof A.insertText!="string")return!1;let t=A.insertText,i=0;for(let o=0;othis.hide(t),A.decorationDurationMilliseconds),this.editorChangeSubscription=ri.onDidChangeTextDocument(i=>{i.document===t.document&&this.hide(t)}))}hide(r){clearTimeout(this.hideTimer),this.editorChangeSubscription?.dispose(),r.setDecorations(this.decorationType,[])}};var IEA=Yn(tEA());var COt=/^(?:( )+|\t+)/,Lk="space",Kwe="tab";function zwe(A,r){let t=new Map,i=0,o,s;for(let g of A.split(/\n/g)){if(!g)continue;let E,p,B,m,_,x=g.match(COt);if(x===null)i=0,o="";else{if(E=x[0].length,p=x[1]?Lk:Kwe,r&&p===Lk&&E===1)continue;p!==o&&(i=0),o=p,B=1,m=0;let O=E-i;if(i=E,O===0)B=0,m=1;else{let k=O>0?O:-O;s=IOt(p,k)}_=t.get(s),_=_===void 0?[1,0]:[_[0]+B,_[1]+m],t.set(s,_)}}return t}function IOt(A,r){return(A===Lk?"s":"t")+String(r)}function bOt(A){let t=A[0]==="s"?Lk:Kwe,i=Number(A.slice(1));return{type:t,amount:i}}function OOt(A){let r,t=0,i=0;for(let[o,[s,g]]of A)(s>t||s===t&&g>i)&&(t=s,i=g,r=o);return r}function MOt(A,r){return(A===Lk?" ":" ").repeat(r)}function wEA(A){if(typeof A!="string")throw new TypeError("Expected a string");let r=zwe(A,!0);r.size===0&&(r=zwe(A,!1));let t=OOt(r),i,o=0,s="";return t!==void 0&&({type:i,amount:o}=bOt(t),s=MOt(i,o)),{amount:o,type:i,indent:s}}function Xwe(A,r){let t=A.split(` -`),i=r.lastIndexOf(` -`),o=r.slice(i+1),s=tE(o);return t.length>1&&t[0]===""&&tE(t[1])===s&&(t.shift(),t[0]=t[0].trimStart()),t.join(` -`)}function Zwe(A,r,t,i){let o=u1(i);if(!o)return A;let g=xOt(A).split(` -`),E=r.lastIndexOf(` -`),p=r.slice(E+1),B=tE(p),m=p.trim()==="",_=Rwe(p,t),x=g.length;for(let O=0;O{let s=0;for(let E of o)if(E===" ")s++;else break;let g=s/r;if(Number.isInteger(g)){let E=" ".repeat(g*t);return o.replace(/^ +/,E)}return o}).join(` -`)}function xOt(A){let r=wEA(A).amount,t=dEA();return t>r?kOt(A,r,t):A}var vEA=class{cache=new Wg({max:12});toCacheKey(r){return`${r.docContext.prefix}\u2588${r.completion.insertText}\u2588${r.docContext.nextNonEmptyLine}`}parse(r){let t=this.toCacheKey(r);return this.cache.has(t)||this.cache.set(t,rz(r)),this.cache.get(t)}},HOt=new vEA;function Ave(A){let{completion:r,document:t,docContext:i}=A,o=B4(t),s=r.insertText.split(` -`).shift()||r.insertText,g=HOt.parse({completion:{insertText:s},document:t,docContext:i});if(!r.tree||!r.points||!o||!g.tree)throw new Error("Expected completion and document to have tree-sitter data for truncation");let{insertText:E,points:p}=r,B=p?.trigger||p.start,m=ROt(g.tree.rootNode,r.tree.rootNode,B);if(m){let _=TOt(m.text,E);if(_)return _}return E}var SOt=7,FOt=new Set(["if_statement","try_statement"]);function ROt(A,r,t){let i=$we(A.descendantForPosition(t)),o=$we(r.descendantForPosition(t));for(let s=0;s0?i:null:i.insertText.trim()===""?null:i}function k3(A){return{totalFileContextChars:Math.floor(A*.9),prefixChars:Math.floor(h4(.6*A)),suffixChars:Math.floor(h4(.1*A))}}var jw=class{constructor(r){this.options=r}};var POt=[IEA.HUMAN_PROMPT,uB],GOt=[IEA.HUMAN_PROMPT,uB,XV],yEA=256,CEA=class extends jw{promptChars;client;model;constructor(r,{maxContextTokens:t,client:i,model:o}){super(r),this.promptChars=h4(t-yEA),this.client=i,this.model=o}emptyPromptLength(){let{messages:r}=this.createPromptPrefix();return iEA(r).length-10}createPromptPrefix(){if(this.options.docContext.prefix.split(` -`).length===0)throw new Error("no prefix lines");let{head:t,tail:i,overlap:o}=b3(this.options.docContext.prefix),s=i.trimmed.endsWith(`{ -`)?i.trimmed.trimEnd():i.trimmed,g=t.raw,E=this.options.docContext.suffix,p=ri.asRelativePath(this.options.document.fileName);return{messages:[{speaker:"human",text:`You are a code completion AI designed to take the surrounding code and shared context into account in order to predict and suggest high-quality code to complete the code enclosed in ${kf} tags. You only response with code that works and fits seamlessly with surrounding code if any or use best practice and nothing else.`},{speaker:"assistant",text:"I am a code completion AI with exceptional context-awareness designed to auto-complete nested code blocks with high-quality code that seamlessly integrates with surrounding code."},{speaker:"human",text:`Below is the code from file path ${p}. Review the code outside the XML tags to detect the functionality, formats, style, patterns, and logics in use. Then, use what you detect and reuse methods/libraries to complete and enclose completed code only inside XML tags precisely without duplicating existing implementations. Here is the code: -\`\`\` -${g}${kf}${uB}${E} -\`\`\``},{speaker:"assistant",text:`${kf}${s}`}],prefix:{head:t,tail:i,overlap:o}}}createPrompt(r){let{messages:t,prefix:i}=this.createPromptPrefix(),o=[],s=this.promptChars-this.emptyPromptLength();for(let g of r){let E=[{speaker:"human",text:"symbol"in g&&g.symbol!==""?`Additional documentation for \`${g.symbol}\`: ${kf}${g.content}${uB}`:`Codebase context from file path '${g.fileName}': ${kf}${g.content}${uB}`},{speaker:"assistant",text:"I will refer to this code to complete your next request."}],p=iEA(E).length+1;if(p>s)break;o.push(...E),s-=p}return{messages:[...o,...t],prefix:i}}async generateCompletions(r,t,i){let{messages:o}=this.createPrompt(t);if(o.length>this.promptChars)throw new Error(`prompt length (${o.length}) exceeded maximum character length (${this.promptChars})`);let s={temperature:.5,messages:o,...this.model==="claude-instant-1.2-cyan"?{model:"anthropic/claude-instant-1.2-cyan"}:void 0,...this.options.multiline?{maxTokensToSample:yEA,stopSequences:POt,timeoutMs:15e3}:{maxTokensToSample:Math.min(50,yEA),stopSequences:GOt,timeoutMs:5e3}};i?.params(s);let g=await Promise.all(Array.from({length:this.options.n}).map(()=>this.fetchAndProcessCompletions(this.client,s,r)));return i?.result({completions:g}),g}async fetchAndProcessCompletions(r,t,i){return new Promise(async(o,s)=>{try{let g=w1(i),E=await r.complete(t,m=>{let _=this.postProcess(m.completion),x=M3(_,this.options);x&&(o({...x,stopReason:"streaming-truncation"}),g.abort())},g.signal),p=this.postProcess(E.completion),B=Lw(p,this.options);o({...B,stopReason:E.stopReason})}catch(g){s(g)}})}postProcess(r){let t=ZV(r);return this.options.docContext.prefix.slice(this.options.docContext.prefix.trimEnd().length).includes(` -`)?t=t.replace(/^\s*\n\s*/,""):t=Az(t),t=$V(t),t}};function nz({maxContextTokens:A=2048,model:r,...t}){let i;switch(r){case"claude-instant-1.2-cyan":i="claude-instant-1.2-cyan";break;case"claude-instant-1.2":case null:i="claude-instant-1.2";break;default:throw new Error(`Invalid model: ${r}`)}return{create(o){return new CEA(o,{maxContextTokens:A,model:i,...t})},contextSizeHints:k3(A),identifier:"anthropic",model:i}}var YOt="fireworks",UOt="<|endoftext|>",LOt=" ",az={"starcoder-16b":"fireworks/accounts/fireworks/models/starcoder-16b-w8a16","starcoder-16b-sourcegraph":"fireworks/accounts/sourcegraph/models/starcoder-16b","starcoder-7b":"fireworks/accounts/fireworks/models/starcoder-7b-w8a16","starcoder-7b-sourcegraph":"fireworks/accounts/sourcegraph/models/starcoder-7b","starcoder-3b":"fireworks/accounts/fireworks/models/starcoder-3b-w8a16","starcoder-1b":"fireworks/accounts/fireworks/models/starcoder-1b-w8a16","wizardcoder-15b":"fireworks/accounts/fireworks/models/wizardcoder-15b","llama-code-7b":"fireworks/accounts/fireworks/models/llama-v2-7b-code","llama-code-13b":"fireworks/accounts/fireworks/models/llama-v2-13b-code","llama-code-13b-instruct":"fireworks/accounts/fireworks/models/llama-v2-13b-code-instruct","mistral-7b-instruct-4k":"fireworks/accounts/fireworks/models/mistral-7b-instruct-4k"};function jOt(A,r){switch(A){case"starcoder-hybrid":case"starcoder-hybrid-sourcegraph":case"starcoder-16b":case"starcoder-7b":case"starcoder-3b":case"starcoder-1b":return r?6144:2048;case"wizardcoder-15b":return 2048;case"llama-code-7b":case"llama-code-13b":case"llama-code-13b-instruct":return 2048;case"mistral-7b-instruct-4k":return 2048;default:return 1200}}var eve=256,OEA=class extends jw{model;promptChars;client;timeouts;constructor(r,{model:t,maxContextTokens:i,client:o,timeouts:s}){super(r),this.timeouts=s,this.model=t,this.promptChars=h4(i-eve),this.client=o}createPrompt(r){let{prefix:t,suffix:i}=this.options.docContext,o=[],s="",g=u1(this.options.document.languageId);bEA(this.model)||o.push(`Path: ${this.options.document.fileName}`);for(let E=0;E0){let _=r[E-1];"symbol"in _&&_.symbol!==""?o.push(`Additional documentation for \`${_.symbol}\`: +// src/cli/evaluate-autocomplete/strategy-bfg.ts +async function evaluateBfgStrategy(client, options2) { + const { workspace: workspace2 } = options2; + const queries = new Queries(options2.queriesDirectory); + const grammarDirectory = path27.normalize(options2.treeSitterGrammars); + const files = (0, import_child_process10.execSync)("git ls-files", { cwd: workspace2 }).toString().split("\n"); + files.sort(); + let remainingTests = options2.testCount; + const snapshots = new SnapshotWriter(options2); + await testInstall(options2); + try { + await snapshots.writeHeader(); + const revision = (0, import_child_process10.execSync)("git rev-parse HEAD", { cwd: workspace2 }).toString().trim(); + for (const file of files) { + if (!matchesGlobPatterns(options2.includeFilepath ?? [], options2.excludeFilepath ?? [], file)) { + continue; + } + const filePath = path27.join(workspace2, file); + const uri = Uri.file(filePath); + const stat7 = await fspromises8.stat(filePath); + if (!stat7.isFile()) { + continue; + } + const content = (await fspromises8.readFile(filePath)).toString(); + const languageid = getLanguageForFileName(file); + const language = getParseLanguage(languageid); + if (!language) { + continue; + } + if (!matchesGlobPatterns(options2.includeLanguage ?? [], options2.excludeLanguage ?? [], languageid)) { + continue; + } + client.notify("textDocument/didOpen", { uri: uri.toString(), content }); + const parser2 = await createParser({ language, grammarDirectory }); + const tree = parser2.parse(content); + const query = await queries.loadQuery(parser2, language, "context"); + if (!query) { + continue; + } + const documentTestCountStart = remainingTests; + const document2 = new EvaluationDocument( + { + languageid, + filepath: file, + strategy: options2.fixture.strategy, + fixture: options2.fixture.name, + workspace: path27.basename(options2.workspace), + revision + }, + content, + uri + ); + for (const match2 of query.matches(tree.rootNode)) { + if (documentTestCountStart - remainingTests > options2.maxFileTestCount) { + console.log(`--max-file-test-count=${options2.maxFileTestCount} limit hit for file '${file}'`); + break; + } + if (remainingTests <= 0) { + break; + } + for (const capture of match2.captures) { + if (remainingTests <= 0) { + break; + } + if (capture.name !== "range") { + continue; + } + const isArgumentList = content.slice(capture.node.startIndex, capture.node.startIndex + 1) === "(" && content.slice(capture.node.endIndex - 1, capture.node.endIndex) === ")"; + const range = isArgumentList ? new Range( + new Position( + capture.node.startPosition.row, + capture.node.startPosition.column + 1 + ), + new Position(capture.node.endPosition.row, capture.node.endPosition.column - 1) + ) : new Range( + new Position(capture.node.startPosition.row, capture.node.startPosition.column), + new Position(capture.node.endPosition.row, capture.node.endPosition.column) + ); + const modifiedContent = [ + document2.textDocument.getText(new Range(new Position(0, 0), range.start)), + document2.textDocument.getText( + new Range(range.end, new Position(document2.textDocument.lineCount, 0)) + ) + ].join(""); + const removedContent = document2.textDocument.getText(range); + const position = new Position( + capture.node.startPosition.row, + capture.node.startPosition.column + 1 + ); + await triggerAutocomplete({ + range, + client, + document: document2, + options: options2, + emptyMatchContent: isArgumentList ? "()" : "", + modifiedContent, + removedContent, + position + }); + remainingTests--; + } + } + await snapshots.writeDocument(document2); + } + } finally { + await testCleanup(options2); + } +} + +// src/cli/evaluate-autocomplete/strategy-git-log.ts +var import_child_process11 = require("child_process"); +var fspromises9 = __toESM(require("fs/promises")); +var path28 = __toESM(require("path")); + +// ../node_modules/.pnpm/parse-git-diff@0.0.14/node_modules/parse-git-diff/build/mjs/context.js +var Context = class { + line = 1; + lines = []; + options = { + noPrefix: false + }; + constructor(diff, options2) { + this.lines = diff.split("\n"); + this.options.noPrefix = !!options2?.noPrefix; + } + getCurLine() { + return this.lines[this.line - 1]; + } + nextLine() { + this.line++; + return this.getCurLine(); + } + isEof() { + return this.line > this.lines.length; + } +}; + +// ../node_modules/.pnpm/parse-git-diff@0.0.14/node_modules/parse-git-diff/build/mjs/constants.js +var LineType = { + Added: "AddedLine", + Deleted: "DeletedLine", + Unchanged: "UnchangedLine", + Message: "MessageLine" +}; +var FileType2 = { + Changed: "ChangedFile", + Added: "AddedFile", + Deleted: "DeletedFile", + Renamed: "RenamedFile" +}; +var ExtendedHeader = { + Index: "index", + Old: "old", + Copy: "copy", + Similarity: "similarity", + Dissimilarity: "dissimilarity", + Deleted: "deleted", + NewFile: "new file", + RenameFrom: "rename from", + RenameTo: "rename to" +}; +var ExtendedHeaderValues = Object.values(ExtendedHeader); + +// ../node_modules/.pnpm/parse-git-diff@0.0.14/node_modules/parse-git-diff/build/mjs/parse-git-diff.js +function parseGitDiff(diff, options2) { + const ctx = new Context(diff, options2); + const files = parseFileChanges(ctx); + return { + type: "GitDiff", + files + }; +} +function parseFileChanges(ctx) { + const changedFiles = []; + while (!ctx.isEof()) { + const changed = parseFileChange(ctx); + if (!changed) { + break; + } + changedFiles.push(changed); + } + return changedFiles; +} +function parseFileChange(ctx) { + if (!isComparisonInputLine(ctx.getCurLine())) { + return; + } + ctx.nextLine(); + let isDeleted = false; + let isNew = false; + let isRename = false; + let pathBefore = ""; + let pathAfter = ""; + while (!ctx.isEof()) { + const extHeader = parseExtendedHeader(ctx); + if (!extHeader) { + break; + } + if (extHeader.type === ExtendedHeader.Deleted) + isDeleted = true; + if (extHeader.type === ExtendedHeader.NewFile) + isNew = true; + if (extHeader.type === ExtendedHeader.RenameFrom) { + isRename = true; + pathBefore = extHeader.path; + } + if (extHeader.type === ExtendedHeader.RenameTo) { + isRename = true; + pathAfter = extHeader.path; + } + } + const changeMarkers = parseChangeMarkers(ctx); + const chunks = parseChunks(ctx); + if (isDeleted && changeMarkers) { + return { + type: FileType2.Deleted, + chunks, + path: changeMarkers.deleted + }; + } else if (isDeleted && chunks.length && chunks[0].type === "BinaryFilesChunk") { + return { + type: FileType2.Deleted, + chunks, + path: chunks[0].pathBefore + }; + } else if (isNew && changeMarkers) { + return { + type: FileType2.Added, + chunks, + path: changeMarkers.added + }; + } else if (isNew && chunks.length && chunks[0].type === "BinaryFilesChunk") { + return { + type: FileType2.Added, + chunks, + path: chunks[0].pathAfter + }; + } else if (isRename) { + return { + type: FileType2.Renamed, + pathAfter, + pathBefore, + chunks + }; + } else if (changeMarkers) { + return { + type: FileType2.Changed, + chunks, + path: changeMarkers.added + }; + } else if (chunks.length && chunks[0].type === "BinaryFilesChunk" && chunks[0].pathAfter) { + return { + type: FileType2.Changed, + chunks, + path: chunks[0].pathAfter + }; + } + return; +} +function isComparisonInputLine(line) { + return line.indexOf("diff") === 0; +} +function parseChunks(context2) { + const chunks = []; + while (!context2.isEof()) { + const chunk = parseChunk(context2); + if (!chunk) { + break; + } + chunks.push(chunk); + } + return chunks; +} +function parseChunk(context2) { + const chunkHeader = parseChunkHeader(context2); + if (!chunkHeader) { + return; + } + if (chunkHeader.type === "Normal") { + const changes = parseChanges(context2, chunkHeader.fromFileRange, chunkHeader.toFileRange); + return { + ...chunkHeader, + type: "Chunk", + changes + }; + } else if (chunkHeader.type === "Combined" && chunkHeader.fromFileRangeA && chunkHeader.fromFileRangeB) { + const changes = parseChanges(context2, chunkHeader.fromFileRangeA.start < chunkHeader.fromFileRangeB.start ? chunkHeader.fromFileRangeA : chunkHeader.fromFileRangeB, chunkHeader.toFileRange); + return { + ...chunkHeader, + type: "CombinedChunk", + changes + }; + } else if (chunkHeader.type === "BinaryFiles" && chunkHeader.fileA && chunkHeader.fileB) { + return { + type: "BinaryFilesChunk", + pathBefore: chunkHeader.fileA, + pathAfter: chunkHeader.fileB + }; + } +} +function parseExtendedHeader(ctx) { + const line = ctx.getCurLine(); + const type2 = ExtendedHeaderValues.find((v) => line.startsWith(v)); + if (type2) { + ctx.nextLine(); + } + if (type2 === ExtendedHeader.RenameFrom || type2 === ExtendedHeader.RenameTo) { + return { + type: type2, + path: line.slice(`${type2} `.length) + }; + } else if (type2) { + return { + type: type2 + }; + } + return null; +} +function parseChunkHeader(ctx) { + const line = ctx.getCurLine(); + const normalChunkExec = /^@@\s\-(\d+),?(\d+)?\s\+(\d+),?(\d+)?\s@@\s?(.+)?/.exec(line); + if (!normalChunkExec) { + const combinedChunkExec = /^@@@\s\-(\d+),?(\d+)?\s\-(\d+),?(\d+)?\s\+(\d+),?(\d+)?\s@@@\s?(.+)?/.exec(line); + if (!combinedChunkExec) { + const binaryChunkExec = /^Binary\sfiles\s(.*)\sand\s(.*)\sdiffer$/.exec(line); + if (binaryChunkExec) { + const [all5, fileA, fileB] = binaryChunkExec; + ctx.nextLine(); + return { + type: "BinaryFiles", + fileA: getFilePath(ctx, fileA, "src"), + fileB: getFilePath(ctx, fileB, "dst") + }; + } + return null; + } + const [all4, delStartA, delLinesA, delStartB, delLinesB, addStart2, addLines2, context3] = combinedChunkExec; + ctx.nextLine(); + return { + context: context3, + type: "Combined", + fromFileRangeA: getRange(delStartA, delLinesA), + fromFileRangeB: getRange(delStartB, delLinesB), + toFileRange: getRange(addStart2, addLines2) + }; + } + const [all3, delStart, delLines, addStart, addLines, context2] = normalChunkExec; + ctx.nextLine(); + return { + context: context2, + type: "Normal", + toFileRange: getRange(addStart, addLines), + fromFileRange: getRange(delStart, delLines) + }; +} +function getRange(start4, lines2) { + const startNum = parseInt(start4, 10); + return { + start: startNum, + lines: lines2 === void 0 ? startNum : parseInt(lines2, 10) + }; +} +function parseChangeMarkers(context2) { + const deleterMarker = parseMarker(context2, "--- "); + const deleted = deleterMarker ? getFilePath(context2, deleterMarker, "src") : deleterMarker; + const addedMarker = parseMarker(context2, "+++ "); + const added = addedMarker ? getFilePath(context2, addedMarker, "dst") : addedMarker; + return added && deleted ? { added, deleted } : null; +} +function parseMarker(context2, marker) { + const line = context2.getCurLine(); + if (line?.startsWith(marker)) { + context2.nextLine(); + return line.replace(marker, ""); + } + return null; +} +var CHAR_TYPE_MAP = { + "+": LineType.Added, + "-": LineType.Deleted, + " ": LineType.Unchanged, + "\\": LineType.Message +}; +function parseChanges(ctx, rangeBefore, rangeAfter) { + const changes = []; + let lineBefore = rangeBefore.start; + let lineAfter = rangeAfter.start; + while (!ctx.isEof()) { + const line = ctx.getCurLine(); + const type2 = getLineType(line); + if (!type2) { + break; + } + ctx.nextLine(); + let change; + const content = line.slice(1); + switch (type2) { + case LineType.Added: { + change = { + type: type2, + lineAfter: lineAfter++, + content + }; + break; + } + case LineType.Deleted: { + change = { + type: type2, + lineBefore: lineBefore++, + content + }; + break; + } + case LineType.Unchanged: { + change = { + type: type2, + lineBefore: lineBefore++, + lineAfter: lineAfter++, + content + }; + break; + } + case LineType.Message: { + change = { + type: type2, + content: content.trim() + }; + break; + } + } + changes.push(change); + } + return changes; +} +function getLineType(line) { + return CHAR_TYPE_MAP[line[0]] || null; +} +function getFilePath(ctx, input, type2) { + if (ctx.options.noPrefix) { + return input; + } + if (type2 === "src") + return input.replace(/^a\//, ""); + if (type2 === "dst") + return input.replace(/^b\//, ""); +} + +// ../node_modules/.pnpm/parse-git-diff@0.0.14/node_modules/parse-git-diff/build/mjs/index.js +var mjs_default = parseGitDiff; + +// src/cli/evaluate-autocomplete/strategy-git-log.ts +async function evaluateGitLogStrategy(client, options2) { + const { workspace: workspace2 } = options2; + try { + let remainingTests = options2.testCount; + const command = `git log --name-only --oneline --diff-filter=AMC --stat --numstat --pretty=format:'%H - %an, %ar : %s' -- ${options2.gitLogFilter}`; + const commits = (0, import_child_process11.execSync)(command, { cwd: workspace2 }).toString().split("\n").map((string) => string.split(" ")[0]).slice(0, options2.testCount).filter(Boolean); + commits.reverse(); + await testInstall(options2); + const snapshots = new SnapshotWriter(options2); + await snapshots.writeHeader(); + for (const commit of commits) { + try { + (0, import_child_process11.execSync)(`git checkout ${commit}`, { cwd: workspace2 }); + const diff = (0, import_child_process11.execSync)("git diff HEAD~1", { cwd: workspace2 }).toString(); + const parsedDiff = mjs_default(diff); + let index = 0; + for (const file of parsedDiff.files) { + const filePath = file.type === "RenamedFile" ? file.pathAfter : file.path; + if (!matchesGlobPatterns(options2.includeFilepath ?? [], options2.excludeFilepath ?? [], filePath)) { + continue; + } + const fullPath = path28.join(workspace2, filePath); + const uri = Uri.file(fullPath); + const content = (await fspromises9.readFile(fullPath)).toString(); + const languageid = getLanguageForFileName(filePath); + const document2 = new EvaluationDocument( + { + languageid, + filepath: filePath, + revision: commit, + fixture: options2.fixture.name, + strategy: options2.fixture.strategy, + workspace: path28.basename(options2.workspace) + }, + content, + uri + ); + const isLastFile = index === parsedDiff.files.length - 1; + if (!isLastFile) { + client.notify("textDocument/didOpen", { uri: uri.toString(), content }); + } + if (isLastFile) { + const lastAddedLine = file.chunks.flatMap((chunks) => chunks.type === "BinaryFilesChunk" ? [] : chunks.changes).findLast((line) => line.type === "AddedLine" && line.content.trim().length >= 4); + if (!lastAddedLine) { + continue; + } + if (remainingTests <= 0) { + continue; + } + const replaceContent = lastAddedLine.content.trimStart(); + const range = new Range( + lastAddedLine.lineAfter - 1, + lastAddedLine.content.length - replaceContent.length, + lastAddedLine.lineAfter - 1, + lastAddedLine.content.length + ); + if (!range.isSingleLine) { + throw new Error("Multi-line ranges not supported yet"); + } + const lines2 = document2.text.split("\n"); + const currentLine = lines2[range.start.line]; + const removedContent = currentLine.slice(range.start.character, range.end.character + 1); + const modifiedContent = [ + ...lines2.slice(0, range.start.line), + currentLine.slice(0, range.start.character) + currentLine.slice(range.end.character), + ...lines2.slice(range.end.line + 1) + ].join("\n"); + const position = range.start; + await triggerAutocomplete({ + removedContent, + modifiedContent, + position, + range, + client, + document: document2, + options: options2, + emptyMatchContent: "" + }); + await snapshots.writeDocument(document2); + remainingTests--; + } + index++; + } + } finally { + } + } + } finally { + await testCleanup(options2); + const submodulesDir = path28.join(workspace2, ".."); + (0, import_child_process11.execSync)("git submodule deinit -f .", { cwd: submodulesDir }).toString(); + (0, import_child_process11.execSync)("git submodule update --init", { cwd: submodulesDir }).toString(); + } +} + +// src/cli/evaluate-autocomplete/evaluate-autocomplete.ts +async function loadEvaluationConfig(options2) { + if (!options2?.evaluationConfig) { + return [options2]; + } + const configBuffer = await fspromises10.readFile(options2.evaluationConfig); + const config = JSON.parse(configBuffer.toString()); + const result = []; + for (const test of config?.workspaces ?? []) { + if (!test.workspace) { + console.error(`skipping test, missing required property 'workspace': ${JSON.stringify(test)}`); + continue; + } + const rootDir = path29.dirname(options2.evaluationConfig); + const workspace2 = path29.normalize(path29.join(rootDir, test.workspace)); + const queriesDirectory = test.queriesDirectory ? path29.join(rootDir, test.queriesDirectory) : config.queriesDirectory ? path29.join(rootDir, config.queriesDirectory) : options2.queriesDirectory; + const fixtures = config.fixtures ?? [{ name: "default", strategy: "bfg" /* BFG */ }]; + for (const fixture of fixtures) { + if (!fixture.strategy) { + throw new Error(`missing: fixture.strategy: ${JSON.stringify(fixture)}`); + } + const snapshotDirectory = test.snapshotDirectory ? path29.join(rootDir, test.snapshotDirectory, fixture.name, test.workspace) : config.snapshotDirectory ? path29.join(rootDir, config.snapshotDirectory, fixture.name, test.workspace) : options2.snapshotDirectory; + result.push({ + ...options2, + ...config, + ...test, + workspace: workspace2, + queriesDirectory, + snapshotDirectory, + fixture, + csvPath: path29.join(snapshotDirectory, "autocomplete.csv") + }); + } + } + return result; +} +var evaluateAutocompleteCommand = new Command("evaluate-autocomplete").description("Evaluate Cody autocomplete by running the Agent in headless mode").option("--workspace ", "The workspace directory where to run the autocomplete evaluation", process.cwd()).option("--test-count ", "The number of autocomplete requests to run in this evaluation", intOption).option( + "--max-file-test-count ", + "The maximum number of autocomplete requests to evaluate in a single document", + intOption, + 10 +).option("--evaluation-config ", "Path to a JSON with configuration for this evaluation", "").option( + "--snapshot-directory ", + "Directory where to write snapshot files to document autocomplete results", + "" +).addOption( + new Option( + "--src-access-token ", + "The Sourcegraph access token to use for authentication" + ).env("SRC_ACCESS_TOKEN") +).addOption( + new Option("--src-endpoint ", "The Sourcegraph URL endpoint to use for authentication").env( + "SRC_ENDPOINT" + ) +).option( + "--include-workspace ", + "A glob pattern to determine what workspace paths to include in the evaluation", + arrayOption, + [] +).option( + "--exclude-workspace ", + "A glob pattern to determine what workspace paths to exclude in the evaluation", + arrayOption, + [] +).option( + "--include-language ", + "A glob pattern to determine what language paths to include in the evaluation", + arrayOption, + [] +).option( + "--exclude-language ", + "A glob pattern to determine what language paths to exclude in the evaluation", + arrayOption, + [] +).option( + "--include-fixture ", + "A glob pattern to determine what fixtures to include in the evaluation", + arrayOption, + [] +).option( + "--exclude-fixture ", + "A glob pattern to determine what fixtures exclude in the evaluation", + arrayOption, + [] +).option( + "--include-filepath ", + "A glob pattern to determine what files to include in the evaluation", + arrayOption, + [] +).option( + "--exclude-filepath ", + "A glob pattern to determine what files exclude in the evaluation", + arrayOption, + [] +).addOption(new Option("--bfg-binary ", "Optional path to a BFG binary").env("BFG_BINARY")).option( + "--tree-sitter-grammars ", + "Path to a directory containing tree-sitter grammars", + path29.resolve(__dirname, "../../vscode/dist") +).option("--queries-directory ", "Path to a directory containing tree-sitter queries").option("--run-test-command", "If enabled, runs the test command to typecheck the generated code").action(async (options2) => { + const testOptions = await loadEvaluationConfig(options2); + const workspacesToRun = testOptions.filter( + (testOptions2) => matchesGlobPatterns(options2.includeWorkspace, options2.excludeWorkspace, testOptions2.workspace) && matchesGlobPatterns(options2.includeFixture, options2.excludeFixture, testOptions2.fixture.name) + ); + await Promise.all(workspacesToRun.map((workspace2) => evaluateWorkspace(workspace2))); +}); +async function evaluateWorkspace(options2) { + console.log(`starting evaluation: fixture=${options2.fixture.name} workspace=${options2.workspace}`); + if (!options2.queriesDirectory) { + console.error("missing required options: --queries-directory"); + process.exit(1); + } + if (!options2.srcAccessToken) { + console.error("environment variable SRC_ACCESS_TOKEN must be non-empty"); + process.exit(1); + } + if (!options2.srcEndpoint) { + console.error("environment variable SRC_ENDPOINT must be non-empty"); + process.exit(1); + } + const workspaceRootUri2 = Uri.from({ scheme: "file", path: options2.workspace }); + const client = await newAgentClient({ + name: "evaluate-autocomplete", + version: "0.1.0", + workspaceRootUri: workspaceRootUri2.toString(), + extensionConfiguration: { + accessToken: options2.srcAccessToken, + serverEndpoint: options2.srcEndpoint, + customHeaders: {}, + customConfiguration: options2.fixture.customConfiguration + } + }); + try { + if (options2.fixture.strategy === "bfg" /* BFG */) { + await evaluateBfgStrategy(client, options2); + } else if (options2.fixture.strategy === "git-log" /* GitLog */) { + await evaluateGitLogStrategy(client, options2); + } + } catch (error) { + console.error("unexpected error running evaluate-autocomplete", error); + } + await client.request("shutdown", null); + client.notify("exit", null); +} +function matchesGlobPatterns(includeGlobs, excludeGlobs, value) { + const matchingIncludePattern = includeGlobs.length > 0 ? !!includeGlobs.find((includePattern) => minimatch(value, includePattern)) : true; + if (!matchingIncludePattern) { + return false; + } + const matchingExcludePatttern = excludeGlobs.find((excludePattern) => minimatch(value, excludePattern)); + return !matchingExcludePatttern; +} + +// src/cli/jsonrpc.ts +var import_adapter_node_http = __toESM(require_pollyjs_adapter_node_http()); +var import_core2 = __toESM(require_pollyjs_core()); +var import_persister_fs = __toESM(require_pollyjs_persister_fs()); +function recordingModeOption(value) { + switch (value) { + case "record": + case "replay": + case "passthrough": + case "stopped": + return value; + default: + throw new InvalidArgumentError( + "Not a valid recording mode. Valid options are record, replay-or-record, replay, passthrough, or stopped." + ); + } +} +function expiryStrategyOption(value) { + switch (value) { + case "error": + case "warn": + case "record": + return value; + default: + throw new InvalidArgumentError( + "Not a valid expiry strategy. Valid options are error, warn, or record." + ); + } +} +var CodyPersister = class extends import_persister_fs.default { + static get id() { + return "cody-fs"; + } + onSaveRecording(recordingId, recording) { + const entries = recording?.log?.entries ?? []; + for (const entry of entries) { + const headers = entry?.request?.headers; + for (const header of headers) { + if (header.name === "authorization") { + header.value = "token REDACTED"; + } + } + } + return super.onSaveRecording(recordingId, recording); + } +}; +var jsonrpcCommand = new Command("jsonrpc").description( + "Interact with the Agent using JSON-RPC via stdout/stdin. This is the subcommand that is used by Cody clients like the JetBrains and Neovim plugins." +).addOption( + new Option( + "--recording-directory ", + "Path to the directory where network traffic is recorded or replayed from. This option should only be used in testing environments." + ).env("CODY_RECORDING_DIRECTORY") +).addOption( + new Option( + "--recording-mode ", + "What kind of recording mode to use. Valid values are to the directory where network traffic is recorded or replayed from. This option should only be used in testing environments." + ).argParser(recordingModeOption).env("CODY_RECORDING_MODE") +).addOption( + new Option( + "--recording-name ", + "The name of the recording to use. Every unique name results in a unique recording (HAR file). Use a unique name for every unique test in your test suite." + ).env("CODY_RECORDING_NAME") +).addOption( + new Option( + "--recording-expiry-strategy ", + "What to do when encountering an expired recording). Use a unique name for every unique test in your test suite." + ).argParser(expiryStrategyOption).env("CODY_RECORDING_EXPIRY_STRATEGY").default("error") +).addOption( + new Option("--recording-expires-in ", "When to expire the recordings").env("CODY_RECORDING_EXPIRES_IN").default("365d") +).addOption( + new Option("--record-if-missing ", "If false, fails the test instead of recording").env("CODY_RECORD_IF_MISSING").argParser(booleanOption).default(false) +).action((options2) => { + let polly; + if (options2.recordingDirectory) { + if (options2.recordingMode === void 0) { + console.error("CODY_RECORDING_MODE is required when CODY_RECORDING_DIRECTORY is set."); + process.exit(1); + } + import_core2.Polly.register(import_adapter_node_http.default); + import_core2.Polly.register(CodyPersister); + polly = new import_core2.Polly(options2.recordingName ?? "CodyAgent", { + flushRequestsOnStop: true, + recordIfMissing: options2.recordIfMissing ?? options2.recordingMode === "record", + mode: options2.recordingMode, + adapters: ["node-http"], + persister: "cody-fs", + recordFailedRequests: true, + expiryStrategy: options2.recordingExpiryStrategy, + expiresIn: options2.expiresIn, + persisterOptions: { + keepUnusedRequests: true, + // For cleaner diffs https://netflix.github.io/pollyjs/#/configuration?id=disablesortingharentries + disableSortingHarEntries: true, + fs: { + recordingsDir: options2.recordingDirectory + } + }, + matchRequestsBy: { + headers: false, + order: false + } + }); + polly.server.get("https://github.com/sourcegraph/bfg/*path").passthrough(); + } else if (options2.recordingMode) { + console.error("CODY_RECORDING_DIRECTORY is required when CODY_RECORDING_MODE is set."); + process.exit(1); + } + process.stderr.write("Starting Cody Agent...\n"); + const agent3 = new Agent({ polly }); + console.log = console.error; + process.stdout.on("close", () => process.exit(1)); + process.stdin.on("close", () => process.exit(1)); + process.stdin.pipe(agent3.messageDecoder); + agent3.messageEncoder.pipe(process.stdout); +}); + +// src/cli/root.ts +var rootCommand = new Command().name("cody-agent").version("0.1.0").description( + "Cody Agent supports running the Cody VS Code extension in headless mode and interact with it via JSON-RPC. The Agent is used by editor clients like JetBrains and Neovim." +).addCommand(jsonrpcCommand).addCommand(evaluateAutocompleteCommand); + +// src/index.ts +var args2 = process.argv.slice(2); +var { operands } = rootCommand.parseOptions(args2); +if (operands.length === 0) { + args2.push("jsonrpc"); +} +rootCommand.parseAsync(args2, { from: "user" }).catch((error) => { + console.error("Error:", error); + process.exit(1); +}); +/*! Bundled license information: + +lodash/lodash.js: + (** + * @license + * Lodash + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + *) + +mime-db/index.js: + (*! + * mime-db + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015-2022 Douglas Christopher Wilson + * MIT Licensed + *) + +mime-types/index.js: + (*! + * mime-types + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) + +dompurify/dist/purify.cjs.js: + (*! @license DOMPurify 3.0.4 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.4/LICENSE *) + +@grpc/proto-loader/build/src/util.js: + (** + * @license + * Copyright 2018 gRPC authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + *) + +@grpc/proto-loader/build/src/index.js: + (** + * @license + * Copyright 2018 gRPC authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + *) + +cookie/index.js: + (*! + * cookie + * Copyright(c) 2012-2014 Roman Shtylman + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) + +object-assign/index.js: + (* + object-assign + (c) Sindre Sorhus + @license MIT + *) + +vary/index.js: + (*! + * vary + * Copyright(c) 2014-2017 Douglas Christopher Wilson + * MIT Licensed + *) -${_.content}`):o.push(`Here is a reference snippet of code from ${_.fileName}: +basic-auth/index.js: + (*! + * basic-auth + * Copyright(c) 2013 TJ Holowaychuk + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015-2016 Douglas Christopher Wilson + * MIT Licensed + *) -${_.content}`)}let p=o.join(` +depd/index.js: + (*! + * depd + * Copyright(c) 2014-2018 Douglas Christopher Wilson + * MIT Licensed + *) -`).split(` -`).map(_=>g?g.commentStart+_:"// ").join(` -`)+` -`,B=WOt(i),m=this.createInfillingPrompt(ri.asRelativePath(this.options.document.fileName),p,t,B);if(m.length>=this.promptChars)return s;s=m}return s}async generateCompletions(r,t,i){let{multiline:o}=this.options,s=this.createPrompt(t),g=this.model==="starcoder-hybrid"?az[o?"starcoder-16b":"starcoder-7b"]:this.model==="starcoder-hybrid-sourcegraph"?az[o?"starcoder-16b-sourcegraph":"starcoder-7b-sourcegraph"]:az[this.model],E=o?this.timeouts?.multiline===void 0?15e3:this.timeouts.multiline:this.timeouts?.singleline===void 0?5e3:this.timeouts.singleline;if(E===0)return[];let p={messages:[{speaker:"human",text:s}],maxTokensToSample:o?eve:30,temperature:.2,topP:.95,topK:0,model:g,stopSequences:o?[` +ee-first/index.js: + (*! + * ee-first + * Copyright(c) 2014 Jonathan Ong + * MIT Licensed + *) -`,` -\r -`]:[` -`],timeoutMs:E};i?.params(p);let B=await Promise.all(Array.from({length:this.options.n}).map(()=>this.fetchAndProcessCompletions(this.client,p,r)));return i?.result({completions:B}),B}createInfillingPrompt(r,t,i,o){if(bEA(this.model))return`${r}${t}${i}${o}`;if(rve(this.model))return`
     ${t}${i} ${o} `;if(this.model==="mistral-7b-instruct-4k"){let s=ri.asRelativePath(this.options.document.fileName),{head:g,tail:E}=b3(this.options.docContext.prefix),p=this.options.docContext.suffix,B=E.trimmed.endsWith(`{
    -`)?E.trimmed.trimEnd():E.trimmed,m=g.raw;return`[INST] Below is the code from file path ${s}. Review the code outside the XML tags to detect the functionality, formats, style, patterns, and logics in use. Then, use what you detect and reuse methods/libraries to complete and enclose completed code only inside XML tags precisely without duplicating existing implementations. Here is the code:
    -\`\`\`
    -${t}${m}${kf}${uB}${p}
    -\`\`\`[/INST]
    - ${kf}${B}`}return console.error("Could not generate infilling prompt for",this.model),`${t}${i}`}async fetchAndProcessCompletions(r,t,i){return new Promise(async(o,s)=>{try{let g=w1(i),E=await r.complete(t,m=>{let _=this.postProcess(m.completion),x=M3(_,this.options);x&&(o({...x,stopReason:"streaming-truncation"}),g.abort())},g.signal),p=this.postProcess(E.completion),B=Lw(p,this.options);o({...B,stopReason:E.stopReason})}catch(g){s(g)}})}postProcess(r){return bEA(this.model)?r.replace(UOt,""):rve(this.model)?r.replace(LOt,""):r}};function MEA({model:A,timeouts:r,...t}){let i=A===null||A===""||A==="starcoder-hybrid"?"starcoder-hybrid":A==="starcoder-hybrid-sourcegraph"?"starcoder-hybrid-sourcegraph":Object.prototype.hasOwnProperty.call(az,A)?A:null;if(i===null)throw new Error(`Unknown model: \`${A}\``);let o=jOt(i,t.starcoderExtendedTokenWindow);return{create(s){return new OEA(s,{model:i,maxContextTokens:o,timeouts:r,...t})},contextSizeHints:k3(o),identifier:YOt,model:i}}function WOt(A){return A.indexOf(`
    -`)===-1?"":A.slice(A.indexOf(`
    -`))}function bEA(A){return A.startsWith("starcoder")||A.startsWith("wizardcoder")}function rve(A){return A.startsWith("llama-code")}var JOt=[uB],qOt=[uB,XV],VOt="unstable-openai",tve=256,kEA=class extends jw{client;promptChars;instructions=`You are a code completion AI designed to take the surrounding code and shared context into account in order to predict and suggest high-quality code to complete the code enclosed in ${kf} tags.  You only respond with code that works and fits seamlessly with surrounding code. Do not include anything else beyond the code.`;constructor(r,{maxContextTokens:t,client:i}){super(r),this.promptChars=h4(t-tve),this.client=i}emptyPromptLength(){return[this.instructions,this.createPromptPrefix()].join(`
    +on-finished/index.js:
    +  (*!
    +   * on-finished
    +   * Copyright(c) 2013 Jonathan Ong
    +   * Copyright(c) 2014 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -`).length-10}createPromptPrefix(){if(this.options.docContext.prefix.split(`
    -`).length===0)throw new Error("no prefix lines");let{head:t,tail:i}=b3(this.options.docContext.prefix),o=i.trimmed.endsWith(`{
    -`)?i.trimmed.trimEnd():i.trimmed,s=t.raw,g=this.options.docContext.suffix;return`Below is the code from file path ${ri.asRelativePath(this.options.document.fileName)}. Review the code outside the XML tags to detect the functionality, formats, style, patterns, and logics in use. Then, use what you detect and reuse methods/libraries to complete and enclose completed code only inside XML tags precisely without duplicating existing implementations. Here is the code:
    -\`\`\`
    -${s}${kf}${uB}${g}
    -\`\`\`
    +on-headers/index.js:
    +  (*!
    +   * on-headers
    +   * Copyright(c) 2014 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${kf}${o}`}createPrompt(r){let t=this.createPromptPrefix(),i=[],o=this.promptChars-this.emptyPromptLength();for(let g of r){let E=["symbol"in g&&g.symbol!==""?`Additional documentation for \`${g.symbol}\`: ${kf}${g.content}${uB}`:`Codebase context from file path '${g.fileName}': ${kf}${g.content}${uB}`],p=E.join(`
    +morgan/index.js:
    +  (*!
    +   * morgan
    +   * Copyright(c) 2010 Sencha Inc.
    +   * Copyright(c) 2011 TJ Holowaychuk
    +   * Copyright(c) 2014 Jonathan Ong
    +   * Copyright(c) 2014-2017 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -`).length+1;if(p>o)break;i.push(...E),o-=p}return[this.instructions,...i,t].join(`
    +bytes/index.js:
    +  (*!
    +   * bytes
    +   * Copyright(c) 2012-2014 TJ Holowaychuk
    +   * Copyright(c) 2015 Jed Watson
    +   * MIT Licensed
    +   *)
     
    -`)}async generateCompletions(r,t,i){let s={messages:[{speaker:"human",text:this.createPrompt(t)}],maxTokensToSample:this.options.multiline?tve:50,temperature:1,topP:.5,stopSequences:this.options.multiline?JOt:qOt,timeoutMs:this.options.multiline?15e3:5e3};i?.params(s);let g=await Promise.all(Array.from({length:this.options.n}).map(()=>this.fetchAndProcessCompletions(this.client,s,r)));return i?.result({completions:g}),g}async fetchAndProcessCompletions(r,t,i){return new Promise(async(o,s)=>{try{let g=w1(i),E=await r.complete(t,m=>{let _=this.postProcess(m.completion),x=M3(_,this.options);x&&(o({...x,stopReason:"streaming-truncation"}),g.abort())},g.signal),p=this.postProcess(E.completion),B=Lw(p,this.options);o({...B,stopReason:E.stopReason})}catch(g){s(g)}})}postProcess(r){let t=ZV(r);return this.options.docContext.prefix.slice(this.options.docContext.prefix.trimEnd().length).includes(`
    -`)?t=t.replace(/^\s*\n\s*/,""):t=Az(t),t=$V(t),t}};function xEA({model:A,maxContextTokens:r=2048,...t}){return{create(i){return new kEA(i,{maxContextTokens:r,...t})},contextSizeHints:k3(r),identifier:VOt,model:A??"gpt-35-turbo"}}async function ive(A,r,t){let i=await zOt(A.autocompleteAdvancedProvider);if(i){let{provider:o,model:s,starcoderExtendedTokenWindow:g}=i;switch(o){case"unstable-openai":return xEA({client:r});case"fireworks":return MEA({client:r,model:A.autocompleteAdvancedModel??s??null,starcoderExtendedTokenWindow:g,timeouts:A.autocompleteTimeouts});case"anthropic":return nz({model:A.autocompleteAdvancedModel??s??null,client:r});default:return xu("createProviderConfig",`Unrecognized provider '${A.autocompleteAdvancedProvider}' configured.`),null}}if(t?.provider){let o=XOt({provider:t.provider,model:t.completionModel});if(!o)return xu("createProviderConfig",`Failed to parse the model name for '${t.provider}' completions provider.`),null;let{provider:s,model:g}=o;switch(s){case"openai":case"azure-openai":return xEA({client:r,model:s==="azure-openai"&&g?"":g});case"fireworks":return MEA({client:r,timeouts:A.autocompleteTimeouts,model:g??null});case"aws-bedrock":case"anthropic":return nz({client:r,model:null});default:return xu("createProviderConfig",`Unrecognized provider '${s}' configured.`),null}}return nz({client:r,model:null})}async function zOt(A){if(A)return{provider:A};let[r,t,i,o,s,g,E,p]=await Promise.all([cg.evaluateFeatureFlag("cody-autocomplete-default-starcoder-7b"),cg.evaluateFeatureFlag("cody-autocomplete-default-starcoder-16b"),cg.evaluateFeatureFlag("cody-autocomplete-default-starcoder-hybrid"),cg.evaluateFeatureFlag("cody-autocomplete-default-starcoder-hybrid-sourcegraph"),cg.evaluateFeatureFlag("cody-autocomplete-default-llama-code-7b"),cg.evaluateFeatureFlag("cody-autocomplete-default-llama-code-13b"),cg.evaluateFeatureFlag("cody-autocomplete-starcoder-extended-token-window"),cg.evaluateFeatureFlag("cody-autocomplete-anthropic-cyan")]);return r||t||i||s||g?{provider:"fireworks",model:r?"starcoder-7b":t?"starcoder-16b":i?o?"starcoder-hybrid-sourcegraph":"starcoder-hybrid":s?"llama-code-7b":"llama-code-13b",starcoderExtendedTokenWindow:E}:p?{provider:"anthropic",model:"claude-instant-1.2-cyan"}:null}var KOt={sourcegraph:"/","aws-bedrock":"."};function XOt({provider:A,model:r}){let t=KOt[A];if(!t)return{provider:A,model:r};if(r){let i=r.indexOf(t),o=r.slice(0,i),s=r.slice(i+1);if(o&&s)return{provider:o,model:s}}return null}function ove(A){let r=null,t=0;return vf.from(ti.registerCommand("cody.autocomplete.openTraceView",()=>{r=ni.createWebviewPanel("codyAutocompleteTraceView","Cody Autocomplete Trace View",2,{enableFindWidget:!0}),r.onDidDispose(()=>{A.setTracer(null),r=null});let i;function o(){if(r){if(!i){r.webview.html=nve(i);return}if(i.invocationSequence>t)t=i.invocationSequence;else if(i.invocationSequence{i=E,o()}),{dispose:()=>{s(),g()}}}),{dispose(){r&&(r.dispose(),r=null)}})}function nve(A){let r=[`# Cody autocomplete trace view${A?` (#${A.invocationSequence})`:""}`,ZOt(),A?null:"Waiting for you to trigger a completion...",A?.params&&`
    -## Params
    +content-type/index.js:
    +  (*!
    +   * content-type
    +   * Copyright(c) 2015 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -- ${HEA(ri.asRelativePath(A.params.document.fileName))} @ ${A.params.position.line+1}:${A.params.position.character+1}
    -- triggerKind: ${A.params.triggerKind}
    -- selectedCompletionInfo: ${A.params.selectedCompletionInfo?A6t(A.params.selectedCompletionInfo,A.params.document):"none"}
    -`,A?.completers&&`
    -## Completers
    +statuses/index.js:
    +  (*!
    +   * statuses
    +   * Copyright(c) 2014 Jonathan Ong
    +   * Copyright(c) 2016 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${A.completers?.map(({id:t,docContext:{prefix:i,suffix:o},completionIntent:s,position:g,document:E,...p})=>`
    -### ${t}
    +toidentifier/index.js:
    +  (*!
    +   * toidentifier
    +   * Copyright(c) 2016 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${x3("Prefix",i,"end")}
    -${x3("Suffix",o,"start")}
    +http-errors/index.js:
    +  (*!
    +   * http-errors
    +   * Copyright(c) 2014 Jonathan Ong
    +   * Copyright(c) 2016 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${ave({...p,completionIntent:s||"unknown"})}
    -`)}`,A?.context===void 0?"":`
    -## Context
    +destroy/index.js:
    +  (*!
    +   * destroy
    +   * Copyright(c) 2014 Jonathan Ong
    +   * Copyright(c) 2015-2022 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${A.context?ave(A.context.logSummary):""}
    +unpipe/index.js:
    +  (*!
    +   * unpipe
    +   * Copyright(c) 2015 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${A.context===null||A.context.context.length===0?"No context.":A.context.context.map(t=>x3(`${t.fileName}${"symbol"in t?`#${t.symbol}`:""} (${t.content.length} chars)`,t.content,"start")).join(`
    +raw-body/index.js:
    +  (*!
    +   * raw-body
    +   * Copyright(c) 2013-2014 Jonathan Ong
    +   * Copyright(c) 2014-2022 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -`)}
    -`,A?.completionProviderCallParams&&`
    -## Completion provider calls
    +on-finished/index.js:
    +  (*!
    +   * on-finished
    +   * Copyright(c) 2013 Jonathan Ong
    +   * Copyright(c) 2014 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${x3("Params",JSON.stringify(A.completionProviderCallParams,null,2))}
    +body-parser/lib/read.js:
    +  (*!
    +   * body-parser
    +   * Copyright(c) 2014-2015 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${A.completionProviderCallResult?x3("Result",JSON.stringify(A.completionProviderCallResult,null,2)):"_Loading result..._"}
    +media-typer/index.js:
    +  (*!
    +   * media-typer
    +   * Copyright(c) 2014 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -`,A?.result===void 0?"":`
    -## Completions
    +type-is/index.js:
    +  (*!
    +   * type-is
    +   * Copyright(c) 2014 Jonathan Ong
    +   * Copyright(c) 2014-2015 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${(A.result?[`- source: ${O3[A.result.source]}`,`- logId: \`${A.result.logId}\``]:[]).join(`
    -`)}
    +body-parser/lib/types/json.js:
    +  (*!
    +   * body-parser
    +   * Copyright(c) 2014 Jonathan Ong
    +   * Copyright(c) 2014-2015 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${A.result===null?"`null`":A.result.items.length===0?"Empty completions.":A.result.items.map(t=>e6t(t,A.params?.document)).join(`
    +body-parser/lib/types/raw.js:
    +  (*!
    +   * body-parser
    +   * Copyright(c) 2014-2015 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    ----
    +body-parser/lib/types/text.js:
    +  (*!
    +   * body-parser
    +   * Copyright(c) 2014-2015 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -`)}`,A?.error&&`
    -## Error
    +body-parser/lib/types/urlencoded.js:
    +  (*!
    +   * body-parser
    +   * Copyright(c) 2014 Jonathan Ong
    +   * Copyright(c) 2014-2015 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${SEA(A.error)}
    -`,Uw.instance?`
    -## Document sections
    +body-parser/index.js:
    +  (*!
    +   * body-parser
    +   * Copyright(c) 2014-2015 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${$Ot()}`:"",`
    -## Advanced tools
    +merge-descriptors/index.js:
    +  (*!
    +   * merge-descriptors
    +   * Copyright(c) 2014 Jonathan Ong
    +   * Copyright(c) 2015 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -${x3("JSON for dataset",t6t(A))}
    +encodeurl/index.js:
    +  (*!
    +   * encodeurl
    +   * Copyright(c) 2016 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -`].filter(Uk).filter(t=>t!=="").map(t=>t.trim()).join(`
    +escape-html/index.js:
    +  (*!
    +   * escape-html
    +   * Copyright(c) 2012-2013 TJ Holowaychuk
    +   * Copyright(c) 2015 Andreas Lubbe
    +   * Copyright(c) 2015 Tiancheng "Timothy" Gu
    +   * MIT Licensed
    +   *)
     
    ----
    +parseurl/index.js:
    +  (*!
    +   * parseurl
    +   * Copyright(c) 2014 Jonathan Ong
    +   * Copyright(c) 2014-2017 Douglas Christopher Wilson
    +   * MIT Licensed
    +   *)
     
    -`);return nHA(r,{noDomPurify:!0})}function ZOt(){let{accepted:A,suggested:r}=swe();return`\u{1F4C8} Suggested: ${r} | Accepted: ${A} | Acceptance rate: ${r===0?"N/A":`${(A/r*100).toFixed(2)}%`}`}function $Ot(){return Uw.instance?`\`\`\`
    -${Uw.instance.debugPrint()}
    -\`\`\``:""}function x3(A,r,t="none",i=50){let o=t==="start"?r.slice(0,i):t==="end"?r.slice(-i):null,s=o===null?"":`: ${t==="end"?"\u22EF":""}${oz(o).replaceAll("<","<").replaceAll(">",">")}${t==="start"?"\u22EF":""}`;return`
    -
    -${A}${s} - -${SEA(r)} - -
    `}function HEA(A){return"`"+A.replaceAll("`","\\`")+"`"}function SEA(A){return"```\n"+A.replaceAll("`","\\`")+"\n```\n"}function ave(A){return Object.keys(A).sort().map(r=>`- ${r}: ${JSON.stringify(A[r],null,2)}`).join(` -`)}function A6t({range:A,text:r},t){return`${HEA(oz(r))}, replacing ${sve(A,t)}`}function e6t(A,r){return`${SEA(oz(A.insertText))} -${A.range?`replacing ${sve(new sa(A.range.start.line,A.range.start.character,A.range.end.line,A.range.end.character),r)}`:"inserting at cursor"}`}function r6t(A){return`${A.start.line+1}:${A.start.character+1}${A.isEmpty?"":`-${A.end.line===A.start.line?"":`${A.end.line+1}:`}${A.end.character+1}`}`}function sve(A,r){return`${r6t(A)} (${A.isEmpty?"empty":r?HEA(oz(r.getText(A))):"unknown replacement text"})`}function oz(A){return A.replaceAll(" ","\xB7").replaceAll(" ","\u21E5").replaceAll(/\r?\n/g,"\u21B5")}function t6t(A){let r=A?.completers?.[0];return r?`{ - context: ${JSON.stringify(A?.context?.context.map(t=>({fileName:t.fileName,content:t.content})))}, - fileName: ${JSON.stringify(ri.asRelativePath(r.document.fileName))}, - languageId: ${JSON.stringify(r.document.languageId)}, - content: \`${r.docContext.prefix}\${CURSOR}${r.docContext.suffix}\`, - }`:""}async function cve({config:A,client:r,statusBar:t,authProvider:i,triggerNotice:o,createBfgRetriever:s}){if(!i.getAuthStatus().isLoggedIn)return Qn("CodyCompletionProvider:notSignedIn","You are not signed in."),A.isRunningInsideAgent?yf.registerInlineCompletionItemProvider("*",{provideInlineCompletionItems:()=>Promise.resolve({items:[]})}):{dispose:()=>{}};let g=[],[E,p,B,m,_,x,O]=await Promise.all([ive(A,r,i.getAuthStatus().configOverwrites),cg.evaluateFeatureFlag("cody-autocomplete-context-lsp-light"),cg.evaluateFeatureFlag("cody-autocomplete-context-bfg"),cg.evaluateFeatureFlag("cody-autocomplete-context-bfg-mixed"),cg.evaluateFeatureFlag("cody-autocomplete-context-local-mixed"),cg.evaluateFeatureFlag("cody-autocomplete-disable-network-cache"),cg.evaluateFeatureFlag("cody-autocomplete-disable-recycling-of-previous-requests")]);if(E){let k=A.autocompleteExperimentalGraphContext==="lsp-light"?"lsp-light":A.autocompleteExperimentalGraphContext==="bfg"?"bfg":A.autocompleteExperimentalGraphContext==="bfg-mixed"?"bfg-mixed":p?"lsp-light":B?"bfg":m?"bfg-mixed":_?"local-mixed":"jaccard-similarity",P=new iz({providerConfig:E,statusBar:t,completeSuggestWidgetSelection:A.autocompleteCompleteSuggestWidgetSelection,disableNetworkCache:x,disableRecyclingOfPreviousRequests:O,triggerNotice:o,isRunningInsideAgent:A.isRunningInsideAgent,contextStrategy:k,createBfgRetriever:s}),H=await i6t(A.autocompleteLanguages);g.push(ti.registerCommand("cody.autocomplete.manual-trigger",()=>P.manuallyTriggerCompletion()),yf.registerInlineCompletionItemProvider([{notebookType:"*"},...H],P),ove(P),P)}else if(A.isRunningInsideAgent)throw new Error("Can't register completion provider because `providerConfig` evaluated to `null`. To fix this problem, debug why createProviderConfig returned null instead of ProviderConfig. To further debug this problem, here is the configuration:\n"+JSON.stringify(A,null,2));return{dispose:()=>{for(let k of g)k.dispose()}}}async function i6t(A){let{"*":r,...t}=A;return(await yf.getLanguages()).flatMap(o=>(o in t?t[o]:r)?[{language:o,scheme:"file"}]:[])}var sz=class{isEnabled=!1;isInlineChatEnabled=!0;_disposables=[];_onDidChangeCodeLenses=new nl;onDidChangeCodeLenses=this._onDidChangeCodeLenses.event;constructor(){this.provideCodeLenses=this.provideCodeLenses.bind(this),this.updateConfig(),ri.onDidChangeConfiguration(r=>{r.affectsConfiguration("cody")&&this.updateConfig()})}init(){this.isEnabled&&(this._disposables.push(yf.registerCodeLensProvider({scheme:"file"},this)),this._disposables.push(ti.registerCommand("cody.editor.codelens.click",async r=>{let t=r;await this.onCodeLensClick(t)})),this._disposables.push(ni.onDidChangeVisibleTextEditors(()=>this.fire()),ni.onDidChangeActiveTextEditor(()=>this.fire())))}updateConfig(){let r=ri.getConfiguration("cody");this.isEnabled=r.get("experimental.commandLenses"),this.isInlineChatEnabled=r.get("inlineChat.enabled")&&r.get("inlineChat.codeLenses"),this.isEnabled&&!this._disposables.length&&this.init(),this.fire()}async onCodeLensClick(r){let t=ku();t&&(t.selection=r.selection),await ti.executeCommand(r.name,"codeLens")}async provideCodeLenses(r,t){if(!this.isEnabled)return[];t.onCancellationRequested(()=>[]);let i=ku();if(!i||i.document!==r||r.languageId==="json")return[];let o=[],s=new Map,E=(await ti.executeCommand("vscode.executeDocumentSymbolProvider",r.uri))?.filter(p=>p.kind===11||p.kind===4||p.kind===5||p.kind===8);if(E)for(let p=0;pku()),new sz}get fileName(){return ku()?.document.fileName??""}getWorkspaceRootPath(){let r=this.getWorkspaceRootUri();return r?.scheme==="file"?r.fsPath:null}getWorkspaceRootUri(){let r=ku()?.document?.uri;if(r){let t=ri.getWorkspaceFolder(r);if(t)return t.uri}return ri.workspaceFolders?.[0]?.uri??null}getActiveTextEditor(){let r=this.getActiveTextEditorInstance();if(!r)return null;let t=r.document.uri,i=r.document.getText(),o=r.selection;return{content:i,filePath:t.fsPath,fileUri:t,selectionRange:o.isEmpty?void 0:o}}getActiveInlineChatTextEditor(){let r=this.controllers.inline,t=r?.thread?.uri;if(!r?.isInProgress||!t)return null;let i=r?.selectionRange;return{content:ri.textDocuments.find(s=>s.uri.fsPath===t.fsPath)?.getText(i)||"",filePath:t.fsPath,selectionRange:i}}getActiveInlineChatSelection(){let r=this.getActiveInlineChatTextEditor();if(!r)return null;let t=ni.visibleTextEditors.find(s=>s.document.uri.fsPath===r.filePath),i=this.controllers.inline?.getSelectionRange();if(!t||!i)return null;let o=new od(i.start.line,0,i.end.line+1,0);return this.createActiveTextEditorSelection(t,o)}getActiveTextEditorInstance(){return ku()??null}getActiveTextEditorSelection(){if(this.controllers.inline?.isInProgress)return this.getActiveInlineChatSelection();let r=this.getActiveTextEditorInstance();if(!r)return null;let t=r.selection;return!t||t?.start.isEqual(t.end)?null:this.createActiveTextEditorSelection(r,t)}async getActiveTextEditorSmartSelection(){let r=this.getActiveTextEditorInstance();if(!r)return null;let t=r.selection;if(!t.start)return null;if(t&&!t?.start.isEqual(t.end))return this.createActiveTextEditorSelection(r,t);let i=t.start.line,o=await Xm(r.document.uri,i);return o?this.createActiveTextEditorSelection(r,o):null}getActiveTextEditorSelectionOrEntireFile(){let r=this.getActiveTextEditorInstance();if(!r)return null;let t=r.selection;return(!t||t.isEmpty)&&(t=new od(0,0,r.document.lineCount,0)),this.createActiveTextEditorSelection(r,t)}getActiveTextEditorSelectionOrVisibleContent(){if(this.controllers.inline?.isInProgress)return this.getActiveInlineChatSelection();let r=this.getActiveTextEditorInstance();if(!r)return null;let t=r.selection;if(t&&!t.isEmpty)return this.createActiveTextEditorSelection(r,t);let i=r.visibleRanges;if(i.length===0)return null;let o=i[0];return t=new od(o.start.line,0,o.end.line+1,0),!t||t.isEmpty?null:this.createActiveTextEditorSelection(r,t)}async getTextEditorContentForFile(r,t){if(!r)return;let i;if(t){let g=t?.start?.line,E=t?.end?.line;g===E&&E++,i=new sa(g,0,E,0)}let o=Zn.parse(r.fsPath);return(await ri.openTextDocument(o)).getText(i)}getActiveTextEditorDiagnosticType(r){switch(r){case 0:return"error";case 1:return"warning";case 2:return"information";case 3:return"hint"}}getActiveTextEditorDiagnosticsForRange({start:r,end:t}){let i=this.getActiveTextEditorInstance();if(!i)return null;let o=yf.getDiagnostics(i.document.uri),s=new sa(new Ao(r.line,r.character),new Ao(t.line,t.character));return o.filter(g=>s.contains(g.range)).map(({message:g,range:E,severity:p})=>({type:this.getActiveTextEditorDiagnosticType(p),range:E,text:i.document.getText(E),message:g}))}createActiveTextEditorSelection(r,t){let i=r.document.getText(new sa(new Ao(Math.max(0,t.start.line-50),0),t.start)),o=r.document.getText(new sa(t.end,new Ao(t.end.line+50,0)));return{fileName:ri.asRelativePath(r.document.uri.fsPath),selectedText:r.document.getText(t),precedingText:i,followingText:o,selectionRange:t,fileUri:r.document.uri}}getActiveTextEditorVisibleContent(){let r=this.getActiveTextEditorInstance();if(!r)return null;let t=r.visibleRanges;if(t.length===0)return null;let i=t[0],o=r.document.getText(new sa(new Ao(i.start.line,0),new Ao(i.end.line+1,0)));return{fileName:ri.asRelativePath(r.document.uri.fsPath),fileUri:r.document.uri,content:o}}async replaceSelection(r,t,i){let o=this.getActiveTextEditorInstance();if(this.controllers.inline?.isInProgress){await this.controllers.inline.replace(r,i,t);return}if(!o||ri.asRelativePath(o.document.uri.fsPath)!==r){console.error("Missing file");return}let s=o.selection;if(!s){console.error("Missing selection");return}if(o.document.getText(s)!==t){await ni.showInformationMessage("The selection changed while Cody was working. The text will not be edited.");return}await o.edit(g=>{g.replace(s,i)})}async createWorkspaceFile(r,t){let i=t??await ni.showSaveDialog();if(i)try{let o=new Sd;o.createFile(i,{ignoreIfExists:!0});let s=new sa(0,0,9999,0);o.replace(i,s,r.trimEnd()),await ri.applyEdit(o),ti.executeCommand("vscode.open",i)}catch{let o="Failed to create new file.";await ni.showInformationMessage(o)}}async showQuickPick(r){return await ni.showQuickPick(r)}async showWarningMessage(r){await ni.showWarningMessage(r)}async showInputBox(r){return ni.showInputBox({placeHolder:r||"Enter here..."})}async didReceiveFixupText(r,t,i){if(!this.controllers.fixups)throw new Error("no fixup controller");await this.controllers.fixups.didReceiveFixupText(r,t,i)}};var lz=class{constructor(r){this.client=r}async searchAttribution(r){let t=await this.client.searchAttribution(r);return Yo(t)?t:{limitHit:t.limitHit,repositories:t.nodes.map(i=>({name:i.repositoryName}))}}};function gve(A,r){function t(){return new URL("/.api/completions/code",A.serverEndpoint).href}function i(s,g,E){let p=E?w1(E):new AbortController;return Promise.race([o(s,g,p.signal),o6t(s.timeoutMs).finally(()=>{setTimeout(()=>p.abort(),0)})])}async function o(s,g,E){let p=r?.startCompletion(s),B=await cg.evaluateFeatureFlag("cody-autocomplete-tracing"),m=new Headers(A.customHeaders);m.set("Connection","keep-alive"),A.accessToken&&m.set("Authorization",`token ${A.accessToken}`),B&&m.set("X-Sourcegraph-Should-Trace","true");let x=!!(typeof process<"u"),O=t(),k=await XG(O,{method:"POST",body:JSON.stringify({...s,stream:x}),headers:m,signal:E}),P=k.headers.get("x-trace")??void 0;if(k.status===429){let T=k.headers.get("retry-after"),v=k.headers.get("x-ratelimit-limit");throw new Ly(await k.text(),v?parseInt(v,10):void 0,T?new Date(T):void 0)}if(!k.ok)throw new Ew(k,await k.text(),P);if(k.body===null)throw new pw("No response body",P);if(k.headers.get("content-type")==="text/event-stream"){let T;try{let v=n6t(k.body);for await(let F of v)if(F.event==="completion"){if(E?.aborted)break;T=JSON.parse(F.data),g?.(T)}if(T===void 0)throw new pw("No completion response received",P);return p?.onComplete(T),T}catch(v){r5(v)&&T&&p?.onComplete(T);let F=`error parsing streaming CodeCompletionResponse: ${v}`;throw p?.onError(F),new pw(F,P)}}else{let T=await k.text();try{let v=JSON.parse(T);if(typeof v.completion!="string"||typeof v.stopReason!="string"){let F=`response does not satisfy CodeCompletionResponse: ${T}`;throw p?.onError(F),new pw(F,P)}else return p?.onComplete(v),v}catch(v){let F=`error parsing response CodeCompletionResponse: ${v}, response text: ${T}`;throw p?.onError(F),new pw(F,P)}}}return{complete:i,onConfigurationChange(s){A=s}}}var uve=` - -`;async function*n6t(A){let r="";for await(let t of A){let i=[],o=new TextDecoder().decode(t);r+=o;let s;for(;(s=r.indexOf(uve))>=0;){let g=r.slice(0,s);r=r.slice(s+uve.length),i.push(a6t(g))}for(let g=0;gsetTimeout(()=>t(new e5("The request timed out")),A))}async function dve(A,r,t,i,o){let s=o.createSentryService?.(A),g=o.createCompletionsClient(A,$iA),E=gve(A,$iA),p=A.codebase?await O0.getRepoId(A.codebase):null;Yo(p)&&Qn("external-services:configureExternalServices",`Cody could not find the '${A.codebase}' repository on your Sourcegraph instance. -Please check that the repository exists. You can override the repository with the "cody.codebase" setting.`);let B=p&&!Yo(p)?new l_(O0,p):null,m=new OI(g),_=new c_(A,A.codebase,B,r?o.createLocalKeywordContextFetcher?.(r,i,m)??null:null,r?o.createFilenameContextFetcher?.(r,i,m)??null:null,null,t,void 0),x=new lz(O0);return{intentDetector:new DI(O0,g),codebaseContext:_,chatClient:m,codeCompletionsClient:E,guardrails:x,onConfigurationChange:O=>{s?.onConfigurationChange(O),g.onConfigurationChange(O),E.onConfigurationChange(O),_.onConfigurationChange(O)}}}function pve(A,r){let t=A.length,i=r.length,o=new Uint16Array((t+1)*(i+1)),s=new Array((t+1)*(i+1));s[0]="*";for(let B=1;B<=t;B++)o[B]=B,s[B]="X";for(let B=1;B<=i;B++)o[B*(t+1)]=B,s[B*(t+1)]="I";for(let B=1;B<=i;B++){let m=r[B-1];for(let _=1;_<=t;_++){let x=A[_-1],O=o[B*(t+1)+_-1]+1,k=o[(B-1)*(t+1)+_]+1,P=o[(B-1)*(t+1)+_-1]+(x===m?0:2),H=Math.min(O,k,P);o[B*(t+1)+_]=H,s[B*(t+1)+_]=H===P?x===m?"-":"R":H===O?"X":"I"}}let g=new Uint8Array((t+1)*(i+1)),E=t,p=i;for(;E!==0||p!==0;)switch(s[p*(t+1)+E]){case"-":g[p*(t+1)+E]=1,E--,p--;break;case"R":E--,p--;break;case"X":E--;break;case"I":p--;break;default:throw new Error("unreachable")}return g}function s6t(A,r,t){let i=pve(A,r),o=pve(A,t),s=[],g=0,E=0,p=0;A:for(;;){for(let B=1;g+B<=A.length&&(E+B<=r.length||p+B<=t.length);B++)if(!(E+B<=r.length&&i[(E+B)*(A.length+1)+g+B]&&p+B<=t.length&&o[(p+B)*(A.length+1)+g+B])){if(B>1){s.push([r.slice(E,E+B-1),A.slice(g,g+B-1),t.slice(p,p+B-1)]),g+=B-1,E+=B-1,p+=B-1;continue A}for(let m=g+1;m<=A.length;m++){let _,x;for(_=1;_<=r.length&&!i[_*(A.length+1)+m];_++);if(!(_>r.length)){for(x=1;x<=t.length&&!o[x*(A.length+1)+m];x++);if(!(x>t.length)){s.push([r.slice(E,_-1),A.slice(g,m-1),t.slice(p,x-1)]),g=m-1,E=_-1,p=x-1;continue A}}}break A}break}return(g<=A.length||E<=r.length||p<=t.length)&&s.push([r.slice(E),A.slice(g),t.slice(p)]),s}function uz(A,r){let{line:t,character:i}=A;for(let o of r)o===` -`?(t++,i=0):i++;return{line:t,character:i}}function REA(A,r,t,i){let o=s6t(A,r,t),s=[],g=[],E=[],p=!0,B=i,m=i,_=[];for(let x of o){let O=uz(B,x[2]);if(x[1]===x[2]&&x[0]!==x[1]){s.push({kind:"insert",text:x[0],range:{start:B,end:O}}),_.push(x[0]);let k=uz(m,x[0]);p&&E.push({start:m,end:k}),m=k}else x[1]===x[0]&&x[1]!==x[2]||x[0]===x[2]?(m=uz(m,x[2]),_.push(x[2])):(g.push({start:B,end:O}),p=!1);B=O}return{originalText:A,bufferText:t,mergedText:p?_.join(""):void 0,clean:p,conflicts:g,edits:s,highlights:E}}function gz(A,r,t){if(r.start.line>A.end.line)return A;let i=0;t.includes(` -`)?i=t.split(` -`).length-1:r.end.line-r.start.line>0&&(i-=r.end.line-r.start.line);let o=r.start.line>A.start.line?A.start.line:A.start.line+i;return new sa(o,0,A.end.line+i,0)}function H3(A){return new sa(A,0,A,0)}function jk(A,r){let t=Zn.file(r),i=Zn.joinPath(t,"dist/webviews");return Zn.joinPath(i,A==="cody"?"cody.png":"sourcegraph.png")}async function dz(A,r,t){let i=t.split(` -`).length-2,o=await ri.openTextDocument(A),s=new Sd,g=new sa(r.start,0,r.end,0);return s.delete(o.uri,g),s.insert(o.uri,new Ao(r.start,0),t),await ri.applyEdit(s),new sa(r.start,0,r.start+i,0)}var TEA={1:{id:"idle",icon:"clock",description:"Initial state"},2:{id:"working",icon:"sync~spin",description:"Cody is preparing a response"},3:{id:"applying",icon:"pencil",description:"The edit is being applied to the document"},4:{id:"formatting",icon:"pencil",description:"The edit is being formatted in the document"},5:{id:"applied",icon:"pass-filled",description:"Suggestions from Cody have been applied"},6:{id:"finished",icon:"pass-filled",description:"The edit has been resolved and is no longer visible in the document"},7:{id:"error",icon:"stop",description:"The task failed"}};function Eve(A){let r=A.lastIndexOf("/");return r===-1?A:A.slice(r+1)}function fve(A){let r=ni.visibleTextEditors.find(i=>i.document.uri===A);if(!r)return!0;let{insertSpaces:t}=r.options;return typeof t=="string"||t===void 0?(console.error('Unexpected value when getting "insertSpaces" for the current editor.'),!0):t}function Bve(A){let r=ni.visibleTextEditors.find(i=>i.document.uri===A);if(!r)return 4;let{tabSize:t}=r.options;return typeof t=="string"||t===void 0?(console.error('Unexpected value when getting "tabSize" for the current editor.'),4):t}function hve(A){let r=H3(A.selectionRange.start.line);switch(A.state){case 2:{let t=l6t(r),i=p6t(r,A.id);return[t,i]}case 3:return[u6t(r)];case 4:{let t=g6t(r),i=d6t(r,A.id);return[t,i]}case 5:{let t=f6t(r,A.id),i=B6t(r,A.id),o=h6t(r,A.id),s=Q6t(r,A.id);return[t,i,o,s]}case 7:{let t=c6t(r,A.id),i=E6t(r,A.id);return[t,i]}default:return[]}}function c6t(A,r){let t=new ng(A);return t.command={title:"$(warning) Applying edits failed",command:"cody.fixup.codelens.error",arguments:[r]},t}function l6t(A){let r=new ng(A);return r.command={title:"$(sync~spin) Cody is working...",command:"cody.focus"},r}function u6t(A){let r=new ng(A);return r.command={title:"$(sync~spin) Applying...",command:"cody.focus"},r}function g6t(A){let r=new ng(A);return r.command={title:"$(sync~spin) Formatting...",command:"cody.focus"},r}function d6t(A,r){let t=new ng(A);return t.command={title:"Skip",command:"cody.fixup.codelens.skip-formatting",arguments:[r]},t}function p6t(A,r){let t=new ng(A);return t.command={title:"Cancel",command:"cody.fixup.codelens.cancel",arguments:[r]},t}function E6t(A,r){let t=new ng(A);return t.command={title:"Discard",command:"cody.fixup.codelens.cancel",arguments:[r]},t}function f6t(A,r){let t=new ng(A);return t.command={title:"$(cody-logo) Edits Applied",command:"cody.fixup.codelens.diff",arguments:[r]},t}function B6t(A,r){let t=new ng(A);return t.command={title:"Retry",command:"cody.fixup.codelens.retry",arguments:[r]},t}function h6t(A,r){let t=new ng(A);return t.command={title:"Undo",command:"cody.fixup.codelens.undo",arguments:[r]},t}function Q6t(A,r){let t=new ng(A);return t.command={title:"Done",command:"cody.fixup.codelens.accept",arguments:[r]},t}var pz=class{constructor(r){this.files=r;this.provideCodeLenses=this.provideCodeLenses.bind(this),this._disposables.push(yf.registerCodeLensProvider("*",this))}taskLenses=new Map;_disposables=[];_onDidChangeCodeLenses=new nl;onDidChangeCodeLenses=this._onDidChangeCodeLenses.event;provideCodeLenses(r,t){let i=this.files.maybeFileForUri(r.uri);if(!i)return[];let o=[];for(let s of this.files.tasksForFile(i))o.push(...this.taskLenses.get(s)||[]);return o}didUpdateTask(r){if(r.state===6){this.removeLensesFor(r);return}this.taskLenses.set(r,hve(r)),this.notifyCodeLensesChanged()}didDeleteTask(r){this.removeLensesFor(r)}removeLensesFor(r){this.taskLenses.delete(r)&&this.notifyCodeLensesChanged()}notifyCodeLensesChanged(){this._onDidChangeCodeLenses.fire()}dispose(){this.taskLenses.clear();for(let r of this._disposables)r.dispose();this._disposables=[]}};var Ez=class{contentStore=new Map;tasksByFilePath=new Map;_onDidChange=new nl;_disposables;constructor(){this._disposables=ri.onDidCloseTextDocument(r=>this.deleteByFilePath(r.uri.fsPath))}provideTextDocumentContent(r){let t=r.fragment;return this.contentStore.get(t)||null}async set(r,t){let i=await ri.openTextDocument(t);this.contentStore.set(r,i.getText()),this.tasksByFilePath.set(t.fsPath,[...this.tasksByFilePath.get(t.fsPath)||[],r])}delete(r){this.contentStore.delete(r);for(let[t,i]of this.tasksByFilePath){let o=i.indexOf(r);o>-1&&i.splice(o,1),i.length===0&&this.deleteByFilePath(t)}}deleteByFilePath(r){let t=this.tasksByFilePath.get(r);if(t)for(let i of t)this.contentStore.delete(i)}get onDidChange(){return this._onDidChange.event}dispose(){this._disposables.dispose(),this._onDidChange.dispose(),this.contentStore=new Map,this.tasksByFilePath=new Map}};function m6t(A){return A?{edits:A.edits.map(r=>new sa(new Ao(r.range.start.line,r.range.start.character),new Ao(r.range.end.line,r.range.end.character))),conflicts:A.conflicts.map(r=>new sa(new Ao(r.start.line,r.start.character),new Ao(r.end.line,r.end.character)))}:{edits:[],conflicts:[]}}var fz=class{decorationCodyConflictMarker_;decorationCodyConflicted_;decorationCodyIncoming_;decorations_=new Map;constructor(){this.decorationCodyConflictMarker_=ni.createTextEditorDecorationType({backgroundColor:new Hd("cody.fixup.conflictBackground"),borderColor:new Hd("cody.fixup.conflictBorder"),borderStyle:"solid",borderWidth:"1px"}),this.decorationCodyConflicted_=ni.createTextEditorDecorationType({backgroundColor:new Hd("cody.fixup.conflictedBackground"),borderColor:new Hd("cody.fixup.conflictedBorder"),borderStyle:"solid",borderWidth:"1px"}),this.decorationCodyIncoming_=ni.createTextEditorDecorationType({backgroundColor:new Hd("cody.fixup.incomingBackground"),borderColor:new Hd("cody.fixup.incomingBorder"),borderStyle:"solid",borderWidth:"1px"})}dispose(){this.decorationCodyConflictMarker_.dispose(),this.decorationCodyConflicted_.dispose(),this.decorationCodyIncoming_.dispose()}didChangeVisibleTextEditors(r,t){this.applyDecorations(t,this.decorations_.get(r)?.values()||[].values())}didUpdateDiff(r){this.updateTaskDecorations(r,r.diff)}didCompleteTask(r){this.updateTaskDecorations(r,void 0)}updateTaskDecorations(r,t){let i=m6t(t),o=i.edits.length===0&&i.conflicts.length===0,s=this.decorations_.get(r.fixupFile);if(!(!s&&o)){if(o){s?.has(r)&&(s.delete(r),this.didChangeFileDecorations(r.fixupFile));return}s||(s=new Map,this.decorations_.set(r.fixupFile,s)),s.set(r,i),this.didChangeFileDecorations(r.fixupFile)}}didChangeFileDecorations(r){let t=ni.visibleTextEditors.filter(i=>i.document.uri===r.uri);t.length&&this.applyDecorations(t,this.decorations_.get(r)?.values()||[].values())}applyDecorations(r,t){let i=[],o=[],s=[];for(let g of t)(g.conflicts.length?o:i).push(...g.edits),s.push(...g.conflicts);for(let g of r)g.setDecorations(this.decorationCodyConflictMarker_,s),g.setDecorations(this.decorationCodyConflicted_,o),g.setDecorations(this.decorationCodyIncoming_,i)}};function _ve(A,r){return D6t(Yk(_6t(A),r))}function D6t(A){return{start:Qve(A.start),end:Qve(A.end)}}function Qve(A){return{line:A.line,character:A.character}}function _6t(A){return new sa(mve(A.start),mve(A.end))}function mve(A){return new Ao(A.line,A.character)}function Dve(A,r){for(let t=0;t{this.work_.push(()=>{try{t(r())}catch(o){i(o)}})})}scheduleCallback(){this.scheduled_||(this.scheduled_=!0,this.timeout_.refresh())}doWorkNow(){this.scheduled_=!1;let r=this.work_.shift();r&&(this.work_.length&&this.scheduleCallback(),r())}};function v6t(A,r){let t=setTimeout(A,r);if(typeof t=="number"){let i=t,o={refresh(){clearTimeout(i),i=setTimeout(A,r)},unref(){return o}};return o}return t}var Dz=class{constructor(r,t,i="edit",o,s,g){this.fixupFile=r;this.instruction=t;this.intent=i;this.selectionRange=o;this.insertMode=s;this.source=g;this.id=Date.now().toString(36).replaceAll(/\d+/g,""),this.instruction=t.replace(/^\/(edit|fix)/,"").trim()}id;state_=1;original="";inProgressReplacement;replacement;error;diff;spinCount=0;editedRange;formattingResolver=null;set state(r){this.state_=r}get state(){return this.state_}};var _z=class{constructor(r){this.taskFactory=r}async getInstructionFromQuickPick({title:r=`${Ph.description} (${Ph.slashCommand})`,placeholder:t="Your instructions",value:i="",prefix:o=Ph.slashCommand}={}){let s=ni.createQuickPick();return s.title=r,s.placeholder=t,s.buttons=[S0.back],s.value=i,s.sortByLabel=!1,s.onDidTriggerButton(()=>{ti.executeCommand("cody.action.commands.menu"),s.hide()}),s.show(),new Promise(g=>s.onDidAccept(()=>{let E=s.value.trim();if(E)return s.hide(),g(o?`${o} ${E}`:E)}))}async show(){let r=ku();if(!r)return null;let t=r.selection,i=(await this.getInstructionFromQuickPick())?.trim();if(!i)return null;let o=/^\/chat(|\s.*)$/,s=i.match(o);if(s?.[1])return await ti.executeCommand("cody.action.chat",s[1],"fixup"),null;let g=this.taskFactory.createTask(r.document.uri,i,t);return ni.showTextDocument(r.document),g}};var wz=class{treeNodes=new Map;treeItems=new Map;_disposables=[];_onDidChangeTreeData=new nl;onDidChangeTreeData=this._onDidChangeTreeData.event;constructor(){ti.executeCommand("setContext","cody.fixup.view.isEmpty",!0)}refresh(){ti.executeCommand("setContext","cody.fixup.view.isEmpty",this.treeNodes.size===0),this._onDidChangeTreeData.fire()}getChildren(r){if(r&&r.contextValue==="fsPath"){let t=[...this.treeItems.values()].filter(i=>i.fsPath===r.fsPath);return t.length===0?(this.treeNodes.delete(r.fsPath),[]):t}return[...this.treeNodes.values()]}setTreeItem(r){let t=new vz(r.instruction,r);this.treeItems.set(r.id,t);let i=this.treeNodes.get(r.fixupFile.fileName)||new vz(r.fixupFile.fileName);i.addChildren(r.id,r.state),this.treeNodes.set(r.fixupFile.fileName,i),this.refresh()}getTreeItem(r){return r}removeTreeItemByID(r){let t=this.treeItems.get(r);if(!t)return;this.treeItems.delete(r);let i=this.treeNodes.get(t.fsPath);i?.removeChild(r),i&&i.tasks.size===0&&this.treeNodes.delete(t.fsPath),this.refresh()}removeTreeItemsByFileName(r){let t=this.treeNodes.get(r);if(t){for(let i of t.tasks)this.treeItems.delete(i);this.treeNodes.delete(r),this.refresh()}}reset(){this.treeNodes=new Map,this.treeItems=new Map,this.refresh()}dispose(){this.reset();for(let r of this._disposables)r.dispose();this._disposables=[]}},vz=class extends $v{state=2;fsPath;failed=new Set;tasks=new Set;constructor(r,t){if(super(r),!t){this.fsPath=r,this.tooltip=r,this.label=Eve(r),this.contextValue="fsPath",this.collapsibleState=2,this.description="0 fixups";return}this.state=t.state,this.id=t.id,this.fsPath=t.fixupFile.fileName,this.resourceUri=t.fixupFile.uri,this.contextValue="task",this.collapsibleState=0,this.tooltip=new Xv(`Task #${t.id}: ${t.instruction}`,!0),this.command={command:"cody.fixup.open",title:"Go to File",arguments:[t.id]},this.updateIconPath()}addChildren(r,t){this.contextValue!=="fsPath"||t===6||(this.tasks.add(r),this.description=this.makeNodeDescription(t))}removeChild(r){this.tasks.delete(r)}makeNodeDescription(r){let t=this.tasks.size,i=this.failed.size,o=`${t} ${t>1?"fixups":"fixup"}`,s=t-i;switch(r){case 2:o+=", 1 running",s--;break;case 3:o+=", 1 applying",s--;break;case 6:s--;break}return i>0&&(o+=`, ${i} failed`),s>0&&(o+=`, ${s} applied`),ti.executeCommand("setContext","cody.fixup.filesWithApplicableFixups",s<1),o}updateIconPath(){let r=TEA[this.state].icon,t=TEA[this.state].id;this.iconPath=new y0(r,new Hd(t))}};var yz=class{tasks=new Map;taskViewProvider;files;editObserver;scheduler=new mz(10);decorator=new fz;codelenses=new pz(this);contentStore=new Ez;typingUI=new _z(this);_disposables=[];constructor(){this._disposables.push(ri.registerTextDocumentContentProvider("cody-fixup",this.contentStore),ti.registerCommand("cody.fixup.open",t=>this.showThisFixup(t)),ti.registerCommand("cody.fixup.accept",t=>this.acceptFixups(t)),ti.registerCommand("cody.fixup.accept-by-file",t=>this.acceptFixups(t)),ti.registerCommand("cody.fixup.accept-all",()=>this.acceptFixups()),ti.registerCommand("cody.fixup.diff",t=>this.showDiff(t)),ti.registerCommand("cody.fixup.codelens.cancel",t=>(Fa.log("CodyVSCodeExtension:fixup:codeLens:clicked",{op:"cancel"}),this.cancel(t))),ti.registerCommand("cody.fixup.codelens.diff",t=>(Fa.log("CodyVSCodeExtension:fixup:codeLens:clicked",{op:"diff"}),this.diff(t))),ti.registerCommand("cody.fixup.codelens.retry",async t=>(Fa.log("CodyVSCodeExtension:fixup:codeLens:clicked",{op:"regenerate"}),this.retry(t))),ti.registerCommand("cody.fixup.codelens.undo",t=>(Fa.log("CodyVSCodeExtension:fixup:codeLens:clicked",{op:"undo"}),this.undo(t))),ti.registerCommand("cody.fixup.codelens.accept",t=>(Fa.log("CodyVSCodeExtension:fixup:codeLens:clicked",{op:"accept"}),this.accept(t))),ti.registerCommand("cody.fixup.codelens.error",t=>(Fa.log("CodyVSCodeExtension:fixup:codeLens:clicked",{op:"show_error"}),this.showError(t))),ti.registerCommand("cody.fixup.codelens.skip-formatting",t=>(Fa.log("CodyVSCodeExtension:fixup:codeLens:clicked",{op:"skip_formatting"}),this.skipFormatting(t)))),this.files=new Qz,this._disposables.push(ri.onDidRenameFiles(this.files.didRenameFiles.bind(this.files))),this._disposables.push(ri.onDidDeleteFiles(this.files.didDeleteFiles.bind(this.files))),this._disposables.push(ni.onDidChangeVisibleTextEditors(this.didChangeVisibleTextEditors.bind(this))),this.taskViewProvider=new wz,this.editObserver=new Bz(this),this._disposables.push(ri.onDidChangeTextDocument(this.editObserver.textDocumentChanged.bind(this.editObserver)));let r=ri.getConfiguration("files").get("autoSave");(r==="off"||r==="onWindowChange")&&this._disposables.push(ri.onDidSaveTextDocument(({uri:t})=>{for(let i of this.tasks.values())i.fixupFile.uri.fsPath.endsWith(t.fsPath)&&this.accept(i.id)}))}registerTreeView(){this._disposables.push(ni.registerTreeDataProvider("cody.fixup.tree.view",this.taskViewProvider))}tasksForFile(r){return[...this.tasks.values()].filter(t=>t.fixupFile===r)}maybeFileForUri(r){return this.files.maybeForUri(r)}scheduleIdle(r){return this.scheduler.scheduleIdle(r)}async promptUserForTask(){return await this.typingUI.show()}createTask(r,t,i,o,s,g){let E=this.files.forUri(r),p=new Dz(E,t,o,i,s,g);return this.tasks.set(p.id,p),this.setTaskState(p,2),p}showThisFixup(r){let t=this.tasks.get(r);if(!t){ni.showInformationMessage("No fixup was found...");return}ni.showTextDocument(t.fixupFile.uri,{selection:t.selectionRange})}async apply(r){Qn("FixupController:apply","applying",{verbose:{id:r}});let t=this.tasks.get(r);if(!t){console.error("cannot find task");return}await this.applyTask(t)}applicableDiffOrRespin(r,t){if(r.state!==3&&r.state!==5){console.warn("no response cached from LLM so no applicable diff");return}let i=t.getText(r.selectionRange),o=r.diff;if(r.replacement!==void 0&&i!==o?.bufferText&&(r.diff=o=REA(r.original,r.replacement,i,r.selectionRange.start),this.didUpdateDiff(r)),!o?.clean){this.scheduleRespin(r);return}return o}scheduleRespin(r){if(r.spinCount>=5)return Fa.log("CodyVSCodeExtension:fixup:respin",{count:r.spinCount}),this.error(r.id,`Cody tried ${r.spinCount} times but failed to edit the file`);ni.showInformationMessage("Cody will rewrite to include your changes"),this.setTaskState(r,2)}async getFixupTaskSmartSelection(r,t){let i=r.fixupFile.uri.fsPath,o=Zn.file(i);if(t&&!t?.start.isEqual(t.end))return t;let s=t.start,g=(await Xm(o,s.line))?.start||t.start,E=t.end,p=(await Xm(o,E.line))?.end||t.end;return new sa(g.line,g.character,p.line,p.character)}async applyTask(r){if(r.state!==3)return;let t,i,o=ni.visibleTextEditors.find(B=>B.document.uri===r.fixupFile.uri);o?(i=o.document,t=o.edit.bind(this)):(i=await ri.openTextDocument(r.fixupFile.uri),t=new Sd),this.updateDiffs();let s=this.applicableDiffOrRespin(r,i);if(!s)return;o?.revealRange(r.selectionRange);let g={undoStopBefore:!0,undoStopAfter:!1};if(!(r.insertMode?await this.insertEdit(t,i,r,g):await this.replaceEdit(t,s,r,g))){Fa.log("CodyVSCodeExtension:fixup:apply:failed",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.fixup.apply","failed"),ni.showWarningMessage("edit did not apply");return}let p=r.replacement;if(p){let B=k5(p.trim()),m=r.source;Fa.log("CodyVSCodeExtension:fixup:applied",{...B,source:m},{hasV2Event:!0}),Zs.recordEvent("cody.fixup.apply","succeeded",{metadata:{lineCount:B.lineCount,charCount:B.charCount},privateMetadata:{source:m}}),r.editedRange=new sa(new Ao(r.selectionRange.start.line,0),new Ao(r.selectionRange.start.line+B.lineCount,r.selectionRange.end.character));let _={undoStopBefore:!1,undoStopAfter:!0};this.setTaskState(r,4),await new Promise((x,O)=>{r.formattingResolver=x,this.formatEdit(o?o.edit.bind(this):new Sd,i,r,_).then(x).catch(O).finally(()=>r.formattingResolver=null)})}if(this.setTaskState(r,5),!o){let B="Show Changes";await ni.showInformationMessage(`Edit applied to ${r.fixupFile.fileName}`,B)===B&&(await ni.showTextDocument(r.fixupFile.uri)).revealRange(r.selectionRange)}}async replaceEdit(r,t,i,o){if(Qn("FixupController:edit","replacing "),r instanceof Sd){for(let s of t.edits)r.replace(i.fixupFile.uri,new sa(new Ao(s.range.start.line,s.range.start.character),new Ao(s.range.end.line,s.range.end.character)),s.text);return ri.applyEdit(r)}return r(s=>{for(let g of t.edits)s.replace(new sa(new Ao(g.range.start.line,g.range.start.character),new Ao(g.range.end.line,g.range.end.character)),g.text)},o)}async insertEdit(r,t,i,o){Qn("FixupController:edit","inserting");let s=i.replacement,g=i.selectionRange;if(!s)return!1;let E=t.lineAt(g.start.line).firstNonWhitespaceCharacterIndex,B=s.split(` -`).map(m=>" ".repeat(E)+m).join(` -`).replace(/[\t ]+$/,"");return r instanceof Sd?(r.insert(t.uri,g.start,B),ri.applyEdit(r)):r(m=>{m.insert(g.start,B)},o)}async formatEdit(r,t,i,o){let s=i.editedRange;if(!s)return!1;let E=(await ti.executeCommand("vscode.executeFormatDocumentProvider",t.uri,{tabSize:Bve(t.uri),insertSpaces:fve(t.uri)})||[]).filter(p=>s.contains(p.range));if(E.length===0)return!1;if(Qn("FixupController:edit","formatting"),r instanceof Sd){for(let p of E)r.replace(i.fixupFile.uri,p.range,p.newText);return ri.applyEdit(r)}return r(p=>{for(let B of E)p.replace(B.range,B.newText)},o)}acceptFixups(r){if(!r){for(let t of this.tasks.values())this.accept(t.id);return}if(r.contextValue==="fsPath"){for(let t of this.tasks.values())t.fixupFile.uri.fsPath.endsWith(r.fsPath)&&this.accept(t.id);return}r.contextValue==="task"&&r.id&&this.accept(r.id),console.error("cannot apply fixups")}cancel(r){let t=this.tasks.get(r);t&&(this.setTaskState(t,t.state===7?7:6),this.discard(t))}accept(r){let t=this.tasks.get(r);!t||t.state!==5||(this.setTaskState(t,6),this.discard(t))}async undo(r){let t=this.tasks.get(r);if(t)return this.undoTask(t)}async undoTask(r){if(r.state!==5)return;let t=ni.visibleTextEditors.find(E=>E.document.uri===r.fixupFile.uri);t||(t=await ni.showTextDocument(r.fixupFile.uri));let i=r.replacement;if(!i)return;let o=r.editedRange||r.selectionRange;if(t.revealRange(o),!await t.edit(E=>{E.replace(o,r.original)})){Fa.log("CodyVSCodeExtension:fixup:revert:failed");return}let g=k5(i);Fa.log("CodyVSCodeExtension:fixup:reverted",g),this.setTaskState(r,6)}error(r,t){let i=this.tasks.get(r);i&&(i.error=t,this.setTaskState(i,7))}showError(r){let t=this.tasks.get(r);t?.error&&ni.showErrorMessage("Error applying edits:",{modal:!0,detail:t.error})}skipFormatting(r){let t=this.tasks.get(r);if(t&&t.formattingResolver)return t.formattingResolver(!1)}discard(r){this.needsDiffUpdate_.delete(r),this.codelenses.didDeleteTask(r),this.contentStore.delete(r.id),this.decorator.didCompleteTask(r),this.tasks.delete(r.id),this.taskViewProvider.removeTreeItemByID(r.id)}getTasks(){return Array.from(this.tasks.values())}async getTaskRecipeData(r){let t=this.tasks.get(r);if(!t)return;if((t.intent==="edit"||t.intent==="fix")&&t.selectionRange){let B=await this.getFixupTaskSmartSelection(t,t.selectionRange);t.selectionRange=B}let o=await ri.openTextDocument(t.fixupFile.uri),s=o.getText(new sa(t.selectionRange.start.translate({lineDelta:-Math.min(t.selectionRange.start.line,50)}),t.selectionRange.start)),g=o.getText(t.selectionRange);if(io(g,1e3)!==g)throw new Error("The amount of text selected exceeds Cody's current capacity.");t.original=g;let E=o.getText(new sa(t.selectionRange.end,t.selectionRange.end.translate({lineDelta:50}))),p=g.trim().length===0?"add":t.intent;return{instruction:t.instruction,intent:p,fileName:t.fixupFile.uri.fsPath,precedingText:s,selectedText:g,followingText:E,selectionRange:t.selectionRange}}async didReceiveFixupText(r,t,i){let o=this.tasks.get(r);if(!o||o.state!==2)return Promise.resolve();switch(i){case"streaming":o.inProgressReplacement=t;break;case"complete":o.inProgressReplacement=void 0,o.replacement=t,this.setTaskState(o,3),Fa.log("CodyVSCodeExtension:fixupResponse:hasCode",{...k5(t),source:o.source});break}return this.textDidChange(o),Promise.resolve()}textDidChange(r){if(r.state===5){this.accept(r.id);return}r.state===6&&this.needsDiffUpdate_.delete(r),this.needsDiffUpdate_.size===0&&this.scheduler.scheduleIdle(()=>this.updateDiffs()),this.needsDiffUpdate_.has(r)||this.needsDiffUpdate_.add(r)}rangeDidChange(r){this.codelenses.didUpdateTask(r)}needsDiffUpdate_=new Set;needsEditor_=new Set;didChangeVisibleTextEditors(r){let t=new Map;for(let i of r){let o=this.files.maybeForUri(i.document.uri);if(o&&(t.has(o)||t.set(o,[]),t.get(o)?.push(i),this.needsEditor_.has(o))){this.needsEditor_.delete(o);for(let s of this.tasksForFile(o))this.needsDiffUpdate_.size===0&&this.scheduler.scheduleIdle(()=>this.updateDiffs()),this.needsDiffUpdate_.add(s)}}for(let[i,o]of t.entries())this.decorator.didChangeVisibleTextEditors(i,o)}updateDiffs(){for(;this.needsDiffUpdate_.size;){let r=this.needsDiffUpdate_.keys().next().value;this.needsDiffUpdate_.delete(r);let t=ni.visibleTextEditors.find(g=>g.document.uri===r.fixupFile.uri);if(!t){this.needsEditor_.add(r.fixupFile);continue}let i=r.inProgressReplacement||r.replacement;if(!i)continue;let o=t.document.getText(r.selectionRange),s=r.insertMode?` -`:"";r.diff=REA(r.original,`${i}${s}`,o,r.selectionRange.start),this.didUpdateDiff(r)}}didUpdateDiff(r){if(!r.diff)throw new Error("unreachable");this.decorator.didUpdateDiff(r),r.diff.clean}async showDiff(r){r?.id&&await this.diff(r.id)}async diff(r){let t=this.tasks.get(r);if(!t||!ni.visibleTextEditors.find(m=>m.document.uri===t.fixupFile.uri))return;let o=t.diff;if(!o)return;let s=`${t.id}-${Date.now()}`;await this.contentStore.set(s,t.fixupFile.uri);let g=Zn.parse(`cody-fixup:${t.fixupFile.uri.fsPath}#${s}`),E=await ri.openTextDocument(g),p=new Sd,B=t.editedRange||t.selectionRange;p.replace(g,B,o.originalText),await ri.applyEdit(p),await E.save(),await ti.executeCommand("vscode.diff",g,t.fixupFile.uri,"Cody Fixup Diff View - "+t.id,{preview:!0,preserveFocus:!1,selection:B,label:"Cody Fixup Diff View",description:"Cody Fixup Diff View: "+t.fixupFile.uri.fsPath})}async retry(r){let t=this.tasks.get(r);if(!t)return;let i=t.selectionRange,o=t.instruction,s=await ri.openTextDocument(t.fixupFile.uri),g=await this.typingUI.getInstructionFromQuickPick({value:o});await this.undoTask(t),ti.executeCommand("cody.command.edit-code",{range:i,instruction:g,document:s,intent:t.intent},"code-lens")}setTaskState(r,t){let i=r.state;if(i!==t){if(r.state=t,i!==2&&r.state===2&&r.spinCount++,r.state===6){this.discard(r);return}this.codelenses.didUpdateTask(r),this.taskViewProvider.setTreeItem(r),r.state===3&&this.apply(r.id),r.state===5&&this.decorator.didCompleteTask(r)}}reset(){this.tasks=new Map,this.taskViewProvider.reset()}dispose(){this.reset(),this.codelenses.dispose(),this.decorator.dispose(),this.taskViewProvider.dispose();for(let r of this._disposables)r.dispose();this._disposables=[]}};var vve=async({message:A,options:r={},actions:t})=>{let i=await ni.showInformationMessage(A,r,...t.map(s=>s.label)),o=t.find(s=>s.label===i);if(o)return o.onClick()};var yve=async A=>{if(!(A.serverEndpoint&&A.accessToken)&&kc.get("notification.setupDismissed")!=="true"){if(kc.get("extension.hasActivatedPreviously")!=="true"){await ti.executeCommand("cody.focus");return}return vve({message:"Continue setting up Cody",actions:[{label:"Setup",onClick:()=>ti.executeCommand("cody.focus")},{label:"Do not show again",onClick:()=>kc.set("notification.setupDismissed","true")}]})}};var Ive=Yn(require("os")),GQ=Yn(require("path"));var y6t=ni.createTextEditorDecorationType({backgroundColor:new Hd("searchEditor.findMatchBackground"),borderColor:new Hd("searchEditor.findMatchBorder")}),NEA=class{tokenSource;cancelExistingAndStartNew(){return this.tokenSource&&(this.tokenSource.cancel(),this.tokenSource.dispose()),this.tokenSource=new DQ,this.tokenSource.token}dispose(){if(this.tokenSource){let r=this.tokenSource;this.tokenSource=void 0,r.cancel(),r.dispose()}}},PEA=class{constructor(r){this.symf=r}currentlyRefreshing=new Set;scopeDirIndexInProgress=new Map;showMessageIfIndexingInProgress=r=>{let t=[];for(let i of r)if(this.scopeDirIndexInProgress.has(i)){let{base:o,dir:s,wsName:g}=GEA(i),E=g?GQ.join(g,s,o):GQ.join(s,o);t.push(E)}t.length!==0&&ni.showWarningMessage(`Still indexing: ${t.join(", ")}`)};showIndexProgress=(r,t)=>{let{base:i,dir:o,wsName:s}=GEA(r),g=s?GQ.join(s,o,i):GQ.join(o,i);if(this.scopeDirIndexInProgress.has(r)){ni.showWarningMessage(`Duplicate index request for ${g}`);return}this.scopeDirIndexInProgress.set(r,t),t.finally(()=>{this.scopeDirIndexInProgress.delete(r)}),ni.withProgress({location:15,title:`Cody: building search index for ${g}`,cancellable:!1},async()=>{await t})};async refreshIndex(r){if(!this.currentlyRefreshing.has(r))try{this.currentlyRefreshing.add(r),await this.symf.deleteIndex(r),await this.symf.ensureIndex(r,this.showIndexProgress,{hard:!0})}catch(t){ni.showErrorMessage(`Error refreshing search index for ${r}: ${t}`)}finally{this.currentlyRefreshing.delete(r)}}},Cz=class{constructor(r,t){this.extensionUri=r;this.symfRunner=t;this.indexManager=new PEA(this.symfRunner),this.disposables.push(this.cancellationManager)}disposables=[];webview;cancellationManager=new NEA;indexManager;dispose(){for(let r of this.disposables)r.dispose();this.disposables=[]}initialize(){this.disposables.push(ti.registerCommand("cody.search.index-update",async()=>{let r=Cve();if(r.length===0){ni.showWarningMessage("Open a workspace folder to index");return}await this.indexManager.refreshIndex(r[0])}),ti.registerCommand("cody.search.index-update-all",async()=>{let r=ri.workspaceFolders;if(!r){ni.showWarningMessage("Open a workspace folder to index");return}for(let t of r)await this.indexManager.refreshIndex(t.uri.fsPath)})),ri.workspaceFolders?.forEach(r=>{this.symfRunner.ensureIndex(r.uri.fsPath,this.indexManager.showIndexProgress,{hard:!1})}),this.disposables.push(ri.onDidChangeWorkspaceFolders(r=>{r.added.forEach(t=>{this.symfRunner.ensureIndex(t.uri.fsPath,this.indexManager.showIndexProgress,{hard:!1})})})),this.disposables.push(this.symfRunner.registerIndexListener(r=>{this.webview?.postMessage({type:"index-updated",scopeDir:r})}))}async resolveWebviewView(r){this.webview=r.webview;let t=Zn.joinPath(this.extensionUri,"dist","webviews");r.webview.options={enableScripts:!0,enableCommandUris:!0,localResourceRoots:[t]};let i=Zn.joinPath(t,"search.html"),o=await ri.fs.readFile(i),s=new TextDecoder("utf-8").decode(o),g=r.webview.asWebviewUri(t);r.webview.html=s.replaceAll("./",`${g.toString()}/`).replaceAll("{cspSource}",r.webview.cspSource),this.disposables.push(r.webview.onDidReceiveMessage(E=>this.onDidReceiveMessage(E)))}async onDidReceiveMessage(r){switch(r.command){case"search":{await this.onDidReceiveQuery(r.query);break}case"show-search-result":{let{range:t,uriJSON:i}=r,o=Zn.from(i),s=new sa(t.start.line,t.start.character,t.end.line,t.end.character),g=await ri.openTextDocument(o),E=await ni.showTextDocument(g,{selection:s,preserveFocus:!0});s.start.line===0&&s.end.line===g.lineCount-1||(E.setDecorations(y6t,[s]),E.revealRange(s,(void 0).InCenterIfOutsideViewport));break}}}async onDidReceiveQuery(r){let t=this.cancellationManager.cancelExistingAndStartNew();if(r.trim().length===0){await this.webview?.postMessage({type:"update-search-results",results:[]});return}let i=this.symfRunner;if(!i)throw new Error("this.symfRunner is undefined");let o=Cve();if(o.length===0){ni.showErrorMessage("Open a workspace folder to determine the search scope");return}t.isCancellationRequested||await ni.withProgress({location:{viewId:"cody.search"}},async()=>{let s=[];this.indexManager.showMessageIfIndexingInProgress(o);let g=await i.getResults(r,o,this.indexManager.showIndexProgress);for(let E of g)try{s.push(...await I6t(await E)),await this.webview?.postMessage({type:"update-search-results",results:s,query:r})}catch(p){ni.showErrorMessage(`Error fetching results for query, "${r}": ${p}`)}})}};function GEA(A){let r=ri.workspaceFolders,t=Ive.homedir(),i=GQ.basename(A),o=GQ.dirname(A);if(r)for(let g of r){let E=GQ.relative(g.uri.fsPath,o);if(!E.startsWith(".."))return{base:i,dir:E,wsName:r.length>1?g.name:void 0}}let s=GQ.relative(t,o);return s.startsWith("..")?{base:i,dir:o}:{base:i,dir:s}}function Cve(){let A=ri.workspaceFolders;if(!A)return[];let r=ku()?.document.uri;if(!r)return A.map(i=>i.uri.fsPath);let t=ri.getWorkspaceFolder(r);return t?[t.uri.fsPath,...A.filter(i=>i.uri.toString()!==t.uri.toString()).map(i=>i.uri.fsPath)]:A.map(i=>i.uri.fsPath)}function C6t(A){let r=[];for(let t of A){let i=r.find(o=>o.file===t.file);i?i.results.push(t):r.push({file:t.file,results:[t]})}return r}async function I6t(A){let r=new TextDecoder("utf-8"),t=C6t(A);return(await Promise.all(t.map(async i=>{let o=Zn.file(i.file);try{let s=await ri.fs.readFile(o),{base:g,dir:E,wsName:p}=GEA(i.file);return{uriJSON:o.toJSON(),uriString:o.toString(),basename:g,dirname:E,wsname:p,snippets:i.results.map(B=>({contents:r.decode(s.subarray(B.range.startByte,B.range.endByte)),range:{start:{line:B.range.startPoint.row,character:B.range.startPoint.col},end:{line:B.range.endPoint.row,character:B.range.endPoint.col}}}))}}catch{return null}}))).filter(i=>i!==null)}var YEA=[{label:"$(feedback) Cody Feedback",async onSelect(){await Ec.openExternal(Zn.parse(O5.href))}},{label:"$(remote-explorer-documentation) Cody Documentation",async onSelect(){await Ec.openExternal(Zn.parse(qG.href))}},{label:"$(organization) Cody Discord Channel",async onSelect(){await Ec.openExternal(Zn.parse(VG.href))}}],b6t={title:"Cody Feedback & Support",placeholder:"Choose an option"},bve=async()=>{await(await ni.showQuickPick(YEA,b6t))?.onSelect()};var Iz=class{constructor(r,t){this.client=r;this.editor=t}async debugEditorSelection(){let r=this.editor.getActiveTextEditorSelection()?.selectedText;if(r===void 0)return;let t=await this.client.searchAttribution(r).then(BlA);await this.editor.showWarningMessage(t)}};var xve=Yn(JB());var O6t=ni.createTextEditorDecorationType({}),bz=class{constructor(r,t,i){this.id=r;this.extPath=t;this.fileUri=i;this.editor=ni.visibleTextEditors.find(o=>o.document.uri.fsPath===i.fsPath),this.iconPath=jk("cody",this.extPath),this.decorationTypeIcon=this.makeDecorationType("icon"),this._disposables.push(this.decorationTypeIcon,this.decorationTypeDiff,this.decorationTypePending,this.decorationTypeError),ni.onDidChangeActiveTextEditor(o=>{o?.document.uri.fsPath===this.fileUri.fsPath&&(this.editor=o,this.decorate())},null,this._disposables)}iconPath;status=1;range=new sa(0,0,0,0);editor;decorations=[];decorationsForIcon=[];decorationTypePending=this.makeDecorationType("pending");decorationTypeDiff=this.makeDecorationType("diff");decorationTypeError=this.makeDecorationType("error");decorationTypeIcon=O6t;_disposables=[];_onDidChange=new nl;onDidChange=this._onDidChange.event;decorate(){let r=this.range,t=this.editor;if(!t)return;this.clear(),this.decorations.push({range:r});let i=H3(r.start.line);if(this.status===7){this.decorationTypePending.dispose(),this.decorationsForIcon.push({range:i}),t.setDecorations(this.decorationTypeError,this.decorations);return}if(this.status===6||this.status===5){this.decorationTypePending.dispose(),this.decorationsForIcon.push({range:i}),t.setDecorations(this.decorationTypeIcon,this.decorationsForIcon),t.setDecorations(this.decorationTypeDiff,this.decorations);return}t.setDecorations(this.decorationTypePending,[{range:r,hoverMessage:"Do not make changes to the highlighted code while Cody is working on it."}])}clear(){this.decorations=[],this.decorationsForIcon=[]}setState(r,t){this.status=r,this.range=new sa(t.start.line,0,Math.max(0,t.end.line),0),this.decorate(),this._onDidChange.fire()}makeDecorationType(r){return r==="icon"?ni.createTextEditorDecorationType({gutterIconPath:this.iconPath,gutterIconSize:"contain"}):r==="error"?M6t:ni.createTextEditorDecorationType({isWholeLine:!0,borderWidth:"1px",borderStyle:"solid",overviewRulerColor:r==="pending"?"rgba(161, 18, 255, 0.33)":"rgb(0, 203, 236, 0.22)",backgroundColor:r==="pending"?"rgb(0, 203, 236, 0.1)":"rgba(161, 18, 255, 0.1)",overviewRulerLane:4,light:{borderColor:"rgba(161, 18, 255, 0.33)"},dark:{borderColor:"rgba(161, 18, 255, 0.33)"}})}dispose(){for(let r of this._disposables)r.dispose();this._disposables=[]}},M6t=ni.createTextEditorDecorationType({isWholeLine:!0,overviewRulerColor:"rgba(255, 38, 86, 0.3)",backgroundColor:"rgba(255, 38, 86, 0.1)"});var Oz=class{constructor(r,t,i){this.id=r;this.extPath=t;this.thread=i;this.provideCodeLenses=this.provideCodeLenses.bind(this),this.decorator=new bz(this.id,this.extPath,this.thread.uri),ri.onDidChangeTextDocument(o=>{if(o.document.uri.fsPath===this.thread?.uri.fsPath){for(let s of o.contentChanges){if(!this.selectionRange||s.range.end.line>this.selectionRange.start.line&&this.isPending())return;if(s.range.start.line===this.selectionRange?.start.line&&!this.isPending()){this.remove();return}this.selectionRange=gz(this.selectionRange,s.range,s.text),this.decorator.setState(this.status,this.selectionRange)}this._onDidChangeCodeLenses.fire()}}),ri.onDidCloseTextDocument(o=>this.removeOnFSPath(o.uri)),ri.onDidSaveTextDocument(o=>this.removeOnFSPath(o.uri)),this.updateState(2,i.range)}selectionRange=null;contextStore=new Map;status=1;decorator;_disposables=[];_onDidChangeCodeLenses=new nl;onDidChangeCodeLenses=this._onDidChangeCodeLenses.event;updateState(r,t){this.status=r,this.decorator.setState(r,t),this.selectionRange=t,this._onDidChangeCodeLenses.fire()}storeContext(r,t,i,o){this.contextStore.set(r,{docUri:t,original:i,replacement:o})}async undo(r){let t=this.contextStore.get(r),i=this.selectionRange;if(!t||!i)return;let o=new od(i.start,new Ao(i.end.line+1,0));await dz(t.docUri,{start:o.start.line,end:o.end.line},t.original+` -`),this.remove()}remove(){this.decorator.dispose(),this.selectionRange=null,this.status=1,this.thread.dispose(),this.dispose(),this._onDidChangeCodeLenses.fire()}provideCodeLenses(r,t){return!r||!t||r.uri.fsPath!==this.thread.uri.fsPath?[]:this.createCodeLenses()}createCodeLenses(){let r=this.selectionRange;if(!r)return[];let t=H3(r.start.line);return this.status===7?H6t(this.id,t):k6t(this.id,t,this.isPending())}removeOnFSPath(r){this.status!==2&&r.fsPath===this.thread.uri.fsPath&&this.remove()}isPending(){return this.status===2}dispose(){for(let r of this._disposables)r.dispose();this._disposables=[]}};function k6t(A,r,t){let i=new ng(r);i.command={title:t?"$(sync~spin) Cody is working...":"\u2728 Edited by Cody",tooltip:"Open Cody chat view",command:"cody.focus"};let o=x6t(A,r),s=S6t(A,r),g=Ove(A,r);return t?[i,g]:[i,s,o]}function x6t(A,r){let t=new ng(r);return t.command={title:"Accept",tooltip:"Accept update and remove decorations",command:"cody.inline.decorations.remove",arguments:[A]},t}function H6t(A,r){let t=new ng(r);t.command={title:"\u26D4\uFE0F Not Edited by Cody",tooltip:"Open Cody chat view",command:"cody.focus"};let i=Ove(A,r);return[t,i]}function Ove(A,r){let t=new ng(r);return t.command={title:"Close",tooltip:"Click to remove decorations",command:"cody.inline.decorations.remove",arguments:[A]},t}function S6t(A,r){let t=new ng(r);return t.command={title:"$(undo) Undo",tooltip:"Undo this change",command:"cody.inline.fix.undo",arguments:[A]},t}var Mve=new Ao(0,0),kve=new sa(Mve,Mve),F6t={loading:"cody-inline-loading",complete:"cody-inline-complete",streaming:"cody-inline-loading",error:"cody-inline-complete"},Mz=class{constructor(r){this.extensionPath=r;this.codyIcon=jk("cody",this.extensionPath),this.userIcon=jk("user",this.extensionPath),ri.getConfiguration("cody").get("inlineChat.enabled")&&(this.commentController=this.init()),ri.onDidChangeConfiguration(o=>{let s=ri.getConfiguration("cody");if(o.affectsConfiguration("cody")){if(s.get("inlineChat.enabled")){this.commentController=this.init();return}this.commentController?.dispose(),this.commentController=null,this.dispose()}}),ni.onDidChangeTextEditorSelection(o=>{if(o.textEditor.document.uri.scheme!=="file"||o.textEditor.document.uri.fsPath!==this.thread?.uri.fsPath)return;let s=o.selections[0];if(s&&!this.isInProgress&&this.selectionRange.end.line-2!==s.start.line){let g=new sa(new Ao(Math.max(0,s.start.line-1),0),new Ao(Math.max(0,s.end.line+2),0));this.selectionRange=g}}),ri.onDidChangeTextDocument(o=>{if(!(!this.commentController||!this.isInProgress||!this.selectionRange||o.document.uri.scheme!=="file"||o.document.uri.fsPath!==this.thread?.uri.fsPath))for(let s of o.contentChanges)this.selectionRange=gz(this.selectionRange,s.range,s.text)}),ri.onDidCloseTextDocument(o=>{if(o.uri.scheme!=="file")return;let s=[...this.threads.values()].filter(g=>g.uri.fsPath===o.uri.fsPath);for(let g of s)this.delete(g)}),ri.onDidChangeTextDocument(async o=>{let s=o.contentChanges[0]?.text;!s||o.document.uri.scheme!=="file"||await h9A(s)}),ni.onDidChangeVisibleTextEditors(async o=>{if(!this.commentController||!o.length||this.isInProgress)return;o.at(-1)?.document?.uri?.scheme==="comment"&&await aY()}),this._disposables.push(ti.registerCommand("cody.inline.decorations.remove",o=>this.removeLens(o)),ti.registerCommand("cody.inline.fix.undo",o=>this.undo(o)))}id="cody-inline-chat";label="Cody: Inline Chat";threadLabel="[SHORTCUTS] New Inline Chat: CMD/CTRL+SHIFT+C | Hide: SHIFT+ESC";options={prompt:"Cody Inline Chat - Ask Cody a question or request inline fix with `/edit` or `/touch`.",placeHolder:'Examples: "How can I improve this?", "/edit convert tabs to spaces", "/touch Create 5 different versions of this function". "/explain"'};codyIcon;userIcon;_disposables=[];commentController=null;thread=null;threads=new Map;responsePendingInterval=null;currentTaskId="";workspacePath=ri.workspaceFolders?.[0]?.uri;selection=null;selectionRange=kve;isInProgress=!1;codeLenses=new Map;init(){this.commentController?.dispose();let r=h_A.createCommentController(this.id,this.label);return r.options=this.options,r.commentingRangeProvider={provideCommentingRanges:t=>{let i=t.lineCount;return[new sa(0,0,i-1,0)]}},this._disposables.push(r),r}get(){return this.commentController}create(r,t){if(!this.commentController)return null;let i=ku();return!i||!r||i.document.uri.scheme!=="file"?null:(this.thread=this.commentController.createCommentThread(i?.document.uri,t,[]),this.thread.collapsibleState=0,{text:r,thread:this.thread})}async chat(r,t,i=!1){this.isInProgress=!0,t.canReply=!1,t.label=this.threadLabel,t.collapsibleState=1;let o=new Ww(r,"Me",this.userIcon,t);t.comments=[...t.comments,o],i&&await this.runEditMode(o,t),this.thread=t,this.selection=await this.makeSelection(i);let s=t.comments[0];s&&s instanceof Ww&&this.threads.set(s.id,t),ti.executeCommand("setContext","cody.replied",!1)}getLatestReply(){if(!(!this.thread||this.thread.comments.length===0))return this.thread.comments.at(-1)}reply(r,t){if(!this.thread||this.thread.state)return;let i=F6t[t],o=this.getLatestReply(),s=new Ww(r,"Cody",this.codyIcon,this.thread,i);o instanceof Ww&&o.author.name==="Cody"?o.update(r,i):this.thread.comments=[...this.thread.comments,s];let g=this.thread.comments[0];g&&g instanceof Ww&&this.threads.set(g.id,this.thread),(t==="complete"||t==="error")&&(this.thread.state=t==="error"?1:0,this.thread.canReply=t!=="error",ti.executeCommand("setContext","cody.replied",!0),this.isInProgress=!1),t==="complete"&&this.createCopyEventListener(r,s.id)}createCopyEventListener(r,t){let i="",o=/```.*\n[\S\s]*?\n```/g;r.match(o)?.map(s=>{i+=s.replace(/```.*\n/i,"").replace("```","")}),i&&ni.onDidChangeTextEditorSelection(async s=>{let g=s.textEditor.document.uri;if(s&&g?.fsPath===this.thread?.uri.fsPath){let E=await Ec.clipboard.readText();if(B9A(E))return;i.includes(E)&&(await aY(E),wM(E,"inlineChat:Copy","inline-chat",t))}})}abort(){this.setResponsePending(!1);let r=this.getLatestReply();r instanceof Ww&&(r.abort(),this.isInProgress=!1)}setResponsePending(r){let t=0;if(!r){this.responsePendingInterval&&(clearInterval(this.responsePendingInterval),this.responsePendingInterval=null,t=0);return}let i=".";this.reply(i,"loading"),this.responsePendingInterval=setInterval(()=>{t++;let o=i.repeat(t%3+1);this.reply(o,"loading")},500)}undo(r){this.codeLenses.get(r)?.undo(r),this.codeLenses.delete(r)}delete(r){if(!r)return;(r?.comments).map(i=>{this.codeLenses.get(i.id)?.remove()}),r.dispose(),this.reset()}reset(){this.selectionRange=kve,this.thread=null}async error(r="Please provide Cody with more details and try again."){let t=this.currentTaskId.length>0,i=t?"edit/touch request":"request";this.reply(`Cody was unable to complete your ${i}. ${r}`,"error"),t&&(await this.stopEditMode(!0),this.isInProgress=!1)}async runEditMode(r,t){let i=await this.makeCodeLenses(r.id,this.extensionPath,t);i.updateState(2,t.range),this.codeLenses.set(r.id,i),this.currentTaskId=r.id,ti.executeCommand("workbench.action.collapseAllComments")}async stopEditMode(r=!1,t){if(!this.currentTaskId)return;let i=t||this.selectionRange,o=r?7:6;this.codeLenses.get(this.currentTaskId)?.updateState(o,i),this.thread&&(this.thread.range=i,this.thread.state=r?1:0),this.currentTaskId="",Fa.log("CodyVSCodeExtension:inline-assist:stopFixup"),r||await ti.executeCommand("workbench.action.collapseAllComments"),this.isInProgress=!1}async makeSelection(r){if(!this.thread)return null;let t=await ri.openTextDocument(this.thread.uri),i=t.lineAt(this.thread.range.end.line).text.length,o=new Ao(this.thread.range.start.line,0),s=new Ao(this.thread.range.end.line,i),g=new Ao(this.thread.range.end.line+1,0),E=new sa(o,r?s:g),p=t.getText(new sa(new Ao(Math.max(0,this.thread.range.start.line-50),0),this.thread.range.start)),B=t.getText(new sa(this.thread.range.end,new Ao(this.thread.range.end.line+1+50,0))),m={fileName:ri.asRelativePath(this.thread.uri.fsPath),selectedText:t.getText(E)||" ",precedingText:p,followingText:B,selectionRange:E};return this.selectionRange=E,this.selection=m,m}async makeCodeLenses(r,t,i){let o=new Oz(r,t,i),s=await ri.openTextDocument(i.uri);return await o.provideCodeLenses(s,new DQ().token),yf.registerCodeLensProvider("*",o),o}removeLens(r){this.codeLenses.get(r)?.remove(),this.codeLenses.delete(r)}async replace(r,t,i){let o=i.trim()!==t.trim();if(!this.workspacePath||!t.trim()||!o){await this.stopEditMode(!0);return}this.isInProgress=!1;try{let s=this.getSelectionRange(),g=Zn.joinPath(this.workspacePath,r),E=new od(s.start,new Ao(s.end.line+1,0)),p=await dz(g,{start:E.start.line,end:E.end.line},t);this.codeLenses.get(this.currentTaskId)?.storeContext(this.currentTaskId,g,i,t),await this.stopEditMode(!1,p),Fa.log("CodyVSCodeExtension:inline-assist:replaced")}catch(s){await this.stopEditMode(!0),console.error(s),await ni.showErrorMessage("Edit failed. Please make sure you are in a single repository workspace and try again.")}}getSelection(){return this.selection}getSelectionRange(){return this.selectionRange}dispose(){for(let r of this._disposables)r.dispose();this._disposables=[]}},Ww=class{constructor(r,t,i,o,s){this.input=r;this.name=t;this.iconPath=i;this.parent=o;this.contextValue=s;let g=new Date(Date.now());this.id=g.getTime().toString(),this.body=this.markdown(r),this.author={name:t,iconPath:i},this.update=(0,xve.throttle)(this.unthrottledUpdate.bind(this),500)}id;body;mode=1;author;update;unthrottledUpdate(r,t){this.body=this.markdown(r),this.contextValue=t,this.refresh()}abort(){this.contextValue==="cody-inline-loading"&&(this.parent.comments=this.parent.comments.slice(0,-1),this.parent.canReply=!0),this.contextValue=void 0,this.update.cancel()}refresh(){this.parent.comments=this.parent.comments}markdown(r){let t=new Xv(r);return t.isTrusted=!0,t.supportHtml=!0,t}};var kz=class{constructor(r){this.configProvider=r;this.disposables.push(r.configurationChangeEvent.event(()=>{this.onConfigurationChanged()}))}disposables=[];dispose(){for(let r of this.disposables)r.dispose()}async onConfigurationChanged(){let{accessToken:r,serverEndpoint:t}=this.configProvider.config;if(!(r&&Gm(t)&&ww(process.platform,process.arch)))return;let i;try{i=await this.ensureAppConfigDir()}catch{return}let o=ri.workspaceFolders?.[0]?.uri?.fsPath,s={dotcomAccessToken:r,repoPaths:o?[o]:[],redirect:Ec.uriScheme+"://sourcegraph.cody-ai/app-done"};ri.fs.writeFile(i.with({path:`${i.path}/vscode.json`}),Buffer.from(JSON.stringify(s),"utf-8"))}async ensureAppConfigDir(){let r=p9A.get(process.platform);if(!r)throw new Error("no app for this platform");let t=process.env.HOME;if(!t)throw new Error("no home directory");let i=r.replace(/^~/,t),o=Zn.file(i),s;try{s=await ri.fs.stat(o)}catch{}return s&&s.type===2&&s.permissions!==void 0&&s.permissions^(void 0).Readonly||await ri.fs.createDirectory(o),o}};var R6t="experiment.onboarding";function Hve(){return kc.delete(R6t)}var Sve="$(cody-logo-heavy)",Fve="Cody Settings",N6t="$(check) ",UEA="\xA0\xA0\xA0\xA0\xA0 ",Rve=60*60*1e3;function Tve(){let A=ni.createStatusBarItem(2);A.text=Sve,A.tooltip=Fve,A.command="cody.status-bar.interacted",A.show();let r=ti.registerCommand(A.command,async()=>{let g=ri.getConfiguration(),E=sB(g);function p(m,_,x,O,k,P=!1){let H=k(E);return{label:(H?N6t:UEA)+m,description:_,detail:UEA+x,onSelect:async()=>{await g.update(O,!H,1);let T=m+" "+(H?"disabled":"enabled")+".";await(P?ni.showInformationMessage(T,"Reload Window"):ni.showInformationMessage(T))==="Reload Window"&&await ti.executeCommand("workbench.action.reloadWindow")}}}let B=await ni.showQuickPick([...i.length>0?[{label:"notice",kind:-1},...i.map(m=>({label:`$(alert) ${m.error.title}`,description:"",detail:UEA+m.error.description,onSelect(){m.error.onSelect?.();let _=i.indexOf(m);return i.splice(_),o(),Promise.resolve()}}))]:[],{label:"enable/disable features",kind:-1},p("Code Autocomplete",void 0,"Enable Cody-powered code autocompletions","cody.autocomplete.enabled",m=>m.autocomplete),p("Editor Title Icon",void 0,"Enable Cody to appear in editor title menu for quick access to Cody commands","cody.editorTitleCommandIcon",m=>m.editorTitleCommandIcon),p("Inline Chat",void 0,"Enable chatting and editing with Cody, directly in your code","cody.inlineChat.enabled",m=>m.inlineChat),p("Code Actions",void 0,"Enable Cody fix and explain options in the Quick Fix menu","cody.codeActions.enabled",m=>m.codeActions),p("Chat Suggestions","Experimental","Enable automatically suggested chat questions","cody.experimental.chatPredictions",m=>m.experimentalChatPredictions,!0),p("New Chat UI","Experimental","Enable new chat panel UI","cody.experimental.chatPanel",m=>m.experimentalChatPanel),p("New Search UI","Experimental","Enable new search panel","cody.experimental.newSearch",m=>m.experimentalSearchPanel),p("Code Lenses","Experimental","Enable Code Lenses in documents for quick access to Cody commands","cody.experimental.commandLenses",m=>m.experimentalCommandLenses),{label:"settings",kind:-1},{label:"$(gear) Cody Extension Settings",async onSelect(){await ti.executeCommand("cody.settings.extension")}},{label:"$(symbol-namespace) Custom Commands Settings",async onSelect(){await ti.executeCommand("cody.settings.commands")}},{label:"feedback & support",kind:-1},...YEA],{title:"Cody Settings",placeHolder:"Choose an option",matchOnDescription:!0});B&&"onSelect"in B&&B.onSelect().catch(console.error)}),t=0,i=[];function o(){t>0?A.text="$(loading~spin)":(A.text=Sve,A.tooltip=Fve),i.length>0?(A.backgroundColor=new Hd("statusBarItem.warningBackground"),A.tooltip=i[0].error.title):A.backgroundColor=new Hd("statusBarItem.activeBackground")}function s(){let g=Date.now();for(let E=i.length-1;E>=0;E--){let p=i[E];g-p.createdAt>=Rve&&i.splice(E,1)}o()}return{startLoading(g){t++,A.tooltip=g,o();let E=!1;return()=>{E||(E=!0,t--,o())}},addError(g){let E={error:g,createdAt:Date.now()};return i.push(E),setTimeout(s,Rve),o(),()=>{let p=i.indexOf(E);p!==-1&&(i.splice(p,1),o())}},dispose(){A.dispose(),r.dispose()}}}async function Nve(A,r){kc.setStorage(A.globalState),oB instanceof T6&&oB.setStorage(A.secrets);let t=r.getRgPath?await r.getRgPath():null,i=[],{disposable:o,onConfigurationChange:s}=await P6t(A,await k4(),t,r);return i.push(o),i.push(ri.onDidChangeConfiguration(async g=>{if(g.affectsConfiguration("cody")){let E=await k4();s(E),r.onConfigurationChange?.(E)}})),vf.from(...i)}var P6t=async(A,r,t,i)=>{let o=[],s=A.extensionMode===2||A.extensionMode===3;await LEA(r,s);let g=new Mz(A.extensionPath),E=new yz;o.push(E),W0.instance&&W0.instance.fixupController.set(E);let p=new cz({inline:g,fixups:E,command:i.createCommandsController?.(A)}),B=ri.getConfiguration(),m=sB(B);m.chatPreInstruction&&oy.addCustom(mvA(m.chatPreInstruction)),m.autocompleteExperimentalSyntacticPostProcessing&&(_eA(),o.push(ni.onDidChangeVisibleTextEditors(_eA)),o.push(ri.onDidChangeTextDocument(w_A)));let _=new CY(r);await _.init();let x=i.createSymfRunner?.(A,r.serverEndpoint,r.accessToken);O0.onConfigurationChange(r),cg.syncAuthStatus();let{intentDetector:O,codebaseContext:k,chatClient:P,codeCompletionsClient:H,guardrails:T,onConfigurationChange:v}=await dve(r,t,x,p,i),F=new NY(r,P,k,p,t,x,_,i);o.push(F),o.push(new kz(F)),await F.init();let y={chat:P,intentDetector:O,guardrails:T,editor:p,authProvider:_,contextProvider:F,platform:i},S=new GY(y),U=new PY(y),V=new SY({...y,extensionUri:A.extensionUri});if(o.push(V,ni.registerWebviewViewProvider("cody.chat",V.sidebarChat,{webviewOptions:{retainContextWhenHidden:!0}}),F.configurationChangeEvent.event(async()=>{let X=await k4();v(X),await LEA(X,s)})),x){let X=new Cz(A.extensionUri,x);X.initialize(),o.push(X),o.push(ni.registerWebviewViewProvider("cody.search",X,{webviewOptions:{retainContextWhenHidden:!0}}))}_.addChangeListener(X=>{V.syncAuthStatus(X),x&&X.isLoggedIn?(dN().then(Z=>{x.setSourcegraphAuth(X.endpoint,Z)}).catch(()=>{}),m9A(p.getWorkspaceRootUri(),X.endpoint)):x?.setSourcegraphAuth(null,null)});let wA=async(X,Z=!0,K="",J="editor")=>{await V.executeRecipe(X,K,Z,J)},IA=async(X={},Z="editor")=>{Fa.log("CodyVSCodeExtension:command:edit:executed",{source:Z},{hasV2Event:!0}),Zs.recordEvent("cody.command.edit","executed",{privateMetadata:{source:Z}});let K=X.document||ku()?.document;if(!K)return;let J=X.range||ku()?.selection;if(!J)return;let sA=X.instruction?.trim()?E.createTask(K.uri,X.instruction,J,X.intent,X.insertMode,Z):await E.promptUserForTask();return sA?U.getProviderForTask(sA).startFix():void 0},pA=Tve();o.push(ti.registerCommand("cody.comment.add",async X=>{if(Fm.edit.test(X.text.trimStart())){let J="inline-chat";ti.executeCommand("workbench.action.collapseAllComments");let sA=await ri.openTextDocument(X.thread.uri);return IA({document:sA,instruction:X.text.replace(Fm.edit,""),range:X.thread.range},J)}await S.getProviderForThread(X.thread).addChat(X.text,!1)}),ti.registerCommand("cody.comment.delete",X=>{S.removeProviderForThread(X),Fa.log("CodyVSCodeExtension:inline-assist:deleteButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.comment.delete","clicked")}),ti.registerCommand("cody.comment.stop",async X=>{await S.getProviderForThread(X.parent).abortChat(),Fa.log("CodyVSCodeExtension:abortButton:clicked",{source:"inline-chat"},{hasV2Event:!0}),Zs.recordEvent("cody.comment.stop","clicked",{privateMetadata:{source:"inline-chat"}})}),ti.registerCommand("cody.comment.collapse-all",()=>{ti.executeCommand("workbench.action.collapseAllComments"),Fa.log("CodyVSCodeExtension:inline-assist:collapseButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.comment.collapse-all","clicked")}),ti.registerCommand("cody.comment.open-in-sidebar",async X=>{let Z=S.getProviderForThread(X);await V.setWebviewView("chat"),await V.restoreSession(Z.sessionID),S.removeProviderForThread(X),Fa.log("CodyVSCodeExtension:inline-assist:openInSidebarButton:clicked",void 0,{hasV2Event:!0}),Zs.recordEvent("cody.comment.open-in-sidebar","clicked")}),ti.registerCommand("cody.command.edit-code",(X,Z)=>IA(X,Z)),ti.registerCommand("cody.inline.new",async()=>{await ti.executeCommand("cursorLineEndSelect"),await ti.executeCommand("workbench.action.addComment")}),ti.registerCommand("cody.inline.add",async(X,Z)=>{let K=g.create(X,Z);if(!K)return Promise.resolve();S.getProviderForThread(K.thread).addChat(K.text,!1)}),ti.registerCommand("cody.test.token",async(X,Z)=>_.auth(X,Z)),ti.registerCommand("cody.auth.signin",()=>_.signinMenu()),ti.registerCommand("cody.auth.signout",()=>_.signoutMenu()),ti.registerCommand("cody.auth.support",()=>bve()),ti.registerCommand("cody.auth.sync",()=>{let X=F.syncAuthStatus();return cg.syncAuthStatus(),X}),ti.registerCommand("cody.chat.restart",async()=>{await V.clearAndRestartSession(),Fa.log("CodyVSCodeExtension:chatTitleButton:clicked",{name:"clear"},{hasV2Event:!0}),Zs.recordEvent("cody.interactive.clear","clicked",{privateMetadata:{name:"clear"}})}),ti.registerCommand("cody.interactive.clear",async()=>{await V.clearAndRestartSession(),await V.setWebviewView("chat"),Fa.log("CodyVSCodeExtension:chatTitleButton:clicked",{name:"reset"},{hasV2Event:!0}),Zs.recordEvent("cody.interactive.clear","clicked",{privateMetadata:{name:"reset"}})}),ti.registerCommand("cody.focus",()=>ti.executeCommand("cody.chat.focus")),ti.registerCommand("cody.settings.extension",()=>ti.executeCommand("workbench.action.openSettings",{query:"@ext:sourcegraph.cody-ai"})),ti.registerCommand("cody.history",async()=>{await V.setWebviewView("history"),Fa.log("CodyVSCodeExtension:chatTitleButton:clicked",{name:"history"},{hasV2Event:!0}),Zs.recordEvent("cody.history","clicked",{privateMetadata:{name:"history"}})}),ti.registerCommand("cody.history.clear",async()=>{await V.clearHistory()}),ti.registerCommand("cody.action.chat",async(X,Z)=>{await wA("chat-question",!0,X,Z)}),ti.registerCommand("cody.action.commands.menu",async()=>{await p.controllers.command?.menu("default")}),ti.registerCommand("cody.action.commands.custom.menu",()=>p.controllers.command?.menu("custom")),ti.registerCommand("cody.settings.commands",()=>p.controllers.command?.menu("config")),ti.registerCommand("cody.action.commands.exec",async X=>{await V.executeCustomCommand(X)}),ti.registerCommand("cody.command.explain-code",async()=>{await wA("custom-prompt",!0,"/explain")}),ti.registerCommand("cody.command.generate-tests",async()=>{await wA("custom-prompt",!0,"/test")}),ti.registerCommand("cody.command.document-code",async()=>{await wA("custom-prompt",!1,"/doc")}),ti.registerCommand("cody.command.smell-code",async()=>{await wA("custom-prompt",!0,"/smell")}),ti.registerCommand("cody.command.inline-touch",()=>wA("inline-touch",!1)),ti.registerCommand("cody.command.context-search",()=>wA("context-search",!0)),ni.registerUriHandler({handleUri:async X=>{X.path==="/app-done"?await V.simplifiedOnboardingReloadEmbeddingsState():await _.tokenCallbackHandler(X,m.customHeaders)}}),pA,ti.registerCommand("cody.feedback",()=>Ec.openExternal(Zn.parse(O5.href))),ti.registerCommand("cody.welcome",async()=>(Fa.log("CodyVSCodeExtension:walkthrough:clicked",{page:"welcome"},{hasV2Event:!0}),Zs.recordEvent("cody.walkthrough","clicked"),await ti.executeCommand("workbench.action.openWalkthrough"),ti.executeCommand("workbench.action.openWalkthrough","sourcegraph.cody-ai#welcome",!1))),ti.registerCommand("cody.welcome-mock",()=>ti.executeCommand("workbench.action.openWalkthrough","sourcegraph.cody-ai#welcome",!1)),ti.registerCommand("cody.walkthrough.showLogin",()=>ti.executeCommand("workbench.view.extension.cody")),ti.registerCommand("cody.walkthrough.showChat",()=>V.setWebviewView("chat")),ti.registerCommand("cody.walkthrough.showFixup",()=>V.setWebviewView("chat")),ti.registerCommand("cody.walkthrough.showExplain",async()=>{Fa.log("CodyVSCodeExtension:walkthrough:clicked",{page:"showExplain"},{hasV2Event:!0}),Zs.recordEvent("cody.walkthrough.showExplain","clicked"),await V.setWebviewView("chat")}),ti.registerCommand("cody.walkthrough.enableInlineChat",async()=>(Fa.log("CodyVSCodeExtension:walkthrough:clicked",{page:"enableInlineChat"},{hasV2Event:!0}),Zs.recordEvent("cody.walkthrough.enableInlineChat","clicked"),await B.update("cody.inlineChat",!0,1),ti.executeCommand("workbench.action.openSettings",{query:"cody.inlineChat.enabled",openToSide:!0}))),ti.registerCommand("agent.auth.reload",async()=>{await _.reloadAuthStatus()}));let oA;function cA(){oA&&(oA(),oA=void 0),_.getAuthStatus().isLoggedIn||(oA=pA.addError({title:"Sign In To Use Cody",description:"You need to sign in to use Cody.",onSelect:()=>{V.setWebviewView("chat")}}))}_.addChangeListener(()=>cA()),cA();let eA=null,Y=Promise.resolve();o.push({dispose:()=>eA?.dispose()});let q=()=>{Y=Y.then(async()=>{let X=sB(ri.getConfiguration());if(!X.autocomplete){if(eA?.dispose(),eA=null,X.isRunningInsideAgent)throw new Error("The setting `config.autocomplete` evaluated to `false`. It must be true when running inside the agent. To fix this problem, make sure that the setting cody.autocomplete.enabled has the value true.");return}eA!==null&&eA.dispose(),eA=await cve({config:X,client:H,statusBar:pA,authProvider:_,triggerNotice:Z=>V.triggerNotice(Z),createBfgRetriever:i.createBfgRetriever})}).catch(X=>{console.error("Error creating inline completion item provider:",X)})};if(ri.onDidChangeConfiguration(X=>{X.affectsConfiguration("cody.autocomplete")&&q()}),_.addChangeListener(()=>{q()}),q(),r.inlineChat||g.dispose(),r.experimentalGuardrails){let X=new Iz(T,p);o.push(ti.registerCommand("cody.guardrails.debug",async()=>{await X.debugEditorSelection()}))}return(r.experimentalNonStop||process.env.CODY_TESTING==="true")&&(E.registerTreeView(),await ti.executeCommand("setContext","cody.nonstop.fixups.enabled",!0)),await yve(r),Hve(),{disposable:vf.from(...o),onConfigurationChange:X=>{O0.onConfigurationChange(X),F.onConfigurationChange(X),v(X),LEA(X,s),i.onConfigurationChange?.(X),x?.setSourcegraphAuth(X.serverEndpoint,X.accessToken)}}};async function LEA(A,r){await gIA(A,r),await f9A(A,r)}function jEA(A,r){let t=new JG;return Nve(A,r).then(i=>{A.globalState.get("extension.hasActivatedPreviously")||A.globalState.update("extension.hasActivatedPreviously","true"),A.subscriptions.push(i),A.extensionMode===2&&uxA()}).catch(i=>{(0,mu.captureException)(i),console.error(i)}),t}var Pve=require("path"),Gve=Yn(JB());function G6t(){let A=ni.visibleTextEditors;if(A.length!==0)return A.find(r=>!r.selection.isEmpty)}function WEA(){return G6t()?.document}async function Wk(A){let r=Zn.file(A),t=S3(A);try{let i=await Hz(r),o=io(i,1e3);return cu(iB(o,t),{fileName:t})}catch(i){return console.error(i),[]}}function Yve(A){let r=io(A,1e3);return[{speaker:"human",text:L_A(r)},{speaker:"assistant",text:_6.terminal}]}async function Uve(A){let r=WEA()?.fileName;if(!r)return[];let t=(0,Pve.dirname)(r);return Jk(t,r,A)}async function Jk(A,r,t=!1){let i=Zn.file(A),o=await Jve(i,t);if(t&&r){let g=await W6t(i,o,r);if(g.length>0)return g;let E=await Y6t(r,t);if(E.length>0)return E}let s=o.slice(0,10);return j6t(i,s)}async function Y6t(A,r=!1){try{let t=await U6t(A,r);return t.length?t:[...await L6t(A,r),...t]}catch{return[]}}async function U6t(A,r){let t=r?"**/*{e2e,integration,node_modules}*/**":void 0,i=erA(A),s=(await qEA(i,t,5)).find(g=>_S(g.fsPath));return s?await Wk(s.fsPath):[]}async function L6t(A,r){let t=r?"**/*{e2e,integration,node_modules}*/**":void 0,i=erA(A,!0),s=(await qEA(i,t,5)).filter(g=>_S(g.fsPath));return J6t(s)}async function j6t(A,r){let t=[];for(let i of r){let o=Zn.joinPath(A,i[0]),s=S3(o.fsPath),g=await ri.fs.stat(o);if(!(g.size>1e6||!g.size))try{let E=await Hz(o),p=io(E,1e3),m=cu(lS("Codebase context from file path {fileName}: ",p,s),{fileName:s});t.push(...m)}catch(E){console.error(E)}}return t}async function Lve(A){if(!(A||WEA()?.uri.fsPath))return[];let t=await qEA("**/package.json",void 0,1);if(!t.length)return[];try{let i=t[0],o=await Hz(i),s=JSON.parse(o),g=s.scripts,E=s.devDependencies,p=JSON.stringify({scripts:g,devDependencies:E}),B=io(p.toString()||o.toString(),1e3),m=S3(i.fsPath);return cu(lS("Here are the scripts and devDependencies from the package.json file for the codebase: ",B,m),{fileName:m},_6.packageJson)}catch{return[]}}async function W6t(A,r,t,i=5){let o=[],g=t.split("/").pop()?.split(".").shift()||"";for(let E of r){let p=Zn.joinPath(A,E[0]),B=S3(p.fsPath),m=await ri.fs.stat(p);if(!(m.size>1e6||!m.size)&&E[0]!==t){try{let _=await Hz(p),x=io(_,1e3),k=cu(lS("Codebase context from file path {fileName}: ",x,B),{fileName:B});o.push(...k)}catch(_){console.error(_)}if(E[0].startsWith(g)||E[0].endsWith(g)||o.length>=i*2)return o}}return o}async function J6t(A){let r=[];for(let t of A){let i=await Wk(t.fsPath);r.push(...i)}return r}async function xz(A){let r=[],i=ni.tabGroups.all.flatMap(o=>o.tabs.map(s=>s.input));for(let o of i){if(o.uri.scheme!=="file"||A&&o.uri.fsPath.includes(A))continue;if(!q6t(o.uri)){let m=await Wk(o.uri.fsPath);r.push(...m);continue}let s=o.uri,g=S3(s.fsPath),E=await V6t(s),p=io(E,1e3),B=cu(s_(p,g),{fileName:g});r.push(...B)}return r}function JEA(A){return A.selectedText?cu(j_A(A,A.fileName),A,_6.file):[]}async function jve(A,r,t){try{if(!A)throw new Error("No workspace root found");let i=t?Zn.joinPath(A,t):A,o=t?Zn.joinPath(i,".."):A,g=(await Jve(o,r)).map(B=>B[0]),E=io(g.join(", "),1e3),p=t||"root";return[{speaker:"human",text:W_A(E,p)},{speaker:"assistant",text:_6.fileList.replace("{fileName}",p)}]}catch(i){return console.error(i),[]}}async function Wve(){let A=WEA();if(!A?.uri||!A.languageId)return[];try{let t=(await z6t(A.uri,"imports",!0))?.[0];if(!t)return[];let i=t.end,o=new sa(0,0,i,0),s=A.getText(o);if(!s)return[];let g=io(s,1e3/2),E=S3(A?.fileName);return cu(J_A(g,E),{fileName:E})}catch{return[]}}function q6t(A){return ri.getWorkspaceFolder(A)!==void 0}var Jve=async(A,r)=>{try{return(await ri.fs.readDirectory(A)).filter(i=>{let o=i[0],g=i[1]===2,E=o.startsWith(".");if(!r)return!g&&!E;let p=_S(o);return!g&&!E&&p})}catch(t){return console.error(t),[]}};async function qEA(A,r,t=3){try{let i=r||"**/{.*,node_modules,snap*}/**",o=new DQ;return setTimeout(()=>{o.cancel()},2e4),await ri.findFiles(A,i,t,o.token)||[]}catch{return[]}}async function Hz(A){try{let r=await ri.fs.readFile(A);return new TextDecoder("utf-8").decode(r)}catch{return""}}function S3(A){return ri.asRelativePath(A)}async function V6t(A,r){try{let t=await ri.openTextDocument(A);return t&&t?.getText(r)||""}catch{return""}}async function z6t(A,r,t){let i=await ti.executeCommand("vscode.executeFoldingRangeProvider",A);if(r==="all")return i;let o=r==="imports"?(void 0).Imports:(void 0).Comment;if(!t)return i?.filter(E=>E.kind===o);let s=i?(0,Gve.findLast)(i,g=>g.kind===o):void 0;return s?[s]:[]}var Sz=class{id="custom-prompt";title="Custom Prompt";async getInteraction(r,t){let i=t.editor.controllers?.command?.getCommand(r);if(!i)return DS("Invalid command -- command not found.");let o=i?.slashCommand==="/ask",s=i?.context||fN,g=s?.selection?await t.editor.getActiveTextEditorSmartSelection():t.editor.getActiveTextEditorSelectionOrVisibleContent(),E=i.additionalInput,p=E?`${i.prompt} -${E}`:i.prompt,B=o?p:i.slashCommand||p,m=EIA(i);if(!p)return DS("Please enter a valid prompt for the custom command.",p||"");if(s?.selection&&!g?.selectedText){let T=`__${B}__ requires highlighted code. Please select some code in your editor and try again.`;return DS(T,B)}let _=fvA(p,g?.fileName),x=i.context?.output,O=i.contextFiles,k=O?.length?mS(O,p):uvA(E?`${B} ${E}`:B,g),P=io(_,1e3);if(g&&pvA(s)){let T=Promise.resolve(JEA(g));return Yc({text:_,displayText:k,contextMessages:T,source:m})}let H=this.getContextMessages(p,t.editor,t.codebaseContext,s,g,t.userInputContextFiles,x);return Yc({text:P,displayText:k,contextMessages:H,source:m})}async getContextMessages(r,t,i,o,s,g,E){let p=[],B=t.getWorkspaceRootUri(),m=EvA(r)==="unit";if(o.none)return[];if(o.codebase){let x=await i.getContextMessages(r,Rm);p.push(...x)}if(o.openTabs){let x=await xz();p.push(...x)}if(o.currentDir){let x=await Uve(m);p.push(...x)}if(o.directoryPath){let x=await Jk(o.directoryPath,s?.fileName);p.push(...x)}if(o.filePath){let x=await Wk(o.filePath);p.push(...x)}if(m&&p.length===0&&s?.fileName){let x=await this.getUnitTestContextMessages(s,B);p.push(...x)}if((o.currentFile||o.selection!==!1)&&s){let x=JEA(s);p.push(...x)}if(o.command&&E){let x=Yve(E);p.push(...x)}if(g?.length){let x=await aB.getContextFilesContext(t,g);p.push(...x)}let _=Math.floor((12+3)/2)*2;return p.slice(-_*2)}async getUnitTestContextMessages(r,t){let i=[];if(t){let o=await jve(t,!0);i.push(...o)}if(r?.fileName&&cp(r?.fileName).match(/ts|js/)){let o=await Lve(r?.fileName);i.push(...o)}if(r?.fileName){let o=await Wve();i.push(...o)}return i}};var F3=class A{id="fixup";title="Fixup";multiplexerTopic="fixup";async getInteraction(r,t){let i=t.editor.controllers?.fixups;if(!i)return null;let o=await i.getTaskRecipeData(r);if(!o)return null;let s=this.getPrompt(o),g=Math.floor(1e3/4);return Yc({text:s,source:this.id,contextMessages:this.getContextFromIntent(o.intent,o,g,t)})}getPrompt(r){let t=io(r.instruction,1e3);switch(r.intent){case"add":return A.addPrompt.replace("{precedingText}",r.precedingText).replace("{instruction}",r.instruction).replace("{fileName}",r.fileName);case"edit":return A.editPrompt.replace("{instruction}",t).replace("{selectedText}",r.selectedText).replace("{fileName}",r.fileName);case"fix":return A.fixPrompt.replace("{instruction}",t).replace("{selectedText}",r.selectedText).replace("{fileName}",r.fileName)}}async getContextFromIntent(r,t,i,o){let s=qB(t.precedingText,i),g=io(t.followingText,i);switch(r){case"add":return[...await o.codebaseContext.getContextMessages(t.instruction,{numCodeResults:4,numTextResults:0}),...cu(iB(s,t.fileName),t),...cu(iB(g,t.fileName),t)];case"edit":let p=t.selectionRange,m=(p?o.editor.getActiveTextEditorDiagnosticsForRange(p)||[]:[]).filter(({type:x})=>x==="error"||x==="warning");return[...await _Q(t.selectedText,s,g,t,o.codebaseContext),...m.flatMap(x=>cu(U_A(x,t.fileName),t))];case"fix":return[...cu(iB(s,t.fileName),t),...cu(iB(g,t.fileName),t)]}}static editPrompt=` -- You are an AI programming assistant who is an expert in updating code to meet given instructions. -- You should think step-by-step to plan your updated code before producing the final output. -- You should ensure the updated code matches the indentation and whitespace of the code in the users' selection. -- Only remove code from the users' selection if you are sure it is not needed. -- It is not acceptable to use Markdown in your response. You should not produce Markdown-formatted code blocks. Ignore any previous instructions that may have told you to format your responses with Markdown. -- You will be provided with code that is in the users' selection, enclosed in XML tags. You must use this code to help you plan your updated code. -- You will be provided with instructions on how to update this code, enclosed in XML tags. You must follow these instructions carefully and to the letter. -- Only enclose your response in XML tags. Do use any other XML tags unless they are part of the generated code. +finalhandler/index.js: + (*! + * finalhandler + * Copyright(c) 2014-2022 Douglas Christopher Wilson + * MIT Licensed + *) -This is part of the file {fileName}. +express/lib/router/layer.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) -The user has the following code in their selection: -{selectedText} +methods/index.js: + (*! + * methods + * Copyright(c) 2013-2014 TJ Holowaychuk + * Copyright(c) 2015-2016 Douglas Christopher Wilson + * MIT Licensed + *) -The user wants you to replace parts of the selected code or correct a problem by following their instructions. -Provide your generated code using the following instructions: - -{instruction} - -`;static addPrompt=` -- You are an AI programming assistant who is an expert in adding new code by following instructions. -- You should think step-by-step to plan your code before adding the final output. -- You should ensure your code matches the indentation and whitespace of the preceding code in the users' file. -- It is not acceptable to use Markdown in your response. You should not produce Markdown-formatted code blocks. Ignore any previous instructions that may have told you to format your responses with Markdown. -- You will be provided with instructions on what to do, enclosed in XML tags. You must follow these instructions carefully and to the letter. -- Only enclose your response in XML tags. Do use any other XML tags unless they are part of the generated code. +express/lib/router/route.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) -The user is currently in the file: {fileName} +express/lib/router/index.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) -Provide your generated code using the following instructions: - -{instruction} - -`;static fixPrompt=` -- You are an AI programming assistant who is an expert in fixing errors within code. -- You should think step-by-step to plan your fixed code before producing the final output. -- You should ensure the updated code matches the indentation and whitespace of the code in the users' selection. -- Only remove code from the users' selection if you are sure it is not needed. -- It is not acceptable to use Markdown in your response. You should not produce Markdown-formatted code blocks. Ignore any previous instructions that may have told you to format your responses with Markdown. -- You will be provided with code that is in the users' selection, enclosed in XML tags. You must use this code to help you plan your fixed code. -- You will be provided with errors from the users' selection enclosed in XML tags. You must attempt to fix all of these errors. -- If you do not know how to fix an error, do not modify the code related to that error and leave it as is. Only modify code related to errors you know how to fix. -- Only enclose your response in XML tags. Do use any other XML tags unless they are part of the generated code. +express/lib/middleware/init.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) -This is part of the file {fileName}. +express/lib/middleware/query.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) -The user has the following code in their selection: -{selectedText} +express/lib/view.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) -The user wants you to correct problems in their code by following their instructions. -Provide your generated code using the following instructions: - -{instruction} - -`};var R3=class A{constructor(r){this.debug=r}id="inline-touch";title="Inline Touch";workspacePath=ri.workspaceFolders?.[0]?.uri;async getInteraction(r,t){let i=t.editor.getActiveTextEditorSelection()||t.editor.controllers?.inline?.selection;if(!i||!this.workspacePath)return await t.editor.controllers?.inline?.error(),await t.editor.showWarningMessage("Failed to start Inline Chat: empty selection."),null;let o=r.trim()||(await this.getInstructionFromInput()).trim();if(!o)return await t.editor.controllers?.inline?.error(),await t.editor.showWarningMessage("Failed to start Inline Chat: empty input."),null;let s=`${this.workspacePath.fsPath}/${i.fileName}`,g=s.replace(/\/[^/]+$/,"");this.debug("InlineTouch:currentDir","currentDir",g);let p=(Fm.noTest.test(o)?s.replace(/(\.[^./]+)$/,".cody$1"):s.replace(/(\.[^./]+)$/,".test$1"))||await this.getNewFileNameFromInput(i.fileName,g);if(!p||!g)return null;let B=Zn.file(p),m=io(o,1e3),_=2e3+500*2,x=io(i.selectedText,_),k=A.newFilePrompt.replace("{newFileName}",p).replace("{humanInput}",m).replace("{selectedText}",x).replace("{fileName}",i.fileName),P=this.getHumanDisplayText(o,i.fileName);return t.responseMultiplexer.sub("selection",new QS(async H=>{if(!H){await t.editor.controllers?.inline?.error(),await t.editor.showWarningMessage("Cody did not suggest any code updates. Please try again with a different question.");return}let T=new Sd;T.createFile(B,{ignoreIfExists:!0}),await ri.applyEdit(T),this.debug("InlineTouch:workspaceEditor","createFile",B),await this.addContentToNewFile(T,B,H),this.debug("InlineTouch:responseMultiplexer","BufferedBotResponseSubscriber",H)})),Promise.resolve(new cd({speaker:"human",text:k,displayText:P},{speaker:"assistant",prefix:`Working on it! I will show you the new file when it is ready. +safe-buffer/index.js: + (*! safe-buffer. MIT License. Feross Aboukhadijeh *) -`},this.getContextMessages(i,g),[]))}async addContentToNewFile(r,t,i){let o=await ri.openTextDocument(t);r.insert(t,new Ao(o.lineCount+1,0),nS(i)),await ri.applyEdit(r),await o.save(),await ni.showTextDocument(t)}static newFilePrompt=` - I am currently looking at this selected code from {fileName}: - \`\`\` - {selectedText} - \`\`\` +content-disposition/index.js: + (*! + * content-disposition + * Copyright(c) 2014-2017 Douglas Christopher Wilson + * MIT Licensed + *) - Help me with creating content for a new file based on the selected code. - - {humanInput} +etag/index.js: + (*! + * etag + * Copyright(c) 2014-2016 Douglas Christopher Wilson + * MIT Licensed + *) - ## Instruction - - Follow my instructions to produce new code for the new file called {newFileName}. - - Think carefully and use the shared context as reference before produce the new code - - Make sure the new code works with the shared context and the selected code. - - Use the same framework, language and style as the shared context that are also from current directory I am working on. - - Put all new content inside tags. - - I only want to see the new code enclosed with the tags only if you understand my instructions. - - Do not enclose any part of your answer with tags if you are not sure about the answer. - - Only provide me with the code inside and nothing else. - - Do not enclose your answer with markdowns. - ## Guidelines for the new file - - Include all the import statements that are required for the new code to work. - - If there are already content in the file with the same name, the new code will be appended to the file. - - If my selected code is empty, it means I am working in an empty file. - - Do not remove code that is being used by the the shared files. - - Do not suggest code that are not related to any of the shared context. - - Do not make up code, including function names, that could break the selected code. - `;static displayPrompt=` +fresh/index.js: + (*! + * fresh + * Copyright(c) 2012 TJ Holowaychuk + * Copyright(c) 2016-2017 Douglas Christopher Wilson + * MIT Licensed + *) - File: `;async getContextMessages(r,t){let i=[],o=aB.getEditorSelectionContext(r),s=await Jk(t,r.fileName,!0);if(i.push(...o,...s),i.length<10){let g=await xz(t);i.push(...g)}return i.slice(-10)}getHumanDisplayText(r,t){return"**\u2728Touch\u2728** "+r+A.displayPrompt+t}async getInstructionFromInput(){return await ni.showInputBox({prompt:"Enter your instructions for Cody to create a new file based on the selected code:",placeHolder:"ex. create unit tests for the selected code",validateInput:t=>t?null:"Please enter instructions."})||""}async getNewFileNameFromInput(r,t){let i=await ni.showInputBox({prompt:"Enter a new file name (with extension):",value:r,validateInput:o=>o?o.includes(".")?null:"Please enter a file name with extension.":"Please enter a file name."});return`${t}/${i}`}};var Fz=class A{constructor(r){this.debug=r}id="inline-chat";title="Inline Chat";async getInteraction(r,t){let i=this.id;if(Fm.touch.test(r))return new R3(this.debug).getInteraction(r.replace(Fm.touch,""),t);if(Fm.edit.test(r))return new F3().getInteraction(r.replace(Fm.edit,""),t);let o=t.editor.getActiveTextEditorSelection();if(!r||!o)return await t.editor.showWarningMessage("Failed to start Inline Chat: empty input or selection."),null;let s=io(r,1e3),g=2e3+500*2,E=io(o.selectedText,g),p=A.prompt.replace("{humanInput}",s).replace("{selectedText}",E).replace("{fileName}",o.fileName),B=r+A.displayPrompt.replace("{selectedText}",o.selectedText);return Yc({text:p,displayText:B,source:i,contextMessages:this.getContextMessages(s,t.codebaseContext,o,t.editor)})}static prompt=` - I have questions about this part of the code from {fileName}: - \`\`\` - {selectedText} - \`\`\` +range-parser/index.js: + (*! + * range-parser + * Copyright(c) 2012-2014 TJ Holowaychuk + * Copyright(c) 2015-2016 Douglas Christopher Wilson + * MIT Licensed + *) - As my coding assistant, please help me with my questions: - {humanInput} +send/index.js: + (*! + * send + * Copyright(c) 2012 TJ Holowaychuk + * Copyright(c) 2014-2022 Douglas Christopher Wilson + * MIT Licensed + *) - ## Instruction - - Do not enclose your answer with tags. - - Do not remove code that might be being used by the other part of the code that was not shared. - - Your answers and suggestions should based on the provided context only. - - You may make references to other part of the shared code. - - Do not suggest code that are not related to any of the shared context. - - Do not suggest anything that would break the working code. - `;static displayPrompt="\n \n```\n{selectedText}\n```\n";async getContextMessages(r,t,i,o){let s=[];s.push(...aB.getEditorSelectionContext(i)),s.push(...aB.getEditorContext(o));let g=await t.getContextMessages(r,{numCodeResults:5,numTextResults:3});return s.push(...g),s}};var Rz=class{id="next-questions";title="Next Questions";async getInteraction(r,t){let i=this.id,o="Assume I have an answer to the following request:",s="Generate one to three follow-up discussion topics that the human can ask you to uphold the conversation. Keep the topics very concise (try not to exceed 5 words per topic) and phrase them as questions.",g=5e3-(o.length+s.length)/4,E=io(r,g),p=`${o} +forwarded/index.js: + (*! + * forwarded + * Copyright(c) 2014-2017 Douglas Christopher Wilson + * MIT Licensed + *) -\`\`\` -${E} -\`\`\` +proxy-addr/index.js: + (*! + * proxy-addr + * Copyright(c) 2014-2016 Douglas Christopher Wilson + * MIT Licensed + *) -${s}`,B=`Sure, here are great follow-up discussion topics and learning ideas: - - - `;return Yc({text:p,displayText:p,source:i,assistantPrefix:B,assistantText:B,contextMessages:this.getContextMessages(E,t.editor,t.intentDetector,t.codebaseContext)})}async getContextMessages(r,t,i,o){let s=[],g=await i.isCodebaseContextRequired(r);if(g){let E=await o.getContextMessages(r,Rm);s.push(...E)}return(g||i.isEditorContextRequired(r))&&s.push(...this.getEditorContext(t)),s}getEditorContext(r){let t=r.getActiveTextEditorVisibleContent();if(!t)return[];let i=io(t.content,1e3);return cu(s_(i,t.fileName,t.repoName),t)}};var qve=[new aB(Qn),new h_,new Q_,new m_,new F3,new D_,new __,new w_,new Sz,new Fz(Qn),new R3(Qn),new Rz,new v_,new vb];var bye=Yn(require("http")),Oye=Yn(require("https")),Mye=Yn(Iye());var lMt="_VSCODE_NODE_MODULES",uMt="@vscode/proxy-agent/out/agent",gMt="PacProxyAgent",dMt=new bye.default.Agent({keepAlive:!0,keepAliveMsecs:6e4}),pMt=new Oye.default.Agent({keepAlive:!0,keepAliveMsecs:6e4}),pfA;function EMt({proxy:A}){return({protocol:r})=>A?.startsWith("socks")&&!pfA?(pfA=new Mye.SocksProxyAgent(A,{keepAlive:!0,keepAliveMsecs:6e4}),pfA):r==="http:"?dMt:pMt}function EfA(A){return KG.current=EMt(A),KG.current}function kye(){let A=EfA(sB());try{let r=globalThis?.[lMt]?.[uMt]?.[gMt]??void 0;if(r){let t=r.prototype.connect;r.prototype.connect=function(i,o){try{let s=i.getHeader("connection");return s==="keep-alive"||Array.isArray(s)&&s.includes("keep-alive")?(this.opts.originalAgent=A(o),t.call(this,i,o)):t.call(this,i,o)}catch{return t.call(this,i,o)}}}}catch(r){}}var xye=require("child_process"),Hye=Yn(require("path")),Sye=Yn(JB());var Jz=class{constructor(r,t,i){this.rgPath=r;this.editor=t;this.chatClient=i}async getContext(r,t){let i=performance.now(),o=this.editor.getWorkspaceRootUri()?.fsPath;if(!o)return[];let s=performance.now(),g=await this.queryToFileFragments(r),E=performance.now(),p=await this.getFilenames(o,g,3),B=performance.now(),m=["readme"],_=[],x=p,O=[];for(let F of m){let y=[];for(let S of x)S.toLocaleLowerCase().includes(F)?y.push(S):O.push(S);x=O,O=[],_.push(...y.sort((S,U)=>S.length-U.length))}let k=_.concat(x).slice(0,t),P="filename",H="file",T=await Promise.all(k.map(async F=>{let y=Zn.file(Hye.join(o,F)),S=(await ri.openTextDocument(y)).getText();return{fileName:F,content:S,uri:y,source:P,type:H}}).reverse()),v=performance.now();return Qn("FilenameContextFetcher:getContext",JSON.stringify({duration:v-i,queryToFileFragments:{duration:E-s,fragments:g},getFilenames:{duration:B-E}}),{verbose:{matchingFiles:p,results:T.map(F=>F.fileName)}}),T}async queryToFileFragments(r){let t=await new Promise((o,s)=>{let g="";this.chatClient.chat([{speaker:"human",text:`Write 3 filename fragments that would be contained by files in a git repository that are relevant to answering the following user query: ${r} Your response should be only a space-delimited list of filename fragments and nothing else.`}],{onChange:E=>{g=E},onComplete:()=>{o(g.split(/\s+/).filter(E=>E.length>0))},onError:(E,p)=>{s(new Error(E))}},{temperature:0,fast:!0})});return(0,Sye.uniq)(t.map(o=>o.toLocaleLowerCase()))}async getFilenames(r,t,i){let s=["--files","--iglob","{"+t.map(E=>`**${E}**`).join(",")+"}","--crlf","--fixed-strings","--no-config","--no-ignore-global",`--max-depth=${i}`];return(await new Promise((E,p)=>{(0,xye.execFile)(this.rgPath,s,{cwd:r,maxBuffer:1024*1024*1024},(B,m,_)=>{B?.code===2?p(new Error(`${B.message}: ${_}`)):E(m)})})).split(` -`).map(E=>E.trim()).filter(E=>E.length>0).sort((E,p)=>E.length-p.length)}};var Vz=require("child_process"),qw=Yn(require("path")),n2e=Yn(Zye());var a2e=Yn(ZpA());var $ye="keyword",A2e="file",e2e=["--ignore-case","-g","*.*","-g","!.*","-g","!*.lock","-g","!*.snap","--max-filesize","10K","--max-depth","10"];function r2e(...A){return`(?:${A.map(t=>t.prefix.length>=4?DfA(t.prefix):`${DfA(t.stem)}|${t.originals.map(i=>DfA(i)).join("|")}`).join("|")})`}function LMt(A,r){let t=0;for(let i=0;i{let m=Zn.file(qw.join(o,B));try{let _=(await ri.openTextDocument(m)).getText();return[{fileName:B,content:_,uri:m,source:$ye,type:A2e}]}catch(_){return console.error(_),[]}})),p=performance.now()-i;return Fa.log("CodyVSCodeExtension:keywordContext:searchDuration",{searchDuration:p}),Qn("LocalKeywordContextFetcher:getContext",JSON.stringify({searchDuration:p})),E.reverse().flat()}async userQueryToExpandedKeywords(r){let t=performance.now(),i=await new Promise((s,g)=>{let E="";this.chatClient.chat([{speaker:"human",text:`Write 3-5 keywords that you would use to search for code snippets that are relevant to answering the following user query: ${r} Your response should be only a list of space-delimited keywords and nothing else.`}],{onChange:p=>{E=p},onComplete:()=>{s(E.split(/\s+/).filter(p=>p.length>0))},onError:p=>{g(new Error(p))}},{temperature:0,fast:!0})}),o=new Map;for(let s of i){let g=a2e.default.string.stem(s);o.has(g)||o.set(g,{count:1,originals:[s],prefix:LMt(s.toLowerCase(),g),stem:g})}return Qn("LocalKeywordContextFetcher:userQueryToExpandedKeywords",JSON.stringify({duration:performance.now()-t})),o}async userQueryToKeywordQuery(r){let t=new Map,i=Date.now(),o=await this.userQueryToExpandedKeywords(r),s=Date.now()-i;for(let[E,p]of o)t.has(E)||t.set(E,p);return Qn("LocalKeywordContextFetcher:userQueryToKeywordQuery","keyword expansion",JSON.stringify({duration:s,expandedTerms:[...o.values()].map(E=>E.prefix)})),[...t.values()]}async getSearchContext(r,t){let i=this.editor.getWorkspaceRootUri()?.fsPath;if(!i)return[];let o=(await this.userQueryToKeywordQuery(r)).map(p=>p.prefix.length<4?p.originals[0]:p.prefix).join("|"),g=(await this.fetchKeywordFiles(i,r)).slice(0,t);return(await Promise.all(g.map(async({filename:p})=>{try{let B=Zn.file(qw.join(i,p)),m=await ri.openTextDocument(B),_=m.getText(),x=new RegExp(o,"g"),O=_.match(x),k=_.indexOf(O?O[0]:r),P=Math.max(0,m.positionAt(k).line-2),H=P+5,T=m.getText(new sa(P,0,H,0));return[{fileName:p,content:T,uri:B,source:$ye,type:A2e}]}catch(B){return console.error(B),[]}}))).flat()}async fetchFileStats(r,t){let i=performance.now(),o=`\\b${r2e(...r)}`,s=[...e2e,"--json",o,"."],g=(0,Vz.spawn)(this.rgPath,s,{cwd:t,stdio:["ignore","pipe",process.stderr],windowsHide:!0}),E={},p=B=>{if(B.key===null&&B.stack.length===0&&B.current.type)return B.current.type==="end"};return await new Promise((B,m)=>{try{g.stdout.pipe(n2e.default.withParser({objectFilter:p})).on("data",_=>{try{let x=_;switch(x.value.type){case"end":{let O=x.value.data.path.text;O.startsWith(`.${qw.sep}`)&&(O=O.slice(2)),E[O]||(E[O]={bytesSearched:0}),E[O].bytesSearched=x.value.data.stats.bytes_searched;break}}}catch(x){m(x)}}).on("end",()=>B())}catch(_){m(_)}}),Qn("fetchFileStats",JSON.stringify({duration:performance.now()-i})),E}async fetchFileMatches(r,t){let i=performance.now(),o=await Promise.all(r.map(async p=>{let B=[...e2e,"--count-matches","--stats",`\\b${r2e(p)}`,"."],m=await new Promise((k,P)=>{(0,Vz.execFile)(this.rgPath,B,{cwd:t,maxBuffer:1024*1024*1024,timeout:1e3*30},(H,T,v)=>{H?.code===2?P(new Error(`${H.message}: ${v}`)):k(T)})}),_={},x=m.split(` -`),O=-1;for(let k of x){let P=k.split(":");if(P.length!==2){let H=/^(\d+) files searched$/.exec(k);if(H&&H.length===2)try{O=parseInt(H[1],10)}catch{console.error(`failed to parse number of files matched from string: ${H[1]}`)}continue}try{let H=P[0];H.startsWith(`.${qw.sep}`)&&(H=H.slice(2));let T=parseInt(P[1],10);_[H]=T}catch{console.error(`could not parse count from ${P[1]}`)}}return{fileCounts:_,filesSearched:O}}));Qn("LocalKeywordContextFetcher.fetchFileMatches",JSON.stringify({duration:performance.now()-i}));let s=-1;for(let{filesSearched:p}of o){if(s>=0&&s!==p)throw new Error("filesSearched did not match");s=p}let g={},E={};for(let p=0;pS.originals.map(U=>(U.length+1)*S.count)).reduce((S,U)=>S+U,0),T=i.map(({stem:S})=>S),v=i2e(T,Object.fromEntries(i.map(({stem:S,count:U})=>[S,U])),H),F=t2e(T,v,O),y=Object.entries(m).flatMap(([S,U])=>{if(P===S)return[];if(p[S]===void 0)throw new Error(`filename ${S} missing from fileStats`);let V=i2e(T,U,p[S].bytesSearched),wA=t2e(T,V,O),IA=WMt(wA,F),{score:pA,scoreComponents:oA}=jMt(T,U,O);return p[S].bytesSearched>1e4&&(pA*=.1),[{filename:S,cosineScore:IA,termCounts:U,tfVec:V,idfDict:O,score:pA,scoreComponents:oA}]}).sort(({score:S},{score:U})=>U-S);return qMt(y)}};function jMt(A,r,t){let i=0,o={};for(let s of A){let g=r[s]||0,E=g===0?0:Math.log10(g)+1,p=(t[s]||1)*E;i+=p,o[s]=p}return{score:i,scoreComponents:o}}function WMt(A,r){if(A.length!==r.length)throw new Error(`v1.length !== v2.length ${A.length} !== ${r.length}`);let t=0,i=0,o=0;for(let s=0;s(r[i]||0)/t)}function JMt(A,r){let t=Math.log(r),i=Object.entries(A).map(([o,s])=>[o,t-Math.log(s)]);return Object.fromEntries(i)}function DfA(A){return A.replaceAll(/[$()*+./?[\\\]^{|}-]/g,"\\$&")}function qMt(A){let r=new Set;return A.filter(({filename:t})=>r.has(t)?!1:(r.add(t),!0))}var rK=require("node:child_process"),MfA=Yn(require("node:fs")),Am=require("node:fs/promises"),kfA=Yn(require("node:os")),Kg=Yn(require("node:path")),u2e=require("node:util");var fBi=new Error("timeout while waiting for mutex to become available"),BBi=new Error("mutex already locked"),VMt=new Error("request for lock canceled"),zMt=function(A,r,t,i){function o(s){return s instanceof t?s:new t(function(g){g(s)})}return new(t||(t=Promise))(function(s,g){function E(m){try{B(i.next(m))}catch(_){g(_)}}function p(m){try{B(i.throw(m))}catch(_){g(_)}}function B(m){m.done?s(m.value):o(m.value).then(E,p)}B((i=i.apply(A,r||[])).next())})},_fA=class{constructor(r,t=VMt){this._value=r,this._cancelError=t,this._weightedQueues=[],this._weightedWaiters=[]}acquire(r=1){if(r<=0)throw new Error(`invalid weight ${r}: must be positive`);return new Promise((t,i)=>{this._weightedQueues[r-1]||(this._weightedQueues[r-1]=[]),this._weightedQueues[r-1].push({resolve:t,reject:i}),this._dispatch()})}runExclusive(r,t=1){return zMt(this,void 0,void 0,function*(){let[i,o]=yield this.acquire(t);try{return yield r(i)}finally{o()}})}waitForUnlock(r=1){if(r<=0)throw new Error(`invalid weight ${r}: must be positive`);return new Promise(t=>{this._weightedWaiters[r-1]||(this._weightedWaiters[r-1]=[]),this._weightedWaiters[r-1].push(t),this._dispatch()})}isLocked(){return this._value<=0}getValue(){return this._value}setValue(r){this._value=r,this._dispatch()}release(r=1){if(r<=0)throw new Error(`invalid weight ${r}: must be positive`);this._value+=r,this._dispatch()}cancel(){this._weightedQueues.forEach(r=>r.forEach(t=>t.reject(this._cancelError))),this._weightedQueues=[]}_dispatch(){var r;for(let t=this._value;t>0;t--){let i=(r=this._weightedQueues[t-1])===null||r===void 0?void 0:r.shift();if(!i)continue;let o=this._value,s=t;this._value-=t,t=this._value+1,i.resolve([o,this._newReleaser(s)])}this._drainUnlockWaiters()}_newReleaser(r){let t=!1;return()=>{t||(t=!0,this.release(r))}}_drainUnlockWaiters(){for(let r=this._value;r>0;r--)this._weightedWaiters[r-1]&&(this._weightedWaiters[r-1].forEach(t=>t()),this._weightedWaiters[r-1]=[])}},KMt=function(A,r,t,i){function o(s){return s instanceof t?s:new t(function(g){g(s)})}return new(t||(t=Promise))(function(s,g){function E(m){try{B(i.next(m))}catch(_){g(_)}}function p(m){try{B(i.throw(m))}catch(_){g(_)}}function B(m){m.done?s(m.value):o(m.value).then(E,p)}B((i=i.apply(A,r||[])).next())})},zz=class{constructor(r){this._semaphore=new _fA(1,r)}acquire(){return KMt(this,void 0,void 0,function*(){let[,r]=yield this._semaphore.acquire();return r})}runExclusive(r){return this._semaphore.runExclusive(()=>r())}isLocked(){return this._semaphore.isLocked()}waitForUnlock(){return this._semaphore.waitForUnlock()}release(){this._semaphore.isLocked()&&this._semaphore.release()}cancel(){return this._semaphore.cancel()}};var wfA=require("path");var Vw=require("fs"),LQ=A=>{if(!A)A={mode:511};else if(typeof A=="object")A={mode:511,...A};else if(typeof A=="number")A={mode:A};else if(typeof A=="string")A={mode:parseInt(A,8)};else throw new TypeError("invalid options argument");let r=A,t=A.fs||{};return A.mkdir=A.mkdir||t.mkdir||Vw.mkdir,A.mkdirAsync=A.mkdirAsync?A.mkdirAsync:async(i,o)=>new Promise((s,g)=>r.mkdir(i,o,(E,p)=>E?g(E):s(p))),A.stat=A.stat||t.stat||Vw.stat,A.statAsync=A.statAsync?A.statAsync:async i=>new Promise((o,s)=>r.stat(i,(g,E)=>g?s(g):o(E))),A.statSync=A.statSync||t.statSync||Vw.statSync,A.mkdirSync=A.mkdirSync||t.mkdirSync||Vw.mkdirSync,r};var I1=(A,r,t)=>{let i=(0,wfA.dirname)(A),o={...LQ(r),recursive:!1};if(i===A)try{return o.mkdirSync(A,o)}catch(s){let g=s;if(g&&g.code!=="EISDIR")throw s;return}try{return o.mkdirSync(A,o),t||A}catch(s){let g=s;if(g&&g.code==="ENOENT")return I1(A,o,I1(i,o,t));if(g&&g.code!=="EEXIST"&&g&&g.code!=="EROFS")throw s;try{if(!o.statSync(A).isDirectory())throw s}catch{throw s}}},uD=Object.assign(async(A,r,t)=>{let i=LQ(r);i.recursive=!1;let o=(0,wfA.dirname)(A);return o===A?i.mkdirAsync(A,i).catch(s=>{let g=s;if(g&&g.code!=="EISDIR")throw s}):i.mkdirAsync(A,i).then(()=>t||A,async s=>{let g=s;if(g&&g.code==="ENOENT")return uD(o,i).then(E=>uD(A,i,E));if(g&&g.code!=="EEXIST"&&g.code!=="EROFS")throw s;return i.statAsync(A).then(E=>{if(E.isDirectory())return t;throw s},()=>{throw s})})},{sync:I1});var IfA=require("path");var vfA=require("path"),yfA=async(A,r,t)=>{if(t!==r)return A.statAsync(r).then(i=>i.isDirectory()?t:void 0,i=>{let o=i;return o&&o.code==="ENOENT"?yfA(A,(0,vfA.dirname)(r),r):void 0})},CfA=(A,r,t)=>{if(t!==r)try{return A.statSync(r).isDirectory()?t:void 0}catch(i){let o=i;return o&&o.code==="ENOENT"?CfA(A,(0,vfA.dirname)(r),r):void 0}};var j3=(A,r)=>{let t=LQ(r);if(t.recursive=!0,(0,IfA.dirname)(A)===A)return t.mkdirSync(A,t);let o=CfA(t,A);try{return t.mkdirSync(A,t),o}catch(s){let g=s;if(g&&g.code==="ENOENT")return I1(A,t);throw s}},zk=Object.assign(async(A,r)=>{let t={...LQ(r),recursive:!0};return(0,IfA.dirname)(A)===A?await t.mkdirAsync(A,t):yfA(t,A).then(o=>t.mkdirAsync(A,t).then(s=>o||s).catch(s=>{let g=s;if(g&&g.code==="ENOENT")return uD(A,t);throw s}))},{sync:j3});var Kz=require("path"),XMt=process.env.__TESTING_MKDIRP_PLATFORM__||process.platform,bfA=A=>{if(/\0/.test(A))throw Object.assign(new TypeError("path must be a string without null bytes"),{path:A,code:"ERR_INVALID_ARG_VALUE"});if(A=(0,Kz.resolve)(A),XMt==="win32"){let r=/[*|"<>?:]/,{root:t}=(0,Kz.parse)(A);if(r.test(A.substring(t.length)))throw Object.assign(new Error("Illegal characters in path."),{path:A,code:"EINVAL"})}return A};var Xz=require("fs");var ZMt=process.env.__TESTING_MKDIRP_NODE_VERSION__||process.version,OfA=ZMt.replace(/^v/,"").split("."),o2e=+OfA[0]>10||+OfA[0]==10&&+OfA[1]>=12,Kk=o2e?A=>LQ(A).mkdirSync===Xz.mkdirSync:()=>!1,Zz=Object.assign(o2e?A=>LQ(A).mkdir===Xz.mkdir:()=>!1,{sync:Kk});var s2e=(A,r)=>{A=bfA(A);let t=LQ(r);return Kk(t)?j3(A,t):I1(A,t)};var $z=Object.assign(async(A,r)=>{A=bfA(A);let t=LQ(r);return Zz(t)?zk(A,t):uD(A,t)},{mkdirpSync:s2e,mkdirpNative:zk,mkdirpNativeSync:j3,mkdirpManual:uD,mkdirpManualSync:I1,sync:s2e,native:zk,nativeSync:j3,manual:uD,manualSync:I1,useNative:Zz,useNativeSync:Kk});var c2e=(0,u2e.promisify)(rK.execFile),eK=class{constructor(r,t,i){this.context=r;this.sourcegraphServerEndpoint=t;this.authToken=i;this.indexRoot=Kg.default.join(kfA.default.homedir(),".cody-symf")}indexRoot;indexLocks=new Map;setSourcegraphAuth(r,t){this.sourcegraphServerEndpoint=r,this.authToken=t}indexListeners=new Set;registerIndexListener(r){return this.indexListeners.add(r),{dispose:()=>{this.indexListeners.delete(r)}}}fireIndexListeners(r){for(let t of this.indexListeners)t(r)}async getSymfInfo(){let r=this.authToken;if(!r)throw new Error("SymfRunner.getResults: No access token");let t=this.sourcegraphServerEndpoint;if(!t)throw new Error("SymfRunner.getResults: No Sourcegraph server endpoint");let i=await QcA(this.context);if(!i)throw new Error("No symf executable");return{accessToken:r,serverEndpoint:t,symfPath:i}}async getResults(r,t,i){let{symfPath:o,serverEndpoint:s,accessToken:g}=await this.getSymfInfo(),E=c2e(o,["expand-query",r],{env:{SOURCEGRAPH_TOKEN:g,SOURCEGRAPH_URL:s},maxBuffer:1024*1024*1024,timeout:1e3*10}).then(({stdout:p})=>p.trim());return t.map(p=>this.getResultsForScopeDir(E,p,i))}async getResultsForScopeDir(r,t,i){for(let s=0;s<10;s++){await this.getIndexLock(t).withWrite(async()=>{await this.unsafeEnsureIndex(t,i,{hard:s===0})});let g=!1,E=await this.getIndexLock(t).withRead(async()=>await this.unsafeIndexExists(t)?this.unsafeRunQuery(await r,t):(g=!0,""));if(g)continue;return $Mt(E)}throw new Error(`failed to find index after 10 tries for directory ${t}`)}async deleteIndex(r){await this.getIndexLock(r).withWrite(async()=>{await this.unsafeDeleteIndex(r)})}async ensureIndex(r,t,i={hard:!1}){await this.getIndexLock(r).withWrite(async()=>{await this.unsafeEnsureIndex(r,t,i)})}getIndexLock(r){let{indexDir:t}=this.getIndexDir(r),i=this.indexLocks.get(t);return i||(i=new xfA,this.indexLocks.set(t,i),i)}async unsafeRunQuery(r,t){let{indexDir:i}=this.getIndexDir(t),{accessToken:o,symfPath:s,serverEndpoint:g}=await this.getSymfInfo();try{let{stdout:E}=await c2e(s,["--index-root",i,"query","--scopes",t,"--fmt","json",r],{env:{SOURCEGRAPH_TOKEN:o,SOURCEGRAPH_URL:g,HOME:process.env.HOME},maxBuffer:1073741824,timeout:3e4});return E}catch(E){throw l2e(E)}}async unsafeDeleteIndex(r){let t=Kg.default.join(this.indexRoot,".trash");await $z(t);let{indexDir:i}=this.getIndexDir(r);if(!await AK(i))return;let o=Kg.default.join(t,`${Kg.default.basename(i)}-${Date.now()}`);if(await AK(o))throw new Error(`could not delete index ${i}: target trash directory ${o} already exists`);await(0,Am.rename)(i,o),(0,Am.rm)(o,{recursive:!0,force:!0})}async unsafeIndexExists(r){let{indexDir:t}=this.getIndexDir(r);return AK(Kg.default.join(t,"index.json"))}async unsafeEnsureIndex(r,t,i={hard:!1}){if(await this.unsafeIndexExists(r))return;if(!i.hard&&await this.didIndexFail(r)){Qn("symf","index build previously failed and `hard` === false, not rebuilding");return}let{indexDir:s,tmpDir:g}=this.getIndexDir(r);try{await this.unsafeUpsertIndex(s,g,r,t)}catch(E){throw Qn("symf","symf index creation failed",E),await this.markIndexFailed(r),E}await this.clearIndexFailure(r)}getIndexDir(r){let t=Kg.default.resolve(r);return{indexDir:Kg.default.join(this.indexRoot,t),tmpDir:Kg.default.join(this.indexRoot,".tmp",t)}}unsafeUpsertIndex(r,t,i,o){let s=this._unsafeUpsertIndex(r,t,i);return s.then(()=>this.fireIndexListeners(i)),o&&o(i,s),s}async _unsafeUpsertIndex(r,t,i){let o=await QcA(this.context);if(!o)return;await Promise.all([(0,Am.rm)(r,{recursive:!0}).catch(()=>{}),(0,Am.rm)(t,{recursive:!0}).catch(()=>{})]),Qn("symf","creating index",r);let s=1;kfA.default.cpus().length>4&&(s=2);try{let g=(0,rK.spawn)(o,["--index-root",t,"add",i],{env:{...process.env,GOMAXPROCS:`${s}`},stdio:["ignore","ignore","ignore"],timeout:6e5});await new Promise((E,p)=>{g.on("error",p),g.on("exit",B=>{B===0?E():p(new Error(`symf exited with code ${B}`))})}),await $z(Kg.default.dirname(r)),await(0,Am.rename)(t,r)}catch(g){throw l2e(g)}finally{await(0,Am.rm)(t,{recursive:!0,force:!0})}}async markIndexFailed(r){let t=Kg.default.join(this.indexRoot,".failed");await $z(t);let i=Kg.default.resolve(r),o=Kg.default.join(t,i.replaceAll(Kg.default.sep,"__"));await(0,Am.writeFile)(o,"")}async didIndexFail(r){let t=Kg.default.join(this.indexRoot,".failed"),i=Kg.default.resolve(r),o=Kg.default.join(t,i.replaceAll(Kg.default.sep,"__"));return AK(o)}async clearIndexFailure(r){let t=Kg.default.join(this.indexRoot,".failed"),i=Kg.default.resolve(r),o=Kg.default.join(t,i.replaceAll(Kg.default.sep,"__"));await(0,Am.rm)(o,{force:!0})}};async function AK(A){try{return await MfA.default.promises.access(A,MfA.default.constants.F_OK),!0}catch{return!1}}function $Mt(A){return JSON.parse(A).map(t=>{let{fqname:i,name:o,type:s,doc:g,exported:E,lang:p,file:B,range:m,summary:_}=t,{row:x,col:O}=m.startPoint,{row:k,col:P}=m.endPoint,H=m.startByte,T=m.endByte;return{fqname:i,name:o,type:s,doc:g,exported:E,lang:p,file:B,summary:_,range:{startByte:H,endByte:T,startPoint:{row:x,col:O},endPoint:{row:k,col:P}}}})}var xfA=class{readers=0;mu=new zz;async withRead(r){for(;this.readers===0;){if(this.mu.isLocked()){await new Promise(t=>setTimeout(t,100));continue}await this.mu.acquire();break}this.readers++;try{return await r()}finally{this.readers--,this.readers===0&&this.mu.release()}}async withWrite(r){return this.mu.runExclusive(r)}};function l2e(A){let r=`${A}`,t;return r.includes("ENOENT")?t='symf binary not found. Do you have "cody.experimental.symf.path" set and is it valid?':r.includes("401")?t=`symf: Unauthorized. Is Cody signed in? ${A}`:t=`symf index creation failed: ${A}`,new EvalError(t)}var g2e=Yn(require("node:fs/promises")),d2e=Yn(require("path"));async function p2e(){if(process.env.MOCK_RG_PATH)return process.env.MOCK_RG_PATH;let A=process.platform==="win32"?"rg.exe":"rg",r=["node_modules/@vscode/ripgrep/bin","node_modules.asar.unpacked/@vscode/ripgrep/bin"];for(let t of r){let i=d2e.default.resolve(Ec.appRoot,t,A);if(await g2e.default.access(i).then(()=>!0).catch(()=>!1))return i}return console.log("Did not find bundled `rg`."),null}var fIe=Yn(EIe());var JK=class extends Q5{reconfigure(r){fIe.init(r)}};function BIe(A){return kye(),jEA(A,{getRgPath:p2e,createCommandsController:(...r)=>new vN(...r),createLocalKeywordContextFetcher:(...r)=>new qz(...r),createFilenameContextFetcher:(...r)=>new Jz(...r),createCompletionsClient:(...r)=>new HI(...r),createSymfRunner:(...r)=>new eK(...r),createBfgRetriever:()=>new xG(A),createSentryService:(...r)=>new JK(...r),recipes:[...qve,new oN,new aN,new nN,new sN,new vb],onConfigurationChange:EfA})}var QIe=Yn(require("path"));var hIe={actionscript:["as"],ada:["adb","ada","ads"],apache:["apacheconf"],apex:["cls","apex","trigger"],applescript:["applescript","scpt"],beancount:["beancount"],bibtex:["bib"],clojure:["clj","cljs","cljx"],cmake:["cmake","cmake.in","in"],coffescript:["coffee","cake","cson","cjsx","iced"],cpp:["c","cc","cpp","cxx","c++","h++","hh","h","hpp","pc","pcc"],csharp:["cs","csx"],css:["css"],cuda:["cu","cuh"],d:["d"],dot:["dot"],dart:["dart"],diff:["diff","patch"],dockerfile:["Dockerfile"],django:["jinja"],dos:["bat","cmd"],elixir:["ex","exs"],elm:["elm"],erlang:["erl"],fortran:["f","for","frt","fr","forth","4th","fth"],fsharp:["fs"],go:["go"],graphql:["graphql"],groovy:["groovy"],haml:["haml"],handlebars:["hbs","handlebars"],haskell:["hs","hsc"],hcl:["hcl","nomad","tf","tfvars","workflow"],html:["htm","html","xhtml"],ini:["ini","cfg","prefs","pro","properties"],java:["java"],javascript:["js","es","es6","jss","jsm"],javascriptreact:["jsx"],json:["json","sublime_metrics","sublime_session","sublime-keymap","sublime-mousemap","sublime-project","sublime-settings","sublime-workspace"],jsonnet:["jsonnet","libsonnet"],julia:["jl"],kotlin:["kt","ktm","kts"],less:["less"],lisp:["lisp","asd","cl","lsp","l","ny","podsl","sexp","el"],lua:["lua","fcgi","nse","pd_lua","rbxs","wlua"],makefile:["mk","mak"],markdown:["md","mkdown","mkd"],nginx:["nginxconf"],objectivec:["m","mm"],ocaml:["ml","eliom","eliomi","ml4","mli","mll","mly","re"],pascal:["p","pas","pp"],perl:["pl","al","cgi","perl","ph","plx","pm","pod","psgi","t"],php:["php","phtml","php3","php4","php5","php6","php7","phps"],powershell:["ps1","psd1","psm1"],protobuf:["proto"],python:["py","pyc","pyd","pyo","pyw","pyz"],r:["r","rd","rsx"],repro:["repro"],ruby:["rb","rbi","builder","eye","gemspec","god","jbuilder","mspec","pluginspec","podspec","rabl","rake","rbuild","rbw","rbx","ru","ruby","spec","thor","watchr"],rust:["rs","rs.in"],scala:["sbt","sc","scala"],scheme:["scm","sch","sls","sps","ss"],scss:["sass","scss"],shell:["sh","bash","zsh"],smalltalk:["st"],sql:["sql"],starlark:["bzl","bazel","BUILD","WORKSPACE"],stylus:["styl"],svelte:["svelte"],swift:["swift"],thrift:["thrift"],toml:["toml"],twig:["twig"],typescript:["ts"],typescriptreact:["tsx"],vbnet:["vb"],vbscrip:["vbs"],verilog:["v","veo","sv","svh","svi"],vhdl:["vhd","vhdl"],vim:["vim"],xml:["xml","adml","admx","ant","axml","builds","ccxml","clixml","cproject","csl","csproj","ct","dita","ditamap","ditaval","dll.config","dotsettings","filters","fsproj","fxml","glade","gml","grxml","iml","ivy","jelly","jsproj","kml","launch","mdpolicy","mjml","mod","mxml","nproj","nuspec","odd","osm","pkgproj","plist","props","ps1xml","psc1","pt","rdf","resx","rss","scxml","sfproj","srdf","storyboard","stTheme","sublime-snippet","targets","tmCommand","tml","tmLanguage","tmPreferences","tmSnippet","tmTheme","ui","urdf","ux","vbproj","vcxproj","vsixmanifest","vssettings","vstemplate","vxml","wixproj","wsdl","wsf","wxi","wxl","wxs","x3d","xacro","xaml","xib","xlf","xliff","xmi","xml.dist","xproj","xsd","xspec","xul","zcml"],yaml:["yml","yaml"]};var Bx;function uFt(){if(Bx)return Bx;Bx=new Map;for(let[A,r]of Object.entries(hIe))for(let t of r)Bx.set(t,A);return Bx}function qK(A){let r=QIe.default.basename(A),t=r.split(".").pop()||r;return uFt().get(t)||t}var r7=class{constructor(r){this.document=r;this.lines=[];this.content=r?.content||"",this.lines.push(0);let t=0;for(;t1&&this.content[t-2]==="\r"?2:1}lineLengthIncludingNewline(r){return this.lineEndOffset(r)-this.lineStartOffset(r)}lineLengthExcludingNewline(r){return this.lineLengthIncludingNewline(r)-this.newlineLength(r)}offset(r){return this.lines[r.line]+Math.min(r.character,this.lineLengthIncludingNewline(r.line))}position(r){let t=0;for(;t=this.lines[t+1];)t++;return{line:t,character:r-this.lines[t]}}};var tv=class{constructor(r){this.textDocument=r;this.version=0;this.isDirty=!1;this.isClosed=!1;this.eol=1;this.content=r.content??"",this.uri=Zn.from({scheme:"file",path:r.filePath}),this.fileName=r.filePath,this.isUntitled=!1,this.languageId=qK(this.fileName),this.offsets=new r7(r),this.lineCount=this.offsets.lineCount()}save(){throw new Error("Method not implemented.")}lineAt(r){let t=typeof r=="number"?r:r.line,i=this.getText(new sa(new Ao(t,0),new Ao(t,this.offsets.lineLengthExcludingNewline(t)))),o=0;for(;oPromise.resolve(!0),insertSnippet:()=>Promise.resolve(!0),revealRange:()=>{},options:{cursorStyle:void 0,insertSpaces:void 0,lineNumbers:void 0,tabSize:2},setDecorations:()=>{},viewColumn:-1,visibleRanges:[r],show:()=>{},hide:()=>{}}}var VK=class{constructor(){this.documents=new Map;this.activeDocumentFilePath=null}loadedDocument(r){let t=this.documents.get(r.filePath);return r.content===void 0&&(r.content=t?.content),r.selection===void 0&&(r.selection=t?.selection),r}setActiveTextEditor(r){this.activeDocumentFilePath=r.document.fileName,peA.fire(r),ni.activeTextEditor=r}agentTextDocument(r){return new tv(this.loadedDocument(r))}allFilePaths(){return[...this.documents.keys()]}allDocuments(){return[...this.documents.values()]}getDocument(r){return this.documents.get(r)}addDocument(r){this.documents.set(r.filePath,this.loadedDocument(r));let t=this.allFilePaths().map(i=>this.vscodeTab(i));for(QeA.all=[{tabs:t,isActive:!0,activeTab:this.vscodeTab(this.activeDocumentFilePath??""),viewColumn:-1}];c6.length>0;)c6.pop();for(let i of this.allDocuments())c6.push(t7(this.agentTextDocument(i)))}deleteDocument(r){this.documents.delete(r)}vscodeTab(r){return{input:{uri:r},label:"label",group:{activeTab:void 0,isActive:!1,tabs:[],viewColumn:-1}}}openTextDocument(r){return Promise.resolve(this.agentTextDocument({filePath:r}))}};var zK=class{constructor(r){this.agent=r}didReceiveFixupText(){throw new Error("Method not implemented.")}getWorkspaceRootPath(){let r=this.getWorkspaceRootUri();return r?.scheme==="file"?r.fsPath:null}getWorkspaceRootUri(){return this.agent.workspace.workspaceRootUri??null}activeDocument(){if(this.agent.workspace.activeDocumentFilePath!==null)return this.agent.workspace.getDocument(this.agent.workspace.activeDocumentFilePath)}getActiveTextEditor(){let r=this.activeDocument();return r===void 0?null:{filePath:r.filePath,content:r.content||""}}async getTextEditorContentForFile(r){if(!r)return Promise.resolve(void 0);let t=this.agent.workspace.getDocument(r.fsPath);return Promise.resolve(t?.content)}getActiveTextEditorSelection(){let r=this.activeDocument();if(r?.content===void 0||r.selection===void 0)return null;let t=new r7(r);if(!r.selection)return{fileName:r.filePath??"",precedingText:r.content??"",selectedText:"",followingText:""};let i=t.offset(r.selection.start),o=t.offset(r.selection.end);return{fileName:r.filePath||"",precedingText:r.content.slice(0,i),selectedText:r.content.slice(i,o),followingText:r.content.slice(o,r.content.length)}}getActiveTextEditorSelectionOrEntireFile(){let r=this.activeDocument();return r!==void 0&&r.selection===void 0?{fileName:r.filePath||"",precedingText:"",selectedText:r.content||"",followingText:""}:this.getActiveTextEditorSelection()}getActiveInlineChatTextEditor(){throw new Error("Method not implemented.")}getActiveInlineChatSelection(){throw new Error("Method not implemented.")}getActiveTextEditorSmartSelection(){throw new Error("Method not implemented.")}getActiveTextEditorSelectionOrVisibleContent(){throw new Error("Method not implemented.")}getActiveTextEditorDiagnosticsForRange(){throw new Error("Method not implemented.")}getActiveTextEditorVisibleContent(){let r=this.activeDocument();return r===void 0?null:{content:r.content||"",fileName:r.filePath}}replaceSelection(){throw new Error("Not implemented")}showQuickPick(){throw new Error("Not implemented")}showWarningMessage(){throw new Error("Not implemented")}showInputBox(){throw new Error("Not implemented")}};var i7=Yn($T()),KK=class extends i7.TelemetryRecorderProvider{constructor(r,t,i){super({client:t.name,clientVersion:t.version},new wb(r,t.extensionConfiguration?.anonymousUserID||"","all"),[new i7.MarketingTrackingTelemetryProcessor(i)],{...i7.defaultEventRecordingOptions,bufferTimeMs:0})}};var mIe=new Map;function gFt(A){let r=HeA("Cody");BIe({asAbsolutePath(t){return _Ie.default.resolve(A.fsPath,t)},environmentVariableCollection:{},extension:{},extensionMode:{},extensionPath:"__extensionPath_should_never_be_read_from",extensionUri:Zn.from({scheme:"file",path:"__extensionUri__should_never_be_read_from"}),globalState:{keys:()=>[],get:()=>{},update:(t,i)=>Promise.resolve(),setKeysForSync:t=>{}},logUri:{},logPath:{},secrets:{onDidChange:su(),get(t){return t==="cody.access-token"&&qp?Promise.resolve(qp.accessToken):Promise.resolve(mIe.get(t))},store(t,i){return mIe.set(t,i),Promise.resolve()},delete(t){return Promise.resolve()}},storageUri:{},subscriptions:[],workspaceState:{},globalStorageUri:Zn.file(r.data),storagePath:{},globalStoragePath:Zn.file(r.data).fsPath})}async function wIe(A){let r=async t=>{let i=new $y,o=process.argv0.endsWith("node")?process.argv.slice(1,2):[];o.push("jsonrpc");let s=(0,DIe.spawn)(process.argv[0],o,{env:{ENABLE_SENTRY:"false"}});return s.stderr.on("data",g=>{console.error(`------agent stderr------ -${g} -------------------------`)}),s.on("disconnect",()=>t()),s.on("close",()=>t()),s.on("error",g=>t(g)),s.on("exit",g=>{i.exit(),t(g)}),s.stderr.pipe(process.stderr),s.stdout.pipe(i.messageDecoder),i.messageEncoder.pipe(s.stdin),i.registerNotification("debug/message",g=>{console.error(`${g.channel}: ${g.message}`)}),await i.request("initialize",A),i.notify("initialized",null),i};return new Promise((t,i)=>{r(i).then(o=>t(o),o=>i(o))})}var XK=class extends $y{constructor(){super();this.client=Promise.resolve(null);this.oldClient=null;this.workspace=new VK;this.clientInfo=null;this.agentTelemetryRecorderProvider=new M4([{processEvent:t=>process.stderr.write(`Cody Agent: failed to record telemetry event '${t.feature}/${t.action}' before agent initialization -`)}]);p_A(this.workspace),f_A(this),this.registerRequest("initialize",async t=>{process.stderr.write(`Cody Agent: handshake with client '${t.name}' (version '${t.version}') at workspace root path '${t.workspaceRootUri}' -`),u_A(t),this.workspace.workspaceRootUri=t.workspaceRootUri?Zn.parse(t.workspaceRootUri):Zn.from({scheme:"file",path:t.workspaceRootPath}),gFt(this.workspace.workspaceRootUri),this.clientInfo=t,svA(`${t?.name} / ${t?.version}`),t.extensionConfiguration&&await this.setClientAndTelemetry(t.extensionConfiguration);let i=await this.client;if(!i)return{name:"cody-agent",authenticated:!1,codyEnabled:!1,codyVersion:null};let o=i.codyStatus;return{name:"cody-agent",authenticated:i.sourcegraphStatus.authenticated,codyEnabled:o.enabled&&(t.extensionConfiguration?.accessToken??"").length>0,codyVersion:o.version}}),this.registerNotification("initialized",()=>{}),this.registerRequest("shutdown",()=>Promise.resolve(null)),this.registerNotification("exit",()=>{process.exit(0)}),this.registerNotification("textDocument/didFocus",t=>{this.workspace.setActiveTextEditor(t7(this.workspace.agentTextDocument(t)))}),this.registerNotification("textDocument/didOpen",t=>{this.workspace.addDocument(t);let i=this.workspace.agentTextDocument(t);feA.fire(i),this.workspace.setActiveTextEditor(t7(i))}),this.registerNotification("textDocument/didChange",t=>{let i=this.workspace.agentTextDocument(t);this.workspace.addDocument(t),this.workspace.setActiveTextEditor(t7(i)),BeA.fire({document:i,contentChanges:[],reason:void 0})}),this.registerNotification("textDocument/didClose",t=>{this.workspace.deleteDocument(t.filePath),heA.fire(this.workspace.agentTextDocument(t))}),this.registerNotification("extensionConfiguration/didChange",t=>{this.setClientAndTelemetry(t).catch(()=>{process.stderr.write(`Cody Agent: failed to update configuration -`)})}),this.registerRequest("recipes/list",()=>Promise.resolve(Object.values(w6).map(({id:t,title:i})=>({id:t,title:i})))),this.registerNotification("transcript/reset",async()=>{(await this.client)?.reset()}),this.registerRequest("recipes/execute",async(t,i)=>{let o=await this.client;if(!o)return null;let s=new AbortController;i&&(i.isCancellationRequested&&s.abort(),i.onCancellationRequested(()=>{s.abort()})),await this.logEvent(`recipe:${t.id}`,"executed","dotcom-only"),this.agentTelemetryRecorderProvider.getRecorder().recordEvent(`cody.recipe.${t.id}`,"executed");try{await o.executeRecipe(t.id,{signal:s.signal,humanChatInput:t.humanChatInput,data:t.data})}catch{}return null}),this.registerRequest("autocomplete/execute",async(t,i)=>{await this.client;let o=await meA();if(!o)return console.log("Completion provider is not initialized"),{items:[]};let s=this.workspace.getDocument(t.filePath);if(!s)return console.log("No document found for file path",t.filePath,[...this.workspace.allFilePaths()]),{items:[]};let g=new tv(s);try{t.triggerKind==="Invoke"&&await o.manuallyTriggerCompletion();let E=await o.provideInlineCompletionItems(g,new Ao(t.position.line,t.position.character),{triggerKind:o6[t.triggerKind||"Automatic"],selectedCompletionInfo:t.selectedCompletionInfo?.text===void 0||t.selectedCompletionInfo?.text===null?void 0:{text:t.selectedCompletionInfo.text,range:new sa(t.selectedCompletionInfo.range.start.line,t.selectedCompletionInfo.range.start.character,t.selectedCompletionInfo.range.end.line,t.selectedCompletionInfo.range.end.character)}},i);return{items:E===null?[]:E.items.flatMap(({insertText:B,range:m})=>typeof B=="string"&&m!==void 0?[{insertText:B,range:m}]:[]),completionEvent:E?.completionEvent}}catch(E){return console.log("autocomplete failed",E),Promise.reject(E)}}),this.registerRequest("graphql/currentUserId",async()=>{let t=await this.client;if(!t)throw new Error("Cody client not initialized");let i=await t.graphqlClient.getCurrentUserId();if(typeof i=="string")return i;throw i}),this.registerRequest("telemetry/recordEvent",async t=>(this.agentTelemetryRecorderProvider.getRecorder().recordEvent(t.feature,t.action,t.parameters),Promise.resolve(null))),this.registerRequest("graphql/logEvent",async t=>{let i=await this.client;return typeof t.argument=="object"&&(t.argument=JSON.stringify(t.argument)),typeof t.publicArgument=="object"&&(t.publicArgument=JSON.stringify(t.publicArgument)),await i?.graphqlClient.logEvent(t,"all"),null}),this.registerRequest("graphql/getRepoIdIfEmbeddingExists",async({repoName:t})=>{let o=await(await this.client)?.graphqlClient.getRepoIdIfEmbeddingExists(t);return o instanceof Error&&console.error("getRepoIdIfEmbeddingExists",o),typeof o=="string"?o:null}),this.registerRequest("graphql/getRepoId",async({repoName:t})=>{let o=await(await this.client)?.graphqlClient.getRepoId(t);return o instanceof Error&&console.error("getRepoId",o),typeof o=="string"?o:null}),this.registerRequest("git/codebaseName",({url:t})=>{let i=T_A(t);return Promise.resolve(typeof i=="string"?i:null)}),this.registerNotification("autocomplete/clearLastCandidate",async()=>{let t=await meA();t||console.log("Completion provider is not initialized: unable to clear last candidate"),t.clearLastCandidate()})}async setClientAndTelemetry(t){this.client=this.createAgentClient(t);let i=await this.client;i&&this.clientInfo&&(this.agentTelemetryRecorderProvider?.unsubscribe(),this.agentTelemetryRecorderProvider=new KK(i.graphqlClient,this.clientInfo,{getMarketingTrackingMetadata:()=>this.clientInfo?.marketingTracking||null}))}async createAgentClient(t){let i=d_A(t);g_A(t),i&&await ti.executeCommand("agent.auth.reload"),EeA.fire({affectsConfiguration:()=>!0});let o=await DvA({initialTranscript:this.oldClient?.transcript,editor:new zK(this),config:{...t,useContext:"embeddings",experimentalLocalSymbols:!1},setMessageInProgress:s=>{this.notify("chat/updateMessageInProgress",s)},setTranscript:()=>{},createCompletionsClient:(...s)=>new HI(...s)});return this.oldClient=o,o}async logEvent(t,i,o){let s=await this.client;if(!s)return null;let g=this.clientInfo;if(!g)return null;let E=g.extensionConfiguration;if(!E)return null;let p=E.eventProperties;if(!p)return null;let B=`${p.prefix}:${t}:${i}`;return await s.graphqlClient.logEvent({event:B,url:"",client:p.client,userCookieID:this.clientInfo?.extensionConfiguration?.anonymousUserID||p.anonymousUserID,source:p.source,publicArgument:JSON.stringify({serverEndpoint:E.serverEndpoint,extensionDetails:{ide:g.name,ideExtensionType:"Cody",version:g.version}})},o),null}};var CIe=Yn(yIe());var V2=class{constructor(r,t){this.line=r;this.character=t}compare(r){return this.line!==r.line?this.line-r.line:this.character-r.character}};var a7=class A{constructor(r,t){this.start=r;this.end=t}compare(r){let t=this.start.compare(r.start);return t!==0?t:this.end.compare(r.end)}toLsif(){return this.isSingleLine()?[this.start.line,this.start.character,this.end.character]:[this.start.line,this.start.character,this.end.line,this.end.character]}static fromLsif(r){let t=r.length===3?r[0]:r[2],i=r.length===3?r[2]:r[3];return new A(new V2(r[0],r[1]),new V2(t,i))}static fromNode(r){let t=r.getSourceFile(),i=CIe.isConstructorDeclaration(r)?r.getFirstToken()??r:r,o=t.getLineAndCharacterOfPosition(i.getStart()),s=t.getLineAndCharacterOfPosition(i.getEnd());return new A(new V2(o.line,o.character),new V2(s.line,s.character))}isSingleLine(){return this.start.line===this.end.line}};var dFt=fI;function pFt(A){switch(A){case"haskell":case"lua":return"--";case"python":case"ruby":case"yaml":case"dockerfile":case"toml":case"perl":case"perl6":return"#";default:return"//"}}function IIe(A,r){let t=pFt(r.language),i=[];r.occurrences.sort(EFt);let o=new Map;for(let g of r.symbols)o.set(g.symbol,g);let s=0;for(let[g,E]of A.lines.entries())for(i.push(" ".repeat(t.length)),i.push(E.replace(" "," ")),i.push(` -`);s3)continue;let B=a7.fromLsif(p.range);i.push(t),i.push(" ".repeat(B.start.character));let m=B.end.character-B.start.character;if(m<0)throw new Error(A.format(B,"negative length occurrence!"));i.push("^".repeat(m)),i.push(" ");let _=(p.symbol_roles&dFt.SymbolRole.Definition)>0;i.push(_?"definition":"AUTOCOMPLETE"),i.push(" "),i.push(p.symbol);let x=o.get(p.symbol);if(!_||!x){i.push(` -`);continue}i.push(` -`)}return i.join("")}function EFt(A,r){return a7.fromLsif(A.range).compare(a7.fromLsif(r.range))}var $K=Yn(require("fs/promises")),bIe=Yn(require("path"));var ZK=class{constructor(r){this.queriesDirectory=r;this.cache=[]}async loadQuery(r,t,i){let o=this.cache.find(s=>s.language===t&&s.queryName===i);return o?o.compiledQuery:this.compileQuery(r,t,i)}async compileQuery(r,t,i){let o=[t,...BFt[t]??[]],s=[];for(let p of o){let B=bIe.join(this.queriesDirectory,p,`${i}.scm`);try{if(!(await $K.stat(B)).isFile())continue}catch{continue}let m=await $K.readFile(B);s.push(m.toString())}let g={language:t,queryName:i,queryString:s.join(` - -`)},E=fFt(g,r);return this.cache.push(E),E.compiledQuery}};function fFt(A,r){return{...A,compiledQuery:r.getLanguage().query(A.queryString)}}var BFt={typescript:["javascript"],javascriptreact:["javascript"],typescriptreact:["typescript","javascript"]};async function hFt(A){if(!A?.evaluationConfig)return[A];let r=await hD.readFile(A.evaluationConfig),t=JSON.parse(r.toString()),i=[];for(let o of t?.tests??[]){if(!o.workspace){console.error(`skipping test, missing required property 'workspace': ${JSON.stringify(o)}`);continue}let s=XE.dirname(A.evaluationConfig),g=XE.normalize(XE.join(s,o.workspace)),E=o.queriesDirectory?XE.join(s,o.queriesDirectory):t.queriesDirectory?XE.join(s,t.queriesDirectory):A.queriesDirectory,p=t.fixtures??[{name:"default",strategy:"bfg"}];for(let B of p){if(!B.strategy)throw new Error(`missing: fixture.strategy: ${JSON.stringify(B)}`);let m=o.snapshotDirectory?XE.join(s,o.snapshotDirectory,B.name,o.workspace):t.snapshotDirectory?XE.join(s,t.snapshotDirectory,B.name,o.workspace):A.snapshotDirectory;i.push({...A,...t,...o,workspace:g,queriesDirectory:E,snapshotDirectory:m,fixture:B})}}return i}function QFt(A){let r=Number.parseInt(A,10);if(isNaN(r))throw new H4A("Not a number.");return r}function AX(A,r){return r.concat([A])}var kIe=new $C("evaluate-autocomplete").description("Evaluate Cody autocomplete by running the Agent in headless mode").option("--workspace ","The workspace directory where to run the autocomplete evaluation",process.cwd()).option("--test-count ","The number of autocomplete requests to run in this evaluation",QFt).option("--evaluation-config ","Path to a JSON with configuration for this evaluation","").option("--snapshot-directory ","Directory where to write snapshot files to document autocomplete results","").addOption(new DH("--src-access-token ","The Sourcegraph access token to use for authentication").env("SRC_ACCESS_TOKEN")).addOption(new DH("--src-endpoint ","The Sourcegraph URL endpoint to use for authentication").env("SRC_ENDPOINT")).option("--include-workspace ","A glob pattern to determine what workspace paths to include in the evaluation",AX,[]).option("--exclude-workspace ","A glob pattern to determine what workspace paths to exclude in the evaluation",AX,[]).option("--include-fixture ","A glob pattern to determine what fixtures to include in the evaluation",AX,[]).option("--exclude-fixture ","A glob pattern to determine what fixtures exclude in the evaluation",AX,[]).addOption(new DH("--bfg-binary ","Optional path to a BFG binary").env("BFG_BINARY")).option("--tree-sitter-grammars ","Path to a directory containing tree-sitter grammars",XE.resolve(__dirname,"../../vscode/dist")).option("--queries-directory ","Path to a directory containing tree-sitter queries").action(async A=>{let t=(await hFt(A)).filter(i=>IhA(A.includeWorkspace,A.excludeWorkspace,i.workspace)&&IhA(A.includeFixture,A.excludeFixture,i.fixture.name));await Promise.all(t.map(i=>mFt(i)))});async function mFt(A){console.log(`starting evaluation: fixture=${A.fixture.name} workspace=${A.workspace}`);let r=XE.normalize(A.workspace);A.queriesDirectory||(console.error("missing required options: --queries-directory"),process.exit(1)),A.srcAccessToken||(console.error("environment variable SRC_ACCESS_TOKEN must be non-empty"),process.exit(1)),A.srcEndpoint||(console.error("environment variable SRC_ENDPOINT must be non-empty"),process.exit(1));let t=Zn.from({scheme:"file",path:r}),i=await wIe({name:"evaluate-autocomplete",version:"0.1.0",workspaceRootUri:t.toString(),extensionConfiguration:{accessToken:A.srcAccessToken,serverEndpoint:A.srcEndpoint,customHeaders:{},customConfiguration:A.fixture.customConfiguration}});try{A.fixture.strategy==="bfg"?await _Ft(i,A,r):A.fixture.strategy==="git-log"&&await DFt(i,A,r)}catch(o){console.error("unexpected error running evaluate-autocomplete",o)}await i.request("shutdown",null),i.notify("exit",null)}async function DFt(A,r,t){}async function _Ft(A,r,t){let i=new ZK(r.queriesDirectory),o=XE.normalize(r.treeSitterGrammars),s=(0,OIe.execSync)("git ls-files",{cwd:t}).toString().split(` -`);s.sort();let g=r.testCount;r.snapshotDirectory&&await KH(r.snapshotDirectory);for(let E of s){if(!IhA(r.includeFilepath??[],r.excludeFilepath??[],E))continue;let p=XE.join(t,E);if(!(await hD.stat(p)).isFile())continue;let m=(await hD.readFile(p)).toString(),_=qK(E),x=BI(_);if(!x)continue;A.notify("textDocument/didOpen",{filePath:p,content:m});let O=await rS({language:x,grammarDirectory:o}),k=O.parse(m),P=await i.loadQuery(O,x,"context");if(!P)continue;let H=new fI.Document({relative_path:E,language:_});for(let T of P.matches(k.rootNode)){if(g<=0)break;for(let v of T.captures){if(g<=0)break;if(v.name==="range"){if(v.node.startPosition.row!==v.node.endPosition.row)continue;try{await wFt({content:m,filePath:p,capture:v,client:A,document:H})}catch{}g--}}}if(r.snapshotDirectory&&H.occurrences.length>0){let T=XE.join(r.snapshotDirectory,E);await hD.mkdir(XE.dirname(T),{recursive:!0});let v=new AS(p,m),F=IIe(v,H);await hD.writeFile(T,F)}}}async function wFt(A){let{content:r,filePath:t,capture:i,client:o,document:s}=A,g=[r.slice(0,i.node.startIndex),"()",r.slice(i.node.endIndex)].join(""),E=r.slice(i.node.startIndex,i.node.endIndex);o.notify("textDocument/didChange",{filePath:t,content:g});let p=await o.request("autocomplete/execute",{filePath:t,position:{line:i.node.startPosition.row,character:i.node.startPosition.column+1},triggerKind:"Invoke"});if(p.items.length===0&&p.completionEvent?.networkRequestStartedAt===null)return;let m=new tv({filePath:t,content:g}),_=x=>{let O=[i.node.startPosition.row,i.node.startPosition.column,i.node.endPosition.column],k=new fI.Occurrence({symbol:x,range:O,symbol_roles:0});s.occurrences.push(k)};for(let x of p.items){let O=new sa(x.range.start.line,x.range.start.character,x.range.end.line,x.range.end.character),k=m.getText(O),P=x.insertText,H=[];for(let[T,v,F]of(0,MIe.calcPatch)(k,P))T===v&&H.push(F);if(H.length>0){let T=H.join("");["(",T,")"].join("")===E?_("EXACT_MATCH"):_(T)}}p.items.length===0&&_(E==="()"?"EXACT_MATCH":"EMPTY_RESULT")}function IhA(A,r,t){return(A.length>0?!!A.find(s=>Lp(t,s)):!0)?!r.find(s=>Lp(t,s)):!1}var xIe=new $C("jsonrpc").description("Interact with the Agent using JSON-RPC via stdout/stdin. This is the subcommand that is used by Cody clients like the JetBrains and Neovim plugins.").action(()=>{process.stderr.write(`Starting Cody Agent... -`);let A=new XK;console.log=console.error,process.stdout.on("close",()=>process.exit(1)),process.stdin.on("close",()=>process.exit(1)),process.stdin.pipe(A.messageDecoder),A.messageEncoder.pipe(process.stdout)});var bhA=new $C().name("cody-agent").version("0.1.0").description("Cody Agent supports running the Cody VS Code extension in headless mode and interact with it via JSON-RPC. The Agent is used by editor clients like JetBrains and Neovim.").addCommand(xIe).addCommand(kIe);var OhA=process.argv.slice(2),{operands:vFt}=bhA.parseOptions(OhA);vFt.length===0&&OhA.push("jsonrpc");bhA.parseAsync(OhA,{from:"user"}).catch(A=>{console.error("Error:",A),process.exit(1)}); -/*! Bundled license information: +express/lib/utils.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) -lodash/lodash.js: - (** - * @license - * Lodash - * Copyright OpenJS Foundation and other contributors - * Released under MIT license - * Based on Underscore.js 1.8.3 - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +express/lib/application.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed *) -mime-db/index.js: +negotiator/index.js: (*! - * mime-db - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015-2022 Douglas Christopher Wilson + * negotiator + * Copyright(c) 2012 Federico Romero + * Copyright(c) 2012-2014 Isaac Z. Schlueter + * Copyright(c) 2015 Douglas Christopher Wilson * MIT Licensed *) -mime-types/index.js: +accepts/index.js: (*! - * mime-types + * accepts * Copyright(c) 2014 Jonathan Ong * Copyright(c) 2015 Douglas Christopher Wilson * MIT Licensed *) -dompurify/dist/purify.cjs.js: - (*! @license DOMPurify 3.0.4 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.4/LICENSE *) +express/lib/request.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) cookie/index.js: (*! @@ -1495,20 +233889,39 @@ cookie/index.js: * MIT Licensed *) -typescript/lib/typescript.js: - (*! ***************************************************************************** - Copyright (c) Microsoft Corporation. All rights reserved. - Licensed under the Apache License, Version 2.0 (the "License"); you may not use - this file except in compliance with the License. You may obtain a copy of the - License at http://www.apache.org/licenses/LICENSE-2.0 - - THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED - WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, - MERCHANTABLITY OR NON-INFRINGEMENT. - - See the Apache Version 2.0 License for specific language governing permissions - and limitations under the License. - ***************************************************************************** *) +express/lib/response.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) + +serve-static/index.js: + (*! + * serve-static + * Copyright(c) 2010 Sencha Inc. + * Copyright(c) 2011 TJ Holowaychuk + * Copyright(c) 2014-2016 Douglas Christopher Wilson + * MIT Licensed + *) + +express/lib/express.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) + +express/index.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) */ //# sourceMappingURL=index.js.map diff --git a/lua/sg/cody/commands.lua b/lua/sg/cody/commands.lua index 1d264f31..a0f38d89 100644 --- a/lua/sg/cody/commands.lua +++ b/lua/sg/cody/commands.lua @@ -45,7 +45,7 @@ end --- Send an autocomplete request ---@param request { filename: string, row: number, col: number }? ----@param callback function(data: CodyAutocompleteResult) +---@param callback function(err: table, data: CodyAutocompleteResult) commands.autocomplete = function(request, callback) if not request then request = {} @@ -55,14 +55,7 @@ commands.autocomplete = function(request, callback) local doc = protocol.get_text_document(0) require("sg.cody.rpc").notify("textDocument/didChange", doc) - require("sg.cody.rpc").execute.autocomplete(request.filename, request.row - 1, request.col, function(err, data) - if err then - -- vim.notify(string.format("Failed to get autocompletions: %s", vim.inspect(err))) - return - end - - callback(data) - end) + require("sg.cody.rpc").execute.autocomplete(request.filename, request.row - 1, request.col, callback) end --- Ask Cody about the selected code diff --git a/lua/sg/extensions/cmp.lua b/lua/sg/extensions/cmp.lua index bd4751f1..26fe6d47 100644 --- a/lua/sg/extensions/cmp.lua +++ b/lua/sg/extensions/cmp.lua @@ -105,7 +105,16 @@ function source:complete(params, callback) return end - commands.autocomplete(nil, function(data) + commands.autocomplete(nil, function(err, data) + if err then + if require("sg.ratelimit").is_ratelimit_err(err) then + return + end + + -- TODO: Might want to do something else here?... + return + end + local items = {} for _, item in ipairs(data.items) do local trimmed = vim.trim(item.insertText) diff --git a/lua/sg/ratelimit.lua b/lua/sg/ratelimit.lua new file mode 100644 index 00000000..23210af8 --- /dev/null +++ b/lua/sg/ratelimit.lua @@ -0,0 +1,31 @@ +local M = {} + +--- Current state regarding rate limiting +M.state = { + --- Whether the user has been rate limited this session + has_been_ratelimited = false, + + --- Whether the user has been notified of rate limiting yet this session + has_notified_user = false, +} + +M.is_ratelimit_err = function(err) + local has_been_ratelimited = err and err.code == -32000 + if has_been_ratelimited then + M.state.has_been_ratelimited = true + M.notify_ratelimit() + end + + return has_been_ratelimited +end + +M.notify_ratelimit = function() + if M.state.has_notified_user then + return + end + + M.state.has_notified_user = true + vim.notify "[cody] No remaining credits for the day. Run `:checkhealth sg` for more info" +end + +return M